kernel-devel-4.18.0-552.3.1.el8 ?>?  HH?~l?~p??fB> U]{9vATEjr3n=% h/s>m[\T=HõLPGESv"'<X5TǷ-|e <|8RAM8g)(˄(H/W) #Mse.iƶk7IXBa>yyifjD0mv]>G&Fw4T4,8*,ͻσpO'&_!tMGh RvY+DͥV3I)箅'u? Ssd#6<60څ&DXKs l5¥;D:ąNw$i|!s]wfm.XvnӴ |ת'QPVC`vzvXl/Zg®ג7ocPw#Nl*,oO]q#U1YM}"ÐnNU1n Q_]4!lءlmVg#_qY, babb46ab2f2fd809c6d7450adafcf664b39ce86df4c91726c119d112de810640bc74655f8e288ac06c37870ed84253f5e568e13a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ce4bb6649635b8454b0d291983db6a949c98307d8d7837bc7c2237fea55e6762ad28b6afdbdc15d2d4e04f4c568f9a43023032bedd51f487d024cc410df943456db8af10c072187ac3e3eb8b42deb2daecad41b3ae5b86aea12bd0c45b86147ac2a30302047c435bb500673065023066476ebdfdf5ebc2e0fee13c6e06b99a42c933fe329bc0fd89db3e3d6f402afd6c8208513683738c936e8f56b9ac49a7023100b7c440eefb13266882931f05963159243c774453f4cb7cb86509f1c728157b62c5af5a9b23a73383ac74d190a16cbe950302047c435bb500683066023100ae72ae90819dc31bd84c2e4b8054b4217e4ae55b54219f3feae58af698f00f6ab416b63ecd2ab93a8913634a927cc32f023100cfc9e65bde116780569c3975c7071a38db65fa9759310915022219aecedaee8c7065ad5ca6511062715c77d9ef0e4b700302047c435bb5006730650231008fc6e5775d273fdc4c2abca23a3f01e3ba634f17fbdffc526da9b513a672336f4c5dc4df7ba803254e65ee9975222831023071cfb01c8aa4da150d2b6fb605ddefe805c247d350d79c82858c72d83a4d554314203eb3bbacbde726cf665fd41258e00302047c435bb500673065023100b84dd5bcf508df23f8a580d6a31663d66fa48fadc4a7f1ac09e0e586cec1a720870ede962e415b81ee36d04db6eb0eec0230251e4b62c45a49efa49e9204abf3a31c6b3e7c9dd72a3a36f5ec932d9626a3d7c8846c7e63ae30bfd8fc5e4c8a03163e0302047c435bb5006730650230694480384cdbcc52a659b24d4f5296cced7ec6e20ea0461a3e5dc9b77ffdb7d819b0f0b1bf6672e4dd8e662ee423b6ba023100cc1883a619175aa5eb524c1a8172c09c0897e38d5ed115b4b2dc65d7adeddc835dc92c319faaa82bd48a28bcb39815210302047c435bb500673065023066f56ee2cac660d1aba5e98cd42d5475582dbab60c3b426bc31f48cfa5860a5a557c46aa8b0a39da2fd087619f23664a023100fdcac15107e79c590cb0955fd73d2621c244520e01f7478e32608e84bef0b99b21b832772e070cb378e7e3bd9287bf080302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fd935e0f0be71dd60ddeb3292c6b718ecb7b14be150c5dcb22ca27758143dd88c29ee5b6aac211926f48663f4581e720023100c7c4868652c499aa1a68b5c59c4281b554d4c3491e9537a92ebb29fe398946fe0a21ae2aad0447897c402f85931842c60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023025fb1a6560823ee4ff813b76442188e5c889a2295309983d63c66b65261f7d38d2f63373daa525bc3e6ad926a7989e6c023100e0210bc7fd45a35cf7bc532ed8b16e79a73098fa544ad0f0ead8854e2b457e809ef34dc54f2d86aba53bff6a6127053f0302047c435bb500673065023100d25e7a3fad450609677cc31a578738016d1dcb1c96e6109f9848e3f78711a3fafd5d88dc196c5f31b188a3cc21fe46dc02302df48725c83338d7173f37915c0ce45fed7d74ad991708162065e6159a5f2f6475e844457b4e18a14bcc8f7331065bfd0302047c435bb50067306502306aade816d148c71ce9bab155fe3f1da142ebf58afe71383edf40d7a7da1a591c047fbc721c021047d4bb1b9547243b880231009b4e3081f55247c52f53389febbf31d6879d12c8b1088ceb1af05367541f2adc9e4e85afad86ba856dbd6a7af440a0170302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230466436e595969cf8a4d5353f85d10cd1ba2c8c3bca7ff581f3ce9ac67b4eac28fe3a1560eb83abf3a70532de6bd4c05b023045371e4570e88acefd28f065b82e5029cc8a1fdb8c339a35379ab3bd32ad8cef550cdc210ca479d62ce881a7b9522adf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307fdac3828aa932935856b500a1d9796917bc8b44ef31684b1ea904324aaad6085233aaf43d89ee21a18f18a115a8891e023100adbf3743db87cf5e3a815897ffef7550462b3801e79fcde3aab671c5d52e91630a60a295fd70cc0f94d4b26ab9adf79e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303af1ad638b77b11f21d2df75a26d7f1e0996e3ab2d57b965fa5588718bb04daca96d8c37594a12e3198ba6df3ba26387023100b975aa5ccf69bf85be173ec03fbc510f0f420401ba9c218608843f1311ee293f37eb6837aa9cb9cb5f99e3cb85041ebb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301ea351c92eec6ae149682a2544db75a1058e22b3121c7052f1dd0a9e24098aa0b733529738eac2fbc5d044541dcda2ed02302f42ad120a254be3b69ee5eaee08ff46ff993a7b1a309fe26f4550618a88dfc73b6390730bc52870b3d880c62c0005980302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008d4284a97db82b42055ade4aa10f010e5706fdaa27bda5ed34a499578891fa16f81485bc442cb4ea723112e1975ab0db023100df0743a8383974d79f449af711aca988469ac07cd3f26d2201ba49cdd682078acdb272a7d59faebd575f456bd84bd6750302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023031803218f007a9d19472681e9f79d38f2cbee4127a7f2bc79841ee8757dded08cf1e7510e4eac59ae383ca75727c794a023100cd7264c9033d9b7ceea723ff270ec98830d49efa9c4bfcd0b09a4dc094914693982a4956eff21f8c1b14a8200b4a8dc20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023042341303ffd73249570f328da04f655338aa3d2d40f3fd66e0203b7af17938922f04733d48608c8e17676e5327d9c671023100d405303f3961ddae42e7b250913168119b4024793d4cbb6fac0752a30b4509c804e1f4e73214513abcb8b38e73dc59f50302047c435bb500683066023100e32882bd3420496a8dc3bd97cae19b695738aeeee2d7a4b412c5e188cc427b27dd3f6013790f17ee6a2a377fdf05b12d023100e32d65d3e2f6fb130239c7afea3634a5af243e7ace8ce2ac7bea2168e4599bfae4cc05c9e20b4308ea8ef1d6bf4f87800302047c435bb500683066023100d66eb13a0c73adb06efaee6d2024f9cfc57ad33779f1e8459f48c47d686a977dcee43c64b9b4f4d44a2f427185777d3b023100a3c226e6048e6e1a12184b436d3d6989388cb69bcf6743aa44746c82cdbf12232c948cfbb618c106ac28db97b140df1a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303038bc308a3e6059efc68917b640b7aa448251e78a84888bf3174219a311a9a643456b27cd8eb445ebc46d7effa2df06023100db9ff8d2d9aea29c037faf29341ce6c4a6fc1cc0b61534b4422df85bbbd3ec17a392cac61cbe07ba92a37b25aa05d06b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e5da2bf89f619071dcf23d49b24ddc0d508354abb71dae4799a7a0d7ddea55f788bfafddc461959c7bdb938faf98038b023100bbbeb0e2dc0eea6def6e66e4532454ddf9f021bd8c55ab60389864f26c0bb17d6f4242e6aaac9d2f6edd474db8fe54c40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023078785ac6aae632911545afc457f38ed35364ed763b15846aed02778040b1527cc1e94e0af9298ee086c3860a4cc53c73023100db0ffc486bfe5bfbd464f4ccf324e5d4cde733e65897a7c88eccd5dc55aa422f6c7a8879290754e50c1068af85deb4480302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306fe24c899f387a40a0925b3e268bdc6f40fe3d6b964dca7e4c0fd48faeedf16d2c0a06b8ef924897ae96052859d3d9ed023100ad31aee43496f19caf150e6c11abf0fc0f9854939a9bc429942e135339e45b8e9956f5251679ffb43dce8aa913c628e10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100818a3666e760cfbc97168f6775cd8c36a4146b02e264fc153e31f9ea486988b999dc8cd7699245abf37368695662b42a0230431bc5deee7a32e064f2908666bcc0d962c0b3b09e606dabad7859449f9a811542c1dababcab94d0e30ef585857d6cee0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307360016047d51b4ec84df69266172e4698ed2066e3eba9f5e3758fd965f9f00bd9a8392d3f03f767029fc78443ecb5870230056bd70ef2ad050eede2fff55dfa993ab772409e0ac148ee6063295c639dac9e76fe6b7811c10aa29ab003c4260ac4430302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009e06935270c6b671437639e939484ef8677c3ea84dc8df5fdacb52f9566035ae16923d025493a2cdc7335d02589c0c7802306fcd3d93fc9e7bbd8615d1fd94226f609f0a7b3892d652e4f829b0aab28bd6479201912025e75a9cafe72fc925ddb7710302047c435bb500673065023003920c7e122e28a2d66f6580d0991f05227519bf0d692cc7c022b96282ac6214f6baad34eb4137ab769d9117dff1579a023100aaa207052bf3473ec9fe47f301abfdc764eb4657cf43beacfad636f5baa17de473015381a3f2520957cdfa7babfe1a420302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310094a04a019aed8212145a2c757246b2cabd14c946181b7a8e3d3a9d8155f984c4b4afee2ad2f2da8d82a0636b191f4f8c023043f94ebccec153383a4bd4498943765a41060353af4844ed2b90925e91e61a9e7d56b22b79e423720d9ea1388690d7730302047c435bb5006630640230330eaa88b18eca557eaf832c2dd9a4bfa184bce00894c032c3eeabe118b8cfe8b333c4066d1856c6fc64437b9e0d813202303cb549a6446b1dcf774c277949eed320b0eb230782151ef7e48654219fe72b3a6e9e5d2c5395d15e78d2d2dd47d0b18f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023049ffdc10258189001198cd9278dee3a2bca6ae9bdee2498f6d673c4a761601f49a60d29b050ba4c672fcfc51be67f447023100a24eb98da56a0ad2530c23fbe284a317c2972044600199bf699f5595ede1816586b8dc68e26e0de7db341f4e21f54a290302047c435bb500683066023100ccbc956fded833b6a06d7ce6f456d092f276012c77f93364b79c12a7561033b38b595a649b67e1699e5f4b6893262c92023100f5fe467d8b9e6853409982430ea7c0c25a6a4aeb8fad4a4688f69b700dc30076985d3a092c5154c610e09fb06dc78c0d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302f7933395e92ef49153ffc93afccd5edf7075f45e4ffcdaff3092c0f4af34b43d417d3833c5a9e888a5684a3ba44eb54023004d20c913fa0934f453f4b98e3e46bd22515f4b4c2e446ae3dbd1f24e23d7a3d7c42be81623e4c66e534079fbad2fc9c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c7b11ef1fd47a519351387be6a45f38870fc493904ff1aeb55519eea28b8d27c42ff968d404d1bb6fefe1a06f3130407023100fa7087ec26952fcb5ee62ee5fa16cc81bd659b71a263a29ad73dde7e260d49709a2638b2eda326dc74696321a491ff780302047c435bb500673065023100a6e2169f549903340e9bb75c22895f19f970dc8912dbae21a5940a96826e5fef84b4a8f19e519ebf1ae32fbedb97b70402303966c39931baadfe23d51f5936f32134771036a80c7b1d8d20f9c5d9907a25d6e35c6b5c09c5c1a2a1640ed69faeadb00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100afec2c5fb1669aa1621d7eedb3c9d35bf30b077a470d9c89e396dd895323ffcad161f6138aafecb107245587fa1286190230433ba31c9a741573b9d4d86642b742144a2a100e8c57aa00b5938a26806896c6e8163174baab92496d6a46e13fbbe33e0302047c435bb500673065023100df7f40fcfbe964f77ce893f8b1dbb31722725583e70c9072ab000eb08cdb3eda950c8ac3d633ed05ec7de67019b0e02202306d877f6fe6ed68c2dabcae0cd11ef59a6faaf0b0e1da000061a17f5c017dd2bb8109335926137744330789b3e51471610302047c435bb500673065023100a6741b18f2eeafc75b20f92613efd4f7bc114a084d33f7b27930c7cd5514cf3c570f0b4c10ffc8ae5637c0b3b1ad5c2502302445672e75edb167739b4bd5032fc538191988e6913cb9295da056542ab48efb70b59d772adbd2f7a880be321fa4853c0302047c435bb500683066023100acba0f127b1a8d1431fb09f132683534e9d358ff6f202531e5ef6cbb83b5ac9a139b2a7f28a962facb8f8d926bc6dda1023100ce3d286416a092d9d6ae3d0c130807eb05ef729077f53c5ed10dddcc319d87241576422ec0f531ce3d8424aac2e1aa440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f6a75aa7f27344d6d8ebccfe24e01889b60a1e3e9c3110a172594c74e96d37b9ab6f0750ecb43660fe55f96433bc2845023011bfd981abbd1d389b25f06289347a644ed5b1cf4b90b22feaa52e4dde8871205d659594096be14da18084772476ef420302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300eba6c830135f103beab5cafc31d024ff9cfa3b872fe86e6ec2303dbff98e41873d1c432776713ba1b5c1c2b4ba8efcf0230126d2aa81c4956ab48a15cf750fc8ec004731abe9edc6109761981e81d22e6ace6f4f4851e936fb8a1527895bfbd00940302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306d04a4798f0226a502ae8ccedf3283812da25d2301cd6e92918e2f9fde13adaa9f8c870f48681a03541659c9bae77268023100b6ea7f17842eaa9a1db357012188e2f646507574fd2d217aa51c3d4e773567d3631558128055bc7c224a8dca423e866e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b85892c01bf6e7bff135b493c23c8fb6ae378fe8dec4ec54400711a04adaa4bc7fd28a4d466e08b1a50826612393acc5023100d6f9455a0150f7c35cec765a636e024ac3e4c5884c5fb66f407686f458f957ad82ac5ece7e2bedec5e01b8ef795872130302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a052158dabb8dc08278bc0cf5d735ee009ac4258cbbbdbe86be595c2101eaf8ca8b518c6961605ec0fab31fded6a2ae5023100e5d360fe5ec7a38b9c5c89d7195f78cee3291b811d6c33899cd9f2ac7a5f0b9a8f040ce1f3a42acb20e1c046ac0b93af0302047c435bb50068306602310096e225e88e9e2c0a10cd0f633d2d0370ed8c16f9519989014e79961143648f34534c2d8c33685089cf1c784348993d6f023100f3d189238ce174d0052c8c7d7641c661ab2b7a58b7fbcf25c65bf3f4fffd74cee10da13ae2949e9fcd2ae8e07b61dda30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100953dd9e311f6fd0e95f8025116874e05ad7211f13c04b63d9e68e65e22c267c1408bd31323066a552ff266ad26a1dbc802300b7d511a134b3c0d71f457e3f922cd0b40884287c88c0a89befc8d00121e5b6022aee716f5f1f71271c8179fa2535b670302047c435bb500683066023100c17a3d97d46f04b1fbd866679a7127da050bdc720d319572b3edb2d7e23dd9da5d1f28781f800f2077a5d36c5c4901f0023100dad7d1004fa2e62951f098fe496f6ba03b2ab2dc199c3268b91bac5f8554500bd689d1571dc17b47131492f83962f6580302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f0426222fd61a55de939a42dc81e67b60078b28c7e981abf303546625738a2288577811d0c8c4e69af370f3ccd403b3e023078d4139514a136b8f89894bc63c867101cc0345cb85306edc06bc83d5aecb7f2367e7af91295f110151de0a596fbf4770302047c435bb500673065023100815bc4492f1d1fe245f1d09486967dcd969281ffa37e6d7836e9c236d3daf478d0ae424c88e605883c376642902bb4490230753818d1d24c10aa74de1ba104882cdabd0f5b7c87635d87fb29638a851145b09ba24941103972aa4c28f363dfba22550302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ff37f53f7a2c08c8cb676e9a7563dd25953e78129f3708298999703c18796820fb2decf3cd31bf5847bcc3774c855ac002310096c74209055f03719faec16547b6e17276954b9c98fc007be2019370764b6147b9ceada241a497d531620132ce0d2bfc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023044c5732610d7701c5765438b9ca5fbb23e82556ef97748f0b5e3cdf5392d2901ac15664fc4138d7e262db5e8b8040bb502310084b764f720b0e51e4b07398c0481ffa27cd9df92fc7e90adefd7da7d1cf8d86b485e38cb7cbdba76a756c727df28fa4e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307f7292a3fd746d3c66e4d1b79b590d4194cf9585a8e95e67eaeb3c79a33e703694e6b383e199bb25062c13fcf25e31f4023100ad61b2b35b07bd41e61605450c521aa1d597bfef9df1b74afdd563ea089e43651fb108704233c7923712a04d6214cdce0302047c435bb5006730650231008f0a189d2e377f5bd9a7b92f016a17a2f6dfd0bfe918dd0a4f27018b95c9b980fe1ed56e24f5eecc0c875ed306bbd70302307723b50e24c0a66a8b2749da729d37d0e7a23cd693994adbcafd2029e5f63783df33e98343386f4747c85ec21eede2600302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e036e3e6924dac4c936d65f06099b2b45558693f423fe9151200b0ecab003fbfe298561c41924c40f11ca9c6a587c72c02310097cfa63b048fb61670efc9a9e2f2fe0c04a561592636c022e81b073402bbd5ce5e2334f0482a0d4d159db7d88aff95cb0302047c435bb500673065023100ba5cf9461cd5d86adff7068af8532d790cba246c77392db15b888b7c4ebf77b1c4cbbe6537f758eee4a4a9059d38b0c8023049ec8fa7724de28c7b305e13a501e89c636b4ce0d7a0b701735340daf43b9fce158dc5ba572ff273e53252acc3c1630f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306eb008c587e41f0e43ee6b3cf6494ea2f687bdef592ac69f8912e76b90d359697bf0b9e369d34e0d377019d1a562964902304903f62f458b96d67218e5ff9636f985a5c00e66e12743d209c4139d15b565724533e4d6f94b6b6521e27f9144286e650302047c435bb500683066023100abb2051a6c47441aa783460ff325bae15267863e743bff5eb9ffd503d99a0db710e373de6a940a502601f65e6fef7036023100d6bae51796c9844827fd4865c5a48cc1a59737707707be2f91bb2ec7190076521ed08bcb87ef7f8cd6e400f1a0f3b4e80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a4610098c3d8009290854c67151866769987087c056aafa5328b8384e753a9f66c23514c43e48ebbb0838e249a3f90940231009c74ba4896dbedb0448edda932ae0fd0508c608e74f8c8ec74ff56fcedeb326a01fd5f1b15d9a70629bab3ed4f1eaac90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f7990dc07a15df48a875aa0e23f1ac572cfc0ff43682234c161b7c54a91d5beb6907d9ec4d52250210fb646a17e39427023100fd13e561640fbf54e68f786835eb1eda57dbe652c24179c4fb80df32c517d5344792631eccbf4fb9f9b9375c47b96a400302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230318d3db6e6d7b4181832ff447b83d7b1652044b4f03c6b6a61af18c9ee51013482f4439d4f0b7f1b08c3c552149182ce023100c97faf21eb754843c77733041f8b35f29273dc725e3fcdf59b502c56f048ca90a5cf6b00d407b3bb83a78e1810096c5c0302047c435bb500673065023053d575f91fc4b4db0e3d187387b271b17d6a42e56b9fd88253e1a3a2aa53c6f3676d87c07599cca93c4eb00cc3be2ce6023100f90dafa17cf9387abd7524717b090c89aed481d51ec65dd88b571032504828ed9129df493aae66300cfb56aeb9f04ffa0302047c435bb5006830660231009071cb8220f12b8d24e1dc1c41bd86d1391826e46b8160c210226b327c084f5dc05422e72d761fabef56ef885d47eb5b0231009d9a895fe973483db88e988893bf75f3c7ef8dded3e61b112b38deeefeb602f4c9b01138d3dae7724823512f19123c650302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306596cdaa0efbce2ebc14a06c443c2c262d57980be888d242f1ee71470e1665980b8973cd490b923d5bf4818c6873220002307df1dfeee07326a265ab63b7462b40ad216c14e0881a4d03e8a61ff3cfd4304c35d19a66584957f437101361265c0e6a0302047c435bb500673065023100a10543fbacd39ae94ab4751b59c922e80d36c766ccc4e6da4e10c6efdcfcc638a6fec3c2c8a6db5e5cd42ad950005270023062fe67b42f150c5375bf58a4c173b03368cc63e19a1c386202112a522097e8122ed744d5cf5d87b4f4b219cb09ca1d3d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b291c9ef800dc5ac3b7de5bcfbe448ec1f3552bbb78e3716d383821ec378642c014e08d0a63b9f6b13edf64699552dbf02305d3a8c95efde5abc6b60057b5d4b659bb41f7b67814e854c2e109629fa0f20e61668698eb92ad88de1575e0051d12a2a0302047c435bb500673065023050558204ac245694ec788e32fff7deee89f5a0095208e93f2b60565e9e6c587e82147c9c17b808a610449c8d75d721a80231008939c39e2cd0c48bdd19770abf0b130a790db40a001e11a4c9b21f8d56014013aa823c768aed497c61f84a4e2b0847f90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d89011c3ee225a503c9c96d5f41a42cf8c317396ebfb7c1111703c3ac6ca5c79458c604e161d274a24bb1e44e3e9462402306fb9e34d99a6572ac8559231a4da5f6b81da9df2c1a492c1166fafc9f7f4dbbd7277e918947d705c7c3a9b69134de8950302047c435bb500673065023019b00adae72389f7e9cb07c563b177aa11efab2a0466616b78b7c8f14175a043b45cc770ff218abb669e9ab917d9859202310093b4d519a47677cdc59f2ba822344c9309df797204d9dfac2d3527daacf169d028842306111ffc29b38de4bea1e4394d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304a28bb7873bbb7ce7c79efdfc2e655d7240de36adc0bb28418a338652af83a66e3260c75918593414353899acdc62f3d023100f1fe25be1ca215d791196f21f6c5125fd427692c43cdd00f3ef4dc3c3b469b69632aacc906cbc19c56fd29088f0fd6600302047c435bb5006830660231008049a24f6ab72dd5cd6392da090cd384d4b0282ca500c453c5fcb87fb835ec386e289629e17f2dc3eba3eb7175c2098b023100fc38b8ae4ef9dfbd574e5cdef98184077b398c458faf83d1c0c4e167c56b898474a0238943c8c9c3da346fe791bd26310302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302f151bfcce3a0b8a91d00a068f6b00eceeecb6fd704b5ad3eac06027de05023dfba4e40834d2770023af01f4c350ce0602307dbdbf1c9cadcb57278eb1b47704d399754ddab6f5345ad0a0615c6b70a8be6f993d29b8602bcb26f7ffeb7646e4a11b0302047c435bb50067306502307240a73f2abec114ef45085af9e7b5426e861679e7cb6244184cee471cc8dd7081fb460e04a9148b597fc31026cfc55b023100a344425629b085e5a0f9eef8f1b2a4d7b1d94e847e5a9e821290cbbd2cac2f88b3e119341d340d1e9fc8a20c6a36e9f50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100811bc483912b4258a277379e862d06d18248d433cc80a852ee22a2d43be27a9f89d85568f1bafe7952c025b7311b35e9023100db8b5deee19e41a201a6f5c90684aadceb6a06ddf44a90b217b178749c4133600aaa4c0e93001137007d21ce27937edb0302047c435bb50066306402304499d6c04b411c915fe149fc80bda364cc17d6fe2ed68e74f05d997ce7aa76dc68ceacc16ace47b2b2a46355d9879bd80230243a32d61f044829bec71792a5a5c525dc6a0e13262ba5baa395cdd78bcd97c3647aab05342394a599d0cb1968a14c2a0302047c435bb50067306502305eac8e41734dd520a50ee41b408778ae0b29084d29bc5542f659359a434a2bf27fd70255dad78a23aedc3611f65ea6e5023100aaa9101c3ee416d061e946bf720c9fe1728e44ec626e0dc2114ba84d71a38e1b8b74806019f781f8f2e8c2f5e6ff51610302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230659dd2328d3a22d0046a8c8a7675a96367ae4295b325f622a526c2f4771cd99185d51947703a83e43b34827f43ec933602300974e971c2255013a76fe1c36fd0aa6d3093107ff60a42822472b78e91145f6bbb2c3672eb3f237dc4dd6042f85167ff0302047c435bb50067306502303310639e825572024382cb15bbea42f6766d0fd1870ad57ca27244c5f61936a28bab717a072c74e0013a0dae8a8a5444023100b614f9e62fafae52a0e40b9b622b72f481b2d0cb29220e885565ddbf181c3c8f81eb6c87a10fa3529906a2e704a45f260302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230151dcefe06ab3da4bb9b770c4692fa9ba450a31ab1a5257ad1e4680ea968697fd4093d5f4493c8312bdc77a82092a16302307feceed4dbe0d3db60516b9b6dba8ad55ad3d2795cf79ebd89c4f960e4b3cc08d60ea70d327584263be2f05073af27290302047c435bb500673065023100ef23cf5ea5ee6193e33b7afcc6a5d855e505376b5f8d0fb30ad3af43185777468a57b8e9287f1b417c2f22ad58c439a7023023a8721161b9ef5a54fb9868942d8bfaf891de41bc227fb14caef64bcec368c734b07abbbbabc4b4e2a854d38bcb88f30302047c435bb500683066023100ff6f438ae9d98ac5f2efb874e83bbdec27f45d808dbc37b9d228667027bdf1ab84a97e1c19dd1ddc4d276e746661d07d023100d7fd553e2f4e2b7c6aa43aa496553098ae8fa19217e46cd29256839bd8d8ca158ed8588cef10fbd26a329bba5040616f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023009cd724b21911d4d5bf755dc84f317559c003657328e132d3233761e4b20e34b3a1e625cf98a763d5cfe121fdc2efc2202300628e8b65e273b05457bf643e843759f84af6919fa57ab70824ec92f03a0dc4a850b242a279ea530ad74ed27a6e9b9360302047c435bb5006830660231009fb76fb80e480f9a8f7d841352f9554da67797a31ac2066e10ab817ac39fb66e786b4fbebe12b67b5b0c3bc2abaa46ab0231009bda97bec16ceb96c9c6af496dec23958aa0368f7266d54ccc5aeaeea1bb4a4e802a1d671213865ea638003831fcb4010302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303d5b84e19790e387d363010943069e8ee11a8324ad737cd5d6a86b08c407f59932e9c6f061687b433d2b071675a2d921023002e40193cfe5e14e670a6b081a7e01b5e44c4cbc58fea652dad0f731036b513ca1255b00d443db2bbb499b4da5a545470302047c435bb5006830660231009071cb8220f12b8d24e1dc1c41bd86d1391826e46b8160c210226b327c084f5dc05422e72d761fabef56ef885d47eb5b0231009d9a895fe973483db88e988893bf75f3c7ef8dded3e61b112b38deeefeb602f4c9b01138d3dae7724823512f19123c650302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b5d510078488353893e69fd5321426763ecd5a0471ea7553992f1a280a954c1a00327a573351f2985cc3ab693f65a80a0230662c54a72ff745831815cd93ecef2dfeaf6f893064d5de6300b944566169ec2dd1e9b6a1994c17c42206798f1533b1e60302047c435bb500683066023100c30503924b96c6718fc4a0fa590723fdfc4339dba3dafff4a3cd4159007c2ac1ca64e169b7fe927e3bd74d5c5b04b7020231009f31e4b60ed2f870f94b5b29c66e488d92c24f9b8b04021acd8bf35d89c68ba22960a8f037b385c10725896b9ad17cdc0302047c435bb500673065023036620ae79ac8cb2931189cf6e4189cc5585846f9ba7ff3b25872b48e5927f6ee7841030f22a35ebab44fb21c70da1f11023100978e67483bfdb86fc92fc7321076ebbf413cc469cd87bc1f1f0318e33ef7e65366a5d94061f4c67751ca9902f839346e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100dabc89a32e1a95b0477a150224a00c2ebb22defd6f5d2675051da1bfe4ae0d5756cc70b9909ebe1240146574b1b243f402304d4453af9f9b5cbb2ddcbc7e10be4348c47a59b3091668328c0c9182c81a39efead4a1741a9c5a752677f20ffe43032e0302047c435bb500653063022f53f1355d4ba3306d638eaa0a2a5233247969edbcd368c79cb880d301d6ca690448dc08a5fb7b0bac9c44de6c897ac7023070c51655630b474861c8de0c9e53391056ff3079bc1dac81b8e7c3565b4a04a27db4b467649784a1f2acf401790268c40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100dfd476ec63dea645b27fe66e9009806ae15011e8e834e22430fc4cdefbba6de56ea353508c5ab3816aac8bc970dc09f90231008fbf50e5805d90b7128aaa3a2c7ac831367c8745b450be284329f69545da615fc938b61d6a67eb42e4916241d8a002630302047c435bb500683066023100dd986f5ccef1a65a84cca7e5ce0c7f5e5d70924a751a88b126a4cd8135a7d2557df05d1fb9dfb0e801a69ca5ebc9836a023100df472a135b0fe2b10d8c383088f9826d0b35f8665227d418bdf18197f749e743a983e37ac4a79a864443324d0e4ab88d0302047c435bb500683066023100e470312f04d4771c0843499b5093e4fc53ca3ffe8f45c5defacd9e675d27e4ca3ae6b4a841fb3af6fb2dd4be02fbfd4c023100b8c66292f227b85bd8e84acb8763505c37057f0feffdedde252405be639982cd1bbd02b7641db80cce7aacfd5befeef90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230713eac1ad0ed9326719160eda5cd1bd37f7cc49e352bc897d8d8bad1fa3a0ce4809dba7cc1d3985aa2a97eb71813e167023100e11df37ded36aa8c4607a5680e482d7386a1ebf27fb71a42cd82f436f9897a89f25f725f7bd2e54504e224179e15b2090302047c435bb50066306402304fcc1be16a9c79f70ec3e553acb20d16c3f35690330886c7ee97233459338a2c2ade3421f01d3ede765d403db327527802305b7b30a613dcc7fbdd2fb16353654d69965f4cb0ce776c6bd539d25be8e56b4fa4467e31caa438ad6567d4a91188d1360302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023053f9b14b947b4ca8c3e51d2831c626e0691e944ca21f7655a41341ab6e55ce8813d60b80619c20a72e7804416db1d53c023100b69da9e00771a3307f963c4e46ed5ba45e12b1c4f59cb435d09e6faf9914bb3e4b90e3231023a91644c7c9a4729be5000302047c435bb5006730650230044312334ba973321790270e510c0af6dd53427925ca0657dc119076e95888fbda0c8f102d6ae2dbd6ac871daec82b7e023100efdb150065fd29104db04d2d82869c424c5d913594da2638dc6fc6c4419c79ffdc2a6d436fd76038c449ba38403f92700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306aab0bfbd9fae2e8ae7c160c7cbef0c7ae0e65f769861eef5b3ae8753cbe8f24d66865308e5c0a53dea982e040621a770231009333f9d6d1cb3cba53e63d975414120f74682c4c18aba9e1ae13fa20ad91ae0a12fd90a293801364672b21a579969c3b0302047c435bb500683066023100edb59a34314984e5db07d8e5472af384ad5ec087fa4dd6f12160c3827eacb58fbb05f6d01af27e9cd1b793e1421d7a36023100add3c18d9776c549a4e8af414eac53db2831e868c7fd2b9d604ea18c4ba3782aeb88aeb84d726c6f7f4cc6e2ff26a1e80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230465dc5691777440ad291d188b1a904ec49b4e1950ba501f73efd95ade33c2be2d53e87bb3c6a5504079b8b913f6dc7ff023100d8d43dfda3d283e5b5958721bd64e5a3d6d0afdd6974670a8d9459ef3b67cbae4b08902efc4f14fa2445b57a93ee8a980302047c435bb500673065023100fef675a891b181721490c34a8bbd766cf11fd5d02e99bc8b22ad2eec9d7df9ff7b5a279bd25bb97a8f2f9127f455479402305986ccc9faedb24b599bc0685dd04406cc3cd10c85e7901c43bc123fa4403b05d48524583f5d7bd7c94d95f39c9e37040302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310083886a66f6657fa1f7d3f5643674eaeef16c17ba950a609fcffb36947de95e9da95bcc5f858dc4c354f670970e664319023100f7bd1f0019e1c4c482febd25f8a2b0a25683c5c8083b366a31d5a28feb8d59d21d7dd529287858859bd59081066fa8070302047c435bb5006830660231008d2e13a6cd545f8417a38de611f7f93f710d8f9b56986cf3f9d6835e442d271d3e6361da890413e4fe8056c8260b7b2a0231009ef9f4f24c857e9c8be8bc19789678ab691f5309f5d4dd4702350b47baf8f606e1399d3c8d79ea470569d2538112aa620302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bfa27faff0b916810ec8b2b61c635dc0f677441692cde370e066973e97b545b5ff58057ff843029ae17080f104452cc90230343e5e7d2d7fdee561a7ad413f41bf7f660ce666a1c48ac02c5ceeba016d279918df045105b55e66204fcc2611dc8e3f0302047c435bb5006730650230709ff31ed61a1342f36bf27695336dc977d15fd003a3ccf54e448ccd0181fc7adc1db8920e152cbbccc4a1676c69a1f9023100ff0a3ede22984b84e7496e8198f6bc3457d970b987152c3efe0b711695802f25691b46b93b5d73d100f162303de0547f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d86f9655b69a0097632b2d8d143d9c6df15dcd06eaf143773ccbbc8a8bdf8d6b8790c4a6dca7ebb669a60a51293b598f023100f34d62d8f196cc5cbbe3e81cc902fe12c96d50d4b998cd099e892b3c2d8bc28c048b44ade417cf46b06d06d3b80e0e890302047c435bb50068306602310094e6293a77fc1d36706faa196b37a0232d7682fca24cf2ce4875e7c7aa1f0346761c40d77ad2faf476e4d46001c89fc0023100b9ad83878475f89d11907d36e5c7497982bfb586f356b538f88220208cae93f4cad7de030c766993984ec71b851216310302047c435bb50066306402306a9d82f64744cc28f7894c8b1dae149188904f721a9d18ea03205c3a13523121435e5671cc4d8b7dfdf0dba3e38acfb302300f38704491509499ee15c1178c7690923f333b3e90915a035b9df86175cb614612016dff719f26f863c0a1394f66fa790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ce56c7d3bca32ccdf33bc0b704f6636229c3cb3cd054af74500c31f22c5484c530227acbb48e5bd775269c9b886785be023058d97342a32f5896b123864603fb55cae307ce4195c5dea74900dd2ec8200491111e3c9832ba6dae46ffa648548b36ef0302047c435bb50067306502301b4408a60ac0eb90a1b5ee1c59ea7e74244de3681930681bfce4650e1938ec978a2c630097c7615e7538de2658fdacfb023100a6c8db9c71ae8916922849f9ac72e969277a9ca6f7360725ff8d2f5780ddd5a4f955e6c0612a6f0d439280532d23a3d70302047c435bb50066306402306159faeed475b55391800a9136cd802dcdf04fa65fe093e8e95e0c5203eb392316aafaac036cd594ae9d8bc7c3f2dabe02301ef46e3a5d3f087e7e7d732f166620f64f14dfc8e7bf997f542b866eb3f131d31c9ffb8b7fe190c3f1385b4e0d2d54830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023039dcea3e9942a122a923d5f454e6b5a0b6a55757c80f9e288bc64ad29a10449a5f38e871c1f4ce5c0a36396bb19745b602307a86c3849b0b5deaa07a9c594762556fd3106f1dc194ae8d3c4f8f61654a24e616eddc2f9c150d7fefc64ccd4687acd60302047c435bb50067306502305ad8cdb2b64b60c7bbf3579c7ac11c11f85d21c464d9a42097bb23e8434053c6a5528011b844a4ab01fd13e65befcfa9023100a64289fea145d592fd6845d3f6a985b28cbd53b543f87cd23280ff9ee742558ac4fdafadc34829b8bd8058bdfbcf3d3f0302047c435bb500683066023100ff6f438ae9d98ac5f2efb874e83bbdec27f45d808dbc37b9d228667027bdf1ab84a97e1c19dd1ddc4d276e746661d07d023100d7fd553e2f4e2b7c6aa43aa496553098ae8fa19217e46cd29256839bd8d8ca158ed8588cef10fbd26a329bba5040616f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023014174a9aa902bf124964e85e7b33b6b83f1ff1f4332a2143db2f05417e395852022c0b4f6a7004fcc223ae3649c86dc702310092fae07b9dac5103bd6dbf1b180d9bc0a974e6f8d2fbde99dac1edee84d907c684812d159b03bc05725d701b8dd3057b0302047c435bb500663064023039cf6d734a4a2d20238173e7802385ae498a3609f99bf53a725fcdc9c2549224e0247546bbffcc9d29f93c3a555b80190230766e0d44d33301a21f0ce2815204aac7882e60ab98b4f1c91f78c1d133f61fcbed0e73e5869a8ddd8475557ac082fc8b0302047c435bb500683066023100ea1e48ac2f12084b5972c32f6f1a77ea83972a2101936c686f8837d7768a4f3f0cc97323abed3f476e9221b30c59effe023100a9309a62c0929428ba0ae27b491eed1b5b867bcfe501cfdeceb732d9beed02b26e3824244ea177174be0622faa1a70820302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023060153d36d2ca0db8c7de6cf5d9b0c604ecc730918cfa02e0ba51e4b5894c516df3be2f495b921c54821abb461d3c379402304a6a93d636264f3d219778b671f67828300527815238fb5cc9d462e276dd37a6f580588e470e9d8efc76a93e5cce886a0302047c435bb50066306402303e41f565e1113b0811e544a875da8cb9c0b3565a352892cf3f2243070bec5f9e60fe4d002805c9411af14f8426381e8302303cbfecfde339c243d43beb1f56ebb98929a885a8a1ece780c444976a06ba3805b81b0a6d732c16f6a69b39e64c1a56360302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f4dea07bb1b00ae9bb56874368657b33fc69c12209c61d7954a260c429bdc3a04d9476f2416cf77d18760f5d36d34e46023100ee4b36dd9cd73ad866d6751eaa42bb9eb90eba161bec867cfe3a37d7b34a289ba9dd7c63dd3e4c1cd94a2fd2ce2320e10302047c435bb500663064023024e4fe2fdb9bf77bd51bbfaa6c0543774acdc62493a2a0a449d281eaf64319536d040dcd0f2cc987ba6c021fbaa52320023002a6140e7e308f2f74edaf05c743df6e15292f147bbfeb3b6cc75f1351dd23a536d49e819ba34e434ad0418f801dfe160302047c435bb500673065023100908f80fb8aede5647d4006aab5079ac709b3b3e35491a91be22d79ba13ad763284706fd2620a548a93e5a2e1fc83917b0230737dbfb59307c967a0d457bdf7ad4cc44ee15d688893e7c4901af5697ba16680b73d2d49d45a7c9fabc1017b776031760302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ca7ac8fff342c3809606f23bf710a5747fa62d5d2ad65362bbb15643c42af0e79dabd1cf89facf47677ba9642fab192e02302daaf9a613949ca6bc4a60df635067ffac7cab2f05e71504de5698bc506f79adf6fe948dd4a81597907d9beb7e906d580302047c435bb5006830660231009071cb8220f12b8d24e1dc1c41bd86d1391826e46b8160c210226b327c084f5dc05422e72d761fabef56ef885d47eb5b0231009d9a895fe973483db88e988893bf75f3c7ef8dded3e61b112b38deeefeb602f4c9b01138d3dae7724823512f19123c650302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d548c5b0f84a17b091f06a7ce200f84e504fd7db9bfe1cd8a0cff7868dec5277574804b5a38acaeeebf364645e4993ac0231009cd3332e245a3ec480a0fbf9f7516420cc418578d4575829e5bf66d0d70215b5ac0f419b5e1436f33925abeda76c0dbb0302047c435bb500673065023100874bfcbaff047eb51f02dd0ff8067c1ab04c1127c4929e427d4666f30d03b641454b52a36867212f62ad2c35b07ba32302304867ac3fd7ed5dc3ff6a29c4fe9f8fbe6b6fb4f41128b77e5846940221cdb35ec0002e2fe0f018b3bd06b1635b95788b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e80b69cf734761668d908dc808209f3a227645790bc03f3525fcf9b8efeedc090cddcb9bc4de8287cf640c771f7f1de8023075021d9a1ec22cc9bd063dc2b905cceaa45558f737ef127dc759c053fe76d289f8542372294471a2400a252b820d69800302047c435bb5006730650230670ac3f25e99f64560386b13207431addd90e11a119d9d0c0c8991fae23342d9a0a290f86b235692f4a12baeac81e18a023100cc7cf8d11a20eac1e8cc9247bdb3b0e186d1f75e16246278f1db1c2c3aa1b6fc36ef17a870d486e3b36243c2f97748850302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b189436fa1a1c82effd00b2f0a673a0c603d989af7e603b63711cab395ae16d3422ca96cd2bd788cc4ae3804e175d61a0231008d6c69334d1a8294cb88cdc80f5e315350a380e7f1ecd4873c611dc49805361a63631f77198cba62e9b20bf481b35bad0302047c435bb500673065023100f1f5116c087a7a5c87268265bf19f38dab500ada132e949a4760f2aa83e425d4b4a83a6518d3af31447caada3699e4c002301129deb80ec5a1dad4d313847d0ff2bd08976cb9992747adfe40d848a8ef4ad44449a43d283fa5b30eed71d6a4764d9b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302c4711213eec459c7760fe0139e2332ce96e6ab252f08786b4c4c603b0ebc95495d494f13e3a9f0dbd57abd5b9372e5a023048504c90f3789bb5e4324665bc5fa7cc97f16ef1f0bcc6927848d6bdcc7d6870584a660e94abd8ca39f23fb879f776b60302047c435bb50067306502307bc35eaea43ca54bfb6da0961fd0e960aa5d9886f4005d8488b4ede708f30d5e2be2e4a7b65377259ae3dabbb1250d10023100beb37c8bdbd404c58e4a37b55c453234a6026249c26c01ebdaf6bc8ab96a82ae353d6f3103907f6cd1c3a1c099266eaf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310087d01dcab05e966c1005088ec5a2fdace62a71117acc323007737e991c73947edd9a872320a89f75b85d45abfdf55e91023100aee9b75f82cc69fbfa3e78aa4712d5bffb6c5776f2505eed8fcf55024b83fda5640a72e83bcae3dd61206a8db4d201d50302047c435bb50066306402303416d21b0e2aa2cdbe942a3197d52c9a7355683db7d715587a0f40cbdee9507a18ff71559edc6753637b7a741635d8d702306ff9815968714ce434412f4dbc6f34b215d8366cf9e4d0f2adc5d15be8077be3b282ed5da6b8887eaa318ae12b70bcd90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c4bf6b4511c05058a665f877a345ffad18461042ccdb1d34ddb8b90868a457be983a5dedf57b730b85c54ffac03f3058023100f1c49824ef1e828e5dc21ac88bdd2b63ab09f7358dec029b32d0daf3c3e27271eb63fe85a5b58332dda9430a4fb0d6a70302047c435bb5006630640230362795611780673e1e9dc20e4217499492ba536623ee303005debe260498b9ede6de51c19b0502cc813819192426620c0230118acc55f07bd599289d592b1a97cfab01fce356742a466b0f058e1d9fe7331526c89ebb04c18b6b89e56f2efa73e0b30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230296e8180505dd29e81728dd44be37776db16b6bf9536d21b9cede29a5bc0b889b6a4aca6bc08f9ee2a69825388fcfbcb023100c90d344f6a173422b9a9c1d75cff1044f5365f9f69e3dc2d5d3cf3adeeb57208a8bb6b8c214c61fcf70186622eb6e14d0302047c435bb50067306502302823cf71683df9ab70351c014889c539c5d92472b3b54ab658c5e2402416eea29ad8a55d2fdbbc0b9f6e4d0b5165b7aa023100efee113f282ac0a54a147b92653769765d330a2f8916d87756aed486f1cdfa7255b633326807d9a331726ddfcf5a34bb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008afa098bf3e6055c1654763cc0932b3fc42dc6ae583618d6447f63ca560598b3677f0ae4d449db61b00e735fa21aed1202310093285d5962e755fd577a387b11fdd6d8737594464358d697f9bd05b0f2bb55e3de0bcb684d12edfc62288341cc7108e50302047c435bb500683066023100c568966f61c23ddebc929d4e5cbbc15a9df4e673b63d9b90845d4872fcafc1b2a7dc4aefde99bd58f1bd77441b4c5845023100b1f7ae1e739060f64d0b52def04477ecd698f542717739b744ebb8b3caa05153e677b6ce016b46a01340ff07582397810302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230358dec29bb86d847d6adf6194d27ee743db9bcbeca026804055462ab4fe1bbd2202e3cb6cb4930d435444e0c1741c392023100c68eb9babe5a0e62c7354efb1665b3b1b8f9ac772c9fe10ce827da5e82aab22168a964fcb6ad49f54d7e4f9685631e890302047c435bb500663064023054d94cbb54972b087dcc4654ee389805a04cd7452510c478e4f0470bc040e338ee1fb3067da329ede9ca698c790c2b5a02301377efe4ca4da0d86d1d212ecd0f29750d1639ebc31e1e5cb34d97037c5a302bb357ea354e9ee2e73610b1b688ed6c1b0302047c435bb50066306402302cf6f1be910d9ce7490bca666d8231459a0515ece85464b9ad86b5a9b9c23b3fa7333a5eec6ea2c0348fbc0da3b4dee10230449b35111964a29d6d98e4b0fd022740530ba7906e7734cecf3a4084bd9b22fdd9288fb8a9ae3bc77390ed1141eb8d260302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a095b2f120e80c539be881d7f8345838bc4fb5a3f96d9c79e9325d089dbbdef18b4596787dae70d9689f195c360a4d80023100f74042ec65314fa7dc2bff03dde3d7ea7295fd67c758d986ed2016bf5e4b83ea2b7aea1247bb076b0d8070def93ccc980302047c435bb5006730650230036f1e54a23e4e1ffb0b2cd45d135fd478a23ca4e320442105a7b0e273ae47736e630726d1c7e9164d1555251e9da6de023100b80618dc29c83958aa4827ebb4d93b25ecb11eb89082ddddce46a2adda3e59f92fe1d886fedf828cedc9589f798c99910302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bd55b9054de0dda4424e5dbb065fb808e2e2994b3c91b9b04b36f5a2bd03011017992b61c5efb20e4695b91019250796023100ad12ecd755345dbd81e0db60d3c80c2b98dacadee0f3811cd64d0f5b79c3da3a00f9fae9812849468c765311871524de0302047c435bb50066306402303ba64230e50b021b3c200993bc2ac97725968f872587b927aa2082e2abeb70df8db61184bd3080ff2fede8e7038d950702306f914e4076c48a4bb56483c248e2100dbb7728889fe81429b03633b2bb5389b127829bce15c29a4079eb05a23e2012880302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f85edb1b730f5434e7dae87956eb37f3c5e95bf0df3cca8bb04c3d2d508d8e5853a348f11d6c7d413fa4aa70d6d6697a023100f7265504b396f316ece1c8e56182e1b6247383b61b845445d10aac09d1b4389a412132a0519d3aa8cf88c4645e0c3ff80302047c435bb50066306402305212dacffe5760dc3ff81b0c5f62a3a10157a1363aecf14283be28f9b79239fabd98db489f39fd286631767b88b03758023069914e32c9cb484ab7613f20270679cc06d00489ca800c21f604ccb8c5335e036d46a2179d9901811007d8bdbc21ab9a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009d5aecd34ae7386b1ff2389fd34d5d0dc2d875e412825cc2d89b0b5145f46ace21dfd7fa14066bf10949eea792b573cb02310094cfb3538c298ae81dff8acc13af993cded2feb82eda16ed96be0bf332fc2607f18d0ced6150ffc31c0471b66fa2aa010302047c435bb500683066023100ada1a6cb51e590c4aff9b903e8a30d08ccb19a819439e2f57781cbe976bdb823c1eede0767a7bf4a3bd4432cb047b482023100ac51bbf571186b43b0eadb3a3a5eda6f53df3425962886fea199abee85fe5ff521cd69dbcf4b923ab61ab470f46d8f250302047c435bb50067306502305487ea5564f4f5ce065c895ccf6d1507eba9dc730e48bf9b069318f30128554791ca8805f529b54dea8ed207e6b9b510023100a2c26ecd18f956f66bd933dd3ca9419cefb3f39a46416443d7b4cea107dd91443f1eb73851f51e6b20785151c51379e40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009bb012ad4de34f62d63b3bb2f96ce54669958ed86d827ad3e3623e8d5e2b0244364d851937674ce63a9e884c97a666c6023100e63eb7630c8c6953f94a5e6fed4aa5d99ed04213f0deaa97b5a9c8b248427d4b2e7ad9e5608c30eed36c167a5125785b0302047c435bb500673065023100d0c6e393ef466d8c85981b59bc90891a68cf89e630b214d89d6a915d73236c4df1c2e40b13959a82dbe8f1cb0392792f02305eb81c2a3d42cecfbc18dae782b99bd0f89dcb2408ba339c771ad869647b54715cf410a41f5010d3f646d87bf5946a920302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307d2f6c8b3595643d9588165b3b194fd7bc3805d66ea6b0405633841656a1b41b7ae0b55f060097b3b4955171de114865023042f4d12fd606362a0fed55fa6b61dbe75671810f60e057bd718b662cbb0580f362f657c3c53d976be90027b425f79f390302047c435bb500683066023100df3b5dfdf4b227205b9555a66d133eaca9ee427cd5bee5198b26d29e9af2be3d9e473e4caeda5f02feca8f398e2e4e1a023100aac97484649dc7215ae24b05f56882ece9d332face0c214c3175b1652106e1b547486dcc5cfefdd9412dc9a49a5a2c5f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009581503fa8b3449ba59f63d79ffac7d52161e455fd5906adb23ce015cc1c570a79ddbbffcb6f5824e6401c4ee96e677702307968bdb0049fe1f323d7463c1d0ed12b541e4102e4746f15ad9d8cc36f84e3be6122b63a7b26368a038fc9055fac58e80302047c435bb50067306502300cd8596625f3dcef5a75b1e6d8655e58182473a664f5317f6c52d0a083dcb2bcce45577ae4e513efb005b290b07896ac0231009360bef9baa67c23bec119a8bbf3aae4f7d9208895d3d002f1731735c52e55ec4b2429330a40707de6ac34ddd2c14c8a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e5e6d44d0b3cdc5ac81adf239d309743c4f994529c32ba29f7ef0ce9c251f39deaf26652eef3b77b9417e06dd416dd530231009e527843c2826452df8914ca817f77d9e9770927ef500eae6805541fcdb83953be6acd107f9b4b575db77d421d9cec3d0302047c435bb500683066023100e285b7e748cf4c155db1a884cfa9ea886ec4c1cd5bb8b2edb0a84cc94c62d4bdc68a3b3e556e6232367752e206956451023100d555b335dc8fe2a2d22bd122ba70886c7d73bfd9e828ec7580a288154adb791baac4418d8ef32f3ad7a3d93e21d608760302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230580dde6c616991bed6cb9bf8b1d133821e16bff08931b369ef37cc3e7882d543e06919c96faa7eb07bbb1972529abdd9023100d5ec6c12b384a58505e5069738d96dc0b1312ddf4cdd8a09f0a5537cabf751ce87756e41344b584b4a5d503a28e3abfe0302047c435bb5006730650231009b5acf3ba693528574c5f9b177cfd35c5ab8395429c5aaf9b1f9e73a924023328717dd71fd3a3e4ff7602b9d2247371602304b6bca376a2882286c4a67962992635ca238296ce172b5ef4234255287b6dbb48de5c26e2bbd3710b37b50c877364f3c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303292a4ae9b3bd3c4a4dff23943d0215e9892f4d0e8a23fc627d0499d9137ad10dde05ac6f1d4f3ac8fb4e39ddd0e3966023038e16c1558fb2987fb799647e94e50e33dc87b3bf9d8ef06b46c8097784b7d36b991995cd33fbdf4fa259feca265c3410302047c435bb500673065023100b793602a6cef7b51a1fd279a5a2ce41231a495623eb0976ebcb3ff54d6cd7ad7cbcd9b26fa78111571e352625016d2e3023019567a9e603d750d2182cdc0f7c4e8959b6728cbeb13aa8dc5d50b519a8098a0d54c83eb1d0b84dfe2f9fdd7896d3d100302047c435bb500673065023054ce6ea55fa4020d362c8378edd8d7479141fb12424bf2780ae4a3491543fced6299c35c01f9cc5021f7603b97095460023100b4fdeaeada2a3f60c76b89416a2bae97cf0376b51158aafc85d4b02924e73c0e050e9568f27914bb6e6aa3a31b596f890302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023070581f52c68592c1be38ba027675d80616537e2239afd22367a2c936aa37580417f4bbf694f639cff6f5d8d7cdee8cf902305b2327faf8e9752b92d7c0e2a149abb9ea5c3153d78f1bd742c7130ad1d50c725f8d28e1bd4db674eb9cfd4bafc85d850302047c435bb500673065023030cbfdc8e8813311e3d6ad2bc8cca789ae5921b533a58fc14889925bba38809dfaeedd96fe951f74a5f6b4429382ecff023100c72afe8da33d99043b80cbe071a1f7835c05c62904c7830ed1f5579e42fd7e9615dc10199607ebe231b0816a0efe99000302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300471ffb981414df915204f2ef69c0033b1cf543fdcc7e18a79d1328e040db9c3ccfc4f4dd2a9c7839ae2b587946be90b02305fe1273615f85e24de3938d073bd37d5331a23b594f8916c84afc47b4833f426e46f00718b201af6404b0711d326331c0302047c435bb5006730650230320d6381a3b32a8f6564c7880e8a67148dd96b7dd2cc0ee0360c721dd9d5174b6fc1252a29ca63f0facbd9f720bb562e023100f92fd8017894cba2da1060ec18804cf62c6f3159129e2ad00a685fed1d584cda8a2b4c4616c820a4e3fd5d8a2212e8f20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d384e61a2f28de2b944d182b105abadba9c65e18187bb076ecef0f568ad0576d2bf94e48dde1e8b5daa5339f2eeafce902300397324f8c979e55666fd30e1686f4bd493fac6c489bc4d2e94c583f844ef38738c7d82d7f162dc54145f71cbece15030302047c435bb500683066023100e42dc3aa1e950c98c6d1e1df99e8014ea3d32acdc033eb4d11d2fc72352fd4fea56cb1b5065171c59bd7529ef9c6a326023100b3949163f09effb5340803b222421a78272f7f0a827a1f09ef0b780e1fa4ff6a1fc9e7caae926f776185386764ce891d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a889ac6663a79b77ef59c5a916b7b45c4c38a9194938ddf8fdee3aa2024f40a1d8622ed61f985a32046ae247dd3ec140023100c08503b98fc0ced836f515c452ab0b92c62112183647aeea77093abbf98343e4bee62a3bc6435be508bbb83f6b493b8a0302047c435bb5006630640230587a2f6e1b499a979ed10f15a87dbfac63846eaded0ec16b9a5556b584592be62f39e0074f0850ccc419ee33b03a0f57023037407bbf20baa3615a7b54cb370320d829ba0e63a7670b3e41987772a84841b527f5cfa4f901918bfb178845af220d360302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306fc19fa5db9df5433618c0490b09f966c3f449f98f5c15d1140f29d2a65d53315ccdefb9b5580e6baa2d640a7c421f11023100cb1ebaf3ad5b58f7b7d33d300c43095dd6a3b071540e4c21136164971a86355504604f412b66ff67884841c8b29e58130302047c435bb50067306502303c118b6fd74030d7c21aa9961c60209099195389b3c7eaebe8f3b6a330b958a3d553baeb3c6bc4a599fd1b3b4c1a7521023100d1fbc7648fa010edd708c6dba0ce88516abdcc767843569d82b7d183575ad4657263364306837a98bcc3d4e3b267ddbf0302047c435bb500683066023100f1a32f113320985c466c652535702cb025166ba6781f29bb838c7c7c6bc5097f598dd0e2168af0ceacfa53ab56af45d8023100c388ca54b1b8b74d75fd0e79c33147a5711c9c2d18ed42af7e44884fe99f7c0eeb8a4490dee730421ab7b2703f9c47cb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c2cf0d35d43e7cfd1e85ad3e0a9a702e0f238540124e39a8a0d2c8d82f51fa87d68a38409c96b1d60eb34463c002476a02304c9571bfdc046bb0bc8f2028816f23f3e38dc05a599f87320e41032261e145f9b47841dc7563edae82732309834f23070302047c435bb500683066023100f21dba9d3fe21785f70f8dce01d47cfcd0a7298efbe3f780752673aab4a4b261a427df6589accec1791d21c396dba60d023100ef8f2031adcc150028e788b9b64d19e85fdc214735819d7744ad8a1fca5565e56ebc66c7cd2b8a022e599dfe5fe70a2e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023056894a8e9a8bd7ca2ccada98ad5a0eee838893d443716b4567d5e89bc6ef3e2fd18593b056a9096b58c82d116a1dcf0b023036ec51fb43b452c1acc9552f4f5f9cf266314c939c614bdab1f51cf097598c7357a4ca40c1be19f1062e74079574fa4b0302047c435bb5006730650231008d2bae05f8a7ac5a10f1fbd283a161eb438f7ebe18b967fb04d8adf089668ff070cf54f591d34221c708047711f00e160230629098fc6cdf7468a713b58e0db63ca80ab5e6525a2cf03cd4e9c830464581c49075a249f43f15067e2c7b9313ba099d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230115e14eaf4d0d55f1ea0253ad597685ba3968da2049c61308838a518aea3465d63e60c8c2e03c6c62383365dcda062e602303a224eafa84e093a9fa0e3deef6d5b55c5e02a612256055965aef792467cb0ec54c79c5382972fe22c3938c62384bea50302047c435bb500683066023100b1ce58bf4af1f35ab479142af3de64cca0cde5bd9f08058de30a7df5685036f9eb876dd7afba3bae8409c0612774bf07023100c7e99f52b5f673ec5101503ab065b5eb6a1f3a18b86cee62ad1871a0500773e307eda56e2f22865b4c95c1452cac0be00302047c435bb500673065023100fe445671ed94757581c068ce28ddd52afa5eb0f73b66698ab89737ad8e5e268e3ec6fc75e01fae63fc42e69b7250801a02305065bfb65753079b1fd15e1c2238953dc6b82c3e03e000d1ba8076866e6e432b61c8487854a19536f81748ed5d60c95b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023034e3e1c9a3dd4cf819da51fae0fb5fa83380f5de6e6d288440dbaf77712b637a28a7009106d216d6ab8796003dea2175023054af996c399eb6e60d387bd9f31b217b5f3b1681e8d06e069234cfd0431be120b45105b8e58d14325d1939b8982468690302047c435bb500663064023013693526fb747329b912a82e1cdb9d514f155f03e6a411dd22a3f27f641bd39cdbbd1918dd664367a7bfb31c67c169f802304380c962bbb17dcab226b5eb985a7a48461d4567977dfc023e6c7d008b48bf6866734ba4f9cb7b51d294180ec7a858f10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305e37911e93be72eed0ea6249550583ebae24b29422439331a3481244253e560e2f96feeae7d177ca7da60bd9554f6750023100a947d129c87a1ca7d6ea0954f81414ca266840a12719d1d38efcd876b5dc28afaf3d7bedbf8ddd5cb87d7cd5390fc0b70302047c435bb5006730650230037b8ac55e8d960f4e9d2626212d8634133cfe65f6e4ec4641ff331e1ebd4d10d7ddb145e652721bf5a7888cd3ca5c0a023100e6f1a0bf4c75f53ab8348dc541ebdf7f69e765ef9eb558538c2d27c05731ccab5235b72034fa1f09c232f0acf49cb15b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310085fdb7b1da9f90b15e55adccb1b011c7447413b08d6d9287f22649157d2b92973cff314e0af35a7b50d0d783caf1fbd40231008d7f3821743b0b9c59390b0d93d618e1ec86794da843809db59e9d97deb46afcf73263a78b9ab72d3fdd0295ede7c4960302047c435bb50067306502300a05ed91b1204340a66862a29e29be9f85498ed3074b24317309a6d46d7a03465ea88e3c180925b46ad177fd38eec318023100a5057adea4476cc344f547aef1eff1c9662553d3f9aaa5c3f6458156acbda1dc178e991dd03810d0027414a8e6e0f4180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301bb3ce674d4e94f624a4e224e1b1ad07eefb2b501533fb0adb6e4fc1f270882e7f91261b730399ebf36b62ea77bfa0ca023005556144ca451c4086bd4da952969176e052045c14ffb127e15bffcc47f13d8862ecf40be30872db6d000fb5a3da5c390302047c435bb5006630640230207903c7d00f6897a5af5a981c7572222907a79ad10ff79005ff65c480b4afabe5603de956f290ea053aaec5e72e221702300b01c85ea326b641ff35862ab7911ff63b3714cd2329858ebf68bd97c659bef6ef312c57f1d59477817df2b7a0812b6f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230264503d22f471af0f49d8d27ab34d560846839c36054e177d916b47187864d778d3753b62f19a17c69050a187235ee1b02304a2044f1543abb0d0e4eb687bf5eac733c7f2de7bd5861fce1d57bc38bac3af0924596093c5befc7d251046ea4073d3d0302047c435bb500673065023100ca7ac8fff342c3809606f23bf710a5747fa62d5d2ad65362bbb15643c42af0e79dabd1cf89facf47677ba9642fab192e02302daaf9a613949ca6bc4a60df635067ffac7cab2f05e71504de5698bc506f79adf6fe948dd4a81597907d9beb7e906d580302047c435bb5006830660231009071cb8220f12b8d24e1dc1c41bd86d1391826e46b8160c210226b327c084f5dc05422e72d761fabef56ef885d47eb5b0231009d9a895fe973483db88e988893bf75f3c7ef8dded3e61b112b38deeefeb602f4c9b01138d3dae7724823512f19123c650302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bcd81b35a158516c6f5f48e8283608b2308736c1c002a5b9b8e7c59755f15fb6ad841af887c89199cc362bb34bf9af3f02304b18052dd3cf1b57246e622c77059586a31f2ff86545fc29dafbf349817feca53c97c46e097e3a084d1b6f49e979d85d0302047c435bb500663064023074a0b93f3697500454227a38fd37ea4e861df869264b73d1682fb53c692965db275fe33562da835139d704fc53a14f53023022ca44bd9fc406f249c557e6387a33f591b79c5157fa546e6d29fbfe07171d32e91e62d42cef94d6fa7a1f5f34594d410302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b4194e2084ae7cf96dd0e18d58ff1cfd83143fc92f4cca3b8d4393568aac6ae7801766f74bac0391bb579e84899f6450023100d24dd9d7669faf406b57f24cf50404acaac27d757f87419ce665eb48b2c295ad1d4aed7c943d7a2384fc08eb3a226eeb0302047c435bb500673065023100ccdfccfd2b74c3c44b943deb343a362f2004aaa8f64be5822c38982adcbac45ca89370dbdf52a5ce69a84dbea410a1cc02302d1434a2cc687fbea2c2663a57969d31bf0e04adf63fe86241fafa5109d164e28a61cd6db33fddbe8d35e78a232722880302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e00e0f94940f4a151b1742c8f237138d4e8f13d1d04bc3f728446945ea8c93f87412a0246fd98852293828f59eb4b29c02301fa212a7e1e570f4f95c750b2bf6f2087751da07c2c0264c5c7af2d9c36c8a9eee008c1043e67922e80fd8cc0e8b326d0302047c435bb500683066023100914e3cda583373a8328bf4e7281e4a31518a9a9b1f0ad1c3b32b8ef0f261625fb1ba83e080a01885dbe7472d37c35807023100b27192bade4261c6c3507d25a4366faeda3c1a84f115ee47f202e397b561c622be002bb9fd3a7508565e865bb49f1ca70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b8066d9aab25da8b84dd51f4f4abf3a19c41137c0f74836cba748400ec82389d0b2eefe1747ee96300e8952de5a73a12023100ea8f399eb51fa7a3243ba71062791c2b007ca6d132d353685a4116c4d7f0b109367bb5d069a622cc084763664c39e89b0302047c435bb50067306502305a1fd0b49059dcaea010ca9c37738c8524a7e1917590f41806ccf4925a178528dccbe1e576a4c48c6f0f0d2dff767eef023100ec54aa8ca489ecedabd1d67280cd6ebe1ae330dabf112bfbe729967f0080cdcbce391c774f09c1d33c86284daf401cb90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023067aa2775c87bd80fff3ce68508c39e1ede676503d84b099a48e08fcd3b357e64344f7db64b93444b6060b120423e1b740231008bb8b0f9bd463a60cd8c998a76f6a07d1dca80887ede616aa1d27f71bd304ec2143d7e887180e0faba66f0cc6ee0517a0302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100944e6ecd8e8167b9ad30a0b699c8a4aa4ea61a942f00975ca968015955e32e885170407dda0b940ddf484b43dc25582c023100b65c044235cba8eede4ecba0f54f9da9871cc306779738ad939829c7141eb9a9d1f229b4702e957d84f86f4b7cf55cbb0302047c435bb500673065023100d5d489a32ba42ff23f37a8878d2564c48c4a961faa4122ba74dc0a7b1b8b417f2b7c9f993037e37669125c8780d7e285023042330a6e829c4ad12e19cf9f500f16bce308b304a2b6d2c9539f3d48105d522eaff85ea8e8960c234d081409990543e10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300500df1d4bbefeb38b3521e41d5ce99853082f6ecbf2d50bc9255cadce9ede242977d587b32f1e7de6ac20966d8518c6023100f5c276d5bb9066df49754070308d83477053e5adb81556c0c31edb4451d0ebdfab779c4f10a78a9cfbc9f1f9475d5c170302047c435bb500683066023100b5e7c36bb1673e8f8c96843a6aacd34ff949f7d7a2272343deba95bb0dca180b635ad378ad30615aaf8de0beadc6007a023100918bae185fe5bea92e4f0d207487590c24dc9e6f221a49cf1f2e04fdeac5727db6dc609696524c963ff3cdcf04a12a700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f9387c7a7453c367ccd8796e051dfe884fad1a38276837bd5f6e424daf71582cb7c32a9bbdc8185c60be31f6e42130ae023100d0e1eb71675909d74d67cab327136d7a64b571b222f511061f78370c324a59610037c3287c6d5bf2681205a43c40d0d90302047c435bb50066306402304d4bacc179a74c850be9ed2544ef06f9ed1f3ff7bd20ef174b2db0c850bba3fb444ade17ae5430d24cdceb1097da8b110230744838a2c149a74f921240301b99fc488675eb8a3e08aa6be5e33edd95982d043d9e8b8dc50f6f59afea823a17337f3a0302047c435bb5006830660231009071cb8220f12b8d24e1dc1c41bd86d1391826e46b8160c210226b327c084f5dc05422e72d761fabef56ef885d47eb5b0231009d9a895fe973483db88e988893bf75f3c7ef8dded3e61b112b38deeefeb602f4c9b01138d3dae7724823512f19123c650302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230356952e7709addedd7fafc1735fc15ec0388673a30701122f3794729cc8e04231761ac557a52dafc7e97c8343ad34d2c023100930af16543938c5ff576bd25eba788d5a02a0f27f9069394b0d85b44fff575ccd8e632c43d11daf8199235354a7454060302047c435bb500683066023100bb1005c6f953063c63e20d2f84ed60b28e600787f008fa1228ca295bc9626326d8119a19d0a3ee4abb8d2dfc7bde7ec8023100f5dd23f21a3e094faaf396ae8a61862abf30c4db7718c1632376594e94b1fc6a0cee51c876a9b02bdc5d1cbd3078cde60302047c435bb500683066023100b98a39683d51cd05d3ea7ba2a3fce7ef08e04c7d412c8f8a942cb4f75c58e73c0fdf7d127c152770f748470beb494dfb023100ee3ea37870f5bad9dfc15d2094806ea0f8ce1248f70920705cb4063ab05e2b36c760ac295d72b6c3fc1caa9ed458de770302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305dbad4cdaed1d58d7efd9b93a043caa71fef4533869a0ee4720cbf07de484d9bb9dcfa40dba14db058d73b33f39966de023100e5881859635094f3d795486497b12f3869a58ebeaf81a1de2c32255c5bd804555a4274296504c05a4b2d2f8ffe327bd30302047c435bb500663064023041fcdbc387f22cb13a4484af9d043fc29092fddc962017c678b9723f1d3aec4cc8a02da5f085d700669fc4bea0a7c90002303b2daa85fe64d085294b268048436ae6dfd2ccba25835c420fbc98e66d0e3b78474c257089d493e471e5cce17e749f220302047c435bb500673065023100cac1f820af9015581e24aa2fe3ce30af29c4e4bcaaf932dc3ee7ac03d7fa3241b1cdf55db9918f28ca6950f63987946102301baff3d4e269f8bb22f16f4918501ad4d324bbef2fe04f1e39c2b2952755b05bebfe77ccde5a26e65d43632302077b140302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301f181a67cb2bbb54836470e4b128fb09c81450433c548304e7ade081d8900787b4db93af21cc4111ac69c123503c6d0d02310094c6d53ad10c888d34604085feddb86ed8ff9658da6cbc75962138e9ec301b52efbefe2a201deaf7899bdc3980b2997c0302047c435bb500683066023100b8f7821c90e10e9a435197ba01ad62f996840b2163d53e368684c8f8fcf90ad0fe287b3870fc17d70a47ea615f45a7ed023100bdc8ab5cd1e0715d5324458eb736dec7a1b8da194cf948e28f44f47d261ed1d094da801339641134bc706ec75cfd85680302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310080e9eeff4f22a6edbb8cee7136654895049e2264572fef9eaeb07e368fa53b4f68479f03f23c70a4ac783f26cd256950023100a1ae407c2a9efa810775201e52fe06f13a3515d2921858fd1149ddb9195f36279f53e92f60abe67138db5d9ff9dabc1e0302047c435bb50066306402300ef2e0df6a445e530ddee56eda77150dac6c26c48de1a7f6e91497b370ef6a9d4d8175a3c902247aea0fba9769f247dd023032ab3134523428abbeed918080ddc8908c0e36615ecfc123c20ed5cebb74f0ce20d77e8ca08a3b743a163631e72357280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cd1574982c76e054de64a5321cf55e499681559217268899b28500963222827fdf610e5771943c18af1f7936df99db2a023100eda5d5a02bc4a58b0b620713b0063db95f5c5b510bad7b00c3d7cf1a543abc7b9c009b10fa1f7b6ee3a537067c0bb9620302047c435bb50066306402301a313506d8c89a50e9a6edf3f612e41ab3105ee70c8e72baa196e72153289189e47f7584b75a5d8c9584dd911c76a42c02306d4f85f03a367bca8724c060f57ea69bdcdb28602e6d0d7c7d3966f197239c01aaa61ec1f8029fd06a73ac86fbe05e7a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230703c7459403222157ba5aa11248d1def72afd72baed4865fbe926d274580ffb3ed05a53eb05227125a65bbd09644ff25023007d0673372bd7a3084d4ba67c36142f295cede9711e1749a18c06d3cbd6f666c9f701011230d0a80991f8e7fdfcf4f220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008a52e3d9bd463bdbfa65b76bbd9aa8d0e0803fe6c0945fa6bd3565aef6ec4467b351755db61f9b109183cb64fe38ff2802306cd4d7ab2e2983e1236343506bece8ad880fc312efd190fd54a1a1c9a8b288c642826d49105753aa215d93276b037b720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c0cecfedb2b58a0d2c748e16f2cc3c49002c14cb8108236cf9357c5d421c3ff417c8447161e6451d62d3d731e717cc6302310094dc9b65d4974e9b7448423b992ee1352af31cdd104bf3ba8c5f0e711f9c6ff8ae7bf4b2499faa71bead8e8b8847f4eb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023016ff672b9d7eed1defd834c7737880b6cf33712ef389d11d61e93cfcde25397b7a860c7f2551405564cca81a01b76e050231008cde5a3a5748dbc492e241aa9f6f42ed204ad17b2cea073e7b4962b706a0f76ef8592a174e5a8dc1a4cfdd551cc5e8800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100911aa5cd816a237239e157d586cff0cdad0e2a7d7bedf51a026bdfcd3e0fbcee621b0cdfa391553802f8da3e37be8911023100fa6e2ba809277e9c972081e06e355abf058a5d7c06ee69194489ae8b13b0ba83d0cc522fe216b6d647fbfedb45a7ded80302047c435bb5006630640230766c2830f394bba03db0de07d6a14fa22b2c7a28367991e2cfbbefedc7ed3f034afef171dc2ce3230d5d82f1e37ff6d7023041a313a8688549065b504308f8aa7d7e08228b3f621645a6f6519d8a714c332f186f282f1026c49f10d9c861986eba090302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ee829e5581a4edb6d184adfb775bde7ae7b90fa6dadf9e7c5d086a44405bc9cb3c17c502a580380ead87402e10aea51d0231008940cc44ee109582a089879aebe7ad2663991247f3457f70831ab2a67f72cfcfdee02c793a83992499802d3f7dbb37170302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b9a458e14743beea616cbe54e2eb0b08342cdc08a9f08390615bad6e64b02e4b622b29599c7e63c9a6d2808ceb3d2815023100ac70f095beae32840f2c7961daf5c03f121adb4db7147bcb58091d35654aad219b877c49e7548e55ad4d7d52dfabc1e50302047c435bb500673065023005674071fb973cf540311ea1ae03eab5046f14f87df879cae670cff2070304ed4f00c14e46df9f60395517c6a9fd00f2023100d74bc4e6414855a1dbb657ad8a387ae504e355bf992bffdc9cd3b29dd97e78686e9bbcc535927bd59657d8883ceee7fb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ecdcb266e446ae9e200e9ad3aaa40178a3478fd6abbb1808c278052d18c088fea910b667072888830914badcf8a5a38e02306e10660ec6a24b9f7ab0531266b553eb259a0992efd55fbad79fa53f0fb03cbf2c00d01e50641798d8a754b6eb8dbb0f0302047c435bb500683066023100f5f0f054c1f803f0c0419fae10a5a7dba62d011f662c3ee5f9a468817b324700a8faaa0a8df71ef7b58f0b9544a7d580023100d475b72313df2181c479d7db1081ab8ec24414cb1d7978892933a7ffdd2c1cfcf1a0338a98765597b3a27c1306edf11d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009617092a24345256764121693a0eb140ae870b9e2db4891d5097169bfe39ca07dcec686641c8027bd4ad1d000b8e1d260230467f5ebd2d5309cd0de602f692f9a4a557bc6b889e622a8b4a33df89abe0ec4d4d76a9d57fb52bbf1ac0c7e3159a8e9a0302047c435bb500683066023100baf2ba5944492a0078ad5de3678b16620e3961c67f7cba9ca2e697ad507e034bc03aa75a9730b25cb17da9a820e0a2b2023100fe4fe7a3fa38cb0c59f56ecd5a8ab3a0736715589eb32f426ab5393c5b47bc2bf57ce246b35e47957140c92141d617bd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ede36283b92640279c899e2f0bf2eaeb97dd1d904bca5ed1fc91a4b411ed30d246aa6a3bafc1dbaa95e7428388199cc102307d937d3cc06d59e84fceb536a65554f1421b8dd54ea15630e6650c7196d1d3832519cb10d165392af5cf0a4ab9b013d10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230674cea4e19e3f365dcb1aecb160a34b7127fee51b478cece1b380d853af8f5a7dc77bfd36a716051b0ac2fbcb9f835c3023100fb5ac772cff7237a595fd1ec78b1a1e714875e5d21252df4fcc644e80c94f6ae0331340e28e9eb1ea33c13e8205b79370302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b804edcde5a66f9b425f99d2af144203eff516e87384c6c67b65726f15e103356c77359bb16e0e9f75a7cd061422f46902307ca877babc0c68d46caacfbca32d84bcbd29dc7a97f4762b1937e558c7829fc4cef1d8221a7d994b99e2df52f4055e0a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023040ed3190ce710e80fa861c376beada0b1d04d5a48278b0a8150a12b148ec1fb66cb34eddc2688c10b8d62451545311fb02302c154fdf818003a2c7294fb78c93360cedaf79af49b1c1f64e9134217f3f127597b252db394cbe876180ddda400294280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100af69e1eb58fa4be68ab363f1ec023e88a26863c826157fc4c3c59bcd26ef5c4f19cd042bb17b442817e738e11c1660630230436449340883a57c6f225567e5cad913e8b387f263cd2a37721a109ebf248aaf754fa63e49e8442333d1fbf8c445febb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009839b2819af313e0cf6c841bea73ae7c633b6920ea6493467f0a8847335ed20ca1c243ce6f88d9fb2896b6a245391b2f023100f48bf1bfc1972f32f983b15d73b909bbe8db9a38f15a8f0202c193deae6cbf45e32d4bd8e12a57b52165649d08f10a520302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310094dae8af58f95b53553491e07a004c289448f830f29787a8f8f22a9dcb5f1ba58f30f03333b02e242311bdf3073412c6023100f8c80559b0a7c8b12d4d8164fefdbe2803902076b8f9a024e7c57257840968bf9b14193f69f76a31bcc0f4fcb65123e60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008fb6969c84dafa5807e82d245624cf77dc620c241ae88bcd5e35eeb7b292dd466e5b495ffb14d3b878b579b56b3abc5c02310096fb77ec546748058cebd2e6af4d6dca0fb93558ea39475dd3022a7f39792cf3e723a7ad117e08155b40c9f85f7612c10302047c435bb50066306402303dd891c957f17405d4f2912e3f50996c2598f8659d7dfd7494cf7038b2f7b6367e3b642808ec2e92a9382284092030ca02306d4d7b5de034b1bc77e81a36cdc3209e47d02d185e5bd5faa70f88c854dc9ce404eee4d56cbec9c997830a65270db3770302047c435bb5006730650230424b5e59f5e1ce47782fa636b7b0777fabd873f42dfadd886e7bcc61482a4456177d872207b29b841e72aa72816eaf22023100a16101c6c43d8965233c1a57a976a0a055f55831d5dbb93c72e6712be1ba0ed9bc36b810648f9d35566dcf533b12583a0302047c435bb50066306402303b206a7da015072ce47db0f2f821d7fc2aee668fc93a9c27077c9a9d2f4f58949df28a5033bbc072b869a331bb70ffcd02302cdd86662524f2a0a478954b8c56be4591ce6bc38cc78f502ac8b4cc614fb2bca86242e1769b88810d96c81493acb6a70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b793febbeda4efd96f5918fba353ec2627e5bed3d5df921f19d3ba197312e8ae86680bfac567c2957660b71077341353023100b1fa8ea132c1e441192cbf3c6ad3758042e1e41088f92b2c7c92ce77750e80fd447d2166efa9a8fdb881290a4dc283550302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023026ff6e43a8dbcfc90c0877df5ce7d442da94e6e0f48975bf9dde66f659a6690e968fb91ac48711fd5f5816090dc52bed023100ec8253a74cf0874e4316306abe0c664cf07e969e29c3ac24e484b56069e5c971d842a671634ff08ad6ef001dce6ffc820302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230702e2eaf9a7ffa9b649acdb9f4f94c2173d77f562da53b57aa3756cbc24179e53793dc65c13d4b6c14580d3a055e4c20023100aa3f2715a002fe42efc082f9ed31f13080ce32128d4f9d59053d544fffaad408a8bd63aa9d9ab0ecad29d26245c5ec950302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100890faf00ddc56209ad4d920387d10c6c44277fe9dfbe43aacad63b8e2a6200dd5ce31e90a9873273bee6a6f326f40c64023100e2bf84697e6db61d1a3ae61a30f1d4d5c0dba818c6f1362dbca859b8b491c6a104383768fc0cd562df261d808ed261820302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b9b9bf0879922dbfc56c7523444ae73cf5a85102975c4aa3a63702a99384796995b3e18d867f123b91d5f324b0382bb70231009e7f555836e85c96dd4ec29d55061a185eb83d1324e71f6bdcae5c0f61b20c40e409353028c9e01524b83f08763176e90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e2cfc69ff9c6761f51c8db9a4e3f031417366e3a61ae8fad378ea439104b196b1018f255aba601de64fe1d5314a578d7023100de9b1acfd476a01aa66a80287e52e2c175b616d4e1d27f7f1d31453549deb4e925358b65b65959c66fb095e508e004170302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306c5bdf79adb093c6fb9045d5808bdcf35d5334256168e68fc12e08866c0067172b37fa220f2f51ebbad6839b80e57e0402306c7d518a2d822f9990cd5a6477652f15fe1dcdbbf66d27e43d11a6f6e1fa7819af754dcc65a941d29799286e4428f4210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a9fda434ba3d6fe3f227583ce5c78b2940c578f097c77aaa8e1749ba2729f64575cd094479ffaf42d33a3d75aa808fbf02300b87008e03f6c5caa51015807e73c3157a750c1ccad03511d79b511e3748d6c7b603f0fd1a6b0db040a97d851bf6406f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d8d006074e7ff6252760fa8c458e866f9d5ac57e27ed4460391cce8198a5266a1d73df9790153a526bee49be0c82f6cc0230397b7126516109a1de7bf457253725c83834f49a083cc9f6a703db96fd710c7c3706a12049949ae24d7922d8fe33412d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008e50e56ddc5264f33f8640dd7cd2c89217f2a55cc9fa552407ef8e2553c543e50a4ff159f7fdfd521cae0828a34f67a602307bc8970bbda1795277c6b438a241bfc7a48401ed27aeb40f8041637cf6bd443483578975e01234c9a74e16362550586a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230063224d32ee9006a25e9361a166933b69fcb3ea7dce2ad336a45eacd51de21b09c683f06e61c5ae103412fca65c7769c0231009a2525a2f31c954ed8fafb71ef1cfcba0c3e2c5b7bdd0cd876a7cf292deaf0ed3161ecf3526d7fe148fb4f78cc630d350302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230072d35ff4fed3fafdd98d4e0c39fc1b7fcbb60c83d0ee3c9ef6674c2b34c9c2cf4048883fc66ee9e25b23b7b491d98da023053a69e33ccf207cad3d03c065530b98219407b52012660da070262768fcf70629cd06addbf238429099a56dadc3bf2280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023000e50edc46e33aee7c9db3e6c84a08f10cba46434d5bd0a505dd9a163f7175b0f1b0f4a056a0cf7a24be8d6ca3fc28110230636483eb5c642196dc76f08141ad847e141d67ee2eb22113eeedce9e0e58dc66d2561e409868d84c6dffed3552bf00f60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023066cfd700070617c4d140131914f7f356908394435a732fce4c71f19991fd4f8c729841f9b63da437af95d280061555d90230375a3e9b1313dfd3fc26fc7870cf6c2fba16e9811460176dbc6f0ca48c13271899a5355da30047c245fd2be8b77e081b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303ecf9c5bcf3f24ed5837674352b26898e36f515be242af9186ebd603761333906e10e30a7dc482ec2df02f8171b4138002305789d8ab628bd198d4a1520022e4b536d16c1a793a1c5a04f038abf23c442cd90788e162afc8a4310ad9f8b581772f9e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023045784b436e65277299c0cc83ba865e8e1033e433c109f12cd202d67f55c5a25f53e87c1b1802da7ef9c171342b24f0ed023100ddcdb99cf49c663a1abd079bd73d406c2d7ae06a94535c1f3920ce1b2dd5ca0219d4bebfd0611b3450d61dd526c288dc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b15a774ce0c2bb8751cfbaa46ec80848e0c10acd91491f8517ce31127588198bcfe94fbdaf02d6a24a9f673fbe20566002305a5257568f3c9cec184391f752c1bb07b13e352c9f6b9cf775f6d8d8ca7ca38ef496685adbe2287724fb832476bf42200302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023010de138a2faa59ea8bb9c1241b5088aad7cca7eb4fc062bd9c15282b0f2b8ab227294d13607bceffc77f786e9bb6994b023002cebdc89f8eba0d1c7bccac111a803bdb337bc95fcd917b626c0b73b7c0c5ada86dcdd7bebd2ffa8cdc2b94b12d2e640302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230055b6ce3d720155996cebc26a095e06558fd5c9a1a62bffb3864ebe41f5470d1b46ed02e6d98495be005ea589abb77de02310098681adf7edcb53e86557e6a84e665bf7276430b2996a013c0086171d9260a70289e47ae68efc5a32b464a85629eb2a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a38f2bed15f959334014e354b9ebc68c6ba4cb0c9ccd1260abab3d3481d16136235579bbf23be0b9ea45055c0a30bcab023018f21e6c29612ea273006086f1e6250cf0b687d6a7b93e2d39c77ed252816f1464bdcbd0e2ab3b97ea64e266e0a4daf90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230202c3aa9355f398af432b7e66aba1ae34ebbdf12da093d9291dbf4c46b9bb9b3bcf457edceade98e7a4a64d5d2ad99a5023014d1d7541105e1b56df367c0c80cfd72adc4013a173c15570107ffd730c9b88349df30f6845c6a2e86c8e949b1b1443f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305da1d44a271868d55c6f104a03c7bdbc45d9852192e0653cedc673cc64d851c5e545f276f5b210def75af8c6fa5bbbf3023048cc8322c820511d6bb2a98d31c1e5d3972a48830fcbdc3ea7ce3fb53514b0361b59baf69386b65b8a2f8ea4e7fe2de10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023077bd60373da986e709ed658664ed13e7907b1281651dcef6e90ef6ed166c25582a636d3679fb5a90ff94a136ca62aa7c023100d09b081fcd9f42460f8123dc553cde61cddff0d4be457b5aebd3ffe58145df83a4532150944d6b887f260e283f36492e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023073443408efee90c98d99de3cc7cafd49cf3617d22181404dc663cfdadf137b396cd67b8d728ee1df2a19a4f974db326602305d1c92c095b74f4238ac49142c6fcba14b8f4d1354a20c4ea05b73b7300ab30af593a6547818c9b37b198a2f6b568e1f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100aabde94e9b069a9912c7385997cb1254453a1ae71746404a25a4b7431353639fd1101f52187c646b9cceee6a5cc1893102301cbec6e5d5216c352c91699b9e7d9a76f948d2579c302ef9d148ef142ad57be5fae365a3fac94b16068fbbb527eba2fb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023038231ceca14126acfaaf8c00cd1f32770a721aabcfcadaa2020955558fd1e5bf08b53960722ae5780eb03b0fbfa61f2f0230285fbb1a86af88624ba7acc15c63f69a183056ee2c3e3b42cb3633a71ea3fd92395260a52c75cde19620cbc5f96f358f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bd15baea9378eed46abc963aad2e21740d0439482a58b5f0d247f8b2d7a76eef04d38c8d3df3fc0d4608153dc566f8d5023100eba91268bb1103e376113bb4da0cc738556970fd0883aeaca7157210e0fb2f852c963eb6a175c07adaa41a257dc1a0400302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300a9b0fc4d7dac3663ca8226842a9069d731983740d39c27cc533113b9fc6f2d7577d824a77b55708f51b771aeb9a8b5f023100f31e31eba7d2688cdc7644984036cdfeed066d340f239941ae71d654d1999bf42545db1fbf599829d0fb270447580dc00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304094bd0cdf162e921e471e70ea6e59482d5c536d90910e564fdea860db21d8570d21c53c7d94effbf5e1923f41b0f405023053b0aa022a5f1422e487b72a16ee9db2f1231cf41349479105739363d7527b4d331ed233704d0a35f5ee1620b0229c570302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ee05843ac280de1b74a7edc6fa4f84a3f5adfa256ee11282c3668f4f04906d088912b811ae9f74f8d5b218b3ae6714b4023100de35e929f25d42a392bdc9911203f48c30484850b6657478fb62b8c4320684915bdfe8e891e4cca546868cc9b4ae35e70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c57ff7de1b98d8090da3b0e5349a9bea03de8789316241bce15f56afb07adc627142554a5f8944eb58fe9f9cab123838023100db945512ee43b0679fdb736c87754eca1765a50b6147543e87729b1a84a39600f54142d3fdc7cdfac43453131b1a2fc10302047c435bb50067306502310083e60304a7fc6b9663b049ba71a3f4a384b4ee9d7684dc985fc4c886814212a08011fd8eb57343f8011cdf706a50501902303302d3caab521ede59719cfd5649bcfcd642f3d3a300703ffcd3b90d63f9081c908e3883d98026e4c1bf13765d5fcb5f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cec0676a7ae409ac8f85bd10260970c53f65d81c52e6b3a9a3de34eacd718600645f7f90c574f93eb42a8e803ece8b4c02306cc2850496244586abda8e43960db3160c74ffe08502fb61681775a4ff55f52923096ae780ef4c2297c1ba7631ca065f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d41e14942bb9c87274585a7aeea5fd4474a438916286712648b0d88a52148b17bda963db0ffb3240f379ddce054c0f73023100f6335fb581f201ad1449ba83659548e2161a30db0436ae0bfb922952431fda880772e17606a1af28d1c11ff631d4f4160302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230592ce3629b312c4b897c1950d4569ac56cdd703f9690c771204a9d60e5f2fca9ffbd0488fc784c85cf463933e6e952bf023100a1aba3ba8d8fdb92edd11d749208242d6d90ccb69ea9c6d5dbe5b081d04e60060035d3d1d2387d8555b31a9bf0b9fd850302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e35528748d064fed7257b4f36f9e06c7acdb0c0df3ab7f44d8609a38feddc0b8f22609bac2045b4ea8392841a9c7c12c023038394d255c45a1eb242351bd25a7d6d9889c5817ef107f9582336c317c55a5e30f7ed69ec12412f0e80bce1a86a53b730302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023076aae447773ee209c27ca48d9da6c13cdf776c5eb9b409cad6219690ea47d6c59b0af0a1bd7674b3e6e40e6a470da94f02307528e7ac18d721c62e8a9f9da22731fc7bbddffd2a6c79e947e050797ef9a9ac68e987c06c38e270dee45fca22049a470302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310081d75659a9d9933fdec46a68428e38bc515240d36f0f75447e10e95db94676c54d5e8983359ea33b27c34f0cd0cbf63c023005ba81d37265457328af75ac1587bd4c57a9a79715ac17caddf9fa0047e37caa612feb3b0b00517c9cc4853dcd8576ea0302047c435bb50066306402304289a84d99416a3c24dfa80ff1c80dcb184155826129171c8b6a88b85c61614a9d9c9b592a668fbb082be8246a2d2a9d023024ff8888630a53ec4572bd3be2571ac6bde8a0e6767bcf04c65bd193b7873da004921a6c19c00978e8eef0ae39bec8410302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100de64f5ea33b5d2c47709e2cb635d928a33faf6f21e3b68e844c6606621149c17f2510d1709f64bcfff8a162031fb5197023100a2aff1394dd90825d074513f96ccbb65feb073db14b47e63098458eaf4f80fdb35986794bf72ff92720cb0fc88dff0f00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bffb244a391000c039a788a6d3534455f2bd9e08c12c869ec228dd1954d66b03a1e6aac386afae88b1a6c53e3de602560230208cad5c26f0a57908a6370eba7ecf5111b4db9fe3832e873b4d1a7db85782111bc5af9bab9ad946ea20afd77be233650302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302116f87ab34b1143013d55bf2aa8a622b40b4d3323c828e55ed7b5f50d48341f7d065a5db7a8794bbee691ec7638e73202307ca38abe31e260faeb08312c027be80d563851c9cd8482c865a2f87b5fd3baa1d48b8bc5477ae0038bce41c08c5a529f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307f77842e7f0fb609157130c24c6f409f54c43464b34350e722d71c21ef901c347afb09d267ee15b41e43f030e63e41e6023028bdebb890e7212215a5e730a6a459095a15c1628e9379bc1040dfcb226f2492e9a60ee302075afcc672ef8d092447dc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304cab484eb15094aea6e996221f659fcc5cf14a15f1b59a7edfaaa05a1a7dd54a099f9c25e2569b724f51c3b8e4bd4f9f023100883c1ff409579e6720310b8f0e7801bc5644d55cc6a1628143ccc391554dc8f2af7f274b3670d0d05be01e9e52ee959e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230177d283c38eeeb8fc661fee32e09546f0f00a61bd23627cad5429fcaa63fd8bb419506a5739bb9241c4a23e54c0ddaf7023100dfdb3e10d2fc8c18e082023939e357f472d2a57e587b22d04f74da8f1c7671c67af6015bb13ccac18e16ca206eeebbc90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b0173c776cd146a9d43a331a89d0a47ad177cfb3c12e1bd742b6e75a12bad6ff5aa923170c2ae9e9d1d463b3f327985102310099e019db92fe04ccaff13e6f25eac7ea1687a4ffeb86c9f00adccabca78c542c74757c55c772589b5f6f8459e35fcaaa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ec8b3a41430e6d0f79765d52c514fa55c23c60a87300cf169fcc48af5eefef1321f9111b1cd0f4702197260a14bf85500230228dab0273aa80f8512d6ba0cf267d339bf7e06a03f281479f6e5c669d473d105230838557daf302bfeb153235f335940302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310099c98e0002eb5fd5709d6c8b81d94b8bb3eb89bdfc29dd34c8c951d192504ca0d21d8a53ea4f188574ac73eaff7061aa02302c077cdbb63d27d40be78ef8b0caee93f890a18ef88e8554dcf448db5df1efcf0d2782b1b466e2b412268b6652217db10302047c435bb5006730650231008b08bc99c950310c64e73cb122aaa8e773ba71ce3d213263a0914e7325d4775aeb891a364ac68c75e833cc97665fb8f902306434ee4e4f343a175078e0065ac0d0b7acbe5a51fb1c99199a3419d3836598eb968e56bf4a8e7743d81380fc1ae7558e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230640994c88e99612660ee0ddcf44d32a9e9f27cef331833f72baee2be9331efd72f2cb2a519c34c8d1af3cb225b5e50f9023100b89d2e5e0d4c0127141f4a60cd3f5d776b859f0843e0cb978a85e02bdfecae86e9839b95d24901d03cd8de1c5a0308020302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f3882251fabac34801f18647215efcde8bbe7ef3c8bddde9d89f9418ae78075dc18149c3c90a77a03bf65151d7b538ac023100eaba194e19ee2c814b6f234f25b6aa531d90e77acbb514d2bc9c41348db2109547fbe30dc3627b3d8aa6d0f990251a4b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023049a382992d30370813b57adb327184484f5bfa28193f64a57838a14b7fe39ad5463f9520f38508d9faf80500f6002c9702306a9236e1353036d0a7a55d07bc0c4d1e8c95d404feca32b27d4b9288ac38a43d4794250e33cc35d44136f96c2d76623a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305837d63c634d5b910dc356603c50e3a636934521e403edf0d1f40423596bf29b444eed6a24db5d0f0417d4498ace3cad023048b851c889211e5251abaa20aa14b80411030d977c3840d25fc92f354e61405536076bf265257b2c1939b82cebf305680302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100dc7bf002b5bccf3d0cea8a1c4f396beed633d762da2644c08334f6cbf17e59de2e26e3ffcbe256e3c4c405543e430848023100d884c22c415f0215893eb0510707f0d80a094fffad8eac1ddb63c4fb8af80857f3184f7978be23097f50f1b5c959151a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fb244e3a7b5823c4cd08e21b575da72f10bb98a7e927fc97751494e34034dd15a8e448973455f72da8fe3ef3b5262fe0023100f702648d8e2379292a53af321e286c14e3ab01b9348ac328d38f2811641dbdb6c976f467dbbfd04670a29f99b31855420302047c435bb500683066023100c9ad915341fd989fad989e9238387e2370d6ce95b20dbc40f227fe063d16b5193d20bf07f8d395df21c7e2b37347aec1023100f4ff2d656020effd42fc44dbc293d44eaf701f402f47fb1f0db7863cc3347a117a6451a55d1b8212ad70647322e489e10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100df9331e3b0f8d0f9a71cb312248d84c81ef559dce70c38b88dc202f8bb75902cc28608937cbdf1f806ae147a9bde094d023100f3933e6d016597711edc9fccbaace41cf0e0f3264600565f48eed5f5101a976dc4724406c15ffb1f84509725aa9aa79e0302047c435bb500673065023100d41c1901362f91ae2686c42c015657d47a32988d1efec3e580c38bda26f28894dacc0b239542f1805c83019cb1727f1502306d29e33c6aa4b6946688605995cd4c43e2456309684d05c2c2964f7cf35554d0204c10406a7904f14c1994e2cf8446b20302047c435bb500673065023100c611de9ff4589499b7ad361dc2910b87a5401c1e72a58477255695c76dfddf08a4608e2a1ac3bd43814281605a471442023007e1c9b33af965f0f7f5be26749ee06d21a9772b814695c1e3177821d8dd7b078b7d7009c44d11466721c1b22de4a70f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307e89f304e2f527fd68903bc4e556155458bd3682e0955da7d0b9289ac07627eba93090a2cefd96ec60026ade7cb40a060230709387a9bf7d89bbec22efebac06dc65b9cb80fb058977dd8c5a4f9aa6ac9657316cfd05879252f054b66749fd9c64750302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023054646e72c993356646bec5139eac499ebb48876f674db1e5dd2964503dd18883a393423d43f3c893d7bf28b61b8a78ed0230203d155a912f189a70e3c20afa79b54732056fa0d5ac90d2a47d878ff7414874d30384274f687933293c294dd88306a80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023064447ea35b439346ea2ab533c0f8ea99349c34d2fb51914458b4b7a2a5dcf64b3a35996a377000fe4a2262beef46723f023074a366b6e219f06095f593a290bfcf4b32bfdc954fd7e13acc84af75a691c80ce787fc1ee9304c38762001fcb69730a00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306cbfb37f501e3856b041abd60b9c05ff850fde958b703bc00d317bbf6981acb451f72e3d5cddf11108c184df90cbb49f02310085983a54002ef8c5e2a3143d971e5b40b34330ebae4b0feea8fb64d05e601d656f1a6bcd2644d0817575a5e974baf3280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302b78db2798a0b68159db307f293160a6b033ffa067cd444ec5fcdf3ecf2ff8587bc4e23e145bbdef08650c9303719ea302302f8ba36067b70fe5f32b788b0b63356427b7db11047629eadf8af5ebe474f575f5664f0794ccee159903781052361f830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230781afb85b213ac8e046a63e938b487cc2a58277d2065db3209a532c913cdf50befe109f33f9feeca39245e0e0469078f0230187e41a8686649ebd3ceed45c7efbac1280a2d9b5a403fb3c29437c48bc1c75126a54fb6ec08551f45d6eef136a5b2140302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230092dfc3b6766d8164b1a9a10910e71e57713b59853bffa6be85edbd5664f7b9fff621b77590ef93c969fcd7f664179490230170d531b54ba9ff495dc01fba9587580af610c2dcc57b40c479ea7890ab880f2e4654c2259e0b185f387394fe8c7c2550302047c435bb50067306502310098a1c2715593cd217ebebef324b754d3a452dfdede1d9ece3255f6ff2d35ef48216b5fc683b5027909d72c5425aedb8e0230783cb2ff09fd0f6b75d14497dcc1bc8d0b5fb396fc961aa6092d645e330a6c1ed8893eaf8813dd13d147f5023d57761d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f3489111c6da8dfd03bba471199ed5403668de4f91d73b15166f4760957cdf1b9cbf183f07109bbfce0426df11d96b18023100b003ba8bf72b45285e778b25559c952c84c93fa58894fd876747fb353d2bf963cb9b5035e399c4380add103e94c89cc50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100892cd76cfcbce1fbdb17a504cb146d54eb9fae45ac2abe009d91e07531907963e089f66b99d489a3fc39537718f2ed79023100a7710c2a46622da010e1445ef11a2af47953eaba070dc22be5f5315382f992ffa223cdbc0bb04cf273486897180fa3fa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023058c7d8ab3ff58a3db4783b638ec29d811a06d764db7e4610d9e64f9a47efc8f24b4dada67cffd2eb5101d641b03860e702310092640fd9058a9e718050d18e334a9fc36a71ca56be56b8fd90aa351d294a9d4d175859dc623b4b85233e5133d8aab40b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009666a58a9e3cf0a4fc49c792720375644c0366ad00f781aefbb6a82656cf5491cd6b88aad40f5b89ebe2e74b5854647a023100af31ed05a4a6794118a4eeadf449c22589a45392b2a34659db1a7712d82393efade5ebd2e6f5323e0a68fbc5fbff93070302047c435bb50067306502301dc6f4640a0ae3d125ae4d1b80f0374e3ecd38792411ce9567052d0f06c4d8a01c80afa1138b5c0a963f4b4bb737b57e023100828fed40c566c7337e60e72bf71ca13400f3c7be1bf035c475afa22e857e50e02c91a941ea62c0b3d8bd231b0142128d0302047c435bb500673065023100e0e9efc832e46b5532c0850f47b88a2a60061a85ae84faf64c7a3a1b0a69b6f6f34430625759e1f9229d5779e6ab6032023035f6c33d7af81fb9b731183e0ba4ecbdd9c85f3d726dc7f79d9ccfaba78dc5ba3fea1f6ed819f995a56c8a89ec1b3d480302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230488310d62d450c3c88fdbaa6929b8c916d1a5cea3f115a7ba0b070cb86655567fc3bbdcacdb4ede0a48b59600abc27950231009f85ed3c6b516562ea675a5fa4ff990a16c18c8f6f5925f27b02f1a54c6a0e081b6b64b52c0f5b95e2ca48f6c64535530302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023012106acacea8e55c5009de20dcd91bf7fc958d18911a94e52b710e933c0ab1908efe26e9d66264fb00e6a9827f1e14b6023100b4e5a94768eab2ff4027c907f6945e7f6557ded81fd1c1cf8356445a47f7ba8997f731786e0dc4c795b8dc6e2c52d3350302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023013828de026c7fd9cf49ae090bcdfee6ab5fb8587ba5266ebda70a4a9592ef2916858cba2689002eefaa0f2ac4e5bd5c2023100cc6aebab386a11272b801bb54c5141b0d41784788a805b0360f18d5192250411dcf8d4204ad7fa1f8f9d7bd672e454d50302047c435bb500673065023100c005249df26f333b617618de5d1e61eff905dd88e83327562f5ce26c638f623ac1c7130f473926cfcc9911a698ae580f023010567d7dc49535630c4b04b8d6068ec3caae4beacb51cd313037b6814a92d7d818d8a65b52ccd800bb4c64529472cce80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023045c09e006b6e49b6b6d19a0b15046d1965b411e22edee3354f837e7d36ddc3dab412762d25f4eda4091589600a8d334a023100ca92c7105177c7250636db390f8d2960e7f8ad1b80489657235091ddcff5c24d3fe4c9048dde721069b9ba9eafb108fa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023059a7876c00043d4b79ad26e32684c8fb784afeb79014263cf464704e7f1fc67ff71d9151dae666ceae9ba02dde88c6f7023100e875f886c48562a11577e3323629295bd9a88a05e93f331203ed6fe31330bdb7079a652c887e72b453f27efa567bab1a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043a6ee46f7f9d60e22f40c1490763270dbb40f422b0d9c18dccad0365c75960a0a93b128e488cdd1fcb97477b1045fb10230722446f8af81f60115710592996c095a045652d2e6f6f952eeaa33ba8e5fde8eaa76db16ed1cdedcbc1234201fb87a760302047c435bb50067306502301dcb66c5b22067908a10c7bba4c14d72499fc658caa2c12b56cca5876b496d48e01a2b253396a6beca2eed61a59c7152023100bcb6e724632412400fa3b6dcbab43584f110d1dfe7594627ecfb4d0f9ba3ca3364f09b3298d8fc63a92ff118954ddbf40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e69e88c030522d406a1a0dbc02d3576302ff5c7958be33d38f6c1c0730905a637d16ce1ec710e8f5d72c4456dd06839d02303393d3fbd5796331c749700e6ab5d195bf762f18aa8eecdd0ce406c6322afc5563030e12a3db506e73ce023344ec35230302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c7159f65c9c234f8f38c70f2a3cac0b07a02c75d9d2527a26e31771cfcb7fc4615556d4c3c30b0bf816fe5824e93fe180230718f5c1692dac31496699a5a67cc2e41f10d02ff65bdc619b8a5311627c28bb8c94383dc1c2c95a83bc7d802744b76fe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230257d78a53a0ffb04cc9acc8313ddbf7431ccb81fdf26074cc3bc62113d50f9beb3e9dd2a667e49bf888eabc56e80941702303a7faa72b043976b5fb7fbfa9eeda02250c91beb7018ac940c2579a8dca9c6328ab142383b1b99c86fcb7348acace6380302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230516469ecac417e2a23ce5404073a44b35ff2ef3cfe3a7e1b8ca3b7e1b6e252e5e4c5f8fa4a981cd90e804083063345b4023100d81665a23a9e09e6bd782f62ee3de94bd58906b9282dee5f304e91c163eba04129b0a317dbc57ee48b3cbdc407be98480302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230740cac28c717c3a0c4782b84dbf741aad85276c3e383f863ee1cc18d1e2d3bcba6c9e9c88b85d8d1af6a2d87fd300aac02301c7f397cfae149dfdd07f079aec040b0a4a04363540349d667d527d57ca2659efae2f8699abb00d1d70459d6c252f3650302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e1dcc2707a71be299a2cd57ad8d421c4c582403aba8fd13820a40586f0a26a82907feeaee71612683ee72cd575ced3da023100958c5ef26502572b617a6b350052b63b3d5d3db33a745d490719be6f6a5d9baa2600064b905451567d306acfcd80a2730302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302bf9826b07c8e0b25205de0f34962834bd57d593d43e5ad9cf936a5a28e0d24d74c981f1904547aed4649e112423a85802303a8e6dc7d902db35be5b22b8623e5f2db5862b636c4ce0294dc376a40111fcd87d2404f0c77137347cafe6d62b4924690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302d64d755c61d3ed2468a9d5087201227d9abab09ba5737bc1fec334d2976ccfac77af7fcef8ffa88bb5646a49d97815302301fc6b8c8755b1139cc7fd230b8f45d4a82c461b963115bcf2d57e48286077d22ed196d7d4aa0e10c2ed41603843f67e40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023045a97f0fa033e2091b452a882b6dc577cf96146838ace8666c6ad6db7ae7fe5e70230a426e3a2bff06e95a8d12e2a807023005e5d67f9fafca9d5e70a4f0ef0405a2feb9c1b1f3ea9945e547f76d384611a41b08ca80f45d9b11554908c60907fee80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e989eeabd95a09f809714e7cf4531aa901386647bee1821925881a5447b2696939ad65f5f38b50a9299c731de75002a8023100c7e84272667857fc612d0d4b2e280fb068f9aaa10e5c40b843494b26721aa9e34ae3582961140febe04e5ca0e85ef1d60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302eeff6c035210d7c4b713c3ff989456d2b3bae93cea9022a15a336b21228a92ec498320be3337fd6a5c5fa9eecb79fc2023100f958f3266fd0947a9b9699798dfca167744bd798f3f94cd364197ecef2c156f45d7d5c762a510a318d6b26152924ff560302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306bc56644fe4949a408917860c72c4b1b5d3c656d92664a3f55fc7985f4566fd17679291c8777278714ecca77032a6524023100e0e44c77c6cb9f1b4f4b655ce84f8dba658606dcdba44b8d322e44e7efcd49a5e48278c6543ee6746c4d03f640ba805d0302047c435bb500683066023100b0ba21556491bb5bb2693223381ef8a3bd60897b16a5c1e5e207279b22b0897ea87561f7ecdd22ef3e8a337cd066a07d023100e2de1bc2919e838995b2f8b6425ce7c3a31631f30de85cd363d69b0127a97f5e8b52fbd7bcb533de89e5070fcdd239390302047c435bb50068306602310090d2e90d8a33f554e6aaf05a020d1bcdee38b014d310d8d4f19b01cafdc020657ef1f2b5b1b87bfe14d5850aa316da27023100985d0255567a8335a30eceaff818b51b3122abec1135b20737d126ada14b3bf657362a15eea9767f600c2c75ec578ee00302047c435bb500683066023100b6e7c7587ba20ea839b46127b78aafc25e091dc6d319a1f08d7db14d8bb60ab24067993438708f5ab0c9bdaf501483ae023100ec778f1e9f0572d86982e4c60c263597378e64bf0c2cfbc6ddc32859927c84eb0c2b96b670231cccc2aae5b814a79e240302047c435bb50066306402301b5c8d444b56cea6393f25903f005f6c558c0ba5209da486cb4860b095bac7291257b50495403776bc7d4ae11b448de902305aeeb621c8cdd0b4f1da65990c168f631664e44308e6e51b8c8f00ba46735d243b27abf99a8fc7e8b02e3bdf6e3304ca0302047c435bb500673065023100f4d789c1ee99478ebf035c5d56154a2a6e4d9060fe674b84dee3b1df3636db7d4544e6e28e6999c25f1223da242f4773023051b0cfc8d51e97ce55df897881d03187939e0dfc95dda78c38736a6fbd8659be6876dfcc022ebb60072de3897251a90a0302047c435bb50066306402307c3212b5b130d8a63bd86990804e3584ec825b71b0ea7b5b8c0d404767f3a55f5b4f7d97f202250190288505da255d09023062427f0b5c45a29043dad086489dbb8ffffe4c800c7d2433a28c27b859b930f68c2d7eb7a07e69f11a5698416d0da68c0302047c435bb500673065023100c12dc3936cbf5042d7c23f109447e02bef1a40f1c2b82f69fc2ac3dc4a1dbd1139e88137406e5d951f27d268f5ebd92b023021914e0d2c31facadd9e4233c88dbe6a96225f4811aa73fd6d2a18f32da84540cb4e63040b6b5cd564e65d1e2fe98bc40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310095023a25b4fcbed6ca0368e1f7606ff85c716a7f9c5ab8b88e95f7be8af2f43c1d3f5cc41f1d1af8fca1517df9ae2317023100aa24b95f4c3a1027beba1e63906f68207d062d80ef6d3f64df1b9863308f43d3bd547ff0ae1ed1b56fed9a238eb96e570302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307004a79d1cb98408909a651e4ebd8c4853dbd8e8860c6ce334f9c1173d65b51c747529aeb7ebbb5d54b2b3606a7f6eb702310095c6c7dd8fe93f33dd264ade391042549944a9c004d7d6396abfbd249b3f7c466bf1e4d8c6406b69290d8d131365f4820302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023048d3c7302722000c49e498e6ded2ddd702d831355b999e58e7444ad924faca1b2999dfb26af15c4844f72b702848715a0231008d15a245b3562389ac39b47f1c1e73a9f2a793ac632af2e87d9a70de99d371640742d9142ec7e7cd82ca5d7e261e7d5e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d6471555e73f0a80a8e0f8eb4493c1f740ca643eee9919784aa71963957d1f712a98a906d3502b3134e53b11ed4f4ba0023100aeab4e416552e9fe30fc7b7394ce74b38f07c0f71db1a7c71cff6b909490cc6030c08d91622d9fdd49c144da1628407b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023019befb6a28ca5ededec16689e6643137e5af634a10d167a236e8304185dff46734277f1ea9812bbe09208398316a853b02310089dd5492f4b9a4dc058e88b4476fa353df868d810572b9731c17a28fba36c9b7ac7546311fc0e05db1489a8582d9a2ac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230064cc2f5656b294b69a0375a50b849a0b218b95c85dd2ad336413bb21decc30036d97ba78f00b6309021b0094d2cffbc023100c7b4007ba6a2c7e4e675a481754e78d687b244d5bf1605440d98388e16a8d67cf3c0825086eaff7a21ce2d182b2b6d4d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023006ff3dc29503c9b93a61edebdcf4e8f2c23b401bd4234c92b3cb3b6b6b770b09e324aea0b802ce9b3ec4b248858549d5023100f563ce70d65dfdcd02919dbdda54ceb859917bb23a8907ba5b57c1875d3a291fde8edf9d7044db0757fb10c1e044697d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230099ce59ae6e2f53bd6a787ba3c21f74fd4513542893c3d701c7499d0761ac37619530fe6d4f8cc02cea36bf396ae1584023020e8c0d275b7b9fce967ef3af69dbcb89459b8fda7a65f349feadf91137a574e9fec9ae8a33c1e13ee5c47e21132ebc60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023023a3edb90eb73a580bf8aa667ca558cd798ded69ee132b73dd23243d35bda703de4b8d6bfda3fe5bbbe2e777a5f65ff60231008d47e50b197d02c1bb8dd4ad348a0f4410b260036c7690645d5e7089b87cbd813b3f4814dde0886a61f1dd183fcf46a80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fe33223b9c4011ae365eed0f9848daa982dbfd17014438ab9c52eb6493c19b1ad806ff51cef2a025fb0c6cb0c6ab646b0230452c0abb8cfa9d5d5442e9871ac152ee66e136b35adacb9dbfb4fb61067ed39524e459de43f6e1488f6245491633fb600302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fd5145c47f4b743906a39ce5080eaa59b304ce45c9479e0d83bb1827977e56dfd973e360f97f9a068af0d3517311fe4802301b2c333132a728d709dba819104e95909c863ca3904e4d43eae1a102e9909cc8ca65ffa8e513b6356a638ed5a28017b00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ccd7bbd7ef4319211aa8a31adcc8d966e82daaca40c5e3dacd3d2dba588022a7a46156c1905a722eead74d572188d444023100b57346b49b4ca992bca392c4738a3b1f6b9687e447d6b1c9c75a2ebc6e5f8331f3632d4abe03ef654d027537000852e50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023029eef6a2f64fe025cb50bf0a91684b60256feffbc807832413d3d6ed96bc7d801abe24f79719520e18e3d9abd333dcaf023100c3aee827e383df5e49192358c799ef13bc3d2285e8adeded63f63a8887e47f7aca58d6e2780caeab5806547b904e5b3a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023013c777706c88454e4538f8e32809daedfde12db094e387d139cf80e2909f7f8eb444aba831f3069502930c995e4dceaf023058d497c4b59634034913430634bf765ed082e2693c10ca1b389304dc68c3179e73ae5750dad9d741f93acf93b5c30d740302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008e4111effb74c23340315d27d5a5866d6e0b88e894992eab5a0608dd68bf08f932ca683af804a02af900d1225dc0bf27023100909d1e7a15e42ef15048d64d0eed72725592e22d64ef19d831c1fc3b774735feb8c3c4f88c346429c9253935e72ae1cb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f5697f7faae61531d4b28b8dee28b27fde974c106e66f1adea7910c30daf5cff2a39972bea153cd423df0daade684fc20230573a8d29f1f8228955a0fa3b654181b1738519fd4645218da387d35e5320493bd8ff2658b765699ca98a8b8fd2b6c9a80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100dca5fab7645a6389eb04308b1310cf20c4baa28850f3e5a4eb8246679ca6d3cb0954241dda7f71fb7e763b9df9d98acd02300b48d6b08336014ff314afe049c91c7c8a156f474ae1df2da856ca5b1b4ccbaeff2110b00b8b077a8928f95add275b530302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100edb6252e36ffe34637b14302e72233c062d9d2cfa0f88458eadf7a5a56c991639a43ab6ad47e70c191126e4e4e75318602310085c1b54e68d3f3d998ffd246cecbad48f9a60c0165e5793673c13c1b9182c5dab60bd8d85c41fd393d2ac27cb33f0b670302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307929c6d1aee8692d134ed121f4111788deff3df3516d45bfdc7f06903771522e7eb8e4140db04faac79ee3074a44c99502305ccaad6aae71ed4d8b6f3bc3ca1c25d64ffc430cb06dff95c1ff2c789d63c4ab8f3e1953e269d33f68e82f5211c212c60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023025cb2c75db064063bf440313a509787f0a236eca411d44b221cc87597891d147d2cf19b36965f3468583b9400ea468ce02306b60807ac44cf7ae23057664d8d7e6c397fdc3b1ae14fc8225d6099946048ad568a906865dff9bd9016f532ccd7fa5190302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303da6e63e320328fedc054e2200ea50cb40c3d5a17a8913184d676865f964efa96291c79151608ef6b23c8abbacf956e602306789f864bd45c8a7df0065e74b9568c5912d8415c4514211d4ec23e17cd33bf0c76123b6b44ba402454baeb6dcbaa5920302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023049778b5dffff50c2f09df500e91cc5790f97113b887b76dde8239a493ecfdcfd0f23ee76b2daeddaef6b711f9c458b2e023100cc1e34c92485a1772ba0221f97f639f1a8f6ba5bce7dca2cfc2fdeed9755f1803f158430212e9d3d40c0eda82226cf430302047c435bb500673065023100f24d703949ea354f058c0ac4922a8476477c616f76697e165e896fedd0ad9da88d1e28659fab826c926df69dc0121c7d02305b3af84fcf5e7f7a88519bf7a980a750282ce9849b8e37871b1db25c3e9d194c8514cea486eac8ec984985e8adb821d20302047c435bb50067306502303d443350b0eea4c79e4ae32fc0f7744fc62ae6d6793911cdd2da2760c82620759fea6962a67ffce04eac51f69fa26d66023100d94985910d693bbb5d45c70616a4a31fd5b7317e4413b198750e03a36aa4cb88702c666c6e3015d0dd97c795691165c70302047c435bb500673065023100dd41be30ee91ca4e74c7ef3f714904396f0fa672bb05634f0de5b88f665902dc14667f5b7db5bfe52dc624335fd4138f02301922afba7b5de5fa4c21884d9ca1ff3269a2fc43aefbd39d4c717108ec75cb0106c152bd52f165c13f4110f420d7508b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023033c0b74e2fbea8e40749cc27583daea5af78d793433dc8872aa6290da5a76c9d1c7a431a8107a76b2ec07fe4a46a7cdb0230433309e49cde12176d40153a3fcf80dd0da28935515e44291dfe99e9924edb5f921a5281e42664bf272b85875fb1788f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305f2afbd2f11f04dfc48a2e035f76c0aa3f66fbc0ecd8a020e9ceda5b7fec2043d8e82742ef40faf1ce045e8134c8b8dc02302634823941abd17b5e02a3197fd90ef874b5849f2cf5df176538b3619b2ad50d5877aedf2f8c9daa1c1656eaf1cbe21e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023032e978ba3f8b5033e6f6b217e93ece532083090f3184624a969a884497361fc1ce83cda7c538c34d6c4f6918791ba952023038a45dfaa04a2726c4e811146ad3c494b030de3ba96337d5f8ee3a8b517288d7ddcd76f809dd62f9400d02744d99029c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023041e3fc8283c7151c05165d110abd0a21ff773a90dda8b8911b3b8198ede9619d07e95c7fd16908f0e070cc688d96f23b023100d6d76aa8f39f7277c703b7110204a63fc6b3121364473bbedd90330e974fe6642271ed8ee0837ace4a084374068c90130302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b25e927ba35d849a743b0d913f1d56a5d97b81c1e65008308a7cdf87b52d9c405fd60cf5c6c700a3319e4bf4688e15fb023100abce78101f656105ad1047de2c5e99e08fbf1f055a531af25c291a8ae5e39e0901e04d45cc4b7a9f041e2b4950f307f00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b60ea0a78f895f6f51eb7bc792a5e7e7eae8aeb8a6328117d1f5c4212ef022f10c90d2cea60541c9abd4d759a368176502303b096cc0378c8e2479b0e2c4d7cf5602e590b3f087b53e2b30d5a6b416a076ccece9131ddea5b6c107ed26856e2e879f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023066aa65661c9a1ffa59cbe84f8a868b02ba2dd6d1dc4861d4e8039844cee53d4f887610d8e5fc947e05b769557575adc4023100af38d68c2762c2b99ce3a8b45a42aa3ee54c2f5b389c94f5f9c0c528a823d247da34b537ae9f0d04670c38de09ca15b30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310099f2fc1f64c5f0701b229770df6706c762c69dbf47c54d1987dd46a0ae99fe8bc84821671e0b5e5a10010447371b8ad4023100fa228afb1c183b36f6d1375a4c2192ef3cc52996aa98c172f8cdeda6c5428aab60a5444b56a6dd9b093a73d91cc5f8e90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008842c6987340fd203ae4a871b0ba2f85df2548d2b5ec843b5b0522551448fa902b20bdd0e85c2a2f634e5d6144dc12e0023100ddc49fb4b267d1a2d379c066f494045b0073ef118fe834c976025826300f82983f8a7e84a81c9273c9eca523d06a52bf0302047c435bb500673065023028175b117ea0583f598baf850617d2b7946055cf44b3b2b96af59d9aef4b650aa78a0d7dce0805ce87ad4f53984b3042023100c7fda958c9bfe1056f2380c61cec7b869ca7195cb78b7a31ae9f854a50485a7e6455c19bcd984bccdaadfd4df725526c0302047c435bb5006730650230167c545ac07d43a09ecc8f6ef5dae0487b05dadded3838d85ba731985d27c176930d5bfe669614b31e94a0246345f4df023100a87aa0fc27ebff3a666a6b2a36d3f41c3c208bc3de76c2e33fab493853248de018db72bcec784ae80ad8e80dd05b36f60302047c435bb500673065023100e7389ee14b40e6a54a608551ac88dcdb8433b441a9c8e533dba90335d8474a4760247756e28db098b7c39d032214803602302976430ab863b05ecf1118cdbf7eb82cbd1938d1cb626531344e73f9359c78e59b8fdae8e861f301d1fce584c0603a540302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307bfa809fd5cd362d878787dd6ff2644cf0ca0615711a69574132fe01b133ae60b34bd8245f1b191df83272458ca7589802303e1e19ef4f9bfb4e34bec06622e9bb2d9a0d9c6c5350d755bc3844166d71e82fb12307b905b1ee2c9500c3d53d952aaa0302047c435bb500683066023100ca3c75a1c0801df2df8c51c16a1a866f3d9ef80ad245933d5c70a73e52a2ef45778fddadb4def6b61a8ea4948e1071ec023100b9fe50edf81a53cf78663fc2a6b6b39e88c603f24f9964fbe0cc9d32a99a520d0f3e910df5b1e5b834bc3d931a5749d60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023062cc1c00bde11d0cede726a3cc724f3dd8a1930544792594a1019166873d150a81cc1f9c48f5f9b3de500a424e85987b0230158a65a1ceb92a906d67b83fbebc5926070b7fc3f4c0b0c8c1b84344f9373c0a3c6249bff2bebe66c84cc2b104ffd71e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008ac74fd37b5ed23088750175a21f6bae8940e7b8fcb7a3f540f1bd54fa9723a206350a73614c0c416b1dc21704d1563f023100a9566246e1edbe201a1e17d2528405a1d8a0ae5fad04f9ef7d788b8d57e792a0954bfd7f886d959a7355a10b5739e4280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100eb81b0e10429354e4429033b6ebb2ed404ce304425015398e5edd0ea33efa3191dfc09cd206f4eb2f1b135ba7959c81302304014dae62c22792cbd42e07863005fc46efcb661b22745ce442f5c2f40975acaf6d994f01400e944c938ddb1c47826c40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a685e56d7f2b39199a2ce713f3d8a03dbb63d86d14431c3b71b7d5af9f63522373b743f476ae698f16c87fb067aa2c9702307ba3e912219089a227334c91bbd18f6019e13fd259920f3822f1f51064dbb948a12c383a2e41f9707ca9e71517edb06c0302047c435bb500673065023074bbf944e4071f8bef61636543d319da6308373da7c864807915b3a4768c2d69ac1938a681a812d4d56685b28c4b6f60023100a4668226e33149a097dd85d56d2c114d5e46583dedbc57a6ed896da64c53bda1c64c59dbb95d77650128a6ea9ecce3ae0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023007be50fceba415969ce2b011d162310bd5cad096a657ea0cc64438879c0a2f77faae3a79ea85d6fd9733df4ddfb70fda023041e41f9c531c65c3625e76cdaea4ae51b72cdd952185c972504602b2519ac5899da919a006cea0801198a8b4064480b70302047c435bb500673065023037158f2244870f230531477c5f678e8a2dd1452eb62fcc57620c85e6d3b3fc0f364ecd9ed442928afe4d18554248f5a302310085c56b31bb2b56f87c788d6f33452e99075581eeb8de2bf8ebde03099d3210afc9eb8591659ab3b36f4c382db82a69350302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100950b53533338ea9f9719412edafbd9c869bc555d640086c6fb9061797b48915193dfe19c0b3c50c12255f2712e5a0f3b02300cc77acb12d51d50b499f10b48cf0411b6f71541bb4fdc2be3c6358cb4d916b6e461903a178c90b0b733855a7aff2d9f0302047c435bb5006630640230789fe21093f951386c55754b3122e73cdd44c56123f852a2dc9348e80cfc36ffda8aeaccf6758db254d55499c7ef12cd023020780dfa86cbb4663432be23b70a4ca490327d5b745ba36589b6e242446d7a17401c9c91ec7d47e3ce8304062ead90d60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230790235aab955c7431e0b82c405f39eab26dae97dd44f548fd95c8fbb8f89bdce8ceb28d7b230e749f8a0f8890aa960320231008cdede56c49fa839524c25fbbcaec5f32169374a9cb7f392ea8358667c2216740f2f5c09772ee3bd411f32f882ffca6f0302047c435bb500663064023035af51c9a8edc347557e03e923dabfa1688a971075f2148921b649e9bcb2c4d250543a5ea67750e18dbd0f0b1fd7e4f00230040292b67dfccb713f34935fd1c771c6febcdfc4651e9248ea0024765a6a6059b9121b1a6bba3bf0c4c0be5ce08e4f0d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023061502e8e9a4e8e6629d2fdefb11baf29adc851e54f6c920fc09d50fe714d1ed479d4b2fc9c08f7214229449e30cd55920230472c59c00d834b7c4ae9a2a3391864f239a683d120e92a469e7d74a3d53c595e5f2b19bbf2eaeb8e5a1bd683171a3d810302047c435bb50067306502303ca50155958a99bfdfa28ca4db0484138e27bbc28ce8bd81fe0a7838a57a7aa1ce7a2d9f24d17da4c161452e88c282920231008a0dae6f90e1989fe9ba3521ab6ff9e3622e2c95847d2c4537c46269ab04956b23f6c1169f394369af6fbdf111e5fd6b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023027a9e05cf2b5a4683e199e596712eed1e87a71b9c9f2e935c32d8e8bbd69cfd148487df9a254297bef9bffd0bed27c6202307548abcd81698857995fcacbe2ec147acc14476c4449ae714c412449139ec4ae761ec9282860c022687cd98d8245822f0302047c435bb500673065023100e9be18267fd250ab2042f035959ff7fbd80d60757f60a9460892ccb483ab45ab1497d1e762f8649eb7e047bd5b4640090230130089982006318045ff4d1cd1e8e06189d2c5f1a88df74febe273e99c742b0d20e57e70664a3d577490556dffa152f80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023001e3fa3bc134fccd540a162399269fa8c5fb16ac368ec3f422129e358dc43a1287de1041d8b4f7568cb3e0b1a013143702300156a5db2a865eff74c252020b0acd2b1d2bd164cfdec8cebc6bdf4252710361035080366bb009d043496f92846ab2370302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023064a5bdd1b51c4de5909e2b5add34eb2ae11ad09f21b8d6e197edb6104a1acc3ea4c2e6d9db715db65bf2873de198715f02306631aa242fb0448241f7fc2dae213f84fbf7e86e8065ec005726bc7a67cbbfaf4175866e41a932c677ab296d376363ab0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307cb257884c480e03a3ba7de1c30d7ea0d040a7c18204e38a6a32c2a2dddb24a3ca5671e3add250f8b05d5084cb3163ac023100e149ffb3db61d8c3a7989a20dd999013ef55e5e96cec5ba58b3eea275ffd293c2d54a0f567fb7ace5608319cc51142390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302527ed919c9f3a14d1215ac8cc54b8785bdb2464b52e6c057718843965ec42ef97233b925d2c83437f05884bfdd7c34e023100c62e2cd444fc3b30fd0938e3f08b4b87ab88c0e0d63e6e9c29f620098a0b06a8a3a07355317f47ba86fd528568384d2f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c74976cc86388c3fc59dd48846c9e11dbb0645e9939983a3c27453ae656470b1a33a16d065508abbe3798973cba6a645023100f5e9ae219ae407573344e329fea325819e989ce09c26eeae506c0d1245463cfef296fb1a78b5a239e978e7759df693f00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064022f3f3ab256b62810ab56a1d10b369a15c3b9cdce35b53af428397d7316f597d3b618e2e76bd6499fa18f36e71916d9ba023100bad7c0a4cf5d7786f493a152cd702c2490eb69c0bac5b0a1626bdffacb5fdc0a98deaeba93cbe946add513f8cdf899c20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300eec958ed2fc48c288d9d9838a3a7e76a0f15382d4b2ece2aa622de63be8a5fc41272feab4392adf26536b86049ec941023100c0786db0f194e6a181f5980fb8e2511444177acab2af475b219c5c0c0321548d9bf519c3e06b93765705bbbbdc0b7ef50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100de571f26d5f46f2c746539fc005acee05a6c465d1cc1924ecec6f9c2d7295df207cec4e8ef4036041d4383ccdc3efe9b0230035d6245238383a3fafe44464c65397d6e5027bff9eaaf2ecca772697e2ab0c08908576946902b6f2da4dab09f2436070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302bd0dc8ba1ab0261edd5714391fe524adc18af1df467b51d589d6a55acb354e9ce55cd677b6ef45fd6bf84d7d9a2f42d0230441d5a98386992f1f7ed70182642a650ce44e4640b1a3e8d881514543d496dcbd2ae8ad1cd41f4ac1520fdbae45a10ef0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e3f4d14a6470422fab5ebef7cb4eafb8dce3824dfe3a795fef852f9242666b35c275b45c57af021f6ae2af651b9a947a0230478d3df192f10e336dcb997f29789fd1a6b8ed6235cf03487934cf44b394b6331cc16cfdd4ac46655fb2dc062c9546560302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100aee6576793a684b17fb23c8195d151aa358e2146b5a939014dc98b7f347af0d654586325afcd6144c06e944d59160daf023100f548b47bb62f599c91c63a935e985946ad9a5a928a2563dd2dbd66c8128db60895237736a6d7f07ff7e6fe1cbb6326730302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023004104e3f1ead77e4354234b8f4014fb9473602f47374297eef9676d5e13d36b4fc78a0c88252bf30f8aefe8704210fcb02310090cdd56fc09801b1423e9652ca9f6b2ee691fe631ca807c6dd697dfb2f24ffd321a34e7a9844fe09e5875c97166140240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c0355f061cc40bfe09755f7a441c2684575bd9140115f8dd65c8c2895343a930b2798892f4ad77ba011dcfc9bd32e48f02304a82def77ce1251b95c0a45d87d251ff558b6371c029d60cc372f1a5f7806d53f1813294457ec4f51fcffeb600ed2f500302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302182ddb4f63911eddb18e378886ebf8bcf55b4a631b85c640c5b9153015ab3b37602052e24f106ba142bed554615c1ab0230337de97711dc3c0c7890ee2a38d644d333f967c3557033a70335686ad1c6af4c621300f02103d34ed2797e2146f43d220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303454c2a16a08f3acda4ec32d6fd1d24b491819092ec670d02800c39427a5b7419d016946f423ae3d468f3fb7423e2f3e02307aec588f97eb4fd3cab30e276fe04108b53aae840cd0f37a6c9d26bf94ff773bdb1cc49087d307e39839fb1cd46970d30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302d2250950a7bbbc8bd126cf3c1c2ed1dd62bc5d6c2628ddce1f298e4accbeb6a66ea12eb6815b3a8b8330524a457132702300f19ce920e75f0deb801dea68c23d060a2215e986780106a6b96ead29a68693717f5b4266d5c171c0bc298598eeda2660302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fbd60711e1e5f82d06f256ba6fb44eea8f9d78298763c9fdb7e8d08313f548655d983b861d9e57d0f4b2fd9fe09b709902301a14d59cd4e65babe22fe8764771e1018376c4b76b13d6b4f9eb5bb2fb7a68fdad37b04def817e4f4ee716316b8455a50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306ddecf83adfad3f1da20342f75b2033d192d131131cf3e84465a8c56ebaf69136fd237366edb004a8c98f2297811ce7002303e6d61f69b58407b852cd87a37a9b8e3a62ef8da014a30f601b81f311ad6d7ccb490e46b8c22abf6cc1efab400c146050302047c435bb50066306402306d8fb774523c8449e7c1dd8995b695e965a7a6818283c31f248609c2e76496f4d88ee6978fb7fbc96862edc7a3818abd0230678f49f443d93684f5878d4da784b65b2348179b4dc94f9d25933e182cba2b4b52213afc68e5e0cc1e56478434e167ae0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f36d3e65a5db4996bbb9e6bb71ae1cd884af54029c91b796ffd5e954d8f3382aa1738cb9c2e91a26624a93c45596128902310096bffaad27c31e764cdc0200c95c89c2a41cf0ad20a101e3e107aee0a14dcf457792d4d3dddf802c8e62322a8558f7380302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304fde0484e17f48dd9391cc3f25492cb179eb2bba9ab4779a6805613afb65da77ff35360e07be9800e88f4e48b116556d02301bee13ae80c5bee2d04f976e97bf56ac945a5f701da38d41b30d2c9674cedbde74422287897b5cd07c4fac4adb5c7fa40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b261975629753f336c30c901bc126d411a560936baea83c162eedb9fb58caed983af464e06a950af030b0038f62a6a7e023059531efb44a0c274c6061cf2356f7e16beab78d0fc966df4049bc90e0eaca8d0911e58b54a762711f2bc46a8c3e2fc150302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307c03f783696cf843bb5e9574b89e296cd05181dfae9fab0254edf24645d3d579b5a8bee4c84f3f6ca5e06c90b3965f06023100941dde366ff9c8fe7498a7b4a98588b019b337f094222ce067a683b6cf70b5cb987e0bb5bab4c7179b0d3c1252dbd7cc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023002861a765f0caa5dc1b8da540d14ee27223d21ea16a774c57757accd38fe1a506b8409dc0fdee2a80c8c84a7e9e90db402301c80b428758ae74224059b6cd48f1cd838219ff324dfbb67c1fcbf0479f5007f5e463f2240268a4bb999f99a5ee602c20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043043c79977f01d256ede706274b7f9af981093822af4688af21c0fb2ef19e25d4375d03514a8b54af6890e3b383ccd50230535cb1487615741200b5253c80cbf596ec0353b392d98f17ab06fd8b1130112c4aecda269f2168d0a4bd160180af26470302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305eeac195069a4498d69ac7ccbc10dbad671093fc96537c6ddcf89e6d78f0ec87971d92d8c945f6ed753e7b206242aa6e023100d5ebdc1d1ada5e4f6bed54234cf9d9ff6606b3690224009cdc8ac6de21efe831d06dd4197a961dc896d7c3645bb3352c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b91105cefdb56b351b4e8bae2b926db3090cafaa18e3dd13d798223b4f539409c38fa2e00fc3d16cb9ff0f42bdcb679402306e4c6f9168d9b0a5379b4a2e1d78c26b1b7aaa46de52969911499216510e02d49fa31728639772ffe5fdb527618d9cef0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008e86b44fd263538af7cae18562055a16406f09c0ec4d67ac2e8ca8bc880886b463cc62e57a686be1227a9afbaf9f560f023100bc4c5df4d78422831983d3467e554fab331ebca5757a34436f31238d7d4ddc7ef287e878722893f14ad3d20e0598c3980302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c00f24c47db0e99eca09a3986de30246517241dd127664caf42499413ae368f25c3cabbd79ea15aaa02ac01370d65f6f0230750846010af52476cab70ac0bf30f00a67d522bcb013b6c074ecb50113fecd3c9f71f760cb1bed407f10a774b6ce04240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cd1e41bf147b3c1ed80d316aab937b0fed97e0cc24eb82f1e68804389595dd35178cca8ae84aef2681e92c66cbe41a4f023100987915f06d12b3d0590560fabc25a9a66f185f145d88a0686cbfc6574126a8778ab63f83ce5d404f590187ddb051a1d20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d86449516d791143fa73c23b741e96f0cb06f4f25cef7d363336ecb69a11421d70e87a7bfd881f020d3be78f5ecfe53c023100aa1bcafeb40fae232c9a2eaffe77b5c3843e69fb212eefd000bebe4c5aa39759add2bf062f326b77246ea6a7e60d56440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008fc194084709cfa8c84db81223be3790a290d9bf02e6dd47fbe38e54f3030789f1f7496bd1d85a7d0a22037bb22da57f023100cf6675a9731e99883504a4523aa928c2ec4d8d9a0d2183a0248b95a01491bd364e03dad7d3f78cd4230a3bc73e4453f80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023066d2a6d1c125677c87779815efa01db3b37fcab85365fe562af24f491783605ec104a657b31069f8b0a786caf515b941023041b254d65c5646689c6ea06ae925c84117f2cd66924c4f30e3b7a22b43fc376a52e924b561498c99b5089700f3b0a89c0302047c435bb500683066023100f9ad31784c6cb14a542f4e511787354b8ca8339e79225a8c9b3bb67bd38931fc6bbaed24f6e21c312943f57aff718808023100f3b06a4dc96abc3312f024940b3b8ef5110e4a9469f942d56d2a91f0e604711d69cde2b4464a5091e3a545ac0d4e2c2e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302f289d0898f94d7cf72b0c9139261822c802ab706546b26fed12904158b487335e3b2263224f8d8ac0cb4f5a9c21fd9c0230092bb06f67324628d5e0d2d5a6de7cd912e5018b4ae5c0a77fcee74579effa137df6e7eef34ddd0f93abd2d64dffbd350302047c435bb5006730650231008140ca7cea7032e29a168da4bcb8063fc99dd0088e1bfd326986ce878e7f2459ce5da634319212e57872077fb8b66e6c023058398ee9e6ed942fa2f67e510c020020307edc11e7c87a5be9888c718167d89d6916027712b0ac6f1b105c459e9c356c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303d724e0d22baf0b73521315f9eb3fbefd3e2dd228cbb0c7fa2a853589137695aa91d366a5d41721eefdb52d7ed9372f202300ffeb08f284b89a09ca2ecc6c2ab2d719d2a2d74e1ebb3488dadbca4066cfeb3d14531cdcd10abc555b8eed851ca2f330302047c435bb5006730650230648544cebd11af3e2f5bd222a3210a0d02a0133fc1bd21d016ab00db66239d9451f5b07ae5603efa1cdaca5a72c589c5023100bb17a66a72c257b373f9ebbf525cb4b44961cf5fc63475d373cbf1833f72c2f7260980f92528188d64e8a4a8868dc86b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009dcd893d1ff55e7845bdfdbf3d6a92ef50762d6d071c9bb876652b9f5293bbf0061423fd34541606a92e78ff4b3ce8f6023100e6ba54205f46db9b4274ffa96a65fe554860c6fb4da9a47345f9d6bfb483d02b3e4e8c03d4e5df94e05045bc47e50eb50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301eeb76d06e6ab4f33aa0de58285d19e7f2daeddbd860718e40cb1845fec540f55cec307e21126beb51da50ad0b3a4d9c0230361a29ddee56838e69409fb11982ebd40eb2444f63f692514f9373c8294b3361ace274ec7a1bd722537b1498917c73900302047c435bb500673065023100cad68c28850c17f55a2a202688c8c304cfd3e435372f7127e971806804233a7db028f09f3fb1d8dbfe3e8cc829a7908a02300e45e13ede3e96129fd020d4e98948de6daea1276f6bfcedd50578476f77b7f86c2ecce3bb6b26b1f1cbed0b32ea8c900302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ff2a1751b56d11058708a78045e2d621fbb4bff099f2075e38114d1438273794231407a18c3f252c6c03e584f64edf8402307ed22b832048004bfeddbde5f8d73ea6e73a980c9e7e2d0ea6619a1f25fec3ea707888d7feba252931d394b7ba20ce4c0302047c435bb500683066023100b6d4a2c0ab1344897f67c95c32cf445b65f7a30a433163cc8e9065a69427a3a150707d38ffea80daddd28b451e748633023100c96f29998e0c90d4da485cd74e6bee0609a2774941fb2dc74f8b4c021bca577a5ac11a794753a77d60bc0d90811e05200302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023013e9583a24091bf2b58277601c3f14f64b9fa38f5e861b256ac02bc9d0360591cd5da96926c0fb504e20964357db28b6023064f011f9fc214a973b31e964ebe805aa5529b737d278f03dc885f8ebc58cc5891c65dcb0921f4c1ac936b0e5155c73440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023061ffbf88183bf0c34cb8dda6c72a69af8b26b7d6da72284453cbb31f9f87c949433ffd13f84a0d9b08c2d7cb73f84315023100fca7ef540669345812a28fa9173f4153d3cef4a793e328fd5b5e816323ba0f26c7346353785f3cac4e2d51e5727623290302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302758de4c474c701d566f3d3848fdcad98c6e2a9045c5917ea0a92e9dc2a9f79edfc5720514a42d92742fb1d99064a12502307bf6d83bae2a54449fe9178117c44f43837e2255bb427150cda97b1b38d7eed5cb2b8d2bd420f23d27307877558cbb900302047c435bb500683066023100e5eb8da13484c0ee95d765f42c4b52f582a3aea06fe8193c76ca069bad59a592bca3fe8fa57ce8753877ac01f137c987023100df377231db9dec56409f0b0d7bf5f1b60440cb03d6109e3d01d80f327f0059d712971acdaadfb8caba8bd8eb0ba6fadd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023041346b3bf4cef2f3472e20a5757b94a4f565d6aff502afdd1b2f07d5b6c1a72cc9d0637abf4ca1520303be9ba5ba11e2023100ccb84aff83927c30890d88ce1670001830c16048d7c464d9b097ebcb5d8fae545e28cd2d618017810a28dc89cd5bec190302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300a30453a8bdb7a20f341898b451ec3dd5ee5a8e569160da380fe954652483b23b1603ed467e06f428301387733b51a3c0230725d1d26d9d137755aca87619ae69860131044d076168628fbf7333277bb7594ba308e60780a32d93fc911a69534a0aa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304004684f970291dbbc57dd5f97e65554ff2645208fb801cbbc9397ae081c67963f67714c1c972e75e608d8d173367146023037351c80721934d9b9604c0179f5db27cc2f084ed647793dc4c404308778e1ecc7a6de01cdb39ce63650a3da13bf5de60302047c435bb500683066023100b351355ee5391d6b92e4506785ef5d3662074908462b528a68b2568aeeb27eb90cd7e4111f4dab42b7c0918ec39f8119023100f7e839335e3c09a265348a489ace522f6c1dbf01909ed88edb797db74fb20aa23936e9ca2b9e8a262ef8bad1d1516cd60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100af5eb2365c6cd52ee156d58f4f01e5f5ea69acb7a8f48a2e6ca4c205ec8d9e37160b4139274a2337127deaa58e5a43ae023050bf21d929608298cae8a53d032ee5a7c9bae235de71acbd210f5caa322e085a7005ba2c7ae049c90378d47dc49862060302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305f20cd4dfd50cc1e2a2ae65e2d9acdd5dd889481b6b943e1fdfc620029e68069bb13a58252f520474a98539652f4c20f02303919fba94698af9d6b75fc7616f89d05a86e90d8677374dcb1596ba922fe54f7cc8d8620b9f46d91b512e72a270e84720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306ea9de472616966ef54154259a49631bf5b89b60adb7cfc4c65fdc594808b029589f8aaef27956da411d8b9b183ae72a023100ba45fb7877e662fd5b16bf96a1c2e82f4434753ba66ab8b91a376a61ef1b20fba3220a46cb1fc89f3e0c235dd4afb12f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302680f87265f099d263e9ab0aa5d453a455a99e2e6b1d1cfce0dad4dbc72343490b5f26e4c114a273fd9c531601b319fb0230554e50bc658854b507bbcf176c0a3da6d101542caf5568b928284e94187d12b3755cdbfcdaec9d956e3dabb30d40a3e10302047c435bb500683066023100e4ca40208ba345c2b222803d640c2ccd744e38641a57dae42cd7d413be6edda8febd645cc1234d9f9bc0069c8d7d8e77023100c7386abd3860e582f53d0e9e2dd1d6750d8bac85d53015e5fb09717782d0c31db7f0ece70e0e7668bccaa783a7e3eedb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b28d0224c1d48daa3491cd8c5464b3a8944509676f5a6efc0e5ec9f076138359d2336face67335a4f74dca94ee538025023100d305bc4aefc9d1d4d930028a2bf637b624ff48205904c649ecac6e4d338a0551240d161490b1ca82a37d3653344db8920302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c3f97e39dd99724983080da0fc880bfcfea1c5adf3478a0f859022d4c6fb4e0765ae055a66b4d3e38324ce0fbd7b9e22023100f515c8a0bcd76b7c40f1a8d383d11772f9008306c96d78e13831058e4910f6e314991824f5099847c0a89a41e8f7b2dd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307d0861308b2eccfee800a6649bf7f75823d224a94907700351acc344d8282585852f5e55e9870a7fc7fee75a5f861031023067cc9edca15e705395d2f98743f4f128666098e05b0ed4f63d07a383a65239b6ffc4a3167371616b3d733a2966b6d90a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023022016190773d12ac3821dcbaee41cb88c992dc899bae0ae29df809e146cec96526241dc4c96ec096422165e422d597d2023100e2009b6f998ce7ab3d8149d6157fc9c8bdd121888cf601a83d9b06f781b599bd63c7e00bba27dbe00ce6e120b6ab478e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307165e6ffdd9496fbbe221ba876e7c41604f3d85b2298cad5548bfb4036e329a872b1d02de2f2d9c30264ea1a75f5e8ba023100ecbd41e660fbbfb9aa4a9d12abadcf1e6a44e2681154e5ac3c50ec3045d471b2dc8ffd9cef1b3f85ee09c37b81ddc4b60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304903e386da9c2498870e265db461ac03d33d265bc63bba2b3ea8ed63db59684b753b7203ff732194ba3dd4af85ac0818023100a7669235da92aa8b9baee07d81f3d14415a72c3b72db465f2ff436197e5f8a625538a7f3144a6ec849efbe1542d873a70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bc83a3bcb0bffdd0d3719b6ec7d9ce7c615bc26008b284f1d89afa6cd46bfcfc70c4b1c2cceebc49e1f847190927ae5c023100fd298c9d0402578313a952a3a3318213f1fcf8f3f6637b4f3749678ec62402f9510e4810d230d39ac86161a7039b386b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a7ab170a4c53082f3a1484bf9f776949dacb9488c1130937b928c12abec057d20b4c8394cbcaac29f5e5eb7bbe412914023100d2bbfa3e5c4191ea29bb92feb97ae06337ebec7dfc28ccf2b12125f1d803e86bc851dd394bd5a2bd3bb3adc077ce14020302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304baa5ddb4241af86609bd35fb07ef56ff42e367854ccd26b967d04e51bf4351d74bc64d17d8d785edf45226535753bbd023100b7ac313baf0d87a812ef5738f54541b8db13e98abc596f2099c427772179601b423edafb08f0471309a5342962b976730302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023060ad6bf7339e7be0650867af3dbb0adf61ef22abb4e1e8740dae325f29b34466b48aeb7761bb8a59b6eba8319ac8c5da023100ba53965932e4a9086de9a465a325c7a350889f559ceb49af0f602c16159a07d8cedc1b6f56f9d8ace8b306a1da3552a80302047c435bb50066306402303cfed9dd9f50bf7067b7750f49b8ece3130d17c03ae1b7118a93a12cb8a4fa4f868cb8e1e1adf67a21e816dbe0762660023059f316315645e5d9e8dd52f3312b17053771db3bcb3c4d700a215ca860792b63dbcdfcd073bb7a49be2931a51f7737080302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f00b8dd2932ad837c3d37734a371bb4d167191027d62791560227fec1402413d1e9a445491592ad4b84962ce77f11027023002da4224f8d3e89edc9c43e11e3dc22aadc1f97bae5d2aa76c651163c571629f21bd3e5b2e41b9fee4c6cfe2b9cff10b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300dbe2df9b5432986c0e26226426706261cfe71da76f0f935f68a9885bc598ee900dedde9c6e988ee77f7780841dcb538023031fc89376593727ab80267fe241762fd6cd47839faad277b969e360dd96d6b004316b4f4df2c88fd7e72eba74a7e958f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cb2b97cd9a1dbc2decd4ae882833f70a7a306b1b1d608e3fbdc77333b028fa9d9322082b162a64d9e7439b0aac3e80c5023100e9306091ef4d024e18af30c7e4f60a26604e66c115f7e7ca8e591627995d4506ab5d84fec2245a4fb80151d938999ead0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023075f60f711ca250d4e7e1892e54bc3e0b90f65a42b1c3e4154853a8d894eea51b9b3e6bc8c60a31743edf48d29f19563702300fc4500cd3636ff71776dc9a8a75165508eaa298bc9e68a0cd8b2623480819cdf880bfb28fa3dec231d764449d0be2630302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e532a138ab62918e66bf34db69fcc46eeaf125a8a8cd8f8efbabb7da1213140f4540ede91e77c007b1ea5a411a2842fe02300c964fee1653c028226f396417b9478f29e2af8a8a12bb1ba385bf7fec1581b9d611bd781d524479e681d8f3467865690302047c435bb50067306502310089a5526d165f529143168407f9a6e0705a0cb080a9925d94722619ca4f3cfd67bf13fcd343d48d26a4d67f752a8596af02300228a95455aeaec4a5220e741b5bab62a61f7b4f8bc83f6999ec6ff0cadaa7594d177227b0947f10f1d166f9800163d80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302796006406a7bd398047c69d957219ceb142b5c23f7ab669a36823e781e675995be5ad3af09c7d62e65f521b79cc3e3f023100bba81092976a91c988edd5e01446f89b283e8d1faa1869323378000703895cb8c7027ce4a120df69ea3ca1b34e57b4970302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303de6663a00238ae38a7f0f369fa7921e416d984078907f0cdac10f56490d5527a66c50bbc8fa9927fa8d0cdd5bcf8f200231009837e5d7517259f2804d762359c33b38f51600ed6365bb3e270338dba7083812bede0a007f8ad8f190083bf3f3623a380302047c435bb500673065023100d245430092fe60708f803d17b1147cd60c1f6142e45e5dc2cb6695f171625e0e508bc1317b6078e84579c671455241330230093f1e8bcf04c9a1e57f52b5cb63911733cf64b650bb68831642dd899272ca0a1199db866607437b6b40d507c82d3bcb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ca31487d807d0330c0ba58d8caa589ceb5860d70bd725a59612378f0a35e2e7950d611eadad69fee3923f482ab5792df023100860a0caecda98e92b24172f7abf1d4ffd51982e2bab9f031f840ffc5df53d0f40149a4b602bce4df8c2926c20092ee090302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f14a3e2ab785997bddb3146d649c186e691b9eaad773664e801112f8f87f55b29f7a0e40328f7b3b52e3d2abefd7e391023100a27845e7ea6f9a28b52a4d9ebc7077322e082ebe88fff4ea0770803f2d72e814f54f93cbf566ff7e4fa34f718bad05210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023063ff6d3c8b3744a368471eb371846d8aea9949bdf5b1fcf81adbffb21874ef87eadb71238beaf5678a230b4b2129e133023100e1232f9acfebf495d484155097afbd2f664caa165ec7849b6a26ce0c33ff73212af484d6a39f4410a4015a471d25e1440302047c435bb5006730650231008f77a05c32b72db94dfb8b3d23c34fa4c6ae977c51c1b94f360d011a4892bdb4ac3cd953d82a2227eff8a225b2d1b435023027f4b979581dcd085cf6353ec130de2bcc38a3cadd372697702c2a0e90f2e67a8fef2b2d4c8f396358cc4fc327b222ba0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303f53f35d4a1ca296a113b933c7069604f51c440f441ae66922ffda6abdf6fb147be84d38af05f946d36ba16097d22f2602300b6e3d37606c16ea98d6da28e82746e72361a104abddfe37c937fc05734ddc7e0a762422942a640c43489875f4c814f30302047c435bb5006630640230289a3e0c772150b91486c40fadbc34bd55ca4238c1a344b6bd8cb75de6808208b3e1c37c7b3d6b611269fd15332b398b0230438dbd205643120a13eaa6e69847ecfc030f9b729171e7cef8b36286448412f922aef2a5072cc8a863dbe7f349a596840302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303e3434998294b557805af98c888fe2402fa85aae508ec8ab9dc8b4c59bc72eeb91dccb5e2f4d0b3670bdcbc07230988e02305cbcce43bcfb7214346a68c918d4fec123607c9f51138b6c520c93c758c1b8acbecb4367215c62c3af01ad2c21fcfee00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230391fcd688bc4af6b4fa733819b57a9f336d584da90652827afc68bdf95d3b0b7a64b1fb8c4dc5f53a66eb3a72618d1e302304d72cf8941390eec4e392937ab392d2ae7e93a985ad38ea4e0a3f203ca9b032c3686b8b6cc3c392a6465a8189b51a75d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100de101f834e6f72db64587f18c792930a7ba191b035d6d18e12d4d487cbf27f8eddb93ac89086b95678ec7274c94077810231008db26eca5b3156cd122fafd4d033cc00c0420d7ea3aca0ef8139ebcfcf83caa4063fa99a13c16b2a005d2ca50b0a06f10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100859dd14b9ddf60092f8abcd5275601f5243645e5cbc4214c7a0e1ee87effccdd4804733ccf31c4cee4587cc07ade94ba02305be6e8967f8bdafeba9cb8f9c47d15efc9ec204e6715b96201035fc357e60d8cc72a3f7c809123f5d1777626e115d5420302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230786bb321a003fd54a4101fbafe33b6dfbfd2a56d671c0ee932f7195ae6ea992aed0ef90e3d2ac9816329482be38b1577023005563e8f6f97ba026a16af4c82398cf7aa0acef90335235f82161f04454ef17b7d32560db13cb1a34acd4b9be150dc700302047c435bb50067306502302f59b054ec36821efa977b304b76e03ee32f65bc12ec28df070c86ffc7ba7f17586d840ff6af7db9671e3ff698242b1a023100e66f9a579f9109ec6146d03fb4babf4e2d2e80a2df35675f55f864e971644b7a012e62a1e3888f28591e8768dcdbe1440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009892de83ceaf3a0e30fddb8447ea0ef9c51c8a14cac210ad068720423c836eab2aebfcd1cb1ae5ee42594155fbf1bf3d023100ca8cfc651e93db453eff2ee5645ee67063d1219cd315969fa31e8609c79df2a7d21c121a443fda51c9e1320c18408eb70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023071a7859c749ea5edd1918790378cc8188fb277d0b4bab46944beedc2407ec33693750491207bab8830a9b43e7612ae7a0230201cf8aba2597995580ca0a3bfe6bf42467fbd7e7e574ffa92892900f66b5246a3fac459345a874ea19943d8d9f8ac240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008befc6a52753a5f52b26e4125dfccedff7d5966bd340e32f8a0148725ad61daa5fca80538f75fb4a6786a8799aa0c003023100c83030928def324f0f16355d696aac5c2267094bed72b9ee92f78f596a8475afc49340ffc149e564b44a3c7b84f48f1b0302047c435bb500663064023077cab645ba7f091c6db09be14bca19abd8ee38e2fae86d7672bac06ba79f872528bd48bd4e36dcdba09ab9664d91837c023023279001ff07664f5fc1876a6025ea52c1a92de6e57cca6b4c9c39daca95aeb399677a987d354fdbb7bc678ceeb0fa780302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023041a13a75a6d01dac6c1e544e7baa5bff485332df259868027cb7e179dbaa088f6131d4957d6232a2cb5bd56505be845e0230363c7d85a81b0a5eeea59216e5e3d95c8094b1b27853c619ec47706df89c7193673823491cf1c4689e4866e80dd62d800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230159d49e61f4669dd791a167b83175d918cf93e9796e22c11e82d43c132634a5a4b70a611d156107be5e022534ceb0c7f0230778c52ddcf52612d93520d0da54d82c8003b5becfc56c04826dfeb446a42483394a5e21b85aac430b447c59aa240e1dd0302047c435bb500683066023100d66190844c1d22978912f8ab2f7eeed114a3a6130cf4b07a917b1dec0e464b6ca16c4e3728a96ef115bd675bdffaf75b023100d9f71ec3537b2a056a8448e2b54da56231446e49694419f4b4dd58f5c9bb44ab93e3c68b10c7c8a111f10e0745e54bfa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d7951af4528d4b8969b687e4ae7d955d8d5e9efdbfa0e61a228848efa369e142e470391769b59f491ecd2135708ea4b902303dbf30d91f33b7741067165fdd02218f0946c5535fbe0f083ead7b3e3a97afa681b9b549a6eb37ac27d727bbffb2eeac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023068b77cac64dbdebc8e6926855869d2626271668658df4d4ae9014a15386186cd2fb3c1a902a653839a0ee6d7694fbc8b02301ff7b365c3537f0684214caa96d243b4cfedeb2723a85074bc09371dcd7815b1b4c7cf9ad7366b16bce196c31934525f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d7951af4528d4b8969b687e4ae7d955d8d5e9efdbfa0e61a228848efa369e142e470391769b59f491ecd2135708ea4b902303dbf30d91f33b7741067165fdd02218f0946c5535fbe0f083ead7b3e3a97afa681b9b549a6eb37ac27d727bbffb2eeac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023059ea11c8d2e747be1c505131355e7eb086d6184817a7aea893a0d344590f2da6c4fb7d09e5b60f6d72f2c2e97fec37b3023100e052fc6b5ba26a3ebaf4006c6f152bc4831c52915509c5695332ac166f20b43755cb662f55a7bef32d05bbb44bb561f90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305e4d25aeda46a0ee1a646d9b27c361b447aa2d3784d33b52eb94fc5e39010c1481147f4dc4a6124d380b624abdf9e58702302b73b9d114ff7b533f5525146d6062e53b780198e3a23947b5f3cb348b3de34a8966100bebf6daedc0fedb79760f06d10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008b46bc411802e46a969bfc8f6ef7dfe84650c51c7c6b608c9106e32bf1dcc4439c32ef5e3d7e293c0d00fa419ccb6511023003197fd94a8255b37e16a0df84df374762476dc580385bef4dcb7967644bd113ed9040b42310f1580a8f304d03ef1f370302047c435bb5006830660231009f4697a543c4a78bccb7b563a6a8e555c3a63b4ad7655adb0d91d37d8302633ddfbdb94259267b60571dadd897222e62023100820c76c168b7c70367dc07b5681b6fcb77ab55d83a7757c21dac3b11276f62d5a4e11b316be237e22050bb0174ebeb6d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ff9664b284a1dde17af11c38e35fa58438171cf62e0bc07db199573f321272b96549a541e1d5935edac5ad56234e11cb02303903273a42f2cf7da707a30095faa7d530b9a4e0dc7a7f7dda065188a6d21457e547d96a0c615d3d8a6cdcbfd37469790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306b5ddae34297d74a76ccf86efd1df7918073d2f612c288af916e0416d08e604f76011cf985efb87b8347d4bf3c440d4f023100ef2ce947f888e34e58c50b67d88ab567bcd37fb0a04586c772dfb450dc3336ccacfd683859549a871d7ddf95489732530302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230077c5a4b332f64fb9ef8fa5a23b09c238ecbdf6c39e97ae495c57dd9af69e89f3285b21fe1a061cd0a882fe355f63fc002302fcc74426f0c9388842f969f400208b543522b1bd4e1c0075d0cb1fd7a96c371efcd00927d90bebe5441073b69f1cfc50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230077c5a4b332f64fb9ef8fa5a23b09c238ecbdf6c39e97ae495c57dd9af69e89f3285b21fe1a061cd0a882fe355f63fc002302fcc74426f0c9388842f969f400208b543522b1bd4e1c0075d0cb1fd7a96c371efcd00927d90bebe5441073b69f1cfc50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306d87a1d2e11499766a8454d0ef6fc26fb9018fba4d7a343e6210d4b824e802acf72dc71e2d8f3cd878aa09f98700d7ae023008e06d5c1cc06b1d4a4e23598949d7644e2103f12a67ba4bc1b9b42eb892ac2ca59e674180f45aa97a773d876e9729ac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023064b883213f2b66f0117ac4a28879381c00d24faf7ecf221e5c4decc1cd5ec291ec3a39721b79d02965c1c35c19e0323e023100821e47ec9d40c703d7ebee872f8e0e71ffe99bd590773a908cb6245426e1cb08dc4a3271f96c2afb7b557049525981eb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305b70af29d81d0309c9e3948360bafd61102b179df49b4fb70d1d9168782ba672b1e4901caf2343116d715789a2be35cd023100928064a1317dc08221b0df5ffd11c433f574778c6acdb9c12f1b7a8235aecc7a7a430c162c77d71bd42f9955ef3e227d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023029066d8b3102520419db003caacdfa6d0bf0af963a22df27b3810b56b3a6f81ce56f82ff09eb73fbed99bcd58cfadee302305dda39f85517fcb8add65ca7709b2a6e650bb8a81c8ef3ed6c4615dbd937d7c146ba4d1477cdf0e3ee622197a81cddf50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e8053ad8fefb18b9c1edd80b01cc800b40645397abb1b3e1a56276c1dd58b71d934b3cced58c553ba870015eb31dcd6c023100d1c45154c8abc24fc71b276c26ed0d4260a8cb8931b1790c81cbd872649d8ce11ef5aa6ae85caddbca1bea1e88c5bde20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307d881da4afa230a159a7254eb19885bb8eac020e8a37fe1f9c70b77844476f107835dbaa0d420a3b73b13584266666ab02310085ee77c6762e08c1eb9ff7789093eda2e0cb93833bcb0247bf8b941df1f2e2fd2a2c55d5b570aaafdfc57257e8213aab0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023023714f79bd934dc22af28a76cd9d42fb4cb1912e5411571e3bc5540abe8b4da23204264b4721ca7bf619b708577fdc0c02300fc67f33cdad03a9fd805434c39c4487c84c62f6900ec5dc47b3689d9a8e67014af3005cfd5f18c08bb528400a662a2c0302047c435bb50066306402301db14b9ae9d024bf25e8d9cadf26ea542168b9558c7dfe5b57a1ed22917133f2d89c1ac7671405be1dc10728b874c31b0230424e2d872d6217228678b57d9bafcbe8a20f9d61a61a1772b859748d9794c45a3e321d505d965c3df9fd225045a011fd0302047c435bb500683066023100d1f58af73f9d4c828baf5f39373cda970fe41d67e78aabb097521c124c5cf469b838385203ad78535ec98716cd504c4b023100bafd896a6d81e528e4d259a7073cb713aade5363f159cc9b12a00d373ca1eaf71189b053ec1c057dfaf8c1e8b263d0180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306d3ec5e7973031b5a474e5552157da1f1f48ce4b7a2a210b94fb6c1c1c72fcdf25f702d3b337b5ae0f0a675a86b4b663023100eed696635ef65a1d4781f151fc43c02803e002c88b49b6dcf451ef605440d3461e37bcbfd58fa428c27b1b75a1ce0ced0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f08d3dfd6f20905cbec06188602118a6c3167b169ad3e0f02c0d96cc16ce8463af32839bf1328ebb39fc048636414e7a02306bdf64f64f21d9570bfdaf7989716672864839a34d6a574b73c1e9eed96b0c30ceee6b26ec33010bc783cecc0a3f92210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023066269052d428e9f8749d3548588ea0e26a7c7670a52d7dd8b4005540912b34ee18c780cb606fc7fe1c1d1c5cde72f5d2023100a606851fb40ba3677d0bdf5cb7f713df96bbef42552a51c759f95913ff04a7477316b88022ec99ede3b6b982b62401350302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d722d35ebf121f8cdf77652df3202d4e3b7a16a9c087bf3eab58487419cca6a6220bda3b594d780bfc9dab63579502a2023024595480420c7fbdc9c2aa42581605c8acd0c3320ddb7941dbe289f52acde8f1a885fc86fae1f95d41abd7ef6b0353ab0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100869bad3fe9bbf4bc0b23afa818e2e811af98c3f0e32d10f3e29a7865693b27fc8c4c6b9481308c5b4baffe0df5a51f81023100ef3e2d3f93df47bb43b46c19c09707813166737a3098680311f16fde732e454b3af14ea0ede78b7e225cecb237c2a4c90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c194e0f47b9e1773bad97c44d33f76e4c40dd32983fba0d3197f60a2560a81eb56378942490215bf6cfcb126d316d256023100e948868a12def0a392a177c7cd841e9cffab2f203c1103e1cbbaa271fb65e82da6dc891e11ee6ca7c6a7e79c8c73928e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302a035835fa5de611ef5fee5248440be51da5ca03c2a08ee5abaa7ccb0ab195aa64cf4672bfe373b4400175a1ff7213a102306a9ebfd4302aa5b641b1ffbf67f885f2aa81f0490c4cab9c547187efb0b4214198c983b6cff55bcc725307c90b6a210d0302047c435bb500663064023050eee1520d3ce0afb77b3c19974e2b2c8509ba49ff681ece5829973319725daf9ba4b2b1efa4f3ba504480d8d9bfeb8a02302093a6a70ffdb3b8f17962413d43e328bd21fed38a68491134e9a211acd44954d6b54c8a295fd4520a115351dd4c50e10302047c435bb50067306502305af5e7ff6b8ca690db9cc78ddd16117f67bede2010290237e8a196d6a378faf02b1a9b2f0618cf626615ec4c84ccd443023100b7b198da218c0555aaf4a74252cef3f6ef7ff93d86f8228582c4f5480c55e756cc690ca3455f3d66fec3ed7ecdacad4a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e5b0701cdc1b308e018c409b0ad4aa5acab56253b0abc7964613215681756aa39889b49ad250db426e53fa9d534ee307023046720864618e6514436d579a346c1a5cb3f577571db016f6c574289c5a600ece16f1c52b63d41fe305c43591423f094b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310090216647216c1a5a11f3b6c09d3dffe3cdb266b2bd01cfc5f58ea8bdbf66908f38463a83ec37b96f856798cadf97e04a023053e34044bbe3f98af0842b70176461e4ba91d18c2bfae48d8f665179bfa0b897d84581cb13243b8ae50fafef48a48aa90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303218a08384d45a264cfb8f06773da61d98ded4d0636b2056411e93ec279472d5b7320d3058ffe802fe8db984cdf65d7502305343d4aacb733a324665f49ef802400bce3c364994ad447a8f7adea5df595cec948e1d9014dc7fe3df70e36bbdc44f090302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f4cb78a60eb043b1a51458ecfddd327bd02a23b2b0cbc1903894bd4836c1a900b1ef8122a6855ae4304d0b0f3f0836c8023006f7794f4a9d16c469a3e99db7c6921c4bffaf0bd23e9a2575baad74d94ccd79ecfc7ee343199deff2f2cc67220d17ad0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fbf4314fde365a93de6f8bf0c5a738fb01c9a7ca83f43120bc55ca61e0fe35e2239b5b3e9eb54862c74b1abf844d6a28023040240fc7d210290d6cd67f09dbeaa26d04fe39edecb305080256905ba7b2eb0ed5f27931f041a461e5f28dccc1b61aa10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fca33837b0b34285e5befa8accc48d5b0d0475a05cb3d35228a3c264df5c4ae048570d0c6fb956995098c1df925726f602302d462bd4c8c52cdf1cd75ef6ca409d81ce91da640e9816ca7a7d623b2458a5497fe1f14212c17a0ba3f8dd110f8305b10302047c435bb50066306402303896fd400ed5a273848f4fb7113e04e3953fdb93d6c4493c47ce1543fb0b7f2432bd50fc7595a379e44d35ce952c844102304c3be1c10de69f4541dea2c8061bf5731dba6239f1113e8ae8247227695e8e176811bd8a2f3794e44ddb7e8a1d102d0d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023071a294e5656651f5b93fabf0fa38a41f3f241fd1f7587a1856797e7459fa36cdf731ac2e356fe8719d4b88871058356402310099c39050e473bea7b6e43c1ebde62a8fb8b8bdf4ed2d51db71fb9c14d5c8942a1219fc49b9bd9d695f579490e6a348d10302047c435bb5006730650230085071c629d91efcd658d8ba10a820f40df97dc09d3831717d8c64b70ab2e513af7d2f1a48cff27fd8d9cd437ca62078023100b3c4a10add579aebcbc76247fca43eb60b08bb344cd33f77b76eb194a2ad75a1a29b654fb858c5e85e7c37c1dea1355b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100edad61ce7e901c60f1c887ed405cf487330b97f4fabc1fd2d475a35f265d6d9ee48bca2e201f95c3077f00c69b388e29023100e6aa58df423547546a2086b45a71d8e47b562884e4b8e74e5120405eb2c1791643c628fe07483be320e5725f2e0aba020302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303d14ca8deae81927beff879dd43e1fc40243c9cdcf69b283d8d1971d07335991e3e046f0b6c2bdcd330049a449712245023100b59c315d35395ea893e7c76b57c74be191d459b9d4491de0278fb97181929de549cba49118a4b611cdef31d0a1f2edb50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bf91609448dddbd3b2643d425f35d58f8f456941f08e3dff51fc9f86c98443be7a8b1e41fbcba1b34383525c7d9187cd023100abd493dda549a20705c1aa8d66729c5d02999da4d4349403987a9a793a044c78af3a6be9ca5b4acf57c5d6a74711729d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301cd71172afbc6318ecc2ebf2e6119e185de2efd48959691de1255c45a48ecafb3bc34865e3a694de4fae73bf2b778f04023100fcb3a3b63887b3209fa41e0f55a5a3ab61f2a136acad59d91426a9dd039b2a1cb5890931c4bbfaae83f5405cfd834e030302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304f9ef4701dfb7056ef4f15150f5c9604a01911fc9740fd97f7cfd2f59ab8fa894229ed644bdad493a5de796729f3f280023100cf9d7740832742403446db23fc91609608eaa17dafbfd772ed1ae60b3e32a1ead54f5f491d54bdd9edcc7ad5d0aa8e140302047c435bb500663064023067a7f4ba5986ed389e6a9464eb47ab6c3cdcb43402d89c497494ec2bfde1bd4cef8df5ac7326647ccbe8c171eed9c44702305911e7b4cbfcaab36937b8ade03042dd26e2d9b17992a2741ddcbd39e376da66fcdb3441f0a0f4a5bac3b6e9c785d0810302047c435bb5006730650230242cb6eab108733f0d76a57c1b438425bc5673467781f41978de9ab440c3014b22aa98cd4760577e0036d774f7fa4c91023100e6133b2eee9d08f63b45ea6a3002730f638721795a4ed9527f23321b8f6b921cf0cc69e7fc7112b2df6843242084ad0a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008372510db4fb9c789de81211a7c995f31322265d109cdd7299e1476304b644813fe2c68ce51fbe38859bbc86ab2d61a60230468a2c70d1a9bcb95dd3b9facb2adbadb86cdae2f8c4c81063a039e59f6d797646c0480f9c43499e84359b799c525a5c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310086fb56e2eb214133f5536c9a51c48b7cea8c80a2837584e9e79f6aca7b6c100890d761c078dadd6e6bea9146ddfd178f023100f55799d33c45956885a29592dfad96a294d0f0aad80da4e936fdf70988f1aab39ecc002130dd810e05031d5eccb7d9020302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e63fdc0400ee355f3cdda757acdf709f6b8658902cca05375758cb0ad08f2a5524c92daa3d886424d6b57891e03a89c8023100fb2f191e8ece8636fd70db3391cf9daa45c00928735b919e788c4aee023fc2138f1884a73308c3c42a4e443a1bb6324c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230364ed4be8d183e7d468e402edc7031445685df0230ec2fee4fb29e44cefb659a095d6ccbe1b4f38fa2c2fcfd80c1a441023100ebb08f15ac6c8f16b0d9ff2ff1b778851d91e6246fdf87d6562f7cfaec597479ff617e9e805fe58a40c5cc5a26e7c0f30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301b3aa08977e8a51dd21ce887cf5b0e787428379e978fff0f2125cbea7117a9884c0350c3ce727e75242baf6fae3b0615023100c243cd8b74bf8a7657ea762d6f77bcec32371e6d0d9a79feac5efce37bda4500d0536d04d614a076c2c1da6bfd52d5150302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ad1e225a34cb98dba18fc9df48ca5fc1f941ce65a9f79807b6b7ef7912a5d2da9762a8898d4b1c5e0978dea0dbaca455023100fb8c168150ed8483400a2fa2db4ab87e7eae2642aeb874afd8c405196e61f372b3b9ad03599d267e4f2ce80a1c4f33290302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304a9e6fdc8157ebb369d7220a442c4288c34ba086dc80a7167d16031ea70a739613ec06fdd2d01a5b60e036ab277b56a0023100e6617934c1c094c690eca5061d62ede83de237109634043d3da6522d518409765e73a7c4d91628f4c07e05145e9007840302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307111846fa4b5311f2e69e64d484a0732d563c719e0c3e3f838d203240d28d681e184f58a622f807465e4db038c6a480402310099ba45d8b887b65fc46bf6311c4733d4415d6698efc790b1c5ce7716b4dc154ae2cbc0b77b47562d5b0ffa1b40bd876c0302047c435bb50066306402304504f6caf6a51e0852481652068fd09b12cc61222c57f0ff600cf90650f1cc54a7b30e4dcb2a5cad11479affe9900fe6023017b9f7b82c3d073840e952f879bad699780a7535479a669baa091b9aeae47e7e404355d2bd04ebe2c83def2a7b74c1900302047c435bb500683066023100cbe9e17d5b3e8ec01ab56730251025b6d40a6d04cfdb1e550a3b43587abe7d31d23015d650b1907036addea08d0203e302310095f40f85d77976d76b3e3e1b75bf870d9d44c2efdb8333bd07d107a880621d7d812afc394f6120e50fe6d6b6b166f7a60302047c435bb500683066023100da366dfd22851deb602cb01e8d564c51256c88d87590175d65a7e4874e517542e7951de30b6eae25b329b8a7e3f77c43023100b6c5438cbc2c7409ff6a6d725ce5495f85801802ecacec440212b8957e1aa9c1ad3d1a9b4bbb9b0672ffaf0985c5925c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e26eb5ea024ebf3260f73d17493bd3fb8fb6ce529c5ad96464382a36363839f1eaaa25f8d437afc9deb0af9ec0984e10023100d5e0c10f99c27c95efae3f670c8df4a7cd33d7ffd446248ce969a021243fce260789407082e9bf9a58b41c0668e16dc40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023100f3c0f663d15644f4bdcd20d475b2220c7d6a324e7febe47fc482f07fb813db8cbd575d4268f4607584abb69d39c3fdd1022f64842ff5f6e5c3e2e224d55917eb9573387bd5b46706b0a0194f03dcbf8a88d99c6c6f370d9862bc73ee7c6876e9850302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023010ce1f3f00d60771a8b73a0e389271c3c6d2b8ff3fa7697fabf14d49af61f591190e66acf173df9a11ca1e882242396c0230183e80b49c8f651acc17fd55dcf954157927968d0c0e5d4c10b17d4aab237a69c3d385da6d53da0673bc12731c80cb3e0302047c435bb500673065023100b35b9f57424e354cbe93cf27235af03fe48cebdec8b97f3ecfa9ffc4ff06e5d179570884be05b7f03addaca184d02a6f023076fbcc15c86af38f043719a9edaebbf0d223e350ead60939f266fd2f3af526f80083731e5a25346f286526c00ce826870302047c435bb500673065023100d4969eb54d2f15014fdb359a52b8887bbc106c96ff0220ac90dacf6580245c8146eba8e7a6da4e51dc48f9aecf2bf6d402305bc8be850df208a993e564390ab9be4fcd4fe3886577825d1871dea84f4c8974f5390339ed13df2cb3bb330ae7775a930302047c435bb500663064023061d34d65e78773d4fa6f3246a61bad5ebb369b263eedb5e7e7e21dd04c93ad1a07678255045a765189b5113979a6391d0230545e6bb4d3312454c28e368d538dcd4f0f11324646f84f722c6a9e10f7522446baa66c031fe1ba0973e296e6b19479300302047c435bb500683066023100ad9234203a2263c2b73b76d0ca98c402a67fe00b3811f118b461c4888029c4c6956f6fca59f004f8181b385c66988db3023100ed25bfd2868349e6479fa48bcf90d97b7b25b90ed19ab086877ea602612a5361337c9ffc866c6db4ee5842e97fe483880302047c435bb500683066023100fe5d6a8479a0a6d00400b59f08340698154f042d818434706a3810da5c3770e278032f2bca1ec066527314850b86b824023100aa8b38bb24394f184624666050087a243c796336b66c71b24b04e14aece540ddc14fe5e7784676a1d2d87263b166ffb70302047c435bb500673065023100abb63d6f96b6baf57228016fe8af2621a2a2662f76793e128e6824092e84d3c25a647cd7d64e4582bf9db845e2e3eca2023069cf174bef5e43f6b75fc7e5a1ca7d031f23d3c780b87a7b747154afd385de29fe0426e4185ecede2f363684324c443b0302047c435bb5006730650230725ac5b187b753bcd607d1458728191814f0dd339513244c83bce7fdc00aeafa623afa94c5793adbd7bfeb380ea7b5de023100c1ce12c25328665c38cc4dfdcf8004e6e2529f5d74c7ef496fa6452c3eefad87e0c626cca3dfd278e4eb1c7ed1a6d00d0302047c435bb500683066023100f691cb2d340302bf23f265b2c315499d670c5507e19e7c1688c38fa0fb36ca1f3969b5bcfe2984ed7002f6a92ff830bb023100914ea912a5dcc38581616190898a47b6a80df4778b6bbc2f05329d7fe5b56aa9da8161851a928fb1ed7dd6b7df74bbab0302047c435bb50067306502305e8a7b3670ed7ff4708b8caa11287643d195090320b78a4d0b598df76945eb0e7df7220ae2223de0c0184ed20540ea6a023100e3b4881de9f3dff83089f05103857f73eebbf2f95db4475a905085b6758108173010d30f12351736f890ba67469b7ade0302047c435bb50066306402304401e6b5c7e156fe2c36d25fe12face5f5b590f1aa60b48d177e69d0ae5d1dcc7ace69990453288477f65eb0582f09e002306e7fdeca2fccabff81a5a9c2a573df545ec04c11ec1852deee08f962ca360ca24feb66ab2e3c1ebd01ecf3bdb166da3b0302047c435bb50068306602310080333de23fa4a2b14f0ba869156f91c02bc440707a87a421e502420a8b7f6c0230146ea8a29d2d8e2c8df7a0221ac1ce023100fc76a990d9c3d69af5f7f14e5ae2e168b09b7ee6f9487814b6f6cf8cd2b5b1488e6366aeba53d5984eeae1e0ed305bc20302047c435bb50066306402305cbb44795cd6fa8579acca1a17615a176d6db3187fea7a62485f68d4bcef5ea2e3030e6aede73863fd2dd3e8112ecf5b023075b50fbbea16268885825b3c3a52e46a75a04e663f55b63a39b6a18ea0062a85e3dab66ab11b842cb347c09df949f5e10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fbb4c52b2b6f7f9533241e5241d21137c71e70edb2799052586f3c5e39ce5a42805365cb5d6908b894685e23fc739554023015eceab456395f9f609daa10227e0fc80f231d6bdcc993b7f125826a6690f4175cbb8e68496897ccb92542add9b19ab80302047c435bb5006830660231008b095fb5f023d87159a80ed15cd9c0657311337c2823bdbbed935d013930139898986847151c2d4a6461273db4508e98023100a29c47fbe356f57d63a923e0d50d4ac6fb610f2e49565c87c6d5613eab89630fcc1743bd072e778f1fbe9a9d3eb4d9910302047c435bb500673065023015ae72305cec4d9c97b82c14398aa6221e9d84197f26c3bc9f3458d5a2b1b0c26a7e3046b6979fef85c0963c571df3c2023100e9e94fdbfc7ce9a6fb5b5a13117c582fdce408325b796132d015f2eb61e386b1c6eb83e21fa91a9f2dab078a4444d4900302047c435bb500673065023100c349a602e44f993dfb4a030287b8b877a34f2d883dc6d46d7e3baf346eaf6abdd0c6e3d0791a5a730c134600fc537498023009428de70f2853cc8bac5549dfdb03617ec8ff452f99d70a3cab4df266380be5ed62364ea88f0c6dffee5a67ad0c8d010302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023047ae419abebd454eda2eb322a40cfb21453afb3b56920b55621ca1c921fd2731a5669148bb7a6e7199d234007d2af88902302aa80f39c4cc2e447398cd4d489e9d0afcfc2d86d785f6b597a72bd459732181ebf4791761a934ecf2cd38d25b1ca1db0302047c435bb500683066023100e6e22182d5aea99f8ee4b9f6adea9796ca417b577d7ab04947a1bf5f77f81de2fdceb8258999ff976c27db2a85b5ee28023100919d95a83a5d334bfb68d1bcc72cf46fd8c0a738c0213fb1a9aed981e2bb37fcf1de1a6ab1554c3d4317a5e89ea50a990302047c435bb500683066023100d06b96694ea9ddc9cf12daee7c5b801aa9a46289bfafa047aeedfdb0c8083aee94f69d6cbc9c0d7f2cc9994804f4e255023100f0a33b117530c44a654b08552778e4effa1b60fa591187c2c89aedf0d5075ab9924089c666c0b9f451a2c9150a36e5390302047c435bb500663064023058a4b0f56f0062739f41e0d7f955174923a07f049aa32038a1367aaf3999ca663a9779f28d3f0c795f620646b923aba202304d6669ddf9653535f448225af7b3a2928e7c8e5ec6132fc97d34099dd520669209758e06ce5d25a6f16b42ed70f2aa170302047c435bb500683066023100e2a9d6dcc96ef9856266a159a6bed2da7c66cd1890d8323caace169e87af89537f35ff78ce3552b50bbf1c124aad26dd023100ecea705e508afba0f7cdf84af4ccb05ce440ddc35385b623a1702238481efa9832090976487d3c403e589a27557ecb070302047c435bb500663064023008544babbfd2567cc87a1a1130fa5edb9a711fac3bf31c9dda29aad227d3682399b3b57628d55023bc7c04f1a5cc970b02300e40d127cb9640fde26fd98a9e8e4c6ff6062ecc890832ba038decdc4cde401ad01883a9a859622b0f36173ba63c5f8c0302047c435bb500683066023100beefabcb41adfa9f2bc2b20f087d115e83a13c407e34578434d6b8fd65a81d1c586f877c8a1af737b0e2eda29f8751af0231009b20703e70326bf608338382895eb1450696cd036b43a45fac02953f8912f4376d049cc9777d1462d617ddbfbbd99aa20302047c435bb500683066023100aa86e647557063b5d74db10d50691eef165a2dc269c03cfe56ceeda182e1a6a535144f5161b44aa27ca80eded9687393023100f8e890ea081ae5a3673b66cc7e8f766480b8864116b121c96be08d789aa1115eaaea6e93ee5fd3a25bdc8a34ae3936030302047c435bb50067306502310086b9986decf655d6e0edf2530f49de13f7bd405e87b639be609db2aec96e5abbcb5db83ef8ebd36ab6e87c72aa6ffd970230471e42c7bce2c32f3846400a6c260173eca3e6012d9a5bfc196b6097a67208a67ee6149a763cc2371777e1d7b88599050302047c435bb500673065023100a3ad0b243169eb162da952b70ea28544793025c72c5b44f75fa51ddc3b203bc8b7c45db8b178cc55ca8634f5e0419870023027d7f9737074432c93154aad4f029f1401fd21aaf22238cd4240cd8bcb90f54430a143f3cc798fc9ab28b72bdce756080302047c435bb500673065023100a06140fd134984c4905c4b27f0bf01b02d7055390dfe1ae56eb4fcb277eb08adc0ef33ec3eeccf945e3757e5068657d902304be8aa02ac91cf017a9fbcde4e5c35ca0313cc375b0abafc9d57fe933cd30b818edca36c2ec39f359582728e30c636360302047c435bb50067306502310098e75a4b8cbe5e6eae7f2b2391f366801fb3d7a021960dc082a687a3c99a0d8af38f6cfea639999b089f19755b98a1a5023015e50becf71961dae5546466a8ae4f68e65b9ffe29007c543808c7cc200ff2206698662b9d01c8d73ae243f98c3b28f20302047c435bb50067306502300cf05dd99b53cbd99b296afeaa1ae6e3fd6249ecf54c01937975806bd8d234632aa625ccbd26db4d1212fd95acb76486023100973273b9705b7aa15e5d4d901e04519f76c37be5c9a76d3efb23e729eca4772b186157a1c4837b919f97a956e96920320302047c435bb50067306502301e48eec6098863fc87551a548273f1ecc7c110a348654c5937eacb57725738d17831b6cdb356754d8562562401338104023100f0dc3974eb7673c915ff0278926f394265cbf8a888fdd222a7778fb0fdd2bd627e006aaeb4eebd623eebcc468acb06c90302047c435bb500663064023004295e13fdb6831dee6a9ccc8764dd790bdee36a2b15cfc6ab75d28e9135f1800ae8ab58184328c86de629edf5730e6d02305d1f8d030c685911ead8840230ba1e601dde7ac713fb77b36f0f603db71ffb9d7ff5eee50d6450aad779a308cce463460302047c435bb500683066023100b94025556e5fca87aafd192ab0ef78675c44b540951b2bc85d562a7cfcd3ed68c29f612b1acde97171c33d1aad69a69b023100ebec3af3283139562254568af92b4204f4a06654e384e949b5423723762cb9ab534d92058f65656a848e3a562d6101690302047c435bb500673065023100b021bd9e0c8e5fe23a24a83bb7ecad0700787a7c902e2c4719f291f08f1dbb0681e67c4aa82c695da0424b374146311002306d3b2a7a31fb027cf183b925558383924ee1a54408ccd374e1b51574082d9697f2d50877a4c53378111fe40f8be04ac30302047c435bb500683066023100da14ee18d5772276f68cf323478756847a7c8a7024e2059723b6942b3c43e89c0bdaed3f480e723e6294be8536350361023100aba26964958ba5280c755945b70ca3d9ae90191de966a13068c8e7974992963c31f61324f5de66ded11de11d8ee1d26b0302047c435bb500673065023100e63f2d9b709382b4cd7a3803ba3370405188f92ae50366b7db0312b6c6d2460eafbf70aeb090835c7f81733939102162023046f05a2692df2eb6debf50b40406fdc3b9595d9f3b95aed6191acf125d0d829d9ce1ad4d6ead46625f61f505d1e723400302047c435bb500663064023038b6620924cced912385f918b49ee97d212d841f45334ff21c35988104ca1a5bfde01e5b1250cacae39f014e2dbcc87e02300bdb1dba60eea2d6a00551bcd4dd3ec739198360a764fa7ce06213d3d68e1232e4023fd84f6ae2d63bf61738d3544edb0302047c435bb500673065023006eb1dfee601e1232d00dbeba5b6c06e62d4a422425b419059fa993e163171c1242cd053fd3448a0e6d19e18e2f54dae023100b821bcc3415bf8dbd5bca3c4a4682a6deb2979a3895ee590caa247465037e415d41df92c6c89a3395618d293897970b70302047c435bb5006630640230537e2083c59bb3d696dbe79f14fad46c7dbe3957029c4df4979e893c860181a534c3236d4e1a90540a14172806c0da1502306e5f9451f519d78f1acf4d4320e3d4cf643ac210063a1c11f2fcaa117c1d55117b9db5c8c6ba8d0b82b3cbcd3b50d07c0302047c435bb500683066023100aa0c361dc3e1944dbea9a202cdc7de41a8a35448bc21187007cc5447ff01edb9c3e723f8aff733123d82c25e23a0b722023100864f737d740d9ac4597906c5d1ef0e63e5b6e718538d50cedd9066b77c184aa2ec58eeeb7584b8341bf1b6c8a170d1990302047c435bb500663064023014429348f32750ae0ea6f6af91520437062e6f2babeaf52cfc59bda5b86b6358a294bd01805cc40b9c065b1e97a60a9b02303e58213f24aa61407ce8967e95dd2ba7a5e6c3dfa71d969c84d41c4ed629c649b3c3102f7678098bcf2f5e8fe5a122380302047c435bb500683066023100812e3b980201faeb9971a3b1d35009198416ffdd4b7d32155e4350ddf4a5c1f4ca994f6d1229a242023236051b58492d0231009641694c032d00d7867c67789d1fed3356a47ec370d0007c49bb0df1a62d2952ff65624c32aa41edaeebb450815879c00302047c435bb500673065023100e31078853299ead8e26ed79bd95278030d72f58bd343e73845e585a74d4149c07f1b888068d525f09d9c6f083afa7b9d02305414cce413d0ff95422a564cf941841185cedcdf2fb20dbd686eaba570a14ad2936fad9025568e489285033490f8c0720302047c435bb500673065023100ed1f0635995cbff0a8d78c30945cee236a3ffca6395c5ec3fd2f53e42854ddf809cbf54c8cc575ce511707ea6ae841c402301776365c3c4871882836c9b6b2ca3955d91329fbfe252347772b93a74e9499c0c202bc093b516116b331ee0413c219920302047c435bb500683066023100cba18cb38444d4a77738f4d1253928a85eaa65fa17599b36f338354949c074d821030912d51ad8cf6c89feded2faecb8023100a837a7f2b9bedf59da87cb1cb4a6316f444aa71c757b0917317f96224bbc929212a55b7a43dfca5d3ddd5946cd8f79040302047c435bb500683066023100d7535852571b5a90664c4ce02201832c0ecd3442a8114bcd7c6007e3826d512f3f50c501d85ce1cf860b3607cb0349e4023100953b893504fd29e844f6b4e660ef1c669d8911da6ca6e33c9ab25bb7860db85990b9f1dc0b9ca36813afc1cbbf628efc0302047c435bb500683066023100a6cd30cb68d69491144934e2196227872ef1a3edc8dc46404d1fe84bd609634b54ee69f5991fbb84ac5d8549540d69a7023100817eaabee89703a24997c3f3b23156cf6e6a90b9aecbd0c367da18ca52b27ff8f297ee14b94e554ae2e163f576d8e06b0302047c435bb50066306402306676ec328478cbbc40a1aac71bbeaed0e80b7d01e03572b67b36692010bfd948cbac48273c2d970869ec9affc3b47b44023038e65986a434db0cd813516e593c446e05d31cf7ea876da556bac56d47fe1de482af5dd81bb3656af55791d65bce123e0302047c435bb500673065023057debfc6b0d50adb322bf7ae605327c3d144ba55af7f86b10fb0f7daf287f123514d5f2dd16c01f4975e89ab23e10c450231008dd40cf038f8288452d2fad75272883ea056d90565b99097c0e05a0efb6ba72ac9eaf4aafd8fb09f74ed70971eb194240302047c435bb500683066023100febe31cd74e3d7ed6af668d1e783cf68bee592cc71a266300b1767a70bd1f1f9251810746b6e27202f1c97291c0bb262023100f76180294963229a9b27b12df9b34f255c814d17c377488b0a8e40349d383a8f38ccb7c085b1a80f4899e0bb25a920ef0302047c435bb500683066023100cf010edf00ba561c09384a9f0329dd29c8e073e7b0d5292b408d38ad0b8998ba222a01ad4c69f82ce1a392033cf522ea023100e982e9436748fb81edc2b26cd5454a8e0054e38c8f5f9baf1c28d084f5254e610ab69d0b1ed160f0a70e6a9ecb5ec8320302047c435bb500663064023050d023048b43be20328993bb4cac0122391c12636a34491cf39bc17ed434d5c2451aa938c0fa824196af9c4db6d1a61002305c515eb84c1be818c0b43d475b9054e9346727d6ebf7f34389023ffa50e91a3ac7bba77dd69bb23b5d32d61771ee07730302047c435bb5006830660231008892905ae324e48b05f94b0f160336845bf018ffeba13fe1a24dced75542d0764b94b4bd544006c4031c15af4f775719023100c3882920f0d646da6b60dfc44b71aa132b922c257b22725d149137f729d80702397c5e35ae86be272d9d7d63dc63fc520302047c435bb50066306402305a344d58aed399345cd4aec03f637189283d845a2c1122854e98981518e26a62599c5003461d5ecc5e160c149949c413023044eb53812fcdaeb0e0f0e39e5a03a90aa9d945ae326877e3cfc9660fe8b5515920bc01d1c691cb0038406f8d959da4770302047c435bb5006630640230733456c2fa7e7a1dddaad5456d367bce143e786d3bddadf1e63bb1701eaf5c0fd9fd7d39f2801277bc762ca60c8a10270230709ced631a96e09b29984c3cf15bad74b824fb4f19594745d3b55bb8de144f4a56a4f0d590003f466a841a3b6fa589da0302047c435bb500683066023100c02f459b5904385c8bf4cbd180c07d2586c8f6dce5dddded10d7f7adf78f535a704f3a9e4aeb38acea75b490886c136f023100da6421c6d197367c75d505d08559ed0ecd20a1b6f2c7ff137b9df4f3da7959731d85dda70850a3462acb02596c5036bf0302047c435bb500673065023042f72c1e53fc9d745cea9b8b4a5a6d0cf62fae79374dd416de3a25c2422eda74bab2e260e640f047f241536901712f88023100b7e6f9bdd75250e7d45d70ced0fffb8ac263c4fbea343e420254caa4d453a531f6476bc0d69a3ac57ac111dd7539244c0302047c435bb50066306402300c943a43f028d44d59482cd18365651766103fda5df40c3baa482294d8a97b7d28f6ea60bc074af89b3c1f8d35e5dc9402300a805eee58fc98b0722c370c727977585b9ec93d4f33b4b7ab0774b193a68b6ae913f33e4a14a8b221d1100c998d5cf50302047c435bb500663064023005ea2e080fde4dde04ba7da3597b657693ce04073d743135f6b451e8b648eccb6ee9df23b7affad464ad3ec61e8d7cc50230096ebfb9a10c5b838eae8488f415bff0bc61a698bdd4e3dc2a6226e3aa8c2a528e56affae152755fa8dffad3c9c6180a0302047c435bb500683066023100bdfe9031a74e11a8b8689f0797d98ec07313e23d99f7b7e204c913696e39167beffca2b5cb9b91b78df9452b782f058d02310092afd7ba666ecc863eefce311ecc5c496ce1cd44b5f2c777ffaf99b9ae002aa26292500152271c9b1e5c9dfa691ac0de0302047c435bb500673065023019ad4961f9d41aeb3ca3d5300b7449f45032e53ce8e781e495dc7e391ff15b453f7779699cc4d73eb1e7868fb0aa652c023100f523e772d730f0d428b3eca30528dc90273fec36ff1627d8983752ea4c27e186ad7050f9dfd24e8f6bb65104ff41a6fb0302047c435bb50066306402306da9a48f7641ee953b21b9627d2075f60e26adba10c51e659a40b7bef891e158fa4c60db598c0ad432bbe015a867b4f402306f954192697d8de56cb28ef54a6a9e0ebdfe308f3a77fa7ef9433208599fe6769cdb4ab66ba75c6bac6ddfa7d7a1742c0302047c435bb500673065023100e9fa07fa2d3e3ef8e88a7069cc55d9456d096a2c8c9c04c878584ffbaf5954091a4c5fe9e9cb031a91a0690293984ef602305283755b97d748a53e50d07acb4a844a613c03d113a52cfae6c62c36b618ebefb891189d3ab3ea753353d61b81a557010302047c435bb500673065023030d9194538f287cbdc8ab61e73fed5e430c2c536b1e7639993bed833205fb6ef168833a48c07c03b250057ef6b5ecd09023100c4cff7006815ddddc20bfbd2cbea400ec750357c6bb48147d9d411ae1e6d5ad67fd3b2d1eab19d75b1aa813523a86be70302047c435bb50068306602310085f182a6fed7aed3e44ee649a3e2e906fd0bad16e87fe87166cdc3f5b4c18cafebae0bb5a469b3cc6200e70d3be8c63c023100db64d34baae3b211caee70b28416707b254d0f0dd7c01d85b9cec55ec1dce163f336ab0b8f2b10afb75ba3f106f98ed80302047c435bb500673065023100a58e54f9623908c8e44e19fda0c737202ee6d65ee25fc96a78e91947e78134d1bf0e661bdd96192f5ff1f24ec03d4c420230366a04d9c7f84fbafc8415f66e235484655809fff747b8260595c4b38df4f82944596f74acadb09dd89de7780e521ae90302047c435bb500673065023100c7b16faec088510d91460338cf9d8d865167159cd84ed9d82caf2f82680ecd49cbe035477a99899520918ad5861a9310023026ea28580c60534efc88be2ed5f74cb618f5f6013188b27dc2f13ccc9b284678be68df9918a7d53b395808d78a1ac6610302047c435bb500663064023048e4c00542d2f2eafe44d0eab4b3da62262e833e63c2cc157707ece21c84e21b9920ab59fc324295476db0f847feb66b02307ce6b8e3d4e18677765b052176b3869c02252cdded827526e20927cad83f51ccfced8c64d985933ecea5b1f02bdc30910302047c435bb5006730650231009fc830d1572020ac285e7dd9fc836329f2a38c2eee189febaf6bc08a0e2cb89e083408556d8cf25be300ad7c12e992e502305b68b435afe61a7164bffe274afbb010d4dd56f55ef28cb434cafe8fc4a8d27929f7f48bd62439d323c672ff787df29f0302047c435bb50066306402307f1b3f21649caf528773684ec348571229456747e0591022c173cbb0b08697d462f62f712c08657d1f217e40f0bf4e1302301fd2561ef52ae16818478d02245615eb8aa8e65b377571739a8fb4c90e0231dc418860821d7abf4b247c52cd29813e100302047c435bb500673065023100da10e73a97a9a0c2d82333c34528592e5569e756180df61cf37f5e375f461227b0649a86c5ab2db025aebcb6d2260fc3023018555092a1da235eec43f5502ef86a944e5886a183d29c616e8e706567f8f1fc9fd19f35ebade5b72853e4625ac9f4880302047c435bb5006730650230630ace53e7cb6b7fa8e4f1f19fe673d259fe00ae59638a42d083e2f4597d281b61229d10ea09fa1fbf099766914ff8d7023100a2f7d1b65fdc1d6cf62c319bc5a2b641a64c0e006ec6c9bb0e6710a36abda528e024413e905c49e954c468129709a29c0302047c435bb5006730650230763626e1bf3b38eab2105182c49e88567783a9aca65a2f0e43ff7eda417f26c60c588ba561bb5e3f662700da97f5d4aa02310096ac789aa2b7fb56cfdc22d1b9073658fb2747562ec06de8bd9eccc48742796228915284125bd30c8f47535858abbd070302047c435bb500663064023032982330d92df3cb3aa77484a0b6f65d0d133703ab37acb31552e1e3ca37c8042bda867a0f67e008f91ef73a2afaffd002303169da0bca03bea13d465add95f66401287e6ba467ed67bfb24a1ced24ac8355a0173a1d630251b358a4c9a2e4572def0302047c435bb500683066023100f6381451e65ba0ef8bb83fc4e12bebc4d14f73e78c3ab4110510e44ff1b84a59d1485d517fdfb033e7489186dfee0b36023100e4200fb84fa01d18bc4513584de4a53fc604ec4d01817c14c505d64387078d8d619ba8d645f7c5bad35532af73ece3760302047c435bb50066306402307bf44bc8f0731bb9f9b05f09e3f38a42423a18cfb68ca8b873178bc6774d8ac14739e50f08d16edca6fdef7b683c63c402303d5ca0ad25d5bf8aba0d4dd64e265e53538f6bc53f4a1bdbf04ca25608ecdcea580df9cc2fb6a7168c5d112cd168c42c0302047c435bb50067306502306eaeabe766a6cb1ba3eb70e3b09d1042d93065abdfa9531d75de77b36179b401537022f9b079c523666fdec0ddcf0af0023100db78bf8402ccf59b38db701cadc3836dd682dacf79b63b3c953b462bd2479f339e19e0027d1a1c306e6d482015562c160302047c435bb50068306602310085dbc5a4c2af668a09f7835f594b3fa34fe98bb1cb75ced5edabb7470f8392777576540d50a6a3a67eb14e99072d4814023100a256ba01ebdf3d2ff75a61e070660e5fd04f99740ec606da4e62ab3dcd993adb145fde044d7784e260e157df83440c020302047c435bb5006630640230626f1e80b444780dd7995b829373993a91369f8b71cad613321e9b38f1f9754345942dfbfaaeb05da4b902a25f5c9dda02303f864fbf441607e202a9602caa2989672ce28f1bd656844de00c569588b9d7ba313c51b90f77b0446caca6c361699ea60302047c435bb5006730650230220b2e8db76aab3d2251a421bf580903eee3bb7f23023c508ee191f398fd76a8a0cc3153eb4063a56a315596d3dc60d902310090dafb3fb9a7df45509fd546131d93cf60234b3cd18afaccb4acc6489d0542124bc0ae3355ad6a24e7592cc0aa6ca33c0302047c435bb500683066023100a8b3007f8c6d6c198fcfd15284cb9945077df91741ea292c38bb08eaee0bf0dd9bfa2ee264345035139b7c36e64773550231009235201b155146cccc9db4c30c05ad6c0210fd3636102289c9a7846883b1edecdd600323a4ae8880693b83442afa00380302047c435bb500673065023002cfa04f56d58d73f051c88604b708b5532b019b854c05f74cfe970086a691f902c3ff4631b5f95e973d7cd634d09027023100e8d2730763e681260d71100210fe113ff3fb58d055c6b0f7eab899b8bb5272b9e2a797bb8fbd331784127bff1e5ad6350302047c435bb500673065023002c3ae34970f576e046baba89cf7bc6c908592863cfe8f0c169bf1bd1018fc56ea7516e122051c16c7ca9564a1bd00bb023100d80eda6a8ede908b27bf9797da0f8c3f2ccda4538d4557e60f9e631eebfb299aebeff3f1da7ebd4cfd2ead297ba4104d0302047c435bb500683066023100fa534291aad3b5f47556f3bcc8457ca7acba793a1ac696591ce079466bd0ed0a7a9c82e8f880642d25ff3bd76b883fee0231008b55addcd1778f82affc4d7100249832bbd71d752721b078c154e7623dc6dbdbce409b2a76a76ca6227ce5d64e0a3dfd0302047c435bb500663064023031b509b8e93cc690d2c030bf9027b608d8cc3b6f31ba6a8f27b81a1901d5aa0c656573db52d690a414956c4a848210a502304398f0bb14fd8268d7d9a6ccfaccc5addaf58fdb28b5ebaf3603d456637b80aa943d37b122ad2e42b83a2f428d7cd74f0302047c435bb50067306502304dec7f765b5daf92ea65b5e6ab87b6fa7003ed4c7725904c7a6b13e487594dceb94c2f5ba43aff42cabb619f9cb42d61023100bfecdd3d967cce8d7169101d9def8ab16467dd2006a2f4415e5b50aa660bb89212c022aaf234159005e9a6c325b577000302047c435bb500673065023100ec6d0bf7a6b5e59b8dbef64d2abf8e7eae3e45b8e2f6266711f353bdc68f56a0a626d00bff794dd4e8df902d8038550502304807235dea5d6d02adc5ae4a2468a82e9d4027246812cab2b763688d430259b80b0da64e8b458241547980176447e28b0302047c435bb5006630640230286e4bac9aff19c545d74b2b4ee654af8a3c802b11f4064131b8d82d9ddcddb681f797dbb825d5d7946a20e78c4b212602301d973791c33ba666e8fb2e0d2d1edf80ba4001e731f9af2c654520568daf242223e19e0db68744ba7e3cd584d42e51cf0302047c435bb500663064023023e8d44d14de856ae01ecf8f56b202ba748e5eac0268aace53022596ba42dd6a1e60a5da7a4fcaa1b3c5b71990b874270230648b97e5a992bf05bcdd6018e0fcc9598fe5f5ccca2672b7d7c72378029d4e72857d0f953027a8f306b9584cf8c72dce0302047c435bb500663064023002bf9c31e9f69612dcde7179bd683f6edd9b7f26d4bdc46bc848134c2c8fd458fd783ee6bfbaa314b7ea751387c7ee19023076ef2a3d82f93831c3e503d4797a727ea81b9d82dac79e3d5e7982884470a0d102ef1438adbc4cb5df7bba825085a4510302047c435bb5006730650231008322f1df2ab8f7b21d25516a2cea223e8e9b074ba5730358c1e6905bfddf01f328ffc6598a02809bf2d12ad2ca9c4e520230627b65ece6ac5ef8986a46f67c39601d65aff765515ac15f3252df955bcdfe35664639fafa66498690fcfba25583f33c0302047c435bb500683066023100ed973ae46637c2d69ebd80407635a116e8b53afbaf21df978e76533279701173cfb08f6aee07b447bb82b01a3fa46427023100a8a045f7e85c82567412d2a898c8feff37ba5f5653a6618ad400842a93ea6a6fc2869e176f7e5a6175aaa8ed36f7c1970302047c435bb500673065023006947d1a130a0e6d3c02c09faa3c02bd5e6d99ab6b73b59b0059a32d138437df0cf2ea953e915a153eb38b4c24811360023100ab5a2a2183c6c597e573f3d0370156df0b45d41d4bb0febe11bd78d6f083c19324b0ca93c01166bb64112685cc0dfd2f0302047c435bb500683066023100a2ccb3311e1d6776cdb75daa34809171b953f63fb25d460b3224abbf5846be672a6be42163df0510c0d83399c59ea305023100812e1e8a2cbb7efaa4e3830bf1c4f1b902728d41ec5df12085400363c5e6b40d6408c4d00caf6bd96ed4350cb0cd93560302047c435bb500673065023100d03f19f0ac42111dba9e15c997c9afa546e468e99fc43a8a4a7ec397002b99581d3c71ae2650337176bf6995bbb18612023018388282d51da4b6348cabc190c01f2f1c74c9234fc0379dc3ad15ee633b7ad1008cd62e54e1a0dde622186eb3abf64f0302047c435bb500683066023100abce46e49b341ac863d31a0f9416085b52157f88900e749a719f24c0194baa54dc0275260d213a1b8682bddd25fa3cc5023100ad4b8aa43d4a0e59a915395e242713af497cb369bde0d43e1b42e02c3c934f7a4ec4f7600829e35c6ddc346cea8058040302047c435bb500663064023053b51ebd2285c94d3b3b4ba3d2a6df31e22a00b131d9057c0b36a7df3fba1a09f2b14f5bbfb10418024adb4679b00c92023071b578aec97ad336a6b510b95f88c4718dab68fc5ae5abe839566000a2e319bada138dee33f03a37a20d750ff743f5140302047c435bb500673065023075dee9b9f518e9fd80ec9ca36bb56d9cfecf128a1fdb1cc0bfe7c397eb552e6c11ed73e951f39fd796d7f844ec3281bc023100b09ce08c0c629418398f35febc53d183fcddb0bfd13062f3b95e0b87a3e2b9de756e54661b8b268f312bf2e1d464e1bb0302047c435bb500663064023036d12c51dfab6a52d7f5948cdf38307702995e6e19bb7f98da62bd2ff4b4b09229eb908560ac6ab16c6c84ae6cff779302301d35f58b774b2de5c1920caaea193aa96359596ab51e906116ec06f561471ce8df177fbc119555d5db1c09318554a9ae0302047c435bb500673065023100a140350ad1c53e68333bd36a22ac6fa9905674165119e02139adb9caddc8995c402d20c5a88053be1b843b3d90f62cff02307fba47d2c2e1e533299c43835b89e7da469ba2476e393300901d1677fbd9606c5addcffd5b5b208fd6f45f0d225f32620302047c435bb500663064023042ff72d918bd238612d9d83280a5631ad4d5587eebf685beda74e60f6c4861c6aa0efc273e1c8c52ccf93091316220090230268b1f76aae74251a38e1a1ec67152b288bb003244149076bd59ec46c365947edaaff3e52fd2ac9a83258d77ec140e0b0302047c435bb50066306402307da7bfb00f3b5051bc70d93ab2177c3b95f2250986ca6121b4734d7cbb3564439b1f7366fc2ace273d8ef19d28f930430230621a65d35f9358c8a6a1f7c84ef40bc74570c31df7c899cb711b48593a8565f818f1a94bfde803221d9638a7bb3a5dd60302047c435bb500673065023005afc70cc824738f00f1b1e6664d1c2676a587e7e80edfdc24dc6b90a498f4605b53b203445e5cec9dd297b63b34cef502310098666d97727c272c5dcd8bbe2fd785077537f3b09409e87548d84250e129031de8595f62001a74e01d415693c4c7d4ad0302047c435bb50066306402301fe647bca57339b9302cabe4e2a0f73d64f188772c3565e17fcedfec9247a8a8aaa7ef582114cf789f7f554aa608f77902304cc8bd45be3fad0b1cbce7569bf25cdeb6dd30c4cbdce9812c9436c849d95d7e80cdce66990b54d274d53b0a75ffe8970302047c435bb500673065023100c60c896ff03ee3999ec30889f7be85e2d15c9a2d076d26cbaf6fdfdc920e2a998c23a1673cac087db0ad6fc203c45e780230513c73091644ae81964f591144db0090bdaf42e20885fa7722966b227c9471e023b5dff5e6777a463244ed74922168d00302047c435bb500653063023053b9dcf9289d2ed4e776eeb3d2863f4d426e88eed9e8da7a3bb6bf83406f03b900149bcf87c1780174fcd6b50807d477022f13b591dfff71973fb6ee113fe2ffe95c05f6b7b95456d3afd3924f992152fb81bf0a0986e80a58bfeb7b400dc0c2e60302047c435bb5006630640230258f0c44d5e4b64f05a83aef08d2375c25b96782fc90f7ecfac578b185e700d321a58c880b53b165673b9b4f889dcf7a02305fa91d801c2de1bccfb7274fea708f714309cb8c8587f0ee364778b09b9ff80c2902631ca70953f5589ee875cf4ce99a0302047c435bb500683066023100b8071e4978db229395b1d1b9c902bd95df7c345cc9340915f8ceba145be929572916aab9eb71d5f78fc2e4f1ce66b98d023100aa7220302f2b9f8adfe80a5ed9501a038d95ad7e9257069ef71b1e29fccaf5364a326227673a8ce99c81c0f6ef71b0040302047c435bb500683066023100fb825248ba772b1b63fc6ad9f8b14a1c78a70aaf314660c57c794cb08f1a3bb00d90e333ba77ada3c737376ac74e99000231009e5721af01358b4805ec9a8075cd3727f0d9c4fafcfde32aa664edb0d751d4241d78e2e86f4c4dee8c60be58f68f3aa20302047c435bb50067306502304a7bc46768d374c31b53580a995aa48b6959034d114ba16f67746e801423897ce1b0fd5cdb2c27a7c202ab5a52c8cfef023100f24ef01e33e3e0669efec4ab97122bf9e5da19638458622aebe9ebff0dc0c26a5cc89928cc85f8f54c626539a52f00280302047c435bb500683066023100ef8f9a6cbd7901980b14e3ba1e75305cc13a4282b7be5c38f083bdb051913c8b67d3a8ccdd270bf611d4a6df71bff432023100893cb117f77fc96253639d9b939b590f8c85f031cc85d56370a7d1b02bead2a7e1785dfecec94e0d079dcba4303ccaa40302047c435bb500673065023100b5fd73a11a7bbc9a8b0654a9f566f639636f4f11371496a5faac806839e925c13297c05aa9042e25828069ae1d6b567a0230137d182313811e5fb027f7b0c1a5738deea1daa2133ceba9379548589d0c1cedab14a0eee679fbd256f7e49e9ab808f70302047c435bb50066306402303eeaab413da775e80c06a659f56138b0dd54fec8225e3c5e5e2f6d1a89aebd3e3cab361f7b4eda3c419d5aea8ca282ab02305e89a121a84f34fefcd9d6a8771ec459d4ad0cc07ab14afd7e18d3661f530a959c8f3adae024649e07bcdf56e41eaae90302047c435bb500673065023100ed8264b813d59b3292338fefc2eb2e294ad88de2faf63fcea4cd737b0bff0a1963f950022e103d69ae3f48b63140bd7f02307c29161767c169b93e97659c8ba5d8073565f63397d56646ddb34377b450b7035644f055083cdd72e955279243c835f70302047c435bb5006730650230260ab6ce8d21d8347601a324e870633d3eb8b1eafa3aa800dbdb87ccfd1917a81fcd8bdc12c34d189d66c3721c970a2f023100e016cd8ee2a7e920a31ed6d9b1bb81a6eb3e0bbb12b4a18d2f3033d3aa50b9b6537e5bcfec255201f476dd219f8c9c9f0302047c435bb50066306402306741069e22aed725c70e1b8f93b24c00b317ff770e0a0346771ca2ebbc9d551dd8a95a57a2b50965c19ca1182357d3f402304007844091fa39b5f43fd437658c7fa3b30fc0ac6a3065fab2a96ec2bfd216a4c15148f08d809c104e4d512abfa8d2d50302047c435bb500663064023053fea77122bafc317b7aca92c738bc516e37582681e734b9936c4d265582267de6171a1d72a349377f99fca35280042d02307e1421b950c2d2ac581a6793f88c1dbe347e5d4bdfc47c6e18b911aad8ad545fa586ad424d4e89bbcf1e32311cf209370302047c435bb500673065023100df9bdafc5a892755e82e6a03569156a706ab7080f18626a3ae1286f17b314f80bf506d890082675cdc02de8a8c781e040230482ee2a49259c72698b356557b3e7c61004dbde86fb8a8ae7f17389b7b87028aeed826dd3461972697ce313c944d51140302047c435bb50067306502305053a2c0df0be2aa57b697c32093b891d7adfd8c2e81ec8551f347b81bfb3372e8be8791824cb14ece7dc7d0352d02210231008fb0c0e0e15c8670df981c1f396d51412842585d9ad06de92982908805d20bcfb5dddddf8430336579ab8e782db72a4c0302047c435bb500683066023100ff014b16fce3216f7761748188b871085af500eb81c45e4d03651ca720d0f9b18c5ba5709e55ffe728fa806d3b7e2349023100f47aee535a82ed4c8ac563de909df826f82e62356e3889ea5afaa96539db58d0644d06c079784dcca450262f85925ca50302047c435bb50068306602310099bea1a329cc2e76e6928842b3c41437b5685fd4354f78a825be467de03d4278fa45cb6389c64b5bfc42e14872b1f7e2023100fb1c360f77c864a81e13a0d73d57264193af1b82ac81086ba5c065030e7fa133abed5d4ef75604c1b7b1a9b9ee58373f0302047c435bb500663064023027f7eca26cb6916594a0c962658fa3876bfce83aac5ed820b5404a09865476edba913084724ddf938b69a1e3c6a5bc0f023020db9c9c45f8b21c24e562762d508c57e91706b94410b101c43c90016b15e8a2c9b8eb712e60369495174583b4f6f4fd0302047c435bb500683066023100bd2ee4a1688d50bfaba32c43091e13b1a1c1e4930062b1cb648031061bcd088178b7c8034c1d8d0c3e0b22ae4ed41b55023100ffdd8e6fb2cbd44e14a857fad6da5896f29b774805b872f70a4c5070b158fd4b7c4e7efbebb3615f0d7fb07d4bd191ec0302047c435bb500673065023100dfdd327871e4935d39e9d5fb3852297ab4f72d71451a16e59f02d85c62659b85dc0bab918c85142bf9a681aaa50608e8023007dfc54df994d637271af2ab6abf0e62b10c19b2d1580649a8f2a63ede28015b6f5e701d270c5948d7600998fc680a0a0302047c435bb500673065023100f7c7e141e33e1f607634b474380cca84c09d5718742a997e2e421795dbb400b59d2397667650e7e68c99011f6ac84fa2023075b40ebb4cd8961769af574e746be3f382c5df34108f5396085c43f4b226d54cb6d096221a9a1f6766a5ebdfe62951170302047c435bb50067306502301eba0c0636096b98e82b0bc5628b835013116818df1ecb4c2c30e14c484dc1700bf25c7f0f6a6c2b86736a93959dd638023100882273130259d317dab6ef3e63d8cdfcacdd83cf8435dbee75094dbaa10cc98202dae7c126cf53ee6bc605a0146b13b00302047c435bb50067306502307134efc7c911ad38102b495886b6f884b412c90c063d165e28bbd6172bd23bbb2a46ffd1d730d834c2a9abca9d8c165e023100e74554d73e8eefd1c82436276be6213764b051fdcb6f6431897fc25525de748c8a0ef4a234b5596378be2fea3bb521d20302047c435bb50067306502306871c3762b6c7e8e20e5e39546c7beca4d595428b88150fc2d137d1f214bde9f5b2b8c22425c07ed8dd906ebb9a8194e023100919c7ddc472ce3898b9b9d1bb1faaf543ac7061b13acfa9ea6234d8a9ec9481543f2204accca0e1e7f5111a9a9ea478d0302047c435bb5006730650231008f4dac28c33c8e7f89b8bac85595c934828e97baba812af541864e877099e7152b907d2c67ea37d357781bbd7b14ef4202306c591cca511472c236886f2cdf15f942d6398e5389bc5b5cc10f3ea957b763cb67879344f54e75abb4691ecc127259d20302047c435bb50066306402305dbf19d5de922e70db08187bd5c374b7d4a47ab79fd9a7c6e3269ee3830513b481f850519628b68835231ff127f4fd730230147235d1ec5cec0ff22edf8388c2412417cd32f5607200bf7440f5ef85c183b3ee1824f4b688df9e875fdcddaa5d7d060302047c435bb500673065023100a58539d2208b47163184144ce55e7a11e82d256f68cf98230b5c73e3642eda4e121569887ef5b2c6634ad696cd49d08502300112f0529fe66d2a07efd1d9ded21f8fdd806af460aa285e4893fe5ccfef9a0328c25b0b5ff7e9709e47522dc81ff6dd0302047c435bb500673065023029ecb86150f501f24a67979170e8878fd2830007c2d7e8b87b343fcc54aae7e83cbf777a79ffeb29f8d94ce3281dcb62023100b0e1fa00c2fcc48d2e90ccb5341cbfcec3c650be44e7ea7bacee7bc59c39284a6d95a8abe7dd3be658b6bdc4442580af0302047c435bb500673065023100e5f034651f663043d9fc9f133b9c9748027ecc124b0ababa724b2a326fbc5b582dc4a6ae8ce3982ba903263d4855b2cf02300125bdcce8519dbca9041d17ff1c4f9564cef70363866fd0a0015fef150bef1803b8317c2a809f5a02a0accce6adbc6c0302047c435bb50067306502306201c69185f8b75de5f7876548cd6744b8df272dc5b9ed85a4dc8b6fc750a8f13ac330f300977a7e6f43ce4478e66951023100dd6ca2a892a3e444094df63abec456609ecfdcd1e36bb48176f05e655f0ea727d952b67b2aa5c24229a1366b41171ba50302047c435bb500683066023100c5af78b540da73131873ad0baffd67d333b805f2cdb47de48f37753a34517f0878442db2f1c84d0aca90aaed1d9a3c37023100d60040905d86bf61a6ceb29b63b727f306da4d575beb67cf8c2fa8855e27bf98e770284a5afdf193197d9806692b43c40302047c435bb50066306402304d40b3785a5397c063683325c86d047a6c6b8cfdb67c7cae1f2392c72827f892814e716ef8fc06e8a3c526c1acdaec8e023025a74d9b58af7c94cd0d93bde4d6de3dcccfac891a6e23430e1f45f0c89a782df0f887a467053a3697f46307e35da3290302047c435bb500683066023100bb8090bbca88a21de5172a4ac10226ecf4a59dfc76897cb2e5739de2120dd35146ae0efbdf2ad87c6b3ba04b2c0e1b160231008f61c9b82fc14886d887530246b29ca846e00028f48e45b476db88c660cf6bb883a7d079c84cfc4b830d1ac9db22f82f0302047c435bb5006630640230536f391aeec3d10b12dfd5fa46952eb46cae4e2f6b38480db5853b016da34f82bf0055614db57c9c74c4dd7ad0b6a68802302e12ba244a639f989358df603230732cabeacfaf2ba9dc34ecd908b837c7a2e95c37b431de47c3ab870fc9d8714bc51d0302047c435bb50067306502307cd3ac8596c3b954b8c94e6e5179af50dc6e23996e823fb36c071ce86d2b287f05771f2a7501aff528f5e8b0ece9e874023100b4937f89c8d7b7927e1613ec0bfe6f8bdf1909e8e1f184d7fe5909cc9a2c76df751b40af56464df370375f952307418c0302047c435bb500683066023100b51712e3e4a25625cc4dc7df46b476b87b04782d68f080e5757bea9c23503deb89b493f30eead0897372b716c61cba42023100f020e916ed3265530a469c437cae4b36241275f5b704b229ecb5e236a1beaf817012493ba4c9454f0a6abff1949df2210302047c435bb500673065023100bf1f1055614c249a9507659697a73727cb8e5686c8490c5b6c3e8e52fd70763c05ffc24e594ded3021104adfc0a4f3d7023048e3c019f1f82127e2c1d35126a10f165a9b078eb7452598d753b7af01e85d7a461445558fb491dd6053e7a915380bd70302047c435bb500663064023017437bbd50a2e911bf0b61efcbf11ee5eca5ac959b23a504e9012b0020010efa0bea56a193d5dd5f274ec7bbcc05e7ef023060cc8e33e48a8bdbc2bcbcddca86a5a742e23dfea3defcab7b81d427a3ff9dbefb9370f7b5c6fd4ba221adf0adae1e200302047c435bb50066306402305d3bbe02b35da24ee97f6372d5991892bb68f45b2404a639ed5d9e7ee44597d41ccec93e572256b5c23f7bf8d990cfa002305c6257a1886ccc46d7f4378212065a6b71bc20d5e43ce5414427ff52daff5fc755bdce9adf9ac59734721ae0e844590d0302047c435bb500673065023040ec3df03881cd1b687d96f115dcfbf4826aab327566e5bea9ae4cfc301475ab4d1959b2f6e3430d6be6e288b5915d51023100c33e69d52b3c830c2a8223e9bb953d1dd8b67dd7d452c4b0fcae3a0c00d7a50e307a970e152db30b0f7215cc6d12e7310302047c435bb5006830660231009e054d016109f6794b83b8fdc2930640450c037cf0735583ed80206c1b49213e110e5758a9ddd6088c123c22a35d7e1702310092cfcf995bcbb7b6d784974892ac5e2639fd2c83c4c421def37b4415544b83ae8ba22895812d33eb616514b3ad2c45950302047c435bb500673065023100d57204be307eab55738ded539d08fc010f4112e8c70b80ab83281381477538522aa77579d7ffc9c4932b1acdd7f6b302023022a178c0620baf4eb4aa50f9c8c134e021c30ebed52f65df93fc00a7db9c7c7840b0c6fe16878ea3bcc9c26d5de52dc40302047c435bb500673065023100ed03d270c9c0318dbf76f9df01eee19153b3666b42affb42d4aa7fde0e23aca5905b0f8c190942fb9eb350e50e4f72d90230388ac9a85afa0804b5d5c8d9efb14bc5da7f15dd4809c05574d6180c1bc9de47de093d64f52e2df1acd5a036485f66200302047c435bb500673065023100d552f42563f473ae3cadfd891e133e8ceffc8e3b9ccb1ceaaa0faacb26ec1fc3d72298587819d1f036a9714f08f5f17a023006af9edd008510520a302305258c31b6977ffa8d1e906ff8f1946c1ab9af43ca87d94a9b1f167c9430b9a07634b9dbb60302047c435bb50067306502300e9b9b2bbc0c56471cb0cf1405b02fd4ee0fafac1970cca775f156b385d3d7bdf0ce3ab9c8670430ccc828c262182e3e023100cb3f14072f1b88a6074724c842655ed690ed51a72c82ca4e9fe14082745b5bf372fbb7a4823a08df4a195a2b94de85300302047c435bb500673065023100adb628a2de5653579d562504a95c02de033c3241f56151a0dd9375a5e71d0f529460107409fae1586765609d36826a5b02306d8ef4b5bb7c58a025bbf2e695ec73026042e9b35944eca7a24caf07e210a6c2cafefba52fee67d5c0eb19983b96792f0302047c435bb500673065023100a1481d6bfecb038494098c0f2fec2f7464fd64a58d88dbb31ddd0a8a20920dd31a3a80be104a1f0a151064649fef8c8702305f09745cda365853a9f3ae526d70e0125de6f000d7518bab6381c3d3d9e3993205daf0310fd8bbc25d8c5e97d1037b470302047c435bb500663064023037171add2350468c86ead4b820e78d599fc7d2d2e343dd9dd4b10ceedadac458a5e4d3b18bec58553564cce881e1f1c102307c907359f4ef204f4ddea62624b59a25e9fb12c64bda745f6049525af725de5fa55ac048c139eca04a08bfa777b3668f0302047c435bb500663064023073b18954cb72625a2e6ba19ff8e28586324130ab02a315e7febea01d774944d861a3f4b39573fe8507cce1e559dc0624023059774257b4ea74f6c0c4f58e822e39e09339a63abe9cb57001f3218a43928bbba20e4522efffcf1697fafd1632f6c7cb0302047c435bb500683066023100df71dc21e54fa444da3590962c0bab028560ac17f5e56afb064ffcec716dfaf1fed09692e26839107c0dafd2be6cfc60023100920aebaeb79c42e9da93e55bce2d257212d9d8bfe2177f9a25d4b0c33e7a3083971d25963027dc36e51d862401cc70730302047c435bb500663064023047092caba29181afc7291082b5837a073e7a97ef599b0cae2ec83a02fba6ae60b4c96a9f189dcc646a09df93c5fbe51202305fc2ea0ef7843fa53de240411e075b32d0d48e51363cdc3ec533817827557fea8ea5fbb485e2378c8c5c10640ca9b1940302047c435bb500683066023100c0672d402adbede72f5a702e76ff2cc6b88f5705f40f8e11edbbed1b419088038affc1f2998863a418f6e23e05dc0fdb023100f3b3444af6bc55249434c8cb9f49f6b5b328f8ec9864c50cf62c9a521269ac20c0b57d22acc543efad6abb3e5b54478e0302047c435bb500663064023055c2ea98b271dc825dcb4bf0c45c57e1b0368af4201423990748a6375748e98b7a759876c9036066d2586ce17d12f2d202307ec60c99c87daa18e3b67ccf74e9e8bf073ca47232b517c9e3ef8ed5f2c30c8acc8359e998ebe386fb2c5056b90ac7340302047c435bb50066306402306ed4c4be19c06e2d35cf67cc3314f95c118f3688662b514c86f34bb79b5a7fdb074a186a314ecc66c85ba555d81d365a0230519db240c173ffa6d4f517946392c098090d212774990bac817f3264f76c8a7bdcf36c105ae593a9d82bf708ce1fea5a0302047c435bb500683066023100e88a1a1c521ac482bddfae744d6e0fa0162e423f0879965ac758cfe6c8e3b61e104c5bfa2dfe5a43c07f6cce26190fb7023100d236280c0c74856475fbe151e29be978eca24fc60f85829473ab556bfb67dffc05ae7b73de93a9d56ad2d6654b9c7c6a0302047c435bb500673065023100fb2a254023a68cba8666e82e69cfb8bdb9ac61b4a1fa9b2c3bf91afd07ac7a55dc4a4fdc67e815efb27611f5235fcd4b02303f598c13127cfe0cba0d47537651ac80fd6de041581e0bc774b015922e1f4a90587689a05e6ce81ca61188b713e2f5f40302047c435bb500673065023100bc7dc96ec6dc93ea8717bac30359cd8c245518030a3aac900e8c3f2d70b516efed09e379a8af2ae2cf29d6f9d9333ae00230479c7d9e81968706479a63251dd12a7c86129691b488c7af7f0c531993b0ce5d743e2ef731c2169e27d2b90b415a0b810302047c435bb500673065023067f1a9948d6dc98f52f7d96456226b02eb13d5657b45f1574d47a62f588f3ddc35e52dbdd549dfa599272a35405dc431023100a6552e45e83425f20e488ba593f6df2e0e5df5b14ceca319767e1ace4dd6d95c29969bacd7fb406409574e52dfbb6ae20302047c435bb500683066023100a0a5a026155a4e34ca9cd35572afb2223825e6495968a93f121b7847bef9abb8780316b1d948c83ca3542984cbb6f52002310090567c803b6c0c374ad643b802053c380cccc80a93939c141c60ce81c083f1feff67a8a327a580ce8ee5faae842c1baa0302047c435bb500663064023043aa1f9494660c40405a2b4209c66ca80f7e8a92a65f72a475e43b309ef04f0c877c7b45fb8b867f3cde7c6719fb0b21023076e820ca43a82bd2b8c09af33bf7924f9cd6755f6c90b0fb1dfc79eba9e7d3e441514ca0e674fe94c780e2de816169510302047c435bb5006730650231008728fc7efff937eaf13a22c7962fcc184183ade8e55d2b548ef6bff0d26aa9965bbda766d8af549377df7e08c30b90470230168752b116b111ba524ed7f318c2900c30d64c6a1690613edd208a23ea3f7a7ad91600ff4003cd2d3fea932f6c58e5a60302047c435bb5006830660231008a90d72a5660588f3a3ce3e60878d9cc0ef719a05cfe5d908d909ed205a3652872512100390f6f02f21cdbee7994d2fa023100f9ae646609738b404c221664a87f62ca44f7f82a40b35c2190fa9856429f118443d8066ad9b00635d75c5f509615cb760302047c435bb5006630640230022d28d2e078e5b178f97599d68590c484c0fbb843340250d403e740bce4a6d24a6024910791e757297e8e123dca2d4702304bce6d82ab04ac4378e3957aa81345522176ca8cda6facee0e8041de1df06d1215ee9e53f5a5fa0cb0a3d91e0130e7b60302047c435bb500673065023100d17777ed0360e11e59565c7022011308404b69c128d16feb778c7d4f636f47530567a73cf06d657aac28b2d11458a65b023033b20567fb7292197c42dab07e3da7cefa09aac9a0b24c04b94b28f3d4a8afa3073925118fad28bd1bb890243698c08e0302047c435bb500683066023100eb008a3a3d13fc34933d22e245ccd2a9034286fa2d387b5e3ecacdbd84f5ecb57ee382f522665a7f7d961893a046f7e1023100860241145e238614fd05047174b26068407a758b74565cfc8145392a588d2c8120f3506ae234370fa30bb0cd1035765a0302047c435bb50066306402306f4c753b8b4fd92a5282630ceb9b825c6e17d50aa1adcf06f6a2ba6ff6cc7a071a0e2de62250fa9138f1fe38f65ec222023028de92b4892a55221e04a4581c69cbad97b782d9c6b92f9bdd9097996ddd0c65aecd389f24c0937dbfdaa9640e791c7b0302047c435bb500673065023100f77662ffe9c0d5d50dfbf303287f432cd7c1b186c23d9707ab1f7fa644fbddd0939c781f730feafbb1f110587325043702303f1ee649d66577f6e2cf03dc34b17d2130026ed6c4fbc65fc5343c156141cde6a2eecce410c3369913b949d959aa28ab0302047c435bb50067306502303c225df1e2e14094813a69f25df9758b2a4a17f94adc24c8b3ca5d5cc72d1018b0e7d4fbb8b7aa7d34a41044ccc502b6023100ba224157246e5d23001e5ca3a55f7b91b55c0edf4ce2db9d416540971ac51f36c4e1c90a4156724114db9dfcf90b0e450302047c435bb500673065023100f2eb498b1d1c2781a443d44745de53c9f680ddb875513971b9c1150fbfe63de823b974cafe13e1f5eca3a6a7f8862ef40230763170a2b66a374a63c90287b0f923d02f803968112e9c797cf5e9bac69b664c72fc11ff8a511e4f19d35effbd2395760302047c435bb500683066023100e62575b9c37371ee58679039cc4eea87ad6d06feccc805e117d28e8ba5a3a442277f8806801cbd5bd9f67711fc3e14fd023100acd00796416dc643dd9f4141c49eab2a88659d2c490d293ca893d225f6eb3ec041c9578f9d0bb346e21d5beb8ebdef620302047c435bb50067306502305c5c842897b99c41f15028bfdb363dd9dffbfb93e4c73cd601560db28ceddd3041d37bbfedacdfdad5ec0d51e66fcc3c023100b391e1e2a47fd60029ba95921c5062dbf17825d422cb8bf3ba7c11228fbc36178b829a5afe5a8712bfc719b25799d0500302047c435bb50066306402304c01d7ee93528b2f67ae28ad3363f287a51eefe194d77dd719cc53d5a7e58af06293d5e6ad5990413da8273225a86748023038428d98ea64d6098546d4ff33e490f246b6410e981b098b5c1d64f85e4de0194f233a83e0e9e08f49240b6d364c23410302047c435bb500673065023100aa709640f304a755e30b04f725a695f05076ce96d49d3e6d8df894a50b0382bb17beaff47bc21e51dd545c6d47d96216023007eff40756e41f0c886e912f53dfd5505b5c2d74c9e6b804c349f9b7c7d4a545a17d06c367352878de30743497b1abc30302047c435bb5006630640230749c796987ae137e44c72ce23e16d7640bd44dd37d11bc29689e447c3c4922a49ec77ce67858b23e96991a75e0d4a27d023071e36fb4a68744370ac3876d1c8b944bb48f61e2ead1567b0d642811b63dbb613408c2fd048cff239048ffe0ad3995fd0302047c435bb500663064023036178b97cf899b85d4956ff38f18f3735e0be82be73a0cfbd98dbde551853b9f4ef6d3aa4e2586a69ed0af4def374e8202303fd9d714a50ca49a3ae2a494dd360f99ab9ee9e71e7942493737b8cdebcb932a40a09259848a74d34bf076cb339938d50302047c435bb5006630640230086f9d8206880b6dbb8fbcdb49ce9dedd8df7452b1148f4fd139f5054f4b784ef2d1a30316c399a87e8a6e724ee3129202301316e4645ac630382c75b8bd49e5cde70c18c716b3ac50d4cf23a83c34e949a17efaf15de8ef51bc2ee113339d7700200302047c435bb50066306402300b2db58a5d0bc0a8ebafbf0af57c63ae8c8d375e5169d9dd92a1798fc9013793c7644e79bdf64d80979cbf0b93cdcda002302ed30d404a57059050ac80c3ee05e2f4237c345963ff9a67b11e2f4193c0b5bc3a25fd99887a1ba878867cea6be6df9c0302047c435bb500673065023100980d2d751c50eb30abdadb4ed141e758e886d6121b5f2e80abbdf2443c8f69a61e57225d37d0cdde4ecbee6c6827cbe102306ff82ebb9f099bc74ba4a6574c2a2a33285f049f2dd134ccc218e617701505e3a385f78e8cf44864dbafab7266742cad0302047c435bb50067306502300c5bc251d78279e836532866148d59db8c07f49a0c8019818888986b63ff83e3418726d9005af150c47627f169aac4e3023100b68a88e971a6ef7010a28aa1e17ff0132ac70cd9954ff1e9385e698a83e7ad1a5f825d0721b1c444dad0659a56c8dedb0302047c435bb50067306502310081116c254c78cf77990025bcac70a3fef5dd661f35a27c494be9b77ae0a007acb83dd80fcaf606c8dae63823d1d01f2e02304e88e5725be1c5479953d2af070147209488aa3ec2bd96781ddea892d026dec91b71fda5e164aa49532706dccf078d870302047c435bb500673065023100cd23dd43bb964d2eff0433a5ac915cf8d4a2ca687db52bc1bb75df5805199262bc3ff12d0ec2a0d5c8ccec2b5c58740a02307b3c3bfd53813b7445f20e08e2c7f23aa24826e88bb442d2ba906cf2510d1574f2711745f0ae373f4100615788298d550302047c435bb500673065023100f6ece543043e341c343794d3062841f5ff6e576a55b59ec590fccb4e3712a6da0dff51404313926b71d40faf40d0b0f002300680954afdc46469b23a73395fbd56aa50069f667767deea6a182eabcf4d48526f5fec913dc310daa55c50d9bb0eef310302047c435bb500683066023100c6f72794388934ade0107edb41fb1c5ab9119e5d0f97be7e61c50c07e6ffaa9d5bc1189b9074d1368f9a2bc2de663e6202310090146874bf15d7383a81ef4a6a136bd37bb7ceb9af76f9cc856c99889fd0a49a954001170b5e98b22c96f84c73eaded50302047c435bb500673065023000bccbf19551589b2cc620cd72a742f2fb7020e2aa4acc2a3d172df445c8c0f88fea3b66280f42d9ef8147ccc208d47c0231008826bf728da0c3855708e3c034429c12b7507ee202926d4c233ff6decc2e440704556cbd1e5f940c8cc84143b8b971c80302047c435bb500673065023100cd19670564ba6b58bbb995584bc947c1883f343fd847de63fd56634b27196493c0469f954d7671376a702d4b078966430230378ed106dc9b904b5aed18f296dded87c307072cbc9ad08783db72b1c1626b98f0096285a0ce8a9c36cf9c40278d34e90302047c435bb5006630640230797119ec32fed1851e47572e3f84a590e6f0c62075826caf0f0f555449bb16e9e40f5334cd59b71a8e9eb8abc4bb7ab7023062aa1289108ca04db5fedddca69700b519f3d4b0663138cb3bd1d7ee6c9cb06f3acf97cd2f4a09beef2e031b2275c9b90302047c435bb50067306502306ad6cd304e928691ed7a9b8505d3a53a28d836dbcf27773a1d1b4c3c353200be063acc2085fd24c8d9579f8acdf7f292023100d064e0a3686e3540ba4dccfb770c24e7ef2b9cc4df769b07889796bc969b533b380a87330ee340f115f07ba452cf435f0302047c435bb500673065023100dc3c9b4829620f8a2cfa97fc266ed447e7d285092f8374dedb329a3f1ded2642d65c0ab422d44315eda5adfa2e83f62402305668fe1c50935ef78f02bba35e250b5a206025531e4e170cf63a0beb20fb6eeb49e615b9bd53278bdcbb58abe64bd3920302047c435bb500683066023100eb5c4b1155707c39bae37d7ded01fe6bb675f7e77c78dc72493a86ccc44ed724fff63ac301f5f1e949172fa729ffb338023100eee7cb593050dffe3c0fbae8ac97fb25fb759879213a043da7d7b069ee7745c0f6e64ca3457cd8303ff859c11f0f442d0302047c435bb500673065023100a83a8a28dcf6a1112bc818e7bc00f2abae3961bfb75259863d93ab836cc95f99fb4ba414fe0faa1b3e11b5610c8efb0f02301600075536a013f612f7def3eb7b536d0450c88b979ed828e32bfc3719bf24ef93d44913aeb3575d8bf93a42991ceb6d0302047c435bb5006730650231009ccb62d1993a75980076a8e50e894721f76c3555ed14b365711681eb1268a4df3656e578a81e26c46b0c8df02669f7f402301627b9bbb89013732d49a9031c8d15f9614edaa5aaa4f2b84068e32533c56c3bc2e5c339404b9c74223113e17c3c35430302047c435bb500663064023075e31f77187ae2e8aa80a481cb8eb0ea3760b075d175b4d33926790e57ebdf8d455b6895260f733bd6207189193e776b02306a940773e572cefda421b54a0529d574b27d9c0da2abc70e3e078bb88db57381c04407b2a50a4a7064fe0fbc2e68cc690302047c435bb50067306502306f25ef7a79cf6a3c464e6c93a6cedf8ea3fc497ec6e7b76913a8b147a272d4d78ba32293352cf67c633c023e677276e4023100b6fb1724ef45e293fa2342ac06daf8ef105be784f7ca9ad5cd8fead92ac3e563bbd4409163d49ff3f33f9d16beebd0f50302047c435bb500683066023100d8a9ee561f2bd8c0596655f61507e6a831d08870cb300ab4ad9460a4f6b8f248b4ea54b724f6c04bddee080d46c42641023100967db9ba1361ececa4bc0134b6bbc3fb56c1ab52050b4118e295ab945cd252dffb0079e2d21b56cb5367a7a5f82389350302047c435bb500683066023100f11f29daa885c294f4f6bf1cf96c30df176d5abd6513d740c5d423bae2cb34a7589899aaeff45f4a859de5c7dddb3626023100e544f5b4f534e2a2c057a65d7c1d526f853f5176bba7954e24311c13dab3ff33035288f72582cc6b9650b77356a5ef830302047c435bb500673065023100803526c6bba5f655eae9969f169cd4fec6afda8d7dfdddd487eb9082cf76d27730ed0b003f6d7129185621ff6bae586e023025327202e1d7b44329443918a91d1188c996b97b3b50985bb88fa6a4d50d36eab263372871c9fd52aba59facc67de8f10302047c435bb500673065023026ad01298391ab58d081d13f4a415cb2e4b4f3a1c73b03c3958d6b075bbe2647d09de955a8eeea36549a3248fc53cd91023100d708687e5ec8c15bfd51dc58d3d5f7e373336f69972a878839a8dca90627059ba006d8e6445a117d548052e1b303a6270302047c435bb50066306402306c12b94bd6e78c1bd6988578dc26170a132034b46f75e3d2876737a7f3214539bb087102a5e7c7ad31879912cc3393fd023075602f1aa2622c05d48aaafdd92cf392468753f5bfd2310816d692121d647cfe9d51b8940672762de15995ad520c14280302047c435bb50066306402303a117507f330165c6922a8384557e98ca79b5edf9e610b3df1bd07ca7669168d3a7d19ce11f63608c5e4fb6e14d472bf023061d34b5e75790362e98c9cbda105fce13d573f7afee3369150a28b186d344fe2afd1f42224d266ec0b85fc12905e1a500302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f62cb12515da382db4706c85c9679ec7db4546a68b4887a903cccbd5bd630327dd0f9cdbc783b80884c244f04bf0c4a0023100e24ec2661fdbf1ad908d1dfcf37ab1ceada08946c17fb4b9057cc6e79850198f529d95ae34225e1253226e0a7ef9d2080302047c435bb500683066023100b60967764ac30c18917e9214ac8bac64b43cb449f1a70a937d40717c08980b936664d2e0fb4ffb27193072fa28fb2d3c02310089c47385ec817bd5e64db09885263bcb783140725adc4a1ead250accc7d101692258be7637349047d988a43a0fd6e5050302047c435bb50067306502301c3857ea4fe9946af873e4e4aaf6b97dc9d75f2fa13996e4f07812b9a1afa8ae57e159c8706d5d52c62e101a00ac4476023100b7f610a65ed6bb8723aee0352d6d97a1df107b4f6867a8249fb4ecb8f47dd053ef1fe742111dfc1e61939423da139f850302047c435bb500673065023100955290245cce67f98f805644cfef9530ff6dbcaf1cb5d98fa5cbb6bdac0ec6039e96cee5a3f9421fa7ced80eea19827f02301d37fa92e60733837eb7a5cf8b067840518a6b9b4afd45e5eead063ddd0cde3d27dd85e93ac220f3161dafb3aa8a6c130302047c435bb50067306502301212bd905d35db949861e0e637acd48a24eedd5de9669f162f9b5f3ed6265dc403188ee4723022b741562acd5229f5c5023100f0e8c681001c7f4047798228989ce3b8ea32ed376f1e73c417db3416ae2375fa471033ff0da0e4113e93857e39efe8b80302047c435bb500673065023021c3a75d908411c2d30e12c213676b0e4d0e5864aca8510a54687fefb47e1555174aa58ea9ecb1701cd6d1ca8dc94284023100f5b1c23dd0d3ad3caa9b42db9599b569fffbe108f40a6f36f2d1003ad8263797a718fdd242a272597b1ea81ec5f513680302047c435bb5006730650230528abd14f48bc3c6988d5d8da1a1f82147b3fa993f38b0d5ba17b4715b6407cb8c716022260777a24e11992a0510ccda0231008a00e949b5794b94ddefb26bae8f7280e637ab29b9a7f9c393aa9ad80df57858f8047a10372bdb4cc4c10e8d1d8f47b90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100987b64c93854c39d745db73380cdc2843b3f2a615901bb79c5998087cb35db2faaf2ecc20284646e4c5e3fb6096ed4f1023100c037a9e66f4936d825af37467a3ef2f81127b894333bee49209d8e4cfa033a95ae9f4d5af4eac209bd69ed674159e33f0302047c435bb500673065023100c6889d75a855ab18f05ae013880891fdc67e78134b13b81cbff83e5de8de0a980649433233f39b8d339d4ced4b0af3c402304335b01a5dbae797884495d1d36676d5622182f278922d555ca08d995e910cd127157936adb2d3e488df32fd811d30fa0302047c435bb50066306402300fe517ac3c65689a7a3dd7fd4b84322a7577996bb6fa9ed7f51835d8fd0e7ab23641f9c5647f9f4aa52e80e59421a2d802304400cede50b006b44e1ab062f28db664088cc38ca5d79d541b6119d00d97a8707ff21d7bc53548e811dbb14f342c1f6b0302047c435bb500683066023100a1f95d69181b7045b764d837cd096fadf04f09178cd27829a30b1dd27a71d5a0e9798b42fbafc0f5a7635ab0ffdf6eae023100cd5bd1d3f8951d92855ef1272ad8dde519b888d5eb12402538b2847fb73f5222be94adf3b02af79ac1a3235c280d0cdc0302047c435bb500673065023100e77f26d0b8c738d0aa9df617224f58e2095e7e07095c69b068035d14c4decfbbec486c8a1d9a12537ab2b29e094680ce02302d677831f2fa3adc4d15a24114efd4c6c867b51c369039bfe87a60d7b5bfd8c1d242eedf317fa957830c3c6ab6415e4d0302047c435bb50067306502304b8448764332ef67c26461619ee0012f1b2e252ab725539677050dd03607879537671afae363b98fd6b518f22ffec137023100e19d1bdd7ae3f1caf13773b63801c6c184ad50cb6e9a0859e6e9a94cadc8dfb5acfe256fad36f3b5269f079da123c62e0302047c435bb50066306402303960ed25183c8acc71f897a352d9377e4dbc9e942c738f62211fe4edf01308b66bb2f827d48a45071103191077891ff40230697e0be1f823a6e52ce3542e43de4145a97bdff9d068c596a30909c1f0383284c27667e228e0774c0e9175a43aa2ff760302047c435bb500683066023100e822e2ed1a79fe3168a65a2e334192c6ec57beba2e7ebad88bd1623b89bcbad581951173d568d70f2b74b23dd50d0236023100f40709ca51bf05f84e54c238ceadcb8d61b717737cc08ef9efa843ddf89d2f7898e49201545d3783da4099b92b020a630302047c435bb50067306502303b40f099e37845ff36d0b1825df3ee265a5801760e0bdde77512c7db2d18cf7ea6f15da1cb20962409951bf4d7cf01ff023100d436bf6860e43b8baab947de9f1cd883417f4ae684c95846e5f1a29cc1f89f9580fdb53393d14aa848941923e77eb4310302047c435bb5006830660231009a1b9aaadd097a86438a7eacfe7a668c9ab79f89ab83fbe25f3235c5c3a803d7926553d99837763922b80c6cb9f9ef8002310091ef1f2be0e2ec51ca6f429281142f33713b54299b654da6ef43af497094c9a3750726b5e9f7180c7fde53de2afec2760302047c435bb5006730650230111d5d31c20aaacb056e8110a41b78bbcd5f340142e4dfe16a90cfaa58f7d6ba52003ea9b1701534331ec79b92530890023100d90a4f07d492ee37465333c94df644fa448b4b761d57f30f70a9e4657737313b8aeb2cf77eef04cad4786794e6462a040302047c435bb5006730650230521d805d6b900b6e99ddc6cefe7b84f49c466d67b0b56bb31e0ff9e360e527e074b79bffca7790f49db9a6c18f93bcfb023100a0a9b70a7f5f4923e0e90f2cd5900ea8a61ec44b2b0f1bc44db9cbd4d05fc4d9af4ac8cb22d68db2e86f593ec3168c960302047c435bb5006830660231009421ef77d5bec7966edc5ccb262e90f038209cc0b44575c1352fae90ef9c7ce027c993694d86132c4e107ae75dcf0eba0231009a6966f52d0580da2532c20d029c163aeabe43d942d2428ddbfabdbe02382cab9fb5326ec857fedfa8c65a75889b99130302047c435bb500683066023100f5d4be4b848d20e1e30cdb311e92e908a70002da3939f99b01362eeb847adc015058c6199d5659b45dcd6915cfe0db360231008680295e18845fd20f253166aa9fce03cdedc2a284cd52c5a6b5fe46d70d84869274260155e676c1c58999bde045542b0302047c435bb500673065023002e4138739fa04f84f8c43508c2b13ac6236001095d511a138c5d296d532255e854d6eefca03c654263ee5d89b5228b6023100cb889a923e2101302c830b906e0cbae5d4f28c8045238bc82a2b3f9e848412e6b29b2bd97446d96c4f8a58b2d98ff71f0302047c435bb500673065023034602b770ce3c0a49ddb3847e2e8125a09986ad835d13d1a81007346256035db36d059294ffdadce34de6235c0db9b5b023100d81adc6e2d679d23e9cf5c8dd75e7cd5b9fd0f084c843927d50a2dcef245c5486946803cbc75ce993fbc1debd8d5278e0302047c435bb500673065023100dc8e88496fb2a4f2a5efa8d3a9ae82c59515415f455328c89fb1f11b04e88d40ce1e9a0cc3eb289cb6cc3af75d92d3cd023034ca350b6ef453261ec866b5cca9f29b7d1e6ebf927c4c8624293b3c7d4b1d486f9094f1fce577ee9fabf0e330f491100302047c435bb500683066023100a9a3c3db6bc1c293386ad108c128c71baa60f2a2b8a374b3e7e1b8145732683fbdc853e6fe882d73670550c68e354037023100f69aaa10238ce59cabc467f11dca42cd0877a742ff3ebf7d232d9f8693c51348f060241de2f45bf10269ceb343f863130302047c435bb50066306402302bc41196e6b6a71c8b1fc67be9cc2a237431629447b24174a4da5a87aca90bd824260342c225b6c37e91039c2b88239e0230269e75fe3b09f5a7987a7cfa38a29406746280d3b097e995066fbc51f1ac81a97db84d5a9dfe679764f9f092d2b9ba2b0302047c435bb50066306402302b3eda8916d37392ec22123ff9462538fc8bb773082bccb0bf08c27595478903aa3421db46615282e5685ebacd19c7e2023065db0255dea469cef7be54eff9d5c2f55b2563d172d1b4409bf7dbcacdb1fb6a69a0d7a94d7a9e6a842df4dbbccebae00302047c435bb500663064023046be7a242381b45dafc8a7c2c4f6ff82ac1a81b24ec0dcac7db06d4a47e697f70071dc65570316715518d98fc4042463023039a92bf63c78206083cf2c5bfcc86fbe8e57296a03eb7a34f7345fe4572207e01bd37c34c3fc7d26a44f855083d2ed840302047c435bb50068306602310095a7c6f0767491986550c5e1f72a3f4340d5995cccc6320c494090c9ae00298d4b69b0b5838417e91453e28cdf4604f0023100d276938f3b5c884b166917c147b13e2c00359e9f3a9bf3ad10fae50e1c07eaae3f95972a839ad53c696d741955bfeb370302047c435bb5006730650230607a8969768ab53d023f26ac9f48874d08580b7d7b940a9804e21906f8652c7c9632f4a21afbab5521235ae08577e6a6023100d93a8a97b868dde3d51f385dc4b82e9abe35bb8735095f52e8196da4adc03c82efb8d1b30d5dbc0041bdf4e645c2b1360302047c435bb50068306602310097483ad9b857f7de5f7e1a49c3dfe1e4076b7f5d4299834d87bd3ad3b60f53687e09911a94769840c3f9c81ebff4b509023100844ea3e5963e4e400d44df376eca69b69d5aa03814625f0007565878c82d108332a23c1354b471001221e3a3b2ea20a50302047c435bb500673065023100aee70e3fa7555d09a2a7a11fcb0db6049ba829ca043bf21a29224d3b8e41581ab9d6a77a08f97448d700a9794b33ae53023075405aca42473de517a27c65d8ea45457521a16f9f957ab4442323737a8a30f66068285def09a4a8fc0556d6cf9fb4e60302047c435bb500663064023047ce4fdcb17b3f1082dc649503cc0f9309ab1eaa0dda4d43f609d21458455835127fed826085118c18514d72dc6713dd023037b13e9e1d011acfeaeb882b59a06ddeac49dd5b4eec63bf65397ff82b53f12b6c377193cf53166571073eba176405190302047c435bb5006830660231009786cd98b5b535782b06913b830fdaeb7bdcf078e10b3fefe04231f992a34cb4f58562bc199f7c8a524331b4bfbcb905023100f6d8461352c8f0f5d737f03102cb3300dc6bd49304626a80fa418e7752ffa93ef8fc3612a637f66045909109586aa94d0302047c435bb500683066023100b1fa23ac2abc2d1c218cfceafca51aca803dc110e791ff86cfe5e74ab56c8b910a9baa6b392eb0c8eb10767e2125f5ce023100e950b7b034415a3ad352b276d0fd7832f39bfa72195d8cda1aaab95b8bb3e4f62717e209d7691738414c50d3340eedf30302047c435bb500673065023100d08e1076212e19e3373a5c9d30fd69f67985f948c079bcabbd55bf770eafdce73e1f08c9b208cef0647afea3b260cf6602305b257515d86725c09de6aa72b8e23b8d2c311553e07f7af1b2919e99ceacdaf34f65412b5f90b29016c547b32c5eb2320302047c435bb500683066023100ae6adca8466180a3ce8c83cb8f6b8513b45eb6efec764480c72eda329a06fc2fe9922eb0f5c04ee27b0bc151f013cf22023100b09400f68715b6a7ed294fce48b9da9fe46fe8ba1bd5112f34023bf4ec342f6c7d900a67e7b977e02ec5747b2b9486e30302047c435bb500683066023100f876c3a93d14075cf51c8fafc52363c49ead5b6b33812aea53628f4543de1f791f65e8a4363e280ef2d7c4d1dbc04c17023100e9e5058e96b22581bbaaaacd516703b05c4c4c4532894bf2889119b998e1b63306b2c44aa5fc1e560a93961feb3035050302047c435bb5006630640230311d21b05bb26424f54c84215927f03a469ff3582f3b065f44b0a5f22af2af9d46f6fe0d5dd7eb24a958acab32fd07c6023040841e0538fad2673bf91378419b3c107c0def56ee29bd8e8c34d821a45cef22c07d237e9b2af07c5a088c7362b19ff70302047c435bb500683066023100c63da6e055f01c368a5dee3edaf2fd18bdfab394cc62aa93482a398c0c21ba384ee15f4fd8d6822ae802cbb49a22a17a023100ac673f7b108d7d9b56783a28a22cd245a7ddb01d056031e5b6137376bfcd28269e3958bacb536c78bcaa4ab80458c0cd0302047c435bb50067306502304ea884db0e40313f6c182d2efece391cfe623fa3ec6e68fdc00fa08d32f2703cf3ddefbd8c38e0b7279c415ce85930e30231009907113d4ff0e9a8307cd34686cb523b6a8489feff0e32569f0713640e862464c6f1728242971668a48141887ac85a950302047c435bb5006730650230742b61c78e1a2ca324c2643ba9030cdc3d61a0a87db8b6ca391b99697bff96c629e08e77fca81c47f0e780d6f252454a023100aeed5924e78fddbd9c304cf166f1210f36356f656e5efc74ceddb58e186ebf00f4547a21fe67bab20932bdf51ed888e90302047c435bb5006730650230725c062e00a5f4de3e9012dfeae231f0b5a0bac44f1ea8d27474d38030809c52c0b9f33ae235bb29ad94961393ad1d68023100e2a22413dd151aef2844cf6f8a2dc5890d233f73aa9e5047684bf5750e70b6ee9c8f8a75c18cad47a55c103145e4ae180302047c435bb500663064023045a01478245c9c59692fb4ed9b75f0170445ba4a87c1b16ecc9df424081793e4dc8ee29622aaaabd4f9ab710b161bf920230162586fad92b9eaa3e904f86180e0c928b1bb9eb447a4ab1ce6d8b8312ee1b9ab61a1a4bd4604813b2fd79843cfe00d90302047c435bb50066306402305a1a5a9d176bcd13f1b0344281a538c3177670a676762d7e7f1aa78940825195addf10401dfc6ca2279cdae4d06dd7fe02307ac9b90048541a5b37fc8a30cc66e202dcdcea60fa9eb97b43730997f863e57bd7e1e6ee5e1cc18f3a4babd51863161a0302047c435bb500683066023100c0af5fafae61ee9ae3569952ef5280527af67fc19f215748a10f31a66d92823f4a2219bb7cb5b1ebc879575b9bd29cd30231008bfbd3de8497fb7b00f7fb9da88830ef2f07fe236f89644291736896af741a12ae3fb692b0307e38bcc0677924b8cd3f0302047c435bb500673065023015e8fbba64253d67f7ff92bafb1a9be5980fbda144d24dc675342bef07fbacdf15b0b8bcd15f4539813739c01fa6a97f023100e404b675218effd9e2366fbbe990a8ba1819465e037d4d06f46f603ba5afaf8c3f0e0fd215b1018f3cd0c21bf05d29910302047c435bb500673065023071347f2de5ecf8d0476d71f3af10a2a69f36505c59688f724a93517168b746da926b52717c1c7d1467163c672b4a6581023100bd62d1d9a6ea20bfd130abccb88fc72bd55ebad085187b4bc97b1a0dd79c3cea7066a04dee9fd19e5fab38b93337e3d00302047c435bb50067306502306d0badcf1fd27b0478dcd6a08eac90d390e253e6bc64c28d61ecd3fbb5712ae2e89f9a08c961cd87be46f4f30ceb0f49023100c02619ae4a83a3779df17e28ed633dff472305b702182a75e44a5fe57a4b055f9f78a9b73e0649cbdb430c382bf1c9020302047c435bb500683066023100bb8b3f916aa3e8959510218c472f28f279b7f3b50ef0e5e20ae57a51fe04fce04e4c710ba4080c2132ac322fd34e75a5023100fec57a847a8dc7b508a4d06ed9a80a3191cafe8e7892d5ae8f950533d8ddf22351df775e03e258528c7a8881e2dcbf2c0302047c435bb500673065023100ea831753eede8ae98bcb1fa5afca889544437eb9d3b9eb08907d8afb327bea78d8833c93112f664be75d55f09e70464e02304d49f05ee7676726a57d40425f6ef5deb11b1812511b670f36992e4d4f32f118694dbe8893cf580a1defcbc278b680310302047c435bb500683066023100bce83fde8f6423bb4376f6125ebb8663784dae18642525109b865212385eecc67d85d6177a8ce7e155cfc9cd3ae5bb3e02310096fd8a9c4fb9a0cdc4d1b1b9c9a101f509ca4f55d656832c21f799d034c7ec7ef0436d5a0f9db56572bfa325f46984a50302047c435bb500673065023100e9f226a287ed9b22e79f907fd2343a5978af9299f9cdb6557b7f7551e8a6ffa455985d3ab4999fe235af8925fb72dca00230397f92c0fb3f3dd865db7fa7b241633d27038bced74bdf2771bf3f8a579624238bd52619118e4ed3a016bd0f02db0c120302047c435bb500673065023100b5308169ea294bc73eb4459d3fba81b4437210b48956ce2b0108c9d045c5f5d773f2fd8e5861bba18708e396c1e078e802307d27dd120250b63abbb8bc3f253f2c53535fe6eba3288a3f1e003b87a706ac1c8bb80afb2ae3c3b8417d6f91f11d32610302047c435bb50067306502306262c55e2942daf5ac7f2d63f15237580a8c6b8118b0b1bf7af4a8acd02e0a1b5645e591ab0579d45e87dca363ee1d8702310087bb1c6c11216fa5d882c6d7263de8d548347a0a4d52f9211d98ecd37036a147948c8315ba0ec3fec71bbc967694d8830302047c435bb50066306402302bbc08b0cdb4ce7a2cdd955a206e2757ef2132c13d34a44fe168db9557e911048c1f2cf5120971c06c79f82f6a449e350230035af4552bb520a1d8bb76177295e3001802e224c0b450e28cb17262e3a217cf0a00e49d9736fa02463e49665a8b66df0302047c435bb50067306502301263a2b786a92acb73f5e05d40eb8d6f4554647171862d3057b2b6cebe4bd1257d8228c17b98c31c62caf9abe40aec1c023100e16cbf4da4472fd5488ab8dfd07dd95ff067de51c23476e73d920ea71776b0d0ba21003045c845443692586d849251850302047c435bb50067306502306c55b096b206cf73f8c225ead90d351dba8788d2ebf43a62f7d4f35469a102b5a783f1c865ce1baa9ae02156e13660f102310082a91f946fea4152ac7ad5672c17afda0c318cebc423cfe13017087d2bffbddb4d4ef8f417966abee97b3cb1b8ba37ab0302047c435bb5006730650231009cd8dbfb3c6fa3f5d34bf0b8748fa15006a4e512ad41ebd14bb5842c884bc2f4a973498c0f102ee759e53a62691783a20230069eb1be5768699d209d4539b7e6c02f4a2e4685636415dade3280cfba4e0aeea35f30cd3018ae8992644463166777240302047c435bb50066306402303a1dd57f857c58222180de46f2560f3e98fea39c65499b8d6fc8cd11b558141b7f7425eea6b8b208343ab80d66c2bb8702306b0bb13f148b24282ac626fe2c782a742011f75cd35911e2c9ccd9791e1fb329a7e6e47cc92f22f918349df233e556150302047c435bb50066306402304d8a33d2b14a5e1e795b26bfb171ebf7ae82205b00baf2e5218f8523252602b5d0ddc9ea5d103a6807bda7a4765892f902300fb89039af288ff11c3df26368c874e69283ecbb15d05e6ffb5a707870972ed715a6776de1549b6ce0ebbb5e97b43e400302047c435bb500673065023006357fcdcf308e0df22f05360616d782ceb5509a7256a6edb7d015f6bc229a9378a59c9f3f3df591659fdd9d331e3ee1023100e1dd62eb40ef2f6b5cf1459367981c67348b35ae5c8c523290d617990c2dc186511ab3d3331b3b83f80479200f0827230302047c435bb50067306502306e271c8aabbbd15fa5caadb62cfb82947c85f84f573ccb5d87bce4d4482bd491ce5d18d9a81c3c216029812cadcbeffe023100a03dbcc9ce7686965d1b3ff81575c2c57d5f290c83c4660ef66b5963553e7865676ee1acac9d6f755420126c3b0b43ad0302047c435bb500673065023058867d0462b74a6b897c06ad1577ebcb282b1152b234cea865cc66c09b06bf7e6fb91a6dec5a4818c1841f44bb6ba5a20231009014d298cf0cc737d86d4a2b7ae77d9c77efadee1fce557a1111f3915db1352c6478aed68d39d8a3aba7a766174a3f310302047c435bb500673065023100eebe916e83b111958ab99631a6a714e983ecd6b1555ed8b4659907d4f20f16d793c69a096833f46d10016fe5ef7bea84023058f48c423afc414556cd81cb06cd940350869348579bebbeb3dd07666017880989b30796d8ae7f4ac357004ba6b29e860302047c435bb500683066023100ca3e3572e0049e1b9dffe181c7b4cc7281271d6835f4c80df5b2eb948b41f182d20787b1a81b6273646cd300ce422348023100ee390d1349a8f84ead047a2b52fc5698bd1d9cc9f5860c682e86cbe2c003610af8c14a75cd0a677938d31f11c9df44cb0302047c435bb500673065023100d27c1c249230994c0b4c085bb65cb0d039081730330de4e3a53eedc85786315001cfe27e6294cf3de6886037a9d0e9fb0230062360b153c87a3e83da9b1eccd119fdb0708a91140a4a1f76c51817745c2b3443c8c147e0951b87314272bf8cbf14b60302047c435bb500683066023100ed6a69848d5acba2ccd067883058745c1424da5623e8c13760b9e65e0b1bf894feaaae2bb6e5ffb18e612e0ad8631aa30231009af009d8aa690e40c87a9c004d37e9b02b01d3d16d3d7b2cdae63e58ed2cf77bae958c7e17c3f6a3fb738b2aab3c3b1a0302047c435bb500673065023100df6a195eba6f1031ce7ab08cd4bc2dfd6fae2692da92d56db2584014631add0311ed7a2c10581977c705dd8f28b8e33b02302ef00be1e63f41bea4548e44f78f2de5b1f3c89ee6834eb76aba8536537410c44f08204e05d294e1f92918865b86d20f0302047c435bb500683066023100aeebd39b37e4e058a5077e5623f2f3752bcc81317bf03040266c12a06017670c4ede3cbbefe2620adf63d4ee85271b730231009a30963433fe4db38a66696372c4d19e41b385b74f072387534a6ee9da45288681ad4bd29cbe0f144cd339783057d5910302047c435bb500683066023100e18c599402fe739994c63b76ab9df928bf3e56c2d090265445e5eb500ca791e96ebf6a47202c44a27a3183b8cce4c1c3023100e9245fb8cf3e2da8705b88a1531ea96831311578bd44609e14e17e8475c8197b98dd210bfd559698542d379806ee7ee50302047c435bb500683066023100a38bf9a5f72b7f7d76917a234d49fe582949a908b9c861c68ac2a4cd7a1f02e6194298b874e04ee15dcc1924582f8413023100879910eb95d9ad966cb2bd9485e46c618a07731e5f1b69c9199bc179a00a1a69c88132a6edb745d599be7945140bdf890302047c435bb50067306502304b0029d7fe758dfed31d3e006f555a7750a1edfdbd34ea3b4f22c6d2a3da348cadd49c47ad77f5bab4f641586b9df18d023100c9c5149951962b3fd4edd4cf309d380a95f5c7f5bf5e4bbc1d670951364ff7705fa24bd4f0abcb0172288141afd0398c0302047c435bb500683066023100ac0977728dceb5d8ef14b3bb9defa3f18b3cd6d7a5dafa8a62bd1e40975ecfd5455d08340899889eb92c4737ec21bcfe023100f943c92467fcd1d5c8015bcdf01cd5389f747a641799be986b755f9eb179ca27f7cdf7a84c920ffe78bc08c3b7dd05890302047c435bb500673065023100a9e67f2919a83d27985a20120f8d406125abb1407d0af21159277a35752f4d2592fa7f70636f1bf93f7b5b029dbd4df60230787015511c00fd394e0f5a6a00fbde51b9d53d089701c2a23b229b2582a7a1ff695bfebd98075a1a8341eb4163f859450302047c435bb5006630640230501a42b39f36138ef4b983ff5456785e5a0beb6e1ac7f31b19a0f42c71097a76c985c7906cd1bff882ee15c7afb27585023000da0022b74c2663110547e5f1c364b544d36ad81c73807a3e2d8caf6dc29e5fb2ab8046b5df21c7bf36d3f6856237f50302047c435bb5006730650231008276f0bc080eb2ad8fe33c9df2648b72cb68531365b110c49330210b99f71085192fab1d1da5b74531d719b2898b35a40230063e283b9ccfdb976574e446c1132a915c63f594b74468b1e648152c28acd6be2994c400a6574aa776d29d45ed44648a0302047c435bb500673065023025457e6b9c8d7bb83584c517a27311bd5fe26d2c48ebc318a9e703d8967eb4be9eb667c79216440cc000a6251bc29614023100d0e75645de84679d5ee97f41aced0d9c72490c8a893ea739c92c5a0b1e46dc888ba0ed4aba7bd4702024a649c6d84e700302047c435bb5006730650231009c2957f8c6c8b341e8635110dfc1e9af8eb73a48cdb96f234b2605cd8ffe49d2e834d62303d7d818f3109962aaf4f33902304bc7a1258a1490fcc3d2f24c99baf289140d79a0ac40d281f14672ecf52535f49ddb751b77bbc9c93b2886b94e4b71ae0302047c435bb50067306502305530699104a2258d33f90700790e5385c8f52221db70aff13709295ce0c5c3768becd9014b377a5bd3d500f4e4d94ca90231009f2001cecbf3862b3cf1ff8459a2a52a47f4d2b46b76d26b505ef8ba410b1ab0038059b00e7392cb30fc54b83d742fed0302047c435bb500673065023100e34194688aaeaf15943e1ca7dbe6d756e69d4ca34260b2679f214b5f37204a2ed3ada3905dfb617e3eb3134536ec6132023022afdfd5a135268c53ba8557a7893a6d71b31e4897c5790b79d47f97563ca468df390ad440e3c21de06f3160e1c806d50302047c435bb500673065023100ff6a6237fa8775ad44c2aecb7171c9f003ff8f2e03d74777e32ee029bec0354069259024f7b3b1200a81ef490d43809b02300334924719723a7701cf735be218ea8cef2a5351270731b3ff4b5a27d7c3ca345271ac74d89b2cdaba6aa4899e108d1c0302047c435bb500673065023100eb6ea52fb8fcedae0b7887795d9c86746deafe3db8a45fb81562d6524e8641e8d5f39a7c72119f9ff9540f77fae9fe78023037385656ed7ff9576b371672cae6a692b7b477c8f0abe9ced06a3eb87145f29e939e6dda1095a6befd4474c7d92e2ea90302047c435bb500673065023100eab6fcd08e4be6a1ba6779a08877881e607636c14ef71cb749d216d3c840ce16faf802af76f3c68fa7fca8df8e1332f7023043e6ed572082db4a06b5aa439ac4e50d7638baeb02f8a714c7cf5ea1f4b2aabf29f22222f4aa1e6cc888c3161626b33c0302047c435bb500673065023068d82c8079bd681c7a558ea099212d6a77335b3933c6d3c7105f33bdc36438e401e5c0b55c172c9ff1d4e10ffba93816023100ff6333f4980b6676a1373e08b7cc479979037f1877c4c5a7f5deb1506c83a006bf195dc148dca3e416cdb5126da644510302047c435bb50067306502300173c2939afac9561d5f1dd5cd56aaadd8a7cd9ec5ebb977f552119f3cede78983c7515baf95c0d5d0b5013ba2894547023100d530307b924d1c81d33ea7506b71af87f270cf1765d1dfc79d42e8d1fc4427475adc621f2b78c4b2a9c8c74ae4b938960302047c435bb500673065023100a89af658d3727e07df5c64a532a3187cd65cd090cea4521606e80fdd5d665607227690656ebc889e547e8764c808ed470230306fba9ab55dd7ec41b3a2e2633b1b9df8d2bcfc8d2fc35e4a9a3a8dec3ecd6caeb9e0bee4288fe95406af8772ddcf400302047c435bb5006630640230132e25c67a65e313852becf250af9eb96da3e436a7426fb25c8d7b3c5914598efdb2381b093ea38af7645f2e7444ea9f0230577710515ced3e29f26fd6d6d7f3b7b4e06d50251fab37ced06eb2dd2fb86acb32646014e58756e2e417393edd5380040302047c435bb500683066023100eab9288f1f234f1803187603f59d27830772d13157beab320ec698ebcb326fbebcfd76ee24eb4df561cc47bc6c2fb6ba023100ab9d427d4767038c8f500d9e3cc95ae6d0b82416cb95df578d6b96369d45e4e63f082a6e7b9265d9595be47101e2e2620302047c435bb50067306502306ff50be002d6fc2df3961eb81c7864cbdcf0669d458c5fa07531ee71040d5a33c96048c4e394b5f8d692407a7bfc878a0231009a2869b2b20b77103644280672707daf6099b71c39acd2ea54924a11d823d8e85c53748b2abc3c4840a3dcf9de6a59f10302047c435bb5006830660231008fbe6872a449125129b64f6267dfdce78274b29a7f81966ba3504b17896079ebd3296e37527bba931b932aefab6b9ce1023100bd9f19b2063e42fc1c0be8b840c0548265116ab80fd968554cc1e9dc2e47c828f0a84026389550a5c4a156852cff941f0302047c435bb50066306402306cefba745b00ea442b6f5d7be49367bbf5e9b1cac43f021591e41ba7da746b8d142c042f316b90abe1deaa0d037a2cd40230078a11d34ec0aabde413862e6749e0b325b3f4673dd9f5a9552faf77a8ad9bb69594ff8e6d09ce318406f6bd2cd614b40302047c435bb50066306402304f07d73684f6911e26792985034ff6663d32649cc37eef15eef51ca0bfdb6732c25a20e17ec0b2e66c1818bc66bdbe6102302b56a2b772c1f796ba89b40cd0665c5e8ada7307069b35ed6bb752d7f52f7f9433b081ba52f6cdffa53b37b4cc5864870302047c435bb500673065023023ff0ba2db69614f6348df3b7562a5880f5356ffd4ca8f7d5e3e793d74fc1fdd45e20f6fc62a882237a44338cf7f70ae023100cd826ab39b29e7f01610af4bef6e462c41cf505b86d3c3193bf47629c96adca1fdd9cd0b1e911d719e8ef54ab0c8132f0302047c435bb500663064023001321b44c64687b4f57ba438fe04102fb9d20ba76087a00f7be5dcd54b9c59d63b44a9cd1ae82c5666b61d105aab660502304b04c7ebdec39d82c39079182da0496967dedc319a10d2e4c23a32de95868c7d12aa1f14c401172bbb2a9296fd445acf0302047c435bb50067306502301205ecea53e2a5e39d9324455f9dd17445a8b644fc5dac243b9997b6d511cd4a75d34fe259e97345fc4d5e46236f50a2023100b02c107d93f6a9995a89df4161be7bf4ea7349ccc4629e072a7f001c6fe05dc5a5fdec6573d2bb57a3fa130f5c17b7fe0302047c435bb50067306502304390807ab5ec749bf5faec396905c508859867c4c97264dd06d4522e916580dba4baa264e1f1c399c1a7006d065d9253023100a4cc73c769aa356df3079a2d1d15e40619d44fa2ccf3770547494ce2282ac1a1115c617aaff1e9bc25ec87ce2bed5df90302047c435bb500683066023100abacf52622f9f2902f3759149c0b4266784f20070065ccd38ec79b76486c751314d731d84d51788516da9a35bfd48eb3023100af785e4cf7e15ca60c1a8edbbb4723d3fd52246c80b8db751d8ce96b1366f8537fb1d6b7673a32d63a70defc1fb8879d0302047c435bb500663064023063127e682e5774ac85ababa1b8400c74cd8fabe159ed5241d8f6d5b8a4071224420eb06dff2c0caacc32d56109e6326702305c8c37b6e57bf5a4c7ac4d2628c5e6190756c71660e6d0513fea82bfee7fffd515d04fca2160ab465fc08231e6d8325d0302047c435bb50067306502306d236db76bf0f32ad1eaeb0a8c344041cdad07bd3ef2ec4ebbef6b6729fbf99da5aa95156869195f333bfa901dc3e0f4023100e8b407df963936d715fce623ff51e7714c94aecc51766be1ecda033ebc1220d7fed95b856d60579a86a00cd3e3387bc30302047c435bb50067306502301521d2ce8b69bc58f246266955f878b6dd97d73978d7c204fa7166c02aa7fb10e4fd7c0cbe30aa83869450555f41ac69023100e11b704d12d8a054da69ae76c43aa9c9d8bf679e3c99be44673c7a4d3b907f14103d00c390bcf54e13e398d79d05393b0302047c435bb5006730650230268b84848291ed12f9533a1fcf1d0c07b966455396bb3b2d16e529f3fd11b9950d8f53c915db4c93a7681266eb72a479023100f176e91ba3bf98cbff64647a5293f11907b5aa48eb3d7825ae99223459bff35beff9d834230bd7e443023251578bd4d40302047c435bb5006630640230031b769f294d2526d613fcefc4ceb86f9746e912bcf08448436fbdf479962060c3a9ed23aebf1a88b0744a335f16a848023067d04633a8e65fed627de06ee8c18b0aa3e9506556cef7125d2f72cdfd0fbda2b8bbd31ddcaa947530e12de23c4186240302047c435bb500683066023100d21605d6b07c7dfe778323806b5d3a0e696cd1fa48baf5b663d4e3fd98903f8d7d68628b478147b9524fb19e66c49d12023100990153cfc218125ea28407c9eb75e9b045d0d91620515230a0488f1c36cb0313dcb5cfb1f684de0daf7c97421096dabe0302047c435bb500683066023100cf457a6dd86f64e410ab7a72ff8cf38150ff01ebc280351f948e59911b81dc9c725ce065c75cfc447c73648f8bb3320b02310096e3668973bf0756731e8c47210ecf60b582df25f43185bf59fd0fefadeb76ad6f799246825b6f294130188ba034f5c70302047c435bb5006630640230509efe0b18973fd43544fc00d966d628de7d2346ca84a4a327392c13fde78ac3b05829081e0d2a03b1c3609585e8a95002302a25e1d112e6481621921209dc3bbf5e54313912ecf89ee34043592f23b6a3b580d37af13755771c980cf073858973580302047c435bb5006630640230460054bd810d9b10e22048a51e14e340cb2c0356bf396500993ac6ad83cdaa8f3c4e06364aeef715d991dd81123942e70230264373ebb783210a58abae8fe01e96f44d7f70812d68010ca70c9405e7c00f726d6739e8c7f452bdd99531682d698a8b0302047c435bb500673065023100ab61a6a61e6a34e28ac02793a969728d1b0b0c265d8bdabb86bb5ceaa267f06ea7d4248f2968f707f25731913479e66502304ce172af8dc69a70aab21a4096d340fd689b2403bf29ce41eeb06b9821970834661b78651fb1b8c273c98b419508cbf50302047c435bb500663064023020cd3e2c979d28330db1ad20833f131eaa62dbf0e23f1d7e0a51653851874c7e6115f5eaa0eeb88029eb693bbc1e0b600230368a71116a09063c8476aeb1b24a35314df2e8caf9b93dcc3a05323e91ef90141dc51a3c69329b93b573ee46de931d360302047c435bb50068306602310086a24d3a9c997ee7be13e395997d45cb6409c5630f1ffccba6d3014276873f645d2cf545e998c9f9b1cc2a9412b28885023100a62907fd84a209e326005701252a67eb900215f3db89e8f3dba045c427e7bcc699707456cd0b161eccfede52ed8d72740302047c435bb5006730650230748108aa468d42afa01e22af5d0cf1908a3d53ad6393bbabb24012e48ee114219ea495f2cd2ae1c2c299d6f93e631965023100bbcc35965056b06d6af0d7d8f925e97296e8d61d7cebe7bc031fa231ed8b9e98567f23be55b9e4fe80b556c58a87f1690302047c435bb50067306502306059a3ca139136376a6e79be745b56c4ee054f35addc1f82e03db5e91d3671c75c748795d1c287707043debb1367a3e2023100807ea9305215b17e63e2f85d17a2a86e83e73151869211f7a809bfd7bb900411fce4cdce54676e8c9c0dad90a872d53e0302047c435bb50067306502300b712246e44b5c66db53401e30b6723f0288e0dd4ef78742a43191541c97a129c9da9bfb7a9c0268a9ac1fe18f5bb630023100bc0afa7de28661bb444ba28d0d1368a526c01aa49db2fc13eb2327ae1ed71c16aaefcf915cd75e6128944689bd4f36540302047c435bb500683066023100a8351ea159dad56f5a0410b807717e9d10d355f8428d393cd3daf177b601f4178bd655dc5c8a3f261a69c169c0a9d6cb02310085d321d39f81cce2eae4881cab94b48c0c43cb9d8fb10fba4ea976ebbec9cf3032b150622bfdce34a9b6eb1ae61ef3530302047c435bb50066306402300acfba2b0612c4096d3920ae0809a6e4165e3a6fa1161f31068ddcceec0fac932b9d9ebcfac0494a4c8593731a82e2780230216db11afffd619b0937e0682518182011bfaf7a9f23edba55f4f1277190aade9c61d08f24fe97b9ab188d30c61a933f0302047c435bb500683066023100db04ea6b033509e1050dc5dfbfe129b29ae9fff682548d8eb4d6c1b829ccb30817509740e7bcefe2c4adbb667e41562e023100b15957829a8cd9354fe75fa3cdd988a29965f7bfa6dd8bba1a16b1c968035f5173f98cefc6a3611123ab2509a741a9570302047c435bb50066306402307f0608498bc52fc29fbef54a2010994fccbf2a815b45761627ca32cc8de3935a2fc07084945eba97b0250db7a627ce6d02304f1af55419e8dca0a7d2f166a190f61deb20e8120decb3e4c8e1ea81d2fd5ff9e2e4262dfea4f7a766b4dec7b023b9790302047c435bb5006830660231009a15d57b0072f3e32a66ac50266c16dc67c104dffd3922864001221fc8f1c1312935324236d6f172e6d94e058f6c58b6023100d9e81b5facb49e82b780daa9c2f2621a4fcd3708255ecca0f2f596cb70dab8bfa62a6d64b3ee4379b8ba7bb16063013d0302047c435bb500673065023100ecf85f78bc62f5a7fac1dcc9242eb5b4bb75b1cad1e0b46d5acfa3139b23454ef335883730f4747c0968a48e078d73ae0230096be85d4f1674e2a768c6f2c1fdd1d652621988d90b62f2c566c3d016d6435a9e6d97c9875e6e4126f7b931fe8877ee0302047c435bb50067306502302e37c9fd9d502cbe5960ab66256479f6aefb33886859830aecc2e9cc5b7bc536767819fcb8f27d48a919dff2c2df72310231009d0d345fbd468616e9bbfc2d3fa048548c6ec6975f413c518fd47bbd31a90697c8f52740b1bb0fd00ff49b9451cbb6470302047c435bb50067306502300ac042aed75221dd9acb7ba233114e962a2295e47b91f4d2b0d8946fca2f00a1647a2107b34f020dfc490dbaca78dcfd023100b56f8a6c3a448ff796660db7313d55f9621f9ab5df902e69f21b0e0fd2913a02211e139a35d05d02e1511bdcad5c38da0302047c435bb50066306402307677d2a228136e4d17bfd77e7a59394d1885e3fea5bb806989ece2c70edf72a73051d05ed6da8941dc55affb43929c89023065ed0056b299067523e0382eeb52e714b347f9826881ad1f2df107ff209dd7e438927ebcddd8fbf299d5ab3187b7e4500302047c435bb500673065023100c0c6ae5a6ab251fc75a77391067f81a4e8bbfef3a028cda35b0e99d022b4d2ef55774ce904fb9f86f1b986907799035202303ebed63a12a8377dd4e1507966fbc902b9c3a798b520d7e82238e2bb33a840e6190a611cdce116f08cb057d06a41deec0302047c435bb50068306602310098819412e4bef2baba5896bae74eb38978a0bd446ef30239e3935a047f5c05afbed398c113559a5e198b7b24ea8e038b023100a24268991258f4059430b7738f29859b4ee9c2d6c8f92c5205294c997cd1aa521b7fa78f903897248e814304a96efac20302047c435bb500663064023066812b3b1d3bb3ce59da3c41f6de5efd5b358ddd4ab8ed7956a6da3bf6a229b80e2ba7a70144adb921c9b869abfc2e93023015c2064095a864e26e17ae6291471f34758e0691fac89e3a403aba2f2431bb9dfb154536b998c1f0c1a720747a3af58e0302047c435bb50068306602310093cb5e9940341b6c5b69793a87f0285e6ca1d7fc888caf12ce76c51624b9e91ccdcad2b3211224df010cb22da517ad4d023100a20058cce6fe38257a5d477f00aba29cb09f641e179b6df86cddfb2835e051b7c8b2ed07bd43813f49d6219256108a6c0302047c435bb5006730650230424ef8fcda233dc80bbe37518421e7ebcb57d37acac917521d1435a700ea55cf463f9592e27e11a780085a823d9bb9c5023100f9c7048e1d6f62bb05729d11b620f31e7112178f956e095ecd3c5cd45c59735f9f5d44da17ec4ba4162fc372c8afdbcd0302047c435bb50067306502300c47197155ab8bd31e92d7d8a8ef1d09983dc65bb45d10ffacaf147957d03afb7dcf4e1ff41985c176c9a729ca6c7d12023100f8a61420257948c987da13a2f85fb6240c1df3599c7aa95590c850cc73a10efda77e679c5d332ca22b331a93affca60a0302047c435bb5006730650230294b937efe4fbc299f2740caee2beb690b73a3174b2a3ae1a142c9918abfdb4bc0c6f2c02a1ff5e45b359e472b47858d023100fcd57e6413dc88a30f0759a65234741ff3c88333f6772ff7fd980b57a5fcb6bd9c14caaaa1d40ea7656981c86d1286950302047c435bb5006730650231009f81aa4e416eee950b93294e43d02ef02418fcfa493dd11053a25ae56f7253e5ed8e010a4aa7899eceaf78388d52598c0230395b43b1df38d485b972e2537a66e32bccfbc0487a4f0e16bd9e8b77b3bde0bc06f6cc26a646fece66cd39bf714eabb10302047c435bb50067306502301c61a511f31fe7fa92dd5cf088deb3d3b306aca48ad7d70688e220cf52bb21e5303b50a7ff385690f912c83fc5284ac9023100c5e70c402e3108bd9d7955d3d2adafb3e5f0d5ffaba1e75961a1ae8c0ff8697fb404466f8cda15c4e0c6d90b292c65ec0302047c435bb50066306402304825fa88106772c1cc327c860d549586ee39b7a199ad0a29b42cd849e2df696cee5cf82e3b1a8ad8c908be253f4f12e102302f3f782fa193ff0a044da02bcaee405e370fb9b9845f94bf03806a051eda28a5794fb73028bc4c59bebeb8b37e5489580302047c435bb500673065023100af21ed7c49f02dbaa3f3923476cfc8a34abfa983e9b92c2f94e417d48d4b1920e536b3ec03dbffd3e6e2388e4034c3ff02307043091fc4a96e0279491ca2cdde898683c4669fb563049cc1c747a89bf742a019f00a911222f784142c6066269a68610302047c435bb500673065023100eb49b1dba3ee2c5ebf95fbc34ba74725cb3b70ec23e667d1f80d2adea5192a250144015c92ca54ad6e5e72e8830947cd023071647824be2a2e358ada1f79aafd640542f9ac3edd6405387a4c8118d700663a1a1f73aa86a00c8ab992c5be445441e10302047c435bb50067306502303526ece64931fbfa15c0e0edacbfb024a86409dc6759e0bbf558ec1a1a9795244c875f0a937d1cb830dedabc215a2d36023100fa3adedb7d3d01437f0667392f5d562c08a1b4e462dc21d55f48ae515523ca2d3c23fa3a172823c874ae5f5451c34c190302047c435bb500683066023100b0156e000bd4f9df32ef475c6be4e7c9b7c6cb167eb21c591402514d1734d675a7c1267f2c0b2e18866c1813d0477c62023100c301dde156621187df983a65dfa07a5848764354da9b261d6326430dfcbf3e9e216a55503328af8a16660c8ce8363e1c0302047c435bb500683066023100b5ac17b07f1f6af2368b3c9f807f0c276cc2904087ffa75965d6f79261d64c8c1038a17199ec914f62d425f9e28f6edd023100ca743fb6c159699d37ade502910fac94d73d292d7c70c5f13e266ab1e566aa76d05d2c012776b759cc287032ee2f0ef10302047c435bb50067306502304a5b4ef6b37215826d4494814b28baa1b5574c8d2f58943538c3e7d05e4b3b06c624063b8edbad620d7f0e9e16261713023100b4d6419167305490c631f8ec4d002bd01e8742ecb6403a9e58b2a40724533574e58d3d2df05e87e9fa3442e262dda89c0302047c435bb5006630640230469ab36f88db018199f141500f85f2d2de821a48a789e86eca5c939aefc34d4d63db2cd1117f3a0d57220e798917cb23023014ec9d3759e83951ae37ebbb1f774d3dc7ac1fe42711b158683fe011d36405502b0ea1098dc361e9c1c6392ef03640680302047c435bb500673065023100f8b4f3e55cee849f0c98135f5981563fa663556d45c7c372de25b38b5b0cac4721b0db999d80dfc4ba16bfc0c5d62c0002307bed5350b607b0ce8ee596ab4e50328b311cf72bbf5856496975ec5d64fd0a2ec10f27bc24d51f3eea155b2e076074590302047c435bb500673065023100e446cff7903079e4c3caab9d00a855c678a09ab7a3ece9c387a014f3cd2e897a8863ad9dae780def25bca82d4ea85d1e023076e8b5167ba4aa98cfd73da88dfe10692d251c1a498b8cd524d53274fdfa6e38b251b0f6e0617e5b9300120f272a76650302047c435bb50067306502307f841e805759195780c5a5e125210d175c524c3901935edf63dc812068412460b05acae771042153fadc6812eb951f9f0231009db6f0edea0bd16a25a1042fb3f3d224865c3be07a4ed5eb7776586ee192ce4d2390dd8af04578d8c515529c693abf5a0302047c435bb500683066023100a668992da6e15715779718ff232710d0ca8655bf311028a81fda511ff3f1b8546f86e375fc6ea33c6e305f9885171fb1023100e911529dd8f4269e99f13e0d779888384c2c7fe615488ee1ae6dafcb76a11ede8e71119b38e4f6e626ce536f49ebd4550302047c435bb50067306502306d5cab26345651f008fe9134c8183bff66257237c31f2169f60405729e8e72325dcca66d94995247733d3a8fb93bac39023100ae252d008e64e7f54f152a0c6ce5a2095f4a4f4773fefe98ac25181730d95f8adab602c0e2e36dd9b06bf2a04bbf35830302047c435bb500663064023057b48aec8fad822a2d9b1e93930ae98cf1da213b376fb9cead0e2aab2b794e640e227e4782c16adfef543d4ab95ce8e00230091e6b893cdadcb40dba49db57648d57a62214b65295ac595af4b974e93843956417f1b2e385e5abba4a087ffd909f690302047c435bb50067306502307c1f27ee1986652dc7fc1d200c09a7a59f974600a519a0914e742081790fdd54b0b3698d256f09e43c23ed5892745f29023100b27b4230fffe19e3562098e6cc760102398a79dfdf02bb5d75b1d2849b0c9d8031bf3d46e96c55d3ae27f78dfa6586ae0302047c435bb500683066023100c0d89cce66f1732b7d205c8f3e1311c38cd78b8307bea59711f03aa47b9cb44afaba631c3d748c8a8508f591f7e75c1402310089c558f05f9811bb7e872215995a937bb670b5200e09ca4cfec115ea860e78ffe0d392551c8e964ee2544016355b799d0302047c435bb500683066023100c18c46da88ab389114c6441d4ee9cfb04b6a7fe6c74b10b38d6e90bb19d1611d4b272b59c11dfc13d1e73438610f7d21023100f329e169eb54fce11cd76f1bf18d6584d5b4b03853bc7582f2da5b8ea875b7bf61d502fecc3cb3be71fc95ee584c3d490302047c435bb50067306502306133eb8e3a271173675190b2d23ae9ba9e5d1ef1b5f2d181753d92c23b6bae87d4e64471138f66297d0c1df20dfb75b1023100f4dd02e908a52fbc2eaf5ce787e26301423c1de9615590aa557abb808830c1c27d038bddcd56cb24a8e358f41087170b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023057923db3152c7ab3043ddf52a67dc39a4c977c26584695f6a982c7c02a28875e9e14c160ae6cdfd977db94afac4f59db0230058598062fd6c1c4fe48dab605358d862a077c8be2a1ccde1dbde682d119f5e3357bcb7c921b28599c675fdf83c885380302047c435bb5006730650230663e1c10660e24a9935a65caa3b1dc61953bf0f3aed5092339e750909ecedfa724c080a6f684c2d7d7e6d037b5815e2a023100ea986e09ea53d0fd205cf5c98c81f01d74271e5335c48a5f773eca14b2ddd7ae9c3cd3f68a1e4f85c3cd8105159ffde20302047c435bb500683066023100c982e5438f545155e202ff3a406621cacf68da8b40f0d6c7bdfc559eb675734cb437ddbd6a69d5c5cbca47ce158970ac023100b524e0d0fb139b7dd3200baf60213060a8859fdec08719469d8b0a55c9cb15fbdc5fcfbeba2b827498a0d9d5fbd64e460302047c435bb50066306402306e72d1df5c0ac7dc36d4146f9bc120e4bc6168819d65cc1233c716d7459902d33707c05916438ccb90d140c6a6235ed00230139de7f09874fb171be8a5055656389b0213b88db2b78d7b95e24050522cf28f2b0479b991f668ce93ce0bcc8401ec170302047c435bb500673065023074dbbadbe914b43531aabc0d5e37f819ec126e0da48a36c3ec37948f0654b29d1c589c61350c373ee5d3935e095065a4023100df7fd7af26ac26c2db385ceef04aca13b5f14af8594aef166229ce9eaa1318b2afe0a878858b499b27a4a887bdeac04d0302047c435bb500673065023067ca55c68d6d6d6bf3c1d2a4a12671a2766d072cbce915dee68de5149a4b669f5a26fd05ad048354900e1055835e725b023100f955c2b431767b793386ad4f0e727d176942dd6a3a13253109fcefc16cc91fa2aff0347117f30a61b9b1ed989a8a51b80302047c435bb500673065023100fed940366cee6bb632c5abc87a182cba1c4b7017e6970e5272a7c77e072a4c017780f0e491aaea91140eb277b490dceb02300edd5c87ed8e9fd56ee2996875e097ae8198e35d171867ea64e5b358d027e8444a2b48353413ae299388656be3d7f0480302047c435bb500663064023002aeb8489c0c04394ced5839feabebec63649c8e452dfd6b675084206dfbaf31789801ae593198dab932fcf3fe6b92ea023005c2cb60c1965364e8926628f3381b04fb8f6a6e2022ab0a02e0da19123c0632250a1bbe83f8ce32c8d88b3d4e664fea0302047c435bb500673065023046f3bf8647bc4fdcfffaa6157225c981c5d0409c39362f46f30bb5b966afb942f68c2ad7b4c7b58b13ecec2e356fb181023100a1c58fca5e7bb325ffe52d053f367f78bcce45a41551c86ce5a262ec01aaecfeda009b9b7e29f661b8bcbae531c3fa3f0302047c435bb50066306402306e07436bb32fbe3bfb7725f77b0ed53d865b721de0280c003fc5efda8e03214bee693221328dbd97753223149576a03302304a000fdcf73a2277616404adf174340adde1e080f6f879982c165041f937fa786c0ad899d9da62107254bd5904b4564e0302047c435bb500683066023100df77e652c872342b0bcf34f830a17504a0036dae16cbb502d167f4e364232d8733efae09548f985e0cf2746bcbbb7503023100cf85a70dee3992162602ecdd0d2d8f7d23e36b92f9804c9262ac07f943f6a7e61220f6f61e20807bc498deeb9ff072af0302047c435bb5006730650231009f5ec49e0e467450924df51b635be9ec28b18876a3367a6b2c93056d0e2ff905e73e4fc425a7609bea601ba598167732023029ac9c174c947da9a2863e96be96bdbf5e9b767f8a86796dcd3e95025ce8339b31f8ab10103d7e44fa13e5d9cc67490b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301236f234996568893b7cc36be0c4401279564976b17e8639bf58e2dead613c705223df8e2ed720eb6af93dd7342395b2023100bf1f640edc96e818ca92a9f85fc9e44b825e1076d0a1c9f02a9819e88fedba623ca3cbbeb76e31c891f35abd359b84210302047c435bb500673065023100b813a12ad6b63c3850ccc314d89225d04474c726da729234736d2825f83efda7fbb513cf20b2a55b4a46c9849af6585602306bfec5aa59b37cf7dfbadd7f86ba6bf689ba38ef393703b346be242d449137329f220eda9d4a27e5bf2107930ff2d9400302047c435bb50067306502301e78615f4ada284f9dfc505f21f2bcd6f3ed22757890f746f9c865628c0c83d600a0ceb795f99902cffec02639778d51023100ab21a8b8c4a8814ae209c4d6775bbad4bbe1c29bf40867a14fd568f3ce22f0f94e61c589651e7df0ebd401bafb7b646a0302047c435bb500673065023004565925f2a70fb0506ac4216939469e647b2cf695dba95dde75547e603b462184a6a6d5d440db24ab5ed450871b5aad023100d334b50b99315a4c6df6d213a519531987d64b991a2a4234acf6af95b139d08f75254b2d7379341c5a59aa864b4e90150302047c435bb5006730650231009ebe6684ae53c30b1857d3bcf7619dea3ee6afd54fe5ddc576cc42e2dd71e16061cbabe402bafc104763c0289b08c9dd02306ea80b61d89ecab1c0055dea581f344d47a76c763588569a5d12149da86c1632e40a437434bd9e7eb5f75e6fef2d87890302047c435bb5006730650231008e5bfb9c011ea8768530dc1a41e2d8c6912c0c8441504fdcc1bed7eae57121130d4e671e38c2b86e0818ab01431d5009023070d3bb90c0aa589c1f959312a69e3d73b2f3aae2a54f0bd479adee83f3c706f6d7eb847648bfa1ec876e3fdfc6c4bd7f0302047c435bb50067306502306ab4d64500ccd7a41f921a48cb11a52f22f2a2c121505af92639aa1b7e32a854a15c2fa90c2b2db8eb24c34e4a0b3efc023100970f1d5d1db5939c67bec381cdbbe86ae1cdccb0560f4353ca4918e147bbc0d04755751909642fafc4e96395f15d4c390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301ac4ca7caa2cf1a03210fc73c70e3313b1850a7e559dc9797fc66742a390f0ed215a3e34174f88ee8f19f9db184dc316023100b2755e5c6b0d9f04b7969b9c70569138302108fde6349ee39d3e5a421e824157ca88885d266d935719b0aac8b2ab914a0302047c435bb50067306502300a0f55b095e679dab29a3a667570c3a67b9dfe69db9cb0737f07f0b16cfdcbcc2bf4b95dca8d5d842c3f859d17dfe933023100f67db05cb0c2151520cc6cc66ec786ddc889ec7114a7de5969d4da30363a324178f1636a1f678558347ea0deb39df4320302047c435bb50067306502301f6623fa31d97069de847750a4f9c30beb711af9c13884d38e87e410953ea5878a842aaf353335f0da62b6863c61456f023100b4bd4b7e45d91af64405e17e4067ff905be63b6821c12d5c52b92a2c9fd5ea5c0c4f8220618d9f2bdb88367e30b1f3340302047c435bb500673065023100a657a2979551344f1a4df55912d3c1e98c612e4bb2d807b4b51f4d09bc40f3dcca16f8c872bbf7d517819e03009ca9a602306a7c35927f1fc36908af1cbc11ed12aa316264d3e95caa4e6d15a8a7d6fee229735201fa9c7a792a9a4f7f1a9c75a19d0302047c435bb50066306402306b430ac1e2f12cd1af33b6da20610232aa3612cddfa93d80c918a65c8ebdc9bf0d168b6262c7fa6f7c5a32f89588abd3023004c2a4ffe15b776e5057bd023982f19ade36bcbcedb25dca3597414488e7c939453d4c21fce090f96c289cb37d5547b30302047c435bb500673065023100dc503290bebd1540b65edea7a773466bc307cb352e886441d9db4f22fffac70480c4b3db4840deb22180186a91bcd2f502301cbbcb5911774f7600fc5b023369f4dc8f8894dc14ba7f4ee4773ac845674114a940957016cc9622cf7b648941d8fe9c0302047c435bb500683066023100d40458a3a2213c3527f9b04236f5c91c6e24dac26cda30b3f92951ce7de7f47cbc788beedd827ebf33a906ee0a0419fb023100c47fb07e2bc45662eee00b07574c5c74ca50f99e7aaee6bbd74b7e70f1e4dfa9e3115dedf34f1fdbce37acdc36425d2e0302047c435bb5006730650231008612b58534f591b9709c1676900f98ce22c1a683f17fbabb325452ffb86b4bb4c74b41ec4fd763d5a576b6bc67a017b602305bdbcf9012d66129ebec85efea2579e9d632518e87abf69eb6cef1c8df587c860f851510d7b1f673061da74c8b7e16130302047c435bb5006630640230703b586897671fa1eab51405014b3e5c13372cd3de263dd157f18ddd40aa0f3d2e6e0c45ce3004129de3f81c893d69a90230661c6b50a101e31884d83d7a0c5e484417df0eee01ff18e2827cd2d4e3c6e07d068ba6483762b5b889d741e6a6e5a44a0302047c435bb5006730650230292ea025a1c2f100bf01b000a01d90aa169e14d24f0f4afc47f39320265cb37fd2b2562806b45c82c617b0c3f748823e023100d8343c7d857462511c0fe0f32a7affbb6cb123d0f81853f5eebad35987e72dc70377384aa56672106ddaa0f111896a9c0302047c435bb50067306502304880a0045d475e6f350eb15343f3e24c67b9925495a7b0800dad3f9614288d95d643a099432c01263c44ac56758f823f023100fa27d0635be0137d70b5bdfff1cca2bfe2e4232d27b7f62193beb01f618fa36f0ea2d714ed61ffa567111ca166a613900302047c435bb50067306502302d24142ea2d8810cb30ba8a3d1840bae5438dedcd716bd3721781becb3e646cf5afb2044ba31bff14f2516e9090e3c04023100a69698c2148fd158f8330b5ed1d8751ca4da6d8431605a6d3083b8db0df672f1002f7ec7a27c96f59e0dd9bdc43c323d0302047c435bb500683066023100fc334b644ccf319c2ae2e72a1150bc67992d84dab82a382472c4b2dffd246e2136f1f61a1937a100c63953b44d53253c023100fe5f4b07790fc8e19343a05065d13b8ec40efb3bbe3a13fd06e34d8c1f2ced64700595bc1be62db0cf60569bf87a87110302047c435bb5006630640230747b8264729e2af19a9a8d551a276769871f305e43ab1b4cd16a7f60f60096b847aaf622bea9c0863fcd1bfdcea6fabe0230160bae452243c38630bdb52f10223785debce11c634c539cac1e29c2f7af505f4eed0131f1ffa61ec2087728cc45b62d0302047c435bb500673065023100c93859ba6c2d2805e3077d7808d3b5edc772037a879b61f18bda4ffda9990535a0870c72173c4489c8035bf34bb278eb023010b886730a43044fbf196f40753962a5952a79ff43ca57a055f8eccdd3b39f6dcc8ad4ff8c2d5c57e41d9374da07e7c20302047c435bb5006730650230283ef124f0086de41d21b81c2675f8959fed25ef3d29b76a45c427dea237014e88d02ac09e158096259f50e0527f39df023100ae627a0c6629e5c0fc4d78544529da59f2d9394bfac5a0ada1664121594b4d6f925b53f857520b7fa5fbb3042459e2fe0302047c435bb5006830660231009a5cd314f8b930f9385eae132904772fb3dc6d43371b47664a49706af0e09574fa4032b0a24aa607ec06968a8e780770023100bb74bc0f4af3b9d65dcc505eadeed0f22b2ccb04ce440b962dc93836abd7ef800109fb5001d6b93437ec1729e239a9c70302047c435bb500683066023100c050d7af87805dea0f6ef6a55937d63f8f5fe96a3bbd54a60ef9ff472c89165a56fe2831b52eda54d4b9e6dbff704ff4023100c4125cdf2192d19801948c06b59ad0a33f83797e4286ccd3f4120958ec59af371bcf8942a52beb2614edf0ecae5337020302047c435bb500673065023100ab3bb52a4987f07fe65de9d7e990b36728e7a2b884ecf60685a21f16b60a070ac14fdcbbdbd59cdea3af99e7ab83566d0230307b81712464fb88bc6118c1c47f7e05f55b4d79db7cc181ae6d811150daabe7aff062d5a28f7bb60a9c0ec7bc66440a0302047c435bb5006830660231008925f2110230b7a17e6706cf90ea553973aecc83a857dadd67efaeccaaaa65850f5483eb30c643d1f6b4f6295bb34544023100c04ee2167b129f5b9b6f4d1250612c6a5c541ba44a5c7bb3ae48b35ed81b9aef3013b70e0cd5c651a07f0176a8f76fba0302047c435bb500673065023100f35815d9e10f7759357f948f797827dff482ce258260b6c5d73a09a108e8c712de1bd62b3a13cb43758b3ba1fc56489e02307231b5a6a075e2107c5b3f210bcdf8685b6bab567f4e85e675d1a8e9f87b532c363ff7869cceaf5c1c4a945be9272a180302047c435bb50067306502301c4d920a23bfa814aade7c8cc3f639387bffab4bfc665f6b70bbba397221aabf6e479123c062e190e67cbe2ad44e126e023100ec35d9106f744d65a551b17cc74f43fe1e523ad1b21215a56f322b8d5a7300a43a5030241cd0b225a4b0d5295a930ed70302047c435bb5006630640230238016843c24855abd6c0b6a46912ab5e1f567f4e744ee50a1581fd6c7db68b20f56a8287601a130dcb4e5b19710e67902304fb41c4e1f3a1e6c5f5440292853b9246a417abf5687f6ffd652f6ff36fec241e99daeb5bdeae5424994993749d947c90302047c435bb500683066023100ba436ffd277008341a78b64555830545e1c7d65c3992785cd20e1fbb9e00363e7d3139eeeaabd7257aa9ed9e3f8c247f0231008cdc55c00f590d20a847c06d1d0a38b64620a357dde1c9bc93ee2a864f50ca10330549052ca570590da0414e6a41cfa00302047c435bb5006630640230152aa186255173bb0e1106ba0adc231378ae5daedc1317f37afb5c45f5cab14548baf4c8d49b947f3fdda2726772fec002301cb965a52aa6a7449d8d337464f4fb7bfc4454b2cad263cdec2532c67ea8d7e61f52400391cfd3be2cc85f07f8ed95e60302047c435bb500683066023100a1ffac304f596976df457ec6d141b1f33d7cd5d9d9add57815dec26c26b8713936684507c8d41bc54c61e1a532067f38023100835e5273c503ae312cadca13d6482f8ed11cc358915aae6d60486c986f29dd6dfc601da3eb53165d746da4c6e340fdc90302047c435bb5006730650231008df603ca24a4993ce4b07d6f527046e6f0ba5b814f2ad6ba787f2efc442a18befd45305238ce5f92a8b6e50947bb4ff20230346e329564e77e76ec216eb712694c619209c7984b6c1bbd061562a40c4d7430edb2d589f730b64474d2b1119e1a76750302047c435bb5006630640230423df92164c3f00f643956f3f50944c85af6e9d7694507a430f0b568c6d1ac64e74bf92f01f66dd81a11a5065c186f1102307697490370bd7662c3f74dc9b114e08f15aa09272aea088d24cc6ca90b8a014914cbef9aada9a4abb82e81bc73a932170302047c435bb50067306502305d850511dd60a3c8d7baafc71b23164440c0ce5fc4382a17b5c6c2dc46c60685178b5c5a52f9c9abbacd2816be667d5a023100cc409806269143694a2f55b437590f6bdb784d6b98f9da909dfd99b1a43e287ab3c6b2f4b3ece85075b81db828882e760302047c435bb5006630640230785081a9c5502820e16ce080430978ca27dcdfc0fde615ed4a8ea8cc0922c6fc915bb0f0cfaa6100dd1b85bdfa12d4d6023006db913805c0b2fc95b34a5de0dd18bcd6bf2788227777d841fba264cabf07831d9c51656cd7932788ba6dca1cc043390302047c435bb50066306402300aace76fe2796c230088a7f2f41cc60b0983dc8b357eb9ca443602a9e2139ea1abbf810f1b7f1976071061ebe45c5aaa023050655ed80ec5debec0a29cdb7dad8a664e7d60222b9b37c01dd0eb452a906881473813833345b9bb27fa11f2c5489a1d0302047c435bb500673065023007b28d5c4b2f15f6a8891fcc23926c8abbb1fdb013e7803a3783339c72b94cdb97b9a19c42bf2c056765f446cff17f89023100a74943d0badf77706f70faa20652619407bbae287570cdc199d62af2fe4f7c2cd9c1497ac75b2fcd7589b1e1e8c144740302047c435bb50067306502303a538135e6023ebc37b21cfddc458e6208f352df59057e9d0c463b604497842a18b5a0e56db7bf302e415e968328facc023100b757e6eddfbc34c357cfd4cd37fbb83edcd123052ee329823dcc6733cc068b20fab8cb4702f9f1320726e189aa04e0f20302047c435bb500673065023100dbf37c7c7d082d3a6417faa1791480aac23a552d878f4df0a7c34493ea6b7f0c649e4055414d1a4c0d857a25ace27a81023064b1eba78e5e7f19b7e6d0c6ab22c5e64259d3f15a66390b96d191c86250d41ac75adc6ea84704c1abe096d2bbc97ec30302047c435bb50067306502306d46c6b71c9b2e04a9fbc6cff51fdad88bd181cbd78ea853ece2b5ed5393c4fc11c989fed79995517fcb15edd41104e2023100f9871126b8ffa4af21861a7b5d208011db82825adaedb001df5bdad8f875deb4b65f4b5dc926e561a49091cc79f17dba0302047c435bb50067306502303c0ca9ff395db1e7e9aeea28cffc533cd0e6137da8faae9d7c28e69efbb7f43b55e8d73e899b1a82e3239aa9cb352660023100d9ab4bf4d3f9a9929dada401974a5d41d91b00c270b854805cb1efc84450ed4ac043734e91e6b2507ba448dbfaa4707c0302047c435bb500683066023100ce676658d21860ad505d3385915925095497f841e45a4386469792a39156ebff1727d5371a3aab4ed52f06cbfcd3cb46023100f00db0388b7ad0a3acba96e2212788ffdc56aaee4da6df59882fa184fd6911f0d635b6ebd45f61ec5489ac37e1dab4d80302047c435bb500683066023100b37bdc8cef47daf4b96485e507e0b30a6bc634735bc6beb58dcfab4e82984fda382a9916570958fd5d9029368a8356da023100b72392146e4a1560096fb3b0710d10d76d39d8a61dc62ea0dc866b098df8f9f1212ba30214ef7e9ef855c470b7fc7c600302047c435bb50067306502301db86898deb51f20f3a35df98df4b601c87bf271609afd1ff0c92262147ac0724482362b42d919f1a632ae16d94cef7a023100ae2fee10d5ee1ea5cc60b21360b9eddf8b505890c7ef2d9d9031ea57599d85e7b0d981b8d102f00fa8acd18893e490d70302047c435bb50067306502302892708a3db4b8d3c7fbe834c8572393d2a75b4ab1717ddca246207c4a0abad3fe732bde2b58d205b0cc11fbf50df428023100a80b334ee0ab5aebf42d6c98323d4a3dd1c6a99f9f84fe392306ed7597b91cabf03f9e3a8fc9404ef2a635c865c137950302047c435bb50067306502310088d89b2b8594b04c0d9102476eec83ee627e813b439913aaafe0f6c88d0fd28d8046202af8c5936ed3c4cd1abd7bfa13023004cf80440528d6ff49a98bce7b35314ba70ab602f27c90ec9b82a79024685bee2fc95cf0b8864dba532ef83aff05b2ec0302047c435bb500673065023100d670b1b3f4fda85a846da3ebc1271101c4d93747b3ae7ed2d00d7bee75fbe8102476597452839522478d9b462dc9ccd00230078142a4dd72720eaac26c246d18726ee2857c0a7f0603a31831238e1b40f73effd5b530a2ec70db6f9c995091f719c20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230773e92d9703695d94aa12048c8975c115a5f7624b3757eaa47cd5aacf4fb932e18d2776a54224b69978af6615e91f9c5023018e4e80e3358164089203deef6162f026e53dd2f2e2b6c3f9e09af2925727395c714b063ebbf6c63d01c3c345cf5dc520302047c435bb50066306402304cb50cacc53085aec9553c40d089a5434109f2e064dde6a56704feece4be18a82a92afe4d691cf6c69a0cd9faf4c7c0f023029efc284028f659ae9dc0f013fbd22a9d839375bf48cff8d68f3fa463d97ccd8ac5cdde96bf88247363dabe1474ebd830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304d06dd99da42911b766872b44b72c090c48198af56eaaef8b8e72ecf493b5f8cc9f8e94082d08e9faaab192d17fed8410230444bed9d59ef932057972410671d579c044a472b1952d3b5b234b525d9164463a0571c3aa248cb6b13fa027b459d671e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302761fc060929b2984bb88a547c87ea6ae5c81a2ee4e2acc5f25b382ed64b5eef7718877904c1a096175cb1181b8c2150023027fe8d469a7e3e52c686812b216c683759427e6a6846269de34a6acc21e3b8332f626945a578a4bc85ef7deffa78056d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100db096827cd4134f3db95be23e927208e0adf3d11aa7fbc591c2849d5bf75823ccdd5e1742e69f3e9c44973699086449b02304997665211d20229e261ee1c95d29cf9d28c110408ecca8beb18f9005023a886f6ed1ed1356993d77f03a72bb8d6cf070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100887b68aacf821bd0500484149921bb92aec32bd395afb2ebe0d17627dbda6078045b692b9e55bd22b9761c3bd6807d050230018512cee59928ebc177903c1810fcf9fce2fecc598c140d77a0bcdb01edf717ea7feb99b044fe97aed5d3b43a2eee3b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009ff9b50f59b67e3a021a0bbe460da9876ab3d9ae6ca2ce36318c8358d89fb6d3506324456270f4fbc33d55bb493b6886023100e82e39084255acbef61695305a2f5320ca172cc57210ab191795eee728f01c32ec0b9aa226ff7adad9304bfc0a5bedab0302047c435bb50066306402305bcc030902cdd3128bb48c81173fda2bf5ffadcdbac167c721517117d8efddbe60929bfc8d2d4da7135dc0b0e9f66a1c02307bd7a1014fc3780dffd234478d818f01e76e750632f3a4e4e8b23330071e536481cb6b0f067736752cce6a12803f581c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b36bfe999e6b7d320c39fe616074b1f1b8fab4ac0ef00ea1492c0c4a0a77d2500a84f93ca5640413d3d2cd398d1f7022023062e243053bf20b9ba1606ac5a1cfeaeef2e5d8bc0f25f902ef986b5cbed2a5b2b3998ec7a06380348caba400a6cb7f020302047c435bb500683066023100c523fce7d8af97d96b8fa67ff063ba128222a502a6373178d94923bc92b99d927e31961abe427404c91ac071c4ed0f85023100f6b68a8b568c9db88d8f67b68a0fee2be8fcf91d7a1d3752e90b3203a5ae38282a9f966ffb5e8c6fcd770741a9de8ed50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230628251c81c06dff14ac8365000a29b7500cdebe38b71795e0bb0d607d1a6a139c2ce33f7dcbb3298d409f14da4323daa023100b8325aaa0877ab08932f75cb9a39b53f728a808ebc360052c39948805dd26f471585a9c48aaa721d591519a07e683c6f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100916c2c46d39c9c20f195dd097e3189125e7af258ad1130880ec70118c4f71598cd0a18a872c1fcfaff1153c1f1921ccf02305d4eeb90d82c2e32dd019bca7d20e7d6243f6b4975342d8b04a1f0925aab287e2c9752472278fcdde2f0068ef8e173b80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d118213070f2c33a7495134670cdaffad3c9fa342cf3963b40178407770e9d7a8cc15971d6afcd1cde4e183d2d251a5302302a5ee2a24afdd691b6b905995fae09cac401ed3c8ea60893454016388fd01d1b3cfa5c75a59d1be7adc34f06b9e888c90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300f9f2876077de2b5043022e581c9e13abd8d2c41002e990ca5b4cb37340936bb5fc2b285fde012efc9ded03a1d458361023100beb772a1ee1a5dab289ed2f7b2bb5a18352c2d9ea17a5e1e76a74dadd6b49b83f591bd8ff3dce52008056c4bff5736200302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b79b6dc3853550025a76457b74eb30b66182ef3445528ed2b18c9f96b701154f1470bfbc05f0054a1f5da8047c554d2b023100e641490a4128804dd4b54a26e2519e8c5e85a5ce826434ebdaf782a0c0c2cbcbc799cd60704b58910d8fd22eebe08a940302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c8657036ef6cf1701065432a22f734c074fe1db0771e6ddccdf3984d890f8622a1fa6153a6067d6945264b7a6097872d0230051d326948727e0b991556cdc846853f79878efe5a5092223ea3725a06a20dc7c986e22ba65af186eea1858202dc85280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306f2b7ad81a8c62125d2d718f7325c6a98bc656df8a1c8139ed5b13114ba6a8228d26d78812836a8343e64818525e2e0f023100db2110be0dcc45d883215cd5a9e7743be61683563882f02b77dbf27a47fab389fcf20836dac2079323c2965357a295ae0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023054306990bf96d1cee2094055b2ae3d33eb32e2e903d2e5015944bd1dfba0fa30698b907e6a5eea3db2f6402f4556069702303541f21c9a02f2cd4a90432b704abbd3f978087ca35923c369fa24c9535aaead947f049584cd9432fff6813f7e8e51eb0302047c435bb500683066023100adaec6914e367a7ff9b1ae2048834b32f60dce295e4d373a3e4b330fc96f267b8663f5ac5093e9da2ee9aa4d90b26f29023100effc4e603cb338682849f4474fc2d42cb372380477deda4e12d8b425b9d657068a85f9d18242d4190eb286c4ef23bab40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100baf7053750c632b87044c57222aa78a4df95dce78d6ec830398a2adc5a5b53969c32e746c0eb8a87c59e24d71c0f00a8023100c7d63747b9f5122d61426c52fa2f7ddd9e82536050db6e60412971c571a7ceb58162f07a905e48484a2e859ce7a0bbbd0302047c435bb50067306502304c6a70574c80a4c0c9dedecc8786fd27cff3c088ef28edf560fbf11a8d8ad1f0fd922ae6800997f0e2579ae148db3d6802310092577468378d13946ff4d39197727c97c42dbac93e51cf327596071836021c991252ff99a03da6f08873b81a32ac6d210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302cbb658a9413733cd69eba5a6a95f6a67231f132bc2c51e6f0c63578212636835efbd75098ad6df6bfade28d2f66c8c5023100e8e0d7ed87a4c71c44c643d24db4ce11232d1a32ad8ebcd9c1ba7d5d24e739248ed51e45656cb8c8b11edd913f1b52e90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023054ba8165326481fa6cb4b8b8851ee335fcd3210544e5760c3bdc4f2c851ac6f3193f947fb191c9ec2765ddf0ede88d3002303367bbf2e7b19178d6c93f06172740d8da7f5a2bfb4905693f066f9d8d6c5e168bbcf3b4264de17f21b0a8c1acd0b05e0302047c435bb5006730650230384b4f8466a5bcf251dec9388c5c73af464b5cf7719c280da333a4b1b56c52b346164b9b5fa4f5a8f02971a2d588073e023100ec6ef964cf87bd35c8d5c49be3e79953f486fde5d6f19650a5f59239469dd78a6b855f60df397b9d26e71016aba55b060302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306715e08ae686b8923b1b7a918b0672f8f2a31945450e2e0f986ac69ca999c5258a01c8e2dd86041c9f96e3f158dc8c6d023100d910f65186ee74790d49421c11ad343721f0eefd26669c9fba171aca36a7ade2a4b32dbb69abc2009fd38352fd67c5bb0302047c435bb500673065023001954c427bd0f82d3fafb64ce043e2f8c4b170800fc97b47477ba86d34e4efa9baeb5f1b137247cc1c273b32f51b789202310096ad0bb5bbfd46f4a20297fb07c2ee2a9e3489a86580b7ee5320dea3474b689fd414f44c726fad6f2a9e487eeaa1af390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307548d0b9a3a70f7aaf4677364185f16e97ad2d0a06659d37ec15791a0b5ab9594a80c1d89c9fe90712aa349687eb496002303d3c553171605072d9e12c8a7df7c1562ce3400ddbc5abc1ca379ce957636947fdd07c86d20cfafb6106fba297de2c080302047c435bb5006630640230765714b7a85eb090168283ee23f89dba362e21dae1ba3f3eb9d4abbd767be2563c063148be7851cb69f777b7e44a1b3702305cb50c8904de4930d51553a386c9d41c92a08e9d5a998c04aa3fcbb2ec0fa1b328fd9145c28ceac528786a299bbe970d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305532aed3b871135b9616b60800cc2a46db166db03a7be92f3eb766259bb60c3a4ce5c245dccf880f6623dee673d7787f02304f87f10c3dd64b62bfdcc14e19ed0c782c879afaf188afa5525c918a3d6261e2d0d86a3d82a3ea73b55381a6c86393050302047c435bb50066306402305f093388c001a035dbe7c255b8b82082dc4fb10a5f5c14000784f15069670a55a00fdfe4f3d49d3989c71749e49f28750230296ecf8a973c9e5604831503a5de14df64025b4ee6d7d94a469f8e1688ed54a376b2bec05f5ad3c5fa0eaa5eff7575fe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b4d87aa36341845083e669b4c5cfee56897610d017cbaf869c59fd6875659ee7b27fb45439fa5d8c593268c8de98172a023058aeca57ab4769756cb9592d872be3d627fbcf98502a0cf9393d44b839066205d8e343123bcf53546af0c669c9d4b5710302047c435bb50067306502302434aa16338702f03af5a21fd069bba26d0d0eadc5fb0ea7a40dee9a19907574a47ed259f1938615bf37a76e24d90af4023100bfe9fbfe1d8c4f19b46958c87192ed49cf77e10269c2a43e73348ff54b770782ebc0c6aa1e9d0e99ec6e304bad2068180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f7babecfc0581835b5b0187403112521d5562e627bba884b245ca450a96d695a256157f3b64246a8566148a52507b219023059148f7e0c68cac830e0b63041657575287dfdfb607f6c52bad19b916d437871562e54d9c4cb4f17b9755ebfff558b1d0302047c435bb500683066023100f1776fb17761bd5c8370428a327fb99698b07e29e11b751876f7ca481ace5189f9564ed08852554f85491a409906f7d80231008b92e7d34fa6b1e19a410b550beafa73356ca5ea7c54aad0d5e7119709519950b714a383e5f9a4231022c79a37f87cb60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305b38a8d47eefe5db7c3e8e2ebee8a69434ddf3e9adfbf8516243bc350a9338ed3ef23a21c8d92a6d096ea5a6b96a48a602310081481d37f888ca2570490762760e29f54d79e11e6d53a75a7c0ac9e821c0b4061f7626e755e3dcceffc943928480e7780302047c435bb500673065023056a13d6e721d92909b32406274ceb648ba75a6e9e096843b9267d1d644780ad19cf4aee8ba442d1951771fbe0ef4e019023100e4fcbc527ef663d4889ae512b42ffc93f83abfc7dd65cd779505a8fb58b91b6f6a2090ec719f697b2d9e1cf300b5c0820302047c435bb500673065023100b4e75881e77932a75b9b3dbc98ece54a554d30d4dec1d66a38ae52bb81e322dc5375e70a824cd8faae59af625a80ab260230038718f757f6afbd9d4007085303d99380eb0c293f91b3588e80f9ed3a3615f3199f14e6b07c5c8006b6185dfc3c29da0302047c435bb5006730650231009a8c0d02037469136215e1097df31f4d26bcc5ac9811f806a9390059e22a15d4f6888a19dfd797d6eb5765a98e9ca38b02303454c14bf3f67bd59fa912e43c3da2bf968821d7293a3b8cb61b2e70161a78b43a059e0926576d919ad9123c7f86a66f0302047c435bb5006630640230422bf52fd6376f4cfbc160888db7b19b4f3581dcd8064853ea4777cdd42f3dca7a49601aaf5952e79aa777529a7452ca02304070f31f9b7bb5fbdbd388387e7bf691197d83b2b3cee2df06b10ac1148e127ee440dddb2612ea2de907149f9d0b0dd80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023033c9cb1efba4e6912a2e15f8ef81b06239ecd6e07cf83bf4b4f9c9793e016db6ccb7d761075639c27269b5122dc85705023100f3b8c4369655465f7d427c4c719bf389f6a9d225f958bcc1282c631534f387c290f1fdc0f14e1fbac55ba2e70f6271870302047c435bb500683066023100f98b8bc7bff8322b0619020676d9b563e5a6edb81dea7dc877d63cb42987530a09cf712db7ff102d3a65b0b478b3b63d0231009e57b604503665dc8ea27e4c89789a7c8a57850a8d5ef418ebed8f5332bc2ed7c17e9eb268dc4942b8621191eb6e319a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e771d041daf91f1b00b25af8e2a8c52f961deb1dce8ae615b6464d7ab0ad302a43255b1c9cb0bf94fdd3673175b250f90230128e0b765712dfa5d4fc8e08bdf86a7fdcca6fc2c4fed510b0b6e2171b30808df8b998ac9adefb6f5c514cd5db321fe10302047c435bb50067306502304e20559c25da06ea0aeea538aecf364d7f415332b295bcfb8bec8e404087177f009dfcd45ff9a76c5a68304a20880130023100d5256bbbd2e7e5cdc39a918b4a2ca4929647e60e555b05c9e68a11bcc536acfcdc2611b2b4bfa9e640c07f6eb8cda8f20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a809a81683926bf913d17cf6bc50ca7ebf740af333f7835d1efd18032efb9f7c9b172e305f6edf77a17762bfe9cea7bd023100ec29a5ea74994cb0ea1c0c91b7b06e4b5e90cfdca258e7378aa1534b585036eb7f492ec0b2dbc804ee8768acca1edd9a0302047c435bb500673065023100c9f6a0777e3a35abe71a274d65b25fc1964082be103d744da280bc5f7d49b7633d38e7c7bc005243ddf7e27a73a3cc2a0230186a27d370da3d3acbe1c9329c81c2e8939882374679d37396db8ec9612ca29f1ff6c92000f94058ae2fa3a4327b16ef0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a3f67cb5a7a11321181aca90a8818cc7f8581d2f7ed14c66365bcc34a59fb07d13cf56b5aad1166303a9f4ffbddf8df50231008e852b11711f4134c0e0f3c65a60b702b67d60a16dd5c71e3c877017f86c848cccda61f64c9c896d263e88c265f3b3ee0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d284fbef81a5d21e93f62b86d35dfdf29e6bc51014af0713502e4d48bc2f5597d88226caa92fd06aedf91fb82f3915a202310082958adf32c64633b63d43518d17656843c3d6d45c11707a4ef97da0999a1223e78e7c8f8535a60d8a475b54b76347430302047c435bb50066306402300236bd9042b0d498a983918dfafff80bbc8ce4fb338cb72d7ccba617786379150d6382c00103a2643ebda8a89cda7e830230770724ca6b5ba8db4df31d0c26482b3d30178ebb2174f089dc12d318813f8b268524b237f96be3341fbb5635cf14e5f00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bcc055cb00253331a3529f4b2c6cc237acbfe109b8207837e803189d72758b482da7f289583d25bbd1c99738de380f51023100faa9c861b9bccaba7d1638ebc338be110a21beba663188a429ab4e7c14f9cac6f729dbfc3f76081a5838d9746060adf00302047c435bb50068306602310096cd41eab34a2d87bc8d4b29ae7523afcb5c218dff93c2bba4d977a212433f4db5ed7805f6eb28f5eec73279d3ca8ebb0231009bbeaf6fb5d6acbf9941c36b25273c64cdfb515a0f8b727bacee6129141673ff29bf8f9cbff852df6ae1feda04d231cf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fd8fe2c8dc4cd7d6c7f5c53433b07c9dcf505c056b5f5f67d16c6aa6dc47aed81d5462ffa2a373e9a7e2a0a31b48ccdd023100dbdebe4ecd16958f080aa9dab25d191145c7d50f004a55515b0ecab61b4ca2670adbab149f1f6b2227665ccb58de136b0302047c435bb50066306402306996821cc8cd05156489f180fa76cd7d70774af5d214458ddc2141c6d825d0125dd6e20d192c3eaa9c8b9e0b941cffe302306f5695c8971d0d4c04832744fcf6fd0f5977d5255760c54557856e0e989aec820896794cd6dee731e9a88ef0e4774caa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230613439bfcfae7cec0069299957dbf76f9eded02ca17318d536192555b809406118889233cb34facddd6888568d5c63fc02306c7045d93738ee41e3f2092630a037a0b5af2550b24991a10a4d28cbe8a54b2a2961ae9a3a11d053fe1e5dcf72731b120302047c435bb50066306402306b7016ac44dba752f6ee070f3e6de1b0fafa3c28515b25e0586838572d3eeaeeeac6cb83d399cd1482a8816bcefd972102300b90f6fb7e9b6907f71aae72d38189b1f3f5819285d2d069db234bbc83476f3f66c0555fd2ad7077a7cf4c0c50e13b600302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e5dcf6d5c5d7959aef7c61a24c17e2634713e1088e19b82a392097f73c75abf8e49713b5605182f1ec8d5bb2f53acbf9023100e9a6e4b4f1e190e8517808a32ff85547e6eeaecf7a6f4bc18bac573230cb45b5fcdb1b39803b06d7aa5bac83a6a6c67c0302047c435bb500673065023042ddf0116be4ccb88051b947d568a6f4270332a98716e24f2ec6e8d6b38c046affcf48fa073b17b7639eb2b34d472f05023100c67526de492f79c8ceb766459a05fe332eea763c1f5ee252e947303b2cb8fdcce106300e03660ad8324fcdc43f6144ce0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301356b117df17e8328aa332ad274fd53bf4c3df9a99ff5339a59989638b0b71a197cd32ce1d1b344829a268d9aad29c6c023100a48ab243d4c71392caeeea1c5f27ad4ada63006df92751f273bc16e39691ab9bf86f4599d641a7574388a9dc173a427e0302047c435bb500673065023009d01694b3cf7ae3517f1a35cef3cc916b9a981d615ad24772e6d2f172337b9e8768401d03367e29477c2b1e5c940a9c0231009c5f697509cf97818ec7c0e3089dca9b97bdc431df2cd7b3377823e9a4efa1a5f44ebbc80ce056b25dc5e44345173ce30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f4cc9b07c10a557c7fa56fe0d7d0bc8c019a51e78ec5608404cbb72936a85a147b83021810e714b0b60a9e4c8799f6ed02307d291c4068aa979b28c990adfd45f658c0ef5ea0747fdc99f5ec3f8f8fa673d75e7ac804d18fea9b443fa3fe4f98ee980302047c435bb500683066023100c17463e9038859ec0cbfeb7a2638c874eb29a628555e99a1a3d739ce4fbf78f3dfada8f260e86104d5c427727f3961eb023100aab451dc5984d994483285b3991c8979437686a96335c772bb8e0a80885bf7726301046e612c375aab75b19f69ea70d40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230055d15040073de9f9dc7783074a5a3f00f7fc88f46ecd2a44d611f767c48d0735d27a3d78e614fbbce9bdeaa2ee5d4030230293429b95f6184d2e5d25f86a9b1a5361683694b1041dcda96911d70b913516e4a848617dfbd2cdf92f0cd28be4801470302047c435bb500683066023100fdf21c824935897b1089696c0a44ed6f0f065e7555f16c7cc74206b2500189699b3700df2d3c5d607546ebd0cbfa9782023100a32e67191e025fb8ef2ea74815b36ff45d792ca9aa43fbc94b554a1eaf248777f8064d5682311811c19cde06d7d4194f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c116fd019518202a0a5c14e2bb6500ee243bb142d11db6134652766b1b494d1bf242ef852320320d1df2da144e0ae3e302307872069106fb8a7cbdbaea264852fb06c3b02ceb2926681ae6968b01e81eff7b07285eed5e9ca3b37571e7b7e10d430c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b7c4b108274c32a647446864831bf98281138c53a2229aa65f59fea007511d289989e4e3dd15a21e657d1e95aceaa94902310091543498e0ed51c264d5507c4a332ef2dc894836fb10f0b215ff9dff16f81bd6cfaa0c5774c192e132694cfbd9a65e520302047c435bb500673065023100eb3b64975d61c195171e4d8162861d7ad26590b0bdcb862699a4a422b77400cf88b3beaed5fbdd8e265cf7e770178f35023018e80867bac8a2c5ede7f6302f606cae6c063eedf85b0a7ad19537b67cc1331875326b74c51b5f68ae47deeb3bd239d60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009e60178e8090c0807a900d62d0417dde67214c1d3c9365b17e94079daa74cec6c7a60b1c0d101c8dd16795553c34c51602310089eba7c86cca880a4b99a7b833a52facb721ff6fad0e30c7761def149ca49543e9b5c0a47d3ef490d05f638e331175f20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e44898676fe778ab17b19df6dade01fa95190682beee643990e7eba517f7a9f17f9b551631e474a5d45c78ca66a87cc002310086b6c6a3ca0d402f635a35f3540862d49d51d99f088728d8c7d058f6925757fb3495614482efcaeb57e27d5fdf260f7c0302047c435bb500673065023056f1b1cef2b2de6d8b3bf3e794d60e76b4a51e8c97f31cf43e640d0bf8bfbd3cdc697a5e946af25669fa6a0084fe0cc8023100d3da65e7bad09f4ab139434cde3b214c4b885e20bd47787505636233f34f930a721a4cdeeb810b3510e05ca5218471e30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300a816d0b8778bd22bd17bcd5fa7e6a1e4996fbb039158322824bff218f6f00fad3c370b89001900834ab3759661a984702304b0bfb6cad1d0e95e6ba24619e498912d6526a613afc87214aa541c38019f93da8da97ea0af6b9df7bdf78a922d93f8a0302047c435bb500683066023100b1ce23d02c2cd96f3eb650b9f159006c22c82d293615a64507cc8288605dc5e3cb7a953050b26281f50c226f0bd8866d023100b78cb02757f6f128f87cda85b18fa23ea72c7997f8b5b302a9b45bbcd6fa33ba1a91236df7229b5d4fd540b8a129105a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bea3315605c6b433dd5a3904c83ed36a67b9922f832dae589b155659696fc4b0068c1d8c9cf19273da720b4db8a1554a0231008e9a5b2c8daed7c0c5d9e1baf185620bfb4ede2468f0942df0a1809690a17180d31f0a16abbb8d0307d3cb0d720a00150302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023072449643f75ba2e489e920b8723e1c60c520167fd1fe05c5449f0f6fff06dc67dabcfbdc586bb6ff7e2af5a89de6b09d02310080c4d6a8e64a3b7474a15e43db39ab664d36e094c7183d85bb1edad6afc33cf338dcd236ff36e6b6f4d86367fd947a610302047c435bb5006630640230667ad98d022c5a70aeb9db6e3e5100d9aef27e17e74e457175c1cb84fcb2ec781ec2910ef7edc827f9351c22feea009002301509842863923f2a2cd12c0e4debefdaefa8cab8cb3f40f8eb0ebe6de6ec3180fd8687c439282f05663599389c1a75140302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305e9835581c470419e7e302e70c8e3a66d99701f521a6f55f2846e1d278565842b5825c1f85d75e806bc375a20e916a250231008ce64cfbc24b7afdf8c83c32e70021938d476952bc18448caa7c1d8c369ec8f84ea679c0f320e72419b50a493b7eabd10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a558ee1208db120b1f9985bb91c63bfd43f5d3218ad473017dd49aec802d5b3fcb1332608627367ba80e4a1f06d964020231008d90792b7bba54ab799b8ff130c7dd713012d2e324882c2bc6bf353a2a89bb8c094cf3f9a21b6ef77b18198e76b2637e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230396515ac62c5624bfafde07dc124615f65339b00b63de3be9ef8c05c22b3c4cac640ab88a3a2c0a64f8dcce51b51ddb9023100cd8e6320a1b91c57f5216713c7af0c61b315840e17e0bd45809ed7ec137bf89b1f158751c86c8c8c3524fe20d30569f30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cc5fc2667b771098b9bb33d5b0e89e31193dc2d9b150a7865f689af4118be8eba4bd2de8cff24ad982bcdec68823c28c02303a3d5055a2ef4ef2a96f5d61df587564283453f3d3d3a7e5eb4305162c11f34d20bc19b372299486c0be776a1969e5970302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023006f2f4f373f089ac1d0dc3cdc1119d16b33d9bfdf9da470fe8d8b69a936b5742c102dc973027d76ac04b36beace8218502300906ffc39da6141432f0cc41c7ba60aea391ec7eee005b7111112e81777fbd056095919e8846fefd77d31e6b0b38f0670302047c435bb500673065023041b72c3d068acd17dfbafeb6cefde72d1fa0b940d221da3a1b48a1b28f4cab0adf5062aff3b5a77d308303e57a2dfe230231009a27bde5e403b19dfabee3fcc05f06f1c1fa02e4e8df76198c6eb7d83ca6aff1e3e667c4d09ca1c1b89c3a049fd6a4540302047c435bb50066306402300ee51390f704dd9ab2e7742cdf20cff0045494b6449161fa96b2f063fe6c686a66c9c07f7591c2413151b3dcc314fb7c023021040928b818fc86bb191ca9210bdaf071b27742a45bea7820513a31bf83217a3676e1077238d9f10c699211922ef9480302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023022f235c542e7e181568d06c524ae9818179891ad2ee8c601f7f9ebc8edea0852c74cde87fea6a988cc5eebe35c5ff078023100dbf76d62a99d6ce725a057f7a0d2fb292d104eb29b61c67899f99d5ddd4665710ec6314383353a00576690a40047af9d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100df58e3b761de89d790fced6935fbbfdd02b60c0ff62d2acabff6fac00f24fbdc0ebe70f003df28d0b21f81799a365ead0231008c5539538e3d9c3fc8f45272605ee31bdaadaea762922a68f30bb8c5b72a9588f5552512905d78e9edb11e241639bb9d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ff0fbb86523f0dfabf9412d0d50c31e3f05c46d25d8e4782299189ece213be3624090788f73066276dda9ea7af6263de023100e26aee81775746bb7e98a9c76da0ca830af8ef2c0f3d4216e2de99dd2e12caf5aee835ec8802df303a8b0e9050a4c4980302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e5301c6e5b34ff9f4e3aede6f48a052dcd6efb4f8dc2cbcd13d3b34ba5804d6781757ff0ed4a3bf36bc888be71eafcc6023003a03655317e93b169f5cec4caddf426939f81427895dc552b7494d5e4f0034d4d26f6bbec9ca6ae74c9ce045410d0900302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302b1278f995a4aa89b887585179d8507b323064b9c17007d0e5fac90aeed23eebb505e8cbc7277be60e4ae6d2bf79227b02302372363e087b17c7e8c242b4456bff47da28fba747d14a12564fb56860a362bc01c16625cc98cd3eac47b5dbfc4189260302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306ef3246415b7802a3175b4f70c6c890311c4c46f5b97b9a4d41d4642ce55be7b0cf158c4807f25a47e8b5a7fd169052d023078538688094d1d641d28afe97fda2f1511e4b9e687803dca4e7f8e7c9489bdf4b9c1367c5bca870b145459974a611b4c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305bf8deb0625bcde1d5af3f535ebd351f7461e9493cd414147cc26da7206dd3dc6f69a67ef93fb2164b6e7976c2b8a6e402304ee58849987af37dc749195af368932fd6aa8fafe5d564c81ec53176d0936b1dc856c86f64e4df7a48cb89f4e4f71f1e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023074b66783123492db4d8382304cc182e5201e5edb437762ddb0e78e5548a30f49f86928665d6722f8648aa3b342b18e36023100a140801432a6c0298f0bd4e28305924889aea3ee872e8c0c540b5c497226a806d1e0f2f6e2c748e7bfcd96b5b66d7c0b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b80e387a8a6e823f4c037717b345798fbdfb4e2ac5776651aa39fc370ab97cf7c82307e6840bffc0deab25bc246b9c7f02304c24c070fd41433997fedf411f6d505ad5f3416f708d703db28b7ae8e1997bb4e0e39770990a01fb28e5490b738cdf390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310099842759b83d1ab6943319c19704fdfd6a098dbfdf3fdf6f7a268964aad0f121fc3818ae424fe56634fc2eb8b6f46f44023058eea27c1751e667b09dd5f7e8c8b21352c810ec013cee36a1904a1df6d8e23cdedc31adef0e7c8a3dffbc1230b7391c0302047c435bb5006730650230690d9e66fdfa3ef300bf37849872746124b1d1b475f9dd7979057d65963488155be342a9f43fdfa648a63a8447ab1ae2023100dced8e3012ab53e512c727638bbd310ff5b95d1277cbd8391bbbed3fe288e95dc93a0622f81e6a88d2d6065b76b0db9f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023054812cd094e4967233aa2dfba7e996c1f43e46cc8c393aa763c2f095e076cf4271cb0968115bc02db8d23d2820f579eb023100ee1f8cdcaa9cb5c4ee1b76f8edde837c150470c9eb91be5b6b6a4398848e4568db2d553f15a703ca18c62d3357f5ca7e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f1ced44c2934c251b6d3b4afad1529cd272804ddf4b68979d5b7044e7dcfabe59e834cd9c7c7fcf58e311cc23d72c1f502307a340dbf4aaac126fc2c4f4fd489b84824e64e099a9fb7ab5fb1b79a8895365c54c5ed8db6662e234459d20d4b0172670302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008d1967e8c9ebdf6cef41b03a871e6b3eae20d8b3684752cfbe369d613e9a69f174df8f06cb2dc7f71e2f2c755e171b11023040ab3841a5c5b1e5b06f631d6f603c79585e8ae0f11aed385e46b274e7f44dc756ffc5f9d6f8994b318c34de8bec86e50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b2e2ab3d165cc411fe16e4b5fad495d3e39355c12833b73aa35efa57c4ad48d53a3a5db76a3246b77c2a9634523682bc0231008e46a96283288707e4a84477222004605cdecb462675830fef71a48d62b735203be4b345d3701192cc32bd64a769181d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a68d9d82e94240de143e531260e9eea04ae0614038d5d3b1e4924c9b0f87ec197b73148fcc15f9fd3ff60982b5b2dffd023100f2807469949361e72377d51562eeebe224e66cbf182a772919492d338ed21027783a986caef0f22da53bfda91ceb5a9a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ad35e2697830ccb028b09ea241bc1b747db9c105ec9fba892d1f668836f906731db5d8ea923093f2f1a3feb04761359402303770a1226ca4f124a64f2988111dcc206786906fe93babb36b8ed6496b72ec45c0e816b44045917b53c87e517661dd390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230377b3d650a60f65f1f06f1f9050dd151e9d35d325778d96128a7380f6b7ccae57a8d44708b4ccc23de14d1380ecd49e0023075b044f1c4d7ca6f07f603ff6ccb746296c21547040a570ebb5eecd7382c62b15fbf16d5a72dd4729d1f12994e3912910302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300d63986d7ba849127d7845c44c23d38d61a994c16ccf8e4f94b4c8c77861b939b7c2a6b9717e9f4596d6d657598049aa023029e5aaa87f5ee9e66e62965bc0b501c04b3116774f69d09efa0e6c5a717c974d8ef161723ae29527f729c2f64454d41f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023042cd0b49203be28b391a6f005555f323af0ccab9ce45719f9f725e0bc24f25be3de39591107e2dd0e2362055f0eefae702310095df3a63733b915ac6425a2f3bb5c47c31f56d86abc6a36b85e3279be911a46827d9fc8536dbae996e4091ab33d9c2580302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230691997d46a7f327c0ac57cdb7c45d56f5b9f86a895909b198635b6e8d2aa9288679f785be9880bf39e6f9c3a8832236a02301a9dafc7c90acc061f98113c94317ac8ec76f46f0431399d3ebdb86e7d6ed976e9e7259d41ea0332e41c81dd6e59a70c0302047c435bb5006730650230788264a3d8da4406ae0b043785024db041828d9d8eed9dc1a775b6761d92509159729053db04914265349233e18260ae023100b9c4514ea15fec1bb5b4684a0c013d14720f5abf92472cc27d33198d356b3d91a0f3b061dd6ff11c380297dec7e1a0190302047c435bb500673065023100a82cd6efdd6f2873b85ad8b2852ada8761c8dc91fdd7b8164f1d28b254ce28d54de0250b4385a7c80e61b7085f5677c50230787fdb27d4f1a78fc9b8dbdb245ee9e76fa9cc5e68ba68dbe805cce1a2471bb034ac31a51d8c6cfa6c7ca6c6b94f5f930302047c435bb500683066023100e7ef98628bb23863910315b249b47fd67e36085e4f38ed3f70fb10d0d784440ffd6ed3a0b23dfbf482816d29961d341f023100d35a1bd423124542174fb52520120eb99ecea29817a27e588b8edc71f69713f10f1c0b662f33754115f35b8e50ef1c7b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c9e3c89bd72cd9a025faab469558d5f5ea8af3d563b58ed67a0d1ac1c0d59048e8b2fc2a1520ce843ba7336010f1a0aa0231009924aca4da55c0ca1308cb2bb705a4b7210482f279c92b46ace0e71e852e959d8c88d9ce25dc2f46da39c03b65106aae0302047c435bb50067306502300f592d630305fbd92843931591bf1ce5c375f7c9ae2eb733eb40e8a36765f1c077cb39ec7188e66b13b6ecd97e55888c023100fd55d2bcc6b3e81065b9b09b9294536096a68e0ccc185c6234d71e40b7daffe4d0724d058bb52d5ea502b5b0733885220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303d3ac36061eae3232a31ac3954184d437b36827aeb8435b6bf4401e29b19cf84ca2ef6fdf3a7e9f36f50766aa1f36993023036816eccba79156bc84d4e1334318743e3c679f6de7d92cc2c8e405f68778445153bdf654b925f58f44f9384f49ff6610302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310083de659dbb665a70533f5fcf21fdaf430dd50216a3e81b5f403e6ca3c71dffbefda94c2bcd7e85f6e41493786bfde202023100eefa51b1126b6c1028026ab4a916e76e8cb5d3ad1991ba88fbc03858f4b244a7cf06f0e4ee043111c45ab880eedacc550302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e81d8c1688c69049cf5c09617bf95a878f05fff4c6c23ccadefc3dd1a09499e3d053490a4c2f6b7a86efe58ab09897420230027aae0231d3478102e86648e8262d7811529eb10cdaea88d980cc24acfcb774e4e07db561742c7ba509f904d8a422950302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100abf993b6f3847975743deb69dbee388979d39cf58f592277777dbe7e2fbddc188ad05a2933a9a95eb6c416a7b77bead3023100e8666783f6c19a4e7d99fd1b2d8606a3ce0163ff1e4775e888436fe445b0561da49a5f339949e95c478bf6477a1d53bd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302d91f0b10e6f0de12554d5f034682dc309f975a2355fdea1c6494f319bcfb248a0bb7a58898d085f90d94ecd3a3a8baf0230202ce78e5b5b82a87fc2976cf7a157ac82180f51373a7024989d021a018b3c1d55f4e78d488b801cef473f838c9155840302047c435bb500683066023100edfad3ddc74da6650526907b8e97cffa300c5a3237f491f85b0822c459df72dd40804c0d0239a9b804075b06c3e717b9023100819101eacd07e008cd1f0c4d9f22e54243d82e3beb59c71c1069e832e14203eb6cccfc56d2f6cee26528189cd1658ee80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bd47d1536e19b2e43cba7b1991db10ed18c45bb12f82b9e94950cacb7c9229e13e30be2d6a48a1abaf68a0ba9d85a97f023100f84e7ebd8e84e5ebcb2506ea75999fa858a0f84119e25df896557554d5b4ca5d91fa5e2abc27e312fc13e96098df30d20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302f5f1c3204760de9f0f069a41e70c9c6ae4be0f3acea8eb55b4b5d5d60cf6a531727983ef76511bb73587c84e2a2ae7b02305e27b3ffaba410c1136f567404be18958bd1d5cc561a795cfa9d36c469a74494692b01fd37c96a292b4e19e6ae5312ac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023058e36ff1f6e8127c4dcfc07b01a7461ba8b025efa96d9f0a7a1277ad4c9f27e204fd17f439898ff5b782c7e2c091490c02303aecee1915c1885778a55536a2e362c346fa25a30e5f604bed62c1aa1853580cfa708e2eb16578b59aca09abff8e43b90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307e286a1aefb88b33131a5b9a452698dcbc20ec8c3f63a24fd5acdd0e7fa656152e34284d8451948237aa2a3417ef775702305269c70bb49dce66c2ad66b06d7cf3c0066199ccc9608a779db3763405c1cc510ef2846da51d1791586003c2da94e4cd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301c8bd6bd9a17c5b0173eb54c9e3fe2e85671edf3f0e62a6818dde29e59ea2a1c3461bcf422cc3bda1501ecdd59130a47023100a16ed1f6ea5e62cee6084736af5acf559aadb05bd8d624bb0cd2c8d1b37a36a90a9c4044ecf178a7efa9c33e492976ee0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c4fadd17a344bc74221137a4687bea867f545cc28790bba327599b7f68482540454751c9d4c8136567dee4d8804d2e7302301b37275a7685a326c1275a612bb2ed5ab3b8ee24057d7978249070bff048f9b2f70f2d73d00aa8104dac74e82f264c130302047c435bb5006730650230627b968b4d543666bc66fdd760d8b2c19c0c49a5cfe690f8e860ed5ac72cfcc3ea34b28f6c7a8cb06ae1f62c31edea6c023100b800745fe46d571614b4e6b04a80d7eaa5c245f7dbc95e673db32ce7305ae8350afaf3606a146f0e05558b4eca9367f50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ce142485929a6c7651a6210fad04b09ca4d87bdf3787f64d4c2884ea6d62ea9899a0459bfaf30f96c40218a1ef0a6d85023100f8add72475c9973cafb1508a505cc5915b99b7eb8d5103e28d57ac6d99c2d949011d3fad16e14ddff768039364de8f680302047c435bb500663064023045897c0b10d707b04bfb824c95c44325a6d8dbdc9673e6abb6cdd4a3b93628ca0efc0438c316cd3c8d8f72bc481aaaef0230123024865e6bd80a2123310da2e0ff21f4cde6d27cfbb2570a2e762f8a75c8cf40f5b7297b98bd8f548e9747790c44a80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ccc4e00e9ecdeb7967ede9b91ba94c964ffb26bf88e66dbe0f529c8bc01a4544fa61de50cc254498cb4f4b6d553321e7023100bbd80938c8cba976e227f484f39aa816f295d28ca3ba17f820643fbb1a361eb1f15c74db0ccc71d6d75aab5368ddeb150302047c435bb50066306402304f98e8351506f78b15068226b9648e0cf2ca95bf1bd6db9459acb05f4a25ed8d3a7efcf3590ce4e0b3cb12b995f89c5b023051e185154124c6f12b0a8f47007ddbc3eb9046d03595894520bd3ce9d69fa1f2a4d577debf2c25d215ae32d0871889870302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f1f0e05605c1853d46db82747be9035ba3e927c93cf607d69990c76f160128cbd2f76b2c815fbf50bf96b0d7f3f5895602301c050f72c089cf479961595b4011664865a48c54102d0ff3e4df36f10f9098d487bb3d33bb1ebe172f1c6146da3bdc930302047c435bb500673065023100f69460c1b19d6919f459efb3a3d9ca63b405c4b2d643b14fdee47d45829268563b3cceef0d9e866a9f9b79266c51864802306bdce3aba863954a7244035d583fc88ac76284a22d67196672df6224b47fccd22bd6e77347a5e7ed877cf047e7d078db0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e9150d4442492d70b66ef6e137db79d702b02a51fd56d44334dd4da9c9ea02d183c3db7ca811e06f91e445fd468cdf8f02307c9a69b887235c6fb34554b49f61678ae0b253b6288373c0fa86d3e7d9b1b2afbe7ecc1a8fb8196c95596037b98d14f80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a17a37b46913779da056cd18b7940b20ddb0b6e13cc245c2c58eb167ce58b8b3bc17dbad7bd7417114689e10d2ad9b5b023100c23ec9685150184de439ab1e6ef1e448b459b298c3604cff9b9bf792fa4f50b9f25f877bb4591884d2ac5cd373bf698b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cd33713e73f0a1b73f7521f148248777d8177e0a32ef017646f238e656e8da22ee409c75b0992d0faa072ee9a97a40cb0230756b7273f4396de5b612f48177b19b6d8410c84bc05e0e4a49261d3e03935672e1556eebf2ddc211c730719346f988be0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310097d6b8a2a9a02f535a8563823c9be9e95321ddaeaecf62c6368a81d4f61abca43fe79820b7293090210334905f172d4a02302df2d3bdbb1492bafe1f7892bc54b8b08ae1deca895e02446751cf852fb15dcd52561b28f3694b9f7d2d0979a1bcc6f40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fbd214584ccc2cbc7d1250de235155047950206c6d41cbdcbb1b3ce7f9228778cb806d1286f1986f3f55bd95526b2da2023061de46bc48af2e01195e3d12273a2cf194b8ba3252a2775c633159e47039ea711d9cd911bc22d24bc968cd42364c04530302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023016312d3496db004c7cc9f23ab075ba07c0d82d32075b3fb2d25f4d8e986eed64e961783457a85f1a504358c5ceb61a8d0231009b4227a5bae73597810114eec01aaf11dbae4d38f96de3a12192cf24089d8502c4a7182b417d3bd66d2160c8ba262ba20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304de851078123bdc3208ee28c287af84ea0ad420381523a544c14a08fcab09a8cc3b571d8f034550df4cb784a99c26108023004ffe5f407ff5ee821da846c8eb7d0872090e184f535c82dc094d89701cae7b3404dbd07a8630faa639d5f0cbcf98d6e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306c01aaaeb8e2ffd9c62d4bbd42a3ef793970b92a970bf573056fd612f3839349a58436ac2cbb3195c64209669bdcde910231008569dc8cccc04fbfb282bc871c4b7ca016dc871ae0438dcbb62cde9b8e4cee1b5c7b16786725d823ac588b7ee0dc31670302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f48055fd3f0a87e122d12efa0b748311857d7c70e9227a3b5ac892f1701de5cf790c97759b8edabcde41c9b159a1329e023100fd130f1ab55c016a60a51e00b6fd79968c123ced3e5ada790eb7d65b447e172499dedb87f46a0eea58b2838842bdb5ad0302047c435bb5006830660231008aeb5db80a7e8063c0de55b304ebf76d163570ba35408c76d1d6cd84feb1d9e99fd47643b6390f1a475c6b0b1fd449360231009e372af6097d0da9cbc016c1e9667248aa9175871e8470c242b5dc931ed9187c50a0b422d694a72b1b1b4c13954d8f7a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f5f07a17ea4920d9b73bc6226eb3e8411ca8bff20b8d818871dba17e8da26a786704adb47b9bc18b9eb54ace8a77070f02310081a56536b6715c9d43e7ac2c96ad21968185ba8cfa42ae813f2a410c912ca1eb6ace86c4a3d6b8cf144cb9bf8c5aeb870302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303b778746f2e590eaaa19f383f53fcfd54b66abddb0187d1bcfb5123da7f5b1a944c92b2bb17460d9663ceea8519a63a4023012c34683ce0c7bba30f9d15e1fc0f119998c2835ce7abf3555c4d86b78a4aba6f8a6da3bf2458c3070dbb9c950d1fb550302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c66d135024f0583a1f2a57b45149222a3a010907e104ceb90a3e3c17597e523aec42c7d3e0b4f3632d122cbd30b3cca0023100a23c4eb5b822f6f5d18ad5924db7dd385ad42a130bf1a41ac6b3e92b6ee56685c41293e5933d1eb96a3210b3257d7bb40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302e8c51e0a1db9e61d297902fd179b663a36212d2a3884408e4fbecf157dd1f3afaf7e9cc47cb15cf4a943b3809e080ba023100ab8677bb62e4150c0d7af7f6cba21e8751c55453eb2c1a0282e8ca69c9bbe45994a5cf3aae1d096eb9b007c953acabc40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d345ea9da8e8ea931908888ef4d128930b1ee17ed7a063f18eb6aae7bb67a59f3d4f5c2ebf619459277b15d7f23c67b502301787705e0baae91344b7355f2d6e95d3e13caaa89c98e22aee50bbb09e76e3269366ccf754e4dd9ba386447a509fd08c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301b8ca40ce4b5d874c349dafedadb63e7bed2197bb7a0d313d55da3841a11412969f0ff73899b02ccfc7101fab7490b0a02306e9de975d72f68ae7ccefc432a9e36dadb72375f0d9be7cfd59bde0fa377eaf111516c64b76e0b465e5bd3d427681abb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008df2e045aa05427e54aa20bd5aee53df3bf298fae8381f7993cbad5c8969b511c4dd48704c8bfdc4eb0c819a94fc4d7002305af94bb5bca9a25d40917c9f642c92de3c072d3802a91b7f684405df27a3a8b9b751fcdb898b535857e94905beb31cf40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230392f336d3e064704438694a0fd850a10e02ad99907fe12ef35a8562535e42a2e509fe9956029c3930edf20552e601ed6023100f7c6199e9c4e8df90ad9eafd91a544bd961efc94b2686c1a0f674f0026f8b7e1b147c9bcf68725ae527928c6d3ab48950302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023036c2ba85f51d0cd5befed02e0fb04d37cc5a8d03b2e1e4cd510aa8d32993e30db4a376cade7b88c2b91987dc3531f2a8023100e969ef129a7bf0122bec9025a7acb351474dd3d99b407e2cb23d0032967f5932daaf46ce87a75ef0c19537d4b7e0bbfb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307e762a8c8a02c441a5276e4a4c83943b097382385de39fe48ac9139368bcb70b5f6d632e2039adacb99ce1a89cc0b90b023100f27f59aec09b21a954aaeafa726d2e37cb41e47ade86da162ad3c81ce3fe00f076ffcd44a9ad10ba9fdb98d8ebe664470302047c435bb50066306402302e2f622ede57118022d787710c3fba66b92c99f4329e1ac7f4b50c74dcad8606101fb435be67b79f6e2e03467f70c74a023048f0f4cbfe5e62a8d9a0de2eb0d4980ba2262f5f8caa929dda286a8f5c4d165bf8ef31c1c75a29f74f302679d1d239ee0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023026a65270b5e5d724293d76d2fe44249077354291e5006f7711fa3eed8adc524d76dd3c9010d89a0ebfff9949ea28cc0702302c6b1aa4323dbdadc4d3466bc13e52f6f521f1b9cc5f6ba41bfd3d71df801b016a9da7bbba73f3edd1ded444efff92020302047c435bb500673065023013e500a773f06874e5b3859579e0fa67b6557c09d9b2fb6ec47858278fb99d6db8379de4b47e4859d279755070b055ed023100b3171d2619a747845af2337123c85f6ea681717a8b79aa13d37fd8c59fbf40232be670ca408f63b7d12bd1b33ae9896b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304a5092a0e21c7aaf8efa6070ee28c82503a121e8c7c9feddb3af0174e523cd7f723233fdd51a3aa3860715303ed51c41023100fe55e8603c3e9fe24e7970d88f124ae8ac591e0264f724b9e5442a1038ab8f52e67a0bffe8be169422a5385faf45c91d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230479593205f0579d69cb740288d2c53a1f74ceb15da4d0d394a8f38ad188857c6798266409e55aa356fe507609751f5af02302b75d547141cb5859c87d479e8eac51a9b6ad4d06b0b6b9cd5a74789cfee76f1cbd99a5ac726a9f108f13886eb7620680302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b95ab77b723ab63bdbf46b1cf1081fa61a5404c5061ecc9183d9882e4e59de15c8d7c2c582c291a73bbc707ac719b63b02303d7b00889ea78adde0e6808ac3efb5f7dcb0316aed72ebd04bb39396b890cc77e541d87effc20e6f2d992a58f98b301d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307acea49a65dbe4cfe9a1815f0382d7437610f95855d7f858d3cd34f2019f8c8c6445d2e59f1bbe778f7bb540c608bc21023018874433ccb8f30f61af59311f9dd475f765a45ff3f9f7f34e3ab16c23904d985f65e7abcd56c31faf0f2e039e35c7590302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301e2db8f0bff89c82ace5e91c3069ad1ce866f54e0af21fce790f64d3a1db7db798d4077235176c089d449fcf7079ff3a023100f77abaeccaf50c0b6589116fa98a9ba8cd1f05c2613628acd4cc9c1d317a26a5d27034f1e0c9fef2260cde44ccccf8bf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fa5dc2f3b7cee3336caecefb7a4029ba77caf99957f505f828ade731dc3a77e69a43fd83b9575a78119d864accc7cc7302304f1a432b18321db11d3dbe6b9c81dd665c6a7c736f8f7e243ab098235d29a881774ff048d309e17755602d9d333d398f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306b56d86a5517947533c890d3b07976279b1ffa5e8809df7c45ec3d3de555117354a90095f72a5b8901c47c47772514d9023100d46628a43c97b83d0ad6f990ebc1d84a87ee3d19a4e88f8838a2ac01b2ed66a55f8a8892ff11dcf09887cb8c8351db280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023025582031e7a3cedeae2ad57089479a88302921e0c629430b48d0eaa600d40cac917d32e7a2ae4e8e1fd22112d243800b023025f0f422bbc93b2b1903f05eabfffdfee43060d87404fa9982f20ec17ba586a76444eecdfd5e030000b8202a38f8f69c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230489c6e99b333159d0740b2543df30bd28dc1cbc40bfd6d0e01629648cf93484b004b18b38278286bf1db81379ad04103023020c4f2bf6e7ec80434098dd4ea0489888d8a406161e19118ad646042e729651a524d2f78d746a4bbac46d70db535927c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f2a8b7631cfe0249b84fe7e5a1d367e29f9f2efd200d4b7e99e2aff7ac8575939c4bb13f4d097f932f785c2464cd8e0802304d18eda174952793bacc0e3cf4a8b27da0d986aa828908d30044e689d292df98b2bb362abcee658ba2ab42e28dc83edc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230780cda659b609c6ba683e5f6b4e4da1268e70fd57afdf9e057d45ad27c87be9d06a094eeb7563f259aa6243779343e7e023100856f6094a00cf5a88a5ca111deb36d2f9f2cef96250e9cbd02c298df2e479b25ad44f97541820e1393d20adfc8e936b20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310097aa657ce59e6661991cf780bad4b39957b272b330b33dc0300e4ef12f8943d6cb5e3d92231d3f61e7a133da5371e13f023100b29098a207ea009f43ec898307c3d3c3ac9b7492662ff0bd182c86a5f5aeaf9b8588834a209690ce8ec145c5edd804be0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bc9f5fde4935a04d0f7303fe7fb3c70c2267e61f3a2dc433895ac9b90b7abaaaa030c362a0c037f9fe3f325158d9c7e40230297e29cbec077d116df879d75dbef71c13abbb819b455e97d5b0c18f839d3fe6141afd67aad96ad67a11c30058d552f60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e8ffb2415bc4cf7654db101e9ed4980a61ae8675288c95814c9b427ff580230caf77b9ffd798236a70ff7814f8128f8802310091cc0c52d2ee136a77ab79a79fbc3f585710ab878ba17d78353b29205f6b381ea875a853a2d359033063f89724c512670302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305607bcf1cac684925838fa5e94675a4ed66653cf98318eb0d74d81afc935680cdbf8e6f0005473f0fecd761d118aa243023025bbda8c116a3dbb85e25bf82cc55819dde03bcdff4728f35bd81e8021a28b1d99e5e6e8976c492c876430bfe6e900440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ef2c2e7fde4d7e35393779ae0159f135a02a9c62b18616fad668483205095d00ef43f2378f85dfb05e11b805b464c15e0230779ef8f2379e242b91e4f5039d57290b4a026b4ba882ca705f22f30e5fb00983ab3c5a3034f277fbd8d80a4dfcb1a1760302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303d6cee8c27ba83e376d77663309c257dc32a6e8a468f9898bb13daffe48a258ddd874ce39af87a5d7a99efd3eff71ccd023068e214c9b3168bae6b76fbc658390d16ccf49a150e1a9893b02c9eb60fc47cbc26f691405e9a5a65cea0342f1f6c7bf00302047c435bb500663064023024241eeb1e6b28b08533971d576cd9244aef1b5a84de6c1499fa8dda073689ffba6777d63f2a7bce8333a662fbea07f5023074574ef604a97780bc01c556f8c6e509f6c4f4c2d55dc48b20869db40d0ebd1e24ac2c6a88c519c3d85493e98e1c63560302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023002b8bdf6335b9cf6646397de51957c31206e367ecef7e24f3749e7e161281c3735dfe16fedbeedcd3fce64d73fe1ca070230112719db643c49887e8f2fc466a86b168b1cf335f133016ebff132fb5fa0bea954a5d3125fc0427d854ae5c72a6246960302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305db37a781b9a553045d7b45e99a48ea95bcf23e411298d28c9e7642c6f5f28c8b0bd3e8963731ac0a28aaf317640ed7402301b10e9800997ad9f1248f90f63b84c26e17af4e7c0369e7234da546e1fc959246bf0bda1418d5c5e75ed20a9206c9bac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230642fbe938b80e4fdf527644a5a8e8db1e6baad99d194bfd6044665e60bfc711ff429e0d0b68cd7f28b3c07dc472eb4f6023100dc55c92d91068bac50a06ca6d8d8860411c2eb087cecdc455b847b01910f69e8adf47da7887e76971b9d050b35c12a3c0302047c435bb500683066023100db2ac28d1ba0a3a7d9684cab69553a3569112dc1560d518537b66572d86ae4b32cdd35a7a0ea80c0e4e7fb92a50ef90c023100cea80c61fe34e315a426ec82c8af13d4d01fa2ba80a266d87a0257beba2acb75ac2776497d552d866d9631adb61c13df0302047c435bb500683066023100b70ea749618708a76f704bafd2ec968d7eb051d8c7e06f943c674cbcf86ee6be095399d0b2e9fb998bb342832f840952023100f63f1ee100fec247363c4b12f1911c4bfc0fab69fd6bb66273c28f15c3ffd2c9e40e698c0f03bea24dd32ef2904c363f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230560558592d5f9b48e43473323cfc46b70b918a19ab60e1115ad805cf73bf71c654e7b3b0cb9becdd4dd89d71235f95f102306e3105af09c25717a904c118f9692ed42cb015817fe910b22787c52793d2c8da9fdbb62598c9ca029fe1c04a40121a550302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302cefe2b2ecfe1cfc8dd5190aef8b991df93f3550321e433204b06f81113b24011aed17789f74273df1280d2af6c9e46802310097f6d1c7aa208244fd3215c8ef1b9466cee5f6270ea0dd619a1a774ce9194357945cf723fd6c04f8ca172ad9040829bc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fa40682755a88ee45f6a777e760f8aef12314be7c557e0eb462c9c92385387d3a36b5260a4d1ff29dfc6b2b7969460cc023072699862dee839d943b01d462b3f0c00508d910dc384c5bdac16f42ff7b37c9510ca9bbe97eb4e98291e96423e4a5cd30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023075a981917df16ccdc40ab201061f435350f3ba79ab0c7d9143032acb29be4e708517634e9b7c97ab0f303bec0d3be335023032c977e1c97759ec9b895273db5eb148625a9356e87de658a08bcd2190bf6fdaecfb0fa101ce495e01b8e38211b552630302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b945ec3d6dfbf5d51e47170f43d2b79fe3af368c48a426aceff9e5bda335157748cc6082f0f341a0a86f12999e526492023100ff3eb7c6b47459131ea3ccce816f7d98397ff1ed5e1f569a885e4144074a1cadb3dc0c66ea35b0de937b06196931842a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310094f159575677df9ddc20fac1d02905615660da645ec1e6daa43aaae29c5b528900573f0966b5e8d6f25d3c2a86c188c002302ae6bac2047f5b6610456832e83d4cc14edcc6a27f487a222b4fc680a9aaa7412b0a55999f44676b2d76ebfad804d0270302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e4dba3b7bf4fb117f05d6b696362d40e47217351ada7c0a2700b454b78da619cf03153b4b14d51aa6b58d8e43819a6a4023054c0845bff2a7f7f8e986d1c3561962d9a4fcf896f64601490abc3c57a4a63aac8c9e778e86b4772cad43f979c6bf96e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306418f52aebf1f1e1141d145e749398eb7f93905008759915e6794d5ba423935ef4483985006cff81df06b5ee7daf31e00230553509ddfc92f184fb1bebcfb5ebd1502401121d9963eb623d994a1aced1d52d43cb4bc9a7b12145e19a90f5b7c51a0a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100eb3e07718a182de3c0ac43c1de07e210ec92aad0a33147e990b12d816dbec8870c57201fff6005c4f8f476b39661e4d80230207d158df953c571cad4894547cc063df413444b88df63757e8d9b961d15518648d7854e0afa75c373cdd8041408c3e90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301a3fd2d12283acabf25beab87c4137fab1b30512e33d40f51cc889fe1db56e42ef4d5cd3a7b201dc5ec54faefa1d31cb02306aa58a9f854c82bd9e3df96e131925090d665c571f502332eec9f8dd6ec29a8b6506c8946a1bef809ef60cbdc2f98c450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a38b7f5650e4325de452c6eb714bfde2e8a1fd8cd210e4f89bbacc4310a6410340d3a1debf9ca6517785accd05fb3211023100cbbc8bd3bdfc87de84efaaf3b2d668e06f5d9a8944f6576f6f35f75b8dc90099ccfe89311128d9ecba678677ad7636a30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302f3586a1f381b43100f02b9198a4d3eddb4d789458192367b5df518907cb68a6695fcffaba4923c2bf45eb10112a7bcb02300c74a1e705cde2289782990c5d52c5d0bd36f0ecce660e238724473ff702245db03542491fa5301bc03ee4af27c0df480302047c435bb500663064023061f18e67b6a0131d5e3ec44700be09d66072bcdf6c5ccec0e009880bb5a1d487ae47af32fe8177591ad4889cca85084102300524988fb3b67f436c979d0da35762efa528219abda52ce95f1cb41346ed1ab9e2600d6110542ddf8c36ccca20fc4cdb0302047c435bb500673065023045226c46a6db7f9ff4a572d31aee516de549f024f4502e1cb8cde9f2a734c29956ac8bc01de020a8be71f8d18585e71c0231008334b9f6f9a93e0affd37e7e7ac1849bcedd39d48656e31f9696bc0ae30e09f24648692f878a953f5ea0f0def56b3f3e0302047c435bb50067306502305d79321b81b29f74e62dbe54e4d0e4de89e08c1524871415dbaeed6e39e2cd20c57df2fea946a49731660f7ad51c2c8502310084c1fc097c1d868e4b2095b4b3f8e02f77c2c04196230c2af4d19ae5ecafa4fedb0b53c550d73e730a9d3389af4605910302047c435bb500683066023100ee0230fee5848de25c51bb72d988c561712fe420c97466d1f2109729fcd7e2da68b1fc808cda0ba4468c20cb7feea5ff023100f66f59d944476216fc334d0098de952fe80b48e2c14f733bbff8ecda0034d65a8e4f96cbb82ba093055049fc29b920180302047c435bb500683066023100f263cb67639ccf953f79f3b7df6cc1efa74c68cc1cf8b4be4c9e09d04ec4b2611d84b0f36e0699051d0b9ce7accbaa31023100ddb62ad95b46becf92f0b40f82b79515cca3fc3b5416a93fd1a08928883f754991e96501ae6d887aa9f603673df00deb0302047c435bb500683066023100c2f06d7b14f7a71749152aec5c7037dd7f8e9b0a9dca232900b36b999ac85965dc0c1be3c87f8dd2895038a3e67087f30231009e39a31d42df787ac0d3e75b5221c94247ca5afb0eb244cfa7fd3cafcf10d6bf1a5bf1fda5b9e1c9dcddfb4c2d7115c50302047c435bb500673065023100aded9c5a2e897a1a52d8c3fad468cf54e342aeea412d03a2c9de6f6112e5de579b26de7e944bdf3a1c443325c287345302300db4c59210ab340e0dbc2a435109b6347d5d9a5c7c13c456c2fa913a5f87ae1b23b23b51594409537e341e9f46840e5b0302047c435bb500673065023100e739e5b01335cd5a4f47acd352f06a7c1e1142347890df3267ad1d5429f62dad7de29bb71a1741b9e5792d1a1344cda7023043656bee31d4597f968fd4f868befa1462f39adc97536097a4ecdef8ae8ded3e9578e5eb9d103b55c1eeace5a3ae1cd50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100882b51572dff2c6b9a15a89295f2e70ec4ad64fabce1e9723ea7630de07b80780e99d9dfc04645c1b1885f005ffd20a20230274d0ed073c047a2380ae23ebf8c0803060ec2c0ac285946d8321b0e65a87b8c6176fed39a804dfe6e18640c9f390a7f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302ca48013a5c83d4fa9138b8d13678cc18a4178984184d98b265880b452f25d812444472daa25427c4c3538ec4b4ca0af02300dd1db145529f8a4c66675a39b3176abab6520e8c341521a4b0d018b42c75dcd53a46845fcaf04b44a174f520212ea520302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100eca90e9116f2ef39dd1dd1b6b9ce0819f09a42ee33558c01bf4d09959ca682b7c827f5a7d59c9079d23213967f50f962023058568cf820be3a407c0a2d23ac2cd4f63605cce61b51bc746b302a29c81655f3d46d975990c55b7262471764bd42c3230302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fed5d637928f67da69d6e91679069a2431afa8d6aa8b122f6798acb959e34833e575298433e4f60786e7c76b899a8e1e02301ddc81cc3c4201107400329b38192accc62db4274e3fa2dd001fc578bb40a4adb23314276eff847215236aa28565a9830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008b501883b91cbbfb875ebc5d93972bbe8eabc6ad8aeb4cb10e55317d7b995855ae2c7a95946c374f03bac8b1583e44d602304f8a887abd2ef0e038640d6096b3130940b54bb37acd7e04f9396e7316f6e020a7aefe259918f93b6827012321a8e2130302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e000d40b4b4ef9d54699269e96b35c2ddb894f99e5f4cf6930dc4188c41310aafd1e6b846434a6a935ed1c77c81b5054023100c03aa7607b003fa74ac72ad467f5a06c5adb2c1ac27becb36c43d126acd295e3ead135103b694ff387bd8ce108f895540302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100eabca7651a2b73f323d85c76fb694407ee5944df98b0690fd3aa1421771ff94c7c87e8d29e2c6c4bb47a89fa293ed59002302cac6237126120fdb6cbfaca7815c1e75f928e2dcae08c31f53dadfe5c4b415d0c4d756dbb02ca304385a510650131a00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301a981b1d8ec341d79df5d3c12018d2de7a8516fd7eb6f9fa2bb8a244208f0352d118152e07f727293ce86b85a51a454502307764ed5574a3db7c0ab5124b43dacef0116fed04b7ad9f085180ec657907729ba18119fdcf70097745b66545e2018ed70302047c435bb500673065023100f7e04a986709ee9b915d2f7ae319f1596b5d3a97f69704b84e6c73739acaab94fe2dbc12f03e319703c65c51a77c00c302307d2dbc2142c513a0bd418b707f9f69ce1acd2fdee126672197522fa14ce4a831d60a53e400f7de3aead0147cabc824620302047c435bb50066306402306cab0f6f2b158298fb6d1cc2bbc9c16ffac0adb591c6b9ba4ec262fdf5724dc836b9dba8ee8305d4d2e20cce0d71b857023030b1ccd71b861c1e28a88d5b6a3f50d33ff154e057a98ed61353f5d5b206ccef276f07daedec24538e8776c92bdc4b4a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c5b5e5985bbf0e2803bb6650660b96e35e33caab029191ba8bfa89ef756515148b6dbc4264d5479398eba6bcfadc66bf02310099e36d6514aa426b40fff0e1efe5758db0ffaf29c20e5c93b0ee37c6441602bdf039097b07961261ed46db465ddbdb8f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307cf26229b5dcd49c64c15f22bf1229247f5a8ffaec751c12736a64d6e541c93cf9d5980720d6477998f20e20377ce3b5023100f1627ba74812637f5d5faa3a65c80e7eef0af171c45ba5b1e6312acd17b121ac04c8257868e23d7559cc994df3c49b0b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023074a668b1c6587d7bb13edca7014189df288a6d6188d70f5dbb8907dedcfd4bc0bf34be55b7e2b6b01c45eb3adff545c9023100d1da07e1a9ce9c849c8a426a02f52ecfb41c4e07771c24f4db4232495413c5e7dd29f8e433875d4f0705bfa6659515f80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023016a375ef0300ea3e331a22b8989da2ad13b145fdd8a4faa71e535bc31d706c6bbddcd7997e05a3f0954f6145dfecb2ee02304c9a984208058e73b9199ba015dd499db4d23b27d799547c0fb5254e8bac2835084b166a4ba506fe4a5d8f52f600aaf20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008153e625d9e056ef27f88995c5790e752d6883d34963e890390d15f3fa5e87654ac060b6827ad2b43f84a778c11bf4b602300def9788e0fe60142a68a33e71b1fa5669a7bf91393ba9e0c9440904866a9bad1c5d5e9262f90a3a7dd4c9b91d08dc6a0302047c435bb500683066023100d037b235c293a845bb15a18509f718b899923e38f17c7d8bfb05b759c601dd90b802e863cc27b9d71e022867afa02864023100eafce854e21aaf2308a4ac43d742f713728581586443ad5f60140ad8d78b22dd569ca933363586c1ce7bba252d259b1b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ecd232112c915575d03ebf00a05a39afed1bc429c9081fc8158d632c42f89dc4b01b2a82519c2be992edbd89c73187f0023100fcc23e8508ed86df148440a7121b5f7790244ce0df6998d1dfa17ec81e5f47b6df39d87fb15ba0af7a8aa972d1f5e2c70302047c435bb500673065023056b36dde905007ddaeb1c5f1741b65bc27d6ac0493306d632664dcc3297f416eed77a54f775c82f23e35d13ee90926ff023100d46d00077878adc3de4f1331570908a2264230539d38d8688b12a8642151f143b821143be13c0099f55c8d2cb45bd1840302047c435bb500663064023062030c2b019acca7e64dfd3437466301c2ec4fdf18dc1a7a5ee002107364f48d5c5a27698ff3617640a033d7451ac7fe0230608db200b24a022f48df1a5d48f9ecdfb21b7551acd3ef95015b47c417b7318c74a085fb8ed7469f976c9f48e56e3e7a0302047c435bb50067306502307830777acbff325be7cd2ad701b0c74d9974109137695c6afc12a7ebef0f4d42155111df49f056180089c4643ea46327023100faca391945e5c425c3e3e603fd9e6a5f6467ebdb7010828a872536166bcca684b06d3189e5c5b4f5c12e10f13574270a0302047c435bb500673065023003d66f33448446fac46b64490d3c7937395466f8325b6c21df90f638822fcedec389a695d1b03761173c50af8bf7796d023100ff0825458d5e64a79a7eec6094c086a50843d7120670c6d497320c4e41ac854fd030a9b7da2415d5b71475e77b35eb770302047c435bb50066306402300780d859b2c03ec037dd8d801996e369d0d73b7754af54da8dbec9a8c8a729723429f5ba075c779b92ffcb7984dacb9102303e471d4cb09a78b9ba20a0ea2b21ad6e8f1465deb75c2194710bea22c759c9ca667e5a8563cd5bdb0cab0c82409b73570302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100aabbef92cb580210f0132a50dc938fe001c3c9279ac24aa14e4a2425a5bace4777ff415b8964ec37e43f731c2b0902530231009fb849c0a7cc4b92b6dc575fa9c876d253567dd785d02a2b09cec5d4603a2950b1634cf4827c7c56b44589375205782f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e18179f547e79231b29c9fcec931b34081b320740b9a3f7968727ce1f1d0f245dd5f04032eac07dd4425e831265ea8d5023061c912a5a296ba7be15baceb7660016f4bc1465eabddfea6f841ea47138dc7d39ce4754c3c1ee510e110f651363cd0770302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023069689d9e07f0e71ce031bcf198bf49417dc356b97b55a837dc8e745b06d78f26157ad4c4825dc282f10095d443e2e76d023100de8afed37e71cdb3b43c344f8a577be15fe542a7210a7ecf6d9428dc42f96133031959a01dd8700d079320bc8d468dc30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f07ee0fdef0a03a4ee24e41c5086985ce3cf4d465eab38baaf9fa03218d0b01b48d4847fe78a7e5d70ae6c7fa5deee72023100ba0d3211462bf1e753ffab0e422655d5795b7ef05a68dea608ac08c1dea7f0def40696dec0e371546344d7242733ddb20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302a56ce022f46b8cc543c11e25636f02a2397c49a0873fd4ab52eaef93f39f212ebd3e09f0b025b1f55648ec191c03600023100b220bb4140e8f85115c01468a70eef95d2e53c4d70e4282ade82e1cfb15077991c5285f00d1408a85b06b09a9514d80f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307ae7db16305f7fac6f1f7b97c1b6ee9bb176ca3cbc64aa2e0b69dd6d3f353208295c8b852c1b88ea9453ee32c8a90f2d02306bb599b99da0d82633fefd1df2ee7c9f11dac941b15a0f5fd634855b30bf480ba366616e792e45c4eca0156daed9fe750302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100da1511d2de27ff367a6512da3e6afc16fe55607f616a0de894a74f9e886787e326179a9d5a3c07f0c0874e0344ea6b44023100ce1da2f0b775aa82b1b573022d2d28ed2145743c9970535abc41494cb810322fadb062918f08733cadd3a0c9a698adad0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300f8eb91b3f99245a0f456eb00ee57e96477cfe713b863d8bd5b18e19d0f210957d60d429a8deb8df4d7f83a64eb1faaf02304e4bdab19261aaf40c4ab1affbfc3c8796845f2c69562cb4ecd3d6004bb742d3e972593acf8ee0abc5d367559d916df40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230390a2b5e27d798693dad4c794ece805b618ca399f5fc2341d59be963f1ca162d2aefbd92d98309c13cbd98a7a9bd015a023100f18c9a22c0ea35fbd5d540b5458d011754049b0567aea458d90571fb2181cc3a34ee8ea5f862369ac4d9b2425374c0330302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310082028098b90c52faf7a694f770fd8ef4067a0bb6372dce5ab2bdcaab40df4f8643334b475b61bc3d82dc09d30c03b3770230022eaf9400e14a86ca7ada01029bbf2ad271be25bc4a663e95ff79e179579bc3674306053b335421638a2ea4bf4df9a80302047c435bb500663064023038a8d3f69820ed522db09574f92413adc07e60bfae1b7c14f3e2678ea5501a493d9ee15fd4d9bd37cf094fb54bf2674702301c2b7f337e8c026261f3cbfa6d40ff3773b07a9a2ad00233168e111b7fe66eece69b2c036de74bf3f13698d4ce479cf50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023071700a83ee8b1845d399539cfda40c2d82a48127a27684fbd9d6039674a91510a92108ad51572ea62d3086708efe94e00231009635b102f7dcff4bad6fb962d37f5a1c7f46c8177f5b1844a40ef7cd6f1a0225357df7ca7f75bdd74c0b23177fe6d9930302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023042fbb09ebcb41213833cf92bc88374d41492458dfea338b88b4eecd95736b3361216444254c5965af9d7b253ef891254023100bba2d3a500feba94781e55aafadb5bbad47d730c74079c7a6747fbfc3dc12651e38b6a6c7d2faeebfa383e4e9dab111a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e0ce9fadf798f4d52e676a3d8b32c19dadab6d3b8d8b1215794cc249386d6de856aa85627d5efcc51b6a21c2e61cdbe402302d522b5755b7272f565f7d1280247cbb2327c804fa29ec1eb60bcc30652569a1940fb3d05c17aa50dd2d64daf1f635010302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c1b3554f25ba894d3bd8772758be1388a8494a056f15730d945a5929c88e2834a852cc92c411dc2ac6eac7936ea45c3f02300559172c7cd8462cd4fea554f71276e95e231e62fe815b5febd29554f7d48ff6ee3de5c55048353267bd5ae88f1e7b2b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f6b2c9680dd3df13149f85b93e9c43abdd7a8d5f591e4458f2f57827c69cac57a6cb02fbafce58d4ea9ff18a7109efea023055ed7612224d865428a46efd74a97118ee876b2e51ee1a97ee053f5a04a5f8ac89355fa58805a87d43ae83320862eb330302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300259cd358fe71957d5d07e2c77656499700b110978a284f48a78fac1d1240a1e144e451befa754f8075bd471f8dd227402301374c199980b8af556efcf829608003b7aabc5ab31555542972ae83699e3afe54ecb929bbdcca1dbec6a04625dc17fdb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303746d22b78875fe582508308a265c36f21e007893479ebf211ed058b3f04349aec3d22e5edf089650be7be57fb711e25023100de5e8430035310e7c2c9ce2c1bdf0b3420c11e87f9d904f233ae7fb735dafa3c3af8fd826477068e57a1567197fc71020302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023007c922479b552fae931037068a5016a381b54e8ac4ba3901fca1fe1c4b66891ea37442ada39a4f3b043b78d4f6ac2c5a0230320c12610ae546866659659ded42adb3f440f5e5aa8e939146ecb84290e4c11fcd9970f23df520c247573d8422eafe7f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ff1ceaaf5fd904ed6789b67a235dd7da470f37d71025caf5748044c05b8d5164532911ff86f0cee3383582b505f3f3c2023000ae3fc1cbb014a51f93de2b1ad74ea52e3b0b10441d7e3f030da1caa825a460fb87a1a62a55031814750f5977bac4d00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306e01735c6a446e2a13256a647fc7d706eef77fd1c820f300421ce32ad74bb28dfb781f1b6cdd1f2b04e173460c4403f6023051a3e1928fce6fffb9d62d11069ae02aa5b8af3f95729a66c736d8a5c155bdf27be978f4aac1ddbe247dbff010309fcb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b8e5e670ff12e1a3b2abae7432af860fad8380889729866b3adcb2c711eb5e0ff833656b0073bdcc27c57c11a25a1585023100b1cb6332789be0142252dec3ef6bf544e84a0049ddabef5146877edc3b03905db46a05d637c4adcf0f79b6ea753fe7040302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fcbd8f22d69dd6ae51adeaa286cc5fe49b93ba0793aebedddc76fb40ffcb4249273150dc05c76c6f11d793bd761d551402302dd19e00108223e685c07ec2f9bf7f2ae6adeee3634a640b610464ae64191b2d3507506ceaf77f8e33b4779f8aa900880302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b052402c6815421b1c42c45f2099396a80fa59ae5975a41021de9605203583d844a24be4f4041d04146f87a54d36a4f00231008d5086d46d2f6516ad0f95b0a11910a0d41f2423186ebc923bcf754a39d37816d6befe4bd7d178f30dd32237788cbee10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300a9f3bd7a1de4c697c47945637063289836b45b654bbc4841cb5cc58fef787bfa4b986b30a8c366eda3c23a52c810e1f023052e8fc20b4eb6e1d48205a05583186149612305f532c34a88a7403a9734ea5322b27c9dd1b2ac30da6e13c42288e019f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305619606eacac44cc1ef5a769af4a07d951f42a8f7cf5191d88e1b53e08d98600c56a5cd24d6845bca480540b952da05e02310097b8d0476f1862d5e4a0bae5be86f80f816653c2291afb629e540b934f74ca16ec6c34f05ae36e83312bb65183fe6afd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e26a5a65ed3380126d8d30dd200fef296ee72fe876d47fe752f8bfaf7a4c2e340095ba74733f48ee89d1e29f913381d3023058e5d4e3cdf52eacad757d6e47c321e575c48fed6c6ba092a73873ee2fdef3da40cb674c0d6f2fde9cb6ce11a0adede20302047c435bb50067306502302d6929a91129bb446fefe98d85d2c74cf7c2ca13d6522439edaa2813d43298bcb2da129bfc403e74089f08b3c70ff371023100e18b40e5c346708e941d6ab8ec6f575323ebc033c8cbc231de21743d815be7a738b55030ad5734244eb0777235779fbb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c049f62311f420d59b8fe0a67651957a36339b52f94e69e4ec64bc8240364ff988f57cf521d630ca8b7cab1d0b3bb451023100966976689b9787603310b56c8e62a8a51200939133b8de3fdc34681afc5b4e2fd9e36d7188c2aae4d234faca3237b8890302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301d0fde31fd10c72c2cd6271b3b235a8adb57bcdd6e9952ccdebe524ff69adca17717d99533a7f2c73de7cfcb1c08adb8023069c00dc9079fc6fbca3e7d9a3189d59b4cd5d0f2eb28aa9dc516a793415ba6d47d96c794198364d96d0c66f5859f1f0b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009d985190a2328ef57fc3edb6e73afa7d65efb8b3c48c0b69e7c4c2ca74c80c1c8722d9f0a4b4e9d42dee75ed91ab8bd0023100ada53c432ae8fc2a7d18160f661a14d9a8e1982b516274840d5295027b3f716348ddfdf9d6b446c46139aca5c77c288b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f07d7ce474640836eec319f4c71924d532e5c57f126943c0f4975e5654a8a079c8b36ac8bef5780385256470a8df0b70023100b417a30878ddbde7f4086275499b128972f1430c5eefd1b40a449671e299dc945bc68140e3b1817cee3d2d4840876b360302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023076350c19e1c77028e82bba2afd124708bb0c52291f3486cfa89f74463297d0ea396192e93fe2fbb1bfc28cb928e18314023044b540526fcacbf4031e547fcd9ddbc467462a423f93825dbc0ce6086b5ff359b5fe4f2ae3f5a57bffa27f2d5aab4cc50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303f2de59989f013f3e095ff3d116c7288c764f413cca6b7efc8ec2eeab485bc1d68dae97fdbc3c66eda1de7028e9b8687023079d86d7462200a41869f963578cea6e7f8fc9f1fa6b67664c40c48b8152d6aa0620745c4942b77792e46abe98ab8a2a20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100965446404a87adb2325c4a431733db08cc61cf3de9e00d48bee469b1ae5c0fedf06a34705f8d33417af1d5341d3371b6023100bbbdd5ac70e074d2ccb30ebd538d2b36b7dfa491df725290f0313507d9be477c08c13901ac481eace3fa191db15a68910302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a06d0779acc84708a4e8e28c1b879572ca32aa1346a4370faa0880025d14491e6fe780f0fc7a5c9497056e2dce79532f0230645dff2c29157ec27e9c2742e494ef91d763d11e0c451438214db7f5444d6ee201e654f1ed26203a52b90bf5e58aff6a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306e77ea69c5cc3772500664f1d217a9f2230a426a6348fbd2582fbf9d1ee460f7585e44e34f9c9e04dbe4f54ee286995c023100eb4c23b5edb91e8b82578e2c8fbc12708f6b49c5cd6d2a820211a895c486b4a8b1e1e3621e7ffa796feb1e577ff9ea7f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023065fb722b302c94ad358762e641b04669ba3ccf3dea652cdf58decb888147d179bfdac3b80d7a07ff5e8e3fe855683702023047e473e4154926395f2866c629cafe18f56d305909de73a0ef93899b92e0a13762bd7c8e4b3c0de2affa9b15cbfba61d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304d54e77da418c8e9a9cb428d1e96113d7a9888b1e7550ef9e44ce190af8dd05d469129379531eddf4032f3d0e862fc1e02303467486e9ecc64ecfc71f617515734d0cef62270dc401fef4d1f00763a12f56452b8df970ea9f15820f7e2e6054800780302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d81b24424a3e60fcdba61ac00a316bf505237fbfbf678008bf27d48c0df03bf893ca2bef8d94c5435a314c7d08c208f70230226dc8a88c092c6a45ed280e29d8b9eea5ddd51c25ab47d783842a0b32194ade473018d3b555016442b045da5ff4fddf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100886209b6458767de78b76b2b8c4b127d60bab948d397604d28bbf1527e075a965a55e62307d88e5b29c9998846723ac1023100994d076dcbe2f4c9de70cfccfa5592f352df6f987e3c0a819c25adfb767cd86752f1ad61da3e0db967696a7716f360d70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023057e4f661f70908673a51fe4ffb1e612767f49c4a70149e98409571f970ed6f53142f60302e9c9521285b47355bb3b0d402303c9ad9e2617e71d9fe7c4be0d4ee7c254687ce5996a9a72f40ab1dbf59fa142bdf7a8e0d2f2be072c7ce84b894db74430302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306cfe015f130d0dcc5b17081eddb9df7d063758dcbc8b8616e88ad30a2863f3a96f874277683386b57b4f64533a4f822f0231008fb8f4d7570d591e5aae0212fc1d83c4a5e01320b63c6a554b6f316ff6ec74df7e864987402ccda2c072dd4ea277ab220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305a0f0d79d2a38dd0ec99fc8593e6cf99d703270a31ce15807c8a3a77359f53abc0abcd7ee0bdf0595e9812f4f9733700023100a5d012d95097702205a5d1d075b28277319eb33fd2474157fabd06c09332504714666d13218e35304b650251d7c42f770302047c435bb50067306502305588fbb66e14101f3477d9d7932cec6b0b0b9fe4eb5e439f83859a337157dc1c4157f93d3d193d76fbd1d71b35b9345102310088b20dcfc4b7566d5e623043d70e7022ac5d7320f550a4c6ffc11366e0a27d07361c90c60ee8ed8477c2c8f287c759cc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c94e95a0b14662f45f6d9aaa07e8ae1ce739e9ce8d055f2ff41953f2dd5645ff95427168de030a46616790a1f346f804023100fc3f3c47dfb80027e51657ac15f22fc4cf50bc3a5f7b6439bc6bf9c5a50e308d12d90ef84cf829d87201a3fa6a2e63810302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f83d556022a616f0e941712e0a1def64cedbfd74593fc4492974d04ad004b0bbb7f4cabb991d7cf43ba8cc7c703cf12802301d72aa478d04e2663a5451d70dd8c68e8953aff199dd54f1edd9b012734e98ffd8e494436e4177a1e226300b3582e4510302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307ea5ebc714b9110e34272b75346126b9815039413af612e76a36f5bbb60feb49b8f4bde99c9087afa108d34da55ee432023100a5b2a64303ec723f26726a4552690b1b9186fbd4f133e7a75a199801975b2463358c9ce0cda5324b51020ec9c7392d530302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023001b822463909e103ea599f76f96adb958ee15d312e9ea1169606f278e153ec7dbe084033e9c28e6d84d2fc28e317da7d023100ef8bb870c114dd922c449704e5214706ac9eaf9090a894cc0ae255982df1fdc49dca6dfe3a48dadd08bb9537f61019e60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d202d0cff319ddc7650cb9e7e99b0267401c369b3e1aba5b36ddaad3cbdb82b3b6f77e2bd0a400643340f4e0407282f7023100baa0b5b35857ba8ab9009b49ca1dfddce587ec3ecaf17a525ee80d073848413aa0d5329cb14734194d701451573222d10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301b50e5011a13d807ac09d4c3406701e2fd08aca3f94913810f2e03cbbc27ffcab4fe83fb0d364d6c9c64a21b3d5fe7a7023100af01227da41b61964b02742bd0418ed40d05aad10e6c0933d118088b2c605d1446ac44e6270d15c86c58ef5314e8d3c90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305d077abf5b0f4754bbf31ca16130b7b042c4f62fc61748084e86a021794b5897fda3549fab4a09618fe0827664188c5d02300def1559e73365869552473c3af20aa9f319283e6bd4f88f0298f415471e600cc7724b3177df279dc11884733ec457100302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305ac3831326c8f44d80df105382900b1a97b2f467e8760c8fec7000034d542f54c1b77837fa45279dd385e7f5905b2ad4023100a82ad2fcac3a9acf3b85d87d32796024519262d4b53e8b07cb45fb203973ea4799775e8875c9a740dc4bac0d21e849990302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a5c11267678b4377155381258e8ddbfe892538bdac6265be6bf35287ccfe0ed447c38def4a7e6de180df1b476e2e094c02306c189b502785fc4dfb4bc68a37e5f82c5f1eeb964046604a1101531f69ad5d9dc343d136a9c8d8b6116c074cefed3d3e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230534fc48ec795c5ada8e7f2e814f5ea199eab8ddd3e822a98bb66b1f8c8115dfea60a6aa73ebb0a3c33469058b97c566c023100b1b8a1f256964bca6268aac12b96849f45d9f7ed9d3e1c5d492cda7500067aec61a44e226cdfc79f52eb3c20b532c7350302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306e1b61cd922a57a89829f268e474f6733e139a7c9c8920d79f0ed3556bf69c0822887dd5bb8888e22a464e3172cd11e0023054e7905101ee5b2d42ba60dd9f3f65faa1b4625d18642d1a2334dd99dcbbdcfd4a6c46f166bb67b4c4bbfc548fd7683f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ebd731d2e49800d86ba5bafca8c388ac8733fdb135424aaebcf7c0c90e7c414856c626ae2d6125a138684ffbda3f28a2023061c765ca8288c8a8f232cd3e201f570c914f12bcafe8f513e563454cc13410deb9933cc3fcbe917e3b5490db1790093c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ac9caa01940e20ed5aa297ab58434dc0e0eab1617e86bea63bdcec75b1026e30836890d141c11d13d642e5aa6a727c4c02301b27ecfa0a664e68f3f1d2bcb6928a1c244813a824870f45396ee5b06b0402447dfd12f71789da9a5832debc90e46c800302047c435bb500683066023100e3fcb619e4701f047aa16d54d4507f4d7a6807144381eafb84957f09213b502e1f3e35b93be0c1c1d4e37a0a414aad90023100e10c6ee5b65b8728e73d879471f12b22556d9ea71e9ca6df09fd20d1d144689320758834005e8628274749d8aeeffc870302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230045f7fe957b75ec11e58891c45d394d477f5a7bcc2ea1811f24a5c430ea33f7230c653f97bb8729c4078b0e226cab3670230229a58620dd0c69a41d42b25c2d6620d2b170c51569fe991a8f7c6c12873026656db29200ccb7f55ca92550cd4efb8c00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306b22ae8124ed2393de37ec988eeef444aa72a247fbdc7db5d0bc09baad171c743552149f31faf56ac0e86ed4922430b2023100ebbd107a46f38eae4521adc5d50da449fe3b0d49334a9bf60d02e977aae5341aa392248e3ae4bb6ef7434f0c9c9a59da0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023065e358cc8f1f11eed46391b5107999751b5c0edec9f0c5b9be7d120ccbc740202a73c137f8151da2af528752f4959408023100f0c6c6f1c9b236524d0a1bc7842a9307eafcf7e4576a39307ab4bccc0ccabe5db91daa5a7879b9051ed36dddb52848050302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230550af0ea85853d9f8c7c8ed3339fad29d7afe57d7a86f1f76c97b9e6f3ca43b19e0e9267e2ca501ec67f1577aabccbb602301b74b96ddad3828ecd4a9bfc795f3ae02b8733253b87abdb9473dc5b50e40d969d0057cb1cfaed61ed94ccee0ba66e7d0302047c435bb50067306502310098b833ac7d8fb74c7c691e0804745059a4e0d9dbf6107b692c52430b4664413e4b749e9fe2fea5599fa956d9db0a69720230039bea80a547edacb95193fd1f18ca56168a8115b7c938e2612b6caacfaffddc3e9f40028ae16a7db8d9b6507e60a9df0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023029c24a1eead616e4bb8e2f49af7d29e1ba7fae730df627445131a3b692ba095914e7f65a5ffb96fb7368b84640169ebb023000e54e9392df6edab8710c64a10619a5bc49437a208f486beba80ce4a7ff3d0ab1b35cf4a46af3d7077d06612d086bd00302047c435bb500673065023100fd7b58b253e4ec0a1b1190f53755dc440d9c70c0625f903c56f01ce28a801cc33cc851f4bc80e75f5fdb2f73cca09e3402301affb906a997baa2fd19d00a516e626a3f25ad54e98589fc2f987facc793a2408e0c83076d9ae511dbcea2aad36403ba0302047c435bb500683066023100bfb7b86ddf771daa0f6a3fa489ddd8c8b98dae2f1a313b7507bebc6a26c92960491084d749238bb1c222733743f4b17c023100e975e3697e8d82ce074729cace309547c28c51964feed683a4c833f54e318cb492a6c22baf837a297f407a0851ce66150302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300cea8c6c8127d3852b6afb831a89c9c8c61ed83bc9e96c35db11305b74d0700deedc44e371b64fd9adf33920d290a68d023046f5c7d429dc91f0e5a770c976ec7c534cee25924490871ce43ed5cb6c15a5cbe99bb283ab072a14e6a8a14ef5ac88cf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023037ad9a65dfb4fa07158fd9ea811dd7f9b13c0c9539ee4d2298146b84331f909686932970130bd92c5e0d7ba0affd9fc302304d1b1468f0971dd774c5def1180a9051fea6ca9fab60296f9d8f82ea60138dfe7178c8fbfbf6fee4aeb9217ac211750e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d45712179f85226b74b96f9e766bbcf320d8f53eeff00810e2e8466b963daf8eaf3d723a9380d35ddecc9455ec1cb8bd02307fe4ce1090c7e728c889c147c0dba9a8f52cad63643825327261d29dda86dd542f8c530d48c5992561aaa26982d7209e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ad25f9615dcc7de15ba446852f8f8a73616fa779d0605c13e76cf9c996524931aafd7ec9bc94123fe91c45523f08f687023100ec94fe2b66cc584e84da618eb00e8234bdc8ac3f62aff546169cdff6fe01414d77e52cc9ab8f2f9306954623cfe6a2790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023066c4c66b940352031d242da33ae63ba2ac01b72e6d802811c9b4b5abe61301a1dc60b82cb60d6143b02d8787fef77324023063ce31dd9ed3901e6694947aba6720a7a8abd818aa894ec43f2b998683da83a8bc2e9ab461e8c7a9f3bfcc78d30e71c70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008c1e60f514e4359ac3ef1c7228433d14d60886b7d9b8d0a7b39c9c9995d118c780b9aaaedba786bd7d6ecb096476e4bd023100d4837191dc708a79d439bf6e68d7d9375ae1ed948e21d5e1f33ede2c69d2f9170672d123ccf1a672f091252f6983d72c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009a7c91e45fd3a453d605870a3765204c1737147579d2f83884434042519bf40fcf76369737d2ccf85a9cea4b972ca5d3023100f849211532a819aa5787ede8cce9daa69db2c7d0e253ec8b3eb0e4ffeb14cc1e321df811fdaaf88f3511944a7956480b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305e174cd4f7d35d152659168f3d60d292bd8d7c7033f7e36e27234bb19455f7263285f92e5d5eb75a7471b8830fc863c2023100c5822c68e1d18f0669b57d6fecdb9a33f725756827f3c97aec68d26c7a7a3087555f98fb0b9f86c7f8edb43047464af30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c4fc949a49416427a0b82a21a043bf619f22753891502bcb9c9ca97b3c8152f8fded707078b79b48f00cd198fd3dcb0f0230733fe319d4f29d1a843fa9d2f4bf290812cf2f458871e89dc73e71e275aaabb6d81de59d972ef734a5366b379920f6a70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cd2f05d74cbaa0c5b4d41c5946b6ade84fe910c0a80014f05d9981e8f6a5123c41df21286188b3853a47e53a8358c1930231009c49b28b25f0de666299f9ca5bc5929ac8bc5547b9aafe967551c00ce9465f5d232b9b644cadaeb7d50518b0a2df0ed00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bad9b1c2ede42e29ab460111158fb6e70f32cecb40b15839b1776aac48a9cf80af2b023d0ec1fbe385c0165f5fb8d91f023100b50a0349816165367abd5821a3e41587eac50275a967dbca52ec0207c19619769b08cad10056723bcd3ab14e6dfb15ae0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306d0f5cf86040cadb7af668a79ff146996339d18e3a31c709551c49fd2cc480e5ba50cc32679d2e4e4988291a7a1316330230181afacb96e1b476c44379d6f9305777a78fa717b238b6f0883c63552b51f520ff65f2ca839d6147aa07722236851ec90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e5c79bcffa8174f115bb5a45e4ca9f8661c302c0f5c6ce74e1f1e076bdbb6193acba34f8967c2d2c3fb28909002c94910231009c82775c8a91182180f124280ce54f6c2e31b04fa3182edbd33784171847e151c7059ebd16f16a7152e6285b88da46870302047c435bb50066306402302aeb1fea45e8182010dff6bf55d7819f0a312f9438f4edf884fc9fbc5b8364f39606784be5638811e20f516b0029b1d302307430d0a685e2cb790e9bbb0718222e25f6d97fa7a851aaa3e5182f7621589e5af7f782892e14d6ce9f33b00c565cffc20302047c435bb500673065023076b45fd6cef14337d601dea0a4f20fa688e66d6362364c6ba0e1e6bcc839bf500885c92286ecab6b4e07842b0b91e121023100dd017b13b506d392a8039cb450dd625484626779c6bf4d7f5e43393bc27bf0697a91f0fe1ec5a760af4456367c42def10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ef1b9a86fdf0873110e46b8aa69272773137463e3dbc853989c515d224e116aa9f5cbe0364f87cfd5eab02581959f4b2023041fed3ef36febead990130159dba7c3029475dbf2aa5a0199e360f051ce23385c569ebcb68446260763e3135da4d6c7b0302047c435bb500663064023067a323d606fbddce8643153ee7213067ab4b1e90363499c3d5313cd70f8fdced9325ae7e9a2b6e44f16009c4a4d3430702306b9bb90c793477da9565d46f6968df1449dd0ce21adc0c8bb4e8f0660e36ae2e37107f19caff90c38c35678bc455f8b50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b64e286d4115ac87cac2e4a3e0fbb14bf455df8601bdf6f9eeaa87c5ea2e4cd93065f3ea5562241568d4bf57003c7b360230329de0dea1d13bf6406744a9e4c8efedbd950277cb61c32e90f1d611544d7e993c2faf64b0eea440d3dfd39a63a6a1200302047c435bb500673065023025a3a25b302bc70a7ccd4214cff13245343163e5b3f4ac537bea9159103577916e1f7d73d8f84f0d62e64ad442bf7184023100fa903b22f77991704904d19cde839eef93e0b3b7a6953263fbf5f802e23df7854de5f7b1bc207cf30b462e804c88fac30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306ad53506b1c4ad7bc9f476561f2f34503cfd01a61723aa8c1b22058035efac21331a2b698786fed1b1d6b7cf296ac80b023100cfb00713070e80157a5004c4ecd64cf945a00c5b548a6d4c543a24676ff9838fd52a75b7dcf0fd7a25b26a1fa7c786bf0302047c435bb5006830660231009f9ee37fe2f59ad10111f271fb65760b831b5ddf7f2f51a4576866cbf0929ce5b2ff0db93c7790286608bc1ee2730ffe023100b70aa051cc1a6cc196cf9a9d584c4d75a8787f6bbe50e0a91f877004f5081f11181c38a26d568f67628511cdc739001a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a3362ef50757a9e629cd672291f608d60c35340cbfe7a601dd5dfe88787b0942f9983886bb47d68c735646fb66ca3b3302306238c057a979676e8dff9cc9830bcf294daf1422d9467258a09ef2ecbb1e46d32724bec2a4600a3af4ebea4127d3ad0a0302047c435bb500683066023100870f9cc1d8045eb9cc792dfa9d53ac0de201ff6e9508029daa8df71028ec241a62fdcf0e05631a3f41cf1c5059e67600023100a2509020ba94afdc34488a0ac7b2e3c1751177791c6de500ad4ac73eaa0c8323585be352ad6fdccdd09a130d36a38eff0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300eace435c5d40b80c86bbfb82ade05bc242056feb3ca6bcaa75f717668f1fcf5018092dc1c4caba8f6961f0e65f0fd6e023100c3b54028bf2ec0ddb78e765c094049cccb1ce55ca915047508a25b17b4faa6fbc5f8991316be816ac7628dcd26f2da250302047c435bb50067306502301ab4c26e02d3438b4614d565831dec9dfb93af448ae221eebe1520f4820f40022157f4483406debdf51f7cced39ba083023100ce9de3c857b747a21cff49f7ffa8c0c79c046ad828b71891110a240a373b49dd307b790667faadeb8156b1ca9e07b4540302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100970b5dd66843c0aaa3cbab986481c3cadcbde3ac7217c005cb98e1f72803d65792c0fd45c293e88e339426a19526e28c0230624aed951a700799535ea36491583796ad7a4d8b08e7c312f5e1942e7f9f6e14b0e253e059542b6d3957cd22133c57350302047c435bb500683066023100b6050bc001f40cf37581a13c0b8a02d23716dc509cefb87dcce07f70f78557d809abdcd1e5b0c449e221db35dd5d4069023100f0d998cbeb873a9437d75afc482aab7cb0e375aed8abb2f9dcc2d8c9699ed9e5558144f9495fc55824b7c8006eb525a20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023068e451bc98760778e0ef08b569a9c2e69852ed48349245588b4b5e1bcf1a9182009aab7f3f292bc5d06983e830091b3b02302286701114951d2919a645ef96475f4079f7b82a53836668714b95d2210f99643d5c78de222160f01dec8874cec077190302047c435bb500683066023100bd92295549c6f3c2ab8b1f35bfa7c4ad41e0ded15a14d91ed3596eb4462fcf081c2025fd4ff5641fe2f52908c27e3eab023100845c183d091b2bc39c41792796ef5c599bb4f0180b46d56f04950f6d3ff8925f54336a8856083a25689243d13a3b56220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e8efdf62b3855c1bb67d87820db99b8a1c9135cb9042e787a8d58237d90be125c75044177afc7a991a0ed06d82c09841023100c82aea37878a8377e0bada164a0eda1c06d8fc7e2363f53b9da40a2ddafe046510df83e4a6b835fc226ade0188e5167b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008cf07db9f8da7e1f19b3964b711fc8f1699ecefd4831ad89a0f33d3895ae42c7a9998f272d78f5ea11efeac320482eb9023100ae2936ae40938506e46d01edbc7b093ae221288cf0f4c363fc42ff31a2e5e3ab61688e4d8fc6607fd174d4a74fbd1b340302047c435bb500673065023100a122e0e3074e45bd367c0bd43942e5e708869dbf4073b36ce2e0c23fd34e83eb3eb2c6fa422d8333780541345e39adad0230263cfcc793d454321380364e7d21db1c8feadba0e2b32d46228e8b3312bf07f86278623aeacdd33966c6fdab0fbdcfc50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230517308932b5c43613c90cccc574735be4d0326669cf44542218434df43311aaa0efce18bc906b85db31f0f84c1d5beb90230242b4d907cb5484803b8b8898f8182c4045bf2597dd2ec26495f37c51aae17f8f2e04ffa95236d5e229841b8654924c20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a8e488c6d2f047e73246e8a6d63ad4096667bfa31c0dc0a32e0724f598f893ab3bac5d9f78f1309f2c8405d2b4d30bdf02304a99e7c83ba20e16fb48f1ad6fc5b9a48ad00ebc222e57fd73de583d3f40f9af406cb635d0d960709f9e3039810351420302047c435bb5006830660231009d6a77ec5d26da1109fdc7e24e3b68522ed2ac8b95c344b3592f9dcc3d88f2fee5c139d1980d0ff353b6ad4d0722ccc40231008d8bc035a4d8a1da381f87a636bb303b106388babeda0aa7df8d4a95ed11920e8a3500b2093490d8a09b3f219ac5ec560302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300e3afaeec85f8e19c1ba04cb884d5ae41624d3a088c5529a659fa5b45234958bbf0bb673a951fdcf94344facc54ca0b00230144f2cb8e2b52d6f2315402f6f34af1046b4223071b72ed4b9dc0943ddae40b586abfeaf062ffe550bdb09c483e43d360302047c435bb5006730650231009449253aa2b9018a377a5bd6fddeb991590483e8b3610990af1fbfa3c63ccdc6eaba0daddc19cc88cc9556c8fcdcd86d02302a3665a99e705299c3da2fa52177150ef6833bd9be35aeb026da5062bda40b6f0ca4c826a0843374f8fd651dc2a167bd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023004e31fb2203622c53911cc2907c891d6aa63f89f89c0fa8585029922016fae960a7874de34fa99d2ced58815b184eac6023079428103e0001772f50b79cd62c89fe44735ff61ff8784ec407a38172714564b6fbfbe59d2a84868c5357085f1fdba860302047c435bb50068306602310091420953492a8f8598b1e9883ac22dd87214b8080fa2a2619faec79bceee264f3a1be526743e5f3facf1b35f2f59ec1d023100ce9eb0b48b99907eb0e7ecc9644d84f5689942b5f6f0db4b35e2269ecaf10c50704ed911ca4ad880014f3f7a4924d7ec0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301b12d21956a7f4d6e127e66413a4826043c198efe86d11313974b32be7d117da0ac80a11f7dd101a4148939294ce07d0023100cca255a28ac29a8a55118068065fd94476dc267d2462fe983462449d9a9278e48189200a3303bd788b5ec350793373760302047c435bb50066306402301fddcfb87d3eb7fc598ec9b54a19a5c7a7bd5dd88cff258258a9c960f73249d560ffa03edb21d8b06cc38538936de2f10230454a23d9a04d22143ab96ccd85e92fb7ac4ec13cecd5d1f6675e827df9a153b36ae507af2d449f383c3f119126f391180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fd67b6c64ad90581ad119ef74b552d033cff541cc929bba803a601fb4be3eff98893a8c5cc69c30f3d45ed8252912603023100f0e3ed90dfbf3289f5c95e4543203bc1114b53930a3dbe5893ed37569a8e72c7f8db4a8d30324f91a190938f7b55c6ee0302047c435bb500683066023100f8aaa5241f229defd02de37136e5511a1aec95e40ecb5733bc27bcb9ef5498f82fc9aae713dd4ebe4ce16f0886a4f07a023100d0268b048626d9b00dbf80497de5898484c74bf7ab9829f57b937a0a6d28b83477890e58be5d56dd597f14775e8c6bb70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307dcfecf2fdcd428c0e6bc99af283548a6b7ff9ec19b21cce76b63c1241f68d82d0eba1394c3c7d19f79b2b70d5bc669e02306ada22b699bfe25e51e35028e5e5ee48be045c366a8e87ccee16546e426785551d61b4e4db12be572e36edec057da2c00302047c435bb50067306502307569bed25891f5e146c2c18925eceb640e9e7db6323f086aa70ac0283506c4d9e743aaf1c78781a89d8a884ffbb9b1c3023100dbde1bb7a1d02c2b7762ccb2ac4bef1cc678e00e177aa1a5d058b65557bc7959a06677dd384ae1390e949724ef592a260302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d73e648a49787937fda6057dbc39c22ba8ed0eb7d5f87d19e6b736e924db8e844dcc2baab13e5d769fc2429602c1cec302303585e81ee6f710cdfe2be7c4f7e735a1c5749ccb05baacc278c42444bacfe7bbe58a40ea0fd7083c07a3c0bf3454f1a50302047c435bb5006630640230405f9b4637dca93efc91b14ee686cd1fbdd813b0ae6d86373f2d544155057a464d5c96442a0bc9a83c13de3620c9b2160230798ae674c6d747a87d599132da60321d8c290c41a27f41f60d130cc7785d8593950f088fffec13989bcd7d8b7e43f0ee0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303ae4d151f474da897521625a7a23f30f9cb29491751b7c96c62ad30d2987ed73e4a361b017f118ca41d56ae5d5f8cdc8023100a2f7fa8fa0817beea011f1b6ba2a9576e1e4a4c8b0c7653178b65686d9f5fafea91f52424e6a9e9e127ff9155d12b6bf0302047c435bb500673065023100cebd97614a44d05f08fa2d25ff815e651ad04e60eba4ed55e6971b180e1f5c10a0d44164640d73b01516e772c47f20fa02301f8d183cff2e1d355a074ee87d44bc8caf86a8cef5e6927f1f5d18394802c36b5a53779b2abdbe0f2d2bdb12c40ccedf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009b5f67922383b62ebd9dc66bf1ab3d1ecf8d56275d60fecc3af8a91898bc046f9c9cd54995fd76be143d9174329e6776023100e6323241bbbf2f5e3a2c12b2050b94887f730a0f33566a3f4f5d1fd978208c0de30bb4a7693f9c6350058a63ece5026e0302047c435bb5006630640230652f2303c21ec314370c6dd52b987e2a7328bcf3399cc23b76ccb80829f11d576a6fd14279b2f757719bef0efe87ca0a02305954844d759cee53a2504b971f2ed54d012b2011087760c14480701db1e97963ae3356ad7f63b14ed4d89aab07cb17110302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230341859f1496aabca8fa891422767585f1cfcf60a2f1a323e9b0a15c840e5511795c0e004dad9e76d5cf246b1d235f631023100d2000ee124778b2c3950122be9d7ca39a0254294138cc28032de1fc83b04c6b186e1d3ef6d868a8c33eca1bd6b2c98930302047c435bb5006730650230393d00b2153536d0264f8004792945cb63c934dfc09e754870942e6302e25a0d4c4c4f7a670c057f59e794972292d715023100dbcefca68e5851178fa134471d0269f9a4e4715e522e62b44db3c9ae9749eb843d4a53e082153c90819ba5343d3b75860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302f1ab078077c38ec2d0b4805d86446ed7052e234ecfe601688aa6965cb82fbd6e499c723b7e58ae59f2b631f7ff772190230483682380291b17f48b793016c070de68203e1de56d490c97aacf8b80ae09c614ddbf60a5024204b1bfe68fc68ddf88c0302047c435bb500663064022f707018281105e7e2a1d4ab33139e24baf15fd5774fc4c074782132ad4c46ea40325dc1c36037e7cfb1c726fde2318f023100d6f334ff4f58dfcc0109448870c412dc4450a9cd8db1ba37fc3ae11f5cf5acf2c0fce308e575e60eb3eb28f3c921be8c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303c129049886ed3df32d94eed4913078f01051d76c83b587a774e8e6b8f4df2479747f160ed4820bad24b656267b0c671023100e1037b32864f09ce36ea8a1eb48be44de47fec98c36a9e54d4ce0d8697552d8df24aaa7ef37b6c542b39b5b1188bd3860302047c435bb500683066023100a60f299d20318734f6e48bb77d94509ebd0f936de4019d46ebba4f2c8b81f58bacd211b877252450f0757c6cb7878b4b023100f2f11c34bb8033277832bab4335b2163291709e0564fece50e52046611e3fb847309abc40dc37fb51dcb36397adf7c5d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e03e44f065fd60f29932be87ba62ff6ecbd8a91472d92b4c3e836040d2aef5c0b7b75808e86f5fa6ed1189b825648aa8023059e70c724cf237a6698438d239ca3e7bedf6af0ab751c55d2b805feee76369f477e71487714e56781a32d7cb2c091f4a0302047c435bb500683066023100a6e8c37881704fbd30962d61e533125c068239b65d3c973b82e284252ed6e3f7aef0167d59a775e2e5e019625d26f019023100b3ee9c01905f2c7bbd9124cbac18ca47a6e6f3a06b49884fb53eede0f2cc90f9d04ef38931d3c005820494b825a6f8a50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301417a98c50801570e5f0730ed05d99cde9efaad0ffd7cc1508988a07b224a4f133b383e56f61cee716ba579f98f4582a0231009ed33be313a9edf888089332771f2259429eaa51b1cbb458ad7452aa95705da5cd32a5f38c29e9a15ad15f58bd32693e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b2c267b3d16b906d8e8ed248f53a734d07a78b10ed84afb312f6cc8cd103324c0255d301228e264f21b8458958a838300230318978bb525da87387aa8a6500bd2a6d817d209a90ade59b6f217781b608bd5fb637e9bd7dbb93f5c1f15a911913d0140302047c435bb5006730650230207d77fb01b184b104d2f9211229d7a534535a238912004334e26a168d8b1dad697def129146b388f813b3095b8edb96023100d6073fa119273ce5b966e7fc04d20f31c8c01f680d6dca9b98bc59dc09575c8e5656772828806bbf7b98d0b8b116c22a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023030eb7a60cbaec9f57dbf5ac769183ccc9e20a90248e36f2ba3df5390733e90d19742b71eb3bd12e254d7b6355b6b0a69023100a4d57a8bd6353b2074cff9772ba76930f351f0a5d5641e5dc1af351bcfe8fad111ab8a2c8a727d9d7b54eca199d7aea90302047c435bb500673065023100f4e2094007dfa502de9c2c05fcd0ad74b549f5dd5873bb471f1ef54061fd1a24dd095b8abc27d8fe694541e41a533028023027c3c016a84d9ace9ff94b79b39f93b4299fc28441118156f34fc4ab4b9c3019419a7e0c00b893f5343ab28b56bfa8880302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f6ba977163602e0cc97bbc13ed98bd4acfdb131f4cad76d72d9bacda42eb1a9e04ad630d42e706e434b491b4e7dbea1c023100f1ff4a8f0117e7e0e790bb082ddcdff261cc855c2db0246e6ee751784d87b7b0d9154d3444aa18ddc88c0c9df0c5abb00302047c435bb5006730650230133406cae74771e97e18a2680baec609c290bf37c0ebcc26fc4787b3c915e9809151fbb09429298c2307392779f847d8023100d4b93470e6143a5127d17bfc700729bebd2579cb92597109807032f8c6a28fac9822f4457a1cd251de270bece3b6d84d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306a188a91e5b3ac4defb8d03dfacf8fce6b95b4eb0279e0869da4dbd92021d31c3ff6766ff422f9689d66e994633b956c023077e3d4bc176a9299c92ddf22c84dec53a1b782391af386bd5ac5f235770129fc1d3ccc5b49dea485715ea048826358260302047c435bb500673065023100d2f43519d7cc8f6d82ead2eb1b4f3fb298926f09bedaa74494e22a761aab21078552490e81d321b6ea9c7bb598bfc049023073bfaa3bae226ed4f115384edc0b9d202b557eabf711597ee3fa13ea5a2dd824388723c47dee553c4a8f7e45e4b9934d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e3fe8ff7df5898952ac062a00c8c2b65e2d404fec8492c3afbf1f017eeb3c89f93c42612343ae9117d02e1a84bda6ae9023100a13ecae498052dabf906a0a00639c41d60c0e69d566f5a4f3b7b4d3bc1c20c35405ffb10d2daaafcb9ec352d93c5db040302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e612f90aa3a9e4fb215cbdf3d46ebd4162ca1ce8332064112966b6350235d8b1ce20e68672aace3fe23beb20a93341b7023100e8dd0c5b53fac075fa3863fdc0c478a7eaf554e7f0e085588d5d345d7c3bc40f8d6821553aafba3a9a33f763d0ded44e0302047c435bb500683066023100f7e7347f8267abc8003c0296db5b7f528fb9f3a447ca8919de64c55a82a8a12675e44d6c22f7727f532ef461c5b33fe7023100ecf45709fceacb505ff2406a6857bcdb8fca468d112e0cd6bb3730bdb0d7b0e05dc7a749ec2690093298d04f51fb90180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ed49a581a1828fdd87da8cd56126e371db07df594e99c0ce64327e7ed190635f64c7e844d6409d22cd43e2f51e46b95d02305d415f70a655b9ab0326e31f9310a635c8bf4322edebdbe73bc521903af4c56287cb7f95e3eba8c0f1a9eeedfd79b90e0302047c435bb5006730650230353c845982311e008c3cd18927f901adf928e1562f4069eec05223ec984f295b9826632232cc885cba06292536ce756f0231008df56748e1731e6af8f94d2e58627148cc99beb0ec2e3bc1bac481ffb105e0bfc75f197579adb8ee88ae9f99e45862950302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064022f4b64d7a1d9d35e28de88e72cae0e4a545ff2ae450eee477a61fd7296c641837f040dbe0d141e91c0f7fd5b99ce418b023100d498c675975db2735cdd1d573cfe15123d1f4b12a382ccd5c2e5f636a43b495a60b9e51e09791a85ef1fd572135c14230302047c435bb50067306502300ebcca405c1da2e8b5d981c8d643dad372ad15820726a7f7b70a654cca6ca5b535b900692f87efc073d4648525a1b8cc023100b138f7cdc31430cf026c1a6c2a9194d89e682224be5008e9cf258bf8ff91c0ec0358ce7bc2b61402a043e0edc00ba1c60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bd12eb054b038bda5906a9a0b123ce16ed627e940fe9fd35c1cd902288876a80b3f104ceba1bc1fd58b8f73501c8eaa702305ee427f4bb6cd3b142aa4c0fa7fcf358ae40bd18098202771f3acab60d27d1db4a5c65afecccb1aa94be9d885bffbe060302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303080f7c83e95db6793dd144b8d7c39b46b3f0c0327a0b746e86cf9875e36a162dba068580c4ed7602a8bdf19f5af33490230726555a5cee0a3cd595b8619ba5afcb091d1509e8e10131f2bb893f4ef9af86d1e540d10e068079d9ea6fb5e618f54fe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bf457a57d4325d37519d7cb6dcc35123d2f2e90445fdf0322b814cbafba82ba767587ed5b1cc8d43105d4f8336f3b4ac023100a5b7e4746e7369315989b86912aac2a6dd46d40501cecd58aa4b42a9cd1388af6c6b29d41a6e667594f690641c43ef290302047c435bb500673065023100c98d9b58bc6ac6480094f0588fbc60a1fee8204cce0277e576278ef2160acb3bffed42f0f982881950c302ca9e7193a002307d72e545c3707e76b1b178afdbffd4a9f3e0861189193caa47fa48c15001ea689478e0cc1b389afb8a7bd25edeffd0df0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100afd77246459b1427f321bd0c011e385660fa454114a8aa1d54bf2e3b2ae0f32a556f58f0d0c9211a0f3b618659661134023100a988257538cf1140fa8d504e9f6115dbc611b75bbf451b8015274274cb63c992c5f2ef4f563acdcb8f659863320693980302047c435bb50067306502310098e105d404ebf68a2ad2e345300ac294374a3add8fe26efea49a7a870c0f3b1970fe174a0f44f02105a0a4a87238527d023033965890e2f7319a49407dd68ea1907710359053c6f7ae51422c24a948c3833ec4a770408729370a19ed65256b5adbbf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310099c1c6711b9cb325ca278b68dcf07a17b5c031f5bc1023140c1a404f855c417a71cc3e8c1bcfa1b776681cc4980abfe00231008d2decdbb55a579b15a648ce2bca9740a72fae7aebe59184c3c83b7911375abdab09c9d2a67c2d3b5aecc276f45222a20302047c435bb5006630640230361eaf74a5236617ba6d22c00a534fa5e91ad5dba6a4bfe7ce0c477e7dad59bc5350bc6f8234944a09eb153a986357f80230771328b2e528878ea07fdada0469366d84f507d1b66ffe3b9b89795ce9a05c86fc3d15effb5a6238c200ff79c942ea580302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303ad1eb1f1a619b18c9ff05b992df3c41ebea1a86651ae4d168c9c2b550e93f72b67a0c7887475212c3d9f4263fa3777e023100b6a6ee0755461f0a7edcf5b6a7a9b49a3ea7932e0bf44edc8e8e34f2387532f0365fcac006efdb0d577edad5790e195f0302047c435bb50067306502304be194dafb88ac5f2b81873ff6dbb253fda6e65d5e54c283fd8e49282d0f5f5114865ae007c594e795f44c57528cdf440231008684a0d30071d8d3aec899f1f878731daf485d420d955104fdca8cb6adc255e406896d3faee1ea11b42b34c040628e5b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a1b03c473cd29b8c654fb71e8bbeaf1e6e03e6abfb9f959c318a5362e1a748094db736b2c770b843800b90826d5baffc02301983d5a6367b61dc4ed5de2b7524f5c5b43fab771ed872c43663c4bde6f3101d4966a51e4a061469855ba37c2e7c6d7e0302047c435bb500683066023100bc4c197f61f9302469c40ed06ff392bab1bffe84488803f288b23cb4c6d2d18a4efa797cd150df71707b2618708edf4e023100eddcee99c1bcc119a73faeac7c05a9b5f4538f8050a7217e4ffdc03af6ea5a4803162862d18e019e86c66581b61364df0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e06893ab3442d0ce0aeb3bee018faf69e1d97bc41668a248baf3dfb49a33dd265d8d7a084503b3b99a3971cb8e862afc023100fe30580cc940fb79c8696aa705b53e5c9fb09a9a3b3e86b5b135513381bb84a7c2d7e519c6d7065fb302aebfa85301bf0302047c435bb500673065023049ae57a7d40b398559d373b0703306f9d4fd5bff1ff05fd6d285ad212785f9c0aea01056a39f930924490be3e938e42e023100b0e52f33f91353ad9bcd8f3d2ac7b24392e40b20beef1156ad5c682638abe908ea26b5e37ba8b09a406569a6c40427f30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008cdf48f07707de06d1aae5da3e7369fc0f16695c9aef4b9683febd1583129ef42496807c0b4b266a2298cc880606b5cf023100e9f5d492a639e9e6fb2de192a7faa4f776f2e4f17943e76c8da29d262971eab0794dfd1d5635a3db718093ee78ead6eb0302047c435bb500683066023100ce6d55bc90b0f22744c8fc747d0a587c652048661d5150b08160ec866c573c1877cb111231023b9cdc3f84e26caf300f023100ed4cd5f0ead50437f4a52d2d17539773d7a19b9ea40bde2cc096b15a5ceffd8a219a0c2c955af6accdc7f6c142ce8dcd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a64d38533c2d257d15b96bac41290a339d832ae3a02af842d1ebeacd6fa24d41ac0e495538f82d84e167a50252726bfc02303cf98faee6e12e11cb1e3dfca26e9466c48b219bbed1fa25f833156019dfed94b67e63d86a329de4cc0eba1483f9f9bb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023030b0af558fb56776607f66a43f54d35b4e8d83a8fd68f29c5e34fdadb78cba99c9c9ebc07fdf316b2227cde923b2b0db023037150305d57dae58ab1c665ca2ea1959c8c555ab0fe7e9ec174d3b2586602b9a5238dc3a8f40123e823a1abe2b198b130302047c435bb500673065023062f76c5dbf83c5c4eee3e892536a5398fc4acd992f17d6b8669e96ca1ee40a11c375db295c94ec2945065b8ef55a7eb2023100ac9bc5a7ccb780679e9261157b55f3ec5786ad466401b3207ea14c1719d3c2d0a75c1ca51265bc2d1dbd775ef21915e90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100abc105a0b6cae8d790edafb9cbda309e399d37787d3f05acfdbaae3086c0bcf2dc4409ec8b358cfdd528f83f20c4da04023001d2af4be57a44b97dd959b78e6e868160e492fda9b18c837a5cb15acef03ba011a019771a66d317349769f18f129c720302047c435bb50066306402304135ad462850969c99a5f813288f2ecff4764781b4796436f50d845d2f0e02de4e52d70bcada22ff4eb858f1ef87b6d802302f70cee107a3d60e0c115ff48b496c85ec64088fff9c8ffa5eb6f50c917b3e397e8c2aba0ef12635b63be491dce86e1d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304d6b5dcfbb75839bdbb99551006d90687f02f7b5bece1d185f203a2200a5b2aa8e9b441d530ff133d137d894547038e102306483df4c8df64beeccfe6014d5ca9153c6c2bf59ebf0352aa0f515658ecf1caf36d01252edfbd31a03156de569c530c30302047c435bb50066306402306192b748553d77d4d7a679c4e0915e94eedcb191af748098d753070a03814f50cfbb478a5ee4726aa9cdcec1058c7cf6023000c3b2637a75e0a6ec5fd7a61dd2dd4b410967700b1789734bf60c1d2abcd6780ebef105b0d906633aeb59ad32240c570302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f0fb7c30623dd3e6195693f9edb9b0bb6b370b3b767716a798916d1f974835e1916ad207cd042f0cc7bdb5191cc35f76023100c46cee461da495f0d09dad2bab4deb008007279910d52d1ea3d7aa1d9512fe4fb50fbb2dd9db44f82e7955d2fe7126490302047c435bb500683066023100b08b2be350dbc7ab7acd529c8926d68fd364a6b2dd03a97e6b176ded118d14937f983e8321c7988350e2033db40a10d00231009b77d49521e38aa1c5f80f2b36271d93fa87ccf2d5eafba2bc636711fb0290cd965039c281679178316e880f16a07bf50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e6b5a23708d56737f8315135b78284d5bbebf05e5c5cdde57a2edc27ab5df192623a0b789711e6bf0ec6707433c8901c023100da48b24ab472317c952e78e0820597a17666b21b377d209be6722879846bc6c9d9807e700ccb53665ae965b5b3d2a72d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a9e780f7535f31aa6d95d12032fe2694af6f44b4c6fc14148a64d82cd3413436ad0ce1bf49dc61fe40f872331dfb36c2023035ec21c98cb91f3fb3b72363280a44ebee34a050c45030c565bbed9ce14bb62ee6154872185f1e750891a70af6959ee00302047c435bb50067306502310098b177e40e09c94f9b1af7851aee43c5003efc07310a3852b4dbcb4e3be5a36a26806e65967ffcefa8fa986d750b272c023046a7fdae910f0306c21380b905c5c39c82d029083daf80777f271b388f7b6172240e9e2564fa04c90317db16ab3aedd90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023003f567064149ec3132067b6ada3467bf79469323d99d484904cf54eb581eedea0763d4be1d8c499f98c005015f58a6f8023100c6d4c8aa3ae3731c962ff53789aabd9c8a29ab433b5d70e6e1b6593d3e183329227c2bebc5e41c1c6a72cf73351aed6d0302047c435bb500673065023100f38a53ef8a26974a10327a43ae4d60045ab620053c3bbada0e574851304036b82c5edea47596b85ef631f64596cb1a6602307ebb5e6c077bace46eaadda24e3d2b03b50a3d0a60c815aa3a223af410684339ef4585f0c365619722528c72f5dce95e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306a032a9ba54fb757f051992affcf90c49365ed3a76a064e3bee04bd264604495a6c83b058aded2f29c597391bc15dadc023100d44803387e04571dc60970d43dce0ae0e38f13afb291934a23465aa17701db48398e6661155f3d72e604f3af87dadaad0302047c435bb500673065023015706667473838c614dcba6a7d66400b3c7d7048b7c218a0770ee985b8b150a462aec4d524f6a85f56c0ce135094d1b9023100f6bee2debc996164d7d3bcf2570a9e9b2f98f5880208a4045bf161fdc67c102a206d922d9e4880d1a0757e1c9c463d4d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fb1572892309f2df047510dc1b89a2ca3f327354ca66dba3aa14713201f8148247fbaf6fef7e25bf10953a1227a37d30023100fb5d1ee4b66a8114071944a7bffc9ea9e6094d45616c6b676e1df2c5f05da226530575a109644455587fc7dcfdbbb0a70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100eecb470b30f8c7dae89fb88723cb5e90b1d4d967cd947b5d271800d14dd476d47fcca028e065fa6c122b3bbdcfff1977023027861afde5e76196c3fe20c22dceae64e4fa3a617db31ae8b77c5204aa9775fcab89a56f299a5fbc5e48b879e5a7b82f0302047c435bb5006730650230441add9b491e4237eced3a2c4fdc2a946f954c809b01c5125c1e211c04aaa4c1bc5051ce665a043fd3eba20fe716656f023100b6c6a29f743d90b8d39eee5bf33e4bf5e0dbc91965896cff5f1ffb04a7125a35461f15464dc8c7fb39b28f0d2069df7a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023057acef9e82af7786074c2e82ea31753fd0e9808704251a61c78846d019aafa8946527c78d2a62494380ea58623a145a6023100c91600126ad616bbb595b6275c603fd6fceeca5d5539026a2db834ddc44a382ac72df3ee743e02aa425ad95e8e8d3f3b0302047c435bb500683066023100ec993c8b546bf91cfe53a32eaa33edb6c7c640c7e71146cc13d29c81d515c20b830880dfce77d0bdd68e3d511b3468cd023100fc8b20638ad0fbeb34c241a1d07fb36d3167366b5082c4d9358f433bd8c6b6e3cac5b4169653aedf51f1bf41f58ad7ac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023055b719ae9245ca7d5fe8dadc81e9e274d26980f63ef0d2dbb58b65fbde2c47ea785938e32c4c340a9c8f7b4a2e8b01380230090e38d296293433dfeb839bca550aaea55b5ff07e4512f71a357273b00a658ff676ced144c24d82164767ce79b68c0a0302047c435bb5006730650230020f253000b94e0adabf80292aa5c7213b08a8e842c283c1f6c19762005fb5d1c20f12136720e20502d11ccb59cd4066023100f1817cb02e069ca2a2d363f4c875e911e6c7e45c4d2800de5b0e6e377bb79635223c5545712d821e232cea9e9529c13d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b7c5548cc77dd7555ab34f0a0779aa18387ca10551eaf34e2a597cc0eaba4041be0181d12889b66bd472f29d7d2b4df50230405fcda95c20d50c8789d54c08fe589cb9173d57893b828674734d6cb1a1fcc92b7426f94fefc56671e4a0e12c11a5a90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023039c1189b83a3d96bebfc13b97842142d7cd56aaf522a771bff30a21aac1372802e11e74c2d54bb5b41b91290b902f3cc023100d09b0a9915c7ea0f16b2b053fd8888b0ea7ffb65fc3cc72db0091f275ac16dc5bfdfcb7065143878bbfab3df0f1eff080302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303b32753ccbc9464f20684e2514c3cc8c18f49fee577399ff8b0cc78ef18911730e88657f87b7eb8491100d4d039df23f023100baa2de5a7be00fd30b23c0756124ee616561250e22db668e8ab3b4514f30e49afe19404bfc173ce7dde4d6cb4c5684f90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100de6b8071de0cf1335b8465ccec455933f7a38c8987a8b460a17cc81127acfc5952b352a47178bcbc4ea984cffe4a468e023100dbf1f573d3859eee925a82c6773e5a761bfebb61db5882e20fea82c10515410b8405a08b554f87d9820c045ffd5973dd0302047c435bb50066306402304086b85ebb5ed70bf4df5d23f1039a00bacdc35a2d5c6025ce9028e8a1fbf4c1f424d7d6721d097b72f30f852e23a956023008f2e7076c50a5b9c97d2bfe5b24563bc35cc6f6f4c20103ba087337d6e24981514a7d5771eba95ad78c1a0a402602150302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302f9be3769552619cd1d7a8923d687f36e83e84ce95946185cf79238f30e76d6aadfb7429ed825926057028850fc1601c023072b4a66abd195d0dfd6f3a9ad3b6e9d65e245c673ccacb5acf54996d70a47d0a7395443614a0fd45e17bd7d19b9d67f90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023031d9a13945db33cda36c80ae100f8fc390c41fd34dada186e6515d297b74362c0ea93c3726c1837fec1dc4447ae74576023039cef1095af128c0f13dc499f39a8f1c4fa4dbb9cd6550e79711e157f7c9a5906e04f49e2134228ba622212e4fffde180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a0e07de353ca932167c326d025b18749d45e4a88d9f72b32967cb5f56a94660e4bb6ba5fc4b04f17f4213b565a9fbeb40230087f1cbeaac7481b2d9258e9e451c71307abbdf96d689f4c2f48ef345285972ce42c0ba71122bedeba22af5cdad0e5860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ef4e90b507e455b8f269140b4ba181a43e81745b007a193ee0a6656d3dcd972a540f495e65a3fbc8807c034777c8d5a8023100e56712fef3088ea5976db280b65bcf130be4606dc3e414fe4770600aaec2353063f222032238044b3d1acd7a33d9cb1e0302047c435bb500673065023100887ddf9f2b46946800c4b8a119fb9640821a5071bc52aa50355390d71cb068a31f2f426011cf2f2c479cfd06d3a6e43702306bb478124cdd4ad73e85f7d34c5fd1bb833e17bbb27e060c176145f8c7b5a507a8718e36891ca375665a5cb87f181e6f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302c5d25675b8abc6e388303f603d9ed18eb294219a0b1c7b3062f3bc8226e030e87c5f48e06f9f4eeaa18f50810e2e676023100e220d1063f19f51ac54dad6521ce35bf79e814e5b660fd528261af48252ccc1c3a6783d9e3968818e1c666af4f14f9fa0302047c435bb500683066023100a150b520f0bc7f7e8e011f910258d9646c68bdd472a7d5eca1c449a189510ebb9409a97bcedebcdf7eef76298b5e08e7023100bcfc576a19e774cf505588794d85547e840d0507ee6be05de17786bd6b2b143a256e3f28cfcb461b670b5addf621bd970302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300c4f47171c801cd8c6114cad91b4cc09fd04e3f584e1d440f0697186839f702fe319ff95c6ad7f8d92b07a9c9e072b1f023038567a865b6c8be007f671cd76b1a1951294e2eab59160e0765d648740d046dd708da932f79fee2482acae68b289b01b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b5bbe8dfd7eaba195481ce14b510894b6ec3a645c9017d48643573d3b59464827d96ac53b8f015041c93c1b2d3e26719023016e07bf58a78c037698517c2b558d7fa92645233fd7c2200699b197a8c8f8ee113d210d8c881ec6e010223f3fcac7fe90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310081032ebd131d358e4c589d301f78186d5650002c2bb5dd33fec26dbd920fc598406dfae372833d2b6b28f696dc23ad7a02305bb93e0129c830a598f5d1f425a28867f1b757f68a4f2473f449eb96d3dce598f7587c2dd5f5325238944eb722e0121c0302047c435bb500673065023100d933ef7b7888981249b0703ca3565a7085b931388b3f6840e3baaf1f03e275bd23491c2ca9940991e8d3bafcbcb73daa02305467f4f71bac6916babdeeb9406ba71289c84d8f601de051205223dea372772740d96dd2c4c47bcbe1003960eb4ddcce0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300c7b28310932aff01e12d12b14708750189162d6819fa9413d385d910a8fd7f30c8617e8814f506268367350a186b3f5023061f38fee4fc02501bdf1acc01980aaa3bbf5a2253b6b7a499ffd8551db91583eee6c01fa452115771d4134171d8a6a230302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305b1c6b161785bd1ab7b12f34b78ce471b4cb04670c2bed4e369de73a1fb933684a6caab27368b1169cff3864cc6578f5023100b6eff142a90bb5728665700162898a11ad1fdf07d3fae2ee8a692c5110ea9de26c2d34bd86ecee9f989ab56f7b3124cc0302047c435bb50066306402305cffee778648a226cf6ce67fdf6bde475e0d28fa29bd4fc7f9494a1afa05def06030cfede56da5cd1e70e098399eb95f023040cd88c3e4b9b8b7b6ed701a701bff29d8ead50cf3b14dd6e24f496c0f6252b450982f6cd827a935dd303fee4d3da58e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230198338fb986f5f943579a1369842fa8cbe4e21be831aebb11f42354a9f19c235b68037be7f536784d2678f7879d8d649023045f47968a428af9f1fcd40855797bea8f604d63f44331c09c738f54ac4b8f551410b426b05abf81acfec37464a9e6a900302047c435bb50068306602310084897dd685d1ab5df559b6e0dfbccd0eee7ad87a34d5a7185992ee35432c9e60e915e8da71952d0e1e85d29cffab0aeb023100e4fd719bfe6fed0abf6edc0e04a975786d5d96540a9bf78b1bb82aed7d5a28972808abdcaf6f16b7cd950e76e0c417dc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023042ee5c8a2b6cc35396b51951fd8168bf60a7ea3428d504702b7d4190a3c27f1332d655bfd91a2a414874ae4f9257ef7102301202024de834f8d696289522c9aed50575aa993c33853d46fe5b6e4425b16c3e0a51b1da839907ddd187267f0312acef0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023037e46ac89dcf3d0d8004470a304b990f544bd7445a6c535581696236e54f316a4fd1b431191601754023d0e1c0cfee31023076f9dfc7277e7b36579ea98ca82598e9cda3416805a12c5bdd0dfbba96f0a3fe86d366e0c909ed0364ef89ba483a31c90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230057ed8c7c2af7b346376110b37a5567665745bd7a97b4e4fe8b018fe0f10b3e839e3068896275ee75e4c604835b9b598023100a196da026c20ddac4e3c74e6c4f2ba078dc170da66082b9b801c47d96897d8c7c42fd0ef596caa48b6262afa142aa2a40302047c435bb50067306502300fc27c2a3c910659b5fe182e8063e3b08b34211e9924cb773f68dd93968014a293dab33bf7b93a296338b2936ed0824f0231008bf4c1718bc0994907b5fa83f5d41077d92baa6e72ebe7b0bb6a49795eb184d2ef9b1ccdc0812492eeafcc9fcf06042b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ebb82941546bd36b8938d742a656e9ce1b4b15c134e6edef3d1b4ee03a293df56a4fb921066ecbb0410b886f25506e8d0230269e86172ed314171f4f570626276a08ab069712a5534b8bd8eb31c14fc8806b691badbfc8f23e1c9489fe06f3d074800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023078dc0ba60a9270ea7aaf9b292c1da598d6b2fa2cca810aeda07b872ea80ba176f4959fda428b63d07d2a98859d9e691202304f9202ddc9326539f87bf46eb6d7ee90cee3b276b4f3e5d6e5ec48a903ac0eb9b89116d33eb6135a43f006f924a9d4f30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009117e3c47cc52cce431aa64f2278d1579548fcf4720dd49cba080f70d27c352147ed6dd587788f4d7894888baddc9cc6023100fa63680da70132a2f23168e6fa0360d5677a1498909825eb01ce5f3e44147d140aff5978bd90901b82ffb4b788f8e2840302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310089a0bfdedb5f668b96afb629409ac663dfa8a6e292727ee226475e78fab2a1c1a0b44ce9614a3b0d59b125f8fbd5677c0231009a307f670fbe6e204e5970095d6c3bffda0ebc1768fed7e16982ebe5730cb44973f1d6d88fec6c3f5cd61209ae37d8700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023072a0dc0d31733667f9f325b132eb72e1d26cc07868ed0b1caf8ac826653876c864dd558db71f3acaae1d62c8f8cd081a0231008211dbb061220f6212a76a1ff04d41cf42d8b24271811581203de144c6f3781524764bba79125dfbe03347263f470d800302047c435bb50067306502302d99556443db6fa9b0bd3e4bcf586b11bff9383ba31cb5ff8fb2f0ff7f14f720dbfe6da40b4887e9646abb2524ebd77102310090d8209b1c1b698f7f2a127a70d88cef7a71b5489a421f708eb47ea6305b4dc1a65556d7fe12625a1636d409671528ef0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306c02c930a745d60a006b351724b1b19b2e5a1d418c28f7c3302af55d5656bbe81e1c64b385cd5adff2e88e6d03f4a936023100cbd816d01eb7d6b1fdfa71bf59904e22f144043add07bd21d83f0364a57e63ad338553b5d19677c8f0ce3bee0776ee5b0302047c435bb500683066023100f102e07fef32f7cfab1e6b1a66b9d854cd3765d160cc85c896cea2d66a498e86f6b09e7266413948dfe8fcfdfb9c6467023100d316aea6022ad296a1d78078f52fac6cece9088bd38606c5da0c32c4915b65b38916d72c8657f6459b165a1fc40be7700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230669e9fe20ecb6a1904316c4ea117c829ea4df7736ac1b55ff60d92cd7101debd0232f6691149c2f39e4da2a993b3cf71023100adac634f85b4f2c1adab8db33ee48ef4de6d54b729b19cd034f8b156b966fd2af73fe1b84e896874cf417642d6255ffd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d058c92c6783eb2a4e8266142c52660765247f1ba4daa5172c3cafd5f4b45da7b0b41ae5467715373c725df4d49e2a3a02306ce31af0a7c4182107403c928b81a087f8e28d8657646f90b646a1a11b9d913e2522c8b50a7ab2efa39468550b0e42ab0302047c435bb50067306502310099f0e0c1fdf08288e603ebbe82b68581e62cb5e562657a0e945221bf858464dbd0d950b952371bcaf83f9107eb61b25802305eb423b7b9497f5202d2668146846fe8eb998639fc2e538b0b6c86f04c826e0e78f949f9082bfdd1f1b9f6fbdfd8d37d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fc2d6c0ae7906164abe2123432686fe08f00048f612e54e0120eda6149b5a5b9aa6372f24b50e00ebdd4e769408639f2023100c4318f8ad107e8ba68a552fc3a91a0af980ce35b8e3860db76a4629e1142c374caa2ec28d967dc0cc8431629c009b5f60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302839d168a28dcf685252d65ef1983a1e34585aff7792d5914d391d710175753a37a03fbb5ffac59ea99b3ebc8040bc1002300b2f29d232354110b89d6a09c7232d35993cff5ef5c3cf959e438191060f5cb312fe99f15d8614b1b32791eba34387cf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303cc74c8ef61b70c69c852d48217f1cc9d9cc714d4c39bacf695b236c1b33f32d992f3b313d83d4814331a6886c4e1c9402301d5aaf35b659c46b0fbcc7750929fbe810152400b8df4c4ec5dcf41aac5e32fae1738416f0a32314ac6d03565e3159b20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300ef4b755573c621fe4e98b324390b48f7f3fa71341fe20d8d43b70c31b1fb0186a5b4cd1765a83fa09f82d7e9e7926a5023100acfa9de2c6545a0aa63f4df706968196b421075668e355dda678dc74648fef483625e5bfa3f288d3b66a8865f409dd950302047c435bb50066306402303e69461315ad06af6455e20f04eca4779b1154b43079b2b7d6799f648a6b389f2fb1058dfe4cf4220acbb55bb0ef8a6f02303136e04e1d1de20804b930b67a6f11bb31f73f2808ba097529ea73e88c17ea31e2110f4cdfb767e23f427d6bd031354c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b626867fc442e87a6610bb45e385df86fc1cee22bf00134c08c2a04b2a8bbb630e1736060f7034299bd5bb490375f1b7023100a508dfc56569a8e85937c330fe9a8e9c8148ff95b42d47f6ea1ec48798652a6a7beaa5446e1ff504987aab261f9bf2b20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ccbad920109632a797d9ebe0a4a29a4c3b53c02ba09f994528dcb10aee9db16aff57d221bd7385d5fcbb3932eb0e1294023100d083facb99f17905e751bde666f2c1e08036ca58d84d9059f69b062f91ad0d8bea739ed1bf146eb3a069af4b9241c3230302047c435bb5006630640230767e299c4176ed2bb1ec64393be7be5ba45c5258e23160afb9ab22500a181e90631a8a69541c624a961f94928cc7b26402304e7e8412967ae97025fdc5b0c139063650e224bfd4f1bdd3b70ef29e770591752943e7bbfe75716130fe2498f0888feb0302047c435bb500673065023100e63898537b09b886207fcf9a9540baea0f57d65170732e3f2b71ab46bf4aba10575d2f5ba6d141bae1ebb1af47799848023075bcc04355c5d7dea05f7679c13c93b4ec323c977e1627e855931704eb5d366144d0098f771a5d252d372aeac070199f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b97925b17145ca71b6dfd5e53749b0e9f93b8906b7bec790f4af8fd105ef24b847160f1de6c0c754681b2f6dfe6481770230659ee1b398f0f99477ac9f5ef4f89d3bca8fa6dfedbedc2ba67a3ed58776a472259bdf87513b9f19fb8f028730c20f380302047c435bb5006730650230665f500af166d78b1067195291c9add9cffc03f90b578e04aa614841d9f3e422e9be4302ddb0df85a1a8a324b86cbec9023100b57ee1134a84d926e0322233c77b84798b36b21f040a45ec80bd38d74fd928e54d70ee06c67bf685a32eaafb2685b0970302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302b6b63a3c6261ee35139dac003999d96eb47a8c60478019f6a2427144d13602c8bb437fefe103ae92d023a50afc163090231008d6f3d60c8c49f4234cc021f34e4f0972426054ea65f4ff8cba95873d831ee86adc2a91773ff0359fb1094226b0711890302047c435bb500683066023100db9e95a864e96229df90ed90137b638ec2940db324041a42cf398558c235e3c461a2d65703cab8dd35b4ede1b5c6c3380231008f7240e73269e83bc4638ea89f55e56c56cb903a9adb14d3e5af09258f66b3516d9f008c4801f17068e154c6bb33c3cc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304412900fb68ee8fde9a1b80693b98463efa70f371a68f5bf810c8e9bf42e306f302446402bcdf6a8a71f48aee915e37802305b3857235fe69af4d41b4dff0f8d5a6f054968e605639cc28063d4d958a970e1d1e82ecfe6e4088dfb9460141c9cc28c0302047c435bb500683066023100e997daea3edd9b781bec75149d3c8166a85e9fd02a82bd8a88340de8df48a630204071617f88a39ea6d06f54b5b68291023100e4623c60aa7c3464cedd661f4ce9009792dbbb60c3fbc2f43963261e39a03180feba7f9e0aadc208df7688742e9f18910302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100dae124a8e82688214e66d8272737b78a556c3c81ce66fe49699eb645f6fdafbfc1f7701b11509b5eb4bc03f64a34e02a02300446d0882d78f1e99044888582e5e90865b3bad9b7bdf8a67a31afb6f1faaa345d90938eab5bee1f1343dd71fae460b00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a137256ae6de52a6872ef81af641bca52d4b512ced0a84b6b587efc622b457512cff35173986b91241c5f6dc3fbfeeba023100830cd07f98d861cfa83f2f7409a00bf7801967890f748eeac787240f5c0e4a7f7a251d743e523bd62e464d9fc6105df50302047c435bb50067306502310081cf574cdd70e48b70eaddca6a2fc4e02e2cda3e6749cc1418c17ffbba9bc3086615e1b9ee544cf1f58f1cca654058bb023061170f37dd49ad221c5b09cf32e1e407d4c962a1ae8c3723f9390d3a7648028b2531d3849f8dc1abd522ed5279cad07a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d943a73bf46ac1afe233f1fe3cdbded5f76578b61b6408cb42b1a8b70ae2201bc4e15ab6bc9ce2f382d8bb8b5f56efe9023030f961b3709334aaa8facc07f9bfd52e06ba3ab4f45017e15ee2e3f9998e8542493ddc7a25ecc2739a22cd0ef1ec94d60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230608f51915c1f76be4f0213696b3d0d85c3b2617862f62b3c9252c312073122e16ef4474e33a073c799d3683f69218c89023100e3f0b4c7eca3e0bc4facc2b30a72fc0868bee787758c9555ccac5331027961d47da6e96f91671968984cb0efa47c098b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100aaeac662fbb749e5f0804b292a4e5a452c2ed1689a9977c0994dc98703877670bdfed15fd882410b0ee96feaf647283002307e7c0999ec189edfef5fdce86fe9b9a7c372a51bff4c207c6ae796f19a57b58208a43fed67620f6c228699ae853558630302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a1dc490f2c1fc2f48d3e28b5017af7729cec1c03444be397abcb926064cb8b94e3a1d2e2e11f3b4efab8aff8ed14931002305a9c61090b8f18373c252ffac9930e8d7c29b4b868604b9b845a0deeb3e44804a973c8fb7a43ba8fa4159750026f231c0302047c435bb500673065023100a9d7fdb07a485a5e99045ae502ee5d91b235a9770069178e299aedbce074973e01ff691c5ce7c61f3b295de98d5bda68023010e7decf8830a1c36c022f81af14ac14c6784f8bdb70d29374b4554cca1f5a4a8d9a7623350eaccabc704416d45f51d60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a445697b2feaf6a468ce5100f04aa122f58a9a631122c74c80aa72cb2a64a05377e30cb2f5a3e57e1f69e70ec83c7179023046c72f6d37ed9bedd2226521a3cc90a3300512687962ab16f80f1350351ab2879922fbb1575d5ab73e7e18e41a1df7820302047c435bb500673065023100a99c5a47015a895e44a8b7ed9257cc0fc325c025cfc07331baa540c36e9c8dce9570dd263f7acb5254fdeba1c572326b0230736604b3fc94c0e1451372cf02d0bce1da7c4e2aeb9eeb912b2b6a08438fc937f32ed2e7136980fc7b479f75e91ef9aa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f0a73139f485bcc1fba7fdae7f3c2fb9e7e574ea588eae524d7e6a5362214dd8c068e72096efd617cae27e2340adb14a02305874c0129647e98b67a12335274223b5fa3f728552d12da0645fd5063d61070f08d459e8a7cfbd19c00f9b58b793cc780302047c435bb500683066023100834713fc7bb704b61aef65c5f3955c4eb221504ec86d69e6890b18542f16a4f3849fea526da1ea5c52a407432b4ad759023100b0f948eb1a4c49c2cc46de2725ba1985d2d046f7e9dc30532b2fc48328d7624961ea60bd7cb192c2645e3ab82efbe7640302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009cef29de3a6e7dfe70ca782a7189a7d1ee894d6a7bcae09533647143e3765ba843d60530a0515bac1a4e0a1eeec88f3f02302408af9c844bc96a59e52dad33a634f76bc90d511923f550f74b4db66ed97e06502f837091428d7662f691676e5c12c20302047c435bb500683066023100dd8b470d0fdfe6e465fb21c092984aab20ba311bf1e74ae434c71e89f03cfa65d8f480903dc8aebecf0e3507701e16e9023100bdef6504371a68906e75f9100eff2deef7ab4e71a867a18db1a48f6190baf5e63ef0d84dacb35b21fcf96eb7b76463dd0302047c435bb500683066023100a1d85668ba7990ea68dd4211142d07ad17fd4b02494fb4e18c9d4dcff7106a6da26a5e0b0f64c2c34f8288bd493c239f023100b4e101e2657266d20e218bb083abf10899fde9e3118c04743bf976c3bf40ab7ce1472f6190c6e4d0fa8dd638b44746370302047c435bb50067306502301fe6928c8ba9182607175da203f3921b37c8dd4fa1fd38cea3c50aa17852dc45091a613dd753b4748d8d377e9d5319af0231008a367d14ad6cbee8c9a8c004919b94143e2302c0e5746bb0fece25c5fb44b65c08db564decc7b25b7d52da39fdf4c9a00302047c435bb500673065023100dd7bbdc46f194871a980f0afce0381b0ba2525ab4c699493b00fccb8bedf9327df25be0c0dd877d262f4a4636914971802305b99daa0757b115934a897f8ec7e4cbb36a1b89730a1b86d369902d504051ef58ecad90080dc07d8e440c2ff2b0303cf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306eae7b7329892e6136447069524be806904365280baca44df777a52b6dee809a3de1edcf462a1fbd87d03d06c5838d37023073b04fa975c2bf5ba9d5bdee4a0775d26b9a1c1c594b67539f0913db6950c6d30d64996983869c8aeb91a74998f38ebc0302047c435bb500673065023100d75c050b9330fab7b707174260b38f7fffe5f7ea71824fa5bf73c9fe279c9b32ec775a8d06dfdfb9176577d8622fe89802307a4b82b016b79f5dfccc796c7571372adf3b294fac3ab461880d047ed865e10b54ed6cefba58b2fa442c1b13b6ca294b0302047c435bb50067306502305c36b3ad0adc05282ae46e04dd0567a5d4bbd4d654eeb3b6d4b06f32128ca0fd6b420632ed7483aa680a1b79d9f33d9f023100beb448435fe757b93cef4c77367fcb2475f4c46faeb92b7039c79a3c3a6e1d7ebf0d17ca6907d6935b369bbe9ce662180302047c435bb500683066023100d56fe5a3d0bd179fff0e13ce85937e4be855b2f8714b1d0884f47a121cbadd16de607892deec85737fe5e6ef6f48c76e023100c55768073c6c1ca6b2fb84d4eb558bce12032ec988597b70771839ef6fcc13e64938681a7ee338621fea26a7af1eb9b00302047c435bb5006730650231009ccf23a0c130ddfb8cb48b99362eec9e7b940035aedb5921c4bf51731689ac685b6f4ab42eb3e7cc7b39ec72e838cae9023017b28f42329215cc6e37ec484f60a758c932074cc0f5192861b137e39c65986ace307e373a026d645a1c35b4bd46b3300302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100eaa4899a7d3a91fa9baa1878dc5bfcd65d62c743fa4da05af867919edaac1f8fc0ca2afc739c00d1316efed4f41526620231008ad6a142bc007e48cff033fcd80cd8c92d7bcf6ce922b6ab58ff90d41e8daee7871e1db7a971730378e47d7ffa75d8b30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cefd1864e3e467dadbc0c5f6bb6e74ae369f332fdbabd7f55b7f343314f022a6c36167743902c96ce48903b9bdb4bf9f02310098663ac1afb8fa2f46ccb30646310def2392517e53d1bf81760ed83847d5b85abf8fa47eff4aac533ebff94185f12ea60302047c435bb500683066023100e62cc3e2c85746ef3f101043a907d3fd11260ba6d067d6510588a75fed79748a53a8e4a7c8a1d9b567bf2db6042a653e023100a24fec497a0b7752cb18aa8b535dda11ae62771c62ca9f407daca8710e5b0ef83e9c873b83562834f31eeab8ac4d8cde0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310099a3f95cfbb3844a0323331aaba25c3e091294c00405a9713540e4ef248c0148b671a4b41da96e83c64954e0601465c702302c0904dfbb74c04bdfea3a0c0bf70de5b29c625993296a74c5a0e6d0a37ccdb447b294869af870d5934bed7236db2abc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310087832b5af6d5590b8a5a5c76326620a678dcfc2046bc6deb2facdd9d6a9d7364b49b760e4d23e401cecfb19bd46762d0023100c837f9cc250a5c807e87ba5062b38274f0c42d0664106366a2d29b0565d485d8af11ab0ecf3e3480b047f791c06061ab0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100988d8003ffe25c815c293d4a723dd57955761157487be499a8c4d29602b9fabd042c87f6f24ae9a173578afbb005ab87023100e22ed23cdaa8702b25c865dc4b4fdd5c4d67175cad73f1b68819daa503585153ea02e737cb787bfe7d5d2c97018354860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230409b83ace0d24745bf2f20e8e36e5dfce253d54b303294529c6e82479eaa8083967f8a75f5b2680d20e5ea4d947e6465023100fee8b50afe72e864d42e8e5461c93220488a801fcf94f4947ef9bbbbec617a425bc04980ee0cc451b49f1312442542d60302047c435bb5006730650231009b0bcbc9eb521ae64e7cff7d01ddd0e5d4751bd733cae6ab88ebb5374381b028a7b4f7fccbab80f6c2befa0554693220023013318de70b8de4f953bd76b82f6b98d2f07c25cd55f60f99dc484ad79cfeb5423ff9c7a18569635ffca9e4087d8765250302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230584e325b3422ae9934d8f3023199fde38962a480041299215fc30169fa09bd452fe1373bbd8bb5dc385d92cf1da2f329023100a6ec89913361c00b9d66c25e57cfd9f52f73ac306046e9cfbee209ddcd9308ed5a1be0c8c5e6ad92191a1d2daaf735b50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008a9dc7188a3db8631593e521c083db555fb3a3020b07544cc1b197d2a98d6ffdc964fee89e533cfa19052295324ccc7f02310091b1bdd5105142bacaa87182e113e0db060412e52b573e80699f01dc6b8c01f27b01735c599ac6305e62424697f5e9200302047c435bb500663064023024c51dca7176f80dd470ec11442becb6b3f37dd181d2cb47c2ed82d05a087d7bd345e03601c7a067be681488b74ba4cf02304c9b6f6e186ff671a2491bbe4a7ca60a201c3b10d31d2b5394ab9403207f211cb1227fb4cb8549a788dd95636673d9aa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d7947fc9077d79fd2cbc15109582d20be9856371a4bc58366e58623040029fdfc5c834da0e0e3b8b50b17e094d2740f6023023c71c00f600716356324b9d30d39b52d6bcd853402f7cc4ddbf50ebe2bf84e2a7b42d3e8ecca2923402f7437bcb96b10302047c435bb500673065023100cd3ecd58a819767df96e8d5e41421aebb4b19813ff37f00ed6e8cda40c71204d443f4541f2f9454d5f2e6b207af80e6502300d9cb1dd062eff77ba69950dda7c24d671e93f1d25df59b5b25990335911231ecb673dcddaa4b056dbb4b36491137b4f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f2697e980878b544f1fae36720b87f7767451857a64067501dc2926444e78b7db50db4c9c48d52190154cdeb8d861004023100ddcab3c414234952121bd36e94c8639a4c12acdfdfd21ac3ff107d2c5dc2a13968225e3664e11e3d35781ff6d59cf05d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023058ce0e338708cf5346d344e683a1ac9873dfabe9823db2772b381bfb748642c3bad75374a666d2620d0cf83f77460f52023100fd6bb729e1991cb3ace8dd4a68dd900cf00c438678523b9fe10546a9da7bd52d90b6b7d44a234a49cbed1dc5f7ec8c370302047c435bb50067306502301bae0ac341a054ab66bc53d28b64a6cd4979245bc79d12b097bbf95bc49fba8406a8cd0fd34c464120489ee893f1f53a023100d654b73fef5342fa50cd65f0ce1eb00066f6092a437dd8e097363191a2b6f0284725d88d53b08834d466180872e351400302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100eba5d91db60aa3f3f9ba36b369f5fdfdfbd4ccd01026fbd9bfa2aba884eb310b24dcdcc3f51c265795d15ae0ccce11dc023051f0dbac5315cace277ebfd91754b57a5bd539e1822fb83dd33e937b0d17fade34c94141d5ac686aa775d977936d5f210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a33a49d38593e2ba1965b250cc41c8f44daa7d2991d7626b01386dad2ce6127b4424c8192613b5f34a10840a2dd6003502302f22af6df7808c7abcc0712dcdd41b289af66be9bcefc1dee8adb6d56e9bb4fedf3fed2e878ab69e34b8c1e504df59180302047c435bb500673065023059ec38287b2e1d219ec03512fe478fbc5720df620f228a5a0532a7aecdb86ac0309c236db2e38a98f1143b165741af06023100b2844506ca297742a296cde49f9ca8409f0aefdd13f957b62a9a4183e72397c86da3bb3d2e4f7d35fdacd11cb65564300302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a04c9d5598609bb7fdc683169d05b72117e7229c8731d1ae1e7ce83fe14eb2184f801eac0f65dd143c24e9e18debd650023035afe0f465c860512a7c67a06c4068016e9293c8a891c09d2e4bd4dd46957d5869427d13229848d97b34cc0817886efa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306fb51ab02f36e4f666f73ed55de3154b75d520209ab4141c899cf30564f81757a33f7ce28fd784fadd41c6bfa29a57460230690f05a0a115baae2d2bc329f57ce2583192ef194c2caedacd980ced2e2999b6e2aceb13cb58169d60a19ee8281ef75d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310091df5520782643bdcf1ce96eb4be9ec946ac0dae2d33c7cd6fb1628439e64e20e51e4b51e543c9bedc840508228dbafc02303bbc73fa54d655141f31363a0fbe55e8306efacdab91ed727a1b6affcfbdef00f74d241dae67a316eed2bac39a9d62290302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303e77ae7887d1e37f5e8c6f3dde67a7221a91e448bb7b2eb724f859441330e6e87b599f1f73795426ebd8482aa07aaa95023100d8b6399349a9d91f667ad32f9f317416dcc628b981964caa44384422223ce1a38d821ee89142c434b6e2f4ea63f062e90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b328e038c5a5832417c03398bbe018e03a353668dfb328e15a43235f6c485392451bc93f2ad9a88d18231fa1a16a2fe30231009ea5afadde910a3743a8c00f78b1507e77038662a9e9bf7aed79387c4c326251f4a36eba9b2564ceaa7b2a007c60a8d00302047c435bb500683066023100bdc27ec620d79ce76ddbf7e3d709d059d089b3278d41815bd99616dd2f82acb6a3cfbbc9e53c517f4371f1209f5a3fa70231009a260ad6a63bf42cf4eda9f06571b44eb21390e33e0e1e955c7292c8e38bec897a70702c366e5564c7e15e52bd930de90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b907e85dd79d8832535361114b770a05ebd797bba96385b5dbb8a276fed94f8d95bf7a7817523023b54a026ca093574302307b08dfcd0967980c55e02af1c80b1ecdbcb66c827eaa0b1bec51e6947a3028da8c487ce03712b8cb13766f1fd3e5a4c20302047c435bb500673065023100a16e61df4d7591791bfd41c44a19983f9fa9b3f6ed2527c35ab5ead201b3a067ef52ddf4d80e174cbeeae494c1604039023058e881a95faed585036017c6fae07f5fe491d2179ff80986f99a540e207450e6bcf046af5ac809e4392e9b68276d02770302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023018d30556bfd23cc38bb52369c4b742cb26bb69b0c4e47957ac16bd1f044b7cf55a2e67a64f0d05d59dd44e3f2a3ca134023039b066cf228311995c56ea40c579defee9eff3fded3c1a343c0ecb4ee18201b55b53911c2251cfab3a1152a20ba029050302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ee5b341741e50279cc0e9bf106c0a4d077dc595248556b74cf425852c61549f0a8906ee7b28fe9b0f93ded42653478d7023100db3da1ddcb5eb2719fc34a133822ac1444b62dccbc988dd9b76c097852943047ceab157bb03e7c13e39f9a9dd67224410302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c0c77d10270c8ca5edcbeda5c3fb7dd9a4e8d37fe38f5feb1ead6ee623842dad65743a112df216ccd9f19ad008bc31ec02307a8e433fe18aee0ba759d5efd0deaff4d15b7cde1cb66c398264b242ce2ebfb9fb9a1a64a940fd9766f81b6372d134be0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023000d267f26065db62b9f88655b6abe851cfd48a36b7651b919b9ec54e9fe0bb7db7bb9f4b08bde45f959b6c9f298f85c4023100d824ca2ecad3698462e4935729ad96f5786873dd0b43e54c6c378ad596ef59f617db7daf77f885c5f2e8e0f7ccea42880302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023068a3a5924111d735402c05d06971af48837eb8f4780d6a49c27d99a431297bf911aeaa8c13cd828a2a8661e3cd52f4a7023054bfff1f762c66ce90e09fb86420380b06c08e0d09abebe057e715dfaf3d6c1346772c1ada3039f81644db8c500c17b30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e30edb32d2cdd75f7ba28278f2d4bf83a73080c553bc3552d6ff0cf09450ae796dc52d842d249d6cdb20eea50b9f047d02301fca897b307afab130b186c38e942aef21aca8868a0427b2866fdbe3267bcac9fdb41d5c9522b3f03b1acc9510b314b90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009c503f45a77a9f3716de6afa7e41a618f43095ec3a3829fef121ead0fcff85eed511406aaae9ec02d85594b80bb3e59902302317b8629fa14e85a841d96712a3f6eb8f38c68f29febe7970606e676c310fa38ee0c8881cbcd0020ae92e35670b08f80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f240942c08401a5570cfee3d5f62d658601cac25479aa227fb2a949dc6bc884c16b857a58411cbde772abff7dc82be19023100c52f05050a6ad26dcbdaba4f63f29dc5989d569bfbecb012087f1612632bc5cb113758aced02316aae2048e35b1989230302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008808569ad3f39494b83829afc6907be49b653a9332b976b8157f0723f4e8a0aad3ead2afbb63a65751ec86bd40250aff023100bf9a44cf3378d3b708d3cec4c9213768a0a05a9ff0756ca32d35d202bda7af10c53084103d69c6cfca598d38014994d00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230691701eb71126664dc0a22118dac1c9074f77a95bbd71656cd9863ea22631df55ebd1119f937a4bcb12cc861ce6a183002303410c331d332f00f030175f6e031d4cef39d22d19858d22b481cdc4e61c3a63009143e4671ccecc98c751093f1f18aa70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306688ff01ddbcf18b82e7bc0f3c39e18ee67f7790ed35c68979f507ae0f791c96f20d76ff1805f5bb362494f6b5b40a3f02304375449c9512d7a9666ea4cd48690a4a36b668d13a81c13a67c75052ae107beee5eeb535bfb99e43deebd2d32d8d6f630302047c435bb500673065023100d97fa0fdfc844307443449895e59c05873075b291494671a31dd93c73a85314cbdb3d8228c08aa60f589f1b4db8dd440023053abb0f5995d8bd20d9b9fbf7e815c27508997e62985101e33d0a76f6460854eac22d44d6b68b717c99ebc01fc35e43f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023051811265bdf1674c9d447807ffa60b55a32bc7ff887fa77b37c3260093eba63c6b4160a11278f0c2e91cbe6c9e4e339b023100fac063f0a0fb2f8d666d2efb02ae175380465cfdee3d4a89c7474933cb5b12d30007183a70fbacec426116da93ddd1eb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d37e36a44d0430c05d36db407ddc325467485c42ec39488f8443a0281e91e548c5cc398b58f3cc60720ca1ea81049d4c023100ecf294b91a80281e3f2681c07ef6d2a436c0a27a9f884cac452f6d2d5b46ad8933e92c757e6c83c26f68eb23d4b0f2f10302047c435bb500663064023054bca8b23dd0344f38717734dcb84871677b718ebc755b59b079a37c609c991de9bd20cd422a213925c9ade3728f3a1a0230419e350a469c8fa0cbfa6e6c11724be0f4a003f3f09794ae9537f7d955a166c5d8df56ab32b889daef01d11957572d390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230100fa3ff625115b15d1d7b4de9e72044201b3fbb2502304e18357b948a5737549a5896e5bee4e573df2c8a24d995130302310094a1425c0a7efba0c1b8250e911f6ad7d7cf2242f82982182cfe8f68cd85fef07549028e32d06ee6e0ace05476c5bd360302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ed2309f962488ec2341419d866c9a35bce841de5c5b23873db7f9408c0690782387e49bd5a7492b5ea6af41b8e4d04df0230325d46edead10f0cce4cabf6d43269384b633809266f18d23afc02977a33cf8d0a85bbe31944c27f7655026c936a46660302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f8b2fceba013243ddbc98b60b9cb8e621d953a5b180a35981a0138001c2f9370bb9526778a8d9739ae02ee3186a119b702307fa3d572633d6012cfc9daebdb97d2d728758efdace00b71f309215c436170c6ed4c8814c1dd9a55d94c3f4835c011830302047c435bb500673065023100fcfee3c08686888e7d2a5de5f28daf71201667f2250bfb764964bec05f118676261c0bc88e7f761c0253daf452588e90023019a6d4d13f111f3185b9ee33b7fa0fc76643990ba7d0d2ede27a33d7d24775bb84070d4892a70f62e080c714407eeab80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d310b92fa88304ff5ef502b092ad7178057a3092e254ebe0afbcac7673a48a9239168ed19f202f2e3c6056af6cbc9b4f023001d96d26367c3ef94a6977401cb0b9bd92bd704c2fc3375979b8671d796f7817ae6a3a9e1fd9473b0a9a14be8c3e90df0302047c435bb500673065023100bfa16b2d8c57375f418b35944c574b36acfcc972fa0e987fbdb89006fb16da10d288c2cd197c66b644042c4613006d1602303678315b4139b4da23c4ee353a1f6df7ee6c9ee5f16b12ca1aa8a4a031cad73e1906401e27e3a5e9520029ddeb9c0abe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310086b2462d475710411558fe133d26a637d9321252975ed232cfcbeb240baf25dd2fb328640d26cefac5e84df5ae610d9d02302b4bd2949134a375bbe0c1b29a539fdcd98b0d3dfed7b084894f27c59eb4707c11687dd8a3d8f2776425994a3b31577a0302047c435bb500683066023100cb7eed1d1695223436976adc00f73a99b55f96b2b773e1f1b99af342734e4253102bb6bc83b5184cfbd7c58815fc74b302310083645c31d90eb95a55b8593b8990aeeab1f4bb428aaccd7753525932b2677d007bef7bf7331fd1d018e27360d6feccd30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023023bef337bfd0a2c60674746ec335afc4a5efcb15133d8183ab9d621ed6cb78a9289e58d86240a789bc2adc5426ec3987023100baeb736ca32714987920707d53e7d90560127c87ad7f9c134898dd7ccfcc907f11f9f50f4bed68abc9170e7c18ba3e6a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b86da6003ac341f7ed4d837e721fb1a53a847fe1b026baef8fb079ace78722e662a4252ac17792845029f651ae70b6a902307551311fd7c8cd9b20c0b147b238831a5d621e2397d947e332b7ded2cf385a65235f219943549fdfccc01c9e7c5a62d70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023062a770c92c4b6af4e33f70189da1345b65fdb7f40ea5e83e8f049280f14a0a86e31736052974604e6efb3cd7187db4e3023006ff128292e2440865520292eba35456a50a422f4c3d68f42377f88d561f4b0ee0c42bb7cbd225eedb25a1c50f3941d40302047c435bb50066306402307321b386b710d2a0101302f5707bc9411ef96e920a08269fbf04602e41f8127cbb572d5cfaf866d8528e22c246f4c5430230326f1ffe0873374605fb6aacde6a68710ddd6b48df758419aad0b01438046b0d710075133a6d07be621f7f89b1f297f70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bdd6345eb2264e87a4918fed38ea06136815fadc2dce1b87f3f82fcf3aa41090ffaf9129ab516a3e7268f4b500eb0052023027d7fa4b114eeccf56656d53032abbf14e8f914c1a75d5d4f742052f1301cdc58e736758cc46ad3391e60869d0e9003d0302047c435bb500683066023100a9a898622e81c898c3cca73af0df6d8cac2eef0a9cbfaf6e3eee387181c77795c3e4307a4cc5eb27487cd608fe85c2cf0231009a265e8a17758359e67b2049baee09f6f585d5e2adf250f36812cc3ce8fff1a28a931d05417bfcd5b85e655a03c57a890302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230737deccce1e390fa0e24df24e64ad238096c53f2013f409def14cb5e22cf8f47c7bd2d0ebea659f6a0ae84d2c6b185d302301c067e433dd8ccf5e7c651c8fa7ef6ba85f7b4da894fe173a4ad943b7c7526e839c5a6eb1a9d3f7ceaed995f82d699810302047c435bb50067306502306f956ed85480aa6cf606f10d31302cf388c4c6d5230a4d80aa64b6bc5dbbcf3e822477c3cff2e338514573a1d4db5f11023100858e761800ac9f6c8b59b458fc5cd20a5e0d87702090992be1ab78cf17144bfa5f3a8cf61b890746cf54d7463fd7bc160302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023021e291b2d2843020875122ddcacfac228a12799ad7e5d75f88fd14267bb3eca2b5176aaecdd1c3d5a4ce44b6ffe778ab023038cc364c30385f48226f82a76f34e3ab20c1aaaeed11ecbc7bcdb21e03f22f79ddaec8d28ea576d9fa319c94fd062ec90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302ad65eb5301fe0d78a5243b91ce73c1ed58e4a354bcfaf328bc9e4c2ac82dc5728896231ced86a5493908e6bb058c331023100a45f5428d3a840f600027d270557e75d8eec0f87a6183a099699562160e6dca34aad786ff09fccb7356e79c1879d8c3d0302047c435bb500663064023011b8281b9d2d098a968d5fb4011c8c5044f3fb0f1e3e72057db63edecc9a909955ba207cd71fda5384eaab8506923ada0230178c66f6df83bc53f785237c64fc2f8072aececfd86ed79d43249d321eef64ba83bf2148703717bc1ea00c46538d425e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307d1e0c13262ca0d2402765d4c0bfe527000d9333fd1dfbd3ac6a83345b8193792c0ef635fca82eeb44a501f465555571023036f6031ffffe1fd21025a765e312f5711d4705d652c4de83f6a9d62bf22b15aea2289a612a3fbd600cf6e430bc9e46a80302047c435bb50066306402302683cfe3a8f0a0e30a741d6a0cf696910c665cd7da11f9c226e8daa85e2e9ff7de856c3d78bfd819068b61f26609f41302306bbba81cb9fd599779341bb6231dc2e1cc0d43c7af963ad2dd9041ae0ae4aae68f439f9ffb9367bf66779afc4c3cb41e0302047c435bb5006730650230174210097be528791e1ba51f33e25f4d3edc05cc40bfa6063bdd47b8436fcb277b1f7790c6682f04e62fee62b9649a8d023100c843849f374c904add885a1e7ff0c7411e0cb8973d36e77e089da6011893c43c8df0251f56aef292527cb611a093b9590302047c435bb500683066023100b7b15e066371bafe0f3a07af08b4d4c15965418dddcf1f7997fdbb8a6f6c8541e654e4b54a940252cd2ed47c6edff72d023100906ee762c892dcff29c3a1edbaba0fe54bc321ce84b081a7efda698430edd2933a157deeaf54ed794b180bbd020f04f10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009785972d3db5f6e99f77c56200491ab7cbed2b697d8cf41b2df4544535e7b845ea92b472695067cbd9c4ce94690b91db0231008121e54c2cd237f7d888a752ab520f1f539721643e559575a0913139640a32593e9c4ce509d1ff482b384a99bb4ffbcf0302047c435bb500673065023100a698ff86cedbfd6234dc216ad9bbd6ea173fce376d2cb475996efd82cfdbcaf7910066630786857747b1a4147d21f9b9023013a5811988725afb2ecac8520c79d1d44405d640f6d367e0a23ef17100c6818b02761ea3aaa84fe5c36574c8c45c0fe60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302f09de0735637c9d1f18e235c9b4555f68297eda694211f352b47908577086382fdf14c61d50f4969f846c1245c182fd023056516b86c5c17b13f49753c83c2ad4b2bad900fadea6d026b03bdf225fd2942f955fd2028f487fe4ef1f71f0013560100302047c435bb50066306402307253d69e647f10d3c7199fd3c23ac328425ef4455f3e0d555d53dcb3d85f19ab9b5c2b63184d7b757a4c6d625bbe2fdd0230257f0b64d6458173b465dd06ec95dcafa5a15ba6e6fda421231d0e91a5d1a27133ae909b55fcf448747864e6692d49a30302047c435bb5006630640230307586274dfc420adb8ef8ecf5d99b65cfa4d958d97e86213c2be50cef1250386ce3d7260e1195519a2b7f2f0427237502300f4390ef536b2a4efe5009ca2f7250b3402d703bfa3671152864383a9f3f7de8820f2cb24ecc6b397384c5b4319a62ea0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023051bfa1ea7ee9d43c8f3cb50038d8986331db061b78b0e0993778396f330c826903362b59f439a9d030b5fdf3e5e19464023100c149de446e71a0a0cf6388194e33460d20032bb260c9f0ce78cf88c88290e9d1ffff8e372d29c140b37e50fd5fc96b6a0302047c435bb50067306502307271875709eeee229c24d04d5fb6f324ed42380df065cb8e7e1b8bbfe3358c20f65330f473b5dd3c71aec1d13ae659ab023100a7ace93d7a39a682dd627ec7d2bfc4e0c3e78dd0b68b2daa77d64473a6bd8780cb0fa981768e54dc95a477301f5eec310302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c50e2bf22eed8784f8da17e43b861cb86288a0a2e9f1f136682cab098d209e54cf15b6667dfa598d067ebe4bcaa96b30023023df9462d0d51d185a8fbae7724f58c9e68bfa1812daf9fa60c17bc40d7544a05408c30d58772011f758b9735365d10b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023078315b6b932a0061ab74f829717e51817d28b6b8c626d604f776f1999742c5b3ef140a941c781baf962b38ed299fbfa3023100f10d889171d4f1610a8ac965aa1a3febfa34f76c94c0deafe3dc37376a4a07ba452f8451b7f409453a52ea6a4a9e73880302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305f2b89cca232e2bb318f5e56d852787c4a9b57dbff265b8831b0f5c2173665b53b26fec00a52a3a5911a1d32efe1cc4f023052c81b773dbebeec27afd0086d38fbfd90af4efcfa6c2d678b0987978673513fdbeb9c3e10bfbec16693adc54969a49a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023060723c3f2466f263cbe456d5c36186aae3a28ad3bf2c6d44187f0b582f1391194e375d808258f72d98e2b0af3f33911c02300a993fd033a49479a1458c7cc62479bc80a96d54407d28418fe52d12ab0c2054c923b70ba9b725374c1eb83d938ea18a0302047c435bb500683066023100cccfe4fb4aff7969f3ab4b400225488701c8f55edb6806f788db394c77b839be863520af9753edce301b1cc4a1e364ee023100ff16346fcc512b477e87037680dec4ee71224a41f0adb984e8442b7ecce3586c7e3af9705644d441f284c2786b6cb2fc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d3eab45f39665b4b0202618c365102b6af62cccbeb110d18a6c59c7a7757732e9f6b5251145d7b710ba8f1361a373d6402310082294f674c2cf7afff65ba3cbcb470a74cbca1e962f5e5046e3f4014436f53759d2a308eaa5371bd729441152645f35d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023055b007a16c49d63ce6ab1f47df1f12f9d64e928d0bc985bb5950bf5777821733be706b106a097cc6ae2f9720b7dce302023100f98815a5e26970ed1cb5f0da2d4e409dd07c950aa445cd2d20a736cf8f7a5eccd88e3788f1f2b2808e9b2f583f32e88c0302047c435bb500683066023100c6a6f387c6a65eb27df8374b465b0517a0405e404ed2859ecddbf2745f3624083e6dd7413e3cce9309334037471629900231008540e04063937e9799e4064109c55e797653217b73424583e5baa2d80102b96da4658cba94a195b7e34a88381b02545b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ab33e27c75ded019ef2ae61f35905671fb434e2d70e102eb918b44cc193b7cce7e298d1e1756dddfd910f917484839df0230741d83fe72231abbee6fbad1622a015baa67748d6ac92115964b29546292cc6b3c57e22d1d092f73e67a0bbab563bb310302047c435bb50067306502306709f51cbb42ae5e4458a997c1289ddbfb4d787f54795c193a6438e4610920ba37aa69b7a757fa49770d539a33559454023100f1031acdfccd1c79d8e4e85f2027ed60786e9a4bbbe215f106928abe3c314b46e994d6769243afea5a6543eda6e745be0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023049d2baa4a23caf1ebb7e88bcb5516c469dfff704e24985f61c6c3ba1a1cb3bc91ad0e2437caff182552423c76d690c5402305334bcc6d12d9c480cf55e5ab0fec7c183d1ba08c5bf455077e0b6e921187d5a5fb062bfbaa1c235d181c57b5f015c690302047c435bb50067306502305a5da3d0b33ca4200e048be0458c25793e37461e8ac6ddd6e59a076502c77df1abd536f32067533bf842423eca6dfa7e023100ab32d1f6f50b291f2a273f969d595500ac08af50a0d7328278f6e8a130cd44d6322ff7cf863100751c7e52a4efa1fd960302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e0117583564ed54444f70437dde73a2f1f66f02efd90b51ac7ee519825a0dcaaf63436b1d220044296960d4ff9a9bfd2023100ddf1caf513909da8b7e1a5e49fa0dfa9395a4e444174e645de9232b197190018d61e3fadd4dd10c3c888a44e89761a640302047c435bb50067306502305f1df3e20f5d2a195171511386857484501f5ee0fbbc1c2dba1eb71420d670910cc80ab1c773d086223e0ee069b6f217023100b7600b4aef8339a53801694971af7b5f7ec199259d9a04c2846d1bd879789a107f64aabc86b187b480dbe1caa288aaac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d8c555ad04f8b0ab9d44a2e56b38f1c7c2651c87e1057d75434c25293d91f58827ae75bab2cb0a07493add90540f51eb02301b7d014db8e7f57b5f1927dc18bac00ae8f62c40bb16afb84541653e4f1201b418e5b22656fc6842663139c288c679420302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ecd939aed79510fe60ab08e77505b8f03e690af5e6bfe026062c67db0e4f2cda81ae6e5fc535292d1db9bebc3ab141f8023100806f53fe47ecf42fa9eccfc47445370e3167a11c9dd22e62711cef591d10ec9238b1505f451d5897705913822bcafaa60302047c435bb500673065023028e27cd37bfb953e26ad100457e5906913ee653487885f1e164640d3f515d37f19c8baeea4d00853ee68a5d599c006810231009101dfffa6aeee80139e0f2ffa19bce720f3b3bb02d3fce2dc654d5b0e3c11d178a84885467b95515f8a17e95c1f6f240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100baf0595852f70633c628ff95e144f4e78486819183a582ad7a891b857b65e4dfb4a281989a80fc2444d46b2e982eae18023100b1ac7bba12d661f0ee5b070c55c32e825b2288efd8b462b0644a12804750609906b68b79818ef754ada8d3d466bb84ba0302047c435bb500673065023100e3cf7024a3e39116bb1ad2682246a1981486a62bd1306f679e76c6995791eb19d41311eafb5666a4795cf23bc70fb1de023042d627770b8c6f20b6e8bdcaf9fe18ebb2f938249135d7ffbfc6c003d546ebebd34cb47d2c219db029b88c9332e886ed0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009b16f4e512862f42c8a099644e29b6730c2b0d84cadf7d0d3ffbdb57efe15bace2bb7c6a369deb32f8d2317064c3c106023100a6ff150ed6342cc75dfb347d6504583f3c46a7fb49567dbdc7a812f75e4b160edba805d95205aac88e09261c3718403b0302047c435bb50066306402304436707c60eb96420833ad4d3038f7f4bce8768c4833eb63a758d3ef7170890b57c3b71181025e53fbcde55d1a66efdd023006338c9ce1584a13212b9c9f93254f22aaaa3caf75f3907867d5c928b6faa87fc7fb75420a0929b34da43e990784c6690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009d5316affac4bf65743af44b97231f5b05c0dfc273784e9fcb9cb985554aa26e7750423bee93b030c19fd1cd04a3243802305a1f7a56414bbc2031f6e80f4c95c65064a43c9a29a15efd821a7b1646de115021584a7ab96e58fca0a21d2e7463e6ba0302047c435bb5006730650230442b27988f228ab0b37549b44dbed152ef26c49a4ce54182570903b01f7c878ebd44f60d21a9726597f493503a74894e023100e592c0934469ee3901314ad84c2bd988e54ff2330eb8e0848686795e74064380e06f1c99abb5420db011d1ce4c50c3400302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023075230392a422a8ddfd3ca09ebdf013abba052e12b81206b69d8956d18b09dbd256a1eafb8e37361ccd179f6c00701313023100811e04d611baa52f8f54b2c9138537fd27e76fcba4c64d80e8345b5d5b81b76aa1e5e46e372f6e82954d64ab7dee95410302047c435bb500683066023100c369a5a5b6f14f92203c6ed5e3d7b66b98d900432e6b78e1620ca6a795dd026d9c30b32ae3eb75f757afc91c207d8456023100e8a4d843c712ff478d9b84fc9d713d895df2c91fc21c142df202394cdb94e8d512e6d758f511b7685f445dbd9f8a675c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310098ca184f58e2feb3693840836846444dadf302a12c3db62bbe615d7738764ac5d886aac8c4f3cfea904151fbb2d2125c02304b28a459eb6016003ef11cb476318e286b2461bcb37972cd4fa39c3989e2acf411b94c82c457ce1d48d30877d5ffb6bd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023061f7399eb2934c482f96788622e3b5b51fc92d890671881c1172f5ea474af890420cf7ee66602f64f690e638ba5cc8d102300b53ae781be1b0daf0ab20fc7486246e9ea12df53556b0bbcb8b10bfa8610c357dcfcceeabb607159ac52ddd1bc43bdb0302047c435bb500673065023100e403035d8935654da0190ebb4efe3d8231c6d5b7b886c81d18a2eda0155878b1877ab146ca69a9e6ef0275bf03321cdd023061b2ad881aad84562e0e3c8cbc4ab0c0af4b629fe9dc1c5723f10b376d9c418b298de302cb51661fa00dfeeb47ef4d560302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bd0755802ed885a57e59c277d93bdf807a78703dc5d315c7cf3694b2ee1ef2c06bd7052646e7170da2cb100f6adf722b023100b5370bd94cb72b83c81d5e3f47f9f64f326496291de1e0139772075202d57c672bd9c2587da0d6522dd6d56b7665d1170302047c435bb500673065023100950a9e0a33826592810321bbf3c8a3c2732e6d792798ebda919cfa86fa23f24040102f543f8d6f6ebc18724d03a0f18302304795c9f356fe66caa0c9d65e8a360fde7917cac27f459a69d07b672a96ead2671f7291c3dca56c159bbfe83cd23b0ea50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301f0e637df0493168fd9c02250c4b985a736a5f77ce77565949e4d8f0a70040cd055d0891453d86dbcf7ed92077705e710230436a0661476eaf5ca7ec05a06ce5902958d3e1331c34dc209ef2fa4487b2253918e30b0c6782f981e3be0e7f7382fb620302047c435bb500683066023100a31fc5da12a621af30109b41aac11e8192446929bcf2ec1f07acb8e441136327f9bca1ab28a828618a52f4ee1a72ffc1023100ff46113e3e134267acc496ef34281dc478af01f37997669c05fd042f80f5d5916d0906bc5c2b609ea31e31db445505b00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023044ecd69d8d5ce1e57d0b077f148dac3b4b9239ade717d7e92c7bc3f866438967fb88a218d7aaa042a409bf3d2fb8b576023100e8a1559e9be474e5d546e16bac53b9a285ae8a9379c3cd3cf8a16ea19bacaa43ac45cccdfdb4ae6782ab2ece2ca037950302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303aaca88c351be750fb5db3f39776589c0dc876811a5d4a13c4c3579083b23a7d14804418e38a4388af0de25cf51c9c46023100c2548323da52d184efd2e197c3fde5068b12b6507a811555c288742757a55c513fd61983583bf0d7a476c8439160c7880302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301c465f6283fd1dd4921d67514ac0966476e78df1be45de98c1f2f6a873768cc06e7b1a1b73301385e3eb6aab2645d8c9023029345a66bfdeb94df98a1c9de35d145eafe4371933987a9855c66e9934ae995e5b73b535ce999ced0a374f618bd487620302047c435bb5006830660231009b9c8abcbb34f7785c9104978de6dae026d171bc943a29094dc40cb1d3e134b6c61d308ea7e9f68fcf7c59b1de6f37ae02310087d88741c354b048baace8af0f636ac0382757c972f639f73c9d9b3944fb329b3dcbe561db45890ba000a89b2c68e5dc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307523135c325a6ab3e6ca0b7ea995977c679462ad1eec6d30aa2459a5c13888b77c35f27d24a089db5becb44913063bbc02307ffe5b2f832bd87d6212a9a021727af0e973c2893052417b74ad35001dd5d3ed9a86f95ba82d7bdada685b8a03cd86280302047c435bb50067306502300be759b58d2a090e5a9ccf554b2e30dd009fd2f0d9a0a53656f8bfea4b820c8acfd65c9436443ebfbe34cc842acb03dc023100aee02554061ba24132e64c777349e2143a70d6e6b1126f1a3a38970bbcc19116db24468b760ec545b73a070de8d2ece40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304aaf991da2257296c2ed7369d9507e1930779233cf6a6b9d23966b29d0b6f2b255da8aec9f80cc30561fcfa3fa4b031f023100eea0f676becadd7a404d769fe4ded6d9ed60965aa0e44fbfb77289eaddcd7f1f8bd389e5dbaa83e2b6743e4ec34063f90302047c435bb500673065023033ddef18e4b051a01d04070e837a2d808422557652faac09375891c5ab953aa3acda92fdc4013e5e565774b78e1d028c023100d41430459d450037c89878d12ec090532cd47119bc1fc878ed9b8618e107875b50d939f70f47b97fe425fddf0c7ec2f90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100aaaaf1c3a95094ecaba5edf38b59ce769ef3f5ad392f5665aaa2bf016eae6ecdd792765423b91c7b6c94aca260d640de023041469a2657ecdb6a03d33bb2f0354fcbd3efef514261db12986e5933a63b3cb39d80ca8c4b6ff008b89801e92afaf4d80302047c435bb50067306502306ed40ab7212ee6d08cb8c7baf86f67b18a0696420fba0ff72ae2e7b7c87db7f770ea4b781b8eecfcff9b91c394eb853b0231009d2ce59f5b60983937f3939e60bc7dafefca2dfbe1a4d3c4e14d5a99fa40842ff4f3e1544ec785bc2140906e0f0f49c30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230188ecedd9cbce2b79ad4b489552d69bbd8a208f69d87f77ee26f95a757ddd8b6228191955cd8b2951cae5a307032921402301466e43cb631c278f285c54610e83938e8c4579b7e0668e7d85d452bf0114f7577ace8197241325ebad3d789f00aac000302047c435bb50066306402303af9b9a89a155d5864fcf7d90867086a2efb6f1269a128908d11cafa7ae49e3a488f2c0a3d4da4ba7dc99d4205c7413c023005af4bcb1775529eeb1ac19e9104ec2e65640ee639d848d5b14f65edae573241a95833f2c184ae56a92e44a4e73953480302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023051ff6da5493d814ee52b0b31c982870ad9f130a5bae15995c5a17211bde0a2fea3ee5a981d14099a0ae8b8af65d7ad6602303cc6d5b6454d5f242718c0458ba23a589b9e26a8b637e2bbad2e48756df9f99619fd7f7bb079c6bd01dc5ad92a4313930302047c435bb50066306402300357ae9a80adb21ab5744e0aa1ec53b5484708491f7844ed525774aa07507e2848ba4aa7693ccfad369738e0ecddb964023051119259c1babb2114ba32b5f95a05df2903523b966ee3a8807f5f8d361bfed7f6c256b1152ce4a73d57b97d93ce77ed0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d4e2958facb04e19dca470d62df17f01155a1a485bb869d477cb61f9bde56ac107952387146063f8f6acf759377637fa0230291fd100b46ce783c76524edb8bbbc255f16d7ba95ff950a77ba8d502881120cde23bd5b4327e7b3330d003c4da0c2180302047c435bb500683066023100e0e7434826d7102a012fc9499c8753f9d519cb11eb18546d9a122df94ac4819ca4ef45531312c213a1aea5dbd49da458023100feb8a5d1a058f99e702a35b505b4c2d24e011230f739b00df82c71f46e091dc671e8018efc349d0e51ae1a9551bdbff90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305f1cc12b4eb21509b7cc3728e93369326b41467799a0da86eb9fb0690845d166c5dfc30fac31a2858bb9ffccf7fe396002301c298f1517ff18a1688892104f403a09554f1a654e5bca539c3b8cbd0f2436b80f73caddd1ca906d58f0f5d03ba69e0e0302047c435bb50067306502307181f0075183869c1319d48907848b65ce1aba7fbcf170944db33b4fee53fc96c0d5279abd2ce0095e6e27d372efd0d402310088b22c7c471157cf4c52d861830e35895f29e734854b4d2f78e527e7df604ab3da08098783a478db3206090d6739d3ce0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f53ab510291d4267f0b0896c56e85e5ae70732ff8a95b3c1d19c792b148a89705dc25794992315935b0d32634f3a1b42023100ed4e52ff301e2851410d3023fd7ef173d2a82c4cff6bfc63f3287c8640f31fcaeabee28aed2630e7583b817adf635bc20302047c435bb500663064023039946d298161ff5fbf36c59e05ee70a8a168349eb9d1ae772593e375cccc759301b1c52ea4f01949863cca31948d92a102306cd6cd5e1e0c8ed3ce96125376bc7144802d94abf845dc0fc82a1f6f08c7de1b2a402b731c7287256a35161c7a60f9a80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f931f52d3207db64f6f7c3f88034ef192db765833607e125574ad41c89efe18a67e189bc5aaf5845466f773147b469b7023015b1db38dd2cafd9bce063f3d56088b294e6b3ebf20308d8eb5373883c403c479d568257de7fad5c5c36dd02c25d85080302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310097376c0f700f1397926a8d66ef11972551e34d4555b53a8bcff687f19e60b4d49c8d4372f600dde0370e54214ebc4660023100eb7672944a40f7d6e14e454dea50864d5d61046f5472bce2615cda83aee0ae4d0ec4ca7dc6c25b47186bd2e029bac8820302047c435bb500673065023100810d02de77c903394fe60e277e94aa2ce09a1f4a9c55c33931879681e05ebac0d499315f2e38c2c356adcdd3a47b09d202303b20de012834e0eed6e9d970d7fd43d0cdabaffee1e173292cd442e0f0c45fd442850db1619d812efdb31daafdf1a5c10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307ca2b31f337d9e811e92c285ca6c498d5cd595d5733f6971e8b30efbb5fccfac169b120035877b3e0f4f9eacfa6728e702301edf6fa92fe1b2697c9d0a8e8707b32570c52015697ea128dd79139c1c3186c2f395590575c1f488446b217fb494fc8b0302047c435bb50066306402303e941888a61ea29a9efa691190ecbb6f434483816af8927d0dddfc15fa667a4d49171fd8856a0a6637d8d12999d5f8ac023076b28b32feafc4dfd760057811542a80bc1f18555755419790899e350998ff9b64f6774873da88107f9b91dc7e02d7870302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b9784891d1ec227f0109fb633ead08b0172178912cd1912994cf1a9aabf03620155c371a7bedd43baa34c3ed0fcb52cf023100fe16798c1590315c180a9cc0f714ed8340e5080acf57d31b0ebc3e7fc48b515ac12ad8870e9a8116d71cac01106e77260302047c435bb500683066023100b1d1082b8c8205e5eb2a69204ca3d490bb9283cabf6bfe27bf62b48caa6f646f520e4d43e30cd5c304b946c6843e634e023100f48322cbf8c2eead13e853b4afac27fb6786cb2b65aa44f4692caba142b436110ebdf0c2a1d4f44d61c66264ffe0cd850302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023033efb21144b5caaa31e806fef756b3bf3755793ce25b6671f570401eca9c45df3dd2a10111611bf8f9c7bad45c4f6698023100a13f360848c9c94aaf13efac5e2ae710af409137e65976749ae3c88003692f68a211fc138cb8bde109cfdf5e9a7ae4160302047c435bb500673065023100eb34471dfc0ba5b193d76ead72abc76f6dfba173d8824477d5a7a9eb9f3b351fde951e8e52c2a4fe2f52153f634d858702304fedef1076d19d62318b1defb3a0fb756bc50ca2d0cae44a4b86140cd85663fe957716e53b3c992b45eea62ecf3b3d660302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100aaa2de127730106f022bd389d2e3329b739eaf119b5263b1da38a14a7e92ad76844a3437c022628cc8f71269431eec420230243e5c19d8c220cb4e07196b5a994350554806174cd631fbc4363af007a2fa628658f0664176d88b89119847624a4b850302047c435bb50067306502302dd9caec0bd85589129cff399ee73abefb8f564cf028cf91d97a15786e9ba280e89f1260bd9df6bd1d240effa24fcc45023100b65bb11e81d4270636a30758b08da61e96e2c171b70b844407c1655c907c7e4b8b1bf307f73cff54ea380d3bf36a7c690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307a5abf03f6eacd3bf99bef8614a0e3f1f3bc173dc1273a7f38e5ce1cb73e0366bf143de3aff65b33809aadc3418c772c023029b74a53a57994ac8504d63cc35d4704390e6be065d5a4846d4f1a9adf53bfb6ef3df07d7b4df47e5ac529dd2c9923a80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230752d5f831866c9faf75a9d4ff8fb1bf0b70fa5e340bea004219c16e26a1f04e52e90e7a286afee525b0d7776659d077f02310089412a67ef9a95a97c59f20f94b72c3016a79f202d0ad8ac6cccb08513388da6a30dcb1b81278aa68976064aa0fbf9280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023028d9c085ea8f31bef3d34f55d5ecdd44a77353e9ba8cd26cb8d25dd53c58e4599c94d7ea4d78d50228c5397421f466580230614ca8e727dfa3d2f06745b877d1aef2662a12e9fde5c43e6beca737db763be21b7fa20362551ebd64a11264641e61f50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f1c6f4d232c68d18329eed0d9013137950f6ae82f9950dd111d4bdb19523f507053d1172f38624bbcd1e55b070a5865702300b98f6b1c3b73f5de8753670d5763f301353b6b24199b6afa164fc686b074a9b10b0d99e3a9d17626a22065029800e300302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f2437a8a29d9ce9bc8568e20bfcc3b05ac62f8d84f020eba74ef6b4b88df263f329c764d40aeca63168c1892af39b5af02304b3c5f1ba870ba318185dd8b9d91fa7ad0ed335a54957d080fdb3159c7d60c6e3ffede71c92dd57b97885e358683c4300302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023017bafec9fbf4a01cb71ef49244b6260a21c1c99138dd880d31d5ba6441d6ec964f791b569b1396f07359f9df4a89c405023100b52941c26d8454cf679415f0b2eefda3f3420c2e3ced90f09f86c3e4cdc693b12895e7e9f3ca9bec15f3b3a4d9f2a0a40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306e959c1aa73204f41a5ebeac1289cb99a292b69bca02ede0bd474a012701b8f7180f975e4fc9bebb9dd81b88f55bbbd402307cf4ed910a0ced1246d24e7868dd6a86fcd6f290a708bdbdc26ec3e29aa8e28b03853c5631ebe10b94b618d29a00772f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303c33122723ddeef1779f21f2352fa189240df1c776281fa0c4ba39b0270dfe690961d20729781e7fdf0a9ad0381fd64702306dc197e57ca9f02e5a657aeed82d175b05595a189a18cbe323adac61c1f2de9acec88e8210013d76361a460177bd328f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100eac8fe706f0f61967573ecde2b4dc4e4d87c5e5bbfff0f837e92a2f94f511825cb084da3797c34dc96c9df1ae117f900023100aec56437172ad739e43e7e7c402a6936d3ef2728cfeeca36e14a3acc29707f69f2896a47ed8b231db92d749920158b2d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023041659281f0455a9d60a380da6ea37660488e0bdbbb06458d649dc317b8dbdefff138a30b464764a0e2176ba2074d3a45023100b61b550e2cb5774f8a51359d50c4ed17c25fe777532d67aa25d464e9900de01a764c42a6a8fc2b6f88445a037612e4100302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301476909464c3342a47ad72914b01d81d73e47fea9a7387ef7f6a9cff5ffe744aee285a6a05944f75ff46a94a24a03496023100d4583dc375ecf992e10236de020d2b4f68d979d9aaa2129c3dc06a08f739c6afb7330a4bed873c56039439895c391a670302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301f4323353598542f874996602847fe5bd8365933f5636f117aa9cd1265e01c465643f24a230a2c493145668722f19f2e023100ab8d8ae29156077856f7f09fb12e080589d1501d892c99182cc62c4d61daa0d30c37390a1fd7fd801fe7175681f55bd40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302d3a5403c8ed810722812cb0abfe93353893b35cd4a1f6c05b42f2884cfce6afeb8ad77d4787938946b51ff06ac30e2c023100e8171e34a3b33a7aa6e53823354146d53f75c3de3107f0dd51d843674622e573ec80ae23a501b945baf35bdb578b42ca0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100af4fafc90697cc5df7a175a7ddfdce79f63dd0323dcc448a52836dbecd3daaad865c8249d3d9a0590069d1dd914c9fd3023100eb1ab97cdfcfc74fb35d14f8dd429f3d47d1add5aac706ec0ff002904a921df6fe76c681c9d7fe9f253047a00da387a00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e2a19921488718b708fb8ca70073976fc440f9cab2a07039e4abfd9c83c5182bde32371fb7ccd084523d0d086bdf2b74023100f2a74765387168313c2c651737fe6ab8cd80f177033d54cea9071555ec64f87123187f31d253f782bc6357fc08657d680302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305587d8ebbc2e4e2e920e9226e9480892a38eb410b284f9b4ff092d28c07c6ea7bba07ad54dc1084f1f7476c7a72132f8023100e8b67cf738ce2a3be9fe5bc3cdd5df6c8eb742cb7a07d14532de8d82b457500ede06b97edb1840e22fd94227f112ddf70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a9fa743459fbea6dbe9b454f7632747eec97c5681f9b76822e3745c09483f585aa8c35e32e3c6c0a5ecb20960a70a15e02301fc99198af0b857dd7f99992bb867634684571af81ed0abf8244a7c0c130583181c8361b73e4109a1adb59e39e73e14a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305f691746313ee3907528de0e21a46b50abfd40125331a100a873b794d03f95e1879376f99da7fa51be0ab2e7f2018eac023100811b9676d3ba7a1e7ee9fb202b16b43c463655198ce5e3377dd4cdcebe6e0469a34e3d5684d43407394c5f21340851950302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008055c33b8e79ddabaa384843bad6cec2f2f2d90321a3fde5bc62e8f4a70e259eb99fc4759d712f3a4a9b509dfa72fb7a0231009e5f816ff09393a568e4982e16e906d40928c054dd4b99c6fafa045e0a255722d056e1c23ab3a816bda1b3e3bbcd65ee0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d68a14435c48beda074532020bd1ce746b03a3ff9bf2b6ff54eeeb8d77d899c51ef569f4cb4a54422c4c1d32eb94e3f1023007ec41be1514c8050ae13817e18a05cf42c9293317de6a75b297daf47412a6c941980f389cf4eb8428a500f37c6736d80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fca1c0c2d63fa409d8562ae79b3a80c4ba5ae36a4953fabfa2ad84e114b00db38e7901631d0c1df8cfab08c9b6a4d543023100c314fecc0e928c44d961816bdad22bf2197e15b35bc0576fbe96662118727145d663ffe24901ac89ef6543291117182d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d853d874ada20c0d2b044a40a8219ff39ebb5cc46ab5d28c068a441fa2890404a6f47311748a516c55bb7cd5a533f76f02307479df95a48614ba7afc14984b333b596e7081081be52499d981093d554ef6897e486284d2ca89b7639b8415c63423070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b4a9b36080eebee27d87c8a40c18531045129052757efbf0191f9b61391490db759afb6bd5d66215920827cc054af22b023100ffb73a3f6f2582a754e6e3823ff4a7f388f775e1f54e31246baccd43b843fbf02e283bd580c01713c57c315f1ca8a6460302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023049464be29b3a58fc142c84493a8f217b56a0db73ca0963860ba678f095acf75e8d10570b5c23efd158e68d65778764640230467d1d3aced203d4f7262c1bc3bc4e7dc45670c306b0c72ac53f3d5ed5c363404eee304c6b9d7357bdd35505eaf3cb780302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306abd4db62fd562daf1fc9e8f1fe6cb7105efc82dc86bb9f455af205ac095d52165f50368c4833db42615222c2c8b93dd023011727167c25ded1736d6d1dc879e35b8d87541d7a7bc40857dda9a3ab00381726a05a0c9af3eeaeebdfbb6d11dffcddc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a6175066ddf9466403905950538a9d3a01274ff1ebcf5081183a1651d0456308684c7c66b6e1e03d04df8a3170c07426023100b9032e08083da8b1281c6bb5d838d1cd0806004bd35325d8e9eaaa3a07cdd31a3331a73c3bb9755244ab3d9dcc3711220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d30713a5daebd3c3bca76b6c09a28105252a81603c2a9f6f5ae2df09971fb32042a411f39f31f7f4700a8f31c339b241023100a497e4bec9f9962a33675bb8f5c33ff39613a3ebf268e6e2cc09a60001cb6efe83fb84a91ac49bf245bb5c020cf66b6a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d39a0b9a2cd3727b5f97dabafbb45d91e4d8198c9b4079ec2f3ff4f8a12f31d98e40180d066c40f5e75f0bdf5728b1f3023100f131a669deb8e2af6dc301ef82f3ddcfe3db33e4f6a0de9a903273b2d5fa0a8d8740d86d6f6c549a3e3dd229c7440e7d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310092230def9ce257dd314cc6947bdceb2c239e1ee406f344b1449538018db086e48fa32d48cf7d6639009b175bb4048233023100effc977d2853e1d76200e7573a0d6d5927857fad93573ccb8a64a528f4c452254881972c2f7958c5ba126d33fc8d41950302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302edd70ad7afca20822fcf9f3e20668cdc826f5f02312a7c619671624d34bb470d9043a91c010f0ed34e0b5ee6f9459ba02303b8d4ed04a12345c2c1fb54b42d13f523ee9730e826e1710723aac49eeb71853f959ac0cefbd870086b16287f5ad51ae0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023061db027b72353664ca87d086f36bc328f86074c9711b6e8b5e4f1594e219ceb94638de1da5512a91681e4a8239093d800230107828511e5020a1a7b8ecb307b2cbbfdb63c94d542410fe4901042107bc661965c4e798d80951a4104b076147d8f2970302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100977a2430360ae1258fcd1332df15a3eb10c4a53aeda01ca5900e10cc9909a43a92f716a58a595aa7aa14cb3e7985cdb8023100998dd5ff2c7528c90928787e2bdb86a05e85da6e776be7cdc83d81755e5d0b499320c7b111288ca96ff74547edbc80360302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300c26c88d25c3435699ae1f0d5d0e49255665b6343aafcbde68c9045c5883c521d67b4b8aabc367f5e64874cbe61d7d9b023100a8cda0517b15bda0cfd4c0aa6194a8cbd3a6d2b5240f349e0d8165f7827ccf882ffff1ebc34898493890c5145703cc720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023078edd565340f4805f4ff9975b41aa5a6b862720d91c6e309ef926fd93a94676deabec7d65e43615f3e22cc099722120a02301ea2ff2e58099c39c3e5f3d2b18ae9f03c3b7a5be13561a5dceba82456ac646e9774b17e77a6e8f0847dfa8d134ff6580302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ecc6e9596ba685d8b50d1ad3ca663f7b53979af42055c2c8ccbf1cf9a3f45304924c30f59a3aa621768851abc1ba3fa4023100efaa30269401b554a12bdd50ce2ae226523eee7b878f07581d53a36fa314d96fa13e8da971468488578253832898c56d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c27dbfd71d26a7a3882f3cc4fcc555e91487dc7e8ec83af598dae53ec0184f27eca12726e9e45f46c1d85505497ea5d30230550a2a18642aa92aefc49e59f524e3373135375972dc3bc78c9747b6c898b38be4c6b70caaa083581dcd2ec92eaaf76a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023023cda18b153a32fb3a33f9df068d4d07b925ba75b251947adaa49a0f2df812455fe57df5d26f49eb0bac41693622158a0230342b3beabf507c51e537e1795b9e100e8b088485c30b16d6f5b23bcdafc2f248ebd9fccbef4a962f2c194c2732005ab20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009448e862a1094e5d601a6c30013e53ddf26d395cc5be709ad29a360cf1a35a206e3ca0dfd935e9e1bac7c8f54f90a95b02302a6c0ef139a5c6141f4a8e8ce467647cd7392a2d0616838e1c5ee6ee65488acdd4d5d908bb973c392d2cca21c6bcfec40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fd57f653cb1a7e7dedb3a6e537e8267cac3b0ca47e7a13eaffae986fd37301828b886d1e93ae00037d97c8a9ecb481d902305fea23f39f9576024559cb9ddbfc2a6c0baec9ef7045bc0b225cb37b5266d7de09643595101fa6875673c96d819b0f080302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304e570e90264b3c1fb2d044e9a85b27ceac9521776e3181f5d7801871d23c5339a7782432d987fb596aa6fef59b1045fe023100db1b6f487a0e89d2761a2498809094fa9cceff8c6ef0ab5e943054f2e064b30cc402501f808238ed4abfa21821d295270302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100873f9143dba90fc7e33a4e54ebff922a0c17bb835aaeeb670cb8303706789c1c38245711715fca34e7826a10e3fed566023100ead200522c5b31f571013d54a91ac933f52c758b43b6c91bd311c8869fc7107af169cc4007da0cac0e79389a97961c320302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306886c11a73b9752fc2fcec255cbedfa81e2ec3cf4f219b5b882ad713b4425946b69c1acb3dd25c61e356a69085f4073c023100973961a5af13a05621b478d0e4e6856f8c091a13b0554351981aa2669bc720c0628d3ef8063d0e415e60ed6162b0a56a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a832a002b29787a912cf64eef5017537ec5d24696901e7ee9682d718a1838aa2ce977e5a9975c1bae48cd9a182a0e13502302a987dc467773900cd7294330a79ca37abfb59413c730e6974014f4023544ffb908ae7477d3d894b1216e36b91bfffd40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ec15b2f401c96c8900499c37b1f5e32c497c58987d000ca6d5bc14b6a794b98dea81098fbd272e7958ee0969f6db5194023100bbc9c07d8557c5ddda1078fb8b14fa67e8c6b6b61d1d681793c0dc853040fc1543259d96007160b0da5ebde1884b653a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cc8f4156c67a10d4a83373da0e0446716e0a459267212c734a4cdc96cd74536b0a770d9796a256850a8b079d37a8fe99023057760ef3d10dad8be29054f3a92e39b7fd1a3ca030f2afef06cb2b8bc7b0e322ae214a7f0abdb53b3b1847b8101f44660302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300a8893ff760e2e0c1780f166daa02bd6235835db1fd4079de9aa32b5addca77807d6e60b321ac06ecc77a1c8dd5da02c023050853611a857cfa4c8a56dab88c92a1cd0bc439414515f5564774b1aee14ec62f184e073840f33d2f252a401506f579b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f0e24ed1fad82be9edc0f7ab229247ab890754302ac9b8ff4af445b1595e7cbe784d0c95f101ce8b3dbd9e640e3b0d9d023100c72668729842f306c419871d49a50739fcf70791740e687f8936c962d0152eab971427c9bb6b1fdb4c544ceb765f33590302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301d4489eb8729e157f338d136c6a7a08622c0e74885c5858ef846e265e3a0be8795fdb2b67475b9c53ab5823b122ebd8f023100c7bf069b43d89d276e44ae7486caf70731f5ddb0a1e34381c421dfab273fe14ec18be9dc92f9652abfc8349659516d6d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303e0657ca482c8b8d31ffcf88f0b007773c5cf3e9e3a4ec0a932643ba1eed10d13af6423832d85b9d7f81dfed9a9aa74a023100f840b521f6fcf0bf78cfb10b4cd16a7e12d8f5f0c60e7d2caae7fcde75933b9cc42f3dc98974f35ed6917c5ba8711d910302047c435bb500673065023100c1fe2ba82990b2e345b14204a1881dadc223e5c3f172f1a21c7860f691ad81f08a57f72ec457452255ad183247a27b6e023065780e6cf64df5eda8bcd006de67f819bffab84b161cc83bca8e388dcf9adb87416e372603e351f9008539374d9cb5b30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023039a579968a5242c6e117db4ffb80c7e72a0153f2b3c8f2f750f3967703f364f6074a184a35d9fbe246fc6086b69292c0023037dedeff02da9314f45f4c479b617ada4ea03802d2298e1fdd20d4b29e16025a28f36f65639a607032c713d37a14eb090302047c435bb500683066023100bb2c7c1ab2dc3416ad43dbbbb02445a1f9785d1ff3cff18112f4776a3ff20844fafe985d4055b30f8af30d5e86549cf6023100d08145461eaea60204cdab9a0a3e05f25b32646f8a7c025be9b1c30b6293ffe126b969c075520ef8ff24af26fa9c07870302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230508932961332fdb91fcb118b72d775de2fc5212daf4dab5d8eefbf38fcde0db3251d5ec5e99c7b0625140be98d5ffe7c023100cefc0e1797f8e4dac7e9674ae2251d6af3d2f96eac6fbbf483c3553ed98466488087e287a8a9d9739b6a781da3d226080302047c435bb500673065023034e59044142c5d4a94b7ac20f255b0bb68664676da1d80480a33241eecb9a72db412a7ea459598d547303d2d620cd27702310087466896b14d1ab53830208575adb2358c340f0e33aad9829ad19650a045ba38ed4b49b7dd841a05e6871f1a3d20b5aa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f8882ede84810a5eccbc225dbfbe240cbde6a6bb80e9a21523bc4e1aad6744d43bed038c6563861a67ecbefa11a6128802300c45f2bb2134e8f26100958680d1e68fa94cc67e0d1f27908b281dcd8269429b03b3906fb10f80205bc404e8bf29ee190302047c435bb500663064023004e6ca1adaddd89c5ac600f13da45b1fc6a20bca0452ee683fa78b6d17b0409e13c56b2a65456437bbb06bf60ebc5f690230121abe43969b58bbea0b2644d90ae15848537d5caa994a99b047ca72a28d79f2d0c678365951d999322066a8ddca612a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e3d61eb8393c0f0e02f798e6084fa7478b4af64b55176b5875aa95ec0540de6aae924822aeb352ec6005dae2a88c59ea023100b9bcf8a06266c08731996c1ed15f147aa546d4b0a2038ad2f7eae1bd208e8ea16c04e693bf95aa40040761b4ba489d900302047c435bb500673065023100c3e5280ac02396682b797595a335a3976daee642a197cf82577c7b7852d34bf8621c094bdc03c431b8d118d4dcb5b03002304b6be115aaa69dd9a2f7fbea8f7f233469a426b8df5d20434e3dfc5c61183edbdf7a65c1a8a2843a25ca814f0f944d080302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023062e5792c919c3106075d5eea0f7692bcce2fe3a41113140a4efdbf22b1c347d91848814b107ea43e8eb41c1982e44759023100a94a46d6d4231e62838e22ab0b2af50c1e4935fa2a0d6ac8e9bb38b61d5bd0865fc6632ae02a6c522863a81a6ea950280302047c435bb500673065023100c543823dd0b873da4bc39302adf1001b17561a074231030f097aa1891f63d68e597bc0ca208dc7cb10e7d7323083d98f023077048ef99212ef1d36bf8eefb0f6cf807e3a9ad4e4919f159bd59482548ea747d84a2b41de1f6d2aa40aaa2e783acf720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230257a1ed67fd6e0ea06489c7f3e8f7e6f526573234ed3d3b92361979b2402318cc0f68fdb5d0827a42cabffb445f99ae0023100c8eca3ad73f75632b1f6d5318bbb11bdc1c8a308edc398c89c04f899b4eeedb3928dc4840c7bab6747282ea7a3cccb1d0302047c435bb500673065023017e603557e7e9aa43f19e5f9551b2fe458e54c14188475ebce131dd64ded03a93ef880251a4afd6402134e5b7fbae922023100e9a428e7ac486998037808473040d83599d5fb5e5a8c654b476b3ffcb00e5b8c424c220b0a7836eeaec21f428b384b5d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306ae42fb81799fd571a89d8eabad541927e808dfb174aa66d6a755c919f9ddae56246c85784e2f96cc88b215cfbf72a52023100bd315eee103c2ced8914fa815b9103d8fc8356a024d807195d8080157243b8e5d56eb7c4f5e0deeba327d4f36d4819fb0302047c435bb500673065023100dddb95b36ef50d5d9d9175d0bfe5fc90b44a7cbfedc8857184ad3affa33846af3a521a8af0a2dcd6d876a6cd4615a47102304357f2bd863c8fa9ebe456acbe53a0d8b7f6b1c92b8253a91d9e6ab0441db51caaeafbb70f283a6cbc17eac6e2ea73920302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303d1fc99c7653a28c9e2ffea932d0faebc6b6686483f98e1083d125a6d8846760dac6519f13126b58add5821f49f19a1002305337f7f1f42392a812e4d065b2413fdde56f9c852ff9441bd93331989a1d3395b5f480c82dc62d86e928ad335182f8380302047c435bb50067306502306b5006c806677f0c0ecfa7ea846ed963a5cc3a00cc17eb2c9f36583e609dc45dfe28e1bf32443ddec408aaabff039982023100a10a11cf81ed6d42c17d1f45f097f490d0535afdbbbbbb17bc4d3bb4628b508e557b101b8e5d8b79fe4e542915a303c00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100aedc07009bd06c206c9148b865227177af8049dd1965c35ee1def71e4b64d5998e66efa682358500070472b1971a7d6702307a3e4fe5b9d4f51234462bede68fbccf7a0d05b81b8bd5f94af1d61a884208784d8d9af9a697dcd30e72ec55b34ce3040302047c435bb50066306402304aa84e0bdc06e65e22c2290ef16a0906a32190adaf63913e313f990306f5ab7500ecef36f69afb96369d331c9197022a023068ef14bd925ebb8ef2e750c902ee36b9d3e470eb5ad8099f835a12e6d35486a87596ece1a72deafbc3bf55c954d4daad0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f456ba9daf050a4f43ddee6ecbe72bde1f37b150c4d199f31a8d06e3cff72fb18e957af3ce4e30cf79d0764ee88b98e40230682e3e77a880cc5d85202dd809e2a63dc719c166844971dbc6f5c74d3b0d98f988a5d9a2af98d399cd159a9dfc2aab9a0302047c435bb500683066023100df1a9753696345cdab7eba583b8cf59d2bc042e0c888eb23a09c206cdddd3e34c9d870dbab9df76f027ca83f9244a54e023100f6b0ece4f0c3f603bbca0c94f6882b3ea6017b43c5d383f6e2f37cb2347e928aab2dcc047ff697cb67ee95da9bce235e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306ec8ae0cbe2c25b378fe569a827a786b8b7eef78ee364ee00d042f03122478dc6bd817448b6eb1f6f6678f26a3e3f14f023100be7cf87864a9d8fa05ab1e630947f296254075115fbb640847c504070150d85dd8011ce854a94582ff18316234942d3e0302047c435bb500663064023037915ccbd19a32660a6397e36634a20434974dd1c910f0194ac41b46e31e0e111de0f2cd768c0d9d1cfeb0afa58cb03302304118dcf6b3ba030d7b1e88172a0ef89ba90b32181f0dff63cfd294f1495de6775f5b8471c9810b1e87de1e254cec992b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303717f928905cf766a99d8065a6559f50cce8377d3fce8bf7e6fb8116075b392c33a68251bda27f03d084cc5b7746f31002310099ec19803937cc91b44a2b09d7a961e8f7b9684b7d45e609f3e193c98c6a98274f94bb4073e2964a61b30fba29cf621f0302047c435bb5006730650230389a0978c8e908586db4812fa7c8a849393d62bd91931a73cf1a4c426fe83fa52b23bb223dc72d01298e7a3f558d0e86023100a4a0b11c1dff24d4467f21692501807043d6270b3f2889ceb7157fe8f9820fa29d3ac27e9dcee8a1bd0b0bcfbcfc6f370302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bba40dc0a1c0cd11c3c0c19ce5ffd45b166d9eb871c2e22da1b0bf2e30f9a0d82e731f67ccf64e68a1494b1126d51f890230538ef8b8191a6f971888df72904cb2f00fbc85fa8e29ee6d4606c36996138a4dbeac60bfb047f22d659fb3fbabf751e40302047c435bb500673065023100a648e54ea8e789e5e8a786ab272185065eb6a0aae43bc2b35ba53ec8acad6e7206c87de1a0cf3789f13329592dc23765023065943f0baa7dc9ca473db6fcfc35c7422d95ba20f2addf5d804c14e4d6a72360314f12b6461c2f95a1383cb9aa8152320302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c4438cb2c435f1c225a326a9720094942b3ac702533fed13d3bfcdbc866bc62c36257c5952a4acd8b3ef9a8e9a32d414023100ba8190bf5171340c114cdb4f6798e4b3e778322c67c4ebad9e46c87b97b5c063006ec0623add2c8100982e008d97c6b60302047c435bb50066306402305c25b71a6e7c94973708ac152884d056ef6f30d741e5660c75f94bb35fdc8effff602d0b4888e43798780be598a6366402302b3ce64a159e5bd10819cae3d75245324d9379722a88094551f8cd3e0c56eff8e9b721d3b737aadd0dfd9ef5abc54d020302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230068cd8403462b6a61561d49c3048b98ef0fe22e64cd6b8b5a6892095f0aa40a40f3d8d5a8d3791a3e0debd9f02954319023100bfb4db3f1f6f9ec5169d3d5c4b10ea0673efa4f271c33e12da314c5c8791ce46d97976505c2416ed6b38f425562570810302047c435bb500673065023100b31adc1962055926e30b0b7691155f57343f1b18ef87d54ffbe0eb5b667f486685d0ae070333844a5ac220910409987102305b9904b550e252168901be61154248aa1401f63a2af6eb767aea33262983f15871951e2489da491648b2a304b47161420302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023041fb8afc2b15c3a222e9df1b562c652bfe3eddcf8bf5aa3d4c77560ef502dd2907955e32ab118e667b232d895984e0ec0231008aeb953e19d61f3541777de35bea98830477a18c8c9f04c0041131f1cd28fcc7a467b5f7d3376f6e1d82499fcc5895090302047c435bb5006730650230208540e2cc3865c591903fb6af42cf705ca87b69d6445ff3d7e5a70199f9cd7e49ea2425fc4b5b62e7f1b6894ed323bd023100d6d53b5e3f1d4857d403a4130009ec80a975ffe2d35f5a6f95f95623da30e40a439ec2303a0dbf18778610ac835d68a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302e6cc2977d18cea4a5fececf4ff2ed3ba808b73ee9796ac09883310b98a19d9723ba42bce0c52ffaa968f3e0b46719b20230386d24359de00b0e66c2950745762f3ebb16271fe7d2ef76912445c4e3ce074bffefc0255c01b55003fb98e78bc5b7d80302047c435bb500683066023100b9f3e4a3456e7390ce124da4b4d60d7abf337a18d7bce7716d7c1338a91f73bb0854bf56ef3985bd22dc89eaca4ae90a023100c892e20e5c0f04bd110519a0d26261b87028a958ff725434925190f739fce39128f85074952cf9e197a75a345b3151eb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300882184c13bac42273d33681e4e318c0e3bcf0492a0cb3c41baa23f280794255111e2fd417be89aa7987155f8225c12f02310095e869c07f66b069594905a373109e66ae1e57a4b2bad5d4615dbb770c950294a2d5d4bdfe5f7468db2222861cbf82ee0302047c435bb50066306402301f83a3fca95651c1ea3c0aaa80e9a6e73c2705f0af3312257263e133859784f87c6b8128323f57abc249340922b3f5a0023057d2b2c7c9d9c5e6e46089257e35d61c86f75c1d310104b880e31db99ac3d6060dc10bbc208dab105d283fd728379e440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d41231058941462789eb62a89d638c11d8a2dc5e41084c4a2ea2a6e63b7cb7d74b946462a36b7acb63ae1924d64a3ec002300da6e18c4edb7f6eec138af30480e8311078f41857386948dc232b50f79f5aa3418b65d9bc75ebe00f10636828ef65080302047c435bb5006730650230058f05f8ef68d81a572847ecaef519809a00caa8c58de817f82b82327183c3dafde039cf7c45e9b5afbfb44312366d91023100e853982c5daa6aafc2ab2e766e7016ebcff1c7b1672f25f5ed28e5da4283db9b9bd62f6a6ca0dcca651cedb922e140610302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310087bb52b30f1a2aa65cea046c479e5fdd61e14a34ed36924536ec972a9b6cec584c5baa2d7cd5c86c4012f9167139662302303c0dc006183b9fdad7567ffb51f5291b54ed4ba0b0c14bc2fe74077ec15ede76f76908ce6bddd800cc84813c3576b0220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023038eb88cb340b285aec6911ccd292b0fa190f1619e2881ca54d11614a71b890008e25a6a5fe8d7358be1b11ce4a6b42b30231008b49f57f3b5a2ec9326748fcb8189472f0ba75350c4cf071af981f8f05745dca5ac3f48b4b348ac65a9fd26214ed57150302047c435bb50067306502310084c3c4ea28627f661a82d694bf8d0144ea78ae1515b2420bb5db7e9df4c84a0d0b8b8ad7ef2b8f0076b4ce683441f6f20230301eff949122645fd704be9dd077f09597c92eb829bf703b64ecedfe945450dc113da4e48747f231b0fa83d793e710b30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230216f6e4d2d7a32c499724e69f3766d839bdec43b4cb008da6c8f77608a30a58d31a09aef59536ce6b9586b14b9d23f0a02310097ec5bf3cf904e7f11361e280b4612ce76e8f54618510c7b341a22c004ca138eabebeb25660ac26f599abab97fb1a8f10302047c435bb500673065023100ae6c712d89c1d8b8291bf0537d26646aaa6398b2e99a3fc24dd768d02d618ceba0939d7597dbccdc721abf1af8014b070230162727713ce986241a5312d68fbdbaf8b29a71aebe6f7fddfac3dc86c8288b070d0ce35c608294549ee926a9848f7ff90302047c435bb5006830660231008e3199c4aba1c13613b99c3d5c2a940cc8c5e8893e0d5a5c6ddac84328dbbe37193ce8ef0ad38d6d7fc54a7648966110023100e28558adcf0b0134c4d61fd4abfd8e25ebba993e38855d2341cf1da1a051f91ae9b341523d3d706ff30afa0a9ec8db1f0302047c435bb50067306502310090999a2796fb44a684fa9578664488c9728e7cec55a13405a790a0058170149f955e682710817ccd2d6242c705f9cc4a02300094b076af8ed9298a5482b2ee3dc70927f22164f0c040f9d2011565758dc21ff182a4cefb21e3688fab76e3178dd42a0302047c435bb500673065023100e903bfd4220435c194b13735f112a17d397aecfa1b807471b6a43c0207638766e48c49078b1f863042a01343427db7ea02301985f0690b75149742db689d38e6da02e1a148798778f2c7fc8d1d488f93ef0f7df07c8ae21ed1c550a72ab334a6f8560302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302b8530f48adf4b3d07b5869d4d97e452dce0d2137a2878bff3a00764cab966dd44cb49099eab6048de492051ebf7ea2a02304a02de165dbaee33155d4ec680e0e71c029c18ea47e00be4c8a7b52d74f74cf39e1f562888e11c3cf9c1aa6aa55ef4740302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ec4a3a7506d987b9e170dac64ef0fa239e97a270c1ed4e01c28971e24fb064412155060a40dbba2088c98a52425753d202307ff3ea85775e7bd0b1bc6a638877bcce6092b02f99cdd8172333bf261fa166a07705d8ba9e3a1875a770d577e78bf5c80302047c435bb500673065023100e852d4b485e2571b6990572045debb807d57821f5c30f03385223c91a0d3f163a8609ff5bdee86b848d11ec04efacee402300fc0494b385df561c595db5f68d74cc55d0d245f2fa43a111acce74e04f85a307a7b8736a42aa087b5c44b6f1505d4750302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023077ca68e91ab1c1154408356926c7fd4ba6ae298bb70a01322aced46cee0ec9436410befb3c0a5c11b6f453fd2b66d9e1023100e3c587c80ce2626e86160efbac1342d7725d42406987e0463750633339cab28f0b00e998d4691d6be50699b0f11457960302047c435bb500663064023062b0247144b4e3f414042d4bce2bd18183df45f57be6990881c1b3f22c1695af716f933aefba8496e445ebb9a5b5b43002302dea0d57454a785e58f509ac4d2c998340de6bcd39607479c41567e5928b05a4ff08f02acd8a9ec48bca5bfa185eecc30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c842d20fb73f439f455e638ce3bb826e40ee80f57976f89835cd6b0e2924e1d3ec9b690fde1deeac702da207456d73e702310096df07aaf095aacccf0880c05fae615d4d548d1a341813f629aa9c50ace3b41cf1d9300f24c9a7d4c014e9ccc0274db60302047c435bb50066306402305a190bbfd8a62edbec61cb7323ca4b5c7bdfaec8001492df571adb61ed9858bf32e8c194a216a940156d3a58067a67460230569f33b5f5535b41cf6ac8b68f15f981906426ae6f82f9bead3437519a0b1a38b4e20e0f466ff713b6ab087ed0a2b8640302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bcc47e5b300567a64c13757ac3b28bd537f4d2a2dca1ebf9376e9479b60d7cc4caf43e5dac25f2c2a6a0b3fdfc50e39e0231008712b464e18736b2c1e10b03580fcfd709daed3b50da36741f31d88b11e2544e61465ee37c79046170ee355d606b9c860302047c435bb50067306502307e607e62cf9eee6c3d88c3d921679a913e2f855db73124da714b7fafedf15c21cd8cfb008e8f1e5b47043ce317182988023100fe70c0185b37e143693085ae82c8542487fa2e7e23a64a5b1e5cb49bacc1c6c7d77daa15e566494bc2f1d1a72eaf87d40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307817e506e845fa2003178f811cfc129e8fc424ef562046df44ff24ea9b322e7cab65bc725c13d9621b3e44dcfab2c9d6023061920c1924f715b3443fd8418fdbf42647cd0848c9a454190c4c8c28467bc9e996b86169186e6b49975668254a1332b40302047c435bb500683066023100ef7228491d0e6755857655cc2553ce574b3537da42f41f1c219daebb9d17a7432d627ac124d7439b94152e113ac00a4c023100b94740123a3e6eda029ab264cffe22c93ee1e5c07ba5f0c9ff3bf7c306e7614763ecd90c9278adfcb52cd77fc7e98be70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310085103ddd68b44fd1f3843544d6e292536a479b02c75dcda4f15d5199b7dd46f54ebabc83120ed0bdf87626d10ac9335a023004d165fb8422eec00db267e492e4586a1ecb9dc6a27073f4c8ed13f44081e4c8bcfd65484447a7c22c80c1f752b994aa0302047c435bb50066306402304278d4b0cd7037b4723349ac47fcebe658d1e7223cc4f27b3f9f3139fcb0baa5c07ad7253f6237ef2332c2384a6af8f7023074aa40faa826082f795a637e7573ae35081f9046b2b82502b6e51931550d029686ffee76cd2c025c7b1c31b9ee56d9000302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008988e0aa80db4b14391bcba52e2594a56f90648555ceff87e51f1141d1ac6008631f9ea32522a1e6160badadc313f4820230188c73faf5f2375c57b2aa499950cc4f2fd46c089be028db2f1f19919ae8688a6513e6468dfeaa4d743ca3b0e9c12d660302047c435bb50066306402300f4480ce53732e8ed7f06b20942ad78555ad89f3916567e06de71a9d8d7d95f885496c2b9b6b4377b78599d9c2b08e6f02300f1e9b4da7f5ceb8bbaecbd43495618eee0793cc4680df07b13e6f8619b67a239060731998306cb2711285bca5b07f630302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f855ce225a0828e8cfa82f13a57f590f757b52488437d5df4d72890380972a4d923e21d71bb49b2dd4943bc0318e2206023100b00d244bc22cca848d7983350218761b89867976dbb3a7188907692827dec44b3100127dba6dda014d8e65ec82df744b0302047c435bb50067306502300b3423546d8f4f73752db49755438e8454871d04f15bf666a3062a7dec196a046fc45adbd9afbfec7140acb8374b86e00231009bb40597e6fb0483b0d4037903afaffbdc740a6ffd254188d90fd3433d3b1bf2e73a2a676120999d1cd6a5d22ef9c5570302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fc44f0b68a0f7a01a0dec9d7f2512faa4990ecced9136d00693e8959a67e98ac66ac2c0f4fb91de0c44ba11c31ddb282023002e452b4d2f84f8cf8e2590fa835024ca1fbea3c9fbcedfbbd3317cace6681b19773d8ce9d3675d98511e7e5cf21115c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fe167d4f4b09dcb65366383d910d0a1aa0e7d8081e0e434dd87501738ada96fcf030fec520fc783e9d3f1252672e4b8b023100df81f7c25924bf3ea133c1e3b1cf27479dba93ac0922979518bd93cfb2726064cad66a16c3e1f1ace668da1deda94e150302047c435bb50067306502303f9fc95a682bfda3f1688cc8bdb0fa560cfa8e96aed89f2cb447c999ed086fd1a3922f069859b5f23dee1e75a690bda60231008661b97fdc5f69a51bf568ca59a53901ccda3771c54b82f76b3976be7bd6ba66249f7f99ba5e7a49b0825ae1df7525790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f53d1d8962040127d1684ccef82e77e1ef3d0ad47879332104a420a2681482e96e64d565fca5795d2c0483de83ad8c3c023013af34342002613a9e14e70d5738dbfc75feb8d35aec3f4b1d20b3b4f24b6299c25655c5763ede381ed1d558c84a3a310302047c435bb5006730650230749a437e995db5595771a0715b41724af2423248945e0ff00046ef0f8cb8a9e066c44709cb35ee185a0dbcb9eb8fb372023100ec7c07bbb96bad35a89bd17737f5f2798c723038ee3975f53cdb658d9f920bc46ad0d296f5c39cd44bc21ebf7396b71d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100daee96bda536372eed248c9feabd737b9c678f2e61ed1cb48ac076d6e3ecaa1c2226e601c1ffb2fa780b0b9572b0fbce0231009ebcdb56ed4efd9fbacb6e1767391fe5bcdb46d626d2e0ca519670185885e5a70bddd44f1e3eb99a99559ce2f62666480302047c435bb50066306402307a23baab0feece53d75dbe0aede47fe48b68b07f9fc6f2e2e745e1b9b73c0ad3f3bba9dfef49b1fc07f4eba9b29a446d02306f7ff4ddd3a44ba8a77bc82bb751b2673940cf4f99aed4ca4807cc51074e8faaa95e402f0943849ec564dace628d26040302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e99a5acb705e29b1794eb2755758b061af303e3dfbc2b22b9fce46f7cfe4bdee9ed4181611c7e73acf508e6f4fdddd6b023100ad33f89e2f724d259ba8da97b0116c4677cfde7e77cd8cb1cdf42ba245fbff7739e9fd41abf512cff5e7666aeefc8ff70302047c435bb500663064023059fcf31074c4ef12a6dfdd3224f544585d6946029de02022d3ae4f7b9d02baf0c8cf83342550c5f90f01b8786533045802307f0444675d077ddb6c9fff3cdcf400344eb028214897871b16ee98bbe9ecb5a37cde72c6169324ff8ba5360d378d33890302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304dab6195a78d7b266b50a916719e6d6749f373462adda37a5bb198735a5f8abd9dad349dc3ba9c351cd80d2ebec0d89a023100dc8ff23acb265465bb5a4bed03b08270ee05821b8028625e0faaa7f89a36006317c961ce551535a15169d4d197d77e4e0302047c435bb50068306602310097edbddeeacdef1db1d8c97e2786e92d170299425da26157e8562667528d9cc3b27a46c5601e3788423c772ec74ac641023100d3322c92dbbfaff61e5fdb9da5a9edcb1d48597ffbbda470c4a065019ddd98ed1c6e23a0224139c6eaf788e626890ee40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fadcdcb3a2cc8ff4163c16dbc322479d9eb89dcedfde329b8bd814693a032c53b7d084faff3565f15127cdedcadec69202307023688f6bd5fd0dedaea816535bf38264b47d8f788ec7430bd7554ee3a3dff3aa860ac6ab308f54b29d1713a6581fa80302047c435bb500683066023100b638615c4ca8ee23316a713aa1986c0aadafc20741729fd68dbb8d3d7d59f31b50af6f24dde12f591e9ddd783f880ea5023100c9022727431f62da4b540f6c25f7601540c43da3a7fdcc77af9d74acfc115c12cc9a8a72d194f527d2fdc55596c37d5c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023037930df0f5d5c84a84b6fdd57ad824a4dfa54e4875e4f9e653d14bdaba4356c6db0c4aec902283a0e0b615e0dc34f1da02303562cbcb57849a73f9293129c26428fbc124c23f6099976b032ba0fd56121320e8d25c1303bbec85a28a6164c42d893b0302047c435bb50068306602310080fa2a9d60e091363940cf44caba698dd1dc3e34fd2a248595dc104898c5908945aa054478e709ab226f54fb6613231b023100e3e114a81c4f44a2f1afe1a5896a460f5757d45ab7df81348f780ae2c3ca6ee880e8297b275998aeaec43cc2bc15b8910302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023070da3112cebffd0a164551d175f0d7c22d71adcc31b417390ba7016935b5ae89957449401bbadde32705b81e118ffb58023100f66721ccfd5e69c3d4855ffae1ec6095dbf28073d998b2c7705d0183500f678f35ace4132f8e0d1c0ce1f85c355762f50302047c435bb500663064023044ba67b7654cf659ecc444c45a70891b0f602ac243a01f02a7b00c578edc0edc8e3aaf81848084bf17ae1089ae0dcea202307ce86188e7d3ab37e4e5a50d767d0f466f8f6c411d3733fcc74f6514387ab32d5f869db4db737d2e64d64c15f9ff57220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e6936ecd28fe86feadf82352169d1c062867939025cb01d5352dded18db558bbff2a44d8d3ea216b1b4126879f0c96020231008594a6b28f06c672adb672ea8c6f4a97d68257d4126966db5af4e04f3f364bae02378eca3ba365746b993ab3be517eb90302047c435bb500673065023100fa4c3a353af3a5d86301d981811285ac6fd7b624b9f745553c52f63bd6a667009d399bd257b599fd880f3914e046e0b602305641a619e981ae9f626acb89ead58c29da9e9e3190c2ae503da10a8a2204edf0685777fd65dcbdde393ca4bcf8ce3e780302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bf663238a79c6af58bd253c9ad097a2ae854b1150ebf073bf7e0f1a2839f11598361d75ec3191e68ebee8d8750cbfcaa02310083878478b8bdcb961e6f2de85e9d1f71fed3179ca7684f01c3e0dff0ce3601d7f4b1e8db25161ccc95e5c414d1fac4970302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a65348979826e71b098e52c738cba9e75a7b86fed1b282d00715ccc5f2391a7ad5c6618d90bd2985e70b79337976cb0f023031cf9c09c73f1cff753f46211cf675dd51fcf2fe9a478854eb65b2c41009575fdb3670965f7a58f63340c3a919db11c80302047c435bb50067306502310081ae3bd95dc5908c9717fe6f74a6dc117191a54ba74c34d6a5a9de9ea4b665e39ffcd895f93eb4396a42833365aa85da02300b89fd66519011931a6a8737b4604ce7098b8407dd60663c32ef2a61aeeaf29caf2b2683a208f3282f0c6a69616950c90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306c6782f43469bb6f433e7fe8a9973a63376feee3722e121235c86a7acc625f91221b730d2eadfbb3643ee2e5c5d5c74e023100f95e291c4bf45ee8ab27a35078a6de9864f1c779d9137a1032bde2e4ef49d72518b82e19d8d5e3eadffc3a133bbb19900302047c435bb500683066023100c38ed538d44b2b63291370b7cdffc85ce24117b61fdbb4eb4a24cfcabda4682c21223c7b9f4382776fc085c386c3c806023100ba1cc0aae68988156d2273fbfb80c11a2449c6ed4bd95c1ba557cf8aa9b5ecc7cbda8fe59aa3a4b3b6da0ecc35677e120302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a8c2e374097578343bb374515098c2db1948b40de192ad2780c04833e986b517da7fd89c3aaaa2508f12f3894e5f827d02310086337d48548f1b7cda03aace436261d09e521daaa00dd28ff7f77035613fd10a5835a62572717b8e4be77949b9bc943e0302047c435bb50067306502301dccd5a7c21dc79bebe1f5431a837583bd2a9b8ff3077b8182638812f36d775b0882251d30b0206be3ee3d6975d0beea023100a9558c0f4bda76e541509d94d851a0a910e0a5f82894615e3d6855d303c8d1b9e4309b5326e8a8ea00ffe69b3b7d7a400302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302fa7c5c868e95d970d9fba012b3db51679ee1d3a88ffd68ba0a1193c9792b43243dae094ff7cb1c8ef2f4a6391b239b4023100f9afbc3093da7919dd036dd0f0cdf97470efbd738acb2b5cfc9c1fed82463d1d568860264ade51f28988781b3640643b0302047c435bb500683066023100fd39823a784a98c925cd75ba3c5666f0be89aa8f159baae376f82fe44b6fd8e43a735be9920feb334924c44ac3dc68d70231009f707735c9230884c1f1f78f697798a3093c75a2788b341ac3ccc81f56ce038a86e6fa193a21fb819f6fa3608135ac280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023075c8c3c97d76fcb2dec265cb6089f732ac21a2869ea62059871857efba137aa3df85aca7a5847359681274eb58751f060231008f287316078886c28be823134777539328707ed8dca1aa3dde0dbc8f078ac0775d3f9b0c30f1879b5083e5b29ac50f6a0302047c435bb500683066023100be14af17dca1be178b9654ef548259b73f67df602b5d051a9f4703ced622f55734c64f72bccb99524eeec60fda003368023100808933c444c9305f59ec7dbb12a5bfd755cd36ae00fb87be032105f9296f6a6348d20b34b296ca19b39cbf70749db3210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023100d744e56650ce02f304c1a69cb89c2646aeed27833d1ba3ca0430734d087e9b418b59bd6780213ab2a87703800711ccec022f58d1b708512b578e5f32b262574f9876b4a890295c044584b08f90f1ce8b5ccfbf8d5a23ea71572d4401c8b7ed65c40302047c435bb5006830660231009198a28b5299e9eccbdd23ce8235098f233a4aed3894b6b32a9a36704abf4bf16e8b6e285ace0ada45aad10546cb9a3a023100e93fc2d4e32ac1def9b4f11313413d1cc57bf145bdf06e03d4ac758f3a9e0900d92c2e445dc126e53c9fb8cd4d5ab0870302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301b02b6962e50424bf412c95dce87658d289c085c8448da3aae9089d1b17ddd1800e24d1586e1f23b8ae1cf05961f77ff023016438706de95146db22299d13f3cc75add838869ad8193a73c018ea2157a8e3b4ebdae6c3c5e310f04e8f5c6977778290302047c435bb50066306402303dc20422494c5d8a4020fc45fd6745cfbdbf250a51eaa98390a696af907dc0cf2aaec8856b797c9c69c8b380423557a3023034951a06d06d8c2cbc69bd58d0dcf62a49e318af9aaec14615ca76d0c2236d3abedd07b058c4bfc94815fbb4d2ad44c50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305c3b7a586017b360bdf818ea20225a686567f3996075d4c1e0d2e632969e71a49d343297e732a98305b2ddd72c51fafd0230268dc96033af32939d02c3fe9e0eb973e9643b3eeb8be18982028f99bffba273587d8f18c7ed03cf835bf19fce3a63d60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307f2c2dd72440968593e5b1a8e097155f7638e191ff5cc3c9c685435b74e6c5ca27c265004d33f8d9f097bf6d8d11bc5b02301fe43aa432bb56b5771d44ff6781acc223b4e520420988f1cb0d262c4d38decd1f608b81dc5250eeb2ab07fcb76a9ca00302047c435bb50066306402306b1b59ba1950d9ed11c1f5a754757216be5624d581e74ab331079425e54ecbac2de97a4fd47819d8160e82a981943880023076e58a047fe8c7c108f4d5a1d6e4c0bfae2a816dd6a01aa7fc55fd269eee487669746af0da70e9801c1a813cad44bfbe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fbaf017ef24fc667b961a542d2692dae34624cbf74b64a2caf4ee11a9a1336a932e4d37fd3d15f9fb85f0b546d2bdbc00231009e061a08982673ed371a92d4b24b73dbd48ac20c8214227041b594767e606df21e638f53badfe1240e85c31fe08bfa760302047c435bb500663064023062e41cc43a80de5e034fb8b5b51372b18ef0f139a0b01974dec18093e4db7467a179a4dd555d116a2e5315d4cfd8857f0230637e7675ea7ac7d238b7ba6905c84a5736b6528f8ddd776c6a94851c06a140e270e3fd4bd29c8c9ec02ec719dc835b040302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023036d12e546722488a7ddf4447705ce3d3959a8cd47d8e13d1ecb2cb1cf812655bc5ed0c2179602f9a92336b40c5ac8f6502302aae21cfffba423f5bb5d0e68fec3189b507151dbe738c1d16383cbcd5a242a61d60863b766df05dcac376b9972f22180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100de1720da5ba3e07e53fe357117b04ab0af23b3780331e02a1afbb21423c8e81c7460a999d7f5efde71dbe07b76571d61023100dee39eab5026005227fd6d2aea4b5dbe8a12402f7801410f68021b6df5b94de83fcc0aca19586df816658c4cd93e227b0302047c435bb50067306502304332e92863adbb8d864471faee7d709fc1427accbfc4f4a0d600b1af69969b73884a0f873e2aef4bcbbd6fc625fd2f14023100b21806f5de947ed3ddc17aa197489ced92240eaa2f1110742bad0f79fd37d3e48100142b345aa16874b055276536331c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b7d4ad0e309676927bfb9353742cc63761e9ddc6e32c5864585f9e607c4386ea623364e5654a7f36e5c51b8a8560ecf1023100ddaf75eb9a0fcde0b10c0dedc42bfdba7b84c0d3487b0a3fc56997db948e9c09130e7a929a49a1cccf0edb3636230b130302047c435bb500663064023074176e69d7072d86d696dc1dd6f50bb4e404732ad178f3d00f296678472818f4da4a1da20ed3de69c46c47ba80722aa602302ac8867292156e13312636054c6c58c16dc1f97e82da78b28da6d4e5234c5c866df4b36cfd7aa185360986231b6bc74d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bb8f56fe1c46fcf88689cef5ae4f7bdb1c0fbe736d66ca293fe660603b1c996b255fe13d2cc38394af6528bf9dc52fbe02303cd6cc31e3b52e786bea192f2517cb9faa95dc390b72dba6cd200efe5b62ce127e06163a5fcedba12095f1a994b123b30302047c435bb500683066023100a352ebc60d9ab78f20e2125911e9a94c630df58152d02e42935ccf927a4fe1a8111f443317097a572d910567783945da02310082415bc5df8fb5e6ff76487bbde5c3e5308c347cf29dc4fa78f856eb703c08e9d281e2b7f67d500287907253ef44e47d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310085eae48102a64e369fa97b6fc0b5cf0f703c8122671ce3ba82821aa6295da95b624591df678a21edc4252e37fbb856c802304839bcc5ee8b4bc2e5921add843f7df0bfab3cdb180341eb7e904b19522832774258fa5693fccbd8a6c521638fa91fc90302047c435bb50066306402306476dd631d3d495eaab19151aeb8b877192050e3d5731665adcaba88228b0ab4f5edfc93cc9fb801249a77bca04bec02023017e0e88357c91e0ff179b18d791cd778a49b526bb95128c301ba19a783234bcbe100520fcbdf23c846bc894d92467e1e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301986710d34aa5ff01e26924cce60c2a6fd0a45c91136731bd01d2adfda1f6a0d6ae3d88c0dbf23e42e2cdf66b33826a2023100a58cfc41ff1ee3f323b79c86168edf8cad108428a6cd7113c23a59673f296b5a4f932ee28bfbd8cf7a419785dcd0bb8f0302047c435bb500683066023100bcab3cc5ada95ecf848996e8480e0fd0ffa5ce805ef2b02b85559ce31cbc1ffbadf6c58b668b9a0fd3ad79d80b59d5d6023100bfbc765069ad4bed00ff8521c8cb151fb76db54bc5ab41cc30f2795492960364e5c1da6f38cec7eeee97bd97bcee73980302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300848dc0219ba9042b22165a17ca5ac04dd09b3b13e217851757715fc73dea98a9914ca0a98917129ea2ef03964b0882d023100a5a273b41dafbf862dbdb1b5a4f29153e42fc84d9648c8d7c201c46721b65bc899c41863e8a02008f9ba55b6699e8dc50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ad132d833be78f6ccb9f113ff553563c60d1ea899a697d2cf86fb68e2a9f78f853da1085e7d1571ba9ec2d99e64b62ac02304c923843d687352a353d58526b042a2f76c38564a167a2eb400da7a891dabab7691fce3b26122b7159a1e5db3ac795420302047c435bb500673065023100c02789d401016ec1ef6dd9527e151d9e5f8bbf7ad05ab3c3ea97f295b449b08981f2a2484ded9c37a9412902c26fa93e023073fc685f06d2dca00c43cb027bd7db8d6723764cf4068aea14c9f613e278d10fc9f20d43b591bac1e6bc28485fa9c4680302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fba01dc1771b58150d63307ad82abddbb9b978f7a24559e82c2c2cddbf28f6b4491203a82efc07214fba50b6eb15e99a023100b68526aeea6b17aef9ab9b3babf46043abc766f8e3367063da240fff2b5ee6fe6f788239061f011aa97370a5c2ea72110302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303415d46181900032d04d988430354562f7f7c0ae102351a803070595eae1ff0d0e9efafdf0e02995e61c96554958257d023100d5297ecf832f646a4098b9e84ecd599f5fc4664d277dfa32fa688813b26cdf0703ef5b361a2e568594e4ac169e22dc550302047c435bb500683066023100a12745911e06c414683f2d83d2542ed0338dabdbf9a6cb32339361dfefeacc79e479448b453c41caed7e3513c752cb6d023100ff170e9e8d93c22e632fffccdb3fb3cc762f16c4d905b7e9075d1e643bf79a129f8f600ea11a46baee24e49bd66cda970302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f97a7ebddfe29f88ff6f1dd822756f0234f7cd2f78d2d6e0f86460eeb4ca1fae9a59ddc3148a6f7261b1c4e0c8a2a866023100f31f93d34ccd3ec256a46b209f05571d05b4805f4e05c87739fec2481a6de5f4c1d8abaf5ea76b9b5c838e3c1313ed2f0302047c435bb50067306502301a7e9667f8ea6e32814e4958673e148f9bfcc37937fc44a9968b1511881932cfd0a66a3cb62509c7c193c38fa0f6310e023100a44ecb573760dbe195a7ce1d4f3ec2fcefe47ac5a055c46ceaf07f4cb1fe437464936bcd29d40f1719c21157b9f2231b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302c8c54f3c3640afd310dd4bd511bde615aac493b2cce80d6e5fb29e17f984e059e329ca8997660b49367014e4470e912023100a6630d0092e77340c3804c92f47ddd7779f4caaf5effd570a912c5810ce01dfc24f15a3a38999febeecac3068e69f2130302047c435bb5006730650231009beff8d7c05983cf21fecfe5423fd091b6f40cd0ed20f88a80ad8f4f12d0002bbcdf807b809fba6a0cebe0e3b0843aa002300cbac9def97f8498e4094ddde06afce21bc867178c82a3006008791b270aaad6636529eca96300081e7157f234636afc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310093a10a4b86451bcab14835a40e22582bf1b314a5b5944c8b922524d24dfc192664e8775d22894cb6bfd1bbc0a596eb8c023074908ac5c351e99d3630450c08cc34a90d5db4ccb4cd0743e2fcd8711286c0ff00575908da092f7c3a49449bca5e7ebf0302047c435bb50066306402303e4c1bbd3b85cd9bb327b3d29fade696b7f381eb4e3694a45a30158496101af15d5470226ca7ea1dc881b869f74f4ea202303c6b6f7a349a4be227a635700fc45f4d8fbe1929251ea0c9421d3d7131f9a298dcd479371f470433d7ba874cc46b0f800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023050e966c1cf720088eab3f4bb6b53baf7c4faeed0dc831ca6b37e420d849d1480aa19b1816d08b03603cdf8adb019a55d02300af89aa8315f05c11bff70bb9bde4310b985a154ea87ac4be4f97640dcb7f1accba66cbf48a808f0c1def0399000e4ce0302047c435bb500683066023100b6d39d0d496eff1dca19826860e4d5c98b0f664eef2003c44cad23ac693b83697dcdf921f2485a7a3de65fb85860ef9b023100e5b5eac543c66d42b941fe61531a542c545731893c51088e0e8861af9f54fe1f28097ee5c6517e9b247996bfb99d977f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302207bbaeae6f25d246c9c27fe99c843dbb1e0cb4efc95e0a615aea18edb4209627c184a4131e671d2462d08462b6c83402307ded8e72944cf7351dd545b01d113b8c0b2208672a2e0e6ddad6c00aaf53d8c07b466cfc771e3334aeec12c9c9086ed50302047c435bb500673065023100fcb57fbd3f9045b7774e777681f9463ccc7c623201af55a09898d1c7b6b31498fe4f21a8df01a682696f375dcfb7d4ae023063e30c141882d99d5fbed06de817fa0e2e886fdce5748ae8fdb5857068f14e62535a0c5b71052625229537cfc2715a7d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d1fe171f2b9abb209b69be4a23615048409a3438d6e4de69955a145e189385a0d1caa04dc596a7bb20cc5e6f7e336b1f023076e42f0d8d7825134b324c49d65a0200b5fd7964b93b00554e806105cae8876399bb5b6404e745483bdee3bbe9aaab0d0302047c435bb50066306402306ee2450f66144319fcab2c5bdb7be3bc92e4e280c378a4a10892a0124999ee51f02dfdc6f04d1fd3b0106105e777d6ef023028b469363c82b6f0ef497b8dba54440b1e062fa3fb436549bd099d139fd6e6744b045dbb3391184ada3394879f133bb60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303c0c074f1bb0c3a1cae83d68f3305140ba66596adb5a6dd85f78b2da1af95660ee8b4162233e909348f8647ca1c937cd023100d452b46f54ac6b8eee48061014c40a5b9527621ed7462636136c059129ea2244d6e6b814937292ceb4856cc61bc49ea30302047c435bb500663064023007cb56d747a89bfee45928dddcca9069c79840a19dd4cc95db2c73c7c0bcfcd7d23ea34abb79e1c201096a3ca08308f802302787536407434a5f62a652006f298e2abe4c9ba3627905e0c9ba85554820f067c5b3324a0b09bf6d59e27a30798096910302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300d465be0f519461395f93e40927f16107a787030f1b92ebbc9e99d34da56204126fa5fd2af660f077830278bbf16c10d023038156fbb1a94e4810007c684cf3f7c4c7f39fc7c237ca4e4219f28a76244199247aff9dab0e040bd737ef55641b0a7af0302047c435bb5006730650230304fd017144f4c1a9e995dd299fbaedb2bd0b1316b916003723e27cba17031448ba592c8382a9dfc21b0c9d77009769a023100a9df047dce2a81728232f45887bb109bb212d6dc8cd9ed25be2aa6512e7670337c642d94cd9fce49c361a8c6a16d1aed0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303404cdc6991e94b6fcb9c24aac22d3d45c451aa40ad9f696bf15dd08554dfa5a022631390d382185b4568b39d62f757402300f5f1b2d338a127ac398a1275f250106e7f802a32ab4d625b555b0a97e7af6c6114e181c86d7a2f5994ae1870ef6eb1d0302047c435bb50067306502301a43ae3b5db9c488e3cf29781e6c05b54669beae7e4d08e7dc2492e9e61a6dfcdbbee2e6dcf9a1a9ff9288c7d50cd2c802310084cd03b32314d09360be350898beb7cf22e8ecb208fb099c92971a73bd5405e9fd01634c5f7bb65de61ce166182751770302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306eb1414417791ab276924ea2c5830a6f27fb3505c1ddca32cfb6e59ad0187086eb4115448bf497e0ac418c4efadfc4bc023100e093d905179c8afb3a37f2329774604712a6dbcf17e7a583e81ab01b0f92bca34a2321fddc05ed663ce5cf29c16e8a7d0302047c435bb5006730650231009e3bf8343a4c5be8c146f249464569cc342c860899a128490a40e961473e75fe7c0cc27905505448d031bd0ce6dd947e02305fcdcb6126d300ac9208ecc158735280cfbe3fc6b942bf3c7e2f9dc9b17662411e59a1131cef0a7a91de9443577ce7930302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c70fd4f86f0fc3088c62a2c0a9975af813c04dcfdb80ea46164d0f1edc5ca2299188bf2e7b9420c5766d2e1e36b70aa702307c31dc0f147a0537968c934a3107ec70e34e9c3d3d21ae808509da785f067e17f96fae894ff8025661d84315c5cd97e60302047c435bb50066306402306b7f7f8d13fc593ceeffc0c4d0afb3ac23215e1da025b5f16e44ebf89600130406d37e8864c508b17afce779b232684d023079050b6543aa1da15073bac34a01e0487c4da8cc596d10c224bb26660ddaab80781056c5f29fa030944938f5ff939b070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d1d8004d2e855bd754532676ce6677442c73188547dd8c61ef6ba6a397260cf8db49537d30ac2d9477537f748ee7061602307a657e8515e74b4f86c8b0b0577fd367bfc583e79b3b016a3c6f1041b85628e3e0bd6221f7e1df4280410141ae9b69c60302047c435bb5006730650231009b4e5ac293efc052cb4d90d3566c1377c4da6e18ae42ad6be69b3fe4928527e9c29d768c70ea7a51bcd59b69a1e9b8cf023038c385904ff1fa70ed1c84c10af52458c68beaed8854d9410a254c4dc5b8735f36fb2a944410ae885e7359e03a7f4aca0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d2045fa1b681ef8f39afb157c0b10689ea4402dafabe0a53084306d7a418e3adf96261f5974e2165c92e7c2cd95c1407023100bdfc929df83910ef14827f8b10618cb348059746f623fc2ae69b0faeabfe53cf92296eb9aeb0ca97ebcd9852808570cb0302047c435bb500673065023100f1cfa57c1e4d53d06451a79ba2b10a1038e6a21fe775c4f5b0745735697ad503939cea8e9d8a9a43b528a9d8bbd6062c0230686ac2349cfd1003c1cf8a96e238f9e4bdd9b43b087538bf0cf5870fabbd93868392d868b877f270705cdc9b4f1dd47a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023017f0fc8b6230f63a0dc72a53e1f3dd73bb71ad94e628964755fccad7e7c49d3143fa1acc591dcbcd8680a1d9def0f803023100e30a06247cc575b08551f81fffd89b02468529534209c818de62281b7e111a540c8d402da065850685291b3404ab71ac0302047c435bb5006630640230458e524f17c10e541e9a6bbaf3d187d0d49b5a88f90b334fd37c14ae2cc5b1205ececd9deff32cae4412c003d18df5c702303e88bbcdf8fea0fcab606977b4c277235cfb7b046fc4da2370067949d72004331084f559d8a25dc921b28f986259743c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310095421b5f454b8f38c789636516caed61429d0542f063e7b643432746648c80760329b54d9fd2c4034ff677cecdaf192902306e01187209c85b53cafe746e80a3deb38f65f21bda56b5df3aa0ff3de4b984688357ae12f74ecad84a975b5a2ca6d7270302047c435bb50068306602310082cc67fcc1a567cbd20ef62cb662772165aac26ce1e244ed673dff1d2ee7ff8820766176c2dd36378ee56811b15ceac2023100a60fb27fdd33db4949f6c2e33ad09b59f0f947cd4caad51d1210f24efe136ccb82116eb41b7cb2e91f1cccd75ac46fdd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f82a885893890279482f033d117650bd3beb4f02f8094e2eb0c838232ecdac13186fda48594c08f02b1b6a79356ead17023100c65591faa581299f7ba841300def1c79049450de7ed5e0a6d1714eae985a2b3552f5a6f6c17e4127a2312dc0c93ef26c0302047c435bb50067306502310081ae0397f24265f69073da15f59304b8461cae09066c128777ea1be80a524132d0d2fc4bcfe1096ddbc339d26a23bb8a02300891fbbfe176a22dc77c4771eb9aa559dddc17c05e0ed6054759ae4e9fec5c919cd9b8a9853f534c4f23046ff3dbf1760302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fc8f6c289090646440f60b73be80ffc7d526bdc7f772d9cc7ac1f44c42acf25003e7319bf40c48ddd2390da93a01b4f402304797d645050a33e09a09947fdbacf6f5ccda2cd2e68260a9053ca4b69e83747435083edd33212d12cae08fdde1f784b90302047c435bb500673065023100d7d49e1c109afa02ced0aad1e1a006fd69f248a31a575dbdc9bbe35fc0332708020bdca1188b51c8bee5f97c14e6f8dd023010dcf991b2cf8dbfaba59f86e52f449880d39b3477b71314410b8dbe79f54e119ca64de3343dcc98cd78092edeec88e80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305b309989192d2185597d429264be75c8bd1b1e9203447b115c0c7d763e2d3ea47140f989654346c5cc48374381893e2c023100fb8cd83f0cb089176653007adc21b2e42b7d210d75a5d51ce1ef66b601b6cc06f5e18da1345420c37515c6b03459e6ea0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310084faf39a73a4da83f5d1fc2370d7d69e6b89cb511eb5ef50bfa0a391248ab2485c80592d1b1de89519cf7998301cdf16023100e2fea9a7230a1f7ce4fafca51e574e4c83541612566a5664a088e343b4d414273f97d7173253bf0b49938a017a85f3b00302047c435bb50067306502305b7a96d618e452c993187558a823c1e45a7095a9c793f65e616aa20dd0facc39dec501c867375d246798281750355a14023100b88c38d5b3f1abef12237e4b994d2eac5eb4e0612eea8efb591a08f5221ec922f8dee64a8a25fc1ffcaae6a8903137550302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ac004a54406b9fa4c73a3db7fb80cc04538271f734364cd6feead075c83a6ba243cbdc1133ef905fd4064b31d978901c023100cb22af17640334398e6b5eb461739aef80bc80c85c2758bc116c76ea4913581de132590b89a75ac14df5ed8c367430010302047c435bb500683066023100b16bf62567142c74ac15044128116873f5e7ad835b5b6ce4eae702e6aa6e3b5492d0ea8ff29db1577a7eaa8399f8e6ab023100addaabc023abf838492eac793a5eb46677d491f5bcbe014737945533c1e82db43a87c1321247c20bc245a9115281899a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c9720edaa935850aab5fc1321859ac643c0db8d5ecb5e7fb16af444cc0b34aafff65fc605eef09e01d06d10ba3298f2402310084a368a2418db094170c2939d62cef51ed0e788caeeb5f5d7eb6778fed6f3b12304cf18fdf1dc573c23867b2272675420302047c435bb500683066023100a1141ca41d87b5d1b0b27a368933df82e97d0c7733f675a21f2deb7604051907d6e68eadda4ed44dab611dc265020e910231008d04cd5ff546c1a93657b4b7b6516654eb11779b63195b36a24070ebb8502efbd48552b5e55e98bf9009773f30045bb30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100863cd5d64d8e75fdfef74fdd7988004574949363fe77c5b4b72c945dda580a10716fcd18af763fb41bffcb5706883708023100cb9a0d8ac5e086929848fc8f763d1cce85e690c6c6f9d8928fcc13be2259dd6ac2b99f822ee33a3d30579f74ad89d3e90302047c435bb50067306502304acdaa60ec71a3b1f5cb6a7148fb3040e42397988fb77b9dac446f6abdfdbb3c21ee0084b7d1fc846a8299c5b4035266023100c47bfce4a5c0e06b5625f1661084f726a735baee7ae8d90e467060f3cb564ed0c29db29d75f3cefc4642749b9b07cb690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ac2b62619ac6c996459beda79a10d4fb23e15686e408ea4cb90232d9b90de5620091c3d5d110ad7bc6d0bd1f5b309e4802303412010abd6fa006d10c85c4986f94acedf61d4ea5ef4262ceb6ed176519b8fa1d90075d29b7c535095ca3b8fe5205c70302047c435bb500683066023100e663827bf9d72c82933902b46b5f9a8c72b2b92ffdcb1f50cc148062eb1a6c38ffc9b65c30e4d78cfd0fd16ee44194c9023100fb4f5acb7f5b7797165c5202f717f8c8d31c02880cf002ce01f7518328880faac4dc25ff4fb73a3e2e317d2f9ba0048c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023007f91087d1be1abe7af53a983e7c9d81ce997f61bb80404466b5d6d8a0a65bb5adc3487c4e626dea4d6f7e446e26fe8a023100f9477a00b8ddf63c2daeb614566d1df5364916937acb09010eb7a088e24ce0e2cb6c38f2d3376490ccfbc47ebaeee6a20302047c435bb500673065023100914f8b83b755380811a4af107b6256e189239572bbdcf459c7141beb8e5ece8b53e33cbc617769f433cd5ee0ed46e4ec02303fb28f095adf67352d97602b6ad6a321b845422f676da32bcd69d47595ec48c4c6733be148932d2953166b7cf7a4a9410302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300881d9b6db36bb8f1d5502332c2f8c85ad2ccea2c04b769ebc94807084019c580ace57b116aac7cf40801fc02e83f3c0023034e311fc2f5a59b28ec0cf359fdb6298e08a58d7bd5fd2fb862dc40b810b99b86ab1320fc24e765fe410f852080f40cc0302047c435bb500673065023100c3097024efacc34b5a4ee3833a19c01be089e0afb74a0dd68fdfe7973f7379b9c3a9ad120afd44ef620a10e119f59f1c023075f317b03a9dd02380251d9910b43089a8b8b9e6a6c7249e3e775c147a00fc85da76ed07c0c4a3073f83b1e4062ae9fe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b238da0ce46239eb40dfe619859abe782fc6f9193474f6fb52c3ea05a2f16366e77fb4535f22479cdc970b9cca45ac1502305f15f4e6a74807b967b7f3e472cd6681da62e3eb8b2b1b57a3e6af2a8c061b8cd43a9f5383d9f39ba1cc2964d01ab2f00302047c435bb5006630640230261e7ddff8a2fe99e589bd8d234525efb25f6be302eaa1032cf85e6840d55612a756845d092430b300ff34086351bbf102303c5b6aaf6b0145af42fd40cabed83bf0666f4054193d4cf011a8c9eab05dab4ac132c9cf29cae53c14db2b554d9f07d50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e720afec660dde6377a24a4f2129a4e0228404f56dffc03ea2f1eeade26b9af4566024fa730fc43658e92a6c01cff24b02304ae703b55de101bc80442a8a3b04ce694d21bb8f632b9f707616940f68f80fd7ad430cf4164a8728efe8b9c1cbaaab390302047c435bb500673065023005cf0ca7deff1ac61be8bf0de39ee7470747fd9ec1f269df1cd2ccc95b642bf21a0ea82bd892e03b25b582727069cde6023100d66f2e460abfb46aa41c8951069386917cb973bf683bc4a1b8f8828c69793ac3240610301ad9191edee7cbbae3b7f6ff0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300881a9892439d1acadfb487b099fd014deeaf492bb0b6d8d335bc109b0fd9db7e535e6f4955b117ba071ba2452a6866a023100db95f9eac0c32de8dc12db8d28e8a6845b4984da501e7e963239b9581a41bd25d75e5985a07b9f61607fcc0b6d28a5950302047c435bb500683066023100e9e19e0022299f4493bae32054aa744bdf45eaf037c0995169f80d7b564109a7f1b3936a7a84abc50b7db1a8de5de34d023100fd14f8e3c9540b3c7b358bfec0bd89c3905ef05c4d7d4aa60a8e652b0bfbe55debd0d63b84dd744b96d59dfd1984d3330302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009e600739b0c8f8fcadb90ffd135bfc54e475f0013ccfecc3333127d10881e39a1318e1221d8e430d01c30d32ef3f3c6c02306a66328c69246372c5850140dec1a4665489c6b9931cda837d0e5f00089be25960e3541303dfee9d2067f4a9c842a5a10302047c435bb500683066023100e7937b159c2be3733f971700309f3f2e8b98c37b36fe08d68877ff0c0abd5f1716528e149b65d9b311775474735da098023100d075819382a3590a48dcd1f952ac423af6be5848b8d165dc4bcc57a2006bbc91e0730ddfea1670268c4aa078bf0bbc8a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307ca9c209aa3d11a4d65e5cab64fb1ffb2d9ea1fa7ad973b0dfab0fbdc7869b4acc32ed257de50d8603a6def1fd513e5f023100d9b1201f93ada8e6f01b30dd73c935d451ce16cb4af6369a00d1f423ca717425b33354a475d73fd16b1ed1037b603b000302047c435bb500673065023076ca156e3a4eab501b29a6416a457d690e63865654cc4ef0579be31df3211c18a7846779a9fb4a0acdac1411e851389c0231009a49c1078f7a8c7a4e4523a4144c9a5e4680fd0b70b588ca91ba9d4045cfeb1ff88412a26629c14785e8bf70ea4820680302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301055daadff5af4eb1df671895a8d9b25f8c7a87a45114e4d6f1d6bd9c665509e428696d2e3c441398a428108e0266e3f02300df3977f0dadf187527e8d3d7cb3a7c711f78f209f5a5f12442dbe9802382498491c65cf0100f6a640b395dc39e2dfcb0302047c435bb50066306402300ebc100f35edbf0544604ed1f908c937a6aa026123a27bb67e340cb80a90699584d3d958c88771d4056531c325681cd502300a3757a63d187838f674a28c4f4e7612d0c6cb99911ac668b276ba1222b7161d9231fcb0f50a87a45f4086a5d347c92d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305f63de7824ead24ecb8181b486da7cea61c414b8a01cca336e2255d8c62a37e76457289623311a6518f17b41064c18c402304060ddd3bb4b3ed0530897b170d2b9c74d2b6b1034e8df99a86968dc251b3ceb5c2bc5d0205be6b69f041f8a7a9a83f70302047c435bb5006630640230086ba5cc60beb077fcce44acf704d3fbcaa153defecee6655026812688dc7a151cd447b3c5abe03e4b93a0a45f308bed02307f108126a1468571ff46c058ee0609e592b9dd12c0be56a16095df7142c303a4d796d8a5c4146c62af4195b93aad6b6c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023034b067db25a8cbb61e7b7872d30c91439041d2764ce037fb65a656dd0b3cdf23bb74e5d80a29fdff3276439f5de0d57a023100d2979cd48eb229431b9d4c615a157a55c4f354675045372a3bc0492a46f781c4e281b924a09519405b2712d088a9e2c90302047c435bb5006730650230508f83f0afd173b60134c6ec199a5f92ca65da72dea1224869dd3df5deca93245ff106c62460c1631703f78a03ca6dc90231008b41f154e626b3ab643f2fb8d8ec3d6500f625fbf27183e3d00384907eb632e3f83f83ef06a935d284b76de667e5c5a00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a2bda0b117b5a19babbcc015670cb9731027d1de5a09582e55a807e7c9eb6bad933350a4db6b00c3801b3c83a9d7ee84023100dabcc668236803b7001507f9d2edd9ea3821223f2f20725aea0cfac04ba8ca4552afbd131d09a8c412d4f1e7885b0a2c0302047c435bb500673065023002f41070002178a87b420c53eda106b693142801374710be83bed8d0f022949c562c31bdb278284ef0b551fa96d16af9023100d0d52ca387e6eabc9957a09474f8055e1b55b366a314dea2769f605cacb55da7a8c9b7221be560e4ce4050b99e3c89e50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100abd4bda5dcff21eef4a0b68c6adfe869bafa849a5cab1569eb5c667ba65b6c3762bd07cb56f8e60c81b6c78c23c19c78023100ed0b64d5943114b86f9548b50f6c5e6c76407cde898fa2a59321ebdfd63f3fca87ad0741a87d69d6e4d5c42a8d477b0a0302047c435bb500663064023079b35fbb717fd4ba9d669e85ecb2119ab986ab018a92ec709b2f3f39ceade9ccdfd91074e8ebf4774d39d1a7e5dbe0cd02307033b34eb5fbbc41814b6a1a78852756a4968335c5742b3c08ee8576bf86f84f73cfb84624ada9ed4ca128dd127b8b1d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306bfa1db85f170fec0c01b1c5a2565f71edd2128c1e32476463f21afde454b098b59b6caf57549c4cdd3ec043e5b65f920230724852f2c3b7a7729e4ed9c770b6a5447c894fd91d27201ecbeb42d640cac9b8281e56195bf2a20b3a464f2f976e2d8e0302047c435bb500663064023058a64f46f83f81b4cc202fd4d138e0ec14edf775fa010ff100d1973c50a156f7510d3bfd2047331705972a14fc53368d023060f708dc6bbfd3172c70e3181580fe36158400c16ae347667d1a95e1cd3bf15a001fa77bb5563328ed1e43155547e83d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023015fbd405a42e1c1754ab3de1cfae9c819c4d906ead576e1c9af9b54c42d6031e487434d30190ec6616aa3582ebb1d298023100b7ccfbb61e86637affcf16079bb2c3481a924a66c189d4dfd3f864da2daabb4934470c3f801de1b6c85da4c1056219d90302047c435bb50067306502304c28ea4b1a90da9b5b91c7d64867dc141c1137f917c199c12f13d2b372e14f58eb24bd682286fc45705728095bfa0ecf023100f4c0e8af317475e764a383207c012379980037d54023867204cc6e82d38a1131c4df3c7603976dd80b5f7eaf8d8678d50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023012489857e112d3f4f3b88313bda0b88c5d2eedd0458ae47ccdcf4e717c7b75d7887fa40c07fce76793773525868f29e5023019c402d1e91c12868813623f1a0198281432174e5bff16b6ae1885ef0eacbc047317048c1ffccfaf9e642ea52478bbfa0302047c435bb500673065023002202c42f2ffd4d924924e04f056f425a744fd91ae70c03b637683857139731da4906aa1a44b36319fc1d2c290bc8eb7023100cc65e9b93d5b32e5dbfea2d0367de4d55b6ad4bd1b68ef4e9dd1d7ece1cc4f190ae63f1952eb07917c7083ea190c062d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c558ce8c5cd8e7ad80f25a5ab7ad39595e2c202040814a47d9ef9da7e0018b061e804c28b0096d0e0fa4140be0bf439c02305fc7f5a8a935a4673791f9e11a45c97123f64b5612228eea0fbefd879b80c626de40c77031399da87a056ba32167e5550302047c435bb500683066023100ab2327dfc205eb80071157a27045e2b1b174644075f46803ad3df056e67cbbd40e1ce49d4dd7f5d436532c792e2b6ed7023100d4931a206ee038cdaaffd0723a00775302fb587e5c121770f8c675a24d9f2f506fa6ad1f2632913967ffd84526e0283f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ad19c24c43d37c6881df84cd487cdf32b779e89a5c703168e705d78bcd3ce351a3611a84082dc95ab2c5657c9146f2b10230611d82f19872566f894b50a4b097a9af3a655a53695597765ee290e8d8534daca215e4e1b52c9e318cd389ab7f54a9950302047c435bb50067306502302c0aa73195000ec5ddfe73f1489abdd0c0789cde77360e23dc2c76335ed0560dcc4cb84b5096602a2446d5ad3873717d023100c772206ce1ae4b2c55828598c0f4e3f693b5fbfcf1c1b646d3624b7d8dba856e6564321a5ca316ae8191b6d445f6dfc90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ca1cd21f500d3885560c8e31cc12fd2dd4c388061167261d9c0ca392407b1dfc4e2d8df792028e0fa0ddc7f6225e974e023100cb398ffe1e5c9f578621f22a111fc132e6b10f13cb75192688a4def7d63592df947b785a343150cf8ed556dab720f1b70302047c435bb5006730650230385eb64439bd6cffd2625fea559da447c6053e85e460610bb308b0df5c37e57faf475bc9bcea0ed66548646a12f42b7202310081db2a7cc58b80d253701bfeb82fc20219896c2a7bd3826fb07668b88f48369eae6eb15a241c5f1a0cd7f2824a3932800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100988f878fdfe6a256d555dea99d2a274d5bc118345e53009c7d2a890a66e70e9cc3aa59d6e6e8f27927862e22f3514e8c02306ad0218069c8ba3668cc5ce3437842de20a5adf923dfee0d05ea21f6d3ecf18cdb388b6a106bf92253dadb0357daf92e0302047c435bb50066306402300e94a7e88a8e0072765cf0f63e87adb6b4a53d93749342928ef4e62622efa405c14279f09d0818eb716fb1361e239b0e02304010ef25107481b986cc52bfc2381015765768cd1b60e30a1096cfed4eaa6a714fbe1d3cc359d6ef9dc8f40c94ef04670302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230718c01325f3b7be86eccf410a7571d49c2ced4825ef93f3cf1dcb7b6439587bd13f3b11ac9d6ff2af19822ead43fb65c02307498fe0ee0bd0e664f1b84d62ce3dce06d8c9b32c340118eccfb5702d180f6c13de13d5d1aa284d163b1fe2799b9fc870302047c435bb5006830660231008cd73cfb35e5e2954f24c2e16fab1a8a0bd23a94261088fea51770327c01e53893c269dc6fb91edb3df681d49b1ff2b2023100f0632de7ae63a23ef57d396406cc55b5c6a1cefdd97035ce03ed0c9b383f3c1ca8888d08d0f2dfc71e146c87ac2d974e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f262679cebcdc0b46be71591341ecf6f604b6a9a70e375f950bf1dff16d78cdfeb1a7123f3025968d229feac25b8a2b6023100e29e747f593c73e1f9aa13d56cdd56ab7c40dd93d692733406cc3b2dea4699156365608d7fadae1b2a845789d4bcb1be0302047c435bb50067306502304fee0c2de3fcc3d71101327a6c4ad69c7403885af9cb11f258ac7814a76c617443b1c6af821157ca9ea4ece9c4bd642e023100a7585fcf64e98924a30e2118acb4d80bf11f621135947a963c262c1681a4fd4117d6067d108efd40c0d8417a191bef510302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303b9c19ad492b55e74b9b7363ccaef3bccae3c105d5c504e4b0d399afd507126d9b8843bb90aa1b183be80b2a8fec4e76023100d9752d4091464bd6c3fb1fc9dac54140521034dce93586c771adc5571258d20a20d6e5399336a2ae7112cff9fb1223370302047c435bb500683066023100dfd336b8c5720c73976727eadb2143316525681afacf34db1d075aa432e7a95a1185523fabaf5f08e11d9152358208740231009d1dd1f9d64aac59fabf0ebefa841af4a415ad58c00c56829ce48714315d46ccc2592d78b6f88ebe04e5847b4aca678c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023000e31b0b0fc4013756cd9cf4628fbc27176bc92bbf402bcaa317e510c8f39aec5425aa6c5e57e0c654abd887fcbbeda8023044d0afaf5e05e6945699b456ff41e83a868824e4ecd0d0a7a5a68b0cf92f617b964a5e84c5e5342fc6a073e6514d6b040302047c435bb50066306402304c0bcf923f333dfd3bdd968948d87825b8197ebb0d898f6aa6489f2d00e362a3f377c6969a30b2c06bc2cfaae42dce7502305517877882003c28c0283d5ab7fa80990c2cb0eacf4bc56651f954a201db48981ad5bb10c8c17f1d4d21719f4322b5910302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305d8a22766e25663bd47d08bc2ffce44bb30c7943902922994d3399db36c548533fd81b86c61076ec5e9c700d3c80b132023005f98004964f0632003a8cf06e6183406778b3e6907861613cfa3cfe2f2220778b1793f8b0acbd60590ec03ed67704df0302047c435bb50067306502305460c7e2b755d60795ee4aac8531cf56d3e100748858b44f51cb9f326e9afdd8f794c27b3c03f119915ab096631fedc5023100a149dab0c3f380f62b014eb840670bf7879b2d9cf6542ff42e3ce4d81b98cb2dccc54ef6fd371a1f3bbae178bf591d4c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f4b0d651b6883f44a7dfae86fde8505f1fa515cba610b616457185a120cc1492c6d3029c8793cb106d609de907a67acd023100fce425c724d9c6c0e7b041ae31a418771e44c175ad43def7ca53e2a367e4ce3411c2e78fb4928994f0211ff1e10cfe040302047c435bb500673065023009b6bea61fae35ed37b84968bf8547f757af7331f840570a86665be1400c468ae1c692b73f384d171ad2953acdbc3f5c0231008e5bf20ac0e5ac73e5e7c2d2270f6607384fff3b73df47afd8d88f115601db5611fbd92a3830fd25b7f0902d2cf41d530302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301839537e309ea14949ddaf4ea08a2f9b4b35d737e9ff11f5e9ad730c210228abafd4ca877ec1be59fa6c0829f2e5bca3023038bacb35a2882fe7ac56abaf0009cae7b34dc3f2996f5d59acb77d5fd07a698bd7455240830aae14f8c6d6af8e6c0d3b0302047c435bb50067306502302b46661db6607d7be06df7301a96ef99c92131fbc6f79e14b53fa6eb99c1644269133b640ea20e14b51dad55abf68d29023100c4871c846c859fdc2c631196c951d3591a3381c9920f30c7a1913fc22c0c2952bcc151c15324719ad21186aaf09aaa4d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023014308975ae55f116d4e91ad986cdd87fad8d2db4daf3a7ea568ae59735c809c3e19f6604ead3fb76839afd25cbd0642d023044127f9188b57caf819e1f3cc47687c776d20c03e4e2f61c7d6733d779c728d1bd040c2acdcc013265f1e695c4acf8990302047c435bb500683066023100986f174c23dffe5b9192a25e133f51c673b4b9a1f4c18c30f3d8b3ae53565ac871b4ab9cdb874f56265ebbb0453cabe6023100a7c607d16fd103b07fb4b5b8829c9d62e4180eaf010ff0ea3fa97a2efaefce04db545cbdb67965840d76cd2113d36a580302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301ee34e489079188e27f7aab67d0e3e18ddb49c9deb144d3ec79c57d656abdc12e7dc6fe0831d816db675cd5be3dddaab023100eafec737faa7d2f8b963da1ea6057891b1398be2af87d6d8046cc7337ff20561fb72970337c22618cd2fe2a5ba8ca3280302047c435bb500683066023100b7fd98a4b566116fff1b9fe28dab39df6a04618680582a95829d958a76ad3bbc1533f50ab8ad06164c23077b8ad4a60d0231009cb8ec70a0c7d65934bdab0c72850fc6e247f38e786f2f239d7fee825a6a67df6f66f8a09bee20e113cfb7380c71a7c00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306fad3c1cafde876047f80addb734d97488dc5337c3228faafceff9ccf72089679f1a875bd2ae0aa4ffc99c115c0e51fe023100d47ef6ddb6ef24f45bf3b13ce5b2224a62f2acb9b445b46185b510ac283ae296cbfdbe077aaa2f28698e7f16470178950302047c435bb500683066023100eb7295610ecc441a1d5947952aeefcce96fe48cb5992b7592d81fd0b5a816ae1c0ec1a11274f1deb8ae415c2231585ae02310094db707d52afd98ae8d9eb23d6fe7f61e553d163cb9314b0c4466984708e5199f53844964b1910a27f5c0533e7a6f1500302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a1c17a407c6731679395c4879c31e4b9bb279138273367d5ad64a7bd4e1deda4a3916d15f691b01a62f1debb39aa5d200230058d57a450d8775a0377af7abfad7547a2b6acf75f65e134b1ff82b58298e57224d85987785d653bb89bf894857a5cf10302047c435bb5006730650230602889e74d9f606bca6b2b4aca80260eccf2377b1ae0c446b5c0c0f7a2c80ada7779b47e6e487a2ddd8e9c35083c18ff023100ae86ce1a0e3080430493ae531f0a535a19fc681457962364c7a7c550cbec97be9ccf1561cc6685ad7a18370bb04becb40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023032ac7d5285a77d92d09411e09b470c81a129a8e08d4a2d51b033c4acca7aae20c7404c5a5bfae943d32467bbe149da51023054fa8b98674db0918892bbb1ec34c03dbf25f582d60d8cf60ef8e4ff48c2bd98a8a1b28aa3822a5b3f7d989721d0d9640302047c435bb5006730650230083c23d86234e76b492e9023cc966e6a042620ccfb742d1695b313cc1054e7be5d186383e6e4cf4431ac818ce8e56974023100eee1346b2b464fc91597bb8a4b37eff6e3b815125488f2210c5c7fc025c3d925a3827b62725a6b7eb05498bb09db8e9c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305ca4d1bec4550651430053db9fe941b81cf09f531f90f2add07b91a5f1bcc768b85ca07ef8dc3b10e892a0a5bce5bc8c02305236f18a3eb9ce3daefcfcd67f7dd5f6ca2f71a7be1b6e050c9adf86b92a1c30ef9c4a16adbd7c8b42d8559cab03c36b0302047c435bb500683066023100e61d73223f49eee3e1e172840134554c9f45a8e6b31e59dc1847ddf5745a8830309cbe59fac9d69e91200c9fff604e47023100c411968a9947fdd826e24dce8c07b78d87454569d38918230fdef3b9bd2449577f8767d0d89e06d61319b9ecae905a070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f3aa594fb7b8422e497d0be6dad5625b60676ff1ef18335bd146267d0c710dd3dc491f3bf99d5ff583fe5bf6b41661e3023100e1070acbf3698384af38d18b4ea4ac7772b4671a179c953144c6cf345b4258cc42ddbdc5dc26276861cd32e46b7d4f970302047c435bb500673065023076186ff6630bbd33886fa1aee010a52538b61e0368167fd519bb48fff7d4568a3afd3546713071a53fa78fdac7c49888023100d327408cbdd76e90cc494f3a3101ad4de1e54f3770fccb92d549fe3e09a096d7306391e5c06a49733d4b50079ad605a30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f6969ef1fadad7c89b7726f32c2adc5b844e6e067c319247f72dd0686034b1eccce23d11267b8eb84ebf29ae69d12d4b023100a793a862ac5ff20c9ed6fe29ab8721b7efa71cc3817574b5e9468c980cfbbd93990e3af8cd558ec0abc389405c2ffb120302047c435bb500663064023026658a90badfb586486abf88c3ca5cb522bf335eb705986dc99bd2343f4ccf1dc132fc5e96e7a2bfbc448a8f6843da8102304c1792772f68ba06a5644a92026980127be9a133ee053ce28e6edefa6d1361f91bbbc2fbc8f12ad4f4894c8562107b840302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d1492ef141b9ea8675673e66264263b2068c60397be3dd5ae0c3fd40273e841c167b6eeb6b321aa10d11979e663151b0023100cde776ab599e44b7004a9dd3dfc1049f634212d1895c1f3c5cf9484e912f2bf3554045c28492fbeddeb7d81cd18f089c0302047c435bb500673065023100ffc328255f4f12568a2cced90fce9e4d5413f43d9b7ae83dd599ca8d6f745206db1d5c22715368bb1654e0f474bf116b02304c02f979b5a7f8eb7e9f992c03c0dc610798b059fd0916d8e41dc80a52e09e29c065f03ae03588fd7d0447e163800fa60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303cd5ef6753164182d51fed760efe14f9f3af49f254cecdb4cdfeda9b17de444b4fb1bb20a09ad135e87d200bb134e5fe023100b7d860ec4a33b0a7d768fd12c79aacbefb718a88f0264354cd43e327e6604fb90dadb0325906dc5effec5d8f1a5be28a0302047c435bb500683066023100892842e42b3dd667bbf277fe051cfedfd0cdd40a0f6fc72aff420aaa42a2315f8cd5e81385a8f82c7ad198b4b5e302fe0231008bb225aadea4eaf5a811707907fbe0f51d6c91b535490829548069dea1fdec6d458198e4fa3e19916c44bb1024f387430302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008ec6d55da96506ad72108dffd8ee3c7c09d24d8d6bd16c53a0905898542d6052a78b48b8245ee8fddb7c02d106a0caac023001b4c39b1c2f9f97dd2b34b1e096b3b080086fbf1a780786a27361cbdefa7d018644b0ddda7dc04ce2c4edf6039bed910302047c435bb50066306402307c4757255b1917cfb20f28b8f58d25bc1aed60676001f1a8233e0229e66dd1231ca8fd6336aa7515ea4d0b3edd62a7f00230548bcece4fcffe8e7964bfe78f29c0e54388ffedab53cc0c441fbcff566d00134b6750d67f6ace760776665aefd42e4f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304ca3df1bd99592e5472cd5af63e8e3dd163b524a6a2a12131a41640f49d2291da678114941218a5fe8c603993fe7bfa4023100eddb94592362af8b08baec36aa69f177e9032911a3da0f1c41084369ae5e5131450d26a9b95934a6892db5a92c437e1a0302047c435bb500673065023059e46a853b9a9f7b10effe00b83a1460915cb42969872585a37b81fd96753ac70ad95be0888f70ca9a7f20d54dbeebc2023100bc805f50a2e280008ac7abc3e0d2bedb4b4ef4593c8770a34fa3ad8ab4af9e79aac7afe1dae00b73dfe4c86aacfe4afb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e02b99281cdc808922b47da54721d447bd0158f737f564c10a177b3440d612e437b1bb85f821a88c7c90feab79d4884b023039e808b0c06961f07a5e3e755ee3ca61cfdc79dc16d8c57d304cd7a6ebe1f24a104d23a37f5f27938f344ebe6beff88f0302047c435bb500663064023070ea94761b32871ab0910e808a1ab9f138aedb3a5003e6e70ad4c6f65d614b91a75b1c5b46944ecc179cd24c39f3e081023018b876545cb0a02dedc3a30c307a8b0e1cf77f7182080752143dc50b9e27c35755db5c8e1d8c1b30f7360d2064a6166c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cdeedc24262ee6035725ea2333bba4e41f33da073fb796c5a183acdff22c5bccf3b27e7b281bb2a653a6e423a5f01ee0023100f57ce7c84c1915bafc891bd60d1de6adfd99ad59f19b18b2607fa6260e51bf2b4a0a5330f834b0097578205721762c330302047c435bb50066306402306e765383ac0d21d3a4669d51ddad9c14b0aa45dfc8710b062eac32dfe349873f042bdebd4c215ba1df55d757df32d4af023079f1deb99a586f729c44e8e8d991e6e5ae8106a65acac0411574583d7b4a9711cafc8be01db6be81863a8615929184380302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d838c735333dae545044bc1074d46321303f4fd87eafd333c8ac347897eda14f2ffa0a89e1e59201e6370395b10fd782023100db23dd4e1b1a61a4af960fa6a53551a32bd5221e03358a92fe5fb0dde809a1bb7921598aeca33dcba8679eacbd05404a0302047c435bb5006630640230630b817b61b799343c617575ca0b5fb2563c9d869b4d15b71450089b48c0c565382597d37a0f513dab1960470d4ad64b02307b689d8627f23fba51972e36be8da9e55ee6743036d8234dbedaa3bce77a2caa5face6ad1a79707e8c722f8631b520550302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e6f65ed8219a3ede393d7255ada56fb829e2e6a5b7cba74d3dd5e9a4da474038e6f5781f4aad039df49155f5e7ae99430231009c566ad5ac5d606fcf9891a2017905ff531815d0a335f8cc6045489697cc8a32ede6b3d40d30b98534e24f8db562b35b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d4535668fe612cf7e4dea2256386e9262719446912b75e3f2a66112f5b6f7e1cb7879e075543875070d877fe30fdfcd802303f0cedb4e41787f48f065aa9f8af5c592736123e3cd371d58d07165be6a67f3c174fad4226a008adfcfed50b9c63371e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023016b4bd76b2843e7bff6d0f9199ee7e636ece2698fbdc2a522a5ebf023e65c50a7f8435c5d6fa504945c5ec844ec5af3102300afd2f984c025f69817febfde5a0989e09da380757bf47401f23abff21792e6fcfaf24ccff7b4f0a83f6442c3a3241670302047c435bb500673065023100bc44b472e1cbd12b726346c81ec305701625ee7a1ad39546bd31d0f2614b5769f7cd41b20c4cd8c9c319774daeb7fe0a023022356150798ceae0e034be4208484840e077c30f7cd5864ad7498eb6f93dc60e1847dc46c078ca5a85d43e64b46695460302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306f2c404b96ecb6c6ea6677fe408f15f2d725f07f6cff0713c9c2d8da6acc48c3a8512595c211ed9a8b34de41cee4665c02305508987800de28f4f78d13efaa08525787e41a7868b06eb394dce00d7add87fab24287d1ba9c1d806fbb423d78ab88700302047c435bb500683066023100e1d28af9f806cac6f86889d971ed218cb8215da0ce186b58beb89d173f1741ac3101d9152e876a92498a4366be610fbc023100df8d802d49704e734183f506f38697c87ecf2697154ce259989f42fbce8270659b7e6f5343a0bdcaaf3a761a36dbeb3a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303c0e6747c21726ec5c6a1d1a571c28ad013f001d97dd9be6e6f34db35c4bc81736e3d7edeef5eadd82d8afa6209ef99e023100a5bf3fc8154d3cf0510e947db9f0aa9199db9f3ac029051fb20ae872298f8413261bbd9340566e837b60efadd43b62c20302047c435bb50067306502305f5dc7f824cef2d2bcebe9b509a418cfbe3667690c64e3eee119d53923fe0692f17ac56b2977a6d4f08fb56b0582402e023100b42416d50b6bdde1d34f623b2d69f796b6777da8d55adbcbb9373bad4a365922135bb898ed213bc11d9ecda50fb05d3b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230738c637b8e998c6c45a256c9070da90518aba19adb0f09362316c8e7a4a704911c429c695282a9621de227a8cda46f560230141b31c61bdc4fbfcaec77312fcbb2b881dac93f58a85e9c6c1a190825561aa775ff5308eb5b3beb43e0e58c2ea64c7b0302047c435bb50066306402303dbf35e3b8e522f1c0c42c75870d737a84cddfa285107ce6663e030525d1c65865d1d5f88f528c9efffcb661f9007744023001b655f3cec2c56443a3eec944b07f7d56da10f3b9a6a095632efbd07448c013c71ac9b8224aa3caa38453cbc101854f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e75a78e148fb14c1588afb04e1f6232caf7d82eb511a952d41879dcfb565a373e62b9ba03acabb7d2bb3cd2c5db8e33102304080b6183bee5531d5237561edd5b19bc5281f69097d68940f61664c5765cfd2982cbc5e5ac154e8559aeff147d495c30302047c435bb50067306502310087a3c3e68f02dc487234e44159725826fc97b5b76e320d68890cd7864c8bd22961a41709bec6311d772498eb3a26850e023078357f41a975ded66fbf6da0f7c4429ed58dff971ba4392f08cf05c1fcb781588f9debd952df6051fd6a58125f8446dc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302cf69b44806f7b2045f3d0aa1afb9570af85e8848468c65f2896f5aabc1dce844ee3fc14bf5d296ee817e7191f5dd349023047fe71b87e5606250206f4a283f22b08ab5be531ce91b513f9856faa2b882e38643b3eaff2430a60147f0729e3d2fcac0302047c435bb500663064023059fcc9aae58f8a3c1bf6f50a037956e711236de76736b57119d26ade0923810506dc6f1cde737b358c4e6b11fa8eac6a023073f700de3011544290b2d25d803034a35e4100a9d992e57177527459d0de6660f611391b07fa622f90868cb5a6f6eaae0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307b058a0ef67194627711f386472a182bdceef842b68647c29d16e795352e3dde8c6907c1bbc52aaeb370fe5d4f8cb8ce023100b5c85ba2a1fb39769720a13eff10c1ad3cc1e00bdbeff4480e88ce96de4da2ca90265b7933835d512af61effa9e0785a0302047c435bb50067306502301c6460a506f158c51859faf7f0cf9712743162dbc5f861e4c029fb58f53136fce3024cc65781cbd3f172c24b6c51a54b023100fbdf058f7e6398281835bb0109fca9cd5c94161f41756ab71c3c7533b4cdedd566b9027523c57b09be7094a011a9a05b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023002383b9b5e40a8f27f3df3463006668795d854f9f2a3c835cb45700564579712099745fe530dce129d5d5a4420ea01ef02304b12f5d7cb55b1b9438016e3d0d853dad376570ba4e5817e33440e0d442c7a28806789fc2c744ddec50bacc122d3fb460302047c435bb500683066023100f056feadc0c7fc750351745660aa22c3808c2636378688eb4ecc85b9cc1293ce147a01c2ac08594bd1dffdbda50c7c98023100d94d56b54f3417904212c7958a18d301d01e66c5e20d1cb7fcd8676003f90f539e205f6f76a53aa1418a950c92cfbd700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300384a0be0b003d63aef025e0a7af07f1b0759588f7221d1483a15fcbbeb9e5cf9027c7fe40b303e603670e95ea4a1fd202303655562c6c328ef556327a330b91714a694895cbf104ac3648f1165374b330df4f55f554e67ebc84d7e554987e5d91210302047c435bb50067306502310093be93cee315230148d1a8b117ee453da9c34e940be2cc908f7c94fb16157606deb61c8e3d3d05e98d9cf276b1ba2a81023041ad1ad1508567cf146f4b5e98e720a6510d0dd91303093c912d5ec75becbe94e23a8f21c9438bf39600885f4ccf8f070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304f8a33531ed78e0d937b427825994707418f756779ab308e52c35b7bc66dbb8d49fd2a671c9ae586a17fedd44f7e2a9b02305a7a933ad93713a687f96bcc600b5c03ae732d25a29ea59f6467a0f0d0d6233086e56c605470a8fabf767fe9c8e6c1e00302047c435bb500673065023076ad9a072fa61ebf88ac85f9c537c2dec9ec4e7c6e9ead0347316b5009f31001a5c2f88ea365ffcdacdd2bff3d82efb8023100e9a1266101f63fcabe810a648c6735e01b1a8f12204acb1827559591625b21405299b407dc65cc6fd863c479928a7eb70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023000fb92fb3d4f5d9c2678c34d4a1d39bc57034f02a483f04b564cdb3e6734b4dd0a8a6b94413ca8537eb5c5531afdab14023100cc27464752f6929c96a78e732f4f8045ef355b23a45ea75f3714c5ff4238b847ebb134d62c175652c336692aea0abca80302047c435bb500683066023100ee9f8835fc2e1167de9ea132564e3af31e8fa905754a618ac8b6a0fd56ab60e9ff37b2a16a86413b158e697032c11682023100eddf9da60784fa83aaef5d2b34a36273d80bdb4ebb346a4faa7076d0c6699fe9dfdb13aa23243d0150e5d9af497067fc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bb03a5dfa3fc4111c38ec092260731a88375ccff096e582543700d933a908677f3ad08a4eea45c0127a05c31004032c302300437b0e5554d69bbde3f1e199bd6097e1ff20079851c89a5b9f578ca2b5ea008b894f0cb83640a9de4784aeebcbe7b070302047c435bb50067306502304c132e2929c7d12381ef1fe65ed42b9a5589681b37b7130eb2318c3726445e0d8587acdd51f1b592eb08c9ce812acb5f023100c0f0a5842fedb0b6566238426d855390155318735015864105d51cb7e88cbe49ee4b586657705b67bceb0370427a7b200302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230468cd73b07f08c2d4290b3d74e9fffbab32d34c3162ca15a1d63f574c2489e8b8854b161a3a98d1bc14de3aaefa96af9023100c01d3448020afe5def7cc7900b3bd730100d188822d535b4906b605f11a32ee45be0d184f88e933567f83abf677dc7f10302047c435bb500673065023100901b653a6131b949e3ff47a378a1661c6a07ffacfc140ee9344501afc130999f044e57a69a2443941383cde980af2022023052bc090d97a82009425d4d26f202e09ffdfa699d5753a257774d723ffc0c4a5a599c1ec058244f63b8ce53469a3f89070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307411b0c5f2a86ef1afc581e25c388f6fe948b3d5c3ab33c97762c9c3c69445ed26dfbc9301f44986d9408b7c17ef2323023100e357fa393e8c6a6198bb1ef4f84a38b4a007237cf89aba26425d83548fa969074822a680ca35621d2f145e39d20906170302047c435bb500673065023100cf2e65a0854ab6423bff30dba1122ba70491490fb0fa959930aec061487c48422b9bea2747292c4aa64b344ffc6eaacb02306cfdbae0ad84f94e26cc69ac83e2bbface030a709f188395e5122605b4a9d4f417390dd556c888f9a0842d5aff1321430302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305efdf0edfe18d468204602a21595b2e6bef9e723e8c4bad3fc4977a6e620a8d8ff324ac92980c39e00e205589b4bafd80230345bede47cd673973dcec489637fd65549e883ebb811810cceca14dd52968e8a59af4e6b596bd70350c68af8160902220302047c435bb5006630640230567b92f57f5554b572468e041884fd53d9b36756bf3fbd526e2130cadf2558c3d414d8969f30c7a5897dde9ff6d9478e0230797ef7a1eec286e9bdecd18bcc4f133a7b7b74a43d3e9d42b1957e2557dc7e4b572227922a339e7f5f4e7628122ad4260302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310090c974307426962a89c5ccb1a9b8fc31f7f1efbe3ded1eef7425b594da29f6cbc2d89a542ee0ca10f8c39e245367425902300c855b5367994b1e4e5b01ce8f11492454608f45ca171542c0402723d8ee4166eadf7412e3f87c1a9c13bd3f6eea81810302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100acedeba850deed204f94be6c673bbb58392b7fd47bb0dbfda6d8034f15dce55847ffbe0e893ebca306013a76061619a1023100c5ee50921524ca75fc46c863ba6bebe62da66ae87bce02d241dee626ae79345f1acb1ba9e747cac6ecec02566c4fa6850302047c435bb500683066023100ef577bb71b70867de2e7f2a5971349a4b72ea2ab8d2a5908519a8407d84983b60421fa851f9edb86f423c3b3181d2b48023100e2062791aa1394c37e04feff98530f152539c46795ba58e9fb101cca56a2623da92b662d24ff75ba1c14f2b216c0f4280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e1e574e31ab59da055aaf4c5fa63ea0c4f7aaeb335f485349b28316b4462b97ba1301221662cc4fc9e1094cebab4667a023078645f81cb766fef04b5a9d93f8a705377f7e2a61e7527642a29808a991190c1ca1c3d4e4364bf5f4817529c13c6a85f0302047c435bb50067306502301f007e8109b984dec2bcd890f608caf99ee1c3a23869509fcde613469b1950334e16aefeab6834228b4e006fcdadc742023100f0b39ae4b006bcaa03324bd6df21627c8a3f76fbce4836110779975ff6052b7d46e53400a5356a96fe33833a42d54c910302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300c0fef2eb7092204753a28951dc09fa12f068452d6b74bcc314193174252b249473015a011c657da4c9b8424d891c55702303bc3af7dfba42ea27ea45c4077e440816c4b802946668978a62ca6b63185f706c913f8ae66b0cab846f47d8c0af582bc0302047c435bb500683066023100884d4b5dfea61174f23c7090d016aff9df3f693bcc3bff8a190111561cc9a06f6fae234a1f927366cf243b0fb0a9a638023100deffc4969eed519eee00d747125101c9fc0231ea47f239d0639c27b6e681dd9d3e4730c7346921da1c2d0cfb04cb7ffe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c4b66f1d93584c2bcff4109d15ca6ac09e5fc0bddc8db71aaf09ebd62cdb6811231b9ceb98dfab6a13c58ea5639433ba023100a48fd44e9d21ded084c93508e14ff3a8966b71d2ba08e09aa1e5ba4b8770e99b0bd16656926760ca6942b297a94ed69d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d144074299da27c742c8be0a19e12942976b854a6fa7dc2dfda639545fce053d3824e416a468faa695500d90e556b1640231008f7da14c75eb33f3eb4b97e49c343888138479d3e7c9770a19c9565c95ffa5e09fac632020fe6a07558411c46869e39a0302047c435bb500673065023055533ae845255634e92425ae832475a63b9c705a88b2a4a96e2234fd46f4baea70b34239116d92f4826dc34e59c63c36023100f5d79b9a382360e47c09b6fe0981888ee6088e9ee122f8ecdd713310c6c8d85919a472e2b512a44ef45980c10599aeec0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302e91242637e2c24fa29713d129ef36744ba842bf87f6bd0d04bfa67e00684e1755b22adaa8bd7f2826fe4542d460eec9023061760f6534904115e4ce8844ed8fd615de4b784b1f0d55285b8c09e386c56e39b49d4860e4dade8d2f2de2f393ebf2380302047c435bb5006730650230181f497dbc9def49818c6320dff898c998f75918c4090dab96e78016c049ab2e3bb6f57dc5bed061589dcf000822243b0231009ad52100f2eb201235f367095ac75ab2375675221d632da65f6e2d611a799016181683edfc02e5793ecf12afa45c3cf00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d42b66a4a8e8d77984193f9b4957e882366bea456d5c0cce95dfbf4418e0f59c56a3f7f3c0436f785cce871eceec1e1602306eb8949fabae03559eb507464915d067d261356d62202fc164601d38e6a450e740e501a5cdc0e6d3181be5529c84761b0302047c435bb50067306502302ab4f0d407952b3b6fb8a601e96fa546c8fe089fb5b298668c2bd9c747f1734a52b6123d6cc0ffdff0a60bb667323aef023100b701acfb9fc86f20675d5c17f19aa4a80295abe3f0d222389afd9476ceb824e6e22db741db8a72e9a8abc0bca7b763cf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ad7263568c74855c9294fdd08e424fd9177aa6cd8fb85c1d0c53191c387c05addba104fa5025f9316bf0a799f1587728023055d6a4071a969c04163827c17ddbe9fe08c87d25acea97fb937777dd26355c04265a139e50b33a654bb82b496aebeda50302047c435bb50067306502301b6a83cf3a3e4645f66fb8d3551603b762b1ab944ef3439ec41eb397eac27e78e5f3275daa249fe065a1458486f8c7c9023100dbb0fe00dac5b0cb61ee11146dc55f8e341c2c7a95346639bbb3bc26613b7ca44629e65cbdffda20f50fe74018104d450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c249711a8386b35ccf32f0bfd87500e940a6955e063007a483bc812fddfbb14c88fa71546278934eb8797fc5bdf1263e02303cd05b14d2cf508ad0552394aa56dfa0b1f4efe78b0bc5f4617b3eae871b91bcbd01749edd66079820c16d1222bffd720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b3808a14c9321d97820f276aa63bd2436c5c6ecd1c7436ff17d9c780f99e8887403994289e89b959fe1f6424ac2728b3023054cb4e9467694976a82259331e16af81c1714a4ae9f0ff95c8864f3b1d314c79df4f1c5ad7ca14b75db1055d56a509480302047c435bb50067306502307655efddb1625d7018d58094aa639400be062eddc67333d6cddcb1dd368b7a61b1ccf2d9c1a4110288fa0b0c83cdb48f023100f5d54cff53e9773605b1480fb4c5ba363d8f313adda9016fe8f70a2fbbdc54f6db984e15316ac7e1ccdd426bd4d5a8670302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023016c23e31c7c328a011f66a9356a6ac072abc2c9896b44f202db52370eb04dbf3415ec9a233ca38ffc9a7d631d4d31b8b023100df4e4e97c2d014d69fd86c56313bdc7d3649613baca5fd5b36ece02a22c312284fd33422ad6723f7904ab0955f71cab20302047c435bb500663064023036d3dd89b98f2055bd1a717b02b8d1492ce0a7e363c2364d2beab4ad7f5490d84dac8e054866f73aa1845425be94d12a023055f247415aa5a8be5e3d93c8e5cf4397ec4756263c358a13f1699f723f5102733f7432d38d4aeb4396461dd1dcc363d00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302e6be276f50587899f91ae163e78c20a0027ba07ce8834a31666d1435a09a5429d063ae85b52c4ef34a28763f1d0821b023005ccfc2db8c9418a7589f2edee143f6cf1b7ffb1da6bd406595155479013873139468ea0837dcad44c6252531d2741760302047c435bb500673065023017f00e3693ae72207229d13a0bff74a4b57cc5af373c1b02be0fa9366184dee3b9c2731c3ec8511608c9355128203da3023100fce624ff34e42a58083bb9d5ecfbfb60aac5393fdc30abdf9d8247f33fbfb358e8614483e65f0b61b782b62c85ec8dee0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304edb3a3e24b9240829a9de0feb9d194b9b6c20036b24b54c46a65ee6baec96cd4e45ee794f26f29e7958ea87664ff185023100976b0cb1eb4cb2ab0dd9fcbef60058e8a054c2a135455fbce00df8a94b11a5631eef850e751773df31f3b0e3528fc3700302047c435bb50066306402304dc7f5aa25acaae2d4115b394019920c9a03223ccad4718cd87692ca15bc5abec01f35e08873cb53c7c672fd3b823743023051919ed2cd40ad7734d7fdcf718de5aa697b29931b8fd1d5dcb80b00c479818fb5749ec0c1f82f3189accc7ad3bc38730302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023062bbcd535afad8238544f2b4489c016c2e985a4c9ef438134d25565f6ee4633025cd918a89b01f2fefde5f97218c65010230645034ef61d79abb0225d101656610492ed5c680d1d0e90cc683f188cb7803bf0a993869087db9f9180f29d4bde5d2760302047c435bb500673065023047fa057b976917c63aaf85872504f9ac7ef7ae32a4660a9227acf62776a89fddda9362690618a8f88aeed0ae76d91845023100ebfac08e62574d022ab9c869614097efe51aa28bc8c7ab101f0855878fada2c2d7260eb716317bf7c04de52db6b330b30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310085e85ad81657c66cf1ac9141aa834ed3b556fd134d9f5c7d42dea46fe0407aa87ce4dd9c09fb2cdd242abd4c9d5002460230557881e98b8de829edb65cc5402374bdf7a8fe12f0242015543510deed2e109706ce9b0e1645fb2f1a131e0d45be8cb70302047c435bb500673065023017f939329efcc188be748b1f35dcc01918192f041ddc5e716b6dfaf1fb6fedf3f9fc44820889d059cc9893b47ecf379f023100adbb29ac7739e87c36fa6b4ce460c77792e9460505679765b555798145577ad42fe4f5097de72ad3b69f114fddbd43820302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305b6351f769668a36b2b175e08f160536131a01ea928f035bbe2013c0ba581fbd86576aceef29d09b345de0aa32273514023100cee1173b35049e7440d057f68e28ece39bc650a5960d584f1096ecfab145ce465c12d48954935f3457435ca977ab9af90302047c435bb500673065023100c2b5c7f57e5b6911767b7cffed96021a413ddcd03bb7ab2ae9ad101c19f93e0b527f38e0293dd06c3c09da492778877102302fe1c7bface895d8d70b1df7ab64fa96b05cb19920585c432b20753114625b597b1c51bfcc3af75f61a3128806ffc8790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023076ecdb6a43b46d509f8eb2783a03ef0ab18075a15c5484c8e440231543fccf6f486b88c9280696ceb172331f612e0953023019dfbf7927954e6b88216444b96fa811131c3f318783e11a9afd0771257c304171e9fc56622f6c404dfb2808955a01260302047c435bb500673065023100c1ae50ca486c11756aff8e892e81d5a7720d1cbf91e44714d06c6ce4987a195bb9f1d3b01b4738ed657ddab7ab1395f202305bd5c4bdaab7dca56cbf114d46e3ef3014afb7dc425ccbf036f6c9e6ee320aa473e8f68f9bdca721ac863b27461267ee0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023038dbf66f62b32fb2984fedcfac15a3175374c3b72faae3d873cbf843b361154e46e160b2cfb8ca1ade7cf6d88e7dbdc2023068208548fc02f40a85c565a784a0e001f4da2a713bd0307c926417bd05cb0d303d365cf789532e27cc828e530f09f44d0302047c435bb500683066023100b05690ef82b356d80f66f8ae76f16fb7c1f163cfc0f779dea51c57a54dd6a6d2c905ebaf960f81d68aefd72b72bf8b23023100dacab3da60cd0a4ab68212f9dbe38f44d9d460443f81810245b8444597fe62ffa10f174b8a5558d3fa8b6797a45730890302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008ac9628259a0966feeda4a8520096e8f58b9a7762b7094f82714f94c3ecdb02c1ea8ed8853f096b38050793f05d094830230290b6ce05deedbcdcc56320040e647ed7a7f82d82be12e9a0ef836a0163c7ee0473d18ed7f7898c76c4bf0862f6a63b30302047c435bb50067306502306c299c37445289af6781aca4a781fee1305455ff304aeba8eb63f79aaaa9912900e4e3f827be38d5d0501eeb5e80b8e6023100c7babe04a66c49d34895c18b351e358afeca972340d344089bb01bf333dc3671fe57388ca0fa41c27e814fb06776d2f00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023050292f87f1ce76bf7ae2a92e1da947d12a82d68f5ce5eedd07a420968dfa297c1f6cbd94f9b42ec3b02718cec2e48526023003d777c208b98af0a918ac03ede41bb1ac5d095656c90b3dda0d5c1412859ff26f2c26ddb6c47efad54c891750fde06e0302047c435bb500683066023100a7c11e430861ffda48e197ff15b3c5665d064ad604910542a12b96818d816aa1b605123e9465b755b32828920c13c54f023100cb708e94eb84349155c926048be9055c81d046e5eb34a4f23505b13a0bdae0ee9ac154c198e2c95bd2bd51a2e8e0fce10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230018f65123a3ea5721c014e6ccabc9000f542e36861ab6de9a24004d17d0ea72021062d9d6927ec18a5d43e641b0d2fd80231009bd1160bb0a2ed3a6e6f16d96521c9932e57249f13fa2daac3ba93c8854b2fe91dd2b884cebb7c3ffb0ea4229048c1540302047c435bb500673065023100c8fc024a49079cdcf2ffa7af6794ef8d730d3d86cd5e07f82fc81fe2f5ddc511cebf79018cc57bc971d306028a07a71e02306d23a1207f9f9f99504efc825509a6b77453e61314d9279c73643c7624075b666346bcab0e291a44182247c0887474780302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023031b263aff74585ecb32962b8211083065d34a78013d556ba9d2ab9d83df86c3406bdf574dd599e5c8eb3c9fa35f39da8023100e76b8b8862ef8ca21758e5ef5436f88b336fd359bd817745d8f24a0c2620705aaf1f6920a18a37c73a711ca41b4d34980302047c435bb500673065023100c6e17373dedd08b38f970151232f6402511563152271537b0f37e7850c04a1941d9077aa987451447a97f2739231f094023065dd092346b3e19c308f991d0ce4ad10b62cea5a4aa1cb4df50db962eb754c21d0e99c0137308a2c4359feb7d9f46abb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023015e8a59d97898aa1a08793da9ab1005eca667648974bae86bddcb02fcfab955493cc20b38034e4ae87d5912e86a6299d023100816e63d6ea727d900c02ab6f223d042ccb91d3ef0ba036007a848f6580eb50292b310c6cd3039531c10c102002af23030302047c435bb500673065023100e9d46439cb4a1ca97bb59f23283fcdf6762cc56e397cb908cf359fbd05577d0fab81cbe2c4711d3563fba0185cd8a60002302b544c03de04a3c84ad6b08309a392d84c15759d07732cc676691f7516dcfa38995ed503c54bb05831e2323b2be7afd70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023023c82d3c7eb956aa4be0722372a7b176337b3db1ef5cd41427b290314692f319725503834336be274106c33e49afc0e6023030b900921235a17b40a72d147c6e6da6fb6301504e87cb08e58c4f1ed8ecdb505f7ebbd920cb2d95c6408f8f52fa649a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301557ec98a6b01f5032c84f5d8e9283864f8f1a1a54eab390996e541373fd8729cea3f6b301abc21d1bb68a0c01865042023100ba15c110390f202f4554c5ec4963aedfb7872bcfdb94c847e1dba5ae2cd50c743849c41dcc0c84e2a499008d09bb9d540302047c435bb500663064023052c597f7eee629a6029402a5a5655deb74d0b66e53128a724c81805331e316cfc0127942d1cc178ff0f9e3d6bfe2e5e4023023961eb47a1d98aa0f247c5b683b8acf82bfea3644c0c2de8edcbe4f849e5728e3159a905e44532b4f92011a06fea8970302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230609623c5a337919d34980c61fca9242acb7c49596e3b64c64c34a90db6bedd7b613bfb09393ba4a7f13cf6e22c8b1cb8023100f3766d9c61c01928a6836bd75d9b6049f0f532a2e44c6cfbc8e5611b19fd92f69fa6b54093e11eb8a331f486c8bc737c0302047c435bb500673065023100e9ac0503df4d2243530f6cd029a21691d96145898f331ac824b1744d4f5152b7c81f70f6970571e93b184990b3220b4402306d49ced56f9d9264253bd6b2d5e8e3a9c36d2727115c2288276cb871609c031f3821ef568f36b38707cf899e024653280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b7a9ca3876ab95883a8ad584f61c21b3606f505b970dde85d31467cf9b4dc1687ad7eeb3981d0867f18934fd4215a55e023100d12c308b06346c12fa781fe6d141bd285fdb853e6d622fddcdf9bc3da504af9313cddd445b230ba4e7cb09ead14683260302047c435bb500673065023100b74627247bceede27d08751052418e252e71b7f1c189c245d098cc372484f7b6c7a0205e3f8fcc4c1f1f3eb2ab6c18ee0230736df4e7e386bf4697aca8024a5b510d8d73cc5c6c641f86a31c4577667c7b31948d345a3bd52472a927ff995b7f3f9e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302d9309f8bcfc1027dfe852ad0306ca134615bdbef777a5c6e9686a684ad7ad7854265f5f398ab003ea0871b4d04409ad023100e144481619b74da2eb26666070201b1adc033cac7dbcd1675e4984308e041756ecf6bffd32f861cfa4334e22e7eae9da0302047c435bb50067306502300ad11b85f7914650f1f63cc3fb87d2549497cd6acd8eb4d12f416fab6175315bbc2c9e4c8f8a13866ffbefe9b5fcaf59023100ce8abbcba9f525d0952d5665f3becec5999fed6b167ac7b2c227ade8aa7d30f5bd8a90fea8e61dfd6768f4b523bb694a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e376cd75a5dbf20897d905aa36c61a0a00892265f2b78343d1dcec7469e0057633c5969e815097ac6f8830295022e821023100c5cff71042c741ec258b4231f1fb5211cf579b32738eab1b1292e4bc0136fcb171b8ca4e1308b996f414b05324701a850302047c435bb500683066023100b50acd9962f1e839af1000b12df1e2cdffc29e451dd9222820fda13bba92f3ffdb1270e670ad28332f904c40ce324a1d023100acebe802b6c5755d7ff7c44b2fef91edf412e4ee1c4315b72ea2a9e64821b26f0753d4ac4f3d6faabbd8512d9782fb380302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230159d4a4d5f1ba5a30a113cfe2fab4e9d26d6f9a7afe419b8aad609478403e0cf09be54e4ef15927b2de65a6209d0c7ad02307a55ae1ea99a57c5c277a6c7f6117c9894e1eb7aa798f9ae3f0af3835b15f11290cc12a1bd09cf33e9a46c9e1c71b37a0302047c435bb50067306502305abcf1b260eda021eaf766c9013a06994143b3787588566ac657cf26bde192f8cefb8b9fca8377569cabc8cd893368e4023100ff63d9772263409997d4c81c03193a12e1106e02f187516c136484fea3b5df42ca67361a17be429f6999d478e440d4030302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302eb17864f2bf863cb1091461dcfeb6940f17863fb30ed16050268600933c1a77c592063ecffcae407126c299018d1be902306acff0240ec89595fdf65c5a5349f1ebc95fc64f181d041d268354e33c9543a9dbb21521d0ba6e25d6706a60f986442a0302047c435bb500673065023037dbc94ab04a2fd4f500011a3679fcd9f0845298b218de4a3fe63b4b310f3bc68eadb86f70c5e2d6a3ebeeb1e6ac6354023100fd7089169090fcaf1273c762ad90d138d60a6ccb36c5139cac43e79d05c91d5ab3d5c0a6c66e31aa857ce04dacf6f5d60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e142fb78e77c2afdd8b82f929c9e0a114896adc58abfea6093ef28842c03442cf9c78d17f3bf5e89995169c22f57d8b5023100df164c84decb49d16ca8abaa73942321fecedb4dc5b9c747b78c5547eb4d0b9ca1e385d72a90cecfeba22a87888c3ab10302047c435bb5006630640230257498d4034e7dc8adee82c37caf8726f093b6dde5969bd95e9cd641300ab48479e2a8c5cc3de31b06eeb149152dbbca023011c827c9ce2c3ecbae95316f2df62cd08b4b8f3df82ceb53ecbb59a09e3f9aa815e7e209433ce14e7a0f149def52c6830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023033755905cf0a51f5e592cd3c36536d3153fec775cd35908a03ee2dca42e2d32ec426314d88e0becf946646c9e3a8557802304f8e485cc8d1e9ebd4995d1eca6730623e5abaee9b8494b2b463302cff7af2594707a3f254102b227e0a549a09ec66760302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100832224731a58c7ebce0af3d690bccf9ef9878df53e58ac05651d31edd74685359501f0236e7e44021d3a5a3ae015bed002302945abf2c51618523126870576e291f7e972180e625432a46cfc31b14ee1319a5eb8b6af530e15f60178af8bd4b385d40302047c435bb500663064023061d89324cbbb9b2105f6f6c24f430c1b50104445959457de86684e868e01eb13f591d50a1f37b8915486373e943ad9530230637b54e21b7f541922ac5a6f009f2aeb9cb6b7c40bed3119870623b9d0d82a813adea9ba3da531615fc2200575bd5a240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100806282dc2f1f6639d594773ee633352fe2a393dc0cac1d3e81ace2e344b3a23c129a22d7fe7a4ca45f71c978eb309e79023038abbd19126bc336bebc63783e8e839e33a8fd677b0b6b1a0b3946466221aeb5ab66894b2c8d779e83e42d7335a932880302047c435bb5006630640230685a6d04412c7b454193e3b0d5688edb078d3c7b57a8849f5fc7bfd6ad9fc6436a394775a959afa2344536e03470165502303eb59401c5e88a61e7ac7a2e1378054bfbba683ac3194d60f9169dc365cbdd99b8d3c85e165bf88110b659794c04815b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ab048f0b29db9f2b5cc38b2f0fdcef740135730ba4d848d7ee4ba41277fcec1cb99b29585536829e1d3ceb445ece2b66023027050680e23a92217bfea93f4a328c0e0c4b2ab10cb465bf658fcf3717964ac6d0e0d9c4ec9d881686780ebd6657c8cc0302047c435bb500683066023100edffb0c24c353220777dc979c8a586d7d739be9feeadf263140a65a90174579096dfa12924e9bcdd2c82e01b205a7242023100dcf36c4c9670d7b45271bac028c0b0748f68a1719b4b2b05d95398f370317cbad87063204e72724527cc1d5c2f649ee30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303b6072b0cf98aac3bc96080da4acf9149ec2bbf28ff00db566034ec96f7f239f9ebd59588ab1ac39b4573dff9f615dd802300c016b58f3e772ee8f52293278f696fcd54f6acdcd0a854bc4537098b203930f36520691520be1876343a0e3b0a9917a0302047c435bb50068306602310092ce3a7e1647b87f8f387ecda9bcbf959beba2fa247c5f479042b1e1f7d3d699e8fbc3b8b7382c4a68ee286811e943fe02310080ee9a20afe38c65ca342ea3bf8ab0a058056a401ffe7adc7956be73e53a8bbf2a9fcf7b18910290b04e8709c5b8d1530302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023037f3693fba1657bdaaf346be99ed8cbed9d429f132957c2fb4090af2b4e5643d80c727342c05c85fee23b4b7de32176e023100c2b205e6bbfbfbacbb1f976f09bc867020cac65fbcd50ff3d9330c673a8bccf344bcbe85ef130f2fbabc77ce07c1b52d0302047c435bb500673065023100ebd7b1bde4cafa2df7326623fb20349e58c15c56ff30c0324b03befbb0997b3777a37389466dab26c072b57b1241a35102303340ae64821b458c7b4da84bfbaa3a36d6bf4ffef344e389434d0f3b748c4368563d22b06af54a0fb303592d71f5a7b90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a2717d8fc296f5d1781ece255d45d22a72d54f5dec86a1f2ad90ffa59da87cf200076a55ee4b6f27cd09c44387caefc70231009dbfcde85a02611b56b3ee6b517207bc6ec727b181e754cf1475df66791eddb2217fbd7228185da6e81b7aeecdfdf70a0302047c435bb50066306402306c0d84ed67cd2d3479fb64c78e718ed1f4b5d5cb0148f3db1c80138376a6abdc063de1b3bc62458aee815e1dd0afcfa702305f12e2f1a0fe52a5e4bd5eb2da7524c56194066e10ff081f470760c75d774f0e7152ab380579110f691b3209e80e48090302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230388c05a74f6adacc8c3d308088c8c9fb23f1e6e892f52c1d4788044cfc33ecb178cfb626e3e5febd198d31fd622473d0023100b374f153ed155152deb4cc0f8c3a3240aa7653667c7bb49d39f94b0dd0879ffe6e019323bb749a475b0a026ab24705e60302047c435bb500673065023100a8ec58970566758c9a62b36582e5edb64fcb44ea2506898cc12bf403e3738b41c63deaf7a6300a106066015e284fcd3602300c6216b160989082ca8f552efa645dd3ab9c14248687a5a3c169d059fdc80179b02a5ff0ee1ed693b3ae02d26ceb5eef0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c3bd91ad291b4b45bba6bf8caafb1c48e891c2347f0b3d183bcdd24a88d1b00982bf3f40fe2f4c613b0e973bd2ddd54c02300d173a57b1d40aba6d36ba8ad0a0e483cc8a03e1b192936fb0861402de8230d9d885dd29cba5c41ea82183b0e6b34f560302047c435bb50066306402307a15e2487154db7f1c068f542af49f06260d1ad0103359f65f8f48d2845f1c73a44c1744eb007d79fdb0bf7bc4d1604d023050974436c16b20f209184bc811b6b552082e20194aea3f74f9a0a14f919fc43494c7dcbbfd5c905e7363e9b7cf1b9e070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307a8af64a4be9372e9be75d07df3d5e036e61496c66e16398c38810ac6d441dc689479e6df60accf9ca1af54875518cb9023100946cf864d6bfbbc08fc5d9680fbf39e54f17d64839c28a7b4f43f6925219ed2540c9e7f1ff1a40d4cee6161379b9b0440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310080a54d020f62c04b33e2e92a8168a1eaac267e7fd8381aafa54551fb67ef9180cf12e64be36d9ead84fa5e15578b0cef023100e60a54c68d8c10c626bcf002585360d62bfb0967e2f04c711b1acac5a13a05a737063078703c5e822f9820ef9f0637760302047c435bb500673065023020a40d6627601dee9bdf8a404a92f62e95004d1555075241100890b5391599422d6f83a80de9345e258a776ce619ceb7023100c95031d87c02d4b22bdbc6a8de9b23573eb6d7fec96dc0c73d6bca98dc994bc496d3b2745c45c4b58d219c7b9e4bf57b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310082ecf9b5b1f4584ca31db10f3354c10dec420051d596c91e4bef7dc44e04e74a07187711cc9856a16d4b93a108730bbf023036459b8e516248c316169422d1659fda13e860254cf05e31d68694e12f0b5c69b6aff07f5a2d3e0bfd43cb83aa5581dd0302047c435bb500673065023100f0ff7326367c9ff6ff32d9f5938a0da755f4dee92d769a9f0a7db0db8e4c177a24206622bcd630bba02da9c41ccca77002300532a26e9a96d2c4e4b4f28b72c82d2979f287ba1adfc6080786e924bc9bc4064332feaeb172798208ac216de5fdc8a90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100db443c16a2baf2e9661c79fc83465b063eba35b66abbc3f4a8498dacfcf40abcbd8a6aa5f96d396cc9f09377c655ad6002306393f7aebed809ba71d55237dae1e6c29e7175e1d22dd5cb4878be983b599c1b0a53bc3533d206661f7c6dc01eb8845b0302047c435bb500663064023000b4eae4ebb66f4c2054e4709f8bd56563d6be845bd01dcb09bc62a6128e966b5bd56dba7c65432241b55bde9d5562730230274059097421da2fc9f55a06894a4342da758ad16cad0bf1c2f93b392b7cbece279d16845d52c178eb500141c0b0031b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100815953fe009712b661201f56983efb488319c91c7a5a9b74e18944489d8be2b8794df13303409d604afa3487a0149bb8023100f35279af42df625b567f72675782897c9561271a32a67208677b88751cc7e05d628ddc1d39c8ddfedd82b2b103b24f640302047c435bb50066306402301780a08086395daf41bae1ebed01e4c9dbcfaa09c16b1eca4b59dc81edca188a2d15efc13973a15f31280f2c68a9cb7302301d8157b168d8bfa79aaa8f9a34a282e78c3c15308786b42e6f81eb3d6d07ac41ec05503e505ba29ee45ff2570b922c1e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300da5ece7e06063e255609a025280db90be7810a170754223bc4b3493d547a60cdbd480963d23f54a0d2ee7e6e5f1d54f023100e29a8d77809dedda5f97b20515fd43e1725313dd28e45a138d321afc9be4ab4225d349a4d418def125e255a82579c44d0302047c435bb500683066023100f609d9764df3e9cbacaad3d21ff687284e0d670a6f260d5cc70861fe716867877678960ce9aa5ec15f91bc36e79a9b26023100e15eb28de35adf3db2d0ece360a7e9ea60fd9e456b91772453bf7ff32925a7bd4dd04a4da46175a964a5da81da73d1b30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100df3df31de7e001b14171dcda3e46de9213f101cc5aa7970d97f4c2cd82de742457d080535218e2d09e947e182edadacc02306053db1d4c3372f2ec337ba6582c86792613277f0ef2452a58ee53d8c6bb2aa071ce8ad6160740cd304356e81bcffd830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023054341bddc396e6f538b278b13712bd549a1fd4860d7f6b5e295d6fbdd677193cf6b73b9268512d2611b51bac1b9af6f8023019e52c0a900de1292f2ae5c920fcbb2f453b1ef75c8970f6fca1d4aab909024bb1a30010ab6fe5c45f49391cd35518470302047c435bb500673065023028e7b8c502b74d011daf8106f72e97f9ffd1cd711a26b05106ef6fa817d4c63a23b55ffc1bd0e0cca9c913709ba72d90023100f1dd003434fac06ca942cc5fc061febf6f1b1d1300f4a4cd87a4651d6eb838a8252bdbf4f2db35fd90a53afd4a50c0c00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100edac7a41b5a6ec7dcfec48999e2b6d0eaae814e47b0d8dedaf6bb9680648645f507742815218f97055498075d8cfe350023100ad38f7d22a1415d2aa81771064fea25d23866a7093d6614e9f9210744e845200e78ab86cf56e8b48df219419b1b1815a0302047c435bb50067306502305f03d006dd30ae9a9e1ddd46dc7e676419a6597bc61871473a891e2c8806fcdf9840fe1e7d199d4bcf4f4920009ee23d023100ebf6a4882c3d7294d437eacfeb9ee1a270545df84cb83558e3b9303323072982608348b30e784a5120dc9f3543c23e2a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023031cd031acacb340b4fda5c790753426347c69031c81d1600d71bd6d80ab1eea260e29ea34827597b857eb833c40d726e02303f67866e790a9c3a48e9fcec12f71ada5023debc25874be898d22a54ce076bf90665169aafb70db686590f3f723418270302047c435bb5006730650230371dc8827d5598bdffe92b8d4f67365f19a922e72b7b841f2d1b8956f6412fe59e8221553887238fb12c0b238469bb65023100b151ddf3651587631c0915978e2e0d6cb2d4f87fe2eadc1a2838166ec0b94505c77ea857a0d7f88da478bdaca906656e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100946f83c2349a056b13c3723777aeb4afb5cd3751606325aeee1c93aec6a91bb3979dbeda75240879411bb658ffb29d300230063dff8c243a8768e50d17dbd92a27413717153fab9b346606d6650c00d8b0250437e380755954c8f624b5ffcf90f6bf0302047c435bb500673065023075ad352f68e44398eca26a61fa28f4e88550e96a5c1a894755d34d4f3537eae9674d9c990aea98035454f2edeca4a429023100c0082dc25a2ba590a6d770a8d1fac650f247fa627124e317b65727005f53445530a8cb90e8f1246df6d88b005fd674090302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307402d9aba5880fc2c2ddb10ad739217fc21370cfd3138e408dcacbd78b3bea1776cfac74a8917156c80735a9d69da0f20231008791dbe58ec54d911b2ac2e8ab193643f91b549b5d85d54b97b05e61f4e18248ede63c9d4459258fc18b53a6f57860070302047c435bb50067306502300469504f7d9ffb32e6c91dcb3e0e9bea5bea8e9d8ece780b952614dfed113909c80c1e1ffee52e99ff762ab8803a48a3023100aa040547a318930cd092dea193a5be3636f71c9cfa5b34effbfdd080e610733c3ae3874573accfa5ee78d02d9943a1fe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023038fee449ea44cb523e1b28d09844d19b84d80b027cc4ced2c1cfe4099ebd07fe4eb395c12aab9befe01161c3513c48ad02303f0e5ddc3646f5a00ccac3c3549313d603b1a5ece044ac20b5615d9286474e92a3b999549cb8dbaaeffa6cd0aea0f17e0302047c435bb500673065023068a6ce65e526b4248340a0fc77def5cab5a3afe2616878358bc13307b427d61b928571647ee100e76a90d07c8540cea2023100d0c16a3d832eea3fe2589444a79ca78c77c9ca67dc9cf29724ebc89346c0239d68483c7149d6ea6745201b4947772bde0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f8e95d8df8792e25659347af0d87eb8bf2a44d725e99d6803b005ef4f6a33055e38553fa9c971092179aa167f58aa785023100d040e49f0741d57ace1633ece30609ab5a2315973655cec5316a251c58fab6af4a4985d0f1c5c65830e5fd9b721e14880302047c435bb50066306402301c22da8fccf66f468b1ae53e32115bb86e2effc47b0ad0460203010234f6b1c847dcd9384169ce76f5e5422b3a63d7a402305bda9f2ef6bbb71f6767741578ab9fbedc49eb6c6def260ef12e05a6ec0b4881f9888f50c0ae6eda0bf23bb58df2b56d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a2aae6093bc3a2053875f881eea9b01ee8847881ee76cadd2f51ade7af13d64ed4be85f106c91eab2f0d69c3396c2a0c023100858de521a1261cfafc353a08890362662df06090522563b7c4263017852b7ff7127ba9645c8c63aed9eeb9c704306dd40302047c435bb5006730650230495cdb53b3b78fffc3382082cb10e1f071bb8db1320a68b1f6b04b9bb4cd33c1815a29cc512fcdef2017a33d4bde2b1f023100ccff15ed9d697100d56ed4924981879a6967e59f5153e88c6744f8acfab5b50b471c72685d954a31dd4c8bfe32a4ccd30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307c994a364da404973ebfaec89c5cf0709ea66af2d51386472c26bf641c373ced168b62ef270e54554969ab002440babb02302889f5495df6acb7c7d8e8ddbc6abc6880ef50800bfa3e8b4791aba93596bbb1022af3225129a8825c8b9f2fbe5c3fe60302047c435bb500673065023100ef2de0ffc344f64349aee635137852f1c493415bb77de82485282ca43d4bf45d89037fb39fa0346f7e1d8e6f87ac2a80023026c2477b85097e2a4fa5cd5f3501d1e43ea288db65d8ca70d7262c1df24291b7a1b5a2878fd54154ec91d8392f7469300302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c3f578b85c49d4c1afbef1de4dbe764ae87a4189650bfbf3c1cd023f065327f00ca681e8bf211227a9b73588ab3ce06502304cde5a67d178536e998c14cb8d736e664566ea2145fc51e2fa24d66bf703dcbf684a6092e7c2c53c801682a472e5a2610302047c435bb500683066023100f298ac75c95533d5a15f28265f6fe05cc81d54ea287905a6069583f476498ffde1b23f4f30579a71bf7ca47779078d2c02310086badb1707ec4ef8579e6f13c206bf3ad54b284c6ff2b7f1f98bedf7f7172f7486610bb5f584c166f5856b5a88e2c3820302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306dcb8a9aae218ffeeff9b45038a156b7172429c556dee8578afe054d89cc14b077d7888448c884ded1b5ad1506e6f84d023100fb405b11ea5d0e7fd4f5228407e56f43e04d9d97dc6bebb8b1fca951c022822f13f4d82dc716cb5b59288826edc873a10302047c435bb500683066023100f58bf32d84691b260e5b5f97939bfcf7e939547981abb79c4647be86014ce444085a9c14b67bbf830943666f1da66a5e02310097b3208aa4f5ba50bd6a3106b3dc500da0e262887252cd47cb89c257a0b1ab66999057849cbfee85228b0338022451580302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023069a1cb5373479e898c84f35a0a09a8a0a4ca716bd49374453d1bd0826610aa23deec392d608a6264aeceed35574b4b5602304d470af76f54647e5d1afda53e8311499cf8066dfd8b712c6e0f77acd431d9260ceb46150de0b039789a0ae28b5c82290302047c435bb5006630640230111973a2524614fe26822e53b3b53815faec00066336cde93f9b878d964ea357ef12a818de174fb71cced75d2dfbda2902307ce021e489e93d3751c003ce74d6060e29137998fd79d7e6e6104aeb9086f10cf9ffe0f36ccc2d166222a3ffb64380590302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230497013339f4baee719f65f1f9837b50a40329c50259e975b2fe73f86288f98962c28c0b004b9de4aab14f61a996e527302306f25a6c0c369e416053f267dedebd35a42653fc1af62d574468b009defe6717557eeaa8c71ab18023bd97138464931370302047c435bb500683066023100b3417d26308da7106b287ecbc9cc60744552d0a501c1092a9a0cd53b2a5dede048f52b2cd2772e3488f3849fbdb0365b023100a18a72711da7f95e1653330e12e30aba6c27644a3375c60cf69be84613288d1ed80b9793f4ae2080485a786978c783a00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a8f530973c861e3cccdfd302d772ed3fac1a7827f953a2601022aff4053873a0631dec2dbd27bd358f30c8eb014468ce023100b33bad3732edf90176b1b7ea73a8a77572eab81042fe6f1dd672bc1d75909ffbe7feee418f5788a6c304b6b7a0b5de0a0302047c435bb500683066023100f61d19a70e1cf9911b3d575121055fc4a0a908a50fbfb7cdf432b9c50d7126cda4e144050b148d3411777ebdecc1483f023100bb7223ef5ce22f8dc25b83c015e7239bc501040083e3520c624ba8ed591506ae68d8e3584563154d5b11da256e2920cc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fc9aa902983381871b2e8ed032792340338471aaf4151eed5b1072f35b29eefa393ac4ee73a74946d954f55acae8f8fb02300b201bec77a2db9c375db87646f0d85744f60a48e373e6e067b18391d63d79f52d802d09c4268598142e7a5535399f5e0302047c435bb50067306502303c6adb79fad53791fbabb6ba2490b1f3f644fed9cbdf79339ffe3526514028b9cf3bc88a5ac40bd8a58b539942d71a31023100aaf2a9166c407e677d87ed10608764fe81e9a94959e6a4e92b40270f7d9e302d7646a7cfa22bc0069aab6901ddd9f8f70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b7ad95e53775419864a6afe0074e9aae09c910594bd6a0af2e469539626492f4cfccdeba3cbafb431f5eabd56acb8ac2023100aa00a6ca67f6007ca07642fd675e38ff7b67afc9acf28ae9b494be3421057df969be024c20404a4249c68f58503173760302047c435bb500673065023100eecddf2c0e7d7629087011d1baf40348a6a9c5bbb2443f74e183ac10b97c051bf61b8137c993f7d3f9404bad526ca6fd02305998299632794c0aa77d61348d50929af62bc472a2f5ecd7732e4566c6393fd4b6e5847b7783dc6ab8e2a0a96826f9420302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023031b628dc0396e1e4e801ac83731c912b82217124ed44b9ecee47712be19a8458d48e9ec5afc8e09bbcd214a23a9e03f8023100a16ccd921bb95cac4f00bdd5d957a449ffa1451dff9a225bc8f7953a7145f2fef016248aaa2a5f8a71085421b7d759fb0302047c435bb500673065023100e25991e6af5591535b0074a20c5992b3375478446cce6a6828404bfa16cce7f7447856d1871b3288e82d4677a5309b8e0230282c37991917b1857253a592991a96bd8f437ffe28b2deec1ab12032278fce20494787e5ca8291134d60e2f38c8794f10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c27256f10c06f64eae1ea9732702f8c59982afbcf6b439875228e58cc7b8bcb1c8fad318ebfdd1e8bef2ed8eac4535c0023100b166bfb28534cc6b4b5c48fc93db5a16a8ae216c513fc720ed016850d1c3031faa8a23f7c70d2fbbef255d0c3a4a2f9b0302047c435bb50067306502307238adf59bc8c5767c19935a26955e12478310fee4802218e82d026bbe81282569757bf1fbf71d102b02daff1e94a06b023100d3451aad9cfcd27683747769d10a6f4a25de2d5cd2654ff288058550ff149dfa87912e8331a483ff0c5347772edb90ca0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008105c25becc16d3bd257a2e119d6a3c4c768c2954554af1c8811dfbc4381acdb562be6ca44d7e519cecca9db5a96c6ec023100cb01dfbf3b0ba3ddd69d95e2bf63f11d57c2342085e927667e00fc83e59e12ff066a65a341e69df21c70c241b72b96600302047c435bb500683066023100848470cb0efc107ae1df34257caab82cc51d57e1743cfaa93f6709adbe33556ae3d6d763f599452ba4524e1608e28eaf023100acf65b72922139a131fef8064111bef440a6f80fcac6c8201c0614ead72d339f37fd8ed0e2bf554e8407a663d1d5c2060302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023004064de8633a1dc3f450b71ead92df18b4173dc606ca6d964310fab9430ced5f5e4297759e8843ddd29e22786bffbcc4023100e52e05bd0541f65fec2d3d2e752cc6654a5fd2c459dce19fdb543f20e10acef0d140cfa730746c3a6da0d988ae9100cb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f7155c3cf517bdacaf055ab3e60e310055cea711ca63d399e436f8c5d3e51ed6b2e330a75d9f01e7e31cfa90dc04d9f402300a1f412b3646f6ee2ec9be23333144b45172c9a2b41ae35b4002eaaca3f19be6a6a9b63dc9374c0844132c960a1b9b420302047c435bb500673065023023d2b5ebf7d49e47b5070e1092c9934cb856ace1e5cab6e42fea6b28b6d7716a6dfe5e14b5cb66ee6a38067dd499593d023100f241a3d624015771462dcf0a2ed05a75d212d5e6606142a6267ffcb3826e69755f7e8d85c8d3ffb51bdef6d0d83ba0d40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310089d56898ebfa72696eb95415094a55377aa875a2af19f166d47a485c9005d61bd1c3a2e6338756cc34954136e9295886023010006bb5e5770d9ffeadc250643cad930afd02e3941197dfaf5a201c004056a6905975f87d09bccd555a80c347f414060302047c435bb50067306502301cbaed035ce7164945f91ef7e22751f2ccfaf15ecee09f464727775c4e27b0b9f6cafc3b9bd9dd8da84cc40b3959c296023100dc73ce6f6807a84dc18511edcdf209ff401896ea398677409b085d4652c84284f7d13efb03a0dae9856891be9fa95d740302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023007d8a063591af8cfad72f25bf0996a99575e9761dd8fe958948819a1991a9aedee5fb30b588de2dbf641cb890d6ea6f9023100eecaf8d6a054c687bef55cfaf5933c0bc4be6dfc428c6a6b859abce0515b5551fd4ccc6fcdcbc1f7323198b47c9673170302047c435bb500673065023100f113b8785825ead9f8495a8c09b3ced659c5a9d50919afe1d5418955220706d675a8bd8402e23458e74b3b2c1d49914c02304e7aee43ba698b88dac81aaaf3ac60aecf99eb281cf68a78576f4f4494418e21c613f20010071be7aecc94bbbac70bc00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230333c0196ec7fa07e66d7dc567e46fe74482555c43a461451c578cc3588b6d11fe014125f913fb9a994df9ac056712676023100ab22db7a0dfe955605e00cfb33bd7bea4afebe3d447c0b41e44f6f42d5f86bae35fdab6d9f84240482030a57204499710302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300bcfede64a11b6c6cc0e911284eaee2dddd64ec26ed4a1aa18cf34ecb4faa749cd75027b6eb9d57d09b8ed3344191477023100a87b633fb71f7fb2818442a70b7ba0bfc9f4943414de75951e7cbd905b8e9c8435c4a563bd7a8816a63f406b14c4fcae0302047c435bb50067306502306724d453822c3808165cdef1f296eda3dac2c0762c5870eb14867dd58e402c662bf5dc904ddcc233c5c3d9da6376797002310085d1783067059ccf32ae7d8ebcec57dee667f4ac5d3ffb04c840501bf549985e9d263c64c9df9a120203ffb48004d2f10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100adf4642a79a0ee861bbe161e4dbb430e5a9d0072c93a1708f40fd1756fe2a53346d046e49b4d7c152997e4fa9f35acaa023059a2b0f7fce3c494aba00b4cd8d4e72f6e35714934b9f84677e50792edb520ceb94cf2ebf3ffdb6bedb010cc7b06ed420302047c435bb500663064023029ba29428a7091626bfe6c7a5a571265c18a5d946335cdf0057bd37e435ef040043e21e5bf20d592ac6f53c1b5884d5c02304a956b6280927c6b68bf6615d8e89e7b3e6590d69237fc4672a7901eb38aed8b211e9d94b7b2a6f3b7353eb571492bc50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306649bd0def03aec27ca92cde2f602bf87d59d0bf736f24744300ca4dcfc29cac1dec337b9ee8fe6ca394daa2cb9a62cd023100d0599c2b8cc0831272abfcab5540ea4eb2ef1c195e58304fac75487933884445950be53b192593b4337c135fee8565700302047c435bb500683066023100c2e79ac47a61ef6af86cc9e419568c29cd6cb170d68437584c5ffce634b5c50d31aa3e446ad29681974fd779605525dd023100fec543b4411351b0f7f2ce2ce3aeae5926abb56cbd59b9369796b618f3884684f213cfddd75a12f43835b4823940cfd10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023018461122242634e30a7deb94b5b1c3cf17ca30f875b2d4704b80648f452e9cba0ddb3cd329b0c9ea371741b6635c2a7102302824078b4d9060a814bd043af085ef61947b8661bafd75079b8e974fae64fe91b2a6a80aa928b32e68a499e7890790ca0302047c435bb500673065023057ccd2e10ef48a6408312aeb4974f67b8a39599b66d0e3b5643722a48894d3fab80f117f8347c5ac3b029532f2adbc7e023100c6cf3a809de66da6027705336f76f49889f1e43a04379b09deb596b175093b44378844cfb76ce94c80d17261375197e30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023052688781c0dc003fac9ccdae2c030a205374142ec4c12b104f0cab3212390d318c468abc5d1020c24537c3eb5b926df7023100d977890bd9c23abeaa4a5247bdf79c805eb3630c01ac50440df0b74acd615e1fb22e7814f4db6795c930d78777133fba0302047c435bb5006730650231008dd7e5cfee92c1edc879eebe6db00e7306afe8290a332037367aaff4ede436fc467936c15a4d9bd979f4dad21f032b2702305658a913bba3ba50ab74a2a45cd93c4abd20513eb5a8a43b6267e0bea02867eeb11e2651b470d14cf4c66860b159348c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f9dd868d75324fc6604a8b22f19281ec7b4693603b959edab235c76ab4305ac023ec8957f58fe66e694abe3034051a22023100efa0cdb4c0f680c8dd8bacb62d4141a86fc135f5832d61857b8e3790bc7ae00f7a69d66ff1e2a341d4320b95c2a2ab5e0302047c435bb500683066023100a5125bacd612402e96308d2225905d327cfbe5c69cdcfc19982b6dc0a4f8918da26184f825c7cadf874de367191d15790231009a040b3bbbc0bc95266b9d65fdd2ab47897dc9e4ada9a3951b8f2b2ab76a34b1b63dde4828704924483ef28498b1ec290302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b521eb5cbdc6bce7383b7e6d9b5a6ad73c55e6ccec65130b08f57ea10c3b0fc36df23971984ed6d35759443a8e34bcff02300149729c4a7233922097df6471a4b84eedf0179cb6a2b6c414664e8ce658725c65b01c1391ff0472fe3177842b7549300302047c435bb5006830660231009c6ccdfcd4030c10324fa67c506e432420515ea4cec358459a5ace8ccd3a123845ef1cf3d0747a1bda4ccf03eae2037a0231009dd4062462f683c9b412a3b372b0410f46b03fb75eb94507153edcab84fa9bb5225a20aba3982ccfb84a4f634b9e7ef30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303ff6051e730c72fce507fc7f67aec9114826bfe8a7445e585443d9a37d0d309a2afeaf02db120e83a23f23d22c82555b023000c0f094e7591bfadbe4bbfb39ed62883868ff65c4d54b402f8f0f5ae61f1a95fa8fba4480eb18f011f94c3e85890fa00302047c435bb50067306502303037b27d6936ba002bca7ae679164e58dfeb2457c6b56fd6e41ab4109e535b50ca5d8f02617cbdeb78750f798c7a362b023100cc32628ba65cfc24ff4021cd1d6e12616a2f5324c01ad73a0a42bc02a9e8aca2a511b54afc4cb76829c371322a1161010302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ae44ffe048ff3900518dd45a51cdd34a146e93611921a06f533a1e6b66c97bdd3aa674030f25f9c15190508198e4049902301e1aa503bf3e07354fe6c0528ddb944c593634b1f886838ade6b56badab329fcfba7e8fb0819773ca32cb56d41871e410302047c435bb500683066023100c09314acd5a3bfa9fc102204cd877415ca389ecbf47ba588dd736533dcce423bcb87d07b596bbf9c7ad399f0e2ac07980231008b3302bfaa88e1a3fc75b034809b9b2ec926168557e2ceea1a052439d6b76b1706060183167d67af6ca9d554f2cec4070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023032ca1fd273f41bb5bdf40ca3d0d257896b3816d1b6958994e8ca27fb0ad86139a040024cc5e806829e724e0ac3d6bc21023100c7ecf21706bb393a39fe0d6e23d1ed2af9c091f0667928397587f354548bb67f7433d56bff50f984dc2d255a5c1355950302047c435bb500673065023100e5cdfdccd9838b8c4b044f55eb55ef092178730f2d7a0b8d97a4cab1d0fbcdbcbcf5411775c72c0800eaab9ddeb71d710230479df5a00f5e63c2381f3420517d8731b6fa4dd6430bf4e97e150823cc4bc1a03cc87f385f09059e7a0e3f7850ffc5780302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008d51cd930c54fddb3ae8ef724c7d1abbe3818c7c55dc8e6fa85b467db1e6a4634a9ac86632373fbabc0770eeeaa90a0a02302a02c4458523cc4e92215f63a606b54cd9947abd989271ff4a05d0e9b463342036a3f764e9a7365366a43bb183b993510302047c435bb500663064023042fd666f6af1f2f457a0223670be4ce90f39b6825083140938b5d3dea9d30514394b6f4c1ac5125ee75b1ca80a6321c6023034481760870b088b56f500e89e81a7ee3160df8fb89bda9aabf0d637610012dd3cdf6342bdf237383557a43be87fc5240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bc9a812388848798f9fb7ec5e4db36870c52f781394860c1dbea2d2d617091d087bb60d539bbf8f6c285aa741ccf6de3023066145736543747cd0dc237570161e59ad792eeb09e5d9dec78d0fbf9f783a0cfa4eee2944ef88e7fcad33f3d7947e67b0302047c435bb50066306402305fcce338465c727c54d280fe4b3060f90185bc1158e2548e184a7ced06dbc5346d8f64ac561d02fe3083fea583eccd9d02302e662d519bbfa4b9f535575321340451b6bda0beba0f30e589d7572bbb9bb71a78bc64c655cb6a2ec5d74d170224c3900302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d4909dfd830ab9d93431aa52897573d0b71549679cec0da2b9e668205762f41db503d357dfdc92e8eb1e6f2e3cad91c6023100ec85eb4757d33d6c0bf2047375a1960d03e845e637f5927d2e92b47cdc9d0b37d831eb7cea4912cc6678922c98fa7ca40302047c435bb5006730650230064ca60f6fdde07ce528406bbb699c0fff416c96bffb41f87d08486cae96e63abc17cda76a8cfee1039f111922f68938023100acd94e154bf28f7e46d598f3d6ee2342409b1a89c79110e9ef866840ed199f75295ce5fdb959686228787495fa92d25f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d2792d052eb3db58594e9cb8c3b8ad98060bf7f6618fd348853dfdb19b4ed73ba2e333d73d46600ada0f5a132a7f4b77023029343262b2da5eff35c5e34b4db75356f8a7602e4eb157038837761b8f77dbe3b9b764f17cca85c936b64e86578814aa0302047c435bb500683066023100fbf12c638c1858945c6a40e8c0a8ed3fe2fdc9f58a6216aa0f2ee4511f00d4b3fa226f44aae4c7a010db5636781ad96c023100eee80cbd2a61fab2be6a8b04a18649d448438360be6bed325429ec382bccc93d61979cca0267d79a51c70e35ac61ca540302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023032754d6669412d7df5da919e04d7fdf66430882b9abd87c72632171127a604a1a5b951da8e89e3a126e867e3876460d1023100c3fe3f45513c0e882d75ee36416eece6811d50f17d9ad210aff23c78f58375181f712e922ab7ba45dc9f3bb97cd603500302047c435bb5006630640230601f8c7d383598e986570525afacb09495be1d436a472f28c28c9d0797a5355daec11cca9589b3c20c010a666ebc7fba02307956a81cae44085465c9e8c05517cf6b37d2b7b06a2cb847087daa2753a48a23797f614d6b2268481aa984374be1ab3f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cf9f7cb8b5bd322795d9387098130a1e01bc4a03dcd62a006b4e3a7dbec271f67e69cc5740d67299e476091a9c874b78023050891d69fc6e0c24b6edb258821455dd934223f3bcb248b7023d08936acd5eac6921872ffdb92fc74ec692ce61c03b7a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303edcd6e6fc00b30b3582ce4ca39425173c086d5fac41ea9ab03834bfa9bbd5acb5db43321afc1bf6f3223a96754ff3c5023100f3dc3f3d450560b361ae3237b306caa9ad94503f8dca23f20938c074e77f4f4f952dda07e23f283a74b8643e1cebdb170302047c435bb500673065023100d640e805fd835e952824305c1b800c8c9c4a66471cf930bfebd1068342775b5b8562fb1e6f9779dc51054b06a32f664702302f511d17feeb1e375d9fa51c54eca8fbc5cc73660a7956a7a8e57bd66c75540dde8813f8eb4f5c0eb33421aadf631dd80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023042402cb18bf6b753ba387474ecde5534b41b343bcd955835bdbb359c604c650fc2ae1dd5a4751a2f6c7cc27d8398791202305818b38dadc0a7e78858d4ae959d4c73e70de6198d7813654d9ea34cc87259b33d9bdb1e1287bac960e74bbeb704024a0302047c435bb500673065023059fb39866927c085aaa9016664e5854ef2ad14539902d1bd8a459ba8dc3fb7a2ffb3b6b7525491b3add5531d02d5323d02310080968be6b43b8fc412411079ff85f446f824b687a70a16d840910b707eb90e3f981c69aad3fa86802c30e2be1b7ec1a10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310093e619b52061ed4398dc3d4f720a8cdcc1fc60f909d1543cceecfc6be9fd669fbf4c2ad34bc8de8872bddb7cd467f0e0023100d676d13f3afad12233a411521f4b4482fb0925e3c323d8e06e01daa7ae8303c58c8aa228af79f7fecd79e46c720324610302047c435bb50067306502300190d8f262b5e983f3d3cef2eb4bb8f45e37f1b93a2796682cc5b88f8e4d1ff4997ebbdfa3ef0e39e102c37068eff0ae023100f6d3fca5dd27d306803d098b1515106c76aa6f0d9cc825a6510c4355495f2749607795ba7ff954733dd74aa20e1aa7e30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300241435ae20d38cdbd1f963933209d7855b6eeb79065c951303230194700748e8bb720a7571108c46a19c3a7a48a35eb02307dccfeff2b897156350e87cb099e074f854fe7dce0493adab6af782ffcf06c795f7faa4e664a0e4659cf3b1fdd141b500302047c435bb500663064023053c9755813a7c9a4e4c3ce276d70af42eeb3c2182bb86f7adcf83a7b128bd061fb16c28cccc2dacd4b3cd0dedfe883b602307d00bdb609f4e2e18b50b31664bd0d2884414a4da6adebf306ae58d213d3728e8b6d9e266cb4dd40a986224bbd9b70c50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fc1da0dc6d60be0d963a630afacc0cdc82cb7d10af10a32022afc36b0c35ae438adbc1e12eb74d1de5d3178f576c1bf1023100cabc71341edc9b2e6c6f2c91dec3f063ebc613e61ec95081957e95925fde0afd0e723f760e847d165d560810bcf381990302047c435bb500673065023100845bcddd6458e34582cf81b277ec29af2a2f9b7ae853a6686bba307429eea510d4cbd37c8984782cc01433ba61548d1302304a8423244428abe5522bd95f38e34f791c8b188b73c92ee691fc9aaaadbd0e5c78f7e44739ca90065eb3c372d9ef49880302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306f3cb054b9868faaf7f19b8c7e750f78fb14a6901fcd9ac43e82c78bf69e4e6e36b23789890e2ac0b0e48b0d8b680a9902301a4ccab86b569db3c476b538dbf4d785280710da49aa8aa84b30909908e771a7f8a56c4dd457c9c7c9d63f4a5b0b24c30302047c435bb500673065023100b3ba5f031f56483028d6e20bba05739b67c65e3438393cc0d91a2dcea72e205023d487c5487e7b5b3541dbb97a6f748b023016ea758499c428d0a8b239276781a3bdcf8514fc500e4f7bdcad5ee12ee7315e04a720160f1850ea0a910bebd1470a000302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50065306302305c3e9da64b54fd62851e5b74382d95427f8c45b405587b36473d89a0bceec39fc23bdc58b2b9a4346ecf72a3ce85154d022f05049656750a50e1b14382752ce7fbca7ea7b3d74fc2e774ebec9b406442bbf0a585ebbc34b3e685da1360cc685ca60302047c435bb500683066023100d9dc33c985a9e34f6645211048876d2afc6c506369dce2cc03c0459ec2aa66295b781e422ded507f2f2af9f01efea217023100fb69f3b4f3241f27d4588e0f8211494b64d54398b5bbb881018fb225e107f8f774a312fe2c35286d19895d54b5a06c620302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d8d90cc88685d25112092718d5a2ce18788b55c87651afa43d2a054b8c3d5cea53b83c0c3455fd9e85c2968709a9018b02310094a1611002cd3cfb0f35ef7c4c570aa96316411165888e09b06dfffc372a736839657fe6734cbb5c9835ccd6f41c012c0302047c435bb50067306502301c30b8555bc8206a2680d87403c1513292bfcece163782bb9aa6100698322311d48ee4147d5cc7c64f14bc133a6c8ae4023100d69a921afa3a20fe72b98f16f2c5a18ae1e29cbee7300ffdcc4b9631c767e30d4f9bc56c7075a9859c5b892a0505bf5f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230762cbc2d9f771b053c79a9333d3cc1ee7beee21a3d72d64b628181a2623b39f6fb62023ffca90a4509520ca4eee672e8023076843c47bbe7af38886de99405199a5aaca628f337d56278ac0c5bb9b71e3f7416a0d6e3ee5dfe605dc552e43db70c950302047c435bb500663064023068756cfcc6d1e91270db11a6d1e4e265dedfb72f0b8140d96bd01e5184e95410ba22412f74045e41cdef862e551173fb023065f392ff2d14fdf721580977971d30e16cd6de07f273c60acab5898638e424bc13a8e388036c6692c34f001dad2c204d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f869edf1e07632eaa2626747addd89c533c50234d3908f281e57a20a74902e7474d3e7f5c8f3c47d7c04ec6169d62947023100fb4097285e966f822673761060d8828b2974c782f61a81965e65cf6bab50cbe65a4798496e1f77dd72836c45099ff46e0302047c435bb500683066023100a07226373383b45fc5cb06eb838a2bfdbabbeae68b30606d2792c79cd3f4fe4f850c6e5634255c05a86ad8255139c75d023100f944a4d3dd78530eef4a95c4773e127bedfa8c8c25de1f8983f4f90beb963b3f24c82211bf73330fa75a936d2497e6f20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230705c6a3dfbb7337a493a8adeec5d2f6ee5cb307324c0a53a24ae83272d85573fa61500b8f1964bb566db0fee2c5ce7af02305d4953645f91de5185127baaeb8d83ef90c937ad2ebb7e9b2f4c42b52d5cb6d6eff72c4e8f111fb80474df92f49e5b3a0302047c435bb50067306502305fc28ec5b788b8903ff83e3fb87dd233ea79071dc9aca36263bb1f18a46429190cdad4292489ef5d37c309e246ae6bc6023100a5442cd51c6d1d61a26e3ed5c5f555e0b80bb941abc3695f023759fc8b82ca6b6a4a12bff133d316242781c604c562e50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e867b5d5d30a7192996d091a9386d2c13628c05128b05cc7829302bbe0d7280b8a59e9fd089af5385f2cf042607bcaef02304a340cb67249874a55344ba077d574ddb453609f03b1566f59aac0a8fb67763459912397814dc8186329d3a575afdf9b0302047c435bb500673065023100cef79e41cd64d288e525e9954157f310a9a6e0ec23b66d5280f8c18b98b7b4d524a006c5d90df492018be1f73949af9d0230725bcd330776b35e5fbb11303130c5bada0cc9768b66c909488b3331d63dd157bc6eb7da8b63d51a59276c5571a6651b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a8e89220be524d37347d4d36e4fe4dd2ef0689f08b27c72976d4b449797dc1cdcf27e38d7f56a9abded4f68429cc573702306f4b85f56c5081e5f455ca1108ad4b189278636b547d15e7847a05470739761fae27da83da11efda44f06cb7387afb050302047c435bb500673065023100f16ae19128a2d893edc08e0ac0583ab920ace279696e3a846f58b66884c814fbf0b6789ddbb3695fc2158544a25b00ca02303eea8d957e8f3c3f99df213ce61132e537e5ec5e6c6b3a61f28afb44d48176d5ea362699ac88ea8ffd7f223cd30a79520302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ccb0b3a6f180f25828d64f7ee25b4a98034774ca7baed182e56318722ec63d4d51488d17f2a7c25d20de6643567ebcae0230189e2cfe57ab133559bc8b7c0f81b2f774deb1feaea699cbd8b0656abbacf13416aa49f813f402352fe1afcb57cfb6920302047c435bb500683066023100f31247ae69922aa4535ba57452d497c3fc3116729226ac9de973373deafa4e83de49ce4dd1969ae1afafbc1424b4e626023100c2131e9ada68c1baf106b77758469226bfd192fb926ab20003ebe3558d9049e0a7915976c2101e6ac943483b918c366c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023067a445966519e7f4b8848e2ba12c5bbfa5fc9382cb07fcf14b9aa0f6f8ae9f28545d28c849eab60def11fc5fb22831ca0231009d3eb0f43178f954c43b17fe7cd5de2e9973398e8571523ab24f64028f241c7f79b080feb91930112eb6185be8b55d740302047c435bb50067306502302d2bf4e105525e749b1d5e69149dbac625f75abbfb489c4f78090f67f6ee0b54964d0e9f38e3fb0aedf2f6e28f981c05023100c702967ca3772a94058ac72e0cdd500a745a850798e675cd745180693507419e646a6ba59984fbec1fb90fa8bdae820d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023039d9240299decd9abe5383ee700beb1f99dd2f40a6985d2671b715c02e943acaebf31dc7603018760d4cf65b1397b23f02305a218700c8c8c8dfb34f248518ff9b578328df83e75061ebdd08ecdd3254cb45fad3547cd1cfc4addf9bd224dae2ce220302047c435bb500673065023035eeabd9630c58a82e538157fa321fc4318cf536225e3b42c8c7f38856a113f96471eb8b0c0c99710973261db0c4d793023100997fd77ac970593d4da6a0ed1cc798b241dd9a2372e24c7d13ac2ffc82e43969fd98f33701182d070746b6a743bc72780302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023062b07b569f0ff1008334982ba5d41b8d208cb119c4e04413cd81e90a5e9da9fc8f8f0b79f4d959860526a02783be95550230019963ba2a1568120fd4bcb513b186c23caba3a6238c1aff02326c9d536333d23057cd8f8edc436da994669cce8f42a50302047c435bb5006830660231009c762c43c1a7a18a4b76b327d84be55a508f7fa60874bd813ea16616f844a3f20c138c939d74579edb2db35a8e4a9b61023100bc7ebdd149fbf7f91a24b8d433e046b8679f828759a4d29b88b2287f61f0c9ce5ed0cb564e515c50eefc80ec531166030302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230124093c0952d4135fd61d2c79bb85b52e2c317e856840e449a1cd1348767b9a93066e6f7fc9102303967d35f732fd9bf02302ca709c8da5c42d1a0fc0cbfbea6e498eb223a28704ebea41705d565a3093624a1f5dce340b4c6d962b7fa06a7b54ccd0302047c435bb500673065023100d23f74f9c04eb8cf8ce95ccf8975baa3cea3d07f743dcb00383ced1e442191a3045247de60dce0cfdf15a6a0cfb4fb2102302ce606516067d1c8a94c1fb25af596c510d6ea482d0bff51691d7f04c6b9782de9f09b5b1ca6ee49df0e5930818c216e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023071dd98a324f3aab1a7e4ae43f21728feb0ae078e0b64aac94d6edff01fbc0f24b5b8a458c774f187f131a252923b427802302f858f98fb24c4bdee839ab49a47edf129dc441ec0bd4b0b182356158b2cec96bb15a67830d00032f7902d27401c9e1f0302047c435bb500663064023016f254a3700688a7e727f039069dd69b28a9c62df7f4b243a402fb1be0ad3eff9eaf41034bdf05ed4babba1fdec38f8a02306ad43961496f649ddd745e025a367e3d048a433ce7554dd3f1e655e684709d6152250a8a20eaea94f7ba4da6ff9113540302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023014c6435c283cf708054c61f51b8f899d969b4f84525d859cedbe58e24d164bae02f02663258c33df7cff6e503b264b03023078a6e2e574d539ef27993139c5226a2ae5bb0ca12526f67c52ce86652d555f46a5944b306363d398186bd1b0251359d40302047c435bb500683066023100a6f41a6a908fc954e6b09da789668b45dead39f87af778ed4f849788ea05818d997b4cb08216bb86230787aa4dd811d00231008995945a73a78de533e7ffcadc5834976f9ecfe746ebec9e90f4fdd7fb03a211712195f91425f2260867f3ecf0dc02a70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a9d6c1e73df96e3fc364e194d1fbfb5fe2a42a23f70817fff3a02ae529ebbfcee2417689af6749b953365b285342ca9002300c44255707978a53b650c2bd9de7240835e2068f05eaafb721fe2d94be6686a2b608a4db71618f08999492a8c987233c0302047c435bb50067306502302b0df3b65cb2fe69b80b9d0d26712c7beddc85a4e0d3af258d1f334d5e554e52f4b0bb3167d1bc5c97fc61ea328bb5b6023100fe8eede5bed5bd0a660e7c928359d4a0317d2936468528881c2258332e380cc63bdcf34b393b2b462bde56f133128be20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009668058e990efe597f81b518b3b4b0f3966c8965418ee16b45af7eeee697abc1224b8281a4caf178801a3a876b7e17be023100b5528586267771ecd0962ff2a0b6b1118db77eb5dbe10879a1ced0bd1b072dc2d2b3f50e9076cdde1c289b2eec4a50d20302047c435bb50067306502302a22951bc986df229be556a9f1f9d5c7a812c62c593a69cbaed62a84072fd96bded83e58e954cb570903a54d25b581fe023100c41d0a25aa4dc794bed260ff823d9030672f6b8cd3b58efd09c8242c6544a8156591d0686afe5b336749a1c7879756030302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230726c3df665705eb33fb3b2a55308ac247c001c7c9805fae69ab2df33f1aaf99a4017d5704b5f15fd0dedee637159c65e023049008f1e88c41f22db11da93d747ef1740a152e8c06a90e8be084eba73fde53a3fbaac2f66c944aa273be1a84539b2f80302047c435bb50067306502301883997083883f32cfe1ede535403779feab07104dd7327cb66b482dd26b65b403db5e53042bc555f39934d2152d2b4b0231008f71816d0c681a0e86bc181505479e9810795fab05106689330e7261529002c890878c038e856ac4eca2a18790e8c9960302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303083605bb7160f44ba6c9216f34b840550b9e51ad65f4887e912d9b7707c0cba58aba144744d32a94687f1e730f311fd023100a12efba7eea8ed6c57deb340c8e51f86eb300ba5c3022e4e6e74a0ba1f57af1bfec0376617a635a22d26af0e44fa82800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009b8b3fb72ea07bd054c3f365afc082f36e942904c9a2519f694126b99d4d61227b1bcac62831ecdd329d66dfb5cb14d3023100e6fc5d7ad78f637818643268d089e4bde5b54ecfebd068d219faeb55826daa4246bb45a2da57c052aa7fca454599d7b00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310097e57dcbeba57315d2b38b5dcf1e486dc95f2dd6c839a6faccfe4f6fde886eca5854e866bfe7f5a599da2de952d1b96602310086f7521e1f9a5a668e1ab290f6822e9a1aedd405ef1bbf8b3e6a75c84c98dcbc8111c471da016bcb3488ddd3f92a76160302047c435bb500663064023001abecdd0ca697b3f85764ce6113f0c969383c73a573fc76184ceac63788e2fd4e59fa23a8c531435b96addd11517e5e02303704926886124d946c9f60fdd61a91e01bcd42906006ac29e62f79d9ac6a460c54c3b8aacd9d2155ff1be28f63c82f080302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cc2fe19dee0e891d3af6eb79f8ea11f9088902602f0eebcec3227ef00e9908ce688281dc5a0536de4d857e66b616ba5a023032d4a3831e19d1499f45eb3826addf5c232aa16e036cc7c030b5bb01624911be87bdeb7b84e816957e5a1e6a60e323710302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e0e155d52f15197412d4c44c94587affca0f7a892e8d042678334c9c44bcff103f7f5193e2c05999d8e54955cf989278023100aad8ab5100f6f35c8f2ef6b4f32a20a2b0e8dc2c87297df5a8d02c26e875f97275f94b93f812ccf9553fb70043629e440302047c435bb5006730650230786239a950dbdb0e3a6a83fb2d8a5a7400824afb6b1fa492979735df5cc12b56bb468f0334282bf396cb37653c74e37c0231008159863da0f54b33d0e188c0fc3c301ac0060282e5a97a79f76605a572be9d5b3ad6d51abd19a8fcf8b1cb8d0f2f43660302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230193a682a0fa30e19c6ad7784bc5b97a911a8a108b1c8213c5401a7107168076437c711e7f7d325808b7ec7e90132d182023026b218f9e76652fea1dbac7bfe15f4835b9ce3e0c83a018f3640772295bc8f2e9121982178f460d7ef65e10f38c4c1e80302047c435bb5006630640230533168f982cfb3dd1bc3a8da05ed0406c7bcfb6bcda4c153071e35986849f6a113f341a1df2597cb655e6437837cd918023033b8c4ac7064185a7546fcca18694f44745484b5e83521332ae89e7fb278d7ec9851d1952b82ade73cfb97c41cc7abfe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023042cd6eacbe52ca917283af748feda984f9797365ed627c566f150a01a8a4841697cafdd7479d57ca04581ff35e97736e023100ff0f493838a275d7fb74f6d72b92124d96b69d0dfd3f381ddeca99c52f16713f1aea4eb6f360d2436c6477165ef654a80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302811794e8a7ce7afde829f430085f4f0493b7e3d2f8ad839b01a607b4a9aa6e1d2e9f1ada80b08febcb25b9d833c97ea023027fcbe40a131e2630ed0627f87774811db96380abd1f593659d03fdb0407bc9ec1478e9d4e839b80bedb9e3b88ab4a6e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230689f8077ec2f4d1be34756c5f88a4ce21f11a0dad6292e5da95276b43e6e02563e0af4d7d56454b48b3716108d89eae302303b50abd9258285a70b4bf0c15f0778300c864b37caed3ede684e6bc2dde572da154bfdaa5c2f3b7934a8ce2ba070909e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305e3d7104e9d9544e314ebb6ec03c2ab9c35e43f2f415a6bb88c65cf058c7351aa0597f0a1221876f887aef4b849786140230797a8f690d8bd272801cb3983971c416acb1a9d7b38c20b450857313e764bdf0a4dfa52d7dbc5624267ff2cffaec0f2f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023028c538808ea03fadccb2a3c4835eeb3cc302746f8e5b1e1f99ea86930f46f750d806e054804ab30dee7b5912573f2cdd0230320d758fec8ed035c5692fd8b548fccbdc76d2adec749a3ca804d7e3bc29e076aa9c2c3778b0ab5640f56bd381149f630302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009f2e449747b7a121fd2e645221fe9aa9cc847f0146cfae7c057df4a5959a90d415effb52106474f9912ef3fef21e708e023100fe9cc49f7484257bd5924ad232f538d9ba1eaba5216e3adb7f8b49001dbda4758ce272963d9b4ad0534d4c5d72797a8b0302047c435bb50067306502302e082270df72630b5dec19db352779aa312038dd84fb326610bc228e15290ad06500eeb69a0bcaedbe454ce160e6ce05023100926db1f8fda1a0d80e304f90d9cd7f8b790598e83e0f5b495ef3b494a9f6b78475f8295e9e90e4f03a7c0743b3fea21e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302e06248134b9c7add42dbae43d289047f2408e91a78fd242b0123d3681e37b471195effdcc4655316da840144c5b60b9023100b276e3b4e146c396f3d4945c44d69002c94b524ee0720064d72f8972dee2639191eb377d47e00eab98e7d8fe5434576e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ccfd08b56129732138b39f06cc5ea92995e947296a94a53732308f6f8b797a729e37a6c8fbafb4d3c94edb3a1c30cfec023100ae2927a0fbff2878ecf859feb7b74dfd2ba84320134d264e88cdbeaba2d38537597aee929c0bd31b1a4f63a34853f22b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307698033f66c9d96f04b186baab9240ea5991826bc4ca78ecdd46680915b1b66f6d309a864a00900c64fa0a0074bdf663023100cfbf3105919508fa0a9df73d6f1251ade2d8268ee3df8f9bd11b4997a5a6284a19cbb7f9b055d8b9f3f30bf26336fe0b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b4ee13baeb2ae1c2b2a314ee34b793ac3c73a1e79d198d3918b4e12468aa74c10367fab5edcc738c3832290e1a6bd82d023100ff90664a42432bdcd3ca90653b34789cb38bb9e9dfae1eb254c982e79832cb760ec45e1d090c97d6c6a404adacb536650302047c435bb500673065023100a7d2cf3abb278dd7c0da35a13cbfec41e0d9d85ef2770d3bfc75cc6b8dd50e3acc10bd308e5c21918d8540f72a0eebc702306973711f8a0e81d269c8d9db3a21fc426485397b5c9e8d9e550e1738387e12dc6f2de21dba54ebcaeccd6668920232550302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ce40d8dc4d842df1000bdc8c3f231c0ec62122a02f4ea03b67640882c6cdb0e7b104dff0d04ef3a7cfb3a20c3298609d023100f42d12ac83481d7da3e3bf0c344a3beda708d148e54b967d7c42ccb4c8bd3804d88976610863c0b165f95b4780f0db210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307c794d2302fbf6147a80807dbe74f3aaa78d30800e38f9bc80a0a46fbfa67f46223366aa710887ef7911523342bf1f53023100e8a15412351c42f3ad6dd2b41ea2d78be69897e275e5ff7b3de0cd9854bbba25a01890d3298c4498f1aba684e86b97380302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008adc97b61eb421433c74d34666aa96ba51db804bfd511024f3ce6c65eebfb66a73caed78d07ec5dcaf2240d2270d79ce023100d1f1cb02f1a1940f90ee55647c0865bbc7b1d0100075d0f54fcb546ff1ec423891ae063018e713d92d6c61e6463b0d7d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008ea8afe07d7bd8739c7a8baac190cbe377003f7f13aa7e3ecae3661f11c83226cb11a00aa3bfd0e3ff37706de8e16781023008795f3db150c0e4dab2204cdd61ae6718502ebe95433441d4475abae76be8f512d3105824d662f84aaa9be4f0b4c0760302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307620a8b75444905f85a3998f3489fef4c2cc988f88acf377b044a9490003b306efe755cf375ee11eedf7fea4db566117023100955ce9b38ed418fa41006dc69fabd0c5593ca2c73dcaeb2fb2d9aa1ceb24863abb5a87a6496f7ed449f16466ee11023e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300fe6b3cdc1dde793e835f7213e98079f6819b13f53e3863f765d0565d113b4ce8bffb242b7e4bde01a18e45102de4a35023079725825c04cdbabb94c01940a59b2b239414d8ebad680cd4c5b7f68cfd7c46eb6907ce2d20d977e0eb74f3038fac4810302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f866d7d9c7376da118c0b311226c440196a986d306dc8c3aeaa0059bcad12c4b5c410bed7fb421e2bd3443ee94dea8bc023100df40e6f69ba2aa10e3205bab97bac3f533dec14e2b2ad171135407d5896581ae6e6319a48b5c7e559fa46af41baab5ea0302047c435bb500673065023100c7003682081446f027d8e445d9ef9c0761bf3c856830161059fff587cea70867627584cdcbaa90e3688ba19b8f3a756402305c238fada9f3711303a8784ed048e58202f20ce7fe3431595b2a264968af9dac96f7c10f4eca0ee219975e1bbbef18bc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e149ce2b6d134073274b1ad640d987f5d672f4a7ba90fa91beb52b521174d7bde89ba76dfe345628137fd49e900217ef02304b50e0dbf0e293337bf743a1a2c40cf881368a6ebe2b2669f51e748427d4a56062c702ea702304bbe4a6dfb8d148b8f00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230086fee881c812f90bc006939f48202f8ca31db1ab958d7868500f79c4eebc50d6922e51ba6a9a2536f606b874f95e87d023100af6a23321424949522f7d55c0c54d34aaabfc895658ec3c059cef241f1062b71b08fc7c0b60fb9157a3217742b45f2d60302047c435bb50067306502305dfdde4ec7a026eb09a80500241fb8305b844bc0d21b4a1b5ca3c60191b29e2656b6e3a46d61b2ee12abdda3ba557380023100b62eeb225abe1cd0e4b9936f70ba743416dc4df249b6e3bbaa26b828ec1e04e6a43a00a4091e24910468761e61e88e780302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303850783737c20eac2fd5c7f74d97e85ec742986dfaa08f94d0bbc73263f14a7f3d37a75cbfb2b971089fa90f11d116ed023100809296b7947ef8e919135555841e9a6b74f40000d48f05c51353e8cd9d072c8ca2cb847380b27c3da75a679a858ea19d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300dfc97cfb6d5a45999a1e852ffa64ebcc6be355a94c90dd2e36c1a05bb4578c0815d224d3887246f452c5f6b90be0cae02303c359fa101008ac055236c3faf29230074365b0d588daf975d86a7848c975258f7365cfcf587823408393804ea72ab150302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306a87a2dfdde70ca010b617bdf3ccfd4c1dd959ca62c6e95d741696fe8a4e396e23744da28250f2560ee6ccbf94c6c840023100d535c2acf43cb6e4e1f49c8260c7d77f00e55fa166f57a90639236ccd4e527d149f7d11479a94473341420157ad0604d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008bb364a78babada1ab8cdb71f70408d468987f40a5409f28ed9082f6b85381a67f098160029d36f872662d76904fde85023040c570bd7ebc0577270253e8a18332c2b7f8bfd0cfbf43f482eb7af69dfe7efdeeed1530a47c775ca70951738515e5c40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302cd439d3c5e93da5a7269460eb44e6303ebb102a6fb10a5c9968a47b2d9212d5cf19998bf0b75aeb9c0f729ddf8550d4023100f5008b51c309d85d13ba334494a049da0ee04c1241bb42f4868069b7a40e4f100e72ecd7c382b16bea86ec8f4f11f0440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307b4a5af7b15d85919c9686ea5f4e8b9184e39b095f2aff5fa91506eedefbdce2b26b2854ea17aa378b35f7462c2a9729023100f1879bf58da96bf7e3016a94c316d14679e3f3af31febe095ee619f6f9f51b0c2808da0bf9a64f49bfe7eb8c35bda62f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ec2f61cdcd12e4763455d9ea8bf9ad8768d3014a40d974a8e00f18a03d69355167f58e800b8d2b353f61fd20267b3c7102302ca17fb962f6a4933890da1b0e804d5ac37f2bb84117026992290ff8f278b1df0b5d702230bcb7ec19b727a4ecea4bb90302047c435bb500683066023100c14e30d3db0ad4dc178157803e64072fbe261d68d0425ac5aae9b2ab30747499949813674a0888c7ede6b81c8baf109f023100a8a81f541bbfd0e2c79100de23e952aa6f815119ba51d5b7d041d2c147500d57c9b491927ed03b2cce0522d4d7222fb10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301f592d6f367d390b290e7fe05d4525ee5e53756ec9d400a9d1daa8257dee2479b03626dba7eeed53ebfafd077aec665d023100ce5643e7db280e6d3c454eea5ed010d04820af3903c0ddd0ed9b21a421120012260989a851453da4587ed5230a31280b0302047c435bb50067306502307469022157c434487c619806474410ec2035d5e1d370b2fcb6d62dbb75f18626f88acd179bbdce91658305937261719a023100ba9998b979d44731cdd8a9592846d761cbf4d24c10d0d3a39581cf8ce89d7dd402640d4bb6e1f6a1ae214e2179e6ac620302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d02a586f67f7c63abf0b82eab66957ea7665b9043bd9019ce452074726744eca9d958182ba6ce109fa2c3a29a1fd959c023018a991251580baa4b13dc1e38760d6d68530f04a5ab85db1fc225b9144951b6f3271ed90a7d32cf8f175a595e4af77f90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230786384a6b4056dbd2636f830514f5fb4f8ab2b60a44f5fb97b68f363d6c05e622c58045aca37c63c37f8c6cd7dc8f596023100c309e6228f001a44f3c2b2099d22eb67a26a5c6fc3766c77b9b87abed282a291e4ecf10dcb2630ae16169be1db4ac4f40302047c435bb50067306502306b6fee702dd5a789306072551e8dc849aba790028636122358820221ceb4511ddd10bb92bea0bf1c6798283eb5e28c92023100f6c1b73b2561175059d5c6b279af7bfcb273cebcd534b01251464b0705fa5fb8f88c6c04af56a74dcae97c302f0e7fa70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008458c565ab13f8b9012578738ad7543e4660d5c352b7ea9ec620ac5292f5f31cfe7d821b6c6d6c725cba924460f79838023100df0cb4d8fa839b542991e6a916820a264247230204a20a09263491e856252eb93e7f4a0e28ee4d40a075fdf4b41489470302047c435bb50067306502307a1efa8f54bbf981841b28cc0a5264586891d0450f43a90e6a5ff7e593123e0bde7816a4e0b291064d17a51243b682ba023100b2a342a11110bd729f5ac836c06f2ef56d3d5380897855b88c8f6a823c66691280bf7a49ba9b253b69394df64775af430302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301327f576c6833351d27ed0b05554f897e34493ecad1f934fcdc6b533c1e3bcf7b80463c11d6ee986445804a129913102023100b4143cb5b127ffc8648372120f229bdef82890ab442f303afeaeb29748cab47c119af31bde4620dcc3876bc402479eec0302047c435bb50066306402302aad652e715a8e771ea4e7ac0eec4c4b63a955c466571ea0f3db4c1e69ec5b722e2a459a5bf1ca8e114e150db3d71bc802307d9f4a18c22333b1c819963047a85f4e439d061e3fd9a7d34c1c49f3c7917a552cdb8e4ef79de2d0697b9ab07a5ee0ca0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023005cebd9781c01750eb5eced1fb3103cfb15c6fad7f2174df7e12b5993dfbf0d593df0165198d71c21e991ca7a7bfffbd02305470ebc1142628a1fbf46f52b684eca8f3a3fd7971d0ea38af802681f7f4c252520f8d69dca5ed3a5496e9acb2a8de650302047c435bb500673065023100c5f0ee3b10c27fd0b0959203b40a61427480beea22fa27d1180d8cfedb5954b8753069618a5941b5b0d9e321ed8350fc02302272da4a5e42abbaf051c202f1013ceb595743147abe245fa0b12c9a21af99d96d0b785a7a31fe244ba751b2e8bff8c90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008acd1cde5781931bbb397558264eb442c5f2989680fd1bb19cd47694217e90f825a8e85d31fd971e1eedfafb3e0cf88b02301fe349e92ae394218e36280a89ba703dfe32c36a218de1a4df42d4ad29a73d6689a4ee623014eb8a2ea0e2bbdd8b917a0302047c435bb5006630640230306cc5b43dbf7f47513ab7e5a40661b252f827f92d4a34ea850dfe387f8baf3668862714d1bf615def5c11133871813602304b0c46263030f94c4e76cda6c60ee579e17f144c543324bb64703797b2415b55937fef3707b20ee6938531144deee4140302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023017cc278e411d33e46259492bc084e91310eb41811180c016e316a042d0b96077ac9b9b74ec163680caf29af6371f56b7023100db4177346de4b20a050a1ad1244ead5425d21be44c664bd84b30ccbc56c9d46f2d0d5bf4448e3a078ccda3e3bb7475ae0302047c435bb50066306402300a7d0ccf4b6cbb3794b3fdcde464dfda1fc595a4048d48c84022c7463176c6af1e1308271b8eb21c4ed25b68d7a44a0d023071fa7a5c2719b69ec01b79ffc8d40bfc0e92bef0352a94c2d1a840070f0d41980254e5c76e605eb533c9b86afccd395d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100aacf4f56332957f885ff40f486fb0a245b494b18f3c80dfdb5cc3fa02f451032677137d674fc17868d06f6fa79d6101f023074d18d8d4a3cc61a996137ddbcd5b7ce1262d01eec730b9ae8fc045829fa0f5dec69398b262bffb9b34d1b7cf512c4b20302047c435bb5006830660231008875fa4be8556255f771105598c2f87ab6b88b5119e04bfbd5a7dc4e81bb7fa0905d250ee19447d8f5c1086ca3dd67e802310097f90c53583e3aa4248da4610d7cdf49fe3c4ff8d0b3322ec39e4c1525b8c9a05003483e555d1ce30bedb04f330f1f4f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008f869dfea78e82b224b88a945caea0f3517aecac342c62980eda6486cbfeeb67a01cf0ae389ad776c54ae43a39ae758302305a8f0a420cd9f07e84bfa133107bc8e1266cb08994fc26c1528a14a0b86a5bf866e1527c7998f496c6f2e53fea4aa0510302047c435bb50067306502301dc593db40841d6f190ca3aaef48c4f91b25b4844145d89d30c69e7a29a2eccb5eeb9ce2addf6725917739fbe0ef2fcb023100dd7bb7c0d7f64b7bbbfa479543fbee4ef695ccf20754d3dc87a8c06a0d5fbb8aa2d75150a6e840a7eb3f14a1223efc6e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301632135139607470940023d849986a06608e5710979b3110c7edaca39309609761cfb68fb0bbff2c7f02fd12b029557402301d92b9867a6881f353d61a27774eb542051ca9bc8e58423e27ad3f5ab158f7d4077d1dcfaa838cf91b9d9c0ac75ba80e0302047c435bb500663064023017d971bb9bf2383603d353d6e53074398af6a10e8f7cbe1493ff1496c3f3b8e57a9e794d1545c2758694274dd9995bf802304e6722c780a95116a6300990be16c3957d6125a9feb83b67c45db59b598ae7e80c7cddb357c272bfd63e3ff30da8278a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307f8a7acbc9361f2a5f44d9a5c90a2788243f0b141f74b7d22991f1b2588c06fd99495d2425e2f53ea2493c77aeb4d9bd02310093ed02fdf780d922f309d0c6de37bebb588d971e9ded91c21f21eae07e929dd21c1002e6dd93379c7f711c9211ab634a0302047c435bb50066306402305dcc41b0b94377648d618762b7e32767f12c8c4cada443d4346acd5823503379b475066f04d1641e9e1611396f42bdd0023040e8436e5439617abac1cf2520fb0aa5e3980aaf139fce0859e4f22032202773ebb921f7a65666fd815e4d17bd1845ce0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c67f76bfa074519c1dd5b51a51c01af14caacca3604556e1bff168b804faab328064174323956b40134bec0f37b4b6c3023100927d2159f830e4e8feadc34e44176a3b103ecf2c926e28dfc747dcfbf8588d1e5e5287b099fbbb1fa7a846e89f49b43a0302047c435bb500673065023038fe1a17192bb9f0df58222bc226adf874908bec6bde68d1902df673a14f4fe5e7ac4557b6594a0622be5eb56806045d023100dd87c0707d937848ddd92bd38623a89997851df5d073dc597accab7718b424d056572aa02a08f8224a233002ac4cc0610302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305202f0ff53f5c30aa7689c14a8255598928d2a699727b987447cb6634af52c42e9030aa43f51c731b399b0794a4f89940231009914324bb8a5e3ecbb6e6740518162684778372bb1a577079cd56461603ed204d5f3594f833b673caf7a69fd5b0e00dc0302047c435bb500683066023100ee0216e7e7bb8a70556430e0ba0c7f577682267cc39ee0f9dff03863b5a4e0dbff93128fd53a7002f7db16bce3b93925023100f668e918f196f2f3115d71bb0b670447dfd780a5832d7d247c59c280cd6e161e77b4b97097330678d11255c149b54d6b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a0fcb18896dd10c9c82ad1304905eccd9835c21d2452a7148a23b4a3f65f7e4ad8f8ce1b28b425e1e48298f64c79301202304fcb42ea364ab15688581c350983063204ed490cfe5696b33430d51968a207a48df8d0f79b5ec8dda256ac0c6910b30d0302047c435bb5006730650230600d2a05d4326332ea52f963c989b8f9d22e79197bda40c60c06a8749b14e69405297dace33840dd428519aae0bcef81023100d93bf0b0be884bb647b3a668a6b95294b640c378125035bb7ed9f954f0f66b22e3239c9edcf30b8c644bf9cc24ac5cea0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c6396c3dae0f08e669337976048700453358efc650ae358c31680939f9d0d54d8b7b764c54f26b5171c1ff3ded28caef023031cfb51d0b6d0481e67019de7531bf0cfd8ca521348e5dadbba096c747884cd230cac8de2d0efe401c65b7aa221b828d0302047c435bb500683066023100ac5c815ec5a4986e80b115b24857e36900da296cb2a59951aad26225250e01516be4b7230b360c135d334386a16884ec023100901f66171ded14beb4032f551e10f2cf0776be1f1ab6b6379d2976579481c182e4ed5299ef818d6945805fdb6146f3340302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ae3baa7890da85f348d34f99bd72f47d50237dc83b51f8c3a3ab8629ece4c3c0a322d3d240941dfaeb07901d3cb418320231008337624c9403c8950449fa62679a3aff1c7317d4c621f88df9c7bf7457c96b7431465bc0341e9ab25502812ba55c88350302047c435bb500673065023100daeab0108221bab4f59ae4f4983cd2932dcd4ef464e084cab87825662bad51a5cc3053e4f0d9d8a425762de4fb59a89f02307e9061f9cf74154c3f631aa37985636e71c3a5435c93039b5a06d88ba35e3ed7f2b7ff8d2ac4dc0ab01f1d4ab78ddfde0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e948f6a70e7f8c61f4cf59c45486edea2c1fdb4ff0949c52ebb0b4e9bcb514122d6d205dcaed1c2669d4f692eacd66df02310086c4b162f110d16ef4062cff8a0f31545e3a077bddf79af5ba55841803bec503b78cfa0707fce8c237d94cd6dfdcdc050302047c435bb50067306502303ecc3af99866bd17e8d990b236a9d7c7bdd0a57166abbf817abe60347ecf867b566debc53a3c76305bbf29b3ba9d979202310087298aea5b9b078fc026b372a69553f4ea60c818459b10ecdada53e24d9d6d8666793d714a55ec0130a45f239ec4084d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230486765876ae7de113eaa27edee2c5f4e0ef4c62216af84bf229004dc9f0b9f675ccccc50d6acb4a2cd4139400345ce11023100d897d2bdd14d84f4ed89d5fcef52365c761b86b8ec01a00b2002fe32b5c81462432dcc74438f4cfeafc1cc59d4450ee40302047c435bb50068306602310097018443035bd27c67b8b1c7bcb11135d81309c89a2dc3ef39493c5e4e1fcf02403f9e95a0242ffe684b5a2723de4e78023100f82f27e19ef0ef3c8bf696790e3a0f386af9c235e44c2ac8883b89e45c987f349155704fd12c2f51fe1d77afd6cf9b860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009a7e7e5a6ef116c1d6a5aae9e569fad37a592e09d03607b66f3e451c3c9a8b8df272954da9657647446f1189f41cedcf023100b7ee6f1c9982000befd098434067b9dcfe6b5940fa278e651448fe940b726f0997b9af7612def5d883b3234d833b19e30302047c435bb500683066023100bb5167975d83514e05df0e41ca855ea6fffec6bb0d4482fd989d429c49639ab5913fba29502d4b7e2b3356d5a7c1fe76023100e44ac5f7b0e6d5c34ffd08bd4e8118918799e7a4bf3d2fc0b75610cd4bcb8bbc29a2ef11562abe6c4e3d0664839574c30302047c435bb5006630640230204509149a4535b4a05fe04e8110fa9ea5e94d710f33f207965d7394f4b31dc2465b6cde334eaf99d4cd03314ad1ce3902306051aadcd792b45ad64aca31ccf5feae1306ef03952d6e0d2d95250f4862f70bd7cd557426544266a7bb85de6d8d9b090302047c435bb50067306502301278c024f939444658b0e33e34d2a7df77764fd6d5c60b3df1a7ad394b05f222a796253cc637c1ed719bfa3e3f4c3bc0023100ac4b7b514df831c60c21ca6e5576fa21bbeb1c44b042bf7c0af114a58e900f7fd4d49466c0b388099b85c4d0535be2a40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d0ef123b8caea9d30a2668c0f2644db63eaf173f7c405a5292f887b64234c97b9178404e0dc4ef34c7aaf544f083057a023100ab834b70b6eca5098d3dda0b6a4551c9bc871703087a2550ce6e380cbf2c5f57ff24b8cdfc4db5ae532a8b9d36a0f1570302047c435bb500683066023100a9341d9790a9b6bbf92aa727fbdac14c8428d281ccaaddc2c79944bdf3123b55cde2f98b92fec0c3a6b34e4818238cfa023100942153d0f5dcc838a649d6460d41a62f028266f573ef9b2a02dec8220c92c8236fde1404f23b6cbecc226fd98e557ba30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305878d97e09fe7b2dd9f1f122acecef609bc73ea19721525f87c855389b942170806eff39dc54b4ebc3fd7e3ad26d14fa0230334fc1124f8dbd3ec276d391c4130674c536a1724e2eee89ffda74d5d8c0976caa41f86b5819d2275f806135bec84fda0302047c435bb500683066023100edf70f660816faa138ca9afedf940f68bc98d1cfdbb09a802e03ef55aa02558de11f51072e607b56ff0bca00064807ca023100868c2b540e0c33bae6292d9b25c51b0d418a98abd5d4d0a542b253f70a86e2e882610c2a5f31393bdb0503322c51e6910302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230236e94976b2fead8e250203cd003df2b91acb086498dfab8b4a82a99d76d93da5d422405e3053f73d0f2b7973a0a7aba023100fe752c8934f69806c4e4a3a69e503991916874cc750b02af5101fd6edacb49f920b262987053994006d1dd382ff7ea760302047c435bb500663064023028a2ed6fcdb7aa6c81ea9197687c94f48a518fd52dec134979c1208c77540b8b02a2238799702b5ed181bffb4bf75cd8023058b4c8738fb240319005aa8a362883be9934c11461bde116e4a6bcf30ded50be5d1cbe84e481537b624d36ac5f6369500302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023033ef50623d58a278b0f458e5d3290e08cfb37186d474cdcf26b49cc7c8c91e2b95e62c5b5b35f02453e1c4bbc75b8b90023050010ac5db5ce9110e3eb172bd9e4857f8be840066889a7c85f198592c43823d8e7b1d124d49447a43d017fb06a49dce0302047c435bb50066306402307cd48146f264747aeb85e16b6aeb9be2e2abe9b248b7a699ad96c895ef84b1c28e51219a1a9b6384f45de3d23a97581202303b4e4962f20f7d0db0f78cd0de36bb0e81b83a81a684778c2ed86bba66d0b03cd07867e7831262f12410631ebdc740fe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023016dcd816fc906481910260a30c972f387b756f5a1ca8a809959ac0bddefdfdd47136e7c932ff28ac32e03ba51435792602305433d70165b9ddb127fdaac32ad295b9f930e020b11b863a1308b0b24f8ccc99188d37274a07e173ff7e8ef40fd6f0400302047c435bb50067306502305d2e72bf6726e2ee777aeb6c18d13a5ae1819649f2e002e51d222438f01efec13cb0ee4a55245e75375751a4a3f27c25023100f250cd4a970ca51d6c5cd9cd162629671ff9fccf88371c5831d85e81003d23b177ab9d6e20bf382f61882a8ecc85d82f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100905a813a8728961440b3921503dec467a35ce5a5cde6e1cb67fc3710d65b42e41f5156d363e373d5b842f02bc8dfcc81023100b704eb55a9b2096e3aaaacaf8a344a0c5a35dbf15f610119e0438036517eebbea7de61065bc048e6d546fbfc906a92480302047c435bb500683066023100bd70e36d57b469e7e21f1202391c65a742de7454b73051a58dfbb2ac133646275beb896f4a4f4bd4ead40d6367d623bd023100ff9d404f796f77b056dae6d9d13408b0de3d299a9446cf324d418d6d6e46d7e60356d680dfa0c32bd599f93e1fa5ff750302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230217b307e7482f8e9158a58a56a16facb59dbcb9a69e5dbcc6c3eebc955a893d9e654f2c7f29753479d2c38f26702fd1b023100db1ab330aa46a68643dd840986ea03959cf5ab4a9f42e23e3205c142032e7bb5a3df08024a0a6b094573eba6acea0ef20302047c435bb500663064023035ef5c6efe4ca12c1ed638b21a503b3c6e4a0bcac9ca71558ea95ef750caa6560ce4fa67793317f07b720afd1d54bdff0230390bf62ab9b962191b2899e0f078bb89d1062856d946340d851ed7cd810fcd522f78c7cacb4771c0e224c6a0146f8ed90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023037df8dbf2e8c7d90dd8cc5d26e728452366fc7459b90a797800ebaed2df3c8e2d3db5508b7111fecd70b6d28d96fb2f0023100acc8e60f7bdb6276f0df968e6ef0b43eb17e4afb8dcd0e64f04b35151cf224c25dbb76635fee2f56694ac791bee1bc010302047c435bb50066306402301629245011df849ede71605eab748a5ed05b4f5f7901b421ea9d48c78efc2f060074f4d8df7ecb5af22612aac802481302307f5c2771674a24ae0117add3c4d6cbdd6d63144f175ec8c85969345b9f2e84e9de339c5b510c94b315fa3dcdca45a6b90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bcc27cba4f3254c2b9efe07a02f7834107d8228b6c2f6cabe8dc67fc385c0e1be0d2ad43c3b7f422711aa75881258a3202301e333e8602ba0549bc3df1b02e64a108805c840754fef6f42cdcd3030b3a2bbbc9ecb0ff5c845a4e0769436ebb7c99f70302047c435bb50067306502304c505cc51ee08dc37d340e5fd1829593093594d8bf66b4bd4bb91f76971d10eb40548e3589ee2b4c22397c50f02e4c65023100f0dfb9bc9b734653bc0c6e9a24ba49d36f45ae91c42ea3f7ba2bf481791996ea0f74002f7f0d23d3db23f1ef85a620c30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e92facf45accea566b103b5f32a516c29348d557a8ee204ccbaa50b654c27dd38a51c1ef2abaf37f620896ba5b5835c402304e1358e07e14be7f8ca3b1eaad2ecd014e033574fb8f57c931d84b651133f91a37abb6186a471b8d91ba71d8e27a56010302047c435bb500663064023011b10f39c410c1aeb9c97ccfdb834d17a6221b80923e644af658cf2c80b193fa40522eb936e0570ba23ea6e3b25cc21902303c4720cc7c360c5742b25193801b9bc72a7245bf12ffffc86aec5e13abf49810abb6a52e164720895c3145de323284750302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306180c836b136599569b27f2780e2e9158c371f9ec60ffc167b14e08d3853153d7e53a313c6a257c8e0a4318b4de72142023100abef40b26f7f7313329c4024b211029e59406958ca1805cb8e530548d96e8c35f5e20c6a9462cdb816d5e40a04d851ca0302047c435bb500673065023072efecbba8f9841bda4d15bea77fcf9a90551d923a226ea2d9981bff556c888c16b974b4196d68483ec8464c30971b49023100b4b277aa10fd170ce60b8dbd4c013f9daefbe1346f645ae019151c06644b433173efc65c8a601a225ad74c6bf1e56c2e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023055fb38177dceba531cc1b24d5b2c5af28d7e794319e5a526fde94f100bb0ea971fd82e35da9f385bee0c5615a926ccaa023014e569d3ea4367324b90b7045ac6280dcc0a2fa97f2299477f1fd11f2415738d40dd53953f55ef4683b6f049ef0e18f30302047c435bb500663064023074bb1e16aba46556a3b51615f793061792e2b14e364f6e5a6134207d4235e58614995c49cb3d0faa13aeb460433cb9b002303b97f95fcbe67458c324afdd345cd7c80d27636e7db873500ac4d5a97123ae95fce4a1f6f32ba656a7cc2c18f03c89160302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fef0e217781568e9d1b9651d095712a31db939266430b99da17c48be5a7e4f3ca4e39d19f6f440254a481a3a6be1834902310090ad0a449b5d1869aea8b7c049b045dc5699893e88f74ef64049032ed4527d91eb0e3788349443a0f49acb8697ac2f200302047c435bb500673065023100d7a672d49292f80905109d0f7bd6ac7cd1fd822a2cd55bff4133faf19a9a7398e9728fe26f39702a312722f4fc40df7b023010c3bece6d31edcebe4098bb0cc4b02a15f5759c06c9bb6e79c7cda2f50c0ee2186dc24ff7a87bcd9591c835c475490b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301161dcbebbf03fe0a0637ef412bd81f8f581cbde326ff68754911c7ebd77c2c26794eb50549d94bbe2aa150fe40544e8023100a71afe3f01fa42499b518767ca72526d3ccf8a37bfb3d79e474e615334a6df19018e724c9bfc8a8c7a8aa85d42f94ab50302047c435bb50066306402304418cef29a25986b6265fe70f5a5ce8e3e05702f53e77a13edbec720a8f7f204aae2747f8b2b0dbde9ae8968a43abcf60230114d8188b49a38eb3b2868672117f8a3f6b4591da0a587c8673620a786c2fe8d5ca5f3ab182857de702cb91041466de40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e3c42ce30cbc8b7120e8f63f0705f957d0152c6c893691bd54d842f93249507a908850e80eb7bbbe8b114d46cbd7872902302c8f13847fb283e3a94695ab933f3473360d56ebe0820884175705cfc6e6a15db732423f1e891ec1d5a3810f74c797210302047c435bb50067306502301541d7eaa58326c68347e5e42bb91a274e3a4551ed8faa29e3a9bf3794dec029132b7fb28c83145c851c3b54e0b03baa0231009fac134f79682aee7edd4610cfdfb91abc09f9b9628e34aa2046dab0beb73aea81bdd009d104251ee71c1b8ee3cb8de20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306e0c64e862e13fe4e471495f5b8c984ebbb772645e727504534bc2aa6aa61f503272dd231c1ffc470bf21bf459af4f960230103cc5ad5eeae90c94b55f9f614e1a778e9b9d169eb4bb2a8d5965d8544dfd06184aeeef0b399179e0e895a21ade588e0302047c435bb5006830660231009dc8941f54c8fca55b31df676411eac82f611e01771644f50755bafe23a9a17155a3d9c01cdffcd2417d1a844bdf7ed9023100c2fd20a959e12e71c04d26c20ac0983b4e3209e40949081c0895fd351389c68c2adbd9808252f0eb90bbc1b22ff0d7440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306f676247e91e55e1cb9dc6dcad0f00807a066b6253711ac3044c52d039bfb3121048af2bd742fd0e98868ab8c554202a02303d1b9e5def4d7672221c4f7fb33fe9b3a9f4d5c8f12aa1631a3ce387f5f220779a33f1af4ed3c34b4ab744efd23c1f000302047c435bb5006730650231009c34247b72783073cf6bba640cc132e2302d882c8e4f9ec529dbee00d753ccffa52201c8a9c80f9bef982749b56660cf02306028d58f5e103f4eee556e2a9bc542b43c6cf66428d3d704b94fa401599fe1a51dbe7f8683c1f0c5a184eef278c1b2fc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302ebf7650ef5d8591ffc2151ce9a999b8cfc4ad728b656b94631016b959b6f34ae30ce551bb0369fc34bf6dd28dae2c930230634c2c73c9c8170735d0a28f97859bc7dbb33d85b71ee843b94072296f34fe7e4f2166e59d17ed979f6596951d4c3e4b0302047c435bb50067306502301c46dea19f63a7e610fea117c5654407e81be404e4870594c537d321b450ee62e95c8b0dad789f8fe67b818c3c22bce8023100f026deb4fd337daf8de2f52af7b9ab32e9cd986141c7a88b509d71b510e4fa5919890d4c48c646edea4a3478910669350302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c7e4da1ac557db407e78c8b2a240242c45cbc724032129d776e3da5bdeccf25debe0c44add1e600578c857f14bf25b88023045321b0267d8df8793d23b861d54ef74d92d0198dd4c95e62b45627e06d973f8a2bf01c1f4d92c4044bff39ed977ed390302047c435bb500673065023100bac48555937c3bdfa8b23b5b3ebe03b1848f8224ebdf28d3b735e71c0b4adf7215d5aaaf049fad9c3be518a8480421b402303f041ce11f5e613575dfb7841315764f0eed28b2edef44c0efddc014242ea2722ac6ac4df37909ee7f2a03c7c010bb0a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bd796a87469e7eb2d9f74d0ce690a0efcc6dc29e376a5373e4f5de151b4bbb943e42bbb60802e9003083c7d17182d3c6023100b15fe02c2d36c510d2531d9e52a86073d35d668c47e3594bf67a99ace3fede14a4c8559b92b68def04177e65d2ae76470302047c435bb500683066023100f6be44c8563a1a5fdd21d21354ec1d7f87d4b3c7769e777613fb8765a2e828b8f04ae3b6010effa898f7bdd2c5ae11b9023100f34e73e9eb2e5b4e2c46a26ebb5832798462a45c35a94162c12a3c1d07767d0e8d0bf96a466970ff4285269212538bd00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023036124e24460851192ca0983dc19543c6f8b68cda75e9f05be1a8bfd154009aa754c53b17e33d7f978ce44ef9115a78c2023100e0ef0964b7bd36fea70a07cf4a4f16b85f034cffb85c668466829c7963a732077f8e179fcacf768ed38377ff002c645e0302047c435bb50067306502306538f11e5c6b735d5c0366d2bce56ddd8c8fd47b0a58db20a4e559ac7bef468e7cf8858509a8aca6a4dbefee6d1cb86d023100dd9be97701ac40db92ad5aca97ee6393a5a2cb9cc1415916ff581d95e09035cd5b81920ac15150a4eebf0376e7a349a50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b18f1c24997bb2c32386e595a9bb491e1a11394feedb7d9d1c89ced948567124896aa036e2a21915443c0b05c9a26aa6023063142ce9fc9630fbfb403c4ec40301fc06f80a1e8d240aa54e974984428bfc283c20f9015f80e0022796294bec3044970302047c435bb500683066023100b33c87423bc6bb5d6ad5ed9e754a3901cab631163883216585e258e516696280a3f731cb5bbdcdc6c08e9022457e8644023100ff8a36721b48cae9bee1f6b60809f0e8fe5816cec78b81d9e78b7d5dc6301748eb00585b71fb63a1186a9bcd1f6a75c70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310093b63a9f58a495f49a0d45011dda5a373dd1d4a3526e50fed14df026b5e9da06b54cdfd446a5ec494c2c561e011eb58b023100eb627c634982138a27995c3f86bbaae8906c073fdb292d3eb24984674d99d8cf697f4044280f91343e42ce8a5d3820f60302047c435bb500663064023058ec6a8605a92a93ab978e50f867801129a42123271e0a2c5a0f2fff18ddd914a349553039dbf3d6aa9bde341d38e697023059729e84c557313933ad47207e9df3beee8be90fed242c2e069d51199ee7ceff8fa5e8443bcb5a702d646b4775effa980302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307db18976160347d0182a0a7e77e357329d934dd899234ae14adc3d3497775aa9868e3b94ea5725d75cd2063415162adb023100e70a4c4b4cb168ce233ba2cdd646427fa8ea0fc263eec56e9dcebb4f1ba6aed703ac1d3442a836f5796ba9a6c12d38010302047c435bb5006630640230401acb2d773e23978dccb43107f7d6d3d8975e941f9e8cf5ecd9195abc7c7fdf3a1385cfae512232c61c59b5984f829b0230759cb22c7d9e1de4fe9c94419d6b1fcd514ed3ba46524266f37b44d2592053bcd90bdc87160d651e52286028fab18f460302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023072832ce8f7a326ef51b43a162dc740108af51fa70c586dd5270ab7d320cc2c1babc3de9be59c8bdb26bd49e00bef8b5502310089c57563641e88d5fea4cda9dc78ae3e71125212aa519f48e3c921bede85d6ffd99465ae2a9f622fbd743781ef577dd10302047c435bb5006630640230185587828268571fd983bb4e39e1696bc9d41135457e952be8bcea6469a2430a2e7f3e66796ef8b6cd79fa34685cb9fb023014ac126b150f9e56f911f1609e6eff2a8954cff710e2f3aa334dcb30efff1e36763795e20ddd1bdb70116d9ac09438270302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023060eff779367bd4147a7d7a2be400dc0c36f3801ac2ef44ef73f53873d59f84acda5122b8d5b4fd77d997f607ba4a9e1f02310086def0749aeccf5c095ef172bf2bb4821f42feb22e1f4af8a95329bcfe0128133b15f8afbaa27aa5894de4fa6ce1917b0302047c435bb5006830660231009126965895cbd4d75c68b1f2c031369f7510ec1d16178b90070e958b9b214a92a28459f6a36200cecc29703e110fbdb402310083a946c997907d0878dcef879943727b17bc4e1cf68d7311740214b288de699d4e1cf837960ae5d2fc510f762a390e8b0302047c435bb50066306402304f398c4148a1870c04bbd981b4396f097ed4c62b821c585543eb5971d8e505f97fd00aec55f814551993095a5610c78402303b3b9e28bc6a39e21fb0c4169cae08e979cc1a7a7b6700f7b5e53908e730ca3d94062f87fedea0b3b132c764588afc0c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230347747257679bbc760be3352d9fbd4005e25bbb3fc5b4c4640aef26e85a7a5cb423f71ca82a7d150542c00828777187c023100b24966f1ef56020021ddd0496e7db46c5e6f83abeca7bffe83a72969e798556419feb2ebc32e92ae904631e25ab5a0a90302047c435bb50067306502310094b8ef5a2be0c5e8edafeb040c03f3b00f9c4b57a0d85ce8020754c5cabb77fec61b25c249b616bb40aaccdcdc8423fd02302b0a571a396bc8178f10eeb81b4361486ebf434df08b5c7a88a8ea3efc1e2acf252142fb997d7d8c4f5e2d51db9474620302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009c4b6c914783f5c687be9277c02fdd564fa6b1eb4d6cd0e1e70cd912fd4e6012c9f63d2630965e0a8c4bd294ddd1f7ef02306e669c05c35df0d62bee84cfa7cb9af6c1da1d54db3e5d3051572d58149813c51d9447b403c67154e088805aa3a7d29c0302047c435bb500673065023011b89e79ca9b05ed4cd92b7554917d7482cbc2ba401a7879ae182b1da08308ca53c42200d0ac74a27b8a5e835f47c8fc023100f859e8336df99e89165a506e949b9a30b3f63489cfc101a9e61842479296d9c1256dcdd8c93e872e4428b07de2afab1b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c0031fd7987e240decb92e0cd77a443719db2711a0a65f226082746a0d925bc13b515a78b48afd8db07bd10b0e5b3378023100df1eb445c1be84000e890ff669198e50b8c1ec06e58b901dde6150d01ad2ba83822805e0c1a83d0acc1754e8c2cf56640302047c435bb500673065023018e56c27d4595239b94f1e567a13a920497b9236bc35c6966a6575340b20e556c4bb470d8f585225524d4aceb3003406023100b972fbac79f86cd81cb93f70c0b18bc6afdc9348899b8c584ddcff0eb5516d08aed130f733aa350bbca3cb184b32476b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f7e1f8c850ec041acb6654e13a52f7c9c44ece5a6d925f17b0ff90eaa922ff6b5627e52c62f7936012aea36c83032201023100f0d03565c769400a495b82742604538f12d46aaa197615bcd36edc44ea2bb71476313494b20ff35d78dac535ecf4d0b50302047c435bb50067306502307e687e32c80db6620cdc84882c7973d3b474ca20d582a95c576dbd4b1340608bcbcbbf5fb5ec2bd06c5b3bff0e7fdfbe023100d88567a5a294e0cd4a097d9c428801016d2852d86c2525bc1e14b789facd54958b8472935747549ea0a58ca044374e840302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100904afef00c7b9253927c068b7f0ccae6f0d6f0901272a487a57d030315f6a8034aa5bce3d9ecf31b67e7c13b8892990a02303f496b75ad61de2a757e40aefadab95c5005aa43480552b942e20ff5a31f1e5412ab3a5f92c374e959bbaeb6f87c42900302047c435bb500683066023100819907c0db5bfcb58c2791f396f8dc72194cd68770ee60d9104d7fd677ef3e40859a08d5350604f1eb3b85758047bb18023100ec5b06228a55a3cd8cbddf271c55db53f50e12856a7aa3a1f1eade3b17f09a332e792adb16b5c9c55a58c77d2545b6e70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023064df10c1477496a54a620193d3d385d0655287423c1829b3d1665f894ce9b9458fe9176c50ec71ff8ca8218e4d8a2a5102303af3b32747208bcf8fcb6805ff8ade600dc275aa12d88e1006e8f14c9fe7498e26aa07a3ef4eade233015d21ad1905150302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008a9ae6418579a2cb0483613e20606f41a9856bf5c8c980440cd14b051c5fe9d7826df59e11105e54f050de0724a23b3d023012d6a2ea60bee14cc2bdf5fc3fbd6b817b5985c5d632db6c5c3bc59c49ab11260b5180a294922db6c78b3ee58efb4e8b0302047c435bb500673065023100affb3891bc2245201dcbf1a6f086645a00e0073f8baafee3ccbef572ffac192f582065a75c094ef14bf848968961a80102303f534cf34f4c2e84c7731888027ed510c5c9f3a79ed9e7a8cd5b90dc2bf7b257886c2ceb3b56649d45545a45fc47ba5d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bd98b8a2a4c0c4c7f57e3cb0ff86fc47bdb2d0be293126a6aa7039f41e1aaae32883b8298e03565ca6c55844585bbce702302039d010386fec5c59990679398dee2d8531828dc0e6a0a246d26d1129e0c68aa8a11c467f53bfad17d10f7f42f550040302047c435bb500683066023100c4dc574e11237be6f59fb46084e078b06c7fca154d1330105bc2f8c278556cd3ac4620e774eb2068a8569749030f7010023100bbabea97a553541858cce2cfbf782cbb383c1fa5a31c71298de0ae7bd9e27b9367daface5387106271e86cc9d59584a40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ee1a97f337e8aa022244b5cf38ed08ec9a20131b930475641fc69dedf7882774377e68c26179c163045f695dfd02db65023004c4639c2209ca8d83e3d4930cb053f871fbee91506b5e775af69352f81350f20fc6cc2e98cdde50ab83772224f6e22b0302047c435bb500683066023100eb7c11ca960b94464cf2c0cd693b059db13f1ea0e3180a09e7617770019b8c7f59d6ac38164585c2afc8a39fb7393a14023100ccc643c66b2ce2c91d022b56cff4dc7f0176f9201e8d20d10fda904c327946aec0df2680cdee01dc52458f81b8f268180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d225d1a83ad475d06fa6e10272f176f2989c5a4ea0abf33a18618a0ae2e3ca8e10001e5bd1831a54223adc217156601a0230117397e4617d7c53caa233df1021cf5512e12dd503b7323db00467de141db8eb921017889530f587682cc2c14c77cfa50302047c435bb50066306402304058eb6ce85344648619efc3e28b1ea43b3d153cf26087036735817fe7f42167230a2a14a8d0c7bab9f72c7f3be69c4f0230604bc8ad64707044aeb5b23b3ce4b250f35478d7bdcb45c133e7d4bcf462bcdd6a5fe92f1099416b84cb13207d6801b30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d5c5f0b421362c181ad343382e82cd4ca7c6867d967349bff42a82ca1300fa6f3928d76564d73f97820efecb239c8300023021acb43be3229c7070afe49cab6d81061a660d4f863fcb6f288ca06df1b45e1940242f007ab945f25db5af06c78445910302047c435bb500683066023100ff48e4ee3a33d93e15e5598872c079474854247475560f12ec77dea8172c38eebe6849ded77b3ef7444a485ab605576f023100c9ae77382ea922af0c0ece437f1059cec542f85bbc280a2af735cfbb900807b3631c982e25ded0d2a5b026e560fe206d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303ee40891c3e0bcb539ee266feaa518d19722c5a580ccafa5cd569e08278c2603016c289146fd37434e294ff242f9714d023100dffe2043b8a08c9de3bebb506ce486d105fd8b07c8f0bb279f0106e84e497d8475fb2f8e6d92b721cbf69f64002d59650302047c435bb500673065023014183bbaacb3608e3e5bfbdd97bd96b2e6a0c6382698cbfba351f53b5f15f0a50eab25d261b0c9c7b23416f7974d5ba0023100fd322dfdc1988d5391805464ba04ffe6238fabdbd42dee814b0c7814143366dc45fe31d4030d631e42d16ddc9af0293c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300ac1b0d85c23e2612bb0c6ffa44f0a0f9a2fe288ab024b676f535f40b108e05f7bcb6cabf0d142dbbfe42811433764e00230713058342570799300a56ac49de6a95f163796193673bca5a111a2b013be4953d2d0052ae9cd567663dca28f780df2590302047c435bb500683066023100b5755a3480b2a48f26fd42a4f07752232ec10a32c077a4febef80b0144e40c9d5e207da6ccf668b65cb2308a8eceb4130231009a8ca2398979a04ab618eba818e18f69ba7c6c6612993b06590d1bb9d18cc26ae0bc457ed3717f6fdf0f63726bc839150302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302cca156469bd194558c2163852859442db3c91fe4c0108b83e40ec94f1e996a5ca6afff9d0d32909ba13f286cae4a2ed023100a7be06842ac9bde2fe729371cb0335367518dc7349133843ff4797dc3c2618421868f3e73fa7c27bf729a03cc15e093f0302047c435bb500683066023100daaf4a6e6585a9ed2a1470e3fc4ef8d78d4c7a0ea44ce5232d39b079d54d7484928c523fd01a24522f69cdfb42019557023100a988524d7f4995b5b09a7a2c7e24d8a067dde4faac5fb2d508c3b0a2ef64ad6b8ed67cecbfb2fad2eca9cb6f31316f170302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ef190a4a6bf753f828c35ae48f6d7a455cde263d5a65c797094b3b87ba0e70e96cf0239bb550122ae98d2dfe130979980230573c53b1317be711aea5341707cb752eac65887970d11443cc0f5c01195086cc9bce44195a980426e78084318b947b8c0302047c435bb500683066023100848e873cccfbdcda72b51e59b660f96d1048986a305ba85b75144485aa8eef1cdf1c726a01f620eb4329db411d7e44e8023100f8ded8f0145582ee0fd4be6751a76a657360cdb737f79d260e4815d537f1743870c36be21e7d41f17038987852cce5d40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e6bfc1b56c98ca251bc84fd922a1592ff48be866dd1f636355f743b5e298b5ea73c768ba9be80c6b72e2cb50308058e2023053024100f289b5588314a384a17268ae3eef655e0bdb7a25fef4d3915fb4bb06562ecbb5b05a1d54e5f8e01aca5488220302047c435bb50066306402302926bf34867799a180945b3a7460f77d4bf46c7d785a5c33a50ee5d2c5ded6e117c3282c55e5129400fc16e8f97ede19023062cffbf56670de85ebc6fc6df881c9e38251abc9ddc2482f457c8b86e5f782e60dca0a1afdb49fbca22fe550f0ec82990302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023064a9b40c97cc6f2d43a808572b6d6172981b59592cf0b77239c6968375cbe2ee6c79abec830ba97ec7dc138b3f07407a02306df64193e7329cde977718fe49bdd87467f1cb406a1aa138572aecc8b967948cf26010d43586cc679153c8c1840f9fa90302047c435bb500673065023100e9bee651f8e08a74354ebcefedf4bf28466d9c045062bf912bcac42f2933510ee9e92338a01add31fe59a841a48f0df602303809d5ff3127a3aacdd3633e251d5b2c41c2a8cea66a0e224e0eb7e4de1d98eae046003857b99e4adedcdd4882121b5b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a5f1cfc51a3a4ae09d910e64d8f56c1ece0f8d3a1c9ab4fd7412b21cea809e03434a7e338d6ac3612b18be3edfe8c92d02304c11c4b2268fdd39d298bc2575571595fa6f743eca5aac3462de581f983546305392c4a7d62445b42b71a26baaf8dd740302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304c694fcfd2cef2a69b8d8dcf4ed615a5d1e795fa777d5256302bfa1d2d0f8b843db0402a20955d128fee68568756dfe1023072052d229f63adb174b6e31dcd3ddc8a56e928dac4879d1d6ac2b5c86cb421a3cb014fb8ba1d44008b962fe73002a2720302047c435bb500673065023100bc180beb61eebc7d2ab7b85e21ecf05e00d2d1a1ad523e68684afd61f4120c5867b23a205ab900ca61e232a0764ec0ec023036b1c8c57cb18272e1517aea5a3a461f45b0c128bf113ea801e75203fb949469f7c7fd8cfa4b7a079f4c58b5345114080302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ff5be42751a685468e80c36198dba7ce982cc7603c288ed0f2fb2d13a197e0aaee25843c262aee936de8fb8653974e050230566aec493dc45ac5ef2004f4e08aee8fb94ee37957b6fd4bc742f8dcff522024d794f90be058c8255937575e3b33b72d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100de05022f9e1b3dc94d9b914e0268091cbaf0cae3c1f06c18e0d19155225ba9f353d77fde95ab658e1f72c68c83af24df0231008d201a028cf7d1be8c6c05dee5d1e6b0c61ff9525965f60ac107448cd4f37720ad52f2442b2d09ffc24c6d0de07a299c0302047c435bb500673065023100fd1ce9384582720d5cda2ee6ecdcf756fa960db1ffe4fdbbddc633a6229a572c1a8e427579d3ac2b49122204c51028460230438f8fda77a1808cae06557214a26ac9c0cf5f241922d252e668774e830149cb9ae5e97d99d0faac16e8fb48398670300302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100dfc1d2fc33b70bffc9fa4108d125428223bd14768488270ebb27a9f1571e5eaac25b01555ff474b259f0b33891fa904302302ec6f0ced273b20c59e76dea39b058438beaac6be69afeef8bda5e96d525c4feac9e0eda95c4b224f5ce78590a8ec2c60302047c435bb500683066023100b746e0cff94da18b0c1ebe9185f119947773e3035959ad5461f02f86c03ba00745436b476a0d7506750c16fd62112a7d023100d923be464207610a7c803f69477d7eb019e8cd0c576bed682df2fe4d8a2b92e89fd6db510d0de53bbc71346b78671f250302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302e428f740762878861009b2eb35222d9b31c91359fa17c7789a2acce29381b15438a6ae8cc5a30bb290c5016f064ef97023003935bbd0ea0d423bc685482663814a961755e0efd158b0f834be468d92f398e8259027f02aba4c9fe9398e09cdbf1d70302047c435bb500683066023100c5c3dd9ff5f57e19211acb132f5e95f93ef99d460753f842002918bbe6e7cd87b382649495e7ae77e0438da5749662e30231008fd8c282187d96f035f628f035450463eb3650218beec8fb3c4da7b134af451915ba15edce439b5d20fa22996a9833ea0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304b2e2c7e37fd5ee4b9ed974a4e38914b6c032e6e6d51b00c650d433e1f0ae58ac477ba80ef0d1f448853c889c29faa3002301c52fb2798893e23d6b9377ff1e1d676e04f04df957522ddb5c9f322a8ac3dcdb188a3be93924b100a8c4167ed6bd85c0302047c435bb5006630640230575ffe5ecf6b20b7ca4a4e7720e6fdd32a1132c137ace0d00286badb000c2a8f922f7357e54f7052bb5c466b3245ed250230337dc51d31723df39704e18e6adde326083beb72197ab2fe9acc69ce2e31fe7ce9aeeb78568a556757a1287f46a1d23e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310097a195a1e3abd977aacdede4d239c61560e933d029dda7261aaec5a7d6ecd62d0e08326e542cad697631a55b0dd5f7bf02302262033e3817af404223f387d5c9d9b2de641a4251f824a6f2e0ff3b511489fbe5d88dbe6b0c6e077cc1efe11dd6e68d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ec041fe642226855e0ad12f6f0b62c35072a5b0b1218b9a1c284dcb34fe6c751493e8f2564367e07aae80c1de57291d002307d814f6fc28d907d8b4884e407490d922f4732ef3952bff995edd2ea6bcaaa2227f73b03a0ab062a2c2d469f6dbb8b7a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302999b842afd597f5fc813a8cc0facca0516ac84b6793ba3b67dc041aa5eef59db4b2346d3d515ec2bd3727aab9631d300230108616eb5404934992d9e4d62ef717ba74d7559d23aba831b7b7784d3f90197fa4bdf2b1ae9ea18fbf5318bbb76f07950302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f26d19dcf91a83e254b9defe8f3cd6e7faa30011bcc00cc96f3cf121e85cacda12ebbe84c397089f72651525b4b6427d023100ac748341961299572eec2ad7aa3106f56a8592d88d56e385ea64b124cf7eb9cafc10407764da0bed9920f0fa3a099a440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ab96519ed8727d97a8f27d829516d7c9a932e36ed05a692a71abed135326ac9894719540973967b96046ffd74c794efa02302122dcf4cd8a49602b08ceb465df0772e3f720954cf86b2d80f3481b3758be9d3e85c8c87423ffd22a1e0127e7c8b9400302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301e959ac1e39eac23dfcd01bcb400f4dc3d0deb8dc97ef3fdd4dc36cd502f768b851db5c1a3562075528aede835b7cb05023100e28a2d3b9b2cee1b950a194bb504e93bda9b6fe906abe05d0bac4c6dbd2c9b05659e4814bf1cdc66934473f965c3ba5b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100aa35719c9858b80d38c7ea315dc990989714fda7f674543231b773b67d7b6be0199bb66c3d28ce83463505c80e2dc302023100de6c49c4e63599b937f3da435c840e33df32a4628c9bfc2ec7429128f218ee2874a99a9e8fb814dcfe6471fa0c299da00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303149b763bfb388cb8d6facfbfb4329f4b90b22dc5473cde915032331bfbc44b9be4d6529f24ace23d6913a5c1a4488a4023100e41a9720e92c1b3de9bf4716dea20a8a975b292b58283906af329805ff99dc87058a2dd4b517e82a0bb7e1ab1d7631ef0302047c435bb50067306502310086ba55333c101af37af25a8008e7734f69a554fbd4728739bdd157f6290f467b1b2fc3fc53b8c27d39cd7042cf3cf89402304bd8acac26e2155e50af016890779a5bcebaa58588bb57e26727daf16740d6bbea6ba7cdd0aeada3936096ed9e888a390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a720c24869899a8768dd47a44627a1810dde6958d1d841f5bf2c53935e2d6a60905619db96ec7b7e63103a9190de68400231009bbc8aa372c7eb8abec38ada2784be5248a3c279a39822eb165a9b3cdcbec39846efeb6e6457fc6088de3187efe89aa80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f64d7bd7c5d6f0ac7aadf1dc93e40ea80fc56a551f709c67760dca0ef0f3650137a67470efd8458cb89995661269b08c023100b6518ad0e5ddb8a21c3f0ae073fb45f6674918f424211bf682519e4973d581aaeb9797fb25482b55ee2332d3a54195730302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ae63d088112bdd3964f0f7217cadf772dd5257824b639f050c2463d48d978dd5c08d0bd88919894ca84a6b0ffda932f2023100fe49b92a362a04436990d9f187b6f6aa1863370731be24b86f680c6e01a7932f826b5935acc40d34b679d49b911e52860302047c435bb5006730650230024cb979339b05bbcb72559672503b837839acd1548390cccdeb7fd6f756b895a326c26d42ff9774dd82298808c6b9880231008691b5dc0a717919b9563d5caed7dc1cebf86bcaa24b1b4981a2944bc12cbab000c57fab8f7b38a69bcb87dffee75f980302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100969b04ce3132c2b321ab6f0480e371451086d352bf1f7dd5c5baa00cfc342a6c041209345af2a21b252160d2e9f8907d02302f5540daa3959163121529b6e4142e476d0d2da3e261c616649f96a350e7e38a485d37196e660986a43d11e6075623d60302047c435bb500663064023028797e27f758463882b57734176e0d23c63097f445203a35d3641c422f5e0dead3a547b7e3ba47dd491839d8d381bd7302306213b4f98d5ebd923fc0dd19a9b23963fa0608e41cedbaffde9d4a748a3248ccdea0c96ced98cc4e4318d083b97b4d170302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50065306302301f96ccc3735a299bcbbe7bc54206924fe1fbe64e7aae6b0df8823d62249133b443275bd9e67ec13d72ff179eef896bcb022f3592e984e0cbac9ce4c22d88b55383c8c45449341df30740a3ce8aed3c606993729198bc0898558b5b9398499b601e0302047c435bb500673065023100a15fe4051d6ee19d6ee05850954b474403404e7e6dd5d8abe2c778b11dfd4428c7b883667b8218bd3b54b04aa177740202303480c04c33004192b6a4fc4509448342a92d65eb0f984b8188381d55e9640a13b0449ff1006f9f3d593126354309a4f20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c9c5229529000706438564372cc7b89d8f4d538afb59a4d0f54a54d2625eac589d5356101ab2b60f0f3412cd935703ed023061908751a26f4dceb0a44c203e72aaac9ee485564a7d23f247ac45ea3b683ce8af56b05a3088844d82a429b976a655db0302047c435bb500663064023029ceaba34e1098fa9d70e25e3d0cb0d8e669dc8bc5bb8e0e3b98dd139bb31cd7b5dc29a36ee53ea9c282b71b8181c4f902306388ca102bc5566f066d18c4edba0236729ce107953d51b02d83fc0af7434ca6e65e3c128deca0de0cc3b975b67748990302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100dd2e5d069478d76f8c64056ded5da2da72b00fa1eaf86631ac29e97de04cf0b893c31e24017c248cc529e4e5ffde5794023100c0c1886a98f6c296075c054b163fb87714f1f223d9bbded1d458a1708428ffba12b9f0526e7d0bb8a7d138632a6d6b960302047c435bb500673065023100a96f86f7c1dc48a061bb6594206362516ee49e8526791564589b5bad7493d985c64e1a4b50501484282b1dff6a84457a02304184110cf27c968a43973acd2ab9ba5b550b7567b81c374978d149f52b76e9fbc1637fa57ca39f34fe864d599369a5920302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a8360fe630e6e1bb2ab369e63184b98605e19e47444fe0955eec01472b5e6aadfcc3108a5d839d24ff6c77f01513258602300970d04f03341a9f320051cc0d9028222f838720429769d0909f246e2a0392f006ab1e94760659a9af506a482af3bf350302047c435bb500683066023100ebd92900f4e472a084d2178cc196ea345eea13a0ab3c2bf1beff417178c290c888ffbeec16d94c316bb08c0571c8c070023100a93be7d18e33d2b2c663371d49eb28a2900515c5905958a8ca1cf93219e4264752fb199cb51fd35967976d6e2c84dae90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a0d11d8c06a0119607aedace95054bce8a078061f68d3a1a790de33216d972b0137d9d533888209a025db0820802fd630230768e4500f30b333a4b8815b4011bc38315d5f2273878006755c9d46ec8f133cc75c47936149ef21b9d9e6ca1d1275a870302047c435bb500673065023100df2ea138e195d1e342241121646fc5bdf8ce389e525fd562cf0a70a4514d3ddc4b677bc95a1b1186624b910800d6e3c9023078bfdf635a4a1e2c764592c05b042586e47dff99cd83733b50edcba0003a7c812fa9c70ce98091c49af11c36e16a3a980302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bafa981929d360d9a2354fd1f6aed175d3f9d59b769e3b075ccd787edc64a0cc749596dd754a58c4f5fde7ea663afc33023100cb2bae7d646eef71b2b35b53526be6ccabe6106c515e5135302dfddb0930aca200b92de9b9a174aabd89ff3ed1d6bb880302047c435bb500673065023100bb103f35cda9747ba4c8cc0e48e7382931e657f299b40119029236f39ad07c4e614fc3abc18f0f256a4ce64f52e71c6f023018cbdd01f49bec1802f20caf7e0e79b102f7a1f6677a2850077267ca8c7ad2b317aede7eb5fb38dfbe700be6aa9c39e90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cd48aa1f5d30a0fa876eea0bfcc9c3f0d6b8551a6c1d788a05851d63a992d2327b5a41c116fee7e0e43c99eeab0ae29c023100f9d9d5a3a18d69182a0cd39ad3227e3fcaaacce03ccb092f7442f3c3551b12d783758a32930028b98d7af6e4d69ce8c40302047c435bb500663064023051b7f276c3580497098b222d7f9f6b64cf6735b2e9235bcfb17248fc3cc8031838f70afe6d22c70a054dcd456e84a5ec02300fe6b0dce7c05dc8ad229a21c9d67fafbb21cd497ed2c7fe9bfd35f8e8308ef3a17d7d013104f5d559e48b520b3e33170302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300b9dcc1221a92c8268d3420741de3031b7cfc150f766ae523b34ad82ec46ba6912ea7782e208dacf6eb6b35bc62b2a57023100de11d4555b5900a34e3a984a5d9a1d8d2f69dfacf09a875ed8fabf497fe892445f52f72d26207e4d4ad9b8a9bce5a51c0302047c435bb50066306402305d098af17cad41cb5445bc96df1d5138373ed4ea6c7e789b8a003357949e5c559385f8dd29fbd6e1a4be968d444528e40230019040a3dd9645c5d124dc23461365f618f54adc6b78d82ca76cda0e80ba9a2b8e013451bc36eebe28e7be8033d060dc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b1cade25d6f24c95a55c3be80ecbc8b768130d55dd3c533ba5fe78c09e673e3da3a4c649c8fcd5038dda6348fb4d6e8a023038cb8eed7ae822dd2852249579c0af6fbcec4bab6139bb8e894a3bc1c92dbe47d8ae8d3094c4e5bca2372606c89dafcb0302047c435bb500683066023100a3243dfd36933633dcded71eadb1eaebcede508a75a1a4d53cf874c3382641fe493f468728b10ad27bb282b655c4e8730231009a1b51a6c0c5bbfad645b17a3f43af5ae0cc59aacc9d2a441d826c5b2cc04ec6505b56e15af0c8c520b82b1dfbe3055d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fb9a23f0e1071fc7c16f82e5e111862777dd44623b38edc1253d4a14b00a493c24a9f44d3c38ccdd6a494d638e03df7802304f81d6ab7642783c340c440eb701ffd1816b977a1d2842b6c774f2a815eb8d1d103fd84945df7891b915c81b0bfdd4f80302047c435bb500673065023100b6daac7f77787dde4d259ab0a3c6f76811e787a017614653e4ee9180584af03fbcdc488f9e5100ca515ed88fd2db20c802304f8999a896c222cf8e6daf444781c6639b43977fe873275f147fd4b09a14b9a8e2bbcbdc2ba31850cfad6be9de02e4030302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e70dfc9a3ebcc7424e2e841472f64e662edad5354c32eab360bfc1e299826b299cdf052600328880cf86bbbddbc7864e02306e951b268372527c21f65809d58b629dea886cad999e20373523d8da96f6dc4a8976ac47fce8461741374c5845ef25570302047c435bb5006730650230297bdde4ec648b3d92d0bec9aff63814f7e901f5842daba318af7a4537a2e75b739e26c3ebbffc43abdec55fbbbfd012023100d2df974a101e964dcc207cbd1787313a4ab8dd631e2f9522673c53c4a2f92a3f419d0e440d96e8361a0cc7eefa309d600302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ead66b7cde0b7f364c8c62ae0a6e129bc11fc7cc5cfc7c5ae9b598892a2d7b5bc37377b23a95efbd924e8d2b93d51b58023100b23ef256b211a99723d9c0ae1e8696060247c403dbefd63aa5504c5d1855255d88697d2eb5678298fddd25c57d805bd30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305fa23db512f5ac29efab75c103cb4b462179bfe9089c66ef154474adbf8f454309ed66a627fb0dcf8cca2cae90479883023100aae2380310e2bed528001b133013aa58bcdd11a5bcb244e8c894f5bac9ebbcd3e3130c152b5dfed4f983fb6653b59c010302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008001589979c1a747725332e27ac2cc738e0ce4727b0777f4dfd9acb9914bdbcd3245279543e0f9442e3dfca65660211802302c0b9ccc687c4ced83a7d78dd97dd1f3eed77a1a95944cb7af4361e0bc6fe481a83dbf8b84aad9a4684c8281c34a117b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009851b2b3d2c57529966d197f2f009ef36fd154c0c0c43d2a913a5bf40c378568aac9c4715661d3f0323e1839567e1fc0023055ac5cd6d5f083df4e63d071622714bf3b665f46655ffb2ef8b113b6b49382c66b4bffbef5a250de25bcdb4418c8be9b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023078c84567a4040f31a4738e3320cd7aec1726aa27533637606e716b5c6ff07feeb671bfdf2cd699df91cbc31029b02e0b023100e0c3d3f51b4f385fcb499aabac83f02ff6e7dfc28a5b3fced2e158af34d7696c4adaedd2745a40ccf9f94c5d96910b960302047c435bb500683066023100f8ea917da7446d9270225d18b73fcb8ec6e17af455a5fff96c9eb934124349fcc231af7d5f27db28ca3f08582ef5f614023100dd28b99ac44fa86b0084160eac940613c2c020f0cc6949f93af5d227db4ec30fa67a578e62b830010abf58bbad8c90990302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a54d1c6768e5c89702ba8f3cf4a02ec4f166af9a06225662957c67124aa7f139a67087667f3d392153ec2c300ab44e64023004b35c79294a66b918076f965748cfb53fa3f7ce5403c621be8c83d1c6cdc0900b35876e8f345c6d6f3fac43695c0ce10302047c435bb500673065023100ef17b5b21987acfc4baeae0ac11f37c43c7b4cc00e32b0a7eded28c1dbf3f9bc418fbefe87de7cc18e4a6adc5eb6eb5302300d1c1c0005e43aa49a41f5b030c8b58737692191db8313cfdb09854bf45a9e864da50652f92834e45d3b31b32b1457e50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009f2199d698da5cffe0ca8904f7684a723a39a64b2486e1c5c7ff5d771f7e6ed256bcb6f66b7b8bb8f9a8bd692ef7a31802303f0a6e63f14150a35e7c52455ee000364b1f40d37e43f06d5998cfb7214c079c8bcc3b4a888dee154b3c8e0bf66df5090302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306ce9da0f3f3fff160aa87c2117cd54e1b650b00fde4a22f2c22d71c1479a1db27daadbf128e4b96c8ff23b3facdd2b8a02306bba65369ae3381871dc74a038c439861c0bb0fc9943cf1f1a75f26d50ad9dd6b4c34183e3436a3ed75b69f8eaf549ea0302047c435bb500683066023100fee67a2f37df400dd0255ab70726c2a3c9d7b63edaf1c0b8fd72dbd2332163bd47aa5799db59f4aabf8b08740005e485023100a8463d1a2abd680d8bb42152e73d1bb900a7d4ee10dcbeb04a1695d9b704f4aeb6773baea16cda8470a0eaee93e183520302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100eafa450b0cdb8b100a289044f71f164a02b6225d2bfaa4098bef812e3e458beb003e61e1c666400a8a005769a5a38b550231009f3cccb061813d2912d66c261f9a7f26029d33c73a4a89eb10753991598638710722fb4427e72de8864f9e2b1ce3511a0302047c435bb50067306502304305d4da6799c61aa4471e61deddc50951482ffee77650fc01e054db5bf9bf4d85cbc32013fca8e44009641ee028560d023100cb33bb20a593d156dd43a0ce022c309b06fade2ab4e66cf82373cb9852881556438896449a8d58a5b030f1f26d97f7a40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100eb8795fb56e8f9ea1524bafeaca89ce05fad119832714d54f261701d6e194061fd8be0343f73c49b0b778daa164df4a5023100f5a853aa6fe09275a309f917a8d8f5b3df8570fdc41603dbfa118c6dbc0eb7cf5c9d6355225e410b4ed10d74b5517f720302047c435bb500673065023100ca6c22f0957da3effc1e329d938ec68f988f9dc18d5a28abbd48a794df4befd310ea7ca944200868f6ed7141d1160d1002304280e537fac409a88345d4ebcf365ade8b30ce8e6951fdfce1b2dd59fd52e8360b1db5cad4e4f96143a9b10b7dba63790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009a33144a051d3ee9ce9b853c26f0f0303b9d03fdd1272410f7e00793554ee51e36703463cadaa43b58290c2d2f0b1617023100ddd87c644c144b758f5969bb907d2d3ad31706ff4fd7c2f9b0449d620b60d7d5012c5201d9e6524251ebb2543b0a3e4c0302047c435bb5006730650230380f3bacdb68a1482b6235cd20f550810d76350066c24958d51a8c20dfbf1a6649596b205faf34e8250b46c985200452023100c6e1c85f1766bf695ada1a3c65fc4620fc940bd1288be054e0d8ecd36df4b11e165ab0d6a5acaa0719228a2ba46e92a90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d1ab21b299d8f5d66b5209e3ea70cc3ebcbc5f7f1c2010d4ad7c599fcd6de516978116136f0668bbac411c754363fd6f023100de17ba2b0af4865a0f343e273c4401761e51ddbe7978259bcefc762faa3560d83e11ac28ad0c4335c3cd67ea8b706b480302047c435bb5006630640230224a4895d667feb819a95a90eafc364c3d001d8910e883eb485e2afbd07c0d8787a9458158860da0755431d1eb45b2d4023074c5ba982cde346ac9beaf8cb24b2b9fe3dc6bfdb6563acad236bcc11cf78f0d8f3b7689cca5fc236242cd455a4bfee20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ab57bb335e6511324da5877e4f8632bca0adff1e97d75564edf2e60edcfa2ced19232a512f5b9942289a13a1723890c202306a8bff8098782edc136f9541e8605f222855ba5de71e88914ec6ec3fcfb081d8ab0c7fcaefc31ff99ab6a36ddbc820150302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100feea5c0829a6b1e6e8775dafab4e2c71f6e731bae301e4651e04bd67d7308c77bcd48a489f81eda4f919b121ad8539b702301479f74867210131c138481e4fd4c5eaf662069f44276a56abc3f244e2562715fc6c550c99e28e952fd336251b30fb9a0302047c435bb50067306502305fdadf69e0b0de892636bd7d1f8b0eb1837082668ac9431f6189842b4750f886e115fcd65edef95adb6e57aa05fc7cb2023100e33156632776d6572830873423f3d9f585841152da43fc883c550595086ef23e29804676bc15761103331639ed7a250e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230030795dc4fd20aabe3e4f23f08ac4f53226b12b76d67a823d90988dd5c067876e582d700ea1d137d162ec322353f40da023100964eca888d0d3efb73b9e0947ff73f2ef4db05a2f50d4de7031fa9c801c427ca6845c0ec84d20701357e6165dffb0b480302047c435bb500663064023040358b61d6c97b70f8d373269082703e637ebecece9098c75f4c950b2a096d7b531710a1ab3f44bc92c2ae2424ac483e023017b7781688c400b7850e19c8be51cdc6c996c67ed777c6ed822aa2e2c84418dea24a987a8236f7b536da2c43622e49bb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307f7ceb3810121415a037403dfb976e8653443e68a90d2d5d1cb2aa0a940628328acb2319bab8195d5272672a30269c4102302ba680c6c3bbc84f5ff1f8669e92a531ae0d0dc92059305c672264973f83e4090f7e989011c4c253d07910b8d18d737b0302047c435bb5006730650231009377568e5a030b8ed96cfee479116fc4e70e0d08d154c9bc9975725a97ac4ef15963b7b057de40e999c548664c4953fb02301bb4e83705d4010b1265f91c8bd229861758e9abed47e5a22fc487e9b0f0c409d32f4104ec04e4e3c6b3391b375daa510302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302ccb714cc430bd92cb916f8d1502245598080f893353c58a91bee44904daabbab5aab0a5782f0b9cc804c0606f8a9235023100acab422e212cff10edb688b38a7ab5fa64c682c2b9e2618425b81b52eb9d8d149a45514d8e2bba55870aceb68c30c7f90302047c435bb500663064023044e7acabc73c0d879784f17e213745ad4c8ca1435947f81842429ed2a31c8b0c726514fdbc0085427ed02513e04341c102303840bc4c7fd45b4f7d3aea40eeb21d8be1f698fe03c0c662b8b53ca8d12a299fb6631e02d95b6510e6e389389069babd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230109843b95dc2824974d1dc511577a7a099545484a94eb240b0233891da20194a8a94cdeff821db50ed6743f8e15fc20202302824bf1c022b74ba6f9d7e4801c14db5a495be817912b291023ec917e37ddee803bd2dd1ad6f3a3e99d8d59365e104160302047c435bb500673065023100c057c0b14840c40c5666b954b43dda12eaabee83966d19a2c07b998459036d47f1b415921120c026bf3cc5becfb4140d02304427a1becb791321366bf67f4cee1a4491295ccd0dd4eaece4d6fcec89cf0cc83c0d68ec3df4773d35c7c4e3e07a83ec0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a27058dc72906a7ab62d220e90adccb2a00c92861373358bc6b21cd94f44d2d1e4fe3f45ef742fc447ed1b4bb23a75c8023100cc36a74cd763095ae350308609d2ca98af73ef5202e5f19a485dfccad83352e2ca52cb7c08de40749b2dcd212efdbbed0302047c435bb50068306602310083d9d1e1b1612fc935bb3556261b96221c439dd379757344dc26402ec2a4fbfe6d5145d34130b239d86e75df7c1edc89023100bc25e54e89450052f860384a2a1b604b4fce172492ab8007a3774381665623d863fa212c1670599cabbcdd42f55b49df0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d9533ad12363b0fff6b0efc22bb76cc3a1624c5f5bb170f46cf4e884abb0b4e4e5cc5f8f3318d107d4a07da839603bf0023100ee7443df761827d43ea4a6553398ff67890b6f6241ac03c38e586267fc175428a38af6e3f351189c431e9e45a2c7463a0302047c435bb500683066023100fa852028dcba145755781c9279991629e671f6c96ba1a5f28abad92d0cd6250864d3fdcc21399018e4aea05055384cd2023100da964fe0bec64fe147604fc584afc3ce07924cf52c39993c66cdd37bb3d03f6d07252839cf74d443b63c1892b13b8fa70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a4e6bfc5776f67f2d26656fd1c4b6b1ea904c63ab4d7fdcc89934138f8e09edbaf204e8f9428838d4f78e7e42c951b0e0231009cf37b33680e28978b48779351747da08340ce7ad9a9e3bf0bf5d44b63c224a051158732403d39c422b4de4b87d8d4d60302047c435bb500683066023100b22054cb9c7f2658d1aea9116237cc3652adc64955c1b873d7ceeab0054145c1f72dda47f0e6fb8cc978610ba302ab16023100c611722aac240d54665757b6cf3d1cc203b8d8f10516227e159a232f7914ff2a536f5b1da7d1aa50aafd79f5b51b809c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fda203082742c9d96d396f1202886c2038213fa32f9d7f4ca1e2f64863985389f8a313f71378fdafb9c502b251d84f4f023100b192b752f73970a1309958e414f6e34a62408658ceedd8776ee2cac415757629a773c8783cba016867113e667dcca3690302047c435bb5006630640230244247ec14ca9bce2a64c332d7aae5d2cdd2d5c402502ec89a55defa771c9e5c15524efd1682beb4f2f95b65fe3190330230704a4ecf69b196546d17c2cbfabefa415c65e44c96c08db921d303a8732e16dbb14f99a3c9c09161adfa51afdb1527f90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cc20e702feee508ca01095f7feb7ca614b30b1c56aa69fbe7902b4f7c92708f06355bf8e4d4df8152bd397e42abfba3e023074ad0d4313bec5bc8f865fecee0e563f5f805f72897706c60b59fa387985c57e67b19b5a0c03d0d0305dd16261343e100302047c435bb50066306402303347897a82ea97aa0c741c80b173690321de589b36c457d95063be4610f7652a94afa83b619248c1f90bcb9ff15ddcb1023033877d924031a6276635332117b8856aedb0b5d0887a49dec6247c6e2036ca16058b99933ded79e446330af93a13a0d70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023005fcf543e09f17bc49cb104ba661640f26f4475b45d505ab3d462bf11e25d4f2f8a0f6e461d6b413dfba86ee4eb1cd1f023100d0244c2cd02c34fbff7c9f994c00a317203cab1a34c94e924ea8699ce1cf3a749b853ef202fe5699f1cafc02a3cde2080302047c435bb50068306602310083d900f5905158a783356ef2ce0bcf02f97fb5de6d2706d409ff82af1bc9bfec59b04a3ee46572516adb39d3fc219eae023100d79b9169ab223a2afdee42fdfd9b9be1bdb866b8edc42b1251e4df0e5872627afcbc654454fbabce9d0da6c371b913540302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f2de52994a5fe2f15c0bad2f6a27be36d3e449a1c8caa69ca3dcfa241f3a7319b900800c0aca62b1d2611e23a1b402bc023100fb00144dcba2cb399f939dbcf6c7fe82e5e98f7705422dd4c403b5cad75dca49b7d511bd0db98c98019bc0860031523d0302047c435bb500663064023035c7fcf111a5324ef3b37bb50d22c3038c519ad8557f862464a137a84271eced645367a32392c5bc9cbef04efbf2fd60023049e8dc63a5aab0be2d764e0f65e789b31b1bc34a703490f478cb7327e0b091a07342ab5a8852b38521bfa19af4190e6b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023070a86c3cbd3007663dbcf38856d0ce72bae939d408f3d670d205cb32047022957601d683a71a3a42f695f15346ca23ad023100951e27f559b46de9faa55d4792b2f18d87430f9ad47e0342047407ec80c6a1756cdc4a91f96ddad8d0b46f6a9a9ccf4f0302047c435bb5006730650230184388d723dcced3354dd1511ad3c4b3ba6b6c41311535575578001d2be4147bce467eb4b33da5562176438852457ba302310089beeba12037e95857b6310c82bb3bd1bde927da39e6c83c0eb37df2fcf6e069707b6eb7a9d1ab3a668a34516f7d0e400302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fc700eacff5687bf2c1f337609bb1cdface92462bff28a79206af4892d09e6b9e1702eb5b7a8727f15700d76b5a7a955023100c2030e464ca429925e609ec1010c5aba9e93545b54b8d5d2aa551a275f0cce494f18cba6b8019c01cff58338e9fb83ac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301427e1086fb850c361f8718d95992c659252aead843ddbd6a51c63d9bb84f22f4791b5384631efe197442091982096dc023009cb9524e194c7ebe3f3e17312273671f446df108a2efb3f35433c80a7342eaff49efcc8d685d22fd4d2d8ee0ee4e94c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e911f63ba3dfd5b7b90305edaf5f87a195e12470d2e3cef257982833f21f43aa3f974387cb543b9373afb6f60011190e02310096ebeab1fd8fab58c22a86070dedb5792c2b4dd753d4deb382c765c2fd192829393d997859a93366b6a448b4f603f2400302047c435bb500673065023100b5fdc43a89356e6b95eccf6db96ad919b594cc8d382ad842c74aa82cec54b59e6abe2410d8d1eb23d0974dded94cd5df02302fa491f961179ea296fb9e282b7e43552b35e4982084bbd7d563757d268915b8fbc4314280b0ac842a512e9bce182cd10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ecbbffd6331758089315cacb12c1098b8dde5e1cb77406b43a8b00e8855f839c04d54b9bfb9cec0346992abdde2b978e023015fde723eaf51f47b9a59e37f77e4bb9aaea3e48031289fb18f8f5da777d324f645dd361d496cd0171ab557c23c5e06d0302047c435bb500683066023100b92943fc695b661ac74e93172077d5bb9b1e83da1d3586b8f68f16b0ec27030b05e023145c702f080b53c3cc2b01ff83023100bf2019cf000d5e815665a564f80602ab00ff6d68cef31b1b9aee0642d0839c37def6081c53b5433cf7a1a891928974800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305a6dbc4a907ad28d4d8137b47995c35d7f6e4aea9f012e3ece0b50bf16a19265e10d50c607fd25845e31bc6accae43e5023100f69a7125daddac06ce360d48fb3081b30b587cb549ad9e3d4e39fe340ffa92d9e19bfa1a27e6e8eb935dff999a8c0ffc0302047c435bb50068306602310087db9a7e70af2513d3ca74e26c4e99c83875b5e18a4f416b9dc13a6d9bdae37c6ca8b67b0c6805101726f9ac28e6908b023100975eaed32077b47dd4fead8c4ddf8c204163fc9d6c818c27df44865f79b8299995a4eb6eba7b406bbdd66c078eb9d2e00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b1604deaa2d45fb6344fc35578d20f279ee46ea2c7133ad430451763614b6c60b204974b320cfe01e56d0c96d5ee11290231009cb6967d1cb42f2ee06b9cc8ff7cedac37b037fb602817d7463c4e9a7343950cef03eed5431bd0df32992dd4bd7af2710302047c435bb500673065023100941dc492e53e17a278fd86bd886c742b5139c90706bc34ced4f7b376eb282cb84e6e0ef218d66492e90d3ed807f20b300230054210a039428b2c66aef59f4e56db4969cb39683161ddac0e1fa2fa7890c0292e68aaa35af334503844bb91504d76f30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cd68d19d4a493ec2ee430b4e2e3910b0aae241dd18d3d25726f17b9d739d125b515516a8c2200d77dfb08bbdfe07bd8a02303191e4efe2e46d0b7e110c84e66d1ba76e420f746fb68b83f08496fb1241597763cd9305406b7199b3f8d93eef04e14b0302047c435bb50066306402305a788cc05f39c0c5b76c7913d48183f7425cb42ec9e586c38c7a0c6e454c0ec6e50d519ed593e88872366a4017e58a4f023068bfd3301dd1e50a1547701685c39487db49e24e68b5bb88195881dd2d95b50e3855d52bbd7e8206cdf0101f065f3f3d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305395400ab1d84b51f1022e3dd3982d7216d8c005fa67e609a8e2564f9faf5c58534e9f8bb49c5905d411ecc36fdcc25b02305e09b0a02b13d861a932c1654b4a78f82328f2747b40ef716021fc812900501808bf5be00b04e3342c62a8a37d03daed0302047c435bb500673065023100d8ff30883d64e3750b22182ec326da28bbe64375212a7cefac393018961f85685e47deaf4db35eb6869bd1ce40f7cb4102301ae1a8d676129ef21fede2b8d07f817724ce4b9c85535189879c77d3a643e2001fcf16b33e3cc94b511d53a58c4969a00302047c435bb500673065023100acb7e9ec1c18cfda85536a913664fb8b09f4505f926e8100d3c21e6552ea31ad0d556be27c7eec835ba4efec51a9cd580230635cc403281636326b02dfbd46e98eba6e231ec08fbe5ca7059300f6b1e485f92df2335274ec600706e02f7dac683cfc0302047c435bb5006630640230358e59d82b0f8a2bb18e1b4f7c8fd64da590ef290d6d709f2fef023e7afaacfc9eb7136df6a5450c055e29aa9e6b4d96023014514068d8da68efd7f80d3e8427302a7cfd113d9f2fc175dc8c98b6f513a9c936d60e86bc3ad764c1f4c276ee4c1b120302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d198f9bb02e177417c41a561507bfc363e3a441c00e3013b4c75e748ba4e0333dd3dd4bb0075dac3d2449d217e95f8b4023100c8de54703fedbd49542d8dc42f0e0cf12e84f5fa4cb1db7e338201174992ad49c31ba19c406cb1471a1b0a99dac081570302047c435bb500663064023001f946d84a71a1d713170513b91eb25eef97c5d536164de62dd0556fc7e29c0c72cf928d51d1a81d4882a50de507441c02303fcfd0eccf054459e6a8658cd6d11b2fd0aad4eb1c417840ee86355bc8ad8a8c44f1d4b8cde20cee07547f8ce19db1b70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100dca83dcd66b9a5ee4a02231000421aaf78f36c607e74aeeb6b9ed6bd5f4bdafdce3929c6fc5aa155b37a68418fa3a7190230319ef850c41d00d1bf1d0f0c82f2748a08633e7a47d93755923d386f9f027c32e0a1d5ade7268e4076ea426dc39cdfc90302047c435bb500673065023100ebeda733759eb799df1395e7631f365634398c25822eea831577dd2d9bf03306b2f6d196d21e41009ad8562cf5d9807f02302713142e63307dbbebcc4e350644296cafa329aaca0c4bd60cdb482201e0f1634cd66b271c4520731259bf1a110398c20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023041bb62695d1ee9c607af35fcdcadf1614d23e40f8d656fd13e4905db49e4c6eceb3a7ddf10cdf349475e08c919594d9d023100de18cbe8a212ebb07a487c546e7602c075a69fbab3fff2b1121c0dfa6356c74b9af883122e6b478bb21af965acd950880302047c435bb500683066023100b092fb6d5748d17568283eea8573eb417926748dafbe467ffe7bb1242d4ed73cc3ae6ef7983b321d1c3fa56cdc608355023100ec5537db05b7b8cb333309c0da9ada7dddbeaf05a41c190ec51358fa83f0d49a1e9fac434be84a36e672f42eb61801ca0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023071342a3c5095c966117006eb4b3cd8ccddb663ee9a7cff021bc30d34a5d00bc575141ed860aab476282c169456cd2eff0230713662f088f0682d5b03e15a5763b85642e1710e72849e8e567429fcb6c16422039be25ab56694b71d9b6aed7ef27ae70302047c435bb50066306402301b5c328a238f662a501ee40cae74c4ca0414172d9827f16e18ef20f03ed65cf63899ea6da628812eeefca35f1086cd9a02304c73f1cb147bf5705e6096c406db98d04e68aae889ea27cc2f458e73c6d55a0dcebf2ed411432fe9950eebf0fff458860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310091926a17ecf28bc89dca7cb9edf058108d5f8dca8df72d26073e5bdffa85bf0dabfde10e7efda22ea26963e149e3e61102302520c73e76cbca14e9074780544612e1114064f542dcb3ed3d70f60a23d1674361d2db3f3c519d9923dda88400a8f1050302047c435bb500663064023041a6c15cf9b90f138cce7e31cbc5a4cbe9030273af1cd806bcc9597d86584faea984154d9f1ce3cbbb6d55aaf726eedd02303d0dc9378da878ea97afec07397a15d46782b0f419a184516df74017b7569751668a6a5752a9a78f954d5ce5872dde830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023071aa4e51e55b01647c5c9be1a0f878e47469209aeb732acf896be0ab555e4ce8b7d563d95c182401624d530ae5c5684e02302d40c09c3948d83973fdb38348ac342c27508b348f87b86a383f3c85b06cb3ca3444036679aaf99a2f23b2f6bd4358710302047c435bb5006630640230527d415dbc12fa287f30309eec5fcdede86f963c66fe945abb27dcf722c7e9b2e62c58adc573e03e658c5b0a86216f9a02305847e79581beb543711bfb7cbb5f9847e41b37e6a8ed2a7ae63f44b630ce1f24b9241a98d363d15905a726bcafb857e10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100feab43a5574ab2241f81c4b69d55bbc0287ea8928b6655e99f63fee6a62f9379ce758b3688a179ab147da3099040f73e02310086f28ec715527e7544d675a8c38e6f4fa6f39a8b8ceb87cd5c324ca18847f3971437cf20ec90b333b5ba7cb4e02fb1d50302047c435bb500673065023100e8f9e8399b58ba87c2aeb6f99b143b4afb69d6ee14503e9fe0f00b097de07694737ae91d15cceee79a238f6b0402ed95023060fd136864a7b6e5344d2aa00043150b1001044435e011b7af51b4698e1a965c6fb3a8ed3063cdc090861e6a77ede9990302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303051383bcf96c1f4f8babb84aef7481a06404763608f54cb4652b547aea59e98eada2d8add7229c7b58ba97f3f87ff37023100d34041e7b5a09ef6e7891a2e65bc39399acd0b710542b1e15233060f40d8c3ce6771b16d59e839d3cf2e7af6f13bca890302047c435bb500663064023034409ac1eb9bfbef3441eb9e38ab1ea61498545aeccaf3bf2f02d5e0c6a486bccb8289b05a3a894e7863ade90f6471630230776c11f27fffed637394cca63e6642ad36818d496e6bf7c51611c60b14e1f5d671006fa2bf7f1e2f1e1045da3ae6a9690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b11f53585d011ce5bb66d4218e0fc0faea369d805af15014cc2a0861f0da65b18f197fc37aee510a86f3c62373bbc978023100caddc7128824615adb1f9ea032f0696d5fd4cef389d53c8f3e415cf368ad0d51f88e602bd738f89e2a14e47f15b109b60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cd21a9f7b0010899ce8f6c5151c506dc34e8037b6ed86d0b416fcba9718143070b48fdc5850a65c495628b6d1ed4382502310091d0df8c1024ecd8f83f2e64a8a019b510f94a36eee8e67f03bdf36e870747f98d22d868c8cb41ea6c1cb41d0b753ef20302047c435bb50066306402300b8179957b2c127a75b22718cbf67012c5510decf45c455450806ef1a6d317869571cc24fd5431a43512be2a926444aa023003588810531eff1cdce040b03b51e45d2cdf5b179604a03911c1dd5b3ad9e099085fcd227b2e25a133d5b8886b42ca5e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306697febe6a9f8c35ca460983ed6ba8821984fab34e263b8aa8b9cf9408e0a1054b6ff7adfded3e81c202e4e054642f6e0230209719654e4c88b941099d86d34ba136f0864268640201b397d25ac5e3a298e3786cbbb5cb8ebbf3258ba32b398038130302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303c15983ee516832478e1a823a78014946f9cf7d90b4fbc0961241fad8ef95383e603aa4ff1122ba19c390c91254f0b9202305c5b549d8819653234fd01140083a58c43ba8e65c4ddf37ef98055085e2ee88cfa0fb05b81c0a99c9600b66c630cc2090302047c435bb50067306502306dc8331afef7de8dafdca8a60e4c0e59806e2300971b5cd4ac37175886a42ad152fa7fbfe89a6fa70fb6021b28e9455e0231008c38981d87273424c939acba5d8964b2c08e6ad2c87a276ccf97300cc1b12ed0f71bd22b184849d19c37decde870628b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302333105cfa728e8b5afcc1016f6bf4fa181ed61841b04df2945be3c320276a75936aad358062d8f69d821f908b16d97b02307f9b6df371f3381cbcd0135c39348e45c910156b291cf71ca270dcefa184630ffd594cb65464434321344c738cf7a36f0302047c435bb500683066023100bc0416faf1b23a58288a4cd05f49ad40d8b5b0cf35ebd4c630cc53ac0f388794544ccea0e373ac756210280a2a0cb430023100dcb42f729dcf2c98092ea59b59c8aee7c76d5a4632c419a48334e76b9f93db02594554fa3fc66aa20059e6d133d2f2e40302047c435bb500683066023100fead05a0e2c832ae50eb4e07d6137361fc06d12cc259ca5aae6558d506d86d2d1fec2774fc23f9c90b6d8f1504972288023100dc7d939b76c5fc996e94942bc2898a08d851babba75dbb49bb1ce5b78ae3b315cebf91ad13b7a4c77cdf28cb805b16920302047c435bb50067306502300e974246ec971b1840cc7711b91fd73f8ea07299e63b5909f65eb91142c1bbab89e6d1bf20e33278f132824abf7768d1023100b830cffb0d6a0cb3b2545743390beb7749505b737d1ec0f367f526b4a70901e78094ef6311b0052b8271dedc387044b40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d73e03495132d74d287a70b0396d366518dd3d384e1b7d3c41ef2ef9ed2bd7af275ddc6a55d273f8e625076577ec6cce02303e93850cfdc7eba13371b63e94cf630e082fd4af44819f3642baf91ae0bdc7fecb8a4916a7346e9fab10b9c62f6fae4c0302047c435bb50067306502305a94b58a81cd163f70fabd4736641943286f61d1e7d720ec628408b8468de85ab00dde8cb52ea0fdf65496ff21800dfc023100ddbfee8c0a639fd43940182607d629a61f2aecbb5c63110f76561907d7505c2a3846ab0b9a1db4202f827e0907ef43390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306bbeaab258bde7601ec027a125341b10450be4a195e57f8d4351bdd628ef79996217ad2b6346187f31add90df8dea6cd023036c5cb05ea2fdb43f72e724d93be646ec2801d72b06b8b23ecd9b8c17f9243ac0a909ef540fd00e0c995899b70d25e9a0302047c435bb5006730650231009474b884313fc5bd80d27f4dbb7bb8fc2c534e43e40e1ae42ec38124f70d9c00235cb4528b4a5e20cc1329f6d69ded1d023078ba5bae1c7c5b7eb2367eaf15175288d1a8948386097b77238de3552893be85040efa7bda1e8d7e00c38fa65cbd89490302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008c1530c300fb4ac09007a2bd8496dd848db04426b9035f5afe956cf38df02a1b6c179afea2a00204c48fc2eac1a2b0a302306974a85bc949f60cc79bbee911fa81f2ce5b05bffcf5537927e3b41e0075e95c9a56fd78f128aad6eb36e5e683369df30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023003892445b82b222955568db2fea16370846f9ef493f5c0d80033c74514ed9b64366c1bf9134cb7f4a1701eb0a6fbffb1023100dcb57b2e2be0b57de0e8ce1c6f5da4faa1a9b1af634663fbc934c05dab19022d8080db5aa55d34846af71235e6f6fabc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230713cd2d98528e0cd522048145d73cd76c6012c11e91c58d55f5f8610a3b2372c1d35b32b45372f009cecca94ab6e8de4023100e886da49b8b799626a995c2ddb349a6767c9a9227ed1e4d036115ec19fe21f8326a37ea44eb2d0d185f86e1e0ea72a470302047c435bb500673065023100907f9aad19da432111193fb478788ee3b37903f3a1e957080f603aadd0672067b46b39c591b73ecc09e4d103dc20e8db02306111fc0cd1ac3d1a211f610223a96edaa2a949e6a46b3b22f555a0240d85b8ac8b7f3a2d5bd394435f2e46336f2372a20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a1fe6df6ca4ae011f403b816e5fb97d3a00c443eefce96ea7d4afbbf136134b1e927d273c480620a2b9b4004a90d262f02304925f276043976851695b471f96f50595d2f1bf6b026e76cc5cf692fe23323b2495be1d96c48145427aa527dada4deb00302047c435bb500663064023024081efb2aa7c1d898cd8b102df49042d6ee01bc5e33a0845f4ddb7897ecee66b6b1f6dbf72932b2d019408bf609ff0e02304ff58619fd26810f6a3603a9c829299ff179ef81d3e413ae5bf7abbb97223651afe4a7e63fa27f5347be3f8d3e3436940302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230499d8f4de8ac308e779e3f392cb3afc822c9e57f3ae0fcab1592f9d33ba7e3ad08b52394f98250b7d734f7220f71db4c02307fa41ed39996d6f81bd866d482ef9e84dc965245e1acb149222ca432b2239e2232064aee091ce5e3d3f0400d0b9d7f5f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e810dc932d044acb9723ea2ee1d4d80a6afde4041e0fe9c230c3f18d703b9ffe73ea24ab7fe2190c0664a6543862510b02300750401573d013eb15ead5eaed7eeaf469469c7573c79b009f154be56489fa9f6b7a23ba2555e082160397a32447ad5c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023063590f5276017d9929d5c60cc291324a62e925a350f54c62919343b518d8b1140d29078d79ce3bf9691edac6e566c5bb02306b6f4feef951c30a3eb1cb4279c1af02d7c17306a353e998fcb45295c6ba6e3287ca4b5c52712b716324121cb3d561420302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008cb6b0fe86bba8668014b6c8bf41aedb939b5cc14376ca8add7eac10697426fa1f5a1e878c4b1cf74b1f91ba67d28efd023100e2ddc665682d95f369545e6981ed8c3f0ab0e47423d6193f82330fe75eb2c7a6aaa364f299d37632b26008993c2720480302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023079fd4c000d6e941e20dddb598297ed34cc0685de60f4626743a4f9da39c72312cc0061649e36bd0c183fbf5abb0ac8f00230137dafde4b70e30e273a6d99f24a3dae143c2ca5a4172d78f8d401aa961eca92cc70ea278245c7522fcee820e26de9cb0302047c435bb50066306402304e701da4a9bdff4cbecfb153942bb10f46ed397ca95ae67db56c775e0eddaf7d61ab63dbf71797ee36f020cb69fc9f7902303cf1054341b8641eef423ac2cdc95fce7e8acb3577ac86ee22ade5622bb61bf4aaefd1375861354dfa99eb92d27c5caf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f1e9504c6546b1012eae00140daf8c362273366e193ce0b6bfc949088ca11748d82e0280658c350f750f29dfc7baa2d9023100d56cdc1eec343a94dff858e219532894ccd75a89bf4a6b179e4efb0c20dc82412de95a19c3b33aaf2ebdf71d56288e7c0302047c435bb50067306502302060a220ae2dc2b2d2062460573c2cd1b4e125f6e3d6694e79543890d04e4d306cf9fe77135055ca8e08de9a96613ea2023100907354065302c4c8b37d340c044fec78da65b1985b6bf97781984bdb0f7984a12c93e8f0dc05322fa4add067745323af0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d07fdcd97ea292a683919b4571ce3c03d4ae1ab00c4acca7096ee420be48a849123b0b1de6b8966f834d1ae258e7968c023043b01289e34e451bc0fe597b33fb7033b01d5806f623c6d9f2c730095f2ea799a3d5633bce836bf2cd20ec7fdbc3f6980302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f630c612528b5f1a4c9a314ab83bd0e2cda871be7742b7145212e1e9932c7f6e8c0994820d44ccdc5495ca3356ea188f02307ed77dcb4207ff1bc5ef442618478a7ddf6b740903896c1f2d8e3b2a87c4e273ea5d790f0b517044eb45d41b54bae34c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306697f76995f772c0c520ee39d506df035a66be497719e3c5a1d9988ced62806b1db0670fb899e676004a3e7fa048b90e02310095eb772e809cfb265879f5e0f9bbaa8a5601d143a29c692873684f870417291eee687c25ab3c89293257470528f23d620302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023079f3fda71bf7ba3ba78b9af1d3d1e991feebb7b3c1b49a9e462ec2062907b6e0f4f20bf3a513d03dd50616883cdf499502307860faf11e850aeb7d01f0a0638ffd7d0f0cc686b221adf08f7abbfb819d7b026eaed84b247f04311b5582cbd2a8c09f0302047c435bb500673065023100ba51ac2530e3fd2b5e8dd7eb4b0435b6418fa1807e2fa8f8a34b65374c2724aa15e6802bdc96551e7bd2b012764fd685023027656caed2ceebb7039c9fd80ab1e228dce307a9300f3de6907ab9465d71b5ea3a31898495f6679cac2a0659eda9ca740302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008b981352898765d9d866f8c5a21158e24b7a81154dd2d9dd06df49997142ee4935f69726ed07714525fe5ae35e53d2c2023100f59dc20c4ff67b90a473aaf1c5d48dbd75009f8f9538018ff81bc67ed725201f8f9e31a8f90210ab4e5a6359e138b8ec0302047c435bb500683066023100bb13767b2ff79b10dcb5dedc0a5397eaee31ff274352d2ed03bbbb9d2b70965146ae61f53322ea855b21e9549e4794440231009ea1d2b445da73160fc6bb8ed1b1be8d10e5e36f4385ff4a8806a7ee0a38d6fb164ef74f7147c52b1a71baa274ddbff60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301c7a1630069418cec2e8b9df6992eceea185fdef01aba613ac721ee71ad0877d116645692441dbbdcd4fc36eaa2108710230686172de534e57e56a6ee97f80125c3a4533f85e8519eb7fbb35b6fd5ca715773dad396fcdfcc73d041df1e7b2c226af0302047c435bb500673065023100f0dd0b975200e48b48fa3fe92c199f3ac9706bed2b61e94744df3be88b41407fc5f7e7de0f9d43a18247cc2e6f3e0e0c02303ab5c4a4cf907455984ef47d2d1932f27d9a04b46aa0857897c879f330953526820ffaf7c3f2612a4ff5107c4bd985a70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d0d3b8dfb689c5f3d25f289259d87e7dd8d6263af48e6b20993a0056c26c1a213e1c264a0f4221d3eae7b38a696af84002302b500f81ec937eca1ae14fd0ea1794491830570bcba11497e65456bb4ae559673555b071feeffd1b63213470d14d2d0a0302047c435bb500673065023069a200a71e6f46f27c06b010aa29f22c73f309223b7b8fed2b5fe3e471f7b384e69455f33b17c4506374e6f7e445172f02310086011d7e629f189d8eb6c41e811f082a17fba61df41c9e7e90ae46747985343fb6a3d8258be60b1a8ef584fc137987bd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ec4bd7f504b2dfd4857b03a014e099cb8a134c51768c6ebf36975969118b6dec337a9f7b1418658a899e0f740877c22602302b90218e5778ff82a34e3133f155112c3dce6a1202e8dfc561b903bf14424a76213c60833847d9c83e01784d4dee2d010302047c435bb500683066023100e0ce1f56a2e6fac800b584d15d2d1726c5e4826e251fad59e1c4dd1fa1ef9d52d2a9b28cd8a3c3783be76836d5149a04023100c7037106e39c9b03b2a919ea2737b18237ffa3620680e742dd70e42f811658dad9d11425dfc7b2ab2ab709d4d72369430302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100be94b3591e674eabab8285a26ba0c0eda8b65af3159a24544fcb163f66579db96c078442409d172e5a5fc4c6c37bf396023100e9a28980b611ea8d05a7ace500436fb8f692be9194ebabc1a2539d44ec4630baaf74a13b99ca830f6744b7530fe9edbd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304999d5b41234551698e4871a4b465e683b5022e903acde76d23ce49820601a4bf09333c583a42ed2e388114dc8ce4d87023100e6d01813dec714710f6e12132d474ecded0b39f551bfbc51370818f28ca8a4ae813ac680730f6d3dc355a9c9e7e760d40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230585187cdff83fa85e04f6968443b6e9584dafcc6cf8efbf89c903224ad1a0399323fd4cb0a4244f8faa5425db8d244cc0231008b515a5ed4dbe351582af2820466e0a71366dec9fca689e8a62a75e778a7d852868562076f8a94226701a277db42c3b50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230294570c22d286d4ce20f1ce2f2f9ee37e3267618d35c3e23cdf9a00a7808c82efd5c751aa351fae6f88e9353280123d702304af6cd00cc44282d218a65c46a2dc1ddb9292901c64957a301b9e86d10b4f1a35069fe9a6e5fd33086a89b0d6f1504930302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023036f3bdbd090b8a5b5c32bda60cab3488ff9bbfb6bc56665138acab5b36b7397470645effda82c0058275218e9560d10c0230169fe6bff799f4440790aaf7b06339589c5dd4b60c79db198c38065c7356f88df4815d8a36b040ac7b83be097801813e0302047c435bb5006630640230163d02004484a46bd4a8c15f1cd51d37fb49d3197cf7c5805df32c9fbd5dc859ea04cebbd6325d4990024b0f82618a02023016009db8aa1b638d8f43ea5a4bee2b4f5627089a733d946af4646407ba25707d608ee6d20ade980b4c644893db5cdb990302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009fdb10a3d1da57e01b500b894df08a580fb1acf819f62601ca47140bf9c6bdf3e1de3d408353047939b50904002bce240231009c8639d2fb9e7894007dbc15d9d7d16dce68b96ebe647a44cdbdb06d4abb5ecdd54818e58c22c53b7031ff5489bb7d700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023073efaa666bb474810bdd30f7d5a34809656b28b9e0eb4aabe12b2b2027b02cb821db1539dfa0db640e936dc0beaf2ab3023045f51ac19a8a54a07de03574af89cecf063a6672d694c0f454bd34a75f73a8825a24a6b35f202f1dba3ab96d02162a2e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230495713d710164084df52246b28dc431029e44fd1819da945a531fbc8c00405817df2df08420d383ead1b8f71d36a8f4c023100d509af155dca1d584577c88a528b57e3b18b03cafffd6c5300d82540bb5509853f4094666113190491927e77f420505e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009d3c1d289df0e4169dd23b7da30385492754fd79eb117abb645034aec1a8970071f8de72c087c7509561e130ca23af950231009a6bbc4e0ca3ad3910f360775119ee9a4ae77ba815e5627c0d2b1f3145cfc2783fc2a6d3228290573b310687e7970d700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100edbd090faadf3da79065e7388f6c6329255c1385dc5fccd4c203287d4b295ce20c120a59d7eee39250623f1ec7461e36023017e64058cad705a156fd40dd7c0a2700b1fe803927f5e8ab996729be2fec9a155d58b32b824c32a67faad1521e6d53260302047c435bb500663064023049f48088be4419d25fbe9bed3f9d9c84a32f95750c897d63d47c8d07287f67a8fe84382c7b352e9cae28e34a6d77d2520230468a51eb478af9f0dc44310d12beaa9666fa7908546801e9b3fdc6f8c76ca0b2e42cd07d57d66b8f9872df861b8105bd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023031953aaabddac42f4928d62e168093bf2b4ace42a3091a1de1026e7b5abf082e6251ef93fb6370815a172e079518488402304f5d519ea52f7929b1e9881703ed89bde28eb10745e62fa31af55bec4dad97103b27711fe62ccaa18868003c6408c11e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d72d92639173512e051bb41b18e770e70211d3ddb3aa1478c9d2fd868eb3c90cd5b966141a4b1807e21e15049f9af824023100e7f329f65f719ab88304b4515a112c7c590c2c40c8f581a2ccfa370a1baeb80212c4c362bd2fa672e23d2d74354a773e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023074e4a9abf8c1a6082a2a27951b97d602be93bc7cdcb08aedee7d117c2bae90496b9c6f86357ba70f6d7368ae84b5828e0230259c0e0dbb6dfc49e7d6ecb88f994ca25c51922ff5b9942dada642d39e11079f4c6c9b38dabf32ca35d85297ee9268f30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305e0ebfbac21682ea738d9f0327c063df19e47f642940478640127c8aa0be548154c32c695dd80869244f6da4d717f6db0230564b16eaf5fcaf6b40697030f033ee0ea5678dbcf9a050dfb8b55e9151ed217b297058224509eacb58a932e6934a5bde0302047c435bb500673065023100b385f94f20af48ad9dc8b3d03b8832a518ab8d022297f9e53509f031d86a02b30c94ae2b691513cfeaa0d0cd23e3c9820230715ef64b1fb6d18add3c1fe844fcf993065b3a8a4f3a881cc63e7ddfee83263112559d740636a5b87ed685b5b9c1626d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ffec4f8cd255536abcca55adf6733067f8f1fc06c50e114a56fd8bf5da950fbe460a75c3f3ac45be2b14e266aa3bc8730231009f35b0c2be58e84473058db76b354b5c3eb673b736d69f1c627c0688a4f16c7b8c6533b048550a980a55c65f17c6afb20302047c435bb50067306502310095840824cadef312f0fc56dc6fe15c9d28eae7ec06136fc054399b7c72cd72c1184a4fc24704dca44393d1cb000a309302307236692d95037866d9c2b72d4761727bcf9aa8323ecee0e50003dc880a27d8c4d9f4180067716a0a56579b4ca4f8116d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f846877cd4b483cf68ad8859320e4eb9fd5d8b87e5a8663e2d82a6e5519d98745411b4e54ee6a034bef6b9feffee0858023020e9ba098c6d7ae3b1036e23ce70c3f1ee531a529e7df8eccacf266bf17ae24eff453a36427225fb9633b70632a3d0910302047c435bb500663064023039b946185e86c42a2fa5b8a1cf499aa4b10a2970185acba3eda4b8e01a68367fa284801b23271d609db13b6b93558bcc023013b87ad4f5f42d9047fac6d0837b433766559e9dd5227c214d8cc0ca8cfe9b54105b2544b3d43bb515b646b042c355700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305f08135285c692899b6090c7f5b7e9aa761673f27d989887b1ecba2f20443c2394e8a63afe75d7750b1675f86fccb54d023100970e3b09de9a4e16b6a488d73ed4913c95c72a7672bbf1b971b42093345f85802757fa61a379eec3075c12da262f72830302047c435bb500673065023100d4597c5f8ab50923a7ea1f329e77983a35c7f1e7d3498c709ce7aea0b427689833a5d593adbdf10c4fcf315059139167023072708c3e6d2bb0857339311e3255b4b59989a837a206272e41e91b533ebc8b3c47480d46e3eadb90de486d0d3c36e4780302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009d83662ea6b22ae761ef3d8dd4b01896fc60996fd0bd4f66c08b3ec1e08ecc3053d739a8ffc6e87b9e6b762d110bbfa3023100b19050b2814150141ebd1a4d4c87e392675c1d6bea3a33953597b3c9a599208f7e4d90ff436ab077ffd9eced8c783cd20302047c435bb500673065023100c3be0573d10e3c886b1ef7cf72a9b8c788a36ad0c1bb2cf70bab672e492dd3ba5f782fce605002b63a3c038eb79cfd450230718f37c34b253da72281584bbf6162131903462b520791e94813b5074590e65c9573bfb967374a6f05803dec38e5a4490302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301e2c6f69adcf7b616d30e958e88deb2690d3430d68319a8cf37785b27f914e935c4d9a5bab466313120fc8d04faf258b023100b7706cd8702f05897eaf8fa7ad0c586c9de45c1e075dc5a47a4432fdd21885118e7ece3af88d080d6645161a41b587580302047c435bb500673065023100f4c1b3c3b166ec9a94fa077b8f326d74aa78adadb4651c0b5090eea614118dc8ee61c092ea14a7301d24ae434d3d4c2802306b679b61b28328ccdef1e972e0621ea15cdfc090df60cf12f70c700692b4c54c3fb1e529794ca3b08222f34e34d53f210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008abb60937885c227c7933dea5cf21c1b781ae26a17049b2fd8a4d50a6756eaf064532c12758ae245f686e19700755a5f0231009a3ffc014e80d00caa1c28936b0a46d1ffdcc085753d74da3438a11e87df4a11d96aafe59637d386c6b1ae5eade1fc5e0302047c435bb5006730650230435e7b01b6bdeeca3f3b0cb4c95d85c76207f3dea4f35fc1998734dea8c6e103dcda9dbc70aeaa16b9bd3d0b2de6a03e0231009729da8d9ebe885aacd659ece9f43afaf1084e7c4562d6f0b19c0862832d38e71602c90ed5de34abfdce2eeed37a76e20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306e0cf8462643ae0c40ad375f340daf2a25c4d9c1e2f07259e319e0b498b612744378e7323fca6c7cf31cf1d1cd031228023024732724cb6a1b98936d232446c6658ad3ae747f271476ddc8ac0218293e08cb9c9523ac009d6f4e6b8b6883a89ecd340302047c435bb5006630640230568f7155340ec083b71f4461301fe952af96f24e3b9b6a14768c8c80ee5c4b6a302f369dc2514b26cb1c441a0948a06202302ed44301b922769d0884eb72f4abae6958ab01e188d22d702a70f79c2cfeece1ba4d2aac88f99963f4663cc5aef822c90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230754abbd4ddc0eff65d08fee53b759744ced87690dd1d991fa0363f9919e84a47eced8a4abf03ea447455f09be26101f602303bebb1e4461509230477c670b8cd22c71fb8dde1115b503870c1b6b995d48911bb0f938eb0b7831ed09f2f84d6f43f430302047c435bb500683066023100a7069cf89b6f24ceef99daa417aab81c607f5a6369f35fec46ece33755eebe10314f3d2e1578dd3b06a7a30697fbfaf40231008ff127245d8a722a75e169b6e28c07a8eb7c3816461ec7a38ddbda2a3935b375db5b34845f2a0120f996c5c09987d7790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310088f6e68e7bdf9a58cf33549ff2c552b2befc80128f4d72598d81f8b5c774e6ded7b665915e2645c58354187259a895d60230674cc165ded771b5bc209044fa6894164ff6452362e6173b5e052210dd18aacda92435f60f1ed8f721acf6ab80f948cc0302047c435bb500673065023100fec0860be82ba95fba614bd655a2b2434eda4c5f65d71d1840ea58d97231bfe4fe78f13924b120454d49d255a5b3ed8502305bdd654219fec5c2ea25c12bf41d4ffa699938f5df558cb070b3ae30a2594c92625ddfe353065c89b05ffe4c933d0e9f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023073da1ac80ac152e24aeda782a56b307a4fb103a9725b9f4ac568a85bf4e08dd49fc327659c2aab71e43f8a266adbf858023100ce37c8edf12ff1046a3cede7e8f367394b2878926a313df55a42ed1981d29dda05f4e57e19af7d54fa5c97ee37fc1fc80302047c435bb50066306402307ebd856e6967a3f57cd3a52f8d269071a66f4d10df243ddc2fdfdb82520e5e6c3b487d9ac5dc86b393283951b303470202304c5982aa31a1a565b4ed31585108f7c0706f0d1de5cc02d35d3d0b115da198a01c9451c3e567e9cbf26cfdb7fc0406400302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301b77598818992d358493f3748d888180b4f79509972f220577bc2e05a061ba2a58bed4e8ccf110eb07537c95c9d0e13f0230566948c8cc461bb53d137af1be6cee7d364a4d89bc4a6c9368fb076c8a2859683c704de81158924e3f6ff3fb6a99ad9f0302047c435bb500673065023100889ac06cd42792b2f5369495c779034c2b5417f548c8b602961f82d78e130ef1c9a11f32020781fe79edee3bb3a5ea7402306a42ede7e9fcc73ccbba41f2c2dded089d87facc480a5d0f731aba780618f5849fc891caa986c1ee98faa47ef88115100302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100aa28eea16895f75ef1ca7a19298e8c974515dfecd4a9be3563945102c1254db45e445e64fc0055aa7aad3a492cefd730023075f58d16ba22c460ddae246c274482d4c06e3f4c8b14be6e0c1141eb613642f1067b75ce59f7b1348fd8f0cc413f99aa0302047c435bb500673065023039af6c6c2491e1ed7628a7b1d6f9e1ed6102ea811d44c20561d71f2e945f5788b20914840e9563445c1c018c3686bdcf023100eab7a8c9c5ea4f8cf00503d9dd49f8bd586bb542ff5d85489e29dbd4c2f0238df0e61d47401580ffd0510d3cab04549f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306803d1eeb0ab74acc76fa41a338b68f62f13eecc424ed5d3751b14544f5d66328a15c64f04fb56307924a32fd0db27e702300a1df80ec78a2d522c99c66a8835d6ee8792f7840d87dad1bd6d1729fc8772c638b02c4de87ab9c538e5c53f6b0d8a0c0302047c435bb500673065023100a537bd56cebf198bdc7f4bd17644174f5e5359ed9422af3f0ddabf4391f237cfc1de0262cba3b631d5f68b62c229992e023006ad2d8190a732195955960e6ab5855ecdf5fdb9079535b863fe41e91739404c17440fc2999c71615ef543f92aab91c30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306bdae1206903c7bdff53082007e8d1a49a2fe29b1bf83a3380c72dbfdd4e00b355acbf1e272932d087a046ac386059a4023100ff979e9501bfae2018028225d030581609d0e06e495f95e712d55e2359e92476107554500aa62b86bcb6170d98a610ae0302047c435bb5006730650231009794eb0fc51555cb75c97178543eab024a7621231d309bbae9b4616a23c2440591d49a1a607120578929a63c2f7522f102305a2c19658d98ade8507f44a3c8a94f5021c44728a45dc7662fa409adb84e3a095b66b15bb87366acb2e43436c2464a450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c22ae4a1974fdf59f5176532830225478d1d5d5fb52c9a349fb08e27bf1df8749afc0c063f04be271a4ad71f102c856002302109878e994549d683ed6ce451eef791e7d162ded1a51772b253230b627deb4146003f6caa2152a37d297e76a328b19e0302047c435bb500683066023100a487bda15e86fbe963100cb25c0d4daf4fdb6720f8bdd73cda36d7b8f9697b6deccd677bf9c3b81b520e7b87e3c52675023100e150e6ebd074337f6dcd3d67ee20795fbf261d28c850cc929edbbcb07fdfe24e0efc1fd05214abbb8cdbfcd048e8d57f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301f84ec26ea287b794f8c007899ebecd62d5292eb1484540ffa071e073c5945c9f21d2cefd99eae1aa50c477041a1f07402310082d814f7bc6d5a35cdbe9b0bb5e4e681301905999285a38c70f17bc083e689a1bac65aaee35dcb745562b1152a9135c40302047c435bb500683066023100e2cbb8ea635bd34b51b7028aae986287cb618e50cc147fe3d1fae7cad5450c057e1fdb7e1a952fd248c4eab25f65a224023100a2c5a0183a111919c82c9d087bc3501aa89bced20b993ad41c2ea01c953c6fecea39ab7767c7c60ad3f1bd8914996a2b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023004dea0794db44a2dd52db76b7a113be20d22da7c73c5b43129cfe85b1cf57d25ceb17c8e5f3ec008f0894fec44bbab7a023056932ce6997c49b791eea4ab664f70c31208bbeb081c4a6e134c087ab5b1908c7c677e6ccc3645118e4fbf316dcd26770302047c435bb500673065023100e92b28c85291daa65f6e4e80e64049af4c1863a3e447adfab470287d68b2eb87fb60e70a3922f09eaa50e83f76990a4602307bd1fd1c9128ae5d62e623f0e764719f16720d5e0341b293baf0bed60806f795f1dc1f94d882cf0e520291e8903b9a6f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310082802b9bf6556280d9de4772bdd69e7d69007c2a2733fcf3fd5f0c66ad4122b9de5acdf7ee9faca05964f4d55a2cbff7023100942193551d50082bef3278de9974bf3386d0a3281baf408b87604acfcc8471fd51e4a5100c1d903c33b4c748b21c4a410302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303391493c6df8af7ab7399165c76b58077e6f6e24956eb1bc41e04b44d02f06e7510980e33b1d28d78ef2230b6fb155a0023100bc063c65c0042ef9a63e2f1db8cd5eb9c067e3c335c1c7732d0de68e17fa0d7d21af04af60eefe5e473482fb9b7fdabc0302047c435bb500673065023100ffc5cccbd12d21fd0e694b9bb4bb4210057a4bdc285e61ad40d034fea299d136e0ecbe7994cedd9bebbe95310ef196d102302d827169f662384314fcebecf2f525258b68797d961795fef0fa83fb825a80186ecee4e071b18a6d82f4e192ee2063ea0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230095e09d1f755543455a0cdf7eebd067dd285cb343f63aac1ed0faf595f27a4595a41a7bdf4da4980c9ba503df133ca10023100d7f44f35719e76366152858cca067fc2e6f66f27c03c44651801497145564cf2b193494ab0168b4b957bb4158d9635390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023015080ce506ccfb37da5eb2e02b58a30c08be38cd829693ee2dabbf7107c37b84fabb6b6d2c090125bc8ffebf18ee50ac023100ba207a66f675336bba9da59791cea731dec65aad26ff051035a370c3870dfb87465f3ec5549e467dcbf9d61cd2292c940302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e8f0f29c7a26ceeefafa53f355ec7921389aaf0e2b36aa87cbd157744bf75eed8f89da169a79cc791188e62955da3ef3023100d272832aabb0fa839d0a6eb1f0ad77f869eca23f4b262a2230c90d2d33699f5a6c18abdf86fa5838202328a77b4640bb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f97615ae1432c305481e5967f45a6481d403adc59666e374a91c44a08e30dff617c217d9d88d094bb96887f31038ca8202303ef699cccc01b8f353113516dbbd4d4f4e6536ab41d76eca6209dd4db89ed187671382513a6def0d7e6f80d96569f4460302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023041c621c641beccca63b8462defcd9d069c6c47d6d4d4fa59461bfe8845f8365c248161b408e840f1ef04a20b469826ef023100d32154a77260fd5b97ce3fcf7d6dd3f49f72142105b9d6a9dac2f5538f62f2c0e0573d52ac9601ffc2fc1c55b31beb650302047c435bb50067306502306fc11ac994ec807f0fde56287d4833562e584ef711d6f916d942dc72debd0a1b35e33ff1a82796326528a86d84c55224023100e7da84dae0ddb5bf3a61fbea362390e5d2e97c8bcc6c30b34aba42a260db2df726fbeb068a45cb85e5109ea3ac924d510302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230757a4fa2195564fd5aae7c957e84bfd0705a4a4bbb57500b645fbf5cc12da00fb769e17153569a6f2581393fa0e3ba4e0231008a5352f552b726f2afcb12014eddde548d8eb513a5a80530967774dc38ae86e40c03d64a748f664389cb9d4996f0ca5f0302047c435bb500663064023035040fd7321dbfe53c6c803a50e71e1bf60cad96357eb94dcc2febbfa5d79ebe09b245de0d5ece362e054bb03c631622023044e04029b3dd99656510fb74e75e0f5636e4b9fd6b4b0e14fb91b8e964ebe496db9d7da0dd54311c06a17d2023c47cc70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305b016a01e492fcd1e1c5163d1a16b0b744a18e49852fc8c231a3c733335d943e780ddaf0a9e94af0fdd0d4b1ab3ec79d02307f250e2af6caabb8f8fbd2279d61d69ee2eeb8ad7a67d1f69402d352a895823698dee482fd8d1b52a12838242777941d0302047c435bb50068306602310092c3e43bc167fa17307f9bd8b2b6479c725ed47321a2b16256fe2d18002a41be3a249dee8843eaf578d1373f9650c5a3023100bd7cbe0dd18d9958ce973504083332163a04178955082784f7e60f7a8689992cb807e4bd3122b7271ec6aea88b72d1390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300cb37bae3295a4a8730f0dcb109aa0a88de3e8bea52eff96ff9d2a858791851eef5aafce982901ebc6b3c4f4f352eec202301341bf98a7d1ca7f8f5f9f282dc0057f4815bfb0c1013358ddd7df15a345d90ca1c7f158b817cded1687204fa20008040302047c435bb50067306502310090594660978adaf79cb65af4dbbe50ac65187dcbd6dcc7b96d7cdaee7a55fe76a3bf360c96dd99d62db66714dcf3544a02304dedac5cf5177e4f1a579a98d21d3cf6cc120992b18d54c3589839dde73d4ef72c5c6b596b4c4f414a96dbf5f22e77670302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ed7b0e47674cf46a336e0913f5c732ea9aa1124de76a3cab7ce2623fc54fc3545600af641894142a154745286b3442f9023045cd23bde6d9615fcc3fab68a7f3adc09ed0d3a2be23359921017c6e13a598639df452c5935c333a9317bc4ddd1ec04e0302047c435bb5006730650231009735a580731a8a2a3bd6de125b15d5b8fc14f83c5e007dc16e5acc5bee4929e3d5d22a6fc60c7d9fd26901168239f20b02305e0b2f728ec0bbdfd5cca09dd4a02c5a9506381b91aab64e0b51022054babf83fe7fcf9c625f123d551a5a083a76299a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bb393ee68d1b0beea1a8f0ba5fd81de913875528ac5dd96237bb383231d43dbcd754176e60bf325356035e9e7a99d8e3023100a48cd6cebc52236203f59de6851406326a9de5112b0d5231b84e9ea150227f39b33618a09e4e4edf723d4baee313a8000302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ebe78f2d543266f9112b828afe6d711f8ae1649c69ce85268226d792774af3136869bbedce87dedf60559673c6546b72023100e66fc8844797071790ca5854764b7d11adeb194911b3241ace803624c34e9edef83428838713d1eec3373e56a94302ff0302047c435bb500673065023100a54fa1f8d0973847edde41264d737f94ed84dacf528c7ec756adef191e71ffd23b23101ca56b2305575c0313f5316fb7023025270e33d34d4ed2b5805b367b3210c35bbc9b64718627f891a53310d54832e98749d372cf30f38b3530d19385612e620302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300e1f2b826ebb210f9db2e45fddf6419b3b882ebb88fe327b9bb94267bf12e37670eb500d68cfa5f751d60ba8458a98690231008426c8e4c91cfee046bfed709905334d57aa1abfc32e7c33b66aecf528fe997eb05b2e01b2e32b7a8a12fd4edc3a5dd50302047c435bb5006730650231008b645e8b66510290f1e7402ed38855d8cc6fe5a93ae051edab2de75794cf0d765f87f18b658921746ede3e1b2ad2222a0230271c41834b5f3cd23824a1843492f123fc22616a4a89181898ee05384d64823189b503c25443a6f13f75318978146a040302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310093d768bee12230e2c593a1275c71c5e6deece10daef610a371ccafc659761f39b8db79e27ea283b36ae44e95d0118733023100ca5ec3d4ba158b133b6c9d8ff5c81823c40d5a01ba23147d8da0a3ebcfc1c8eca6547c067ececeeaa96b1781d0bd34820302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023033b99f9e483bea8ab5d459494324c5dc1a704e318a503f5d16b083b4aa89422353c48012d57a008439c5c5191bfc9be102307850ae06e304324db16e5d6c761732c1e3f231b61247937a3b8e77b6bcc5dec32f2fc153470aaf94d867327b960fa3ec0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100db7c827eafaecf8d12eca34b591b25a2f1ce0922923b0919aaf2795722d3990ad609cfe7f8889ebb231e2f10b3dd37de023100d358d8912366c0966b1e38dd0ffbca74a4e69195854a07d124b9a4452623b3f99ff3b0deafd7835904a5326caebfaf070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023055f5600064040c27a78ae30a3352b5b2c48918f947a2ac4b1fecfc9735dcdb3ff1b3adda96cdc63661a1a0ef80cc7aa00231008a66c2e6c002d0d62baf189139392ad8f56ab4bc5fd85a5a007c3e75312ea94bb709bc0267679597cf66db66499b212c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023001a9fce4c6428e43b68b36eacd81ab8f1ebb62ca7d9315afc260d19dfba18878c5867ed7ecbff900cdfef44e72a7ca3f023001eb1e83a1abe4e61188675228747725f4051ef675b524dd809b318bbbfe3207cfa42ba2af4e3c37d62fd2c0581002a10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100851a5c0ffcf84ff9f493f492c3f5f86f3d229ebed797e20aa2db252eff9b949f9c6af9a9a57a7222306dc1bfa2f54748023100b529768abaa7964baf6d64f193de89b7ef50972ef525225acd723cb3b1d5e002cb58dc718802036ae654a70f517e4cc80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cff640cc8fa4e3b0edc620b18a3f38c63b8806f65a62bafd053d42b88fcdb1bab332b1a5733021d8da81912a5d53972d023004ec796f445596ede60d36fe8b2749ab9f818d12b1f35e12154d46e7ef2a8673afbbdf0bdfcdbaae1f854885eb9790e00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c0a0a2b029a98c23ada7056c12ad8d60f7e00adf0bf136d33319e192fb7408231779d8078ad3d02e5ee8955a3331d3ba023003defc58f7920d21bda6de659e0083a8ee4161c24507a1164de662608ca5bb1f8cc8d2ff6883bcdc898c617cc08141340302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b35a8ce85b470d05c96ff087b0e6a2848185f3499cebd267688529f2eb933586b64119cf41f99fd4a3f6f505a73fe7770230440eab8292ab4587804813b9efea2da9f99cc2eb47f02a957ae5a4aeb799448389213e1dd6929d7a9e8bc28f2dd66d8e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b2927e8d2bc6338fcd64e8f3bac0f546621625cf6d24dd64c0cbae2c4a2b612d66f426da0d0048cf317586c628294e7c023100caef3893b0853d0cfe8073d73b63d25b92f585c47f8c3e18a228e181d8c3b39c35d8c9420c97a2ef57485a2229de34a70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023011bf522c389bb4bcd74f7069572f2b178be4ce03dfd880dc16f0a9c66b59c153389f691e6334657b1fad3a05ca60871d023077a2dde95eaa537f0c9426d2dc878888b5a5862e46c7b3a7e809f2584636fca4abba0ac28c3eb611ac69532513c5a02c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305acb45dffce6591777cd84deb1406cc4d8a554286d41cc6c67690368110f369c458e9f06ce3832a756342ac45ab2d69c02303187cf6e6fca4b6835233e06d7c2f02306a2de510e24c730073d58f5ff5e78d8f7cae3cf35ec2bc035f7bb9d47e8d0760302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100dab76b3b8821720a5f43dc176b0c6e94fb727b0119d49109c0203ef99ee9da02ab6364b80f7ce9ffa5da71bed2791822023100b5009740ed6c97c8aeab462d36e97d8255170ee5b1bddb354762511f3b3881d5aebd4cf7e8fd6869d30dd1e782e13dba0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230203c000c48b8f96084660347af14705cac024664ec8fc422e4aec9d3e5c24c985d3f69d9b80b7ccad37f971b8e5ae27a023100a1e53cbdf11592418ccc1a01314c6468c7cb08bef000d34fc74d2552ce5daef99a891842c31801c18c74d712465270a50302047c435bb50067306502307de6310132c4123fd8eb258e6f4173c8c384423cb0ae2a038a70a4b97667d18e6b34aa80542886bd968eee8372aa5aec023100bdb494ac7849f69e31d648a8b6ca88a6f743f5e27a20c821fdbba31d36993381737b3368a7b84e2dc843704c72aaaf8f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100de41536eece3e57a1ff65c3df7b30b840184325dcacb158315b4fcfdafb78409cd474e50ba9442010d69c46acbc2d4b1023066466b35c312e27e86d67e5a48b4c1677635286a5da3a5a102faf83fc9dd927c09facbc07a477925a8509699260eabf40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ff0835ffec6a16187706037badcf726be8ed9d534a3accad8161f5e28c84931dda28c8a6c5c11ac754162e759adb7b5d023100d846f2412bd693cad2010749dbe0ce4715f3faf2c796db12bd07c69c6852043f52a6e80495e98d149e3ae66562fb3a9a0302047c435bb50067306502305550f69809dd0e4e3cc8f8b5ee730402a9b6d7b15858f55b7868e3f6ef07f481080ecf4fc413b6bc9cd95bfd9df25423023100d8671978dd1d39ea927fdbb2b988c94625bc0eb44170a87f99d25ca59e430fd7fb171a442201d1242535bedc287969dd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023015d3e3841c0fbb5a8fcd841f121f806e6b1b9ef283e46aa6b6d20823c587d7d0657c02a347a3e30e1f415ab668363776023100d0b7744837e6162aca9e77d3ef093780ae7cd79a06b13ab03170a1c64ed959978305acae9770a5ce59d85eef0693cdcb0302047c435bb500683066023100d8a0f413baff295d027cfbf3eb1713cac6c0a269de33e7ae0f989da941bd0a9c7f90e6e75023c88c8608c6341c28af91023100fb4267a961b50876f322a075c371339a67c86a9d3a5bb48920ed7d0691fbace3cd3ca963d06882ca75f86fc81b1dcc0d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d92c9638ac66763383e46fc5e371b00c99c63b27231531bef8224365cb5b7f12209fe460e30541746267b479cb8a207402304f7961fdc3c03f0d04c39d34390dc02536b90987ae68f52b2c29a6f59180320d85adfc2e1f39c6971d651974a312d37b0302047c435bb5006830660231009089d95d946af1b33920635a78b4c6e9a6af50da0973d2a6470df771404a2676e086a18318a4f128b0f27fee0b279a2902310095f8fe09f38e63fd5e466d8a0dad3e912b5368b2fedb3c564a7ae9ba13db29af68612f993544fb94e9a29cc68c42da670302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100baff1a1572949cb1e37d255995ce471196a2bc5ef86fe6d9bb9ac4fca4d5d251aea9c9a53459bea29857c3392f2888ba02303ba3e793852489d7cbf488992be21ebdfd64cae6a5541030a91715bfec0edef5fd4ed08ec3ff3e8183d8d83bd1bd3cd20302047c435bb5006630640230073c92b44e1d939e469c32ea5bb8c770f44f5af27b3dbe15f50af028844a3ff0fde434c7473877b3765ccc7eb9a67cd602302a7eaacb03bd6606fa2b0359537fd0e7a7a393017fb74deab7943a89d986739bbe69ec78508553dd0b5817d93e5171af0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304bc244aa5eba4b5e834061b62c63df298d5e9bb63f169e6ead4c8b23b568cb47f271d09b5a8a7b16ca2e663cbe4ed37702305f2382eb38ebfec62ec87e93e345d9da3cfda310d109e0c0632cb592d9c84f125e755f7223c9c48e5749537bddb195800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304bc244aa5eba4b5e834061b62c63df298d5e9bb63f169e6ead4c8b23b568cb47f271d09b5a8a7b16ca2e663cbe4ed37702305f2382eb38ebfec62ec87e93e345d9da3cfda310d109e0c0632cb592d9c84f125e755f7223c9c48e5749537bddb195800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304bc244aa5eba4b5e834061b62c63df298d5e9bb63f169e6ead4c8b23b568cb47f271d09b5a8a7b16ca2e663cbe4ed37702305f2382eb38ebfec62ec87e93e345d9da3cfda310d109e0c0632cb592d9c84f125e755f7223c9c48e5749537bddb195800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d7e783fbf4ecf0e7e92b6ad9352d4e15b706df8ea214bbafb9efc60e4a41f7083d01d6803aefa494bd4c61fc0779c0780231009d2b1e49f5318134d538dcccecb5738782400405d79e2a5417ff3e74605c207aa6808f4b51c468cebd63b0bd468fe57a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304bc244aa5eba4b5e834061b62c63df298d5e9bb63f169e6ead4c8b23b568cb47f271d09b5a8a7b16ca2e663cbe4ed37702305f2382eb38ebfec62ec87e93e345d9da3cfda310d109e0c0632cb592d9c84f125e755f7223c9c48e5749537bddb195800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e63638e39687a0c92d7da44a9609ab5d270cd4554ca59efb365412faa61553a7657f546da6432152dc45b2a8a2da3eac023057179047887ef57135c0a7d78f95b086a8d4f2dad56a43685061a62b77aa3541063760635269616ab3881037b34347c20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304bc244aa5eba4b5e834061b62c63df298d5e9bb63f169e6ead4c8b23b568cb47f271d09b5a8a7b16ca2e663cbe4ed37702305f2382eb38ebfec62ec87e93e345d9da3cfda310d109e0c0632cb592d9c84f125e755f7223c9c48e5749537bddb195800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304bc244aa5eba4b5e834061b62c63df298d5e9bb63f169e6ead4c8b23b568cb47f271d09b5a8a7b16ca2e663cbe4ed37702305f2382eb38ebfec62ec87e93e345d9da3cfda310d109e0c0632cb592d9c84f125e755f7223c9c48e5749537bddb195800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304bc244aa5eba4b5e834061b62c63df298d5e9bb63f169e6ead4c8b23b568cb47f271d09b5a8a7b16ca2e663cbe4ed37702305f2382eb38ebfec62ec87e93e345d9da3cfda310d109e0c0632cb592d9c84f125e755f7223c9c48e5749537bddb195800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e63638e39687a0c92d7da44a9609ab5d270cd4554ca59efb365412faa61553a7657f546da6432152dc45b2a8a2da3eac023057179047887ef57135c0a7d78f95b086a8d4f2dad56a43685061a62b77aa3541063760635269616ab3881037b34347c20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302a42997b24a1fb3ee5fce54452e0e0b1e16562f275a98a7c08cd129e85d1ff72579c4dc7bfac03e94e0658735bd7518002302b3c9b10ed4e6640c793e6bef6ed6189ddba58d7750d48b941517e9c324e864cf9cbb77276eb10e12b843ea7a63181580302047c435bb500683066023100c783997e2e3ef2b88cb2328bfc3cdb12cf3cf4305269e55fb5c2f155c4bfde18eea8381efa780c30f5da121afebfc5f7023100859be156f4ae877f2fb89ac6b5c31a85d08634c8fbb0e705c84518e0486e4ada56a0a73fcf0ce64a3f1b2c170d3d7df90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303f767b12d65f966d6a98e422f72e6a03a565387ef727e2d4288882e30ac778096cd2d55b72d3c7c81d2694a1ef2c470402310093ce23b7ea8a4661ab1393b225f080b57d02310c257c5c48cda810360dc1e79021e0cbc8b93d148b08e212f7b2282d430302047c435bb500683066023100a8a98aca605db7e6ef9f652154d508d2ce5a116ff88ea6ed4a302999963c6645f2953b953688b342c3ef25003d782474023100d7f7b54347b01b026726f55e3f8594b2357a4be6832f0cb19d20d1a3d1330e5fadea278fdffbde7519453845ed4a97a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c9d8b3d7a9bf559c094524898e7561ade2daf6d2751f47529e945fdceb5948c530aed81f3cbcff3f8e13afac812288e002302a0fbfdbce65c2f3fc38bc14fa5671d70b4c29d2d358baad12c93078b7aab89aa15ce9773437dfd77308c9e64d7d72730302047c435bb50066306402306b03ef5b5913dae021f5560dafbb81e1c9e1b4c47615ce78c33cbff24823607e4b14fd5e5aa6155d80e65b366baea0f102303825500ea863b318d591d527d1401e296a03a69bbe70da46bf88589ad7f1d194878392952a8a71350d0563de8122c3dd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fd0843841843192caff2957500c1c632096f5b2a1cbb148d3481cd2ac4050ab54f85db25eccdab950353dd975efc4b6402303be6dce5264cfefef5bae55e8d09d0415e0e3bdabb49b64a6eb6d09053cd1c2f5605b53668c623957f71fb0db2d8ac370302047c435bb500683066023100fa5c4846cd9d8da008556cce1a5f4c693dd0fd4789520b3fd7aa08ca75e98fb8bff8e16845c3934cb2f3060af1667065023100c1b338b39a5f170ea106f04271e87a7f06e989cf844d071a99abac8be7ea724cad16b86e506221ce16debaf40f6bbc850302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a189a7a1c4a2c8c6f647f5c27da3ab3038409a43f4fd41ccf09343749ac711bc25ad4ff47bcfa35ddd2eab894803887a02304fa671c0e1dccf9a02affe16bad4c2cf884fde1719535b1a350cc2807a119c3e0d2499a1084a08cb8c94d9f09aac9e2f0302047c435bb500673065023100aea529e847d8d767553d36226aa70875e63374c81a0d676cbfa72bdbe776fb7d2f3e36e7c76375a22a9b78f7697eb09902300f59aea4d4c65751f0e18b9bd322f4d913c4959afcea1f644f6c74612af03d4d2b161bc7ec0e75c657d2a6250781cce40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b66381f5b4102fa5df8fcf94f3bfb8b68a806a1faad20d80cc89d53dd74f4ccaaa1e679e341e0f15c4f89fd11e6da9e202302cd0fb81079be56012bec01e15a59a1aac7a278859052a85e33d17b4e37daf22d9a04e832809ada5dada7fd271d1d31a0302047c435bb50066306402300904dcbdfbf601cfe44f2620503707b8dc497698cf51513ef22c56df5d46b89833d8cbd05a4c11b66ce10d90790f59460230282712855899c870571b3a1831d0e86f1349c054e4c1a2354a6f84bdd6fc2ec4445072ec6f73bc2c5309d4f8203c2d760302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023061ef8aa0f37329eb071958b294814df9ac19bba5bb86b643e6f700854059eeb740800e4dbc6b19da0c0434e7e49fd00802302785928b3d87a851e9f1b759f6c488849d47469f948bb09dbe7fb1ae584904b361b37b28736716ac9834d0bbd79395b00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307d28b23fd9191679b21c5500e954c95cff9453ddc827bbd57af182a98db36a12683753f030c836962809997fb3ef17f5023100cc53b94742cdd94224f5d278e2567de0ee2489d7fdc7f824c7c7593a48f85dc9a799ef4f129552f0e9b9b0a1fd267fac0302047c435bb50066306402306d5907c50ea8ecf5d8257e72ecca6aa4f07d1d6362c01b410216ab0e56c7caf76766a7354f2cd9234f63e4a38f83745f02307bb93365a9ececec5078ce43365c75ced2d872af9960b75c917b35d81c15075575b19f8da95ae6739632c0493f8a5ee50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fd343b6ab94f1f38d2aeecc6273d7b530aff5e62fcadf73573d740f1389db6e137e5c182680b18cdba7a17c470d16d78023100e2aaa78d2153af5d6b8a288187cfeba207e5f09d50bd50f71fb896adcf1cd48e61c6d87c2ed936a509cb6604bf7468ed0302047c435bb50066306402305aeec924eeb6f0902ee3755981badcac1718bbc1c3a6df5731937086df4b8552ad4783c63b019a156180e795a9c95a1e023018436a42780962e0f7fc2afe124b1781c7f25590e917d88afbf774c0fae42d319e83bc8bda0247c81a1bf1d7a117491d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008b36bf9f363dfe58d16b2823312e095cdd9492c7818449fad92b18ea5568948ff23699f7406798d3224148744b307d150230705219233382fcb3f2f2945cbb1896f41cd17b12c0232961fda0b00453e92fcc84c1d341f481d8294f45b25b5d2250350302047c435bb500673065023100b03a7893cadfbfc53b691bb7a6c3ab1ccd5c9f062e417ea925ea11f1f1a50595a8445f04c914db97dc2d951b4327ceaa02301d7c32327afbbb8aa39bc72ae033203f5c17d92cac17f4338f52c79dff160a56c95b21c094558510200dae76b99e21c50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d69ccc6200b500647348b15a1f713f189b7cc3f71c65c6332fcc5061453e0992f859b99b869956148b5612af773fd85c023100abb679535e51ee73a2d3348e515b5cd12cead3c82fdaf8932f78623e2f4d2a574c3c7c0df70f06204cd462dbfb36a4e90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c55836b1c7aaff5aab91e7389892518c6b6cc900d177a293742db2d93ad6460649a5d629b2ee446ec24580caf9686ab90230217b24151a16c2142c93d922dbc449ed4046e12b524676f03ed5ab2f2600a94ba6cb0107e78489ab4ecfef3c74047bdd0302047c435bb500673065023100e525ad140cda065409a2527819ad28bff425c4bfa14739535c484ec34335207f23afd50396144d2d0f4b8fce5876983702306f6b9bf35558ca0b6c8ef3ea4c933660405224bb4e4a24d3a6be5f9df346f13d2859a7d7ea8d251f3c0bf7082edeb0530302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023062cb914196002e0b1dcc8dcb80fd804b3680aec717d85ae1dca494b816bbde1fcb2e73b4c4d20ed3935dc2c8529b2f6d02310094d1533e9dba40a711f17d2be218b7e1c12de3aecd809c07d88a0c81775f87d971c1338e90acc9a05a2d1e564eda65d00302047c435bb50067306502300091fa80329d477b10ff9b6110ef9ce9c076e5626558f0d3a8337077a70458744e6432db4720c7680633db793b776d4c023100a6b68f26f04298629328c35c0e276fe21506b5e8eab8a5242acd7aa78741c9c0e9a509dad3e5b869cfdc4ae787d3ee9b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100abab5e6d9a449c16b79f06083c7b5464a71f1cdea9802cdbf03f56c54d2bdc9bf2e2edce874732dac51637e3f27895f902301647d4658ddd27c6de7c0c2f0a736b00c6114e979dd1d05ba9db6b3f9d15eefedc8319b80aab5c9bdabb5de295f6e5fe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008034a0aa9602397eed1fc1ef8b8951f627497c3cd21eac93f5f52e97ed4587473e2d9cd27cb8d5f1162f30941c8364a90230115f186e50d05de724e13037a8f396cdebfd69540cc54d2883e79777179830134b8c7f600da84b090472df8f1cddc4cd0302047c435bb50066306402306bdd3ed944a3bdd65a25d4fe115a82d07830a1a6acdc3cc4f767ac55eb3ddfe4b7c5d172c4adebf84b84740467942aba02307aaf4ba70fd4976bf99d035b7dd4a72c53ce86c04fabbc0d39ec8563413c05f866780e75508fe55a3288562c0970f73c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a5fb7091d16b35d00627c44dbc4c507997ec266ba4ed25e33e16e5caed40785ab8afe4be912ae9c6817b11375d8f7cc702304e01d732c598c05004a553d3dd1e76734989fd251626fdb2f6f1c31101379fc99f93529ffffec031c9a62d8f7d185c960302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023003892445b82b222955568db2fea16370846f9ef493f5c0d80033c74514ed9b64366c1bf9134cb7f4a1701eb0a6fbffb1023100dcb57b2e2be0b57de0e8ce1c6f5da4faa1a9b1af634663fbc934c05dab19022d8080db5aa55d34846af71235e6f6fabc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023003892445b82b222955568db2fea16370846f9ef493f5c0d80033c74514ed9b64366c1bf9134cb7f4a1701eb0a6fbffb1023100dcb57b2e2be0b57de0e8ce1c6f5da4faa1a9b1af634663fbc934c05dab19022d8080db5aa55d34846af71235e6f6fabc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023003892445b82b222955568db2fea16370846f9ef493f5c0d80033c74514ed9b64366c1bf9134cb7f4a1701eb0a6fbffb1023100dcb57b2e2be0b57de0e8ce1c6f5da4faa1a9b1af634663fbc934c05dab19022d8080db5aa55d34846af71235e6f6fabc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023003892445b82b222955568db2fea16370846f9ef493f5c0d80033c74514ed9b64366c1bf9134cb7f4a1701eb0a6fbffb1023100dcb57b2e2be0b57de0e8ce1c6f5da4faa1a9b1af634663fbc934c05dab19022d8080db5aa55d34846af71235e6f6fabc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023003892445b82b222955568db2fea16370846f9ef493f5c0d80033c74514ed9b64366c1bf9134cb7f4a1701eb0a6fbffb1023100dcb57b2e2be0b57de0e8ce1c6f5da4faa1a9b1af634663fbc934c05dab19022d8080db5aa55d34846af71235e6f6fabc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304ba92ea005514ca5f71ad7a403b6d7dddbde721b5d679a94e520117c2d32ee9a0b7999353419049cfcd985351e88d3a6023018549782daf3f39446086853f201db51a5c49cc54db9a73cd4f3521cc34a8e86b0773a7a13b60d5aeef424e609346da90302047c435bb500663064023001530a9ae2314e374788b467e735346045801cfa7a060035c40cab9ea74dfc13d7fb5e8d58a70dceeb64e5ac74d79e11023062fee71a5b948f6198ab4a46a882bbc1b76af9608eb719781943b20ee5f9a22e4c9109650a5bedcddea717b63c0a745c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305008039c5f721033cfdf3abc8270c4a02ae9a28836ba5b7620154259540edf64682489ffe2755b4ff18488e762c652af02300be99e7648927fe448a7095e7becf0e9f3aa8857653e2fa73202464116307c09a51d0af9140de7f61f94b510dabc0b320302047c435bb5006830660231009f9331b8366483fee1b773a3a4f2a0e337a1a6fdd21195bcf0325659d2af9348d6256943e0a0859b7391d7064b839c840231008489d5875accf5be48f40833c9bdfb76aed63b4fc831b6d3c47be6192cff4bf324e0ac57f218ab0df422ec0ed95c15cd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ca55a07f37192053ae658b06cc38b97a615becbe417952a94b254da75960b8717e0fa5bb2620d2e72ff6c2417a91f48b02305a61473782f501a69541c8edca57710191c5aed889031e48bbf6f3c980e7fdbbe6670d78987b482c6bd30d953b15b12a0302047c435bb500673065023100c42b8b9919f4ce6c81105b44a004405c5786641fcb730bc00016a4b25e0afb711c0dbed7c1fd5881a360a8df12bb9b3702301b24ed6af9e0a0167c34b4dd3bf749990801b4efb57a399759a2f6077b41bc2565b4655be05b9046d0e501718c2173e60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302d4ab45ebf5ad144b72507b0a610938aa7c847098ad20ee05e258448104ff09a74c016ec22c84f1cc90c563c05ef24cd02301f59250f8e45423fdd63f82827383f960db043d84713e6b8dada3739db4aee8c31a5c04aa08fcbc7e3eb171170f203240302047c435bb5006630640230628d10a3b11a106969b4ad005e492f1f70aa60d97017c67acbccdfb0e0c2d011f897910ca5a4fa5cc7ac343552aa064b023027ee096fe54780757e6add6197409068d008c6987c795bbc2080968b33eb67cfe049302fe1ed26127a2ef152f9f01c030302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300bacfc2afe7509f9d47ce2d111abff0c787975676b91831fb26628d13c0a7866a03b61c5b35248831ec99ef73466e8cc023100bdd3341e39b5260748a6d96f45cf73f80d3aeaa73ac720a584d717b22c1883388268137b477832611c86f153387de47a0302047c435bb500683066023100d7c06bbf9e3faccea026fbecc0b9ed95ff44751f1860627470dc9e18c10739b7aa8ee47b118cbf98c32d9468d06eb6d502310095783e1c322fbb0945f4236d088731fc599642b3079f3def5d1fcb92ac8014acb39d6edb4c250009b922d14af2b288ae0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310086d553d5eda64e4465e4b21cb1d21d50dfacbd981e4e386811828e3aae003b2a517a9da97f093f74ff49c2f349cebd020230708a367c9b2f9c8672ce2ef0c2951a10224bc9c7455fb6f2d99836f9c4570df815cc68210fa9cd709360e27499b20f850302047c435bb500673065023100df1e70cef37d8934703b60ac40153bf46e31296c2bd05b34aac9cb263232f081f7f47459d481b4c26a578a12aa9e1134023064b52b0326165fb82c426d4bc4f53dc71d25785accf4d484e5db8ef2a6bb83524b29a37018beeee897cb7a03ab7905cc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ad1ce197d17375c684cfb2fe155ae312f0d26d1d6b5ae3c4eb6612c8f85e8775457ea3f78f27525fed134fa5a48b361402304794aae5d4f8451f5041e25a49032f746b79a6b68ab8747420fbee56536b70b011dd49f4e1da9d4d1310e4fcb7cb366f0302047c435bb500683066023100813c14e446baf76a59d259c4ce36337bcf62c64ed9efbb794887343af692c2d21389ddfe46acff15c67f5825512b4dac023100e580bf0615040db2d9256282cf6dc9aff98dee056d88d7f4dd52d187791b1125ffc15d83eea67502250fb569d47d47c70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023048f9a7216cca23622a29149bd800ab7fafb34e138ade175eb73b87ff2dec593ba15953ae2ada6b64806b7d3c5423098402300bef9c03884171b7ee4851e35c7d9367bce92fbcfe793684916236b958ac2df05425023e852ad8279a11697b92fe1f8e0302047c435bb500673065023100a0b4a795019d5c28dc76fea1b386a63070829f6d282b82679c5671d64142faa85c6c56c976f68b4a6e717003ac68d0b9023079b086082fa0f40803c4b6fb1c4b0c6f8fcefa19771eac2a88dcf010334f0759326ab44d2385f2b614631f583bd250c50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100efe297c825edeb3190408f89d4ad6ce86cb4daeed8cfb01f59d5b63449cf8397df6935da7dc1f58cd8efbe483b791460023100aa4779553173de6a5734c886d2fbd6a02bcf68a379a8fae27205eea42e1597c70edcdc5b44cac1efc6bc7ae088838c250302047c435bb500673065023072452c4d00d9768b2b0052f7d3fe1f36b6f43de72bcf9bc7ff9134c68d485b523259dd6341c644b4468400b2e17be6ab023100902018cad94231eea1ec7ac82cccb16ffc3d96c3a6a0f08cbdcf8e57f887e4170cc5d70f0619c602f8351e5fda97e7020302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008b5609b421654a181a9c3453a377de8c8005f1bf11d88a94aced6e68e34370564b389ac030995d43b9075a3cd8332ad6023078bc6c3342a2f4cae4ec9e9dd54aa55e3ef0a81fcdbda7b5d083ceb712bfb3c37f9116ba4e673096ac6ed668b66928b90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306266c9e9fc162f98976c7807dfc14b0e4a241c15f0f4cc16a5caf0080f30e125d96654d17fe4ac6023dcde2b771cd0720231009001eafb4744a87af44c090dd54dbfe70897823ace87971c0a54676dbf034a08064c32967b43e1e93a01ef8c056f66660302047c435bb50067306502307f11bd6952dcf8eb2368ff77cc8df1619e1178bef1774b47b5833aa99b841548c7cee7879bab913a2b9f10018153c8e1023100fe77cc4c0b5ec2c73e7099fdfe90957911872d21e90bfcd12449a6895e853b865bfe2db687e4faf1d3e00c9925acbda10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023027618e1fb1c87a9191709dcda3018bfa3103e792b6db6c3252fdafe291bf4d61daf792eb1966957d5c91d18163d1c031023100c5c730b2444d3d3c019afe04bcf063bfa035ef6ef8cf9c20e53b6e9722c6fd7c4a03bb43ac5cf472db7a73fd277976db0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009b13dcefebdf072bbdf60f269ca2aa29429232fc67f4d4a1b6f44896d1d5321a284e0b88eb31adc42ec9b2e4b7780000023100a4ffb5a3e9326e0c4742d464f7b43e61884c7ee86c8d106e7d053ad8b38cb24a8031302c1179ab6053c3212fe1c5552d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305d15a74a24a8a3dd3f02b7d83052d7289f5bceef346b0fba364b8952e142221c6773b1b2ce0e5798b9d58944b4f1127b0230295568af2b6fd206edbd58e32018fc30e9aace1c7cf89ffc05aee3f5a0db9b1cdd12a8503899a5585948ddd2322fa0b00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100922b3a6c52caa29b7cec795e91054dc7c19ebc125234fa1aa8feee19082c983a6da18e33f473c519518ef04e532d3e8a023100e751f45170a9cc486528900ebbf610b4d87a959d83ee0915d0d96dfb54f96ad854e105294a9cdd629f0826eae1274a6a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300a9466df5b3986b1946805f098ebae2f449311fc6167dc6d6fe134133aa163634b01a8346fc531e93b1a5b7dd30eabb70230789b15ab439b48dd0b4df644fab9f6dbbadd80d3b4fac5fa852198997b96bcde1f339bc9cfbc62ed7deb4f1ee45666100302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230624e918e961e9403847271555032b64d0e515048aa0e131a3e465c813e555bb16926e5f885c3df70cf050ed0dec7b14e023100ee72baf7113618fdb61a1aad63d60e2c9c83923e91f2076ef3d3d9fccf64441d9584e9a7bb0a1f958e6c0ab4318ff73f0302047c435bb50068306602310093c1cdd5b4faacb359bb5d3e027d9f178edb230105895e6373a9de351382980fef833ab00de3a7ef273e82bc84168acd023100ed6eb186c9aa0eca983fc9ac188906771a9ce043561e1f15c70a010b33c49fe4714cbe70cbe020b7ae1a0f4c23400dd00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301ce49f632f0d4850172424ff480d016c9ac1bc4a3f72566803930ae6ddd1057f054152837cf03ec52e77639ec6b70b790230519e39e7f03d6d4dd9e9775e4b23a5db6c97054f76a8e6422bdd0514edce5febf788ed22713239f8d460aaab98af6e310302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b9604b88deeeeceb47ad0f39f1c55d92670f28507dc83c76adfc6afca86086fec6ebc9c69960a8c0b5a49cd6fca84a51023029a3f6b44bb5c83cd24845ac99564d884ba0886865f792bca6ec0226a70b7bcdd9213b3b07cddf6c8837f814fc5986880302047c435bb50067306502301a1d8ebbfb621f408b8eb6a45baca1b88f14a3ed113473e576bd64b7fddf1ecb3269dff0ecd60d4e79b12095a296272b023100bed3c213f190bc08f9a516a439638a2776e11945ee2e11b98296e7a82a6eb2266ca7b85f6955137ce036d32e3c99695a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023057db983b33446c4edc537b3dcd7c3e87fcfcc4274f9a0f408828cfc366dc35af52437dc3256ec9c9eb96bc5404ded278023100e4927471181a9f0339dc4f3f0e997dce3afb68f74aa14eeb00d4323a7832e1f63a227e00bf8640587757675722e2db160302047c435bb50067306502300a19eedb039887e5a788356173e3d3cfc5ef4836f403db0ab6311098d6270e05875be4b38f5c50c418eee19c260f4b7d023100fd74445a9c1a5607e761ec395e9e84ba6285fbec091468bc5833209dbf7b21df319c10bc353975e85327599aa89c66e60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023020088b6d02bcc708e1a24b5ca0d9e4038cc60e7b6f1bdc4e3ebf58ae168fc1ffc952b33fa2098e0b88176be2c763f056023100b9572958f59e7a6c85782f5a94e0b7e0b298b98cb6b6d73cd0e6d2238d8fb4d86c5df92597f5cff6d4ee9eb89dc1962c0302047c435bb500673065023026f93bfd0a0dff0351a109fbf081acf370483976484f5a0100fb849afe0b98d73c5a864cb340e2705edf53accbf84213023100a42d431a1efb856f24c084a261686264965ae9378367152fcc1459ad56a84d4009d9c766200b9af59bd02d052021164f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230330d80d3309258d15ef1d17378f85e0060f65ce0264013bdca3f6e5ea74577f76442e822475f011332d95632228bf995023100c0143491477330af6a236ffdf8e008a652f5fef0c69b49f745be30f8cf61483c4a4f80401756fee9f5d74d77caad403e0302047c435bb500663064023045926bca5b4bea7df94cdbabbd7cad3bed0f922c8901edbd8e31dac097b481a726ea284789ddd25e84fb03542790f269023078d84b2ccb263451a64cc315e71d7840c083ed8cdfbca0ca2d0393564384e9551062db8502cf0d780cc5d32b9cc3303a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023029da85209ce6ced8b090284f6f7d1617f538f4f5c35727d0646eecbf3b1894f383bc7187bff5a427fc21fd6410da88f302307cc6027572b23032080435a2c9d2a55ab51478bceb80bdc92861f59673ed2f57da619a0d7881d97c475a317a870591870302047c435bb50067306502300c22ac7b28cd607eeb82f427b4b06beac2d9f4a03e01ff24efe38f2a9b8088dbb72d34a2580a18de19dd1b09cc636703023100caa10b02edee72badff3e6231c544d330844deb83f008173fdcb10da22f63968b6a144906677e8b6d5e887111b3893c90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cbacbb5d8f147486d3e4d08391d1a5a903a4d842ef677c0efc1b6b283b97dbd7c4e54fbac3da60cb9702fbbb3bed01a2023100cd259da08dd9cf6971c6f71cc7d6517789be32916c8758b71f5d89f2ae3c47554e254846e3ef8bce1ab2c5e2ee8ea8c70302047c435bb5006630640230138725d529adf78f9dfb59da39962e8b195ee0d14a79988cf2586ff54bf3287410327c1d26c8f145dd47cd2cc670526b0230239d1b742afb9fab1ca4d12ea4676a93c7ee58537d06da8b40d744511ab8549d6d7e6caa14377ec5382791e0c04ebbfc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009d0f708e0e590e660e712daf73d4b3fa8bfd20f88f5edc72210aee60017565f9c513deb87d256e904754d9e6bccbfa7e02302da05123e9b10d84b79bdb73f8cb6dabf2d53fa16f173b4f9020e9da44ba3568456e19764ab4b5731f7398ec89fcb0780302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ff57f0d6f21fbf2cd6c63daa63ed319445d6de3a12aa30ff7c0383f7d78e0d62c8669d9f6b13a3ee4d4864d3a2d4eef90231008b583a56f4b4bee64896bf6a7cabaea2450848a7e37f35f8baf70aafcde13ea186d00192d107a59fe8a7e135c1e230f20302047c435bb500673065023100b3737dc84a60d3e32ca464ccee2f0c10da11fe5960b82a4339e60138aca36c1df12a8f3d5bfbf4b7d1c0d4520dacbf9002304df2a48047cf56baecc8b9f97e9c102f91cbe7588232f3a5f8c2b3372bc1400766b45a366c6a5c886030f8008f79d3700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100aee1631d8fccaf23dab106693ba88b8988e71071ee6776ab0d598c8eae68996bd91d210c723cb19d4e008b014d18b20c023100ea734a6442d956b17e939c9b1789759d9bd68e4d113cc0e399b144e50482a6747eb0ee9097973aecebc00d6d32364a690302047c435bb500683066023100ab6d83a3f028afe8d6d785de8603e7033ec4e62d1cc5ececf27fc27ab93479d78555afe1bb9ef3c0ca69f46733307867023100fd28c7c8ef16f35a6d48527022c2c1403df64cd4527427a85c83914870d0bd8133cab06cfb1506c4b75893b86b6070b70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230393b196b3c42d68844a8dfe1041a403ad250595c04822c2142da7328ec3012e523b03282f1bfc686bd31ff100fba50fe0231009bf9ace5c5d88d84a96099e9e1cc6f1057e3f436eca7f0b6c078e8a3d36a01fc375de0cadafb46e620c2b2e8962b1cd10302047c435bb50067306502300a81e004c912674546b4639176df80551b0fdb2af8cc23541a50b71ced91173376f2b3e0f6bbb1b5e2db0caf7fcc6569023100c57329e2d3e81e91c300574c0ba647e89a873b1e1c6dfa9e5dc5110c8bc5380ef371b6b69911f2f300a58bd47ed3ef000302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230205facc1676169aaacfb8bef53c0b96c34d8d5d30f4048af5b61e35bbc32d979b421236baab7608ba6a6af8160e652f9023011473b1dc6d412dc6efe5d4632bf64c8ba89407adbe9c1e3835ec54e4427ae89575c557fe223b1e8bd00ddb728f602ac0302047c435bb500683066023100e7c123fcb5f1eca02fc0a64c0ed3246248054f265c34721ac3fd190c7ea87d232c65932311fafc73c20b8f9deea24392023100e386e7688847d0919b2c95cccfeca458849d4a7e549489849ed67ea7155974cb5d08e8d09776d74756f489b4985e26410302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d75b0145c1f481a12bb6c8365fdaeb76f2a0bb74990654921261a90a6f7176f61be34a99cc98f5e5df852645a825d4da0230676f414a1d1661df4b126267437dd579dc5f859b9093ee4757ecdd073c540c692d254b2044c14b4438bb77a277c504970302047c435bb500663064023037b2014ac34a42416ed7b09a6b9114f4c154f8159d2f2fe802cc3d2cca19a102aca9915c14348ea717b7b54681a943d50230126658f5528f2dc555da4f57f1dbde10bdfd6f4e204169b20cccb57e68a6bcd5fa85e6dd0b57d2feb81d9a576c6811ab0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306b8c93b440b46fd71d122bfdc2ee31556866fa40d4885c75fa4444ee4cd09cc4e4b72a511bb15828d60e5875e69a8c71023100afd8c2530e12dd834f67fc68ea73e46dc781983df4e8a5dc743f4614c7e7d8c9561592be9423ed20627ced4cda445b0a0302047c435bb500673065023100c55ab70ff2768757ecabf15862d4290e65dfe2caf01454e8cc4767b8bf61fb0ac8cb75fa25c5f0f2c4972bab292e476d02306e957f597855c9e6510977a5657264a46bd7389ffb26ee3d1dbefead21d476f73c147aae83e324eec35afe8aa8a702140302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023011d2680e017b2b3f97ab35c4eeea2424cd855d2be2d3534fc710f3931990585f04fbdab7ba26f80fbf29c3706720238c02300755b25059bc8058a256088d16354ec3c7a5f08075f24df69f1eb4b24bb9ffd424caaa4cb9b274e581e3e776350049de0302047c435bb500673065023100d5ab598a0a67cbbf1e69802f1235e9dfdd51ea1506da720a204f0d3c7685a4cee79b6b5f2dfb965d90c800162fa8743b023061fd6c2fccc37b83bbacb86795725f9738dadf7b16a392ed32b8059cfbb4534ccf6bd83b198b32773c381f3dbd95876a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230627797a643d7c2474d0238967037422b1cb457f0eddbfdbb0bbd4eef8cf93883fd01f668929915b3027457e5207b5a4602300ed833808395022411fd580590b161c819bb5924bd2d68961a4b622c3e519c56e7126c99c2f3b112c74a9512c66f1ffd0302047c435bb50066306402305326f42bcc1f75cd861119b8f24d9bf7f624aaa96fb09b0ce32bcdd539f3c381d926758047ea52802d25ada859523b4f023009809ec179a338a85a2967d5ffb01bf6df1c92573487cffba1625d5b0df526f6e2612296f8ab9c8a1c0e78835a9f88570302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230278fff73a65f2997279aff873f8e33f3fba57065f8466a33fb128bae32171f586403a18d1ed013ff3b4434bc0477c36902300aefeedbf86ed89e095940e8840fd199f62cc0901a5f312538aae237cd80d2d9ca313ee0ae7ed709755f808cd4ef936b0302047c435bb50068306602310090a94e7be63d9b963a384d69752347765ab8225ebb14a090155b21b1c65953178f97620113d419d862c5c98207480e49023100f374288ae76c12c7dea741137ef25bd1c33ac5880f02dd0c23b638bc25ef8a462576e44100902d81fe86ac24586860cc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300c4a0151dd5a3565d3987ede2ec0b082f21003e5c9a3f14d114a77202ece2f0f6bd3e418d5a1b0e0995d7a2c8b2da0dd023100e6a013d2235a762ebbda988106d6057a1027c02bd8975c6da6be5fc844f97d4ea07f63acbd72b5e745c3baa75282188a0302047c435bb500673065023026b1a42bc9ac8cfb3941714c564b2242f8eed54277c108ddd8ba0794b38ca85aa6f5a3f33bf613637c8eefbb54c9e5b20231009d87895207875d0aaf6c5ecd68a705a56df5f44ccfa40a1dc288768d9764bb52f15c9f67d7f8a90929e7e7b7201bcf170302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ed9f21ef1846ad5245a83cf986522a0afe3a357f467cfd05e5346005742f6f2112ad7ef4f25a2f953f3b7e2bcc78ae6f02301af4acd4b1572a6b614831c4bb912721cd8062e5df91c16301045d55913e3319549639bcc11c00bfd333b97fe2926e250302047c435bb500673065023100cb006f25c576008d397905cf88eab3499d9b92382cfafa6edf15c298bd1d64adc06fe209c2cce6d4696045af7dd27c8002301f8c902cda13814c7ab93f3614bc3a780ecaf26f7e934e10b1a9b75d182bbb6a8c66d1627dc6a7f4bca05251c52d27030302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310099d5815fc51c0f09b0267ee7ff19971049caa6332da037731d73b324b2113643b8553872e32f4c3060617d447b8b659f023008897bae859c330e47793588032666061b11b4428a652cb966bd4324f6c83fcc290a261b0b0c772bd2832d6ce129d9a90302047c435bb500683066023100f43ff1d9746398193b525dec944c181213e35fa7d3c0038c11c0e0b35685de5e0dc4b7c07ec9d428ef80c4a0c1a5458502310080f32dd3d4dbdaf2c449f64224063403b418f2014929b5d6abbd99de16beebc57a2c1be62204ff0497857474fba6d25c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230563bdea8609c4a53746f4388a426d7c171ffe1d824f955be49f42c20488b7d4b6707f1c72d845242da4da574982a4e410230232afced14e784bd1aef50f207c92dcd88674c2b71e483f5956f17d12d657979fdb9be43cad0cec3c19f94a2d43b07850302047c435bb500683066023100f053efdb13ec6f1c617f26ffdcbd5831f15880ac88235aa7f5f42e0702c39294b7d16cce760f9c97ab738d8b6d9d44540231008edb9a55124d8ada20a9cef4e2b33914c85c38190d3477f85d5d58c3116ba985d371117a36d33275d0598f62c77c067e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310093ae0704da73bffccdef025cf274940ef84365312dcfd8199a56bf5e7d391de1282198067a524bdada926bc623d530a702305c104e656cba97c04546528206f8b13ee704c0c63c419817e8862e4d94e3dcb13522be6ae58c1ce2547e692716a119ec0302047c435bb50066306402300c96985bd27be81b2084c55d32649d2ab261be4baa457419c47958ada6a655eb65db30d011d97659ab8205c0aba4b6ca023052b5f128c7bd16b4354f0890d065b40272db6581d975d725b20ce35b536e634dcfb6cd1a341301f14531c3acc271fef60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230582eb7a706cfdbf6eedaa5968fe75336c220cc60c9e059d927d2572874be9b7038045308edb6cb8bb691eaf99c247b5f02307a6a366b9356d9e7c6e984a89e89c104474550460a1f47e82b0c6de366a306faba54bccfffe1fa44d213458461db7c6a0302047c435bb5006630640230708413b88780ef8b56c3f14388a6897d76e289b14a6da9858fbac8a6af19aeffaa224aaf107d93b443001787f6f77aaa02300d70085684391ba747114a4e19ccf632486d4853724bf0c2cd4c45af6d80a09656c5c95576d137e54d54de238c3e78060302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bcc5794af8553e136ab85e7f080c46f77c00287c2bb35f085a4b61c9c7236ed291d3144aa15bac5eac00e67c98881079023100e875593d3e3ca561fd234753c28108c30d21d5361f8769279df74339f532a13dc78b47e2709ac6839a820c2fedaf32eb0302047c435bb500673065023063fd7d7c9c09c45cbbce0ef7145e9394864027e7e9f6371f600ab136b186d4a582017495040c33bf16ee4d12a5e9f0cc023100927246844e6796242bdcb3f83c89d6f5d225967cc78118405754b788de60a0a8dbbb68f8cc7faa8ed1f0f6f4f2e7c6b90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023004d25c905c284d288612c370da6da8d4f8318853b320881fc08829f8bec75a9f18d822e8ddbeaa723afe8eda68adfd8b023100dd55b526965ba2f0db7f5bb4e776dccef771e742cfbe814a5fd69a696dadfb43bebfe349b0860ea87c0d813d01e93bbf0302047c435bb50067306502304066b3929fdf00aa08fc0f9f0f129a559286fb44a8a0126132aeabadb6d85683e308b9d12ccda29f86c9f3dbdf3c7e90023100c3d2c0094914a24d59381905396e93b3222fc39f83452632fb05a87e4a5b7bc1328c09816fd111967a23bcbafe6127690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a5199ec0b41ce72d7c52adb73de18c132c0267dcc24d90f5d1345c25f20b5897714e532db632157be6ba077489797f01023100c1afad48381cd428fb8b525132451e9680a185d58769fbcc70e9595296d6129b7f955eba48fd606eb7d523e02430942e0302047c435bb5006730650231008c579527f009e27c06b8a3526623d05153f422f50bb32bd68b7b6406050204b9bbb2dc7db51e8cc190b0694da7dfd5f402307849e3ec97738a11b2ce28280632ff4c2a3d6faa0183219bf108d91e1c346fe355dff1e9f4cf9507a82f8d1e096e81900302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023020f8147925a47b7a77bcf61891170cde4344f5b72136f22553bf9cf6c5fef0ed5e9d2240ba97682d91f3176e8e392094023003c967410cca83574e149ddf2578e319e68e4f66dc3d5cb6776d4152dd0c1dc05a4350fbf0313552add13cbe500dba570302047c435bb500683066023100a37f69883835f06ba9b161a6d45887e10a6e39a54f61f838ad7ac7699c57bf3d242c5f9c244d72d878cda086b197ba3e023100e0f1acc38867663ad2669502b69a2aa9c11e10600ae6f12365c2b0f6a566f981dd0cc6718645ce3267ec773d198cfd9b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305d476ff2df760ae555a640e7f3a5528054c9953642dcc7bb2a71c92661ac53a3a9e704741ec4411f9d6ec5cc7764b1cc023100e064d1d2e83bb1c8a6017ae5443b46f855178a5e518d6d25f7345788cf230c08d3371eeeca6c369fee416681cf0235ca0302047c435bb500673065023100e5a2346774849200f6b2ec92fec523841f91e73af941f8199e2c0e879bb9b2dd89299f9f29d36caf98bac94d75ea4148023019eb903fd0dece32944d38faa287979cabb65c61ee4c89813df59025c84017304946830183962417cd72529e47ac5a520302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bba736a893934b267f81dd2f1e42c23d0f0d5b3dee57a130d4efefe56c224cee09f4a9b4eb99f2d9a5c0ce04c0a89539023006570b0bc71fb99ad783399e6758e833c8b8c41e146ea21c9f3d4450c42357f52c2ee673a533be39f6b5dd52fbae1f520302047c435bb500683066023100bccbbefc8f16b08c0084235b5a427b9c223cd59f38c97be1508cc80d7c7bbe2be865dd53edb116dc3e638c066357938e023100ca05f87df5e3f001c035041b7a9f9d7d3a8cec616ae59d7a9d35b8ab7aeda3f62869cb744f1c249759c3757fdcbc252b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023038d72195615209e017fcc273a0166a8bb3bd81d7d5a6b51af2fc8e3957d3eee1e3b208e9e694e0789160220a24e268dd02304f83b326e71fb0499273d319580b9e93b3aa49ee9d6e91fd752989cc44941598b861590193645326fed0fe89fd1e2f170302047c435bb50067306502305b697081f0b9a792ebded315cd79d1ddd9220add0a2e69ddaeae19dca51cd805b00825a9881813a6384adf7266eea6be023100d32ff69a15918c5f12828cc8d2773e0d31bc8e65d82bcfb1f3801b9624e148ad20d65c273eeaaf3be8bce569c389e4070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230545537afdc97424859f3bca9f6d61b44041e8b4c8f73ab3c621e54a0231573699fda49dbd8fd938bd915ad76dda12a47023100bc2b8aa6f1d3a0f5bd40da96adcd86857e4b09a5b1cfac4486aad749232fa196cb4eb6f07ec7b0268ef3b2134b0125c00302047c435bb500673065023034008cd31fd5a715e7be3dc65b71a239c6464f2092fb2e5004f7c9f2d3f113a61ee0c1b22c96efceda8a6c6200f6b972023100b348fcc71707e4c35dcd67477c9b8a808dce2864994b5597fbf6265a14e53e1a4b135c108e65eafa9231ca2f48d7f5090302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d39d629242f7749afd8e00a8d58908c0fa2eb0be501b5b6a5f611b7cad10683181f23178f58e281134e30fc2ecf6e0c60231008268cac4f6a267f2e51acf466452efa98c3e3965149242f4d7a92d41409e08d3a5829b4b72563f2074567c6ececab8730302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023061788b80aacff6d28a599d8d88f7216cc1ad3828bb9fe3878975a292f6a33677400762a1ff7276b3b5ffea01ce4e39a602304604a7d6ba2f468adca5d47b70719feb17c61cc39e70341617b959282794385d93f93afe1ab6789873b0c1329ea571b90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cb8c41f7bb9487e44347c5fa1e8e434a40a3e23cb55c4513da47c274a406f5d26f1408cca74c427d197e86db6572bb0f023100e7f780c2ec30399057adff989331805b6e3b74be24398d4e05d1435bfe39ce6ffb51b197f956776ef8ce7ea0c012a5270302047c435bb500683066023100b56068f21b75dc7f9ab794e8c5ca564a47ec8837862f4bdd4e958160eae0362557a62edcdd00ee5b2acb962788f6e0da023100e926da723a07f916e9b61a543b7bddd50220da4d1b5169ed28f161888b65768f3104f37e718c899456db906e99d5956c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e77b343b249fffd806fd061bb4a26e7bdbbb6c68895d007926445ad6cd21bf66c88f55a983790e168e3c25b2dc7fe5eb023100d24effc5f94fc02d0741cb2121f30bd5a0c6beecc2cb5da281e0995d03ebec95d5e95892974d35a6007944c1aabd75f30302047c435bb500673065023100d0992e4e3398cc852ca2594c121c9d38cc6dc97ccf927706ddf50a616beb593b87079264eed7b1b9f8b294cffa0dba5b02300cb4d32ed12ff35872b4f6c1952617a56962910d6e47d146cb2f16960fd37b16c301f6ce15e56ba4232e2e0fb3d487570302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023005a160eb914d8ca4db6c244d8847715899050dfc13c0c23910fd13432bfe7ee8f54c1182bf61860f04acf78c6e38d26e023001346b4dcdb14f957f519a9f7e8b871dac466978023b989bb6465341b57039c032f13a8196aae03fbfd9d2ba291a2b260302047c435bb5006730650230251f352f39d9276c73e969af73ea66a3f915620634a55f3b98cd284bf876ecb9d62908051ff049801ec13f187b1f68080231008c6b2fd593ea5aae13a95f57a50b89d40d8d01f7ce44a58b4e6bc151812559d48a1eb8c227eef573622eef80da3061c80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306d6287395efecc3323c517f3f0e33e1734030e3f14b3a6b8955879a5d5bb741ec440150eb87beec9868f0e0a1e3db4ac02301b9ca2913b271d82f14fd2095b6e71fb6d5f71a196570e43eee2461eab285ffd81a8e03fec08999ca510cb9a1762e4960302047c435bb50066306402300c7d78226aab2afac86b21c4089c825f2d27bfc5999d5da540eb6e9a3c1dada3de7dfca50c5071a55c30328ce993a94102303db44e24a15475b67a48e496a56c42969d9c3866d41e6628cddafb0585ad8f489aab4e3de1b0cbad645b1bf9565d6a600302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303387285c10fa0a3191a14c2956c8649182039f919b36d49d5b9d2a4fe7338310cd778c1d8e40272f9f30f8d2954a52ba023100afaff29d2bb30144c14ded1277f2caeb044c59f76f60da2c3c67a0575393a40b9c76257a8f8a137db52a481dbe7515a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100df145693619c3fd67e91bd83f38dfb5feefe5b9d0caad7fc92e1a63898511a0c26af7c58a95e4b0b9034b48281d4a84e0230470d812e0a91d1c05d9094aaf53d1d1733d8ee5458a2b36b9ac0429fb3c5daac1428ff50b532be245c5253fdffa152960302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d10088d3fdf3f7d71da58bb4a25f248c9114fba7ca4378c2f6c446d4b892bf50d872c12938e1e7d5a8cb154345cb825a023100e8aac40abc0dc43ee8f1e155fecde4d471dbca79afdfe507cff7fd7243d6855ab640ce72f6a02b3d6f351bed9e02002d0302047c435bb500673065023100f66d3d19d1d54523218f49f54a71fed4b0e1a09662b4087a312b85cbc6d0dc5b5efac6288e642476a492f49f0bf574be02302531451cf685c4b8abddb957e5c64013c3f44bcf8d1f82c2242508ec234649c692afd73b2db2846d351953cb3b41ba4f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e313647f600d2b26fa1d8105afc3d1a2e5112394ada7631a3c21e96a36a2db864134da1a50496e23cec51929636511fd0231008e7422fbb65f74be346670099fce2a537404698657da3e45378c2098a1fdc913896ee5334680f28a2f11261ab90e3c4f0302047c435bb500683066023100cbbdc510858dc4549dd57abcd1ee187a279f0d3952a82542afe8c3bdd34b834c07b19ebc086bacd4b6d2cb9f5cc347aa023100ba41ae3d7d269b008cfb55c1199d90b9858dfb16e532f107070e2f629f989d2c90dd7f4c8ac21715a96b803aa012e8bd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310099987fc11e78072e0332686a2b74a2a1498b1eedd35f2ab4dcf325d8ec2231b264c4b4b7b3cb2eafb4f9e81ff996044f023100cc50a314716055962ed79ce22f30e8674e995a986fd6ba7f9636098fadefad1160c6e177c11cd09478562a820502add30302047c435bb500673065023100d46e92a843705ad33e7b65fab18d4461991a7a1414a57ed4c3a42d91d792719cf05cf050d1acd1653697129d8544b21702305bfc5ab9cef307fddc64e5ebbfe3be6c122c2181b1358986a25b92dc0aac19760e0b18b82527f6422f45b2a22852e54a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a7ba0dba39093e918e0123537ade1217aee839fe3b6b40651bb30f8c184ba868dc33d47e1495d471c346a8ee139f38c502305481d4dd77c68ed38a22e5a52b8415a8efcd389ded3149f0d716820413b9301885d2531d4f8adda7a9a11ecd1af8bff70302047c435bb5006830660231008e5979d990e58f3efcbb5091da7f571563fe8b40cd71938b16bebdcb8609ea18e819ab0036ef542116546ede43cc1767023100b88690d77358e9f7ecda916178ecb95c05cd54216c1c3a3a33bb386557b6606b519ad258c2fd80ec6bd5a6f9428e9ded0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fd0ea0a6d5ff0cca6166d8806ad78c3a8b6dbdefac84fb49c1e19aa3e0b8b81c26ccfc253eaf032667f4ccf32f0f86d4023100b54aa6bba782e791bf72220dcdc52b71de4d2fb56bfd0218754b876885dc0738e036be6b81349ef01df59a14390162540302047c435bb50067306502303d6b751159982a07a313ca1d4578b1e6ccb657e6dc7cb7c4f3ea2190b2b0b6b262b7e926438009cf91db0e6b8cf5df2402310099f0c5d07f32ae9f736ab8383861385cd4e52f6cc8e434d9536145ce554c22cd28062cc8f9201adf5e3fefe1c262116a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307b07f6c0aa77e8a5f6e053a786312ad74bb93c3d52ff57b55043cad9cdafc945e9ab9985a1fa7a826d9d008c9b501056023100e4990e191a77a4d9978230c7275e97b9b272b4c322b9fc77da2a77823a9f420c58b4a8d475209eab3b6e7ec7401aceab0302047c435bb500673065023100c1ddd3a4e66436424971f2f82eb1a9de5885516ca552736e4ec97486426c327148f6295343b2d53d729a530e378aeb59023055b3875b88f4d0c83849d1934275c8c91b45f5fd9ac134064129f40db67c560012201dbc66fd55096f16957234b02ab70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e03fa5f7efa2cc92bed4c9a693880db17aed69778b9ce0ba84540b62be3b867686048a2fc1e1df1922f1d1d370d4b66302305ff167cbc099222ad26d1f12cdc84de72b323f318986ee3cb713df4678b2e87761701d99ccdcb51fca0f6e2183515b1a0302047c435bb50066306402307893397a72baea1e5305d571c0361cdd55006dca664b5969cc38415bd39245a8d5e13772d3faad183d8a7052287b5259023058f7a34c2b4082c2b7ce1883d15cca19881563178e8f96dcc026f21173995244f8649750ed4b53ac9d492a8fff57ba9c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023064dd81e16e6051c2c3e29e5873a6c722a609a28c346281a06e4a0b110f1ca140b219a9806bdce1f0da549c98d474ab7802304fe0e2b2f826141241cf0d3e3207c1bac72beda0dd8aafd0c7c3aa5a3a1c793465cf277762346f5053c50b8e3ecfb2fb0302047c435bb500673065023100f3489edb221fc820c382411fd02b4be183e713719eb0a7248081ebf6b2f162b3c215716ce423d134c50c12cea86b1888023035f38c8b7949e4d6c38c3bd3969d45ee633b66420a7a54c8322ebf7deefd7a718ec81bee850cde227ac78ba78b6333720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008b03397c8d5bb9ae82248a7ef4e6882d451e7119707f0c62911d6830c1e819874335aa7f45e8827ff1ad95c3dd34ba8502302607bc4497468fd18a4ccb41bf25c425c7977e145b077e7f008e357b1e261498d36be7d90d199da1be16dd02082543150302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306722371112314788543aed579550e18f8715fbfa5fc1bf5c189b71b56fc5743e274b104c31f3a9c2e2dd1578382f51be0230561046b35d49eb026f552c83579de622bc58f77ffff2dc0646f78722d7a008fbfb5e4b8460ec92adfc2dd1fd0b37a8fe0302047c435bb50067306502307b49ca2ea9c853bbb7a7a69bb6568f048d4a83c8f533ad23f86f949dce769d1bed133c3de79dc13c68f32613f3e6cdae0231008116275406042adc00e428ce0585bced71cea9f9c3ea5c2e94dcdc63acfbff4f88857e69fbe9bd7e7a167dc2decc16260302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307ee51e1f0d22b261bee0a12a395f8c7fe25d0d3a8810c65fe6253e4fa96f10e19e31d52d4b9721dbe15e0170906b2bd9023100b13efe19bd6823e52db32a1ee3fdbaa28f6aa1d640b3221c58a20045c6840a69477ac4bd5848c5048bd69db8553356510302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305fc8da5a5efff77f37e68bdd445a97a046493685313cdd05f66ec10b53a2ed0cfedeb6fd233e8887aaf57c4bace84cfd02301935622833f39bebbf4e8028e678b089f20492488a9870d5bfa962a151c12ea74d0a32cfd8c1da10abec32f5b1ae4acd0302047c435bb500683066023100db68273c41c97543b96a20754ed7366cf113dc4c18f968918482316fddbfb531ca555842fc6b549b677b06950f13bb06023100b054eb2bd44f27561abceaf3a5b451269099f97a18533f99d3e021531e41289638af952a4597651cfa6d60fcc68ca3150302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023000a50d1a71bb6fbc8d6b00c7d7bdf585b35f7b5dccc03faf057e9ed5e5b45db04cc9b8863fadc1cc40fd8a25a18df366023037753fe9258b9132d4aa235d7f461b1d278e0bf1a27f1d0f1b2bc11bffd9ef8aa7938426c502fe5f599203214fb3773e0302047c435bb50066306402307711eb9fa205e9cbe518009965fc6b135f003d2a3104fbd36772d3cddc5ef1cf66c42a65616440408c8d65b7537a9e1602303c6fabdfdb42976c34a7235c9e0b4c1a1cf0faa5b0fdd31d65a6f66969bc4a9b70638ebce681d5cc7c1c137863b2867e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b58dc716b23082e6180fbaf6521eee1298aa68855c53a2617ea618c5a32de0fad0624a28a735b621cb89da8fbc0ae0fb023100c0e2d702b15ca6fd63614471e5efd3b33d4e375d8a47dcfed8221af88ef00001d60e3afb2eeaa7ad56c3d09fbdb7a0a50302047c435bb50068306602310094a409fc247f74dc889d133d9d879599233b6bd9be52725f500464145a414f55f3c98dafea455a83274dd96933bd4c0c023100d6232986774034757dbf91aaebbc5a915890fdd51fbd6aca634e8c6ae98e4ac605f7f903024e6cf6f5949a69c90cb7cb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307031b7c6bd4b622039c011debeaead1accff08b5f001cb039b2aa280fad621abedaf05ee285c3b4e227b74ff73ff1cf7023021fafe1ae41127876b736d44e78b446427c1c5c7cf9efa5479f6f65d67ebd95f187898efaeb2f2c3684731ea59d9a9920302047c435bb500683066023100a15a679ad6ad7b870b43113505b1528889fe7e9991de998da3907ad17ea8062a39f9b7e6a7c57346a42e9af9575e77ac023100afab0fec68a8da7d78076bb62cf74b91f12e9471a5921ee728bc79eb248c029dc0dd30b67a4a0e623aae08ad9fef53df0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023009f6b824e15a2f0091a1036d6e35ef76a73b46a05cdea25886bf1c86c218d75205d534f3b38ef402d28745bb25c591c3023100fcf853f0c9f1d77ad46088c11e5e241cf46d983759986b675f9ca86cee5ed7a7fbd2f369c8d71efc040ebd8c7cc4e69f0302047c435bb500663064023012fc1141356a31f4b376c45ab914445e83258b293a8d294c94eb4ec68cde2634a57cbc1cf5494317f0e9abf371e9b3d602303dd1c2fa1b9273d09f06fd7aceae8dca506004450881e2d089fd608c4161fd398d3ed84cab8ed44f010ab52b982dfe360302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a5018b358a50e684d81430c4bfa601ba182f18360cff6132629029263bf578ea8fe2480e219d3283582fb89f0ff84ae4023100adc59d01ea49a2d0027aeb31b91d12753c3d5ca9365803b915d68e0002bc5f9dfa7c741dc45a35baad4a97ebf350c4c70302047c435bb500683066023100d4b89ca12a0728e6cf54dad9cfe1bf7dc182e77492583f66f2f64a2060d4ef02898dfc385a4830347d1faf9d330d4b9602310097a3246b69265fe4eabd0fef6430c5222220863fe8893ec8aa22b890399f630904232b98e3dcd07565c4e9b61543cd240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302985b075e1d64af592e7bdbaf3654be5a8bac6e9036343acd99fdabfabe6e539800b0749894177c18efd087e98611736023100d1d0d3f7aa5db36f74ab5e3bd45d08e32000cfc206afce6358590719fd68402269ba4acc5d0d035d3f58aae1f61991130302047c435bb50067306502300d000e2c3c86ba05992d3e2576f2e28ca7687567161ae51de99a24d9dd252931230106bc63747ba3d83e7aaf95b852f00231008186dae6bbfcb2980ccb162016b95530dd5f3b66ab29f5a3c044ea420bff21ca27bf2acb4ca5f66d1d4e26c64f56c4090302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e94420c117ce25ee0bce6998edab49b9e87693e2dfef47caf267cba541901502ee8c9af7aceeba4d46335f726f16cc32023100bd6008e220ef8596dd17a144934e12cd8e11d31b8254d23d6c021b04ed12ee7c340b8b8c42a4b48e7a7440dc7d95fa180302047c435bb5006630640230589d3c9b3da804f4b49053ed53055f528d47d86812c7a8d4c4e61554e7f3ab5ee92889b06a5621a3ca2204f6e2fd52960230286755c82c854250bb633274545c9a73b639eb627576592b7bf80cbc62aa417e3c1defbd7cec2e67dec779be8410bade0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300fead04c05ec9c4141723c4a259bb539e78a6c57c7db1ddb88bdd71774dd50364baff28c26ec7246e0d9f3a64b9db55602306bbdd7c09d93aa0b4613e950ba84ca12c4a648c8baa796bbdbaa63076e6f79b4044555722aee2e24ee7db07064be66420302047c435bb500673065023051915704070eeb458446528dacda23cf297c93d17369e36356be7daa9f1948ee6ea8116cd571b9529646b058b40fa4f0023100d941cdd434cececb3550740c5fa6c41debc2d4372303ee67be390be998121cff8ff1a38b35a1ff6b07ae186d6ed59d010302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023053792d9350103aa630a7d6075e0821c36d7b0b806e53e6a873717128d8e1b9c15af5296d768a9e21b21bb6a2a285d6c9023100f76ac9b15d4ace051f7d6e7db0834293ba5da64ddee97a80cf7402aa54739aaba42aeca91814bb1ea4f97f64efd8c7a40302047c435bb500683066023100c1491ab58ed07e6ee1be8296b35ac3e87cedab0205509674ebf52fb8344fcca098c386a724d7b4eff16bb1d8dd631f53023100e8ed69aad3b4418a36603022d0c991bc3e8cba40abb1aafc719d4d46a3caef1581acd14e9d22030be89db1a6fb33fc2a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301d7714cf521f0159c788ff30fa8d87bf1459d956a9b65985473f9f18bad45179ea374f09710aaf24aeaa2a2638b6951d02301d3a9f65dc49df394f29aefed81df3485f94246dad084ec9516bbbb2a1af09d925f53a95df773f241e5af153d2ed7db10302047c435bb500683066023100fe6c20e35ea5d39e2c89dda1a4b043cb48b5edf241890b6d5cc80bda9c630e3e4478cfeb71d3d47d5ccf54921db21342023100b060ba06994282c3ae8473236bec8a3e4588352582510322d854e7c4a6c03703e66cce9b6dab809247175431cfe9c5dc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023057e6af8d372e19b7fc383b30aa4e6a320a8db340b1a45fa4613ee4316006a3d66b25b8b012d3710ff4d6dc87920e3414023100bc6c0b1849c2fd06300e44f465f10660f3fc1c55cfbbdc62364de8cf40586f8c709080203a81f1c9b6fe233ba19f35ae0302047c435bb50068306602310099515942b00a0f9527f38a48284ffddaec00ee84e1abd387ea26359ce0c116f6c6bb33597da5532d13dbdbe8c73bb99d0231008ab61e4aeea6177b439f706a42688616c3dfe4ae0e52dfbf77b6025326ae7b01d1148acbe44da2f47f0c81dc1472d3c10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c327465e0bb07653f8f817e4cdda03f383e5f5d2d60bf6b5a548ac921e2ae2faa84244753ede686581f2cc76fb8581c9023100fe2e42779bf7dea3fa3e02974bb0b5919ff049bb506b2990d3f0ea266d2b1c16922e94dad85c43a475efcdd5bcb712c70302047c435bb500673065023055875decf8067651c4d192a74fdb060ddb099c29997a785fdd253010963cf7956e528344a8f7db1609087ce4d20339c3023100a4673ef158fdec5bbee26161b01bcc5d03e87d8334e0811944a14360edf5280ce1456a960b06a530f865adc3d14df0ec0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307c7c8c4899c205c567abb8b588b0c6cf0cbd087f413cd879477bd5f6f1e3e5f035cfd28e72e66812efc9c97212bf1ed702310081175164e16abe425c9af24a6df88d8a10166999dc3f460d8cf3c692ffec1517c658c52a1fbe18b28db2c6ff20be8ca30302047c435bb500673065023100e5e087ea67d13e6fd6637a8d72af813a39f195373b9d8e55de05775a31cadf407788b21495463218afcd479887b19ce70230313438f470563ec6083d9c547fd7fbcbb7d8a2cfbb0857733fbdea61e9556315fab1d38b3469c4ef99afc95e1679271a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230513a067c5cc28690e1964d6f171d3d9bb0468196d25f501f1850b36479c92b760bf3133f2c2b2fdf2519f205af485335023100c8a29e5906d3cb9b4c790b72e9c94d3fcee49b8bc5b406ffe64f4c8bae6e2574b24757ff7cf8ce14f9c213f6bba4f2110302047c435bb5006630640230386b1024a0c0eb8919dcea4588e78f7f0beee250e70be9b06dbe2eebd05088b54945197ca1495be8d36c55c917216b8f02305f73a038418460751db1fa0f3c0d5e7c2ded91861465e3f9d7e62c81944f281941d5146a14d89682247aa6f86ca2fa6f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f9de96b5724433f1110f36fb6d9813a2aa17d4af61b0c3e423ef48c6f35219a570c82d3f380c4dc1e48b6eef9ecdbece0230517529fa62838e8f69cfbd03228a300670f06c68127c2c8a87e50ae2695a77290bd9ebdcf9ddbbbdcb9950f200df5d5c0302047c435bb50067306502303c49c0db8b6fbf5c78941421673af7a1336080f902226441fba94806036858282517fd8d77c4109637ddc443823213cb023100bb2108d0b262473d3b7ac786636cdf8d64b9d4cb11450e2d4914ec0137bed8cb6c9e838139f2ce38dbbb2c5554d666440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cd3f28ef1755a8848850525aabf4f2bcce14399588380a70d185967bc599b28ec2c3b6484325c0cd413db805b8b050160230113cd95fdc4406fdeeab193b6c75fe5fccaa5993e2fcc97e1ebc744759448c64bead675c86f762555fc99992fa6fc71a0302047c435bb500683066023100b9ea14d5927bf7237b02cc2d1ee7d2f961ecefafdf4788ef1bd930002fd6a64ea771e5e0abbf92d9c8bc55bb6733afe3023100ee0342016b439c93560ddba5a93044b0534572e6e187d21fda02770a10a73d688a31f2437b1d21127bdb29457ab88fb40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008fa8321620c771f3f13bed8a127a21b5d6a23858a383ccd51afdfe9cf735a8ad1bc118efce4ba9d931d7690a68221ce802301b45fbdf68132d886579810f5a1c45a264effbdb4ee75d18a412e4b361eb1d952559bc70de0c74415958fc34c3923d170302047c435bb50067306502307b644333f82b0ecdde9ff54be2122d303842b3ce98618fee618124da3c96803b0ecdbf4e82d3604388f111b76308ebb802310089f2d49ed040f2b07d1efe6d11397d78fb72b907379790cd92711945e2dd21b873faf020701e72829b5a42fdf43ea3140302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c76b4fe2b7573c7951a872c5024d7545804681a30c4d21ffebdffab6a5e70c3f6366fd4596e44fa7654af3cdafa6c848023100afe8be82485850244a0863839276a5c0802e3f93e17349718c99e1c5980b3f4c2043afe4bf9bf63fdfbcdae151d5a04c0302047c435bb50068306602310081cae2b9fdbefc00ed03760c39f81101bc9e0d870772eb47abe90083e7786ea0bd5e08a9d24350d559eca5be4b7037590231008d518ed68696fbabe893a0ebd26c470f7077619743e2ca419f95c6da82694734cf51bc02076d29f362c67bae1650d0d40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023035ebb1dbc7ad972efa2c07ac16034f189ece6e0a29606e787d579be126d8104cd30dd68c990c69cb93e40060d2ad3198023100bbc427560af10b25745743b902df95fc331516357fe1f206323ccb9e1c67fd814091ff9b4c7d5ce30612ad2f193ca3620302047c435bb500683066023100be507c395493e3eb08f2a418540d04fecac55772f33f0b9a00ff9e67a1e434d781fb9af0f9de6db2de128006419c329502310092fcc9ecd90cafae1d66d5f5a5e0d154e9f6b30c42cec8ee5f04f70026a923c6cf3d8ea551e59ae72942699b565ebe440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d49b533297fef53626a13eb0f286f3c8f344f6282f191e6d53fa978f19a1b249bc6c9c05f2b670ac15c84a6790f98977023100bc12508c66d6ec7b9224904668c7edaf805b0360e83c807a1fd8a2a641d5b1e1c43dae48df13ba1fe7ae4e70ded26e390302047c435bb500683066023100f6cdf6e510e04f0b1580c03c6e483a903dcc2029a918ae905b1032135750a4e25d50aaa51584950bed30b2c8629bb63902310083248f692b37cba4630eb449bdf8962722bb8dabf85dad934a2a2d2604c661e04483e8f2674428e5ec8c17a91ee1c7a50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bf9288885ebc5009207a8c2cc84680449937ffd299800c657444d79d358a9ca5a28f480e478a291b8a67cd775253e5f1023100e29e27860dde9fdaad247d8418b8aeda1b72454eaf52143a39f096db528bcdce8a2de0c4a3f47f31d81b2aecbaa218950302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a3e3b8639d606a3aa4e718cc0938fd4eb552a8a83e1a5ad06d6151488c13eb61dd056fa3c291368dd6bf51bf162eea79023058899eef0324ca43f2c7cc25dd40b5326fe040dc967d81df8d15931c01014989772e4c02a45d952f80ca1f2b249fed990302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100edd31ec3e6b3d40f2e6abfbc3be2fc34cdcf8ba1fdc34ed83ed1e1a716ac526b105285177f31f65c99567a31eedf00e102302cb3d9cc3d12e15ff966ddc5b78d9b129ed1a4908f6e256e9a61ace0d33a56dec7e0013702251ecfad7d21b4455ebd580302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023100e5a0e776122290f080b44dfd462b6b2ab79904b9061fd75a1229bb897136f2486950f2ec278ba1a24d4ae62f2dd0740c022f72a6f9603c1e3e5b9aac539352c767d2861c6681cc3f7b8cf3e6d52fb1de17bde9bff85ab6827941453d5ec939bd6d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c56af064e62501fa1c68114db7b33f278cc9e56c0989b7d47d346bfa903aebb3a89688772994005f0982721bde2a918a02310090f07cb9dfe018d6d6c7306e2ffaba9a968a1da31a748f3b5d9c0b0d098e1f90b1fa3b2aa728acbc6a224edb715154020302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e9d61b2be48ad142b045e1c869d0abb2525a6f0a51ad1c2fd818ae11dadc204aab9daceacb81d6b4a38ba3e2a22a7a5902307405c49b9e0e5b8bdf484167385c10d8ab0c7644424b3aab58da136024cd842d69a7e317e1849f80aed805f7830833d10302047c435bb500663064023050b5cc62971739061d154c19f49d1548a24c42ecae52746a96076146473610f1e26f68b24cb4f73174303dde1f9260ff023075f1c254db5160409a77e79805e46b8a87cab21756dc5df0f76fb913d69cce56ea19839a6ee6bbe7cb263a0622ed83bb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b96151ba320409279cd7dbf50032a2166a9e43256da00bf9086ee69165edcc4c91de7c5d1859aecf77dbc9ec427b2ae602300be876d59aa5341286a9c907d2c8fd222393f7dcd6609918b4e2df778140a1c64b0aa5a9e91fb821d07fb04c326ab7ad0302047c435bb500683066023100eec58dcc2882e238ad8795e55d13eff02f90e24cc627e71d0e3496a5c81aa858eb63e2368bb1f2457378d2f98d740f13023100ea102308c2d730ea5f1a85b71b4f6b36712daaa7024750790f9bcfd2b5532f82027c8cbb51e35bd1375263a087aebbd30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100efa74cd46a4d00b1da143f01fca9d8116786ebc98bb0cc481fbf988677e9ed9584526a9dbf06396116d763a21cdf45ab023100bf51e272850f4805b18e2d2050eae004883b1aed40008f3492e821cf6e9ec506ad6fe122fc3b7449fa2e0d41fc3175f60302047c435bb50067306502304bfaf7c6aab2c2d18e71e02827c1e8666ce227de9680b424c97398be33446a72fbcbc80df08cc625519080c60172663e023100e1e7e99609bb99d521da6e408a6ff7b0ab1929a6ce5c283a2feb83c16b07a71c83de3811ec3a2ef737eba3c3bf3594e90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e4a8e279eb3d7ba04ccbed812314e2aad88b3c5756aabbd9364358fb4f76fa4a1adb5a7697a4b15e80e10ee333bfc78602303f75235201b3cc72c22bd62c6b210b860a7c93a42141505029e5c2575aef23d568c1d0cff0d63e30496f4b19a4a89bb10302047c435bb50066306402305cd33868d82ffdcede64292e968629b85a67d3098c69c53a4ec3adf83b9eea0e68c33c8917473d94359420fd2fb84a120230535a6cee680b7659c6a4f669b338b435d392870c57ab6c307ce2afbffd7b341df3b23f1bea07109a4a0496780a13e0830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f2d3df58c60368fccc93d2d50b9ca24732a54ea81a018cbe5ae9808f5ed00746177a8d8b479b856719b851c6325eced4023100bc48de73c4fa17e7f2fdb062881c7c431f812cd93045a0669968532f988c17dda3681006016a7763a61dbb4d503b1eb60302047c435bb50066306402304697e489b67242474331f661e9d3c28f1dc07049a046fb21cf216970b2306306c76818e7ce801de3d0b8b86f0e3e4ec7023042fda408f6beb49fca92c86ccf5f41ce0d8d45e682be7c6ca0efed3e3f807517459a5621774f133db090f6ede1a076660302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023032c4742cc13a31a68f63d522c72f35c9698591e69c5d49c568dbf7341e992e74f0ffc7e7fdde7376ff9cfbda3cef37a3023100bd0d27a2cdf8c5a9b80124aa83d17df374181611d4ade57c2219479c37ba15875d6eca8d048a95a0fdb5fd7a83c195370302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009306ffb2519d7a54a7cf9cee81280837be30f97f69c08d2bc8fbde335336e9a4e898108ee91a711514df98eed218ea87023100b9f83c5cafff0984fdef7b86123c1954c1699f9f219ae5633feb9ff2d1e65d279ef63c454a1d9c71f7aaef17cfbd0d6c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d81f417683b798cd048baeb76345a10e3728e095953f8cea5c1dbc1165cd23ac046041de702fdc634ac728f67df05f1e023100fa7e13615afbbdd7527da0452fda3eb2ea5e19211331e733a835498c09f000ece99349604e7880364319029bb80e34aa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cc00b3d6ac3f51f83d1ba2d02316d4bd8f39f9939062d1b52bc091e6f33135ad430eff89cb8669b69efe388c99b989de02307a9a15f663812fdd27d8840435e8f35095e22e18ebc672d35c1dc85b9d10036ef21df1c432cad392103f53cdd36faa600302047c435bb5006730650230328e6b49df51459dda5bbe9f280ed9d47bf57aad4038cea9e35a1d0aae46d111329e723a7b8094ceac3305eb73239326023100c3dddecb637808f56dc5a91bd9d6aef07ff86d5218b248adaeac5dda58840f7d750aff2742c2afa984f7488f76c9ecf60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a26312cf8e48ba32d9ac873166afb94732595b6065bb7686b2e81302b74bf3b9b49f4894e9f6ac646e0b5a97cb5eee6b02306141fbccfd6a2eaa4d0f8a881bb92493068a294955a071ba5cbd1748bb36b9e68f09f8aecf456f995ee0644de94462840302047c435bb500673065023100be0f39f24cbb0b7aa9b9aefb7621b08ef973a56437b0006bf2ca6cb649ceeebc25539adb81c550747f13748a6a45961102303473fce510d2ecfd4d2b1bd207df571890cea19ecc7a461426bbe9e1643f5827339befe41bc7ef00e279ec3453bac99a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100919037737a37589da22205e22184a7e4890873fe5fc56a7212d5b797622ace013b9e8b5e3f6756febee6209d0c568b4c02304cf1ff9e7e6805087b42c0b032d2b6ffe64f36a7f8150d422d1a6a00c5a2964b2b57a5c6e0d40ecc04938c2a93f5cac60302047c435bb5006730650231008a851b095fe77679f7b2eb869161ad8b8dacd8aa5b13a9024c44e09faf5b89dcec1076a69eb01b9f85e5913ecca42e67023050d1f91b3ed1b4675985d46b898f37699ae0febc1266094496ee55196f34b1c1c9cd84e509548804a766dfdf22a079320302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302924b376fd8d32260f7f570abe4c8372a4b704b9443811fb38a4df09d3ebe321ca46585ea54dabe4a722f72aba931ac202310087abea3b9f98c7fbf37bfb76f1b97bceb84d217d5087eeb7a0ceae265f4b8d8aeebd5cfaa88a4a29d29291c25495aa1f0302047c435bb500683066023100c7e1c3f3778ffb29dd0aedd4f2a4456b5805ff37ab1601a843915bd48477631742031114ed351eb98abee37d1754174502310098f67b471b884b534993eed7afc9e6ff7e2f2ed2f4a8314db0680058f39813380c7cda0c3d795f66e68fdb25f773713c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307e6dbee0df1162611839cab9fa9b543b1fc9e84c42f5ce2c85ae1b2d0379a60e0fb7ff204c2b97f17514d6324fdbf6e3023100b801b83cce12e7f1c8008ef64d6d603c1e35d5e4a71fc28b1c19e2e7d6b1281274cfc2b3edcb11a72944ff726269f0b30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300b1023544787e3696090fe134ca006891a14f8125d3383c6bf1672032d788338c6ba198fe8265b53783de1c4f9c20dde02307bbd9452539339069a803e2e0ded16f567c2019a3556986bd0b67201421993a49e9a626d60136d8965c9c98d8e9ce5210302047c435bb5006730650231008c5113cfcec22d48c89e18ed7dfd69e2a331d1bab023c59566a00d6c99793a6248c9efc47af559a269ad077e19228f2e02307550d4954486252bf76896c9dd288317855e2b938df100fb5f3b360fa9d0306a6510b787244657c11d3d413312fe613f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e471c46f6a4b3ce05e96dd66201344ab82e24e75161208bb65c8c040ade42e4239d4ad149c90e447ce5bcaf32d31a48d02307b808ff413bcaf5f573a361d11f7779501b3c84864be313754144579ba7aa4ede3f8c86c21bb829ed1c9f2291de578470302047c435bb50066306402302f6e4858c32f71b34c31d0af7107a8ecda9c5a115a2c0c96071bbb6c179cd17cfee6094c1f0443c0411ce963054c5e9102302cd9b5cb05ab5791986c423e2526678959a29c993f45257ea0ee822594932caece5d52679756ad1b1e5c5b1c581dca810302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100830ec53ef2a0fb42ff0b685e2ba90cf21aa03cf62a88379bd1aaf0b767657e6306e6ca6b33d2ede16b6b1f3a0aef662f023100935beb3951d8d5b3074ae04b562a03430d4811c5f3f7ac8c621d2c0d81c76e464db3eb40a136b109449e6f6955a301a70302047c435bb5006730650230380bc2aecf144b68c56fbdb1a55f2abfb87281b311d348e1aa059fe5550772b6a555036217aff7c80313506bf2de0911023100e06dd077e45bf46ca3dbd1bfb50b0b8da4e6976e173b86b4edcd9529f54d0b6be94f4894114620b1c4dd4c56e74d510c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009bfa0f58ebced76e94f0b1e146b8f7ca8ec5f6d0d46cb0d60bdfd28db9e305672c88ea19b101a05c9b70f3417b59375e023100fcf033beb12c48ad503c41a37e16f904e3e4d437bac4f3548c416bb104ece1368fa7901593e5b49820e08e4c2d600a660302047c435bb50067306502305291b382abc94df1a2b22e0a95a3ddca35c95e19d8ffd239ea802d5c3dee9dbade578781818307b9a657f1295891fa3502310090fa8f4e5aa494397e7e8c144ea7530ea6b097594f6a928eecd216aede37fc020e462a0cb0426f19820eb1c4eb089e4a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100910dc2d35ac258bb8389afb91bcc031fba8ca8a76360f07c4be6495036619ce50d4450abad54c6a302a306e48b9e59dd02307b0c6ab81d24e8dd71ae29f49050ceb4ca7954f90207ec914edece1b4266aad221e99122cc5b654a57a2f2d1033db8600302047c435bb500663064023064ec7e4370a85e15ced759eedef4d2c48b4510af0d4a9bfdaec5d4beb4cd649fad480bda5a344d0a1aa7b8421ecc39d3023060afce10d628c6ff715a1be0f6bab2c0e783c78dd4aaaa633fd2ab8af94606f288aebd93959c36519392d80429c144790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230454e0d06a8648c865ad8710d28a1c16f311e6e41d23df242d93a00ef81c1cba4e9706a1efa14480faafd7c7749f001c302310088ea6896f15101e4954bab1be02f1cc7841ba32107638dc28e412ad28801a9511c1dabb4d58e74e4b32675b896b811780302047c435bb500673065023070d40e17916fcf647c6aeb151143b55ce39f1a6c84b310144ccf580834e12e55ffa7d33424998611404d835fc079f050023100c4c44889bdbcde59bac79ea1107b07b51f3fa95ce6bd528aa07a64fe94e60d951da5dd9a2b1ea7f94bc4767bac904d680302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f2f2c266fb8d0535199fe98e7196a7d32a0775d3feff6657bf3602b76c0c2560e8cf9d002a2a956e610fbf8ce99e74c0023100ca740dadd357299f36a9233bdcff990c73aeb81931fbc3af371b2724a7cf65672da249103ca8b179d2e371c563a4035b0302047c435bb5006730650231008a79cf3b7315331ca45b7220faa356b70a3cb414be44b7ebc2d40e8a90eaab03e682a647af013afa14e74ec094fa4990023052dc37d53a574c642cee522efe780be63b794b285a78cf28656c23c8816c3dffc297ca02951bfb04c2824ba2f088c8390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230226e0af5dd588ecb384ef83259f94dd40c63a5dd3b54bad61e68255cdd3fbf4e26e2370e4e28daf09e1f33b60fdba6e502310091c395964f10648aba4ea7047f94bcb540a29d74bcb2d462a234da3ce168456a25de694a4a44558b5575ddd8acc00b0b0302047c435bb500683066023100adf5e2025236e1931dc7e089ace00c687473f22e70bcffd674e5166cf487baa89f1dbb810a44118b7aa7d40b6d604663023100a59fda709469f33f194ed1914555101371290e610373810df5e850a429022e9c62df51cfe36e5a9f45935a20ac24e8800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230183d01dbe70d12633a0b5509de9d88d56c0d7e1b19e0492f49ca20851dab6a32ba5d589ecb256a04f37173a208f660d9023042727409f5ea82c9c661d4ebef62bab0cc6b02479eae05d08daeed4b915c109b4f0d2ffa89e904967be5da69f39da3ae0302047c435bb500683066023100e56df4db854562daecdc783d6d8746779b236330f6dd5461b2e4dc58d2130e4f8ab9b9150b79378a951008625c9240c2023100aa91779333c68727a961f9b00bc86ccb5c89f0aea9a09d8935ce660ae40aae0beeef9fb667d32e3f36854e25920ea3c30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230372d88c078898c8a3acabdb74b4167b18f6dd5c2065f4b88ac607f522bb884573794ac3939355b5cbe7cacc91a43f1ca02302cd53dcc5fdc815ca60506d095e834ea9e0dfbf9ee4655f8c13536f9152f887d308c58d4078ff2eb9e0ec8cd46b1b9690302047c435bb500673065023100e3fb0a0a16133badb489571f6f2e010511aa4ab8638e04ca8b9f230c77f37e6fdd66aab79121f705e3e70ce9f358c93702304e74781ccebcf8c22760857fe640605e50d7d2b8a8aeee815a9a8c8fcab8dc6647a5e51afa165755c26566d28f12edf00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302246edf117886a5c553345d78a6013c86adbbfe790383b3c1c60963fad98f9af90e033751c544e28d944f23e2b5809de0231008cbf151b194af0976cc80d54590ee2b702d3e212f9ed942d660d022a23266532dd02453e6a9bc0e9a6927e513e28c6960302047c435bb50067306502302c0e5279f9f4a9c14f627281457dfbbd6353dbbaa5fb1f2ea49091f62f63b4ef39546d6f90788a9df1835a31b627742a023100b49729b39e02d3ca09849c49b31fbf76133f32ac0cdc179c71e1f17025d3608eb04d1117b8d6c42b9aa5bf92296096c30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302a3dce80161ee6b91ef9db032404734f133d34d079662bac8be38b60d6bca993c207d4bf9fe1c25554ff3b3fc634675902302ea3f54f174f9e1781704a210dc491c1bc1776c10278530751d6bbc66603c11d6c278b14156e0c1f9513cdf90f7ba4890302047c435bb500683066023100e2a993a12db0878376190c6a23069cdc08f3f10cfcc0f284e3c9b62b836a522bbb430b668cb01348082b36507dff18dc02310094d5aa98801a1457248691fc83ea4a1f6eedf18da11908ad191bf19244cd1dcc2d0e02cf309dde7250f9f603bf8fd73c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b689df3a65f2d76fae63820dab74ba30af2b9df8aa0665f1fe2256784b7222042e0efe3284bc61f430121b5d26dd93e7023100ffa7b84b0c7e421d7a94cbd921c85b08e84a94371b0241577dfee67efab21c54b58168248d9446498b7f21f71c82941b0302047c435bb50066306402302501591db3ecfc796df5f3532da70749e7bfcec196f68b9b6cce5f8284107c6268c44cbd6429dc1fbd52d8ca517abcff02301c9dde9749828b9fcf59419bb4b3ab540d667f5923993c9f58409996f338fc54606edb48f95330b69614bd3b1fb928100302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f06622522f1a3deb1ded41a3f0501d9b1f7ab82c5438e03f3b323b10449052d2a14ebbb902b55056dd031030472fb99c023100f07dcab0c82aa3776c4e67e9def92f8b688ada49b0695995a18bf972df383eb7ef4615d40344faa3fd51cda7c38587210302047c435bb500663064023017d28c3fc189aef6a63eec13914aeafa5b27384860ef416aa6fd9d2167352569fcef2b5cabb93a438aef70cc121b1ede02307676198de8931fc4d6bb1e386773bd15d8a1364599c27572e7284506cb3f309b055540c85e719b5a9983dfd5826a817f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300d073e8dd0dbe56a6426f8e9e6d4ac39d9fdbbed85995dd07b724fda3dc7593431feeea2fef4b289da2042b97b4d4daa0230187f8181c91aa4c759d6f95f7c6932949d69ba7d224eb8dce24b755e355404a6f7a0df5735c626b9103e15070bd61d240302047c435bb500683066023100ab4d44e2477092470882df89752b82611937d73fc25ba9cc1b11bcd8d0b15d663eda8ab33bc752b9655b8da848952bed023100dbbcc5110a02a6ee63026b488868a78842dacc5f7a32cbbf9d711b5c17f401034c389f121ec7a4ac4f26e0ba2673dffb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301f8b9a423b5710fbb0aaabade7462a16e4972789e39dd63835655f9b260e3e4e84358bec3435323fd19edae9431d560c023100bff1cff7544313453f9245e7ce2dadf219ea71ee86b01759341a5c3b9f816452977b3edc51423680c35a6ca828fc48250302047c435bb50067306502303b9a3dda9e5038787781a0e20bbf94c8a69288e952b98a29509034d3418dad59d71401077eaf42606ff4d31d15a3130f023100c2e59553cfac5094b04273e79f9e7f436a6fdcd351d2562b63329f3852f3615bfa65f42e1e263a93d19a2b8865858d990302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303006e51369593c8020deb238ea5d20b963bd41aed719c964b34fa2adc77ef998a0aa7c63b29684841d3d4e69f3e6eeb4023100965eda7f22228df5b21f6f611039f8d4873fdf6d23f6e1875f250a3daadfc516521d788f159b284db0a6bea29322eb300302047c435bb500673065023100be0f8ad4a2f5b12c59d329f70a0370943423d733b67afc63499aa892427a2795236de9e3ab25b0a47aa2aafa34a345960230269434ad9446cd9bcdd85bfad9bf42f5d4844ebf601a5feb9b8e50bff628431b8c249c839f6f656225a118f4bbae7aa80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100dc491b1e2b71605e999e62c4079928ffa35f41c6a82552e97d1e1450459ab4639b8a2342d485e8061055060b105cfc0602307124fb432fad16415941cc015194e6435f9cd1849ea5512f88c602f1a759da34a143132e2fc59a69ef1536132a1e98390302047c435bb5006630640230789de9b0b583cd08f6da2ff98d51a9fa6ddfa0aa831366df4efda61c90a2e4ef155c9bb7be70f75e6452c392d50a643d023056c9e4e7bca840de6e94c16e07bf09f6cd428507191775c8d7abaee7704add14d89345d40a5b051ebf319db27c4296350302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008b8afec2620f7035486aa7b082566b582f9899a760d9659b37c65b892aef6ac16f1713b07f245bf3bc2b3849be841de2023100cef10fd65d7969de1774147fe4156d5145831f6244657ba7e4818afc64c988b9dfae2d1c8c50b62b86cc5a2b6b567c5c0302047c435bb500683066023100e6f664d5863353ea5d8f526747bf2d46e22e747a96a769e3760d57161f10db79b2ebbb13a9d16870dbe868a4e60f3d29023100afdd42c0cbbe06ef0ee51685cbfce1727e06bd95de9881523995ee8ac340e4ad29f07b648fef7361a3008e961bbeb6c60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301c6e39e0ac53a6236d51c4d635ec7ef92217016202456eaeadf9b6757303858d71d7ad0162a685cdfb373ded613e5a2802301404077ea89c98e0780e753355375028d8f420de32f4dad445ee238097fb10a4d4d11269bbcefb433373469cdf11ee710302047c435bb500673065023020da818761fd26a058acca6ae104fc7a7546c321285a2c4f2fd5f06338fcdea193e8254f0f9511252a72a90e6003a1ec023100b469262e0f1240d2ed30ef246eb1089a31d503b353d99f68294cacc7e2035742f1367444bd83457052315d09e635d37c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c3fe3d679b96a20260f239c8b86efa08e6ea67930eafbe9cdfc6177638bb8fcc132981d0b22a68fb6405b08099bf29a8023100ea489c8de624e781246462bbfc0a478b91508ccf0213f164d1ab1c9715a9599ca33bbd79c7e815647e03f343b69fa48d0302047c435bb5006630640230693787ac12b441cbd93a925286779cfc36327a9c56eb2cd6f6b2df36692dc8d2edbf817f6c6dfebfc0fe315ee7f67fad0230087e555676dba865676fd40606e5ad47ccc507270b970543d76baf777277ae53008f589142c036d1485207b53b238e3b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bab359dd1885035d9bf747f3c17b18b2586b0beacaa65df140fdb668b71f2ed87518be684cfad33727e8290087597f340230058b506e2e2c49951b773a5f99aa1cefaf2168324b051721155921d916e2828005ba4476bd652cc61d157bde0ea168de0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008176f941598ff19c3ce9bfaa098d3f23e3d8e831dc609654390b7a5716178c673d57d60d7c192f4d94aa2d2c5e3f45bf023100be7852c1b0792bd4ddf41d9002b4efc03c62af8c223b8866736ce5efee2d26e308d4021f41814c0e275587b727b08c770302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e6db27e8298b519f168e3611bac5ec1385c42342fea52f4cdb4f6a7fad55ea5d17c30bfe21e5894331ac67db5edff3140231009f8aa47aa5afa5da552b9b68cf969b2e9ecdc4329e7e3221b7ed1829d291bfe0173ac124802c7243d9c2dfaad63ed23b0302047c435bb50067306502303823c96572589c141b781999cfd8ee78c627ad6c2ac7677554d43af931302d8cd06cc96f9440419e76ee1f7cde3ff4ab023100fb1d1b16c89c30a99a1752941fac9f85544bf3d4775f2cbac5ee357888407d312b76cf805a2d2a42613705383122e4e80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009f70a78b6455d88b87ea006df4bf5c84c4db29bf3378995dd7b6de5db6882b2cd2832f8dd3cea85d632eaeac70914c73023100b0767aa733b9ff21aec595a692e4f030fd963f34c4a0dfd3ae5d013a699d58edb7333cd8ea444b14aaa34f7a8da8993d0302047c435bb50066306402304d3fbdf7fbf878739df6456c990132130b2e3ab2cc871e61be11c362f4b87af0fdf9808155223fbf6e9c3bea93c6214f02300389752a1cf9fada288faf1815471d9cef8ba4cae50e77cde97e0d8070e5b47d07028bb01d7ac01da25379ab26fbf6dd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c4012007d5ffe4345374b114a5e35b125e0947e27f73339c08febf3b8f92a04938eccc8120df31586591a1154a0263fd02300896874befcdbc676d11485c3bf74dc003abd7c27cde84d1fd2f6aa0732a4ea22486c7f7f2b62561cfac224286f2533d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306a838cc45a15d82a41a39e9455632fa19c0f9b3ddfdee71ea37570bef5e9da93af3ba813e02bb34b3dc12cc32dea6a2a023016fa2feaccca53208d75a4439ddeac86ca9f5c79211989f892b344c2c6ec34d44cb94c96041af99879da7ec5ab6f90770302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f5adad344d1091d576aacd808276b9cfbde6f5c9790e6dfd5bc8407e0fd834d1da51d61449dff2b5dd15f8b1fc293e3902305b1a9c256ac56eb19830c3432321b4ef12ca78beec3ba3e13f5c38df4734819474b568bcce3d02a1f4742bfa84365eb20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e9d83d76c8b20014f7b19fb0246866ed39d687fe96123b052ab25e8e3bb29f36e8641e4c1bcbb3f2567dea1593ff5157023100d411783b07d765ef9ce6ae278056b4e8677e5754c01f10fe64b51c2059fa618146d70b16105a1db5d78a94977085b93d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310089cc87073bf20272ea955d9d636d61acd7c5da8346abd0a59304c719a66ec0568e535c552eb739df01e10a615710cf5302303331508c23ec4d92a9695551d8740590c58a4cb02ccb02be66b9bc1b5a25244965864e940ad3540d7766db88693ec6ac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023053c456c20608e9830d8e9e8f277a8d94481debdbc559336626e11ae683e99337a1f75b11d5ee69cb35246d2fcd207f1802306eb5e3ee04e7221afbc098c1ef4d965d8479e575a3fb286fa2145ecda8ee2dfeeeaa96c196f989402fc053f68a64605d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304ad02e18d9ff2afa3896b2af0d2140dc8332a72e9a85fe78bd6022bb4c5f9283712ce863f906cd99cefd5ef9d83378c9023100da7bcbb15c07ce3b11cbab48f0e8168864c699901ffd44b58cf221815683e7d7f44421105ebf17bb625867e0191b000c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023073fb25c723c5c9f9113f0555f195d644c4a84cdd390c8a30e898ba6a07f700e40d500a170c257f3a16f2583643854c5902307c7a559dd8a86f298f9e76e6e3c3ee38a2113fa9cb706545cf99709c3e737a0a10cf2299b251ea3e2603baa7454c47230302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023008aa817152a1ba941abadf1953aff49a737dc4af6711e74675965c6be75b540f58257585ff7111c67841c42340cb6c50023100c8260cf0f003309aa5f2622caa8f5da76dba01761b8f8a2be03692f9816081b742ad89f037c165068abf58083d86cd6f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230427d98fcc0e38087e86af950a275e6c4b6db264cc3d776279ee1541a4b4ff84061e5db3a0d8db2403c23a39cc895568f023006b769ea7a1a403fcaa471ddf3b024ca153c54e1459d058d44159216926d5821642e31c5d640cc875494f197262e42270302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a252efc3657e9c0e1ea392c036304b539d84c9a9146f1fb16d7a947733dd88363a31892bfba32eb20ad776559472bb2b02303f4f243273f54fd0fdb52504d7e52dffbf3a815dee12bd19e333c92de0d78a80f69c5314ef2c22f8151cb2bf54859e120302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e18a8f7491369e2912b50d5b751c2681114a75b8932c59bccf06d688bf6faaa5c0e83598736bf0b269271344bb832b63023030c77a0e628b90461c1e150e7ce9d1af57ed79f0ec0f014bf65fe6b9bc513b576647fb34516005442761c88ef981bc600302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230202a434a8402fe66f837788394b377b36080d65cfa30331d5ee0a0290bdfc228269725aa04ecf941441e43223e717f60023100c3c57fb8ed246f765829573008c9a94cb6e1d0a118b8697dae7f376b781a1a8a3cab4f110e8423dc7df69edaed6991870302047c435bb500673065023100d8420a0f1e6215264b5289af256e39b5dfb20aaa72e14b416af4dd712e30f2cf8cee43e096a3e628a3a8de44ab9a04eb0230546ae7a9e35274ad53c4fee2b5c7ec94c676fa9812672e0cb1e3ffbf0d4e2b2510dde00c0fc306289eab85c23f9dd1f00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f6593fc45575919c1aabdad9bd008c9f1cca9d5e09a8776ff39fb315bc31c23b8b7ed0f7e2c31d00f25b0ba663b99ac002307c4bb910ba9378d6835f4be0ad92d7266b027cc772ea442b55e2cb45654bf2b80fd93d222079c95bc79c1fb4573275020302047c435bb50067306502310085c63e69d1ac70f4a1bd72f4b8bd485a9030a51c5044ace9865ae18e55a31c32af64edf11c69d35083c12af621db046302300abea7209a23df03daecc5f9ecd96b656317211e980fb40e8e1257f71f54d28198ced061e471eeec1f36cec594cc25870302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300ef3f30522c64576ede41216de16089097fc394048d4e4e9e4be13e144a2c9fd596f549f21a7660e56780889cc2ef0bd0230653e7fccd5ba61a99c714e99a7a1ce9d10f8a52998b24da1237ddbb0b1464908cdc5057acc4dc9e0e6228cde636f72000302047c435bb500673065023054057f300a7ebbebe69e7463cf5fc4447a6f8d2c488a37f8a902f493cd6ffa4d545c69742b8cf33e93d1a0bb2e11ed07023100e573d0bc36232a56cd05458b8f144b9df63867fdee3403313fb6aa2e204d5286aee4470bc13125f4cd462bb8affab8790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310082f5d2617330296c9f3efa75b250f48cc8eca487840062a91deed3b64b1a9437a82344ed2aa2ac1eeb3a224923162d6e023100a7983d90adab502999a3482e98f47bf11e4bac22535be7c3a733698b7504fe500f90daefe2d05659fa9242adb3b134b40302047c435bb500673065023100a3bd68feef5427706170f9a9e7a2f2acea7a24fe954f38c7022ecb0d95f4f1adf0684ff6c5c2ae90487cb34867a122e402305c81c2d036032d0983800f0955a2352756ad07bb34a3161c0dc24a078c9cb4da459d7ea2ee38ce8c9e2236ea61c4879f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ffc25e293c5cbacc70b24f6691dbefcdd19fca50d30748eb6c39888be3740575b15bc469af97f52a71a8238a04f5b3a50230294c1d0dedf9967c2bf0a1d6bdd73748c658f6f1b607123768c95fb2b43b3caba43b8b21e1441bdbbdf347fa25bc47f10302047c435bb50067306502306f9083cf73cf4f1366ddf40100aab3c84ae1f05c65a6b216c3362271a7d300fbbb9fc0f9ebf133a06e075268b84e4d79023100923e8c66a25bea86170883a681754a7da27d29957c1609af8fa66a6664d90e895386e1c0b57937915dfaa1ca88a50a3c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009c8a4a5d976427fbce7ec2cebd2bf255561100f501ca203feadae7ee00c80c8d3241891edd488bc863c70fc481e189340231009ac8bdf05d97c824fe6d6dee02dcaccf27de0b0e51cc89ae6be2d7a64571ec89871ac4ef71183b13d8449d7be12383830302047c435bb500683066023100ed77d174fc72994d2f8dcad31e5b232dfc51f56ac18de6e01c29d912bd267af9b7fb9973483e4ce53ba317a5cf80dfad023100f64261b5449c32b3fdb278d0b1048dd7ced4df03db1fe2ebd0158a90ae3c4dcc68fa37e7cc81dd3f608a6ea994c2f4160302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ae18d01e3c66a43bf451a1ad59f2f8f48d53dbeeb07c45b9c6259443c3afee161ec8ad8f32fbede2cf5e8fe0dce8130c023036dec97d182d55dbf46040bcb5ce96171d72b162487e0265193c53797554cd31c0dfa57262eff6dec5de4e241e9482760302047c435bb50067306502305641392db781ea6c762e640245b9cff40f1b73a8078520034a80b997e12d5abeaf5ed4c9bedc3ee64fecfcc7f26f3858023100afae1e38a5a3ce9230938f7dae19722c8b83d3ffd9b0fedd43695a75e7ce61278fea947d53f60c8d21f88cbd965c21e20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cf0c60feffef93a0e50bd57b4f9a746ff8fa917efda0309e2f79ab101c067425f8ea2a2222d5207cce0c2b961a55464602304c127bd86067d3a48dce8d4aa4e82dfae21e84d536925ec1c3cb78102b9e984770d697a7ef88bd3f0139b3b2688765fd0302047c435bb50066306402300e05a720e037d1ae3c26c84821d6c09a0909ac99b97f5ba62ebf6a1bd9fb64138a42d23ea45c57ada243da0986dbfd9302302d5137370d43f6d6d245f9ed7fd210ac94436acf731d8e05cb814692589b25bdd68d1272f5a059437cda3cd774241ac50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301e650c33c8eb9751fd5e5c3120c471a554dd7ad94effb32af7f0400760643a9199fa04e902986cf5c46636208b2df73b023035714a661e049c6adfa7e42171dc8194a0f80205f31059e72718db28dcb0dd93c269c4c8fc7ea31b77a0e3394aa1b2be0302047c435bb500673065023038a35f9cd5287cb3b2029c43eb08728854433898a74864d02bb5229bb8bc5adfb4e265d05bb170fa80e125a82726bca6023100a0e44973707f9e9484a9307cbec67b36e3f75d9b04e023102b6ebf5df3949b7e10be02c6a2929f11c9aacf9ab48949bb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100dd1c673f6750de101f92d8af9a38e17ef71577a465e354f6535c6f089a1af3f3d02a3e6d25fa8eb6f4294344d6e68942023100acac5252ef04f53c7b9a0f9cc05e0d428fd29fa8a393f33544e9f952e12ff6a442d9f6ebe992ed8ffc219094a45e7ee80302047c435bb5006830660231009e2acc88a2192d4e9c30fac359040989ed28405b65f453741373a580c05be2874bc75615e67ec71289ceddbe40d6470c02310094f1bfd0ebe09b49581d9145e74594202057b4a232b920f4d9c21db8f96d9281fbb18dfe5428a0d2495e37c99bdb696a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e0ee81f4b8e2eab1400a5bfd3ba84b3ea6c795952ca92f51231cb4c20b12da57cad7190e0c0e7d4f8426bcb15e78b10b023100da0371b30c0e4e6e639c4abcfcbd1de3efd9d84c0a83620749b93421071ea4c8897cebce19613488da945fbd4590d4ad0302047c435bb50066306402302f38fb36ae084d4ed4258dfe4fbd63da32fa286885399c91fe68e02da740432977c345eb0643f9b453e510b03fa1d7f30230123aa528fda1661f911f2c8a3bdf13113dfb1e2cfd1ca404c135f281032734ed3d9d5c68f030dd78f6553409610733f40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f69584f7858060c3e0a39ca821d37c4c86c48c4d2ca694187fedb23f8460184a31d8905ee9403a44eebbcbeb61e8950d02301f7936a314d9f9731ff798b2cee5ed53c082cb82b31470face3990a802626f5c21ffa016fb144847d8f9ae2f3bfbbc210302047c435bb5006630640230156c673ef3172bb364d8a766577ecd5c876a25114e22ac43ee3115b0d974802575405f3888600ba81996b359594b042d02300f01862aa5d5bcb40b34572f610ef6c6dd2518ebfb1402c848bf65ff690467dc4107fafe603b4a40edd207108b4393fb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307eff090bd862f10f6aea0bf48a959baf46f8e58923b0db0ae0182af87de6685f56f53acfe21e77d204bebd71ada524ee023100c55af7cedbe0ea0d3b6d628970d6c33f8abaa0515db8baf06830e134de78cfdb45bfdbae618a126a2be81498f13037a90302047c435bb500673065023046e47c393d4def1e90e1d4d2c0fa1136b8a8519caf616349576957138bc7e891dcab52f764f56fc55a698ffd31e356d7023100e41d1922e2bc0da3f5927456f4271c189f4997a8f92d53d3b98ae5da6afb49e6441b51921b12de1a8487973b12fba6a90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e1730bdcec8e067be0d6a07e70da06fb520fb9bc67345bd6483cd7dc2b968e87135a842ec19fb097227becca5963ee04023049131980b1d8c511368ea7f06dcc70d991868f63e80c0a14627dfc287e39982cfb3f63612f272d9ba5ca02afe87acaa50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023055e48f3db80841d93c37495a18cbc176ebeb56fe68676fbd701138a8d4f6301dfdf2f2e0729dc54d08e7e8b42103ee9902302c54fb61d4cb9d278b34060382d3b99f81c1debe7975607a35d21b716e27a026853c5ed54d4b35040f30824b8b13bb940302047c435bb50067306502302705b6d17446340ba0127f065d5eb0252a7f1de2a12076189bb7fc924fd9e806d207be8b0a5372187640cbeb2a1fa361023100b57583d5d1fce4610a18c7df03c657bbe5dafd78b868a2a4741e466f43074154a012f4a47488667dd2769b85d6969ace0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023010f794bec18f3a3c085c43c50addee997eac73990637177b9a82b59e53d4972346fdc0942b42fe810543767651c77d9c02310088bc7efa0ec2e70a0db0b79f35d2f8a622b3a757ee9ea4120497bded8fc5686ed44e5890fa72dc8e56b9611385a423600302047c435bb50066306402302df5708c97873de9fcbbb2ac7b6e94098b62558451919e1a8d53201e203ecf1f8075987a38083d76549a87ec2212dcdb023025d2a67ff3db5a57969d00384522adf920f3f32c92f74c2d81e12d8b980a719c63bcc1c7a902b1c46910593dfb66462b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306d88e74844bd2c0dc967f4beed15d5111966f8205027f0559b73951ab17ce1837af29d7bd68d0cdba5f2042e5450c7e4023100a0249ee136206fbd3b2ec1a5f7edf1fe6ccce90b48d5813587e1c660964ae6aecb5835a05fd67912de1c06a7a2a9ad430302047c435bb50066306402304525aa6b26db363bb062456338928990fb6fcab50bfadae1d48c0d0e56a3169b4387b1e754e0c02492905558503f4e2b023008a4ef50521d28341b69ab37913b3259095014314615e1f6a54971a35a2811d0b116dfa282b4164c8a2dd0c08708aec10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bfe694612e9a8e8ec3dc5e1d9265c04119ec3928508ca4a13d1bc380e78a6d32ec8ac84fc3938da67b8eca90b3fe9c5a023100c6277e1f66e7389393b46173f5dfe328e602e471878feab4a95bf54682109c1f5ca2170eead7cd7097f8cd1a1b03811c0302047c435bb5006730650231009a2cfe31ee6ecb89dbd18d18de996ded1cf9e2151eda7540daca444ef0b56ade55616a8fbdb20dcdd6f3e2f795da528e02301a6db321cc1ce1cf5d0b29a73aab5e02411002c365e45628b10bcb95408a17aee0af4c5f4bf2f6f1935648724a0822c40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c0567315dbaacc6bd4d37317831581ac588a2aa7d338196e33ce97a35ddfc5c4764072f9fd676048e0fc1206652b999502303b8284d8b01426b091442d2912b4558635fe1529175fa54a052d32601ed2486d149af447e587111c30c5ce3141d8698f0302047c435bb500683066023100c5403bf6ecb527e96512e37bb484d7b5d656b5a2a2ffc888ac87eecb3ed1d8b515257a51238a72b3055eb2e886cbf932023100d1058bd8ff1d77c50c1faa3442d7e491d06a073671cac87b1cde0eaabbb3fb4ead7cbf5cec9f8434b4c29db47b92685b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310092a66dbbe97583111903199e6ce81920e7769dc73f0ceecf0369d62a18a2ab61363ca7e9f3f330a01034bd501c7f1bcf0230270db3958e4a408cfe4a8ca81589af6dd464ebc113b752938f8f68407ed0daa99b6fd593417e2dfd8f9d03df4f340e5b0302047c435bb50067306502310090ecbfee211f2a653ddd79d0c06c53a1feb82020812d0be4c29bf615091f2361f550ee3aea3e923bdcb670405a0f22ab0230301e052dad38691fe1ebad61d87befaf8cffc9910be7e706fd5051853dc1eaff1097a3ce83d9f48ad439e42f3ab650c50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100987ce45af116a4ddbf334485eb37da78e6edc3f5043a6d30b29c7fbfdcc3f0983b44495eec8d95ef1a55b612a1b9669f02306d5599d9e4ff8b240bdc2c7fce50c5dbfac32318ac340231a9a4647db1501b6e6ac654d508faa7ab7580cc241f8fa0000302047c435bb500673065023039c6a3d47f14ea05d1a4f2450169779c07890db83cc2b86cca6823016bb333c9a59534a86d66e12f9f3b43a61837e296023100c5427b5b3a1e13678f181ccff858e07e0da4c47d2000b4d19013e6a38c20c30b35192d4ad45a033f21c16fb80948e8b10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100910632de36f9ab782e1616ff821cfae28f313fcea2bfaeda9a0188d8c684f4ddd8518eed3f80bd225b569852ed0e94cc02305f86ebe613783a90896219f8fd9dde8618be1c0abce95f8a17d3a87fcb7a368c083ef468b9dc7874909f19a8179131e80302047c435bb500673065023100a87ea036e644e5696055f71136da65d7638a6632f81b559b8b696b0be6325ccd9b1d616d2483b98c5b5d75961198e6e402300af48e1f6c1c4cf4471e80ce44cc28211d9063865bf5013216a617cdc321d75ff02c81ab90b04f9874af08d8879409540302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230120cd903ebb673acfe371833e7d548447f99034303eb25b0f1434e47e856c957ab5deb5317c20ef041c819b23c517fe7023100c46dad9d81f74a6ea0253b675f2fa6d3cab1ea6204574207c8adc0a3f2c783ab7007ab616c61917e70e2658271ac0a340302047c435bb500683066023100f435b64cdefd1ace2fd6c5f74dcd6ef9bcfe894546eca433bab7157391a97c8858dc1a1037b07e6796c67a81bbc1c75d023100e8f0c17bfbc78a508acac5c3a38a839df3c8581555da94316b63c98ce809d594539f423dd22f94da317150dda2c4730e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023010002659d9c919bebdc5f9b1cb277cf45375f5d66d1d96a2578438652e42fafd0f812d79c1e9fee3a8a78b5f2c3fd03802300f430c89c10777ec9e752d7ae6c1174b35ed2cdd46e4377f80d9e5e8a36a964eaa2090315827ab1db4185240d99559160302047c435bb5006730650230190fb34f09ff2824498c698bee122dc40851ff15cdf7b737cca2932a1310de06017771e3343cdf033341a74703e09a12023100bb9db5e39461e646efc74af52c7b3cdb92f95cb8df1936da9d9e9c6239d49ba3bc6da288c90e181c2129e9ec0b496b810302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c939ee89949c97006d1189dd7c0a952e9b93924be7a59b5cb8ec7c606937c0427f453ca41a281b23272b8754e49f294e0230233c7980b782e63e7e6b90af444ea361cd50d2a1973707aa50d46bbb44237928ec61ac18c3a00a247b18d125c586e98d0302047c435bb500673065023100f231ec88ff89c050b7be0cde79adab71bf47c9265f22f49f3f29d538048d48f153391f57c0b87c91d73eb959364ba6da023006bb998a2449ac21717151e53cd6a9b242a8a5e69f01c194d92b4b6442ffabf709866ff29c082dff067f25a695ce13ac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310087064d8480486f11a5858cbd0608aec5a2e887e431039a448f40cacbd1d7e37ae3619113b093e633b74bb010db1e4476023100e97f7b9c0c54ae6352100481f0b61a7ee474a2ba491655d1b2750624de53b6ecff65d70d1a9b2bd3c4e26dafc331bd890302047c435bb500673065023100862aab544a88a3a27402c6283b8efe1e50b80270525f947e404218671cca05c97db9bafebce8a41010d60bf13178fead02305ced7a022addb2dc43f39292d11ee947d81d4c82dd298f4a59efad3c6afdefbec8d1e5cc6453a0a809e8d6e6469b337c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310099770a86e6147f6978cdfa3ac7066273b535c53e497a24b91a9d3e87dea4db1a00ab56dc286de4da4e2358be11d9fc9a023051a24979b86f831c7bfee7f2d6dff4025e1835f427410f6e38311512257fc3b5ddbfebe1c6d1455549e81286a0dffe090302047c435bb50066306402300c2ac136be98330b4915078327aaa5a4697c650a62cf337eebb4dacede7e9fdee862411d52320bd765437df36a75e4bd02305b96fecdf2a5ac1ff6d3a1208165925eec4e07d7fae27ade3b96566a99627a415dd8624b1a0a24feb12a4300a7f07ff10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f79f7ed5a0be237a5ca3ed8c1791b17699e4e997ac32f8fde478da4accbfdf89af71100908ec4207af938e0763e4065c02303e3d5e56e1e9d1733cc699ab2bd67fb79c5b4711d00285c9f4ecb089c46b0c212b2a2a97845091224e9dba3ec1b2a7140302047c435bb5006730650230572911e7cbd6c95c05533a28ecc395ffd7aefc8e305e67c08796174a3be61c8ed7c5922975bb43170936784ad2ecff1c0231008f1e2d95816a598b6cafb80d52fafd089fa33acbd9efdffded08e1ee85af3aa8228973f126ac6f78050013b144a4c3e30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023034b014d3b6fb0945ccf390c8408cf94712e25ac19a6a9c5b6d38a2194176ee5f3808797c91243b6776dad7ac8166980f02306a80dd95e8071efd9aea3ed56f64925d887ab1230538371e5d72f7cdfc4c74ebd67fe48070285cb04814b9ee68af03710302047c435bb50067306502304328f5f36a6c18ab53964697e395eef0eeff619ba9f5f11ebbfd20e1fd478dc85514580b4f95ef98da0da86d1b376644023100ce0c80b4bf57c831f20c4122104de0aae0b925165138a3ef7ddc730eb55a978fdb32c837c3d9fc52a827293f541b84620302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100edcfdec29e7cac529a0c9e35d6c0abc3f0f809e72fb843d899c0eb6f594aa4ec72b4748293befe4e908ed3017fec10bb023029539fb5230249cd95fe42a4af4536b14b6578df6490927e58403302b78db37547aaa276db8ed3b07ec8b933802fbee00302047c435bb50067306502307fea49f0269c7f1ccbcab78b5959097c13e2c40a1fc5eb60ad95a086cdf487b05b84b24dd832e9f47113a9e90ef6c414023100d55e35260562389904a253b8b227e9f0b83c0cef0c5593a77fee3824439efa3dba82d061e52b9a957b06c55cd1ca409b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304c7f96a4b2cc1ae7d4c269e8b53050ca0ffb65a84ae67e76559315b10d5af5900240a80782d077b53e4b45b6bb263b94023009b767614b682117a6e69920dbe3a3867a4c23612cd85abf4829c296636ef8d0c06e57aa498485edcdc5e11a7330528f0302047c435bb50067306502301108c4dfd6b8c7da3f4ba4a8176f9579fe5a2342c9aa08d6db20556d8f95072a8f87f03ab7fa8eb7a19522e5336cc6fa023100d5bee55bf0129122eeb506aa0cee5110fed68a8c72067d45e390e191053fcdb213b083a200135484dea0a5ae0a353bb30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f24277064900cd6160ceb4083f3d66f5e2f8e0ed265b693dcca3b67e5ba25a953035df9d8ec56263005731aa4c186d20023100f4883f432a02276304150f3086bd6e8fe8dfde73ae169b9019055ed1742f04553fa2b3244cd3d8f8057ed9d1546460500302047c435bb500683066023100975827c24abb85f7d6a3c16deaf70a830991cc3cf27ebb2914aced843ef839a9ff09b39acfafc0cc103ee2054add3f0f023100991033c2cb606e435013d5817844fac1d33da3d23d6c1eae3ab230719267d3a3503bde0b2a9c9a9e9c51e28397e8fbdf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100947abab115f3e8d36c044fa6a54e282da0cbb19203016bff53992d638343d19b43a23e7de47d495d33a6741ee6507a200230310c438e65d19755fca04c29d556eb78c6732a0170862458d71063af89f466dd7834b75da519d05583a3637b76d1a0f00302047c435bb500673065023059cfcf8ddaa3023acf6369d2814e4a57389c3e3003ba487f25cd8430e838079bb468add1756c550081b1fc2003f86f8b023100de64538d56e270588e27c05d57e67cf91532097ce36557e90290fefe8de1ac91edbe4930c34c5e93c98441c0ff432e360302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301ebfeac019095f7dc23edb9a315c2c16940b9bd936d2e70885139b0e9b40199932a187ac6fb93c736720c65e75b7e81902310092bea28632a33068f397e688ca46d02232ebdc95b68ced7aa9a0dfdf7bd4630956774b0e7b3476c75c8c6f3ca54ea74f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fd571acdc02d79894a8fb7782ec1f18810c6d50da69d7ba4f280afdb4476687543d7bcead5b29a94009b0630b61463b7023071fe8b3116d9fd3b868ad0104ae6244abc2f395910c8d38215804077e204d10e9bf10008abffe11221c94774a0eb9f1d0302047c435bb50068306602310080e216d63e9d6cda4bef0b235112fbfbc43ef21193c908332d9586d019d46533685c804327705fe0f8eedfead86f1c13023100bd3b3cf59dec24048cc32b80525feea2c0fb0bfa6f5f076e5a8658ee1b53b0990d2ee7e6aca57781b2454e3b930454c40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009b0480b74599d6b3177844890b22679baa8e4497d518c2a4106c75cce04bc7bb9d49227505d190a42e64b5b9b2673a2a023100834ad4ef2213c8971c06dfe55204957e981901ec761b675313241ab940085fb6a6d7d2baed99a1de4194dbc23799a6fe0302047c435bb500673065023100c1bff9c9b9001c8f64a9ebe7c4d4438923dddf5da586b4a6fac761f8c4e156c17bff6141452de9278bf06401c1d98d940230044d8298e1c854c3fcfdafeb266d70b87acf10bb5988615e159950b53cbb1651fe299a489ae1f74198cda13aaae0d6f50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100947f1a2a60b46ba27221c1c322f7999c8f47d52721116de7d9ca0dbaf42fb7986306980a086cc952f689bdc0ee405a4002310080ca41aadde0f02f51221641b3d117207654d49669440a6d24d72225fdbd22841ccf379b665e9f03daf5069f1a663a270302047c435bb500673065023100c09d2ed468a1b3c7956352cb7613483643680e9be6a40b3dd2f1eb67a7e06fe06a1592b54d667b9041269f3993af6bf902305b8c228432b6139c80b83e7803c889bc1d1e85d1f7e3c63acecec840e2397590cd0163d09f9186cc27ec7b009f9002f20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310090d066e43ee49e6022ac05e9fa1bcd1a26fde65a2a545d5a431ff053011d9fbc9e49b4792a309aeecbb909c47729a8a202302a3d2b25806ec23388d87bed3d2a087b75cf49a7818162fc64744025556bd51965044bb4218f928591e1768d22c5eff40302047c435bb50067306502304967fab0391466bcf6bc62a3d2938ee9e653185497e5eeeec88d45a051e4d426ecdfc3874ca014706814df0ccf1de672023100b7ace4bf33d598aebc06c4f6f6657fb3846588c0c7ab1b0dcb3c5f7846bec4c3046c6431f45beb59c97a28c8dfb54f2d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100907129f2f158967c38a9242ae9a90c7165272f493a110626151a115933204f141442bf2ab92025e5a8744778ed0f37e9023100cf07dc9a68c3e9024aa3f6cc96aa012b6b125bc6f20a7ad86c3de086b1307318748dd3a13a70bad1a09486cf2e5bc9740302047c435bb500683066023100b1bd599bd5305628edf4732042b77b4a2fd0ec8ef5eedc7fb453b1a1e6434bbb100cd23e226d9b3b56c57a36604831840231009ae59b2ad3bc8796a863cc1f828a157b501592f986f4fbbd270afb7f48a3c9e2298268869780e38db2a403fd13ffff6a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bacd6e7d2f0154c4533947377b22d489085c9c452b4e06937bb6e95229abc14649d7d4e44c471c6aad350830ca67f763023049f0b67001485d8995ae55f87e0631794c6cd44e54797a94e4d83f51b6b56e6a97c5c668698286c3b83f78d15172e1510302047c435bb500673065023100c6ea8211b80f5442e7cd1420345caffa5fd48bd284aa66592a4f06390b58042d74c224e03de3a320d88bcf3f38ba3ba002303ea57bbe6823d12a6fd8637a570c1c83b3c2d8685478dbf2305e08e56bd9f31f87ba1b8af59bf7bde9bb23a5e1c250110302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303d09734396bfa26ab59e17a020a9781009fb3b0bcef7f3257f05237c15eee5a7c5260c208af9327b40a0dc4e6db593290230098622ff234bb7b1a46865846d27b4727b78123048c721cd549a016458fe495e25f2b04b2441bbdf28c836c2ca86a19a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fdf42c68902a2c12480926d6abbe69157320a39be2e06e147409813090b0e6297043e929805f0318da864f28034be23b023100b0baccc31a0a64b0a37062a30b64e13ccfeb4a37df289c16bde0d9e8760a1a19b8d4a876a6a75927d5a6e5fcfb4a8aeb0302047c435bb500673065023100ff96f3a2a6c492b0bffa132a4bc7c235eb202ec9323f21aa1e8fead73d726a50e9c962cccecee56b68d457e3578f450202303f7f32a41fef04a84392ff65f54ba3c149177ddd0f1baa352abaedd9f00ccd91a744afdbeffe77ca234e1d18bd5283580302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230665cbbd83f8132c9a63c1a822a97bfd9e7050fd24c49610499e12db84b8862802632dc8999c052c6fd5f234ce01446750231008b3f86d235eab94b2c784cb3952ac33ef0b8ac921f1d040e3ccebcc66ae9a71bbb9a4b2f801e5d408d66bd7832c1b7820302047c435bb50067306502304aa8f03fe19c1be29b22cb4376607956413d9165dccbfc09b6809fd1dac2cd511fd79b90f1515fb3879a37e79f750d570231009e497f1c5b7a7ec1bc64e7c63d1d92535958aa2dd22c25490055a1d53df83fb34d6fd90312212b9106297fa57630af670302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f1efa5c797fceead3440956952b64427870263aaa86c0d459b614b26076ec955c09d65896f920377e30ebc2d5ffa45cb0230322f93fb2373af17cff6a979b3342bb29424369d5ff84203200ba92ff9f14cd2757ef23bfb3d61b660b0510355af6dcb0302047c435bb5006830660231008040518fdbfff4ab108993f4800b75183a47f158150397666c00323bd116378d394624b03d6e58cc06aefe0d19fb335c023100fde153cc66a8fd22d338b1ee46e913956a5fd40eabf0e90d312b8339893eb5dbb4ad297010cb97272e118a1cfcca6d800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230011abcdb8dcb4606508aa855dfe2e1f9d727d4d5cdf5f7b63ae15992166d9a3c36abe846c4641886055c45417016e0b2023100f650edac5bd2dd93e1623b6be8a2ba440240b0116f04797f3b2047d4fb34528023c15a44c586a4125bd6d2f8017e1d990302047c435bb500673065023100fec897af374e3ae5e87014d682b026521d0b465c3d1190c6a20b2e915dd27f2d3a10aa87a51c420d38042c4fd7b261c602307f146027646badb281cbbca327f6d3fd6dd9d416a1d8e172258f62cbf262a0912220fc2edce7e78ea888da9d52224d0b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d2baa7e93f8c4c54d4a7945dd9ba736377c11e9adb87d65568ee3916e50c754cf0d028d0b31e757b021ffbdf5bc880d2023017e603c6987d6747ee7203cef8dd04449b3ffa8d3674d60392093267755c60528e11245b0e3ea1bc73c9091a2edb90ba0302047c435bb5006630640230759e8ee9a4d0a8090ebe448a1ec667dcf6fe5993af4af68e7746749d0ea8e5795160680c508425a0044ed5175379965002301e352a2ae27d1e7a2502eca7d422861c02ba74bbbafa48b6557f66fa2ef919da842d93f3138d771f0b992f2d884eb2ac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bd6fc81f42c82e4cba97f7e2ee39f02e18ef1c2218272e78aa7fdf710d974e3677212a6341c1ec1cf78173b511197c400230660114d5cdd21d6baace077eeba34e12818970b68f11133d5b032e4b9d4bf4c78b04ccc43d2c56b58a950483538368c30302047c435bb50067306502310082381d22aa8203a7e029500db21a417684b45a5b0de37ed57192e8718ec1aca2e77395241703ea8d3150282737de8c980230244793c436a851d2f69a9449264679415d6d219db36a22e13b86d40d8dde3aef86dd0c0a37e3f61a40712342e078eeaa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230389979d6456e2ec60d702bb0bace82d0a87e521b56fa97527a9be335f197dbe22cce8f55d2d1972a9ee575e8bf5be0e60231009950552d63b8fe5dfe5be2a2bead80834fb4f04156c4f6a7e658ed7361a48c399222f5cb3e181cd419308dc260ad21820302047c435bb500683066023100915bfcfe0a6b21218d3bbbb7f130768957ed2b6da876347f7dce2183b9d9716a3b5654a9243617419ffbf44dba9d7825023100ed8356a581f1160b0dd9724cad716a605761e485241a870eb22698f797029b9c39d9a9f42f541ff731a0ed402478be4f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008a103e8fc5515c0e1875a8518ec88880211a22adb3116a3201f82e497da99ee4c15b43ee54eba32e9bfbdce237c37101023100e4dd012b6450cbed7c35894aec2a6ede72566faddfe0abaf8d77d22bfe215afc4c3e7a772f892727f884c8422c6e0fdd0302047c435bb50066306402305260b9ae95ad595990fd07229ae50de6444c764d5a58e3171308970fb1eb7959b5695167bc19be12dd8e5717924fb5ec023044d862dc4ef2d36687c210d560ce6d2a210e8902bb6a80085e00ea07b373fc57c6f58b3b94b9bc83caed3aff5ee94e750302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306b776313a446974353e6862af7678ce255dff58c8a749359259541e66bcded57b314a83d8539d7cfd73eddd1b8324079023100e8d4ba54ba5714ea75e81dec50b6cf015b1a7bd6e9496d6512ee0bc847d80438532c10cdd40bc1fb866e8019bb1954830302047c435bb50067306502304c4c493023a177a6af8e6740b2aee5ee2e31b5f409852050ae135130aa1a227d2b3ec914cbde0943d2f8a2b3dda1fe8d023100e4505ad0f026a4d19b2c42e6dbee68d015816862053ca341d4b47ab7356b0ac70fc61a80fb5110c6f4332ff76828e9cb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230458e478c5b9b72c0bd45d87c1475f14542b9af020949c3e950f2149e0735c19218c467a2f20017eff674b078bae7b8c902302477f73b873ac532961aff38b88d9e0c8e5f21fe5f3a429ee46b5e76925dd714bf5713be22cae8a1e31f49f8e1af80190302047c435bb50066306402307f7fc7534ec0564365d6af2906b2c9ec0535f68eb9dd5ae1f92343b838ebde8dc0dd39ab8eed3c2482e4f4c000a52a600230660c94d6cb7f8eb466f123bc634a9e819ddcc70362233e0aed34c11d2a034aab7ebced64c64428486e9e61bf211751a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310081c0bb6da890d6a3d3e7faffe21235b041058bc5c790dca60307e046fce1aa64e1e9ad5405c0df8561b6b1f18345b085023100c9c741954288da63d2a10a8a5c9944cf6db27f482fc145aa1f88e65453e2a4d3d369079af799acc472f08e30b4ca43250302047c435bb500683066023100d2391631ef4bacb35fbd715f29679f81fde2fd770b6ba824c938aa3125acda0648ee032c5cd913d7c83a7a49cb6aeba4023100c23ba129db9ad12a9ee857c3d6ea43c3ae6e74b5d193566e94880f725c4d71c8c18863b373440d3d088c0fc8c4c5e9e70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306f2c1ae8012fcbdfddf08d05fba6655e7572a0e291028f9618369eca6d489af26e63a3e669bc0e307f7df358ea38cdfb023100c3e8205bcdf35a29668ccbc25d95f245b7599d66ee61c6d3c256e81b233f383a8491a2442d26f5ccf2b5f51fec3074120302047c435bb5006730650230284e8015e5b1979452e5b7007e0eb17541f6595c08ef8e6cfacd50ecfbb95e95b72d8614868a45336ac94989d381e61e023100c5d0b32765b1f742454e6ee59d4c9ba82e41eef4612c2e35afcf7f6d3783a3443ccc381dc821671d74a18a1e5b8691d20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300b59eb1f06faa0562bae88fb3303ad23b2d214803d9c1dee0b2f5efc2de8d27ba82be7b0b58291434269c9cefb15f678023100fdc737a951260ceb10cd573bc102d9eaecbfcf83fa476d6bba8545ff84e1846f1e75c0e0d8a5f8cae7dbb3e8e3aba9040302047c435bb500673065023100ce0704df87684f9a7bd8b8b7c64770c1a0c6fe645bae96d25bcf867464668d717c1b0bc8576c1be9fd5e382a575b09820230768f67fe0303cd89516d8e76de71b9f2fc7d6b3123dd60bf5317e11e10de88c662978312fdcfd02f1e8fc84803b542770302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023002163166399ec494f6f76786d7de79b715c63727b3d246fd41c2bd231c15d19011be0b6d784ffc3218da2c12f1f23ca3023100d7a6449eef5ac18e288c4459b23178acb7136630e9ab6ffbe5dd359afef46d60e83e53ac5b3f0b8b5c887e682e1ccc110302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009cf4beb992e009ae4b0920461e843f17310913fc322660da5b92ac7308b4a0fd152a142748df70619d6f9b991a10802c023100deb4e7dbfc0cb0d3cf035697f7c5bb3a2991094a6ce040f4c266db48bef6bda6d35dbf81cd1df1c251e289fff1775c9b0302047c435bb500683066023100ac078b93fad1b08d68de1939d01a04c91cf288250ab7882745c0f89be8541fdc8af74e92a447dc6742b71811a4a83a74023100c4a9d178d2c42ba0c408275b19607b94ec3460e80e65f576e55dfae158c97eddb41797254c17fe61097d9b41241d3ad20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100918fb287fcd7659ec02ba7c54585b58c5b6cc08f500e01ae9311b037b78759124838bf55372ff12f8c93c01786376020023014353cb557c64f273508f0bacd4ff9d3bf66de10eadab2bfc50f3efa302413648a9a23dcbf678b9c15c935822b5ec8420302047c435bb50066306402305228f53c03fb263c49541b32b60c93798c3d8bf86810dc1bc55d242dd9b0149cfc1b0c306dc83e8077b29e5bb450c5f802305ddbfaa7284f012a7dbd7dc286e119128dcce93c7b1cf40878821c3a36030ef25829e01da21504e58b64f9abfa35b4e00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023043e3eb775fb5a0c9f6d1cc0d2a56c8a057ed37ed3fec46654abee1849dd010f2d7d0c415e5a96c9c2b8c14fe04a824e9023100c905e0f0e7907d413a7e317cc1a0bdd3105ec67ab1b7a51bd1b712a83a1f9c0656975d1910656ae0550240d5fe7485340302047c435bb5006730650231008a598e911581ffe25141e823234eeca1b4fd58bf6eeebd96126e302932381a598f2c9a7d283fa89a0d0fe1b554a6fc0d023010c116d5ee9df8c76d343bceb4d9fa5dc5b782a5d60bf13ad4936dd9abe445d081b3f8ed8ca7417eb49f97363d7811670302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c79fb70d04cc764709f45b972e5d54fa504b3ad04bd4517269f9e2de2769fa76588a16415456d4c55e88dbc91fa17933023100b9970065020174110c345d53a53f58f06bb5d0c37c10c0c8fa031e5f361625e9fb04d08e5acbcf40197da5d3b84552f90302047c435bb500673065023100e89988c8b70d50a752d548b7fb0710ff8d7ba2c5e99c838a03ee85828b55eb16f0f52229a46997b7a29da4d9246c1e9402304d2030036d02f88f1a4382ef6f6df497849f97abdc9a5e185b4d05bea3f3a54867014251cef77112a06e5eb1b3f808040302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230749ab388e195910f8a0733c21e6f7edd078f8e913a139bd0dec8daafe3ff9d4dfb504cfdcb5d1c86c337881486ac4e8602301e79fdc7ef8147de653102032027ad9d80c6c2251b7c1c458e4a413cb9985dcd9974d1fc439767364d41c21310d26b040302047c435bb50066306402302709a5adafb7ecc12dbfb1e0cf3b0e2626ee7ac1a9eea92469f63158d5dd2b6bc18042d9ce7d30b5f1add15febb8acae02306199c2e646f539519fc8d472279b4a87e5282ead350d8bd56b3fd52efc4a7d94bee9e4cac60b4d55a5e53c0660ceab7f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100989ebfa0e84834adc9b9e8395646b22420920d3b7cbe52e73809777404c869db22909c9e02dbbc5a3667033c15a3f5ec02303e646f2ab0f6625b9cc39bf53eefe98d3beaba7c8967636a87e1a333b7fd455d7e4498e0f8aff4977d4a27cf124dc2ee0302047c435bb500683066023100afbbf0367ae13e0949f0ea61dc02a40bd19f2d4481c523dce4e3b1e22b557041f29dc5e9d3484976b1e328013005b44e023100839f7a9624d785cec9b47c388912d61c8565502e818d0ff902272435fc583eb56c2d16ed45a49e765575effc084640880302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100be2bdb353e6a6e5afbac2f6e206fb01228a8747a0ec9f5ba91bd4900cd57bd889e81836f6c2a4fa8279b0d1af96dc36d02305230b047718ae01644163ea4481a3fec6474eea701e8a68cc7bf589fa98a65083626a09ce07219c2a2f4b7fbf30aaf0b0302047c435bb500673065023100f7f7685b0ef726147c276d240d0ea0ddb3a5b9301a575d459bc95eac29aa24ae0108cbdbd0773e7b517697363f18e47e02301cefbfe80b34fc149a700c53dfde3e0394d2fbe43688e39335b848cf18217dd78d5959b032a2430679da0984a833b6b80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b52c550c7d8d91130efedbf5fad8f7665ec9716411f31f9772537d021866d022d8335d0ad114187611b5fa4b677cd0bf023100b4881c00f9aa32e8931b9e589ff0bcdaf8604efe7aeb0b2858dc2439079dbba141a9dfa92106aa34e9546153edd8e8680302047c435bb5006630640230593586df346fd121f3fc3c0a375347bab4f3ce233390d2ec826b5fadcecd593c22d0966639e40626c0f37dad1db3e3440230430e50e35509b1cb78894af2e7f12491335ec5339c5c0398101c6be696d5e3d8702aa91d41ae83860faf9cadae970de20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d891828e8463c48bfe51b79e7b09902af7d11f864d9188e3f0722e2f8856b287d5e7d33526c14fe2c968c84f32f4853502305813bf1a8978a0db418b5fec990f50d6d7ac54b9734c3e0a19252c6a0f41d5a16e3daa0f9e786c114a8c62e356f91ee10302047c435bb50067306502302f545cafc0e861e2c4286c73b8ff59158ba0eee93d259e2669afb677bd157863ab65e876d3ffb263f03a71cb2458c8450231009b569ed0583e78724988b01f7a8a27729c394d8a055f19da3ca6c8be2d1abb07db71ec6109cb3936b6e5607f4194fad90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230148360b8035a084bb22573b393c549f51e58bc40f662469a82869578512e68b1afdcf98a6fe1ca211997ba606335c5d702302481f2f2195198a14557c46e24637b51f953f690bc9d09750155ee580175cb036bcef29f017664a0093597571136eaae0302047c435bb500673065023100c01c18dc8606ed43055c19e2f754be4cae8351cbe93d43e02e046076c726b8fc68cb4a028435614069125d465567a4ac023000e2ecd049baaf674066b03718b254f7c9b37b4c3eb62659871143232fb589797bddbb072eb0c6202586b0368a9601d00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d4bf6bc201bfd78f8d6563948770e3109dfac26e0f854d2d75aba1a6fc72f6c82db82ca993177535bbf4baee1e779e18023100d805297a2e91ba8f137eff7dac4a8b0609892aed0bfd0160a7b12993be506f5b6cafac548e03bd81091b672ec8dc89b20302047c435bb50067306502301fe1fcaf945928243f470d6ade8b6dc2657c1b44c71aa7a3892586bc4470528e23d26cb8972af19a82680e8367a8446c023100c7a05bd1aebe89c588ab613ffb0c3d745273d8887a9fa918f3b88f35e0008bc1dda67907e8ba9da1dca57d42d69c53680302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d21bc4dc41622cc8d71cb415f9731586216ad9d455e571807e5646a9ea7c20bd2e9534bbb3f39bddb7725ed2af0cfe9f02306caefe76f35c4592bc1c097fe88d74dfe1e6235c66d8c2a2f308cfc012a2775464d6dea9c014b254cfe6cc1d2645902c0302047c435bb50067306502310096b75c56e455c2e5821a40e38c7b01b692f7b8132c303d2befe479c060cb633e831800f9008478df25fbc0ca170a27b702306c9286b3d4b7a972829dfb112758d5ef25044c697a77c604b7732514ea6534ef2ecce0bace9cbc15322ae0c9a991894e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fa22ee44102d5f6aa8f518bb776992e2d45b32e58c708de0fb8f5ea77004c36605c1f60aa5cef1675e562e367cb85d33023100ca159a7b35d29f3badba77d03c37ff8f2964f7e5c73e864800d38a57b0adb6385919ab027a1bc1d9f3e0a1ec98321e910302047c435bb500683066023100f629eb529f8f24394a49a2a88772e61b4e44e791dacb74ce5355ff14945976aae7382b850ffbbe77e591a8603632073f023100c4d0230528769ae5ec4d6b2d64833c71bdffb33f0ed4338dde2da2826d490f7265bfbff88e123346c2321a17490901b00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a9c6a35657a34a2033a13d4900a9990cd41764ad2944085e6eca1b47b4a2ba66fa42e91520b21c48a4248fea28a748930230405caabbcc828e6f56f954168854e14058d5723d28db1ad5bbc79054a575c240f8fe021f51cc86bb3c9a5aee815386c90302047c435bb5006830660231008796315b5a5bb2dfe4e40224bedec694e130a155ae2075f9d72539c4b375bb7ff74f1dd7d12d480c658438cba8d099fb0231008fd4bde42b0810781d0b67368cca832be43490274528b7b52d31da6d146b5ca49591a30ee57ba3837990ec8324bfe52d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c6208521b4cb9daf5b8f9be2ffa1ce90afb18e6cab29b36165ff764a4011884b6bc179bac1287deb334b50d833dd9b790231009796e035965f4ce6c5e5931bb2b31a1592da8df4aeaa3b794b0915232bb6ed893587372e397e8570ea09ada3120f43e60302047c435bb500673065023049f00bc044a7ad6e88727de073ca94c5f0bcce1ec17a1c21e3185b6ffa25ad5d3d33cfeccf94793ed4da818786917d34023100e80e3b93b08f3ca3f567f66abf2d02178d848e7fe2012423dd4162d16e61c1cef9eaa7ac1aa792a93b69b043068b972f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230413279115aa38cf3dafacc905c4b7cc55d23c79c169033593fac7bc4dd9025b4da6bf616bde90e18f73b0e15460d0b6502303104561c04193aab09bf3955218e99dd84572c7afd68328c3eea8a518acc4ba3a2e92dd24ce5629e99261db42b05744c0302047c435bb50067306502301ca951452483331fa56bccddf70e4100fd8cf418de12c67ede61cc0c977c50514e42ba2bef5bf02b211ae06810690ced023100a12f3dabf7507ade46e9eac7f03ba36a145d59df5c25199121fa0ea7092b2875a52abc7899027d77ef3b64c3805ec8690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fb2f973a6ef0806c22cc26124bb11a63e27a6d7ad08b4b737fd6dc479ee2d8e75a00d863211043c63079907a742b8a80023100834200a2478c49186dbf7a2e9d9f161efdee4cec2390b421e1fbd0f34f27ba84a788a28399d3daccc0db51df63bd2ec70302047c435bb5006730650231009058743e08c7ff932d63884ab2bdc8abc262847fee02df4c62e956a51c41e8efe1bb54a223916cf320badbc653e4fe6a02304d7633d4b3c1ab06cfbf6b43895a73fe33127cce5fe726804aa0ee41c87b7ea44bbe4ebdf31234bedd9910bed198b4700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023051cfa1ee99ee2ccae91f70f2146c7ab9cd97bce0c31edead8925d1d7e9a2e411a867e2498bbf564e3c4aa05aa71d029e023100df18a94086542a6be059862a859102167bb785cd43e908daa6f2c2b7fb00f720efafacc459e1ad85e91e4cfa0230a1080302047c435bb500683066023100a6866278dcef1d066387f8456c8e8776e9eef14afbb36daeb49897757757e3939c332ba82a507517261ed84c35da45c5023100af3a9cfcc2a12d1d770b9212ffa120b0b0507b0e23376c4c5f0657700d9f27e630c865e3a67267fff37ebc990d42ddb50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310097cf5cd707f2602864cff61cb1b2711cc615582c77e6c1b1c5afa661e7b7c5db6cd1130b9643e1de6d7aa4fb5f4d297e02307f6bca9b5dedb85890bffc9deccd091e676c45dc9e1b13da2d3f10ed31a466d0ea9f28cd7a9abe3ffc7aaf80738c05a30302047c435bb500683066023100bad0c8d3f4ecbe41e6e82b1fb842081affca3efba8537bf5704fb645b0955dfa8e6baa8e6b4d11e39c00d402e0f211ed02310085bb3b50eead0840bb4f529f0a0a28c54267b38190fbb630bbae104c8ab060dd78488154049fc83220f45017c631adc00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023065443a4df013115d1372addf6e780aa43c7d6d1b4e9551bf4ec1c4b75801d922c2dd4e75cb66b6e4364cb516f57399b0023100ce6a493c87be28722bd7c93a3100bdf054ddbc928b35f354fac7555b364752ba40326302982a4921bb43de734459ea250302047c435bb500673065023100ea71013340eff2bb1aefdb18f104ae2ec54851fe163c641247dca24bc7967afbb2be498b2075f04e8cc28bea737ea8d30230336423638955ec2d03d513ae07c4b09ca644794c50b931d271347cada0ef2b03ef4a7ad725fa08a5a46a539f513bc8990302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e86b9e33c4b6d368b45aef73e11d6ecd3f1d2151b55e85cc76c5437a4ad84623f18b93d1c6d8bd7eb35fe3932d9c845702310089573b27c27e77c1ed06840da5bd7d18d5cc04004db6b0641d045d066bc887dddb6df1fdee812095f816ca682d12fa3e0302047c435bb5006830660231009ae13622625dc6b5f001c412f3ed10e2dc53002ed1c052dfe88ba8568028a36076c4f377c84f6386ca713b15bf6e16f0023100b2ed8abc88e29a0aaf4bffe0d47545ad08c97de51f209f064c118223c5f5cc7d5a5dfd1fa594801b0435b3eae41458830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ef732d2d276d518c01c3e4790fd462375e9d86d7411818b8eb81bd4e6092512a96e572dc1188d9667ffbfb0350901f2f023100b78b6981441538bcbcd9383a28ac73f66d5002d8e5bb11821b0a204538053d074e029fc9b7b375f10f5325dfbd02157c0302047c435bb500673065023100d701542e22b0c78e78053922ca17042ab1a95db2e9f1fcf4ebe0024a65777e2c9f260e0f5585771bba7694df3243b66702301045eeae02168531e0b1be98eadb4d16605c9f78be58ca4c651ff044078f2533516f62a7281d6f6bda1c1864135d586d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fababa6d866f383a44b10b5a241c892552b03d9a1e0f1ec1f2e6c496fbebd5cc904a05336df475dd8ca37552876b3ffb02304ca81ae422bba97188d05573c205e90e6a9a242b50f6af3f4b376ed935d3e4191eb6dc8054fb55c5f3cdc71bafccd8470302047c435bb500673065023100e048f66c27d087a481541ae6e934619a49774864c56a83d20bdfbeb61ad83f3c5413668af5baffc13bd4ee6a20616e2702305b89041d35048e53ca932acdf96249bd9306118178ba4122a28a804967a9865e5a5fb2f1e62cba715ad6b0149d402f8c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230296c06a04507b2c76488cb5c1d393d6b55654568f686f94ab8d49bf4dc395d719b8489f69dae0b92533de8beea21f23a023013ef016a4e733d4d13218fa044bd1fc7428d044dc82e8496eb0e13662c7d5b40d9c1d4077a77a51db1fdb52e41c80cc20302047c435bb500663064023008b0f8d15bb7941d85d1da3a8b03f2744abccefd7c83f5d9d8365fb601581e30a5f2ee706e64bc69040378434eaacb40023022cc7aee05fe06bc593b51cfaf4f7cba04188c5737d9d0743fde5cebd1cdd6df73af09bd2c94f4d7f153595899df239a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305ecaf5844f65f797864e7eac2ee113b570ea85dfa061d1b2b3a6481cb291468b61887a311867befb19cfd74346cc5c53023029a3b239ec4d0afbd4c21edb0eb38e9ce49df884ef33a4aaeaf35ff1f4e383ca5ab770fd7c45c9427e7d45e5edb3936a0302047c435bb500673065023100ffd0a036b0ddee0f89cb14abc9dd629259ffb3fd02c81b9e16b394f1740332e36d36988322a4a4676704e32ea7a11f5902300c30460221783c85b3890cc91c97ea7b30602420e2042fe235d519098d1bc43ed69bd9a0d5d7e0c4dec367ed0a74b0fc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b2adc4629bd86ae6e0b138280727977e04c1bc3f1afb8da05201ebc6485978950b6fe280d168acc67a620617c5a3bc7c023053a9348fbbc2582aad996b28ba919588397652f7ce3bdf97265b987f0099a8c339d3fde22dd62dfa9c30326d09ac897e0302047c435bb500663064023028b63bf09808f25f67fac84f7efc2e95d9cc4fd9f17dd4ac00f4c55a9950f6a748cb0795f1d9a0ee9476b509ecd28124023047df0ac23810dae7832e6bb9e725cf18323a26e7cf3cebabccf0570ff0faba2ef754b5fd078baf36e219efc533aca3cf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301bbf6ac2cb7d5816fb14960efdd0c475ef9214c96ea9de401229fb7ee269c2d39df5d64f0f8e6043c0ea1ef2190d31b5023100da30adfc6b07a9df9bb88443acbfa647e78f4bf43bcd5ba89616add61ca88ef5e30111fce4b15596d6b2133bb950193e0302047c435bb500663064023044d6e632eee7b1a8547ee04295f795a7b9d4c73641545bf0e122d4b213dae83a5c79759fba844ba65d198921cc9f17290230597f3f530c57a440f2ea8e8a52ffd14ec4ec2cea75554bb85147407ac3a3ad64668add8a32e7509cf3b3010236f1f1ca0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d384f4c0c2341f5d5f432bd7a5602541124c0fe977c49fdb89c9971c801cce995f6b5cc1d8ceaf6b5fad03ea0749c727023100ee9356bfcbd8dae32cbc47b53fc84a1fd566e079a1eb4365e95b4f981b48c2c9bd81d20af8a0d818f3d0c36457ce05d10302047c435bb500653063023050c0d4915577466ce9e58df23e5f90218adea41c43296d6ea3ab6d7c40a11c303023fd52b996630fd86ec0c994a71e2b022f7ae5e0236d7c6114a52dca8d6f9ecd1811671f0a1e8fa5bac8e56b39646b0cfd6aee61f1b504bf78834aa34154f7680302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ba9ba720284a1c3b45a85fed2bfc84ca218e07bf138e6798f11ec2bacefe03e0f8c6a287ce9fcd9d5cb8d7ce4d6f179a023038dc17061243284ec172aa4747fab1734a805f9d52b631f2b1502b116ea8931e5d3d3d6ab76699fade1776c0ffaf1fab0302047c435bb500683066023100fb44164e6198dd5307f1195be00bfe58ea6bf9fe521b90c8463b087e03f9a927992cc883e45e57ed9073b6acc1376d20023100b6eaf49f1f6cbf66bad83bed10a911e86bba1b9ec0214b63ba22285a4c822ab8dd4a0aedfb1969efa418c8e735c5713d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d3599c257ae499efcd931809b8ff004a63252807144003b41de769bea5e0bcb76a451c5dbd51f107d21531ec643cd4b402305b557d92c3d41c2149585664ad0f09edb0d6eaa1a5028decb7491bd275ada42de2340f2d8eb21b3247c41555b900e55e0302047c435bb5006630640230452b67c320a084a6f359783f2c7589e66c85883f466a731e763aeeeeb2a84a677e086c3a43fe50d62e33acb548dd55be02300107b39a3829fc07df8912fcd9dbffc76420bac4114d062d3c24d3cd2e34f16288a85398c43b0e390d14d7017bbb25e90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230428abdc426b46cca7da6674c910e282b3e3ec88dd4fbfb29f2d7154becbc251e58e3825c61fe41537cdd4be6368e344e0231009055541e962324b9a03b5ddd3ce2483fb2f3dc53fbcf4048dab41d1fc9201e1ac98c14fbf8ba69f7c72412bb17cf1f160302047c435bb5006730650230580da486879e5bd58788ae0ae8f7faac492f39eb0529cac33cb9e8b292c12910e8ae697799d0300bae6639badc80ed11023100e4962dc17bb3b65718a427b351eb1473d9fd7dd5c48b32e0d0a6ded99169c854bada18964baf3906a48d60170eb4214e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023062c01c304c6a12b1e47c37d42ef08cabf13d6c5c417d5dbbb9c9f5c934e5b79a258a565424b51b9d62cb0280adbd4c54023100d4045ddd3dfcd0e647db5e0f174f1e3b10b488c158f005b99945ab21c4cfbcdb1dbf44b71d599526c8d411a6ed403c5f0302047c435bb500673065023100d582db9c5a20e24437dd5839bb069edafa52f6868ed650440219900c05423961df621894e9f66b83b86000fa574ac8a502303d890cd1a8f616099cd48fa23efd0736e2716ef8db180a715dc1ee84fa996a74bf32d9febab3d0de649fa12962725f250302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230476849828e3e011c89969e88842ce749b11a7791a0dca858c638344027805349da7237808720fa7b733c5eabc629ff05023100cfd76a965bbc2ac22e05a54d25aa856104abf36523f7ff84f7c28b227ef37e3e49fe6474a6af46f0fb9b6a5625d81aad0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305f264699d9777ba9b471dd1807cf2784aef5cbdf440d53478b4465ef6067b3bb2fc81b8d6f34d8258b071ab8817fbf6c023100922a9efb2dc1dc0bc8d14f7ac8a90027a2a0080889b78d4ffe7ccc02aa8a2bcbba93fb99c67bf78e961e93024c5bba340302047c435bb500683066023100e3821d71333882da32558e2caf4377ba45c77aada75102da397c6a541deff78c84f52b3488cba5ac7c4e9cc615046a68023100b5b4a0aed0c464e6cdcf2819d7b716d5df7eb78a3194291f653e2222d26681f9d8fe3ff34cc037eeb703d3a286267ff70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cd17cb25221a4d686cf73082afef6c6fb0cb8ad03e64bca722e58e9f2c7d324b89b19ad11d2cf36379dd620f28e3c1d10230544d5a7c0fafa41d917844edc71e7479aae1c7e00bb3ed88921e73b6e4009e8aa43de7f46588c94337d05222627cfca60302047c435bb5006830660231008bf19ce7c8a947a534e53d1c513669c6d8bf5bbb62a01bc30252a535c38004a2d8e7b276f11e8ce0a625361df3f4149202310090fefc238496ca7fddbf0cd09df63e3eb78b9c4e3b795e90a153e4477919c70d0da4b981b55575680d5411cc418d8f000302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c3ee3b0ea485fdfad14c68086f15b00319fee534e920cf8d7b17245257d63d7516b4953026004683e8f38445c810692e023100e16690777cbcd6564db5577be02c5f258ffd5da9c2094fd271057b5441f71f945ca9b42962efb2a3174fceb32e4a72020302047c435bb50067306502305ca20b05337b2bb481bcb07f69c693d4296bddf99bbfc506bad843a73d3d8f32008c1ad8ba2dc8bd7ce3b87b3d354466023100e2a22381f91440c28dd1557eff9b3a429e6057cd996228eb7813185139d09db10cc6f210b0d0cfeab02967ec665e32ec0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023071a083e71575d2a64dbcb3bf384b607d1a587daed80578b7bf0ff45abfcb00a3edff623b53927d071575284b40d1761802304d9708c2b77b5c60e70078a977cebf36a4b9df90d8307022070f1b03f0250e70c8544c921a09116941c412c90afc20180302047c435bb50067306502301d4681944d22abef12fee066f2575c5328ccec6e640f28f7f9051b6b901165e391fa99a612ef1b2e30ef528b40178d79023100db271eb0f5aa766f0e70290295ec096802709648d477e18debb7e203cc8699016b25b5c7011d6679e04adebe9c4f6ea00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305eddba2dd3493f1886356f2828ce3e6cd28adbc163f5fd0cef0871dac5d1f0c1e9bdc446ce6c169b58848d92f9c7497f023072b07a5a61ed659a9ba01349c70b4093379aa5a3b6e79cd3a9a6ee5845c24fd7895b0147fd4966cd81797a73321577650302047c435bb500683066023100bc74d053117a405c1cd3152e937c11b7d33688e50fbb39a497fa7251e159a7b582974f519f3f07ca3f9b8bb9a6021f31023100854c9c470237c4f3f5521deebf6442eb368c985e951749d4342497c73579816709b3aa7da98403ae8ea5c2b51ed657b50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100beffe4fd78664a28b721ca22ea322d2f14d74736d2a4d4b271bbcc2a3217227ca0f9275a788442401fd5d6f0e7a2cced023100a84ffc1dc13eee32d7ebdd4a96e0824fa58047a2f93442eccdf397efc5f9d1038f2c1298ebc26420caf18dc76454e75f0302047c435bb500673065023100e792c90eccb378a692f3e5b36f1caadd853b894ae656405b41021ab65f850db71b58a2641ec3ca411aba420511a942a80230342b700205e29cdcee1d2984205f4d5329b2c3d46a38e4729c4681e00781e6e6c48e3a4658be12bc6e88ace3a8c18d050302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306b2e8cf6ef5615e6cd147c1470d62142a15ba2b6b17d496c89bd06eca8c4a2bafb018b32a359675480a9f5f9199ee395023058adda7f4ed0c458ebcce2002881fa2dcd1ffabc2d540476d24abb990b63e0c14b128f86c7f8c6a78409d71e31bf88530302047c435bb500673065023100a329e2f0d410cead15b82d7010e482cb140ef4a39f7ee3662cc45ec55f7899652e87af6f5a88c715ade38c6a9fcd87f302302aa39863db335d6a3f1b1d357ae367ba6f1889d1f1f4e803fd4b3c58ba0240760b0026715517e0fc30b66a539959dcd10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100afc0a49b8874bb419794d6c06d1879d83ab612ef8d1b4256add97cc1b867291fc3917a5bac53ac5de1eaf5132bb37ff202305d3492486c7f879c3798304d957c19bf6c19bf8d26aeef0cbfc9fd2314b91615e8fd5d3fa3b06ed6208601bfeedbb79d0302047c435bb500663064023057eabd3d36eee8417d967afbf7b439aa665ce6941aff6b85a8011c3152d77ee968526fe3b8bad3e3e26b0cbafcfecccb023037d18b731a5dd64ea6a166bc31116c419600856d96755ee89ae6241e06a7d648c7aa5eb71cb164d0799ceda17e9798080302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300d0dd895cb08c5713683a57b660a26c88fb7a7bf7c424c928e23bfa70d8052a5078a49ad9ff8d2dde96e1f1ba16017150230455d3d5af5681bfbe8751c719585735c3a87281c34d8140bebf710c06725c6b2a326c5755d84ede352714c71e12a48500302047c435bb500673065023075bc15d6fbf5868984e0d86e0e0b082cb2b7d3c3456f33d9191a132d3c8f6f05c2f4191c5e88c84f7d72d29d634ea491023100ebea6badc52e4e94b7a72378871a155d2ebb93e1cd1ede6553338be3f86e7dd451f8f42ba5c78df86dbf736f43b2aac80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023068c561619afdffea26dea78aecb1a3032335d3570c5753e9133cd80fca7c5f3caf705858ecdd298b91b41292518eaa1d02303e4ca2a402cf16d589a2ba04e2647bf49d5cd6fca660aa48c975455de96b7b95b26f0abac9f8ebf35fa5d84bf509eb550302047c435bb500673065023100e2f6dccc56ad6ef1701d658733c206b982f488524a816e8e877737d36c16dcfca64e5d3ab636e7d0cb86912113af7dab023029747b4f4316d51d2a7d930cee0b0dfdaa00952800f21a16073bd99a45c99dbc0bc2f46c4750ffcaef69ad5cc9853e8c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b125a5064f3072cf1a459a836b335970c7ac2680a9e31f1e75b0ca29049f6fa3146818598f391922078f1608ec97268d02304dd4179c642faef738b9c2851347d5cb021718dcc5d3ef9bec1a827729b7b11a45ba024d0b75e08b2fa86cf5d4efa8ee0302047c435bb500673065023100b6ff9e18cf9e3ca9c61d796d18b626351aa6f5299885203393143b4e0780b9bf9c1553e02cc1185d97e7ebc6d549806002302cffef333b13785084cdffbedf4881df6ff40c68dea88cb7ee19c43007252fee2606a5b86255ce8b6c278015e7000b4b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100de857a41bc1bb9c9da9416cba3cefd5621c7abbd9c4bfd73eeffca25fc7aaa7543dd4f893b81beafaf9f71e2c04f2bf002310096d78e829098cd60f8365f797d4e22057b85272144238df742020e2ad77bf58a7bf22f18e78ff96e698a8bd717b5f7c10302047c435bb5006730650231008c9860d999115cae20005004ee95e523c14b8507678d78fb65d1dac55e721d13d8b03c5ed0746cc3e425408ac964bd7702305f92d29bc0e38e933b093edbd5b39fd0de3340bbc6aca926d06bbc1cad10b0ba79dd34425e3453846082ba64df4e8a810302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230178d5c8ed223b8e11128273353f7a1cf84b280c687ffb7fb575de7258511106504b94443c178400de50cd4c5a8182904023100ba4fa57321f8b576a8cb545f9742d47875c090565eb97d48e347754df232f8f613aa058a8a3a4d81586a37045bc4124e0302047c435bb500663064023011e7a172069d1600d0ef6bf390046641f9ce8f2b4c7b6f48f541895a482b99f56c1946537176319757834541a543543602307abcc5338d3df60b47782e860bed7c3aa3cac81ce5cc0b444f9ea7b99adeeeeea8ff0597ba032bec533c81f6c2a1d1920302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009bd836fe19fd9e9378499e4a128562775ec6e41b58c02cb2ae7ca0e5cbb36f0975642d9c4547d652b712954d3a305db002310089a84c0bfc2c2b90b83b3b7f4ca7924fddc6e9001381bbc9a1b732af24b79da13a643f1e65c40c88278d4e98876d98b80302047c435bb500673065023100ee14577698f5eb1d8ba94b620686b61a902c640fe45e8e63cc8b2cfff44f4e9249a72a66c9b1dfd1dbafab5cc118f2d9023068c59cae8e58b2bb39c428eaa9ab657f1467c5ddae9ea06bc39f71149ab152e1ed3666e4ed405e57327a97f9d1186a140302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009353ea7083bf0e418387bbdd8eb6f357e6165180f3ff83ebac57e918ecddf0d678553f6e1118c4d200b67233c82781ca0230521d82fb955f8fed65f294ddbc91b9ec51d1b6cc20c62a4ec4bbdf6dd31af80622a8733c0eceeae7fde7a8d9134ab1240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300f414d8f20a18ff9f285a491676877b1364e8e014f8eb973394a1f5053ba18a6320b32bd0a0d8abf3909842caaa95f1c023100e629efc027cf2c3ad12670a2d5d7ddc4e3583d7f512734efe8bee58998769afd4fdd06fd8164aaa5c332008b1d9922390302047c435bb500683066023100fbfa735b6939e51aaab5c104d4dbe1ba016521076e761dddb1965a0aff0d459c03de5fbbf3a89cd7cb76e6c7e6bcd6690231009709269a5e8eb355d168af52986ddefebe13138ecf059618f71c45e7e92d81742ab0700adc710e6bdc2b5f8bc675ec100302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d0595b6c846836a46da4ba3d8f28b0bcc381c758a93f49c37d884e48c6cc35807dbae07eef611cbaf169d36b141cb45d02303c644afdbeabb3906a78b1b5bc58d811d0c5542675f0b804d855e1b12df21609e6b29315c770b0363c6566195f40439d0302047c435bb5006730650230357c475297315421196716414108e660da62563b33f89264a21aa756966fb26e6670f247265dda9f2126e43de2519a95023100e4f61bb3f130c651b605c14b632a5f8e7c4f03b85292935c056916a4e833b4aa54c5974a764c019aa65c07733053f5c90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230611c8dee65bb44f8a07f73d5d14e01ecd2478e1bdaf11bd8349076903bb396497b37e7e5d4cbab41468c35b057f1f3be023100ce87eaf14f61cb4f0a8822bb4701c2a0acebb37eb05981f9d2f6d362b664771a6800879ce6d7710016d380c804e0999c0302047c435bb50067306502300b26681d311bd552a7ddab206f7e5e33c39b60b29bf60e91d5212babd73d2e69307d8351fe58b2c56b6d754857acb632023100af9d3fc9fba6360284b760b976db7d38f16064ea5591a21253986d032093f701be5c6de21d1bd18ead19cfca6f940c7f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306e403c2adedc2db6ff71996e9cd52d3a485c8b21ac1dbe5770662b7a2aa32f7356d491ef62559eaa641b0a04071f1cb202306f85600ddfb02460b132e71d23f7b24bb410db496561136ef451ab7abb7ea94d65aec175f00382d19180fa2a316c3fce0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d536ffed38e30b8e1b6324c785b48c22fed4e95247bca140840f15410df6f82de97bd3f5f715e0eb6c9dbcc5e632f549023100cb3f9ded021b52d7e4f2c06ecdbc5f6e99f4e9029489649611b045605005afca4a44babbd32b7d632ff2c2a4a53d366e0302047c435bb500673065023026a7e25b5632b51deb3901c6aebe86a6c42db7e00bf981b911ae7abae7cd0bc384a0e93a67cc4dbafd7c55a969c6c62d02310081c8b5085cf55bba40ae8c400b4d07b0e6a0b624c47728d462ab2cf64f464c8f9454f02cee87b2a4a5ef4ad1a8381e2b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008b3c109b3a674fc9baaec35e7efda00eff374832e724f75855e0514c38b549c57f80b8af749926b62f42e238f9d0053802303a47c7b8850fc83631d2f649f66b05ebb8fff2312522df6918a7c3f22dcf934c73270271835142e3380dca2c646140970302047c435bb500673065023057fb57cbfbc2b891772ea07face57c69162b840870ce025e3d339af722f36e8940f55e60355b2533b5e3d018425d2c40023100e07c217d3d99d42b0517490099b9e73fce47e6ab40188251d99f6db7fbd2319ba9fb6120ff0161b48a9b3e8eaf3280570302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301c432bb7594929cd53620ba3254f85b1ec9c2fbcb6d29c298fe994d17b6d54d0a67d39277ac6884a3d4e5b587b1cd89b023045d777bdf65bcfa0ec3d9871e52115f2d5c22df900ef4f5791c8dfea8502c052342329cafa31b7797d2a13580b9c52cb0302047c435bb500673065023100993610e9dceda70268fc439a0a4062bd8a88f4913bde25c06832b6da843f393d4f20b3d1c9b692964efe617f29b782e8023052e1c9a9bc0187dd051e5414530280f0a561fa5b51b5262e85337e2e63e1df06b8c490c6ae198c06b2bd9cbbd35bd7420302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c403c284766a3a8934bc6ba2edc3e8f4fdd4551dfb77d038d2e23ad780e3ba3ca44a9ff9a31fe62e0cc7e042d75a16d60230631615c7665b74322bd2a76468f08943099dc47d11918428a086bd77ecfd62f85a9222f24aaad0c77a33f296d4b3a3c90302047c435bb500663064023075d1753717fabe2d92ccae99144f3c5185782838827fe4e6060fe5e77177cbbbad20fb0fc0dba96ca4c8373372bc0715023026d3b87582003b344b69541e061ac6fc14d509e7b43b3c87c6d8b395db0c32a6e4d63bc00a7f0a6c68459347f85a26790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f41d8675788ab8261543399886e7019a90f204ebc5c6f4fea213e0f5c123793543af8b2214f4fba7167f8c2d5784e735023100800c34629c828749538b4642e86e2da9f61e26c1040cfb7ef9001aeab044e61edfbb1dd42ae034125eac5c036f3c53570302047c435bb50067306502310085b0e01985e1e69f28494e9d0a52f6b00827e2d8f1f15deaffc2afda1183b9f83291936a4f4301f9693af41426f64bc002300b3487d820fa3a0dd9c8427ee9db14c6caecac7633fc47a51ebc39410e649f207d6cf47dd804cccf75d94acf8d9f314b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a6d2e9a3d309c17975f9b7d60088b0fddd4356e9fbbb1912f4d5ece533d03ea99a263e6054030e9f3759a3861848800d023100833a40b45eb078acb007eb2f740ffe783b218da2c4675beda06f54114160faf15db11692bf72a57636284b42ca443cdc0302047c435bb50067306502305c7832fa9f833715faaf87e19fbabd5618e76f2674e9b6f0b0e54a850e5107ab227d4dee34eb1660754c6424f3c2fd74023100c203c069e199988e1144915381900b5180da081765991e3a899f99b77d566171a65ab1d5029daf531e234d80467aa43b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023003f4e65d21b4676f58377b7405e2e1f6e938f0216d86494a81ee42224dbb8a148af9d8581614022eb4043e04b18ccbd6023100b10e92b2ac4a0ef7ca49696a85e7beaaf4f739a42ecb345848d58fac7bd220e9f14410d7ea5d5d3941472c40f7c81c100302047c435bb500683066023100dc18ab06a86c60c86b253471934a7ac81b523f66d298f91642674158d7477c89b36d6d16a36ddea293f2d8a046bd7fb2023100a52a5a022ddbe95b6d16a1bf15a1151edaae20a15fe1c3f2d5c1b1a771334b96ed001a56b0af1c10ddd82a86145caf280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100af3510eee89a43384366434d54e4b8ac2743df50ccee3068a1069299f4747ad1fe2e7030425d7124d83f7d73fe20212f023100f676e9af3282794ca4f86dd0ac06fc5b104f0d053b66eaface1565bcf0037bf39b3e97253fde7f7c5e8d8c2df0bce9620302047c435bb50067306502302c3f15482d6ed8521da99a457db2f45c0bc9fcb92c1bbae176d4a8957b4ec7379bcafe5af19b6182200c7deba9bf4cc6023100a71b782e551eed90b6c835966b99da749087b58535af047dc02baece6c0306fa02d7651ce5d37d4870cca492e16329540302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f23068d3f93b757c93b929197af0a77de81e1781bba3f9ec77af808fddce5fb5c0d1ac665e2981f70d5e3dc7fbf350db023100a23592033eb42b3e595e4a0247ad55d64eade2b89b992b158e15a2e63e98d265b0be0b442159d8c3783295cafedd77e60302047c435bb5006730650230635ea43ac452c23614e31af75ba370ca61e4589633676be83475a90a55361e9d7b98065b32c556018a86bb6c4f17c014023100b61da2f84ee0c0aa6353cf44aa89b3863bc77fd607ff9a79e655673ee7d6b9d51db0afd7d88653e97e79e246ff77403c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d40888e8e4d47eb07f29f12bc76ae958f123b0822cf87504d91a662d7365656757c7ffb27fe120610106d5416922b46e0230518365dc44c09ec6ac868577b8f8fe4d56856911bb4b80a23569f6d5c5b945767f003201cc165a3e63ef7078a3090bcb0302047c435bb50067306502304900922efb181814925b30e7ae399b6712927b87692b599304553a2ec8fb8fc209060a69b54695f24bce7a04c5ed00c7023100dfab1598047229a64dfb3cb6278d93b14308f04df0b3d4d34372df6fb5de331ee583e1f6685cdc788eac916b1c6fa1310302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023013d851a170e95ff0a4d67fee5403d41462ccaaf2a99fcf827faa4a4202b93b9fed96101fb0ebb0e67bcee8c732f9ea91023061844bc14af9dde5c7bbd6854d7fe4b2a760578e65644a4f10f7a99d6c3cb01afb69a07756893cccb655b19104064bad0302047c435bb50066306402302dcb9d5798a20553ae7654bda1261d151b25d646c5b4fe17af325a9a88153e2d6a34f0179a84adb43ec955f15941ad1f02300eea23a832d3a423731c06f1bf0f249b861c64c238b0499464af243eca450fb648ac6a2f9c06c840439929bbcdc8da430302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100aea4ccfc84ff9d055a20337f68c33134c7fefa46a78ad04c31ea68525a8ee0167f035d89085be54514b43ffd1315ec5c023017562e3df08053318bdd3b53e03d517c40f7de4c1ab8cf6a921867d45d42582531fbac3f5d0231b8bd43a3b8e551ce9c0302047c435bb500683066023100ca0cb373fd48fd5d85f86de61dd90134bbdc4dca487393a15210a0ed23c4aed8b4280a035398bb0c911d401653825e4f023100de416b9e50183338249b5a90cfca2b8e66d7a54a4054a4af4ca6a0c39b7462f5b3edc63ecce28ccf95543d8ae805f1b70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100acff0aaf956eddbca0c22d16a47514887e7f1a7f5eeb484c394fb11139ce462b3195772b2cd2931bf3c1fb6391fde1c1023058a6bcb7459bdcdba7e831470443e1e8b2a436aac05c158092be94147853c4a5c0b649ae06680699d59b81ec14f5f66b0302047c435bb500683066023100881caee58a136c41da54d9fbc9dd322c37cd556b53ea12c2af2ed4c715d1fd5e87b0626fd41f62f74b7d7a5a42d686f7023100e98e7a47ecd945a02b28e6f549eefb8fc3af642161a793484e5e883e3fe4ca426d5fa97edcb2405926e3a195a7ce04530302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230213f4661862bab18a1d1c0fef869cbbaf748a92f1277cf04faf3d438569b178a32ef5a05c94f5277fb6ddbd8678d3ab4023100b0d05ddb2f89849a0ff1c955a3184366f68224c03e8a644122656348be212cf6aeded254d2c807fbb6849e470caaa33a0302047c435bb50067306502300581ade74e67f6cda7d6ac165b295ae153168fa33434e04376b6457487096b6de48b3a69340ac13e6bf46824464ecea7023100d1902f15e6293a2515d76f684f153a859e7da0b0319221b2df9f1f3c8cca583aedfc8cd8b91015e9bc8612e4554f69c00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302ac0707fe17384c31a0f4108b0ec18934af327c5c49e30e746eed895bea8f742e524b318e74129f85f17ba702eb226ec023041ad11dcccdec505a1900999ed66f0a777d287695258382049b7118958c611b493f2c5d77aed81ac5b8dc295c722b04e0302047c435bb500683066023100e58aeb504a4daeee6a381f68e7c09d80911746e4c2a8d1addc9ddcdb803c2663d263687bad0834b194cc9ab5c1ce81190231009ddebb29d6350bcbd63f473046213dcea1d6256eb7a31e6a0c76a1f472d6a35db2bd2659609a48eec1f9c00cd61899db0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304c041ced9812bd226a1d5ae5c4864ffcfb2511b59c903c9e4eac000837ef2b973feccf52c3880ef2fb2e5e8b0ece5328023100b9f310d06ac80f027ff0a7b4431e58085bc9cb864f60213d5f11646e42071851498d661f22b2b565ae725f4135225d4d0302047c435bb50066306402300e5344fd884520d81d7b5b2ca536556365b94d6046b2c62fc92b5fcc4ba54088504042b4d5f94ea3c5d4feb3061cf8d30230557bba52bb73ab6c79b86d753085a2dca897c656069cc20c8c1414f3ba9851868902df92408a429170716fa486a3fee90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a3ae0701317cd21e11d8e9f4343ec77b58631d724dc33d0ea6f7d08f8c0b3078f330832400e26ddfa1bd7d9b8abe77de0230058f45b9bfa488b5315dab4d8c2ff0e432d881b1a95b2533aa67afe476c40a0e2717a3c164b74c739744fe77a96847360302047c435bb500663064023034c0d28b8eb21144af6ae06a39dfc4425cbaba8ac1bc96f468b775b30f69eab91ec084992f95125ebd7ce74f90f09714023075fa1080a544225c40582951c2e8cc2a85cdb2140ffd4917fd8787a85a93d9b12e58996186f5223af75da2d29c32031b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303b4a4fdf63767b3b17442211e54e87b11730e85fd278ffec00275f51eb6f565bd621b931cc3fbed0f739d216e4c8be96023100c0852f07ecdc8987fb6f4f1c335f9e1601249278ea199e52fabfd9a392b800df3dd776459d2c8bab8140419eaebd546d0302047c435bb500683066023100e27fc4521cdf77eb0a0275c9048c75bcd2d93294f822c77c481ceaff1d824bbf550a053b5ff260dd3d9e6877d51aab5d023100a3ac83e3a86d6aad4f8b2229bc8700e0c97c48393e7acf60396f66598252971a8a8f30153933fdf43227c5887f6ce1060302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008007f3145fee5af0c64077a6244aedd0f24dde480537b46c93c13ee22a86baacdebb7f3fa56e93fc1d5eaf6b3f08eda6023100dd20827e911854a31652eb156b51013a18ccace3bdc63bab8c97086d2839e00ae5af433d41395b82ab4ed7b9490e61d80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303d807be09ac9813274d86c3c7397264b1f59a70df97c727c0722762101bf3b1ea6138eb89757c55d6731418ad524b02d023100fbc93dd7e0c98332a6bc933f956e3c603a046e3bf8ef3f310e551d43a41cfc70f35bb7a2f65466de90579d08bd9d50330302047c435bb500683066023100b0e8670871927a0afbc9fa62b76539dd7081e9b0b1171556903308f5565a77fdb80347628649ee783c1d60e9eb75a91c0231009a384a9130ee45e6dd7418353ec3852cdf52a7f2c1d87ba60fc491b2bfbd08ec3b0b106e50173ef48ea222133e0c83f90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310090c639b01acb9e6035fbaac7ecbf1fbacc5ea75f01970ca5570ed05f8b6b92bb9afd3f797583900760f823eced87d6b9023100efbfda965ce42bc94f8114b8980283ef6652b5e98f5d5390abcb402138ccdb90a48df6cda61de606507491ba902c105e0302047c435bb50068306602310080a59e98b5007ffea45e7ddb2429678a1a5da7c103472079482b5668b763b6309cf532550f3d87d1bdf24f02ec31a4f7023100cc4ce0c81e166930072272136820954aaa6c2c5d4a9a6c73c84d83850437277703bd6638c55320ecf3dd54e938e674720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d2d4ab9cd372066a2a5e9e501e5ce72ea87444ddfcc8cbdbbe6f71b05e99283a5bd42fc22c88bacbd1895a45ecaee84a023100892b5b45a00264a9a3ef00723d6312f30b039f32cae2980f51572a839d49076b8f0a14a3278af17bb519bf9dc661d33f0302047c435bb5006630640230184dc19e733b81f82065b44dca91ecc9a3e3865a3af7c1a007aabcbfc59647b99eae429fb3f566016a147a485cbc20af02300b1b5d4468dfc3224c5773c35bae046d511bfedbe8b27b7562fab3542e47e41c0b76f426e23e5466bff0720596c440f10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009923b575a43a1a9a6b89e48ff7ab94e13de116fb0259eec4a3a766b4a139f7fd4ed8c4535ced99a73b235e4453650798023062e0b082def7079f218337493064acde9c555f3c1060a21e84bbb41c5482da667a293291cf8a0e54ebfc786b93ba35f50302047c435bb500663064023052212a2236c60281c4c7b9bf7294b6346b725e8764d8e51b60666330c49ec8146bf273b67583411a3ac60b5d7f2777d50230457405a05657028b31334ea79f639a4ca0d042031ad9d8e625393fb75d8e3a0df1ddcfaba8d4e92aa49dacb06c5ed6210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305f1499a1b6218e20dfb0e6a174cb3c4f8388b6573954d5c972fc43f459b61910171c1062b674127c526c65523b8377ab023007c0de273ae7a4251a5d46c7619148435dc30dc5e10c956297335c251892156730aea237ec79f0b85a924be42881a59a0302047c435bb50067306502300a98d6c08837a2ff02cc7bc131e04b6e5af49580f46e2d7bc1d1bc28e1e63f7d21648f9dcf3905abd416fc90a48e81cb023100f777927c13335e6c453ca1de509e3d1a7b243fdb7620b69c3279992341f623df7f5df0f0d5cebec8a3daefbeeac87c2d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023060b9068b35602078470bd7594f9dbc0aa40432e7f34b458a45f61261f113e91f762e77ec619b18e02ab124ed107f02700230615700b49fe35c5318a04dd51f95e9bddad8c6c964cd46b6f54f083ff9a7f5b6a9c36c2013e3330d4f5a74d340fe16f70302047c435bb500683066023100c0913f31e96a7c6772d6d28c9d49be33424def126949f75f900777dd56e907cb00786a324b40f8343df4372425e28606023100dd715848959aa777ba127ca070f5f2fd65240aa1e58f4688105abafcb0d172ca8a151076693786f83a290f16f1d945380302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100857b00228739ffc2b6d7ec705dafd07c35269383e888254e9a7954bdf65dcba852790ccb328a31c9f4308f0f8847c5e302303d02d9db12ba307f1e8431c5e21fbfad42e5857c2bf5559d06b1674b91346b8ac66833d3298c69d1e514a0eebd42aef30302047c435bb500673065023100c2f3b03d39827a54af492de5e25dff6b2e8ae13aabe8b1d284a8022b267ee286174a4560a774818f5ae7c8ec55b0c825023020fdc8f38b97a134165ede93a83772f59fefb85322c26a82a221026b46b2bc179842e276dbe67bdf4bd92733f88a0f0f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a551c048c1137d0e60e1e5b1ea22233a3152726dad72dc2389335b0e784cf283acbc31bf406687a32230ab0ba344ffe90230257cc4f98f8d2b2bc4a792377a9b59e0c3fb596c7ce4365b80adbc28c59b6d7669f5a2aa266871637e84ef8f89c1c3e20302047c435bb5006730650231008bba404bb566e68cfa61996ec08122ada5eb7f01c43408f66b91f3db827f8869d01113bb6cbb5ee19bbf8c429f8c6a4d0230372370ac96f6602205ed373a2cba40543959d512a94c150acd64a941310252ca920c2af921c0734941ef1aab58565b9e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230638843f1d63a88b8a0fa130c398dae1aa40f7b05ba01df28444782f0572471fe3dab11383b75e6c399c0e7d5b9358bef023100c99ffa20e6ab4c2920fd1a8c17e8795b8e49cfcbe9e663d8625888d594b6d1908ca12eb6c5de7c3d837df4fb7007d00a0302047c435bb50066306402303912e212272093fcfd97af62ca18cc9e829454d52497976ec3a5147b420c8eda418012933e0b485051d9d683d144624e02303751ff5980a0cbc4765e87bc7d41caa97686168f4735fe80747744c0840502537ae105c78346aeeae3ea0882f56de5e50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e6a4b5929be7ad83e6ad1700da451251f347251db9b4a71877cb92ad0f2a3d8541310177733c826009844669460af2a2023100c2d1d7e5ac58988297327e72ab4789f67536046d34656bf0ccd042cbc89c2d5cfc16e07d3ed410392fb9e702adbe10e40302047c435bb50066306402300a7fdc0110564487b48ef64b053917a71472f0059f0b767d8cf208028b6221665e3953ff0784be25a001073805ca719102305175640af7445039d531237fa51972c67fb72195abaff9249fc2729dc0a387656fb4fde5b0d4162dddf7fd135522ab1f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009a1e52e1ec6cd7c03374476064e9a1439cb141664b2a9f70e6790b1b59b90ef2336c6680cee4bfa7ea35500f9bc01d8e023049aea9630cb793efe7a96b61008798cc50ec5988f6fd7a1dc30b40f8233a174d1de7302e9ea17c3743da0d6d9186c2bc0302047c435bb50066306402300e876d867e342adc81b90565e955cfab131083c6e49d181903cacd49c9b0bd074cbef49e0db30d699890cf24176bc45702302c3150f0b54d6fb05ff3bda6b0304bf4714c3452627e3a9a9b9eb97200d57405ce09c1d919c76c948884b6f64f7ab3610302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fdcd12e563d7588e1e5c61bbfd773774df982039656d4a94ee87e3e8fa5727d06d5d56cc852812f81d7de5366232ee03023100d358db0e762fa84aad2eb434a01760e04cbcbf2a277b1b5e0e58db8f19c6b77f4f23c2d79e7e7883384242001e9b83870302047c435bb500683066023100f9497c7bbe6fb7ef02aba95080dd537d272ebcad94d701b998c4b593a99d66012ac8fad261d2f6cb9966aa5bd7caf587023100e202fc8f4079b208eaebb5b028393c4cd3ef1a4c8235308f29f5433026b97051c83f2642863b8d03360298b3d76aa80e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306f28ffd72097ac8467c238470ba9e5cdf9057c5d3395364fa29993483efa3294217fcd7bc6ee3f25d666547dac5aea380231009270ffaa31ed7c40c7254cd90c1026079ac3cc16ac94eb9c1fbc82e2ffd58858223d95db4b7370ffe3926bd90aa1920c0302047c435bb500673065023100e6ee9eed0a62cd9ad82aa2d1154eb4cd275b9a66e972a32ff8cf45bd02d1f3ed43d2909f2f8452a5db957af10fa891b902300c108967e58b7169d858a6d1429bdfd63dbbcf2f1934848603651f272681f617813c60d3fef94cedd39f6588bb823fd40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306cd1b6e1916fbd3598211a084ce7670707b34a1a4f4e229c2c52e4f4f4691964e141c0a7d9f76fb06dcda1f01bec2b24023100992e1e166a802c4ae157cdcd362e1e5ebdad24f1ece2de86e43578de2cb75933d3f7ac5d5875939d081c4e5e2f1d93530302047c435bb500673065023100fedd1baec963c2f8d372d2d09289455ff18f3a211a5d38133a73ccff944606cfd807936421802b90e02a959138f194920230455bb2bdb45a1d10827697e35c9a84c43ea5f9e475706b8a8e8b34ef677f17a7acd4ce847a8b5bdfe76d1f8e0d0be30b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f4feec0aa4b7d9a57c7db6d0987f8467a6ae9d978c8cbbd696e8394833bf13f007b8175a6058d76a035c1f5116931dda0231009bcd5caa6a89139cf50186405d7b7ae5fc425330139daa6f9bfcfc6fe08b71a360269a8ea0f249a534034d0874065dcc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304e490888c1ec9a033abd4d169a5ad3c8856e58e9a677385a69a879a20428a4573232c5b6168a4966a459e857e1dfdb46023100d1634f8cc2986c98abd9dcb3ca8e7239c63e283e2209635e07d72710bf655c28c690d494a3c785954a403f3c5a3064960302047c435bb500673065023100ec6343b2249a1e50dea70f5c290d22e59817efe4668e5246cc9f6ad977c52967e68af534746c9a854442144227decb1e023031e3eabcecd991adf45d68b30b644342dbd7f974adeba291ce83d62b5ebda995f196aefe9f7466d1ed8d913fc073dd280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305528dbfbc9eb3eef8e2a4f56661c38000be15ed5f0cc963f75ef34cdd3cd147159d49b7ae8795accadd8359bb5e1d76e0230195272dc77b37f04744a9bdcaa1f4d7a2387be3dc1dd1e31aad56be842dd483ae2bae6833b775240768ae63f804716eb0302047c435bb500673065023100a9b326398ce9a855bbf7827cd3fd80c01b13b517f0ddf083d1bdc51f3ae9c1e9bd86ef0ca38800106535b5507d6148bb02303db5f1f0db9eb70e8c108ce341cfd42003904bd7acd794d51f361fb9fcd50629863517a2faad4aa41bae807ae25008f00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300afd8fd440ba701a7653cbd8ab64d37658ced2a9b79bb278dec8c04573ee2fb44bc8b7b7d71c40544a119dede7dc637d023100c99e6b114f75ec35407f933b31fa262d0500145ab359ef1ca6ece8ea4739d44446320caa470057fc79cc51dc418f55cd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100890f3348e5564ab62d01831b85f4e3182c9233e84644912af86c1b92549166b2a142be1a80eb9be079b8269cf2fd8cbd0231008aa4f18237261a34ebb6b28ed885ec672aa40fa0e64a465b1364bdb8ef839f42927aeb5d988abc096310c8ba88aee91b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300482bce4fc83572153b2c1fd4f75a455de23b34e24e060326b8d602d465a25dc9e9d1af510700899c5388819e051c09302310098c014cbd40a85d68dcb525a76fef9d778c463ce0673bc5b8f39391d87200d0d4ba11c0b84b9d646204f8883ff3f5b540302047c435bb500673065023100bb31c82a719ab48d9bfa8a4284a76bc037b97e30ecb7753a89b0f625f050fd92f8265f8f118f898d46872b4276cb1713023043a307675668a2dcaff4af220d0d1c3e95beaa672d06aad2850acac148fe00cf6ff96b93fc48889108c6f36281c8052b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023028a3e6f568ac6210fe4257908a9bc17a6eadd1082bf5e4b797256c945e8c44a458c3fd74725e559ec7cde55dce6765cc02304e544516c015089e9f7db6c228f5c3d4642b7b8047e17a1e0bb7704658ba9aefe7c335f4660440f2fb07d9ec1aa8fa280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008d7b58a77b557b4f72af104cd97a005fa9ccb27c1910479ac3de383192037e02684fbf70dee3220c3edfbea704d2c6e202304b697554478bc79c0f7c0e991944cee5b16b9fbbc0cf30e2fe5b49817ed631c779b0702d9fc2e47a2c58c2a29c15a5c80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023017d97688356a79be59dbc7d35a5325058272bec50430b0815e8d73a902a7191d2450f91d5778128d6eba61c85d9aea0602301fbb6684f0b531ba57bb92a714a29b74fbbc80f73f71fb1a95e6ff9e83af81d90b55833b29d87474140e974e2ef5f6810302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230361803b14f7c96d92c0f11ca235f818c62a3b9b99b5c44c296ec70dc3bc70160321112761c05ca4a0676f4398b1ff9f5023069f9fc3890d8981560dcda9805a71aa27b9de5080a79ad4ec1aa53afbfd90ee443a1f5dc48c4db8b5dadf6517d27a08b0302047c435bb500673065023040b57bdfc9e3ff224933f9bcfc0f68bd99e21d3fc67c16f24c939058913ebbc5d741c8ca5dd62ba73a7c7bc3aec9c8fa023100de7d1cc16413fb0e562c0a8eabfb595efa031581611432d2154640dd44119e0363819d04fc3c5a0a88d954513309d5310302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e43a23d72118b26c5e8a4cf005078dd903054a9db0431c2ea6cd6ac0655e17271d5f9c71c213befa2f0a2b31b742cb7b023100d90c71c0f9c6416d4ad2a15718dcd0284a436327cc3465ad028ac51e9613593938eefbbde76bd9fe85be45e6677774a00302047c435bb500673065023100e544c56557e245f3474daa52b4ac9f8f07970778f78eb2610cfdac54f93ef95f35c81f095873056524c66a54cbbbf75b023060fccc52e79b76e10e690f81444ff44ba19d05bbc26f922f3f75812139ae6d24e78e00f1fc479544d4f6b972cd34b3c70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303c6396e660d0471dd3513f7fe99ffc26ff6863e7b35325ff06a21d0b06c4cfef2d3b418b7026e52714bb80c453ee04f0023100d8d968993b6e3c7f2ec2506fc56975e4d0d223387b99bf75c12d66c1185f615ea5e680cf2fff7a11f70a305ef81ed6a10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230403278a4c0f1bdb58844ccd3f770829a2d14910499d3f3b0342c2bd7caf05f833d61335f6dd16a4db5b03c6c41b1c319023100db65262529169ba8367dbdd271a46299a053dd1aef97ed467c7c24b27fbf02f042324c73ea2f510a44376d7d5d83da710302047c435bb5006730650231009cb0a926dbb68b1cc070c1c4be7525be5ae6576ed03dc376c5dc69669fd376c8703cc4a2a235916ff29daf1b66583b9a0230626cb11cb7610b1a87f548b299848b083833632d7c9de9d86f4c20cd9741bfa1855e9f796c658d603063b0efa2c6fcd40302047c435bb500663064023047227a03dbab6a74f7dbf6594c0cafe0dd557f78905a17e301eb94bdae8b96f97c971eb5ebecf224e46aea13c4d25b0a0230189b7a93e209bc0319f101a4966468a32f93dc215012bc1be10b92c4e5bca9b0ed557695dd0e96957a80e59e92d92a720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f5752de278a7475d93e937d0dd2f93aef64daab58377cbdc7b36ac979245b3c1bd3b15be4e4d62e28718b797dd910b6b023100f4086de5353eb5a8b83c56723f9b12ae5e49cedab6b1dcb3763605cd3c0ff3885ab439535f4948815d411d09fe3cc9b80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230674c0dfc81a1cadad5ec4372ffe1c61033bed44c373c86d9b5e219e22af0fa95d4671b25374c7ba61b6de12ff82de44f02300f887b7bd46fdd5e1eb120dff95b2c1f2639e61126f65eaa206670054d63ee6a11796b06d7ef1d3b34fc61692ba0dedb0302047c435bb500673065023100edb50cb14a816903fd7084ad84ca4bb2e9d855afd168f0b8ad178dc2095d502c9f11b608f8271ed541b5a18e641231e9023031f430ba1f700bd0c1c5df97c8614db67801d8863786c47f7dcd53dff0e25ae7fcfe174bb3f693051b31f9ff31bc16600302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310081ac9b995e3adaec154397d249a7eeaa11485a1e10053fc92b00f240708720e9e5fce59b1669cce70022a4a2607c54fb02307074a2bc4dc1b84e30684976b22403cb411d6ad5625106f12bc1eebf22595173b17bbd5596dcfb1d0f8d88236d661a340302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230218c0ad83d467809476cb83ce39371d2d15c340c6d0df28dc1941a4631139e37e8562624a9ada6515fcc4596d1b3a4d1023100d1ccf8da8b05ea27a870781f8bb03acdd3fa81bacfe19da55cee94e71326c37006b719fdf780a6b738122a05173784520302047c435bb50067306502300198839c8e73cc88805ba8635fdba8a7bdbeeda08a460b5d53d3b0bd675760ff783b86ec3c8ca86f7e387e43d246b13c02310082d232980e3eca9b8adf0267835063ef6e7260e813f248a132cb164bce7ffb50d422c64650639388d423348618b2e2440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307a295fe9413923f3f011630c414e1ec6a0d90035c24c67354a10b7728b52e283a3c78915e60a83afe32b0a4be12f171c02310087537603d89a4b57cb3c2dd302947e681ad1249dc685b387d3819ecc6c3e6fcc6694b6abbfde5a0ffa0fe6fcca7eb5790302047c435bb50067306502301a04ed88c82b0e733a319a390b7495183f73840c54990da87ba1ff4348b1f7178558410620fed66784644949136d7555023100b16fd005b1a472143b01416896f3e2b0649f1ee82b3afbe22e3978323cfc4d9d350a9dee466229738c2b1bf9a65fb1fd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023053ae6c4246d76f4e0ae93d52aa3333ece7583bf3a72961ffb43b9e871342dd819bc7479482341371ecec099d99a257c3023100b586b68836893ff6e18dfc7026a48d4fb8384cae324cc228dafff16c850b6c1e342adf07b6cb2618eb09e406be7004740302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cf93912d11a11947258b56a40f05a0e0ec00b895db4b72ab32f503720be2c9e8fdc4a8dbbc2679e0d69f3a4492d85af2023100bb9caa325a082cc6f1d97c294e76d113a33d1a18966eb294c737a68d5ef08be57ca49bd17dbb209131a9fab0cb88019d0302047c435bb500683066023100bd39dfed14cfa6fde9a8af89eb421fd33c0fcab47138f57b97de85147146ddc0e5dbc10c6e5b7570a82ce0847833f5ef0231009169db2e504059f8e4e0b0cd760c9f837656a0650c89517d2397a75dfdc37b47ba5242d73f7060346a62d4896d27b5820302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023010f26080277bcb5e2d0dab78608ff4c088c3bd120573d84e4d85ecbf3155bad03844e3bebc24dda08ae3e0f92cbaad2102300cbba4d44966fcdf2ffad7eac299a87ce7ac528419638c6e756809a2e0c1cd03cd9023940c90b2f90cbcf963e88c25bd0302047c435bb50067306502303737bb6101b98c19d92033ab9f07e2ba1cc4b7af574ca9fc3f02b1b309ea0ff2faafe892f8df20ae61115767c02d2668023100a41bbe677ef62606f1219fc12ad7135d8d3ac920663743ac2ec977bbd8a45c177ea454a3cbeb57a8f087153b764b12bd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ae139885c30af02003077627d19504ccda20594902b541f4e46c301fd72e48c4f345f4b4ced08f32648d317161aec42302304de7ab36005fddf9c5df961c46fa8b67ad739820ce734b807643aefcce9c6ca4a1097645da4f666702aedf98d6e2c3d00302047c435bb50066306402301259d5790063553f64831d038d8ff0f5f43ba269195b178bfbbe5f67334039076daa32693b6fbb48997e2181d6cc3f3402307528c976fe11cb0861a779c151c430d40b055690e2292e8c4cfbeaf2907ccf469eac6fa5daad4f2a0d2a2245acde3b0a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e51d2cc38890b7ae7e400963e5b80789a5644dab8ac25f19ff4d347304487e353fdf7dbc1e5fb93788498b8d708b2254023100c100054b3f4d8e3468a7cbab4624de051a630d713d5f202422b55128ee7615a372fad3f73e870360d7750e59a12acfdc0302047c435bb500673065023100d5ffbe939d662167c02b32b97620c375983b7bcca6dd683095805949415841ec12901b21ff503b464ab9f57d5b36cbac023024a197b32ac0287466f864f3b4f2cd95fd62fd749141d044a4c64ed4ffd523939637450d4e3a7fbf529f0a2914847d800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023024aba39618804229968127a6b4873f1fb88b908990883a114e78ca4860c18e4c24a7e84887aeae5fe208d1534e94800d023100dfb0a347b426618462759fcfc464383c0ea28b3d5c0e7e2a4042ae0adefaa604ab834dba9d7fde777d9665247ce2b59d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b4f8c275bb16ef9a18f6bfed68ace038cb5d4b62d4d71886548f732e35ee4785f0b861ade0fb764e2e4390b18b72cfee02301accd545fe6cb31549cecbd1cb58a435375e066b05156243829be170b549a8edf6cb7ad3e978b92566bab620587180d40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023067e9e2683baa8af253a402930166c9d58797b2913737fe70c65466935eca8755ab6543c29138d3670f733eb13c3ed1b90230073e6d3a0790f02df0860adfe2d0aafa82421f207fe9dc4d8dfadabce2d48c1aa7a441143de741f5b1c35b7cc3449d130302047c435bb500673065023058b4f610a421d225c11901b6c2d850b680e7f19ac3f981d1cde7c6d93f69062547b65c812953f162d7047341e05496cf023100d3d07498ddbfadd1762b85ce619affbbc1f0701b615a9133447cd6dc1abb4e8b0a84343278c7835fcd07c73b709bf1420302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310089692ab2d109d16dfaafa623431274dd117621a23a7fc889606d23aadcf5da75d09e43233ebefec8cdbbf96f07a87fa7023038769d62c89012367bdc8852c12c8971cac1ac363dbd39643c75791537c36aab407b573fae65fcc8f00b33b7372534ea0302047c435bb500673065023075ee800b1d60fc22cde7396571276fbcd523df863b60f09524e8bec088e6943c6edc2de96506fca47d7853331628bfa7023100d73fd376f348d027f4eebb882285966bac9198306d3dbc79cb5ec1f03c95311fd358b39d3c7850b3f93d617b275acf6e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ed1da40d7d8cc4df39c65466389b08c99a023f58db46e4f8ab536e10073205603a16cd5a45962ec1aab0648bfb3b67f6023100fa26a88f31e70e4caf961defaecbb7e1d8a8c3258333577d002a9fc7837a93569f3f31cf4fff4943b12c663cd76d55020302047c435bb5006730650231009275626204468b1884a9f868587a6ba84e02bb20bb0cc49a173368dabd418f16388ca2a0a4c803e9756749087c426baa023045f3c2755b7c4eb37f7d660bfc326e5091f163e4933adb6b73fa016de1fe9fd2896b3baa4b194cf16f351d90ab154c1a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023015b91da0fde43c4e882736b9c789b22d53ec7b8aca73f7bc65d3ece791c53116d602ce7fa506f4cc2b58abdfc9e89930023036b96fe656e438b363ce488a560a4c3022688e7162c20a3041b43bbfccf265a125c1dc8a9686568039b5df4adf2122860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304049280a30870bd2818cabd57c1ea52d9b95198b91ecbf511acce004fd965e2d31e4eb68f285011aef9889a39f1dd262023100c73ef21d35f657be6b440ae451d09722d88cb4680eb359b2b66b0a65d169d50965fdbed3e017e9eb64d0d0b9e91fd71b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230065ba6b1c5d5cfae24532be9b027f1f9d82c8729acc40573f334f2cb2b7a1728a0069942bc1af5d67a6fbd0a1a3a41b3023100d0c46c83aa950107d4342ea66480b0f40c68c8508f3f2a0b73a9e44722d8eb9b893ec11a951a3e257c8423a2ed77e8230302047c435bb500673065023100dc5b76a3e207491861911661c41ff8110cd711b23b3a0496cb404de13f97be995045d85d40a61cd4349dcb70f71250a002306e4fb64a52ac4e3f7c66cd75118b93248a4c482c407b16b0da318469077ebaca169f849667ff437df62f56a6d9d90d920302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023008a774939a08a0bf4427064c25868f2ea5421133be7984f7c73d2bb7b63c56d139055c5b494429a7837b9f577f44dde40230473e7bec4b69196e943176417c9431c6d7d77f40c3e17f97cb0afa7d276dc53da6905d83be0ab83533c117b14952cc8f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023029982fa25f257a1a7109244cce823fa3e2a2ba2aa5de0f0e21cb31a4c1784951d9feec6bb4197297e22c1364e997b44e023100a6ab5dceec958d9dac42d59ffc21e08698eb7533e9a18f5474c8938bb03f6475c13b7df4182f113e35a12e65a9e5d9df0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306a14ec1881189789cb6bb279b16ab5293d6f0827b0d6ca4bb15c64ede4c494c3b23a19776c3dda59bdf7a19cf0c0a182023100b9df1dcaf9b87dad8c0b607956d645ed16f16ba7850fdde558d8f95870e84352874f6f12530de624588edd8c108600c40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100dd0b86985dff40c2053845e834b9fae0aa2367f3ecfb3f223d29a31779a18b7083061dca396d852b3992f39eff4f7d82023076249476b581abbf1e2fee83c89bf84df72531eaba35b4572b2b1771a6db64668cb6e0f326184c899f3317cf3fac32cf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023030eee329197c6ea0f00d4bf5dfe7ca28cd5e3ffdc9cff13c468e9afeea31bed4988ef6c72df83550a8894faccfa6d64a023100c7d7e5b9e6d327848710e93ab2aeddc3a9ec038bff06e2d0f3e9593ffaef4c1c144b0bdc2fc5c76735165a269257178d0302047c435bb500683066023100dfb5a2a47c230194050c2f66e81b7c27684983c06e86e841f5e80a01a10b38ff7d53ee32e86795b7bf2365e4ab6fc3dc023100b3b0a8534bd48d66d7568cfc2d9386ffdd0b8717e7f93de902c833688420897596b64aeea90946e818838b3c94087f5a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100dabfdffa0feb6a05f30cb60b8e270a99279e6b9cdcca6d8531fc6737cb9fb1adbf59783709a36a20207ba17db60b4fca02307a536c97565ac1c1a518108c2d88d09577abddb108f1bff62509da2c5fc0f6d793b43a9d2f3da31dc81bc07e106c3bec0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d4207580a45aed1a6c4a8b711f50537383b258a8127ee71846697a3c0394544b13344ad67723f2356a57eb165f0ca845023051fa52deeef64e55b2ea8c0631255724c43507c2cf7572b7da1dc954f5c395ec8610dd38d7d3a4d14aa5ca10bdca507a0302047c435bb50066306402307e38aa9622816c68d6d12f9fe26042311798fd6e870ab760092de489c9b8b4149b7689114d8771279dcd7f074c9901de02307446848a2d244cc1a38095337b9a1de955cf9daa3c74f2a6ca0b73a50023a9d509895deb9516249fdef64af434a8fa770302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230795e9f4b5ba752403860997f7f433e143477c3056d1636820ac77268dad83e9950e90717b7f78dea85865c8725665302023100f8716657c492a03f45bdb3d80ce280c5ab48d09be149e3a4c545ec02a74ccdd09dd70853cfe0fa7a905ce5e836b6b1580302047c435bb500663064023058b9a071af1e4af787b7fe345d1128435992fa0f13cbb35bef9186fae6c62fb4f854c39356f9eebb217f1dd39d78ef3d023006a871a3098449dd82d479a0c762515c41b294417fe268cdc76e8fcecfc3f37ff900f6c5238531b84b2ee15788be55400302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100eff2e98a3d171fb031d7dbcecbab71b553aab09c2da4df0abfe59912ab9955d15fb9a19da25f595f24fde1674d5f071a02305bdac8538336620ddcc6865fc14232dda6625fe223c256eb149f68ecc1be1ab83b4c441ec32378f352d8ac8d2707be540302047c435bb50066306402303249518d0b30641f828a0640b3cc227b267f2e5fd597b53e45c2d37ac6ba6da65fcf9f11b6262dfcb990a04ab793f6a702305c7029350e36fd08a605b9820395ed4e9e8620775f1a47927cb3860a35505059f86451063d1bea6583d4ad895fbf7b430302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fb62c63fc9ace36f281e8a0552da109aa274624d5756b6d9a44bfeefa6d7254b1e34e494e53b2924718e4362babe19f4023100934dddb333f2ca76ba7922f68cff582ffc984124b67056e1a49c8f2113f89471eaf80b11c30a0008894bf1e8fea4c4a30302047c435bb500673065023100976bbe45508a4e3819cd80daded6d86188cdfbfb418262c486d0b9c650a394ac7d07db6138771a170f54b54a367db19e023035f43aef65904a11563ce9e9ea67996097166110815fe3b6b2aa8f470e9b66623ae27af1e37bbdfbe8b05bbd8d997afd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f02dab81fd211aeda686d0a417d31f6e0923948c4b916e53b1c8e52ff29fedc3eff60571b4f178e738bfd6935084eac90230241c04582604c3d3983c0f8bd326191b6339cd71234a0076717c0a58c83979233651adb8530cc0d5980a543eb561d9260302047c435bb5006830660231009c6502d210531fff33bafb13de6184c018b69e97f4272ec27db8f4470c3338a4bd7f16f1e62bd4c7d63d37cdedafba60023100fac99dba28bfa90ebaf32305399f4ee42948aec95bc44615d0b22a4bc7793e136b6e4456855244187c1f86b1d3e75f600302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f2f10a5b084eaacd01717bb4511127dc4e229ae4afc9d0c82faa0c9588f0462f71043551b3adb712a1b28f96c05c4e53023100f2affafba652483f844bdc103e81dd55339dcf5830cd9f047be69fa847773bfb11b2e6ac27fac7b46d725cbdca4405d90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f2be8d8124349df58b830d52a18f3a958abd08643f97037d8fcb89284ea67ae6f151bd240193bb51dfe5359b159c262a023100d6670241a6d8c2eeb7063d8cd6fec238d6a9ea27addf6bbdea23684d1ca45aae47a0d53d4dca342f32beb25172164ddd0302047c435bb500673065023100b00258ae85328ae1dabbb6a723ae5aa9678ffc93c7c98eb5fe3dd2810cc30577aa4fbb3f242a1793a059e306c76e9c4502300396aef01a44569017cb66b76d6c1da9ac9027e54af3e754fc05783c2004a33924f2282809c163b45910a9c9346dc7f80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f3652a6b1f2e712fa2301a8bf6baf4e8063f6fd93b981abf4e471721d7ac763f4da93ae5bfef6f10d42ef7b1e0343fc202304440ccbb68809a1597f54775167eaf9eaf5b9f5c48f5bfb9fc0d457d4fa41acd1c371ba0037a817c0c3fc77354eb1ed40302047c435bb500673065023035adba651f5b1ad907d6aaef87ca294aa5649b79beb1385340e19b358697ef24f56299f465085ecb32047c32c8ad35b0023100e0d7cf13ab8c2f1e4d829d086a4be19b39286b56a864981381c7874773381a3a40ea422db31b7926455361388ae2c2b50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f130d506fde21f96603209733aa98994382e6bd781b25f09bf3b02562e15317da3e72e0462e81fd1f4ff7e43537b568c0231008493fafc79d3919840ae4898e72f15d117176fc0a1f2b4df2862d946c7ab40892933cfe9bad0654838a861aa7e86ec6f0302047c435bb500673065023039fb5221da5bf5bfba7edb6fa122f0a239e3a50e9790c0b0d8195887e42bfbaac740df6cd83e585ad826252c3c7c2e800231008a9308c3c7683146cb5dfb5cf3984bc8ad156437c0a567c2ea36c4aa73a516f943d9c4e2a0642353c73978d2cdf639ab0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b8a096e54c522da01167843466fe0e2e76df42f8a241c2df27940c4fa11b7b38ae49fb97c80994a48a7dd6e0685fc779023051dee48932890d784cdc0f189c0e511434b7b2c83c7a3666f7f732ebd177374c661f68100a9677355459bbc62ccc0c600302047c435bb500683066023100d501a8ce5000d8de5a356b21cfbfc038884c41e0119f4fb871c0a68eab79a9b31416ae1f009c349e1fef7b5688778e93023100df7ad5799f0aaa9d919e0852349a286d68082ef2384ec97cccb6b4c2c42de59262efe97475c5732e75586c79d32f143f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230486189995d44ecf047ad203a47a7331f8d542049ba9b85c06c8a5153e777211e5beac768e078ec82ad36b2b2e5ff79ec023014cdd3ddf15293fea514c59114cd8238c2d8b617d310c3eb06a2292b37cd92e4530eeabcde68530cf63755c3b6dc64f80302047c435bb500673065023100d910dc724c99663ad3a150a92b21fca7368fa3a11b3c63a59a38f01f2e037819a4c974752a052dbdc917a13047c6c1d2023011442a63a0959a052cd64f03faf4eb3284830b629663ec24e7ed6af4e3efb6dd9c7aa77e3559d8d593ba15ada6e646fc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a46be7f447a72ce5ac9f6015ea7ea624a8ea646733a491b3331ed41c73a11e0b8f49f25107226512c8424b72184b089402304a680e54a616ce444060596214f1296cddd73dd7e5a484ab79fb6c6078ad99dbc9cd7956c8f30d1eb0cfbe054dc681490302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310081175dd5026efcd98f752842e79b755b998e2408d08e6fcc1cefc9bb1c4a377549e0bae0f40f1d3351e2f84b78637dc502305e88107d93e36f4b60faa6ee37cae262afc2c15aea0cf4964c07d5284ea72a301e38faae313dd8db0674f40b969d4b950302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230733860c9f81ce27546411612d24078725d8b9a0b8712f5d43356991a7e143d9cd6c8d2a0c2260c37971582d5f818b2f302304681f49671b072161bdaabada31b9991111b057f959684a5fe95ea4ef2f085b312ed66f581490e1928ef1438971787620302047c435bb500663064023065d236c4af29c001586ee9c13cb1ca8e0b9ba39c095f8bc0a18fb376c9c6f053a8432f8ce323f944d2a0f4c6055659fc02300f13a8f17f18dbd94b4fe6be4e933cc0ce0873c879972afbc51e4142eaf45fa1dd5f028e02973010b217d63df32c555d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230269137298de4468d77e2b1a0cd5d1b72943aaad595e3b6b01b048b07f714db464ba10b25e1a770dd17571bf06d569f26023100cd7c9d272234853fc5de6e7e28e889fd80b04dc0e20ebbac6181717c62f9102d9e9a0f574929a5c8c775591eca5278780302047c435bb500673065023012f3e4806e4103da0951d61514e27da05bd500b1b0947a50170a12564886411aa294164e2b0ca4ff825bfd5189524c4c0231009f69ec1fed339bde93c8c2f58063e714d208ca328ea2e275d2eff4077fcb4a5f2f1cb1d9c113e24e116b145991a3eb280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023032dc5f65cf6d55f79f789fc4bb5d6306e1f13f832235d51435baaf9d4115c8a0a6e3cce07a8840944ce38293e1932e96023100928043fe841a02f19a4a0b6c931ee57a3029e84ff299247a74773ef02202639e19b7f2bf61c0941626ed69e3c647f1160302047c435bb50066306402306e9101163b74b809bcafcbcde1a7975f02f4ab5600dbbf133c17ad05f6f1fcdd7b3cb30e8b6efb7c93cff754e823c8eb023031cd6ad25279bf2a3a3c5f6cefd2aaa3aefd2a459bd8938fe27ba3f790ac38d2e411116b4cb104284468f2d231c2cde20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023062b65aab7f2c209849fb1f208794d8139c3cede32e96a26253cbe3f6bd87f605594377dbb8f23489105f87eb414246bd02303718e82a98e90463a0d604be79678d76c4b9d8e69a9757dd42fb9c10a8d2720cebe8cdf81365ee01713df7e49cb151240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023069662cbb16a5916df105903b0eb378ab2d09fa4525bf82fe4745a733437f26b6a6daad86ca9a89a054c4c5981949c36402300d7a366958fa3a8f056ef85b0c620cf1851b0daec7bbc599929b771b34aef2f60da3afa38c56340dc151891d32e8ef720302047c435bb500683066023100a63b1254890b7e7af7340c1c2c91cc33af6ef17b8f641eb38c8a1674a0a9ba94c5c3dae794489a013d6283fbd3daa32f023100bb87411c067b6173712cfa4936fa06f5a1f323a0dca3f3cba4bc73a2230d87b9553df3795afc2c635a38d58e2ed96aee0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230783294d745c81299a99010e98c8cd32124bdad7737c5d9eaa8c6387bd42f13deabd11ff1eb93f012f34e76f84e2285c2023100d8689d3612c82765430945e9fadd3aece114fab0e005587115bd9a2997db59176eac5d2dca43e55084bcf0fd0f121d2a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230553b38a7acfc69da8cc0e67121caa9f276a57a4072e91d4adca362542a5a4c5e2f78d79fb7b46d81b4fa4b1a3cfa91e6023035b5f4d5094b444e15e449cc4b697f77271b7e7d492022ccc89a620024e9bd52169d437896f3fa5aaac87ed42ecba7ca0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023046d6c5154a0f7f78c19efd56d660656d35dde8c524e45723ce90415aa9dece2a7c1e58209b8752d48c930e15d2d406420230116fcd12a2ad23799b13c6d6d9e028d2d09c36a5c4de1f47bdad77b373ee75d8f55185282ca58a892f8594d3ef0f201e0302047c435bb500683066023100973a1e4967cff336cf77df61239723866ab273678f7b05ed842779f23cd113b94c6c70a01e45082861edbc629ec3dbf3023100fcf59263af66e90f602dedd9b5157c50dc74bfd9d3eeadcf52f9618b19c28816599ebbb94656969a606ba64476a23eb50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fe07de4a02dc62e8c892661e924cc7aef760355969ca744735513df394a0afd4fab5da9e77df293e6080a0458d4472c90231009f61bf614c3b8ca74a7963d75ef61909d71c400422d33dbe4475edeca591d22350d10c1f82c9764634b0e29c8d1cc9a30302047c435bb50066306402301c0c8b5dd9961baad02fe024fe3e5eddcf434e598ad444e7c8080c7bbf1204a957f7f8b393581a04fa74719e93dcb24502302e02141080adccf77ad08b8597d44995d5389ff2185f607237e79005188f1c2c0178d6a623bba1ceac3e8acac200e66a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023022e83a4e201ad3ffedc3481f4cc650fb9f6898c1b6b22c93476b7dd564785ef041423e3d09cf7c5256b77c049ae4abb802310084cad7c8fcceb6290fe3151024e74fa9abc2b20a951960f60f1b0a26df131667e4a21f8d32b77841e9662c3f035b77ea0302047c435bb50066306402304ade170338609f1125c48218b4194324445a216c5b12cfff4aa3502bcbf008ab51e3ee2d2ae672ade0e50a66a583a50202306cb9885e5909c8d6df9dd41350eea37ddc058150c2cc0590f5f7d29c179d386b79631dfd936ab6637d5873af05dba1810302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230566fb33835cc6bbbb585917ef5bbb78c8fa9a1c42a54b7d55af252f064f63a43d3e0e59ffc85d44256655ee16ff601290230536f703a821d02588d13829cf50681a33748801a917de01a1276d06c9590da9e7e660eeb195af468f0e692b307a0ce4c0302047c435bb500673065023060087c72728580a472c43c0eb6f4e67511f55c7fa101565c86418768e2d1a5e1bffdc0d55efbf932ec208eba86df0ec7023100ec6deee7c1f70f5b1a4717e2141503f12c67b562f722666f12470d1219dc3e4cb02c8017ad1b5809c2e63881b02b01010302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a224c019ab2b519da1aa7b0fa695033a9a15ddbf7117fcda5ef4e99beab6f17331b9191b1f9a3725b287bd67b1c18af3023100e8c7bed3684af150af1208eb1b7c6690378001bb624d83471a353cf1200faeb9f37945c6e9f288ac6eaddfdbba3577b00302047c435bb500683066023100c5768e9c2d5d681c95815b7f7676bac927d70338a2a27f5f4b52cf269669e5b1ebbe1812c2cf535f3d8b9e6ef1454365023100a5b22d78a075dc08c348bf157f48bbf6032e86998709d346b4f88faa22bdd2f014830f50fe9c55f6f8430c417583cc270302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230456c923f7fa8fad5f57d1280d2ef1ca96d0be33b5c995cfb685af0cdeeecaa962135d53219e34087d720bbc3b2537fda023100a89ad10c5bb479ce611b7726e428b102fa85278028e71bf175f3e9fd0b8a7ea4df3dce1832c116e572efbc7edd92788a0302047c435bb500683066023100b322c9e075f864e250a056c07c3fad5acefe2ce3e735be93df27e674624905452e8aaf22c8fb58d19a1393172d9ab793023100eec473b45d125ec9f06c9b31e20312c59d02bb09758da287197dce3f72c4551649bb96b5e9895d3f6ea6abddbff4b7040302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cc62a28dc6c233f3df4e014c83fad3ea8ab90cf9486f0442091d02b359884dd40b163b29b1596905a9f0c946e0b72e29023063f479b689dafc13be26887b8157e629bccf4ceae45d90642051a5fa195dcb0646717b7d28c83c41033d87fb84d80d350302047c435bb500673065023100d33f6388f26f4adf0d9f6019bb1c733322d50c7368b399e083641e84ae1f85a19e8e89cd1d7ed2f87adfb39542b8e4290230170112646e4586aa260fda72f46a5676539717cd5441e26157585d87a42144b727e059055b4557eff754ecafd9a853530302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023074e35029cba21fc094c4cbda8ce247dbc3bf9273e315a08e892a2265621159e937db41328d7586f04f766e569f47f96c023100875ae112fd28d28aaf95316b0e7c439674de2c23d3f41d1d74677d6a14f8782d2aefdb55298b031d05a470f84380b3b40302047c435bb500673065023066fa7c72a9acadd650753e97683a1359d7a1abfe6d628a931ec2f92e56048f0a1ff29820f2451b0dda6e4783e14d937a023100facc9ae8287735d62e14505b050ab532810051a1f2eca20fc6b0a697c1d7a4a3548dbda9c063d6a976d051efafe6f2590302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230036807e06fd336ca8d7da6c6327f58150e8c99335b918bea3f2c1d7ec3dac2893985c5ef449f25d18f09c4a70940de0d02301bc1a34a5870d11878c9b8ce1d07b50699614d05db15638e1e8cc4f04a9d5d859773b4b3b5eaae504f840d7e5adfbbe10302047c435bb500683066023100d9946e03c53e5b7d870de093b8ee53a41aae1223ae6e08f30ae120161c46166a08b2b3e3dce32711e30cdf3cff3634c3023100a9ceea563a4a818e3b1621a714a6157f65aa2ebc5850257b3230955fd619f74b252d7e6e3954a360a33bc359bba2c30d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e5bb50e2173749cb4b90ae8932d576549252426325a6865f54a19b88d9691a936baa9d53de9e87cd3693af1f34ba97f902302adbff3efd327a7bb107bbaefa163b26de9d23ee3ac5607784c70ef6f86e72f1d631361b6d8c009cf43810b95f6967370302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100afe7fec5ed4cfcf99901efacbb1a5ee61ff09175313f5a53325244091f62b4ba8566907f749e70fd1e42ea344fbc959b02304193b161a48a1971fd0dd57145819fcaf0431a2f1fbf7dc93d0a41d9824bf0b302fc7c01fa92b59684a0f74eefba79050302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fbf64d360fd4a793d5caf46a48f6bb7335757d58036cb0e3f2ebafa4868a0f2d53c998350f810bf54b031cdbdee700c00231009f2d5e65313d133c811ac7ff3249271701ecea4b2de1f7caa7666f5a7991eabd702ec18a2fa20ebdcf45659bdebab75d0302047c435bb500683066023100a1749b551d360560ca0d2e2171c2c0bc6b2b5eee6cb0a9d29c0579a23ea4c6423b563fa88307b63dda2541cca1b014fe023100ceec6fca2ad7583efa3cc273952f59926c6d824d93db42504ef565406c02d85ac2dc6b6820ea35d19104977919ed47f90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f8a2dab330b475984aca1bd5e6268459619f12441b684ec15091cdceba42ccc5bcadea81ddc9ab852567970e76b2883b02310088efe2212142dc70f39b7c428b1064c3458a37acabf62e27c530bf47e242a4c4465582670c0e82faa9c25033716b6c890302047c435bb500683066023100e90a6225b9547f3f041221303959001cc108fe6c4a69b3c1bde9f74964714a2a5361ac3642e5a7f1234b3cfe3dc398ce023100ad1e6bf1eb8ad534af99956b52c2d6d76c175cc4d02263c8d6f0720b10bd6ae9ee4690d37b0ed461cd2ed357bf01d7ea0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023018a2fe59cfce3bac1370eca4be845edbcfb1f21aad6067abfa8a475e7309a7f056dd4d5e9dd043939cc0e58792cd2b89023100e9988161ae7a3e49a66cffd289b79ae4f80beabab303f35e0b5ede8b4de6484047e2646eedc4a52dfeef90f5b3873a760302047c435bb5006630640230710fcd8c2c3d4d936ff292fbd7414b4b9f7b6eae00d33b04ab0212f0d41a8bdd2b611d074abf3aabc2ea5074222aed290230665d6c71e493c04111b130ba3b94332dcf21a7292d1c7efb83cafc31d9785bd9debd0634fcdb0aecf5324485ae3eea970302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301ef78b13d38bc53de7bf65c15d0f4751808d5ba903de85ff70a8e2da4b3929da62f3d188616f9f7a27e3e483afd02d41023100d5fa35fdedd5ed24fd4262b3777cc9650c3a548f2cc701b2f5c9ee05a3bee815e536b08915d0e726585cb55edae45d350302047c435bb500673065023100a6f007206e59c58d3d3783143ba9f606f3d1ad5f430b6897f93ff56ecb65dca9c52d550c1bc04df21afc2311b88c50f102304e53edf224e400d8683bb4409c6d672cf395eeead49af6f252c086c5788efc73fd0107a0c732b17650c252b7c5e1a8fb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023032bd4a595d9a4874111c955307ea21127c5912f8674d0441e51698540a99e1774d48b118fa8415ce06944165e3ef8e7502310096f2cbf1c005048d3f4c78733615eadb306dd51187c78c699db555866fcba092cec5af785f41b89c208253f6251775720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301d6d2b9cbda378c6770021fcb6f38e1fc64a9997b650df93b2b5b1179dffc40908e4d4ba8d691eb744063a908c2d8382023033581e36b606cab835d602212268151c3c655f7ed1288fc7f86911d14d84ef60eb03954191a76b161d364e49515324ae0302047c435bb50066306402306ca01403e29b542dd071cb06d7ea700d82b43455a2d427e21ec8898a65382e600ce9d94ed323767ed4144f7cdbd75dec02300adae6c4a97b6e8175b7f246a078f3d670daa7d3ce245209563b83aac3ccfc920c8f26a02fa659818de6a2fcdbc434f70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230586817af3ef69678cabc7f78ece29d54d6f892eeecf9c85375becacd7881afad9ec9d3f803f0033880bc973475207ca10231008eea57409a58f2c21e8e5f0f0bdd317a9137717ce7466d8c6d6100d771567580f88181bbfdca35fedffb1b006634e3e30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f5b764416ea1e07a83d02b0356e989a5e088a06fff095f020b21d7fbed13e2f9fb038999413d2e5dbf995237454412c702310084a03ebc724664c92549004ce5a7040dc2a48897d792c43127d9e28a03902f54cb802ecf993133cfc46681d6eb9373ab0302047c435bb50066306402303e0f557ea697f92f89040f90b6ffa85bc8eafba1a5b170d87c48b0c03e4f26181e9b8bcbb9d70628787e1a4b8bf98b4602307c186c4adf9147b4d36abcb37e19b9a063de34e749c6e83f50a35939c64dd519592fbc6a8748fd82698220b68a4f3d8f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009f5d80b4e63383c7f00464dc9c756cec6ba7365566a07b308bf8645f6ad634107fab0e073deedc15dd9941589b0e21de0230175d2cf2131f60965ee0893ed28246edede953205752960a9b4c31a3d77c18ba38865ab6f509883a27e24a1053b7f10b0302047c435bb50066306402306bda071cb08b57b06a333b0d71f3d7fbc9e39cfadddbe25c770aea3b6752602bcbbf5673b7aab824feb2343f47d05a8702302967f5acbb617968e9a1df813f92bc0abd64dee81c8a3aa1d7d4549deb374d5d5144d18380a270c529e7d6e517e0b0ad0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cf373fd88ad925627407b82149a89e7a55238bc26e3e86b4c6feafed6c8f267147f7064ac1dd77e2afaa7f2e3204d1100230257fabaca2f4640a58832b423509ffce6a35250342102ad8722bce76cb172faa86d29da2c8d750fb77fb85855156304a0302047c435bb5006730650231008d79d185a813b80adb1a06deef65ca9460e1ccd536c430fba978544c9c7930371f5cc8696e42d35f35892cf5712be8100230659c22dd36025a78f8615314ca0dfd12e5e275d667d42224cc6d69048842536d1ef6745b7f7cfe4ab91b7743c76948010302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307cc92940fa16a37ac181d8cad7a1b39e073a0505a4e896e71375b5ac679daa90f0035d8f963ac2c21964260eee2b3da902301a03795ee3aed98c2e4923d725ad465f282a8d4fe6d586342e8d579df18145dd482de8a1059fa837305f487ffcdb32a60302047c435bb50067306502306ae227d64046faab32550fce99669497e6f306b72ae87cc501d5e2d3b08318e39298e3464e4b8f2bdf9e0fbc5406ae2d023100bb27f0e629aea0c957522a80ec5afddb0c25aa8c6903a8a4112446ebbb05e696e289c8db0dfde290291a58f96468860b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023012d596dedb34d166e2ea55c25afcf977c15419677926e54f29154ee9e800a736dbe8f4d0822fa8f990feace648facd930231009ffec7d5580ab45a9f5e0d3506e8f165704cc52caf2cd4ab6dc868636a15c61257a23e7355dce809b5401f10273f65740302047c435bb500663064023065d388d812583825d4098985a2fea285e449d9917494e93834adc5301717e6bb7b230d1fde06540c5227e1f863911e40023076745b4ed1ed4c8dbb8b48fbd674250bf9a2ef8478193e020637efc12eff91aa783fd714e7be8d588be78f22b89a7f4d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023060b9e5d8acc9fef55cf29b37ad1270f72c831df565c1ecae3f9936bbe823f8769140355b7331c5163c46d2428bc1ab870231009b1269cff3be867fd6568649c65f7e06ec9a18242433301e4902deefbc542a860c8b28c9d13ad65240e5c17adfe63bbf0302047c435bb500673065023100b4d853b022b5704c42cfc322dbba297e9ec3cd93ca7469329d4c4af1fd58b82ac581972549dca33a76c4a58aab0d5302023010231a635a7c7c7cb1a5edf4cba758f22aa31f026efe303fb11b38ae18f2bc6298644311c5a532de2686e3f0040fcc7d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230591627129de15a35c7c49d66f8d81bc87ed58ab69dba2824aa6c9e21d0de8ddf2345a885e5a022e36e97fef5f69cff72023100c2dd2f35032bd229a681a92993de9fcb888d8fa6daf7be9d46c677d525c1bbb0dc577069a9ac65169d5ae10157f27f4b0302047c435bb500673065023100bf18cf22730f482455b5e129446756b2aa41caa29024668b66610ead2297e27049522ee4075aa3ad635bb3a1c44b9a64023003314d2068cc29d88153c50e289a91c7ea31414e1079fc5c86b15dd4ee329f231c92d809521db49cb49434455e255e630302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e66ac9450319f0912af3908dfdffc891f62a7e2cbf0d874b647fe3de3bc644b4a2f926efcf13a4c845277a954bce6ea3023100d98e15c62cee341b3f73f8e530ef73067542a6378bcd9080f8972f4dc2b0a3d8aa0f7d7c65fb193c32d6e2ef9cc698450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b05cffec8d3b952c31de48b2b4ea9e57895d855c43b1f469b6072dd171afb8018aa7bc7694bca7ec54f35665cf297e460230788d0ce4e421a0394c19cda26eb8058e1292aae6622a45b5d365701136692586aed1e9a45b89f501c420daac9d047df10302047c435bb50066306402306cd2b654c73f1bf870178b64ccd9231d6eae0fdc21fe3ab2d23e0f9982143f205a0bc5b2f1ebbe62c583bd8c794eb973023029978405f5e58c4fdc7a5def9f5e1327277dc46715b54865c1ed143679952f29df6023910409c5cb07c0867fa643e2cd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009d8c81eefc803fa806729f0e33c34cd6d30f390209af78131fb29f78a379f48f551eb465defed41f09f76ad2b4ef287e02310095654620812b118f99436ec0611f68d27bbfcd31b2819163307077dbed07bf8c931ea2a390b99184abbcfad72c829e590302047c435bb500673065023100d6c5c24de49bd7420bc07f0f564e346ab09f64068dbf47b44b9be2ea97643b081bed211a1341a8ccc2cd346824b192ec02301d5b7ff1c2895cb77a7b364b2c4bcd2cfe58a6f7b7f846c09a3536413a4825f68f190e6afd24e526dd5fe0abe9e84c760302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306c7533b062120fb067e6835b4616ad3ea67e5fbc5f9d3f432d48a8c6f2c61d8877290fda30ffd78236d7126bc4c069430230629eb8b8a371a0daf502d773e9fc33205dcd02d3ded994a709491d7c57d7d8da3dbde0304f7c9e18328a2c03c320fdf90302047c435bb50067306502310090bbacb947103169afd0fe24a8428dbd881e91b7b9359bf03d81902d910cba744f4d5b10ac941b3db37f6e03569b6f6f02302d8aa9b25092bee169d78c31cdfe8546c42b36e313377db7538454e58ae26859d426b4c12a8c07628cc36502c0ba92c00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ed1218f230e87f3624be6bca451e167fc8122098f77d03666a0250df204c823bb4ff66999bef8f790e29532f1f949d4f023100c05afa8b715c9f1e263d3d01a95431be890f6ac191e3e6de0ca428e55aaf164c79b8128ec65e626fc1f45b264e1ef6530302047c435bb500683066023100f5e364402cb7332a920be7ecdf4180604a46bdce229740c6a26b4255153bf355d108a7fd63c35b1c0e494bd8b5e7e3c9023100bc2c7987063defcdb4db318a6e67995e127257eb0642ead6489b508233c1a773a2c3ab741d242ae391d3a329d7c6abe90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023019565ceb0282b50db0b5e5cab363f0fbf4fe566a6a3d5ea06753486cb16603c20545103d7b9f997e19195279cb35705a02310090dc0b0366f02638f49b99252032e87813bfdab86a8e02ad1f633759ec81d912e2aba6a4c60e3f8ed6a1086b415a2c680302047c435bb50067306502310084ce2ceceaba1f1b176efa18a0cd264a2a36d786ade804d21410060c589353ac581d2e96f84a9d442dba11575f8a768902300bf7bb2b6517080cf7d6f39724f90233ca5e6a92837363857f36e7c6abe74c0129a395bd12e70d207f4e59eabc45d0070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f0e6594fa81d77abd636023806d78bc30c3baaf975cb1401b7ee83fd750ece87d6c3f147817cb5dfaa7841fa5efa30ec023100f3c690fc22f8dcca704282ee6561fb0acc5fdbbb2b2d0d950176937a69fb91a4b2136baa651ff7b9ffcf1abaaa2979790302047c435bb5006730650231009eaed192d465ecd9ef7af722ff7f86af8009dbad0a577bf04a083c137f7a22f01fa90aa88ffd0604a511806c6a361b20023064b600b9e66403e5db2b0538df2b53321526e0526344d956e1b05a5c7123554887a0c9807177fc3272b3a4d1109ff2c70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b0a95607e4e46422c070c317fd653dc09e49f8ae200a98d5b6ee349fc505648747b86e7a0cae05c1fd2f5654fb9de0fe023100a156875179b7e182643b58602e4088aab71e8663e88447a034c5a8e1f78e718b3b300a2ac45d40197ded2d94a33534eb0302047c435bb500663064023075e0c61243b8f7eff8b43707027623218f7a3c3023a98e34721f321bcd28bf61553120b83ab5c80636cb4402a5de27f00230280fd7377ce7e19df1e75259721d0283d3664fbeb3feea6178c94c3d7be6e1cf0521d055e205c9736ca4c7c0a3f50f130302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f0a43140b10c000faf7496edf61c340694f9f1856d127cce6a4ddaf8f5090f5703471f3d9d58ef9eec8f32dac6ed27040230210da6fb9ddd60e498b05e601b5478b852bff3c286596183353c478b2650ec317d6384809dce4f31aa1943b8c8bb327e0302047c435bb500663064023004750dce49df44f563a9f3859cf8c22f1b3c35140c29c55823b5e7b3ccdcf0dce484c90e463f366022c2729b395118d102305acce33e3a2cc796815e5149a6cc939fbb0103e82505bf4ad0941d8ee40a24307180c8686282f91111c7fb04817302180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100979fecf324005f385380aae9d5dce80b7f55db1e40ff19042003f5cc94b9a9ee3459eb9e45b72541a14d09adbd2dfad7023017b09d34607112f2eb5d789f1ecaf5af8811f5db6d3742a62384bd19a0d45a014da1287e3e4b30d06edde7a6497635330302047c435bb500673065023100cbd691ca4534916119e13fd8d1db65713e67fdbf2f8d426e5d33c1554d314c83ed8edcba6eed93c0482f704bbd0dee3b023053976f050dc19a298b7a0357b0b4df67be9c9d528e5d547a5f914f40ce26b26c6e432aa932c1ac384f836755f7b3f9d50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f08e53793070cb394753a94fb28dcba6502a5b3faf93a6557c266063842e964edd0578645b987ad05a46ded8b2c0f4e102307e894d116eae224e2422fe96bd489a86955f8e6964812fb7520c7afcba18eaac04c7207b99db7dea16765ce1d654c8480302047c435bb500673065023100e1e3a08668121c7e6702815a1be91ceb2cd029d7f0f13222bc575f97b5d6f3a2fcf601c9f940821d5bda17f3fde08bfa02306bffca9c72e0469472913750946bacef8a78cd2356c4ad0724b1d28aac0936b20afa9023a690f71750acb8151a0f5af20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306d23b9891c105092da5a72d64b68c3deb91c7012c7de759adc780b46b79a8c412f7cddc68ee896da6e985e56fb7aa22202306004155925c38151f155bfdcb9909cc8c283d4cf257791cff2bd6c53a7b837c1fbcbb3441ea2c6cd1a182833bcb4d69f0302047c435bb50067306502302d7d71ac491dc4c535c60fc0c86429df6e9fd7a8bf28e8beabecd4179aebc1603427bec567192e3f9718565e1871a468023100c9847106a32c0136cd5ee8e0b07bb7de44002ee3009e7db0b9315ac3afe87346a07f32980049d040708e025e1a3dacfe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230763ca8d26358366a8716cc291feb3ea1d0bfe9984d6310ebc56e74d57500029fdaa0e0e00fe768d561cfbfd18fcbc301023011fbf84ad74ba188464ae28638f8e2cbc61fe16c58d55366c78d9ecf9fc6e704405b37059c1149575a68b383f65cbc5a0302047c435bb50066306402302d9a283023c7b54c0b8cc4fa4980742aaad4467b8aad621fdc9b4815002fec8e3f577fcdac9ee7e5b251f171d81468cc023018fdad58798dcb5307ca3533cd3c5e5b30193cfab58a459343661a9ad9bd59ca0804faac409ccf4bc9eaafb19f78b4390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a7d30981b842c3263cdd02f9b6c8173a3ddac20389b2f4c6428dd1b402c3883abfffac093d1257bcc67a29828337b2a402303db05875fcc96c98a0d32134cf769fe3016bdd1f797f28bd8b0f25b3929d333d06eab446fd232e02a0d8ac5b08e4ec330302047c435bb50067306502304d84a8b79b1c838bd3a43c5f347ccf0ce4388f739db14c3a5d70b438d506fe9c653138c8e2132ab7e46534a40d533185023100f161dbbc7ead39a264a0a1b1c51f71b4fe0cbfd8426b83a0d9626e248736945d86aadc80b11d6f49d13e0634e0aa150c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230719516e8302418379d66405dbc421914ec4665d76b263f1c390ad9e557caef78e826bb25d1adceba2747a09b882613cd02306cb439bb9ed6a327a6abf9931eb8df0653a652c0fb22098554184ec893a76b612be8f4225846ffecba00449f85f37be00302047c435bb500673065023100caf586f023775c464f61d73a1c7d10c4d9a82b6e0c57e31f32874b44b6ef8333c7908a7ca973a5cbfceadceda38d4f95023077623a7fe6bc38972fbfeb804b36aa44a1b3b9dff6ebbcb6e80d06d8833b0761da7c577d772be1b147bbb266b76821470302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fcf21a969e7f5e71fd514ac2a3f96ff7affd2cd619da0e8a7566cbba0d91f9469a3b43a1e71d584cbe39a9fe99a73889023100fcda4e9fc487a70da8ac88562d75957c1650fe94dcd94b44d52d7207c6a4fb4f797edb6d687eae588259a54c07ba70c90302047c435bb5006630640230394bc55e2d542640347056be79b59520dde27a2032290f036afb62d2657de04b3b0d603945d5e4f1feda22c04506c2a30230112344a50d911be311ec040b1e6c7bc58df6d1c289868b4225ec2c0b4b27ebcea8a98726c6edd746c2345360ac797e090302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d083adf0dc451d5d84884ac5bb73173fab04c73c4ce0b5b376ac1df078f05d8af285215798d088687766d91bc55b84bf02307a21a490e6e25d05c91b9b8119778a1467e25c6b9a91b538974567cffe4801ab9ce59b815a592f6bf324e07cc7d1ceee0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bdd43bc58f734e46ed28336da292f53c333a5d9ca2a08b691e4167697de84ddcde66f66293e76b3a67d0c5ecf7f02411023100b54ccce4daf51a07c24888d7b97f3ce39ddaa52dc0a1cfdfdb4e0505f8722ab27729c9b99d952682070a8550722e1ad10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008307714911afc4a0538ed696d9cfeafea8183117a28cfe950a51b9d6bc54c8be45372141373fb55c605666e2c7ccdc0302301af2fb47ad61dac26263b6c46e930e3c262dbe3e1b115bc0ce94536cb49bf1e3b090c48e59b167b888e3c449abc19bc10302047c435bb500673065023100b110a4d57de2df2989a71516f75a38e7138e3ad8947ce94c8dc32e137e05bf258b6d53325708db9c7d7491781370ac2502304f0f4eea1900504535a6abc7bf89467f402e3038f873b98ab50035229820e8e7ed8e53adaf25e9e26aff5cb012f00c670302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009f00c1db5033e11f6decf24c21a6f24a1ddae16bec4d658cf48f856a0292d67de8128d30e78b02f0bfeed87358e9a55c023023defbb9937f2abd0d9352ce89fb5c462bd299b2b63e72b7c7069010aa6e9e119cea9990453e36128aa5abb1c523e50a0302047c435bb500673065023100b020a71780803536afb4ab541b1be07ec52723a9e8c0f7836a3a1eaaca500aa4d21460b0984e731a1a16b5d36dcd05e9023070fe18a533552aecb10805337d6f9be2bb41d944a268871990dcfdbb3ca2e9fe9b5cf258fe991a8d84f2c5a36084a0ab0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230180e4db7e2804f7192a1cf589e2ae91414731762d8f68a03f68db79dfa04b715ee5917442b022714bccb4d01e20bfab102300d4e232cb24162ede75c4171401ad589ee47c1816b80a27920ca7dba91b2ed5f59673f5f8e47b24cdd7b0e456bfce9a50302047c435bb500673065023100cf56e35517083b1e602478805fcd23c65afe1b364d39ff327ecfaf8cce594caacaf83bb9afe73b6e712b96ec9278f9e60230214d83a48069c599ebecfe3d1b8c9d6365576683196808d5b141ce76a8349da4570719e4065f797743fc8890baa18a2a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303d9da4306dcd40eaa4c56eca71ef4bf73dc9a3b0b1c8af90f86f0d2d6e191348b6eb96b65c3a2813a9f84511f82bc2d1023009190a0a8f0687b02381863455ae6a87aa975981ad16365b4d82297541f707cf977e0fce38ec2d64eca9df0333ba4c8b0302047c435bb500673065023100ac01245a6d3c36b9dfc29b92bb8507848577f6247e7bf290613cacece74d52642fe831bf4cabe72ff4a7da34ea6ab0b102303f5ba5c44ad3185a5dfab89b7b3edf8cb70d15fbd0e01046f37375f622315f68ac85195c3691e3f83a8b0a17fb7f779b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b5702ae4d771d67920159930886b30c332be89807f59e653e5d84f4281e26e50975f7066ebf38f6fcdf1caa41fb52dfe02301ff9f2f257523f6baf233639de10f53301aaa69f96b123272388f5522f64170547232dfdf921b89f731e66d4a7603cad0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307feea7afd18213714570b9c69d0542a7f77bf39528b0aebb878422ad930c45abb14a1fbd44d0fa7869be7c0d832d1f39023100b845e81e77fda52de3aefe6c0cb99c6eb99fa85353be904b762d5bb2bcbd1c73ed611e80027a15e04ab8dd6a984081840302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100dacdd22ed862d3ea6a70ce5c503df220d146e0549f10c1e1e38493f42bc678a9e889c7156f88c471b49719de7ec2e06b023100f34739be97ea3ab902cfc66b5cbd456e1cb658c5e7062cb90e45e13c578b1d33a143fdfbc653a8657d14c0d9e050a33a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230084b2729b69a5a89fe029fd4b73bc867afe5d296ce39ace3dae8c67a970fe3c832eeb193c3e57096ba70156ec757b637023005aaddf7f855d7499f3b579679eb922ff53f987e835d4ea936fcd754bf699fd6a83568f0219e6575bfc2dc948633152e0302047c435bb500683066023100e46728ee811b9d5c5d2db502ccc84a7ff3962b648efd890f2a2830c484bc9165b6d850bcc4858bee2ad3e6a9a14e451e023100ae8a23303877d3540d58450157fd4ac5b9890d406b98586e7c4a91f696ebeb69001464f130aaeefec1213a99ba20d98c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023004f6c9ba4dafb9a8a3fcb111c1ca7b816c526737d7eedb492825539dfe012d713a7dcbb83bb2bc0948d323b99f7b41d9023016e3a4b99951bf9b29eb20991e9bb8703f7e311b6b2ada85fdb2dba13b5476fedcd99aa648431c8992a5559b17d9cde00302047c435bb500673065023100a67a9af2467a1f333e7b12c3f192fe7dc4bb10cbe8ad3e502be50d77e4dd0fcd216a7d172f9ff6d84b83f1d4fc13610302300f3d2781297f2a0d484336ab323e7cf9afab01b1e56e2c19436ec83a52c278be31ae296dd3cb9495d9b1aaea4b70d61f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305fac5f24ce34f6711a152db2f87b7bcaceb1bc233e1e98326a7707fd1278fc78cffc945aa456073ec2ab67ba5997bcfe023100eb1c6f53dbec40d7e452dfc7e4dfd54d69396de04f961a18cc68b8564ed89bd6a9677e88f5ff2a876c1a3dc65de5b4a80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c5b226967512fc82c9fd5fce6e9734422a25d6e55cb863bbc2e05b4911f75e32883daec746c906922ad5c7f0cad0ff6a0230498495c6b7f37fb49a71938a12ee4061045ee2c304ba661e234e74c25cd202e940a18c048f0d4694db4f0fe60e1ef4370302047c435bb500673065023100af9baa884bbb95889d3df74051e1f6cc87985f66eb796218aa42a697270f4703b0385b5fb15e12538f2be096025188dc0230243e03c89e1195d3e9ed1b9b9c6bc168b6346d7f0b699e3fb8b1ea27ff4ea2e620b1e2907de9e998214a174b287f8f510302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b256191cb73881fd8af8d08477a473f393b2048824d630d2a43f58f916025a3731f45420e15b8bb99d4b3031b502db9b0231009d241d6afe154e58824c3df23a42ed92eee5077e3e4cd5ef3386ae9309869eed3a877e255d5ba6dc8ff7c15b995171080302047c435bb500673065023100b54083129a08c816fc42172dfc0821a850f4a0b2087fae95a0e8f4f10cce372cdb959c05d501df9c25b085a0fb65c2b2023029891cd0bb187645df96d2277a189821d0b9b295dc7d586279fe7e142ed974ee38a7d30b7c2c660b457019c7edea884c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304ff0398c82c5f0469e3558424b1210f25757a075151b9172528c7b2bbd88e7ce53455a79a2b0ab9a55781cd3f756b80d0231009f18e59d40539bb24a679367296ea382976d6ce74a2ae1b85af98b5d6ba0dd189f96dfe53ffd689f04b99d737ea7a8d30302047c435bb500673065023100c5f37f008df90983cda0908933ddea1f95e2c71088b1d44f4b9f5df5a4f8a31c838778524339ab6df605ce17a53a3a5f023004420109c8d9c7487adb1cb54374d1d311b7ef125a89be2a0d3580bd3ccbe4d67b352cf0db88226a4f13da37a54cc7560302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302ed87c02e18e081f7d338509fcb102eed6c67461cd39b0620f2ac90c2132ed27452ac1e25081934965c64a70cab570b6023100dc041bc227e2cd3a3f01a340dc0f70528e7b9fea2b3a28cb22e14be7ff9271ce9c2a110524c2c90d023522f0252077f50302047c435bb50066306402301db51c5594b95ac7a92e9bb6ab10312379619a6622bff1723503197e8506462158b8a92839e7d97ecccee3344971a80f023065058570755b477f77ccecb6b3e96e3e1ff90d522e48de668df5ee2066056db5d8fdbcec15e64b969cf3e40e4047f3170302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ab05e3c8cbd8ff28ec0b54a484c7030a79903b6b721dc73ff3910abbe420f76e71873548baa21cc41f6f90918758d568023078ea7e66c9925c08e1ca02fd0b21a88a66a3e88537bff949ef0ed728d0153823df6922ee4d99a634f38ba165bc0c1ef10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301b860d0d7592120f5d090af68dcc4ab213f0dc7adc76063641f7578e00d9ecb72b11609ed27d8a826d1436203f17342602302143b50e727af3b591ce6c6494ddff3072d8b6854fa5aa9dd8fab4e3c9796d04d3fb8c6e4aefb4ccde66254fe85807110302047c435bb500663064023039a0491a5e3573a49dc4cdde883559e9214a6358625503418376a73f62fb0e45b5cee33b3578ef3a94f4eb2ea3146fea02301f17f29bec9c6187ca123ea6f48ffc260751988ea8fd23df0b0d05d57de5833b0e097df185715682f28941cccd96f8c40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c176a1b205d5c9c7c213fc631a47176163bea2f162d5230d05e506cf6617cee443af468c32c72af880e665776da3ad060230280002132ea3a51a5f55b5ccd3d5ed88ebbb5d90cfd989a1d8007dcc6724169b11a8973cb9ab818b4e1a6e354ec7def30302047c435bb500673065023100c236db9ef462f459568c9203eec57d28e1df73eef1d0767b56c9ce5f766ecaaa1a69a464ab6e0b6115fce8421bf5ad52023035d34fd91df21003c15395f7f9cdd3a46b58f148b2bbd36150f71465ba3ca2e40d1b6373ee54ea164fda534834b9f8a90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023024048dc2b1a579ad0276d26e3e95d3cf807496ee1f51c249eb6d96aaff1671d639b9dc23dd36ebb42d3f968ae51310da023100909e9e3a9f80d23230d89532c48c9433f8712274b2774f7c24670fe3ccbf8a59e0fa8d70e6d6564ebe8928669657e6fd0302047c435bb500683066023100ff751fa7059c4fc89542b73bde48a77a907dd6aa6e1f43e7bc6efd98e4da959cf55298f98ab16584821df1b35519ef55023100fbf64b10094c9ed99814742dfadeafd4ea091349df33d0b1c639d613a9b7f3fcfdfa0345eb17b8d52c06b0640bfb2d690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023042ed55a19446a12c967b92bbaa63aca3bdc2fdfae313593a720c51fbac141bced74e9466715fbc9a264d31a04aefc3b2023043cd971f3aa4db5be8122db6ae40d0311cce9c827e6ba7315e1752fcbaeb5df41de5f750e164269448e8effbd909c1d70302047c435bb500673065023100cba2473eaafc6b2d6df5faecaa728e502051518f9e92e5394600c83ff15512d6221d7dbac256e9057ecdd45be8e9b81102307cbb38c2b2dbe60b6905ab512395aaad97f803ac8d524ed07fd680dd03c4fa42da20e0dfd462da6395396eb759a18acf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023069a78a9fd30b5eda9e2f3202f598b86dc6bd90154b221c7d72d88b4de8be3556bd04d9dd2a8eafa7a7e46175b13e84a102304d21df50a05d889e2c6ca8b9089139da161071e1865336b474e3455b11411d7351fa9fac6b6f3873210b90867a939c8c0302047c435bb50066306402307bdb5da4d1acc8c3ca1480b14e531231be52258c3c58e2b3b674ca985df0ca5681a52277f691cd26f4f53ae6ce4c53a3023070b2fa24bf58f473ac6deb42573e89ff7e2d694517c27e1585f76a83e0d70de107d20c246f4b0e078c5bbe121602cbfa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f77e66bca63a00e2f2f7c2f156ad5edc13d334bb39fd994963cf2347ef58162d0228c464c6daa4164ec5832b1f53a0190231009fcacc2a15dc504325bc0ffa7f3c2de8d97a86be5e973431854ecca36db9898bb04b70067ca3a97f4e0014dbb4a8c0ab0302047c435bb500683066023100e993a356aa0a01b4a057e925ec3ba42f9f03a8c452231dbdff57f85d7799ac6f2abf1377ab8411a6761a627f535d1a02023100db950a4a6907f19cae4a16c2ae2169d36b84db8e5014bcd7a15bdbb0f38f6aa2cda83e229ed1db9aed99c1d82e50e97a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023018216d0c72bd6923945a31d1bfc6b050887a0f2589349a962c7c41e96d27f6d173be035b05357a9095100b80604b32ee0231008a4346e7b0154dfc1e729b0c68a1b72f714197be8f3cd4debce0bb8086dede8fe2c59f050821f8dba4bd90b01155ed3f0302047c435bb50068306602310098e5e2a98c093ac7b38e2166d10d5bf23b04f52f1005efcd971a41781725a3fb21ed19469a8a243ea90584020535dccb023100906c0e4de3d3ccd4bac743b9488874a87190d7ab2ad6969a8adfa289cc6a7ed109b615cbfc4b96426abc63f577184cce0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306e87d41dc5e81bd5a4536f538817dc4270da32c164c191a3b53ff873686dc84851ec779ba1b6de4c744d0561287dcc08023100ff3fd1b895b7c1c468134d3e79cd9640cb89710ad3538f28f1712d2fe215d8065787cc08072e906daffd5bd1c566b07f0302047c435bb50066306402303233bffe333926b305ebc2c7762d868e4fe816c714f52b31dadafb13da2df60508ab58ca0067e94685de334f5bc4679f02307fe88c3ff8d68e6d1741f16b8cdb7307d9a1fa99acdf29b4c53355d2cf7f968b24e052b526ceab10a12209faf10a38280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100db92acc7d7892293147ea2f91980434b7013bb08723398fe627629a37b1928a613ec735e1b2200529797c7e4f891e87202303f76844d1cd99571326bde7dc8b820e3d126dbbb75f469053abab14e5a435c7aa580305788b7d555b0d35c0aa5a0f3fc0302047c435bb500673065023100e9ae48a3f4ed4923320569604b5ad3bef0cd753f90be65de5c4dc27f74ee6858d4c4ad70706de682b24559aee729bafc0230500a9bba1424b5005737d3b66ad5728d7accb9b65bbad776b339f5f653a60972ade2f66567056fdefe65dc6e07a41e630302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cbdf20c85e477cd751ce58054d8eeb1252c476149ba83d432f2eceb6d97f437752000ae70548cafabe71af5131433c7e023056e18e325a0b79cb290c228d578d5e0a7d9593f317c6f17ae1e6626cd7b2a130ddc882fde0b6ea5f36024431d6a5d6490302047c435bb500663064023003501ebddef222abfefdc4859e2c1dedd84684cad1d7dacf507778bfaff28f77be42df34437204ec911a982a08779115023045982b36ef0330f693f0577da1bd0ac4f3900475c9b31b39923b3456d60d4c5895638a39c72fa4cc512f6d9acf44826e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ee7d4e63544da0daf861a566d24ec499635bc4daa018aadb775499b708db2f697aa7c66e99d713246ff28997d1ab24b702310090f5354b2769b573f5a85bee1d1394a8b54a96a7ff47e529187c97328d14e24e0d8240f331be2ce8fa3c825f44bde6440302047c435bb5006630640230708ff4385fbcacdb525f37e0aa1c2f71bce9e60ff07ac92b1ad47b1f16b30d0e62fcedf6cb8c9b6d0dcb761f385ab93d0230047c6a9f7fc7728d6fe7ac7dcea332d1ebf71034c13d93ddd7afa108163a10ffa2c984f9de666bdf3c4bcf59b8fe04820302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f89feda3f2cb168f1e5f16057c5316dbc4b4208d3fd918038deaddb03b1416ab24f0745e1ef8b1bca153656d6ae7ed2f02305a8e77369aa4eb7861ee3ebb51d470068ff7545f21a688091d7f5a5dc322de1783958b0bfd2aede2deb160cf40ed7f4f0302047c435bb50067306502303cb8bc93fce661c8eabb565df8d552f74388fab05a2d9cc1160e621a79b04aaf18ef3a673b1cb8491a1fc20229e4da6d023100a4e497636a26307a8162a42571db9f3f2c99705ca418d1cb056bc539f83ec7fd30c8c1e757f5f05027a98d93ec372ea20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310099a212e7e33c6bb9b79f08352d55b67ded5ddfd28f926c2af3e24131f979220979a3675471f04258ff89fff4b24255f702303fd077858a8584fa14657ffd0155ef1f5699faefae25e30580240f365de2e4cbdd99fd07a9b27764422b82f6e83687490302047c435bb500663064023077626a17ec9a959f2424be924a35eb2066d2779847ba7c6db684fa4e9126bd841c5f332f6eb6038da651acabc3fa368b02303288358ffbe5764f0b9fd1960b1e7781961e3f80ee693fca8df73a2ab4df705dbfcd655e0d7aaeac6b3ee9e01a27dc710302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f95bfcb64a29dc06e734ad951efd103655c727befa584036751a24619dcbc7259160a1a624b0c219024c7cd71f4af78c023027b6404caeb98dd0704596520ebba45f0a3ed72e79b399d7155b9af50d10a489150e1719b27cdec1b6c05fa0aa795b310302047c435bb500663064023040511af29a4269201c6dc81e4c1575f945033bcefe94a4e04bafdb2a95f44dd13bafb15288d908aa7b0c8d6ecd4ac81d02304492c77b5d213fcd372671d62f00b277b5240cf4bd2720d74c13f3a27623e14058ca521bae4f4a68e2d56553171a009f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303cd7778c22c54d268215104a44ad4f5bfa4869297cd297ccd37acc887e7a645b30a7bad4684e1d6502ef5650c428806b023100b6aad1263ddfaee1860f63703700ed2fe3382682a6922f16a680728d554928538ec3921b686e362b27b05adf8b6981430302047c435bb500683066023100ef19a8530dbf6c247e759f30c31817a131c2af834adaa5b428b3bc2f5ed9b44e85c0e584b5177c215cb0cbc5f93140ee023100d456c535149c266788b5f680f3dd29dea0a0309e44fefb28c9852581ab1db813b4702e1a07f02d0c0fd24941b11068650302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300a062b94a21d51c4b24db0af2a4ede0b9592b741d973c5c1d19884e3271ae0f89cbb799481e789363d8cc1d277c7c5e002304963f81f45b993961a0dec8cd8e62ade964a9628f144de2056e58247e036baa77016d2972ee2e991610b73f30a099f9f0302047c435bb50067306502306606fa0c97dec628f6dadda3b8d300cc56784d2f1b51d12a5f940a835025dc9127c558ace3caf404d294a9022dbfdbe7023100f635263b50d927cf6a8d5bbf9c679704c7c032f3d7bb31db9aff0a779ff23720736b62ccecdf1aa21fd04939645a07190302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bebd39606a1084d56b17e762d7902a887d79e7d5f8869507b71cdd28bbb1d38cb41996739c30b0788cc7c00ce892afd902304ec0f6b6ccc875092299f82d32dc49794a414df1c98a352b3671179bad2201637848fedf9f5cc3396a30a6f518958e0f0302047c435bb500673065023058fe35a2c1ded2e7029449b72b0d4665b45a019b0f27f836d455a0c70bf2792ffa48548b2e7b26b2d756d4f0cc668e41023100c205cc4674837950cd943312a4d62703d74dc0ddf2cc37204c8abcd33f9c0dbec1c893f9363f0dbf98be0535792f3a3e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100db655ffecf80b9a86cc935e5131d90726ab02a541e73a8c38de3a4f5bf9019c7dad0871b6ef3bcf45a9c74e5c91d2bbc02303678c92b3a65c0ded9d8131c41bebe56b397ec904e9226ba3e2c6e812d063baea1a63cd616010a38ee2ccbd1389fef400302047c435bb5006630640230513d11d025e99a573657bfcde778471a44cf0bb1a2168f44762e930166ff35061c2ec59cc174dc75fe569d2d7e64b9ca02301b19064da7217cb5c36551c8c5a134241e636e84a220e6936b13920e282ad99f65b0319f5118e655b4285cac4bcaaaa50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302f625c8a87f5b793adbd17e220a81716925d030037e18b927c621410bbb225a343860381ab117f51eff19107b4a5ecc7023021847c601fef46ea999130fc4ab4f2fa7f4eb13dab6892a6e02cedb206b823f709372d84b4e1c580078ed952e1efbb350302047c435bb50067306502302fd7b85fd9570beeafa7dc134bd87c2d9301b4f21916cc72ae721383d560d54df3c10db66956c9767988f6ff80bcd2d0023100934e8b7735c8b8a303803e0d6ac851975771d9f651c22281641714e764d9bbfb5c9b68a18d89bd8e26a60d369adaeea30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023044b964af9a6f01acd8e6896e53a8405b6739f05ecd53184c4b8420875279d24cc950273c676d66f67c7fd132ed3660a70230757f36de8c2901ebab7b6cd5060ac284f080503f2ea1d313c9f3eabb49e2db881186dc83342a76bcc418299ef9cd89b50302047c435bb50066306402305694c68fa3cfff8899cfe751fb04547d41f4d0a86c83649bf1ece23b437a375450d615a7292f6e6302ed0a557249fcc50230090464cd96a4ef1991b44d7641ab5788e51e293d5f47774b5feec721a813d95fcf34102e4b3ca5c1dbb9d6c58acd1c360302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023038900a78d0f83c470d934e2bdc47080a2c9fb6bb42c777695d9b89c77816be3b56dab0131ce5e6ba3b5e2f811038be5602304e14b3c37cb67f13985a8ed282f9ffc43937434fd6c25c3bd916bdaeb3ca7e9387041209fcd28ffbc2febcc3c0fbb8c20302047c435bb500683066023100fc2bd9f80e7ca3dfaf0c433a6552bc99314674c5c9fd682ba1c4af84b47597bbede89aedc5d647a42269c82342388cdf023100f7b477b2bf8f55e1b368b9fd94967e32d5aa6a679fd34ac4a4cecb9fb878d733c5be5c05f6ff94dcca28c11e1e52fbbe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307f146337299d9507f3e4071a79af5b78b0000970762279319c4db44e549ab3a911c91cb5c132a74eb52e5b09fbf478ec023100f0497d60c10774fa6a9b6a9e17f959bea95ea135a35ec2bf2d13281a2d797e60e166222cbf74d4685a292f5daffceb3e0302047c435bb5006630640230434d6307a5b03654399d1642da5becc9d5e3ae0bb9c490f78499cecf566fec421b2d3bc2daf4883865d74d860ded71890230659b4629a52020d3c5e925dc97f3efbe1d4aaf514c4f44b3949e8691ed454253678034152b202f95b9c037dd8018016e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100dc5578a6dd7b8fbfde392df14516fb651686219f202aa8c7d692f66c727cabd535dd1e550efa92e11111f531d66190d8023100cc2717d5ab55898197deafca3232754503a8b4de9cd24c89175008d63f0654c3efeed9935fe44893623d354d150f66e20302047c435bb500673065023100d94824e29223e61add1ab1265c9b32c3e0f8470116703f6cb717deddc303f43a12a982127047311c41886966b81db13d023057593491b7b50946503d50f080a80a89518b3434141a0f08f702de9826d93c529c6e0ffc3db029c12980bbca48f784a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d0a8aa3d3d98e5a9fe29255d0f84e5487a0cf73bcbbd8d06fe5058e36d15fd0bf3295903aa0ca9c3d2808580ffec2ca102300e1db44fc3852e17f1ceee182b0516241dc3ecaa7dcbd662fd3838c84adae9b9e55f363799ddc9fc6adcaacb825c68e10302047c435bb5006730650230640f99ac68cea64799cdadeeb57f3c4b2f9278136ea4f3b6b16b1c1a98cc3f975aec70f9ed99c598f7684fff6058c1a5023100a847ec9edd6dc0e70ab2ebe893cd5e978ab1dbce29a6ae4b57a7f34c9933cff3d499456c78e8cf15b90a66e0859578a30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230449acf6ebc61d6b1280c10d0003aaaa423ca4acdccd46b1b95be809cf6a922d386965a800bf74490ac0e0078686b50c5023053d33354d0a39dcb87c9357eed1ad55f5a3e5340964bbacb6a2b41b96e6017c02d54f93076eab84c7cf7b6fcdf547cfe0302047c435bb50067306502300a010c19d014cd589d0d69ff20ce2f527e33aa6a7f3541db67e66221710b51e35be0b648ca84bfd9de07b1e17c73c3d90231008ef996aa81065dc8a47b580e9960e587ab32e91e35f1a419f036c4597f31dec1f2695881361f0edacc00ed801efcc0350302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023058d5ab030a67d987fd6f46522b6f01933f74f33bb12f3dbbfa4bc3d264a644a0fa43f8101fbca63ecc72973737e7a46a0230527b1ff83720602b35222588ae79062e099c3ef9068744494a2cc1d224724fc92f3576e11e0f5eb7f7b77e7ce280d3920302047c435bb50066306402302e0141d3f4c8459395fc62c536a01f5db60ee89e522ca189204677aacd34c4d47079656c1e0a16cf4dc6f2f071393b2802305d02a31601c632d45d076db5e97ece3a0ce464fe622bdaf7fa42a589a2ca63fab5e3e1676023930fb1e4e12cbd5850000302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302b80ee1c2b4872201a79680d13c42fdfa583d53b6c6f5a45f1e69f501826f3673ef444cca03e2f487518cb5e297ed5ca023100cdbcddeddf2568aceb4ab3e38a908bcb7ae8b94b82a733a5f6058f80a43703329bef07f3d5fc74f29a0a2d565c12f8480302047c435bb500673065023100a5d2504307bd56bd2fecb425f935dbc8c188cb9b008801e423e655ead8fa68f9b371f46a60fe514dac6134bbe06be3fd02307aec1e79ebc811a4b914f5f74018b657781598ca1d82e83a2f7ee2e3eb1eb415e13a7faf0c4e8af2fe4a018f719d3bbf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302b3326f81bac72aeef0ad86f7b396fa8e763ad2ad7326385c94e40614e5c1effcaa23e9674bda9ff34258597140327d202305ea50a9e281f48bffa1a71700afa1ca7ddae25ff9d9b3e8edd8b652e3ebc5c9763db35fb845a007b4b95eaf0618a14ef0302047c435bb500663064023000b15576e1c2ffdd560bbb7ddf968d2f26fc0aa6f3a31ba722f2458f3742d335477efe76505b24c85596b4f61a25cbf80230485ef372800038d0636972498e426a17caf15b852d9f2f1f6d8dacccffcc8e228cc95e4906b4fb8793693251a424ac5c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230292bda771c2161564cf7b70938bf81ee0f89ad8a0144a85860491bbb244f9fe0bf8d203a080de9d1dc4c77010e8c89b802303316dc64564726dfef64062d11c242f4e5d2d0956a0273b3e6aa9977031ef77cc2801d635ae806dd3a8cd825d2a8f4570302047c435bb500673065023100c538a710dd28497d83554bc47b0b38b0bff5b2aec3def22f054987922e0c5d77f6b3bba55f1a0dc552973ccada6e5d1502306813a0bddbea07501bee30cbece3b80b2dad44ec2c52c486b5347e7fdb0f6dbb8a261c0dedbf700d1fb4ad824cc204c50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303be2fc8bc8e8ae47e2e0a4e438abeaf9c05e6ad5a1fb3b99307cdc20ca7d3dc20370891ca5d88f78d82aa455f44b6c760230385fc98da4295cb291d6b5525f163d5d3abc81718eb60807c960db155f2c97906472f6b7aa1919b414a959c3fa5146b80302047c435bb50067306502305ddeb2fecd2733bbb731c2dac18b7b74dd124d99684104f4fd267716d26b1f61ac2b4789b5f4c5656c92e55a380c305c023100a308b2aa7bdf169511a2f39b5e6f60cf1da62c8b57ca752b7b49a83c144675feb184f6afc556d38ff94e8edfcb682ea90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d84a7dcab9f9a64deb064c5d5aa8cb797a72cdbd4834d6e87250868bf86dfe2015ea744c26a8f7963b58a433b0ac6740023100f492ebf012b3f4588032caf1e58957850569a2069426ba623fdb5553f0983421e8e55cb882f0da6a051d4c29257293460302047c435bb500673065023045b1fd31dd1f72a105dfe5f6ec6aea7ca94941f998aabb65981d8b5ab1fe8a5ec56dfb7f7bb735d0a8d2115312882f9e023100c37393ff593c91f9dbe045211b72cb2e62ea84d497fadaed2f99e5bdcd63d917ee3954a87ab94d611fe68650ad0427430302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306502bbe4f2c390daca1a6adae5f11936d47d15ee9db6a23a48a28080fe5096c28438d037d8fb42ad798679a5646e815f02300faf940973f4ea6e9c561daadc44cc79afe5277e9d35d76367ea92991596d74b4d3a70bf72bbd76c5017b423d6c8b3c50302047c435bb50066306402304d91c0b94917d55e6db6e541200becef307b5aba5e6631e540a5a8b2c3f4571ecae5dc93014b695e08cb2174c0f58c02023073dad8986be7186ee0f406bdedef33f51fdf94f3dbd4d5171391cdb4d45e285087bbeb39885e2edd689522f7e67a19ac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300421056773b1ce9e946af52b7def7bc186f09564f0dd28e115be30d211189c34c3169de4765c4dd0e39155e03fa3b5ea02301e261c81311ce6af46df9b42517ae446b901044bb8bf1c70e13a5b88f18a838796fa4b7c83ae2e98aa97500a4fa78d930302047c435bb50066306402307e3b8bc2adc77be30c8b5590f7497b3c1cf0434fa7038e6b2a88e4ac06b8c56ac16916c68aebe8a60c3353b994b85c1902305ed23c8a53684fdfeaa8a3164985dc7ebf1270f1c19bb46ab33933af3ba8a3957c96763a49c2a923694a94174283131c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230696146f8aa5d8a2622397b2c98ea035658534847c5eea7be5d68ef1c22869ca4e17da5b58974156542e0e387f9b3797d02306d9216db98c8155fdcd6f3a8b1621a66301fcfdded997273b7189437f814c7f21fb1891173ed689a5c895ded2643cbd50302047c435bb500683066023100e19807d4c31a9660ec76b045e040a581ca394c98f0becc1df1461d4b3eb34120b63d284976bbf3ab4c7d1c26502da65b0231009dae4ead3b3b05b4ae245ed15c24d317f193479cf95579c6bab7a982bca484d05a9623071e90694abfa2db509a3512220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c4269018f19942035bf429eac0542116fb5ef8228a5a7d9f54aa98cfd8f9904dd1d5525c3c0312d0ec8f812bb5ba37450231008748c1a63328d13667ebd854f9f698d8c2006798ed9bfb1be0552e8f64add5f513703b1f44dca91d3adf24af560d1f040302047c435bb500673065023100c1cbeca1a7f705c01b14201dd275a75c7ee6822dfc53b12027a50d0b239d00d548f97fc63bb827e49eb35b1590f03c52023035392f1d164df3a863015690149333ed881470e8291128f53055d11adbe7e7a455a5c35b7fe00107ad9bf54e069b791f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f1e1b0accd5ed32ce2c18f4d20ae6f77d3d50aa46dc2e0bd018b7f17c348e24160f38c82aa69bc6f6f8c1cb79b9500c4023100e05e9964528f800e4c08a22b38b502a58b1b9dc595bc10097166e61361308e340584e6ce4a34abb90aeddd28608c52e40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e90986ee3e86bc7a9c94f3333058fba75202bcbfe34e19cd45b31de3e8c4bf77b750bbca44a7a0386dffea7cc3ab12680231009838641c1a77c9945557c021cff50a608baabe12a445081a910c91d801c4c33d281e7803adfb54eb2f9bd97497a437990302047c435bb50067306502305112a302e4b7bbc1b2dae894040f49d241f51c5a4db2da3111f477e20da1d10ba54f4a8b961229a8db79fa306f0cc9dc023100f91aec52eef85bce7e291e08904a59e7eeca1ff9a132f1c22752ad618958f6b012bb6cb5d6ed3b7dbc2a3a06fcd12ac90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a968ddac046e7f229698bd7185467e695661937fd4f8758dfc84d77e6afab15f0815fab9e71c01974d6f911c09a85683023100b5a3304bb7ba3444faefb76855479ef20a49a56013f860803b420c23cfac06dba300b39a3a6be1547ab8398a0da3e3ca0302047c435bb50066306402300c455179e5ce63f63e74944d7a56cf924e923f0cfcc84ae542d91f601cddf2127167b23545793bf4c2889178edacd5640230030157ddc30ab6cf0e4d6a3a87e5e48e56ebbe50e3b2ce67b742f21e9a575b101964658c0c56bccb9c78a067ca8ecb6d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306b8884570c9adcf4cbe5b3baf767ee61a733ab8b2c4fe3d7b8190cd174aa2dfd2f11bf0bfd5c523951c103eea9c92c620231008bbe7910f57a83395b0ad1516b42f7d23b39f083aa2418f0a6d1876c4883572ddaca85e3e89bee541baefa1e763a9a3a0302047c435bb500663064023069391c7a3b0e50c4a0569515afd1973805c93cd0a83e5f237bb027d11cedcb7651142381d61210bdccb0b575ad24149a023030838a42a1e2e66b8f40d301b8540c66fb954f757ece8c1e36c43f69588151950efb00c5b7ca7ec35123fa403837a1dd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303ef255e7866107c1910e09d5c7181aa1b69837bb0ae3a35ce0727d76fead4a543a07e4573eb634a9e0a3f834c18ced070230358e23ee6ed0a4774b0059cef757ff858fbda256a6c61c410506636a4982e51e78c4c7f3f777ce7973b9fc5f332dfc850302047c435bb500673065023100b349099afd7298542b8d7503ffd9e8a73c2b2684d887d77686d00a2c8a308f3ff24675e360b71e0091283f1b2683906d02307d0c81a0c9120138af4c4b83a25d19c281bf10da092920d4bf6962914269fb95e95fd5643828ceaa3de57a4ea8bb958e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a1bfeeae2f59084e72d478fe11fe11637f66131985fa6c81f2958e87a39a8c34f9bad73635e7ad8087d6712146f3d57002300729c86908100b4ae1c49f64a48328a7fa18c1bc5e4d8b99aa6b236c0e511e838311f5b8311601c4e754e1ec830dd44a0302047c435bb500683066023100f465a9f754a6c09c36cbb480aa12325892a8f22657fa2e171482ec59f3fd72c83113756d82163f81b5e1be0bffc49d29023100f3362d3d98f92b67417781c835d414a97b9b1e1817138d80f10c593fe7a88a566a10ce6492745c42a1d5659de916ef3d0302047c435bb500673065023100d358278c17c0ff6e66973bb2331f515576e2ce378252dab38c42fb3585a10faff5d0884bd4b7c091c88d15895e3ac92202306d179485b09389056c5e58461846e6636408ec002448ca8fae58b59b11241f2dbd9b23137f90591d41a314a1a172e60b0302047c435bb5006630640230512916271fecff838bbe245dd2ec4e02c556df90b1d995115e91a91327d778aa6e137541a812b262e7c1c1b8da58f5ad0230230fd96bda7d0bc3769a4e5af31d925781d86f95ab0fa0f9244ed871b1cac1fb6b8c07f2e8cd56eef85ee6839d03ac8c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f96299006c46705b2709cee927e314e400f7c4a72476cbb00d02c7494b7c3342060e582435024aeb703b44dfd430635f023007181d4416dafd69ebb44e621275461ccc0f368e4a0c7d6feda3ce25a89547aa554fb553113080599a72ea2b5adf7fe10302047c435bb50066306402301d156889af0c8b03e5c447b67660bab1f1fe5f3c5a9e6afd9ff31fe08ca4aa6ab627848972d0b6d6afcd4f778b469ead0230525a8296fecc517c96f74332454d881d45ddfd6dc5b2c666dd9603627783dcb7d2be88d6c0735d9ddb9e1b54170d00ec0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c5eb561f51b1c855dc18970319525963e2a7bb483fdcf64affe634d8b8fec7c024e539411a43c831ba1ded87941d1d6d023010e4cbe338c7c348b9c3369b98285e43e4bda3492c804e1ec805748d5e565f762bc49fcb85ab4d2e074b7512a9c1dfd50302047c435bb500673065023100f7fa7ee8b9d5b9c4a7f92bf9323603e78c4ee194d6d32925c96d1fd1c523be3b5f342d4686efbe838672fcbb147e272b02300a554a11a1999e785641cf8d0c3af6764bbc32f217ec71c2ee41606fd6d14279e7b5057daa6dd06f9c0a81f8a0adccd60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100dd57920d734a842e8da235cf2c45694cf494ec5e460df2af2df41e67f432ed94827ff71b3a5553d4c5ac077ba13e5550023068e33c03e76e1ce64a02e03c247256ede31c10b54933edec8d783f10e4ac666b7905ec6c6f29403e935944a2cbd57d120302047c435bb500673065023055e30f756c3bf54c4249f573c426ab245ca83eea22cc21a91a44a3ce9ec3205141a2c167d7004bf6d6111ca1add617f7023100b8ab8828cef0daac552cf28fd5605e7100c914592013ee4bc67e4d65ce11546e0efab7e4fa555abec18490792f8144b60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307e7fd4ee1524def8e6777b22aba7a1cb067716134c0464149f20f0ea070a1958e9ff09413b44316c0906c501d12e5c7302300fe3f4aeaf3bc491f3e15ec30183104831a73be7abab1bdb3ae970199ee6b3014ff7046526609b1ffeab13161b9b15fe0302047c435bb5006830660231008f726d12585b494ae8749a860f212a88eab3972be2aca911554a4d4acc4b4d0e80f15bb3bda78cc7975ec3b0ff87e2f0023100f1267d66f17b37dbef6b7dbb98727c7aca0518e59bb88a30174fa6062a1556940c73f19ab3e0afb7b495647d2de69efe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f29632b17ffeab8b43031d27aa9a142254660b6bc9b63be192ee170a9dcc2a270b4972667b62ca0569ad844b4194e4e8023100a347abe79fb2ab05e4a8610aee00103af655f3914caf0c0036793607c81884ebfc975206259fd7377241f61e28624d110302047c435bb500673065023100ffe5fc5badd231f0116934a90cfd2398674c36d4a3bc10ede69f1bef0d4a90eb65b0adf54b24ea6cf7bebd00c7eef4e3023054b75b598ed1e422d80e78b3e6c946f13b875a8fc72ecd829c0fb16356219ee7c297be88e5c9e00b4a03b1fa430a1ea40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310080f3f17328488462c238cf92d2a2c62c7e5f4d4bfa465796dbd55c0b96ebc40ed998d26ffb28aa291df40f5d99b0452f02306210c94c87210ac1b2a4b8a7d63ce4915be2781a28843b454bf7a6f6ef4d46c86e3a9f189238d63d6a20174b1d0d737d0302047c435bb500683066023100f455f3c8d4e0583931dc79c3923b47f9473ece54beb16df3303835155c8df57f99e597b9cae32ea96d463e9112830412023100d5b862ba9086195fce73f8cac559938f17faadf9159315db115f76c315ea9ee712eef6c18d3b633224d880e36767b6b30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230280ab8571ca08529c6c76828e22e08de7da00aa9210ba167bdad2b5b4129cdeeb567fc2403f45aff8d9520b791c4043802301f9d4339303465b4bf38d810d530d37dc5a0da6ee665ab3d02857aa9e2d43695177841d15e06362a32d1e388d5b8bebd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fba563d8845a657e2dea4f5bf7dd063d7a9ac067c53192a2fbf5492229f6b1f2e0e6a153bd20d4874fad4abba3f9fc8a02305bf700ccd82d2b0e2b714dbee2a75df6da0ae420b1f7bf67e806e47a8beb8af3c0dba9f0c9523faf7a3862c2dca774910302047c435bb50066306402304eb0889d6be633a4ea1d3ee6531298f81182faf081b67988f115450f49dc0e70fc3a9751ab6e7215c014225466da48b002302d76b49260c6845123ac08c174656faf9b366b194049f78c021bb64d5e9968189da80f76ff72c6c9bd701fb799816b8e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a201176ef5e008dfd45efc2f97b9f7bf71d22480e63eefb95a4ff4c531640250c21a5eaa5a67549907de0e9597ba7aa0023006eb04522e673f783db644b6a5ba50e1e96172f3825aa4437d232cf0fdbc7719018f4af01cfd718fd1f753d33bcec9840302047c435bb5006730650230114b27e003149369f50a7d43d55e23fab2372af531724a621b32e872055537c4450fa9029611a9dc1bccaa34592601ae023100867439d6526e62b37f462956761245ebe2c63c3581dad88ce164a26215285f77605b39d0f71776b7f0c6f39cee1770200302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c586c2d168e6e84c6ca44447aaecf9ee07819558828c46e6cb0090ae16b91f90dd456751aa36b9ab75ad48e1ab17205c02302cc1ec4f2f84aee731cac087e5525b12f510b1791f0c59c302fdc8f8688ee2594ebcd8691fbaa42c2ddd3e0c4ea063890302047c435bb500673065023100fa59a020af57d0464f63a703d9fe849aca628880b5db54c8cd05cf2266c16d0c6d5e3bfc7f7876b4e645aed229b38ffd02302d1c996385d5ad5b09ee81be2f4a8d2a878cd26b73b3ae4dce33f6d8dafee84a18b26166f32ef870f69bc737239167470302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d678c68bb4a434239a728eaafe4cc730ff304f86741f029e086ff1978bfb4e080b55349d35cbbf50c4898bd12ec9e6dd02310083046137c6b00e2e77f342fadc3648aee349be57d8e035a7ea175d088e4a4e7a03c299bf17d10ec07ade53ad89211c770302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100eb35c670423f4107bf9e88f95c47fc1804f32a7d4ec54a73e6ceb01999a38618b206202838e3289ab6249cdaa7974251023100c2bc501a81bedcc5e347bed2b8f21ff1d59dd382141d21411f6c10ea907abc6b5b92ad5237fa319995f03e8dc909c70a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e43c3478df2c084de8b0494a5584f1d6559d57ff9019948c46b5f5dcdbd57f2b2f0b125e95b8942e2ed6e72140335f4202304dea98f461e70f705284ed9fbc8a6abef67c6d0eb94cc1019eb6cb2a3f00d5487d4b6b6c2bea88b9a8b3903fedd964570302047c435bb500673065023100eead051b353c6a7631813ec7b839f0c81bacb0e6fa320ef5c9697aa5fa67e39d1441eb2fbaa425625a371fd8ab629deb02307906c1026f73e0738d41e9748dd386615b62bfb959cd4f4b8d1c813c450640583b86139ef7455ad164a45c8c1661300a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303e1a29ba0805e63a07bf3b3798135a8bc39913f39789df0f2bebffdbee726747ec517d0e547b3b0d47b4bf165b8a66bb023100ace8770e63d378fe51283a34c313c308b00e61f12b2b16f20c5b9d7be640b22a2700bdf4e35bb9e3d8b0a6754db22cb70302047c435bb500673065023100dc64e704821e755a68c9dd6c986031d8fe8245073d257c7ec3f3ce652bdebf221eee5d9fc7725100ed28205a4e75f9ac023031c2f60aa5f1f44fe50328aa19524b88c11a2010b37cbf9f051c25b4f2a8a6c056dfd50c23f7fcd9f99ac07e46647a8d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fc6bb607f8100dc0be2a758025da7543931de61d8781200323c4c7fbb7744144d1e8f43418c4d1e00da14e30f8f45d29023100e9df8a0d1536d58930dbad7f8ded537963e68cefbd47637d645f1334d05868384afe2c3f77713c7f79838593a3d693950302047c435bb500663064023042a36e55564e5429263980f1ca9cfc92e2a7d5a2be661c75fe1e7a346661e97001c900f75f25e9c1ead37b677a29eab702307b2f1efcf4942ffd3cb78a966debc8def5a2817af0c5bedf37acbe0a262bd58b94675db8a812f814ae97516204155a3d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023033d6419ca197582ba7d8417edd1c483d6d7fa88594301a55b67813b0b1cbd59fce41b37a267d682b4777b1647df151a7023100a7c57468f2a76e13a7e19845ab0a725bdda9cfbbbbd18db9ee47a8a01b81ff508a9d1fe3e1e3d5e69587d7780c1999a60302047c435bb50066306402305d5a787bbe268f2048d77cba632a4629be12780751d8665a9d5469a07a842b207562833711bc9b20f3cfccb22349354302306f2922b3ce85856ed0b9962289a0d01374021173298857a1c2343bf8a47b2abff89fcfd6ca4cd10fdd5d5bd92045d1ef0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b4d68ce536a76102764638100dfcc73bb0cc5f5957dfa9f1100ed783e1cc1b7b8b5047b6de87b4109148712fafc7434f02303d0757fe85336ca347557eea0238db98dacb071ef87dfeb74e4e2e8e7cd5ee89ec7a4aad10d7037b8d9aea5648e960140302047c435bb500683066023100b902efa7522d44d4a807db0eded4d7cf27da328f1366db40a9606e5646bef35de199d875f0d56cd7e12b7f0dae217ef4023100e562984965f5daa9aa76a587023d184ef711b802bdf328a32be1ad40e8075b082b2c7270fe0dbb8bd2460bec25f5906b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310084801d39b5c591d4e0f28a2700abceef0ecc6e2dbb1b3eb5e71376864a3fd37b79350a54bd693293950ffeac2e49c6cb023028d65faed5652591863ffbbfcb73b5a1229b803c084f52d64ec03844b440b06a17db9d119c23f9e50bd0e073d265e0310302047c435bb50067306502300c945536bcfe19881153342bc68f0bc88572d32660db7a98226a5c718c015abd7b939186c2738688808dd99f14fdb5e4023100abee55756cadb34f256d290c455ca1bcef52d770589ed9e89e27634cb3fb2ee2ca795367d3fbd2063c1b0ccd1ca341180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302510e5bbba85610684ebe8d7aa6f7924b3aaf82270bb7e0ea42f6c17ceeae705574351943fabab2cda425b9212672df6023100dc34362aad8857e1fc7d479bfd27fa7f243d5ab2498f5db71900eb4dcc3b4ac150908b675a34e06b2a66c57c569612110302047c435bb5006830660231009b87509dc07329af3b40abcafec1ed9387ced02429df605452b13b0d7a74b8cab853f9b3feb2ac9ad07e205afc201ede02310087b42126063d0f864ad42ee191bbbea8dd68836a392aa57a7a39bc6ed164065b28212c5d5990191805ca7321e2a793680302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d222921b6cb715559659279540d7bcebaa5dd95aba4538c781c5f19c91eba801418f04f015a266e07d28a89ec4b62c60023100a0f1a339bbde5b387ed1e9c3419af7c4795475743a5cec3ed3f0827fccb38aa8f0abbf710d3b44952d0d4e0d952438df0302047c435bb500683066023100da66baf9de6d13c04b4ceaf12c790a722f9058e589cc3e16fc389ba027290bc94272cec2d53d6820fdd5583c25b9493b0231009f3e4df04beb9a6ee0c5ec1a1a243736943a856b88d515a7a962a3326e45732981d04459e87867a52062650b7f3b44db0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310095d33eeb25d41559f434f58106eb8b0324b3fb91c6caa1dfd70e82048982d8952d2192b727501c6e119109613a8d4f22023074397e9755ba372611936b1300f0cd24eb9a17c353e885aee413998b47ec1770ec08470f23c04913e342296dcfa338d10302047c435bb500673065023075f2fb7b509e46b8ea3c672756f98fda25dd216defc4cff1a591c46d78adfef898b2e9624a39777c29cf5c6afe767b7d0231009e5f4b3dc2a9de4ffdcbb6ca8c1d80c09a777f6b2b408941922f48b4fb85d49bd9e88df7b08c5037fcf37e60d28ca3c60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008ea506c24524a81952be4935a3c39de1af16fdbde8cc0048b16c891557120bb39ffdb4dd523f39c46af6aa97bee7f5660230488517e7bf567578410db3d7f3fb17f9684bae49fc79b36b4eb727096fa7b3a7cca1ca3c0bd81d071c3133d6155f9afa0302047c435bb500673065023100e927488ebfc95894825cc8fd2fd9ffda5ed5debe39a4b77117a96a1449c5e722bc02897e33699a292f49334ea64bcd89023056212e83263a22460851445ac4f9434bac995ffd2c53970ec4258fbf3b2bf560e2a2c35d6ceb948a5a93208eb4471b550302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c58ef3a00da4194594766a75be3032121ce0dd0f041849c98f58c0c0ab12ab9ffb1a61a1f8fd64b55434a173bf5085ec023100edd40315d8c1680bef1752de04f2c5635f388ef998277af5f2b308a9533b5ea5f8d5dd06d4c3df95b7db61f5bb9a94050302047c435bb50068306602310090e9448c39b1db58a4575e2bbb5e32776d07db575f4f0e4a3aae7a7261280c12f1e164187291ad1b1729931558d9f7f9023100f6c711c55649dae897beb61add7ac5f257fbaf0878dbc8dd8948af96f343f077b08cb9207b59b35234a7f6c700dfd0b40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230024f8526009f45954b7f6318c84978bf3034cfb9cc94048cf58916680e77eba37e6fb8d653257ac15cc9bb637b10d04802302e832dbf150518724eb7542c1f82b3b13c9b109f3ab854662f7c536c810af47eabd84e01ace45e3a912d4bc3778771650302047c435bb50066306402306c4998454200ef76f35a8625472661b9e06c6469130b5a0bb331031296ff38410b20bfdfac2a094995a46f762a75f33d02304f21fe7827da6f66396a3c1d18a2c0427ac8f251a49938648ad08b1f2cb4f874e66f482b7f205f48fe6fa35572a6c1070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fcb210db3b178210bc9071fd72496077ce8267a6eb70c7e41bc7e877409be1f93983d3dd4612be7c28aface279e92322023059e314068addcc7a53d72e5aff16155a7dc02967d71e365c74c9c8e9d5ce0cc833cb53f89f36bad4bd6a1004168040f80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100871f2c6110e1c6a9648ac0eacc9042a8114fadacac3122933d75c873ef232cfb338ee81d022b8290fbe7f083b1deffad023100e1c8330cfca74eb5ada1bef7c8b34feb16f2a2f9c6160fec995f6e6f906341b8507b71d181061219fcc41456d500e8310302047c435bb500663064023038c0c2eaba347efd82dee5752a202a19452d53fe74ede577eb6cce794b11d596a8b47630c81ef15580bdfcfdd0f14a01023069dcb7ac1765c7f4d71cfb78b832547b7f9659c1f60810b865d8eb82780138ac021bfe74191484b0e2d02e13b1960ac40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230077d6b278a1e7b9438715ddf143dcfab9684ab4f74ecd0c2f7882d1c708ffdbb4ad2be8d491220aa2c2d2fc7287f9c46023100a65f2f48043dcea7e103cefcfb63238c9c6154c92dceb68be9fc52b8905c34991788db899a375478343b8f5f2b8ba7d60302047c435bb50066306402301f6fedfab02c70b7694b55ee98abe716ecd4828ee443430fb141b09b14ad2b274fa0c2961209f36a000045fba23fef18023015dd886350344671f7f238aa1df6e24f7224cf5d3dff063b7ddbc2dda424c6760d00b67c503ed10cdbf31a51cebc096f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f571d8ef6b8f1fff93996c13aa4260d8bcf78a256309b2644eed6471f72aae2c262b12e097e39f5c4c7eb0b689806d6b023055380e183fb504fc9919c8e3142e5f64048b641176e30132f537e2621b8979da05ff4c4966d62a563f789588b5c6d4980302047c435bb500663064023028e4bd1e08d1993a2a748965ddc5a2ecef0b8e728c5f1dc3be4f684b2af71f5e4c9ebafc0188f7130238c7bb675a66fc02307a8e750a527913e574a58bab33b5ef05bbc8bf321f96f6351e00ffbdeeb997549560e5ee1f8908b2b0108621abfb435a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c590188d4a7586159c35d783d86a0c481c5cdf06ed6a24cd940eef25442c6b359d11fa501fd1a537542efe11052fed3e02301465144a911e9720e93a11edd77d4d53dad2896b936aacdab7a5bdc00249a03eb657aa2b3aad86ec267468700d4de75c0302047c435bb50068306602310095f231ccb3e769728ed7598815d175f81aab4e995ab306218a719920a203963624acab30a984b37935669db15f454214023100f83367dd4acc8a8c3d9a22fd7e41af8f5a3c1d88577559c5d21cacf014e7c936498fcb88ffd18c220b1f4f3eba56861f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301da04b511b2834c4bd7b59f85243969b90ee1cfdc7f24df7de6e0665e3aaf1d9fdc7b4a7ae802ea64f4d1ea7db76a5c5023066b8c40ffebc1ce63789ee296b0fea5a9b48303d53f66f9df5b8ecd681969530306e221698ff88d279df0d21e9c2fc890302047c435bb500673065023100925736d88fb1a56ceb0899368d05119b6f44fe628e374b4ce350222c04bd4be038b1c42491046869da603114c444568d02300fe4fd34f4ddbad6099ea2eac97f4db6d0c407761fb569553be912bc854dddeb9fde9db065d7f1671496dd0ffce078460302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303e2cafacf4d3a20d6533c29c39e76b9d5f74dc52d2f15a6c85ca07ba4618c1cba5ff88393bfc940d86870fa1346ace0602310084b8b7a1f092b7e3b670c1c45d584ff061286e08030f85e96187110e24dac2ce6098f5ce6e61796557d92c5c9bd25d5d0302047c435bb50067306502304c7f138490f46921e975b304298a100f9f17a73fb29cb3412ac254b701a74eaaa7d459ed32d18fae23de269a1220de3a023100b68835629eca4f6e8d923d070a3de574229f3bdd5a3264b61760ecaf5a02cca5cfdb9f5ad157c3972e9df8d1c3e3f9de0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023057cccb67827b03c34d3e400c24d7066bb87355556fa2ab1d7801e6091bcaf43de3b02792630ce2d0a8cbee8caffa6345023018f66c433fe4fcc989b9b4ce100063c43c6b52d2472fac97087569b866ff5fb41c19197148d0858cf355e545909ef3f70302047c435bb500683066023100b4ec2f5cb0425c846a2ba50a03310bab5a7981234a8fd6c40432e2f016281130b87ec7b9c3f1e863cd4e115b0f9530200231008c1c5506751a30b8f2b6aa2a2c3b516285471f794f41dffd5d7d55734ba84ffb09403a3ae29caf48a99fd65451597ae10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301d210c314107c4ee9917cb313a0ec882dcd1d5ffe942dc2ee372c1362c74d9b62253477367fdff04f3d81da0f0abb47f023100a2b5a6c2df66ef6b051f879a17456106f91532b5e23c3bac64da571b230a4798c4c3c2540e7e4dc557224b7352d7f3db0302047c435bb5006830660231009b622a9ecf49dad16a0208788ed0ce8946b1244dc13b33947ee56db842d168dbe25f3ec8f1283e50bbfca866a9a3f5d2023100dcbb363f00d1b497730b88109c22521a01ba2919d14997d56d5394c70c02c16bcc32cad3b656b914bcda3c5cb3e3147f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f483431b8258b0af61d46c8cf80239ac460cec0c25e2ec1e69acbc3c93d30774a241ec66a647dbfc4e981ae83a964cac02306b5e5d5660ada610c5f4eca75b1cc51abfbb50a02e152b69cc582fe537efd98a1cc0aa96e34d87482d119b417f5dfa340302047c435bb5006730650230782f7f0eac711f2eb5a11de2ef37cf84e81eeaef879067e989728e833f2778c6b2764bc1664383c20435311cd0d7e758023100e58a56c8560072176e5a9ecc7c6f2f7d672636bd1061284a78c08882a1478f38232661980eb57a30f26ca662086421ba0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d72686f30e519ef16f486f3cb56d5a8507e1b2f90c37f83568b8ef6ab2374d0bd8c3d5c7c3890e13d19d8bfb4c6f0182023100dbf94abffa3a27a57f57379f0dfa108842a36b49060451b119c3c85d1216b19dd9e8a7cab59c79309c5036c9a3aeefa10302047c435bb5006630640230194ae0fee2cf077428553472a527e0637fb6bf2a77fbcfd1be3ae9291b9daacc9a38abd2be156e89a0fbe0f33d5fe73302303491f51946a2c44ac28ec83c2191e51adea712dd390630bf540e972bdbea6de63bc56b7e99333ac468457ca7e2e98af20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c8c14fcce8283b5ca59d1ee9327cff9ded7f4e6271d72345da70aa84483004aef13ebbec10d49c06ac17021b73e893ab02303ac474b453f0a7f640a6b35091be2d77bebda0c0872023f0b97d3e964391fd107ba61da3237357532abed6f1fb2b37460302047c435bb50066306402307b24518a27bde6f3a9242d3ea3c1c4458c4d38b78ef3ed5651d8ee3fb9e2660ecdd3c3c8a69517dc08569506670121cc02305ab5a35b2ade5e3557f66fb42b3046034a49de2d45d4ea49a0e3d402118214a1f458e1ffd0050267a5cfc09fc43bef560302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f4af259a0b74c6b9563ae3810cab6353fc730f7cc4aac0492bc631f4cc1bd6745b17dea17375ada871a4b005a28c03e3023100d52042cc6d28974adf1cc5067da32126a53ebea7fc5593e448a6e42f46e77f883997335a7c42c8d7794463b882382fba0302047c435bb50068306602310093e5ef66ac44f771ecb9ecc1d95ddb45abf0a95f20a0b1c8ce998d53906c66087054efe3e0b7e8ac8664dd46ddd457a8023100bcdb568236cda42015fd2d7c4b784fe720c3da1047197bfdc92f6f73270dd278f38f553d356adb97a1f99437300646bf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304ac806e15d896845b8b891e5cc616910ebbfcf9d3262e15d0406d4abdac261718535e8ec76c535f18fd426833b259544023100ef50d5a6b309d9eeb1683d39b7043d75fda1aa33f6dee6c37bb71c8f77d025484bb83dd9413c1339220c2a5f95eb58b50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023054f6a4a4ff71a40f611b16e4e4bac511bf6a0eed90d17e263ecf95b8d7d7f04a86506a5504edda9f02ce1ef7e3341e3602301e51dd904de3a24097b56cbca1aa108b4f9ab0c2f2ac6b92dc168d3d8f6976411b5cc211ae47e4e7762e658a71730ab90302047c435bb500673065023100db9ad0750efc467c6552cf2af46d0e213073ec6f793145cafa1094b0642506ee25a79b8b393e78744f90a25a8a8165a9023018e127202e8b71986a0bedf084194dffa5f88fb0dab0c990f374a8352effe776b6fca5e1e7dddb8eb5d4810f22a018e10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301c32902a64b0c06d1b3011fc05aa5a45126a0f9e07f7d2601c7bcfa73de3c877feccb1149a2caa497ba8e954557f82de023100a36a8af26deb4f6dea123e9746f24cd56d8dc92ebccf6d61873459365a167b75132d46762ffee2ebac6262192e54f5e30302047c435bb500673065023029671252cd016ea096e825904daa3108a03dbeae26dc73097f5164ed90b3ce67ed7c485fc42552a6acbd61e5b3340e8c023100d73576b9ef788b621fada5aa9fbfb50d210fd4b2c35c7c6443d1c6cab83f025c09fa38bfe369d8faa829b76202933b4d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301c6edcce76fae422147b7c10458b0c79289879eaf8850699ed3611b601b4e2049ba217b4ed3d7e0be51f8b39b52f178b023100f23c689cbbcee9e9a9059e4e00f3c003519d0e5dc92d5ac11acf71bf509ef738007eccb94f7495a61c5e810b5d1d2c900302047c435bb500673065023100cf775dc6d151f5b9b10447418cf30b579c27ebce677da1c6e9789d6df5e77c74b00f24b18fb8c8c5865c9ad10b72e82002300ac291b0147b28de81a63a0b4cf2a16ff5d4e6671d1b9b47b715e829a65ab9096aed210f223efdb77101e2661f166a790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023027b5cd668bdc51c08d97ae8064d41045073874b0e41b54f9624a3f51c353047b07053eb477b70feccb08aba192b3d2f8023100aee8c9e59a4149ab4ec7467957e57dd9e69ecbcfd20ecbea1494f2cc08765fea708a85af48f0f5edb73bdcacd67cb6430302047c435bb50067306502306e2934ac2b464b0ddb9b7741ce38cb567b7f87976499fd308bd0bd7fd8cbaea45c783b25815f2c4f15795d06f726a718023100cecd2b9640c696100d4350be0e23a94cd4abbbada737dfd2d5bf1f751f213bc2344def8113473884c97b4edf77f874930302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ec23ca361d418b2f52113dbbd4412b07e4127a085773cedafd65ab1d404e86dff452f152efcddff9a43cd3e21d83f98a023100a01e61bb87f22de750238f9dab7fb0434af8e20057caa66e77e32525105c0ce006b660f34b8872a60a3096c171e9af2d0302047c435bb500673065023100aeb945fc37d88c21ea35771733d620fee41fe607f17e60eabacc7dff47c98633a53a91b0b976d7b66b01e4ff648635e602302a19544e7fae56316b9a223b3e092d210e9b65a4638a0b735eeca5c87fc2f5508d33112efa53346d9633af5d91a26bf40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bad71edc69aaeaf788d91e38d1ecc54d101afb4e9da023deb03883d849ff32d81fd61469da4fb52e1bf950cacccb51a5023068806c0840bfc3bdfb77096ff319b6951b32b3c803a751fcdafcb0c99ba1794f51dc1e83ac5057ee0be6a76d613a5a380302047c435bb500683066023100aac9b075107ae39329d98ef1bfc705196f77cc0ce0fb052a12c54adb4f802a1c29357740b1829dcf30c0fa35a2fedb55023100e08056d95d50d29d86df740fd428ec14540cf2a37f5971c34c54f352366b7bd8d3709a67440417bc4e32315176b58e150302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230674a379e3095618340486f18faedca1874d7637468fadcb844d82a298e30af6a0367adab4139002122ee7a8449b537b3023100e6bf56e38a7cdd8c987d2d3ea046921f38f04ae77e34067795aeb0b10794d8810f774fe1f1c59c7bb759d8d8a5485f640302047c435bb50065306302304ea148a153ccc5f794078e7fe166c50476348c4ae6d27008ba7d55e9b6e2f968289813bdfe8d4e80694ee974d89592c3022f61cf5293ef792aa983982b4d32ecc8842f20e53b027190da633b71af14eed896d858ab2d068195605dd3bd3800fb050302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300f1578997563cc14bdc1c37c9bf8394ec360807986d92a0b450b1d42f08d30f0eae08ba7ef3f678e54f2abbe9e2edccb023100d5cdbd026b584c255888fb6e65fd67eeb296846ab45a54d92751aaba760246af156ac76a5dd6f71f443dc2dc74e1998e0302047c435bb50066306402302f9cb63508112f7105d25fb6858aa7c41ccfc3ff82e39f5159412be5d7d6935f47e6aa187e5df9638e6f9963f04a77f502306fd0d5eb1b7635858fe38a7acd23fe41c18c10485f764ddfe568bbedffb16bb35d8fd15e62e91ec1510d8ab80ebdc6e90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100db32171c52e72bd35d801cdc5e09f1d669c8e013e47e8f3bb179b951f9afad95dcd79ff670b93b422880cf60b178b6ed02303cc41aa33349345784971d959323117e2b87352b33fccdcdc4649e0053e5d711674562a43cd9a6ccb8bc7f87472dc5e40302047c435bb5006630640230678865c321d6d19265af52e588db070b637c2b37724ed53564ec04b29bc5b39ee175a86ccca609c71174d513a9a7fc39023064bcc84770cb9c88351160d33aeb32104c75b4ed41cfc6597b1d957e1e9d00774787aeaa331b97c78d23ec208bfa9c1e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023040a1c5d8bb7bb8245cecad11d87b466ca2a0090963f3fea455d80f4cb7a89de11ab957b368bbe0d788e56ad1b813d97f023100fe952be015e29eaecefac58fdf44c15b3b0200fb09ea6ee830e1312f970de0bdf273def0bc52d35ce11770ed6cb0b7730302047c435bb500683066023100a7ad27fcacf7c1720cadeb3c5d25d3e9348a4babb7f84a980dff0a161d1c1716d6a9f195868654fbecc8f1859394786002310098c63f3172188e7cb5bdc721efd01cff6b7a96f7c1e6f6b33cf9ff5b48b88053d10fef02d08b6087bd706bc97855adcf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230125421f92b247665052c123a95374abfb6f97a7e3ba1761375b9242e6d5c01a2bd43427b8e1dc009c82ca25a21c88e6e0230057e0e94ef11ae9298023de79f6f79b34f4b26e8604bd756e81f57e9f1f8b55ead0378589a55ce964bdf421ce018353f0302047c435bb500683066023100c434b5b37ec56b57cf37b454c7998516d7c6304dc18164c11368b387d858a4eeeef9493e84d8d0b2cf30310576e0f9a8023100d4a66f732831b3d898913044aa8ad4274acf712cc2d6bdd6a8e3e388fbfd956a7df8252951367246d282dbb2abc744de0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b9a338e32a2f422a57e640480fe3b755c81413c8fa6d4f845abac7b3b86fe00290610018c6a0c64561bce69e9da377b002306e996cd9700fea81c6a287181ffe9c3950bfd8a79c799cbe8f2646b6b35ee8f606aed8afcef2f51566a4302c0135eeba0302047c435bb50067306502301f2862a0d5c70d6cf6cb68b389e2228027e2a88b10c0d165417dabd074353796295479a150fef480cdb1acd0aa5ffbd0023100bbc0a2cfc7699df4ac56c23ec5badbaeed9563eaa8442115cb89a8846ff69a634eb7cad8759cfa15b91e9fbd4abe2a480302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023010c1662b96957a5da559e8b73e137b06e0d33c2a6926eefebec2a7d649e3a17c9e2f8f76a1f9b514e17fb1d0ea8332cd023100c0559011d8e50ab1185b4936e2b462bd9635af90e9a411c6209f231c0e017a6684d13d585e458db0976d49e89c2e62090302047c435bb500663064023027316938f59de28e7dfc87ac3dbdb50eb2df9e3d7744e7f4ea188310df34bba3b0f7a4026f12b0cba91d03aab6b45d1402300aff9e25607291a4f5b14e511df77a2bf4b1c1d4fae8840d26ed3cb80b742a5810991cfae5bf2940fef135701e45a9eb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230182e082a1e9b1a834a88d28198e72089e4817669933d27f4d816113a64591fb32afd761fed0ad86f66991fcdf2d407ff023045b788bc15a99f83767633717addd4d287699b6531cd1dc29c3dd1fe9e80ffee13b1ee8a18b23b3d2c329832119fa81a0302047c435bb500673065023100f408231c06ca3f9421735f1a6e653e55bd4e090929ae61b9825a2c2a71261290a8124f6f75753762bb42dc1e01271cd502303ac0f3d6a90d27ae84b79c50a896fae6c92ad9f33b6418a93d7bc85b298c7abc416ff35590052394eefcb4c0e3daa14f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ad8fa7017d25f1f5e012a388279cf92cba82a3acaac8f97672c29c7975ebc4680a43aaced1edf34073b08eb61123cd47023100860617bfb2898510d85d37f4c37672bc4cd6baac3de4bad0d43af46c8838549405038b3d18a942d6c63ab432d874b00d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302d05680090b0bc45c1d8f32ab2c31fd9b82e763b2475e2339df2395a6db1012156b5f463a918fba5e837e2a9c118aa860231008568f26ab436df42386bef0c1a0886bd0ce5b4d47fa5a456823a256db680faef3f5ff85403ab5eb748ba5b4db6e83c6d0302047c435bb50066306402303d03419605629bc2c61a1f432c9d5440c0a8290494e124b054f6d0ca590e150599357351ef17994c4f5f72c5d250c0c002305522fec80cd67ccef11dd618630d9325238ffd5f8d5ac4195a7dc4e71845cc426f9aab05dc202ca62815aace99399ab90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bac77c9c78259e1a6b1ab8b4421e36652e85d3866dd9101df64ea3303ccc399f5864d783a1fde6efbfd05a8fa4300520023100d96fe157bbc651d613465bb01bd2fada20889fd6dc753920bfec42512f10564f3033aab9a98e650a5dcc7898f5fa6ad60302047c435bb500683066023100ba18061feff903ff7602cffb33e74584cf9eebf8b0ab633ab06707650616692c7a24aab83626a1476c9ce011139b985a023100bdc1533ae3f771556f0f1886266c3b1befd260ad1ee88279e8a81ffcfd726e5c3f77440036b60b34ce02d450267d83c30302047c435bb50067306502300ebc2524bbe96a0a32d70217d9049d628011320add580efea240048e6dd3403307d42bac7041cb71b73fdf838e3ca775023100d6740ea80f6cc414b8e14b447ca5c1495c059867904e232bf724bdf4f68db490beeb2506a48625c36479c5a90f8af1fe0302047c435bb500683066023100b4c5c017ddda1055a6c7af4b74c80ef1ed0ed13a0cc9cffd98a1ab707439533b02fb1dc85fc83b66dad429bdb1d42edb0231009eb2340600e941a0eeca5d9fd84848be34910403e5598c13e4a77d9b6274dabb636b9620802c0e8dbd3ad3f1e888ebdb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230170b0f5cd67d00fc9ca74dee8d250098d9524a0140aa6d87707db5c99b2bf6cc09fb67c2ec6955bad5de166b85ec5f1902301abb9f93eeb77e18c67044031f0632977d5444ecf9e0de4d158f52c6c7880984eb314226c9d4575608fd38b22b8643040302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304acc7cb86434f7b69a3371affb4492f7e67878d66998e4ea518a1714ed2d8a70e73a64d1999674cc166db8196eddc439023100f8a1f36c78bb77161dc458ece354be2b31aeb778f84437db1e0cef41981c89492bd19a43ebd323f3fea85280556a3e9e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307787e59278d82af07b3e715baee3f34dfa9e913cfc582e185bdfdc38f83c8a8c65ee969c42c939e917acec9f395ffb2f023077b41e75da612c5bd3a3724baba97b4b6b1c92297ad2b0dd4619b2432d62000725912620dee6695144a6c15b01534d550302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f9e50cbd8751d1b3ac3e6a82cc57d96223a0968619a8a61edf15da63c78280c6627a704aaa35047e7355effdf28dc67802302f67876e78c737ac68aa745e346869e7afb3b1e789c68782040bed800ac4526c2e15666fef03ca0db164643a9ae700c20302047c435bb50067306502304ac54ea65f10e0298829e4a2bfa762a6220d4f1b261b201a6eb7c87dc72d35bee9ac5169bf23918c7ad34c86a1ab506d0231009f675a79d98b616959e2db6bdf5bd6d0a8455e9a8bfb34be69c85184e806888be1d2cdbbae53cbe8676d03a6f3f002d00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302026923aa06655f44a0defdaaf3033039edd3be33bcf4e352f77799416f1a2a3e5f8f65f7b58f3bc455b4e39603b38500230345d1257f75189ba028fc7ba2da8042c29d8ddf076094ef1c5a74e4496db39d6037a009f146f5c7514583d70501d9cbc0302047c435bb500683066023100a58cb7d64761eb7cf10fb2a54a7042aa7fbf508d55dae163dd7f3f4e33734e3dc9a3a2419fc876862e3f2733e545b07e023100c35c0b0ad83691ab4544c55e9295423bd4a1b10985ff34208a3077568c949809bc7a491ea53a5897cee786b4904adfd70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300a2578ea6f0aed6f9c4cbf4f15b953e3584caf68d36cc8dff3cb84dda04762938e14c4986d6814c32e003ac19db42cd00230570d0793069eb5998607d217ac6f94acab6434e1a9fbf9dc3eaf31720bc6607b0172a5e7dbc2597092a72ef623a83b380302047c435bb50066306402303d9ec407a132bb85b7e6d2421a866a135a66717a0da9280068afe15ff1d2340aef99209fd8103b938adb3c70e7082a58023069a46f7e55643ec83c69dac54a1064f66a5e8a29878bfe3186dfe1d070fc001652c5d292f2a97ded49606c68c2f43baa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e3f9a3bab8e30e663ebef7ac8a84f1f57a6a090deeb40c3066894274c4557729ff6bad3453e0918e0420c84edeba8e400231008d53761fad5eac9a319c46852d35665d4b89e258a326b077302295b7ca1ee4f673a3022a241f704e1187d2d502cff6b20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303d7d227622d3374919f64cfb385355cc6cd4995f606d1730e170a63de0dcc7fba8ca7429e96989b35c44771d4a1de8a4023042e1f640fbfebe9afdd738a738c1f1b0c0711d21aeda1205ea232a79d78c8316b32fc7292e46192b490ebde3f06e9cf40302047c435bb500663064023038506f68f8890c271adea80c3b41ed262f5bf8878c1210326a1449afa7fdb1b25b7e4e6c498988b729b02fe43fd723bd02301a5cb0d2c7b461837a2279b1c8de65e08c6b654e78ecb5ef216c52e5c6b8f80f7a6dc1ef015f3d7a9d9cd21f9836c9eb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230099641c5e808d1247b5b43602f7c50a914c19b3a13c2dbe3b9fc7bf5e899dfd8ef8dc4802cb9bdbe3cea84f55c8cf3ce0230212db9a9664c2ff85078686e0ce34a4dc37a302e5354aa31cd6c5dfdd434e7215794c888315b10a05bfb3cbe75ef70fb0302047c435bb50067306502303df9dcd6ec961ad37471cafcbea712914a290549f423cb2f766e5245464f09a5edba4dfd028a461537d5b4ce94585ba302310085223287a412d14b4629838ec468ac24890fe486295ec16ad03749f6a9f45f74351d33cd2b9dc42abfe23c7f5ad92b370302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e6daba26af570c05ebb1201b2c0d3b7e0ac81d655e9ed4e0f4f78e394dff447222cc6f2f34bd57feee533d711b2f655f023033412e6d0e6266bf413033635e6dc68e09ab10351f9442abd3084de5768acb398bb70cc7219e3c006512e5233e3bc7360302047c435bb50067306502304077931d5419b4d3b282ec6902677d607da6eaccba8f41d7ab6ff91c1b3e252e30cebabae9d4b1b8ecee834faad40090023100e294939cdfe591fd1677ebd75ceb9d184a80e729e80a5f0868fc38128c6a7ef9259d7ea614707af17a1a16d2791e1f6a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fd1d87e929f7af13502ba4093174dab115d32b3155df811995bc17f4e3e9bd32e8eb7e5f57dc3236117f18d2489ae181023100cda9c6580551c11a2ab28e37fb24ef5bb23c93183b2c6c2a9d8e4a37eb2f532dcf3c1b4bd73d11b0987ce022a05d2f350302047c435bb500663064023000a1e69b6ac35cb59a23f20c6dbf8b5838cc21f9f975430c21cfb1a3ec9635d760602f7125aba45751d2b0ccdf09d27d02305025545dfbff0f1bc19367453f75cc0974ea6df26985be40fecbd898b3246c30f56e53c1ae7aebd7dd81e7383e52af4a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bfc11bbda0abc8e2e107589eb224cf21590a479278ba96f24159095f2529ea129c6a52a8c1e8451acc1751931f54f524023014085ad90252c32529efea1715956bea5e4fd0f0ae7e0ef0b761bd8c12f31100aaa5918ea7f0fa565bb450ab85efc2230302047c435bb5006730650231008eb6e5642e2f9a99476f786761aac569384fbb2f04b5a8b64f8cbf32ae1869ab07910e2f8ea3cf594e8f9ce1eef2804f0230713e0a72f0bcaf13ba504119f439e4d5e521a8f8ae0a321a14c1c51392801c75ec2ddf7f82b22fbb33295ad21ade2f2f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c0929b84b686d60a1a18b74af244397d84cc4307c89afb4ac08d9f5f9bcb793ceecf7b87f9f8286699ff5e8a802d0ebc023100a2737a9ab4e31d0cd01283f2d27a32b6f3d6103271fa7f518b9ea1da00f08e3801be546e17b9079444c149d92c1963c30302047c435bb5006830660231008db58ddbeffbba44f5b72da4da2db2e55f547cb3efbb5600ebf9e144d8bf315c1a421d989647407ad94cea6474ceb4eb023100979892bb9216955ceb7bd1c6eba668a6f3cdba94a697fa3564178d8d84ddda3f3e58d517a2b4c15987daf0357a24d7e10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230503a9e5af6d87f4b0d502bbf93e6b96f4266abd67f11d8b24faf53d822c8453aba49a1f58bc75f390a7fc4ad2b6d07ec023100835b3aba6705ff8b1ef22e4eb28f383c5b694f1e8a5ead89b22f325b587a692ac669cb755020386af34f5f8223ec3e8d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304a0b125c1e986563fa0472adccbc38feb8a8507f2aa5c1b51dab369fadc2bb518f123bc5a21dbcef8e7424b99eb99a3502301c7d4e12b7bcc1619c28aaae3d6eb9da4ffc79c0150d094525c295b70920df893ebda23c191d503bbeadf698cbafc3250302047c435bb500663064023064a46151dbe59ddd51e4bf5e55c74c616ba84c1887a369f1d403ab126f7738302c810b76347c696b042640d14abaeee202304eafb66d0fa7be11cc760396164a3da0c339563d207b975ffd9fa004e578b908682ad46dd0ff022d205ab7535b9551070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d39e4bbd830b27462f03fe3994e61f4730c156fcbb5ddacf457e4c65abbffaa26494f7e4ea5d52fb6814946f7c85e64a02300b687499a0018f53efde1aea55d33d7ee5aafa4a8c71de928ae67486fe6d79469897c904fe8d432aff23a8875b96eb310302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023045b20aefb2edf261089d98d6b3ef725b1e6830b0acc457b3dc056fa4b526fc39a7fd542daa89ce45d5da6270fe54d17a023100a73d07fb0203195eae88abebd9d35c15576cde6ff054b3a216d8f1983b681eca715dab911d55e3fdcdb6b9dcaf344bcb0302047c435bb500673065023074492a38d87cbee68ad527a28298144e7bdbe48d3c41241e09c8d95f07cc22bd7e6fe48f8042a8d42ec165f8fef16e07023100e1f8dd6089c8937f0c1499a6cfc17c2e30cdfbf99c55ba58e4d3009f8d3f2954e04629d6e76b24734381a0e5dcc2af610302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e2ef03efd329c04cc84d9c881d8c0e61f9edd7a6e09371defb36198042fa3d1227d04570dfb469c3da5aadddd88c1608023049d0bd0a14579275c3b64140b014d4a9f26fc9c93c0f506544388a4c892b3564ead3af08bc9a5ef4d3eeb6e50bca66b30302047c435bb5006730650230595c9447db5021bdbda41414e97010c12ac5bd3f36181720f66df97439b0f2ed90908163114de983b399b320d3e82809023100d726055f464be6cf54f056cce1fe8147593267f7ba8eb464d529fe8c1620b7602aa8890be8c7a3272e327714f3ba729a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302d443d928b632273ef295bb1caeadb3787a43395b320660285840c6a54f8177f3090a745dcd4cdc84ddf5eef93ddfb37023100c7d8dc95decbab994293b0d9195963b31bf7f3d08c24668efd800c008b53f63a3f0641a69415c753e77e3498188162750302047c435bb50066306402302f6b474718ec338903e02960fc242a26fe3d870fa92e301e4cc118a4d51d790eed67fc6b335f7f2f5a8ea6b43151449e023035a6afa24cffe9ce26411fa1e3aab30dd0640d307eab6d6220f629aad160ba11cf65f50ab070288e3a06150c7ccc96070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a7ffa9ab24d2cb9407e2bc2beab5c8dbb27f014c3261362bb4a2a060f2016d5498c8ccc3df39874b16fff5f7423bd6e30231009c007a666b0c7d0ac82b3ebb8fd26248046ce74249a1cef98c28d5e74957ff0b00d0f047dfa28ebc0d6aae2786433b130302047c435bb500683066023100efff3a501fa2a5e40500065725e919b5e304fafaa3fb0b8d2643f6f6d91e3232f978d404c1a6a7b35b830fcada748415023100b26f473c6df65d719e0724c79076ffed7a92c2c2a80d0274e46902c2fd7ba0f0d8a03ad762f1bfb4cf13cc0989315bc00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e4f00d0f11250646a60abd993be5d01e4214122293f0542fd99115430a881f073adc67aa1acdace258920e7a4df3a8cc02310097fcba9f52e380e8528c0b8e97bd05bf1c7136f1c8904b5aa8447afe95bb5a55eb400b1d6ddabbf4845cba45457e86cb0302047c435bb500683066023100ce71e7d924bfa130398fd759bf863aae2c28bfb1645916df1fd1d7f23f5ccc9c64f2efd14cf53000ecc96f1ae04dce58023100be37159de3e3e244eb1864d47a250ec46ebfc0e224431dd1b7e6ed5284412a7f173d341ce99b9805c929e215ede7506a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023008695d5a139128becc6089383876bdf4ea2d8fac7967dadb0a2b2f81115527cc021c31a6bcc1f4d781d31d2edef1f131023100fb768fdf16f952c3fb8b788719c432544f404082de65a20ca1f4d755643122f015a56f44f9260c6592d6dabc023252360302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301f62d3ede658110ed4c623612f93b3079c6839a5518336f5a80da59b7b930c8d2fc484c21af98bac1ca4ff4d7e80947f023100f92190adb79c9e14edf5fcbe5bf0496d6f49ac9d9d83a010605cebbb45aaac1907fba8d67344f28ab984a5daa45bc2280302047c435bb500683066023100f2a5327f73c43b40301b5f2c534999925a2b7d56404004df6c850d598b018d981ee41fee6b7198ca64b472d16cf7c90a023100ac176e01612fb2cc9e55154e24acf7a001fa78aa1fb34a6c8064a71cd3dcc4fb5746c524cbe9db226e73092ec2f8d52e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fd76f430e7ffb225a166e8d5d9846aae6d59d8d3cf333ee7b3c0e5fcb76de32b3dbd5e0031a3ff85e803250bbc43848f023100903c07b6e164e1b353728533c55c1fe14e0545fd615389b9b5128fe2b37525e2f7d54fc45c230bf32f20873456f0ed7a0302047c435bb50067306502304ac50ff27792b855ea87a5b0f4145aa9065326bc9b0e74d785209fbf67099988bfa27e5bafe734b56adf2cb807b9cee3023100baf623c6c3b90c7785d9615c9f2f3b50447e97d5df251b989c97dbfcd6b8114f4a4154fd4dc6dd9c672f405f5fab569f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230178956498e1cf3d5b204f7ec4c12d6b0820411336dce21e58ed4606cc4d855ec1f7eeca5670b4f16d4168fba8d945d77023010324294f4c480b1d0896fde20f011e2f8a1dea93a970db3f863f20b00297bdbef355f863f7112af3439a1c128824d2a0302047c435bb5006730650231008cc2b81a6088ef01442a0f4bc232081dfc1edf387f56f1fd4223646df6a391f87b7db65c6b321052c6ece564ddd43e7c02304c5b3057056fe19e785d5e2efb0d2df93fb35945075013ec11470781751cd097a20c7f29b840197f3ce5946ab8366fe50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cdde26ca403874a1cd583765e37075ff1269aac2e66675f2e428715a9c173f351409f1cc0a7e915fe44e5bcdbc3e285f02307ca26565f780a39894581e83556b5c4b370432e1e83852a90205219d0d5c409beed1daf897b8f485f58b9b5137133ada0302047c435bb50067306502304702a1e735a1c036316e40ba4171e4fe8fd5ff07ca414d74c50b847ed2f8088bbac9e864d4a1d40d4a9f86825f81d903023100d3d425b3d2d8a1c87773312618eb41078d105c124f76f29a69a599e9d7fb33175f73d00de3764ad0eecf620db02c1f590302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303a3d4550788efb328dd0352967956118fc525a5644d31a0b9f8bde58514d11b339668a4002cbc8e18e55a7ad2a15d029023100af4361790b0a9e85583f8bc4508500336e5927324f618223709835bc0630e7285959bf0b2443b9cf9ffdca1cf171e2870302047c435bb5006730650230681565abaffb8a5dcfb6d9e051fc1659b1c1383ae99330f6d6bf83f8c189292cdd1ed772015006b701f902a15b445c9e023100aeca6240596fd649390bd9e992d02696efe256236fe73029dbb6deeded455336512f436937efe62484916051ecf4658c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306895369cb8f56c78141f25baafa3675a126908f7b563a7f3a63ddd7cbb819ca7690636180d05b998e9d6e50630ef5428023041eb838c25fecafdf082367279f13412d0fe1c9cbb730989665868391854ef58b0b4d642817bc344dadc30adf02c23450302047c435bb500673065023014cedff72c4750eb02252ddefd67b86eae3f12a79e1e999bc36b5fd1ed2f7079913edba649c86380ec6400657202068a023100dbe2b0ab3ad7a4af1f827ce9fafc3b81d4b9aef566b3c854f0eb6c64959c97eb9faf65bb39a63fcf349ee0c1b38dbb8a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023030b042b8aeb34604ff3cef5f01b9b634e30aec186e0caee05d782ae0e88af80caaa615fdadc44f17370eda243be4c8410231009e9e5845700c5fbdb2cece83873a8e2fbcad9f7fce9a62721e387a9e22aab5e1d09459c795fc8d3497e187f52535cac10302047c435bb500663064023062f08f7d5125620fd50cdd852247a55dd8f52790b069b8f0379b8fc0fc75f09bfb25c7222c735f7d38da490ec11d83d3023074f963746fd287b2f286c1f1dd757160e8ec262d9a0a2785f449914e286b023a682dcf418f23fdb1a12b753561a5fe1b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023077655fb083facf70821521adeeb2dea3699755a45aa84b4c3dc3448cb9e53c910724573203c184cd7d09e90e288ddda8023100fe5938287350b9799711d52403d8037a6a8da05d7b409d0d1f794e74c18fe6469e64b80771aab65ebf1e10c70e48b9880302047c435bb500673065023100ed4da9f5985490ba9ded0fef436dda92e56312fc89c012516226b39927961c9b93cf5b10af7ceeb09c4932162a48b11d0230523f11ec2a3841b47828752c96eb62802e268fd79759f0f42da604556953a085a55b67f254e56a0ab70b2470825287ae0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230159960baa9eeeb90239599b91328b7c78315309228ec883a4c844467889b5ae23a66830ac4f51c85b2d7593bcdd134d00230029021cbd33c38f512661361680b6403986d8c52830a77de1233235e71cb5a96f15b0c06eb8e0097327c42bd501c665b0302047c435bb5006830660231008e2c31abc13af5f5acabe5487995d3fba2e14a7aad39d1423ad2f6e688d25e611ec232d921e3ba25237d92d3c01be7300231008fb33b39950a6b07165af2021533cdcafdb743c0b8fe42d6335dd2072ce67121dee73a10059ed89805606cc3f0a504500302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230077414bcfd325d822959c1410e024c23d8a0d17bf4a1f3ba2964a24d65ce5ca2827cf0af3fa26ee059fd0641111a5bcb0230180fd8fc190b5e9920a1bd178b38f05c8af201bb3f8495e8c4ef4b9a319290b80b447755ce87cacb115e830abf193b260302047c435bb50067306502302ecf38fa5cde44c2a0a4f4f57b412648ca9055a0199a6e263451c01a6f4bece866150305029e8fc01915ab561df56d4a023100fc0385130ae218c40e31fbc3d726ff60206f295914e1563cf76df79197db3d2840309bf1e737ed17474e1040569693ab0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307617423ecbb542c0999c121350b6dd24b8296d020bfbe7090f11f68bffda66e2e08d71fe9a7c60bb9a0dc061e1d94149023100e3aa83eb60fa2c1cb8de08d244d6153a97a9768c3f12020528135d3084db7e8118761cf838a14b5ed7ecfcca38f49be60302047c435bb5006730650230648537cc6b15c956ab4a917b48ccb345087e5eb29740ee466b2fcf86fc4096197d7a1b36388dd3d1fb62dfaee89b5cb10231009d508fbf4f5c5f4442549cab47050bccc488fad86b92beb64d4cd12dbc4bd0898262bcc97883b0bc3f7fca1d6184fc2a0302047c435bb500673065023100b663136578490b1b8e423213ae83803acc096082f74dec89f269eb3b9cccea52ea45342107116b623facfbc855e9f9bd02300e6dc8eaef361a33b1bd83eb7a9b419d3188c2f319374b667a4771715d8ba3ba636f7ec90c8e3ee26aa67ff6e8a35b440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230240bb93abf49a803ee8686c00aad6956021364cf0dfa800b476e7be45071d6040b7a77851125ea738e9be26e8cc97f59023100946be2bb3a112debffd84014057079988373ba89fd5de29d394261d0ca9897e0567b0900386a4897bdee63303930018e0302047c435bb5006630640230526335c516ca9de55af80ffc19f40b6d08ceb73167056d67d73835b04a271bfa3b49fee202b0e577bb09d11db6068ecc023053843a8b9c683ef05178a2e820724e679611308485c31ef95ade011f7229264a9fb5287679da3a4e94dea7701a25eec50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302cca35943d3a1dd6b819f71b26c20d7020ae3633b4d494c68386ba9d920f85f2a7ceac87bd4c64dbadf6ad7eac07bc2d0230165f3633ee6c69d4245c7c1a04f67cc75a3873481c0e7d3a1137045206f129e4cf2fe0c718b438fffeebd5e6bcc5c29f0302047c435bb5006830660231008ab1b15823e5a9d96a1d7008bb993aa5433121178a739162e96edac880e5bbd0d76707767b309e2a481018880209a8ae023100831a12b67833de2219738573c56324bfa4259744963d8869a97705af9748d1f501409683395850eb55865fba1b02f6ce0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302a07672b9859fd0fd4ed9d720e927b16a6da4c9f6243082ad0700215b1761b644136e3a8a58e078c58d69756361829cd0230084a95e0f669ba2e0563a91fc127cacbf524d30537ad7be0adcbda4912e0ca192f0f84d69dfb44c5b5cb86ead456c1f30302047c435bb50066306402300482afb9c81c0f25aa927b6888e92512b3d18710c4da62a82cfe4c66d6d97267d8d74c19bdd7929ae12e363e79e164e00230798c2005c525e2483679cac5dfaa408588522cb3c0cc0bacacb5293a5e9112507d711793e023125fa959d93513f754c00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008c853d1f17a7d561e4aef0315c3d825462797e1f6998dc84d2c49f4f0a55c9e62de77e94888b888ca63417a50a8e373502307ce2c057c3e088a13a529eb180f5bb65bf24520d3e96c2d9fb0bbbbbb74acb646a88a29576fa144958daafdac4214fb10302047c435bb500683066023100e11e4c5dd2b4038a3ffdd5f2dd2cce87f76e819b8260e64c55c4d0ccb71c981dcbd53d6c144a6924416176965c1c489d0231008fae0364a28476e5e17d4a43a445b8950242b78a162f01ca4bba70be2ea07d9d3946c2d9bb072cf65b5b42a4cc78c13c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305b6b556f808e382514c079ccf454a4aef3243a715aa95112d923da562de306d7823e72334271ae35e7f141684930c77f023100d378a7877edf69ebfd1a8ada1630b0f7bee56a76fd5536b081d936bc791e079b1f16f637b93b74678ebd81cc43588e020302047c435bb500683066023100f11cd56f359dfcf3121aa87ae1dbb2c93d852b66c4ee32e7198df4913219aead30e7151d6239d3c179f47c5e5895bc59023100bcee720fd803cb7b974f8bd72c5c12e35e10ce35b1a58c908eb5fd1473062bd7a42a5c1bd03e806b025d7c04345206e90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303f7b94338d88b4c6bfd5c87e6adb2c35c6c3e77f7c765606d0f99507fd226f3d6f714176c1503ada8ce8b607c92c9de3023100cd459ec08242d4537952f44a0fd5ca49dc837433990b5f81b6a9df7e8fcc0fe58c93b2e34a25b7d01b7919b59ec8fb3f0302047c435bb500673065023062ce9e718110384d6cc4926b60a1a92669d0eea2463456ebf4a2a39668618e0dbd91c3827c816b56881959d07e69eb03023100d8e242fb7029a25e0d5d1ec6109dd540a07e6f614e51d690433f243c5da2bde474dda79b540bd5d84c9b49f116539f9e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230509d7c09b1f9cea04735188c8d9a495e6fde027bcd000e2df316ca448dc54be4d888fb0c9e8c9661227d8d3f4d80a7d30231009f44e847ef10cc210515db63f8c20fffe12e50263a42f344dd1dfd7fe921415709fb5d9add0c455aa77925c8bcbb9b420302047c435bb500683066023100c72292ddb25ef77a519f86438c494d92939321b1a392261051c1b1726b082eca439ccb546fb125f77a6d0b30f1bbd2c1023100cc9d3c73e0b6616c68a24f68fa34fe0f0a17ea75ef4f5495988e2d93f0f9c125782b4e3f19488074008779552e01b8850302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e69cea4a1110fcf981d948649bf2352bc1ee3528ff6ed60ef9770ce555e629b5db9e4b3840e326fdc39d41755b781ca1023100f90de94e4cb06b4acae01f188aa0937c2ab16373c8e47d090638ff7cd51fc57722d047665c9eb4a0209929028c0407930302047c435bb500663064023022b5e50f13ff2c4049b5b6db75ec057c961abf2f2c9395473f6e6a0f8ed80f9193cb9d5b79d9a1b086f247aeb1518b66023034ef1d01866c1fd71e97d0c0d5803216ea37e63774089a0bfff22617e871c4d7870ec46e35a260242c3602dea460e3ef0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300e3a9a23f57a5ff6b44a9c9dcd37ca0ec9c88965cf86c91817c9a3f21fee551209928fb7a876a825c2b8eb7f71ad9427023100fca593d83fa022c3bd0aec4b537152572a5d989b5e4d74d9e12d291b4fa7b24d9a57867c652ecb55b98ec97d8cd0762c0302047c435bb50067306502302b9da7cd06a6f6f29e82f5294934ac3a7874b8292349caaa2cc897728be6c9871076215de614be25f0439d0dab32b148023100bbbe776762bae38ce8eb1c7ea51a8eadb2a1152b5921619d343664bc75ec2317b6e41aeda2d3b2f0c3ff3c746ce4860d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d39171e321bed587c1b36dfeb57106a0ef2c70e09e93cac4532c3be408f2db233de4ca2131a90f3324fb63786dce6cb0023052209bee607bd5ae50e6e5913975fa7f35e5a28fc5d8ac1a2bdfe2619d183a7cb3a7c8ccc83f7340dfb7deafd41be14b0302047c435bb500683066023100e860723a0afd68e2dbc1a704d8e1c01b0d75b7bbefdb0a594437c6f0ef265cce528021ccda0c260630ed17fbae6b59530231009cc1d8905936754c3f411b531c24780aa81afd1019dc494f5634226e431b6ff95ea35970e34b71d07bef677949e2c1740302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230768b22ce0f9c03b8dd987a5670b30a8df7badca490fa681baf1106140e373e8a0aff7b59d110518acd9fc6c6421b05750231008ed04cd120c2586d8565880d32fb7525e99e9284d604857aedc70f4dcd7691c4be5a0511d2b94a9f2210b5ca262e50670302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023011cac9755b52aa52470ff984beef366aac2ed5260b49143bdd13541118a61849583fcb63c30467f95bc7e8b5f49d0ad7023100abc41ed3f4a0319417759f18817d744bf78f4e7e3ad4c20bff1e61a0680e510ec8d11efa07de27d337bd8202e4632a3a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100efe1ae9e0bcb04464d2f326cfee188c7fea5a5a2a602e412217e193036870cccc3aca7f00be766061a386876fe4661a302305324f3b42f921837a4f610f3a7389f25322beb3190067ffbf97b3aa774a06e0789aedd15a59be0d73c9654f47e18cd920302047c435bb500673065023100e81ba50ef72b2d9f85ce8198e41e3ddb0cd1620779fcb14827fb5c90e00e885ee9e60aa21d38c36c7209ea79f4a6b7b102305db2ed5c1de4aa6771c15420f4c9f4207010d8c85aba6752b2e8e7e712095ce569b6c1310ae7a6f967d44658fb9f67680302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f1a4ba9857f6fc855c9618fa769af96fc3645a0e0f420770b34cd8da34edb0771762e7f3f064fdf53b69a1e76c076c72023100f39d76e97e42ef71d758eb0dad1352872fdb74ffb1c5d3d983f169aa1eafc59977ad550cc793481d4353438a47ba894b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230745015c79ecf30ef9fe00610b01a662f8fcfa3fa3c07cff52b405baa132cf2541f67b3b9958e2cbcfbfc2a31095322e202307d93d30a795d3ae86b0c9f0947a16bc209ecb8175efd5dff61c5c7dff873d205d10bef41778a0e247df55d52278fe1520302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303adbdb03592369b983548d8e6b5dd9987b7844391f77c7757cb9f736d12c79ec2dddfdbf6d194106e92f4cd65f84b0c002307247a4fbce50223f660483126216768b13f8be066d9f08773359f648fa9c1ab7e39f0c6b24f431015377798ea7842c220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a2ade9c89f137070a1507cc5d7d8b807fd3d4447c4e013c2c02fc5ce5237a461ff39b66a9eb9319d5c8d83b8a216d4e20230639fa282be61d161843fac60a1cf0d4c281b07f5e0bcab64b39125bf0b3c774e1f29210482aaaa4a3a37313737a197940302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008af4e6a19a96598bd3c268f2c5083f6649e19fc22d590f15fbc44cb30e677d31a8b8136897ec28f97587bfabb7e2cf600230771e1a09da99fabf1881e112bf8e1d205b38394ee8c6c5ea7d04178e5ef9968bf68b9ab4fc591762709b2bea28a193730302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301a2531fdf18a6a345ff9032ae02f8cb5c43f7dc4dc8b18c6563d218cc6163b0acc089968d162f0b6ac0909628b0686d502306936acd3f976748c418c9da555daf0527de995f338a07b34c7e41e80730c30ae6f654a053f8191ffb418628aa2ef06d10302047c435bb500683066023100b414caad32c195d865aa7c64aef0bfdb77029af9ebc66b330e28dc9637e1eea3f670b230db6140f4f9a8dbe6b3e34c7e023100ed58314062f0437cd93ace803baab71df4592985ad9296ca1a34f6346095f13c470782eb4f52a787ba3ff6fb8aeb540e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023025aefd0cdd785fc632caee60817584c47e45228a670e4cf1b7b7f7b21327625b91a8c28b7f61fc63644bfad8d03a8036023039c593854928f2e5be37dc0618e092fcf4b2f1ccaf9d4641d6bb2a74e45548ca6e6c0e6be876e79cbafcef58618ea4f30302047c435bb500673065023100df0c7b52a274b24dafa7dd0ca8882f695af553619f89892fd25440db0c5cc8d2540fd55fe88e134590b55fb7417a6ef90230750f68548b4f88143d2b24fd1eecef16f1c80b32755301475a1f94935a42508da0c5a8ed572305e9e249815558aa85d60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023006e28370ee88e99402e8f5a0a7e30097d27d47b459ecca98853ea4e85fedcf7a1f95f6883a9a71b15464733090d3e43c023100db779de8ba971db5c96f39be3d6490820e5063bbac97f468b74924ea6fbf35545e85eb25b8245689952af806001bbc5d0302047c435bb500663064023041a53c1b54aaa817bd83012b8da5ca31a22e9c05f569a2e4f55775938e90e2d8301f0fd964f60fea2bad2ae29ec7f4de0230009442afbd2ae2e708f7c87a0bb654e7cb68becb69a7fcabafa59cd9bfcac718f9c507e15bea7cca7e2ed4b0b31073910302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307795b70380758d364fb544ca9c6c6873f4504999ba1b40581b3ef6802033242defb9ef0eb7b0c8375fb748ee28fe099e023100a9a95c8070e12f33fcb12018a331b1de8268582a85a27f99efca4cd1824a346e28b188323c2064485a575b5807bab1f50302047c435bb50066306402302bc0b2fdfde304c020af8b85eeea9d1e653c69861a8aaa5f1a03e069ebba4b5d5fdd4a0f1acc58bff0f8ffb0ac335496023056f798be10a551f97d1d5709cc8e41b3818e55195edc572a1b05baf841667c461595ba97d6f132682b570848f168be290302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023017f66148f78df4be4e06d2f76df35becd43ca8dfc7b927b98196d2d59d6f5f67fde7765f361e6ac32647c165f21b62fe0231008228d0523131884fc8bbd8eb94028058ae4757494f051ef77aed5c9613d4114702ff5239455f763dcc2c8f176ac8e1810302047c435bb500663064023069315665ade572c974219dd4650981709f51801b1f52e3b6611b049e8f9623e66d62d9fc880015dcb9c3369c07cd99650230534837f7cdda545517df42967a1ebd9fc7a9fe2230b43f10fa4a6b5af42bdc94806f70e9110909d3110899c4b625e58e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ba487071a9d210c692b4afd9dab421dd020da7ab776c9a637bdf6ec6c45bb491e53fd3fb50c0dc9ce6c3ecd3cd1511090231009ec51f2e8a9e59386a2452b1352fc1f18ee6ba868e97553c99d02d0c2ca41654f1d4eca2f1f894df98b9ac064f4b78070302047c435bb500673065023100a851ecd8360363afd71b23fc3b43f792faeb8d64e12bbfff72459fbdcf1e04706940b226e3da8cc8fbe51dbea305101d023009891174bbdf72650dbe7da84c99b9df88c577d67c46f90ff7dff8cf80817c6dd782183ca0e7fa5c6c9b884ba69bbd370302047c435bb5006730650230279bd22e5f4a5d18f715933ccf11a1d5fbac6385a688e29d67272e77394bba9947a82d8118d30abccddc974d79b0763b0231009f2ae5a933dfa2795e8a5b56d165eb530fb41af21a3f61d5c2962036efe5c95faa62c62ada05fe2308be0040407d98220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230021f4e081350e4d12ea9536750fe18b6851e0bb7c0351676c2499200bfa8bad4a4e21adef22ff9b848992a20135fc329023100b044d556772355f870e474063d85bfb1ea556ce4308ca8431b6c91d729a202ce9d5366f55977746a8949ca43f4d3268f0302047c435bb500673065023100b1245efc1695ebdafe32787dbc30939d4ed6bfbae5934f97e8d820d1523314bf38784625072534b0debaece0467f372d0230799421f8ed41eb1572123c113c2c4c4ac0365b005433412667bc07f665e3b6b8bb2049f2c44e26f6eab065a0aca0cf780302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d69ed67a288eff7a3371fdbed4d353580b84432366fdfb3828c197751cc35ab39cb20ee9b542dd4ed9b58ee3c484e7d8023100f1bc7bdbbec75ad9b8a43f9c69d12dd70751fec4622c7e35bad9dc7902917e1c6336f2fc49d6c59259da40fb0d4af3540302047c435bb50067306502307ef6aa1e360f39c7c191d150774733cb5aeb3d77f5f312a7e271a3fe0510f1500ad8b2464158e18e5950be03bcd43525023100eb3d4085d1de3b109d892ce09a022c41e0f2d914d132b8f48eb034a95b0c64236f0f00619e5e0e8520045a1416ae8a6f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e6262e4e556c2d57351173f2192e1319c6d027f52f91fa69a13e45e6dc461c56e48ab98944591120f8e89f44aca664170230749467121bc821c1805c68dd1ab3fd9092be610b6ed2c0717983cad4cd466fead0f6ea9922c4e109025121c03c2cfd3a0302047c435bb500683066023100d5cce2e34850d09ffbed179664d6df3f14b5d6d9dbe662357b455314767bdee46752fbac50a11c11a103c47a2741a6390231008d3ba0f40d5f1b54199fd6fdf7cca0bc4ea6ddd8dd94a742c3a0f1d1cc280ac89a9b9aed3fe8eb72828af4df737ea1320302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d78f11d32234103809729b35a001525c34ab3a6cb782a5be10db3de51066c00ecae58b180ced3c3cd0be70ee1043cc9302310092613d303f128b536f92c3425f1916ded3ea9658378074314069095dc7660fbfa4d3a4adb65fc7134ce59cd68803f6220302047c435bb50066306402303fe45b7974a493ce012210596258fadbb82c3c029a2314f08dc5d0d300eddd013414140815107860e80f16933f8b5fa602302e77105462e6d91951fe91e7aa08e69c2af60e6da278ec116ced6c015d4be963b47c4c2ed558b8c4a4b0ce9f960342f60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302451e11e5b9f4699c98343ccf9e7948d7de28db47d175f85fd957b3c3d3633286ae8dfa13aa87f2ca587b3d0a7815281023100caa47110526e4ff960c60be41da23eb2695e7e111bce64bfbd82ec5705651d2b8e451332b88e0a2fd0eee7872c8d08310302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230128a3bf1bbfac916bc7615cbcfe6bafc25b9f8ba724c8eeb75569b142dda293bc14534f22449137a88ce5575d3a075bb02305a7705b8fd8b3fdaf9b16bdbd6b30b23db19601ac14aae298d3890252598c021b99c883902649dee7b1ef49ec9179e990302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300cc27244c356c5d9a9e90b213c20cf57574435521dabdb864d2c51cc8ca1ba9e2b691c02478143af19b4e75d35a912380231008700b40350cc312a791aa38b6ccd3f3d414dcfdff45a0a600fa9c923084758ba4f8b72e3823fdaac491a24ea9400527f0302047c435bb500683066023100a4349025d850590b3f9533a285d16e950396a2a8c718665de4090130997a8f5aba694e85445b4b0d0d4795a397f0fd10023100b774bd5e5631466c5d3c1ab4a694a99d9daf58a7b157d0d3d8b3504aa66367ac12e3059c0c1fa5fe02f2c229260391e30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f8f5c5d87813ac912ce56bfb552af3573876ef6f5d6ea595537e9754077e04e46e2dc4ecbe27c6e3343b8cd8c10d6164023048efda2f38578ffd99cd5999fd422d2cd8a60e8ab9f1ba7be96ea3c650fcdd9ed70d1240d10f0a7058555e2874b334900302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023062c658d13cd9ea3b097fa5107763e048412e8b0d9b052b74c18c3e110099fc5e617963a17660d52645f853d5c5c2b85102301ca42ea9f0ae01d833094ecf092fa29b574a902cce28ea86de20f045f3f584802cbe464ca349a3befc45b4776664b7830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c78b263628addb70d7e3b604514d46cddcdf93e96de20d2bf0b99e23440eff2590622f4d7514ad726fcfc56df71e1fb4023072ecbe121ecf4665938f92b4f529afda35eeef61feb20bffb363003a161a6f53b834733fa1ac8ffe9e8da04b4b06a8620302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cd700f6ec339791666786dd867fcb27787770731bff383394d71f75a1e96d623a6dc6b0edf65341aa3a2124aaa99205302307f8585ddb92c37557e60d1616d024f8333ad2e8c6e77ff59461c68d0a595412e800ff16a9693470a847f3fe25a8574c80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304d921c9aaa258e6b29173a7275f9837680b205b64ff7ebcd44216a2acd3997330c5ef118243d86a5bdfdae9702c3c89902307aa1dddc073d602fc52b1c341e2e189e7654beca8709fc0d176c02e1705ebf6165ab78d6e7e132c88d3fb41e1579c7850302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302c173506dbb976031f5687c5490f8ed272edbd71e8fc27ba7a902aa52f78bc82f53c7bd9fc2ee0763b0cd345d18e3093023100fa1266117fc06c99f2d88ee758226863606c22df386b025020690bf66b481fcf1293636fe1f65e726ec9fb2db46de1a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009efcbdc8dc9365db4148f8dedee546335828e97da00e76de87c3c7e6e1eb7c067024b88ac42a37f122e38eaca968b88a02307c15993f7765b5201f04db3ff2016198006674f8e57f848718ddb7bcab435b6299487c3061badf7004090f71abf463c00302047c435bb5006730650230463a7fe19a45d367336d3105cff81c07b325af992cc4f1e2f524a1bcbbebb372afaaf706aa2a3858d59279cfec28c100023100c513c7f703870d85ed28858907e07ed0c1dad394c9bea22ddb2302b6190040d51c88759f3e557f81a89e9533e84cbccc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305986bb74d39098f16a6e910e87365de9b54b69ac76f0d68ee6ce2fb48c5a4b14fd59e6a242bf3c87ff33a47c89c333bc023100f6c90b234e1286bcb667a4d39efb8f24438406549116458c80e67ab173d4dc110786beeb24b123e02c9ac494f84be0700302047c435bb500663064023019de26aa8032b0f55ff183fad0e2e869159b3cb45c56fbea439fb2f21bf075d265ef01fa08b2023950ada134087b37e402301196106ca23497267f3984a071445a57f8259c3699162f24c2ac650a3f0ce14455c4ebab126a7f2fea756ed0ffccc6880302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230583624c518fb2eecdc4506ac195584a5ce8a53d87a78b085b29e24741f3fc8b680c939231d831c2581e59eda6040d694023100d850a8d9ef326c6834904622e9318bbab9e354c91f7fd5b0ae9561c8dd358ca49b498dccdf250ea139175101255750d50302047c435bb50067306502304c8051c79141c115289d7abab3b2ee7923b30e5febb012c49b908c76402ece004a94d196ca500fd0c65a8b0604d14225023100d409422413b2ca75efc7ce945ed891882975bbc81ba548b06168e9bbc8885927e5999beedc30d46a49e9ec8f439472fa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b673f1c3c06524dbfdf8bc9c7ad04cb0bdf13d340701feeeb062d0df07e96b057f16d685cbcc241b529415f1f17ea22e02305d2f8191cbcf0bdb74fd721ba4c40f46f2c5d6adbfa1e77437a8227d10bf09242a03f7dd3d1e77a0e9a5ad7db141c3ec0302047c435bb5006830660231009709e14370c4996a51d44f2666f9c5024e2e21564fc7f294c98fca8b456bf6b17119963242c7bc7277329561a239dbb0023100d2a30bca6334c911e40ab9fbe98df9f4bc45c090b9d21c4fbfff9e06e9839f33f79726eb4780b4bdf3d03940fe18d4d80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310087d6f5c016bd7fdaf8a5961259f7a66143390c5f66c397cbc2e27f09d7dd16743f3d051e0da782e04dc1f5e77d76454c02300547710903efb0f3da2fed98a7a5cf0ee18d437e29dd0dcd3d33a9c950f7e44c74b7c52d41ed9331b5b13a211b4c932b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304e2299e482a83014d089fc43743c5208ffe2b78dadda9e42e20f3aea60d1cfca3137692fe016ecfb8bd44f621be053ab023100ce908a79e959be501425bdabb936d39e8b6e5c052c558d35b9f313ccb16f04c79de1c0fc00780b8b68a47122df6e7b5d0302047c435bb500673065023100a3007a51f87a108b6e1af6f3e3a275b0b0bc111b8c48fe232bc7c49e54e3ba58742a419450207ce26ab64b68fb46280902306790052fda2682970d8ba48d8b871c535d3160e31ff931dd75c96f274b7ee90d18a619b9840d923b4e6d9b5d351e51ca0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e578a91fcdaf9f45ef60d375b16d1c2116e11b35428ffd9e92e9139f9e5c8a95684d53426b0aaff00708146cfe59d4950230352852d08f09f5fe2202f51efbdfa88c388c1d9182b65378d8cc2a9395780fa28f316e23efd701742f18e9e81992b3900302047c435bb50067306502305cd4e20006f2c93a94dfe093f17a69fd607c83409502a2566c47d22d616597f95afedae46911eb49f94efb4f9e33c76a023100eab7add9d4bd40a12aa4eac8925ca0789a888f7c9db74f771266ff5dca5e95195d305df4511590b420f1b587f5230f750302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300ee08684a1d3d7e386fe6d6e896f5709b438dc9fc7bf945422e01b57a07b1732281b507e7d8ed599cc2e646b17be7f00023037de10ce190d66419302a079c2551787914a307c2f697d8bce7f2250d0a7e9f2adde7f9da6b94c5bccf58b8ebb7264cd0302047c435bb500673065023030fb5b58434df7dc2982ad59e7119818d095e9171d3a1694c1940dbcd720a71400c68e7e44c5b0893f508b3c91c3dd1a023100ba22ddc90b06fe70842d9c20056693c2b214782f82684bbe022a29ca414871a86b95f395d4b270db4c808cbd48a4d4600302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023016a87566626310276af8550057a7368d7e58142a0688c530de543cda0b8353c514f807b2ddfe21a64d7ef945ad1617c902303ba756ea92a274e3da9b103b32a32ee9c9bbec67f6bcde56353f200f289718b437a46862ecc8de70b56be4ff9bbee5660302047c435bb50067306502306f19039cadc2a0766fde170d0dbc1bcaa3ee6bae734d1ad08e6859c09dfd126fbfc6417db40c737a642c6ac131184f7402310098c3f773e1891e22ac17ec33639bb937be572e8d0f26a718403418ec46955499fe791eebd1749d0e8eada6dc7df1ba9f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230573c5f8c81256869808d30e4ace1f65a034774bd2054ddce1a923b9a123b270ed3912b7a90bc546f7307a9388300bae0023100e4dd51b44f2c31af6d4e88ff21a67db3994663b3f2476fbabf53b3c6caaf81b276c66a79e12f58fa07038b6eed33ebc50302047c435bb500673065023100b98b6a8e7443b811a5388e61014004eeda8f544010457e18ac7d4a7ad571fd26c2d971fe211b2c983a003555915bf12f0230453b8d7a55c9421f6dd8fe63b5e25239e00d5a4531b0dd42053208d3f41fcdd3c97de7b76b6118598863eb18baabf34e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100916c57692830413ba860597984f213985f4d4ddd188138d922d7e9ae4573d80cd77f237d53907e2514aea1afec8060c5023100fb0cee17c23af59abe392ca4a60265a11234921141da483119ddfc8efed796e66433eebf7b7fd1694dab1ad61e9e7c4d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023043d16e1fd3530ca1ecc69a1a966f0ee74e08fd425756323a7213ab28e8e9397eb5c4f427d4891f86bfa4f52bb7dc7e97023100bd7998dd1d92755fcc2afa7ff83249bb488e873527694fcf470dc7154c5be229aa9b5ec7c82127a81f7eb9511ffd481c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023040c4b1c7140681bdf33b0dee8f60fde264df18e20038477f1631a797410af013302aa6a21d75918297d0d0fc4a44d9c1023100aaf78777490ee71f733b7db82a57110e5d55e4f89fd0e9ed3180516d6e41c4b54b109f033979210492f4ee67e123220e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008a458b121cdb7bda94da2267ad3c813b77dfcf1520388568f0d0b366df0a61cc5fe6e158da8b397cbf6d5ed9240ff8c8023100d40d66037484cf46ad556ed2cd5bfb478aa5c047e322e4a5901a1a574c028745563a695f12ead9bbd5e8ee65bdadc3530302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023019a810a0ff56e42029cbee1b014c9d9d8ee94aa7089ae80d38005d3b67e4543303811645a0f8312d5885521dfe5f5fb00230432a4e12c5c1d8dc68eb7a23faaea8bab0c3e393b9cde41fcd8ac76009f12b1e5b4ab2327ac4fafe4727b51622c43b070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305faf37c9bd612d1f3e93de11c09b03d072a3378e43ae6de43bfe5f2fd9a41837e5679344c4ee167839280a06b2f7d34502301517821aad831021b3150da35ee24dad7e34a944c192e5901cf23f99a8384b1835b36c8116dbfc12d30f1fce0ae940dd0302047c435bb500683066023100a96502c039c53cc765ef6beea5c1c811c083598e0dca1b21e59e28467b0b124619836d7b046ba9598a7552e4f1cb9f6f023100ce808674d1452210a852bce4f0f9546a6b5752490b59f4003c0d60a12f29501516c7675e26513f6d5cfb2b954d0d4dab0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230399b5e034eff1d94982d71107e48f14eee726b5fd68f7ce832a02080b33753fe4555523a75dd65f4eacf4a0a46f416a9023062fd491e9ccc506da7287aebff822cfde15fa9b9df9257c04afb48998942302de06b1b19caca0241b951c3a71ce539e00302047c435bb50066306402306f21dde510bf5f039f1e04eb596c07302ff150ba5d877c668949116994fd2b379e424e21699a71ae7c0954d895a00ec6023016965241e6122051e51937dd47ecaffa5ca260a4ca5dbd6867e2861a8ab062f32d999d562e77444005137659bddded100302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009ade2d29741f6cf9d0ba2ab50a662fa3dd5718a5f6f48f754008b12692b7ca1e8dc2681ecbc5176c1e36bf75220b3a44023100a658956f5b565142a78722463abb3159f68b76013c054fea67c1bc9aea63ddfd020c99e1a59b8bbfcd8c5148232b8a030302047c435bb50067306502305f258f39f93cbec418747fefa16ed5793ceebbb47ddb01953e6ca7e36d6c91d641ab189ae8acf21cbd1965e7f2e07d6a0231008a448e69d85b682cac73329c8bcfabd8f63723701a3ec11111807b4f7b6b7e8a0951c24fd337fcf4a97b0bdf11ffdd410302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230332aaf8af754bf5d65e950af36038fd8871f3450a5ef96e162df76056371abd2be532a5ed9adb806ab432f014ff999500230657b5ea352d85d3c3f997ce02996bb1b09bdb81eb81cc58d03fe1987a71d1a0f5d63e66f42540fc83395550f7af953aa0302047c435bb50067306502304e25da5fc6c76724f4dd783a36d54de56cfc01bbdbfd0c928860120c93584cb83da17383390af6663f5e22659df62248023100c342bc80e9848f977678761a703e57385af451f461f325bf55f2e263914a2edd6017a38bd5c7f72c04fc4e9627e28ea10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304c3317c0da3af296947001aba269de24016eaf9271fb6ee8b81ad9676f4f69a465e158844bf802037d9e05aefa854d0d0230348de24139ebdf275f3a5d2e27b39250c083e58466da5814d94b975cd9208649c7b6c72dfa8ed6c097142659174675d30302047c435bb500663064023024a122baa47b3e3396752a17ab93af3c8315dafd9d63529ba085c9d6e0ab1757ba10bdd942dbbf32da9b5968963efb3c0230790b5f78b5a6106bb71c4f3c0281fd92a7798b64fb4e14529e0651c2fb5aed526aabd4977a87a6455b9ed38dcf14b05b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230034ae67b287ebde3b301ca168d0bbadb9f35f62f0d8e2a0bad21ed87d50bb617caeda21350b1a0d2852f4cf497589ac202303157c4573f92e5251a5bf69cdb01c6dfc1ac23f9cb10b86f7c833533b14bbb524ce3a49fef55e4710d813494147002700302047c435bb5006730650230494f6cd1335bbec7c3f3d28c03decef1e3612390ba9ef13100aaf9882028a3b89ae17f63c2a06fe8ebf9bc3b28f4c5b4023100a7c92f7ddf2d641a299f71050db9218e17da2bdfe2141fdd6b88e52b8246f6b9c3ee0eed68ba6d5de24091eae62f23340302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307216207e2a8055b97b88464419943219a0fa323568e1e5898fff9f8c7c3fdc9702b6bd3150124fd39b6affbfabf1a6de023100ab1277a15440f8b20445d746f2258e7980f353e8066a628011e68f8235fe8c21f46eb3274c59f3ea2cbb325d54bdcf300302047c435bb500673065023100eb3d53b09412db787d9e26bff784bb639281a6f285a9994883bfba6246129c7f70ef772844e873797bd66ea198a4762f02302b96c24604c47b8997126221d7b98068e7f4b53faac492a19fda872f097cd8e1a74bbc7fbfcc216557452ae6296ab7b30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a336f720d528288045c1a9d41de535a11f2892d98b62900ff29c0e56b34afdf34ce9a3d3875b195962587a7a6cc2c11e02306ae26a5a04e97b27adc5e03203b8686e4aa5a0dd05557c0e1a4b435861a5a71911b48baf52bc3517e50d86f015dbf0d20302047c435bb500673065023100be65adaabc09b8dee4a017e3cfddaaa3ad294dc0081c232a91991e7536d6d77ec596983390b295ecbb5be2285fb0299002302dc750eebfe878b7f54e44f30aa1ea9641024c1c19d16e811c2570497b9f524e7413c0b03dce526cd7604d9843218fda0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305229ca88982814c59d896ca8c6bc91390fabca0f39f9e224cadb2d0709cf992031de965c0ba0f5a25744530602f1b6a5023027872c3ba6709f782641f57987491cce23b05641bacf8c7d4e62210ea8d7b01f0b6fd213b29884c9c6655f655779c2120302047c435bb5006730650231008b67b82b033789902aac5b89110f73a75525b9672dfd51e5ceabe197409c77a9e33ceb91c01f341f912c99ecff17e7b6023007ce8d3bad455d3738c4b1b28c4a6b3735a76d38f5dfd594254a6e914e064cd612f75f1052ba92b65b802c351037ca000302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a54401f6bd7aa22b16da85a70a6d4140bcf1baa75b1d4e2fd83f0d931b37d2e9578fd7418fdeef12580e7bbef41a4b77023100eaa06a613cbf437ef14b684574a7364c5ec21ba9b506ceddc0a303b97ca956b2f12faf4cab3122449516a0bc842d99d70302047c435bb50067306502307bcffa6d6418f64a7137a86d7bf92b43cb0dbe5ff348e30e3e3f6608171350d5fb6cb74cefc9a98d227a33ac6aaee930023100bed00fe98ae34522201674826e6afed5c796b37d8455e7b3037aa1478c46d87f072f98863ea7fc49239a0dce6f59b1d70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304f40cf2207c17a818256525c41da2a424a304b8de0e6db4f4f7fce579765dc49866f8744ed1e9f81e1bc0481d688597a02304efb5829aedb1e5a61feba40e48da8600931d85490eda630e366bfe80e4f521ce11a2b82eb0bf19af93250ad0e6b74370302047c435bb500673065023100c1b019702a89778bed1e9e3c15ca8f098463d4c6eae30c1780789ca5288b3feaaeb3617336bef5333dbf55b053b019cf02304e93d14b95a20709bd89120faae4cde224d31cefe5854dd07fb5abf303366407acb976f4ce280af219559424ac1991dc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304e9c1904cd71ca98724d1bd5f8986afc9b04c25e664b63db847e6e05d293337436f68b1ffd648b8574ddd21e8f584ca20231009d6b5451ee4f2d8140cf9e54d940a4008ca6450a531eb0cc46b8e67a12fc62e1146538d54a0c1ca1e8da27ac42708f170302047c435bb500683066023100f229dd6608d0f9d49092651c887516e37e9cc16c9654df0251c955c31f3e63ce737e259270d142245133a7a31f7c1116023100ad006b77136d0635b79e98677c205c98b2598bc43076d0a8d6c5e9642b074289083508aaeca695de854d4b14a3b06b970302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230338846cb4f46e86b4c49c7954db69c40471f5c3ee27a01aec26a2b436fe343d634e83005b42c4947b5d089656a5c59e802303f5468daf2aed4185b04280c6ce0c2b676646312e87b6a11b35597efbfb113a4101cc21618bb5f38d87433b1ac7aa8c20302047c435bb5006830660231008def65e1b2441f88fe9ea8c070c8b629751d12e6546c86bd7a25289122e594cf20589f88b7212f283f3f0219ab29d485023100ea2964b88b9197df7e2217e27a79bbba12114b2f9907f2755851c8b3255c3ce4ee426b3d47b5b243d8b6d030b7bb121d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023077029a6425b0061642f0f6098fd4233d490f9b27eec8eab553d9622e87e3b8a25f7a112a1b0df8b89b3ceaa75a1f796d023100916805f7ca8d9e6b7b15e3d3565c68651fe41a27f144a24ee4a28776b64aef94823640e1169b20929bb27843ed632dad0302047c435bb500663064023000c52761792d6e438b5730d38d3535124c7ef9801ee2f8439c30443374bd80a175fe987ed51fc44703ab996d781d237902300bdf28de9b53e2a7cda1247f90c7a83ec2b7f2c109c4ab04d9a2a40325d02c342d8967f0becdf65bfdd0eefaa43e25f40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500653063022f4cae54a26bbee1e988ea5b3cc92ec4d95446a12c7268494985b913cdcedb7b6698ce3026d1daf36f5e8e00ba382ee402306a257a1cda0e3edd34c94161f91bb430533b37d6ff911494d463ea18af438dc5d0849274fd86dfe0c120cdc7b583d7220302047c435bb500683066023100d76cfc1cb3e42b65465ef99c6e8c4ab7d36423b9da063000b73dbfd16a1dccee2cba392245ae3ea87ec17fbbe414cf3002310080db1d0f09526cc395f451e50a2bbbff8438bbbc84c20c3104947671a05488fc44d6937a4e27893a53c1e91260c899940302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bf30f14899c36f7227295d89ad98972fe49172c028b0bbc34b975abf115568123d17b2b7eac323a33b28d3d7e4bb6bcc023100a8bf4a4da9bbd9ca4e69676b8d22f076a0049ff610ce283d56d8994168ba252640cdf7332dd955a6c6ebb28dfdbde0110302047c435bb50066306402304401ba36b55d78d210634ab6de08a615e858f6ced57a4e67c031018c6e1bba6ae9276b340c21467fe89997589f3f55d302307016c03c685310dae44287ae952e01766d20a0c3d4d55fe68020260abcd7d5f41c0d8230ff26dd65f97eb1ff8e8708430302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230459cadff831196d5a672e4354c1b66a513ad3d54ba1e09d2772242ccf67d250a8c959732ea53fe36aa4e72ecfd8122a00230536267e4c09ede6d1c64245e6fc6dffe0b105c1f25f94d8da504553fca91a1cf1def419c44a22cd1328f42e31080d1e40302047c435bb500673065023100c977b10b7681224ada5f5e51a416e5eec2826fcbc1d8c89c1345995c14a9742a3c634f6cda962d204f1f4089df2589bc023046cdea3a3b8c65d88ca4b3b82e6db6263725497e8b0fc381956e193adc675e54be63289f6da2d5710dcbfb27fd890d8d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fa14aa8a617715b346ed852a534fba605e59a8c12bb9e53fb32c8802ee7f94887a02884fc7ffe27a5951ff42dc6b7193023100c4eefcc280306e0ca5df43ef96449f76c0bd67cd03128bb04c5388a75857adadc81e49970ff80c02f8500e3eb832a6050302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b68a398113caacb0880b173aa95103f0a972a83cce0738ac769b75a84f458a9f6e5d68fb25be635baaaabb3a0f3e941502304f4a26ffa3eff4a47690de568e87c2030d764c03fb224caa40a23479da6bdf53586aecd72924fc4bf769a27d42017a900302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100dc8810d671f133fd8c85da48df4335bdc727a83883b0fb72737628ba8fdcf57a19819cbcb7d1183b61e3ad180a3ce844023100c990aed01234a664498eb9e7a071a26c40d209a0c8243966f4a853bb9c5840d6d8601aa2441dc3d491435d0e39305daf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310088e66bf988174afaff83d24188f72bc81fa6b48827b99ca9d2ece7c0126f53934190c8f07a0b9d4dd4b80e29102325260230742b092f3965b0729b31e0d5e1015c9ee359472a7ca00e13f58f18ae64ac3ae7e6c2a1f7a1e1540a5e685612dfbbb3240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301853f850da5009b02420cb21ffdc9a19946962a2e7a90db10db05aa8676c34d039100c77f95207b650465b0ae70d43b002305f362ed2c9b17e7bc3bc461b12735c62b274b3ef008668015bf26d790ebe53e6218adb88751046f554206521d329fa820302047c435bb500673065023100ca2da33a16ab2e7fd5bfcc3f1fa2655417a3c4b52827b9548f628a48fad039db28497efbaff5c2697f97d70ec668206402303785e9b3bf5eac50c7f002f5af2e28edc6849775d0c39f938447fda74d77120642deef2e7cd0736fedde931713981db30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cc1747631cd40992bed70d47aef9761bb9f5e81295d5e4e13d0fb84353fcc55c48ba39e61e6cab6857498e24a61b44ad02303e393c01bef0d48360b7cd19b2a9a6bb0ab2b7db929685ed505a0ccf716bdf18a9fe2d442b8765f26033e923dd3d11070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303342c4c24a0064112e965f2fdb394e18ab66ec69371b5909d50ed1d077f597405aa25ca0d2874c0771d0da0340dfb0190231009fbe6c57d8f12391093cf3122317ac6914961ad8e5e3f3624e85f5a057d308983fc1314afbaeae6f9b097a502059826a0302047c435bb500673065023100f8763c6da224c785adfa663753aa91c500a80db362d7d0945293633fefdf879013c8a1950e3f23021d8159655477350e023033298d6addde7b73622b9296f7020e846693b53cbefa94501d0bb2128aeb4e40bec1c5d5325f6e54ab1b6e51eabecfcc0302047c435bb500673065023100e1ac28e0bd17a0cce758711d4abd44fde207b7de9340cd2d6a0f072ae6798ca1c8e9aad2b223e8cb47e9bb47deace1b6023070420cd581c16a83a58b15c69f207394c1af96c2de59b3beeff5f4a98971aed7c14c7461cd077c592f74932fcd0e5d4e0302047c435bb50067306502304509868d7876bbf9b4147b9395275e1750a67c92ac7aebebc186d44d0eb6952fe9516797d09bf9a4fa08d767f61da92c023100f8266d1d49f6cb651159593e0a3d7c4249351c35e3c27df8c1d62862386864921878212324a7325f9f7290a46681154f0302047c435bb500683066023100cab2f86e624d5acc4d5ccc11d62c40bb1e488a55e5563d1086b23f329ce3b44fcde7f69d09b591b5c7cc79a66f6447d9023100d0439cec068f214fe023a40cf3750093fe402906df38215702f68854137479cfff2adf27523568b5bfe84e149a509b770302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fc90ec5f38b021267b9a07da30677dcccf0bb876a0f591d39c7648cbef82e5d9769e72bddf909e06276f103073303dd5023100b8c4d6f5c81d351fff22c9ea2eb052203a7d3c5c4e90e53770914d7c0de21da3dd6414580fb1654446a1e4ae58f6cbd00302047c435bb50067306502302859140d8f814a272b07567740c206e6bbc6af0d6f68458dcb75415f229eef4ea6ca8cad272a235ebad00600f14b321802310088cab826fa0583e44ff160763d5466b0cbbbe07ceec272c34b99d2e390ca1752ddc5a249fc6651ec6520001dd5edb5de0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023036ab147ef2b2077a14640f23e30ce17d2c4f0bb0aac7e1c06517d03ebd0d72537891461a07120223af4760eccb194bcf02310081adf172b600186e7ff5e91694442f1cc31c3977862294a1d2d640c89c36029d1a8ea3dd9b58197b0076067111c4a2790302047c435bb50066306402300c2e876b45d23b8bb6e2380028f6b35a2016ae89e56afc0b468af371462c33338091d3d28f692eab547669a11a62a4d5023032318882e65bba297df1c32e9d8fbc8fb0a82484604575a4a6b72c0d4c256e52700eece64035afb884d9d5a6b3b3dadc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100dd63f9ad0e4c4485815d3def6649968e3f945fd91e207c2ee745aed86ab9449fbf1d8348d6a7256d2eb872c2032a0fd5023100dbf1edc142162a44b708362a9d8eb8d1b83aa8653327801724af086db852aa864b3260785924d043cfcb93b5f456fbc30302047c435bb50068306602310089a0b6ec1e352cf2f0f82c37c685a88f7eafbc7de6c2ad7fd3fb86037a29d712ce2d14b7a6e822f02c5e098790600da1023100961203ef4b2e19affabb04aa2f898436469022ecbcd9a7900f43e00eef4d17d595587724f92f55b2da6f8bb7e13fea1f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230335726aed88b951c78b1923e2cf08e27d95564de03498b7da051317e0d027f5c70ceefe498fe1701cd286d6b71b9f97702300f5c5ebc488c1bdd2dd797d7120b3485268301efd872428e5bacdde902f62ddb74a3ab632dddd8ca2aa9e9f723d57dd20302047c435bb500683066023100900afeabc2866f65d1aee55dd16f78c36f24ee19f70757b5f195a32e40632f0374fc64f83432a988b870fa0e3e8826fb023100b3cd64f846d7d65becfc602f4d83db359f435e3dfdae4174988dda016e3d9fa566b9b8fd4d6da55e0d676c397ba7383f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301c109057eb289cde7a37fc993371e676d2b5c2a364a95595defe06f0002be3bc248baf634857dbc8ec2115917223fb3a023100c9c9eaa049dee028d294222ac975014f87ec4940f014a33899534e938c4b5c560d9379bb3c77cacec054c3265d6dbbf40302047c435bb500673065023051708d86599829f5ffcc2c478c0547ff41af0ef5c913886e4629f57d8000cec8bbec51ceabc16204788a604226096573023100dbaeac26396084615ec8492a8047391114adb659e91902b2c48585696e0c44d549f25040d185f128f3323575045f2cc20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e0c743aa0588b27e1b44b886cffa44b3e531f554fb02d2eb82aa7c9baf93f02f453fecae6a735eda7b7e4e26811d46f70230730ad47bd0ef9ee3841ec3a5948264a3ae68aaf16af7a86cb4d5697fd3526f2585c258dbf3f183bf26bfcee5eec524010302047c435bb500683066023100c40c827c94f8f4fe5467c6b42ca54ce20b78f3aec3c97896c863f871037dafb5f60ca78f2e6022800aee6085586f49f7023100ee981731089a1e74acc504613399f099c283c2967e7a862c8f94dfda81fa4bb2a106b751b5f62d18b1ef234260e294500302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300bb7402461f92e27047bb62b93278b6bc2fa46356da0a837770c6dfe98bfc74471f996bdc8bb53f0460d68d1914f4f510231008a0c1888fa2a997867dbe27e14deb4f173a4b329ac2d979bed24be581f512ed5fb365c6ca6607ea9348143262f32cfdf0302047c435bb5006730650231008d0c017fc3ea686755955fc077441e4bb655ae8564a0b29e7b60798f6658a5350c765841f32ac09fadc2672326b86d7f0230753b1df39aaff2624807a960de12cfda34b643c37a1ac321a14ca6ae9b223d6079b102bc3ea7c2ee06ac9665985e44370302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fa5f78a3c92710f9e7395e14ec148c55ae4669df1cf02650b839ef0033f92ffb05d13bef973e9cb0667dfb04448b989502305115ad442b652932a832841b4181cc440eca1dfb320219530627f8bb2b59da1632e0ef5f87caadc280ed9c4d999f5b0d0302047c435bb5006730650230104a5b63848560ad7b8cf488083f12d70701456c2ec70aba8a7dc92bedf3fc4702da6b139377ad44a65d07745755f6b6023100918598936609dbac0b5bcc9a97d5cfc36064f04716ed242c42a9ce7220d055abc6746e468d575de4e03f5688a58472690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306a25f197e2c0b5a6111bff160239f91aa345fb34b1d61fc7aa8be62a0a585d63064c811459d69fdb7fb53802c60ea6fd023037c469cf7e12f91a3f9e0eb924e1ce66fd563f79a4f851d58407ad83af8ec9fcf32e1048e068d9c1ca7245c3501ff1270302047c435bb500683066023100cbc8596da0febca5973fedce6e248e41c0a5053678dc1a07583c176601bb21ea299e437d74e4a22626daf05b7599e528023100f4766461789d2bedc279764ac714890900b8011d58f600f3962f0551f9070f734f55fea375a101094fd1a67f5f0686100302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023004737203f3daa595e04c57a0cb8e34f0bd861ea82442abc8be7ab8756164ff7bff63250bcc83eea5f3dbbbc30b59eb19023100a43df094c9cbef407199d6c72a41d210e82e19db413e7a67b256cc3fe3811018616d8d4faec9e8822db911b9af7ad67a0302047c435bb50066306402302a637c6ca4431508a2d3613f9743108291bec85c08eeff9304840eec1b75cb399d71cc4f02dc337d97b6aed55acfbf3c02305e45c954d41cfd835f065ce53e1eed63e85e96e94edfd6782f26547434d8e66e45b3d7277678a2fd4b3e4ab2f5ae84ea0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304b143e62994a65edf426700346d1e9d3736dd2bb5b7ca8af733b5eb360b008fd48a493c773b9d0a9a4ccecfc01ac4f8f0230429c581377b6b1a9cc1b655de426d35d3f2cb031e994275fc00c35c9a75ffe33560506163a144874238c3a92eb1f1d3c0302047c435bb50067306502303cd55e9c3c73797e9b7827cb4682348aff8f2ca2d4394b0bbf35df345e3ee8b46975ad5e63a93dc91186fcf3caf9636e0231009489343923327736fbc953b7c6763d30aab710ffa9db9f8214d96e683cbcbe449245c2ac4a54284f1aea2d8eccfeaeb00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023028fb0c714d9e13fe2548e816a92b03eff39c12eb08fdbb69e4c358282d71b5d04618b453738da001dd04f13e48d05062023024d0358a24b9bd09751080055bf0fd6454ee80214e3ae38294795325c49f3e875b50c5e7f1468b589ad118ac08a07d9b0302047c435bb500673065023100adbb8cae42d251149d030e1681d90ad9262ff674e0cacb462f3b40ea13f40b07c990242628e393157194e773bc539db402301013b9a72471dd611a8644e16d773e76cdbbb2abc2dfe66991710a2732f69a74666f4acf4149c77335ed88f17674171e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302d10d796f250bd48f1c98312e9a11af2f0ce00dcebb7016ec7abd90bae44866e8b222e32aed607aab979816cc8637c2602301719f7ceeacd4238b032a533863eb61f97000f24fe0938c83950d53b2eeace3d64c1c7740afb5bf885cd568ef40354880302047c435bb500673065023100da8cb4c1688e99418d6c70ce779fccf315899697610a6aa9a8957058ed90fb5b44cdea55f9a0fb90744f03c84c642e83023010adfd01410aedead398fd0c945f3922188c84129ed9ba4cf1e8d1e6ee3664a684315defe61dec45e0a1795a50e2530d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023056c7241d647785aba35ab3a3e3cb8d32c365338612935e0072f8f1b7be1a1fc48963084e5892fa0ea6f94197f778c6a402306185fa0a025ff0b61787142acbe85757e3754ccad7aee0aeb79865e67623a9a0c6cb417e79f484e783a8190e5f7f150e0302047c435bb50066306402304d41c9cac9f97e187f338ddc8b3e346c5e17c0b68883ce040d5f9e2d13c4fa6d6a097ead04f14b475623f1ffa5475684023032fd98ffc0b0d110621026783279ceb55fe585deae31cb81156b1ea4af57b2910528d5af10f0e4d17fdf359811163f210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d3f93d4982cf755b3df515bdb1f6ab9670b81b9cc4623bc58148520d7286a6b04785da597ecac44145a57e77224c852b02307c0f2d6eea5e400d5cfa8f3c0884a8fb9c885d8d027654c5b9a2de6f6a3006296542afcb0359f54f9ca9140759dd041b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305df5f317e0ec0d62e47d132516f4219216376eddec6bcf8993cd76b5afc0b896deca6fe0177abe539cced66bb259bdb0023100eb42900e7219345f10a173b5dfeb135cf0ae97ed169c67da87b99f3605eb1b859b6460ead90bb64dbd5180329bf9ee3a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a81cab7a1b600d163dde45e05710b7a5fccdbf927be2c03ba57404369463c3df024520021a53929999430aaed78064a4023100d28edecc7c3476e72cbd0088fccf54bf876aa659ed3031c827b5a5c0c0cbbf74f7ca809110c99f41652608b29ffb15a20302047c435bb50066306402301907a539b91ed2e32b668fec914ba104cab2240b5b8064d4b7d82361b01c3c8d5c6a2e0545967b8b942b115c5926420402306401dc6c887a29e41528ccb31e24daa50ddbcf98fa14b447ef797436f846ce3c74d834299d439203f9e4929c4b0668370302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305c6bf3bca11efbf3f1cb08d14f35f474cd12e79f84fba73528d8a7cff275ca929e6bbf8a218017283767ab5ed3a2921802302a33543bb343fc86486178fa6b8a3bdaa671ac31d9859e4ab1816e657fc6b10738bb9041034090dcaca3cec3a53988930302047c435bb50067306502306c46ba7bc016f9630140d0a6916a0189eea794336e10a11bfb30cebca543e665ae00827adc376c958a4d065b7b42108e023100e784cad535ce069fded781e45d2b6a44ddbe17e92f4b4474daadde1f6f40e739ab15f1ac7120e34b6ccf00a432b259be0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cd4a05c94254fb7ee3dc12c7e229b6d548a64f1be47b4a9403411269ceddb7311505d00f8897b2716e9ea52bc2ba651e023100ef12aae796f00ac8b2104a9fd819fa702c455128c15cdedd61795d8ade443bcff2452e1ee26f3f6a27e412f3b4521b9b0302047c435bb500663064023100c02c2d1ed561500a378f11049229d18539888c9fa9f8d2f0aa22184ef12f862c14c7d4b532c666c290cb6de73cf2ee91022f35c3ad36f44749e7ec76bcdc2398898ff43d7355b39f3fd86f819d0585f4790b961558be471524a22cb5a8b4cf79980302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e1ed31d0685892eb22b8efb3fa4d8df22d08c21e8c8c22174374cb5bd143911f75f26c5c6dd715f00fefb366c5a216e7023078ac23cce54570627e12536635a49ff8bb0ae4d667730ca5fc5a13b3b1956aebb5b180fce2f452b3b84d59efa2b11c5a0302047c435bb500673065023100f94cec5aa29a3ad66666598d739df35d8b534add02c10b23b6e2215c0c4a698ddfec5d59cf4a363d6118f3c8afe5554002307774b21dfebd49489ab4a97f609abe57371f742398589f5bcc10fbca2be905f7baf34844cf0876bd1a2382db4aa0c55a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b0d14dc9fe43be11cec926ca5a44901e1b0a05f2a0b5dc76945bbe7d7643c0c6454edccc6fb11ef09d92d14e179e5cfa023100dc96e58a9c4368d3235284e92b4092fccaf73b3de184cdf8cb905f8f3ee6e8e99c6233c8b36b40b6d7d7881e916e85bd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023015b98f28e22e638e973836d11a3da7fb05bd3b968b2de22414c4b34b791361a861730ae90ba48ca29eec891f0b305c63023100863cab79c00051e0123d657cfdefca36d5beaaed16b7863f81188e87a1eb4eb639e9a52c3dc99d75b4eb435994b18f550302047c435bb500683066023100e0cbfae0dda05b012a40399fe64a0a607afd05b4099ff65e95f23449ffcb1b3ea34dac85f5d1c44c760086d8cb17f9050231009ac96de269220ba11ca37e9494a67094ffee622c5830e322ffe3671b87649f1d8dcc4e0703586d4c54178baaf789903e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023041c929b1970511e9e5d9805cf5b64df4c75f112fee394dd21e9019a010d294679f0e2774f563c492fcc6b62bdbec96e5023000d660405bf2561b971c0791fdb5969c365687268a04b436f94aac511041ee83408c987f57cde37efe29a6a581d543750302047c435bb500663064023023b2f53d071357c53123f1311580ad9863d5d2151bf74dfb86bd6d24f47e5ea97282b74fcbfdb28f8dc61a7686db8a11023017c42aff20aa40facf968a8cd60870918b82d78defc07e87e1e2f17f1d9cfdbe279629624d82190436d0b4ebb7aee5f20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008d1a369000574076d49944c284bf185db63bc793d1fb7e07f8c75d7b51ea562782d5915f1052d315db578e54abd1b14f023010137437080ab4a56330eb930e636015cf9c3ccebd8f2b1be4f7736bf8f4f852b80b4da21bbc88050b790c4ba498d5ae0302047c435bb500673065023100b767582597733f3b68b9cda0f8c89d397bcdbd0e26cb85300c6624d46a5a944ce1d4a439881190665a6f297a730d1dd502300f4f7a12f90e03103460dfb5aab68e943ef6269f4bc31d4aa50d9952c1f00305a23fe4288a2f3b66a378da43acc0bc810302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009436f2cc084e0a95318284b570b9528fb24fe2dbc7f43372ba530b7a44fe8e671402ecef1ac3cb96ff13c3ac41947ee80231009e66d4dc7da5b9b4cadcd8d48aaacfbb879252ba83f9a27e44c40dc41ebb8b93d61e7877e3017cf5a6185dc5f263f17e0302047c435bb500683066023100efa2d26c8a30b2563cc1fdca7c8d0e57e6413bae4c63d2205657d569bffe28349d98129623ec915a7fee63814f727515023100e9f69c7089763276f171d9f88e53f87c258528587af9c94accbffe642021d0c3c83b03223074b6a54177314b85024d0c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310099565c436461ae385134a06dc8cd5311bf413513b75f4aeb4b10f5fb6e25696567cf1a4ecc9af7fe48a03d5cf7750169023100fd6395d202e5ca6c24b6ac886981a0b24ded0bc0021e0f8013422b780030a84779abc222fda016c98f6a44818f42df210302047c435bb500663064023028270f7173e283d719f50a2d77bf0c7e8e85418b06129b239413504a0c03401b7098b451be69f857c1ac54b61f5ae11c02300ac99bc535fbcafd4115e3538ecf2a81ab9bffd693d85c7f62adfe839dc722966a75948c15298c606b9447a46722bb450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230642dd8e63a5fe34c0ae5971ae357f2d5ec2729118be1f311699be664aa7675f99aeb48238513c0c2db8f851978084a1d023100a6485b744b09b56f6f10cbc491d910b8c86a8b1f41dfe0f907d953dce96c52fc5ca33397867a8eae86cfa81fcf1db65e0302047c435bb5006630640230159fc74186dde76638f9eb83b93973e4f6ae40ce1a755680f200ba31a72a52d170e764c905f56af5c3704c6e2f2ba8f1023003d0ad9a365b06847f8628e9773289b6a5aea4829306bd3501dfbff6cbf5ab3427f40332d40422363bf3a14c684460a00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230732055da7be6f1fd0bb5e5984c48a99087a4f7614e2eeb13fac68da135b73f657ad7671d07edae83748d67a86228d27602306104f53e42ef98372553b4e9b746866a429ecf16486b7b1f6cf39029168e0445841c16a16eec77b98c0511e5e8fa0c340302047c435bb5006730650231009dd81dd1da247ba7b29775fe51828f472c3e62f900d6b9076ecb722c32ad2d2ec38efd9aa1a6ecdeb65801a12fded9b702302b6681982182658669f4bb20395bf34ece5295991082da64a5d298c62ffcec74d1fc3ac370e265828584c5174b8d2af50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b460e277dc8fbc024a0c7a5e00a18ff9b7a7c40fdfbcb79319c652e3d1ce6b8cb4d50e89f4c71782d499088ae292dbad0231008e8adb05afa7e568a243c907828b9d57f322181a5fe2260a892992cb731b0860e084d32754c296e770763bf681198a170302047c435bb500673065023100cf9d8ec0ffa2f442b6b80ab2b1c6968fbf1f0c180295ac1b69969cdad86e7e271faa709a97b43bdfb862f51a1a96c3ca02304183b98238ee20c0f910a679d5e669b0d13155562698364a88be40518fbb4f9b9cae76e199e7b9ae2d1c126931d33e710302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305c9fe0ea26d7dab719872d682fa7e5095f928a09e480625f3d36e6811e19b624464b97d6366afd2abbe92bb10deeecbc02306696f491c397c37cd1b21b1ab563f60417aeb8b93c21c5a6835c98d50224f1d86fd1c69977426dd7ce2b8d22d207c4320302047c435bb500663064023057a0b430311866b0bae28fe23585c2ee58811b2954502098af74252f2d7b64ae9b814f281cd9b54b85926cf894737400023030c95d41573f0472d9d5e58d3737cc26ef7dd20ad230da61648e3e258c912809e61e90b73162fc51d4acc5dbf3041e700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305107226e8cd352aea5efcb039b397ec0d4701761692db001e5220035f6349a2481f8863f202b93061618dce149624463023100bd287d449fe951794397b3d9c9afd0c0164b66d21519bb7e687f854a68b8f4dcaf9a2f60245ae006ae77ecb1fc23b04f0302047c435bb500673065023100c88a365ad235179390d24f66f2bc4636e59e2018b9775e818d057c1beca6c03faaf67de8757139ced147f4203bd9d53202306b53fedc260c385b1fc183cb27acb3bedba6a05936b4bd8858b1e162799a2f72338312992a5bf9dd8379f81c5b3d1fbf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ae3c77da05053471bd3ac858b15426ee468537e37b4fe7c49b44b097b3bd7d542b6ff5061dba3b1ee35484938b993a930230385b0b078ede243121f7aa44bca1a245d830b85dc6a0fd874a7d0f0be00d616586f795d5f359884dfbd3baa1989e80c00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100934ddc935b45e171134f8cd382f8487e508fccf80afb1c7d0a517ba773f5eb4bccac0e3330e79beebf63cadf879a72bd0230194866017f323ae65429d84e49dc8449e5c1ff24f9b6ffa6654fddee9e867bd9afd1ba8d5a52b4d4e7402e5a8058afcd0302047c435bb500663064023063928e81eaae5a51c298ebfa18137b4dd6e91c47b30d5a8fbe8a5520b7e00892f895348941491c7ee7d7cba09bc90387023007076dc918e4a39f3c2b4ba36381a41e59632dfa22737838423cc364562c590c233a1d86bc96613bc2b4418de461795e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023060ccd9122b608f30cf7e2e6ad74cbb607bac43884cb38fcb6a3198b0425ee4f3f026cc84e5ac79b293e5df7e4c11104402302c41aeb18fccb6c44e8296220076bb07a76821a26df6c2e8e52e679dd4e3da36874b2caa503815d7ffda77ac7265491c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307a903be82b32d1d0995d8b33d487d3c318b4b6efe9740af88b3fb5b9e925fdd51586f0e2e73d06296ba34647eeee1147023100f1c8c8c58fc0923ec33a12fbf9b62ffbd304558a81d8cc17ea9d5135f4d56025096872c0dbae3f9210bf413a698c03680302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230039ae0dcdc6e6a937e9157ab7bc773b6c53ade8cc2b3141f8d96146e32ea858daaedc2a8e5099e0d4415dff9a3c14fdd0231008d2d797bf1498f4cbc4491feb4b42884016cd415ef7a9244a117eb60ce85b69308a655fffc061afa129461ea9a5dcf7f0302047c435bb500673065023034efe4087fbb5dabeae14a0b47d21db7602969e30070192513d3621656583a15d016b33d949edce8b0823bfd6393bba0023100adedcdfcf1e4fd2819e83ac2692d95988c923723d63d04e87c81313c65d16f27822480ce3bac72cd67d44e367efb2a290302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f35215e064a7534fe3d1c6bd260c35f2dcedc946641f27b9004ead66be971ac9197aec7b8902cc8eb34f65b47b8b5d6f023100c5988a33d9c87d69d744d30c42a1735b805ae055b19f0b2fcefbd221314a5c6e26a746a727e6a7de857c636fb4a299b40302047c435bb500673065023100868c6fa6ec79dbbad685badb30a1d8a9f9d9362acfd2b1d685010a3e0955da73714569c2949e2a876587430cb9163b7e0230573b742aa50feb318545b5786c993eb0ff2c66cdfd5b00b8b631bc4c6c47bf2126338d9cd68c6d8d6f94a7f8c64eb7690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023036dd0e31538a5da92ae4777193c0aa1124b6cf3e26f8d9611b2e9c7f537fee520f3014ca3a3c256b85c3ec0fa0644efa023100d17587395479e8005fb7f8ba91a148a5179694e06f5e6867ac070d12f4baab05693ff98fc5341094e0236682cc6d96830302047c435bb500673065023100fa6a481f7f28abf824dfe67beec0216c9ac8fcfae96ec13921f026b1a7fb774ba9359dab202950aa0ab50b1bd9697a89023078e295e6c19ae2dbfe72631d38985b338a2914e2d16f31fc705a3155fff3e27ac7be310213b8505b5e50f1ba7411e0a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023042506f0cec91c93f5d567c970f3d5c05ef131443fc932fc960caed5aa8934b1dc61085174f8eaba4764699f99e4f0a6d023100b6983ed5ac3a6a85a6c53004881dc8056ba82bdfcbe2a556c24d7e88a5303cfb7f4d8ba7d6df0e6ad8858737e42ddd710302047c435bb50066306402306eb64a578a354fed5ffe91c7e92cec2cf1171021d5673491e1b76c67e93281b6aec3ac620302dabc36ba06d170ed492902302268d84e3028b9570da538746d1eea7b4857688f3ed9c1e9d58aafee348392975ad3f9978f8ec20f457ef2f3a9c1dcdb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230558821cac57250b485bf6cb7f26642b8591b121384d5bdcac35b19cfd42325c77b5e0e94f394256b85d1546974be8612023100d2d6346758ebb38a4bc3158ba4b47196dbc868512ff29797a57a417bf00070be4b83709e08946c367225091dff2dad570302047c435bb5006730650231008c7841606476dd62bccd0a945b545ef7ff57bd08cb80d11d7ecc602e4db83d1fdce67bb5cb72283a09e137829ac2bd400230396b7501b307d63e474ed7358d9e5b94690280529251d4a1d263d3927e354601a2854cc1879b647bd076e6c9de0b173a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b6de2318aa5ec2e5ff15cccba7905362e40b3678220214010c3f3034470ef0d140803bcb587d9060f78d3bf945c91af1023100defbf2fb31776582d8fd38597b28b4f713103409df6c785779b1809cb8433bce9f6283018b4399f070056d6f541160480302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a1d66df096c7b813c0acd477b2ebb01f3c54e53276def6bc2c9aac82a3f78c8c868130f10aefb7019b8287b3ece1edf902310091a3989130a34dd25f089f95929651927f7f99836ed7e9d491edcdbb2a79182ff4391dda095575d98aad484f58921e900302047c435bb50067306502304592de97c3b3e924051e64f53c94d5416493a0b2eeeafa1c421fd760a3d2ee91e5aaa20bf3a36eb4bad715680d87192d023100e4c1dae5a6bb3d33f00b0370b2cd50dc87ae824852827d81595b37e797ae50c7d6d5d0a020d3de26910dbb21630bacbb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023025a90f5c9ee877474e29be070b0f766f5e7040a50c125924fad98cdd7d33cb1b8575ed44b74e35aaf6ab63b5daa6b280023009be2b10346efef21bb0079e871e5d03a22ad9642b44a7e9e793402bfbb7e30cc6b928fb1d7e3e3b5aec4233ec368b2c0302047c435bb500673065023072af3d578ed6dd8a8d2445786f0dad783161810d0b25d9dc9e2366942a07be822cf8cb1b528b91271bb8d5c923bf693e023100c629761c2f939d175d2eddf95986f8acc9634da44466c58572b10cc2ed452ac29c1d124f74334182d3b9721ad39921540302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d0f44de4382133f684405065509a5dc49fea354b54e131c836d1d8f3bd3f8df95c654bd490f2666647ec8087d98b5c8c023100ebb26c99945dd2fce8bc4ad1a8381329039a2e2165aa1306abb2e13827fbdeafde7604a75250bfc66d1333e0e1fbcd430302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303cac172e7dacdc6155e3537f8abc34164960c297dbd4258f67b33108f2ad90996dae6eeaa621c49cef3ea450eb0475e1023100f56f62695630f6857e2d8e63587228a8377b387b2406a31ca552b5dec50259c9ec59e379788992a8f3114fcb94e3db1e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306bf949596ac0b696b72a4da2f6fd75a64836df118d575bc76e169d79bc1354bdf74677d81ea0a5fb1dab93561662a679023100a6d3150d0d0f0198a50f653cfc558b1cbc1e2181aa0aea9e1bcc62f2b7445deb244ac7bdf02e951aed009bee0f1009d80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305e646a9a2df6a1ef2ec71d2603e82398ade53b9a2b011921b1636892e7b919c3e9d8cc270180a5a1d3182262aee82f8d02302a0ac29f533971f1de2a3cc1ad09ee78b94d1f7753b51deafdc5a3704ec943fd0248716ecdc6465284f0bc10fe54252c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302877e8d84443d28c0f5f7d909150e946427b0afed98c6c13c29fbe3b428601bfe636760aee1e223e669e8199ab4c11430231008d0452d88431be2f78ad4905af27276b859b56781fee924db8be1ba8b7a25c6d2345ae3552fdca2029700ffcbd2e98810302047c435bb500683066023100a38ac9c73fd09eda1e9f20ad64ff97481b79a81a5f9d5cfe6acb90f19c61e4d4a614a1123814f1d647433d22d99e66a9023100b85f8c329b32da5f1c720f7dfb6d105e094675ebfea74bea5c3122805068bd265e8b6ba1429ea1a3480b2d0db3873e260302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230257350ffc4c3d4b4439425aecc13aba6efff02baf1b99f761c78408fd2605d9609cbfaa41073dcafa55f59c5f0a90d25023100c6cdf4af3bec4cb1de8cee10dd987034efe6985fde080d97812c81c824efdcef68f1bd4a8833b88e46bab239ed33a70e0302047c435bb50067306502303e425ae28acce63a718ad750df3e3aba351e33f851c8443cc766951788dedb195b6833f771c890367fb65fb8901c8bbb023100bbad3620f7a28459b0325fad3406d166c81e836f47e916b3a59325fcf1ee60ed6278e9bac620c454e7e640cc1405a6cd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ba01e83b57b911ade861c6ead11d4d4e3a917577b662a6308dc1cf8d7e3f5ec49f824497dfb06e60a91cd84dc878c789023019b58fd7c4a92e7d4e6be748b065e96dc84d3b1117d5ddbd8da48d728670edadf396036fcef90ed1d89a0b3b9bc779160302047c435bb50066306402306e4d44fca93ad58a79faea18cdfb2913184a9c9e8231ccef66229cfd83835717dba06adf784f4bf27729b4b3e442dd2b0230637574696e0585e1bea21074ad2d3e9ab55f856f98c961d34d1be10171747ca98be314ce2e1e0667fa1191dc3d7599a00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008be7ae67013234692c21f09807e94cde3b1a59f9639c4f779ef6c3450cdf5e1d0f219b72af67a1fd6324e1a63dbb5b10023055196a7e002b8a2475763d3557cc34218135de9b253d5ff139626409e4356505da2acd4bc4dea8d60342aa1f44059e580302047c435bb50066306402304762ec71365b7bbc614069e84dc46f491959a6544a152e64a846bdd6c4fbaa5070a38e13cd01f07784e64b7e8f5080fc02302b858fec33d16bea16dcfd8e76d55c3f1d3dab31a7ef751016bf28f7784e13a3b13004d070f8e42007be2212bf5a57220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023008b282937d08e05d784844289d48ad1541867cb3508cb6f4b6c99a84c985ce3e5378c2775ed125b34898792a1ee953c3023100e08c354516512d51bbf2e684726ede22128bb28d6dea0642e9b85739c1aae76b605f32a59ba627b1f7aa4d8cdb488a920302047c435bb50067306502303fbb93217cd15bb465f145653a42177b9321ee155196436e49f30d70d631a4bb8fe009567d6b1d806d7a8728fc079ea3023100b08825b152479882bf20444711e7175ec50fdafb42082aadfb0bfdcd0e57f842a44e5c42db0ad68548c98e3bdbc9e45c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310092eaf9b42dd29b8c694338f256e40d2822acc559ab68b91061e91d792ff62b3818bd49664ee6833f972c8a5ab7426f8e02306b98f729d9adfe91b5ac450741f99c2f0402bdb47993b9cbed840bd4d302803f72609e5e88935d8630ed2da638b4db740302047c435bb500673065023027e3f21b409ef112d785caae72182a7d232e14a6ab1c2835b52753712f0d0e09771bafc177960d8dc63385ac6a855564023100c3def1b13dfeee82246fd8e618eb41dd6504fb201678311250fa5fbb46956e8cb2aa92999ba807b9e87f9ab0c9ae20fd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023020ee09f6e329a221a59581bfac150315647e21ea554c8063302c3c3d84e46424624bc499c800342dd2a602a26392ddcb0231008da4ba258d2cc464d176cc431857390f99569b8bb32d553d6030e71867bf12ad4d399107696ef5419a3cf1cbea1302c40302047c435bb50067306502310099f72161cba66bd07050966c36ebe27b413537e5368a3b221f5a398fdf06c0a3d5c4220bd94f31697f759c8cecfc4f2d02305472f0106c487e02b9183a9382d664735df6c315435dc370787c71fa31b5ea70f5fe1037a6da65ce433c433d59e9e5c30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a914019e161e37a191f29fd479ac301684d893284179864454afbe53067e94d610441ba07e2fc0343cfef9e49014070f023100eac4dde1234e2cdda45a6f8bcafbe2680da4c70e945cfb9851be290cf3315b1084b268229df9b9a25f981572a733b29d0302047c435bb50067306502301ee4bf41e8f439ddb9c7ced60921c66f39104988835211ce909dca494d328bd0d2fa80f702399bc66f6c257e2918151e023100a38d046a7c60d8b4611020d74d72e668fe58772b22507c05f47558fdee6f04f32b0ef89651ae2cf8b4960900443a0c0e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310081d0b39525db80a2042cb3a02f6aefb5f46dd22fb6583a6c0380aadc1e8459550c91dbf75cad3e0d3408c65eb63f2c1302306b460d019bd6d30f851851d13c8305cc6fb10ad0793b188b75466204c927493fce34e0d409c59b34de60bec1ac0bfa2a0302047c435bb500683066023100991216085e7355ed5c43c6850f02b1a777d51dfb78c65055d6d19d632828eb26c6b63518e1af20c64519f4ca42761b03023100b2ec58a09ee5afc05d2a2033f347553074a78b138d2622156e3f779a682926a5d21d5a1df94b026ec064cc230c2355ae0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023045cf1c9e5ae401a1d368a6252f5d1dfe94a483273ebfc368b1f8e0532b77ac6616168e516e75d3cf4d55f915fe11846c023100c99099532fa323b4137a0a450db4a7c19acf813198cdbac75974a10a2bf7dea575f11dcef2dcca2bcae297926d3d46650302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c303d250ff29194cfdce97f374297fcd1821988e5b10f89d1f68c987b441fec64e8551754d41a7b1d2bd516a92afbb270230487d25150b9a4e2bc8fd0e465cc7ddf61d742d1f3a5d3dea60d5c843ca8c16e44f7d06cb78c9351737e377cabfa59cc30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100db5cec25c605638b8d38c6d697c3af288e6c1643a64eab3477c6c933374d5b0d5d34d58b54a6db628b3f5dab182d8d6d023100e21a09643aef462b530c0dd6029eb0893f7c0afe76f7c25857abafa196fec4b7b882ae4aa9cc22d1924271726b1bb0fb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100dd3893159eae5b1c16901cdfeeaeb0c39dec60048609c193ceabcf2b1e5742a39f49bf3fa02e16ba09c5b1ad37d29c75023068bd659d8206be4ca738d710140c387d2b05a1c69964414808383cb8ee0dd70a6b4c709faff99ff0ed519960b7a35fa50302047c435bb500683066023100859c28c26fa5899f3b4e7320eefd706af6fc61c9b418250dd3eb37672cafa3f8b25527c9784f4f75f8610dc26934adfa023100b994904f82326d4d25be9001698e9daa04a3211cead03364417e25100526b2c0dff3f6c4b80cffec223732daaa0b9c890302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e7b628abedef16d14651ff781e69c95d605027e3599280d137625fbd8f15149d424b5e4b32195ba27d8d726b34cf9a6302304c577f112fc1d1d1eb94b75a40f1d3c3a0ea196e77ee487744278db509df9ba457f4c4c9118eb1f9dfdd06a68052b7720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d454418d5d944ec48539fec3d7fcc9005f2d7ebb8ba76dd911d2ee6e5277bc98ae6577221ddae0cc7b19aa4aeb0deb1902307229f4b1fadfa1751d337ffe71988f62f693b933ad716aef66dd2209abc4a1948a5f403fede5c38de258b75799ed106d0302047c435bb50067306502306a48d1d5d63df63825e344a09e91c1a8033d1e31973deeb51528b1012b6860375ca14bfeb87c5c49c856ef2ed536dcce023100ba3ea81c960a3592a94c4726d1e85f355cd967096f323d96dd966cd7e3c9b4e4613cbd1c97ed77b03d79b8a24cee07a90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b7d2e3575c2c00854c26c45e4889301addd89d679a43bfe554e2c283a2c6c7182aca6097870da575509b3148c5cb37870230743d5924f5de2a21acd37937315c84265a18511bb3bbc20e5c0ba0063277d632005070add745ad92b6de743acba0b0340302047c435bb50068306602310098f8b485789adb497b70f64f093d91d47c4e683652cd29252633dba0751fa1e8560803d6696b66e05bd7d2b96826c11c023100a2d2a79c7f2a64f7b7dbd8caa9ea51f336e82b80d44041fb51cae6ce7563f630c25bcdbddcb3a4456c1c9561dbe538630302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230636f705f87369dd5d6e8dfbae1cb90a031e9de2c3ba4b919231710402af9f6dfd66f0488c5397847e429020d3c1c09f6023058ede2cd57f69f465b0c997dff5b884a5182c886434471a172b22ee7bab2eb5aa11469649f7ba7ceeae1167f889ae32c0302047c435bb500673065023100913145d6cf4b50a29eaca78b565eae56c80eae34c992720ede0df4cc12f6fcc434b8730a5a4d27a1a5752c974b68786802302a165ee1b95835d993108252d8626232a7b17cb95a8874ae362ec755adbbb27ad8c5a32dfbce0b15f1379c87fc5160cb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303d7217ddcd2c5c85984a4921b9a22f35960abfcc9441d960e978113d6b9dae58552e0f6f48f8a3ebf8c1cab1b25e00d6023100e592728da7e2e113991c076b96dd32b90fd10b18e3b7b9d1d3b086973c59b0d2fee6b9eb7b58866a3af65552b86d96b90302047c435bb5006630640230757da7dbaf7ed2eeae2c567aed95cfc5be754d2334feadd3245ebed55cb118cc1db888eeccd864d6b1c402d3f22cfa480230333f64963b8b151ebd1a63708ead306ad01dc95331ea879b3db128ab2cd26d431fec0947563a7946ae3464b21e7fe93a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f30d13adaaccea7f094943f8a31179bacbb10f35434d90848a14bd5c881cd7d7b4f295396b81ef1290747d0a36eb5001023100b6c411f62a85d578fa87dc267c3a0998374347a157e0b8009173e8b7293dfb2786dc469952c958e6005200c9d5a782f00302047c435bb500683066023100dbf8bc6b3dcf6d2c1ff86201b217ec82abb7c1980a5c2d013ea0032d258eef7a66d0b3108eac6af9843c2323fee34655023100e09c2a37b2257b35a46dc1c855f1e0fc41f56c5418469745b3ed629d45b014c8e2b3bc25b9f02832648e7abb32eaf0830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230554e4b18232904044df8aca009d6d45298bbb36a8fd4011907dcebde6cf63e72167596b053ac3378af26bbfefdddb3f702302b06ef6160c85af3821fc0f2d01760da401785f362ba720dd91e8b34058d7cc410cbc95278a374fd3a968e91335687df0302047c435bb500673065023100dce0bf641dacb2322fe48000e2a1ed3a04700bafa04315f27466eec1c63637044f01a8d55dc1e089863157afeedeeda902303c4d4711f4b19bebe21202b3d51c8c7bd74c7c35e655985a5cedea054178222771c754c16914379b6075e68cd1d5fc540302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cbf1d00e15771ce067a6ff1664e98be4c558d2d641b68ebc4548016413ef637e377a7cf6b826b09995038d5b98d889a20230158a864d4b1b05c8fccd4a53ba78e70294d3ac5c8898422384d78de7e76a977ee300ae377636fc8acc174d1738a4bbc30302047c435bb500683066023100b314ae96bfa8f50ab174822dd55f0a0ea04341d686c002afcf041caa773b5b23e472f584ca97c19fbfaa15b3d44e6c6c023100850e5e7b481a26a46c0a8be755b611079ceba4ef94436d18003ef9516e9f82e05d457b611b0b3000738e4e91ac90313f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a004aab49143723f844b3977737339c9ea94049762d479ebeb5c53bbc2be35fec241f1778bb650fd9ea551b1adf10fa90231009594cd1ffec65f707a2fa4647b8e58f940d4bab2375c741f508d826ea22d6133a1903455030bdde34c8571508669d1310302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bd10310de3cbbd3de8e33de836d5c66f24ec15999d7d5562519556a2ad900b2c31c82d69a38024138d46b0aad942c296023100d2acd6f5a5ba54448e97b95f3dd27f0dcfe1b4a4163549253ba41d78d99a25e82327fb06b7a9194ab8b56bfae1491b7e0302047c435bb500663064023045d0f90b19503097af62205ece692c1ffc81eb3007e1b846bef0c829684cdb837b957090c27967f1d3c8a3a7755d8e76023048584a12eee8b6120554eb7cafd897f1e9cf7b1f45d304cbd8bd504177069b20d2f7f428acf569334d35aa079ac0c9570302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307074876b459947938a33ba86c1dbcc2121857534fde7e78c94e48363757db0af8aa022db52ca63452f77bb6ae337ee17023100fd34475b21d9ae17e22c79f714849edc825b443930aa35aee8fa0cf8261a407c64f307e0de0f0c7681e8e4fd52fa2c3e0302047c435bb50067306502305e601ab2cbd81b73cf4ccd2640885cbfb64365b872f53b685c44482d4d4c282d6e353a08ff9333f74daba55f967e21aa023100a0fd553e803ee2fc277ac6c7e382a6edb62c864b2eb397d783d270327f4890904ed75506fae61f4b0a003b48f3ec9c560302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f3213a8494fc25f1dc37aa962849f194b0823accef7a2a0939546b1fc752e3c427b688bc60f4e82c2f129576523f8fc702303408966609c688a941dc28c9b1f6c3a2163735b4ea1202273b75ce622efa1263a4414dbdad658fd7f04b6563089d61c70302047c435bb50066306402305308b48dd1888b81274f0fbd52c0b752dbdb87f1222671c45abfcc40df0ee883f24f65b4133722ee7b8d24870fb2b310023019ce669a20b4187165777fee248576e94f8f60d22b9fa14cb9a9508dbe593dd093a1a77463111bea737f820f62acbb0e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b7d4f5833e5e7f314c47841112d65a7bc93a95df238088784dd974b700aa20afc2163d022746fa8c851c17d9cb99d465023100d63e4ebdc8a4286e55e1e40938a77d8736f3b4d16de9911efb7bdc72f86ddb1b5d695b5a1e4fa6c36a77eb94c95ad55f0302047c435bb5006630640230040f3b397dc03feb5e8e817c8a0af30cb10fe7a638c3aeb49ee73085dc78e78d62cd87b41e690c6babd9cbe65bc94f6b023014567a1fdf277ba4de61beb24e78697bfcf48a8efc8a41742edcc2eb86ae373e4e282b5bc359a23a51b482c85e13c9040302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023071edf44dabc9ac67816444d2329934312188ce7117973e2cb11d720cead82e0cce88224e77a8a6e496e699a60fcb47fc023100a5ea0b59192cad78a2463110a1b4c9c5027d690ac20e82f1ee3308fa6c4b820cfc2db5f5d77e0ec17fb615786964224f0302047c435bb5006730650231009c7f596ecf6f976642ca193d52fb357cc2a21d05c43cd5c0cac902fd156ff208b8d73a6fab6a48e4c7a73625ab355b9f02307d5f7ad02d534a56f2e40ad9cfaa07df79a3058ffa7337a24ed980c788bc8d538232ff15cbac7c965ec1ffb74fc9f2870302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009928c9df87e8072e215ffbaf8f2397a94e23e37625447a8b96b13ddcb4edc3fec03a27ccdb53f05ac49a5f9a8c0aaf1202301fae27cc6d212e14275839b1e16133f093f50bf7677f28bd393a19a65a152f1666ef91e2cdc52436e29496fd781845aa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a89ae0394e4988d8dd32215149b916ee6cc4cb2b249137d1b2ca77cfe88211807052030829dc8a9783b8ffceede60e2702303a30af1402bb771b91b1a767f402265303104348172be4a4b73a3a1bf38cf51f1159edf509327c0357766848384e0a120302047c435bb500663064023064d031e5ddca171ff9b583bcd2555b1c547d557ff896d87705f70dfa407e3d8b56ff6f989caf659ebaa7750eda78fc3e0230698f494f232b33759d38bf9bdb654180800040b9061521fd1a977491a2435ba67c243d52277e72b51c0945b6b8e5b2450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023035d61526e9a660d88c8904c57ef2b423984b7bbc683464f07f6424e4887f7fb9c0b1dc58ab5e7b853d94ea811ce4bd4f023100cc5dec8c58d8c3d6416167e788a1205e21cce1adb6af2e251bf4d62d638250fe69c9c3f4365aadaaffbb35457248296e0302047c435bb5006630640230083c1d264fc90902221bff1d65c4f1e8e1ac043e525a37e13a64f7cafa8e9fc56216157a21fb9abd93a4a2b5dca9310f023028a8e9063515771b5c3bfe911e980ee384fb49e1bccfa8119c94e40a37a1c87ce0fec578bd87f2871f5747b8737aaa240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303701548a0b49f0533c3e951c63af8082f2eddd6d7c2ad4aa34dd7cd23f8497b21beed8817e25d1dce74ea725c18185a90230281184222e1a9b51283d5c2113145b671d498aee9258a79acd09f4b72621e32dcd816bc8d490092d4b84ccb8d53671ef0302047c435bb5006730650231009d40d669f7495485ed47af945c344ffb902269da868202436c4efb99b52e4ce4a12fd298914865182d548010dd3c10f002303bc853dd3d78f4868dbc1956c911a56db640e5e58755e5f33e7022c10d27ff02d7c25987a2b95a49ac94fb452cd4cf6c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e8f2fd69ad69792acac4b7af888a1b9b176fcab737a43ac29d5ef02903d25d8a48fb4feb918d3af7832e429e16b73a49023100dafd7542b0c6f9890ec1c959046529383a0c32e9e2094e7321752b6823b445a3450f8dbdbf1c5191f77106c4465a9ff00302047c435bb500673065023100ecdf1bfb2e426935c8fa84efbcdab6968756a79d6e45aa65535297bbe1ae0935b686d25301f13687bf626f6d48f7e6e902300b2fb785aecdb7c9a1b530a34bdc355338ff65ea366317504d7dadeb81e4223f685447908fae49d9c7c6e8fc899629960302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301c9e5483529bfdb4eccb1b68d2a86f8b0e0cd97abf071432bc05795454b26253176313fa3308cbe15340d4c1ff9e633902302e62c1f90cd935d8546fe37f0c87782128488c99158c521a0c580e85c41a32fa379ca257d4fb65c092e15791304defb50302047c435bb50066306402303797477f7ddad3fb0b5551ea268056bea1c0f92d78dd11e216e86ed027e55790a759444f1bb382ff0e14a51165c7348e023005200d63e2978065003fe5fcb88eec7c033f829980d797f871d72e1617560b88a13b8a95f5bfd19d74efd805237155e10302047c435bb500673065023015854e0e515306d966d71d5e52acc1c4207aabd11ce636ede638df5a462c993104d8039847742f83d965bf9e509105ad023100bf38117ee98f738b630900c289d89d2d7db2da41a9a9f0db4e1f3d49f4b1696b4a960bc080368f22176b0720408953d90302047c435bb500683066023100a9b541908814a8036001c299ee60fb92a0a293af3be5338277b10fcbfb1585a1a40d1cc77dd72729276662d73db7b619023100c3aea5c283bd08b89eb3d27f263cc3b6c691e966d61ad2158bda0ecbaf470847e3f9de760bd64d7dac6ecd8ffe86c2dc0302047c435bb50066306402303eee92dc1c739179fef6b09161f3db00f246b47e09bfde3728df415f09e5b700300a7f2a809b6045e45790ca6704dfc8023013292ebda8e1f543bf258b28016de83e0d07f2845bdb8a74f35d8b8cce31df1abdb56574c7cf57a39a9b25025122bcf70302047c435bb50067306502306f0d1b2f235dffaa14b9e2312b401393dd2065178c914c665e64d618444d9f525f1754147dfb2c7dcf2867d249473abe023100f55a6c86218f5f8c1aa9f2b5a4c4f9a11a7198e180f6718780aed963a618d18236d6b1258938ad872d16cee57ff8b8ae0302047c435bb500663064023028c99008a8663ba965c3cee94c54a76a18eefcde4da6fa14cc63edc46d545244f106d4c40a504f6a171faf436e32d442023023bf3e82b25300b8cbaa811c506ab01c97dbe617aa25b2b4c7b8ee433a3717f8874aec486656f63795d09ac8849f38830302047c435bb500673065023100a202a38e391c7138929a82dd377732727fa95ec2497887b24c621e4a3cff3d0c71d483ac56625945ec1559dba9a2ce0802306a85be911f0dfb6b90b60cc7f78d4f89b29d7e4d23caa6338f7953ae120e8fe7e83020810735e7d4e9582074462ecd950302047c435bb500683066023100ec11e0eea67cf629149c30e367f9fa170c4573f462571fae0993c9e7518f2ad94dc368f2b809d405ed6c187513ea37d2023100bc65c5d136dc3e3c47cd5ee6909eb00738b5c5e4ef2e7ae0c975c7e38f6196e96d0f80aad0092b903aefffae5cc5ec3e0302047c435bb5006730650230269e26ab13f2e47abd6dc9e87ee31ba25c4284d95395cedcb3526b583ad87b4430f4766245da0187be3053f90b7a76ac02310090a1be9266dbf772165a2ab53fd88ba514d6623960f9abd525a2a0dcef74ffdae77bb56915a283cc60321bc71a4aa4710302047c435bb500673065023100edc14b065760754401c78c17f1c5c38499b8b41fd16f63695b1ef7efac95558b664ad440d5b81a16ef7e6693683f423002302c3e417d938d043fcfb33e3db0c75c254d718a08dc12a912486ae3b3f7d56ff039b25fc8a6fac3fa871cc14a26faabc70302047c435bb5006630640230462a41d2e620cc27e9b2b6affda4a07aa63386968c5161f76e6cdb49ee0641bd9a60f6d4c6a13ac33a6980c4789bbd7102306fb9c2bb3d320bc5d94b36d58b69ea31388266ba471e300a3c03e57789b9c5ce7db8ee9275e583bc0b04f595d9d0c5e90302047c435bb500673065023100f0c15f0988f8b810eda4c225492fc6487c7fcf6f49830fb4c0f06bf46dbb2b1d37f66ecc6db1b9f6ed98986c6497eba302307dbd1c3afcc9e0e405900d548c2c75bd2e73992d1cf7ed56a77b685983e137b787ea97e43c814031911882a78175f50c0302047c435bb50067306502306877f8a7e5922e971af9c9db2ac2c2d636700f8b18f812f8099d98ce333f4c65fbbf456c0af8f38890c85f44114f2e1d023100d943f7b7bca1626b01ff63461103db01e4a44cb04611c7778be63c38aefc8a61818bc87ff63ee345b09962d7502e74aa0302047c435bb500683066023100f33f26a549105f8a403d09535a03be74ba36e4f17f3c52c3c06e19fa2297347bb43ba0391a8a31bc3a0d53d632b52edc023100a20abefbc36ea966b1c82870e72fe88a407ad4703fd152d078c8d289cb025457e3435ced46b6089f7f2891de258492680302047c435bb500673065023100b89f2bd39c74803f913da320b0eddb30b77702f6aeb83294bcdcd93d84191e18936bb78d7cc342a3d7b56bc078595cd30230273ea2d0edb310d462de54f25642ec2c49b709a8b2555f277095c7eea3a92042c76e3d484e7482ba1202d3d7fdcfa7ce0302047c435bb50067306502302bde92585b2de078597e03f77e58b990eec52cfae0f4f77cc0d1be0670c9331b04b03d3fe25bd60665f7d0fef08f2933023100bcd3961436e468b628f7c6af9cace699d1a972e161878ba6b47073be8b3355e510afe9bbcd3c1e9993294669ab895a430302047c435bb500673065023100d19e7e2ac24202812ed9e8d9453b1e6076554e04c7489eba3bc86a12244f93b21763c5125d592a0b95eb268eec224a7d02302315493215206c457ea42e31c67c7a3446754f7820976b86247085bed5fe86fb3f6dc7ee71a351391ec5c0b67f1297800302047c435bb50066306402302af13f3c72b8310ab123d7970ec9eb6e7bdcd7fdd132476bb9d6c35db7a08ec2c3a3afb67f3faf3c6ffca40965cac4b3023067fe013455009d5d5660705208f10ca8e6e03dfa512b67a9dc962d89cf94187c71e2a09c3c3251ebc0fa7fcd92545de90302047c435bb5006830660231009d041c78d2b73692d583ee93f149e2e134fb1b066e210b7a284de677f7fd9bf062feb7f955bf8f272591e80a5e22257c0231008b6fece66cddb8bf2476419d34c138102b82ea8dc5090f7d8b789eac728ab2d5e96c31b781ff66484b5a03911dc0c34b0302047c435bb50068306602310088c13eb24eef09efae225f9eabdb98a1c988461ee1bff2078a879c1a5b0dd956812cd6011ab2bf9e7a63a711f76f3eb4023100a25d45e4872d2eeca932c46effaaacbc44912afa741dfb65fe6e458c6c2c1a2b04587d6395ce5ddfc27d8cf8b3e9cbca0302047c435bb500673065023047d00359264c02c556e0c776a4ca4300df0be8e108aed8ba879159ad48101cc77a9e2337c58f6435358c0f88779c8781023100a5648760605a33f63a213492b6e2e45ac1af297e69eca2e6e73e61dd19e45e2f48f71d9f982f1f0ec038b6d18593ddc40302047c435bb500673065023100ec93a90b470f9bd67218faee83c7b51f592a1f903352bb0917368e6fea25a8d9b838d220bc5f22a3e30295ec3c849b8c023072462868922d8c391c7bd4c8e7a866b6e38fba2f8c1c4d27be18e305e345d5632dfd931c4f1298887f660392666daa960302047c435bb500673065023100fd91d18f33d35db7f8c4a057c7a5d76384ec6cc7cc71651164ec5aaf17b718ee3dafcb7941760671fe259dd12855472902300de02e757c7b1a3580116afb846aca99ae68622560e82f96afa86cfe6c60fdfc0ecf6aa4ef4de1d9d982e61b9f19fdc50302047c435bb5006730650230763fa85f1aab7b74c9eb12703dc9cdab1442b4d812bb8f867422e6c0921e82efd6efd63805afbddb00715193f0a58267023100880aaac25d91a3ee6a1d500a14dcbc1eda6f1c85a711c1a90d86b4133fd47978878578379191ca593fd114eb01e3f8b00302047c435bb50066306402305930009b6d4353f948f444db841fdffe97e40e977e96159dbc59793a3bbc76e622b434b2b6db16647f222978d2b0763e02306fdd3096931eb520cea9ecfcb51c9682fb9d9e9fe7e6c2271f0aad208df627cf9fe36336e10d29d070ca58ccad6d83d90302047c435bb500673065023047b35c453ef5f886d0ffbc43b2d4490cbb6a34aed7fde0f175f103273811e1b740bd1bfde227d9b70cbfea14909f0c96023100ebb8e7033fb9ff3a7a54cd7e7741dc3c167b6f319d54d415a34048b4014644d5ae3c5f37092cbf5d3e29a1fc403593050302047c435bb50066306402302392db39d90dc76f2bf5e378231474538aca320c1431f1a65ec62563082142e47040f80e9011e4aa126b7ce66db0744302306ce66a16874d639052a20fbbfd85addac6435ae5b175bfa089087a68acca0964cfac4fbf94a3ed5e78759c68e7057dc00302047c435bb50066306402305e1a8279f3422efb6fdbd437da336f52521f77158d514c7d9662ac5eabb1f0b6efe08d4e1f9d0675701c9081e4ece0d6023003aab8a258e75086499d3233f2d77f5187c69c060a6c332fd024b5a5d45d3422254e5c725de57170ff96e7c053021eeb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023009e6ee69d53bd209df7632484df874dff6ca4b7c98145f10f911202079abd8066dfd7e5b2ba900ae01ca6b1c4582cc780230503a180491444cbc443b22b135ee383c141c420ebe045795fe51b05f59e44c210325d09767d991e266579b861171dd8e0302047c435bb5006630640230799dc6dfd9718165a0fe0214dcfc8f6451f6a50c043d274efae9acbf56f14987b1598f36b6606130a323bb2d58588df90230417f0893a40cd251455133fe47a3f166d4e4a5809ef01069404361cb480d060f2767a1e0858f03303ca09f9f5e1f31190302047c435bb50066306402303d01ebd2659ef759eb357ce3b9c80477eb31cc627c07ba7e47e652d4006bba9bd0ecec4e4f28e22bd19de3860902419d0230205738b9162bd6db6f1f2962e296616d4035046114f305eb522bbea568746ade7f74375c59e3cab52b33f3ae6bf490a50302047c435bb5006630640230121f8c3d976baf18c5f1be6b217623f2045be3b2f780c4669e1a6ada2bc7a058910e2929a767418ad22e23985994ca3c02304800796f44713d92241e7b3f518944624f5f7cb62a2905fe005bfbd94da219f6c000ca58ef0603e3c8ef012092faf7a30302047c435bb50066306402303d376fce3f274f8aa61627d2d930ba30d791f6ede9a43e1f233de4d4dd088d94cf248f4f1f6cfe17aefb85d43078d6290230564c04ce8619a4c8289dc2936839d143325d46a0f0c7953561fc381904e24a50dc50e45d95193aef45b1ea89b9e951170302047c435bb500673065023051c94ab189300e6874e7f6e8031394d79fff7607ff6d2de41b733153676b35afb3548817063122d0d69577c2a095edf3023100f4c8f102b0519cfe7a51739da68b51437305a895251d9bbcf5c4ae3ec5dc8c1449f611ef42a706a748caebecd7687fb70302047c435bb500663064023033eee9666669614411826a6a5ffac0ca222cafb1e80795c8ac005a53a5d3dd44a6d9b461a8760d090f0db4e0113c0d0e02301053360aa88550cbcae75d0ed098fc6d35d7536c8918a7c2ed4c82fe8a179af5116e77411a5433113c1b51a95e947ae10302047c435bb500673065023100d14998bb1eb9d83c11a6b25a61e2f44b0a07d45252b3904eceb89411de05a9a98bfd0051a55ebdaf20cb75f0a734f38f023071bffd2a980063a9a695faba072e3b842075802e78d08424954219889797c1bb227968f70340d85dfb3f252c93bb37250302047c435bb500673065023100a7712a72b476538ec6347bac193be50caacca0f850f8197489f8feaad73950be94d4ca75ae60c4a698caa20bc0b59650023012ff2cd21bcc6d55687156163432c85e77723668d2df5b221eacb141669610007b8c40df25541886b2c996fe1c9bb1470302047c435bb5006730650230119e692fd97a6d8a6f919bb3345b2c7d68a9ca1183054010d16a04517e11cef275a3fd16a9dfa16aa3cf19304733f637023100e6f0bafaba8fa3436ed191a7c30a0b43d5c73ec0df5c68e91dce31f47c1cdacfe35b4e58603a6d19776ca77a3d8a7ce10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e679eee7f90a6b6e2b17faedfd21d7e7d49c2b30f60326a30385f1cd0e3f2e3e934dd5fb669ec2db271626ea9aebc19c0231008a50c2d59928129dfa9bae713e64b8a1d2285e1a2640816ac8d3dfb2a73a82ff8d9eab743791cb0850a6117668acb6730302047c435bb500673065023039f50cd8a5db46f5522bcdb368da6cf3745ede36654dafe0bff029171a2ea5ceccf510399d28dc688d1f22625512f477023100c891aa1d5a3ac256cfb48ff15ddd80fc1dbc6053dad29ee095c840d3ad894778d0612d8df0fb40342fbb96d07a9fb1c00302047c435bb500673065023100abb63d6f96b6baf57228016fe8af2621a2a2662f76793e128e6824092e84d3c25a647cd7d64e4582bf9db845e2e3eca2023069cf174bef5e43f6b75fc7e5a1ca7d031f23d3c780b87a7b747154afd385de29fe0426e4185ecede2f363684324c443b0302047c435bb500683066023100a25789cdb6b4c4f3b8234a3a8ee78a8c2e75975d1e32df388999f5f9f843901754d8f9551214c5534550bceced4aa739023100fb0e0251e8609deff11297fdeec9707c6f1e554a3d640aea73d8e84c1bd9351280ec941c5405f87d6307c7130db48ae70302047c435bb500683066023100d21709f242bc09361defc26e53c86c8471c78aef9e0b64de4d605e0d3254164ff26a8403ea1f86e14ce5482526c73f7b023100b8fb8b7c4ba30f6da9a895623b350964342ad3886cf1a2b5e89ba5da4ee56b6d685037e7e43af5a96294d813433ca1e00302047c435bb500673065023100825034e26948a09a816b9e3b8e6c891f157dc22ba88b296754b73b56f956b564f5a3c9e2b64b508dae15559f6d7b1cc002301272dfe54b41b0ed539edcd24d4f4ef7be73b5273fbbf868dcb57877ca2b8c4b7a30ad3713b91e956f6760dd0c968e790302047c435bb50067306502310081bacd4af837926e2dcac0091ce0c8b28262f8a6874744bd289c68c0a764137c98a589a7e44b95520e0e9287a527c81a02303211d1065a9f47419c1db41977d5fbd673dd8218478a21d872fdb582925a77f23c1e3a8bb20cbecd55df20e7b7af07ca0302047c435bb500663064023063a1d72a2d7b321b160efd77b31188ed27c9508f240534939147566c82ff26243b6dc9a1b869855dacd43930e845fe6002305cf7231b9d662ed690b98d28277dcbc83b94316fff70b05baa5c0dfcbf828022f50c18a08c8122976c9c44a76f31eb820302047c435bb50067306502304a71dc00d39d89cfb1a273bc6cd0885da8040490f077a145ed6470fb24d6547c6e129ef913e95476c9452c874201dec502310098b522acc38d54af5c2285e15ce356206c2cb2844466d1696e3eabf4617e07d8aca6fbd73707415aba1b6eefac679f750302047c435bb500673065023077029846d51d12a32814e9ca8b03842a57c2e3af9a8f4f1a08713bd8be3974920206bff722840aca079a24e0b2aa823502310083e8d786dff575eb1346d6b6851bd2a3be4d8eaced6d082f4278880682a513f59954a42ae60b435f1bb26ae92e8789ea0302047c435bb500673065023053ae5bbd3874b26d30c6c642fb1b0780bcfb4b43bb70941b96689a5878ddcccb5c49b9a5cb67e8bb6750dd198c530d4e02310080babe8a827c59c10d32e8cd633a5f8088ad1c473570f4dc7e810d615d9794447a8b6bd258441ef852aa0d164230d2160302047c435bb5006730650230671cb7c140dcd467695c538f4e2c3c6ace47f32c140bdab08ed0abb0ca89851fb2d4b9766cfb8845d7b0635370dfcefb02310082b3d800409daf4b27e8a8cd6fc834509d66af6bbd40dd0948e701b3607a41b05976e63c9baf83119498becded9a31210302047c435bb500673065023100f9e0cac985de83d49b195c6593e3b3c2dcb1fb9172eed2609cd5397b8cd4e9c2dc91415038ad5cab9bf7e0a88242173302302540ab87b247d78b87a800a5e84b10af4cb1e923d647680659bc63fb6307ece62cf88eb9b86946774e64bcad13af110f0302047c435bb50067306502303d9afdbbc021106ee1305f805e8291b599517c06e159ce6b9d08180051e258b75a69aadbbcdd245c9857e28f23792ff6023100f177683e97565ee4eeb3e38dd1bc5d9b61f64f5813047e68e048e9c311e6d9cf6b5b9cc7f87c4f6cdc31877cdc4b879f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301eebe25d3e73612b6a4be6e245549b87820582d8972b5a5496842547d322c28b7a30d926df6560bcb2b4603ef0cfabc002301f11344187d9158699617cc077a924bbcb169eab6e116c43c3c5e074fc6f76ea5e498ac6205a0aa3ae526e8e7f10d1d50302047c435bb500673065023100b1a4400f89485d4b37c5d427d42e5d17d5f4fe4f121aa5830887d32dc8ef4d7137e74dfb7b655c97f618060d20e1671102304bf4facc19ac562988bb44db2bf1082755beb8a82d31fd58de6c249b459cce26c1e8b640e07fc37e56669830ac4129b50302047c435bb500683066023100ba0dcbd4786273832a14ba67a3cf9d0cb20474aee2536ef384f760dc0b21d13c0b9b23ee53f2916f94b368ef93b4e36f02310095ed4bf8381f5dcde8556392f709f7a640e8b12467a284a44e594b42d9fc81f78fb1388403b7961d3bd94092fd1e11610302047c435bb5006830660231008a76590960075b37ccb0a54dad44129d2925f260f59b7cab285912550da02582bb89facc4368da8dba11322582ee228d023100c70a40b02d5b954c12495aec9b1e15b4680c16c0f3d34944df3d1106b06bb2580c3bb8b69a9e2952d0d629ccb83b097d0302047c435bb500683066023100cd3fc026018e931d2c5dc8388a12936f3a1311f5de8a07639c33324d1827153fc15fb91aee626086c19c2723604971c7023100f442914e917d9bca142040e829dbd339147ae355a2f1768072866a575367343cc2395ab8b71a4fd03927da627e494cfa0302047c435bb5006830660231008b55d0726f85e6a417776723d18eb83c4d1e2a271c9d3e2fd785f703ab4f98880e5eae868eaf37518423fcf6c6e49b990231008b0e3211e69b08b46887009fcb91759c17c889ccd6d9ffb50718fd6bc9e335c17cafcf53525f3b5dd2a037518a5118320302047c435bb500673065023100a9a11288d4465b6a5ca7f2b67b5051a64f35d4c2c7d737a7808a382a8c2dd2d09d60e39912d756b9590d2d2dae0e1bab023063c6c1885320b6a2002ec440f46148413a104950720fffdd32e99b107676ba0f1c023988786eb18b397a09c1e0b335a90302047c435bb500673065023100bfe024a7ddb2dfbfd491bd4748a5ba922428988ee91d534e9af951f6aff2a6165974c042eb7aeaa8d62472d755608317023020f055559b193b79d19b537cf4862f693bb19f2f802ab036645b3ef97a6229895f9431c31f1b7ae4f50e8fa2dc7350440302047c435bb500673065023100d95f77f2c87948e2ed566a4e33282eaf111b1c8b11b0b9baf3126f38f42af49024fb8d3eda7b95450831a1f943bc3d960230297a10a530beb5b0ab724d0c94df52845c95bb3747ca85cda5351c1b3dfc95266b6247ef09b4fe62ebb9846c3529472c0302047c435bb5006830660231009b106f7a2c6bedef879e0fe3f1eae2e65f0023bac8ef9e44c7e938a3d249f4d288a0c00168bc67855b6091c8252222b3023100f4ccd3fdfd54cdbec7072c6aec7e77c9492b12929b143fdc3cf324bf3f220b04bc3604a65c29f2904213a59c4946dbc00302047c435bb500673065023100889a22ad70e2ca49b81dba1bd3b095d1155f02455a4391f65b0b3ba31b35ae92bf0ff4a2669ba47c19a3766b0382c2a60230123a9146229097db8810b3625e00209de8097af77bf20df417f6d7025e09327a7f8654d78c794a41480976163ba4b5c30302047c435bb50068306602310081fbdf55da0e83fdace6433cf118f15a66c149c0989730dcc2bc20801b931a50e0958904a9989b9e3dabffe3413ec9d2023100ff5677773e350974632a4bd1da601dc9f3f000fd10a024117d7a255ee6d24477cea8d420f743c0dccff99516b6e142dc0302047c435bb5006730650230266f1123db0c68ed3a03d21fc5afec0e439dece950a198376ffbbe06267e958338041c6a3edb545723cdbbd764c18330023100a1e457323be31309738e279c336f5c513e06199e801175dbd51f4a6dc04cef481bbdfec78cc44309545eb7bd08ca17b80302047c435bb500673065023021faac0aa6729f498db70f0d06e516d1792a902ef46b27d2c2e1bb29061456da910dcdfb3c77b0e862defcd0d3cc05f702310092ec835705f7fc8383317b0c3c12fc79da712af24acc70c9cfcaa2f13dd87c3a49acc6e6e8e007b97fac9f67fb9cc4700302047c435bb500683066023100f184f1fb40d25346fbe913baf5eeeb733847138426f1311fefc9c50ee06d3e764908051872c6951dbe097c9f794f1e72023100de5eab4a3d85a35e4ed046493e8375ddcb0958f6cf6242388182e8f03499ee6e06443d1a51081b7122adba636fb7df880302047c435bb500673065023042c1d4d5ca0e931b46e6146fb5008d3fc1dc97de38011d57279c6c065b82dda529bd4b90db4ba7e03e7756090a07a2d20231009889608591999b14eaced767f085eca03a3a71c66ba4c4d1d8cc706ac186de6a933371ba03d5e8cbf22d43b7087c98900302047c435bb500673065023070d98fc974a0ff36759101f3bbc4c5420abba3e7c098f65e9e990259b5055ecf73d2bc4bbd47785f25c61edd81eb7834023100db5526f4a49fc14e8cf42df4504a93bcfe3f0cf62649c814daed0fc1af647237e63a14428ba4e6ff402b5a97de5b4e890302047c435bb50067306502301685300d3a4c17cc33967217d5d2675ea9ee75173bd34b8a0464bc827e534b72b13d4bbe57f5dd71fce37da2ffc9341002310096a4fd541b9c3d491a8d61b0dd2eca684b8444827b59a8a9dc5e17f4db9c95c976fa44c5c4b2fb1be0a53243cb68137b0302047c435bb500673065023100fe12fe5651905b21e15ec14fee4a6899acf6b4b57d288f7450532f12b747808ca1215379908e1e6e4014114d119284150230606c45078d03d1eff8e422aff64bb1d4b3a39ea684bd9565939e9a88f926ed919d8c429aae1629f9a62248939f5fa5680302047c435bb500673065023100ab7a495c122b05d1547d54e6b961aaef73fed1e99f39b5621cdbb0b58a84fbd7f49f29e6c6d24e2ec17ab98f67c74c1a023078b12fdd7a0b142c3a29566b27940cdcb65b4a816490012f95007c669f3abbae4cf6598190e31d6738e574bc0c8425fc0302047c435bb50067306502305661c6dfdfdace21e91d1020ab0955dde509808787b08122d010fd98e05fb5eaa404588e775e70599c6f1062e252f2ac0231008fe70dfa9632d181ac3adc25bcb974f208038a608ac36fadebbd4f5465561377dd03d76d080209490b5088f3376873a10302047c435bb50068306602310090b56533f025266595c4404e1a2b58fcfc49ceb2be19486ffda72e6d71a761f552dbf4a9696a9f22a09bc6fc356078b8023100e5ab4af76afeade99d7a4e5c53e54dd3c9f4c9463b7fc2e8fb6e6cc55cb34e24fd5f339ada54f88248f2bb54ee62a37c0302047c435bb50066306402305f38b5d63146f34030c64b553e26f5f8250de089fc4dbbfc1fbb003de8a9a057843acb14a1275ecdc2f7affe7312866102306f2a8e52eec0f2a8de771776bac516f2b87bc59c8aab6b90d50d661679d3d91291d8bb2b6f13918023fc336d3b1376580302047c435bb500673065023100c2e111028f6e5d7177de6a0c04f07c6d0bc46405557ab8fde1ad22f0aa8da825543d8e5d44717b8914795c89742058fa023066e6d0b3d90c4941146618da9dc88adbfc49b0f073d2240c8086f6758c569d748139ee86822b6a300b19e768f1295c390302047c435bb500673065023100d8a4edb3cdcdf4d7cd3118ef755ff1de9976f6f7bb0dada570adf644ebfad6f8b4fb56c8c527a017ccb26f501486c4a6023018b8f732bc71d3936758658f5e801d8f57443bbf6289319d3d7273a9cf0ec55e524962551d46f9b304aca8577759de210302047c435bb500673065023100cc3bb608732f97d0fd839546f9276e21164c5a09e29de94a74c3367d6f89e7d8d8e8fb5ce7fc23bf06c454afab5ff1f102303440c26ae80419699e9bfb2413e56946136b3e9e389b11ec23122ace6be9d54eb9124a810a800ed8b363e6d7ecaf87f90302047c435bb50067306502301ac358093d14a91b951f21a0245f8efa04fa4950a11827021e42a5bf30979f86deeeb11a8656b1d17baa66432485e4ea023100c1d7d19ab45c26ce71831ac28088d420e8b68d380b60be16392e34f37fcf9543ce270e932c072a55e17680282e9a80e10302047c435bb500663064023077ee1999da14c85f3f0fab6cda3194ac2cc324538059dab057194c50e899b08d3d3d6909efab7a3170483bf56108bdfd02305c0fa5e0cf89ebb755d8ad83176229e22c9b04c25069692b10faeb90a0d5ee902066ea050ea05bf0e43a46cbb4b1e8340302047c435bb500683066023100da9ba96f568b3e64a0185995d2bd86e6eb935cdd6d2ead21d36cbbb8430ce1e86a37447ca08b77abe2a3465a81dce7c8023100d57402f8ee32cbb086d14aa7ea9d7e319b3f4732ce0cdd56a2cdce927f81888dabf416692530aadda9d70006ed3bf7f30302047c435bb500663064023048103339b628d67db784416cb9f2fe7a911f0f74e86d3c8b3b4cb6735d252c1a191fd8fa903b87fd86f0d033432bf47802303c8f27283f9ccb8e62481663d398859676740677b71d601c5e3d5b464578d79ee6a1082fea40e8b278bef331af6bcb700302047c435bb500673065023100a7ef9aaa497fed84b316bb4c95f71b5b0be18c9a49cf80eba6546d7fcdc6b14be7c980c61a546f9d143cd6d33366c0b1023071c425ad74b5cf0eef97d8c1d2715fc2ead900a61e4266e1e15de276a8f3ce2aa162fee1a63190b44142361994f7127b0302047c435bb500673065023100cdb81be012b1889c72b198dba5bce2afa33b58b40aaeb51e3ed13d741a4d0097cef9d5f6783f1e3db86ac87b56a60e7802301ba2290d32f1a17607261ca08c486c40c42782d9efd9d6895d36b5dfc0eb78aed1578205e99f876464869a5eb46bd1e40302047c435bb5006630640230398b315fae7c4682db5fbdf0bff7ee10bb9a625ea760abf6d65ad907c82f86b3b9bcf8956e07ec5f22a8132fa10f76f802304be2bf0ab48d481b166553c0126341eba02b11b6f991d3a8cb1e691bdf1137e5fd59b0591106c7934eafddd6b8c39a390302047c435bb500673065023064064d9a248d89e4ee0bd6803b958c7fa87c6295a24277504bc0fe348d57d4d889e6a2600db3b0a6e2d276e5b4fb65a3023100dcb4e03a71ae2c140c6e7a44ab8e09a84ac4f54e15b0701c9b560a3f05bc2be1364e6040bb7b90c068ac7d0bdf78acb10302047c435bb500673065023100d8c8b78260dec389b386802a0935519c162ae786850b6c9e3bc6eddfcbb95ba1268374814760087d2d3712ced0bfa74002305ab3c2a8f25465915869123f60f4ca1f6b94a41bc0a9871daf8fb58f7822af805561a61fb7e313ef1aeaf1631d0a95090302047c435bb50067306502305bec56b63839075e6e6b9d7c41012cbb8dc5288a35da04c849464ffd9891b776662e0f9a71416a1ab2f9f309a5173f45023100e756af32c5b3889668c205e54dae5d365b1f483e91cc551cb2bbfd19cf2ee270a0138c2936008b20411f57e5f5fbba9e0302047c435bb50066306402300641e46d29ecfd979811c042055c533ec35a33066d80cf65e95ff545f6f3e7296c42448515cb883c1874bd9ad0c107400230653b6cb32980fe99c41e9df6245b19a5621fa9da3e54a4555daae3112377b3ce1f3654339d3de8dc6dc18ede743e78400302047c435bb50067306502310096b1be53aa3e1759347560fd5794ecfc4abe1882860188d6096363e4773e03fd4a20a18dcf31c5bdccecc954c2742aae02306766204d260ddc4ec22c0c3b4a8ce8eee8bca6243531afed9dbfa836369da404c19fb0caaf7b79eeab6ee7b3612b670a0302047c435bb50066306402304ef6cd777d9780d7dceea3cf71b9a447f6f3cd433a8d28504332efaf66d4263eb50b20c12a489adeb16b9e8f4c247ee4023006a1a2f4fca03d9ac9e57b6db6583dee74c3351d2f2f2fb20864516b821c60c89ec9055df414643691c6746682823f1a0302047c435bb500673065023070948ea90d7a4439424225a678c64e278383ef0dc68bf5f9d0bd919c07d6889619da62a33325248a70083f1b6e515275023100b06d8e9625e45bc70592706bc20db9f3db725460aa44e2ea6037bd2580dae9d222ac07b5c34df072f96df733535e10bc0302047c435bb50066306402302ca744e49cfc8dd3db771e3649ab9e1cce55cf3de4a1c054ff6374db8b183c71c65c9dc378b8372c3ac0bee612bf9fe9023006650877913ac8b90d8d18dd16af92fc282428266d34dd70f17cebc9d11fdbeade72ee3e7f94aece9bdb4d4de2ed2ecd0302047c435bb500673065023061e345f304043db12b6d79fc6a8740ee4b571ac2cc1575cbd3461472473e15501ed923e99b61262ac42ddd2299d57ef5023100e2be63802d21f1e52b14e9b4e15ea31d7883c95f462a5566f061f39fe9ffe27e90169fdd945fef1d720269695cc3aec50302047c435bb50067306502301436a366808d58352a95f523bab5ae2ee25c1f3fc02d52b06821acb514c5d1413a1299567d7876a97a8b97e1b5fb55fb023100aaf280ef69c05e0aaf677cf8ad48c85cf8c0aef2541e5218599af38f4d9f6d20dcb55a2a5475dce41b0f45a39007d2200302047c435bb5006730650231009b3d50a79336efdb0f2b338d8ee87009fdc98625c143d3e4c6bde7c80774bdeb45902ba8039e937f9a66ad6f9cc5a74302300cbcb35ffb8e9d5cd5bc599c880e584bc5ddfe4ae6447fc87d0d5f6c494e275b1b6be101b1f06f7c367bfb6d7db6b6af0302047c435bb500673065023100a9a01c92954f412f9f13099d3531cf0a183b0da2d5ed6dbc8615e50b816e8b006a3e24db2f589d9e3f51fddbcdf60d3002306dac3e7e1ddf97a87e36784dc436532cd495187f2c32f1ed4f0018ddbeec89f29e9e6a511e0bcf1a4ee58b220542effd0302047c435bb50066306402307df21e3299570d927f3c33e172c17f36037bb900bba5a3df7396ccf778b1f6d56b6bd29d0fdc430aa1eb51af1aca6cd902305d77ae48e876c9fbed473c69bcf25b98d115302eefd39683a75b98cb6ae12ba2596afb1bf7def5045990fc56c0a1b7aa0302047c435bb50066306402300bc74f7972b7025512deb57356bdcaceaa2d3ab0b8c0ca8c103e8461aff358024aefdd8e3285eeff6035453fec8e035302301a52255c8ec42b6e9a9518ae8acc2bd6105e4e8c53ba4d2be118e3f675685dddd85ae3782f89cedeba041ffbdedae2b60302047c435bb50068306602310082d178a5a25b344ab58a8d0a38dd2047dff9845aef67423ea99a6edabe14f2de040ebeae45132c70c57ef8996ce448e8023100fef984d9186713d822a661bb76150a52dc65284ffbf416a83d91a497435d5d1744f80a34bbcb4bd98bdd55bd2f0072930302047c435bb500683066023100da605a94cd0faf1b05e0a61e64fbaa027888e7cf85315441072c52b61c21aaee7147bb5b57ae078a70b1b28f468ce41d023100b5aa06f59e2b5d671dd947fadd434170434906a1421bd902cbbefc39b13ca52b6c9441569fd24fd884a244494af9e6ae0302047c435bb500673065023071f728ca047bd284c9bfb1e1da30b6360206b45701199a751123d06f3e5a3c98f9eaad22007b2376a15501f9bff07bec023100e83be080c6588b0f1c10c89165a8195dad8645eaef31864d97f3976a690de7d8734d3b31e6d776b1dc890828ccdcf0010302047c435bb50067306502305201bd3b321fface020e3a69767624556f394d7583d7b2f7b3a703bc97a547e2e0ea92acf0d4b770e77731e8895167f3023100fba97a54ff93c4a41cecc26643174a5f4f3b00f74d984df318028f37e85bfbb40412873ca5275f9e10155e0b9daafb000302047c435bb50066306402304cd588bbf88acf424c724b95b8e95efbf8f8b4cf8b0e30aeeac2bc9d3bdb798c7578b4c432e646c1227d0ad096b85c7c0230516a4dce5c51b6bac5644850d013058a6713aae80afb4b18f797ee96dd72c58dae71d8134928d981cedff17fe2c62dfe0302047c435bb50068306602310086ed6ad97a4ce4b112921695c4ee6451baa66f46fb0e4991738fc60f622d7e856caa3a023732998d0531fabe135f12b9023100bfabdf2289499a7ce81e52cdc53cc45f141e5651cd5b0436b97d09c0fff698993aad3a2198dd42a2dd8558b05f45f9bc0302047c435bb500683066023100d884ac4e215740c3d724927ff2ed7f4856ed67a5ee23e30318ff5b15488bb62060f0874ef1ba2968250324d4d00a24bf02310097abba6ae2d1a328a2839b5019d7b99737cda70eaae69602af8f6a80c137c2c1839402ea40854c694fbf8a8cb178a5fc0302047c435bb500683066023100bb6f93b592a3fdd3abeb851357fa847653b7550e977dfa6ba59533967e74a5e56102e9a6794763a3ed6d761a9c6471ea023100e51541ba5420111ce8f19a21da5b6913661b85ce393d4038d64c686fc6c2d3e23608d60ca75f986289710aa4e2fed4f60302047c435bb50067306502305cd3f7458ab997f96d954dcb46b4b7fd7dc239bc9fb7a71fadbf29e2497ea42a2282536b3e967e113484af297a6562080231008a8cc77576d5d3ce66cc41208bbcc9652bca7a6351287f4eea989a807d86b876b6672875db85cbcafdb22fe09a850ec20302047c435bb500673065023032bb8800501aad2a6206bb3e9d1b8dcc79a0a790572df891a301945d863eccc6e9435ac7c52d016cc3588039b824db75023100d40c305f6e3cfca3fcf403a08d7f821017a09013b6b42a9bd4e3154e552810241226e42ee40d74d33c00243afbdc342f0302047c435bb500673065023100ea1394321b19c5149d130e0d16c6067ff96c080ebbc2fea03b4c8bbb5d8f4fd86f6bdd80154332ffa3e13a4f9a0e55a7023040eb271e6bed6bae640d5661995d654d9c62eda4c7e756ffac360e4a6df92cd76da52a6e168519459530bab42bdfa2d10302047c435bb500683066023100b9825a1416d9c09f7bdde0f2ca7d17365612518f105b9fd54765f6baae153332baf5f27bfa2002e7b20f075e049f7c58023100e2c2646bebc8a9ccc4651c731f7a6a2c23db9d2f851385b4ec37abdfead3878b879f40d377b4ff19f34e6c7fcb7746e60302047c435bb500673065023100a431d73b1c60b37ed4a3dfe0fa480ab0d33d0e195fdf31e0bef0f05add8a21ec1131f50194ced7f914512adc62f4f18b0230668e3c3df43d7ce82703ab11f4e1533d1ee619f9df87400da9a61810d0971781e70af4f983d6616047ae73b4d3efac6c0302047c435bb500673065023001aecff2cb59e13e0515bb2f9f6b6eac54521bec1291eb740d75a53353dc1f07e2164773315621f2f213d95ac0ad89ef023100c540dbd3136f2fa08841bf9cacc1f53b48eb50491346c1514439de31107cefad79b14677861a7aa83b429056550f4db10302047c435bb5006730650230568a41bea25d15536dd1932a2ccbb5df6589cf19b7e6be3a5d656053adf5bf6621966d0a687b48ac19b88ec8b485906b023100e89716fce5792325365530f5d718c54c83848e71fc39592dc2a64392ab4df76f25dfc7ff07d8ad9b04a75df211c799640302047c435bb500683066023100e42fe119c38b816c8c6e70d73791ca07003f84e55b91fb70067a889d955dacb0501445c75e093e2dc5b861b6caf52b46023100a32148a25e0bfd92571c911907624790a50652c3c751fd072a5bbe5e2a27669363b3a3bdf5a7d30430a5dc8c253280ee0302047c435bb500683066023100e45852f007c8aede1987501be6f89ae409a37ea110aef691346bb652ba3b38af1f9ccb5bcdb367d28056c37e7c371a27023100ba39d4133f3289abee541c9a353f4eb432cac8b9c7047e1b813d227a8abba778d33180db6f5698862fba038df99376190302047c435bb50067306502307e4e3b96a3ebf8d6f1a4ef0ec70349dcc932a81924ecfdcf342d8155530e4da0e4718925f28175a0c254f01dc019642e023100819dde4dc55c1681658d63e8658244d8f08deaf301446675bf0103afc4cf39a275b39ba8aaa265099aad41b436cc16460302047c435bb500683066023100db17781dad1b3c71b440e7bdf1f82d12958be1c1f6eee1dcbab79064c769d3af22b9c8650b6a11cebba2b248f08a908d0231008c11c0289760f0d150b43a3eccd2e6fff0c1a15f86ed367ad2fdba303aae98a4244bed7d1f2df70626b989c1ea4cb70f0302047c435bb5006730650230169eaa8818f13e2f5b47414eb9d36eaf5bb09d7bc04cd793aeaf8ec369357406cef0eb48a030936639c03a452345c562023100ef291bb5168e9c9e8c65cfc4da2684a7ee37ea9831665498780116ece9d1be215a6b59fef781b1978ae4697922c995380302047c435bb5006630640230625535c7f59f0f2bb078f9b8dd0ede3b19bed1763efbf28a0644082afd6a2ada639a71beb86a83c715ea460495e8c53f023021c15b220e7f3dee77aa8cffb91b4527974164dd70c8ec5b1c8a070a91460a7a7c46daca3632eedfc1404a2522a815790302047c435bb50067306502306d76a73ef7de9fb335639fdc9c64771cb14a90762a70d1ee1e42f6396dbb3c6de22ec9bd49553eff949d3571626cf1d9023100a04b8be7d3d103dd35e9b4aa9ea7a08cd2eca002929251fc297ebe6f8fbd83d227cbe14e78a3e24dadb8fb8ddf587a4d0302047c435bb500663064023035050ca889cc46700caee3e8d8c7d1bd7d13445e557cfb5b1539eaa34497ff88b7b7bf95ceb45750cac478344b10fc5b02305a3ab2eb1ba0583f22b3b7e72e1d21d30be6d74c5c4e7c7018f8758cb3b3a8e57f473a0622952c750ed094348a7290b40302047c435bb500673065023100e9c966ea8e0844fa6e4465a3dc1ca2eb2bfddbe9b3a62d2297c5e67ce8f5541ebe19e1230ae275f89b7649ea04942166023026d63e3d95854dc38b8dd3bacb8f656a9d94ba248a4d5f75461f64d5f613d0d1971b61923af189d3cf059d1b917e50770302047c435bb500673065023100fd38ef82b15b00fa5a37831a1d95769e72c7ded141a13162ea906aee4f7ee05e3d6bd2d131aecd414529138058fb814302305d007a46eea1dde9fc86a8ed848a759e28daf30e09980925fb23894569bb1cd626a98b2833696b3227070654fcaa83410302047c435bb50066306402300c94efc1c0165af60b51ca8d43774e8b055babded63b187445e2d07fb085b3f68dcd8a9ac58b12741147ed430d9d8fed02300ad94b5255296293816991ee72bc8ffed3770bc5644a1dbb96eb613754ad0b28c2d2ad56996fd2c6b5bb03b468118e030302047c435bb500683066023100df04ba6eb2dbf91e0a8e872129e27e5294d11b8906b1ebc755084fd57955c0cb4cff08face9b047fff0a22f3be6ffd94023100a4677132550f8838e4959973f8ce243614cae552af8712cc9424d8d52081648992049287bf5e7b06360b82c2db655b1e0302047c435bb500663064023054f5ee39c780249db275e8b27fb1367efea269693d4db932be937177e3981a837931789a02f90b75cb5830bdeda8524702302e94fde15ecc2fb9a34f1f574273ca22a7a24bd40c67decfa94270e519db81ea224d57dc34bf3024632aea08835078a00302047c435bb50066306402300b55911dd3e6f4bf391c3467fbdcd67b7b4d7abe5a9da8eb4f9b1e795f1bb80e287f1559fc7887d6ecb9b5ef97019c43023075febed9291c4549e0a5ad8425f0f58e89c0e21dada8aa1f9a55aeb37015d5bc15c21e3b4831bc30d20c2589cd535c2b0302047c435bb500683066023100ae23750edf248ad5a4c2e98bbb09258f147dadcbdc725d294b2f867677968418d9892a115f18331b9d44627b1e19eac9023100ecfa5c828b55e05b316e8d7a373dd3be264ded484c4bf132b95476019c1de67d1bd0b32a888921840c12f90f34dd64d30302047c435bb5006830660231009f6cdd763f6fa360f38d11a7746507f1668484d8855e7de3432149374625d503529d0fc2182ea4f4b01229529f7a4dc20231008032afca686f6bbacfceac345f88a76d31a88b521f9ff5887c0e15840e3e5fa3a70ea7dd398508ddc39004d94d94c2a00302047c435bb5006630640230246855c25b4796c6d42806b8b714d6cb4f993d329e0804ffa76b76f3f4b3b165a08221f1c0a94c820b3387ca2dd3dcc60230108c02b65718aa0dae9536f27842376d7dcc7ce7e68bfc04c508cc0d6ebd3e5fac1cdb7e9db8e14058ef7f2459858eca0302047c435bb500673065023100a7c9ddf8425ef96112024401799481e9b060bd2f2f0c36065d64abfab8f91ebe40a4993497068b9ab6415d1b106f110e02300f0329ee39cef0eb4e52149a7289657f825543df960e0574d3675cae2abc7a9376666943801a64888f031af6cf6aa7e60302047c435bb500683066023100f20e7d1449e6c1cbed8b294be4f575cdd0a8ed090d9b9b7f5d2b1c6bcf131beacac890755e60ee5ee868183383ee6318023100c1d885fea45610a7de5a02fb867ae384047666dbb34bae51dbf6d08228fe7b9a05157196678a7ea7944d9b6301933a210302047c435bb500673065023100bf3067e9a53c2f053eac54abf64353247e8ad67c0c588c750b0cb6b7409f808259fd94f63f4efb1b2c0a989bec0efe6702303afd5bb40950a9b11bb248b8810effa56b6ff5ec2d9e81209299a3b6dddb28d9675dab79c968cc9bf11a1e85270fafdb0302047c435bb500683066023100ce1a7bc00d5fb984468da557dc1119c824656ee35e6541da60bc733c55d5e61724b41e5d3a8bd910b0bd27e175a2a3be023100c88238fbc4870672e1a053480a4a11d6e3af07df1f4937bc0a97a23181aa7b1de0c2279943e93491fed42a6f529c61bb0302047c435bb500673065023056582308bb7e83383200653f0d70c184ae0fc818008432dd445f517747ef28e7860fca19af31fc5b3a2d80953860a047023100a551b9007de89aabf3aea2d6bde2be6a91e5ed59f004224de84d3fc9c973bb62b379ddcf5d03c969c0fb87669734e98d0302047c435bb5006630640230438e12127b9c769b2c639f7e3d580b04a2d3554d39b3218c1abf3d4b0dbdeaa284096f6dc1d8d4b8e8889a01ab8252da023064f19415698cf025b0e235bc2c1576276203419237aa744fec05101502366930031598f2d5e80d1707f68c86d79bf7a30302047c435bb500673065023100e2e67f27861790e5a8496f18db4faf0cfd1aea42f264679c09469801fefae5bf498d9f8951c4f8042078e25ed116b7b80230099f21ba17d9996e1b5699802ebaa1e276db7338f6b919384ee36bf41a87ef95eb7946641e310773ce6aaa0892959c070302047c435bb50067306502310095d419064c2b787d8566d7880ab22b6bed8b534905248987dc94b7ab2f47377e7da096326cc7d8aca12aa89d6733015e0230459a88be3cc6bd2512e78022564bba5d07d35beac7e3f6b8b4c4c5ce6468227c7fc9e7b3168444a68c7236530f7c7d080302047c435bb500673065023100c803e697a5735f2fd3822f4acbd55259322dfeb66ae6ff12cbbad91188553ca5219921cc906324a81ba28eabdb26dffe02306aa95159adbbe5016727a1157097339ea479eeb3ea3427a6691b5ba6565c9dd413ae070ff80bb35667282aeac30f7c260302047c435bb500673065023009fc89f7e58de7b7229df8784a782fee69f1647f17679417ae7b4a9ffc5e198f76ec459e1f62e700fbe08afdca82a23602310091738addca2584a18f7dabb363993e5a76b68b4e50f26388827de1e7e647d23b09bf2c42e932ff7afaa97ea8782116eb0302047c435bb500663064023003d5ec2298eefaa2f0f699f4c6f29a5119a89ec39525391a9fecee5d6164c0eaffd44b186318397cfe6bf30a16d5112b02304ce68c01e392964557eeab77db094d3db86afeb069311e88735152e58c417265c1bb7d75a7133fc7bcbfab657d9b9fbe0302047c435bb500673065023100f24b2d97e70a35864b6a08cc925a30b90d8285a1c6cd654345288456a052609e0f9ee33b0b8e9bb6928a373c4b66aaa8023007971f0ed0e920c041711174862a1e976a7b8afa919087402af904524943ab008594e64c34f2c04ecda31e8930d3fe440302047c435bb500683066023100de263f56f2ad7c413f903dd476a73984161a001969aa7e8ef1a83e966b3526d7b152ffb1231edc688f3a6e49b40bfe1c023100d241fe49881bed0cd5b0a251e024360194daef3244e038c497171c02513f7bf776b1743b414287259fb161f674d6a5e50302047c435bb500683066023100bf2aaa8f2c181e755ca84efaddba7220920942d0523aae15ab005182e92618fcce43de6dcc09b3a0a12cb27da8e015920231008c9699c8e497ffc580bce17ab24433fa1994dfbc9818fcfeb3529c5963cabe0d6f9a76d122c059e8a68fd73308c367d60302047c435bb50068306602310082d007a9016c439871248e5aecd35ec2732ac553c77c9468ba288685121087f280da642c68696c3715515dbd751a3fd7023100a13882cc16cf39070c4900114a80c490b7f6482e806751b6a93363a74dda9fb90bff5b535e218e674e649a654327dc430302047c435bb5006830660231009f45653d2d88db40cafca4d283d8e9a84c3f5186d13c4f5d65804c8c132d6046022a750cee9f8aac505efea596f171fa023100f23e2eb784de45caea7f8c7edaea8d3afd32891d23ec90ad88e050f2ea6b2b0f4f058c0801bea4104b34fd1fa2b8adac0302047c435bb500683066023100cc541cfcab95c70e72bd9eda606906aa98988693047f5a8f4eea79504f1fbc02288d474b871f8b5a4304d65fc2c701f50231008fcfa134232775458437b3425b408bedd6cc88f39660a277d94064ddbffc28e9a2a3527041184b6e1bc87c635b020fbe0302047c435bb500683066023100da3ab462134cf0a1e2d428aa8e09418e0b4e319cf3ccb87e68c857645eaac1cd22d11256fafecd1c371945d8948eb084023100811710097bdfedd4082640256ee3de0a005c632a8cd41d33a01f195c420d5f188de899b629f814b4e5bf83e5559a72730302047c435bb500663064023075fcfbdce8753699a72963199fbbae8daf7e206e5283613c6cfb9949e86cb0c44fad15f380b81a2dd56623b7f69c311d02301df7ff2a6c29eaa938f04ea069f2633bbc857e69c657ff20f6661f19ee72f6b33a5250021398cec1e2fa051cec784bd30302047c435bb500673065023100bcac4c9c6f5b0dac4d1940add132970fd63c15bc5828ccccea1034a1327e1ab7f6081ca88fbda7b5f17f945723174af8023060adb8113108101166866bf3f48a2a0fe8bde6959922f8ef685e0d6e9b2179924be2134090ad1f482d87d4bee6312d9d0302047c435bb5006830660231008e18a546430df3188132675b33d01a9743d3c206bd9012c5cb63ab0ac95ba56e4f502bfa3869b23ac32e3d1ab736596a023100c1c3c42c5895e14180951eaa85b6c252106963aa471f998da2b377d2079b6b6f583c66f478f6cf573727e8e5e4af58310302047c435bb5006730650231008a2744e5d9a33431112f3fe559856bb01ae26236fdc73f9404bd41af1c84657e1a4a8d2bb5ef9985933e199b24885f9b02304ce3915304406689c8f4b5e4eedcda20e215763fa58e9aa76b9ef3ff707f794932e993fa048ba22ea906ffbe341688a50302047c435bb50067306502300800ae24c1b0ecf9f22756236c8260a74fa3cc9aaeea9b54f608a055ca94eb0376a07be42cb642c91761a12b6cad91ca023100de48ca06ce300a913c0e1007aec8806a5a3da020c71efb3f516b278f22f85738fffaead95cc053cee25e21fd34556ab00302047c435bb50066306402305d95a1cb2e037714be0b61c732698b370642a212331f2d42c19be6d364002a2bbc05921ff985e6052a7e8a8de22e22cb023063fd9c15ab80e21eeb3a72e9c928c7953d47d5b7639f056cf808d1c55c87b5f296dee97e3a55aeca120c867cb74f5a930302047c435bb50068306602310090f587a7da43fba859d07d9fcbbf01c2041eeabc948130ec543fd4d3ef9487285837d6c31104115a017a248fa18f0f4a023100caf8a686b10828b6f8996e07e76cd3ba2c944b769812ea41a48b2260f62d4304dd55981294e16e141ca380fece8234c20302047c435bb500673065023021fb1eeb1b9744528e623dad34705ab2cecbdc086b72ef93520d340b563251a1fe03e761385f24c9e0745f0dc59674eb023100bd6f028989aad869370edd487a5cf851dd0df72d336c897a8296294ac9d4d04d56d33fcea1bc65edf2410cd287aa61230302047c435bb500683066023100a47b25a8bfc7334c404216e844aafb680fb1433b196e84053d348151b0f4a1b3a712077c304f7a37125241ac34f8b053023100c15a7b009fd692fd32244b19046e52815d82684d8d863080c5adcfdfbced0caa8c1d7385f15597a21154ef2877d312950302047c435bb500673065023100a3b0befc760c45aabbcc75815de99d07e3357cdb7e3ff65f85443aae358bbcdb99af1f0f917a184dde1c503070a3179f023078380e9984f5e3f3282ca44d70f7f2b3e038b67d04e55fbadee3c91d9b95820afe6212c8f9fed6213c92c6b738d5d99e0302047c435bb50068306602310081ba2708bd1d3101e08a71ca6e9e219eee012a3c850002dd4c8f5895f2688302ae24e272d387864f4c8a66d6711aa7c1023100bace377349c0159e14100de5317d97a85e4e7c6a1be24bc2641e07649dcfc746203379585476160df97871be7fe964b00302047c435bb500683066023100f71b30b3b90f1c5856f9572fb517392d6df93a2b5553681cb2144de4c3b2c35174ecd85929a53a4f972e1da8add17897023100992bf80138df563114b9096987883f499b445474e5d73ec1ac087ab03821a3431030aaaed3ba4ae026647682d60995c50302047c435bb500663064023048b248ca3f32eb2e38c1fee8c92d21ec257bbedf8efc26e559892949c858c03fd5466b9de2f67ddfc5b123511404d842023052e39393db76a70de29d209513d7672107b3b7c7ce30736aca756fe4e022f649cceb72cced7bdee9437dbbd5151e40aa0302047c435bb500683066023100e65ec603f7151a6c8d621f212254f134a16574c48c3c2729beee736360f779f5e126dd5cc1dea5c805fe31ccb7c0eed20231009440046c8775a9a1b002caa553c77910ae5fefa6a5cce160dda51bb2ffe239c413c9aa30b2ef23b8d794f4884f3710060302047c435bb500673065023060687cd4f44f5b21b900e10267801bd9114b6187c83c456d2705c9ed7e6725cfad783c03c595f1f6c281bd07a02de46f02310092df21f98d4ac3d6d79f91b69ee780eac65dfe5dbfc014fbcf30b6c100fe27e347f886121f2b1811bf8493c093ed15470302047c435bb50066306402306cfe606ea9ef593a755159fc55cca96fbe300b2ada7bdf5f56284fe1448216d201c3bbc3a2fb9dc7168d165f97cb38ab0230754b83924847201fb7b7ca843f595a06913e8792436b14e33d7997a2d83bc3db073f88a8dd5d46a8ea2faac97ce51ce30302047c435bb5006630640230296d575a2628de5cc153ef11630ced221c4fd5d6ef92aef81baa4011cf5bb72852a2d5e90746b6602a4602daf7fc22a702301c5da662a3c7c9c1575795facb4ec9f83bcbc55cdff77ca3bd6c2eaa3164f8187101cbf693cb85d0cd5be75db1b4a29c0302047c435bb50067306502302a13c2b9c59c51b82354eddb219646d1c9b3748a1c4f893c6cca82e678933ab60a2abfd9a44fad4ca33dcd6d08277210023100b2e97cfd834b1cf0c5f1058518175e2083d9411847680994cb8ec53c605c37a31a63b0f6923ed8031f7c9fbfb24e0a820302047c435bb500663064023047c05dc7eebd765947f5b7a0d501c75a93883ee44372d7136c3367f3db8685cd667b0b5855765255315c6537fd470464023024d9950750e746a9fca1e61e3d9ba8f9d174091cf468085e1a6ec77c2f05ad071ab62d0fe60e65753ee9015cd867d0ea0302047c435bb50066306402301007c5e7c6a5cc9defec41e81b522845af0b18df681cac105cd49ff2f177a30b4342b07f1dd88a4b9953cd81470a0c9202307a29c321428a7eebfbc3b9c537a2ab6ff500fb574d8012fd0f2ee7ed9a8388f467fb303971e0a0d724867643c71360090302047c435bb500673065023100ea90930bb2e7ceaf07fd2e3049a9c04e34af6870dd1305a01628bf16ba5bf0f6e91eed01c3dc89c177fcf3a475a68745023030f6ae2f3188ad608e283ac0c0f929978401a18ca36242d9322ba489d356d2118429f0f7fd4e5d21cbe14b68ed4cfe4e0302047c435bb500683066023100a2f6931564bceb9cf1b0e408352c88597a3283e0ee2cfc5a60347b14806fe56ed54ca12eb475e023ed02c9f3abd2da90023100fde083318bfcd252ee58ff7a60cc15a2bc7baae3d14b27bec74137e5aab4808436f48e4d2e1b7f4cb865318e22d15fbf0302047c435bb500663064023047cea663716aa2779e30d6ef75fc108d66e5286e0f628515c2ef575c8375c3a2687e77c5eae370c598a12367fb3bdfae023030ff0ebf3c8003009098bb76ce46ce98bfadd5acc6dde3dab66c49624135ada266ec185b48e70b4d4b4a073f0da548f70302047c435bb500663064023036e5dc838bcbe4857e2d6b7be1e7d275f91807e3987fac37a735c75af9a065c09b5c9d0200bb8348d0d49d94477be1a702302fa329b5cb88662a4779873a7973a3f1b1821f0e23876e9f240c1e19337f2790618ada27010394fdebb07377d524e28f0302047c435bb500683066023100ddaa486598a9d9448a4837864f8c528f0549a07f40869cb6e8d78429bb107bacce5e130c3d0114bbb3e3f365f9cd2d27023100c65e88ed99870e7b895731d5a8e5cc73192c01b52ff086559fb52547d46163aab834447bc5b935654fe8bf62cfdd71110302047c435bb50068306602310080c84ff728123aaaccf60ed654a79d0fb35d445abd33e76dd71f1c3893330f1327a66015f4afbc0db9d0160ba88808bc023100e43d2aa1d4b6cc78738e82de828b09dcdfa45de40413156bc803ceda21fc034f9a3987770fdb28e48ff7ed0de1d0452f0302047c435bb5006630640230602c77639e29f5e1118f55ba05e0eb27394779dae92d3aaa73faf26cd8a96cbf7cd1aa5c565b964e85bc98106aaa323002306840e812df2e4776d3c490a98fe35312d72ac97f2c35ac910dddee86d2612b0289b258965b9840ac4ce2ec6c350c15930302047c435bb50067306502310092dffa8654370073122a4486c6a3150979ff6dee1c1a000a01298377e8ef25820118b580e8d36bbdeedfc635baf7d36f0230471964f2781c94739ef64551dec7085c10ca2efb642dd8d9ec67862393708eff8014f232d2d978d2294bd2e74479cbb50302047c435bb500673065023100a47f56f859adf9861ef845378146c621844b0de85a3dce6396fddb784d61731f38367c978df4c953f1869730b63b65dc02307b310311f8dd4868c27bfa9d0ccaf272b8c98a01d61baa44a2e3f5add67852df974fb87fb6a1213c716118e924608ea80302047c435bb5006730650230035be09892d4b7ab507707f8bf9b87ae52167b2419c0ca07f66309384e4632b74c04f5777651e63ef393c3242f842de30231008692836e38d8282f4f35a9212b76ce2b3fd6bfd84b1d0c0689508e321b208a93ad05f3900c41176832249bbcb67405530302047c435bb5006730650231009d32e187c8e4378cc879c36c78a893a8be289a31d82c52aa7d5416851c870b1106581244536a038e64e66f49db39359102301a62f11be3aeba2393fdaa796c2b6462374ec781cdc3e790d9317dceedd660ebf124451ff2f8d29c73474596da7c13b60302047c435bb5006730650231008d8b385b014deb27f1f6e39d429c16cc9144d12d11e32ca69321b1359af3b2a6bf8b6fab3e236602b1cc7e7631ed1b3002302c6fffac7c5d243e0a41109af17b4add61c8edfca453dd7fa42a23f927d0adfd23b1d2a30840c076309517344ca84a0d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310084ccbabe02c454b95b20219f87132036a25d6432802210ccd6da06855064ef0cfff8cd56cf7ddf497e9381757fc0b081023061daf0e33868068b0f9ab31452479310b5a9d2924c10bcbbc7eea8f685a3eda65807e4b6909348c7ccd8c2c44e6d437d0302047c435bb50066306402307637770f6f0bcc30c7c9587919f3f817100d65064e13132137129e6af557cea12d458fde9d3b1d75a94ffffe59d1b65e02306ed45023fb92f0a5003f618b4dc2ef8d8fa5f8d89a8f9a44d313cb55819498eefce5c438f485573fc59d8e92728ec8410302047c435bb50066306402304dd2c64e0d2c9166e9309b179af052a7f062f5d7efcf9984d5d38e5382d5f9a78d0aa7dad5b516512676bfa08750810b023042546a9db4d100795de649551b26b22d50aa37d456a89ef013c9c41a32fdce7eb07384ed63a3f274fa423f481ed9e8ff0302047c435bb50066306402307cc7754f017e14595370cb7e5a0a6f0fbea6ececac882ce4d6bd7aec14343db7516037fd4f42d68dbc89cd4a7b925204023040d3b264744d726e0da02429d1b7184de2beaa4edc763efd14e29f239c4c5378fbe2193bbd56a0471cfbc2e4bc7d28ac0302047c435bb500673065023100d763e60b7c09bfe5409391457bb29929c87a235380b8d486d15775c6484d66a81e2b964c8cc297adc55dcd894f9ef85d02306f0c3a0255dac4ab58d0f8752662b626df98a39a9772011f40284f7cbcfc8ec8bbc71dca66aea72efad032bed87d40ab0302047c435bb500673065023100f47302846455c53cc8507c8f9464f2ad817470b37326bee663b84d8ced1c1d043056c357ae7574d713e9d83bd305cd8102305fa465f39e0c3f04adf8dd7df28ad40496b969c0b58a3200df1e77583b5c0991a1739801ed888a8cca130117698559bf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f1be445b09f2787030d28f26582cde5f249233090e0d6ea1ecf768edd5e525a705cbd2b1973ec82d08b301fd61fff0d2023040c12559b743b005cdde61f48c78b08a98e9618934ae692a4fbcbe30ec4afb673ba6b91c6efe08508ea12532eb4d395c0302047c435bb50068306602310091d1f015aba26436a45d1aba536d0f380dd32255b119b4aa31a2341c7722b777d5464ec9e730337c7162cacf4ed89d88023100f84c3f369d080bbc5d3582da36fbc351a48b44046c7767162b270224acea73cd9f4e018204c37aadd65666956bb6214d0302047c435bb50066306402307a618da68b1448a65d71de950593836e6a1d3f850d42e718b45beccfab1a32a3f8f77b3c03661c8404f89e02be91288a02301b722d1f9db9385ef5ec93fb930b195b9de546dde63551b029f6626f1f1616dae522833ddbda89f5aeb54f2e4f944bf00302047c435bb500673065023033eba9abbe10dd15209271e135ad73ee39eebd4753e60869a1919bfcc59c5692cfd98a1317b91d8e835797fb4f4badf2023100b07f1fbaf80f6cdf1cc570a30899197b001852688d44737ad81fb67b9606f2087966c97646e5e59b68a8ce1ca782d0210302047c435bb500673065023100eefc9bbfe4ab0481bdb488c70aac7e8cfe2537a707cfe57dfa17f9e72613b733a2bf6345be71090adba75628152ab39902307f45f6f09788408bd128c9140f565998412a4ed883b90ed29b467d50171a966144b09469581377d1a1c050c2ab07e2390302047c435bb500683066023100ff3dc34a49ca34b29d869447830503963981fc6a00006590cfbdee62db0719b7496aaf59e6a5f04067e356ba2221ccc0023100ac3d5f9558970a271917f15475c6bb4494aea9c23e622f1ad2701e27761d57e3f40b14b39f3392bdf20f4f10349e2d6f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500673065023100ce4bb6649635b8454b0d291983db6a949c98307d8d7837bc7c2237fea55e6762ad28b6afdbdc15d2d4e04f4c568f9a43023032bedd51f487d024cc410df943456db8af10c072187ac3e3eb8b42deb2daecad41b3ae5b86aea12bd0c45b86147ac2a30302047c435bb50066306402304a59cda7c7cb8b9b35378a46f18c999634049af1517f412cdda37689537f6202651516b3afff226a480c1566731556fc023012fefb674be879a6ac0567f4a5490af3919db8ddf6ee4bcd7a1b2728debd867dc6e5188137a890833da4a21f31b5c27a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ceb9fceff897ac6aeb0b5aff357d73ebb4fd5c32a4d32f78eca6b58c3e7260e1c2372510a1ae9a72bfc179f2e4be63ef02307886ab36a29cbec7b08c4d58e7240236be6f8b389d7f6e9ac595df873296a0476996cbb08cf911d3ea29dfbbeceffdc80302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500673065023100a8d19fc4fa175ff3c1fbd7b4304a319757afb006bc072a0f02938645ad04d4cfcf84db70b156556db1381dca87f002140230604934063766666ad6637ac2a094c1c891ce4e765611a9cd95279d9018a1d770ac40d3061a4549e49ad2b373c5dbb1ea0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230125937ba16fe7d2def3f5bc8b277b4ff39afaae8251ce6e93cce966374ff9d03720f029241984b0f62c6de01d505ce2a0230410de6f094614922372d46f6c83e5e977e0e85874ca06d96851e387fbcf21b26c1d5483679dd719b1bb4de6c5b8147710302047c435bb500673065023100dab3bc1c2092da0569e13533b601493b845331026c7d459665df0f93e5e5dfbf2c462b5a82ef5a374e65358ced5c5849023000e9ef24bc89d0403a99b4e6c1f2762cc03dfeafa87a7e9db74f1e975b5e72c275d512d1544c4a08970b8d3651c5700f0302047c435bb5006730650231009e86d108b410c7097c25a5e37be1fd6434c8128453ae0feced7a76246a390237f8d3f3713d0ec4cb44dc285f69bac3f702302133487484a2f8bc98625b6d531be9f361f26b883ef619365a34ae8d2e9e1c5b7b36a791149e5af43d3f443130bb01300302047c435bb5006630640230209cc14ebc69ccec51f9018df851bf54b1114143a35ec37ab2eb8b44f01dd3eac787c7cf35f06167ac09661a5b4e68ed023013c2ccca9798300737912db768aae6f18ff0bc1d72390e45d744cf103cf8b0cd976524c40d3ec738e0c370bb8bde7f520302047c435bb5006730650231009f725134fe77739a3aae70fa93a289d5df51eb30557875f85b81b5ad207011f40aa60e0f572b937ed703dbd756372009023070b1feb00f4d7a70a73ef8fa76294e07db314ab7b80baef151bb9e4ccc6d38ee700980b92140420d18deb7a4555b25eb0302047c435bb500673065023100f9fe4c0e2dafec95396d66aa614854364fad8455e063bc6790a42ad87b84c3e44df64a596b0b0381b49c0212c008850002301e999fce4bcc3ff47a7c8cb7953b2646d969e81fe7d0297de60405661ca03f4b5656ef19bdac7993124b0154b2801e170302047c435bb5006630640230012ef79be20a8097db5751cf5bce338443ab940a78c19fe6194f42931857a30744e0231d961cfc3871e112c011e87b3d023063ebf3bcee2037cef49f5a24e6bc3d3e4b3149c14d6f66f3a2976353be9ff8f78d017ea89e31bd9cdf6919eeb9b28e590302047c435bb5006730650230773ea478cee11258db8fe5be80cb4fbda61c596c64f27b57df80b7fc2b8dcb0f419da68e8ab4cac1269cee6774c1cd7d023100ff2b266831903f719c08e947d0c23568e8cee5317e6729d6651cf61233dba474d039ca47cac3a220994829988f692c240302047c435bb50067306502300b7718cba40c0c64201fa56e540b25c495f37ebdadc2372271bef7d587b6bbcb2923688691a7a14aaba52be6b139d92e023100875d7bd8fb0bfaa89d4ebc9a1ec290947305cefe133512a31f7dc736b64e2f71c7c424c727c8c530e37e6048e71b13940302047c435bb500683066023100af57bdb56d7e584ca65f79c867e5cc25ccf7ceabaf66762fbc78b29433e2a30f16b4936a68f17a4721d4072d398d5a36023100b7ea68c68214bf3379ff0dfc65780eb451889aed77e19fa19bd345d5329f4441f5bd775e2caaf315bff1a71079d4f50e0302047c435bb5006830660231009985785f0e8e5c3975b0aa4e70ced9913f1c83e5a5c950bc5904349041114db15906b4fbd0875353c4e5da257137845a023100c93bd6598058b6686965d5ecb7766932fded822712ac1f0dd8f0c919017a38d6851f6c92107d9c8e33ee8289fbf8a3980302047c435bb500673065023034daa9d585730de0da66cc7f2294ce2379224cd3429ca274f5ae4ae356087b70cd6132ba041552854ee8f44522d4d4aa023100c63de593d4065cc5c461e6f310490617a89a727886386b7708422ed36d0e68bc8bef0a54f42c56b464fbe960e2cc17d90302047c435bb50067306502300b8182a93c3b993187a7f0f945d3c76bd91dfe330a8c5379ae875dd6a94e5a5d224eefa9bf58fbcec9e11d7e323747d8023100e158d3a9ee786e4602a9844c633118dc288054acbfaf235af3dcb032d890607bd98b8e62e60cef3a49d9e9e863e33a1d0302047c435bb500673065023100c031a4f9024bfe126f7981ffdfd962f3ad058350f69820cc92b717485ca461bc90d37dcb6a1dc4a2710260ca4097678602303e82e3a1aee405fc87ed9eb92567714b690070896e865fa54d1982dbe570ffdcfbe4d589072aed3f0cea31a871166e140302047c435bb500673065023100d39dec016b87575e8b8afe7e5dc781f8bc1ecdc4d47989c79fb0357d2dd3b4375a887cb7f9cbf99ecec5d5a51f1f2ed2023029c28452ce7131a74c080d6404edbfb1da7774b719f101a447041032499a3a3ab22774d0256c572bb9d567ba82f412100302047c435bb5006730650230677e42124faad2683ebbe0702d635b3f07d4471b2217d872f8d918cbb1feece7a33a676e0e73aa4257fcfe1937345a16023100b8725d940dd51743ce6d7df37e020ca93564a2a838b59ef32155e60fa09548ce43719e44f7fc18a0705b5b73818d36900302047c435bb5006730650231008abae27d38c7adaec185e63f535cd09b3bd0c470d985782555596cf164f0961d035a4a0ba6f6e06cc13f7a1f48ba3a130230537cf6dd6b6064aafdb93bb7aa05b8712466bef7fb629a37bb9690cce27bef74b97842f5dedda19198b99e35bbc7b1c50302047c435bb500683066023100bb58d1175dbe77f40dce13167a0a103ae33af0c1340724910fff51d79081f66eb44903332c8b14a256360f3ce5e2e483023100ffe5e857963f7964b3ac58ef3df3c826ade4a13eaedcb107ada81be42d57d5fe6c66616751533d65c95431bb3d63da690302047c435bb50066306402304dd1ed7a3c6c8752d457cf3ab23012a5ce8d4ea25868bfc0344a5179ccc9a23356a8f255e24bd98190a83980dbbafe93023021fa0e09a3d0f2b992286a14d13fe8ea7068c387e3b9d44331d9ae673249aa1b3fa8154a188f7dd5cc65faebfc619e210302047c435bb50066306402300680821983bf94c7ea3ff22ff188530afe4ad4b6a484285f27982bcb2f0778670f70540b5d5fde9b7116d7441622b20102300dd192bad9a7ee9390160529692c4ca11f4a66c632bed85cd9099d95c207b4bde5e5488161c71eddf2f78a712cd5fb090302047c435bb5006730650231008715d937c0c2e022f414fbdf3adc8928d18c012e50733388d4806fca1d84c32b3c16d16e37d503fd16e1a27d50cf5bd90230321e1d424dff339ad03274056ed1c68909baf0528147af31718097830f7cbab43d57861b50894b9198b127e8e23111910302047c435bb500683066023100ecd545979b78106612b06098b3cd2ce18849c9abcc2aa8a953c6adca499988641ee7202b442baaac42876b442626ea00023100e9b605d2a427bbaceabe228c88f3e3bcba60ccb8937655a8a266ca11b37361dae5dae9bb1f192113499c8f34b2d06ef40302047c435bb5006630640230584bcc9b0b6d29b20da84dcb7257140c2b049217e0dda018d9459cd43e27c02d26cba89ede03f59025f93ba8d4f7025202305a0207305ad2c5d397600794df485e85c0dbd36a27879d691ef7483ce26f6b87cb7b3fa6c3bc46787de7495c57e729530302047c435bb500683066023100fe8fac980c218df634adedbbb3b80e2cce883c7335635a1ae312510b7c0cb6228018e97b10d39f1aca7e8490334b5617023100997f7d930f499f2a55e3302d76d900c22bfa2e90ee8f5c7418171608361f8a88ab6a9bba856186b7b6ba690b03d5eea30302047c435bb5006730650231008fcf0a34c6d16d1c57ee393573ad4a97c4b429205921f694226097fca52f4ecd717689d5153bc1a694195e17109915a102300094486d0e8ff888c2346c2205a7f117c504ed601aaa97dfbc3080af866289b5bf9584f3e0bd4224e3e47cd0f0d8000f0302047c435bb50067306502305c160aeed8077f52f515a77ee46f373afac102a7e3f3d4883a5bad0d1b4b7534ef93f10ef49727359126482f6e57b9fe0231009546b8f3ebf64c4bd50939c59cc9cf089ed5b235f91e23128931277be2154cbd27cbbec1532a701cf1dd7a1856b315fd0302047c435bb500683066023100bf41e1839ca6ae7eaffb19f6b1bba0627d3d6f3e4d3fb72e92097ff1d235ccd39bd6c8900bb84df3585fe8a7245e11000231009f72bdb42c51cef3dd0dddec55127e9b06c41708140581a1d1c5a76ebea0b765129e5309e17f5ec6dfeb2f91ab3dd1ef0302047c435bb500673065023100feda19d6063300718a45d39240ee9b37286b8a3033c6efd0d2a6bc0da6eba415b6fdd9d87363d1206fe0d4050de12f900230174a727831e161851f9b6dd8dd744f3cded50c2f4e2866d5c4949c85a15c280a3b672a816f35ae6ac4ca0c1b25cae9530302047c435bb50066306402307ec47e16e5dce2db8be6e5ed893eb3372acdd4bd351c25ce68eb7c2c7ffabf7b0ab9d69b88a8e49421399e65b4f335b402305c235a0eef43cf4850cefdc5e8d6e86bda8104cfac94669e7f5c455d98899c373d132e2a926769c8fde86a4efe7aa9060302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100df70db0bd0440f6669848c0e59882d28e4accce687b5e8986f9fb1562e74cd4154751026454a195cfe6b481596ee84a7023073400df00b4cd02476dbfb8a084b91d8a7c602a765852b07305c4410dc5f3e786db2c44a38ba0b2123abe60f8cf76e110302047c435bb5006830660231008f375ace41cd7cdbe46d5937607b7c5a3c0d65416cfa6521ca0d6de7710d84c83df53276f8ce52768f792338c9f28fab023100a65e02c1cf484a3db6ec822de60e851277618fde8da72815ad12b555158d3ef99d1ceb456ff2d1e912c3898fc5f71a270302047c435bb500673065023100f83ae0e6194b50b2e4e98d7d825d01f1e9f55d79d893f9517b6fc5640d9db87809a5c23825580e47d397cc985c348c260230778d006caea59e98a28742da6a911f2aa49e52f9e6301a7c73ab2c6076f566175d53d50eabbd07f3fbaf60801b1155b60302047c435bb50066306402306f73d548c73e65d945277ce6332ca8b76cfd4588b42680f0c9af4d424426749f5a2c6e78c179343817fde0e51820fa4402304b38e6b3eec2cd98b5860b806ad497b22b6c0f0dd2ae536d9e4cf2d4a52cc5fae807d0b08d715d5ccd4386061d9a54c90302047c435bb500673065023040241caae2aef9f6c262c7b5f8d77c80973d5ba4712b16214bc3d826a24fea9ba934093c5e74c8f69ed4654c42122dfe023100ac6da6dc88438c1d502e2b42296b7bdf672fc2b662c07d7d80c5080c7898c913c21cdb6e414e5c83be37a1bc3509224b0302047c435bb500673065023052b2f0d252ff4a2838354436e792b43d1cd4f74f6caba6d050a966cf08c0b5f5af59c7afdb1df34f56c6b27a1edd4365023100d8392ac5b242d4ea0a8d9238c656552f53db1ef5e15860ae1a787af21e825b32187a8aba3deac466f51453eda1914c900302047c435bb500683066023100caf5d0c7cc13053573bf844cffe43b3399dcce96b1556ccf204f01af3e6fa9067a1f6a5b84eccd75a55deade7e60c62a023100fe7e524608628d22ff404ffb1badbaa122dbef886645ab07b5d581e9354a0752a2f812be79503c9f3e5e90769d4cfa5d0302047c435bb500673065023100a7071799d69cb3d1e5c61aa1ea4ab47189d05b4e160f74dccc195d971decf7df99f09efcd74dd8d3469a7b8435e7e91e0230412d178db6f8ddc176037f82a361f8b73fdf9681486841672e551a3f8b42b7c59db32f5e38c4111c20541232865de8d10302047c435bb50067306502306c1f972089de98091ab58d42289e5c43ae5016d154c7d7f43b5e612cfea8d2cfee897dc4ce1accee4e902ab1c2c67edd023100d76140601e5f30ed3804496cfdea567485d0dc8bd91829d21c4368b5e9a81fa25eff251c8c026f3dd07dfd435441269c0302047c435bb50066306402305df7fc4f6a5eed7e095cc7789c3a98756f4319bf6a6f7514e3e35b689b9908ccdc76e8226658ad466457cb64c06c377b02300721a21a7362825f1d84537db23cf8702d59e86b3944553b121e0b213bea7bf8801b4b7a218d701cddce77dc25b4ce280302047c435bb500683066023100a0e2ec3507ece0ab1fb59b1ff32a9af385381835bb9410183c0d5247e2ba036ac5ceb17262bf5f5ec77234cd09c5dc87023100a0a15f1f3b96d65a7411dfa021a5ebfbde39a69d74187d5cda20be6bc36851fddf60691b61a8a88ddd6aca99f40eecae0302047c435bb50066306402306e06694062f53e2428af6e2ce88815ef826b0bde905518f85ba4d8b6a15b4ccb5ab4c6911e47b279416e267c04c8b54a0230474a5ac0c54947557686ecf4df9a9a731ff7e20b0a9f4770f31a016946405536ba9c53a66252622fb6fb28d8a258e13e0302047c435bb50067306502310091913148fd0d8ec691e5c95189dc6761b76984c50bc927fe6eaac061b00826f823a3b9134a244139f9b7ee82b2b55f640230557040f9791783effefd6f8ef6341dbe86033c7e73525bbdab486cc870d50b22e11bbfdeca8c61a62e1fc5253971de1e0302047c435bb5006730650230701d881aa9187fa9e98408519ec36d0848cfe9387e7d9da916ebb11678de9c0a37b1a99480791860e26b36ddda866b7e023100e97aeaf992788b3f778a01e41cc731a8abada270961dda9c3f73efab1a675c491b1a153c85853c30616a56acd115c0630302047c435bb500683066023100b66cae1823c6adbd42a9c325fe2dfad77f4bc2149b440eb11de220a246d3cc88913b9592dc54ef48084c895a6e840465023100eb6fddbe7527e3bf5af7d8e99055f162aaf93e66b3dc1b63179011b2714bc090b4cc5a64b3fe420e5d9829d935b237e20302047c435bb50066306402301ad82254b22b503c0cef2c8ce5cde75cf7bfca6bf490f0dd8ebcf408977dc6873b7646297111eac021a9a481f384edd602300c4a8c16be61bacc0ef407b0be6d110ab36c00daab81dcec6013e939d5cae25117af321438007cbd2a67f1523dd447e40302047c435bb500673065023002790bdc8d302ba8a119615f0a713c8c1a1b8fe86abf74e15b3a2ab29b6367d7547caf898e6901a6cdc9b54e8a074b76023100f3a5080f0dca49785896e1abdc239eadd84792f22e94c225a80294479d266fbf046ca586ae0b600815da43f9e462155d0302047c435bb500673065023100a77087b7f2f73a2544dbe816721274b297d0f46e784df407bc402d54a487699e007f50d0c873e4b592e620da166d4fc70230496c84593064d5d3fcc2fd9f837b067ef86db94bb40d0d0af46256fa63b08dd8ba5d3ac2518fc5b16d5a73358dd338620302047c435bb500673065023000d232d34ef705ce483bcad8bdb5735629afea120fa6d5a1799945db5c0c5bdc116f3b4e35fec9557335883d6acdca9d023100d30ad8cb3ed420bc46a239bad1f6819d8af4bf98e37de49b608e72a49473497b7c675fdb8197d4979bacdbfb54a279f50302047c435bb500683066023100a113fec20189414fe054ca96c229da2d9cf703da62cdf230dd8bb228b96df8741954e8b69c154e6f0151a15b0a8b5f3f02310096a4323d693e4b9ec37c76cedaecc26eb662a62f2d315471d27bb8bd2612b7d0800aa3e6b17a594ba17e3f082f1868530302047c435bb50066306402305a95d78a697e36ae13761dc46a09f1bd2ec718fcc9784c07ada5f13fa9db1edd33f0aa0bbc69dd0b7a4f9cc79745b3a502305ac43fb0cfb9053517dc4c000c45af59cfc5f23c293ff16d6e17586ecdb15daaa7ee9731bdffd0756af25143bc7bf6c70302047c435bb500663064023023c2cb17de6747cde71e51f9d74595030b0ba6c32c17c7f5e2744ceec79898af40d94594deed933388eba6f7cdc28d2d0230045456241c064c96b3fd08051e2aa4e6f2765fbb26215a16c8edb76986f9951b3a617a37f1bfc7395c46b063e880822d0302047c435bb500673065023014fbb14e26c4d07b43e8816b236a4565681e61dad686f0ce931b30850b4857a323f8e813703725ad93f37ab442720649023100c1a2ad0a10709318504d15f8a33a12e70eacb0babce43b03cbe04ae5e3b3a85579c79fce265dca3428acde7942e25de30302047c435bb50066306402301c34b59a12597a8d3bf63815e5329fbbf75bc6c5d565ac8f873431d576dcbc2f9951a8f737426389e666e537b7098490023069be455e9f5c3dc5ae3f153f9fc07fb9500cca535ca35121d5827783b2bf985356ce5297cdeba5af7f80e58cba2c671b0302047c435bb500663064023038b74e553d2732848d53db42b8e073e0c4e0d0bb4dd13826ce8548f112bea9eb9922b8e1a900a929794aaeb0860974d2023072b79415a3903cd14f49e9648c5b22d00841c4145fe2be679c4686f2ac5d6452d9ab5dbd442b76e2fcb3275208be02ba0302047c435bb5006630640230250dae5a3ebd15b30df0bec7e52264967885993af3a6eebf7e17ec7c130defe345424173d965993957d857c7b04ac08d023001574841ef10c1f9209f924bb8eb3cbaaf4aa3da2520881f9354a93baf73201984b2410fcdf06c553617d31fd778ea2d0302047c435bb5006830660231009bfd952beab81e937e5a93b03640da21c1cb91416ae9c79303aa4c20ef69d9b2a41ab9b3d2884ddce7d0505716e6079302310087eb6869708ec130b09b7466b91483b42aa2042006f8dfa4439d161206f96bc14da5278416cd08fa6a8552f390c3cf070302047c435bb500673065023100c5a68e9fb45389b3f4f84785d80f21062a3a5d5d1bf2ebc1902200189e7dd222ed3ee592764e928c55e6a8e104ed622d0230134b167a36c128372d1d574cd2e7d558f3a60795f415d9b0b877c5b919700237ab696f6ff6713738d1bec2858b4ac4bd0302047c435bb5006730650231008c5bb6afa0deb889ee965bfed47d5543f78d0f011a3d4dcb06689f8243ec7dd9ad12c2fdbfc48e4c89521345ae2572d20230201606e58e9ea14b8e02be73847c769219b124d8c221b836d75acafb7ffd45313f5c2735c7f419777191a88ff0a1e8fe0302047c435bb50067306502303b4b7a11583aaae9532a504ad9dd6150aca2967199f5a3ef315dffc1f42b95d0adbb42ff632885e694e6e81d733c4cc4023100c8b73ceaf756606f962a4a4835e9911293576cd8226562173571b19da0115a92ccaabe8d8873fafda85db47517414f9f0302047c435bb5006730650231009215fdcdc54d0dcc185a82ff195030aa991f27a952cffa3285c68206db9755e9801fed36c8a3d05c8a917d28495b7223023067413684ffc0e965569fbd914847662f7be87a3b5c3179bcc7f9534249ba4995fa3ebbcfa6dbb97146257281d74b828a0302047c435bb500683066023100a8b54b4f4cfe9fd4ebbe50eafec20f37059b934eb8c57eda9d842cd415ca038778173b2cda522af0784fdb37292a072a023100de368d1c7991c82a1b427e7a609965072510c2078f34ffab389b5504867da9a441a5996de656247a55803cf11378e1b80302047c435bb500683066023100849ae3f6c3487a4c2f6aa988d4f30f1efde11ef35a87ba0c7bab9a2bdea73769d47131ca2b8e4cb7844375117acd778b023100f66190c37e36716bdfc9a5f9317fc3f572845b7e004d3ba5c90db0140ac0b3fa19aa06b7c48b5fca3e04c1964ae0508c0302047c435bb500683066023100ad9596ab810dda76c45a57700560b8569812948a6945d5e607ea57b9a8d2323125094bd06b11afc588389ca67b1c3131023100fff4d7aba05890235cbca269c2963a7485f1841a80b9b76ae1769f03ed0c5fcec58f62798fe964d3eddbe78c28f4c2d30302047c435bb500673065023100ca429ff3dce3d08a5b64993bb219a6a332dcd501d67653a46728021374b91eacbb43df5e13b8e830a73e1df4a745d3ee023038174e3eda626d59fa8798f3e00923cf6d437caa1392157c267ae665e375b92ffdd6721e03f36c58d451fc42b9c0fc3d0302047c435bb500673065023018733935b58be529b35c82765ea7e8926488c7f8c6a2f92411e3ebc094279049b2e34ccd9acfa232f6b772cb152a03fb0231009cac6327817d1e70758e4042be5a01e380187b3cd47f2fa47ac050d2edd101efbcf36a34b7caae29efac9977e58140b90302047c435bb500683066023100948446ed8773dce2e66a9b6fe2c5a65a435effbbcfce650e138e70cc03d76d6aa6a558fa73b58712ce4e1f4ede5ea552023100c876950b63bd985e0af5f29e2111c70713a10d49ef4a9556ebbd666e52cc2a0f83da9f257ea1431d409c102b8bb72a170302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c2a521d23cab4eed94380e303555632a9c45b5c486e24c87570d7938286bce35a19ce052bf884134cb36e44cc6bb3cb60230787703e22f657b238ae657a5a0f96ff79fd5b990da703d0798376536aac8cea4630dd4f21e2257ae3114813cd520000d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230632f6c262db6ffcded817d67666113d446cfb287f474d3b707ec855b3345555ca2eb1a37f7fa559b6678f2e1d314f0ad023100eada931807b5df71942213af55109c9910c87109693ed425ee19ff9d16f738a13e3527ae4c6c0018ba563175a82c0d3f0302047c435bb5006730650230304547cf58bb629603663497eadc94ec789694b3082b28e6a2b76c0cd2bcc038e637c5a95144fc6502bc2a25f5c6b2a9023100ea04e0f405e98c41e71e226ee3f06d5fe7938a7ccab962414e143eec902965a47ab731538959f88c93c0059d0787c4320302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300bddf3f84c9f159b43129a52de4624d37510d020ff319031a6e16e8672db703637e71e0feaf6ec331b2368bce2c56098023100edd3c8a271d66774ce9082ac3ebaeea4d915d89b7ad39dc2a65b8f03e1404bef6425171b119ef19a40b618f6e29248050302047c435bb50066306402307ff3f3058ad1d1dd230f150b48d98b3a2e68b3c75a9ac39fcbb91f2dbf6a76a4266ec3bf485bf8af8cfb9d078007a90c023070e6c768bb289772630ab8463f34c909274b19dbf9de396c68fe963c85c01ef36935a73a586e3095e10833b4b2a3456b0302047c435bb500683066023100f0212918b6d13dc23463942243b6ed3b4055024251eb4f569aa7a428baf0a31881ac77685844df94e69ff00f73a526af023100ebdf6a034fd6da3d7f459171b85a99c06c06674a076365177406a101d124675f5079383ced27432a8a4eb6a7be5040d50302047c435bb500683066023100ea27899d6ea1384c088843a26d16895b78707e5a1c9d3073d283aaea775fa3881e59c68d676e9b0dc337bb25b186f042023100bcb760ba2c0224dc8718af02e64f9c2293fe92dfc1d3a8aab9021e25f67664a7577860bae45ded2418a32a8ac0c77f390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b35e37dc7a9cbe7d7e780a2a7d9bda0bf8101599861cecfae22635cc3dda01f383825d6481c81d34729642f3d4d2752e02303be92e9aaa8e637fbbd777b1d7a252f856be084b7d1bd03c8528d88424d1a812a7664f67c9affa4979a71c1071bffb7f0302047c435bb500683066023100918c1eaa43b2a3424c3e41973bec2df41ba857cb7654e25595800cff29a709d5bb958b8759816a7fd619c6dbcdfcb404023100fde78428c14d3bbce7233fe19fb82b51b90811a2376c7ba21d710af376a26140d5039717dd5ba33e12a7ea57dc8157260302047c435bb5006730650230215c1492e752a0f4ae56d6cc371a8018d69dd6961d1e1c4cdca689d0dc74ea1bd204a4dacafd96890d605fff886df4b4023100939741d620fc8654a91ad6e1fb5a6041396bcb2ac1120f936488798e55f1e9eda6a794018073df54de86f3b7130483620302047c435bb500673065023100950ec96510da4c6f4c7d77119e633c1e24ddf4dbbc9cea3fed37c2f5e55b012f8a4eee7baba9e6e4d43773d0a38a2f600230167b20cde291f841749e2472222ee7b922ebba8b9c1d821301c1174f265fafbbe71da21e6296ba200a8a8c46ef09a8a80302047c435bb500673065023100b749050d392e279b463f3fa08bddc3b758d90717bcfb7e45c90f94e6c2832e8f84ff56531e0937258d9543ce8ae6d28f02302c900a0c80c5b47b5370fd2610eaa5056095070d422c4168cfe1d9c1d91e3ca7da4319fa8c77d160a2d0ce44be2868b20302047c435bb5006730650230027abc41a29874a8c03714ec65e4ef8ed27ae4e4306880c9ecf107f51c54e7c6f6ce83842323bb264226e18050fca2d8023100a6702d6a9dc4fa38bab6afc133c1d693987c18b4f42af16f0232a8f1a9abcec261147d0ca994f4549e2953fdee739b0d0302047c435bb500673065023100c3c0d70d944938fa86b36b8f6ad2f067cac53b0ca07508da42693e017a70b5d0fd39f3883678566cc60f69ff89247957023076f4646f5ce63f70c1fb94a4873bf8659f8fd87324d94f765220ec728866f5ba1c8b0bafa2920b55ecb7bb55005fd1760302047c435bb50067306502301db85ba05b99cb8a3631b890e1d3c8b2199dc8b06a3e28db9cbdfbb78ae333b927d81c3704fa7e5773cd93640db653ca023100ac5eaaa144216de321c1a9cd8282eee3c677b13d3545a5b74772181212f3697a559149055cce5c09b547b13abbde5cf40302047c435bb50066306402307b1ebd478c9fdb506c049ec3ed4f27cb569162d897bf7ef433fa5388d7625623cc062d25d0d24c2de755d2aff49070be02302baeeddc777c6e2f029f1979838ad0880cb1d9cf891b7bc65cb6848cca027679492c83bbbde55cbf1af65e06de231a3e0302047c435bb500663064023071afa3a4960fdde42530174d8c63e289d430864d32da79ec375bbb52d6127d53ef0248211f729f813ce61e19c2485a660230235065f161551f9b0114420b0c77fccd9b6d754e85a79b7129277a425096a9902244886ec271e38a5825414a72eb15e50302047c435bb50067306502307f4ea36b4bf34a34836c79654d4c4b66ef44a97d5f2d3f5f0a1b0efb4461377e19abfba017d3779fbba4728fd99770b2023100cc8ef3f808bfe0991f9f64afa2845b02189b4f7fa8ca0f471511762b0c1f218c4734313a506ab65fb4b133d0adc07f8a0302047c435bb500663064023039976f9bde3b2acb34625dc426a0d4329672b50e46b26dfb494a4d57ae20bc91b9104e2e02130e4d59af8c5dd6596ae002306ddc82b1c35e1a24dc25e0267d7b54f8348eba1e6d40828aa9bf47c0cc191275668853f49a89aa174913acf2d904c2720302047c435bb50066306402302c1d44b80f9f88231d53e3432c928dbd0259e70e9509aaa84bc5820d86e754bc2e156c369289a70b2f37040318a2f092023051078004717a0d3bd22f7d7a210d33b06e6c876ab78756c2ec030c9610c753a8609491b2a7777f9941bda4bda1cf19060302047c435bb50067306502310083545335be53ff00b3cb88334a6ff5505223f587975a1105dc308f18b696c128c3650c7cef0cecab88fb3501dd868afa02303dba766dfb429330fb4fa54406cb12c86acd73e42a1d3ad8b61f24de34a80c29e137504b590c4d2c6e068521589303600302047c435bb500683066023100bd3164c877b5925eff2b263b47ebb0ae4a401d58aced68393637389bc94434d008f211ac0e82657843272e372f745211023100cf9b1152253c8a8f0a12661498297b44728369812ddbb986906f1712cc7b7af6b200a25afcf3aea753803a55d3fc3d410302047c435bb5006630640230708d03f1255bf938fa8487b7f7e5ce0773a88c89432ba9a565acbc41c967ac451b1157f19154aaada49c36fae5e883a602302955686780aedf2eec5ceefaf482cabce8114e7779ff6faa63f000915c15ff8c5971e4e8221eb38e04b8fd036d20f21a0302047c435bb500663064023067fc54c187d516eb28aae443c233dc594fb8ce52e7c1c4c55fa7ee2f61b3f691185be2851c8fdbe9c96edf67d8a95f40023006541b464b045a6f473c4b0f83afa1a17e1c25f849d62d93b7c43fca00097fe75383e01c15056bcc5cc29e3569c5ed350302047c435bb5006630640230464c064ff54e37d9392ade567babdbbb6495134af9027f142e8f40c9a6fd2571fc630f40f6977d3b7c79ac6552448f2902302c905d2f55820688ca0fa3fb5b7a50227e0117eb01fa46834e731139bcbc71b4bed06a5f4eb756650c5946b45c77875d0302047c435bb500673065023066f9ecf726a3966644de01f88342b27f6111b6915b69510765679483d0940707d7d591f3badb8aeac63ad576bb776639023100fa700fcb512432eba4abd44a087e65343a887ac882b00a9a9dc67cd62be80e5e9fc342a19a2e139cd43b4bb71133713d0302047c435bb500683066023100d13e50e731eddaf30cea1511c6b4ca3dc37d3a5d3a1eca9379c6f958de43d697ac87ff324e71a9b8f3389a0d265afb9f023100a6f1a25f239b0e067328b5e12a3389c96e1af810660891df232741a47841de0a3ca81b80ce31427cfc08cd8114cab6570302047c435bb50067306502305055220cede6b8be93a39e548898439cb446c2f1689c8cebbfc2686059dc683c1a433b680203eb74af22f0f827378a28023100d85a9871a40e08a69c9513346c70a977ada32b550e7028e99c28ab85ca2256c199a7afcdfcae1d1daed559ca1204d6130302047c435bb500683066023100f1b6a072174e0f600b2f24b4f6b0e9d9169a9737986c348e525780ab83814a823d3d32a0a36bc374c530d59be436a679023100b6ed1fdad4c1659dcdaf7e07d8ad255d59da709844d124e6cb5e29e97d41e6cc54b5ac1684894d52a3d3446d645a7fb20302047c435bb50067306502305c9da7d2757cf15adac07d41fc7f6a084b91a76ab7d583fc946f11d230c9f5b0819c5e1c301bdb14907f2769954b0340023100e4893f3b15865098e9c1508f8232bde7e2c8fe98c160414ba4bf787e982051ff3dc153efbdafbec5193180462fd80c740302047c435bb5006830660231009a0a5122d2e201382284fd248aca3486d4d82b0f490bc430136fbb33c8094fbbee114e17c1489f0db537b20d3b71facc0231008c08bcf89b0e4ca1ddeacbfd5d5d638afe83810a1ef6722b2ff50f4a9db2a023fc9b0fe9a23b16bb5fece6328027c6710302047c435bb500683066023100c9ac6521268c381c2237d77a52285c0dd14146770c233532d96506a102e4e7cd1d09c4b069c87834eae96f27c4b980a7023100c7c4cdf4ed0c58f7a31b4421d8eaf7a41f3929d0060a49e1dce7165dd03849ba2be380a6683ee5052b3ee1c44b7fd62c0302047c435bb500673065023100837cfc2139c19950fe86644a6c87e70faa4ad0620a5ede229157a3649d7a7dcfaa32757308912f4c02be01b66d92210e0230319a6df8851765207a234c078ad35c0312c1d2978e5f495145cf4202cf2a1fae766ca0a6f841ccd83696d9ccef9569e10302047c435bb500673065023100908a76aa8521a7e9fdc662ba9a16c3e3ceb5691777bd2a609d1aa7793bbc87b7efa806ea059cad4357e10cb38e439213023030ba90a39dfdd943ee3ebdc0bae79082fff59505da39d557f4b9115cc7944e0b6ee9260fdd8c83a2ba7984fe85d213f90302047c435bb5006830660231009de34750095a135c0c8cb3888e771f9e87f278a4e9cffd5a8996e1c3ed8b3616884a7e17f06a5f1a584eaa2cb31da84e023100c4cce0f90213ba407ee467cac9094d67b7328d3d89d428d2eea393cdc9502468d72094ea8935e032b87bbb3ec0df27ab0302047c435bb50066306402304d0cb79fc369ffa43f7c2d0b01dc3d464d91a60b6e6e2660fe2414c9a633eb5fdda9b884ec87903ed8534fc2a7f8ca920230614c16e45080177d00b8702f594d0d90ace3b51d59a23fda13ec606be35f559d23c703b2416f171e8e0c78d69d7997780302047c435bb50067306502310088d69e33d72c145f4eaa751cfea0e0f7287275d51ce9f2d83f39d369e30e2feeaad003b5bd600b8fd4731e76880700340230259a3817f203d1d4d8609cb28244f6b388220aa1f99939e7b98ba981e83afde024cf66537503436d813327823be4928a0302047c435bb500673065023100dadc64921f271f31286527134b764ee73a9bd5cc4853cd34e9fb82d572881317dacd1d65457e1ae0d4249bf8bf3bc119023077953f97ef848b728ce47ff663be4dae9e9e591dace2e7b0e46a4951bf8eca89ce11c4c139960ff99a5beefe52584b060302047c435bb50067306502301482386ac61512277fdcd277d17bf58cebfdd54a4af47e843381653d326a0b4d1774f51a679f15d94c1cccafdbe33cc6023100cfe485900e5a62fcf57dfecc8e163adc98e7f9196dece3f6426813ba18953bb4fa9bcdf80b012845efb40c3900e38afc0302047c435bb5006630640230294bde558b229a2acb572558d00641b6ff3586b9cfeaac5f8ed5cf42ae743e1da00895580471990f0cc6bd63f795af1902300f76c38e911fcb962a2c3f50fb75c0fde96c552ee911635cf52da632fa014d68fb6e61e8dfb60af826f7a8128dce3ccc0302047c435bb500673065023100c783a131c2e2745320fea8b1524fde7b895dbc7b540f62cb37840544bef6894cb288f176c6a4839f7d5bbfde543f8b3202306844c12e899ba28b3ec2802fe9423a71cdffb8bebb742bbf75cda9fc0cc3738e7b6ef95a8ce72457b3b6156e1ee63c5e0302047c435bb500683066023100f4af8424b4259b3af43663e2f6463825dee6ce006eb0b9a2a7f01e4588c55cbac2794faaffa14eeefff49e2a0e08c181023100ba61e78dc266212eda12c42ef87add50f9e42db3661cc0bdafc3d25f2718edad7d67e0dbabd61fa8a87b6bf290978f380302047c435bb50066306402304fc2698f2b962f10acf88e6c7a6bff07f3917f443cb8feda3300ff289db154857be1d6d085c9a7950da8db410c3667bb02307fb5d29d0ca3b134a2f9b261e060e354e1a104397dd23450f92b035f022dd7cdcb5ab7637eee97fc3d0ff6eda68c477d0302047c435bb500683066023100f0379ebb33f769acda302e62fb24cb81564b944cf39eb138846a76d5f8ff24dd960fa34abae0d7ab12cce1d9ca5a8515023100c6afa246ec3f307d18b60569fd6fdc2e14333f7fca2a98ee9336f9073b6a214f21a9477bb17c3e5ac387050fcec21d380302047c435bb5006630640230130e3d56d93269918e6b193b50c2406da091e5f20045ca376d940654985b110807b2265d099fe96cf5ddd10ce5c97f1a02307e24ad204e761107b396cde28f0ac5b6cc07bb276852e61d14827482cec37945b61910907e23567dc33f6ed29c9a89850302047c435bb50066306402306d188662e94ac129c481eebc60df6a0db4e74c786325809ea8762c41fbfe9f9999945714b1459e12b1c1817eeb277b6d023019e34fa8b8dfdba0c7a91d0b17d967cac5094f04061c2eeb65a0729999cf3d74e7cd047badc70b80e30fd8bfd14431680302047c435bb500683066023100f0ee24b1f34863820cbfb66d3d1bd9818b0d2d6279b3821b687fb18f2c9837b814bbc33e8f05e87202a734eb4d3af4c3023100fec313cbe6c6f6aff7b13d9d4475d7058b5711c85a82736bb0ee6681faf05fce92a74f7f2c54e55077dc6176b36ad8de0302047c435bb500673065023100ba5647da4ed24c047d4ceb298ec5afe17216ce5594fe19197b49e55271a97e7f99a75f17d23f4cb63c4e502e32bff3950230700252732969dc6dcbf2c92c9892b3088bbc3cb642bcc2ad14a142a4e8c2afb241a9d1d401e2735176ef1ee959e5a6220302047c435bb500673065023100c86819342c31197d51af08828bc7e869a471a9301619b4b25cf7e46877a6bd686da238e67db50947654e4f5527c9110802307c9e48e6449b3b1e4dfe158d9a5b0012f88d45cb2cd3f02933b93bb6f8fe0728f14d1dc8c13588ca433c1fb9d51942cb0302047c435bb500673065023100f6a2c867cabdcce29f729eb2ccf86e1c8e0dad758bafd7144f40210a5e06fbb1aa71a54c6e5abe7aece5edc6057fc7c902306a8d6489544851ffc9531f182ada11742de69713221d55fb0b7b14de9f4857f6cd905c368e84744aed8adc8823baca240302047c435bb50067306502301eeb6cca8528998704f4d6adf01ace92a57c8d8e32fbdbcd21fc0371c05e54dbd13a554a44ff982db6a6bb40ad04f4a6023100af8cd49a80d5da0cbec5009640dca5cc85a95868897e66f366a27417148f4fb4dd3674f6facbf52cd858c0c08760dd810302047c435bb50067306502304e3b923433d23c35f9a4fd06967d774e42cbe6048d534b694ecb1575d455ff19baa915d6ffdf85c923436ff5c4d6eca4023100c955e6b02b23dda0cc85fcf6d72088a7d8e5d4b4fba4fac8fd569d324e1279039acf8d296aac7ac484f11b3272eaeea20302047c435bb5006630640230258c5f0bdd0cea1460c14dd9689befcd6f5b32cd4b217ba92a85b1970a8560c550009d16591326558bbc86a90b22b09b02301644696945d8fd0d4b46933c0d4b7ff7854b214bebf826d0ec15024c345f1e8fc6498ee076e0e35b2271e678e788f4260302047c435bb500683066023100a2d0444c6bd0d019b3cdcdd1f71e3567dbd21b013a92d843966f0f8982b2f36ede1b840a30afd16ed0a13bb7fb1bb8d0023100ca008280baf26531a32c0b6770e24217c0418ee4d74aa9c56c5b3a91fbedd9bf9a37943140d0945ebfe2f41567e6400b0302047c435bb5006830660231009c830f31c9ca0895cde28f040debcd672579d1acb0b79e73b3a29d9a9578781709e3cd6e67782c6115672cb02c3fe945023100d16b084b061c33f7f8bccdf6b3766f9e3cf95de0547c2b0aded0e1a20d72ed80893083a3e1aec2c6df50f52c0a5ff91c0302047c435bb50067306502301504d8fcdd540855f2a0751a1b77edeb1a398ea658a9caadec101be6c7b9335012f637c07cdd99ef464e189bb37fc9bd023100de6a61948c0662785241a368d4b0d5c8469255cc483ea66667719902b87f8da66de0bc99e83ff609ec9e26e08c66369e0302047c435bb500683066023100fbfdb026b939ff6a13e1e65a1c74287dc697e6e3cce0e481590f5ff47a76c2de23f083f110f4cd61adc8e954e6535026023100bac0d36a7756aa7ba050472f568d1dd32a5c98152595a8af6e4da24d298019d89dae21222310766b173d76e9a02d13f60302047c435bb5006730650231009d40399bc3ea4c6a6a78fe8ac5fcd5b0c19e22e4ffef84e4be9d8b24e5449870efb3c8909ed2982efa76c900f2f028bb023008a690cb6dba4766c1b40f0e3cc1d29535143da9d7e070c54b35dda5c0faee2b0e87d463462993b08a686024bb2db9800302047c435bb50067306502310080b6fe4322ec263bee4e3fad7056cc9e22b347bdd14c5e225d2259d11dc0e9ce67547b284bad8b268ad726a83c11ebea02305fa531ffa43291fb58881f9f8ff09255b366ec8ab3c324961865dafcfccfc72486e8766bda256bf0beb9f7bea0fb0c870302047c435bb500683066023100a1fac3ae133cc6d07c2d8b11db5afa3f6a18f4d26f68b8883fb0d01154018e218d7def51265d0d33992c38c09910fd20023100f8764dbb435be4a7be08f147c5191c35358f059239c3dbb95a18c11fe20af969294b672a88e35b611c40f5ebd29486f70302047c435bb5006730650231009106a29dd2630eb26598921e5e7778f3e09e07f2eda9b5ab14d2a1204dd36bdd49231f90b6ebdf61c73ba5fd4ec6115102300f4ac19fc134ca37897e7fc944608258748a5b07022f72ca6fa1084dbd6183b34f3a109b66f0e1da12b5ced4b7aad63d0302047c435bb500673065023100cdc21b0d1b29f28f54e333ecab89449b64ad68f8ca5fc959a6f4b065d8dad570995a4d46c9f7a17a64edc787d7d3cedf02304ff14b0626cab0b20888f10e2a8491138b7e8830f12b881baa52f38583387abf3194528fd44e7388ab4a76be585dd1e00302047c435bb500673065023024032d8a1c3d219b5a6ad92dbe0a3eacd766e7870342d53c938b68a260c3912295d39ef5ad889730e252f005dda04e5d023100b5db26057aae801d633425b7303ccd626f5eb82fb8b32e57095fc959af4720a042e01cd3eb41a1047336a3b23300bf270302047c435bb500673065023100ce2ad85e71a90affa009fec8640dacc03594ffa5fb64e47e3f981a17c1d5f272ad5752c79c275d3fa8c9de56fa33a45a02307fef13860e6eb7e659834ccf8defde88a59bb811f0d07ba58188314744e3ab91120322f89766db54564fef46b9ee9cb80302047c435bb500663064023018cb783798c9d3bc9fd5749f1af671093274f3a15764ea56e3447a51f1b942b658b1a474646c27741ff734a844dd0cb102302042f69791a2f150cde74c31faa56c4e7032c8de4bf86de452734b4538956b1cb223c7fd1fa50771c20e442bbfa5e3810302047c435bb5006730650230277d48f5f7dcfc967e774eb0f789e2ba09ac951863a8da370e089138ace2cdd2ef3f6fa1a0274c583596b82701b39e7b023100ca85ab504d38737bad9e7312aefcecf1df769df6ef7cd9344501ec6e40f296c39e868b4af317e36492328b2e983479120302047c435bb500683066023100cf2f00d8529abbd26e0be2f7c56089e32acf9f127ab900d66434a4321962c251318bd866afb124ae7b7f1581850830ea023100888b3aa9cd3ecd20e4a1ad827c0f32a162c8d37f67b3c612b0f3685ff8fe434c464b8469158d8bee4c5d85bd19aa52180302047c435bb50066306402303d98fdb7f3824b25f07321b3c63c72e8a59500a4f69abff61766e92ffa6a882db00d4e2154d71e512cd00e0293b57146023008449751f5288bc8ec94cd93ba55ba6743dc00b77a91cd401af45e0f7503f6ea2de9727041dc90b6581c839c3f1126d10302047c435bb5006830660231008ad5cab19096db5c7fcfe8c178cc612741a0c3b4727c8196df1254e0afecafd4f477d6c52a74daf91f3845b971828a40023100ccf290a4a4c59b769ee2ed2da0b5a7a60ca77a5cb7291d1b06a80427e33caf509821cba513605cc42b09d5098b615a0c0302047c435bb50067306502302c38754286e1238bdcb628cff8b633d4c94ad3ebdab7b9d284fa29c8beff0daff2473d34d4c3f4555a30e2506eec7bbb023100cede4da59d47985b079b97d859e5013baeffac1a859c2e72baa032b4b3abce007cbd110bb62f071ab1a13ee4ded49df30302047c435bb500683066023100ff7f7c15e2a91729803356cc20ce0a4bd24db45a1c134070b0e26709e77255e515fb6b61db0aef3fe5763e9205de76e3023100e17b592f3fe56ddd44938939b2365622217309b6667a57fc23f1c0c32997597824b9dd776edc32e8ff45de3c62adfe790302047c435bb5006630640230357ff762c50a3877be48655a87ec092b7018f9a74119a2de36e08c63364a02ed6d26574370da62542a3531f6d2bfcec202303e40c1425ea445bc72340b992aa8552d3b08601d7bb00de9826dc2758920280449f7d1e61573d90d9c8e16c91a90a8600302047c435bb500673065023012154f7816573bdbc364b3e1e6bdfba257b2bc4ee9dd5fe9a354045c63932c8afd07716158d34aeffab83866d27d3895023100ea0afabf508ca53318b58d209da769be08e7d86e1f8e06a9fc488b38a989fd3eaec6122018988d3d85aeee1f5bccf1860302047c435bb50067306502300cbda35d8c85aa78904fb83490be145cf412cc23a6941139f3b5de991c2f958e73783e8c6d1feedd807fa042748b0577023100e3a1d43dc1d635aaded55778b6f7fc540342e030af5d1e29fc3911bc7777d306a51fcfd4c9b7dede8c90a7651bcf05200302047c435bb500673065023100ef257cf7a1a4f0dbab14a1c6fb390463569040708d942b4f15c4c59cc7caee5396f8f0ec738eafa65b7cd1ea1b33136102301996c543f270ea87452daf35156f88b3621374c8b7d44df56b637327b162e5e0d5f94c9ee6898ae1daa519791575ca540302047c435bb500673065023100f07892a14018a0bd35e1e9956d02f800ca2e35574d262a7dc90e964e009da872100996433b44ab8d60ef72e9dc43992a023064ad726cbdb54ef8c7b7ac7f88b5c6a8c80cccbabc32dcedd47608a96817822dd44d9a076ff9b2f2a4d77a96448fab390302047c435bb500673065023100c4c4da9c82b197efd8fb582218c35f2b3be7a2f8d6444189f215d92fc4538dfc581b819909c9058a91a828e311585f41023021abf36114cefe995087376d3114be5bf475861471adcb25389973a5b2df6fefe6ead86e31bb4fc28f1abba8586d01480302047c435bb50066306402307eb0610d70aa7daf8971751a9b4a824aad46d183389ffbe45fcb0bf84d4e963412bffd0f37e5f1b147f4e890348c97fe02302f290535f5a17295c920cb2c7ef5355f72e84cd49a71406a1bc32ecbeca3694a07e7a8b802facde715ceb80c133e80fa0302047c435bb500683066023100cdb8ef296e1623eff2630215a039da8390004036695438c9be64a07dea08f72c72ac8519cfb6d164f930f617e76963ac023100c046253902e9c92c90222cdd71f4b0008f83a7775edef271087da0be606816362a13534ba004c66fcfe1e2006b837dc00302047c435bb500683066023100db1a99386381d89b21599c627c5ab224d0f3e57204ca05fb82255ec0ae8a4d2132c23ba8a3f54bb0150990b59f368663023100ecebbfcbf3ea60c128fb5ac7a4e05ec363987149ccc7b7c8d383d9ddf6ff3599dc8327147147cc1d4ea927c259d6bfb70302047c435bb50066306402306b78e27d758f49a1097c19437fcdbe41bec2ac811e16808b7214764134cd578789141f2655c6cb518e3cde5ed900cdf702306ceb60de4fedd4a93fff6dc0b87e63fcb8d8e0ef9ff9441007447826bd9f2d9dfabe1fa1121600e3bc12dc5dba8b67860302047c435bb500683066023100b343f8e81d0dca1b3b1db28152f2092507a84a9ad27847892b18e8938be9b3928ba3f059ced7123dbba15408cf8f261b023100e7682b41cebb1d0ad39da524ff83e1a07fa3f3fb7af78d5d23f1e3a5696331776ce2b50169a7a2e8cb20170d7132d3f30302047c435bb500673065023100e3220dc31ae7e702c25733594d504bc50bf14919107169b82d17e5db049b835e5fa86c2619c7f7577092f4af2b016af902305f87e81179708bac88452bef9f5bc085dd433fca85e751fea19669a5e579ea2d3a950b2102ef20e537d52b7852d80b450302047c435bb500673065023077738768a7d0b44a667ded68a4b91625b7529206780a1cc07258550443026fae2ef1823fc777adc4fc6e9325edbf07bd023100b63311cc3b2bf775a9d91d2eea8aae8132022bdfe68813dd5418eb40f3e0bfa3ecad112fbf75215852787e4b069a97cb0302047c435bb500673065023100af6814819a95037d04f5ce8d59d0f9176fac8486ede31571653a18d56f4689af9e4d82dec81185d0554b521aed16fe1202307c3eaa4720ab97fe7cf42547f6db300a597b6ba3cefcde54ce00e7b85778267b24300dc7af379082ed16f85d788267150302047c435bb50068306602310081e801c42fac52bed81ceeb46766684b14da9a6b452e5258f87a5391333bc90a5f51e673fdb737ce36a1e86ddc4a0c820231009fcedc67a5497e5acada069b917df9157f5f918a1ad49b689e43935dfb21c9ff116fbc0915b37ef676d0464951c4c11e0302047c435bb5006730650230416bc7896b3e3bd4b2b96da65730f76c9d07430ba951c790a59475d03c483116fbda8d37edd6050822e4c22fc1174766023100e27573f87fb7d07d8fe0265b2f7330f71e6100eef394d18441ae779b55ec1d0d4ab09a56cc7095450c6ae911fb4dd8970302047c435bb50067306502307297f5491ebeee04f34239385a40f495f538523491171c763b0012ef92aee92cfc98f313278ee795955ccd006209e388023100e3afdcb827d6b22f3c305bbf47adb02587384c72fef4ac39a8d744bae1ef39e1a7fdddb11fbbb156f1fddf88c762d2e00302047c435bb500683066023100a19ae2244f623c5e1b51196eaf5f7d27abba21d04b5851a6122996182d8df9728a112529cdc1a436c6d9d35607f8da97023100f597f458999020dbf82251bf82c7891cda2c09db7eedd894d7bd0e8d6319e9630cd7872fce4f8ab57e8ccd7e47be0d8a0302047c435bb500673065023100f1ab386d3427691916c3779bdeeb5768988832f735c8485cf70dd9f985399238445fd3551de0a95870a85c850ff62738023053c8cc077c458acb6f4d4a317a097153eece3d945f5d7e88c215a2035d3fc123ca892a9c531738c8c9c1cca07adea9970302047c435bb5006730650231009e78dcf812176dc3cc4d3fa78d1152874d068d2b016108757069894aa0d8f9c1f67f9895529e305487c117ab456aa9a70230532b04c1533dff38cb7f5230d0172b464a32b4f1718e693cbd2565daefbaf1a0011333135d6e4ca219392dd3508786250302047c435bb5006630640230742cfc6525062161c6605ceeaf9c759fe4d9571e92bacd4b84368eca78c782e1bdcf4db30abbc50db271d06f687010f80230254fbf1a1d458347101b1f1d356b8da56e6390a1b0933c62ee7768854b2ecb15186bc7b146aa9f4142e65ab7e69ce58c0302047c435bb50067306502302725c9097904cc9024b57e71dbc19cc27c6da2bd707b15d42d27a962d2065b522185a60237b124b553f91a49bef2bf59023100acc2bbd4b97be511e60f5656a0dac4f6cd4a9b1675869af808883b6f553bed92c9c43fdda52ff36828431d32486d1aa80302047c435bb50066306402306fc490e9c7bce617eebccaf05820918b4d9ee66adc00d7e34abddf9fcfa5eca971dbf16317f54a31918c7cf2a1a7e0ce023020aab88617ca78556398ef85425d86919ee5657b8f450789eec6886e6284a5073e51c5bf6e8773a871121d049a0567740302047c435bb5006730650230254933d9fd714995fd77da50760ab9f127177a1c9ae1d27793c712467b474fd864184e37947d7900096b2adf4167d858023100dbf297e4380e650987a55088414b70250c95021814ef7d15be0868c59481b6b44e2e46f1e7c747463e3e3c67c2a66fa80302047c435bb50067306502305af81c5211e0d3abbe89af3cef70eba21fb22a797291a4d51d3a93db35d9ec813191d17f8791ea87fa5e598aa4c47e43023100b6bdceb4139da65960d9354041e966a98a428d200381900f2dbe7b6071e99c8027e4eb60cd3410b77000c4e636b201920302047c435bb500673065023039d907d362189929ef7bff9573640c010e3537a74beb0d0839ddab2f06376852f316607569b79712662560459c227eb1023100ce29833a5f5fd288165f61b4684dea864d9edcef53714a63b81ae8871dd1b728efd73eb7bc3af4c0d36444c43afdd85f0302047c435bb50066306402307896f3dc933092ecae0eb503485c49b47144b2f93c2d34d43b10e3bb714e9c8942ff764f7640e1a73746440c3a65961e023015961c8407b0523ef1dbc69073ee4cba106f8c9acbfb90574d681d35a68c9ff638cd3bc7426c0160672df352720e2f170302047c435bb500663064023030a82ded02d30b8b87e9cede155538ed8368bce4819117b98c3e0a263d9ce6f2002ed65e44cb0fea8602ecb689a0e8e602303c652cbdfe06c36ca4f44c70eb9d8d4f22db82cc7efc16fffd0706f1a2c6d8871c26697cff2168ea3922aad60fd5b3150302047c435bb500663064023049eee5af1f1c5a5563f12a9fd61e88dfaf099c1b7dee307a3d0d0a6a0106fd3bf2acf7d74808a72ed7efdd807e25654f02307d1c95b30fc73c70f02f8caa43a1686ae2ab445d60ddc07281f095b8db71b5b66675dc0178cc2d0c8db763969b26d2730302047c435bb500673065023100cbbdc1953101d05dc6890825e31a649bda92cb67137726ebf6cd014c26dcb6aba307713f9ca71564fa50d2d57a4f0b81023061d4162e70476416baa1ad65a75d9f297be47609386163a17a74b1f459e7a839018a0d7b6025bf235674612f92b9576e0302047c435bb5006830660231009b2eea7654995882535492aaebac4312096b02a015439f700a2a4e4fcdaa2eb44a927cedb1ff6abf76dea93f040c9a71023100c7e1ed6370d6a918c424021c3557bd09794342349f2c7b6cf1ea362f05e6a2f297ff248074be6e259353da118a133a690302047c435bb500683066023100df5590ea2a338f8fd9d979a16d8f17a441cc5c7a0dab44d165ec66b2b496a9a96bf0ad11f55b7bd27b3d1bbaa007291c023100c740c455c220f1c6fd041b4ab0287610008f862eeb987f2509cdc183ad5c0cc896d1ab8150f736421143dfa9b112fd8e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230566a6522ea6e157f7561f7e835951e09775448c4e5489262222a57af54532152241b2bbc384cbf2c6fd0d0a5f354f20002306952b2ced2c3246edaa7b13eddbbcdfdcd7eae327772071c04930b7ba615da3a3f1e4b5148991ec67222d7ae50d7b08a0302047c435bb500673065023100dbb8cd635a6db4389f678e457ec41cc439134a1492a80d3bf55d890adad2e0525760caf82363951da447efe6803ff67902307e8fbcafe947cd1ef53aced431c12f5268c75db10224109b9554d0b4bc8acedd78bd7ff6b36f02370b4e99cb33ecda080302047c435bb500673065023100a1529e45a627140919aaf385b4d238559c084887046ff354e3bea859980f06beebc36965f895d6532b842e3f61e5655802300970fc6896fa3a4c1e3467e7a96cca0c64f50b3d05262a356d714faa56c645bdd77ba4feb903fd1f59e0077e3bfdecbc0302047c435bb5006730650230411243fb99f918ac9a719289d59b66a9c855d99b0d11ee736acf31cd984a166fe0cd4cb9c63b3560e28f4641819614f6023100ef77999c566c4ff4de8348d9a70496caec018851a09b2e36168216dcf5d07e481437053b523310a07bad66fed532783c0302047c435bb5006830660231009b7b433ab8865020e9fbbbccb5a5441629fd7aeb57f0395b06ba7773de88e26a3586c4be9688083a2718858a982b3187023100b613374ea46f15d31a66a93be500f8b547e16b57abca6454e5fb826b8d58f46dfb2049700e05a158a3579bf2ea58f4e10302047c435bb500673065023042060e2fc8302a707e20828553f376592f2b725ffc2d92e968720a77a0fa058ebbba1ada2f4bb7bc3569db378a5dceb6023100d96fa3eea2cbc128d60590ccdebb85adfa6f801787834a219ed246fcdbcfefdf36450657a102e67eceb6bd573d51b0ea0302047c435bb50066306402307c95a863b03181bcf4347c3762fc048ae2603bec6c06fb0c130fb8acfb86f2d6ecd80b4e00a07080681e340158e5550c02300fa27a6504462d5425aacc0c4cb8cb9d3adf8121f845fa9955c355031cab13bb5793cddc19735ce79b14fd93f56a350d0302047c435bb500683066023100aaa0d4a4ac53f3035e116c25927a1faf11b72ed660bde12fe2b9ecf36e44fae0eff904f816ae6f7311cb3562c78b2a19023100dfa1faa13f1baecb82e75b4ea4dd8fd4287a4c62d4f173e327775c18faf84f6d5297f8196d6dc85e4a7846e705df5ad00302047c435bb500673065023048b5fa4f5746b9f4ae56799c91d92df0b14e795a14c7974391539a58ca2b0b660fd4078876259f73d49fe6ed970e00a602310097fad5301c40ebdf8a411198ee3e77cddd8d76d17796220e115726bbd46e91512f9a6c4c2aa9fe91cab89363ee5e00bc0302047c435bb500683066023100c57a0b1b703787d76160e4d7508e6ac72532c5e6b1c4503c856b38f43e02bd611873ae48a0a71d4179081f3efad3c28d023100f7c705ece4f30cf03af59a0ccbe0e84555b2e62c47d8751a5368b4ecc338fe2aebec100c3615d001983c92a673c0ebc90302047c435bb500683066023100f410ff93e60552ac1e693dc355edc89ed43fbe4e3c2318e68ac9a736b3a17bea2f4ec51578ebccbf6dac3adb7fd5ba6c0231009c3579e7bb3d8e741138351cfbb86eb8135cc4dec8b85cb296d8c37f7e6383975e7a8c9c232356892ea5008024e1087a0302047c435bb500653063022f6623111d2c2f18dc48a6660c2a9bf4db1f0e4c2f3a2e7eefb65f7d7712fbf144011cb19a35ffb21823b1c1fe36e3fc02301225ffa20ecbaa7ef13afd959ed2c3c9ce172825ed9109a0650f29e4481879efce190c05276747222d630dc0cb89db380302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302d7530474ee5b9c6f738b0cfdc2572d6890d4d78a977f2634800ac3df9cd5d1395db7df2b7a41c3d103f3a2eefdd1bcc023100ef611b54aa4a37e12af9e06453349da99ea29856bf32698d419a7d86b1fd0abb7f84748369a6463a8647126ba2022c960302047c435bb500673065023100e2d2488d3982b9cca7f110dd06be27acd6eb532264a4938e36ec5db7b5bbf666062bd92e23d989af20da9f38bb7f7afb02302cb43eec638503337a7a65b1a83dc671fbc1bdc0997b8489d7538446761accf2f59002813678c45b5d87b07b6f71f8550302047c435bb500673065023100c7d408016e827f81d50546aff8d494a2d250da73f09830578cd76862a3a29ca98de7c6f0358a424c0971afd487510b40023071ccda9a95b9189df9b7916adec1950c5d6246556bc089bd0d682e5bb7efe019201c35a0639867afb54b669379eab3440302047c435bb500663064023078e9405e704be3e834068acff3e870d70585105712744c7d874eed311f25743edb330f50f9460858ddfd63344f65afc302303e50bd93996929fbf193cec3ffdac3982a5e6f357ea0aa43bbff1d5afbaad0646cf81699472844c9394438fd9ba0d7480302047c435bb50067306502302dc3fb56030e47f6913af39c7c2c0fcf8c9cf67af15c7e73294b1be730b02efe021311ffd2228c45a3e9f3add79d4651023100cc9cbc8b56a1d828fe60a38b25a93d3973877c10f726fff7a4bf7b8d15bf21b30d4306c844572499189d1afa8e88c2420302047c435bb500683066023100edcea08b12923c4c2d9d3488792a9920cee4bd1f5b3df795fffcd3ebafff0ca2fc39bd46fad97263e4ad4345c8eb9bb8023100e022540981568d79127373a82528c691151e5c0a7618b65db86999c5da29fea20066206e006026fb8d1514a76904c7590302047c435bb500683066023100a599559d72e25fb7726a46945caf90708bcc3d16fc77d668eb478a1e9938340841e9dcf7c7f5dedf0b36029554bc1c45023100eb977b93070edb4db44f50cfa5278d73159663c4ae2d20e490ad5cee0d4581af8805094a2a8ca3171e2d179b0b1e8e790302047c435bb50067306502301d342c37ce7305ce12a0d38a966d408f36212f6c5f7b683fc161cc44c65449837b64f2d3a2f5016a8a9cd8dd54280ca7023100871d7d1e2a56514803569428b4171a9aad41a7cded40cd4734cdc759b9dafcec16a8d2eac033faccb50aa642c4b61bed0302047c435bb500673065023057820b92fae05668e37d06ad16cbcaf92e7ea2bd0d146a925d13663df8e3ef2b3055e5cda05609357876e465798b6906023100a7a8e5a4773b8ed350f76747b1d01022b51a09b3701351316cf2ad1a0ee346b0edae474c657cafeb12c7ab84fe462a470302047c435bb500673065023100eb8707ab287ad53aa90a2eb4b1e7997ccdc044e46f390cd005515b8002c19d9e70533493c3fb310615579b5c82b7d03502303068febf75e8c40eed0f101db3c65ebb396c86bf58725c6228c1919ab27c5c6dab665d3d5d1d1501cc95fbbc06bc59450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301a3b44f4ecfefcde7a246f961ded6d4fe6ef7dffffec66fb55166f39e8e1395483bf3107c2945f3979f4bd262bac6118023100ca35aa0d92d1a9ec2e533a9e7fb3e7c4260b5c1cae7d6b436388bfced576653c415177f91aab022ff6981621e777825f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310097b031db04a2907b2ff91eba6d3a7a3a045d447756601d74e32b345a6b84c83628e1f060ccad7fce49350b2962d7880b0230464ab24b4f452f0d1ecc9bdb681afb62b9d20e5cffc70d85ed251b54fcdceaa03ad7c121980dc445376e0c97b987df500302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230690a053e501cdd406c303a20cc8a02fa4a0a284b8d09090f63328ca758dd6b05a3daf4cc8263c85e79e865f7883b0d27023044534fe19f96e3867dd38ffba72af48d7b21718761debc8cf34a025922e291d96de1375df3fe8f4ea91761e3f2845a210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230794d96d61537d528755a5e7d24bcacb9fe23d08fa6be864f9d03d4a5ae621566d477a96a985e80f4f1532bccb676939402306d7c303c765c25b93fe4ca36f80730a1cbc718f15842855a8e438d0272d7ce53fd0365e3c7e3ef7f6b0ee839e07e72bb0302047c435bb500683066023100880b1e29979401da3b9fd218ea9e9ef66549f037be1183a39d4cc01b002d09d9ea899580a4edffc6b7dd826b1b82ebea023100ec248e2c2a86e47d8ddd9740da72f581ba496a2f5ea3663a61fd2aa2512acd304b982669ede4091fc0c7c31b7724304a0302047c435bb5006730650231008fbd3bbc887030b497a615efb876723d8dcf13ccb7f6a7ca78bf3bad53dc46bddd4077232eb3203b0599122460fd339602305b65b3616eb2785ee98fc3ec664eb46df59d3b7432ffcfe97c6036199a3224c0d671b13dd25d3022db4c77fbdb462c680302047c435bb500673065023100984954a9119ae579334bdb79ce6e1b826302f1e2dac6ee671188979233534f75a3b686eec3c10604848b9f6b310133fb023008f83d16ea0b4220fd30668d2a74e67bcddab43dba78ff72e61e30ef30d2eeb29e30ed4b8049778b51fc29e1f8f4853b0302047c435bb500673065023064b1bb6adbe99b983aab9769f42db8d71b456de5e15e7fa4cb0dddda11df0df45a1e6e440a8927990f1dbfbf51e09b34023100a80f78609e4404ec1989ebf999993f18e9278b23d663e57bd2a8bf3f10ae78e0466941a2e58395beda7e84c11c2e70f70302047c435bb500683066023100a53d8fddcf4a80cb9630a93b7d03b4de29af8a19ad9ea8ef247ead13a008a08a17d7f0e2f4986e1176e84068af256b6d023100c7f4d056c4cdf482facc180bf17ca3921bc4cfd69e4f150dde5a1910ce64c2057cc7c92e91dbd470c042b76902316e530302047c435bb50067306502306979fd7e751c4f750ca709e18f4af398ddb394760a25566fa314136c467300607be0423a8baa3bf281a1d62feee356df023100ec28171510b9b2da0fb30bc0a0363c1b49096af013b4e9a4760062b3808a921b384ad8e4c0343d7654d690cdd65cdb280302047c435bb500663064023013ed7601df5cabf755c15b4adddff178db4fd49f2cf6b6a93a1cc7f5503ba92e14ad904d6e7d620f431b843e7a4a82910230574daca74ba76fabff5b9ab22d3e4335fbd494067f320e2730418412fdccb103f3ce2141a88a1d6a4179c9836881c7150302047c435bb500673065023100e04074eb59721402d783700212e2e6a505dc3de1f566c30a76eead80978d49ddd1b0c4b0eea2bf038c1370562e6200f102302df17b249e5b2c3310761c81f374f81963385b70b86df6b9b90e929bd1b25b579400ec6d4a4f96136b0eb3d6d3c19aa30302047c435bb500673065023060ae41a991069ada280469dacf45634fafdb637bc6eb4c9ef794c00b283338c32fa6a2f8360c120c57bcd054a52d1590023100e44b4f026b970222d4037c4943fa8284cc383d22e3324409c1c651a143698f290a674c5a2b8941b77e03b20452a7cf2b0302047c435bb50067306502303c1b977b6209206ef119928d50f1b79e9dce461e5ad7b76d9dbaeb3ce7f9e0c84461fb844f5381e285e19c46ac50862d023100afd61bfd70bafcba1bbbf2186a911a1929104c9370f3cbed2508280eb2f245d23f2d45791ce71cf9d948440b69586dd40302047c435bb50066306402305300e27694f5725c1177e7e71f1488088979dc989b8c827314fda892d307e9aed1d4477fd79573e7e7af4fab179ae13d02301e7c1ffdaf3b699125a160a9ddfbc0b48c83a2e0f9cc2a936702c0526b776f7d4298d6197b556642527ac65727a77d9d0302047c435bb50066306402300d28601a32fb012b81320a03cc10c5432efde810f9c03e9cad5eba3d046bd916547900a09286b6fa9f4d0d6e81b71965023058690f676c6ad1a9288adf7409e3ecca0703e8722f76692aa3c06f37bb523b9184d6d8e4848aaa188f5b27a507a220b70302047c435bb50066306402307af82bc82b244efd7e7ae3ec239fa1d0a1ff67c8b0075dcb9a5f2f1ae3c9c79e2baa3133ef0f7dd02e5a289d1e61ff93023077999528143a1974614aa5196958d3a6e346bbdf70ebb2879d9956463d54da88a45b2430ab12c5e10a14409127a92bf50302047c435bb5006730650231009805eaa59dffa5d7270391282b78d728d1ddfdd59d6c5fa3037a52ac8aa1c108b62a3815d142409bf4c5ee43753360ea02302139213409a9493167953b7cabcf1a104b9fdabb1930e38830ae11f81fcc9ee620d3efdca94d3fb4a03f37ee34d9cc9a0302047c435bb500663064023006701c233555c72cd81828ddd120ba320ebca2c35586ceac28e6643ddd1a3b2f96f9312f78ebc9844527392c3ecaa937023004222ef06a3464e66cf733856ceaad17a2909dca2705388c372f534a60ac68f2ebb80518401f9edfcbef77ee4f47bd370302047c435bb5006830660231008d7a59624eff5e85fdbb7d0a0321342364542970cf758849feb0c857f511f7397e5c10158ebf22ce893ca11b8b853c06023100f92dababc8cbeafba58fb5e1cb45b0941c0b3a32eaa9b16b1af688a225bc6ad4b658a6abac6deb3b0d5751a3766bce4d0302047c435bb5006730650230398b803e0ac553a7837bd0be59165517515a83f606888c8b33044007d73fa8ea32efb90e834c223b5cafa1ba24b4a76b023100c859d6cc044b2c3636d703b62b3c6af8f5281aa6a8e87c431ef82760e7ad30b799a9e7d2818cbbef72e4e59c30faa75d0302047c435bb5006630640230225f745b5a8aa0634c7320c6bc22f70627ab06ff24fc1c10d06269a667effa8f46d71e10fd60ecb001c57e6ec1a0237d02301044ba7b7dcdc485379b8ead0c7b550b52758418b8097fc9c170d4b0de0c711e7c8d6ba73b609312b8a44e35d7502a1f0302047c435bb500683066023100b5b04f4a8e844853d35398047d9d8eb6286e17e620b38091fecd36df55891190b3fc469ed2ef09145ef27af77addd3ec023100a90e64918d8fa59d15c8f9874c8e191247df7d6ecda17c57bd8899dfd882075e52ec674bccd9e7a8588891a18adfeaae0302047c435bb500673065023100dd89d5d70de7b4c2b4710410654acc0f936f8fe0b93c375fb9f0328605fa48c0c3357c7b99004c537b6984d78caa249202307e3765bb44d802f668013858d95d881c731b6139f30707b1324a5b3a016bc9364edd151f197edfc648dbe7d12bd29c930302047c435bb50066306402306f6fab53cf57c44229932021cbfe727b2cd888b5e4baab61955669704dce50fa81c30bb7cf0199d350f7e25d380c860c02300f7a0ce9f9f442d0b5851117be3a92cbdcb51a2d0d17cb58f27234acc0b61f9347eb1d7d005a43178314a4ce75f3444e0302047c435bb5006730650231009ab6282e9331af119f024c4a3bf1f3d448de360ae46761b99e3279bd8142d6ec19f814fc8e1995e3743be5f9c38c48d20230599500508f0e79bd3f1bb43e82bd15fcd9b9c4d1c5e95a935e351f0599c45eddc123769d6ec7965edfcda25895d6e8870302047c435bb500683066023100f375ac4ee52bd5d7517de0f923275bbb102d30f2843c113c96a87b66ed571d01581c01fa759276e68283aa5b5ec9f8d5023100bb8f46384c3d1aedd1dece15dfb20354163b413ce8773ebec82a2db8423c85deb66f80f0146c3d2e76e0cdc32326f2030302047c435bb5006730650231008cb6cd79e8c278d00d0ecd874bd42519b028deac2dae0fffa65bfcee521e8ee0853b9ae30345ceb0c577d85148a87a7c023030eedae4a844f5947b52df115b1599477487d4478a73137bec949028379d32a28b70129e27fa86a0d567bf70b505867e0302047c435bb500683066023100e8e524092ece1762c06fd555668b203d1dd36a64ee763c52767fa15d852135d412d6e11f45119e87261b66530e70a9a9023100b0be891fa307b7efedeeea3741a05ccc536113723e419ddb11ec4a9b81d8a56ee5ce958e59cabcd7c6b00831cfb03f560302047c435bb500673065023100853f69a5c324493aa5c1bd3843700f258b62cc79cc6ee9eefe95806e152f04374795a57ef5f41d51f0d7a2ca2052459b0230491a03c63de0d54d826457277a8a30be8c793597f41c19af51a2ee06c0eefb3d77a6e036d874ff32b54a66e8844bf2ea0302047c435bb50068306602310096673ce30a910e2df882018d3f4e39c617f3a0fe29e123eb4131959af6497fb6dd8570781bdcaa4704b04b655964d55602310095ef10ad536a1582f691c1f88c87ea5b1d5d78939ac9359cfd4cefd657c06f7a7f477c07e8e81ab95250354e61631e030302047c435bb500683066023100e8e7cdab8ff44e8ffcaf1730119e013062a28e694b3d8b1440707dc4ec046932865e1957274f8cafcbf94eb83e80c5cb023100cbb20af81107a4b55a5d32096a386ff74aabee31f1fe954799498b249fa5084c0af7b89c6f68b22927105861a89974b10302047c435bb500673065023100c8acd172d222a43633a2073158abfd4bd75d984068df1f67e1e57b66a1447a3dbca75c2f1e75654ba626eeeb21fddae8023078b277cfcaa6a066092b42a40da84dfb53ebc6cf37867a500497d5bb2e033e7eb83c883646dc0f893c7c89b0ea54abca0302047c435bb500673065023028c2e48909b87bd4ad04e3550d749289c88e89a65dcd7163c42ee8de4571e7c92e8781195ee4abd59b2d5b43aeb8cbc80231009bbfc872beacb9ae6cc8911629f9ef9967a17fcfcd0a73be8181ec270f178712af9f0094c100f032198d74e4a4bea7f70302047c435bb5006630640230281bc39dcbe1f155407d30c518413ecbcca897a9d79e0d765349909704fb7e41b33d5d795fcd42f96912665e33a5f1110230485fa9e4bbd23ab96d1fa9925fe3d3c5da6862c91941e2d95a55a3e294dc1a53d72dea861193a45bc345dc6cbee77db00302047c435bb5006630640230618b095de287d8a4c54e490866463f346cee52fbcc48d5bbcaa8abcf92f5d5538a32a95fae8b1233331388113c69cfde023042cae7254b714d9cce5d884b0b4e7d5f2fd713c0e5b3d0cd3bac006cdd7f367e6188a60a4ded84fe01458ae0c26bb8510302047c435bb50067306502307f45b1f89336922adfbff7963ff78eb7c309936990fed520b20f1e35faf5de9584e2865c5a065aee6b0fd4022f628ceb023100b4287cfc36bcc80af02aeb0b7563bd54d9178c7045eb6a133e07c0c687a1caa4755ef848644dd630a7dc4618cdfab2300302047c435bb500683066023100a317d56262524c26b503a2c18d4d5e4eec1ab97ab86c3d9404c6cf6e9e5cebfaf8edb2f6e0e46a8ebc9127482c6533a6023100d98275385443ce00b275e139f9bb2858442a7185d9ded8c54db7ebacff92d8b72b388709b134c7733fdb1498229a1e970302047c435bb50066306402300865927293c1b009d89168c191e626bba522d1a00a9b51f5ef5ae31fc21473bccfd15246b29d4c6ccf8e03bf52952a830230709d3ab539c7185d383c32c8f0f6d24678801131e3f019a29094289cceee77053c9f4d9f5d9392adc6fe69ed601ec3080302047c435bb500683066023100f7d306446bb54baa94bdde8eeec4430621bb9faa865c16c6a0934f2b7d8e3cda8e93eb4bd95126d5b89da377df3fee43023100d66e5d830fa2c445e02c29af6db27f8b83fae1d09cab3125c02a777e71600767b910d0c0500c7c584bd17c1efe21508d0302047c435bb500683066023100c2e18d53dc4182d43258159dd1d06a59dbbc7a7992a951b75bcd470f4e2deed812d524cb0db69e01c296245d31f733c8023100e55affed2b436d3cc52f4399a10f13ca2a55a41510a5b9b5bb62d9fd9d063044a0bfa09ef4fa7d56c936b4d56c161a080302047c435bb500673065023100b3d52004b8dfa04a7e053d56fd557d9391be8d7ffd06b6256c85567e73c7733bca5a9853e4ad96c7c736c9bc9d1b26cf02301c2e48b6d45b9e7560e7c395a7fcd741cc1900a709d5c46bcdb4f8086574051a825dc1f3cd6c31c11d9ea438e163fc560302047c435bb500663064023030a87fa0f1f95ef5516903b3e0b8689ebfb4ee396797d7a6a9b10ccf02afb7713cf023c2c4115b7628628eae5f00025102305bf45fe8130979ef07c5664f7f139eb75c682e482491c0847466f31b7ff04f7072eb3416fc427b7f3d92feb1e63e5ea50302047c435bb5006730650230536d177f87926d3311d16bffeb473d8ec52dd3e5a99dd5938616ea9c85c9e1023ec59fb2e939d71e75751cc4b3a30e19023100f5036b9ac433c95ffd76d785665ba5cd0da0c6ca99882f00a0a0e7fed47b70b7055ddf2d8bb4d285386f4c1a81af691e0302047c435bb5006730650230617ccda6edecafabd6361ce9ae7019507e2005cda0d4f35025af27952aa44d494222d92d509a4f6c778b358446dc8d0e023100dec22732ab2c8733283a2ec927557094657400a990a624ef112a34a38765a75d6728d6fe4ec864ffa073cb649e7935b80302047c435bb500673065023100dac57cab46f4dfaa80839a50721005e68bb99ab57cc971f7ae5e886a7ca6710d9fa0862e89fe08c8703ced2d6986e27002303f004ad654e25e3b37096c5a4ca3e1fd2a534c33fa22adf07b9bb8e3fa0a1cbd39ca0aea30eb1ea0b401b5f8fcb142a30302047c435bb500683066023100d661c2e8d04c36401e89f0c5217dd83511079fcba1fe29380906054f230177f7550a9478741e990c70c756168a076c000231008c4a4a6868d7af3b4bd1f35b72e4e17d2a13e680bfd5af49aeda397a2a09c65a3983d6c57ca68e8ea390ba726e9fd0730302047c435bb5006730650231009112305a2ee4c522675ed0bda3e96e6b4b910e2da832cdba8af7adf16c9fca67642b11e902bf33ec561fc97e11441bf3023011404bc0f545cb785de216697ca09fbc39705738814e39a715a590e7917aaaaf28ff5d576f8e2f0fcad75f9a092223d10302047c435bb500673065023100ae025595fc06a02e480359214aa7bd48aeba8354e54a1a87c6fe9d9a5a33c2879cfe04b951b3a30bb22e4d9ae7dc74c502302bc904c736c3a46955748d686b492ecb74c19b990816421cbd8aa0790226ffdb9f57a4ad780895b161ca5e00f09372410302047c435bb500673065023010bc3063639f7606673b3ca47809b37b0906464538eeff276bb2bccb616ed86acaf862d29cab03110b36e5697d32f94c023100c8a1de24102c5e8573b8c769c5ae0da1d4385d859dceff6a2b44938e280da19a09e2f5badbccbb1508b753c0c466ec410302047c435bb500683066023100b23924668aef97a88f31d47817b8b5bf3675f79a5dcffc5fccfd820f62d17e3b4e146f17c175122570d97cdc521b128a0231009c80248749ca753876bf4751833552ba20ec91742bf7363133a05f5e99bc500dbe60f4b71d6e02d2ba7a457fcfa9f9b60302047c435bb500673065023100d42d37e153e16f1ba620eaa8c7e21228abe0632b17bb04f6ed5af1ba967e3b99ba0744a2260f83c05b980963b2fbc67a02304b86c5f4d1e3363dd3c8cee8dd68805cfcaec11b58e70f0156023552f83efb3baccd9ea087df482ed30a5576a12dacf00302047c435bb50066306402302fa9ada989d70706f8a6b98eff0df5af7e18d17587b3f3ab48952a986bc1252c1b916fc3454e2a9777a177e1cf87abee023000fdd1f4f3d799fb550911f014f69ac3d3b620e469cdc0ab8dcf5dcb612b5a9023fe083d6b9cd0995ca51d7afccb12070302047c435bb500683066023100d96d92acb49bb87fcdd82b6fc1f0148a35e7e24b520f909f49aa3bd282927cc81867e0c331ffd5af606d74473d9cd0ce023100edc55d4d8d2a75e90e2abef60256636fd9babe2d5d7aa626cdbcced865088c5d6c68957c9a09c3bc959a834d3a6c61290302047c435bb50066306402307485643f6714fa79025685144d0a09ee0f044c15960cb18cd88a5f5d3dc949e848615a6c5c1b47c4247a2bb58a6730a902301afcfc8b36c555e13cfd0968863329212e4936a2416be54f9f90b54daa7fbbc627fe0e2a82c307cd1fb7fe22864e33f70302047c435bb50067306502310093d939130f8fe444c85266e6cc6f1c24abee64ca4b2716bef7f2c75aa24437bbf1858814f05004d9ac5ef26fd270ca1f02307867927c814f632a4aacb29b77ba8a1f3a01346dc7737fa1bc25b540821b46662ee5973032da5027c2321b39299ccbb60302047c435bb50067306502300f59c24da07d0a7437eef83b1429bb7a1443f78823185d0f9ca9a94f4609fb87f2d08d3fca5460cfcf943cd372b31eb3023100ba67b7fb7698411f5ad24c7c8e3c9eafc98f14ba168c3218a948037dbe1ce366c878c613f3f24a1917a7f57a04d577e40302047c435bb500673065023067f177ad202def74ba4f877cb1813fe452afc8b524cc09e2206083dfd305a0f08a65589fcc3bc3ed8d0114053c58d39b023100afc6a077d611958964e80936f8f02caa2c94e7007b194d41807aaf5f4218c56066991901d897452af8cceaae242184b10302047c435bb500673065023100d913a7bb8e5207c82aa6337889444ac85c5d2c4fb17b70a2920930edc294f30220a61db80db3e585a265f0754cd37865023054cf8e5d21f661875d76661abbf0803453f43980978f5261585fd6a665a3bdc10611f78df7ba85eb6e97ebac59a5247e0302047c435bb5006730650231009c5dc5d27e711bad67e603c13bf90188c72ddf19347ae6a401c8902ab1722268755d5ca9a1a33fbd618a194dc21cf02502307d60c408af50a150431b3d6c57fea1f3329cfb1476ad82097f8a1c541ae3a51fd03eca920ae738bffe53cd51a69016df0302047c435bb500673065023056d535c28efb0443fbf8bd606ddde7b6324afa1150cddf9090c3f8678e8177bb1c988ddab758835adb9bb5be0a5d02cb023100b4627a0aee3edf2e0257eb18c65d2ef181a6a954a44f948cfcf257040f68e279945c1e235124da887fd48356885c4a380302047c435bb500673065023074b2a563fcb92bfa591d8116a398234ded5d75eecc060578c87827f88611ee8d0784ac7325bfa80999df70bb0ccc3386023100e25227630240ca6ccb659d92e7885af6f0ba05087574b64cdc267e150a0c266efaa6e01db088d27f5a5867133fa271420302047c435bb500673065023100a7621eb19b58c182a9691969bf24ef5cb51cc8bb3ade9b3812bcef0ef2e680b129130b02ddd3265988f63f51cc7ca0e80230384274683ad27d7e4edff49aee7c9a409257a75847f95a8d093e8926560a8e8f09c533ff6a291f259eae79e50f38329d0302047c435bb50066306402305f3c4cbae4fd6e4607e66b0ea6489d7ae4ec9c0785a258f4c5dc14113356c20f57b6a98f63d5c218b38828671db79c4902306fc130b3b99050bd848ffd3577081f58f27ef02a7f004cd200dcd0d2b75384efa84e92b45e6dd48ae1a8fbb2cfb02d470302047c435bb500673065023100b3283dc4bb3f30a226f787225a27dcd2c5cbba6f35bfc4ff316ce225afe325ab973601f63af0ab0c9ad5916b30dc377a0230425f24181cb0f5ce0eabf765ace96781273347df755dbb24db650c14560ddc4166ae190486720b551246d9aa48a460a00302047c435bb500673065023100b1b68f12b29d110651b1827c928bd1bcd1c36ba41c11b99dd34bb3253eef6dc4d01a134d7853cd020b673e23e0ef8c0b02303c989a34bb00eacac9cd1475cea0b9504cd325ed507406db1b6d6d4627fe45d243a499e0c963f904fe36e200958241080302047c435bb500683066023100eb5e82d6f3726a54a79b45d2376bd94dbddc429cda059664008928f8908c1ac039719e1f357ff4a2ef92e0f94774636f023100f861fa4eaa078d58755017d7dc1907da885a485f60ce79a06e93efdccb3b00a204f8a8b6a3d10f048e3e1ff29fa0c41f0302047c435bb50066306402300a7653e8b8ca38543dcbbd97b004eb40068fe8b81d3a623147e80314a2f9d93d6de89b9d8aec7922015988a6b00f885902301978ed3befa12cbf146f9d5bc9c485aabb0fdf9e281e2f8758528bc8f7aa0f93be6fbdf9b89628be1838ac24714fbf380302047c435bb50067306502303b7a0b667f27014508e8ca9b367a4e79b3c0412b8387648b1fc299728b67425fa19ef0ab122d3382ff748c3d604a5099023100df68dbf85dffe19aa882feadfc14d8051152cc68a5675d9900f1f15ce064df1fc451052b63ceb6171bba467d382d44650302047c435bb500673065023100c6bc6bad4980ddb1f73bcba29bf5c474c3bc13c3ee7eae558870d97eb3a8413dc23f8b49c82adbc05431e3ca611d4da20230346eae40b0772c00b1cb8d22b57c064ea56f64953bb91930897fc671871fa4ff8123062c8e2673be75fe7ddd461091e30302047c435bb500673065023047387716857263b8b1067d6bd3bacc82387e49a7634ac6172c153c789f6e4f37296795f298d3b05bcb72d405f8c44386023100c9188052396c97f9b702b85a55de1ce9109251115a01b8f08e58feb536b0d38c6ae26ae36b8859e9e5e86eb6a3ca87f20302047c435bb500673065023100adf5e7ca6ea13d7b3d54659ea03d71e6215aafb5bb16cc3752bf9ff1e23739ad08a76c12673a6f1e838654f99b5e04b4023009882b0f6e242cbf90b0b23fa1c3529b11f8e6bfe4570b45bfec03acbfac247ebe7cbd8066f71509241f523f78b18d9b0302047c435bb50066306402307356828ea371f7ed4412f97bb86d0425b77f5f74c986ffe3f16841cb2f091e972c9b78f293f927c3f1edff2363918e04023074ce552d97e97a9ffbe31dc23bb6cc8c819c297f582f231d19c8284605a772995a04fd48d8b9af1ee3626180239195580302047c435bb500673065023035ca523234975b47d5f05366b4218be58fcc350745ddd7486a88aa14fc49dc71b2b5c8723c25e8bb54469998c8868f46023100d39974110b15dc19226359c6c211f14e22c4965010848fcd600cddddcc252aea810caaaabed065664bc8dc2d7a1a3a750302047c435bb5006630640230209f8d484345d15206fee752b4cd6847f4eb53301b926fbf61079403e04ee7442596e3078dc504ec7d873f299b3a5d5002301b17f8f091a5d521140c0e5c5a642c1aa507a22c596aa96f553ca82a73ac2ff8d2f664207bba34c83c790493aafc62b10302047c435bb5006730650231009df84a3b9a9ee87eb11a5512d2371201c31abb5cb7a6d6cffc0552a2beac7053653f0b2402ed85dd30553256c4e5ef9b02303545965c8131b4d54a387b9ed19637907c8eb2c4e6f4aeef915e98af1651b7b835bc32c0e58b2de9ca8e739227aef0530302047c435bb50066306402304ace15dfb7d65e0e97223e19018665103c8d67043e808a4ce4e6b12b4e7a0b2776332bffc5dcc674e69b2d0df1529951023042b6a207e4624b910fc1096db938940ed32c03fe2d5f7f199339b19ca4fd31736a94682f9a1258696b10187cf6ff26670302047c435bb50067306502301629d6164f4d874cc7b6d0caaf728856ab776013cd20122c3bafa3079d020ef9a32ba41d976a1b6d16b2a8e0284adc8f023100912b128210f89c9373eca3101c18068e43d389de75b3f8873ea33d0471b531cb7a8d77406635970b62ae55dd8458ac830302047c435bb500663064023050c39d96b43c952500ca15f4533dbcc743cc34398df6410d4773bc5ece5017f8bea2b03d894b036dcca86ddb7202a22302302185493048f032d058d87751676b8ae4b9988614f81cc83c0dddd209e55787e159327431485a53c948cb2724c88682330302047c435bb500663064023072e5223496ad76f2838d338f208a7e7661fd6435f28beba025509fa39c706bdb7e76181b48878b41c58b8c2196fb8b4902307f5c973962d0145c089b100d66f962c34412c7ef12c41873faed6f416937dceeca41dab6679cd80fea3e04f73f339d070302047c435bb500673065023100d16576340906426065b56cb2ce29ecc97492c613a165b9810ad5a6249c114a6835ad96adb8b7afe2187ac55b452cc3ec02301617cf65e356477535345f6433ca1f024cc06489db0f992d39f54a7e2de18abe15ad2746d603b9542441b0fb6797510e0302047c435bb5006730650230745748a8f04a3a01e34caaba4ee82c96a0dc617d4fa524c8b211282a7209d2899c3bdd0b39c82f9965aad86b1a250a0c023100c9335d19aaa6291279989f4298afd15c79287a4bcf0a3bdabeaa6c84a602ba08e05b74300d314f62d5328e0b648bcc1d0302047c435bb500683066023100ffa591a0e097c6e39b17d15ccc4f55232006d9788850bc08e522dec8941012de0077216e83275ed0b91f8d1ba8f79033023100e0a24b8b1218f39da9b3d4d88bbb7f6b5a5352051b987e5b32f9cc84533500412a389ea38326b1b7aeac674b00016e290302047c435bb50067306502302c5c505c0246362c1658a40ecc607f4d8e40a814fba8a3d9f25ee1310741b3289c762c05a5fe8b63cf47a83c70c47a98023100b5865074081c9ceabee2ad378a227959c2a3027a9ba6c4cc84175d427ac3469f2b158f1a41928381dcd4da1ac1dc3cf40302047c435bb500673065023100fb67cca03da7ea9b375be9d1b86d0d75b28b878b29598d59b93eca3e3421e8b6024440c7fbee1da473c6483bc6f7b18802307b7927d586304464707cd801ad7ea8a77926b69c72d08c1e5a0adf7aa37115a2418df34b77de092e0d641f9990d4a3710302047c435bb500673065023100fe5a61e213031f49806dbe5dd56e5fcb402b9e50c546fb07dda2fcebe94ff76783c0a61e06552b09b0dd62d629e95b2d02304ca9ae640782314d5c56bd8d48f26a7f591289c0d7fb97ec42a87f7317493a475280fa1b81afa6502bb81bca1669ded90302047c435bb500683066023100b16c8e151fcd40384616e8560da36cf901de2267e177d4403cf9a83c944010ee20320db52c842e6f9679ad8b45d61d35023100e3dddf802a97e8cd28cc162bde9eeb8fa7d633fe4e65fcda60ab5bee3008fcc111f001765dd6113109c0e3f41725a79c0302047c435bb500673065023100b4be6453d79b39954c9a61de5eb72329b4992abe04f4dd2d19bec7321d215cc80bf4d8906a8d9763d54de3e36c15d3740230460ee8df829f7e71f6a1bd2c49e4e4437c9e8fef6cdbcca330244698c755c71de7d1cc0a0dbe6f3e990efc145a59b51a0302047c435bb500683066023100fff0ba4df492fb820ae000b055826a2af80a96269f4acc93b1d0a227c6005d1cfa7de7b25c4fa042149cbf2654740f64023100a222924b6d3dd056cc0a11dc580fe81f02d7a1b3fb102c61a50eb4c9d2a7738667a75ba1be0f5fc3192dea1da7466c420302047c435bb500683066023100e639104aba16b702b27e023347f10579428940a3a24c660efab32422e1d45cd2356eb56ce56df53f1ba6fe650bb6e763023100ec74ce3875341bfbd1e24abe56dcdb21b3bcbe2a51f44241908fa95e568beca209c8fd5be8b5f95c3b39a5e12159b70c0302047c435bb50066306402303409f8d3bd4fe247212673f90132510910a05bddc0962d4ec1bbe41af07d325c1170818c12efecf7b8a120106b8d93f4023041ac9577f3867ad27421bdce9c5a36a6dc3aefeb0536375d2a4a161f5911c1081f896cfa7c7cbe40990bf5d643695c7c0302047c435bb50066306402307d24beb1d0ff5045ae5c74be1e57b00fd483e04fefeb861e0b75ee611ec1548b39feacec54fa833c241328aae2cd64d1023043f975428fc6c0c09226afebe52adda3b84aff293ae191dcfe298190dff322c8be1cc5c521e548da211f8d50236e00b50302047c435bb500673065023013aaa4ab83b1a3198b15d0115716ad30ddba30363bae7ba6fc92393042aa96757b40d4b6c5427f09a3dabc35433ee67d023100acba8639988910d0efaaf5009d5ebf81521ce6b599e9acba8190dd1a94b66a702760ae864a9d31e37bc6066fc69bc3cb0302047c435bb50068306602310083f5b3e0a963b3642b2ab7b124128e2ff2229da5ad769032270d30bf02d2f38638c5b81828b47205fae5602f285dea8e02310083f05bb86c636904a778eafbdb07f198bf5671587e64fdc60c83170e17bf9e0e8c9e2942c8a667bff9974ced832e6f6c0302047c435bb5006730650230647383dfe762812bd4a8b82d65d371eb2b542a49c3cd7ed90f96184ed9372eabf7ddacfd858957bef0a1d6cbd129214b023100b5feab023461c0b9ffc755fccd4c603b2e1795293e6ef5328b43eb1d5cbbdd4b01813c1295971e99f02be0370f5304020302047c435bb500673065023100ac50da9d03a077b78c65b73577b2b9a4e5385c59225809f677db0b6d8a204354bb413f08b52b859266142c9471063ad70230113635446d1465081b31e519a8b38bf3718139e445ac4c35e3bfcc3af2c89da3c917fb01cb7f7aaf250716fa0bfcdb180302047c435bb500673065023100d445b5421bf05bf2cdedd7d2aca22454009615a1b5afb366a5e5cbe93725bccf7048f0b34465ac2d827e1871cc4476e202305055a5af45c68ba882e82f4c93e5ba16790f9a162882f5d447e634973a34782bb37f159905dfbe25938d9617d10bb4e70302047c435bb500683066023100b7fedb7e624946676125ce695d67409083388bedd20549b6525d28ca704fb2b2e95910151cabedfbcb1d143d93fccc25023100f7e39a1e7531a56555211899deb7af3cf86476bfb86ab81717176945cba92fd4be1e42b502ee6de380fb920252d7f6e50302047c435bb50067306502305f1e9b8a1f7bd70bd052dd3e32475184439ca6bbae68dfa4fbfde2090715bc27246fe175eb856f38a6d37570205f0c95023100ba9357c3d391273e0ffb49dc2afc573ecfeccc7aceeb7e7e0a91bad88d7b4af89517d868f277b9507194b6ad92de43040302047c435bb50067306502304af4a4f094755eb7b83f5714b181b916c4d66d35cd2ad6fc237bfc8da50799d3d2a2292b449bca71b0786adf3ced7cc3023100e50d1c0024278193c912362f94991aa813298fed9cd30d0020f813442afb66f80566192757c7597d700439cda16d80ef0302047c435bb500683066023100eb8f06f0faf5eda1044cc2d68874112e8b84c494d075850667436e423b0d7bd30bb3d78677aa4025100e637c9da57aed023100daeffd7ea83ccbc1a7891e31f32ddee8d359b0aa41daa73ed224c3f933bdc399cb304d093676cbf419e8c443dcd285d90302047c435bb500673065023100f9143538979a7709759d491b98a942a523828626be09047b53d1dfefb7ad2dfc1547169974bdce990400a38138b3317902301597110d45345ba6028fc3a0e739ad38f5db387fc47cdd8409c40d67de0c3c1842d6cd8ec9c8ec9b4ed5d52f35a478a90302047c435bb500663064023079fff43721c470cefcff61642523b0cac1f4f6179d81b5a269366dc8561297e82e3ba5e9d6ceeb2c57d139e9c179af7402300e029bf20ab65e8be41e3c6f53676dc3d65d421849b0025ae661f42c7efc6f8dd57bc3f4073fdf4adc2624ca1a06d9720302047c435bb500673065023015d9ff15373b370fccd78d6c0f77e7f4df6ef1f6bbd7a56a7fc3e3f0fe5abeb055ba966152d25587f6573ba64916803002310082c6f5a6211b3bf4c4dccf15a07f2ac4fd719f9533038fcf00062be7744a2242c73a021a847d54f08ed3367eb45b16a50302047c435bb500673065023100b13f54974fca346cad497e98220ffe620fe2f553c8346b5236296f33a710ff8f57a3f116995783c75fd49ed8de1c1e67023026266ae6a79fe002b228c3b1daa06b7755ddf3666b7614e7cb7d9e64d8b920ec4a6ae79921d34163d4c3d71067552eb00302047c435bb5006730650231009d08a23eb57a08f0b02f189a96ca3afeec8467bcdb0023eca90f366fb63ff827ad716791d62dd01c09e790c853a15f2b02303074f7706787bdae69452b59f047cb7723f95800cafba44bfbafff033f006f6c48110d75fef5ed297fb34d4158a9e50f0302047c435bb500673065023100a83f3292bdc54257e23a8e893d7f52191079b2ee8cfaf73f9a36866b05ada57f722b18d5f604251077ff468f32dc7c7602306c8784c8ecc533187c92e1b14e5d80517a785cfb54939666553f3a56df5ea71fbe572b540f175339a34ae8285b9aaa270302047c435bb5006630640230074237e137ae0ca0f9fa6607260aa77fbda90853b9f1939620d7f030b515a3aa04b629925f75f02fe0849e143d8c421c02305637dcba93e79f2aa11505d8e8ff366773823008888dc5b30a7010aae42ccaf294435adf02b85ed02a50f2581478cd000302047c435bb5006730650230628f8d7560c03a7c6798d3628cc048be3d211674f26fd49bb17815d642cf6d49f3d590eaba989e1224d5328bc6c9df12023100f0f1952c9f783ec92902d9c5aad9dff9c0b43781901cb055aaf6707e9b4f6daaa04ba73433f70980a78c3148ba69973b0302047c435bb50066306402307d5f62c3989c3081e7f9749206bf3b33a9fcaf967cc8053e84c311e2cb41bbc165cba74a9116cf644006c751d5db5e2002305a6891ce25203488d9061878b5eeca813bb5e8f27ee194edf551b61ff6a23e20e7019d3a8999d54e56512ae06b9dad230302047c435bb500673065023100fc1f635a0d9c4c2609496c71ade6bcb658c56638f6dc1978e2a24dbc2ca205f3383b40bed16bcce0bb758109c46a8410023047f92e738a79f887a9f0f45d56f480ad9f6e4b816da4d710e958232538ea1c6d0b744ba33d76102076105585b7b0038a0302047c435bb5006730650231008c2137abb534d9bd2f2aff3521e4496a9dafc59a3801801220fc2249ee9d8146160c8d22d7048b9b34345ec6a18a264802306d778bf3b30016b5de902aa1683072e0e2a044e26c3db301dfad1dd332e8464f7b9ae175f2ad1513cdf6a65137484c4b0302047c435bb500673065023100ea4dfddb126fd6df209d4926ce8019bcca1356952cfdeb8d647b5c1a6b83122379d75df28deddcf233ed00238fd4503b02303e76e870e50e892f733b2ba2983644499018eb874961424e13e0d4e364c654fed94f54babfc9b0a837cbcbeb76404c4f0302047c435bb50066306402307d4c211f850e01f2264dfa817d8df23b1a307d37b9e95ec500dc86fa3024c1b28db37e66d93c295fb005e54467daf17f02303d9ca9cd4a9480b41883ffd0ea7952e8d78c926a2bc2a54cd9a54f1fbcc8c40409144ca9ffa5f3a043d55014874fb5f90302047c435bb500683066023100bc166614699469f50c73ab64b30a35db3c64ac904b407028fda4ce83974475703c5400af18c6b23af4f348654502f43e023100c3119d7da23f393ae83f6404dccf274443ec71e46fe375b3df3f2bdd7fa5fb92a44dd783989ccb43d07d6d97c49873b90302047c435bb500683066023100bf06c70023b295b542724c5b89020eb795dbf1c0ad5dbeb525081db94e32e9878f25c1688cbbfe0d8d3a73c37bb0adfc023100ac6c15de014a2af9d1684ce200f1dc79227e70636515a37bbe9b5a330c1e3c223eba03eb57e2b2e014f1caa36e2bb29c0302047c435bb5006630640230142e5d5307bfcfb10f79b6281467e23fe685af51b98e481c583bda785d6480cb94fbe84a5573000fd6d7f764ebebe45402307eb5d8d1cf707f97b8bd8b9070d92037696b13d87dba7873082ed6b9dc764f98f5d8ced0085ed8d9a6f8545ced19822c0302047c435bb500673065023029bd094ccd0665e6218ee3c0cea4d47edf8452926e36932ff02bdf407450ab64471c477605310f09d27031db221789a3023100a0d23cda27db7cfbf5c0480224915fec29bab49147c39a5e798773fa0759283273e3aa432f9dc9fd30b0fc8eaecfc4e20302047c435bb5006730650230285817c8a6b26310a598f5234c547ac6c21eaa833894b9d97123e38748196e0d223fadadcaef9ba5c77c73d1eeffcd06023100bd003e2f6213e162625934965ffec9d53c1269e0288f095cba7d784d9eab7f3cb57475a553caba750ed633fc0b738e6d0302047c435bb500673065023100c630a0ccfc01f0ca04dcd0a506c68387ce443311bc9ebc484ea6ab1538cd89ce5f756c56d6dab893bf48eff2e174460302307e1eb08886c7d7b9a367d4afc8d087b14b7b4a25ba857cf8bd3d79af5fcd3f8d6b3ddbdbaf5e0b415d57f91d8b715d780302047c435bb500683066023100d0a264da66a0ccd61a62e64f934a0c7806858fd74823facb289df1a832f09ffb63f5c8331da3f8514f44d62a17e668fc023100f4873dd80c462e32aa179bce71236fc728bab8f2b41b208972fa8da00380d882ed2b028bdd331af2d65e7b9996841afc0302047c435bb500673065023048527c683e8f78b8e683f09a7ffcdaff5bb815e32872f2619657bec619e51a8dd7265e7db1e012dc101d6eab5c16f695023100e88c84c6c052503d3f7f16efb5899afa3df036b960360dd9eb46bbbb92887fe1bb5dde19cc111fc75d2c0b2f2cb094480302047c435bb50068306602310082b5a1f387078b811c5a47a33f276be5cb500d775104493b4d12fdab337cf1681bb835c7691ad77e3288dd3dfc5e7aa5023100ec4b3030ec73710f12f6e91ecff5381a681474ec2107f0cdc0034dc1e21d81b4ab1b181b09b28bc733637ed0bec45fef0302047c435bb500683066023100cde36d853388e9ae457fd3f209559bdec0d2821ad98643d37ae934148d0cde2fd2605f481ce9e46c3fe445c694b10ea402310099de635e591a693770d33491b4caf7b93edb0deb4b4be8b4c545d0e37a8e95354069ac7199e76c4b6234835aa14c68df0302047c435bb50066306402305b3f48e17eaf890928873504291432622696cdd89d2d343a706c82e5a503a1cc4b5c99e739fd8d341e28bbac86f21f3d02305270f0a1a628933f2ddf1eb568a2beec45b3b549fdd0e1b902dd508aa6df5576f74588a3debeb7f6d1b520d0a10c767e0302047c435bb500683066023100ef8186e6d0190ac913d58fab648d53c3cd7915709ca3b158cdfede57e1d10cc578b1ebd204282d0076697628c35b08b00231008aeb356c7e1b3b6db74a6611c0db632781b75850daf4785cf442bc16c667cc348cd8c496dfcd3618c607277ab306e4ca0302047c435bb500673065023100fbd2c6901a2c3e2354794ba6d225db6a68c0b9d5c240fde4de5ca92962eec728c955e832273ba3f1f44c9e2fb1698e0c0230550c1012579535c2c4ccbcabd0ecf34caba7bbdc5b0bf911937eb9186a8cdd94abfb4fdcbda3ac8a7cc6dc86c7d70d870302047c435bb500683066023100b6f7400ce024df55f392e70089f19108e3e9f749f4eb45b1fbe9fd0c5a46c3aa93aee0d2ca4e5947dd8b3aecb493fcce023100b5bb5c512bf7bbc15eec5d6907ec79db22b4a56d0180c96bf4546e007e31f11db3f5add4eaa8a45f97dca93f794555ea0302047c435bb50067306502303279f33a107dca9585771f20618e869702e057bd80742d45e1c45f8ae7857ebc6bd4e958e41bf6fe74537a9dc0e0d1a0023100888871090f7c522f3fb056cf4340014588dafdee705da493f1f2df1b5c826c6878247e4c1d2c477520b2938ac76d106f0302047c435bb5006730650230416889a06a7180c37a640e5ff912e659129386157f1418d47bcbd3d452b214328bf4599a05134065b35acfbe24ea5a89023100a7f691b75ae66638602752b6d27a5ac611681cc73e7df848571484b197d4532c4929dc8739080b7fd5198f17b330d8c00302047c435bb500673065023048f9ea4da062df667a6ff43fc4b92f0d347e45ca7181f9d93642b1fd20aca98ffba0bc939f42bcfcce9b40a067cf3a04023100934189c7f86d4113647bb7a7233d2226b0cb3d3f2ee89df55f3d733599681db03757f608cfcb5421ad4bc7351ac4c8360302047c435bb5006630640230748fa447abf5df354e8b52b907fc4d01e9927dbf8e1438d24b5c32f2abc4f8eb397ec81739e139914929ae3044053185023000db1b96e3885cf4fed939138add71d4f6a92bc8a7bf0be5ee0bb6a2bdc11b69e55643b64fe78c15e2c522112c9030f00302047c435bb500663064023029dd1f67572e9b9602f8fddd5df3b6a7426af0c61a3946989ba574007be57e0fff5d1b784aea489eeed0bb5bf16580a50230479cd43c8162e1befb58674376659d659804cc939b2581116784919c96b5243bb511335c6036172946ab27add7f43e170302047c435bb500673065023100b4c10c21ecda1be494c4ba07d2fffcdff84a8ba35277a19fd74a63c40ff7f49df66a583644d0e6d22c393eb947d0fc200230611d06f11fe3a50937433efe88d6229f7b849ffd59044f7a68cdc1cd2cc548b01e0c88159f55469f67c1a0e8ec996e650302047c435bb500673065023009da0004f11da14dad0045991c17562dc3240c2d97750443eee05307bf18620dbdebf277f9b9193b51f0aebb9338ba51023100b2b4cc9d939c4f861d11fa9599d1358881b577aaab06850372fbb961882da49d35af0f6b443227c7368c2590087268070302047c435bb500683066023100c41411d47ea2f0988202f4e5c4351d5cd81a6de2ae86677e8535b71ac41160f5cc1ac491a164dafcf4c6f88e60662bb9023100ca2163ac24311b677ebf8cd2ee5d2d40f840cab56e27e69a121cd5dbd4f76eede9539295563c0d88d2e084c9f9e194240302047c435bb500673065023100ac787f0b9b0c7bef08fdc587d66a20ac00443b1535b43b63208b2525821505d9992411ec9bf78eccf4ac74f221e99483023073d65918961d2252fc813d7c2639f42ac43a2ec1ad3ed808f08d960bd3a3c0347da3756bd69d44e46e02cbea947466b90302047c435bb500683066023100b829508275274c4c878648a796db5361e283c1b4d4d33e957a78501d1c0f37a037766030be72f99021af34fec46c2951023100e72245d9f664ffc7b79671a485bb17cdc7b7da6085b5c58bb295d3090d10da6d053e3ac1cdeae827cf3f0674c23083750302047c435bb5006830660231008a739a5216764955ea00a7c91254829f38feef00bdc84e857af6c75981b9ef70af7efb2dad12f32574692f0ec26d51c4023100b624a4fa51ede85207d3647769d3a01113039b85525b1e4e2ab26020cf158632885656a60d4fb8baf233aae4aeaca73b0302047c435bb50067306502305a1ad0fcd6a24cf8fe6c00e285cede690820dfa2eb52644ce973cf3fdcb7965d64e739098ae30621330e2a959eadbe81023100b6e9f00399dbc3077d86bdd1dc66362af7dc0d79000319c5937bd0abc10f49e3d308f2725724f57184ceedc7af65ce850302047c435bb5006730650230261ddf6c2861a7c187b16397ade4346e1540c66d61878e8018e5daac8c0e57a0290865377cf514f22efa21b08c0212040231008b3aaf61d9c0720d3782994f8631d63acc763f8ee95d3ef046abf2dbf54209b6637d748090c26a6abed770c5e31ef98f0302047c435bb50067306502306e9a2c4db4586a1dd485363fcbe29d42c424a5e234de1d1d9bc064eb3b66bb597f945b7b4ac271df61cc358ada540184023100f030285794c4db62e84bf80a5290117c630c25c2623c296c49b77f1a81c1a38ad84bf97ac0aa1b4cd23d89e5c86c4bf10302047c435bb500663064023058b23baf13bd160df8779393c0afd860bc9f913430f7bdf32dcd247cea29e255f85ae481b18d6f8761fae0a28c289df5023064803aee0d81cd59388d42202bbe3b2c6048b1680ab3e68d058f2d1529c9459ff013398ac9405b820dbc2cf6094690750302047c435bb50067306502301ede939e36f10c75a60eb15bae1b2f3b47b8d487ab6d836132398fb9537332033bf2273f0feae3fcd63aa5026cd24f52023100f31a04b8e1e33226780615ab354b903ca2869f8acccc693913f303f10f7c8e46cec0439bc65bb27990f80b4624c275de0302047c435bb5006730650230780283e4a8136dcecac7b5fae3b25039325a985961a86db83bccb86476ed51612a27f3bd0bef9b7de7bff496b3c27f08023100fc2532f003b56c87425e10b69a695876a309f2196f91fe674c8455fca16ff58bcc2bbddefe873d7a962943d6c72bb17c0302047c435bb500683066023100a6de3085525d3d37c2703ba079eb452cb7b941c2d9c845036dcff149e4b4a827e74b105707265544f1305d248127ae14023100c610a380557883a8b9133f601b78ef15609fbb63dafea1ca3a3b4faeba582c3598ce2ca1ca12e02b4e8660022709afa50302047c435bb500673065023100a26ed4de30da029790f8e076117d33496f90d87d26f0d84fb2f11c051ef3644877e0ac11ca0f5bb842c5f941ee24b0a2023038a78dc87715978f367d58e5558e8f364c93f77d8b4d98fa38e1cfe6f199298ad4f262ce3f494315e960954e8e18c3290302047c435bb50066306402303487c37be04886c2bddf328ad7dee9484088b20d1cdc1cab7105199f755257fea1d3357d41f2bfd4ad9b99302e598adb02305e344e4c3245f3fdace5760334dfb6a1136f422f7f7d4042b600f4c63e847dc59cfb7706b079d7407563d3e2a8d6645c0302047c435bb5006730650230570599e058b133b940446cd4d2947c62b2eb69a310e0d1805fae256c547428230607b8a7d06f26635690c09c29c4b5a1023100aec6ebbd8a7c3e667e60f24fc1ee720983cb33da10a102865ffeea58d357b6d2144bcd98a44a7049a447d643ad3129b20302047c435bb500673065023100f0a5f256f46c2a2d2a578210ecdedaff61bf189c1cb205f3e9c762933a83ee404589ce94e67a8699d617ce7b945bd44e0230033b4b1a77ace4b59371eaa2a2ee0b2555662b1e3129637d546844fe79a68afcaf18e7077e3fb67115034e2c8f57257b0302047c435bb500673065023100b66bc3545c4aba0e995260ec5358fa1f6023e2324f9fb52af5b68de6dcaea8096c4402392813843025fae0c697239f6202304953042661c899aae728595d688e7f7817019a0746ab904d64b56478323a72885d52989a0489ad56d6b312f27faa99860302047c435bb500663064023046d2135b07fb76d40e6adaab7fa60759fe517ffce793a7ae6b6d255a9396c48ebc55005dd0dc945516552b0e632c0810023034753b62d46164fd290cad26be26ea6c0e31f960cf295f7888d74cd12d79085f2dcd0c5807f9f047779b2b7d7574dcea0302047c435bb50067306502310096d1be812194f2c4faf52548a1516f68853ce7d72a85d1a29356747d6e66517d71f7f63536dfc33161282f517871a9cf02307447758bba52661f905dc3984e12dc78e87a26cfa563b538320154e3fb1c4b93da0aa87bffe8cea82e437e7c58964b080302047c435bb5006730650230690e585dca6aefe86c8472fb34af0f087dd0f07a42133d7f1ecd14d9bd738068532cde6992e3c80f74fdf10557106d16023100eb71733d48dbfb3b38ba1e56598a00a470685212bb3b1da0c06afcfe6a789dbb2d754208e146f409cec679316e7459840302047c435bb500673065023100b91f44ed90eeedc40cf39256ef238864b32b277ad029829bb7b7fcfe8758defa50eb20627ee9698b97f901556cd905af02302cb82ae68b046a527af19fca3c0c287d44d141207a74b7162f56219b712a653a598595a4f1a7e7fc273a679879333a160302047c435bb500683066023100f2cdef250b9b9d75b8d969ba3cb7a7a5d818e8df526cbc8b3db9893c6ed7e60920fbd13b7bc373901ae50761294b4081023100c173ee12426bd4dda11aebd03abad48551b75394df0c246d8cf1a12f5f4731ab095552d9f1c53b32aea989f6b74753240302047c435bb500683066023100bb5a83b86bb7a308e3e223038fec5c1612e2345215caea5941f95463ab61ca248ec9e989c65bf175a5aa966a7123310b023100ed94dc2427d4966c6241dc20bb17f458660472d3d861e07bac605c04f11b72d084cb799a012c6012494e55baaabc62350302047c435bb500673065023100a8d69b545bcfe203499d581730360ba069f2fc4761ad0196a7333b68097bc2f60b966b21b22820624af1f97673e0a900023001cd181661b63a16ef84d05826cca822cde880dd550a25a814732f97c71e4c78579b84590ecbae5eed994afbfc2af8740302047c435bb5006730650230267ee476f163991fc59459d5dd7260e3cb98caea6f67b8847741c0d9ab3b8895471d3d358005ae2f3597b8b1aadb53da023100ece394498aedc1482168555eec6d38885387b00712de421c530787252d1d5abd72c7855094a7c08d54f5115ab39899660302047c435bb5006630640230585ab7f500b77893b20760d71ae15b5ad3b800c9eed2104c687fb3c6194e02cbb3a0af52a5cad4a1cbd2ce56fa4a533002307ebd1f518da38abbb26ff59d59104230d76f24e821f785d1152ae2e6010b4be6b041906f4b504e9de2e9aebe91d317230302047c435bb500683066023100fa051c9a870bd80f2060ec69642fd82329cf8f14cb7eab5c8cc047030cdc640ec8aeaa585916a5685fb638e410c01a3b023100905b85c5fef0b64881016326e4cb17a31e8213c49ac825a692ebb7a27ebb23566b83526e9ac60a6952114e4f23a9298f0302047c435bb500673065023100faeeefe0cb381496fc286e46d852f9d05b5c739b0fc02084326ef9e1efc7642a0e63f90ae3ccdacfbc243d9b429f10af0230723faca995f467d332c7276542725e086962351a0915a970e88cd59e39948466713252019f12420938c21126461905760302047c435bb500673065023100a45ed3cba4cf5a3b4365e988220bbda09c292fb7bb65352d3d6729e6500bcc213052f913f26fa81e398e46bb5a714a02023002745d4c07212064f45ede9ffc2918690b936084cd06698520845a87e1cb0f538f7669e7dc46c806cd4396d767f5ca7a0302047c435bb500663064023024dc30a8f2fde0c403b72c64b20d863082609a16dfa70f15da6f3a6a6c30eebbc09f0aab3c23ca0de75eb96a345011ca02307846f78a718ea35c6e24e5ad1e694ab8e188dbaf534610e65a8a797eaa132df3f1917ecf0f49df77082ee3ab5154a8500302047c435bb50066306402302024da4976f732f6c69a44da4a1034fc93697eaaa21969f192a509e0ea49f09399e63a2addbbb3e1e75f172f82cf4b8502307cd6f84504db895e577ec112ee2b4e275e67e2e9e6c7f13ec19e9ab4b4327a39073d2c496e4cac4a88b496eb2cf1bdc20302047c435bb500683066023100e89e0c35906181667310600765f990e6c5390209e75650da1e4ffec518933a6ec3bd48f0c031cbe4b9725e3b19b9ef65023100f4cd131f7ad3503b93ad440542bfc6a9ec2b64e0a28d9dc21407b99d5a05f696e9b4ce87d007ab59a8d1cd5779c3e4b80302047c435bb500683066023100d207eaa2bdc969403ab9dd961835d03a71bc0e74c314d648e1c5fb0ecbaf995ba62b06be31c962c0052d4ca014885d20023100ffad6ba479a72a90c44a79d5b069cc64fdacaf8e5d0a033a52031d3e827af8b2139c59824a62459a1f1d58425149555f0302047c435bb50067306502306f369c2906590d74ad288f0e1b2a0d55fbdf69d9d29f5245779b4803832ea27e403864ad97622931f30f436b6b7a3485023100f92c8d425c7a15bb780173297f80ae0267639dda5628f8d7f1e735919c9165a8ab6c820d00ec97484cdacaf0eb0afb4f0302047c435bb50068306602310095941685b7a77cd0d3ac14bb4c4b0e1e49375eb6b9deef177419b779ca0f909703930ca309340104a53003b9affbea18023100859a76639e26cd036bb1ba928547b4f7bb1ff46ac51fb4d09b04568af81e08bd2a24ddebdee023cd6a28821b7821a2300302047c435bb50066306402302907eefd9c7a43a1bbf1f023164ee4920c0b99713602ab70e76b9e846135454930572a9ee6e8ee4c31f04646e123b78002301b1fe6888c8d09c63a625eda697a78835e47acc5a9c181063d9e8f56a8cfb1997b5683447dc6dbc09f76beec518ffcfa0302047c435bb500663064023057ffeb5232c73cf1f9b6b9fa6c65189f18ccfb726f7c729abb68649e256e4e64a76b1f10e69e57b986b9bbefb0b4103e023000ec79accf7ea5a3518a235aca028c7aecb1f3357ab6c2b0609547145b6fc58fd42ff490e94470b0a0a140ad6abbf4aa0302047c435bb50067306502306723cc36082bbb93e9d144aae4e319bbfaaf144e5c126209881c247b03e4b2d7008a37288ac9ee4f87eb9774a404b17d023100a670c013d299c1dfb0341ff50eb0580229a852301bc4438e37f6b78175df3a33dc23c70eeaabbc7ab1597ded576195870302047c435bb500673065023100c0935eaecb37a96cd9f19367f3ae0df1643313616cbe162fc352e8d56f02f5669cfd2cc962f795c6e34a01fd50ad73a302307090ba1a40b0b1aab174dfee0fa159dbc57809297bd98a094e176c3667f6bc486c5e81198d7673060fcd30f1b567d1290302047c435bb500683066023100bf063ff2c5a911c01084a0a0db8c2ca97a98c1196ce1f3c55da508c2249461e038135efc7582f55d8a45f4dcab503d4a023100b2a697564abf1462b4182daa00d6349cb09a62a0210d38a6d010e049469a4e7172056041a6025a94695f58a4d26bc8cd0302047c435bb500683066023100c991aaaded24a385b1474e17ba2410fddf3619d6d65fdcb1c0ccce256f1ad0f8f0b56066302024e829cbfd8508edf328023100f3441cc34183201e7bb336f50c2884ac889995719571b2b74df6981aa87b2274685b52339b2b58a0b7d7a76224b9066a0302047c435bb50067306502300b3deb9d52dff2c729c0ff9892631c48d5d07ca1796ee01df1f754b4f8ba11bbae5416432f124d2b28f5af92dd99548e0231008affe296b44a0766a1260607846ec8b19af06032d1d9003dfc508183c3d13d58d720c880c23b47f1282fe95cc8da49f20302047c435bb500683066023100f4b264748879c43c9f1007c11c4a43b7a756a394bddd0125cf0e632d631f4c5a1ee25e44265287afcf7cfabd7195ab09023100a5c5a77a013e0634a57fb358492bed705ebd3e473e7d62704bd454baf29e61df4e0960fa81088c6edd503c2bee49e6d00302047c435bb50066306402307bf3d0e082393ebd7b6b97304aeeea8750e75adb8718c0b8ef4c9a9319d59a40b88704ae09f361a77705dbd605525ec602305e6210424d70737e20426b4b82e820102be35df80913f3e06a63799b5de5cb2209816f387ba112bc8f5d93fcb70ccd520302047c435bb500683066023100bc3033aeac3fc8341653de51ddbefd2e9d2e1ef758d22d849a13d2b9c49bd9154c1d9a13d39e8922c46761abd8f920e302310091a0e5bf4ea52b4f88f8e2b6b5ec33e80bbbbfa2353ad78c91d2d35aa277e34baf402859b910b840ff10f639b66115ce0302047c435bb500683066023100a2a053ef872f19cc32e24bfd132807d1020580df8999e861272ff71315fc9daef0f39a91db9653610030b7317759892a0231008ddceecf5877da937d33a46f70ac9123983d9c4a603e4f00e6c146bbdf269c93fba868b21138b5be8c224d078a26f9f30302047c435bb50067306502305cd4fb0dfb7b8031e7d77b6686e474af3448090d0b82527319972e6099cd837a4845daf81c6151d312b9015c1e20c9be023100c671000ae94ecd72f39954bd9ec71fca0bffbb84d2c1b61f132fbb34a47e4a0b00fd899c654933ac20b9b0fb588cf64a0302047c435bb50066306402301d0de04e88d9dd74fdfca2c93adb0e3608287135edff8f4f45bbfeddbe6a3934bf47724f70c2242f5a423926a778c76d02300cb0d6e084938b04294f5145fab99cdee4f52dd427aac0f0c40f76e78a6e548c05f99a8a14ab82892c4ab2fc96ad23cd0302047c435bb500683066023100ad6a3f81b88e49613368c124e61860c1f11db80f44e434826fd7a917a15915ef21a2f1df98cc91a203d5e5a4b5d480010231008b23915814c908d8028cad43a89c550c59b436df44bb58346aaeb426a3910f058c30a387fb045508a1e92f753d553edb0302047c435bb50067306502310085fbc3d9ff5b4ab4e70dad894d3da151d89a849092aea6082e49c63a1e426d0abbac403c4b923eac444f1d7001ed4c50023007b32c7ec9ddfc14a08dd89e032a09af378b581ec779e4c14c4715920d02a9ea550efba5bcec5aa6a0182092d1b538980302047c435bb500683066023100f8f0f0541101d0d254c84cd78dc79129e9346af51f7b7b1e5a7d605126eee85855b6d02ab64f79d82047fdeca8755896023100cacc0406f34d98aeb13f5a17fd3d7e2bda00cfeed17f1ef25c988cc3a7ab687f70a74a1527df5314d8ab1da47406cbb20302047c435bb500673065023100d6bec95e66c413cd621471be7235d2ded9ba10ff0cab76d9becd969f494b7b9bfa52dd13a05cf025cc55319a6b856f5002307f59d82512e4428ebfa3b0468e79de525e106e0e93f47cc2a6fff301892a055b0f9ecf4922c7cabb7274e3fe79460bc20302047c435bb50066306402300545e0be509274fb7e095b60cd22924e56ec0abf9e8e282edb90be0caafb0c452b45a1c09195326bca46044087f9558b02303ee7db942c716bf310095ab37808e469eac979b6d487217bf2d4eb1a669e582db6d7b45ee31c7cd976eb1b88073dd5140302047c435bb50066306402306f23a7e0e1c626564e10c881b89d3eaa206f3a99ae8f6cfa4260b35eb97855d93c2cbf904b781b27cf454e066fbc5e0502306c2d4d7ceec7f6c36557a70aa195d4b1b4b2b99090b0ca7ce8b26d66a5c5ae47be8d43cb003c316eb617c9323e9b10c20302047c435bb500673065023011e5f14fb70eff3b51ba53dc937d97b055ca2c9dc299777b578bcbf0452896b23a3da015c6c26e11791f4ef6aef128ce0231008a293c3f6d24d8e67b3c774564925b8521d5fb4d0e6591cbbe989c88d3bf4894929794b9aa59ed6516bccf38473742070302047c435bb500673065023029bdf18830278eae8c072d986ac893ad8c32c275416e8a994453b7c374deb7c1cf3f8fa660aed49fed3a7fb5eadc1b4e023100d1da1bc9fb92b0b1224a63a2234daf4333d018102e5d829d006e1b1df58497c29fc564b78903a851feb20791bd3f8b6b0302047c435bb500663064023068ec01e604683dd09af5cb33672ea74d8c939ffe1ffc1a35942403f74d295b49889f3fb642f3a6c6f60d93a772d3ffaf02307556dcb0270fc37f6b4c4dc99ab73edf21709bb72744564533798ca9720f8f80884ee0959e1bede7729e60c6fe951ace0302047c435bb500683066023100c8ca7eaa67ac401fafeba1079576d9affc283d489aea2888b36515cc2d1ff3b0b77067d09384f5d7d75a708d5f91202e023100cad744053bbb3068981ee00388e167d0c8964e8c519600b43b723b4e0a3f4a9b166c9db58c1a93e5bf424b88ce70fd4a0302047c435bb50066306402304cc232c787a6e618537c2db2235ec1d4bfabf90f3fa184f66c872fdc4d54f86004dcac48886ccd3bc5bda19ede3dfa9c0230363eb6ec6d19d7571e85ddd4ca688dc6349ac71f750ea96a2f4d6fa14a5eec5bbaecd895f0855d61c97987205bb7ecc70302047c435bb50067306502300e25a5f98adcdd9b54d8364e56055ae2a3083e18708d48179e6944d2c9563474c0a74b07f87219fbff957c0c8d3008fa023100b187ec910d17b5be6fdc606eeca74a66f44130845190a607c07c00a1f606a1298e07c9a1248b3994792ef37a51cafdb30302047c435bb500683066023100b7ae9db8e52fef6c745a170c4d453227c0e65d99fc2fa4ad384dff0da6525f2ced8331be5dd11baa82e2438744c85f1d023100ab3cdab3c24c1f24ddb12f280ccd1950ee69f53772c42a2e842b16c69d1bcad557751c788112cef65e338139c79bd4e20302047c435bb500683066023100ca5c6019ed69df0e3baf52855a2b0ec4d46849e176fa2f070e5a5fc0baed7416f10c99d9f7bcc0907294997caaad3a05023100ff268482179d3928e9089df5a853c4727737b85f92617ecba892b2dbb8ac5d23b6e10a85bb5904108174c4254bae5e1d0302047c435bb500673065023100a9b252d213597c2e45e8f68f047ad8550210de29c3426d4193335f6c95187640b903d31630a8fb7d89b5c9d587f5c0d6023040a4aa6592f33c648a074a78a11b802a8d36ecd23cea1aa49e5e6eec0542519b26051f6803a8764d124b61b1e3b0e65a0302047c435bb50067306502301ff6be016abe79b7166dab6101c712b5ee3c240b107e5dea329c7c9512a65bdd2050301fb2b60b5b85237710b9e03ff70231008bedec4d14a67ab3f49dedf5da0b966cf25275f23a4c5d324679be21193cd78d207b8f3cf9353e284d61abc0d13115460302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302686cb85cbcf77ee6e370a65cedf53c77285d64406db29113ed16149c5188747227f7c15871412e9664deba6ceec569b023100c98e131131cf024d3033a93c580eadffa57bb6d413994abcd45f4c8c98024069656a3459e6634a899373a0b99b3b8d700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b0e2c8e9839a00e8b64dd5020c9a8563d1570bdbc4a86e429cbdfd501bde0e3f643270ceda25672e3c9f9b6825de93b7023100c1313fdde4d5f480f4070165da8db38af7fea56a840829ce095ddce33b9de79816a85dc4c7ed25bb5ea2220617e7bf5e0302047c435bb500673065023071b096612c219769310d4f77fc31d0e78226a960949aeb4639e0486c7dcab70da725591d1d9517073ba613400b81f75702310080f9fde52fa29a9db7478f47eaa15094c22bcb346bc97c22d8da6362bf31c1ef3163e939ff1efeb6fe7c770df4aeccba0302047c435bb500663064023059752c8328669b44553762abfe0adf7943dbe1ac54675af9c27b5aeefeaaad5f372719721be42f45d0ddf43ce48b5ad20230345a307451ab2249349e8a7d32f879d6b49086470f8a05b84929aa41d66126e336105e6ae09caca69b840fd072dfbc110302047c435bb50067306502301e53fb624cbdd371ab108329fc5b29fa192c37eb5f4c9cc5f90ad28f71ba2b31d487e6b556076e98d717b45c69fd00aa023100cc3e3d511e938885da06382cb0ebcfc2c05ee97d71fc8075a02ceef54f97ef910d314384406074ccbd3f70f13454d7020302047c435bb5006630640230460273c661e4b8caacd3eb8da9f665cbae23a2ff18dd22233480fbf14ae578b84ceaebd01fa471309440483f23ab2ba602305e1ea21fb5abb04149b337df51c5d30df654696566d69d1eba61de711638727a400c67b7b04829482ed3264c609c47170302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d6e93f34baba60c169d8877d64a3d927da35ca8c269a5d56256042456fbd8a9679713ab5d84d90fe10d4deb161c87153023100bf89254fbca8a6a660720eebd8b68c67010919afd1319c2fca3ecbd929d1b4136d032f0f01404589484bec996505ec4d0302047c435bb50067306502310089494d76debe5d4fa364ff342214667079971b90d126bd23b3052561ae2e970ac49e79dc3cec0e591843908efa3ceaa4023056f6888b74bebe539d7e2d36ff95938158a5ffd19216b12604ad8545665ec30f0b1b11083e941e2ae0e262f4b54c486c0302047c435bb50067306502304f9d5367c31d345ceb0155b312b3530dfad79dbc842bdbc6316a8ced4a6a54fecd274d790317ddd8210c22e9a8f0840d023100fbdbc4690be52062166e1722dbae68450306e0a5804aadeb2c38bd077b225f27a38f628da46420a77d770a4e0d1407c10302047c435bb50067306502301e46bb427ed9dee5c65862c649e729e57e1783f1d41ccee095305f4550ae03ceb3dd471f180eabb547c1cb757697f60f0231008c6070b18bd234bcfd10fdd642cea72eb65909c85d6c3e708c9f938337a267f6226b93ae6608cc27b03dff245860d1290302047c435bb500683066023100bc6965eab3c45de1b90c9f3787d79ec7d7b75cd724ac826b86d6cd8cc87e3d03ca78e0c369240c82393146a785257dc9023100a55a03f938a469090f7dd5648157e547344397812ade27ae70722ba351f916813e6b1252b7444acb6c5f215e08349fd00302047c435bb500683066023100b7c6bd744338dfc1f3a3cea52d5f025808b2eb9d5b39c2268fca09310af610d9c4496590f0404ee37879864a3124d6f3023100ef86a19df6d7e6d37345759797e0b52a7bbbf19caa0a6aea218680a3e287d964606712e8f08c0e0ba21e6c6b769a6f1f0302047c435bb50068306602310090c6da403fca81c546e830c4c20fb5dd4816d81646c2586be5637a32b2f8f16da5a45a0b37f8b24daf81b4219710081c023100ce69e56d1613b5950da8f62a82e612bbc8008aa9723b4c99d115a994098b866e9ce4bf6e1c486bb66c3318d0b11d5cd30302047c435bb500683066023100d9d8403ca62465ac2e004737d595e4ef5b8b9b30c700374922247e6cdba5527c457c726e40e331eb9b9bd4a068ef9ed7023100e4daa07807a44af7bca56d12b907afcca743959a58342dd684a94e90ccb64e914ac5445830b429ab05ba5e622bb04ae80302047c435bb500663064023058ad576709e41948612e7991609af57888d15b16dcb552ef588299f96a6e9fa909fa097c78cc788573b5d168b55ea08002300731fab173092ac019a8ff803cbd4cade9f959f9688ff41fb02be89ae76f4bffc9c8700846cae7e428ba51503d1ba1a40302047c435bb500673065023100f062cb572fdbfc7d362254e8f406b3e430a11e0d17c424183085833d6ce3d1b6f389c935c048ab2529d76c26225b359402305b915ffae4549a3426bb15c534f210bfb973ddc999e82d1154d2990ca112fcc8609c620ffa37f835738c2f3bf53a96080302047c435bb500673065023100ba269d27ef810d2a0a96e6972d0d68f8cd9b200fda65f7dd86979039d379d3a1812519afb63b77c0202fa308940d128f0230165841a1294ce886ee524c378e83a66de1f34b952acc386e89d68d1d499c28faef8eee78197497eb34dbe385cbd92d0e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b486a7fbcff4b4fad2676e3843bcd1262c5c16b7d94684fc7e7bb6494c32b9341a45f0d6b10d0d4a72b589c1b38f98cd023100eba554e01030b6a9eef4ac83eb0872686c3b0ae3056fe0b268ca177eb2b6006f81a7fa5a75901c6892d30da30913540c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100946ba660c9f0f235b5fb7f4556ac609e7816a3daed200fda63cc3902e1cb52e87b74e0557e0490336fd6d490bd539adf023100bee651580a8c085a6e25bd744319933b97d4eeb26c4f13b810768cdb35752b705261f09c0cc71ce063f0a781c6c9da1b0302047c435bb500683066023100829f77a6f50da45c318697d758d45038e449bd413c2938779f389f459138bc61677063ce3e79893717b3a092a7913986023100fae607527ccfea79d2c06d2f412fb6022d874325073fe7cad3eda642cf7795e91a861da12a43780a1f19b5ae5142201e0302047c435bb500683066023100a4532b339852e6bec068a757f38b56fd16b20aa325c5536fc09c2502bfbe832f34c2e58f8b2610954de3e1ce7e708d9c023100fb0f3f5643edfb1b2a7af53bfdcffe090433eccc4b8befefefb7202ce430a9a80a00808ba84ec927b350caa861e4f5340302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230556ab22c24dcdd5a60b79e1210f4e25f4f6161b8961241479c03d1f9b85145d0b1e9b8798e2a027b063cbcf72c3fe7a2023100a9219c89c425e3b938d639f61fb62c11977cdd523cdf5d82fcb857f1420d9ac117415e8c7cc425fab4b288d597b78c570302047c435bb500663064023027c6ed0a1ff18ad495d1d198a7a96f5b202f2c92fbf6f23ed1604c12e281b2df59b622bbe4f55f38b094e849e54c982702300584c3107e0dd39e3c32be80d38e3be0e701f9a70c9ed2f15ca79faeab9178b2c89cd7b98bc461e3c388c74238d988790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c616aef1544855651c4e8d21744d865d5445be5c716b2777af5ddff1c5df0a78a58afdf8ea65f87c23eb58b49bc5ecfb02301d823804d26b82cba6b6073b377cfd55f88a25d2f9777280b33ad2754e3a1a6d32dd5d3023c70e0c9cb2413dce182f180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310091891e77510debacd30315ebec1314b661d54bfc29d2519ed6951231f8a3ca93a85eb186435ffe4262ed6d4a03b3d960023100dad62075a9e636d1c605e1fa5a374eb5bbd48197db6a737a9b48449b4b79d21478b7d74e3f4c20736a8734f971f7fc2f0302047c435bb500673065023027b316424e599dd0993fea13ff57ea4b6d54dac5f3f3400b557bd9051fb1e68ccce2e1b2191a3e4a12df5c296581774202310080a2512627bba4d1531a5c97d80dc7c51565d05595720cfbd2bf1aea3535a171a8768e795570b32369e76b05bd749e9c0302047c435bb500683066023100e6e916bc282fd1a4aac03d56f1a39352c1f6e7874236f0aeb5d46c61e50b7952dae422a09b682d4ed4009730acfe81190231008b8a351dafccb9e11cd9436dc84b6f44949452bd5bcde6493e45879422d09d448e176085e428cd2de1c9be2f8789318d0302047c435bb50068306602310086539c5e25cb9233e1c2523cf8f8855eab000ece06ab8a18b121fc56154a3ad8ceb07935651916e66a8441c1d42d23d8023100f0d5874b374700883ebc504ff07593b6340ee661a62a50fb2ccf5f0c06db212386e18c0a50f60a61f48f8724ead333a00302047c435bb500673065023052bae3c837b05f0550a1559434095533c2d81b0a531d5231e662aa3d6892201bda3fd0e1be581657d716508030090a40023100ed358e627b2511d334e5c19459ffdfca5a5fe0b755f9ac1524f0f790b0e4cac028df40a84bf910740e6d02240df999ae0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310097bb54dd8944690db85f0723e42806cbaa4e0d433794ebf0ffd744e440d30cc5820f9f4a0cf95f6aa8f724b3f89495420230090137d493ab11f33ad7b4f5453b400335347bfe60c396c6328b7cf8f4360095dc3b2034d0cecb90471797ab45cf4b2f0302047c435bb500673065023100fd8228001a4512236be2bf42a428f41a1c2102eaf4c0e1aa2fcf464b0cd9bea8eab17d763f60e437a82dfd5669843b2b0230752ee58e818c2df6ec3e65c8faeffa8fca092c8a9d021914d761e027297b5cdc1cc37ff6d828d1d68ced75be0f500add0302047c435bb500673065023100dc08bbfad50661b38a27de5e58e90099a3571a05d90c9a4162b66d5f525b139010c7d1828df5301bd2dd96a28ddefd4602303d6d02c54bb329c2b8b52b8358df440ed5d146122e90c731acd5e0d866f9026a760fbea386bb338e48d50dba5937e1760302047c435bb50066306402302aa5a7f0f72639e923df1ed7c479419a89ed49cde37a7bb23ab13bfcef547cc4f5a35b28ffb4b0a99385f6d9c108f7e5023002e02e6548adde1f6b6dca862123150d130153173a71e73a636d976d8dd10f7191c83900c3d517a872aacc259068ecec0302047c435bb500683066023100a27fd3c3d7c814e8d81fd5a6bab0d7245aa9879d90f055a61e149305dc0986716a1188cfb58659d87ad679bfd030fe34023100da60df59ec8f8d5f4a82b3e91012221c15b4bbb025de492b09211f39d18b7c016bb1536cb29d3634df1a09a3bb7fd8730302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305ce38fbabfc441b7657be7b4e6dd9c2ddc1282ef0fb3e74c2f9433ce7ce3ca82f9a495eda1d3cb666b32d377fa38dc1402306012eccc5350437fbfc003269be3ab4c71b32fb50e312f04601adbaa2fce0efcaec56433cb889420a4ceb62a0aad08c10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b870c69112687617eb5f8a1306a8bcc92679eab50c23d53403b463c86b9f41e57749a758b72ebe461163fbf1acc63e7c023100aa4782a4f7294d4fa03e7f1ed65272f2dce70a6855af039ed9de292467cb6fe765a58aa83fbb93d47a9b207c002ca1880302047c435bb50067306502300df35916c6074c8935fc53ebf5cad4210a6a88d8ccfbe5edca985387207d5d6d68bfa0e60fa0202c6dbc6a2d1c259f58023100f311624a77a4bb3d1339da4193a0499aa5e90132e83f28750ee6999e5f86e2a7b01b1c7d960bb6c4444f2ea8a3f407e30302047c435bb500663064023061c3db838354b2454393584683a129cd729c182566f0ef95d2d58240357b7b23b2dc5a5048c85be6e07726f27de400e6023054440cd1d6d44e540091b434d5d089084e91d9b72097a495ab63dd90e47f8011fad90cc580b815c6c9bd7dd54bb1677d0302047c435bb500673065023100e455909a2dd56ac80332899271b09e5e6b68e131a166b3488583b26da999878e104e88db8bc9cb12ecfdcfa5a7dadb2a0230630745a698af41cde32f76bdbac68f19f2799b9d48ef961da773d8b56aef849d93de0ec0ff3bb3466fac26a872527e1e0302047c435bb500673065023100e46e8e9a66fbd74605fc32c0d50897deb9bc1ff40ee6a986e581ad3e25bb2f40d1c6d6d795544182d4bedc01bd8a75fe02303ed354a79cff2602eb435c63b2043c17424b49f907d4e6bfffed5a7bf0baab9063ed051fd735cad070b35dd3d91b52e30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303abb1e0131ad657130b85f0885dee19fb16f872f2e10caf6a68f592e742ab5e727d12859fe08db0aa22f936b8b6fa9b4023100963be27b187fd88ac9942acc46ec383a66ca4b396886350b2557c60805d13c2f2728b352d72e271bb9ba43c761921a0b0302047c435bb50066306402300763ce6643ef57da77befc8c3e691a9ddfa91e0edb9456ff70373c053495a47ed684d44802e23490276fde78bfa3b7c80230457b02e045cf26f72a8855aefb3a4923d8a13223f17b1bdbbce52cb4c02cb8422caff27da06d6315d8483995a574e3e40302047c435bb5006730650230009a1faad067de8e23f2fd3b24dc25694b99f090d0f7aaa03f3391daa589912c164016b3d8230bc38256105076ddaaf5023100870d26e7db057250c63ef34d3da012d62f9e4f15116625d1b2e49d8e4e89f19a50729dbec04a1efd03cbb28163dc36870302047c435bb5006830660231008d34cdc3125ec9a46d14dae604583f2a12077c3dab8b3c6d21257d9451df025f9845919eda85f1c918beec25b3de3fb00231009187cccc4bc42b5592a50d1e2266ea39d23736f57655fb77f22381d338c3a3a9a403a2a3da8a1e584255b5f62cfb71a70302047c435bb500663064023008cb5f4bc380988c99da5599daa4dcb3b9878d041cd55a3fbcf541bccca48583ff0837ad03df50c467cd14253c049659023073b40838d73205532111c159c8798d346d255f41067cc052526394647b8fb5e4bf7d141817b53431d9aa1a0feeecdca10302047c435bb500683066023100af44e97050b807d42328ca6d835a5c00857e9a4aab32a68b2fbf2ea2cb4b7257a14bcf5010b1efc6d455798185afc2ff023100edbeeb17d2b35eb0cd3e33b944ba36044c4fb715bc5f84ce2b149a9e57071c62e74d9dd468151524639ef3d30188e4f20302047c435bb50068306602310083341cb3c3ec138aac5f057384a0cc7fb0f94354dcf31d4d05a4269e9cb8720193504c1ef325fb806d512e2ccb559d50023100a2aa2fa1b7b15d9ca4f06f795c49d1d5007aee8fcd8f7c4c4c450c16e2fab8bafd16c4af3810c70824b27ea1db9c46910302047c435bb500683066023100b17a83dfdd31bcd19584c1d6e9be48c8524cd1b75369ef7e7bae78195780e0b4a9b6fe54ccc325773dbf25634fb2f9c8023100df234d120f53012145fcfa21d9978a92a54a5fd6ad24b8af0eb4c114ab44ef0becb8b067ec41c262e8a7fcc9718396820302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230676b25fa77f9a4879a2748b2616194d5dc86d850645f954c54be592d9606e68b29056b5274aeb213dc8c933fc0a6bd720230115f61eacf18a8eff73f81c6642c9e661b1087eef8883d1e4ef7633b7920526257e2394fa7ee147e3ff45a8cd972362a0302047c435bb500673065023100c0bde088930cd5c228bf65020ef225ec6c70b3c6f4779a47fa728d25473e55e42db80d1b291e0fb06fc375200a2b88ec02302ffe8813b17ed30941e5ca88acde05a6adecf455bc0e618d2d4a85712a0af5a9d60db95d7cd05420de05e0b90c615d630302047c435bb5006730650231009e6a49c58dfaa6442129d04cf1861940a305a676075b3795cdaa0bef18e4c7967b029e1bdd1270568b98f2e04b131a7002304b0296f71fbe2d874b1e35df6a2fdb5cc38d09a008f1ba8a237327a51bb9f18a048c153d4585bf06a2eea3fdea1649240302047c435bb500673065023039d6338acbe49f22513e72fe03a04009ffd0f132c8c50c77557651fe8ce1b62d12ffa47e10c3711cb3fed05333b468e502310083a6a365ff735e42825fa823838658c469e5f608c08f4f99942de2ebef7b78bde9d107b70f2587824b74c86dcd27fb4e0302047c435bb500673065023100e28e06a8d370b63f7cfd65914b4c041e040df50eb670ca0477600d456f6d9d6f6376cb1c4cf3f4976862e949559c506f023018b579ba19e313ae9c7e1a7037df00944e8280b38db8e58bbb0dfc27f3a87c151e3dd606cd33ec0e6069cbc10220ab000302047c435bb500683066023100b20ad270f79b16f1254d4dd849b6d598f62a8da482227b871820e9b2417adc98f99a670625aa51f0eada548ed6c0dc37023100d8567b5047b77a921e2185c30e2348e9129730841dec7885865d2e42425338e2873c4a35995c37c74c44c870cddd52800302047c435bb50067306502301bcb7c1714ea399046a6a7d9333ebac6bdf9e8b36342163bb7a2a4349fdab079c885a4ffe8b99929df083d632cda2259023100adcf82d9047dd4c9f76de8e4b69a07192b9e9bea46c83ed83fa64ffd0a1da773c981f81736c402460399ff110bc30e830302047c435bb500673065023100bfbb7ae268b9dd1195e6c9764930413e921f1b6e059201fc556e1e3b9320b70d7968dffc4c0efa39f97dd59ee60fc88602306e0d6e04cdea4223d575db5cffc2d167c31011fa29fea999ab2ce7a53dd1ce42ed572de3ea83c8da8ff701e7137309fd0302047c435bb500663064023020b69560da8c9580b9a5241427aaa697ab4b84c33df02a8fd0917259276495e8ee4285d00c4cb986af79e18f867c776902300b49d0a7de83a59ffabe3f20a2b21df1b9b2ba6d70994f8e2b150ec819f7b18b2278d9e90d6658a974ba84196011d5fb0302047c435bb500673065023100ada8f5a474b29ba331261a1c6a4a8fbffb26379c5632a3370bbaa24d81f28aae95380714cd37b4b7e7553986062bdada023036e9766a1089e7ab8244c1f1e21d33816ab1a78c065f4e21107a57976341a2dc94d3415703e39d66a6aab7d5e046ff0c0302047c435bb500683066023100cacf897f213c815435f114422014abf01a6506a2bac92c7877dea42ac0e5dc9accb736b89e7517399bca2da1588575a6023100a7e2b1d4716e4b88a859beb3de759ed1419ab85221c6e7e381479a10bbbc033daff55e88d86504af10459c40db761d7c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307dadd03359b63c3b620834b440c8a754716978111505893e61133beb4e0c1fc06f3b11725047331aa236b9c6f598bfda023100bbbfd6496102a2bcfcc92f48ff7a788e3f95cfff67d2bf2321ccd1b3134f672e7d9e6ac7d748f6b05e326c36aba78a6f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d54dff38eaff2bfdc4832dc93f9e052bde631cc83c42710c4e454b6c1e0d80dd22733fa0521ad84314489364f838f182023100b3da8e501bb917fa192619d9dc6d8342c91b85eb2ee779e4ab4521dc8e63d2ad9f536168082ab0dc81c156c99911fb8a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d7728157c0e87c2e83451d45a26ab04ad083a6d2ee9969437b8ddbe6fa86e650bca6f77b11f5c4a05fe71bab35f0e1fe0230178954b928d894737ea7ebfb99d21a2a56769192c02db69bfea7d131116fde0069f32113a1a52b59afdebf9ab5173abb0302047c435bb500683066023100df99c4423e4530748bdac0f917c7e60442ddeda45e5ac6d8df24b7c86f553b8ddfce6c2959acb3d5e3155bcff71ef00c023100cace48e1fc68dd1f2023d964feabd19aec0115179d24dfec480e1efdac193eca6a5d346331e7db04d136dd5c3af5fd570302047c435bb500663064023063bc6f70ee798c8f6d69f152e6497268e47f92f54d3f25446893feac2406356f0a2844aadb48a09fd5c2f720abfdaaa5023042f323ca27fa614d974fe59230814b34cd342ec187f6f15753760095813d0f7f28d2e5430bb2d6a2db3a60266c7073060302047c435bb5006630640230146f0e7aff8caab978ba9efec75edcd2a30e3cff6692f7e00cc024166e83873089b2d0781a64319c12a92f78095a8383023010cf6d844ee6913710f8c728f720504226db06637b9d72e9a9e37622d35c03b81ed946b11691b228fba570a77f73a0c80302047c435bb500663064023038722a590ccefd4bae2b688f70520ec839fc899154991898e222c2a933313aa057cc74ffe24c3635d3a84aa4a0a9eb0a023041c3130d5868a85e527cbf938544756c65938434c2398f89388bab10cdf08673c5aa2fa3569202350cea6b557d5776f90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e0efe84b9e0925294b5ad8afebf744120b4948a081901b0874d7a31ea631dc883fccf4c205e7bb8bd2ebb25da011621b023100f5d2d0bdfb0e1c8491b648b20c6fc4ee4292ee66e317fcfe6b55fde9fbee7a26e2fd50b83c264f559b9603c36edb17950302047c435bb5006830660231009058141ef2b025d5ac060523df356972f17ea4b249d8dab13c125cbf54226faefbdcb7083528a70ba1ea077fecba4034023100fce3b37a7c7bd7ff7f458ccb4d81509f227e34f8d7b482a31ab6e1f2898857781a1ada3d8b84f923ed695b35e1a05d520302047c435bb500673065023043be9f9233c9a83208e537c0bdcd74ee2498f9abbeb1b6bda6273a0ff6f4640361eac578b60bb08cd89abf2c3ea5d316023100e5f2854cfc8b332d98fa063e967d763f2ab34f45ee7c20193b74177bd816a38ed81c4b10331ffb2831b5260b490528770302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302885bf0ecec24ebcef0f8b671b1365007806a6981a62d4d9912aec4267545e38ee7ce089183e8bcfe65a2c2c8f3b56f402310085f5b78c6de4d94da6f9d39eed5900b0cd7454fc90164ac7a96fc3b8b663e5757622affbb33e6f70c568d4536b68f6840302047c435bb500683066023100c269d69d782c391c1fd09b575af9e91855ba32dbe309437a3d19eab7f6950f11cba2104ea6418a4b6647e25cbdc41e76023100b5ea762300dd4f6212ab540d3ddddd8e4d1d3e25fa893f3e3cc32e4d1d93195c9d25bf277e39fe7cd516b8c386a6d1cc0302047c435bb50067306502303234d1aeecb1751efea37cbcbb373cc2f5fc20444f382134502623e9c564d367be8512f171c6fe923566b2a4c0999ea1023100c386a8ad0e8df0c39eb0476b0cc78d6dcc8687aa523ea0211929be94b97bc6c1165f8541fc501de900a022a27d7ac8630302047c435bb50067306502307ed044c69bf5465145c861289ee7e79545a55de1430af5a178fbeff151ab1a4a15332a1e5a6b67cfdc3abd591101c3020231009c0a5b5cd0088c7212774907c4aa4c57f1349a81e9b51de608fdac47fd7eca10f7233072646d902af1922084187f11c30302047c435bb50066306402305234d37b787cf2710ff085e3d724eb348f2f51f026f5f94184866eee2978003c8e0beaeec534cf08720e405ce7746bcc0230233e2e3aa38137fc73d7892b999489639d63334305570e27fc66f296614fc2b854f9ca78382dc489eb36beb2d2418a6b0302047c435bb5006830660231009e91be9210a8cb8f4b00f19acbcf5dc958518e8c840f3d502cbadfae5c84e0dc382a4a52777666641cb61b72d2daf900023100f86d84ffcd7155c6f39e424da3441af2f08cb12afc044219013202405d84cf861f280775f1091b9d5a28066c20d284450302047c435bb5006730650230519fe0ccaf6d8f028a042e73746743b5a54faba86beb2e231c735822addb1934a36afd86ac706cb981242c4f7e4845e50231008feb30696f4d111713dee0d16ea88aceade969afb5cc2c9c8e261b5ee6b6143320a76cbe958db8bd2bd41a34ecf80f160302047c435bb500673065023100f44f00d790e7b8c430f4227faf9f2b492284dddc3dc3b7075a850f23e763f1f02762e3e1e6197557721dab5ecac237df02303a6696b33a7a6631b6f19ae73cc83617ad3ff26dea635c3ef52ee0755b6025e475ace2a4bd43e94cd3be4e17b275f7ec0302047c435bb500683066023100d8138dd7b922a1959677557041057a1659985274ee73ef49a42d794e72dbb206491bfc642544941507da8016c6bf89c0023100ed975f4e775c9c69b1d553e993c99c38632efcec3ddefc517578c5478b74e0b2f3230d673befe0c46171cd2b482ec3790302047c435bb50066306402304ff7d2b23a78414f9b9f26bcc9fe69e902b720ff323f5bbb4765f9b767eb5864c2e41cb01a14289d913f14c854449cfb023015422b524cf6492ece0ccaf628bfbcc15ebd115f2e0d54dc5cafe88df566622d50fbee1306d1488ceb1b023f9cb3f6360302047c435bb5006630640230209b7a7bd624afc102e29e091fffa6c1b0062185d3a2eedd9760f381d9e26c76d8b7ca472d33d6af130f7eb8cbe45971023057e8d2b4dd14bdb47c3e29b7fb786e18aa6e771bf85d668a7cc263106c48875175dad0fa7980452ca2afc0cb95a6c5a80302047c435bb500673065023100b7880d03bc60f4b6d396f4fef7290dab2d22f04ccc9ef25439c10e1d5cb1f6b8a90e49abe3f869926102e51c3bc8437e02302440ed1566bd587897e2e53391d60d7a3194c7d22e5791c8439b19b85ec995a8e0e939a7278899ddaef154ee3be4547d0302047c435bb50066306402305dcd0f6c270ffa7aa3fe5336937dd8d276b873a8abaf75e8234cbe01bb69c507a62002e21993b477aa2c665d789d38050230369b72f3f4e1c5148f108f3890ee812c6266151d39f042860d49577e274461ca022d8b2e02c092a2051bbd01a3fec3b80302047c435bb50066306402305778468a713229aeaac1eb7f460a8ccfa368ee7b39433bb11912aba1c91fd6c8e46f463e41a74a2a07d9c4c129e7ac7f02306846fca8c3041559ab0a51704074361cf42779246409a61cd4d50c8496cb020f0add8858efc79a1ef0707d32f2b42d5a0302047c435bb50066306402300cd43b1385de44dd9457e522dc4e45ec9c3f68bf238c4204b657c1a9db2defa7ab8ea4387bdb8bed30b0da7aeedadcf702302c61f13084b7e94a9578f26c3472d586a0c7a9522d56ef20db9ffa4c67524694b5f1b9676852f5c6438fa63c3ec609d70302047c435bb500683066023100cb175d9f9c7a90bd938a0e2b1c0878ae91d594de368d2abce574958d233005318f4c2ef7ef64ce0ac675b88d9931ff6d023100ecaa8ff69896237fef85807e35bd2f5e3ed5626d6266ac869fa6f8e6c5bb5884df2541438e4cecfbbd944a36e40566940302047c435bb500663064023038fd3edd5e42d14a74ff626ac67675d3b39dcdc7542a1ecfb0e3c00c102a024d01724e61716f9ac6171ca882f5041c4102305919f9a42cb5789ff8b0ceaa254a755e5dc4f67fccd0755df697b48e949915ee87cfd3e2c5740a4cde7eb166c4e4c2ca0302047c435bb50067306502301f0ba6671a1144cbc09f7cecd2b59d8f644477b6a04d4fc16c3c60036f408943cc7d8151efcbb256dc37408bbd61148302310082e72a7bece19733c887fe52e81037c3c88634db5ff2e75ea2bd43315753878897791e4d6111e19655474a7e661136fc0302047c435bb50067306502302882fe13ff18c4959a66556e50d8f8032d6974e3954fe23abd31bb5283db761cc5f4ec3b246d07f03af58446ee3c5c64023100c11141d0a2bd2eb3de526492f857db1424bb13b5a220c7b9122430251f513b6da7c101fef75a97817f1a7a9c43bb21e10302047c435bb500673065023100c0946a295d46c724c8caf667fe36ab8c48ce7151420fbfe9bc4141fced8dd151c9608d0f8d348edaec3d03309a3a4fb3023029ee8660cb5bd3cff7db881306ee482c2f0992354ad20812e88900f66ec9e79eb43826cd3e7257b6aaa22d5e92647b060302047c435bb500683066023100d62e5fb324dcc6a450bf710fadc3638d761c0dfc30b7aaf428e06680d61a365adabb4a77233c356c5c968bcf2ca8d2b3023100c19d0f65f7c9661b587d9db85fbc81530e5ed2ec45d341de1fca657909fc04abc43f755882d4b3ce30b684233dac65c40302047c435bb500663064023029e4fc11cf7b2f17c18ae732ecc9cb898a375e1039d212cd6618de82323393f1b103f02d03dc6e10da1a8100ee96b8d102307e93631f95aca987b9943786d42c18e1587ab6831c4e068c5af3a2f47afa5d5c4709b4519dd56e53ee637f811d9f58670302047c435bb50066306402305f234205e0326a91b1aaf662b8bd1a03336f5803195ab17c5ebad66a9dc1ddca3c14004e197da3478ae8ba936c933ff402303db0f959ab1c89334f391ac7983514202a7f952978f7bc6efc6c20fdcd2ae25270997907c6f15559778d38896e1e0ee10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023038444975fb0afb256b6b08579190fd167e4f82547b47a96507dd387a3f8c400afed4515df7fad3459b439381e55cf66702310094b065f6d5d24e2b783a503ae007eed76fcc68564dac14f3ca2b6094eac1149b13480b5ea4eb43c4b387fc06342cf3210302047c435bb50066306402300deefd02b7f2254d6c85bc8ebb39ed2a70da5a143afd2118e72951841b292596428156f8814924632b1d39822de3203402305ab04094eac12799b5d8b483f48870785f07b57446baef94515efc1c08ed4dfb147c0554e286582a6363f217124773280302047c435bb5006630640230398671cda2292c42520a97ae159e2d8ad9bd302cfaf3c220c306382e3332f73a57c0d0faa8248ad44010b7433f2244b4023047f0320202460b487f1e381e6ca15e7f4616e2d50ff09dffa03dc87c2b93da8008e932f3b3b26c59a06a79f6a6f281130302047c435bb5006730650231008a8bae538db0d9ec8d8981542ffa4c4989e354b1d5f1472dc297dd0922df0e5b2f4b838b3afe7e69e89155df624a504d02300cb46c2c47d54f4567a31dba658bebd35d3d2f4ea759917966c423a0eac68a9a6a4771438ea4864624f701f5e1bf4f610302047c435bb50067306502310099ce5943ee7010d39a4a8f0bcb28a3b999371712b74ff73e98ef8b3066146e9831903a0db35a958aa5225f314d6bafb002304899c6ae0ce73387d9bb3c6ed0a3781404eb044d570b951ae6370a15e6ba4ed8da3c3efa99ddaef6877e1e63d87712dd0302047c435bb50066306402303e8663ec1f1524c6734f87e6b21dd511591d8003fe599ca7b0ad3121c534ea409a4232ec17e6a02516476d9a8f81bdde02307a87fd164f46787f07bbb34a50212733a34cb23836162787db084d99e6b015c31e7e31f4723d53b870478869ad207fb10302047c435bb500683066023100b9829bfafaf70c904660dae3a536ba0cbfb6855e107cb422037ab290974fb7a3a92f2c5262801af8d182d1a9cd6c2f85023100f41198149f2930a689b51b9da11b37e2d3d07f9e0347baa3017f74098ac3d871296524d20cdbd440be4418dea261d9610302047c435bb500673065023100e37c256e8aca828285a6af2df02b1f2cd99e254b5395940a841ee0f18dfd7d1ca9eaed0f438187f0099bcdf0ad0e6a0f023021700b88227cfd7d2af3beadbe3d13c4bc0e6ee04a78895a9efa20b0a14eefc9550f85a35b2a88525e497547d8197cff0302047c435bb50066306402304c9172d8d9ca11f81c57b72b2333e18a21c987857abf06c93dd83b66627824add777d9b51c0ad6e8fea769fa84f5c2af023023970d3079473713630daee6514d892afe3ab297436041d9463e027ffcc1e1676b3379da90fffeba986dfc43722efe320302047c435bb500683066023100fd9c04508d911e9fb3424a14bbab3ac3d7ced096b407d2ef8b0e266762dcab74c10b56790f4cd08d973349474baa5fc20231009099f14ea0f60743a0f67e0399e4ee889e1de0c9184abb4db2b2b1fb11473ca0658b0d3d973ff0227c3e46d07a1bab070302047c435bb50066306402301762ee98cdcad260be22b9413964189597a7b220fb66efcd3f456a93d0cbb74d9eada852aa6e81e82b88d5485dc0a729023014ff99518e007a1200890f83817844f2d081a89ce19c701296d17251b5a42666c9117e886e6bcac95bc52039213e30890302047c435bb500673065023100f6aeb94168210a5273577f247cb754d39fde39851640837fdf199b00f880590342a1339bdc00d2a2e8526b799be7bee702307b41a2dd3d05d3fdd82facdcf2c943abba4f3f8a8d8dc697ae9f21a719d08d672f28e3734df2c222c2ae1c9d0756cfb80302047c435bb500673065023100b55d6afaf2f1e838ca5b1be8400b00b12dbd3cfc5e30934211d400336c6c95b9aa54c8f79bc6f83e2f2c92d4a8f629400230160ba82ecf22fc17c899244b0fc57b5f6ed92b632506d3766b90b3253f0643e10715b7ff7d91fd4e201b02783bb106370302047c435bb50066306402305258f424248fecb720169340101ab6cbcd07fca028577dc78fa55eca1d9aa40fff4ce0c24b58d9d7fa1306edd854a23f023024b7090af013d791743c8975dfe67e4eb856beb063d6c0ba1d79c452d3baf1afe6adf17716229154718db1c2440c91920302047c435bb50067306502306eeee292dc837f1210c939b5bd33c59f5219b927335c72be8d4a0289e3ba2c03a3b4db21aa60ebbc3d739aeb192b426c023100b698eb23373ed2ae5fb594ec07009c8356a8a79abe963e83d5d10680955acaff17097afde7085a882de3b970aa10ab350302047c435bb500673065023100f0b3871b8aee205c7cd720ce2dfeac1c89d751e301d076663cc328611f4ce787d573365ea99469826c92cf45251c1d920230271632e350284d36d327de8e3df1403fb32ed50b6819c8f86334232f0b4cde271dd07d5346ee8f0c03e7ca67394a2abc0302047c435bb5006730650230206aa67a4c9fc9e713aedf20c21e9ea1c6b1edd3c85b9583100cc92ba95873fe3f2df620b8db54800195a471da86d8ae023100ddb482686bfe4c0f7af0fb93d2179e55f4f2bcd991a0d1deb6ccfd39a6e2902ca03b73c4163cc1bd13c18537c069aad50302047c435bb5006730650230109ff4b89bb6894213a94bd70892ee268974de5266c57430193743d0ff15cfbc496951b177628dea594153fe429c10d0023100f042d7c27408de82260613b29f0eacd047d4480a00c878855d40d27f662540666d8fd5b52d29271ed5569461843d518a0302047c435bb500673065023071b4ed8e20b0105a89b00fdf75ea94e3c79ddc4dccfb62675fe9a219971d221caea32024c254878ea1094c27b8d276ad023100886d9f26b8377b04ced327a29d4d07c52374fea21394cdc843ef71f951daf63601fbe4d739d0dc60968f56630a074bd70302047c435bb500683066023100bfcee8d6f39e5ccaed3031ef7f5b8e0a47bc9d5d2bdbc0bf12526ea7c1a73e0a42af8a6ba7012140568f022aa09531f102310094da5a1c41cf6b05b9e9cb0510e0b21d75242fdea98e390bf35b80a0a3b2124a41917c687f601693999939420d777c9c0302047c435bb500683066023100e95e7b6a331def120a8e63946c3ff75ed1d447f281072abf2a62498730477a8adda8354087a5816832d14618a1a18306023100e328daa8f727e89c3ed84baff5b616d6bede64a2ca2fba1288d180cd8f1c55cc6b6c05d90f91c9500e34756ce2b966750302047c435bb50066306402301e64a6631a8db624a271c403161cce1c3ecc65214eacb654a4d4c6bf6c5846883e8266252a0cb7f7d3dc569840a818fd0230441d9242fa88094e191c99b0e401108d6598eecad0b1b43f3b968a3f07253833bf8719faf4c46326562d2129a25fbe370302047c435bb500663064023050ed5c109c3fd908a5e6dda6e4ee88afa16df9ea7b7db5c5a8b636321347e183672add2c088a9d3584c559d172c3cd19023015d11497c2330d80067372840d63d19dc6e8828a51772017022a9065a29ca367da59f2773faa0f2afb352cdbf34a5bd70302047c435bb50067306502310099cf2fe6ac7d4e5c5775ccb5a84bb932dbfe5bcf033df67b244a27d4f9cc9f035d89d3e21b4adf0a922a77a0d0696b72023053197249a607cff4670e16dcb817201243ed47703daf5cdbf5e489b3f33e873eb0341f9287099817dc21d89e954ad4360302047c435bb50066306402304cbdc2e9fe8ce7b8d248fe6e995c2a11da2753a8ebf8558b35fe329cdb5c87e8ec6aa78e567a8272770ffce7e95785fb0230514c505bcf8ba2909ac21766774a6bd2051366ea23aaccdc3b8cbaf428e540e253a5aa0cea3ddbc2af848061392399f20302047c435bb50066306402306e5f2d8b623e1dc90a962efdfc39b252225d157aa244ffdee1e48259ad322e9244fd0f60bf6a1a42fe7e05f2f8672c6d02307c1a069eac52f8806acc36cd9c87b028fe6de584ec30fa5fef20b131bc46b2646bbcaf6c17e3f249e59891322b835af20302047c435bb50066306402300dbbd87a1b287e588658dfd42679e86210d51abad7fcc6325431b9be1ae2f5088ffeef071802f68fda63d83dd11193ac02305b161a22f403ac6108c1278f68658dcbe72e326506c6f8e9848821759294b77f8493e7addb2f4963a4a5d4d2c3c8e58b0302047c435bb5006630640230434b5dd085fd45d55518619dd7e14a84033512f38bb82dd15d596d4b8321f3562ce3d310787f8da38c8be518600ea67c02306fc6259188874eaf365bf26b050e9338476baf7bd9918d3121a4adc2371f8f8f63599db6b1e053ab4681558e2744eb520302047c435bb5006730650231009271b1849a2ac1903e93463bdac7815d3678ac9b9194ecb00ae967086682ed0e993f3db36cf5c8858d401b56b28862d202307a4d5ae2efc29089c9066fe32285ec17e2b7b1ebf1d17a53c611e6783f9d9d97ee2643930b68abc2d5bf728a3ccae58a0302047c435bb5006630640230024fe66f8a55802e1036a11a1d8e6622a645f0e9c39ec612ce11195f648791460f62a20814a2cfa9dd3638f55e8bc8e9023057e7e745ea0ab228ca223b9617f73fa2fadf62c3fbcb2066b26830281a69938ebe316fef990e4e3f9389af02f03d50ca0302047c435bb5006730650230782e40b26a5721dab06d5618272453b4f7389eeb34b44d8c059a75c0ac24dc2b40928e5f4248537cf8df7c83f68f9d54023100f9c92c8fbe6bafdbd9b30e40c6681bf7fa4f1f96116d743c4a5a3a0154783eab0d001349d47c8dd7691572c6afcd9ff20302047c435bb500673065023100f92f879c99af0eeec8e5c7a3c1cdaad257bdfcb9c3c843beeaf8fb4e0dd607c16aa6c7a032900e2be43a1aae949b18cf023009813b29b4fd2a57f4e08cb6a4bc4e9280d718d9dc64b044148b699efc98a03de0c949338d079490ce0f61594f4898dc0302047c435bb5006630640230438a4b7f4470a5d4c1be6a10c0bb9f49ee009abd2a6b9a338680d74f6872f4e01cb54081fc28ec969adbcbfe9943c94302307889f6b83f1d064696fa26f36a9b6c71a43432fab15ed0d1e55aee4b57a4e1ddb8012d4b1367be02801b7cf3d68fdd780302047c435bb500683066023100c34182d4a85fe641859cc2b8ec2a6c81202c1800329cf2e22a4f3b0c956488d32924e999ba47381cdeb8a5104d8b2709023100ae6852f76d6c69b64979fd63df05a09278c1e939a6b61811d2cc4279a768c02282a9bae0bcc9cbc8dee7203afa355bff0302047c435bb5006730650230583c090bee3b65f8c8e4c3bf17742e35a5e9b12d933b9ae73f566c645410400204d10897d0d3a5324f01a0b24c93be44023100d1f9cdf31754385dd25d360785a43162b4df5e5f8857e119d183e6368a3d21a92965e4533f1375a268f15c33d9ded92c0302047c435bb500683066023100f923d62598850bbc17b8a9a8127b4a8558e6f394f861107172e052fb7aef6337565563ea275d984f8a68758f4d0e1aac023100b309aac8aca0888f234e57552e364616c8e17c903b18c2a0a4167354bbadf9c559023b1a4c924a018a16c4872b4d311f0302047c435bb500673065023100fa33e24e94257817393866cd5c63b8fc6ed4394c6182287ba0694d912c4c1008e22629a798ccd65b34ef06042c0dc7b002306cbe5e060c373847516b2feaf575bbbc24754e3c410ebb613cb7271027f76b1143704fcb210adbc3995d81d2d12a87eb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023059b5cb85eeb6e8acd81a679e607dafe11f9109c52f5082d2d722c4614a18aa660f77ca03d5766a16426633859103a4db023100851c9a2b9586ecae67110dd422631f1772e0870c25285f3978e1d3ee80581762959912a69d62f21f170372134fbd63060302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230389520ee42db50d225359c1b064fb069389d73a92dc22752ae05b38279b721efb2894526561e7424ff0a2fd748500088023100ca98dadea590f041743c1acbef29ff88ddb09c17a5fc9f55b645496a0272c53e9e15a411733fde0949a97b8f053a91a50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310091d932d1edf4f98dbe1abfc19eb61dee6f34164937384023aca70427039b3e6863fdb37d1dd7573b141fc1d366a92af4023100d015f256db0bb41e5fe12285b6261025cb208f84eacbe8c08949df61f47894baa3ecd9ddb4cf38e6bbad280885e3c09c0302047c435bb50066306402307985a51878c5560227653f6c5c698042f8bcf8386ea24720395bd0eab598b90c690bf8ba20e52cd2b75adf80b8db86ad02305bf441fa2fe9b74fd86f972c742bb84ba0f224adce79bee6ecfe25b6c29ab21b6dec03bd3ea98b1dc9bb97949999bfee0302047c435bb500683066023100bced174158b3ef36249fef8a69a1f9289d986a4d54e70dfa52394bdcd5a9fd01c4055a7294eaad32d9b00799868b4d88023100d86da3ddac693cb7b4ebf5491edf2478c8357c8e5f7208ae4dc093cfaaf2e43613e193888187894d252a9de12f23177e0302047c435bb50067306502301afb8f6d91e8266173095af3ac4dc65da038facbbe8766fc5c5158589883b38bbb705bf7f0d17d5c7596292d3172df35023100b4399e14b21c071d5fcf1a2101555441f54c603c719a8a9ce21b84eb83309d817066717882e486d536debf62f8c7d5480302047c435bb5006730650231008fafacd4f7243a3034c254a3c588cceb4398674b6875374381e806715be9fe096cad7a09c306f3dbb15145057d4192f602303f9427290dda6ae9a9d593d16e19997c7faaca1b2d3dc38d0b57efdef439a401f68b473dbb8e7c6d54fe8f17be3204260302047c435bb500673065023100ce174318a01ad61576e820eb01f9797f405aca942ef3369ea97d9a88ad5a528abb3ae6e76a8ba71b9d4ffe014ac7f15a023067f5f8207d6bf82821c4da60c47665d0bdb12d09abe555a928722dca4770c7af09e4e00a9395571c7f0e21507349f04f0302047c435bb500683066023100f49fca9751e770a3f98dfb0a4c20e65789d5c90b689f2d0fa9f5c8cb5be6ab4ff143593786772b73a6d2f66bf72a9e0d023100de5816f92e7ed5a61e7532c34b497d7c1b1875af4f433e58a6a12f28b5ddcaa4560b6c84ed4e50d5bbeb0876d9337bc90302047c435bb500683066023100d856685ccb4d8de8fa56b23f52da61bf37f57077f33b2f3e934ee82f7c37b91e54ab5a8f19edd20ad51daf3b0c368051023100d13a9f2a84fb42d5969ea95690f31297eab5c89d93c83173d50e851ded478d85eb9eee77d8b14d6f58b7c83e9fe0380b0302047c435bb500673065023100ab4105bad2787357b6b0de129892ca368c9b6f0ed62d9bf79809b3aba3d197f5c8de393eb6d49dd3cd3839e7dc0b1ed902303ef90111290e132d4f3490a3afc2b03713663280a80d35a8c3d8cf247566c75a72d74fd8e007097623334e8aa91e157d0302047c435bb500673065023100eea23677c4bcb20865ecd2af9e88de0c4e96c50e8c415f8e6bc30f4e21421d790a73e3edb45a66aa0a40b2436a08394e023018c3ebac8df8ca5fa1b1851fd7549d695b1073eb8993af5d452793286604ec5776f4e9b77b774cf1880ae6f6309daef40302047c435bb500673065023100fa9e0fa49030ae155c1330bdf02d366c936faffcb98ed0ebfaa03645759fdf648ab4c0771f5a08afbba77ebf69f447d702302acba23cb69f184ee97b21d3a1eb6b943fe409ecdfb7ad1dc8fa6cd58b1b62ab77a13f2d7c5fbbf9d8bf1d4643e829160302047c435bb500663064023036daf5d3a074fb20e974cef789dcd37519adcabac37d94c66e4a35c7d7dccd8ba5c69a9a01e9155ef600efd4c6ca0fb702307fafcaf70fa1690d4952f7184d0646a559957fe0b1ff69bb6b8500650fbb6317dabaff5eb8b74cd55c035bd9c954ca3d0302047c435bb50067306502307d0c39dbed02884f2e810c5b984a1f37285d3a686cc96150324196dbc047975ebb55150a9392f9b1794e226ca36e9bc7023100c927da88c0e1c1506006febed0634779803c3d3ee894785cc59ac3d60cc2102543a89945fe83876483846b77d6b9f3de0302047c435bb500683066023100bed5ed6257a045d632e8d57372d23b29070bb1747eefe5951204c4f7f8d9a78ce4239b696fd01900e0dc3f644d3795ab02310099de30d5eeda857fe35ae0ae12bbd30d03ae2427db501a67bbb8fa085bd76ece009144f0788797fd0cfbf79eaf71b4fa0302047c435bb50066306402307ecfcd02c6f6e2aa46a211094d1724810cf07180b0cde3a51bafb38d87c9ed63c57a8cf33683e9e8f0632d9e9bad8352023042be0898af408777cbd92606f800657c2762a6ff963fc3a4db5d9e4d0a6e89d05178fc63386a9fafca976972f83a249c0302047c435bb50066306402305cdac550fa0f834cadbfba7b132ba59b76588d2ebcf7231920cc5e512a6aa6929d8e15293ab849b0f8a5fe51ca3f6334023018662fbd179ec2b0ebe3317964c3d7ec43856f1945c55b99314a9adb7e3b1fd9e0c95a1c3b3c50f4d6dc48e6df86f56a0302047c435bb50066306402300df37bb1f86862382b72842e16140cb148a4b3efe16840a666675f1c0416b2ca8900d6ad4fdd3745a1e7cae596edf6df023025fae5382bf77fb183212c43d31cc0bee3c04d81d7300a953fb177eba0f0664c12474bb5632309ae7c63de27a9a6ed3d0302047c435bb50066306402306f0059210c7176405c6806535d78cf10302c4805be069b87dfb7fd83e2bd7c382ade2df87de373c6fa5e53643bafa0550230750026322ef4c9a2ac07a90f4e8fb13df965246ec00352f189af8f4619d91c811ecb640573934ed12ff769a9412246360302047c435bb500663064023019c32d6abc40ad2f474753189eac1070450ac184ef0507c71d33ab5e7a51714a4b16c938b36ef5de4bb5ab6835296459023026128b995edbee7c11dbc8cee0d28560be4c5a140f0d25b909922f6a30c123d9412407dabaca46ee10d71750d7e562710302047c435bb50066306402304135686b6e8c80f77bbbd474333c87ec2ca9e5358b7b5191bcbe9b6097eb2451c7ea6f6a4ef0a31f37dca2edfbce5cf602307df05da53480628418251f34e005107dda79db332134783e74b0790f705e9c50a266bba1eb7b1736814bfb797e399c220302047c435bb50066306402302a4347eacf3c9739b77e903bedfd6cbb4dce36f7598a0baab37ad90187cc0d8c3e535179c9975d27a89b30a2906b523302306a9fa6eeac1d7b87ddc2dcdc932fd7227de4096f664c6d4b38cdd037f58532cdbd910ad2fd45b8354a8f45f6eead6a250302047c435bb50066306402306b814e5340b06ad5ad24a65c78d4e1c5a00036973304431f3f5bafdf9cb27625d1be76c6bd84aca007ab1ff3d996e85a02303c43977a2c558b4625815868e3ac91684571060edfa3afc69a208b12d9da17aec1fa8f73f756f07f1ee705fc4945de9a0302047c435bb500683066023100e42d02bd2659d28f40a95d3231a7da75b54b2aa3adb83f2c0691a4497802749ca919750cb3f037186d9a265242162b13023100e9f53cd8b2643fb4fdedfff1cb565a754709ce91912760b8f1800e7958570c9fd73d29ff116569982a147e058132aabb0302047c435bb5006730650231009d600dcf70893521088312e6dcbfb51656aba3e3097afe1980f47cc9e6cf753e3daa7b196451016a5ef021389039f80902304687fb73b78d34f7ce7cb971e1d3012e818983481414822c3cd0602eb33d0d835f64e0ac21519d110f157ffc159e32d50302047c435bb50067306502305d6641d02f82e480d97015a5e5dc45303b8c6650c5b4f2800d9a8d406bbf92ee45ad7e4c0a32c65588f8f7260f75d738023100bb066b120c6af881b8d636858d6275cf931b7cc4cb5ba60cf75bcd449b2c92db26796dc691ba1b88c98911783abd519f0302047c435bb500683066023100a0ef0fe8be2f434c697ad78e0e354c586b0e00aa892c6035dc5670a913e3dd0ae3782b178d3839fc5aae91cfbcb004910231009e6bf67191c1d742c9f6af9435a8379514101a751c95a7b78d205aaabe2ff951645e07acdd02d1b275072292b20866140302047c435bb50067306502301f6d3c24e2a1dc62be3fec0f22e0f0cd030adc996bcd672f1a1a84cf8d0183e0918ef6e3ed31d9a0a65faffbd0aa7de7023100b97721f9dd82496ccc7f44a583d1a9883aa8fcb981f982e89c03aee8d9eef96411d9abc408a1d4847bd14b0c113b8ae30302047c435bb50066306402305abeaa99de3bd03977ede4b6e5f4f06a3128da9f12da582a3b7bb157bbc5e1c0ee1fa8f847ca4800ea1c23d7e34d469c023024eecb95f26599be876ace03fc0462cf943f28d724f7738c506c707d0e144b2ea417f8504d6f2b7480fa03d52b32be7f0302047c435bb500663064023045b837bbf88ed2c2d6d9a611fa1946a116ccffbd1d06af0a1b99d44cb122d98e10a8e190683d8c25ac1a46923aecca4802304fbfec38b70c54f15036eb533c59b4a17c24f0cc097cc24c6859a29b0d5d8e153dc4a5c4f0f1eacf7596b54bcc37a6190302047c435bb500683066023100fa379854bf92a3235759727e76f953a6631e2ba8e78fd53eae7c222337071b35746f8d0b9c04b278823a588e82be4d62023100a43f075f1494bbd0a258f264355563e1e1f4b1cf697c3b6fdb9c0b4512f190eb4d40b39c5bccc3b980031cda90a62f610302047c435bb50067306502302142dc554f3c6a4fa6e6439d8572297c0d9586d8c77467458f9e346687c020cd4e6c5ae9fe82cdb9d982f8bd16c98c7e023100a84a0ef7d1db78c34043bb006ea11b1a39e6aa088ec13e60c9e57cd0c9dff748c77ceb708aa73cb886ab1b613a081b390302047c435bb500673065023100ba10a33229c84eb72213eb414c812bc63005a9062375c35ded7beb117960b41e9c1c59bfa50d684bdd22d070bced086c023023bc808ce874e8e36f81c04532700215eb4d61b6330abeccca3d29419c9f4e87fcac7471cf3c042b8605becd2766d46b0302047c435bb500683066023100b52712c6c212e65192b2c3d414854d7ab45e42946a78d0c7c46b1a6443c9489908141b0c37aaccabbf3c8a990e3ff7f70231008a094e6886d2cc652debd4e709b95ee657ccce1385bb95a4f7640856e302dc268e4341d9272c77fb0bd2cd4b9a8037610302047c435bb5006830660231009b16b10c70e973216f47f707b5c7254b2bdc0caad209b2af9ef93864763c986ab4a506c1468b965cc0b81286ce99cc06023100d3de4dec03fdfc93af0a1200108b87bf11657be0c1764e5e2dedf5e0e9649d7214b761edaed722386e70d3dd69846c6f0302047c435bb50067306502302cc5c6a8a655667435e9f4a16923cc28e1abfef929265f4b54b96d57105d587f414bd7a67cc08db91e307898d75a3b8a023100bb9309e8a58ffa97b77600922657c1edb12b2ae9a4939aa8a9cac48cee42d200931e9d0d0f040fe9414a418d5b26bab30302047c435bb5006830660231008600bf8d0c4ebb486f9bb1a870f4b2c61be7c455fbbc159d79db5844cbef7eadca8388f4d7543e800ca82e4054362223023100827606453aa4e416bf5efff62cd3e934f75d35658baff3ed3fd90f7c2be1d6d620432e8106df22432103a2816aa04da90302047c435bb5006630640230428d385395e2f1733e9381d24e4ab37ecfc7fda12494d467d24b38a534c7da3dd61bdac8605dde7bbe716043ef29333302300f82702418dfc95d17218fc9d7a6bc7dc4e21dbf425bd147bc6ffa002320565a172de03b99a8ce3766e88c3819364a540302047c435bb5006730650230594ab145243573bf11b1137a001de6cfd738b6309029489d1f76057181ac5d80109bafff7f60e575fb5047fc29f8a36e023100ef04c5aa9ee7db9e443b356598871a53f59152024db2ce423fbadad4dec0f5489e91fd091e33bcb6d2896bb526cc8b810302047c435bb500683066023100d7117f4a919fe102e9e8e03891a287c847eb4b16844fe56f356b13f8e6aa4e4bfafcb710a61624fde439d0faba1b371102310090ee986b4740de20b6e1311d2c205bf310074d91ab3f78114d6054cc087703125251d528b3eed693fa5e6cc591f353690302047c435bb500683066023100988cfee0d59cd4931c2f01c01dae09e581a69a3800f696b6753d15c252e9208b3500a033f5933bdb9b1aa298297b8a52023100bc5f8ea9a15955243612b6975234376129513abab21f1a369829ae715fa13e91a1c747392889bb4380e58d1c8911b8f20302047c435bb50066306402305615150334c331f89eb4ce449d0095ee84d5c92a4d3a025aefa364553162b58e9ec92038e15199af7194cd64ae279902023039116689f53130ca21b8c17675bd2037d1ea76f8248da5db2401b506690f9887faca0d0668295fe9e9f534dfd6cebbf20302047c435bb50066306402306330ae8e04d4c767d8edf760ad9e5644d56d5f43cb633c56b6a2743ab9454e15f1767b106cabafc9e1000ccecfb47133023008160d3ed16e9935c17b0ca300f2c0b733c7cfbe8a7e2c053c16e845b4ef4064a7ad6497d9e823ac09031b84ad7005480302047c435bb500673065023061d46946c93fc424d65079b71b1938bb671433b9eb8f34fc60f42c4ca773c466e7191a1b5400c1ba5e3ec2d60cee288f023100f13fc0566f0568b8f82c4c19fea8b905c411643b51367f77962dddf9e2b95a58afc2dca67d636accc295768b177152ea0302047c435bb500673065023100ecf719b605bee559225b5c19b0cca50d54cadeb08ec6d28acc5d4f2536e9db03de7a739a6f5fd13f222a883473b0be020230279697deae5915aef534ab4591d2fcbba8430ba313e51e090c0abc7f43c7fd615499b1349a55712249473988c09b48b90302047c435bb500683066023100e3a680d4de36333ef8af3c9e4a2baf4060c77ccc5d06294cf853ac8face64eec6ff722cf6869ab2140e7f95b19394f39023100c597ccfc376dafe57dde036792f0efd07e6d944a8392de88da0b5fc6daaf99adc9ea56c97466a1a266159ccc240433290302047c435bb50066306402301f7311ba89be625862ae1a9c2845feab22f72572db64961bc37c1388eb7f52252a1d310f0db7f0f8abd2088f184beb7d02307fe589c69416678df2039c4190c4a59fa8e36b611984bb000b4f60ef0c58639030c5a5d5f3d14b0b1aabfabb18dea12f0302047c435bb500673065023100b6797d015dbe28535914d573f643b0e3f0a4c37364a20e419db9afca7a2cf0c628f7dd79f470ef21d33ea771f1be1c6a02303dd4a0ccb39d5134df38c2d1511c944340de1fa4b4dff92b8fd79153a70a355bf47253dcce5e82e9ae33a02f0e727c9c0302047c435bb500683066023100a72ba9d931dafb78880af9f86e3b8fa540b6ee8356926595cec29f78a9f7fe5a2d128c826872ff608815f144ec38c559023100b72aa4e7c9e36b71fc2656a5a44def0777e944dbb8ff46dec30544492cacbb14322e3fd4865316a960236df1ff01255b0302047c435bb5006630640230088fdfd6b7b456bc33509e02ba3f069b13003db7e246fd8294936ba5f9110d4efdd0bc5d5225dde25fee44571e875f8a0230509d623dbbbfd00ba385615a94372324fc4655fe2114f67d6107c7aad3bc2fdca5751e8c1860793d670a8cb2513abe200302047c435bb500683066023100fb259d3ed952db1ab2fee044939153c7d1457adf7affdf059e5f25f719de6c1f399ff330d60caaef0f3a02f79e0d4cfb023100eeddc14c81924cbd35bff02fd8703ac13f8299720f119e3fdbb99652ff42b952374da613ec127eaa9c46637a3e7709240302047c435bb500663064023074c7dcdbf0f45880308b5874954222503c6915a5180b3732ec82c88bfb04c3d67aecbfb85bd9c1970927ae2cba9dcae6023064b9db2567a6ebc47eafb160a9b7d7e75239c7a25409a9a6cc431157b7228d6e1c9deaeaab1163c1a86547876d98f2b40302047c435bb50066306402300efa2218a65dc47cef5ecd64923ca2f9596ab28513b0f57c25c5cafe897343c52a363828731d132aa964ad9701d563d40230783504650e31005972fcaf5976d0889bf5cc9233ef01205ceaa72748fa74141510d1e7987c143f68c6228d7c5ab966890302047c435bb50066306402304dc99ff03324af0da282356d548202c36e7d05cb24fad2b21d3ee918c9c97148672f8efff804041bfcbedcf2cb4975c8023003d3e1b82c63c41f781f7ea2b2904f360f940867ff53d311dce0c2fb0e66513cc97f89498ffbc4c0190da17795ddd3f50302047c435bb500663064023074aacbced8fb67de1f43a0d02d27c1aba7040d118297c72c1144c7f92af154326ab22d21750babf191f3df26344a7a1f023018661ff2a2459ac06adbbb48bdcd4e3a641df3ebeb3ecef9b0818bded08d49f549bb35b2ef84f643a5078e68b8c954450302047c435bb500673065023100861daa74ce115afdae5b01bf658e97b31fa84b1be7dc819497d63e9c6521b5c3397929dbd8b492eaae2777b222d9a9420230627dd05f2f01021fe5019759a13bf77b2a831357edf7d7b153e21756f74ad16246b4290275f326cbb49b3555429ec68f0302047c435bb50067306502310094a8fa5d9c009b6bf4d3b19f79bef0a10221aad8d8b83d03d489cb2ec96876fa71643c723b38c42caa03c59f26daf5c402300b89779932869d22796cee950ed7edfea106821bad7e64063a21bab39fe7fc2c05973fcb91f29576f18cd16a8e8fc95f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e5df3a913466feec1ccf0ea6f4e0c0b5d1227e7d9ba6b6833fddc7f1d44e710e6f458f488f93186ce45ba2196ad9935c023100921509e2f672b73682f6f5515e2c02d579e75c882bb43d092857d5d9047a2a311fde337d325410e36960b57650b2536e0302047c435bb50066306402302bca57f134c46bd626d9c591b64033c0f2e53df178f6b57b2da988db4ebaffe882ae000a5b92c950dc2bf2c9bafbe7a902303ffa5b2480be73f312297cb00773436ec1ec798de6294385400f047bf4bea41d8a9b7d80b4dd88cb47fcc4ade33a487c0302047c435bb500683066023100c9155b76eb91b82fc6f201cbb216eae83291fb4b794f7e5b44be66b7ddaf89a791f06c3abc3be0b69ee3c599be26a8a1023100c414a9111bb9c281002fe452f960bd25efb6acf59b16182eeac16f73765b9a16cb99546a61595dd27404458986c84ca10302047c435bb50066306402305603d7122086bb7cb2077902b856de3b4b5addf24b7e00f752a4ad902a47e65c022a5d1d54eb8d0cd2900045d73b98fd02302da2ac70db907171c3ca1c2d558556ea37a746766b98f7745470fe55250679ef48fa0125d2ca148416c82923352810770302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100eef8c228cce4b8d9e023352e6ce75175d05f7b0bbd3590cbafd73551f313be4be1456fc615df22bbb83433026b380b4b023100dd2ef92a207355df2417cb36d88c9fd88358c7ca71875fea6cc390c3404a46eab3a68262807108debec8c118e77d8dff0302047c435bb5006730650231009b7ede4937c4b2b480c23414ec9a759451eadcec049b66ac94e5262cf0c8f6f4ab363487b8821f18166064395a5a7f0402306fa3e570c69f95ff54b5a878544bd3b1f5d2e533d6eedfaeb846c5004d1b7646072a80e5de10fe18b9fcf24dee3da4ba0302047c435bb500663064023051970639b4d2a1ec9f8167fc776f2f7ecce98cfa3ed38ef2f825bcefe4df6df52fb838cd4c6c743bfabdbe0b5337957e02305ba53992407e749d26642e3e75250e01f2dcf0ff01e651bb1e3d20bce5f8c80717246639a47309899ddfa5f9abd4bd160302047c435bb500683066023100e0de2cbe06322ac012ab8e17b49efcacd323e29309c57be97cd97c55bee5f523a31002b0dbb28f850598ed5722b2d9dd023100dff6a019ef1e20e88cf6e9f8c499153e7839135ed133185968c9dc50724cba31944372c1ce86329f6063cd3f55adeb560302047c435bb500683066023100d278122245b6a9531254a570fca18c42634194c532d0ad430b350ccd7242c8e43d1bd85f794508951906c2db4080ae63023100887a1df82dbda89ed9af22118f762a21e87fb7905579d359cd771bc189f9adcfb267e7f19a3e44113726c384ba71c15e0302047c435bb50067306502307ec6eea14d42056cc5be72da1f763336218001fc523cb20a966205e61af59df3f18a0b8e75f392c58a39f75402ab81b2023100f2f7cd9a25bb1f3de8c65d25c0658595131cc3b0fed7bdd03c2df81f871c546ab9f357bf3192e5c40a063edb925be6bd0302047c435bb50067306502301e403b69fcf3db99783e13943f1d23c28891052c253554016d753ea69d98c79f97590fe03c2bf0eb8142b39c0470fe9f023100f07a10307bbd98011f170d85b900ffa1a5d164723e07218b1ad65148beeb8c762d27818f49d110b3ff619addcf3ba9fe0302047c435bb5006630640230238cafcb031ec9c368303d1ed45b4b530ea5f28c86f9367dd6f372415a0f104c528a560c5e400680667c250bf008992502301aadd4bbf2aa0d7c4e5e3b3a232ea36ad9c9074e2a486564c0b7d0396ae7b16e97616443904087f625784207a982bbc90302047c435bb5006630640230485c04b773cdd7fe8abc1c35c6f8ba6e567b80ebc345b63d562b9e6246d603b079bc75f44020189ecba95aca2fef9c10023026e173941612112cb4e79f15106815b7e7508a1c69f64e87da5adb47b2f206ba7a27a38f5c9852b75d9e802921e9fa1f0302047c435bb50067306502302b72507ff89b8cfabb9b6daae90f0604bda53b7d10da424f3343620ea65af0a7a8329f599aa3c65861db24928c5f1cb4023100b265720cbbf74101bee32799fb456510bfcbdfd349360c279e2171d8c49ff6b424b62d71e08c34b76918bd5a4b469b480302047c435bb500673065023074e656200e93c39a6c0bc3a07cb1855a5bbfe9ea827e1fbfeab8dbdb0239a0acc516f2923ac8033e91a4442517ceb094023100c75d223ee0b4ecedc9b6b2b9b1dcdd9044a544fb2afe1454e0e125acc26a965e99773cd69ccf7d2cccdfa5e88e591dec0302047c435bb500683066023100acfde4bd495e12656abd1d32485d3aa9a6624dbc6ee07f5964543e62db3ebf18f6483716bca98bbc2f3c7ed1307555d3023100930a7ff6add55dff9d3de564a08a5bae188c3b511d82fb0c1a1a89f5cbf446fcada187f1e3e129f49f24d3bc0b4365df0302047c435bb5006730650230211a2018831d9a4a61788e66a353cbef6018baa96680818138f80c173de1d351695aa68eb9050ea6e5dbc1c3fc0195b3023100a8e4ea348743030c0aea9ec4172e9e1cbf50ddeee733ebe7cf4056ebade2e05fd0f4c19abb9c25df14e8afe03d4c1bef0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303473d63497e06b1b86bee7da018613ac8f7a6ab6e4c1d8b60c82ee35b882121468e84e1aedb2bf1b94cd3d36e37973fc023100ac959af734ac4c98f99117f92c2a23ff51c3be66f76d50a07d4c7a127e322c6371063d121f2594b7dd2f9722928ddde40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023052e25be7c17fae4d568a6593303fd440dfabad7ed695397d929e422c92460b4b939a5f65d8c0313613367452b90069f6023100af4ff6aae4f292c45b72d207097d505069a5e10f88751a95355f7349fb34c9b77be266b25d572bbe94ffbd5ce1e324f40302047c435bb500683066023100f5017dd805b282ec65cf94511c97abf0fb30128d9a058d89c87252f3836d807c88582bfea0410b01fdb9213e379feebf02310089e5161fbe1917b4b1092c10a77122cdbc409d56ea45915094f345e444300c690d2d261f60f97a783ac6584142889ff40302047c435bb50067306502307a80a098be1d2fa64f1a96b79289153303b2ac6befafca5f4e229e87ed1264f57dbf6a0c17f258de7e61eaa9c81487b0023100ac1ed434e100f34a7ed6b8c5103f0afd51eada1aeaf4644b83b0b20afd27d3aff5752ad4b0c96a3f1c1ecbd931ca769f0302047c435bb500673065023100956b660a6c5b80581c6c50543cd980de8a76507e7ec4ce21333552039c49838f00a45d3144d2018262bf4acc65e3339c02307537db0a45142295d1f927f07296bb66e9e8d79627979c5084c4ceb2cbeb04e3cc193f0962302a3a190d92cf892f45540302047c435bb50066306402303fb02951c47fdf9a990eee9ff3126986879907c1fb8e071163899658a46f0574e4a22ecd44a577a60d2dca7c3284a6bc023011afff3ae31aff55cd6e12cd7d344f55dda258958d7e09cec67e6363b7001fde01328651ba4027175a17c9dae57dfafc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300e1d49094951ce364410f0689cfa6ba5653dc67598746bcf9899dcae3888cc49e8660760ae4f92bf23b6a6f5dc1a592002303e54cc6a7fb124df7b13a11da94ff4cc6091e98806e427bd5c74c84feb35eb62b891d5266d2c565dd02a2257377b4ac50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300f44a63a5f91a996912174b871217948a724e5f68ddf4aae8fe53e865a3051d1f7f92d1223530880c10f8e456fb9d897023100d9bfc5a7fd43d2ae647cea330eaa3043a858db887c944ce99f9981277f3700b56928520404e64be6d556b2ebb8b9c8640302047c435bb500663064023013486951d4c02c3755c775936d86ec216fc4db65d285c632d1aeeaec422d0a5ce655f083db87b9e859d6d90f90ab9a7902300a7f4d596b14cd878e4756c67203ccef3818e7f1f12d01b0fdd64da285ddb4bc14be50e797b6989aa1f3e929bc8ce1f70302047c435bb5006730650231009871354a288d5a86e830ba520a7a5bd91577a1e694d862db97a1c8e953cee80124f38def66f427d87a3d07f159bf38f702304fd6e83935e7f94a7b50361540c1540442f0471737084e9e96d0b5adf92d66c66be1b96e68961501799d3ff417cdf7570302047c435bb500673065023100dcbc99560716423db2cc0a8c8b231a1e6b24c21bbf5b14ed8332091acdf84f3401ee700ca5ae7a03fb32fe760663cef60230194845375a9a2f4895667c15433bff6ef940fbb26bd928e67edee3f866655e278e5051b035e806fd553e25327824731c0302047c435bb50067306502301240dabd5fe6c8183eabe78f1e5fd3f639d66a4e2e730654069716a68750df0d44194ec32c9d21390e3d27f680125fd7023100b31579b690411e6c2a5574cd407d0d30e6f737c17c7734988c5ed555ba7b2f557eeea4366e0bb51296baacb84d29f37a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230100825c07dcbe77ce8a601972cf2c65a85e186bf9d60de7a084e73c33bea32c4b97b402282645798ff3df2bd2507358402301ed394027a62f763f6679903b1286a667289e75334de090b25768b1909b37299be97efdfb8375ef284cb2bd2e2ff8be10302047c435bb500683066023100b69353e3d787838cd5425f24cbfe64288265a1bb90f28253ebf552ad5daeeef306856f56a75dc5aa2e57187af1264db70231009c76414a03d165440d9677d3ad0ba08f99efa917b983fdbe80a7ef56f4c69d43bd025ed36e909ebc7d578d69431627700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023069d54223bc75c90795a5e5a003dc9f044d37d7dd255a00b62f9c8c58712b14a93472be887c83a9e8219f5b987b20a34f023100cd4a5e88f2d16cd204a30388b42a9506b5c29edd4fe13bd7268d833a79332c74de51623987a0acfffbf92d37bf4d0be30302047c435bb500663064023042edfb3a20c6bf360d70e87c72d9c6d087ef240e295804c3144ee1e0a47d8929de2e7714eed870b07330e906437a5574023019866ca1fcd51935844177dd781e9ed51733ad414f6397da2aa84bb82d88260070b6a85d1e24a604619f5a31839826ce0302047c435bb500673065023100f08f6dc3e90c3e5605cb78dc924d314a72ef1ab01de16dc90fc272280b6d0417e890f6c2214ec2e24ef3c314fe0d6f8402301fc4d9739daafd49f6b5fd7a6dc772721422c7a6a75956617943de00147cbbc1f1e1ea2c89d2216eba99345ddd2b227e0302047c435bb500683066023100f1dccec796c7253efa6905da6125a90655066ad10f770a9c5e825e40f77ab627f23bbb90377089d68958da78a43a0496023100f05a8a784c311d1b81947a4bfb2eb94125a275b6bb79375fcc68fb2c8dd92d43e0d09b770f5cc2d4f090df0a7c5424850302047c435bb50065306302304c242eec1d232cefa43cac9412fd44ad5f55f7380b024c580edb0403547026cb40fcbd00167e87b791c7f562d3d329a5022f4e082629770c43f1968508a6f853eccd0728ac87816831bfa5e137317bf35c4b8bfb5e65503ab17d9cb3858700c5e50302047c435bb500673065023100aab0e8bfe7d678ea64399db4c75f38d9f793d7b99d69f8142a929d34c248d116b78b7f91144eb815e3fec7c397121ac9023039dec70341a408f0bd8fc9177abbb5086679c1970da491679aea8ddaa82d772d43b87e1d30dd36436abdb413b8cb4cb20302047c435bb500673065023051bd6728e0ec18cfcb59e61bc98217f132d07e914f5c82ee12ef64a1cf2c944f8a73b54f09ff24f2372da4f32efe38ea023100dc9bcef13c3be5091cb045c122a832f253c42c80c92fc4c956d43925369260eb69f16346ff9aba5b9ef5f95c21c6460c0302047c435bb500683066023100fcfc8ac30f260b7fc47c632e8f720110e8f36787c8d7482cf684c99a0e24e2e281c1263cb9be502e844e653b1b121005023100d88888c7fa178442a1c96d7cb9503aac9afa6d4b3c55e662c88b2ab1d3adf99267e41e2160dfbed7a1f0f382ddaba66f0302047c435bb500683066023100d2655f65f96e5c1d5c352771f942851eb20304ffe3763012ef029ed206f3ac6b983b164b82f02661d8e3f79f573a029e023100f8d65b55665b114769466f73860068efb8cf09c1653587b0426d4ebd002d6e5848c0349f1e58deae7b7bd0b8d10a60f50302047c435bb50067306502307451ac09ab28304888c3a55a30aa29d24fb52b177d8aba949a8338adcfa8617815dba2fae3e1c1ab2f27a8a37058128b023100b88959aff010714e855c7c4c05ab6e415efc84cc1cc1e6fabf078a7370d7568af0bfcdf037e352a4ff339310ebdf9d330302047c435bb500683066023100f6d7533ab0f76bec61f767fc85fbfdc34635a25e83683c850a1f8634935f48da2095c6bb3b74a1c70c87281de7d02fb9023100a5d99a912882926f8c5287869341ffa360154747e3135d80857f7d9bfc42faf86f4af3cbfe35cfc85d3cf272f301ae690302047c435bb50066306402306ad92595d41a0bfc571f83d5591806dac4fe273ae986238584ff396a65edf23a0d68292b908f48663a2b0c60f2c42979023068c5856861f8f1a52addc3a1b574109943de6fef410ba213111c9e5c9872cb4ee0a8d90bdcb9ab9211a4631bea16e6250302047c435bb50067306502306b0df5d1712347c26c6829082224ef46f438d52e4e5dd27dd0dfce40cda16d9a686b3360c355414f9bec5fc6530d4feb023100e5ee881b571ca135115bc40140ce321e5a95211c5b368059b574b4dce3618af0bbfb24f2f1fc15486539d46e9b45db7d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303d9b34e9033df053dc249d4bb262e4165ea66a84965cbf687babe55af7a4beb799b8f3c6101e811ec61965b4f024b606023100abfad4f5d1edffa1f658812f29380f6da883e7e152854e1dfa92c3b16a7ed564965782395a64c09cf03b3badaff8ca5b0302047c435bb500683066023100f29f0f475e0ee1638a6b4884e73a3e663231732ca77b7b465540abb46f8175e86ea65a10aa95dbd47591c96200659d9f023100a897858a7d8070e95f20a07823f462c4e79a466943419bfaad3fdc3e6c76c04bbf507a28f51b2547156d57bb96f81ec10302047c435bb500683066023100c0611aa0e6f5cdb1c0e349f7a43f0580acb37560bb6bde98bee2203fd15ab28dca38dbe7496addf8f8f1d92c06688a36023100c63d2cd622a52681f4de15ac38adadf58f3ec2873f0cf3ef4781a6a1cfcc29affbfb942b945b0a79fe404df34127af5b0302047c435bb500673065023100c345e67acd68d9b0e2bd9aec4212b4d45f4dc4b7aac5e64b805fdb48e6d510fd356e0e1be81c2b6083367f77dcd2a7f902307f310a83c42365df63d0ce98b937036c9348b44f222f34982f2846caee66294e2e413f42ad0ef32c6c3c66fcfbe235170302047c435bb50066306402304b52f2b5d814eaddea74ab74c4b3c38d60daf08cec6c79ce6d17ceea1f4a5d88bab08829603abf8a45f256b1179f452c02304ca70788de434c23a6b9ffb6f5fe2d7469ccd118215363c9cf78789855ef534e1653774336fe2a547e2a9e01ad0e57710302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230366dbb2a087ec254e73fc125f6125e18e036a92eb95587c9328e0124a87912b9ea0075e0477ba809b6ae93125408aa3702300de94c1075eb4ccd77e1860403573f238ea8478c86ca891f73d1432704159c0b4e611c86ee939ee05b88a33ad410bc4d0302047c435bb500683066023100952ce351e1ff97171093e16a99c33ad1662acf9e30065df430d8f3375c8396959a39cdbe3e4b39e2f4817662ab644ae0023100e59fb23d4c8a8467872fe05048b95eee007922d8a5ee5a3fd91fd58bd1b58b359d3721db73589e81826f67f790655a1f0302047c435bb50067306502306cde5ded5c91814223187854033d47b50102ac4241414f8fec235ac2d26ed4647f12785029b86a51c8b9dd1e7c1828d1023100b49814add37d9754f0cd29708793f8e15c312285f9638bbecf096eec5268d4251fc2d7c58068bd94f64a1ef223e016480302047c435bb500663064023052e51c44e3401357a075fcf8d0cbbe34cde6e1a9600d3d608d22c2462c9d72e4dfe0708b843b87f81bdf7622f0fc979b0230194bb6c6d224bcb96c3a63aad8911180af646cc5384ed263d6e2120da9f2a16cccf5b8394e865fcf3f7a4abb94e75b670302047c435bb500683066023100cde3176acbc0aa557391ca69ea3ac8872a399989af665df15f17c08713661afbeac4b74d9e9c4af8a06bd2237a8e4129023100982f617929d4ad70ba6a9dccd98b7c90f18e070135a3dd79008331c09e7c480c3d742602f83ab0aae3b94f88e08ba57b0302047c435bb500673065023053bc264b87c3c36c5c2ee49d6cabc969355c9e98c2d755599d0c1ae845ad57e7d02e9bea938c588ef2fcdfc7fbcb56f70231009d9110a93f56708dde166e2d2f7a54b30ba45b8efbf4db91d9ceb8f66ba7def8290ac2fe116bbf4e616d89cdfca709890302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230595ab5b729719c1da42da6e47d9a5dc9e43801c0c2fe9dc04ad0d7f976390614f81eba55dfde75994c518ef8cdc576e60230701fcd2e5d61cc4c1f67dc26c1bb13100969c2046f73a81c11ecebfa1209a8e82c0e149b46c24e9586ee1c34e7a605810302047c435bb500673065023053744e3ddd8c620f72ffed1f99a0332b55bfee69daaa3d0836d675f17b9340510d645060e204dcc6ed0d5dab36d0bb51023100b617ad8d27bdc67bb35b0fb59b3f3da1daa591ea8e33508a646ff8dd344c5b9f86aef2d9957fa058d0a14242e8b8d3470302047c435bb5006830660231008aabb36018365936ce9472b3fa1110098446746f87ac048657f644c00cb9bb583dc71536f0ea82feaa9a72a9fcfd81b8023100d53fa8e6ad2127c2455f59702e4ec88d07135a75fe3620e0e03bffc77232f235f2c2236c7fe3d95fd6de8d6e4d4eed2c0302047c435bb500663064023074ed1e96f27d24b26fe34e95b1d8c79d1075ea4d1c811f3fd3df8cadb96f0c02adae976b80132ca0e04a51336f219b6802304800d6fb24ed158ba9e6be81a8ce627bcd1772d8ff243bc4ff307818ef17298f71080761fe92fc3dfbc20cb19b39f9360302047c435bb50066306402305050ff88e697239422cac627a0ab978049ef894166ae49f0da5ba75cbd200550ed0de94d5aeb9a5e9770664959aca1a802304828f19a58eab8618e988d090fcac4558e8acbbfdd5483d525bdb1b52c1247ecc3771f7e5261fde90dddcfe58eb4f49c0302047c435bb50067306502302a9b2ba29c69a4785a1d5a3e1c4ed7f9403856802825f520e31bea2e2562f527ccfffc23418b6d4afb1502555fe5625f023100edf00a9b50128061e707c14f59f9a8104013a9bc8e7a24425861a420d6e542baa2234759c441ee8291f77d270839a8ae0302047c435bb500673065023025f35e94d42c1c33f76c73b0b549d65db7cb919460d29022f6775c51c56f9a06b36a1e07f50a4618b6654d5b675ae4800231009868cba81c6bbc5507782ba77fed414ed4d6683d5c6f757391656947cce5fe7c57f7268f4e6114598edfcfe16f5b83010302047c435bb500673065023100bbd7698ea3c2985598bb06c82684b68e56a196dabd824249a84d416adf177b0ad6362d40a89d24585500f2d5f646f10a0230660841bb3fae5129e6b836da9480d4c9b7440d8d92a21281d838dcb5a02b8931a80e6e1c6c952ced4ed189b0d48cb5ab0302047c435bb500683066023100b0695b2c4088d3e175410726f40bb3d01f4c0d98287a2d4422a23892a6baf0662dcb3c5faa7caa4650edd5a3183dc5d0023100e8568691ac034064b7318d3b64c7b3a7066b424b88e0517e5714a534fbe66bdc7a0c15e97445e4d4c55248f4ca5912700302047c435bb50067306502305752ac8274d40e8d6383006563404887fbdcfffbe33fdcfbc155690488b9e0c7b1063ad94f34187adfcb608f8fe49c1102310095d90d907ec30cb0badb1c92ef09711aa6b6cd25c1c94ae5d942c06c53bfeb7df227d9cb9979297c604af9bfd25db30c0302047c435bb50067306502310090aeb4774fa56374c6504ab52b665b980ab59dfa64e8564be72091125e9185383e5093052dc75db7af4af2069258381602302b95cbeaec4d03c5ceb41ea9b7672bdacc318172b6235191944ca968484b061a0dbb0731e2b084f8d45e9e4f598645e50302047c435bb500673065023100f6dbb290422059d6493d431a6277f61126ce5f259667b143cfe1b2f7203082289bf5a3b985e6a7708cb5e5a8e1b991e9023070009965ca0f8155ef9a6930b9a2a5e7b5f20c551dc1d6fed7e8474aa2dcf14b152eb0aab68f6360007d4824360f6b280302047c435bb500673065023016779002049606234b7800ef8069e956888daa7e2e03d2d57f9d57a97c523a508c1421ffe5c688719775ba6eed8f20d1023100dc1625ef685ef739b983b3c60d528ceaa2a4976e93ca5cd8c4007cf18df1e55c3fbf6d0d17a99846cf114079389e00810302047c435bb50068306602310093b03ec04b84bf7335de790d48383829715129bd8de974e6ac0ae9c6cb1f69c6810216242612291698ce1760ef9a7825023100cd9a5d807eba10a009572e733ad91fc437f799360d2ee84fee21f0029c33dceccdd783d09554e8805d51e6032970ae630302047c435bb500683066023100e956c1f4ca2ac9583fd203aa087582459248209f7bc3af870a2eb50a4164673d9429fc005bb6c151edcb84bafef4595d02310098f7d75634a70ebfa51733a5d9bae28cd2115d11cfc5c53aa7991d6c5ea9a34f50c9eea95aa88d64990f24032d3634540302047c435bb500673065023043e25df5e22adcade948fd539a7ab2271e0da29c1971f819af292ef77eb1ead6fd6ee98eae3d5270c33381a5ae54e17e023100d952a7b4bd3a4997f5ae5944843810460602f9c6f2507ff110da7ed18039bb49c176a92a157ffd6019df677dcbf2faa00302047c435bb500673065023100a523eedb4c8d7b20603dac26859c571613b81d82c928d31ac23742a38cc3a7104d3e452f201ae1f8beaffecb214ae571023055ac632bd7b295549b4c78ec96b2f11b828b362d420d15f018d348961e48a3f3c31c95da6cc7ac036a876babf966583a0302047c435bb500673065023100ecb43bde05b4eced90890ab54d30af370c51713060172be5863192a4612c4e523d367bcdb6e884c1110b2755e567e6060230560be45ba70f863bfb60025afb10adfa019297bd57e123643c1520ce46719f7a88942dcb45ee0d9b57e42c4bbd5bd2ba0302047c435bb500673065023100f97e78e7ed7f3ca6625ade45338a774e6b7fd5dd7ece3c7b7b20a63632819d37908791a354067d95a5aebb94ca4d1eb1023027a3a1e2c5c1fe5e9cdf4dbac11fda40faec18e473086b71d759fc13a93b27beb971ab3a8f81c686ef441bc2cd4222d60302047c435bb500663064023050f9b5e123ffed038ea2f86c534cfd82549f0bdfe5568e61a310e7274fe74969593d07e8b523760fe871128e1bb7335802301df381689036e01c76cdff760b5700789c662a1b194c6f2052f4ab979e48a0b98cccb9b2160235e7d3dd8329175dbcca0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310085310067d0c79e9967c36b5a5ada7a3c3319988c0624d972c78a42c8de54bd925ad6d485a1f15de418bad19b4ca74c4c023100abd94310c39759558e74820544da191ba59c2f33b89558841ef10042c5bbc892bacb45d5f19406243433e5fc97d0bcc30302047c435bb5006730650231009b29ff02b8a92f12695dce6eaf7e43a2a55ae4f6f54f41090344abb11f9bc676287ce922c3a7741c06495c73076c922902304df2da9266676c5e209865896bf119f2898c928c850260e8c00a9cf2bc03118db99c606f991d20335248dc8b23bd1f2b0302047c435bb500673065023100f7f9b9dd1702391c08494ada750878af51252607068cd529b3b41a7ff024cd3fbd2858a32345fdef9b3000a1a03b9afc0230702fa25ebe392a45d8c59dcd0723906405cad8c3fc0756392983b697c5d08ac50f53d9adef99b83f470ff55e07f331970302047c435bb500683066023100c6a85df367a785317ed0c2267336ec3ea22cdd385ea0792b74c2488a3ade1d32755ae1f63578ea8ecaaab0a78f74e25f0231008cad64fb4548094ea8d5cd4720d466d91ed9bf109d2420d764228ce5b627e760206f1f875d6f9495addbceec06c143e30302047c435bb500673065023100f12cca78e155849b7ab3920b5e6c795e0b8a444624205ceadc2abe357d3f68373a1a407911eb99526838c02c45fb7e8b02307f8aa26150ab048eed4290f244103586a8a9d574d32121aed0ab1c2c86424cdf7968aba9b72346e86fc82315bc0aac910302047c435bb50066306402307ddfc0e0f6975e757dc1da65f9aed92bf0bf03b129ed4dfeba43fdc4d7dcc5a326369f0e55628dc5774ccc0be076a22c023056f8e7f382b20ca7d794f27e3bbd0e9c05c627f2fa1ad6acb3369bd69becaa9ab4d126fc76fdab886c2a34c79a4c5f410302047c435bb500683066023100a334b2aad89e8a4680bc2f03b69eb53f0b17a1149da0ba96dce2a09eb2e3c57afbac16b501071ebe2ed70223461e7d8402310081a93509057b5bbcc1e3a6c4ed950bb4c63d6b5563ab6d0d561b2b2dc0c463a53dc09e3155b195e0ac8d35db8b7bf63a0302047c435bb50067306502307d9d0ba6c685d9567930990dfa38eda21034d3859ea5d157e53cb0cfac5b999d45f5ac47668f3aa5eb54638d010f760a0231008575dcaf1de78a3f2d6f5edaad01a515cd0b48a472c333461a815c9ca688fb44f9a30bf60e64ccbe66c3c5a406460f580302047c435bb500683066023100c2d5b5b9d1de8fc7195812f9c1160efdf66b9879c8f992f333d4ebf0b42628ff3819276f5b54fab8893d5fb509d33e21023100910292d2a70546c0f743ab3b5947d7ca1655707d7937911de48281f509a3e4f859ed5e8f76b06fa63d9ce96ae296f6e00302047c435bb50067306502305b05ab30623d38a0692b1b93a0339fdc01ab041ef79a99f3350d7b3f72cddbc3cc7045885158725135d18d8db5f6347c023100f05faa5e6ee1115419ab5cf3f9e6413d97d6e5bde518327be6de813000dd9fb0337da956fa53280d65cb8df69136496d0302047c435bb5006830660231009c5f56cb92c96d1a33c15deb8964df5a36211f4c2972d0074b37205409a385eeba23bee04ad7e4c86826eec6fb0869e00231008e7837a0ee8497c6f9da1b7849bb222bde415b137ad05a0eaeb581bf9c8589f028571b8b4535aba47c993f7b23ca4ffe0302047c435bb500683066023100a26aa5b66ecc26e83db569da3af631e32b644e4c0c443b378cc1e86f56e36c286b390fe0d381f560ab296b2e6ab4fb97023100c3941bc1513587b58131ee89804763729027dbcdf9f877db4f3511100fffe7cbd5c2c16eb6e11ab9ea5865db06e97d650302047c435bb500683066023100b71939cd270d166b4e6abe642b67d7c7d5eafc21baa9b64ff669f78b2e98f3dd4a6b4bc80d2bdce66e9a629f9a484bdb023100f86cc56d51edc9fa9a6162324358ed6555fb069b90343a94e90b322b474a5a7f339787f6da9beb4e93529c8e250724720302047c435bb50067306502310081a7166eebf295f256e8b0ae1757c18085bd821e71e0c697ff4cad101a3bbf239d76bf0f5fc0c20da4734680250cb20e0230503482ca4b3dadf2cb31d82fa71deadd8b68ef2ecb03ec5fee96d6569d4d8ae9361971154bb3d364cb8e62546581f3d00302047c435bb5006830660231008c60470659ae6e822a6afafd4be79665dad28f77a8a528a7e70eb1e7370c390fe5fe7aea381e99a757833f3e59b41027023100fd183ff432c13e85a9f8a9cd8b0d5ad0ea598ba00fc6793ad3ad599565a6b0fb64753855865c2ed07fd67dc06aaae2130302047c435bb50067306502303d71d44c36c2b5fefd25603132df0fccb9924ba8fbd4bfbefe75c1ecca78c4207dff44f398a0592a650a8fc33b1c0f8f023100e584dff54a8e3e8ea11b9dd55a8e2605195bff90af5016444fc5c65f9010d641b67f404aecbeebdb79698f5e602fb1f30302047c435bb50066306402302c0b50f8367c999f03bfb66bced49164557b79f64ac4273b91574df1fcd03d2cc890629cbb52959fd6e0312a920974310230356a422325a2f77caba130ee0cc1bd45e7faed797c3b7afa710b56896fc866009867e9f9d520ed0ab40dab38e49c5b8e0302047c435bb50067306502304851c0451c1a879c6efd1895ee9f2130d85dcb86964d514e2f49893c320f4df61b085aebd54273dcfb2b90659fd42552023100f5da21962169328d82a70f480ba3ddd999bc29ca5ac859139c7ce22d9b9344ab5c4da2a66cd8a0990718b2ed14967c3d0302047c435bb500683066023100946184a8f2f4f980aa83674a0dd390ab6b9095e472270678442a428935e793ec4e5a59de6747a7b8726ab5caa82d3c5f023100c6d970618f0688deec9a4f62c59d8d6fe4615cf41fecb9a74b42d89997f05c3b48955362a65b6b0e6bf08c3334b46a010302047c435bb50067306502305919bf809cf89d5ef3c65bd6affabbef942dd2efc9f288ca2581fa1cc2ee56740d9bbdaa141859d7bf91530913436f1b0231009f918287a95d6203085b0474680ffcb8d51874e3b79db766b5afe164bee8855ec8d06e5ef6c4f9a19559f1a24affad3f0302047c435bb500683066023100e9f9c49d5269ecb3f9699e2c1c33399be60dc260470afbe47011048c944886663ee13af6722021ae28dd8d9b541bfd45023100ce124f092f4d3062fafaf84489bdcc9f4ad1a2c01d5ade276de0b0693c48a0dce4ab2af88c2514aad552fb6edb0728c50302047c435bb50067306502306031bf38f22a67500765564a406376a1a796673ecfb2b6caa58e7ee878887f76fca9a90a688cf3aa6bc92a3cbbe82da1023100a41c304d7cf8c293243237d95c7d899aff37ee811abf56523e215eebb780d82427f77856e47675c3344711bf2e497ffc0302047c435bb50067306502310087458c0c27fadca053352ae31ecc999b897c06a6a5738af75b6904648da3229b4d6f1b0e329dcd26040bdcc7d69546f9023038169b868a789b67795d337de2072f211c1d483b9439d3508a72c92824fabbb24fe604578b7749d2c4b010718cbf05bd0302047c435bb5006730650230419f5b3fa8361e7e4dad9a545e357b594fbd7f30528ee8ba6adaa7a3f8085b42baf0d035a7e50c5302459222a833aa6f023100b978fc24fe7508dd011c1d696470960394536f9c2be3526e2298e0fbae99c4d7d876fe395384c61dee889a6cf150be740302047c435bb5006630640230088a6c93d96c6b95dfe34b05b686111a7cc36b458e1cff98c6044b5adf526b7ed45b026e71ba2839ecb0edeb0432153102307dbc46f79ffbb78627dc04939d80b69af04ae8ab753931059f19685428a78eeb36b73e85a53d2dbc5c11f94f3bab65ba0302047c435bb500683066023100d4dded54a5b26cfb1fef8b4a168bf28c0fe72c95fd6e82ba1a36d559ed1d5dfa2d426a405342d90de1d701ea5f3377e1023100997a74f09d3f18f371c2de862db312d6e4cdce82b7767abb0df3ed377fa05113058a50ab040b38c383d9354950b5ea540302047c435bb5006830660231009cfab46ae1c02db26356eb479404ff466d8fa47f3539170039dadf72bd9054d8a0e9ff33f925e24a714fa16c773f7834023100878a2d85b6453794f267e86631598919755152e239bc2b1038790d0532fa045c46d6a0baf0548cfbb01f2e39e06915210302047c435bb50066306402303fb5a2d4205c0efedd074e454d9d462d0b5f371493eab3009602460183c034c907384dc8a033623704260a7206273b7602300dc95f3b48c29d1f9b8b0dedfe19d358a5ae5aae631d32166a07875d13ed80b596449a7ecde3b2eafa1b5f78e24257560302047c435bb50067306502310087b834d459e7cc9c642419df68bf423754558405ee4a9b0b2ebe9186cc357b6f0751e4bd53f429979f44c1b04af4edf5023001f03fdb48c15f1b8de190a5e250335430928b8aebd69dcf919eb2f3a7fde981518fc46c8dc157de4144dd3dd52137840302047c435bb500663064023053a48a2686a8e9c4cb3908bc423290f4b6c2213ef9db625c4cdea8715083e8b2009f2af6e0ff1fdd9d2d57ba4866c27e02306e925f2cf833103ea078ed01e31e3e19bfa980f89e74e0375db43873be7b7f810aa7eebc766f4c9b29c9d1beae5350740302047c435bb500663064023058f3f311422f342f1328481d3c1eb90d02baea53d469f90c4476ca4b206b6fbd49188a2abc7eedebdb712e1db91d2e0d02307e444a6fd149c7b8e146257dab2d425914e768aef0aab5b4258004427276b70c5ebb3ff5d9182dcae7f98358524690c30302047c435bb50066306402301342926c257b7c8e731709970b26b79413b199c622e169aa74918961e0e2dad95547e951f48c7e026d1ee2365516fd3c02302e7e2894d7ab7881d26fb0fb3c219bec41b8a7eb7dcffc6218bc9f24e0b983a6c2ace90fcc2e71836b06263d37556c350302047c435bb50066306402307a262bbcb770afc5eb14de9c8edd17c908d0f98fbc48fba6e51e843ad2180f0e73a48ce7657cfd71bffab4ab112b8f0d02304ee882697f0c9468763c6f3c14d6b1dbea2a90de4d01818e2d02ab518e4e9562069ea4afbd94ed6961b6ff3d6eb7f95d0302047c435bb5006730650231009013b0580812629be7e4e8092efe053cbed638401d5ea66e0f7d4724423f59341841b1c992f431a23b3a8d928e5e8c3302301ff5ea1c0ee6f0b298c9ed1f936c51ffd67d92f2bc28bef10885adbb6b056a1559384c24deb63a67e53a7c9e9012558a0302047c435bb500683066023100a88abfceed83ab9644e77bc5f4c87addb179213daef4cfa110a8ad60c0d8bc569e7fc46d48fb90ded646e3ce5a84f66402310092a6d1f942b0bd7fae2d614605fba27064c1cd23b1b62d16f022f4bf957e22a5f903edeaa3fc24e0c3ed98793844b4eb0302047c435bb50066306402306b301101fd188cadabc833bc6bc924461caf8d327603407bef8f775a8d6ebc21705fe26c3444ff9160cf0bb08be2cdbe023037666f258ae56abba7b2b6debd55b2290c2f1cf12a6d0eb9857c5251480b6a4dec9489c50191512e1bed77d17d85af6c0302047c435bb500663064023030f38b4028d9477207518e10c1881e419d3ae7e2864987739844af2e5007eb422263878abf301bcbe62a9b7beadb741a0230249d5dd1c7ff3c7732c54e788b118e20a8a28d57179deaade520535d043290329a8787343d14f33d29f4906df5fa081b0302047c435bb50067306502303555252a58fb460c878c6c76f4bc3288e08fddf3dffc8500d2b4c19bf73be04bff7997b32e5cd0c44ab3358b49e2fc28023100befcb9635d16bed36628dfb68a5aa5eda111fe16d627b7efb70e1a1d75da9e8fa27046d6327971a852e7867dd52e60a60302047c435bb50067306502304e2eb3caa15f06e2bcedac70f28acd566408880c36f3802187ed9abb34e98d38332683b817463de93752b96bdfc5460d023100c9c62346a13a4cccf9fb6276ec699f04e26c9fb2700becf787ba734187aaceb8a2fc91f0d38a5a5bf82c9a2680f6fe3f0302047c435bb50067306502300b7257becf2ee42c2111c6777f2873a6aac015640fce3a99e1f885f7a3aa2894cc300fdf6a6857aad96f7fbe1a0288a5023100f7577945a16a6e779175717d298324c769922fe60a1a2735587e58ed27cd430ddf9338e28745116da9a6e19aa2f11ee20302047c435bb50067306502305341660c8e8c00d765d379863f6cac93823d0da2ca8d8b8a640078dca80d882e0805797b8760fb2e1e29fdcaeb50671d0231009f8cf1d593fec1aa623d1507753b0421b84fa4e29394cc4285d8d15e07d654a4b01c778ebaf61b001f786d969a0a9d980302047c435bb50067306502307f01bfbbe1f6dcfdf2567178f077052d0ef2be88516316f0b0f2984bee3742c46243b359ab51364ca5dedff2d46eb16e023100820a39fe95c876877d63d1ca96c1452f889d9e930816489fd661c401d2f3ad0e8e0f8182106f56bffd10e770efc7769e0302047c435bb500673065023100c88716450ec4061cf3c4256724e05afda9e8ba0d023882b14e45053c53b2772785d7ba14b06b34c5c6f5f763217bcd2a02303b4c95ba04b17b9e322b8b27a4a172082e719c189526594f69be62c87f205bc083137ddae7c951b4f84f1a0b43faa3050302047c435bb500673065023100c652ed86a6eb8f7d6b9d756ef51ac28405fe3f41659bc4cdfcbaec9d29d836118290275018de802ad26af098b3d59767023055545b18d39e467a4b7eb9a992157beaefa6e66a0c1fd75322439b817e7555c5d5606f720acc09223970b4e04e05606c0302047c435bb5006730650230285a5a9d6e0b1e77d6dc05591ed9d894c466ddc8942038e851e1aed901cdf219623ac9007b689db2d1589b818fcf1c02023100d02de6d0c66a8c3e5be3e05545f9049127a1ade240e0bf7e786e3ba3370688b0c9ec2cb3a231b0b3b54b4b383f3d4ebd0302047c435bb500673065023048b159c7debe1a323b6bb2a5e944e7112321d0076cc8c470548265289d75f9f132ec631a6a8cad480f5b09cf0921feae023100eda88daeaf94d1cbc1ec91a4b87cfe0dca495ed200228e8e374357f6fe3eaa3e55d4bcbda9b99c399137f5731529c9e40302047c435bb500673065023100a2a06144d995370d15f95f73a6fd56c9a4f5a5f4100d8e2454d869704457771a62fa914796694fdcc819b3fe23911fce02304e66b81063cd0a4a5ade0b926869b0bf0e5e8285c3b78af7e8c619d91e8ef62a28b435c00ac91059b8b9722cec4342de0302047c435bb5006830660231008d6c72e59df09bb328272f3f6339701c4c6cb875164c3712eccdbbfb0d5fa90254226dac73bc6a651697e85a30140275023100ead6c40072b0551d5e68414229ebaee5dd2173b77a11edfcbd1ceead7d6c0ded01882ed64998aece718cce4eb710050b0302047c435bb500683066023100b3653f728f16083fa7819d3e19d6dc33a163e2131141beb87ae1acb4e591a5a90f067a7961ca317722988f3d4d1c31ae023100a419a0a3c57129f1944b342ecf7c2e99e4201437da484fa0152aef4b1c27015c140b5a13832ba68251ec74be87a86d580302047c435bb50067306502300666cd7826bf8f7fdf4c471b16565b671f279b384e2607f6f60091ba543a21aec70fbd7ff0af2e8152996b9798b09c90023100d7044bd373386c22040d9ed922661207390a0e5dde200f8b9c0ec20c5a43b10a759c384b23dac89cc334a0bb4d275d760302047c435bb5006630640230044a887235dac5ae34a8890e10128e1437e1f14a5647114fd4a070a556a95df7e2c72585aea56b33fbc60e77ffec79d40230326041d2c465cbc0f5ba1a5cd8c02a97dd0f7171e2165a80bc1ff2ee4a7309063ae2f4f04933b75407a02c866ca2cd000302047c435bb500683066023100816ab2e0ea0d63a7021e6da2489de12c76304c45fd921396ee95cc0516866a736577ab9f3b8624a043f4c4a70e4dd15f023100bbcf426b8f2b3ac244cfd53d93ed8f878b387638d072083778e4bb73e4e03639b5fd687e001707017f4272cae45b14c70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301c7e538d554f515240743c9c1578fc721a17602306036198d7ae61e8798859e78a9773bc99cfd67b1a52d41b7795e75302301f48d4777e1087b199df9ecf5833fd1c011bf77c61ad942ff22219cbef24ddbb32217ff20b83ce9fa94a2a7f287578a20302047c435bb500673065023100eb0b7c720fd59178b17332a3d9379c92dd171834e2649ed7f01a82903cc94dfe34282c8d0fab3760dc92ec6bab59ff4b02306c4de501abb4c0fda9db5c8275a46e3319f07d45089f27a7269923b9334774321f161ac55b7134cc43042abff6db40140302047c435bb5006630640230071b5a8630e2d0db84ebf9e4fc4ae7a3076ebb7604efdf387e462d952726b717791808584251313a1e08cc33218764f502302b8b871082c489b287ec7da527506c75746666d68a421b008c3115762a46e7d8a18ff8befb36ec611ca5e3ff08cc4f320302047c435bb50066306402303c13c908f06ebfefc73b395a2d02f6a0133810913736233e2ba4ccb1d388e1432fca8e7a0c1feb66f6467768c677cad602307164f40194e3c40b76b31a7d9feaab3682710559ae45b99e3af044a26e50f65f82a85eb6d9b90b6913d4707ae428c75f0302047c435bb500673065023005858a3b22c0204588fccf138edcd602bcd10417b4f8dd7f586e0a0468ea6cb3717ae4e1363a217ea85be2e4357ee0630231008e8e02ee41781041a87186c9764b91413f875ba435e1a87e1161c3a21b4489dadadb0d0ad7c828477792e687eaada7960302047c435bb50067306502303233e5cf03abb03554cd5921ac65673f78b1b182f743536d0248d9cb538f7862d225b2fb7e0b13f6bdd71773adec5f3a023100ed12a9f6d6c1e03b0ded1d0f839f543daf64a8df23a086e93f4efc548fee7ede3ae40eafcb9f3224fe8486132a5708a90302047c435bb50067306502307ea8a8457d706ae6a5d6d590d08a71bda5ad061c676dfda796901321143bf1364ae438364b6d7220e3374a0351dd7d9c0231008239370b01992814e5aa1802edb6a6c388721c9c36f6337100088327d9a12c2c0b5f356d843ccf3b95dfb5b9af0393d50302047c435bb5006830660231008a753d690e23899d2834e6aa293faf23be84605952ea5d9abdc0a0d25da14bfb7cb78dcfade4c60e16521f5cef9dd838023100f36067d341357d932fc5d30c7aa762a6232b51839b0e04eeece860e6532738af8ca1492129c1d1404d3f878ad72931fa0302047c435bb500663064023049154231d3d16a51d294f6f44dd38340edf7b4d95b988408781fbde286ab6f5c6c27efa9b3020bce311e9522a435b63a023042f88e7c5e4e16a2b98448822ec4b06aa799706d87927410ae63c9e6344a0e7415d134c6888f410ebf7f1c509e7569d90302047c435bb50067306502305fe92d8a3db3681500ddadb0e42ab0ce1411d1ed917bf1cd0e390f9460b7916792bd2859a5ae4c2f51a943f3b50b64c2023100c5997212d579ee7ef71da828191f1dfba5fc294e84f5c0430fa3d39b104a6d08c90d174232f75e3fa2c36098ffa59cba0302047c435bb50067306502303f52695e3cef794efb3055b906d7a5bf1e69d2e93c916288b983d9769031cec066974d0c05903e519a9a08ab073f5dd7023100fc8a2589cf8e6ba43495829abc093da194d68ff15abd8ce4af721e265280438158b876b5249a925fc91896d3fe86c0190302047c435bb500683066023100c3aff0129e75fa4ace31784c272c104e5a7ae43c93ffa8b36fc1b59369a75eb2213b20f1655bb18518ea4ee2b4eaded6023100bb94cafc2c689181ae456416aaab1bbeac63f1201a68ac5ad8801c6d2a6182d13b3758c356f0e2af88f0dcd57ba4c2710302047c435bb500673065023057dc83ccdd6de0632bcaab9a07370eeaa2dbc9eab3f1747a9cbba2544a78ac6ff371afff1863bd6922df8ea3897a9030023100f5b46bbd70d33b943cba244dab233fdce531719d0566de3bf73d0b97c4e15b7528c0afb18ed46e1bffa63b7df1714b2e0302047c435bb5006730650231009569132197902d6c0b46fca4eb6a03ce39521fa6446b95b5a44926381e19e9f78af7043cf76a26b6a591a3b55be35353023017c7d6915121d4651b250573a33bc0e10058cb518fbda87a973d958fa49e3f5d463ecf4cf10f0d19ba45011db3863a950302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a4a79c87312b6a06a78afc2c7af2e724f14f68bdb48a76c30034df4290042c3bf207405022b64aaed086842c0ec9542c023100d8090d7eddbdefe0730bffc7b091a99ba274a091a1d6fa699f7262c8db377d7f9901bfea50bc6b1a6312ad36cfb970870302047c435bb500683066023100aca3480f5e5d5fd6b6cd683f0d5a26152b669048ee981ea4923224e8693021882686dad6382482824f0dd0561a36e664023100ab8c81751d8cf7079acb02d99d8e607b464604214df1a24721115df0fe1178502cf8763c55d6f3d769dac9595abddb4f0302047c435bb500683066023100a963bc76966419e219690edebd38c8a48b412bddd2d179a48f8b76aa9ad35f5185de03daab63830efc2d4c77e4a375df0231009f140d3471380f89ba3c1c1fb0411b162de8636e6c23d11b73dfcdca6666bbebd092d21acc874916186119e024fe17cb0302047c435bb500683066023100cbf7ae06bedf22743997109b2530c1b135256faab7ba2e47124478b57f45bc581f0a25d7ccd91bf2ea3b0441707c7de3023100900a6dd407d9a18ebc800965ffa52c240952eb7641a9464456e2a5100f6b90877e19ce48784274a1b63edb6c2aeecb940302047c435bb50067306502305eb09061af257fa87c825c46cd04bfa293c56aeef2112731a8d4881e6fabb117c7e32c05180ba61d22660ec6a199b9f0023100ab6e743ddaca285969d69bd0ec027cae77f4afe6c03bb0783ee0451193266eee08deee4dc2c08b079f40f569b9e0b23d0302047c435bb5006630640230348146d90edf76f86609709218cd4dd7919278767ff6479f2972b82f55ab8061ab45289c03c8d31248b91358feb2f29002300e39bade7700739e22cb4f96ba48940a896338cc9d8f2ac393bc0c17510f3abb605b2fdd5df38d9da0b3b20a8bd924330302047c435bb500683066023100a374a58253731656b7ded75838e075dd550a019c1af0eb7c9e6a83598d3db6481a45f91125df2568f554e30fcccab71f023100d7d96ddae66f065503515935997a68ea885576ab5633cbba708519504254c8a186331a6e25745b55c386ea8aa79676f40302047c435bb500673065023001d767d73295e6490dc86458512407280c5be56cf64eb774c22909b416db8d3590ae6fd9998f2f45635d8844f8c2d87f023100e851ad3bfc33f1090593c1b8236613a92b63c0d8cd3a41ab2cd4e064fe0223141f8afa2402767fc176e4e07c0b9dc31f0302047c435bb500673065023100cd63b4c8cb4c2b26c9e55640e55821c345dc6bffaeb721de17bf5f97aff7105b32408fa56a2e8fc05671a643e1fb03b002302bf8bd51425131d8b35ec96dc00d9d2966c0fa538c2ddd2f93aad6aad381302191584aa4cdae587b3182e12a915ff1b50302047c435bb5006630640230034db95d52e333fb7bfd739d4e43ef132391a8b98040da485e6ffe4f59070a4147a91e1e0b19c33f4dbbbfad18f2b95802301b14b80e4d0cc2250ebb141d64b20274c5a0a8a06e7373e6e54f74899d712be3d2e601bb3688eee1dc408fb891ec19890302047c435bb500663064023064696241c64936902587898a32952e8675a843857b889fdfc9265582e8e5929eb28c114872589f89cfd24a176d0fec9e02306932ecd07858ce686bcb1a74ab5ad36696b05cd735ab1f1a8765b3c292efc527016a4dd6fa1982d976886579a6164a020302047c435bb500673065023025baa30e55e51349791837613aacf2423c588f2c23f17c22a4f6d4424dda1f127741eb65c36a95497f22a37ca57b4dbe023100c081ea9b70193175984beb10aae4cfa7270a95f1c089120ffb7b609bbbbffbdd5ed356f378e2e9c13fe9e71d2e30c3930302047c435bb50067306502302cf1cd00bbad3631af542421e1ae636effbaf74b36d9043cdffb9db7649b01b8939205326fb346a6aaf579a8961b0417023100e826ae4f82fc240c03588ce01586778e8eabd4fcdf0c30b48525bc6d9e9ff40edf9cc34c01f90c20399238aa7322f5050302047c435bb5006730650230749a6f28afbd262aa23bdc85ad1aab8dc12e067df311e981e4743cda2fe13639a99a3aa18b8374fd9a597330700bf7c7023100b40ecb210cbd6424e1672ae7d0603d2af79d444600119564336ca11b617fbfa3776ad90a720dd6da910503ec50837ef20302047c435bb500673065023100dfcb2add954dd8689002828ce9fc1b382bd7c9842baf40d772f84d200b7c33c4cc9e2a1d526cf13e9f0bf9b8a3519f46023011914dfe446924cbab82cca752605f9f445158425628506d9ba6ce533e7c532e0a6eb12b0c9a1dfd4f3448db791466010302047c435bb50066306402303a47bec27bc81189461d57819499d550fa3e206333a21b24297f2f3a79c8139d7979b582714b6c2f2e943f38de726e01023069ef4b7e37fed764e9bbc98eab17de6f432673bd97bd9293188417b88cc265fe81dfb7d54b583f62b31624f963bc47bb0302047c435bb5006830660231009240ebf4e447fe52327068506ddba571ae509ae9e9bb13722fa95fb3ef72655634dc9e9c76e8f4ae01ac057358c3d72602310080f26b7edabbea16757ecbfae4e1d248e906094c604672b2f0154e59efa8f2a3e4ade3334111840f71057966b0ef11040302047c435bb50067306502305f5cc363117d45790a4de30496b3e9f14117aa1ab3ea69e7396cade4b2a21a8b00bf24431a373ef2c2f10ba97cec1502023100d9fd48c60af57a48d565309fb45e421116ccb667fc88a6f3fc19ee3c4042f18bb62d4210f9bdb5c9a6eba52d28519be70302047c435bb500683066023100f3f377ddb3c9be588df08359c1fc454774e85a2f3198561a5955eebb4051bedc06f181087abcb137ce7d99fd92c696ed023100b178c61ae894660b56c0b89415531d620f2a1f61066c10cd1e1d73facc6ed772ce61f762eac440f9d2559b69fb339c530302047c435bb500683066023100cf03fb6e44251e03a45d40d0704ef5b014e5cbe70e2c6ae63b01090f995c43f9d18956abb290fa4968cab37389f4882902310088379fee8dfe93c0a9c4cd08325279176d5bad79187f946b1479b957660b0b4cdba9d2cfc4dc1076b002c621ed3e83360302047c435bb50067306502304083b42ee96bde878c5cfd5285bac8d89bfb76625a0ea53ea52e9ab334f5a77dd7262d20a74c0f839377fcf0a47fef04023100df1595ab0b4120fc532e0d1c5a95ef3b71751e7377b0b0de7823cad859782d348e802a0c866d80510d2eb95022b6371a0302047c435bb5006730650231009a9c4c3fc4b14c242e80f950cb7ded22524bbf6f225f2aa946f7c2e24ceac63f269f34be1c53da509d2a3a40a6c21a1b02300c1fbba963e21aa8d08de375408e401034a88fc4fafd9f90ba83017316cccd162190fb594ba791d345882fcd44147caa0302047c435bb50066306402307d02887e96d8ef140ce4f942b92302a8131bf99147d0869b48452994d1d7a91e7b3f5bf299f18b4b145c27af88555805023059b3e1fb1f428791d32b2b22cf15c0a58e474ab88defd7ada01eff2b2085efe4d144442f429604c8e8a11facb97533ab0302047c435bb50066306402300d1fd6dab938e109f3d3a2a79e0525e4a4a968cf0e4253c64a10e3211cb57cd5c8daa93c4c84a615d8d6f3b7d93d9e1e02307f5ea04ff4a81ee21e2f9ba1b12caa4cc7863cbeeb5772c8d97b31366c2795d97f5a4da73dab63501809d8cd4f1145e70302047c435bb5006730650230587784edb85e81bd8b69de33c12ef4a43a7e69562d86f36ab0f1fd6217d26602042da52731b8fbec7ea19611613fced0023100bf86acd8abfc7036f95d603493d344d396433aa23a56f11abe4a45e8414da61df1ee78059ae481e1717e171cd1e6ea9f0302047c435bb50066306402303705ebb747fc081bf1c88ccc7df24e57e4aaa0aefa36fcc56a60cf1a5e062203d16730fc9cbddfec24faef7822c9bbba023040a9f59a2d1efc806420b959efd639700e7c892f47b3251a62f7e877683658280e93ca892380c61e1e8ed3ca99f3026f0302047c435bb500673065023100a7c4e6e41abc1ad502ff08967ed3170319e557886dfd268110000e27cd6ffc1a9ef99d777d602a920cfeb25074fc241f0230099fc8bf64039966af0d5768fdc8d148cb7f92a380e07a2815f4578b382de27fd8a198d60ecceb4bc0bdd02e4c3f02e80302047c435bb500673065023003d996684a7a787e32aacab8a9e7b38ed188255b92c7f2ccc4444a1cc3ef26ef482ef6e2b35b485eb18140f4fbfbf813023100986fa52ddb0eb25b3b8a395da22d08417faa7608bc65d51cb4bf14dd0ecc1630430c1501ece1d8667ebbf386cfcb73010302047c435bb500683066023100b7ab7e9fc98cd35665766c6cb110e806fb25b73893d24afb6e5f021f4e50a0ad8a4281272aab14f97350ebb114225ef7023100bacfd320be2edbf096eec194214655378e4e290f95bcebdfed61ed50735b5e6147899b45124d7acb7d8f45ba7a5144370302047c435bb50067306502300146e58fb06e0be8cdad51b8c2f5d016725f17c769f21dd5123dd9054001c642a57d709ed78edf1c5605e81727fac101023100fbacef99a7aebc0b476600c7d3a2c818053dabb10540e02ac72ccb70cea99dd81dce0cde7439b7505e3490b2ae2af9e30302047c435bb500673065023100c6db0702599056e961fd4c789578cac11f97b74e06fad9171c6441a9ba93dbafd394699dec01421cdc32a94cf4fbf95d023003a940042bbb0496fb2fd1fce76a0e3e1e21d8e8cc00affb185b24dda730ed8c6728fd4e8e1d7da6b068df6bd16ba0980302047c435bb500663064023046e709c1144ca688227d709d5142f7a3c8050846183be4596a0e7c043244389dc9f12dad5e2fb9c080548889ee39679d0230114e27efb23165477c7b61327548724b8919653d593d47fa2f6ff210e3fcbaeead4d746224c3ff7f2047cb0b8643b8e60302047c435bb500683066023100cb600067451304636353f2a422a31e305eea91de311ae6222ce9b195bfd8c5c017b94b574f738cdeeb5ef98b13f96eb8023100a11932806a0eb35e5a10f6857229cf7c5905bae25aade0d8a92b944b3686fc140bb9edc7b5b2bb968466ca181fc125360302047c435bb50066306402300c1fcf43a667d94f2d6b910f0c3e104f88de011cbc8b2983fa2babc228c4b9bbf4b211d3c2701170b89fe090b3549b5c0230617409906c7bd7ec98c6cfe817ab2adcb0ec20e3931d3b6a3e59b2bfc6e83f264d5d4d60168ab162581faff3b58a05190302047c435bb5006630640230604a4424d6720abfee834530d269d3270ac43174a942100e0d6c35cb26f9e19b2095b361d1253c0d39b7c8257fc8c0090230642357cde16b1f86d4ce979fb2844fc1bd9679e4a92cad71ad9438f9b16df0845a292d0d5f0c11161240d7e008f8796d0302047c435bb5006630640230228d54f6599ba3ce47f4e0fc94f5399528da2e91a1c6f01534307d8e8f8c731d7cc05a169ff283aaef22973444c156ee023043fa67c718230ce3e27e6bec548182bf5a75718746ba14f9c6b7e53f4b5023b1259bbf1c66fe284ca2ea365e59a20c210302047c435bb500673065023034ad6e83ec955203367b795e745dc1cbf76919e88cb36ee88dc320b7f51b8352ddfa243b14a515526cafa01d44130fff023100db50ecd3dc4ef6e16785a89e66e60fc0522d104f7bdf1a1138cb4baa5be0aec941d9bdf051f7dd4d09316d2e9ca88b7c0302047c435bb500683066023100cae29a892c907b5d833fe1f34349c7c9b159285a5f6df7dd3df4bcbb03a0f54433b62862c45acfd13d951d0b61456b79023100be0c1baee99c73eb2419b682ceef55a428009fd5ec82011e3f9a19dbec0ab67fd71af0a1ee0902aeb050a291059b2ebc0302047c435bb500683066023100879430b6cbc79faa24c0a9a85ad627e12af64102073060ddbcf4ba8eadd18b9e419dd34041847acb64998d2954816ac1023100d6659654263366d2752e3c221a7688c536d50530ffbeda95aa4da89a1155711e9261ca602c6642a1fb6f1214b5b223fb0302047c435bb500673065023044ef627d948067926f2b066cc618e5648bf8d9015dcf37952042063ce7587a5a62ad53940c2ec9ccd117d039b0e57196023100f7be5e9591a2c9fbdec50a3fa746fdd26d1090ecc77a4193162a39c75855321ddcfff3f9ba21486ab855ceceb044a2b30302047c435bb500683066023100a4658b73f50bbfd1d722de1b28a3b1b882f4abc970ce722b65fef0f318315cde0187a3b452479dd67f83e63b8bcea84c023100cc73a95d01a2eaa938363d1753c8f2854f7dd7b99510352c922d67e20a1b20006108b6ef1e4b0ff1154a32d9eb4396700302047c435bb50066306402301126f562ac7e684ce1c79a2a70e75b47ba1e71b035ac7625cfad66d735896dea53fa74c23d4bd8369edee68893004ec602300e501aaeb04f98e12bab4d44e31e069c0f6fe2e54d7a4bd5fac658f4770ca026de1bd507acd678c04bb3ef8be2af245c0302047c435bb5006630640230120ad123b716d5456128886ad5f8ea612eff12d07a7d8ce9ff7dbde8fe74b6d1490d008de0185939a7329a40a78a4bbf023069517ad74b40aef360774e6f0c922c664522a46d7c0d1cd0d6aeea842bd237f390c3907a5fd49ba2161bbc93bcbf098f0302047c435bb500683066023100a016beaf44ed982d8d1d350716b7ed2a73fc8772274944a10d2ba38e46a850b1be926d675978feb11a7e1db081efb98902310093751922c5ca1e501b36e9b91812ad51dbb2b32f8bcce35a83d7f883b3c692a8542a88ac081cc348b4e03ecb8987ba4b0302047c435bb50068306602310083fb4e5569a0f1130c8524197dbfa1f53e34074e0d51033bc2c097b1a6d022e3fe586af47f7a53eb7a4b50ab86e702ba023100d5f64b5cecf30048f6685fda5e7d1e2a82163026de60cc20d1fcc7f100c47970c6d86cd0e152753d72ca019c14c8f2a70302047c435bb50067306502300266d93e63dd98309ae1e3e13571580bdd6f391c2532ce26ae541616002ba38eabc6109d9b0bc62bda5fd82e8a1517730231008884b2ba99f99c7974f9420d0a384ae8ae2f5d2fa0185eafaffd5ad0319eeed5d9c0591211ccf1fcddbd3788b92a263a0302047c435bb50067306502302c1f2f322740acaed5496b2d9264643716cbd3d4fba4ba883a4934f28ab93056831626b6e5807cbe20ce03bdfec6b32702310091188fb7a38e79d33b5447035a0b511fb99f8058cf6770c4a042de879c52668882246457fb731fcdb8f543eb9bd5cca90302047c435bb500673065023100a8f6bf85c096d05ccee64df37ede85f97c24d26d288ce453ce1f9c9f9eab329fc45e563f3130bc7ebc029abb9712308d0230666b1e02bceb65b27aa7f33987baa9fce3c8da712f84376e6322b3d1ffdea099e14d9f1719827325205f237fec208a9d0302047c435bb50067306502307c0c935879e8e495aefc1bc2407ebf131e3f9f7548f77b6715d84c90275a7b643881bf6ac27f953bf224785929cdaa39023100df86bb1b1e5ea111cde93a9c68f1405e84ed19ed56a590f9a0cd38abbdd70d73e19bde8a71c5aab80c3a7b4bd39a05fa0302047c435bb50067306502305febabf3f5c0575d2e3b98d3793cdad200612930f064a116fb9f9637d9dc6f3730a9eb6b87c219addeb83792c1251f30023100b0b218498d8060b7500693801f8ec474aded8eae29fe4eb978f85bd95fcf43d6063402e7d09f5ac0af6b7af1a1ad30eb0302047c435bb50066306402301b362d7a8aaa34cbe745e3c5e04970a0a3cde10000bdc685deb8d63eb9690c8db5f69f5f14e71f19df1b4fdbcdaef1f10230402b87a1b5a7539ee9263c7c6f665200c1dd078adedaba13c77c94687eb1f29d53f689e8d8af7beacd9350a5005980610302047c435bb500683066023100f19a1bb2d1322132c3bddf9722ceca8ca9adfb68e4046ff67f8e53c9aa4ed55223e8b709333ee610b05426cae62ab22b02310088b97202b93b5bf8cae72410e8fea652895d0c2281cfcf90e3db693ee054c1aa1b72ced8df400caea561242f43f419160302047c435bb5006830660231009c56e40c2b0214a1b5982107575c92edd59e6dcfc583e350bbbf266109555d9eb7d0e356cfbb45c8fc6e8962e51cf70202310099b85381c60eb15a27c7a9e3d58fd32e92f788aa72892e32ad11059b45bf0040abe978e79a9f4366b0a874de631ecf950302047c435bb50068306602310089c70474db0cf5bc9af7ddf8982bc0543ce052c0548bfdc36a956c8afb14be3c11aa332fe6ace30b49f9d560ea55a569023100dc9219536b20c4ae7b666ffa72348542c018bda51283d9bab31962d070a0ae1ea8af0f935f9f92e8d038cbbb2bf6e3fd0302047c435bb5006830660231008d0b74dfd29bc1662f2f44096c7e9564b5354d097101ef27d8a435d4eead89908281435ede4efce3e7f1f997eb9378e6023100c16294371428a016ad5b4092616eb7c3b5661379eb3fe0df7fa81508c65843a0a71218570788f6752966cf1e0f8aeb8d0302047c435bb5006730650230155a21c6087c363094a9ae8775edcd6bf4bbd51e8b324da655baeb9d05256347d7da23bcaacbfb72d83746d61a9fb59a023100c62eca35846f5af9538c4c60f782ddf35931c3c2a55161e8b3204cf5ced45325a8ecd775505857d8bf4271fb0d726add0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008f06dc633b4a149a0aee0eaa7bdd872bfb23403ceec94721c8197ee17f5b815740586a726b3a5ad70ee07391fa0ea3f4023100f46f9a0b34049a222b20e535fb1e29c34f796fb10a92e844fbbbc9ae75021c94c8a98dca42658ea54d37252699a1f8e40302047c435bb50067306502301878ea160920fa62d2b2c150dbe182334b3897dfed0b26b1ae54e1cea196c00daa3df2a679da5124deae2d47f4437ee5023100bd751bd47a4815f0df1060840cc16eeca645665fc35eafac05c4fe80b2ffc05494bd6cfb5536cc1cc8f2b9c0cdcdfd750302047c435bb500683066023100b267393747a1f4b8696fa31a9e3a0a35124babdec2f1dbd6eb086794c9902e42775fa5456334687f0e1e7f7bc89ecd09023100cb2ff35f3375cee11c58ffb5bd4333cc570267cbe5544e0388a024c0bd4bb72f30b1b717d28ce1962629f410bcf2f4bf0302047c435bb500683066023100d16f3826136ac9d33c0dbd573d69045139fc7591129b1cf5ca15b5a87038656abe80334a8c6fa4a17ebeb98c63372286023100f3a331489c3f3b71b21e390c9339f5545e8a71c13e688412df2e792ddebd38d321b39071bbfa7f827fad821276f58ae80302047c435bb500673065023100aabacbb033d976c279c27a4367765ac2620de931b4e0d48ab78f831675d958801794d4b724639d47cbe81cb9a3926a010230235619b987cd32540dc61f1d2100a6b348fda974ee24497906f6012d4c2dbe1fb3b50d2ee69d0011a3fedfe2263850480302047c435bb500673065023100e016c3468c874198166952b0d8f60f8646ed452c19e74d3b5526969eb91ad0fffda024fc98cf8979fbe8bb0e961aacca023062f3c85924895c80a14dc3f5f46f06d208eb8115b70ce03b43a56965e46fb5931c3e0f4d52f7e99a3bc403e9db64c09b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310089fc86568b59a26b807b5fd6e917f4cd0a1f3ddf6481887da0b3e472977cdfab0c1f8120eb33b19bba76281f7388df09023100cb9efe90eaf7df9ac01407286eea1c62cf61a15da380ca2f59d981ae4dd23b9f3d15f5285318a0e3ad6c2d57fe9eb5c30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cb96ad8ea86e6055820930868caef3828dc0119f348d96eb18d3e07b002a2c5e21d841235ae63aa21f65d52a037b4747023100ae813514c8ebd6a7258ed3da92bc0a6469dbb3b9d10e434d872e700d533fee5149236723297479ef288f24b0a7fe76950302047c435bb500683066023100943fb3cf28485e9dbbf6ce45c8ca8a6c65dfda080542a6ad47d5004a7a0d09d3b73d057e0a1eccd1f167b38bcc9818ed0231009e0102ded6d7d95e89816b2654149f7d93f4e440517c92b99593c35226244d90f55969154a934584c30a4a0b29a557270302047c435bb500673065023100b5db80392b8ebd7cfbc66f3075fb7e3091da75279d9dfe2ff303686b42e48788542416877aa4f4785b4738defe808a1c02305a16093c51a40f30a154fc29d508fefa66df51547927aa67a91af224863a4085a6b8db3ebd9d3dca299bef4d8f6a296e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023020b273a22ff7a3b3fcda6b9e03704919e5e2880721a45aa4df30693ec89c370da3cd4bbcc088d9984b543fb1ba04d335023026ff5362c1a1a53fe0a4f3c9ba148a86edc7794f87dca35f7bea4878ec0d793ae9194d6fdf0bf4375fd3a9c1e54fb40b0302047c435bb500673065023100fe8370fb5cff5190659b2728d8cce88cbda42ab196a4124e5056601303e89517fa1fd8ac8ce75217f87f518685d57bc40230308bde9c0fc1e43716cd9f52d5013db3c647a5ae886b491b90e2dae6dac96aeffba70e1914bc8c980d172fe350700b4e0302047c435bb500683066023100facdc81148186f3ee265e2d826613eac09cb1e6f294cb68b60735db9db300e7fdc171ed699d2e613c36c6d7fd1a544f0023100c5ce5b950c6ea0614dc7a16d775268c0cbf73ba9011cc9d8e53b05ff7179b63410557432db07ab94d9d24269b01fc7dc0302047c435bb500683066023100dab77a77718c31cec519d7538600f9c521ec78275e7fb2fc3be594b03c4eb8c337501dc2efb3d7c9e4b1e571e57fda9b02310080ad5e6af782fd4739723e27abc5a5c19e2c7af7afcec7a06976ff42f5b12b0bbd0673be97c261edfacc1243334da48c0302047c435bb50067306502300e2ea938c72b8c8052e0d62f8dae0d0472cd33f95684503eca665bce12bd7600cf3b7bf877b7c69f586c0021c409231a0231009e04919793ed825358940e3f00de04108917cd91fff6904f2f77a303acd778ed8df00b74f437a7af5ae035ba21ad2b4f0302047c435bb50067306502306c357d314ae2e64d5ce1db7a08cf9bc8d0510df8cf56a9acc8edc9b3094bf378236d0552d9c30baefaf1f8ddc8e9d0380231009f1f4c33f1983a7f896a9e766997bb874fd1e0bcec002bc37067eff9254a5325e74c3caf508a8bfc6202ed5fc0cba0d00302047c435bb500673065023041325337c302e847d67c98232d4a868eea881007e107d4c62f4a7c9fbbead062079800f51ff9bc53301fbd0506413028023100d3c034582192dd26692e8eade97d89bbacc207b98b677ad88c3111a102dc0437d55d9f8b3bee11e4ddd306b3d5d4b6930302047c435bb500663064023077866dd0a33f13bee1de0ff67c910c9478f8c3ee7bd2cc42b4c6325748026d91d7264e4a1cf9a5fd550a344b209d96a602304e9a59375a9b00f0a099ef6c1bee5ff1fb0fbeb1b19de8ed214c86c199dd9fcd6f6f57e83cea48141527ab4ebb2d60d60302047c435bb50066306402302d13728dba4abd02365d80a8c4d007add33b8e741493acd03205b1f98ccae3e9f5207f66846f364325187c54e1940ba002301263bb3112a03b24f9fa4de92457bc67eac241b27077589f54b88030f44c5445dc6a422b2ac50d75150b86c42e45d5c50302047c435bb500673065023018155e5066aad3b27e3feeef597bccb8afd140642013447cb2fd3ef3cb062295b7af3d99cf66a8d5f2f15976d7ef0630023100af9d927b23dde605461b2b07873d02876f96e03426b84dbc44b8590eac836dd890f244a148da7b8f39187932bbe8771d0302047c435bb500673065023000a80d7b539df141d0d0c31e9bbe4bd5580eeb2aeceb6bf054b05be1804f3362a7941d71eb4bbed9a5fcc667a6526447023100a3eb38e0c1b90442d6830260fd3c95783cdca34cc2e2c7a626c52ff277ede59736533f2b760341869fed302a7c393dd80302047c435bb500673065023100e2188d5392c0dec825b17b48102d793cef0398e325f9504a3165ef8083edfada293031c53e87438c52a2258c123eda9902304a4d86eddfab5268eb2e6436353873ba6b09c50a89bba6363487e9629a7bcfdfeb8d5337e4c3ce0dad3154c09e7ea8320302047c435bb500673065023056a7e1be41a0b05407ba21cfe78dccf42bf10de1646418470417cb2afae6504b23a11af3175db1998802b88c0b613fe50231008dd3656bb2ea1f637ee760c01d9cea71fced3ada7c711486f8fef022a7d1e17600fc700132266dd281297f8eb7534de90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100977192d9873f9029b98ffaab0675a98d24ae78231315d41bbaca9891f63637b1d8e3ddb6efffa0354ad1ebff3fd5077d023024021a08416712f0cc65e49a81717bb7767fe96b86fee4578f1ce7a8a20bb120efa27ee7ef73c572dd95614e02ae3a8a0302047c435bb5006830660231008eecc660c15b1be98968873dbb5d09f5d9e9dbef338a0aafca5077eca93d6831ad62d1928f3debef80c14dd272492ef9023100e950673458780cc694a3affc726e558ad8b9f95e85eefcb1f32d78fcf57ab13b833aa4c6965177c8fce3f3726140ba180302047c435bb500673065023100dcb0db76b7d07599f08d7d89b3e6df738c2ffd1740693453eb3bab544f71a6a85fc8a50349c42885fb0f488dd43d8d6c0230058c8cceddc2b54378530bd2a7161011bb349b2c18008ca087dcc50ac5134bb83578762aa20b1fdc260f976a7d815e6c0302047c435bb500673065023019889ab22e8e67c15e3179c6720fd84d212a20bdae254a98b79a6f0dda05b11a0fe0e043366b703352dfc5cdf29c46c8023100d6bf11487a7a2c9483998741b373971ae0639420b4860f4ef9491edf67f308c5f6731adcefd833029fca93c021b813a30302047c435bb500683066023100e54d627ee80497e52b83ba03b4f39f62756b7cd7ab688a5d88d440ab09aaf4b2e26bc76b2f0b9d9ff6ae8289f8b856d4023100c3ebe58594e70b45aded33306ad9ebdd2d705940bc241bf8439187300557990675936bc1cea1344fb43bed7085e23efd0302047c435bb500683066023100fdb438288e49b1c9e94e3a887eb78643c04461b2580318b7ad40b8e29a77b972611bc3e138534fd5d5e0730b5122cdae023100f284071769b4c8da64c7844a920972dc8c72cd0ce4068ebdb36d0547c5c8ac47f4b75717c2775202f4cf8b0a21e452170302047c435bb500663064023037bb70910d094d822b28f9f7a1c6a34f49a78fd2a6553ce1e9e4226bfaf6d4acebb827d692da8b3680b8bf458a2ef041023025cf267aa419d510e703c9dfb339fb2a819c9fa3223d6aee0d26a6ae9e6443823127f9111f69b2937b2aaeb25076208e0302047c435bb500683066023100a364e761a76c39bbdcb1a1254fe26478335c8f2dc1a6a58445073d39cc429ed6b5b80b5e632523a733603e24d317bceb023100c49daaf6832867dc0a09c7607d1e6750547830622968ebcee579e92cb6a31f3013fc03e3aa0836900483b413e3e3f0dd0302047c435bb500673065023100f1fa956a466d5b6d6af08d740bd0805a2bfbbcbdd100ea93b55de471c65c9f9ea04b7cf3f15c9d0152cad684a6a56cd202300af43225f5560bb1fad51a34238a158a8978cf46620e6c9d3c0e9fe1a92da4885dabf21d68ecd62ca6fb9769c5ecbaa30302047c435bb5006730650230024743c6e993bc2cf380ea7a4866b74589f5c5280bd9007143b4a83f401d4804209386d0fbece98efda266aba22b173e023100b97c41da6c0e036e63d4c59d5156d78e2a6c940bf2f801e697004b024cea26b153361aab55eb26628bca666a73cd3e870302047c435bb500683066023100bca0228a5af6be337bd5210aa2eefa26203e4ee680488492646b7376f787cbcbd403cba3751b06cb43e7bc95e3fbb818023100ce538f7510f85ce995e5ace9bc9f0964a24b94e51f0ba69dee230d91e76c21d35df0863789c2ffad135d521a1de3c93b0302047c435bb50067306502300b32f4f07373ba7b89de573c64997550358f78bad66e086387db74b4df1d5c13ed987649ab47ab84f3953f2e9ff1fd8c02310087d1c9381e46085d32821860e4b5d26b9e342fe5f24d4b7eb555edb0347343bb7568195077bb83cacd5029a580ded3140302047c435bb500683066023100934db50ff28e62930e7fbbf8dacacd604b1fa98885efa37830dc350c9a021714fb53fe71ac0019a6681ccdebadeaf6af02310083912d2ce4aef364de4e97780aa96a6228a490ef83d6d926524b4474d1010283095453b0b94a82c95f76f304cf425f1c0302047c435bb5006730650230038031db7c596716363a125064e2fba2871005654ca36eb1483478b8ae7a5131f4bdaff7b7349549a29b8ae1bb6aaa2402310090a84d102e41e8902ecc9735da458c3a0b8c949888a8e50809971430c1b8111b84b1adc2a0bf17613a8aabcebf68526f0302047c435bb50067306502310099322202fc6a79aa2ccd1e3312cc7a3aafb6131dcb7f046419f576e37446031ece1cd7bb6b0fcc60dc4faa037a6f5db002306f7490e1490332ccaf5c843cd86b5dcdc19cfb03e4c9368ba9b3b497549178df128868f6484cd0f13be747158fdddc5b0302047c435bb500683066023100f64bb482ec84dcaa13804dbb741d07c58e20dd90fd8ee47a10d24363e7464d0128d035a522674c70311802a06424b62b023100a80621ade8c62f45f80651b86a0c28a5fc0d7325d5025fcdb2e6c4243bc909d5dfead0a3732f68eed58dc9021b4f91bc0302047c435bb50066306402307af26319ce78ee24579ddc48c12cfedc503ac9e5a48fb92a2dbe20d4499dee4824abb7c673d1c921c8e36f7a8c80356202304239b0ec5dd8f15898f87690e064fa68e6e378cbe4daffd226eefa2d03073eced9db95bffc671fdbf14b7cce18caf4380302047c435bb5006730650230679962502c695ee282593377bfb8a3d714abee221459e300d719d5c00ac2f568e9d728b7211d73b3626dc41bbe81c4f5023100cb9d5e3e0212f25f55e15b8e032c66ebc9ea4cd90c409e8afaae15ca54e5a43025b967744afe101ac8fb1e1a920f88d40302047c435bb5006630640230379df856376a7dd04ec1aa2382b3d6fd079cf473a68f5742b66022c7f4f5c999567724dbce842427186c90ffe8ef8fc30230563f935a8130fc7c6ba4ca6b8ef9570d38d3940ba14507cfde5ae0c896496a7e6fe3249530da7b03184ffa9f85556f9c0302047c435bb5006730650230787b82433af167f078cb1dc13ba598812a2d3d4b6c40dc66f063dcd0860ab0f156ea07be12ba3a31c7b8776b2f5a7cc0023100f642cf3d3c0b55d4992c3d47a6a6109e9cac8c02802495892bb4ddbad89ce0dbac6e68e695b9bff7b048a62c624073d10302047c435bb50067306502304b5365092a682ec8e517432eb1917c86ed7ffa4ea784d4122023a13be235b2fb1c4747822ce30838c1325aa58aa805cb023100fa856fcf30dc18b613c35bedc3bd0b779b078c5eef39e339ae9ff15406062eaf4ad249878d55e19e9ac89d651209ef130302047c435bb500683066023100b93cbc3b0bc17d7e8f4faa8e47308554a6229b7a1536ef3cbdcc4344968a82d8f1f3d2c1edf66b427d16af1087bf7971023100aa1af59d09210ec4418d1afe918de974a580c3b17c75a1d690683eb3ff63cf9115d1b0b7cea51fe9ea20f9b4262c167e0302047c435bb5006630640230538a0ea688c892faaefd4c6ab4278f3c4e035666cbe8ec352b64b3818f588343618706f8dffc94af84a6009d1bbf89ff023025392b1e7dbaa1481aa4f89f9e7fb5348a7a63be81f56c7c2046a2d664e00445f596a2553e32dfd1156a4eac69f8d0e30302047c435bb500673065023100925436bf3743d63600258f451c336b578e3309266f11d7905f8e82b235e4fd944bbf5001b64b3bd37897dc9ff207fa320230398892c0e5b79394e093bd7586546bea55de518121b4eedf1017b275d4b3f6b26c80f62ad34a206a67b41c2d7084dc8a0302047c435bb500683066023100bbb3cd1a1bcaff5a08027b756d8398778ea9657434779e0ca181b2108c05215ac917de564b50a2512634263b338fe2910231008c48e88ed70da3ff4bdf92a27938cd6bed4de3360db6fb4339cf0cb389cfa47a4f0da37c0e33c78e71cdebaf6fbd09a10302047c435bb50065306302302a843ecd9d01bda638bac0e4148160f7492ba5fe0ef4a86a08dd786c483193efc1ceb367ca550cea03255617e52f786c022f547623854ae9e522d789a45fb26e646ec153aac496f08a6a89362bdb0dd38a5f0f7b4bdab50ef6ef5afd4b19f0cde70302047c435bb50068306602310097ff8cffee0656864aa7b0e3b8eeaae12aaed03126c01722b205ac061b70d3e409dcf773e10d0b162dd2f0d01a246489023100c7d3817ae91f11942a5417bc55c87ea9822bd663d3c4d00144ebe416371cc0dacf81587c8cee5224378a2daa599fe8a70302047c435bb5006730650230034b899219ab11c09830c3484a77e9fc97d945d92e27eb564fb93e4af8ca0017173dd3c8d48da0700d100667d657568f023100adfa9cd29460c1db93490befa769e68d9066c95d547ce4cd20e57a2306e41f099946a22091ab204c52becc8f661c8f280302047c435bb50066306402304a8760813b470fc613b9f0e1681a8a2c310741e23b2c5c1f81f233a407253bb8a71e33e17791c19f765b58fadb7127fe02302a0129801a10770b6100896d4e78105ef3d7a6827506958132577405fa472e322db68c73b9eb0ed7c163ee770d948fef0302047c435bb500683066023100a57297edf00ba494a3ad5e3fc70ad5199f9cb6466f4045e4cdf990f883690d687da0d96f82b57a8fc7ac1fe0a0eda3dc02310098f55d0f0e4562687a92f0cce546c359e562b1b628edcbe1ddef02c2f0e95d4d02da48ec5539261aae48192d519c02f90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023051c453c9cde1b94389b00c3b45c37b05941fc996a929eacd4b10e69556e113bce891cef3465975fadad9465d83719f41023100e604b6466c6734ab1b1de5b6ba3fd5809d74562529afbc3505644fe1951479136fad9f0867f6947af454972b7e4893ac0302047c435bb50067306502305f4c00f6814c9bf0651ac31ba904b9cc9c60c6b378dd7092716162b5b06de5b6bbd0278ec18aa85bae6172eaf5a402ca02310089a08a3a7fde2566ad3b547fb902d2367577002f889284dfb15b4429874fc780485246a6c625c5f619e6034124890c3d0302047c435bb500683066023100f58ebfe40d5bc6c1a7c5a9c6e95ec7aa0959a0449927be9d512196c2cc04f18d7b1eb35cb08fcdbcc5a282f48b48c47e023100b774f602651ba8417796cf8c2b05034f081fc105ab43d788344379f824ecada832c3f1da92871e10b91471887dd9238d0302047c435bb500683066023100c073e78b061b2f64dec47fe7976b2dec8e6328e22d2fae7da15a3133c42fcede7f79a0636c9b8f0f331bec1f5016eac6023100e6745bf0cbef13dfede0a70a2717c781197b6780bf26f290bfaec670d92eaecb71cd8377388baf009d4f7ea85d850d7e0302047c435bb500683066023100bdc1182bf9161033595f7a93aa600618ab1975b438165af7ffdf624bce1776acf560cac23d26ab0068285d38991d0798023100e905a12d2c8da378c649db9aa9e26d9d6c734964d746513b921d47ff79b17c313d9b507d575c1f6817c51d9076ea476c0302047c435bb50068306602310096e70fd5e548cbf985d08089268659bede2cc530d2d60cd94bafb7f24735f9ab82bbec595d27c06dfec81c5d43f039da023100d2de7c21ed1bb955978a63dda257eaea47c6d24a47a4322b6b6864c3c900f1aff47c84b6af58ea896c87f786baafd2c50302047c435bb500673065023100c24ffde84285f62b262a31c4e54a52051724f02d3bcb5937bd182871e5551ccc739036a5adf07a183cf05a0b40a57e370230581076d24515893fcbb96a52103f99a6d68fd4744ccb630c185146a24f8a4c54df3796b3cb0f1bb3fd036af069bbeb800302047c435bb5006730650230034c26f16d150501110fc67c355fc0f5f154f482b7914e9c0e5ac8bf4212642067b6f85d4ee98fe4287113050d06d52a023100dd96be52533b61aeccf700ba48c123cd918faaf8ca02175d742f5d64553a62b438c4e67333e1e22a9912f919ea1264840302047c435bb500683066023100bb507d112582c64093e84484d39f2c0fe8d90723eb769c0df19b817581f590ee5be7a1d739a8b965999eef83b908983e023100df2f0c618717a983aeee3a1454a24319df5571ea80e82f553690fde1449ce99d4ca6a4da6e63e49c3a08c0dbae9828c50302047c435bb500683066023100ed17a2081db02bd1761dd4a07a231d2e80ef1922dffb231586057610f1cb6cb7b3441392643e56508509756f9c2cd370023100da84eca3eaaeee9167a8a019912a69bece38cb21def4f03f564b0f6206233eb1e2e558594610c591755d4b6a3e880cdd0302047c435bb50066306402302167cea182081ebce5b89b084853caa2d4249736606ca2e612ca9e4c74f114c2b184b9b1d2931bc949048363b9fe34cc023063277830e5c3283044b3fa0ef72e23da59c9a01a55a7e4f9959709eb27886ef8048d7537105871e16ec8597d0712858a0302047c435bb5006630640230790d871f82fd9b2e4131248f7620c1a1acc2c8b4d4d55688d16f010dd47aeb8ac5b14e0b72d6862bbbb370445c5c7de9023062f7dada5e3b74883c3d1535934c0569be89ed3c4bbcdb864376b163455eb24fe26bae63a7da0a21dcdeb8237773efd80302047c435bb50067306502307d81335142e5dafc9a806586c480d37f686ad9623c0f564b72871fee5df2465c3ba1ddcda55755640b8e2008cb9bee75023100f08023cc81ebcc38e4fb9805152db55f679f9be5020136107a81ec2a9e47b2a542c6a2a55f67fe8b304da6739f890e3b0302047c435bb5006730650231008facd6a252ac661e9c0e7aaa86477d72616b523ee41e7e044c3b797007fa94630e4a84edd258b03daf7141829ee6fa720230513dda0837e02c8b3e387eed09a2d881fbd15971423934d8f918c8cde0f0240b5a9592315afa265ba8acdc108ee35d650302047c435bb5006830660231009cb698d072de23e7b3e3f43b385439d3d898fd3da9bf7e3cbb004d94eb3de89eb596d44afa82d78486a29063d6be2c65023100d956be4b26bc4921582f1cd369622f5475e29fa76bb3b71305b20bb20d0b1d907e469f2e39828dfabb60f60f0492bf640302047c435bb500673065023100a85f50e4ec8e58dd9a27a0e2e97e4f8d10e601c8ab03e43da7b3e41f20fd9a26fcf8122236edf55dcbc557eeceb297b802304424793e5bd131069bbea36576515cd1753712c28c8db1d77695e977eefd73f891de7ecda6c2a26d07e67abd11323e4f0302047c435bb500683066023100a063a5e08243b9c9d50bf17a55befbd53a02858bb0204a86abb16090a5e85e6a9cdba2e7c921ae114484d9215127aef702310099f56082337c8a246e2fe404004694bfef17bb6e2d41d4f1458718a2fbf4f3d51f7f82866ba6dab636797db4738c8cc20302047c435bb500673065023073622fa849b0c9d48f83ba412299d75d1f6ea2e7cc1571c950faf7336c2f62dcc0861e6bccb3083e9f16ff33bb6edbd3023100f825267fa513824503ac3b38ee5b92dc43033c461b89f586358e54c9a192808d9d7cca6cd21db0d6e17e28597ec0fc5b0302047c435bb50067306502310090f78ed1b8eaa8d3d96d438573083e5d074f30bf332ce9854d651008ac0f4f6bf61ad0063b1b798a4c38835931066a0102304790b1c5b44d4665cfe2a335d7eb989f6cf126613e38eccc1aa058f2a45594ddd870061c37ecf1cd8b84d28ed99f4db30302047c435bb500673065023100b6dc85bd8cd41d0501e7d87b92a957d6812b4952136281591315900b0d5e7b85947d1a9301956f34245721371b066ea9023057788df2657675b0e6412fdf038fa07b834fbd32578789b2fae7a9b3a3ae09c6d452622697c89a69fda0e098b5a072cf0302047c435bb500683066023100e9f1d65186ff611ec7c9d9778b74acc97df90f454fc279f272a94296e3e776032cd9afb9a7b2677b6c7add46ad231ea0023100fe1d748e6aecd9ec633baa5c2071e10de7f33e419eba50e1d30f449dc8a7e668b83a5905792d3850b8e7f650471b3e310302047c435bb50066306402301b6baf52cbb8414823780e5d4eff535aad47713b4ac525bdb2db207ccd5cced623fa842a537ffe2171c2a3aae18db3d4023069a14d30b5e97ed07d43b2ec364188d4c50f7b256444107a80ec7f38306605802344ba16c268bddf9748df8d6b6aaa7c0302047c435bb500683066023100ce9cb6f80a74ef3c20bd979d71b770618b9177329a9787a02e08b03a7ac8d1fa16562773aceb73dd7cd84cd393ced073023100eb28149e01cf6e9c74d152b4827f9002a2f7f74e76eefd3a5ef71b1fe72eb80fe30e5d3af097589dc2579b3664e8bb130302047c435bb500673065023100d006327924c398db0c7bf4e75ed8e66be625d5a33f2e8b22e3d4ca3e40ea686b80d6f66ed97b3c587eb704c38680f241023014d125fd2417136094076d0705d0eed0a36ae2519c8b0e14d1b26e3ce9d6630e892cb24d537729404e151e0e33488e5c0302047c435bb5006730650230312014c86fbbb72993bbfb16efc2ca058c78cc51eff00eaa69b3c4e2b71b593717466544783055b913465ce89ed78bab023100f9dd3cc0f831320399b4b6c93daa0fe0b6a541644ce891170f51a3d37382f742f28f3fabea4b51755493c98dacc6e85f0302047c435bb5006730650231008c2403cf54b75f3310ba7a4eacbb81f9db76e68941305fc1d382409b6a9bd3d2a1472e9d83ab36065359c7be9025563d0230148ed9e44cd6f263142510daef92ba9d9b086aedbadf799e0c30697ab8c141e2afe3c82e1c8a406175cdda836f3598ab0302047c435bb500683066023100acb7d407ffc70644fed1f05ece1f036f407d370007eb837cbd38dd68c153bafa56911594dd85dcb8bb2e30d66e141d8f023100f46a631ce25b511bf1d93470a7def0b77cb5cf3ca9c6fe9ef65aff1eefcff100b1dc02a5ef50a7400f7bfed66ae71cf10302047c435bb5006730650231008eff85d58df7759a26cce309fe2b2869cdbdf5bf1002c83ae0602dc2a91c9a3b644048ba3090673457dd931a6cbc7d1002305bf5cedd5188a5dac45aae9daab7a7bf9867615e5da66257e8414acacb36483058439fa66666581e030978ad36d1ae890302047c435bb500673065023100f8238baacf10acb6bee3f4e19d0b275561c6a9cf68f8b0cf8a0f6e391039308d8e70c358f83904ee05bd3050805402f402303f35be8c383677bb82e7e8e81ba4af57eabfd800066c5ca4aac69c1ad969f74c0c7dc34c44d7405b7f83f8a77228c12b0302047c435bb50066306402302881218545f3b0ebf5ed009d9675af2a738b29ed3dc232b1b051b23daf9c42a042a5bde656ea345f84b0308b931fbadd02304bf0649fb3b098e2b3894aaad2f8af607de9d4e1155bb6cc6ab88e01d4d843cde4ec1cfe917a03a5aa89e3538961d1bb0302047c435bb50066306402306c0e912a1b30f8820ff7fab0573c09968dc0cf1426a9d69f52bcf01cec940d77deb9e90a451f0cad7a319ba5779697bb02305363fe59e21f195082f73872103a5c9845a32f2c4108fbcaa668ed7c6019abf8d28b845bba06c13cefca37224a853b3c0302047c435bb500663064023058cb68011a8f5baa3c0e1665249f338940668c5f39e49d6a8a2eaf3bede14766cabff909353aa86d691b5681c663068a023058723a4f43f74b852128ee2af97b542e0d45a82fd64b3ff198873b107f8e9ebd711508afdc935bc219964bc89dc15aba0302047c435bb500663064023057f1216355ae281a573dfcdaa78f5a90bf90178724e3354677ca8724bcfdc558abaebfa6d45c7b34591cd8fefc803d5b02306d1dcd82c9ee222807fad497c0e0ba422addbf781bbda169a00cef529a5bca66268c19e074223d17d7f0e68673f5a1270302047c435bb500673065023100cb19f9bb97ba654656c4082e4148b5882e613a74ed9a5c30956c95bb9e83d8221e6bc8fdae5dfefefe47427999d74f46023040e53fe7a5185d4347307fb35a4a9ce22da6e666fee2f18853b9a38f735546ad1b78a93f2553211e800286b65d73c2760302047c435bb500663064023023a87d95b0cde9afc64e423c2c32a3d8b17e4f57db57ae86daa6d4dd6df7138db03d9de04a8d9baad9c5650c5dc5ce1c023059565c4409d15fcbbcca87e78c3eaf97c1b0c16de3fd8d692cffa327fdb071d76800ca90da2e23d6b35ea685196d4b810302047c435bb50068306602310087531ffb7448234d65319d59209b2baffb467dfd4695cde5db1409977842e27f97c2b182172041df93366763f0340503023100bd9f0625e1395130fecc375f58020bbe2bdbd9f89d6e2f9bfc1c1cfb5fb0d3258a295a8cd59b924f88499fc292cfaa600302047c435bb50066306402301d76f47146312aac58de01f114ceacde6fb9c1f3e12de1dae2e5fac5cd1efbac67465cdf05c0b3594ecff6e24bd40274023001d5a4694ab7d624b70f3ebd06ec7fd7217fdd77e09571174adcaab250280e13afd5bfeb8dac8f4656a311f246758ae40302047c435bb50066306402301304c114fba598f7249edf32b64383acb35d2057b98e5f9175c5c38ed381d7b146d500cff56ef4ef1056b575a35a40b7023050ca1610c22acca1fbe043b8d150077b5bc66de3f56db5462240e13f516748d48ee1784cadef7efc338f41b48e30c79e0302047c435bb5006730650230565b80abca00845a54958a70b4bb0822949b77056fd07b204d13d1dd70d2c3371ababc0e9a0eba8b7feaf9a22a6766dd02310088c7d1333b110b7bf3914e4230ccba5424e66b3142784281a64f29e3529b1296b5549ee7cda987520120c618e1af25380302047c435bb500683066023100b211c7290b476f030731157d12ab73d802685caa58b84cd3ad024a8226c821253683d480c59cec5e44f392c3b8edf14f023100868bf1ead53d9818e3523ec94d63ae073a98b483e08226cbda2781f5f2c77f6453ea82472d5f55fdb18bb0ffc9c6c58b0302047c435bb50068306602310084da00d646b69e8b6116d8c463c5951224946d357e448290bd859b0227f2a4a4ed641863c700bd3efd9b6c189ab8da2602310083a545f54dd4ef33bfcb23461f1b8a495718e5f5bee345be458a15335b582d233cab6744801548bc6ad6586d31b505320302047c435bb500673065023100a5aa38699cba848675e53e268b19ced62d29b6588f94b336d36ebc6dae4a9288bd2009bdfa1a702bc58668a19b2e652402302d392945ded47614bf227f870f7e7e33ea5e1b049e53f7aa72de2fa3d0a8e73036ef3d652b8e315fe6a95429fea3255c0302047c435bb500673065023018960c6ba1f2389793fc08b684dacf13809d50936cad48e4f4811db4885b47f4889fdc507b07798feae256a9fec035c4023100943a54b88fde80d0a98b93e7ef5034fde77bd7f903663967fb5711ad89630219c0cc33df9209550160e65e06f9f1cff10302047c435bb500663064023100a6391de2b5ca4320240e5c072270782e7e59e07f7541d58d2add6d637191063603d5e6e92c38dce57db5b5a9779a21f5022f671c7b2943c01484314fb9b959179776a08f9357881fe22f4e2b8c82ac8a1f6632ff32aa38e990f7bf63fc7365f4050302047c435bb5006630640230474295deac3ad89529146aebc9dbd27eba8a74cf945683b8c7ef3fe6db46c831ae052b8666c4ea0594e227e3cbbf523b0230158b62069a0df1b8d69d3ea42e333ab995517927834c353ce0448420cd3f71fa5e805a3eb070776f816e3a06137524450302047c435bb500663064023032bc8708baa2a26a21ab22312be362477a2b7fba73fd0293f44cf43ac13e3679c069387f2572f3776aa8379d8595526f023035211d998f5fbb58d98b74a02ac166703621ec4555ae196306dec7a75bbe15aa89dfcfab018d674743f3aeedee50fb150302047c435bb500673065023100bc5c1af80dbee5260f770a2aedb7694aecd0f76219adb0eb069d1d5ed5f54f81bcfbd7b0bf6480f0862b51929a3bcc9f0230328e3ccb03af4585a6fce46839e5f006b1d66e776f51be206784f9bbfdd8690ca736a3fb4b2368b823eb39940964ccef0302047c435bb500683066023100a67572129775e5f61275e4885cb1c2e3ffd9d80a10ea34ab4c59f1ecb173975b9ec56700e456efce2c776dd4f78cdd65023100a706aa35ad03f3693a841c113b9edfc555a972d23cdca9861dc2c8bb880eb77db3e83aa695b3026bc170d16d427fb9830302047c435bb50067306502300999f077a1c7c32208b2ef9f68490cb9f80deb4bdec369ab6a9d63a855c85b6e4971c0a5804d25fb6ccb26b14a0830c4023100e9a1b4d16b67ee8d49ca9e095ec4a7ae821a020180188492a9f0720272654b3916d54a5a5691168eefed76c7e8e7685d0302047c435bb5006830660231008174edfcf92aa5c04719e3875b49637979ac05e4a5a1ad579bc6e20a1b0b7b6d760d5ec47934112ce324a5d520c8d2fc023100d9a840033a5782a6170a5537a8889ceb65458022e24af4c330813837cf19ab510145ee83a06e736a9d270ea8e53574100302047c435bb500683066023100f3d156d644afc9fe4a85d7f963829e50510c85792cddb5abe3a444b77dbcd4d56bd36401ab1cabe5693207956177b438023100b30f3bcd4948591e2ca0ed55dd6b0a461b44486cc674f15ef1cc92775a899ae0971ee0cec48f78ab50c9a0adfae419630302047c435bb5006630640230215e65e8c5ced79ecefbceddcef398db7b4a707677811c7a5a47ceb0530ea1fabc0204407e68123c7e2719ce3c9b0c35023030e6fdb5752dbbd4480493bffa275bf6fa8cfb7babdd385c450441bf7e1ab4db9df330e2179dd587f2efce80f1d5ba000302047c435bb500683066023100e31bfab96a81878d2875d63424fb3c41f2a6ce92703400e64b343b805bd5512a218ae1dfbadf2aaf175f2f62aea93adb023100e69a59639ac24afb72a1400c2862f88c226507bba82d00f099833006df6b1fdeb5186a1f3d670cd8f74d44f98c0e04b30302047c435bb5006730650231009d6ffe23e28192f87025b300cd7c1f8374b5ecceeb8b046ac6ab93f1f23d45f3b62b6a5080a6c39ea98e1806bb0e5c56023060a063f59e5e1c17114a0f7f421191ed7f84eb5a4f2644d176f5d577a48d49845df18ef340c84555e44dde3ed23e2c050302047c435bb500673065023046da957ccd03d3b8d76c35d5dec7e78a7c019582add28e182478d4feb012221dba91e8ad363655ff7d6a004860e5e593023100e86ba707cc5007ec61fec00ddbf61af812be914784a1342f92e35fe51181b96c3eb961308c57779ad14e9abd8e60d6fc0302047c435bb500673065023026d115189f928a77be4f5643f0cae135a3b0c22a54ea3d76e97a2b950cc63b1cbfd13fa8d6eefe211b8f9e74d691c39002310084862aae3a340c40d9713c31289d27817f7a02c0cef245813e7f555c4a8a69ed95833d3b0678be77130e46dc538d123c0302047c435bb5006630640230441b463f52f95f2640c9fbc18740b129128e4d2543ec3c6749227890fee9a981e19ff5d1c98a32ce0ea50f44b116e8340230485f2332b617c8d7b056d952c8bea1ddf5fc854b80527296d09eccc6d9c407643e4c540fa48371323883a1b3bf87d58d0302047c435bb500683066023100f428198436e186867e09b9e02308ed81a811a3a4cf1f68126b38c111c6ce6ebd334ee71ed96b870fda5d1140248f7627023100c0dbb0d4cde7f63125646df89aba21369e155cc1391f9136f3c2c1d859ca0c47f4ee640a96d35912a3fc75474015bb250302047c435bb5006730650231009df569be7c4ff7aa3ece0eeac766117d7997c9a46baf43e0926c10c47401033e0ac4b7f7aecbc412141c2ca3ff4148950230177f8799711bdd7867fb82023110c0ec1fb2ab790caed5a6f49494b7e1e5471061cc55077942b1194d3311d4da7419b30302047c435bb500673065023100e13960032d1bf45e2c9f2267bff856959e2fc9d88b957a7bd74ae5f014e8bd154b01254c0c6176e36198fec6935e367502303f3d8f1dfba80dd04116ec13b2ce74c0f9de6284dd0087f3171c06660e920b1e48364a2646541e76bcdaf56eb807c7a10302047c435bb5006730650231008d49a9f4e09bcee6a10511bb323facb93549e84159dafa93cd5a36d05158fbe7845e364cda9b8c7120669f79591504740230256ecf1fd7e680687669d062228e146d4bd36039d1dd4eccc279628e512d088fddbf2818937bfb2f2f9333d10c1e80290302047c435bb500683066023100ff0f6edb8b8e83a21af22ca8603e8728ca62feed6de1676c0d04dd78c1c86dcfed5c7ee03a26f0eca4b0e256768758af023100e171a4712e3479dd2c4dd9a37af00e6c43a7a773023fb11cb9910f2662f2ceeb476a9ed5e8b0dd4a1dfe17b3f2db51c50302047c435bb500673065023100b8de10efb79c32b6b6eba5eff735a7c3be000c8d4ddad65c5e2563fce091faee502ceafc502c2056c58efb979c42771402304e73533226b6a9b04f511ccb1c37c97ba8ddbf1c60f9f4e5e34c7d2d3acae071825989222369c33fe92d4b492aa0b8360302047c435bb5006730650230304ee83ffdaab3ff272db1e45592c171936368911313102f7fb3db7a922634a9001379b2a4ff2cb054e142229e19b74c023100cf50f59ede2754c2788c13d2555d43dd11ea2bd9f9256e88f6bbd536c3eeb44f0ea2aa73795dd690644b8d760d7e18430302047c435bb500683066023100ddf901c7723877aee848c210de36e64dbd8b65a3d16af87a1ca20aba2ce6e47eb621b15d8e94d9952b89719a1d6fb82c023100e1105a4344831e217b4be043895aa7b5ac430020b311f3ba32b364451ad59b8ba4135cbfc782057003bcacf79bd3a2ae0302047c435bb500683066023100d285408f21aa07184dafdf98ab589b462f6b2f791c6dbcbcf6c616cc0ff9430683f40fd1c968999dd300659e8c881d8b023100d358aa33a2b3003390ae17a8053faadd70bd2f2b1af1a94bcaa34fb32d0bdf32c716267f6428988315977ed4290e0d280302047c435bb50066306402304b8fa5896a07a4aab63dd274d462bee491aa17cdb62d38c763927dc0e73ca6046447771f589d3c87b242c9d80f8f8a3a023038ab17d8349f49abf903d3a3fbd5ec99cb2270cddc5979a8e4fdf9efbbebc1f5ef0a96df494d0ef5df7475856f618add0302047c435bb500673065023100e9f979a04672311796bbda925f135943b9ba76b6e025f8dd82ff0a7ef3ba5fd88ea8b3852943bed961542af635b49ecd023047dc09a69a6a07820d4507a395342b692a563877d5b62abebc56a0a7fd1d2220732213c4d0fc51910ca5d3239d44d95e0302047c435bb500673065023100ff7281483877e8dc83503cf1ca09e438ff24860d009d254c82d82c3699aa262a42ce49e693a8af8d2ca80c255189e828023055dcc1c02b20f453f7aa0a10e2e10b200dcdb90be54a11e8e19e06227d28505c3f67aa0ab115447a9e57685c4ecc9c730302047c435bb50066306402304b83b5ccdb462f24d8fa048ad935a732418055b70fdff22ba6aa930b2e1e2d4100cf94fc941a1557b45f24d77ceb5fcd02303f5bb9ab62b900e43368f74d20197d01ca943bb79f8f958cc2c2dfb13888c4f27d01d0080699abc9ca9ffe7735ea38c90302047c435bb500673065023100ccecbd7c1310627040264423aa94ffbc57fa64f70b7b7a1cebc359cd228f2f88394c836ebf3b0387474f46318d0bc9b70230584823811ab2372dbbfc25fbbc37ade4041e2232e2c4d4785502be74b2b24e17ef867c43a94022c55db6458fe8c4655a0302047c435bb5006730650231008b38df37d9cc3226103a9f99d2f45fd5ad2642098f07c7685d151d43974bc17d6fae13468a192d826bf9e6723664bc9702300d2f7bc46e83fb7a35f509b123117b4248dfeecec5c3b43ca9b4d36a88556969710b586e400b2ecf2c96b6bdf11560640302047c435bb5006730650230383f1e28719c23f3bea7d35ee6ea79b5296df8f2d5c90f242675459fb643129ce982b94a7602e2dfe2c539715680e581023100968fff9b1fdc711ab5bdd20525af8d42a169335b6ec11a9d490c10e1269b28d1fb3974c12aa9abe51400d9d32e16a5b80302047c435bb500673065023100840a964b60ef39529e82431e832dcb525c056d43d163ab63430a2ba1e86b8d73a00798fbafe5a725c9caeefe5b9ea3d502307a83e47a71772d521ba15385dafbe5f38d84717a8f088f6a6cffa980d2bc40cf93df82c1f146e5bc7a0fb5c65cdd65ff0302047c435bb500683066023100be197acfb069965ce27a71adea6ca7f20a8dd0a0fd85be9816e9050b91a4f628ef4088a5a97eb0c1d58c2b508d9ab4c9023100ae3a6d61b7a2a5a8960fc795245f9a7e5382e5676d4bce95a440838b326ffb99d1e637ffaae6553b1a7c2a8a5644a1050302047c435bb500673065023100877456fde6679ce0392fc9163d4669ae6e43e698dbd741c138682d3e545e46b889b6a8a77641bee0bebb5bf2d14efa2202301db6ffa881420e9e6f14ec0babd1cd769d66bdfc53b581051f066df777119fd00b49c4fc68e74e851efb8bbbae0cf3a10302047c435bb50066306402301668c23f54089ffb00840e3d79c4fd44b49bbe3f344d87930cb0a567fd6d8f46796faf524baac756dbd6161de2658d5702307bff3a0ada91a2b194b5b82870aab156533d98b818d5068646d58f40388b60b099d746604cd5cc3f6ca83b5a9c7757eb0302047c435bb50066306402300dab39a2e7bade9297ce8a3032ea75e6f78ad9379b978dedeb09b05bca391339fca6358cd5a5baa51635f519e11710b7023010f127e2e09b559c27b4d033fd82800a24d263cbdb555751e05800bd08742a49abab3792db8fb7438bfdbed1a82f82720302047c435bb5006630640230737cfb956b9b38815fbb93395ab67672e581b1037a2c9567fad768d4b4b2bd481271eb9832c518a5dba44eaffb09eb3a02307ea40433b772991cdf6b9e8a9bd6d13232eee59b6d528239cc204bd0ce13ff7c6ce10fa75394dbbd7cdf8805e5f60b330302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310089d56f894ee1ee8776cdf6eb7d51488572bd1c71b3aae2a1f610c342a0e0f170b9723aecb26f8ace658966099564043e02301e28fa66a15e24aed761868a372ad8d44b071c49823453c08615f2706fcd7ad1d5b26ad15baa9bd75ea97847b415eb4b0302047c435bb500683066023100e1f783ce573472273991b97d4e1f2e86fc4806683ec21f11170aad180c65f3fcfe98ae04d0140a6dbdf1c991b2dcfe4b0231009f0c05f6ac07d131821dc7a9132960299a22c50af9ea748d3973427a54abf844d79772d93c385846592a12e734ec5aab0302047c435bb50067306502304b80b0ce4c5e91fcb12b90861e8c7ddf3dab636f71f9a404cfdbec24b372b664eddd2458e5536989a0f2060cfc7ff27602310091b0fb720da94a02699792dbdb6ef98ae60bdfb608e64c72d9e54fa776c039b7fd62c0e2741f2fd5c1f579800d9bb8c00302047c435bb50067306502303bd107add8f0e16a0cfc985bd1e295ffe2f41c2fafa4a6d360a9437a345c6d9e30bcf46c6e067e1247a1d3d204dee5a2023100bf6627df917d2e83b4c6dd96a3c20809f7450ca31ff04f6b570a41513c5bf2e16c59f66681735a91630bf279050748fc0302047c435bb5006730650230226ac8461b0306c6d45f0655686cacdc9f2c2ec6c2ee58d4729bcda055abef34f7aa7f61657675706659f9b051b2caa80231009d263deb358ee13ad903975e3fc2b59a126971a54dcb976951866df5c2dfc0e488e8fb2afcf7947397029f39ca06fa560302047c435bb50067306502305a72a4d917ec271b2b08d96c9de829e3c62e3ca78c2863ed1385747c9dd8e7c86d4ebc9abe1e61cdf5255fd2c3f369e7023100fe1bab0253501178aef50f6af4d688e2ee6e1d327f401bbfe2d3006ef4eb5b0afa70480ac8e75b0681bb7b0ea95062fe0302047c435bb500673065023100bd454e0b0b3e195cf71d688b256a83456d453bf9c9a2f4d039efa10e2a6f4d1e7d35eb68c6cc3cd2312c50919e057e01023057c880688afaaf61bf7eacc3e3b55f23429de62a130f4575c54faacf7d179773f2cebd40f848e71c3be17ef997f78b120302047c435bb500673065023100e3386104b8e2f9dfc9c57b938f6490f7170472f91d998208e7694800212aef8090ed6e425ff7bc10663a61bf5669ce5c023055df684387e4f904b8cdb34de8fd9bf2651352688188c810b693a59cca3e57fceba9fcc4811c9d93f8afbba3076e34620302047c435bb500683066023100aeaf654ff5c09ced1ef6b34f70a71a08b3bbd8c647f8ece1402077fa84a0ed0df50eb5f0f1d9cf142f0129259fc6b0f2023100a2b831c71384e1791c86c5b4d383104421e320f14c7b9422348f1bf240956f5c59143a82776753916b285128471203840302047c435bb50067306502307b77269f06cd82116a7846bbada3052ad2daf188643ff94a50f2bd372eeed5f56c8172bc1ba96fc2a6e95ee1eb419bd9023100abede327de307dde3f61abbf781f72f60782402c9f87d065470ec7b648e4e8d898f440e1cf0d8015df42caf776a9f55c0302047c435bb5006730650230505376deb654694c93148276cd078d613133ba8edce8311c1bd0e117876b84e67ec884ef5a346555341eb5c5ecd137bc02310095c23fd35d5298bb17d88ecf44d63602bbe3d1ae4dd226c51c528b68ca98a1fc229cfa983fae23c3be1c97b507bd04e80302047c435bb500673065023100e322a2345a921e0bff78d15b4faaa5875c46a8b630da395b9d0824c1b9fb507003b544953cf35b3553d4c3f26ae8abab02303fe6f6779ebf3b4735d1bf34a96997309da74af4e075664f2f6d1b52627b30a9564ad3adbc442cccbd8b475df3a5fd860302047c435bb50066306402302ce83a5856ccf2fd72e28a6e846371a4ba50f042160df4983e6aa77491c94e69dfbaacce52bca4a4c52ca93768bbd98102305fa45b41105fa1a209f9194a741bd2860feaf11ec4d8f12f29c23564e5f979b55d3e5846133a69200fe48452cd44fa470302047c435bb500673065023100e5f651faf9665c0ea95f5fc825ebeaa50db63759558ffb1f3b9fe9eb6efe596e2fbdef6bfa081a0398df9267141c47d8023035b76cd50d124e501c05194068c10087cd863d86d281be5950cf4d00213372b4e987d764b1ee4806e60f1da23b5a13120302047c435bb500673065023077e42e1233d0f17ec658571a803b156dd17b7f8b6691691c27ac84f8dd2e3d9eba8e5b649de346b0c65b7acdf4d1dffc02310099f1f845c97ffa952be3480c5be689923a31c91769b9fc8155c2048aa0357674252c6184c942684d1d7437f3faa94c230302047c435bb50066306402305e89fddf868cb715bc96d6351d9887e44f0bae8f7eddebe50ac0af7de681b2b642ec094e38a306ab9627c32143220c5202302a23d2bf94037692a731d55621322a90173b729f6b135b9d604684725c635bba04695b0412546a728648e9e4bd5487520302047c435bb500683066023100866dd408363055460ed4fcef5dd0d3a94271aceb0a25401251c8056a0ce9122f196fd53e3ba17c89158c32db01433199023100a757b296b24419d6ec41e62e34c040ac19b9900b546740891aca6adc9a51dc2e4cf151ca67f629b1ee752e2666d5191c0302047c435bb500673065023008ec3d06464f2b7f6c20c382a4991a7afb24ca803d97a2a49082eb2a62dd600444edab0ad99f50c6473a056919f5adb4023100bfdacdd6e0770f8bbee800069b95df0c83943cb4dfc407f29247c69b58ba5b832e98f523d039f7b7355e57afd44b0d2d0302047c435bb500683066023100cd9f2bdcc02b37f1a00651fac02dfc7b9d41c0c4fcba6f4af69aeed8c83e8f9f2c2d8e48a4f73a58a31d408f271dbc2202310090e46d0ccf2fbdd093298b576ce2bb178fce9b3a2287ec47e8c19adac97b6714d738cea740c1df42ff7a98e0800229b10302047c435bb500673065023100f45ac59fe4b1511d0738d0417193c855e2be89d2f6bc2cd22c7cbf2d31ae12cc6d97da67656ddadede5e08ba07422275023040c018d3a8ac13d61cd9ec6a7ea8ab6204dfb1da7d1235c6e3382436ca849b0f6cc67f3ea45d443498cb801e625837600302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302de065937c77138b192c3cfe012028d06f03ec9cd87d21c67ef83c051660176b90052bfd16bb16b903a171ea30e2dd94023031e4261a684b1f660c54a5becd1ef1c203343ad21aea2370e7936c2545308eb2887a7d50209f829971acaf27e64e4b420302047c435bb50067306502307e8cf40351bb7a52913b49983f282a0303a3714090e6145f50bacfa8e5d8e8291420de2a283af7f72cc569d0b241653d023100e6a53277178e55368af8539472d442c4b4ef66fdd75ce43af6f260bd33ade2b6fcba62a9965d374fd0a6161d48a8abc90302047c435bb500683066023100a8523e5466e7ecc88e2b83e750de3bacd7eedb723f84a61bfe416d4b811e0247ccbe36888db3e331185bcd3ce3c58c0f023100d40c81f55f91f91e082c541b9f73c5c386bff2ce32740adc2affa4af2d82e226ae9a6fc0e0fc0e453fcec3afd64a888f0302047c435bb500673065023100f91467210e3dc3f70689e93608d47674816a0f7a03e442abfc9018d299e9b8e9e90cc669f1cc1384d514145c4268bcda023004757959965d93764a9dd5e538b4430f077c422678ebb3f25adeb3e2a209b63ee98fac9bd34d4c7892006c7017a9a8fc0302047c435bb500683066023100ee7fcce5aa7d699331d57ecf702e5690d5dafa738342e198e6c4f142d2c924d73c5684ce24bffdee9c1e78b731bef1be023100b75b4ca09d7d4e72104af6ade33bccc218adb3458f77a2785b099c7438b013147ad83146c7ff6f51d5f931ed679733bb0302047c435bb500673065023021d057b6876375dde420713533e35d67a0000dce06cc5bf46dcaf77d8d1431b2e07476988478871e43b77937028830fd023100a41f14ee0415232202850f5fd5d4c3955ac7e8f3c32460443e6300964d1b61314ef99a0034d510e436600a76d263b9840302047c435bb50067306502301ca48d31dbbd7966c6c322692e5d4ac99f3501c9adf60e53d15f3904058851fc2344fa40babab4a72d34e2b88460b43d023100eddde4d2fe957872b806e779357f84b046f633be34d3443ffa184b30afe90f7100f4b1c675085165740ab3b1dc45bdc20302047c435bb50067306502301ecd0333c8ecf666078714713d788f2c5f7444ea0dff3404582cf5231ec08192fb185eddea23ccd59dd2a70f0ef59055023100c2bf41f08c5e14b1e1f41ecdbff704fa2b95fcd83eb1015d2cffb33d06946628b3485c9977d5705f1d90fc2c54b0139a0302047c435bb500673065023100cbfc0236d92e37e396cf2ff393e1ab1555c396bd20499c829a459402e748c1c416ce462e276e036c340da6737f80399702305397df7e0c37d536ed2f1f33606d2cb207c2a0669cb58e59cf8d289d8d40300dda074d64c7c8942308aa34f1a05a9fb40302047c435bb50067306502300dd408afe30884b9dcb307b2da9936c73d0fcb2a3ccc7f1c4e43386dd27ae0e522357c138ea18108aa53eeea5f9bf7f402310091f3c89b58f08dc5ec84859850cefc98e8ba6b0f7dbe52a04af016ae76052be2b39206aaabb96393d5e27204515ba9540302047c435bb500673065023100979021fc6f2b3dade045d14f027239b9d7583f07808489a6063a884057406eb6e042f33a577eb256297e8a8fd934178302302807826dc7a10ec8f1a5f282fbef70a2f38806a01c69892e03043545006c297f2d2af7b152c0157b94edd75dca5774ec0302047c435bb5006630640230611f9a73182f4fe1cd643298c3e266c9cf9fb112e50ecea34ce72810b067bb3767d99f16cec55749470d1e576f557b520230471aa28c797ba12c6d2c8198a841d97ea4b52c4a8282095889563acaf02741d1dd14be235f4e3ac4f62fc6ad79130a5a0302047c435bb500673065023021de4fcbb3b7731d124ecfb2d91ccb25189ca27c732485d96444df8d64ea505cc70493e4c1e64e38515738f16739ec66023100d5b2ccf23c5e480b8e2b4a5598ed5d8ae2029067d8e13beacf6aed8c806db6427bba6e4e46d193656aa25a86b85f8b620302047c435bb500683066023100932b5343f375e82277a2f48a52968c52c01095d398a0dc93b1e7e7e13e3062c49a66dabf84634019beaabed775f70f50023100fe233f4f4e17aa205e73ba950f9c8b6dc939213d8e68dc568a049290edf0c9821b431d98785708385c6dc589894d0e2d0302047c435bb500673065023017a78edc331ee82435303b99f98884091c74ea1ba5ea9c6c4cb240c507da594a005b5b9e44e9b416c8ce72ba6c1e8d57023100f158da0b2a152b1b1fa497c6a62341f15e3e02bf947d60a30a959249ddae8abb4affc4cd3d850086b19c62678cdff2590302047c435bb500673065023100e75aa75e327e75202b388f27880af4601de3a324e2f4b1e6bdd5e2764da5abd1802559f6fc937f22b1735732832d23de023022ecbb43ae96f0634f46af98c20a08f8b824e81ea892cfa976defa732bbcaf4a8146cb2b252c70eb752f5d1ab633b9f80302047c435bb500673065023100dc9c0cd9728acc9f4aa7188fe77ce2dfeab4b8fbe44266ee49dde43a6fc2b2b018f0af91319daf13ca3708542b3e42df023040dc63d21e354e6873ee535bc9e7fd8ec7d571f36b855e1d194527d789f15312bf29a8b134671ff74989fa2511977ed50302047c435bb5006630640230486adff344b5fc47e68649384b26009d275d53c605d9892406f6d58179a904a3fe9c147c33a283e2cba0e42d5618f0c3023033033eb76ba300b548e259a9e3b1e5d118643ef11bf47bdac8640c46411bc9c64f8e4f4b2a4f454afbcc0392aacbf0a30302047c435bb5006730650231008d3ff83417e18050ab4a782748db7d3fa3bc2b483719a42816ad4f07ace1c7068405f80a41f9008c81881505ab46f64d0230668a9829216548378797b626483fb2294e3bd84c81560b665049bdd6861f3d67f8afa73602a12feccc8c4c40a3b925f10302047c435bb50067306502303207a66efc0afb64f08ee4d41b68b7aec893fe39b6b7f869f34bca005b817da096627700f1c0d7260b1f00271f509fd7023100e2794361fb5df48156cdfe0f2abea3facaf5f6ac56f3a9991d27c18bbe12507879c7c71ca40f5720f193b297899058b80302047c435bb50066306402306dc974eb2db2fdeca8d6747c76f51318f682f633c5aba0bca2c60f4d7196da0b53df8194cbc8498e45edecc320a1ca5d02300b7e31607201a05e5b3ba17534dbd2307928f269c48ddb57a2c1d85283b06480c6ff96070bf1904fc0c1f08c3c19e3760302047c435bb500683066023100d75f95b4f77213555583473c044cfb74675cace5ebf98c5b5d00333f230e53ba55b61dbc713840400dfb3662cd568b1502310094c765d668341d87d57309a91f7cb8c6010a87c8a1b59e44880748a96d8361e7763504fd75ecb1d9ac50748b2cc6f1620302047c435bb500673065023100d9c7cb2a0e38e29e79566954a466098b19968b82508303231d1766885df3cae14be5f9541b58ae1baf92fb8df93eb555023008848d6408b288bb200700518cef1d4ce3ebc2e840e109f526ae2c74b7af9f90460457dd57b598b942d1ab30586fd7b80302047c435bb50066306402300c8863dc4cac6ba6a9fb9367bc95586fd619a46ff48f09983671de0753e33a7dcb5e2ca650ef17ef6e8e18f48fc2361902307d841a5622b65537516adac237be46275d1a18c2fc37296fb2b976c8957c30bbc70777eb5c6d4bcd3f6ba51a3b75b3fa0302047c435bb50066306402307cd0a2840c088c01de47a21512a1fda57bebb4fb0de4029b8fc078f934a42214b48cc713a384bed9f4a443902bf0c45602301a3ec002f6eaa53c4688eed2621395e8f85d88dea411c584b19f8c46d3ad753dacbf1d8b7a9512d8499b52e8bb1dfc9c0302047c435bb500673065023060095226a2be2617989da674340e1347a960ceff7d37946d2e650a1e6d23d48ff3c86b24d36996b3d26cd9a97059eefe02310089c0908dbdf42274c4f62f0b3111713c61303d88ee4889f5694fb819c5b4c6d542f0194630b2d9a8ad5e3cbb625ca24f0302047c435bb500673065023100ec8354b29356cec029557179bc76151ae6e54aebb8f87f5c8bf6dee282dee665593e9863010694b0152f6e34e22de19502306af34bf623659a476e08787f6bf8e0b34bbd56e371bc8ef381752b2405c862611415a2454b10c87aa74854b530c509a40302047c435bb500673065023100fe21dfee62bfc1c05c04c9b1cee5c04c872fdfc222b03394a766288303c5e44e450f82628b0ced3f6d1c6157ad345b6202307f0f585b745ed75decc61a50023e4536f0173aabf79481a0dd17fa74a13bfe23ce69d0d92d39854cd8285b803c05404f0302047c435bb5006830660231008ad43fe300c733f73ae17737e0f2d9170496d912e76c7a03fba52462c4833cba0c52117bb37812a3a7b4c02514f3d135023100f31499aaacce479a18af21a1f21b56ddf8b1791d7d04380bfe9eca5caaeb670984fef15ea9d37426559cbc8f4c6cdddb0302047c435bb50066306402300320709917575e06e62151db5c945176300e9035a18a4af951d623f47514f62fe24a613d6a7adf492b5a77c5efb7a5c2023014c9034725f4ce2cdf7aeb8d8ea5a28f3bc181504e6456baffc2d379af9970ae0ffe9ecf86eb149f5d65966e8331f7110302047c435bb500683066023100cdaa889404e6b53f740f79bf8f7c025ccc24cca9d433f817805f68c022a92171cd06c8fde89405b602387037988fbc76023100e522c5d11581688bdf6997d028398ebaa06bff23489489ab1caaa58bed22c1410316f1557312b28aa575431a221a9eae0302047c435bb5006730650230071b5b94796d67ef5cd86dcb44de6364bf813726babc0ef0347080da23604bc4193794df77e3bfeca249456a23fe7db7023100cee6a62714ff05b44c19d61c1c723a01d59692207fd8b586f981564ee8ab2dc69926ed76e8eded00f8034a09388b41930302047c435bb50067306502310088f0a013f0564603f86d7f8d796b2f832eff50003658d83dd17875deffdecc3c44a388d08652a0ddb91022c1f13b4d640230591a352afe9cb02729d91a85b966554b108e658fed82874f6b6c2ab6aa3009fe51a21c062dba033efb928ab40cebe7770302047c435bb5006630640230689105b3e72669187a8e88008b783b1a5818cbd27323c9d73d025374a16b2db2f5cdc0171699159b578c1b5ac37aeb740230236046a660b833cd7d1059322d40e8706c8db58f74a181d16cf32ad06729f8a15eee73d7c3bfe5730f219e46909bcc930302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301b0d9836dbbbe98ff3074b2e09faa458243b28539102d658021d6715e473ae543da08f239157013178695ef632d0c30c02306f7c793e76c9aa0c78505a031890a7f66dc9124ac4753b33cdec4c70971e9e870396616f91ffbe125dd183438637d5400302047c435bb500683066023100bf085d4f024654cfd1b1e019b79700665b0dcd92cb3979d018d879554d907742cc06e2b60bb35dc83fe18aeac9bcc277023100f5901d43dbe2230067ac1030917bbf4c3e4921e4b803832adcff5df71c0d06f6d5b0362c5b14066f7dfe56e299182fd50302047c435bb5006630640230273797e37559c09b1f774ef2460198bf6e2508fcfd8e44b7a51c19fd6a87b93bf9d4d8377907ed46b8711cae8995a26c0230324c89c4e7c308dbef8a487d2204da01003f8b492e24c6a3a625c97db12a8c3ad68918b775e58bbbffd24751a170c7930302047c435bb50066306402303c4e950b888c07dcd1e516b81d86d7c3540dd5b70a621790a75ee12dbe0e82c9461b386c91079f424f9af113a41f733c02307c03984a8c889813d58e39896907974e8d4ed1185002827348fd20e035581c063a0a442a620927bd341a0dcd356dba8e0302047c435bb500673065023100c80847cadda2d59ce100d027e513cdef28a7ab73a4c2eff270455e2a308e633d80629498f60c3439f96ac0ca8463754302304a0cd95bdca418114689bb61871e850fb6c4fa98353a5036691abe47365a05aea3c1220fce482c1bc405390680f41f3e0302047c435bb50067306502301562238b1826810e9f44bad3520f16a87ef23be27018ebb94c4b9b7b4fe8f8396962d9ab4017390ce0483db836b86c10023100a28cb120a4b479ee32fc70d2f14ab9309ca67c43d5e282e7d52f96309ffef602477739f4e10346db03a3c905ad0816c60302047c435bb50067306502307b8b661c4e890e04a721b9a03fd8a27afb2d9a3279ff9705e5aead5aa5fe0946b67a0aa245a64414d8ad2f42f7d386e7023100e5da39c5c3c9e63728d851185f98996f034be29903719451c5fcb47123c0db0b0a21c9517209027e80d0effa02e554c50302047c435bb50066306402304cc1719d2614b1351f05b625cb2097cd3bc5226ef270a326cddd900043607169b87d001d715132050a69f699edea3fd0023063c29cd104f1243e0e5d449465afd0f97564e0302d23035016def59c2453287e64d3e17fd5f3c0a5e47a68e4831e46fc0302047c435bb500683066023100940050a0c8dd64bf8ac371c51dbfc6566f285a3408be253c171ed7236282a3c3193ba32ae41185a49ecdce657e207813023100ef6077ebfc81837c98b71686476baba9029185db2bc2eee0e74205060771dde7e4ba8b7b21f6c76214f774f59fd58ec10302047c435bb5006630640230553d24ee0c0ab5e5f5aa84c48227193a4d1a8a28a8e49281193952a90345859ff58499bd9853b6b873f91221c94d95da023061b354cef74eac3bb89bfc2c012818e59a541f386575388cdf21e55e03631a5b1c80b7af88efad13286b81c695b63d8e0302047c435bb5006730650230170c3e72f152e8edd0c1ad3b4cfbdbd4e19b1c3266879a3b16f400f941bdfbc06695dc5455363e4ceab8bc2fd5982297023100b1efa26e948ae39668bf3b3ca34440dbb28a65551efcf32ddebb493740fde2c939f8d2648df0043f01fce0d23ffe91cf0302047c435bb500683066023100d11c2f96821bb583cf7f408c109978581d7895cc199d96718f99bcfabe9ded201fd8dc2d4cca0c038e3b1df1bb9f8f1702310093cc6d6a4bc3f7629ecfb769cc98dadf9f0808e30d0cc02fdab629dba1874ed68ea08e886d5dd734f39018f40ce6e82c0302047c435bb50066306402305552b04f37f9648988fdfbcca2a12e74b84e4b88f1ec2646d47e83f422d65e11d20431227f93ceab4735906649c139e102301feec5dcba35ae1ee814d30eebb1def524a248a5c5289634390403e4c77eddfa83c932ec9ec2b8db8839b5a4285d0b310302047c435bb500683066023100ac24ff315488227d13cce35eee6766d7d33bed5b3a678199671ef91f090015a9556fcb9d3d020ed89c825a278dece63d023100a4926b9c5da2199c47e230baa97d858362d08220cba561bb7ae7ad1d33bc31dad1d18f30de84009d1a07eeb336f473620302047c435bb500683066023100e9ec0b45dae58c170e21846bf0093338f8ef804a9a59a40c29795994e4b5e6685c0c3a5960f0d557275edc3ed8e72c1e023100e2125fad3c5d693c40a4da6a0c9d3b0f9886637bbbbc5c59e37b7c9a30b0b1cf1251da75d0b4481ee146e6ed0f7d71000302047c435bb50067306502310093207f0199e08cff5bb0ff790b786d87e1c585f4dfd8f6799e4fe6d4a65682a62f32fd76b2b05ef92cbf1f833c11b9a8023054285c8f0adde7f96b5e7a91677a0936ff39825a1ca6b8d584dd8d0084f1c3d45f18af907273aa4297d9e73cf888f7870302047c435bb500673065023053b1548fbc18a802bd9d34e16dbcf2585a98250f9ce73f6d08cadd4e8775de12383446c40ec21506145ec2003aa6dc4f023100d2cd44d5bf7752b4199bed9f9d8055945baa7970f447e21e20bb4349aa1fe4acc0852b44f575d307da0f6e0430b4f3070302047c435bb50066306402304a600b69f9e592081bc57330bf5f33f277174b015d9f9ae5f067a9b23513e499c3ed053b4320e98eb1c2afe0d267731b02305647bfd3e120257a831b79c9f17a1cb15cd473a7f5e7f2b57d2bb81ae275dea098c3258deb05411dd64df65ff233b6fc0302047c435bb500673065023100ad7bb5218ee19723faa64abc1ac96bb4671f77fc6ce55b070c3d9cca7a3aad0123113510c1a0adccea2baed8553f1e1002302604bf711b56efe4dac2e4bc8267cd70c50d648edd1d8f3a691356a805770f53297ebd20b3e3bc805f225f86e4d952030302047c435bb500673065023100e098089fb84322ed31c952c144d2a2e5893524c6be77f2fab6a64080f619c7e63efcbab9f64d5d2f765ee17c7ee69f8102306387c41d250bbeae327fa37a16b8ade2986f7fc5b7f5127308dbac04b894a1ce663dc4d67a488c94ba342ec0962529880302047c435bb5006630640230444b14392d9a203a473b2f8c7bedd0f4198b724f1cf3251fec9acc135b4f763cfad392716c6b6f52c9a252755bcc580f023030b688497f236639857e9a91d57e98cac610463836631cf9579320d2004abfbb5418ce2561a55ced4a34a4d01d68ffe50302047c435bb500663064023073759a96c2e4c68ae722b0cc16afd5473f1db1d902e2ace02eb4538fd596f3b29b22c4833c92129d5e9ffaf3da687af70230705054e2d1b93b0ea2da3043a6490d0f1f2fa4f0901885ca575b2701fab85f3e63ac2e6a45e6f9c3df02d45803d301c70302047c435bb500683066023100b05618f886decf56ce60fd1d27cee8d3976f06206d11360d7d27755f1a93c87c0575a668c251bd88e2e6fc01688107640231008edebe2242b933631cadc7d60b40d1c460800d1d5622796d7cc5b2c9e229227f9cd09b761fd4c50c3bf8df1cbde6f0890302047c435bb500673065023010b577fe93be648df4f40bf0ef57efbec7561e2b61540f1007462fb6f73a091ac7d39f6c15bbbc4198f618c1a873fd0c023100e5742a09fecf8b94b3863f515fc213817ef908656f3cf0fd00cd3f62799cc3d99d643990e42eb2338f88785f144ad2370302047c435bb50068306602310089845cc5d11d73b8203f0cea3be26413e464f0b7be9726960922b31c4f23333f362e4a5bad53e5ae10606eb71db991e9023100a67226f52657cb9480930467037bea1d7c28f05a8182db9971bb4c4af36f2ac3b2abe5cc80badd256f9ac13fa276284f0302047c435bb5006830660231009223b31f2d1e1d754c591390c8e7386c73b4352b86c36642e2eeff2e63dc7b6897b356d93c254f26d480d321d2c200bd023100d8abb4802a20995bca9f6b2cab42818345b99ad0419cb5072ef71e2aed51607d5448274dcd5b3368eccb3e15169f59100302047c435bb50066306402303d99d71a12fae722319ce16d12968143d34ec14684010d957a2373f5d896ab410268deb266af33b39a60cdf9b05e86d302302feb0c410747d7eaaded724b33b247c75223e20620adf92df77970e5f7a75518087b8ca9c1dc55a581d7fd4662b1b7750302047c435bb500673065023100cf9a19f020a44b22dd997c7a8e15ac935f6893c0baec936ad99e76f80da5d74fccda2e7c1c7b3a1f7531b36f2c5b6c7d02305a41dcbe2dc8e8073e2557bacdec2b21ce1c553eed8ef5f58e706276a3ca4c0aaa1095dc29b04bade26e4c9f0fe6bf490302047c435bb50066306402304cfc5e5346519305bdbc4ac2f93f42aa2cc9e3ab0730deb380dbc4ad55c4c9d56b95701ab3c3eb6586e0c3b9313d088e0230070e1c5dccffaccb1f5fe60a970d00fa3b73443ae56f7dfbc250bfdf5c4266b7e541cbf895f0db7f81a621dff75dadeb0302047c435bb5006830660231008c116a4352c817c56bfa4f145ae2bb5a3c372e15932f9cbe7e3514d160783676964a99bb75a8d798cb12e556d998f6cb023100dafc1eac9f9500ae568e81756aa4f5ea19efd5b70060d82255fa4e49789a36732a38b9490d941b957807570ba107e2a20302047c435bb5006730650230623cac2f6d00f070bdd783dabd718a978424c30cd4401d2880103f9d30ff20418697bdc3f4eca34291357b07b7cc41b3023100b3a74ee9f2ff72ec74da4c4fcde14561651818aac7d36b85039c43077bcf870787372095986a78403fb039ce90cbe9f10302047c435bb500663064023071370658fded11c1a75b041ae6a4c468ebfee86915c2ea90c35d25fa1f52ea0481450a44ec1391d0925711c1bcfaf7a5023017dbe21b438788ff4cc0a3f996d5a1e9062919f065416991f1c25c0c453b8f63123dbdf240c1b374af98060c7ab90f790302047c435bb500673065023100dbe02b3424b70a506d9667d896e88ad10f6b3684a2d303a375178c7e9803e64bb839306c0aa65eb5bbad1ceac5bd2cf7023036dcd2e4464f6d44bae96c5b2da4924217d733e56ce7909b1346da17a3aa5bba78f4f5c889dc50036f2ed4cbcf2eb6de0302047c435bb50066306402302924b06940e5c77a12a7425931debb124222217a92f4fc9c237f6d668b75ee0b99f309dd6830daac58dfdef16e1cd33f02301dbef19422a0e6061e5ad15b7e6f6adf12677175d36865c2c2bd153a1ccd1bc352913725b080f8f3899b1ba65656993b0302047c435bb500673065023100f879275b48efce411728e8fccb11216da16b1c78af7476e9d59e0e0016bb4ff6506b8426d58a7a7f2c6c4f1f137267b0023069eeaaf87fa86b398a2af07e17c939bbdfcbb5707480875588aaf3b7439b273b45241bad59009faedfa58b2b08a0ba890302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230483b3f4fb46b20461624eca8cbf05a9de59da31d7c95a9d991861b86ed4972bcdfbca575f1ddcb981fd0ceafd7080a6f023100f9768dc434668a886e08c06bc592c9c6e86cadaa8b70c4e374557152daf9d9fd7fb89a37595628bbb059c5f1afe8665c0302047c435bb500683066023100bdb7f0fe8609eca196e13942c30a58b4f3d63f4f3523fce065d51dfe6f1aaf1a70501be0bfd867b75014bc9f42839cee0231009fc252857cd3e85937d1f1ba18ad1f8500d72d794d6057863ec39cc068789ea789f6e9afc85ad0fdcd2e1baf3632c4710302047c435bb500673065023036f1ea95970ff20443e30a4b201319874e98f8e4896fa96e7c96c31b9f27556c105242abe064576023fc2e01f14497e0023100ca3ae89f1681946eb1ccea32910adea2a22030644a95316c6ec23c6655deae330cbdb5196bb8ae7ec6c7635138bb0bb40302047c435bb500673065023100d476a27ef2a6bd5ec6c73e16f33a1fa079083f1198e1c2ab55c7514ba9e3801d2245bace4d337696f87b522cacc1b32b02306d35cbde426f7a6d25f26ec7cb9b5e5d874124ad35ba78bab172b1f95aa3639baf19001a5365df99393973a262a04fed0302047c435bb500673065023100edd4f170dfaad9e8ab103f2d2c2bbe7af450dd12f522a9ba0f661c3916c088a54e0a100c17fab917bc83fecf460516ab02303d5c832eeb1fafa6e6e4b532d08e1dfe49dd7f1a8c2d4ffa4be213fa4f034c26eeea7061bcf57af0d513a4b29f453c480302047c435bb50067306502307d238cf3dd62f098a63f304bd7bcae5e1243f3910e6803d8437f63e7a39c354e7bfbe791ede4ad56c0bc4aad50de5242023100acad372492e4296b12c3f4c171112eb8cf2c01176508d3953492fa41988b1844f36068871c6bf7c4ff177aa816b6d9b80302047c435bb500683066023100b9ee77648f03ae5c5a1b1bc6bb6f7b4476496d19f2d701c17cc5c6495ea42095f7771eb1ee55f5f5745117b6539af72d023100e16ab5a0f8852d7d46e999ea1827e6fbddc83973351f72f9018e6f822b51965e8f1f01029d56888e22cac7c54fc73dee0302047c435bb5006730650231008f11bddf752b89628ef48e987c3526ea442641c95b8e8d5b7455c1b34d12d1baca3983c8cd14eb8cad7432c4b40e0c2f023060805277dcc40ddbd73b743ba44c45f5b75dbb3e4dfb1bfff14dd449a28332bac5b32c836663a46f068b72dc5a5091ff0302047c435bb50066306402300407eda75b2d5b40d032d920b1c48411816115078c6a4ea5279b2c812914f3d67803c7bdbada01a4f88ccd8ebac2ea1302303e0db94109a6e7a6fc39b008f1ebd44de9050aba01c5bef9e2d2e08ba7f918dd07d92df77ed7cee4b9846004fe36408d0302047c435bb500673065023100f85a3bdbd5359351615528c08c85a92afffc2acaa1e425852b911d223621285208f887236cbd59ca5d710ba6cf59ccc402307d560a611f7f072415f080e939a1f6367b497d7a6adba11f6bcb3fbabf9b316e286944823e482b627bed2d65963805ee0302047c435bb500683066023100b7fe7509f7f40dd73cc81240b2e14b0fc1bb629663f114ebd7ebe02a476e131337cf50e76e17d05d58eba0cb4dbd524d023100a970f179436c1f9a181fcf1343633d8dde25825e966c5d066ca208b1dfc8d4ab88eb9214840c71ee9d470a1e4498d9170302047c435bb500673065023100a04970ab94193f6ddf396847f401706d89b123e890b20009e96f1d73de12f14773a0712d11724908e97c3e43297d4ae1023072d35abb91a75a43cb95ccaeb0c01ce278594d7249df52892c5dd46d47b8740662d1770cc761ed86d31649aae65a79ca0302047c435bb500673065023100d836bd2dfbaa57ecda80b30c3e033fcf119ba587a2afb1314640e0f93b6c5b0356319efc50aff9629218533c6b6011c6023026b762d3ba9a921bf9cdc13f7162f6fc011c8eac85f39bab867dc82d242764a629bad5908e0bf5eb81d09523e4bc2dd70302047c435bb50067306502304909e9a32cb365b9b15b69e75850b450ff138a00f97fab08327689fb3b35cf479fb5fdf0fc0b0e85d61c108ba057f8b8023100f43c63070f6a68ab58f92c122fc868f9c9ff7c0c9d4b35392acad689b208e6bee81b5cfc86260dd1a1b58d84f8d104350302047c435bb5006730650230694c5ca45c3098255903c5a8301102b56b229fc0505fca03fb2481bfb862d7b601547c53b5b3c8de1ac1a95a821e4d93023100decdf2f80373f8443016924e4f0624c1d8ca238c9bf1ca6dd8e4c0615fb77546c9da187c8165731f25a360aa04f3ca380302047c435bb50067306502307be85087e969bb8242b03f72f00837310fc0dfeca5d4e1cb741634b5384c322aeab47dde64ac39d2e690b89cafc3a741023100ba49ce147283b395ac859731d8b5ab1b07d064dc1a17a0f400ab1a1a3b9c07fd6e3cd2d27ae00e1542e24a0f6a1a4f9c0302047c435bb5006730650231008f9e132bd048434ae4f9fcda4138782ba73939ad1b98965aa307fe4cdacac9f0a4cbdc146b0ece2bf37a655ae931ba6802307903d029af130c5c2405683c6ef1c3f41e033e1963c5f322ec863930397312463591341b495bd04ae02c2631fbfaf75a0302047c435bb5006730650230603b410408159a2ebd913da7c71818c5315f0c3b0377afd1eed76ea31af32af094575624f421d6df6b4ff9dfbf2efb55023100e98188d6441a6d404c679920a2e52f0b028a838fbd5d33626ca9f1d0687959102c45fab23bb606c3d1ad8aaddfda64cd0302047c435bb500663064023045f84ed68b19a5b2ce19924b942912681d132ad38797a54898d5c96cf57845bdeed664502c2cbbdf3cc229a37bc4e66502300a63d89cb4d0d5a0e530690d835a762b367e089ae0e9311ed3f3144a999e249317eab725ffd9fe4db86489fc6c7693530302047c435bb500663064023035dbd29665444249aaa296b9d66cb54d77b93cc7d0bfa79b6f16a334a1d6d876b1fb5af64c06a21fa60350e0058e278502307532721447aacf4ff64032f89e8edadc8b5f226c852ab6262b2607d80073ed76363fa1085e76af62d6bb0ee38a2bd8360302047c435bb500673065023100f68f463b92d4cab411cb585f5797180f9f71467b80c53fb265a351f08abefe281ec0f528dff1f2ee7f378cfe3b226fee02302518a511809f86965ab67159f93c980c604f70216df8888169b90b3a9d1dc6ae26e05226afa77da92f49482a60987d4a0302047c435bb50066306402300831d6c18750bc8700085a36fef7a91bacb7121de496d3c778157b31f3ede5d4bb2cd2d920125562c66ee7ec182e0c250230392bd513af9c22bd9d9db608d1d11740305ef504de5dd30e506d1a5ceefe7a088f073c16e692f17550fc43044c8390c60302047c435bb5006630640230461e3d04c0cd66174945628690ee9354adb075e1ec08bedadf4061ae576737cf57e09c71867cad22199a3bbd8400891a023035298c3068154c1d539a0ea434367191de856a61e0fbf35c090e6161dbafd2aa2a41eb9b5f7858954cdd49a0b64a7ead0302047c435bb50067306502300aed4b8949e6ca7ae46a9cc823bfd87d7dbfc44db5b8db8ff010f56e23dcaa40e2b92ffbce54e310d4298cced00f12f5023100a735b8f47d53ae3976189f8e512e46d285693b4762e09b061ea04d449517803b86fa6eb67ad7eb3573e03d1744ce55a60302047c435bb50066306402305819d39763154973a49f9ff7ce45c76ef68e0b859c938574f93af999f6e5109b52ee5ba1df95dce5c3d2ef4b3ddfaedb0230579a96bf3146fb54fe11874d1db7e0a8922ce44ef44832695941eba8fef30b240188e7b294073ed090dc2a5eac032cc00302047c435bb50066306402303129ba009f0c2c871837a38e681600972a2d57c06fab521fbe285c3db2fa46c331f84f4f89aa642feb3b38f26b15f76602304741c1e2474470d59e2efb74d32bd314ea180ed181661db567a05b09435704bea19775d7615f64a7b2ad698ec7cb56dc0302047c435bb500683066023100f704af9837ea06dd00abb16b0aa2ef03020e1018dee2939f22f1642dd033ad6d1de6a04cbc2a719d0deecd27e45eaf1a023100f06b90cbc2e934293fd1a4e4d0dab98fccb154fab0f23f9de189819f20e739a0ae30fa306e00fe50ecbe1118fe7a39ab0302047c435bb500673065023023b272a766fab28f0d0ec4e63a33243b82a37b39d52b472d953ddece1141bbfcd9bfcbb6a37b6aeeb0a7b56968bfb7ee0231008f3ba7f7c57879f76f5a4abaa75e10ab64489890d7489bf15d6b258ee9a2778a30f18e30e429ac6af8015181534c59230302047c435bb500673065023100a46f58b5a153c129fd6f25db0977fce8e09093f88bf8812f7ea7aee0b577850a9f0c93e4cc5be1c32172c40beaf55b4e023038bd35ebb8821a35dff1d15ad7c189cb56a798c83c05ab7e5f76282a69bbaace871fe361b0148574dfcfdbebaeb386e00302047c435bb50066306402307b90002417a55e97ba2c33d48ca1049fa81541bbd3ef35f3e6bd2bed029e5d518db3211696f6eba11ba1f01f7d46a43402305d5aed8136639f215295144c81819ff5ca7938bc201ff8133a2dccc0a2842e42cd75c891a5ac2ce51cae924ade6551940302047c435bb500683066023100b6d20523373e72362e1b4dcdaeb78206c1fa4a46407a0f91644585cf4dd7dabab0357e27c85e0ba9e8f62fc9f16e7dd3023100c8bfbc62cf3f8451aba63516076af337551f912c1a5146a6e95c1b5272dc58d8320e5a33b65c1c5c1ab44026a30f34ba0302047c435bb50067306502306ae02a87cce2b89a40d97573c257394e94cf1abfcfc9e128736a3e80e189a20a4f4c75f2b18b652b07ce7790e3dd128f023100dfe8dbd60a91ad9da15b990d24491b0cca0e68c981da206cd6614144093c2def2425bec2ab9b7dbb8d215178297e3dd10302047c435bb50068306602310082657e65a5915f214695d481af6099599ad2c60d2d03d1dde61fe70c551da2ff7a94d106c59b86bf612f9fb38945e2ef023100eb342bb321917c8306c81f34a2ed96755e4678fde963242923182b2b11989594d8181ef2fc1aec4d7e8d4c4165ae88880302047c435bb500673065023100f70214fbc7cd16dfb078eff16f27eb2acac7dc8875d3121e000a3d911a2ccbc26c8ddd1566aa50ecd6b3b5932b553335023010765a6398f3782dfd3d325be6fbcaa7a16b359a50fa6ccfffd0700ce2f5e0ffaad7b130f43e105f994abcc7f06fde930302047c435bb500683066023100fd892fcfe8d4ab7210e8748627ca238892cf04b717f8addb43c9a5d15b597d7fd9b90c889ccffff82e934f632c6ac5a5023100ba903468ea14fd49111b2834bfa90264e5f1277069410dbfe6da7abaa514151c1b6f1f226eb44431e9c88779b2621f060302047c435bb50066306402306e23c1776afa0225f31667efedada45fc05b9e4a8c470eba0d9bf7d95abad61b0b188d2f151dd848da79a2e82f6771b10230784707643b9ab5aa342675f332bc2d8af0215ff38635259a7430090e6ad17e06fb1cd65f3fddac267298f8f6ff6984d70302047c435bb500673065023007582fa835ca07e17b54b0432603c283ea26f7230aeccbc0be908204e361ad9309bc469e922b81e5574e08e793fad390023100aa99540bb422a9fca501c9d7e3fa6b095860f96fb89ce37f73bcdf999dc173f8bc1913f5dec4f18143850b88b41e2fde0302047c435bb500673065023100f08f1053db5a45151d6fdc87d0f391979038b0a991de4ac2971cbf68ab8c21486523f9940dae0da072cc8f1426853b3502300bfc18225e1674c6c803ff71a9916a8b710bff8d450ae5748d4f68057b9b908cf93530787a228d6b55ee28d20352761a0302047c435bb500673065023100afe275dc017a6ec25e3af935a03d2b0adabec1e080886db5b221dc6ae344de94a02a70e24d9d50806aa6808d33d3cee30230556c0a2911782ede47b948e299bfe57d2a0279897c6b4cd283b4b8935cd2640028bc2779b408e35203abdc2b226b9bb50302047c435bb5006830660231009770ea0e957025557d7259900638725fda3824e38d9195fe9a7cdb33bee310f7b27c57ffd267e1e785aa50b7620a3d4d023100cbcdd91d9e519a6bdf8bf65b93f56cc06e7f0c2285a56427b02b16a7dda50fe1995711ad83bd9d82612a5b9aefeb990e0302047c435bb500673065023100a358584b41aead165d469c0f5723b5b2831406d1b58ba2e851671da3f478f33fcf06eb4ffce5adf66aa893f49b98e17802301091b469a9f7a121bf09d0eeba81b1b44d741a15a2899dc4801a4cefb9c9a9183c5f5455ade150c0d09f813e6ed025de0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cc3044289401429d879410942699cbba7750c300fa1946bb3a0785782d1a28feb0caf4253be0a132505839c80f871bd402305e52524255709665e199bceba99b94687c79b6c6c20f2f1b59fd9a7c521575073448e384436691d2228c6439f79d5ab80302047c435bb5006630640230436e4e089c47da5c98ecd40bb2a7ec56518b4f340421d00ed6f0cf3f39c071dd30b923efa569e37dd27dff784e3bd71c02302e41fb71167299f3dad4700c26a2ed1673496011858e10fe3d0bee32a6d3371b269d1a25006ff3d16d90b53477b976f20302047c435bb50066306402304d81decf1c69b6e5447873bb50eb4d2b1afde5501f4bdf006a87742f40fcceb7453963485df8147c1278793c7d24a881023008aa4cd1b2b73ca93c96496eccffecc1224c81d4914efebd6c41e0fbc2b8369a6b89ade4b8a8817c5c56ebfa2ecfd1f00302047c435bb500683066023100e6274b38e953a3204eb7122a55467967f1abc35b949d574130cb23b336cb0e4d6936248b6e4656c5b1d21ecba38591b2023100863758c50f50b061706f18d2cae79fe65a127cce99ab577a1645c28dcd6cffe5086caca4aced476acd10842acdcebe7c0302047c435bb50067306502304cab2d14659cb65b2b2480878cfd85fd756437b4e01ad0a990ddab238c0f1aef325715ba4d3c64df03be00cee9cfabd6023100c05c87708207a8b4f9cb46c57277fdcff028c8397258fb693ee7e1dcf47c95fd16bad2965151bab776987a959d1a06a10302047c435bb5006830660231008f54ba5eb75b915c21f70cc974192c8e13c8cfc808f6e2cad38536378a3e1ee4ad6fd64a188a93ed5180fbe46c36d0cf023100f860885b401fbd4e24e52358514eceb44856444a6200f2dcb8b84a09a3ae4a28e4c7db804246cfd383001f035d3b5dd60302047c435bb500683066023100e861f14b6b08c93f47a1b50059dfd2881b18d618b805ec27db808f023db3cfe69e6cca104ec3a7e5b738d9389609320902310092774f9379ae6a3630eea49ccf02eabf0096e63ec3447f334104240e3c69c213cde87d55da3ecc46f6d418ab32a6d1710302047c435bb500663064023002761292cf0279dc9a48f1bc646a8499c51d416a3b1fe6a03d5a6bc3bd853495aa4c26e70e477b260f8681290d1aa5ab023048b90e9199cce9bb4ee9ea483a959f2348db6f04ba187fef9f8ef570babe998d29ff7beef0961a1ce25e4c43d97985a30302047c435bb500683066023100c8311a3b1ec399a70fdd125060a598d5abb72d7bdb56b437316e25c570c450d70aa79a77e7ec559d16624cae93baa135023100fe609ba79e5b8ad5e48465c47f983ccf11bc2ae0ccc0b311234aad179ac8ee94644b914d9bab28dff230a21a873850410302047c435bb500683066023100e79bfab479fbb4edafa72267d4e38d387f3be5ae4cf192ec1fae475f90f0d6eb7bf6aa33908ef4d390a068ba35f6a2ad023100fce62af7f3de09bd6e632b213510d33216e7015a23a21d8c08ee59de61d365e05d2a85861de8985e9c53c01d43cef4560302047c435bb500673065023100adfbbf06ee1b042c8848318ced13f08971361058b5be17685eeea895ad1413d885eb047ddf1bb60e896ae9e6f06fa1e00230237f6218d262de742d354ec08070a6a8272bd24eb15cef54ad8ca8918b6beffb8e5b12e43e35b2971d01850b1df305710302047c435bb5006630640230768b2f8778d0c47532dd7b3701d6ae262a8e355d57e33e28fd8bf008251b915954e6b70be92823981c34d1e3aca73eb202301b621690566b65e7c9665010b6f8f4861ef720e46f9a2c7bc174c10f93d2b078ca3bd9f7e44ddb19858ec9fa83beeffe0302047c435bb50066306402304db84826b208c5755984e4ea2ea3cb3433c459f8f37c54ace99e5b5c447f72503b9848fd3b06074ffbcdc5ad24610d0e0230665cb09d8ac6098e7da0e0c7101ef09aea6b2ad281e41ee8a9df723569e61472e78e72836e8fcb8250a4df419517bd270302047c435bb50066306402306523a1dd356117e93911b5c05a1fea2e510d8bf9c7fa01ca5377a1292abdfd077d4b583d31f734bff1e73dd41c5b058e02306a512aac685fe6ca91f05622e66fdc6dc1248da1c61c8e09535dd108885a35ff2dd955fd21a90fd5b1a2f238040cd99c0302047c435bb500673065023100e72661bad0512cbef3c61809ea9e4a938c69bcec9fcf6a00c11e67ec0e56fc33c5e1075aaca52a002ae4af1c5d05ab480230787596e10097804eb6ab633353072716d918b809b5621066346565c3c9a67b097fcfe792f99fa6cf6cba3398270fa69a0302047c435bb500663064023021a64c93c365d108290108d890c8b81b07de4c051ed56ae47b4e97bce963bbe8b32890c7c50c8236607d404d8bfc9a00023058254ffe02a2c37904f5dd2197293fc3552692e19774461da5dd3dac733cbea56e375b0522a32eb07f98f5eb8260ac040302047c435bb5006730650231009ee37fd1b5d791b31abcfe0c6c19d8895320138cf29ffa0160450d2539b0db35683264b3e4f662243119c47889446fbe02302bb05b3df48a0f2d92356002bb974dd5062ce573cdde419967533d60534a701902346e324c16db1436947ddf2d4676010302047c435bb500673065023038b113a04a1b20895858ed5d4365e465c00d6aa960033047e8baa4c505ae59389ef9a26c58732de01f50cd7675c7ff74023100f5490c8c8366540e55a274b1498cc61c6eb14d8fc5a5181be7a801fc31bd7c262e7f2a3234723d56db8ca7de4173b8250302047c435bb500683066023100cf3b9187f6baf5037becdda3e128fc2881d2ee90856b99e8c145cb9289d099922268241c645794e3ff8ef3cd0d11efc10231008c1c1fb0b7a8be5cff8a158dbbdf2e6169f430eb3c920883556d9a0eee3844c663df14dad59e8dec4452a5707845e89d0302047c435bb500673065023100e77757bbb2dbb556fc89a7b0f60efec1aa9f714ff744c20423f0eddfff67754b92caab37555c3d83ba377b4bbbd9de3002305764328bf665225d0c615dda68b429616db4eebb627aa254da6c8a0bbdff21192ff431645f5f7728f34204ee480a927b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b697709bf43011111bd426ac5dd1e331108b4d1b6747f0a5ba74e6c6f036c360e162b7200c09ea2ed90a7bf3dd6fd1c00230390741e603fc0051264920509848f1ebccea82ec01c1c7319ddec5bf14cfa04b5d2ecd60189435098dbbe84559a791200302047c435bb50066306402303bacf12e3ab14808212eca810b93b26cdfe50f4629c09dd4212d39c39e369e7def3ed15263306ec829405d4ac30ffc610230781d832133f13b63361f3cef8d7f61b97ba6a119dd7e4575f72d76fae5a7bcee68c1f7da4a7ff68af6c6ed95e4257b170302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230750ee33915f75aedf59e7c3460f7b41cc5673aeb8b081816fd38eec26ae21beb6c74d333c66715b5e5bfed35527f5bfe0230744ebbbeb72b721bce7fa68ec3f2035313026f5f1a2c2e2f119be44bdc7b38288f94d7ff3352a16fabbbad24ab3a1d370302047c435bb500683066023100c35ba761e5e7c69e35d45143e9c850b41428790ec2a51da5c5573cbe5b30156f258b7832b4fec466501e4911d9cbf3f0023100ccddf5ca51bb34261b9dd83e422157894d8703aaa361a57e526501acca68a8cb3195588715bc0d0d6909c95205fe1bff0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230339a0745f8c2b10d644db94caf111502139cee630a41df981c59a7dc7c2d75937b89be811d2eb0b8d2e5d1a7140c980002302a14af3c42b726e44e142a4acc4c11ffb312a0b97dbbae2ac269963da91c5fdb58bec2cd2935c195f58b7673383706ba0302047c435bb500683066023100efef187350a708d01280d7aee6780ed46e16f2ebce7c05b126a40cd8512c2dd0336718bc7b8457ccfe596e0773c14d94023100a863672a96f7f0d26386b3df61eae84b415bb1b80d28f15516ca9204c9b798315eca795ffe52c8ac2b5133e3ac6821510302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100db87037f93ebff206bed4c1f04e73c30b63b9b436987d97db512a1cacb5f2ed8fddc36b08d537186a941e3679ec8bd0b02306da403430c155d09317e2b86ace2a269b048560daeb8336a49c7a81ef6db8bf336628329652164eb925780fac24542280302047c435bb50067306502306f2a21c84f4ab08c143fe7feb46d980db757e1a6f2f67d6cbb8bb7fde6a4cb423e3d3d91ac6d2e11d70d152d6bf6226502310092df177457044d9e479236e8ec529f884aa9c6323cea36e5a4cc0cd8a24cec6061f9e039486d3271a8c27fcb3ffc546b0302047c435bb500683066023100b316c20ed1e86271b813dec459c5bd7d22d3b9b73a919624a0729e57ab7fc82186f9b8980333e43c49a4579bf1054b77023100c5f15ae6e3f8c87470c0ababd2d1a26af6c78bd599778917ae3f1f690b9358a67a24d07236c27155046a615570d962fe0302047c435bb500683066023100d18b46c88dfca384f65b55746c2a5d27905bdb61079e6c4bef75dd2b583db045762bc3e29019a59436848d22e848541b023100b013487cda80df6aeb1a21b0849bb08b883c24b2ddba547c0e1110be787f2061aff9a3e0df4311d47fd0acb96f3a27ec0302047c435bb500683066023100a51718f8c7e6186447a004ed79fff07321219317a54fc20b628a444da853dc2e44d14ff19d1d1d63161096abc85bbc57023100af7e24cbe8c71a3ccf7d0cb2d0df82ebf791d257d83e88e61cd7685155a6c22434a94de7f5d4ab28d20c549a921f573c0302047c435bb500673065023100c360dc02308c2ee72f4db7e1bcd7b240de9a790c87e2a3d7b20d2907005b5fd12778f3e752d68ca8fccd0978e9b95e14023033743c5aeb4ff10122b5b7c88ca16e52752078103e2f1f2f70f80668213124fd8f3286c39e4796ffbee3ed2569501f380302047c435bb500683066023100c036b270daf363864e0f52b6767ac8cb68e7aa2c97d48bdf8c8389689e55e560a87348bf00cb52aa412faaa11dc1d707023100e342d1f4819443f6bfb166d1ded57a0c997af6ade4ff446854d497ab637b8922f4027d367150bbccda7656fcf1d21c370302047c435bb500683066023100ffbc25e6d20d3caaaae9b9b479f4f97792034f2b5dae5c0ddae899c6fec1612b43f2755066185d06346d5af73ba96de5023100903ce96b8112f044f3e5520dd9ae32f9a52cb2f4f3d462c6844bbb6572f00f8666ca042110c801f890bff406e55cb6170302047c435bb500683066023100f1cb54cf7a8bbea9ca0abeba34d86147d0727c8399e703c80bb849795ed3175e6bece0bfb1be5be173a536ec060468da023100a16390970480b5850a3918b067b9b92020c03f1118eaafd22066a5cf1103afeab5a77690e62799d00744d4b8bbf3c40e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c1a6f2528f533c904e5725734d919774b01f6a100f5a19af35d2173115fec233313841e4f25a463d5ad714fbc9115ced0231009acb79a7b63420c77265561e4d098f8a31dbd074ca7879110a85599ecab1c4a4a30bfe0aeb2fa7cc1262c6d77a3004180302047c435bb500673065023040263bebd4b51a5c3122bb86b18ba9916b9a8fde608e9f1a0d795e85a571fcc838e2f3a2237b18cc63df4545ff3d4aef023100b56460eb3390ff938c5ba584df57ce97ceab32066ca49c94919b6ec07eb8f960876af8a5971caa9f1449b70af7e92afc0302047c435bb50066306402305e7cd4a2ed31cbe86f315ed6a6c46f3a8c8ded9367cc2632e20d6554860b2b26f80c722c94ab5ffbb2b53eefdb2acda002303e9c2d74cd9def699247d855e3e14e879fe45b0d629bf5ee47fbe763d162461e1129c2c96b9b009952d5177de29f32b60302047c435bb500683066023100876fb59f1822f3364b5eeae6022d607dc3f6e3760071fc8184354357692cd2d10fc33932e5c1edc555f8d38781e9671e023100c848b8851e959e79df0863c44bcf586a0cebdb79caa7ba2583f683378a30f3961cb6dfe22b2dcb8bf4dfe23073454eea0302047c435bb500663064023023c2b2357ee6638b5fb3ac145f54d0e7998cc848a01937850e341cd1a2a85188322924a96e20c4d62d64f14590eb3b0f02305ed36f3331eed738fea23ebf7272c243f7b7146a42c5a69c18fad90dac6782f7c10076428fa9adbba1da5a810d3e2d050302047c435bb50067306502305c3836704629a519571ad06b0181ca5bf5498fef601670515865c2ba2a88728beb96de218027738650e30755e2ecabd3023100bd8faaaf8575d6a8434da347af9adb6530d33ff8ff920611cf9db9f8cc90011da7105172d413d0be87bfad10889e96a40302047c435bb500683066023100e2db5410b56359f6a6df736a35def5abd356f78cf8344170fc40cead0d2ff42f270f7663ae25ebd06442b68773535ebc02310095477fe25f0092e6e4fdb7abccc357c3685580423659d0846d20bbcaf3c1d56e6b2c07be62fda2f88290e8cfc67b35dd0302047c435bb50066306402301f632eda995a3d060b4b67e2b3acb975cafc3da713b6f572bbd075c6afa7d974928587383c5c3641868dde2586efd73e02305c6b5a7799b6c39e5742cdc485a40b0e792113feabc6310a48b56e94682745b6471e1c5ca5ae76cad6c074d8609137460302047c435bb500663064023070c97f6b54c339b2d13d2b08d45307dd8a1cdbdc53ace5d72c35da17c783f0af2ed52366238a63530dbff203fa0520780230616f57198dc1fe2836363165630252d410deae37735c5764f4a1db69338cbfefe25e874667a9f971635978a272fbb5c60302047c435bb50066306402306b0d21a63e5ea4a588bd72c742b44b439b6d204e275edb25886db793a080c6c254477d2437d5be47efd8cf0d01c36bdd023026ad11816940fc19a72481878f3c15230319cb6517daba5cc3200455f9844f7255f6f5c9a8c3ed170715eb40fcf3bc550302047c435bb500673065023100d6c2f64e6ffc40ae1d0f5e2642442371cf0a31c852000561fc53d8ec8efe221c19e4c5748ddcf3d7a91b1801b8da20210230658767b69e5f7a242733f6bd908d90a84b0fc017203c4fab4d162bfc7a006f80de9877488825d7ddb76ae36faa2e286b0302047c435bb50067306502307148b16973a937f187a71e7ae5c2780830008614a318b7535aca63a1e5468e7d3ad0c652b40570e9d14fadfdb0c5a155023100cc25020a1e075371dbd5cb61271e5d617ec467a09cc73932fb559e6a03f2127794f6308e23c0cf748c16975d060f2b130302047c435bb500673065023100a113da9af8d0a31a3a482426aee7a4eb010f9cf41ca5017d673cf71138ac6ec8ea7d13563ac2fae96d6a1d9064cdef31023029633eb7206a521d837c3494db184108de85e8480c814b7fcd3a3920363302a040c3a0452873bf74dafbd78bd0538a5d0302047c435bb50067306502303967eeec43a3a59b55014957afb82ee378013f90ae2c167adbaeac5f1b1db5f07a351b8ba107a0a434a425b6e2ffe7ab023100a411dcc21711280c40101c3aa11bf23a67ad01000f4eecc70cacb3cfbc03d47d4db09267a1555060f09b57da78f3dee30302047c435bb5006730650231008ca64fd75dd8e7ca1ce30a92c413a60679ff934df564fee45bb6bdbf70810865108780fd6cc0a0def33b30a92ee52a7202305aca6daa423214e945e611f425b9fc1e4dd775fa6b99690893192eaae12565f432e66fd2be1227ed98f737388c9e97b10302047c435bb500673065023100bab618df2cb21e6306bf65d26c3f6223ac491de290548771023f082c48a28e05108d757c6f5845d5f76d65b2501d82af02301c333bd11d3d78018de35a431e0df71a48e999b11bb8f1d962b487f630469936b87ddf7bfe8f5aefbd52b0997533952d0302047c435bb500683066023100a9cb76cdfea7247b08e08e70445fe6c136436426a11fbb91030be6812eb6bf0db83a56966855c9c3556bb8c7837465b3023100aa5450898b013f6a7b745084aa5c0c2f75d3e60e0496db5522fd947cc5e8b2747f4539a106c3404ae535fb91e5fe37530302047c435bb50066306402307dcd8e3f1ae57f61de60052668fb2aa273303517a2884a5d259d7fb005f8ff560af7fa095e66a6c2bb7588a362f7fc8f02301b9d6376552b64e614479790049a1a9ab40810bd2b8625f4fece1320ce74565da3b5135b895125551c0238582a8a42060302047c435bb500673065023100c5d3e2fb73a0faa5f6a5cbb2d6165371416e610b38af57042d2f3e770196766f8b4d172e97b1fe4c0441e0e9367f1a2e023075823f4b776bdc32a4f9ddd43c0a9a16f373d4051c9a951c68a0490d23dc60fa1165bd16f941c6d6252d6adb02105bb30302047c435bb500673065023011d122883d5cb0283e2ff9b89104c0b8fb3a3581b557c85da6769898595734bb88bc531c9e99c411832e7b93ec45511e023100d446f91074164bc6bd972207367baf6f9f8b5decc3c99250e30d843dbb3c51fc710daa6cad264aeb649afc53a4a0e79d0302047c435bb500683066023100d2dff360872ce1af59a1f98eab72ff40f5e0b1f7633b8e139059a3799397bbfd8de96a8e5f348ae904d277ef24b0e0fa023100fee50ff8dc669e0c2bf15c6d2c36f24946bdcc353b003942bb6e9ac8a1ee078061362f0c40d3e480efca5f873a0e87e70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100993d01f85b419904230da7761cb9342d1edc843283f9eef115d17eb56f0cf71fef63424d123b671c6c895ce46ce4c023023100e90e5af6800c786edb4ca684266d0ea6d00f76c2de5d54beb0bddd76aac8d36bd30453a3f42b91d0fa3164fb09f432a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100dc3ca64f905bc632ab3172451ff1634665e9f1fae8773c95e22b07f5bd921a5a4239e77a0ce200b581639474ab07ffb6023015aa848658d909ba1782702a5d24ff290a610021c8cc4a26735c813cb92acd1ac260acbcd1410609c9b0553b2caded7e0302047c435bb500683066023100a0071cb90f341b1f2bb69abd6cd24c912bdd7b8fa14311be6d795f8f7a13a3ed262cbf2a9e0ff8db57bbc228c6e316ad023100d91f959fb5044e15b39b09817f305681ec514209f4f8121f018f1f517db8709145e1704340a1e0334677fc91a7dc853e0302047c435bb500673065023100e1e2759e50d3627239908391b0901b50cba17af7373b9d8491e2a3ba4badd79bec64a1662a899309df0a7494151ccc580230273fa3a050aed165902fd22df4fc00e7aa7eb74072fb3fd4a7d5561900fe79b142f392536d1bd926ece14db027bb96540302047c435bb500673065023100fb78ff4088c5ffcae41679828311e7a8800a499c36871229c9cdfe3c9d8e1f6bebe63efac9f2b682c8f92130c3c738b302303771b25e52a21612198e0509b46bf9e05806febcd435ba4388d623e657355398cba8d1019e92658d49961c74799149a50302047c435bb500673065023100b5250575d8b44f43eedd80bdbf176968ed11252d6c5ecfa627557a318cadb220e044921ff5220deaad2ff0c20a2ad1b9023076ba7724c27bfb4fa651dda1bb55bbfe86147bc0b35c237213b78fd298948a4ad199761afece2e9eb2f23b47a26d2bc10302047c435bb500683066023100a4a349aced37e62d8db6a43239dc0868c00736ad893697bf143151ce628fcca2c749808dee34c71aab955c3825cd443b023100e70d210289d35fd2baa88048f2650976d60c38851e804444b04d9440731aff28b1796af80576bfa6677a76333d6e2e9b0302047c435bb500673065023100cd2cdd329a7b9e6adf8c932f158f3618908412dc4f45b26c7f49b3ae74867b98dc22cac1c5c0036583bcf848500db3360230217173d4adb207c07e22ba2562566b55e6e8df06b0ed7b561fa0bda376a5258492293a739e8fdc91ce49dbd9073521150302047c435bb50067306502304279bebe8963784d282ddfe74827b2fd6f418e23ee5a9d3bea770a23de4f677f115a1caf73104adec38c2bbaac3a0d8f023100fae0d535da98d265667a7f064d2579ec131752f6c28921588bc26f72c1ee696de7d0c307e37bf171d17e07d3b782b0200302047c435bb50066306402303e97fe09a3265a87ced1185fab93e2fb55a7cb54f84ac05e99ff806b6253e0de3b542733951c9cb6868686591500f6c1023023f0d597ad088611598af34034785ee90897c192851463d276e8e3dc58cc93421c9365b333b5fc1b5f3b0bafe3e00a0b0302047c435bb50066306402306162198ebd223f23c01e900b3c5c413886edb6aa4002f4f2b9ff057c593b0f90b689c320462035389d28857debb3194102307a791560c18d71638bff9722df16b329ff83a83f8810228e8810c3be63ad48dc23a0706416e19cb28e4d75af639670450302047c435bb50067306502305c3f3406220258a6fb05423f8e6b02dd0271a34912b28188a01bc4d84016775227cb2f12546c400e53b10af5c3b8632a023100ccd7719e9d6b97a9ea9eab8dbb0a9f40217b23c7e2a59aeda25761b331dceac24d08a224c0c0f61bed176876189211a40302047c435bb5006630640230280cc0884e0d1258de5e7e1166c53d4ede0ea495f3a8f1e0f913d7906aed89e5a6af54121de2f43dd3f32a59ac95507c023030616b44ababc641a4d6230e67b7bf4776238421f4d6b33f48b98bcbeb8a72eecc88439cc008a548c65f19cfef7c61f80302047c435bb500663064023059e8c36da3e406d1354296d050452e6e219955521f8ecfe0926aac702fe889426370801aa9ec1c2848ad70838474e13802302b3dc0863ec2def9e27d1dca85ed112956dc3e4b5eede3b17fea923c364ee31cab12cd81b9824319ad74617a37b44e600302047c435bb500683066023100927885e0402fccf528a3d1b97361a2def4ae73b96497f75987466812a62199fc58396b13c7b5602d5e63586085b5e9d4023100c9a92e253a35fda09a3effbcd9c2c747e6d33bf420a91b8ccd87ff634c2dbb11cb6f91e19158b843c094677789d1338e0302047c435bb50066306402303643346ecbcc3a6177a86a9cd2ad1d9f646648b5e0a5b85ffe4360c0473b7e9cce0bb81ca4dc52d75d2d32a72b56ae4c02307cb8c764471bc971ff54e5554d0324ebbeb977e753356d7b7fa950ea38099172fedc96a08581ff971d7a981ec7ec786c0302047c435bb500673065023100eabcf15c21a8460faac0a559b79c954dcf935e9dcd1b6aaaf5c08d980d2dc5e47fbf4fdf86e7d9fe5144c8f8654e3401023018943c8ce4acdbede7642de2ed4b6543fca9b11333f9e9e5c9971cfadc158819357dc8fe76d0d8e0329d1421496d3f8f0302047c435bb50066306402300a42e6ac2f70b475e6d568dafb3e8817af5b53cc9b36350655511fb75bf4538e02b019bb9e3365ca7213489bda25588402300ffef74c129441e9706a6ccde516c4554074c308740422e506a32ae0292f3288a7ff8e3d5cb9892cef7e39c8ffa5b9cc0302047c435bb5006730650231008d084f4ec266d57c94dc438f533fa95ecd6b184a9e0ed6f3af161af4e0dd3aa3d8c1e8aee710bc32a4ffc0bfc81c6698023016dd6cae22afe71b6b4e535e03976ae4e130d9831f7685190d3e8ccca1477e5d6634f0026047c37b65d9bccc08e21f4c0302047c435bb5006730650231009057ec522a995c3440df8aa4692ce3bd4016a64d00c6aaf1f7e4721d4741267be514aec0f594b9ea42bda3262d701aa00230664da927bedc585b4b94574d426dff0414e9fe2e5ffc90d981f8ab6a646931daf75a247c1293cf67cf3c641c67755fbc0302047c435bb50067306502307569a8f9dece730c92da0c2ed0f3baf36675bd47b9440bccd66c6587423a8a1338da8b9902849012b6adad188d9952fe023100fac3d625d8d44c991236258a4c166ea4792afda79414f8089b06d9b09e439bb9d524f1c45208f65e539a8d18845ad8d60302047c435bb50067306502306d2c19ad9e56bd9759ce0c695bda553526690b19f3e0d1da475a994b4c3f434f6e6cb3d307a582c9e9f40feb430be8f2023100b383074ab88e1e9b4f6f1b2890e8fb969ae5bebf8e12ade0e56b16744815d9f67cb46814f1155c4255cb999204621c0f0302047c435bb500673065023100f1721d2407e7b5eb5e1cec9c96e74c92d7abfbea6071865d135e59b5853913de2125f985775f6b20f80dd598db3a8ff702300aab046340b589f82d0e5c4a25e030a0830cf6e484a90407ec1e4b9b2d0b296e684a36b802731a2fa161b769d77424690302047c435bb50066306402305c445de882f0d8e17626d1b9adb1ecaaaa1a7ff7e4cc843da79e03a52960f32a2d248367ea244064bcbcdbc982bd014502303f456f7e71fa6ce62acf46c854e5e2072d921f53ca5de46999d1743f06504b846ca97ce801b19faa83f9706afc6a1fae0302047c435bb500673065023100e42c69eb08bf92efe3d9c254938d405d088a4b9e1436b4462724a31a1cfe3e55f182d351f4808af2065f1e83f63e458602302ce9c237bc9f422a3b0bb130d2da4c23da52385620f42e4a9ad40ec225ceb290a2e8e1187a169328e5234671f24a02410302047c435bb50066306402303404beecb98df70e3a5fb6bdfd164bec5cf56df0c65469a2848cfb95224e2addfbf3c495ea78e0b1bc0070ddb9adbc0302304a676f03f6941b802b55e31b6e70f1db69181739641aeb25ee95bdf701778152e36fda5f4a14f01d7ac37fe2b75550470302047c435bb5006630640230257964926c937cb2936de4502b7a364c65964d6032572051f64848d8870d1facb0fb307d03d0ef92d43f7ba8d43f1bf602307fecf99bffd4de71e10ac2c24ec8ed9d41d1cb650434e642b5a838406ab751607e318dc4010e96308564f664d2fc46220302047c435bb500663064023030e2446d4e7ac66f1b815041903b0b937cc05dcb79ff4334c23abefe5464895a8488773ab7fc6c9b1a5055cf9095ef54023052d88373ec3ca4440049630f982cea580244d16cb8a1e800fc796e2b769d6bb6ffd50c69b171c2c2c793e6982996e4d20302047c435bb500673065023020ce27edf6879c53e21b5419bef071380da625664a3049d4eb27ed7b472f26d79deebe5ddddece37a3b15c677b3b4c25023100cb5d3a7584716690c2be66d649917bf95a94c062f93a5157077401f7803173538ff09fbb727077910054dd7f1350806d0302047c435bb500683066023100b61edf9a83540cbd34f1629a647dc6ccd75352850cf4b857085072a44c06be4fb8f16e93161c0983ca97457502402e15023100bfb7bd19471b35c4dbd89605ef063e26a20b918b8545fc0d17021a1c446f12ba2956c7df0831bcc03f88050b933bf1c60302047c435bb50066306402304294c8d82b6a2b9b2019b686458506d33e4ea40f8ef7b5bf3920e32434e3097773e2c9ca314b785283d7ebc1626a5a3702304c5b54d9d2731c2b5f0843a938b5ca75b7c8a77f25a611406ef48641c5149063511edfc7c31fb30ec0742c6cef897c840302047c435bb500683066023100af6547eedda7a4330f73a240472a80c27f5ba7972f1d66726d215de7b39c30cb60cdf89d1e9ec8d8fb5896e818e27891023100ea3aa0e6dc570685c67b38f6def6863a67eecc16b2ed559d6088fc500669f8d95d04594eabe71559efdb0aebe10e53390302047c435bb500663064023039095f78ca1ee2de8fe3c051cf64ed3445453b2fd0d601257c4ba44e78bd8658a37c753edd0998619dd81bd1a0a7dcf20230230936b1cd11e49a8036a70b088aec0369c4488954513b17e29e55009a0d0fe00fe0dd9133ef0c6abba21858d7f77ee00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100de700d27fe2492268aa2d334c7a4ad864d292c971584c850bb74ac135893dd73ea978e12db1705b55a6069adb3ec6d26023100b27618fa09331863bdce572c89bf9e2f226fc991f03caa4ef1920e2e7876efe5a893aaac4aa1128d139eb9bddd4a22e20302047c435bb500673065023066ff345a7e07341b2b3ee71b521592d2f473558cfbba4a71cd45737bae7c2cbd29e7de21fe0fa4af5ac38e21ed91a0ed023100b2efc28db53a4981c6dfc6698291b75b44e604d1a50419998865988b2603848861140cf4c28a2b3b8ec944369506fcdb0302047c435bb500663064023049d560fb740d7ccccba8e561879c64989cbdf9b71715711d36924d876295856cd22c31cd6d2ff001c3ecb061ad6f981902301a3aeae1bda31751462ba2859c07caf35e9a0236c2631681e399abab5fa20a790733699fc850955837d87538ca1568310302047c435bb50066306402301633637cbe322347fd3cd9a369df9ec42c28c2153c25f580c8e0cb35f49dcf38c05a2a6263cc797fcb309307187554ed0230730d3188821a3e45d22a293437babed14de2d0b6fc3dbaffa893c4d2ceeda2c6e5f091725766987ecf19b2fc19bb32650302047c435bb5006730650230245cb465a322fd74510bd16a9dc4deb6d2a25b31ef4516acf064d91281276af9db78d6e02e00c579daf561d9e3d79bd8023100d402f0d42293ea27c53f3f9cd0cd0a9a84d807c12b019d029af7c2ee4614cb48e6b8acb94bc6b863faed7825cb2a366b0302047c435bb500663064023100d2904c05910db278f80cac1e7b1d54a96354f1d7440e357962d31b3acc16b3eb99b335c5986a321dce5b3e78d7d357a0022f78f375be04275f5fcd191552c951558709cd3427d540a7f14a82114722a5d385a1cd81e35ec424f6710bcb486e58da0302047c435bb50067306502307ea1c62b5856ff55dcb9cde3b2c4406b6949db734d87279d9b539f01d9847534609664a43437e37b9248e350a6f1dba40231009c99b7e60035a37e69fce695d2dcf58277bca95fc8f171fcaa2bbd83d306f8376741fa920ffe74455c39d3cd9329398d0302047c435bb500683066023100b5b8f617b7b97580cf3d4d26ce46e4312dff457a945defe6f3c3ef1135256d17daf0d40679e84ff155d050286eb3f4c4023100fed5dfb2eb7900601f53176fdfeddb7a251678fdd58a51829817213d10f7fcb2294db3cdbe997636c0d6477989e546160302047c435bb500683066023100ae254fdf8ce6f678ff32419ba34c17454d3717369f7703b41580a2fa185c0ea27d8ac7e30351c357afc0201af5ec71bd023100fa6e47507ae40c3259543f8b1e097bc7ef19396c01ca03c943aad5ac23d746fc5eab12b5a05696427fc2f5aa653820a80302047c435bb500673065023003b9502adfa2091c121266189802ceee2f38c876e3420d7687f6188d18a34c396c337c1142c2cf7d0a0290eb632cc02a02310094b796e2663daf3603c9c2d05d99943eca7bf038e6d11276b702930b16008bc2e3f461e8fe8261d665ef6dc2415c70150302047c435bb500673065023036e6a360818a2e3f23005fe3be5586d0e0e4034ba235b048fc6205c3c5ce254112dc2281f07a470e4d3826f3461f3ac2023100ce51eb0e5de4d8df8e55d55d994331c10bdc6004e0a7d4f922256b59f1e01f69e97eeeb27c706edac70b7990bfb7a22d0302047c435bb500673065023100c7f39095b19890fb9c388d3e774409cdba0d908297f73e246e816ad12584c6c0aaf3d75b84bc334f8c0a77342ce68ebf0230646a9abdd916d8bf8a6f3c085bab1501918542313ace9995dd20fd4740256ce021dc62710baa3ec88cc0c2e5bb5b599e0302047c435bb50068306602310090723d8adce164ed741ec4c36bbf590956e0576164bb81ac7ca474dd0da4cba9872866cf77c395246d7c135cccee75f10231008deb8dd90860714f80ae1e9fdc77e9c5971ebb357b93a76c8a0696733ecbe151032e327489148e36ed37abf77a718ad00302047c435bb500673065023066afe71515cce0663502185ad4f4abd5bf489c750dd4488c4c1741ea4892b99a8f3bb2ceba0a54ec9f374d0958c08a3d023100f8c8b150755a737ecf03d425875d3eae359855101cdea0b7e2c39fec0aed8e32e3c4957d52bd9f11291ceefe6e4f49120302047c435bb500663064023034d5ea26344cac2bb2ec1c05daddb7057488833f7da03eaf1ffd1f8bfccfb43b7c7bf8a7ff03f4f45252c84cf0733b86023044ed5d070f2224d4c6b2aa3e4fdabb103b70313765a7cf349af1bdcf6669df8ada246033ef95dee1230b615caab182da0302047c435bb5006730650230296bf158ffad9bf40fcf8f4233a90b54d8de71198dc30d04ccacbed1ecf74fb8f7780f76dc5aeb5195a5d074db6c0480023100b0d531f6b5814c8ff39e2ccd3d3008e10052e2fd5c08a0d717de29d890856fa9dd1f581ce8a1e613cd21ed0228cbd8310302047c435bb500663064023029026c2848e46d74339359c35c25503ecfc5f4af4b07f6ae59b7f9858f755d18de5e9e0bd2dcf03d85a6303daefdb3fe02300ea1f161385b409f0a2bb9bf7478400ebc8e395ccae474fb1d6c04f4dd8680dddffad5f61820f267cafc25a911b2a4cd0302047c435bb500673065023100c7e1e32a92f33f46acd8abd5d4c1a18a7452b0b62ba0c3e7a5d89c10c5ccd3847710c01aa4068cb631eb3fc61bdf07fa023014abaa178ee5aaad12682ec442dbdb515398ba84668dd7a2bc8ebe69043593a04bcc87781abb44fa85bc5129a5594e760302047c435bb50066306402301d95c7a222a53d2dd8f89889c14a16c1f93d8ae6429f08700b9acd281a887d55f452658573baf8212695c6a4d7cccc5a023022cc78167cef612937cf8f3ac58026ee21175b4de0531cd6d7fc55360c654e43a294d619ea7d2acaca4da072520d6bd60302047c435bb5006630640230752fbbb516669f8f8fd2765fae25c93c31fa516ca3a850eec7a85c4ce21ef17f34085d81edcbb7475b8507b8c296a35b0230087293a1e042eaf1ff6d4625b7e4a98822d89ee4af45df9737aae04b7bbb23d9cc5de84cf7c69f8d283b2fb359f835910302047c435bb500673065023100a679052afa0bff5c266dd9dc767a1c35da2a7073723c35fc5b92071bacef567c9c0d9825649ddfb6f3c9890e9d6c12f0023001f57456c11e60b02f1ed2f5b6c3f1460fde962b261131f14d714c405d8d0524705e9a318f44bc93f0c8902d975226c10302047c435bb50067306502304086fb42bda8fbd2ae5201b80686889cb5617f961c7b05246722656745d6d95d32b22e5a12720663f6f9580ae3301709023100e71429b8748723b2a45c90f72159685fa7eaed4d4183941426b0e3182881652ab14863fdc3634a56ba94bce86bfd37bd0302047c435bb500663064023063781f7e9165b69503b3e76372cb7d31ecb519d5b2313558f7e9ccb23ce2f2ab58266773beca68e3a28a797c552441980230335fdb5019ac9c3362a841329cafafaf540bcbd47f69e0424539b4d9ab224adbd7ee49a14f0f8fdbbbaccc2c2d5cd8780302047c435bb500683066023100a9a0df4ae5bebeda1aaeca672b521a80ab7949a669ad21903e4520d1bbf4b80af57ef771b9e8a7fe76b4e457df043a99023100817dcd8bfdc0652324060a2136f380b58a7382d2410d1a095a615e505af57194c49d98acf7dbbc1fa61555cd2842e11f0302047c435bb50066306402305a8fb8e6c83d61c6ee5f66ad406aeea969c32e371ca2aa3457ca2674a56f493f95a6d6ec22c2e9eca07bd125545c9e3102301fb99e99df98798087713e9d903e7d32e50d96174f28aedec995b3f945c375b14f741302ef4972efc13d34e44be829450302047c435bb500673065023100e09e2d7e52f10b6ed278ca05a07683b7e836930220fe4f382d9fb6fd33912144a4cfee5078e7db7723ba775a907855eb0230397fa8757cf94bd975e7033171ac65f1da727c56cbb6bffa052e63cb75149b50ebaf0d96b0cce9ba68ffe1b3926362200302047c435bb50067306502304d1f0487b881762f0dce9fe47e42928e0468ad7bcbeb5285b4bcb3e414fb32e24f2a698dc6f4b0a27c526910505b1d6c023100b135a0d9702788333dcc3f9d68dda97e1b19e2dc0116279e901fd6838f25206e1cf8c88bd9008f903357a0fa820304200302047c435bb50067306502310087bf459ad23de822cf2b1816505dc05c514ed90def8325e445e45f19baea89d3ad91a95af7d13d0313748e220aa5048902303dc49e93ef19acd5e118bbb6c27654790b995592367709b06abe6b0439ce53c51db86cb62e07df745565af5f47ff96250302047c435bb5006830660231008447f3f0dbb70ec048c27be04860dc6f2667f356971e03afa91619e41c2cc970679e810b931512b48c3329f624fdd02f023100a77b8df8a28aea6f5a7f964b81f1489873806be64072a88f7a866ced64adabc609098a7a6e159ed01a669ea61dcfc27f0302047c435bb50066306402302c47a4d5accb8f238729039ad16ca65e2e47fe6595a977561886eaff82ab06ceefb105dec047211dc6d8f939509b707b02303c942db1ec22f6efb1965c97a665c836f49dd724fc6a8858ea6df4bc09aa12894faac74101e436e5996dec3ba85c046d0302047c435bb50066306402304ebf160d3527ca10661a05f2207edd51f4aabf5c3837840639f6ed344280537a18f90439eefff87f5f05a5bd3e1eb394023032eea112df2a27acde9da644332d7b8c71166351b2ef31f2542ae47f3a5a660709724a4d63dedd0f7d9d47c481e14bae0302047c435bb50067306502305861ce6c6678c1720e865eb80f88b7498d5869319ec22ddb820a7ad8852ad91c3bd503d9c459e44debcb413a74e3f3cd0231009a54eccd9152767ccf95059729cf8d816223681155284948b5e52f2dd493a7caf02c5f8e229e71836bbb1de6df2c62f20302047c435bb5006730650231008fdc9341cd4d8678a7387bafc6c12e08299d97cf91f289667b3552f1edd75ee2cf6ae4a6a4b40067337147ec97bc7661023014a4c122c67f79e6bdd9595ebe88d342c5707f3008a22874ddc724f2fc0f03877ecc0b243a14e3bbf905e4303f53cf5b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306c5a41f57cccae929f4e082dcf61d9cbee0232775249c17159b1272825d8b6d94c8fa964f647ce35a8382115ce2305cf0230131e5e5c1cf0d087fa1fb98163c23ea70ef2022af09801046b17bf1e454ac5b3b3e03ba2ca21564c38fd6c635e2fe7d40302047c435bb500673065023100c78cf428fb3d97333edecca4e0bbf48dd7ee87cab8b4b83e9eb817ca1dec54ef9f670b7e15fc05ef793ce0ed372370db02305ede7285a1110fc3a29627c606390cad4edf56c40ca5650dec718efae09e6ee38a7262a467853e148132e666c9855eef0302047c435bb500673065023100cfba836cad95a680f31ed88203295b0ebda8048ff66919d0cf97d3cfd8ba4d7ad9c0b0260f738e488c80ec42b28afe00023039109e90e9fc103cf6f611c11e959603635f8c3f14e30d71b4600bb1bfeaea0ff4af6d6b942cc9fb558748bf715f5a970302047c435bb500673065023005889df3e75b0e21053966126902c076c63be83a80c65a008b70b651eb8e60a38aaef1819bdce130bc767108d3787b30023100df49f47a251f5b0ba62d96f799f2d4876234520dad7b11d758559ebfc77dde448a392e00098b39a60f7f04bf7194c12b0302047c435bb5006830660231008857f6a184a3328f81fde8ecc66380c5de6f47dd0f1e390012c0496c1757ccc41f3538c0c308593ed6e5fdb12c66d249023100a941b2061b034950e7e15349c405100931805abbf0e53d36fd53c370bb17c69b841fdb5780b5e168a5b9f2e531bc77a10302047c435bb500683066023100a9c877e32637f17a144dc58ad96ebf9ac4be5158cdded519bca065befd93814023d24c517b6d8a2af15cf9f3f34659970231009fce1254518d1760ed29db9a544a02553ef239bc44b72cd798b358f234a147d72acada2f206d7c93ff0b404dc68fa63a0302047c435bb5006630640230152a7c88a0c482b5b09af7328beade60c54474eee828236ee33cc7240f6b9071d47ccc6e5afe46d42991c781d866f86f023035ba03c47d05ca5e703fcf4813e650f2021e5e08dfaa019577ec9bd5399dc762a45ee9863ab8e5f4be7eef498e75c0fc0302047c435bb500663064023010816fa092a225834f2806bcb58c7b1d883121704e46a83494fb08c4202089e04e62decf5c90f57f222746b943a7d839023034fc7d030b87da2320aa3bf284461b605f97fd94ea26ce02f63044e49e7abc71e87546f3a500f5a3ded391ec7937e6420302047c435bb500683066023100c884f690db8d29ed1c7fbac94aeb17c42144908c448d21dc0d02a744ef4dbc3ac71070e8a86dd2b9a56e4b0592e9f2ff023100c0dd7bce7df883f4707cce8f70f92453fc5e4ea6f1e62b61a61159cb9f0f7dd5af6263115f7ad74653f5d331a51a393b0302047c435bb50067306502303af281e7b68951de87b58af08915f35f78d83eb105aabd6a8ea252a9ea4ecf0e3dd421fb249ec424d4990baad8864683023100ea14d9f67f99dc6f1688e3d4ac3e6b8f92f82e46737370beed7a0aadd74d42287c759b6243cac0d6d07ce07fc62cd4520302047c435bb500683066023100fc08137e54ebdb7f67d04cf20643c9ede986b38f9296a8eaee26e23af94a90c39321ad0a0830767e7fc71c1a0d7652470231009b690c0bb6567c15585f19a0726bd94778ec884130557a90bcd52943e599aa1bd4028289438cd73cf6469801c5cd7b1f0302047c435bb5006730650230700d9b4e4f065f2b4d534ba2ebc23bfe7dcc170c6d93b2cfa378e963f929e62dc3093536432c45e2b0b594350ef1404e0231008b9468b56148910fe7745f2f94b348b022923c983755ce7ba5ec50318485e517548e0bf0d208155173a7ea56f98ae90e0302047c435bb500673065023020b1853d587879a1df1f412a8457732baeb8c30c8da65ebf6301d6ba368e82da3748cdcdb9518619dc51f339993d88c2023100e1d41e907270609c43193d25fb5dedebe719371331ad07c9595973e586b0a628b1e63520fa35199feffb7b68dd6e2e6d0302047c435bb500663064023033ecc8882e725bfe4a2acd76f74cc48d589a4b84c7dcf27339daf28d14caeed781d7082c6a12e792baa4bd2e609c3aeb023046509d9c1a4302e46f24be1565af8ffab650f1f0238f92e406afe42a73e6a3589c86075cf1c9bba8384ab4542cdf6d490302047c435bb50066306402303955fe6c3b5df11a20bb7e53145808af9401255b3cdf54bf382e889ad5258f0052e1b43ef58b9df255a5ec231a111bd5023063fbd11a879e5320c27c651923bf1979bc533d9d4782b0ce1e6cbf328a5eaebb3c80995cc53512af7ea8b814bc004f070302047c435bb500683066023100d4863e7c78905932da7eafebcb4e483918097217535ba93a8f95b73f73271c0e4bc52e79563eebc55ffbda2281b6ba1e023100c825f84ad9e4d31f1a4ee8e0e0949b360360b26e5e737be508266d41e5edb1005419af0297a15047c924eae6e1fa2bab0302047c435bb5006730650230114046a84506c1545850e5cbd11ec04e941cd7a2ffe46a67979685da93c75081c1bc087ceec7619f9ec2a28750aec4d7023100a26e368311c83416c5c7c24937784861f6a87db2a55421240f4348b69f24a9be6015c460fddddcd460a56bc03d486ff60302047c435bb500663064023047762fe2036de427ae1fcd5cd4eb47e1227b151256366bb5f805763acb7bd8dc3a4da0b2b22fa0400f0addea380bbd0d0230788d130c8cafd94cbbcf90dd88960e54887f5ea3025547d8b19274da9f2fc93afac1c2bff56b257b25ffe36b30aacff00302047c435bb50066306402301c0ca5f4149a14a377971a7964a7fb5bc4f57d3245c552cfdb02e96c3cd2074b45b9759285cf2965fd0b37c6a367c7d802300e268c4de9085127dfcb0c92433b68196c840a6db1f5eaf899a2c8a7b002fe8fb4e909e175d120ee4d33e69bfce35eb50302047c435bb50067306502305f44497cf28caede328ae6bf6471d3beee3b8768a2558cfc040fe9c80db277268cf44436034328e2b3bdf4d6a16855d802310094c5d35dee9753297f329b967617e963dd84c0e0e8e00eb98185bb9b9e916caa003ae7fd60d1e8b64932a4d3eb977a310302047c435bb500683066023100a20e347b409be13766a16c513c7ad89d7055686f958187c972d7ea5405079cdf512dcc38c08f1391fcc9e1c87c2d0761023100d9eddbefcb2b770d9f2da86b011274996ea5e959a5ce2c432e5e54b976f75f56a7dd887f74468a7d76aad7b420e05f0c0302047c435bb5006630640230555aeccd2d09fcd6fff39915df74f7dfdbf900f816913a9779f59db0a41f70fd34cbd202fdd9e186df10d6ffec57142602306fb997c68e1567087159990e284daf96c23a9b3c8f02ddd1424d0dc56d6d0d31169bbc3a8d02b7bcd44faede9b3016bb0302047c435bb500673065023100d832b39e0e74c30b4b84673b692c7b0e8b76c90cbef71e75681b5e50e24a3bc9e7ec42165429147131f4442ddd67710d0230059d3dc0d38c74d0f9437cefd3ac517dde2e5cfcb84df379c255f52d868bd5e75425f408ce07470b4de646d24f28c39c0302047c435bb500673065023100f4a34b4ee2f45da581adc3cf75eb3ff03d6ef8e1618e928d3e0cdec75dd24efeb1e74a0cd90dd13b2b651eb797e8d4b202300b6d7701c3740fafa4f1a780e432a4488d8d1ccaa4689755878c846fd04d7f7dab1dba5db59729b5897d1aecaa0dd4b00302047c435bb50066306402300d1c77596b3c314d2e62411b944bd2de91ae69ce1b7fef939a7ab702aadd3a1490531888ee7a8f7fbfd9a8831ec904220230009df0278d831d96745f906567f3424875a636bfe92d7ac682cec6109d7e2029af9b181b9e2bfc91e750fa7a6bf430820302047c435bb500683066023100bcfc7956d4120fc1b48f385f25f20eaba14dca26a61e7bf9d02c7c488ab643be6cbd55df4bb55fb8635954afbee550ef0231009b6e9c48a31c39e39853a8c7136d0d88d9fcee175987df457a906672bd1fcae3d386c2120e55da08a6334d2cb2f950cd0302047c435bb500683066023100f1fd7002f8ab60a6c1a28aeeb005fb6010324968e4a89091029b4e2129639baaa6bccbc42dfeca334d5fa9fcdf44345c023100aed8525881164296bf35c9367d117f0f29355124a48331ff0c365791d800d364ed6e0f08f7b3101c527d4fc9ecb89b730302047c435bb500673065023067e55654491fd8896532bcc36e48a2b38bae1416a14c7b7761793f5c2c34c64aaa27a6362f35a5a2fab2822f9ecdf07c023100f4f9dc122ffc0cd23ea0c3cc09b79eb22f19f06cd7b1a4aa49b6d849c285976683ef12e5f477df866da0d0f7a5078c2b0302047c435bb5006630640230439d0ee00bbed915543a3fa317654244c202b0fceaba6dfaf9d663d8ac1774d63c56ddcce72f91f9ac26bcbbe9831c3c0230773fb361601540ac1d1fe0baeacf99942b9c4a49e5c64cbe4d3cc8c396b0251f7a07d1274f95ee8b3cd7ace9a0becc150302047c435bb500683066023100c122f4455f476913026a68f97fa12636c4dd685a8aa3f633cbe772df3b9d361f7950c64cd24b05c5903406e214d4e9c3023100ee9383088ee66b9c77955ae23570d41cbac5c7a0944201859c867e3661793ac914339eece2f11cd8fcaf1377d3f544b90302047c435bb500663064023022c5d5aca08e0784c04d4dfe25f4d2683b464b5b786c9961ec74b384a2bba4a1f167c052c37493b5c6c083d11065399302303b3d131ea293ef7c6d4ddb7a834da252791c605cda8db15d2012350f05e2e0b391f0ee77d3a4a5114127dda6cb010fba0302047c435bb500683066023100b11e335df879d6f0e9fbbd5bba5f99f993f852911e8a3ef5aa9c1a4106cf8fb9312b02f61139ae964b28725e2fb39a2d023100e43db55e18e3bb33530163b5ebc4c66b828459055b23c2bc893bea22216141ff1b83bd24769690b97cf53761f4d5f83e0302047c435bb500683066023100e66f60da232c51d0ec1b1aee2a8b29a531a6ad0f4e2aef968d03d3cb48528fd91c159aef17a598a2083c7aedcf94174e023100c6f13d5cfa2edf6205fa5082fd09a7b4d0c860ff139bd0f8959edb27ea72602240d365ed7a7ab38264488d3455bbdcf40302047c435bb500673065023100ab9bd43c7ffef398467dbb6d1ab2ed3a1d90a90af91bb14c74d713a9de9172f97b6aa3f5c1c40e83f2451ae7c70a494a02303c13b5a631cc5b0ce112c593f2a5bf13cf6d89bc7d84cc4d9bad641449e3df1e80eea321fadda404c92272381fa65d570302047c435bb500683066023100b3ae3420be2d71f222735e1fd0fcd5bd23921504dfaaae3769ea62013602a2752572b5f34816ab37fd96675e7079105a023100812924845ba1214bbc35f986811fb68f73d624d70fd43f008c536959a8146f907131fa69edc1a5217b2ba77122f16b100302047c435bb50066306402307bb45bb4c2ecaec03229e401f1ea0c18fb44b2b1fa2e2e7ac1e4245efa68dc7a84c253b0bfc271e09e9ec77c36f0500802303600cc30dcb46c8b8ab40ba4a792066f3a917dff72cb02fd9ebf7d3bd68bb3db9a709a262aeccdde67e3b9b0d6f29d020302047c435bb500683066023100c5617dc25267df7a82e32dfa54f33110701cef25c8f0de84ff951097e9e461cf78c761975dcfc49460b48d66f5c461e8023100e63ce4dd2d3c2f7ac1d8b0f55dd6e43192371a74d1810c614e87ef8ae93e08a17bd1313a1e570748f07d354fc137dfc10302047c435bb500673065023036d79d822502a4022343c3d412d57c074b6f473d50f90c5e9c6af9cdbea55584f00824fe57ed23150cd46908211bdcde023100b7495cb05597f78a96a9102660f309c7825ffabc2e70f87be8a8604a7de7d9f86aaf638b990123f532cf2ce13541a0f50302047c435bb500673065023100ad6f2b4b567be576990f3accc8686f00cbaf507b38a0299150073fcf16cb0834cfa31e64a0c78aea860d0d103765cb9b02302a142516f0cda85dc17a95e58cd3846b2e036f06039e2fb3d2f786ee6e39f52e24b4ce3a14b22c37b590eb295ddefb620302047c435bb500663064023000ce9250a4f8dbfdbed13b99f55771db386b212dde2224e52ba764d6b0b9cccef44a92b32d19c5f0d4959041899dfbc70230081bb584b5c5fd6c5723c0c402a691ca5686c0a91a0869435bea515d43944d997aabb06f2cf169d983687a3dfe56b9ec0302047c435bb500683066023100fb7100f4f6fe0e1178ae7f742f74acad6fa414b966040f5a0fd33e7dfc09ec30d9da8136f87535502ec8bd2bb56db3450231008c0b9c0309a387f3a76663bb024020121533a2951be42cd04abc627e619137620f8092cc6e7939cc74c4ad916183b0e00302047c435bb500683066023100ad14e19ea0a75ba325c935a9acafd6acddd39eb7a5dd56bb16481b0da78f9a6dc46d316f968cdc623e61472d88af48e7023100ae2cff8d0f36f090fc9a46ef7cc2c7747a6f3419cb82344fe4d17c1d2ff8ccb9cd837002071f6a5f356d1109f8f984270302047c435bb50067306502303b87a99302ec375bfffe627d88849ac5ba763782342c8cd3144b8a12557eb7f4fca544212352a4fc2d87131c968177a6023100e3bfb08ed993e50c8104905d70a35659b6fa153180d2685c4885eccb372d4d84bc1c7dd8e8af9339f84957bc3e13a3220302047c435bb5006630640230551491ce757695b25adcf8b8a4135710be2b28dcbd1496d5a617b72acb66a54e9088c11a85d447a7656438ea0eefd0eb023011a30525796c0bbe4b9a51eeb98c0b0a63f0df1840d3c2b8d8e57ef890ecf15d9bed4b0453a18a6e0c123834a97563c50302047c435bb500683066023100e3060d7e2759f4139745709785d9d85b8eab2e60a069914f33d0a9cc0dd3616a736eb37dd1b0c6c28310cc15a508ff2b023100c48ad3153fd58327b63363a7ae33efce3463007866b014fba13fc0277d59fe6c2831f9a554c45d96ae050a51e3ded9970302047c435bb5006730650230748440f1252ccab61d18832ed63c465ce350c6e1926b8c331ba6dbcf86e3246fe3439846d6a3c48192b0530d5ca0111a023100c77b0fe3c2a6f8dce4d1e63dea6356a2568386c3058d2229af7a14f6b4a0b5036887e9f346d43d63c0e29f98dca846530302047c435bb500673065023100fc3c89bc8b0e32147fbd909ef2f97e8d4d5766647e468523f6dcb05eef1986b6aeda5c04407c40c1f3c649406de1b885023014eea8115f57a1403948577dd033e18fb2038c25e6c31a171462506d39c3e674a9961db869750dcc99701755636cb15d0302047c435bb500673065023100c2581ced419df0ed0a177c35845caea636e134ad4271c396391d5a0d16373a8deec13f6b41f5fe865a5d6b2f8d0cfd30023015b7121a5b7fcdeeb46840219a6888893783ba6a8115cf0d912d940d5f3d27a16a43af209117ed6a7996dd96fa9bcbb80302047c435bb50067306502302c6a90c5ff3aea3f2ec3ed4c3cc6824447c2c6a90be2c0d78f27f58861b415e9a178164a79695dda8ccf3196d487b0da02310089b5e320098340caa6324238a4de7a7e950486c97a03f27a61d2a249c97435c383b72027b19999da1f7e183950db348a0302047c435bb50066306402303e2af958cd9272fcc91667101ea0c597a992df940cbe4a80c1685d83069000ae2e0c119e2e5da4effd53146fa5f3c571023060c67fa352ee0771ec7fc9b63db3b7d399581250f54867ce503a293596c74bdd30f222af711c39d7e0635c13ce9d5e440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305894e80a20107e6d09dee0a119696c0efddadfe98aad0831337e5c7b9471a2a0da4812afed9864f3724a6d093ff955ca023021c592d2b72b6a41204efe3170bfd8d12991e962d2664f75ef5b800cf6c590aef682cd37baf43711af5a131c7950bf240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023034a528d1ddc2349cd126b72b2b3da7abc6869a0c78eff7461cb53227df3adb0e74d986c2217d663b20f8108770a11324023100e8a829654479178d3f762d6c04e74b0975bf11c3dddfc3c52ce016c09e02af7192db18d2348e75aca2dd3f30855884860302047c435bb500673065023100f9881d6715a037f72acea2531886aa417e324d88856eaa7e922ba9eedae3d4ab9ac0b8400243e992dc842be47a17522f023068190175743c01481251a9c73acf128688c76be9c9a3a43ae8fcdc84f8ec55adb60d61aab0f98bdd09c7de82894d80c20302047c435bb500683066023100badf58c3c907e10be4f4ca03ce1f38ace83f055f3dc28692bf6cb1b4132b866f5056fd79a300a8491204bb6226efabac023100c6c7de24585b29375a8ff784571df85cb45ed993aa6b8b1a85d8f298856ce281901fa92ce4baf2e551ab0b77788089440302047c435bb500673065023100ce0afbe1828644123395156538c315678e179bbac790538793ceacfcdc94d41aef1c9a00bb22dc13c51be47ca7e0463b02304b2a9475fb84e0656780328d0f9263fe6fece2e4196737ba0e16f478c270cdd1162d41f4e6fd90a9d256f4f1260a29f60302047c435bb500683066023100a0fd448caa2159ee7a6e533e0c3aef05eeaa8424e2579e1969173470dafcbaaf346eaf6e038a02fa3d17f498ee2d228f02310086192f89630c3d109ed0affce59610f19c4f884996b7e1e3c8f2034955c45c00f7dbb295b25b228d5187ba80bbd518910302047c435bb5006730650231009a59880569891d138d05a6044e238a094f1858af829a78b4910c0dfa18939e9f9bdd5043145a0793c6dbbfbe68f1eea2023046c0fdb39ae952bff1d18007cd4ae1247e798eceba57d0bffc63871ec75d0b36474fd7f411886f9642d27814d3843ce90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303287c47522e7c19cafbf254f3f22aac27907f1c6c8aaddece0120716754dd23125897b580adc2c9659b6641026fe459e023047e0827742dccf7b1529e9a806c70f2d80ba70a6b77ed9051f2a08646a3ae96600509185a0ccd51aa05863dfb53d95100302047c435bb500683066023100fd46356b7a373e9fc4faab71840bd19b36e89179888c3b6e5cdb82cba2f199210494151829d27c3242459840abef7d63023100c148bf4d9ee54ce6143ed8389e6b25ee32880274af48e8c6c9df290b78708c9bac21857f58f92f9419c067de7eafc34a0302047c435bb50066306402302080b2df37094b6aea9be2791214820168747e4e3c8dce72553e5ae175a23ba299e9a6bdfb272f93b067285a50005b3b02302f321e2ec3e16ea4f652fb277b2395452bac735033b7232ffe1cf1e28fcec6d5a9cc5538f82a6b22d3923f41c06da31e0302047c435bb500683066023100febc69e7dbc361c34fcf3103d3444de3ebb6a0b132b00677be5d5e0547bfd5f1bee834b4e98e25cd43fb2eca3b08ca09023100b2f488cb075b63ba1f540ca90d2d66624a794b688372d562b224842edaad1ceec456a12d2e49a7fedfd5278dced13e4c0302047c435bb50067306502305f527ff8b543f6850e8f8313698854696a92934ad998f804279597b9253c556f7990991f160446afb37ec26223afcf8f023100eef11a6274b3acb11a0f93307af67c95c1e4e697a5d0d49088d848bc4c310e6292e525bc5321605a39294ac79df38a9f0302047c435bb5006830660231009a902c2cc5981977217353d827edbcc4664d7a447425e5cf9966d766e515a14bd49f009ade7535e8c0a3484abfa8a1900231008bf0f2534d3f1a0140118bad2a0c1eed1f9d7fd518c6ef3d7581ad278bc015932c0134a789e7edd206f0f7337273e39a0302047c435bb50066306402306a5430de9a79607158c2fc3c9d99b366245b41061c603e742adf130e799dc4e7b3acc90d3a2a29ddbe4ce086603ad37902301bce4c07155311c9b2edf33061bc422013109bf75ebfa647dad6d98a8a636ee97e489f3f2a5569f1af85cbf79d83ef720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008361f61e2efb2fbaf11b24c5bd30a9d0b85d3860fd3f302dd1fbf6f0158eaee409ffc7b234ad6ccfa1fe6993729f7d8d023100eb1fdf5ee9d8547e68e4eab7dfad4e2f079255efc6ea97228b267f63186791bcb7de69718c4738b45c956a26d68151ba0302047c435bb5006630640230486325d3ccc5dd726db0dd697f2f8dd674f2c15133c90bf82de770e6edf799411236fcee2b788c6b712cb0dd9703aab702301f67dae9f424851c9f0df18fe76fde527039fbd128b2406597e6c6e9817ace1a6a9fa51557c54f720d17d3ae7d32afae0302047c435bb5006730650230613351b900b1cf065cd95fd0caae34a21348b38758d860b8caa3cd6009a46c8403b8b897e40abed8b59a32f1bd0b680d023100d339b12d788cdaf44306a3ffab794f0da2ddc012c2ee12847db164edfd2b458b7133c2dc3fa5fd9ffe430f67eb3c2b190302047c435bb500683066023100d87562c95c59779213b4c41b4055087a25f918b509be6abd2b755439b042b61cdafe9cea939b6411749c7879bedb7459023100b06995f5ad9e82d628eabac1e317c35789908e7f8eec546494d59a89938f9bc85e0747a89e1df479daedab31f98821e10302047c435bb50067306502306ba3fe106972a89b5563383f46b0de652c16875bc6a9fc83a4e6e3b9bfe8eba7adcc82fabf4e0c12a6b3568f03a754da023100f77d5c2b79663737a995b1e0e0b4f0b00cefb2c7c6c80fea97ed6070634233dc593b02c6009bdb9b5c1b3e89d7c6d2b20302047c435bb500673065023100e0fcecd4eaf8176a7058ea0366e182afb9b114fcb324486fe38e09d67bc16423c09feab5afbd40f3b956cbb48444967502302edf63cab85ab8c0f53c801bf07bbd4bb815821012beac88a98b4872170263895decff5583465c1ab014f02f8be3f6ed0302047c435bb500683066023100e15c65496530472cdcd2de9b6c427f0054bc845beb2ebbff8cad4d4c481ba301f93a04291f9ddb1c355de527dddbf858023100f529651637e28f979f1af47688ff0ff9e95eecd3600b04a59472d57ca8918a291b27eb0cb344fc592705d0a46b7db58a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b1f5e96a1ecfdb759a5fe907a05802a0218e2f2a9f096c2f8378b2fd3052d0d980b6ff2ae515c754fe50ed72da6ce4d702310085cc4f0709a363a3c2ac5f07432fd99ae6cc734126c8ab698b90612676a0eb92b9c9f45f6c4f2119eca3ec1bb76fc3960302047c435bb500683066023100d24346fd45c521f04ae68e03ac777aa8e359cfbbd814fe98ece991860559267f35248c461600c13e176fda6a305a158b023100aa44156b49f7d2b2cb2d27e9e6eaa5dae814f29bd12bcdfb57cebd7329921757f598eb5ac193d790536c1d68dbc494480302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023070e31932d7ffc2e1502e3c4c54bfd136d5a3387fc75fedeb9fee77173278484490cf8cd476ece2a26142aeca0756bb3d023040ea60114dff084b2e424f9f43453a9380f6430346484d0b88820390cbfc10717b1532916f98a015f33b17d90fbe02850302047c435bb500663064023061a42e1602479f9cb207ebaba5639f2c0284a736876d71857098685ba1fce995439a9f0ee4ae1e54799cc41f961054a302305f15ce442251fc9155d5f7d554c4eb0e2b803c793d45f67de8aa54b4bf5f0437f833fd9b0ca1c8cbb2335e0e556dd63a0302047c435bb50067306502310085169d49070292a00bec1fb29d0ecab412634c6d505f852e7d98e81ed6a59c024fc3770e89b8c46977753a4fcce1fe7902303f74bf671bb689b0648b99a6ddbe0716cdee96d7dd7501976a6e79b56ae52370c3105244419a2ea1576b1368621185f60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305ed16b701ba1eddfea412f1c69e6978ad2e9dbb87695710728c78fab9abe1777ddc88e400d3c29a775fc2412e1ee8f6f023100b4a3a3f21d062c505e6446eb71b73f79af7b763e936204b56b7caaf72c994c86064351a27833b6bf7c5beb83a5752d3f0302047c435bb50068306602310096ca76b5641abf631f0ecac5e3ad8cfd7b4075329bf48aee0aa51d19ddeb2afa0a0d9ef4c369166135e4158b981b902202310080fefb338b528930e81417445193d534680e9863a9d5e24dcd88ff877bfefbdcec85fd69b5c23cd8de7bb1e18ca954320302047c435bb500673065023100bbc435b032e7e0f36af499cae5cc23e026f5621399f57e45f0f90b2fec93b9dc29ebcae53a160ef5b2d0b6d21917a0f802305d29e32a903825f8e225608cab369d9e6cca54e8244bcb4664a4b8989601d8bd827731397b522e2d4c468ef92df31a680302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023031498ea5cb266ac2eca9a3c9fa7329b6dde46fa3029a8f8af9b3e5d0621f72a31e375a54053f986deb79025568175cd7023037508970b17185c6bf3dade96723b75de5bf763a630946fc7bb4d5ba42ceb2710a55679487d8a9a71fc67925b95c2a0a0302047c435bb500683066023100bf4d8e73ed550f53e339e9bdf74e76af40981443eb55794f8b34ca89f0e6a1be438c0fa36c48a75f783a9e59d0973ef5023100b610cba46732cff830af77fcfb7577428feadc51745af9a5e0dcbfee1e6e8f118bc9cd202ac6c646653f2d0149061c590302047c435bb500673065023100dd057fef2ca5e3b3f6f7cb8b55060480d90255ce36f214876c699d1e39628cb52e517fb5011897e75b777df43eccd4a0023065589caab1e0b9c012d091612b928d97fc2fa68226dad2feaaebd65ee0cfd0caedf614e18359867ef727e396ec1f59510302047c435bb500663064023068d14a219c5cd521a663c762c59078fe876e721d634721979b9e4107be23204c1c5eb3ed2844a7ee61302a2daa8581c30230295808858ff3a3581930494c215bc4c2de6e05175c91824c3d5e5baac8873e314f434b313553729364dbb15e74d8a3700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023011be4bfec1a64bee306944a83ace2b5b84d8e0d3360931ab4183aac1a6226dc13e24e5999c21387a4491b25b6bb641ce023100e1a709c6905ce87917110c7c5779ca3f97bab6151b58815f495dc0fc5bd68b75c99218359c6ba7513cd5172dfb45ddb40302047c435bb50067306502310092a2c33369a41e3d943ed22847fc13d48c79406ff9a84ec0e3ef30b9ea2584ea1be50d4436784d107c94dcc4c1e9e94c02300c16b473fdbb7e014ed5f0885c7f0eee32e1d16fa73225f38f1c4ad6053e2b83140beb6a4c9301d7c33a0e1e6bc7f83a0302047c435bb50067306502307f04d78bdb1809e4048dc17eaa37862f523c3245d69b73d315a1c2877d5a5265217c041a74b651df1d2f32476646ae4f0231008d55c6661e3caf84d6b6324429c89baa1130245220e07b7eeb3d59cccb15a75ed47e857107e5a4f665e8fdf20303c1500302047c435bb500673065023070caf398121114c152a104a89239ead43ae100fa0433b5eea367d525f56fe0268c1afa7dae759acfb04545928634a707023100ead9e2aa9d745d8ef60b0ff6f95d882b9700d65c05f6b67f19dc667a0174d15de2cc6e940d8047df4c553b886a9119750302047c435bb500683066023100e1c3e0203f4e9cee0471fbe91ecac6f8914501bda7c0e9652fef482da9475cf4209e1e8f8fdb6dda442ec187cac877df023100ffd7338f65042333b9c6288a7e1018aa45c7eed231d1f99b9805052cc377afa530c5552b4ad19ae6193de3464f5d65510302047c435bb50066306402303c853d769b3547bbbdb57a162a2d5d946dfda9dc20df4adef205c47f33b6d15c7369c30598915a64173831a3e828e7320230663acce65e45863270a124fad518c37ddb16aa9e48775d769601706bcd88f72fc222589fc5da22d843f48f0c5b8053150302047c435bb500673065023100c3afa75719f89bcc2f5742c5be3f415323055e0e5a526f06dccbe5c17e61653b09d2661627997c0dad29ff08164335490230464ab49eeb126e1dfc38f90e1838c8901f7e2c81156bbc5251c629d6cc0b7ea17de16866da024b07a804be9b2a43ab4b0302047c435bb5006730650230506d7dea3a53d1361bb1a9d9b7c62311a48cdf6d8ba9b16e1742cb8127fda1f1d1c0cc89c2c547dff92a25f1ef03cc57023100890569a6acbf4a9be5c9664c465faedc7f118275ff2556b8aa95408de47fe4a1f9cb170fa2fc611eec9ab0832c7c26760302047c435bb500673065023009ebeb4cf50ac088f8a1cd1b473159db0e0f038f5630f61ebe787b8af90e4421af6b6361dfb7ca9c240bb83a016fc0f3023100f4d897b15e1f7e43cea350a87b7653eca5653eba88f704eb9243c54dadde61074a6b540ad13222d40b6abf4c7ef014840302047c435bb50066306402306d179a1a5010a81f89e7e1ae7afd0d5b5d3a97ca43f7ee33779d739eb2a23acca936738546c7e71d0d9025edce6c90c80230202b3ee8fc9cde7f931535dbf275ef625228cbae9379f46ba1e35c95d83a9790c61f68d6928c49e8a56278d244daf47d0302047c435bb500673065023100844ac706f18b4f53a5e868a25828066de41a0ccf358ac2544109593df667387db1a8c50ad3d33e3a88e9834ccba84a8102302c505b3420dddb3d5e73be174012bc9461ae1df18b22f4f83a2ad13e6e01e6c6a0a51b3225fa113f6f3f75b2edbc232a0302047c435bb500673065023100bc83b54d6bbf360a720496bfd541b08cd40f6990e122720095854be6693bb9f41f06fec13aeec56b0212f818c250e8fe0230596d13f08758651aec5399ca437829cfebabab5950f0ebd87f538ffa04b1534b1dd2971e91b5ae314c826387cccddd660302047c435bb500673065023100b1ae6bbbd2e916f295a705139d944ace6d468f044428e7e0fa14868228b805c34744fdfd5cd2f41dc3f759dd8ef1c02b02305182581f9eac7a9e3474a1dfff9998547ccc42bac665abac6b40cb0d6282d264b6e157542c8163c6b45760cb1879d1870302047c435bb500663064022f11f8b4d36fd538114dd74e3493ec9dd6990631a170f7e193a225f84ff35f8384d6431a791a72306dae20461c9a4093023100bdb4aa7dfeb29051d664a70db2a918116643609a89c95294daced7081a6c98c6a850e4baeec4058ac5cca537f25709000302047c435bb50067306502305795ed9b1761f0308fdd5c754fc16864772349f31422c24e2e19c60197ae0f9db846f39930a1881e0720763a3d9c4266023100dd4f1ddea4f41b196f20aaf3ee7eba11d7e98c8ad0233b47a1155698faba31c969ed97200a4f66b371fa9b82f3668c9a0302047c435bb500683066023100bdfdccde2f4133464ff1f7520eab789d4570b5efcc8ba512e59c5f68d9faae89c3c005d6698de68508598cc0e8049ebc0231009100798af1604ee6a2193a5822498ae58119439740f7925f7e90fe4679a666ba1ef4cb6b6ca5442058e0f0637271bc520302047c435bb50067306502304cf6b8a935a66c53ac32515f8daee35844df680b5e43b73f19b0f4301b073d296d16fae28dad9e79b4bbce7a271fecc5023100de493ac9d1179b0315fbb2d044a7766731d9ea25edfc7dbca18d778f8a6e22e7c815458d20b370f7129f4bf05923fece0302047c435bb500673065023100992e649e01abc3b490eb918d4359501a2f983173a161a3f1ad03a02fe0cce4dc54fcc0e60890fa0cbf1357deeb82820a02307ba412d9a852d4f6af54006ec2147cb8b21e152c7d7f10a35a38a7bdb75070febf1322d07dddd6e633071ae662d14cd30302047c435bb500683066023100bcd8ef011e3dcd3a04a72c964acadca02c2dc2f063ff130117c2a2271778729e8358a52df77c2da6e2e33a7f6aa26539023100cba300999fdd9b62d56b9017644e1def6684ad18ab37d9042019f1e178ccfe162099e6325daaa96892deeabb814d7ca30302047c435bb500673065023100f97996ea3a6e3b260d6cb8f9c29c14f3205b74b6c75bdb2f43023de0b7c74ea7f978297454060b3e52613f4c31a1925502300d0458d514df83bfc99d099ceb2e76a3a407f79519da03556acedae0154764ced367475f0b934419f39e66edfd35bf580302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a5a7292c99898404fb74e11cdcbe8e4f9a963567644fffa4f7293641b7c884e83ebb95cffd5b8f9797755136b9540952023058b9710fa5e054efd96e07515487dadc4dac85a9c929d2f20f96f3779dd338d1c36221b2f926b47f6df0efe1540809e80302047c435bb500673065023100a7aa7b05fd16d808bf00994631d31675a5569af447105b25b66a46d52eea4a4741ecc64ef39253ff132e98bc892010a2023029e0fc82d2675c641031bfc47e7cab66783a095aeaffe4c88dbe236068140484346105c317f5e4efd501a438b851b9940302047c435bb500673065023004f8ff33f9ed1f02fe83916deb0da63c3321fa78936e4ec20ead9fda1ca385cb64c09f1062bbeefdc79db985d6ff85d6023100b9b75a7f3788917aca118fa85b0f8cee75afb66b3dcb927ed928ad3192fe1c086da5bcb6a5a5068a1a435ab92d72397d0302047c435bb50067306502303b02c119aa3f81c451743da0f8c9d5f3da379954a41fb7591aedac2650f0bdee9ec39647044016043f43006a9b3cd6e6023100b94dfbc546a4a02ee35d936e8deee350bb7a6bbb8cdc1b53f1f2f207532b84d96cb178a5584644cecd8d028303af19640302047c435bb50067306502303f6117301b3ef0f279d8b82fae7f031df953ab909ab0fdce1ac7224087ea90b4da303ee156d1534d849077273a59f016023100a2d54e524d5ffafb65adb91677c5abad02fcb08c4379848aa4d01544377477d610e4b087060cd231c5a60720c94debab0302047c435bb500673065023100c4ca97dc21708e6db1ba43f856e2aaaa98dbe57f9c1c5cc5082fa13c776ee09d490ca459ba028d5c13a82d644048985c0230774afc78bd666585f60074a8fa54e934fae4f157b2d1e733755af5a656be409518a5b99cc914f583186732338fc01f340302047c435bb500673065023100bd45e3e737a4d90113c23d2ca8cfe8238edc07fe5da1f67c42c755a8755f80c2d523336c6bb4e0e3a91d7770b25ce5cb02301a66a100e29575cb6e5b584276e07e3e3141e05382ee33c56175c001a34b9fe7ff3fd5366cbec9938425cd7f3cc27dc90302047c435bb50066306402304f0b5b74e41638431cf985a7dbedd223a5046e22fe107c5387bcd84d36aa8a0f3a5231c6119dddb202fbe9ac3857dffb0230720e54be7db8b0ae65c6331b08ec6e2991f53083cda435ca1185a6efaf87b2f42c896a7b6792f8614593c776dd2412810302047c435bb5006830660231009ef1d81e7def0d44745774965b4249ae8ccf0c1c96cbe5e45bc06602d7c53790c0cc90f695ab3afa790f091cacfceefb023100e82292f3dcb3a4f3060363f2dd7571bb426ac6ecbaad28a015df433ad50fd00960838a0c5055b83ebe2594de4cc945b30302047c435bb50067306502300e4dac43546853bf041e77c658377856e3155b4bc78f3088536bd352a0861b1916e70ee5a056d673b97c11248427e99e0231009a4d7b8803735d8d389bba5f28125dc8e2856329e99cb02b386bd0b60c8287f5cf4b2f64db48ad79e4ce606b8607f38b0302047c435bb500673065023100f98ab387cc7661714b9cd2abaaaa151a58a00b41ad16172c2d6a7a2f92a6562c244efad9d4570baa6a27e8df4ee99e98023035fe4448ecc71665dc7d64343d27741114b3acb7a1ebba44214e0ef0043aa443c2ed0ed192dd4cc5b0b92a19876f09720302047c435bb50067306502306b1f1396bb7e324a875c0442b49f6b33984b18622a140d7cf7b0da0471ec747920d9c9dd1357be87ef8d38472c6c6bf0023100bf17c71267615054dd2ef582c66e0174ec1b69a7fced3dce17cb8a68c214e22ae7eb960a29222ac4f8f42434676fe0f70302047c435bb500663064023064c70b751a498ebccc1a5059f937be8884dfbbdc77b76708c1d0ea54d44364d8acbffc3bfff46fb154a5ade8996f96330230279105f19f7689099487f5c3277c74d40a07bc5e82623f4c81fba187af166736beff6b7c3e6e50c8b9c7c5bc1f95fceb0302047c435bb500673065023100bb0af1a403ff9561708c958575add86ee83716c7b568cb4613d936e7ee6954527874e85cf7b5f1254e9aa7c9bfd81a3002306b199c8a00c8a936e1afeba1da0056736859c817b5cc973c7109f3f48561480b13c3a88186980cf1476705c07a87090f0302047c435bb500673065023100c58e76c8678442e26c914a8784eb908677397ea631514a7a107a3be59080bdef42a5358f1edadef0c9254cd45fa1ce5902303b0a5a749a991bd3500c804bedd5ad667613859d0d08cdf512cf6227c79eef706aae1549cc3102560c9f733416ca370d0302047c435bb500683066023100a2c71df0a69dd2dca88f891675ebb2692db096775d46c19cbc85cb4efb32987418c415c6da044c6fe3adff1a67e326fc0231009efe8ff077d44c1874ef263ae4d5cdadacce097f6b0d90ab299202adc2e3a2edbd66146b7c125a321e9895b2b46adeb20302047c435bb50066306402304d09e16a1a28bc41c4884d31bca0950dfd9c77ed41b42d9c0a4d8194a025f2c6d3ef4b0bf99c534dcfa4e0b737f33054023005efd9014f7615b4e857c127e4f0ac0790802908ebb7b224c5547205bb38a702df243a9e69afaa7706c47556e2f7c9b20302047c435bb50067306502305bf0f3fffd6ab95f8d637e8b58a26df50a0e0e97e79c71386fc73e1bb94e20c6b6d5d78c2cdd4c32605da5b19f7cc75202310099976a9048a2c94f5eda92b9d1e69635767266b2dce62ffff34c8d01bc85725f34c8178736e36be6a7fc33c28c14c9120302047c435bb5006830660231009ad6510da10fa1dbccd3b1eca3ae94e987b541898ee00501bb8dd278a9d56fe46978a994d515e78016c07817633bfa8d023100fd02e3f723457639321e0207bb379635f24f9abd37c30abb8e4756346f9e7e5c693f09c4b74d5d4ef261df33866343740302047c435bb500673065023100e215ee908c94b944a01b0e64cbcb83ffb312afc3292b684bee116a05b335b320ecd6ecebd183fea7e18a39ec738bda1902307ccc617919ff71fa62642f5c88f219e89d3a80086448825321084e7c784fc78838306e651bcfc4f081d87c24e60336580302047c435bb50066306402304707c285047b49e80aff249d6e4fdab9ad68eba31b8b3b8c3f4d57dc4ec69bbd1f2dead3010255bced7e8ce55c73329d0230417b927668a1ca301801e4e0d48918230dded6a785fa61a3facdc13593d1755def456ed8192ce6cca33d0ef8e0d3e5500302047c435bb500673065023100bee62253c0a53990b9395b4605ecc4f52fbbc86f23116b3250d586ab829bb4e4698f58c12d6eb1146e1630ecc1a9bbf3023054ecb652798cf2fd2f31e431eb7bca0332f1855969bfda560de04d5330d65bfb85918e78fe1b6d1963a2b36b4f329afa0302047c435bb500683066023100eb5f5d839c1e9d12fbd215a594c2a0e471e9f7f9ce4ed4defb684cf07c826d5192a845e4c517cea0a89f18db20586199023100d390276f597da7622435de5e94023ebbabc691c9df397a4cfabc932bc021906f3e5d853106a994952b4d0571d0105d3a0302047c435bb500683066023100de72b38977798c3da4aaa394a21f8cb5a1821d2d53977e5dd728433e696e8a8c6884da889673b7431ab976359e5309bf02310085e5c463f408316248147f3021a670b404bbd90a5b7d58dd9d8f5879873560802db97075a6b835120b6075f8b256d6a00302047c435bb500673065023100ad6334cbfbbc8261251c58e2fe97aa5e392dca1f8b0360c5dadee5e10f57dae0ee648f2fe3bcd518e1cb392de840567002305593a573502799c8ff0d81beea780cfde32669218c4c76e0b7ab17167f3887bdc2a17cc7d00c3dd44ae4682851e8a7d30302047c435bb500673065023100c2d863e0201c95c382f13b5e522a41db121c408cf4b0cf505ed69d362764f3f5469f4f9d2058b61ab34508b7fab1ab6102304201374d71caae201f3de4d5cfdd213e15cd3de51b3c9cc38d77a4ea5c4f1683b8bcdbe3ca95e5d1a8083ddfcc1527cc0302047c435bb500673065023100acd3c93ad58d3651076ccf300d5d7f5ac678390c3525d0b87d79fbf1d0f6093863ec7cf4690b1c58a4ac75e1e215b40a023023ebf96221661869020238be546184a4ae77f5b2c50d1aa80d085cf6214f886a7cb20f66fb5015129a8df665c7c1968c0302047c435bb50067306502304da35a4dec20d372832cb74733870ac054be76d4745ee1fd972b02966d8a902dc6f6df1cae7dd7afb0632cc88f4ebed0023100d5d43fa3cb8048ecd6f3427ef49f4a11fc297ae67d330e9555133310adb2aaf81760ab257e24f682b3cb46b2b042bc8d0302047c435bb500673065023100c1e6e65427b5e98c7c0c6561d09594a14a62c84964af21e582fe60293a67e902bc6c02b152b14c028430a394de93eb6402301db5f71b67165dba8982bec8d8cb0fac5b3c19948f3d547654a4797b0c417b0dbf2a233c5dc529aa867ec5e6d9dd1d530302047c435bb500663064023008407d7c5957232699f58f9aedf312d781d92b216342b479f646658558d230df362c81c01eb704377390cd73821eca00023019fb7131dfe050078d042473018449ab875b9ce535a01f6e664b3075a5fe033df1b0461c57cdfd9c3b6114c30b14516d0302047c435bb50066306402306b3e29b79bd43416dab02208b8cf42d226367090d2b23818b7fecbc35d2f963ff2fcad77f39843e13b91d4a3ab36b5ca023050656e57e1ec44ef3513c1635ee1a68a4e71f7951bb9c80f6955bf85161ed7e7c7cddd180425d8883ff8a172cfff86270302047c435bb500663064023062e41f454a31bf1193b5d8c4925d736aca58adad300c1178701f195da2be146022d4ff6e38ac0ed59ee84c0fa52a828c023060f4bfb94e5be57adfcd30cc5d5f103c96acd7e81574f296090d3981a6c9cd2c3cd1681856242d80341c9807e02029540302047c435bb500673065023100d15f1f9534a19ee9a69f54be761d701d425476748baf0a52cd74ee4e9d760aff5d5dca244fb40500991eb81c26fdf22f0230217983100e184d9eec63dc356b5d3a79d3fc4a2edae7b505fd22b4b8ebc87d6d0cafaaf089dfbb6d028061b6364255470302047c435bb500673065023100edbd00341031b1e0c1be778753d72e3d7ecdaab1fa67d73653c564731590ae75c6acc246adaebd1beac1f13dc9957ce902304b9bdc648c31fbb425eec40238edf9fc264e801716022058973bb0ffe8a6d59299b0c3993c3091724ddcaf27f7347f6f0302047c435bb50067306502302b3ab17cd29e9267e532f688979137c41da67cc30fd228c7d099015f765965d6d1393ab08047f3f02cee52e66e739089023100988d7000a77d67ec3c854c2cde93df8740644f90e234da50de5f6c701a4b5c604db300574384d9abedeca406ad55a4790302047c435bb5006730650231009587871ee5fdd31a337426fc5edba39246d684b9d4ccc749adeb7f75a1c61535a3ed28567b574df9d4f87fc18b17c99f02303c3258b79443f9630068ae69738b717e7479a70f9b4e60bd0d8fbb58de468021f8d672702d86ef4d4ec98e1ee2ce5fc70302047c435bb500673065023100c731f510ea83ee75815281ea76fb64b7929b8613ff55d32e65bf94775db63048e81c26e454fd1ddf132ddfda3aff53320230318d0e499e702d92bce81af21582e86774ccd6f00a63c3d86977a77b19a297610cee2bd906792f0d4072291ea3db5f8f0302047c435bb500673065023100e4eb5477513015eb0d1e9e580e1f0119f38b02c3c060e777c394aaea64d493b766d271443a3dcfbe4718488112e0f5ae02302790e98c85f7be37d6c0b004fc5dcfecf4b1ceba9456fd68f1634808fef9a78bbd1dc22aec05e6ef978789c3384698740302047c435bb500663064023030b16cc5c28d9d6de0763f9e8f277d43c02cf58a4f6e0b419cd5b7f4b0bb435c970af30bb55a5f82ea82d124e792c04f0230061208656b1970e3a56bd76b81f63df0767cdf973d3dcc9414fad89802ab468c36c5c5c9f3ed8978eee8d4e0752ab5880302047c435bb50067306502302760e29d0827a5f5d99e28ee6202346c51e1b71a3a38fe21d05925241bd28053efe5a79d1ff2741eef41a866b6727a60023100bea214d19f553aea2121a6c6d060b9e37817d9f8e9e2e3a9ff15f43edaf550a79278b9b318a93cfa2f2b976799de619d0302047c435bb500683066023100c932af189ab1293937be0a46e496d56f3ba2ade6faf4096ad2fd8aeeddb288f923d8c928ca059b652f434da9fe4098cd023100bee70e158a82fcdc75d2a1dc17f1f0a15320979704d07c7ede604003c5546582913f7a322f7672dcadc9e6f6a837abd00302047c435bb500673065023100fd54c2b5de9da055cf64a17c89370d1e58be316e3c115cbf8803ca9177aed72b106a51286c29feff3d5de260240f927202300cc9daac5cd06f1569791a04cb12dfdbfecbcf66a65827e18565785fd2cc8e361bb79c8407f064aa7cd62a7106e5bedc0302047c435bb5006730650230724c8a65934b22a9f4630fcc435d2256450f5a78dc46956321b6ec2b45e05e0d079634b79bb366220405c012f8e72be0023100fde3645848c5fa73fc5280e85bd0300c24ce462553444a62dbae58665e8ecbcb40db1d69a26e9f3d02a4e66c01e9743c0302047c435bb5006730650230136354a757de580b5d28033ebbdd113a40d62e59869ed75af0fb3910e2b043bf935562c9be94d4377bf77fc74ebfd4f2023100cd204eaf7e07d9fd83fe85e34a893c12db72b0d644489b51706fed5a34d1c4ecb1296604d32e15eedc9a32c3faf161110302047c435bb500663064023018e8b9f6def47b57cc0d8d89288675fd009d934fa8afb18fc0904bc5ffb303640cb8af138ba4353228768163d74f86eb0230618926fd1b826581d2fa6fe81d345da51ea2f97f42c020906c2e746600908b1c16d68be9a2e24d63bb034b50652b0ddd0302047c435bb500663064023034ccf13b6431f179aed698195743d1c69051927dd97ea174a905bea26bee2af886ee7cc82b2d84089d5aaee584e691a702307489484d8b412785e12a9154798d1aaa7c35991bbe971d228225416395e3b9e746542970f708475c47ea792d21cd85860302047c435bb500673065023100be18a027113cd22fbc8f97b85676f8e5dcb5c8972a808cb409d89eb0118006ebfe9bf882607b151d77577a3a9d1d2f9602302a6203148e1b34438c745b20c967b77e511564ac4868a5816018de33e14133018560c8f1ebc92eb11401cf35c7667dfb0302047c435bb500673065023100b492f916044a7ea69b3371d7cc50ddab3345cbb72c8c02cafee86a5ec7ba40d332c55c4be69f3edbd0b6b482bd08125202304b71e3266e4cce3bfc6fa6035111d3151a1f7acd533302e103a9857d5b931bd0ac1ee748335396805d7cfa3e17b7a6d50302047c435bb500683066023100f5e606d11aa5cd2cef6c22ddef2ffd53c4ca21d8f5fabd77360991376d4a3fb1f16e94e4da6c558a281897cf08ae6591023100a2ea28f3814e479b9fcfe2ef82f98818f505917a4ab07cb83c9c55e69298053c39fb8f2141b341158fad4d3f6815da500302047c435bb50067306502305149e938ccaf8b6bda68611456e627ece45f8bc11456f7bdadbd00dd900f35cf110e98aa7d52dc41cc8d2eced542aed6023100aade86b2a39ab59d0edf99d707e3c31d740b6dd281021a69189952c78a9d15d6f6133144cec0c2182de24a54c9f810e80302047c435bb500673065023054f7235ef701f3ea01c660c7a7b685c37ce8b5c2e9ef6bffadfedfe61217a58b3ccfd68467c7120991849af8a7602d43023100ce5f6dd48f9eb75891cc49ae405346b6dedd4492856b4a16f0501fd17261ad6859c2606df097b7147680102d57a931320302047c435bb500673065023018b0f6e22ae766eb9276606927b00dfd40b6187528de908e1901948df95557fe0106f2d1860f213cb9eecfe2c685b20a0231009c186d5f2911b5908fc76fc78e10af5ae4c804dbe9bf6bc750710644715ccfcfadf665d37e08f21767ae825b648ae8850302047c435bb50068306602310093b2e4e81a4e96f0cbde38a34a8e20020069a988d47c67daafe54577629a9dae28e22b0ea83e7fc1cd2a778f9e0d6038023100efdf79097a131e537dd6ce17697305c1ecfae223e05a3b0897fc7794638bba58bcbf2e0889319b8bc7a5a68b97fa5ef00302047c435bb500663064023062f7c46921c1c3f33db24a991f36dc6afde139c5b4bb1f913dbc9842fbec5a3a396a6dcb5d97a9fbdcf696364453e1af023010d4f87219d55ddc0d4190fce6beea36d3879faef17eb1f678b1e41b905bec5c531417522e53178515f0d49f9ffb6f560302047c435bb500673065023026b1ff2f9f6f87c6d0456bcbe7c2c844373668a4bb7b79a1f6ac62679e6d3cf613b5b70dc65e58265d027f85b96b2b010231009071f7349c66b1ff2e8d618ead1bbfa0589fbd417952092f304bf9d96dabe4baac72dc6a2aee1230cd9f90b75e941cbf0302047c435bb5006630640230796efc590e2fd27815b36c216b1b80be01169030827ff424519c17366e02abbba2dae96fde1b5187d59b080812d5db4e02304ac82ec00532973140fbafc8ae99dc245d25173eed0be73013c63f03b41d44265fbaa19195e95f0d3c5e3674642e5bff0302047c435bb500673065023100cf29020b046352f09608dcadc73136229b8fce6899f4193ab40dd2d2139cab78732601574eca6229663c0b00bc1d8100023015436ca4aebc88b7eb637608e360a73916692977d447093ea38b3b726e3a1480f3639416eab3e936f2f1dc993852a3970302047c435bb500663064023032706c59ab41133a39c76a06e7239855c6c58c4e060bd3a2934c9cf5ea202e014558c85d2ce8c4dfbf82cef628ce800702307e5bd09344315af37e8c972e5926044877f6f032362b53f259f0db452c999b93edd18ba9e030af22ae9b171a6536ca5d0302047c435bb50066306402303945057fae5f9fa8d66b8ee5ce25bc6e8cef0fe4ca9d199f5f5b853f64d68dcd493cc6402131a2eaac352daf332e0be202307c452ce43321c72168b8c0d450548544d8d156803a46bfe5c66c32a670f3d4690c9f63d52352c71714f40bdad89dd1900302047c435bb500663064023039794c2ec0111a860ab4a780cacdddc9b7b873695cc44b34a52e9bbafc8da794124c4134eb240ca54c23eeefc404498602302408f53a58242f6443c42ee8a95b67592e74f13441c35bd671032044d4acacc9676bf29f0eea234516f598495004472d0302047c435bb500663064023078cca8d02f49bc4f08fd86ebbaf3d5a0ee8412519866a721741f77f21132258deab976607cd280b194df1e4806b43828023002f5dad984d0c69c214b10a6f42c23c32d750a01a9956cc079b0eabf354909fd9b406cf5cba55020955baecd3d6ecc1f0302047c435bb500673065023100fd46bc1cb714c669e552c35c75d676fd6c8620283c313bc5bfc7649b5a3445e0809599206131d62b2a74db4553442aa602306d93a2448b84e8702d04c09019390236562f90410ae9add103d9ec6a9b9700243b4dbe6d4fb762dc781a779490b37dd30302047c435bb50067306502305c7e332f82bcd1fde9c69dfe12761bafac299a6428248529f2f987833e671109d65af04cde29378b8ea835bab9be314b0231009d21bc919a8a897ff9d546f51051a1379e5819efa74bcc4787b8760f6fc1e1c3279cf14b06b0810ab0aebc44a8bf26440302047c435bb500683066023100ab0dfc97267b11822febec0d131e8b5a2548e4c134694d76b3f9f246c9a1d950e6edc5fcfdae3a0a943723ea1fbbca7d023100d5472ba9f9e6ee2be2695782431b4a5f56176f4146c70b0fa9cff07c574ef1d73d26b4c0b7ef07d74206287165dad5950302047c435bb500683066023100ffe82b2fb6fcb6ef586874999fa5cfbbadd28c6c55a747b0d6f1f9bc6bbe5b9428158de320f7346a88da3ddb1b9c93e3023100e6c5b01db99fd18acc2ee92ee1799835da443f680e34c943a18e834f6671566041d5c72b823a2480acf6e277fb01c72e0302047c435bb50066306402302f47603251322f66d6e554b57ae91e6e0b673517042803fbefcf1a8f08641056b01c2a719db154852d45652682add0660230151544be8eca53461aff6a790aa02a88b4df39ea7bd3175f0066acd4b38b704421d065a34e5f1158d48f2121c3609e1d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230545593cde3af03cc3f1d4322352d4678db6d87fb1ac78a8307052c9a5c086c0ea2e99a7209c95e8de5a7d72137f13507023071f8fbf83bde4a01cc0b7dfec6e31f1be804f560d07d2c4742a3854e7c6523ba237b137c617f608704b6a01d10479f920302047c435bb500663064023059ae4d1bfbc9a5a3a9c28c17aff432e49fb80a57f32551f82b53828317cb48790ba201c443121353180e762a98c75b2d023024254083753573d18d7dafe7921ea04db77cadbb957666440f80d77ecb29d2a8ec217d8d87635e01a6d557333e034a160302047c435bb500663064023047fecaa1fb0dfc604002ed6fd0383335011626bacd81d74e9cc5f82f2c3df256361891233d7b5eb935def6b0454bf6aa02305d4b09dd205bd8a839c37bd04bb0f7090fe5bf119578c9786676c3fadb1a6ccdf75f4ed76c2df33c269efcb309e1be820302047c435bb500673065023100eb4a1ace8e85dacda9a750fec2c0dc4a0b462f73a3400c699c0ea49cf6d53dc4d770d33c03332176c93fba64934ec3b10230186fe541dbbb08661f5b253ce37301b632e9c62da56749384e186d8f9b37737fbfe93fce0e85d59f7ce68b6dd33a7c580302047c435bb500673065023100ac4fba618a6047f8db058789143e283b2c9cb53a1ebe964b22a5095ad232d17befbfae81bdc0cd93ae91996e055fe2e1023076ae7f7676c186d741b105e0a5495cff6238c2ee3bdb6f4f1f2317769c005303000dab4ea69c2b7f73443e3254d49b480302047c435bb5006630640230029ebdbdc1a0eef965c47d09cfb39d6b8743d76a35de19c067f36de6a21b55ef89e4e4e8e59d205e95d7c39ff571354a02301d57c7b03c5ce9db2344303112db86fddc5453b19641623cbf7438ae1c3f7b9d8fb8e431a58301ff37bf821a99f652d20302047c435bb5006630640230325713bd38b1f4799634555db5d4dc6cdd29e6a88dacc054f87683cd174f786ba5981d7709ca3dc2f8ec3374f749e2a302300f7c072bbca79c63f40bc304f4e2b335508a702cd6ee4303ca9e1293c48b9212266756eb589c2283f4dbfb39dbb9224e0302047c435bb500673065023059000a4be6d6df28ca9bcb599444503637d909dc6f607203541ac9c2410f254f4e530fdaf444d15a0f70b56fc657773d023100e477d7584aecc9d6055b6c87c54f57f5b475279798a2025896d1e0435e48f735c3f0d02c2e201abac48a934110cc80be0302047c435bb500673065023100c1f9b47da5be1e9bfe99ffa34f152c741ecd572d7ac03fe04983f8d017c05fe16ec4e89b62cfdd1d414d29a582972ef60230636daef6324a0534ccb24d1ca722bdfc1bfbbb47e0414be38d646a1bee9d09679a232451d7ad524a5b7e223eecbb62b20302047c435bb50067306502307cc8139329d78d32c904e27011f778cdf6257194f136a8231851981c921d252ebdbc169545309b4f57c740f9604a2066023100b372ce3dcef149ec1b700281224df2e15a01f4c9170bf29de5f35b916c4e548175a2c277fcaa4e274a35b36e1bcc876c0302047c435bb50066306402301c9ec96e976bc3cc2a50b59854e80e77f6592a18331b295d8fc50132b4ba62b47b5a4827f23ba4b7f8461acebbf631a902300b822a862c4579264608719dc6775614fe72b7a437dca7591a8a8c97a75db48f971fbf0d5f4b2b8046a7886312c94f060302047c435bb500683066023100a3a57ed5527192920b1570261794019e356e3e303d449e6b751d63d2e7df6966eaf0d0bae7c4d6ddd77c757884f3ada5023100bb7db752eec8755715b15028c92afc43f9508acf76baca67321e069555b0d07347d4a76edaef348b67703048024539ab0302047c435bb500673065023041345fc7fefaaa1ec436e2a661785201e17739c73d7371fb6eb0428a2929a6fed3c3cf94410f9bfd8505ea6d88752ef0023100e1b6b24e51976975d317d3510e31857405186662db0f3cf50bfb8c86b741303406f47e6fdee233ad4bdfc0a38fdaa43c0302047c435bb50067306502300d3f4dcf962a47912e4c990d934679a78103bd982eb7f989e5b091e1017d525c69d21e76810580286d538758614e9f51023100ad5b4c74ad16342e48bacf7a2b4a4eeb90fa3bcf27b6e2f00e90c3b7c416dc2aff18477f98f4efac28b6232b1401d9b60302047c435bb500673065023100a3ae9e652e4698410d8904d6f71ef7e806ca857e4cc29b2c325859d6dc332c90d05d346b0e13d1424c6c5f9cfa439cb002304ea56b586a6b9134a129269f449ec71d50c7f63be3822dc9b11c48f7a606c8e5f636ca6ec36fd1d691760651a7b9355e0302047c435bb500673065023100c0196e8042819bc1a6f7821a80f880b59f5991c81da1675ae2860740df06fa99cc4641dd9fd759afcf7b6d5d1676d53302302107a1f2f3689da2b2b4da14ca5dec1f2592e0a1c25c9c3620e6f75c0eb11f0bdf8670edbf0e4d431b48e78c04e6e0390302047c435bb500653063023021acdd4d41bac4d2068241cfbc80d7fc37b4c223ec4b1f3b12e89667047115e2a9e603d71ecfe6fac8def3c31c05b616022f7cf2e5faa309272aa0de8299bbf48fce24d763da7cc9380825fed1c4ae75ba550719a87e99d34c0d37abb2b1dc2d0d0302047c435bb50067306502304bba3ac9ff28573e4d7f40c58c92f4cd26c59d1a4cd3548ca21be09c1c52045643fa06d68c3c1d10cf64ccb226cd56dc023100ffea394e2303f6a018f295f8966b585a6799210dba3447b694d2ad5ac6610d3cfd30e6c44ac62dcf469a19d3f04628680302047c435bb50068306602310083bd6f3776cf9ee814fd40613696787e9372c49f1effc25ec3be981e881589c22264e3123ac95075e3c016cb177460fc02310085da4eb004a16a4f24b70b816d2ab0aefdfb218ce0ce2a733715c74851fad3926bfa7571d13428c5802fa04d74e9eaeb0302047c435bb5006730650231008b62c591d159b1a416a35e6e4daec41882106dc2139ba901015528f7d909814839d8fc0be9862585c41fe8739bd5cda002301cec4a7e7496a5bebf15558c9460fb3e5bd59a4471d9dd6bee51ad24698b73b90f00a690f089cfcb3ee30d1362d8654c0302047c435bb5006630640230195f4c71d3034b3dbe63a1483b84ce4ee7ce408f1d6ed4a3d4917284f191b834137c4c1379215a5d7a36a70095902d5f0230102250c063e551ecd953259242a503c23923937010cf25c1e9feb6650732b3693e53ba748a9dc566af97626eeee97ec40302047c435bb50066306402304d34296675bf94fd6804d00abff7d22b8f29ab50b26a4f8822badfda4ba8db50a2043b6bd9a364ae3e2b76d94b4aee950230575ebb8f30bc2492f4de17bb2dd86b23a81d4fac525b300d046ed497ad126d39e540ac2abee4f9aacc393eb048c70c7d0302047c435bb50066306402307dd2498bf9d8bf966809148384678078a8afdd0d9d92269e66916a3f8374bf33e39a0713b2f79594b5348416bd6226f802305c3319fdb87a3951c543e130f4748ae2436613a8d13d10ac7f945fcef72f4872de2d4d66e8be06c9c6cee426bf6a82b10302047c435bb500673065023100c9336fd0a4ccf5680cbf9000cb22764d5d7214f98c20139d97307c403dc84fc69b263ccb10294fa7513d86391fbc76e8023073966c9fd1be3175b3820d911454c7cec1cb0d0020e136a7141d26cead0cc7fba62daad3ed8570fdeb73188ff00ee9560302047c435bb500663064023055c4b5d5cf47b7b36a20e20c7980d6edcef93a651f2f1c00f810c76956ff28398e0e0a48e63cdfc7ae0fb345aa625ee30230373cc5cd09a750a134d2f29cf6a6aabea89f34573247cb1163422b6d01b99825b49857d15fa3138b22daaebfd4900f940302047c435bb50067306502307780dcfde9e9a00ed6f505bf2b1c287f880717141899366c5a70d61502e76041e43128eac96f8d8ff86ba72efe494644023100d88b7b412999f9c48e75dd491f3af02fed19c87160f04d248bcd20067ab703100b467a2e409729f217bf7d0f73db18050302047c435bb5006730650231008e9e52653ea22c08126a5de80f751e830fb064c953adc7cd808de3ced3edeb39664b5c7eb1474e5a5a7f7d7c7920b451023009411cfff7202ff614ce9f748df53b102511e078e306d98d42b6f734c558a6a8a1b4294ddbd0acb9c3788587a8545fce0302047c435bb500673065023100b10483bceb005ae41c9030875f011c6c70ff675c17ffa451ec0776364e8cfdd827c3dd3e7bc260829b02722475bb17ff02307e51a5589bbf742aea93e0d20c983a59daf9b9a4cdbed042e6659f62baf0b75d935348b9276cead54917f3060181d7790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310098274b106d250ddecb0b5c4ec989d55b80fe1c62d45e604600f5576f43aff29aa4495cbac01c6252b1d929e4a1c0de02023100be48ce22aae580e95ea96ba9d4bfcb4329a99a6ee1e2065fccc3237da85e0a5bad1c23191766d54fa52449b5ff860e580302047c435bb500663064023031af827f2caefd79e5d1c8ec5776600b747cfe3ab43ae04b3e06795efa7d0534d08dd1a12a65bf84d8b6204a3775f1b90230487852f5edc498b2dade15eda32e98ff7d33cf7964eae0df91d29a9e3112f0c21e7524f60ab263741f9be70d081191300302047c435bb5006730650230549ce737c8b53693f0cfa7efd937cedbf4e12611dd01adae08a7148eb09ff09087c9a3d0465f39bc13d0ec4f63204e660231009ca2cd7f6425885a4493981bc9e752cfa856e33ffc39fcbbf0edb875d7a7e489f3b86ed45bbda60d5700fe801c2800c10302047c435bb5006830660231009fdc16519fe3b04446dfc87a1c188436769e219e98ec7d08b8e620023e52c474bc0f6151a127f2f2d3f54a4b1acf08ea023100d9493cdcedc67f187bdd04900cc55ec9181d8c0dc806f703e573b190e79ddce01876cceff50e67f36e81561f3b135fec0302047c435bb50066306402306f2e00655fce0c6fe950af40716f235b355c98d6072d5dca80c2e9565bcc108cb08dbd722151429f9d80537a3a2a0bb702306fb1fa44804cf16c5a332918f6078322de871e6021725f52aa139ffb72c942fcdb0e3040f4c6e4b9f006fd806cb0dc110302047c435bb500663064023049d8c9e2ca154217ff71b1796f66313e820145b256e9cd1c59c14bfd83343dff2f1d8a4dd094cb98c5af531e5940a74c02301cd5c118143ae41e64db81a357ec7497da886d93d0820526b8ce09f0c09366a8564e9f0e485efbf21dfc82d37893a5cf0302047c435bb500663064023055fd672145352773ffa44b41e5a3540ddf7ca6256343e1e1b99112eb5ec97f616401c6a86d9d21860d8617afd1f2d9360230498c6305c103cf4d913be456e6b1dbe254f68800b4e2f8c506304fb391809f83b2b714a50b9e71ce2fa0b6764c2661fa0302047c435bb500663064023054ba4adcf2c5a939c1e2bd47c9f1b51033d51195ebca9fff207e36dba351e5cb9524befe9b1950ae301e8db8ae89f6420230603a67c3b219d5cbd8db7518c224edcd624e3798c23603da48d97e15f78dfd2a1f4354041f608c0d56252868ca7ce0b60302047c435bb500673065023100855e7229bcc3867ea5485f1b739d364bc8ab25545b1949442ce60297b0689069155823bd06f085aaa08b546692c4023f02304ff8a0dd8805bb7d80fc019b8cc65b54b1866002e0dac1e411a35f8670676e18ca815d38873336f28d0bb9b14ad1f17c0302047c435bb500673065023100bac1ff7be8b73280ce0ea5026091acc09b5f21077a70842b2ffb36692d3c1bebf639edef1f35ed0093f1209446332a18023063b674fd7ce0e7d04c554292b5a95b8b5fbaabf751d2d747000e04fc1ddee9d417a67a4fa9ee96b85ccc4a18048a56710302047c435bb500673065023100f3db7cbfde94958aa21e3a6c9f0f41d0e0a3469adf64bdb02e83d5c77a374ccec1882b2521a5ca74e7b4528e8fee29f002307c441a20ca5102bb4999abd5f3c1fcdfce74c6540fe50527ec999b015f90ce0f378d72635eb88cda33b89aba9e1b76580302047c435bb50066306402300fbef75404b92f05f10aa89a12e05241220bb076b782173ac6099db8fd108c7646421fe50b4a0eed4cb387e1c7a4b07302306889b6fd6b12787102c984038326a347f210d26159233e90de261b90c0408d66792761029987389bfc093c981dbdb3870302047c435bb500663064023069395e835d18b639d621463a8d731f4aa216e4da5d51b919298e05e6c1a689e4465d9835173f8efe409aaee5e1af1f0c023058838f0878fe04dcd72f69c54dc7c762ffed52a812645b281085600cfb3a2d4e7b59bf1e5b42703b344e8cf21dccaa760302047c435bb500683066023100c469f8ceaad834aa78d1d1576f65e96fd23413900cef2f49c220ef110223525db21a6f72ff3a293bc2d35b3dd09b678f023100d202edc5d507edb9b2b401914a436e894ff94412115007c1022de3719f10544b4ffdfe643e30fa30f622e7926af9a8e30302047c435bb500663064023000e2d367cc00dcd247b14ec1b2ea07c85878fe1be2dce0124c0a6e8765b2cf7540993900eb6e961d84d154dfb8d9face02302c43148a3fcc4b9206ba6e4edae3e104bf5d11c82888d704eb6d7070e38a5a19c9088ab4953b48f6ab2f19f5805de7930302047c435bb5006830660231009080dba0dbcd87228df7f66a2d157a4fa941b958112cba751df291eeabacfc123277ce3957739bf22fb486982c808a03023100ffe4420017940a8c12faf5e49304f84bf298b4173c324d2315649b8d2079f95fae2489d5bdd3c099e46750d63e3cff400302047c435bb5006730650231009f3e5e8b6ccc59b33a895c6c01c480b5b7055a010c9517b1d8818e24a2e8bbda717241b05949354bb56e701cc901190902307e7f73b82e85cdd6c4a1df8bbb980c02cb85e7395595aa2cadb3e8a4f963f12be9ff5a5633dc8fb83dffbf4c05b84c8d0302047c435bb50067306502304d78ff2c433c47ee1b25c98923a2c431355a638a6510fc8658202a4e8ff28d655a258d6c850cb23e38aa7c24b9ed12f6023100c7aeb29a47953ab96fe3c6f2f2f4b5a936ede1275eb6fbc533b17b1924c861920536de57d7f8fea3906e31b37198750c0302047c435bb500673065023072c296dc1277f654c4c2e77e6adcb9864d9b39a454645cbc8403c90f37634dafcffee7178763c965e863bb53b69fd19b023100c77161c9f2b4187e779d9d2ed84e430efb1d38a71b2546f4b893c9c067a921d9d7ddd034a3fa5bcefa9855030129fce30302047c435bb50066306402303d6f449387a101c00d51f79c4a2b91aba0e049ab77519f3a47e4a5be5b7d8ed88174f5ba986e53f1237d42643382108f02306491dd13b1dc5251d806d485d627e926f87a5d6f83eaf5a1368f64ea2b92cba82a22fe4b211a5aac4c0caa471548653b0302047c435bb50067306502300a14f0de92cfef6bf619197648daf9f40e802d21b3b3e1260533786eb8000089c57147d969758c8d16f199f0de3c2143023100ab15ff37e7ceec6c963334da7e845c3791eb9eeb5da045c34d4c9976ee87282840edf3b77bf7c89e4f3a83b4eb0b007a0302047c435bb50067306502303031d4f016256dde4541ca124ef9386e2ad01627dfd5945131f7fc1ede1613ee4a3fac34361b1fca3fa532fc595e58eb023100848d686bff52048ea1b1c40df3e7c9f5d27a0ed53f3d8138a17a337f9052c34e1e4f8559163a9a931a6087c047fa8cb00302047c435bb500663064023063cd1b9594f78de2432448d8aa6f18709a5cabe279cbffdc19aff5d0e11de452a13313e999435aef7ae81a644062348a02305f4515e9caf2798dbd7efa3c0e9844f1cbd3071fce108dea361c029d23ecc23e98041fcd9007cb4ad497a0a8dc326bb20302047c435bb500673065023100f3d43b29e7258efa3cca8fa9664896291154d4b87e63ec2151b04fcca7608558da7b548c4d1e98419b9c1de5430e5a6c023069a8b824b9cd9887efb7ad07337c63de633c2db04350e1421d69b83ad74d688994f1cc0a66708fa067103ff92915e36c0302047c435bb500663064023027787c6b93ff175f40e389a47f380e5f85f9007f0469fc5fc1db750bfae910956b90b9eed75652234d342bf9083a196a023074586a67b2ce58cc06c1d8525da49fac78b0833435be8d26fbb1016dccd2cd9c5c7d443705e36997c68daea931fb9eac0302047c435bb500673065023100c42f60288be51556575c4805b6625ab9c7564ebe5dfb739789f5adb91c0c9cff41b806c22514f1df12d0e43024235697023030a8e2e144ce82bd067e7579fc20211763189d5dccd62f3f13322190676f00b523fa6b5fecb2f1463ffedfa64364b2650302047c435bb5006730650230499b5ac5a5b91bc93860d251ef14b6a1dfe7b0a40f42b82c4d64c812a6454416f4e0890bb36cde33df9328c20afbb61e023100fd9c8e036ee549f9e4c0aab6a3862c5069f7cde4bcdd25b2514c99c0d460d920bf0daeba8e54a6804cfae47b2bd93d4d0302047c435bb50067306502301a8e299794aea4f57bb3609da0cc74d491cc5e7fa5fb5d909ba182555142cb6f78c892a4eb9f9b485463259d77456798023100eea3b368f2f70f701c0b4242802fcd6f553a5d7527e14778615e581bbe9424de73ef7929460f4e3f126f47fb6e7c26100302047c435bb5006730650230361a1f0e0bf5531f39fd2a11985236cb70f7edaaa2d0057bcf44579c171b4e32bbd5fd01cd92680cbb8ab2c9eb7b69f8023100cbcd0faf24f2ace8be70cc74b4d03ab0c3747b06278e141587c3acc92f0f900c4a6e1c3f9263d0077fc941fc06d5cc740302047c435bb5006730650230597a00880df3376e750f0b5c235a51b5032b4ac001250739a102410f3bee792b2669d9e24b575a8e4d20b85c46ea5fcb02310085a63bdbb6e1e69f33889fa00493f5dd9c115ba3e848be7a78bf3dd6a28e0c90f42488ce0189e4b4a45faf33cc035ab10302047c435bb50068306602310098f6c7156aacfaa25fd8547da2e7eb9d8c8acdc9c15ca3e4b10edafe5fd0b0e09118f692b71f4e477df5e6607ed6ba840231009b26db1a7bc325dd6a5c7db9dee4c36392616dd34b9eb53b786b95fbb2b1d3be3f0c086c06b6d1b564a091e2a357f5b60302047c435bb500663064023030bd3fa59bd4261fd6d039df3a2d817037417c62254ad2af2eb5439b662ca429623f2cf6a9ae09ebda989cf906228ff002306186da271d367bc830e1d1bdb3dd1a847724257590da19a8f65791f1f9e5d620d9e99ee028ec3473348fd76281d91d410302047c435bb500683066023100ded79461abb7f128640d6410bd14d5b5d13401d53adba37066159f0fd7ee9c47dcce9969fc3bcc478e4c8c69d26adbea023100d9061995d2a27dc5816ede5f83078e69fcb6189e78b8498b5f7a9ae5bc09242ff4b2b70be13ee39119dd0657d965d57f0302047c435bb5006630640230058ec99b649e0bdc00809e6979911745fefdb742c9c979a80c74a3941e06c116b43cf3b9c77f1165142cbfe13b16703002306ecd1f6f90cf797e09867bad2b2df6c1195f18e41085ea1667ce638b6ea504f2965d783f806581b2fefda7e1cc8154bd0302047c435bb50067306502305bd7f04f363837dd8acebbd6ec7e0e2276ed44db83c621bc02d05ea5c0258f7970a059f049b7bea4b9d0386808f6ae0c0231008cceb8bb71b9639d83206881154f9063924fc9c03ded7420b83ad2675cfbd1bb7ac693eaa4254e02f5c16a839845e0e00302047c435bb500663064023043380b780870d266f06cf7ede7261a49694e11b185ea8401c72ba5f9bc74634e5ce94a769128077f212d61f99c993f8a023056750982540b85b55992e401d39e48183be9f69b8b4222dc4333e8713dc4f363dbce93e6edceccbdf7efee3df7424be20302047c435bb500673065023100c68511aa940180418b28d79d02240d7409ab85c4b8f5e3857bd57f94cd0af3fba37e4406447300de33df22d7c73e48e3023070978e2a8f682e63b6722e4a6ca89c8a38c6c3d5c7b24ae3e9330b41e13832ca900c03de32da536465925d8c526b40ff0302047c435bb50067306502304fe50c05ec3f3ae825c134aebbba896a4d9ec8f70cc000f4be9a74d9b0e038015e8e2975a81a11cbea2cf74b02921205023100a6bbf0d2f0b47503f3cfa642cc5ebe99007a1fa284fd0086f7f8349c709d00b91a0576fdcb93ad29882d45373abec3f30302047c435bb500683066023100cd231c00eb2edfddb2c9b12f2b4071128df98bac9efdc975f7dc106f24a4e97a37bd5461a288ddc81cbc7c8a1d8518f8023100dd8c6758b60c236fe0e31f63ab30366692016dc68802c39ae0f0dd64211bf1b43de0b77aa3be2f845f67adab2b49bfe60302047c435bb50067306502310098bdac27c42ace0d9c7d998cd7171271f0cd85e9c7615b1b74c2a3d27f6cd5514dbb87b97a63123cc1e4c4d492cc0e4a0230275177e3f684f6693edd54c190e8a91b233e0bb362e2a3d51ff2632c514dcca04ead22dd38021a934fb11b44eaa0af2d0302047c435bb500683066023100c8cf192f829a25ad4d6aafba8c86f600a6c2c7e9332a6c0213489ae3cd8fadcc0feb75ddd2e4a8eb9da5bf1376039adb023100e934c2f35ef84eb8ba3b1eb710d37eb7b1d9a75418b57b60f7ffea62c8f262e6a2b9fe604601d847509b2f97acb089960302047c435bb50066306402302b690d2370e40b4db5303ca2a3d4ff17184f5f515accff94627ecb42d50190d90b34374717194eb5a9629d1fd510bae602304eafb56b9b515b7199d6f4dfca77139397da10f8bbe9002417b88d45f14bf3528d8b3fe7c9230d7bc46ac1c47694dc110302047c435bb500673065023100a76c1bce1910721b8f139db1aa9b39ae489616559253d2418e2edcdb52be029e0edf3014da09e1491f3cda3546a2d65d02301489cf75f151dd0c61c95c6378c56227a77b62f7115834226a5367a64c2a08f9cc3775d71b0432780166952005cce4a10302047c435bb5006630640230237cb8a0b129a886da8c3fca81153c257f7f5349b9b76dc76b3553a0d588138fbd45cb88bc5ab2d7e5908a4c2227df9202302209b300eb32048ad81e26cac1e59290b1d996b8f6e82251d192d45a655e15703748be8531260a0173e32c85b898e79b0302047c435bb50067306502306fa4b33e5e12a711c40891ee3198811ff9311daa648a66edbd700781d70f849e2b5a2849d2c9e033e2bd33593215093b023100e692dc1dbb88a3f4fc8a5cd4e3792c6a8c6c8a24a1b4919133b2ba195baf6b41302d1076a9a2553c8025c51e4e8e23250302047c435bb500673065023100fbe32b34869172ff651430b7a5085b984d7ff4f3575dcc8c12c104cf71116eaa9cdc0fca50a2af49e402ca80a9ff6d0502302d3b37a597bafdd9508bcf3f4eee3d54a60cd10bdb93f960f5951725ebc2babda0340ff0dd195549c2aff3890c8eb1820302047c435bb50066306402301d2a4d276a3a8042a3c533f494fc14d613a9c01cbe256092e469b8b79128a00b813d65980ba628ed2070215dbdfc0ca102302aeb5c994c64a43eabfba6088fd2400f967f92d33beaf898ae4f36b5d70ef11135dbd857b5660bb802bd6367ae34487f0302047c435bb50066306402301be06eb37dc045d550705819f16e4e39c62b1055d0ea9d6b92c2e08d1ac6868d4d24957fedc887e110828cfd956d077702303f85cf2458ebc338d821300dd543102bc89e9942c933805dcd3a4eda48151a20b150558e46d1b40992bbf27482c57faf0302047c435bb50067306502303149c194df4833863433b45ee9d029ddb43a218885e7fd6458cb9b090650f250c4a0ccff2d7b5e2ad06316ad5e648f36023100dc9eb20c00d436a984c5324d9fabd4c0b011d2b95b91042b72ba65caa4ec66d7cf73d03beb4609149921145cd6d9898a0302047c435bb50067306502306540969c2ef854ef6bfc31a078baa725d2a1830233856879105a309f00f4cd1e206b7ce40ebb329574fc8b7c5d9d04e0023100e56fdfdfaf59a0b6a5d78f9101c558fa5e8c688a5069ef331e8c3fc1a98ccfe21a9092d460c77f99b86827b0220c92000302047c435bb500683066023100c08665a30651c89418df0f829f138cf26ed81fda03b259704eaf947b49ddb76917b7c1c5712ad619cfe3e8407a0ee81102310091e2841ed0dad4d43b74da12f7962c492b8a2280cfbf7f1bb7c9518a2b50b0d24d3a41dde1eb390c34101491a84af1f50302047c435bb50067306502301c3817eb731b6a329a7f592117e4cd6c2e627ecca17bdb9df0487d999b7670715741778710cc24e16f7409351cab10b3023100bb57a3f2254b4c22e04f42218485a739d4b70afb3717ce18eca56240ce088b70d22cfec7c8f7d16c62afd143a62d822b0302047c435bb50067306502303b5a498bdb84176c82ba383288d8d88803a60c073d31651c99860fcd5f8d982778367e337ffae15f5230db384de7960e023100991ccd577e638552f9ab853f2f6fcd4939089d3b1b69904d8e31709b9bcf5838e93d31d721bbb0d3697af74c7a0c3d580302047c435bb50066306402302a3a45afdc9aa99c261f7b804fbf72d2fb32691fb6b8d35a60fdcca6dd25b9a2329a74fca1a9c74077cba8a6a96e20c90230544fe2e081f04e9a42d23a01f8f6ff65535ba071e88526f913bca07d6223787dadb37132d8978bb02827250516dfe35e0302047c435bb500673065023100ca2af59e0a45c53189ad03a717cead2170ff792df0c3ef6064c7b3b2878698154753a6b67121cd88ba7b3d58617ff000023034f46df9610488fcbef853c7bb3427dad9f38319599c06d54a1bde0aeb56930c636dcdea9225b47023381873000f4a080302047c435bb500673065023100db5eba1ef9badf3af52dc8304bc1e9df25457fb51e693901020cabfdc5a5453704a0c113361037629cf5d8bd18b28bb10230434546f6c5ae511239139a70c808c5d952cf843cd81d3f5ed05e04dd010e90b24da4c10d52eb14bd1aa4426ca78313c50302047c435bb500663064023029501b1be0060cce3bd205d9033e855efd52e11bb286825302ac97ce33b5186d50dc8061be0187952d94535fe249e9080230640b803f0d02c5ad4c1be9f89b9d403e7f284950cf26c7935a5604c7903dd7ec8256fbece7a83d95d70692a31d9498fc0302047c435bb500683066023100cb6900ddf3caf18139195b872b126e00316f27b749930dc0959228155f49406fb707858c2c1e942c2206f322c31efc46023100bd6aa3df3b9492fc2297f5fb6abc3ee479de0ed271a9ef56dc6712b35735fee73428cede0c088ec1584cf168bb83a3220302047c435bb50066306402304bc3c81ad41aabd55356fc7043ecace89f229984632c556fcb21fb68537944e28bb0754530cb672bbc4e84987c210682023067820239a092b223cd19131cb4c1bfd5fe9458c2bb1e1b6aa77107d0119f9a270ad8db3ef314df003c626e29e09550e50302047c435bb500673065023019684ddd444065a1a6e57fcd69feb28220b5553c65007796c0fc697a554463b87d67fc4a12707c20b2e5dbf45afc191e0231008f479fc8ac83784af56662efd9f682ff97cc2edb0b1b7669532857935ec501c8b4484fde9c33fe067ce476c5344a81fb0302047c435bb50066306402306869d613dd8b59db8ee05a999279a0eed60f57e4322cb2bfaff43129e2e3423bf5efcbf476607941498521e01dbd7c8502301eb18f8127e584bf6f8ae4f7956d8c9b9f255589c546b24ef4174540ab7481bbdb2e65a5a7a85de573ff5f40e062c78f0302047c435bb500673065023100c46956bf3290579ba7eef515ba9ccb6fdda467db7bf47274499cfb19a94f0cb0a101dd74acdcb9bf011a0fd4bdf58ef402302db08804ff12f67a44324f223d8f4026ffde3d753783fbca4ee19a23933a225dd7ef53c912c527fcecfdafbae3b8ff900302047c435bb50066306402306d71806c1739c47baf606391d85edcfce0a96dde069dac05dc7b5e765a462e101df08bbe516e1adfaacc39f7c5b425550230625ef625315fc185e48d23feb42c0d1e510ad8a88c0239eedb323c31f1397692854408e3b221436932a16708da1c392d0302047c435bb500673065023100c80ea2943119556e1a04f6cc39f8c22763bc62a2374106ecaa856a025156a2c08b73a401ba4f696d5986c6926413b36f0230314e685cca32dbb491a69236c745324603d26d2f6c33de38df9ff4583d2a7e2b32f36d6d357d5cb8db1c48c2f91d90e30302047c435bb500673065023100c7c8d29b8f5f5308b55e81d785195ef8cd6c70bebd297af83dc8636a1eac23bd6054f12c6629640b1364e9d3738309f702304f4c2f07ff92e1d008fddc6827e5a5d988f9d0028236230a15ca2391caebe469d559a9a89e82ae6b1d86cbab25b021860302047c435bb500673065023100bb163606084fdb5b1ad3a86398bc7e27c192b0d8c81574176968a596ba734b8f04fd0aaa753505d002fa499006cbdf5b023024b27b23ed1b965c3a79222ed76be77e26e48aacd2eae2706c5dc7f4bca80b87b47aed67e10fb42203b37791651639c60302047c435bb500673065023078511d4e40ae20ca77504b53a807ebfe217f4b633e2c3483276139229717e951db378c360e994bb47b38747aba59216d023100af3891d6217e4d05e4a0a0b3359faa09e1fcdedce0bb0c05cf5bc104eab831aadd562695528ae73c223747c6d00b1b850302047c435bb5006730650231008486193a087229cf93a586df1649e27ce938be1e5497d47023fd464c3ed9a4950a9fd8ddaa2c34c064ad6bea6f977aae02301944069ff89ef8dc23a0d8a9f7bb9ae7f8f213060eff60a6ea55aa1f9be877b1255efe95144d329269f6d53a0e6ae8790302047c435bb500683066023100b80f116a78f495cfac8e8575a8913880264d32f83fdea3bd81da6e4a9cc9df4f20802356bc851804ef6296a465769840023100c5b2739f7bed883f8becda73cb604dc9932e317dfe33e286f8aaf067483cedd4fdc33a70f7dfca66698736fe54a916c20302047c435bb50067306502307905b1541b5c37777a7e33e171b5776675c6fb354b4ffec51f33c0f92cfa9c280171c72a9d5d858904a493cd41a8f4db023100c3d7922aa850bfa634feb8c490c90e637c9191af240d82838b8c1c0f5e82f4f4ed0cf6b2651efee9fc0a3b273cd3f0f50302047c435bb5006730650230434d2f2f356f3386e4eaba00ee588b1ebe709c984e10e49f6cba5c6f7763df49edb817a7a9079441eedfd143553373ff023100d8d044d7a34e444d207be55d140204d604cb20915155f38fc05d85c9a182d1d838ec3a97290bc2ee6cbd6e33e69d18330302047c435bb5006730650230124e046171f28280e078d0cab0ca574d2ab7b16fab4993d4a5db9d2c283eba9d74fedf6c31e40d7adb081d971d37b96e023100991548667d53824c737af600979df6fd3380df479daaff74393514c3a1de90a3d89c7e3572073360f07649b8926370f80302047c435bb500673065023100c8bd98e79a2fe0a59eec63692cbdacd48ccff0f82621052d01bc1ca095bb41e4a10989ab50b48fc7d106f8cbe20aa5c902304c234d723abdef32dfe25d1bcae0c0a61759288d24477df44dc1c521e7776097b08824c47653ad9c0ef7db36e91cf5c10302047c435bb50066306402303c776d674d348ccff0907f9e7ccbd6ff9aa8451d5855189235f39405d63af19c2a55b14301aee00ed8e658c83bb7ffd002306be1f402e5f08240e987c49e408c77daf785792db31683f27e40c006bd2e7ad02e763b3be6abff93f62d187b3b27e46a0302047c435bb500673065023100ec26d503433d88de93ad13e038e094fb906496b43ee12a7a6097a6ede37fd31d71cccb4b8408fea7de8565ca2804129b023052c7bd5222e1dbc37cae933767770e6284953f3c235be63b4fb1ba5719cfc03e0c3e7826f304fa441f8a8b8eb6de0d140302047c435bb50067306502305db07858dd098b5c3fb421b87dd89b3a3b539f39a3cb216d408031a813649fdcf47455631c2934f4185bd2d033d8fe0b0231008056dc139be785873f06097952fdee84f794caa9b613b2b4a2ca414e814fa0a489f2c3cee9a7349df4234a9539a4d8600302047c435bb50066306402304c39951bf7839b7d48761b04a3e5688e97d326fa36452dd84cd992fd7d419bf71f5a067c903dae7fad8851e65848189402306b43c9f95915ee8e9ecaab10c493425386fd94416fd1ac6765d893d79ad8beac6f5a44b3d653db0e417971afd8a029380302047c435bb500663064023037e985cf5f5af5f89caf99f3076d071be8861de5dde650f9bd4d8339f021920a32e26b2b7d8383f56f1329d4b30d7d6902306524e134d7daf7fde58ff04627b1ad01a0fe4c8f09f0c44035a9208f355153aa559d7dfd3c18807b1470556ca5e108000302047c435bb500673065023100eb41a0d43f0c959aeae5c4ad6f247dff2185e9dfb06e593c86a311e5b751e23cd40c55f48742d808b810b2e784569f210230229c7b85afd047e5d8eac7e1b0da5b654432a8a4e3163d93f59d1982f05d1d752d5bb5c0c91e08ad843b92fd912d718a0302047c435bb500683066023100851796f951a0dc7f0316c819f07681bdc73181051ad8272ccc29613fb1b74d587d2b873872077348745c523307cdbec1023100e4421edfe0bf5ce4f7539f1b0308a3ae502becf255be959a1799fdf85d00fcbea6d3f7b826dbc035539d16b5ff63842b0302047c435bb5006730650231008c32940d4a9f3a9d57c60bde8ec00bd1c25497b2fd385dd5d47f829b7ad3745891634b054889e002dc81a0901b4d4e1602306b624f1e06e1374f2d030ea82ca0de27164929692938d128a23348554b9d6ce68807057eb1d8c4909e643878c99c0b190302047c435bb500683066023100f4972cfe3cb54d96aa0bc45f905cb1aa44588bc02c89a3038ee75df4a5c2d3907a4a39f9fa017c612312bffb85082bb8023100a5eaac67baa92e7732458e416e4454c8d7425f051f9cb382f1acb356e481bbb29937ca2837b4d7fb071a670aa715285a0302047c435bb5006830660231009484086aff2f2cfdad98be48c4b4c9dbdf28852c5a8231301cdf4759a853c31fa51d0c7c75605a5790204ed8c07c0222023100ede70dfd5e7fffff5daa245ac189bd901c105a50964422529c65991b1fff15575b82fcd685199ed74e1c6dd40c016bb40302047c435bb500673065023052af73d4f226ac1de46dc3dd4892f32ed580bf8a8cbbf61b78347da72f478d84c705c372393690a7c3a7f92e1024cb980231009dcfe32b9aec2c4c8bc2a998ed2cbef8ebbd489895af334226367f522bbd2f159d4f963be29304ba27349cbf405e3c530302047c435bb500663064023008b067f5a2db6d6a6378a313bd2d5e86b7343c475ab3878d24254f897143760cd63a9e8e6b8def129781dbdfd964407802307917ef5312974197e814ed1a165061bae94cedaa07bad2555d780be8fedc7cd7698ec9e395e610d0e837dcd7218927eb0302047c435bb5006730650230041f0d16be231b3f8476b66573744c382c63286daa9729357278121bfd0e53d9b7ed96cfc29b274d039cf1d68ba6a892023100a99040c9ae1659153e15abdc2322f7498bb495ef03099c16ec37a2e7ce8f239485f5cf8d0aa10915c08ee375190ef4580302047c435bb5006630640230443a4874dff462364d5c342ad7b6af4f1a8e929d21cc911602590c8f10a611c1e30f7402de163eae32e827154b8ebfab0230283de82fcf083174e5b2511b60c3b03111510e2bc229a6cc0c07621882b36bc2864d5ba61eb5b04ad715a4e95aa9c6910302047c435bb50066306402304c1097f3af9340ccee49d0247859615786cd56d3fdf0941243deea58be4d61872e04b8ad920c839df7413ce24c0f47380230773fdfabf9b1fb340234f93a90815481fb8d8d8c154ef395d4849b3c9a0276be8fe54915526a3d8b4265c54059624c740302047c435bb5006630640230733bdfef5bbe64db7fd2237ea900b036334b2415eb14ca240b0976bb48624cb03a2f8ff596be140db37cd539c06a3f1102305823407de6b5e2d3342133ee2c0d46e93b4678d89ef2933be9043b751a657ad41305bc2590fd0153c0055842b1fadd1c0302047c435bb500683066023100ee70a78b560f3c382746747cb0d1acd54019d711b18c4ad1bfe4226a2269d2f0a68ab89e4e9fa88409bdf4890de83556023100e85df77ba1ae9c93e7d7aa276bf839e0cc82ee130a316e49d0cb4e2ce08941486ea3d97a48173a200c2b648c943a42e10302047c435bb5006730650230720f96fe204c8c34aecd6b31a513cfb3b2e03ba4fe4c687580aea88e1c624cee38bc1226ed1e95faba1187664082f4ad023100e8c22afcabcfd2d3a6e0d3cec6640cc437ecc1c0c8d4773f9ffc7a33426ca34f54e93c682aa915cf765e003183e4d5c30302047c435bb50067306502300b386723e6f70c80c2c8e1df4351c71ebc33cbad0168614246e09f1dcbeda51ede7d05ae4333dbf9463edc332ed480ae02310099f5549d106152efda2d4e5213795c8e5cc5a7649839788f9e408485a26657febf09afb164533a0bb80359e8ca0b18a40302047c435bb5006630640230703e4082e1c4d90c6d4dda6107c9815239e31805a8dab923853ca478447deabe8454292f0229d714b92261699707a988023074bf52be8e6d94a75e57e93cd0c41646c07f4afafcb43ba1509a0abad9f72f7bf6594a28dc006dfb779e6ec39fc5c1c20302047c435bb5006830660231009d37da76f8d63cc625d47a59a176cb5dd43ae159d619212a2d8b31fc4dff3be692077f09234b26c3eab1234c920bee5f023100fb99c04354b1f5b75852c4e888ea075f188c4a9840eb29b109988f0d56ba544485006f8e3f2e434700477170441c21000302047c435bb500673065023100adb406cf2301c74a24a380b36b354adf0611951857874da91f3b0d0bdf6cf3c256dfc038ae96049b43c09aad172bf54b02302542ccf8ee2ac0323578a629c183f50160578ecaa07d561cdd4753dce920f78c4d011cf3d77f57b3a04c3e9c48c3485e0302047c435bb500683066023100eedaa7eb30e031c0099ff773c92e1d36449ee80f6b5f9897c1e260963307316a654725905d0536ccef0e9e05b229d55902310088cd02ddbb41fddcb96fbe9c09cd85c1994efc21c5ade43f80e13edac890a03d794fb0b5fd414f133364fc85775e364e0302047c435bb50067306502306c059f796337764210047152d22193db283cab6f82aefc3750c625f5e29e59e16448f6c7162c7f2b000b71c529787d3c023100ccc676823db37ca1bc4f92c02b32c4a30e20eeff928fdfad44b8d0ef8d98c3e0c9ed03239e1e02740a4be5529f24ff7d0302047c435bb50067306502302bb53efcd1f8a6a5d690d2a1a6250d333e2e256ef2a1926bf81f2c2bb8806adb6ee0d665b84655cd2e40a90e99f27c3e02310089ca4dee2faaa18e7ad08bfa1f81c8add65cea93ab9f2213aa838e8b6fe607ee39f8a54ee79fcc0ce1f2161544b2c4a00302047c435bb500673065023076abdd6f5ec284805a9aaf7e8364469c9d6c768de5f6a6cf94eddda23106e78241bcec6b103a4b01efedf972ecb7f23f023100fd90b7ae2540e72d86dde8da45ae483a515792d5e72e04d313e99c343dde30838b448fe1692571688b7a26191421f9f30302047c435bb500673065023021156e6b3ced43bff4bf60be1d2d1f1dc59fd2553999590377f9e52a5cf54d96ea31f3bbd6b03ae300149cbdd5c2d15702310093f290fdcfd42454b62f179335dcb0f99e86ba7d7db1915bc02803c8a97b9ab5ad43e351a22d43eaee98b6f8bb160bff0302047c435bb50066306402306235c96c4cd52de1eea6e294787a00e1854782c9d0ea9d45ccf613fdfcb3a8baa3cde55f9899f57c25b757a1b1a6f9cf02307bdfca997168fda1bfc0422cfc2786742385ab723f23d8447859624c14a12bc3905bec180548e560f3ef15851764be130302047c435bb500673065023100ce010d6c7cb6da7fd5fc4a57ed1646901afb98e1e20b4f5c93e05fa67a2f55eda90de8ffee749fb88c2a3dcce043c95502301ca850fb7113fe9f4f17297cb6473e72ca92ed4be4b1da0c2b62762deb6ced24aca36fa75a11684c9042d714d497dfde0302047c435bb500673065023100bc279411599c12c2279e42a6966414484525478386a9760c3dfdbc563d790be0f061528d4e9bf61e346a9675157bfd9a02306245dcc51710d7a2cf1fb96de99685eaed4f065946679e03c8a13f06be570880436da04e961f5e2d785a7774c45b66160302047c435bb500683066023100891a9dc20ccc44e167fd5a19292e9d6c4c50cb2ac5ffa5c191d5024320036234171ba68a4c5c1049a330e5d93ad4ce55023100fea8e9825f13716b0f1f429528c15f197c21daa97bc17f0e24bd5a9fb8fddc0e037aed91bde7c52115e2d1d4dfd58ae10302047c435bb50067306502310088f3f4d3eb8746b2e14e32aede9475b0b405995596b6f3e22467433224488c54b45c950353a81cb187c5b8dc259b980c023052d48373c6c6e0fe28048667489c0a99d6a0531b7f904d95168d8b2010665d4adf766b927f5dae659f7296da0d3607fc0302047c435bb5006830660231008c240e8a62fc46f2551ab5ef789bd29089ba6f21008f9d9a42b0d0e391591ff871b7139e99b9d9139a9c6cc29de44436023100e38c952426e2f7ea7fd169c9d4c6603812910cee994c7be1fe2a9a082a3d2e515c4dba8b370d0d097edf0116afdada860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303e55ae8d298909dd0de8c26dd55bbb075ae4ef9c329a55d0c3a30daab612f8093ade228a3b28a041aaaf3759481430ca02304d911322e76f51c653882129db5ee3f192b5fb1b9be1ae6d9c86c767ab1eaf1f50f6f17ad10016d4db03c614895a66920302047c435bb500673065023100d61670b9b5d3c01600dfc13cd84577e130b6676689702e9bb58623ef2ea441391104c3fd5ab37faca79d650baa202132023006eabbf088cc0fc216bc9295e74be5cc8751ad7100cd06bb9edfb4366d4cc344c24ac89d763601563a6d733387acb1570302047c435bb500683066023100f85eb86e0da0972aa5574f3ccf1ba1801e8ab0b790991c0b9410b5520f41fd82fbcd88a8b58ec952ebed8c2cd3d22c9202310080220a7e7c8b37635c048d2b6a34f021bbbffc8ffc29dc398c9f8a2412808549bed01a408d302f1ebc825abf30949e990302047c435bb500683066023100a5b75630c7f89c1d98be822e353a5d41d970df38a8baeb04ccdaf08b1e491196fa0e532bbde85f16dac0aa2e25f92e7e023100b50c8c167486f68ef517f3da4ca6b99c46b3fdff671535e50a0042952db806499cc26f15ca6a722f5faca61e54ea83450302047c435bb5006830660231008f071dd1662442f1408a3bc8bce8be80ecf9cb309741883a5a62e96a98e05cb722596d4fc7c96eda3ebb4be53fa37927023100bc5039e43b4f87e4e5202fb14ef7c240313e37f2864fb87fd54fe23743e4c90955d9a58ea67f08ab3610142ecd7e54510302047c435bb50067306502302c79edb064f8489f575ed9758b51400bca7a025c87ea798b4188bc8f29002085de217ab8d738e9ab5d8547dbfacf0b82023100f61d17c5d0123bfbed13d6699b2832c9a5a4e68b6797309756f2ab66db9c922a200cb1fe33a7fe75ee39bd002e48135e0302047c435bb500683066023100ffcb95e1efd30d15e9db25ccec1690f5d63ba514cbd47b78ed9a73dbbd5b5cd48f3984e65dbfab6566f0500b308588e9023100eec5be26f61ba033473176eb573dd53e47bf2d625b93731f193de69abf786f71885804e328e3eae319ea5bc1a6e745da0302047c435bb500663064023039caee41cc1bbf44d2f17eef2c45bf8046ba5b75b531f6c2ad95922b9b1b783df92f3a88ae0dfb1a26cf81a0339d98eb02304147e6eb89648bd885a785df50dbb1f47479e1462b2637e6c44cccd9004870db0a0795a03087c9b7f88f6d4df358cf750302047c435bb500683066023100e7d4830e5a13069217bf7dfffee1d0dd94be83bed19508d2fd37178d0059c8e2a99c88989c394fcbdbad2fbf8f4ab415023100ce21a6638ddcae4e6d1f28d874d8d20ab103f1184e6d671eae5206a30ffb272aa1542bce497e30e9cbac9097597b36990302047c435bb500683066023100de9969407f696138ed5074c7d80b8b7981be33d266a39a0ce8c43198a379d553c4a7d9602ba427eacf95065acb3ed2f4023100832cba77094683d2c48e793bff05c51336cb37d22e0d8a50e8570fde83ecab0420dc4d51091c39ec747bda9958cfb1fc0302047c435bb500683066023100c70ca75a63a1fdcf95b535707c1d8a7bc165a3575581bcbe4cc66f084d523ffd265b737022ce34298461ffee32867cb50231008cbc7f882b62366ffe2eeb3b49269fd77ce06349cfd191c9fd3e9686f9ea50d9c02bdfb95849f78fb3b214c0499639e30302047c435bb500673065023100e0ccb4ee8300619424b66a26217b0e0015ccb2a482f26fc2a52725fc69caf12f9fe825854944143ce107de65669e1db7023000a9680103991bf1762774dd3f46253378b4e6b578735fa0b271a61eaf090507f17d92eb34d380285396ba0330f498450302047c435bb50067306502307ced045ee397e5cfe0c12316686a910a79a86360994a6812b15f697f99d5755ac6cc3bb20dbaf78a8c904a051a477241023100d9f4656ecbd6586df870b6b691b1bda974e81f4ba0eca46786daadeaef68c811f7652d8589e7b3b882b407a611ad6e420302047c435bb50067306502301cc1331cb39e7e0af513d8856bffd31369420d88fc2430b40f5131ad0edbd4702526be004a64cfb6da199fc9361a77e5023100bcf6670f534f080b3b47c38fc04a4a865c5546b5618bc8fd71c1efb7bb89cf994586785fefcd060d4c75d5af848435f50302047c435bb50067306502303cc3a9998572ae8694dbc51e975db69f7258da949216dea926cc008a1b38d89f9d7b1507aaaf29f2bf74c1e4673401bf023100f6b6379bc436de7f464448a17629be2259a2b27fbf6f5638f6a4d709bba0acf33ddd6f12a44e1673086b84c0cc3928260302047c435bb500673065023057c4c791028e2c6bb489bf8d6d93f2cc4ba3625413f2e8ab09c77af452216681edd73f2e5df67d5f52868f1d12ca0f5d0231008fe5eabcaaf2198a5b5edeff362fbb1e8d595dbb015a0b43a77d5e57f9ca38eb9ff494ce01bf44fb505ff77a8918afdf0302047c435bb5006630640230602217f07f659890511246480234cc8cac34c39371c140ecb46d056e62013e14a01a76261d936b820a9e991a313d9638023025dc860ce8ca9dbbe90e5768d2123696b6f5582ac27c5a8fd13c02d8500d15b4cbbef524e148bfa2e61772e0a3b0c83a0302047c435bb500673065023068b6f1ee7bab9b66cf75ce7719737222b2ba27b8ea14df3961f4e6e80cd495dec3aa3b41f791e02bdf6518de516a0316023100f69c46ebbec202ddebf479c6348d753af48ccf5a6325d973440d6b62d1401992e8685fd8f580b6a2bca22cd16fe406010302047c435bb50066306402307557d51da2f5d8bb4eeeb3f8de5d53070c841306b2727a6a6bee694c15b998bc6604a2fd2ee73e2ce8b44600ed622f410230127e1363db894ea418f980d0d6754f394999dfddbc4ed090ca56fb6cc1de9bbeee254863246c79bfa169d61acedde5590302047c435bb500683066023100f6a939482edeba1c7bbeda6a0cb5721443ef0a25d6e4726a105b1c1811fb3c047e9ef35142e8dd30959f328607e625d5023100c06e2f1234ffaa4c42ad1fbc035963e9b9a1b6fc453906a2789d484a84f404e8dcd14ccba86fb55439a2ebc6535fb03a0302047c435bb5006730650231009b4e821d0d365e2ab3faff9b7e060ab2fb079335120df49df26fe0dcd5d461ef66d94bd6d480fa5af78240f1ce0abdc6023008207386a24b91a0b0c31a82790b5e05c97ec69dc080cb3d5c84adf69c3c056ebea74583b1bcdcddece8adb440aa67b90302047c435bb50067306502304e2dc33ffa18f858bfb948df3a17a1057fdb4a286e20eab98b9912e1028a2c00a2392fa06b87e0e6744141402a08dae2023100c78189b9a8db181418fb4010f69fb4dead19655c5caf9af16ca2d274ed332a5b35c76f91b3b1b47386076815cfe12a2b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d432584cc1ba2392e5af45aba56532d9d2bea886b8e6acff4dcc66031948b69cd7f5db12ca33bf8023f5169582af4ebd02304e5dc43f746dc5a2e415bd37eaa0d8956bcfd05995a8ebc98167f52750374b657453c4ad7bd046bd6bd95e100f5ef1ef0302047c435bb50067306502307749144e224640b47f6d3561f1a13e3b6050369e8f22f81ea38b0f4d313418bb8f0cf3107db4fa5b20dce191262d5f58023100d6a8dcf3ec23d4d689d6aaf77fa67487413856fa8f2ab52b2e7821feb6ab4608a8837677a9652c930325c95bf8797f900302047c435bb500673065023100bbbfe15c9bbfa27c901dd9c6e82f2f46ca8e1a31e5547db28a1a1c5ddfb8c93f37c5f5225ab5af9a0222e22bf3ee2a76023076165e2cf633b7a9918b3aefd84e0d2e94efa3b6f65a3d8a8aa4bd9069f41d4e71c87ccb6ab626bb9b59901ce12dffa20302047c435bb500673065023100d605c2caa9158372c140a74b301d91d21797985a8b6687b4b3dec88f1b8b72682724e9eea5e7d8d8451c67ba3256ca860230014f74bb41c997fef4d5825c7c3e900ed8961ab07e72e09bbcc90c43ca9f886863919509582e8a34d6d33581a4d7c7c20302047c435bb500673065023100ec3680136dd7d635fb64e5b7f176aee1b3a530ff63885184453ddf1f2ba44a1530e94f8af18f231928abeb4f8ab95a0d023030b9f56cf6152fd56fbcf66ea3d700d0c52f19550b27d1227881e9d2fb0e6fa40be40eb120a90d2787ead617e1cf73550302047c435bb50066306402304fbf46ac89a544be261937d0c1f64234e4a9135367f211e9113e713cd3e29274693c2bef2bbb5c0e400135f8800b4dd60230459e8ace33cba41bb2ee90be81778609622c381ffa73d242562608f5849dce0b6b4fbd5dd90aca814907aecc97d5b1770302047c435bb5006630640230342966de30a2ea56c9513678ad9242f107104509a4037bd4fc77549d199233db05b32ef45fac7f41ad2c709ce07e767402303d1462142939665ad3b6f5b91a6574d1f7a2d110b23bcc60e70bc03b0a4ad8c546e17ca5fe0ae0cb59e9d09df326c83f0302047c435bb5006630640230393003307e3524613755dd1114694265b68f3046863a6258e43ef716dc66094a9d9fd04a134434e7fb15d225a2882ee9023022e0bdb2a8d5668f9b3cca2e406bf0376899cbf0e8abffdd1388248dc817581fa4f039dbbe138453232f267eca71256e0302047c435bb500673065023100ef4dd6a95ce2ea89e6a68c3fef7c92d9b2d167a1d4ba0c1e7d6721960b78a2f07a9b0e393cdddb2b38773387c34fcc3f023045516aef2885d9bdc7d0a7a101f8e38066977069a3d15797581e6e22072f5fcc6824b2906428c074f7bb002d4a05f9e80302047c435bb500683066023100936ec3f41c1d32e1f4ce9878998921a5befb2c2241ba23ed73f3f53fdf7ccf250f6fd214e35923e587925098cb9bb017023100dbace61c57720de4e47215b9b1111e98279ee6f5aaf0e3bf8891e9dc7942b281fd6b5896ff9464d5ec995d621df590e10302047c435bb500683066023100f86428cabe53e72a9953b56602fb09b0adfbcbb635753998dc7a85bffbc18a51b5b9618f485e5d34887f1c0446f9f5350231008f0008e649c3cef603602f3350a6c511638b7b1ba35cd7434aa51bc79b5c4a885eb18e3a7b426200cdfbabe34c503c330302047c435bb500683066023100ccf3f3adfa8b957b090fac06b4c8950c28a48e5bc63c984d357065e7b013b90f5f01c27d34c4d8e909f699164541648c023100e8c8421389fecdc5545f040715a89c72bbfc7cd8b6bf56d78ca4279c6dd95abc7f414073c7042d1e731759158e2df4850302047c435bb50067306502310088cc1e433fd68202aa6bb8b0001361ec748d75fbbdb1719d905c82f3d52b06f917955538fff2efde7f71f7b086ece6e60230255363e779785d49c6ac707b698fa4441918f4bb50e41b4bad3a2456c1797c9cad873d8d71b28ee44f492a0d74ac928b0302047c435bb50066306402301dbf83f6d16571dbe4184d36410952e6412ba08a41b0b90797d15ef70d2d642f8c4821ca09c99e7618fb650427a75b1d023006f52faa940552ef3dee5350b83f47ba9b19200100cb26e95db1d80b22952a2877c67bba5a0e18b71a0006050a040d080302047c435bb500683066023100fde60beafd9a9abd8ff3dc79cca4b83f7235584ebc577909278bb48100e9b14e873302cb3e94cea57a009787c19f3220023100fcbcfba3eaa1eb5b3bf43a8bca6acafb58110935f97af1c0fbde60839115d1abba4a69b0e1d14b2ec615c8cd702cdadc0302047c435bb5006730650230195f107cb704292f70ac198512f817683923560179866a43772e7aaffe67cb415f84bd548023f65249254430913ceb47023100d47867227f0859c9fcd16b61e7e76e2526bd5346b660eaf7a5f11cd4cc1ff99bc8084a870bd73402e2a8e309b76419820302047c435bb500683066023100848382ec4bca0f6f25889bc1c2e11b5b8e03c658bcabe29f78f486dbfda936336354e6a5294d0d7f9afe587fd7feafa1023100c6250cb938a4b8054d25c54eda23f13a7fd5c4aedbb648a0aa1b259cff215fa9e0e997c96e87bccada5a378c2c0f8c600302047c435bb50066306402306bff33e62d53248000478236f188abe778b6adbadb83eca77027e42722fb0ad5ce2a121d150c15ea4281b21c0b04d42f0230012b23cf1b9a778b3636616fa1b2211a0022998aa1d8a0b2edcbadbc5834ac6b929f22de4e10b10cee40044118c8232f0302047c435bb500673065023100cf4adfd2cf0e5bb176f144e6e36b38d913d60cc9a4f0e34bdc01108154420f894a49e0e352cc89608a48f438fff8571a0230647a5f889b029494dea9c7022b4d7f3a434c4a6e44e212c1e48c6d1e829ae2d1952c294f857b12c87195c19d1f4e74360302047c435bb50066306402305aeb3170b1923e7ee989140931bbbc6be1c2a032ccdf33a646db7946400a717b811f357d4b930a64d777eddc11ece3d202306239007e2a247cac6fa5e849f3956dc1fc00cc558c677f3fe73036b194b735e2a73fd80ceb55339a0e728028d1c0aeaf0302047c435bb50066306402302f34b50400aede0b6d7525fd323b8cc2c6ca672665f4662089cc04f3459807cb8ab0fcafab0928c99a4510d6af9df62902300babca8ace8b8a619c2740f1e06442452624ad47909c47e652f685bbb79692da9a826265b3b1c8a6c6de2932b1869bc90302047c435bb50067306502304761bd2d263dc607e30a7acad09aeecf46ac693e6730939df7e77aa354128a3b10757db1163e798d21a6379d3836933b023100f261d3c9d0ead4e548d8eeebcaa0eae835e1ec06862325d337c9bb26bff0a25c95ad2db98794efc46305f7ab74f4d8a60302047c435bb500673065023100fe6aefc6821afce961117cea2f9bde204da33826450a79eccaf7039950360c2901575432771f680fd86ed209ef714e03023032defad0d02f60a1d0f85f243d85daef788e8135516174e01482ccbe05163d227ed603d6f5f3066f3209b97535f89f690302047c435bb500673065023100e787c2e523864c65aee961bfa976e75c2df320bbe10a0dea2abf7b77301cca869bc1ae1c0d7e2c203022384d8cbc5596023040257ea95a9896152484bfd8e711f997bea211da767f046af8664cbd9f2a28443fd47efa9c06b17492215a040cc445630302047c435bb50066306402306865836c9879a8eb81f7d544cbb91df78402865ea380dc8ec4e12e55bfbc5abaa1f132c504cd0e44324966cc20f951de0230252063e7dde482d6f3e94f3ddfd177c5ce2ecd540ab44684b6224d1c7f41f89ae3bf17cfb7984bf0264667b0d4fd72ec0302047c435bb500663064023008656c32e590e7693aa7f8846e94047352d8a717b08e4b310b1f164941cdf7c8d3ed1be9c9f80e9e1830e6baf720f66802302a9d899d66a705358153d7b5a345da7efd59b6f3906d27b6bfde0d8d3268d09cd948c142065d49f746d51c956e70215f0302047c435bb500683066023100f8bce546553e7c36859228842a4e5bee805b95f847a1c4af1cb50f9facc91be057947997f2de282db708822839aee87d023100daebb05fd2c5a24efd38c2e4b44d630aee37d92c58cfd70738b817be51adceda963df2d5b239d061503db8cc0bc636d70302047c435bb500673065023100b255970c6975e67f263c853d174ae0c1b17fd52c79f9874244c771a1a1f7ae72452ce5e8c48b672490760303b6bc9bc8023015e7f8420f5396af612af5ec8e20b398b70328c93d20d4989eb03d301f8be9727354d1bc6254df63dc8cf42bfab772230302047c435bb500683066023100fa67700e2c2f0a7b74908c02d580d8c359bca7fb01c52b119f98bd1f6bbd92cbfa380685b52e4ec2ed11aefcd2626def023100e1d69ae99f2a5546932e89d8e9593776aff57c1648d789db325bc551a9b810bc9664e5b7d22ca1ec6506ad6acdcb311a0302047c435bb500663064023063e7882664d9392c479d724491fec0732983d9fc22ce4b5c9241fdce67c24c3f076139d6d1d98cde69870d141d47b19902300bc42da6b4e448e63cc0a10d0ab37a4ff7db8cec327b7ded680575ff44e9ca0d313318a09d383ffe8364e7a6292992f60302047c435bb500663064023012fc54e841c4aca398ae9e9b9ba162f847cced0658fdd53cd6c7980369014bd56569a4754b690dbe03b8de44f6d1d819023003a0e2592861beb65b00678a9447b8bae02b6cb984ed0e00c164cafbaeca7293302aceabf448e65515c86ab31e5b8cb40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301d75ad11753ad65bed54abd33e48d594ff8668bbbaec38c500653123b8070875d49b91e5ce998c77db9f6a7df383a8cc02306ab05d38e4aa4cb482c25a7d4bff24a30022f070391675d69a3d4ace610d607b52c7baf3a36b0908a3ba617f2a8980e30302047c435bb5006730650230042763fead4a393e7853415f2c4349b9c947f7077e0df98f06b778cbb012801411d2e3a9bc38545abbcda9c80d78ac660231009f8b1f1c5b079193ef50701f3411a10cacd9c59a533210c48072e929444ffd5f6a35a378adf24da7b5c14f53ce871d580302047c435bb50066306402307a2cfaf695791e87f65f9cfb53670ca88b46eca9faee9afd95e3e620b6304ef0efe7493496584b019d7a149b1a6aa49b0230467c5a9e202c6a00b9fd124a7a69436b2d62a7993182a518fd8f8c6ee246963f070b99ae64fb5c56b908bb5ec2e7d8720302047c435bb50066306402307667b346c3696023dee21b7645b02b831ef6f350fe611a34dfe0c4bd722f33bfb6e6f64be65d8f0748d6132502aaa4d00230391af9d28dc930ab7ae423c534b25106646c666a809b954c7c6fc53713f9c728d9a5d98912bd80c6c4efb7c1524c200e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302dd2fc2f0ee7e99a853fc4821375cb9ecd8b5144359a7057308d195e4bc5ddf0d96bfb66bcc798f162dc414418d5d16802306f5d62d84aa5b8986a12bcce1f7386525cf9034e7ba1cb9399102dff70d9e4d60a2a32aed7a72e4ca238c42bfc0a3d870302047c435bb500673065023100877e284c475a52eb739422320a7d81eb04fcac1d148a75c76a3e45ce40b46b53a925ea1db535054ad4d6a43197d30c62023004ae88f3f0388cb7cbc5ae5198c6521f7e9316962e271ff6ed2578f4bdaa50089ee995524f82ddf4d40bbf56d60407710302047c435bb5006730650230214e4e72be87235da71e999a03a47244ff179c0daf7e5a8966547aeb3f8246131067dfa044054a3f813cb5d950d4d55a023100cb7e25fa38cdc707162ed8b173e1755d8af31cb0665be7f4fd010270993e9b698d74aab31aea6cbf803dbd7fa403a3ae0302047c435bb50067306502305c67b8054bc6969f11724862fac0d727e62574df2dd2b9dbf8a21781f6351e1fca5edea6e71b5995c0293bd6e7816eac0231009bf656c7860953d5ade42bd065dc8bc4f601764137417b1eb183cf0c0815e4cfd966ea2ee0f29d34c7dcd963bd396c2e0302047c435bb500683066023100fa2e95a6f793a466e0d03e0a3fb3b8f84219809c61253d75d29c639ee749fb7874663f8229f01f8ef2bd30b15cf6f41a023100c3a05ea7fd355875030fa46055d96ab2f3f0b4c1eefd43391e46d130f839a645440f2b6efc9e384fed2dc0efcdd3570f0302047c435bb5006730650230712222a69cc3f2213046506c5a32211797e38bf6b63a20b31b0ce8604755f70d31d12263956c76c7161263e5df7e5766023100e155741eabde021c0c39d91b3be46a5d481bbd3c1dfa34abae7cea87b6a063c9d797063fce50e48d68a8b48bf5d1a9a40302047c435bb50067306502301fb5e1102a512caea69eaf7a497c7999068b85faf5ce0fcf9c704b9b62b98d59af4157167a48e0bfdf9bfeb211aaf875023100de3720fc0cab26bbfbe56a1c4766cf84055ac6eb8ac8d6186ee3f38a66b838367425e464807829b56ab242e1cce698830302047c435bb50066306402302632c20276e9b4f0dbb8a9f030de773c4d4476c963d10f83fb62e8c29ee49ac6879c22056a89ef9400b363e5bf904b6a02304dce39aa09f3d1e9f07542005ae0ecc0318e712950bc62ca1e1c5f921568f41bdbd7036726ace7c18cae79652f9e2bc40302047c435bb50067306502303332bfd3ae4b5a5e787cf42089f6a9cf49a00947277a275b0e72b6adf712b2a2d34b907c2840e7042cee272de4160458023100f7c51c110639cb9efb0545edc662540f1ae69d472aec0b5e6a551f84bdcd4a77e02bbd6be49b629a5cd2dc072c03cc390302047c435bb50067306502310086c3d3e4ff3a2a9d0297faacffd57be385c7445d29826c956657bf36b354759776f653ad5dcedca3c817fa005099a58a023001ae77946d30f08f3b0403b51f0ce8c840f18faacdf5a571514de71b5b2dc22c49162b0b80979f8edf84683bd24001d60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ab908d894577828b37507a56e975340895b50c4e7d06d6259394ee539019d98b0a3a29a9c731eb69fb339f478ed45509023100dec542ec433513ccb677555c52832b2f7b2fdba8d48de9e0c1a880bf233fe408410c1c2d1d44d0af761f4efd07d0d8400302047c435bb50067306502301b09b8a6fc946224ddf312dbcc204db32f9d0cc605e02af17d0394475920e0b40aa9259139b799b3ea9ca1edd334a469023100d0697470882ebdb9b6ed294b548cba83afc6eac7fb595512fc872469c9cedb1c75aa2f3d31ad0948728f290d47b5efcf0302047c435bb500673065023046cf57d0cb68239e07b99dd9a4d28923b1f4b6546a38fb759982e9555dfe883321c988a974b2c7ff75f67e44e9bdcd64023100ef6fbc405c0ebbeaa8522ae9e34f2705abd80a7dd45a48bb3bb92683301f8d49d8de9023328d65e7727d0247a1d7c5100302047c435bb50067306502302c0ad1b8b0b2c7efef7bade46100b2604ae9cbbe4412399ba3d09d16a094e2b99124ffe869355977785e3e7fc5bd5ad0023100a1a0e79c1b92d59046956a44c5f78b5d578bda169ae4730ec9252ddc9f4f67474bbceee9df88245ccc43c00f22cf2a520302047c435bb500673065023100f2abd5394bf452f0dccefe9e6e99e73bbddb3e04cb5387b21efdf63b76d598cf46ccac9eaf58808f76995ba480a5e31e023071a5b0c2958e9c9f1f4279cb065c226f9259db15bea3257726e88733f562fe276298826bf6104760daa82d7c4fdb4c770302047c435bb500683066023100bf520494458b40f3824864fb1e8f37f8a91a85adb5ba8fb2b14f3e73a35d0cdcd6cd1321ff3bd229df1ece4eb34ae539023100e6428f131443e7f6e473d2bad3a7f3407f71c8337029e8ed98bdd95b246f12e70d05950060be56da1825bacc391fbce40302047c435bb50066306402301c0f64bbb414339860b4dc588da54a35eedb6acbbc8497c0c25acd415c0272f6c7ec159e770a6a1ce8ed33321494594302303e1efce0153289f27a4b32b88b59cb00ae79374267380bafdfd2c6168b7930f5a8a6511a25ccc61ef916d16fca6ca6e10302047c435bb500673065023100d94e46f4016f35d0c2522638c1855f501fa3724375947b80ac0561fc49a91dd36f8bcee5d6ef7c4f42adc213dbdfab9702304f31d3a98c7b478bcb36a3d309bd623251abaac3612c9ede170aa36db5d32ab7d15c0b1f9e2d4f6f4413bf8fe4dc7f250302047c435bb5006730650231008c8579608a06c30f106de4ae87e04f608ecacb2cd2019f25ffa1b33ea2abed61e19a6497881e82b6034613d9ed245adb023040d35488135c5965f8170425451a62b5340272b6e5bc60f0a15bebc7b897989b2fec6159f53c99f78ce08f05a4074ef00302047c435bb500683066023100bb1ce98b907a6d3ff60b2721bbf25a2d2780deb70b70dd5fc2eefa9662c6a98382137a026a3b4f583adf691d7d89b1ec0231009d018648e4bf489a1e4284819ff46e18873c843f9d9248078086cec637736dae386d9a664221e25cb8fe1fdb7a5daabd0302047c435bb50066306402300c34eb4f28ce4f4111e127c302d81e09a8908f88c9c8cabd03188e9fb272e085c3e7beb64d9e10485df86f5a59afaf2f023030b505a6e1958883c246c4027aad5e3072dd3e64b31dd33be1cf6aef3d42b8b9cce7cd5a59eb50e4aaccff5dd0a1f5720302047c435bb500673065023017cf6dadf96005bef2e94ab6cc996b1b7af223fc549e9e422803c8062caada945a7ecb71433f396bf913f205c650b2f2023100ade1c8e6ee0e9ef636a5178059105cb3cbbaa9bd047fe3b43b971421f183598d6a6407e54f2cd4bef5cbd63c2cd42b170302047c435bb500673065023100f1599c9e61ad3c71a6d935f7bd8e7a5fcb47301757970d078949cb8ea7ea5dd93ac09eee6ec3027c9fbeeaedc4856c9502302d8a3714c4fa835503d7930ac7e6300100763b80d38398f8ce12d1f39993456e989821c0aa2aad52294eefa2482c74610302047c435bb50066306402301ccfdae1be2b8ff27dbfe6f2105c47e560cd7501ce646a13f2d9139faee2541b098964d7df23d4a773b8cc6733f768650230235131382d8e7a316afd3c2792d50160c704da0bc204842f2f827ca7f3b281437564152a8dc7b0c5b26c168ab74dca4c0302047c435bb500683066023100b73811d85abc9d05aadd2e680a93ab085fb24ebbebceb9d8a57b3facf927ccac24c871a3529f5b715babf1bf20be9559023100a8276f749f96b60ff1c5a0f899a3511c21ce315e2cee8b07151614125d2e9e8444f99f0dd7ed02719876d10381c62d8d0302047c435bb50066306402303795de96334a7cd0f160b874697dfad4d67d2f9e3475b75428159cbb771896cd0fb58fcc7165b446f938f6ce4613ad52023025bdcdcaad306fe1407836c084e79815e138f82ddc28f5d5e7a46e6dcd8c40b99941b769ae1fa7ee90ed35699bd49ea00302047c435bb500663064023013ca704354b03b22f1dc9424d8fe743b82c9ad64fa1fc9b762baf470b1e44180e80338d47d3004787ddc7799f79731d302304c9cbc04672673cb743defcdd4aa3b5bca784e1a246846e756c314cd6b0e886535adb406b96a5d5c2354b6bff8a5241f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fe621d730e2d3ffb6f9b398c50962f7173c30b5732d6f3d188e028149b19e95703e2c7f2e7979a1fe0fbcc65ad745f6002304573762221beeb0d6b2506f4593d3755694b1d26d90e6ae7c3ad9f70191a942449c7054d33a6e7f62907e52d9898722b0302047c435bb5006630640230052902b845027592e97a45d6bc233f15bf710969960bad59b3c39b3d488a61ad1f444a1f1a6fdb1a8d680ba20700eb3e02301fcfec68bcc21c7def630236eb78c402eb199300b85075bd9e1a7e4ec31a552a97b04e67967003922acca943b1b9c5980302047c435bb5006730650230696a3b1a01fb32b6021dc95a34210d5051b55e94b1213643632ed47ed05db63e83b7b83a9b55dcfb64934f4542b38e5a0231009909845bc19f4b2fde3a94ee6dca8ff4ed1b8d266a70e67e58f7c48a054c49c99a160b2773082bc384da3bd9ec34fe470302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301af2a36b40f35997cd6d795958ad5ede53576d255ffadb8f88267b543a38e4b67bf28b3fed720369a4dbba5e234c0e9b0230503dab8dee4c65bc31116341599802a50ed43ee99f0c16593ba861d7b8de17ce40dee0b3912c4eb182eb41f79e1cda4b0302047c435bb50067306502305221946c03fbd274912697bfdd35ce4c1c16f21cc12ee501343f31e84ae2c3151ad4d7a0201582c50194b9534dd409da02310083db9c2ea11574b7a96ccfc586892f4a11743ed915e91334af2c549d94e2b17881ea627e197bf2f2d88a96f28561f1430302047c435bb500673065023039760bcb1bb1496d3a1faa757faa1dc2645701571f8c9cb12fafd1766de198dd3e9452cad4e1776c790a157be928168c023100e390e527052cde8cf0626f8ad7ec4388566d9805d9ce13e0fb447c18296681efee42910fd7c54939ba700c3c8380fba70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023028dd687be9f136bd2d52e6c2cbd5401a8a2cff77c35735d0bbfb0aba67feb47831e3f7a3407951ab9f511fa011ee6d95023005e2bb198ba1ddb6f985ddcd4460dba8f88e078726541e3ce5bfb2fd7b3c6d9f525d230b591a4d81b345c43b72a9002a0302047c435bb500683066023100c47244697f05585b1f392380bb8cf4cba0a7b0da9fd0efcf51859950ce505e4e54e86d19c76b393dfd021a1605f06805023100a6f32941cd45d3722b588e7c867bb41b5d509514d02f6334a1bd6f4d6aa5e4fa96246d265cdf258091418c9b6156fe630302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310093d83131503d3502571ce46aa83b0bc20109a42764a236daafe38c9bf86ba9961cbfeec22c7a7bb01f4353f35d62faa7023100c73fecc0c1cafcf2ef23e94b603221365cebf019d9404506f1a0d6e60130cf11eca9c733c1d084a1ddd2a9a53d6a3fb20302047c435bb500673065023039d3d4587c727aef13abcda561a5ad679e270fb1221724ff68c15eafe70d02d22bf1b30732942b81f82a9d2f94ce9b830231008f9f8de25e49b065632aa0eb4ca1e9e5de179e259c657d916580a7e06cf2d0f6ac3c23328be199759fd2255ee83066ff0302047c435bb50067306502303f6e73600256fa1560d386a07322443bde437e0776343c56445248d6f1f9cb3f587911d2144e9d2268a59559a7e062e3023100d1af8b4ee8c69e797b7ff54745f01d594fa1e0dedc18211e77a8884ff81eeeaca838bce075c1a0257c28fcfb10ff399e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e262324018ace1bc6aafc96338e30ba8f8d07d80be6b150b756dcb6babe58c22f8087ebd3060aadd6e5a0022c3583abb02310091e1ec46d65cde72c2a6a389a35dd78a85147c67795f74a4bd61c25657e167f1b736ba7ab283b07f86078b1e49ddd3130302047c435bb500673065023100b285b1c17742b43a71c0ae952e422b5a4c7a57c379470015fb653c86a3c90bd59a0f012f063a182d4165dabd4d7b56070230366ddc73f0121a48eaf55bdb984ec383ca91660846c69344187f9438e09f5eb7e6a72ca99eaee7d056912e473d7f3e840302047c435bb50066306402302831ecd9506bc9bbf24c5b89a3e76f0ae56d328f3372f56adaa376af39ca7d82f65ed2e19cecd839ed52ed3263f8ccce023036f7bc44b6fae13da00f34eb92cef2008a93d7e59a02600c9031e2eaef2eabd0c9c4976ca7fead5e8c76fcab7bfba5d90302047c435bb500673065023100e5f348cc63a02b3a58ee6a9f022e171dbe3ef6e7976a441b80dfc2f47b000d58f789ea0f9a8a9e0a0fcf194d6d27abfd023048b6ffd65f5b0eec1fc2e6485ff8f94faecac141d68476d455f329d4cb2307db4bfa0dd0ab142d11cdb48bdb1475e9490302047c435bb500683066023100e07b9ef70cff1fe906a355e3144ee27f06670d0e3c3c6494b83d9f553affc05131af2966b396c264f54dd9045f31eab3023100bda63813dcbe84ae745abd0fca4cc033521d051c158d79ebadef199637b2350be7fff183e08d9cb9473781c10049393e0302047c435bb50066306402304d0c005bfa08722e887833c29eb4d284f186341cfbee0b1396906525827a3e98f9cb862ebd2f5e535bcae66050e5444502307428e555547c8daf69b0ae730759cc5975f7d8344df355b43584b052788778c856bc1865308d60d7f260e420ee4790ff0302047c435bb50066306402300f4846a2e0f2971bb5effbef48b616df61e4c94b25033d73825abd8f425b67c00f405ffeaa42f49d3136e858be88e5ff02307ecbab3f879465f5960d29e9460189d7b4f24b976acdb834bf5691e488bcddf74cc6c4745b3972e9e1cdd04cf763667e0302047c435bb50066306402301c0376ef46a0cf75b1be756d14142eae0cd80703658c99af2e6e937c2b11e7e6be7a5e21fe13f7b71d3fb4f9eb455232023065f22b46732fddb25fe32596ee04d23c6843709784562eb739959fbc2031ed1e7cb4d8e4e36b69aee30cb202a086d8460302047c435bb500673065023020a04e88c9080dd2342265ce919a4021c543f53987f167a3840a8b01cc4ae6f1d17885d78f016e85a9aca3b248d47f9f023100b236fe78d6a6c970813fb81bffea6b491d7ca786349749f110ec3b05576b2bf2393949ae74842cc3e3373f3ace3295db0302047c435bb50067306502301fa9af2e990eaf9fe0d84dbdcb3b506316773199cd526dec400974505966955e082166f065ab2cd56c2366ec6ed0bd55023100fc3deb8bd737194881e4a4ab9e2ac0534b6b59084c2ac61814a3aec455aa99bdd39d73991a8c5e1d771deae1b9bb00ca0302047c435bb500673065023100a05bf2caef1e28611d6b77148854083c5c8e4c69548e3349dadc0600ce86d50775b8ca3a7b6e023e16a3de69c0f1a28f023069a608003f2fd9b7f94ae1287a17c06354100e6b88466f1d764fb0f596fdebc8f0b03d97667a56c30c6d07fdf69fafbb0302047c435bb500673065023004229755038d9c0a5df5bd879ef0bcced84599cd3a1fb99d783608c2c84817859f9b8a01c137cc598179aa6836bacf9a023100cd8011d6621f8c306f2c5d3343840cfb1a2fd92c34a2d3a8e51e7a05577b89eab598a830e0c39aa02925ec2b9efb7ba80302047c435bb500673065023100e44616984ac9da24eee84cd167e0b3123c9995fc1f6e1dad3f117e0eda1e1e6a432e49a7e16d508f42bf0580f94f986702301694d6ef27ebe675b6047f2703c39e971367d2329e4325615b1f66570ac542839618d913ed0322905a39416ecc8654670302047c435bb500673065023100fba015b797c92b36d7134349d97141f316aad7bf5ebfe9daf75e11c89164c08a220f7efe9b2be08f1b22742d2165fbd9023050ff9f886c18d1281cf3fbce84417266286f540151af9c5bfd02b4eacc0f6aa4484d1f932111d9818a0f913ebe8d38800302047c435bb500673065023100b4d50d0f1516c8d3e555cf6c39940a24564e73c9712a72034ea88540937a276f82183805f5220a6327a2f223c0d1932802302960d82071ea4a3f533407b748eda02d8b22db0830cd4d4560a209af09a483a69b82b414c853debb0e7240e5a5e2dd500302047c435bb50066306402301d228f0e4006b8f5c17b983d0f9862b1224f1fd66ea8cd392fa69afe49cccda14d75985977891dc29bd02d227909e6ad02307e2d4a69def60fc10d1d3cb949963d60fcca6328614283499de9aca8ef9b7c6c8dc55abe7ddde6969ac6bdd1d9e8fd050302047c435bb500673065023100deda434162c78912b939bdbc6625415caf135ce130a186b87740cdc5377ff0c582090dbf89528d5328b2ceb3c1235a9302307bfc37c1f29095835b23a1c6a1975b3a02cfffe985d77b424b0f2121e7680f87322692feccb15d7178a2447f88a5a1d90302047c435bb500673065023100cf0c6b7d0430d4f7693e17765cf1e35c2faeb238f0cd5c3b708a26077f3d63f0814839706b1d1e1cc0a651ed478bfd2202300a6fd367880a25a0f5f0adb705fedaa04654e27210edcde935f46e10923eba0298a489caa86e9eafca99518b2914974c0302047c435bb500683066023100f7a53ee5ba595072d2d0ed0528aed1b6e89b76b8f803f159b7a3b816319de73e91594f4bbc84f10fda78a97aab7d3b99023100e2fa48b5ca4cfa5fd23c6f917bdce0352dfb459ad350559d1d2ef011a2bbb9fa35fa6a1f2269e1ad34c37572fcabe1080302047c435bb500663064023028b6ae632a36a2544d52cc60d8afa3eedf667fcbe41f44ff533ea14182ac31b8b6b3416c931e606d87ca7b799b455739023028c11807546ea3bdd76413de1ff0597e5fa3f2502c9d7b7234631c98be0c32f1f8b4087dcb84c94264c407524dd24d660302047c435bb500663064023072e0487bf09aafb9a754e0c88fd73811403e0273b1c38c35016c71d3941a19b8d2ee9d66378a7b246ad471017fb62706023009b8b9777a9df975dc58a14b79e1a6e31f0457ec30ee48c9d0e6983373fec20f4fd0f330e333885d1580a41eb9fd8afe0302047c435bb500683066023100c59ebcf658106e41def2a8d5b3126adf0facb0ec59377b4b62209ac13cd2e37907dbb1a113191f905652be90faeb6a1a023100c5393b9da8338bba6daec948fa38c9deacd3b9fcd71d2311c9d6df4f79517b2a161f4877ec884dd5840cab60eb6911c80302047c435bb5006730650231008f42384e8842321d28e3aa0b97520d7d6d0551123e41a67075ed5211f3779882600cf59884d09c269323fbd774479ef702303307d75ad715665926ce682594c3ae8c74e14bb01802421728858b5ab1d297a437484a3bfa2b326ca9dc1de8df28df8e0302047c435bb500663064023075b49b1523a7dfca2e72a86ed7dd526f72c7438e4d1413820891d6b64003f53fc169c22d2294bf78449b0b6936c22eaf02307f27058b3b73a315e6b3e7bcadf2dba5c7f6e958b55e8fbff34d01ad03c327e749aa14eac4649f5c32ab12944e4be73a0302047c435bb50067306502300d171a6bd63017d66dd43e121f7ecd6d885d6f51662fb988f4d6acacd21e3f39f33e6deeb14028eef198ff1448d78dfc023100885d6719824d7ca9c9e153e69ee4d652254a7a724ed627d7f467685a34028668b97e191d0cfecde326833f4d68bebf8d0302047c435bb5006730650230021701a267f4b59db9d414f79303f1ace51e2305d55a252898ecb23421ba3a72b054e0a4888bccdf490b63100d67ccec023100d095cdb5b47e063dc81c9d0ed7d59f9cfbd7dffed094a03f4728ee0842beb0dc529289a4e97e11ffb5e99027196c819f0302047c435bb5006730650230209b7e30712ed4f5b040312d9d19019238e2105e1bdd882cfb4e3a890b45da0b84dd0eb4e7b6b5e30f6c26061d1901ac023100d2fac2dfc5baa2beadcca15e20295c815a0fb7a651cbfe2625ec52eda5b62e1f88641dd81b635485833979e8f8e6ecc70302047c435bb500683066023100b1c5a1b07b0ee94c97685d3eaa10d1e06fe6bd774da9371a2f6355745053670a1b521906bba8cfa440beaf92a4e2c803023100d305466221b68494c172177fb3240ff7e8c2b9b752ec65c949f0cfdbade6847e972d7b36d75ab06633a6579747fb2f7a0302047c435bb500673065023100c66990e26942d309ba13046cb48b18e6f63896aac628c8f3e5abcff0fc966a4fb2f8e21221e38e22bf759a065348ce7a023030032b1b7e9650958d431746feda2788d0f943fea7eacf7b34079ee31a81fa72608844bc907d64d7435b63c1e2d80acd0302047c435bb500673065023100e852fc7df3cc2034b13d5eb7df823b2c9d980eae6c45a0c448e8f72ba1324c8a88a1368aaec24d153cd2f2d9947a641702301a5b1958179436873091dc2f40da7e56f02bf8bca9621b7058b8a43b5584fd77b0e234e5b69199227bd49f6a7b886ced0302047c435bb500673065023100dde2e0c120aa9f51b91af24e4962cf825f8611587cba1f935c5fcba50fb31e27889c5378b401c61a5d86626611cfe3bc02302d8a537332289010c07a3c6f1bad6d1a5cdd6751fd10c72364568739123e5b8bab0ea8d50965bebd1554462a640805f50302047c435bb50067306502300a042db1fd04accab3af01cd46770d4020a220d78715a424689b3370b4a6323048d8a45745ea866a480843bfb8e95e8f023100f8f08ea193a270303cd2b491e10f3064142bc1e4be7f87365db8b7159068c06c0b40680b2ca12e1872d5bf249668deec0302047c435bb500673065023100f2567bdc85ba29d987bc95082183f315518705bdf51b86a819f221d277e43d01b415f86c09a39afa343cbd9ceeabac2e023062d1eba7f43c8838f124ce74545958601ad2ad1963493558ed01d4a775612391edd7cbe20110c4d77bdd974ae5a99f6d0302047c435bb50066306402307c077d7ebffe6397322932ed0b2ffe09b351ba4d5f8e03dfaf3c3b382c6f6dfaae2abcdc533bbf9caf6aed2529cd3009023007f9d7fb60fb8772ebb4ed5b9fb6dbda920bf782445a6b994a0b94a3540380e65ecaa10204cb340b5195e4b97bbca33e0302047c435bb500673065023028eccaedce503a5da92a4edf8f71a24e220b74f7cb4eefb86631dad9fc542748574ecdaa5033d8a79805bde57e3150f3023100c2404cf15b1778d1e06601595ab9a17176062bee51b2c0dbfae47c0e21ec1a982a4830a5b7de06c3b1e0b7e6442658c70302047c435bb500683066023100a3220d4573d06e8303a392918ed115361887ddd958e0389a8e0938eb9ab1779966a25519f05dbaa758e99f6622e8d9a9023100b481b5a5775e50d62cb3d9401c775cd5630bb4ee09ef13cd5200ce3699aa012e5a65d46a2c2a183d1c4f8565b0a8d0c10302047c435bb50067306502300bab2c245194b845420edca973f25514e0964b5d791d92940c51101d616182e53e349823348aa04cd838177fabe4011f0231008a5e9f593ed2aaffdd5db7b4b5bf4fabc055e172083773e9fa3a859efc6ecade90e4f21c7705d084a15f77ab65538b9c0302047c435bb50068306602310097b80bbcb48e6bc8b8ca098ca00a604006a39adc0a90bf0a69c3e06b259ed1ab7ed42c65e717dead8ab1795a170d20d90231009640b3309b72e8a511a04ce7e10365669c494742d2ee4a5bbf9703c25d1bb34999d1752d9ef47b2647df2bdd866537f90302047c435bb500683066023100c3a4685440f2294f32b685de017b82a330bc435b9612c31b937717864331ab9b8f7c717aa699a4e2cb1692331d89c133023100dd401247c34570c75464a0902f7e9b16ec8bad0be304040b8f260fad2ddb0e58b1d4770c0f7f5e68b2ad8414944bbb450302047c435bb500663064023027671dc710b6a2651923bad8d72ca80588cb856d7c0bba79a650f990f775f32ae7e5680e47bbe35206c2b6cabb0f6ee602306ad2a3f604ce1e8322627ca968b5f19967e70a21a0847b2d2f6e047376c5aeb7fa899f97b90a2a36b6cd2e19533182c80302047c435bb500683066023100ae37039a78789ea26dddc2a17fbdee7424119fafc8e0c7303d8d97a5caa3338a3e63613d82e2afffd3417206d7eb587c023100ace5e3c270b067c127c1b5bc2fb6b83d3bac3585fe7db8b64ce0eb71584ea9727ae6398e87172bd42c052d0da9475c3e0302047c435bb5006830660231009f707f98d830ac51a72409bc9ed87be2ab83c3c044e9c40a807945ddbcd9e1fdb1ad30a196884a9a944b2796da02bc64023100be7fb67904eacf786522c9b8f3d0963c1e85686454499af93cbdb90007355a382542f2390f123fcc43f2de9ddebc926f0302047c435bb500683066023100a434a6e7c1fc69c0713b67c60d0b15bff62961cacf81c59c3dce4b06730a18077ccc0ed73b09514a256da956ab338477023100a73c781007c14f27259ef68c1aa5b2dc36d97bef32b117868852a3f5f9bc9024ee6b5802a363fec02414ca5b2ecaed250302047c435bb500663064023051b913acd95c3e2dd8268f62ccd5ead922f0f80c90b3e88b641287f4aa5d27c76ca9c872f06d99d93f9378b223cf3c5902303804e6e2a4b46b8410f898afe5d7fc8ddf94e2b329e5b9f0647740ede7da0f9cc1105343efc01cad4560be21b9cf19fb0302047c435bb50066306402302256931475b18c902cf226688fb5ec8ffdb085d4bc1e543bad40e5105a624bf36c31aaaac032d4cfbb79ca50cfad66ec02306274482344945b2ad20ba55819e85b3f71c418b9f8ea66686b9332780524842e47ec58aa2f8f6761b93d6b51610b54360302047c435bb500663064023011859117f461932d08810f74d6aaf8c1a7a322d5423e06b48deb16ab006ace5495e45c86e094f85ad6d680e4755ee6ab02303d4d1fe73eab78a04217bb84b09edc471ea2b56785866f6d928bf93d7038658593ee25ca4d01cddabbd85bb931fdb4080302047c435bb50067306502300215ed4a600a2b0172bad54ff085954b4543a39bc24ff28f0c4c76a48fd6e00e7ade291ee9c3349a816c39f22bba14df023100f4976640661e88d72fb723ee6a81e837ac92b39654876440866539fa9de98bd0eed06e870f36bbe10bd98a0c6b2ed1a80302047c435bb5006730650230758faa5a2062b90ef75f9db033384598f0c2def80422e8050915dc921b7e85b19d65a4af460b98304f4854b5b8b2b2be023100cbcba098761214e664de003626ec54f1e656abe7045b26628375fb2539f44733723e77e9957f386bff7c302d8100758e0302047c435bb50066306402301418f10a89521dccd3e2a864552b978dfdf0b34063abf73877c10302aeb111c959cb0f8b457bf9739d12a9123a8b8684023031ae14df5263964b2410003f5e6c172c6d9fdf2cb1d3694bc1c95261040bea66be310708ade2db806f66e233eb4e61aa0302047c435bb50067306502300bcb94af04cf40b865c80fbbab9f551baa9a968250109a63d01ae65077dda364f343be7711ef81828827b066acd79ed0023100c6de5938a6c5f082c2b0e84a2731310c0f7c330fe56b931e0cd60a6a45af5e265326574947acaeeae2c3b872fa423f0e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230509b3df5ae59626810a9fcf37c4a5806835e143ad022d3617d8a023aecbee61478752e5b302dfa0077f85df3026868d7023054e19506c3ee4cebc39010aae5f82fe13bdec04ed36f0e4c767667508995ce305940aeba970186d705700a51fc81f55f0302047c435bb500683066023100c706cc7b27a4c88e7d5602b83943da1c4471a8ad2fb4b8cffc54244a2d8829b4edadd74d249ee6a8726cbe9669d9d6c502310087e81935b71490f7c5d6eaa59bf4d3012098e556eab2501d09b2ef9ca83f719d225e40db2b9056ae9d0a74668107d53c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cbdef90ae721a915ddffce1e8ca0f9667566ddda7095ceaba42021837c750f33b70d66c5314ee34f488b33b8621ff39e023100cc8e6ed2d6614fdbef89dcaaceb06f005e4c814b1a23c20a28a90a3cf2139b62da7e4e5ac8ba14dcee7333dbfb99ae380302047c435bb5006830660231008dad130594b25b6e438956ca373e4a749cb8cc208debb3caf538211ed2876b9db8e2e03096cbbc7220ce4afd978dcdf5023100f2a9b919dc7c810123af5c521dc26967347335de5cb919d04bd5cfbe2b941d34c1689e71c7b18df13870a7b5b8b1aad20302047c435bb5006630640230529f33f9bc01b0b67492c8e260b2380d760e268eb3f89a2c3ba9205ec7533dc2a30588ccd0aed041046ff84c623c2a0d0230749b89c1d535d7e5f9f94470f454570f6489f4a66c41b9b224f0b5349b9a7192518eb6519dfd6819ff672e16006380f20302047c435bb500683066023100a4cfb57fc3796c78af000f525db3b26d826385d32e6f33322931f8558eef25c94e899f8a246848b87103e78f2a4f13cc02310097d31e023646cd8bcd80819910a7a866916689fbdc1fdb39719c7b28ad46b73346239f1d9b7516ea612838d872c744fe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023064b70633e772453b2d11838e6ee0edef2340d49ec8f4b0433e81a7c0c13b8066330ec00599ac9cc24007c3bfec020c9d023055fda99d816d7525eed2305cf62a44c5ae236f72beb022e87bec80ae1136b5635c69464cc6c2da705e368edbb1678dc70302047c435bb500663064023041d9258371cf2d2c1847c4366ff26925aae2028d745a773294da5edefb84b70882107b53f2ee92b5159bae35d92fe994023017d1355440e8648a9f3efa3d83dae9d15e7fb902fc54a066ab8b3ac6a5bad8b92ec15dc5ffe6867a16dcae44f39c223f0302047c435bb5006730650230650e8fc1b541669dd3d8c31708a0ead1bb18519b45ee270d7d00e29efde6bbfd9cbd1608b0ca32c6bf6517915f309bcf023100ba6424e7daaee1d64d37f378a6309c27633ecfd9e0a4c6aa7bd7f53b1c024dfa9175a859e83aff19a0f192f81ab244800302047c435bb500673065023100c22be09d07ffa3b4633e015e5100e0d8a30869403b65adebf5d337f29a07809cdd8d5baca5784b1de366c7fb8ff580d0023041e977fc802a45716f73695c9ddfa8f93d30ffc9f7820cef081657c3f483527634f8ca08d79bcc78cde01dc2b0fd671c0302047c435bb500673065023057c4b052f43225405793b0543fcde112b9b0a8afc8f5701a13d056f8a4364cd50005f2c85432ca10a933834bdbef8b4d023100d1c78855387e374c82a61c6238fb9d3b4f3cef1418f351e257078d4c93a836a7ca814cecb4d24f5497879281a83ff5720302047c435bb50066306402305cb8b2b6ec99e70e659c59667453481a8f94b759daa6597d3f3220392e8a1da7181c0fd90863517459c4e563b7fd574002303725d80bcbece345b6357cf558380a84a7fe68b3b96fb30a1d94733eb28cfab986d6d4609f3f53a4840c98c6a5ff290d0302047c435bb50066306402300b5c66a63a2474f7e133904e7638f8e85332f31cc44071b54b7785131c5613338d8443ecaa8e80ceafd5e299c9ceb30d02305c764e3b0881091514650a18d9fa57c958e9f7203932ce95ba04910668dd548094af6fa6e910ac7cb31bcc0a8f4e86cd0302047c435bb5006630640230556457f4bce4bdc36eef0a172ef38ac9166ecf64dde29ddcb752dcc98ce421ef892778ecb2a97440a77daf343d2fc83102300cd8ce7d31b86f4bb06b7edc0ce277cd682a4dff4e906b0a77881e09266a7680aa5da1f9d071ce931f316a0a247e31ff0302047c435bb500663064023028b150cd6d6a2e602fdf7ff4581602a020ab279d83037b03377fc007637d05d80ac6ee829f09d265cb9e6134ed7237d602303dfad74ccdbd4ddb8b6ac6b4db9471c2a649100ade39c493bb08c52ab52e3f82565aae13eba83061596c9866f9bc43ca0302047c435bb50067306502307f1e8a0a02f2aacb8530809a09b59813b18cd1766c874953c91f4a88c4f252494732aba1b80bd4a1a77c9bb06f4ee6ed0231009bf0f67c2bc45a77a45b9c720e1f4569a122e0c2fc19a3cad0f49b640de5d963d01397549fcfe48357c1c651c12ed2eb0302047c435bb50066306402302a6376f15f34d8c1e0c758ab7fc897979eb554498838977ae761e066ac666702293a9e1d152feadd129278f6675c97a402303a29d38d8181e3b35d56f250e61b0d8a1f23f7ed8c1d51aa0a018ae45053c5249d85ffed76072847e5a3a4c7f93f60c90302047c435bb500673065023100b07c579400e28b356c66b7f5f1b19433b503a80c601701906f26497898762001eef57e9fb4f35cd0526e2caf7a98e8c602304efe7561fe6f9014b2146e94f97e7ad0709c7109d987e1dae548f776037bc2110040407756e36156085cdae84164e69b0302047c435bb500683066023100b8ea33754c456ea5d50ab210c101c95f725cf374861acb6b6bd6843741f96d20048068ea0e1eeccf883a25432ca6aec0023100ed1326af6ae0b1ed603abe6a97fd84cd79633c61c11e3cd5cee46bac55680c7cdded71e3a8eb2b01d064ba5acf9df3ae0302047c435bb5006630640230729b991a574d6d74afee0f8e8c09977eb43e6f49d05c3fa9e2ea8af9d150bc0487d1298dbbce6bd0e48c8a60bc94dc1402304f1a3e9875fedd2eb65d7c9658a7f6b11da87cb16f779a1a0ed4e9eda258c0c62bb91d507ce1d182c2e147727fd37baf0302047c435bb500673065023100825d672918a9fb77b1412dd9811df81068e3b3f89e3a39e566b6a38add0dfd94f41fa45dc451a5d9441361694f0c083602307a99824e15694b4e2be342aa12efa649d1bea2b9151028deac776a34248b7af5a9d495ec7cc36e7a7b4b771a10c175180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a98f3c6724b411a3ac4803592b52bbfc0e97ac89cac9ae73074db580b7743fc7447c4ddce1eb4459f0025e680742ab5b02301187f0490955cfeec6b578c5ba8d47fd2eb31d27602608d97e1ca3b4f68c6e14cac94d765d88e932fdf893cdc69f2bbc0302047c435bb500673065023100abf0d262e5c36cbf1ccde31d34ca15787049915cc0183e8642be00659693f33129533e2b73a2c39ad6b63821aec2f5850230795ce56bb1e3c86bfed9f13a9e96fa246861960662c7eb8f499283bd1bdacd2378fceca6520d8e70a350bd102a2a03940302047c435bb50067306502302bae7effb5bb7118675d6ee7bb2704c251329c7acf1efb3c92d96202b04c1e3274db6abc569096ba97207cc657bc0e00023100e81eee7bd9fc0cfc3e86f657c1931dbc09f62edf328fdd96f03e5d7bbced743f38a99701d9ffad1c4371932b75ab28470302047c435bb50066306402306d59c3c0f5ec5135e58aa96e508b2074dae8dd0de86a695971367eb11330ad596334820fc5221b3c9b8fe5cc6f6881930230255212cf51bd0fbbf9cb32c9b57edd135be5046771115d2c34d7e0ea186e2c09023114d9f588325ebc93958d5d62db9b0302047c435bb50066306402301f02cbf5d53322f729f8331962912595a333d253fe6e7e0b9cc07dfa618cbbd57eb0a07347be05e428c6c840df06543502305406592fe1ccb368a0f4d3aa6956186e504d89c8e949e5e805d6013cd5ecbbd10a31141bc97b8d9617434210b336ab2d0302047c435bb500673065023055b71f9f11ed5162db0e78138af3304fcb749558e5fe3a8911b14191e38bb57695e9b4a7bf5390983eac1abbff000c74023100ba962baca7b58831a1dcd004e7c7ed43db19f797ea5e5eee012deeb6d0374173454d007a5a314f273dd08506ab14fee90302047c435bb50068306602310080560a9121946c3484acbe5c584fa5583870917300e1405d33fc24754f1d208a35c0a83de7e46f603aa5e2dc4bf69318023100b942c0484665a52b9c30210d0a361de169dc2226b73212ab552b1489d954919acf2cba4a1e75a96d26ec50c81012db600302047c435bb5006630640230609d40d2645bd004dc8971e6561fcc4d7775bd149687e189edc7abe6da2f06ea1d33fda87ef947ff1b885bfa1c8afd3702305546cc7c944c3e0aee9d008b3312fb2dfccc574fed3319c77fb471eacc65f8a0e52ab1b254ca83ce08c862e6fbfa54170302047c435bb500683066023100d86d1bf453b998ba0d52f9419fc42efd01044006b5d75287547a86df1e8c2d0dba9c1677d81c7e0b6ab743d26f610e68023100f7b8977dcfaf418e67ca0bd6a1aa026e6ba6c086301635fa917fdab45c84485610fa8e186beb59e1a25971d3588fe98a0302047c435bb500673065023100ece84aae6fe72bedd6a54b1776dbc7d130bdb80b8b6e5bf914be406b332789cb6e873dc05a45b2eadf75709908a45a4d0230473b4d5955d86b2dff6decc7c7dfdc3d790c416f45f277a2e738ab8a897049049a46b0be6f833148fd4780a5645d4d110302047c435bb50067306502306b28de4d889cbcfeb731c014e65be789544db8650bc9daa3fde5119373005d90e3f7fb03fe16903bc44262da544c2588023100da37da2445329dad53ead1035529d38a75d23af903ed43a1bb5114f380f46d70c6ce28a58b894ce8d2403fa78b0654b60302047c435bb5006730650231009eb379e42b46472aa69f6d5792dc2ac9d5c1a5ddcf065d3660056f0f3c774675be165a6419a1dfd93c0cf7f085088bee0230254a5ad31f092f55c5ca6b52b6fe0e4be0f1358079d8c89949f80e4c6595d0a59a8a605e178a895b7a5562b6ef275d4d0302047c435bb500683066023100e4dc6ca350efd190cfa26e0ab1daea700a0b6d5b5436225757a78e89dc334c6c784e7a24c6b3194f5581d02af40b4e33023100a01497b19c8bf6ea11ad7a664791c5abbf360984cd4ef40ac11d372bf87e807eca2cb11b31cad25a5efccbea28e5e3b20302047c435bb500673065023100f1293d6e7f903350afd588a822dee92d320358e807f56b1e6e684414f4a9a6d211671ed83b5dcb72fd0f78dbbf609286023055be3622474d3eb9f497426308cd26189f7261ce340bc5d64d88aaa013dbd6c8fe2ccff45228e2393adbe76e44862a020302047c435bb50067306502300af8fa9873af91d86f39baacf140aa54a237376da539149a3c432d6c4225076e60ce48a2e95f3e92fce509a961dcb54f023100a4af021a61465fb1ccda591794dc403b8f1d807804bc5022e4b7bacd5f5c83e6788af12cc0e261f3dfc00bde24ffb9690302047c435bb50066306402305d9144f8c09d0d3f9eb9555e6f23374ae51b1256dbbcba3c014cb317aab7732518b7b5797459d8c29579e2ebbeb628e2023078af953165dc73e8355d0e914b49fac17e69a6357321bc5a529f5b226c9a702232d3d92f8f64e6ccc74554f5517073b60302047c435bb50067306502306264a409d0acda7601c38bbffdc82dce5920be2cdfa99eb7a3f093a64d751829429da944fd64c719d492d8215f25960a023100deb9352220ec972643d6bbedaa435e1701680966822147b960e8951e12f23878336cc9c9f92add628c872987f4c7aecd0302047c435bb50067306502302a01154cf122b4ec171f0e1475c5e2ae1ba3893af376798742918bacfc1963b346e46320791a94d5ae2aa84ec29e72810231008bfaa19dee78bdb09890844c5d7a0f3918911f53004e07eb21c4d5586008b0be061468160874fa315d0d21093c8f74130302047c435bb500663064023059a45da62a978728b47dc77b070f4822d118ad17edc64997c687337393fa580755d5bc04924224d2542c1b686e88e1600230754eec93a32023766ab2673d04612dcc5f5bf827fa2ecb40e5f2602d45871de0bb30fc2f2e616cd610ef4047fb7141720302047c435bb50068306602310095a763f399cee11af93891dc2bdf20e6237cafb5e4c8911cefdc1b47e18bbae1fbff7ed2a51be58d8c8ff3397f1bcdb4023100ccd83382445065128013e432c69c2709f196052adab0238f63247c493079d5bc076678e9c4dfe49cb295502c3cbe51cd0302047c435bb50066306402303822fd1e97d19724219bf5c2de05ca0a85901fe238507ba0f8f839481cead2f5c4430bcd461ae52b63c6765ee8b2b802023029750037031398df183cd95bab8f3b8bff1dd045daf94f8dfd70bc339f6a86b57e4ee2fd73d4196297d4fc0953b27f3a0302047c435bb50066306402307b4221c71575c504c504365e3b8d16648d0672a3e7a88be17f8d616ab9ff74e430707a20b70f6130a496d13d3b586fce023008f647556e56e3454126347758199e5647d0f3bc9a03399d4f50d3652c63b238ab148063226d8162251214a402669a210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023079608ca9694c7bcc1d6355bd13b194d404cb416396156f1aa226f145e3bd5eaeee91c18ace70d2f809d64a9fa286c98c0230483844b88ef1935d011b176657cdce9578ceaf8d97c790873bfc2c34157344c5ed08742c062e6d58c2e964ce2780427e0302047c435bb500673065023100d34f86ec1be438080fdb9c32993c94427bbb47c5e41f3781ca5074338dcbb3c66115be473a0d68c4d3a666c515af5d180230331d53ce18a9d3aab69a085a8611d2be0f8c2197dbf5807c88b644cd808aba4b3339c540c465c34c4194beaf84ed11f60302047c435bb500683066023100f2a66963939c29673727dbfb70b687da47a89d9cf9a3206128ce54c21df6bd72c0bb17f1a36d0ed0e624ca5d5d551d200231008ebeb9686efb63cf1f68cc5d115e1c5eb5cabe4522d4b480846859cc9c19a9eba6c14493a272b3756cc4f9bd160e70290302047c435bb500673065023100a8224601cf1939a925bb2fee4bf80acb1e10be8340a2682a57b995b8384ca4615c815c58a2c629a72f48026c423bde290230560e082a58f6ef59ec647a6fc41651c6adf98eee2c9e7477339a86994e211ecb6198b52cb01e5a35ad64114e721554bb0302047c435bb5006830660231008e3a29fabc5ed0af0ad49c61b599b407c7864d4ff8f5dd46d4a5c2af2b0eacc37acb5e59a42e139a3bd3ecf9bd8c1f8e0231008980fb36e2d68a917910e4e2f19a3578f1a9d0b6f08fd7eeba8f412bfe9740af425863f706d05ceafd1661951d0dfff10302047c435bb500683066023100d73399e48fef23269f34cc1d99841d8fbdeedff2ba971b8106727215deba56863456824fe23064124f249687ebe25d99023100ee6a6a8e76d8eec58f9fcc112fb3dd0aeec7c86bc794c6bcdc7c8da1b9accfb1d224620c6bf83988dbf3c791f95fc2490302047c435bb500683066023100b755c58a97402e9a4e7b3fcd03703e69ae898f7bdddd5fe3538f42ad529aa9c6601bf137292246c84e6d2387a7f17f2f023100a1f80b1e9111e1cc988a5b9f9f6a8022cbe269720b2c22ea8b11f53aa2fef078242a8aca3874f7fbf3ae0051b72d891b0302047c435bb50067306502307e932e4585daf1403a9a3dc15ebd33f46916148aa4664a25b31a3cc4b3c6e5ebc7bb6454d4c67af7a6b3a585cfba5441023100ed32e1a6cea5745a1429da7deecfe0dd5e95fdaeba190562c355cc8945ce731d037bce0e2a23d246e56e8715f48b50bc0302047c435bb50066306402300fbfda3b847610e8ac22a105fe787f2ae99fe93b7a2848fd33a615fc38f2a764bf5942784b6a74172c07e13cd4c88c5202304a2f5af57cc0ed4a6375d90caa7b2a37ce3ea1b6ed6c280034807b70f1ed4fe3cfeac77a463405aa560552c63b4782030302047c435bb5006630640230082670019a5d28a21479b40becd1980a073ce342ddb27616852b4c5b13cb3aef75b9dce2e4b7156c095233fad70b95a302307382b20990469b43f67e1143a762cdaf88aaf2cef997055a23901980e10435cb229bfde6009ad35d6ed952f448cadaaa0302047c435bb500683066023100dc06ad017c6f54b36cf164f7c5bf001e7eb481657191591d94d291b1ee0a41936228431f106e843402ab584f7892df79023100ebabf29a6345ff8ec1e4011e54276e2114826c72909e2ffbdeac7cb80561bc7284fc429dd82466b3ca9e71ff5afee4970302047c435bb500673065023051f16e34fad8bb533ac07171703f1fa9a3870a555d3b70f34458c135a81d1203259c39bc642449c00be2bd2d3f1c9ef7023100fd27d94a6197067379076068f26adb57e5bdc8828f3c9284bb7f6da83af9bcc77f8d09cc64840c2c19f3104ce419b57a0302047c435bb500683066023100e1915c84bc740506d24b8ad14c291ba1d380d09c53d04561820d4124977747f3c12e913aa7a892e6572218a488ffecea023100f11f1dd4448aa19d781588aa0d9d3a7b24d0340ff1a3f270aa32de059b3d4e6879b08d4e9f74c23acbaf1814b601e3830302047c435bb500683066023100cd92c633b7915407570db161b4cc7bf9a798f3ce78da02d8dcaba1f48e2f2513518046ee331124abaf7fa77e25da64e2023100c7f4f8141703ccd18bc08800316ea30cff2f3e2c57f7f48a3b0773ff828f13b420d4878415bf94d77462580d18a0b7620302047c435bb5006730650230113b0eeff6e7391910c65e2ddce14d75a4e5a67614ea1c4933d3de11b423c655fe6b42932f954e8c388a1ee11dc4efd7023100e3b4d79b35095ea7d64947deb41c795f1ab8ea46de0ae55fee58c11b98162a61d313c5a01d466203fd701d946394443c0302047c435bb500673065023100a88864169ed8a30bb5690775e7c84abd1c22f6da49d2e9d07eea3d40d408d972b6170f8c68748a1ba3cedd12516e890d023009723b7b9eb1f56ac5b95518e12226d25c230c8030c765697c46f5f8a65e6c4403932fb30b311cab6f0d3257929e9e090302047c435bb50066306402304b7f9500ccdb3c5a5982d763061d925376cab62bd4e86f543a079c0db536c978793b27a15207f2cdecd360b3cc3172a902305f7cfd07a3f62bdeae2a4a9d0ad8af9795a367f17bc98c192e664146d1d114cd9047d4b525d3477ff79ebfb930928f910302047c435bb500673065023061fdbee362887df64740f3f013f8d12f22651541801dc6e6d6d13a1948b100ce2bcb04b1cfe1d2bbcfab0fc0dd9def600231009f4a41f90ec340f662bbf453f77fdde53e7659f543b9d96b4c30ea952baf1a6252f1584853e7beca8090bd3e652777f80302047c435bb50066306402304b93012b89fa46162e1b2d974955883d70de91e5035352e187f84952ffe4181c766914174575680f863f7f383dfb0a2202300a81d6e2dd46f6f7a4560c9cba8a8389ac7a20964d96802142605ecd9c28c88a2a24ddfcccd8e29bb7510fe5da7d551d0302047c435bb5006730650230749857290ddb537d13379b22f4710c0da437faaf250303cc5623d4489269a6633aa3ed0d2f223a80164938309298b890023100902b875ca0c36f495a44eb14d9b52b33c707c2b9132e19d9d682740ed4f567c02cbeff180a6f0485935e5611474ec3a40302047c435bb5006630640230668a6d9bff8a3fc8e131cb892bec6463eafdca2ac4520393544b18bbb520976b274e6945284648c5030e87e818c41d650230146836fe5f406c66acb0ee42f8904a9ba66af7d2438f281bafa1535678a2902f88458a837df31e0f562863cee1298ebd0302047c435bb50066306402300e51633d937b8dc2f5164e45d34dd22dff8680eb9d0176585f362d5fd6a451f826c09e273c5100a44eff451ad4a24e0b02303974df6b31ef8a4b016034361dfad20c957b15887ea33b60390f1c5ef17d76710cf9d5cc26c1b3c06ab081c5cc3d5b430302047c435bb50066306402307c0de2b9bea0a393470643e06cad96cfe6023fadeefe9c13252b416dc84ab8c1f47a8d5af642bc23a8b525878d4dd2e9023022feee4bdc182afc4d87ac3d3d0aab86f65c925f1688cd6324842e83f593710691a776d00ef009edfeb2fd1e581c0a980302047c435bb500673065023000fa20844daf764dc7bc79c04109beba9a2a36842ee2df972f5d28d30f6f142c043f4c63d5f930c14f4fc30e751b885d023100b521266193320fb9eeb22a37f119ac752daa0462918fb1ce9401b8b3e03a4febbb7bfa711d9f817a60d78d6243884a110302047c435bb500663064023047a1039686d31f3e4d45243bb292225c076952448484f25675437c41158efa901e6ab47e11315e4c47b93c3d9c87fdb102307acbc8eb904405d02469159f2837ec4bac4befcc8d88e01945328e85675e054d26edf55f6ad8c47620f6526cdaa259c80302047c435bb500683066023100814b5c186c531a183e7ad58e2958126635bcb0f6f34d93c19e08430b6f82e98199f2e6451782ff0a5ff2eeac7d1c06840231008e07a99af60d601c6deb3413b1b60f6ca056357e761f0a5b651dd90bddbe61e48da03c1a0cb86e27463daf1a905ad5570302047c435bb500673065023100daf0345dcd8cb76e6ec09730e0dc06a0b9277d68cfd6a8dc4527d6115467f07a989f05e5c46c1939f8067d8b6fa84ab7023070ed88c98f8a8aa73d276d55942f70c4ae32d198425a5f6821c309b30717988913b48487ed26d1c72c04b7541473a6850302047c435bb5006730650230231405ac7da15ff671d20dbe9c93f12b91d2e7b8723337c041fe5f362968ac17c42e4ba91e9d21b85a710f6bee54f062023100c3b924f77567ef0c546b6dad552e540425246811dc3e361f703937f643967a92efc0fd637bf569e41d06928eef295c0e0302047c435bb50067306502306f343f1c16e3cdcd45ba6f22353fcec57a0350ddb954a88559d2e9dc94ae7cd7123d372e8387cc01d1368e96afacdf7c023100d6f68d83d83228e1c2f73a03d18724017d8b1c02e2b4d2984006c2b5c420489d57782b1a3d7e729e9b771faa2148a3110302047c435bb5006730650231008257f0e58557e0b59533e18479e7ddcd362181bee48ebc445c00719981ecea52555ab82b6052f43f4df717ac76df5d5602301586df6ca1153ab1a7db7cbb7cfc3d3a621b49fe353a14ac58df4f470abe48945921d3dda6dbed5745fa338a03d029b60302047c435bb50068306602310084cb48a5b9bfc6152d5b753944582e9bf8c0294625de049f50d1ad0f3a9e91e0662f848d9360c89d9e2611707f23d187023100c187ca69276ba64958b14762654070526dc2261203851adb2ef271512306ac05aa1b928a2491ee5e2cd1974b863099f40302047c435bb50067306502305416bc9992d90599f264f4685977182940c63c8a4b32b9c225f3af57c4eb45a45fd9a0661b54c2c42c2699b5de8473a5023100f059ad3247b1215d151183e8dc2118b3a27be41374cb93d324b5a1a3355d4f08083974244613341ca21365c25442e5c20302047c435bb50066306402301cef413a3ae432b6fdae102a60b6d5f7a2ea39417775ad403cfe7a7f14f80b82736da68487a7f23ff5b7f12c4f0338a502300a502c01eb494c5df1baf5e1b843058f8f23558ea2388091a2f4819f9c1e7b7c3188c92998944a624fbee9873c87c8b30302047c435bb500673065023100cff51973d2ef0e235c1d6809f48024aecf8916307e28929e0f6b74fb637da772a45408c21d6d2e76ebdfdef12f4d9ddb02305323f730ac619674cbc42ef3b4557973859af7a083d0f603f68a09900f475bdc01159a604d47a3eb36025ac8b37e116b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307dc2f500d7cb9c53f375e56c892612339324e55e9f6015582227434774d844049d3a453c826e6f5f8a617bbfabeee67b023100a0b8e2c3660f1abb846293763c4242ebe296c23385036a2a2fbb95b4ff53ecf5649decd48aeff5d3fa87196187b9631a0302047c435bb500673065023100cc750512f09bd92a5d83d5e647af2f77f352bfebf8a754f55052cc0607d9db56f8bf9daa2d8947e25dd67910cca160660230604d4ee33ed71ee1b1c0b54f7ae473cd9eae710aa40eb504529c9fc4768836b0b9c242db20f1f2c502a31190779ec0590302047c435bb50067306502305e2a9365a04f896838b355321e308ba4fd5b335cbaf3bdb6c1a4d3c88e913ba19e48187f1a9d3896357b3788c46d0467023100d207768a1b0d49ea3c575118bc965f6fc332a216b8ea009b199d1a124d30aebe099d106f91862334f5ac0de0163258e20302047c435bb50066306402307a9033873c3c56bc8574cb515d5f2610e2d46dcb947026f1ba0f71544d6c794176f7441cf9fe7fa293dcbdf70866b87802300ec93ee7b8235fc7d5e3f3d24030ace76465db45faa54fc8aa1689dbcfa420afb1b80b3a27d869b8aaf27197cb0d481b0302047c435bb50067306502304f5af8287b62aa02ea49423e93284ebc11daa2589a9f2f57f7234f69ac98ae978599d8745fb1e50e62a64e4380816a99023100ff31c6abeecc7a13a1275a4024366b584c303f9b10fb3e84f2508c60d2c2a5e33a83a0d65ec94ada99e9d7a56a0cd1240302047c435bb50067306502310088151e548231a09d0e4dc1032edd8b78a6ba7884c8f0950484d9b6f8c7b61421b7aaf57315baff72be048a20bbb2131e023029e6793dc41b78ba407823fcd49ed7036970cd866fbb91e45e00ea71a3b6bb79568ba066982ab57cc8a7d020dd45a0430302047c435bb50066306402300b56e7ce2174bd7530d636649f8f29c1f7f27fff81ba6f0aa49dd138c09c6a40a25299ad5ae7a1d9e55fdc6df4a0029102307c9c060acd9fe9b14d5a9eb3efdf340b0af880ff838a2673edca1d8deaafd335f9cab1216588b49826eb705bb502383b0302047c435bb500673065023100f6a973138be58c900204efa29691a23b7079acb1ddac2df3ce38ff3202862e1eb02234d75aa9ad690b48306dc564c72d023020d089db0c6d397000cf856a581770e9f4cbbab1d04493b50274610b92748a22e959e4a11da8918079272272c3db621a0302047c435bb500683066023100dcd33077e687b68a63f63755a3406b57402efdbf9a21463cf93359c31fc87dd5593eaa5c9ca1298527026219a4637f4c023100b33be5f21764bb2e6f061e2baf1b7089bb4a86bd4064db0c59c55d4b25e556ddd7453cb16a2074da762b3f9a0fe89f8b0302047c435bb50066306402307ef3e1754699bc4221220650191adb727d5b90990f2cb17141ce79b520b8599d1ebcf9cd3da373b305227b43fde1d1a002300b2920bab8a3582d2c105d999c98307f956c8baedfa5108f5028c48f014d8b0e9dc29d61a24ea8f4a6d5d8d0980e5ff90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008650cefb06e1b8ed6fd54215d0c60390aed845e44a933a72dfb45f2e79c2fb09c4696715065625947f45ef13f4d0b6df023100d042d412e7692f2dce80219c1000ae76c23519f8444a00e067ea69649ad9fa9108e76885c2c4b280a40a46f9b4c0a2870302047c435bb500673065023014b3eaf5de655f89cbf4752f2606a3f2720bb72c8ba2313cccd78df99aef65a0806b961bdd28f55e3af18f59ac52ebc6023100e3edda1853d8c03c815330270fb923310499353371eb724c13dc9253fa85cd6305d4272bb53607e07748e5dfadea11d90302047c435bb500673065023100cef6a4982fcde3f777453310b1f567963dc3d03339d92bd40012bb3956d5944a070b158b87776dce1bebcfe436a3e76c02300e072e08164fcbd169ff740c6d020b9c38848f364d680b36080c2f8eb7acacd89c6a487bfe38763cef0a1c19ba4958f80302047c435bb5006630640230432e2f6fe77a28c973f7ef554418c153bd4fe248af3ddb458cbf5756e61035fa5fef6ea8893c7d55280a37a25c9e8aba023066ebdfd4fbe230e57159d61e629a938b0acdd3a1b9bcb49bf3846aa7c9c6cb1a3e494ffbc625d5ff98325612d5fd37940302047c435bb50067306502307a66f7d61cb5fcd9df43b7cfb7d58edc71e217f288e1482d1cce9630c0608c0606994eef161b87f58387d5d93b710658023100efb2bd3c53c61f29e77e614ce320a1c37d6ad02fed7803ec44d13cb480d701d8de1b895e602184eabd42305bec3461970302047c435bb500673065023042a19827d1ce8f4de0bee01820d78b5c41debc89584052ee24e9d12496a87fa63b76eea0373e02e4fec1f47c27b8f159023100d3fd4f96939b287ff154b5d16d67ce5bd89b32b4c9d3ddb73f9b13fcafc3d12551b3b666c19ef26693e5985cf81db9ad0302047c435bb500673065023074cdf997022179136d5e22a1aa3f83b9bcdc91339a484971d72e94b3754dbb33828bf0252720f0136923ffa497074195023100f4da1befc252265cced9217db27226069db0cae750c7a77b5ef4302ee1f1dee0bd14dc5aba6ff38143e07977c3a3e6520302047c435bb50067306502303a1568345e376372d5766a42b1cf1770945b8c17410e24a0f24c6bf9e16e32065b387df74da3764e724ae6afda5ca75a023100bdb7eacec1bf9f7d2d759690f8cec7d641143423988ab3192941d569e87f149655c99f6650a4357c80f3d071d7d5785b0302047c435bb50066306402305e8632fc5f68d519ab54bc5a1c3fd6072ea3a893d8069e2edfcdebb5ff0f6dbc7de405c53d6c2ebeb7b147f3fc05aeb102302abfab0a65370ac952f75a296a90e043ef0c15c262365fb006ac7b6759351908f2b7593e1aa834a7a1b423fdd64353e60302047c435bb5006730650231009423b7c65e8fc73a1dc8f48c50fb8f17572a97126130bf51e2ca5b0b3c94d7cd234d6453c6c4aa69e51d126f5b9c30df02303e8670c7f7bec9459bb305223c2ad9d1e56d93a0263ba6b6130686b780478c39720749a0d06404a41bfc3dc65e20a36a0302047c435bb500663064023024dcb0a3184043e2222c70bec40a52276dc699f831f81aa2bd8db3db65fdd04e78253f45fb98232fb5358a67c491f7e00230592b270806e583316204d5bacee17d6c502ebf9acf8d76938539c0831e368ba2e3a3b8d00b767e3fc1221a20df6083be0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023039382b819b24c021e8374c56ee2be935fb8fa10c899b912f97acbce6c4826c8cd603ebf7fc897e39928e14e27525847402307d1c108a48f6bdafa43ce9486f78990e60443ce80df15fd2ff7e2a7429f23f434bb183f7e5c98d81f5d7964bba001c190302047c435bb500683066023100eb32a5d06219cd8696a73b192bd689ab14738c488d72233be107de082cd602e6726f055c224e6acad092fcad6e25e81d023100e36cc819c9fc4e49c47cf2adf355c7bf7080272c1d71e09f5e724ff8082be9e10e3c2dc49d18d584f1cdf41b201f91780302047c435bb5006830660231008116a6c55e53f279593ebe053d1f64db3f0205cdf7a480b67b752cbc78b6625cde20132c29c86b26eec2b5a94d2a8075023100b1c90331176dce93a11e0129dc61e40fb638ff6c873c7962b2f7f5c3c4c904a0165150d9cf6491c13f70b805bad843c70302047c435bb50067306502306fa2aea55ab56c3ef58bb403da6d66ccb83acf1bd31a1304633479364fafc2545d178a9b8d118cf1e6dde375d9362ef2023100e567eade2b8e605ba8b6105c9eea67b02e6804612562e11429c592fa1e98380c325f5760e9e529f18011af82874c7dfa0302047c435bb500663064023017643c119cb7d55a71c0e36331fe6a2d0c054f74a8d04f9af4440c718971e8ac472750e72e0ca147e174dbf9c6dddbd702300757a4464f32fa2175a925648a8ab175d0a7594fb13a1f46c5edde5fb29113d01b43decdf176cfe4a3508f45350748670302047c435bb500673065023100deddb75bb489cc66e7430e839b764aab2b46630ec320f466902f85e9df9999f2553dc5916aa0fe57c4b23ffccc73356602304d417a5b36d5fed76fb69c16d846de50ec528a11a3af2dfad6af2273318fbabdae8353bfe5a842452609f915a737f0370302047c435bb500673065023100e5565be797e99ae440b5e88ac369beab5bc3f5e8b6f414800f21468e8ac51e38ca7b28d1533d23aded83232e943b34f9023030f538c7159dadd28f60bcce96944505b7cc44291c96fa1680400d642e95644908d1eaf7b410574ffd4d690b2b98d6950302047c435bb500663064023029760aa5883acf7d795b573afa4da1c4fe537cc17a3fe80c1a82dcd2db547113c2d9762d331e4d54b037a7f3eee2d8ad0230391843f46f67624bddaeaa1aa0047501429696a579bb7e18f3425af58286bb4699aace5918bdc635f1de2746ccb1a9550302047c435bb500673065023005e4006642307f4ce13edc12f599c5d1ece211429a2fcbf91f08cbb661918b436c6bd2f234713f190abc46f0ffadbbdf023100e5858e80f9a4ef7ec7a2882772abe3cb2447cf89422d8107880162edd4803b9512b63c76034d50db4a6bdd817b1dd5080302047c435bb50066306402304fc29e9afdf8c37ad9f42ebd363bddeec2c34145d54705b056268614f962e2a319871f2c63a492eaebf52efc9a42b9590230698eea050901f6f27c4285684181a885e7de851294f9f78fc85a769abda5aa2c1c20b409a34eefa6e42e4e090494f9e40302047c435bb500653063023055b9cbe2ab7562e008c26581c20f6d7afeb4e377eebdae4b5ca366284c79e2238afd918383b4ce806bbc8869177d9c42022f7dd766356ae321da616cfd15227b1013742721f8f7d4736bf9364c09b3d39865dd0cd1a175fca636f95243f78e887b0302047c435bb500673065023015f9d66a13eb7486ad1181663873db632fc5be426fcc329f0870e63375f9ce208b334baa72add2adda360d1d4114ee0a02310099cfa168f0cc275f0928cba1a107737a10cf7e9437837a4e17c9e578ffb055f23a5d114a296995f30a585fab5140119b0302047c435bb500683066023100918ae74ce8345f6a4a651734b029594049e6b4759b26cb69fcca6c6b478b928b90e857c54ab55be092ee4d43e69cb7340231008fdc253af62c0501032c420766a0fcc4424844c71f8f09b8228e5761eeccf69e70cd3172174a68b3cd60d54f9f58d70e0302047c435bb5006730650231009171613f5033d20990a6dbecc1106934448ddb8adc147592c7923eb8ac154217bb0551a19508072e28d22b5c339b8037023062f41f9334c9108c175a81a339b00919259349384db9e6fd70ecc7de0dfa98b3400c924b1f777ad52f40066e1fdc1e1c0302047c435bb5006630640230185527879ae865b0fa575d2168032c11cfa2495d8f318979caae0963531c9a188bd2d9564135b7919f58759326bb1478023063aa17a5b63efa3ede7e405d79048ae91e915e49d12b063e5ae57a19ac562313898b4b43aa28d1595e47cc7911a289990302047c435bb500673065023100f2d050d281ab58531f363e899d7ea4778f9045b53a92a72161de79a11efaf29ea6dad1d755408fe5d8bb2c4da0b08a37023020e725691093e8a9366f489d81286ae2de9f0f8166e5fc0e4eb6316ae26afef8d3cb20a5a74007e0f1e1b1543ffc45e00302047c435bb500683066023100e2b213db6c43dccae8ff330cd73dd26462f1cfbc09214560b60a964ef4b8bfa3a96e410b7d649085e2e8e9b11c80f107023100e3403c22ab8e179273c15a5fe2589605f75d55229467abb3b75c9b7e4a2573c45c48c67ac87975a4376c65a9ec1a7c480302047c435bb5006730650230767c693a2bc52bc50ce95fa56442161823ff8773572bb24380696b78a86bccd6c68e1b2373d50e5d262ca36d647024fb023100e9b48a0813976196869ef2ba88d796c2b8d9e0a5296b8d65b8247034b309d27fcc386a523e0d2effaf11da8168ba5c5a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023070c56384af3d0d0a69a65b76c5b30c5a2ff6ef81b49e8567d31c0df707f2e5964ca117f9cda309878f021f02acdd16a6023100e58e3c9f712c8c4f4f507598802f741ee5db673edde478491dc65a1e6746e48f6749bd5293476e20a2210ef482cf96760302047c435bb500673065023100a754871511df83cecf61ea4125c9ba6846abf821a6a6bd2e95a1df72c8a555735301b6f1591128e7ee377d6cf361e4f802305e413644a974a3df87a2202a006f9ac1162daba130dc722606495e6f62e7d9af4f27450bd49d4e21362ff460c0ae0a390302047c435bb500673065023100ddbb31c41b4eea9c60ca9d7425ff93ca8e21accb50f96e568262f0418c9e06e203afa5478c39232c26f1867ece241714023012c1a952e53f56d36291d9c4802c3da90883a49fcd2e7cc163b6a5ff9406c01890b8e8dcae7a3cd221bab7812ffe701f0302047c435bb500673065023100ca87649eabd5c730db4a09933fcf92b1f2705e24801fc01e60899858ad78a9bf0c74297fa3750833f095c646234adbc7023021254954a1e871c46c9bf4cc15fff69d62ecebb511c5907baf3645eadee1c4b26bc0900ad66d994249b95ecc6d1c53ed0302047c435bb500673065023100bb24feba12dbb83d2ee91da8556577386ae30684c2bf5537ea4dacaca04a1f6442ee31d7e27a3d7a72b40771d73a23660230589b0d32ac28ef5671b00e1ae7a6da5e34734ebb6196b975e40543850de384008d3dc53d58479a8b3870407d2d30b2cb0302047c435bb50066306402304bde38fd9c9b955cf4e6f3176c93cf039cc471c06de3e120954c5416217494fb49173f2dddbb25826f1d8b7c9496e40d0230524643bd811d688ffcf338b2fb182cd3ccf846226c4f95bbe23c45cd0dc140cb36f9a6ac3540881bcb4fc1231d91c9430302047c435bb500673065023100fae4ed2d6c276f9c0165ef6d697885c4f7d56fb65fd79adf77d67aae2552b419f8a937b319df70dd574cb599af7953e3023016e951315a59f97ee69966a8782c1a8e94a961f77dca465ec9897e936b4ee8efd4bccc4bdc3e07a32326f2f64306f07d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ecd0f60321c6edbb6008134b658e1be78e610d9d5c281e9b0ac45357caed16522aedc3b2abbdcb5845200b05858176cb023100ec28058c9ec0f68539172476581166ab7ee6bd5d77a5cfe4e4354cfafd2f3310d3bae9b1d18ca0e071902b69fba65cee0302047c435bb500683066023100f05e130f30bb40d0d715bb1d8a3c3097f7ce61b755124998e8d11ed37fd383a2f52afd31959c335fc864c00b8c504bba023100ce324502ea79a8c96b4ba09afe5282b4dd5301a3a909e1a79516a9034a94b8e125bd6ad632915a643ec814feae0826330302047c435bb500673065023031db75798b60d40580a9d9919899d6888950921f4bbfc2c39677e97bc2dd1bfb740e7b6a4e50bb2685bcda2167252cf8023100c85c848f159502242b73614ba39687aa5ca249b7d72c8a128038f1d22a233c8882362b268cf6b208545484bcccaf302c0302047c435bb50066306402300e900d549961367ccbe2be6cf306ef3358ea5e5ffca3c38de26cdd1445e311a903a8ede912b9968a41bcb389a3826a21023001d1b23e51d3d5090e024c27dcba1df52659165ea32672ba0d230011536eeafb7f44a95f2326bd1a113bc8f97bc58e2e0302047c435bb5006730650230027a4a9f1e12392633f14de18eb47a0d57dbcd3be6678fe1a83b744bfa48dae595c91ea4a3172e2f5d419f4d0b448689023100d440a905d51ba9a1b3e3a40bb3c80a5f776296814bc4125e1a5b68a4772d0b92ee3e50b0e139163069f65ceadd0146aa0302047c435bb50068306602310090b6d145af63e4f5da143fa9769f2e9cf71d4ea645eed0e9659c03442d3a64d369674864a3b6263f2b6d98b4be28579f023100f1af7b51f933e86afc02555927dbae51b59b2d781cd77f449a486e0f98dcd5b7cf3cc15f20abd4af217063ef5a11177e0302047c435bb500673065023100f399de5e5ca530dff07f0450b0b1c054f603b23bf80a8d89fc0614f37780309b54b127060353d1dd786b99d8d25d397002306b53b407dc4bad8c5cd52478acb70de06e5f26121e59869b837dd3634da3e4cada02979e024347685455e4035f0614880302047c435bb5006730650231009d818b1272029df10162628831bf0bad58cac7fc0baaa3268971cf6fd2e88263f7a6cdc9a51136d2015dca326e2718c602307fe211630f3029fdec98202406df866ab5f44288e5fc852d5d9e41be3fb72bd7e56853a00e25097b6896e88d269d8b400302047c435bb500683066023100a91fbd9d84d5bcb27923bd86b228636e4601b79b5875c84d4fe466a805881c99b2210e4df6a4610e411412f8583b30b9023100c2eb1e78bbcc596b3acf0a766c8173644b5b0c4b97c1f39a2e15b7f3c612ca78ba6360be1aba8b39688e7c15c6592d900302047c435bb500663064023078b8342a79e9f1b336c063e7c57a4fbf3a12577336a5912f38a78962ff9fc5e71042624cdd2d8a028e59930b02f6fe5d02305f83ce17af08e6f036702413d80ffad722d8af94d17489da01067cfdc75d6b987de975d8082bd070582a43e8ce1d7dff0302047c435bb5006630640230640cc4ec69b2455a76f5bf1d2fd47f64dabfd5baf73384ed26cd93e7642dd8736f5653ae3e6f43d06566164d56b731f002304cd9a550163fc7771f99f6f0de299d794c5d0c9ac6e5d126fdea44155b9eb9228313e73bf1bb3cab7c7c98e83fa04bb90302047c435bb50066306402305425a05f12cbe0c2939d07181fbaf14dd3653630c713a5be687dcbf6b7d3e972ad65a5f324a168d9fc8112876c934b470230752631a71dc12119bad8652973d716b581a76426036e7c155bfa8066e722fef2c2203a05b613d79848cce9407b0f24da0302047c435bb5006830660231009b6b9cd06df759e20eeb94309d5a6724c46f10ded4bd1ae5b5d94aaad300c4f79f6a772456b3a0d125fed1ed7b4ae3ac023100cb6469b8a05d84f564ebf7a62153c1085b299063df4d464d782d3089f84b0daf87f7a471035b5c1ea8e452216d8ead1e0302047c435bb500663064023032380fef6efc5caaa8868851be2a905ff81f9db7e36027feb5ddd3accbef2603016cac63d8fa858a7b7cb8b4607f48d602300a04c2ae3631ad555dad72887d80a7d143c79b838e74292d1228345c7cfdf8e127cba9cabc7573eb9c5fb8133a871ff10302047c435bb500673065023100d0869953ee0d8bd31afd639efd30a87b018dc26b0fc16541df4d66989367b084ab142963258bcbaa39659c06cd1d9263023009896a8dc35d357836b7e8211f372ea3c85a218c32fcefe195b1295265feb7fbb2b4e00d323b344b7e574f2b9e67d1eb0302047c435bb50066306402300efd4fe4c9e585e50b862288f617cc6fd01386851b1831010c98547867ee65d7da40ea00a67b172f1f9ab3d25e0f37c702304593c86b28965fb0269f7e7019bc53bf8394e5404a9cec2ffd8b549102b3cf61ca715a66657c1f7e7a5141fc067865740302047c435bb50067306502301111a13e490357461b6007301b4bddad932178f94afa751a3198a5be70951d71254418dcde9b356d692f5b0aaf5bc896023100ab6cc182b0a509893c04ae70c11c0f0f208fe122156c6870ceb124f96a34465df78aa3bdbfbe20c39b3a6f33bb89049a0302047c435bb50067306502310086948cef13b819b071ab3e2ba50c134b01c5a0cb0e13660e847663034eeef309b2bb132f316f8e5a33613a1687cdc91b023063b4f327fbb54b0edc69dc868ea6c2e02ff245adedefda647f6227706f9a1192af22988d1c1642bdd72627963fc214230302047c435bb500663064023034f5a9cd6d1ed35bb72cdab579fa99e0562811cd9198d59a3e22378f855d5180e6467cd7f121bd97ed803ae3a6e4fa0a023032d350f61bc5e7b3ad17adf73078d7cbab85b467c87dedf76b71a2ea0cc5267fc087e3ac6c3dc47c684cd9019339e8dc0302047c435bb500673065023100cd26ee77f5c3da23ef8df70703b93ba16a05d45e6f25a5c2da1a2ce2bd1a99924c8849696080db7208de845df00ac05a02302f24ca330eeb3e305f834cd1c146458225d149945fffecf3457d62848a38bfbc03bd339bc1d587cf2f24dc7fefdabd690302047c435bb500683066023100b904e4797b7ea3499a878e4e210c352524952773ca9cc8d42440dd20ae1cad44e230d940474e2e791dad0a5b0e4a3ac2023100a9dd97c1a18812115481d591a13fcf9229fa5f0d6f6470947666e14ccf7a2c548187b843d9cce952f8e32fd1652c02320302047c435bb500673065023100ae582ebc2b96ac82ab7a3bc66810c8f5246fcecdcbbe149c37aae98ecd3337e392ff84062318796b66f4df4bac227cd30230473db2adde244e1fcad97938753027051b0d409c8e2a423f344c86ef484548038759b432b0271c2a6f895e28b65f89f00302047c435bb5006730650231009adf4ad0a7b217ac6c0f1dce05c67d43008712766fd438db8db46d96db7fabfca9191a307fdf70849f407f69aa6109f102300353b7f2ef6c1971da0b4acd8e0b56507dd87f1a196b74eb6e9fec9ab1daf25dcae596dfefbfe08360de05766399b6720302047c435bb500683066023100859fbaa6336de138a149760b8b7f9d24ea44d35e3bc1206d6e3c2620547ecbd98a7b984ef9f1fb018532864533a759e5023100a39c60d126dc0f10d099984d8e394ffba5d9eae077e051e46e8029df43349c1e6321c96417857252a386faaadd8324170302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023072cac207997ec6e89ec529a13d077de7f129e249f4c10795e4a3ac6ecd69dffe150fabffc120e78d57e0d0afd83ae6de023100c367c205925945f010abf252f930deb913a936237988db00ecee0cb49e28c389f7e669792844dfb633c7f103d680fea20302047c435bb5006630640230688e20ff269b8aadd4803d7874e8319075bcb5ba179d6776d2ff25ac3f26c8271d892d3af9f7c806db8367d6911dd114023052b3b8d3a65bed93e4dabbbe8a67941e239d3ea780cba018332a1f943d12b7c6b3a58d7ff73e4dc394eb29054628488b0302047c435bb50067306502306e34c49503aec2b90c03ef20f94a246e2776641104e9bf08f0d995e5aa6ecbc389b94daa97d76a51a854841190edc5ed023100a0e508ee3c702169f53ac863e60a8222bd371b24992ef20974a832ea1252ce973d0ef50ebc606abf86a4ff9b819fc7b10302047c435bb500673065023100b09a35a7c93e5dc8978444ce901daea9ba6b9585f6c9f6b674245b15c5511a5641d6d20a158d08a7133babe2fff7257a0230380b744e088097247aef9f23824ff91bfc481f8da6b00ab5105b92262f0771b72391fdea8e5f9026a74753177c135eec0302047c435bb50067306502303c25bf47c2d2a50db312021b0c5f069fe2d1a41c4a76aa66da4b901149716063fab7117dfd06fa4f02b13c173e1fc1690231008398e7b18473b7701184f33f058c627f9e248e84bcf6520b70face91af4ad72af3db086eae6eaf3b7de63e65f8430e210302047c435bb50066306402306dee6fad405fb2c07b734b56bf2362c6b2e1603d0636ba3d07375c5767c66afc8e772bb2a1e13b0acb04ceb3fc537f4702304e24b3289dd33bf743bfcff46848be3c19ebfa699e23b349a6769816f079d64eb11134a8e19fcd58e27712e829c7d9500302047c435bb50066306402301e50fdaac56f59e96f70ad831539822a959148e62193cd5ae84ad7d122aa4e923fb72aa341b0150563f46ab4b96f45b3023013b0cfdbb94fadd07db28cfc0c0c96bb69dda5f279df6d294f82f64da328893c3655670e3e71325b90ceba84dd643e0c0302047c435bb5006730650231009f31eaf4b671e09b7f8175710dc720958510551ca5591273cef9700b77e47a93833076483a59be96d1f71ffff6c0da1b02301a29641c1192425a24b7f411fd1a55f80904646f2d602881e338834c1cf2c12c3efdd143ab7c3893325fdc725b43a7580302047c435bb500673065023038016d3d35f0b4f364ab0401e45b4fa7c3aa547f8ba00040a32a03f28d41442e0a7d53f4efa575a46ec18261f2cec51f023100f2b6b9e460153d69318ef24a0c06493cfcd1696a6f6016b25a422c9549d8d8b46c9884a077da75d3b43fe0b5d82deeb80302047c435bb500683066023100a728816dc462fdac8d8f9efdbd935cb87876830917ffac6d22d54cf076b91512a1dd2171b9f8ad32ccb99c10e83e3634023100be3283c421c97257bdfc1e2726f2b1a244fba5a6e3bf7cacf670628af85b24432b4f761ca310bfa4e461b69f2eddab160302047c435bb5006630640230689adae2d57e26b5a205fe1b5dcf73ef24e4c84eea020201081336010c5469ef6824ca3b18316ed647b38ae1216aeb650230335a8c61178df18206e3a5b7828b2ff79df0268cc8ebcd4483d0c6d66715a64fbf64c495831958ab617d1f9d2362f0c50302047c435bb500673065023100b9bcc2536aa814a95d6cf4a4d916fe26468b999db0b6c094018b4733d209815dddeb370cbcef96d465d90acde60b26ed02302a83280b2ff16c6aef193c12494bfc448c010773addaca2fc5406409ecb646df3f5e7694fb07aec745df830bde8659d30302047c435bb5006730650231008bf48c90664dec36f9aec03f48d122e16627e5ee18a5ba18a2089ae1832641c3e6d23c12a3aa92a218adf13f8b12d16502301bea6bf5a9958ff34596c320004640886b5ee5329e8a27447caf6f9f955ab30e8c8061ebea1675d0783050a0275d763d0302047c435bb500673065023100aa0d2f3408cbe70672eb1236246381314e8e8807fed2f540f891608a58e04dd1dc70287f72f7bcd137b17a5130b3b50902306bc1ae5162d0cdcab2958641dd0a1bd42f13985176c43f858a7131524f6ba543043684761b1f6fb6d7172e9bd1e304510302047c435bb50066306402306427a1182f239ae4cdce5aa8c1371c878f92d8f2910506da9c921d3f3e5fa7a75a052781ffc09de8cd0f0345cddfd3d102303692ed665124cd73f550da9c8a9d8a0341c536419eb29c57013068eb987a61357dd63701736ba1763e0ff4f6f41f674e0302047c435bb5006830660231008b6030341982a081139f7bf2621dd65f4dd2338ce14b813884585b41ca050f348922df49ec9958bf74b90ff091786c1a023100f7c814c2a96ca74bbb97b8c8e3b5efa17ab6e61f14f2bde781a32bfe628c2793e660e748a49be63e1a8616e056a901d30302047c435bb500673065023100a38f60bf221f272b7969096d2bc5ef635ba779bcd9c71c7471d8170dbb4c66ea6f32c0ca35cf6b9b9e2150343ebf344c02302da90fef066db3573185226a23190242e0f49d22d1611ef2971536bce9dc5b7041369dcdd71cdb7a448ae1f6178de6d20302047c435bb5006630640230181bc32dd28cab20866a65afb9953d2201e8b201b78d89bd4aeef0c458f736f5f3cc79e7bb7338a5cc999f318fd736ee023036ecb04deef8c8cf2cd85138662c7a3c4bbd6e4b56580e525d5dd66fa832931587cb00a027c79868c86d14b6d8a612270302047c435bb500683066023100bfa802240f04d9a97ed2b3785726a454c8e53df0bc09a113b4a88d528cb84e74b66b3ad180cf50354359cc6b412d6a880231008596499ec3a5d6eee426dbb965c0470a491960b0111e896b4e81236cdb719d0a5430f324e4d6248526012cf77d06b80e0302047c435bb500683066023100b2db3c6151a62a252e94e1ccced866245130367b18413db674ecdcc25852094b3d0a7a50afa9ba40dec889ad4a75cf40023100fc97093501cc63291f91c3187d8efc7d48940fa905df5d3e6321df5f022fc57055ba488caffcdd02d085c95076f8fbcd0302047c435bb500683066023100ce24e93968cdd45dca5ea340a74058e1ddaf4a50c301084d29182402888dc02e05841a4f97285aa21f72c8511d7a8bea023100ad3549d5fb4b62c474a75fd962e4211ec9bd9c3d535ced3887d90db0077ed9e355a1e6c1d961a66e60bb126a56726f940302047c435bb500683066023100b79a525b6fbb3783886b25131c40535f20e4b25ee510f53267bd021ad6029edf03912b669c6e75af73cd5435e7e7e9680231009275c60427e469b4215401bb2b7b644c25a58e6465f40af7da5afc7b778937c82afe2af6d9267a219899d35d1334ba410302047c435bb50067306502307e3515e1671a454f84f1b422401d81f39e926fa281ec8845fd2bbc9fe5df22f4adcb2fe78921c4f5137730b0c0952495023100bf027c3e3c0ecc30a8ddbc4da100a4b26df774235c6d55adda5c7d8e279ce1baf20ca30e60236926d344b68a649be7e90302047c435bb500683066023100df510f8753a7d63a71255c8217194970c403430ecb8d8d4d6fa1d7590bdb25dc679adf7c3a16d9be2c18acce76e8ad38023100ee4c0036e75e42e588dcc77a3fd89056b443c0371e110aa9572cf31058abb07d182f20c3c54d6df7e7c2c70ce1cd2b950302047c435bb50066306402302f6ef0250b82f099582c4240b22ed8d6b33398e6288b34d9b71a4752f96b3d0eb0c7ece889801e8e26b05625b3c507fe02304fc89849696ef0a8d7b4a62c9c0b527accce179adf0fbad3d4c6abb3721c0f95da1507f57635c1d3814a91956f744c4d0302047c435bb50066306402307285dc13867509be0ed4fb4b7df0cc8cef1dec194800b1167a6a16b26ee7778af94ca9c8b7b82755e5350f432889db8002300976eed76c1aa054c69901b1e013d3208559c0103562670d05c9b42e2b3258bc87b498376c51b187854caadb2cd3f6630302047c435bb500683066023100a0c7debc3281a6f813fe59744cb67e9d1cea066d7ca2db378cb8c6c088845c9048de948de47dafc2f80077d0e120ea960231009ff1da695aa0143a72f574999d47a0c6e06eb63337c42d76f513057385584b15a13b8e1bc41761600f5cccf67053e2900302047c435bb500663064023049f3167b74760a398ad9ed4cda94cb676b6b5c5ab9a62d37f397f84aff9074926b96d711d2bb3f9b9aa37ec7ab509a9102304a9b2ac28aafe2d03ca404b2ef5c20872639ff61eb38263bf4c7d4a8122ae7a14487a824e5b4e886df7b4da7fa0e2ce50302047c435bb50067306502306bd9bc62cf76e6861d0aad17c7c1439c535411c64cf1be3011b2a6b59696b6012f91b559567e696adf75ec3975868518023100e400422026317d8a6a7218beebda8f9dbd7a4a619b55df00c72f893d1a59c5f29ec4bc9e316dff336a2839748509cdbe0302047c435bb50067306502301126d6d560756a62484b8d901f5898eac2d7fa93044c7e8585a3aea2a938646dbf7be8df7bc7882c0489e214d1573bb5023100b1201b616c2d8cb63f2db9099a65ecf4be4c83bfae41dbcc24534a9cfaf33153ca061212d696ec385fe3359feeb1af4b0302047c435bb5006730650231008ccf8b380a7cfb1560a682da1603e394cf1c45c03b1b46e5678211de0bfa676100cb21ed1cf1006d35e7bd173199f56d023002fe32f6c12209aef8b3dc07ac508d06756367fce7881928d6ea32700787251a09dea1ee2c2fb089d9f67a241d83bc8b0302047c435bb50066306402304123bf4a9c7d7c9a5118102f107f5b3260c985757e92fcd23c196ad048d5cfb4464d86ab6ad20b5f5fa5e44d202b63ed0230138b37ffd71c0d62ae0bc62bd43c4b4358eeb76e7a6774b94a6646e204710c6934b67de7cb228b29a16a03eb3f6c9ec30302047c435bb500683066023100d5cc4a8f0135f0ded65e935372bf3186b477f764ae3c38c6211a2ee7eca5b9dbb3f8b91632cd2c514648b395cfc1cdd3023100e2a8083cb521163791a97bfa3774fde7f7ea9fdd83f253873e3c1013e83610514f592e72ba70fa204a7763598ea7426f0302047c435bb5006630640230593072c75b5a8a3873a7ab3166d88faf8fe8e5a4d1a9271bbde63de2a43ba576100ad310b8215d3837229be97d0deb0002303a15ae9c346b4fddea452b32e8dd32b2ecae70fdb74131426bb9a147f1eae84d2d38adcca37a72a775b5fb40995411400302047c435bb500673065023100b05badc4b86ae3c048fffae895eff8ad936bb1aaefccb7afd10de8af0e079f8e45d8f44b95efc3b8d3834782dcf0a853023016d6fc4a2a598a69f986033733b85ff4174e24458287144b6c3a60b6267f56b111bfcda512e0512f5920f29f5bec939a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100eea9780bb480df5a20d07dc8a7d32500cf592e058893848c4023659a28e60614c95d0296235f8b8ce25a35adcf936c59023100960c0179946175543dc4f950065bd20a087baf358ba71049560895381e4eaa9a11463f6fb1ff494daa71e9ae98c171aa0302047c435bb500673065023100ab461103f6995a96274c3ecda0a11b89034270d845cc6e80d406ff1d3861dfeca12f246832d64bc6b15cebd48dfc6b590230058f46e7e92318db1b94131e01d22fda650abd653233fb6e4f488b931e09784cdd55ab1762472d00bc30d1336f2acf670302047c435bb50066306402305b78ce61fd431aa10f38185025a30a449d70b70d81543b98729c42ee7dbff88f8cec1f32681ea67946bed151eff93246023003036760b77c417dce12df2ddf39367d0261eeedee544a10217d0ba6d87f5fa8d9087fe0c01ad189cc4a02909d21621b0302047c435bb50068306602310098e9ec081578671c43c6a828f4315ad530459ffb6ecc70b6c9bf14bd8cea827d3b42887115c323c584d0525622cb5fbe02310084899877cc9365c522960f1d8c16336bcd389419f1e36e93c34efd2d9e04f25a3f61e32dc606e2df925106b73bba15ba0302047c435bb500683066023100975cad56857dfb3a6ba4f7eb72e6bf06a0a8ccdf591180470e519a0e261629425fe4a7a80f865439f2a5ee56a49ae3bd023100c4d2fdfe74412a21e727111cd5d4365b4789891bada253701532c782ce6683851601bd583b7b628120081998a4c924ec0302047c435bb50066306402303d90a1b1596845a87ab848b9315ce20f20b41a708a4e97b9aff4e9420ea15b156f2dec074220338340f2497cb656adf602307edefcf196e0db50d01262227e9c9e9cd471f635fd12e0b2a561b86677e6a38acd1f3a17c60722194b094cb48ba89ecb0302047c435bb500673065023100ebc51f37811a0b201f12f206ff792a2496c6fd882029f9395308fddb8b6083bf74272497dc6fd9ac636b3e0d477cb24402307b657a6eb0634f47d8f2c219d1c8fd60077407a19600c45aa7925e4223822a6e74ab219b32d95d0de3cec81c25cd58d00302047c435bb500673065023100c7ed04ac406ae59109e8497903edd9dfbba92bc138cae9e7e1eb1998e7d85562c8adfa9a27ebecb8d6d92bf9debc35cb023062c7a098bad35ce7287175bf583adbacdea06945de4edaf6d115c3bb4a9be8a687f18dbf983a66bc849ab08cea3e5c810302047c435bb5006730650230026c450c88c2d62d5f1b7932f204b36638a86c46cc8053ba09634b5e647160a8abc3e6976eea516f57a6878213b76cca023100840916132dafcfe3a843f0d6a759534d4057ed5b5b8a5ff6a2259718e6e641b087a02a799a1e9f48133f3916d93be68f0302047c435bb50066306402302f70eb2476acd820fc89fad5326ab407e52a5fe80fea7b9dc457af94a8cf450819aefa5ca41dc9c4d3a1ed9aab4dff1702307c8bf1d13ff71f28106e7bc8add9c3d4530e9b95913e4cbd0f33ae7ace66ce497e30072629e1fcfb9eff64b35052c7bb0302047c435bb5006730650230127629e21e353031f48df387a18aa2575f9caae7d4eb67bd360e0193e4b70a32946906058fa0f170a8769500729e7335023100ef7e733f1674542e321702400624f685ec9094be3667d8c9b47260a4acd538b729ade7c3de18d22b331281de038ae9a50302047c435bb500673065023012980581c861b71719962b863db1a13dde1f028c5d015dfd7ccf4899a13cf2e21bc43ab3201d3aeabd89aa1a8ac39343023100e7389e93d8e806fc8c4c288f9bf661bd3d037cfcbb697b90c54722fcb4c88061a1e995c33b1a999a247a2cbcfdb4adaf0302047c435bb50068306602310083bf6b8b4400e7a6e377542bf7774853bbb3c9937a5dbca3edb79f2dd90eb60e931398159f9c07e14a05785c2cd08adc023100b90ed292437955a6d95f90763875ac76af96d66ae09bd69d4b68d1d4edca83026dab7e820b5b6b35fc64d47d3285e1730302047c435bb5006730650231008c8eede9f5a2fdae12ef26db2438a159345e1958af14fbb42f338c448dcae873017d124f4c88de9aaab4cf537c1df87d02300bc4c8406bf91171b1ab02a964c57a605d07b84ff80102bee4138dc673fe8b4a413038d0aba6e03f482205defe04cd250302047c435bb500683066023100ba1e7215091a76ac198eb5e218f996242ddef786806dba25055d7cdfc97c394e8018e63e5e6ac6ac6374b087ffbbd1ad023100d97861f7a130e49a8343e5f531cc27cbfc7dd8d9c6b91dd776ee9552e469393f0e4b7e614250ac3939992846fb32930d0302047c435bb500673065023036f1e5c2fddab4b0880ae2d9a7f778dc3cdac1c098106d8658ea05de50a6ceaad553b9dd687ea1922b630db9df3c64c7023100c917018a9e1d96f9250608a8f6a5eddd1eb51e2c2582c9a3ff55ee3128897cc0a8003a506e8e869fe3363a17a74e30810302047c435bb50066306402307c0491c71f49a643816a8c658ae7e3552e6472e577618e29a61cbf0e3d51433bd19250526d506d50331f5c9b7adb4766023069d6d63bb4f94a37bff9147d743b8fb9eb71909cba13de4dbeb36ef6238b5d5268ba1077cbf8ae127b07e183b77d4a510302047c435bb50066306402301d2f19891876cfdbf169d8aa2d1359875328748a6cccc9f8a1394ce33e464367bf34aa4157adf72cbfb9f3ba8eaa7173023027d7da220c4811197510aed8d17986b608f12b603aed718a7f8804a5f328d54e2353c2eafd0ba0f369c59f0700eb25fe0302047c435bb50067306502301a23f84feaa284334dcd7fceed575613d15d36fe01c47806006f250613d509b6248d2982f66532ccda237bdc087515da023100aacee0d9d4fafd80ad89ff2b0f63a00fc529145009540055835ebe3315bfe572a6dd34faac8689b5428b1c9fc5c860f90302047c435bb5006630640230293a95b433f6cb63982e8ed210dc3b77f85f40e62cc6145f18399f0224988de96f6d619a65f01201935fbde1b6acd6be0230651248f25fe1aa6e8cf3dc3ea3c7168350c2802c3437e11b1b8f739fb9c28c316a176063528dfeee2cf1be965046ee990302047c435bb5006730650231009d842d6814dc426e615cf99478cb22c5a216706192b8749f295433804342efc3de2caa8cbe085a85f906680801647f9002302a986552483a7e6d87bc8fe282dcf83c764c58cc3e320b775d473bf140fa8b4ce3a92032ebc0ee6c86e25d50da608f110302047c435bb50066306402304c1ba539eabfc7c6dab301c984d554faa76c1439b6d43031ab3be49919c6cc550e24f7f020be082b789db5a9309d98ab023069ed61e67d1974717634178e5a298a6ca8638d1b1bec782cbf3a843bd042d540124619f780f34a9fbb78a9ba6e6c3b820302047c435bb50067306502300e8296afb10cf9d7507d4652df53e921a6b5a2f3496b74aff58725ca9c0665d763a8b007e65dbcfdae95003f91141480023100b7e01b51a69fe1432fa07745d46b099e2cb375444ff0df24677e5cd89e17b81b92b532c6e06512c1594983fd965d243a0302047c435bb500673065023100a13a4491df5b58142ff7405d523114cc839c868e76357feba81484d63b8bd9995ca7ca04c7e090d18d35ee6eab69fd690230472d390061b345f89dcaed1e3cac01c152886e9f3c6fd06a324a7d1621f37b7a00a877d730cfd2ebfb65fbd2d5fda8d10302047c435bb50067306502300155b2b460f2459006bf0175341fc6d3aed7bcd19d9e9c012702a686dea2b2267e589b96b1acf082f7be39cf0c2cd9a2023100a3a1cffc5684d274f4e5c155216b276811ecee53959a2ff0853c6e1dd149f4f2f9d0fd3d24ef08cb66550f139d85206f0302047c435bb50067306502304124eeb918dea0af55a914a811da80607ffd8e52ab2ccf10e91134d35cfd06bc00ad49ff1e5cb7fb285340004d91e63b023100e45033655cc1837b1939f3b1ce4701a31c20d51142858e0738bcf7f329001d5e44595bef9c93a8a930f52b69da1a30b30302047c435bb500673065023100a4aec8d20387e8828f0e8e5a777b67b6b2f2f806b50bc919a169588c5f953fc4f277eadb737860b1ac982e7882dd577e023023d7a9d5e3de80186dad91859625d00ab8841ad88c1331b8b4a8ba56bb456e29aa401f0f6dbe7959fb8352dd441bea390302047c435bb500673065023062fd8770e4694418d26689ba4245b0d8760e0ea5e894ad63d2d7978db83da59a86f728fd5d04e8d7ea7bcee2317fd404023100b126e58a2783f872e7bb5717e29b51ecd18d97dd2dee738f1a2e46f21a87c35b4cdec03a6921b5ee8ef8216d623d7d870302047c435bb50067306502304ebfb6b96d0adde9dac6923b557fa0a4867b1b986db98336146bbb9b94b5a25257c7954adcd8edc3dc7cc08d72952369023100ccd7e81834c18ad4fa19c6645dee5994149e0ee3b88c611a2340fbd4d46335cc1428ffc172225f36dec0f5ca6dd993c20302047c435bb50068306602310094ec1bc543a19bb86fefcc269a6f7e1b6d0f5bb085b466c23e0028883288aaa566fbd320c65a83e62f9eadb273ef9ae402310096d504e0a70e89780fbd44c98951cc40bbe69381883b4c32adb0397980504f204c621c57c95ed76609571945a829fb070302047c435bb50066306402301c55a367b549d8057593b83ce69cc911a7b9d59d3bc1cb0f62604a9114cbda74048db284461494e46554e17a0f32d4fd023017f1773b4630eb09fadaf3457283ed78591438214d87c48e0dcdb4b19be1d0f0af1a62597d2015442fd81fb5c54c6ecd0302047c435bb500673065023100eb415b9a3b09b924f8c7a208d9c190a55c8e1d188c94861bfda6dce80e01501b5a7d4cf61a7e1ca2e6eaaca02b5d96ef02306e3ec4aefb7ddd34485fcc516ad9aed249b4d7b1a21cda03211b55a4acd3c6b4a323d70eb47f77626a5966e6a2f7f59a0302047c435bb5006730650231008df231b874b9956e667a547a2d16b58b0b7e202c832246e5a16193c3f4a8e5bb859fd88dea236cecabe805fa8c8f4e71023053f3c9483938561be1369ff5258140257d25489a874477d164c1dd59bb6ff5e832158d98cba8b0ae9929d2317bd92c660302047c435bb50067306502301b4430e7426b4ad03e3a0c41c4456cd35e1bfff349586f5a3682676a8b0f83b9b77b007aa5bc0b54c785c924d688987f023100abed2addddf15edb88663e887fec126a95d47438ba0804c91436d21ca58820d78cbf90b1389276c8531bd79df2bc87310302047c435bb50067306502305f57230efe345946f02ea2318525d2cac27b3a0a5a583e92b885a216f12b1f9ee4f42899e80789c33715dd7557fc6e4e023100fdf8f4db55d577073014a38481576006399b5ade7332ee400947fe2a5ffb249df91eff497c872662bac05c01ac0ceb930302047c435bb500663064023056713cb3f9b7b732586470bf025564329bec24f5c91ac323abbcf812a1543c78c51c680d190034b0b7ca3fbee1b0a6250230271c1ad98eb8854fd12f0a8483856a9527de7fe2e9572d74cd4cbfdb99539cc56aa9f266bb9bf29de81aa501ed114e350302047c435bb500673065023100feda61fa5f84032784a833efd81fd2f9c00eb72b038d1df0d9f8721033300f009c9266d9c32a3865555dd71f3d78945702304dbaa8fa9903f71da5a8d233b17de7fbbc756239fd56f3c55fd972e565f862b8e9d96db16210f0935c6f8b6fd16054190302047c435bb500683066023100e21e439baf9d08ccb21ac87b4194f4b8f57edb8fdd6961ee65b97f3cf28c92371b05e84930b1ce79e6201aa80dda4758023100e195e9e4f86661d72daf1e06517cff20ff545b9147d7a151afac198393ce4ea314d2720fdc8e7a1485ce02c8a239a39d0302047c435bb5006630640230600a1c9d2f72f9888f03ae23d771ed4019426ef0e1f1269b35ed91235f5cc905c5e3015f28d62286d6c4f89aea5ecd9e023006a326cbcf9ffa393f6699b4f58500504b227ab1f870424a13c60fde87b73c734741c38a9c27a407a1e9b7838d3ff12f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023079408856fff088979ff69eb240340bbd62e46555a29fba3edd38387c89d9f4b8b5702ff9c50e73cf79a6ab8c4f1ab825023100d70d3d8521228136f7d3ff26aa07d93a7937bfc5749f83cfbef52782e8f6dfb166f469a4a59f1795e776bb37ee0cca3b0302047c435bb50066306402303235b4ea23a195119e027ca3c022940dcb080276a55a632fa98afeab0885ee63f38ec2cd410239e35d91eb78bcd76cf5023045df7da65fbc8e1d6802d131caa0e37d841c42408fad914a8f826578e9ccb521a37e3590d4840fef6a0d92abc96fb50f0302047c435bb500673065023100e06df31d002d68313159849854eb948f1d0b4372975f0389b8bd6ea5f734ccfd95c313cc416e036d180a6c06d0eccc570230072894ff3a02e0ca95ac43c11a1318f07d09fc1f793ec47dd9ada368ac4faa4cbb4e3d8e153846b7e4b8ff81b8c698070302047c435bb500683066023100d159002d63de6afb59b1c15dc996932044fd858dad867eeae96ba549e0b42b0468de603f071fef88f3d21ac57471bc7c023100ff0cfe006ea0b89ac6e67e4b40e7873c354e416d5fdc844060de9b6b0aad7dd609c89593a727ea4dbfbb5daece34d9fb0302047c435bb500683066023100bfaae5d271841fdb28c821a8f4fb1e680b8a7e6f5144d1e2a613296e33ebe3ac20deb810445f415d0bb31a5c94a62d5002310094ff711d766fd59c6584676c784f9cb83be9e5c0636b6bb38c2827294c8011092c992151bdee74359bf0ace0f6c7a3f60302047c435bb5006630640230744b3b21d50cc121ee8b3b76ab611f3d39e1e19adf853fa5a6756797870c84213e0c0a32a43d35faab226f587dd014f602300190af72e689310f464ce52bc448228e0e2c788fe3d3ece7232f080849db277ae2b4e83d59950625c766a07dd5ab55bd0302047c435bb5006730650231009a5242712d6a186aa3f21e32d70aa7865323dddb01343a583a51fafdf70356ee5ac7069882c0e5c9892966437aba891802304939013b739643f4949a3b91d6f71123ac2b7d194503f5d41cd813d95f1a6f54d79869066929e1492379528806d8239a0302047c435bb500673065023100e98ffe603bb7b22c4d46796aee4908c03448f36aa7926178656b8528c259ff63a33085a64614a29c02082782e2e3638602304e7d93428a4e7d95214aaa291ee0c625e74e3eb2e06234e051613561b299daa897b54c5345c2cb07eabed173f6b470b30302047c435bb5006730650230693ae7e333e334a68581afd6f937e6a3d8197c59000a6292a960ff9fd54571ad34ffefceb31d765a41144aede6ed408c023100d5130cc7f26f15b625d11b4885732f2c6a701350f518e8dfb62c5887478d4110e09748a554016eef5f0f2cd97f10e85c0302047c435bb500683066023100f8f14f4cf0ed841470cf2a1715f38f2684b50c4d285c8b1cfd4cf33ccaad0c450bad3f3295e820fa9252ed14f2451b5302310097f5e088ec30b783a4257f053917a271733f88936fd35ce022c59d2d4d41a9428e38b14ad4cc8f7a76df48742aa89d6a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100edaf9452decc328d98bc2467ca9edd23ab3207b3e7d233054bd8c5d32bee5d51db719618876f312be8d2d526155688f702306e8894cdfd590ae8811792e134b926b3ca1be6b4ed39c49a3538ccb0e64b6d9003bdd38a8eaa520f1d5142049fc33b5e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305de0a1ba0a06245c4c2fa4d6c0d0bc9f9b5495eb3fc88fcea071b135f8bd8e4fec780a15b54e926fa90112ef57c8538f023100d114db822b674ea15133d8badafd730ce13ad008cce67ccaa28143266dc7a1bb9cb73cfe796195a1604bfa26579365d80302047c435bb500683066023100c2632ce7122eb5e41b4aa87f427af74913a1525fd2522fe39ae76bce4a5766dd2c29f1961b3e8fb256100d8dc047441c023100ef2cfa49d9dd3759ece805509a9befb3db0e42c1626cb483c203e9001c630d16c96601b08afaf56d103507948b7cc6360302047c435bb50068306602310081bfa8710a7f8ff15c5d96f70fd622bc07858a7fa2b3f314157b80d93b88b4eeaea38b8b323185d9e5e7aa1aba627bf5023100c2f46511f029599beeda54cf41945df7ec3a2e5e9fa6ae18ec013ea103b257b7587ba4eb4774f82d7aed6cb4579eaace0302047c435bb5006730650231009b2fea83e448d4637a1497ba47e8b3ee7ad255c0dcac5f80f77b93734d2a2cf494255713ced7d6f4a3c43b42b3dae85c02303f1f517292a6f7dfb4d62c6a4e8dff69eb7dd9bcb5acc2a405482658fa47fbb029e7f86c4886b6cbe44e9262c706801e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307287133b172692b8f070548073e1b5bda9ee4d71b1aad38d71003813b5b62596a5d94f4f28f74fd7b231e94e21447ca1023026f0e9a7b5d4234fef2d1d4e387e8c876edca9c3244dcc1bbab68680195d8adba18527cd827175d9073b5b4202718e070302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301aba1d8fa01e7315f4941158ede15d2e52338f10888a2fc1779dfaf696d5470e44575b1a8f9aa0b89eb9e5dd27ce460b023100f82a325fd30db83cd27157ac518d64c926d9ac574d7d4712a994bdd83a494889d3d2086f3383a92252df5d40f301ddd10302047c435bb500683066023100ae9a95ee9558a354489b991f06c4afe1ecf83cffd2c207b4535ab384a19c2f9de11e877e60f6e2ea2ea7e67afbc1fc6b023100af0dbfadbb7c5855250b4b5d189556ca62ce78aa4d8626ddd07390cd7d35f8b9b272fd89e58808d7480078b4a3acf1d60302047c435bb500673065023100fc346bd22132ea9d0f81e805b5006dfef62b4143fef07d1d126228c697b8090e8ec63dfc9b31da65ec9700a84a1614e6023005e700088e6086abf257994b3086b250647199c92ffd08b0e6e29bbec149406ea4f30ca8d53f67a9432356baa73169e20302047c435bb500673065023100add2021adec058f396b16c9bc26d02c63cc648a5196ca41f07d06bd9dd2d29d07e10b7234b05283644874eec82d083200230683ce0f90e063a91cd0c3e7c530a78a86556c54089a5f36a2dde332f5df8fb34aae3bceb30ed5a5164470f6f09af7df30302047c435bb50067306502302bdb86010b8a963d1de7b9010ec6a4a71276ce09925d73db67530418cb02db150db62985b25d16e4b05e635e1270979702310080675e4a9cbfa62f911e6680f3362219b072a04e9b6d9cfdacecb977190c7e6106a31321a15b2a78fb4947d6bb3426980302047c435bb5006630640230266154bf82715fcfc2cd546423dea60677565411117efcd3d688dfedb0c13f920fb5345a4fc5cac15332da0426176bad02306df2e7955fb21eeee2321f6531576f5571253f0c9f99843f7925749febe9bb5d99007b18643082f26c950a3030cf7d990302047c435bb50067306502305f1f8fd169f8e4739f524d19be2c48c11b74a5d300d0634658d4e765fd3f23ceb2a00d3323588ddbcf93024f091131e4023100ef6436335fd6bf6644073974ccfd74e679fba1bc9ba37a380c5e808b9d7b5827c4ff91b3ec6af5b66148c79d827f255c0302047c435bb500673065023100fab71d7917f72682c0dad9db0ab5a8e9a6450ae79ae76135b852dc18937619584ea521a66cc28bace068721bd1abae16023035833b39c0a8da33c20de83007af1211c0ed6bebc33695bf31b6b85ea68439b7f04116d986bcdbd1693159ce4febe7c00302047c435bb5006630640230088631bff54584fc7969d08d825beb7943b6d191a78ec57b1b31a431dea1d22a1d4002cc2d25c19f408b494281e4595502301fc64ef1eeb4e92f489efac04123aa125b2d3d25e7eee154e3ad08d8c1a1ec4f4c58ba5825840c0475eb37e55c2ac8740302047c435bb50067306502303c2f0f35ad87a2f876a2871d7792ea380a827ded16c930b4e27ed60472955a01d7fe47a516bfc16242e517361d86cb30023100a5a629355353903126e0cb084f7ac84ced829d6be580a8e2b4453507df39284c7bafedaef0de6a2914c785d6ef31bf0a0302047c435bb500673065023100952667b9aa5c88375968dbf2e8675ea08f1fa7709f1305efe8ed1f9dc2efb324cd6666fae9d0ae0e5d80edd4db5af467023022ce325e67a433f1d63a11a80e2b55a13ab9a043cf5180a8fc4b165e9545d8f4700071c5c8b994583f066a2b1f15db050302047c435bb500663064023003e66d92998f277701f740d79a8362c79a820c3915efe3e02a20a89d7c965337ab752cbf0d181fa807fee2b5fe2f71ca023005ee73d002c6ee3e38c04f9c9607d6f71c7e7447965dd9c067e4aea5b208bfade278f519400589061c29cb33c73280450302047c435bb500683066023100c1b23fa35351794ecf81da01266ccb6e6e2ed855813dae93611f04fcc7dc815854fa2e2dd13c80dee8b8afa70b0d269d02310093f8c1d3a55f364d8d0bb3e50afe4e956e0db13dde300f0feb02284e0baf98fd8dd9326fb5a68b40d662522b81e950480302047c435bb500683066023100fb12e570fff5c912fbff1a120cf2227b1f34b5beccbaeb46a87777cacf5ed9a893fbac84d297801692cb7fb63a89a328023100e19a067fe4568305c68d8f1b384ac1f11f29b55561ca24464daa3569483a7cfb3f9f0dfc7dd3d92d5f2af09b691e94d70302047c435bb500683066023100d82ef81069477c984a88cf1a0123e4e4a1bdfdead6d9d83e7aec34f675d88e608f324254c59775245eb10ab592d1109a023100a71cef1a30b71e92e3e60104b95d4821bc368c13bd1d55e336529f47a1aa138276b32748b678fe7bcab0ed0eea2ad3190302047c435bb50067306502307ed428c91b0934aabfbffe3320e22c0a7febabd04790269ffffcbeb6ef131df450e0ed0b98bf262c242b438e8ded0ee8023100fa15cc02803adfa8c65a7dfed007860e45bca4f41476345eb86c9656704bea4bae173211daca84b795ea072b26058d4b0302047c435bb50067306502305f466e3d3c96ca2a4975d981622f704640c2eac1da4b582ef23354c2fa35ae80cb83e9d1f0509b2d046d9787f30c90d102310098b0da8469e55b0a67b2fab8e7b5bd4fe9eb27c92fab0a81d9285e0c7b0e7fead28ff1a9fa2e151bfd2acc88ac6c03520302047c435bb50066306402300d08f4eeaa278b29352a580da6740efaea9b4da7b81f5fc3189da6a0aba2e0fb0eef4e3f43c2dae23d04f6a49b45c552023017d792ea794047286dd96a4183238db4e5f37403845e0f80d481b604b1a3cdde72b19dedce29e2f8d7ec881dddcfdb480302047c435bb500683066023100eea2e2b4cff40237155019febf7ccf6ef8e14911aa9c180543246a16ba0a70cfee38e63446fdbbb610b0021e7ddb2c8602310090e3379f2699dbf6ba68189a4fa4a75fff19fd9277093d15f3df1941fe1750ab3b8c943bab7f1263fd6a73ddc17ed5040302047c435bb500683066023100c339368ff998711bcc5a6798f3bf7ecf411cfbce2bb9525d7b26d20365e1547b127ea35d6547590607f86bd989305cd0023100ffcad2e35b524f1eff24f2b40e9831effa3adea5aa1ba5bb3e92b127b671ede4879023e082e623443060f661a508dc930302047c435bb50067306502301b19dde10ffd7979a7bd2a0e4021ffb29552e6beb540cdc30054bc44b02a82124322be2e9c45268d9a66238af9c634d1023100c78055787cf3029619fdbe4f864b956b853abf63a87904b65c8a972f88e105c690c650fcf13bd8a2355191d9945397fb0302047c435bb500663064023051de5682b6fbdfdbaf70d58f5830ba5205eafb4e23ae2c612d57259d60e75eb60f824a94b3fed811e5d83e2aaec72e4202301a2e910bf265c72532504cd1297fa29267425657d5ac5ce8b6fdfa93529bac221e74b84d5f8e8dd425aee0b1913fb9e80302047c435bb500673065023100e0605a63a43a6a62dc2f12bcae383a0fccc4601c7868b027d2c4b74dabbfbc87c632a5c548bc062f99f3a5eeeeae962402307f04d1cd2c9a18b3c3275a82c147b3bf332a4fc84d2c0cca844130cdb05d9ecc4043bb020ca41c5b62f2540398a481470302047c435bb500663064023034242d9d792d61bb234826d7437be6c227b5aa0b602b9f8c8a8787cc40a66f5964142d8e7b4f23a84c7dadea0734295602306741a7b20eb79420a599f12017d89ac4ccbf0434de428fa0ac4faef72b6eb98b1ba1edb0ac966bfa2277bdd54d73406f0302047c435bb500683066023100c5181f33ecd6738df18dea6b431fc4597d09171d49950344ef05917afcc9361cebaec12a351a5b4548ea4635cfb841da023100d52da96243c053490bd7ad58316d51e3e0025fc81a1fd4764ef956381213587abdcb5153fd7e08d4acce31c80f174fd80302047c435bb500663064023010009b1d2ec6ce79a55a36a9bb560eb9312ca1ce3169efc2f3c5951f5807db816749402a5dee5fc0ec6eedf3d1ce42da023066f2d554a5554df24212ba2009d2da719391854ed577ef7107e278f454c3c988322759f56b76e30e547252587def9a440302047c435bb5006730650231009aed456d71afe8cd905ee6dff870b327ea5db494524118997f18c53124734087aeafb2fbd57c6c7ce3f243875ac3c3ea02302070e40822da3e6d3be28e5f65691304caf8fcf644e836b5cb672630f279ce51109f855f54a88b62702edd5d88871cfd0302047c435bb5006630640230274153bf5bee074ee82159b2e7e7e7d30749fe47157fe198b1a99d769148c435c237e5eb2cb40a638c098c474687939402302cfa862cdf512a5be53ca67ffcf2cdf89d826c86ea6cdbee5e16b107d25d43195db6bb3484c8d75672d99480e84d95af0302047c435bb50067306502310094a944b925e84f1ae0ebeffd237fbf634a2944a25611f11d29099f93dcb1b66f8453a93889c6568ccb1c91aa855429ed02307f130f8c74366bd23c93e7fce8fc49e5953be93b823d59f3d7188cbaa98fb2bc95870e3421246079c2347eab39c10aa00302047c435bb500663064023066d70a352c7b771c30cf748175fe824241f074a0369030ed2a6e6ab786d28f50d68f3cb12cae7612ef96e626eaed3a4502301a7b64223b2e12ffbe2264ff0ec96159c0ee0da18f1e9a79c0f90b843ebcc8d5661c37316119f774400bc00a280b45550302047c435bb500683066023100ad625a611464b25b9a5882d3bc711b9ca2bae1902e85cadf7f0e4905624f3057d4b7a3ed531fe01bd8204a9f9dc315e8023100cfe14ecabb77d605d6b7a6b19fe88afb58ae5bd4e9e797f4e8a0872a68af6ecd3728cd1b26c780801ac6e0dc151a93750302047c435bb500663064023012fd8a52bf5f09933bb6ea570630df027ef63582b47dcfd060ce231b040cc7a238913ea373a971d13dc9ba327546234702301b13b0414b54e4dc004250d3eabab95eb1cab3822aef595541b34c2db8d47edd8db1728311811883250846a893559cb80302047c435bb5006630640230504aa6ce061eb1bd85a471168a3316a508d9c7ab33f0571503268ad2ee0a42851627d13be89e216e1567c6a6f625babe023051f73b0060c55b62bfaedc31e5fea802f2205a79aa44e85a768e62a0f4dbc177d0c9d268a3529e738c0c212a2967613d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304f310b842b555c77be1934d31d0244a8c4eb5d1824fa9550939ec4488e8fee66c67626a818180864a460c7450c1ba6110230190e3131a2fb39064308ac155267c9fa853cf59ca3c2bde55938b02c50f5716c627cb0817118d14fac1c45bda4a8d5e70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306694425dad3b520d9ab95955f726bc2b5a4296fdcbd66dd77e482b436e74f027db4744508dfc566fe7d72b0de5e60d1402307099f08a6e0e50ac4f914403321aff4889f7b20d428606a5339eeddd2b6e0c859dd105e432664b4e541ee56f7f47def90302047c435bb500683066023100d3fd186a2d85256e449c2ab745822d097593ac0d031a888d7bfcc24b6b2d44a385dd26e02b19318a617a32781f6b4396023100faf80b58cb25478eea84e2c07974930b1a0226804eb1b873f74bcfaee2aa2914e94d29616599af9b8cfd20de48024d3b0302047c435bb500673065023100dde3c0e080091ab38c18c9e019b89e758b1042fe4a4e99c8f3d898440fe1422b829c47899b971198866c4cc9a325f935023023c693096d8492b861a76b89328b47a372370c1bd44fc5c1c966aadc68a179cd2699b6a4a90c076365eb6ded3709151d0302047c435bb500683066023100b0963d5a233adf6b107747af8334b699d06ffe2dc34df6a0cd9c11434df8f8b2788b1ab73296ece99534f4dfb22047a2023100d796efbe2895b1bddfccba07d97eff7874a903c54919cccde4de50b4afdb62b4f0f6a494cdd1b69ddd01e761c0b653e30302047c435bb500683066023100ea8d88b869715a48aeb592b6e192debd7ba52b7c371206b5cac3490f3b279b59e1c43a1db9a37c35c19527ce1be3f8c602310089f9dc6370433f524dc087e13d582883dd078c88f93e758b00ff2acd73a63940bc246a320e6553630ad372f3cafaa4540302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302b211b3f24ce635903f29d9263816893f42dc193448c101ba88a63ba3c5d99d4f6265a9b125fc64e15d11f6daa26195a023100e794bfdf1416a2d105311d1dd5b10d0b8b620229bbd6ddc28fe14b66fa411fe674624b25dcd80806fa5e6a34a85b7d6b0302047c435bb500663064023041fca5de21c727161b6cc23c18ee6b86b2841be5a5b9d9284a5dbda87a153dec1cf7b10cae665fd2934ddf6d41a6c88c02300b2ab0758917ab40dd886f8a1964b90b6bb97d738a04d4bc0a86d67ceebd5bb7482e0b2ee5aa9062603402e3e62655180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100aeca9350eca37db63c314fd4818ec91b92422ad9fe860859b2416e0392ae59d6c0f9002c1a5389ab3b5384969366fd53023100821a82769e79e7df991ce49c87004e8123a51641100a7550a9e90652a45882fd38ad6efcca6fbdf2361474d90e2d57a70302047c435bb500673065023100f73bc6b07b366e2a7eb07e342c043f6fef6a60fc68e70a9b9a9f868bfc13e244e1265276ca7cbbf8eae320272892b088023060ce26b51b4b154fb74b75d973377b16a12f96b78237f16293e65bcab9ecf577279759b8bff5903f93212557309291c30302047c435bb500673065023039c734eebf707878794a689049d5e74e0e5505d0116d32c4947dfec62b3504b10d97cbd195368407047740c1f8eebaf40231008fd8a335c17d32bf1087eef0c20a1e1cc0b41dee6701dcb931ab7f14e58dce280f35257dc431e722fa09d4cda96980590302047c435bb500663064023047e4debcebad20d735ded91175d4cf6931589df2901cb6b51beb5c8e387e715775eaca1f7f8ce2c210e3ebb497ce603b023005d2fe6760a3b79c7f337811ace0d32348eaecf5576fc5732ecf4993c006a8f863b0751593ba07bde0247bb0cf9a9dc30302047c435bb50067306502301a10271fa4798a894cfec3bed572df40d7a24c38e497703ef328f1b214ddd9353902d61f17dd195b829c7f58c211f6f3023100dae6a871289a116c70c7d63dcdeb7d5f02f060a29073c0b4860385f636be2f5504ca02c8eebf99397a73f42d25f92cc20302047c435bb500683066023100baabd21ecab1481cd446041dad59f303777dc4ad486a8bef326db12fb5e06d4024ad4d247db798dd8a7cc2b67b6533d50231008d0218525e358a06980ae3cf529f5f02710da2a970374af2f850a110211f32a57aa04df5803f74c77700425efef94ea00302047c435bb50067306502306953582035d6527cd00260a36878e7f8284c544b30c9d54bad104cd8f651adb048b688f9156c36076aabe975b4d2b49f023100b0e1d68c4c4f9c79282cb6e354544cce70854e130aef2a48d720b7f96a25044de0885fba4020f6c7f608de85615155570302047c435bb500683066023100b6b7ea302a24ed77f1b723d0dd0fe3d9b56dcc274cf5fa4de608f2c3942d37d586fc55bc6e2b898fd44f1181f4796d30023100fc0721902bcc91fa471efb1c128b4037c19bb1fd8cb80850ac8c19617aecdc4115d67fe8ab3647688dd8ffb9cf0e268e0302047c435bb50066306402303b30b0eee62f9dcd6223951663b84820227bd78d6a6ebeb2f9bb42d97d63cbd6ab3bfa76053eeea6737e6bb616ac05b802303700c617208dc6fa54b86db707f67ee6e6eed5367540045bb3ca4157379c3e322f23bbc715158daccbaec82bd9435c890302047c435bb500683066023100dd7c6276803f5588936e003a2378a2e43d567b6018ab78796766a0637bd2cf4ac459c8d03623b5a4be559392010368c4023100c457bd9af39a239875b7ab0c5be0d15e0e755055defe6f6f4579f0a0d8f18475bbf85e78120a6502562e41c5de43ef1d0302047c435bb500663064023045534fdb53de5df3037510470d97df4a8c1074e1f5ab72ca6feb0fe87db5eeae55ba66d9674ce9b13f3b9503ec76a36202302e99d413b7866bfbf0f43f222912f6a750f5671644a15dc64af4a0972b733282ac770b18a32fb8cf7488488bdc1dd5700302047c435bb500673065023100abfcbe64fcccf019c52aa2b6daf60f34b787950da513c91632ced75988961af59359c41bdb7f9b9fa04a9f16a2c5a0b30230328533a4ca03e3cea3efe97dc442825fde9406372f8b3e37aca255956ccd2f0b102936382b43836a9e204707cbc111fc0302047c435bb5006830660231008e9d84198d3ea7eacbb4fd73b8701d11ff39d9677364850a42e4e68783e07d7c92a80879c2e4e4644d63c304b1eacf0d0231009cb88bdb56fdcb5cd32b1dbc05896e0105bccf00f87880a35c33e740395b7d7797409430031a3cc2fec55f7908d88e280302047c435bb500683066023100804de08e8b359068650a637e1b377d51305488596089335c305e0d6ac21ea4cbe7facec6a37be09a3d79ec246c7f77100231008f9edc1dab2728eec2450c435f1ce00b674beb45056cc368135e7cb5d7bfaa85dcd4d77ed8a2aee8004176389d87a31c0302047c435bb50066306402304023dadb72808870ef4a940ac1bb24f475bd22e87bc67073cfb795e13960bf937401357c7a642b25eb696baf00abe9ec02304691919f601e93eb71e63ebcf4e62d8a81e4ac627308f46930a5daf6b7aef97b2bf6421578e33c1e03df70d9d704b2770302047c435bb500683066023100aba5e94f8d47f51f70dcb7f530e40c01f72a38bb2f160391b059ee5e3ca0772b9f030264c2e9b146e555e161913ff915023100af07349597545dc12c7e5333e2682a65b90cbe046e77b2029503453979d7db77f078e93e1aa375b62292f193f0ba68300302047c435bb5006730650230788bc6b7ba6d3c39e91e55b40f0c48c266570c632b4774bd21edb175cd277edc14b054c1d8fc51dbabe8d87155a2643c023100b7bd84d34c0e1ddbc1a4d61f3da34f07d613835f439c7cb77875d08a26ba018ed3c6cbbe92f89f1501fc79c1f8b90c990302047c435bb500673065023100dc52c53b8919896f217dffb7a52456d64cfca406de590b020a88c73d85940485625cafbe1a34658602fddc1e7bd3ece7023015c7e4604dea9aa38ae7eedba14cdd3eb7f6976227fefb9851647d32286456508f782d59ab65b36decda35f4cc174a730302047c435bb500683066023100e4e1f97ea668ecd2b0abc916a9d33b32773ac20963c1ae0edf49c078fb6c610863f5cbb193515790530bdb5544becfa7023100d2aadf616c287f2bd696c6f672f669c84d34c7ba7409d5d420477acabbd813417c1f576dcef11f3781993ab8097ee8550302047c435bb5006830660231009ddd72efc195ad36092d00bb2141a28f55a170c577783bf67cb8add5a851f9dd76d5c865f72f7840f634fe66feb28a530231008d0331d445af4484618a196153c8e5b2d5676e20ac70bb9426df7a02648ef7720bd05d43185ca033e03a333506c0d4330302047c435bb500673065023100d903763f1f17dc224581dc316ed5b24d5feb268a31f8d5846c3e28c529e8b83ed5fe45a1918497652d5da300d3d02954023078d14202a9d5b0305f9579b1f70e876b806db177950e02db388faf990b760e4ae28b91cd55861f111544d170c07cb00c0302047c435bb50067306502306523ab36fbce386b3f88cc96521ed4d2fbdf27c022148e3e0179a4ce0bd006db3f0d09012f60193da5e692ecbee0567a023100abd0185ff0935825e5c8441c255a47cf39d2f41f58182f7d3c12f8053788f5393c7f19da340df8e1fb653d28bcf593060302047c435bb500673065023100cb19cbf4e591ee15ccda1624fbb16d9b7b0973e76edf546b257911a7bc3c148664f22ce7a0c1306e7c266dd9309a178102304f4d03a6fc405c5785b9f29ae3c23f3fb638660204a578d73886528c834ea79b73f21cb88789ca92af2b60c62b25e1110302047c435bb500683066023100df632e33eef16439731c9b074c05e0444a40d4f1c99a28ff2c197c2d2a232583d1bd72ed6d93e252db54f218c635671a023100c49d3b2d8a0a51626545f04785fb9612ac4712ffc6895519fa9b18608d80f0edc7c17ce8b25304b642f417728a3c58ee0302047c435bb500673065023100f5e73b5a1b2e28eddd930631315bafd6c58097ea603206afde5bb0abc971ab2790f118f11cf2b0160db4beba576a24370230771a6f898cc28e413463b38ddb74452b603d9c83dfdb1409b60e6469fbac26fc109d50e484cb664d76f9780aa59b58770302047c435bb50067306502302c852586b0057718a1498a3f6ee88a46d1ac8a667113659937dcfca10f36262c0c1eae041438c518d7aec36876286dc102310092d50fcef07d788e2885a7912eab0d65f96b0241f8389766e4ae13c2512c9f42270dfdd384022c1198fc798e23577a2a0302047c435bb500683066023100b080965048e35854842df40100f14e69c3041791f5e9794598b21cd24d0e31f4ab67f2348f06e8ee73c3b4f526af9839023100e5fd8cc0127cd1ca4de3e079b6572b20f93ae0069f846582ff8926a59589e3ed46aac91c51c4538f4859bc6ea211dd7d0302047c435bb50066306402307e29fb57d71c63b2733377823e078d7c2432b2f3c08018154f70b5f2bf2045877b9f0acecf70bddd908d32f451660307023043bb37343776ff459d1de7601e8c0f89ff703548f755dfcde77511611268d429c0bcf05051b30bd14d413d65f3b27b8a0302047c435bb5006730650231009762d23da587a8168d93faebd4d6de7d732ddbdc28515e6e98d207473daeb51e0667139abeca78407ff96c6a4aa6143602306afdafd6d0ee526a95ed7a05b5fe82ccad88c40c28be8e43104099d5658ac054083a8df3d8c69d406744818645f39dbb0302047c435bb50066306402300d341c42c2cf33b0b6ce3c6b1ea975d2b70852a09c0652156212f2d441ee82dfe45d0f9eb4928741b8d2f274e4fcbbdc02307307d3193fd1cdd4a18109f2a19f264a20aaaa98770f8e83dec7c076edb428e62b11fed6a17cb9fa021d42f6a7b77ac90302047c435bb500663064023045f16314b5c619e1efb61d40e40843d8f4254fe18489d2c0b2b3c6687356744f948742bb0a0d40404870743d1196d7ce0230110dddfea5add18319b339206136c4675655bd87e4ed717f16ed54f984d083d9b3d7854d67f6b3b3b2fe5f985beaab8a0302047c435bb500663064023076eb82c0b43999883cb2436e4668f9003110b68fe320b5400323e1eb1aa1d28a22a1ff0aedfbfcf187735d0372f3ae7b023063cbbf1ef050b2ba77c0d1710350a053e862072b918238b9ba77225096307fcfd381a195d222fbed74040f50b1b95ef50302047c435bb50067306502304ba83aef36e9d58409b280d05863332b7fc5b0bfa7c74b5cd0ee60ecba8a52b865cb0c989681e684e67c8550f991e9bb0231009bc652a9c08880d07406f74e802e6dfb5a3bde7da44a15600caf534fce8ce1be3d65896e2d9f1e6074aeda58aa09e2940302047c435bb50067306502300fb9e5e024a6bcb56dd08ba9a1fe906364ed272637ba183f1ba84e0e1b6d97c8893353d42545ef8f0066b803a56d4b96023100d4da8e267eaddddde820d0fff9668cfce2d7dbe7a8b529d07a42be48de705d00a4c97194af820f5b8815b4e7ded47fc10302047c435bb500673065023100be07c24fb6fd3d7aac82a7a607785bcd3f6d2f3043b19d43f28babbe3f83cb0f8df8df731c4b4a79e93993d415fb4d3702307696549cc65f9e80417d4cfbc5aec18601699c4eb3adb0c604644465566cc5971c7f507549d756d64338ae2dcd2ed04e0302047c435bb500673065023025e2c8a24d6ed59702b61f2233a3cc6ff92e0826ca41c24668f3a0eacd497226009fecceb248c257013406228793d50e023100b02135cfec20b3d64bbcc703ddabc79b0223d86ab39a5fb997946b3cadaf62f8b7788119fbff1a9f9f1be6b309b69fa00302047c435bb50066306402301340e5ae1229291824029c09248891884a2dcb0a10c4f14af9af83dae1ca14e6e08c64751bfd3df52875ba04746a9a1b02307e861cdd993e349385be4b950f76e1bab9d3b713f4c52e44ad39b331f4c3ece3fc1d4d2fd3659da18380646000e3ad780302047c435bb500683066023100d63f08af6e659131311357a17eba518f491cf304a42028334412d73c0fc6cbc2ef34e11d752d956bf5bcb6a80fb7df33023100f32dcea54ea19e69e22d6159396618fae8196f1f0e23496c8cb35b44b52a988794a5f6d07728df923a17f09c4b216d340302047c435bb500663064023042ae21d7e1c3bf21807723b5a3353305a4569b17385c1a55f4dd0a18dc93496c99bc9312fe842ae33ff5c90f4e89545202306a2128420819e9f29b8f518a18f3f5ac3434a822e45e18124f4f015500f7ffe3de81005231fb234805666399f9f75f390302047c435bb500683066023100ada9ce90f686524fdf4b23e7288e519ecdcac2f18eeb9e036be7c865adacfb023cfbc5cd11c55baad04d4b13b360a446023100c8a36440e9a13b5c18ca7ec90e96d63e61d1cac064c056a189a6ad06d11dd42477ab25776543d3e6de2f9e81aea8bbb80302047c435bb50067306502302e7bc05b1ba9f66890f5396f7b3e9531fcabd9fc2e7026715cd164c35b7f18da93dddb927300242c64660d8ca84347150231009cd118d17257a380e2543e30c6c0f0b4af881c6ea359338c83ea8c53446df531b9376c4001cac8b0728d8085b4c738970302047c435bb500673065023070b0bbf0a1d2952800602fb93ec8d45bd3a2724f4116ebfd0aba11f1dad1ba9bf1e216bcf6e426a6a164ded8e488b574023100e8b674e837c4264846f6903a16c1400b8e76bcd39736f4293e68c795ccb596ecdf3a5f18aaa4d43d88a8ed38fd5751c40302047c435bb500663064023028e7325fac70700a6a7b413dff9d33f87a82cdb7bff164a93ffb2c6184cfef8b42f56918ebb1f73dfdca3763268c29380230334646406de1307ddd5b4592546f9d57d8e1aebdd745489e55ee25fe044d66c0b1fe72b9f0021ab3caa492dbc1872db30302047c435bb50066306402307d4e1a3f8f85d97abb3986bf1dc3202237dd6ae6c4622050f19f2b975f33d73a0469134e35ea0f7411b4582eac7271410230565c23a6f8942b71fee8936491bf4746406fd5a3128f4cc54c664e08599af4ad42d0d8c5fc656707fb08a1f95e269eba0302047c435bb50066306402304fe92f97b3654c0b91584508327bc1bf1ce6e2b72a5a3fd21833b3b8e0606299701626dd8e9c6f899f84040bd6f79ea3023056b2be14580ba62bb368b8d3fd136b2d5bcd935bd422dd5d751005a586cd8aeffbc5d7e62e8686181694e38da2814f140302047c435bb500673065023100eca1acf96b39638fafcba1dfc5e334f8906799bcaa413643240d7f982ba885621b82350a55f83dc8d176831258cd9326023032cd90597c4714f70bde30596d2eefdfa2ce9aa9ea28d58e89c247e4a119b568d80941cea775d4be83c81f47ef3cac110302047c435bb50066306402300d09668197ee0912b9711afebbe3c070e036b1ba21e0ce4478476bb454a593e44b3930e2cf49559bcc87d35361295d6a023070b748dcb627a1856b48c338e3ada89cdef468533a5eae97be1571e0db665455308e94f0d462bd92c520fd211b0f90e20302047c435bb500673065023100a23361be22f890e145b1d4e25a899adddcb432ff97785c31cd455626c18333f5ba245128f9bc4b2bd70c73d796d0205702306a109e64a31fa222ad1a731d837f46e4c9f398e1d48e1ef2dd764392a56e3d11bcee5f113fbbabcd363f232da502d97b0302047c435bb500683066023100d659998dad11df832048563bcbe9d7fa30cff8885e8656caca8bc4f895b9b8fc8616c64b975c4ccb9821f30d7ad5d6c90231009c13b53ce1404d6707fadc153c68000c496ee225eed97f652f0ea2056d24b287fbadb3882872ffe0cdd2c8c85c97feca0302047c435bb500673065023100ce202020f67f1538939acf7172e4118c4941273be526da6df31f83d4bed539cca25b62aa043e664d05f93455ae513b790230132f82317d7b3309f5de8a7fe9ebc3a30abf05f914dcdb5eb718c874ea2109d2a590b2360b352fa046b98dad2c1ebadf0302047c435bb50066306402302fe58c09dee457844cd9c970c02e2e053dc6e468c5c76aedd9ca306e1ea32ee010f55aa7589f0359450397c89525ba5b02300103a18c91cc6313f72eec9044d60fed21e1c1b541c09b9c0d74f9dd892e99827d3715b2934de82c93bea90e13a7bf340302047c435bb5006630640230457c4c28979a4793dfe0b8c934087c9e665875483a3a45274b109bf8a10855343c2f14606ab64efcdc54b8558d4f732b023041780ce0808070b5d03e27d2f3469098d99c0392345891c2e23d1431899e5f72c89688db43ea917c4f3496537c6d34750302047c435bb50066306402306612ca28450f71b6e1ddb7a393e7c64352f1b5e78329c79dda33067ac1266e07db3cf5718abc3d82efd296da56835346023041cdd3445375bea367a133a88b88c5311bf13014ab75b6b9217088bb4669623f483e97b0af10735034aabc532d83d93a0302047c435bb500683066023100b47a7711b6731f457833be1cd481513557dc14eeacfca2c4481e24d1028e80d7487605f338a4b34e7e3cdb67068dd508023100a09ef58cbe0483f662aa4411996a92bb98b8b368f2298c02379e6cb052d721bfee88b06c4419966d12cb3a498c5c65920302047c435bb500663064023036397426165a02a2ccd875987e7badb593412287763d7970af21cb9f498cf21fafa458fdc8fc502710c19f6040cdf37202306ad285d2061c8f869bf726d16245c3fc2c13d2d99a35ce15f703a7c4b425a80b4210ae1e4e0cd6ceae7a1620184270920302047c435bb500683066023100e5da7a82fed4acaef87662e01a6f27c3f9db52c0d87c6690d4038922924508e60a1c07ef48701ddaa98eacaf8ff73553023100f2c95259ca23907f630bf49b87dc3b7ac1b736ae3857250dfc543c075e7336f7f71b67809401a7900d67a7017db577f30302047c435bb500673065023100ebcb41110cadeb6e027c96aae577e3ff5de120f2b5aedbe8c2d4d2fef7bebd58c869a86f7f1bc1fd42fd75aa8f6cf9b402306418e700d64ea68306e57592898b2882bca3aaf6b531d2f5255d34e0674a02aceb56c6f6ac9cf03edc838491a59bf7b40302047c435bb5006730650230629c9b9262ecc9f764ac5c2267762cb6361bf37bee9e878f02c23aff26fe5851ef415553ac433b88bda0055fc264ae26023100b2c437790a948ea2033551f3c0b0a7467123ade011db7fe4d9ad51a353cebb4d46af93c96b7ab90962cf130b3e11b2910302047c435bb500673065023100e784ff1f19c3e87d0aaa3373966cab820b8e067a6e16f8d239c720b0218822b414d0db3f3f3714a23dd1bb6ae1336731023044b2fc60445c8b8ca455e62af12119719f36c5f7fb3ab3ac8c8227965a5c6a47135b3f226be4411f62ca578bcbb59a520302047c435bb500663064023043cb10c4f1b9641bd8b6d6ac9152e65f6b8ae5ac7eaf5565a00234536271d0259d421f3db25326b02c95eb489dd9ab9c02306c9ace355fb9b43b3fa9f2db915a23401727da72379ccbd9eb5758ce6534b65fe4c87c89a751d3514faafb0dd4014ac30302047c435bb500673065023100908cf939fb1334d3c9374116242fcf29ef447ee004b824b8834427a37b911edacffade9ac78b9c491867fd1ef86ad24f02301a398b9f99fb0f076b9aad4dd1edc2b1ed88e1e38f0ab5943fedfec123e1cf75d4e8909e55f02f244bc59105dc583ca90302047c435bb500673065023100b726ffc4ba57247e34106955f2ffa5841f23380b837cdbf355fef0fc3137c681e1b135886fbbf2cf77de08e8e2856fc402303141878bb2834df1740628c09cf420e2c63c2794bdaf999d7db4256edbd1fd5c43cef9f44e462e076f4512139e1b0ca40302047c435bb500683066023100c0bf1ceb5c198948137d0db9901ab07794b817a7c49c68226960f637cb95b856be107a4a16c158a4d655339cb2617a4d023100faf94242d0f507c168bf5bd4d66377f9545305dacbbf2babe9a6935521b7a4eceea82bf6becda992c04698304e99e82f0302047c435bb500673065023003a8a756a9c893eea4ef16b5bfdd614fc800d5dcbd74fd3d0da8e02052791fc7e5656da63bca2beb45a0034e6de8316e02310083cd933fadd43c1c71eda8ed4c949090761149c17e8a34c847e4281089efc01bafbb21e4230de867fad950132a13423d0302047c435bb500683066023100acc906765b7e9a57ce526aac79b7d87e5aa1801c2663c008a82bc0443b6b69c453edbe8c332d15e8817f0119cd5620ce023100a29bef62a46614c8280ad3dfb6615567d803b8d6560bb875be81a3a614cc2fbdbc6a82d3711b64d2e6c4d6e13b29e3010302047c435bb5006630640230749a792949a4374f0d93b0153817c250dfe0a90e66dd1d29e55b42e20c8cec128033401c22b210bab0c688ba1a41549402300cc9fc2b793555a4c052b5662207b69c26ea7f58184f0eb08563c0a9ee170cd00583b927134e5dfece9656ca013e7df10302047c435bb500683066023100d5d5562137de5ecc160fdabafa2bfe2e4bebe3782e8696e4be493dd9a6e6e758509e9405ae8c469122d4488456f2b6fd023100aea2373b8fefb6db78e2359194a82f135f0bb85d5499f90620b60e89f4dcac8936a10a68bb3f53bd791d64a92e93d37a0302047c435bb500673065023100ee4bba54e7639a6209c73692b9fa0bbaa4950bbfb17375c568f34fb38577ff46a0a4cf2ba7ef65c0c24500da337629b902301084de025c76eafa5c40442dd3257474e5f58d2f148900d01bd5ad3f4a5eb228addbd0bc900a01d214995d0483e526d10302047c435bb500673065023100aedfdf4906e4cc4933c42602cd6530da4c16e21369e9ab0b3596c9a980a13024542fd6755143e68aece24331c04f3fb702301b1c17d118dc252bfd5d220f15c986ab1627b8106ede18fee0338786d14f131959af73dd79fc8114f3b67c4b2bd96f200302047c435bb50066306402307293edc44f2c8bd75305da3459fea719af63e00f48b7473b89af6768fb832c4b3768ac251066a7c927f9b2f8f5aff71c02301c6048776d94d067cd669f16d84a24c59534d9c3b43cb7fb71c62a31d1194a7285e953781e84161f92bf20b5f6be9cd00302047c435bb50067306502310092cd0af52fa2c04a8d03d97473235f101d11cfab9a496c0452b3784576d6bb43a0b26b078b782620359a5865a99e14fc02304487da48145ed82e12ec438ac6e5518957185d6dea4009995bb77f25f9176abc4d7c6e1bdd8c36d4a69c30911c3d944d0302047c435bb5006630640230652af09156e3e3ac1863b065e45cae4a98c385c154533ba8450030e862334581182d9bdbf570d313792bab1ec1f1e9ec02302cce9a1c32c3f5a053587788ab81d5924395791f23b9f3815ead1c27eb16d28578220e171158b0c9e202151799f2d31c0302047c435bb500683066023100801cf8e45ba6fe728a2a7d81050babffea9ba5c1604e5269381fe9b6404a107ad728651558104659db97d03d77b0caed0231009ea9a81a350adaa74bf0f83351d373b5734f73a400c383ef981dc94e9125b97959fa208190f690c7beba80037a0bc78c0302047c435bb500683066023100833dad86f5c13eadddade4f66b398817d7e9e4708fc8e9a7a7703b59e0704920fcbf9e6755a06323a123853dec617c5d023100c973f940c3eb604805195c691b99d0ff2af25ddd8a99ff04f85942fe79e4940338bc7921fefbce39ce03a50992f8b4470302047c435bb500673065023100f5765b8ed83794bb824daa8491abaf905732fa89ea6b3c278206572190a6673aa9d59c4b04d349d7477834dd4d007354023044b2b255c8d18dbb6dca1de6bc216011368160a7cf43e7075685e49418199305f7a4cc5be81dafcd3d8f8a2e313501950302047c435bb500673065023100ca811145efbf21d386f9eccd2af6d50e6017c6c4bf9bf5519c1ad74e1331202152333d1958f31f6236aa90cbc0d75c1b02300751aa798d0ae8bd8b56161eaf513e357d5d4188efe3572979c2b6a63093c79fb42673cb78ec088e6f0a46f93a3b11660302047c435bb500673065023100b8fb437287655772bb0d185f472617ffebf576a0cf5b6bf0aaf0ad379aaba6ea2002be7d371b931d4291235ed5397810023020eff0d9d247f963a276e7ead1d25877bd7cd3c9ddadec47e456c171a1cbeaeff38e4ec7b253350a0e69d20ef2d40a790302047c435bb500683066023100ca368f4f47f466df93f93f63d9219b8b6e2e09da24445972380ba56dc5f8ad8acc961e8fc3060ca03c3f10bd5718e0cc0231009b6395749ae682b7eadee2d5208c1a951d9fe2dd019a1b63b1f66d9890e4199595983edc1c20302a216b99702eaf45f70302047c435bb500673065023100b15690629d3cedcfcdd0308b9f747ba10e1ec1ef58476d953af7265877b099e413ec887f968f646acb227204e5b9d25b02305e64b45b64eb71ec146c72e7e280c0eadb0832b8db5f158640bccb3db0bbd10b4776dcc7bcd73c39df3bd5ad779fcd2c0302047c435bb5006830660231008071b0b58b04fc121bf80557c38e1cef373bcdecc131613a40758c4d8895ad4d2018da7a39ca647f91578a639d13ac12023100f630802384ebd31e86d5b0ba65abb6f634fb00a3f0e8247170e0085ef4dc5959f0a8c55960e7ba7ddf224d4cc4ddc6930302047c435bb500683066023100b64e9bc989eb16f0377749759b3fcd0a5d3570dcd8fd0cfcfcc0eeee003ebac1642a797257376a9d4650a452e92ac26f023100ecc9ab232d98d8d26a7fb1835eed10f1d442573fff61e8457dfc2fe05227b2848d7d47f0fd856ecb3463e9498fad05d00302047c435bb5006830660231009c8d0c539d773e0803934f7c6a88b118353353d9c53d63207a901e83220bf298447b5ad100b3542d1719f2bd6b984ea1023100c7997b859b829a7a23b49364ad50fa6dd20630d4ccd0e92ed54f9de1f31b08c2024ae953a0b99888a37fa90a97c3210c0302047c435bb500673065023100c8246b377656cd74d2744a84d3cd642b3ce4402fb170bb91780794437ef4ee866903954bbc63889479d8fa3ed4a18fc1023045e1f14423a58340912db377e204e88427dfb2d5ff77f49e8ccd6f50c72f087e07b0d669af49d98db830f49829ee062f0302047c435bb50067306502304b79aa9664873d0da491e5115f1a4cab94dfb6e8f95470ffd56bfd932e73614c65fefa2d9385c42e395f6a87e7d8c914023100804dd9a1d542ee955c222bc5254430ed52b3204bcb4d1a570fcbe7228ae58e9ee0576507d3327dc7dbb417055d44c7bc0302047c435bb50067306502310094a4c4a245bc4acf70181c28968545f5d4cf0c26dffcab3c2a6cdfc5d9a3c432078a0d0c19d1419e350df65061680f48023063341d7203e3ba1cf7f2c6d336b4af76d4e2f42ba35d0a4c83801efc22fcb3e7c4a71be467fee47cb176983a09c52aea0302047c435bb50067306502310087c2e14d918883fae72b924140d21d9f788089c7df94ece9faf28e6b0c375a3a00e492b583d8c960dace05febfe24a39023077232ce3933767e8bf4e8583df194775a48eb5b77e00926bc156fa5c5775a82881ff8e9db0d359e4920d8f9b7bb20d100302047c435bb500673065023100e0c067c4bc766d526a682fed71f9a85f653dea4a3b3dbc04e5b7c1ff874d937a48e04c7ed9999046c76104467cf8f168023022ab7952ecffc156da8db01f6f2d7c19cda32e7a11ec48317c55d5bf49178bdb8c8ba422f09efdfcb1be7dad555e26ba0302047c435bb500673065023100e90518cb31fdcd7450abefd447330b290f41514b0ce1f8b6c00af2834125c3c41dca26fcef0f95a1264d6d845212278a023020a87a98433d68c85c26695040f5ca382866dc4650019935a2d75693953d9136a5b536b5b44c407390fa5ae4173f219f0302047c435bb500683066023100dd25fb6660e4c17c8a5abcb3e95664bd41e0067147e2e3dbe1148f9869f84c9cd2b59f35135b55678e654842033b9563023100afe764add3887e3609e12f886125b132218c2397c38888354c8150a577bdcb51214092f8a95924c2a2bb29a363ea769d0302047c435bb500683066023100e2a9dc76ae47997282e5c7f5ad9c4c06c82d0064b051dc089743cf807a34b5092829f39c61f11eaefc89f3778d534995023100e6376bd7d896f8712eae676c187349db11f2ce2113c23e621bcf19eabd56aa005e3b530c96aed17f79cc226503825e2d0302047c435bb5006730650231009b56f07dd594ed5e63e93873aa539b17125e8ad1d9974478b3d8e2b036c5969480bf77962d742dc1426602b81987256e02304d9cb090c72182e41224544247389f7839e8e5625e749c1f7158e8e448e5c7d7e13ba108feae238cbade4900327c1e440302047c435bb50066306402300d3e95180e85af7384bb1ed790cf1f7f8d0964b182478f047f27bcd5477c9694b436ce2e3f92d500992f059965b77c07023069e84f4e07a8ec050b2898ef70afd9c3d8c16b648dafbb51664c875aefbad6f2d1eff4439d7fcc41f0453b3e36536df90302047c435bb500663064023044e29118969992a2701947398b095e64efe4475e539781752ff2cbb0b8169133db9e977aada449234604af00c937428202305556368f50c4d980340a3e669d8ed2db5562d5f39779e0cce541363ba71d993abe97c04bf78e6b0823589fe045d5f05d0302047c435bb5006730650230463b2d06c3eaeeb6447fe21f215ece9b4e80cd36e985c0f228cf6453d27bd934692cec7a86bfa314d4953692bfe47315023100894c1d120036148068eb34fdc6f48bac087fe05fcf2ee88b857e3770de7c84ffec91eecc9f8b4de7560d019b1a2814ae0302047c435bb500663064023073c5ffcee6e5d5fd3c92da2ab5973d39bdaa1db7d29dce251866821a49c48e051b5ac76e7de4e15d692870f22522b34a0230642108293f8b6870c01d04567a0902c98402b2d43a6f029e893fd6781b6835e04570ffe2377098fcae56e65289f6a9350302047c435bb50066306402306a9450d410df78c04132462e3494f53fe42c3a6b64e9eb6628f8f60477b95e6869603cab4e7ff345355eb60c78ade2fd02301e557988b81bebe966870f7698cddddc18daa8f248ce89286c3a6de9ef7ecf15619e201f5d84e72645af91c0d38669f20302047c435bb500673065023100f058643c46be2aec61de2e717c0d91145482f905eb7446fcc0a1b7637bfa87901f6a405c3769a43308e6f814f945e7ff0230774fdcbee0ffc70ca0ced19c37f077e4c43c0f1c98da9ef62475bb56a4388f08ab608712dba818d33874ac77f46955000302047c435bb50066306402304bda16b461012f5717244b83dbe3d83060a3aede0b3e35003dace762c53b2a574301bf0420e37cfa54b363b6a907d39f0230228f3f5673492df37dae9d4d728f01df816ec5e73932ec8502cb2065d0b74cf51c08468f5f675665107345bcf0fe72220302047c435bb500673065023055166a46995d5f272d710793dc4585cb97e8b91c7603155835778b2e8bfd63bcb3361a4c22b530bfea72ffcc302a00cf0231009e2b3d9276699ff537a375e934b49aa23ef840b984b1fbf842367027dd45014a2c7dee124a26b0355707c43d0aa793b70302047c435bb50067306502304bedd72e5c94893f1e73c48aa87f9dc461f1b2a7bd601f9b2494cdb389f8cac27fc54b3d14caea3e89b1557b9f9d2c580231008c33f3ef389a4128051790e077ed7b387ceaa06d2e7ae06109b543da07cc461abfcf98ea5641bb060d4e39c5345fffb90302047c435bb500673065023100e8961109c2db4073131f758f4c46da68d388bdcaa4d039d75a575b3d37953d989e0a67440bc4c44fc58609d291aaf45b02304dc7f9dbf50a2d92f61ace6e69b32eda7339be6fd6b842b022a494b1b05127d671dc0a506e10cb04dfbea9e2fc225eb40302047c435bb50067306502301d6b3e13b050d9619e85b3651d99bc69a3e255f96169916a5f2a7709da50c4841151db11ec2e2d77a7c1c464c20257e1023100b11f47c3a1db4e3978b2d9d939457e76c1b8123b2d1ec998f18de21fbab998cb5f03a12b782e08740126ffcd54cc0ab70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ddaf197e90955d2d3e33d34f60179195abb612e941b6cb1ee2a52a00daa7153d3598d302f50642bfa677bc9a177e49d4023100912b7f3569941614b5366e66e8b84bf2207caa017d2ea1929e8cb1544bee423ee2004d06cbff07890cd2071785f8a1b50302047c435bb500673065023016b1f1a1e78a506ba2345d1005908714f9a867d69b2b301f4d14c1621c9db5dac793e4bc0de8ae3ad0f073624bbba494023100d5445a0bb1d8d9ab0b5de354bd6528d8b5f2cf06eff7c576453d6bbc2981cf9563663261b95c1e19ab6367addb075e810302047c435bb500683066023100b516dc5a1cf1fb7b2b255f707a24a65537d8052606f140fb32de10706063933b561fedca3a913a2d1c2ee4ab877b1a88023100b21730be57eea527ce4f5251e6453f9d1d1608ebbde1e4ad696310aa428331c2ac6ce9b5e490cacf2c4c8c12fe3fa22f0302047c435bb50067306502304e8e71e285cc427414342c35c2a2efa7a52acc2d7910fca0d920929d5a09ba139403ff18338bc856a41568808afff24e023100f0dfbb1b961b9015234afee98e2450bdbb5a03d29b42ea13ee149232746b20e9e69510f2974be540ebafa626ceb27de70302047c435bb500683066023100c4cb2d1753512025f9f81fc514b9db5ab6f68879d7494fe804124f597f3f3a04ea1b69cb014e7f2b4167d278746fadd6023100a13cde7efdac6c4d0d0da7c95031e69beae7dc9ce12b82e95088cfb52b247fdc071b3bca7ef9afb6a1d5c6e890f81d7d0302047c435bb50067306502305aacd7e262b5961046d038ac652bba11af69b2796a0c1fe5ee8ad8fd2e35a5a8e92f542cde870bbccc914de31a0564a4023100a574c3781acabe3913b4717847200bab0275a37142f2fa24118c4e972bdc0ef37fed35144391855bc50a2eca1797332b0302047c435bb500673065023100eed4e7ad86b6ab5b537afc5885f4c941c25496b4f82aae5e986ac06281e5100fcb9f162f2add721e9086e4d97ebe62b50230121c5a4b3b10ba1fe64a3cf1865a6727dac3afc02db6f7e1757559bfc3738a4703e092081cc603b34534dcdce721a1a60302047c435bb50066306402300307939462caeda712ddecb2de3ceab04d2a7785038a72c42af7fa24d51308fb92e828276d8d1e1ffd2afb3118a9b5b90230727ac314f6a304cd45a81bb3875c7437d0cd979f2ca18f018406b6323ea6ef772b23dbd3e9a10814b573ee4c4e550ad00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230795c7bb9e50335a476286b8a9501d32719a3b82dc994b0b5f063cc9b26a05e3b3ffdf66518f0c73cb486825263778ac202306e7abbe032cedd662104b97d515af5f951d63ace85cea4f4de1f1b503a5777dc28b01c2db3ebb45f4aa9a0111fdabf7e0302047c435bb50067306502306bba4e2f5faefe5b3d416c12aa4edccadaa8ee6557b41620a0093c4369403ca9c343b8039d557bb2df31d42d1b79dc14023100a006d2657fef8ea0002e078acfa9d95b7813ac27718b86cd6cd5b34e39dccadbdf173736039dd2f8a4cf05279c0a5bb60302047c435bb5006630640230759403e140d059a375b77fd11fab26387de79cbf1cb31afd39459509c09b8ebebd3668602bae0c8eef2c2af3d36a1a9d02307b059920192f47542b45c8449d9b4ce35aaa2bce11f719f4a8fedfcec1e79ee9958eeae6ebc890d85e123319619591850302047c435bb500663064023069cfadbbf6ce641cf505caacf406c1ca4865c98ba8fb9662ab8d860253d3d298060c0b1ec52ad9231610a51c843ff9fb02302b5e2d83b219437e3008c5ab522c3a1363da9528d6fcd516564ed179774a6471022ac863ec1d99200cef8eab11698b000302047c435bb500673065023020de99e31c219c6e0beab01addaa4369f6778426a49e7ba957db3f6cc0c10dba0d012dbee3b42f4edd840fe0d118a81402310083f02ee139abddd6836a2eef1b7db7656938c5e33eb0ecaf250e08cc36481f966447ddf249555486dff4f48c64f1b8be0302047c435bb500673065023100c2b5451077d2e5a15d34416cb5d40438e9ca4f2c138d9d9c031cae8ef3617e1dc20666e50c9d4395222ac331e75572710230769666b079e5e5babf15a9302b1763628d6cc5d59ba6fc165cbac18460b6f29c66522ef9f8acf02d560287ed5d3a0c450302047c435bb500673065023100d8efefbdeb222d8b6fdc498968577d7358585a6c102c88bf390460afe8ef6a3ab94690f402d37902c8fcc9bc50d7ff19023068eab4a4cd602847eec76134b5643ab06d3d1f9dcaa07d4f390f7ce1b1b06df56f31fc623e4579c8a57cfb18ab79fe5b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f4ba4318f883f5956f2ca6665dfc99b92f0b7daaf2a3d60a2b5f7d5ce2d05714265d828442875d5223c6f7150b9793ff023100889324e1ab66daa69729d27d485712645fc27b0120886890450a1d00885a3f3287ea2ff560425a2e141e3670f30fc2f00302047c435bb50067306502307523b1c01e2603dc943de48a4a6cd49a54daa9d7f393d36def53e4a6bd2bacee85746e988c84a3bf0e1dc803a5c7d316023100dbfec4487c35384fc17e34b05dd382fd1e026247b9c8e6a29edf6ad5c5bffafcd080627d5b3c5533afe70bc58dd2fd330302047c435bb5006730650230361804df2208b22c6974f71c3ba418973b33ebb721b3bb28199cf8fc09f1c95d0ad620a7e2dd0c7f52aa11fa55ae7a84023100df7f6a0015a9b752f7946d9058c8dd8235c68cbb33d74e86435261ed96d2acc85ff5b33ca27a0dcacdb7c919d87c7bbf0302047c435bb500673065023100d5cd9851cd93afac5e930916c0def729bc92309986c634fc27627fd86fae5804a1520e90c8c6f4932d22a75885180fca02306b702c3dc385d7d31120730178e494a007f666e16b886eb8b70cb94a74072db7997f71c99689372e443211835c5d89f60302047c435bb500673065023100f38475bc4ae98f56b215f55030c6ca5c2a909bec93a72b63ada3c6ace2b2bdc89b1a9f6d0f4979c0642d27d57142c5b8023068b46591b48038c562890a2a6b65923355dd6abc6e341b26ab8685eeee5fbc693e2dead57dac6a39438864bca3f082b40302047c435bb500673065023100a5227d27a9341138dd6bb11aaa567656d510295990d3f8eadafe9fef7ec5938370d7ea0529050efe6874d18d7e463e0002302a98858277bce22013149a47f68509fb2a557ce73b233d4ead3ad6c5847d7389b786d8b8dd0621a0178b88837db5e30a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a95718e81c029d27b025346fac70af839d9eea4ddef02515fffcbdd1006a4a036e7441ba77b0e5ceb76d89aeea9479160231008c593b003f36f469200d8806e49662cbc8987f5a1f10783d1be269221d3075043e043fec11629a23db458f84ac88e4020302047c435bb500683066023100c8c4bc334afd00cfae9e7888e2769e9071a322a7b3bd8dbcd4e1dfaaf39edcfff9992d5fed7b08e45526aab5e0457cec02310092f5900c31db35e648a1fd09fb11b05f3eb4151b77299f6d8d489bab95c7715ed65129e825bebf86bc03207303931e0c0302047c435bb5006730650230098946c2bed596c26e46d54cddebf8f5f8ed6a6cda74a6c7b771e77ee92d11991781a551565e1b2eadb44d077f898f0f023100a5b2ee6afd20a1258443b8822a3e92c8b3f5ef074d86423814efab799e41f2152e2f68eb56052121e8c9d15db9d0e7c80302047c435bb500663064023027e5a5b3f563104b1bbb29381760c3e919939de483a657901ab72bd8a8a091b193c8853c6d009c1770ea1fdffd99147b02307d7eb9b10129c0ca0fad7598996786451c190c63f9317e7ffca489ee2aeb3b7425acec7d41c40ae187bd509b2ec762860302047c435bb50066306402300eca1d57cd97050b26667b93845da54562bafebf8d44aee7027109df36e5ea17453bf477fcfd4e765ded4e5ff605c9750230485191caa061ae9724815dda92e7c5fdce72210113a9f2d312fb78c9e78ef4d3602546da75bad1b91d943d3a4d7e566d0302047c435bb50068306602310086f30d98192dfda984518fb09106b524f7e02210cc9612a9eb6405ad2dfab2dc2be5cf3a3cd84daa81d3ac79ac341cdd023100b30d3bf9943229dca023fb0f8b21d2c5af0a7b6ffd22ec73a9df9ca3dc5bb5781de3fe993b10cbd77c659a4d62561c7d0302047c435bb500673065023018b7d21d3d423833774d73022c3076fcff8594e0a3f239f61f73ad8d698b4334e0fef7437f6ef5f68b25ad30eddfb138023100da051d86566fd0a4f970c62d6fde2bcdfffbcd885e19fcfeebb8dd7bcf6ae6bf25bd5bcaf0fb0c367dd622aff8ff0c9f0302047c435bb500673065023100be2f02832c57c444e79f281f11ab6db455bc48d0c31eb083392edf6cce7069aa55d1e02a9f377072b0010538aec1d92402303a8559312715371f42de517d3dc554e89c9c4c2e8d9c0cb4e2375e5b60437e3d47f144b73d400b45120f364259d0381b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bdcea7b75f8811c463dc6bfaa1c50054096b5f944e26fba5e6806a75b840e9a505e00d2042fa5b13e2e2972cf402d46c023100b28b7cb10724f7ebc137127f60efe63c3e94b23ceba569d38fcaff446e6066e3971919e1b012a9dc76bf70328305e1390302047c435bb500673065023100c2b43c0d3a61be23974ef17040a2d0643e448fab20e1ce1875caa7a553fd7b7655f94dd7f7b5e978191fedf3dca237f7023052deb7377f6fa5df9af0b826b64d3cb2bcd6bb1d175b2b304ff0ed2e0a599c380c2034dcb162ca5af421de5436ecbdd40302047c435bb500663064023045ade5593cb57740461a0b6151c10e00c10609195c2b93542f4d1e490ee24d18e746ee1c5bc6eadb530433cbe389d1800230555387dddc40625a4e8f156276226ffea6c97879a1997fa1622bcdd06b8d330c09bc781a67355dc545a31f5727d0cb090302047c435bb500673065023046b43e2d8021677a5d47705a50ec97747ff45044a669e97637d311bae75ce759c75eef5d2b271d7e634c71bdf6e9984a023100c3697dd5ec377bb064256cbcf5985946bffb74222703bfd3620e75145146ced04220342683de446ee5f24fd862d7fd220302047c435bb50066306402305b14fc4c06e752fb2605b231589299a77d51b63ab31fe927af24eb40b10091d2d7dca59ad0cf7085778ade62800c35220230194091af29954810194d77cc2fa83c705830a1845d9c5b065dba63111f45ee7f71f09e8007af0830ce372550688556550302047c435bb50066306402306e79371c21963a94e9035d9d86cea230cfe8f3a33856259942d90f1a1ff90d1f48a5dc091d67fab6f9521b4b04f30e6202301d330677625d727a1bed81c949fff44a9c93c341a999135d86ae7c5770c98c5bc96dbbe780874a5be081aa7b819bb33d0302047c435bb500683066023100e17dd3c89d24107b36ffc5ae881a126094f8ee4f4ad9c8241c0f6037cebc42cf23e39a5c540f08c2170cd3ca40dfa575023100c3a0699ec2575708cf62ed5c230f242ac3733e476a5943b37fa45f56af0f576f943db35a23afe6e662fc38c87c453b7c0302047c435bb500683066023100a3e95ed21bc98dfcdf24e48ddc97c352cc5b98d11ca6189c4a4be10752fded990e1ce1a8da96a39a30854f462c4cc3c6023100d18b4b0151efbbce8b659d311b78658a2a8d40921b7f89c99a0729771036bff1e1ae91f55e8bb8c3f0a7c38d71cc2c690302047c435bb50067306502303cde0053799462f2f3f487537c944336af389e6610acd1d6a5b6adf89559ec3fb78271f7e36a68c8d80e2271b71dfcd6023100e3cdbe80070ed246e671b9c4ab80d3dd48e3b4419851915d0499c45f7088d788c8bf6c962b25968283177882376b65e00302047c435bb50066306402301dee6bbff33c6dc2ffdf3379d95b5f64e83971980c2f38da96f56c8e2d40014e9de938380ec859cad69bb307ef2e13c70230180894d99fb5357c2db6013acafaa02450356ddc0f8eabc98377e3ff99575ba82e07f6eade8b88a59241af0bfd2d69820302047c435bb500673065023100bc312bf7d5ac1091207ffdecb212dc1219add4fbb255e9019b6be293b058a9a9d0fd8266912bb313a4fcaf7c0f024754023031b3069d1c684c706947f67632ca1ea2156ddeb3a22d55aca2482721c79a73ee9ec147cb4f295d0735a81607defd1ff90302047c435bb5006630640230170b34b1a05c7b8e5595b1f2fc09863c54f1b3df2b550c38cb0d41b0eef84042584ee1130dd4c6c02c9f1e360f32169c0230278df019a12177b9a2002a5e0ffa41458e438f1a6c9a9252f3fc70890bc1d85c1e4a3346336f6b751293fb32b79781900302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023010d4bbfd7116e05a94dca848055f9d74670ea1a8565571b8eb22f0a896b56b7a9bff24163478b9d40a8011dcd2582a3402310080511020e3be2b450e53541732059bec7462cf535b6f8d16a7b2a71c80e4d068533c7e1d643357f3dd839b2572a8e4110302047c435bb500673065023100ff5eb80decdddc29fe89bbb00b0772b34965d230fd06ae59a89eeb42240dea25abb5f438d29846618db3ca850efa168b023054785286b2621565102d3602e9e5908f13aa6ce726c5e7a25f5df132895c2dd3d54e8db7a2f5f83e1ffadfc387ff0e6e0302047c435bb50067306502303030d81fbefff8c8cb535213eb4ac9cc6623b7de0cab728ce3a661c73b2e4bef4f985e1e83556d5b0b35746ce890533f023100a6aee139c5ae3f21231693d6b910ca258734c76fc0983957b5f73a18255ee0b70a8c2ae69d6b273d087642da1ce681020302047c435bb500673065023100a20e0e4a5ed4dbd16d9a5d0358375d2faea19ccc9c3b2c6ef2e55c30a77cf32b1c6874c219251fe1d239dd4dde9d72dc02302125a14807289524cfbe7018fe751ee6f8072db4cd386ae9f58bcb34a8674eac1ae5a0d9dbe55049243e87c1c08f0d7a0302047c435bb50067306502306a5bc7850e683d21605453cc05d83e4403327ef8c071ab66e149a5c26948df0a51d0d74ddc2ab03d14a842fdae80a834023100e373f491ba945a3159dda2cc8917e719e9c13b998f8b3241a2792d11e2d941b6d6a91dec971c6b268aff6399a75e3e330302047c435bb5006630640230601061fd152305300bc14dd04a9c8a096bf5235adcdbc109df06add3f6b0cb55784cf75f18029e49a9b1d8918641fe5c023041b47328396a0150aa2b6d9f18905b575f54aba12ff15c7d7ba9968821f9e5fee9ef38ab188f0ca5c9646df185fab8db0302047c435bb500673065023100d1b66410fe4535e47220b8622a8a6663e3570e207c31e6b4b69851f3d9c0ad551837c657a30e3db5e5fd25c8ce44d4c9023001eb1666a4a844afc8c91b8bfcb6bc3d6828044930f9ee76bfac3ea25c72352c28b15a534a928db883ba73bd199d42120302047c435bb5006830660231008706d8686858e0e32c418214410ec8842602446fdcf2f6e6a8b12b6cd270bb0670e9107caef251838d4b6d133d46e8c5023100a0d2988bad2a83033f9af3feb2c510809ffb5ddc5b4ae571d7cd30328d678766659eb789d90a2b3a4dec2a615480b5f70302047c435bb500673065023100d6fc14e39ec583af63dfbe0db3a9f6490165b7b0a7409adff9078c49e0988840fe967266af26e58a8400e2b9473cc157023007a04777009bf7df136591f2aeb3f20c4ab5eba9232d40f7eb90b79b61fa7bfe878e442cf0d39e90728ec2eefa1c2a270302047c435bb500673065023100d76b5ec0f33c87aa5e77d4f4eae43ed92efc056f5eb7abea86b911ccae82010598fa032d7f930e1897d3dd5d83746d1a02302be402db1f0871c1d33764c5953967f6a5699145578a76d61cc77ce7a84efcb97c454a0ea821cbb141639df5e2a64eb90302047c435bb500673065023007d60f79c2fd9a20960ed78dfa3253db6193c6c29d25ce85b0bce901898aa6a980fd885b0a1f109fc8438a463c8cb9ab023100ffa76ef9976f0cf87aa4bdce97596a9c8a7f243832f7749e5ae7853038b379d751dcfacca558a9124257e08c23b092b00302047c435bb500673065023100f34b299abd9eaaaa82cff9ec37b758f01119d1391ad32bbc568c29c106362df37d1213c026155ea0168b91e5f6dd68920230060122fc5036d90ee0f2a09662d2d32e39a9e0f739de5c1da9bdc074da82ca1189911334d9ac2bc02e717eb1be10b4d30302047c435bb500683066023100a1ac388100030b9a4ef0ec650d510b811da4239aae37d16374c1bc4f3f2ab4da22dc79076f7db1df8231039682565fb6023100ae5117d4b928a5dfb82c1ce502bff2415df8f1d17b68f781f46754e5e7d30e86568f1dd6d98a1a75bf42badbd03921370302047c435bb500683066023100ec99d0da51b6e864ab69c86b7f8c69ce8f801217d93003e3da18b9410f0b2b25e8a3ca4ac773eb8ac8420844c13131ee023100802732fd8f7cbdf6a3b47a54b1b2668a0a1388a79eecc3407df0e8a84811864a5b9dcb63072a0d940306678c7971ad3c0302047c435bb5006630640230490e77e244a369fe3e8236962b01096b14ac6b9725ae7a93f4806ae244f8d7824704fba118c802dd627442419f485682023003c4f4b98dcda4d8f68d4f861c8c44b9131221d6886b41a9f767b6c69c894eba9bad059fe14a05d142908e82d3a2f2530302047c435bb500673065023100f6ce2bb877e77814259dceb378ad33930b5d320516e1420cd9547c5b68bdbeeded9a4c8cb4c0e4c5eb56b4057b8565e70230593fe01795e445d4b0dc255b5ae775a0db4c679ada22fc4fa2930d2b282375da4565eaa2f2e8430de91ca6a5d59e8b610302047c435bb500673065023008fc6ab85b5c1cce5ef758f447841a623601d9e66b3a856e3760289b827a92159b0e23f87cb7f0ba5908e13f7df7b0f0023100d5ee025df9d625214203c684a23ac253b2e87c2c61d7abf865d2140dac8781a833da299d4fdbe060098ad90a21274e540302047c435bb500673065023100b583f1777a108e4d65e9ae08aff6859147839def6f91e8e923441cdd36f3332df1f0082d94c866ac21fc350b792808d102300af1458a42dd320df6f4e94239e3f9c7698fa2f75dbbf5c881d7e211bced1830a2d05d44dc98dbb1289e7e7ecd3194d60302047c435bb50067306502302d5a2d9a43e769a4fc8790ab290817c1abbf08c0e537565aae580df47b2278943af81757b4e5bed5e3b17fe6985edd92023100bcfb5271d9573c06eab361cd48ece7445935028b56578c64f5ca16fd3c07705e9b1e58aa53c0ecb4a716583cc5cd99a80302047c435bb500673065023100a52a3b249804bd98aa8edc56ab014af14887035a7d6692f29e338e4d4b8cd6227606063df77e09dd3b28baed3ad5f10b02300ba41a2fd87aea65be3241034922587e0d518aef096f9b05f40016246670b57d01352d1b862321d8ec31b2789c9484980302047c435bb500673065023100b376c272a0ecdda47bf1ef2c15eeaff200e368774a97392b8f41371b1c0934b2abe2d42548ed71c32e35b75aae0d20ad0230736491c766e5de1bb8dedff8a139f49f69b0c246edc69a8f7d450a854cc776b27b14baed0c9da409e9f716ddc7757db80302047c435bb5006730650230403a61f776f4d86ccfa9fb2b7000aa483efe9721dbd06caa323f11f40375d3351c3be920da838983841e9640de3fd874023100bf788ba780204393b493615a7519a84b79eccce5d248d87e08b199968270de39894609dbe522c6b2c697e147542cee6d0302047c435bb5006830660231008cb6ba52c6ea4cc84e0044a7cdc82088673f61d8fe79683476551abc023a6c05c2e40e34009d1175d7bf2d0b27094846023100e9c817ef6e64e8bc95738e137eeb8af6f8eca39ff748830607f2dc82e0308d6da6fe63e2009b6e4406076050a23dc3e80302047c435bb50066306402301ef1f34013a32ff365a5330dc40f99e436866dee20e6fabdf77573446752c3438cc812dec2d32d77eb353d6b6c7c389402302006c4f477b55fcec205dfb0efba8c826320f544b67d3b021fca5e79bacb7c5b52ab9afe5544f352ab2190d6b12a72140302047c435bb50067306502307a1dbead5772ac71b0b0010b11270dd36b8de4f93ec9eb417e0a25f75ee63ec687112fdc1ed94031718d762a55a3c5d7023100ae56dbe798507a5a26deaf0867a0c1c179def8d68f8e4470590256ed1c5842d8d3b574ae6627dce6fd2a5b8f19524d1c0302047c435bb500683066023100b6f8efc29bca50e18860c3cf4de21cee383558829629c27e29c023fc4965a979a6bc90bf055734058e6d72d82ff7e59d023100d24e0c5cb05ba31b9e40ef80a91a7dfb1502a18d3389295fd3ffc962909dfa7640119f6c706753a328cd836fb9689a2c0302047c435bb50067306502303774c2d581ae2157ef07c6575090c76cd79e9d7147a7b662f6a93e0ee33f5339d841d3bb1c5ea19395844cb1aca555cc0231009083e875cbc14ba8e14b330d3fbd6b322e6c4221ac06c0746d087999e80a5c5e400f58347d425df4e319caa920fe01fe0302047c435bb50066306402307d8b81924aaa7bd4304081e0b15e03da183c547842a4101305d8ed1b245cb21dbd423284c9ff3b1da708888c5032f3e20230492b4fec2d210835095d2c0d3f105f5e43e41e278b7696e80d7d3004792eb5b2be8aa726b66603dc36f555a3f865592b0302047c435bb500683066023100f6c7ae7294653e35d955b324ccfc83e157bb7d384ededc70647caa5e243606f5710012048bd668d8974b815a99678fe1023100ce967ef95f070c612a4a5888909dea2e99b88743490f8f2172dbc21f81f6346d94cc3995daa1e0e7295c4a4228ee52bd0302047c435bb5006730650231009e51898a2557571fbf7a5586b8e79126ae4a9c57ffa2e036b15e5a9fcdc56890142ddace6ecada3ede821f3029c3c1cc0230669228764cf9122a5a8b7dd8efd0dfd08d274cab9cb128d4ec202818e933a5aa86d01a07d635211bc320b5c08f9a66780302047c435bb500683066023100b02f7883661dcfd49e4645e6068963b65fac0ce6399a78ab69aa00723b9249a31ab7da252515dacb454f616cd35bfd5e023100c3fb5643cfb43210a3ba35a05bf5607ba7cf013fec3f0b412630c1085cc44d78398643bbae5b4a680b9baab755a429370302047c435bb500673065023058a338aff0ed64843f63117850e84064abfbebbaf7feb929172510cf7bbeeba508949239ed1ef3f15dccd833f38873a20231009dfd3ddc1bde9385e3b11c8af5e3b9169c4f9b7b7d56c68295936d0ba52232d0a42e3922c0aebe7b1a0cae9cf70f396c0302047c435bb5006730650230070e9430926f5997fe61a59581480666c61b108d4fc4f3673c5a9041338ee873d322bd4af0e7e6865c9199710c6711d7023100db21ebd168dec36bb14cc944b276697dcb7520f57dfe85731a42fd4478e2add67c11a03377faa8a8560835c45214ca3b0302047c435bb500683066023100f2a75a07a87475d804c32e73c5b070bc40fbf5f639b1f609b2b5648975480e2fcb2bd926b67126a39317244acf17f83c023100eb77642c6b80e7909f7eccdd8aae5de69696ac7cf10951c561e50703f8d046b4501b03928781659124de2b96cf47c63d0302047c435bb5006830660231009c6d433057d012a0de4737e15d232e39a623484441e21064f98e838542f0d8be929277263383c8fe402cf16f275cb29c023100d728d7f8e397abacc997504a1c96c8230f7dbad91024a69f9e815d4ad088ece42c01194f06f5606c115f4cad8d6505be0302047c435bb500683066023100ecd66d3ab57bfa5f6674624f6aeba8c66d7e1d6a2edea535b88a6bb01c1812d41b2ff80d59e6cbfdef9b2859fa989e1c023100f6d5a63eff9a0ae668d37460b85b09d13e99fb911047e73c8748b14a1cdb60f31e324a8f2dbb0db48d399344196d44900302047c435bb500673065023073921bff63eb845acf777a1d6c747bfb1f7d7d2877c928688d7b56d2b0db73dd97c5a603b6d1dae2b4e74eac0418a287023100c813eb9d2605d7743ecb289804b01324279d16fe9539fa5023f49dc626c4475656e37c4ff87163d6530698283339d62c0302047c435bb50067306502303d03e89bc0ea40d7741bacfc5fb0e5c05ab270c2e23861d8909fd036bbef1c4a2a8fe22f8316358c998e6d24394d0718023100a00ef091704cdc948bbf023d80c089274cbce3a103e28eeeb22f8aafa33b6fae0816b77f4b1dc53288ff09bc4a4868820302047c435bb50067306502307600c05bf8771ce964bf79ed5633b8b479863ff37bb1695021f14ca4f9aa17247e5ef68837621ab2e11cee2780dfbbd3023100913b770287f96cf63b1a305aee716a2b71953dda42d185a4bfb50bc1605714c22eb0502d4ee91720a4d9c99fe133c8610302047c435bb500683066023100c564ad131d937c66f6542187ab5211b909947725c6c651a2f6e2c6af439c6b5fe7bf5ad3abf49df9ac7dbc675e8b2cd0023100d56a8654b4feacf2cf3aedf07bc4211979b5a08f456f8922d61bc10092d607a2f54c077ba503472ed638a3bbc13d14170302047c435bb500673065023100a0f694c5c71665cd20cad0332f55ddcf929626cefedde88a0e917485af11f465d6bc01c9402a74053dc6a0795c26b72a02303625566b58425e70cdfd133d10347a13112097dcf2f337d0c0446e045995dec37a46181111d2aeaedd4daa1827d72f280302047c435bb500673065023100af3b690c45a77fc7919177073825c83581c5e9bc7358c779a4dffdab515a8aa7a944793f7ea33e90751ca8c9f2fc820a023052772a1e109b972a77499bd8ffaf16e68774e73a8ec718be7c57550ad6b9fbcf3aab7bd399bf069f9b134eaebd915af60302047c435bb500673065023100a13ae55f5281726f015b62255104f255907f75f17abfdfc1e6b4391dc3f5449a20e869e26f4827a60d7cb4ecd939edc1023042746833d04ca602d06c0ca07bad2421cf2d551e4d3e5425aca9f484544a1e8684267de0941ed91d14460262fcaa0e0c0302047c435bb500683066023100cfd9e8502e022a7e1fe8b3d550e403ce5d80fbf594bb0932c9da8eada534fd4e1d375fbd9ba523efbc24837586250e67023100e5b512871d4faeb590e490ffd3bd5403cd334f5d06791085b4c021749b133bb57bde0a7ca52ce6c03748080a5fd4ff2c0302047c435bb500663064023028a6d82fd64c5717e555e3c831cd8f992b0560056849afe4bf4ee1e770dee0e677f789e06cb3debf485bacddcda917f1023038579f879563e8428e10e4506106fb494ebaa3eec337af509a619116711586a7398028b60a8c57434fc51e86e92a33b90302047c435bb500673065023100a8c7a74dccb53ccf229baab8efba73886c53aa407a43071dfa626469b6f003db6e878df0b82f01091d025a972976505d023005489c837e938f8e354e0d569e2cc262c783d97d7be8a690c93fd86b1daaa34887f4e813f9cbf46f71dda9d99fbe87350302047c435bb5006730650230722804b607a51d71e50b75dd353f2238162d1325096b97027235e1a1bfdcba70178be0e20eed76b6a18c067c4ea76248023100b4b690775e78fd8a699faea5ac5aa0d6a3580ff124173af7dc00c4b71f32d32220d50d5980242ec337fc7b709e9ea2150302047c435bb500673065023100a54f6bc05bcd8c2de952c638498e4f1f010e5657cf932c74bba695f2251aaf978050f82f4caae19eaa44246f5dd8174d02305b5004cb757d046b2184b982dfaef2af86f31cb7aefc7b5e656cfcfacc598d4e8a6cefbe189925d86ce49f79cb2c89400302047c435bb500663064023019aced5d48d31ef9be840e99db440d94667d72423db1dc9420618017bbc55f6cd3be1813a63e6476553bbc546e3ab74202301cf153f3bce4deeef0a25de292b39ae951a0701f14731c017589116e2bdfa4d0d17ec6f4dc9849663784d2b0148f81720302047c435bb5006630640230656445e18def368bf1fa6e1e6c2c226f2c3b7e536df52e8b247b13d785ad91636536437b0439725383ab118f4c86093402303293ba8c7f300ad36c5d9e02660398d67d28d1b5ced273e86e9f29039e9cb33e9b4a4fb09b16ed64876fd81da1c900f50302047c435bb500673065023060e8f4d6c50afe0830d1e63800b9c51b9fee8682d7aba554fecfa8a022fab24cb022a0d8465f347b6a1e0f6f2b94d0a9023100995834d4d2bc7c47fe37e2736adb99be440b5a34d427b355627d045e2390556d0aa186f892f6593ca8b18dc3919bddcb0302047c435bb500683066023100b772f9889993bbf197ec0568022e9191d5a2f72db37ccbe3e04b9dc95f7baecf7d6228ef12c57e5bd2c45ff2c14dc68d023100c5d84e60a6755cfcf0ce838754c2901f23e9f9f7537aff0a5191ef76554abc22b04abbb3ef479258e8a7206ce53c072d0302047c435bb500683066023100ec4f99482ee5bd003ea5ec3f37f5d32a28d15a436a5f558bdacdec98fa1fd9bd0e8b89ef2aba3316136273f80c55a3e8023100f3aaa4c24e037bddf282c1d2b32b7759ad8679c7cfd8f1f92737b14722bb757e065c5791eb5948a7fd08b2b6580a3cee0302047c435bb500673065023100f601b29eeec8a51e745a942358ab91ec3dc0ab6d6b2a6725e0a91f558d291c481802ce867321746cd505cec51c190ce302303b486319abfca5dfadc2474df0447befe4248e7425c43cceb1cd7c3414cab821753111018d3619b493c5d22976e6dca20302047c435bb5006730650230485974061c613699b6df90ac4baa08124cce4c3908292c26b8f2299fdc625c3adbb4dc8e3015098d93a782b58140a85d023100aa4ba76dac2834368ca834d547749dfcaffd43809ecfd93989debea95ccd95f22199ccc177c60f3363d088d9ad0b8b630302047c435bb5006730650230326d36bf59e734606b675b41784ae0c043f260bd6ce05dc21b7b652afb32706cea3ca371182e74b1efe2f41157dc5b1e023100c9a5f02991121ad7c26ed1c369175921dd25cc4bb57243f10dc2fdd68a883cbb6bedaa4d604ccaa3db75ca742f9d1c7d0302047c435bb500683066023100dd9c03ea0131c397907a36a1abce7bc34494d528b62f581e201eeb20536b948c028ee7123a47b7d9a7afec098c176cfd023100c44add9b69e978b4f5c9ac13487e15bf309d4a97b8c4d1a280801ae82663fbdcd2ec8ae84064d215b3d291e3ec8c3ffa0302047c435bb500673065023100e6a08211881dc6f52688e6c793800b681af8f9ffccb9927c05085b96dbdaa42952e09bf1f8cb20ccaf5788b30395fe04023049296e1c7418d85eaec46a9b10fd5b5d00f4097b2f7839f97722f0d5f784417bdefae080c6ac7bb7a36ebe4d28c4ea190302047c435bb5006830660231008a1762ee34e041243092b00c1dffad1442a444ecdcf7f2e52bc1c2ad89ce76eb47aa901f93468788f43674afd3eb21970231009ed1b299176a8a94bc54c6f1558b31f5f745d8ed8b29c6284b1920a62c50ed40a291ac5c88d0b185ebb545078a87675a0302047c435bb500683066023100c9babfc48b3fb199e2578a7167343da1e6df8ab714ffa8befd427619389e6225a866f0c45d53fd7e1d0a46d9ee164ee0023100c54c807510064ffe1ced2002f99887a3ddb825605fdef60b10b373cc1dcb1ab6ab27a2e6423b5351e171d8fb67c3816c0302047c435bb50067306502305f2550f987f34691ea65475bc2edb0ed9fdcb80cdf375d962098375ce1d1e51707e2950c5246783288bf8caebfbafee8023100a317a214e9d859b1763ed9403a73442d405dde83de103a6e02c774596fa0f4bed1af7768456850aa8b32dfbb8ab4c8010302047c435bb500663064023029eab69b056e62bfecefba05f5bcb25072b921932b75e319d59ab7da631713fced83f795299a9a6d410e4d249a97bfba02307c174782e942353506897ce800e4db3d038bf157405b39c309e939be35042f4ca8d4bf5611924a9b79f00f8ceae6c24c0302047c435bb500673065023100f8d700798064f215ddafb7e80851c075db530da41c1dc08d67be349c3c2584a4f903440965ee6362c409e803c02eab9c0230194cc085bc1fd3bfe5d5d13fc757c7d21a7498e2d6cb7ede47a837922c674e1fefe6d63d93ac009a439029d3ffb320360302047c435bb50066306402301d3ca97683029c3a7b3b0d20236b96b5fb166d8f180a05126dc3ec0217579ddd1d34cdd9aafee116e6e0f7f3423c05b602304edfe84f033e84c3d3536a7d76dbd7d575010d2d401d506e223e7e4ee632885fa0b548d904f4b62f8445b3b9743e368e0302047c435bb500673065023100fcb8c014f6136719ddb26ff5d696d1df520d9e95b5eeeffb2c9ea12642cb6c255d00efaf2df99778c660d0ba97659a6d023030dee91f0dfeec168de43363555ac6151a415e8502d0a207840dd14a236a42f816c027e15616b5e8dfcb13b4742932c60302047c435bb500683066023100dec70e367d47a9924bd6c67106777cf5e43576a0f6faca07cba6a8215916a13c76b1116a89f9c4c634c2886e7caec566023100a6ac50d2886f848f3bd1e6e2d0628c5149dc0ce2b58b94f535187f881b9f9f39189597f16264aab7d244a867b9d1f7a70302047c435bb500673065023100e118ac4a7ecb1b20edb8eb7b2cfc1dbffd614fbdbd57d5be7e6906d0e21ccd40c1c42b51f2c33ce0f8aeabef047c140202300b138a9a03de3e6a8273a04da17e3d456370f4255cf5541fe6160719b949ce58512c68710e499ea9a06734351052a3040302047c435bb500673065023100d6d4d70f417326d780b69f3cd583382ed28f45e27179492378b53fb4f8c19dd41d5e5fcfc5093ebd27c57f1ac44dcd0f023064a52d1e72ea3927db8e12946ddbce2d8a96a0bfa4e5d25dbb7f908df4957507097bb49db4ae163f916cbafec41900d60302047c435bb500673065023100f51a2debf7fc4495558ef11e10fc6573a8cd50c5864ed46f62da3be6a0cb4096ac321d39b718dff4f61a52885db112c5023007f980c50a62df6593b6509cefe0d5aa896dd5797fbe4cdadf007b9b09c42b1d03795f4e7e5eaf12738857bed1d7588c0302047c435bb50068306602310085c9a6eef2909abac5a2f851e162816e2b3362d608bfdc6cfbe9c4d55ab99dbac971eaab78e64636c5696a256e1d5459023100e60fa71e6e67408d442f16c5f31f8e00a7289e5aa62ea84a9a79cd5b1015720b1970e5e9c35ad6a4f9022c2e43e5286d0302047c435bb500683066023100a6819133940783ac4c62844d50178f06fba6654783e645ae194c8f46bc2b6b269d8c254cf45952b7fc16afdd1b9c11da02310095047bac05962796ff21663f5f68ee504a4f48ee958b47d331c02589b29df4a4fbf32045bc70f5d5af48d28a6b45e57d0302047c435bb50067306502302cffe1fa4d1dcd5d866c267e1e70c8f9c462b064284a859e3cba398c333ed5f2b5e6ba7d3bd4142e7f5e739de72f021b023100bad1a56b69b3d5c9d07482619b9e4af21abadf6ffb827c94c239c09ebfa523d63103dfcc85407f24e64078457550089f0302047c435bb500663064023040b36e70285bd8fed93ba576f4a966c997572aede6e862d909c6346dfa3e2829fed7f47877be77f3d8a9d06986ec69c70230145b02de8c5c8a932b9281849c42001b9f95798c98ffc572b591651fb215dafc3c221f8ed304ae3bc4abcac811d5cd850302047c435bb5006830660231008408faa78524e045d9dd128f1c286ab189d4e165cde860c20a49a3cf2da6de82ae39d4e5621f7959dab5487858bc4132023100fc5ed5a8422a2fceeb186d1f3514a7da572faaf981e39a1f0ec53256755155a7f99b08ebc38ea8db915576736abb5cc20302047c435bb500683066023100c4cfa606654f896a155bb05c75550668c9b2cea92895a17487b28b294b46ceb69144e2d04bbd7e22c9daee6a35e39c9a023100b87137cddc277502e644769e50d2c562ae5fc0a371586dbb6f8beabb0db46b6eb697685a71fc460fc0559b6215ab36bb0302047c435bb5006730650230641bd0857a09e10714291eb88d057e13e4f3f2f93c01f3c775e0d92d761de7e17b0991bd9b65335bd15899d823bcb6430231008b2a13cb4d8c2c8bb148349b2067ceb82bbd60e5d3d655be51721565c6f99d21258017b685218acebab5dbb8d386ce440302047c435bb500673065023036b64606346511cb081e44a946ea2730484ed9f781851271de604e54445d57cb781860d29e06f5680cef11ab37f1907f02310080e7943e00b86f538c44af5633ffbc07cff7a8bfe2668303120a866cd6eb29aec134b7314ec019aa6c355aaeeeff1c490302047c435bb5006630640230784c5f8a65e4e9893c8edd1de21d3810cdc61bcbc50023531b4f5a42e0f33bf5ac3f39ee48e0aff15ae70fd7fc74ece2023068737d0dd5032d0784b71b79011f727cd5c5fe6aed75f380e8c033339570fa20fac0bdd828fd41123660876a34c17ca20302047c435bb5006730650231008902d485cdbd52f6d979768ba4ec737a726ab8ed99ecc536a87e9a1f86f1c0abca396943db7f13a6b7e3d37cf080d63e023057461c2d37cb1b1af1064fcd25d7c9d95630cc393178f9143f8abca0cf3ee7cb30d5424093ec37477aa4b3189a0038670302047c435bb500673065023100e235b6385283ba9b9e0b514cad61d7fe1ab7873f980899d45bd9e4683cb9c18758c800734b7f770a22cb778d01f44e4702301ca74bbdb2997b3b081b6d37c0d1ee3797f821cc887b6fb7125f03165290e7b5aa2a6e05c2ae56a311edef3d68be90e00302047c435bb500663064023045ba707b22b15abdf94adcc025ea0400bb51e3b3d8177456b4eb4aa152927e9e54c44044d9ed179c9787225c5e8b001002304ebe9d93b5d141bec476179ded235b0e8b2416a68901b317a67baac8fa7124bf12f69694e991c9c64629a9e6504fb1ec0302047c435bb500683066023100b5999ce7c4442c90a09a9aad5d4513f3c117e5e3e05ed566d29239be6d87c4ad7c1b22d0608fbfdf15088282133af2be023100e1655a510a4a7a407ced96f00c442c3d240442e02872722aaf6104873fe08520a32ea7faf5fe70c556db69c52524327f0302047c435bb50067306502307f324de8f425f97c08733c4e22defc843b95755aa93313a3f8bae8ab63bae9cc663056d188c5f3c7087bffcb624ef321023100b1eb7601de6bf759e4a39401a9f24e9eac4ba1814ca8cb10da65c027319402d21300a76343d477ea26db20a0ef2cd23e0302047c435bb500683066023100cd049529e376fb9b95428dde05ccf6231ff53b3bc859a33cd9c2e7798131cabd9e816e086fe7fa825c458244dcd76615023100aa83730ceaf51494c9d1e334d4a88e8726509b56d11e660ed10ce4d36e63dbc9bfd3d8dc6c16094939528ed399e8ad950302047c435bb50066306402305b979dd4e83a884c1bd2579649a424df7aaed5dabac9226bc465175199bef788eb22015f23b5cbe9429b80eb51c0d638023074191384ff2efda32fac3fad2e2f4f64b84a5c4830350c7dcd1c715cea9e35ae8a62dc370718e177d48d84809cf499700302047c435bb50066306402300b3e8b9fe1191ace3f23ad4853762a73d363e4ea9f946e941829080970775c98faeaad2e9c1ac5091a562a3f3545e077023041890754aa6023aca24a9fe158318a792ba652822667ec69e43839e1990824ceebda5ca03412cf45bbb9d1de97926cb00302047c435bb5006630640230240caa92cc01ba651904e94e9b4b250c06179578d934bd0b56fae7f28738e10878788dfc5f6e55a49b517496ab91b9e202304015c46f216adc52042c8fb7e2026f94beda06f2e3a57f7159186a10b6caa7373e6415769bd9118f2645824aa5602f120302047c435bb500673065023100b994e4ec4931a47a72514cf86971af513eaaaaf9a5d21402cb3bd633edf0d33cb82cff43229bf5e842c19c771b9a00b1023006426cd72a09c7248049338975e23f8c33b01554b5625770dba0de07aaffdf27130a68c59fecc91b35a531025d2097750302047c435bb500673065023100b189c3f3922afbc0caf5a31f43d94edd3d68e82063a2174e226895a2e909fe2bc305adee341adc46047c4b3671c60eb502306e112b870498b863b0daef4b00813e8273446700235e8d7c047694c98377121f7c63d2ff4fa4f309b3ebe1ecf5cfd8480302047c435bb50066306402302e1b7aa1348a7b847bbf09930c00e3818a6a9f0f8d564120c044536f8381819ffface2d4d16da50456d507c8d239818a0230752bf1d95072beb7b4b3fd11db8fdbc8b8fa53d2afec1982b508afc367f90a5bd69feab615b04cb37b5e29eb24c805ef0302047c435bb500663064023050aa2921f1a9c775b61ef6fe265d30b10eb4aafb564ff11b1ce296903736b9394d9a30011c35c291895cceed61ba9cad02304fedb6c6601437495fb46f271304a6520007ee822317de3443dc3f617dac8b57e0723bde5b0021f53d2ab9369f6f33580302047c435bb5006630640230232f12b2a949e8773606539eedff4244015fb59a7d9f51e450418057d478d34de1947cc680e18e18df2ceaf5fb4febf2023021305f0b6610b8774d2b4e1f6e5153abd09874ac2cea064a99bb915cd548d7ed420df02020adcc7d8897f1024ea356d60302047c435bb50067306502303020e0f48f0eb65fbbfda4e0e04ceea0583e56b917dcd9626dc9f337e08bf0baa06965970c6fdd58a843573fc05be0c1023100d23315059b957c87e130419516e04a674e70ccc58ff9134b457f932b219931d2de366e3fb1f6002d7350d21f1175c5210302047c435bb500663064023046aeb34a42305fbbf2ec82d01bdf2a5a35eb57f5cdd5d253e89cc7fa8a2d4d3e6e6cbb731d7fe552db9ed0477c65987e02303944bd7bde15addddb52a522525e8054c33454f50f3501ddf5593176a96bc4e54aed6a1691a9e68e21cd8189d2c6096f0302047c435bb50067306502306937dde17482f53f06b075fc56cafb83f739221fd822bd050493c6d63bb5672e70cf726bb6288a2b459b5b928ce2bd65023100e349f56d0d766ba7dae5bb2c184f860c91afd13a3d06fc34840ea0738fbaa09962a3a84ed7152c0be0c0d5238bb4f0fc0302047c435bb500683066023100b612bad5a4345b19e7a8d7ea0df4525ac726a377e058e5301d5b131eb56d94b101a0c8bc0f85a7750afd329a3364bb49023100bb75dc6cb005cbd91688cedef9181337039e02db627d178eceef4b33810f4ff61b6e2fc7ebe09dd25aaa48be0367ec170302047c435bb5006730650230634b46f513b6e550dd0a0690a1586de47565fe857d9b772dc275fc08059bb892d3bd31f741e4054a92c130d63002a2f2023100f5b7661629938c3e2efe4ec7cf2249c5a1ec05895bc8b62dd51c76d2e5cdece37be6cd67617079ae369579073f5e62340302047c435bb5006730650230022d5ace4924eab6747a86de31a66817e029b7e726e8ca6334928a7b3a83bac840b8dabb1bac7d51399a800cce3eb37e023100e6544a28e9daff8b544562f85a453a96ff93467b45457370c62f4ba2e2f9324b6b93ce1b15b108e7851d1e2bf66dc6780302047c435bb5006830660231008421db75692469f5f1c7a7374ece1ff05bf199f83aaee43d2b49b45c43d960fd7ba26900d03052d8097d51e3a6bd718b02310080d47118fe2b5d2152ec278cda6913380bd4cb88bbddeb0c50b53e704475eb91ebb134e458021d04b758809096715fa90302047c435bb500683066023100c95e190b5ffdb43b98d8159aba0ded97bd53afd27d8d9a72d99f39d3b82fae9bfe83df43e92c39f019ec395cfaffb99f023100b0ab80ffe835392254c451d94790fd316137c2be00ffb306bab578e9c0ec54dfc52f352a663a721daeb47b3b2e5ce0720302047c435bb5006830660231008e823a8f5cfc86b2e6affd04366217e6ae5cee5c18b481753be4269442007c88a25114eaddb6c39613285a44ebf019f3023100f33e107b72d7ce412899b182964a9936ca50073ae035c6a70a47fa9f7c2fcce0c8dd4eda38656a83d1cfd41c466c9d330302047c435bb50067306502300b8f5dfcdecc328c5b3a5b447e293776ee5913125432d31a0c94f7821cfdd6b3053f6290c1f1868854f62c6768c39a08023100ebad8f10edcc8b96db58d7e0c401fe0737ce188af7a181f233fbd98bb3921e03dcb8321478e390e63310a2e74aa898b20302047c435bb50067306502304d6fa354ec73f9ed7e21fa917cf2c0355c88b13969d7923555a4624f6fc568f52dba3ccb0511049dfc122b7a32653a96023100fb371520a03bb53e037d0d34c243f24ba1d5caa398569172ab51d45aabc93a50aa41e5dc7bc016d03906313cc8ac1c880302047c435bb50066306402300636e984f2c55314bfe1402f9eee44238933fe415afd5603f029bbff7969ebdd621b70740a4d56a429a439bd605106bf023049c836046c3ff959855148d504b3749608357e2c37074cde9bb4af4ddfb246193f5602a7d1fba4e2bb819de1c7a018750302047c435bb500673065023100a6ff87a7e1586b179ab820d7758b735552de660e2a9407940de2df21046c30eaacdf6bfb061f258d2261b6cd48c637c802302fba65867330f9a8427f50d7089863ed1197f54cd5b37336a02978d3847ca4424ceadf8f2f8ee2f563df95ee719fb15f0302047c435bb5006730650230546cec184cd14125e21f7479d95b1e1c268b41772152d510c85ea69b61441d749162c67232014e7d05cc8315ead1b339023100c8c1001a70ede9f56159d15b32afcafaed06dea71a00f858703e1c37375a85cef0525eee1c12011a97effad03cd8f3250302047c435bb50067306502310085d28aaef4ec34d44b701cd9d3ae1810d33ca4de0555c5f522bfe942b5bcf3b0ea2f0a8dc10933b8d0751ce9612bfa1002306f6e25e4167e0fcbaa290472414c62b99cb4cc59120b120fc236d460682503d54172e28526d200cd297e28ea13e9b7bc0302047c435bb500673065023100bb1e8ecf414b4c8891619b37174adef7c9fb0d9e68e860e6f7d1af6821b3e8c3edce4279dcfed047b7c1846df83019c802304bbcc527ca8e1b2b2314451f8026c1e38b47c1bc586197bbacfc16b6aa31293a7ae7c47e94a6ae2bfa55984f4b14676c0302047c435bb5006630640230691b1ece861794c0f5151ef0dc2f05912fa0e09997029163296a16adf82bace88eae694e881b5329ceb987b4a68b5d58023032819bfd2f648cd844f6e874d3e06f6c1c97967142d9b45183bf0cc50509b8491a926228b3f86c1a74a391fa9354b6e60302047c435bb500673065023100fe0eaddfbf945b023f8cbe0b92cb71551146c352b943b809e558b4109518ee5ea2f19fa5faccfacb4ea6c9f78c6781660230788c6c08fc741e9ea34d96ff7b1a429484d17f1abf19ecbfffbb9387eb08dae7216f0973774c153ce710b092c1b19f990302047c435bb500683066023100969516504ad6211b96cc4fc7dcbaa3bee1b359325628c567b6ef06ccd2bc18a6ff341dd39afc359ebc9458c939f35de7023100e13bcd147395867bdf54cb927fc1a46abb043d888872729a441f39a1718206a1b9ddebbc0585fbde39e3dc25517133cc0302047c435bb50067306502302afe7d2cf5c65a8f1f9c79cc0079c161c7b97eca4982b90415d6acfbee64375d38fb95570ae35bd29ce09e9d270de7cb023100d0029d5fa875a2b25f789a279a84285406cc37f5dd62caccf470edc25e20c6494f483fcae81c90cab8661f572b092d7e0302047c435bb500673065023100fba099f77c3e27fafc6fdc5a2608ae70741bedc7be2087a87140fc099a54ca2823d1cd66cfa0ef59cee21cf806dc3d9d023063bf1fd8070097ceea589feaef41deb6513d9593689caec05cc357d59a1a03e506f157f414b9974bb09b9124c7e1d3f70302047c435bb500673065023100c8ff66a661f38e4df188d9fab9831b1bc5955437956b6dadc06a325935077c46b698bc6760c0e507d133f78b7db4037b02305a60d64404d2d6575b69e5fb0e65305d26833f2af32943ffdb12a776041ffebe20cfd528855e1e75f62d6a7729945cf50302047c435bb500673065023100f70b932baf741ba5d8b997f01593dd154688a0a29db14692147c957720f9a39b9b38f811ac04a85fa00c52be2a17c402023031c149e39b324a25e96fa7b27648b07eb3a718bb88be4f98d22052f7cc947b7d7a6064334ac3c81a713a1fc06821c33e0302047c435bb50066306402305f58909104713be69543ad5b921ab80cbb7a77798a01658fee419f5ef484e56dd8c6e14dd530c5896e99a87f72115bf5023021bca14457a338dfbe649796f425caf8c4c1667fb1885f59759d4e8a688650523ce7b3e29375f966adf2d79fcbf64f110302047c435bb500683066023100f40c54b5fc3cc8ef7e3ed35b6014c963563e1d64d61b5d72f15fc64dfddbfb8a3ce31a052daee9f4deca66674d9bb76602310091c4575974b10a7361b3c8fa96840dd8cbcd483f5cc9e82ac83164e110565552b0be715a3fbcbf1c1a36bbb0466a61130302047c435bb5006630640230422b35b299fe7efc8557d6852563b09b5f17618e7d067289596f9508381f4e54c554bcccd5e776cb47f29a34e9191b58023067e735c210b8d72ea060c265d974310a73610051c56a5f0413c92b7f6e818fe61381c484157f254e678bae6e665e3fea0302047c435bb50066306402307906edcafec4bafb10cdbea690d97aab5f0b4906b4a365fd6bd7a7b3c1c03c734d81043a55c51ba9ed31bce44b4ad11102307cd0af5e45e1568f3b902ece12481ebc90ae4f67350811672973adc70df69ad43521ec33da7d42319d4864bf99961e6f0302047c435bb50067306502303f87b8b78cba00dbbd1f496a62d6f44443b0e7c3b5ac2a1b37973de863343bc5674c2b8e14422ed86dea5112f4c16897023100aba0395d4bbf453783399490bbc5bd840a8b764907341fd1666a15b2acf33bd5c3f0dfdae0a92f77bddfa838a035d4e50302047c435bb50066306402306f348841031ceb63f793850f78cde631199604598fa005c5528388387fc420e2b42627b618a4c74ed24551feed1fd96f02303ae3904db656754ae994b5aa1ae0d8986350ab408ef3235f833e4f39ab34260760704d0a6e5f38a6faed555fea87aea60302047c435bb50067306502301ac639e7e1d6ef1749745f2c8f602344c9be1e029cfcbf587958cccf30e8fa2e6154c2c071d62d9a46e599464a874c46023100d81812c4be69e943acd589d61969ca8a3b07a93ade150383735bbf0a2cb628b29e886154bc02f65c6df6f77fd2ab0fc40302047c435bb500673065023100a4a14aabe0cce572cfb1f154d7679143ecfe42200581c245409574cd34757031305d29dda9067bfc23cd205618b97cb2023046870ac6f0b8bab8cfa6404f322dcde2dbea40ea9d1c12353ae6fbbd5ab6dd321af36ca05fe516205788a1a93803b5c90302047c435bb500683066023100a92c1ba60cbc24965750e444c0ebe77a824e0a152e5b3f1036a9d6ac9840d53a882a840326213e837c3a96d7a48d501b0231009271fe35498f249f374a967027fa66d6c96775cf5327ef7bd793e4d33cd81d35c03fc00e690556459e6868d36dbf67cf0302047c435bb500663064023004c1444c96ca4117dcb3dfbb2b9deb64e1f00fc3a0b538410101eb4816947459a2701889d1ca49de9289c029e5a70fd202304eb7005796c8b17ed58e953afd997eb91238432beaeacb67a22963e7192610c622067f146246b54096801e3d62e77d330302047c435bb50067306502304f654a03bcc7b572cba56914781d20afbba74deccec07dcc50f2d28e0fccb1a4ed994a19afc2dd00cefecf0908921822023100b07291ff5cff7c9e517506c8b7d3c21055a34e5431123f511cd8c3745657bf5d2dad2e0dede378353681cd800953fa580302047c435bb500673065023100b6e0a385216eaaf3dbbbc946301f92db742ae09c49138d5f7b767393f8b26fe66f4a8756fc14adcda966496f02bcdb3502300cc5172fee828534fb356ef5c6068928e3a4804d44861ab9c4a3ccd0f171c0d2c30bed793eca3a80fc3baec6e958f4200302047c435bb500683066023100d18337ed4225a9c7fd52024087d3f771aab4581d8c27c745184326f041c7972b46b0a7da315e19254b146711b873d330023100a0c41666362601870e305ba87d992f231e3cd2dc5ad11a1e8670911be75a6c6f2de64e70036179e776bcbe580cdb205c0302047c435bb5006730650231009941d63040a106223831dbf62863edc932c9a4bc0d2be15291526f8dc366e0e21cbb931a15d7f18ee476b8e0ce4cf83f02306017675f6cd51f1913d55783bb9f27d3236ba14ff89ff480e361d106bd4f09743938966b85a002a3d8b6060f2b4ea3ea0302047c435bb500683066023100f65ad5660749c45fa3d516b2828181b6990dc728a15298a12480f176c57824015b4890053770d7ff77d1c8d981d94927023100fb5f3cc2204c33a6f9425084dcc341c90d22fcd09cb37fab7aa0d4e4d9083802c730ac9be48d7bee4604807e78cdc41d0302047c435bb50067306502305100082eac1a16d8d70e29fe2de9f6666dda6b8ecb81448e36aaff0edc713958806193d9ce9a58e702be67b9bcc6aede023100e65ddd6610529bb9e15a122cda55a8ca529ee4427dbb4b64887d8a04fcd8b551273a059e4140510c7c489924ce54f5ab0302047c435bb500663064023019a66d5dd3033aa5ed3526584c120932e7eac798d3307419ccf096bdc1a3fc5662d9c3b778293a617f4f20ec4d3253c802306b86acfc22d3f374e0361e0985c3c3a0bd0dbcee5817885dfcdc68e17ee6411688a8f0756b76fcc0940168c96bc50bc50302047c435bb50067306502300ed4efa1ecf1b7e3b0677d3e816895af6f416efc142b3e140f69f348c468f03ac740b9ec4ede111749044a8108dc3d5d023100ae7ede656daebc5fd6acaff0bfebed96e4fa28290f068d7be6e6216b0500b64c9aa7c60778be4ab00659536316f12b840302047c435bb500663064023019939e51e5c9d30d29e83a1c51125d7b841ad76456724a6720b21ba4dd474f0889ea528c51e2dcb3fc42499d62222b05023072e0be96a77929f871b2a6be2b1d2b3363e2c567416e0eb66eead32fc6fd49d892bb80d247303cd73b227211f1bc9a3e0302047c435bb500683066023100b0215d9d270e676afaaf922f99cb5b48df4112a3bbf003778c3714d2e2137be1d45fa001fe3f3c7916b61ab59aa11ca602310087974743b15821b25f2e85223e66c6aa504912c61aa933fe5ea498c9f35a4d2b4cb023c2fea793e46932cc7213668dbf0302047c435bb500673065023064df39241dc50edfe44e122422d6dcf34d9b0e0dd0c398d6de53a962fb127a3926b78f757f42728eec81d698c4a831cc02310080afefce4d8aad0d669187c153fd96b8d48a4d00cb42b1aa7b105f2c6fe30e865c6be28e75e327892b5affb97ddb2cd00302047c435bb500663064023007f0c51bc247ae0f209c4f740d47814ddaddda39eaaef41acc7febf7ad08039f0526136f028e3109cb87e14db415ca9c02300d1a84d2e56fb1dc5ad65061a5492a696a60556a2177d607070b26218b87ab1c4ff25dda6ae7bc150352c19861d68d800302047c435bb5006830660231009d87b9213c2b389e7c9e800c0c03ba9a9ca58e4173a10765d9a306cfdf219bbe0218e25a5a57ae4574799e498f6fbdf7023100ef948e349d983be0931611b69fc966c4aeeeaac2a7285eda8f4021cce2a3d9c688f3619bcb902bd2bc6a618150b0fa300302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b6ba0531291e6769ea5696ca12d52a4428234b58a489bb0401c3e01fe682a2a6f752dbdc64fa77e4780b4861e03fd9350230310dabea3f6c368937d745de022c6ebed589050e072b889da94c5eece63b2edd8d3668f4be8cb18f5ab4b7765987f4bf0302047c435bb500673065023100d2444ddc5a123a983756673948675bd37ddee078aa2e3b743ddedde586d3203958b0dff14590b2fba9fac357e1561a95023063b3dd18e35861a722d5aa8ada07c816075168b50482cb36ed3e708fc1b5e5b2c2cfa74f1acb2f52ae4f81dc1afeea1b0302047c435bb50066306402307306a06b24cfeebc29aa38065772a5a0517be919302cc1ce1ab237c549c059690460a9ee209ee06a0bb0e680d4bff565023039d7ac1b0dad10fd4bbbe94d9583e3b424a89198eb9c7cfb33bf3a15c8a0e7b79d16f286d0d47da1db65c046dac4bb3a0302047c435bb50067306502300291e98302ba0a6ff77d25870318101c1ea0bf06e52b0fb61d185d0f41030dd87b690135067ab389eef53b634bd79789023100ef67257d1b1a0fa3046ae293b7d8f26e6bcff10f3f0d128dcdaaa59eb477e1094a3e2471e5bee1308a0204fe57e018c70302047c435bb500673065023054a0d8dcb608ec7a4496ec939deaa92cf5b95f3ee085d4d4bc1315202963a36e9e6eebee69c6f76dc322266027b4c10b023100aae71595832be0a39173927fac11295316147e747b7d0bc596b734c3b5f4f689117795ef06d44d403c35f55d014cef190302047c435bb50067306502310087e1bdd23b70747295a9d1e7892159579cfda64cd39ef51951d9749b5d6eaa9b30665321bcffa281d605a1f51eb6912e02307b935672f8b60ad504452598e97c2e4db66440dc42473b4dba3ba180d029df75499d1ac3f28ec92ab5ab766ae710b3d10302047c435bb500673065023100c324b62c49e4d11e5c5083db24ba2c474460ae3109aa222af87d5f2302c022bab0224e14fd8fa32ea5f2b07628bc18ad0230119484e74fb0cc2272b2d16cc224712907a9bc39884100c511e7cf14f45b7836cdcf0a60e0970d94b679bed84ab785570302047c435bb50067306502302802afcca3e73422ddf407444d37f8ae104d76f6321eef1b0c8a8457cb352593d6628ba7c6751f51136a92fd0d334117023100c6aba7c5e6967f613d990e6ea5494e8044cd1f8857276b54be005dda346bce7925d98789434eae831386d8f1d1ac58110302047c435bb50067306502300d9cdd0bbb467f0a06ae39da53b72b05469dd0fa4eb939b639f099ec32618e5031f1ceac04c25fc62ef53ba04da1d98d0231008f643469b78551fd23df8d92a2dec91699486eaf00463decbca714e7eb031df06f1ea713a290402ca4fe0529db49afb40302047c435bb50067306502301fb287bd2a768f004ffedf270c3b74715265c8f1adee5206fcc8df8f6f91ee22b87cb995c9a09d69c56395661b3ac2fe0231009999a66a6c118d03f34be79f9e74ab4256b67317f67c8616459e19d7791a7b5b4f13f2b2a62b3716c81ba5bb9a9a8f7b0302047c435bb500673065023100adb490502db0ddd0dd9527a425a6dfc23e0384680d8391fe6a9c4ad63f7f34f15a2b52cb2d66994b938505c98b2ef17402302f8c1a0ab757d5604af5c0fd8dca56d774b44fe9e644c77b75cc479ab48549744284b4c0f5cf6cd81b25f5a962cd41520302047c435bb50066306402306214333ba2d5b249c9ab19e4c2bbe54013cb390f0c2159e585a62c237e87fae99650ba7d2812f923a9a5e01bbc303f6002301bbeb233047b433f7f4860ad7d434d346009758c1dd84cfc885a1d0ada841791c38c2efa96c051469f741c3a0243197f0302047c435bb50066306402305f8c24b130432b1282aaee03c0a2b046892d1ed6059af244772d9174bf6878866fddae1fa2b8ee1ef2889dfb1b645f16023058f3f8fe79caa3fdd1cfa03a4037df6d044e5cf4b8bc39c42d12eb76d2c7cb6ce6079111dc560b1a1b8741df471a845b0302047c435bb5006730650230155a09239573a7a94a4adb0118aca5542a09fc3cea1b823fc5f412a534c0bdbf3eafc679ff323b822eaa238c4db95c6f023100ad2b9f9a416a76280588c34493663cc1297f468d1ead4912f8bc2cc8a07b9ac75dbada0bcce2183dd32bfdb0adbe56ca0302047c435bb50066306402300cedd4800a1aec8846cdc7915c5e33bd1b733ad3412b37a501d0ecb28b45c038b7ac2ab8b700403f727a57868cfff69402306bad410cac070c4e3bde6d2d2e24d9493a05418eb1272d73eac097891407b3d01f77983b7a235a50ac9bfc739146e1910302047c435bb500683066023100840712f7869c075594768a3e0c616bd07a857348f9a9e841d7828034fb00eed3dc5b38125b3ea894e2910f9fc652f3cd02310089827dc3376dff6b534f09982e551af33819581e52452800208f8302b557890c8635ac6a1a25bd6bba360d48ef66e32b0302047c435bb500683066023100c6b6a6d9a2a409687fafe0a69cfcab94010293f42859f9f57224f791b1a4fdc5fdc2ea5579bb38ed7f6de3db5ad42578023100bfe628875f80026df88a281f0425d4b960ae7798858d7e297ae0d0d149f8d0d716e97630f2c8c71084f6f9d254a6861e0302047c435bb500673065023100b447b54adab3c23a87ff42abdf8ecb92a59275a8790b0710cc1642be15e433e1ad2172bb2d998cf30f13faecfc2661e702302e89bdcbad2e167a5063ad05a55eaf7ab45e25f52e9e516d9c7768c239f70954b4797f8eab91fe92b55a381cc2b80f140302047c435bb5006730650231009c2ccb6d4597a8f12fc5213a48ffa7865d01a6543a621a6eb6832162bd52cd2bdcdf7781f1847b947801600369d5a1d702303a771ca5e2841207b9648a4a10e418e18eab6304084453f60ae62aad994b351330195b26ac4668d195e74fce9821ba1d0302047c435bb500673065023057e8a3082c259cdd7f9a796aeb7ab3b027281041d30de489e6f3210f0f9a10333810e509a87eb292fb21925809853cf7023100cd60122b9ee792e8cf448174a8593cbbf8750b3297185588f7e0746b8f12cb44ad8bee97bcb6edbc87a63f0b162412b30302047c435bb500673065023100bf977213a4f0cdd225403bf77e2ff39b2791b28348f0b595cdb9f13bce833a80a3a37575e165ae403212ab5f12356bdf02302dc2d4368e2d76f1e8e8a2b642ea1c1ef02b279de6a7b2006f88f00ca1290fc3c9411df6789ea8676842c5c2d8ba69e70302047c435bb50066306402300a1ab9d1de5cd3585a8c29f00afa571114f36bb93c421d122029821006feda32bf8e38dcc815d7ce0e6482fe420305ec023068052c4332da68d4fe8e590d08aed3c63989f71f2ae6790dada96f2ca485f4ba580bce5e9fbe03a7cdbd91abd1d81b6f0302047c435bb50066306402303187ad5cf4107f63153d38dba6225861c3b7a53914c3192bc4dbee1435d1dc1e8386ddeb0228ef2b425b943be902f336023059e7d44e73eb9a3110fd1fe3570dfe4e63b7eeb2f421f7a16b0d9500e0bf8d1f7c38181ea2ef1e531063aba672f7465a0302047c435bb50066306402300414e8d125c8aff1c5b9fe7ac28fcd38a3706aadff49189f5857ac329d68705c2671063486dba7b390cd4ffd00568a9e02301737024a344f42eb2e016f4303f88915298f63016bd9658a986eb467cae5865d4042eb5aec4f44e7bd1e0f0dda966bb20302047c435bb500673065023100d8c9a955426c0404572eecc540033d79a8fbf4886d3de6898e61801f48e9f08ffa475ddc70356bed7c0da6d93647ffec02303f6bb1484a06f5cc3280d3079b764a3dee2a94c4c261f831ab2d772bc728a0c30bab8bcf070f40d666ea1027792c12f70302047c435bb500683066023100ac3f447287cf21bb8b395e60ebc8e6b1cb8fa1000b62c70f456caabdce2f9f77855a753d1dca534c690ff35ec7be5ea20231009a77a51d8b8c9f21833eb6a2bbe719f60822a962e92eb927b7b0abf320d097dfe75abb9be2e0c917ed0d582a745bb2d90302047c435bb50066306402306d0677f9e3db2e52f6a154fb2d869f3aa3af6237b71420db8609bcd2e217e9e35d78f3bcca8d906df8db1410b367a78c0230262d573ad9cfdc97d78e3fa98592eeb87aa05db6f7637ea79ce0bc387e21e26442d09ff12e51093965bd974d66536a8a0302047c435bb500663064023066d844c994bd54e89958c2675cc077f6a5bda1cca9773716900e04ba03d0b89079b49c7827d647e2f9c8bff46b6f187402303dfa3788f6f528118a8b1dab3bcb08b049574aa3de0438a0afb039bbcab27c9292930d55a40e0458a27c665d29085ae70302047c435bb500683066023100d7dc242b81e3e8b04065dc0bdc38d14bd5caf0e189ceced3335fa72a7169c28c7e5ea607070483c9978f0f3914895a67023100dea393420738bef1d9ab892aad78ac83013620833493feaf3b9dd7ba73887b1e2d087f6cbdd3335ec53065c9615b57810302047c435bb5006830660231008f4b8303155ea61297892d8fd358f0de0a8496003aca32a03cbd233f25035db6b35ce0203af95a0ef9bc169dd225009d023100be881a7c9520b5af1f1b1b2825bf30242a59e31afad150be8edef707d2e64c811ca6d992320f2d739b74b006c732543d0302047c435bb500673065023100fa069bfa7b646991738558d957874642eebb375ba57773dfa444b0c782e6d6e421494e042307694fa6f66ac0f2f237c8023028b471d0bb8f9cc32997dc67c478da2e9964e4fca11233e9aa61ffcd3037525780a54adba53d5f578bdf1ddf3539c1980302047c435bb50066306402302da4cf97251d2fd6bca503f38d427e69040c8ac7391eacbbb75b70e85a37792798cba1390e81c5a5b2356ba75ec93aa702306d852864661b25a68c9dcd0f3ed6e7f5cdc1d3664eb0d71bf07a768e21302c6d19a221f773ec3a376d7a9938091259e30302047c435bb500673065023057705ec0b918be73eb09607c820636fc20af856198a4d856f1ca58f1ffaa8417acdca0dd98ef7e1c5a16b6358ce7fe17023100f10ab51b7f38de147beed48c837a690b0f1c32b9fe6caf6a1cfeeb65d83d5b2551f0a14fe463bd5a96f48e9000c0fcee0302047c435bb500663064023024e47344834e2d8701a5fd4cb928df2c4705de96393e955474fead95243b0d2a449215230742c5d653cb61f567ae2a1202300edc871d64579b5272ab681172003279dd8cbe4a89501040a7f016fbbc6a850923de805e276c7607758283467411b3d00302047c435bb500673065023059bc1cf1d90203a2a6345810477e6c8917dbdaf6896229d5bbf8113f8950d40d2e9c9171966b6680b6bef200ad62400c023100dc874765344a4a4500d961c456455f7ba9724fa37142274edf3f3053317a1108e4fe2be6ef6da84b280547fa240ea74c0302047c435bb50067306502303f1ed232dba636929bfd498cd136c71d0d52fc16a77be495b2a690f68a700df75ef96c576e804e6621303b5e925789080231008a93d8c0209a519d1efcf4d35aca42e73c480acf18141573653cab807efd7ac1562c3f29d69d20111c8d5c2f57a593db0302047c435bb500663064023061b209dd5b8d88a7279cb3020079ec3cfa2cf6c257fc702f16c137051af99d8d055daa619b1baad850f13d235c6032c70230051943cba915738623eabf25a729fe22ae65e3cff664fc50f00b08838fd9efe005c95e04b71a1c9260854f15d5bdb42a0302047c435bb50067306502301bc15ac3eb3c27800319ccea61a8397cd11e54d46bfd1d9019ec89a0879c56d124a8ac492beec1c64ba988530130ca15023100b2818bde432d3d3d2feb269a0cde2d09acce9da9fd075267ba864442b41aac6999681bcd78a5feba29a53616d0142d010302047c435bb5006730650230174520f4f25d99983acfa81b795360f5c2055153ee43ede72f744bd19a991fe3e7f7a7b65ead59cdf81ef92682506158023100badf1d83c6cb3e5d26108c7beb7970a4e99868126c867bd38bee4723ae079f59ed56b8ffc33e354cd82fca95a48078760302047c435bb50067306502300f8e2c82b15d21975de9001dcfdcea539bebdc001e23295514b7e6abd386ec3d7353b727d47ae4d809062688a9c8c3a9023100af9d6cb484c91d37528dba3db07f17d214bd02da1b44ed0cd8f5335588033dd4c1767161862c5c589daaaec5538c50c00302047c435bb500673065023056a9a719f69d30334de9b9223b5f442efb7ec94cced04dae93da8c4e6092305a76f486c41c400a52ab5390b4a6615ed4023100f718d825987d79ea54969f3c37c2822812617d699d515128a6601e442a84706210560af26630255ccf44e8e38c2a67890302047c435bb500663064023012b118d6f77bb4fd8d56b8e0d232090f9e0c92afb5094ec6859b0d290e4ce11d22ca67a0f51ebd2794646b277e3ab4420230592fdec568166f725f3a1293ae4acc02526dfc2a12b1773973a22ebc400cb9a95e3102f26e1d6a36e3030c24b40e41800302047c435bb500673065023100afcb5a6c3f3f864ee85bb23087c925b659cbf8d9755e571493d64e5fec1716ef83d67885b6b343795411ce742f958914023011ed302f8b97acf22c2f8ecc874cdb78c004aba75e556370a726567824600aec272383dae593f300446f5288ae6b18190302047c435bb500673065023100b4863348b7b95730742f29dc8d9ed3916d162a5ab6868d87a08a297682d0c83c3b587dd4d7d74ab2095d608b29b32b0202307262efff0f87a899d023f93b8cd424f91bebec03f2480f1aaee31bc3ce1c7386dc59d78bcd7b90e083b2927bc23179290302047c435bb500663064023033f2cdf08b3bfebf069f1a66e3435afe7839a62daf9edddd45f26f4a52b5e5f84c7a83ae3aee63a6b67e790a25e2ce7002305503d86a4f8579d22cb8945b9a08824470cd4be4c232ca42cc728f0df9f4c756a83476059a7698a408f9877d1a0c29260302047c435bb50067306502304a10dd80e6b62a6eba06668814e1a83b9d038d34d519cd139bbb197c3d9d47426e1ecca4e557d83c95ed24761e200f56023100d25eb597e298123da7f3ed906c75564f924860cb3cb2076ca49bc591d07f42ca849a72dbfcde9dc82af6a0f931a1a6970302047c435bb500673065023100d679d006b3dd3da83ffd367dfab827cec069f416cda8bab436e2c3033882d11fd3d29a0ba8340b444156c814a90e5081023051f39b86ec7dd36c301ec6054a33df54011bebeb48c2a1f9cc84249dd2cdbe3addbf9cf8c74e4eb09542246477f24c760302047c435bb50067306502306c4274e9986c28338be8f8794af9bc844b520baf52481e660633cdf170703522cc50a466a13c818c07cf8ef71a87122d023100bf5f847f46e227b240164654dcfccd7f499d40c09275b03afb93cc942b42e2847b23a7b1a748f8305c6b50e2594c294e0302047c435bb50066306402302ca238d7c181baa1611b44b3f992971db41c864a248fef7652fdf07ef182c1bfb2ad9444b9a3c0cf34cec3efd511c86602303eb6e319cd9d338a2403526f13d53e0b05a490fc24732599169372362bbdc7c04c5544cef1695823e26480d37837bfbd0302047c435bb50067306502305ffba2669550d641577a4cd8da9b8148a9c5477bb15cbc5e15a5eca2d3a7099a2923e0af08a94f9bb33dba40a160db53023100e3eaa9aa460494be30e062a73a52dfdc90f23affc5e787241bc758e98f7c84e569c38c2a85aafb4d34e7bb7da80431950302047c435bb500683066023100f28324404efb5c87d9c858b909e16fe2cec7487340c5e5422ad7d380700935d91e2da84a8671a2dd22a086541b8960a802310097149d25f22e4483b9f6f71e8ee32b8f19df0c5cc1dee47ee5d1de1a81bf907dc8fb86a415f7048d254d4c739ed861e30302047c435bb500673065023100baf8270c29e01c1eecbfac363f2da338ba11e2a300b1badda0bd862c27a84cc8212ead227612c5e424183cd35f8f37d7023028df837f7f3cdc0fb83b53a9679f54694aac269390778311ebc5b024d5975331badb86785a8f11597a92f46acbd73ca80302047c435bb5006630640230068e31bb1162a08cbc8f6fa3d47a673b688deb3a50743c967b61137d212efe0bdb971d081e73f690569e31b7ad7143bf023071cfdc3b2cd9a6de10f103db9beeb6d33bba1b635b82f900ca6a675e238eefa588e95b7039d7d7b4bb9c4e6e1e18fbe70302047c435bb50066306402303173cf293a0bc8ca241e81faa1841e83450279abd9057e8ba6f038b8731c620b961919e2a76ff02c37ba3513b141660d023027bfb7935d9f81ee3b06cf7097b6ef66bf254d2b66cc6f2ea7ed5a66c7e2a7c6a529375744ea84a88684c907e400a3c70302047c435bb50067306502310087cee730e78f181152e01bf9c89dd4e2a92695e1a5689713451bcbb67eef4524c6785e18fe91a3314aa388453aa74471023029b2d412703139fb4137c0a3a75e245a050e0a100085ee750a8c3b915341159eb4d074dde67ad6eb84c9b1a90192873d0302047c435bb5006630640230487eacd54948ce627984f6984700d68b1c9dd1ccde5d7aba69fecbbeed0466f3c0014e890193db6dc9694c74b648c64e02307baea2416f365e6deb7a3ca509bf81d886a0fbea9daf1d45471ae5366ef0d8f48242c3056a5a7e088695b0a5c2f6975e0302047c435bb500683066023100d31fc15f205905a235616946a1a310b9e6545182add3ee9668aaa8081bf67b505700f10ff0dd1ac356c86cb5026cd55a023100d73d37a7c9e82fdfde666e0bd52db290cd4eb3d886192639e0013ba7602ca747879c806ce8aec11c27c6064d9ad77ecb0302047c435bb500673065023100ff64a3f57a9bafc740e874f6299ebd636d0baefebf3c4e3a8cfa018609bf23fb35bf61273f0cb02e689bec02868c6baa023059caf4a24b40371616f6685cf4b0ffcfec543fe7cb332aef0e7612aa7009d75502004f53ace4e355d885f9b8fe0b3aeb0302047c435bb5006730650230566506af2ab6d13fc917e3faa2d71dea19ad88f91293fa048d3f0ee3920d7a7b3de86e476ba5115b94c464d3275d032e023100f2cd3beafe2e4ff0d04fee73e6670b051d2237de24d7f80d251cf7192fc8bfb6bb3179fc42b9dd717489f6f4064d80d80302047c435bb500663064023021e407f0fa09e52b1fa1ee3573b93c64ed8fb747223833de88e717081777419a8a046d9bb29843c965da0e8a0d37cc4502303b5a1d3bc7361627aa860a335322c6bbdfc50ff5ed65128011349e91b25dbcae4ec9e6a758de5ce257d3874d8f3d4d350302047c435bb500673065023100e823c17d4a241ed7221bfca9eb49f64b3f0f8b890a84700f718834379e2c1320de21ab60270b8516def047589a8a91c802307023596a9ac4f25add85a5ffc77d6fdd6323b757b254f9a278322650024fdc24ee2603dfd11a69998e0cfd2915aab4b10302047c435bb500673065023077ef1993919442e3b0e29d3d60c6570506b3995c50a70366b8a2c5166321e23f9d59666880ca28b9a195ff6fd81e3c790231008580dc5367e58989040807f6953378fbcfa3063baa9de352e1c4b5cbcc2919849c82fea2e8378df26f956ee2e67a395c0302047c435bb500683066023100e8104796baa721982a12af7c9f1b7678ee0914c5236320ee41745f4cc678661ee3a490750c1f2c999d9599a1fb30145d023100cb8a982478a6086ec9fe8f047365781aabb5c1ae2c6a6a14c59010387f363e069ea70522746210fd815d5e34a1664e630302047c435bb500663064023002a0ac48839dd1fde2eab6547dc09df672de400d0d61523be4fc723e7010e33429019c10892b7bbc4079ce089f527ed602303fb389f86299aca9db21b887b0adb1a6b147ba13007a859c73326629732960bd3eec5129221722cf9fd55908cef753c00302047c435bb500673065023100cf2d5e64a16dc96b07aa97cd83ede539e2c3cd7958e83d7f78043024f732c2f733ab645d92810acb5543b0dfe38c9c8402304152f58cbdc53829498ec46ca95040062aafd2849d257d0d5964c4edd5df351b95563f1c01eafed316180d5156ba7c3a0302047c435bb500673065023076bde31508a2b34e1d7ddf1a03ba5352f7d2d49a45242843ca684885475438a01c7db3e62f5a673a9dc3978161602306023100db765b0a664c94a692b8c2a0573ad2772c17ac07ad2d2769ffb107f49250e6c47cc14ad35b8a9ccaf5a15de3786df9de0302047c435bb500673065023100a423fd0250fdfea4b1b1cd75f32c9788bf77a04ca5f4e4cd271c7ca88de72e0f9f2293118f8570cca5487f1402fe13ee0230398fb800d26c3e9bfd6c7566fee82f9aa8f81a59779af9edca4e259cafa7dc8997b6fd66a7c17afa3b79a4b58b85b3bd0302047c435bb50067306502306b4dd9ef0998e3fe6558869d30c745fae14317207843e5711b998b9a95133e174f4ae2f750a978ff646e3e985c62d35b023100ec7b6e93d48c9b326d2d21c55398236cacb11fbdcebc5648f4bffbd8aa6ca3514f1c7c62ee9ecc80fd4fad38cbb465c70302047c435bb5006730650230458a78c562fff94a209e92d0d006deeae8ced5139e285547c26d4e4a4457e81b96d356ea75fd79665b8dc4424d30c98d023100bb4b6079c953c13fce57f920915c5c5a8a98dcecd8c6ee9d7f539b66f5bc13b5e9b818e822ea9868a88b9ba34bc9e14f0302047c435bb500683066023100bd8bff9f5de39cd78cc5b1f084c996bc7945d07dad3075ab527017e63486e9c32f50ca32799766ebc833d15bd0acaef20231009ebe2b97c5019ac88f927dda2b0bc66c9fbdcfcb5bdca44bf6ebf11b337851ee6c514f0e8c3e04b8f2811a45b03081140302047c435bb500673065023100bafacfcd35cfdd8ea018730cc3775d5be4c11433c160afb266186c4d4abe00bbe8204fba004715d942e6461165729f04023030c51bbf4211d23bd191e50989d3493156e7527a1fc3b0216d2f546f95d5dbc55bfef4fdfad78565facfea7e1657f7750302047c435bb500663064023052f8b808044b59c302f781e27a86940235b668910d7ec85748cd800dbd71659740d0ee19bd90b1de566e1339e0ae2f9302305d09e28ccfbb60a0599886246ad24940ac52798c6a14146726b13f8a8bf5b7b9c7d6feab9fbc9499f58a130e392c502f0302047c435bb50067306502306b1d40a9b765f104234db08bf40efdf2ebeb0b8fa8babe804e310a30bc804cf3cae7d0fb35b4a764ada19b89f15104be023100909eeab709ffbe46339e6300459079d0f9597f8090c667832e56770222c183b859de6e46a8fee6fe0dc8a47361f4d7d70302047c435bb500673065023100d10bf67ea6a2acc6dc6becbf6af1d62dcc9bf97c5f76755ccadc787ec1646e0370c2105b17ea22f87fb42f9588dc745702300b81f607adceab2847e6cc573bcf347e5ab42b9d636f107dffd821233d5cdd210af620126478ea04b7b5142049c14b400302047c435bb500683066023100c146bed215dfdc72cdf3cc6c7f87080936b96bc5a38ac4ea422771536ae1af5438121748ced093484a6a977527ae829d02310085cfdabbd0e056e00ec568f9fe050ddc788646d9b6563136bc5d905a2cff75e636fc8ce1d65d7566dea03d28572f77bc0302047c435bb500673065023100cf8df1d685c92ecc2248baccd242fa8696bf50f22a95fb8c7b31a411f699215ddc13bc1b9d0f5419e52628d29bf0ad4b0230774906407f2f5a4d723abd5dfb5cb74cb5d66ac19f2eb3e59a83fbae732d731c464ecf04f201e023e16f07eb4080d5ba0302047c435bb500673065023100ec0b30f74fd1c9ee9f2ab013162d4f008af92940080e09dc8c5cdbb148901fd15551acf32a180263fa6ee80bb4e8d94602304cd31ab81a9de7aef9a46d74be3969c95186bdc5c6bdfe3fb286400dad5d850ba669e66f17bdd50479e2bff4d54538330302047c435bb500683066023100b0cbb36dd26aa5ac356e825879d3b805c681126947145461d746cfce50391e8b2cba0a63cff28dacee13a663b69a561c02310091762e7553e91b45ce02449ef1653354048d74e5e47c19856030c026ea470431ba3dd4f1a517912fd0882e6df4467c5c0302047c435bb50066306402304f144739a7d4556a0e983bbd251467fc24d8d84cc4114b496cb747ebc292a30fef06160a5d7985473b120f696b89e54e02302e504cb3f12781bcc3613c598b907ed5c66478e1dd7a57091cb9d94402b6a508fbcf5cc7bf6efb555365cf1b0006e1cc0302047c435bb500673065023100bf8b28944cc16ef73c9a1bd4eeec1b990dc9a108ebbb807a7409c7262d681d85015e7bbb5d10cfac41e791a062274bc10230173cdeb79b5fbb08ae9c562632390a560be0e57e6aca9212cbbf8e4871a2a3cdc20cb46c08fee3fa3b89c9f4ac5c854e0302047c435bb500673065023100f7c0d892422a145c75a71e8ed8c377687b9175e5964b6eb40e843aa8449e4580d7a214ca5dc9efbc39821fb4160e77750230357e474062e8a9f2ca8cd5d39364cebe6df89e70910cf7baede1668ae2bf3410d241b9b9fd72355ca84352f13d43240c0302047c435bb500673065023010a3526444d33278281860c73aceba6478930930125d794b978540db66720435ba7549602dd0ba17490d326d77364f72023100efba300105b34d874eb401b1732f2072f691383d2a2af08c23156d7d9809b660880aa1696894f7ed867fb78469bb7edc0302047c435bb500673065023100e833028f004bb5fe0c9ceec284d7dce8fbf2198d585aad2f9a68594dc266885929147b63f86243d37001ca010556ee09023005e0c9bd9b31f0ce3c9c692e0ba331c7f7eb87732eda6f0fa6c21e4a781acc60fd112aeea13290cbb212e1c888d43ce00302047c435bb50066306402302469321bd3c0ce40fc815603153dde374c8d83f8fd6321cf7526b0ae40c225fba882a1a4003108cfd8459d8342b0c9d8023020fe796549242fa95a5f1e24d0110b0590edfae0822fb3f7dbb1fd19440b2705da7c5b2ea45243311b3996f41acecc0f0302047c435bb500683066023100e86998961773de98fc8664a14e01600639e4da4321c680c8944b373135a40e201c079cd090dde3e75edeb017207b21420231008df02d2bee0636ac4799ff748178da5bd26a34ef79e609ac3e65f359609e4cd80f79428cda5c62ba15d735ec960834c80302047c435bb5006730650231008718b5931b41cf8297d6414a3241b841cf2a8763d3770300fb8c4cb8d26dd2234a0db9f0426f5e207a252357f8a3c96702300b3af564472ee02b47d3ad7158f80f79528bdd739d74601bd47e032d3b29f768abfaced69533660b4bc03bec3257aefa0302047c435bb500673065023100df38144c0f5786bab4e3d2aa2087b3e61f4787fd5371e560a5f744289663ebe2b0847f0e3e744ed3090d1920a81aa50d02305ef52408def699b24341157ace6bcfe8c0ac2f8a5b0e93d875797466c0c6f80c0cab828f6806c4c307cecbec94f2b0980302047c435bb5006630640230264a60f1dfdc2fff3914e7deb0243806322b3b3b9db1f5f513334b9e6b40f2f993f8eb3378d13d656c0131c06206bc4c023032763be86a68c88d84267eecbb32937913dee5c813cda24e6e36219bf49c3a8e9c566f549e81cc0be802c02b219678f00302047c435bb500683066023100ff769efa5c7342b7912ed05cb0d443e1674e73d30982b000f1a943f5b394869b5a50d2299473b405972c623e259617be0231009d5154830eb14ea784edccce9458d4731d4a8069773245ee842ee217dc4bf19d0d8ce361d3a3f89c813a9d7a2453ae4e0302047c435bb5006830660231009f21fd2352b005f162d419a1f6e76038e55d74ebf3d7e8d9bd32996247b95ffbf633e279d266f1a18d5ee4f04b2eb1a9023100db923a295a0de1b64a7654351672c2a195af168e55c432686f1804606c23217f2403f50d055e380ecc0d4717ee4249160302047c435bb500673065023100a5e2788a6a548c2880236bd30ccf6d16c7264a50854690c647f0cd87d9e4a4492d8f3f99b6c5a00e7f2c917af97f963102301841932000008319efde1f8418791e22a6aabf8ef7be7e5a4adeedb923678cd84b2894ba9fa7146a20c77cd75e3faa750302047c435bb50066306402302fc02be82e304788cc2bfcb1250cbad5dab103454a044c35ffe732e53372f5e1ac1ff6fba3cc221c4df0f205c336b83202301426d753709c3e16b0d1f2ae261e363fcca7d5af6c3f097b618fdd85a55a28c470f2ab74654e981cbdfb78c1b2bb296f0302047c435bb500663064023012ed7b51892c427392b58dd7915462901d4978b9a91f87a5e09a2de09b27ab7e8ebffd661e421d2c71a441c7f467f783023032eb3125df340e975b4531d8dbc99619071afba59b2501a6c9bbf9cedc631419f2b72d4b024a0263db81fb7ee44e10800302047c435bb5006630640230536ecc594929e272a93f3b7b3dab3fe749eb02a2aafc746a36e61ad3adcf8782880f87a59d5e044fedd688d030f303c702300f90ded5e3fca36e66a82f39e3a78e6aaba03138d67ef9a474c6fb82fdd7f83834bf7fbe6bceafec8381852f3e40c6740302047c435bb500673065023058408c7d13bf74095e01c9f3a12c0af47aadb424ab888c40532e684ea11e5971d74203159f6f0528ceed15d0243cad4e0231008c0ff06fc172ff714b324688f7281d7ce9cc2aa42797973caad8eab5baea38657c2cd23cadbea3217f513d1a493e87220302047c435bb50066306402307588f4f28e911246a509749dcc0a8547ab98dea38d7d8b26192f495a5dfb973a59f1a705afe4edebac10c0b8e575710b02306bc3e79aeefad417f59dc92dd4d73235cff51ca08b182840bd5058d7e3fa21affc717a52b984c75b54936e6342a17ab60302047c435bb5006730650230627cff95365cfec46c30029c0604fab6767d8175bae02feca462bd7d14c1f736eaaa453478bea272c54e4d7ad20bcdbc023100cb8ceea4de9f63e7248e7cec1daba0ba8a22e0e96fa0d7b931151062f0c39551999bbb863b0fb6c25a5c20ee9d28ddb80302047c435bb50066306402303a9454dfc76376b4fd0337b2ef6fcac50b662180b2d93525cd2b5f81d4b4bc47f131abfc4e52c6d363bf953ca3e43b9f02305dec0b9b979bc3efbadfd90cdc98a65ccbe20f89edc3db820ea8eb3271693d40a792060f6c5e50c7b70815d0766cb6990302047c435bb500683066023100a5549067c9a96797666e7910fc7ca1706ae626bd417b49a649f6ae1564c44f463e5e19ae39375526add5ee6fe96921cc023100cf43e9a10e8eb9c8865bf9a4bb64961f4faff256f3b3731e84f745aff0cebc9e957ea1f743eaa06410a9bca5e01085e20302047c435bb500683066023100e6c3e0e330828625a54da7476ca9155d0170a8a7006eb13667b29009ff56a18c7e792298685951ec9650cbb13af538cd023100a61571d9255ddf64a372e23b086a50efda8d1250d401ee5e06117e15293423e7401abc498c4f6dc5f67d780f5249412f0302047c435bb500673065023100d1a9155d9d4bd5b3fdbb9c310209359fa00b3d540000bb88325e2d8ca7dd3cbad6039035e161412170d7baeb8005367a023030b3627d930069c91c1bd3e6d51f7a5e11fe34ec3952bd52d52bf7beb6fb5e0c92e3c47f85f262470464a5af3c0444c10302047c435bb500673065023100f27c9db71808d3f397ebfd86a5284a4b8b998ee0a25fd5e307a0342115120941a2dcefdfdbc34475a1aa5bbca947f49d02301e637318fab01e88e0c1faff2bd13921ed2f47f6e72dc3b6c79a15313419b5d665d53ecb9a8ed563284059d3cf93376b0302047c435bb50066306402302de4e67a63b8cf3ba434b48cbef6608014f079720706c3658b5e1967ae2614f1435e44b15e4c4ebb0dcd53d317e8789b023022975a0ddac735699090f748fab76d92e06d49d36fb03d2546f9ec758095d1c3b56cf0fdb716e9a815c9a802068f4ddc0302047c435bb50067306502305243e862e99aaa458f1657048c1182d9fbe9338f2a01484c9128a0498030f2d3fff64f4ef09a73907b41b17f44f5529c023100d61dc5666ccb68f00b4b2f4aa8f1d99d9b0874d28c0295a057b7312e1f79e8d8b40b58fd41de259aa62a9eb8d8ec5a0b0302047c435bb500673065023100c0b8c07f5f1298d81608106fc04615828963996f49e2fbe1dd60aa61c6abcbe174730932421a24506a35427c5c0cb24802306ab863e61bf662931a8b42064b1f1017b25494cc980164cb61fd0815f609bf788acd2c45e246da49e81ebb66b9ca0ea70302047c435bb5006730650230762cf095edf40fb64e50588823d292a2759ad9d6208990db7d63ffd5b0daa0a548c90dd3dbb53992365097980798b9af023100fd028c4b318ba59260a54a3c6ba83ce6efd77fbea6771417a3203e31d289527c6d6e48747afe907ffd852b5d6919eee10302047c435bb50068306602310093b02aa9df5e00e5f3ce61abda18dcc82da59d8d074cd3509fd1257411225008509c70113537978956a4111ef54e58ef023100ddfc21fb47a04e5afe6a79ff01507b885d8eb50e317c790db6d86e142e75780233138f7bda5c7b719e9aad4a5281c5d00302047c435bb500683066023100b3f88242efda6c414196d7af5ad9fd9328b2c6ccb789236f4269b18a1af1ccb05781aeeadd2103f91b301d2ff780ab890231009becc8b6a08e7cea12f814db21966910870b091a0503ef8e2a06d0655e3927542b0565cdfd8046b66fd5ec3b50e9d3bc0302047c435bb5006830660231009380f38af6434ac26a2cca6a818b71c22f3fa2d4464589d0033518b5c6396927875e9113c7a48877311143dcf53d507a023100922677a42ea68d8a3193582938c50228b0547d897351b475f600bd147468b61ad2bcf112d6db66277a2e24e4822560160302047c435bb500663064023020552a392906b04ea9d60d8433258f4eb8216b27130005a517ba2a151db2ab6beb487feaa3042d7521279d1a5c0a2c0702301928846826fe27b26ec4798a7cd745774eeebce776d97ddc9ec5e1238e6137a9e99321a7c7e9c554bc4a004d3a36fff00302047c435bb50066306402304f04982bf76ca2372c6cc4c360e56cab5504a9acbbee17bbf7941a5f0562c4d5dc2e73f329ad73660daf620eb49facd802303937b7d5bc00d6feb905e2b5e0f707f04e111e9ced25681149ad7999878ee3a74b7505d49fede33dd95365b9fcf4e39c0302047c435bb50067306502300e315ef308c54e58a3716b7aec32ace8218e9f358bd9ce3234c54a08fd893142c20fb89849c0d034e4f13f875b3fa152023100bffebb058ea1793144dfb49ac7e5049fa6b2d7bf25ea00ae3034448ba3d290a189aa49cae15dde983200bf4754def3800302047c435bb50067306502305b20635026fddeb3cbf9d3eb24ca584c133b70d8535342a39f3bd3db31cc4171bc25c48a51d88812a49feb3cd21af1f0023100ff3c6397eab38a67b0a469a396b15bdf84f03277f5026e31e37e612b1d55dbdfe26ccdc3faf690635e0ef9dd81f1af2f0302047c435bb5006830660231008f3f7b28121527b70bb1be49f4209d4b1d2113d4b8399760103584ca2fca9b9bc43c7a25efa249333975eaf770f16fea023100e5728d1b7c3520c2818f9755e90b0febde120134272057c7fc00eb0b1bbde48cbe4a5dfb1a35d75e2d12aa1a13ae0f220302047c435bb50066306402303055ebaf9f9a584b5597822d1c760698695cc591aa69f94b167b7720a24b7ad264a69af7ab44da659ea93f408eb86c29023076775bac48c37550b40a28ab0f432fc3479da62f6bcd4ef98ab3cf98090b8fa55726347916cb0a0b8d16252ffc3293790302047c435bb500673065023100d5e30d1793d3713f758d36bd3b79d2ebce2e7684597f5f31b13aafae6470d0d7415f15b6aaf7e5d2e601f7b0e0a954b0023002d106d80d57ae8ab089c10d132a937f90fef208952b388f62bd68e67e6d1fd83cd7b948337c87e7eb0357d75bfd36380302047c435bb500673065023100acdb74113f7bafca9dc40b3ea1be68bae145c6c77b7b4ba44917887eda0e0b0612f8d23a7b6b148f125c293616d1058a023003e9cd6132f47fdf247bf846da4a777ac852da185546a6a6cecb94ae33ddb742ee2145c171b24a13956a8ae35244ae2c0302047c435bb500673065023100ae7dd644da53c05d666e56c441feb0f56ebe6c47859907b840f6b60353c62c95d4e0a6bdb482ddee8ce1092a8dac710302306d6a9f719f4bc95272d3eb7c493476e8e04ca7a19b1d5a5043133cd4d5e4648689b2982add68b27373cdd179eb6b4df60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023044944bf22dfa94f2559aff13bd67bac9458c270646b6ad2ea4b7e3e9f2b401dcf0ddb0d7754a40a894684f6f2dd81bbb02307a97d5ff4edae5d610ef9e90b8427d752b3145bff082b7ebbd11711422bde6b25ea8df46417d0747aa276a23f23449540302047c435bb50066306402303af1ace8d7bad3fee169f33eb4bf419e4dfbaa4b14f0dbc144d2d6d5b0fa76970299e0345380a997715c891baa1d0767023069dee48ab58a1224e543d824d0017cc326460f44df17d9a2496d34abf9cbbbc7b469203a6a3c4fd44d8e79585799d1b60302047c435bb50067306502301e0a048ae0b7c676395c8d3c565fd38f46e76ff1490b273a706f047b63d06ce92df74b384010aee1b9a1e0439d625e91023100bfa3802a737026b0988d6436f1f9d08a1896a53dba624b09bde3ef0e3a7ebb168ef4d565d4e2654a969f1434c62f0eb90302047c435bb500683066023100de72fe46233bb55e9549d2fa0eb126af854f67561b6cd674f36c2a8d7a51a0ad93619ad52dd4f762c09107f32034ae65023100f7cfdb664c14f5bd6521a126ce756fd15f6bc9acee672cf76cfe6b54d8072c74fd521af5586bbdcc4fb2a8b5a52eaca00302047c435bb5006730650231009ca9275e68d4da117c4bb4926e8108f886c8a0c7f297c4167b51a34b03f894f8279b65450abc66c8d233d599e1da232702305a15a5dade3f0ec4f6b8735bbc3d1a9332a7cc8c03d676a33c0e2318b71bcf296a60492654bf7b976726495978ac57100302047c435bb500683066023100f702a424f74851be17b44b18d698ba140e93e41d75472f8aea1da507b6361e47018c40cea129d0b3587bef6c207df71e023100e174478a9bdd58be373ae72428fbe8f8dfd9f491ff2b8441a5a1b9d0d6a9ab46cf5441d9c044f1adbe27ac6248ca83c20302047c435bb500683066023100ca18c61cb0dbaa7f79384761542dc4b8f7988e9cbdcc05beccd214c1ca064d374aa68734d3c2b5315f5a833936ae494d023100d54cafc8e6acd5f8046761aad51308177fee97279804177e4a866b6e8d4fbe9815d932eb852426ec743e6b178b1589f40302047c435bb5006730650231008df0ba6f9c84e7a07937e4449071cab41d904a8c346d1bd71fe257924257085a33ee8e5772c38e0a70c6cf57a1e839730230041d9fd50e355db97f174faa61d1c647955ccaa7f87bbd8d1d71bdcb5fbbed642e2eb42715565f3d4ca59b490123824d0302047c435bb500673065023100de880738cbe8cc43147d6db9bf1cdd66a746724944329b43d94bf343371c85e54de51e338825749b310d5ebe28a857c802302083161fc6d61000e3e644f8c45f158c41bf95f5ca238f0679764147e1338af9f1eb6196d7b4c1c13c758269e0b575650302047c435bb500683066023100fb846ce316b09d47c5127a95fd556ef81f62f3a881c15815b80fa4d6e1bb5b9da3016ddfb65d014297f39ce0374822d9023100e18fd1f8bbca74c233c614139be875196d6b9b4a7f31a39f6180de41d4b5bda29bb5f418f9bd8377dee6405770bbf4f50302047c435bb500683066023100a7e4ea454103b0e442f3401b6ddbaf88ce35c67ba8c920cd8d66b3c429f1de69e68c11c1ec9762a66cf6a43e6a71e68302310094407a7c437abbb8ceb9260b75562501695d4062ebfcf6bab62aebff9fb0831a75c1767a860d2f3c1834c8c208a2c76f0302047c435bb500683066023100bcb0656d02fdac0dbea8930c8b92df64af498986a7f18b67152d69d72825d999918311b8cd89322eb11a392e38bcbf10023100cd361feca7bfaad7633bca67ec2c284ca8d5304bf3b4c8306bd923d1fba6a50c41d31373539bdfaf67528b0cdfd546a00302047c435bb5006630640230398378e9c5eacaffb2bbe4130236962abbacc0a9a8be7e72423fdd309cfe2edfd14fd949a08cdc76b411b8305ad98c2802307d0dbcc463745beee05744ab5e724acff3795272ad3803f27b5ef3072cd4b6929d3d5ba7fefc2a00e376fcdf02aba5b30302047c435bb50067306502310086138ffa16a09e3d15e70120808da4938be50655732510e80b7d6420ae979aadf0b83a1074151db6167c9083dc01c8070230249a1501ad1b502df6da347fb503123938d581b19db4925789e6b4d79d5f79f31b4e95fc56a39c2693d6b0a2d2e60b1e0302047c435bb50066306402302a82f26a0901a230f62086a9e69d6ca2310a971a1c81d9ad3c55dce74afd68732cdaf930fbd5b5a37c41d2e1653a231f023035e22f13fd95a78bbdc3296f50a6501f15b2aa9dcc5730dfd542ef16867d7ad206622068161dfc62accb712069d1c2b70302047c435bb50066306402304567553a80c4b67c8be241ec69dd56ba386629d7364ab6788237eda974461ba0d6efb8b58ac508168d315bae3146ace70230634b6d2b27fbadd93c7dc3de42b625043e7f95392dad1e518fbf932541ff580dd4b32a74dc24bb9dab3e94495d1954980302047c435bb50067306502307f77c9df31c4223711709a52298d6dd4f5adb9afe04a9daf29f4fef9d3c7cf7a95b8ab25d52900af52d58728463cb2ff023100e7a4f4342ff9fbdb9584d2358b538639eb20fd3cccaac0bcff3a4413eb057817b71c72eb5f8e1420f832d48925ebe5e90302047c435bb5006730650230720dd28fa022ab7ebf734e986193b85da919331dc369ea6f197eacfc9987bc38568f12867c0163f21a9028c8dcfe2b17023100ef99f3c5de01ef39f73d9819ef9ebea005cba3929b9923a27d58bb338c1128cd6c6f80922bc5d4fc7df98e4ae48ba1ad0302047c435bb50067306502301eebcdf126049e4b6abd8b0062d42a88527b968ebf70af88c5a1a838195469bda67dcd69d41a355fa61ec431641b956a023100f01ec0cb3341c74f3e7faec84558019ff45c1144d616cef069a889244446e5f5d0c3699758d61f1573d3dab817c0a5f30302047c435bb5006630640230520fe16801b9fd769eff55551fa78b759253822267d5d13f12d5be7db015365d1c3c422787d31dc7f79ae2cd29d775d1023001e7bb2bbb79fded1b99f902318083f86e6b46c7fdd45593c7e7dc70f7c3f772eae37f635adf0f534df517a00300ed0f0302047c435bb5006730650230051729357a020448dcd1b5390fb05592e761843177e244cd8619f7e5bf3a28b3f0eb9b37d21e9a65b37cbbe95e39363a023100b3cc789d412aa08a83f713fd452fd12558d93c417cbd564901249606f54e084c146774e9d9fc128932ea904b680f8c680302047c435bb5006730650230341087fbe85c91093e15413676ac13b919ec80b54b3c9d54dd10375412c54b856283c862b977fd821d44af9cf2aec63f023100fa253686a61858df57c496170b978e07bd70f89612f4d0e0008b7ef8118529487eb0483c7f3a4dd3935d9893490228a40302047c435bb500683066023100985fc5f445f11e14a6b0a00f58cc734588b8f1a10d0a9331d0ade03e1e28c993df928651205641ce17f01fbf932fb3f5023100b6e76c20a87d9b78f908f0c988766021f7c60dcd49e99785a70892354dfafd0d0046d4ff78530627b3ababf757f28ae90302047c435bb50066306402305fb7c86d7b469a8ac5e60fb5e805c1b254cfd1cf35d3339e5136cf33b96c36fcd6e2aedeacd239ed542b82aee3152896023017dd4dd75e9ee103c0179f2cc90f7956f865f8187aebbad68fea045fcaef6237900d89a0d4386125b37cba6d58633d5a0302047c435bb50066306402302433f21156eb808a17093880cbd37b860c621d055e44f67c45466ec3561ce87d2fe3e7764cf3689671a260f16b45cb3e0230382dcccc728fcba54a2c6ec0629c81d6a6f417d8af8d4f3471ec76693c07c858622937fc6a5fa3a4d2914123b50394250302047c435bb500663064023015ee4769e90b56ab327bdda83b83db5e25b87724cebcedc7cd39e2b6f9a8a59deacdcebea52f64d9110493dc78a1bf2a02302eb081ac3784db68533196d8ad984acd48ed4fce3b06df5174f93060265890981e7b2879d5c9a9ae5b8d8033eeaf7e450302047c435bb5006730650231009a020ac9aec2c88ea79f1fe60aa8dfce8418628766622f8fd0f355ac6a4ad8ae4d3e2e06ccd37b5bba667147c8788a5a023004068f9b4f3b52e3c67081a29f6ad8361e9b8485dc757f57e18caf65c128aad96960fd86491dfc5b65d8ef5124ac0e400302047c435bb50067306502301e8d25e72a11b789b172e4dfbf3176c1f306ea7323a76e98b5af648343c1f19ffb2a36f01364dd7f8960d10a5cc355e5023100bbacd50e93d02152db1ef9a10f99ca11a69019ca4ab8224f7a2929a496f895220242145e0eadfa3ab7a3a84688c474e20302047c435bb500683066023100be1d9cf86e6150e35ae00d9c829c5fe4599a60c6b74dac3d3dd5a3d6713e14dea87607c74daeeff0160743e528f390a6023100fe0acffd7649f6ff4e0b53f4402c32b4ed35e37b8ebaef1e7d5592cac1135b732fbe72929a171cca7fb5ff7faf8489ae0302047c435bb50067306502302d1a2ea71773add4f59483c376e4bad116822139253947245f0f04647a7ac66c6b7318278de993cab68ee3d4bcb60f10023100a774f01306a6eefe61020e47362467a7b50eee810e2cc3beffe5cea10935357f8c16528788c0d01ee08a7d2784cd7c130302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ebbfaff8763f15c2611d07eaf316a3e40ec6e9b8dc2ab5c4ba7446a371e434771d8216f13f34194c54187033b81b80bf023100d5f1085cdb0ccdc225f397a8cecd85127d7954cf86bff24e2ab1406605eeb6a9dc7630948fb356254a3d3fd5550cb8290302047c435bb500673065023100e313c9a4b30c63eaf26aee6087b3f3626e59fd42d4686097dc4bc13d73bee6e8898decee64a8394b81e1c67a190375ec0230129e31d02dc42d85354bc29a98730802b2da35ccf7866558876cfd180f0889843d530e3823a92fe041bd9e3f1eebeb340302047c435bb500673065023100e6e6b14d86b4d5e1c714f48a040a2c720e638b34d0b9ed36af3ee53401ca16438c91e9364901b81a830598a2e05ca642023029d3d00586f6fc37d10a210eab7c97c37a3588ec71be14c7179320c45dfaddcdd391eb1175ad326785facb5da769302c0302047c435bb50067306502303382cc70ecee5f8eea2c811b94a7adff82973f4f3752653543f98aab1ff7f93cd8b438b9bb70f45cfe4150069ab7f55d023100ccdbb87ab32a861919d65e90efe33439549e97a2626293476cd88d7deba59044d5b6944f5abefae6c0ef0ab44ee225980302047c435bb500683066023100b78777a80dc28947af7a22807d5e09cd3d84ac6afa08ef6940f0d538dc5c9981a8b672b777189ccd5f553b0649778a75023100a6a59eb99d2b185efecf53f51f7fe3725a68b226983e66433dc7a27a343c08da44d8c7d6d807fda197b2f495c11a82f80302047c435bb500683066023100fff7833293dfd38dc4920aa8facb26e8cbe116da9d6f9589be98421e13b1dd22a203f0b11902d9c5629870d3404c19fa023100b1377f3dc48860dc8f63b9cd86b57d6b73cffbb712437ef192d4622b3876d77750ff488015e81bc23d6f682d98d229850302047c435bb500663064023079f2b2a41faabf9c881ff6634e5ba0636b6e100f38fc4f91428d80b0c70bc4c6b7eb59b01bf3e95c46ef402df429b57d023015fd595c9dbe2bb6db7af03e63c0423bfb6a9a2b96515ead4b23829374a58a6873394132fb3b9ed934097e756ebf82610302047c435bb50067306502302d4115819675531d3b7dead413bf694052fd48290ecbf0a46f92b7e03cd9502a2a0f67ac87debb309240ee10c0372fe90231009c3adb1c7420a66e04faf67e141d0c857128d1fdf42cf46fde5ae425815bc99b190224ed148586e988140d13dda965390302047c435bb50067306502307cd3b98ab5e8d71e33285e74a6efa5f137b318662f0bc2f829a3d4cb620b13714b657e5a03bad5ba42c2aa09c134be7e023100a3a3f175a9c2d8485c8118c91fc8c1b73a9e487c24d0b5d667b2e2d48c16eb19b785ab0bb3b31e77add5dd29218328760302047c435bb50067306502302d4d1cd346a4846d4d031aa67d42b5103088a8ecf8c56d74a223dbf5abb62a552cc8510cc8379a16eadf069930ad1723023100a728413cc705f66fabf542fd329402b5f0fc67b1fe1b75a8af4a2f8dc6c772312a6a762e5140c0db521bfb5bc4c86dad0302047c435bb500683066023100fc5b81a7cf919eb71f47e80daab7b9514c79c79f702d963acc4e4d0019eb91df0d2b168334aff8270f3c84689ba28e46023100e1ee750d04697574b15601f0fc74fe147a455151fb697a226da425c18479972e11d67419fb26c6afbbb5b1eb122f6a9f0302047c435bb5006730650230249e91a14c164613057c412d8061746fca77c13bf0f1f45a65630a979626a890f69fed4df3c368ece0c00c0ad077b1340231009e2530b6426c308b708be02003c9dac71b9a900fe00d625902214b246297944dd10f90f2ea7c8434b09c580e0bbd7b4a0302047c435bb500683066023100ba9e5d964c8b61155422d5e465b2604595234f850e941f492535676644cfed47d03686290ac5aacc7dc67ea42bacca7c023100ed2e8163b47e9d5e889608828c5b3e4a31a70ed2ded2b8352e5bd9a763bfebefcd3a669af2cd7e32322f425d9b76021e0302047c435bb500683066023100fb10f2c9e74a75d6fe934d585feafe7281984a63761ca8539ff99786a179e6e0cb9308e6f0e0c4e1463854777eb5111a02310086dfbc83aa1d97bebbcf7c9b2aa3c18ca820d12f69877fc94913530c6d26025fbff56f944dbacd10a4d847c845cca88a0302047c435bb50066306402304b850c7a5710057eca127a0fd1987ee1eb6dcfde785c8d859326206e9c22cbaf447e68c1e7aaa46b380577e7fc4c150c0230299b094cd915070c7c8c25a9bca4ea366311be57aa9b0a346da8f173f710700b20f06dccd7bb2256fea0f754dab56c820302047c435bb50067306502303803617ac39f72cc8eccd6413572cdec78f2afd8abb6e958fe18e98de538f5407eb0f56f1e776e961b03f472a3d66176023100a097d5a966aa4e4ae4d8019014d0b0e0c0ef60f4dda546d7d8c1474243ac74a21efc6a0d9f49f473a0802f557751b4d80302047c435bb500663064023026486a252eecdc2e496eb46f8ab4aa90fc7d5e7c1d2d77c0cdc85d6a3368aa04f87d57380b9175c32faa7d3e49917da602305cc4cd749b5a3d783fac87cc71dd34784bb9bf500c78dfd2d01fad73a040e04068366606a27357087690a220b33b6efb0302047c435bb500673065023025bc9b76b744c6340f70c2368d44bd782472fd75d09ba210cb5e7c23f21f9b12d8f26be502dc7a87a1b328d068260bc1023100ada387fa9e29e7e684325c4778bc5ee0cdd072696c7287807648f0130486d19364bf8ffe96f3ca883acf0e9c0ae9b3010302047c435bb50067306502301ced69d204d830b59137ae34cb3a99bbdca0234b5ed72075415a6aa0256dc1787878908ef5a4bac209a0c04ff5847bab023100b0674a7672b2f6fceba5bdbe16f4e157f9045bc04b526cfb1913181c6eb619239bca0c2831ccf613aad038612c77b8630302047c435bb50067306502306956be2973874c4a72472b269974078f86e4d087910ae31d82d3cec48c7b6c394647a8791d0dfced7f938067ba89b0a90231008f42698a2ad74097d1573410b86f8cab98a61d181e00a6efcfa92d569b015ddbd35e37b16fa4a3bb24f064e339eea4750302047c435bb5006730650231008186b4ec4c9f57ed4ff8fc73b4cfcec2931ad5b6331fe21134fd58cf7976ae4a72b3bf1fd055a64bb00167246ff28a58023035c0a5046beef3a8bc81cd0e47678f05b5fba2920c2b9eacec84f0a9141d4c61c639e37e23066869ac95111fec231eea0302047c435bb5006730650230258660d2759b519f89a6736f85c467f16ba12b0cd9216d172d8b11f484811c804caff13fdc0754578ff67cc1ba6fa641023100b0cc0bd1806a1b51c273eaee7f7e9799e003d9c1719828dcd26c215aa6bfa1f429952643ddd210e7e4a166cfa79d60b40302047c435bb50067306502300670da3e0571a675aa5b441a3f6a2ab86146251042389b72d9a9decad1d73507e6469a98a2b835bf88a3684fcaaa55170231008ffab4b9c8f3aac8384bbe7e84662e98b471b878e3e3a612f9e6e7302a51bf7dc881356611a3aae62a8b3c25775a1a210302047c435bb500673065023100afa8aee0f6f68da02dbfff7f8209639c824582c3933e1e198edefe9b0e8f2e40242c738b49feb6db550413077d6857f2023022c822d3c9fae56a743a166112627161f6a6f620ee2a7a42e95c18fefc9c39bb78d62ac8ca175f8e06edbae198d6b4a70302047c435bb500663064023015e1c0e05a4101ac2464371b1a4e082835342cfed47bd51ec3810db559acd04d32a1b89a2ad450847a213d5809efa4f80230306d4a3e3cb3a9b18571c7bc01c5089b06c1ca585d61a71b11bffa1efa301f20b6b9cfc4210335fb08e2b9b97fc0d8c90302047c435bb50066306402303726b972c2c0f723ce6f45ef2a5bfa01a955aa884db69eeb07accf0718686d5a512adeddbdadb78e15bfc1af2c5c3c6a02305732eeec33964b1a3269fbeaf3393986647b11de43dd69ca4b2d342e3dc90a6fb90cbd63f47175a208421030988958b40302047c435bb500673065023033470f02b47ed5fab6b7b2dcbc3f3ec4f6eb072a995ac2c790d576d9e64f32eb988e6ea00b0744bbee1600f25d4339ea023100b5933df6449c452da169dd48e829774f69c50523ef255038a60b6362747f7a98826fc9be2fd9f64a8caccf63f19477760302047c435bb5006630640230377500978fe5bb921535e7d3961dedb0f9d26102745b91d1b308bc0921714e732659ad0bd8c0b622d2790b9d5f28b54802300296d518bae38fa5bc5f26095ebf9d19c1b9fc98d75e5aaa4fe637975256935c0ad1a63f976b11e2d7bbd576edc42d420302047c435bb500683066023100b0f36285bbe10738d3aa15e0115bde30de9e20abba1e3dafe973b670fa083112b2a12a2efe78f4e304620598588a9b91023100d589ceeddf24e1b6bf0af2b1ae7f08b321fc9a6e3dc91a04b68b1a5f72d4c91627fa3acf5d4f93066632c824485e7d980302047c435bb500683066023100dfb08c63e0709261cbc6138a7fc609efb4ae30c6602462c56fd346d37550dd52ecc4359348a8b8c13dd5e54528f79803023100bd827fa5cc08cfc91828a9e296b2263edcfe5329336afd2e6a273a02747ad0abbb819f8c106b42dfd55ad8c087a9d51f0302047c435bb50067306502310085e542fa3b3cc9737eabae19c02ae6ad57a1db656d3d533c38f66a17cd79e8e01d26ee89d1d0125e775a8d9c2514cc9902304744431659143189ffb35befa2afd1b657318821ce65ec3c737946e06245611ec37867585eee398341670cab4c8a6b7b0302047c435bb50067306502300cb7528b937b5c8b4ad28b9f848b4255aac2136c674bea4b2b3db01cb18bd5dbe1abf123613a7621c813370c30cd86b0023100ad3b60a3dee0074de20a3c026b8cc2f04b174c96a8d7d5a39e2696cb6fd4958a90d5885a535a34a859bb89153d13a8f10302047c435bb500673065023100bb59c9573ab6489f0159bb0f10eda79c65a69797910b65489fd81dc9bfde9f9edd404a7c16c7b529491e084483cd097802307c01d60da40faca95a706b074d059e6b02bca2115ce7b2cf4d2025fd6c749ae27e461efce629062a75963828800dd3b50302047c435bb500683066023100de9deb4c51524f767afa70bdbae9312f15a9d0d93f54b5807ae025861cfab3fc7e1880b384d24f0ba03c7f1e46dc78d7023100db91b0b7c357f3d23c199782785834a3f9988c112a3c5b0e8c7944e63e63d619baf33966bba0ef4bb676ad8ec13e45c00302047c435bb500673065023100f54fc3fea402d3a97dc72e888b0e49fb2f82cc77ca55abd99edbc1326a696ba9483d51743b528c6233db2f2d795ab45002304e1555c4989775bc21a45cdacfb223e7e3bc9d2c355d09a1c4f6e24184166cc737fc30597568aaf363cad27cf4b3bf3c0302047c435bb500683066023100d915d063b7fae0a05e6976e5b1767e1602dae4fb11031aa9a3bb7e705b8515a06e2995c342634f52408bc0628be0ccd7023100b4be619570667cc37a457a93db06146cb7db65adb1b50a9b99aea23511f601bda7fc6d53479b37566821adb6cce05f410302047c435bb500683066023100bdc61e889007927b6a3b1e60687b1c4767ae11b86c7e25e1e396acf2dcaa9592830969fc798e1776f2a98e39f059a3090231008a5bbc8a0d3d4f86bc2ae9b1d58adc54512a314c585096a7df9234f6e78d653b376b0b1d5c0d6f20f417f2bc08464ed10302047c435bb50066306402304d71ff3311648b2fd39ad13a590440e2c90f6e59f8bb2681d5f56519f1c6ee044276e0821059dbbf1e30aa4db8b80eda02305a8bdc7e2ff882931bd498ee47e9af40a50603a07cfd8e5c9767989989a684ee6bd9d61014c61ec7fffa5690bd3c3c700302047c435bb500673065023014ba68a440774a8239b776b6719243c70c06ea92ee10969c18858f9de0a95fcc0d8ba452d9a3bada6a390053692e7591023100e57501fbe8eb0167896565437ad2bc4e2011ec837d3d7d02e2410f8f3cf5e5576add0fda71e3b319ea697413bef367990302047c435bb500663064023000c454bef02872f71ab35fdd135bbcb268b17c753194a3dddc615815e34085a6d99c2627b951ba3a7a5b17b8c346eb2102302c8a02c6bfec1fb720e2444d852bdbccb2c722a74d5ef2d50d59c77be3bd6864b640550ab35127c8b8e45bf6df5d47630302047c435bb500663064023007ecfd5e70c3eda45ef5d629b8929347de517a4bf8ea2752e96fa8729f0c572d1c11f3cc194945b8b0f2a05daea25f4e02305cb64ff129f0478a12964fcb402dcffe6f18c08f942c3d22fca95b8be95085bcb40d3e53446c089e77ed267ba722dae60302047c435bb500673065023066019de490185d13d8bfdf8a48c6cb81ffb565107849b3d362da9e6561ae47c68faa96df85808aeefda24dc6053ebcb6023100c26d13c14d96219b2c505300714b94812185bf4e9bf711635aa66aaffcca6363d330978e2147e3918eed1013f16633ae0302047c435bb500673065023100b25b44319e436a81b332d8452edef0ee161f4c4f81682941def942acf3f5dc6b481512b73c1578dba1d16c57479d5cd802306a449794998fbdb63b87abfdb7d53f58a6b2e69d2d5bdbc36370b78cdc4c1d8497f58d8de8b84020e2ca64842c9f68d20302047c435bb500673065023100b67a2240dc77ef31394d790f30c4afcaac7b16ae1af7db887ee8367abf48d7d5fd3da432ecf5c02aa7544fde9225cf8d02301f7389c7c5f1c345d8ee62383529fb0a225cacc2bb6eb32b965a7eb227437a528175e9cc72edd630338b76b0100a368e0302047c435bb500683066023100a446024a88ec5441826402dbdd9c8614bc7eaf329b5e58bc3c4ccfe315bc35343be2fbae38f1a39d83ce1d865cd4fdbe023100c2ea876945dca7fe7bb1d3b12d20bd10a58a51e342f79c0158a38b8ecd3221b1a1939fb16112ee2a10d5e319e64743010302047c435bb500673065023100cec31bcc32f013135e3b25848be34340f62ddd4c71ea53924306e902e721573c365329d916de486afbcc2b85471afe00023066614dbb0cd4a286a6f6f4fcac3b24ba73e49eaac25f4d0e1379bc2f40ed5df4024321bc0cab9d17d31d79988cab16250302047c435bb500663064023001cec3f852429ff922301fe660be9a33ec0e7fb030610acb3852aabf4df96e91ce02d92aeeff708adf06b9a1cabe452b02307012582c7dc6454463a1d3035001a2b7a97984e539cc71a64c860e0fc3ed95a74a1df7ea55060c6a9d465b6e0c3acc210302047c435bb50067306502303557aded92dfd83ca7273656f6b06a85300336682070cd70f1229ba6870a3d85876d66516043f24e2a2d73e8460c0b730231008978993d49edde66261c84fbb37c1bff61a051dbe6e84159394b90f8ca685662db07c0e40b0113ac2994c7ded95d4e010302047c435bb500683066023100f167023520806afa67809c29c1cda10f230007931d004d6bd91ed8e63c909b4c929f76b32aa077db80a20f63b7a6d9be023100ebfbdbbeef60cddbae93f4ef00cea1e17da5f402dfa7235cce14d67e0984488a8459b9d417d7707fb04b7ba2c3b1b61a0302047c435bb500673065023100b96cee9491e9f2dbed4e92160658c3e6624d342b92c080619dbeb58a5ef2ed89819fa3d5a2a03e61872de8aeb0c3edd3023036a35a5f429e0ec35a3bbade181f95cc0f0acfe542c514eb79772a042fb89608e85d95c58b464476b30ad1acf146b8280302047c435bb50066306402302410726fba771d5d8f1db19cd3246e9ed16f29cfc139e4c67b4180e12c1ed928093bfdab55c644fd6c137dfac401707202302cea5cb5667291bfcd66d3ac5de31add8b3fc3a5887179ae5acb857c9147be7e56e35258cac7247f1d05974b10f430940302047c435bb500663064023026f7193a60b7df5f5d55e51dbd3b9deea791829f4fecd9c2d97acfbe83fc36830d80e3d11a3d5cfea0e313d31e50e45c02305770a5eb23024b10e61868139a97f481000baf423f420d7778c258d3b4760d64404e706d4bc22dfb4d7de5dbdab810230302047c435bb50066306402307c2768b2322cfc1c69bf42ed79fc5627574966bac5b28b58f1329dc2b3707b5dc420818f2cf12c58e64f01ce9abdcfcd02300190313fe85a4a35be5da0f8961712b922148f361e0ff54c5b5b86266fe8774b3962a9d498ca92a91c7a8016d126e2c30302047c435bb5006630640230564b23564b3e27279497e894509b6fc204c6c1488a0bd21931c3ea75ee2dc273c4bffeede21c4cb1732e39d7f5ae3575023050f0cbafae65583bc0ad11d3bbecf5ad321086f14f7dd013f32f26940f6e5b62a7e53a05f8ec06448d321462017967060302047c435bb500663064023076e5b4444b21d72f86acb4939f062c51a048c6c72d670c55f32b2328ab282e1f6aa09234f10439e5376dec2c384295c00230070817fb1b9073c94ea2b75880199af33fcdbd8bc8f17c5278af0e30264904cf79b5b52e9a6e645bbf6fe3eb3107a23f0302047c435bb500673065023100f689ac7d2170a9236991cad90e6709cf527d1747102d14b9c894a2dde2b5bd4606801eceb2fd6e888ee3b311c6cd851502303d85b3d5e2247808b618717c267fd9c8eeeabffb512181d8848f45da3b3a7c177084a9a2b8c2353dacda19bcd665ad900302047c435bb500683066023100c6feb6d8ddd71b65ff8b6fb1a04c02bfdf1a10b307d28365f4f1db43ae9545f4f11675ed26bb53112b81f87417b6f4dc023100802c457a354d6e8b4fd32ecf47e652fcf924f7ddea3f857dae92567c1df41de5cbb72dbb386d54cdf67bf45be574eb500302047c435bb5006730650231008d5b74387e7968ee66bfbe51c49a412b22db3711102098df0f6f0deed22c76caf838c51ba8c80b31ad9187d0bfe3b1d802302c470ea388cb8f33e82121f0f9c5c4f4a9263802520de320c230bc4762ff57b421ee4eeb501ce4bbdaf177d90157b9030302047c435bb500683066023100bd5472b5677c67b183ecf156fbe4c05de8ef3498beed2f70232cfdb398f110bd4aee420c4ce43b5e1bf04b7120d3abd9023100eb2ea3275bd4ab94e627525962e038045572d3db051b6a8e0701ae081f0b31a0002f4b43bf2f42ff1e3a7e33adec9eeb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023035ade2f7b6b3098e691873300285c6fcfdd3638387b632835a82f57bc20548d616c3ea3fc6b4aab53951fa4051f0b66e023065dc7772f29895e28d66db400ea8aa3745d039e954529c069bb46944345c3fb668bfee037292c00c97b01d27f01fa3a40302047c435bb500673065023074bb3d561149e33cb82065b840fe0bb1a85332efa06a072386eb6ab6f551d2d1892879eb5c242cc75f17bb3c5f73d73b023100997b753c337244a93e3aeb8d113151c3fbd658fd1dbf2beabf5f32583d10f488dd735e5e30da87846d5c8adba447cf320302047c435bb500673065023100d58efc04e0b6db7d0c9f6c17f7603f9968eb744104537fb8a3e0a6110e9dbc7a7675f07489cd176ca526fa3734ea196b02302378b34883297c1969aabb8daeb7b6dab38918f2b52677747e07174bf95656929457bd4c1b5dc502854a8236882b677e0302047c435bb500673065023078e70e4bcde0397ddbafd82e0b4243a768e47a832984ffe155b8cfc3cd19aa14d1bfe189f119dad7a585185722ba34ab023100c1e470337c0b0375b109826df533a7e9ae7cf1e00d2cc7200560a2d1cf2b47a9a5aa63612b75ea65084c488aa990b7fa0302047c435bb500683066023100dc4a9ecf13013c7f7fa589209491639c945bf4db3795172c8fbbef4a6def0e7a3309caf1d39277891db8882810f2573c023100dfffc585503291f78a2f0dfad03cf1dd813ab2eccdfe221d25b7c0b0ef65428738098638c76e8d422256cd4c0b69d23a0302047c435bb500673065023068f0b4df90d2da04a81a08080a95e174440c4c1dfa71b375e20697a8c44ac472e6d0339f7209f780bb34e43873c34361023100a5021a07299db0c2fec47b498a057615bcb721ce6c417ef7212b34b1066b9e48c5513cfb2d02eb232977edf9083ce60d0302047c435bb50067306502301444473cac1c81c8c744db33e990f26192c583726d300919d6b039cc9f629d2cbea31e422e2e1a09e4895b82c6014785023100be0f0f9fb3350abb10a65768c284fd9691d24d540aa149b9019a9c1be43e1897cd037503de0ef28ad967031aa6860a510302047c435bb50066306402307e6ccea44c8f01259d005f649ba8c5350f7533f185b31b452e8177324353244730d024a0cf4324fb67f63867fe9f98130230305b8394d5107e8e98bb3e195c6974e5230712ba8a798fcf1be4446f3baf12ecf84459d1c6675380816faa0920e64a330302047c435bb500673065023100a25cf0389d74c62f0f4e696920335d19beb3a0be66ae47e2b63db4d918968fcf6f2dffc9f09238ed3d840b8dbc2b65bb023056f32fc6fd8635c084f616d6ef64861c7df92c644c7b6768f7de8ca17fbc1689822c6ed3a4e2df8dde2cb8ec70d670e00302047c435bb50067306502300b0dff6c974027af34c69432f49cf9405aac2a3bfe93b7a16c46b6530de3ca5b04cbb4ec1eb9bdb32b548833859d55e5023100a16836ae982637419e75cbf5f65fcf4ae5de958db5b6351d5fa1b388443b43a3f7a08e6b7487416468df26be6d63cad90302047c435bb50068306602310087bb168a688c4731a13f831bb29160b1c48c912dabeb9726b24356bcd6afdf8fc43cca0a51363bad4aee88c35441747a023100ccb250e3e11bf9402b7afdf76336ea7f3cd65e9bfe67ff4b948f7ad83d338dbde9e498a956eaea20292a84d6515dcfd80302047c435bb50066306402301814dc9bb0c198bf59b10210455501b098535b35008da9f2cd448d61b0d88b60b43b6e3bddeb57946c0a676697699675023042071cfa419b9e43f12eb0586d83780088ef22cf230fb90530a9daee1c5b7d770d253f2ff6061f25b6a259f95b3877f30302047c435bb5006830660231009d237813a90de6ac892a52d5a99855dc58dbfdf8c3af5a720252ea25bd735ab78d4c26f794b63f953475032b5a79f7c50231009f7a08c27ed8c96d7713a7ee08375e0fb50bf9eceb903f9cafbad142f04c88678833dcc551344287cdb333c6082c0c920302047c435bb500673065023033c337177d85987ed69af6ed19ff28fd0111e9c4e52f534c169a2fb51b643a5d8c543d1b10bba118b0d5f6c1a0546843023100b9ae4ae6f757550802a23ad69fd5b73e90058f253b210ee50791664dc57c58a642291c6be1ea194992ce081a21a0b6670302047c435bb500673065023100f1e83fd2e64313d04b08f62e93ab47364716e33cf0c0253f8bf3671fff9c27a96e3fc01b448e628a5c39a531e0cfa5000230106aec7d54bb8f74485db9548e90f3fe98c9d4181803064594a54d14f60e04d43c0d5c0fb40c4930c547db97f59e1e680302047c435bb500683066023100911a74c7c956c1dd6c9fab43e712aa82ba1c77c30c7e110b329d642c906c5a9c8fa142f873c11f6437d4705a3a13d159023100d2aa117f048e99164b2974540168dca9061269ad670b6460aa72e4f5dcaea5835cf8d2b431933c37d804a816a6dc49900302047c435bb500663064023017f7d4b2c67ea57425d7489d107232c51e0e38eec700a78b5f162817bd61b5393e4e3c6196fd95db087a6d6a4910119502301e92dfa0cc61398069b46c33f79986e25fcc68d9a2c606982572609b3c177edc1c83318ec638e1e65a3f6fa7958c04af0302047c435bb500673065023100bae1dcbfbc72944b2ad2f30b35354f854909bd1f48dfde43e536f89efed7994065d8b3dd41cb3785d9b619011edbdac302306f968b03d2f335a3b4685878287bff4638a1b82d5965684d12128856e46eced8f24eed4174e6a21ba56b3501a7f388cc0302047c435bb500673065023100baa3fa12b6440dd2ab37fd4c2e13d418822c6d032a02b3210de1eb1e575de127e97e9f8b7062edbe20680a10408df814023060cac2f12f050a501424c4fbfa097dd752e4359e43174367400e3cd40a07ee0bcc96f573feb2c364dcac1b91c57584450302047c435bb5006630640230532eb5d9a714585d3dde319d4603be80253f3ccf085ca774a7fbba8a8e9fe312459e778d113b3cbfcd53ebb70816c61e0230510498b149ed588d4db31ad5bc477ae04b999f43278d9c295235d2f1396697e5d144ff146ff3500ba8804ff0a3d9e6e90302047c435bb5006730650230429dc28842db6ee9e72b1e8026fab73fe59b6a72abd1563fdc1e5ecd06c198a0b287da4280b1d1ebca92911ad4d073e5023100bb796b616763903e9f96313f082a586be93496d6c52d09c6ab4a5eb64f26ca806c39e625892cdb1335066a31a559fc430302047c435bb500673065023041cde71f6a0f46262777c286597a93b0cf71dbd4a25f4f9ad6094bd5f5236ceaf22307ed6f02e4f9c581b579a10e254a0231009a4d6f5acd1684eea61f60937832e973f6cca72d6cf810f4a6d97cd3e70f60ec9f270681d5f3107142d823b39a04e7ab0302047c435bb500683066023100d92ceb89a955eb9977c8ab9f6b663b34444169ec62fbf22bcc5dc1168e757f9e03dffaf1c75d2043265c24b44588f67602310095facb8cddef76bf3c0fb7ed40adb3f043d6a505793f1fc84af67db237ab1722fb8ed44c3e0c25d89b379b0d4d147ae30302047c435bb50067306502303cc711465bdeb3ea4f1f07a8fd8a75ed1a58c6a00aaa29ad882e6dc72bcb1c6cac5d14939a8dbb21e2000547f22c3b69023100e526ad3f79ab15b77f729c24b093441292ba9c16229783a8487fe9a2e498e15e20905dd136f84faf5e6a7c30d9c9ac0f0302047c435bb500663064023022c12e61ad35b335569528c3cad388a63de2ecb5bf64bba004d402affd900803c4e2d018caa9c4aa52dba9b847597221023004bbf4ea60a6e955ba8b28abf473e9bd4130d2a4f22457428563dd53f1551c1df0ba36dd9405921c84c566358a7204c10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303c4cc5a8c8db0ecd413c02b813112098d8b0aea3f76ce72f9ab31a06b6402fbe3f303146aa64c4d8967b4ae6ff9a7880023100ad16c524fcc56a22791e84a6ab5c467195a9decfe058e5b48371e26c7b3bd505d4c1b6beef9a18de8f690ca6db3c169a0302047c435bb5006730650231009a25a2404481870861f77df50225058e3964893026756aeaef345280af01b65c2d9b08b5ca711d1b1334304bcbd40dd202301d10ba17f098df01cce8a6ecaab946f13474cb7dad1af9148785e130e5308aeb03d8ce5f8505a19f995aff38a7739bb70302047c435bb5006730650230021be87e6abc757ae0845e84f221023cd7b1e2424049f0e1bc0eb2f7fce6d69e5b2369b7109befcb0f2626b1f7463762023100f0e94433070bedd038a9f7f4a331396bbd661f3bb3368f6b35f7516c1aeb911e5b5ab0109f81dc1dafc62a2329040ea90302047c435bb50066306402304e8d7b5ba5a50da88e24376212ca6a187a738947557b6754616cb465c1f7e869a5540cb6d0a549f3c853764ce5c29e0002304bad54437c38ff7cc62d942c89217afb4859eee27b21eb306131c244f1f9ae2f389940e5da6b60ff8d1bdd77bba5a7b80302047c435bb500683066023100d0353cd7f72bba01b70dae947ca68e8ea08b9c6e23db59f355f312188a87796528ae702ec2c0e20dd14e196e64cadff9023100997ed46b4dce1ab60495ed705088d5fc27b785a9c35a7baab6bc815693d9cdd450f8259fd50bfaddafb42af2a3e4514c0302047c435bb500673065023100a2728e5f54fa34460c6a001d4e1ea39512d003e02978b25434037155c5bbb11233334f9506470055d9bc1e9e2dfb025802305ca7a20b6905eda673628ca7124751f40f1a88a19a81d0bf9ac69eab29781b4aaf48c6759715afb5a7183c23bf7f184d0302047c435bb500683066023100be016e911ad7c8d3daa6b57169141b32a003dede869dd3094461aa664bfa6ca797d04355c78d6c20de14b01330155c2802310099bf45f36c8712533aaf35ca2b695bef39d22cfa4714607ef2900a5eb0528cb1fc8899309f0804974d4145a1ae0550b90302047c435bb500663064023055857c41f827441ec05674c50d57d04cfdefc42f9352e4a9f59eee581294d61f7acec765d397ab08c63e4dd32eabfbd5023060d5ae9e9bd71b501a7ac3b811c0d9c28948ffc493853d26cb305a1982eadfd88b43eacd189e5937acd7d0c60275cef70302047c435bb500673065023100b456b8850ff6491d3ad7f50d7e89f7034686cbce7b72defe13b1a099ee443ca501f9a0fa177636c101eeaecbeb473e3d023058ce66e47277019394e2a6a63a5645db6805df3b5ded9792ff0a7bcdd082e3c8eba6995c38686a07e4237b41221494770302047c435bb500673065023100a472db43d432b5475eed402e45695130e8d9e47cc3a756d59ff619291089139eef4acc9b5524d3d4a1601bcb4263fac70230798befae4537ea135aff2b155f30b75883f1447a2dd4955aec7ea27783ef9272a700facd3d67c8388784544de3c339930302047c435bb50067306502303956425be8cb234e51c84c1c868f08a338120943c2a045f9d4a44885d89da574e67caec666d897695f71b2f8ec21e3de023100a1c30015214b5c8c74251e3c4a2294f1d01907a96dca35f5035541e737b2259f4a4c2a66967105aeab1bf4872f384a890302047c435bb500683066023100d290a0417308d282b4b3a74969b5f5191864228c02424d2651c2e0efbcd941bb09b6dd51b5c4fd523d430662daa5e2b4023100e50074c966b01b6e6c752edacff70a68fc3aa15999e9d26f544ae1ac4f4f59ddddf0c9f138e40722022286d7d9f14fca0302047c435bb50066306402302da9af5ddf5f0dee31c489e789571173b0230d2ca089f61c4ad8ca82de983a8eb60073c6e8383cabd8bf71e64bd43c4b0230011d8958947a364a00f929019d371ab13eb7f4141f9138910dbb7511c0cfb0b87295ca972de0a72a83b070b9f70838c80302047c435bb5006630640230178ce33069cac98b4341b393e62cef4c030ab878b87382f23768b2703673fe10b93e7151ef3bdd86917c8133fcf13fac02302176d909d5dbecd5e129043a993f8d8378ecca9a0310cb9363d5eb1e12d492480f4384d55cfc76c833737b336f373af00302047c435bb5006730650230422baebd0b6c14a113270f754376f330425557dd7fa872ce97b10e6a68f973553a6d35b0423a23db8e7e29e61e181f13023100fa8d68f271e8be0a0173c750e11b9857f397948c862c234f7faf295193bdd0fbda97dc4c60f28c9b72d131e46c77def50302047c435bb500673065023100fc01b52516e0dbb5b73cc91c84bef13cd44b72e89fc359f305cb207f7b6cc53ce289ffd34d1cdcf68b46536178118a0c02300695245bf4ef3a243b9d4fea781de66c7fbeacf4a7e968b598de94acca3d1e67cb281134d7f6d83bc59dac29a4bd62b60302047c435bb500673065023009c00ece26b5149ff1f10e669381080751aacb849c8d307cf4f9abf9e5c7f5c71fea39f7fa6bed1336b9857090db4969023100dca6cb2146332dd769f3acdd15eb4ad1ea42cd632ef703faf23ba84ccab55f898d188a8498c0f0f2fe3c0d95ced99a1b0302047c435bb500673065023100a4b8da4851e8593bcf604821d2837991e8de82ed6378476f44030f1771f89ab823e324582324ef51b2c996dd0357f7d002304095585860698f98f28b0419bb577637e71eea212afc5619006e3179c0502c56fd5f6c534ff2c38cadcd56fd65eca6370302047c435bb5006830660231008bfc59fd83de9d40288021b4255638927450c976bbe089bf5c6d89b982cadd3ec704de584dcb266b1aaf497245d1b159023100eed01b53d76be7831d3e5693d43cd41765cb791df1bd4defe3b0db5e1e009190c800d35b092141131dbfa0b16f9fdbab0302047c435bb500683066023100906188c5463680becae393a1379145aa8751794e1e073f2ef793c8d1b4a98726ab1b04a98195e3090cbe4bd17a32357b023100e003b737af0e7df245eb91a7b8f0bcafa8e214e8f0a5accb7f01e974211601076cb71521466d7d70868442301deff3a10302047c435bb500673065023033539ad3ebc1298cb7a12c8e4afb634d0a678c4a67527cf965e0b5e2c98791499458f66623461b88fc204e02fbc81fc7023100ff3d510022015a709e09618ecc0448b1bfbf5f904fd371eaa910776f0d2ca90ba5628ffb47a9db71d60f724892dfaecf0302047c435bb500683066023100a5772f553066862e250b8cad4d548924598435381b6b5138ab9378491fec58b5be0d4ea8f176aa250c0a2509324b0a14023100ad1fec57aed3b678b453dc0dc1c44b8a6cef2293e4ce0c5faca38f60c3cd484b4b3d0769d7963111c410c602f9b06dc70302047c435bb5006830660231009a8eb13e89d2f2b21251fed82db2a7c8d225280a264570f441681d18f021d18866d281298f338d73709841941ec5c683023100ce05132bbdf051c50dd2a55039003f70b90c6df1252ff5250771c4584afa3b37fca548cfe46741041d214eb19e091c280302047c435bb500673065023061201e11f9736d80663e46d55aac911aa1134f90748934c9a7d5ff3490004175a36584171bd77d0375ea1f5214b3146f023100d5abd1a9fa83b3797a63d89af555f13b4f65d4f5a40b6cf9eb9cc5205b47c7bdc0e7ca10b5959fe133e81359bf3434df0302047c435bb50067306502303be05606e3737f7cc9af9d2aaf0efbe4d82713a7a20608d22fb21ce23dde0005cccfd181646ce8825de48d472f25480d023100d6b56e20d04ef046eb1a11a6cd08decb035fa21444a438dc5b7ebb33a9c29509a40e109f9c7ce640c983a6c155ed214f0302047c435bb500673065023054e7db35fd679a3d3d4c177742972110ce4b6bc2ba4fa41b41491a76c71fafffcbd1afd1c90b1faf82e5fab9841ae30c023100d1d0ad9ee30814dab574fbf6c438429da198aafe61e381b863510995b71148b86a7f57b03c20b2d97bea9ecf92e8f31d0302047c435bb500683066023100eccf1ce094cd0d8887bf3645d5cc142ff1f042ce112893520b83e86c64afad5534d9ac8767d52761e467ef456d6a85d8023100a0fb46ba8f69f4dac0b4cb532e41f79f3095b434802d1faa6145198e8dd741929f76e075c923d900b9c403b039379c6b0302047c435bb500683066023100a3d7c031d24ed8c915db4cc62e1788ebae7d066bc88dc82ec753154cd52a6e36a7d5bd4441569ee63f74f40a68af0662023100db4cd685e00e7a4a65605ac7ecabb9487975e95d183b09a8268370ec18a0d686c175ba272adc2e4411d35fc1b98039550302047c435bb50066306402300c8be1825328b2b75ff135513a8ebda06afea756f25f67213e4c24f41a50d9cedb882b6aab2bcaef152db78b82336ca102304f3044f8f84c48ecef208b8352a00a596c8ad82c2b35d46c3baa49a35327ce95e104dd49077de70b2c82428945dff4aa0302047c435bb50066306402300b70e931f649898fcdd25728e1d7c4db990136f47560e65ab90a965be9e118d323004fef84d711dc8dd5e0e3b009dfa102301d3d9df8786f2c91024740dafcd51d357803da607c6fbc085a21de44fa0567ddfcc4965b50c2355a908206ee643774e60302047c435bb500673065023035a77dc028123f026ca899f8f35dff13048911e913a2e093038c770b547153cfeee9284717120f87276ead852ee99f5e023100fa692b18169de8820dd959a3715d63c1c073baea555fd2562f09006d32442310de6104a6f6263d36f9329b5d02d704f70302047c435bb50067306502303d7223ca1233d7c26c723db12050f182588a05665f3ed1a5339903c4552ab9e9b91c217c07d798755431521554716c8e02310096ba6085a8f6cf8658b3d48b7d10a5bf0b036781acf9e0b22eceaa63e259912bd5ecc1d82ce771a78dab6f5c9e31132f0302047c435bb500673065023100ba8f9ded1347144319243023a2090b34babb3c2726cd62a8f9fb1a239d4fc32bc6ca5f607e96bb1f873275151030698502302f9d9db263251af449a49c5b77b3ca2f7c7dcf0a1437f5cfd770b5ffcea023c1e062ce16ee7a68763a64d3b4b0f41a620302047c435bb500673065023100fbdb0e659a6af9e338fdb59c697284bf162f6826bca161844c08598927c182ec2cf9f084dfbefb235c64bda89cd177600230237c92f12434fbde545c073e3044c654223cf1026bcde08ec02563b7011708545538a101570ed3a6b47d0a10e7b47db30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009268627a5f851a5abcc660723a1c6ebe906f0e9df739d587ac1ee340bba168cf086370d3ff07feb950fd4062ae3975f602305f18d0cb19e1d6092e32a1a5b218724ba9adc87eb2c0506beea84bf555fb9dc688adb2492a754d926670a6bdea88a4cd0302047c435bb50067306502302a02ffcf91481c0ace67757766f49e5984fcc4abc33d35fa6ae1f4fa93e9f57e6f4a958c51f017db372a9aaafae19f62023100a72387bfc9fa732da9b879b9a35a215b33184dd0b85be398c598ba97f86983b84dbbe3e6ffe5d4176aced18677b7c7ff0302047c435bb5006730650230041047bccbb70a15faf899c3ae5da2cc877624718578ad0d43b11acf78bd4f4d0bacedf7af6262099076fd61d8c078c2023100d1afb48234b56012ae8e14969e5560641dfd39dd11d52027a35a969d7adfe460789adef8a041d92a077f4298054c90c70302047c435bb500673065023100aea227bcb05b4fb82c2856be3460d1816f9063198131ecc4d73c9ab5db99f4cecd442d5dc657660f823754602cffdd5f02305c0a87dcafcb4f3c095587848d28bcab7f61d7308bb9d606ddce53e5640c67bb7a3851d3b597af2d5332acc5beaedec70302047c435bb50067306502303625335b7f1aa2b6c355901a7a2fb67913ff4c18b3140d6d47b057413ae42f19d56eca3d352c42a39ee494f5153aed1f023100964183f6c3f3790804899d333fbc3f10735ef89d3f5d6e0fbcc9ab96ffc3307293611e3e3dbb5da4142cd11dca4181b10302047c435bb50068306602310088e39789dc09e0047ae59e4f1f50b68ae3bcc9438be0aad1cee90a7a30fadb8940d1428e6736ff48ef02b45a09ca7f590231008ef74948cb22955181b3bc1ed13ee786497a7d1012ed51c0d9e0776f49a9acd2524db08e82ac95233bab022f1a4eaec10302047c435bb500673065023100f1e1494d17ab87e6cdc7d16d5ff69b4e9bc8636c8828bb20188f7e8d288b1bf670d7dbdcb65b0df2e6c416edfe3642f902301b34464d2313c3813ad4a2d59d212bbf0e4880517004062bdf8d33db92a0926c1a719bebcd301f5bd0669863a53c28fb0302047c435bb500673065023100b8f067d3eafe94ec272b9efead86c90f91ca698ba1b3af719f030bcbe8de0bee962c8821cb6b9e28e0d1353471bbe037023023ffe1d8bd829eb05394601e61d32f3aeb181175c7a7c000f54e6f8643be7a0614bcf57db4123d57599e8877b35bd6a80302047c435bb500683066023100d497140dfc0e6e65ffed1c9a3a72ba1e65295dc40e9a398a12fcfda360620c015148a693e5e9a3798c83db9505bdd6ff023100e82ad25a1092a2f7956b2fd86e8c246d10de3c41aab43e9a0df04b7cc0cb92b834a22b7214d5b4c7ec08cb6abd7ee65a0302047c435bb50067306502306a96ebaaa698a7709b23a9db7e516297feb0fdcf7af87833cd13add16277923e890cfb8a50861d8565804f52d8638662023100a219eb4d397f8224ddf2b038d2dee793176bc2a31ad3df84449e3f9b4222c298039baf1f679619e291ef83465ba27ef70302047c435bb500683066023100fcdd8002e5155f6d61d8cacf83f0467fd048edc8fc946b904f0687e795906f903f6cd989e8d822050700213b80fb9bcc023100cacdfa57b1808a8e89085e501d5e6f53829841f0774d35168dd4da0af1d019053c8e9978b2d6c37d066fdab594fbea2b0302047c435bb5006730650230338f5ca0ac43038c958878b177dea1650f8114184baf94832254154d25136a31017d6b47734afffffafb90f9d5bf2f08023100fa77a9ae974e4e9af34cfe2d156b4b9f28930f1533d79d12818db255a5958e58d59c22970a5208e996866ed6cac108f20302047c435bb5006730650231009faee921041e49b7d05ff47acb1139b8efd4444463458957f1c275c5a58cf1163ccf9393185c51124bdea40d2e39fc4f023070e7531dabdd2de67d595515f892b72c872943e75bd2db9b4664fd1d795cb2b36ec99f7b07dc80b124d2b8c43927e7120302047c435bb500683066023100c244b7448ac7d7c46f47c619f76bdb80446d93daaea367e6d871f2805052784b90b7a7b0ea7bf5af4709e6a12b38398a02310098a3d1097eb605895cbb1b2e45fe148a3a9be1cb753141691251aee1d704f01bcb99106194f4bdb483f96f307cdead5d0302047c435bb500673065023100b55dc9c7122ca0994853b8cd1f9f7e8bab14577cfd296ad6165fdff291c9812a9dcea1e52a42203da300e932a93795b902307400b83039e674a2b08c9f02b929e9fb17418a843af961967888196787cf2f26c4ea4041893a6b79d583499edbbfb9630302047c435bb5006730650230264e774d5c4e4f41ed15fa72b0ebbc2e248fe93cbaac213889c0b529d1b29c394c4757491a67ceb844e89baae43adbd4023100dc5e21269eceb06e7dc29aa0d36d68c7354bc872bf94dea7b34bbae2af0e7557c26d3c24e41a2f3289b1ca3a165a52f90302047c435bb50066306402306cfac844255f1a5c12b22397931fc9d7648775191bbb83f05aa65a607adbde7e49c02745c073c300ed0d7393a97d12980230630fd81ac1ec18d87d5295791c7d613990a586a188fd5d3c132091d86632970157a8a1f4cdb6c7a39d8800c35942f0f50302047c435bb500673065023003ff5d9cd8a72f039947d8931728f39df919435bbd21cc699b4c1b60e286131dc4e26748b8737631c572b11fe105a66a023100e39feb41c6ece0be129144265dff0f6453843e30b102de87263cfb38817943f4c5847510130122df5cf6ca5f06fbe1840302047c435bb5006830660231009091160e7a15301aeeb13e014a4d63a96fafea945e78c3f4de72c06709dc51adaa46c157a2a32a98245c60eba8db23e8023100fc75cecf859dd90b6e9c22a15cc93b089485e2818a034ed95edfe5baa807d2eaa9a96c3e17d2cc61c83fafd3593cf0170302047c435bb500683066023100cc13d4b136030749e8c3987d1c436a6de56b9eaf38903cf85f1a3867fad122593eb8efb7674eef97ec9317c50264ac96023100f5263bfb55020271f087fd1b8e68ac83a3bfb43ab7a8e385bc5afaa467f0efed2330acd681ab06d9412386d3534789b80302047c435bb500683066023100ac87d7d162fa1e6493a1a1a14310af2a3e4c9615475617cffcf89be93202227d9461f145574dea121411e104c4e82aa3023100e36040d662eaa65fd32dc4240c5caad0eb836c70af4a83a1ed6b0c49ecb603301e5a8c1ded987718e58affdc0a0536690302047c435bb500673065023049c247f7425940c0721c381fba1ff374d02064c40fac3cca26cb94cc730761ad5064b8b35bd536a1e69b0ce1ee5c19c5023100975a33ac842dd2d54c189bc5e9b8fc8ac4e9d60876de0267c455b538e1a493d425acfc9d2b3d1b64bfde277e9ce08eac0302047c435bb500673065023100f305c69a433da76abda98185cde7e8365d42ce9a1456ff38ccc491a64fcb0791e1c9d43f149ddfbaa09a8ac04ace0fb00230475422a91d0a1bdee78192614f632e3e2f39e84083d4ca8be6f69211996bc9e4f1afdc251573ab179eb34d0ce2a56f7b0302047c435bb500663064023065eb7caa7d947dec2dcbe6370b53b4d69bb5a769dee7e76f44e6f4ad75fa82861fd404c9e33749764409a57dd8000c6002303af492aee0222725039e4b48ec8dbe410e2dc19372bff38b16769173d0958ccdf698e4bfb7dfb575ea2567d65fa4850c0302047c435bb50067306502300f86bdc8d59e2dabb61d1adf7c8c8267d66cf9422417bb1da5393411459e63a4545dc8640dc3d443894790b97f391679023100b20aceb27ab5839761deff0333cdba4c4c07e574d8a927b1ac611a54ce71a615d77bb42cfb5a20d8e99fd0ad1ecaf0ae0302047c435bb500673065023100ade30627ae9ad16401a08132f31e96f3212782a41fca5843ac8baa1f47ddde35a8c5acd344905fd24d4b41019c02a429023051958cfb0619499d2b44b29583b87f5dec274ba39ca36221c40a2cc24e02789b627647446fbdc004a209d9c158fa85de0302047c435bb500673065023100c7ca0cdc4ef904fab58ff28b7c4d4a504fcb8d3c6875f753cfe513544b6da15f414bf3b7e887b511e42854bc5027649102305e0eb0c7fd40e0ce39cbead7baa45f4797249c9c4daa257455f088e230a1dfdcf28d5284aad990e810a82e875ecc12f60302047c435bb50066306402300da71b11b3a8a39744f7e2603ff97fa9bef76a23d7bdf29d4832a2d9dde2b8d18ca2e1d4c4fd7f3ec7fe3c7ef9b59eb10230494df5e37b6d126346b176fbda97a09bb796cd7a29c7bcdfa3c5aa878d05e4f4ea156930a1a0f2aa573d61b7a633d91e0302047c435bb500683066023100c02e084e55385744ac1a8c62c86eeeea5aea826c5ba11816a46fffe7aec1d31d38c5b178eb1e67f709d300a0a2f3cf77023100f1591dc1b937554cfc8470e3c5b168d7487fd4002742073de6d39fc98e172a09c83f21a69208b5155ae67c3dc2d3f7ca0302047c435bb500683066023100e4d6360bb317487681026a69456f361574b01ee4f8065c2e2de378a335f48071efad2aa83b44d6efa0952fde046248e8023100b2ba80209e64003b3e02238148f22912550272eb4277fd8ced978dc653d65a926d8eaf64090a5cfffd1260cd9d1927780302047c435bb50066306402303b1b3683d30599692b8649537cba7d336068abbe289397f88fe3914ba69a731af0be3422c93f5b2e99debf68344e52ea0230013e3831dff361afd275e6f0d95e0e06a8d6cdc46e3eb6217857be349550290dbdfdf913a241311bed715b89ed96fbac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304d2a4e49332e51f9073457224b75017147b7dd1a0a4b500a3a38f3c06ddeeaf05e1c08e32ddffa694fda80e23bfd84e102300f2361b245c97f4a609f648296841e1a0689333995c904e7fbe6a28904712b0514a9ea93e0bfe3a9547992b7a3e8b09c0302047c435bb500673065023100f2d6eeca445e8212381ad5e1deeb9ce496a89279fed7551bbaf1d62d46e2bfd6fdda1ca15f8e0b7298e469a6b2cd938a0230029665fb33c0698fd936a5cc8d21d58ab4d0280ad763567e690b3cea62649caabe8b996b7bfa051bd192f3b04432936a0302047c435bb500683066023100c7dea66e94b75c8ddca5c28840e1a91b1656225bca2a49018f482fa808b208aea30805f7f96eb5ad13aa86cebd3061e4023100c85bb0901bbc463d84151a13467ff048bbaf7b12f2b78fc3986da21fe5936a48735c0eddc5360dd30ab27d069728cbad0302047c435bb500673065023100b4057daf2317f17d86768146b01deb28382a362f3d36bdb782c1ae9b1ee70f6a245505a57bca9ccc33647f3f216e815e02305da162d37e0cc362944d5f644a699b627c720823cd6af66beb985dc707b277dacfab1130bcdbcb8245c8dcc947b1364b0302047c435bb500663064023056dc8d4f0e36f4d77d70b5f89a79e5aa330883b601701e630c04c27dfaec471daf9e9fd579d21872bb674dc827551a35023076624f3713f6da98cdc5cbc80e0d8c4b6048ef17b006abe0e8ddc9211b253e9ff6457a11e80868b56af4dc63f1e5e8040302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310087ed693c533474a4b5a52ad903677e7e0ae24eeeaca449b1d20c658f606b5a7715acaba19a2b9e1bcd11f98b9b99e4e6023100a0c20d1421e807f7a5e3a602e8440f4746e0e6b00d05438fbb5a49e3e9b105cb7403e203860775dcc3be88fa3941b41a0302047c435bb500683066023100fcfc48357bb8dbf9036668567a015a5f20271f68fb50f5adfe7a2eb77b98f5ff33669a0d2331346aa509175121f69837023100dadf375430af1ea821c569a7a53a1b1d0afb857104246a73a8d89fecd74e486f25d7a9eaac6b9a39352cce05e239acda0302047c435bb500673065023011956f4de6b5aef1c322373c4a64131949375a65bf17ffbf86b57cd5a484f866e97ebaa891d64e65e91931cb463e710a023100e8a9b3a4bb78688a49560338cf3aff4d6a3ff2480ab939d2d0c9631408759ab938e09de33a947324b853375630c289400302047c435bb5006730650230366f3f2bc020228684c3685b2e1ed242f24c0af0b2c6efc6dea232348b1b02c4e8499a5674fe7f3dc60dad90171bc7b6023100c09a15b2bee9865198e30ef736aa834130e1e0953f0308a68a68a7c9b2f4be92ed49d0c5a5b13829c47e44bec9507e590302047c435bb500673065023100c77b5bd8981b6e17f3a0034b3f9a0fa6b588cffedc37e27a0aca662c6ecdd59bd9b48c21b56319f4ff9f11e445bb4a230230230d00892d3ef34ce0e44be9a4f859d07a4f9bdedc8a00cf1b5b2974bf298e8a5034c7f132e486ca14cf6763c8e2ce8a0302047c435bb500683066023100acff7b2a28521820cec92e6495d0b506d97f01d3980b5dd620c8ce7df31254672dfd0490ac4348672ac1314e233972ce023100b4d0d9294789b4ef60cae451cd61bd61bd7b2ba1b53e29ca3b0cae8b60d7d964b0e5812b489799b59b7c4f11cfa4892a0302047c435bb500683066023100a0ae45ba3f33dd53c048c19226552195dcb6b02015e4957ace5f00c29647b4c1cc8c5838635f3ea07c1d3642499893a5023100dfa15916de873df836e7a4ad56049f1759c8b074367e292400502988164381b81b272226558b2733de021b951858c9fd0302047c435bb50067306502310087aac961233d6c4936ec31bf924f5af52a80c92701ceb536cd3e26bd52d5d6f603190fec36cb619e0a2f9a83a65cc99002303a85754a112e2ec1e64a96805724b9a52fa596ae8063de7734588da105ad35c7cac71f1b096b98d4b8c7e25d57002de70302047c435bb500673065023100a95286bbff408304d0403ceab63a634796ca25fd4f85be947eb0510b71a6dfa712fdcff09a8dbd583802862fd232834c02307be3148228e24d49f9620d30bc5aaa1a002fdd8c9857ea1fa00b71d94cc428da3796e8db6ede81c7dcd8c0a3548a5ed40302047c435bb50067306502305c8518d3ba4d016e3c7254fa19e4f95741cde387f00565635bf75829f1fa600050eaedac73c894e9624d689f6a3a078a02310087d219dcb6a3d2f75ff5d820e36688f388252789330015a7664d382694b928f0dc722fb5f45de9d6ae02c909366c82bf0302047c435bb50067306502303dcce899730fca7b7b6b07b6066903dfa5e021bf773a19c19c8f438fe206f2ceddc3205638dfcc3cef39ba92908f2cac023100be6229bac87e1172c3dd39b510053ef19ae9a14ab89023b1f4d9ff1c60a6a2da5f620a7812a8236ad8654dc99285bc080302047c435bb5006630640230517bc43a572080572407da35d19aba54607587dd750ece84232aa2265914d03ac886e1ea2f849a39b9f0e30533e39a7402302af18083ea10c8d15276385ebd9c418f88832ef9dea730a0c30499926cf16aacbbce795f0ccbfe8e3abd1f8f559fed2e0302047c435bb5006830660231009432f5dd0fed89bcc52207680864c14eecf8fee20417cc715f0039d713e456f24a624ec3f3a2cb1d813c4847eb64fe8f023100d4f1f9407326950191e5540f9ae86ace3437878be0f1eaac4d116dd74455c0645a774f23f08d4b1986e406b07432552a0302047c435bb500673065023100dd31c91015fd33f4d0196ff57cdca04e73a0be9ff7c25f54e5f12d6cec3edd30235e6897bd2fb3a58b03efd9e250f15c0230120791fd856b685c3be8d6bdbcc40c35c2e78ddac5422b37321f9616cef31f13d81dc1d31e891038695928b86b633a470302047c435bb50067306502304962d120bc291b741d8756953fa2c933b08bfe2c442c38aaeb8306c3156b52a09a371d54de11714a443e6967a3fb6a55023100ab5626d0c80c24fc46f048e941b800608048af4eed7f3952fa4962126b9359c1ca57f22d8c1ca47968dab93b00d3cfd50302047c435bb500673065023100a7492e97f9562a9d9305a972217caa58629944b212fe167c11ef992a311ab6397941077f92c34240b3a1bda7e1c2f8f002301f3dd6b5d676b768f432ee502680588e70fa0987a828690a4e2516d00729d13a4f7cdc53e902550aba1c746fabfd4c100302047c435bb500673065023100eb510fff3e8053d8ae8a8101a2f9e5732ca79c8afa11d05051b2ac1492a7d2ac549e0503cd11a62f6e8beaddfd5f044f02306502c1167dac4c982e24df3fe3a3dee8d31bca044db572d873e60950c128645cfbb30ad009ea833e5db639f05880e0b60302047c435bb500683066023100ad72747dd2680c47a19a6e2042643c7523b26e5075096f2f98586635d488a873150d12d8e68961908222c4ddab744021023100e437fc104a264d5218e8ddda7a27b85b13a7781c1c7088815ba89c633c9dc33dde290b886edd08cd3cb5adc61bd282cb0302047c435bb5006730650230521ea4bb4998c141a9103dd1f732d9cbaeb0f8030f849d21b32788b4b7507c719cf9e83c93fd94b85a7e4a72730d7ea0023100d859e7becca781932a3c09263c536d46ababf6b8eb2fc4712a0d7bcbedc7ff33ddf7039f398d89d571d5c9e67d0ef1320302047c435bb5006730650231009ddd9c5bea55d7921eb789f499eb8aac8d4601818b46bc3643af2f092558ddd0ca4e2f0b55eede52c979596a850af4bb023006ee082a960a3ba737e397b911cdffe246c641bb251725cae7ce3270c5bc57c2a9b1967e9be9948cd7ee021469217dc20302047c435bb500683066023100927b19f400d87aa699d9b4c03b8822f9cec049a02e841da8ca4b55dc36cd03ba97d9b20587d494ea8d9464032e1664970231008ecaaf6bad50b5a5c7b756080358f4cc0959e6025eb18a145b62abd4bc45125452c6f5388a8086076f27493eac0abacc0302047c435bb500683066023100fe8a05bf8e176a76dafd324420e2ff626523cce9b2db2045e69b1505945f6bff7139732ce641fbfde00abaa6fa271690023100804b0027d4b8b2a6929b5cfa2fe67acce527c497002f6f4d7f11aa1d99154e84453f302ac34d9322c2aceb04fcfd0ac30302047c435bb500673065023100d82ce4d9b1c52bb2fe78e0e65a128810b70f0132f6ddfcbf0005a09ba1f62d85a390acbdc5dfa0b86180e54b7d4be56302306ff55051803495106c91d5d2aaa229b0d09f333467c9eb6a812d721d4646adb6ff71f6e9fc84732952c252c725817ccc0302047c435bb500683066023100cc2b2b0d68b2987e7723982539636eecb9273810c9a108b7ba9a994d6a89991893d44f8cd95b579b16d67b0e3122375d023100c499794c03c62a098b73f741c1caea41acb8ac84dd66fbf92801ef69016bd91317bf1a9b6817b799e43e44a06ea59c640302047c435bb5006630640230119899a19da8de7dcae40ea1cc8f811816745d755ad2207fb4dafdc45aab63da212133ea1748d1ce79e37444559f3d07023026c10d501d688733fcef7640f05fdc073f2b3d64e06868ecd9fcae1c91031753d4841dd5c68a4be227bc16418fc504260302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b992249631553987ae6aa1ca41559b265102d11e054fa81c5904d73e445fa3214db9cef1842c9e36dc1af4f7a02d06430230426d18122b36855173b8c6a00cb82672b47fb43dd5b2d278f0b9e266df30ffc3f6143e824bac792ef81a3f808f4287b30302047c435bb5006730650230124fbd892bd8e9ff903d8469519ac3e22879e9cac3e177658b06abf02340646eae57e72a4987ebeda6f9f4dd112b05b6023100a6f1e6dfc6b3cfece96ac6d6fc5bd4bbc4b1b037218d353c01c6b85eeae11fa4708d3ca557434043d1e021c3e62fa0fa0302047c435bb500683066023100dda8ed822cc0a408275a1b5c16591a12891987bc2a120349ac14ea472622fb2d65a846fc1646f1437ee2f70e14b49947023100e85e7b86d4932fc4b7d4b537e108f2cfcf66c5168a5dfd0be69fd323b3911c85eeef311352fa4930abb9cd55c709b9900302047c435bb500673065023100efe1cb902503f9c58428df6a771764795812ba86d965b625d15732b6645d2822cc790cdcc599172c9db5587d4b7b659c023044f2bbc2667afd0a2b96805eb505f226cc24548e8fc4932abc3be89ca5d751f281df5160eab7829fddaa604d349e60df0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100db0af022ab0124a41bb21810bd55b31ac76d7e8b8a1decd55e1d9e00cfb664c59188789a8ffb8d86f87629a2f2b6dcea023031735bd4de21db84817607fdab70bf8222a159024f8e7d68a58be53df27856f0d2a2ce78dfe0fca0cd48dbcb1ebe9d320302047c435bb500663064023001278458d015a6a0de39ef86faee386093a4afbd16f50efcbedceceb08d871e44500aa4e303dad32a7778ded23ab9cc702304e59819f2358adf72907457d3e80f2549a81289fdde1d698d79bb211472f2f1dacc78521eb624c65646930dfb43744700302047c435bb500673065023036093448ae9269f68284ff6a7609014ebcb1e23438305014c31533ac36dbdbd59cecf1dfbd016567fae6e26e2a824af40231008daace446967dcfb99c7487a2cc463a48be8ae1c53be86f396d63b89bc903e5a94fe5623f9bb66ba90842eb736f0e6960302047c435bb500673065023100e88113a47f94610872a5519d4e57f90f4faa74449c1fffdecec7c731c99e5f41526dfdd37df948a6e69d6071a95552cd023050ef2b2956c63bf57e151fb3d5e211b7978771ef21ff3128191487256cd66e8af6a0e3878bc5b7b3e03d68b0addd3bf90302047c435bb50067306502301b39ed3f72790c3e390bbe3d63ede82b6e5e688337f4c7ec97e71e478d57dbfb4dcc7aec62319bae1a47681cdccced24023100943184bceff2ab40e6d1dc23d488c1e902092d9076c73d6093784f862148b8cd55efc087e15620245c7e4e9d708ea9ec0302047c435bb50067306502303f29a626f4646e3e3b0ea5037e516f20327ef6d2935a65014adb8797cd9fe70e76dbda32c03f490306b3c2606354dde3023100effdcf861990af46590a50c885cfb321a6a7c82251eae662eeaa4d8538f6d5bf18b79899ea00321e6d8c3e4096b5eb3c0302047c435bb50066306402303d1c2be65d3017baa9ba890d8432af57c943f0933510da41dd43e34b7956404216481e0f05d35ab4bc41ec5298bf476f0230282b3d0af9d90fc80f19d036630991c60fad7b1422782bac074f7f58f934d82ec90554840602212a0409009e3e51d6ea0302047c435bb500683066023100c32086a357297d67d06cb2893bbaf0160cc6685020ad6143bc7b7f97d1131a4888093a5c6ff7705f5e62e52af9689c93023100b9a8d89377b8f79289eceec74dcb576a071b32add2565c3c4d31587696d5eb1f6ee112852a8eb139178ff375373195880302047c435bb50067306502307a85085c771b6639bb1cf863753cdbc0d6a0d92c8f8ae20ad3ef58fb8280a08ea7aa473099426cdaafb760ac68dc5dee023100c52005620ee1035f542c9564aab4a312d4eb576f847d4f7825d74e5e7bd97651f42960e5cdf33d46fb6e35fc2986e9b60302047c435bb500663064023061990c8084f229870103666b402c4b311a80cadd2d24c1e9b47990728a0ce2948964eac133782d408e45d915f080ba7402306029c034c1d75eabffd61680de7ebc0e78db0e5cf2b4df42479b7438936a2365e3549da95b254abc00d00870f8f4afc10302047c435bb50067306502305f943cb0860adcdfddbd901f5db51d45c1d153de180c036f7b48ea5436345de84c4720893c409b51ffe231d057b2fb26023100a4ef8e133f5d66a745b1538e05a8d42c19042f68fe68cbf13bcd83da9d3dbc27a0190c7a1875581b1e39d87556af64660302047c435bb500673065023100b002d63337087c9cf830352e6c498c50a586fb0c8ac61ba136ecdc4b13dd9a4cfc1b457a3e57bc76c10399c23cad39ba023014014bde0779200827fe2df982bf38fee5ab0cd6e895c94422b2dd2e5c0cef416b8af58dcc86b88322e026c83d2fba990302047c435bb50066306402301c3da7384229da32d34d31ee00a917a2f6abc36385f16dd0cf57697623e9cdbef94b2f9597ce951bfd4853f44d7bee1e02300a447abdce6924668478715c6565290a8107d4ea1579f0308b7f27c1734b1c5dade7cea6695e9b0c5fc08843197b14220302047c435bb500673065023100e55a0bdc2b8a8dc2a8d8eeeace073f66beb85071025109c026fe89603072a4b7a9a5b455af433225b5de6eb9a5f573d50230307aa4970d24ff7c66bcc5f9cd2dc5386d193946743ebb2cc9ac0b827b0ddc32b942acf1ba14bf1e6b60749fc0b2cf490302047c435bb500683066023100b1169255a0f416f1b85791075c0a14112ed1d4f6f85bcdd6272375955ffbfc5f1f594829cd2f5b00e1c4362a640199860231008c1a53d59d381b1462615819e629dc0147f1bfb698ce9e9da5fa17eff6c58b12501052d8de751d4806817e6fcc6614b30302047c435bb500683066023100c6dd31839cdf7621002d378e637750c30e2a1994e0393ae003f7d2d897f0cd6f29a9ed89360f6c25d93b8d057d208a3f023100f0d56103b8ccdad83e85e53d327e325fa2e38650f29e140253f6a888fca6adbd6ed4444fff64f462a41472b580d144860302047c435bb5006730650230683f9dc0b694a01399befed2792740affaacb3ace069b86379a68c5fc4a6dd809200ee05b7fb839040fc1f9ce04841650231009d3f276878117bc28bae1d8ea5f379c2424a4d16ac465728f768cab87107fe67c92c8e7c51e358844b0ffcfc93158ff60302047c435bb50068306602310090a0fddd6a557ef59361eb200e89bbd23203f368f884cf114574bce5ec0314a8b3c42b700f6874cf0178ea8009b63eab023100911458ffc53e6fda7c9af55e0fcd7969bbd1fd79a919708df482d825d820bf60ae458d3b8c762af09322401bbcb36a090302047c435bb500683066023100b8ec2319588f1526d0086640962243858d8748c7fb2c41d1fbb7e5d15a0c9fcb67789c5047f2efaab252105a0b9c810a023100e3514135e5aa7ea9db77ded6c26a13f93dfbc62dba297932752eb8a5e62e6e18ffcf6d4de62778579c652718d1c7adfc0302047c435bb50067306502302b390788525b82ec3d8f132d98ef774823f7f195d9963cbafc82e7cb373399203c2ef75bd4580b459bd965ca6af9ff72023100f57bf6c8bb4d88e136b6cbf5631ca913c6e752dba4476ee47b3671c7fce863df95f01055909806a57501e04c691720670302047c435bb50067306502305a2fe1eb154821237f5ff539e32cc427be45c49e065b4c32d696b306dfa5b1fdbb31665db70b86b5b70b5f1293b7b8d702310097b917af60a11d491bce9b564497176107b22787fa79a1963577f47bac72fe6b4edac215195cae5dbc0e1e8efda8ea020302047c435bb5006730650230269bc1f6535513b428eb21d7f763520a412d1520bd2935324e37e2130223e2c9146707d87aaea1c313c59dd79b700bb8023100ed5a3d696c0ed015d75360e423692658ff246be0dcd22a728bcfe2a83b08b444b937750046e150f34773851c7f6344f50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008794228020538a90ed9b770a9d04b0ea4b7517bb37b524e6c4f9a96554b5057eb141a8f9518b5be00b0b1a5e137ee03802305d507fae2489349113d5e971ea0ea48ee302b582eec54cc8cdcabfbb3bc9cdfce1c0cd0990425a67dd21d57eae30cbda0302047c435bb5006730650231008a2025af17899d1da714e65a20bd7f0cb21999c0a1c0da243b82484ff482b4394b0a9abaa5ecbf95c0da83cd0ee863b20230015df0a7359a09d4a4ab0f8631eec4aacd7719d3deebbfd4cc09a18ed131a5b958ca2df17ab90003a39972339f219aaf0302047c435bb50067306502310091b4f51dc58a0606c4c66913148b0942f8c18acba1e00b294e0dd598c80e1f4f6764236aa3ec778942dba0bce906435d0230258009f5436a9ab27d6c4fb0ad2938d4b86605dc2c217d26e535b4a18d4fb7ac7c2c9710284fc2a9e0a14836794d8e650302047c435bb5006630640230142b0c88cf343349904cc9e54162e9844b407d4a79e63f09f00c66e2d59d0a749c239eb323b1f543e6f7f3aa09f29456023016e068070195e0937abe003984102ef2c417fd390f6d7af4d0de88b8538f96b01dcca6da20854b2cc74b4d9bf4dce3340302047c435bb500663064023057119ad2b5a6bb3468ac9dd557b70ae9cb7b4c0bd7d8e0cd6c5622722cbc757b4f95c3e5fdbe43d498e1dc7268165d7402307c5aba35ba62a3ebc33338c1951144d8291a36114eff37db6a0730d44cffa32e803c263739a86ef73172a4deb38172e00302047c435bb50066306402303704fa5ba876d62e1a9e53dfca5c88944edfd81e04d5e0d6f5cf71a5c12c67e16554a8ebc81ace623ff4cd5b95b891bc02301e357c3fc3f821e819b92be61010a6b6bdb41d1f37d83991078d5c914172ab82e08417bc26b38469580a7fa4944a23c00302047c435bb50067306502303f3d2ed8bbbde0d7cfe53ed074c248d7119273070de21d8590c33422df63f06acf49837d1517b2e5ca3197eda1f5926c023100a1a3044ba801b9f3c030cc08979ad1b3028848da5065e1d9221ba7cdf694ad148b9a077ef90abe35ec47d377d876ed020302047c435bb50066306402302cb6f9c161eb5407bd51515ab575c9ab0d487df2716511f16c824dec536122c5f314a01c6a133e57f65f369f3b4fae16023032b8db7a5b4202ec28fea1500539a4b80ae2a62ef9aee6f6a001acb98caa380eb85a80c3e33ae016216954ef15659fa30302047c435bb50066306402302349b0af12de915ea2964ef18df50c0d85fc495080824f39c0bd4129f7afe546fae81b9a57d1ec295828b88b0fc5ac9e023044e8f65d0fc0ea458ddc3860d5bbf397b43915eb9c4b55f828c19c7e07f09a238d5824f48e5bc9fd41990e3853e5fd420302047c435bb500663064023015051fdfe91c81de181e0bed52bcb2b19a211ec765c6024d1fa5199050387553c37007526bb3457b14042a0a1c33664c023060b6074af6f117b9d15003173b10a1bb3aa88feffbee05f61e4dfd88939b7926d85e71e1ca804923cba0df3e16c9b97c0302047c435bb500673065023100cdff8a413b78aa426623b2e108493134c185ad23d5d6c131d736699517d5999272a88b43af5c67298e359a2c0744af2b0230681e9c19255a0b0ce5c3976aeca77625c504ce4f69745fc7a36f0c83a0fb5c9c7ebf64fd204668d12ed868455beef51c0302047c435bb50066306402307e73141a71a3d88c9da36c4377d68f073b391da9a2e9b96fea1f17c9732e1d08b85e2d4261fce07c339abe5f9e66db0502303c838be5d2574ea454315234b6fb745fac7e6d016b50f6ecdda40c4df4720e0d8cb358647df324843f9ea6828f096bf90302047c435bb5006830660231009a19569c701cc1d45dd35bc7e81bcd227a81e851e9ea209fd848fb31a448cf7372b79631191c4d25374ca5d30e6b9527023100e64fef6e2a05d4237e4e243a7edeadfd0f5f53c8825b6c96aafe25f36460a701589309c97cb26bf4075c16537f16d9be0302047c435bb50067306502310093c031ea85021b39f27fcb78c4f8068eb129706e2bb678ccd8d82fe58903640734b8ce6a9ce5e510500449c601c1ed92023073dc7b424e6080fede827e729943b694d1c6e253b60cc63008fe9b47dd47e974e76219a9e1c4d31ca634c83487f986860302047c435bb500663064023076f1e5d0ebe8eee406cfe2692c6de9d94fa00019482bd5eeeff874d994bce4dba8b48af0734e84ba95fd345270beacfe0230636bb7242f0883d32df8b65520e0a36e029786683af51058cf322c0225ea36f113c29ec18ac00afc7c63f18872f631780302047c435bb500673065023100f7acfc51152ed78b7f6db72b76be2b669b18e56c96c52cc97024d72035d140b661e3bf22bc45aef74b51dfe6318ecb4402307d0edaf3af6242e9a390f5047a0507d4fba98d28cb9c8ae4422b19c15ad468a0011f8f384a9f45d55793ee2e9db870750302047c435bb50067306502304f2de246d161e0305d5d2e5efa5735365ae7aae607d0f17e7d702544c553b52323d5cae02fa1b1da613b302b3621e070023100e94823ba3d06e5a09367759b9d7e5da62f178db80a84febd5748224ba1e5ac10a0d27d1f799705fa9877d1b693229a4c0302047c435bb500663064023075a592afefe01dc1b429d5fb73c63228c133a0a78e3b3c95da1a404cf97358e9119d5b20188f9cdecf77361c89f30e8c023016a378c051dd842106f8be79b5e7b423b42b30a52badf90e27795a66fe720faeb2fa31dd4e7fa9b2b0749031ee374aef0302047c435bb50068306602310083d7264c7dd5cee32c5e1d449c63fa696dfb01a677ef9ea0fec3999abc408701a3e7b09f25ea364e40271aa7b70238cc023100ccab627c01f531cec3b8884f1e7a943328042d11a1e59f9a52e3c9667714329e3e50e273a80a2b5dc2b793e63e6374b60302047c435bb50067306502310080b938189df23a3c45877d556625a4144d9fe926ba01faeb3054c0d6470571c38ab1ea36774815abaddb6ea839a93df602304105504a77dbf31a4fd50a5d6861b96404b116af72448616ced1da273e45a38cd9097e2ae667337a441e71041ea1a6670302047c435bb500673065023100ecf0324809e38b44f2e6f7b0c32c65073cc180c6516b50a14c383fdb092e54363a8c9e682fcb9265521be3afb1cb5eb50230560f6805930aa470d731c6e3951c42cace567a37b3e355d71f7d9028a25605ca9a850abe2fa4bfd0f80e0311af4f70eb0302047c435bb50066306402304544a599698278b13158388c37f68bb69b2d2701b83382c890b15b753c823c34fab18006436d402d71d3e0264dc19b7c02304e07c478320f3a6816fb83af0b06df7e37f5c31a58f5ba7deedda40c1cd7a820b9cdf472b5ce1ec40f5b9d670bfa1e750302047c435bb500663064023016cb172657a4a40efc25da4b0aed9d7af61b22e2d7f31eac776b989af0a37034417b37356bdfcfa300e93fcce4ce1e2302303c7cccf8e1b4dc81a6bfc3200816489962b6e8b062de45b271610f663ec1ed718efdf6cf66b5687771e69116993d498e0302047c435bb500683066023100b3a3a1db08ec907d34e9259d7686e734425b46ac3036b21c7ea8697d762f0eb1407894703203c52cef1818f2115ba336023100b9d7f6a2782bfc1a2247c2d167a5c821e9a2d1754daab54c342f05c0796579cd9bd5607175f45a30dbc3f3680318b4080302047c435bb500683066023100d22496c7bf939f2074afda83145160e41b2d8f4e8c24ab0415c2e8537ca7de9367d3d6886699891acf9e27b7e98f3ed0023100ea3976f3d98e7ead29a14f9f14270bf02313caefa56b60647bfcbc8ed8dac0eaa686781ab7e1f4e03a4600776b8ef1770302047c435bb5006730650230150969d7fb1ed68aab17731059c0f7205d7508c6310a6d60b34c17eee8649415e8e056f6e93986da4eac4779ba1bb75002310099a449ca797ffc72120dcc29dab77227f95c0895a33698ed2d747c58ada146ce7808c1136c435533a5d9ae74935715730302047c435bb500673065023100817b68a41d0258a6a7f686902adea0bc1865d24029f2a3bae9d23350a332ae1b9c1e6de248980bb253aa377aa8e6f4e602306ddfb4d4331feafb30c519985932f945ad158f180b912e41c5d0b0067a1f10716a736b8e2dfe19ae5a5c25cc306bf9730302047c435bb500673065023100880a84dd504c5a50dda969945696b5647d8d3afd8bf18ed07ed18f72aa4585ba520c88befccf1077e0666c77619dc58802302772bf4ecde14bc7567acac01336fd980544e0b1d69d889a5eba7a387fb9d80cf31783ae731583d713140edfd1fac7af0302047c435bb500663064023018abf9dea9d78da47c2a014100a4afbd4e36adbc9aecc1837e8873ad24022a0dcb9f6e0b9edb81b4732a43d226fdc35c0230521d5d2b48aba5e8eca43d7eebe6cc8a8e85c9e348e93f16516142f89c3e006425e244167ceaf113e12a405e41cfbe9d0302047c435bb5006730650231009b88caf05d95b3a6765e44ff09b89ce57ea0c968fa1f006ad7b3bfe5e2ecf6e5edc3e40dec3907ccd99b851c19617f8b023008f4debf3fdde37bf77a3294d79d9eab6661dc0c95d971298cee39685a0d7f315ac6eca558269ad92b0eda8eb86bc1260302047c435bb500673065023100c22113809e3ecc80f525e2ff382ff39226f942302cd388b778819b2320583200f5371bac6f7f40bdd69f723357994c600230576a8e502d6aafdfce327e9a2e14e8392c6c3f96ed18c583bb887613f12fda9b5f444518889ecfd7e7a751a7fdd64bec0302047c435bb500683066023100bc25132588b39980f36b6a7c46d2cb7fcd863f640b257f24a0e6e42b20d0f52b83bd1d66a077efd5605e1c9ae81e74aa023100ce71503fc9ab1a6a9569c3895765800e1bd1cc1e4c44315a39879b3b5a2f56f1e12fe7f28279da7fd07a14dc055ce25f0302047c435bb500663064023010b3819d663557efc4fb66caaf1defaefc4bbdde90bf68772b934cdf96ccc434bd09400fc1f35d15f7412c52f504edc402307cd4e13d4e8cb1f74f7cb915701f592b8a33b9a4a29c1ca8c5311f2fd02e3cc2ff5ca931b2bae7d4fc5de062bc3f374d0302047c435bb500683066023100aba1e0397ebb0708a1642c37b03c1c8ca6e9df85fef7db6fd859e7bf2ca4666711cb1f9dfe22af68f2851ebac342e4ec023100d7b205ab88385fe2afb03517183e770d59377b3dfb8e20345126a38bcd2a77b2bb87fdd0026663dfce206a59b8c69bde0302047c435bb5006730650231008936037671b5e2b7f638f584787967ba6d322e3019cfd206d71ea19f78a965ec29806902e9dd5137ff8e3517867cca5b023062b258aec7462cdafbd20b4d1563b6ed7ad102c37cb24436df2e5ea22f647d57b08a656842971a73479d0abf33c73d230302047c435bb500683066023100a3c3237a2ec95da647c663ba20e7aef7f46503631f271cfa10917609c32939049a9a690fc32683a1da5f32819c94b258023100a2b9fc2d0a33f3acad21e50b04b521585b4422e42832487193f87f6f4a25838133abcef772915124a8200d354cb1ce9c0302047c435bb500683066023100b2a48691d1bb8daa454a3704ec2564db246fc7e00dfdcf11b44b85dd0ceac4a63b8a2c9b4f2674073c5347f946714dc3023100dd7b9b5896b3d50c57276335db7f439939f91bb7d15428bf7e7aeac7ba44264f7fc7e332b2ec654d66cb537a348eb4db0302047c435bb500673065023038051c254c33eeea95475b1d418b89ec9695bd3e4aa3b6e27af1172acf0b2a9593bd0315d6eee6ba30e6234df38a3503023100d873f9814e3cd0bbc435fc212d9224d24fb05d0a9c3be3c9effa89816d84ad247f846f5984963d531eafde7c2821fff40302047c435bb500683066023100ad1acd9c08f6b7d6dc384d2f593c060749871e4b3bb7a3c22099ff5bcdbf5756605571ee5c741ab4c6db19df57132381023100d150876fb2ac4d3601fe2c9c42defbd7996af5cab3cac8f08b2da8949a46d445e26fe82d6e31d03af9ac83967ad5c6b20302047c435bb50066306402302892e3af3bdacc6d6c35033dd0c5759da0eef91d14133ce25444456794fed0027524cacdb7ccaf868681da08c39e44c7023061098d767a56ada4a2bb829954a99749add925f4c721367723ff7f07c7d49b144699fc94586cd46b1ad63db0473882400302047c435bb500683066023100af7ae21190b265761538af501eee617cb775b141c842b2f4d1de66e0a872dbcb7546d9af355eada340a8be6fa35cc910023100a12b6d3d1054dfa1c80000735e7b7511e24d3a80f6b94aea959ab5c5446e3dad19a4082e611877ef7f984d18462a0b130302047c435bb50066306402302e8949d7dc342cc02c19cad00ec562299f3b4e3b3de42feb9c568d3f310550f5ceeca55572060dd15cb68608ca45723502307ba78a3b04bc06d46bfd9923ac223edbc406e61f88656eaea4bf7bcf7b7743586104b3c8d6a0fcb8801182480ffea7f60302047c435bb500683066023100964051441325dfe1b0da668571481e61e6737c38d5a8d0eaee24177ce32ee1496a8ba95f6a4ca3d289b28523d5b7dbe002310097817c1fd2031afb2ac11f2f1181f1b8e4e253e29f4c9c541b90505daa714dbccdada578ee468d7f07ae66e53db071c30302047c435bb500673065023073278a003bedd4cc02c7f84f3c7be28bcfb3e695f782aece2ed0690b81d57b0c1476d35833213ab1e663837d4698eb14023100cb19afa12b489e13cbbdb455f573faaa46efcbf526778a12da41c0abe5f65a6d0cac48f1f614414ef58a16502a29af400302047c435bb500673065023100d70d7023c4e2c5583ba3e992edabb38d1051da7166cf808eada53c5a98d627cdf2621089168565cf0dad448dff9385d402300347bb0e6d969f2b1f456c685575c73022ab06727779625c6a7aabcc036fdfd75f255fce39c64c1be27d946efc18033e0302047c435bb500683066023100b839b2f7361aa975546e8a83bdfba6dc3ed0fb24fec96b599e6c13a15191a5d152d4365ff11caaf76336012d54365a00023100b72ef1c8889aeeac4fc96f6aa13ecf71f2a4d79b4f23d59f51b4d629258e5f642e077bcf10e3b582f13af83e65b0fde80302047c435bb500683066023100801ec482f17415768923ec6783a55825047a2b3ef97cdd2eea16294b4e1d6e1994f7222426850180c842a7c934910cea023100aa45517eaebb03f96df579f323df822938f9b5eb0d970944a5a1d6b2b69e2462cc9537f2b0a6793662eabf266127f9e50302047c435bb500683066023100ee655717cf2ba305b40c0f002a20c1b0d44ead98b36e1a733055d0c4245b0b80a57fcef6a439e9c231f509c92d219f44023100ac7a8802d409426b86340f58511cf3b4a4b502616c8efd8a84b39fbfab5feb8b09e344f8d9768af91f8359979d7f75390302047c435bb5006630640230315f8022e5bd597a28520a3521958ba219394e3a3afbaafea55c24fc83e8ecc41e05f0898185bbc9d9339213657028d602301622ca64173cb7f3762ab8fa76bdd27fb0480dfce434cc02c34b15abf997b95d456d9171a0be1668a4476ae19db7e73a0302047c435bb500683066023100daf6802a044f37048f416fe76aee74604e46795d522651d2ad3e6cf55e8b8623d49998fe954edcfc3bc60f614363892202310098160467a524ee85fec40b67aca962320ca37e75d45a0d02b171b66690dabe5a7efee565b07959890af20414ce9012ee0302047c435bb500683066023100df732763bbd5ff6b59cf943cd7916970d70f6ef5fe296cdbd74d727f8c43f6af860a62dac83597f5bd9b523aa3e0e2b4023100f8a840bd65d417ed29dc89c92db46a83048652b8e0b1e34cba3ff6c6368b4ada12e6fa98e6940007f9b0992c6d218a9d0302047c435bb500673065023071f1691e6775e0c8ce0d3b052e1fe35371d9d9cfe5580b1659775be9d05a0ebacec38370934d431590e32118c98f4ef9023100c24129e23273c40cacaf17732a192195641aa044f1fe7fd77237de1a5077597d13d49dd4a1c7737adfdea5f3f46fa6160302047c435bb50066306402303ddeb47ad61b257911170b9598204d4f7a9538686e3acc5a3593b903c1a0e69af0316e11609ab1eb7db367cb28a683cd0230671c21b57b3fc50cab32433070e7314ed152e9d1fb33852c6d73b106a42dae8a69595d327e0df0f9fc4502e6360696670302047c435bb500673065023100fb51868645ddeb4040748f6c9314a7ea3f7091f8ca4a12844de51eebc591777ad218372b0b0ebc780fe0a21406b30ba002300f79559cf4cd7cae615a86299998e24f0e2e2a6430d7e42757c0c291372f18fd8fe2f41e1aa5cf7bf503d78ce3f3010b0302047c435bb50066306402300c41296da5b4df59ed8ab3ffc71ef61b5ac26191a161b91de4ad6f328262798abf07f5a218132dc8a7d980e40a31895d0230429939ba0c0e4dcabb3141b2ce29f355b03a7595039594ba5bfaf67ac8f663bdb13b6baecf13f49171b80c23d32da1060302047c435bb50067306502305f124435e24628ccc33f0ab41e6cfeb4731a90908bf491e30c9cce3cd05eb2cfbe1f52224415f56834eb6e0e0bf55c18023100d1114263ecf7d6d405b7908a5c6a73f9140e3368ca604880c99ad05ec47cc48ccab106b62fb26bc4b170c33e13b02bd90302047c435bb500673065023100e993dbb63aefc995bcf1ef7669d48e4f7f77568da1c0ca0d35ff33939624f869cf9d3cfaac1eea3ce7dad5f5764532d2023044c7d587ca67435b84bb0fd0591c63dbb944852cfd259aabe24f51e1081e9b0bfc4e55b00e965b39c3dd19a681d038110302047c435bb500683066023100be15df3b96834eb1d28899227ab6d9928f4d8816fc1137fa9451a561fc345cc2c61e2c04a2b20eb69b0e1cdba01a2fc0023100b9447bb6c95fadb49d898e430acc4baf8b518706197a02ae7a3f35a4a0a3b339cbbd81ef4e9c42f52501c4645a43dee40302047c435bb500673065023048a08e5d984d515422d376cf995bb91161a0fa65fb6b0afa050995f7ebc64147a953d772020685e9444c60819cb1f385023100cd4bb92ff1a34ebb29ba55abd29d6d163123e5bb6100a5ffae68910c756230fbdf4df57d665d4c6f01e7d46b8333faac0302047c435bb50067306502304749cde8bdcb64fef6829f4e57eb47af589b6b12a8957b6eabf1dcc6251fc231f07e237ed94bc73da4055f85844148be023100b6c96647d7487285684fe7886157b884d39f393103a3a23e53c29c769436d48a817ea58d0335c9198c5c0edb85b906610302047c435bb5006730650231008206c82d85e52dc3d2feedf625a67a377620931d6d1f09cf788a3aa78ea09e0e308eb5ad1e3d1a5149ca0f3d6f1d201b023048a4c9dc75ed9f955b05a34fc43b6fff4076d5ec564c7ebc52e8209000a30a5a773249d98e4d65f8d7999e88b42b14520302047c435bb500683066023100a52b545a3613013c150a0ad21b9a09fc51b9cefa09fde3012611f8acdd1472074273b76311dbf86bf82c0bcc274d3ec5023100b2d5ae8a42a0a726cd49456af9f2d291ef7e6d4518caec3c18bde80890476b064421eee41dc854ae6a94d2900d7868a90302047c435bb50067306502307a206d87f75989725a75b713369bb74e0329c1630985d980505aa0b212e6a0ffd97418adcf5712a4f74e641525081e9e023100a239e1069c02539ad3e31af9e979b3be63b6588fa4e6774f238a0f8faf3be159c4afb14e7f0df7ee34ae0d32e1065c8f0302047c435bb500673065023061cb837f7f3b4d300785f62613b4320d13a92fd52332688eb546c128a4324d40823e3b6de562c22104d2d37e74c4ff65023100d244b4f7102806c0093cbbeee47ac12bb40c9de5ea36621d4e07db8ad7d94b914083e6baddd38d62985cb6add7cc52180302047c435bb5006830660231009a7c1e67c0037dda2f3a677b76b4fbd628cd66d496e56258d99a7827e33123d1c195f68cf358db11e84de7ae53df5502023100e8fc5ab93828381c789d2a52da5caba99a441b720baa6743591f04e63589981adf6d4972de09444640b5d325c296bb5b0302047c435bb50067306502303a5594bdcc8b17302b63f9c8c39bba02574a81320c541cc21a2b18e1df201ffa2c49cd8906656e2563946268218be535023100b5e9991d8d29e09ea79484b9582318360941ed71d2cdcc88ee955f94ae3e6973bcfc4f8edf35617bccc104a768310af10302047c435bb50067306502310093d7d0cf95973701b948c56d2cd37a05e39d90ab759da4768ad801c1e6267f1776aa395f5c69c92c173938ddd2a1644102305971ea9d30a78f61b27bacc1fc1e4ed7d61743a03ee2a96e6a11d9fb98d4d08768f6c8625cde09251b40e6029b35c1190302047c435bb50067306502307c6dc593d80f6af126e5887866efc34df4342f45f029231593b9e33bfbd15219d9b9397375836757897f8e821153749d023100aaf301fdba76b2658a731a4152c5fe6916daba716ee3e1f485500e4fee2794b17713a035f1729e9e70ff7b9092bf95b60302047c435bb5006630640230670348fa325e95608a7ad4edcda7a082bbcc381917b4affa27f638b3275b946562e6da2a21072ac46cf38e7f70c0190702303c81a2dde0479aaf0c60e760ad6c4903f8c39522211cb090f9ac7876412a4fa89656c60a846cdb41a7aad5f1991371050302047c435bb500683066023100833e89fd2a6c09161c89607a4e587900fad7239e91cbf7829bd6e1013d9a6eea064aeda406c324d318252362587a6b7a023100beec9de451718d973530483379c761d0a29725893b1ffcc3ac4d0bc22b1edc529d729819f1bc4a879c5fa664d92de0f60302047c435bb50066306402300fcdfe9d2f1dfd901d3af4ed3af4e73de97ad69f29c24f594a1a7714fb6c443a99053b969021a25cc4a5e018fd75bc1c02305f3910387d1d3ed8d177e8b7225ebd69c11932b404d2d1e00acba573e4e430c2c54f8c532c1f2aae3469ddaae3f2c1190302047c435bb500683066023100db73e3dcce227aa48cfd30577931e4003a0d52f038e08f355d783879f25561f5e43844bcc75d660f32ddd5340bc5e00b0231009bccff07cb4c7853b8da1e3ec36fcca0c1bacf9c021309c5e6bf7d47e443dd3dfd772cf53346e32a3ec7618a8357267e0302047c435bb500673065023046d6665b1abfb7be595aaf3b5109e2b2caba4d60c30e84386c40265ee905aaeb8e1dd0b08e8e4ba818b0fc8a88a9b799023100891acdff49568949f49df88077da170e732e59bacd37cc326426414774b625ca4c532997d6c6fe27e35a4d17097960890302047c435bb5006830660231008ded2c544ec3e7951f89a975348af5163763961f528acf8a0a7185c8954e2f927d6d5512192b432bffbe358b3a63eb51023100e78135e838ec16aa60a2ee8074f592525860530e9823dea9cc4508c6ea8121fb4d14bdf04afb24141aa2ff9205d29c8d0302047c435bb500673065023100ec3ed25cc3bf5877f5bd736eee1a7e8dd12c883715bdc66969c48b10e90373d2ae9209f69266e4a27e14f2f3e00a4822023053698fd216328dc79f799999cbf686b6f246fba763e0b59b8f0544ef9e22510cb5cacf995ffc067bd4a66579a8c7c6400302047c435bb5006730650230747b84246daa9b6ecc9382990d06ed7ab48ce2c852a2dd1fbdac33a942a935b1fe0912f087888cd058a85d5d9de097e9023100ce9101f6805f9052fb4a756708015cb3a5041f6754783cb256647c72318ebc6752cc8aa98634405bc9704d812a49098d0302047c435bb50067306502310080b6f9c8db5d21ae649804f526e72b084db9725b05933366700741257395b190a34952d20de0fef2bd2aeafa6794104b023034bc5c5338d6c511cb76553fc98eeccf570b1943f9b34c88066284e79abdf16b5597c432a82918adcf226cb7ddc4c6bb0302047c435bb50066306402302cffd9bebe95aecbe100e58a51194156f5dab37dd0dc3446b7d926154604e433baf08d755e9603655ae3822b52205b0c02303f8ee9a5d852af419e538137ed43df0ae55bc30849293c1e733f951de3277788747de42f57e0fac0a2ea23dd50befbc80302047c435bb500673065023100d4f043d6348d39c869038a00b2a876fae8b0b7f55430609ed455b76241c57c75facfb91b65afcd0172b07ed409d53130023030118cbec170389bdece8ebcbf2c4dc471332cd9fb8df886226ad2896e93d933b879a8378485b59121707d599451b74a0302047c435bb500673065023100e75bc9a8489858711a72be19c66722d29e407de3f1da601bd51955de8bdb3641d074728cd929778486629cb368328f7902304c35f90f5d8cf9ab30625a95e155a884a5332155b84580bd425bd90671f0d7f2aa981fa78148a5a8b105201c4bda82270302047c435bb500683066023100a6bc6974cb621178a13b58150d3b3b4d6937c8220e427849104b6aea0bb53dfd81c2b380ae514d5388c93043cdc4ec07023100d992c8e3aff68ebf27f30a229d05cac6d6767047f8d9b38e86a0ebc5b69fa5c317b70289e82e872e8953e0512c57c7de0302047c435bb500673065023100b30b9c29ac1e7c2c8cb49af0eb22e95a9b5918a5be1dcac678e7383f297f55b5c0dc18df22a4e66cb6964fbddaff5e0102305340ac56ff097c8b628307ddb5b026a34046d6dcfe3bed2dc9f340ad3aca87d5764d60d443d8bc68adeae741f57f8cff0302047c435bb50066306402304d9ebc069cfcc94c46ecfbb34f322de9117ff38d6887a3b23ed8ad8afcb059a216adbff54219488af505a0729dd7cd830230057e41282af4939c146bd25495ef1188dae4ca23b18e621c1a8d20970b42300ecfca0aadc24d52c657da266f821afc020302047c435bb50066306402306e0e9cf68362ab7ab41d6e9637ba3e7ec697bac34b50c194f959bdc2109bf32ed4bb854ccc57b4c1ca0a72fb05e5883c02303b1089102e77143193f3723e549659c1615069ce8c9511eebe8cd94fc583dfe4305d2658a0f6c1b320b4931d029ab1950302047c435bb500683066023100d6150190af6f6627d46232b869b5507691d6d66baa5aad5b555f02a692316528bd63f5aa9e1a2564b822ff398f7ebbed0231009f851ceaddbb4a622b14c10ea37d18cd5b4341b1855d258bb7553c8e1f09b5292f23134e27cdac7ae310bd3b7b0c22fc0302047c435bb500683066023100fc90ce69df73b4f1db89d29866405ba6e5211d445ed34a7ad801db3ee6297f34ba59c823415c8dad0fe1af5fdf5e87a1023100cf31338630ae134307888542a15c83bd02dd9449265cacd80e3e75acb6895716b4f54a1d4f0ee601e1ff6e04d990138f0302047c435bb5006730650230702c33500ed116e5e49fe075217b576eeba765af593cfb8e8ee17c87dae2507502c530b67d05bb6720566fba8e41f60002310082eccf211a230b08ec2e2309ff4638534a2f8e983ca26c05a06c315b3b74d82b028288bbb7f6bf4490f34a1121caed5f0302047c435bb5006730650230395fcc262f42d78d16108c7e2a92ccf7cb3e381a1a104557d813c8e467c8e15dca327fdf7ed0ed85649082cb8d711cf0023100bda9565809843a46156a5122cec4c7bfba7fee7033b66eee320d3ede640739e05d978649a5391761803af0f13a3997bc0302047c435bb5006630640230691eb6bfaa7c905efca855d5cf856592c4c245b776073285dc35ba2d4cc4d2da3fd7926fed7064d0fc6994243c6fb3fb023033fc92b763e852fac9b25801cb285795b9767cc67661986721c76b92f7436c568546d0bfc60531464aea86a24a712f920302047c435bb50067306502304b9d29be8b782cf5bb48cff41fbe2593e0c6e61da81d0ceab9a9d488fc1c09eef03b003807755d7b99468cd1869d5a09023100b397646b7b725433add7116522305dfa404eeaf7194024364be5851632a4db85dde9c1e1eaee1bd9aa0a6d6913d66d720302047c435bb500683066023100f16ec7ee89f7c360d66b2108a2074f084aa23d3d6abb5c5902dd55a55c892d9e361fedd609c7c99873bc80c96245facd0231009c8db0286465e88453823087f65a8572b1127cd5f88f58d1b5a8d677358cfb996f3bd47157cf959193f138a78187ffef0302047c435bb500683066023100fcbdc551c6c4bb3bb7a4d3446f40d467ef031fe00731724e83fb86dae3c14225b818ba6b1d79eaac702c59d5469c0e1b023100cb0a7701b5e3c205b3a7a63a9b8a9f182b4a4faee0ed0913f56147043a792a528cfa98ec9dfadcae65f75b353265c6de0302047c435bb50066306402307d9586eafdad4f53b0565a6fa5b2772db1e5e343fa588cbb47d6536b85e5fa1393ec22c3864051859f839a6421c7a08102304855d0cd7a8af74e6973292bc2d2684490ffe99133351581bf8e2d39f61b0ec83e294b9eda94e0ebaf500e55d42cb67b0302047c435bb50066306402300172a0ae727f5a4193cc008d667f01596585d17043da2cb96216d20991545ae75636c2f536b3bb28e1d193b1ca98fe5e02306c34c8737f023b2885745e99b8d1f07488265251f5ace312ec319dc653c0e20fdc09b5b5840efe5b6f09468c79fc4c640302047c435bb500673065023047b89e23830d9f1d36a46e209609d2fe298695bbbc95dc5ed08c76da23ba7ee82f00c1837a7cd287c466ef9a48d50d1b023100dff929a9c25e6ae2f40f84708255f05bca8a942a082978a15ce56bc431248a873800a2f7b66208413c9e5c4c2fbe9c100302047c435bb50067306502306181c815ed83299abe0b8c3bccc9ad40b0153e6e7f26036eeda7d87e7e56d05d05ae162d4bbbc2ad29157aa334a51b29023100e3a2b986e9cf0f1fab0c1c610184c23ef6d4f5d164caf002d625e4918cb77a3994da83de5ef830185fd07d7a37e07a820302047c435bb50066306402300165917453b250ae45d77f619efd67b8b8085f93f2585e350a02a94e632128cb17605283087c40cfdd8779b33878d276023002d4fbffa43c040c436da4ebc7b1b26e20cc6582dba94845fa2c706186281b942dbf4412b622f97cc09ccc7eaa56651c0302047c435bb500683066023100f115c09f27b6f8b63fa1d23a877448504eac9edbbd9d0c8152df953af7109aa278b98e43024ce105309f7c8cc0671b16023100ba0c3fb14a96373ee2498103373a1a0b3426435579e3804c3039f86b34a9e3a121cbe1a3c76a43d7bb0e75353da6992c0302047c435bb500663064023012226128d33fc0bd4d22537ff0c76c0cb9708ad70f346f995c6fd5b0e7797f97ed79f953156f93dc014cb7cd553f7f3802303b83f7a4cc4575976e85ef5038d4ffc34d385e7724c2f3157597203f542761c3ba3ca32a7626d438eef9b8801577056f0302047c435bb500673065023100c09f4510eeb12dac97fae615d4ee489fcf832bb37262b3bade614f74f4405b6b6b84bf9a7a0a59900363878a155630650230032c338e5629c22c5f6dca4091f2afe1a5c424b70c649e8443db8194dc6dd00306d3b9e6378db9cbad958f463c896dc50302047c435bb50066306402301587a401d4b092c7beba9ed052c1eca37fd53ee471a44b5e8d2f683549e0292ee63821c3919a4c3a076d50ba3dea4b800230650ae80a54606b87b69fbe2344f90ec3981f0e3e0db1f5c78474c4172ca9e3404b1572ad5a13586cfba76bd7548d10770302047c435bb500663064023040b7fa3431735dccff61abfc286060e3602ca4021dda6750ca0539740b6ffa75da21d471b341daf9618a5d19017b52d402306858ff204c696837773aab8a3c64bc228a0f42a9bf89b37c19d97167af3dba133b2a960a31b656071dfbc17a4f4840930302047c435bb500673065023100f2e75be80c25e86e65057669b9c7edc53714f3dbe883b6eb4ee33817d9d5e92242e81ca3e9315db2823ecd47b95163b002300916e6ebe28b07cf0ebc1954035ca3428ea1baa769837b791514b9ac51595e0fe5e97d0613c8d1a8d53a8a39215624510302047c435bb500683066023100c49f0e304c1b9ac7e4e14073f69fd016df38606b2d6027d6d9cd283171e84720fe0a49117207d992c297d5edf73e55950231009b6083690147be910e550d6c8d7c8a43a6a896ec64b6e16595c598d7f90faacc66cf596947ce49b5deacbc575e9045d10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bd0b838ea9765c79f052203a4a70c4c90b2372ea054cae009d79e26dff56055665960eeca859a0b502b24ad3d1abd2de023100af3a8f2f810718e119e7d18386a6fac0ac3f145031bcd9ec8fd42b76e9b886926c883292539c5dfb75ffd10337cee6500302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023042c18cfb00e27706eba868bbd14625088e748c4484867bb662c665e4440243789a6d9c41ef33a248746adb185b49590e023100b55d23e3687a2826e0b7ce9b8dba6edeca2b5bfad10ce49772eefac28011a0ef2e4570dc771a5a654ee12fa81d5c00d80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230461ee8d3baac16dc12878ca11be8c355585233bcf53889413ff9605e83b00b721b3a01b64cb876f5cbba040e398ace25023044ee4ea9a95371d6179528198b4c385e3401e4b87e604f78d671f0f10fc261bd12590f6c6d35d821a37412d9d0fd89940302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b0a65f43ce381a6722c886c1f444edcd44ac52e87cb178eef706a8cbf17df9ec5b31101a7036e0bb03fcfa50c3c19018023100de9ee27a57e6103fe68b73081b1b67b3cda040236a2c58b6447b4c688a617858537a879d8fbacc9ec274c0ba9387c3540302047c435bb500683066023100fc81a1ab89e371ebff7bb62d765c2825c0edf29744c146810714518a7997653c1565f239352588818935f73a63e9b31d023100c610aefecba4999358f652afb81d8ea83c8980abe2cdb1d752a228b33ef47c60219593c1210678d4b9f6c8a506c156110302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b29bbf1b78fead07c3109ff5284e78870241010cb76971b9c6205330aebd912403f22ad82dc29dcb3fe7422329f23881023100bf4e28674bb7a6a57182afe37b652448fadbea5c9a9c2dc0c91cfce2a93cd9e5837cad214add6917051a527debe2f04c0302047c435bb500683066023100dbcb55b3ff58e86096770c4c025dabbb76680d01831703bdb487a690f8e995997b99ef6fcee6cc0119ea4bbdac6bd999023100d72505e98afb0a5cb16abaae5774b7921bb6a975bab2d3600408fcab53765671dfb7eb817a6e935643b1f3ea4ee0ff370302047c435bb500673065023045ec8026e9e6c10234fc432550a1329cc6bcbe25bda11e02a2971112fd250fa86f55810480eca9e8488e6086d5606b9b023100c187f2a5640d6f0cb87150b4c644681b6678dd55567ea92efec7aeef8d9e41b0137285e1928bcdf046a07cbb751d4f610302047c435bb500683066023100cb7831b29f10d5dace2cfb0e9271704a2fca57563aa976e173667fc86513a049d2995100f66ae7da2ede3ba114b9d659023100b993b155d8d16bd16b53764008f0f1946b531fe4f845655fd636fc92e76220645364281a7024b51eda9fb75151a3468e0302047c435bb500673065023100da0a1a57c38c75dcb4f69e7d8a19f49a0f6cdea00698c94ffa05bca4e33206d8823414b2d8522f333c484742778872a7023045b26b0c29b819a34e228abf1d53a7420074caade5e301e86d1f6b2c41daca1c359193d2f94c9d7da99bb0da6e3bc2160302047c435bb5006730650230244b9465f5aefc53ac95c6a648b2b5acdd505000512bd0989dcaa0b3b8c5a8b423494e9d63f76d6cdbaa0d14a5fd38c3023100a60efe062921809dec2f0ccc20ab9dc69168f19ece4b82e5164a130815f5707ba1dc64bb0e66a64b3fb45990c7d9b1c30302047c435bb500683066023100e1bf88a0ead16f75ec4197cea5922ed9e1885115ac3aa6c64701ec369381932a684dedf67856ae2685cab5602c80b45202310084b0213f33cd4cca33ded3f75863796efb32edcbbfaab7befe01197a69f8bdc2c2156f8ff86eab363847411b2b73f1e80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023007a0a64bad8307ba67f11743dd8c2e4c1d5ab4dad2a0fbadc9fbee146cc5e9a963655cbea6b1aa768e985e6b7ed0ce290230790c04fda0ea3dd7fdc168dfb8b5144d6768645bdf9edb1cad363b99a6c2726e4eb5d3a4a098912d74c66fcf8bdeadd60302047c435bb50066306402302b01048f1418132f3c3283020791b642d2a5365d38efa09a4c5d1e784b38019c48371e28909346cfee001d2c26c917ae02306bfba15809a069843822acf0e962ab685fe5fbadf35c90bdbc910f8851539389539a1b53210eba52458acc8a5aa9c7b00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230327eb9b8116dc0c7e41d366f4970038b15eb34c4d1e390dc2fed788f0f181a24daed43c85cc897fc0b5354abfa6c574802300165055c165d8e8c52bdf7651df1fa912dcb62c3073e556e014cd0cbec048d191c99518aa36a91ebab17f84db7e3a3660302047c435bb500683066023100f8c709450eba322bb9d008c8099c76c8a4f5e5180121aaf62fb61cab727c8e70080ce7be9750506f47e4ef57f8b6dce0023100d7a0a7bf007c8773fc31862708b12aa2a94588af2ccacd92312a0464336aaef890b8ec969d34eae8f4fafb64365de9340302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310081fde18e07ea501a8ee365d19cc56bb2642a39bb2fe8e4722617df9cde83332124e9ab662402c82cb55214efd3cc384e023061067b57d354d952b23b2295167b191bd1eae1b240477d4890c09200baa1b8035882b22b871218c7e8bbf0c8cf60e7030302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d822119d4b770f687a9e2aeb0565d1ac19d3744c46020edcec1f30a5f87b6a2308b0ecd58bc9cb52429c9c997d26912102304561562ce814cf678e5c0bb71d732fae838ab025168517541a3cbf53f52cf5ed6d33acfccbae73175044edd7fb4d19060302047c435bb500683066023100b0f71fb96d61d94eb1a209f6a9be136549285de8f757172458a732bafb34a311e8c2ca950a8483a9a5fea842acd31ba8023100d9e802a4eae92ca3d515075b3b7da1edca490127d7eccc9a2de9a0a28bf438a2d58853a568ed010370c9110ba8d88cd90302047c435bb500673065023100eaef74932b3183b6c606583cc2a1f183c56eaec587abed2581c40bb83ba37ceff302068f6e55c20c10d46493639cae7e023041924c132a1d4740d5dda64053ad2dbda55fde0a6b8e9a9742c6c6af23596e88e4191c2d7c60f1df8cef9749cdd50b090302047c435bb500673065023100bc36bdad11f07443881e3414ab60a850a41a388efc2600ae2f945d145850750ab5aab36ea82346f39c493a9983fe2711023012d47595933f38ccf978d6c50204a74a942d1261bcf2f28b900ce09b5da6aa60e4d0d73d2f526317957a246130b2dfea0302047c435bb50066306402307bb0500fe7f567d765e8e2372b3f3fda3bdc5fc63f03966574d84db2eaa00db3d83471fea7dd78269e1b9b166acecad502301358a1fb8da59e2b04645340325ef2cf483c8588175edbee76d5a950e1a512003ecefb2e29775c51dc41d464eb21c80c0302047c435bb500673065023100ea87a2831ce2826766157a39a6aec4e0e80a4482787d73529e3be13627072aefc0f32123efdde207ab974815dc7fcd15023013e63c98bc7e1aef836ef404ed699481b84ee97eebbaff9c1ce22cec21efead8976377afbf7d7db69211808f855c150c0302047c435bb500683066023100962d5c1de1358d52a930cb89c1abaf6fcee16edc4e3c384af112217a9d4f6e0668b90c14070d49d9519bc74096490360023100a860f68bbd0099ea6ab69291d5cf44475be0fc7ca7ab3e806d2147452d4646bfe9bcfcc606075ca2fb57b931780756ac0302047c435bb500683066023100804fdcbe0fd62e5eab40e81e3cebadc4fb6ca826c4a75d50525c87b7a13bfd6e432c314c776eb01f0065ea419baa5ee9023100b5dfe0f61a952f46c2081b13c2b495a52d2951280a968d6609d05dab9d2174bcb1ff6f259ade2e65a9484c8dc0afa3510302047c435bb500663064023033ef468023be9cc5ce84d2740b6966e98d8f68818d79b7f2b581b9cca5c022d06f0b586a09b0e1b8c5cf508aea0d6f7102303b30f04d929d4971e584d73fad642cc1f82214fedef6de67de42168f2ed87ea3feab805b147be55b3852bf8833f534100302047c435bb500673065023100e015e5a5f1c7ef633ce3260eff43d474ac21f56e8e557cc125d49f01959f3abd645123b76d37b1b54d715337781e8d770230630e6c24226d623bccd1381034555241eec5f5c513365d52e67489f6df8a6608b188ad1875a0ceafc6f14f99f51bf7d60302047c435bb500673065023100b311c524ff67c1182e7493823db15883632ed35001e8a17b34a6fbdfec696fe07235e8d2324ff6e074a8dbd29468e39d0230011d29ce6b6374fa65a98a3defc1e53043388eee368442123ef60adb142819b34da59610ac33fd5fe4e5ccf291bbd5340302047c435bb50066306402304cecd81c5c34ec1b2e64146ac70aadad6a4b183f7682defe86159858c4f8055dd403fecd68228a03a21d1a0365e7e98a02300d534daf3b57b4b73a144648e87115386688982b53a13e23f435483fc56ea00a025efccd9b447d65429222a0d5c1479d0302047c435bb500673065023100b70019d555c8821dd89165bc88a459e4697b915965e76a91de08310fdac7c7ece6c582b300680736df6fb1d3ca69567d02307c38993ae9e42f1c0e2dc58db14802af744c905a0e0de5016ff57170d14e253ac7394c3ab618e9ea24ff024075110b330302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023030b6011000d27accffbaa9c6487a59f0b95a935a378f4dc7c6432faf05ca50cba314a13bc35660e695eb31eb08baf7d602310084786354f5a3f509d7e8a59361df5756eee7fbfff1af7a312a32271ffe68032930d3bea72216fce83d10c5e4661d3c1a0302047c435bb50066306402307d377d1a5f288dd77ab239893b65d8b4df15d9fe7de8eac127a4e3ecb1dba18cb3ea26ad02373d827846a9e4dda14a6a023078008325e28e74c2b142362a6b4658fdd93c378b518062962bd09a3eda40e713bfb7a72a0a9f9b12de824e2462b8089c0302047c435bb500673065023100fa845437c017069a36221236c1d448cd65c6bb5f04d566547e7b83e2d7d9eb69ed441d5b9b8afdd64a72d622ae8d718602304ab8362eb24f0d25d8348183ab96014eb2255bb19d039f147fb1eb6dba185e8c8ab42930a00c0e2bc114fd0d2760f7c80302047c435bb500683066023100bf5fcfa34f83b977bc12f5ab4403332cafa575d89050912c63147edf19d99f7eb035610fbac96a8155eaaa0a60577021023100ade54dba06b71ce127e472245b1dd9da7d9cf0a53b83533951863be0907bfe00c3094c693fae3c8e6fc60a3722445d2f0302047c435bb5006630640230114b0bb3faffd9296f7ae494441f20aea197df10a420621957306640318fc34153d7e47073026a9c07112f0335e0090d02303201b96456ec5328c06c7d84948ce751cb8fb5597e534d4b27732d5b33ea67d8294b198b8b998d8ad1119dc8f01e98d00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e1dd12ea57617698232b81188a2041ebdbcf3ff5cc4f8ba543864d77165cddedcaa68984db5b21183c0ead7e53713c8f023100ab94ff61c760a4e3530d1420b0b3d1a7b736a7220ad6c334990be9ddecaeadf2b2ae1a21fe69858b0b1097bd01b0db7c0302047c435bb500663064023070a91137d88710080eda7f63c32729d2de7103860dcf75a61984d54ac5b6cc37fc4939d4e3ff6cddb0bb6297be15881202303144b0481f9ec95d7e0971a943137784c9fab195dade7827e6eeb8fa5a79869dfe8bf56999469b024c68b2b2097aa3540302047c435bb500663064023048d061501b0e50898bc1c057975a31541eb73ff7c72fed20ea9a2224ef9b6b1e978bd636e38b9cb643a4b3d30639f6810230093bec6f9e7e5ca7b01b104def1f72f522235a89d4dc0161fc216a0726f87220d1196e16900f81c9fd17ff33f0257bf90302047c435bb500673065023100dd43a5d32b26ed70951fffd05f0dd573bd3cd7677b3100b7aa7d0e682d439c5235ec0f836c4e8f62d94c494d0c1fc8070230264284ed4ffbc939bfeee7c7b30a97ebfde847c895d15546bea647252af79e8c81b579fe49721111feee48d90b4072cc0302047c435bb50068306602310093fa424f7c9f743d03e9a3849093e9243877e36252ab5e97bef5fe55085ab089aef63cf657e82bb0f26806f3760a880f023100c7b2504bc01016e7b4fc505a1d5e6c5850f6fd4be9a7d8602a366a885fbdc3e4ca82a43489bdf7f1e21622d6aaa84c9d0302047c435bb50068306602310083b1c015e1d69561b0c62a2ed1f8b4e5aeb13eab168d3a9bd92afcd1ede5aa6adb9800a79badf073732133844ac67216023100c30f1e16c77afb46abbb96a1dbb01393af4f3f13bd9de1d3084f5516411c25c0d90a5f774dc20aceeb7b0f8d828b225c0302047c435bb50067306502304a2c66e1aa9fa546e0ce9d727d2d32bb2d416f3aab05a8cc431c165ae58ab6a7e009d1c4691e5d678a2b9b87c5ca3531023100ec233d18901558a7d02d6c8f333a1ad8ed0576c0e341062d816ecee6eed1f599b2cc771e0abc535ebbc434be4977846d0302047c435bb500673065023003348aac26fe3bf57b96edb280842148381cf732ed51589a0a4b540ed4e448edeac1907e4d6ccbd829c6bac38029bf3d023100d65d681d138e3528c0bd58ee484d6f9cfc9d605b9135fd8641fd38946e0d7621a683131a2dccfa7eda5924710658bcef0302047c435bb50067306502306b9729106cbce3bced959200b12ee5549d042cb83452e84a6377362c9d10ff65ff3ed642a81524f4e422e8c99bf947de023100ee82d5faa92b5c3ed1e22b5e733c9898fb608556b28ff5f040ebae93c39686fcbe4015abf0f1b15f4721c95768b241800302047c435bb500683066023100ec6a459f8168562eb7cb6eea678660998dc467e43eb9d37a53e601316376a5998c606b8b31cd0ea148d6c4b94605e4c3023100b31eb4d10cf3ec15998f3be9cff8565296394381087b9d3662ea8ac3cb75d23a4f23e540b32cfdab8c3ad1d40d0dd35f0302047c435bb500673065023058c3d88defc674206e5b8d4f5ed28e0fafc04d24503dab5ba75203ff81237b05316062d0b1812d171c13a0c305925119023100f2adb656d97a23e8fa3bc6dd1cd2ae98ae7acd6181174b808120d0961d3ebd99ed4c25a60ba52ccae07112b0f6afa13b0302047c435bb500673065023100968defc0d905be17c55ecf41c3746c3314c577c26fca75cf0b12161cacab0ab25aa7e8383f201e8743482aeef87fafdb02301e41e20117a9f04adcd0b457c6178ab9c7f6deaa6480b94501d3f5bd5771ff6d0cb1cbd58a4cd1f5a88d788c230ee74b0302047c435bb500673065023025652c36283c527bc72bcd016b933580b27f8d4efbf00dce1e9ca7b5f0d405027fff34e05deb11c9df8d3979f97607f10231008e6eec729227c0f1532dada616b63cd10c9e2af58a506a98b4673aff700d251126cdce668495ab45e6bab2cd5338801e0302047c435bb5006730650230580d079538b1ebf47055a74b2d5ae0e2edaeaf497a2f30d29530364646791100c8504905cc679132a62b44802a4313fb023100c60ee843e95d0ba6372020325ffd01a86416113ea818beefd5f020b18429ece993fa8c0e99364a548a49ddc0ed924ddc0302047c435bb50067306502304ef89b3db87ee37e80bd8c24447b955a56b4f3c4ff6a3b1c3ad5bba6b0707285fc071f31da30389fa227d5f99bc0bd4a023100b931f6c4839a1741270f8948c530afae985ab33f2a2bc2f6f76cdaf15e89a9a41dd54c5263f0b7f79302b85b5c53b6500302047c435bb50066306402307a63851220693bcb24c86755b1cd04e2d4434d5911ee68a1ce6b349075f806c33df943a1658e169a56567d6c165dcf2702305b53f833a2cdab54822dfe72f1dc5551d891a4ce6cd9e978f0ca1a75e06f6843362bd4dacccb9cded991d065b96245620302047c435bb50067306502303291dfef27944c24007439971cc0a7c3e1bc68f7af9798f103eb6b67f3ac66e01f6812938518038b0c78e65b27142087023100dbd96af2f33ca9fbd96b6e043eaf197ecec951c48eadf94ab2ba0e5d36bb62d082d32ed3b19984b5d6034fd70d1caf7d0302047c435bb500673065023100fda7a1a9447d3c8914c0071d5fb5ad2cbe7c2b609d3e2e1b4ac42f7fdd05c89205626880e14238ce18539f77e0e7b2240230756d8e73291767f31cf20b6e74ef94a06b511c9521d095e04a2a125a4468c685159e739e5a8fcce20a141a395a5801560302047c435bb50067306502307305d549b65994072b5892100f14b1b9548d0602815a19e041ebf545f217490b14aa93797eb12d3a8c39f3e317145472023100924fc88f45908a2218032b5f5434533f13284fcbbb96cfbca160732a9cea3d69412a28bf48b396fa64be45d09c0859490302047c435bb500653063023000da927f048ef228ef85627b59998446075d0aa5cdc22b0b119875b6133a60f34b573a4ad4de2a7e180dfe548e652323022f0e252aeb9f7d6e964a6bc0a8292f0f95dbf3317b588822a86215d928749d4e24b95ae0bc1158989a3493d1f36e7e4e0302047c435bb500683066023100e8c721a63e84223c1904d5cd9a24ac4bc79971b936acabc445c68486a8687d50a7e88466fcf05903247eeaa6eeec9de9023100f8fe513d855823bed01c8076b68760841a763a2d1b2d919a83bd2e9c4aebdf24b8af56ec5ae7ab75b7d29ede063d962c0302047c435bb500683066023100c1fb33e6e7d36ded7b9024bb28ab50e2286e110d000b879a940a059f0662038ba2d5f53182c1bd954d9ac046f1018ec4023100e9856ac54ffd0ab1d26e37260d5881ae7a34d28ac8c683f6e504a7d5ad213be26c5dde939521bb638abd9ab7d382a7970302047c435bb500673065023100b93b3b271b0730b940d6b21743e598c21c8a50150a36081c9d901c306676e1666aa6ccb5927bd6d56660ba88f93dfe680230599e79a1500fe678f1e74b0f92cbb161c9d57263c5cce7b503103f99fb54bb41b82158678643f5ad7d7aea1e77915eb30302047c435bb500683066023100c188088252b284e2f9a1d73bdf8e8583eeafdfb70800659aac5cd672afdc65da1d83b4793b4cf571439b041e352f03110231009711c8c645081c3c5473fa6291460880c6bf7915cbed5dfb1e04a18eb1f8d466a0d0b21ebe50addeb14810ffe301ed280302047c435bb50066306402302a9eabadcbc055a98e1c68d0c1f0e3027cdeed8c89e2384741465b18160bc9426488bd45b29a3e9f07e9adde6c8bf30102302b9c980c6462c518055892665a4a4108fe0b412a48364298812ffcae2327a61787e38579262bc75782d88132f6954dd10302047c435bb500683066023100833c7904627652be4237ba75f68c6801659f25dcb73699bcb4b0461abf42eb3dff89705b4f1ddfa8f0bfbdd29ed0669e023100ae0c3f3ae982606d86bca2aac585f575eb8e2315cbe0414c96b7b20a7655691823eb3fe8524cb3605b557db1e2e4fee90302047c435bb50066306402306a81eb0ee2c178cd18b3624eba73a6eedef4362ce519db994c2b3b87eb02c9855f5519a89a2b6f54c28d70612ef498d20230072d722c17f7448b5f4a40714f093b7f5249bc7f0a517615e8bb40d0994a7c454ff1e43fb9e8bc53055fed2a96fc33bb0302047c435bb500673065023100cb03fc0089b432bdf27750c3bf6a11b992317f511f722ba7625d98dfede201299d03079372121121975d08e92b148df302301f7e3593a4dbf1eb9162aa9b2689facaa6373ccf7bd12e7d7de97efd33cac4380bf6165e4682c1021602a65def90b64e0302047c435bb500673065023100f6c7b301fc5747e279142892b8d9c243baed4d92c7dfe08061e572eca97b9b842b8437dc7ac92877fa0229ba0c7f4bfc02305e91b089cf037c082861c492cf4fe71ab4e45ca91caea3f28c2277f24dab311663b2dc2c83a968dd35a9e9b979031c870302047c435bb50066306402306af2a8b1afec24a33b93def5daeea98c198e3b2fa8b768fff2d919969c9d1720a37411e61c97285ec66a5245a1d08b0c02305b376980780ae3d5e2e6cb27fffb15099dadd475772d3a18db386865d7c510a484ae02ea728f0f5a120c695c186eb2da0302047c435bb50066306402304d579aed1c2a038461864379aba13d2d7518a44f7d5dd6a62cc17cf3c3abfcf2f91178ce1604e3c316b561a553220f2f02302e6e5104d938e7ab4ba7df04d47a29ca4c68a5510666d44a78fd4d99b6b8a915e14538e4898f0145fb60c90def0198bb0302047c435bb5006730650231009094ed68a1783d4b14f89999050cca2258f5479f5bc2193bf2f69ae779352a4a57cdeb4af83065ab16958ce3a6a1197202303e0f08e2bbc2024e26b45c8033e77e06638c34446eaba617ededd8e3bc157f89ffe5572302e97448635483fea3f1c81c0302047c435bb500663064023031580b0ca8223a78e0457d794678fa685c158e88c8a30eb62709c9d8755fbe56ea7a72223f5453fa85818352d37be82f023010a25384963646a5ee348d725053ad49cd53beaaa4ec225ee328436339d0b4152d64c5537cf0d60b89d50ce0f5abf2eb0302047c435bb500673065023100fa148057f9703793739c9e0b105a7e44b69b35b01222fbd8749c80f3737ae43711d83d281af58c65baa7c5349d47963d02300f52a096c5939a7f9f63bda509af528d5e4c540797c43f149344b20cb4674dc3fbba3fb825d9b5645fb613f78c2745630302047c435bb500663064023063836c244dadd00b4992f8cd55911846c4acd4ff7caf50b4d7b37416b9b1a60c17c1ab7e5e199613b658a595bc2f5d1102301eaee866daa86cfe4d9f4e0b6bd16ce82e93af6bc7064082c67c3fefdcda85de5d77e7d6e47a50e22b372ceceaaf13660302047c435bb5006630640230600fdeac3ac1e20a649ae81ed965d79576cce010747b630be8b1abeb9c6667f12adf01d1a8d51aed43ebaf89119fd86002300b21e93473fac997e3673532867606b025373c92e4c64503475e212f5670401f8f7c2cbe26980b82b0fb4554777e23030302047c435bb500673065023100b329509ce1a0016a111c1528d6f9e3c29710005723def0b2f5addd8606f2ed486594932f9c8ec9017b3874f05529e7cc0230174a231576db247f4cc3fb2c585d43a1596383013d3c6832cb8fcc953c19762eb7f143f0cf289ba2c30bad47fc88347a0302047c435bb50066306402301b7721419ae3b01ef3b46f2a29c1070f13f01665b41570bfe168f39271e497387aa77d10028d437d07c57de4c2e8d84e02301d1fa11a5956413b9b8071689c0797e66f9e119a4a73c139a077ec2ed885d2d72e6af48c7692232c066dbe747b8726350302047c435bb5006630640230448af3d691a892a5fe238a39e5bc08300310ae8403b20c5d0154d4656136d983c0219f97e0a595d38239b62e17e40cf4023078e2adc999f9023558c8d04a4830f5d8c269633a370fbb72b3c191008342abacad8b51cbe934bc3441e2bb9032c64a600302047c435bb500663064023068255c7c57f58076bbc70e0fc209e911ad7fe98d7eb829dc5146969cf07e3f3334bc981f534621a0a6319ba7c0aa14910230053d08d24c997f5f15d7676460f4fbedca2c9dfa5ccf146ba706af5e945a1741d9bde14c2d7ec799e8bf46af58fa56fc0302047c435bb500683066023100e3217dac52a036947f30585ea5f2092d6138032e4ca1a552f42987dcff9ee32cfbc67a39d518843379f6d85ac7709649023100ba3ce037114a863c70317d1d5a7fdd7439a36b8f5b0e7f096e6c13769994323caa0584dd3a3333cc3d944ef80120d32f0302047c435bb50066306402306ef11b764d323df8f24b65d6f9e140204d712ace7cd7133424071588444764de6dc23deea4072a395337f14c72ce91a0023072f086955224fda9638a391367c0b3a5297f70fff3db6c6e36df139aa06d37da4a4ddebc50b589cac6c3c3e3dd1631440302047c435bb50066306402300c39497b8cd6297905155d2bd990aa978670e56ef6f6f15b52992f37be278cb29ca8ccf716bbaf0b9aca6ecfc55e4e6d02301793b1645fa7030b2c5c8e8e9205b6eeadf39b79d008364ee2dcc2996cf456d6dc32b4256650b807a2e84639943ab16f0302047c435bb5006730650230318938c5689db2b55aa6e32016a057d0468dab11e85ed301855492d71103ac9ba668e000df369216845925f4be5c63b4023100a788572fca57e6576e2093765e2119a06190466973af8f43ac7877766dccd9aa2cdf6fe3fed33e6c090303266a31709c0302047c435bb500673065023100e621172e9a7a2ec494cf6758d6c0f13e61d0c8fa0dc28d24838fbab3e6fc7896fa5fd3c5b3aa9a6ff696551894405ea702303c8273d1c46e7d0284e5da932e6c4cd83d7319d1f14cf420995620f812f4d9464f1dc3c74e86fc8051f4a0cb43fe605c0302047c435bb50068306602310099d9f935138deed56d1c3c82b8d23f9804b323a023d16d6460968988aaaac166021352ab0e44c0cf3961c3f422a7673f023100ba47b0225dc8ca5b419b63667f62c4765b0c73c4bef1fd43651bc8a1cd7354ddc39f80c5734f63fa9bb83fbd7c925e6d0302047c435bb50067306502310081374555e3a7d18cfa2c0abb78e9de4cab82d1c5a547278e3c05aed36c13cf07dae58024316beec3ec14a6dc6e69471202301101a929e850dbf6717ed53a52d25bf2bc298d52a74776c024ad8f8b3f6022c31fffe31a3ad05c771a5f8ef02b8a64470302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100dd83e0bc8b777526cce29538c934ba8c9de5b1dbef9183cd68f8d9c8e9ec4d4daad2bca9cbb3f5c8e587747a018fc4a8023100b7ce89825d1b2fd5cfcef0c48e55461f3dbcfd70349887a83201fc1eeadb787cb8133b19c0873bda3da845da19db53900302047c435bb500673065023100f92cb49610af2498b340a48ce99f3b5360651c825ee41f104ed7fa0f9f4ad68e8796a923269220aaa29183d93d4f066602307fce0063b7db0fb436367940fd45523e84eba9cd50f6f66ec0bb8d2f63e45fc96c31c9155b17299ea4bbb69758a424230302047c435bb500673065023100b38a6e544d5ef76d784957562df267ea2adb87adf546126ae97c36acc6309161c64176e5ad50117a90889258972878cb0230356d00462e696e6d96597e52331ebd610f721b596a82e8c8c4943b462ca9c215df78dec95bd97aa4d86dbd2dcb20544b0302047c435bb50068306602310090f75c55e29581cc82361bd4a465ecf9d663b1b28f9660ed0cfa065516c43e6346246ebfa88c9df9ca829416fa2e0e620231009e520d226b825238360d0d6edc732391a89259f6e1ac15601515703c902b5e386e33e99ba5368cd2ba8a6a8590d9e9aa0302047c435bb50066306402305ccd1c9f071aa0c51d95c95a96761318df6445c4a74bdfc46960fccb0e3d11dc77edf774d2570a01fbfafcac5193daba02306a7c7db3e13fd1068e9618f2602946b40da84047a47ad37701f7f9f6faa1b565093b1976aba293bd7d8a369ec93132dd0302047c435bb500683066023100d51a4e55fe7b6476112dc5b97b32ba5c6d11291396e7fb53f0bf1e4b452a8335d3e0918b10062f9040fe9a47cf810174023100cd3316d8e9f562fb102171aefb01845e866e9cf189a918c1ffc1d6864f43a4cc02476ff2e2616ed1221958189c9070b10302047c435bb50066306402307c9cf3835f1b1377cb0a33ab09c92c0efdffe5b866f6e8ae2e7a1836da4532e38f50ab62f5f7fee7fc6390454d28b12302300e4b72383c4023ee54936856eaabd070426df3ff46a48bb0de9be50e2d1bd5c1a453fb7e976d70b9d3b3381e9a61e8dc0302047c435bb500683066023100c056361aff3b55b494e423e6125668fb5879c1e9b87a00c5561b493537a25f2c678ea8023db1599b4b54623167c7313d023100b6dc3d2d4269e79a4e553cd6b2bb30c9353c40f7bd57b4e9a11507b783346fef81328521039cc54720e66503853623230302047c435bb500673065023100db71157f3e2cebdc21f7c9a7f23dd1fbf216d512dfcd66309f08c672ebfed344721ce734bda3d172a18cc1f9db3a7f7d02301338fc183811172ba1d8199c2682ec5ab1ee6454ce30ace8cddf06f66bc0a60660b79ee8bf3701c639bd45edafeeb1f90302047c435bb500683066023100cca1218befe67c0ec12e8bd89e23ceac9b3ab0874d7d00a2ea30261905e2b445a1bba443fa53d20943e4ca01c04e800c023100d7371aa7ed8165c5613ab0a6b3ee6aab4c9e9e8e60a63f24c3fa2e7c0f7f494a4a889da6829689ae4eb31b82c671b1530302047c435bb500673065023100f4068f0b3f194ab432347f86daeed3fb02df586b266eb9f3abe6a97f9813a3222269bd3424c2e92595e4034ad4b42f7402302d0e829ab0f15dcff964bc3df22b22ac177b93193bcc5815afb00577f3e7a4d17ecc95acf780a3a762d4cbd1120b96e60302047c435bb500663064023078bb1b22d82a0c23111c7ba2e847ae8958f69961be8b9b4c48d159cf72a2f43e4829f87b81cefae6c96a0db09526dd9f02300d69fc70b585fe9b5313332ed18cd76ece7e5911d0c236c17464c0e02c58f982ea8078a2e197f60e12db27fceaec20e40302047c435bb500663064023028c35b8f92fbf1bb40c18eb46db1d216b7a2d0c364dd09d2796ef4d3cb1164a7e89f462063a8887d7a92a1fe5e3f0b5902304419d2ccab07791a7657ba763e2f4452702aa6ff5c1b4ae7e24932cd53abbf911820e3889cb4670952461873689d36550302047c435bb500673065023100c9955e4684e6281fab19f607d5bc368656a5341be5bde88a8826d3dec415b01d7803e847ecb38df2c9962d665f8d1e4b02307d74b79af6521d0525f4c42d40dc2a3b82553b6c388ce299def9a88b7e964a022215609d57c0b06df463fd974c7098440302047c435bb500673065023100adbb0d19a89872455382f1bf6acd0a0ccb31a400822d2aa913fb3cebd7322c52829de9ff00839635dab80019f065f35102300f068456dc44a1e816f7f514949cfe854a22a0667cf5aa66bba69079e361468523cded6d973b1e5e787d12f70ef2109c0302047c435bb500663064023049f0d9acc2ce9cd0f032a2e37d07cd32248fbbca8dd68168722b2458add692f36d04b334fbe30e95b199304ce845d30302307d910a61e5e26a7241d1eb13942bc41de46c8e01750af49c6f406939b5787050c1e462be8d173823034abc6d19ba6fb10302047c435bb500683066023100fc467bf159ceef9b5bb9d9504199f95af75853329fb04062605e6075a2b1408db9020820a787ee94ee675d98a8850302023100cf81c5ac5a5966711194e88b0a121f44bce951b9b8d5679fb5c7b36df0d8b64fe2608005989d4e39ea715646ceae84d70302047c435bb50067306502310088614b16a84abac7e2370991e707598875d9b99f32e9dc66ccb49254f502f4fe74b61b145a7756b8236559c953c04d380230550b700dee43aff68e9376c24dba15fb3d301f95bfd4ba20bb751300021c498aed7ccebfb43ea78c7f1515655e0ef3f20302047c435bb50066306402303819548a19d6cddd9645b505b7dce7c33a986b53e4013205d8117865d1123c7c124cc0e1f5ead145a786064b9d5f6a92023007ae691d5b492117a607f1245ffb384df97e748f0279891d81b0fbe32594dcdf77ef454a532c173483894fc49c370f150302047c435bb50068306602310090426a0a4d6c4e33f12b4e67bfc63ea87dd4733ff281a455a2d0b3ddb4750277f2048dcc9c2e4b74d1a7bb406d133ac5023100a1f076f3a78b999a2ec178800a8edc4414d90e917b5db33eaac262095402ff4a7eae6e1070eb5382250b38c691dce3120302047c435bb50067306502302935f762afa529b2f68a54ae15444b6be6fa88470fa6424404a82c6208cd5b994b0e9a9f569acba83cc0189b6feb9de4023100954a6f686eb38c529721e7951f3f262a11ec75d77b78641e35c9024edfe21f28f062b97d64fd361dfe4fafd37dfe04940302047c435bb50066306402301f8618455521bfb57710d8ddbc2c0f0c4702ab3750735c15a19b9e76899b65de8d5ee8e4f04bbde14b796b7056b038d302307d04b025c87f1ac3fd36095c5963597ae0eca0e600c1097efc1a9b7b2d2ce788b6bec7430a1edf771ae14def102a76e30302047c435bb500673065023100c4071c35b4d6bef7ffd98c18fd194dd7dc70c0e86b75d487eb4f7acced294aca9f59c916caa78ae8452fb1f4acb489f602306842fc29eda20cbde041d3edbf31bbf50f640ed080bf353ff4a224614e55544054ab7ea4206f971c20795aa557ab32850302047c435bb500683066023100bd44f40f4cdf155ed7f61f0c619995424af2d0fba6621a61d76341d07a74a41b31c16de4a7643d96ffc3184465b39ace023100c571dc2b21f8c87bfba365d6ad79dad3331c16e2324c92f1eb31a57999586dbd8269f261d743bdcba2b6074eb80e2d090302047c435bb5006730650230068410eda4e804fbc843d6d28a96a254a8a813c10b73531d1e1cb03e67f8e80d32721c9a3d5e8bcb8c75b9195197d919023100f1891c50c5cc8f13ad7ff2610718a0f5ffb3e5b314bc5ba835850a56d4f9552a8810e9713f5df467fe687f82c1032b330302047c435bb50067306502303812edd177fc9bc3068d2ff5baabf3f948ec2e3969bc23664ab6a06353e637143e6dfd87324a367373def1ccd63a1fab0231008faa8cbb226b340e69fc8924faef245beb32bd51ca84fd0bbc62cb658204d6e416786e3773083cf013771e40b00d7a3b0302047c435bb500673065023100db97c056b8fcb769515d718beb316a844e8e758bc3ebe6b298b415e916ff25edade9a50cc5fad6e975846376aba1473b02302e1634a9342dba6c505526e9e521ad11b7cb91309e757c02c05dc7073d6212fbe60c7194660ca06e96773913a5359daa0302047c435bb50067306502300ee7024cc955e53516f9e7168a4e8bc06f5184a1c69c31d92591c7fac9560bbddc09ed430c52d22189043a67a65bfc4c023100fe706fb298d1e374b100da0a88f3d02516889bc159422e91c8b5b067627c1ac5aabe6f6f810939fea20f975de15435830302047c435bb500673065023100ef966640685701f6efd585a8061a052e8914802fa1bdfa103e60a6dfdae4114da3606cc4d99ddb2e067a24138b76ea07023070b92b74fd4b546033054f5bbe2aa2bc4dc6e728a1bb0fabd9e01bcc5056e638ae9331985c7e3a3172df31496cbf3a000302047c435bb500663064023060cc131c8df3019b55d3fccc9231fb6b5dcb703f37b0ae73729f2e8f4623cd63bad6cf490ec4e1552fc5771218b6596d02300a9fed5ebb6ccd57c0150c1ffaa2c75d4a672abd2765d790c4912aacffd0503594810d81e6b0e93ee94eddb34a7a36c70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230092bbe2713ecce67ca9af296b0296d3e7b8419e194886a597fa8767b4d998f0e466ec3216344838a767ed83818b9977802302aa4112ec4ca0f672189c52bcae703a125fd3d1be5eaf2802f06f5f67a841eb8f42321d412e280353f6bc14a02ba9af80302047c435bb50066306402302713111dddab2c468d9155f587a14bbe15c09b6d832ee29bda0d3219ee196257cae5ec4d016157301369fa8da57b2a5e023007d03ed6bf0b881dee50e66ee890f13ce7e34e77c3c54e7008270c397fbf6a0fca3ab3c1d5ebaf64ff9718f6d7a0d4920302047c435bb500673065023100e0b9babb60afe877d28c6c82a47f2860f20255d30eb201aeeeb494867af45e5c7d446a913f6ca96b71b95f5aa10758f502304e54c00121d2abb7d545b91e0fd33731d61cbede9a53034338c9c9eaeea650cc278e30645ca42b74c41a365f9622d5ad0302047c435bb500673065023043a8d9a17342d583b87a282458b8ab10b8e38ab4fcf6a48a8c0c7b76dc17b73826ed2b535a023c545c359aa423e8ffea0231009b35216459ffa9cab557ff16d9e0bc5530790c9a284ed26a99bdca73da3666856660508158effaca23b35c77b28bcb100302047c435bb500673065023015915760cd166eee42de52b07054363055293b0140729889f665c7b116b87b8091e99bf487840a2435091961ce879ea5023100ac8c78e73643d96ce2eb9b30c8d8e3faa44ee21ac902c0e90fa723044aa3861a6aa6588c7196f91773290a3ed2370d9f0302047c435bb50066306402306b5893c65927030d2a5cfb6a7f41d7d42399942743325299609c58e7d61bdd60d3a20c3cdf898c8f04f8a40e9f15641e0230655d1b04388bcec105be65a347373fc0c8eac588bb721aec37aa7689019012dd163a343426d6eddf71fa0091e69792320302047c435bb5006730650230453ba8044a8bd6ddeaa6ae57ebb70096a29a7b4df6342d0b03b2b0c3f96ca5fe6e9a9e426a4c2075ba79003042df68c6023100bfb835f5a3b54f88b8b87a80856d1231b23536f12568e27fee7d1c051313dd3e0fb92f1669e2d3dafc24f87adf0d0ef60302047c435bb500673065023100f8e821f6211fbfe96611ec7a54f1ed098cd7f6d08b84cd8b35e842ca14c3f14ba55ba468ab44055ceefea00430ae97c0023016dfa6607d9e101a669205640c745d91e2aa54d82d3374a436bc493a27194eb8470b6779e64ac17d4350ae002aa435300302047c435bb500663064023048e3eff1d79d72e2fdcbc6758e51b6c8a91cb09e5e1778a61e59b8a5dc958689a83761e0685f98c93f95f6a49b9a5b84023030efa01c9fa2fbfbdc8f1d60c3997bc9d577775044219a8827a9a2f6d70732dcf0053a898a307742f23bae9649ca937a0302047c435bb500683066023100de25b7f3e87bf00dd9affbf0318c4e1d6339626a30319534aa21fb5e3025934bb95f80ffd27497a153dd415ae5c4338b023100937072ab24b95664f515bab0819da7c54f78008bb05d496e2575f7a1967466d81984f4e2ddfd2f43706103a5a002746f0302047c435bb500673065023100b48b3a40f4efda190b5fd9483e59405f052abd77a1115fbe82c56ede152c3bec62cfc734074ad2b8bf9ee081be1a70a10230154fac75eab83f5076f98c4a5a68013738182e084afb6c59c80cbb90bd82533a8840f9e0fe5a7a6735ce794dd8145bcd0302047c435bb500683066023100c9d8cb13b07b0fa8101e16104dcd4bc513614219d50db55abcaf9f388b7aac189d4e160721b1d7729e40cbb07f8e30c8023100a41f20d7b8bc19dda363f01ada1421058466b87f6d42d39bdd87ccd278e604232b734877da144d1c1ac849f87b6b20ca0302047c435bb500673065023100886cce71205ed2a85a51623f10a2df3f5d6f0e5463cf6f5216a219f25c32eb557e044bec9d144b01f6d0e850c58dfcd102306ecd0d17008812c6bb784820a91c1f7d4baf2fe830ea4e5e1da2bb87dedb87fd414ced83403b1e0cd0589c4bfbd6e3030302047c435bb500663064023008599f7a845f4f0f14f6f2fa8bd01871a66d9fba68fb41ed7694038a5a1aecf5b42b20ed580ac1148657403296fa04fe023036d2dfd48957c79f2dd5a8b00a476d0ee057a3ec09ec93ae0c076241fef6cbd25aaaf7ce3fa1a5997fabd0f55b11a75a0302047c435bb50067306502301fd21d8dcb0496cce4ef753198044b7e518652d66465c968263896aecb16b4d86d25b41e94917f51d74d26d7be44cd25023100e16c48e5d4e44cb64841a68e39d63ed80ff3ccf923eb795cd445ff54877a4fe2ae8b40b30243dbdcd8ded8f68631e54c0302047c435bb500663064023056d9f9770548c61b4c99f5b736b8ab11978f8e5c527503d1ec9cb65f9cd4372b357a3f8f41523e474031b68ea4ea506002302edb1c53f671f6a12b05391576d942d8668d3210d5b3fbb146c26b41b7e567129d75539d524f8dba5a0749d70c3f22a00302047c435bb500673065023100b47a5ec57a928cec53993fa62ed4cb633dbfa3faf129fbf5c95bc2d7446ef578c79d8b5ca5e8653c44bc63e449b5e344023006da01b68876a9afcfba4533128abc22d9bbd66d5525f1aa456c32152e8465a1c06963906038c7473f3accd0c49274d10302047c435bb50066306402300dfcf4eeffa6b25bfe3b9c1651914cc15b45fd971add11aba4b08e2ba00b999dd7b33f01edfe4dfed3c6737e5f9ae2a40230256f8af7d9ebb0642cf2a8a43bf02158bc4f543eaa37d48719afcc948138ffdb91c059b0f3a2f8343a1bfd526c6574850302047c435bb500673065023100e212a21fd85a71c25ba4a152ec233afeff8532fe8a70880480fff611a0d7f1a56f12e55a168ec3d5519346bd71fade40023065b48cadcff201c7f78d25cd815d50c2c99174bd3c99a887a63330236af4519fa3fc4409bdf29d0709565d53c314f2490302047c435bb500673065023100de8269b7ebfb344232f849fb2733fd17c33600e337bf1aa555e5c5da9d40bbb1d9eab136e0b776212c85f2abd31c9a2402303d9cfbaeab564357513a5991851531fb2ad816e3d3f7ed4d674d1485557956f164962435560f60cfe30a3e47301fef650302047c435bb50066306402303cf47930d0686bc07d4b1e95d0f31b186a8bdb26429739bd9a426a104176d05139e37320706ec33095a7a1f231017979023041392df10511b3d0b2dc9bcca5ffe66f80c03497342efc4f044d712701a636cf52ad93558d71b78edbea988d5f98cad60302047c435bb5006730650230537087f4038180ad9a76fbe191203fb47362c130c1017e41b5c1d3fafaaf1303100af9b45aff26068e647156848a716402310092fefbd78ba23e751358be8ff4f68e03d82a7952e047782d06ae3f929bf3496e0199993543641ec1c210f9caf35ddc450302047c435bb50068306602310097f8255e753c1b9859ed93d5bd0770e4e380ecae83d08b501c448209a83c873f47ba22ee56388e4c7ce21e38c22c7474023100d88363d830748b5fd2101eecf23349f857a9033dc52a6a70116a35aa0379a0085926abbb6fe21a75c6f06d2ea6fc22bb0302047c435bb500673065023100841f43ad092e8b0c02c401b5884250c4df17dafb299a9a888d568d21f598ca15b55f8de47d8bb6e578245737a66e26ec02304eb67b743c11230238f0bf0a4176fcce47b61a170dd737ccf9329cb335eb329333459fc14311dfb21f48770568126dd10302047c435bb50067306502303cefd9738f37512d3fb90f18c5e727f9c8cef3057b14891f0988eba3acf5f2832fdad8adf5c4412441fc948780751dd2023100eadc5974e92f581931d8a2f3c50003c59591fcaf103ee73d402afaf97e42957d927ffe1ce043da22f310af407fef1d050302047c435bb500673065023039e7d5319e19f956fee1e5615b8882ac72efca761d7d07725bb5d7ab7ded79a73288e3ba2fcdc12892380a2f27e8e451023100dabbdbde6efc80d3a842a285c3df5af4da160fccca0782df7399fe73f2e7ee566668b65da276883b381d4772a4b42af80302047c435bb5006730650230079abf2b9f1ffb826daa47487466d08a0fff2909d138eab9e012639a61e50bc6d68cd906f11ee4b9bcb7e2d94cd01a820231009cf7100a3aac20b4c0996a095d66cda105450cc73c1e3eeb03bb555c48e76d7ed98ad1b7a7716481f5f1f94d3a9e227a0302047c435bb500683066023100ceaced05ad45436159103bcfbb0bcaf2fef5c672155be360ed4fdbb4026b7c0c04060c79ec64493e88ea53f30cd07b28023100c4ecc5e1916d6a738c5a2c32219562b47e491c41fc1bd4f626857557ce35c9768d1fde767c53f3c3f4d492d9c1a7ef820302047c435bb50066306402301d62fb4f169c8f91dca54522f5fc6a1c3b4c43f132915b7ad2c53bfa6c4d94c8464ceefb73e59165f5b61a3051d85a6b02304a163abb8d7ce8fdaf556c94f2246d649b588ec65b199b92047b9aee515a6c4b94906a4fc95917a787a8ad95985f4df10302047c435bb500663064023050312ab7b9c8dee4e407ffad7bac43bc9328335c572b3717d74fc217190bca29ea79a8ae721a42b7db0f84122e6ccb7902301ddeb102b804c578bd2f59a35e3f5fe950c31564c0e8f646ea22cb4959d102f112e9ad919f2eb70667d14ac4b3e9ab070302047c435bb50067306502304946c435d7969bbfe95fa2ac30d13814ad6864b40c8f002c3734fbebe68e486eb4201c2175c260066fcbe33877758eaf023100892bad274ea4cb9231d0c34c7dac1298d32445c186c98be8f1bc66d7e7849e57b52b0557d48e00d12dfcfefd67871ea00302047c435bb50067306502304d182e2c657a893ecc0ca01d588f5545abcf9230cd1ff892534301aebd94a8175d5141f4a6afa91cbcc0ceab9e4ba917023100af558fd17d272f39a32595e91a2ff1e95f086f6200d551e12872a1b9eb8448b712e33d221fb3e564325b392e5de7cf120302047c435bb500663064023021d5c600cea2e970f8e9d5041ac181f75a7fd075227e10d27d23a9674b2185039302f50efcf5234a2d8f3cf0885fb45002306ebff910575e93aea9410137499952fcd23044a4112b0b25196ddc08f46a299d33353c73318a8fcf902652c38be8c6060302047c435bb500673065023046e8d255a59d9bf78dee25fd4eef6372d6d75c7b2d9051fbb0f73862f9f856834366af205ef46f00b494ab1cf9421ab602310093f89e5993a8bfaa0bb345eb24da0271c3758e40765d7aea4412cae1a920277a42a50945e44ca1479520b1a097b9ae530302047c435bb500673065023100fe5cb2dbb77bd27130cace9c36ee5af66558e338860e677cd84e44d48a7a7c59858e7eab89127640a38471e12ae1e0ba02305319e480aaf0ff24de68a48c27426e915d925af04783c51b27705a40de8687573bc379f40b6ded5572991456adbbcc990302047c435bb50067306502307693f190be1ba764b7f27d129164a0942a52b2c39f22cb51515912e4bc7822d907f264fd787e3e3d422ba517070a44f8023100d63c1ba0f86bd98ba8abb0bf867e4c89ca4f07fe18dc9f71a1155236d2d8ba471798db6bfaf371a78436c3adbe0919390302047c435bb50067306502310094f729311f28ae98ce82a47e7f38669e9bac614bd28643609f6d6fac8c42f69acf0d74fe6f89705638fb8c83e08df19c0230261bdea48d5bd418b85762bb57aee52b78833ff4e1a8eb8cb0ea4e58200d359009180fcb496a0101c58bbdc92df9af3f0302047c435bb50066306402301316c8073ee0ec4d9dd58d9c82aff5f6b899b25257e4803125a0ce35516bdd878c9523b0b96e978dfac57e73b034c3c0023008a451b7c074cf4f471336bac47d6565eb2cd896a25c397c6e3baf943602adc07ff5a66288913abc91fbf64a0959e1cf0302047c435bb500673065023100985450462fc4a8f507b2be894e9f73596f2ae62974e15da07282b61d2a0cdfcf6d7a1e2ebbd8b3c3f18b942238463de0023044e79f478e8b935eecd68748919e83d9d7ba20771b423132e0c6eafb3a7e2e733dc2964fc435e0d793f2ff47f7a884b30302047c435bb5006630640230200378efabc94977d7419c1b151840304a0e48ac116a9578d32ba1f5ec4d5ce0fdd449651fbea044fc4c12b21e3b7d480230510dbb731d01f079a8e8425f2a0b1340e9a9ec32a33c689747ab8e8a8a67ffc51781e4f478776d5434cb87fc2a9ca9fa0302047c435bb500673065023100ee38f3ed9ae7e70b3d6a70ba5fa088195cdd9a474ec5a203f488e8e225603ccc0084e0cc0a04fe21b6db4cc9686f926502301247cafe6478ede52f2963042ee6087c6bfb9851e53e1553ac4fb106da13dfa3b833ed37afee6ac6153425cbbc0f1da40302047c435bb50067306502300ef620b5a4d68a37d37b92869f6ba0893c527edc2c50461b28f5e3821313b392f4edac4a2869714f9caa756480bd9ee50231008699ceb162722bcc219f0df82bccd0a8d2068265a64696cd567a4b04e871f23ff41b5a02528a57b57bd5506e8f49262a0302047c435bb500673065023100d12d57edfb634d410965883fd08e37313c255a7c99db0a38e9c6c7285558d23645ddfb1b5984512e8a2a08c29a64d58a023052a056a5e3e8dafe79218a6bb4287789137320de58142135b50d323b53e010938ddef53f045aa4c7f792e610ac4e2ec90302047c435bb5006830660231009c02fafee9e7952c682c524b062f5084f1aba7619642392de79fddcd660635fa1c136d830517539a78a95f5a00f7cd88023100acc4437c0216c53f77280eade045d2059af4614845dad449daf19ab70852c9acbb18d1aec41837963aacc12ecc7a27b20302047c435bb50067306502304210decd71cf3cb8a068e48bb4626201ec762b7910def41b25ea555a01316c78405e92b5bf1796e867b8ef4ab2f3a83d023100d6e055f8bca9c9d4e64e8db513a5e2c092b6b65444f61e6147d2f0aed3fbe629460fec033fc2314c011994fd062db08e0302047c435bb500683066023100f1559c121a3f7f5ddc3bfd4b253bbf22156f66cace2ab0a49bdf4811a60bfd610f7ca2127bb26889fd4add07baaf95990231008e92b46713319a88062fb8d4ad58aa02f780edc8be02d89b8c0d313501b31aa7d0d6528f35ecb45bb1d563c4d6fff0250302047c435bb5006730650230680dac77787cb3848495741de06ea003d5602550725bfdfbfa32dc900423202f52b46ff9f731f40cccaa17a2bd132893023100c296b37ccd46c8a9b8e332ea0667b56163b59e92d730b1f9e900d4e227413794a219fcb96ae190e8260577d5c06bdf7f0302047c435bb500663064023060eb67d63e318707b14a6355fda2c64211a37d92a6d2beb918d09c4335db04eef838abc5fcc2d6aa85e38eccf978768302302f9a51e1a7ffee3202998457ceabf5d9552489c68a6fa2a5bf2e31107ee96d1f55c6b83382b96e7f29bd584ee10f83580302047c435bb500673065023100cbb66bb3e40ff9508169c589bfc05272cb1c5e2b100bfece79fdcf471aeb4fdd65427a6bbf467893fa587acb77aa50e70230389e261057952fc2f79cf68f94f788596dca2e8ed4093e7a7dec4f14a13f25aef23652f10467a90cc0f9cd0fa38b9d170302047c435bb5006730650230309e4fadc6649c17678b4573ad596266b6c537b8b83628d1dde058d8a3d2648f51fc3b53cd037348d4ac30109104b4d00231008a774536670e9d2e59c7c656c2708dcf0d7496f27314e743ef2337cfe5872d0b4a136d0dccca38d3f19c768e158cad820302047c435bb500673065023100bee10ef79ce18b48c516d937358351f9d3b9ff5e11338c612abd84dd07a01e116ea24897698ed34d19190896023da36702306204ec9f05025611a2937e7e6667ec9baab8bb78ad8e8dd9344c08a8228e0022cde1c5ed5e3224c000dfe3ab8dfa71c90302047c435bb500673065023100af7cad0f460855e42f9cbf846c6ad9264ebf20773775c6294c6002295b16446486838f5cd943889d22124b7372dbe70d0230562f994bd38724b6c57824b02fa39edce6e8fe92b0250324ab196a0042b02df946c010b4c11410f0b7037c144dba6cb80302047c435bb500683066023100eb5c6b6512dceeaf93fb17861ee34f15ccc762c83dd64db039f00a9cbe04d895dadeb790c2598d08f81a4bd8e3509c5b023100ad4943d96e7c1de44f72ae79ece29b021621950770c305ccf8596e475cab8a45b076d41f0534131f490930d3a8a8fc530302047c435bb50067306502300a130c03c00aea89c174a3f473bd3aa0293e589b0c593c6e80043fb0e84f2e15591bcc415f761c607a068d0fd6a74831023100bd253c4621cf1e725bd8102c60fea18277ac76323e7e994d03cad05a4dadb0bd74d087adefab0a4c4202306cfe4954490302047c435bb50067306502305576fb93f443bc89cbf364a0cdffb5082e3d1c321858fa60cb397169f70be8ee4087833acdf8cc2b37176220efbcff1a023100eaa78b0f197b84dfea64b44d13baa95cf8b32c27b68c0d543bb5a6c3741768adf1697b317493376754b430a6372add2c0302047c435bb500673065023100f0846c08c5e572b73679f87a04059ffd9b49e08fe022ca50f286b9f68592ec6264a39b86c891139844143526cef5d074023020b1a37a4a99a98206762d8df11fa439f652eabcdb4c929410e3845522eb3c993d08e0f68e9648da8d2a7b8d0473f2030302047c435bb500673065023100a38f195c4e92c6eb9dbdafd839ba66e0a8f12295514cf6c9cce17fac04f99316bf8284a53dd78934a5374fd74ccd4b760230148eced959e37e137652707e57207bebc61ac53d456d77fd1dd8bc8c8206a5d65187806c41f2bde703dd4dac92b1e2690302047c435bb5006730650230262df460ccf815e311255af403a76d9ae775e4beab970f9dad5e19ad6b7ac46b693aa51e24dfe26615b85e35ca34296b02310084aaae5298725163f1382be963f00ad82bdb707406d2e37a94880d7a3ef6531ef614e716fcd35567107c362c425ae05c0302047c435bb500673065023048ace5bbfc07bf8e8e992dce798f076483f45b4b43c97236db2b898b2743e80890bbdcfc90d62dbc35a360b0665b5194023100edcd162404702efd3cd89a59505e523b5564e6471008a7ce9ca7a679688271d8bab90ab096b72400e14c9d7274ca31150302047c435bb500683066023100dad39e5e1e7a542d2168ac449c8fd6b97577f6787dbc64b8b5df22edcd864570b2b92aa8c59bcf5961ca713be47f691b02310098e531c411c42901545c5e060d50f7c80b18836a28f105fa6cccb12263dcdf3265b9ae396a423c64169c58f69aff6d460302047c435bb5006730650230021da7caa999d374483cf57af668e91d6f820f4c5071c2782a63bc49701c94f853c8f3cd8cf8dab533fa48031860a4dd023100895636973c028c744cc259239b8062578cd49e8c161304c75f97ba09cf278e92286ace704606ab4700e61811c8c3124a0302047c435bb50066306402306e183b383401802723a786729d32e0962e0d12921280a024b0ddbc5d94eb9db90884a3df3de0161d0b0fd18fde3ce8f8023069ba84f5f3200d66613dd93e0879f1c9a4e9d19b8b0f3858b347ffbae7708322c2356f4e6acb99aa907c140706c66cf60302047c435bb5006630640230451a99a3195943d9d148a16279e2e559e209bef6adcaac362fe742296c0c2c7a175729aee2f966ef35dcb79c0a914dd402302de91463cd99d739bb440242b6f70fc2ad472702046dce6242930c2a4201eab1bb91400af12b9c12fdf0a4b418ee8bf80302047c435bb5006730650231008626f986f9d3df321eec1c9c3b33c22a6271fdac1cc421c4515fcf70181cc2678111c41fbec6b6d3563067de5ff03286023019e5a541f9721a96b0b2da621ca6436dc848f411fbec24b99fa3fdb9a96f8cb929362b8ee8195943ad67f58f898147600302047c435bb500683066023100ecfca73deee088f8c830ddd208d32d446686e403afb361d3150f6ad847de0dfd72b5d0901d5cc1ba6c736443eb30e8ee023100f85525c1679df640d74f45accb46f40f594f5908ef6afcd8358e195c6ee51bda8f40f832629e698f8294e61c245fa2770302047c435bb500663064023018148aff26ad93f19eb71c7e2c9df4777463073a807cb4535d5aa60aa9643884f264f4c1e3fc6d562250eda29fafec520230517cafa8880ad56da93e0f296f0c2ef0121292b307eb57ba582b22bbca1f630e4c6fb86d6cd4444f7b0bf5e242d115a60302047c435bb500683066023100d693b5921f1fc77b25f6362ce3c790c310b4d4a6aec88f20ae255ab3d500465d203c5fbce9aad0c4768039efd32672840231008528189b900f87ebcf127575c7d96b4cfc688caab7c4e6b3eec8572c06fcd02696f9d625e6c905594b2cefea3dc6c2660302047c435bb500683066023100e2690845bcb0f1a8a36e341a1a55901b7d9b22da972626a86905d08ea5e7c121b540b98159971cf4836848203fff0a560231009e6830cedb0e8519fdd92af281ea32474841e829cf41a2476f3884761ac7e1379d93d66f0622c6563388f2ed7d1b9d510302047c435bb500673065023100909ccf01f84737b748d332d72ebbb4600130fa2a9a257dd2a2de2fadef23c9905599e365f0fad2c29648bb910ea0772f023043f9b5c790ee94ada3918add0f14a9fadc8dcdc8b163b04fa0fd624106eec32a20fe322ccc81ad06eefe6ab4b13102190302047c435bb500663064023057d2a60f46e783654a614a86ff14307b1521912de1324c08bde5380398fa6125c342aede15ef7876fb022711cbd4fc710230620efecf4b9d142436eea48c2bf2443292ba06416f2113a8324100a8dd5896ac6ffc0c38416b244b0af8a37528220a0e0302047c435bb50067306502302531451098d9810e549c3dbf7b4769977b91413b9d0cd326623cd81059592d6eb4fb48551d8c42aea25cdb661889fb5f023100ec3fb1a6f8a2c594f655efd26351afc1da24cd05ca989e4577ab1b4ec466ffdfe745425f6aa4d822707c55ebd731de820302047c435bb500673065023100e98cb14c78caebe5fd513902b1470984fb7dea9bcac6e6bd9bee1d7e77a649ad247434b2be64191067d8af5bb048fe1b02305150be287965caa6fbeb746aba86206793732afe638526c302fcc95d47dfe1dd170d60fb4da7cc3819ccc0e340ff35120302047c435bb500673065023100e5583fdce222ff50076ca3877af952e990d8ce32747170346971aa0bec8610ffc1c81dd54edff6966236b97607fc24030230257051254f306760e2f107bb7995648e7e5ddce7c4e5864cda7065a4a841bbadf8d27d3f25b6d2d8a6a1c71688972c8a0302047c435bb500683066023100a88eddddb7f7ee76d4b7bdcf0ab1a941fe698659910d4bccc05df05cf853e9dfce1dd0da323ab8c7deff31f47b744525023100f636eb1b47538df151de069fee278400ece9e26813b1c97169fe83a60c1c38442e14fab3842c4ea894279eb5808addfd0302047c435bb500683066023100ad94324d90effc4ab465f2187c91651ebc7c0487e82309a4dd4ea1e9ff3e250bcf0b57d1a8ac317e511e46f32ab0ee16023100d339390839a3da575ee5bd260b999df22e8a9d51432872126ec6419bac43bd1919a34eade34344dd80086673a0e06aa30302047c435bb500673065023100f197142c5d9754f1c01b65a1d23763dc46b6a0a7829cac96b2bacebe848ebcdeba32e03998482580e928313b19c64834023049ee61cf2622565232bc3a671dbd238ee4f94853460add6e4696431a0e6c619bb3ea603ff4d822dc702c27a36707a3100302047c435bb50068306602310096a1668b22915be2e87a01411dd384bc38f891192302fdf27ec1934f5d1f53752e3bda57fa5120f5227dd056164c98030231008f01644baf4d3aac61034564deeba82a25a02c4a745e48a1d1f3b5ad7ee82f4cc971ccc4fbdbb4e1f43294a59838d9fe0302047c435bb500683066023100e5cfb5c3146c0ac54c3731b0c1a69ce96d9d2195801822c3e491ed5645acf3499c7dab79b533343ac5f0c8baf448dea7023100b1a1e6280b73f38e57b1ed72f574187c4f216418454b1a319d88cb88b06bce942a4ee908ba319da46d0d747388df01b30302047c435bb50066306402302cb6fab298d174aa6a6b30406f18a7707fd1b6b614669aa00083c5c35292ef241b25ebf49face66c6c4e458260b7e01c02306ff5619d5aba5df340b2721950c4c40c418f5fa2a8368d6317e05426cb389157dc36522f809994d19c20c9ffbd43bc030302047c435bb50066306402300765b9e4a270a68cbcdbef72fd78d79d4b78e52e8710cf683c55c9d8d6a0bfeaf95e7c8eb0fe63c1398b4c57d2baec760230561a350aeb246e1923fda4f21cf2c280adcce9d371c3754573f7531cb8c7d63a596d689140ad2cb99bac72ac0e59c6610302047c435bb500683066023100fa24627b42ba3759cc0b8d81c3a6243c490067a26e4c83096e70a378f0b644bf4a374d171d95cf7fcb0cd16af85e5f9d023100ebcb87b0768154014986031ef55a3b312a907f02743a7d77d2a3d1e026d6f6c9630beacaec534e5a68e9e20a73ab36260302047c435bb50066306402305d21afd5a00977bc1ff338f6062f8edc5b2d6ecd6c06f8b03a7f72a1b7d0addb61cefb2de7ef9261ded8f3652a9d14200230705995db65a12642a102f2502e282e4629c165e3e924d1dd6ed373e9cba6c16bcc0a3280462080f80dc83172f52e13060302047c435bb500683066023100d4648a3e5585e4665cf6ae04aaf728a1e1eee0432636e24affcf52ea1353861ee21b14910fa21661e579b6ea07c275e6023100fb44c8d9c0b190e1c9fc54124253cd02c5c74f285801691710b8010dc472b4ee1de63c980e8ba7f3b859ebd5712d43980302047c435bb50066306402304edcc409e444ac1a5332b6521d3dcf259aa38dfe01cb80608d4115cfe1fb1ca7528a0b7f36844f6e6a6c90b8125c09f802305bce754f46efd3abcdd39e16795786ab5e9b80a91211809c57f84b71cb3edfb9d7c179e341471329bc7da44d5a1724ca0302047c435bb500683066023100b244f8c9f6c9f554e062ee3c0820d1e20f087d1f771a7dad126053b5d4fb4832c9e2e5c037b02c676dea9fee9c35afb9023100e154e34ecd0737bf2b4352a75245d1cce757e84d14c4398f7202f044aba1c1f9bbed1cf687ee9d999d3d6872a7df4e570302047c435bb500673065023100cc2a33dc01779f09b2188306b6fbfa07e2f24a126fae2a04802ad55dfc1195ce188a214cccddaf2612fabb17f99b26be0230171662ad4f5f6dd4ccf3fe1427b3e0729a24ae470d706f323c749620fe52cc895cecd700eed19cadd86bf5174f0a15b70302047c435bb500663064023043871b900915c3508d5bc0d3f3aed8fa62f77725266fd5a1b686f6e108b4c33cce505638fdc1ef0f610937779b15f9050230477b7f8404add47f92ded692066a321614b0f58d5388e11575bdb769b5e2a185f1fe97ef063c378033bb3673ffc6fa2f0302047c435bb5006630640230610a6b1e20d85e163ad261e2a08f887517a5dd114370b7e22532f9a36762024b871268207ddf83802f9b6f70e780d38802306ad9a35ce57ea6e5d2e98a9c8f0ac2631ed44b8e855eff85c0d411ab50387b8f8669409fdaed89269d77c4584d3cb25a0302047c435bb500683066023100ceb86bfa90e17d5b4d5a83d012e89aa739474791ddf3b59b76b669cc753b07beff1407fd131f6576824dd2958d0efa3d023100a9888733bb2e58ce118c5b6f20fba654758246f3181361d5a05d0957be71fd9949cf5d3da81a394741b47a789fabdb1f0302047c435bb5006630640230473d058299b0db0f2f0718901b9bad3c6161d2b4d329954363569e402ffffcaf8f02e928b8c01ea8735b687ee8f5928602307a2990440431b219d13656444f094cfeb825d329df78b6b85cd091ba84b3ff232e11d96e15bcab905d132b1aac46f27e0302047c435bb500683066023100b7a3040b2fb06e1bc0cf36f6b9ee35a2efe6d071e0d2f5af24ccda16aa2a77cb2af606f01c7640e4e5f59fd82528c446023100eae5c6bd4a6ba9d26b82adc41c9de23295a646f01aa28e43e5a883e9f9978b3cad1c9f06163c44b6626f33db7fc086400302047c435bb500673065023100ff7af8d5661ff1d6fd907526b8d6ce2c4162aa21333a4f2a48eca0d2c91511ac6455b2cfbf108669e763141b0e802a8c023049ad464adf5df5b5e725e9939dd7fc9764c7d0519f54132cb282f0d199396cf207889373fd0f42f153b6df0f995c161a0302047c435bb500673065023100f39b0409b403f45fb4899d09b7751621a076771a4c819f9eaa8a7a51f9d5874a6d79baa86617eed2993ff84bb8186c0b02306f68f9beae2515b85ebf0372c8103f5bc3988c77674006040af67cc8c65eada26bf1034daf1afae7f9253959bb0a56f70302047c435bb50066306402304ebdb8ea31d08e03ffc50f4a011347f5e2a805dba12d5baf3245543fbe90e1948f2c5f2b4039e57d42fc46e6213273c7023038ef5a29a85144636ef04ab94b68f77349b7f804463d359326b2dea45ed518b6cebbd2cbe43afe4e116f5aba572ec9850302047c435bb500673065023100aa82749e3f1f41cfaf0dda479f41a361559506e0491b8224e307614236dcd36e53b24355045c00ffa9511c5fbcad90ec02307af6d0c838fa47e4885568d67287079c382976c1a46d866796ce3f17dfdbd75fdbc50e018d7357056c317fab5cb1da5f0302047c435bb5006730650231009fea4e5daf0d972e7b76aea119eb5428d9336096d0a2a4d7dd273eb4737486cb83c11825fce8773cfe507dda43a3792002302420f318036e5244bc9c964084d72a3f51e463c7c56d0d4cb06ae11917bd4c7a798aebc3bb442571321ea54aa108ba0a0302047c435bb500673065023100a82f950f0982ecd4a98eb8b3e413091b1fa8548f33a4f679c1590dbeaa3b910604fcffa3c0a58084e15216e0ee951b1e02306b9552dc7fa5c5ff9bb8a66f81f8f5439d73fcf41602a7ed54bdfaee2972497e229b970605355b69aecdea41ccda4c9a0302047c435bb500673065023100d7daa0360c526ee38a596e4c15a0a6cbca07029880cc4e06c6725858675a7db82c2fa5fda55900be253dcec73f1aa01d023050552bcb72277d5db1a5ac0f1628bdb9c5a972f10b0720b2c6ad71e0be5e42521330571e703e28cec8270f27b3d30fc80302047c435bb5006730650231009bf52c566458233922fefc22f475634c79af8927596fe0c9341719105923a2f026caac9ddff191bdecd4ea6fd39c5f8e02300b7dcf38dbc80cf739a1a846fa78994f114ebbc1114377b62dc1492f246bf4ce919a32aef69b10002e6439a6c2cc231b0302047c435bb500673065023100a72baf1a31d8273421c938e860a26e98c7d0ea5f952dcce0800ecaff1492104d5c3d26cf9eebb55ee99d3aaeaf67d8d502300f0ffbdd9852272b67abbde640ac3ff7245dc963abe5aa69eb278bbdacf47e6d764c54e44232eb2aa511457854b2eaab0302047c435bb500673065023100cbba6af17a8f6c5fa07974c658f175a8f187f9fe42f10b5c72e8171e2de9cdecec5d42efd844373b52ba053b488c663002301ae643dad8cdcfe2d818f97b89bf295cf6d33c54229111b0c088ea3f6cf5294e35dedab6e0ae34b71006520855cb77670302047c435bb500673065023100e3cba86e4ebea5178f4c315c1312ade5767a6fca994af444e58056d32287f3f4dcb7622219fc9a59bb43a959e535973802301bcc709455b8c24e87e68e4774d19b586c3015a0e1469b8a0dc962e35da99da25580c54d693410e72fb6aade0908d8280302047c435bb50067306502310099272e5d1274d0832d30cc4f2a133a3e43cfe88d942ffd675086a21b54b88a8ff5cbba7b4b5a773bdfb2392afed27215023066c90175c7481e1e3867d5a03a31e14a12a204cc788862594733a84f313d7e924d4d8aee41db2e80eeea683eaed208190302047c435bb500683066023100ee17c7d70efa8af4f47d12ea4cb8c3e17ed358c76e01f2c70e9768ae48e10208dc1a0d683dd92eb5e40c929f23c2bec3023100dec79e38695c2324f565b7051524f63f1b77c7ad78501fe0d3b0ea6f9b3d23e35e1725bb0013c34de11dddbc50e81cc80302047c435bb5006730650230323160ecb63ac21286bffb34d206b4c0889348e9d4f7d99a4d85679bb2c2197df7d09c638ab4d51e1279bf0a394083190231009c23ddf3eaea3350eeb890f435f8e10bfe04b9ba07a46695353278b7cf8d8f1af593dc7099f5a21d549a1a2a366288380302047c435bb500663064023073f274621418e2866bfb6fe00564525adc04e341d13dad7db502b959ec26056e8196b7a155fb6d3a141039529d1d69fb023046f9ad8ba3da24b6ebe2381cea6fded9f1a17d403b17657dfd682fec45aa8ee3fb0df2883898a8b066be97ad23dc86dd0302047c435bb500673065023038cf167c1b020472b151ac29934e6bafa0b8b46846490cb0388e0f83bf5a54236168fb476864b0929b0700f38f504254023100cd3b116fbf5715a1a48ece1f6b757867c2259322cb91997d149256378c57babb2b44cd3c17658d6a6c2650fb09b7e5030302047c435bb5006730650231009bf172b85ade1e55de6f6e7461194a8f828547ccf4d7a795cf2d422b5518b2223080bdf20e94bb19560769107373150c0230567db7633588ca5ee4fd7fdfa9d85f54545508daab0eb7ec2cbdf9869eb8a2ef82e9d83bc1f861f5a303c3fe742803870302047c435bb500673065023100aa8d1a5b4c052a12bf1f0a20bdb07d415fdae6dc2b3b51c4d4aed0a2cc8dc62a3dcdc715ce61c8bdc5f9b63a5f66a44402301ceba9421ba22155c950a2a88682e2946edec1ecb1e618d7e61707ed4c106eec484eed78b44b2dc594c6b65c123f37c20302047c435bb500673065023100e9457ac4b2af5cdf14cb8caee765d723e62e3c75374e61201581c81256e591064f1d4e130ce653928276e952876d6be702307faff7746743b17a3e79cb789e0cd1357b32d0457e63e5cc835aaf21ef15a0e42286ecbde2d3c40af4ca999b8f17a88b0302047c435bb500663064023073da3f5090760f31cbb060d34cb65d1888a5a73d6e286e8396dc8d5338165229edff372589fcbabd512aa0f17135686802307991dc0933fa64d7277f8032430c4bf3d8e3897c7e2bfb860dbcdad9f96b75a9050c959d67f3dc6f260da1e5b6b3ccee0302047c435bb50067306502305c7b69525f0aa654456a36a81f397387fb20333244b90246c7f8416f199747d06cd9a445e135c0c046d4b8db3c7644490231008bfab30ed4f95376599dd4e555981fd8dbd4b1172a93eef9617a5cf9ba3c3678b4f6dfe2e4b1631a42c663e1fc565b760302047c435bb500673065023100aae7d520791bacc66631017a2570106d79ec2a182115e46588a05b7214c00caa0578702eb3f4f722b0b6ae4d3f68db3702307ac83c77a81f7fa39ece0c2094c03ee7b0c918841fbce604ff76bf8436ba934d80e1d2f78c5c8a0d31afe05f938f1f6d0302047c435bb5006630640230075bb9c6d4fb6c443019f838a42fd05fde7cd1d1bebb7b0227c67c5f996d50cf8a50f4016cdd66e97b20a3fe90cb80a002307f538c0222a74f86ed185ef8c8e751f20fd5a1beb4e99f2313eaa3ed4e947ce63311630ff83952fdad97abc08e937d7b0302047c435bb500673065023044a8fd9ff99554e950d72f94b9acf2e14914afe2d641084abb46a9cb5808e00ddad24e31a8f3553d42a7de7599ad257302310094df41054d31ab90170b3d1608fa497e5346e7834d958d2a49f054dc0472f784f4845e23df4d4b379e31a5de89137d1f0302047c435bb5006630640230799b00238214c91b75cb3534c734f1b71f5d63bd20f89584a931aa60114f5d81f8e630f99b516fab3f11659d1032b2c602303e02f2edc7d69e1bcd69592f18c62a2db80633de00bfd2a577f1ca9e1631249f2b2ed3884c3b55311cb0dc7f008023990302047c435bb500673065023100f0c1473edc11fc291dff727952a928bab59537ec5108569ceee271e1d68944fdf4828ca09da4b30f4f4bcc2766529d9002302d42803ffabc6aeb5886e0a0d05469ef6b9f79d7000d0a4382d43b1b8acea30a6379e0b48bc8a81b7bca9789619317410302047c435bb500673065023009973f72cc26971d8af35ba34c184c3db00a221ae33ce4ca669b3e7d7a7a23525b8ca8a626e469690eba030d0c9753ce023100f38fc3076eea568d9e88cefc8907f6d5609ddcc69f9d67d5ab4a3e8559986bfacc54cb98a40c864239827a6aab0b9df60302047c435bb5006730650230555e20611af3df30439b35104acb97b34dcd3f78eca882e85e1d5db75849d50956ba4c1d37eb3ef55cde046b92488879023100edba52020c35933f20cf307a1983b47d6ae8faa96915261c7947b9277b013c4d494595ca249c2aca315ffdb0d451d1c20302047c435bb500673065023100c6580d158f26b7dd76e3924682f7ffcfbc8eec6034014cd0045c2428d397b79635f9123e47af112e905b813914df7bc102303471e49769cc293c604d512bbb182c8e6be92edf349b30c4a116e2a1827676b976fefd12d1a2061a95f656fef022eba50302047c435bb50067306502303b0126354fb6d423cd0fc1444502016e0faa9c05743e30fdbac479cc1a2072e3cff33dbf15e389a110d7610cea3bd33a023100e1a26ecc6d0b028ac9231a8d5b96e7d0e68b5a8834218201b0a9ee24ea2e4ac045bae73abd9075addd87f487f60f330d0302047c435bb50066306402300e6346f534d9ca3fef141dca4cffc447916a221cf4a22c205c1d149bae6c94b97f8b4a38875f3da005f268dc315119240230634d7724d8d22372a16ee5082e5e11ec65affdd600c89a64a1ced386f56f4cb611d9b91cf1bb8e5417c9f429efb66b780302047c435bb500683066023100af5cebd3ce5a7e665845f1164e5b8da8fd1c09932c028ced1f5581249c5a03558a135dfc2374bb5c5d770a87cc673904023100cfef84b3b4a4a0b84f67c56ae5b9b96ee6727aebc40ab12d9d50373ce20591abda1caec76d28167a68728c1123a3102b0302047c435bb50067306502307cfb3a2e745efa9052c81d6964925579ddc68b5b049b7d3f0279dbcb8ce692eb7f73a7a99e403fb166b7513fb41768c3023100a7bbeed7f75a3a65720186d08cd38bc951ff914719472412a663ba910a83c22ba0187417a687f64e8314a3310a451c7e0302047c435bb500673065023019c45b33c03c8e176535223a6b21af36959e1673336e5329c168eaab69b6b195104b2221d1da7958b00ff1bae4b31bb1023100e462cf0eafa13ecbed958e0fb33307419e8f81b99cfcdd41186516d3b0d6d43ae79703adccbc0894c8c6b77fd0114b990302047c435bb50066306402305b738baa3dec895fee5735afe47d1c7359b273b4067ca44e9062dbd75e2128fbec9b84f3e74fcc7034301737805308b8023073e79c9c9a0db05168444ea5e3c50935a19939d89dc4b918c4a8222c5c4145f68dfed4897298d38146a5dc4a4617cca30302047c435bb50066306402301e1956605e073cadaa69bfc5e6fb51650c2ef69b7dede01232ded9f61206b3f05161360caa0cfb2584e0921df91af67502304ee9488a9ddb6de8ed51017d61d2c17ce7fadd0114ada7b011345c0a5d9832bbd1e85dbe1aa2a1add54b3b80ab1ad0ce0302047c435bb5006630640230212c8104a3b02719dc9a859256f22ca8bbbece6a20f903f0799a85a01365605720eac28c4455a56f76ff420310ca22f50230417ec99984aca50f67c041355aa472f119a77da9376bfd134bed0168c3acd1259a97af1942412f5558016a5f6171106f0302047c435bb500683066023100afa838afc30217b1e6e20752c6ae1633117a36c6c66dbc6b68dfb0820c5481fe081daed3505465fbc8b9470f1614de7a023100d307cb35b24d8a3fec76981dae68ad6a777ecbd400a0559e2ec1abed12873f4caf6d7a2d20a57aa916add4bd2164c5890302047c435bb5006630640230227bd1b5eb6ddd9819586265533082c038e559f31adabd56da26e6570d117f1448e3687742c95ccab0951492886c8d5202305f7547c567271318a4f1202a80f6f77549e65779318f7861d1675020218bd4a3b0c40e8a9ed4d0fb754125f65ef195160302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100daa0614fae4843bedaa0e1264ad7a2ec223c40fd730c5162ec18e532e2631eeb7bbf1c98b390666988ee411a279633e6023100c745e2304dc0e31660a3ac3bf44ff6ff067d56664b605f09d4e8fd53ca4e9262b1d163025d0f1c7e7c512a02b9a515600302047c435bb50067306502303e2611062c2aa5b373da0cf0a6216acebbb0b8df53678212e1412072a1c0a2dc89e633ee64bdb1833071e7f65c4b87b1023100d0ba60dc9d8fa60d1108fbed38ccd6ff4c85a64cd7ecfb0d6e9a12c322d4c0638091334f9784bf7f5d5ec8b4ee365d3c0302047c435bb500663064023013bec5200b18d69ecb0c5d762af5ea0840e5cea95f49b00fda19421e7325a7379a3054a0ca2d201a5e94b8b19fd619440230062eb0842eceef9600ed45e78f906abd66e5a61adb166527e371e953d0bbfa13869c2d45a4c0d614771146dd5c6733870302047c435bb50066306402304952e88eebc02bdb6afd570999b1ab0e62cb0f97eede7f9881425b23366882e1c242b3f0d4fd4e7bcf2334cc9818efaf023023d6cab4b50a00e80a4392d41739168b642134a94abae87bcc63948d7e37f991f3847a6f382792b468d6ca2b204330cf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e837ce184cfd8b017b99cc67198d13f9989da3eabb4be23e2d5483406843f5341aa47b265b7dd138df4c7be6c5bf22eb02301d95e5b15d811b5936572fecd91dc9672b15ea827997f478fed93af4c2183f6205edfb79f3b9964534fc0ae20a26f9cc0302047c435bb500673065023024a54a4cc0215a17c7f8cab822ff722e2984ad0ef55f79186f1d194c857f7719311807ca9f84ebd6d00ee20336a4aa8a0231008f8af6423649be8c44b5e60e8ad1cbad89ac57a4740582e68822fef21d9785fedf4f1e646f628b0e9f6eded661ceff0c0302047c435bb500673065023064c6a76a564e0496b5ecbbce1e546d9f724afc6876c3611f9a67fea705da3dad42e746343828b652cd2c58d231aa8cb002310094f5f0ba6c33878c318ccd1c6e352bd326ef0d2e140c065a794f01e31aa478da5e06ce58c5c5a45a1abe372382a2abba0302047c435bb500673065023100a06ffe7027d279d3f0bb6ac0eba7345a0708fa7086582d99cf2e971908c97bc374b43fe8d61a7a2035b4c05027a28f0c02307a3eaed194d4e85f8225289055c8618af900c3e6a1d12642ed9312393b1ae090d0a5f173e6f9817be9187656395362930302047c435bb500663064023037fd158c46cb96c34081806c458b717f50244a55e042c37fda66f211e4b11ab401bfc10db992a0c42d3938ad4ba5d7f102306c91b2c8c8e2c70c91679b578e8785f4609e3c566243dd9ad02ec8fcbe71105a1b84926dbcc93f9d5e482e9452eee6b70302047c435bb50067306502300c139538d652cd22b2fa202389b71de9e0aeed0a4f7cb326fdac7623c50cf40e3d03cc0e8253d2b27c6dbbdd46eed475023100a3c8721d5daf92a3083d48af253e4d75d88e3d7d17212318c36cb06aa6839736aa5e4aacb96139606616b9237e0f09510302047c435bb5006730650230503e5b1c0e3cec200bd1c0a3eafecf728640f1fd3cc167553b1fc1d9e567304702a7d8707fc7288a4db98027b2c2c505023100ffe31cf717420673114aa68b5f62fe6af31910a7e5d76847d6bb8568c786f704b54536f7b7c40ebd6d45e4e3d23d72a60302047c435bb5006730650231008b4c1694af50285425c3455fa825b3b69683a5052e53d27245a2d7915a364ef0a4716a5fb2eb7d3e143149d878772cb702303c07bec10faeedc53b562392db42d4d8a4ea197709ddcc5d179db81b0654693578f2e05845eea1cd5a38a0bb6a52d2e30302047c435bb500683066023100f1847609d043fc35bd648dad5aff27a0225fd21d2630a92555ed4fca1eabc40901e6052903aad6ad0056e056c8d527df023100dffa0f3bb90e22dbb3118df5b74c992e80255d9dcd7e4b49bffa6cbbae2125c7ab1c584eeff11c70c20665751c368c920302047c435bb50066306402302cd93bac792d582db4c0b1739fa430d73f68d0dd1f62ebdd5e4bdda80653e8b273f38105a9c21e7afea753563156c52c02307fd1a1dcc63ca2b5875f3dbd5f39bad023add7c1236e7df11668904ec21bd8b740bfd46f8cf117c5d657ad8fd3b85c3b0302047c435bb500683066023100f3ba43e12cc01ef5b39cd7244ab8681db3f08c0bda93f9e0ea175194892b48e7e75f2bccd2aa85281cb3a722c13376f3023100c68956e95e92bdfc2b3d5acd62a49122dff3a79ddc2a24cc53521944b3fc1685d5f9a574c6eb2a6ebe525cac33ae39830302047c435bb500673065023031c59de5104d39068febf5d4197c6f63ceeb75be249ea22ae2f99853fc913f51adf49f17316f5d6509659d737334f8500231008cbc2fa835ffd7ebb6824bd8d9bfaebf4ea6ad032133dce4e42df7cdade6e99b53de6f2ff8d5db1ccf58f8b7801cfb4e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c054d314796434639cf90599edfb505e9f5cf963396f02120f481203fc83e42f57fcdb447f5720e6c69e6e24b24fd6e5023063e926b2192e3d7a32a23aa91b2eafcfc9af7868fb0b556283f1bd4b31a58a2e749a7b373206292670fce3c4369758e30302047c435bb500683066023100e848f25f974aec74a72068d03b8f0923ce290d3884b5d79b1fc27e970fc148c5a37960086b0da274f2a974fc5f2283c3023100d4111d166fd5f9b7d54e84d8c9a10b7d636bf5f87329e9f3a34d2381dcfc674cd7e1808051044d23747163f2b125cd410302047c435bb500683066023100a229bbbd186217021d93880a4fa333bc6f80421a08f9bf078313da51480c41fc6810d01641624ee2806d0b657b7ebc20023100cb83f01e821c88510d3d22cd65c87b24412d218234d158212585a560a3e42aa6a8292a4cb4ae8aa0391443506e17341b0302047c435bb500673065023072025e562842fd797d3334b87bd4ab2cc51c1dd5306f473551624e5ddc611e10d3fa4c34a1affddb1353b420f2285f97023100ce411ba7531a32dab81d76553450b309bbc8c19fba92824044d1945c42913f04834e3a5e94af8e716cba4425a5e5fa000302047c435bb500663064023018bc21ae8d3021ccc935fbcbd9c7f66c963a12e0194189698a6b1aed5e508d82a0b1c179f24c0ea034fa621b128d04c502307d903da4027d3123ce2826e81bb548813141478072769228f044fd63fd08a098a15cc68e2a9780792566f0a07e62fbc50302047c435bb50067306502307f9f4f9fbc528193b4cfa5e1062ff0d38e57149968741461c36c2f2f005e9c35fc5ccdf7a0b006fd333d32621ce5b484023100fe640d030215d373a6d8f48d27db80e6eab229f85f74ad87ba10ef660009b1446c7c318a5f374938f930b7cad8118e6a0302047c435bb5006730650231008d0ceebc4412fcb00bf2f18e0c978a929bc351a1a18162aa65b2395d46a029344445ed76abc5925342fa63e0c895f62a02305342dcefdcb748e9977d4647476b23367c6083c67dd956d230f974e270f115d1a26d4d23f9de5f62ed1b157651ae74380302047c435bb50068306602310080d1bc042d4c566ffbc76bb2c8a4558d289ffe530ca85e825da2bc5f7121be7a5df11b7ac7be6cbbd8b68214d13c0a30023100c8736a6e277b94fc76bf848dff486c7b2287869a8734cc14fb6665fee38bcce7df7bc78f376a4e0f7c32e467e33c94c50302047c435bb500663064023033325768bcab5dc958ba355d7303184b961a093252e4049fa1509d07cc603bc7aea3943391a1aa0f00351f7a78ab667302305ba2c1b1260c02644c9a78a5e8c0709d17eedab9a8ba058127bfc44e90f2eea786f8af159003bcd5ab09a1d5b214b3040302047c435bb50066306402306508cb495e459096d4a0ed4234c72c6c94276cbbb0536c7924462c72af99b3a92a73896f75841da9a34c9163a89a526b02301e1466a93cad430ee52fa2ecc88722058af7e6d1afed725f2618ce1e413fbba053901c78460c188677b760360ab179f30302047c435bb500673065023050a12a06e711d75527e39f4a1e318b8f79d233757e0dddd702d99abb8a9d43d877407ddbc2acf2371dc18d2390bc8261023100eb5448da157240f5d66c9d6a1a84da8586526eb19bc429cae932a4168bb3790e17e870467e237c2ec253da6f5ff666ae0302047c435bb500663064023004663b7856478b344ed6dc2f0617a1a39fe81e8737b78ba03ea6887c625849b1d6db61660904855d11858bfd79123c2002303ac99640201e8c7b7c39a236758d3d33678700303cb6bc25d4752d9f6ce35bfbaea45d6a8ce7f3d9424e9719516a85e90302047c435bb5006630640230719c49c9190af7c6a817dd2361dc5bc4e1c05854f834e39f2e29e948ae69a5baaca4286987c2d003cb59de8f86c6546402300f9f083ab10fe6d71bc0fdcb8f756ba0eb45e09c5a86ad77806597e70138eb2e636079c274453c6c11ad27ef459d1afd0302047c435bb500673065023100f02a591ea4e0125aa820529da3fee6a0ed1dca40e9aa3afbdbf27c35aaca2b4569303c018c2ba03f10fe0d7e46257c35023029e9db5e6248a6c8da09d594a9f4c66be077e15a21ed5b04eb8f55e6a921f2cf60c67ee7953d43166daba9576617acb80302047c435bb500683066023100ee37159c38414735d5c5b3da30367174c128a85eeaa44b2cd85267a1b2d8bdce8dd5cf042340eecd759ac5d7be8068fe02310084624a43c9790739853a283d5ff5a20799f9f3bb1d632cf71895eb04e4b1c1cd638ce114ab108359e79eaaa718f02d2e0302047c435bb50067306502305135c11002237594353cabcfb2a95da4342e99117e76d8d2e1764be9f65e6a4299522b3aadb91e68b271928609c9a74b023100e92d1ec5bc86a5b6f3ac88d21ea01b26e7b7aac9d048c2a77d8378f9f94b435ba682e55d9e562a26ee2c44c0715106490302047c435bb50066306402303d0b03834c8d110596f38fca287acacd6dbc1859704f25f695b55c961b629686f05d332dd1b720871595d74fe07269b5023023da11bcdd6e090d40705f6539e52f430ad1cb039ff369794d13ac7c3f10fde09509bcf99e0eaea11cdc98b27c16b3010302047c435bb5006630640230771f35119e0e9093bcc6c9d9c831c79d5307035847b6fe75d8e42b6c1c10c74e52d8c8f1f393cc4400846d2b3fd52f2202302ab19ae7047f68c863339018fd8bc9ec2a337f30a9b73448801ea6790625ca47a228f9859d5904b1c7fc7784a2de2bb40302047c435bb5006630640230673899c8a6a1f43195e06a6d494c128cd042c00056262f06ec6d240d7d1676c31187d409f111867312e56652f51700a602302503bdd20da26d68d643702c2af59a2864641eae3d1210249b53fbfc66696093d0648bda8036eaddda74f386dbb7d7130302047c435bb500673065023100d4c644f2fe8aad8cbc3bdfdd529aa2d378ceda9eec135154829493f0ac38d20109b50667c374f4d8c471a2c0395d3df8023069c8d5cdae89c74beeda22143b64c41c246fdc8cf6238aaecf7a74b1abc53dccbf19e0c756a7577fe469e90e26b1307b0302047c435bb50068306602310084c0fe3c47877f34505710a615a57097e22b642b4682afe5a72b464be1036b6c9545e4c4a570c6c13eb03f27265f534602310084715eadac5b3132ba674723f0ad67c8ba88c6ed12cf4c5ac61e46f1848f87ca15083318f1043fcbadc25639b42c2a740302047c435bb500673065023037693016e727f4f9132c7628f270e50eb90ed745bb23d24d8e3c408eea364ca573133503a426b049a1e6ef53f5b66378023100aa9287f351e68347b0cf82be2d220b9e6783f38cdff2b7b07a48f52bed3297d5a812189afd16a51a28f167e2a6f37ea40302047c435bb500673065023100821d0c00751b36ea99fed6c620ce462a45fe0144b5fc2e56b6d74316b1583471cf1eede6ab045300c4cc6aaefe69656d02307029d912103e6b1b2b519bf02c46e6fbce73d03bc5edb9590c318478322de6c60942d32646f42d40d19e002f3a8b24990302047c435bb5006730650230789a75e1e425dae40f1abd3b424be5dc3206a268d1b35244fe7e377266fbc9d9864f4595d4b2d1ed5578158aa67e8dda023100b8ae56cfd0d79d8bd0d2c7dadf1c72fc43eaafc8b05fee03f26e573d7f7d36241a357f261aed4cf658cf1e15a64b29260302047c435bb500673065023100c1aedc2ab34aedb3c572b0e338fd2086d1c2ffc2a6d595c96cc3d1c3a7509a6dad2594b28cd2528202137b23f5ed782302305ac780882d590edd89cb83f80ab9580fb9f334c76a8b4d9f3b58954b93b4a2acd022919918cc28773e9781d605c7fb0b0302047c435bb500683066023100ac06a9862d974c87d16a5f322c9981f2a9e111bc676b3ab75e7a16adeaf24f6163058c4fa2e5d3b72bba3ea506a2e1e4023100a51d6664f36731f1083105818ce63eba21ef11fd69f260803c38a768c6f71b4b5a60756a0bf63620838da2609394da3c0302047c435bb500673065023100ee6b9ac1f16f264ec9ffcf746a0b4019f0a46786a60dbecab8cbb342bf3c787d52c1d0728b9bb7420284135987036c4b02300c4985655a17e64237a5e077c87da430ce9ee3e8e38c6ed43d6bd40c9f20419794eceb140c1a4b4c36878738455ced2d0302047c435bb500663064023030179b3889e1023762f8ff95ac7fd16cfd9fa660d88427647ca264565d209fa8dac0d7ee0aacbfa472f26fdf756148e0023077f7f6dc0000b4553101486c0e84b2ee33d8af0a06ee1f0e540e20f65368f8fc90f9c9d692883b1bcb59112ce00b41990302047c435bb500673065023100d354bf9a821c40cf93ec940778f4c9b36c102d1c5f8dad0fad629a866c1687c690f959ff1678d92bd746942c1dce68110230757fe52ceeb5e33f42cf2013fc8dbc8497d77697edfe6054047d054cf95eefc2ad41eedc46dedee3ae5d001e0de20cdd0302047c435bb500673065023100cab242609fddb8beb363c5973f5b4fdda2b492b3ad39ded028305e3b27cdc3d5999c2d12710c93f5348b62b9db0f5d43023014b3e185b7ad8d467f1a3f72fc0e48d0fa92b00ab2f6fe13a1a8b4a7a0275b8a687ec3f353f6d3df0b783ce67e2015120302047c435bb5006730650230091f85b1f8136aef9d5b5d7cb4950d656b2eb12bd0c02860a416a7e270396320c26bd68d4cc34cca8a6ee6cdd67be26902310094a79c25518be4a46ed8ebc041b281ce03887962cd6f701ddac468f1b4cb4930db538e7ec50e754f44de973cc38078380302047c435bb50067306502310080c90f85a635ae998f182a6a0bb1ab3f82f84ba7f44281e5bd0ab984523071a60e4a7e436ba34fc974188679b527303b02302855be39965f19cecde328d87a1ea032698b8c317d06cc17cfddb312439dc999eb06a1ca7eb09572789327f677aac0b30302047c435bb500673065023046577a19d2a1776eba9b14043b787fb2a7aa2a9da3464f8d6b943aa19a90ea196c8bcb97c59aceef3b5898636bc1277d023100d63f2d0830146d8c737440462153bb5812e03c7f762f268f9bbae89acf2c70cae8908d700dbfae8f28150535a48879390302047c435bb500673065023100e687705111cdae0d490e4094080061bf175366db3684fb316286a52a6766e9fd19cc7d33f0743498c0b64fb20d685956023025f2c29d681e37495ffc0024750d3bff977c859b66e8604388a24954c8415ed767d1d630b59e087ca4ce611928297da20302047c435bb500673065023100d3074195719745de8b793d132e2fcf6bbb331c2d8149ea3a138c778c09304ca955439468abfdab45053866ad7e919e24023005a64eff7ebdacd49614bc668d43b6caf2bcfbd5980e0046e0eecf20bc621f8e3af61be5837c0a90f61c638cd40911a00302047c435bb500673065023100a72c6112988c0b40cafb87cf76851593f9c24c0e4fac892e17146c87a09a0d30c56dc1c93b76a5fb1f78d3268ba7f6bb02300def2390e5b55d3ea10787dad35f9ff22a21926e150f5ffc80658a0108d9b573d50597ad5745f4430a5e955cf49e02050302047c435bb500673065023100c24acfae8210e0e17b30c82fc6e78406ed76207f46d14e0cbeeadd28e1adacf297c6ca286c0558acb5ca70d16f905ae2023012fa9be6a3790c48d1e366a16a54cc445b479885d3ef25bc5f721a3f6c9e00dcc5188a4b0e75b15314484230ef264fc40302047c435bb5006730650231008bad5115da82ce76375c7159e4baeff6593b52e3d9ab7ac52ae7d7681ff51fda86505f5936e1cccd5ab565f2c5abbdb30230147f757789762b7ce06ce8d83d77619c8899d1afc00f4b2d3c50d0f9387a0ff6aa9a60c340205662237a9a634b72d02a0302047c435bb500683066023100be3e72739fc32668c2eff8a35ba854668fd7095c3e09f62a6ab77ae8de92e5a11fc08b476c54af0864f9ff819c2c21290231008e1ad9785a4f75f2ddb5f88bffea16b205e2ab6a707d864a96202871fea106347a0557593639fbdbf1851c57f63c153d0302047c435bb500683066023100c30f9765aa80662f672edbbd5fd12fc097eb35575eb65e07f80c0be87b9e387d0a3b0d3981b5f3afa598b0236128966f023100dab1521fe7eb05be9c9d258f981503dda6e387d1a0aa7f9f9a994e2df5259eb7f9c71723f78e1135b9217863e9d7df5b0302047c435bb500673065023100adbd9f12058c72dcc4743e0b447283787c3320290209d96a4770691e82454a31fd99b6a273d8d0e8d0470c7c2e5f9248023056209a81919299b0ed65c5dc66e466beda55f9d0160cb10e35b670c94f32f5b783126d4542974379c6aa5c778d959b460302047c435bb50067306502305f7611f7158a2a01bd7c750dc6a03908d59f0eb4e6a515fe03d93c11ddff7a7236c1a7ad9c16ea2fa44eca1f0bbeb65c0231009574fd03cb4274e4a5b32e920dc8d6b38d284fcb59c176145aa3c272f35677fad11b67a37930bfbab5ae987cdb1ba18e0302047c435bb50067306502307fb18a0bd359ce97f2ae8a5a580c88b3171ea6ef28a11ed32800937824a1e7a479068b2ccdf0826be6a5bf25c4b75e6b023100f4f57ad508745e36435d5fc59b73c251717dc4cb515a3c28fa24989e0b582a77c41368c8f85f854cdcf19fcad2d747420302047c435bb500673065023100e2290e4b6036c5964a29349ac7a82eb8ba82835e3cda95d828d63b4a542ab685d710368ee93389eef24095e27f743e9602301dd1afd0939847a1df792b9b46c59ee145080f25b34d67bd8374514f219d565a9f600ba33bbb3fbbac7f9bc901ddcfb90302047c435bb500673065023100871aaa076a81a10d8f1ddb8c2251bb276f5694f49b327e8b3eda1975ab6724488cc2ce52ebbb883de32a75baa59d548002306d9803a1d927376d7029aa248d14405ac36701b3e5dafb2568c64542224b37d127e1dc8fafd5488124aa8451d256116c0302047c435bb500683066023100b3f10137c33299ddeee7327c7df53f96b549a0678f966a3ac3101bbf1d33ec0e34601f2d0889c143d8e0f1ba08cc1b75023100e0ea5f6820b5d4e847cfacd000e1cb1ce31bb166d3a9d96506ea6c25111ee864f46f440f70d314ab1387b78f374149510302047c435bb5006630640230203a2669f5a81445649818d905a126b6aedf2c02e48e9d116d71192840ad7f8254a15aa5579c631f420871e600aec28302302f30d0dab4e1b18144a336b44970cde96725123e2c11065a14e4f9e7082adcb6807c05340974d192bbc2d6d62935668a0302047c435bb500683066023100b917ab2b6ab2d525d20ea04449141b3254d67eae30862ec77f1a8be919752fd7cc7335fcf0fca034152be19d00faf83f0231009852489d8b565f071da89ee53a76cb44196b02b2f8b137acbfec507c752529c46738393b3103929bf0e6a4095c3f9f6b0302047c435bb500683066023100f5823a0f241615d1543c123ccbcd158e739be4e1ecc765821f2571627e11b8e3342a6ffcfc000823100392febfdc3ccb02310088b8fe755b87ad7752c42e140af8f14797f4945aef274f4d28c9c9c918359b50784670ebfae90444286aba91d54c8f070302047c435bb5006630640230223e4c8f2fb61e540961fe12888b730f4421d43413af847657712076e026b198a6edac5ea3798d57167a7d487f46fcf202307974431db9eaf386a0e7db0ea25f65d90d019a8e99d7d26cba5729da91b6f13efd4c80ea32353420f167ff1b07f0774a0302047c435bb500673065023100dc152f15a509cb5ca0f9261d22d9f5ca2f0ad8b872101e5c336203f9103acde71b8d01be050879cbeb5924f28340a06e023043323cf2b8e5b3b9f954ae9fb3a5b18cf0e9b4a1274d4eab82b3189ede70c76ebd5fd00ba6d5dd907d72ad92fda3bd2b0302047c435bb500663064023048bf9afcbadef0db18f9fb7aae22f3898d0b912f127904b5a9c9f6f691640c0fbf59bc7453ccad5fe6e9e96d60ac0c7102307a2fd36c606ca1912a1851d900cf6f88538424fefd7997a9de9f22219425a84bec2725e58dc0530831a4fd0964c8c34d0302047c435bb500673065023100c2c72ae02cba91256cbce9539249e4ff7ac468102e164f1d9ad79803d5e14951821eaae20eb255dfde9e766fe35920c2023020623d6f82319778c96e2639abfa4681f5144ee03d74d7991b0ccf3f13f105e02130cb9f398ca368b6439dd052b46a390302047c435bb50068306602310090b072c4856ae35f0abf7277b5426801ac28ba8dc46662dec816fc74e680cf5e87875cf77eddee6fbecfe02976d052eb02310095d5806359b99bcb5e76d3362507687943ce2a01f1c3c43297fe996a430d378f546961cf6fe13a9cd3ab1f861adcd50f0302047c435bb50068306602310099a4c111ea763e505b447d112d66de94cd258c67d17098065fd3c753a3fe56f9ad3ab5c949bb2164d4a71fd6b3e9a686023100e782fc3aad776ffcdb8d3f64bf844f7390a9293c00d6ece0e69db4a1de759bfd4b826a83be36e64f446fd5e218464e360302047c435bb50068306602310089f64ee1ccf4d3f4f46dbe140d6523bb1f88f68feaafd64411d06caaedd02a44f973c2d6d3f3a52481dca91eb7c24bcc023100984752e4d39369ffc0d7c38250115391ca815a761bf4a524352fe0d3a55d06b38794b20d97558527c3f366c6434050410302047c435bb500683066023100f68d75abba2bccb13f1f679000a53f6ce6733360f40ecfa6e1c9dd6084897144ede8c91380a83042fe0e1076ae1bc8eb023100e5c212fbaece2611f1a3b1f37bdf3a94c9b3cbf0b8cc817c8ec7a7e5702998b9361d3d36fb78dce07c2bfaf3e2f2b8e10302047c435bb500683066023100eeadd9c5ddf87504161c56b16f0b22a1ecbc0b311106f74a6f33d19162fb9a4545ad9a06e32418675cd5c4a82b081b8f023100d7b42ef729bcd4bf7d66d120eb90fa98f205e48a20958177878c9f2404ee921e61d7d312ff9df02725427ae75c07b4fd0302047c435bb50066306402307ea487c1be1152e5889db2b08dd65d8419ff942a08bd232b66fae759f206b7d3af113a999f86ad3fbe779443e446f37502303af426b20a80ab55c8c8d9fcff11e29e097dbe2304049c00e4d40bdc191df82dc66147cf84b654bd160b37254366cf6c0302047c435bb500683066023100ea9cd1ce934c2548fd569663ee84b1d6d96b985e24faaa690f0e530fa71e515b6717eb51d5ac231eb0e52de2366ff9ea023100db0bdd4fcb189d9c45e85dd01840c4b9f662fdbead4eaa08ba40099d90db810e4926da826768218949f6ddfa3472b0c60302047c435bb50067306502310094a23c1f706303ba07c7508242b6bca1e772149b493b65fed6f89f30beb6eba450b63a3a78203805a8e9c19320adcb1e023043f8bb271aee789d64d65f9e014c1b5e71d7e46273af74eda2c727600613e0ae73d6bd6273590b220201adb9494d7a060302047c435bb500683066023100b42ce55d84b2171b14c34f6ac9a2742ffc173547b71d6f61b012111c75b3665e76e9474b3708e357646f9e7db6f6f5e8023100890407497cbe3ff7d9b00d139c988c864f11769509d38a8dbe5da8b1a7ef641c7f0c754d08edc030441277dceaca9dfd0302047c435bb500673065023100a35101e43e2e8aeb8b0c3d071153ddfdfb3e10115014f4d08ac7d2bf35d08d7359ce8486c76366ca3c4b2701b7fdf6a002304497559038631ce3e34abbbcbe0d11af6681f42c022ffda0ea2261a0b1e26eb646949760c31aabee6a86783588e28fd70302047c435bb500673065023100ff9ab9f4d905e4981ab98ada7adcb91b33542560fc6718bbdb555c9a61d5e821937136c9706443c4b8f4f7a11ab593290230136a213674e9e1920979eb0e5b51c30d38395b2b8b38e574611b3ee95de1c5e3a67501b8a489a977c56da6aadf97290f0302047c435bb500673065023100f108ff111b27c747288588a59914a7e49190bef8dcb695a19d983f6a2f73e69b66b7967ee2cebed28c75ea3fb9acda3002307945336ef5ef6a995475cf28f6d14108e2b88109037a6209afcc1c2b133049d481bae16928967e2a860a2293a2564c3b0302047c435bb500683066023100fc3ee4b7b48b1d713dedf0e21a57742e92a6a871f18c14cca2a6c7b39dc08316cd1262dfc0e91d806e413ddfa702f774023100d0afda28d3983a10fe7ac13cc19c74b30c8ca728eaa7f70b348e947c37495986a6c3778eb9bd3a6b6d86c0e97f5448160302047c435bb500673065023100d11974fed654725681a87e5427664fe60a99cb96bb504da46bf4e60aa59d1e5ca1d42b9b941c4e5962a14cdbc5384a7b023019f956617492d37848a9672772ae896c74fe314f29db4aff619262824eea80ddb70dfb769511c731f25860e7c0d4a1af0302047c435bb5006730650230136cb1128e558bd00c92a06cd395d15f88538ef4f3784178cd085022894c1e23dcff22474028e7350b29b70289eacc4d023100f8081e0a48d54a7b3149e0dda2a00478182c0d900d57f4c1a39a47267eb4f193ac41147afe63320c3c9b5aef716d84a70302047c435bb500663064023047787889e48fe806ae7d409648d8e400f5d7db8adddf894d39132cb493f63bd75523c00f408fe31e83d8937367fcf4930230293d34b7e7eb7328a93b17450c64746d59d7efdd5887ba2d41fc515d85788dfa9376235fac68da4635d8dd8454f7bddd0302047c435bb500683066023100ba9227fd281601291057b20e42b22d5e85d029899800a1b5042ed1bd9a63df0554ddb0ac66261b2d21de13e255d32320023100c30255d65b752601bfc5498a407ed72b6901165c726bee5e6834017c02dab5358ee18bfef8d1f14e57f43e7a0841d3940302047c435bb500663064023002c0c4b157a46d264898ce918525af63b657426a20330c61e783557f64293642df1abc8c266a3801dc6f590edd02253402306e284618189826882a281ad8e2656208a66d56b1948a02be6c2bfb0cbf06c9b5a6795641ce02a39fdd4c792dac4a0c570302047c435bb50067306502310090b040e0812e7ce53d0cae0e3c259dda2ec86a9770e74f529e07bedb459bac3ab44367d295408c4290167a7e52957054023028f951615512e55f1334fa5c75dfac74370f02e660b20cc33eb05c48531fe1045c97b11110317803b8a267b01efc8c610302047c435bb5006730650230339cd83e5320b4ecac2dd10d8a48170e1b71f2219dfc53c98a5e3a9eda3bda465e768d463b3b8dbc9c30ceecd303c470023100a56c8ca1aff61dc4d25c6d8d4b2e8d60aa30097d8936d4cee443e93540c37ef07bc06f6a18c796072c233872a8e5805c0302047c435bb500673065023040954cf5b84a4b5d823e09e234d57abc9faf92f0bb10287d01b6fa009b31278e21a61be4ea34d6c4ba17bfccf3c5e24c023100a8c5467c12b375cccdb1160d7d27e218610019d0508725dd1d32be06a84156b47cc336422fd52bd0a6d0bb8b0b9e8f860302047c435bb500683066023100cfe89141085e07d213b1b69a59d1eab85ffc52087bef63cc5e01db2ff782c2df103426deed1300200e2c69ad19b61809023100fe12381d1e65d3686c5e0093ab4442576b883ce8f663760341dd537a99fd0f53aebffd3cb571fe65d0d2e0b57cfb952a0302047c435bb500683066023100aa959bd74a33bdf10420dcfce04d0d1a5e373d0b86a64a8eb42127f632b5337764f4880e9d616ed5db523e77d81984cb02310080145fa4953ebf2ea3dfc5519507b6a36afaeeab50929d68a961ae307af495346b79486e6c384dbd3c4fceb852f8a9540302047c435bb500673065023100e8d6a4392d691f6af480cdf59871cdb30b898a39565aba28ec880ee21ba51c2d99f8025f8176c699c6a0e02b1a9a008402305f8fe4204c77f48e16316d84db7083270ee7a0b77b92621ef9dfe2c565fb203b4e86b4a26bfff4ad869f40a0d47ab1de0302047c435bb500683066023100c2addbe581da2bb3d4b2a4319b7af66e32d8ef994bc66bad15383d0cf5a34e6937ae522f66d5e4ac0c047e336be4895d023100e0e39f3a4e4e01b71fd3f4ca677ebe2d66a1c58d2042eba2a677ec1eb41ffe8385f9686fadfca8f03242baea1ca55b140302047c435bb500673065023100dbb0cd505c7530ad140625c771957313796a64b4703ac953ea7d09599301db18aa847b1fab2120e31d12ea75efe828460230374b4fceebdd42f6058106b805bf876548e3a004e8fbbcb3747920375508fa16d5322938b942a060911affdbe536597e0302047c435bb5006630640230216f03f3133ea94d850fa41882bf19d530767454d8c18c5b73666187b735e237cd27473549bfb9af46a17a8bf05e5829023014d6154a8845e365bf91e9a4972e8b40f2b81a0dbd3ec75e615eecb88e34976b8c88f1d26cf2eb8737d3476e788f2bb20302047c435bb500663064023076e5371fb21393fd5dceb0cbf906e6bd461f9451767624b2dfcc7dc0d6622cad5eb30b3df14465cabc3ba76872579c1802305f90a0b746ba48c60f06fb9bad9ba3998a685c40292692e810b07a14328afbb52b195347839195a6e160386d634e75cf0302047c435bb50066306402301a666bc822f1628a48758da732335f83b1b541ead5e6f3e5785c8e4dc199abc6ae7888783ede788b83c019835dd986a9023078ccbc7c6d8575a6d3045c3b386417f57f1d52c26d19e0f24170c8424d1d49c2b60f8babe23a00ea372c2c152db1b7120302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e9af7a235579101dfa2701b9b1b0ee2fd831c8b930c48ace76662bd4d067d115422c07e2c26b640f2033eb28958ff456023022eaf130bc1caeebebffe31239d5a854f23fbc0894e12152398e0b023c6290d7de2c6274ae1c15f3e0376dca4d61df5a0302047c435bb500673065023002e9eec3880bb7cc40c04e36d5e8abcb79b73701e95d6310800eab7cc87f82569dbbf753cac9ede2177b8696118d4a00023100a635ef0709385977ee3a6def9d4d248fc1e94c48031d47ae80f22b65986a8a1e5d8152a7c7988afff3de467c64f633cb0302047c435bb50066306402306049f0e35476d2df698d50a1f7c780bc3f08e9c351db2a3da5bb55480593ba33d23a0ef02415f58dc37b2ef09f1ccbca02307df7a10c6bcfa057adafc93cd1d7b5530575e1a072fe04437a5a624d98ba09fd7121d8a550703934dfc0d7a2c3f0b59d0302047c435bb50066306402304fec5e2d6f4b4fb2f3a51e58ae2af120a2b008c135959e7bdcf0e5f1eb75f1157a7742c9e250a09ed37c31d71ffdf3f802306fa1d508bdb6bc668b91d9a9caece93479495a02efba2b6628b51b7412c3975b250c122261dfc3e1347e7b229a94b49d0302047c435bb5006730650230513d8e2848064f6859cd3c41353b50c7ee87e6d7511f8ab894151fdbea8e4061dd15dc3ab93b0f4a032a5c24eb587649023100c4bed44948b0e3749d7c0074678884260c81f3da691a90dedeb7c45c6f000061f4dd434dfdbf97dd0f51c032eac271350302047c435bb500673065023100fa4fefae1f05a2f06b8d7a2ce4b3285e137b17fb99a9d554d7bb1d12244ecf4bef580a53db643f2cca133ccacf8820b90230659acb8fd52a88c1d5e05432450c8c1102b3307e2613eb7e5fa8a5a1d7a17dc88b7bc721b9e782f79cf130266977f51a0302047c435bb5006730650230510010e0a3c633bb5e7736d2fa65b3ee1dda0c48fdea1de72ab8ec251faf4395ce10f3f448278a987668828c0880993e02310090badcf11fa1509259efeeb1ca8f731d7282786f1d418be783283839f7728bce18a1cb93a91e01236fb86439e97cce670302047c435bb50067306502310089c7e62936cf900e788bfebd1bcdfdcb5f56e49f0c1f58ce8bfdaa12b0b19a2fbe3a334da747eab4f6c9bfe0890fc09e02303c35c9adcfd0f0edd52fee0a70cb31d2c4eeaaa2a1ac20c84ed5a7e87e57bc3a293671700269bc21ce5f787abae525d80302047c435bb500673065023100f093c9d0908456cb307541a29d3001c262700a8f15c010415e7bdc9b4af709c063ccc5c54d7036c33a636f6da6886bba023078d2a753cdf1aa7c0848b98bc4ddcd187e2d866f98c53f4e99d489700a2f1ac0930c8d3ba9affb8ca300493e4856f1de0302047c435bb50067306502306e39359409b019b5ecb5121b1d38cd7b18c75ea3f1e56c15dcc352dd65e9917781603fbcd27aad15f37d6e3d8aa69af902310094b22c440cd08cdfcd0d3bb33727025be979ea4eedbf293820779ebf40492241ecbd873a8221bb81caf0a3b10d36d6b70302047c435bb500683066023100832e8784d39cf72ae283e501f4449096848cbc7db50a5ca79898f7ffc3a34a70f6873d0e78233e936355e625b91eca8a023100f5f4560814caf5c652d0a6818af56d093c9ce5983fd36c7cb06925b4ec6f0d51ce135d6bc873c182c14f4295d4a5a1fc0302047c435bb50067306502310095410524604dcb8ab64bd5f5693118e2ce0119f6b91f562145c7e335069ada1d0a35766809b54a6ca137c1c0f93ca65e02302f7809e0a63a3a3bda8089b1768a8de76aa7a4633b5700751bc4d913000b8c99d3bd962ab757054e51f0351e2e90359f0302047c435bb500673065023100f362899abc1723a5cba1da4fd2b79e7f3ed4250ad6d872401da3304d23d7d505e5a94a8d14b51ce1266d53f14651b24c023009d8e764e9b05dfc6db62ac8c1d523e905e6d728d25505fc06d6991190c63840ab7438118df3d25a4254110933e292d30302047c435bb500673065023100fd7a5fa11d137424dc36685544a819eba7dbc65d1eca4c2b565228c8bea4e54b5d25db4c5c4c061609a23e054829ed6402300117157287856366f0ef3765eddd74c1a6166385f6197287b4cd42b4e1e4c2aca6c7e6cf1faa3ff945a73f1f6f1427c20302047c435bb500683066023100c00d72a22a948b70138154029dc3976fabf79108c67d0d754a7b1f36ae3e66eca6af2140b50daecd3078d36e57e0be590231008e918a1a4ad8613160605c76e8cff51b77725cc66fafad6441420256777c2f0a852575294b87a0aeaccf064ffe809b890302047c435bb500683066023100caf159219dc0b9acd6165e30fc3bf81d6e45e1353aacbe32bcd78981ad627b253ab2d38fef7fd7d617f70dbfbd54d0c5023100c46b9fa51941b847b969cb3405ed214503321ccc6874b3efbe73bbbd9a23cf36681e5c1cac959e79b064ef4e4d16453b0302047c435bb500663064023023760720aac6000a499b2aa0582a25d882dd8a0d1ae3e4442824330f05c64648f34d5c7907912487576159e981d7eb21023048d3983172f4343686bd39e2a3fa62a374b54553040dec76b58639842a56993c1cf87372b79fe5501bebaebcb5e56e4c0302047c435bb50066306402307d0e88b5b4951579b61c7bade4c4072bb466d26b6f90b2b7e16fbefb37c60026ebfb06daf412d7764644560481be17df02304406c634beaecce849ddffbf934f81a6de8855479735426704cf3d46ab16a41ef4817abf6905955d5b18c8ba43daa71a0302047c435bb50066306402306a4151df3a36227311ac05942db2529609378f6341d4882a3282a4267e87f2b0f98e87685fc04b36cc4a60c1b69ab39a02301b50303f1e17a44c73b1c3055deb93f8cca7a6d540bfb8d99fda2569b4623f0275f388dad6c2a9084782a6eab74589480302047c435bb50066306402303eb9a12cd2c014873e5f6a68df7bd0941b216f3134ebced466c4716d50f3e161867a85e9df8dbd9a3f713aef4600e450023039366c5a1ada4f1a1d4007c4ad197c9d1e5dfdd71dfcb47e19d6f7db3956012a62eb5e913ff433c03339de2aa1da93c70302047c435bb500683066023100f3e8b2dfd5713f63ed23bc3994585c56d3bf1fae2aba475a39d24f5db6951469695352eabaefc970221f44ab16e2545d023100c75a9cd296e318ddc68a8cdb7e971e7de39837136c5f766bac010ae2b69075cd371011f8ac6ad93bbfc48ee97e47b5160302047c435bb50066306402302d4e449cb26cae011ccfaa6a921a550cefd3581cfb30139e09176bfcf1388377edf794f577d1bdce0867e0a8093ae67702306996c5caacfc8547b63c54b04c9b33985b5007e8bcddd14da82996d77d2ed5cc65d822dae9d7356f292588fcd214e8b90302047c435bb50067306502301e6d932559dea98ba23abe8d29812176fa21c6ed1728345ab7038d4aad241817bb2cd152a540625448f211de38fabafb023100efcbc93518245ac647610f1af1e082628443be82192a30564fc88f1f19355e921a8b454f75971de400f024b760fd56dc0302047c435bb500673065023100a960359b0586501f1f6a62a4b14b9e99e9dd48616e3f71ad36866bef59efddbc9ebf7028fe8aebb7394fe96b46aa21c502307ac4a1e52380d0f6248497c015264a932de15c2c4cb13ffb07bc4cd2b5fca34f0f19b0abd905609153f7164840a0466b0302047c435bb5006830660231008bc946c1afe4c4636e78299eff769903ba763162a0698035543c981d13e43bf2d5bfc565bf65a95d9da4cd19ec18515c0231009e783a3acb8ac8fc9faabad4af23ad3b632402185f1ab21ff34c1292c22ff7a5a59fdba2e82883bcd2dfb318bf44cf900302047c435bb50067306502301b866c63993a1638ea25685f38aa8cab745928075687218ccfe6885c9775a8881eab9d94e231695dea96bb50dab43d20023100a413234dc707ddd11975bbcaa199772c06a999fa09afb808f6942d12866fcf0b1a37a6ad1fd71d1fc9589aaad6f41fd20302047c435bb50067306502306d948167d09250acdbd7ed8b65669cc38c6a5815f8e04dfc6909cd461216080ae9549540bee4d1456b6aefe614dce958023100da686a7ee902b24f99063c4228cc7c8a340a96b229a6ed0307c7bd68305e7a7e56eba78bd058921b62b13b49a84abbf00302047c435bb500673065023100da7663a2c77c0c141bc08288a931fc2beb3a411a46f02615a575ae31146e7e4438a9cd14bd6322f15a6abf880bf3a717023023506f44160cc32e943e08ee576d76d36ce1f1d7a89addebea97048cf9f7471d5e08ee78ac7680a7680522f3225304710302047c435bb5006730650231008e144824415f8636624e9f5bf9109a95610f32e5b92f62ae5134b8e55fc0425b9f62c126b9c3d5a232c4948dc21a181b02303ddf19a4088f116fbe4337bb796a91019539802f1d54378b1550b4e05098480d63d3f8895171ee9272d90870dd543cd80302047c435bb5006630640230602cc020eb7f45fa0616ec505014439e2b6c559ec4be7800045356fd8220325136bc702a3f0da92761b18eaec0b5ccda02301eb358ab1c95ed8aef451284652464ee18195518ae179fd7ac22a8bec1f0f27d07debd6bf7e16f8b57f98fb5853d9dc10302047c435bb500673065023100b74bba838edb6b8b079f21a19447f2a18bffc943ff37df5fbbb0f4941d3c9540a20f3494772a496ce2bc5d6bf460d11902306a167c8de73d7ffcc78f976b97a37235f33ff9ac60ccbf9c66a55d6a68003e6ea2d10241db7ccfd73e1d8c271827426b0302047c435bb500673065023100e4c2dfae45c78c0c92185eb070ff385877e03cfb2f023482c4b498bcd3255c352a8b61a745c919d4c9bbf5fa42f9d2de0230761cfe1abaced38de95da479ad55e7b3e7c05874504e9ec76c37b04e2a76e123aab4a3ab7bb17fc7a157b83ea16669330302047c435bb500673065023100d5608d7786c3683d2cee92c2b7998029698787387ba845a39b5f5dbecdf4bd0c7aa55f8e3f6f9d6ef59395b1b035433e0230702d1d2ce109c14d1367575bdf9cdc6d4a8ecb3d4c1e4dc0dd46c0f43d45dc7f1de8debf7a0fc50dd49e77593bb543440302047c435bb50067306502301c86ab5033eb7c0288258f1c108506adae21064db08a348e3bff88f303c784ce89120d631714528ef6e66a0a2f30c5fe023100ed4991d3407dadf4ee074462007e98b0d1bcd1264552190bdb3d0abe9579d93dacbc06c22771db186f136dc778c7b9b20302047c435bb50067306502307858df55771f51fdd8d1a86ee0c6a2dced4e6ab4e99e48a7991e88e3118113a77ae133954dbfbe4772086ad132223489023100f3e41dc5c1f9781f53f93db36dda7de3e7fca1d1527f015611ea36d895b7f9316ecdb948d7e8908810abca3cc4e8d9b40302047c435bb500673065023100dae0b9b15f8ec7cbaf6f5749f6079f29a66314c609ae05e0abfcdb53db4c01756b1b90925478b17507b405f6fe82ddd00230524837aae8cadfc466e6a6e54c11f68abac908743a4e426340ea2ec5c9499ab23132b2f36977cc3735bcbd4ea8f87f290302047c435bb50066306402303b955a5d1f2be5aa1130fe75d4862f35471e1bdbb569c80a472af1ebf74171abbd41a0e3b08146ec3ef08425ba1d53f002307742f4eefdf008f57dc7caa361ee382e2a6152e6a87d21fcd067b38363418017d725b3fa4356b391086df912ce1c22ef0302047c435bb50067306502300b721b4d7d85df1900ca62300c3a70f3ad4e71aff08ad3c91c71d29f796de6ecf8f577ff11f4912dff0253dac3607760023100c2abe803283b3796251770fd526a20a035e277d2170e47e7434c0936cf0a7ca6b0bf3c409c87c054d8ea07a504d58b350302047c435bb50066306402307e65dcb8db2592c7e53d4be79fa9bf48e9d3cc74d616f0726aef9bffb9d5e2a625b62f4e4fe72ebe1358ab922a70c8680230648c51a6ebd84535ff87933b47b1ce1e12f11bf3974a289ffda6fb1e072b6f0fc2124e8c3a24470058bfe8eff2d528460302047c435bb500683066023100d65e9cf20133d7b5b4c31f565da158055728ddf80779bb1a194ab673361fa91a79d4e074ffa96a024fca69169ec51655023100fa5bb4ee06f73e7f7f6c19e31a39ad054a262dea48ffe6bde8abb9eab3d482d9595ef31a55646a9dde22988dcf34c5630302047c435bb5006630640230106f055c71753746aab03347af4c898b29c8a03bc92379f675e11944ff3d9a6b2f352d772a51efcbe4f26ebaa553de980230296e407c5a543cf6b651ecfa774033a34fe0a2b7d7ccab7cb19d39430a8ece2acf40191f058aa93d932583e5c64f7d100302047c435bb500663064023001e58620b80af517cc224af1fd65b8812748be8151f1e309e7446bd5551b4d500812865ea81f28db42b3b96cdbf04bf8023050cd4d205055e1aedb9d44d7440b721a980b76544669346c43f156d118b1c3b71c4dd0948fc79e572ad42681bdbd65440302047c435bb5006630640230047c4c09093625ce045b39ee1fdb15d05ee6d59ebbc891d542c78504b5880b97f933266c9655c6bb4bcbb96d15c38c88023018abf08976e316bbeb06dbb830597b554a9768d3e8cb3c5327be55a6b2bbdff58e3166f148bb8cd2132baa5b30be3a250302047c435bb50066306402302498cdcb457bf025e1e5d0e1b788e6d997541e39c37395ba82c7ff7dd244a900cbaf8b0abe9fec19c4157dce79cabbb50230605e0ef1b89647304825d0b6e973b0b5b5244afe101800241127632235b1ea317dce40987d805a65c18640c0c3097a270302047c435bb50067306502300b1b61c852310028edb514d0d478ed681f7c9beec88ff64ec3fcb7da14487cb79ef33fa7c16b34dfc66cddc8b0314684023100cbf824f9bd948e701cba0d655dce9bc74f1005826a53de5deb73616028e5db5961623f7aac0d4fdb6feb3ccd7e4e70df0302047c435bb50066306402301930e0912818672cdd8d2172f636f18ee2127750b77aab854dbb458b96b26f18c9d1b8b79df39b0ddfe729b0c4b0e9f9023020fdfc5107b8572675a2fa7c83b3991744ff3d01669e0df06e222f7dc054861f27971d209faf89845fa77ee6782cd4d10302047c435bb5006830660231008f33fdc8fc9918c008f4b62c078e527eb4c30ef585ab5eabdb76fed279efc3b09cc8046b18386b6ba8a6efedc502bfd1023100baa315e979038dd13d611e2fb39a425c1a7636fd48ba16587524d42ca50d5878bf464b4506f8a3b6bd79915c4635f1a80302047c435bb500673065023064fa50dbc13a24fa35b7b92efc8416765121c99a9c62bc07b8227bdcf38a503e95fb971bf02bb6aa5643e4bd87b612dc02310094d3db9baeba8a32798977de165c04b0b7fbd7e30ed3686fe543cb88ceb724790ae2ddf8d748d2365fa7d70f7569c5eb0302047c435bb500683066023100d9fe28170c48977c7ffa63a7b5cbb7224151849a3787a34c2572cbad3e61ce6c008a216d0e8d7a4b454598459cb7bc03023100ccf12caab2a9967c1d176b005f791cb4a825d35a4170d1cd2a2894156604132b45b1be8264a7418bd3a187137dca193c0302047c435bb500683066023100a5de4e27169478256a87f74fa39a2b81db8058dd556e8d2b5d95d13332298d20b3d23e0f987a5c73d9668802ac3cec1102310085c04fe806bc7b4441842a14fb902087341be24954a27ca0fd2b5bdc1d003fc22bde52b0cfcc43dcfad29a19ea3f89ab0302047c435bb500673065023072d03ec16b0a83cf3d5bdae42c1d9d2fda912a7436eacfb8df44f3ba0464036d0be328c7c8f0bb1b3b30ab7a578ad41b0231008c46c27381b55082be154809ffa1a73bbc38597520e071d3835c0d8c70f606c9fdd1f4b45827f863f20a2d629aa237970302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306456fa5aa990c2038e10c0c57de84987260fbc742612958bf2660a323965af88c536a05695ef2120761e1ed32ca6e8eb023005076fcc03b4533be01822c9603fc64e765826f5f261a0b0cf3d4cf71dffa95ed4727538f44a3bc54159cc8bc9baba1c0302047c435bb500683066023100d9c93e81b6e02659271a669d48fbd0d3941a532e7a13b39e9e88c6fb14e7aa40be0341edc9c06c98d7cf75cf441aa300023100a5e1749cba6f1432789261d10894db4534eee3e27a8f1fe319f72b7ad4b8a806361924f8092ca2dd8ad9d27e2f3139930302047c435bb50068306602310086906b1613bc27ba73f18df415243dc258c36472f5277841d0e03ecb06555ee392eb9694e07b9a6cf90774ed7b4bdf87023100a676deca7c1ba7fd8d4132daea1e0235dbe9492e6859fd2b06c6427a41b94e3462e081539996db16730032c928f526a00302047c435bb500683066023100bb9c925624041be664882ad73ad35537e23ff806faeef9abe5006df022d790da24e43937f9d0af2de7504dadc98851b9023100da6c2e8bc6d4e47af3eec104a170c815238a56fa3f9ed9e37ae5562428fa5c55046a0341c1bf76fb9f6f1fb524757cbc0302047c435bb5006730650230209dfd480fa56f57a5756ee110707b92cb30ab410b05d5ac6798b51be5414be80092e7f88694bd6de51057431926f585023100ed46cea33b20ec9201da3ae6193e1b5900b805e4c1b47ace8a19ad2ebbc3d1191f854568c0e48e0b2391fe3cadaffe330302047c435bb500663064023017a14dbed9a1c1a1f8fb5443b579aadc6765544b7692b2675c99d37e1446ad5c75ef8f09f8f5b481b56cf5b155e7cee50230378c51243a353f9a350b6e316049a73dbdf35db6ac870afd55d88135eeb6dca9776b963ee08fd2da74bf5088c2d4e4440302047c435bb500673065023035fa09f1542f06ecfd04ab85f99ad72dadde66d44bf51d20a75c5a36d475cd4eafa04804b54604cd74c69ed7a4994715023100d5d3eb8227fadd891048e819bc312af096f89bea30df2e0a138453a31ea23de03a754b668ca1be365a32fcb1f360e5930302047c435bb50068306602310094d8d053a17ad64a96797f812a545d9a9f130440188f67f2dc4486c8c3c0ef792519192eb560610479bd311c78142ce2023100e6d6cb7d98fc94d71bb6b22f3d781468822c0c64f49b9152d2cead2cadad5128490d58e6e7c45c8aab2b2eee3ea4f9e00302047c435bb500683066023100fa760c1ee56d1cd3e86a63c1324a1ee079d4504405acf3a0f6c427be86a0ce6bafdf3e8da9b45b60f52e0fcb8edeb4ec0231008d881a8a1e6a6ca1d174f5d15d9937e1889eb183cc905bbe852936e9a4914c1398b5c01c640731cbd47489b1ea1217f40302047c435bb50067306502307eee0a6970dff4e04775534ba4173626ee7b1d2a1c4a2f17d2f5cbb7117d2f3558a8386edc6b1fae034a9a695a5ab63f023100a365f799db1f06d3ec102c5d14ea028de774cd982b44ce5d110c3cb0ee6ffb505fc7a76d4b1348d2c05e06c5e6d5c7b60302047c435bb500663064023038e0461ce2de7909d329cd5b59d3e0dcc3bf398f9c8ce85f5c298d17a726375688e0916576c03434969cbd8b78be9fef0230549423a830bb24dde31aa93b9ef8da21d0c5eb7619fe0c8057c612f837b9461889df49f5446364f14376d2e21e203dda0302047c435bb500683066023100c9da20c4936a78beb70b0e8c531cac7cebee88cc68a9587564185d8762349a774cca5c103725794583c016886f7d455e023100ce1b011976ee33775f0a0f821efc94b44080b615dcc92f53a1e81cf749ce07b93d1dd4aa417f8bc1dcf62fb8fe1d496c0302047c435bb500683066023100e586e64b2355cb21cfbea3e167947f7204427de3d194ab4254880be303a976e857aa699df202386211bcea618e4c4c6e023100a6390e5e2f0b35b3745880f979f577a25c618eb20eb0e3793d7f8c80c88b6d4b1997a0d0b2bf0da435e35f85b2d783e20302047c435bb500683066023100ca5c57ddc3c9834207822adc24a20e277c0a2754f7e537bd3ce7381d42ded4a9f5385581cf99a9d8cc3c7761d50a095602310088ca408924fd36941aaeef05bce3f10c379dc9c84964db4c602b4a298d999d6a14c0b1f6ba3d4beca1c840f904cdd31b0302047c435bb5006730650230010e440d0a642c2cc19ffdf6934fb5a78738d54ad055590a33cfcdf2e667b9f4ceaeac0cdc11aaf35765c1d022c5e660023100920667fe8d669f6ba7c9e4be369cc4a3825328d084a76baa81a723be41de5f5f6649eb286b6fa54282d3a42aebeec5260302047c435bb5006630640230630caffa5152a43008e7ead86f2740cead4f5a3d378c8414f1ba666ead9be960eedc16b82551491e57608f232b45957302306e64d556a79749f94f05bb17889b9831de3279ebf09c08c1a307a6315cce23ab2791f41bcbe87169de91e9f80340f9240302047c435bb500663064023026d121d07c927dd21778ac73e1603eb0179d698ef4f7a447481b8329ef3659c9c47a58dbfc979b62633a19ac1aad7efd023021881c0cfcee83110039247ee661fc288e7e7140ac2966e85862eca21db2ca4cde930e28bc3506334ecea576855da9ae0302047c435bb50066306402305561b4565bbfe61545f1ce0f3dc010f67778fa3694619be8b739f98aca219609fc045ac1aa4b6ff27ef5af7cefd9476902304512edcfad2fc5102c7b08806994e3c797f3195c36157dc89755dc5304eaa22ce8a499fe76e01cfe3dae8d913c1473570302047c435bb50067306502307a5377ece7cfcf5a5574d8cd90bbdaa6b7c477c6588bcd3a6da5761145d385e1cce4d75faad441b4246158974c1a39db02310090195993b6bd898a0349859187e4a1201aab6182c896617698b6e8f53459a1e710447ac4c63e90fb18cec2915c748ee50302047c435bb500683066023100e6b993ae5bd918348ad6daa453c7d1a44911455d0753d7a03227fc07c9a6997ce36f13834108f358abefc94e217184e5023100ed3c6257be8b2af4f097cf6f63f17599e02a5aa05a6cfda4e227fbd04b4811034e06c97e48d217bc180c52689ba75bd30302047c435bb50067306502305169de7ce1385a6cb9360175b7c93871cd6e37d1503202c7b4813eb2ba9efcd60083cb3e304491489f8dd5c66bf9061d023100b8b27ad1ddf934bf14735f5e88efc9e1d742dd9452b34eed8a378097b2b4282e9fcdc4493035fce126331ccdd296681c0302047c435bb500673065023048103cd5f15f388b763ca6e8bc9c76bf872c278ae5fc86147c6ba0ce19685143b7b4420d89e9c29a06d4d99baceea9b9023100cd876bba63ef15579adb440cd56b76bf7f6e6a7f06fd6c2d290a674a8715921ecb7fdc962d2d8942dcebc94ab5d3a6530302047c435bb500673065023100c4785dcf6b37d49f580995ebc4a83cd623fed2c2f28508ed76a181303d33cdbc218f43ab545d5648ec38892030a0964f02307650d87478675f5c7b637078ac67e0652b3b1b19c81ac29017d396dc99fcf9a3471775e69afa1f6ed691d2e6e46a698a0302047c435bb50067306502303554de39337e0a04615cd2292b9e4c7b6b9caabdc1d6886da673405d8cb2c6e2d0375e400f057b8b7caf146d009745d502310097a818c3ab6127a758a7af58ed6a688457a4473fe4aa647fea4ea51f206d212ee8886556f9f074c56d05eb752a05017e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b589353747796273c8dd9d73b556706d630c0ac0ed10931e8b2d7397fab4c4362da2c45d5e667fc38ac35db04cdb7d73023044a52f5083e37185634e614d899f91c5641d9e8449f0d069f55b2a80fc542cade781997810aec4edcbe0c17aba0edc070302047c435bb500683066023100b6033906b50cb312d0d173c0a11857a1c0b8faeb1d44922bf2cc5251963c846754cda8b4aa60cb2e19517fdf92e29d43023100f50a58fc2ba8df6ca086782430ce9c9e3e9ee348a2ca381aa304f1b7b034d58f7d0ac32c77e765776b0c409b21178f220302047c435bb50066306402306233821e234342e08e2e67cf4b0c715244ee1d4e723392470683d4cc42cbec2ef5232cbb89b32375de2a088112ee554902302f2f390ae0913aad314535029e1560ced5f6f359b4f6e2d53f89221885f0629710d364b1cca7390f409bffd8c03317be0302047c435bb5006830660231008e6bffedbc3b45cbbefa5d05251b5b168410460f5a66111d669e9d1bd68d161ec7b52578c11ce498c49e72af974b3f0c023100d94b0e56d11f9444d9f0b6dbd54c1f19dc8d658ffd2997440048932000aa5c8c00ad13d7368ae248d284f6e87e2e017c0302047c435bb5006630640230115de3c72c2828a366639b6480dd169e78c7c05e9442f0fb1ad162d18f7253ddf078282c917dc8c7b8d750a70c2e7a78023023d5f61af55344047dfd83186885003165cb002a591f41e6d4099c5e7d1b2ed660e1e926e562508fcdaaf8cc7dfd65670302047c435bb500673065023053668cb20ef1a1821b6884e1891c6c875ae6a0bdac6d8b1b9847d43ecdeb26210362cfae3ad59a2c2d1e875d5dff9970023100904a1a6355545b11752e47b65742e0a1d3558019af988c8b212dfec9f0bb6de70208ae9bb135b06ea0fff7a1ae9b5d6f0302047c435bb50067306502307d883bd636123ee5a40c5c6d15f756bb3c73eb91ba19ae3c6c0d53fb38a2646cc18bf764bd80f534c8e4eb0cd6314a820231009951124cb23c7140df3297ec9f499d37a91d2fa7ba1365c8dccfed8ed594bbb428e5c7a3c6f6e0ea4f22e3c8c31b2f4f0302047c435bb500683066023100c38643f57432e99db67baa82b2e478779a5b5d73ee8a64cc9b7dbe8617616366223816481d05bf3ce724798e57ee675f023100e8ffe77f88d33504d720f424a53ebb735fcd18bd5247de55ec4742b8b6181c937de151e44356685a203446de5d9a00540302047c435bb500673065023003f1682d2caa78628bafbe4197de1ee120536c565acd8829147ea188f0dfc30a8dc6ae5577722860fa0fa610a831a132023100ac6aeb4a27a0930ca3ad5b181666f26316d09f99c7f396e52e7b40019e854cd6ede239b5cd4260c38b9460852d81884e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302a69124ea282ab2772e7dbacc72545ad6c3640f870e73df6cebbe8bf86c06eb40c0e03478717ac4b9727052d7c8a1574023100b4e81d6f475071c95a06ecfa2b7d3d95df4f76423e8021f0676dd7b85e5eda0a07775eaef20b439ca6846a8946e6b14a0302047c435bb500683066023100ad3308a683e04b3424c9951ed8030de34ed078f6a92778e35e966f9d33ee96735f49a0dda783c9033419b22260bfb6ff023100882a537af8a304e1af3f923121b2cf3f1ebc81858497a54e12f0327bc50d372ca170d0b1055b9ea42c05330152402a150302047c435bb500673065023100924776f291004faadfaaf52864db2589b53b27aea781c9f6e42608f3a805e6d784be930487bcdb1a320d765e71ac384b0230680f540cfe4189433c1580efb0204262af3af70aaa99524f087576d136e19a7f05492a8e4ca4c045b0b53c77f9cc31680302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023011acf885d94c27e94e32c9b1dcbb87e7bb2b9480c29ccecf31f4fad93df39eb98b93f2ce3ff2e0ade24e6ddd5a47d12d023032fed81e3ff09a4bc0d75fe4770285058524f7d04d03b51e1f486aa6f429cc2117898469e9872a432e4934d40cbd90f30302047c435bb50067306502304fbc5a8bb37cacff9c6e3d75414e6e260761cb939a31d9ec551a7fd56fbdd2488344f3d81b97312729104805c29475a40231009998753129d5910641d2a40f68fe1aaf7632614c029e28d3749921355529b2c363609d479a649477427eea817faff94e0302047c435bb500673065023100c382a5ab88aa4655be4090139ea595086cad543763357950b71e3a1a7b20bcc684019b594584bc885c6a07f8c910b64d02305df32f31229e8d1e76def6b02bbc834f5baf7dae13541365d234eeed5d10eaefcc3ecb1aa0dab8d1039f2185087539c30302047c435bb5006630640230529e861012b33aed70d311cd21a030113ffdef25058933e2b400469434288c44f3b3b39a32f2e8f929afa79738ded574023079f2f6275802e1c611a1460b48f5c5fbf7be1841efd38bc80e914dd5e6f2faa3c938eb273f3eff4d0d72df76aa971a8e0302047c435bb500673065023100eaf62852dfb2c806813d25fdff2b4bc489b5b278090224726c8285be1d2d58017991755e3aba8dfa2653ea58186573ef023064c04e839bc128c8bd4f3d862b9e362bd20e4357c5d2182b55840c10a7c53e4f6aa0b9fc9d31e9413208d7de6f34b7a00302047c435bb5006730650230169ab6fa599d6f0fc69fd83b66e877def19911b3e406eb63eff66a23852f37d8237fd3547c7eb0bd01c53017c8694a4e023100d44cf6e54fea3ff5bed0bb7239c4666732a20450b3eef4396f33e59c00398d9b8086bf2cc5913b52ff098e4bcc8eacbc0302047c435bb500663064023048d780895114201dbe081033b7e49fef1390825764fe4c1c43fd09ffc4a0ba90fd62f71232751a546cb04f8ff1c222360230772873b54c4dfcdc8620e8107485111520212eef38851ab816a0715544f6b036e5b677bc284a6f8303e67e45ecc3a9d30302047c435bb500673065023100e112740fa01eb510c1b6b70b3e768ee69611e7a042581cb280344b6834f530a3047ee5e8630272f39b71001eae721e700230114588adee4a9edd8d4765e36c5272d73e7c0ea7e9a784d8727d300e12efb0721a7c61aefdbf4feab2e3d8105741db080302047c435bb500673065023100850ec9816af75387b4c0bf6a8fe7cce88617858bae7ff79e84d5eacdaa63991c6980ea0b39a99f9d8bcb9a87151355870230227a4be9d52284086e4b079955e7958dd0058e600957bc1fd92ddc32600ce4ce71cb114fd0713a603377443e041da5160302047c435bb5006730650231008ea90146d331833d26f4c80c5871421e83b54a68a9f40d996ead8df4a1ae093010138dd7ff375669a34ac5d64c484a4402300a3216664fb2b6b2fd4ffb76adde513f7eb2c54392dd7525f75e0d6d6383a4615bbfad65bb0a9da7acb22b6f00cf3c5c0302047c435bb50067306502304c88ea0864ed4492b9365b3e6b7569ec92ad5abb9670390225009ef6f6f10ad587767185463f6d3f44cfb3836edf388e0231008c263bebb697f592ed0fab3fa0dc34636d1293b15078c481e6d70fb403ddcf3e9e891e8312ac5a77b3102cc8ec677a0c0302047c435bb50067306502310099c699be5f7a884d625d2878f796fc5cf96cb031fb647816730484ffd9822c88e7ff9c804fd58480d0fde17608b9604e023063b9aa3fb089bd9bd651f1a3ff3a1de8bd3b7b510e01a8109d0823b038584965d59abe9ae938d69e4aae2b948dc659780302047c435bb5006830660231009504b83b55c0f36d8843ad6428b6d03dcc4900750450828cc0d7b050ff026e11cd7ef452436286d1e3ac0f3873086606023100bce30a56e49266402cb9b9d8bf0306687ef65eb3ba49884f86c0de99d60e3b55534f3241fa4e5087491d9ca1014207310302047c435bb5006830660231009b50e4c9a3d80da0456837d7a804b01aa0d4487205d1ab8cc5736407b0160dbb15ade2a5cc2f60890a5f8146f53e4191023100ec81c94b0e5fd6fa2a327c0b0a9a321d771745340bde193eafd9675837896009bf580224095aafbd685dcfb3ae298b130302047c435bb500673065023100a62f7a8df3025fdd94b3102da83dd7321530feeae88ba1460f8a7d9327e77935bc047bdc2466484d4e7c4e08f7b38ca60230681db669c2fa968fcb9d2620c31f57ada2a04ad4cbda39764abcd2847c0620d437be54bfab8ae3d40ae0dda37eea28100302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300dc5fea5722a6fdb6c76c605b3bfc5bb869e3619f467d101924c38342276e5174b698cc3d5f706c266a92bf94fbe7cb7023100af06a8e680a19a7ebf3f04af666a8aae21018aa6fb6ba3d6795ed0e154915957f32b4e285c215bfd1291586b9e8896410302047c435bb50068306602310085954aaae0be7caddfc28cd3d24453202051e25849c1d7be8c58fb3b464d01508c6e9fb26c11f4aae98da6d59ef0fddb0231008bb4d11ff1f15522dc4d4632e4c25efb988f5a12c1fb7b643366eb8e062ae416227ce3b66bac876cbcd0478e97e3d53d0302047c435bb500683066023100af5264fbebae7f9c1f6a07714abef562f661bb0b944522852722e90fab87732644d584ab9036dbc5b74897d26776e702023100a43cd7e4b3e347893d51f839669ccbae2c2fdc2ecc5886ae309aba26a8a41e3de1a18fea852c3a0adf45f572234431a00302047c435bb50067306502307d73648c120684ea0a1c89186f77bd71434b8a8f2f4892226ee79a7b4c77d50fee2533b23d5f8611c678a0b0fc92955e023100820a9709b5b41071e26d21ee7861d9df0bcc246dc861863def9ae0231f908a8e3692323aba6e9464cf4c366235ab68770302047c435bb500683066023100f9e33dc4c56586485e5d97c501f502e5c990956be4e1922abd40cca77c9e099b44e06693cae727b1b23923f9393c08640231008204bc76320e91fd6417aee5c85584f9304f0768a1582192ac9d4250d175e8980378b78391368dea99dafc0cc0d498ba0302047c435bb500673065023100adecf98c55968be534d335a891ee96fc2b4847842c8c57764ee7261b228a478f7a41daf6db6eb35aa28ae6f514bf5bc30230421a5c6cdc5cbcb7739defb3d09502c3648633ace8525b22461671c30a17202ae9d941aa034151e99a3383f25aeeede70302047c435bb500673065023100ca9fd3568ed30b5cf72863f4e90eb10e12f604d3142a5a664f90e08efb9b1ab09a24476622cc3e5bd84055eba955cb26023064b49851a647a03567323ffa924eaf0b7ae825199acd420eaee61c7d26e88cfc9cf55be296a89a61ad3aa76fef457e600302047c435bb50066306402306f49482be056f73ffbfc733d3782aad05f3d2d02da112dd4c4c2f74f579b2696b0b54e920ce2f2a9186fa771a9f2decc023005b50654bdeb2ba88bf2060f2cb13f46bb06af6f52b7896c2dadefbc60a324b77cf7c1bcf05affaf5fd64638ba2b570d0302047c435bb50066306402302e7ae5212df87c3b3da20ee74183db9acf6974c3219e5c83aebea65fdc30ce6bb107ea945b665331bddd5c6441d6fd4702303c6650c51fc731555bcf901e204cc2dc277441cd740eb71843eb66ebef5f4720eefcf8c859947d3a52f25a80b905cd610302047c435bb500673065023100809e0cc9bd8e0249dbffb7e4b13fe81df363730d1ab4891cb05948d8b41b35f26903219deeb6d989ae413273ddb5efa602304a2c66ee63eb07672fc138396b9abc1049ee8639780bed2ec68c0622ff07b0f173ab2a4734e21eed8b8913978f4d29240302047c435bb500663064023046b932c550eaa9a2edf80094938448c008b541ac4f463453a6e9813a6a607ad4560ddc6d1c8eee946d2738d3b28ec9600230146bc9c03c81b20ad96b3556b92b2dca340abff78b19baf031aee8e58dba059a12f3d3b43a24b697ad13fadc447749740302047c435bb500673065023100f374976a1844e1671aab1bab1c32480710092f5fa67d82fab7423f0550ff822e45d94f4209a942f671d608f3c37154b2023062b6c0ae19b65cb266898a966b6c51f46f9facc9b65b942737fb29ce263cbbe5fb4639ed5cc705f6e325c955d5a01def0302047c435bb500683066023100ae44b72573f8ffaf59c45f4b794b7b6e9328fe302cfd0bceea1664892499f9e9355fdd4d4c5c4d8383f718fd071adb37023100dde15ed20c0acff4207e7cc7d8c326bb82744c6a3e44bf034e232aecc349f6d2eb9151c94c0c0f1eed6c2224162891b10302047c435bb500683066023100e28b81edc5524a4568529fbd8cc9d14d375512d402f59025879918ad5cfa975a4142dd61348881740ca503c969a0926c02310091874be464aa2de2efd9995a762c60837358b0bdcd169197c4f05519b0ef9e88ba4cfa6d268e7aa6ad86152a171500650302047c435bb500663064023029c342d67c571659196b2eae86dc66d8511f878c9741ef5573a5f4fe668075cc93a622ea092bb0a8b2d5a17be67f6e1402302f1f815ad38878addb6f8f497360cbc7f60db4a2a4f7001a27b102188f77e7a325d192a42c16551c1262883bbef9e1140302047c435bb50066306402306cd1f75e8a0fb396730bb8b55d84216de9469982dc9b3462564935e3e9fac04fb764a360f99d0ff13131960d59a88b9702301b021bc20ef45f72ffe467a1748036eea184d5d6eae2fd40ae1c3df81b4b14e52c1f0a2f85cdbce67a38b16ae54389db0302047c435bb50067306502307bc86031ecbf4b675c857386473e7a10152109441c260a31ec3f09fbd24f496049ebb8ede88373bb4d9be7745f51c694023100d470249cc566f0499b0aae11e500c32d6feb72dfd3dc1e29d6802e69c3de493af0b23b32377522cb6c9ebb48c6c5f2910302047c435bb500673065023077c1ce11ff9a38793395ba650f7db93a93f633f89a99ef04a8e81cf96c1e0aee0575a860ad8562c6735ddc58165dbc97023100d332e26245ac26ee2c1c5feab306150f924cdee07228e7b7b9736c2bdadf54e5b4f3b2103332551acec226163abeb04c0302047c435bb500683066023100a336da3a1b045bd94a0da1593599838f2e2790d7eac641716983dec205cd1f9805ebc50b54b770d94bda12b58b53b2160231009fe055d571729b70f0e1830685a3febab1c369f5357108bd77636daa4581c2c5297ec12a1629f4cc4dbe92b523cd0cd30302047c435bb50067306502310086255a7e5f57c8b77239e0927d450aed3fff10f1404281534d0368907680d4432d285657663c3d115b7ee61659b900b10230328b55260b9182ef62e4e78d23965d423fbf5b93d5fd048fe282945235125862151a6086610a05c3c87d17e98dd00fc00302047c435bb50067306502303f47b49ee5ca82d8ea4c6ae833c84504c09737c69d8d16bd56178654eea89c921cade67dc29cd214bcae18c39ee1536b023100f7d277098d3ed5debe13321bd32e458fd25910a164ad0974a19986dbc3fef0af344d1d118869c02396f01f9af4f72d1c0302047c435bb50067306502301d65baade694df158a9cd4afce480226bed7384a88e76b21147189f54e3a97ca7fee70b96fb41c6f1ac6f7a8ffb8b115023100bd1b62e0ecd5519c047033629adf6f4224ed79772d9ae208fe1959999f6bb36f97148f02c323cbc6d9cb81353bca4b7a0302047c435bb500683066023100c4ca8b91af457e6582c96d17353961b0c69cc72e9fceb64f870340a2d194459d42f7b815bbfc26273d7f4edfd953b3b6023100b6e9af7114b7326ae424ee3d8e6454cb80d16dd9af34bddf084e11557ffa892bc7b5375adefd84e88142ac10869cd49b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f67ff0cdc1dc29b56a11707c479bbd82be2caf1685aeb7d5d312c1e715d7d291579684e892cc1e9922f22e81f2b651e802310091603e6fcae67175053837ed88e92745e214063c9a28ccf3b5674534f3114d0b9d4b99101d421e44ebc3355dadd2d4f20302047c435bb500673065023100c8408450961c3ebb45cbbf5f903a9a859ff1e4dac22201e1c0f30a48f04d4c15c49fb44ac63ffe65e846f2637087983e023001255b614dc493fc5ac7f1d8cf8d4afffc9dde183402b5ec4c6a48d223eebc461005fd6809d76b31050f8a8fe2a4ce8b0302047c435bb500673065023100b983d69d276887d628e37ec99b97e6e0eca37071ff888a1f576292abca6ffb6a05865759c8d27bb891b03132bfa0d15d023017e71a1d80f145cd7e3433009f34b04ad7f740136ef9ee7327593382b8a96edde7b9eb0a553b87e0e82b2f22de80ccb20302047c435bb500673065023100de2925b0a84b4e27895f902da31cf8a7bd77a4c29f17fc04485b55568cdc69df2296676d6878d80e0c879b21c75c418102306c9efa7243ff3afa1328e58c23577c935c156ba88dec8b738c8f9f9c39d57dbb38f25c59383e7310363a13b3e7f3f3600302047c435bb500683066023100f51cd9c009680b0a437abfa15e36e57371ae9e4abe1ba4c0bb0bdd7f73882b8b983b84a8c657b3c1d1f0a09b6fea5958023100f12115dfe2e33e49b9c75e816fc751e7b4a415cb37b168d9509e55612a851b990698a6ef1c3c6c24591150b1d80c1baa0302047c435bb5006730650231008234f260e1d7853a5d1d8d200ee06926c8e85b22f3fc839bf80270f60622ebedc2575410e5667b0603156e466b5fbb3402300cd92cbdb59eac897363a08ec7eb4f103ac08591990ada37edb508cad1abc91056e5d706e01f74a158e41f7b122d62ba0302047c435bb500673065023005fbc1bdcbba01461e5c515e7688b3ecc577cd3136d3b0a20527b0fc1d7146dad2124b03c921d51fa0aed8e47a88db8602310098b0c494a51279c076ba735c83b5c5b37efb3c52d67ef58eec1dd47ad3229162ed318cdabd7c61164d9f9676df51df5f0302047c435bb5006730650230218ad2c574dde710e39e656c52e0c56eb4fa633bc717ba98dd92333afebbccaaafe7265a92ac765ae66d40f5e7e47d5a023100f8e281af56659fd600c4eb22aadaded1c806ed0d33e59dca96bf482223c2ce21d4a9fb0e03e57f154161c1a55b50340b0302047c435bb500673065023100b32a9550dccc1eb6bdf9c69167459ec7bd271d3f1c51e8ac35a5c0928e41ab6c554f8c75ca07b4d92ec8db24be06a8dc02301e72ce349d22f390a216314f500d4cdc828d70f2a36bdc0663bb69d8b7e5a84200fa79603134b333c1214ce95aa7417b0302047c435bb500673065023100ab3d78910d81edfc660670a786672674eff30ac872a4ad02f24fd7bc53b49546a8d5f6b2a02545cf6895d83c177b77ea02307c5359aba03358b473fdf901c9382455fd686143bbe6254fad15abcf0afababfe5830de13cb9ff66e3da143ea396c2110302047c435bb50066306402305e0bcad5df639d31c50fae7c033be2fbdd9cdca8512edab920aacf0fddafde98680123551f3291b445b58d603e6a35f402306b4786c8d09457cd6fb3cf8f1070ddd752a8c8c2b5fc1b4f7eaca3db450698a0dfd1d537915a315ae16affd2b4afcdbe0302047c435bb500683066023100c84704f6c35ca7a53b9d011b238cbb9466ae2d60728d421705c608bcfe492521462d1e27891b1567947a3518f505a6ee023100887ea7902273b324bb2d99c091ed6581ae4419265dd3e1a04711557742a4a100fde6c32a4696682e6b4724986780c8ce0302047c435bb50067306502303b91e6aa22721210ab72e815593a5c160a97e5e98d46ca98aa7f22ba47db242e80979043c2bbb615dc8ba954d54baa260231009f3b6a07d0e921a4adccf4b2947bc5f042f05251eda234806f8bfe3d675a4e6af33e448fc99305e53a5becddbd5f35cb0302047c435bb500673065023028505ebba70a506d6eed91b2a8f01c7a59ee1774446797a60af32c00a692ffb5640e3d9aec7abe280632d4dca945c9d2023100e037931fd7109127047bd66de52d0cb1f3a2ea4c4503cd92678d108466cef7478a67a63971873dc85cd22c43d1d7dd0d0302047c435bb50066306402306ab3d76a7564404718098a612fa35b14670fd073cece9903fc98d9a413d4423299881335b1d9bcc7dd9d828bd8384c5702304c1da434e256ebb22cb3404c5938c0d3baa3320f7835d17cbfe708d305b8a52d3c309cb8cbb219fb51e7485c779aa7cd0302047c435bb500683066023100da8d5f72add64ff4f4c24ee19ad4130a9c23ced1ab547b09fba85edc4a9f35a66b8b8dede2c7b44fc0247ef7342b7bbd023100c9eaa69cb5bd9d7717b4e63ca0a2b8acbd0fdbd5c7a4d84ee998a0558670bd1052ec48a91b2201b3e3117fc807550bf80302047c435bb500673065023100b66c0cf45ad064fee0e55b588993407040df1096d4bc8e97a6874140f49b3d7de5663236830c1d0996e93423530d4fc8023023e6b78d9b8708cea19de7f61767c0bb0dadebb908e7a59c66de9588751fac18611ffc4ded6f80a26f0586cef4cfecf40302047c435bb500673065023100d921193c83cd4ae41d4c8982c2868296190a3f14a5ab21b6a0e52e6a9e3cb630d36c21baceeeb5a43d7ffed502da90c402304150777a8133690f95b73508d180c1b38c23f245a1f29559d5522ff0aa5a56dd33d1a96bc197b39cc9ff6d68c34901cc0302047c435bb5006730650230253d664b85743a071f21517fb2a76e4acf4ec306bd3703751a6459b14cb0cbdcdc74ac76adcc92a0f9d7207fd52e45b9023100acd58fef7a5ee94a9e52c8b4e031224dcba6a4408d727d0d655b25aac834574bcf5305e5488b3830c770eb80ba553b410302047c435bb5006730650230258a56174c8f033ea602af855d2854bd88d603bb223b1e5791dec028db6dd3080d8a278f962a56cb0f205cd80543db7e0231008185f7daa1e22713db21e8017b0378c166bb3bd5dca58bdb7388d2794f8757012c7ce7a07b2fe355edf9af7581a30e260302047c435bb500673065023100847e18e1cec6f4e9bb9b0cc9eb304cb76c00ef554fdb464c65a3dbe7da510277ffbf87d48370912a7b59546ad12712bf02307256ca378126e276d13a7552e05e30587fbb1cafd7cd8412431db789279ae21a5a78b5bef404de6bc3c4befa3a6ad13a0302047c435bb500673065023045d8a0f5d37080d6ad9a8f72e94d30f95f5fa0f4ff331724666aa8b6bf6805686c2d8977167fd2995d314272500d7330023100cc71c552caa5ed094b542f7e0e8fcb5de967cd0e2b7b040b6cff13c930d9bf8ad897d28080387823933337aa0280a66f0302047c435bb500683066023100d9e0133179694d8611b1fe55860ad2c19078228b5bf813c06a0fd4aa23160c80086d090baf7fd6012a2d8f8ea95a73c3023100fc04b71ef88a18d53e7ef4ba1af50520ea6ca679e111f110ce939917939c68eb55dcb7b992edb30af9bdb94da7faca460302047c435bb50067306502300a78ea6d8a784bb9a06ef89d17918f9c1138ffc24ae991b2b9a9ef77eb3d5901c57fefe464238d49c8ae002d15605b60023100c159e21edf2c8fd63a7ff20301e52ae84de41f80d79452f628c79a89d11e1f3947f91e49db08dc5585c035f40e315b1a0302047c435bb500663064023075c4bc995f7d35eeca3e39c0e05dd3c0a527c09490f418a51626862fd91ebca1ca37a66fd7a8c5a6c62a46015201487102306614cdebe0f1529fbbe43a5bb2a517976860512c2b21fdb1e77cde0e70ea4024a7ff81415f881346e9ec0f5f6af8391d0302047c435bb50067306502302c92b1d8c7cca4c880835fb4d7a11774761372430470f9c834ddab1f1b8647218ab512dd728ca7c9b6b167587213c62e023100d26802f1fa50f821f220bf4703d8d861a57d41653162d089d41c9b2afd4a148d66de25479384c3c7efb7eaade5f8cd6b0302047c435bb500663064023021abf85b998c8dbc507e49f72c1b9c0a8b6f1fcb2e6119a39999db349d4452950abdfda74052b84d0e0d7630a18015dc02303f18b2e4c0a6fa55b756ef3e3de3a76e277dcef6b8852b73198986438ff56b200f127388923a7fc3b91509c5e0f772dc0302047c435bb50067306502307f3c717cca4dce1cb1f00b948db1e75c16b05f1bd3980bc5068aca56af01553e847d3a504d254a1373c55e560d2cc6af0231009dad5c80c12f6586a1c33e67c6a3484b90954d9b8f8e548e19d3b8bab17ae786606b19e426fa01b15972fa257073b75f0302047c435bb50066306402300e4c8b0dc803cdbc5fc25b2eeb20a9703c43dbe005d3f2a6403e3678ee0ee8ef869173a257c08efae2f81d69522a804002300bff176777a01f2faf1ce0dbcf918299bffc8665ab0e5d12f36c89a72d001dfb214c8dd752212416b8bb2c20fae74a390302047c435bb50066306402306598ca06a53a2ea3121d5d2713d746c076f0db9e3dc21c9daa2106c06faa583159b763c76a4a5288b32dbde7854a3ae30230752c6d09c544b7165df52dac1d5f46e3806c65bbd3eb115912211f6ad263653be168a0f5510e9570772f7f18db90761c0302047c435bb50067306502306e0bcdcc01827dbee93025112870317a7c59be7e7046922336cb840b91e44a52cd1edcd92047a8749368b389fdfacae3023100e7eccfd8382e533786cb16b9a18da6007c12c91840d90d8b70078884777a8949f0e7ed4ed309fd58ac42c65cf62c3b240302047c435bb5006730650230376d55b23341e1e76b4f16611651a6f720798e828335618deeb67cbfadf540d7bf8b69b03796fd58aa550795c11f46a0023100c5f0d838d15737d644eb21b0a43f6c91f79620d096578a6f0c331a90a99cc27efe4c17e1718f9025776ff0ca22467b400302047c435bb5006730650230695683ec07e81d57299effd8cc192dd608e44bbf9093080e10e6925f03e7b5690d303bd18e2114c2e709075f59e8bdb9023100c84e6f46f3a7f180e28fc4b90ff11d0abc7e5a75f9d9a240e4316d034bce5ace0367a7e71239460db762f13c78d9dbbc0302047c435bb50066306402305dbf7f4de49259f9f2adbc4cb554987059822c07453dbb4ad8ea4ae0780965736b4a6e5bedba54ee47a9fc6a58016b8302306a5c2e93a5ad3bf88aee2768dd7c8d8a5ae192d5ecf6377ce8e25d8bb9468c7eb8e0ce566692eb155c5c374f3722d29c0302047c435bb500673065023047ffc7e3d47dba2a72313897a09696411649b6aff1ab6c26b9f71c36c3ad71882324d8e79794d150601823fd7661c6c6023100dc8bcb870f66dea5eb43a2efcd6f2f207fea3c49666238f5b00f0d61211bb600c85430c487c878e90165db81c4d81abc0302047c435bb500683066023100acdfea63312546377cceec55d10a69bf4a99cc5db3de952fe1b4b871cbab22a24252ad2470f8910e905204f8d67faa37023100aaad1484904241cae7c8aa1c4cb9a3e0b36dcaf1cb11a1ce80763bc550fff7bf09e8bc3f48da413bcec7f035c284c4ad0302047c435bb500673065023100ac363c08396a714f34966a7578350f8c667f33f1dd8b5c47541dc32cbec36103e5e6722595dc5792d2775951c274628c02305399da23f76413f713eb74eec3abf0f08040d3894d1cd09b8e04260b2d652c96af38c717e673d8a0e902808349d047280302047c435bb500673065023100c57d5e1094e920706cb3a71dd1cebbc372bfd9f6ddf9d204553b1c5f517e6ca106547e7488b20963433b2d0b9e143e3302305f317743e589156634777dcbf078def12bda2afad971eebc17b35ebffe005a26aea9e8daa8f40792cf2ddbe6288fa6710302047c435bb500683066023100f9e65e59579f8c7b9f4f14fd8798ea3acbba8cd89d038349afb14a6e81a3bf473b98c5e1230149adf42343e42dc68c13023100b2429439a668eecb31a440359dbbb9fb12ba22fc4262a9ccad4315583ef7593be227b3f24b7352a8eee04da731d419f40302047c435bb500663064023017d0288ac4746c97f067ed1f2cb8c4c879cda77256038f3bcfb0e809f1343a0443c970593d1c4e4a85ddaf5f14185d48023057773a2b0b8cb3d6c10589c2722317dd6d6f99ece440e8273556e06e90e3455f351a0cc72f608e922c4c4c346cf00e870302047c435bb500663064023072ebc9380c632b9460866da7d46f2d95bf9b596e7ef26c29477ce27ab88628f5924c3950de41a1009ccae51ef459364802301f7eb58878341d1dbb7783fe54a05e4d036a6996cbf23e686cbff7cebfc2157f20a104cc05982ea46cea15b46ebe61760302047c435bb500683066023100817b7573ff4781824ba3ba09842cf6870b740d17058cd67a3c11999a8dcc0f633d79591688a6e0ccd6844fd5ae626bd2023100926c858cbb1e084c136f54d0df6a37a5d0b060784be5bb061f6efaf0ef9454fb06c3d6526e874193b13fbfc74d184b0d0302047c435bb5006730650230105c67f7c0b04dcfcd25569bf6a5bce7babf7620d71010c9dc3e171525fa0e5bec2d4ba085979a09fa6d834f2b715a80023100ca8afb86f37c0a90a2198041b8522120afe6798cd5405910fd3cfa6f3dc0716b6845b660b793e84ad8b25650f8150e9b0302047c435bb500683066023100b6e551fdd2a2432a105e7a4c3b31455adb4c2c7386be1a65f47674634b82530c3acef745307c02bd4e2b691e391aebb00231009968ce42ff9e351a498edda438ee2a76fe61ad12fa87d4df193b78c68700c916ca3c0598fd7b37631c8659e6008156150302047c435bb50067306502307d9927c2d8bdf3f8f43fd0082e212191ba49f78998631a12507fc7b914fd7c2043a8594dd0afca966557ffef327b52de023100b40e168e5ce68241adb78b71a56aad676af5695bac020085372af35cee59d47f580c3efe97f4e7befb695d24f32184320302047c435bb50067306502304dea10b475b0d94e9064bd9d699251d0eb32de45233a98639d401de58e827513824c0a8e2fde5e13eb1abf5922911df5023100bfa7c2c98be93c960d7eff250c332c51def5ddc9ff7e4d2d2c85eee82924e1f9b6f8d90ed81daf36dc9ee55c155d4d920302047c435bb50066306402305c384ce92c9193315ddc1f4effbda2543eb01d1a0a56f6c50e15462b8a047b7bc8378e8931a8d6758566a25ae14dc8ac02301b4b5b6c3f5ada6d4c0e69b4866e58a62b5d58a908117c67f35115b21ae79b83906860591e9d463b9c0d1ce2c3c425590302047c435bb500663064023019240881f61be2e4d6f63cade49cb2d0047db6f2c81c928fe1170d7e45d7695d93d658f78ad237e87559bc1898410b8f023062abf76c013567a68a6f2e07a854166601d113c4d6ec263249466524a1dd96bce57caaa88b496d6c7a2af77f159982850302047c435bb50066306402303a9e9fbd7ca846540ee141d9ba25fdfeec8d846ee2da8ce41157d0192ac75d12138112b3e81d93e8363872a627e93d4002300ec25c64210681c549062a9b71b6656e9afddf8bc92aa1c7c3c34423aa29cd51f04e9747c482c6200e5d0dd68777725b0302047c435bb5006630640230297f2397438a59768bd5144266084927d467c9d8de8e168153c6480b0bd54276667ff6b01748bec8437bce1440b8be7a023075d913178e443b9b2360526e4d772198a31e81694f98e72c533ea9ee8de41d1d6c9d02614f189104f929f7067ac276ea0302047c435bb500663064023068c875fde36bf366b13d4bf4fa8edada84f2ec6a55eefc0849d37521eae313fc5a87a61ef2fc01c8e111f8dc3556e31b023017f8b7ac23f917e5299786fffc6bf95b61c34b8910937544350cd30438c7d7fe9ca7f00fd015ee0cf8ef5f3950282e880302047c435bb50066306402306117ff3c65f4e300d7c1f1083ef63867f4cd0d4e8ee0a937461f87f973534f1f803e3487644338e1ccfb7667dc59078102304365e5d615be3ebbe05a48e409db219fc34712fce9d39bbd912a975e5dd809d53b5b5679ff93e663bcbf77d3e96d5d5a0302047c435bb50067306502310084b278e422d9315bdd0c22ddd9e3dfdd344f77fb047e7cdf4464de0f4fb59c6a7f23f3a8c40b93c088d176bf32e9410402306f56a8bf9652c416cc43851d7f718bf31325fd77bea175e89bf759735228457d86f5eed7f326bc416b40611e44df84040302047c435bb50067306502310090b1068b45de7b854639cd0122af68c711617d3817eb076f986c5ab8101a259a5358d89e814db52749cd4ac35f357cd702303e72ea7e90791e2467f3d34782644cf19186c24443ddbcd29a90fb4f183325ffe581ca339dfa107862ace308b88ef0f80302047c435bb50067306502301fec06dc06ea43d2b48f2ad527e3ae76f0ab5e9b2f7cd9528e054f9e7cc33101ae88bfa7e2a09064dc02b5e1f1b64bcf023100f52f030e4acb1860770ca1cb4857e393b7741a873428ceef71a55c2f8e33883e4bb29e08d36b02e0ee7fc16c540a118e0302047c435bb50067306502303495db68f950f6b3aa82cc05cbf161796c99dfabab9fc661254e3bf43a16fb9cab39cf84c3c8e0bef9cde91c38511f68023100d7cff4aa863df97aa778995c3542a88da43e541e0f760ae34f963b0998890620669ab87934e336b869da10b39f17e9da0302047c435bb500673065023040667af3cc4ddf7fc99cf553d8a1930cf7818f18c2558806a27d1d58fa11851caba15dfd250a9522041ca9f40ecce6aa023100842ffbb8918073cd73e33f8505414c54f1ea8920438dbb55b72548aa73a7ee55c00b688b6ff09a0a3e6ed020c77af0ad0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e4855ef1a2b97892b93888fcff8ee926b0b54e5797502775bd82845f6cfc8ca1f39c030cc9016162c2c20ea95b56d9d10230674a3116d9e34df3262fc6d1890b373089ced4df62e8babf854dc05df47bcaa588332470af0445e6e05f0f36b9347ebb0302047c435bb5006730650231008bf29d24e675c87684117f4e0699ba9b517cba79b2653b308cf50486f5c9e0880cf14f0fef46f6a271700b60576397620230500e5203cd79e5192c0ea4ae4644a7c118aad9085b10e8e933b8d876e745c704d06453f38517ec21f46c2b3cd49bb3370302047c435bb5006830660231008fd1e57a5daecda6605b6c507cdadcc95d671764c99760ada6ea223b1bf2ac164eb926c65c23cb8740e315d1f817732f023100df5535e4760d137667f0cf5a303db6d8b994ed361b58f96679e383476230ff6a650c3d7345bb47f2bd7fb5a20a522d230302047c435bb500673065023100bcada78cc23ff61183001c7ee34df05547fdbd32d07cb32a0096e9aa29a5e9a5486a79d2cb0355e4ab8a768f5b1ff8350230156b7f5d01548d0e68d1180a1e5c3c78138f292741d5c200c9c8a685cf3a2d73722d5a3c2359f2a24708df831c2494e00302047c435bb50067306502303199068b943d69eccbbc7fb27d9a76afe9b9812306ee267a1ea2d54f88d259069ec371ad237e2e31391326276e1173a8023100ec9af8c3bc487f3d357d320954f5a30d673f55d999edaf21f6088a88a07a66c8b8a4ecab171f18ec2758a2f5d321c4970302047c435bb500673065023100f49ef0307b798ffbfeea01a3c1b75b4690c50f6d7351fb3e2a3e860ba79b7278a55cf68415619fabe20632625e2ac58c02304f96444a9a83116abff5f7aacfab546e8006c5aac96ada9d891e11acc3b0e13a940e46634657abe00d284b16ff0736b50302047c435bb500673065023016386844faa4ff2625c38a9ee285debf109d976ee508b3446bb93027e65b4d136004b006506821323aaa204f783c3429023100b98694860cf6ab2996e21139166520aa92327a9c69a19d9eea4cb2a468af11b3cfed8e9f633f6b30389da6f02ad71e760302047c435bb500673065023100e3caf946a08d0fc5b0c5716398f6430b605dd3965366314a331ae50485df3be28ba625d73957506287cc58b0f0729b2002301d56ba6ac386e38cee7f1d7333f606cf055a1606daf479d6f6254ec73b7721f05e079c1f48fd7be9761720702ad89d2b0302047c435bb50067306502303c06525529f0dbbbb8c818c06267d74ae9eba12c74b14d86c63c9064633f5d690b5152dedc97f9b6056987703bb368fa023100fb4b36d92a87c7ce5f0d0a8c5cfb45210294caecf8ca1f14d4837fbe9a3d8c13ac111bddb44ca363ca773a660e81edeb0302047c435bb5006730650230455af5b8d8c76ee4a532674800bdb1fdcd49f14ad325f740851d5790acc1212e77729bbb3d834a1d1cef56a23f94da1a023100ecb5b7699b0806033f98692715fd53eaa6de91814c504fec23b0137ef248bb2c1af1b73a4c1cdfa1a04351ff1d2790bb0302047c435bb500673065023009ac3c49f60c1b43aecf76df9e4c6798019cb8c9b79d760cd40367764e29c8f57834a2565f4081fed794dabdf7ee071d0231008c8a0d8ab3e045988d1056c8557c14c2bc1ba9204fc0437ad24ee5520cdfb972a676657fd356ac88a164aae76d1164e60302047c435bb50067306502303779648c287158d3cff1300d2f5f091ca2ab59f8de7b991c570a397d1d0eb98ae2a6bfd55ef0a4c4319cd8f99ebd95b50231008be47ac1f988a7c6a54c42d60da18fccfa8e0d10971bf54ab18f822a3463e3a87e6be906b68753568c32e2340bf75e630302047c435bb500683066023100ae404acf3087adfa8cea0f2d45ff1f6362ac5c9effec9bdc2fbe8e8937851da5b960c8e821bff835c90f7de96510c0d6023100e1e7e1a05c20e118e9d6b0b72af1f116bd0643d9c6dad94ac362b853bba58d58de060853a7e9d1a291cf5de2e4d84ca70302047c435bb500673065023100d36a659f6a568174f97229eb1625a13d788ab09e02ee73856b268881162b1ff1b0c2c07a1f4448361cef03e275b833810230467f790bbaa635a835707881b9b84fad4f86df6719ce9631a3c01e9d8cf71393bbffdeae7c4d00b944b15561e6e399500302047c435bb500673065023100a260be0986a26d45c8be380680de3d63571ccc1f5f8c007c8053db68659ae86b79f0bd780326ea5c71d0e4d2bab7d8b0023070b45609e13d0d367906274db2b692990568fc8213f04b9be655b540df1d76219e5dfba2da9f3d866ffd126ee96509e50302047c435bb50067306502306c0fac573305ec189084516053c0e53a86a9203ab87804f8f03cc3168b46376af96f310ca2f0f825492c68346e6fb6e7023100bcef6ee26a60c39807f9e89516d4fba73280253b174ee79b13fb7b2762f3ebea97255a47c76125e1853d2c60c75f4c380302047c435bb5006630640230494bb36949754a75da300fcf485f720bdd4536fbe53700676eaee70480b14abaf05d148154946f373f887fe6627695940230458586afa5ea802473d97d97a3cde8a2386e8fd7c8ba176b3053df0d3812ffcf703c712b445401a1f244fc5061c75c8d0302047c435bb500673065023070aa74e6dfc41a9d70205be99af160a27aa5bdda86e01f49612ab81c3bc1546ba919042ce260971cfc9ad358bd8c1eaa023100d78114dcc5afe28f2a5f6fe4d0f70e8eac9391899f03f26b6ea86f6dbec858fddf55c5605cf97cee20cbd6a88e3054760302047c435bb50067306502305f717d4277fe89609a6e29cd4917dd49fd31a373718e31790e720e7e8c3127d4b82635682b018724e91ad7f693658c68023100da4070d61204be78e4c72f0a19934166d8404768e60940a056609469ddef5a2a89485a63e9f97cef0c84ca5c883698160302047c435bb500683066023100e2ee79856742b7dbd20d6f3db719d04c81868297547e374a34355cbe5df83cb113d2bec85e18539eeaf799930e782f17023100801a3838ef75417a16de31834430cbb74a0c456979697cb497a153fc008e41113e2e4d1972778a22a288f3dc99f72ab50302047c435bb5006730650230577565f2ed3896a069f35e73872fec363e1388ba19dc6a1d7ae6d2b2d6b709d0d6b212944c991356364536899d994baf02310094be1268efeeda222d7c4a7d09a5ad4a0131eea206d6c9208b201dd5a71bbbcc19891be3984d561d53e76ae5f754efe20302047c435bb5006630640230194c33d12a234eaaa644fd8b84011ddaaf95fd1eac74e058c9635d98a37871a2fb415ef88fc047713a1ce5cdff8d176b02301849891e57fcfc7e8ab3a77ff99f912f2005d6d968d85edaa2fbbc4eb0420a5f1a49f18f1366e5ad06075e42491293830302047c435bb50067306502305c27bd7ed63aa0adb0d0d1f60bd00142d0551418c3f23f2fafb6f86f527e8deea092c26f1e333e473f7a27eb70b70c77023100dce26c2c5e57b6dc747ea09fae5664bab92cae915b1484d0f5013f3342fdba2fbc1bfe496e19626f9c1b4ec149bf31e60302047c435bb50066306402301ba360c95df40432aa4de6c36181137a2d560f113ecf7a8449c76b0064f6b68baf5786aec2107f54f357242f2b979c68023029c293f803cc0d7c0e18907bb311610cc65dbf7d65602600aa57834be76a25a3bcba91fd1ef123f3d433cd1851b2dc590302047c435bb50067306502304b226d13a272af45c3b1bc02229ee521fee1ee4792205c2213cf96a7989ed9b9e807757cbe251a509166462de2faa4830231009c583ccd8a2cf7448d8baa2467b91963868183ab7a6bd138fbeffc0f20e919ce75342e2fe85d3162d02f9eaf82353a020302047c435bb500673065023100ac76710022cc5456afdce2fafc6c33cc3cf5844054ea0235140a7c1c2aff1b288af602e488ade826d15bf35549773e000230051ccb1f272094bcdec8b0853f91d177ca4bdd63ba0453c29f763da1f962ff0ea77ca38ff28e63a24d5bb2e6a61cfc640302047c435bb500683066023100ecc455de718db3158ed11537043090bed6602a116ff959b8e2bbaa5e6fee6c81321307083c9eef22ee2eb0d59154321802310087d8a2f9ede0042c8cb6913ab7dfffb06884974a6650fa4c83d5f3334d6826b3699877754af3d46ad1994e15c6df15310302047c435bb5006730650230074c694eb3fbeb731b3e38c8848be7eed469888774c06ff5dbfe623e6a3c3f813589a21306bdeced49cd1a19e5637e8c023100f2a966803d863e1eb1efcd5e493f5f1335b09cbe18b63bd9ad5d526bd859a0888c749c332aad36e80a3e709da987d5650302047c435bb500673065023053d09ecae739873cf74f77a90f194451c807f2bc798916d44aa58b3b77f6f8131e82bfccbc1699173a3ec3853f1e5368023100f698a8314a91babe86253aa8306fb2f4aa7a468ae75fff7bea4ceed242461766f8067e7882092193cc9e7edcdeae8cef0302047c435bb50067306502305b7b46fbed980afb13472d53f94134c72fa5ec25c95bcbbe0bed0b0449cde5079175de54feb04d5f981cdd98e6a2a25d023100f0aa125b54f22c7ff57f4f951833c00b17037466d039a001895cdb9c5301999944c6374d4a6cc888b0f5e7126b7843f00302047c435bb500673065023100c9ba7609b7865ceca671f43ae3173b2e9b8444c8b5fb8e2e8db3875e9590ccf75b53d6b07b488d30a01ee012f9462c9f023013fe967377338dd9f16a8a02ac451362952fd2f521e46f1ea81ef46d9b15b9d5cfb955ca31f21926bbb55904c3c774cf0302047c435bb5006730650230394350846205e6a911600c9529e6fb04d47842042144cd854ec77062555ca7aa6521025e31e3f4daee2bf7af80b9d3f1023100dac6c8f13995d6c9a81fd79de49b64ff794f0c992a7ca4c78c6ca4a761a243c1f55c35ca48b39f27d97ae907f51979150302047c435bb50066306402305c0dffd168b360e8b3a10d7d1d3ce138432670acaa64c3201b793640293de2354b17658747ce67d4e9a579c49d4d08df02307861d7f5d976130275ccd0e569300938fde9bf79c557f607384a52271132f535e25e1314fff50390aacf45ca9f0f497d0302047c435bb500683066023100a49bfd7ef8261261926d4a9b8a72e770d6a24e155061d07671e035104eb6a1c9f38b9506baf19ed8adb2713a5ee7c71b023100ae66a4c4e67c06ec271d464bbd0fffc9f74e58e39bbc4c2715645e35800a6ce7fc5ab32dab843376f7d02e24d5a4f6dd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310098f8be20746e7a5abae3f44dd9c8d14050cc29f6d2943f641cf28cd5671a7a98513274746fc91c96111bb8d04e72dc0002302b65971045d3b176a0f5bc6e697515f25d4f80cb09e270493a38acdcebcdffa254746a8499623628a02a4fe8603515eb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ea66c62213f6102f3871712680041b9ec94fe7ae9cd892fb8cc925ac8bfa29e8afa0e6e5b7399973f1c2d1898140326f023100f4f75c4cadebea70cab64a94fb4ab17b5286c387c51d9c06ecc4f73eb24b8b166368d6db0385980102a430a413b24f5d0302047c435bb50066306402305e0c12a6ae03f14ead6ad23a5e84f0e3355c81bf19a01e0c638013942d84b0c49ae761508c05f047c85148045313edca023061b8d6561be3bd64561e10a2350be53c285420977ae8543d508f499b87bd7e952d153ed92ef050b0ee62bf22d35f25300302047c435bb500683066023100b5e93e5cd08d9c7745a836109ecda939b3ee0902d2d7d2d7ccd17d24bc6e970723c68851e421398eba4b8b87bd8bc261023100f619cdf522a849bc736bda096dbbe2cca3c38c6d888e720fea01c7d71272645cc993f397e48f94503dbc99cd6202b0470302047c435bb500683066023100d8f2415cd743b7d78d45df8f1fbd3523779fe8cd6baf478aa7c4739028d7f015dda18ea03d97eea60ec253b4273523eb023100a5c926d8518d0f9bf97fafb9c84776ce21fbaf0dee4a6ca7ebac58f946e0865fb29d99b70331bff7ab2ab168c449eb320302047c435bb50067306502306c5ec22ad923fa97b6a59728546b6e60d4a8f8387b77052333f0e324031c3bb8b17a63075b1c8ffb49c10362fb5df14f0231009281ce8130dd6470903b22a8cd94584c08697565bcfdd56d955b753378f60cd4bf0811b926a36f4702db5857a2f904b00302047c435bb500673065023100f19509a41b1e601a42a8cc9266c2644e90c7580d98904a7c1941b75ff12118587877bf271f9c56722cfacc84145465ea023026a5b2a58d0466b8863896127fb9b473031e8dafbe403d1a714bb9446ba77d112e1f00a4f206bc4323904289042676e60302047c435bb500673065023100ab73eb77dfc874c21a59e30622023168967b5881ea2921dbb1c88c8dae8d4939958310ca8a367a43ea2d103d4d5f60d202307b410ac661c6184a5ea65c784c0074d0430b7fb6161f54acb5362717687f2a78c0f5596db19061cae8a36651f2d294fe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100daf81496f32d391761b3f1640c69947ff38dc222bdd8065050b320b1df3b684a79a1146c6835aec58f9911f250f297df02310082d643820f5b2e9e8432b5542ad38538bb97fe2c1a292eb633f938b65f87c579f73d68736b5520224291bc411b8d1cab0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310085b1ec8750b314f947f41e103aa028d3e3728ba3feaabce4cf6284b78d0c7a7b47941c2d17b2f2aa911bb44b07af2ea80230327ab3cdfec72867bf35dfb194f7845d73dce0cd0e0d1da72307974755b62c39a54f5b077497c94a87e48df8401140c70302047c435bb5006730650231008237a8a3f327f620853e2f5cda21c43d38186d34d9e12f5c2646af21a3cabd98369955f1ed6427a42127086184fa44ea0230637b2bfc0e07e24ba6b8288dedb4d4b71da06ba6a3268aedfc5ce4d0d2ef22982be395c7ac027bb057fffe6281872e7f0302047c435bb50067306502310093e224daef76940d4094c65ec5e474682f7f45cd76233185f37bc40907669f6e2ab35e324400d6a630a22dbb4610e74f0230517a4822c02653216bc4df8dd1b7ad14661aa93e8eb1b762ce20248978ae1f32080fed5e047b3761faa32d032cd072a50302047c435bb500663064023069f1cb2073e85035f2a2257f271135c0cb80b16d1b3ef21d7ca11f662a9e23288e5fc6fd051fac049fe8ffa5d4a45fe9023074d5da3af048c0dbb99d2f80065c18907a28981769451c8e0ddd012722c6c19ee878c8d2ad5f62be33c8769b5359708e0302047c435bb500673065023100b469192a0e992ca951a1aebf13b6d727a904ebc755e33d72d3a5aa05ad7dc3a69417bf5b84e40b7ad71a1e941c80d2480230468105029ea29808684525ec52bd1c5004b542b674102ad7e42f0f684c8f06270d419a3d39b19b388d37a5697dcfc72f0302047c435bb50067306502307b392d42632e5bb1c6602046524ee43fc8126561f16a17a4ecfe2f30982cf8939878063e8ff7aebf546e6fa731305f85023100f37399abeb2d886eb61f6196cf15731a56484de338e2ac02cd664d1e2145980fc262372f09d5c2dc2a2db9cfdcf529170302047c435bb5006630640230767499bb18648f79a1b2ece898e9e6c0835c8acbf50455a5a3263e90078dde9728b7c4415f025c1bbfe6073f902b0e3b0230567444d6c69044411427b8bb44838a02a282a0323afab54606851188fd7ae02cc6714655d32e501ccb139c39bd2e60820302047c435bb50066306402300635efc0bbad5cf9cc3943272b1541dd444807ee284414712e80a04c42e5150ef4960878b95adcdabb48c8759ec8e4df023006ef8ad5ac9bd8089bf8c943834844d40d7aa8168b4c55ebb4237ecbc688c3135864f6affe7e7cb01159e1233f1dc3350302047c435bb50066306402303b9e4eabe68989a413fbd3760831587a7f36df87e5ee76d45b277c48670ec83c0bdd0cd105eb72ab0a902da320f7a9ae02303b5b26490223d2e9e2fb56d8207ab0327f5e2a6aaad8b15c16844b7f76f960eccb9632ac5ddacd98e985f1892364f3e50302047c435bb50067306502306e980a8bc60bf6a2635c29f2f89d005794df097efcce80fcffe0c1a6cf8160aae85bc4983d37b7e773074ad5206d283b023100fdc24d52d1cc40260e4ba57a779c76a3801992bc96649c3a50e3f2f71938e6210f703b79c3e0f8a11216a097525c02de0302047c435bb500663064023005d50e1eb426636d7ed77c5d363965c15c3047f51241760158da28524a088239f2f2187eacd4fa826e9030ce53a0c96e02301ba140029e05dd68dff1e55861ef1d55f6f599dfbc2d65de96fb7769b142965daddd93e82011ac3079d7897a347582ca0302047c435bb500673065023100ce3bbe6d8a2fcf4de0cd46a654ae1690e50fd1fe61042c60a99c4ebec08309110f306c6fc756bdba015f79322f7d71130230125028b288d728cc3aa1d6954ff3f714fd950a0910341401c758009c5a0a3e20d07590331128a33b1bd1b599d9f682770302047c435bb5006830660231009097cb4edc65f665baf331f8cfa20d3ece9ee004306b40700307038490084043c3d18b89dafcd7a7abaa29e1a27e0a900231008ccc895e5c54d599a12320700f9d2c6845215e90a52c42811e595afad6d42a27396fa958763b1a101a00c516120a78510302047c435bb5006830660231009657d4873cf2a54b4384488e393f90883b2b237199d9a6c98318f08d0ba084cc2b31e6828ed7856757951a06f3b114b40231008593dfd07e139fab23f81e949fb575c07818a128110bb5a28ebee3459993381cff12d322eddfd6d3749f1f7904aa959b0302047c435bb500673065023100e3b5406ad11001f097b84b63c6f5c3b8c3d874a19f11131d8d41d2a959ccd238537491e03e2be55f79b7f9677f950e820230643f92151bea9a6af566fda7451a5883241e39f69fa641efe85bac2f02ec809dddc2b00186c0879a36c99e29b5d7c0eb0302047c435bb500683066023100f73c6b6b672a33dc45d7a6a66a841c66bd50a254744c0008fc0523c414a067094e54563da7a686cf40680d013b60b160023100d3e9f83e9c80439aa3bc704cfe79a5441409f4eeeef25157dded32a8d101dbd693ad0f013286a2f6844eaf4141365cc90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307cc28b16cd1f88abb7d0a5efe7c168dd2db099a49bda60ec0973e0d6135c3d6f7908ec154b45201c1ca78cd799296bf5023069f4af53dc5a71518ec9fd123ed5e4cf887d47c8eddc05ffde9cf4061a72bb1338411dd466dc90aa7a736543bec6f2df0302047c435bb500683066023100ca05b202a0b606659193f2c58578467271deaab103e7fae9017e2e5791c3e83848ca9555bfef71c1083ee58857fb6c4f023100a3bb864cf3ebedd8b392c284d60b32e5a18773639f8197da34dcd545ff4d9db38204ec791f0dda1b6f69de734b8eedc60302047c435bb500683066023100aa1582246925763d4f11f8cb44de3101b71e040e64d1adb066b709a0c55ccc8fb21a12d24f21de7a792ad2c7300322900231009cd2274970d1536394749529948b9c9b193b21cf6379c8cb30417a8d1420ee3825a640d10ef70cd7c8cf0c70aa75dc030302047c435bb50066306402303b6cb19188b6432038ff12a06d7cc3060d4b59538655b30fb28251ec13935a1648587d59cd2437f70dba9038dda2d27102300cb4892c45f0e6fa2246713eb20a64abb9bffa15405d140b4d00a43e85fe84f27673ba45ae995a5cc8b2e83ab74fa0640302047c435bb500673065023100f113f1f2419347320e5fe484a60ce9b2be92412387b4731c2939aedc5aef3cba1752a261bac7f743632a6e54534cfc6f02303e0ce861c6a58e0dbedfc35cd21a6ffa853f2188a258218553d0535db62a85773ca830ffd0a4719dbaf35e4534e73dd50302047c435bb500683066023100e7d36d4d67c0d977a6e48a95cd3efee3e8495c4f0d54d90ef947bbed6a64c258d90988e33d292d2c8bf97875933704ce0231009a02c5478709c367ecc6adf94d2c442a64162c9454cb96c46c4cd4373a3feccda061d8da8e7975430fe98d25c14d7f330302047c435bb500683066023100a2bcbb2e83ab692c471b09767fddcd87c1a0ed6a3fa19920ea12efa8c44dcb4576d95ed3c471c9992329bff8359d9bae02310095afd0e9f3a1f4721f0bd60266afbfe34c041237111a4ae34508c5a90adb1d786016241ed187f3f94030be76ba002c390302047c435bb5006630640230673a2a6f961679a03a3afd43c330212d36dc80c7425d2d1985c88a220e284a4f3f7c4ca2e29bb5d55c696739676b097e02300b18872b194f65e371bfc94c9486b3fe7f8c7dfc73c9f7be4a5acefbc28983a6b47b23b93784d6856dbbbd0f820d4e960302047c435bb5006730650230422639e7c7a2f057d0f4f10b913db0357409476ac3d1d1d78039ed9ef3ae7770b22e7947d69fb1347573612eec747544023100bcb1fd26962e0df8492650fedfa7f43e1d85cda7d38004de59c88ce6cbf43549d0bae2fe56d625c566e275ee1ba0a1860302047c435bb5006630640230433e0429f8c2500d17889ee9e5da5cab6a555f6067d46f2a13ed2c75288ee0bde098f80dad88c9423346bec89bb3326402302bb933ec307fea8237e849d43c37420fc91503bdf0325aaa3bcfb09296826a1ea67e91c902676b12fe8d1f85a0fb43b00302047c435bb500683066023100f2ad5e191f54984ed951b961959555437fb37996251514f7593d983dc28b971361705a9d6e01526a64bd437f48a696d3023100f2ff5de9c2cfb89e438a171e8a2896dfc4e82066827ee2a2965014d95703503fa7bfe926e21dfe6c8aecbbcad6f69c1f0302047c435bb5006630640230091ec58d015b8646390626ccb75f8cab65e81fd081e43749adba139ede249016c630bdc252226ccda0eda131862c2d3b023007aa5dce459d9eaa4548e9de1ae5d5712d8b2b22c8d94b4f18f1842eb0dbd400bff1ffb4179e8201a054646d52f517f00302047c435bb500683066023100eee42029cc3090af28b64e22f9a271c096922fcb3653c254ccdd63be295fdb6a6956a231370dd83bc2e4e10618d7a77c023100818e82401133d0ba7d9f39a12a9f7219f0eb607210e60a5e5e3e1eccca6d38d0f59495efcd0266d79296e74f5f6ed82d0302047c435bb500683066023100c6c8454c2bf2f9ed67d950b2e7c2bd21b488c7d6374271a93a1201eb11bbde917cdd787ddef6515a5cb610ccfa7e3e64023100cfed5b5d31fc24880b7866fa4f5b070e296d0b509056e2203c60b6d1f0c60fed4b35ea0ee238da0d95fc4b115a2c67870302047c435bb5006730650230570915c3bcd44a13b80a831734fbe13109f69226071a00602b3093ccda4f4454fc566c3d4c341b6c8aff111048426bc5023100ab3eacefb0adb21e2cad4bf6a8e4ae12860f0918c60a246a4bfcadfc15c91b09e3015624bcfd845997413cb10df457960302047c435bb50067306502302f5b14090f9a9d8ae0006eda17dc089b988d4a86090c291d949c37596b45f2aa1422e2441ede0c434d149493d8904279023100d7ded17ea433a4fd1e44a3dacf8ae0803ec31b7767cfab1c1f5f489c05f01b52d33fa8d0d87b3dfdc316e90c956cb0d90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b6132bec434997653b18d94d2a8724b058856593bbb41cd00a3ebe7f98c2f93e339e5f4673dfe29f8cbb78bb6088776c02303689d804518bf1edafae638f9e7f3bcb4919a9c05b497848c26a9ec164a2d6beab7b893a6ca542878d9cd7466abcf4ad0302047c435bb500673065023100d2ed427a3bd3a3896e4bcc456278a6a859cfa04a334f1cb44b316da22ab1a0627bf75d79d4e2d83296a58384e8bb5eef023037112e888958ec47e1daca3a334a7aca8749461e5114a08d171f5495251bacaeb31db1c2bff99c313367654121c856a90302047c435bb500683066023100cb88da5590a9f838f7331f9e43f738e3a3c9de6db59c0f1b78657c253dbf7c363b9c6c7af0b783aac689e52344a5d5a8023100b5ea74a06e3497a6bca9e4e45f9d40fecaeec26e05100c2b5c152485b523aa385d61d4588ff140bef6da89ffee955afa0302047c435bb500683066023100c76102e78f067f99298b7aee617af669686800c477b1a55ed550cca7dca6becf90d1de4b2882d1a8d1c52dbd79d0fc34023100cfbc568859a8d0b8e22167a3455cdd033ae3370c35bd89ddb2a1b16a6ef35baa2013b757c6a906fc3ceee8c92721dabc0302047c435bb500683066023100a395d01f94d35fbc22a017c1695537e97d099c4c8e590e2582ae8aa0649342cbb2ba621a59c326bfa4c54b1b74822936023100ec08c1f16f31d13c60b70fe659aba2e996f6660aab07d3416101f86668d32689abe0d40e002a7ed41f2a4cafec1fa9ef0302047c435bb500683066023100fb9dbb5c44da7ec0d1579953c60b2b47d907fe543f0aa0d07e0d4963f35943fbc1760e4c68c522d8207735b1a7a0512a023100c9dd7925fbbca2dd7693d547ea3e7fb1e3d8ed69311ee0edaebbbec1df7abf4e13f87034896879be20f35c15ec912b840302047c435bb500663064023022a439bb79fef6ede0fb467e96be157d5414940ae1fe06200a728c5f03e4162e020a8c902ecab9fe99f8f7e434cef42e0230255ecb598e53615f9cbb57e0349e4a9939dbb556bbf75a4d4b53b037cfab8579ff1dca1c080269e921b1d7849c5c37800302047c435bb5006630640230113c3f009feee21cb2f20b1b165e4f941bf6d258d8a7f00827b7239df3894f7a532a8b0d48567e25bd22df33cf64440a02300a346dc9d98dd597ec2733ce24dd7ac5346c8dce7a02a6543772c7792c16d37d3633a6c5feee31b2b2f7e42dd7bd41280302047c435bb500673065023100c3c7eb1f8f4714cf8d7fe5f8aed322dfd570d87c99505509861293a1f4f85fa1ef442201b2e383a85956599467302e0002302d99b8d6e93b4ec47ab203687b391bec3d7b9d00667467e805595624a39e83a799a4402522ddd49ae9883b3199c743e70302047c435bb500673065023021fa3172d2409ecd5d87fd71b8011d2ee276fba9d4002dcf43460f1f47d360203203c7ca88ba10c6c7463e5b4ff164d10231008c01a2b279b65ecd42db58e07583bf16fe0745ea6de946305c5e8ce3d66ac1e0557cd6ee55d50eed351a1d39eccb0e620302047c435bb500673065023100e347b67a75654915bbee12105c184e465dad5a490c29ad90612ceca2d0b24e9a901d572f98c8d3ccf17d6158ae2e468d023055db479128e9a79638ceadd5083e1f622a4883436a23c5c79018c993dcf03a82ceb9af177e469dce095256b82231c1d60302047c435bb500683066023100e9d1e26ce98d60f30205bb0da46c61423817a9e82c93eec44c70e13b9eed640bb4bce6c043a24bb062458f841809286d023100a320531be3b65b8fef5a433aa2316d24e2c752eef3e4292fa63b21907bcd4edecdb572a92396ebd354c9c46dbd54e5cf0302047c435bb5006630640230516ebc9e61008173a6b407909cde366a1e8cbe1d48c5a92fd1e9f836f52a21109d359fa852a91d39405f51b7b7d1a30e02306c2aa66d3fc486834b22d9fbfed85d32f4aff9c9ab6d3d0b0cae8e51f900a6c5416d21544ac324274d40ab7914c30e390302047c435bb500673065023100acd0b5937708c48175608aa1af316994914edeb580c8e68ceb6db7922652efbca46ce707f430325ffd3dcc37c22f3471023016c0fee554771ba440fbbaa3802353dfd01071f3df023b9dad745401a7733388216868a6250000ead0939b22e835b2c40302047c435bb50066306402301e92e50a620585d9dbbc5a4f91a015bdb0ae5eb848f70cc60f72fae3ad899bd52c7f29a753a10d019359afa08346ce65023058a3a5f97f861f647ea62b631f728a3520a9f7cf42f922784b258796bf03b3c3d2f6cc380212e9738ab7025a0177fcb50302047c435bb500673065023008cae02d8ed774555a5f630a1c03338d68884b7666bc0f2ad079332f6af643b7a2259e5407e225d90bf25545160df80f023100c58b7724f7498b80cd3b99b1509b86f2546359e460623575176319527c71b52036bbf28ee29cc68f23d2a0d951e547a00302047c435bb500673065023050158bc46544f64ea7b0fc759054e359dfaed36a54b0c6fcbcfee115fcc5feddcc500becdfaa27210695a579e2479674023100e51ee8132640dd6ff53067cc6519779ef25f60989c214016f1a9f83f75fe495ff8419242cda7f67f7f913024efd3c1c80302047c435bb500673065023100b55b8c639e85b82d464494d41bd4212f2419bb8fe69632070a0c59ec5b0cd0362008b134d8e540b72a59e7ea3aaa84b20230770ee11185138281961bc56f34dbd32b4d30343e0b1bae182d0327d9066ebddd18cec6f6c5063aab3776e00a8a901c2a0302047c435bb50067306502303e4be1f0952645afb3fc3e428c048cdcf592e3f81e2fb6a2af87d813fbce6e4ff3d57d0ae41b1d0136bdce96a6d9b819023100ea4c94a33b1cace7435116c2d2171a85d9c0729227274d1263104a502a0bdf8b3cc0c807a4a1d8979e0795dd72a0fb780302047c435bb500673065023070def4078b977e2f918c813652e3b406860d7fba09653540a7cb9ae5fbc5cd2c141d437d6026f560fd875ca18c04556a023100c32ed57d851c50ad6e9b7674c0bc4ffd16c45aab8c6bee5aad0bbc0c8cdb60579945a8fc7f60b27aadbe60bbdd6203b80302047c435bb500683066023100c0e46430e5b8d62468ebeb9f96699a0982563531e15ffb961f081e03d20d291edfd9b1be375cdb2b517b83e08527352a023100c0a566198bd3dca5c3e9e4518129eafeeb4f211622865bf276a20c14c61ab833e1a0f7f9dbacf0f4490af361c646179e0302047c435bb500683066023100b6e6b6500f4864993f18cd9d3f11f32415370c17bdbb2554acc8d4c7013a98b60df42b7872fd4b7276687e60d4d8c95f023100d4d7008744f0da5c7a46a3e0d85e4c4562c7dc321f5a0b57f1b835a51604d1afc9bfaf5702986076666a516850ba24980302047c435bb50067306502304c4cee4e7444d7d5c38222a2141a068a185d1b740edf9ab88f347c8ac14928fd0c50253e0a0d07e99dfcc1716f25bb5c023100ff87f6c08f92a326daf7212ebf97cc60a3659a8082b25fd4ed769b50c13be2d02d4fb4b37ea229aafade2a08c5b1e3f10302047c435bb500673065023100d9a6bbb74ab386bb2ca7bcca8a5682673597d0a079b2700943029f57c724196d73d434d9e669858f16dbd532a79b465202306eced88df562cf7646467f330d29247cd217fcc2ba2a6afb59e924f8ed2ae1ccc8bfec7f521946803136d9e3e5a825bc0302047c435bb5006830660231009b8e3d37b7717405e56437398a7c618ae4bd7b7abedf718fbc326a3bc41083e3e8ac8c258b2a0972f506ca7984568701023100f4eec38d2e9f0780bfc28db29d034486bce1c3ff89ecf72854a2cb19d7996dc35732ccb649f1d0250716313f43a6b1680302047c435bb500673065023100fab2354295666b0ac846e9841439c56ce0853064af83036aa1aa0e00c60fd3236cfd9375d6830486afbf533a394925fe0230084adc4a1c8e4bca318511b8b3708ecd27c8b465e1d10630db817b876002c3ce2ed7ba4768b7268b289390a40bf9c8d60302047c435bb50066306402306a414face8788ec6fd4c8c85a5c948bacfb55df79b07ded311eab209088182db242f0a5ab10f3c7f0fd8996f38a1239802306be5f513685edfd70f659792c5c23519cf1df22dc0ef6f219039a31133d3d9aed469c715df7ce77a69db67541d4579dd0302047c435bb500683066023100a55c1c998b5ce97fbbfbf840160054873dbff4935680720d0d279bc610194a85bd75dc048062f1458e80e36d61aa4c49023100c7eb470adb7edb7806d4e6862ebd1c42713b058881f39cbe3306d8f5902fd0c3b822a8524d9c9d2a2401fa1fa044e64b0302047c435bb50067306502306395040c85dc6ade9e8b7c664d0f0196d3a9c5bd354d6f1721551213b4715356f3bc741622028fdb3e02021b407945e20231008531d02ee62504475cc7f3231506ede4665d76745ac9844ea433c728e1a0fcbca86633b6078f0cbff57fe5e2612ceb100302047c435bb50067306502310087a65304755c16301e201620f4e8a8183fbe3a7c4332b18de7c388d60f079c107e13d68493dd1444e31a4505cdfbf162023009e429b856dccfb01c1b529a4107d257a195b053b85bb0e77699465bd5f3e99b11443bb75fa196bc86fb0fe7fa5bebb00302047c435bb50066306402302f243c1898d5e905ded62fea3870d941262ad00cce2eb1b3f3d1eba6240337b0d3066f0498db23379e7398342f74854a023015571ce656a231ed6ca0df15feabd2066eff19989a7fe7d0f418e77e67588fa3d031cc6f8957d730c4a6d2819eae6c590302047c435bb500683066023100819f1852ae74edc977df49914bfd6d3e92a6180053114f4b974df245ba04f068ca568d8619de55af41d8d7fde530aff8023100943beafbc677ba52fa31d59f4970835bc8d7c5a631742a7ede74be8bc523a9f4bfd1d5a5cf5b1c217178f66bdc7928fa0302047c435bb50067306502302eae9db972e083610cf90121145e2fe578f0ccc84318f0ed91c5640df5e5fa2582fda338d886d1d59ec7ff678614cbd8023100952f7bd8a2e83be533bf93ac6b0048ca372c9160ef0daace2a1abba3d54215fcef656170364808fe9d42920d0aa8d6c60302047c435bb5006730650231009c429a05fcc615806070f3d115a7b9f1207d7cf5563db06a5df8ba015909df26282cb0e0ab4ba8fe664f891fd67b501e023036929cc97cdd1d7f33849c188cc90c4997a2031824cd55b8c7aab374088e894bf5a0d7b1ff990032683cfb0788283bbb0302047c435bb50067306502306b415670d9ff09931646f09e1c7512d37096f5312e81d1e2c68a86494e5bcd6e0d7cd0876d517e9831164b26dfcadf80023100c1a05d8d72fd88ad47d80831b91a412c752ecb648bbb4b2b52c7d6bffa3e81312261c000dbc83edf8393c95017fb61be0302047c435bb500683066023100d1d5c104cc90ce4087eed93df3b2d08e80c649aa50b5699714352e14d3fb072e646c7ff103f0834b88c57e6a30d8dc16023100df794c0b49684689b99b760fc2d01191a2390f98b5e0cde65f8231ce8e1db33050f8a58915c2f094c01e5f6087be03d20302047c435bb5006830660231009c02a205b52ff84d9ea1c9df57e48bbe45dcad352337ea74e4a69dcb3db230dfc7fa5455d27a59bbafd8f75cde6f458202310097abb0e756554645856c423cc9b0213c733755159d0b60f41164a09faea4a00183ee1a2201682d5c0ff4a473b74be4620302047c435bb500663064023048a7343287314b65b6538c6f9f8ea4d8c2c7a22f139699979f13e55f1784a56d9a29911cccb1d29c908f39ce5145d47e02304c5140c3623bfb26fd53b6b48212f68e68a52121043b4f398cdb0b2e5182389f6d319b2797577b075b6e4bba2b77b3bc0302047c435bb50067306502306b2e230b53eb1b6073f077ac2b71388aa4f37641495973b9b778bd5afba7ad89012c085b01aaf88f2e3b4d9c4afbc41102310098577ecae75253c34db60ec35384bcce440afe3331ed4a6ebc317082d0e411821d4594d74862cb65fda823aac0e00da60302047c435bb500683066023100f497aea2ddd49a093c06dc0a5681162686d7f8b3664fd4d4f3865d449cd74daa18d1b64865daacc57b08d53280dad21b02310097eec24ca8d5e682f3a5753a17a304920a03ad3f16c1ec263ff93a25fd35e3b06ca3ae36b16bbf9420c485e2b7708b5c0302047c435bb500663064023058bf8fe22b4da7031b8497b441b29c7064f910ea3f1fd34eb75cd394c7acb21f9c44a45db38c8120424b494ca8d9d6c002306ce6acd2fce3973d29397d517bdb9515d2e93b03002a71b451bdf6285243ea8ad917082f84dddbc719abc4aa60d75f7c0302047c435bb500683066023100a711c342644cc8d6d46e0b68334e1b33674d19c10c62f3c2ae6723fa37a22a38b4d3ae08fdd9afaa8a03c4c429815f210231008f3c668c992d8ce7865cc1416f38df3e4c0340ad5444f6d6a85f7e901b76fba1f44be2368d486af857b47a65faedc66a0302047c435bb500663064023006dd885dab766a4cf80970e40e3b270de7fc6bd964ba6f1c1aa067b7c3b405888abfb4623ef45c499af990280726b6ea02305fb45a59c6ea17f5e275aaf70878529777fe59b738d028cac99a679ec7a834242bf030f9c04408d8377a554fd5abfd340302047c435bb500673065023100a30b342575559ef7a8d6d09f090c9e23d0457fa61beecb6130eda0d67067e91c1646e8aa58dad034d6ff61d83683545e023009363c3334c25ca507af831640b4e3c43eb1112c2563699e69ade8a3519e8b3f65bfe8b1d522b72d846754a3dbac78790302047c435bb50066306402303ef4a441ee74116d0e825cb80f9b5351c9126a9c97fe860f558eb201a63be9026e4a39dc366c15cd3bf9d3f35158d27602301d207ab38ae01d858b426ddefda3ebfde9b5d3a76a74a604e7b0ee243980a6d36965596c985121c9292aa592c500c9360302047c435bb500673065023100e94911f07002aa3dc6726c96a9ffd8ee10900598fdd87ab30091abfc7a612552643f04cd9e0d67426e56354ef1ea2e9b023046358c25b8725de45da93ca6d6500facee64da5071db3c847006bd670f27923651636a30f18c2b871ca9ed3c223d924d0302047c435bb5006730650230256033d5986c46dbb18cc13efd00549a4a64f0faff94dc3009b4284729fa607d28c8b8e34d10acd32db75ac0ded4673e023100e87434fd2c4a01a0c44d9905d564b6bebfdf1396cd55313daeb591274faeccf964c725df5817151c74a3336e388ebaba0302047c435bb5006730650230400cd02c5144e2cacfa4ffca2867f2025467de0c24cd0085a6100c3181102764e664c375d25ecf26de07a1ef416086170231009ff8b8073e1949f0db6faaa286b44c2631bfa5e57ff1ba592d95998ad7912e4d3614fed24f21b342298fbb5a847f94410302047c435bb500673065023100b371db7714a3e1365bc1d021fed10dfd5b472c24659e4ab40a8ca060f6fffe460315165e14d0f705da5c9c00370c210e0230241bac504c6f9963ed1c27d5ef6c168ac119035e5831a1c01ad9e4d78cfa88b01f7f9fe040b0d54e9accbc81fda603cc0302047c435bb500673065023100a129d822165ace590ea76840ca41bed5a7e90ce2f86cc4979862c79b75f0434bfb2d4305d47962a06e3b5fdf882ab51d02305327942a827816ee73392e4c3f1a7ddd2c31a2e09df323d109a004b1b8b4ba97cadda9488363f638f78426a16f108ba80302047c435bb500683066023100fefd4b6eb9d167cfcbd1d0674ce2b0c46de97b6c3a92eff51ecfe4e1b922bd08df40df2b23c6269bd40fda86a6a6d4c2023100d4e0e89af39e772e25ea529a62fec360262e6a3ee24b4fbc7ccaf00e8a3250272798d82bd28f86d8e735d537913129a50302047c435bb50067306502305e7a893b6f8954de289e45c6897e4b07307bbd6fb0fce39faaf82ec56aca55320745634c73cfc0b1d237e15b68b7e84f023100e0fb8fc7852c23b0222fbe0ebd354f498d726b1b0e1f95a37bcafbbb6742c93ffc55e97dd750894c2c62ab0bbf7d35e00302047c435bb500673065023004e933f0c22300c5f99d151a7697e88c4ae6a02945ebec83567d05b7980a7e6f4bc777c57bd7647d91a3d22b875c11cd023100aca0e8e13f66d215b81947982e53dada1627cbad391d3de6b50d5cf81d0a099d0c5c3635828d2eb0db2cd7adc038c68a0302047c435bb500673065023076a4c63d86d65b7b65b00a1db990d199ac8107ed7f9ba7c1fa1dee19c530823fbe0400bce6fa93f4e0c87738bcaeaa1d023100b2f8f5223c5ec92b743a50efee017e4de1fdd424c79b3d1c6a97d9f9b9ec3d5e2c2098f05edf3a941808a84e37c99a2c0302047c435bb50067306502306fdfed2d8907a66fd0154563e624d21d91935c976966dc8f772813edd0278f22bcb78dd526477afe63c548510ea12150023100a6379e11113f8b3ff647d0342c6fe64bb7ac5b6cb00b64d7b45d770c80cb9df71cf66837417f7a602cae18b893b914400302047c435bb500663064023041b9cb11784862cf558d196af0b7c7c1a22d7848e677813e21657514d9305ee9401706a06e18bf901d560fa959f1910e02304ceebdabd6ee1289683daa7c40bc483dfed58aecd4541a84693da2e26893e1b0a72e706bfbc1a944c78b5a66bb2e4d590302047c435bb50067306502303f2ce395249c37bb33af42eef768045c854b5298ff0dc73b02ccf12f12433edbf850cf20abd3a5b2895b8fc24b039e48023100f585ac9ca4acebff06b5d19d5ade2e4efb9b07ad82e7504dbcb94b77c66097ae918171370b92af1a77a66f184dd126770302047c435bb50067306502303ff0e7eea8bd19c241adc36b89ad39bfb362c5d55a5789043876e8a893be43122dd33132edf71add44d91a450de66c73023100816b1291bd4169e0b4cdc1e5b7028bf52859763fc94c7c2463e0045497d290af2d606c4217f48c2439b518b6ea0b6c2d0302047c435bb500683066023100e3c1ab02c8f757f187363fac0fa3098f58153193441da7c0e73b1be6a0f6f3601c3fbf05d45d1f2c9dfea62948abf5f6023100b82a496ab7d382c3afec7938b1b3c032bb58e87455ce64ee8ca176ce7971cca874b13b32f51c45c79183b67d9e147ad50302047c435bb500683066023100c6970a826b9d2fb4868a3b20655df06c37b8e302002b5e1c14654dfd8fcbad0b438f035bf8fcb2ba38de4412b22c789f023100ad5a20a7668aad6a4eb667a1be6b51e3f98f268ac0bb2151f541902166d890f7a06cd3ad113f94eee35d8afe2f625f180302047c435bb500683066023100c588ee972352854e1b7c19bc9330b5a76f4f4e1a245a774da70fc726e2e76611141976df001320a2d68791b1e0613cf4023100efa67bffbbc07124e88be8150c392e712883a6a29b368505411073feda6ab64cd66213c9a022156b9827ba3194ce76930302047c435bb50066306402300e8016ff88f046f8c9ed8c5f11aeecfc3881b7e8b37e6f0f10205df5dbd9824a490144f6e99b6841c46d76e7b2f6ad6b02302292ccde28c69d35e16a6943f7d2713d9dd52e5ff649933dd7849284b590f6680e2dc76f0d9981a6b9239d6e9576c3fe0302047c435bb500673065023100876363473abaae195b58d65fe196600d00d14be75a0153f30ef9abc09ec59b02d5da95c55374ae1bdb6b2694a39f8430023069fa84741945b0cd9fcb151d00f5e4ada4062456a5a3a271ce82b16957a1b2c4010ac7085ef65efa27e9e820140c8b6b0302047c435bb500673065023100f84fc92bd141baed61f149377b6c0cc5c994f12a31c93f10544472ab89fb1a8ad65fb75ba9ca3f2db0e74de2bd327df502304f21c116dd10d19b0baa9198911e498701fecee89dacf26b0549006c895f13578bcd797c08fd7eaf7dc005ec95eea0fb0302047c435bb500663064023032eb3a81bc710df7a513bda2aadca3a0392901be78bc2f3ffed2be931a39501f5cc64d6cf1eb3f2e5f2de217e6772e33023043c4dd0a2598fef2f81a7c005f8177e2c0917b8fcda419d4947c81ac7f56bbb5ba040ab4ae7ac0a56828d48bf818b41f0302047c435bb500673065023100e09b8e90e65fe958b051aa85ef8db843a5cd36db4479566c36d425035a042cd1966d0002adc802eb797409a91acda1cc023000992913a15479e9f3e0a4e25c13a1402daed14cee9198c004ac65c5f752acb33b22edf530187527c13d9dccd6fdd3d70302047c435bb500673065023001c16915873806e8f97fce346c44816c5716b0439cc17ad8e5979ef8494f72c5c69aeeee563ed0d6fdff944aa53adb39023100ff112a74bc7e07580dcab6c4aa2bdab2d5db26473a38bebaf77955a5748bfb7fbcf3088b62a6d7dcb110145f4fef32180302047c435bb500673065023065119c866e6d7861dd33872762ef21c93fe878ce682f6d623819ea36c1ee78ca0a865b8f2081bdc802f78266dfb3b28902310099c2975616768b3243ac5a4444cbbccac8a0888ed217268524dd9f06ed72467efb2ae07fe6881cbdc494d6fd0003aa510302047c435bb5006730650230637bd98ab5c99549a67f10ca033499a0d080092092c3f9e0c1a74c3b912039135eae0c1548f6eec86a2edd360fc98f70023100e927da130ad241412eeed83bb4d9ed0426f7a1473c91fbeb37f8cdfa026e4ad966a5958d43981145ef506887bafb18480302047c435bb500683066023100f603c4e60b7c0282830a9ee3c17557e1989fe1b4d6a20beeb0f2ef87e559a183470531e36f36e2d9039e5c245a53e0ff023100aa8381e903ca4df4cf67df969cef65f78427f1349acdbba7696b9e055e742f7b0ee0919a3836a197b589b856833a954e0302047c435bb5006830660231009104a12d4b2486c88d9d04c6aa7c95dc3c4698f4a0a3414d9b238e85e900a754842519f1f70ea8c6eae6a3486ca7e086023100d935a891c387118fe5354c12e565f6ed12263d4fb5c558dd670d32c653f00edf0852d8c259f37600a73d74ddfd356bcc0302047c435bb500683066023100bd2d50c3f025bed05d11228c9d8de78e8f40f13ef766265e2004df0be8010dc79d15b8aa40895e93ff69a9e06fc7fe9d023100fbce612ab602190ab3fa3ff4d229a7e936a04924d848e3882012834c5e98b131cd7b3ab4dff9b18061d7fd84b93cba9b0302047c435bb5006730650230689abc07483e8ef38745de2bf7e467c9c1917c010bb8f65b932ab36248ce0bb9522b10ae878173d034a12fca82588c05023100fa4e297da77f48c474d2949f8b7bd262731026e144d75705f64c2624f70d5f2c37fabea88571734674b1e6f1f45502eb0302047c435bb500683066023100d3af96e7a07312d5bcb2a45ce41b8daa9e2ac6f7f796ec4a06b9d42f6142b7a697fbbe795d309ce2d7fbfb17da6c3beb023100827029f8f7985f7d4ec463cff1a450282f6c3b85a5a612d7784ab6338581a8ca0ab56ab6bb54b873ab7777249b2649210302047c435bb500683066023100a63899491650239739924b8d643db6f18d96f07e51ddcf1f7f49711908d2fe1b8df73ec003258fbe9a3fa837f5aa9f64023100cdb3ec434b3fc7795ba6ec5900072331db18599bac06c4a531530908c7984cb9dff869fd45039ec468fd9d78f041e4150302047c435bb50067306502306a78a8c0494aa3bb9333d4b531f06532f13ab912b0a736ce26b3da1b09c34f2eb706da977f83c2856ffffae494be33c4023100901bbf6c6bfb6ad72a35883d79617549933a7f5b853de2a7311997e481a872a74446ed23963cf982d139a77e0fe003a90302047c435bb5006730650231008dfea8daffd8eedc1940cc37d4e110bba74d38468888f31ec94d40e63e60f476c42ddd96cf24eccaab4fa69ef612f096023006e13f6892b302d95b3e29002b7c4c8d71e5edc9b34fd6961d65c09bc9af5b0d7b6dee29c208f8fc415a420447da1f2e0302047c435bb50066306402302f6ee61c541d40125e6c754fd2b6b76a7b5c8ff2956ed3a488832af6e43fed1f08a5464b4eccd205622b9346fdbf306002307d9eea32ff65c1343ab9a82688ebd77a4d016986d7de768b64acc028217e9c0a6f4e155a83134ed2c128a1d10e43e0380302047c435bb500673065023100e5019536de7ccc1eb5b91bb1e2261302506d36492ebd7daaa21cf3453ccb8f0dfc6d637fed1e3604fb7ce97e8785566702303eaf5d4457c9684286aa5fa6ee41bc40e0c20665daf6053e8aa3e5df89fb35c071562efbd48ad862d92092ea06a0f30c0302047c435bb50067306502307e1235054edcbaad8b583d36e3399bc0a8e999aaf5ce388df6de4e114ad481cf1b89efffaaf64d9bbd4ca18837015667023100e1c8991150eed3dcde808be1d86377fd3572f880d77dc8932155df93c7a993e192f821758e41f86f1ddb89cbd4b3cd630302047c435bb500673065023019a5e2604abdc21005630331f26cd2a8a6f90c003e952971b255c6066524ba74cdcf866b8d1f0ab7db9ccb877ce5d7c7023100f26369ce85ddeae7bf521634bc0fef6cbf9441644751c15e26e825b68e9d05e009bcd2b9067d6f09be9f97e2741fb5ef0302047c435bb50066306402301b0e0553f787b12a2121a2dcb04fd8638039d5e348d07bd198bcf960d5e9b2d43b672969dafab9dc31b8d31dc0b89c260230423e616b29bf9d087be87652481f3d10575221b9a2a3e24f0e7ea667bcd4b3748eb395c5cb446bfbd4a2aba19125da9e0302047c435bb500673065023044d7d47cd117ec94db57d7a32bbf3752244efbbc0a9d5f1cc4a040369f40bf3ac3cee3a7be10ae7c8aebf1f54067d1a8023100acce0ecd95145fd20aec65221c50b83d73be4bd09fc031b5cc6812a72af220bfedc1b026bc76950f77968168b22bd02a0302047c435bb50067306502310083c43acef8a794e187d46f81714033a2b9a53d3f5ab635560b0bf5613d224d57b7e2de9015083646844cb6c6376be8aa0230719a33e3c7c210f2eb282bb565f0ae9fa2b297186843e1d5a13428211e97eb9a90a0b41acdcbccb0e16653c214f553f90302047c435bb50067306502303f95394380d8467f78c1e6ad2b603ac91e3f4a266abddb597cefd6cda95c90df1bdf1a9b8430ff1ec2029be77435dd690231009c766306896e8815b82cad212437f9b790d3e4114057698e92ff246dc4315aeabd1a13ad333c38233b74ad23d46129360302047c435bb500683066023100958ca3892b104f6e019b4ac579cd31cf0c67149238e2f7117ea0aec6f924f454d0aa6698bf87e4a70bd466eba6411cb2023100bccfadd4aa6e7c0c6b6fc2f1c6f60ac6cc35d371d931ed31fdbb1cf663625bf9ac9f5cd8f7a460ebf44a4b7aab34d1a30302047c435bb500673065023100fc54aa9d31366800014bc4bc097f46c784bdf8748f0ea7c322527ecae036ddbae1efead1b2b174da13f24705281de11802304b05b73e1334f7809b0f588a4a173cd5bdb72e0f16a642f510a1d7e077eedccd30efa3d03967d08b97303ff824a448220302047c435bb500683066023100c903d3b3742f8a1e4a24fed349449213a8323ca97bee98e616618297645ccb692201a3d1889d47aef652262c6bb9cf1e0231008a2dc11f733a66a8c3988f16795249cfa3066fad6a932006efff99d128e4379a629f565def28cbe2232875c80e32849f0302047c435bb5006730650230357b58046de3abd046b74003b210bbaa920e5735082fe5afbbacdec5a148f65d0eb80a956b7db6c33710e7cd2a8c7a99023100eb22182fff1d4f890cc9bbd777be65a4c27bba8af6518556c8c582b53a6a99800f342dc598c5c78d5387aa94e3c76d460302047c435bb500683066023100e5899071d6e0e733f6127dda2219accac83d6a607dae9a9954ff9ad8d136ce13b9c17e842753a8f47f10b2269fee8ee2023100d31b7c03bb0230f268e37ca41c404b861f519df12c9a2cbc8c6b17f21e7bbb31ba22cc6d462b394d42f861e191655dcd0302047c435bb500673065023100da70fe4a6cd521e6675968cdd0a5dbb26f6f0e178a1b638cdd21039104873e378e2f70f352fa4facc48722f97420724902300dc690edcb3cf56e9925127a5d5fa5e0084749875efc6b68621fde85b562f6910d446893d84f59cc05d252981491eb0d0302047c435bb500673065023050b6161654a93ef19fae067da3eee4549d2fe9f3d935167529a6236020f3bba646dce4f5a1e2c985b02cd926a2f32856023100e037de791e04b2c9631f846eb66b08fdadfd9633c537ba0aaf1f0793bc03f1816a94ca264b12209a65e74803c03d286d0302047c435bb500673065023100cc2dc9c19a2389f72426f848427491b976191d7b6e9337118b26414a8e4bbf2d3a2963aef03f48c7699ac08b5d8afedb0230520f32a83f91545c845a8504c115d941ad57caeca002b12dfc3757f4ac8b4783ff550f387521408e41224f02f3e4ccb50302047c435bb50066306402305421efc4b4f116954c16632c982dc93afb20600071681d8edccd1293d34d552c110c7e98c78a864f3b7276dad818eeb702300d258da4f8952d02058f7e3335dbf75a8365dbd348112ef7097f4533b43c27625d3094ca1cdb9b66b2632516229703630302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e24a7103881306d4675279f8a2ae8d95a6fc067a677b69e2c95e58f5ab0855a35a01d6c614e906fe578bc9554d72cdc5023042d0bfe87260d6159f7c89549fb03d61ac97c1c7ec17cb61bef536d8e517fffd24a249a012f6abafc11b32fc758db6fa0302047c435bb50067306502306357972fa0b256c970babb1ef5e11ec840503cc62a30add7bbe19571be68ec34e200124baa34527b823d9ca388d44b06023100b4aa475ae93fa100d135c92a81fcf4bf26ae54cb690708d2c633ef10f8cc69a2d887631b87cfafbd1c39647a4d39bffe0302047c435bb50066306402300dcee9952a0b88129a4e86ab180a6260588eeb257387c7438fd1777342222b3e6bc44e0164804b6aa2697951aac21f29023034573ca5fbdf03b4b36104751e677d5413b9edca14b4d29f23f21408b517948a39e46fb0ef8c75884a3f0c01215ee72e0302047c435bb500673065023053ac605188f275ad1f601204281031acb6e5919521860a20dae1c9ea7bb17883e443a9a7223a16951e6665d197a9a0cb023100c472b41be6df1168b6b1d6b28391c4e6c4619b52e10dd0b303dac181b417be53c8eef2bfae8dcf365c40219abd008af00302047c435bb500663064023051ab55558b3c41ce38bbd0c301de22beaa258724fb70735d5809597ef64442bf9f18797e90c6a719531c38348eecfb77023050f2a1a7074c6ce886154490ee61bb2405de02b57f1effe524d92b6887736452169e1d0b479d07f70f7c5ee20b96e88f0302047c435bb500673065023100e8b100f00267394c9bc9ae31595303c8914896d3cffc42a3600cb67064fbf943c37b1489150b8c4f7f08a20c0ac76c4702305d646a4114402f110fd8cdae0fe2ff71577dba26c8afca03968a79f6dd564cb5bf64bd7f75243012887af81935fb70be0302047c435bb500683066023100f6c2b692573ccf5e9f743fc01d9126e88478648038bba4c465e2fdbd329a23fd78280a1480f23c89c43f8eebfe877752023100e0e6e4c827f5fc2ebca48e1c26c3f0201a4c28d1f9b05a247d676039dd7800d8512d0b6de195a8b31a0b43a611a4f4f30302047c435bb500683066023100f1b701ea480d196a695271c172ce2719f6b00b7161ba98d9a184a22fae13cc1896a876186a3bb6be0a6991c1c16b9b70023100e56656ffb3595cc5976c4d2007f706bf0b1b10b281f55b53844efa9fa28d4636a20ab70baeb2e6d0fa93dea036b1df4a0302047c435bb500663064023004e49cd1c19ef4e73248b9bcda08b992f45a360256e9625de6df98b7fccf970f6d9c4be33bca5957a22cce53e31fc06c023013fd47272d53aa889b8e82ddcc9604a95d4f1f9bafe1e521922814c716abbdf60d2b47435641b619724bf726a72b648d0302047c435bb50066306402303de5be1efbde2d01801e86d65c7e478cd54326d5cd98c65c0b891dee0238def7ff83ccebeb8ccbd5e46e880a57b9ad69023031c274acaebd8ddd86ae70b51aa036b7a42cc6d6c69aeecca41078a6c50aa646917cabccb4081895d25fac7dddeb97f80302047c435bb5006830660231009b923255d856a0d912624b4c4ce1aff620263d96dbc056eefe8d49d3634e5daca363ac20ccbc8fab7f22df7c13e0072e02310084975502d7f6054a5ec965835b0a8d3220777e0128639592b3823803baa34bd4c6f1c3dfc754b781e71fc757dc0db6120302047c435bb5006730650231009e19ffbf460aa9bedfa6f4d58d36c87aa57a9ed46203baaefe0ea9851aa04880d7e97e6e93a2719639bb2e650ebea7fb0230528dc2f5cf3cd7d2c9154442e1ce71a951734ac0025a08ff7539762ca46258a02255529a0cc9db18c80b198c4f6c85340302047c435bb500673065023100e2a4800bcc186608c0665b03c5b8ef36511b369006ceac976b8ed043fb473f59be821e187d3d9c7b57dd9c24f7c688840230252aa971665f0a39365bb434041ad94ce50a26e74244f319a2348678378dc9b680bacb3eae26765c42e2f28f2e5127200302047c435bb500673065023100ec4f8122f1c95bb845748e81ed10809d963f4b46392467d3abae821d2121b4e659ca51e7b55648e44d3832b4ee9ca50b02301c18545b0aec017d0b7a5ca345d016d304c8d11e1f546060fa8465971e8cf20c9490afba5e22c9fdd8df862bc8a745b00302047c435bb500683066023100b3074c6e4fe635e7d617966d49a48a3e1a412696007a1ea6e53a74b16c2b03111897d25b0fec5fa4c72e951a8ab6efc80231009c465e33301368bb33032b9aa937fa645747fa36485773ea6ad4d1523b3f1dc5aba1a500f096ef5593bb10ecb62458cc0302047c435bb500673065023100a6304475c01c88b7973cff0839bf5df4d5f7bd14de59a00906b312331b6be5150b9b913c1331e69c19bbbbd0c082f0e9023052af2993f6d888c27c957fc2fbad6b0ad704c6a1ddf71497b35b0bd832dc65aefc2e5d0ec6834b47d91231a35fd7d45a0302047c435bb50068306602310091fe2edaae958366da71548e20a2d6d12762ce678e4cb7d5e3c8331a834d58389d8a3c85d01fafd4c3d42fbc1534514b023100b484d6f7e625352ed84242ffd250f9b022d4029721adfcf0d311a7c61fa8ee4bbdf4059ebc60d2a25d2d5d496be378330302047c435bb5006630640230062f74601b56df713936d12ced9e0e0c31aa337f44186bab2da1fa60ee4f3c98e62f3513c50574333d44b0d4ea7ff3cf023032b6ced4bcf2213401b73b492658129abe02b48a8ee2e0fe0db6ab372b6aac1983b20d5573fea2de5101a2f746282a1a0302047c435bb50066306402302a599b03c0706046b92d79a80f1f97e42f6526ec6c21766afccc3dfb5ae982ed22d5a7fe0cec53fee0ff5e278262e7df0230081e4e33100f497b04c842199c0eee1521f018f73f3430eface2000b563c21f112ccd3cb7105f57cf2fb2b0c1c3dc50a0302047c435bb50066306402302efb53f72f0633acd418b1968787ec200380c19d952fccae9eb34378bb94cfa4452b781d408b051160c8fda85e845f660230596e7dfb86f9c323990a4a89e2c7699e2158ac49ba5275e1b83bd37f78804c905ff58e42f2906caf665a6571badc03af0302047c435bb500683066023100f60de086b5e247e2d8cb31ca05874b080fc397f055070d02a6d4d2259461ac514926adff8e8b12075aa171227ad9a9bb023100b5035e12e85091d7e5c56c60a8cb24dfd5911e80123830e07c015877439327d45a08f9fab0be9e384f5464451433d6150302047c435bb500673065023100f08c33e7d278b28033d18103c6729e53fdcbc6e3b8e619becb33887fc179ec3b82c29baedf4d352650d8c8bbfb08107702304420d1d4ce2c3c6baf9252f69862591c398694a25f02fd426a58019e4b1ace53367ee1d5533e58ade93973955996fc480302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b9f5a901e10369213b92f08e19f7ae1dd4ced6bba7b0ad06fc5a31ac7dfaf0a6e036e7d2f4a6625d87cf6a58686fe000023100a6a1c2f3245b3df071150cbb71595837648b6603a9ce6c9f7a3f26b0ad98da2a91f99e7e6b26be1dd28cac4f67e7833f0302047c435bb500673065023100abb601e858e730faa2eefa00379d67d662ae7ab621745a130398414e605a05695d99f376f4870465cbceb685405af34202304e9a0a22f330f27a442903202cc42c02fd85477666c7725e26d1c547bfb142b2a4b738a469fb71c05ffaf3e4349b56ef0302047c435bb5006730650231008985188ccdfa33a039cd823b42b551490dd0e5f9e0efddd513fd160bfcd0175da1594f9e286793b74f9e490d50eb02f102301df22b81dfd6157ddc1d4c60930f093476479346cb36b07ae60d16ad86317ca640feeff18f7cc7f8356ec97dd3e889b80302047c435bb500683066023100d634a8a3d905564e396d23b6f4a32a9b1a656d34136afc37cb594fcadda98ab07ea920bed7357ce8f368bfbaedaff9a30231008305b4adea6dd13c5df4ecbd8d7581187061552e3de4c1d7edd0ac8c8d5ef413e7d1d30baf9a713e2ca289bfa5f843b30302047c435bb50067306502300786beaa6737af4ea7841e4310d3314dbbd358f4066363f2966a499d7d73711044c49fcd567fc474d74418ccb8ca3629023100d47869ab186a876a7549be37cd02becdf212a1b217fb6cb1eb233048f46678a9bccf21afd8ee097a237ffb52ff602cf60302047c435bb50066306402307a84f02fd1c00faef98b71654f91e2f7373315174768d2200c558d40b14951412c548a7dd1b8e09a01aa75f5a995800502303443f1e276ca9970f75a938d665599bbf637e244dbab6b842f8b7f762d11d42a2a8959e1211ef125965dc04772c2a5410302047c435bb500673065023049671e302a0c22494fdfce3449a6029e786fa9860c297f4de8e351f65a682d54c6295ab0202c84b337339d28d159438f0231008040bb1ec613661cfc0190011373ec260460e59cbc865c26bcc9c0564588a5f2448d2dc5b30511542941aac32004b9b50302047c435bb500673065023054f2bd980c0e684117f65db51e17dee893807742debd47d70aa1faf66aa387ca068ec154e4ff1e029f0ead3c2d8b2341023100f358192288c54971ea33fbd5f48fb88939f60c5ce62145ddafed4627aaabdd5c0ceacbb8c002015c9807f31312fdce4f0302047c435bb5006730650230117a7158f97993a94b57d286c2ad70699b760337fdbc27295c974f922cf8b8ab4ebf9a23eb80a74b8621bfe2d1cce92e023100a161a755f397db524ae14d91b3acb86ee4cae143e9759128668efdf9bad0d061600d875045f3b956700548d3a35d7a4e0302047c435bb50068306602310083ef679d3ee832e12837b3b93cb09d2d21b441c8974f58244fb281f1014bd21259bfe056eeb9e853eba35835c4b075a0023100c326cda1fcfebcd29f850299666e2b149975fd517d2e21bad60e8feff22b1d811892ce61211179a5ae09729f9ef1d4f80302047c435bb500683066023100ae0cefd1abbd6f2d609ef7ec413de31bc7be7bf011f6d93d0cecbac19f0ed07fae5af49f9be21f90dc0c47481568b126023100a49ce843f66d5d77a3f32a426ffee643c7b063ba322d9c8619a99d436e7058a1fcc63b220ac5260080c5b4633c49e4240302047c435bb500683066023100b9960c89a31c670cb0760af60d0c7cbcb71441a0efd7eb399e65b5acabe79e86cae6c5e3fed9175a32e73e716297f4c5023100a2bd1386ccd6b2e07818cfe0533a5f149829d78ad3cb891551a2444956da1863d4c562083cff9af059196c99ea645f8b0302047c435bb50066306402303cb46eb03f7f3dc39f7b780e4b7e212d5909f2dfea8ecedfdf9fdcb4a30070e80d126c51f93b9a828e97e4d555c6e17302307a94ca6ac58fef64d870f96d143d88ff624836f80e95ff61b3aee453673ee299b70166f99984d6ecbc092689ae4f0ffa0302047c435bb50066306402301aaaaac1fddcd482bc998a9ed305c61faf91ea675a60c04a6a0b6c1622eb1f141c3a5742967649a321b85b3307abb7b402301b57cdd150832eb7f55b61eb8bed9797c47596da9abc90ff189686bb0c0b1b26920e0cf54f2a9311c2adf3409db3b0e80302047c435bb500673065023100e28b706df7970ddf6f7cc59ebe1b603e4b81d77a67db196f89cd3dbf8584236e65452569bcaff60304ff9310920344d602301af2bf1522ce79c6b875d14a0f8aab91d89516521913376ab7b62851d5a0331cc1d63ada202b5641d87f376fb4028c020302047c435bb500673065023100a909f60a33f62ae7b97e0d31fa374064b9cf28506c762cfe56c1dde660d587a5a76247cb7bba3523c267b8f013a19d9f02303041c071f572e909c3e27b254fd0bf8ff5d75efa2919f2680d75eed41d1df3bc70b6be4d5f2dba733e9bc3a6d32881600302047c435bb500673065023100809b78235b774b5a2356398ea2f3924c7aaff8a95fea8fafd7545337f790d2ff41edd27f271f3934ceeaadb585b9d96d0230137962c5225d317eca562aa94f8dd34566576edef3e7474189026b7e334d924805370b73dae3603ece1c0eab4d2830eb0302047c435bb500673065023019c7ecd13985054c7984c3642997b2d473e5b37ec08ee28661f9ca5dd0db271d1866cfbecf09ed9ea5ae955d4082b6ea023100cfcf62751cab673e898788e6a66345b7b85a41b790c7dc63575e71a3c11ada1d741186a30ad55d8dfe2820d19259d2ec0302047c435bb500673065023100c9e615b44f72aa02131b9704518dae91c16b6162644f37dd7f4b94c86d1a9b5c865f9b5423e8c3d95af9aee79d1177d80230140ed399957a6432c8c69b5447c7006cbbcddcd1bb06393bb3ada484b3615a6632f264f7c9551b7a7348f4e9a00bd1af0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e7d4a830affda8d749cfd64e3657a5aae286e9993a0d65fee69bdf26a24c81079d28762d09ce7f80ec3354701e52d583023060d7b1cc7deba1fd76ce2c962bb0139ba8ad30bf744913b695f6fa3f570650f8bdde1bde0ade2761d956d1dfceabef3f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e92ddfdf963930cae7a6299a2ef0759b8dcfefd90096a2ea7bdaee2ccf322890c4f0aea8cd66ab5756f39a5c29924949023100c3eaba574871285e96d3b6dfe4b88b62096c2ecff5e6bc331413345671aa520650f9506047c9197abf4e87c20552224a0302047c435bb5006630640230244ddd45532f68ea29502f558f675d08ed864b8cb79dfd5d1c2f008bc52ce69804d9b07f86d921806945647d3cea951c023030f1f8e57132177eb857a8e72db3e6db19c222304b43d30bdac4dd671dd8f3adc9148c16e39c1d893b0de454b9406b8b0302047c435bb500673065023100900373ce26bdb4c89b3925e8eba9b38b949894c7647ab263175fa4b1b4705760ad135948cb13670dca544a1199069dbb023042be4a8ddb55cbbd32a98bd3818114b891cc3171ebeb1a7ee501f4908a96bbb29166defb5ed5ad37c001918647f34efa0302047c435bb500673065023100a8bc90349e6c923f53abf1059e24e4f10d31c28ce184640b76f4ddb693de78636107eeeba693fdc79e1646482e625f95023047477fc559af25d7b9ec1c4a356bb69c1b51520cef176f0d976273acfc3d73b4566c15956cba02fe39bb24caffd60d900302047c435bb50066306402300a7e974a1b6bbe0e52d397af35fbf84af21180ed1b6c4d8fd31b6c3ec42262136a61d964df223f6780a30ed8abfa394d02307d7ff61dda30526bc99674b7381e3af6c33316cae75cbf5019d4543102782e884a43a2378582d52efa8729db2086d5690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306165e9912a116d366b8dcd3f4d912772fcb51d9634c808a82e4a141a87ec9ff8e9ff1edb8206939254ee12e2d6fd4d4d02306fb8ebf3fcbaf743a59987ce71ceaf584bc8bfc777cbf9fad78728f677626cad435fc9f78a26f1a1f71e909177d830270302047c435bb50068306602310087592dce19feb793ae002b6b3b0f2bafd81b5e54cc127a7c4bfd71693222ad65ad3f73a5d78b3cad5059a0e3dd829e57023100f22d4ab7cebe5eebbdada8b973b0baf14abf9f8d3f60084d32104852aa352c21459082b9c5d98215a4f94ccb0d91c1a80302047c435bb5006730650230689f36b629ec8f506d06b802f0f9df897240bd2cc238a9712a0cfeabd1fee7000d7cbfd8916e26f40a0ab1da7a937fc9023100a3a13ebc3dff61126e78598af3ee4dce96ea605712ffe67476e5d054b6e8fda0ddd5c1a7a0559b8bda231a0dcb32edc30302047c435bb500673065023100cec316d9241e888f9c1764a723a213edac8431e1b6598d19fa01ea29ce763134c8483a98d7345e15748620b4efdd465e02301cb346e202a7b46dd9a3a2a345df26fce304c08a31e113e2146125c4e54eb9402cea30a02cb1cb1e5590c4469b99969e0302047c435bb50066306402307af35532427d3c709588a72767317db31b6183b37aa558b13e9ca4c3ed48db3247976bb18410c96ff84129e508c6dd6002305ef2b4f51fab8b65f3fb7c6fd24593b6a208cd54d6f6f4897169aab51e888ca3df5057dc3c4bd8327f564e49ed68324c0302047c435bb500683066023100cdac64f7d86870c95eaa2c17824ea415ebfa4233b1ab839c6abf268e9e4b1bc14949a051bf2dde30239463f6b43991310231008699d5846c20638d06a0397d20f36b1bfc740d571861c9874e3265d890d96300f0d9b1bdb35e870b0a277a22c57c45170302047c435bb50067306502300a8725135984b2f1638aa81bb891f37587dc2fd0bf4a30a2c184675b60a45fe133bf4f738ae241f86f4dec878dbf29ee023100be5f25823a59f65b53bcf30631b3f4aef71915620ef02b63eb270d74302625fbfb4d9b8391bf67b5d2143625c729d2c20302047c435bb50066306402304b1c1524141ba3a904d7be82b2a8860a24280c51eed946c0f044e427a82ed4267a6afa2f20154bdb5c794e3875df877b023078e7235c5c98d0187ccc8efe4f0194422e478e5aedaf80c971d5b63d017cc780b2fc08db9af46b3e963d0c2da79b66ea0302047c435bb50067306502303d4420061e2787d1b9cab080199adaa122d494aa37f6250016b0f49ee0bffee1aa0a74246c0faa40dd45d0bb66135288023100dda4404701882f8e2f857dbb9d03f3f4f88223e5affc04f90995856c30b4a04d8345cc7b69f84179d41b06bb6ffbfbef0302047c435bb500663064023008baac73af95a42f63ef5a2231adb2c8fd34606fa7f7553d34acb417766dd46b24ece5a011214a9b6a3a9956e6a012bd02302e13cdfb973bc704c092888f1d501eecfc1e2d17f84fd542184719ded234addb38343230ef845b7a07aa8232e29db8810302047c435bb500663064023037a39c1a474bcb05e385874248ce2bda09d767e8ccf2bb5f4534440ffbb85787ac3bf9f3a0198baa89abaf5f5855a1af02301bdf85943398b9603f65e795e9de8f2849f59c0a1508f4d932b02ca9dd0f2c82b502d050a98e36a4babaacffd12e646b0302047c435bb50067306502303e1cdc1416101633d345e56be727c5821a0f5c0a45f40d6ed783e1bf9cd4b24a1ce3d9e4672a6b8cbea174b5ab0e4460023100b1fe7435ae5e9c35debc27615e77c260beaa8701ced5e408cd7d7d723935c6c891c237d205b731629826936d788d52660302047c435bb500673065023100d85f0003dd4a9d8362896698d0954b5df85e5667de4ad8ef1780e1392cef7aca72e07085bc3b04733a10e66cbc11bd4002307d58d42b52904606565ec79f0b28527d74fa88a331350c77322cafa8d0573c9380dd7220a57a6144abee87ff9e8b7d570302047c435bb50066306402307e4e01f279ca34fe9505ba4b1bba4e65bcd599818ea68318042b46b6f2acc9d3f6f449ca112ca4287648a83afb515d08023050234902c6c3b1530a0c686803ac365e4ee153f385e1489fb3c4f69a64c7c5b767bd2a502c9810d02db64dda902ccc9b0302047c435bb5006830660231008314bb8664768f9a773bc426803618aab7af4c54a6b2a77e6bc4961688a6d3a07635fbfd07c13974d12dc0bb8040fdb2023100a977390eec9e0b1910f84a662c605738297e19e2f53756da4b811885cbd9674ea5f2e2fa1cd3ca27de7043f75abdc5b20302047c435bb500673065023100a12fa54eaa58f58f1c10b69feb6661b9394a4a42415deb31f4d5ff11bddcb8fa577c241e7346919d9a1304a8405ffd33023007a7720c9c54a030c11095fbaeaa8c0713bbb0acb17176bf2167549b1cb7ea0e4b675403c372a354e184910e6984fa000302047c435bb50066306402303118b25ef0835b950c937cc09215f93b87d46e19ea9164dcffc36830997048c6776378b6f5a1cb30526c229cb32841220230274d5b0d091d17be873d58dc72bb6126d693281a6dc8c00fcf4c6e6d4a55ca91ad050ea1effbd9846f757c37756693580302047c435bb500673065023021dab7661e808dc2287b1f9ec0ba63abdfe2d05f97951f6dcbf249d40fc1db2d68d613e4020914e8b894e516d565ef44023100b3c7ef1f278c81adb89ee4e5bc7947195f1670f96712ca7dde543e6598118f853a30c2fec18c2d62380c55aa9c64e0dc0302047c435bb5006730650231008c2f7f2301d664317dfed65dca52964e401f02aeb09c59da2cc662e85d2607c0016e8ed5e7be988eb11420d9a7b5b24902300b7556e79d946ebc06e6b4cd3f89157b77aa9e44037e52d2460f8dc3ae22f87fbdd995646b061dabf5e1a68be488d5e20302047c435bb5006730650230368fcf08fc1335c1b85aa95607e3471f76a91eb233f8d2da5ffeffadbfc37d6b33f7ac79556431d7b06cf60047ad63f5023100c6d235bd71671efbed4a0677521520f1face6cbb04c62ce1d90d1613480f0def4723f8fbefc6c03c991304b3daf796960302047c435bb500673065023100d171119d34afbd8d73c698abc23fdf3963ffa3501d69e3802382b7af84cbd4886078c256203723d6401ed7345e129246023065a81087bba23d8e8045a9fb4a7ba4d9181b25a679bc5118d5b14efc48a838787c6d231dc05def0e2d38d7771c66def60302047c435bb500663064023061385e96bbbe8379b4aa4e0392751a0efdb1e842b96be47093da5d593cca53958d98957bd1b5c9648538707c147229f002301413fafe9e83522859774fa642986b03095427e2fc7fb175683730219078aaf4d2f23aab64ef2a90e1f61aebdbc5bc4d0302047c435bb500673065023100e3965adaddeb2a7eae4af7327ff799a86567b39786f78413a364e934dfa54cb2b1f0ad674b94328fc0f80c4597dbeef402305f4f917fc79a6b70430220bc576a151e6e13ece935502e212d0f62e07f4668840337b0115251927358e27c1d971698bf0302047c435bb5006630640230013b803dfc7734ed3946341a8e7880009a2c29b4a2c10b3f65954848afba58a8b08335f65ad77499172ff02c7de474e902304757d3bed4c162255b8410a415f82a561130a7c1edbc0bc66f0ac3a5cbabd7674134ef68f1bd403bc1ca6bdcce73e4180302047c435bb50067306502306910e360170ca7b454ae7b250af699a73e40127f106d2caa199e08d0e90bee314118eb7be7e7bba846d3706ed9010c8f023100ea32f8c158874cfa865b8b8cc613846a64b69bd5f4cd84bc1e65f4e527ebbbe28fe7376497be37346b1943f46fafa9a60302047c435bb500683066023100caf45cba08e508902f285dd30231b83daac955ce99f22c4bc9c8ae0c1b0b9048b99cfc31801f6c807e9632c95ebc63ae023100da66070fba1d01678d1a42c25a0164c41410d16bdf90c654e62827fac46b87ba477467a6d90aa364ce997d6e797f1e030302047c435bb500683066023100eb71e59541a4eeecf9e6b32c37d5d0285889f4bc2e2ea71fb1436bf66f4459295a218a7c55473dfbccca534e67e62c3a023100d7d9923a159d64a96d05b461493539e6d7aa1529e26390afb976cd82569bf18085d0935666501953ed85913e2b7d82dc0302047c435bb50066306402305c3794e136f5745c6538097c03baa4881e16dbf7075ea2e61a1dbc2d3fd03c9a0f717390cb2e19b02b3208bebedc6610023062adefcf8818ad9f3897690d37aaed823ba5a3d1eecaaafd8680b1f8ddc9d9e3bd3375b05b53cba053e704042db681730302047c435bb500683066023100abb4738289750ab6381f92be5435f840dc65fca4204059e0e50070de39f75cc1ac0a3863281c39695115d3e0a92bccaa023100f929092b65cb6cf50ca14513186d4bab154f146bb0d7a245e828aeadd55021049af2e8e1273bb898b81789c0b4c60ed10302047c435bb500673065023100f091fb0c4808212d9b31480588c95c8f4d5005a63647101d1913f8c05e8606d89cf8fb7da4c18a217589bcf7ca5f390402305989493619468cc5f8cdea0234663b4270c5f4cd919f03497e6fd90812d7d5afccba5d18394aa5c6b2c80895f81703050302047c435bb50066306402301b726434986e44a1f6b69a7e2612abd9dee9984381af56cd27636ad5f63ae95570986887f1c5d31b08a2b1a2686dc192023049681f6da7e7c85c8440e0c4ebddfb319b97e18f8e80f3239b963b111b902d01d5d7a9fd3f52fb61a580487ab706eeba0302047c435bb50066306402302511fa8a3cc7b2479943b6d8fde76a341c2d1d0e2f4dd0e1b5e8aa134a3785c3090f939e81415aec877e8d58e65f5f9e02300f269fb9989fcb9248ecec22dd4319ca3e43c0c729a9f796e95f3775be5dfcc3285c8e91e6fc7c31e4b68ad66e872e560302047c435bb5006630640230587a828cebf9a590ed1d1b414274d42f166e7c06d80f926477fb4f35ff59a7a274cfaffa172938f95485601aaf76e1210230132345d7ebf59ee1b9b684ab602a97bedb66b21c7f593075a464ebc5cda3a4ffaac04e222e2278e8e8ddac556481f0680302047c435bb500683066023100fade1caeace54c2676aea9b84636fcf0111e6522b0d83d408b4e615ed7a3baf27a18c84bf6b38f98fdc4196c4d797768023100c1af4b07080e87cf975d3f11e35a7660bffd0414289afea39b7dff63312fe0ad67d861338dabbb68b6168d175ac9e9700302047c435bb500683066023100b35a9a18495da3c9a3c2c559c8631467f63f0297384ec2302fa9bec629f1a5b428174fdb45135e6089c4bfb4a07565c8023100ae072bd270a6ca98692740b97717f8a3f7a25857945a03fcaced17bb76e3643f151e399cab844cb5f5cde6bc868077300302047c435bb500663064023024484335626c0d1b7f5c55203a7a9ae786787c55afdf4eecc670885da9ce0b3f91bf9ea6e7aa7334c067de1bbe42ad42023040c73f2fbf3de44f337efc867f8aa511a44dbdeea7922c7f9804468b7e07420ad68827c95fbfcece5618774e2d92d0d00302047c435bb500683066023100e71e23cb15c4045dc704fb447f1178b16115f495f53f019cd1d094ba8973037b86877d63817c3e2acac9654cd78d6d82023100ebea0805bf774b4be491f4d014ed0cc383c3f5969adb6a1ee005da956dbd482bae87aafecb0e7e325e12bedcb863dc140302047c435bb500683066023100f8bed554a6e84bd153403f506a946b857aaddacdf3a4271202b71caf42691df6654a9271932f7ee8e5faac969a979c62023100fb91e1695bfbd4646d7e31eede4fc208fe00f0f390045dded18062ebb079d4a253ebfa4406308e1146f76cd487056bed0302047c435bb5006630640230793f23d97ed1253cb1bea23e0514171f77c587c5ab20050f5b153c0e1c4eaf8b5bf744156b5a86332af5b621add228ed02307aec65c3995cf2284b95979efd74919cee527a507c20dd968cded61f0e1c7129882a009ca77d5d4c6fbd470f7e74a4c40302047c435bb50067306502306331df1db1b87acaa689520ce5c398fdb68fd0b096a2fecc13fa63022f9e1ddb350d430250191347ffc4051cf2615244023100bc8546e33f6b6ea54fc13133a1517bbf87ebc6efb93c511fc47c13ba7ffcf697df8a168317a71854a4ebfc107bd390fb0302047c435bb50067306502307f88ae3134d8daae05954918a03ce4c4977ac206ccf5462397afd182dc5c2dd8b138c3baee740acc839199acea0a3202023100b48c81256889ce8205e504cd25a5813cbf1af27c4ca691d01991f9975da2b134ef7afe033144dc3dcdac0b5f309e66440302047c435bb500673065023100dc23a62079d93bbc42498be5c4522351d7453a8d59bf57f56b922edb8077954baa113327531fb1673c67c311ef6106dd02300f0a97d500510f2b8ce43d385e7af89cc5b27ba1eaa72fb1f7a781376db8d63c9e1abba1aa6bdc15ae1029d3d5866f150302047c435bb50066306402302836102ad1eb6c5c9507af28ef02b592ff8830c1913accc014a1c2adcbc3cae37259c97fc37e9e945675b0fbe28d747402303d2ad7d576f9b63a2c8d6f0f99dfaf7c148fd5e6dd3d3374f7baf18a250f2968d120ea0d6f0253e2fa7d49632358dced0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ac248265cc1f7ffc2fe69584fb3437fcc28d182b6c9f02ee8cc0fe86005bab4a799d254b10dcdbd65bb646f289e0bec4023017ab63c5a7b7bd89114d089beabae23e6c9e13eeb36b3aa0b8def013e3056c53167bcbe1c1c8c20fc11efaa3411a9ccc0302047c435bb500673065023100b9762c7e596f0c83251a7424ef8a11d87d69e441eaf130fd884ec1533f5dca3ad728e53b4a4b129e8c91a1549947323a02301d67f352e95e57d168c1f14f912fb8921c4ca7e07f324695616ad0287404bf1208c2ca5c831fc347a7ec6984e050413f0302047c435bb5006730650230495ec7dd156c3acbbf78d795df5c2ad8147ce602784eb7a97adbfc4e8530ea09e515cd3b7a6d6094330b93e83f481aed023100dc2477a3f60b4ad76b70708bb1ac617bd1cc7e4f4860050a94e9b6bf7a0beabc407780ad139e1bb6eac16e72e44f28490302047c435bb500673065023100f5025cb9d56f02a6cd54f8788b0c482bd9292c2e8ec49f2ed7de1ac1c82966be067edbad4ae5ce6925c704142967cad202302925920c73b15c33cfadd07d83c3c22d9e259016c0302d5fa3c98b3818ccf273a40754688cec9d36433f4da7bc2c3aa90302047c435bb50067306502302708ecef3a3718575e4018dd127acb4f1b5e32c2d6ce2d3e8308368145b1fe8e23dc2647b5e81e75e0ed357c0caa383d0231009cd38e1d1f380e34028d1fbba44d966bdb4ff75ccd58290b169e82bebefd1c635d04badae05a844b97edc2b4fc250f5d0302047c435bb500673065023100b9e4b4919fed1c337b3fe24afead177793bfbd73db8798101b0d4f2409b0767d9bef087ca23043dfd8f680a3d03a28b902306f6999883a00e11d6943781bf249ccc7a480b4f114cc338b6142fa5ecb432ff9414c91ea7cd189dfa826e510a80058670302047c435bb50066306402305172280c1511509af477c5fcbf6cb8847b588818d1a6af25b695e8d9b4700b801af57afd79cb6b5ded223eddecb2422b02307e0bdfab52b0b885fccda7face38000056e939356cb0c087bf558966751142a13136ae3f7f9a8a5fbe0fc2e990fde85c0302047c435bb5006730650231009a1c03bb1dce19bf4ff831ab93510469b68a4b2f116d0932aeab9d9b851cfefabb1a54e81b3a814d5b7ab3b2526ac9c40230039437ede758514abc0079399f5c2d247dee5ba60b0d2a9932bdf6eb16dd3137804668e55953b7fd22b6f9df1f3762400302047c435bb5006730650230538c4a4e3b9189177f1266479a5e6293459d32781b990379bb9063f23acd8a982d5dc06c4f7e6361299c250f80c249e90231008e4ac811875028909a9b51de9105342a2696332f2e55e18ef12377b5ddf4e840db5af2b0e89741a434154093a83752fa0302047c435bb500683066023100ced8d6b07889c93fac79d85df5ac862bfbe039843f000281630474c5068f63818b0715831668ab0923a22eaba5290247023100b92b87b232938300a056043b1e3981390537b1f094f1e3f151c2693ef53f38bb9ddfe2a0266b7e7778b7c1e789f4da860302047c435bb500673065023100dd849ee13d3ca4e3a9ad3c728e09dd467afbc7fa433251f8a1be0f144b76065733596bcf096d3448b4180d5909d366d602300607e33a04a96ebf568d5b244af064cfd904a99ad45388dc58c97d0b7a464d9ff1db140456c561a243ddd50152d276540302047c435bb500683066023100b100a586a1e3194cafb883d6aaf1f6707081a16e989a27492f73fbbc441d623af8c10e394f970ef4e5cf01b6f1a643d4023100d2b9819a5e05ed4cf662da967e5dc528d3fa789dc05b9d551ed5b4ec63d964fd5758141e361b923dfa0ab65a098115b90302047c435bb500663064023100a155ab658489f44a95824e7b2972a61d2a95d97d45a48be8b06a5b609a4d43d0379cc64a1baede7cbf9a7eefa7750ee4022f587163a55767872378f3c647cd31413c3d7fb538a5d2ee50043377be2302540f49d5331260e409845f173b4bd1b3ee0302047c435bb500673065023100cdfa6bfa041e79756236fd87e89d63d3729650bbcd9776503ab1153921b3900dfc78b432fff4bde50fbca34ad5a5d41802302d0332ee4b71ff3ec7e5be442f2e9fb8a4e3e24b85b80330b255a1f9cdf7d3973dd649954f392a32a133e02fff01770b0302047c435bb50066306402304c647a7b1bcea9735406844e3424189a9095786b96c1a0e5332f6be8c3eeeba1be7847194668e48a53ab9b673f32fe4e023062b3888081e30f4e9de65d093556a5a6e2fbbe9ab1d928928522ba6a2d6ed50b096fbc6ca34a0e423e7ae5e8bca5cbc40302047c435bb500673065023010797f2681b199ad75ef0263651a2e6194e3979ed1e7344413e45e32ba354420be6afe27d14f9de0789adf781ee1866b0231008476b8c2266b1c47b97d9c9fa5e39dce06b1d69476b2d362f08b1e15edd774d213d4875e9e927c11343e73e39147b2e30302047c435bb5006730650230700fd2bbf3af12d184fd8bc3c3cbae59df20f83ed7e3c073ecdcad9e01179988d2b5e9458488e3ce1311d4fd1fea5888023100e957b851795ae5ddb452660508a323f4fbce024e1b79a06583c2eb8665fbb1426368bc12d031a04e6fcc09520a0917120302047c435bb50067306502300d912c0993168058ddff6a9c40b0d6fe534c3b7a1ace9b5f0c190341e62dc530bb2a216850a0e2d72f32913450fd6dad023100fd99bcf69cf41cb29181931dbe22f917c7a7fee41637d0585fa39f7dcdbe475c16d7beabe8f2b75df236aa6e7133f2e40302047c435bb500683066023100dfe92209d6e6a030ff47e9ec22d4d68aa09b35712b94f5b5ccfcdad3fc1a2b838bd281c21327363bbcaa6072ea658620023100d98d8dc69b6d815a96ee9a0761d8d4b20b1be0a8babc50d72ed12fbf975cae814b5e21b64203fcb67787966e0c7178cb0302047c435bb50067306502304b6bb397d4d50b574a4e1f6c83fa02625f3a97cee329ec0f25ddc9ec874e6938ceca12ff793b1614c0778b4996b52bbf023100ccd854ed836fd01aac2df7dd8e19a9dfb8cc1d511ca6c9831f57946157a33062c08fa9348df374a43e751f7db1861ae10302047c435bb500673065023100f8b07a5adf67485d8ef1f1c1922862d8d03ea928a00d191f3738e7c51e8da23863f807a8c6ba48f0fd8fa9ec970cf9500230636ad596f47a0fca0a84315e4251565470d8c8571e914e475e69314499d2355cbbb02ae452523c4f9df13b1eb6569b240302047c435bb500673065023041033d43e41bf97e012c6c7def516e36ee11abc89349b1a44ee26de8b73a21e10f10e0395b568460e4c6ae72a496112a023100e25d8146f83a92ac890f1c1be36dd134fa9b941df7915cc09d6000a9b85eebfa4153c47e022010ad8b05d3aed4bfdf5c0302047c435bb5006630640230681c8531e6bc087cfff997342fed0e3645cea505c9f9b44e80a7a238fce50316ad5292da271aaf995ab418783fc9d6520230234f76675a6d0fd9586a4ce3c94f2b2d602ba2c5237cb297111dd4d20251b71f980f40c40f7a0480f947e145a8c1df6c0302047c435bb5006630640230537ca9d0854f6f0f89dbaa9759a0e9c42db13f4ad20aeb32b674e70fc757b3f93456207d7ef6b3e0789c513ec2094a12023020c5cd0fbea3441e8c9938800cb4536a16fc70b05933fa4741c481287b439169c19039caedfdf5bd2727695d9573b91d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c783585814020a26228e54d9010a9a079c54052be2919d35dafe6f6effbd34b805ff5e95013c9ad04675c138640c12bc02306bbe380f8d7143cc1a6581b74b096999e6ce25cfdda7c3cba818cab232c7ff047be4c2798c6e8b14dbdb3ad20c8c0c940302047c435bb500683066023100f025cfaf369ef5172361ffbec14b5f45393b50e9ac5040b49ea7e8027f0a6232ffbc5d728f1178d2238e15fec179bb5b0231008feedd1118c6cc3f63feb01ef2245b4afa3fbe89216797f2168c6ac7c602c47982d3739910037adca8cda1f6aa6276440302047c435bb500673065023100a0d5d2c2d23d1fbf4d96b2ac4bbf3cb1744ea29065131d907c11005d078a5b59d6984a0b460edd2c069e11d327d8a1ff02303f2f21df8b7508690c81cd78b615c95e8ba844441dd6c0c9b47e34526ec978149d461c8ef69b4a978dc6556e580e8bb10302047c435bb50067306502303f57864ad65f78be6e984266b0d056cf0a9b08212e3c4196da3d4acecff42e85984b10908ac502defe5fb431eb2e1862023100ff1636cc1f3504439ddc5f85181020199c680e5e98c48450ebe0a290ad276f634b728ab9da612652af11c0d0ffb5901b0302047c435bb5006630640230510e9d8b26b3411fa11a601d5fc7011859e018d0ec3454334b3cf0b750f1a907ce7c0d42ada6cd5bd86eae86c643e28e02307f6debc221020b471f39c18b044e8eab5e1130d665fe376f7d1f76f842ef3532ec958755bc7875a49bf1742de70d72e40302047c435bb50066306402305d314e18157a3c6e94821cf733af81868bf37638a7d5c015dcf3f99f3c89506b6f81d0899701e932386ff92ae503a4e902306719c9ac96ee09c49497e5713ae0ddb5ef0b17df73a17ae0c73a177def79a0741f17a01ac7f3854f4fac384eb0032fa50302047c435bb5006630640230716bac9b6957f4b4cad816630092719b8c101d8f7fe822fdeb7e71b6a5708b8ac2810cbd8f5028625e2157969a03e82002303eebca7fbbae8f81f83bc9168c81509fa2a43a68ea582d6750103d202c2bcd22452a41fee54637c8268f77d41d3622330302047c435bb50066306402305766dc25b1cd4e69e419fd19f447b5cf75051bb56eefae7e099a6901656c79e58fdedf17bcc70c0e5da01813916a6b8e02302fcddd9d8989e8635318a0ee42526e6ae25862a66f51956fe01dd30b5a81f43fcd4019d6f1ec3cb5cccbb9656bd0701e0302047c435bb500673065023100a0099e0f070a16be411949df3c12ab5bee6837c759079e655f99f3e0bb6390ffef1d902fb15b7dfe52907391c47d82c9023077c2ba9fdad94af07865d6c5b38d83d8a717af43ebfdeef35257e4581a20b5541d27216258ec7e86c0622bad687cc7980302047c435bb50067306502301f1bb59340e1247f2625cbb3e66c427d0ff99e2e81cb5d97bcada0447c6fcc2451c8e0f6614a95f570073c18731830c2023100df298bb75625fed8afd1022616ec27c967d6d8f4efe9388c24c1b08d3266e36c0d2810e391a46360fff1748fdc6581960302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009e9535a91797314557c3c39e15aee8265b0728aa7c226532e8414256b071cc5d21b88c4f8fc1c1488d9526035067e2e4023023860ecdbea24e6294df713a11deeb327931380ee14076dbdd2ea99f046cc486c82cc9d5e7d40afe842417bc5d2adf560302047c435bb500683066023100d8de9d41e95e60d64b69650d5f95bf435d394ca675efc7c49448e9476e658a09c856f6377991799522604c8cd5270352023100d9676149c115a3e68a0f68888dd021411f24fad99a9ebc1d271f2c40ffd45a0f6df4508f0a53fd1c2fab9b5d6c15521a0302047c435bb500653063022f3a08cd9b881a0a89296987c9f34e22a5ad62fefa49e135193d4769d579ca4d202ef64ebeb969e3fc5209b456d6b219023068ca7bbc009e2da41ce67686315e0caacda582b035988ceb254ac40cb9a52c63d7bd4c4984ba95fc35b2100965bde16b0302047c435bb500673065023052232566eb8eb2160c10905c5c9cd6fa6e56c543b6a91625e05ae5e7877e9d0064d25bacacc723f86eb6ab913f4fb94f023100e183dfcdd55876e5a2ea464238ef190f9940d88a808477f5c60cbd7c3521137620035041ef7adfda58cc093b3a23beaa0302047c435bb50067306502306079f49ee131fd2f82f0defd70b3e5ce82e2fdbf434b64c48ceed893c0b70f315bddcdc3f6b113de39e2bbb607943a1f0231009e612dab802fbcc1e68ac0739bddfe06a4e39466feb773bcd6419f11a7d1ad936153b5abb1eaa19531eec873f7a583630302047c435bb500673065023071164bd893f7a0efb6e6aa8bc3c01188c15f6394dd2ae56e51505a41917aeee6d46c1ef358e63e38ba31a475521a661c0231009c6a130e092f963fd634b067f1df2bd62ace134838e7a6f77649836c92c79dae329eec79f4f6d9c66c27f54243c5f9740302047c435bb50067306502307a661cadb9d1ac33317c74a33be58502256c6b5d481fd04844c9b837cecd73d0ddd17691a85a88633119b226e0541afe023100c5381c9e1d3062b863c185f690098a2eaa3925f740d5a99af8b2cf9e216c9121a5979b41910b6a962fd997aeebea12060302047c435bb500683066023100b10adae5421610cdca09969ae45eeb211f8a1b1bdcc02f35e6d8ef63b2a15c8819bb8cad2655e63e5569a06c3cb57582023100da1aa5d7ea50e73104bcac9502c3f1ec14e9a942854530b16a88bea231329e5ea7e6d86e015f1546c07bf6ee440bd81e0302047c435bb50067306502300e7cd35465b68c28631ca3c8da8e5f2bdee09d1fcaeba20b87a0b126add98d2196877045bc9c7098aa43cd2cb78ad10e023100f4395071a06e05c43c093a66921fbe52ac435e407e0e227efa059c9920382a0bd6c6029ba370f39026e3d202daff1d280302047c435bb500683066023100e5b462960acbfc12b4fc453eebcb124899a0a94212e98271f11fcd8e81292392b112861d9d9ac5581d0a3a356d1d35c5023100a433dbc4cdb54de8be15d95bc64ab8f190e885fefbf26ce60cbb82269998072aa0154892db80ade9379eb6f9b68c5ca20302047c435bb500673065023100faf25a0ca9340484fb8219acab0b47fdbb989cee05eed8f2815c94568c729233e73d1cb777d27c9cd426c386ac5593e20230785d7331de9ebf83fb5ed81c291bbfd5ec639be6e2d72d85fc0494553e8cd163e7b51ad9abc4a20dc400564d31e775b10302047c435bb500673065023100f0588d212e21b65d9673572f9a25782f5a53e7a9b82bd05152ad90c419bf747d980820619fbb144ef633b39cbceda843023031ab8aefee0659ac87d552dca873530b32102c6ba8464767859daa31963101a22542b8c1d6c6039e5de300bf15e565c00302047c435bb500663064023037b0d35a6c5bc4433e15e4ef5e42fd89338d76df0c6b514ab79601619f678002a4c3dbf15186e470e082d6dd53b86b65023067a02c0bc431db33c0adef923fb16318a2ad8e956369cd45b11d60962cb4b5a890a5ebf4fe55815fbad652465f89eae60302047c435bb50067306502301a5dc348309395e13fbb4ab61eaf3cc5f7ca210b6a75ac935b1e8831f4df6e3636df037ac9c03e5c7393df15df7c05560231008580814f39e1838eb1b7fc5bb31245efec7987df5b56a59fcc738990903c11abe2a00e9dbd2e7ac9da852c51329dd2b50302047c435bb50066306402301069b31f299ebfac04a9766e32d027cbf44c831415f7a71e682386e23bedea88c8c8c9c99929f3bf02d96ab2962d97ae02306bcb64fa85369cde20a83a4d2688ec40846ac09317f054049ff7b895fdb57bde469a2ce5e519d6ec11627a17c0cd0f7f0302047c435bb50068306602310089e38239245246ed6acf93813f24b038229cc5bc251733a7e7cfa576c1aa558eca965948bed4ebc690944e972cd82e36023100c7a6370ad4d4cb897e2c1eb5bd2a1d01a1cc90e95e3ef443cc92e97eca432267268d4cd70aa844f3ce67d958304d891a0302047c435bb500673065023064f7c14e86ef6981099fe728ed0bfbf5e93efccb49c4e05bfd46390121ab01345ae766f2c189b10cf572cbfd07119f9602310084afb09c9bf56932d8ae21c788bda0f583d8fde06a2efcb39ebab5cbf78b090e1ffcaa5eabf63862983c60adc2958b9e0302047c435bb500683066023100dcb2135738b13075e321a9668891707ac1ef74fd6ebc66bf19fa595509d84123f77f476c5f2c9baddb7059ef5f8a2f9c023100f4cf30233e7b8df688ec8b1e19a98f716b7d41a362c9b97bbc5b9bcccf3dc128999df48064eab857414af2799dc22ef50302047c435bb500673065023055117aecaa5227adcca294cbfe179ceff15b932df7fe15a880ada3b19258b74d0e6355b881477243741d26df663e2015023100b7f855c95b9714cf5a105e6f95f54d0162800a6589dc75ddda9e4f56a18c09576421de03c7dc2fad6bed1134ad18c0f30302047c435bb5006830660231008ed275f91ec93e9a09aec77c467b12a0211dc4d1b839241dcb0db87b1c1c5c9bfba758fccbcca1898edb11c5d94e3390023100b26891471594899e57eab86eee87ca6490580d12436adba1235929cb023baa7ea15fe2318bb0ace609c39009430b6afb0302047c435bb500683066023100b340174ec0b6eccc0fc96f4f808c3c8c1e38a3b56a728f2f57d1c42c39e70ba502a1181bfd31a2628961db4959be06c2023100ad40c33c68e4986dccf23a4228660e857624e79ae620eb2ba6e17fb675612f58dc651c8bc99b88059da318981c0914b30302047c435bb5006830660231009cbd5a388bc5c6029094b4c9c081924143e7a2771017a113abd0bb158490b361016f2f25bd64e2b37cd637cb15de29a4023100acb5412195c9c2686208f689a0437b592f7dd50db719911e0d8e5db943bc0fe127391878abd91f9f8b4e58d6db6baad50302047c435bb500663064023075b4d8843ebcfc3e41a88e1b09a1cfde87dd0d134d70fd74e2ef2dced27738b2d79257f2742e1b0b5f9726d067f6f7da023008bd1adf16c5c3d48dd48afe3d577c988e5d203aac47dc28c9e22ea319d344a454722d520abd131b6afbbd128dcfbc0e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e878d2c60bf59d28ceb6f1cc8a67a6f7fd61522eb4e1822b539f9c422b61ee5e14c949e864818edd069827da1e1c8f69023100857b1ea5ab29f3acbc95f5562b0ca75bf62f80a10cf4485bda0d96e2bc7e47b8b92b3179e4a0cd6c67e186a6f8985adb0302047c435bb50067306502303d27019290cd73ce68918faa1bef39bdf0b1bdfdfb7278a822903c3570558b32d7d76f7b96794f6955f501306058cf29023100a2c577f17d47959940b196b758a4f5bc660d62baf41745868ac03b49a5458f07bbc2268688d67c1c95baac8ce57f9f700302047c435bb500673065023000cd37f5043f83e5b080762cfd4942b760643dd7354e3e6486976eb4038f0fcf656515e6389f7529b1840c00c2c98c4e023100e36398cbebf79469580d09cb8fca4fcb75778efe3839a3bbfbb1b8172f8e629c7785ee9e475e51e4fae247504130d5170302047c435bb50066306402307f0fa2fe4321234c008820110f84b14603bee3e07b7f8a47e29956cac611801e2385dcf0e43618156224089c0939982c023061ade5f6ea1119ef5e6faab2d536ff5de74fc6aa3c6657b2d7edfc24ad978bc5d00ab058c80f0279b64ffdcb14fdf79c0302047c435bb5006830660231008f07e69a201101e2d0d0c1c37d209c4b2b33c529de211d0b07e20da3c3ee461e8fe8889fe78103f621911141b9b5540102310093426f708326db3ed704ce8c533785b8ef15e197a8972ad49c56050f15e930beea832497e820ec42c7b9f29d974e33460302047c435bb500673065023100f85a8583639bb740978a06feba0a6d68f4195a840e8cac70d081de3eb2edc305be2bf298167a94441bcbe1c92d3c98d70230331c0c3d4a2fc1ece3a281d136cd648d027137dc0f772a2f6466b721fdb20f218014bb044d9a289a7e696c08cd2405270302047c435bb50066306402306240fb1b542a3db63f356164bd726e7dae8a84808d4d24d48fa1744f7a9abcdf767114df92985a65666a4a5f6af9adac02304a2baa0ad99760c2049edb10f454077d5db91657f344999eb26b5ac3a1f7741fd9e59b76a6ca5a2a6042c38783a1a1bb0302047c435bb500683066023100b4a9fae55fcc3965da936dae41d000814f80ac08c8cd05b7739f2675808c49a9d9d868155a2774cd16f69e6eddf8bf69023100e50597b649bb3569d784b70fd017bd2e305244d23b7fa58809a9a12d4eb7fe1376ab70fa364f10b8d6e5a50eddb6e2570302047c435bb50066306402305739f92844120e719624e23c7f35d7d546187e31955b3396b3d2b904cbae0116b66270b52431f9c6eae1943580ac482302300216c572079d29f0980bc0d0266136f9f783c155af01aa60aef25d08d6b34b293c18be83dd3f8cd540bdd817025866120302047c435bb50067306502305b6746b87ab281cce2924d5c37e0e6fa11315b98575f3e6fccaee92ef7374dd719a91b91ccb8e094bb008ab19bbf7f0d02310090b0cbe818398f0613d9be19d2aea9295431fb1ea8a59efcd0b111834761a5d43374bbaf8b6f6c4b127e461372a298b90302047c435bb500673065023100ebbd7538b28726d82d986492f302479fbc4e222f978f5083dec2072baf046f6e5a7bbbfd9a2c1bc15085aea1f231ba4a02302820578eea8f6512cc919abca20119a786cfd8c8bd403b08c3259b93f976bbc1988451b08bd39b7d61e162c3c0e3915b0302047c435bb5006830660231008ee340f542be8b2b46181b0820f24d56fc4842233ee74f7cba73f50582a0d0d6bf4eb261f263583490d6100010baaecc023100f0a5737ca7106045ffe0e77c495c2053476866a84480f68c3d3bb8ed58d9ad587233d052f97259eb0c65627a618343650302047c435bb500673065023100fbe40d8f62c97c31e6f9ef0fb161b733f125d48b9e1a64622c4e2ae2a907d42e7d01e7e934c62f5c8751468ef55120de02302e1c3a209ba54d8aae021761235978c26e84a7aa1c92ab02c3e831990c542992509779e557d6aaa90d68e9d05877be730302047c435bb50066306402304251d8bf36beed4e4f6a8ce893d0a8836c95386c4ecae679a1c1843866004d28da1fcc343b9e20e5981f8580ec8f9db4023067a0f6c7a431e50209be291ac68a6d3c404d5651331c3078dae19e811bf72f975c58a340818a939fcba21dcfaf1c4c620302047c435bb500673065023100d4dc3799d107966d6f6de096f66b37951861f19fb863468678c048104f3f0f6da7ca913716754f197e9126febac3e0e6023044c5e21926256236a4b06000e891ed9caf6ef444e0e413665c43204090d4debf83fa0598ea0d0de9d2be3c353c7d32d20302047c435bb500683066023100a6a3aa1e89000c2e09aafb8d6f70adebd0856ece77a1289fe7049f787cda03624a9b39207e1c829dba13c38bcdcdb897023100d6fb85f6e06a4cac328e721995228b9809d602b35e2fb6a3146cba0784dae0956ba9cd1e4f9cfdfb50865e7c76311c200302047c435bb50066306402307867ddb7b5495b7d8219ef0aab726d272f93ffb9f28cd1c39f5f4047c2c60f2404ec8c1675f611ee246eeee252616d7a02300a4c21ad0e21349defa06d7af0bc265404a40cee509574d49f18115acc433efdd0c7ed0a3f73cc853c91ed1a949266020302047c435bb50066306402305912f8eeee48d6ab4d9efbe054b56a3c7116be7a39d3b6362ffe08aec0cf471f7d5114a47d26808da294d65af88b3c4b023076b2817f7a9b21f288de0f06658a704e2400461583b198a271ba433cf66a907f1c5263d234b351d23a9029fe72c57ff20302047c435bb50066306402305e8b4647b2a2c6d10a05645f8f206ebbaebc88567cbd074ed700379887ab77eb49ffd79a19b596c0a983a8084d0e7ec9023003fc1ab59799e7426ca6f07a305b0d262995102cb58d1e1518120c6c474037374c173c96968ea2dcdbb144faa19321580302047c435bb500683066023100ded035f4f53b595a2f32d1d341e9932bc1f5af0a1958ffae6ff22e431e7ee7685e2f5289fe7be85bec6ce7180aaced890231009c178a7392aa4364c5229c9cb83c06cbdca3bf27b332d875f4771fa7fbf288ee6f99c13b152314d11535872346d0cf3d0302047c435bb500683066023100e2a90f71dbf068eaaeb27474745f72974cee2dd734ddac9365d0cd018fad898375580a888459aa7d88eacf8c02e6505e023100ca8922a53006e995f3301307feb7619ac5bd86217ff814f887df3d62c83dec06669b2a9620cc10f7f8df06a565fe67cc0302047c435bb500673065023100d6e679d4c3447b37b9432aedc458cde011aa044c1cbcfc928f27f9bfa83e91c9ccb8f84e2e8215826e8b38e500ff4937023072241cbe41c41e4b98dd72c4ae507f6ecec188628b33c908941da71951656e0b16bd74c7cc7c3ad49b81c569e31ffa8c0302047c435bb500673065023100d90567dae182184a60ca19bdb28c392a862664390374bfbcbfa574ee8bf9cf30ee624e27921fae0c7c13261cfe97d8ed0230309f36de4223d3ab3af15c8bb254e095d370ac0646779b3edc4e5f92bbc5a3091853ecc8a9f6ec418ed89c8a4d94111a0302047c435bb500663064023029c84e2104c3a47db623d71e78ac88e9a86003f1a55df0f202648e82abf2861598bcb8dd251a8d2b4a23f5437d05d521023064528ac253fb50e938ca6b6309d548705ab6883743466353b3021682bfbdf002dfcfe18861097159dac3ae871419fbff0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d4d94ef6ec77e26d51f7c862caa5414284a0406b3f4a4999e6df2f8a5ccfa06c49e18de68e2a7b74821e06782f70ba790231009f7bed0cde8335a401271179b01bac632f44e46501e9ef37a3fdd860b5cb7f71b10dec7d2dd30390b86c9ab2080f49b90302047c435bb500673065023100cf3e872eb95141ce3c9682ff82e1de9e78484d0bbad756ae619cb7bb87954d22ca1f3de56900b6bc92eaccabc0d2e8a70230314666ed0933da4430cd61944bce009a610efbe64b62905fde4cfc7c026c7ea281fb638d92fbc76cf4f16cfc748fabc40302047c435bb500663064023070feb8083129fa9f6af7a3210b8184430afc8b21de6f31cd30b688a77d90639cc9eb00c9c82761d33c9a7a6e6f285fdf023025cc5b36724497c4e32810b0085d50ab403a9916c9a2cc84a214e93edd36c6abbd67f316a3d0181eb60ca37b0516174c0302047c435bb500673065023039c166818e58332c4ce1de4f2158fd18baf3b14c871247770422994499d64f7a4a310878624d037b8a72bfd583f8b84e023100bb774e0f76769331d529763f8eb973845b8f912c1b08ccd6d72bfb4fe974408aa44dfb5025b541ad7433ff359cbd08120302047c435bb50066306402301a8c5d4b100b336cb38e5315a5e7c83ef40684b2dee3085260d1f21305c4c2cb318331985b7abe3427de08562291a5780230440b99626c3d550d359953b4dee6876671f27a185dd92c3283d7372c1d920a598ddf9394c13f149d7f8ad29ace10b6b40302047c435bb5006730650230264230283dc42d0d6c60769d9398a010e8955868327fc2f089958a1f59e6e6b6a878d0a508f63d518618e61e34005a62023100a0184e5da6e1586c6d102627542652706aac0a892641c497d1661eb60c9d1c519dbef5ab1f2146fc9dbbb24c6d0296aa0302047c435bb500683066023100ead7f2252837f0aa8f3d135fac21cdcedc95df397b44bc0b2b66e8ed3893ef5fec69e43f0407de7d2c69e5c6d957870e023100c807f36b68a5a865a14d80aa6074e3a9fb0df7c8e252cf031eca1f9cd399c6a86152bf42212254e18a3510d2c9c4d5080302047c435bb500683066023100ce82e7fd5e1d26cfea1e77e49dc2df00450fd3b2efb2a893031b600a08f539a8049d853a89ac9b0a302357d798bb6daf023100aa6bb810098afd945dfe02dab6d52d9793ed4a855a7d0b94da6575da9b4db6341c094f0b9fd2548fde120a1bb8c5c9f30302047c435bb500683066023100d09ab527dcda209a696dc17116c473b360c467d4013de4d76483789cc685038119d98fe09e060c162e4d8648c2b6a4f8023100a3a1d1224fa90e7a4b88ebef76d5cf67be360942f3d37b808f5cf1e29350e5931dbaab7bafd4033381a73f7e4ac587010302047c435bb5006730650230595af66e0bce465b4986af6d3da0df8e7b719c5c1d5364bcde5dee1e5b47da17e8d5110c093dfaee809c0cd802e0ba6f023100aa2a3a7143e9bd9c53e09aac919f87dd62495ca2255bafc6a54af586eb212552d6ce9da02a566bd8ba786b8fbf3a1d8a0302047c435bb500683066023100b845eb509b283cc78aff5dd454cc5bed2da2ba5fbeaa6af26a6cc13010b9213dcd70f427da4562d0c0eabf9a248eac20023100f82b1df59bdc6d1a5a3095144cfd25c04a45bd6cf232437cce7b573ddbfb0b4ddddfe598ab3416d20755eae01792f9ac0302047c435bb500663064023010449232c4e4f5b66a42343972cb003b519bef871fa6e505a421ac53d38fb6f6db4afaafe7a27e3d56b8f84fec6fad91023020f3611850a5bd22872e131b1061cc5a6b972187693879f3bcffa7bb3bc72bddd65f909957d1f0180211f6750a2e79910302047c435bb5006730650230180195704ac805f4ac6ece7c580634507a23ad66bb4705c4c1bf69b41db22cc7d3673019baea8e157d83ceaece0aea38023100b3c1bcb53d8c46d440220e0e3f1a52f929cab6593755be34d4fff8972d29e8a1fe5e3a391ed6723e0689815b70cd12f90302047c435bb500673065023100de341b0297c0373f2caf676ca296559887267d6b3f843b29ec071d47e9b2ff46700bcc4515b05a762c3d390f37a817ad02303965ad3167906de5551a7f152ed4b142813e3e516e0fc89077758aa66fc25e8bab13646745dbf7a92ca9f9bdf09c9ac80302047c435bb5006630640230294173efbb9ffeac5ce4224acab64dc65e4018b1f3ee85dad790462a68e98293f1b87ce2e40756b87abe469d4a3294a6023002d22c001235559d1e2703788e65464522e6be528ab4c73185f124f90a913e022292a7b7273461d95d8bd1dcc9bf1e8e0302047c435bb50068306602310097cc9432fa0e7b2cf37a5f1397a5579ca17a2f7eade055c1acc26eb68c45ec96607355bf8de6ba4fc62114f58d17ebad023100a6e71fb67dd2439fb438c6c1333fae915b31bd71157bfc62b5c292e7b986b6ef3c112b79996220445be11505c758757c0302047c435bb500673065023047768c4722ffc0e0238501aaace4892b9b342d5f02ce8056c8f55a99b7fa381ae143316451548d0d70bf612a4c55b83d02310084faa0e1473add26ec25cd024b8bf6e75dfec03b33415002dbcbcc9f51cca1115e6ba98e6b02f69ef28f9f5a0a98c2df0302047c435bb500673065023100d1ba968638a873c12b47ffd4d16000e0570a8c3667df353331720019b85d66ca99e1ec240b232d26f074b3f3590738fb0230013697b067f9ed48cdbbf2fdb5d4f33486c3b704078913c860a9dacfaa15c025ba0df21e73324600295c21e368a9310d0302047c435bb50066306402301226c37b2e7f355db050dc6d9c7f1de1bec6c27de6096cc5bcbfdbab9f869189e57b0c466a9e0647da2207a617660d2a0230702a90d084488415ac658b41951f0ca101abcdef1db4c868a175115791c11c1ff98296f395fff324036176ac91b36f470302047c435bb500683066023100aa5d40d9ac301fa1b7bc2f0e30035959b1a545a42d4961e14b3bdf634ebe8b3139bb5baf6d5994dee3f82e5421365058023100c3d3a6bd50e4feb7ab324e3b2bcc8a344e776ee21de7db2a9ec380d52556300b023a896160bd2f9efe238f3d7b68e1860302047c435bb50067306502303860836d11ab0d83bf949210b22736397c334cd5c55bb0edf1904fcb886310457b5821361e89d8cbae46b044cba0c2950231009df103869dbbe47945f816d82d08d43e6a7ef0d525ee465bcdea7ec062fab5ad452cb0d7ab3189559fb55218627be4f40302047c435bb500663064023039026c4c0c14eb1a933ee32bce3ed204540ff48a945fd66858e8e220ebb2ed673ad8598dcc01d57fe102d1e66c61bc7002307effd736076170fcc0c329eb3f76498e631654b4358b75dc7e9de4f602a800c30a1b01bec780070cdaf22359c3cd5a700302047c435bb500683066023100e13e08f554c1383cc2749f4586a9e577b4d70e901758464c1ff22250b050e0f6f03c28b69b6311bdf18113bdbd0d0ec80231009bc32f49e1a63cfbb62692f413b881028a073d223ee34838fd65446fae03039812cd71b76733947552afe862c71260600302047c435bb5006830660231009de7fae61ecc0d652b139c378ba15c3575bcf20d68c4bb664deb5e5a0a121833d3e7f34fad95f62fd3d35ca33bec56b2023100832c4d514826b08013cee1e78bbc1391e59dc23107492e2f5d34d5a5c9a04e5b37d0348d70a8ca955f90a67a1621a93c0302047c435bb5006730650231009ca4dc8309ff205279c1835ff58ae9a03287243351ce3237d3d94dcd0475283983ea8bcbfcc5a77d518a67cda015326a023014b6b5a160fde9602d5d13e6d172fbc3bfc4f7843c465598a6801733c088bf4d7f5f8a4054a62c5b8274d98601615cf60302047c435bb500673065023100fde0c6ee228c87dee096546f6c6897df6ff0c4f615725f405cfec391136ce9f5aa9310a5d6be64d0729185b40a16798e02307ecedef11ad4c46c740bf086a2977f39422052f64974f7b44d9361435ed31db6c6abb2f6e1b1e304d1ae26e52c2995b40302047c435bb5006730650231008a99d660c6cb6c3d6c8aa5a84844510573b154441c323313d8d3752e3b2027e883a89149371544efff106de2f06388de02304b969e6c3031429adc0e2c5a070f1bc1b624dad660c70170e3fa8af80c5c90cc89965087d76a0a261d1e317b501fca2c0302047c435bb500683066023100def8388c6d5c02b5d739bda2087153204750b8fa0ddccc6453f894b40eb9b2be4e8cba1d3e4d59f14db766dc991a4226023100a351c71e200c17d1e6d2d679717e72868d861711c42bc65893511a6d6851d803b674b332b25c48b62dbdb7b9372dbe980302047c435bb5006830660231008d041d439fa7375f486cf13722a3e65752805b26833ca76876817138cae236aa7d15e336e75484833a55b94143814a39023100a33adffbc8d379a0fa8412fbdf03341508e7d9be60c5c6ac4b877b1c0818e8cd43f902df1d8c562a9b0807b9a18754370302047c435bb500673065023100ecbd12ee2a3bef340c3990a552fdc7228bff2bb0d666c8fe6ade3937115aeb27f19fe3d4334a72b8499b6812df6d1c7d023038c73cde7e99a5b26b3251cb43e699e2f21731aa5dfd84d5d4901ea02003e9e7fe5fe007e244b90074c2fa0c1551e12b0302047c435bb50066306402301908e02a17bcd9593770fac6d857c928e893c33b17f2f9746162fda3880c064a563e97e07b653e4b242f719bef1b2df40230757485d3e42eba266490f58f51f9c45e387160fc723e0277f64dac9aaa888a2c7a8287fc16650fb8262106150293c3310302047c435bb500673065023100fad858e866d2555ebe09f80ad04a305180b8b913db63a7dd8295ba932d2303bb8b1bcf37276df8ecd3cb809afc4aedc5023069cd1ee386507deb6ce05b039435a7e5372726d7bdcace5c3fc16a1597c93b9a506902a57c899dc8d9bcde2a78b7da340302047c435bb5006730650230377667c2026b697daac275bc2fe48e0876ebc64fe7cff2e73d2ddff891e8a15da1334dbfc8b3274cc75a1e026cd1a86b023100a3b4de00793247f151f2843caaaf1d9e6462edf998b5e0673218d02948ef8e76383f24bb15889cb11786653ae865fbf80302047c435bb500673065023100828d26bfc4e7425dedd68a871afecb0a95db90e8955c3d6a7b8b8554e400bec2149822d86ce094ce0dcbc1945a6c7bfb02300a8586ddff7a4f1565bd282b29abcf93d93970647b544d7cbe9e91ee52e51fafbae53266d774fc9dd84b346a5628be710302047c435bb50066306402305e944437d597f22ec70a32d55c6e304316dc0f520d4bc87d22cd2f187874a32be2213804f84951dcfd930bfcb6aa925b02303d78f9ab6339f4698c5c0e3021ed8b86844167371bdaa61057ba2073f7bc9677d3a8b7d6408d71c439ee50777ee668ec0302047c435bb500683066023100d998add0b5ae56c11aa2736d262215d05a2d3faab4310f5cbaf15d2af45242e6eb4adaa64bd38ebc64b0f8ac91c845e1023100ecdd1fdbc565d4b9a14f9ccbd0cc3e1e95a0d483dcab41e5aeac47389be2ede620eeac16621ac76781b59fa40c29aebd0302047c435bb500673065023100f590fbc562ea9f1c9c3ef310bff41947ef28d667e7abe3ead747e792cc3b01fb2319ebbbe7c52b7478ee36708bb0ddc6023056cf2cecc903bd2aa6eb485bcda9cbf52a51a408fcbea8ce9ee176a6f821b1c48b877605d6be1646c4f4b2efc4ac94f10302047c435bb500673065023100d27b8aa67af3df027dc6093a870334e8785c46b1919da6a0d823e7484a1d4f49b6e99a9b863a9f9a2b3aff85607993f3023061886486bcbaee224edd87828c253fc8cb63d24f2e232b12a08d36a43642f7554c6e4f8d13dfbc467a98b41939858c970302047c435bb500683066023100f008f1a6987c1f12d731d01875d5e4a6444ad84795c17e41d841f26ca13216a839005d1378808fc1d04d3c7572b4607b023100f642bdeaad6eda353716c43ca730bc257e939c44e8b777ddbdc63f2ce8cbb4a16a0756844450c1615bf09e4bb528b4280302047c435bb50066306402301550a007c52cff6d9ab051f0d903d323c5dfc6277b70948b91fcd47fa1e3904bdb3d51499063a99db9b5ca88200150c90230387212e6193dec85ca70d69049f09e27c9521c7647f19a70c13549df352b2813a175d87c02c84dc8c2355ee66d6c4d900302047c435bb500663064023011ec42096e95d560ac25349f627ee3f2ef4f301ca53079832cdbbc89b0115f0dc575dd734246084697b2b5da5c05b1620230101f9c4104fb10fb1540418c67f756216bde720ec1f43fce67b9beb6c7c3f97a1e52877ee08544b633e9b4b841c687be0302047c435bb500673065023048a2b1566d210c14cea67bf4f32d4562ea74f4fd0606a83771439b269c3e66c837fab1e23c6a763e66dd9aed9a6e4680023100da5efd88c545d64a3f60c04afb8e8ecdbd9054aa38b4f54f82f711722f742979234c0b82b133b338e4dc564dd2999f4d0302047c435bb500683066023100981b1e71237d27f83fbcde91171b31418450d5faa2734c5bb3eff559943a345170b2d834d38aa3bf26e9ab8942f007c2023100bed93c9d2b0ea86e39c18dfcc4e0040bd59ff36018084aab3fa487d8f0d083c9aa2cb05704aa11d48fb36cb2783ad0090302047c435bb50066306402307b5916e1b1d67732e99108d35d2fd2f9f1214c5e266ab39e470d797b888d098d1d7aa2ce8a9c1b2bed93ef52178679c50230748d2383999a507a30cc27eab21813f74ceaa82ee657dcde34cbe69fa74e73934b196fe21c67a7c4ab7b235793c2e7980302047c435bb5006830660231008eea4dff1c58cc08c2b42867818e67b8499c0100406fac2a785afe07620dee0d2c3eb38f1e08819a9382a535adf15a13023100be9281c5b1a3d6c8424ef25ff24f69ba0c70a820c82ff65e3514b9cb67bcb93aa59b4967adcc59a31350154143499fa10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a1806aa4ac0ad246965fdf8cf51b8928621a1be42113f7563eedfa9e8c97374ab951c6e045f38d05c04e08747eabf9c202306024cd664b9371a898b4941646ef152eb0ddda109b956cdb700c0717ccac2703ed66a6b15812a9c08c5b67f4bc8dc3780302047c435bb500683066023100f7db42c7222f05789f6f4806d20d409c951ff57b7181ccd481caca2b497c22dc42010eb8d3762ac787bea1ce25e6f2e5023100a4a23681dda6cf711cf2017f1134b55b73e0d12c4ff980963697f6d93d8de8aa14b26fd1bc8e2e027da1e5648be98f1c0302047c435bb50066306402305ee099a82bb0c9709e96a5672f2a91cf280d9239558c7ae8707d136c99e1ce8d6551ed4f20adbc6981435e929fade77202301c7c87fe0ca84fb4fcb6c5496ce87690f0c5f96a0b635e4f3ed90a9cadd3ec1997f6728205a1fd3471dcd9b33b98b5340302047c435bb500673065023100a99ab5dedccc9440890a89cedb5636b09fd34df825436656b1c8a7f6efd51328c2b128a228bd8944cb56989b02929ee802300f620dacb70d6e0d447a4e3c7f606b5c01d2c086d0fef7571a7135de29722c6eee531caff0ae31c812ca3959c9c83c6a0302047c435bb50067306502302b681b627fefa6db2b331d4b49b72657f1eab00ccbdcf1a56cf0a7444545a96d1819c73f57c646157a9f16db88c1a664023100e2b171ccca74d413d11a5948e5d762fd393514ad907b8c348f1fa3a414e7710679fae48f75c786444c1616b5d53282d30302047c435bb500673065023025b88748fca45100dda14af13a0d90807fef98b7dbf6e7037a47033801da21c2ba17789d547eabb5919f1f33a6df57f20231008522e7b159609fe5e8a4df17c88dc77e21ef96464b80d90bbc1b93ba17da70781f6ef9980ae2b7a6f00825f0bf44438b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b57c6ec3f2320e15992050b87899951c916065b17f7b9cb068feeb3303b6ac5e47239f44b380c0f4f6b47a8b9b15934d023100d470b4ca36f3244378d2b3462bf817ff5c9cdf02061c54133504029af504d9d8175ad735972bc02195367c734a824f6c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100aac1210c3a4b75040dbd82488486542c5d10b7dccaaa957b8f2d85b2d0cd249e33e43b075100374299ed4f870daac2110231008feba1054307f70eb456928f088221be208a245b13ade538d109344d68ea8f5593b0c2b549d84c070e0a24c0b219d6450302047c435bb5006730650231008d6dc0a5ba6c4f550211257f59e6f8b573fe5c6177d8fd4f4df3f5ae295f23674b1c69f933a13c055bb6ac4cf5a9ff1e023067a8b8989c631e3c4883452c4a44b3e2596a7e8c0402b5a52c018b3f1f65186991a65991beb084ec77d73882c4c670a70302047c435bb5006730650230409e722b88487189c84eca6fa220764d0be506dbe3a1933976d3f62ddd9cd6b69620f895d540cab43f8c0dcd7d0819db0231009381c740cc06da3a9c40852b6b671585279fa356505674f4581dcf2c713c39fdbb182ae443fe362b7e6ae84b8f4e5ed60302047c435bb500683066023100c701b37d71bca4af28a96405cd313e1caea91de9c6aa748545374b92431cd021bea2b228e9bde0712f1f821644db6211023100e3956e640688c7dd155cac23676d65579536565f46a0c1fc119a385efd3ae840e366ff7ba8fe7abcb777f7a85b2e7a2a0302047c435bb500683066023100aea5f3d3f4b1684b07c45ed1887e009f35260065e29183ee4c8b9aaa9bcb31036f48835490c5213c4c3cc2ae8304d3df023100e86a5f6a7fc0064a4d997b5b9b4a238ec6ebddc369af8ca13ea16aa14bec65d77f8c1ef68234a5f38fabc9d2f5b2e5df0302047c435bb500673065023100c4f8beb027c26372d09c35d6ce3f06941c8258ec01ab2adcaef91065f5b6523abe64962de231981d5613aeb42569e7050230581265705c75a36b5c809870675309dc182552444ac03b4e2034d11c6d0825821376c19e173d088621f786dc43b9dbd90302047c435bb500673065023100ee4c2530b1974c6fe655bc76c893b12d771e83c86642a45e13c6eecf005137493b5481203d435f6b16868173a8e2ed74023055e393bbfaf5d74ddaf527fd78162acb55d22291d42c65d0899db39e5a4cf561105729f442cdb9b5c4e850dbe97227e20302047c435bb500673065023070d527ad6f56390a852126fd26dbfebcf87376c181cdda0c19501e401d73ebf420e68c428ad9384019f2f0c817c6d9b8023100b761103bc4c054b4063ecdd5da6d71847be1e82abc7ca7ec1011a51455cbf06a0fc6230f9d0c8167ffb5e19d12f323170302047c435bb500673065023026b0ce13678bd493a5fb19b20ea9c1c34c060fde5c367a19ea5a1eb8834613b5fea90315e6e9fd968936b12a48d0f61d023100b6f1d93ff34ef3b2104e82cc847e3bb972f10b930bf7c75bc1484cec5c21267755bdec327390d0602ad5ccab9f5adb6e0302047c435bb500663064023011e5c6ccf72be775b9b10c8500e389e12c0f0bac84ece061ded45f2ac5d7346a98298b05a8c85ca6eb06e19fb754ff6b023054d6d2d9b57b887d072c11ac7003b401d6e1384c74e2850160f50f0417b9c48840e6bc6d4ccfbe4c7803a546f45611a30302047c435bb50067306502306a1df2d31fcc7a563674aa0248dfb1e0f953e84ef2b95030771f73930921cb28eb0c9eaf9e3cf16737f0a19917301e19023100e987fb26979b4f304d11684280aa4707b0e4b3474bc13c5619695941d910b99c8dba6a55038c5e95474d212d649b62480302047c435bb50067306502302bba7f6464d01f42600d760793c49b0011cda6e55de8e704f4127b91ca2405806054b7639d8bbd0c8e47772c0ee683a7023100c8b8598ffcd552a03a309cf9abbb713632e16e1200f0ac02c1638935bc468f3233ff7493f9c91a6d753265d9b9f94fd50302047c435bb500683066023100d22f2cdcc14ef3c446d3dd8926218541ecf15d8c51e2170596f1e431ebc128398f75c05f4cb71873cc2afe83fb6a21720231008f23d0e875073c1d9ecbf215e666cdcd0629e4c3f570ae13c654fd48bce27c6274d685a0e6ed121fa1a35a82b48770690302047c435bb5006630640230587037fba0c27206e2e9823bf164cb0c38a0a997546875b88e20088f99e44c3f6da98c44d75d7a3d962fb4f54d28933f0230156325ea6a3b78841af321cb73eb568df1f7915b6b5b89733d15dd67e6a5f90abde9cfce54fec58ea6034d36e6fb528a0302047c435bb500673065023100f89fe5a8637b9ee90ba53781864dd582d07210deb5e30333af5c04c2cce1e28bff3f1e482049644681e8f9a9604102f702303a0d9c099a42db5bfbbc714ab9e7e4aada2ddd5995007cb1561c67d02473fafa56f638b2f5172c6092f5271283ebac680302047c435bb500683066023100b52bde4ebb561a45b2b8a7fb34dc920bc63926fd71ffdb529443bae8d8aa7f03381253203cd4abb3d6256a080b7fc760023100ae7159dafce7a67bbdadcc8418ae6ac4a9a699ecb5c2415ea25d447df5aaf272b5c7128bad8427c64bbbc216a4fe5df20302047c435bb500673065023004db4f5b4e721075aa3890af2ec4582c5d498bb9a342693e53535410998691853e4a2241872c38860d4c25905754444c023100fe4be71584c94d515e3ebd84f945b7ab8b6946029d21aa4650fc0df0f0209e64614d3b13d7072d9e4ac722c17357e20d0302047c435bb500673065023100ffc63d532745a964b1324d878a51f6d816a790c23cb72dc7f47b53a8373dceada2f03a4b616633aebad8dd58b95d094902300fe1f2243b8f8d61c34d81ebed262b8ba0dba7c82ed46584eec043aa8b86accd47c5533b3992bddd81243e1190f975c20302047c435bb500673065023100dbac76bc46021e5b39234377006f3210ede24bd7ef2256897d90b8af1c3f180236878c44bb298f29423ac5385c7c72ee02305e784dadea155f263c8d70560e442ea9a9add1d0d05cd804feb51d075bb0349448662854fd694e9ef06ca176264ce74e0302047c435bb50067306502304b9fa10123a1e6599468ed3b9cd90cbd72cbc1bd1353473e5f6f49dd3fada2f1151bb2b26a754a2a6765d18de863ede1023100bab3fb00bd7cbafdb03484a12279a94c3c1c6b8de693749318d2182fa82ae31107c2756b472b7948f421af2f4e8085710302047c435bb500663064023054e0fcd51ea3ed350a4f8c9448e1668afcb5e21f40bccba2c0d0b6b2685dd40a6f84d43cdbd420f103d36d799b262c8902306ddb8ccfd35b649fb83a20e74b96d7cfe7feea5c8ece25ae36f7cae727145226e917907d0892d2054697c5b0ea2ecd030302047c435bb50066306402307c18b22101004ab70a0db667fd211d3b543169d85a73216f6162f74bb2b804d5763c5e22057197638841d75f9d1f0b2402300249afee57546adeb03162be066e2c9a2bbaac299ee7c823c95a19e0abad066bf975d82eb441d7939bcbad7a92fd8d450302047c435bb500683066023100dd353ead18f7d50498afd5ca6eafdd52c55f3ae753af8a4f1803fe25b749faaaaa4ac4dd54d66d11009dfa2446b2bfd1023100f41cdf9930159d1e82f4cf3605353a8342f68da86d84b478cbc553fe02be5fe8471af019c4fc56c1060bbd695de181e30302047c435bb500673065023100cd3b280d021d66d8651df4589598bf8a257e74961c762a296e36b73f3b4a5fe2909835fa69887640f0b460233a4e6779023017eef1ab72a46b06bd13cb467c66ca582293768a6ca4a379e80d6299a6a859c7337014ab77be04c4f9de0fd9464c64d80302047c435bb500683066023100929df8a7d6b68afdfb0927f43a242179b6c35d23ffee7a7bc1776bbfa02ed0a32afdaebf2c96f231d12b3f76682482a40231009255fd8d03d7864daa32aa2726f158655a27566475ec47bd8b35b943e3062661a45cbb2b72802a14d8fa69154f1dee000302047c435bb500673065023100ec3b6d09691bb9b5944452edfef5fa4198ee0935374efa63dd26aded18f20f550e4b8bcbe48bfb53f915781f283b04830230248c116edbe30446d28eb43b8a4baf7ee66e6c001a31d1da1e5b71100d5f2a8c41d8f617b001157afc6fea2fc62e4a030302047c435bb500673065023100c16cf6671b6e92e7ad2a8e2e620597bb94d468d8c8047959799ec18822c9e82e02369e83c91d5eb88262a63780ba874402305f11629cc1e01938b39061b06dcbeec431be7a92f89e4b493823b6b8e6b961e4616c7d8baf21b2e25beb8dc8c643959e0302047c435bb5006830660231008f4e0389fbab577f4fb58fa98aa50b8fac086cf5dbc1b2b573379c1db3fbfe93b288530d7c5cfd53c151badfb3dced4d023100863b2293b03dcc8d2ffbd3129c5e34d931d6e47e0a79ccce4147f698757931ca9e3b8439deb765cf8298c5cac65d85ad0302047c435bb500673065023100dfc0c27ab8fc3a9d56755a480f75a73a844cf233a0d361bbeecad78897f19755abefe2a2f5f8cc2b5930001cd57eac19023076a58d4b165710f170b08f3452eb98be0a0a40020d728bc8f3f468da48b81218899b895c7b19c0b6e769e4d61274e2050302047c435bb500673065023100e5d9a155624c4e04fdaa9ff211d080a4d3b90af958eb8cf6b21564dc8fe57498d773d703648852e72839330930be72f6023065d58cad8b762059c54f19076d847fd875aea108226d20c1ea4b3e7c6e4124fb7c3810e12349c94ee383857b3c6542480302047c435bb500683066023100fa93befcd37207a7192ac0781599c8a4bde09607a2f2c70d662b7368747042b3df173e74044b4e1f104c8d6025865437023100aefef1ac4728ddb14aa6726a438d7c5d2dd6b80434983037f5a7ab30d95e0f535d301b15b3efe83af85eaf557d7237990302047c435bb500673065023100fe0ebf94f1d69df627d64520994e604b81359ca885de251d90aa67dddd1be10aa62a826f8f82a8b1aed0f48a2f95196e02306c8d1b7f2cef277f8229dd564d45021504f22382de8111c20f6d2034bc84f1798302d2f2a892e6f0a6a0cb0b919a63d40302047c435bb500683066023100868a7c8a80a793b8ddcc9f0d8c157ac36f9b9d20fcc7560d4ba3fb549e9ab4fee6a0ffbf8f9350276e1a782e0fbbb870023100b15d25158d38fc9b0ece7531f3a079f3285e1ad16fc5d804da4ff731674e993e6a6c6d64c00e1a61b1362c4f950e22ac0302047c435bb500673065023100d44b5752c7cf131ce47e8f495fde5bf4d217ce567b6e9cf894d977b0d2efa143768789f76cdc882314498746113ad93b023000b33ed978ce08b84f92eb8028caee10438ab4d24a9e029d9d7fd760da81015217b49dc869c67de50ff4fdd0661c52ee0302047c435bb500673065023100e24a71d79898c0e7800a90bae4f0dd102dec90ff4060930a4d494955eca8c9daf65367d0c44eed920421a4296cc8e17f02300724afe34fd5e16f2292bc5d5f69c0d5909f3438b175ac87f08f85bf38390f6e5ee5e46f9473d01079da4f501f6978ba0302047c435bb500683066023100f5926481825e6dfbeca908b09f18c66e7dafb6d72ee62c310e16c1448fba99831f38859b356932a39eb759fe841a019d0231009283f3de56be6fe1a7dbcc4c21ed8b635c29cb36cc5db1863155d8d8a2b052214104fa657c865bd0a83ca4368d92c5b70302047c435bb5006730650231008bbc24b93b8513974af57efb960d3da09e03023365f049f532f59d4271162c19b20b153a009a0edc0e159c11b5906a6802307b3dbc835593d1372bf6a6ecd4bdfdb82f2f9f9cf88dee1c3013ab636a33df17a99e71476dffa65f9bcb83eec53575460302047c435bb500673065023100f9bccec62e441d7adfcfe4304618a9d3870585107f80dd55551b78a31348c549573a0cc2684223aad88e1c606a868cc2023018badbfe6c25eeb570930ec46d00f67a9a83f5f2589b0c3b7cffb9c370bddbc630f3de14f168ef3ec2a15d44311502810302047c435bb50067306502307111fa1d8b74463a6e962ea9db7da9e44f325a68ce4738a307539d12a0eebfcf3b6fe431a54d58c6654efe8bc5381b0e023100f880b5f91045934e9ad272a1023764757af7a3c19558a51f01a7507e98ed5fbc68fcac95f296d92a86cf27e1b8c294480302047c435bb50067306502305ecfbc5972afa6d2bc3b77fd79dd45c664ebd319645e744dec91194475c47dd209257c33636be05ee083a17a62a6cf29023100bcff51a604afbdc6606e4b22248b279d4bbeb0f709221a9185868a9a661764b0ae6259c1ab9ce92b3abc4c4a0c669e2f0302047c435bb50067306502300e06731f459e2b719588045d7b36ade8669d94b9655cd4ab9b988da10523e77bf88b770124a0f09ba3f262c11b8e11ed023100847f613cf0df4f56a767414dd124fd3e984936c8d65456872b303cf2080862ab4c73b8d9ca5c24ac08f3d0585dd9fe6b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300edcdfd0c1272d393957aa14e37371552e1a4212c5e3df654701fac9f759a395d7c1c9e37e9d9839377cd54104c71316023078fe3d6d1e9f98651948fa2fd4a52d1970f2b920348781c6e61a94626cfb9ba58b00ac6f46dbc52d0efd63d93bc28ea40302047c435bb5006830660231008024d082519adf98087891f4dffc870dfff0602de90659b724d5f1802cfa61e0f24d4756e478a2aa755a5765453327e6023100c7d2be257aa1f48fc3eca80a73bfaaf790579d8db9739f9ebebfa4d17f8478ef55d6a1e0a2f416f30c1328e0925f4d8a0302047c435bb500673065023046694630b946344acad69c7bf1c1df6d09e27da63f7e185b5176db2f81fda4eac55e1988cfb8075110d94d95632347ce023100c7f774bd3c2521855ecda8d6d63a34a129c95b8393644d597be7d15eef6d835d39245c231870c9fb36251fe5763cda2d0302047c435bb500673065023100fa2a010dad28ea02d8017f49325db671a8adb69027bb7b48e2dc08409f109db44a894bdca62a4a65aae64d64c40869e702302d0b76e150d47380d5c4215d34bd50754bbe2726dc50e364edd982a9493db728931316abbc797819729aaecec9f10d3c0302047c435bb500663064023052e664a41b9e2152aa4f5f40ab2d5d7ecfa48ae51dd9eed275b05de8e849ce674056f4507b0b1de5e5d670733bbd2e45023054e60deed56d46120888707dd9789a6397a838508e4bd4e23028d55ee48810a6010b9feea85b8042d7f1e4e095a027f10302047c435bb500673065023100a748ae032df29beed9e8435c509bfbc5f6663874363e2241f9e9dd5eaa4d9035b3c1d3db95f4195b9855b8604033b46a023052c98ea5086b377210967f203ae54823be6d61b89259759999ed58e4255760b51e19671a0c5bd8b0f999cc004ffc94450302047c435bb500673065023100f5d86e1a5bf0722c5dbe7a1df620f29eb7b8a7c94463193a9ed959ad95d082e6eaf3773704c7e0dc3e454f9f789c66a002302e5627a5d6830bbf57c38fc610441c4ad4348524e2c971e25da2a9e03632b4a59cbee205897b7c60e4e91378c80132c60302047c435bb500673065023100e5affa2a401bec32dbb6c2c3acd791bcbc1f1b1fa6e1c35d640b84fc05ab9e015a5458a290db66f304997397a82651ba02307e58680c321e04706ce8a2090dedad21650c5a360c76c64ee695a7bce9e61b183ef413371d01bddf30a93b11af02da010302047c435bb500683066023100d3b1b1dfba99fd2cc6d0a9e1e058930a36522fe8f6e41bec87fd8fe8a5496e0c2c457c74e81cebcf419e2dfb8edcb75c02310085b8295e1f4a3f8f75117c85218d424ded33dbb715a130c6c3682e1ec82154e98f0fa71145a78c435f8a8d72c9a237500302047c435bb50067306502303779af27b30ee595efc92a337128145345ff4a987478c585d97c37ba22d369724b76204e679b1b493a8b47d7aef379900231009edc453d5d067cc4fd13840ac1ddce887aa8d40d92ff7d3a97acbeae85af1828b45d664890eb6f24c104a0db0877715a0302047c435bb5006630640230484dd25355fc819018162702ae826aca2c5cd134b1bd59865a36c2623338f651b8f9fab0025a15d78fb972ea7969591302302e9384348900a6c249dabd77057e110c94bc3823d881bb78b4ee9ee1784db836531c0aba223392309202453b28199c0e0302047c435bb5006630640230568cc74d3af606fee70e258daef36b9b85777113b3e89fcebeb51ab39db088b4a61b6bd156cbb0bfd7d5596b7392800f02304813cc15982806e8e255ed9129bcd321d83b0f0f17a976b98993dc085dce5a6cd846607feb9f5b6e4bdb41fd611a35420302047c435bb500673065023056bea3631da5b9c0db39f4afa30f019be5d7301fd195eece1877abd2a64634b74986a35c8ead749bf3b62d9b0e01d1cc023100a1718509c5fd41068b02a13f05363280c74d70f4e968432a367f814f2ba7f828f71f80c802c0bc8a6aa47b6a03ca79e70302047c435bb500683066023100a6905f7ab298dd32145774c12f9f9b4b27f065e8953d4b1613d30c22b3ec8ff4f2b38c76dca3604e6ed736edf3c28557023100d448c63d8f7c908d9485de468d6f0554c548646e0e72ddba4af3e804a13709fa65387b83e2aaf200f2ca7d8d177ad2630302047c435bb50067306502305d85c7504fc39f4e05b2f6e7d819cc26fcf2bb7b691e05134115e8416b2d064cfcc9c75f8debff711332f7bf46835e5f023100fa5205899f73927b447636a6d6c2649becaa09f7cbd7cfcf782f3696c411baa00d5cc42488af8d173fba6794578ed1a00302047c435bb5006730650230656cb80d953bcf329ecfa83bb8e0cd574002c61de155424890f97b8e795c271abce426a23575c9cf09491b7038c8f6d50231009b3b90224337d9f98d363a854070080492b8105fba63963eac7eab14eac1c5ade6f8bdf3505e057a6ec343cd747d04720302047c435bb500673065023100e8c4cd165516315c7a6dc4d8c8f6e16464de21a896aea8e0bf92d47c14f131553a436d722eb4bc852b226ceff721357f02305bcea91d2ccb94aa907fcac16d50db82de77bee19114e7e9dd7784760cee4ace0612445511dea6e6fe929f0eb67d85240302047c435bb50066306402305861e163b4eb3960865410cca34ddfd0fe278e60250801bfa5b092d14d902c0a70af33568a43673fcec213e0df351d1a02302299d81f4d6d6cb307337ae80266f39e1ef24f791f56e63a2399cae9863706e1958f8ac4b4187557972ddcfbbd0a49200302047c435bb50066306402304d21820fa602342626d6fe4949f1f67cf44cde9f5e516a16772e20230dc1e11a8e08a29cdc65f912ffc65a5892f39abd02304e0573d38d2f6ac28880fd6d31f08ea9c4c04163630366f2250855c6bdfbf12ff6b14a1a22190f4fa172e56c703bdcbf0302047c435bb5006730650231009d8facdb856c1ce6e69affd36edecf64e4d577b29330ea2fce4000d17ed75b4162744f28a327acdaf606989a40475b72023048816e48cec947b127f5104ce8e0b634b0a4e46ce24a45519a813c90318405d5ba5b421f4267a5a4d76fd34ccb6fbda20302047c435bb50066306402307500223f2448eda7df9070f5ec98b9c14900c8589f208e6e78277ae1c3d81749e7c450bfe81620539694533e1c3fc0df02300bbc324379b175a7bae31eb8ef4a033f07eae040e7a1afb2814f5772a0ff1e7607133261468c0caf8436fb6f787129180302047c435bb50067306502301f70c4ec79b17df242298e519bfed6297d148554482793c9bc0dcc3334ba5969a1849eea5236b343474861469c58b2ee023100a45155a2da32deebc63ec83a9e82c8744df091ecf9c0459f559f062c3edf8bedab2a6451c8dff23fcbc6881f943156f00302047c435bb5006630640230663b02a891eab11c0299b8d5547475472301390b3b3266be458711957ee2aab52ea6f72266c250245e7d440b782a3706023029f03b5ac95e55685ccb34fe2d1ad09796b259bfdf553e7d5bcc15b4c1707e53b67b30ced571e7e82300cd06aa4554a90302047c435bb5006730650231008e767ef1243e2d834116aec1b54821fca7150c3950c7a504faf21759b27dc774b3ac57503a5fbeacfed790ef97704ab802304f3ad1f833b52df2b473d3d26595b970c1030d858a664095cf95397494f0c3caed0eb992818cf0d491cf058cbb8a5e640302047c435bb500683066023100fc85777b1de4875ab0e25de2f2f8ea02f523b90ee572015c68210d217d1fe06c201c2e346d40829436cc92c108038ccb023100cb412e7b045db7d82354cab5950ab97788e30e161ed19c2ae670e6ff92adb9a5400a54793fda31ec3dfee5f12db7a2ed0302047c435bb500673065023100b5fd4f5bd7f9666e0e53d2347cbe6a5edde01b640cfcab9c5e350207150fcd5be8e207ae9fbddcdceee37810b3b1af6e023050201bf0f236dc7c036167761d4cf104032d6f3607adc3f1c345ceb6fbbd447605e770e10a0a1aea12858b21f8e09e7f0302047c435bb500673065023034df7606a11958e7e9133ba3e6d399fccd1e8fb95bfdbb009c322287d12c8fa5a9742f7e345351528e82b8c114a798cc023100a6a3a57a5fafd56a3c2adc940874eeac77d5deca756e784913dcd7e2e0e17b1842bca58f15cff258c261b5f607d4d2f20302047c435bb500673065023100f79c27003108a2d3dc2dd1cd50bc9db55295e5120fe3eb43125b1d47394f11a161b679af433190234bfb26c9a48757ef023073ba4bb047eff0b0666b027937d09651f139ad0ed900ed5397a3a7fdacdd995c7d4ead188a71abc1eb142e4b82feaab20302047c435bb50066306402306f2ca160db5687372f9131d9fe92ed062f2107a54597e85aa966a954f1207caaec5c3198756db8d2cfe6261c15b5f09f02300d6ea3724ebfebc8571cef90a73f361b7f98cea7bad132d6fe9eb0cf35eedb1ab2b5fe954babe1403ee9b35c8fe45e580302047c435bb500673065023023564541d0c234086e4ebc276ce56e63e98acd74f3e3e9c579cc1d8a93a2845606ee911d548c976fcc9b5bc344e9f189023100990a9bee5327b1ce54633b63315a28832434c87b8b079bf1080ce8870e6614c73d65df64ed738816ebcf24f3168cba870302047c435bb500673065023032d5d379eefb1b9b36c827fd7cdce6173eb1fda58b43906fbbff61e25135cae4d0038149dd43316a8f1612caae1b11de023100ac6d718ea15b8c6a73cf43f21069b3d436f4045e652cf2c994ade18b4667cbc6a03fed16f28bcbc3448cea39281508660302047c435bb500683066023100bbad89e1e00abe5488d85e0adf4f3951e9ad7c4765d034fa08c9633669d8fdae1ebaea2c70e4a59d6dbc52478ad6d996023100adbc4b6ea84e045f16e5b84f6fe3fce6b8a012210a3f3291340de60ddcfcd7d9aacfa4107f4ca3ffe81da6b83b03f9d50302047c435bb500683066023100a48571143d0a2cb5ee3c33b0bf4e798acdc35e2f99a3ca3c869752ec6b2d34ebd9ebdb164d8bbdb3d14a7c6ffcc24a04023100f44d0c3e85f1f3a35b40d6c55af51604e232979e12ed04f2cfb4ecd28a7269eeefdb0cb3ca35c0c9a4f03a424b4e6f680302047c435bb500673065023100b0a7150f12552b8d1e741385efc06e3b277739fb55c759370b17db7afad352dd2f9178ac1a0eaf57aeffd48161f1e0dd02303b596dd4fbd389eab465324cc0c3346b85fef123213e329a8f7187128f85369ffb4c7e37fb65d9d23469d9f8600bf9300302047c435bb500673065023100a1ec3f30282028fd3ec676fb5316e42103635aeec6959d4ee9e5a9f9cfd757e2a0c1674b6d9655b099800a4f2b5eb63702304da67b5f2849d411c9882350bac5c2b89412736d978b6b36a005f04a81fd2d60aa744425b37ebbc457e6d3ee2f597d150302047c435bb500663064023063a6b5d804e90624a96bcdaf364cfff10842d2b31729c55d09bd3ec8ed0e0d15decb1c02a59f174385b5ee1f4d57cdf7023078550ea511d6b582a5ef69b219370660f7938d1367812c997b35f51d2fd3e18bcc11d8750779276cb7a970e4ced65a990302047c435bb500673065023100d01770452ba69414a8e929d1d4cf8104529414b55a88546292e2466358c383eef73a78b2ac9e1dd77bd68c59a736c75f02305d539f667424f1348f141889508997733c9192a693778b46fa73c031e02e8ebd06eba781512ce4bcaf0bba8de182997b0302047c435bb500683066023100927a35d3111fc9e4f6b5b8775ccbd8f78c032c06187429f913c42e91080cd1cde97ed0a80bf9b3cd25a53d72489ad716023100c0692edba82cd95723bc1e1816424fee012c328f2645324fea8bb52dfc68e5692f28947d411ffd30f5cf0a400de47ecd0302047c435bb500683066023100f79aa150c8eff0e24c9d4d4e64583f371d4e4d18943f4efde2df15551fad908fb9b239a73551ab45783fced81a3f7821023100cd6fd98cf54b28f0a13c5f8ec8a00ac8a9abe4bbfdc5f875f9f4efa6fb950e1fa1c5058db265ef1d13fd170a5f0cb0d00302047c435bb500673065023100f5d32d4b0a72ec4b1d9c9e1c27fe37e3f5c2c8253dbf16ab82990203a749980fade4401803d868f0ac2e538a4fa908ce02302f865dd0fae5c4d76df78802801ee5f905384c432ad9d51750b28943babdeee82dc6bf6b77f366b00db1deaf311cca2e0302047c435bb50066306402301f8facb5a3ee6ec914b0de1154b973561236f89c9725098ddce955613a1cc8b5cc20152f767d4d222cea4a94faea755b02300b7fd33d879681a879aaf66557552e37803912efe2cac2b23f85c0b0ec966c33f99067d2d0c68956c1bc7c77d02e4ad80302047c435bb50066306402307e74cbc7431b4078eb02719381eace4f6b4a47de2f4d19fd891a52cb0df6283e18f62d3f8a866d27a1e80e98cf1557f0023008ca7e6b60a183a6c56b31f9d907e6370dc5934363ab8f1380b8736cedf679c455aedbf720f313c0df76b5c2f9d9e9e60302047c435bb500673065023100cbe42fbe69977c8a91e5a7e338a9938fafc12013ac0f5e4bf3807ece41e92db2fff4ae40006f6744afc40bb67216a95002304d38d17ab275e443ff0d74b00a07f0b4d3ea2497544cd07976c31dd98ec0114a886fe0c8888c3452dda13252935a95670302047c435bb500673065023100bed882c50f1df3959f82fbdb8aaceb68a1e81abc2bc4d73e481f32634578ed5f833bceab25c7283e815cdd573ffb3a910230794db3b093e59a4c6aba1c4dde63d10b8c0e29235cce6a48bcedc4d4c798f0f703f2fb21c7280d20e528eb878db8e24e0302047c435bb5006730650230252f071347b6e7a43f9f354f7358fc5064fa3a7d8264e08e4152a63db6684dd7bc5fb7ed56545f28a83714e2bdd8a37d023100ec8ad1dd73d79cac12124b318668beafc2f416056ff1f4985e963d530cb19e64e37dc62877c58fbbdf928d491d843df70302047c435bb50066306402304600167ce2e299720693958147e33a40817f10b7109bc113ffcfefcd61680fe294d63de7b114bbefdde6a0bf43d5c36402305fd21df5d128e3a413d2dbbcef17f013f2ab263a0fb1c87678351b5aa275cc857e90704172dc16ce02f3facb66ba7a2d0302047c435bb500673065023100aa78ebb1e6d98b896c57b35501cb010d7abf05f1e943875bf7be07da36a5b8c85db0640f1133a33991b29886377f83450230282a00a9a1ca5d518a8a1734ba82b113afb62705c267999157b69c38242ad5e3c26ac27f4aadb08350b66f5ccf752e570302047c435bb50067306502310089c9ee77b0d5ab18abb64670b4199c393c8d5de04f03b2804f30d7df130c20ba24f6312aac375727f294e2f1f2ecaae502302a0ae5040ecdc865a8b35a459e85627946b20de0f774b015ada6917d2a1b2a56e9da657baa7d364752357d57255236140302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023014e8d86d9286b810d39e7c498d2dee3b2b70c4c5fffc2958103942dcfcfa9b33860f9d6f650184f45756a4c1c4e2a637023100a780c9a224cec91529558d3ef500888900577e1753c3a6e86b88501f2388633aaf308dc80d90a2023162c41e6b8dcbdf0302047c435bb500683066023100f5393573b2e7de12697d9e1b14bffaf7787fbbdeb7e335b1889fef52918e1ad046d279790ef30a6f814c3280e9df68dc023100e4025d105ea4ff8864cad1fc7a0935e0c0d0b8125eb5872a9c5a8491176cae8a1396e23e951b8567890f3834e2764df60302047c435bb5006830660231009637bc8f8b3ae8a83100e3c885962949a6d5c49b028349810f0efae9a7630befe9f1f822e7351909864383c15418344b023100b5e7b57f001f23b14cba1aa95b20d0cd919142ac2c0632f3697986bda78cf20239e39d75b758186935c68f1e6ebb14e50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303364d2292074df59f84b92c10204115e91d31b657cab5a6842c601a0039bd504eeb4209fa7f451638fe56ae1bbce2f79023005484d2ceb640c3e0e341b3caa47df503e299618eea7a5a80b33e956ec1bdfca7f9451d78cc8acb1b1ddcf5c4bf16d240302047c435bb50067306502303eab43e6175a33798c9b41287ffa7a836b560c54460eeeb5362b6390bcd9df77b1c78ea45881795f0807f554181799db023100d2d9a3eadb54175b249786db537552afce1b4c28e7ab961471c822a6c20090fc2d69aaeb0009e00e329a7c8cb5c2fcb60302047c435bb500663064023007bfe053bbc96e6f443892e755e9cb66f8fdc3b76f12b22aa7a0a868fec3cd8130b4e0f5b27d66275fc5ada081c2ba0c023024bcaeac4ce279c04e339ee37665bcd7e0b786e567db960375cb029a68123964ec05a7e766483dac01d82efe9f4fba830302047c435bb500683066023100c651b94eda1807a22a13b363380793fcfb566a1882749b6bd2d0a0ba7e083b4548c5d66aa9e985b73892221b2659c25c023100b168092f07187a8e7c546b9078d6f8d6c1e011c35f7501bc756ee07055aac731b1d69d1c20c1802548fa1ccb39b48aa30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304c9aa0afc232386f9308f1647065ec2a28935e1e480598f180a3964a9dfeec1c449f66e0767b0829b13d21844fb74ebc023100812205e009adb6f4f1a20b0c08c17e14a43c78a57bdaefaa1e902641b363dc6c7d3f50e811b9995e9c4165da68d7b94f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d9fa86d7719f600cefcd562e21c13a5adbf00541da271ceadb0d004c45728a9c92dd7c25388f6f9068104fcd0247cfe702300ed8863f126a2480f85052bba5e01a0a191b0cd91b8328d5acdd46a9e4e09a5c1d1cdefc90df0720f19b768fbec1d4980302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023009a2335da6a76bd9cbc5bd6b8eed657b4935ce0e190523e4e2408de6cdc7e76dca1adcd20cb9303aee108001f9059076023100d55c075ba61e9a4a3a5e49e2fa0a7c850017ccb50defc47a8732632bdc65b4435edcc00262228334caca763a67636db50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a4b944d772f5773166603271019a3e7a5dfc5205f7758143e4f99fc5e32609a4b73c05380b519227f8ee0734b157387f023079803a219773087f0547141ca0cf4f84aa98e86f2a2aa19ecfe4ecebc9ba017077c29b65dbef84b62699bb807896b6280302047c435bb500673065023100c1e4a7c0fbc20ddcd26d2d37b6f5dcc6f723a46a902b8cfc70414833a14c2acf2c6b2336573c424469148e0128062c3002302d667e1c551284cd80fbfceab04cc2799dcdf9275da3aa4fb53bfcd85269d4013280cc7f4383ddce6184a3ef891e1ab40302047c435bb50066306402306a7d6544f8f5f4fe4e2023b4a405811ec07cb5d9dfe4faa3c63f9085f375f75fd4d2665e3d3fc22d9f96cfa558ec7bff023008067fa76d71390cde165962275f3ad7b8188bdf846a1a69038f9396802ebe88b2e5497cfb2431c20fbe1235dc4f27df0302047c435bb500663064023010319488a5aa395373816ec87f64d12d58882e5628fa5b47ad7875ea0bfc33c7a9bcf25b0ef482556046aa54167cfaa602306fd919ba19f91babb8700861c8610bfd8859bbdde79867f3390e310874fb664fb86d452c3af460fdc0b2c77b4c614ebd0302047c435bb500673065023020a7932451b6e29845edaf614ba0a632f30ab451c168eaf526f7fab6e6cb117e6162660c99b1a678ed614dd623d6e821023100b538add2f1c06657c7fe6ddd6d5d500071bc8d96dc613f696c996918437a37b9927549e3f5f909379555c0404fa35eac0302047c435bb500673065023100e3ac13dd2333c020023d35ce0bd073caa4302f9c6cd0603ab9c7dc42e3258995f542c3304634f43d8c89cfff438286da02306e344da0eab6e89e1d259a53be3eaf3495b451e8fb39711062f2dd52ec4b4deaef3795db20f188ad39d7192eb9dd41380302047c435bb50067306502302c020817331f02dc0cf33c8b1eb6641d4a1036cedb4ccb405cefa0c8c6313573cf69647a2e73ebefb064df08f41f62a7023100a1c08bd9958332f420d9403fc87978c69d8f1d2260353f3500f14c5285f0c366349ac0fd051cdfdc5d39c211cd41e99c0302047c435bb500673065023100f558488c05825457b50da674bb6c156d56513a79254a85d1f9cb0313c82f9a9a0f1f1a5f39c2cfba94ea0b7363a289bc023004506762ecde228e5fc52d010e38c0baad80ad3dd8239286a0f9d1b9c906ce0505b677ab3fd652748c68ebc582657fe70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023062f8e8921b8a3cf09c5436a5e649918687a948a7c520247c85641e22361f4c0aed778a50ac3307237ccbb9868b17305f02303f3a2f6b06ff63b4da56bec45eaf6d1a47cbff027bfad55f5b1d710cbb00952a3df196c68b2a355ae835563042e2e5f20302047c435bb50066306402302545bb6d1242aa349e960acf92c921c56d6423b733e538881a306753ecb511504dd793c492b80644588937e1655a25b3023066860ff4734053f9175aee9d0e11b917f641fde61f6dcdee9ec99863ff7dd5d1e4b39ca94c6ca2aa06be10e55a48ada20302047c435bb50066306402306c0571f210962fd887212f763605f8a9c8d4354c167010ca9e3ee94dfd1a3a22fe3057bd6ad504f436f6b71764850d4e02307a003dd3ba99564bed3458af4d0c3540ffc1de365aa8fff6d7000a9f2b24f01b2bab282fef231446be5ec69aad2805180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100dc872803ea313b692353d09828a5baf7a2a16683b73d8148458cd62975b49deef29e1c4afdcc54a01c030a267bd2b379023100ea1ecd58f18aa0a76022bb11b5ffe61f2ebc52d9c79215de3256ab21e1976fc45ea543686c1cec15c8c8978875e01f710302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230724fbc016f96e48153ab0124f2827b3225fc29bdacca0dca15b610b31367a2fd3fcba5e57912a17194ab5044d4f591bc023100ac0405785595d62eb8d17a4d51f8decfed163346a195f2aaf6109cab8773b47f24f58559ca4198b161c481afd87ef90b0302047c435bb50066306402307517ad2e1335658828cb52b89b2a97b841097e598af5a3a6f395fc162a55d94dc57ba29b74dd2e279e9182d312dae23502306d3ff3c0d473fe8281e45bc7686e5afe5372478f91edfa2da643d0298edeaf96b8231019020f9cbcf777fb457404b6050302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023070438d66378b9f83b48516abc6bb82827aa02e835b1f450ef5f9b41805f31a431fe562506d19654df7428297c47633b502310089a1356e00477b049043dbbac777a63f9fb7e07d6c0eae652e270a1391881279b8d4c9c1bb224727777827f6318527520302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230349720394957312202040d5d95862f9c76b99959aa9671637615a5db0c7330cd06dd512bb88660f9f65a4731bff49dc6023100a2db2d4e4b5eba985d8ab7b624815c5dc2731a73070869e51df9380114783494a9278904242cac411852082e9aa446240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304055e957f444d74d46971e40336f85b8669b4b235f9a2e578a4a60a38a53fae32f459988dd89cd9d51e04cc6d57634a1023100bbe31461fa964e03c3942b7b031cab57c56f196ed50ec35979a47b69863ce2b6844496a23f8a503e663797adaebcd1690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230513bbc27b45a6d73ab3ce6490ce302e96cb138d4a7bc7c517d84b58e441c36a896f20d4fe8e5ba28213685fd4fc27da4023100ebf0b85cc200b51d008b6ce733058c9b7ffbc9b9f7a9de52dbbf09a8cd7cfd13659685b6143849fc01e21a0524abca350302047c435bb500673065023100d8fe50a423f7188a97e62805007677600d7224d6fee54d90d21629674f666b5653ed9c7e030d49f35cba010505a1e0150230203a249a62efd82b2c477c3e52359c64d35cc257fe64e7a134a723cea511e10812a8c0ee61f961c0723f6e5f79ce25410302047c435bb5006630640230361ecd8d31295cd2760bae9d7e085201a5a725878dd303c110dc1a9f6d40c9574e0b89cc7216b1339c9147be2421895402306db72c2a91aa2e8cb3fc99b7648929cdec076a5ac96ba9f0db232eea2aec9352d93e5a3d72e2113e1999b30bdd28cf2b0302047c435bb500683066023100841de5ebc544cc2f8f46acaebaa124c689cd4b6a450e9ac0ef4abb4d40b9b9210d671d03127b1123c3aa3ae2ede57b3a023100fafb459eadbb99cb9f2023c3d86e9789be81f7757068276dc78924036fde91e81c20cb54a4d46d748d2bd3d7b4487b190302047c435bb500683066023100c12a08b4128db5faa870434636e79d5738ea7485965f0b6c2cf71a066f5abd2c49efcb6d95b637c05dde3e1957820780023100b5803c5030623082215be1919704fa50c0ac38993d97a8724821da4644dc626c3adf51b737fc522188d419fb0e59ffce0302047c435bb50066306402307665b26cb62d9f5a46f49c1eafe8cd0c514e41531f0582065286778b9fb8114262712c60856f16a7c520ae536adfbc2b023015839afbe309da7069e045ad76f75ab297a1602816d87b7dc60a9b5923ae2b52869ec44c3a48f5122f58d18988d190b20302047c435bb50066306402301b926a58a318ab5a6187d13d26e3a32bc30213c491a471bce93c23c53bf54711e89f6a802fd2446bf6351fbdeae1783302306ed0f77e0deef2187fcdf8d5f23c58a7cee2b0fe0680a3ccdd8c47bef7a2c4dbc88768b6513e8302656a441d34888e990302047c435bb50066306402303965407b87a2b54ed7c630bca76eeefced0b80ab6e05d657a2f427fc8e82d160e9ce88332cce9edeb73396b35f97ef9102304d8c540d172fccd8bf757daa250e432d76c605c000a5bb932ff994c3e6ae2d7a159352de79f7f66c59cc62c192d242bf0302047c435bb500673065023100d8dca4f03a0470198db3e1aab3d4e971d04dc4449d7c24873719efe71e6c6b5785eb0ad55d9bd2fd4b452648567c357402306930b09624dc826a1529ec70dc0872bafbc6a8c4ffeb0458f5c07cbc18632ee531f47552646334885a63b2b299575c520302047c435bb50066306402305e1bfaff77c5c4ca3fdaec3d67eee6f17a75384919c728943437ad28677f5754ab69f56c73e1863b1bc2c4b61756df1d02304a0a09add221c8bf5e3987b35659f564587d413796a8d8113310b98cbbea8ef4c84724fa558606fb5d5694cb80371d060302047c435bb5006830660231009d184a13c7cf55a86a1f4266bab348d3a7f939bacc0fdfa0e6cb2348c1135ef86e6c2dbca26be83e955898dafbe8cb78023100f0c6fa18f83e578567f80090d72d7983bd7745f6a053d5e8ca265dcd8c3410479b996e5f44466a750b15a1270699e4690302047c435bb500673065023078004b1026334e7fcd599b604bbb48006e36e806d7274074a3e4d226121a2e0ee57d43b940c90b1d0bb712f478e93d9d0231009bb8bfd3dd47a06e8c727d7a69a852d4b9b839e6280ad3bfcb8bf0878592bf6229c4047cae655cdd131150dfe87cb4860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023022094ad0c9cf70e53afe0e48a949214e40f1a40f6a106654dfd08916f5deb2341927e45d20595f6d8c8a4f18c55b18de02302add14e826772acaca0feda693e27bd9685be7738c36ae69261841d01331ed7307fc5b34ecb20c5de34d2434abb0675b0302047c435bb500663064023039a77b806baa32100699f4d8084f22faead41f57a3c6e93888fb09f85d77c116cabd0f0b2eed47311a56085ffd8a7c250230554526bf1776e19a6a45f480cfb1ce873938bcb4ff9693ee305162e433c3cd41629e9a07344c774b01d08e03350066ed0302047c435bb500663064023032e52f446cf1af60bb8a6bf3390a5ecb1448419b2b250b69c7f7a4001d5bccfbb3a0b9488b8a8721e18f10d5e96eab8502303cc38bc4357bd821d364d1bca780dfc52cd458ebc90d793e6076de0d5c9610121cf2bda522593ea825d3e5c5267291430302047c435bb500683066023100acf7ec81e153a52ee8c37073e97c9d2907db4facee6d09b2e14418b65318fbc21cf0e72abdcf3bc09564d838c2849f66023100cec116ac28fb0e8028e0e927712aff1afbdfd02f60d73cbc6bed5eb71e855a7db773eb2c28d2a159b8efb732ec595d000302047c435bb500673065023029808b6705200689435b9f2e0ea896c37bf777dcab2862a22ea22ffc853bb9d064cf76aa126cf3d662915f9cae48888e023100e922c28e8e4de8f04c9b52f99c3b1d5118f6297e14e3ed002f0e022c87326032584a997516b7eb1740c2e1f3f4c876f20302047c435bb50067306502305fbaf94060dd7e421f70bbc554b2004f4c2fa8453a50b0886f2f06f4d70da9b0c0229a7eda568470324f0f2298130378023100f54012bd7803e688ab18eb301566e996cae68ab5c2b1f2e272eb3c462f824189b819de7a2a105c4c6322691496b10aef0302047c435bb50067306502301b8436e19cdbf854fd303d768254be941e0dbcd4940a6df39285893e7377227370db046d901217ce427df97f98abe6a002310088ee0070f45fae7dc3883f587126d3d5d093952dcdba9b22235d7f763f1fff1dd36d5668a4f2100c695ce1576eeec4820302047c435bb500683066023100c257d339efe161b245745b1d040314eabafde3a8bec596c5fd13be4dd8188c5f355d454d655809f23294c7a19092f185023100ac717841a7e1b2ecce7c4434f7ec4218b371c44a5a7973d63f50e1d70c6c209e293d81d6b1cc2138d75fe01bc0f30c580302047c435bb500683066023100f9c3acd7e9a49d86e66d82c619b17b4937af7bffdc303c2f4f65193290d622665338e90308f8ac32cbf8e09227157933023100808c6e9d52def93fcf8e14d3594606a5d384527f3a836b98456cd8c33914221ec62b2967a4690b24c21ffe29fd39cf5a0302047c435bb5006730650231009c478b00841e39aad56952fd49960a8f3b08f0c6fe47afee6bcedaa343d2d89ce628ca69d49433aee11f682434d7488e02303e520330857b3b789c6ecb364cdf91e2be869388bdb7e6f27788e0302d8a6fcb9d011ccc67bd886315934b5c111f101e0302047c435bb5006830660231009ce234e6857d0c0ec925d7fe4996b925e6f44110fe357174273a26e46dcd1fefbab085571b01b3fcda52b579a5acb258023100e0a0373ec524703c383858d8d3bb770a14ef399b32b62f0f65598f5a219811579f048326effa865e052494a7a28642700302047c435bb500673065023055cee52531cfe7b6953fd4eb8abd0db2828a9f62e6432b6316f2e34ee1017fea99322ad25b727f55a80686f55765c962023100efaecdd1bc39aa75318a64888fe02c69c9b94bfb8f8d2fb159e3c5f760f523171b87622db18332b2153c515ae2a33b900302047c435bb500673065023067e4f4afb025af5abcdd0445f3de0cad06c35d4095593780c7efc57fe0f172547ea5e8c5751c98211ffd782de28afbac023100c6e51a7af0ed2b3e075405f69cbefe085dfc0b1b848bc3a8296f14fc666c74e6b94045d2d4bff771a96df55d62a8e02a0302047c435bb500683066023100c8d690c78407ca8af1442f1e92fe822c70426ef2b67e1d1fa6255f8f77f9fc30cf88805d15c1aa6bb57a5d63fabfbede023100f6e9a1de762ccb1a5c3425e278156cd22374a5b48d5eba87286810a7caac5ef9de15d37b9cede9758ff2d6a6f57e3f800302047c435bb5006830660231009f1ab94bd3ab2bdb16bc03d28bcb56ca7e90764db293d0845626ee3f51a48b0c9f6610e5f773e2973a412d0f75ccc867023100c1037fee04512db47599206ef233cd417b4204f8710b251080c4d226d56d697928b0e87d229ee1c11e22af22095640eb0302047c435bb500683066023100c7f08a4513414698591f5756ca0066d2164679730590aadb04bafa0a1528fe6e27ed4e57ba0b9139114715f3b61a71b90231009e9cb3e58f8404656240a32d238c90ca966f4ba848990b788b5b44447f99d509803df8432ba42748b56773e2fe37eca40302047c435bb500683066023100f5bf4b622229edf3313db7f9274490e2b99dd7a0c7b881ef2072929adb939a7be77b7d775ce4c6539fe112f8851c3d40023100c9bbd3a90d4cab4377dbb57c0ff06c4ae7cff2b96e2b01db2dee65e26b49984d450ed507a991b45b6894049146e0db600302047c435bb5006730650230278c49b614d86e90cabd37f44ade4ccda9a38349171de551e6975e2863cfc1a951ddb2219baa5a206c2387d02a77018f023100ebdd65902656825ee21fcb799a8b29487ae7ca22656b7a5884bdb24fc8a5a865e801d16258ae64a07257b92c03f2d73b0302047c435bb500683066023100910330b38c6a0a5d2306a72894e2f38d9f087fded9e2dc78184eb732162e56d9762349d3836f129f0733c35f8e49b068023100c581499e9f09cee692059ce5801f16ca580d1ca386bae24d31aaf14a6979bcdfdf6e7cc17471e0c4acba4f1eb01089fd0302047c435bb500683066023100b1ef9dc619ebe7e59e34bb04fa7203f691613671b5e1ac7e6e3b5809953d8f2287f7a1789b2010f998a15f8f70590818023100c9070160e8e859d118d20ca88f429da0494597e5187d1d5b2ea3ca770b594fa9577b16e47868b0acb0b347a0ee322b6e0302047c435bb50067306502300652940ec4940486917c1ec7842d2bbd6e946f8b78ea841fbb9b109a0d6ae26072601de070618ae1327716a643a90d01023100d2a875b81f5aca4eeb33bada7193a5cf929c2df2d71bdf0bac43e224c2cc4aab2841eeec7df893cad1ba07caaaed85cc0302047c435bb500683066023100edb2d6c8f54fa4e8a44d9fb609594eeabfbb93bfed3b3eab1926b21d4c3ec30265f11f2bfa024de9ecde77d0669e48370231008515eda9aac7b454d17d8483ca056ad47c3a55d15ca1ad6b0406749b26e1276561d6eb58423dc14ecb53476c8ccf5fe30302047c435bb500683066023100a03348584587430a35fb8e76647e15719039faa039f7382b8f56757582031ef62622470e435cdcce7e7d1cc47b5872e3023100f4104c61986f3e51fe8e6fbc537bc572f3c54772e1c35ca99f4e64c6e31750b938ab7e25600d329316773f64b73775230302047c435bb50067306502307503c408a43c0072534481110b40263c9dcb749d663cdedec8d189644f4eb680e7f76637b2a3fcf6aad73d43ca13d579023100b13efe177b92f3461a998a8539edcd93d1e045af97f9f64b0f22645a37c555d144c913bc7e77f59695f37ab8f72311810302047c435bb500663064023012a260cbf97beb74a45afc09e76b6cbcf3014ab9ed95e01fa9e45ab5ee4b862eb9d8650aa59f590e2b10f35e1800a5280230579ffe2ca31364e7f1e24c4a00e8ae3f29f0b762e0b2809fdd2ac965a7cc0d1b53105995255c9337481955c2032a4cb70302047c435bb500673065023100bda36fc4f4ac0c39674508eaf89988111c5910fa7fa53c3e5b6266ef5242e865640ec5ef608014bd5e7112c3537851fd02302e14502bf7e6ccd534f826344cb2ae9a601631b91f543f5a641d15c53792b51ab844fc181c3937c17f7f8b36bc176b300302047c435bb500673065023100b84ce57e4825c61818b1c87e8657edc99f83b94a6fe0f48b6321c5193150e5d02daa98a44cb247b9a1539789bb26073f02307a390a4dd51b4247e7c294d61e9c5abf9a8a814ee88b97d926bfc213f6bec3c6839b545497729d8019bac0ee0e1cc7170302047c435bb500683066023100fad84ed34fd52fb2dfc60c6ef201ff3140c3673aaec8d788f6f883f0aeb7a5de0f06e0f7b852cbc1968f45a7ce41c2b3023100b1b1d0312c79a9018f18fc086989fe3d93905bd674a258b1d50eefdc35ce7540d2f9d396cd50c15372bbfbf685b647050302047c435bb500663064023027e2b8efd60286e88c7cc76c6ceae60f4109f3fc2bc2493692d8acdafd05a98f20eb24847d36b781e785a76ae518e076023067ae7a66244051e1b0eae53fb838d339c926d37e8a581394bd8926884f825285135de2aa7c37a561c8380f8048169cc50302047c435bb5006830660231008d0c2ba811a88a24b3cc4674563476b0aede0e237e459577da42e514580d6b260a683ff2a0b54ef7fff06cb2f4711019023100d6a7a6d06c1fc0c92a70b2f01793ca0fcf347909a86632d1113592370be6881d759beb77ad78650a4ba8094aceb7e3790302047c435bb50067306502304c78ddcd1e1af0b06b593cb4aec1b5c6ccc299e8c714b5c61805872369169c1b6420e3e7d59152e2d12ea6c371b59cca0231009fc0a46cff5d09bfcb8b38059b9c951e5a2b0e316fb277e7985659fa1012afa77abc7a72cfcd2996b5ab217762e7898b0302047c435bb500673065023059d51415c29d884a9dd8591b8a6e70a84336b96c1a10339926f874cf077b7a9ee2cd9d0b8d7d28659b8097cf5b04dcd9023100e5d5b115559525f9ccd0b68938dac933f0401ffe7f1cefeb466a7aa4abf5fa1f4cc63716fcc615c7293a5b4fc72d4b890302047c435bb50066306402302fba0543e6708c59ce1b1f76565ea823272ca1828bc04a0f6534f16d039360176bfd5afc0136580f5350a75ac3e8f3d0023053c34fc93e72d6f0bc868a1cbcee70652aff2cbdc0454e5a10ae17520314f8e10228cbd08632baaef68579566c8c4dd80302047c435bb500683066023100d178e074237f54f0b35661f10ff9c2da853ea4246ccf0aa62ddd6f2eb27543bace52aa90590aa21a9d84f0fa5154a4250231009c3ea1b13da6e517dab105381fbd9383b0b17b0d9abfcf1db1c8106d3f146b39aa3d6235e09464a47ad63794e3fdcc090302047c435bb500683066023100dddc34d465757246eb9eac4b3f37cd2f0d45ea1eeb3df7c0e199b59f2e251e35eeda1180ba34e323ceb1ab534393212b023100a9d02bf7e3ec238896ffdf16c4290994fd91e4f98025412c05132019960c71b69069425c4f953021df6271eb55034cc80302047c435bb500673065023100a58f771bbebb0d200581721f5d9b6245fdae122da533ff837e8a471a7e02314750d302d03849da39e733d9ffeee3d55002306170e2cdb0de693a946f1412a0b45add5c0d149f2440cbf216a134b282ecf985a301b0da95e462e97246c5f63ddc27df0302047c435bb5006730650231009a1aae438e664b7debf263aee291cee5a7b7e85801fa5585fee58e9054e24b5f8bec8986220d58bfa26466e1706685240230238bd65b17897d69535b206cffe9f00717a097a1ae5c6e2663ca2ad78e4afae27689af38d7af9cd45c42e6b88f5aff7f0302047c435bb500673065023100aac493ec2e5d812a311106807be3c9fc0ab914a60b822b7d92a263d5ed662415b74e9a6ca434b0c78b2600a3c3ceb5cf02304f0e6adbfb6df201e4161608c7cea86393b32252bb06ec564612a1d733e3e6837d4ef81a3a91d4498262d567dec90a1e0302047c435bb50067306502310085416d4b9ce78b919040f2203aadb86d39e1b64de6a761b8fdc7208a58159e9525b52b8f7a44fd571e53bc2e6a228ae4023047a7280ba9d15a3b2913fc27cf8de9b60efd9e9611da1b63a81d2ec99ea7c8a023023b2d1703c79010cdf4cac16c99de0302047c435bb500673065023052ab1107c68ac667fcbce6e71a0450dd807c255cab82202246bb588610d4f0509b33faf8d92d517c3e8032e1fb5dce21023100bb1a768ef47183995f8d97548df89106dd5d049dfc721f6506700767d30aa7b4edaba59ec198fd7d3e8f2dab4de33a140302047c435bb50067306502300685d26bfbe26475a5ad1a8581cacfbfc9bde356b965b39f4a273242b7e434d0624e57c1edd8eb04cba7144a13d6c104023100937e22682c82880d80d98d7a3acac90cad5424ee1c330e07428860ed51fa3bf7014e34c76985707396728a1b5dfcaa2e0302047c435bb500683066023100861fd199399bab207c8fda1538e12dd6f6a53d44865b6f97040a07e630b2d86154d33a3538d699dc7ab52f441d833faf023100c78cc912556385a83cd69228d17818dcd992bdedc24796cc5927b98fcda5d51f84346b6f42c81a5746eb95b15bceb4f50302047c435bb500673065023100afeb91e63a60ea0b1889e5cc0aa13e5820fd100da08d5fccc7acd6c3d1c79755c4f4c21d3a803ae5adfb2b91d8250f6e02300f3a286e7cf34862d6f3f78ab3492f55838fd26d97be1809774498dea466f00382f0fec628b37122259f01d45a39f9430302047c435bb500663064023047e0756ef7b964de9b9e91eee24666e2331d32e6e1d34313f07dedbfee01b2b8c9b197fa3495bdd39cca0319b697900802302ed88c4a959fcc3153b4304edbe36de5713adddab5b2f7cadbfdd9fd43b9a6f51cf6b9976d430c9ffa0d0fb116643f2e0302047c435bb5006730650231009614565c3df364729d722a67564a3f4cfd537be3af97aaadcecf8048e3b31b06c694e7d00101c803b2dc89f747dcc2ec023005232ec5be8ecddf4b360382c2f45bb24252cfba94847f650d4dc3f66ca30fbfd9762c6d62f7f79a313fe5013cd2543f0302047c435bb500673065023056e4cbfb87ab3369f8813931027cc509ea6891eb4ab8c0c85e9cababe726202082804cb304a663687502c933c3796bd1023100a8cf9b0ef56858ef8fcf5795813607c366e0cc33a4a9b03ef0264de7c6c1c07972acc9dffb44135bb40c6f85f1e7ceea0302047c435bb5006730650230168897253a3c28e2e9be3b70cb1b6328cba9e01008873ac347ab7a12937eb02513bd6844591a02307319532e5168a116023100b1b271dc5ac7d0259da7929aeb8427e819e2cf2f0350bb58abb9202ad18e7977341e0956f896e805eef66f8ae7c101460302047c435bb50066306402302db1a4d2ef69083f46b233cb4a064f3f832060f423808a729687157151855749dfa5694be294755bfa545253a5d5fe93023008deddec83decdaa9bf8b34fcafda5fac7a34cf784fdc14c9ed2d9cd15662657dcd65e849228e6cdd4e405ba3d4985220302047c435bb50066306402305109da041108a0d2866fda390777449f1690fb4d88e6f6b242b4b818ab9e379305796cea3afb92545bf81449aaced72c0230699bb866ecad436ab21c372f8c9c6829d2ae5ba767a364b0c8b5b83684754ab90a29d336ddcbdf697dba4bd5a4f84a930302047c435bb500663064023046f9f792c50b8bc390c66f8d0b8e6e0a793f35ec3cddb28125be98387702cf781e48ede9796d551ebaa122a5d44f572602300ac944aeb921c51ee9988be1cb3cebc1854edeedf3016136b222a06c6c86cf8842352da78208133cfbfac3e38111b42f0302047c435bb50066306402306b33db675302c5d72d34e6b7dec58a9a38a22912d4ef1d5f584dde0ef576c97fe0e9ade913676eb9731ba69ce6665bb6023015f664925fc1e709ce206e218ea5b6f041d0ee3d77c0627e6cc4f1b96df9a52f531b36fd2f5f6ef46e25bfed26b0c65d0302047c435bb50066306402305d85167148b646dd73ebde668cc09e6c6e22281d0f0b48af022cfd0363dca9e9b76bba00ef582a2580c631d651113314023043eeaa067f60642ffae29c90fc4794616f979a1df70c6980dd193b8bca259546e158926ce27c6737a680d5c8dfa738bb0302047c435bb500673065023025c5d83faccbd64397512ee852f0df265dc0614fd85a2f308c1eddbfa978f7ced753860c0da8b16c2251f4661b73efd202310097e0d798f625003155ce0d13d98bbbafed6ad6cdedb635ac220236444b6cc09c113cfa7905586f958576d669b773f6ce0302047c435bb500683066023100f3f453cf31a8ba7600f826e991280bfd19a40ff3861f85ec76556de2d76f8e37c0a5522ae1b075d71318b156fbf271a9023100f9a0414b01068075f53ac7ac474e41ed737e52d990cf2c0153fbf82387ae20e192936f2ca84c49d85832e1110212aa550302047c435bb50067306502300efaf0a451eff9cebbe0ee6b1db0e4e8e18f662e59030ec5a504086ababea396fd86ce912c254bd574fc7923aad18f8e023100a23a55ea6e3d1eee8d69814b84bd4ede557190505fb0454a1b9280b6fdf536e7b1b31a3db8d10b0fa76bd39ce07d9ccd0302047c435bb500683066023100d3e1a458eb7f1d620387c0df13773d7ebef34be00c63d9005c1f6a1bc63c4b85dbfeee166ec1ab6f55d4e937f118fbca023100d7b9141f3bfe668c926b48cf9266c0df877e1888cde5a48a379cbc24ab73e3213d80fdf60044ab016a726b2fadb922a90302047c435bb50067306502301282e62e953147ece2e012785bf3c8b13b21dc5c895c6da7dce57ee2aa18ed266d4b8998e8826c98668c2ef5f599fb580231009623887b4415f3a14b228ff061610c4d4d8ad15dc81b2f5e9be5ff113ba42260c66861e7f58a131971dc62265d00ecb70302047c435bb50067306502303d39847075f459f7df8fefe423ae66b221c65bc9c870e46586d58ff8fa462249f3e4781ecae12384767121aaf25cdd46023100958f08b237fa1eb8956a5560ec1a1d17f3620f14587a6821b7e804227b3669473e5e7e1e68685233df6d3259a1128b0d0302047c435bb500683066023100bf4d46b4bef7b1610063d6f9a216e3c2e87bcf864fbe3371a2a45455fee5cdb209d47af4f3ac9587fe966c24985448ab023100c365b338c57d1e42df0e26748eb81d10fdbe2e48d052ac95c0ca903717f9b81d72f27e20eb3ef27d9ec4fc2f0f6e99120302047c435bb50066306402304c8ca216a3e23b5a1026989386fef0e5bf3760a46c94e61b4088294d414e429fc2052ed2b0684a8b9fd50313beec018402305642ad7a81df389339a63012c9347032f52b095f519e4c705ea06bdce54f6f8c44abfe319560b7b09c49c02c2d50adfa0302047c435bb500683066023100bb5fb889ef4473b7b72ec5995de9588d21cd017ff18cc4f9120e6e06661e2a8498603b0e02b73d014a72c4af706aa485023100ddf5bf26d1b90af1006a7d69e51071271bf76fe6972090f56c9e9d030e9628fe8e1d04c73c03f157b1579bb92fe5702b0302047c435bb500673065023100dc0c096466917c6d18624df430911cc4b8a577692f1101819489744690694bc9f4ee59ccce9487a47d326bde6bfbe8c6023031f1fd1e7acc936deb1d54dff2b33368898e9f9a421b5d5232cd4b444abf4a9f32acd747f743ac01beb58b8a08f22d7e0302047c435bb500673065023100db9b81014d867e90651564d78f272467abe558534d07fd32382c2ebcacab5b3f76797f0fd735616a989759b47367a5e702307b451b691a0681f9585e34494ea08d761fd753745118ec5f23059c4d08ed25b7807b1040dbe9131de1cad16be35b12be0302047c435bb50067306502307161c47756673e699ab5b14f5d380a27ecafe283be7a10bdaee2161e8a51e0a33ed5128bfca4e24ab49f20189c00eb34023100f904ecd4042635aec67f952457b2c546b326f6fa628be9168b3eaef7d4faacf8ceeba1a42b0dfdf0d5f0c8e03ee55cce0302047c435bb500683066023100e56435fb75a01ef9b75d908f30085ffa8361eceb817a158978f4d6ebdd63670a3ab27f42f77498fae6d548750819567c023100bfaef3e65fbde43e2a7522487af4632a58b3a25b22958aecbb3da07d85289710c7b3205120509de83247665788b2ca040302047c435bb500673065023058091e9b05aebd8e4ef563233931642a7839a38153a93930ddff0a5bacf62cc957130ed23475126a527c2ff08fcbae8d023100fa54055a813ba9d66c35b55283b1376cf4d0e61307c510d325e3243bd0df9003d1bd61af593f280958bf2f969d50095d0302047c435bb500683066023100f25f7f088f6feb142a80b641df517f808f4f28ee2dfb5d4900a4f61a62f565fc5e7c2e1e672b094cf9c15c78d224c486023100d863b29199cddb21a0e460da37d2d3d3cb8ecbec0a73dc1b2464df93d9268ac7edfa913e42230502aefe3808eae41f3d0302047c435bb500683066023100fd7c9c530fdc2a59d3769c99f9bea432fbb53ff241593b199d1a178157fc7ca9b00828f8e11d78b877cdd7b38acf11ac02310081bf79a896ae0fc0602fbb9a9952cb817eb03af406caa408d9026ad237f5c594c6d70a728249ad0d3e28c230c1d9eacb0302047c435bb500683066023100c811822a22b1efc1f0ce3dd5e1c39bd89372a72b678eb9a67d2ca203f8eefd8855ad3be597ee272f3fd742dfa95ca383023100f86b5abcad6fe801a9c1880c2e419d97118b232abb258964355144380af72f9f3ec5f2a51bf5fd9b342b639268b609d10302047c435bb50066306402302f3d3fbaa50f6c0343c7db89441f79e45e2c71900d2cbe64df487085e9718e2645dfd899e9f39b4bcb6b3cd0a6e604d702305181a2507220d80162d850eb0e02955af98a72ad73406e4de484f8119faf3329717a2fa62e5335410da6ff3bd59f4f700302047c435bb500683066023100a11b8e101f5bbb6ed3f5a81f2613a1f63cc124298611ddeebd4b13d07ebcdd4971ec5cca3cb9d9f5fb70d27f0fba2eef023100ec86eb1aa35168c753995f1a391dbcc7857f06197d036434e100aa8260107a0d037e1a0885bb76bcbc533df5e72c36090302047c435bb500663064023025ab413a746299fe0c318869fb08cc1ca1b99f6df6005c1ce1121843a3f9021b944c4f8d6958af4a66997caa1d21cb6d02303b481136035ca46b212656aa8bce7cc58ed95335080b54949842459f695f48a0347666d47ceccaba7bd77bd3ff65ec230302047c435bb500673065023100aa19b5084f5283579fe339a6faf4a7777030ff6009b54f2f2d77449b8fff222967549063ee73ddcdb312618e1ee213d6023036bb1556d17d245d999f7e81ba1b86b31fbeea8fcf422730cf61302f9f8459956ff388e251f7e4d6f39602b6d11d8f630302047c435bb500683066023100ea1e85097168976420461773beada3c4c915c46dac12dfc1eef8f2d69dbe62ff1913744d07be3ea5a31ff6a7ed1668cb023100f3ef9f99a0b847785b2422703bfce5570e11da1aa8d713c09b6550eda9cd2910defd89b371dfaac679ee9739e5652ae50302047c435bb500673065023100c13bdd4c097071e6a21e02ce7bca8e5b67fd9164e2b211b49bedfecc3f79d7c968e770b6d5de296d35b53f16a60a9bd3023038ea9962df640c6bf94158347cb342234146c9fdd9820def6d18d0077fc6de7af12cf7b96b6f693a83579516250f75c20302047c435bb500673065023015664725652f613cda5fc50383cc3a8cb525136f6367f1bf1bc158dfa94f4f549fc2a68c3fef14865ee0537f5d473fdf023100c843a023fe181ed8a816c5ab60a6620d0ff7b31a70317ea93d45e0193a9e8430d182b27ddbdc8dcaa275a0390f3defc40302047c435bb5006730650230225768eb0babfa287951bd86ebe6ca171ec92c2e9b2c02959970e13ee5d7e5bed900760dfb22f7169c4c729080625d90023100c5851a66e8dab96bb1fbe8cc140fb091ca95eef218fee5af276eef7812891df82a7adcd50dcbbcf1b204fa0909276a8d0302047c435bb500673065023100bfbef54afac657fdc7d147235f8bbe013fc51a2149ba91e1221b56779c339e0032bddda5994fc4ed6138718bb18f637802304af65905be7953e5a795c395ee499aead7270db7efa5638b623d8de2d8cd4083019a1d8b9998cbc877043c06c69c9a1e0302047c435bb50067306502310095845258f08f86d8c5725b0d8af8ed795f054075c4593833f6f39e63e393861c40e8f5c83cdabfb7196bfe3e51206bb102300db80e1a708eb41c68f632dd467ccf87ae917299462d4169c7235a591e1ae197ffa4282970b75f1091155f0063df546c0302047c435bb500673065023100d674086ce052f30929a53fa549a70e984d4f00a2e0f38baa39342b10004b120123532d667f5cf27e0a17f9e4a64919120230285a6a81202f39cc527dfb48ec0ceab452d97a180192417894c578c8ab5f97952547c8b0d9a11dcd9db44d663846dd110302047c435bb500673065023100c4523dae6cad9d7b09747a318e795be3647a8736522992ada911f0a41f91a47ed71405961b91e72e67dcf20abf116dbb023055dbb9712ac6be2e21f0087b87150b054419d6eb0e3c1d9356088832ca4236e48f08471e4741caea9689b403674435a50302047c435bb500663064023003986b5342e5d70d6829ae5e1b8c0b27526458358afd3432c4a8c53712733663403095e229c34a56c8b6226a17401f3802305f469807cc28a9ebfe255800df5c32b5036421efd03476715b5b30e10c28c6676719982f06d3a0ac7366048fe36075040302047c435bb5006630640230707aa28c12148d15c19521d13739787585e7d806e4980d3a70436996818e64f964e0eb036872169421312ec19fe0662702304ecf88e0f6e2586747cbdc53c6f6149370d84af157861635b59c450d4e1bddec2a9c164d4e0b05a7abfbc70cbd80b93f0302047c435bb50067306502306df3cb0f07ebabae6b9dffc6120f4ec743427e8820a85c04c9f0f0da15350af0fb7ab9f698d8933c4cf3889a5eeba24b023100bb390fe0991d643e1296656dfb0295a57c614ee91e7b6d52dfc8f4abc678cb0b64a93f474a529084daab9292c7c5e6190302047c435bb50066306402304bd26ba7642aee8c5e9f87e03de02cd1c2640414e277a0b077c9886871713b943ac116cef362ed963524960949319cc60230438d7211afd10079e874df639cd803276b58f2cead1b2b6690b4ce25551c3050c8ec5f2e2e0b9e0f564a5376cd361fae0302047c435bb500673065023100dfdc10796021aa6dc1f84b93ec059ceb9935111aff6cca1e59072ef536a232d3783c01c3ae9795b8e7bfa35b96996d0f0230423030fd7dc0cf63f9efd3ba0a8ee1962b296d0b6fd7cc6b3998c5b9a4ca7f79a4cb7b3da619b0412ffb06d998fc85940302047c435bb50066306402304d8944a78f958e5e0366829c5c3936dadf6fa7240292c4812262b3d144153f3019ad6f9daf14ee6fd291d0121f345bce02307dbbee1ab10e5ea6baf7db07b7cf218051431818ba54f00736c3dfd812455b71cbb338faf13550e76ba92bd47e5bb4a00302047c435bb500683066023100c3a0ff26f00db01a1bf2a693f0dcd6292971dd0459a6d1a8f8e6489e8e2914fd786fefc523eb19a6445a7c785a01a640023100c73d326c1e79f0415390579e9733d8ae5c73765ca92686e32283ecc90b36b1940c7fd6b92cbb96cc1d1af339e9ee299e0302047c435bb50067306502310087f053fedc2fef58eda97b2592b90403ff2fad08cd25b8a84bb60780024d6f249d87e0d1498732ef7d37d5ed6349548c023052a6e4f2dc9e147bfd16a32fbb646c0d6ef171055a765032972446474191ee71387443331fbbea05e6920055fcc7f9ca0302047c435bb50067306502306578b0962ae60ebe59e6690cd30e4c06b9cbb54bdb37a37f50e8e44679ba63bcf19498cdeccefadb1ee6e1610d8500a0023100aedd1e6615b3984570ba366d788e2f57a721fb861695315a31b23cc9d6387279d6e53a3fc55d91ffb96eb8daa2e59b870302047c435bb500683066023100d57fb933a386078fa9ff4c38999a21dd04d1ea5c030abe3c607f25e762f41a0daa77c5175e7858f4cf38f45fe88c60e2023100d8ca4e59863829fa06932db05817b03f785f0f39e8420b11bae754ee92783a308038868b3a433cd4c20d914e5e7593fe0302047c435bb50066306402301f907e2a332283555b864b633c84173bf7e88d1d417f40975be8b6676fee8d848c12d7e1996a26a8af380bc939b4b47d02304592184039c031d1e91d262f8516598c46d7db86cb6044b57ce4f20130ad2ae3d20327df547a7858bc498b9bdd5cf7730302047c435bb500683066023100dd58b144e7cfeea583719b5d80ac9b447e1e7759d08fdae640023189e2f3ff30e6650c65b4c39159c27a1662c58b7f14023100bbeb9a25b5387a26f0e13e19b0bc41f0864d7cab26075a7b450f3173e4fe629ef235e453f0af983092106f0af5a9697f0302047c435bb5006830660231008a601e4bebb23205c6f5a382c23d58953bedcb618164c317f03c7df3d2b6af8fc6ae05dac75ea7592503564af5685c16023100cf54088299c591301f042e576b4965aea7a573fa6dfb671c51532e8cac8b7d267984ddc6a2776954e74272dfb3fcc4a40302047c435bb500683066023100c4c1f7905b4d19aece6017de00e84418f6846e60a321fe1c29e00b11cf6ca785394b29342b2e99482f259c1cb812c6d1023100f383bf7220dee3629d91da672b9b77e67a1eda04fa4d6ef62c5ae9fe54dd5d8d6d129901662363b8c37708c1992e3f5b0302047c435bb50066306402303ccccee85b2a612f207188f311eb0a169c6e1534d8097c29e2f82fb7669a2c358ace6abead7070db6b42fbfd9ac04966023027adf9c693362c874f7ab3de27e683cf1d8610a384b650ab3fe7860fff065277eff5f9d73ddcbfbfc626a1a42e2940ca0302047c435bb500683066023100d0ea4dd1c32f8c0ac7be6df8316067eed6041940a51eaf1ba3c687fb383a3ef1989a5c232282daeabe2d9b4f04999105023100a71a1a0f7047a73ee1f8eaaba7d15951ad438972a249b4d1ddeb69f05292965947921e47b95f5ea30f1d9aba7d38e67c0302047c435bb500673065023100bd25d3944162b2a2d084ebc0871b89aa46c7290023fedbca2f36e9e01b5a7a94af037724ad04ec2575f827d0f855398402302a0b725cbe59b882cfd92bc14aa913f7c581994bfcbf9c3a29277e6de61065be093e2f116b4b0a44862a6c12f8f66a3d0302047c435bb50067306502310098cd68b00fe4a00b6ce08920be5fb0ee8ea6dfba76fc14e1606fcde8126d8013898c0fc4a64a4acca7b153402b2e68b6023018da77121ceb520d18c9c688914d93d556d7c3474960df84853432d56418f20adaeed3d1042c91acd851c32e90d0b6520302047c435bb50066306402303bc1f2c3e03f628a5f9ac924b7ab3b681e69272df501d18bb3370510f5f4c00e2dbbadf5b133c50963e61b1f26477eeb02304d7cd348c93e22818041565e1ade76da95eb73bc6290a728540371c68e1d5ef2ae93eeef1a3a644378369335b0c64f060302047c435bb500683066023100c8457b03b12f3c000162e015955263f1beebb14859af875ba715cbdd02294b6cf3dba69e897d2c6d53e04fab938dd6f5023100cad4f8a22f7c8aa8150af4f5100d547176254ca9360fa06ad9ffb2cf9c203b18cceff12c27831689b539a7279cfee9990302047c435bb50067306502304601cfd0423d9ed7de70c738e014ed7aee0a3f19cc5c3d532c02e76973f4df7670e780b6d142423fcba2298a4adf8b700231008fa06e10d3c9293d5410c134904a02896fcb790772dbcb7c7503bc5ca9ff1d2cfb5280e604989625da68a445785eb77f0302047c435bb500663064023074fe9adbbf52dae643289fe9526a721c557bf02aa7bd1b0447e562e7b4a1dc0d2536e500c68bd25db1cdd0103b818146023060766fd9b13f72307e991fe9ebca9e6e5b154ab11c7d91994d3b26aca4e9fbec49ec25fef5a6ca4561ef7833f6a57e780302047c435bb50066306402307da7f015700664b6eadeeabd6e7e440f0ecb2fd7c562552d1ca22c66784cd22317d15036887038353e1eceebad000e9f023056823f2e75b089529fce54d49f4690f640158eb6270f7e8d47eaefa71bbd1fbc599235c4ecf9fc5d8ad507e3e2f8fa8b0302047c435bb50067306502300ef13677053b72b4df7b87bad558654ff9cd55c1fbd0458b1ee1d9b9745a73f0eea88043f69d7b9d18cf5e4c6961ad5e023100bf044130bae14e0ca9afadda50b9a32e8eec7042153f22aae229b3d5ec0ff8f26e2aeddd3c52b3dc20bfbee9cc01b94c0302047c435bb5006730650231009f5db1330c0de84e67fcfb0533342aa02182eed438b9fa50be12cd5077fa2bdea0a92eb4788c1e0967241658bcb22ed102307d966ce043ac17cc2a771aa95a3f10a4e8413c81a32f66cce44ba349d94250185fd4f3f9658af19f4cddb545c89b2a0e0302047c435bb500673065023100ce0d6f04c9ac656f82d9cccc047540aca4d98acf51033c16b2ecd2e74540f01e9c59ba4a4deed72a27a454c0084c5d5d02305c5047c1d77f27a0d57c0d72ab44c78a38668a910f3c3e1532422ed8b842dc848fb99929bdcd823d9bab66aac2698e7f0302047c435bb500673065023065dae4036fe7b97d8cf52dbffec052c0c6d5e40aa1e2a99cc3a23d46351c5f347d9372151ea5074dc2a7590148fd74e8023100f0dbe394aaa946f3aeb3edf05b303faa7c7c9f5aebf8bfbec11faadd912542539d0c66ad1c3f3dcaf300db7183b3a1820302047c435bb500673065023100da62b1d718a799799bb136818014a7413cc5f34d11ef66c5a84d9b5158046f17f3fe04b58e1a7f3ac9880e679c6f578002302889d72ce5cea1608a8f64672a344d1b131d40ef64321ff94289bcb2b9104ff367073ccbe2fb971aac9e1c81cf380f6c0302047c435bb500683066023100c61f10ecbc97c070d5e8f6e1226d3a9be769aee3be724cca542b43454a8840124a795f9859ed61a6b7237753c33d263f023100bdf25f0647ecb0565068212360e0dfd9a742ecaa9c86bf7f687fcbf26689c2538388e78b616ce48acf6c6c3e1f4057760302047c435bb500683066023100c4ad25517983b4ca098fdb5b655536c372e4931297d40f66a43b8c99922a7bb638004fa681934a950aebc41e15d4301a02310094a3432324f39298d06c14ec5bd2bb65d048400ea09d6c16a830c7434d8f37cc716bf56d7a19635fd220a0f1b87fa0680302047c435bb500673065023100c8abfae262e0656f84abdb6b2a493670d95bbb91014df401d2015aea2b62c35857c272a4cb331ed3ac15cfb5e86541a7023025a9f12a2fefb4b25e4e6a31245d01f34a9f01d1847fc06209b81d06e7e80ae9ef1781009bed7c78b07fb64e91010d1e0302047c435bb5006730650230333c8812ecc09eadd054b2bd8c075ec413eb61d7c01a314f9e12c9c9de5c0bcc330fb99acdbae977753e59d62fca9f90023100e7d3e69d418d5f09299ed79697b210d2cba3fb923c3b33e02a2c930d593ab1b7ba8e6686cf412aa25c690a8ffd3a82f00302047c435bb50067306502304561b1cdd9a4f29cf8fc0c67a8768d459e21ea312eaf0dfdae566b2683185dafec5ccdce44f06515f6d161a0cb0bd2e1023100b8fa6aebb8c7b718cf1c07333bd916d9baefb93afa8cf8498481789adf8e9945c74736957fcff2df2ab3c8dca17d90470302047c435bb5006730650230603c18e7c7cf519e43f67b1ef9429ee5506f1372aa4a62279a5ff26fd96512cb816bef22f4238964950195bf1e38e969023100a3bd3ec87d92c93dc71dc8f0186f568461ef7a101256e722ab2725067d7feb95ced7a5c23ce7ad69b03e95b2f71ccee70302047c435bb500683066023100868560037bcad8fb8b43df0ca8c9f066d8f5e32c58a368ffebfa1f82c99094f1b66474ef3bb923fe2addb79b942fd9ac0231009b74572fe8a1bb95ec0198d125235994e57b49fbd98d0ee91d0a3a2bf13e2e17bdaa3659b39e9c47270894413349ef0d0302047c435bb500663064023060b46fe7dedb137ae1646b1d9e5582b48aff004f3c5406370dc04f1cfe5ff9dc9a1031e25e482cd76b7173a97975d5a602306bdfcf1ebe4e0a43a4f83c49a89394f66c1ed98cb506cae17f0a1852f9e325800d7f393b95ccb85b45fe73a6bef9f4190302047c435bb500683066023100ae996f62bc0036e7fa7eba4701b35c8092e3471d632827a24cbe399b447d3ce53ba9feb9cbf75b8aecae846262b52afa0231008787a41e7e262a3fe2b08fa5c44bf2dc1cc19008fb310554f18692ea4cb06b8683e9378da4c5a65b07cab1bb8a85e5010302047c435bb500683066023100ca74d6467b4600be6f5e40e9a827dc78397ba8f3f2fd7da08ddc45f0fddab3b08f544b25b7b4eaa92c0730cb66ab8d76023100ee3a35048b4b0252dc6a31f10027dd76d84a95708c37774f403fa3f4e7fe67694cd167273d56c03ba3cb75d403e83abe0302047c435bb5006730650230777509964516b55c0f8d3310f49d58c86de9f2d7a12635e2b442de9b24ad01bcd02f701b8366beea1cf89c32a40faefc023100eedb022aeed71cf059456695598510aee928e1f1a158832145fc290dfd06dd5c1f59a5da995caee154b90bfb3c2e34060302047c435bb50066306402302e4bd3d955238be3b7a445cf00747e665923768620998e71541b0a7d2aea6258366cd1edd599162949cdcfbf0bbcfb1a023055aae34df03974360ed6854c93f117b3ade726fe12db5ffca5a058223abf1c25837d68e5dc40322cc037cec3a61adddf0302047c435bb50068306602310091b1a09e80fdc2e3d70a4132af5df35ccf9bca9137221aa2adbc0607457ef80f4b48d21ec47393439d8901c0f43b0de9023100d5fc9fe9adf80151272d631d5dd115477feb7db17c75365013a306fac0971332e7245dc5f912e3a3fca2fca41fb9bc550302047c435bb500673065023100ed62338e78310fcc5a214d4f2d8f10b6e059f0d61251dff7ba33b6338800ac8420d850c7d7ee7c8b014db472b72849cf023069b0c4887ded5d9909b7f312e73c1bb13d94fbda70ae5f8adf2883f7da2492a8815baa7001d393fcec6f971ea0b44f700302047c435bb50066306402303a6fef27cec6270cf148c97c742ba8fafb53718171bbdafc911c8d042b70298ca3f24826b745ebd5bc6bc521531be742023022ba75b6d7fc5bd8a540728be05ca3d05ee56da2edbf0910647813ddd65f31dde4feb68d7c10ef4db41975a5b0369f130302047c435bb500683066023100b091afcda139f52e8eb6b930556b4111b836dcd47dbd38e328a089b630b493fc58e34830812d8ec7284f168c5b07eeba0231009fbe9601a7a59ab84ff99cf4d29f94b75e35ed14f70e4eb6be6f04b5f77ba73467aabef5a514fc8deb06d94bfee698630302047c435bb50067306502304a957ce7a4da6790699f148d1e33e2b5c0425d9f09ee6a7619d29279568d3d0eda18bc0b876f84ae0209376399afcbc7023100e6e872d5d57506a49baaf880baca7ac73f394202090c2e30966b8fd00ac9d2738ebff48834080c79f39441c1f49b6f680302047c435bb500673065023100c45723188f4ecd6906be52ab56721afafded5742f67dadeb1b30a5f9b1dbc863ba7577b791fd0d804f2d3dc321503cee02306b84f9c5d2a6b87eb729e76b0a93cfcec1e75f362910ee98fe465440bcf67a7f33ab14c545dc9df73f7b459f086546810302047c435bb5006830660231009b194da714cb0519ed1f6d092ed59c1f959b44a512e43ce46f48bca269b2306bee2c90be315f1c607bb09b8fe3a4499702310083d02ace3618f8f4c29f5adb994e25d48daf28acbdddb626873deaffde314e8a6c2878baca5b0f974b8ef94bd025cd1a0302047c435bb500683066023100b449055c401d7d9a70b29f376881ce496575f9ec65efd7a70599ad9660cbac81a5d88f19d28e5ae437d150e5f6a80ae6023100b1fdf67019ef67e468c7ee251e246350810cfceef354019c421b793245e32942561d887ed5487ba30a1f0b80ac99863d0302047c435bb500673065023033e72d422aeea39f5a14eaddefd924d54b1f744941aec0f0bcd3f509441ea73e3f56366086e892bc099e7c46d70e4720023100903e3bd715e6240e4283123f5972f10447df26a858171eafe154464cb5f43caf683fc618f297bfc689041926100282d00302047c435bb500673065023041eccb0172670ea6a8a2cf57d94bc1e582e217b3e111fa0b98a2fb5ea5fe5fbccb16957542e1ef21d758673b432280d2023100ded5a94a32982372aaa40a679115bfa3e62ef40ad4ea90f27d8fc889a6461140561b2d597f5bc7f17bfc4a6af5912ce70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300ad31e15efb44798fb3438895db2e0429af1e112b164b3bb46ea70962fa1e6424db7fe3b96d941b3a0cd2d0b41874c1d0231009ab6c1e4aa6cba199c616647bc77169f7a17d5266adaa576613cef56b17830d5741cc2fb85cf2288b0cf5304326329570302047c435bb500673065023048222eb4b5cfc091f6afe9f349b034505769b797f000a09e1d9206af7b8b80ca0daf7f375565e7c4cd8c8aad1282a7d7023100f34cf9efddc6f79dfff9f0619cfe58b2c3243d3e114709de58015ed8a7280bcdfaabd693894583665a363dfa6a36b8850302047c435bb50066306402307b5803622dee8f8a55c07c66480d204b395b3ec02293dda504ab3aca2eae2e7ab63aa0532e84b12615fd03f15be3314b02305641d8e0b5b5e9265337998ce563ec07906ecd5d48d315bc75795ffd6718c2124ece3c6f9c9daf0e8bb3f8529a530f920302047c435bb500683066023100ee3eb9e3da92a1b2706e7ff823c48b81608ec7adf79dd1021c816807955754423cea3a9f579110045295d7451c2146ce023100cffe344be9b45ec90247e38aad61a9cf9df11a9d9b4a0084fa630c3ce091d43fc0f8be20abc74a9eea7e51c489ed00c50302047c435bb500683066023100adff9bd7214eb58ed421550beeb930bed4aaf008132c395cdb5dbc24452fb6dff5f5571c9bb82dbffa04158c8a799968023100b6f09bbd8695abc2735523f7b54200cac77f32fed7ed5e8f7545c8c8fd8986c5a7a985e6f54e0f480bbd4e83d8495bf80302047c435bb500673065023100ce13860c2c1e9f539a53c52e4238a57cac767a73c7b2c415a03922d623162904bebebcb5431185d393556b4b486fee7f02304bc9055830407506477e7ae078b6db813845ed02ec6d82cd1f8e0e51634e07a18c6df76b54f5d0a83e730ed9c084320a0302047c435bb50066306402307c6bed9e5e47080fc81e9c67cf86186dbe21e0db18d1ff464f7f4d7278959539cc20a97d94b3f9bdd5266fcc7e85e558023052ce7a9459c69ecf2739148565e4b65a0fce95f4006b657972f15c913213c194192dbb446151cb9d8729b4fd3cf8a52e0302047c435bb50067306502307e2fbb0a46a23ae5bd2546314925fdb0a7fad68526f62d1218dbb3187de6571f04d786f788cfc6f8d1b7a4770d112fc0023100b4b30ee7dece00cb0cdd855bd57ebcf6ec336a06a0f82e7e119fe2216395e861fddff599460a103146d0f50099624be40302047c435bb500683066023100a96708f08e606669f15a49e6f71ec29fba0809f44238b01b7c5e025129461acd0fa482a3cb0e2eb32f413f57500b2d06023100cc8b4c5b47b251143a979505b91abb47acdd41902cc556519b919a4946723d7981bf5b8ed8b94dd1a39f9673641c14e10302047c435bb5006830660231009a2adae52cbe282471215ad67b6190e0c96b3a643bb2e0c20436cf16904b06c23a26d3dbed5ee8f3337952f1438e9b8c0231008d2d5a5232aa5180243d86433eea31c1ceef11f39863ed88494cf407e11159f5b1d2fb5e2a873b3dbece8e1731292a180302047c435bb5006830660231009e254c6ffbbb5ecc0242d24cb0bb85a1685d745c011be9edcd0777cb51a16a059e15f2ee4299d888ca3ff1e39e39ff6202310088dac17dc9cef81afacdc71b5b60cf3e14ea8ad419d8838aa30d5a8a30f553dc3d1d635632af249cb63145fdb750e6010302047c435bb50068306602310084f34c695b9da6026243c5b43af91577878e0db951f5a88b09dbc14e08704f4c63cb532736e81deb21304c033668ccf7023100c57bd8c5092ec4e50cc735a2374e5340d6d686154bf0847a4cb3135204bb84a6f0f8945161781a3a2067f62620ca25b30302047c435bb500683066023100c19ca69d5409291e6c2d75245b77eed141cba48c54c1e59a9c20e11d9de84f17d8d7d86cd3b04d2524bb1f5efd5d8726023100cc19de75be46f88e5671bcedc6869f8a8f087a557506aedd26aa22c17f4dae7e59f91a86c84de67dcffbeca1260738200302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fefadd969e85c6a03f8fd8a054e86fffec8574350f7c2b443fe309ae37901d3a56505e97a170025f360a081b99e62ece023100faee86ca13afcd1f0f70d26b43c9d026879d911656c068217fd46103259a53ddfab23c31b024babfa1a42fdb8d6c5db00302047c435bb500683066023100b2ed6efe272ca7722185b452b0871ac2cc227c327801d147d5ef44070cf47b099e59f54696ff3550e3434d06cc42eb49023100a29918354f61fbcc4934f2959ab7a2af318c5307f295e8907f6cb58fffe60e7a10f63d061e18f7efc4f6c2cffef3dde30302047c435bb5006630640230114ffcb7dad8e73cf3b5b879165dd6ec13279b15116409e9eafcea0a12d16d8484cbe9e2b4c97ece2756e7a32e3759aa02307b7a771006640461671a5cd1df564821d6df1e71af60d3be5dcc9239f0d607ddd6343d8da6e6bda7d6d7cd72a95ec4960302047c435bb500673065023100c6210b1c73a3d88269fd1a3598bc991081c1db8b896acf87d59e43708a7083d3d7df466349b8cff81f3187c5fd778d2102302ffd680d2ef2e03ad11af9b1f4a5710bb762be6745fe583fff65c720cecbf58ea66bce5bccb3e06c133979e1df043f260302047c435bb5006830660231008873a4494ae94e01f473faa3ab13fd346d881cf0f9959b5394dd81ab28a2633f7e37ddbdaa9ecd66d5ee0a433048d16d023100d70997b7462a682e850d102db9646eea7248cc11d7cb9ba300039d26a2974d3ec81ddf2471b9d7bdd2820448e99d9dd40302047c435bb50066306402301583546dde6804054efe62efc4e8104b2cf70e38306cc80ccf6ddc4163378a079af320fda782b30a94a0e438656ac3d202300f20af3ba1b50c7c977198b09986178e1283e36c1307bb1a597f6f012513761219ab899904331379fec594abb6b6eaab0302047c435bb500663064023033df3d30a84fb6364cbe217ce0a84dc8ab6849a6d29b2075c788c7a1a05fd54ef6c9580967fc2f2e116e8390dffe638e0230519ba1fbee69b6eab7c205b6893b87d768e61d935a8210e6730dbc4f90ccf7447d40c1639138b6611806ef5bc693f6ed0302047c435bb50067306502303a76d2e4c3f714e71456c97dda5af192c5a4a6eb6182864a60df6bb464cda149314f7e7a3272c0b9e142381aca56a8d202310090dee0c8d6cd05e0f2af3b179eb5f67fc5809764c7bc45a442f0291d3430de2a70c82e3ad7ed973f962a1c2eb8827fee0302047c435bb500663064023001911b8c945c05f6d0d490fa8b193f845e8d6f95a0396679d958e9f824bb8252659dd45e69d0d040e81d316b1bd3d38602306776d7160f1c2551426d63548039ba59f7d78e3bbc1ed972ddd2d46b0250e17b11f5fa3cabe3cdb22864561f38577fa50302047c435bb500673065023100ce35437b9df408559c60c5347621ab05b1a65df702b891e77382d5bd5cae6c44ff1a1e1bba20fbda72c1116a00cd85d002301c5e72bc163e550c88c6be88a6a1abe9818e15307393e67450ea18deeb0c2cdd01c8eb1dcb0adcfe0d69dd9b717199360302047c435bb50066306402306272e6b88cae3d55bf827fc69f0bb2ebdc641d4950a83613bbb5fcdaeac15407c7dfc2f09d7516353d633095edd61335023069ad6c64bf7309d12664824f1daa352e40d5027a11fd46c7353ccbe9477fc7e4f6f14b4cbf97ee7f837ba649095de9aa0302047c435bb5006630640230546e770a1d3a073850787f73a2260ba1d85695513f6e96305f3d6efdfd1c2ccd7b1eb3860955d75d96c1e9f68d54d134023064646aa718b650acfebd7b876eafe8a99c9710fc971a6348057c3894527e34e247ebd98c55a6e2b9f50473ba44b998da0302047c435bb500663064023006e8da842b73ec2f703cbb4b4f5bb3e4c8dbc2430e7a6af7f84acc6d9ee22cf23612ffdde256a1bc35f5f62e1743fa320230281106b358bade7f45d7d977f1c6e6a3aedfc6eef7b3c809a0163762d2b75000e9fe5d9aeaf0af4da3237d81460083c20302047c435bb5006730650231008974358c7df4a2228a42926ed8379aec0c7716f93f8552b9e6ab747b955a3640306116b4b09e706b6aba5b84a828e7cb0230130d22d27862dc191ecd66ec5e7bf6d6d2391839c0abfe8dd70b3d6c0af72482ad183d06840a12b30027296491a83ecc0302047c435bb500683066023100c240dbe9d3339fbea80f0c413ea6e956603c0155fde77893796b2fd99e81a3b2cecd6722fc97d080cc432dc8c00e98690231008bcde42dff70dc57a262b059c3082df0a5dac1e6b9c2bff3ced3ae0dd05763bac9c22be5ec1f813fb8796a7c38641f990302047c435bb500673065023061ffc10a7d24ef20eb82ed93cd0aa5db889e28598efdc6b72bc81d8659098ed4288f43e710bf0781bfa7bea6ad0f0f1f023100f51ede3d6afd5da1a69d649b9558727d59c1c4ff07bbcaf06e7be3451c7391ab6d849cafc68552fd20035186e6e027fa0302047c435bb500683066023100aa360179948f5936c231877f26ac2c3e89674944f91d9b69487872dba1872e787bad0047c2f60f3b62eee508492f09b6023100bd4f3320827bc1ea4b2b2b4581e6084aa0c0ada7fb5dd4d39ea198d5b5e92650932ba4a5097f9edf4a047ad6dd2555bf0302047c435bb50066306402302e117d89ab71000fd6193cd595360c1a7b25c5c3bf5f9c2463d1e6053e066303612123615b9d801771e232bc8af51efc02301958faaa3ede58fad1ae0793a332da0a17d6358e72339f5294239865e2e361a79bfc905d0e8d9d19b9db3926181793dc0302047c435bb50066306402303dc3995dee67454ff954b07eafe058975f38b0bd28d3417fe9946a47a50f161b01db13586089874478a23c47bd10bb4f023028f24a087cb2fc69f642a641c076a01cec40bd6008e729ba3771dc8143eaf7cd07039a17579f20f49143927b946912560302047c435bb500673065023100ae40539e969b67944a3d5a11dea94e17cd24eb7287fe268c80fd927afe49a71e2e8636824713bbd7464ba251fce44d0e02306082d316d5aabcdafcc9049f9229a71941563f885aef0fe3c056da7380554f0c5519907dc71d99edaab9460b245002620302047c435bb500683066023100b31b3773ac8aa5b11efabaa4bb5dcfdf1b8a9ce1287dd7523574ed17235f8ef91eb68669138176dcbd079c0faa4e8ba1023100a483b065cf73011bd07588d01be82c6e5d9e8e808b7d600163d259b5b96f6257280d1a199011867264affcd139e4af0e0302047c435bb50068306602310087f86d0ae823f72ce00140bb3c6af6c42c7431fade6faee5306cd67dd5a083afc985306d7e56243feb8b4ab06651862b0231008aac6a59bb486b69b0ccb6c6aedac169193c23d91d361fae897cf3837375aad84be316d05771bedc41ca733ea57b5a880302047c435bb50066306402301ed09a6d29d2f061cf20c646eefa3706a05f9ef9150f387dbd281e929c2b3d2f2a36a7d889ed3557e2067454951096e802303fe3dff0981452946225ffc0855200d3e237d98c03d511ab5a33c2833faf6e3d15b7c964710b4bd26e81fd88b1bd9af80302047c435bb500673065023100dba72f35e034eafaa6ea861ba4b299bb07a3fd5cf30f485ad6264ac32c240bd3cd089085c35d49145318f8a3fd4bf89902304c31fae7150399252a38daecec7aabec480dcced90a8b445d43b51daafafe4d3e776a078b6d0d6a28b1f831455acf5f40302047c435bb5006730650230120b2697a2e89283a1746a32de72ce22453936e68cff3f0cdc1fdd6f90f84a653f79af605191459a2c5e008b4e7ead18023100ef49400eee6f8292078b654c2a02d25a0d6ac1afac05937bfd421d73a0a76e24f342b625ca08c87bcd085b94f490753d0302047c435bb5006730650231008e77a2055f8b0b479b1dc8e73dc6e372534651a76eb32599cb5ff75b10f04b662d33f5a49325998334959bebedd0a2fe0230507a2eea4f2a4a49764905ed488ba925b8c02de3d5ede2ad27c57a8b40156a88868c8c8f11f8f5509c6ba9fb91f40ab80302047c435bb50067306502310085296931d3e3dc04899cf9838915ffc8221ed7cdc49c24a9acb8b652cc33acaedb7ee9264ab3bc73b218119c6102a85b023015a7389754d89bbf93ac8a29495a712cfc8d5296f3630527b95489b133c34ef35efc99128f914b74bcafbe80275bee7c0302047c435bb5006630640230395b6d73ff280137f211db6df91b66aca0d913dcef61fdfccc3e77e735a799733318a7fd30b4a94f9d7d7325041695d20230549f51e68c121cd72676f2e18b16aa27c60567bcbb15376567667ce8c7542829e6e0b7a12a0216f06edd3dc255f1fbcb0302047c435bb50067306502305c093b67a4ad031fd3d4ccdab9a1d623878cdb8e69d080f4cb78c270eb3a45893e62925a552457bf74f0d6149f3ed4c3023100a85ebf7c7ef21e4793a9e9b502d444622504080bf5c7cb79174c276e1bd742e72078ea5a61ceb07e51fbbcccce19a4c10302047c435bb5006830660231009f9fa1fb86272c255c3e82ecaee4858bc5f0664e4ece6ef2b1ebf992de335cbc83cfd6534828b6d143a322f6ef4e52980231009836aa76c6e646cb8e55954accf6750b2a92e416d035639dacdaf51abb014afea9ea5b4cbfeb9514093ac8e0d0f707020302047c435bb5006730650230765274edd2bb79c1e149b1f23d1f4d1a95717d12580b8ea7fbc1d9b1417cabdfb25f8945b63abf1f3fac3b87ebc7bb22023100eed2d3fcfb4a5afa42efb2b7f868a4d5755fe065e4fbf564efddf39f542fbf58983366aa7fce9650305f7cd3e90c91be0302047c435bb5006630640230729df8216c8403fc980b07991575446a7aa6952b8183f0e84e5e02ee5708321c1fad286cacd8ff000beb4fb15f850a060230226ff824b831a8e759aecda3da390df56df9b32e86888481759c1028b7cc12c607140e3d378c88d63af984ac0617939f0302047c435bb500673065023100ac32c719183a3927a570c1ba2b85402aae5c80f4dbd0e86145e43269840fa70663d5c33627f7982b99399b4be40c068802304aa0fdb83a7ae3008c4a108f51ad11fa5334c73a13476ccf78551d85e409b5ffe8412e410b9715a8afc8be82b4dc0ce00302047c435bb50066306402300eb92c3927095e3b28df89f7643ca767c3e932be88bf4f1d86e380af7d1ef715d77c3f3ec0b3f4d2947e48b75e9b692502307560b727197b816844a4311756d5ed38eeef6f02958ca86991d7b4ff8382cc771e92924b5ecd80e3b608be486af6b08d0302047c435bb500673065023100b419363e3896111b6141461121b3cc0f996198bbb6e37c4efaa3f2660421f80d278d3b37b108ea9ccdacc298c994e76a02305fe2c413ff281a1a4624d8ae366b8ed1cccbf3413843266959bc2062af8d9affeb0359c62d55a383bfbf0dda3a566ada0302047c435bb5006730650230199ad4984dd7c125813956c65b72044f3945cbfe708d7a831d536cabc6a7aa69fd9ed4e35deaad0df43d37d86c442c3b023100a962fc77bbf2b5b36c3a52774e391fbdc81d1f71de31edea9f82631df2a1f63316e834218dafc565d08342c8786c2a300302047c435bb500683066023100ed7e8186dcfc537cf9613c15837c801a26467b87584bab2bdd4a4ed70a731515448390fde018398700e8341514b599a8023100ca57c8792fcf63bd9198435a6e07629f9fa90f95843b982cf89bcdd130d7ba431016efd3bdcd7abbe3bc7a81a2847fa70302047c435bb50066306402303daac5bb8d2ba91c1eacacfde3f12757f5dec0175de60a24e482373297622ff21523ee9c2901254683efdfabfb9847ff02302bd9b106a50d28d13cefa6481a86b16cae8b86e84b108e8c48bc9bd58328391265fe5c8799b5aa83511acb1f2ebffaf70302047c435bb500683066023100eb24f8c2760e36b0bd891d530070df8833d81fa4f006b0581f235b64388e90d3bd02c08f5809f1c7680ffbb90522a35d02310081b6fdac66cc2f73c6b98db25215aab460adb70c68e9f0e2811e8a3d076e5f43d68e086ad41f65c1b1da3bd0111c5ce40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008ceceb1aac2e047b194e70adadc17c4fb739e435411455581663d60bc81031f7cc76867d33b20a801dae9b6e441c528902301f42891c217c1e6446d46f2bc270bb3d5b1167f5e1dd5805f1ad5ae91810a039bb027d6078010a135c2d29abb4becb580302047c435bb500673065023100fda1d35c457aba4213908649cf628997b59a85430143df8d7a025762b329bcb27cec59a2ba3a259ef57c5e01d23716e50230601f2ef79abb03fada20d31a29bc9773af104df1f8e909a1ff4e346aa9acc05655edaf56db94ec701332fab1aeda959a0302047c435bb50067306502304281e19d77dec5d5cf1738b03fcea70e7876d999c6cc8f770eebb3a9a7fe738c946e6ea4f5e17c1136e051527a9b6eeb023100fbe79e91b2b18002b65bb44acd0aff821ba69149a62b94ab4cdd6bfae4ebda3fedf6b95897e7108b69e37ee6d41cc0810302047c435bb500683066023100d8d719931475bed8eb9e09cce5ca5a048178482bbf734d95fa4cb36cc86a442b624c6c45fa43499f3b27dc485cb477a8023100f5ee63094c33caa1b1677d193ce61624da955e325a61d8906302add02a284d3134695ea73b0bf33d3664abab60327e840302047c435bb50066306402302c22f41fe4892e443380d5d8cedfc8fabbbdd7d60659b7c1026e3c9e2d6621e49e4a83797fe34242c6c2641eea5d182102302d36e996a41a13fec3cad51de89851add0f0c9724e62491dd3c74222407972d569285d48abff7ba7ba0d1500b52ebfb10302047c435bb500683066023100a412fdb06159366880dcfc47597183664e04e78aaedd2e05efd92df15346db21de142220fd17278070c4a8e36e36e1ce023100a01db3af199479ad6b1aaaece4c84db16d6589ba1e22342b20b24e403de70e3b8760cf58640233734384e5f29c727efe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a67bd3a575d23391af231be78ece0a55cc804d73218513449680f6dde92ba84b9945e4a98a27685cb53527a1bf337d4f023100ccc273ae79c5028878f87fc4d248396b0a6ebe94d44d180d954d17ffb7fbf74f2dcefbd319ccc99c528bd5e3acc37eb90302047c435bb5006730650230048db4e53f4a828df2e9a6643353974eadc081ba2982ea22927bd1595372fc5bd6983c48185714c97e8f9df6696da003023100c14c449e4a8ea8befe10c3cb83bc161845f13ca12930d3003cc0035c3af35011d5f84076f03c3cf6e90a8961afc91a400302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a663fabb9af53736320baab50485687c6bf1e24d55bdfbfec7980678fc82739d59a8351f05c54d108ae81dac0e2c6b8402301e88fb1f5fe184f94d5d596a611d5436d362a2b945421af1185ea177d47c20126d8c0af4e2b0416e8254b3804f4fa8bf0302047c435bb500683066023100ba5c3aba3f497803679bebc2e856beafbcbb92105254423ff41340c008d6b6bab344240aaa92c83a76e75059ad974311023100eb540b56292908b3ea92af82f7f14a4607920f2298228837fde6d120cb2bd9c1af8cd9be20d38b6427b5d9292c4310a40302047c435bb500673065023100955302246897fa55d23a642a09d6d45993b046f9e39da5f7ecd8623ad14c0b1ea573e148ae88cac14369fc474f802ddb02307dbb7cac00aac0fc8598f53505171c5f8458625f1e986818b550711fc19840414e8581d29b662ab99292ee38918a07460302047c435bb5006630640230638de062ceb56312f7d5cb14a59aee518c0487b18506c68dfa221e6365dc341830621bdcec991a9d73bbdef07e55a03902304b96ff612fcd0be52c218ae599e7e5bc44cecdfcff060422b013b30c9e33bb4fc15877a4455a875539223e2e21ef57ed0302047c435bb500683066023100efb1bef7051c8aba7f7c686b1bdd4cc4c11c334b998a6fbb518de295204d84fe672753daec86fb5d8f85fe2eef1b0cc7023100a83326996bb88300322f99d46c30381f436cabb4976d2f42b1fae54c26952cc37118f124b752001bf4a150ac4ca950e30302047c435bb500663064023034e71f3378c6830f4211080408500395ffa64e251c41d5d8dca48eb58ab00ed77b7cc9ff03490fbb6f2f6af4952a1ee002303a3169fafd0826c9aef1588e04f56aeea814015230cb2fc73366920c893a469ce8407383fa6bbbc626da743bad273f6b0302047c435bb500673065023070e5340b4c7b7d3ebeea88f101b645bd08378b43a3a76af77b805e1377aee5d1cc6d7b63020ade70b2ccbbd346517486023100aafc7033c2babbb1c38089839679c2b0eea7a9cfc5de55a2573df811fb803e7200d53b2966897431d5f8d8ba982f7c280302047c435bb500673065023076ece4ca9f8146142ec4d3e40543a43980f43f95487c772b79446729ac6ecb31463179acf2fc6ff00b1e7c7b3ba62831023100b3ab31c6d0a3284f3a1e59267980035cf6f070713971ca392c0ef12135c859c230f1645bf1008439be863a9e67b7e8f90302047c435bb500673065023100d8a67ed637b4fe8f1ea8b87a3e07fa053500140a8b1a80401ecf061448572944d49afabe9c49692a9980bab68c2be862023061b903a39796764b4628b4d9319b7cead39f24187f1ffdc7440ea8bf894c8ad4e34713dcb89bf0e43b8dd1a40cfad92c0302047c435bb5006630640230361c889fe9e019e75c7d58c0fb82722456acf874b50d6c596a27814324763898bb5b89870724e2bd398f174e1317069e0230169c30957c11e15e2e2bb54c1319dd82b176e1c1827a04feacd1da7eb989a76cea9d87676bc8d314e4d5288a045bffc40302047c435bb50067306502300a2a22468b6e8773e250d12608ddb2272cf5ec00f995d6ab8766b63f049e3f5d8e50a5d94cb57c7c7df1f277036a23ba023100b519f9a3364a365e0e24bd1022b75b3fdf3f71b4fa5f294b642edacc64d77fba5b8fbbc8666d7511a9a5c59b413bc74c0302047c435bb500683066023100abfdb5e842a88571711f5b8dca182386e7ef99bc691e4e3d9fbc6001392f7fbb6ec1c38442545a98f357748b3044c1d3023100b50bb3b06508bcfc4d70c94ba9bc91149e5718595897f12201831bd8123b961cd8fca52163b618b82fe20f95f70c58760302047c435bb50067306502306c3ee14e006aa349e682733b47bbabba70b622d7ac5d7a692c89404d8f345cb3fdb498ac7f90cb47091460f68e2e0694023100b9d02bace5d975f300289b873d83a4ab7d0d92f6b0d2c2d3cac20b41d1e9952d33b114b7aec2cd61a2212b35066ac80b0302047c435bb500683066023100e224799ac8ede58f613cffb5bd420df88c164d58554ebc43a09b530adbce5acd7e2560e6b8dbe2d9f77c2b425ac58b09023100fece6a80d536a871cc436f1453f54bb80d8bfcd683ef0b1f887e3d2259da941df747d7efd7ba930df68f05245eac90110302047c435bb50066306402302302d9b8436b8dfd8796bf7c5b416ae50d052640b9cb2a8405df5a3567172d7a4bb8a63c5f6628e6b8056610d82942cc02305986d7b784247ad750cf370121b06cec11a62f997a197a3aa882a1f902bf94b14ee0c46314217782f7a5f280723adca10302047c435bb500663064023015cc65b32339a78010739d10fb2b914a4e516c23f107c775f9792f306034c8565191f1b1018e79f02465a80c034b0f3a0230196bedb482135f30dcba9466f5e83794d30ebc09d653c0ed207781ecc268fb6d25cbffb85549c4c1784e719a825291cb0302047c435bb500673065023100ae60023b6cd8920e51d1b61e1932bc2b009c7f975b7f910254639bd829aa3d2853455ab9fed853ef41aa02397644943502306dd46bdf16a3a5e578afdeceec1fc2ac35a6c8c9c5d9e090e98fa84022910f0534bc7acc898bc9c756d8cea8a6d96aaa0302047c435bb5006830660231009cb658cadc499a4ade3fff58073bec38c82143eeb48d27e68a6def50ff5ec342cb3d725c2cbb74bbc873c790ac458381023100c667b455c4e34b2e35edaa927c3ce9e7b54b3c11bd7077f98760d2a33bdda1b7cf63814f0602e3bdda42c40eae02141e0302047c435bb50067306502300f97b2bf8a972e9e7a04ecd5b1183194797d1eca72fcfe957562fa4eff91aaa051924c51e564e4f2fa03092b0acb7412023100ab224a1478144053864a0e26cbfdf3da3fd6a8bb182edda0a0476d62e9ba11f4c8c9024491d34afb3bac2c6423f68c610302047c435bb500673065023100aa5f5a64afa03e6d8159de13c6f8f5874380a8038e284c8be84cb4871dfaabb196e6178086caebec04c961773ff15c22023058967d9572dce9d7fc3a4b925fab7b16b0e9a52ceb7abf86e791ec9654119eb1808d2524cda30a20ada60e9ad51256ab0302047c435bb5006830660231008b33e06ce0d34c11cb364f3d831f36ba580d8bda2ed4218450cfc7dba367fb445bfbffe4e5adf826fa4fe1f14f21711b023100ebac2e16eaebaa0eab2b357bf2b0b2b6b2749d0caec8a607d5154da92677fd9db969504a228900adcb60ba4d5c237bb10302047c435bb50066306402303829e60ec4deb056b67c26adecf6ac6bbfb9923f5e94b28d22bd2aa706ac7f37e69d69818d29e0233b560b1be2804dc80230066070c2ad401b59e0fdc9c06f09a4f4e063315e8901687bbe8c69c2d319f8ddac272f52cad04f0c2853689f4dd92f5e0302047c435bb500663064023038ba741f6ef7c65181045e2c5c34050ae738cdfb80c24c05e44a7a7b96b6a559ec6c1d0a067f2998611113df1a72128a02307360cd1b0c210070260158aecfb23b97213235030cceefabe7bb874c080bee82695906544c58ed1cb53172096b33b10d0302047c435bb500673065023100ba8b515e702724279d54f7a55c3c1de5b85a0c938f135a3d50c81d77bf88f4d6425d19a0ab1da83f4e70c93630d9c5c00230237ef1acbc00f90678c378b60f6f9dd8ba97921e81ca2144daeb6428c4306013768af9d9e78de7aa3a4c61237726d7760302047c435bb500683066023100de3eddb1a8b374686572b241dc099f4f142ae9491d6b764351b13e703fed34d86a501d068c3c5e69d120dc5db1714709023100ac565ce8326885da77b2e446f9aa431f7b5777436547c9af57542b641f1318f284e0ab876f20e28c7c8eaca464258e6b0302047c435bb50067306502307d0ba50f44d534bd044fefaca9078bdd5dc3da514de01e53dd05d25538d02d7b96862c22b658808f5de4438ec1b77e5e023100e5f691fc158bd79e295121d1ce6da92a9bd3e8bca1b2d536cc8ebc2d0659a36990142a1b4560d0c530c8a70992e539ac0302047c435bb500663064023077e68ea253b3eeef1ecf6fea6c303890e242914cea7a4cb32ad9e27684dbf6a267bed5df6b0f307766ab0750da6922de0230561b4f02fe808288aacf8229775929a711e4cb5a98d29f1a393327f2e4ed69ac9b473286c856e0f2a5706f6435a056820302047c435bb500683066023100c9f278e868f9dda011ab8fe41c2442ddebc4d9aa44b44261c9e514f9c1f0324487d459bbede6effae5b65361d6038d17023100fb88bc95138cafbb7165cef41538c1cfff74c304a9777461647fc07304dcb3b9f19279be0d369073f1550357bc0710a80302047c435bb50068306602310098543533533a3c3ba30b229cb0e6a76758803545ce11e412dbb6989549a6497878dbfceb1ba8800646e5903fed7fb8260231009be4ad8f6afd630c71b2ec930ef54fd8d383ae562d4ccf9d3ec7609daf342a439d89614d1cffbcdf6b96f685f4c790950302047c435bb500673065023100b45999f4ca0b98b62ec5b60d215712026bc965a900d113561f241c05cd72860118dcd1b5335c05aee044ade455460f310230325151d4fff04afa86566609a39c3c363b6f24ad8798f2a4f0c95c46ca4c8f62f053501f5b425f850aeeef5c9ac88de70302047c435bb500683066023100b56e177bc6495be4e58db4ed2c847b3c8731ceeee689b6ad5cc46f9cf908223c39a026e01e3e6af012eca4d0dc9f0381023100f184297e6a2967c47426893162d850fedd86652bfc6e46da7303148121bd01dffdffd8e3e19de788bb551daf1fd6b19c0302047c435bb5006630640230627b54bd106c59f946e727bab0714151e2ff0be38c554d53714ef26b787b5fff4e448b07c3fe04fff1fa75822895d25d023004a68fe677fff326ff8c827185e60466234e3d2a9ad8dcdb21bc919bf97f663ff78101d95ecc1119395c5a55c7d5c1f30302047c435bb500683066023100fe4e72fc7961b0a174ae262ff9352371e083478d85b39aa23cb37462e5e0a6f9b33e878730ceb27f32da8c49c88be6e6023100bdff19ce37bfb01016ab8553fcf80fbbff9ce3150b65aa6ebdfdbd7139f1918dc1394a7d3c2b4fce783895ca00ac11960302047c435bb500673065023100f9bc531323efe144606e22e1ba022c9b2df46e18b483f4314f38f803358f1d1eba9b12194468ad0d2cb5bfacf62d590002307c65e219eb3d867965890007eb054dcaf170bd971dcb90154d44e1ca075179f421b917901de47b6acb8fbac3937d3cb70302047c435bb500683066023100cc6f0de9d7d8e9f83bd4f1492f021224f47b2f40c496565133b3b5ae8410cb1a84496da5ff6814ee5d9515b83309e91e0231008f435526b9b2acfedfd11901970b0f0f810eec3887d8d1a4c3a977d7e2933f4d7b0d52d49353ee097301abbfa75e9aa40302047c435bb50067306502301faf6bb69d6a61f1642f7e75c6d3ed504f1a8b38fdc5f99eb1076d751d0fcd135216300b6fcb46fe4f424298f9d56ac7023100e461fc4217ec3aeeb675753b11935b48127396d192e8c330206e880dfa79a99f98d129701ac38379e41c98d52759bfec0302047c435bb500683066023100eb38a65df2c8d72f2a54ccbdba8f67f07fb0ec72c0fa5ee4c010a3b0aeac130938aa683caa891d8117f33a3c839d4851023100a4d5eaf3269d28062018754fc670f1903f926134d24af00f69e3575cb6a9f5a180533a7c3acadd62df7d43c109f288b30302047c435bb500673065023100a07133228a3e60f11856a8474912fdc01c53847499759f4ecbae458b20995c7a5c950cb410822bd0820b0c57f574aa8e02303a021d01fc41e9284425b954d773e1b00e96f667f076f158a036a6254dc35894a5ac71a3bbfb067f22335a4dc8e45d620302047c435bb500673065023100bf33940fe04fa94d625b0b9e354f782c43647b95fbfa0b40af2d0f0e99d7ae0d687e9982a67117f7deff8db511540dba0230328e8c61c3f6a66f1dea0908bb6d170ce11e2878801a024ce157d0723730dbcbd10fa0139e03c53a2bd4c6cec73374f30302047c435bb500683066023100f09212671edb23b68f0b614d4eff52a2a298a3b4778bf9d9248b291c14eadaecb2b78da962d01eb433bd4cc0f0a834dc023100c6fc39d3ebc4a50e0e5f924440755dc2dc72df4327fe30dfc2598e6b4291a5f330c084684147e45acd970b8d183af2ed0302047c435bb500683066023100f78b9dba74a02af14771fe8bb8b5574f79cc9e0b1e74516ca127d490f1b7c1b1dac7086a1e97a981db74417301c2ad30023100f3a1ca166068aa0b0de586d22dc26c9396a37e1f6d178b821ec2af44c4dd8ce527294800af3302f0fbf54daf47749f6c0302047c435bb50068306602310093253f62ca5d40eaa274c09da8f2f0110c6172985685d51e45a496d906b867e21e08dedba26cb493ff359a19c3e59545023100fb793e160859a75431a7823fbd03fcfede88a51a07720ed5612c576edc986677848295f8af2a09008c04e3f64b5ec5f30302047c435bb500673065023100e0bf07111b3a8030f53c134f53fd171a48dd27056ca82be8fc2376f63f5964798ec481d923d697805eb0691cd133aca2023043a68e8eb4eef51bfb21e4f10639161e2bfd927bf9fc819a7bceb1384422b6510c2577c9d0264409cff697e534ccab690302047c435bb5006730650231009560c7db4b65cbbabbe2427207314376c0bf522ee5192323f0cf1ff9dcc35f73f85e402481349071c58d416235b86d6902301691825d9e08f4242ec39d9021b0880c78f0fe0fa5f70d00b507a5ec9e6f50b88f67512b60ceac626e49ca059e5b4db00302047c435bb500673065023100e2ee1b8382c723640c5c7648dc5639e689511a4644768c83dc38936b78eabc92f9a276130ca168546d16cb0d319acf3602306ee5ec1b57ff049dba7bd3efa226b8f977faecf106ddc4f0464ce910ce3cf71ef863450b81e42ebf2ef3f9264ede88390302047c435bb500673065023061489c2c0540b12ebe5cfb05fb9e90d710daf3e6e457295ec99604c170f572e2b1421b947adddcdf1e83edba9c35d97e023100e8f3c6c3c5412ded44d9483d3273a32c9ecc420909b0a4f8e23c9a2f24065a95103372fb991d5ec1559de080a933c6e40302047c435bb500683066023100ea4b9fec84e3395b2d3db5a761399eebfbb03299beac822af127ea06f5d3a95f38bca1ebc325859d8f6be1ce3ad7ba97023100bc0cb36c04558751256452b47c383e3b9ef375eb6609c3afd84b1d688a00c4bbebf3d2634bdb473e4975b00c4a8b10fa0302047c435bb50066306402305d43d3dccb6907a794effec53d8faba16f64e3d052e84e0a6987656b77bcc905955121005d630f7f54837c5fa2d4994b023035c3e1dd358d44feedeab3d0d5ca2fb5a03f4e285a7e0daf985ea0c76ddd5a918dd25500a35002486603ddfa6548c04c0302047c435bb500683066023100c0c9447539ebff89130e2cbc0504e49bbf6ac3cf435763740a3ec2621e76d817f1fe0af0943b48fd8dc1085eca92d184023100ee1530dbccd5a26e9abbd354a045958aa10cda01831175810ec3e267422685a013e41c6a400ff069365347481f8c84b20302047c435bb50066306402306565baeb426e918ef8822f1708bf8786bfcda30301f0aea0bf93cdc17cc98d939a5f62d355f399ebde3ff7aa30c2fb1c0230763475b854ea9069199ec9dbb726afe33e58f640217dcce4a2c8bfd76fc68796102aca7139534371ffd8772ab92c2c020302047c435bb50066306402306f8975d9942fc558e3f07fa2bccd81831b618bf0d0364b4e9ec87b88149f3412da5ba001a12db9d7ccedd19a8acee681023046ee01b231aeef2e982ebc812dad961535ccae5ba12472a2fd39fc0013f67a301dfd6d80a9815a13e909c0b3366a02dc0302047c435bb500663064023023ded4a3479044dcf6288a6da99488f11dac9abc8859da2c3511c55b121767a4f05910e817977ae340873c0f29c19b4d023021e16984f3437d012aace2fe97b514d59ebe44323990d81e7852fcc1adc8fb2b89c673943a85249b21ff4f0bec5382c90302047c435bb5006730650231008871ba869941e178dc5f1a5b50756c9759ba6544df167b689e7a9c3fb18b077951417d784481b13b88cca4f15f25618702300986e1884e6b74cf6fe0a588291f9aeca10ddd824beda03ed13b5a15a28bcadf5a03fc165ee9a3f6ff3fbed35d8268400302047c435bb50067306502307fb594d96eb5db3874723e38e24cf0bb4b82170c2689537dcbf9d88401c37a887f6fc8bc714b4a3846027c87f2c85ad3023100c6552a828768384add97bb8899976f008a5041e33df07f554ee204e81428f07eaa1037d4b55d11301c35c9e7e379af8f0302047c435bb50067306502305a839b1c3a2a41bd829464fd3c3a4c47eb0e1cf90d9b92b037066c6294427f1e4a409207d5568e81e8f98ae0e8111e14023100aea44648f0dbbff8d039a985a3695ab194f77aacb5214e69d8cbe9994437884809316f656dce641295f559041976de0a0302047c435bb500683066023100f43be1587cfedffd9dc8381a559a62e141973a009ab2125ce410ac1957e89cdf4f04bd6960bc435eacb49891bfb75964023100d62cdaa46a6df90e99e27fcbb379a96798f4286ea1a8f9de245160780c80a94f995f34abf506b06da65bff306f65f4f10302047c435bb500673065023100ffed18da782bb042e0dd1fb2b39373efed788e5af34a248a446a132e606a9cc9f2b69ea47ae2262f43f2308bc6967334023037e355b0df7f321b3518e01d491e080d3cd6f1facba274be5ee358e730d3242de8b2c0f3c8c0e8939108ff4b0986b5d70302047c435bb500673065023100ffc8f1a3178581c6e6bf911774d8fe64216695b75ffc9ad1174350a5513dca1730d9731db58bdbe16c0edc8f9eb3c8b6023029b0ab96ba2512d2d1129bb00020d91d3d939e85646171fdd16092812b14b1d93c3a2245324c2e38f6416e624a279c5f0302047c435bb50066306402307b21f22982d5ac94bcf2729f89e356f0b7279651db1700bf1a3fda78c1d13521f859042ca90da13548db11c5db6ef50002307ebe586ed35863a2338f43a87852507c2dc0351d29dd8533bda8b75b6f9cc56844557bae39d57c7c85a6653aa0bcb8810302047c435bb5006630640230336cc324e7a5de0ef778dfd0504396cc4faca77523fff24bd45be9c67baebe0c5c301a7ca55dcda1c5bd9f4324b2541602307ca194e73ac0cd4ddfe63bcf99b9022a041e7d103f04b23f5316da087076ec201f5220c70c90e357cc1ba297eac9fa840302047c435bb500673065023100a0f0e493811c46801980d496a5ea20f9127c469478d7ed16684cb1ef085574693bcf84ee0bf1a0f2ae50e42930e7e929023040cbd845c5628673eeace40673f6e88b1f5f9cfd67a90de855c8f1d769fad26d84c89e705a74a54365c58aaab5c385360302047c435bb5006730650230021805a0b5f45314b8e328298970e5327ef1dbfbf69ee2ff28f33cdfe56b9e9ce2e9327ebeaecbce4e73a866a01d1b6f023100b961bc94275601fbc23466e0b921dbf27c20cfcddc91895f58a70a2e5f590d5f3743027be54078c972bc0c814bfeb4430302047c435bb50068306602310082527b4d5a1fb5e12641cdd3291db510433bd08e916887e22fa42dbbdf01deefe327bf2fe60a6539180a4f4dfa3583db023100ecaeeba23120f12881a500433751f8fd373e73d0db82ad40619c345d71a6d222ff800a930a30f4e66eb0d9beee0414bd0302047c435bb500673065023100a880eac009a1217727be5eb768bc4fce31706ee9ef7cbdc61e32765268725a748924b6a1230199526a54273d9ec61ed502302a799725af8af5424aeb082e1cc51d9dec4a4c4b63e11d2466c9e622a91c1f528f01929cca21258b1a4aa9091644d1cf0302047c435bb50067306502304d6cd4ea1753220f2ed6a5abab942534ff3e8222964f31349676bc362eb9d7ac9bb0aa52e7b9ed8d97bbd02193050257023100ade64e9a939bb52f9c2102f6d08563abbc757966d7ebb1294d7c51f581b17a029682c50a0b825428b176b8926a7b5e670302047c435bb5006830660231008b9fb3b3980a3f41bb34f4ba96204c2bacfcd345f31ecce3b36437674f9d0ae22bc6a58c010039d7a248f778d164c6940231009f95e7b8ca22386040d6b54310b6abf0a9d936e4ebf7ec6cfc554a76ac2e8d9a90aaa035194655611e81dd7840b1d1140302047c435bb500673065023100abc8934a8c0385894213096de97f6e70e1ae443d27082ecfccf66c855c49fcdb7c0b356aad04c43f19f1a3d80f6ec922023057a5726d4f24e83e96256dd43ce971b0799dd9778453b24a0bc8f8bd3cce28150d83126f52b5a1edcfa0fe31eed25bd60302047c435bb500673065023100c97c7df62deceef4bf7b4243509d98d26ce8abc05e8f31a1f089b085868b93891b7520eba9414ef2f42d70f5a088035e023021e198a04da7fbe8d7275c9ee619a5f679c6e4ed6bbd9a0f3b02acbc2b023b1f5317e7fe1e5438db2990ed002f1c90710302047c435bb50067306502300b31207cb39e35ec76387e89ac98cfd85b59d375a9ddfaddca5dbda89d8d36b41c92c9f34b2389029f8ffc0afd7bd34902310095d98cf3a3f4a2f99d05ec4eb781312fab421987681595ddbc1bf46a94109f2f4c108a7a604fa954c479e99280db1d080302047c435bb500683066023100fbd1549590ed3c011a0e0182b961b7d3a4de8ad03a2294137ddb5ed6773662d74d25ee8cdf134e7301a408adb00e282a023100ed6b20bcd41011a81f7dc1288eb407fc320f4a338376e6677b02ecea18ab9b48e7c8f4d405535996a690cb2e8f68f9d50302047c435bb500673065023047a1cce2343769ac39974ae9bc4fa332709a04d182abcebb9f98d87c2863e8c156443f0664c031157bf948d9aefc0468023100d85849e4dd82a38f03258bd3a16c723ecc4acc7f66056fed653b037cc82983a2ac9313f1963a84faf037249f1a61d21e0302047c435bb5006630640230448961836171a165884dec7cb2dbf1718703748cdfca3232d7a7b3d00dfb4e3f2a931924d3bff0eff68d8ce88dc79b8202306b039a7a00321d3e300fbcdd034f95c85fb4ae57fd08db2867c75806d9071bff958d451537e66de40610ab4369f2f93c0302047c435bb5006630640230577b53919f13f4300d65c96de0119e599f3cbca1f8da10c234b5ca19d55633d871ba6d6715f2ac804659cd60d176096e02305251c1522a829a61e78906545c532c9ab0346b0d2bc68d1f55519a1cdd3f93b68e27f2b1a54c22cb7109ddb9c9de23d20302047c435bb50068306602310087c03636249efb41ee3db55c160ae83413b45f3c0404978ddc15c12e5530fc589f17ae6006f21e619aa877eab11b5327023100ee64b0d6de984141d6b98fd55ca59443b6994d0606881364e4554342f8df5929f64ea9d9c68987df505cb73e65584f7c0302047c435bb50067306502301afdc033b08aaf4e449db9fb2b5020a722c45b3381fdec674c4308831bbff440c0ed5590fc954c2f58d96e7bfb3d7f00023100c16380f36eb09bfca4c68fe99c1336c5f12d2cc384f9668a02e4031e691428857f7ce1012c6d3cf84d8e5b8d9a54cd160302047c435bb50066306402301668760bca5bf387d6e484733c08d93b51be554e76636e85d0d8a0f1101ee7e4c9ef67da493266887c8452817fd7bfaf02300c6fa3d0601b00db9a2fb6033d58882a6972fadaf0315eb33c78a6d8145cc57e125915fdb65e6d9dcbb00b8703d221c80302047c435bb500683066023100dd1057dbeba12457db77d33befd4cd325b7ae3cfb3e45f6198ec2cbde0f1ca7bbea517844b7ffb83f6ca270d6e7ae992023100a692277de1c1dd818e8cb88faba8e3975c915e9315c8d4f01f3431dcd385de4ca919ddbc3a371780c83584bed8d7f7660302047c435bb500683066023100d1862a88cb027bad4f4602f0020b3310337215553e078f80e0a9bf4a6eccb9c86bd92f5738fd4f6564f33bbcc187061e023100d91d59d6c8aafd0e3d7cabda0e31c0f2a88f5f52941bc5cd1d6d379379fbba7eeeba67ee194ce2e0cd0d674f016329070302047c435bb50066306402303fb9933d1454dd56963894a360c72d9cc5ac30c98d264d0108c21c6e259cb568dd5475f294e1f5b8b979d2ca2660a72b023054c39a4d7e49cbb14fd4d275e41bd720260cda07b9f431b14770c2c21992350cadc098372a2215a4b9c9dfaccb8021b20302047c435bb50067306502300a71700625fa63d94ba48b96118cddac46d922d0ae66c8c546abe692ab3167ed1d2ff6bb372789d2f8e126e1bc4b7fad023100f85698c3fd69262070f7e7b5f7e0881dc38d4fb2757c3e1ba6ba23274f815ddb63a15328dcb3ed904b78cf8f2c1588850302047c435bb5006630640230676f8d0a6bcc776c83ccc1e97d5610e95d2b47ddc8fdcf1ee84a718fcdfe9117d9c62227e7c1b9e967c6472d7cbb0e4302303590fc2709c426cc5bab424d10a8eb0d49e16bbdda45c72aba0a98aa24361314be75c8c8571ef8095c09053172b732a50302047c435bb5006630640230249ecab651324e3bbff67d55517542434fcd574110b923e9d1353cba71a748c8883fdc46e10301d9c298c15f94bf7ae9023077b4bf95278749ae3b32180d5a84c6022692dc656b261861906fcb9b9f72deb61b37809a2e1da2109667a4cf1c7650b20302047c435bb500683066023100e0409ed995677cfe5c47a8664fbc5c97e2f7a51a4dee78b1c4baa33be35ef434dcee37a583276e8ad447a034beb6b45a023100e4061fc94e89b77ac419c683daac538b478466a4a1797a4aec4f385496b30c7de08513223dbe188b99717af2f4688c4e0302047c435bb500673065023023bf2a733bd69c38a57b500871c58a00c75bb02b82c2331747f71c853cedea7f7f789d7edda5ff7845734616b918be1c023100b72ebb2e985db38aa48bb5fa19612cd312eae7017c1e45d3d72c2de3fc5e0ac2813d0531eb092ee9745f535b1b057a5f0302047c435bb50068306602310090c13fad29206aa94680d7395293b7bc24697a5ab18a5bc058cd3461c12d34023a7c6c91949df7f3df14f40b6bc50ca9023100ca17cd604829f58bab5dfc6162e927a9c75d2ee49181617c58ec3de112fe4bc9bc1981499d925e0303b66a2e0f0f72e90302047c435bb500683066023100e39aa945bb0d9bc611161de240be237b368789a552d6fd9c7b42c4ef8ae47c1f13d35916238491d8e9e73116ac48a64802310086d9dd5ffa83a3bb89fe9bb87891569ad8d5e5d025a458b4cfff81db45434a4cc0e5a4a12b62eba8847832cb6de7ecf90302047c435bb500683066023100901f83b35b50cafe31534bbaf05cb6f48bd887b9ae2ef6df56afbf369ba1a1466abe7b183c4950c75e111a352e9f6419023100efd615635b9814be3c2abfe5a6205a36ba19eb3fd70b0b3232b889155e769cddac15a4a05380053dd2b40381b1505edc0302047c435bb500663064023003110b1a1c369e995fa8580c9b6097baa3656d16607369350616231a5dce145bb3c0e3e844cd087239d59a885dc395d40230200707a87c0a8bea8b3ff8917d570a3c2c043cdbedf41bce84b5c72896399aa2b6f26fb1f415ff5d9801ff9e40ffa70b0302047c435bb50067306502303f3e57c42a54191da3edfe16d7e2e015fd247f07ea90218f75e852b0715ab87974a929a986d1f8d90f63ea45c3b1979f023100969b9a53823b5398ca213433762158c1e6aa2722af440b8cdced437e9410ae841eda1c54f1ffc55efd93df7213be22b40302047c435bb500683066023100f30215bf7615f90eda5220c6ce5253bdc5f5e23357d70276977f1e409308a40b8a72cc949f1bad354911aa36dab7f1c2023100d9ac219d6e78123c37ec88f92bd1ebe97a0b349b43d5e46b807e79228fdc13778eaa32080c907fd13fd8a6b896cfc72f0302047c435bb500673065023100d65d7df5cbf9af55d7119fb6a6cff9993621920dee0d38fd0cc23f9adb6e4c2e67fd4cd1e3f6e2135b01a42c917d02b502301ddce7086fe7b8f877223f0681bd3f866b0ddffb97328bc81f6080cf389a614231a3b0a72a933fa3a260b1d034d7951c0302047c435bb50067306502306889ca440056e8d31657e089e8b5dac64b21ff7ecf97e18524071b7e8deed9a589437ee0077b62d9f050131910ef8517023100da88c5dc537a499617cf4a7db03cafffaef858d6539c96b66e21c12b8fac07a05f8fceb8ed488bcd514fcc08635a6cca0302047c435bb50066306402304753610eb4fa1e8150257b34b8800fdb990237f057c35c9173aee7a2e1358bd669066ce1f33a341c5b33ae693fe594450230661acea147c94915f87d69054f42db97438a90138e796e47141e78be21c45f853c1b5dbff42b205be5a33324d5db0dcb0302047c435bb5006730650230672d8dfd176e0d4b47f17fa9bebee2048142495b37ebb5a09e1dc0f89fe886b507688ff9582d0c3f4657c04641cf812f023100ce7e1e580b32f753947e3c70b029db5718e6fad7f97e8c59d7b88e179171e5b2122b14429c3f68de078b6dbd08b69f650302047c435bb50067306502301e5820e2547dab85f2a2d651d1e2ed4c26962bbcc87995a3842090074297e7a446a57ad08957a7aab8dd1ddfba24731e02310093a2004232c525d4717858254f73e7983300af92ed0239cab80eab2823bfe2f79b5973cdc39d7120c313e701ec59b8750302047c435bb50066306402304f4c227e85be6cfc749294c3c7053282d3e730d5344d3413842c3c5e3cc7417bfb1eec27d06a3b32317f567d523a6b6902304289542b3de8bf4297131a38d452aabe9a4353de62dadee6c8da5f2687bd62c7b3ba49bbfafa223cd52926b68db3b2fb0302047c435bb50066306402307dea1fa947091f1dd04c29d1742d47c74ea6e35e2862c3d8413b200237bc7a90c9a694112fc5678123dc15735f6bc5370230436f8c02fc1a22928d18db591cb8e39d7a89fb139e98c998c1630f9612d050830525389c6ea6c70592c1457480b94ad20302047c435bb500673065023074a1b28b2271bc2fb488a4c0ff291fe7479437c21243927f1c7fb5925d686599ee99d06853f5d3b1543cfae3a62ab4f8023100d832166604a38a3561a53c740912adc6b2ab88a4488cf395bfac94cce246312a4dfbe175e6a492c57c31d99ad7e78e3a0302047c435bb500683066023100eaea2938c796845b858071a6d5537c965b5d037cada364c981a456903a6c25e46a489408b04214934360b43d09e888b3023100c0abcb0f8091abe8602b6f140abd8efe90813aef304dc4e5b6ded21a7947ab9f9140aa59963860ded44367665f0312a80302047c435bb50067306502310084440b6599170bcabf9992298cbe2287b368ee121e13929198caea193f604e1064c0582e3b4e8677b28d21d65154a7100230744a0b585fb8554f42c6de818cd790f57e1ae7fa5956d785a6b97a9d9c0179af6e3cd418b734cc9f66706da0d1f34c3c0302047c435bb500683066023100e837240d721a610f4ae926215233179fe08a9b8c4cc2544b2aa3c64e281cbc888400984645d126e9d5519d58ba5ed159023100a9a1ea5494e4d33233d6adbe032b403f39d13d3f6f41e1406dee1a18b4b767add9d5d23bf8b91b9717763e095b95b9b40302047c435bb500683066023100d07f4f2f4070ae75580ddf18c8f9877d1ce52e169f48d92e6342c603540334f1bd27288ca5fd4abdf19d1640f9a1cda00231009cce492712697320b0ded52458b95028ff18fd29c2b51247afa77cd3d9686c6a62d14b8032b3300260b324a96cb60e570302047c435bb500663064023054fe658e66b8879b7b4c78e48e3d92bc5699a685397a9e09976cb7b7238896f409aa794fdfb77eba9742a430455e3c0d023016596676a21f3662a013988eaa5a0c62e98bde23814f6c6d5e67adffcbaaec437c9ed2dd486d9114303d54e64f6b4a2f0302047c435bb50068306602310086b37d47de961645c76a5a43d638fd38265e423f2bf4f4448facb48d1cb95bfd28cb735753ceff287065c2d064a88b97023100b02442aee7063e23c45f41a94a01db6a0bfc74483a537e003dab4436835bd952cdbb9f399414933c225a3438a52d6fd70302047c435bb50067306502304eaf32e7e443a9508741b61c67226907722745727c3d7fa7709ab016da8c1aa1f64253b2bb29e47a55de038e74326f5e02310098c47d9574015078aff3f4b86d54801c91f3ce8b9accf478127ba9938e8320b698d0da7309cd9702a40f04fa9249d8e70302047c435bb50066306402306ca9828aeccf0ec3b6f9e6c695b2466d3fe5fa95f4dc0182ccae080356b069d901ae48344c6e83ec0b37e100ef4bcfd402304b288c94184c0945f8ff2bc98e6c94b6c085edae066fae990255a4dd3fb2f32e59aaf187269e0189f901dcd011614ff60302047c435bb5006630640230714de09a9267a35fe97baa3a93adb806e6e6c960d8d39bf9f384925b6005a08391a190fc253fc0edee1d2a9c573ffb880230158d50250077c189505b10b347e23e7ee2e297852f4da350b580f23b1564915cc032fdc27479b760594b57a306ac9c510302047c435bb5006730650231008e3f75bac74407e85ad2457c3c129bc2b122ae8ebb78def45d9b3b07a2c46adb0add418b489b16c8e1d7c84ab78171830230421334664ee38c30b08bc3680cb97ff9a46131abded69389d9654cfe17157a0cb9e4e7416a14a36b08e2aeb855e6ae760302047c435bb5006630640230544fd0144ebc5bf00cdf73536da95f573db8c22cf13acfcd54104389f7d65fb06f6beccfe564e3b467298ddd464cf8ac023064181431cee012b3a1d6f18a0a442dcdc669cf47abcb3014b6820dd114a44e4f64b50dc1524bf9337cda9fe57dab8f550302047c435bb50068306602310082ccb903f2c8f9457aed434d97e39bb6cbb6eb2e26f90ab4882690f841c19650f36b06ee797212e8ffe38434024a409b023100eb0a12d23b0009ba7c4c4f404109bc483e9eec5a43f2265610eb233a733effd99006ac2185bfcc595e2f4b02cab0f0f40302047c435bb50067306502300efa11ba6cbafac4c5c32a64149d3820875e75013c964f66867f708ba94f001a2ffc580c26039897a5e1734a685fbcb0023100c938f426b0dde58354a3a160568e4a2279166b4b28de1130271cc3f71bcd41ec8a971e4bc25eb11ba9abb0352b2e94bf0302047c435bb500673065023100ede8cb1eb0baf57876bd38e108d0fc4ca02d227b1ea8eedb07635372632c86119a7ef8264a4bd2bb0798d072efbe6e4402304399fd352ccf1385dcb364baeb646bb1a904b0b3e0d3a6a062530235d57820b0df83773e73872bd9616ad7ddd1e069720302047c435bb5006730650230742e0df2e3959b0f4809b1d4aa724e5d87fff6e65d2efa35f53e652aa906c9141c1c1129ec116ea245ed36b3c035f610023100b0db3c0ea4d79b6426b4916d70d1487e74dd3f4ee8292e4aea1f0327f8977ba4387f6eccc876b2f9ca30e8b51698dea20302047c435bb500673065023100be68c4d9c339aec90a3c07eb44c2d018f5d56ef79b57b4bb45b2e9d357f4a203e6b13a30b5c6c53e9a3d08458c5ff49f02302c5b65fb07985d94f2e657f0f61145763e6c163457000be15c94f2ab01e779d101f3cb86e916fa984dc23b2eb44d2c8e0302047c435bb5006630640230532a22f8425becf8568503be077fec7c87c2c6584d60d9e4d707fd30a8a3373141eda330935f950485476e23f36f9fdd0230203c9eb8aae3fe5281d495b21b04762c294d38fc60343e41cf0a42c5fc02c7fd2e435a73307587fc14be36592a80f9ff0302047c435bb50066306402301007e209efc341a0d1a269251f8b82ef5ca8bb69652d5b190435c51fcfae284614c95997a27d6c31cf57e51ce64f048202301d66aa28ce8737070554af64ae630334ae8f131544fc8ae885f6f6f008fa903ffba1b3a65f0eee19a8c9e10af96887be0302047c435bb500673065023100aed9849b7e668bc6bc1e1a903af5db079de1dd1cbf5125311bfd44436e5a2af0f97cbe5b47ce3401918cc4b3301b343802307d8d7bbc1b2695eead50f95c274d86481cfe8102bcf511b1788d7673d79a5cd8c01f1fbc14017fdea1fefaa2726df5fd0302047c435bb50067306502301c46acb68a788351db37f1fde49093b76f4e5f54536a30fa93c5849f8a7d1ee17fcbb748647ae6733a93bb801ffd56d6023100d2b6a7d4e4005a56c99551e4f7c74080ebc304533aef1d3343e0126965015ddd511b1f9c7ff464de9c97339d9c2a18710302047c435bb500673065023100c8d0c273117d2ab4c1cef4bc36fbb9c22c0d71ae5af25131f8c2ade394ef3b499aadcdf98459f97bed252cc2e62ccc88023014d5f90e7a0db70b9c037f161a28bf1ab2e5e40b4d7336a70f72dfce1d41cc1d42a97ff4691902b5e0f8d43c59329a940302047c435bb50067306502305f7690f7e2f980c611a758509e0b52c56be272a2ab3fa404fc958cfb768ce3679d236f3c0a8f9b99bf56208fd5c4eea90231009565a8af3161ff5070dcc6ec2d1442392508f31667bd054ef6b82a91b0b57e3ef232a270131855f21686e5be8d36e4ea0302047c435bb500683066023100fe5e7ae68823e93bc0b941059633b66031e99488ab88afb73e4bbcd3e7f7553cd0bf2c211d4859a75a694ae477c58bf0023100fda243ef7f7d791ebcb1287dd5f09dde53681faf944e6eb3aa25de4998fd1eccb1fba2e370bcf7a70cef8c5ae83e23ad0302047c435bb50067306502306168460339111cdb78e258511d156446dfd100ea17505e710555c2032e4d07ddeeab9d3387019b1a235913fe35127220023100dd62c957577f410627324502c0b2989a9df50e2859a99771a2cbfad301f4655f810771f9471de827636a96ccca5003cd0302047c435bb500683066023100c50a1786e2251037b622a479d928ac8d10cdf5f14c0e9f68e75dfdb28683006d6cb90c41c30b26f27ee693f68637e29802310092ac65eef08de4d21217ded092bfbdda02735007ba4e93d390fc6fa702d7b02222d01264231de201970d84c7451a404f0302047c435bb500673065023100e5bfa58c5ec623ec297856fd2835f27419a637bef7b673a58b0d78072ed0b873af99bf5399ae2c4f7a5a094b91cbd0ea02303ae424c4a84a01e11c2e78c0ddb29dcb1fac7c399329cf9437b03523b2127f64ed0fd64cc795c54fdd9e14c549ce0f470302047c435bb500673065023100c0d753e5883672d0b972c99d217916e394eeba067edcff73201b6dbcb184d707a041662ee38ecd9fb2d4b04641dc137602307ffded961696c4611bc8531e26ae9169fcf64a4a82df713150cd5d59ceb0a23a04b8817d523384c0b1657c764d8796c20302047c435bb500683066023100aaeac8ccd29589d06753aae17515993502fc640e20aa9e6c513581ecf93044967ab6f406aa04c23bc0ed7a340fc33024023100c735ff4255d0ffef05a7ce3a4822841e0fa50501e7d48e33f4f474de26b5a09984fb724b66b868850aa38fcb34ed48580302047c435bb500683066023100eb6f75fb479d80206b40d9252549a1a6e92e2eafdbea871539ac1a9e241b693af33126e5149f56df99841141b422933b02310084b08ff24673960fc27ed08969fc37b9cf62a12a7603d6057ee7ac5d8bcab7986990916cbdce0ca13e6ea77f2841864a0302047c435bb5006730650230446c424daa3d9e284ba4bcc9f700287c1d6950f1e60a222df9f9a558c48a350f914e19bfc5eb90b5e88c07017c40813c023100b0a07107f02f05755b6227abfab0386840c9026d974a1a487a2c634c3793dddcdec6d52f1229a3efb070ea7d91c36b520302047c435bb500673065023004ef36b78df577ce03adc38fb5097502e796dc39091acaf3c07f8f33e3d9d47920bd353365ff7fd4420175a87483d5aa023100f0fd09cd063c13d86ff52ef9100b395909ba21e1264a50aea826fa9ad3ffbde91ffd40787e47edf9c1a53a8001b37eb20302047c435bb50067306502303bf79e5999061c452cea9c42dde2b747a0cba9d00d64b9f9bfda48367b78f3f00c074d1db866c89ea2bdd82ae2fe82620231009fa775b43b07c14b5d25375beb38137334cce88bffcc6390b31ff29e66493009320d897d746aeebe8cc7987d346a41250302047c435bb5006830660231009c9a607f48701e20f3aa2700004114dccb9240165a86b9fea07d050670779562bd234049bf6e5770210d103159203265023100c86e464c90cc1574ec2b10ee60d325d72408f5ba75269a66913b05382a274a30b7b848f8bb46f46ed4221a64a7b1b3530302047c435bb50066306402304cbbd4735b20ede800a596ef56459a8f13dc1f526cb019e8936a2fb2a04eaa62f2a073dbc9fb9cae565b64a0db93c25f02306cfe5346e59857ba61a19f00572fd0aa8d5175995191952d26faf171592d73daf8f7e0f50b6813807987eb487cef55810302047c435bb5006630640230759863b7795920bdb3d7e8d8f13924ed82d9c9febb561d80f72179681bdf21ec0f23148643ec8180dcc169414f9a989c023045fbad950292146a436e0c696a4de6397b14201e3b4f111d7d69b1d673933305a28e7944c10e34bc6f3eda65888442110302047c435bb50066306402303e4068daef6a35c102a24109f28867f2205ad4d5120f827af0cfc48fb27583f0e0af95b5d0a45a9381456e2f821b31090230510e43154de4250033dd5129d533f897cb2c506068eb89fb8ef31f33503d4db57bbb32bf4c295d226170a7e5b80b73410302047c435bb5006830660231009d1eeacc89cb7e2967ad7766aac67cb912fdd44d095299b2ede61cbeaf8da10cdc5fa4f3e3bb049f010f6872637e2156023100ac81a965a0d1b0d7789d7a582411e12760619c8e58922b7879c014629b5508c4a2cbfcfb7cd420bcb8dc20858335f9460302047c435bb500683066023100ef272e890f7ee9815d8ece314f0cc055a32483046fbf6cdc10b2ee946bd36c0ec2ab26fe57d0388450b7163bef9af599023100e85a7b260d534ffa39695d2650f44319c2d16a37deb09cb80a7b20403d6baca29cf7c46f9a73fef01f4150dc1c50e2540302047c435bb5006830660231008531cfccbf869d4306a4a32e09e9eeba045397ea66fb1b7663590c3a7b7af50a7d0c7ed81aa313dfe23ae88214ec0805023100b55cb9ef220b71c02ff1ece1d964871d9e53d27741f9cc9bbc23d5231878a10c977511a10a42c4ba64a98cca869f5c2b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023031376c495e7741e9b75e7b7110a4900eb1c12ce6ce3779b63d8019b41f2cc4665db888539452fb2fca229f98fb09c252023100c1fefed8b218e94d58c950c52d08f749e671d2763850b079cea03a91602973d502229517afef1327f8a109c3226c53c10302047c435bb50067306502302ed189e535bec9942424833e12657c6b825ef5bd20ac87528b19e62e28118d51c184234a42f4e07234f78274f051e159023100941b74b6fd5ea48945bcaea8e4aa95202193f88d313cf3593d6fd345423eec5e572c7225334cb79086d9ac182cae08490302047c435bb500683066023100e353f33c1d78a2065cec264ad7cda6c38e1316e2f2377af1b26d565c2c2d2d2bc73edd7b4eedc8361054aa5cc43c44dd023100e7827c77ebd10aa0759fb73f2e9d47a6e9a661e0af9d7da61f185e6e10e6f0aef6fb43a044b1369edeb26ac741c481680302047c435bb500673065023100b86bacc643838d551b7f7cab1fe01b4d51ff72f1056bda7247b7030664e637fe450d5d38b24c9bf6d877ea63be2393b302301f9138fcdba34c652026c03d208e9ed8ce8ec98280598764021f05c963b1aa5f70f8862fe728b5c234c0088e05e880f00302047c435bb500683066023100ec0df1b2c136e7c79a991e713e7505c75c7383fb929bc436679f424fd66f80b0adbd8c7bb6d6ad03ccb8da8c7c12141d023100bc2ca26444d2b370c854eebccaee140af55bf258df91c515e35a0a346d14b434c68a4880d1ee4e69f21be38fd757ac7f0302047c435bb500673065023077d9af9e63e53518ebcaef22ddb9eb26d06aae769bfc909741d82115ee6c699a083949c97df9d7c3f020b4cc4f88974c023100e6ae83defbc60f41a886b52290f544abea34c195b926b0c4d7a4ae3616704ca42161210c77bdae66183b5b0c5b40a84c0302047c435bb500673065023100bad6fa1985329d698312df3cf8dcc46643ecf961d1b92bc3e6a3e23cb4a8711659f89fa70919c95470790d8a0b0958a002306608a1ab83242a13b96067daf9c5420dfdce62944ea9bdc3aa1da62eb264cafc0ac8ed817bbe7767abeff8e4c656d6ac0302047c435bb500683066023100e34d6a4d15ec5593e3e9fd17f7b01226292071a0d8cc173a59cee840c853b04ee0268b2c8857fea4516d457ac8a9f7f9023100892614717a1f142c02e0013961675cbd361afc196d740db580f61230d9be2219d016d8db6f5548a907486867b00b80bf0302047c435bb50066306402301a8a2a1e32a159a8b49d027d098915bd562970c83b3488a58c256d513974f10460142355163f57042c797f611af4291902307a4ef6a5082db283ba0c57f25b4293ef0bdcdeadc3fe20a558f31b5ee37dc977310042840d1d93cf62610834ee2073fa0302047c435bb5006730650231009f67a375f30866ab2a24562b5e010f17cdd758f4dfd147a50ba71169d94787cfa6aaa12121581b10ab9a0bcd4957020702307284dd0812c41addb6a2591cb1b00be72a8514d28f1f516bf324462942875360c64a769bf09f5ebc43dbc4a0b6138a750302047c435bb500673065023100bed45308455d321ca283bbd8e2529b3bdcc58d3bb10769520fb270b56fc2fad1b750821773572f0e569d5020e212b79e02304082a437f557908806421b73ad34fbfd2db5f3d7138a90da5d2bff63700014a154e196bcc5cb37cdf220125331ee43d80302047c435bb5006730650230254a7a0d4a2eff69f4d5d1fb0caef4dc8a04591dd522629412b8e4736e163a5f76463eae4e6a504a2d333c4576f4d724023100c6e313b686bdf650d29e36aa711895533f10ecfce66dd2b485e9d8ef5a7f37dd46f6256d9952533d5552875907ccee2d0302047c435bb500683066023100d22674a731b55a9bd60c51a9074e93b5ae5e8bf3960ca09e32c185538f8f79e84e0fa1a2f2659da903b73dba2fb05b28023100b4fab56611f9bf5a2e698580149c0486228c9a5ba9ac6f206bde8c18d4e6359ea07b0fda7e1000714ac8dfc7006574930302047c435bb500683066023100a0ded095e41ea9dda6ecf9554a5636790e476c48f2cb00846c9493105ac802bfcf9f2f041cf60db6d79f6ff6714df119023100bed5054ec997fd72dfe2783a60639c1e94c6e346cb8e407ae55b23e9e7d7d6e5f31ec497ee85723bf682b48a1f71ac730302047c435bb5006730650230635b82f0ce71c9832bfa47daaa30804ac67d87c8ade9c66a5031dafed8e4d7c57a1edb7d899dd72ef78aa7057768f9a0023100e1da1598fd68a3c8d7609731cf5a26f483c9419d4d93663313b6787b906c4780a9908b33352fc9c40549ebb2cbd060d10302047c435bb500673065023048a015e438b5650cbd4a827e92bf19d9dc076ad7ded9366ce6668de6043e55f395be3daee95c48b92e41bd630b090c13023100ea17e4b995a4fa473fad1b2d88eeedd3b9cd5fa93e608d58132ced47a00c90c6b7f544ea4a83f864f2f6ffa2466a035e0302047c435bb500673065023050d3acc8f5fbb5aa2432bb460861f1da011544bf58f9013b575cfe2b0f4c4a6baf7828aea603e5041e54576c66ee444c02310090cb8970b9b5d521c3ebdafac6f42826ecae4d36fa7825c42affdfd41e51559f9a93bbd5156a2186902e13c5228676c10302047c435bb500673065023100d062a126cc480482459a2935d93c4fb83733e30232e61500c4b92b874c7ef8bf962cfd72cd8cef3ec036563fa0f3c66502303b5707213341db70d939fd657bd5d49f21bedd364ece1dd6c9449152a2de2f1ec35630b2572dfe29566cf39230164b0d0302047c435bb500683066023100d008ee4b7b3b12793bd0222e453b74e55ec865cb21a0da5cb4a1bdbec6f7265a41ae9aa1a957c3d0579cfe9bf85b1d5f02310084d6dc59f8fad5ad3b8c5fc39235330f04b726afe0543ee5814ecf349117dcbdbba36fa69310dadbadd2e1b441010e080302047c435bb50068306602310099bbf44ec653b7a95e616622e7cdd345790f7e77f224d92ba0fcb9f82c966aa43888096a5ceea5b42ed48292c47887c5023100abd81819fed529882bcce56957059e5f66fdd52d1232f51b3dbdae6f915ec9a9ded45fd921686ae45410789afb80a3970302047c435bb500683066023100bc3310817036860b6ea9d0c27dbd393588ff34230549d3c233b0fec6584b42dbf27eb23a4a933773da1fbbd322478563023100a37a4e9c6d741dbf206135b67f40bec65ac4963ca123f60e95f21387d931ce86287202adadecbfc90fa87a7b024e8a130302047c435bb5006830660231009b12c854cf7e55f5de4b7fa86a5797ed286f016a3dcc9e936141aeb90d46ea69b8db569b98aafe6adc8ec5dbb35c17d4023100aabdb4d1ca50cf95eccffc0304066c00138a819783f7e8f924162231f2647d038af8a46e50512ec4b64e7eeab1f08dbc0302047c435bb50068306602310093041bec837ec492fa5c97ae673d230bf5627d9c920dbe3bf29a6a1575e2fc72d079bea9c7fd0d2349a7c2e7d1d318ee023100f25e1fad6bcae4371f228b257b94d9b925f587724c9095b4fd01b948fb39b137a67ca616e5915955532fde1855d6edad0302047c435bb50067306502303e3f2ab89932ec4d9e46b29ca3a91e8d0194ec47296b1714798c66c794692116761cf40a9153aa160404f85180ca67d0023100c9fc704bad7b64ea91cbb69dbbbc37dd61ab993cebcd01c9b66d95fdfd0fe7eeec0937476a8f2091f07df1e3ee7665d50302047c435bb500663064023022956c64e25b31d3dd2a0a7745910f52f59706626067a331c2304d3c35eaeed7bbec59706386201fd4f79cc0e8512d3e0230139ed7ce8eab25f7788cfc103c3a51b4a54dd2ce49e99962c0f32a60833d7bd539e03a937dd1952697d77799e26e68f50302047c435bb5006730650230295a2ca84a7404ff09b054bd542c5425dbe537014a71d57eeedffb9861145e2b48756829520452a12246b9126a15c344023100ed5b5eaa361db579760e78af80e0b4aa615b304c3a7c979194199165913a0aa6c0aa688df232c35a1adc35fff2d5ffd60302047c435bb500673065023100c007dda13f61d033a8cb59512bef1599bd7e388ec8be207683802355ab40d6b8dab052724eb8ea72640eb126ae425b0202305eed32d82e17dc4741bff2b09f8944c2e0f63a5615f1be1177fd9866d9df33480a6ea829c72db61768a4748f948cb76d0302047c435bb5006830660231008bda289f8db6dfc749a59b735a9dff24af4f71e03067f82d3a68cbe3043d47ecf6a2fa84c374006dca2650ea9795c90f023100e86b0b394a38e2539e5ed83fe46f4101aab85e94a08c5290b0a30367f3869b02be39d10616b1a015ff01f29b13aa8e940302047c435bb500673065023100d48a375f209974d5f83931d511f89957e5b9a9caa897cb531859ef6c9b0ce8ac5f5dce9378d79e63a0709b71d66aeb2802307381e43f8976bd5ad7900d674defa32257cf87d966d9e8f29e53bd3c732f71bd61f74e859ddc73d201160eb41607eb500302047c435bb50066306402307926bf3a87afdd7a3391eaaf0e6560ec4327311bc43cc8c0146d2cf271acf97229eb1a710d6a4de2ef67abc6c5bad09402303876e81b3394deb9d803aff6b14ab8b9a77b53ff8f8582bf341e90ab24bd41b5bc7628095af8d9102dc061cd071c1f050302047c435bb5006630640230352a1cfe030bee69ab7db5148829de82bc6940a5dd493d7a8ff6598c0036c4953ae740a9306d98a5d167ce88b77fe55a023070d03c4f6ac22ae0d4629579f17d2c689e61ecabc859d3ac42ad954ad665576c1547ea4ed28939417f13738c97b281fe0302047c435bb500673065023100caf94781aae0124f8558c138874211d4bb5aba248e25837c1e6f8e85f9b487040ea79c2baa6b822645a7cc7484de319a02305f2892ddf42972ae319b16dd7118570431ee9fc0d4daeec5f3780f4791e33909f2f38fb1ae2b348e45d73f802c347f7f0302047c435bb500673065023100fe249a51b479e59ff65b0a13d8d38ebc334e33382f3b2f1cf4d38372e7c65a3ea93ed3cf14d44a136487efd0788c7ca802303571fe850183806354f9f8007ccf569dbb678374b061135dd3a58c26c87a90f38e0cc3b3a2a2d61158903c4c4b1f31630302047c435bb500673065023100b484d773b9c3c9d32329e0f55b31e50ef13065a8b276bf9f6f270ee04b3acfdba4aadc9d7df99cd4adbed6237c72c89102300ab407e8f03198ceba9470bda3854de074e19d9b2d37542310c3777e56c7aeca0a05748374fa2294ac64035bd9b0adc00302047c435bb50067306502301bfbbcab8610e1fc13ab1bf4e37aa1e113c9d2f87b57a597aed24d0e7851b157c6cacaf6dfa09764f424d6028445522e0231009ce575056cbff94fd17a4f091228e939545d78bc608a3b3739df05d6e486239a108442df7856d514972de15c3707eb2d0302047c435bb5006630640230269086fc259edc06dbcee49c9dd4f9a5b934f5a48aba78941d56a5eba5db17fe8cb56dc5831b7c3758e1b142ccea5bc902307475cf3472edc9c95bcb74cee15240d8f7fedef289e6d8fcdfa1a30491d75d9358e4b6dbe9addb724d73e87af902dc4b0302047c435bb500673065023013a870a30e198116e4fc4abda9652ed66240fb4af16ba0b5a379afa1d6473d70bc734bf770f95a5ec3acb7c407ffade2023100ba3d48de5a4314b954535a8417311fbebeff62b989022bedb1ccf4b4e11651c770cf8008191a90119ede93901b2f51da0302047c435bb500673065023100959bc633734c2f3111f5601cd955706d2a8f87b838c8af750a14cdc33f6d1d11b31e2c0b05b0dde90b1aba6a3af8da45023000cb5495e285f503b1cd6b93c9fb2068c8a6ef0567aee46b0043a3f7f88e44243f9f316ea484ec31f9c88c1b268a8cab0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305912114bd115a14934f7929c8e02ebf5234bb95e8d2b52ae4aca6f96aeb3eb6f57fdbe161da0588b08c06e798289e34002306fe8df08dede2345f34f69161dbf9a8789d38c1257a7a4967cce2c9dd6b000204925381527a7307e51fbd5ab6130007b0302047c435bb50067306502307ae94e87be4f7b7b5dd6565ad83838ac064d9ec65096ca36190baff986a6b2851134ea7d3d4cd573cf029298204ccd52023100d1e6582bd5ae296fa92f5e6687ecf7489ffc7ce9da2de3d6be76e3346796aa895c8d1e70ba48c1822f1e3e5b718e373c0302047c435bb500673065023069a935d17e768c1135bd81636999da93ac57d9d3859dc3b17062e7db7a12b1056bccefbcfe4c2d83dbcd3f783a023e39023100ec30dc164fb66fe8eecc6e2e968d065a57eec4b74ce106cc457232fa9cb5a7eabb2f49d1d039f36b2a47e204760541ca0302047c435bb500683066023100f4da7c9068cb104c939ec05d083293b74ffa333bad230d57b1bc0eb8cd1a0e747a1a55b5dfc56d729b93c96c470c9d4c02310083f63bcea595a5883b67b0cdde675ecaddc4437ed921b5336c089831703bfc7c7474886609978901a828f52c1462a2a20302047c435bb50067306502304d5a5d5cd039dd5907e1dce919327972dff09e5c2fa8e8e1025dd530c7f4a1b45dc4b0cec633362baf6a72b3ea84b3ad023100fa1472b4404ee59c483f31048a8e2a4db2176c38bb21c7546375f70799c3e9792e18e7167975a185fbd3a444c96c65130302047c435bb5006730650231008cabc8d3ffa1c446bab1e6740b5008400565954845ad10050ba2ac704b6fc0121bc4029de84e1d57990cbc622f0dc3f80230013ae241fcd63a5ec3c71061f47a8f9d4b27588e681050f2b89ebea9b5be63b9503b0a2ecc61942fb2346856a8afb38e0302047c435bb500673065023100d1882a8accfe956014c00f1ee457b569ef33d4722c185cbfffe1b2fe346869f298fb77e04eb8ceabd9b2eb35b3060dde02306810cf056b1440ec2b3c5039347440cd8a7032f3fd815e7a556ba97a6183fd6d8225c10ba2c869ffe02343d562ac4dbc0302047c435bb500673065023047014e40ae6263627fe4fadd9b09c7b818edcae1c62fa1fa8db1c5dfae6c0b60764642aca479885b1478d20cae6f16fd023100ba64a628d8db491dfc2500c7230c841a3741e4581e776522aa4a7f46a72861f4e5c33549deaeb246e469dfb151dd15390302047c435bb5006630640230160b98c2784a37a0f64d0bb572a15e22ed89e6b2d941eaa51dd2c36af6ce466934e5e5cc0c7723a6fed52409a7aba35402301af1faae58c003bba75d9a0fad1c20571489d2f48f8091053108639b1a62ab9677ec4b70bcaedf50d72ce8f14250784e0302047c435bb50067306502303729ef1603749542fab494540b530d54d9f206f51e7318f9fa381ddfc262ef971da278740976bda31710d80460f4d91d023100d24ff814fc5b4a70af8c45a43b3ffc2ba80dea5894eea9e119f87eff0388b4c75b61d08d8684c4bad060541ef46f8a0c0302047c435bb500673065023100ca8c469c27ca88a170343b4df6d01a9e673c2f30ac5e5d9eea64ad9e4481baa01024cd28c13d58346ce19061e965fb340230044da7aa46882a79d76a4a050d2730d946392cf27f6c70f413d515799c53cee85b1456e2065731d94d2f8cdebd0c0b800302047c435bb500673065023100875662b8009c6c77e3633f7f3c05cc914fd18f77c4790b62368cc615e61d4227d74a4d1bc124e55d53556a924c30bd2b0230609c7d1c6b86d1c63cc5a66bf656dcad4f41eef1bb595cc715b93c77dbcf20860e29f95a455896e32375f32d9398087a0302047c435bb50067306502310098d0a85ba6ebf1a4c123b81ac947b0c5c80a9ff965efd58197d6f5b08a1d675079c36ae4d8ac818dfd8b25aa8c746bac02302c121fa9db1e8f9478d46a1a27f51c4357b856f5dd91e8aa2363872d7837602fadf67b3b358b67217b0750b8c73a34630302047c435bb5006730650230749e96d146fce9d119b13b2fd1d8ded4d16b16aad204e984304bd7879473b5ba0dd738fa782d6ff538c13cb2fad09d79023100d6612b810bab859a0c9ae5dfdb124815dfd4b17d2a71c6ec613afa4a8a78474863faad7eaf655d3db1a08779ea4f2c980302047c435bb5006730650231009ceb97ab9d8f100fd1eb5e117ea889b90384162a684b8740966c3a1cf7420ac987c111df256e41bc239583d7d6ebd9ac02300d3418cf156e3ef03b11229bb2a10d9a45b85106c7a674791e0ae189851d4fcfdd8b31f88f5059a266bfa6ae516a18ef0302047c435bb500683066023100dd462bad8762425530433d64b3ecf13267702139c2d4ed76f4f6d5a58b93d511aa10c27bcbedd8b15916686d52d5a647023100a9e9ebaa28c43fd28d40916ceb845824716628a397ebb484aae821c6f87b5b9b12ce5122ec9946f279ddb3bdf5bf0c920302047c435bb500663064023049e7febce114739ac3f5dd28b3767b1475469a1ca2155bf8b0667651d01558a566277f6ab2a8cd48adeea62366dabe6d0230037ce92fa80cbe91a12a803dc08ec7013e6b45d05c6ebbca8901f4aec216a26b2fe841420cb266857ecd3ea7bde3a16b0302047c435bb5006630640230514e671c2fea2400bbc6b756692a44ad9889cd31b3acbbb6420f3cd89a03b8716b773350599a99d78b55785158eb9f0e023011d08c36e25d7fd010a5c47224c20a8b62c279dfd84e5499f331ebd26172e4ce8e125e0ea4d4444069b81e7d1decf9e90302047c435bb50066306402306d43ec17012bf644c2e48914c123e642725c5d0b73d6360f0827fdd7bcc542e5517519b13d4f517b5257ed03a2ee3c55023012faa14b6720364f612b0ea78fb44b6d16c882fa45c18d2a9861e240cefe4c5e37a3ba0fce16ec96121fe98d284175060302047c435bb5006830660231009c0769d033a0cbee086210b63a93199f92e2b8d8aea4c9dced76c52f815123b86fe7772a36b0285d2934849a212ea6f3023100e1238ec48c3517e096b10969350ff397bce89c66acf83b9322221051d49f6c13e55ddac6be261f92775f9dd01b4726ac0302047c435bb5006830660231009abee2ce0b1fc7b03210f78731a0ad9d84939a21e10a439a15133dc03e5154efde3ec2116af5c51161e796cf64b9b49a023100bbd3c56322b40d8a0ff55f26dccdddf490add884605fa9659f30f757c9fe14fbc68dfb7cd768c9735d741cb7eb9d0b740302047c435bb500683066023100aca78e4d28e0b5c98fe240f524bba8e3bd97243089c3e40ac45094f2662a1d62238afbd6beba301fcbad7a8c4a755cde023100feb137ecff82c03d101b50badd591cacc6c80307d4c78e675b3f88e32c4aff2b5483c196b971b443cd5de40a4adc37da0302047c435bb5006730650230602886d619c5345b14472982c8d60275a1ebc0f832c05697e5db8c5f90198e7625d4b90f4c16fcce76a62d74214b93c60231009c9df7c1e56aa16dd31a5e19d37ae350c441f099a4b7941e74e70b0747a2ce42b7f28f4dfe6fb45ea8f5e599762c1b4a0302047c435bb5006630640230747df9484fbeb46e4b2d1db6cdb7c38eba127bff9c86c4e92732855fcd1e7503312c4e30537c7af57287d224c7a508f4023041b3372d6042e5e81f28730d75f90de6fcc4dc5c7314cae2ed58f32b3d4e4a90dbc932bf121d3b331604d563f2f5ae470302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305b179f6e3b1ae7760337012f6f5c5206db8fdf62e5bfc6ff7cfbdfe3aaab88cc7e4bf66d9004879999447a5938dd255c023100a2363ac0fdba789070a7297062872e94d3540662ce807a864ef3e810d5c3d6e016b1dd3069e4287f3b4d88b16c7e531e0302047c435bb500673065023100e15ce9d8f443e32a1f5f57fdbacf834a6dfb75d7e47393191b263828e487a88c3adc12df68b99be48b8edb5966d5112402306c8efab98e7c4490193d5f6c83d5cfb6afd842bf5c99b1d7baaad49162d7d754d8037eeb78dd40673111d358f33705f90302047c435bb50066306402302b7ef9bf1c1b08f09481c4ba34aaa4a89d351bedb2e0f7def8054f190c6264d5464c423b8a2df47170b6100e0b50109402300aa7d6f77c3507c73ed66c3045a65c0ecb81157741e3370dd7257ff1581a88b22bb7fddd1cbf3f9b8383257947ba44700302047c435bb500683066023100b9b53b66260b9c829f8953e32caca61cbe3f2a841cc9fc5547ebc9e2c1d29fadf083fe209c9be5e81b8a795fb47ad56c023100a44a523e0a739fccb10b350f9258734a9632d4b2703c73f26d2d275a679082e011d61f245a55bab0d48380dc53a5e9190302047c435bb500683066023100867b4ece2bf8b20cd3cf0aeb724b4f4f6f790ee6c8bf0143560493bd35a23621db29fb099ea02cda9b134f70e3fdd482023100b97672c78aaf64bc3c4bdc84089f5ff1cc3bf87df27b67521c73b9cbef33030adc5f6f2b7a8ac75d1650ab9438c8f0b00302047c435bb500673065023100eafd49056f1c5939f3a87f9c853867951a4ef71db787f1141138d83d0bbc3dd1477ddae9a8630093e7d766674a2e9ffb023025a71acb7f253be74e4694a668955b1fd344f0f51debffa1a034303911d9f3edbe1e8e1f5368a85cd8abb7a3f81893900302047c435bb500673065023100c64cb7b5ba8a815496d3326d27324d62351fe64e3630a1dab30269d94d0c1c6c9d4d15bf934bfba5d01d6c3f976a699802306540b045a3c56ad532def7df60e26da2e51870262471875709b6733d5f880f2cb7a634a75f64373df518fefe77b7cb170302047c435bb50067306502302be9385a5e6ff72d611893696d444a747dbc340fef9708252b41211a5c4b118f75993b5ba2aa481e46bee39e69047456023100a1f8e2b5b108c8f26b6bfefc3bd360047421a66c33b2f002692a97deaabf05a0b6849eaf5562ed90ce35f675e1dad08c0302047c435bb5006730650230519fe28d3a860055cd85b37446d121b9697ad6faf5900c6ed8dd1cd33fcc740ef04a97971494088df34bbae7eb5aa866023100f76dcd40d15b48f4634d717822c43b346c30d1e220ba429d5560712b5ed843551b9a07a7779b0118c0a1beaf51272c390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008238a318b38d2b3f138eccd9f4fc3cccb372d52941e7cab570cf3afc48b7e3aeea1bcacf77f618a7e9b9f3c955824fcc023100aa333423ec9edc2dab1c251dc03bff01f946a4cbce0f0606a254a41224273b60f4ab4fc50236dad2bcc9ed28b8db3d640302047c435bb500673065023100d9998c8f01e84890a1a302405aecd718ee040197cef3be58f6a6a6af15315b6ff50f17d76c7c8de1e20dfe6e5a5bf1bd02306672671af1fc98c0162bf3f8a01616a5c15f22974909891a43054a21746c4f2fd81cdc22fe5c141d7d3e00134a14a9cb0302047c435bb500673065023025965c252e9d99f604e11a9f2ba572c43083c807bab685415d3c1b8797a5a2fbdbefe7eaf4400cdbe26f0d5112a5359e023100e054f4dcc4833da9f2feded7085b6cb395ed7dc3a96ece5f6109ce2c77e55eb2dc0ea3378b3672815f979717cf4cd14b0302047c435bb500673065023016830323a94584b1385cf9364a589032fbdd6810b5ca6460a48de9317c3025a755067fc2c24ea702b2820b314ec57a8f023100fd38a7596923ef492f7009b9e01d706706cbe38cf18225524000450f38089b43ae89384467b2c7c334fb5d18a7ffe1e20302047c435bb500663064023041c07c7aa9accf35cd1d21c953bd4c2e7590088bafefb32d8dc2c0a8bf7d42c291914f7b84806cd452947f50c61235fb02303c75874431ba081235216dbff2337107000ae9007792eeae87633ec0a370777922b1e86bc120df5e913f406ccae2fe200302047c435bb500663064023024e1b5f6622489309d1e97ecc9afa75bc20ab0fb575a90baf1b74b213366384b1a35fc5aa5f4da3ee3fd9335c4f1ebb30230351d5f09c8f2f16617757b57775111fa9299d9bbac974437eb02915433fa3aac508cac3a9d66508b9b772f2e9c58d8bb0302047c435bb50066306402306ff6dc5ac7e2f55d221be6925729af24e0142c3af14d786047f06f485ea4d6903ef8ad61ef7510ac3aa1669d424891f102302bfbd51cd8c681088c34a70f02e2b999708b63b18c1248e57c2e6469b755241c4bf592b0e9023edb549807c4245cf1710302047c435bb500663064023067419dad9ded65e1f746d41a233623f9ed4131246646122396a5ac60087273540c4b3141c37b4500e1750ea3a857eaac0230462a029ccfdf2e4a0f7808e339c310fab0345497a412eb8a5b8e45b35c6316935f794bd7e2f016563fd3aacc7077f5440302047c435bb5006730650230410b8a7dce352df5c101537ac83d699923bb67da163ed9473878bfd17f950ffc124d7a341916401415854ef099b1a09a023100cb64bbba0aa777be6bb235d417268920f0fe5990247a37b6005cbb307780cf382211635d6dbb376b6ec0ccb870ef262c0302047c435bb500673065023100ebcd8d8cde45ba49ceee24edaddcfb73e66251c74ab92a28119cc7c33c467568220e08cf03a95144bdbb2645d19f10ed02300eacd6309c8d6d59442e009d68515b08f40dd0c6906c7088d565a72d6dcc796bc69efcc5ab9e80c6aa48e6263f3ec3930302047c435bb500673065023100e32b109f614254c99b48e5be0a04355e2bda78ca250b4def3dc0909858233a023809526dfcf6cfc96be597c20775ce7a023016b6b24e203ce284f79d0eb2d23c16ae9240f6c1fcd1208c4c1adebef4af907de5a9bf536c59344364a329a0064152600302047c435bb500683066023100db3283cd6aec7b7653e823b7cd28d32a9b2dfae888398835d2f8c095d2851b3ab9e2d8a2c84d342c28503d6361cf8000023100afd8b92179e4fbbe4203c73fd26a457c74601d312af15c7c03d374a3d4ba6e07960bbf166e7cd229cfb85b00f07b3a9e0302047c435bb5006830660231008c7a6611ce25faf692bcf68a19b773960e9b0c361773682c5d72399b021c72904f37a55fa014423d2cbe286045e58c13023100aa8815ae1b06ae70adbc6a5a826e15bd70f22e7f05f4628893de07c48a937b767fef79ed551e8585ba3d504461f1aa9d0302047c435bb50068306602310083e44d73b4c23fa2c161bd11cd0dca308ef806e26538ef889b92227b9510da547d3be1549b96134f8fae87c57fca49ac023100e52ca8f1445555ba00585115c47ad0737c95c6748cb37e8a7a273aebd2ed836930886f0174267b88082d7df9614423300302047c435bb500673065023045237fc918d7873207ab40204f06f79853ee6f2aeebc0ae378ab9725870375014269b7b203a7c447ef4a7b3d2c469f3b023100916f1e1bb6b295e08f1c4c1c31e7a3764d64318ab39c4d9694beab5cb3ed6a91aef9d3f51d7f32a4206893df0e92c6830302047c435bb5006630640230174b2969bef18f2d22651877f7751710f42a10d679a63a7dcc3ba2adc563eb2dc4ba8f12dee78014787a8a22bd8a214b02305b86700a7194dfc57f749d71a81ed512ca4979519348a24378c896e50afe6f097bb3445d132170939bd94c586292710f0302047c435bb500673065023100d706b5926e74f42aa750300eb7545f21c446ceea3db2267514d6a990bac051059cb705f36cdf189e76bce275d1908351023079e406bb42f0a49f747bfa2c0bf87bd8ed8e3f680aeaa7cc0a29d0397968a5976afd34dbc38e569a27cd4fea7f6216930302047c435bb500683066023100a32b141de32e11931b3a8665974a9cbde26af8a5aed956f5588d716a1dea99e9d13e0f01639fdf20d7626bde4400da5e023100a114327f18e8b6c60958c09c7acca3896d61ecb15082ea823b2f4374d7ad534fd03515ccb5bd2d23ab1251aab457a6d40302047c435bb500673065023078b3bbe681dcf73e3da49a6ad44fb3477adc26c263a5dc5993a1d91f3b459b1679410ab3cb44facff1750e22ed561687023100afb3bddff1950e8c0835ea218f6bca16c64a16d5ff57c63992ff4660a01f455aaf625ab156ed2ed2de3b803d3baf330a0302047c435bb500673065023100a134375f4231b2a54c8e567955954f2e879409f2096d8a5ac0ca74ac087615f42caa3765242dcea92b246b3bb8e903b602307bbe52001d2682018f35b028243358f8b553ae906b06b830474cf48246b1ee2ed3b730563b69a4027bc83a71855bc2660302047c435bb50066306402304e519ac678c13af37f7ccadec9f88dd7dbb65c6743b902e6d7ef0665bd530e58a26cd4619e44cbb1d651479124bd9b7402303b91499b8b225f24f4e4d2a6b02f753e2b9f0726e0264bd11342668bddf38394ce2043f6c89ddfe2c1c7944e41a109c40302047c435bb50067306502306ba06b575c94887c9d7afdf2a315237032390b3981971f50e46ebfbad1d8359d678945e230d4db1874ae2db2158c9112023100c475825a741b32cd17708e8d67572489b85b534c381ec492fd3fe0b9e1e5edf2ac6ae319fe400f9b2c49f0029cfa005c0302047c435bb500673065023054ecb6c17d70dcc7be881af1096d0ad0761d3f8e724345b3d2b25723e90c2975186086e557e416cab40a1c8c106828d1023100f806a5d2efbdb0ee9fb252e639f3a5e2bdc1254051e6c6ada5add8d76a02489963c2b60258effbdb4a97e8e933a356e20302047c435bb500663064023067ebc546947bfe646f67e6cccbddb0406262ac7687699cf66751e22571d3e1c588a188ecfada807b96d44a03bbeefc2d023057ecb0e931cab8b07f373733aeabdac98804f2b14ac96c2891345eecd63a008783f8544291f75b6966e81e427b848b500302047c435bb50066306402300323e837c63ce98251b60c75dbc2e7bd7bffde3c78dba3733225e9f77ce3941430604eb3764c24beed185f5232a3c41b023038d913fe789dd077dd08ebb14d7011d1ba19562d9bc87fedf6e186f985bcbd7cb10b7a0593f94c75c59e8037aad542790302047c435bb50067306502303447fe355aa564d3d4a651a77cee54c53605c8b5888c7a092f07fa57de13036dd8d0d722b0f23478f81076248d4f819a023100fdbb6ad77b95a11b9db57810bc9995fe99168342be6f8ceb6eda03ac00db85a8409a92845b5e7acd4b3e7bad21a7e3670302047c435bb500673065023023406fbb7c6ec9a01456f755f51897fc3f4cb33cb22d4b42c1c03a6e85db23e9a2c7ab4c967c54f82a14f8fa1cca054b023100a4114a024404f0718326716c7e31bbb083b5ffdceb6fd141f5c1296fb6136b715fb139255280b3ffeb20e3a08ce50d640302047c435bb500683066023100ac1210fce3ba0c07c8a31bcf70f1d4c924018517598c4ae420ef7d0fa4692f6d8071ee5a673cd8ded48f98bf622a8a310231009de2544a7aaef051e2f6ad46121ef6d6753d3b557f754d7815597564315414af749a0a4fbeccab6d52d748fd2cc3566b0302047c435bb500683066023100e87e9b829e2a936f493b341d8b004102b3259bdf6effaa2f2367157ea7cdc48f7cae382e2196e0eee94b096cb24a87690231008189051a0adc7c9985eeb8e9f05abf9bba290e85d8f5ef5ed1e98901118c1c4018ba2d164006b788aba002e4d57323f00302047c435bb50066306402300ea85cc7b512e8198e1320f0950927c233d9b989b69643f8e8fe6ec966d0bf32cca401c498a68cc5d636ee0c50b4265202305a4239f0ad03dc8dc1e80d48d1785cdd207bf833e2f936402a250ceec757556b871a87bc1d7c35d756431cb3d36f9bc80302047c435bb5006730650230174858aafa3ff99f1f7a2ded7d14858b72eb5369a4fcd20e7845593516a4867eef2e98b393d822b38482d9d5435bf417023100cae577c0b47381c562e4a5db852eefca5f2ff9cca7822bfd9c8e79837117a1de51499c950ba2c092c87cafe95678fd5f0302047c435bb500663064023027417d66e3ec42f51ed48a6ea08c32a0e9523aead051c736f2e0eba886a50423954281f34d9efd2cb01aba3e359c218e023018a033cd88b60791972416846eb7aa1a620b0356b0e850ed58c67fca9bef9c57b3d2ab60b95eceb3215946d43cd2623a0302047c435bb500673065023100ad536198abbeb8a5ffffa0efc2ca3a5c95b45084c843ad90b534b3efaf6330fdba441556b7706099888e8ecbb20a60fd0230311f53a52b6c52fced56e186edf5c270a1437ca5ed8dc14104855c31f119ad5816eb7f2b6727b1098bcd3acf80804ca90302047c435bb500683066023100bca40dc803346ee18be2c01a1a66d97e5f162838806a65e115481ba02bd01a494e35cd2dd45cf8cec96897cd50b07b3a023100f1893c70d16f881c1ec8cdd79ad925ea2b1646f66d0e293d050d4c48702d2015cd5c50db948e7e6a7956dac58fcbab540302047c435bb50067306502305e6e7cebab84d20091e0ac84c433f68406f71c38ea4906e2569f8651fc3d1822e8db7f6f719848e041b8e3c0c5222c6c023100b0461d31f1662d74e4c3c7c9db0ad08c05cbf2f036223f4108f996ce7ef6789f00e328e4866e1af299f3f95d67d801570302047c435bb50068306602310082aa78965747b6f29d7f5ec2f4995a3b71d99677c9ce143e142584dc4457ce46daabafe8504c00c64c8d2680b43ea9750231008f1d89af51d8f209d77475ca665a57a559d3c5ab9c16027762de82c3e9d2340901775b7d5a1bf1e1496a8aa1f8a41df20302047c435bb50066306402303b1078abda16795196d52088863096443940277850c74497d34d4b5cdef2fb9d3c2d7bf88c914ced0118152249e1a6c0023033cef4d12a35808708657cadf674615a6c01c94ab0bb8f26273538c4a019db257614dc48b620fdcf680cec96e5bd7bf30302047c435bb5006830660231008e4a79f169bdf241c90034ea31273bfe4e3a508cb604877490403a9aece5a6cb7f7ad8fc020ab687ac23cdea8d52f368023100f834c513b15e4ffb62e2f4595ace48bf8582ed909d8a3f8465ee7637c76530ee6b77b36aab0bbf28a9d5ae02f4a888d70302047c435bb50066306402307e4fd1cde36613efe845cb2ef947bb77772e5c3e41ccdcc86ed7014be6e2ddab1aee2362f7a758bce98177e5dd0ff07002307ef3267f19cf21d61a1870f5255e41ac74fb92633970c58a4e85c5803c8b4085de30d28b3ce3c96eeb8bcefa171ce0a20302047c435bb500673065023100a17ca0b9eff88d7260c2884238716873a0af467f7e4b9fb70765462ce6bd3a5370ec5daa5ba5909c7c99376214ba3dcc0230079e7870f5232413ed281c4095ec9314962f3a017d73466aa0d8fd9a08fdb6bed7ccf74e8c743af183b1c2ecf3f47f290302047c435bb50066306402303023bca5712b3d921d1e7fc946ecac93b05164c708684e99ef3dedfa47b7e08b93da822ec2261b69464ccc82f6dbcf81023075d7cae17ef072f80de2cd567f1b2fdc6557bd55c113cfd86555e49733428ecbe8aeca0e064802f46e4aa80ebaaf22db0302047c435bb50066306402300086264c2796569a9da2062e721b029e285a49342d6c56270d20622b6f4a6cd1d2d186086ec8af9015169d625a13843e02306762d529481f9403bf315aa284629281b61584b246597c1cce3b6397a7e62ef10e327bdfb6d751051848645a7046f6950302047c435bb5006830660231008b35d5885809721e30117b5ae0ff3ab2245d2dda4d68a76e378e0575869dcf2d77f03c40d1de7d681bf18468b55566f5023100b28c6724b86220e67fb58297ffa64ea01ba5bf3e167bd7012d7116909d5ff4f90d2d1e51f484a7396b2920a5a85730930302047c435bb50067306502301d85c6dc2ea1eaf877cf60fdefcf69137a379a0fa89a7407154d21cff877c3b0c53c091596d04213fdf6b8675411a152023100b33813ed08edc9b0be091cf1fa5f6a5adc3fa05850d80c4eef823cc30d8149dc5022b7309561b32d7461a48198f915220302047c435bb500663064023015e8b00604115efe49377a0a640b2e2fc0b9079ff3b2becc05088592a5f2fd3e57d68fcd16a98e259bc600e8f82dfab402304ff87f785014e674f03153de13689781ad8b5bee3d84273fac6243b27b027c5773a55ecfb2ecf71ff4c80722ea96ee060302047c435bb500663064023003554ccd8765070f66707155fe32a8344d2ad98fdc940afddd62c1f5b8648f41234cf982be1c515cc2799fa32f125ec1023030ee1e4d00e6fff4990148bd2cfd5de42f07c3ab929c713fdf5e73fb324697ca2fb9cdc6b2b47e479a61a0a60d413b600302047c435bb500683066023100c7b2ba56dc172aea099e9c23532f0e2c677a4b84d8400102c7b1591467a7a4391fb3a63d26e69f8a98aa1a226a50e9aa023100fb098241754683c3445611df4d3fe17eb0737527bbffc777b8b5c3bafe47213efd77698b4bc233a2edb8a4ee19e6b6e60302047c435bb5006730650230141188757d7bc07cc0690ca825bbaee58c5d94cf1bb975a77eee8ab7c79e2ae60d90e4aa73d5b2a1e5f38bfcf3ecb8fa023100e0b1c6c93e260a17d7336869785d5ad45402730b3a9e55a5edde4877dd97370aca76007ae048cda7bc1dada46c02fc2e0302047c435bb5006730650231009e623d44a037eca4f78f12f6df4d078e5556af94a1c1ef4b79b28bc23f5f9e7dfeb23d4c23dd8b364deed72765027650023018e4add30c8d813afec2071a1bd5b7aabfb3e57fbe93929a5bbea60c3d9fb4a289f4569dd9c2f2727d9749810927f01c0302047c435bb500683066023100d454d66518f242bedfe5256dc55eab0faf8059228aca089f171e4fa5b7fff5509d7108f14593121904fe7c1814e3d5bd0231008fae8622a0b8a73836eafd0e12f20fb3ff0648724c48d05c4edf1fbd3f9cf9b7a297ece4c4a2223e26ed740f2a5e8f1f0302047c435bb50067306502300e302e452314ea8bf886f76c587e46394c5e17214ba92bb58b030955ad1b6412b99fc44af2611206977ab483b5c9d655023100eafee80dd7b18f12f64a6562fbb1f3797d833e9ffd10010b541e13e59e6e39a274cbeaa2407e7cc440d74648b1f014970302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307ec382f5d9575c10b21240a51c4f9c9fc229e72cbd91d3a92af6508047341e80c6b62d51fb0e9c33efb5ee9d9db5eedc02302301ff4b4c48dc9d516d1018f7b8ca36deb80abd38f3ccaefe016ef6b31c4972c50348e51fb8158f49240808bd94b5890302047c435bb500673065023018ee63081e9f7a8a456b987ea998fe5a1ed85e5da5851d31735505a0be6bf717ef35f53bb679996c8a3ad5970f2d8c7b023100cb0ff14f9202dec9322d57cc60e4a2dd22131334ab9b632d19379345dc30f828e89e67ec1042fa29eec07c3a51386af00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f393106dccb8027e0ed76bdb82e3b9b401c3416b25c4cc4831aaaf5679a72dc83d9e19955be187ae4d031998dba7ab170231008646d02aa9381b9a1aac1b54f569a72d49ad15bbb994e9845aa0fbbac4c0f3afbecbfdb2e1819bd235df0f4b8647b9520302047c435bb500673065023100d1034c32f1adb36cea09f7a8caf461cfaf6996921f4033f43f5600e33fa725e2bc4fe428ab360ae119a06a30ae99199a02301696554fbbba195e9e6f8320be8058300d911106b490ab89091b202ef358001287ec378e94636786a47a40bdf04a6b990302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230519f91dbd61e90bb84cc93b7ada5dc63428059e8dc86146177b7be047080df9bcf7fe802b71dbe264ae4d473290ee07d02307b2adc349a600307a11da593b8ae0902364901398403dfcf934937ebf9e8e4e2c430352f8a074e516c4005b1cd79d5dd0302047c435bb5006830660231009a3fa8f19668d034c0d67735ce055bd3264f22f7e0f1a53db771c5b86f096bf7bdf942d1744ba68aa16b1e9cbb25e574023100e40f827298cdcdd48522d699275c915bb1f24382070df129d0dae82a3258eacf487bc74d0b1e86de67003ded42307b7d0302047c435bb5006730650231008d02604a4206683d6f2907f1e69b062098127b7e0534d6ccdcf2c0ec1a7656e70f702c6371865b9180528896fa9a9a3a02306e31479bfa030118217f045df9cf23bdaffd2fc80d9890a51a1ab339185c39523163545ae283cfd0b934c85991f6282b0302047c435bb500683066023100bf22a6f344465e62975ab7524ffa9c2ec8178179e990e78c1e6521427099a05a787b11a4801f4a318d81c8e71ced08ca023100fd961f02af2168e0f0de4b82724acb9eaffa1132fb1d00733154116da211a19f8f7e356662a484c0c14e9e3be2f832970302047c435bb50066306402301f2893d64dd456fa0c648524c5881cdead6c5b04f298594ebd244458bbdd933d4c9017deb910c898a7b2d7804c32a82e023060b4380f6a88ae363d0dd7f0a5085efc88235f5fd4c95b0463382f3517e8bdc303df1bfe40899668967c76577a5e855c0302047c435bb500673065023016dea44311eb76545dcd12cb1a32d729927e31cb18425e3f069a1842b2c24d0149f353703a2135d0ee14c17390c80099023100fee6ab5124180e5c4c6f28ce1c900ade27effa3eedc62c46484aff8489f17f4b992932eddb18c1f362ba9411aa37ed560302047c435bb5006830660231009a9bf7426e0289d3ed42afcbc9f8f1d563a7d1c14cf76b70b6a61b9f5e09e9cfa22f8bf085926375d2caf5a69f44f990023100dfdcca0f60a01c98de846532dab317668621045b1605af5397f42e1297d7d34d41cfaad4f04690d5f4f8eb71edfa8dbb0302047c435bb500673065023100d112fc4f4db3ce65b8acb243b57bef7a6493a615641f63d75ea16dba3835c75425d96c0f062cf839ad8d6e4aaf674910023075e96ccd8b9137c66c7f1d3f90d99315c1fe24740babb0a20865f04285ade3eb705410a59e278597f3ff84f5018cb0360302047c435bb5006730650230417a1ba308c653fa96d86f274f43e3415a549c029688e6acaf8337b34733f61e81c46c78799e35a9c379d66804220bd9023100d932a419d4a0a5a828d0a266acc11b887dd209a6abd897e38611e7e734186c8306771c9588304dabcea07a417aea94340302047c435bb50066306402306c28ac5f2dd505d4dc19c6da6dcbc8578075fce30cc205066cf8f0d6852da98223c3cbe60278739aad7b65679512efe8023055cf2a673c31736e72ca5f50beb0abd330be62bd8f5f514de1cfef7225fe99d4ab5a27bd6b636bd284d5df08fff60f640302047c435bb500683066023100cace5adf5162b95c9a02ecb78b566fcafbd6b12087d99feedc70a82ea3702ab31e5529a7bcc521988a400917c6c8fd80023100aa3aaa73a4f2740ae66aeb79d31296d5f9cd26589d8b0efeb2965846f56315787959f74c6f8b6958f96cd322180f6fc50302047c435bb500683066023100c05e339e85971c35be9970ece1cc6f0b6f49694b6ef988afccf6b6a8288ff02dc0a2955b81a53d7c67af9ed0a933412f0231008414765cec96844117559d3681ce436ddea036ea8edc98520538d0c11aeedb8a4e1d272650d71a28065823457f8e3ba00302047c435bb50066306402305930d57e3b5f0219eb14910dbde35cffb8b17358dab36572da704059e3d0fb5b78b824b2fa6ac77d912c050616cac36102301aab8a871b496121c9aebf66598b9fe7c45e6f4450afe3d956b99265f303ea144b2238237dfa2e10ef829c4c55fe6e620302047c435bb5006630640230235425ccc0813ddc4385b99b11bbb3c013c68945a596cf4441df3dbbf4e13566d76b94926df5684f5830d934df0ab429023056dea0ab387c5fa2fcd0ae9c4979cd7efe298f474bf8a44518340b8c313306d9346d6ae879f6da5c1b3a12897d2c65a90302047c435bb500673065023100958bb413be0be54afa720a8cbeae64c3348fd6a62006bf9d8a7fe92f3eca6b129f84a527879e93c623afb601a85568f30230145015d0101da1d662c8ab6bff0e44f60c6a56cd6a2ddb91d26f463cafb5d863cb1f677fb0b0bbc4b2d2f8429bf4a3930302047c435bb500683066023100f5eda1a5231a059575e9a453f225e44f6976eb56ae7d04b2d905ca6e12b224e6ee7d84e3f35056f2d6049229d90937c5023100e323c6f6bdfea23a8d24e1d6915e0ebf4831ab675e041c6421ec8c1a14d08744d4748aa928515666d6f1821130930e490302047c435bb50066306402307cdd2520a48e2e62e18461b494f2c42673935fc3a8fe784fd86fd81dfbb1e70e2990ebe8553226049b34f94c802aed4002303eaee326ea8a69fd0c3b9b68b06c62f1e1eb7588dc66a009673eddaf4cf3c67aab25baa40db9643e964896232688e7650302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e7190d48e63a2b0f03dd25c1083ae78999ab08edc0e722ead29d9989399301c6170a7332bcac98c4bd7f9d4fe1a6a0370230057643f8a87c70e0c1bcb3a6f2b3ce7bd86812292cb4e66328d88272f6941a32649b6e96b31a1a0a51e54007e81d24810302047c435bb500673065023100d0ceff31088c05cb36c5847d05d93e246e3a573536ff1bc956130af741c0e6d44542e3bae4ca53a04840b573d7261103023032e7821648a5f1e6b677b92e2f3110330c7ef158317e0cb0ddeadfff99bac3e72f56ca9681201557d51e7e10c2e341820302047c435bb500683066023100b65764f060909e2e5f3ffac17c2ab72f62ba0e445c94527d82c8b8445a8d4adcff65bf8da4e29b6f1ee554b0287819ff023100b0175e4cfbd382beb898680111958540e7223c3ff09a7b71d97b35472eb607aa99e916d4921c7ccee647a9bdd9f7495a0302047c435bb500663064023042211948aa93c74bd71dfd466c4f2b4070ec4916be499bb214cc72382534a679a83abb5c9c6dedd10a24a1228ec8e15b02301b5ec2ccb2d52552dddbc940dc4e504136cdcd70b690c5903d9c0b2af44d123712a47a2bc84864aee908cd3cbb2a112c0302047c435bb500663064023055903726ddb433cd87264621017677c3028c155afac12ea002010d6112befd4e11f657527b37f342aa97b2ac3681666f0230340e2b5f4c3842f0289d5627b141265d67ab5a55296f9d8fd9a99a442e63e4d3827fd2502bf53900f2b56b41ef690a6f0302047c435bb500683066023100e45bea164fde78d048afae6aecc762afab2813b9f0b9a8e82beee70df790b39dd05226eaf56ef8772ab8564b3b0a0832023100ec04654f71ba2d82caab56193bcb03fd0fcd19abdc2350ba470b7a0268592e58da407f9710082efe3ce6b8b68cdfb4590302047c435bb50067306502303021a1d582d4636b947b7cb2c9fbf4bc6ea38fab63d7940a82ba12f81288666628bbbfb6ab00374f7ec9b71f9bdd0615023100dc60582e75ed5d0334cbe547201f1cfbd56d9429620fd77d95f85fbf3126f6f1b6167ad2c879f503149f12fa68712c2f0302047c435bb5006730650231008363697e1e5048404249385cbb9f2db54dbd86cad8c4fa2159ec1513928e6f983a5e9c8fd0cb8fd0dac27477a726409302300e662d6901c342d6db6f79db8032ab583982543c3f3d75680e5a73c8530679ea772da77ee94e111ecbb30bf951b358710302047c435bb500673065023100a26507b77a962a7262ae9bf57122765261be0a007de718864888f3d72ea14ec021487c0b56834392f53bc6da08465bb702301a6fd5684d0019cc9ecfa49de124e28193487f875054246b32b88eedfc161bcc434044f7d65f4245902d2f750f3e46ce0302047c435bb50067306502303ad6fd232fb277240fbe4db7d8ad6b9d0bc42e501af705239b185278c40b1184cbf37e1c742b1aa19522ccb4a4287298023100d65f3def9d631c1cabdb890ba749376febf4762d09dc48da9a3305cf52475bf72bf670eedb38c465de1bd3d55e0dfc9a0302047c435bb500663064023018406063c2c5a7027e7fad780663512c4e57dc8be2e952d09b8b6bb4bcdf86fe3d40d3a1a4f07a6013ecf2240eae47b8023062891cadfac86db84fd07007abe974106431c9da43e390d7d6aedc4b07033555935a1a9a8fe7e52017a9ca229b333ec30302047c435bb5006730650230127352f7ea773d06196926573d39834c018c8f051c6bdb515d274e114455f3bd88149ba22e9d2a469c2842f973cf9825023100ead9ca7e9540616b5d87f52cca098835d636b1628d48094cd4eec73cff89e1178ba2c8c4b35b52b168963cb40e5c91710302047c435bb5006630640230164b8d38bcb0ecd7daf1e5fdf03e454223fb4fb2f146037d3a519dd86a934b66abf455ad655403337d6d2596f0f86a01023072aa5f49f1c5c352d9f5b99caee45a4be7f2b7cbf24295239bc106081b40fa09d89800d4f2c7af3b0805dd062cce92920302047c435bb50067306502304e5aa4e0e68c9797ae17893f0aaa3fced97d3180aaeaf237662f54c4fcff6480bc5e609514c1f0f08885479deb0bd4aa023100d7e63eb956d6d0f2f4abb7415ef9404fd584c1760ddee34872c56fb71eeb0fda11481d8b80fe63c2100de71cf8d4fc390302047c435bb5006730650231008a46094fd9d2f910bf5c992f0ead72173f9e7c41bb1cce5deebe4193a9c7f136c0b9bf160865923cec8c9763d5ba034602301fdea15e6856fcd69158b899d13366340bda948ed0557c08c982fb6a520b7de13a04ac40de2d058c553882f4a2dec2ea0302047c435bb50067306502310099204fc2517fc948ebf0c892c38dc3e18ea07fff8c0cd3b2e39850fd73415d40bfc991774ea54131f3428bbea8f67a540230757aecb16d3c63b1c0d9697f896a48eaddd171fcb828bbb7f06e7d1a37c2113c22ef5d19c577d21449529bf6a437ea0f0302047c435bb50067306502303955c7b17094c063dae0c7835b2e168a24965b895c8f2625c5c3d46dc13211d4eaa898f199854e4883147c80484959cd023100bf516422a4087d9c7d1a1e6d3bb9e23e37633aa1a3e1678453c94229740893ca5952bb5f73f14b747bb803b8ae4495800302047c435bb50066306402301d786c9f53ba9255c997b871cd598ec44439a9b19e0a9ef2aead8a37568e8f4924252e5379f853c423b00df2f6754b1b023036f47802531bd99bf7a6a6d6f07b5c56046b27bb4173b80d839cd47929b2578635ce7ad8b3454b27a1ca691d3588c7d20302047c435bb500673065023100ea5d24ed4b7d389a9d64effc954582943a19f6e6dae9330653c277d6b2e2ac99ed06ffa984bc1090362b4290ab958442023007813fac95435ab3e767cf86444151dfb201349a9230010bfd889b84f83f312021561c7ad90b873de5c5637d7f3869bd0302047c435bb50066306402300ac1ecbea1a20c3c2b22e7d2f03a72e59e2445c4d06c2f37a6e16fc4468a40a2b44c79547cc5dd88d3c7c2db5ab593d102307b8a008055973b621db27d76eae3a91129726b242b860aa68dc474bca31345581c95be8b40c6a05d2be718f19434022c0302047c435bb500673065023078b41ce9959066adfb445818b6f5f6333120a4cb3da217695db9d3c7512a0dc6241218cd7df22a070ee339d6d55c7391023100fceb6b5c314c3d99231a91defb47678490799f62253c71cb09a630be5e6eee17e68cc9b5755c47a6fed1953fbdd175de0302047c435bb500683066023100fa15a41b51368ad06c674a00382e3240d8a2a741148d452eb6344b7985ace9196d913ccc97a242cd605042c6f6f45451023100c432198d50a22f3fddd707973cd4ac68fcb48db9c373a9aad2abdba7bbce26902cf1769e7800f775774cf311640d8e110302047c435bb5006830660231009a297be25f0fd0961b93ba33022a28e4c39981936d118371c9e0a53da0eb17b7ba2ba2ee8a1df14419d0b6ba1646d3f0023100b249063fbc44d4fbd0b1fe4d8eff9b8918899f5365547e6156a26ae11f82ebd4a2e99d92b6f88cf9f6c458c95dc336e70302047c435bb500673065023100c15b43c89fd057f0ef4c8b8b78274b5419e76c5a156a250bf58df4c709137b7c1a32ff944996596674afe103184bb25802304bd1554fb6409fcb555048a8d34be85623dafe1d35002d97d1c590a0d71defd22ae29c3afe844d3bfbb5bd4be295ae3d0302047c435bb50066306402300b599c527461c02d087a03eedad0f1d2bb7668c384848e09d35789f65a6b8e4cfaeb68469835f69d48890a34b648254802300e5a637d4ec187b126fa9f2d752e13bcc1c1b3da71a5ffaee75365edff95b783ed19f79f52640c041e3bad30c3b189d60302047c435bb5006730650231008db2e23cec3b0ca1521ac5644c8696120527a3732c8eeffe3ec72bdd364e2669a38605bea9f1bca4a04df4a624ceecb402301b0bd7eed61e0015dadaca8a469ad929ee5148e25bd50d02cc79997f775d9b4e97c752b8bd8d035148bd4a47d29a98e00302047c435bb5006730650231008d867d71dcc21ffd029afb021c2c298d04813c510b090be0ff83df743b35a2b6d3514f12ea4651d7ed9c74258ee262da023019ec231732700b62572fb3a24014f037783cbf87da87d73b2b6f1aa6e613538dbd6db5eed6584367c99819ae9f3809a20302047c435bb5006730650230116d16d004e13a594e134b35ee34077b342c040b666b9c241e4749f07cda1abb60a2853f2e55910ca2d14021a7bf89d7023100e073c7909a644d1f445b450bca9f7cd7aa9109849a388750a6afb209cd7c12569c25261181305b0c89c6af48c598a1fd0302047c435bb50066306402307909f1c4d047db91e3ef59d6fefbca61c1493639bc25ba9c1812bf3e1d2a015be5ee94b39a17f6d1aebe94711fd372d50230428c58fe33b3677088180012caa74cd9ff27199ad898db311f0504d87da9bcde3a2c7c926a5ae7cbf61fa47b15d919c90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a4b1424d04c08c66a612432a936a244180c4400a5eaed9c0f44f622522719134a27c95b6f7c048353d8d3a36faf2e1e002306709563db265f3c8336caf2c54e51e9dbaa0f2e4f410e31777f70e88831d3a202ac1d1adc628b47d33963ea77373eb380302047c435bb5006630640230212ca6ad278f51f500731d0841716767a7ca7805cbbf1132fb832557ceb1ced2fa49ac3cb300c5483a21dafaf3365658023032aef525bf4c5a429785febda8af67becc67290954393069ce55e0c16fbb55be6cb64ec72ad169b8803e7aec36342b900302047c435bb500673065023019c42c96f4e72e4bb7971c348b733d94c0c21cdf64faaa02cb36e14ceedfaa6e56b924b48d9ffa79dd1cf62f10264bed023100a6178c007c3afaa48226150718c4fd50de19d063981f8e9d0fd176bb59b876119aeaf83ff6a5fc6e19dd558ef59b41e30302047c435bb50067306502300f50b5c6d864bc5abef9d4911f6a8ef76d0db9f77b19a229c54a25e6c2ab188f27fd1b387b3962a4d3bddd6fc5982b04023100f0fec9a5e8511faa24c1fb15135c5d3e4a09b481ef43d4f3ff4904ae5d151fbdeb2232cb14da38be02eeaeb8ea2f8ed70302047c435bb500683066023100ec3d9ae66e20cb0bdf24e3d549cd3b815c995ecad0390ff8c26f6227bea4c73ff334b4a98a8a750483f89e7a309504d0023100bbf1c5922534a72a4e38fbcda2f3f99fbc9bf7147f02da743e9b7a3e0f14c39b11083f1dd82fa3c2cced2580e9aab8f00302047c435bb500683066023100a693910d8ef9f8692dcac254fd4b61805506e229cdd477ba6d64a49d07b362903ed5464ca736f6937ede6f359effa02d023100af4d047b54b289978eb7de5a4f728bd1e8f1beb7ca05a763a0e94f3d993dfe8067fc1d69a6cee527b2ad3620938b48fb0302047c435bb50067306502301f8fbea215d19727cbedcbd250cb89671e66934ce2e105a736275b6a974d0f4d92ae6e8eaf7d50deaacedfc61e2271c7023100d71f8a4221291837fd0177f533a5855362efaa0e38ae1a978cceec91c309712377cc5b5f2c7d751f4d1d6d10392e1da90302047c435bb50068306602310093f82777aa55f827a3fd4e3f2b4fc16d504b9f5dcac19d0fd01fead5413fb09f416c72ffc5bebe2213fee5952a014e82023100b3e05407d5a1654ab437e2c237e7687d687818613a4f4b981f022646b7a37e2bb9aa5779ae91a78e54bfe38c307caa300302047c435bb5006730650230048dab1d44ae5fd318e15bc01318a52eba11a85da53407660a8d8b58061dca36c2e71114230bf3f6b36982d96a6f04fc0231008bf19974738b3a39c649c8a1eff752376de016e3029a71908f26a53a0c3b9342b0541b2058a28098b38b8593966790f50302047c435bb50067306502303545e7ae5c8a9b22aa2cceeee4a8f18016f9aadd7a6eac077266f0db511b469839ba4b965da0cb422ada74d0f6edb8ed023100de44f6dcb28312d0fa1bd197f87bcec58a0969dbca3f110b68c3ac980afe592c301815d5c0e0e3fa6b31e87e2c444e770302047c435bb500673065023100fabd1faca880aeea5e9e44013cf4678eb81764d494eeca352ed73b0e9dacfe5d5fe46bf134ba98d4547c366bc74e4c45023070b47d55803bd292ee20ae582f93f29812428f7bc35df2def1689f20bcb60e24dc6b73d60f3b79133d0ab284398259b20302047c435bb500673065023100f64631a8a3ccc56cad07f0c9b17db7e01583538bc779e0d6664668e54597207b46e9fd5420cd5b0008ca2168774429cb0230372144cb9594c01cebf38387ad9138dff192b6ee71d164408f3615527fe32126c5518cb381b414df1c1befcb5639d6d10302047c435bb50066306402307d1b6e734fcbf0b2720ad0cc5bc2496e123ecea7aea25a8535901a2cbfc10a1d91e04bb7d1c0e00ec18bae78595c6c320230640fb2b662689b77f7d8dfd1fbee54b42573493268c3cfe2024c1088f5b910afe73186ca3d271e20fcd8ae69925906c50302047c435bb500683066023100e7b400388e6f09e3a8fe58b24f491e6947ffbbd100dd79966bbe451df0af15772882fa3c295e615f1e6d582d0a6c042c023100be731dc671dfd23c349db8390daa75c2f98b1444235a39c85474e51da7e66527df2cd4b5af93cfca37e7160c542053220302047c435bb5006630640230564ee459f446bc0aed305b8a05d5a1d4e71ac45a450e6aa6e2520f4d48029b318c9babbdb82b5992a45c071d6872883c0230490c4be152359e2b723468792382363304cb956903ee07a91b4956cc2aa6d082921c7a7ebc08e080052152e990ae9d860302047c435bb50067306502304e6cc4da8175e8de0ba4bbbd8bc913bf06ede6dbcadb12d0ebf9f89a3fbebc3f31a5031c6ededc410e8cb428d923a90d023100f8a146f6cd3ef84b912ca87f9929c198b113cd82bae1ccedbc155f3554f5cbca1b66953da920d726da07c1e9ec9e46b80302047c435bb50066306402302dac8ee764b4d0aad99061b115b29eeebecc43d3bcffdd35e954b83955dbccab484cc8b2f9abc6c03b6c8d7ef976b07d02306da569bd9fbfa51e32d16b5337fd8a1da3f52a7b5df5de082f25defcab08794ca4a1b2e8e05327ee3d033766f42f42d30302047c435bb500673065023100a2b4ef3549ade16be913b7643ab1dfab8f75f1d6d17595c2fc394a62eb3d5c4b9b339bc897fc0f4102bd7d68969aacfc023012fbb2a592d4b4338e404adabf0f10fdf2b16b83ea7bdb362842688bbf8722c32256e9bbeecc1746f3f0e0ab78ad21e20302047c435bb50067306502310081019eb543052a68d7b67bf73d15a4c6823fd36e67b874afb5255a4a50acad31de6e3172c560330523c4d0b6f1df666a02304708e04213ae1b317c878aadbc58039e459711194930e5111e1005185b1af07f7ed1924892b009f69392d2454a71f5c90302047c435bb50067306502307d0a6d5400e7f1b75dc7d0a9a056d71732da2a21693b0773bb499922d934d3a71725aae09c49554864a8455e42140b370231008021dd1a117d774ac5fe52dcc1ec0f37ca79e5e43bb1f9540c58fc47be4dca9d3a413aacaa8c8b93ad010effd76e8b040302047c435bb500673065023100a4593e830bb92f3b950cd38fb049d871243ddd18e23282c054112f2ba4e2536fafe4a14828757e4bd02a523dd5f9f44f02306ddbe292624605c5a08c15b5d1ccf5242d97688eacc805501656f9719eb18cb716b23f375c19b1c23e368eaaeaba39c30302047c435bb5006730650231008f8e7061123b9ecb343bb1aaeefd9b31fd2660c9bf9dba3e5f9b2dc8fa6d86b6c7f20de9b817202a497acdf8d6c637dd023030a028dfe77951146a560c3e51bb9cddc1e96144e58577b034af35d433c40bd2dbe9a7a8aef925d768a006b9024c53bf0302047c435bb50066306402305fbab430113dedd4cbd4c52463e7bed5b1c8068efae02970c68f1906b6b61fcad33969f7ea88aedf655f8104c0745203023072feeab1e14eba4303b4cb6d1c407f7bdb0a446b2f84208804c1daae741dc922ee8e25bedeaf6459460cb3cbbede36560302047c435bb500663064023013473ed979e4e5335e4390b0255c0f9bd6cca4100e131ee8cb072a87044c4fa60e7e4f4599d1ad29e56ab642fdc77b0f02304524e706b067f87994bc6b97352eeae89aa8bbde255d7411b0ee89c8bc12ded741b706df4f4ef96c50dfc46fb499f4f80302047c435bb50067306502305176e935649195b275597c6373672818fced689bd5ad7bdf7041277a8d88ff2b9c28030a45ce8d8b23d780c301a3de8e0231008adba1be3bd79b597eb2341238be705825d620c5b049048b65ad4f5f2ccc1888fb932bd4fc7aa83bbe4bf069bcb391120302047c435bb5006730650231009ab14a080c088cb22c2ea8052aeb32360627119385d030f2b2a025f332f09e0e718a12adef7c1bd591f780f73f04ce0a023020e420fd2ac96b43f69e47cd4ccf0ca4f0e8bd0fa83b1d6eb43e9098610e2b03bb7c9ceb0c9e4eedadfc03b7651d9b010302047c435bb5006630640230450eca26e4e94c622731c8921c5520e56194c254500dc33287a00838c8311ec1233b686215133bcd276a5265504ed76102301680319a112b8b4ea3cd900c59a7d11acb63e402ea62b0115625f932eeca1eeea0cddeb1e46f2092798b49973c52ef010302047c435bb500663064023011582fc34766b7f92b6bcf7b9dfe04ee01849697bd3352c14811178bd1240d721dffbcd4d3dadc9c3da31974526f635502302f9017dca411b45fbd0c5a25628f0fa3befc56f395e27c63308892a7c4b4d3df3777610fa6c05aba3907b3c372b9d8b90302047c435bb50066306402300695046e423fd53cf178002032811472cf4f65ef45480adad60acf6aca0624eeb0b8c71c462e31c45a70a38fbf8e0ebd023003743d5573fd1dd58a7a629bc80da83a8782af526e94917008c0adfde216ccafd8a85a8142b2b97e15a7d1b5068f83d40302047c435bb5006830660231009172cc30cb7c544ca5b76cbf395f53645bc44f78051356a76db42f35fd20cbe4ce5f92a1305f4ea28a79432d3bf06f06023100ded483558f1355e3f24106fc700b3f825fcc8fe43eaa3cdffd93d60b4a34c80521434242bd0a8d41b5965dd4bcc2f1f20302047c435bb500673065023100a49870b139c4947ff4594d07fa90d2083d060032d8713ea019b33d2153596624742ed7f0ae4ac14bad5f7052584d9906023046cf2292e3df4cbf728e85547d1b1557b7aecbb753d4f91fed34f4cded472a2f96a7ace07f765218dd62ef5338a0b82c0302047c435bb50067306502304407a14ae8266dcb735f073ff2dfc7dcf49aef5719b0bec52d3c9ab9a1dae7171e3c03bc5dc1a4e01fa8ff66fd1c5546023100ced8b55ff94f36f6d7c4996e74dbff0881b921f9477efc05874177efb6ecc1212defec43c9ae6ceb798cb3ead3c6be470302047c435bb50067306502306a80f0a4fbe3560bc3a89130a0ba41a638013f8241c7e4b901462c64fddd401c7a9545e1758db0126603fb5eff7d558d023100a9767ca9e031c5547ef70c90f38cab1af799825f45859b9ae952e5ad95294fdf5f8c069e46f029e9061ef5f164ff00670302047c435bb500663064023072b6b2e6ac56ab579e7464788560115fb21875ed118c39ab3209f48ab742a1aa9f7549b9b6fd49a8f9c30f8ca62fcb4d023007975711e9d7f8214ac4a28ffbabe7ec91b6e51933b1ffd7ee3bdbf2e650cee932d6ea4c4b1dee72f4c25d15b7074bfd0302047c435bb500673065023100c2a439cabc47cadee343e6f0c767a98233c6df6e4d66f058bea9a1096cc1c30247f96f6877f11dbc6469de0734d7437102307f69faae5252669ec9f6159621dd7af42ba02e79922ba40e7af2ce372f694fadf40870ed19e2e8eaad6e1ee6de0683a10302047c435bb5006630640230408b8b239d8ee64a5ecae4f954efbb6aa470be85ce2b819b5c21c12a75a0d9c6679cd7e49e136d8e33184845f866323102307705918589d183cc9db5497ef95880d7f89f70f179724da99607429f2a84af62d3ec5874d82ec4c521728546a96d91b60302047c435bb50067306502306e129985d360c512332d77adeb9ea5b2fd1e172759edeb0d5413312c9ccdee06a5a1fcaf5670ae157770b72396aea81a023100af48bacd485a2cad542fb45dab26484d1ac2793f57e20c35c3c1cbc5c096afaaf50f12fda9f008e78a66662ed960d5990302047c435bb5006830660231009e72726c2d687462da75f61011f3c0c5e1590b65523255a1adb6946d6c3ebe99c33e712efe89e48e095668950e9dc6ea023100bbc9d57446e4eba1d5e6e78e4506d8f55582c2ba9361bd19b21d74c517ed8cc92496514e41fbe04840503fca00cb96470302047c435bb500673065023100caa59ebb7181e87769b42b91d41bf67542084690962ad50963ceff820a114d8eb2f1e4dba1dc937c776321202ef952fa023052aa9eb176b24dc5ffee831916d42e10f32e052cfce6188d0ff88d6c830d7520d094bd127b045cd4a02d75a6bfc14db10302047c435bb5006830660231009748ebdcba082537ac8db6b300bb55ee74fefe5d469d07eaa2eac12ab555d009dabf9d902f34ea0bdef356bfef9d9dbd023100b1a2ba3fced33d61967c3e25e63b23e6901de92823277bf904a382a8866650660f6a043bc8032f4c07dca5c4e5111d6d0302047c435bb500673065023100d23fd6b2c586a59a43e464be073f7c4d089871f43b1150f0a1376d9aa478ed4cfedd235ec654f2c043b26aef46103c60023039594d0e671832e1fdc8b9b47be1e209d78e79f8c2602ce109c0fdf1698261550e775c09fe18175a1e2d607134c4998c0302047c435bb500673065023100a56fa9cf9939960c71058f65e537581daf960eb4487bcb2af92ebafac1932dbb71a440581e4a3a3da295e7642876df510230048a05ad9369af6d296f75d8dd0f1ccf606cb4a21bf378a50a6635ddc4a068840e3c146588c75c1987b7e45a2f1451210302047c435bb50067306502304944fac6f089be2b444d6a79ae8545f59fe16be75c5e0a16187f8a27d42b7ec07f7ac2fbcdf77c6cd9373d2cf57ce36b023100ec8dde34d56d3df6f167de24581be64e8bee44128528aca9ccc300664cad747c4d5638572c7fbc21a04fe594b8566ae00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b30ac1224ccf947a77418b0bdde0490d7b45037fb828d64a4e69f3597e3d9c68a9c37dd1c03792059cb314f6daf0c31b023100fee8f1c1d5a12bf984dde7359f3d33e55a0aa9daf750ae428ef87df79466c21d32cd0f6cc16a69a7a5925f2b56a8410b0302047c435bb500673065023026245673f53cf85cc02167f890397d4f4afd872f800040eb4294d12f21604228356cf0117e9806ffd783d7905f254c7c023100816e047871c2a0489925854c35268490aa803762a6abee9b7c92cb9ad65143c4eb8ca723dcee1b37c70b3d84756dbc570302047c435bb5006630640230676429ea99e8a055df15a2f99a3226989d0b14804fe4fc0b4f7cf93ea2879bc08b547e55a5de78aee6c8e5e1b6058b3d02307c0590877578be20a29e7cdb8032cf438a0f17ef43b69617b7336ff3ce36b054df5cb5136570b10266f88a9824b6efc40302047c435bb5006630640230080a666ca39658799d7af3445d771823f287cc480b29ab09046f3b1b91c1c94dfa63f002aed2da9ee48ff7d6b8f1843702304ada1286253126eb02df230a8edbef3dc4cb44382e8b7ea45687b4493d63a8de9940b91a163f58fda8825db48724e2610302047c435bb50067306502306afc7fc2ae0c1674b5143c1673fbbb109a52072314ab6e9b832ea8fc167ff0e5b781f60ea7d97321aaba7039088b7aee023100c7ba75e61578b176ed58f095593eaaa4186c8402b11ac6d4da6de58cde00a1f2fe52e1fc348604a8b36c03aee58c9ecf0302047c435bb50067306502307ecf80e9bb91c33c7e1887bf8add5b05c9e1b86c53d107df8461be694093d6ea5e65976aadea45954ed9f65533d5b821023100f55c2c0766b5736f49822223905a468c241122e6c36c749fd2a80251100cfcc2c866e41142533fcb647eb696a4aa91ca0302047c435bb500663064023030c6c94c5cf21a6ca53fd64be1addd269b1480d2b04433423ffa10c3212b5e88bc683cec140cb955a13ed3c74dd2f4bf023011f745367eda3bf0ad1c2038375a0bc4254fc0a40686b5189b68970c920522f9760317e4d39e955e4ed1ff262cbd77c10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230393301037cc869bb5dcd6257cddc2ed3dbec0c4da969f350e972b06138999f4830332d52846325076e1a325d51c2261a02304d6ab0921b0f36a80cfc42fac66957bcc0bbf2ccf7807dba9adc9f85caf03dda6cf02c25499d423ca7332da03f93f7da0302047c435bb500673065023100bcb87c40732072e0040103eedd9a782ff7d20ab5eb4c5fd7b219a02e426bdc64590e27ecac92a59a7249c4a6e7eb382a0230784821a3bc8f2045de55315e29c83d1d9d552ab4206b9898a224d96ed398bf7bd4c72d648d64dc9c9f6371ca3a7897720302047c435bb500683066023100bed0d72ee5cfe734b519a8a9d1e537961fd136ae7fa82c8cc2356877a74e6dd8dae532c3370fb2fb696842ea7462978c023100b5dcd5a0bb4be67a4bf74a1148a7e08a3b46fe264650cb701a1d4e01ea83b73435805e03d928b0e5900bfc0b56eb01090302047c435bb50066306402301d6b952c1c7f30cdc3a2701db6e6d5855581eaa9b7c452c300ffad21a2884833d10f0d1426e1740671aed6e9ca816bb602305525cf00ef87cb19cc91dbf6849069efa992e0fa384e544d518b22d3044febf9220e677c019a1320d993a32fbd7c2c960302047c435bb50066306402302031601c452bac375ef02df36bc9753386150dc838d7707b71c78950535de912a7887ebb83836fa9be0e59c32d02b6c4023074fbeb39029dddb91c07a223ea46cb7af222830c30d266193e950a59716f88a29f2f49a07434877ad9f997cfbf6ea6ac0302047c435bb500663064023023c4673b205b65f9479e6438554b845864c9e5500e41bd5ce51df394fe27ffecf89849f503e497fd952007e666a1163d02302b8aca856b7c685df1b956b709dd042d049128fb6752af0e29f409f50846c181a79aa8d9b3755a5021870c0c4503c8070302047c435bb50068306602310084fbec65cfcb3d8e6fb50ddf7a80e2bff1ec72b8cd2089dd9a70b534301ffbb39211bccb68117a782f28dae0d8f1ea18023100c692b836e0509c8de02d4d99bbe7354926463f54558bad9afc3933fa16a1ec875f2547d5a9debc4ec571aea4538b6c9b0302047c435bb50067306502304c6df8fc6777fef5fd49b7af1e0cf10745c767afc2b7f32bdb0d0cb808ffedc8dd467449489ca0534d18fc546378a59c023100d5b4bf44e93db84da4d8132a9fa8d1836e7bc1a963e6b77940dfe33f6581ad2575edbc23f7a4f6720aeb83bf5d018a8c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ca8a3f6540d158d506b6e8ff73099ca15f8fc295280ad8f5d6f78361ffc80ae0713ec89aed220c516546233777bb22de023100880cb6f00996484f389ac3e0975ed08d0ab6a9cbaef88668a38883a3b4c8cfb0719b6205e3705dfc64ee2b64d55dcffe0302047c435bb500683066023100f60ef1b71f0e1ed58e9ad9a4ec25fc2521e082af64e73af50b8e0ab1868f0d5910dfca0c8e322cbf61f35ad952ce15bd023100c23018b4376bf7a1bdb7e9bfeeaa7c5102f994f775b08b6558ca01b3c0506e3d374cc1c68cac1a7ce5d7ce1f70c63e010302047c435bb5006630640230053a398ef40db92c50cf820614b5f72972054d7443e828c3ddb3eb75e08ee6f998b67f4f61a5022a21225812c6b6069402300fa6cb4da39d805d8745ad612693cf47a5f4dab3093cb4d042e8af97728e1e522abe9a91b80cc84b2e36c7e66bed19490302047c435bb50067306502305ea7fcec139e29544b251143b8838cab97ef92d50a9456077604d2b60d0d6a7bd8d558711d28648b008a9541fc351b7b023100b0c0c0cc0296f7ad6c29fe74fddbd7e4291eef19283fc2eba7b623a3468efa88961abbadf42e5d5907dcd752b47720cb0302047c435bb500673065023049f3630d9bfd07769fd1bd0c1524e9a57d0783e80b9dc216e53a2e5b4d59b84a096f75d1aecb9364591d3c75f6b1ea79023100a280eedcfc4d3a1d63f18c22a3aa089ce19ce60608e67ba8d766c441ba1fafa577b39de9c596037d3f526c06d084c4940302047c435bb500683066023100d2b1772b9466ab04fd3bab1106e645dd8f1df5db12522b25203c80b37919cf5422b9aeb490618f527d4006b9407ed531023100ca1f9a2170dcf4adcfa4d8e135cb3f10128c81aa27c3b2db70115e93365ed860fa538db2be9d30b4837e76131f8b48d60302047c435bb50066306402300685feeb438e298147702a3a56ecc89a76c12d320acfd4e3df0ce72b62ba87d1dc58223013a0c22a3b1d4768a631d8ff0230084b5a88f4ab3fce3a22e3bdf62961e9a87d80fd44bdeae1cf3cf4968be30e5562a3f7c2a105b74e2fc4f4b2c64130cc0302047c435bb500683066023100d96dfe8e2ea3431428e981ddd9c8117553aee32fd3d7fdd8be47ab140f0e03bb69fc592c474463c86c449891cc63f2c0023100f87997fd293cdbd6187bdca4fb0ac5bf64ff89cc2d1c398033aef4641b5c049a962a093760cf8aaa42cfea42e35e5a0a0302047c435bb5006830660231009017a5133d70a7af2796e168f01d7f7e6fa1dd308405da090bb24c324ff1ace62f1a0cee91bac9d721a2b36277aad792023100e7d17d3488b662c4e2dc12409d9c4097c48ff15173bd795d0be9a6ef118d455d4f5d25a663e28a085df8de61d2baaa3a0302047c435bb500663064023077af8dbb083566ca1958bf5b41ee610292d02cdd704393107fbe5fce6066ba38cb4839a37b6276a5a2f43f8ea230f4d002301c4d75c67525745706819028bc8fcde36d349a0abce48addf5a3e8c87fef79dc1c614b97fc1f6100652dd00340dca8310302047c435bb500673065023100a9ad768783563f7ca15b8fa7f853d4f8fbf2010bfb72b3d6b24413660e932da45c13e0a13811394cc4924f6ea3113a2e02301aa33be11393c05a47e272f82e1b62e3bcb35fdff2d8eef08767d660eae3571ef364006961a3b07a30f18a40f4a009bf0302047c435bb5006630640230294098c32c13af9a7b614d446aecc2c0ea25984746be34c7e457c990090dc4edbc8e4cbf80ec8f0042d6d5cc55a58fc002306e3a0a25c322dfd6451349d564b5eed0a3c6301cc034d3d9a8d182504f6b552a586be1fda4f3a1d79e64807e86c589640302047c435bb500673065023100ec7325c83b09ebbfdaf4036f11a1c74b1da59560a1f5bcc191b3aa09c68ebb1ab94ae1f4bb3535754293e3188aaa6c7f023075ebff349e51173abe45a019434bdc493eec0635d668dcbe1ab64a99ab69be5aec58ffd1e8436b74126874df5988e7660302047c435bb50067306502305e98f2f44a83178ba7253b410f808dfe1f984861b441ec4d036a562f42866a29ecf584b03b8da46d0cf58508fe247846023100d843e34439cbc6e0ca1a197a82cfb7b81136966b25a64e5c10a5b7f5cb433fd89d0887179c61c1e4b2fee48048abd6f20302047c435bb50067306502301aed3aadbbc365d691fa08c4d60743a860d83d6c2518dfb5d498b3be5bcd8a23ebbb8d629a19e1652e6f6a5bb175ced1023100c23189cf3fa9e400e294bd875339b826787dd359ed73d67046456e3220202d1b1cf0a0e5837ac32940a3a83100c9c2a50302047c435bb50068306602310090e53e4e49201b6d02590110b1545cd61f7b7d79a02bfdb0d08db1604b52e7c13c7158bc13d07d20aec57a0a041fc8f7023100ad54896a2643a1a5cafb19701de9c7b0df3aaad45becf250dd4c2576c33953e188f210a53499a681a689e9f59b2526cc0302047c435bb50066306402306bcbaa631ebc82f14e8dbde854bfb6e75634b97f777df54fc6127de57af9d4258c40c75a838b6793eafb2f90e65bb78102307b1460ae35a3af589dd6fe8afb57c0259f47d3ac4fd11a19cd9378b086658fad3f1fe9e65cd86b40830b89c2880052d20302047c435bb50066306402300821da1038f4f45f17784bd11b14835fc623f0f2c8933f5d99a96c61c8bd6d183727f8f1f8548245d1e95878ef25321a02305379e8e99ebad757cd967997fabdd2d9a7cce919a3508c9beaf55e067fcd54af47788e0da2e1e45536c681afc30d31420302047c435bb500663064023051b7f51ccc3994df2d881caa793d3ec810f22a5f5be3dbc5f8e88ef94cc292d25fe643236893e344d6ad37f4e717519e02302e5cd6f10c444013f4ec15401ddb64a01d2803a015979db4e27710dc50f475f6e21ec1c1c2634f11b1ad96ccd0f76c2b0302047c435bb500683066023100df1b38579b51c61619d72d95189b8d90bebec57fe7d14fb95008eb5eefd53d10df25e3a764c4bc4269a8e2ae8c211321023100f4b09e13493c38e45e0792fe4aee307700525ec4e52b5d872d908ba63b8d85abee290c61f6f1e155463c8a9116e783980302047c435bb5006730650231009178a37198eee7c871fba3cb3baa7fc4f31b13fb601c91f16ce2add3c9c17656d8aa04861802ca5b2f7b445d8bb5332b0230723dbaae68c6753b239c734c8d817e9ada3e067374932e1955e2609cd9417bc9fc0740fdcacb00500bd511ac3d5ea4f70302047c435bb50067306502301ec00df3ed565d1168ccdd4752954c9f0f0acf2936bdfac25acdbac2cc8e7aa445d06ff9d77fa4b717e374767caacb5b0231009e174dfdbce5d3befb702815123faae53ad7c573d2e3065d0406533afdbbe26ea9ef1c245f568cbf5a752810260dc9700302047c435bb500673065023100e28fcce1c422675622059ca2ccbb3d4a7e780df8fdfec5695b1694d6a72eccdc2ba50f49778fbb2c794a802ac0608bd6023044545fdda2ecb0296774d093b6f87ae0c5317697a0d6c8c2897a8d044ff07949433ac076d1d495c0c570d417c0597c200302047c435bb500673065023100f5b6f0ad1f3da6cfa98170f3cd5f0fd183e7fa31c516a2b4d8dac881958c8ec0c6640c431278d428a26bbbd097c7d90602300dae8ab3fe6e4368ac43fa682df22cfa9d83e2b25353036d9f185642039c6c87dba63d428ffac3ef3238ff4106b9c6cf0302047c435bb500683066023100849641d1738458974b65a4123ace4b52cc7ef8618817b1faeed152385c7d92db2a661c3ed8cc88a5be1a651e6cd752c2023100ea985dbcc31b3a85f6c866f36f3cae65656047008ce90c4c0ba5f7dd0b4ca1e369610b89b008509ef9ddad49c7eb86c80302047c435bb50066306402307d8ad8234ee7da0aca50ed656a64e04ee20653ee1a33e73d7a9859a6f44b93d6ce359aef4ffccb54c29206196ec309fa02304ab05dab8e0557143cbafb41cf3fc58a15948119f9f74619772474c809e0ba612962a60a4e793e6b598f3d17900d09040302047c435bb5006730650230345904f53aa76ef3abda20b7d1490a996e16a8ae89805d59546c7e5790375cf3d4aa6f77097a9df1b49af065afd6ca41023100d5e17141d799025b16309f4e7a8f4d9cb44a089b50919c2fde886671a9c7ff841234a1316eed826865ab8b2a031fa8b50302047c435bb50068306602310083b76676234a2a4b50f9980db729582fa0e76ec77f15b2ce93db6f7e5ca1ad6389f71daadbd0ef10302013e34a801e71023100ec752ceccb56ca205decc6f47756409fda782893c1ff70ae8f8c1b96c2d33c457ec4cee8e73b2c448d1dfb8eea4175da0302047c435bb50066306402305a4d5c9a993e700996a828b9a5812a8fb080f34f81de6e99c3168c38c8c213e9d6fe3ed3d19099e2431b7dcd374b1219023053c102e5a29e32c8b6f6577d312c995f9ccad10e8ba37858e494af8f02d9add892e967260e94f6a6eb86e9ee5544d6860302047c435bb500673065023100d5a08f990bf06c5fa96cf95c49b632003839e01af2cc0b7cca9c3d9fa50b702f5a9f8434aa30828af76551adec911c8502305093174a840871ef633399efacfdb180e5d3af87f2bf081c0c3a80dc6b19380e33da8bd6a83632712f7051c9d18a15610302047c435bb5006630640230423834b5c84e1f0f151ce4e9cc2a05afbda1845d283aadd7d953ef424c3cc0ddb2f3f4c9cffbc65fa8b4d6dbdf04b0a90230022bc7a415ed076beff9a506999fbde068b60f31901439c2f9939bf3ac7bdd49cd165ebb405f4db2615669c9938f1c0c0302047c435bb500683066023100ec0e11810e65f01d0b75a0951230d48eb3a508ea8aaccfcbc27c144497cabb9e01817b76dca1e2f3d2082a176465f6f9023100f896b51093d205e0c5639ca62dcebdcf294d4637bb0ab47a81f56653ae37b333802b61f879ac3cd251f2098be7b82db70302047c435bb5006730650231009da3c6b7a5844b195dd4111968939eec1f8696c0129e230ceabfd429dc2ca283aa00e53442ea69f7ec265a7a912e2ee7023040df2dec1c59c1ab7784e9f49490762f7415d6e884ec15b359ed047ad3170bd536310e1b34eedca573bf45ff8372b5400302047c435bb50067306502303d9d1643bdbc58627a4c050d47318c7feaaedac5187f01fe15243ec597843fcbbcb83c8605cc0e279eb01fb0e9a07cbc023100b64c377368307774a7ba5cf6a1ed63b1a7a7289752fb8b446bb1f474c29d2b5a99dc6a84777540f5315a009667560bb30302047c435bb5006630640230083e73205153008429b86a3f5609257439406642e311b4270aa24a9bf14276f90e94fb65d16c5afd2c382899e2151dce0230712bda3445016b013096f17bdfe9db46e517610028665fcd6eb256fc599c33458c1e0f0810045fb39a8102cb6682fc250302047c435bb50066306402306ec99c781bfea93b33597781085133a6b8a37e113f60b065ef25d93b22a1c1b62bd91ba967dd3939f1c4dcb4d4a0111a0230403480eabfa73dff53448028f6f4ef6ec0bcc45e9493463b91c12df0912a1899e4b0bc480f7fdbb558978a254075b7660302047c435bb500673065023100c4977f2779c44d3e7d83c8c808f78a5cf96956d1bb3ff7279d544dd7531c12772c580993d14eeee142e9a12ae9915fd8023042fc21ac383c8a7e9533785234a257f00bd5e31a6fd81c0c5428d2541611ca81d15b4ae86b707878ba4fe8fd876744d00302047c435bb500673065023100c9ee12bd2884e855d971abeb8aa6b436576cb3fbc34dcb5b948f687395d9556f714ca8b372466585dbe3217f6ba5c1fb023068a32b1bdd135d334a21a82c5877a81422a1f3dfe962d363969d6ef09cfa0a8c42c34c7d55b53915e26d3519ff845e390302047c435bb5006830660231008bc1c1d97c5f76320cdd8ca0f0b4c84a183d45f75531d9459b055d397a310dc725442e0b3784988522e3b3622cb931d2023100900b54645ae75d41184b0dfbfe7d69c15c2c667bca3b4f9609068b9fdb6301bd12f843f6ca480c1fb0773061b4f026af0302047c435bb500683066023100f8bc4cff0899fc6ddf74c2e95e46c6d6ed363f3d775c763b762df7d6a3e10fc15d494cb338a772822414261423a3de8f023100da8f24c1b39d2fcefcc4d5fd8fbd210cf687fe2034eb0c5f787f2413065357620cafc81c8cf11cf607720af32aa5f1f30302047c435bb500673065023024faa1bb5ccad66c2f6630e54319048c7910886837655629613db9f1f6852afb65514dc63cc60183133bf9cac0b52a4b023100b4baf73d0e0ca11d9e25c3362cf23847f2bc9507bfba7d838454a7e6741bd679923b69849538e3f8ee3244a971c8579f0302047c435bb500683066023100bdf92548e48096f7d1b538e132125c1de29b97a569153f3c5b211a313ecf6406109bb282b1d2f98e6a7a2ed5f1b1a40a023100dea73fbe45042710c75733cf405f51ed4b7b4707415db7f50d6e90d7ffdd7c74d55e1842c3c983ca2f447562b2d2906b0302047c435bb50066306402302696ccf8992ebb55cfbe6919b0085baf02256c5c5c2481f2660d9249976127c73966e0585b7fc825a58d86ea665bc11902307a3fd6232b971c1b5ea947f112637b869fcf9b685105eef45a244e464f6836981085052525f0b9cfada69d718f204e230302047c435bb50066306402301e61cda09cdb6f8b32c0fc9bed41c7ae2b88af063f9a66301f7fddca5f0c341ad79f9539b9abda47a4a54f4842311ab0023050682c4ba4adc8378f65e3500867a227658d38f1e612cb796742cc1e8709a3efd6c429c25947c5bc1dce81993b49f7680302047c435bb500673065023061d2d1b5a4910c2dd7ae528b06dddd8eed3a4ddb433225388f38cb8e0ff922124c665eae3d0336a305f0d313f5ef768d023100cf690ae145dd840a7e4dfc2d4a11afbf80ab8bb2de26e3ef17127f68fffb81064bc0464642ee46ad3b71db1a9de502ce0302047c435bb50067306502304d643f1998656aff3f98cfd06dadc0fbc8486ffc712dd90dfeb4a4c29451e81cff50479be17a1e12085b9d0c32694247023100ce417082ecb77946de6b53b9070c385caa0aa8d2f6db822a6bc5f4e1152e9f2e08c30a23b96fce99c3b40a1a9a394bec0302047c435bb50067306502301200afeae6808d26eaed10c0bf33ac23153edd1a417d152b7eac338b15a61912ca45c55e74148c9320a4bc3e0bd3037a023100accb75e6e5aae8b105a6075ca02ed83d4eb592542d737b09fb76d0d513d494806d8f0445104fc63f7de0e9d2206e849c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d807e0296129cbffee4b66c00786d4b33758276dab19e0670833310a5daceb98de3aac78807d878fceff4f4529fd4d2c023100fee67f240978e1cf625c30a56fb3172a2b049de74439606015061b3da8f171ab4b92b4161939d6c9dfb612d461991f8a0302047c435bb500683066023100cdb17d2d87c27c1ecda78272dca4a59bc2dee3833f93613e5a945f37675b5e3e1500a4f7200472dbb777afad1b8cd0e90231008aeff9b8a9e81996e367288c1d0383d98996ebe1f673eef5bbdb9c638bf8d698839c0360eece985dcdfe233717feecb60302047c435bb50067306502310081f0c359f5048f864fd730394d9c1b737870f7d726a3844790c7a64b18e3a2c669026099690f24039f6f140eead038d4023015f585ef020e5232a2eb5d13423072f85feaba14e8026e94ac1cd71f14754ba90cf8085f56282c4fd27646ee7fd882650302047c435bb500673065023100e3f5c6eabe657c33c30baa99274782a4d8c659dcb84d804082b4e92980067cb9c714e5825c3fd1d36f18f62b0e4a56af023021fec4301a329efa70073f49a9a44f2bc6718f4d924e920662df31aa1a64d4dda7f37c6ae1c575a696db6ab54e51b6f40302047c435bb500663064023079a8baa9c4a049ec87eca136d439766d767f58ca215aa013bdce78bf91df191cf02bf6719d9f7bd70d3eaf6f62c2145102303c21bf712dd227f4cba3ee21a95674fedd3ce288a417c97e1700301bd918fabd651399b57f4950dbd6e475d2fec5c24a0302047c435bb500673065023100e32ee0d46a50f52eb6002b68f5f101000f53cf33ff066a7e1e41418e3d6c0f87b4979fa82d8a481e1417629b02b54a89023001c52f9e8468a8bba9fdca1087e9d77a88f4d33d5e200ecd762b7d5dbc5ec99563837f0f3da74e73aba14a2347427eb90302047c435bb50067306502302416704b646437f427bfbf96d65c3dae6c71d107f88997de8dd777b630494aeb728e0212fcd31347228d83820d5afffa023100944b50482a2734e2361da14819d4b9ca271720194959957cdfb297a97cae1d74236a000f10d732cad1a15dfae8569fc80302047c435bb500673065023100cb3e351761146804c9dd9e0cf8e31ee6451fa57136e2fe4009d24c5860d41ef87b6e68890eddae350f222db080d6484a0230176d34ced350b5f90501ac25f064d5e812b1003daf83d28257768d2b642b64ac3e13d762752d4e355f3653ce6afd56880302047c435bb500673065023100a0654f7fc9059708abd84fc82163f95ba6fddb5cc069e3b888916489e568defde4bf22f86489de1399d7734cba2372990230242ed4e378a074ff9aafb06e787be423702d9f244306b14fdb4ae2428ffb42b80b881249789ae383b6430dbaf25021540302047c435bb500683066023100a76c1ce0fd3e763c4afbc242dff6369fb4537df48c2375a70e4abb56e6c1663f0d9f3ecb035de89f1f4a6c88abe7cc270231008005200a4122b7ca201a761aef263fbe5e236ce3aa8cee0ef6c57c72b474ec6db20749a69f7d49804349b95279ff4cbe0302047c435bb500663064023079b8dd72faeb7c515c4fc8a0aefab411f06790ce92fc8b7a2e3659416b130d3d23dddc1e246f2fe71229cd9bc0af19cb0230143a86d73295420c75fd7c02acb1a1843b2fd0e0a49a2e03f7ef0be0ac920c8ac42a8aa1ce886eb31a095baf15dd788d0302047c435bb5006730650230102db48cf84d327c06e33c9fbcaca39d243ffdc0d65cb3f9f9d880c2be9a5343c0e46ba127eea80f2f451fbb8d02891f02310084ca6d0fcd20a609289b24ac6d514d9d5064a3ecf11b5ec7ad0efaa32661ed376d6c73f372aace145c10a353359fe4370302047c435bb500683066023100a2e87c372677a1ffb48946924e80eca4efaa880e58937ad95d964b6c2c5716a68a54a799b0d4818b88417269243d37f2023100d5e642e74f97175aa82c9cbb0078a947866f859c0fcf0bef55c35bc6a938da723b64d8cc51b20db45a2361bffd0873040302047c435bb500663064023031ec72f932c02692b47163ef01839360153dc426afac60c4fb46d455749b285e222bd0ab5103346fe3167a3ad6fde055023024a3ecbc789e1e2c2d363120dd96fd6403ea4aba4189656a88c93663bc1c094fd3a43a22d8ecc95430a2f2e0af9c00d30302047c435bb500673065023100e41eb6d71fa5980fa0f444191c13530e9d458d107a3f008506b64fe99a5185fbf0527418f31562d787fc5197e4bb80ec02307d65249f455a38432f0c2e9caa480e7739c6eaf9f3d57461eb6745532adad6f7b8c65276f3b2c4795f0cc2f8cd51e3fe0302047c435bb50066306402304f413e4207052394e08b8d88a652019f1203283b8ad209b2c22f33d3f9d7c8c18a6e50bf98dd19c5389e3fccffcc1b0002302a875d1dac71feb337b1849d3bf1b9f7a82dac0e744e58dcfdb6443d0e0cb667c2cdfa24e64d416d58d0965623ede37d0302047c435bb500683066023100d1dfd8aad31c025beb24d2c8b9223f00c2e38c72030e3253b5b18671121ce5a51e885f52ba89b7a8d52582dbea8f45e0023100b00ab8770ac3eac5942a726c202616511fb5cfd3069b541497ae90df322683b0eaa266d1d2bf89cca9681eb7ebaf33c90302047c435bb500663064023077d9ba5d4386c098b26e044387aed26cfdc7c78aac6eca0a714b1e88ff407292966933eb726c0ad2358411cf43bfac5302300c775b2a744593596a1a76d5d4e3521e81c24b45033e583599638d2e857178fb9b1ca2db7d84e630a3116db413a816180302047c435bb500673065023100f98cc14ce3b8003eeb518206a0e3d8d036614789cbb9074224edb6394249295a38d515c8233b0a6d925186c35b9e6034023035b24edc4cb78f2f9644568a1d96fb80d6e4b748004e28372a11b6fddeb89ebf87d87f0fbc8ea3b7fd4514d213952d580302047c435bb500673065023100cee5bacde68440dd322e1032efb0f12a1e8427524298ff9bf5bf430916ce17dc89f122e56b1ced300d6c60bc7890a4fb023014f1f1cdd0e51ec5b0c407f11aa1f0e85f960b4034dd64d519b13778b89455ca8159cb8107b761a7ca234715a0c84d8a0302047c435bb500653063022f4941c76959e546fee0df252883ee7f03c32b79fad9c3fbed1c173725d7117edd6927268582a93e00cd8aceba0a0f0702302e0ee22d12be0b73e3756a0fff7446b7d83e5e13917b89a9533266faddee86b21f12a2be87c7992cd530afbee45c74ba0302047c435bb500673065023100fd80b1b91c9a507b24efe2a30cc8e47b719ca76acdac2e7c5303e6e195c83843a40e95f552b3e0d4111fead654c38f2102301f6630b12a47d3273af6073b36cce08b7ea0ec72ed7af41c55f1a64564fd2073622d7ea1e8a3d9efcff36444d80e2bdd0302047c435bb500683066023100b7ebcc2fe3436294b9c02fab175b86a483683bc090aa661d5860954c56d9deaa3540b0555f94a460b1c76a1cd013635f023100f1d6fd061dffed5dd111d747d512cc6baeae5966ee22ca24fb0077a7f7cecea73a1394a82a0c65b74cacc665471c4c7c0302047c435bb500673065023100d2fe431278be92de9ca793bbcf7bb365e29c440d3a6bc98e666cd4549331f93c23d32bff7b91c13b1afebcef06f2ccfb02307afee406d5c4226bc24f6f197b6a8d181d8e79276d33f604160905627d6291da88ec916652d402b482bfd4ab569a3fa60302047c435bb500673065023100ca1c9f775d8a5a569b0e503c57172ea637d90eba54984365b645ef003e31d5e6e69da44a65ee7f6298659b89149fd967023078046ab8511514d00cf951b8791abac6b60346dc7356d469449bcd993a72242e5e2bc76f041ac5a62ff8b09c5498f0850302047c435bb50067306502306b9fbe00099b5b543708234c513cd5b246a11757f82428f229dc6384fa6b9db67cde9f5e939aa92431081080e5fe7d13023100faa33884161f7b7d5c5441d42462409efdc09cc8fc6055e62819775c58becd84fbd529a5e9f33c73acdca8c991db90a30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230312bdc1333a8e02ef61f0da83d9e376850cc201e5dd15995219be0a8b240f219d47834d17ee60215cbfcd08b57bbacda02300ea2a65eee174fc7bec996047776370595a0f91b6a71ac19c88dcc3ec2d850585f4591d86ec1ea9dbaa9f5638c784d050302047c435bb50067306502302a83f52b0f830c13ea919dbe29375da32e5291400d42a3f0e4291c78166e54b6c910444e2be5604d6ef22c61dedd612b023100b2901de5324beebd64563f19bc7fb40c508719b0139142f998d017c67c6281b928fd0b23f65c84a27f75f15d7849f11e0302047c435bb500673065023033700596df460152400f075016c7fec817aaba37bc46073f78c25491e17bedf47d38dcb3267d9777901ef20ce04c4770023100b42debb0ae64603740c00fb630ced1d7f73e1523452989f6b0eceaaf3ff62232be0d88c0939cb8367773cbf64b57a9530302047c435bb500673065023100a74176aeb94c0fe0b075359df4b96667965aba1cda0a42ab1531a4950f11ba32257997df870b9d2479080ec93f3ee1fe02305dae2c2d014cd47645ad7610a1e1f2dce9d3c367b46f70016290604f35df58a53a0a75752f0d79e257fcb0735b61da7f0302047c435bb500683066023100b2f3cd78e5f21e04f6193f94b8d31f98cc5441a30576c6d8f43c1faa961b7a09ee83815570764c8007d58611cc015b17023100d5732c649593b5d8b8efe570a43ceeebcc53f5f48ded4787ad289fd10714c5da9659027967b075a9f4dffabdd01b24150302047c435bb500683066023100c24487767365b1f3dbbb01e309f9b12fce8f6b3772d5530d5fbb66cf24ee37ad0b68110fca8243d0c433a80295e397e8023100acfad73889c5201e907e7a193cbd8dbb6a21011e9c1215fba6bf6169800cd450026a612e6cb8b03915c975a5b92082e80302047c435bb500663064023053b1227e9fad6fdc08db45d8d8bf03840573a0d4946d4f2cef8ced87ae1a6351b9c828c9e022585703db0a073fa029cb0230131121ed740a32620d3557364e3a279b6e4ada32f66af3e6b14a1e389b3dc89a7b0c5871972c1f66d2ccbaba910e71e80302047c435bb50067306502307f8db22037191e6b90dacc55fdae8307ce39323bdcebc3c37e778b38a12ba0e890b9f8fdc1595f8d05670844b166d1cf023100d353dee15c1e57a46e86cdf746d7fb537873ad667475c092c04d1a9e03a06afb27d323093be26bf521cc78dc4f94c5d10302047c435bb500683066023100e6a56098901fefa800a6585fed536a8c1bec99dea79024c2d9beb7e49d8012ef63b63fadb3f56d3b69da863e2ab06f1b023100f4690c174105fbbd4776872b29c1268e2cf246f902bae295f38e84486083d4fa167a8c258bff3bc4984032ac3875e8250302047c435bb500673065023100f2888b0d6a86cbc15262fa2625833378ba2e9a09786ba764fb162ac71a6d5a1a7735c00f6d8a0359d31ae10dac542e4b02305e0b22530888ff07f24b381baf5df42169e56f80649fca91df3e5601f884d35d71f3d5b68fc336f372e02a0dde974a2e0302047c435bb5006730650231008441bdd8d79bdccbc17fde7aa458a9ca94ecf5d0757dedfcbbdd652265bcd79e0ba6e609a8eea80563f84d1026d4bec00230158dada03f5e55a241520c8d48fc6128fe63969dce217243ff933b5b27f0844958ec28c085398fa43c9de756a42882c50302047c435bb50066306402301342059365592933ade33336f27caef18d521e346bf5c10cdca9e329b0979990772f772e36a6740f4ff6378b3bf08bc702307d1c80c1c07a1fa415f75eae1499ed68300a2f7860751b3b57c8a84bbd775aed1896968c0e29538cae182aa5edea371d0302047c435bb500673065023100d95d75484ee83f8785e95627cf45323dbc14fce3dfc91d03f904a0eb6991e3ac9d682b7caf95d66d6a0fa0543246261b02303d5231abdea7692171a77e3b3223e246bbc3ae1ad82fabbc900cf58251912173dd7cc410187eba603f9857f39694af130302047c435bb500673065023079b187be4334d10a713e82f328983dd674b1f28d3fd767a59b09fe19a21803c6a0d4c31b645583ed9d04a4e9cb325120023100de258642fa4992a9bac7ecde64650043126e371f769e618b3e78a05bf14f12fd85160c4342bebfe18b3f48a0f0194b270302047c435bb500683066023100ed104afcecfd65f5d6e7de309054d5114ce94255a4a889df5c04fc7fccb11584d0b4580841ea7417ef7033ba09bfd237023100a06d6aa938816bb9dbe4577ebdf7e8e40f9f178ac11c15965f39929dd1698ef38f03fb5d1e68b9e577829f606bef20c30302047c435bb500673065023100a9f08466b35e2420a34c3e764e040913e32099dcd5ed0fc22b84ce70210a4755fd4025b375dd45c7c0eb771666e52b6702307bc61ef3f22b9641549b2405d37e34fd589e74a2cb029532204b4c9f7a9251789c4a15030234078f178288bb37e46f1d0302047c435bb500683066023100b7d407bb6798f1eb3a6b48359e406f7d69eb36a8bb31937e0d49ec0e11f878022406fc270973a3b681a0c7a00e5fd002023100d57b17dd14653881c6adc5ae093506c9f17f960d74e1be1214b010768d9d3e6d0632428974b49d57c1690cd4aff5f4ea0302047c435bb500673065023100abfaeada50e8bac7edb970c4172ec1fca2abf4dc1eef870ebb56a903d73674e2af0a943e89ca46a97bdf9686a05ec56d023066e071cb7130831ea71939dbb00b8e0f582cb48803c4791a8c820bf42ed45bad414d2c9ee492553a97c8269d3342de3a0302047c435bb500663064023017a89fe6e48753c2ab5b247b3b831704f73045b50386933402b00e5afcd6ea89a2181e90ecd6b21cd562270d19d0a93102303786a77d62a7d14c77f4b8f53428bfa01bd233219144043ff3b82c9da96ff3f41959cb66019cf105f4ede87c4e0e3bd70302047c435bb500673065023100aa63b503767c3292b66e5b7262c4f253bc516a45f8d0d68ffd1cbee13cc69f7e57945fa2f0ab59cfe28267175bb146f202304d2f9bf5acbd1066f0da71e17dbf489fd41504b5af62faa86831558b4aa3c84fd992d54713242ff4eeab4fcb42c7243a0302047c435bb50067306502303e2c3fcdb9866dbbe9f3e43bd88ec160085bef203e4cf330f9608405ed679b3c8a05535227a3fd6c8b0a4e280c93391d023100f639d105f5c5451f5531499260ac0c80c0340e08b212e0a2df90f86e076ee0b9683e7e534e09ae354d5cd232a74340250302047c435bb500683066023100f4da64a2ad9df7fae4f4f6f4d2842705e07ea81a0bf19d30b10cd6116474711446d4fe621f39212708ca707c84ef89c0023100d6160e557fda94e8d5ac7ad6df3e9f358cd01ff83841e4037af9ea273c7d7e86140fd2fc09d5d14d94a6e0c8a99fb4fd0302047c435bb5006730650230369b19f8bfdd4fd9359b17f1805c065a851ccb286b6baf9f10a370d83be89d0ca46f88e83b0db4c191db999ecdf7d3180231008a144d79d40693a1fea3d35e548e0c03d3cff777692978f403f79175197869787edd3dc6fb745d36f81a2c94620950da0302047c435bb500683066023100e9a2bc38b0a2b2bdcd7bfc65ba3a6eff71e432aeb1ee1862ee59e480703b3f697c351d1ceeea6c1d4cb05a1ce4061aff023100eedc90d33ed5b79a0582d7bfb772ed2dc6b071bd07af8a98f92617a7742bdaaef05e185a2db8d0f0735d1f3fcc1f5e930302047c435bb50066306402300681d1e914cea5cbf8208ac68fafa7b893cdc0bcc8136903b756b8c2ada275c5e2f1608f64ed463f63836afd71870670023041c9f9f521607d50edbd12f4abc1ab017d902ba368b82a98453dc8d0ef4ccd3684df2ba727b2b3797d0ebe370172cff40302047c435bb500673065023100d80a874d5a77062cfee0ae65d20aa9a3363d0eaaa1c700cd3a9e46bc4aefe17f3f140aad11a6c8c6ea9c6c50aa398068023005e262f9a762985fa48837d1685ad1a07b654fa2cf45e73285898bb77f864b2adf9630f981a92d6a219b3b48e543e5f50302047c435bb50067306502303adbc2f608505b16947b25ebfa1caae5b657281236fe110b5334a472a1f096c6d322ffcfdbcdafca57d83166341aa7ea02310083352a64ca5ebdc65098635f0d929e8f6cbd58da527c138d0c2fc831410baa64e6e1052fb95e34b3d3d2fb3d68ea1b980302047c435bb500683066023100babded21c09dabf0b7ff40571e7160182e1a666d86a0c7cb0c1dbacd73b71214359d72f2f96bc59059df8b97a954f2e8023100a968b7d52ee8d2f552e0dbb44cdf0a0ad95b9e584bac70f6a1598699d62d1666f9c41517bf3ca3b89c8adc8f816a9e760302047c435bb500673065023076f1ef371076e1dd3d85e4b5e213034b861232a6ace317afe391ba37a67d4cc2328d071abf1124ff5204a4b80e4d5427023100cd39ca1d308033e3db856f8eca8a49f7342a3cd92ca608cf6218a6c30cce84f434bf41ebc3b23ef853cfb8ec8754d56c0302047c435bb500673065023100bb82c920584c5026cac2e8921cad5a00caa79e2c89a3cb6f1c157da5ee74664380b593cf9f1b874143403fbc5b8304d20230595d5aee127f91102b5b683fc12a1f0611115788d550805b9e584e0144b64d87df8e3f5a7c1f507ddeca901cfae5bafa0302047c435bb5006630640230210295dc6bccf68073bdb9e8e5b3daa75f7482d7f680800b42a4850445583bb1f8cf8d25a88905cf17131a487bffdb360230259be37620cca336f7b4e899a65c6fce08008d3c74f2d14f58a7553cc418d0c17439ae787aed197302f13296b557dff50302047c435bb500683066023100d61f88e9fe83b2a16b894e03848cf87df7266ac74389b1714caf7386009cb88fde58cb7d4d5f6e1b6e54fc0846a94862023100d589ea038d1b921e35e88c661f4f3640d63636e7fe492d625f244960ad17d1ddad6a692b9cf69110f9e6e096d0fdafe70302047c435bb500673065023100c2319e152ace6fc493e9d2d2c6b62ffcc5b366ca3fe994068df38d5cb86fe7501117c71e8957420158da671ef60fa0b602307979ae2c3db63c81397859aaa79e82035a4909692848dd8d86f2eda9cb5445160cc15a51ad286f80c78ad59555f449450302047c435bb50067306502302b41e6c095994da8858604e6103adc728664fe8518ff13c8e32d862b085db7e6532405801e4099a3ed51d0e28a161007023100e1670c28819d728f1d95c807f58288bd497af346847e49c08d79a305c3aac29afcce9c4087b1bb11bacb2176835db3970302047c435bb5006830660231008b1982656faa59516cee0fd04654a33eb3c6889aaf62f79b8cfe02acb274eabf63c0d934604df33841aed155e245b61b023100bee46884802f3dfa08c249cab76c43340a7d3b989a0411b815b0297c15181e470b06a41d320373bb86045d3ca246c51c0302047c435bb50066306402305af0a0fcb17b5b7e862c72fd3bed9836d5203f0090f21e7a8dc604c5ee5ae424729acfaba0afa2e8662313fac09c8895023001184307e11fbf33a6b64ebfd232f4f83007029937782019aa37f29d6a46954d7e0be48c85e747d891a66c91112a3e9d0302047c435bb50067306502303200661146c364d6a60a3d14be3a203a3e0d0f890ed0991cab901f798b3e10124e5cc26af74c7c5305d20480dcd2b94f023100e050d260f06f650d036afd0ba70f62be71e6d1fb6407164517291a167ba24e2b46f78c36e574feff4af7a18a9942b2000302047c435bb5006630640230288873bbcec343c129e716a71457bbf6b725749d495092568c610c9dd3747896b9aed881c63eac74c57633a222109cc4023018f9ca2e328a96f05b7d1ebfcd9b23dede1d004f5e6a182b4aa6b21e3bf99a95e58b7632d14aab170b1d456168762afe0302047c435bb50068306602310090348d08c3605837abe939b147bd44fa22cd74f47da2125f08af12534d1cc6bc28f565ab4f2502dc1c2db42e39bd3dd002310084db2d0ba8b55326fbb1a6827b97d214100ae02f1c41c6ddf6cc6c78fee0714575a9e8ed0410fc0074019c65c36a64ca0302047c435bb500673065023100866475c967ed91ec0d8f2167476724cf2ba42e8af11a41e155fee0bc90486ea403e0f8f9f8a3024cb4ff8220d249dae402306b5fd0be3bcab01d6076ef2fa85f15970bb449c59eaa64dd5aea4db7ac2cf60fdf443a03d18f69a8117d4c7715343d000302047c435bb50066306402301efaf532ae21bc9e2aea3319bcb79c238628e87d877c3dc5afe3ac9c66b2a537055fc7326d6962d1b6c387601a97b1cb02303d33b76620e19bde9e11d0ddccd64563041ebc8b5105f8c5e2dd3b92118303e5ae189f428c626ef28da50183ce21c35b0302047c435bb500673065023100bcf5030972753c48e9fef017a2435909ac0768440caccd2f90209a5dfca4984dd6091045c5c53b39dfd41ebbf387716402305be4111a9b21c2f216e6384e4edc7c9436d8445bfc0c94876d85fb61108c991ac8995a2ad7dad5df2a54231ffff367890302047c435bb500673065023100be116b4331eed0850e44924e61b967cdb2701a24ad6ff12d540c72ca92a2426607b398b318ae1c48ae49a492adfe61e60230715d43401ea6f67c5cea868827acc9fbecef79571d17bd84934460deff70b5c2decd5f6091b66fff7bd004522057acf60302047c435bb500673065023100c7a39ee2f63de80785481599c599d6431f9391ff06a57161118423bb34bf0a53b96463cb08bf52c8133e8a5e2fafc41102300122954e46a34ff56524036eb8e731c91f2853de19c90bad62ea8ca5d7055e22ccb6164b206d0c6d5d33499f21c80c740302047c435bb500673065023100ae9ee1aad0c6caa572741bea6e27e1dc6a630515f0e33d27c5a9263322a914950cc4f08c85555993d2af12afd3eaa15402304de2f3b3f7129f58b32056b85ce7a5dd621058b483c49f698b0db4a7af4727600e88198bdbf2e6da6de83c7ec607c5c00302047c435bb500683066023100ca4e6b4207fa881ac54450fa67c5e85fd32c91a6f3e3800f602ad287ca18190739c2cf99c2f8510a96125d8a3419ac3d023100ea93ec3b906fe168e16108641c8cfa3f2f200572ebf5d0be1fc532e0d5fa305c9aa943e70bcb6ffea8715307e13490030302047c435bb500673065023100f33bb4a8535edd48b270fee2307d8ee8500ce457033d457895b9bb77f8ade6b98e7fd1ed0f8e7b0fc44311af44be9e6c02307df9295289bb1b8cc56687d9ba43ab9c4517950789e24bdaf8b33cdc471799636ae4870aff3e8f446c7fe2013312b80f0302047c435bb500663064023041b9eb97ee083669d00e29d1c35c24e373b2676a8fcd05ac8ec80ad196b8720d41f5b4d8378209575905c13d28769ab50230637b4b09a1995f832941a111228204e55a4daf41434deb4e5a8379a5ae25242cc9526203607aaaf47d4637dffdf17c5f0302047c435bb500673065023100e18fb3c5de013c26a8906bf41177aa5f65e58ac18b6c9f58e1a0b8a1ac37e646578fac0f35d5131ab254c2686bc3e2e60230070bddf1919d9954d316dfe2338ebc6c6e72fff412ebb6e67355bdc330f1fb3ab9f143d59be9bd2365381ffa2e0da7130302047c435bb50066306402303f97a4a34e12f91f8e1a0d84279d4e9cc4a44267a6c6281e6b7e365c3802e5750a4763ac9e036bf9e9f5734e13eee3b002305fb4fa948bebdb9e1453ef53342125fcb939e54a51a1a14fe4579252875543e492ea2a69402aeaa9bdc0eb3f81b3818e0302047c435bb500673065023065e58f63196a5378927e2101ffd76f8e18f2739f5da319334efe37d8516c9d5d57a3ac80fc3e8aad3f8d648c3c29b646023100a51e64ce39f33a7db9d76b87ea7e46b188958203f94bf5ab0162d8394463846a1464fcb31d25b54c0377415027d2b5000302047c435bb5006830660231009eec253f438b4415d10aad4195572c200fa03620be206c72cbe713b783a060b8dee947207a906266ffe181193e23467c023100ed8d87f4c86508f2a40d62b30e0bb567260cecc50ac0bf7357b3beffc3f7b4d5e1f83655a39507ebcec94235590831470302047c435bb5006730650230619e5012dea9597af7f051dd7430a47a0f36ffa27e8ec25e06d70adcb096734bbd63e7b8a7d9b1cf137767c019568e57023100924c443ff929c1348aca4d6e747d79e0f48dbcafb17015ae6d826ca8bf4c2cd9605cb49548b6cde01a0ed59ffdcd5ef60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303cc10207cb216d115ff05693d57893d2369196c7211df75a27ddbedff3f457e8c5e33e07b0aaa602e09aecf51963142602305a1b7b0d4ec8d3e5d613b9bb47e7789f8143a016bca732f0985169d5955652e5f33adc6b1c289505091e58a69ec996b80302047c435bb50066306402303869986188dbe54c84cd51df4d2ddad1a3d9eb5cd9ca3e2033e50abe0054976f90baca050f80b69db63e82dc5d04dafb02306b3403343797ce65295c52fef5d107f4d1584c491f6a0b243ac3317d5da54dd205d957d9d584895611d065eddd81190b0302047c435bb500683066023100f6d4277c43ca05192f024ec0f769ece83d613bec5248efe1f902c8d32b35cd3c8dab78f7d1a711f8113067f907ee8136023100c1396ee7f0ea2e72a63d79c13f94457449c76b53d2f47cd26c1de96fc4c7aa8ae161afda7001fe17bffb26aebd21dd1b0302047c435bb500673065023003aaae51ea69ede7991d963dd519f1cb5c2c5066c30952045b6b9ab13ec910e220a1186eeec0efae625ceb249cb93320023100e2aa5d20e6d914bf3ccb51bac7f5c6152d596e7c28ee129f2b680afcabcf30014b8b5de55e43b980329a0d1f5fd81f0e0302047c435bb500683066023100fa775b3f8049bf656fe4757fcb263684cd6ed8131dcb1df70891d4c2e980c80d0ee9b73a59837c6df1d6fe01cc98b37e023100f567341064e6eaa777da091623ba742548baf38c699f545e7fb99b59d842c89608c408d397b146a3255db89045beca3e0302047c435bb50067306502310094a71a68fc1860f9cf699971181f943f26815d2532794aa78f3f3c6305dc0a4b83b0708da59ef2dad0b5a52e7f0b4439023041acebbcc8333c04802ca44422f8d0740537743050f74e7d51355a4547b167849d264ae42b483d96473fb7f52fbd670c0302047c435bb50066306402304abfc54608f05157b7f166b174939fa838854823b0c96ebb2064c7ceb1bdeba2671504f427431874b8c1291307c76688023055364ab1a9ecd4877da12549b43826829eeb7246c73e29eb14f1e9a2e4ab63a6c99a7db4de3feed7cbf9c6e1a6e4242e0302047c435bb500663064023030327c536e2ced0b02ab507a8f02556461a4920cfc91d254e1b2795c78d482099e3ce9c799d7b86812e24af6c491eab2023057e976d272af34948aba566e13126a6eb5f525520db0dea55eb0cf9f969a8e7d546489ea3401754cddb9feb4950f0ecc0302047c435bb500673065023010e054645e8fdfbad280de4cd6d6cc4fb0d71447b43fead7f91f8aa294b1d3b04132553c487bfc6033099c096fbfb0a2023100ac63a751ba60430f15fc742a78c03a897a4ac424b26f28cebcff8514c4c9f6cbf9873bf7f7504b3e49f95e9fd21815b70302047c435bb500673065023100d4a73ae31fda56926b892ba982f5957f12c3694a9d0e43ccafd37b8355838c7ee77f7e90f69dd13eb075c31ec9ce06f90230186c7328bc8778effb8f1626e412b9a6daed43793d0cbdbe92d1bd2ac1aeb40623fc2fe462a92e7a512c7373a72ab5bb0302047c435bb5006730650230515286de05e829aaf38b332fb48ec51f8d718efd69731a05dc3109f57a876cdc21a6d8d3d2ed314ab4dc8c5a61c7f6c202310099f96adc751924f2e21a0cf1a4c4f8c9211b5e3a515a023dbe3857384d6d6888055b0f0d970f74be118423d844e8c16a0302047c435bb5006830660231008f04b27220d27c4b4dfe73447c12d6a594db478dd122488a914a3322ac2932a157700241ea0fa884974e020b3dabc23702310088dfa5c525c7e0f6c876e20ec9ee9f87db99cf5886f22c13d6839f227f8d1d7ed8f3400e9af934901ef00028186072940302047c435bb5006630640230419904e04c6e641c75ae6a711ca923c638c7f6172b58e4d433032dc8946a726789e0bb64519f4e49363a6626997ca0160230413c75e78747fb250d70a12cd7550d726b64804b6836c274170768c69d95b7cc66ce4593e4910f8a02cdda6449455dbb0302047c435bb500683066023100b59e6c0c6a33f80c6ab344e42725dda30feb1038fe048521fe32bc270e37e1a9363df185dfe7d907f739e57a660c5834023100cc7ae9531491aa1b3e02fa6c29c4c754b7291b13e6f7a424b9efeb80065085408cb3cab92454ea2440a9f4be94e8b8da0302047c435bb500673065023100836f2922e4cd787e128710dc0bc1949cdc69430de0c53af370d239ccbb2e02ed6ac102364f92519a1b9b4d1d503940ef0230288f61dc03a5ed9132335b26afc1663789b3744b39b9c61d95b6a990d169118814c5e25d73c8c00f957ec605ea7471b20302047c435bb50067306502307620f5983a773ca7d5e79dbfd022d0a74fe33d6842ea5ac670cea92b589c5c2de65575d5f492a9595bfcd35490e15e1d023100b0e39827d49d3de626d850c1c9defe647beb9e520502893db0bf1a6d877e5dac8397014e09209137cbd6d211a9853d340302047c435bb500683066023100890b14dabd22f88c1933159d59d0ddddf81854ae2e640d6257a63f90f162900b7ef9e79e45b70ff96af004f932e79f7702310099ec534a2e8e6a8b61126f1bb034386c5eeba2f9036d88b98ebaff816f9c8650f28ee1b6389566ba94fe5484b5e2bfe40302047c435bb500663064023010e412b429808a6f299fcd23f1d9e2ac4d5bb14a6e1f9c679a10a58934fc75309f7b7df1ef586beea4e97ccb53752afa023019eba3f04d09d32a15eb055686835367811d0ea759d10e2a1cacf8c0d74244ca55c6e83cb58a05654a3e61e5aa8813140302047c435bb50067306502304f3eae1d75fed68310b6fe5a77c69b41eca4f3e7c8b9067e6972446d2930a224236c331bb12d57d8b83f559e0af65f46023100bcffbc45f70fff4bf3520b30eb12517364cff20e1c98373bab317c53ac7829da52434d800fbdaf4e30397959c0d9bd510302047c435bb500673065023100ad04b24a0cddc3e08e273fc37935e3aab3e73fe1dd5888cd8953c6649c6720e7fd1c7848824a8b2197d37e4db0162bc702304e8b97a01b2ef8e36eeebb2eae4ac5fb6a3f60a6206c21ad1a961976d6bfa0a6fe6d6c7bc4cbb1cfc5d13ae23d4c94b60302047c435bb500673065023100c1168ed4376e794f677990b2ecfd80d4dcce5e8a4f1add26492d66fa72e48a3eb8b2a9a1e2e534bd219a1641ae5a3e0d023018f6c51e63d4f66947be9660206b298625711d93ea70994a5a2fe4ea99c2978a84c361fc43215bbfd4da8f52029ca1c20302047c435bb500683066023100c3540f285831185b7020e94a1211c352ce367646405a24c7f261cf753565a99ffd1069e34591ceb72978727540508f4a023100b97dd3b2038f5851b9c25674e9363696b2aa1e5b2309555149c7eed6de8fd47b17e897550d58142a571f443f5814cf790302047c435bb500673065023000f67d97de60fa9c4832408ba5c5e1aa0daaf1c2b674388fac7aa70b013f01528b8ca3c7cbd56f57d481244f484b0aff023100ae0305edf0ea63af29aaaf86ed8240c8803b0abec1c37625108c7ad3277af999b2ca915ba356ee6cc56a7f659e5ce4fd0302047c435bb500683066023100b468cd8768d5fd05ba2175be4a093b9133a98122a0a168430e6d244881afd27c68b5bebbe782a19cba4cfd6b98cb7310023100a3ce0205c858cc9520ee6b38e422d3dfc76936e43d422dc0258e40089416bfa1c05ff598f3965c49fabb694455445a780302047c435bb50067306502304f17ff8d3b5dca545c32c3298d336dc6fdc13a5313842eae57e068830b10d7b0505898fb2bff860dd8777cd871849071023100a996b0f260258c1983f06897f244989a7b464b39b9fe94144d475c8e07e472087b8e07e2ed52205759a034a519fb7d550302047c435bb500673065023058febd990b6f901386e905526879a6945e3b3c741fe73754a004503f8d4953ff4ec3575c5b851a67291922c2610cfcfb023100f3f3be2a0854a0d3d1904fb6268dbf20305d328ea00a3aec4a9750013de75dcc761d6372ca1c5c42d7e99e13363810cd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ffc2f620917647b0f34f11b2ad9540905f90d1a1fa650b29824024574584d431370f060901b82dbee1064c433266ccb2023100b8116bb9b4adc5e6037038dee6bacf325114d473ba7407de30359ddacf03cb524fa427ea50cff56655f895a75594f8410302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230554e7e9295a5a4c8cca0f01d88cd2bc7a5a856f109bba41fe1102e1d6d3f907db24c1d10098d5bc95694a1e45b488f0d023100bab8172d5bdf29628c89768db977cb62e0df5470b8f8c950d28884348a00bbedd89b46fd682d9d6c985d87ed987295730302047c435bb50066306402305046765bd12d5d640aa3f339d4292db761d3d462d823c48aee48b216e1c2ce7f779a52c618cdbf583666d90b6d48b6560230380a76535ffe18551c29d981af2e99dcd63f3aef10255c1318ef2f0e6d0d737eab807237e0be96f94fbb07ea37f2fff30302047c435bb50066306402302534bb428b4e912872908d627a1e44898e6821f1911962a90a9fbc17641edd441e5ded8c5960e5b67f0630fe56a21a2f02307bee942f3d3808620d088f14ee4d731430cfc2e241788af862cc2623e3031c645a0af2ffa87c5bb1e263d51dfc449de20302047c435bb5006830660231008e9a36bf6d446c00360f1cc219e526d1615fc82052c5a148a9acd0e4b5d799a96c0fe1af246431b7bb6b334a9dafbba4023100e6d748e9f458bb1f8da5a6c9fee6b4f7bb0a1b9a934917dc0511e168f656e2c257e3496f3d8694d276102a63922d7f6e0302047c435bb50066306402305429a134066e326d0248f5ee4c9defdf5af6c912fe26894c941fa8005a252e81c61719efef2911708b729b8a4340f9f40230298ddc0976c92f96745c6fed8a171bb620da948823eaaeca88c7e01aedc3024bc5b380d0a39af4ff4d35adddbfc737480302047c435bb5006630640230502b4d6454caf1f529d7af354b5841f34a93ed0676ca685b982051f6e9cb7de4bb721e43503c90008d647d7b4c5b9d500230285669be6f8373598f2887fccb4de59867e6bd7886ae63d35a7445d82385f496bb4ff77beae9b1050adff095195088d90302047c435bb50066306402306c4b8c304d234345cc2eb3b804188f5723c9626e87f818f9ff9448d10da2309eb90ad5a113b898e08c857f42a236986202302c9b1eb19cde9d6030cdc178f66db19bd21869c6b9a2e4678bbc0f8871408c8a7916911c6a189c99380788ed15bc1bbf0302047c435bb500673065023100a125ea96579d23c00eb39dd9c06d61ba51f24afa0d4b1814af3ab5e9225d61477ae52ac36b5680905aeb57faee163516023010e40c4eadab13658cff9bc12e0f55cf333f948668f59b0925afe7c052110410d22d63a6a1151b16808ab7dba2cb38290302047c435bb500673065023100a4521d9db8f6cc393dfaa1e79020a5e19e1b832615bb921e4007eedb6c62ce2568294b13524946efe42d7a05ef949f6202300ac03d4a5823d22095465dc7337bd029a168cbd4be391ab117abca685eefae23951725e991785195e25a512bf62e99850302047c435bb500673065023100dd549a8e4020c07b0a309a009c3ae98b0507f3003f2789839973165fa44b9ace59bcbaf9cb301be88f6d4fc13f55f3a8023062e4ab3f6b1c6afabf502dfd4dea8a802c2617016a89a73ebefdd6e83ee638a50404fc3f6597ea3b2a74501a6e73bf780302047c435bb5006730650230167b3c0055b52e92221907f34a3bf42e570daeb912bbca9a3e7791b60337b68d3674d87f3784a7a5229012df646ee3aa023100c07db4ab6eb34136ee22bd30b96675cb368a318ef473ab5fe315e64fe3ff0d5e95f3fdb71935f38663e216bfed45617c0302047c435bb50067306502306e7dfefdd624f5762e4198bb504f9b0c2a1b8bd847eeb664a56e3510d9b38443c21c9bbf7725819bd207cdb68bbc9fbe023100aca3de0374d87fc6eafbe7ccc74940b33dad355ccabb7231bf9c208ba66dcf7ccfd95ada7970182d9fb1458bf44c95260302047c435bb500683066023100ef577324fe9688afb6fea77cc828917b851d13551227159e84fc29a92733fc34f4628f908cc5d1fe772813f89efe53e7023100bcac63f2ed117b88c0caaed71ec38a5517d7ccfc271d03a4a8f00a30a20a68e21286ee2531e3ff5a7a33e9d18ab4099a0302047c435bb500673065023100d45d539a7ee3d4bcb6f7ad8824daaab94512a0e586c38f62ebf0f5a3cd52bce1a7e86645c86f486aa3f91aef0f7f6eef023029388b681b2ddb37265613476babaea4ff25b6acfe699d63e16711b6ccbb22279e6c6d6201c087864ed2eefda58339340302047c435bb500663064023061d17fa81b97ee12ec310437bebe6a37846f178490889d4754740ef9fe7a816184b3ddd1cba29aa8d594e60228587b4e02302700d383b919ab2b90541728d7245af852c841b4f91af8fa89ff9b76455d4e10ce57edf1ae1ab9a576493fb414c7314d0302047c435bb50068306602310095018d667457a52f95f2d8c6d2b4db0c7c43eeee6bceadff020027d0f20a08497dc751da9e4bb255211c781756d608bb023100832d279d29710a27b1ea92bc09dff82217601e369d71556646d330e63d1ab690caf4d42c0a298c1a4c34a779476f7c820302047c435bb50067306502300430e2bdf3e1b57f7705487c1cd8d15037e1bf00ae31d5fe8a4559b6008b7ad814fcecde03f21479df73ce8ee4da70990231008e3535c1513be909863ca28a9e96162a62a2b9439a46d05f65e0993b8466bf5bbd97d31f601ab88350e55279d9dab0aa0302047c435bb5006830660231009a952c6d85aab980b38853df0cf65aaf6e766f9ffadd48f1f3390235fb50382d0bcbf7594779a6b164cc8fca20fdc5a3023100adbd6f91867fee91b0c7600299b97a0cf811a30fa512d546bcc12842356714cc537e5f07fdfbf0fe400d9e19c365ed300302047c435bb500683066023100ac2dc0f2780dcfcadb58cf3168a1d0b5d63401e8283d0bd2a68b552fb81c412957990b6245570842688c614c449edf86023100f514f2b0e379c76e76e561ac2128cee6618320ec161aec7a5aa003d7e1f8b32d4414be390823dcd8df524160241f2ce30302047c435bb500673065023100ebf8433aa539d2805325888cefbf3e81a31e9aaa21a0a28cdc54ca212952aff487290b98c90f4045f01e7db81251534e0230527400dd438ffbb0426346dbf8d39f446eb122bc2bb3bd31756729a1d42a5a6b25426cdbc9b019c6f26b1fe0f9e8ae7a0302047c435bb500673065023100e20cb1951c9a7a64eb0473253280e07045b3af577bbf33c9a963f5c7870a430c7780bcaef3fa244064d13c694226faad02303fd6148fa2a6279c3dddd84b7b0458771ddf3dd5d6b5452b34cfd01d52ccf394df2021c2f5f0abbbbb45de9974e81dd30302047c435bb500683066023100ea00badc9180311cf0c6206336dc3b4c64a1503113c15dce39409b85ec149f0612f8d4a56d5fd8a34252288cf98bcaff023100ba432c22e424191c65617cd3be083869ade9e39a329832d359b257c4b67c68a959eb0a66ba6fba74b357fd20225b0c9f0302047c435bb500673065023008d9c763532c15ede456734f48619f96e6fbaa7fddd4870364ec737ddd065d3eeadd657d25f20fedc147d17840ea2d3b023100cba6e7d0d749397f1b6e58afdbd233f8f995be219acd79d2948aa1cc140441cd8c9137fdca4fa4863739eadba6c13ae70302047c435bb500673065023100d240bf4e114fcd8dcf0ff8ec77a4d74725dea3a3c2cf919d417e6770f856cfce1ae1cb3400ca673341ae49d1f9431067023031fd73f7b3b49af9f23ad7d5eaa4d50c5116c34eb8dff04a59ad506430ae46e085742acc72f84fcd74717ed15d738e340302047c435bb500683066023100a569a18fad0b670408ebbde1f2da21773e6be25bec813072ea9a4c62dc4038df15468b0c9de7e525c43579f8aab380e6023100de98a0801afe51ae2d238d0c0aeb110263f405f5e33b0701dc677d814f7f107cd6db3900d26ee7f5268926d83eaf1c090302047c435bb50066306402301606745f04af5ddcc40f2e8e24292702b66a68172ccc8492639d49242c2eeba6d443724e5313ff9b0b3f591592dd299f02305e3a32d766a59a6432afd4714d2dd1411567e7afcc26567b9d722668e261ca880fd4b98818d907563330f20e0e0f66f80302047c435bb50068306602310097b261469210025a7dac499b366def902c440430b646aa621d0ae15507b005787324a0caf621a5ac2e51bf6baf1af8ed023100b37c0e02999d05be8b8d97b46a401ea416ced792c2bc608a2afd69aade9b16fdb20912f6bd6aa91dbaadb2f1dc1945f00302047c435bb500663064023032ac648a2bbbd27acec2ae7111770c5183cebcd2e80156f9b5c194661fa166112ee0a23c437ceed015c13e3f904e60f802304ad4d44e2701271b10c6e1359c00f79190d55d636f1e77ebdeb531d1e8b89b92ecd038251ae16be83caa8d4240a4f96b0302047c435bb50067306502301c146fdb64d64aa2163b01ce04782a17c62b1d93984dfb43f3babb8c32725d962f098a32cdff9ee9d164db71b0030bee0231008453d7cc4fb9244bab23febd8969837bee3ce8e044f260c17ef22beec2593b5cbcf20a8cb2fae2c1afe5e86bddf6cbfe0302047c435bb5006630640230059d03fec245d2dbc1d8af8c75c8ec50d93e349854b612f352de6f23f389f8e147ad83736656fc88c6b5a078c87a5d3a023075a9125766c5a2421409cd3eb025b11f132c754f56ec3c336301c4ef7089f50f32e6b8e0d9f70709970d50e4177777af0302047c435bb500683066023100e71917ba3242208022c2d00e16e37d8a375872748a8fca7ff26065a3fceacbca13c38adf428fc8eff8113a7ad305997d023100ab8122645d2a38cc10de25c287986ecc2e35984cab9eac482119eafd560b15e855f1e72dcacf1f7be2b27c5250ea3cd40302047c435bb50067306502303b6ca822364b4f4c9c98e7679a1de819a9036284b3cded484927be697faa6de82427c1048a8537d37d1dccc395f4b37a0231008720a5d96afa0387799ce1e68e1c23b7041721904fbc91a98afdb71cf76d43cc68a040964522c5169cb7251091ffb2100302047c435bb500673065023100df7bdb2b1f9d82e78c43484ad05f29c674b4bd35bdae5b271b86a4ebcdbdfd82262ed843873a544e6779fbb606d5ab31023055b3080a7d091af26d92bc10b20de4991b76fb48f8bf5059e33668f27ea0b9ed4ca905b106c052ff3c790f087d193b430302047c435bb5006730650231008ad9e7e763d36c19c8b81d70c0ef42f3a12a57c7ee37b1dc1db8054b92b3a0110ed952b4f248b66182e6bba0b3b5265702301545411f04e6f2761b01da580b59d73a5e14bc87e4bd64a21ae8ed65ee96f441100f012bf3fe58c341597e12b8f1c5b50302047c435bb50067306502300ffb50262ceeeb45137283ebc801b9fbbf962ebc6efa9e483f020bf3bdc6736f87dbe7120e5301a90964adf9f93ad468023100f027a1e75027ad0f880a85e065f499fc3a596427539ddc3ef6d2e595be49db5c4888585a46e73b4365f99540cc5c5c430302047c435bb5006830660231008bf249ee0a19d61b2c9f19f1e0d378b6a7797b833f468998c76aaa7d97a0f408805a69aa6e5878a339364a3ac00c6852023100b9eeb8d8e04a9cc77c9f797fc8162eba041d10456c335bffe3fb92a1a6c6e95dab25b98a36a5655d6c4b441077ec2a2b0302047c435bb50066306402305285439405b6e3ff43a822bb693c7fbab1c60ac41e6dc8e9d5bf79c73ba636ab1d8518f7b7b9e8e15242ceaa358e3988023054241abc1b3329ec7f1c76cb914da03ac1230179977a9b8fd5362c1df79ff3d9db95a1b7d605fbd45f5f1e724b41d30f0302047c435bb5006730650231009fb8d45672ac6455fbe664caa3c4529efcd6e3cc670a09a6035ba2b82a3bfac881ad695a795b2b7165bdc3d5eafa917702306ea389d805aa6692fadd69b6526f32cce953fa2bdb9bdb2d39741b57288c4340b6fdebf1ee9f5a7d7e7b006c0cb3db4f0302047c435bb50068306602310095d60e8944eacb511e7459aa61f9ea736d3618beed79cfb851745d963a12395118b9dac435debc3f3eeddbacb51e1388023100d8a5211dbf2c41bf34ae7831e61402dbad6ce485637955d7ca9407f93b12b374bb31f6bae9ffd9e655df974cff5d1b1a0302047c435bb50067306502307710b41c9674cd6f1de162a846f839c6fc89bf1538e9453c51fc909c1edf9d8ccf08145f85b249b05c4890555f1ea14f023100f61995d78d4b3088ecd25e1a6f88c7b4531e32c681deab2a81746c6a82168608bfb78cc22053fb8e65706aa7cbf9555a0302047c435bb50066306402306a434f7f27c37e2fb65759e3ae3a10872eacdb61cccd666f819cce41273406289f67856b6d3b1eb5b3177f367d1007b002304ffcc42681d1a124f6bc88e928dbd625961cdc90ac29786bb8373aa901b2c585378ab853848d30f0d3d2b181ab41e9a70302047c435bb50066306402304a78a4d8d804b48e5d8873e3b9ebba4b3c2baf13c3f73e17cdd37ae995f0c36dd1915706924e0be7e10fd35b9df230b0023039f604b058f07f6cac35bf45be2e39c45968d0679bdb0882f3e43f11496a03999275b4f2f59be0067d37916bb9891c810302047c435bb500663064023044293eaffac32b20bac16e1281fa2772d6d09a6efa59ec05732d57e1ad81828228614a78941a42cccb030c485284bc2802301d8599636ff8300b02838e434cfe4c52b37ee2fca60617ceabbfa4210aa6371ed8bb68237fe31e7c1f8259ed788dcc1e0302047c435bb500683066023100d883e121e6a1da023cff017849d8ca1632f3ddd016bc3595f4c5389cabb0734edb683bfb35602fef3fcb9038f5ee17b0023100daad7df9870d836f8f81e4c97096aaf82fd1037c733db8e9114f98c3a589c328a864ea7a6ddbe645a3832d815c2bfc370302047c435bb500673065023100cd1a3aeac23ff2873faf77bcdcc96e9e03588c196d86a8e8bbcb6fbcf29174d43cd021518eba511b9ef8b3e5928e0d6f023051c7e17d38f55c4aab76ce9fd70d8787900f2c2c91aa06ce38468871424232cd1351695f7e2a5e638fc23eb361602c4f0302047c435bb5006730650230234d421140bc177b044ebc9cf7e447c9de3c515b83c8ca48b518d59d3313465973c62bc80c58ce2cf065941a1a9a4cb5023100cc0031a7519dc3f8655bb8b960185a69942bbd17e14d2cc3e6c975b49195f2fbbea23fa27844b4ecbd8ad4c19149c8e50302047c435bb500673065023001cd522971ecc4a7f4ee1098895b5e2646f1c7520c6c1b5afa84b7990d62c71e89508e805b1415ba155e4d62a20bb85c023100c2ddc38884f7e2b45ae7b28797377154e930c381b88b2e0a9d907b26e3944bf79d6d6cf048f667182719667ef41179eb0302047c435bb500673065023100b6b94f946ca3f69b92c6fa9c212f970f2264f1420573f3c7e38e11fc0d59fa45dc872b96f9781f362fa4aa9aef9c473b023002a4c90a4a03b32e3f166e3db769efceee6cdebd1113c2283ec9ff252dacee980df4b6a4fa70bf633a24500c3e579d040302047c435bb50067306502306c98a1c4cc87a1e2b94213ea02127cf93031613f2a8c6218cb41d4ead3980d589fae1683ea6fd181d1bc688d028ee4840231008c5837e72eecfac6bac6f38d333612c8d7ec575672689edfea83a1c40ebb249aeade71b53d526218f80fc983f1c6bf300302047c435bb5006730650230020260c7913c9fb3cc8b9b3fce233a8d6c7291e348e6128951bf1ffbe8ab00e439579d4986a07cd81ef3753a77d6e709023100d669dba32d154a0b18ae92bb4338d7bee5703796f99fa4c1eb66620e1af2b909b75f61afda0b6e22085f756e2f698a520302047c435bb500663064023045e14c2f69f013bc09f0e52423503195b3c7538f50594efc3b995bc9c93f4c02cf5f811720149d715803f06e9107e56c023002a4d6a0a772ddd7fe650530c16d3003da86bf532b5f5b028e1eff1c925e6a8daed47d2fae90681ad860f061cc4e21e40302047c435bb5006630640230108e9ff642721f104bc3cb2b4b3bf434b23fb720cf26b35b75689a83f5e4a48555f879106dda50448e7bbaedc5e71211023049f2cd5a3d78930a278a14d199a1d056ce1ae08de9ea677b7edb23e2cc29b68a1a3ca8ee78b2b4bee4ffbeabbfaa2c740302047c435bb500683066023100cbbfce589ed724f2f6cf1ff2e9f4103fab7eb4ffc33e1c12f8d109693053698e8e631d7a1650f365fc0693b3f6afae2f023100b3ab51ddb9a09afb7cb97edfc8b87f1a2883242d924aae9c2e603a1b1b6b26735d0c9ae7aba5136bb0d7a33e129df7fa0302047c435bb50067306502310092718f149e685f48351dfc0b42eed061b889bb8e01268d851d0e875d884eec3dc946e938d9949069798500c60f2d9d0d02302c4d29837631838945a7a384e4af4e5a49a192cd3e0649a3029b0295126d4a53d2f67be5788ac43aa4d6b04d5a46b0d10302047c435bb50067306502310090fb7e92ae89f7d08b4f768fc559fa423b00e98ef40606f4d594c505a2e66e4d29c9670198e1cd2dc37f4355c034227e023032c1a5dee5aa8eadccba87d16ad3ac059237686487ff82379398f21bbdb8d64e00432ced5bf65df6cb0ae54f0dd903210302047c435bb50067306502301cf53558e95b4895314f592f3ea497d105d7ca9fefd5b5ce1cad84ad074cb6f5acae93477803654e52ec75afed9736e0023100f5a6391d7e7280e0bdf88c8672fb563623882ddf05129355fec65920ffa0c05e14768f93418bc87160b400e39e191ea20302047c435bb500663064023000b052fc60ac6bb1f471ab0d5adf65b4622c86d6cb3795f6de06ccabd0f3b27d5487d96de817d6840c1f41d602d24abd023035b21de4dc1530e1dd8483d42f915735ab8ad5b0fd09a4fa71ace7a4d540d9be723927fa037956ff1e85d0bdf351b7330302047c435bb500673065023100b0cd54364a47158e2cfdc64637f8cb7e44a3dc5381c9184cc17af913ccfd69a28b324a9ea7ae8a50de82ad0d9161fa2002306a6e5c4ae242684d5e93798ddc01541f5a0995fd7209a19bab6c996c0b5846091801068963f0440d91cb5104e80f936b0302047c435bb500663064023100aefc822f0af142c94d6a7030eaa125071f82aa7f7f31cd0be36582cc992e23f2c3b4f5635178e2ae41338df1f3208516022f493674b6d1011c6016b95a8229d81e3f0dcd66db8177e1b31dc190497aa611e71b5d03d26707cfe925ef2dddd032250302047c435bb5006830660231009e30a2e31e5b12e04e7aa64ea88e3820a0c518fe7b63dc18c6ea33ea12392f05808b215261dab2417078e3a0aa931fe1023100d72ae1c5b3bb67d89e9feecc2b7ff6ca01ba9e7a3493b586d678926961a44db7e9fd43bcb146073b8fc18206a72831080302047c435bb50067306502301a59fc048545c819a7935e7a5a8ebe35491b2a288bfbcfe443e4f3fdacc5462480bf1bb509d393aa873d77188b160063023100a95b799a5d50edc2925961ebdc0c40e0bcc0045f7a366b2488b874f43e1043f0357a4098a4917412d484596278b7a2490302047c435bb500673065023100ebe234801bbdfd5f45a77ae9f8e4301bf5a690478c75b8236cc81386ce3e31943cfc284c702ef07741569a68044fd45102305e71636fb9cd37d409111a9dd24410072d407457c052d91eebb9e7a5c2498fd8cfe93f64fc7c7ce7541199f1414d40a40302047c435bb500673065023067503f5fe6a940fdfc125210c808fa4c61b7550268e7a99e68d7e76e95a4c71903e29e6e0ff9fa3cf8230d0ed5428542023100909ae08c7f7d255fbe53129bfb2728d69c2482a7936040fe226e57ad206c905f8924dbdfbfc695a05593498d3aceb2270302047c435bb5006830660231009685d4d44f3c4728a65e102f98d3219f5b7b5f61b83be7418e73c356dbc18aa29e4cb57d1a584bc3405954e99c860a48023100c9ba9d95da5ff20a768fa9f3a25c36ebea33fab8cb944091b043a3ad2486fc743c222528b51fad52f25ce527edbb3c330302047c435bb500673065023100819cb77acdf7b082fa82c263b8c4a2013e0c6d4953b3c6d5d8148a92629c6d79430f1334db03fdbdedc5e8f9514a4b880230477f7c3c3b123679b8d21d85f81e47d2e55483abafc997b20e303998034d51c4eb9b8a75c164be61deccc2b7fdda45690302047c435bb500683066023100cae70184042577252358e6ad2c91f1125f1519b4d091ed756c69d592027ee161e6c9aa0eb9508e6d9f79e4219cf22560023100a784bdb04c5de6a0a9ef8ed5ad4a2f5044fa5d0d62eac06cec64c00907f05a36c0be27243c8f0e8bf07c823af8c337930302047c435bb5006730650230378076b482427d585e579f3976730694c2be67d863c22313c448d68e19a129aee9f1ad6fe80205ea0b4876ecb88c20b8023100d1d35b69e39ad9c217358498232dd8aa77ad206c0c4736d9231078120465a1119db41b1d9db3e80c15135c082bd58f5c0302047c435bb500683066023100c9544a8ab23b857d2dbb535f7e47444675f9830cafae4917c3a30ccb3ffe5a6c32f3c11afc6c0503d026ce8d7a3b3d75023100b35abff21ad4bd1a15920823066f6d0b5e3f3fdb47fdd830dce507ad10c42a6a53f2f3a68c1a8103a24ee19c076637980302047c435bb500673065023100b4d3aa9a1656725f1d7c9decd4eaad6e20e3a7bbb904042181ee93e5af6618f28d410f598516c01f83f9d9362a8b2a2302303c09907ecfa6f36aa3dcacb3090cb54798a166229349a842a8a39bf3282cbbd601e91fba02bdaa1c360104cc2769c1aa0302047c435bb50066306402305718b04dbda678b6368737c038c99164b43dd60d3a499d51da77e5d18ad6ec35742f3797b88b224ab4179d54952a68d00230444dd94e8a4ab2bb5b92cc43fb33b6a9adb754b161502467cfcfdfd511efc2f6b8f2b3cc3a7dd6a0ac982fef2e043e790302047c435bb500673065023041b963957502a83669a313802cb94fd3fa04f82b06c4eb20cac08750ebde16297e19da60fac05922d1ad323c50ab663c023100a682474113b83a2a064143807a3f5d7132d940d54c1a42ee0867bda1cb1928a4c85fd6d973ca35c6a890f2b9d5e80fc30302047c435bb50066306402302bd9e809240e4e9b1dae1ca5902f36eb88cfe4d8f167f2d5621e1d4aeeed9ab5b53641ce1131b360757627a023247c8802306f45a3cf2af7bc0b79502b6975ab9f5400a5124eb3375a2b649e558bcdc6a1a9988f41b19af84f8a844a5e6a8c1977bb0302047c435bb5006730650230052837f4fac7160ab072717fc4b7124d5c9ffcfacfc330d6aecb39c350cf5a42acdd37458a3b93f261ab69a45ba3c1040231008f0c6885cbdb4a8528e21f64c85f4b575df30c54741602caa3fa2382f80063c31001d35041539bcf548405519517e62d0302047c435bb50066306402303ddd651eb1b1a4fd82a387426d26b41d72daec8a99e0f6245f89bfc705f13f81bca0074b1f32faa4cb026237b28fcaf402307c4580eb8e0513e906161d91fc486c2edcdb34255b5be53e53a41eb708c8e9960dd9d8ba0818ce3b28dfef6c23af32dc0302047c435bb50067306502305f329f4c70c6a350ea512fbd233cd7c4ce5778e020d1b7c58193b15c1e5f9b241f8acd7181101192b0458f50455ecaa9023100bd76f08890424e6c1008b2a97053d6ffac0be534b7e6c2420a29505b601a900879bd6ba88e5d9c03b79ecd408d990dfa0302047c435bb500663064023043065b3f63e18c3f738a5bc237e5767cdad167a2f940a8e91de36b3d0591f975ab9e6194afd3dc31940f2b2609b9b58c0230280554ed7544619dd31ed4ee2b432365829da5a89a9cdb397db5a6c653b39d5ea792bd66f14ed346f2773aafdf10aaf50302047c435bb500673065023100e6567f2ba48693ba1eb610d34f9dc9d51907d44735633e5e23010e91c7e1147e44f4a728ee7e92a3cda0233eeec2eb8d02305bff74b10167eee5f5bae836f5b5e869b364ffcf83a13d25533e35d319c2f7150ab01974672ec59260c6e244c716673a0302047c435bb500683066023100ba7ae86d158380c49c45c585980a959fe7a5e16aead4f80f3b65f122ed29ef3978a043c3b6c6133151f67c29db5cdec3023100f3aeaef2d2cad480956b04aa1215b8f3b2413404fefb3cd3e568ff778f39d265cd59911c497f1ea1a2837eb63da8ee0e0302047c435bb500683066023100f28217a55ac25ce8c70903e70859224e90387227d7bdd07d70176e32e37415d75dbfda66dcb5a41d524c734b9761d79c023100ac019f0731f6eee9d9dc6df04830d0590881edd012fcc79faf3aed7b87e51db14b89fb693b706e4e49cb8ebcdd6c60730302047c435bb500683066023100b29741170ce7911b1419022f9b6c3392adf5c20d23698ce0fb7747afebc980a06c29503d294016a515da94958fd66549023100fa24d3cdc599f0050becb8f42668b372ac355019334e20072052631f413fca6c87a124f5db31ca3edf4391f458a5a9760302047c435bb500663064023006ddf6d4925546e9ac15792c9d0fe2c7de5d5d2bd7e3bbadfde4edd119ac3ca4352174562517cb7e90b6608fd1ee5dd3023003b09849518929cee40df3211844210b65e713778855592b37acc75e09c1768aec1b24d9fcbcc386676e5e789f098ee40302047c435bb5006730650230520863c25c37e3b2255dce662763986e4ede66cbe69c65ee1be6afaaa4b5e9dec949c7192c916f17d1423b0743511c79023100bb5639d1ee708351c850e16241c201ff2d6a76371a7138330ffd1b51488aeb97d07537ba390798bffb8cb192f45b44b00302047c435bb5006730650230578a4b787050f633f36cd89c86549add64826284ceaf202991134933732b56882c6800b461212a91123b2472aba47c5e0231009d49d4b2455926b75dd971032d558bee945a463733a433f2b26f8401c3fb13012094b5c24ace962138342a4adf76ac680302047c435bb50066306402304097922420ed167c107a806f6871004848ca9d4ab8c002ae2bc646818c484d031f2d7699b2a3ffef4341d4077cff107d0230317ed3e023b72eef7e0187ee52b2693f4cb6ff1014ce1782876b45b14242de839b17d836ab88f8b05ce335c9eaa8e3920302047c435bb5006730650231009ce6aa07569093c63f075dfcf4b976092acebbf0b87fd5f6bd78d24a7adb71a4b62157619eac62ccda41258291bd37f302302fd2377e409cec504a6e971d1802c0a4c7c55b668ddd7db365d41bc2dcda475cc283ca90e0fd8e5f83401ce2f611c6640302047c435bb500673065023100e9832eec2c593a7ef84e07ab814eff378b1f1ac2ebf720e20047e03d634a8479b7f2a05f6b962f6e045dec61e5bd6d6e02301d66b1f8ced9b165361237a42943bcefeee31e11387811ebb6a51a4e5dd33df96e896c07b99174f0ad76edb632ac38a50302047c435bb5006730650231008da659efd19cb837d9b9ee2cfae1ca308e214e1181a51e982b0f4b0ca31efb8ed489f6906b276b0a676b8f9829f293a6023035d1a2596e6f3009a8e1448d8eee2ceee330d0bfd0867390ff03f52eb29e482a272eed2aad1f400f8f7136a2825945610302047c435bb500673065023024d4115af9ca76fd8b78c7679e073f55c06b4f1a84f908e26378e8a9e032abb4c6afddb9879b6924defce1ebfbe1dfff023100824f84ced164d07c34182057f135eff9dd4ea2fb24fc107c72251b5acdf7530883012e5c1d53d881efac4c061da4c6050302047c435bb50066306402301545be2feb252344828fd0678a9ffbac224309e797ee5d81aec2694e8fd0b55ec4fd54a545ea82c5d980f3417dc13b9202304f767c3123ca44bf8341fe740ad1f429b2b864f82f6d8803c835b52f9b90cd4dbc36fd90a9cf62f6dec8d480b327f19b0302047c435bb5006730650231009213b2e70b8ebff6c3746b8fdbc614db5d03bf456765a52aae846eb5329eff6920a15c4d7b9939a8c9e45d25496af52f023045a0c2db8d0223aeda4581b31cf6c9a306cd604ff0b8c3fc1eb79ae53da75c2bfefb5644f4c97640d8cc23ac528e5bc70302047c435bb5006630640230732c38af9e0f97edff8d441e24db650cd98aea07896813af8cdd4ac5f336cc2ec1702eaea9009136dd2311dee8c2e3bb02301895bf6614e54b3029151a78eb97025bdbf5c7b522fdb21049363caf418d25a9f8255f4b95a92772a209829587c2a76f0302047c435bb500663064023063e3aad107b2f066172851e43392255d083768a5f7eae3a16bdd757b995ce8d559936a1b83ad7739025b2412af19e91802300e8fd51a839001c43e3b35aee6bf86cf1091225529e9ae124f53f4cb5bd65df5e80e22dd35a4cf4c615dbe7e416cd5480302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f2163bbb2d00cd16f7f747faf004fa69da9adb607331ae5de50ed02d5425620ee2344f283e2639fd0cfa9ca6394dbace02305c47e9b6def436215dfb60844eeea5c379b0664d749a31cd8614d1441b6fa9109e14838aae781a00404328746045ad2e0302047c435bb500683066023100ebf3e1647d3e529cffde03bf30bad7e68a0ca2f426e4a321564bda4d2d48f465cc7ed3009e9e0dae1c7d8ebc2747ee3b023100d6e5e98791ea4c46739dbf39bdf2ebc12422280b930872bcd210d0d99dc780a333b0fd4d809cc6616ed2d221533a86b40302047c435bb500683066023100f3fed3ad8afe9fd49bd917f9e25a805ce62b1eced720c1dc469ee8fb323765184d2b67a149d245dceebbce9d73794252023100caea38bda37ad5357c7c9e5680916dcd3fc3e67a37b94d21014c4848cb4bde1fed74b9521d172c7c30381d5f01929bc60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009a37974648f1de180fe3afc11d0429c68036e6347b96b5e79ed34f6ccbd84a45f796f381f7f925e5ea31891c45b1e90b02300738f27103e93429ebec679392fc1fd67e98aeeb80a3abf2eced23438e61dda05fa1160febd33381f292ebba8934d5aa0302047c435bb5006730650230079c30298e005b64a2d17364bf3c414f87e13faf0e830745c5d035a62e90be1504f9399b2db48e7091bbda0433965865023100c2d3678f4ce80eafb79ea0fd8b253242a1bf70df5d54ade1f66cffeed29fd139b16ad74825df10e19ec259254b4f46380302047c435bb500683066023100ae9823fab4e8132171748eab72458b949ee39baeb74f56a6950909ad4816b16b2d83d9aa94ffa9382334a80bf3c2ec9d023100887a1db6e712ae079730f476e34b5388efde7bf65548b7afb6ddbeeaf0a7ba709674d8ad99aecee7d0ebc6881521c2850302047c435bb500663064023016aa7a03cd07cdd2002b159006e329dec668830ac0a638dd33e742e50e3c3ddc04f5406720031fb69730ef9edcc05dd702300d12decbebeed2897c9cbba9d9b354a8886e65f2e7e95115854bb165ca823e6ca0fff14d7170c3929ff52ac3a2c67f990302047c435bb50066306402305380d01f1a226fc358210cda6ad9b12c075c64667bb58972dc54ef847d6437a9a2d0f83d810d78474018e7df7e7469b702302e3982b8fc87a482959b265dbc0edd1bc1cad6e049e869e55a648edd7e5d64458a9f850305424490ca224cc8b09162d60302047c435bb50067306502301faee5cbff1df59db6aa73c02bd53aa9d5a7c5223d0e2b81fe9e00f31c8e3dc1a5df93b3ee00d28682add6af0e33df3102310084b53ea96c74772535d90bf621f2bc4c0001bae4e6d0696a73c1ad39936049970a7d7352d359c93b32cfa089a462a4ec0302047c435bb50066306402300d404edf3936032646ff306b13c05d33341b1575bf9cc58ee6ea4049e3636afa14baa0a73551b9bbc09e2bfb0c2846420230371e26c62d5809a2ab10acb28971245a138b21b0022cf0dd9bfe927b1a5babf7c86e9af0d524c005470a46d7ef022f900302047c435bb50066306402300e34dd255589b6734f93d5391521ac2d641d1477b179e7b17e86e66907422ed37045012ca32adc5d224c133b5cc9fce102304e5661991a1942d4ed306b492cd8e1fee16ed26870b8a50a701d1fd8e0dce9af673394d28d1c6d91ca91eb7b52c585a50302047c435bb50067306502310087b688a456b3416b5005ebe09f20c7954f052330779a83a299319c97d6d92be50566eb061123baddc9a670aa6bb5f4cb02301096f359eff9d0560a88f7eb11950d55c337e9d712aad4f6194dab4c003318430baa7b49fb00985f941ec9e7db4997e40302047c435bb500683066023100c524aab2d9c20b54567c486ece6ff273ac20d9497c4c437e4a117cdd82f332d89bf71a83f2bb9558d07c81b0e07c7656023100df95001ec7ca8cf3ff07f481499274776cf1786dcd8f1f1f28c9427808f4d5e6c14dbdb7977436db7fb102ad8ac76bbe0302047c435bb50066306402300b35edeea724d0db19f0c3894aa5479d601f9adde91e9f84818d12697cb8f3c6dfb7a0312dd9a3b68d43b83fefc9c71a023009bc10da95b5106bdbcbd55ff4cd78a7024ac031db41b789aecf96c7ecd95747f22175559a3db52fcebc00f7c54ec02a0302047c435bb50066306402307fd5f53f7013e3e2fa4191fad005f90eb1aaa085412df9ecbb06519c3491754db457f391e9edfaec7d0f639b91c44cf50230720a4bdd30c8640b3de40b62e73d1e19cf7d91cfa65ce93c367a8e60fa878b7775bf5adb364481d4758d1973ad3892c20302047c435bb500673065023100a8cd1a1ebe908b5027c1c79e92e5721f4ce956fee15f9b7051638de0f52f0b699117bcbdd9353af5fbbe967ec09e0c1f02306bb74cde373aa8b00f2345442860e6e5e3519883b3deef2fbb3ea9a175dee8a8e15826706c641cd242d516b56438998d0302047c435bb50067306502303bb4a366775ec965d972ce322da265292362a84c7fbfcb3cb665728898725cefe9474b4c6e2d07054e7bf01c4e5fca58023100d0d143ce4feae2310fb141b3c22a542698abd37e5d27ef69186496c328c77e5763bad5d3ebbe559a92b745bc24b1108e0302047c435bb500683066023100ba4f5469e796567e6ad89b3aaf65a0d09f24d9d82c210eb13c96563f985068fee2b05e6666158354387d0de389b72f87023100e3211677d357a3dd34bb4332a17852b403e8d3b8350d9971707c17bd692220dddd8e7ad646314acb4d619fd1c85417780302047c435bb500663064023057a63e679d46d824eca8c912adcd3d29d4eb39b964e39ca3648b9d9d10d809299887264387c63df42413bcb48f2f240d02301b2ac160c630be7bd336c8437c99106fed7b67eae809ca8619d78aca1738c9f1564fca6196af7b2abae3053e91a04e0d0302047c435bb500673065023100b598f51577a9a5ea7b955fbcd6afb95dca5f4207864353b3cff9d1db61242266e85c8259232444bf542d87c5d0a6fe0e0230487ae04406dd1e92b2e05d829bafc5c5e860952e1f50624d415f0eda4749701abded9ea8af0f7449dd9c5ddc201f7d6a0302047c435bb500673065023100edb0354d430915ca2eb06dffd8a482f8d0a60bd9b1b88ab0e12141f39e048da435825358e83f1ea7e8dd4edc7164a1330230445c9f96e8a0c2acee7215d2eb18f08816492b372d04335e84a3f4aa840107bb185812cf13134d4279a574158cee8a1b0302047c435bb50066306402307e5ff2cec92d00c2074e0bfee4f3c2ef3886594e14d236e073b358bc623be5f96fbab5504c948b385673c9931fce6c2f023067b5992cc675643e30b20ca2c047e9359de9b68e0ec47d70c79f8ac1428f6edbb099b18f86e485de9674be354bb9b2320302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f1c2ba9e25e1111e283e7f9358a4b816bde12d58d01122b407077ba7305963786561be00814cbd840fe9d0404114adea02306110a5d86ac05249e25a60107a95edc82a498f5937c653febe92b06ff85bf64825bee56a806f477008e557c139f2e69e0302047c435bb50066306402304f8a3111449f54012ff539106a6d3a0f7bfaeb2960ff176af6cc1acb90897922f460872b7650f735443e1cc16e22fca8023078336c488637ffb51616444db41e71ddc2885a9d1374026334cc4a6bdb27ac46a5a21b6977232357a3f3541c3c78d5780302047c435bb50067306502302c81941725f77e8fc69baf6f9273d62b01f2e07701895727e8c1895e999578ad5c52558e7e308317b749615ff609f53d023100fce4d160240a45c136d637c256fa09bf3ff5e23abe4e0a05541ff58831d3f719eb8c3359e41e28cf63d0aa9ad560d0320302047c435bb50066306402301ac8e7f50df4d6ab81f74aeb1389de0d413bb3996ee6a61a4ed3a3274244a1857828e3408548a3f9dd77d3d2f7ce80bd02301b1575eccc8e376f6e703608c20de9144900b8d63f558b293a2431c9ecd5e8aaefcfa82fc7501dfc4467f31676f24c490302047c435bb500673065023100d3c239b5f1a2c56f33decae5afef17063db66b641a4de0501c9d0ef1137571a72b89187e8d9787c03ee9888615c9943802306116760f61b53135b15b9068b8c1dff2230f7fc81ed26f4c81f444a6e2a1d5f4779e7d52f187d1eca541369c95b9919b0302047c435bb500673065023100fc8dea4dfe1dae628e79a5b61d9d861ecdf3a2521f9c3c4be13a9dcac4b72f2fc99a9dacb88bf5fce99170772e22003b023037c95ec9aaf45415d514e485666cfa0253c001fc05f6dc938953ca76a0443f276ac55074ea8e9eba8c409c5149df4d030302047c435bb5006730650231009f9e427201ad7cfc1cbb51d53ccae39b1934650bef7b6f8ecf032e4416d7632b932e1d6162b7cddb586e6f212d89c7c3023068de897b209a6117af43cb21558953f0f9a6deb37f003a33fd75566a8780874b271ea73925ba763696c83ed153bbaeeb0302047c435bb50066306402301563822dda2d2f0a4cc90501a2a824efcbb7cf64ae8b312506838b2f9dff0098ab1f525731145e3c104e7e98abf96ede023000cb5b769e7425e90f1e95b3ae5fa5fdcbd28c1bbe3b08685eb0ee1617ec8027fd13da84ce0afd82b3a6a2d03bc210530302047c435bb50067306502300620d550a2e7ceaa3a39b06202c0691f5f6c50b6602e868905ad7ff56e0589e5e54319caae09cfc1043403462a90b21d023100c6f99725db3fba48abdaf7b3d7f37f8ad60edda8e84fb3aef5cb1ec2ec361ec41a557780258c1b0a79cc6a365b214e7e0302047c435bb50066306402307f1306f6ea8cbb6d3b49e5d2afea222a40275d5089044585b2a30aac79d7187514f263189e42fa92e41bcbf45f77a7930230102c0ce4315a6d6e49e82871d3963b48fb412ecc5d4459b56555e5485a52f19e5f969c070cbcf06f04ac0702891d7f290302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008a3c25978e99a2c0f08e9c14cd4e4813ad4ead6609b00d89532d6c8c59834a0dd04c99cdbc86691629c18b69497a33180230166dd98d2f48e4949e26166f3c094ee74037209649f2e0520453b1d6030ff53fa09b4818fd92813bd4001c6b1cb6aa100302047c435bb500673065023100c3c96d218b6ac58a5b50f87a0c6511dffcfbac4cf66509e855faf17493cd81d03b7eaeb073dae00e4a02203d301c2cbe02305516cab5e35095890d4657a28cef39659c10b452eeb6cb7f6fbfe8ba9572cdd7cae7fd54a6bbba87938b2d658c485bda0302047c435bb5006730650230301fb46859bd819234fe3b8bc2def5028867884e2dfb2d142738e66f0979f0e656104600177c3d10f166fa17e52394dc023100a4654f8965128e2ca20b3f245567ed547b5b2e0d1925404f9b4937bbfd8599639747fa67f041bd8a4d2a4daa324c8d7b0302047c435bb500683066023100ffd2323de52550579293b501186db1a67e8a0f4a1bea6e927d181f3a08997027606938ac4cc27fe6f5392a7082fd6996023100acb9442d1c696196a9b787cf2c09b457347aa6feaa130262c8bcbb7cefc18d558adaff307d94fdabc9c0dfd253a7143f0302047c435bb50067306502310086cf5e70fe6ac0088f8e7e60d95fd8e69dd489580b8c413055f7c370ef53526a5b1bb2d5ae28fd4afb57445f2a164fac0230195ab2d2d39387ceecc86a738b785433add95f81bbb0af41e9977e2947a46202265c9ccd735ddc502046508f5558a6bc0302047c435bb5006730650230615e2c6f450adb0b3157f56dc0af240cffa55fcefa894fc35a4ef124d9dc167cde15cab14fdb275c67679d98204eaa28023100bdb85e95426f86db1bac082d646da9bda516ce9cbab11a58b0044f0a7134f2e222729181704de9f5219eefe90957711f0302047c435bb50067306502306ffe5568d0f560932d4e4c7d36166fd4d89a1021876241a90bea3915207ee98ce4fbc5ed7e579a169c9cee0781ee2f3e02310089d43f52e2945ba0ef9b3812983d9d44df1578dbe0d654a268b4022e709b108a168f39faf541bacb945df3cc4b06eefc0302047c435bb500663064023022e41388a60d3af08d8c5359c6805ff85376fec53c3ef0890b36b7c9451b659b9f9841ad3e06b8e3f0ab6edd219cc30a02307ed91ee86b8cc80d16442c501f4d20ca75012eedc0396128b5049effc400db9a041beaf6282cb7835ba6bbbc7f1c2b990302047c435bb50067306502303efe9596b83d6852b0f816338d7b8e997f5b0af470c8a2bbb7c96142b88568b77ef48d626ec04bda3155514b09343328023100e38b50b2577b9322093b068eee7d5f8a09dd477521f0f020416da3908b12eda70acf6e99c92283ee30c1a105714f11930302047c435bb500673065023100b3d7b41e481362fb1ef35e6fb28be5c68fe15e0cdd18338f3cc936e637143a082f9d470d0ba16ececc30a9488e4a225102305567dd028bb79e25a86c5876d1d33860783ef059b7fdc16efeedd13b0161e55e267c68b9ed2da50ad248f1955acf371c0302047c435bb5006630640230600c0cb31b72d12bbb4c22f4df3506ae4f4aeb9afeab1dacfd4a1a72af80d5fb3b43fa6ea99be86d37ceaa842870987302304974a39a001874034a0987bd1e0d9ae6465836c6d8daecd2157c39bc3cd7475a304312708f3ff2f05788a9334de759540302047c435bb50066306402301f3c34897989e668dfb4c6cc8a6573161f66967bbcc87f1ecc979932aaa886f8f6f8d98469f80569683e2bc2a155b5b602304ffb6d3d1647399734020da6729ef20886837db6e2ecbe33460f231176197c5b95cfbc3499d7316f1aa16b28ebcc5eaf0302047c435bb50067306502307c4b33cb0fa9fcbc4eab5b0bb240b296f7b3ac67e4844116f6eca18bbb385a4acb71b455febfd85e2264fa1879801d3f023100bfc0a3c5ae3bb27f41ed3637a37cae4d57cf2be74cf2d916d05c974f0edce540f1624ef15f991f503f0ec786d64dc0240302047c435bb500673065023060192e35b88ebc1a0d6f8316c958b5873c7f1e8e360f5b5baba6243aefba51e05e645211f2848fea9b8861cbbef9b2eb0231008edc7aebeb1d3eb77016d4e061e129604d0b5ffcea73a033f98eac77cf7a6856b8bbc3a56ac9916b1282b19145ab02700302047c435bb50066306402301b098fdf501f8d6703694a571359dec6cc8139259f76c6f86bad1fc1dd5666f987a5e7b99f4e66a29b5fa73280070f3102300a908f97b256fcfe4b733c1d78532d51a6427a3e8414be0a4557f5126d746b022d7069e56aacd1b4426bb2ef1404e6ca0302047c435bb500673065023100e279517b0a459e33cd88756b978d02d930a9f9f52cf984ec210f97292af295da903845c68809f8b1b8a1e14cd7780c960230398e695f764d540a2bf7353c894100e21e7a9dbe9f56533b828e0379badb5da9886947d643d42647bb873ca07d5f5f7a0302047c435bb500683066023100ea6f32a9d3b84922320f98d9a71e82d8d3e7374195e19e4d52a1f723b5d1ed782b843956d27aa868c2e937cffb3bd6bf023100dafd864a1cb998998f93b4d1a059925624521b96afbab2f8452ed48ca87a4fee6768b8369b6c1ed468680d7edd14f2fb0302047c435bb50066306402300fd23685b18759e79005378f5bd174fbbbbed8f575b9092a549f7e1c6b8f3f73b33e39a66615d5c436430f7ad4080bd6023012395f1d4ade3c062727bb7fb1a814fabc82e6abd71e0daab54cbf86768501aff554c3d5d768cd40a8c3ef4e6ad198070302047c435bb500673065023100aa479a4f8ddb16529ad6df5a27d03e43a3900f8e210addb5d63747d1f6f5f6cf0a75ebe04cb28d0d6ed3d5382e90cb6a02300b1c4285ba3cbc4001dd9136ea86a77a28461b7e1927d2dd0b12228522dd9389e6ed11e88485aaef44d7805c866a3ae40302047c435bb500673065023100fc668efa7ba653f28bdfce43262abab64f99527da782299edec97f7f607fd6c1723d42f65711306fa925cd8d50583b490230434ff8ad43e131d29edc82a044fdb028c8d17a1fc32e6604f7e5125f75c2c5582556a4e15aac0d51e2279552e36d5b620302047c435bb500673065023100cb4e514794e81ede11d6c8e0f0d1a887168a1da5be1cf53e1876f1f9f84992e5759a4655c56d0a796688c182ceaeba4402302ed42e5ecec17c774c9b98eec63faa09f98ca7cc901862e7effaa81630cc3116b58b1f4c1db3470f1d5a974986ca56640302047c435bb5006830660231008a6d5215cf6a2d41213e36c32fe7f24c996559fbb554e01609695a56f9f216910e977f769cd2181aa23205ea19b8e4b40231008ecb9aff1a79963fe540537c84fc124d731a251006b6f6c6a6ea3586ff2fbab02e0804ad7e24aa0e2a6a866ba3a8fe3c0302047c435bb5006730650230452382af62cd9319975eafbacc081751a26d91310e94b8ad2d4b10dea8e6d28d756231ab168f87c545bd505977ea558c023100d222c44360385c4bab5820734aec36bf9cbd6e57e4dcadae523b46b2ffaf2877da653e09365ee405c27f2122ed1fce900302047c435bb500683066023100faab9968041b0ce09a4c8800dcfab131338491c6621344456255765e580cdee6718cc30060939b28955dadb3296af407023100c3bb62f9b58cef3a3aca24794d68219ccb61bce4ab5729c86d38e1eeafa2a2359d813f2fc248b2d33483f612f15dc7250302047c435bb5006630640230702daed23b17d7755be9d62f39c84210fcb2add2bc1da596edc4fcea0993fd875f9ab332aee4b2d65186fef2e81f520002305f7595353d628f6205778fd3d21bcfdd13b0c2c062ed9d20dda4f534dfe842d665ede2ee00110b4be8eb39ae6b83e4a20302047c435bb50067306502300e40532477d0a0c079370756b08f28ebd4ace0380abef2a4252fd8568babb96ff2609dbfd1f2c25de54ec0e233980dd4023100fd9d5412385317a4a739ab7c98967cf9782af685f95a19ee8c7cb56081a3127348f2c22d3cbd8004bc7a1f68e9502a1f0302047c435bb500683066023100c4e9d6dc8d9242d5bbbbe5621c01e9033d5301b481773d73f299190fcfaae95d724fb80f26f01b5e01ee7f3a162fddd2023100fe93e63a994c8f703509ab3dd475f2e8072623797123b24bb1082db0653314cde693080d7e35b36187a3074aa10935f10302047c435bb500673065023100e9f8090894a5e2084c7407b49aebb72262232530f3590b654599075164342bd10f21996d7ad37b66c7d2abb50e47e8e3023016c9ed636e2a02d9bebd3cbaae2d3a15132eedfb61d9c8aca8784f1258c810a6be63f7b0fa32d02a9412a80bb8533f510302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b03f32b5a73ae4c317ebdf6f765be8859335e847498f0e46431b259b22883b4ddb22e2e264b7072cce6661d6a4136b33023029f4f47bed7ed97b5708a48181fba6738b7e9a29be1efeab0c012b84c1f07dd66cf6106d1a9feb24687b33371e381a200302047c435bb5006730650231008b3505a67c615349488e29cb614fd09f6f7d0efbe2dc22e2074f963b5e4d0f21a4231206153d1bab3e757f1f04b785f30230406d3debdb219f60951dd1b86f63230c9a5f9d0598b43183348dfe40a1d0d31f9b3964b19ce5898711a686ed0ea6a97f0302047c435bb500683066023100916ceec7caec34a33fe082db1f09bf09802790ed51283f046dc696a28668bc9435eb45a761ed45459c3ae376915469e1023100e700e6a769f82beea6924c565adc0e8d5b7f8a2f4e8f6ffb75e56dd6e348255184dc90f8454a1ecb14e37a83eeaa94110302047c435bb5006730650230753c2618498d41da8b29be85f16e06b830d1a59bed74bda98428f4d36745f0dd691fc3a780b4010761dba30985392dc7023100a894837d1ff047b3502aa2ac7d3a054f7718e741f274e089b378fecb676cdfa2236b3dabe92c797be696be37771357570302047c435bb5006730650231008e84755e51f1085f8a8e8d3183310ebd7872a7caf4f70167ef691357e7c5867946767dfb7e1428843ce5267c6bbcfe6d02303ad1a8502bc64319543db454914e5e6c25c28966564588566bf2fd6df92a8c8f13dd7cd397af997c468ae13c0bf260b30302047c435bb500673065023100db79a2eb7b48f26a4ccf7b0334cb436e6851a96f97f6480bdb0b7f2bb3f3688f4db6800bb1907c0a25fe11be03d544b90230084c72a32152039df4648c3b6185c5e011a793d287ccfa3294d32b7191f69d368b6baaf66a79d6f47d31ded0e27f4e650302047c435bb500663064023056e452da4da5082e96f12d705b546aa9e32efd6393e31e520ef4a28475569e790796e9921b800b55ed7fbadd623acad402304b5fdbac09c0202c942485521b5dfba2553a61299485ba4eecbf9e5cc157d002a3f53006b1bad4b891853ffe2b1399e30302047c435bb5006730650231009198a2d202802b5c5e2fb70814491f4bd9961cc677a7350e2ef5c1072725d0fa5fbd3a542a17063ea3f299dddf6ce61802300363ef4822881010a13d1910207626d8fb9b2983654afc90c95408b2aee5a19ea1087be571aec0add4723137a98f58030302047c435bb500673065023100c3316c28d9fcc7aa9f2b6fd43ac967db3ca9afdac2e39be5f910b7f06020c75a3cbe385772988d0977cd0b4ff8ac72b402304982dd49affd54f0084d92ad549979079137ed3c83ff29f7b58c5f7f9a88f26d923a47ba47c06ef6ef2177564ee4c1d50302047c435bb5006830660231008822de3d66be8796c319d23028f58098aa0df13b6749fb24694903be8e032e46fb000b095c73e8a7dc7ceb77d2f3c3ff023100f0d7243fe1436e89e9dde8f996ff76962bd448921246f578e6ff1a87e57e218f7f39f4b4a38db60cc9880d3b6a6bb5850302047c435bb500683066023100835c5a3efe25b998d104e5a8e1c70af0bf48e1f476805d928a2c1dd372e2fe42aabf500a8107685d1d6aea62048b7f6b0231009653651ec0d1affa0294f2fcedc3353d42e3526200053186c4a61e2b60ce233fce033f21b1a1f89b32c7e6439a44e1cf0302047c435bb50067306502303d9d2a9ad62b788e432c8d5cabd3a90ee4da93a2391bb06f83f1038d78e63e378d047abdfb8ea964f5d893c42e22177e02310090ca170953928ce2849008ae89744352fb0e52be84cf5dbf4bcf1d381cd905bda659fb862d10c34cc263fa2a5768e1ee0302047c435bb500673065023005ea93d20639e374899697ca09d8b40f0392d773ee2e7dfcc611a96d466c1d4c0d3093997ed0068893aca73b1ae8c5a102310086391777f9aed661061c6c09a3b3c9e0e43be296ed25442522ae36733a779b693e3a964e66b137989c245a58347df56b0302047c435bb500683066023100fc6a5eb9788c848323a1c8b67e25858bed8ac796940ef52998aad650ebe6c5986d1b1ec16d7d441a90c2e291e691198c023100aceca4e6f30c11bcd3b20c1cc3f08ceff8a06dc65fd0bf7b21185cbfbc7a0a347a3683a5212e6a0bb3bbe639f356fc140302047c435bb50067306502303547e668c162e513212180f85afeee8e13f6b69b7735ed54d9d02cfeab31cdfdd56df4ff88efee293871ba14257447b4023100ad31dd354558ca7092163d8e44c6d36eff50194240a0c5907ed229590da46e3a3c9dd0cf9a7018d1e48a02036258bd3c0302047c435bb50067306502304001eb7bdf59bd5e5167abd9b800bedae2a13398acc790fdc31a120b53e8b09b6641309e1bd165d1612fae27f13365b8023100970cb315105c63e2b1a7c35eb1d055c76ec68d1673d4ff40a0695b65bd08a05d58a90f785ac7d17ecda770440199ba250302047c435bb5006830660231009568f190c7eac90b5ba3481038ebb74ec513556ca36566cc4d8a9abea736f64249374043494f508ec85a43eeda6836c1023100cb13720f861d4372173b2b83155e6aa74fb5172ff46da50130e7c6c7f564416fe6d08648e14ef520e21f4832193d331b0302047c435bb500673065023100914720352597cdfc5d917190e1e00348c9395dcf80c1c2771697e2a05486931e4da3e523edbc0a76acddac0309b7d66d023064d427bd93a99f6954975bc6a13d13431133e2c389bf7f1dfa3e1a740368c1260d883e41805bb973b7b789492d38890d0302047c435bb500683066023100ac493dcac3d665e68ce7abdcfe97581593d419ccb6c665e5b56312918a46a556a4206276af07944810ff079d01cbc8eb023100fb84aad554f185640f0a962fbf69462f6b1bd33c1167f68a9ca630fd740d3364325732bbafa9960ad679f8099c44dec50302047c435bb50066306402302c78617b34af700dbf2a4e31625cd2dc546f5ce68f85831b651ad0439a32016c5d49efe0b52da5eb841bd424819012bd0230454186dcdb689518a571e23b3e28b5daad9b0c458983faf50a5f85e06a215f424f891c5ca22fd9ed1a3326d716da1a100302047c435bb500673065023100ac68dd1a8c0acb34597e6071bc4e554b0d9bbb9840201f7fce44507f30717cd84f189e0afd44ec2e9d6879cd2fb1f3f80230694cb6b167b7bd1417a8200535737c8968632203f97ed23990b8f836a5094d8295d42d44974d92dc15df9e89f27f97780302047c435bb500673065023025cc9e2323f689705899c6b10c53d2e52078329e07e351a73ecc60b30269636c2f6ae10867db5d340cfa54d3492da8b2023100c0175a608ba89a18baba3bd503939d0442407231ab522b2c546b9a39f763b7e508396328a99d7ba72f025035723a91990302047c435bb5006730650231009e104c791052c50b4c8821636aad2ad847bc7e249dd0860281d64e8da9a628da71616ce0801442a1a3d75096437d7cb8023068ccaed576f1bf2ad2e2c9157a08e3082e5d2b44356d3c797ce8a476466b88464979375f3946e6b739b79160ac8760a50302047c435bb500673065023003217a063501270d8ca643235e076a9703fa5fd640adda267508cb720926db5cbab67770d2a3926486868fb3130a9e8c0231008b806691dad229d17dd54e6ed632a253e206b5eac48253fbfd61f315c669bf663aa1a9f4f7f22c90cd90615284bbe2f20302047c435bb500683066023100e54d02d969bbd8858695afc435c9c1a324b458964d505ca9ec895eb2b43d3536061deafca7ee89d4cb4f18e911697057023100b1422b82ca61a0b5bc06b0a122d4b46463b5a4f6088b9f4ec5b9a0789b8243257301626646cdcdfeb47b40203fe251380302047c435bb5006730650230546972ed8ab8a69c7718573549e09802be6006dd3de5ae764400d6cabb6175c45efba044be8a0a9d455a38771959046b023100ecb15aab3a0d71462ccfaf37680a1ccbc7836887edbffa703bb2766f5b6aa7a570d5bf0b1260e5dbb1287e94b8f11fb80302047c435bb500673065023068d415748af2c32e1a71bd72f1fa520f4a2a00e47c3d729c4a1d048895ec25f438296708278b84454176e24d8c09dedd023100d265037304c929a6a0946a66e78a80f870b30da03ce1808372a7b9c02b9a6b0887cb395af352e2ceeff8ba2cedb8e6210302047c435bb5006630640230701efee475dea400d196c7140c65e72b73ceca13f8c3b299d1ebb2d80a8610531f344a1fdfa459eb8010064317dc52fd02306e9f0a2c6a318f927ea62930c84e1686b98e7625387dfa29c567fb4809c86b6984b9bd8e5be3923f2fdb462b24f2a7a70302047c435bb500673065023100a362c24aad22b5e049d5b04836b014e7c207f67d9bca281efe03d8bac37c2e3ad7befd8ed9747012760578030d7c096c02307d41fb2163290d57ffe61193013867ee46be12b1e881366f29711111d3e6974b94e67c905875055dc4b53f23cb6162730302047c435bb5006730650230546ff514c9ce290f48d5ee0cdcf3a28cffe5dc9fd1adab30597c66343614eaacb2f7db2f67ccb4af455c41a3dfb933fe023100d633adecf2005f921fa1b8a12215c2f63b5baf9093e3baa1b1817fb99ce397ae7c817a756e83de606c35d85b011d84d50302047c435bb50067306502310086bc45e20824f12d67b649c26f448878532a702402e379d7c3dd60b45577b6e0d5087ee6d638fc9403a10f3ec68f4e8e0230092742648f2331f3a53247f7dc4a2e60f500762e3df33869dd38edd3886d2ff21695db718c82712ccd52af1044dc94c10302047c435bb500673065023076cc76159c87beca490b7ab61bab0a0ed9bd037b48888833b7d5ba1332f48ffaa03759fe0101743b77d74658f93da76e023100f5d928338dbdca0f7909303155518180859889e894957a79efd618055357660bece00d5654c81acd73bf91185ad6c3520302047c435bb500663064023064f2c9905097c7d343ee155fc3ff1696c6a52bf379f3a98f4f72d5986081062585f178e501bf57add465337770df6552023044ec0687b716797e57535d490e805f4c8818579ae56633e0df7a8c2eea41286253d5127067d94f415fb003fd225896f90302047c435bb50066306402307e7041304f209814ee6381e0111089e08eabbcc4e431f047e35aa346c82f0b14b1a14567b4af5b23c208171a9e2a640d02307c1bec21535991b067641341333e4107ca37c1a0dcc29af0b9b03f61db1d706a26222ab9ca43f16143a942d7d2cf68180302047c435bb500683066023100a29359f1adbbb6753df9e35304475df19aa1f657a2e5d030f6d721751bb671467045f8f5c85669cb1af3280f0000a014023100d98f9012ff027480474375d34be5fd483319494a6ee9ab9930725252176564829403f4a0b111ea4f169620dd8c1c3c9e0302047c435bb500683066023100e898a861cb25b0d3240e37a9fa2d82c7d5dcf2e10e6b80f7babfb2448aab1fdeee67b4222539b0afe4976e2ca80e3a65023100a1da6e31f268fd9e124701b1262e4552fd7005091b75a9d3d815b47af470c5a89ddd8f03ee3fccb12621f1cb3ae16d5a0302047c435bb500663064023055b8ff619a81d03c363988c7db42de41fcae2b8ba0102f41979a33d4ff236f8dc171ecde841035efcddc76ee9506ca7b023032442718274212c954985c10712a72deea65b2f7746fd36fa21f25bb3b3732339369c87b7bc341605dc39b87812addc90302047c435bb50066306402306d00eacd78b619a96814d89a278350eed81180c736b44f3d922e9b009bf10d878190c179a148b2eb4696fe611230144102302f91bc49956d2e711aa748cdef420df16c357bebcceebdb9ef3dfbfcc9834f4dc7aa0a2193f93560ce12e8d9155992b40302047c435bb500673065023100f41e2e594755f581488ea989183021de0a5942219755f6b4e6e0b6dbb4b19225ab15079bb2567d616fd832428b6f53800230080b4d01dba95165c9cef51d53be084a21927ff46c03429efcf15e6686aa29d8901514285c4e95552bf939d7857f8b360302047c435bb500663064023075677582148406811b58e71de9d3a17f643364e4bc1710c6d58efb4813218388f212edb6887c18683dc95520cef2713d02304886871ac26c45fa6a4f3f856211d15f016c42ee8c5a2b84c81de36e3232a5fde0d7e3649d372037ef7bcf28bdc36a410302047c435bb5006730650231008ebb65b62301d0ab37d4ff9a800b8bf6c84600492462512a40870e653aa30f8af956bba661d4c76e9a0793b03820963602303642f47ebb5444eec35deca7598fcd6eb5c22a842adb74f040274f4706655c5804bf1fbc62d998f92804bda1e03a57fd0302047c435bb50067306502310087edfa30f82f5e9193fa6cc1126101bc4f4d0857b8291d271f703670f44de4ddbe1f66d76c01a4043f92c873d4977c0702301b8b185bf7ecce2a3626b68bdf56c0b7fc5ca8d4af5893942848be1a176c2a688d2730fd0e56f320d41b1c2023bbf39b0302047c435bb5006730650230713d43403e3fce6786ea30a99c5d7141311939694a812b2afdf7bc813c8ef7d0d5153dfd2c9fe22de7fe17a3c289545702310094d365e3e790c1faddb66fe1147a9ad454728b1f61250d8efdd3b58aa8431cf2b84ef53a7815966e24e8a3e8a833d7b30302047c435bb500673065023018531e09f40b250742c066bd464c61d46fc70b452ce86d29f7103713ece51b44afb303acc59c57ce267e6c5c22702483023100891e7b9788fcbadb20c2581989aa94b920d30a6a96fa485bd9dc52f7cee89e0e661881b03d83ab491c36da6fbeb4746c0302047c435bb500673065023033b1919ed6343387f829d0c0a41c9ab161a72005f650317c8e6674edd3811af53872d674b94711aee0ae51846e1b9eb30231009d3b006782396b10efb0f9aa0f598c10dbc65f088a5ff31e1019ef8df2aee8e5fc1cd7ea1a2c6da7348b153b84b3751d0302047c435bb50067306502307d80bdb606c119be9786943bc8f49c85437ddf7aedde823fb744836ae27fb38c9e650fc6df9dc6495740122d21682f8a023100c05357134d2277e7f6b41cd037b7ac4c8ba20f084ef495bf46917c1347ba54db42aef007c56ca49906200caa9b401dc60302047c435bb500673065023100a315e94d53a9e813d6f7feea37cc4d69088bb561ce689decce68490f2de25037f6bf9ac51c6e6a7d869dcf3aaa2f831202306e9d080cefb212f2bdea243d759caf8dd0913180be27d8610e517b21e3b88cffea3e1d542314a367e5c8e5abe12f9ea40302047c435bb500663064023011e477e7be4b6a6bb626c64e7c416978e65779b55cf340f27b0563fbc12235303de8a0a41db1f6fd84e30318c4b1595402305e50eae1364f014fa69a000970742bf660656f1d2e532e860e0efd31f75c678a78662fd01bceddd267f0370353d8643a0302047c435bb500663064023015f9ef4ad6f0fc384f158039559adfadec24f756f4a53a85f6265cfc674bbfcc14d9c473081937f8e3678acb69c4b49102304d02e7ed29eabef021a436a3b8338d0514b85cb6ae5558323b0178232e194efcf1caa2af7f86cbba85b2524d052a26d40302047c435bb50067306502307bcce2d7bd08c7dde436b752c0252900eb5dad22906590baacdf93e030a78a9f6bf92de19bab71353caf1091f329b3ad023100f76108620fce47181dc5ad509251d91b0ea5db5da9e5d3abf07ac722f38459693c48b50bf065eb323c50d64c694edf580302047c435bb500673065023100fedf92cbb084d6cd14f18f0ef8bb39b0f756cbb20dd16ab271fa6d35c5f64b66942b64498282cad27f59287e5be897f20230745e768bb0187373e8f49d9267ef2768476edc6bbedb4fdc13baee7aa06f08b89d14e14999be53364e81299abea235c40302047c435bb50067306502307b93159dc658effd043b552343ed42dfcd4d008b30b2a404cd3160d118d821ff000c2436ff4788f611d3f9ceb73643f7023100c53e0688d227d612795670dc88cb14ef40d5e2c721c8454bbb2654d6dc55a82c357bac05d12033d3228f54e820f3d8260302047c435bb500663064023032a9d54d8d5b214b83d0d80d6254417b4840284fca1ccca08054583199ec07e224429930f17a946bedcbe7b7cc13a9630230535682540d20b5f517dd8bd9a3880b330f5a0a762eb9bde9c1d54445199f9f34d88c4e8617f5862a2b2343d2831877ea0302047c435bb500683066023100b1668f1e101bb96b4de32139e6ffb3ddd08b100409f9456d070ee9b1d989cf05c77dfd1adf369884b7705d074a8248e4023100810bc21d4fe70d55f167f8816eb7204ee1cc7d4c7383395364074252fff69bd109f6420ac4c5661d78dda2cb86350f730302047c435bb500683066023100c27039ffa76a7ede41049a429f595d062e312d0c2cbeddd80f3916ed2b55976c22f54d25fa4c0cd5b346bd1f2155a575023100e95cbdf3e09ee08cdb926c4a06faafab89e4b9ee9472433dc435dbf96330aab542a4c318b9d8d1e0dceb8ef313b3e88a0302047c435bb500673065023013217c9de3ba0ce7dc9bdbebb7f1adb1149e80c1717eb28b2001ac46914c91a1fadefe2fb291b52ed4794488a5cfbe50023100d6de0b88176c3f0d7e1c91111ee6b7cd94806ea39c787fbb6b2604066ba9c925f06ed1cf8505cd90eadabd2299559b560302047c435bb500673065023071525b58124e0b690263c93323edfc6264c10e5500983af094ba112b98e3a346518cc10bafa62dd8ec75608ef82af97d02310086717f084786c20e11e107b302929276c132d91669314e21e4d6da3c2747f0b189778c7e0f52a05a3251eb722a3194620302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e12b6a3aa24549f053646aa60e0b3f094597a1120961a68829a29e2644ebcf397455ea7e5815ada42783a5dc407a2ec8023100848367525424f7a69293ff0daf0ba49632c17226701492f3acf93c3da1df98a7b3785261e2e21c20d4b617da7529be640302047c435bb50066306402306e1e1befbca4cd676a6f8faf01969e5d1c45a7c599f057e8fd889d3c00ecc856d52d2867d03162b5aa611de6a081cbfb023023fe6d3007d8193ded2d806d97772a17c642c13be93d0536bcb7259fcf519393def475efd6094be7e63b24b9e5c5e6e00302047c435bb5006730650230355f3b413a309038c6f71fe1140e2f3720d895a25b6093c01e9534c6e9adbb9bb095d793dc608386f844ccf18281a5c10231009f7cd93f9702edf2db424675bc8feddeb438220e0d12a01d4e0d7a0da516836b16cc057d168a8fd0b8bc294aea512cc70302047c435bb500673065023047194f7dd40b2313dc7e1c11f57fedbf8364ec78f1597bdfa8c4030946587e847e7ecc3dd4b621a9ab9c8edba9da6392023100e89dc86ea45f8f06ae56c028987db6d825e40e47c874149e14d5a59c492a7f8a5b6806187e7cf3d30469fec91919f20c0302047c435bb500673065023100c8a1ed7eb7ef3a8f477cf407f653e46c48902a142f11bc78b83d062d287a88d31e2baf32765f577e6f9a4b90c3186e1b023069d63265746e7d305e7d499a1fb2f83ec1fe42f179a66ef75f76585fced2a7f21985741860e442c7e05086c2ed4e064c0302047c435bb500683066023100e6cb98f01da6f6d5ac1d8aea73705a0d07068b3b93d99948614be229fd746285ec433d9b197f78620150aa12938a53ed023100a6b1005186cd7edb043448ec32495ac01b884b2f4b2b6689d0b8f74860786556686a3787cd89a05dbfb2200984ed14930302047c435bb500673065023100f7d887e774c483099f1545eda21dcbfc5328fc5ada4c728f44f2ead8227fd71292fcbb154e81ad82776c3dfc3a1bc941023063c7abde58a9d30aefbf45568502d67d1f043a4cd2bcd0427ae0f7f5a272126106804f29169b7df66fc1d7eef061ca0a0302047c435bb500673065023016f933108a643e6ba24d0586a462b5a46e28312b1e7a4b802f878068edaca73bb5bfda052c3d2857a7cc0568f245a439023100c212f2b137a565364bf0862c1d01bb2d5de65bef54e9fab525ce54ac4c93f7c9f3f72a41d6a3ffc2d3bd2637b3263c8f0302047c435bb5006630640230195f15920020aa3fc79c165e796f3fdfe7e22b9859e5b207122814970616bd5c7333d8d4b6c231fbd5ad19dbcbbf4079023064f4c59e9752295128dbbcc0ced3343449dc0a1ec22925776d9f63a2ae5fcc82c39cffb522edc86b807da4ef9a4127f90302047c435bb5006630640230397a443e98c62856a632d5f8f9a80dc58603666b617e2379db3c7550e11a8fb5f15dd8c42a2bdbbebad38a16c7c05f3c023012d7ea9b5b0c7d353015f9338ac3ff17541bc8f88a0a4e2804e5ef0ad206e1340cfed5984408cedf8bf95672372380820302047c435bb500673065023100c73f92be48ad7d72ba1c27d610f585cd0b0a99a117e41d36b71d050fe2d6a6b9e3b800cf701304bb4b35f655c3af7bc9023005bbbd99ff2c62b52844ce7626540a65c322f52d1b8e68f362b0f9f413ebcb954e789aa7e319acc7bbc831ea0e5b322c0302047c435bb500683066023100cc5eb33ac4a7ddd460a32bc9e6296b3606754c138c40d86d38f566b4d0e538434afbcd4871ad5fa536ccc619e039bdd1023100e8e06917256871dbea4bbd68af58490956c491be6ca6c9413879971b7df63a34bc8d650ef05b705dfca4df377dd9dfc20302047c435bb500673065023063b5915309c402137a15e54227e9fc87cf72ed0e12fc96c50107a00f7a499c281578e2151f83300a15bac6533a606a2002310094a74e8fce661b380f1b586334d38c71ba99cd1ac2479528124f481421e9a49bda27c9dca7e96fce130cafc62b4df0f30302047c435bb50067306502310092a160ef76c47ab79d76eb6d4378528fc286d678f15a8c2e094cbb2695f70257508b75c59eb2f18f44cdcdfd907cf36d02304d2e4b619a07defadb24a568f3d1f08dd3196ff8add7ca5505caf14116b1ecfff5a3fedd4c177651eba7b01cf09a02090302047c435bb50066306402307c0a7b83434773e8780f0d4aafa1448c8698928f74d236b87a70e082ea36967c5a87e84731c1c9b209cdf382c1d83cc002303355dcfbd50ee6067e2b940e0675670dd2bb8c8d33d9924da2c8b96d899bdedfc8a7a6a6b3e3b093dad64758fbe386f90302047c435bb500673065023013c8b883cdb0e85386b2e5f89f9e98f3edfc08688d5503d1cb1b4b0bb5377410d9af103224a111b95035fdda7d847055023100e52c574372922b18e71b608ecfd7a57f593ffff201ff3d75ac9b52c4919d2b856a569d5d7a5321eb855006c0ae2af7910302047c435bb500683066023100ead6d3d7d1e5b4220353c019e533463d77603a45cd1441f607a4c60129718bab74b3a7448731dfb97c2ead38e2689808023100b782b2f3ea49cea7600a1e326f7599fbc9a003d51c3b469bc7bb069ced0e00ed9e807cd9672b2b2ace4a9afa775e9f000302047c435bb500683066023100c18562e771113e1566c11aeeab0d73c3809f25cdd160eccda5a2ce7b4475230565b2db1b5165f873550f948e056a8052023100e7f4280372921aab6818f4beff9f299aaf8d602d834057b1aac056e5e2e47d732311d9354b6daca8cd163681ef5f126f0302047c435bb500673065023100f4ae3cadce5bdc3ecedfe10de4027ae2ecb07c11761dd3069e0045c8ef2c8d948e5e34aa0894e5075884c0aef2cfa83602300fdbcbf738d02963b8f0987dba7f2b7912c468e4f3e1ec6172191e97606f10ad145e0fe29846c82414cecd8a2e073ec00302047c435bb500663064023035789330ef581f3d294e84b3bd6412b3be1aa924339417e544d5221282ddd9387045e2d6172e901dd39f16b2d35e40090230127aa5083d941d84f73840f02cebd90e9f7f2e0c4acc06d8eeb65ab9951d8059b5772d3228462b35c0164420984391900302047c435bb50066306402306bce5da67618518a459dbc258ee22c1669318bf754435727625a3e988f18a71d232d15dbaacde8dc77311d5e36c2635702301e9df69fc78060ceb19a969c361543cd7d9954cd908292e04a7b3faf5b0c4a5d2158fc783cf2ed32d78f1c05fb2fab030302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023011f95297439979b88cb3373c9ff8c13f3d99cd90b1d3730afa1fb53bf4c614f8700676280065bd9a1694e16be7d529da023066fb6006328b94e7fac28ff5133341e57dfeffcfacacfbd3504f8b2d3b88363f4dfdc57ae5817cd06d6e038aabbfd6b40302047c435bb500663064023002ff8d75e1ff6dec219ead6fbca8df9c5b0eb4ac255598a955f1165c26c0b32a80f818ea2c5a860d394a0edcdb60f72d02306c6ff6d3621ec5aead09fad6d1edf34a2e9ae544bba6e641115ffad0644d71ce775475421a72f3a6abed9f1a127cf5950302047c435bb500683066023100fe3ae8bc3f67c65d61de54e607408020e8ca57d20ac2b9de98c2bc5dbd5fdac9aee6ea4dfb1b18dff92ddcb01188426c023100cd40a577b9c0ecd0588ed54983d6e0848074a55cf4c43744b56f55608d96838c57bb2a3e52ed02e1d54f549c66fe71010302047c435bb500683066023100e5f3eac13159990ef986100433c261189b4a903b60baefb72fcc5bde9ab740bfe081b087e2206b8f02a4c3cf0bb25b44023100dc34cb3f06f40d851f1f4a5886a865d486f8df9cb1ff0d067bbb886cfafb29616754e6f681789d5feb283aa249215bd90302047c435bb500683066023100f649c49948a83338a7a2036a077d589b5eb8dc8de7f684595f9a4903261e539bd1b5eb442be256dac39fa8a6e8b0c958023100ea67fb2602876263c6eaf2a643973a6987d859b9117f3610556cec9851d60c70833f703500fc05165d2f84bf5c1fac550302047c435bb500673065023039df1be0731a4d033ddc7f9a815aface767873a7bbc4fcf508fb0a1a075952d1d512c65e3fb08966abca11bfe5ce9b41023100aa7fd6791b8040093275e560824798ce93d8ae10accb35a9026a959452c8d2d906f908da8e7cab7f1a9539941b88baaf0302047c435bb5006730650231008d90c571f163ba6a3b8f7e98ba3312176434d72660c151882a9a83784cce31149375cdbbfc931daebc1a88cb108745e202302419dab3adfc69c68d337373df2756c6176ecb9901577594f0d9a1ad466b7e584ed80da87febf25466afc71e8a83f7830302047c435bb500673065023045a8fd3aab0d45d1b1b15c8e4bf4ad0ef8e8250929771b0438dfafa937fd7ad0c4b88ff4485327e9594e978a55f19909023100e072ab58b7e87ff6ea081748418ad88b3c7d70d2f6133f10ac06643ee11ad39e9da18c681fbbcd950cda5db53be4c42b0302047c435bb500683066023100e0c7187eee9bf8296c1b656c1ba82bf769c3e3e62da7a27129f0b62eef6dbbc9eefe432fbd1fbec3a65b6502e3ffc042023100de44053561434c08a358127d7fb41143b3688684edada1dab337ce5607171727e7c966becefaa14800f0b8889ed697440302047c435bb500673065023055769bdd0713da68de877faf29af34c530f52408c1e84d9772fefba65666a11f15ad9de217d30a787af8c8f4b72cbfec023100bddb396281752b961451f4b69c829f8655a8e26e733e59a6349e471b218a8aa8dad1be733658ff90ee511db208abf89c0302047c435bb5006730650230221aa798da2f7e2c501b2cffb4737ecda814f28ad1fba2d3fc46e50ad3148d7ff7f07a0b558d7f9c0503d2991d58afae023100f88d31c8046ce62f39b80f7161e46b4fe2988ee1506e7553caa1e5f8bfa2e5e40ee49bb49ba84068d9d525bd8a9ffa060302047c435bb50067306502310096cdb885260824a1c9c8edb10f2985a9a553d60d4b1c8ee67a1c86ea3aab921cc28653670d64dd4541405387016e33d002307b6e84c431a10590f45eb200673845e8a13ae8d0850293b9d5ccc30a430ccf0e9e04e72c2bb2e0f82d376c809bd1c2510302047c435bb5006830660231008d4672069916c5cb98b33865e725ec3a72bcbb395866bf8d546b7e18a9edf01f834174bfa805242ee3c414ac6fd2d9bc023100e5aa28cb2524d49c7abfa3cedea6081fcc08befc4336a1f08aba5c6585dc42c71b0ea51af4b3615abdaf4f0fa8a933260302047c435bb50066306402301a06755a5f10e127bdfb070f819600c6a36a9ac912693b8acb435897afc93150b7bd7ef2e560036ec90c537c38e33162023046b7aaa92a168cfce3d3f5431720563921432922fd4a52c1a31c3eca321e4dacdad4fd54027f6a7ff16e25b531cb73a60302047c435bb50067306502307c7495821bea24d7fdc6c81a72a64587338f46daa47afaa493c1c45f59a22d483df7aa62c69143f8441f61e32c79010e023100fb4c5c55ae73b38374f84cb3ad633af1713935469c6f18cae163201461da5a8ba8bb766fc023ac3ca0b0fc80b7774b190302047c435bb500673065023100bf80d3b8ce9c58a1701c4b01c9c0ae7a9af32401d19382f7933f902331a07c406ee76a2b1a94eff388dbb3130be12e2c02304c735408d268949aa603aec169ec87dc61380c8141a76363136ab668a538f2260585f405631d6bc2a8c7ef4c350312b90302047c435bb50067306502300dbc4a8845f00e6be647c141da7f95f1b8c72b8cbdd2b9718d7e6a2e09732d5e9294194793af56aad4dd55380cc7cebd023100d72f89abe48e432b5f1c5b8777dc2d354e1f7214d3f2426433bd1949c6e58569fd0875f6597df3acb9afb6611323f6f40302047c435bb50066306402304df2636a41adf627aa8586c123af8ffaabd2df8b7a73552dbce3d54bfe36adcd88c6090af06aaa4cb6c218054c90997602307560cfab71e3b17b935d8a70ebbb8c201f01539b8a10ba9160ad0c4766d2f45c4513001afab83c79f342b073e2ad656b0302047c435bb500683066023100dd1893c87ac57ba8d1cbe33c8de27b67c80f06d165225dae751611346984208ab634e509832fca65a66480adb45778cc023100d192e1a6175c077521bdee9d07af7b69e78757085adf8bce4b80ac0e76e7cacdb2f1dec738b7a96e5c344926196be60c0302047c435bb50067306502301d0a0d942ddcab998c47cf691a5f9acffa5b847a25fdfb181341dd7f3436eccd5a7a1bbbe3cd117d52505eeb68a4d38e023100ae66d66078e6dd69c7a84462bc7899074f80e16ad11ca1a303a5b33961bf7e6effbf5b24e47acf0e5a1b37d40afb56500302047c435bb500673065023079baf1b3979a90e6d9422ce2bdaa3daad35a87fa6106da13198787240ea2d2fc9535d8f99025eabc5644200bdfc10add023100a4458d1cc41fbddfd67aed6a1cf3019972760858ccfeccf99f9e0f558b639de224e87af38a3b96790067a593bbe7111c0302047c435bb500663064023024f476019b2a46ab9366659d491809f9b6cc31a2b99f30396e8fe25ef62f541488af3ede6cc1e43cb7aec410d78ceced02307939945d9fecacdc40807b09dd95cdb44701544ae79fd3ebbbbc198d94da80d2a752f0313270ff05ca7c14586284e5670302047c435bb500673065023042f695123c76aba2d047bbd328cb838449ca717017c7978e4c1df05c93de53b30cc43fcfda9b1d10740e9c3d1df3c4ce023100d31b2485104baf19f60519cde8c1f4249dbfef0e9e9abd793d53021ed729dda80f89296fef235e330e93f875b00f62ae0302047c435bb50067306502310081b0e1a4d10bca042e4cd661c606e4bc883fabf5c53ca2decc71618df110753adc71f38f8dc7c6d382e0c83b320dd6440230273856477711cbef1f6fbb1b26142f9be07cd6898ec10401e6c7fbc3b796f41ab29c69e276973496e2c0852c27a0e2940302047c435bb500673065023100a270309840ac6263b2412fe3285114bdfffef0e97b4f7a7d0d2a67e2c5f8b715ee82dfa0af626e5d614f2ba5e6a362c502300479e9ac503edb6966a8cfa99ec76fe4dccb0b2df5b2b02ea9832981007319894dec97aefae34f1e48524a5247bb47810302047c435bb50066306402303400b44115f14d0b4b0e41596e5403a954518af47ef8340e7d0a28b2d81cd013e99bcd6dc7dd2ecce6cac3a64b22ecce023009995e3d175ae71f65bb017ae579a4a85ae433050ba834fa12fb0578af6bca72958e529a20e7acf0a76562d811b002b00302047c435bb5006830660231009b5281428155fe74b7aae22a569d7cea4a840ff1e6cdf02dbbb539ad6e8607067d2b958127b9722426e23938dc6ab7b7023100c80be6b21ee85dfd6f1e86726da2b62bbb2587275baf951da482a0b1e5ee847e2b0eb27cc2bd3845a4ba027f187404c90302047c435bb500673065023100bb9290572c04d28fdd9e5708679dff70a47228e0a917a2b155d837b9b3e7adce4d8cc17b60ff92155b436edbe79b0dca023058477d9959827cf0182dab60168f0bd5785640fc95d47ef6911056d6975c02d6e76a4ef99037f525dea62d867fef663b0302047c435bb5006630640230600706d5e79f6019f523a66da7c3d646b93b65e8470e499f5d94ec55d8d97fe4183ebd5462c828172a7b7d02047fd60202307d5606484325095f58c3ace65493dbef2fa518f71625b23b6d59a456b1c1def875a916c2b8b86959fcbb24b589628b130302047c435bb500683066023100f73395557f2e95e43735bc51c8b66c246910ede96de6da6641a62a14cab2d5e8aa839af27a0b647ea9e582806e4197c1023100c08d1ab3d6b1a6b79240c144849257e4c0c2eecd4c160ab3327e3fde1c3899f0be20119c9cc753a1cf481997f6b4a9730302047c435bb5006630640230706481584019ea7f096212d7d78998bf864af995213b412ab9178ad727c2196f38d928a1b633708facf75c2098cd2c7402300f7ddc798163d385719fcc1d75b4d550dccfc6d4bc3f57561793ba111ea9e492c9bfd0acf6a71355a25fd3b4c100993d0302047c435bb5006730650231008e24ce1b7e2e53d0af113d71dbd05501676a55560380b9803ede86e7b94b90649d4af85f4fbe2870935bab6088c2fe3b02307a48a1475e974210f913f6c6c65a32f68396abb6ace1512beeda18befb936e7c28f47f306d1687b6fa9999a1e61870120302047c435bb50067306502300366322b5c30e902df77eeb19d3e824b49b439ae03403b68ee5ab8654e71925bbfa245efd83e3e03a0f44ca026439f100231009fe35ca25139fd34fd78d920e6becd9e70b304956ab2a7b8514d00451406a4ee93d5f913d7eb4bea08d2e6c590a5f7680302047c435bb5006830660231009cf307d50943fc0fbda2b305f4afa6abd4df383cd0cbe763bde292ded1d6264ce76f84aebe1bd1b0ec808f672ffb9900023100ad86fab0f86dc35ccef4c9a255f3d8ee812737e2eec2de9965ea1690bfdd75a964bae8dbc62ee692f7716e7c9b7622a70302047c435bb500673065023100d1f15f3b4117b2bf62e055a3b71ca4d0f9625f43bbe4f32d408fe7d3f0bdae7a7509f68b0922a4d0d54286fa43c30dda02307fca83ecc58b740c0b28eb26a1038846b1538303c64cfecb891ea423a349256824e20954102976d869ac083cd7f48f2f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304f5920d8745cc0ab0185d4c27a1f64e868a0b202c4081510b54a8351273a796bf4929832ffa8c92181553d39e8957f9802306627f1fd80f2cf5c0474726b8da620c34f4916bb8e3eddf9b1ebbabb5e51885076b8dfe11f93f8be7be9f4c0a4a472100302047c435bb50067306502307699ddf017573944b9cd01c8adaf1d2ef0c4b6a83043fc3c05ade04053d195c59b3d816dadead7df774c9e590465dc51023100a5cbcaed072a8d2b7fe368f78dd2d3399f19440520429a73445c1a842508c2dc5d522e751a17826f80afe74f5c7986080302047c435bb500673065023100cd4b85ca45abe757cac382d45ae026c4bad15452d353784c84a29a9a6c6653489660cae7ec986f17d8b2f9e418291b9d023075c96bd8801bb0c383b262f15217545fbe6b84d8bfac9f803787fd042e90fde7dbdc05276d4e61832acd5dbe45f524970302047c435bb500663064023000c6b665445cfbf015d84b61e44afd18ac48e5b16b5ba40059b69b6d5fa592151cc14d5846c5c7f051149d81ccc3b98602304a53d0bb008fd28ee3322f2976843a41bdb12d8718161949c5a361845edc1c7130d81ca65f2e7ce7e0494f3897fd5d8c0302047c435bb50067306502310094e30e36b03122055f3a3ee399e8bbf94d813131b148c917b4a73d95ba623327f5297c4d05f6acfb147c77cc5246c84f02300467dc2602d6ec8c1ced4e0342bbd92c1255bab51a9ad9749fa91c3ae175b9f64a229e1bf1d4afca04f599c07c110d9d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b0ecc1e09352c828e316a7a155c634c615692101de40d9ecebb232088aafe94ac7cd8f8a5788c324ef79ff8e0c16984e023100d2ff490980d073096fdad6f4e3b89e5dfd39b7b20cfcc6eeca365e606f5c92c73589385093d24dfae7c70a8328a2a66e0302047c435bb500673065023100cf7118f4ad8b9b493f716396c83bc0052e8e67469c05aee0c45c853ae6fb2242aca9e07a0a569effcd17e77aac74a8d0023025654c3d5c26eff62e645ad08869a3b610f1e274642c3478c1c69a3c2d9a92a06b06acf6e7aa3a3a159811dc3ff0850d0302047c435bb500673065023100b0ebf651b1c2b6107f05bdd343f2d27b11310b73d42bdecdc8af5805dceecb312a61d7e09b7c40590462d5f88117540d023022f226a52c33aee3c2f8bcc96e810cd1c42bf79eff8d4ff26bee186046032b7b41e9b10c1c81b816a31f0403c1e7aa610302047c435bb500683066023100ebc05b835e72fbcf67d5b3940c420f6929cf852fc7466fb451a395a2fc9abb7353ff2443b63166bf830cd83d30b265910231009d825e1983aa82780b1b79135dd0978dff37d0c39519f8f97faac8b0255bfeb1ab0944ab4ffc946bbdd8bfa597fe06300302047c435bb500673065023100818deb3459cea09b4d97ad033d3f13f56b1f5a04c626aa58f388ec5565af50a55249541b4118e3ec4c25542b968b0179023061545590fa84192eb5910c6b157fbc0e717709d98a1516b8e5bce89c542ced69320d114bcc2e19ba23fdb34bb86c2a200302047c435bb50067306502301aa95cacd593347d84dde5a93a6f1504ded6d6bdf3b2b2c5b0413123f324f99b07384eb9c9f915e7825755e11da3c91302310098b63aace9cbb6b762689acdf97311778353b77fac9d325a69b565724ac3fcac1341ac723d82e9491e691a85329a05930302047c435bb500683066023100dc9c34ea8411709bc905240f00b37c9c5eb6e1955cf1e8cf07a56f7a06860fd0a86c39eb89612dbb1dc3ec0219357c2d02310089da5f9c7f0995af8dcb9d01212e2ace8f4b19529007e5ab119d1abff5f83881771b9b9056cb2c7fac4a604c1e65afd60302047c435bb500673065023100b19fa53565a89575e2c9e526ea5c7165b56a720dbab03ca10f31d6a5b6330e11381d3ec4560b8ccde172630dca973c51023039a0bf0f8778367674db4ced9ad1c82351612c5338f6ab4437c3d9f40682c46fdc9a1a7326108e7f1b296a19274fe3500302047c435bb500683066023100e71a83a78c28cba199fe7b8167329b274844ec2f9192d42e60f5f14e813b3a8bf9588c6ecec73431e80f5f76333364be023100a9dc86d2c93a1277e2d289be84f3d6c0756ba4e17338a763c4ea1ca7fcfcedf5249e616b5b0d41524570a0198b1ca0310302047c435bb50067306502306186f51fb940ddd3532c1adb663c5db625ea45e21ebf106f2ace285a96dd22b0dc2c103f1ee149c4a9cdb8d4b0ecd0610231008427261ae461cabdff6273a5f0c7431d50cdfc85ad91312072b9b9a58c5977f3a686d590d61ad9a6e9d7d195f1bb070b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fb85b009ef92b0973c38cca424d12188b8f2fa8bc191c880eddd7d7026dd4ae031800cf6ba045b1742bc03c77edce61002307ab98c7d26584fd053e2e757b656f8c8829f4298d7826ca21a896536475b12f4350088742bc972ceaf19ccc8871596600302047c435bb50066306402307198a511550d8ee1ab46bc0578be81f05788e52abe1007686fe38e7c77511f8ac31491b930bbd714108d7dc3633ffb8102307d79ae551d77f40b7a7acd3f85224aceec91a68944fd4a57fd5d8980564bdb40df4dd90b585a2d2b098f3c949c645e0e0302047c435bb500683066023100fea3d505752fd1d1e41adc50c154261b5ed397e9a8700d05020465d4c664e39c79642a0637ce441984284b77425f5878023100cf5e354d42088827cf7806a5fbb7eae006eb236d5402505fa3c11b4d0e887a1193ee1ade74a011c21082401caf88de020302047c435bb50067306502303170cfe48e8fa93bf3eddf25ad7326ce2c65281801b8105bb6f5852477d394c414650e503f1c649a603e6dc457b81dca023100b34855ccb90cd66e95d703174972b71df814764da83d3da749395768b172ffbeb79a9edcd4748c0529ff7ad321465a5c0302047c435bb5006630640230037b0c9291791e1ee7e37764adf001aa369a4474c339ee492484bdf5c2e78624c545b99a8fe6eb6014c4d415e0c2f6c2023048964466ecfbd3e63a9195958a2d4edbf6ae105d9ddb4df2195b81521f5192a0414e9b35cbd27746bebe3ae0240c1be20302047c435bb500673065023100b9a95a5245e34dc492115b8c077c5b9339948b20290b86a9c131a3ce139f5130bd54c70ba7a226adca89c59c83c6cd1f0230701a6b84a21999fb416564215b95005c13fae7f45c3192b95e7d08b90f707043d4dc3628bd4a48a1fd24eb0db45b98c00302047c435bb50067306502301f09ef97008eccea52dee9730c9eed91c0e545ae1fa7e021b6f5721f37889b1d0c7c0fa7e008e4853a475625d9bccad8023100f59a856dd9d1168a7033490b6bd6a4f28397f67c2baa67cac6952325456a6e96ad83ef881621eca385ec421a7718981d0302047c435bb500683066023100ce4eff481c80e0244de380a0b8fe6e71968166d1e77ec8c2858b71715a1bc2287af2817eb8b00d01bc4e8d07757f1dca023100dc0a275b7c9bbbf3ebc3fefac97df8b6ee6430d31122e3cd80d540f451214e2c038d16683abf160fdf2fc6f1e2005da60302047c435bb500673065023100dd5a56ce7d9d4ef186743349506190d3e36e71d42b0495bc6dfbac1c1e69dc18920c745abe222bbf4ca5e0b0c7edd5e702305a1a4fb8be6ecf7f6a8730acd0db231f44b39bfd46a017550c953bbda33e1ae683f745dfb56e421787883e76464e48180302047c435bb500673065023100dbeaa89b2e7ed44cc9947f7fbada88959bb5b7712a8771cc05852dbd8a373c69e0874637c94c915582b776e8c1a460e20230012c343b22e70d6e9b1bdad96ddde16e7bc7d2e30209a6992083289570011fb2e7ddbfa27d9c74b21ad4f27e5ec0b8390302047c435bb500673065023100fc77bc8a75483dd75848c44cfebe97e1ca42e2957deb73968e17aa1dba20389805c4335e6499120712116e3c8807528002301a8002bfa752b2330808e09c45dac9d53b252e33b37597824c563317a4b485c481fbc3a25efef5f4220798ed7a27a34f0302047c435bb500673065023100a2c14d1c01a958bad0216b433b55e64616249f9afe71cad26d1854ab58984329bef0f56eb172e9dccf5f5034ae9f69eb02304d8da6d723d78393a7f41e468f1374dcd675a4a105fb2e0f2434fd2c4b0f505e307dfe1bd7fa9ba962477463be4882950302047c435bb500683066023100f1a75d4e938e22337e93507508a48b2c4d431d0664d7ae4069f44ab0880777cfc28c11e5624aa70976e84eebec3dbcce023100ffc25d12f55c56324bb99459cd275a45ee390d9e6cbc36abb487325691083ab45b1442bbff171a462d614a4515ed03150302047c435bb50067306502306ad4f5460eb77f2d521b50c7e9b7adb87b41fa918aa8bfde2233483c014ecf7fd35901e45784172a55c8f50711c0191002310086dbd8f04c0b27b19b5281785bf46e7ff8a5cf2ea39b71ab3fb9fefaa8845f4df4e64c6c1ee04435a3b3650190fe5c860302047c435bb50066306402302c98b23fd9d52fd69823212fe64105589c9e627262df86eeb76734d5d5feeba0b62223f45b42d0b8cc13d67e08428edd0230125ecf067609aea6797e5d8b17cf2ca6efc03e24addab7c7d5458690a7093da7514d76b75c2230238dd7ff45372a66ee0302047c435bb500683066023100b9b4fcf88c97a04fadabbdcdf563a2639ef1ffde262dda7f6cebbc86bfa8c1c64d17a1e2ca84e5c662b434a5d197422f023100c160be801b5168145527d8db419cc59c49fa087860c39520beeb8fd158b46a51ad9e302c789b48469e121f0a2df73a4e0302047c435bb500683066023100a5009b1c9a436bf97846a6a0abe6de1dfe5896432d9a8b46c541ecb7d1eedba5aeab1a1f955474929a6d6805a9d633e7023100be05ae28c5b3974a51a71375f43237326481f15ff7f00c0c0e4ad6751c2aaa6f3fcba6cfd6770fb3f5bba8bddf23a5820302047c435bb500673065023100e730888f52b34daceb3672c18b5e093f744abeba3c78b32673a95249f8de5dce71f333415da982d2fa2e871bae3d33af023017085971d539d65e1f3466ed2f082bc9f19a008535f8150b0c6aeda977271e1deaa7fd3d6818d7cfd1d3fd8597b78bdf0302047c435bb50067306502304a1c6053cd6e59c7418a0c0168e8d3b5d48850eeef40e7c69692c1245fe4664afcd9e5cceef2575a9e1acfc4e0b4d734023100c2d479b803d75f38da7c071e67125c4738e07c2c72732bcb8c78f71c5dead7ec2879e92a3e70750edfa31e4ef518bb3c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300651ef8cfb1f3ef334cad6ef087b61a46d63b3f156a58183389780e7a383a1e2a0377c058959862b5e1cb1d55ba804d2023100b1b371d1f94399d9a8e053e803f7cb6a3b87327b08889901b250087b6b84480efc752293d6791ba8136d0f8f8ae7cde50302047c435bb5006630640230233248915d4a58c0787a621fd82a286e09782ea07ae4e7ce184f2d58fd010a1c88a1da371d12039d550d7b1c8f0f2da5023015124b30a34bb776c5cc8de4a9bf18316e584d72a440f5c22de961fceab6bffe8f92b021483332bbe61484b6d16c80ff0302047c435bb500663064023051533b0cf77a710001defbd7f40ba400c03168c99abb9e7c91cd742f16250e231dd4e94afe6628167a4dfe72306060aa0230581a8a7d273d8b4a74cd8c5f362b3909713a73ac7acbec25c6617e8634a641de3a8fbb7938ce8cd32c4db9a33c93b0e80302047c435bb5006630640230791a47eeb407cbadbbd311faac87dc2d847699335368b95cf70f65e83fdbd7bbc1bc8b968777bab973a9851dbbe80e86023055a2884b6e335ba1f05abe3a0b6bd1cb4c093f0e4f50a00afcc9fb387399970fbc140885d1f05ec62895fa6d1bee678d0302047c435bb50068306602310093f5432a2dc92325ed6768df9ef8bbd41a6fe1776d667c35886d11a93201ff3407941620d74bb3c04579f327a677f2aa023100d14d938464811115060f489a2cff3bc7bf1fb50776e86622c4ebdb8b1b3a6cae20f3a95eb8a0ce8a98efaeb1925763c10302047c435bb500673065023100895f731d34b97bc077fd8fd591e592d7a49f8e54b8647d010470e865382c5fc2abd424e58df8031b83300a253400ac6302300af0e09bc1da4907eb796c0d42e7a8bf49ca4b2241be69f2926d599bcd747eccda0baaac0764f8afed4acba2e61212190302047c435bb500683066023100ff5290c283068669c4a00c2073fa53028bfc560024c99f5867c57d794cc139c789035c1f1e7f70f6f968ad4368f2607d023100c376a05fe656f9f793ed16a7b89425b541e55f430ad150caf5241a93db9962e296ae8be92a40307538f65b8f1463f46c0302047c435bb500673065023100ce67e110759d9c08297db9e3bdb121eb817e5715d03830d49771945dbbd9c4f39693192154decc83284f8a9b8dba291002306d6dfb55831ac2a61781b163ec018b3ec50ae2413751e9fa4bce7f1dd5142bf0af0f82a17cbef4473dadd6ed860322360302047c435bb500683066023100bb0dcbceaa190894de9fef51a2d93227a185b2fcb94a035753cbefaf10a5993373082606e59bd601b0bb596e75484e87023100a0210272698ef14825b95517f74ca9269299c6a77506f507dafd377416b97f76e688877d3a38bd7ce66b8e59f1ccbfb70302047c435bb500683066023100aa4651ec03426f21618fe98d98e3beafbe15544196ac37e398f48f7cdb7b246ee70b46cc11dbd74d8a267c4e59580e650231009bf30bf0dd4bcaeeaa975cd130c57379212f45547eaf8cf699df52b3dc5c3ae0729566526c5124561da48e72d915ee8e0302047c435bb5006730650231009b1af6c3a3af3b51e1b9552fe5cb067717182f632713910f0baef693fdc660c4973ddae09f5065aa1c48af1b6f9ccc5902304f4f9ff855ebf9efdbdaec2f60ee08f9b6a5d99c3f21e9f252c1eaa5316653517ef4408f179779d9a25ae99b959ae91f0302047c435bb500663064023046763d6a511387deff6601a85c51c9643dd362e27bc543f47118b843d370292f0561f73c8b23930f61c74317e6f5d27002302717d47b4a8049fd3975c42a61fbd225ec8bc103771ff83e6d506bf80c4f0d6be2ea59e399e1cc7127733afaefe13f390302047c435bb500673065023100e2ef9d1fb8e14a2281169b16e1e1e897ba65a6e23750d9396c059ad1506c694cdbff50f4fc1d468432b98d0212323fb1023007a5f002a490e0168576309b97e1d01925c48f68837974486947f523fe4132a18d6f74da0d2757ed128fddd10407e25a0302047c435bb5006730650230450134fbc3c11717fc0741b028ac6bd5aaf4f95a6a49bd296bd100c81ad994ae5ba8cc15f7d69ac8441ce4437743d5d70231008ab7d7de5540b6de4a447d3bacbc35bfbde0cc7ee057269c93a042cb240e61145fbbbe89d550cdfa4c17f453502f47d70302047c435bb500673065023100f6531efe7a456c1f6d7c15fc8d1813f5d3edf4c66b2d577e72598f98515fb856a5222fc12a19a45da0f47e1f3529c426023041d4690556ece172bc8e51928ffc03722a7c257a9a64f0d420869e93908d7db72f30a9823d64c4e620bffb0ee690e8380302047c435bb50068306602310099a158d5989dd82153a1ac1610a71429a666a4a68135825255f2e6c85b67a4d4dd3659ef0af2fe1966b6b4ca1955b97f0231009ec0931a8673d8b239666158185b8995ee3cc38cf990892645f1b4be7af056332e21aa6d219660d309e29aaf5a7df78f0302047c435bb500683066023100ed0a9f42bc7d265d3bce115fb60e4dcd2cbedc5bd5b71977e695f78213a6dcabf700e5b8463e6becf31c8cb1843ecb24023100a4f3117949ae988da25068db86bd3e1075a185b9a69651466183614ff623e23258a7c241ec11da5d2fc2bbe2f35fa42e0302047c435bb500673065023100b767c77299a443140c376d6b029a72d4e43c5341c62242cc6504cb7c0209bf9ffe06193072c57c139f5e0b9c150db6ab0230460c77536dab325f02fd00ca4daf3e08a5d0b121550e80b0399c6d033add77f50dc01fe668c4d1492c0cd356e90f83170302047c435bb500673065023100cada145bb17956b21d20d41fc883981420414a2956a19aac2ed935d66149c869f5c0f3c5c464f0f3bb0e699a2255075c02305e574f5a3e6daacc99ce583e911413a7b6c0123f69d8820e2bd2e4aae56be0fafabc084e3e66475eb55215e1b42aa72d0302047c435bb50067306502302a338ec3223056d2b685b9d5403af8ef09f23f6fa7bbe9aa63425fc9632ddd8af1bd41cbd6f1155b5a30748f41dbd016023100f5c5c423e450da58d52c9534565d87f970a1a94a5ae73c10dc0ce8fc3f3e8e0dcd94eeb63c05215205d2fb73e4e4c5e60302047c435bb50067306502310084fca189d24f3524e3373c493b03dddef6c5878d4b1188ab49f95310493558d3532c51c53290d42d68e68bd3d98fde69023066fa2c9c4b1fad96b18df7f0f3cce45af1c97095f9efeea5fc15cbdb45f38e7246f5a5353f6206c60b9948b41dc33fec0302047c435bb500673065023100e78990e753a852da22fce4fcd753743c8ba051852de75a6de4ef8c14859c7069bc58c82ca661334c1004ea1f0148a352023032b632c433fdbdc2df9e23bdaebc81104644a195654284f104d81da9afd6fc6d86a4d42ae5b3313cb4f70e2c17127aca0302047c435bb500683066023100fc58ef78dbbecb3dd68f6995e618e66e3f8b6a20b4d67d237b77ad9111582849bac4e945cb44eaf77ec6f5333aa2d470023100e5555749e2bfa769190525cefbcfc1a4e80c63d7161330f92465ead2a15be02f853e1f6bf6038b54e6c37df2d0d999ce0302047c435bb500663064023000cc08feab1ba88783fdfa30c994ba2f2915daef76e51fa2375f8ca1fa50b3762484611094d4115fccf083c250dda039023038ba6fc30971d1803728be00c817d0a6e95f378caba84a4696703604a0408bdf87b1ba4c1af2f68733a5d13c10d93e100302047c435bb50066306402303c2091a41d77d2151a539993d4d43215d0163b516ee67d5a1e14b09622ab726e209f73538ddbb22077514bb83edd651d0230488f9cfa78725020f52087af36e4434e726f0a44b2e136e71bdfa114f3d4f73f32d24fbbfc25a117fe49be2b9cc650d30302047c435bb500673065023077477069782bb98fe8a334cba1078bfcf8b5360c913d17823d29a9b9fb3c7553331f47e75a185942ff40ce874a90ac4e023100fcb3e89ff1d724351c63c735cac9b67aaaf1a20e42d22d286dc584f24aa811321b858e5ce28fc4d37075eb0c467e31640302047c435bb500673065023040b6f1e0286185b749d19619d5032c0eeeea622e162b649ae45ccf97e4a8a6ed422f1cf17038099b5d49f3f9f6495a4202310091a39de6e80f9046e370032e31225cc8223e82fb7815e55d9a79e4d8a8725aa23af6331ab99a201394f80002551d8bfb0302047c435bb50067306502302ed05ecaf56112a8b017378332f51d9c420ed1bb11df5ba523f47dbd811de38a3fdd80de5d0468728830fcd86be95c3d023100ff1a5cabad93a8c1b19bf3f39ff82034b612041ec7b03efac317694d617d1a7b72e6c8d3962131e437f81d1da7f5021c0302047c435bb500673065023100e85bf36d9bb746592d6aa7ab2d5832f2cd4b7c091f767e4e7c643172040a2e5b18157b930a2daec8eaa86a235e1e1c14023004195021e53124323cd734b00502672118480db77ea6f517e2042703199fccb638942404012228c02af765efe70e22540302047c435bb500683066023100a8df0ef730f9b0cb08202115f662fef8854ed48d51eec24949261ca07ebce3e5d65cbce23feb33322bdca02aa627f0e2023100fc8d6fd7d03da825791dc66e494e8bb44aa61a06d92ad94548798e89f0d9bb5c5f0facf68b67378d2b50e1beabb096880302047c435bb500673065023100ade7ee22ecf179ef8fc4c76fffd075729c6b2b2eed9f601c67419d006a396e58f792225984134714d719d76c54f2e54c02307c28c64780098c41b458af625dea0c2a3ef79fe7ceeaf27d52216e607cd53ff6cc3b10b7f0779df7d4d06355a6454bdd0302047c435bb500673065023100dfc952525825bde913ee97183ee2c1e07da6ec024a506a9a4aa90ad621e7b3791f030b8d5e39a2270b200642816d7405023074bb8ed2320735ceb7fcba40eaed4f60128e49b52ab25cd3aa6e2151c87e1c4e0be26947869fbf2b62283b9d280840160302047c435bb500673065023100cc21cba6226e49c642e77247745702db6b68b371a21643117867524f524b642bd7cb2c0725ac2e29e96803b4371c7455023036c38ac29ab2cb3acc29e6c51de4b7356dd3275939e36be7b63402db33dc231c7c6571085a70c756f0c1fc6f4d2eff9a0302047c435bb500673065023100a4ceb4a0988722c92c5131afe85dd08ce40b9398f92b6f8f3ac567c4d1aee06ff03b04ea197d41d9b6bf69e067cb014e023075368440626685fefc7f62415e606cfa53e01dfc621d5b84cee511d1cf14e1ac3156216d1ab35196791fdd5aac1aa0110302047c435bb500673065023100cd74e5bdb3af161ee8dde001296d91d4da4fd157bfb313c9182ba1119526f4750141c8573b1601ef2ff5fc693a142f7f02303f0ed0249fcd40a8a5a791d08c68e2861ffd5f863103c022e9baa3bc3fd8e6ee90af6e9fa1335c4905633309cf8009510302047c435bb50067306502310086849e08af5134a11fac9ae0fc12cda313e3abc534c151da543e400f22b6b9d5dfc23d2385666753aff7c6140598f14302307127ccb6062ffb6314474d24b65084bb9e8ad59a14250e7115ccb0edb770a5db4fbbb0dc5dbef174423c25be5ce049520302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e0e5bcbec1f6e9b1b545c209b79a229a5d36b5bfea2abd915d6524d6d9e463b6ecc08d21963280a82322e8ea09f2c1a0023100af3dd35c09cb37b7025fe348b8304374646a743f916170aaeb448301b3ca83c0b8e809af119f5577cf8a128ace56a95d0302047c435bb500673065023100e0dcc6d7bc0584495a9bbc2f84d9814e262aa61612d7abf7364efc62c0c067b47dfa808d9ae0058eab537b8dd582474a02303d50181f443e360efaa841bac31cd70944afaf6fb76c2eba6a3581d56cfe29cdc0300679ef09bd695ca1c16b660d13810302047c435bb50067306502303bd600e278d4f09421155566e1e9d895ee1bd1bc01506d4714ee2fea602d68b61448d0f785dcab7469a7fa3ef374ca80023100f99670bfa69e897b5d3ec240bc8406ddb91a5501e09755f4565e6a4963e49a5128bf10c7bb5fd157440cb0b96d483ecb0302047c435bb50066306402300d30eb03f38d4afd1513703ebd65b50c37afcadafbb7eb839979b9918526f3cecdce9c27796bb9055f8fff6666e098dc023021d40ea61716c8b0a046821668283fcb564579cee73712e7d7fd0289cfcff30389664364a64252cc570b541f3743088e0302047c435bb500673065023100f04adf723a04ab033241152beea19acddbf83075ccae448de37035dc06a1a21291eb70fe58c21bfa73219b38ddbf54dc02303f0e11f65ac0089cae2c1f7759cfbf3ea2335b217d6a725ee31b095b9c4e00e468b27e28f38b5e90114113e93c1d08be0302047c435bb50066306402300d29e60b6e03de391c87de0a06896700007f6d8ce4d63b9ed648f8a158993112a56e35b0e5eec359993708fd7ac08c8f023050dc4ac2893e4c630b31f83a49a8879f1f7b2158b7df10767f6e2506553128d472b2e271ebf66e82328b606ae9ee243b0302047c435bb500673065023100a4565fd125cfb07c5a06632e858ab40e56f7c71d74354b306b552b793f468356c5c5bdd1e8ce695a90682d9272f9041402303b8d6cc06c30aba158ffbc034359fbc7165199a2ba5fe06a50349012e0161b88179fe1e6fc8ec250390798871a1982930302047c435bb500673065023100887e55cdef7174c2215907b09514336f5fd2fb9c3e25e5ff8e601e8e3809517534c642346b95a757e185645559b38efc0230060f0b808b9b2818d86494857ff1616ef8a1ce632cf678615009e59ec425a8543833cf7ac7a697da640cfa5cd2c8225f0302047c435bb500683066023100e3dcfbda3fe074984b9b09f377d6be7ce8c10b3fda4ed9d1ca4440457cd5b7d726fd139692a5036c5ef46c3e6f2e4be80231009cf4123c09242604f1c50ff1528edca7d886731cc66642b883aa916fd61b1bcc88550c8e67f3482ef56beefb3fa453f40302047c435bb500673065023100c7819766b7d35b27ecedb2f46066469a52b5693891106e4d9cf836d1c3fae5332d67d2d070f95f0959779a2db5fb5c93023050b0126606a4bdc9bcd6e2dbc8a810fa9864e613d7135761be4cd8ea70f26e72d5836819a057ad753626a365133035d60302047c435bb500683066023100a2a15b4fc4e842ea86ada8a96dab7169e570ebec92577000b4cb669dcb583c8142adafd4bd0472eb81feb81149104702023100f73882e7218aea8419a9ff456d77b0ffc9058158668098e0d916aca794a52692d585449cdbf74e938c47c608f229d39c0302047c435bb500673065023058682f1052ea33f67d25ebb144cedccf226d999fe34a4bc618580bc38be835536806319e608f5ffa1ed85c710cc8a9dd023100c2d6362553f48d0a8c03e55abfb7f46531eaf01d7473aee66a73d3cfc46e798479f02f1562709c1f8e5dd91d91aa96110302047c435bb500683066023100e806b28cfb9bf907b61a7ba48da658e65a9628d32805b620fde9f5c75510ee9eb0421bb7f9471ea2402fb3077740c93702310098e39d688a2fd17a59afb9804be88ef1f8b1c4c52544d9901cf2c8010af37aae40b4b52863b302cb36de42a563f289510302047c435bb500673065023100cbcd91066b5bc8a4e19d6affa910012435e38b1dcb51232c11864a742999be9ea3f5ba69e067a306922a53c40921cc4602302e49468be4fc7dae182a1fa162135c4c0eea5e94bcfb13ab5dae6e2452b55009a33657740dcd13fe07f24bf14b5832f10302047c435bb500673065023100e5ea894753a4632c1c67ad7922368372b3629c1dba177acb7db6dcf41c2b981f29e83d56318774e9996b7898ab490307023024166593b1185506297bd8d77033f086834667e42f43d76fcca27a82cbd3a8b496cb6f901cf5b3fe3acb4e0d89fa49200302047c435bb500673065023100cfe70a3c6140328e0a4fb6802903cb7a4e0526ff62098828def6b796a0699dee10e5d8cf14a406d7c50a47765928585402304a2122f5e5637f4a2a1a098ac4ab7743845057985af55877af336fc26023bd1fcaf0f3ed1aada4a322132e6cf51095340302047c435bb5006630640230636bc0deee8483b597f95095875755b0cd6d8ef42224c8d23d4f7aacc90c3ef7a996d904e780a31f426a4450ead1889802306882dd27e96c97f61f5e5f825dcf29d15f64e133efa0a09885483ac6c4fa94b493e5d6be30ba9bd50cb46f1339de2e1e0302047c435bb50066306402301f95c0b583422fecc679c96d178643e2b638cd6574559b046c310c1e80f27710c5174ad206bef441f187fe3c125489d502305671a00a5f984826c48f5033273b028d4a3f684159a3424a3f3945e255477cc162029bac8d5758e482caa214c7afc8a20302047c435bb500673065023100dd4e2f7735b72d49e0c88ed39ab7bae38cc750c55a74eb760e809a8d8263e88ee143deba8e8817491ec76cd232613e1002307851e36c0c632e95cd524c79ff17b850a0051dfeccf9a8cffe421e197d7c4bc65b3270521e200de0a3ede69a163518720302047c435bb500683066023100eea9d66c1186a427b2b373e64081b1c3a70a31113537e35b8f95bbc2f3c8695643ef8aff399dd607f8786eb5ff2aeb68023100b43a342ce7b0b93f53b127079e04b522f62280b56eeb35cb848d053ae442a30587f318412cd1742d291293cd8b2639c10302047c435bb50066306402304c4122e746119c0347f9a951ae60ccbc86de71718f076e15011e956c02b498faf286030a84bb95893a404145133b7b4702303a865adc76efa4fa78d90a3d025e1f09a32d46a7b7a542d216b0e1e166036ecdafd034dee363a576e2bf0178747a8bcf0302047c435bb500673065023055544c7e530fe0b3e14da7d75fa51e2afafb5e89c3ba4fd16c6b8daeb5917e6b4613a01f1d1e05a020a03381e1fa4633023100966ddf081f3cb5c6ce82be8170e49c22feeb6059bb7147d35e07a3b046f37d2fc25b5c2b5c494afe914d80c370c55ce60302047c435bb500683066023100bd99017056300dc4fb86cb3ae0c438792436e2cff1b2aeb9aa7f50fc44d9b701fec95e5f8f51e457d30c6ff348e3bf470231008cdffd485d09f71cfadd0e708a524d378187263341fc2902999b7c6ee068b21b3a0a39dc8a1f2e28a0cabfde7e54f8870302047c435bb50066306402305c7f2a742f3286d44b612c3b21c990d13c6cdab43238b0fe78958bc1f1db997034f05d357f179ba880e3e90abc4d3ddf023008ad145102a5f2188abcca78e0b5f6578f52b02287d75b8662ce38570fa14967f82b2aa566417e370781c941d8b7dddc0302047c435bb500673065023054da65dd9912c9fafcc8ca634e1212a3d1540c59c12c7a8626b48802728cd272975e6e42e827ab276ed05f880e640e95023100c0a45c11eb3dfcdde85275157ceb429bf2d80d3d47e6f1d0de0a16c3f65ac4869dc9e63670c2bd7aaed06ccfe06b09470302047c435bb50066306402300fd44e46800a73a6b33bbe320ea28d790a172c28906aa104cb509095ba247b1b6d0a5ccab51c5d51141d95caddd594f302303ec50276f83f3038d6ccac7d86a64815b5522b4ae1e0aafde9bba7373456d6f8a82a26cbde7bd5e28e00aa2ef61823400302047c435bb5006630640230211cc045f95a7215a42b50574ff0082bd5c5978dac23afba0f6f5359ff16b5820936dfb4dfca042968e157b7a1dbfb3c023032394fe7ecbb194350a7345e547f47fa4261f8441004d3a5b7d0b94600e10db2bfa8be7eaf00b9593f46f97f676f851d0302047c435bb50067306502302560ea040daef1b532ba4a599889d3f07b1bafbce823767d7195036775437b646081dfec0e11516a832a61b1294c9908023100e5d6b23bf9556bc5b5046a3506326dabb04cc84123b14453a395e6e96d2e163fe73f593ef56fd0b5feeb06c42435f63f0302047c435bb500673065023100c9fff2c80bd8846decff119ebbb0a0a278ea2e0a656da83464e31c7e233c6ef7d574830581c6e00a43d0457e6e5315bc0230777d3d521f1406ba461ed40d24d9683424a0a8a13f0c42a91dbe0eab9caf44284ce52821417e72bf863eabb1b6e509450302047c435bb500673065023100a3102221c3f5a42a42fc1eeff5cf2b43a122077590d499e198f90ecd594fbcb42c2d4e57cefefc6c3d7a70a385ca4d61023063b65cf7b7e6fc479d5a4cff2361b11d9546e74a544c589d43a9f8ff5d596e579705b386256eb3ec4947a077651fbbe70302047c435bb500673065023100b65dccd30499c8a144882fb5d11d493b566ff6271504736c2bcf98c4267ec6428caa5a73cdc9392e4303d35b690a7e5b02303fb2d7808f95df3056debfea7d856ba4fd4dfc02ef7b73dd20ca6d659fe6d511bb6c59b46e65e3b844dd81290abf2c130302047c435bb500673065023100966115ed9b75dc21ccf9cc5f289db649314a5670fa4be1c33be83c913cd913041c422f1dc73d683add7288bd3cf23c1102305f1bbc8f2b1a14ad7d6ee9c2071c25f486f336c34b6919a196f05f12a3343665c7d0818bb838cb62adaab62c3dfe73700302047c435bb5006730650230645d0c013f8f1fb94ae8eb20b230c1a1d8b7f487f54ff173c84217f322411ca08319139b9d351d6762a53d870894407402310094b45405c2a9f348f4e229aa898177e3118a6d13196af5aeb35abbb34d67a8d0a1f494ca1dcfa040c82572a7c72551620302047c435bb500683066023100bf992f651c701d20edc250c13f0a8bc25390f5e1b4bdd8fa9af77a0ebeb754c683c04a399941ca276d8700b2e09d02fc023100904d130e9573351f7d0053d84f4a1a16f73e7b6a15174d3137598cab031b4fc20fbf9091b65f748e57fab5ba7ec0b1260302047c435bb500673065023100dfcf01722d67189aebf3a2f4c6ee2af2f68b7d0f3f384f6478cd12c180840248bfda80afd4fe1927ddb66f9191387f5002301b6af7374c85987bfd233466133d86b1b694f01665ad840deadd7769c73cdadb25acc0d9712215e7eddd21654e6b85680302047c435bb500673065023100f9976626eccecbb47ccbcba609b961d957caa89dfa3128cfaf0851b2669e824ec4bce7030f45352e34460b00da8011ae02307c5cf45cc1b985469a6003e9d76cf6e90c416cf72e16e7b6972c0565551f536cd93b88f00af14572b06c710d390691b00302047c435bb50066306402306bb74c99fcf9704a1f8202ece647486978fa36b1f5829ac0698e0103b7918e37af45fe96e0d03904708079bb4815fcea0230048010f1f2dd75c80db878c992621702189ad331f51e9f18a2080ae907de10694d97fe6d396558f7179b20a7e5a98bbc0302047c435bb500683066023100f5c17f3ae2825a06c63328b87f4519513164f4720d26ee0aa6ed7c303ae9497cf6605de316b69a7ea4dc60761447d2bb023100d620de26c5e795e7a76b45560fb62a944b279479d623a1e9d19a2947e51b1216e52922476c40ad19530e5b3cd4f9ec6a0302047c435bb500673065023100d8890dd3df55f857189d8cdbe490a099d26eb1ec190347656831e7ac1e3ec322982ed19fade72c13b4bd1706af435c6502300bc5e388d23f53f3a552fb668d9c0d0ece4374ba2306a6aaba85dcae2914d89e90236d27fb4477d859c5c3c4ebade8ba0302047c435bb5006630640230645051a153e817d9c6d70e1a53f789ecf9f62a0b84a2f7a1bf8c53e35b63761eb27e7454bc80798eda01cd19a407bc9e02302973f71cc0691d66a32c6c5fa658d367be5f7e88a0620c107a11c7934c55563f012f7b70a053de7e8032e3102f9ce9690302047c435bb50067306502302eccc5cc349d9ab7bac222081a1c9f591a61d06d6fb0d325025054c26af92a84214893d70ed8c3b71825531a6cbaac72023100d4f940da34d393b7293917d58443955c3d89ae05ebb2bdbcd00667e887ca7f06d574c1ea44f34b7b236a3eacd2433bdb0302047c435bb500683066023100adbde6d061c7dd4cc12d9683f54c4714314b75d52b99e9954f962efd198e21126bee104970f3de7fbbd963c3282e2114023100a001bb6b03c16d388c3a2eed8644d4d7499552c03f08b1448ae44c22a1ee3ab52424ddc9dec21d844159c3fefb40dd4f0302047c435bb50066306402303bb993574e98745d7219223518da8efa91d04cb60f0be9021b460431b5dcac8084e867779c5c51fc5b3690ba7591604a0230084f66e5cecdd6d5b6edd4ea6171941a02359ea28b81975fae9607b6d1cb84fcab378f3c183b9d1f9a4394f0c783d0750302047c435bb500683066023100f90977f51f87b825b121516e28f89d41afeed60e3a380c83a8fdfe45cfebe66f8e68db59a84f2a47edf3a2e1e7e57c67023100ad179fec0410d09f44361a7ff252e8a4c080fef8decfae034a591698bfc300e2e9bf74d109ebe27257db4599272879580302047c435bb50066306402300a261ead9b0e21b8e3483b8b0855970513c8bbe9211852a3b563cbd3d67bebca1cfe598b22e8944849468e5c9fae8d1902300f244990a6db34beec1e330afcff92ad604977976ce52a9d27a1e60466ef6fff61c79780efa669605cbf24c3a1aab9d90302047c435bb50067306502300df8de53646f2ddadf0e97f240b3c5100f82d5c9780509ccfc839171dc475c675ede99cb0f0abeffa1ad812246fa7418023100d419c9bdd1153895f6e63876ad572838e64050ab871ba11a1290136235d01d5592f8d05a623b95cfb58975a19c8d64590302047c435bb50066306402303b819da70154378c1cf0116698b56c9a8f76b766f790c7251d05e87d586222e0aae0401d4e095473d68d8228bcb1774a02306fa0ed5ab8c90ef849dfc292eff4079dc73ae6a2c33428c5f2e6f1f65688d0c265c49c0d0d5ff1c17cd33eb7a776de750302047c435bb50066306402307cbdccd1f6c57dff7baca30c263c0b1dc22f89afda8d2f3c3813afc321584f0eda220ea4306aa6a0d278021b232759ab023008ff4a13cf61f5a7affe46f4d4eef970a6c2d2d7e6ae54e1bffb5b237ffa6e8f17153e333ab2b545163d0d25b20a86320302047c435bb50066306402304e47f50ba0c34c3b37d6c22ce3b311809d42a4bdfc51038ded1ce4cd2234ddc8c9ad0e19cd8718173255107c030070b70230193d87a76e1a69fce559fa422f36281ccd08709cf2a90405e2436f47ffb6a8a0615c8adc486b1acf0b6b502fbe0b335a0302047c435bb500673065023100d41baf80e1a56fa209d9551b2778b8d14da630c6fc307239bb31558a5edba5c31ccdca848e7113b34b8bee8c1b7c7818023064b35b23f81a8a9a1fdcc606825583fd1ceabc8529adcd4e0a93108cc8c63f1c3788cd0cee9dfdbede4ee00abd9d81530302047c435bb500683066023100b0e72a6371fb824bf36717259b75264b8d4d98725945d5a38a62626925b2c7de70593f00faac841a93b196dbf40df6ff023100b16bbbc4f074e5ea860ee9a578bcd22b3412ce00612ceb11e23ae442010ec37b188042ad8a4ab2720780b22272885cfa0302047c435bb500683066023100db5b5154e76549dce9ecf3e8b414d1c2739aeab28ab6efd8c6afb4c8697de92dc5e0075239a0e1b78abc8f529a241b71023100f892e541baa266010dde5dcbcc475b48172bb826daca1e4272705ea8b420ffbaa8f2a7b19296e1730536dcbd20c0954d0302047c435bb5006830660231009c9c8731fcc56f29b971a1c9ed353dfff11c8c9c78b709c831c8308fa1864a5a0a1fd05b306fff27bb1c9af7f51d3490023100cf8a9b9ffce7b29185fb4df8744c072b4fa9ce7d5225af2050c8e997ccb6407bb0df5cea00f5e64d3e334e009887d89b0302047c435bb5006830660231009c6f9c152094c385897987954fbfb03d9e1fa2fffc7902adb64a6cc2b81fbb008b8b71d86c19b2f04055c2a2397cae1a0231008f829fa473e700dd8dc46ed8d716ec3c017bf30dd29fc47ef188ce9f7e0af058ffaeb42722c1ccf19bd88873946287970302047c435bb500673065023100bb766e6bb6a4151c49539e5ebb5c5b8be4d644be10e969a36d4384cd97e9d078725057efc4300a1780f510447c0b3ec8023048cba55feeccdf005f39007f447b5247dcb42bf7534acf09effdfbe430827bf5426810e1d437da2988f7c2a1e77074eb0302047c435bb5006730650231008fa5d0017a0f836c5e8905af2345cb8cb777f096d52bf177e528dce2100c1165bab5e0c67a1b28f9ac6704c63efbc6db023026e9f78f40ca0634ebf0445918e81799095a56540a72bf9f7de0b1cc4418d71bec10003be5b127892a2308e64fa4a9780302047c435bb50066306402301adc2dca047aaa154f2d9b0809e0b129a0897097e87148a9f887c2e3c7bfdbf5d66063caed8aca3d93eabdfe4d3ec81902305e6d91374b64e6064848a6aad5186662c43649ee993b4afbc226592233ccf9d4e3cf86034703748b4a45b9c912b321780302047c435bb50067306502307a4869da54878bd6e84440a36550856e7a10a601d7422169866e02ea25917b47a1d4b8cbef65c53e0957348549c25456023100c43c915759de479bd0c2cfc8e792bb95c1ebb594d231fd62f747c4ab03a0ed9024aff2c1cbcb8187840b2bcc7d975f210302047c435bb50067306502301623339353a06edae025e1b2a28639075fb5b9018a476c6418371f66f228916e3677a190f1aec125529f6bc76e9169ea023100c1e78fe8839b6fee0e95bb21d6081951ed22a264a1e2a68bba93cf3a467778ebc37ef5659ea0f121772d6f9faa0a6e280302047c435bb50067306502301f6604315a5b2e122e325bed331bd161316eae4f6060cce992b84f8ef06594ac1062f2a43a1d47b73789c7b6629b14790231008f50beb12540f45b90a8e8c28f40f95febbef1e08214f02b5504010389e7faa221c96297e69f5b992591a88e85a4ede10302047c435bb500673065023046f57e81fe2805870005c3c050685060620cc2988e0a5ef2af7429690e87f3296afdb3daaf61f385bb9c1476a90eb34f0231009a7c5c22c0e2996591166afdcfc52144d159f18eb9ed5481c9e1ec94e18702f87ae32d8f98e24871f5e86c025535beec0302047c435bb50067306502306be89f4096926a682f99a681301c5b2c8dbddc5ee49fcbb7074df8bcbb21b85106240af8d8d4b10c506f3044c5d124c7023100f107ef84d86df21134c62f63df2f32df3cd2d4fc85c034b2bee35e3018ad4b852955bc60f30be641bd9ff2f5f1c8f2960302047c435bb500663064023003fddc65eada35966208a346d7eb014b7585a0ab476de3c2fe0c00647e362f59a7d6f832985349903ad98a8f9219636d02302fba76d06f20efaf8ebe3d9c2df65705a3fde42aa3891d9346754e1bdeee687dd9a5e3bb8964b76cb5ff7cd038f2f9d30302047c435bb50066306402300f77ccb6497c141a452092a45f3507f1596ad9b34b6ae645bbfb5d8ffac45c9b16ac7bdb58cfe115cd8023c68be77f2c02305755746b1d9b8a225f0c42c28dab74414b17dd117b22d4cea4408255cbb3495fbfa8b32f5d5ddcffce775cefcfdae4070302047c435bb50066306402300a59279843b7bb3c18ffe0e56f7b904ddf81b471c734a6ef249772e32a7f0fdb7a8dfa4cc65cfafe0afe3680bca79eaf023068d50cae61605a026d3066273f8313e05c9e33c42c9f11620369a82954fc431533639e109816b50669fe0fbd333891380302047c435bb500673065023066c31c100b7e45eb0b07fab0d1faab83cb1bcc40a0ef2abcf593bbfa489eaa5f8a1e989117fdb0b6d4821f9ecbc19d94023100ddff2bfeb92005acc66aee320915ca18afac41945440538add59f7afceb6fb2043ba54d2eaf8208055d171512ec41fd10302047c435bb5006630640230546690249774d42e28ddebd76d486c4591a1ef5fa13040f34fc2ec23049821c56f124f0021211e5537175aea3166a29502301bcaa5920e3315f62edf7f49b4337126ed1fc5834fbddbb5efbecf4130e040cdc573412734cb49740ef4509798a61c6a0302047c435bb500663064023062595fb3561401f26e409641545129a377f520c45e951e2ea57bfccc3e6233e4a7f1f3015af7737f8133fb7997ad808202306b320e1926ca631216a676073fd576e0178dbefefc753fe40bef27eccd7a9994d8182989b7e959b2d1b866e78684acf40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023002e361c2c212fb374f6248d2d39e34e9a317db67f73ae9a79182010ea8e020c91774ee9159be8542643aa2c5daf2133302302c180c5d55597788672852d91049e8b359460ca89aef05eef297a0dd241d19f87907c763f8736491f8f7392e25642ae80302047c435bb500673065023100fa7b04aa1ced74e568183f2b6e3925628d4f030af57a283f2c7a15319af6b65f29ae226fa7a4f94fcbc758afe92063ab0230194443e17c01b7541f3a84b2dcc1dd3c782c9b8e5c90b1161ac2cbda79f59a8a59bc01f24f4a761f851d3b6f69f53fa30302047c435bb50067306502310080b8b4970e1e685b0571b322224ea7919f5a3c35bd5a7a1584429ecf6c2a592b318d506ab3464735fb4ec0bdce76d4c702302b429dc9b47f8d4a0b40894732d508d53be423a93a71d2471b200e8ccd80296ce99a147a255112217eb57e680dcbf5050302047c435bb5006730650230310befaff006bcc8db193400f6b474e587283a9e6961d2de62f994846cd2a164bd9beec3bed39416e008bd13d3f258b6023100e02e3b8d6c72856f09fdea2aa3daf43c3081a0658ed6ef89a41696fc7ffacc07b6e9857af465161f6e5bcf2f8767e2080302047c435bb50067306502305f12eff1ce03b0922b1537b57f4ac3838d78cbf75bbf78c3136521f3d03b2655eaf3613a9594850a3d80ad30687f173502310099565868253a91430d3f3cd7afe2f1d1a2ee94cf11b63e0fcbe3c548b16cb5239393c89c07bfb2747af505c80b390af50302047c435bb500683066023100d87f24dff401b093d8bb0048b50a77ec9c474834074a2b6ee4708aaa91c071e16ba972a36be443adf9ac8f3a037b67b4023100ba347ad9c91d74328f516c0440aea6a6df95ad21d77b60a329f1bd0ea11ab65973975b85e942dfedc5660985137b41fc0302047c435bb50067306502301bf160d383635c7cf27cac435a9f15d184bd1334859adcb4fa2a0876140abdfe74fae213dea59de8bc020b79e7cb3787023100ee0e4f7fa05fbc424e2a3ca7de2fc5563622eb3d4d55c2fc3a36bd4ad859ac71f9ee07f5edd6bd8caa7151421aa602d80302047c435bb5006730650230515e74e0469b8e996c8e392ee91a3f2edbc6e0565f473b7a8d8e67ef7542efdb4ffe5e458721470a0c4f95634483687b023100bb156f28f04c815a4bb6cd4ab50fd9d12b0ef41fafc61c7120d3805ebc6a870d9530b8baecaa8203ab590f08b63146270302047c435bb50066306402306587ffaf5cd7ffd60b757ce728e8a24a8e7a95d2ad401d3fbcf9ef52d505d148d1c9fe4c9defb47ade987970184f840302303154be4dbc49b2a7df15421623c0cd45d3a362c409ab5ab2ec63b31011ac55ebdaec293d979d9900410ff7e7a0670dbd0302047c435bb500673065023100e46a731c9472fdaf09ebc763f2097519d6965effb3ec690972afa89a1345fcb780cae728190235624dac39016a04ae3802305e73f16f591c54fb7b171bf6f879c0067e479d632220aa6ebf16dc268eb191f2e1938937776cdb097e0b83e5f01bc9c80302047c435bb5006730650231009cd92a9af7760daeacdf2ff6442acf4616939987593a5a01c6f613970f5274beca3fa8cec4b2a59476968a214eb9411a0230528d48ff0e04ba49c12c74c81ba55a518ece40ac1bb981b5bd4a0084e8fcb61a7fc44c4ba6755c95d7b981f95254590f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023045e568c9325c717a89751d047ff515a9cd6126eb6a4d14446b7b73e4fc1147b965c5cdbb73923306d07dfbdf9caf294102302ea6d67344d8b614ce65ff39f01f8f27a254ef98ba2f4444ea0f4b442dac65e4f3cfcecd2d41c162c262649c6831bc0d0302047c435bb5006730650231008b3383ff61792501346e71426ffdbc85823956165ed631ef7b518196c3be73255f20e8ef48e1d3c924c65996034981e202300375c661850d9b4e26c56323fcfafcbabfa03b6ada3c3388eaf46e5a8205a15861d4a807654ebad7976a8590c922e2240302047c435bb500673065023100f85a04e618063d4a6d018429528e1c1975d3107cc15851bce39c3d613244a0a5be19bfab110ebb0011acacc5d465f10b02300ac7525e371731ee478291af68d2fd842ab27b91470d9a32159c35494628a6424a0839b7cece40521804419078dab62f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bb5a69af36f75c5b71dd61f4b3eda2f94b5c91a972224b9bb3e380b5c769b299792d974c7b51001a9454f4e8baddc1070231008376391e026d00a3a8d351e37f35d2ca2b2b6f3d7768e385f8edc34c2e93268fb258d7c1bc0b3193e3928cbac5f3c7bc0302047c435bb500673065023100da64f2b1b3c6ff229cd3b42e2ab25a555efb916d73be48065884122f5b37fe1be1c0abd1d8ee73a7535dc6233618e13c02302243850e9974180ad01de04218cf6e6fd4b77e73317a1fb09819fd5d0602e9377b6bc67b14c38d159a758243f41c9b2f0302047c435bb50067306502304b4a7df9d372aff393e48811af095c4dddc07c858ef4d9aab8d5f68016bb26814e31bfb9254850306ee67418fb556b38023100f7fa2f5afd97a724561caf1f04dec48af18f735052135cc5a3b3ea3355fd8de0da566706baba9682f42ad57ba7ad6eea0302047c435bb500663064023023bafb72e2ca076e651281c99d0721324ba8ce1f51f2180131980fb85d287b3052c0edbc719fd452b8ae759107d60df30230567cdc1e40676a0469b67e8f33f83ffe52ea876c55e41bfa0954addb3f526221a662a07db2a6e7fb4c58718d768100090302047c435bb500673065023100e0cca4fcca1f3c01e9a80b29a04d036085fc28d1442b654380f3ba88dc99258415e344414c1d0be6d6313305f6b6ab2e0230160b1af1f666a7b2884e9f7428ea36464b440c325368cc64229516a933d3dff2eb1b16fe46c26e5a462534dda83972cd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305d29b4f5bf468e1cb70025c64b5b6012332525a6dec5ff726795c680548badf6c546366b4e940331c5a741e751d7b6fc02300a427fa8c012accf84603f647ef10f8f9afed6bd2d8a6adff06c0508cffc52868f4edd61eb7a0b7fd078c4103d9862be0302047c435bb500673065023100cbc5a1e80f1dbe9406f5d4f86c83df48cf41229810a0ef4d48bb484384f1973ff5ab47a6f1da452d2bb91eb6f370a1d20230631b93a545679f1811711156776bd80766057ebc1563aa1dab0d5b89cc7a00ef8354351490dcfdd1101748b1512635b60302047c435bb500673065023100f084b5dcab4590bd0878c7c9655ac7821953cedc12c9d0a1ce59d5561b819dc1e3efefcd6de4ea31c9817323fc0a45a602304a0956b3194ba1a90f7aaef63efeb2bb7fcae390f28f8a8d5a7307b3988a257a1c38a431703cf128e7f2340be69c3f8f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306facddf7cdde8c63f4481c004159aad955bef16bdff2838a5464d2812f60772405e8113dc0f3dc82820adb540f5cbb31023013f166a37c2aa69edc3aafddb7c6926bc93a8f7f388b410cb5b7daece299f7815537a62c1573799e0607a6de7e642ef10302047c435bb500673065023100f1f45ce509c2c1c41b108b9a4a7c4c629ec29f5f33eb15c50757139643eb8fda239002569206c4951b72ba6ecd59a73e02304a281df66807edd3b8e70921857dffa03a29aeb60f1cf614530d950fb2ea0e709a5ee2dd7c38dcf9d470b714bc462d580302047c435bb500673065023100fdc774a8113dc66c0bcd2231babc1329729a2f9e9188e906df5a2bc028a6ade12344d04fcda3949fa3051ad47aef64eb02303fd1041714fbd32a8566e110e1e58794eef0dcea13fed06f1644ed5a72345fa3b7f19df5eee8e2f5160ed2d772e6cb940302047c435bb5006730650231008f27cc5ad560e082a76f23f78d8c189ee2558df653f4982baeb91959b7655d2b3a7e32fcdfe08995f59411f5299675350230071426889cacbba882bb8cba917e20764546979cd78b5b2a8bf6e550f3748d729a6168ee34046b3a42225b72a89810790302047c435bb5006630640230202f5a4aac12e0077c48dcf16f218e51d9e75f19d846131e97260f4b3b2d75abf5ced2e2dfd2f1ad7c404299d52107c1023056cdeb1fb139b53e89df553374a1f812bf47f21c4add7acbaa5aab99a6099725201ffc021abe63aede745ca1b29ba8950302047c435bb500673065023100ae6afb47e442cc4699d681ef0e61489ae8337a41018d0cbc6fe25de8e01d26c12a31bda558cd1e9dd6c9caa456ad5b720230599b4005e96ac36ef8c5a20320abcd68f1650f363d868ff5a9b9250021b93b93ebc3454500d1806dc73cd0d78a89a66f0302047c435bb500673065023009717d93ecf27247e9368255bb160b2153cb834426df2050b81d65f5c44be17b9865c3b300ff2dc33c0e0ef5fafdfa6d02310090ce713396c4ba9f4eb3d7a5044c026ca769fadbb3d87e8f7162c0c67712a91372e721495550061e965399b11f5e01080302047c435bb500673065023100912279870b5eec455eb50396174942aee5d33bf8e50b54715992e4eae0bd546ed999bf8d4a09a7d789d51f78dae0df720230497aef917cbd99c7ef13b71f3e4510cb92f1c61de8d71a66998135a9f42947eb9340deee885175b3a31e9236acfdd7bd0302047c435bb500673065023100de96b8288c31c36d60e4867977d43a7b0a7b41d5d18d48e4097df5f95a903846a12c8526433c7ebbc7dd660befd8c42402304ff4fa47dc5d8c199b72e776963fba0f940afc54a440d58d5a08203eec94cd5db585cf70dbd687e7a0a2bfd7e2010fa20302047c435bb500673065023057fe8fa6fe4174d36501d913e727702cb4e0a4554380aa3d331950ee71432aa43b724ab6e12e3061cb44267473cc514a023100da3d6bf0ab41dee6482a95c7adcadf65ed1cdc7a575ee3f101f2fdb37706027a5b7f8ca702d03a7f3f2ac2d1494808fa0302047c435bb500683066023100bcf5d64fa3c662409fb83afb0365f27bf8ac601d29c37103cd79b8aa2f47cd33ed6f7a09c94c266e722afce02bd39ab5023100ce825a1794ae61fc14b95694246ba21c3ebfbafc51ed3deea464f6c26a32eeb7ea3867ef9036abd3056de4c510a0d3830302047c435bb500683066023100ae043459758dd8f6ba0fa1035634940730db70de20185728523944aae79fa14d38894a071006d16117a6a062d57b2ae5023100d5f57c96384f30e9718173d499e4e493c296b6d90ec843552e2124d5866aa910765b2c5762f2f9b938107d0414cb1a0d0302047c435bb500673065023100e90c9e1b47859c703401debb587d5d4945e578bf142189af05d2560f0e103de38d245b888c24785c6b30f39a77fa19b30230685c1e41f66b1e01f63b489e09d7cb29435b2159a13f5db28f7b04645e6e77d05896d721939eb99766b9d6e22f4f391e0302047c435bb500683066023100ab74583d57009b999f5429337d564a3a8cf52eb6d1bf5e1e8d97a93db463df894a140659636a9d6a0693eaf05d570335023100a2c3a6cada4b4a992c273aebd42eb1246ab57704e78b995b89ca7649ad8670f7d085c96c32997ea9ede5fbf5e0ecc1c20302047c435bb500683066023100a7a0e8f4ba2bb8de75af57d889c1049aba1536ea566c6b19c9c15ef650fe0538620cb0972e598c39df03720f6c1d687a023100edcb176d584ba29b1337fafea14767c324a5ca6bf6b0ca501acd398feb914c2bf76268e43f4e2f3d06f29952908cab1b0302047c435bb5006630640230073e98d813171469a296226d913e8c834fef766897e88474f934e88a36da1121ca813eb66e04796fdfebcb27e028059102307123b6adab7ef467e9eee87587a58284c10649f387ad8878bf173f63df3e2047f5283d292b05a74c2addfc0e8caa155d0302047c435bb5006730650231009d164ff36ca257deb577c74a151734050f71264bead03bf40cd991d3615b72897472159bf0db6062c97d90c3917eba6b023038a2859472304fdd1ef47a583d7fdfdae66332bb88c6941e58540a2db06ab5db0888e5ccfa005e7e655e4ce06d47a2020302047c435bb5006730650231008c466e4c4b79291892e09fcff2a910894d3bc385c09eac4118abcb65730e017de856f3b7d9e2192af39e98d245fe5cca02307945e03e6da849f1f313f67bc8e1489d44ef41d99690c40fe8147d9f2b57e3967957a2596355b62e88e68fffeace80610302047c435bb500673065023100b3ddde62ca9da95f43a0901d427bc20c526759d892c9b13488938b610f7142cd1ea1092d6a9223bbe425f65a0c380a5c02303d7a8606c57c39ffcd9127653ca87c3e7a1f3f3d471e8c2164feb88e86275506b6855e240b1f7338f03191fed5e77d450302047c435bb50066306402301d1b942ca257c4bb9a191a5c82daba99e22e4ebc4cb02972d612c1bc345e1728a5117a11f6e32eb84eefe082e0e92a8d02303719e8feb178616160292a947ae33b780bea0bd0a447af4269632c66c4e5b7376021553e1de5669711cc20dc0d8899240302047c435bb50067306502310085dfdb99390b332c6657808690cb1602e652a4a7417ed0d3b352a9cf4696fab1dc77fc6c1eebf302f2ddf491c74a6bb9023013b6e6576015dd3afd74adb4ac1ceba424cffb18c5dfcbe686882f91d0ea280e5a1034ba75f6fc6246e505d74705a3360302047c435bb50067306502300d10bfa3cdcc6930f5ee11c30fbe9380bbe3351fc41cb365215094e25f141a57489c4ee15c0a7e02fc2fe67ec941ef3e023100e00aa01729af1c11f35f2e8f31ee275f09f1e212e0f288a3d1e1a7c820134d394bfeb5a2fc57b1a59023f658530c6f3b0302047c435bb50066306402306a2ea4b8e8ee006ff4380a9638595fb4b5019a8d38c3ddfb5f9e4ef022cf727fb31ac7b759a6458ff886d2030da1705b02304b59662145a4d982b53b3a8e01fc6cc6f5b3312e836fc43745e7b3229a2b0c51a5a2591be1c1b3ae6a7e27dbd4c4b7f60302047c435bb500663064023077ba8a73c4058e3058556bb87125ef9c89d4c37562e55c28a31a6db5396bddc2b8fc478eaf0fb5ab37532a0d9ed554770230517a2f4f398ae4d514615468ef3089d8c0268f0a842c3844545752d463f6eb06b49d10dc865f85ec3f66c7a8eae24fba0302047c435bb500673065023100ba2e40529b10de2a1ce84f2c64031280a9fbae0a596d47f095068c24fc3bb967a176f0da2db98324de7b30253552e74702307bc3c10dc20d74a28555ce37360b569051416663f1ceb621468859e89ba28d2839d0caf982a442bf5136c1ec2bf8ccb00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ce661c697b97f0c89da44f3237b95174b5e2c2b008eed5fae40f9f0743027de0d3aa817b1fa5de6769a312f486e8e9c8023100ef99b01d3baecf28899b0c361243c77ae3a6e3f5ab566b2468f8e000ac97f2f85903a0d5bb85f94dc143e5af2c5ef51e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301c5e38ae11ab0f284a18d91e2bb67e669b755aeecb03975283b75c945a443a9a400af685f4bcb9df7b8f303db507226202306ea069abb2685848e67f369b9abd348ba93c6a1eacd694de55028479f65186b8b2b363ac0d7034c89df9275dbbc903400302047c435bb500683066023100b62a726562fe12f07d265cc628ba40ae1eb3413dcfc64b5e118115eb4b947e82993185ce7b49aa6f124c2af46ea7a3e0023100ca94a400d4c7419a982571208cd43c709517862c15ceee26cce5c95d411334dce2b5d70b3f0761279c959661897e5cc50302047c435bb500673065023007a35812e5c0dd4428ef42ef9577881d6a819457b47c0c365c91ba6485ecd136d30bc8a8a3ba2928e4310706895f8e590231008cbf800c0642ac7c13898cbca9ad5b252bf52b94688ad8d050920b08a6b509f7d65c5f1fbf918f2c4edc5945a169c3ef0302047c435bb50067306502310084ebd542938ee80a32f766ff2fb100225d365b6ac5ca63668b81d9dc124fd6ddbdca458323e923aacf14b7af918989d702302be6bfdbf28aeeea03ad23d0c9d2a869b81db5ab920adfdadccb6013d51c79ee03943ecc58de6092dbdc48ce0b06e10a0302047c435bb5006830660231009b2e8122233492400d978e157c50aafb4707c4b421707654b2692d4caef820846db55aeba16fbdf57e06321fa3756bdf023100f36997a77267b5ae9b1e5ee940f2c61dce2598437632eb16b9a9cba8b3d3155e55ff4f233a8f3d906b741e3abfefa3d10302047c435bb500673065023100faf872f5641c95a4278dbc32a19785787dcca5d12f7435790215673cafd24ca1ee0ea09a23f11d05cb6f08f1dd545ce402304b026fd60e1db648cca08e3b0b5b1de1ce20d762224c254a9ddaf59d7e88dee2036e49d5b3f79987c49cc7e9bc8600260302047c435bb500683066023100a20f59522bce43401a0d0d18c9c7b84e481be8a165ca441c56fc33af8dacbe00ad0b9fd7f4d284d32692f87dfdd5dae7023100a7d3d0061efbd2d7a424021de5b95b1b88715c2d8ad23673ac11667d5728dde88bd319fb2d2518b68818f9a05c697ed40302047c435bb50067306502305e3cce2671446089e58b5e92f645d9498f9da423a5c0345e8b0dd0a41229611b2a4a7a2e9f2d93ddb3598981c723bd58023100e4f415b6fd375771a74563b06d8d9209f2f498154e44ab94b05ca44315b7e44420a4f7b8c86f2761c56d6498f8f33aaa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c4614abbffa4afe6d6ba4fe4e1723d2b4c4ab48921c1d7db8a208237dba21bf33feeb7576334856faa048968cd47b8d4023100996790a2ae90064cd2958f873f4bcc5d85597f933a5055d81b6d53d5706fa1d51985e5db88e5c7c81d08301292795bd20302047c435bb500673065023100ddb14aa14b2468410c22925aa55ed81bd00dc9fe4a170b918fa8ee5c07e4cc95cf7f7e8e135300cb845a8274f114ecff02304a8778b4b9c0a5370e10728cefb90a40d44d83825e0d7bf254c0bc58d88886f879effc1195021b09a16391cd17054d110302047c435bb500673065023100ad6283db561a614c2de5a7e7ec4984647304f5264e4bb6f38c2a40d88e8a9f8e67d720eb29021d3ee66f3c27572466a502306260439eb71ea232903a6dae300927b5b75af228d41a95df0b30a2e7b35941df6bac9ad16a5ac82b05a007c0a937373f0302047c435bb50068306602310087de5c4065c78d1c182dc8ea9c287c44848bcdc721d64909d24e7f6fc91669914892e24881b17b06c601b2e0a54c0019023100ad2f9e4ec5842b052ed7a936018c27b05fcba9ed8037b21a05e2ea096c68e3983b72ef6595259e23e65cb108d89061660302047c435bb50068306602310096f7524736f29d697e962412c2691874f07112a84aa7f2186032da3104474c3a35193258d49127ba0f6290557b6757c4023100827fd3b2bbfa53aaf644f417326a8d1863553dc7a8966fda3c507e5682c25027d61c50a0edc5ffa06b2edb958ee360bb0302047c435bb500673065023058450064f17c99255cbd61b630c596b0646148a24037ef7319fde7a32a12a1ef6c925c664f8a633e231bc7775e4d2533023100d0fdd45d2f613c1e8325175564b339b3a4d81ed244b409f0c2ad8d8ea02a9840571314adab30de2f322fc4b288f723b80302047c435bb500683066023100b2727a0d1e7a2f74340f0914d0b5f89750e323618fe8b02424712670011345df1497a6fd76c3496b006427d8b6b4facb023100f145c547bb04e69866159423f148389748fc732e61d34f9b8bf4efd7cab6fc9bdb229d5c5e5eb870b92e0eff4c2464870302047c435bb50066306402301b6e3b3cb3d036760cd2bfbe07135f2c63e9966e1beca02fe06509d53553f32ad80d88b06daa07c58385e02092d82e0e02303141f8ee1f6ed701d171a5d5a04ddd0c8f89d19a9d32c2763cf6f1fa5948e5c1a0ad659be40c2a6e429fbbce1762fa2c0302047c435bb500673065023100908bf3b44bf8890a623645ed8791a56954fe7cc0a77f5f29798be77e280cca1b4fce488f7743a9dae90738b46c4ef0f502304a19acaf8ef122f8ba8bda774cf3de4968be7cef5a99cafb03f1eed78961a8f33f16d8bdddfa0102b350045100acf1dc0302047c435bb50067306502310085472fcfd4f6b7eef5a22f659ee25cdedc357c3840010a265fdcebd539e057d893733576cb4a9e518b83142120a63104023018323cf8fbb604690c83e5bedaf6367af678b27f57da9710c1066a66ed7b65d19e53bd5b9c875d381f9f53f0155abd5c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230378b5dde46571eb5236391be221c2511493a3909661b9b21f93e0139e7a0348dd31abf827394ac7b1078729b02bd3bf70230669ce386b833695dc91112745e20e85d08541fe9f16a54f094377d5980cf5a404299c231e293ea0b6eaa57e8045173b90302047c435bb5006730650231009d4f95df29da81fd606e75ab273bc32c6d1201ee3a6ef0488f94f37763ed842061680468b8a3a87e61d806274ed4964402306983752f0a2cd1373784d9bbf551e0989a1ce39fdf2730571b51aab864cdb11247e64f6835666ea4a29a950698f851e70302047c435bb50067306502303f966c49df5d192bc62b34be1bea3eccd4ae5623e5f47254d25c72df9e4970193a22e647a3bf676cfd579fdb39b1689e0231009730abb830920ac87039a51b3b75f4f87cfe3748e2d1d084c9ffff8a385cb395350a151d930c70d70aa627e0e84d04d30302047c435bb500683066023100f105e22d2319651d217fc80d9ed0043b462e986c7edf38acac47a9a6bda141edb94160bcc58d32a078a7a3b29277079b023100beb8521270ed6ce951c9cf2fb252387d88986878190f70d85d41ebfd1fc668afe045fc0225c65834a3d32c50b78134060302047c435bb50067306502305bebb61fa521efec49238b8a651edb0db875b8bff512302225075f677e66c0edbd20301d4d48ebc8fc7267dac703ca27023100a02eac4994ae213cd78d519a37b97fb604b1651918f08003d94dd503a8cd868b3d97a7580e4645cc34258074861995790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d212958711647b09a0772dbab9775eb6dacbc4d3d6a30ca59cc66c6e8fe85f3dcf46e74505810937f015557c950be50d0230779a8796c111a9aaf5440235c3732c1e73ce16f7cd6ce38125c06d4cfc484c9d47f0b56a18a397eea2d6a1dcfa5e8f300302047c435bb50066306402302691168c9c22528b4f8dab557e4f16373e265d96f0b30c82062f774dce6defec71c84add771d194ffe9341240ce5e0aa023040ec6bbc7b1a9c08a6ae1e2a1596f17b825d1c5f806bfbbf4491d9447bced83d8eee97a5aca5e185d709f7d8c23516350302047c435bb500663064023045bd1959c7c6d4f62572cb86cbabe4b42aa3e818080073186abcb7ec58c47915d082791f8ceb5eef24a165305586921302303ff1e7be02eec82adbb125753a282c0499939251443c3d91e159064920feb006507a891fb75b049b83c42deeedd331b70302047c435bb500663064023073684c3e81f6c10ec055b49dce36f9265d33e84ec0102bc9dc5102f6e04bbb6c67596d387ba31313c4e7b290db75096c023023ab88e164b9f3bbf51b788f5a24ff47cd163514472adf4e51e2ae0c98189ec3e35febb78d9d2e3fcd9bcb77b34ec5680302047c435bb50066306402301b13daeaed7332e8282340b320dfe4446bb238af002485b63d8d52c9b3d5594efffc7a37e219ab378a6926f98a047b3202300bb2d3aaf549c47e994e2e53e01cef403ade425a9383d735fc771caadb66b955497358bde32072b2e48bd2488995b93b0302047c435bb500673065023100947212d9584f2e2043b690e1f475135cf309417d55bc29a39e45bcd3fdfaa6ed25c1d92f3cdb5eee07d634f5db800161023079eeb4f0b6bac33953e4e6d2d1daf8aefe50352a20d6f446cdd9eee5fb01bc4b78eceeb3c9dfec1908b092753ca3531a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023063f5b75584e8b16964739dcd66d1b334e89e2c609fa7074e8608f1dbc096a6c8c2ab594bffe89f53ae89eca8738fe7040230680f431386b748aa7055fcd9cf3f76e377a365b8d7e63584b50bae58eb3d694468dc1a4ecd9ba360ad7387e119758c440302047c435bb500673065023100c94a500101846dc021becd1c3bdd25d0c4e95521c50b8184117baef3b01ed73908ea9ed1382a8cce0d33128efad6dcc20230635d9b2804d7359399fbaaea6a51f9c68a5e947255eb4edbe85f8d99d637f9449c7110db543636dbc0503564b0921dbd0302047c435bb500673065023100abbb717e4280d00cbc18bab2817fa585a9c1669ba7ead6f331c67ceb268537404c53ce0237454a7e7eda8475375262de02300f29ef33947b61215786382b6d5b1783c6135857166c3b84a33d2d7d4e3dee985cf59aef7634e49cbaaf7086f7fa0a630302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008424797bfc9780aa500e59f69974ed314d771b2f26ecc4a8042affe13278093f1d19b1ea7e962ba0ac26e4e54af02541023100f24d3c62ce95c4429e434643b7380bcba74b36b02cbe86c667545388a33615d2327e210a341986d6fd43c7e9de3979850302047c435bb50068306602310086aafc553e6d1f29d292c76a06401965a5ecb1532dc9befc828ea99db01fbfde9d5495935e2abfd09e40af67d5afa4a60231008a89c80bb8abd951982d455f8923b9e48cc8b0c7a7ecb58e643303d47d8572221946f80b7fd0e0dfb86a5c08b3a8320d0302047c435bb500673065023100f863ea0c06e283d8116a401ed770a5b926e4b68897fbac11352a6ef93c864b300a1746806c0be9e7db2884253355743002300e7cff444d21ac4f9789592c3d018ac4584a4d072597f49b300a2afccbb7bf56b4e0be7b1f65bebd85a078cd76e90aac0302047c435bb5006730650231009016a0fbbc5fa765e6928e17d279576f683a874f5c0878cc7d006eff92384caaef18921530e44d491d05687ef27d47ce0230027aac181eac9a55e23ccfd1e0985419b27a0b2d8b3dbc29e52341d0be826a9cfddab8debe577aafbfb2e19a0228adbb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f45f04ef36718ee1ae2b0016d58115974ea5a105f4c57744feb53efd03de533574dde4fc17152497e7cd17428c2c659302302e9c40008344999f97f525ab970f115b48e047218cc702ea525817156a7c5bf8ecd7400c84bc04d922c900858830d9f20302047c435bb500673065023100a919d93429c2723867ecbe12b3a2fe0c46b028ab50cfb6d54bb10c6d000de934c2565ef3cd904120118a6843b0dced2d0230084df76821eaa80744c12ac67d77320ac79205944126359ccb589d50077267c06e80d85f0bb07df9a8c859490b652b620302047c435bb500673065023060e872e317bd75976608182ef765d75a2636dd5190f665c4019b9af25c9ea02dbe0579e67a8e13524d2d913b725845c00231009f44ece63c21d7d680ddd49cff898a44beefff024835cadba8e64597c79723e0ac595bb6ef7ac3201fa95ddd1ade6e4f0302047c435bb5006830660231009ad6515af40d0578c0fb8b9f1f5a01221163d3341d18488a8fb34cfc765b279c8df3c6e61c2799237d7648a9b2d30efe02310098e19e3d05899823f3dc4ab76b35514281106e84626b6d7570098b72686fec807394ba9b2ccb38029eae8647875d6e3b0302047c435bb50067306502300bd82b6e7b59be42a722800ed145116ed7e5817dfc8cc4bdbedd2931355e28064c5b5991e9cb7db58cbf092d0caabe0c0231009655985897fab6a7466a7227b221223527b3e21f857e034b23631fc302ecc9c56017f8c480212853581192fa5d81983f0302047c435bb500683066023100dcabccc7894a5b0b20bbd7f737c9840f6c3d6b8e8935023f7a89f476de9b6ae5e2cfc03520088db179cd556ee9f07e7202310083dcefe6d7db9bd85562d52707b0d546bdcb485a7987beef6c852a13b2eb5c41495a854b989340ed6e54e0fc31251fdc0302047c435bb500673065023066e67ef8d8d5e9b7bb4cbde9b1b4290c88916c915264daeab4df90c30631b38e51b93dd6ee47888e8c44ce281f7e6db2023100ff57dd90f25d95dd86f196b2b63443053b312f21e4c20aa10de2eed073eb45500a6f1971d3c9bec87a042b49433b7c3d0302047c435bb500683066023100a83f719f0e05b07c12e5a9bad1ab9255ffa58e8106368dcef4bddd4106cf5f439383165501f31432d956c80e304956a70231009bba7bc32244bc54c655fd9e86d4edaf4ced086ada4c1db715c15cff4d948cdbba6c1b22eae750c784d8ebb1fd14fc680302047c435bb50066306402306ef2c1a1b5775ce5722075fdcd2af184bf70f819ce028363ca9130e9ba188c720b0cab581cf34586c323210a8b754d9c02301e13006af0bf9d899a711aaf42fdc8941f4e2089f3515b68cd2db1b20005b979f8389427f5d4f4004f35c4da4af2f5890302047c435bb500683066023100d4da4d4f4d17641ac77ec3e9925e2d4e64250e0379de4a2f307a7c2218a1a2c90a9813662752319b3f9d4e1aa98aa9e7023100d7183533763d94ffc665c43d841b649a5e7ad00b5c713b62e4a55875b91f23d8dd635b024755d59e746b3e7cfec544a70302047c435bb50067306502303527874d5cbdb643e6c31d160717852ae91037a1242e442bbf1339229a00eb77a3e6af6aa3c6121a696a7bdd65675a28023100cd04c43d28e44992a265a8b7d1dab438ab5840da03aec604e6b2babf5545ca2482190b5cb81b707e619089eabf6129730302047c435bb500673065023065c61920163037e9507da2887b6a892b1e7207d75daf458a9cd94f82f40deea2734d0f7cbfba28fbf18e1d80ff88a0db023100f6909017b5c0bbbe01908b84b740dabb878cf25873cf1c79f88791753ba35046f3c345bf89515e7121ff9218d0d064f00302047c435bb500673065023038849c40508517c7b07d33474e756d5061464131560faf968a6589e069ddc15a41a41650f421c113747b9c0d59fa8574023100fd5a784c70ab87d1e75a2aac7a2b7bfaf54a34518647242c75ca5eea71f57f65e62310314baec041595690ae40f89a4f0302047c435bb500683066023100c1a9bda90132935a721cbb5a9806e672327bd550d653bbc513618133c2df40ed26862ce6372d2235ac7b5ab2c6c1aed90231008857ef3ce80d40eab5b6f924fd186ea6abfdda12594373acd37e0cd34db7ffa40dae3cb99fb194d3ff02d871e07cdf5e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307efcf58433938f99cf2748335c60b3b213f153c1ef0412820565d4ddd6a980ab3285cc1186967f7190f60b8deec83f9602303e44cdbc5e6180d165739a9b08405691fcb9b49fafd6748d8dab8e9e0b7fe900df4d70b5e21e0b9263a02c462ebd28ff0302047c435bb500673065023100b1a15db35c67871ab8bb1e0a870b535a4ac6dc89a6455dfe342da36fd13cad7d6a8085de9cfaac648dc94bd5e6dbac5802304986c99d14a3505bd47d38f8f9ce6308c807cfd42f4aca9be7d96b798962f48be1042be4c32551c88aa1365345ac7ab60302047c435bb500683066023100cd68eef1dc63255aef89752b887cdd5f72af10fb10d4c3928c7bd14325244e7a60f2985a43361528c8d1c44399d91494023100871cffa087878bdd69ef093f7dc36f8e33d350de2c6ba57e85e8fbbb02c6a2f23b81e6d04e833d7ca18232d54f0641940302047c435bb50066306402306ddc8dfe05d157222624d3a9d2f6c670e4daa9ce2b7f82be0827fb1354e5b9fa5fe0f4bb72f1409a027833bafa30308202306365e1f6ef9e36aadbd7587ef1001bf5fb5a5cbef47b45cdef7e71c57edf467039d3a34d81d7a8a4a43d721beae5e8a60302047c435bb50067306502306c7110445ced04deb3bf8ae7516c098a56b4eddb0af82a6c0cee4967cb8d70a5e12e3ffb60c7cdb2dad8c4dc2757a58e023100dca359d1c01e7ae77ab9f503abe8e11f3dfcd14ff94899fd8927caaaa178e193fd5246522f23b7908777df8f68c50f6e0302047c435bb500673065023100aee850230f81445aad0b2ea58c9fd24d9fd8c1b0e13990b04d9d7a0ff57d1991db302806e3353f5e7b3d0c901011bf4302304d7565915c2d8a110546ca8e97855ddf9a670bd732d571e2f8cf599d0997816e4b6739b03f52ee550f8c80301e3a1c9a0302047c435bb50067306502301c5c4271f2e9777934efb8f178aebe8bc44467bde0ba9905b03e7c410a3fe847184eb3a8c83b1e0fdb4922e9e9e4f712023100d52767f8b0baf528eb984a15224c21fe703f89a245fa38b0b3be78d4df337a6a1513e5e3aae0f1fb79e16bd191ad5c680302047c435bb500663064023068a98f921f23024bf16e525ef27866f73a135c1f7bedbbde6e41914357832d1c76708e5f1fa6656f9684beffaa058dc7023014e7c3d5c1f7764bfe96d7ee8acd8f43dd5dc821ddad9d731e009556f075d0f0566fa1bc5ba3873fedba3ed87db5ec890302047c435bb500683066023100bc8094cde2c0616696d3d050687b5bb480c13daddb0289d0aca736c89ac3588f52c95a89e9dbde086184a4545dbfd05a023100e601243845b9d156cdba6e1ed0001c0b7fab57b4d0eba4e0e0e2aa47b2523b52245bb9e28982047825530f44cb2ec5e00302047c435bb50067306502301632ecdb15000782869b227af6150b9a903331af377626c67b6daa4fb61dba93251c9dac2ea36ce2f8db69035a63c56e023100a0fcb249e29ed4a1b30768a6b88f29f2a1a3f814d1a3b61165555c2828a9f66b6eea6e2f875aacadcab1441f62fa6db70302047c435bb500683066023100908cf10f1439c6c944e43b50308dba236958333ef07ec928af4b6ca4e651c5a5c1f44d3196d1dc04d59dc7e65eff18bf02310089b80be38b18fc20f9c7569d36acbe20ef6dcc096d50c32b6b218eb1341a544e87a6326ac7d3d4928547341ce9d6a0f40302047c435bb5006830660231008f640635f7fda296a2d8979095a9fc8d16aa87d1ad1079fe25a263e9e16c87a27dfe3b036cd677e40356d179bd6f865a02310097a1233959524cb88375c007f1665c4e3976c50950c447d0fa8b1c2845e5d91e4c9f3a905061799368caf9a4aa29cb9c0302047c435bb500673065023100a95f2281c75216d80cf66b2ef384833d86ff190360c99a6eab51aee5536c7c454a2e65027de5a47b7ecfa117b89e8f6d02301d28c5c545616b8e163f4f4f7a53b9f18eed9103a43bc4ccc59a613329e4f2027b0c0205cecc21fb826fbd12141d4a940302047c435bb5006830660231008aa831905fb20ba6f36067d84e2ce58f5b229c5499ca62bbd7cbb364533d25580a4a4900b50497fc42660633b4108011023100e3dadce096b7ae620b2f57541ecfa67492c90ad759f49a4c4f75fa375e86d3f7ae9b0867d5ba33409cc632a8e05345c30302047c435bb500673065023029e0adf85722047856a2045c49c590bb1b904d4828fb6b24de331776a9128b6710c925b5c0d5736dc878e4f6f95f04980231008e9a2b959b0db885d3b042a8bc40c37913cc4bcbe29f2cee4360ad3c5f58858a26c35a04d91cc4e22f326737c794b3690302047c435bb50068306602310090d8249f7f02b9c1db2a07daf19dbba68c2a05130e53ef50938fd45c683b035d85dfd5b74a1fa172ec714e3093829fa70231009b094fba9984c5694862d260dd174a702a299672f6de9800bf7d63377285c99ffe142e1d7432c03f355b762f3ea4c73f0302047c435bb50067306502310092d9e4128c03a627ab3b2b2b22b0a89f1e7c31874377d3f6710b818fb82b7460c3852416d05b5329fce46d01d38284df023043580e630a3cd988747e58596a077e9e4ffd67740a0dfa297b82fa8c16d43ba5ad012de0896bafb7f18dcb03be7c3b5e0302047c435bb5006630640230509ee9ed875d280da1c6eb7eb8146a8bfbe513cf5d7bbe2adddfc85b51d3d304525ada6163974fe3ddcba70a1ea19dad023056da4ce8a8ad742e94c4919b13ec0ccf3a61413465ba99d6e82f5e10c695bd64eda0bd37a93de262c8a68996a76c42420302047c435bb5006630640230041b3da0333c0969dedcd72b3bd424e2dae3db1c0028a8e4ab1a6a6212f096996da766289c592445100d86b42cac937f023065b30f720c325b8fb27a783091139a503201107c057e89378e605f6f1f7a16668274a1153a09770dbe9fc100310cdaf80302047c435bb5006730650231009227db8791e72bbc55f3f2770a3058f344da43bc87775d680c65baaf14f0a9fc562390939f91f930be5fe1645745394a02306e6b0c8fb3df2da69e9b88c26244bbff7bf9a756dabad28c3f318dc50d754bf4d19a6c812f4f24e4dc1fd19224c15ca30302047c435bb50066306402306a568127584db9591c72b600d5fe16b414b1f87790b8737cb25ef35032949bcb3e4bb7b5de4475a29e231c1d2fa98314023056fbddf95baefa3d2786d717138af4b00286d82f3ef1e94dfe5b76b8203d60ef320eb6e212a795fe08e9ec9e1b895dad0302047c435bb50066306402303c26dc3e1065e4dd4683ec29f0eb4d83249fa8874ca7b8b250078b4fe510fbfe0d4c3ac8863ead01160d1a9975365eea023079e912a4ccdfcafe7407678c046bab7e3de9fcd789e915956f7ac9588b7b585a2f4cade390f8d9cec4198ad7c50c93b70302047c435bb500683066023100ccf31ddf38c6d7bf688d7e6160bf303e88683dc4646b3f09dac6f6da3278df712f7c2becaa05defb55676e7b78e23fb102310080d4289ccff468105158db47ef0c158c8585c9169325d017ed2905161ef392d45e03663cb69b99de96aa7774cecea6a90302047c435bb500683066023100dc4f33d20386c19588011aae4d6999e857750e8a56b2b1cdf45926a123db1aa376ff46f538e221a3e443050fc29b624a023100e0cd826867cc9f3a708dcc7ed6615c26e46f0888d4c28e1f471e12ff82763cd30a8c9256cd94cd1fc01b46494cfbdce10302047c435bb500683066023100fad2c0dfe2111431312b548679ccf66f257925868070eda501b6999c6e523926d18c589ab14e73248eea77c7b7c88fd0023100fea40af50bc696f57da68f27a8f72671d7872faa295b1863b9e09f27eaa4616e5327303d36638350b76d07286db1256e0302047c435bb500683066023100f925e8bb431abbff3a5f5d55a601639e11ba7be6fd1ce31176b008c7c624433b9bcb257d4b754ebcddac107acd8a0b43023100af40772d8e9d3cfcd650f3c1c74d44dfe6f2c02705ff7737e7f46042a0072ade5192f54ca967a358c3f377c0cf749d5f0302047c435bb5006730650230505a6fdafbda4c0f9b139f9cbd34c5f38b04fdde0172f851ac814e2a57f501c99a050d81bb3b36f82648cabe5dabe2c9023100ce6969aa56ff7485e4248a3ed6f740d9703c7ffada01b28856a32dc5f828622ece5d50764cbae09e62f7c704106f3da20302047c435bb5006730650230798c473aea84c2de0d923dcd156e1d2403c4eab5eaefa89a52619ca8e762c0d5bb40261e9a27c5c122bcfb4e50044fb8023100e0bf968023f3e914f6dd675ef94208cd4dcfadae15ec0cccb356cf1cfa27bb93b66633ec7ad2515de9332568e673c0e10302047c435bb50067306502300ca0ce4600e5e87e320a96b913b5a494355281d4565705e20236fa3e4c2a162d293bb293f67081356620b58d4bbdae58023100d456550918857438fe0750383b169dd409bfb48e96a131c8ff67ecf0537f4ef35de6243fa9d6260b09bc1e9f8b621dcb0302047c435bb5006630640230372ce081b2536223ff91e6c919d8bb5350bca36bf364eb09182ab83f331a96e65a20cc60b90db3c956d8d12a71eb44f002307f78a1c5a1d21a08a63f8c6c073216ea34fff65a05a926f5f087e0926ffc07d95a70a828baf5608f106588f7ac1f4f060302047c435bb500683066023100f945e524a00c89c274339f6049b1c7b33bf963f43ba088c2a2a6c7cbe029ff60ae8d31c51cf28cb963223345c537d6910231008682ca461772969d161de430fc7effbfc1c60436913ca7c3fe3623ed0f2607bfa35eba0fddc71bed1a7e9c3a7658ac4b0302047c435bb500673065023100e598b85682b084dd1698dcea9f97fdb5062284d70d6b7b9157817cf9d4e4cd790778fb466ece1cd8b381362f612bb7fd02301d967c652d852ff6846a02b35b1bc06ab46b9eeeb9a377aa614a5d627e70d11fa2a04fb9e73d350d0b3eac02dbb502c40302047c435bb50066306402304e83aee5da9347f80bb11238ebc8fc2d7afd4d1023e4bffc5842484f6eb59ce294d486c79a2da3113f9fc79d0e043a310230481fbd98f0e831174b7d81b1464b0c204954bd93cb954eaf6a1396916168a9a861902c99f2a5ff268a70ea0800ba38180302047c435bb50067306502300d0669a864af66cd8ad8e053bece9d42633fb81c435f525cf32e74345d597ed6e2e0c14d55729d576e31e50647bd9d08023100b07552e800ed77ffbd575567b00f66dadec6ec227ba79a73b186dc4ed6e42c25bab94120f92b282b1bc19f2c89f429ef0302047c435bb5006630640230055562cf02111fd6bbc9b2c118b9838ee1ef854b05b7cda97d2e7777439f1a6530ea84f42bb864ba184f01585dbb80e50230356593584c97b53257490f291157c27d8dfeab77f4e172bc3f02acec2dcdfa4d8573f35870de84b5ae3c5370dc4e55890302047c435bb5006630640230207ca78b94826ffb2d3043106293d84b607df7553e688d84152a5192788d50db1f77af4d87611011c5bdf6834a01df77023000ad0929f50a512be1efaa51cb4213b0118f6bb4f1fe0b1baa47eb9efacedd9ec455628123e1c02fa261525201f0c2540302047c435bb50067306502310095ac436e9b9ed0d0a09de2e23b4ab478a101eea77902a78987c0ee761b411c228f966ede6621469f228a5fca14270c0f02306d686cef8e11d21ccb2caef9ebfc3b5aad7ec41d524fd0b51d9d0e686692117f63cd30a94a06886249bee5e41c954ac70302047c435bb500683066023100b6bd75ea0b84b01c70ae90e0423d8d7eb81742455428ddf12fccfb163bd0898ad5d299c1c8fbccd7248f1de1b3aa7ea4023100d10a4d402368ea41d889524831c41c87d13b5eb78234ea4937ba328e0d62515162f47bc28c0468f14febd7972f448c930302047c435bb500673065023100de5cd862019559587a411706dc0288be2f67770bd700f861a5c9068517a42836c8c1fca18df193b80188748671181334023061a0f60665c157a751bf7abdadf1a86e590b9bc9b326802c66df655d7355f9ffc5a28f183ee1a85c5242f9ef888d9e760302047c435bb500683066023100db95c4038e9962f315404b21acedfcfb31f39f09058d8c1efafb8a3350511995a21a919f354d9eb34383726690e0c9a1023100eb251f74c7d42c3e199d4d2d42b0c11aeced2624d12ddc7a7d29c8946c12b9ec4e94393c3b7f55072b04eddb36413a9a0302047c435bb500683066023100d7a84fe4c0e94ca30630ff1a7577b0c3d14d444ae705ed711cdefb7275ecdd43d38dbd69c5ee4532824d49ee64f40cab0231009395d9e149e9c63aaa6d0a369d971ab4091a5a3c96ca3ff01d0e55a218471744c542f0d40df44de4ba53e65747449f1e0302047c435bb5006730650230618fa50d9547abf3e5564ee1b3777af595e41e491fc2653cad2b839055f24ef26ae1a95ea234ac0ddc3758ae643f598a023100bc9c0b844a805811c04c339cb3ddadc20d9e62c2e823b4f4bbe9ca16e3f15ec18d8018b64dc999fd75760292ffe0b2270302047c435bb500683066023100ee2ab38d18b43a658c8822ceb97c425c064040b0d05f6a800b79293c7a5be139d05c011ebf204178fcc535fb0ff67827023100ff5374c2041db36520e7ec0f30deb509d6f9897b56f2c1178d1c266dd2f9e8e80121b947722e712b8a9b79bd5ab27ade0302047c435bb50067306502307759d86d8d4a7fe01268b5330741e60ceda9d6abdbae252d25ac407723c15fcf0a46334db96542731f55e944c1957db5023100eab1c6c992d6da507a28fc35df609bd185e9e5f65dc652bec0e341ece5043d3bc5822a3ae0614de02d28c17d0c1cc6140302047c435bb500683066023100f53ee1997257b96e81049507a549298112714288cbcf7f0e65e631faa7af56b47804fdaf9ef77615b53d7c64823e7de5023100f7727b1be8e49f1cb6b52a524e8764880c4c016fe2352f33caae136bd8e4062678e0290cbf56a1974f76fda495e263fc0302047c435bb50067306502302c7f270b2dc88d48f949767a0db90a0d85863bc6263cc7baf58d41f9e1cd1a99104e3ebad603139699ed20cc1133d05a023100c2ba8b9575e28c11f60cf6f032ffa6a607efebd98e70c7fde9545841727c244b30f1fb8886fedcb462bc10fe619bfeaa0302047c435bb5006830660231009b6516dd31bc2503f1bf29d727e2ff0e18e9c108720102b883a725560cf57309163bd5e8f11d0cc1945b46443ec8ef0e023100ac9c269947e802a0aa39fe3ec248683f6fc0aa4a33642f3a4d1f64f3d01fd038346c52d84d77559b8e5fbbb82cfd59c80302047c435bb50067306502307e7d65ff1b89e3cb558a71b6e07d7e4152386c625b301d10ef56db88b3d69fd50d0440b80dbf181930e56de9c9123389023100934731b710aed410e90a63922482020b47f994a8fb2e709b555390b4b41d650e0cf45495f75e96bced1e4b70b230bb750302047c435bb5006830660231008618bcef58a8c37bc47c20f6cebb52d4a640217051a9f69ad2eed1db476e319850cd536f45d02fddaaf3339d6363cd83023100ae84e304e1d011e1376f87cbae215eb649a124114aa89a1c10109da398d438a2f903ec523277b1557a4ac8ef5dd906840302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f642844f7d1c8636b457d4ac3f6381a1a2c6f8a94cefd97c99421608948fbb6affd5fdca66184f128fc19c707c1f6591023036245cede174555ae6390ae32eb9306522beb965e32e0790f3f571e6b167cb9d2fe8fd8df83ced2dd041cbb2a409bf240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f6572552e94ff2eebe75086420fd0b70721ac8e3dc59e8923eba0e00097f32de1b39d1ab32019a3061242c4e6c0aa68f023100adf518246b76a4bd3ca5436f4aec72f109385383c597603a2a0e024b8c6b8314aa3783a02a206309e29981a1fe59d3760302047c435bb500683066023100dd06daf627f325a7036c309a290bdec056e06e84785793abff2b3672c8d978a5c40b1162691d3c41418f887b93142f0f023100b7643070e2ea6f66c4bb19563a32fade574946a0066c35ff2ef564e1e707e74712f243fae30e60b112168a89be68c56d0302047c435bb5006630640230120600c92873a143b5cc7345f724775474586210a0b1b8e03b327e2a42218c7a5761998b20b214def8e5a974b464ab1d02304d280bc499091034c150de406b529ba842758ea7ac2c2aeed47d46a922b864aea9a9ce4d22622263f89119a927649b9e0302047c435bb500683066023100ce7d1db2d5d2b8a2b9acd218292b36a9f53333364eb89c1b24df552685685636e578b6d86d42dfa9b8268d14be594ee8023100d9469e300e965e194762ffd9cffd0f1fbe7e411a471ae95371a2dd1e7be520ca1548d2ca740ef0ec061ede9c6634da360302047c435bb50066306402302403779f3c1afcc007bd0870e4f7b86d72eb0c5815104f658f68dbdbc67d3249dae1b9a68c9e20ff59d98ddcc0cd4f630230079ac45d6382bbfb2e9177782e9bf5c03bdca03718081aa1d95c7500e7a6024471dea888f955593c3bc4f30528e7f0630302047c435bb500673065023100fd36b5fa83ca22739bc675f450662c8fdc7b76749c60943f942bc9529604eb66c3f24be77dcfce10340f6794007cd76d023022a9d7901b5c59945be897fc21476252d5ffb31af90a03560e5e42c6bb857ef8c86369a5a04b0ecd94f953a61c1c18870302047c435bb500663064023020d1b6b8adf88e200ae70fa45ed58d0e341ade4751c2ad219abbf65811c8d4b8ebf03255e8b5ad39bdeaf1444c14afea0230583492b194b8345d1f24b234c19d3ab045d7c51f56a0ab5f96f2435f8e2f04ff7f86e9536db20fa1740b19f82556e1960302047c435bb500673065023050657184155db252dfebb8570a62d835e0f7b5f2f0de51ed85111eb7f3beac7cb73cfb31301014d0690923e6d17c974d023100bb58cd197b45665c8f72442f6483c3eb40b7be070a794373f0fc7ef4b71fb03c2e3c9cfedc154b675b91c834fba421240302047c435bb500663064023066627766a1a88a552a013883d32a1734d0017775747c2e4f80730a86400c34ecf7903aa5baec3a2cb3a0a4081630d422023052ca7f7b28af85535e8f9052f0f46dec86a8d97ac04494d7adea9fe95e47f52c7bc941534621ccfc84f51f006f9a7e330302047c435bb5006630640230367ab9408195e50d175acd395be47abdab3f5615880ae2ffbe1846e58cc54cedb655c92caf7e6fce40877f1170fe1136023039b28142d19ed8b6ece6e6f6d6e3bb1b0ace34c12ca54c28396bab43655fc67635c2d89e2b63a08a7a79601b3d8de50a0302047c435bb500673065023100b5771c6f8f9df0c1b9cdf1d525d1f62fc88acf8e82affc3c97d9b82544ce9adeb5d2860638a22287f9c05b5957bbecb102307f8e5351fc835564757407b89857ff84e5181135ba4026b0766a9dfe4a6ffe7729999729dc1fad7781d8206222a79db90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310092ac669db1d70d35209a0d3f88831c306d880b647ffe0ebfb03baa70db255734b8e4cb475684f25f6e18030849e2dcbd02304512ff8216f78e952057c25a32dc4046d1cae0b6647dfeb7315792ea891641707c6b3349c689fb102ed311f1e62bfd070302047c435bb5006630640230782563ed8cf4e0eadc56c734a79f271318ad517eaa24d4461c80d156b96eef9b9aaa6b7e06ed864f5a9905cdce2082da023070f18d1d4ea27137a066812de33de9cc9c0bd5e6dba2e9cb3c426756b15b3c9cf50f9ceb2b288210ccf0ce35003783420302047c435bb500683066023100e087a8f5880d6a92c03d864b18a59b7b3e020a9bf29c4599c0b12ce1a9f0c732c35710655b8cc931afbffcdff6278b610231009daf9e8d7366258e05a3a89520a48939d57871695b092d288d9ef2ed973044f576c46646fa3e015e0075fda4155e98220302047c435bb50068306602310089a1e0aabe50e8494f1b1310b2c0bc62e9074b7cd5aa082266e1a57399cbf9de8d5f729d9f7f320c5a367b701fa0d25b023100ec2ff8b8bc402a80891354bc45d9ebc817c61980557372049639deb66d50f04e03aee14e2b51fae4573b9cf656d1eabe0302047c435bb500683066023100a6a5add8a37e3a108ae3ed710d94b70c9f2de7b7ce1360566f26c4ecafa2a7366511cfcec89d4710555c700f0bc3ad0202310089328ceec90b8b7d306574953e24e6c60a731cc118e322c353f6d0fff952220b9eba55149a11fb354f2958f23050131b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bec90c9a2a606ff6a446f774cf73605d59493c8157bad587f776bad0a27f0312ba8121184b0cbe730e5337c3a90998dc0230065268ba64742253208834ddb02a362f82b88dee89b69c63cf5bfe30adb3b1f7a50d31e5e843713e5ad59b872586f9830302047c435bb500663064023011da970b0cd460c54beee44392422c93bb991f3f64aec399048bca8cf9603ed87b35f09ec3a70ede2368bd90400fc85802304969ced0b6f7a7471af41f813662314592c33586e22736a3feae648cf7f2429f7670bf4ad40b941726aca9b9ef5883e70302047c435bb50066306402303b3e06991f5b6259c6d28eaee347e13cee5132ecafc7e9f104d5e2bffd0aa325e7c11363a61d88bd230fdf3dd6c5cfdc02307d2f3b6fdeb9a3a129c94c2efe5db1a39f7816f9837ad0d2c9735d4f1dde6957908fd2d803d87b9383db39157bce33fd0302047c435bb500673065023100febfeb7f4a5763a45d68e0127572bb5bc9dc5bfeb76dffaadbce37bb942ef371a33e3f9fc251cce229bea072cba0273902305df0f5b84f9d779f51df08a50ee3084f5e984fc5df3e4432ad18d025f8aa90a6e59baefe67589d06981a04bab8bbf62b0302047c435bb500673065023100c6a4ac2a419a9c7913f006f039ee6e7694c78ad7835b4ef24237cf73817384316b343f93294c3f14b8efa89fb48cb008023063417dbe0be563e029e8e11a2efed1f08ab166454a373e930720e601e3a01f7ab6b4ec516729c7344f78bc458ea54a120302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306b6d5f2c59b3d431c15eb8bfc3c5a78a70b8b4f20ae8408ef2d235b79b22d6fbe9964e43ab29f0a54fbc0668042f3ec4023100b024589432502f03bf7ec13433ab157e046e3d71250b7af2ee977e7fabd1170057edd84b6931a36fe94518c87fb976490302047c435bb5006730650231008787b8b99546d6c60b0f59cec7fea382eea2fe09fa179001b47cb0653566421bac7b6422836731c6d73d366002223b2e02300c430e1db80f6b8998b0fa4834123beb1cadf897c61b597f66e7277cdc532012db7815c11d262db0828d001ca006aba20302047c435bb500673065023100fd1d320dea5a5f554ffc98a7fd2dfc14a74f13cad12d5d338be951acd971549534f4bc7864f0641a823756c8c0909bd202306b76b8732b199bb08adb9b246127b4713155e63fcc1cfda46d8ee1e41f85f265c607edfbcbb7c702eeec06a529e5ce960302047c435bb50066306402304000effdfaaeb35b9d636d8542a663d0077c5b29e2abef5b93b846f324ba55cadda6f4688327b36f7c2b170f26b6e35f02300da88eb001400423fb773b1510fe40b669576d3b52a35ca3b5a893eab474816acb674b41823f3ae65db81d4a782a7bcd0302047c435bb50067306502307b7c82753ac969dbe58efb96ebaf6047d0cc65bcdbe0768e2370e72cfe6650def7b8ec57c23a0cc4e8b2346e8ce00819023100f6e3361faccee6233ad88250ca0572d8f1fcbe5c9fe690c75d0cf3bc9070a6ddcbe4a455bab8b61f63caa830106bb84c0302047c435bb5006630640230112e7e3232da4b48d274086b0778e637571fd753783a0ff3f141daa44cb71c4c49df73d9a69ceedae9b6da70cf0aa65d02301f6fe5b13267a31d1561d1f6fd15ca9ea237c7dfda0d997757d41da798ffc19878abbe7f3ea54b333a4aa691035705ba0302047c435bb500673065023100ce161e2638477e0aff67e65b4e5c4a7f177a0247bd8689d7ed011da644b27ddb85142c499c1c96b3ae9e42ec030e9f52023038334b9afb4c67cdaabc6f481f9b69fad495d24acd2eb47b8a59ca058292fd211cebc93031408fd3af688f99c5dc1c880302047c435bb50067306502302794b75fa8bc1d4e2247202d050ddfa22b95730266663cadede01405b159727f7ac921e541e6f001f0c7c1d3df24d7dd023100ff183f7f17a259682f7d38a4f3d56772e8ec10705bf7d59eda094b99e704d578cc678d8d007b0ab1e3453e2164834c230302047c435bb500673065023006c671c985b2b801e1a1ae18ced08ae7fb1a1b56f3791139dedcba08b4093174dbc7de216f6cf1d93db81dfb9bba9a3b023100a57dc33e25197de8886d285a2417f3a504e921d39cf0dd962826bc8375ec8c86db20646a458bf01d2b2d37a8f9fe1c3e0302047c435bb50066306402301cf8f7cc110bf3a955ba4b7524ea799866c7b025db5bbd13fef172a7866a6dcc9c30d218d2c078aa0dd28660129b7a8a02306512adc97631822462baf1bc99ff7e4586863b7b7863ad62785f3dc0a4aab0d050036ce5a294b51aa4a10ae17b745e5f0302047c435bb500673065023066cd92741b0cd945a62aec4cd9cfa5148cd02752a261e6e65d38960f3c1b19dc7beabfc7d24d050c8c313e81625f635e023100cd3f55ad101bd8b865e32a622db37bba5b03c192716f9ae233ab9d8e4d325e374f334ffbbc1af20cd19cf1acefed7e720302047c435bb500673065023100fe30e8deeb925decca81b22fe559b8b154b990dae82b6b4519061d48f2d7aee7554852bb86dd3573c20fa7782f2c602b0230156ec3a8406e42317b6280234ca766561147b4139f2a31dd9274bf1a581fc0368784bb70038fef4ebed6cfb35336934f0302047c435bb500683066023100d955ea8b31e38c997c24c00e75daecaa1d1898bcc112c5eac947f55bead6b2f86f61ddc4ed3d7f78b2df8008d9bfe467023100b7dac0ec441ebfc376e2b1c28c51f3fbf8cdc72b504b1c2c2fbb3b9a58e8ce3ae3156d9c438a1446ef132b01241397a50302047c435bb500673065023100bd1ca71351124e49d1afc7e95fde4b4ad0bcac91fa97ae0c8192882805b67d187f228f32233720c3925bef4cc0f916380230401dfb4f899f1dbf30de55063138c04504a1c62541ada97bd09df929b0454d51039d80f96ea0d2c47ba95c191c96712b0302047c435bb50066306402300ce706d49b0e3ce343e14976fd1461d423626ed65b9e183e0609d81aa275588aab9755a768797ef01c41efc8b4086a7202303d84ea2bec2af8da84534481aac20b267610fb29978eaee32dc03af3ca35409ec0b3638a90719f5563b406cf19bebca50302047c435bb500683066023100ac46f8d5e1b37a50cc738ff4fab153160e29a1c2a6f6f1cb9567cd3ffc38f41f9ecde5aa67d81efc448d86df8ca659dc023100f4f82c73a51e32aa080ad2268d8ec36ca119d442ee66398569b124cdf6c39f454288e2a2b0c1c1db942c633269897a870302047c435bb500683066023100ec824ff378ef441582ee2c8d7a283158384b52d75c49f394597363b3f4adc0593ffc65699987a11374c42818cc655df0023100fc189f9ec6c92158fee680981b91fc9166c034da058da68983b75b9e6d5eda36e9927bcca277de9832c8437c5051f0170302047c435bb500673065023100e051727a49aad507e99fc233900beec824ce79bf26f6dba87c60911605c2b697a857a64eac7091b188ab69f7761603ab02300c5d94b1d9ac52d2a888c7cd1bc92a3015eae7d20ba9cebf459f6a0038593db62fe77e49a7af6dcf677370601c5a72100302047c435bb50066306402303daa28b3ea20ec54c1afc493884b054583cb536010b39a2d3f16adea2a537dc278462481e35e0b219480c4a64471c1740230238a3097eefacc497d1c2b2c267d7ee164a5f0502929235b5755a84c84a0075157e097090a4f56e1e425a90043196bfe0302047c435bb500683066023100834ba785cda19248696f979d0299899c2e344721327dec7dbf4441875a7b6473934cb31b5b24a9d9ae19a8744ae7742d023100907012dc1d9961626e55d710eb787d6f44893129a215e537772050c93a4b80e5dce240efa1730285b2db34f3628fe55f0302047c435bb500673065023100aec3ec1e6cea0d3e1156cc03b98d219fa23a42e0bec9802919a9d8bd0a44a4fff1cde89b08e505dc0dedb64fb05dde4d023031313abf527f0073af3b7beae02ae8953770fd2b21cd88bed0a4c2772f3ecf11b7ee7144a390a4c58f6dbfcab97f258a0302047c435bb50068306602310090c3a36035c08e91bf6498d48b8643efed132c490c0e2bee61b68fb79e4ab8a27df78a7b5dc42c992f53d69838f971730231009198d555f13e8d6bc0602c31014a3468018b468dcd2045d68607074ec44f827af3b1bc2f67b53336cee9c8b115dbfb8a0302047c435bb50067306502304293ba5d1c1be80bb54630d289919b236e0bf660cf114f6d805ee04150f6c49a4240ae9e05a99922538c5f8b51472fd8023100db92433eb8d20aa86084c809069df1eeb172cb516394c8e95f43b8f920a551313528e86fa6f4d2cce2dce044971b583b0302047c435bb50066306402307aadaa491083d672e307a94bcf1123622fd40248487c00c031dcf2ef81502d766a5c5faf6c8ce7dc0930c2054d727e9c023067ec647d2ec1b5ceddda9b08a90b5d170b6f2536ffcf05dc615a56fdc17bff77e957c90c51f4c9402c691dbb3182e0ef0302047c435bb5006630640230423f35b624dc27eabb8dc80c35d3c33cd8c3b2b7dbe2668c38ffa1f53e0485a9a57d770201f818e24b334806f0400eaa023070d69738b43a8f059ca0d777a574a6da3b35ec4e6f2c44a02e83e8c442dd4f126757ce5b91631712ebc714b8fbe0d0fe0302047c435bb500683066023100e0d602dd116418f292976e99e4ef7caab5d9ca2c4e641b7d766c142cdb5f3df801ca1e5286b5d5397bb480ca9e014428023100f58e7d1b4a731bf36e54b9bf1884f3bfc9bb95a722c8665a70d3262dc439a60c2ac4a49da1a554b51b72b88015080bd40302047c435bb5006730650230626e46071aa06bac57548a8a3c1b6c42b4190e939ffb4deb43213915a8109c031558ec0bc8f6ff307b0f7888fb402f21023100d6dbcd143575a40da2193e49e35c70efd9dd88fc39a135e879005b3d2d305df1224b06d0e63a91fe9533566c1a1fd7210302047c435bb500673065023100eae48945d31cd3491181d31a10ce900834d7089509b2b6805154eea91629567ba4c4c34dc39bbd9bf3d46fb12445344f02305fdad8a9a39f74a788b07a91b36f8e070c8cdab4205ab832146754ffb3d472eafee5f84a2fcdb3f3e7f86c1ca3a72f3d0302047c435bb500673065023100f18171ea08364731892a622c903a8c9efcece56164ad924c5760fd1c35069da893ab28cd3839a27343944a98f31e800602300fda379baecbe6dc06ba79200c3c5cba4ea4a88e3e1cf594e860dcf8261be31143fbd5f668e42e02ee94e4948ad2b1ac0302047c435bb50067306502302fc61fa20dc1b6dbab2b99330b717b747210a9fe897270c0ad3cfed5be54f7ec3c1d4d49efd508a777c6b620152e85de023100e7b6b24ab13f8a1d9fd2a4c7d910f6949a06a0c003c288045365722cc360e12248028595c49476d70d274b4bc700c23f0302047c435bb50067306502303544d2031d39491d861fe2276b0ccc7a88eef5aa3e13c75e76219dfe8b2c96621ea8fec096115a95aaa5c9f53398281602310083c23ef93777f9a9bd328d0f8887a50905d3ad80b50f681fc290072e0b36c29d1d35617d9e4b9a1e77031fb51f73b7240302047c435bb500673065023100a3f280bc55db3f03e784a157c19fbeff905e695c3d1d060488b78acf921c9a2e5c24950422c90d292a5b97cd46a5db5602301fe261253e852a86a207558cf3d14131c8dd8cbbdff83117b854c55cf038b2b894fe5a593b4dd6d44575b6b8137144f10302047c435bb500673065023100c13e6cd5f8718df6ca6e8bd36a9c0e4fb6e0e26d4ed9b6d166d5f7d58093615569b37de5cf043d483fd20b53812249e902305963c63d0cfecefa65d710041dca0d1cbf39ee7d267de340069b71af6623155c8cbcf476a6cb07a2ab7432ade9bdb2d00302047c435bb500673065023048c64a68bbbbdfd8bd199d54423c970f7ec22b90d8332df259ac48a7e4e1aa8e68a8d401af8b232cf175a289c0f96d06023100c3f979874cc590eb6a860706c5f4a2c8f7166255d4c3c09c4a1345747381d895056872fab5dee7baf21e12bcbf5787e10302047c435bb50066306402305d4270e8d06411972bde3d4b2f968037306b02ed62bdd6e38008cf5a5dc3de5f8e11071ce41b55a10f2ffa21da70bb8002304bb738f07c5b8b1d27d1861428f96d60374d9d1161b5887a311070cee137c3e7ca66f4cb46f4569be40bfffbd5580e830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009c2e12f16400b365d5f0f11c00b0e8f86374c0dbaaf022470c5fe236d3ec8659be4a4c720bf720a44c10f70b7baa6f42023100b5fb77d829054e337602c26fc1bde8622986cf786591997da80d44d1e4c56edf95c3a97fbd9e9e7fa0b55289fb3862ee0302047c435bb500663064023004754d817030abb9944dd4f9d98a3cba4719ec44351edea8243eb2edee4d698681b060197d2a39db1f2133510460ed82023012a208458102432b9f55ccb8604f2dc5f190c5705ea4d7f276fb991352d5784c26bf50df57f74a49aa625121a62bb97e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f9402de707fef608af671e07318f52a69a6f1377d7d8d9a16aca7596c60153d3f5824b1201041110040066a865c33b7402301d238d64a1e187a4af2e5b21cb4f240c1de69b1db32d52a41f9773ecfad81f02df2b70e60d3c3aa020735abc9901d16b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c417fcf99880db0c363b841f45d591b84ee05b786e8b9183a257e918ec703b6cfe2edd7f6a59e3cef752e359f5a96e3002305a12149eb1ac30ad65238804974d777990df1b0cf6b0983c0cfe6df212b7d7348a22094c43e4199249c4114a2bc9862d0302047c435bb500673065023100cdc533f247683f9fcf4837cee99164a56736a099e9f73feb4afa89f4b5727469ddcbf6dcebf572c679fb40c23b42841f0230400d7fd927467002d37725f6fadec908584e64ce5ecac541729dd611ded5c0cc7a3a5e7547c7e4f7cc668cd7a9a8ac6f0302047c435bb50066306402306012c5aaa2a115172304d146ebff920a1085b50b80da81cae71a0129b92bbde7847fb163237e12388e661e14bda5973402306e223c49ac58a3780cb517af75afac875e8cabd66404396d03bf1150f44b6f826ace9bfee798861bf19ecb9d5508ae6f0302047c435bb5006730650230341c8c8c31cabc4eb73483b06de46a0a24512dec7a3928097359061efaab7ec74c118f07d7704af2226eee03f8ba890e023100eb5260f465bc0cac8e4f43a65c08529aecb8c7b0b0ebbacd7868bcf0632d9ef5fcde26cfd64e4bedc6ae1dec11ece13f0302047c435bb500683066023100f6e0a0d896caaa599870c1e4e2624c3a7d5de7c901a8228669a432abdf098d719467ebd7972d3ba8b22d37d549ab42160231009890b34f63102bedc43e938ae17c5c09bfa9c4911d02bcf4087b35422ec5011d3e2179bb3a7373e221c2fa55629821900302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301b90e7416ea2314f20ff3222cdb1c3519aa21e51b6bce20c1939b36042f47c0bdedd83d0cfb4336a3da86cf0cc008b8a023012c6ea2c52c3d97f2ca5b1418272de4dce0ddea3309642fa5e0eef2980bffa35a63e653fc68b6db8bfbd99fe8fed59050302047c435bb50067306502303802f044ce27f420de32c5241bc5f1b0e1ebb804e63a8aa75de09bc763f1e4be2c1abb245f869ff92d3be4aa2e679e0b023100ce3d91a0b041ec2c4f46c0095623e54d4326b9cbe3ca95f6e43808a47f6cc6c1a5d21b69ae29fd5dabf9903ba7acd31d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f02932cddf3f78fb30f20c67dbbd6e6ed6561663dd65fd4a029b660877220bf8e26c6892c4c9fec4e72b700b11362da402306a679e739b5ec79ab155d9a0305e1440e998e53cadffe00600a5a91f0e8806bf7c19add1505726f8670e01f6a503074c0302047c435bb500683066023100eb3fe34a35459c5349981f68320eb365d69afa3f902d495e54f413fd7b53b60c5e6bb7773a26fc7ed9078a8d8db013e8023100b472598bc86fb3b2c32da441008b85cc8295f891a6ed326c84d3c4e5d63b33d89feb8870bf7df03ebc9cf841e49b8fbe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301d1898e5dbc31751c5805659ef85f7b83275a948cfaa77c47a437c8943082d7a100950e6ded6532be08277b20a81d80e02310093ebaab6267a59d4e719862657892b6864dc39f8dc36101b8900d9d40038eb15fc4006ff882126f2318f88704cfd80380302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f28f5491c4397d6bdf04eabf52a6f22beb3253bf96c2d8a89cfd10b2815ab34efb89e8a2f4e565b7173df22f518c9179023033d8ae878068c1dc4d82df93b49311b4d05835400448cb38e5bf6da9fcd8363f2be33e1eeed9a77ef6db7a7c8c89a4e10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305dbc591916f1a5ec962fe226782f8f18e60ba0f9842caf21565a076051ecfa015d4f79f8cfd04187a03e4a1ee2dfc4980230599ec8e3b5538dab2737c8d280e3f73d3b379b6108c339478623aaa8227649922476f56cab85751c6743b6e65a87f31d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023006e768af3e8f396bcbfa35ad85088d64ccc36750dc81c9165f43f64aef020e232b5e8952c021c0ada27a382117f6168d02310092c89437da1223b3d43379a54e2d5be64cee6060ccbc5fe2b175d930a85bc1099e82d22c095754d672460fb91383ab370302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301ba1f800c770d2d1143ddcbdf8702142e7e1ebe4eed1e1549370bd3d6c1379954830ea025d5faf8c186eeb9643a2d72102302e313b44bc0dc8603359a59ced500d3ee5538f43dda21049b1b864cba872f017b59a6dce33b1d9591a24bfeb9a30a0210302047c435bb500683066023100b719bbb8d7a4f969ae6a3fbeb1325faedf6a30093970743d08e9fddc6ca4c123ee0b0e1d6eae98ad3cd4ff66f8162df5023100bb9532fe77bc57218be23d1a00378b32637f85ebe89c82e216d1559e0dc68160dbc92e3e416393660cab4f464539de330302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c8dd36ec4118c717ddccbaa5658961ceda4b1030abd4724f7e3d62fc4fae49b2a52722465ac1ab338ea8165106cd97c3023100ee3a17a3451a622f512cfc492057bcd69bc212776cad9e5c6d2473e2c17b11367d684f310b1ae66dc7cdc2b04b6fe4260302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100940a1fd4960c6667ddc60a7208659c08dcfea07ce0fa26b4b2f2a3d67a1b9caea782cd4c02c299bab6f6c11f5d5a904702303f4b055d4d352dee3287bd4d2b76a071ff2d67218e041b36e014df0f3638a32433a880ebec403d169994cec89b51171c0302047c435bb500673065023100ad37328f84ab950e225a22695f83028acd0039556921603c3133d289fd8664e28290a09bb744f101a4529f1336a16d26023014caac461b932744568bd71b0852914de783891be5c70761db5d6acbf1029db18bde5a37e80c5339722147f521f011d60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300bc0229e91b6b6c6d9603568eaa5b895d772e4daeff7fc780d8556272d54a54e930ffc08566d50f921ed63a53956dd5802306fca35978476354694db22d5ec5b98c57fffdd7eec31f05facf1a8f264442c3ac8c7b0daae8ef99a211f481df1919cd30302047c435bb500673065023100a2c86738190304911a7e316a3ca1d2d550e0e29ae975f52f5fefff6528175a2ae75aa93bf4da6ec794e8c62743daf9b8023026ffc15d92d7ffba2b46d8fb1e31212c10b7c45019ece04a133f5f87fa0f70ee62f307a763c749b4db699663f052e1c60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a99680c58964cb7e3d0366303e32046d1eddd8b9089b600f95e86881ce7cc85be5a3c4c8b4c1069af0103c05c9f9e5db023045179e06c248f00e0dcca2f3026e49bc845464aa3ffca48afe80a1791b2a453133062ce6f274685d3d2d6c34de200f8e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023024ae5c9b08c12be06ca2cb75225465e46ab4eaaa60e9d7dbc36cf1d85e52f9a6681f76f770c0c98027a01b3958ae5283023100ea4bbd3e72d14f15c4c831411a0037db0c7739e6fcc71268e1362acd5a1554c73b8b6cff2870155b5da1b394e0425fe00302047c435bb50068306602310089e4c9baee179974a06bd8c1f86a53970bc61828887ea341820a6c7922ccfaa337632816f89e8b3f8f4551dd8f9da85e023100f1c584ed6802bfa997c196f3197bda3d714d2fd08be7c1a56e1ad8c0aecd1269e1c325121f5b06119d0aae74948c5ba30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fa4e49a51baaeccf2811cb696a31dc0b37d6306e240617c4b1683ad7bb6b659231dd012be87651f765499984d7306e6f023100cc58f4fad6c566592793116219a5ce938a6b6c3f4493517354e57e478f8ac59643705ba99396737345dc539be5f5ea640302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307685e533257d62661b38ec957cde983e1be33980afe54fca48fc0bfccf926cee1daf68cfca4f0e66ab40d6809fd77a6f02307007d3aa6da5c7d1b94d517def0b9dcfb40813a6907a0a8b2131e4aab1bd85c5f2ecb9b8a39721e33d8ea8560b8cc71f0302047c435bb500683066023100c043b323dd52a10a852a90b717c74482c391454cb48443839b7c57979c94ef8bd3cc0fc55991d7963aa9cc0928781ea6023100aba6a61fbd8ef49a2559561218724b2e5011e34a277ff44f6c8e83a1e3409fb926023d8ec3ea6515da1c7d146017fd590302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e740fc4de1d65f5186e8a6d8f87bf58644dd19d0a7f9f8b708852eedace2caf3424c378656bd403cd8fabc41415b4021023039445216d89d0a184fdcf2f2d273da28f6850bd4d5b0cb4ecc21065cc1133815161a581250b4a53a84624cb67c442b990302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ae3959220c47f98edeb3c7b128abc73b42abfd0698ad0689e94d130854554494e8c3c611e784ec0106a46df78ebeb2f402307680530f480ff905a8eb94a739ca4d74a52e5c790ad74c7634f5d85f77aa1fd285703e93f8fa485adb22711b82cd19b30302047c435bb5006830660231009ea555c794f6abcb4af5219a7ce34d459f991765bee4fd96072fca39a3d98e39733c755d88d46ac8a69fc4ca101269f2023100f0a1414d3609d8d1e8afa88b7d86c0ff2bf022955d7d1d9808b1d8e9bc734e669350f473c1c71d2d614e2c3d5d707a6b0302047c435bb500683066023100b0ec062785a50e13ab45bb9a0935d22833366f6917e9d1cb63e82d02a7a51a2d3dec15383cf285b9cc819f573afb62ca023100a4309e8ad9d0815712dbf29184eef1a21dae40cbb5f970419a2107152beab41924aea1fabf0a4106b71d3e2c7e1863a80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100865ff4d1163f1df58d057ee7a01fd28467f0c0ee1a2c2093b7b4c31e4b2cc33f2bfe9932c0a5c05fb2c21890bbdf9f6f023077a447cc47ae0c256811024c1e812d55162f7f07f579483cdab5c9446266f43628de427d7cb3c4099deedac917524fa00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023060895ded33b24236a8e771b43a1f65ed6e51ce972a50a5bbb5e67aa831c078b07e8e687b918049a11831d1734ea2e88b02301c6fe059374ef8a8d01aef0f0ad2ed3582b0d767fa7072cee04d02ba6bbdca4645b1ccea1c4fe5bb6d11ef25be20091f0302047c435bb500673065023100b98598325009e5e963912946dd26dcb4c130abe3e38d29570b51d692dc34a7275c964f68a27b687b3440de1dc74e0d2d02301af7008fe72ac8502db778ea9f1a51244a6e317a94ae20c96ee1310b4675456490439a4f927b66c7627b143811c303fb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bd9c84f85346fba8593ac1e3f20e6ea02364a3cdb747d11f3c046638e5abd41fb48f1ac59f00972ea7ff0eebadd8234e023023f085e59853e759130cf17691d0f8f6a4f0bf00b27f129a3cd7bc7d91b5324e69a86f8a112c233c15a5c47836ae42eb0302047c435bb500683066023100cc021e25fb82735f87b779ef02d8e2c8a2b702163cd5e5b8029b1bba8a6c329b7097097caf8681776aed0431f5617d4202310084c53fe0ba8a948071bece15a0dc49d29f634a3298a0e28d94a80725944638a1fc094a4ed7cb2354266c5b59037de0890302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f6c96d3adddeee68a16c48a286c43f1bba2e265368d614f8530c9865ea75e258963702371f3173ffe131c8558dc73fc802301f0d2015ec593c6e5974549044e7510930e4f3ebd7008cc50641d20949f27ac0f2add0c3513e346023cf161660c915410302047c435bb50066306402304c0aa472482c4adf03f9395a2795459be3ffeab15a28651823883bdf1668850f84ea0f733d759a522d7721e57be145c4023061184039ec034374e9242de66f1f4b77e48e2c02c8fcb491248c6bfb86e9bece744e8847bb5fa8b67eeb56f45f3bf38c0302047c435bb50067306502305faa0278245c59b076333152ac9efbb65bd5468ea8faccddf1536871e3dd0ed03c5e41c0286b4321c1762bbfea1b58d6023100ca827b4ab191d1b06ec52399d0da6bc7d2459ba6072aca235b488d67790e4df4ad8bfe0184013ff89e2f8509a0deebe90302047c435bb5006730650230049e0828aaee81cbff45cfb4942ab216469621fe64b39655c35375d2e9f5381a0d29737287b93a23f7ad55f3619c157e02310097c9ecdd5a27379e5fc07a35bb8d1bb78d889682ed488403510d80355cbc0c30a8f011c1e4e8cf3e2afef749efb75d4c0302047c435bb500683066023100a1588d4356c30f978380ec89d557e37b30ab356eff5fc986aa591dccba12b6c306a4c8cd21b26f98af1e7601ca208253023100dd70f8d166bc791d5c8e9605436f8f3051a13bd8bb434a8453479972392a0db8fee5529d32316068aea72ed6469b36640302047c435bb50066306402304f091736a14c11ba34a67035b849aec054b9c18b2ccd98f49e27d829eba3f4aa94a7ba131b2628940cc1aea04f33f7d7023078c83d450dd2497586cd5090dc7f60bb82e63e9ea19724e6d307ecbe502843ae77dc32623ce4baa7af9897b1cbd231280302047c435bb5006730650230266e74670677f299079d9a4ad59fe2e4e229fa4e054c8264945a67e281e5885f1e1e6bab2f5be8c58da07cf1c8513967023100cc131acb6584a7ef7cf311597be1dea953742ef490cb50de49c4255eb1394e0dd0b38b543b39d10b9ebf18a6d64ff1a10302047c435bb500673065023056a04e440ca4919c9f760cc96a44627da1da8dade143713d48e1e7978dbbeb47b9b13ffad59b2926beced6b0bb6c332e023100a22db99240cfef9a23dd991bbeb39367cc66066aaae80037886a15ff2d09346c7a44a97b20709c455ce3c877613bebf30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023028f9c5f72d1996b141339ba317d5e5e6affe0251b4a48bb39e7359660393d017373cef2952803b97e2246543e4b6bd14023100c4b915b7afa33a1e109990305c54685781977acf7546ca234e6a8987a8cf525c50b14cacb0adf48d2a6dde2527e9a9ed0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230500220d3be82bfe9b3bb5976eba3eca0e85ce79f0fbc36db3a105a75ac06f30a66142f026f3ef6ca5d974cad8f9a2fb80230012be11fa527d9a4deef59a2cd7a836977421500822814477136dbb09ea09660d2f2ad9341b946f1eace44350edb44ca0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302540ccb2cf93b2306f3fa43196e0bbde464ddb417bedf7bcb0085d451032e34b93ac8ed50e8f02fe0b3917853a150e40023100e3b9e84b2a2c33c887cfc43eccf132d3cab1a368fc123885a969d78ee939669925e46cb7a518bcb3719afd5478e29f3d0302047c435bb500673065023000f27394dcc390391cf358a1957bf879b9bca15b48160cc84a04bc4c52e51e5e90832ed12fb092aff712af0998436cb6023100e1e7ca123def9c35903125a2cab5a29ce3b2ebba68bf98512c7be70f3e65e849ca4f79991e28e59f2553a3d7f6f85bfd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e46ab80517e8de20770d264af392e8bf033fb90fe1c1e06bc384f8c09ef5e7820f9f31a6126ad917f4668c69e8745c97023100d6c28bf20e3f9adac21a8b16fab726ee47a1d8018f0bd03d31ece13ebbd0f046a4b5e49396ed9363c67eb67ddc7e07d10302047c435bb50066306402307cc8be73b89afdd1a842ec2b85919b02f6f05d7a72fe943878448dceb834ba06d13ae1aae2eccc6389f522ffa4002893023010d4958d5950f62ebe44bbd455d48679573136616dfd84b2cf2d45c0d1bd6ac6addc9b8cc2b989fdb3744b5fec649ebd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f607d299967e83ca183e3b4cbe407cc2c1922a16e2fc769154b23eab423fb328cdb012411ccb3e45f696b0f8ef535c510230600712f81eb557856061012d8bfc239b9bfac7e5996f324d5246cd7ed5f0400e5b81a157597dce1edd19de566ac4f4f40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230553c1a88be872cfeead29a10eeb8536d660f153f10ef9c99f5bfb5406a3afa8006ed7dbce98b435e7cc08b4e7122aca60231009cc07e6fb25640c3082c9ddf8c9bf085352f5c703c699738d20fa3b6fd444adec97284f537b876e3a2d26f44b714daed0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023037acc685d487e214a7d9f1dda77bcb2c2c24562c8946d24db912649adfc32459ba58e7fff924ab5ad48c63a1f38ae5d8023100ed767254aacf6e8eea969dee4897e320272e78876087c07e6f556733fa42d1099c8da355b5440ce652b52e47d36709440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b4468a23d862f2c9abc45898af8ce257c167db7e037264ad050239e925a5f9a9e16bc3e84a63ef6686330a499460187d02310094c2cca4e45881464272f7c7d35d910b3e71dc87ddf609f990d8f1120f870be4482387d1e5aa606d4a50c59efa61fe300302047c435bb500683066023100c0e3ff0a70c772dd367d36a25e192599b2fbf29acf37d277cb7c2de4f818842a6a2223df9176c9c85e52ff4ecf3308fe0231008805c7ea180fc5f55702d415f901e35550894913e64efc51a6b42e51fc32328c8e0cd70846023d85b0d2248e36a2e7730302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230244c80b449bac6820457e729ba2761d73383d17c31d00e5adbb69dc38be7f940b4cb83e8cd158d7d3427da3b6b15e26002303a8b69e9e6f27fa2c1db48e98b3f1fc17216cb8ff7186bb6475cb8deae2857e65c796966db1f178ffc6ce07fc4ea4b1c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310086a246125aee014241c8d315a2fcc209caecf38e1ee702373d6d95a8b772817a3b2876b00dfe4daedac19503c6b65bd3023009312574ebc68968fdff2507ffdaa4d89be2efd73006347aa1b03219366f196f3c8209d00d02ce3b64bed0c3e4aaef2e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b34bacd334e50c3577f050876d8774e7b31273ac988a9cec1c623088f9bfb2a53a0b0d38a58d3fd3668e5c6f6f73cc3d023010511b9eaf177a42e86ca4ac56140b7d645456b2e319876b855ac215c83bfa42c6a5d017e39a41c9b3c0d4a132ec266b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100870675671e4b837406d8a3a0ebc967238f375908e9e5759869e34c9266953890b0c4897c57745773932e2a64c1f11ae6023100a530d3cdb9aa675fff63a39bd1a6a5c78187bced32b7dbdc0cd9e0f4d18cc43c79ed110aa55cd99ca39d9e3652ade0b90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230316ab2e99f45c72cd4c9c29db8a33d52c5c42325cebf0116c783d1b313b69f5df348d10d5c3851554e08856bb70c8cb80231008adee2c951d941b96a34da95e51967c5c031cebe7f340195daf4e2c7549c1b20923da41e0382be0ef17fe34893f0b3c90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310098fc78609b591981414e602625a79fd88bfae89828960299ce6274f843c305d1ecc38eb6db7aa9e5b50abfeb0f45a4c4023100c2ba6ceb6edb0ddfa87581ea8772d1ca7ce88742ae13e6f6d05ea4460586d06c2a96004a48062028f36cf29120e485620302047c435bb500653063022f669434f0bbcb265d95120f2673b4c2d6cddcdac46b0a326903cb6325fca789e8b533b3627d0ea026743998125051bd023024239f49bf2c55a8aa42126db3696b176eb69711efe4af2966f2fdb9f1d1964bb4762660f18e9d2eb22c92dce78e56d90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023021c5bc0bf3d64af80e4de72a1ce93f46a1fbf8fa1e2b14a97b4c229bd2e9bb12d7cd129f009a92fae4754c407a797c55023032e33248292c1f1b7ed01acbc144accde0dc92089e40d43b6b313e4388521870c0f70db01f45fa148d1c858d1832bc4b0302047c435bb50066306402306f118f7c8d93b91b7434b560f6fac7698b88f36e0e08c499beefac6539070d3035a42a64eba8aa3e2a4dfc1dddef8648023051775c51fbb503838a6b73bf4ff1788c90a97920467a182b89103f1da3bff1f16cade1d5a8876609741d92cf303c4f2f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230656668ebe642c8f0663dd1c7cd19d792896f4169223208eeafdf8ab238a2dfb356c68562ce5b58222729b30bf4baf82202303f2d682f321bfcde40524cee18a3eef96dba344b62baca46b7bfd554d9d2318226c2e899da1a913a19003cfdf9dfa5c60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304f642232b9f0ed7bbcbebd676203411e1f08bfa4d3c2d5e314018fb4c3948a056b2a5fc343fd9a42fff1e4c048eb2ad9023100c8db4d16a9006e2f3c8ea64a8528dbe212464f1e97b0eb3993aa3ec187b8c035eaa0516a711d66d0d0b95ea9bf433a4c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023004c50875d0259ab023d950eb29395e36f150c2e78de271845087c9b4eb950c913845ebb0a666c591a7b8fb75736f374b0230116e8fbf0743245d3068051e52ea1e843441cc0c8c5748403423635157631600ffac84a5cacdba558a6697afd8d02dfa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300471ba8edb15798d6a29343a405009ea50d4ddb3cfd21e2ad267ca35f27962f99dd82778e2765b2e49495bfa29bcb5640231008d430863d2e5a40ebea5ae7a1b56a3695a71c19d09cac865f29b02da504201796dd848293d46966eb2d729cefb347d8f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d487124a3d2c94e41e462cb7bf6ea699bcb243370af55df5ab6f61f2ae7a0f9e0c1e4c4f30157314c75a0eb4f0c1d2950231009d2d8e579c973aa568dff22aa31850c6bb0611853257db7fcde501489b029f224af443465f993dd26f69def3de5421620302047c435bb500683066023100d5b05ef35f72db85dd5e2450bfbbb0224f238c557ced8865fc5c482653c5a6dc90264aea54b1997619678830cfe168b4023100e5a46b7495152d112c6d5900d0ca373dc296de589ba1c559e465e30e574dbc3395de88ae2ebc56c04a969e7abbf5dedd0302047c435bb500673065023100a0e4529f4fe7715d444405039c2f50c1fc4862806fab82c61511e00ab6d34d3f378dffca6406f4017cf64548d29e0dc5023023baaaf68738303376a2ed0d08dc13a76badf53486aca8cfde657b0cc6ea374b78f796b5bc9c4142a128dcdaf9705b490302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100970adc48b42ed76fb0367a0aaae2085533fe42e1efbb95a7281bb932630ebb990eccb7fe614a1a7feaaa8527e720649402306b195182a01900f235239b337e518a301004d910717b1a8aea780c0d3054094849029843d634c0cd04af2c44c3e594ab0302047c435bb50067306502304ac877605eb6d6f412ab17c6a0533ce65159c87205712d294a8a8a577877ebd3c3993d60aac67988f0cb8e66c0275e0802310098e28d4f11fb40edc80eb74fb553c6c5d9774acb033b434a055964b1b612c8230ff1725013d90fc13fd0304234eadb060302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100eedf81182cff14d6dd372cc61b9ae82354effa2acf8b911a038d80d64f58ee0e3537c89ca62d1393ab7e2ac3395b05250230540a4d8e42c6728e8669d67c44d399ccd442d0a833a848648ff701e55a4d316734a21ed49c863a28fa8455f9849b56870302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310083cf4426439e8440ebfbcbc1bd0a60db2c60402be519cf1350283d700b40ea259e2d9a96795c1bd17397f474d69b1ba60230681ae6910725e5d37395c8d422793f4188ee98c35e7538551ed1fbca1fb10e66e1e85a5ecc008751d289a1e2a64c69b80302047c435bb5006730650230785b74063a1f88e8b909fb488c8785e971fd5fc86e99809493483184cb1e4ed9da1c498c8e38c9f31af547bd5b1ac1e1023100a0cb9832d98cdca6d644a31f06a857a7c26b22f69024ed8357f84e1f4b3e8619892f4bab6bba1db8a5d146eaf6e1220c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023022a263b6f362ddfca81bbf739af177def0cb513be313618c267cc084b8bbc8c59f6ccaf06ee9fea60617e1491cd441880231009cb51daa3b205c30cd9499ce4d1434422c734bc8554f0dec60d39eff28d75eedda244e45fa92d468c09c87cb1a57854d0302047c435bb500673065023100aee664bfac77a7fb08ff5325b0fec19194357b5f8c4cfcc9fcc062697e4dd5bea524279f390ebf2a419d33d89ea9e76002300dd0d5c315ee45d87b90f13adaf71ab21519d79d84c6242ecb2d9bdac7942da5c8fd852f9ee124b8ed01e275c644010f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f8baa75ae99e286e56e48d061d6f091374c97ecdf5d57142e0de4f9a9201d2767e17c9ab0926747f58342fdef6c255cb02305655149792648bac99e519637ba1a9f1532dcc3fdf560999488ffb23b797f8f1bddf80bef8d9643cd2562cb5a77609620302047c435bb500683066023100b1945dd81a0f0374282303ddf38a4c24161851512ebfbbc35b07c0b45298229d53f7006bb4ffafcd547fa5b930cc7301023100cc6b301689b39ed40c7e4f578878ea087895a65f9c666086a0848a8c28717ab84d225a251b7ee74f90875fd0613b840b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f7aa1f8f7e0afc3da68711a12c34d7a255726f5fa76cc29fed5d91eeda23862db73fa0e59b14d8112b164367d8e8602a0231009597e81386ccae05563a2874d4e6a07ea8acb8ad9203745ccfc60616d77bf9321ff370eaa826789b976d980fcaeec0d40302047c435bb50067306502306d80a5a9e0bce475aa7a620923cba4f895ff50b339e417f8ef64b72f3997353998fa6859494e355259c5718d48584bd3023100bcae3757d2c0258428808b119612939fb874dea4f85bbf5d43b615a79d0c2450185d8a91214f9f9dbeb5be429cc908f90302047c435bb500673065023100d2b17062ab3f3dc02c5c11f83bd1cda269f0f0ab05c2cfb8d4df06cefdb911e5e2508a3cf153caa5d0095edde2231b7002300bc239df5fdd7d76b3c7626cfd8501ac69897a6fc5ea9318a7a73f96e7af6f58b9c57ebcae7dbf23d2387e144e31ec280302047c435bb50067306502305a45896390c9124e627de9a06bb746829d0b7767519e3b79621fa0a3d19f46594c072bfa226adb1f35be22cdba18d706023100da7eeff1cb20be2e9b1af7fd349ee00952d20e16d4898cb637b2eac2048d730f49f5b2ff3c241bc973b73590ef41cbf70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f956ea9ac8a6f38f36e32f1e3a076fd582caa4a0dcaf8baf734598aa2aafafd449b8ad85116f2a0f7137fa018e15411302302fdba369852ac156af99ef6c6d20beb4b83c5646441ec2f3b79dbad091436c7415597da7164e6724b88f5853d38627d80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ee6e610632af517484959f6f49bd7e5be8a26a2b8c1aa917b27d6a01f334a7a5abbaa387b038b0ae591e291d2a814f580230338dca382f5f4fd55f03f937569f67676272cc724c971fd718ada6bb1b8d10f8378204cc53a39852b6a70c1d6c648f4a0302047c435bb50067306502310082c80f80df01666cd818adb98335096b266287a0667ce48304bc4f57a8b53d9fa9c29f6ad5886581ef6643d8fc22a18f02305bfb2cf790439de557900cdbb0d9fcc6d81841b7ee9577e8eaeb9acfb4086813ade018e8f117407cb4be24a66e116e820302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b08c529b8e1cc0b6b67042f87f07e4521cc128d78900881478db256c71e623dc62347eb2ab686165593a7c5017b0c5cd023100aac10ca52f7ebb365c5be4756829ecb5e758fbc9815e2a3f156d4327bc9dc456737db2566d04cf595f487323d2cd92ab0302047c435bb5006730650230493ab39cc05a467b88f69da6e242691ca8bcee839b458a6c6559b938003604b0b9a3fda6725b178d08fa0e671e039a44023100a87d323145b6588678d21ed5f74648afc30e823db3aaf6dae9d411ca42088351d03d3aa3a9a576c4d0791047373a2a900302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100aff922855416b6c3515f62f67e2198e637cc69f30763f7bf52350eedac23970f81de93ed513d7ccd512b8329d4a0933e023100a72a2f6150370b0442e1232a0799b9e3513a7e9ac4ba2b1779233b9b47bcec02506bce6a07ab5b7c25535425e47f13950302047c435bb5006730650231008dbc23a99e595f55e160942319e5c3b3804f97a2f8322f6ffcf7dc403ea91227e4246646921c95e672acfbf8f69d2bdf023077ca5928de38a51de7f5ea0392dd925894d4814b43ca7ceb8ff7ca854630805ff5173185cd374e3e3aa8697aaaea90f90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100806058b1cc88ecb5ac8bde93a9d92c2299f257e121e102eb683fd7246b18a7fe2270af11ae4c8a921f85e99f038536c50230038e425d67a1320dd03517d9744c5d2621be43ddda47e0976e8c53f9a50392ed43625748bbf559e8c971423684b8037b0302047c435bb500673065023100eb894d049fc4a12338f4212308e526d207d389994195338a1520425ffc06952ed3e72e91f06ced80c305cc512b8906bc02305ee44137ec7f97334d3c6c74465a07b4db3d5f393e39f75841c187a78a9b78636c7b45fd9fe8ccccb40aa2906533d4120302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100eddbb4a0a5080d78dc6027fba7b424dce4ff8edcdb25fdbae8710ac68358bb1cf6f379064ad822f34766e42bd90c14d8023100d17850fbdc87cc50c9045f97cef55c1715fd7e3b3531537b1e73e9a52af8cc6397f6c181939bdea953fa0efe33dadadc0302047c435bb500683066023100fce623460ba760085efdddd136286b474cd3c0a6e4d5703583d04cdedc839d5bcf992d9641c76c3784d3d3517f521c75023100d2ed82e433afaa84035c5700c3fc933a262dfdab0a5e144a95c0f788699570394f646e3989059c70ed92e953acf1856e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e1b7a7b7f5564c1b0f43898745c79b192796b90d43971621a4faf118cbcb6fe466318c2f6f2f88226a29f78ef9f8af7e0230314667c25817a63dc9cd555344947631e1e724c9d4287fbd8435b26ce5a72de1cb657601e56cecfb54a36cdf453086e30302047c435bb5006630640230175b20fc0d36af7d92d6da67354981b1fa2accdd3f9af9b24bab67a19dc4dac08458f2b198bdf2a5fa23e69c3344d9c602302dc1451a672ee7586f2557501475e399723a94dbbf50a9273d7f28a2da8c40d392bf45d551e9085b28262880ad06c93d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023034d6fff364de32169433c2098d6fa63d0ace4db45d0f4f2f70597b97c7e2f509fb1e0d30c17cbf3d2af04acbc9429402023100de66954eacad56bdb60eda64f7fa64d929d510867426eacc52c3988a05563b59bae77620e17516b4859ba7e582a98e620302047c435bb5006630640230152df6bcd27173b697a7cee9a7aede6ee2d34989c97288e1ce6a1d04f386bb17da92985ef0f4063b4b623bb4745672220230765ebdaf434560e409bb1f559f01c443a9c644f508123f45a5cdc8d93c2b08ade47fb6918e4deacd80b3907b0bd589540302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d34e6e6c54472e9cc50ec0f71f9432545b7010a85ad3148aaa503d355635ce41cd0effd705d1ee5c46155164babb034002310099f20ccf59cac8ff7c92921ecb88e3631cd9c4b18786226985c19d57def55dbdb3bc1bafe6bf5b3001a6cb9da5744a520302047c435bb50067306502307d9d40561fefdfe856dee9c5e96d731ccd2a0f043f7c74ba9396c00a0905e518850aa942f462c26fdaad86996f82ad3c023100c4628ec0873754ed78f7819b1ee15988b2aeaa2c16456f8b7ab25e3e56ea23651ac8d3d69436eadce461bffb3cc87cac0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300f1994372b9b0e0999a9a7e6ad9000294df4088a85e3c7a3f093142fe2ab5f93107cd0f20cbe991c75ff0bb7ce902ef0023100b5867263b32380d7c0b138cb8fcf8e1ddddee54bd7b5696e9ab5c801d6ec95cf8e2ea7971e704fa9821bd7ca9ff8397c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300a5b52adb4736db8519092097ab1bff1250b50afeef438ebab9e34aa2f09dba383d208f2f929fe365928e506c0a3b22e023100ad4197c37647507c95aa1aaa41a9a4e076c2d4d98f5c25109710aa623d2a39c7e30e334eb2615aaf1f89aa000f18edbb0302047c435bb50066306402300c30065a9f8d25307f2f503f842cfa4b8eab0245bd98e09ecde1a03500bc4f9fba56f288637ed41ac78d9982d86e38f302304b1b6df6530759156aee83e31b0e5c904ec17ef199eb3c50bdd89eb6ae9eedee82fa25ba0fb57332226de7e10e8233660302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230119a89e96663f7cf3a4ec9efc0a67ec2920de430a803376d8eb272133cdc0ed5401f2e4ab78b9ef93bfe7e20ca73051c023100e04dddc69ef00abcf7223082d554de9733b3df75a99b2d0b309c1ab0bdfeb946f4d148c536916a221894e9d4695997160302047c435bb50066306402306f1ca7fc26043725b26d184c711df79a1a20eb57922bf1e3e2afa6047d795509a330865ef0cacfa2957f41975bd91a5d02307c570a7d3a82d6fa68310aed4108fb7afd07995953be70b7733ac0546b6e5dd122e3db3443bee6508e5cd9fb4ee835550302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303bf23f72b9c1f094e74edc6dde7badf11144c1e27c8212fec44aa82c2236da2acdaf46477557ee090c14f6b32401f889023100dbd702feaf49cf17f3676b9b256de5f3d233e50351ccad878a0c78db7e2a2b1cfe3f74ec4a6c01cd91532a36d13c105b0302047c435bb50067306502307faf4217a3224947e0affbb8f782e746e19dba24937d63bfc92c6b21d837160f8476ea20506146f6a56f4b033ba2d46f023100f965bc8544b24823d0f407ee492ca6c23c4c194da5d62571a399cd8e5bd6aa343738483279d88fbc66d1ecbb8125e00f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230515aeb7cb69064f436993ac04ecbd44ebe12f68ba27d0588e6ff5b0998e63235dabb54ed6ad96fdfca9b8c98d14c34eb02303f813ede312d9d47b4d4e619c798346b3df7e351c0916c5d673097c14ad9d1ce77af32d24c4a5492d7cb428f1a3122ef0302047c435bb500673065023009f674652be7b18b5d436f2be0ccb13fd776780e68d499a5229249781ab194a321fcfac66cfc5b3898fe9e332745b0af02310099030c20f406fa7832dae6b571ade34b91d2cbefee3e6802b0f73843af34b8d2b313a0b95f245e701f3768178217f1080302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c5785619918ceba4559895a788ca61cb104878381dec9d7dc03bd2dfe4f6fa4326c5ca6c77b728ffeb0c78c00fc2255c023100d00b13f5a9efb636333761c80a1f2efa976034d50e28555b11a23c3b9846d327d12db55ccd7941ea7240ed0df51570f40302047c435bb50066306402304649e0b56252944aed5a6555933ba6c72f5144a7921448018692d82eb895a8075ccd357720e6e2d6f71380d0ac8dec0402304fd9fc89eb812a8a1c9b46b3d6be3f8e9bc6d09c5ddc2ae90a88c6dcbde8004806140277502fbbfe0ce494b1031221190302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ebc332d7542047294b1bac6c262d022ccb4b92ebb8e59b5ea2aa94d94cb25922116ce082674cd78e7ad0fdd0921beb0d023100a8bc7677d67357989eac816f39008f003fd524bb68b8a542921599ac0e58ef7c25590bf9eeeeb6bf6a44b341e44ab4190302047c435bb500683066023100d28efc2ffc2f3dc5d22ddafa9477d7b4ba3a3c860bc02930948cb47de0712bfc97401ddb5e3eaf3290e7318979189b1a023100da997d80b06c38428da00f3ce94ca78f313b6e24aa31e38bf1e6c66e4cabcdca2927b27f9f712dd8f617e3b34d9313720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100eabf5d3f4072a43379a95ae33af0320af7256ecfd8acb57e305830a292e1e6bcdc46288c80226fd6d9a301d7e119c792023065955e9e65f9dc4028d5af9a1b80f5168beff4f316c93b8c7657163982665202170291a647206a2c4d7e780ad27b383e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d43e4df1d382b60cf814643cc207d4d16cd2095dd58ed9d955497c35d83c30a6598479ae34e84f67c819aace4ce6ec9c023100b23f21b8d285c9139df2df9268d9e8b450b1c3b3a60509582b04554cfd45d234f6aee66b180d9955d40e98139b7f3d2c0302047c435bb50067306502301ef1e2b2e8c90f88896505b17a8e19fc3033efa9d0c404204b72868a2a056b3cf384f79a826494f691ee427d90d6d34e023100fa300f9a0a775dc755d92531b21e7919ef095b16fd818a73e1637124b0d1e233fd11aca9d13f367f5d010d1816f8ad690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b34ed696742566f8a99e96f45f9e395371d849f5084dda0bb2ca3f91f650cf5d1e71c36efb0371158e05985e46aa7bed02307831e345d7c7f58aee5665cc2d1c8b86661db62ae62e85b3c640874e2f72560cbfa3737efaf328250e8dd30fea576bf40302047c435bb50067306502310099a1050522a1cf3bdc108356e6bc0c53a85fe26fb353054fe7ae312c5a1460689c55d45d2d070bd9f779af699c0518bf02303e24f5c2bf3e006c2b00480f10770c1e26eb4ec3a488ae77ffbc381be47dae2e0fc292241c9289df2d73cf834c28676d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b4253d857bb3d16492ebe2b4ce549c212ae2a61e3021dad1f0aec9382977310882e65032463c585cbbc4f13070fbeb160231009cc68e8e4bc8cdda4f3552437a41a3afdbdbfa9c5e3a00b4762fa5ecd0324474bec831d22c4e2c01fd5e61cabd49fa9e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023008dd30982e4b8cb0d4b5cff0fe383e9604153c3a481eaa5429d76d6f1334cd9f41798329502bc004b01b11c1d79debe9023027ac57c929e159d5794c1b3c4caa0a8d7b2ae7b531b11145c747841b278684ec88343ae0ee3f02c7649cbfbccb9ea9250302047c435bb500673065023100edd949d62d40f1020f617e0060d790abc0bbd4e17c59fe2a1923377cc55b522c68e291546dd8e753e6fc08d31970e487023021d13bd9cf74752d227823a526bb5c684bdf421d991cdad1dd96e6a611a02008b8c5fd7c274778d7081290c57981b8fc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d9e2cb703c05c5d160fa67cd187c826c2e62fa34025dcdae900d674ac46ce629b6943a64545e75189538ff75f0c7734302306f91972018412194ba79a85feead047d34cbc3854633b89a9db25fffcadbe13497d619b79d442b298afd99be9d12cbc60302047c435bb500663064023007986170359447a33fcc55fde60e5fc72a85e15cc30603255d86c452b76066701637c1fb44bd179d729883feb004102e02307b74642c3572ea8f6c67dd36c37ad9fb1fd87d6360830b56ccafd6a384dad6d0cda7fc3c8e83af9890388b4c1aba83ba0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500653063022f3b4ebadc0ce82318e51277553addd348fde94037d5b963f8092e847a1042ad287f073a8b8b22a2a23e1b430a225f8302303cf32f3ba656867b86c337c2ec7820af43192815b0df8b4f10dd778e46fdd59d70272c0cf3e8ca672bfb22469f8431050302047c435bb500683066023100b0bfe86481ab607cabfab06aacf4dfae6275d5281a329418b3963600938a0d47b85451b1283f648bbdcf2159323a88ec023100dcf18b1c96e00c1d93ca1f3de32fb7d2d4f962451574ea9aaa4c787084a588338e886a11ee5e3b9ebf2afb545708f10c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230029118a8efcaca1295f1eb9a4fbd465a977c2cc608f25962cf0a24dc61d5544c1020ff4224e61ced1f42541ca7e2ac7002310081c9ba4ddf0a08d63812258bae85d2096ccc2cc252dfd9aa96f8f46703a50834970a8b922a5bb83e78a3640ab028c3f90302047c435bb500683066023100da062348e9af5fff0529b0fdd07287772a5bb04ca7e58af2ba98c8bb5cba22db6e5661730192e55090d832f0afc663840231009c998007a1be7cfe816e31ad1f4f2cf6c0115224a064952964960299d698563f4cfeaa6769c323fef845c0305c8172220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ae4cb499123284b6322eb9bb727c4696855477fc85cef9e24e8ed46404002b355ae9455462123b0d20ff9b33836602fd023100f15d9f0762913206311568260f42bb9ed921cb2f0ea068de9fface64c63c309c52cf0e782383bcbdfcfbe23a10d320540302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023068c2ee610680e13a387e8bf0051178f6c4aebdac7d8d3d05a7243d039015af97f04ea4555769d9992293352c9f65073a023100f41b6a5e6a6526bdafba743b30841271a6c060ae82b10692b7fa0f56bfe02c29a499bc48d0f6e45d382578f94fccd3720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100acc9d0ce7de43e4908078e785576faefadfceb44cfc32a610eb1a880e055581145c04c494f7628a19a0a069e44c128780230577e4e5e460b9e94c7d21e14718cda0c17d3e7560714a2462226fabcd3c5f51f4c81dc34ef79772a449dd9536f2e47b70302047c435bb500683066023100ac39fe70c62e95db308078f97cbf9a69a5b36a1b05b45510f06d1e205fab5e4049f3451dc1bd0fee78e630ea26555899023100a4c8ed5dd1713de16620fadddb47f9693bb9a08cc745d5e15e6c8d4f56bf04e78df37eececdfc023609f51b752cf95180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d9efcdcaf41f47185aec64931e349653ceaf581d62f47f26914ca8668bb83e0d422dd2c6f1d9ce755fb503b18590c7e2023100c62b2285dd0ef0270ef1393abc04e920765326af9024f138ea671e270cdc7bc3241bdb30e276b596c3dedb7345286e5a0302047c435bb5006730650231009aa841e98d5a51e92fde6ec57d00c8d8ad44fdbd1cdc5c2e1215f5c846a212de717b3c642a2c82c5bdf5fcdf0bca8e9602301f598f7a53a35b8c7caaee0082c0d77326dd0595c148da314b584359bf767779f0f95e6177400a88b27a464743bd9b910302047c435bb50066306402304981ae49139be45cf29f63b7143f91cfce1028847092c4e4dd25b5257920835de5d9dda38cc162577350cd5b0c374b410230340a4e039566c47a2a3e73f6bcf5c6d57515495318bd5c083023f45e2e1218cbe9d0ff677b1046ed74200c85640b6f2c0302047c435bb500663064023014a4144376db7a9bf83fc7177b0a212ac27059b35fbb268975fe5ab590d6f1f0775730b1f1dd1de380c43aa077e890e1023011762f3f2fd22b6c8fca4e1f554c00aa446e0c09053cd8db3fa103a68bf5f82dfca1beec14484e4beefbf6d6176dcbfd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304cb7ee16c4ad9b92432b6ee71a73ee92b1e54da27011571bde547a8409e8090110d11c2a0803a56c4326c79d23e7f351023100cfe25d0820e5ba8fc9bf7d0be2dd7ca9827499e5331178e3f424c531b1b62422285b3e223342d371b4d8aa4358d086250302047c435bb500683066023100d0780a6576fa21e4a2ec9774a3e10c80f2c6f333afc1fc60e0ecec2be58dcb3a6e02fcc79ae5b39aca06c9b557adc2fb023100a52a27693abe2542651bd2cd27883fe025d9bdfeb7f4256c3736e674f976d62d98afa31341352f9ffef8eccf20e97f3f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023008e8e01756043e982f70df58e09784b2da6ac8c8a44b557790d506c82ed8c7ef7351cbd01e31c5c1366a9a99f5b416af023100ef4e054546e96f722dd98c3f2ce2fb1e8b2d6212d57799dd1e0654fb642a8acc822d58c37278b94a991169265c67f2c40302047c435bb50068306602310082f3da90e232170685b00d959fc0afd88ed0320f9d96d9af8335512e0252fe488ec755758b1ed9a9bf652e32915b6068023100e0f98d44ef2c6cbff2d12886ce90fa30bffa444fa84cacc946954497844ae1b711bb4c38edf2ca991e53763b0bcc63eb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310096fbc0f409add0218ccfa0dd352016ecebf9094df8aca78a7e5ed384f7adc28bea0890b0dc16f3eff57c0dbf11712c28023100a24ba87135fbecb128d7e834abc89d9d2ab6dcf1a729ef6d72de18b852c70eafefc39b2a7ebf17e184b19459b5113e220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300d4bd265752213cd4074bd24318bed65f3440fec79edc4c205ce964b851229a56ad2e5db610e7e45925cced5eba737ed023067efd266202b84982f8495e0724cda7d74289c0435b1a402f6111b51b48422c039db46f243a54253f2b8cecdfec9b6740302047c435bb50067306502305b62ac6c3750cd4fe7dfdbdbff13ef247a64b4cd831b073f02d18a3a5b72835c6a34696d1695bddb22a63566b23f0a1e023100d4cdaf48043cd4a528638cb7fdd02f3a35835c0fb1a7c31e6200abb4b52adf999171eee6e23ddd8d2339e55e8e08e6990302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230749b7be0ce6efc8b4875008ad734ed7ea776d266ff509ed5f05d1557ce4720dcca6f03fca0a1180a058cd55b3c2eaa56023001a2a21936970ec3f3c524b41a744e242abe4014dabe65b02e50cace68f12cf1a1de40dc27b4b1ff0c095bb18191d5d20302047c435bb5006730650230444018e62293e95e72767b99745a19e62cff978610d71654107acd86e2eebc6655eaeb8fa6560e959593a622d591c655023100ceb8844de71ef141f5e25f26c474001d12d21eefedf6bac70547e5676ba37ecfa1dd51630fa2254539119fa3268548310302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c5410c505f301d62c25ab17468e9f11edd0fff05c9d53247d8d4822753cd049dbe62241e49fb28fe80ff4830e453df9b023073ba2003b9f8e26b01820341bb5c2534e5217f240db3f1e0e8ac9ef2eff1365e9b5d964947f9d3289abde3851a2127be0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305a584ee3c6777a35d7bf89549d45bb925e2dbffccaa774d6377fbee3f432e1199f4e3942f37207499ca1be9fbdece6e402310094807ca98517c6e0856f98524949e9aa3cbb9c5de66ba62c63cddb40110283115d385907275b7d2bad62b26cb1790f7f0302047c435bb50066306402305b5ad87813dec6a5ae8cf85deeab2de96eb2d0accda9053b6c6dc406ce1a2f9fdea417b36fe2728270c6cd30d1b5ae3202303b1c655792987ee9ceaa98303715a0d2562532eebb292ffbbc6a9a5a2eb822898ff5aa53ae8e796ef830252348f8e73b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310085d0860a4c1cd0749c0ef465aa2cf39e966756487273cf3ef50470e9f49b966821f783309a8c727fe2ef927c3bf571e00230042fcdfb48795f821a66f21646bc8c365ad0c40b93b05c764eebd77b6a4fd80cc743ba5008e143d932868c5f7ff5f1690302047c435bb5006730650231009dca892b05347c55f6920d5d2e76dddd4c472e98669e4e0be81eee69bcf5ee20515c509d8502ccd759688d1e866892a402302558ae2934538a0165aabda151ffa1e1966e92947898215498e6ba50d729eb89ec8136098dd723b7e03de9faf23d8efd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305f4bbdcab87f6292e6d6f335ab45f88a93d0b4c61eabf4b3a6900a70cb6daf8be6861ac285047023cd5d3f2790b4b2f3023100f6d362b16b932159000f40f4f0d1af8965fdc3770403e3db9f389ae20b20eab61170a42dced25b5d81f5cfaf9f80cc050302047c435bb500663064023033e4084e1e54cde313357edef3cb153b9f8ac5817c03f9c37e682ed902cd7988c15cdd308ee6b9738b7a4a8c68e5a76902306033835501bbdd41fa1a4ea1f9588a51d0235de50e55d6fa2da0f64bb860c879d1eb8afa68be56cb12d47dbf1b6c18e60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d731872e03670b033615da17fd2e8c44f2bd3b88a2a562a92e1c4cc7465a38141e3f9e09d156288af3adaf71f48eaf4702307e3d016c0be60c70071740821153c53d742285e5d88bb7e87497633ac108f4d4196fe0bfc16e2e427be54b26ec22a9f20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304497373d13e325423c25e19a9e226343f7200bf1ec08dad56a1666ea1e9af5e194ef4de2df29874e6cfa6e566cbff085023100e9cb7f02cf061941f395006c8b1b34a86e8fa53bc8a98017f282fe78f6f1422e206c4fdb8cb148b254a4757444cf4c680302047c435bb50067306502306e093ca44f77d2c14a71e0cd308e2dadbb40b519f80a52182f19d5aafd99a96204c73396eacbf0b25641efffbdaccd860231009e47a2c8f3f248ae9f6b7436aedf90c485abce9940e0cb06da38ba412a38bc22b7d425fb8a029d73d23f7091b52dab3f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230467518f92c4c1cbedeedcd35bc7a2cd67a33c2141dddd72a9359517acec66950fa7f8180d5425359fc7870550512399f0231009eae936a4758ef1571354192667d93eead72878bebd66dc219f85deea3e2f76b9a2d9f0654e5c5d9fd25f1a8770303450302047c435bb500673065023100ad3592238f9674c1fe8a49c59adff0a8aeee11e76df09d8447410266153e3e4fbbdc665499b6bdfaec2e6c7a527591bb02301f579baf70178741b4855109d9fa460c6496caee865dbb6914fca6bf2a2d121bced0e9ab91d21befaced1ae22d12cecf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d291457aa30c3a0751bcdb3c8948302237b65c0e30cc2659f738fe20cf9faa25f16e5c17af431b343064453a338c269c023030dc1038e8f630e04191d20392c951299a144d2229b40e433cfad458eb074b78b649ce512b9858b909ed97da908f7b2c0302047c435bb50067306502310098fa18376e16f85d56dfc5aa7f3fbbd1efb20b677640ad4738774ea054c9f2b7b36189862aa642590e06c704b194433e02306e9abce20ec276d5a80538411964d0913d5824a055b59cfbfab5b78cc37366e570cfceff6aa209033ec916cd5cd5cb970302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100824026ea076d8baad2097ae9e17789477126916eb35aaf5658b82acefb4c5267bf226ff5b701c1346ddcd00e5a5e5fbe02302ee58f4dee125401e100b2c998153632acdcd620a41a9742aaa151b03b42217e7d986fb84c70d5ad07fc69f0c2b5a1410302047c435bb50066306402303f2ad1be35635457a8709aeb08939ec2e874b93b10b84470ee20265a8c42fec28af29b23718592a72edced52109d0ca8023049a446c8263c9d8425956091ed967de7e60c7c284ac929a2645d42425db479839924a8667c0fe1be0cf4d628019b8dbe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230195496f2ae52efadbee31affa8d0c8a82c17ed418d7838f933bf4b2dd8840c27ec6bd91f2911878bc8317fc38326b4f0023100baca60472a777b26b62993e759bad424efa90078f977d4feb7fa864ba42e37ac9e0a0a0cb68eba18d17208ce2bf317770302047c435bb500673065023100d5e38424e1e4376bbff133ac87e45cb49088a55d9fd41ccc51690798dd4abde64ab45747598f2e037115e3709368c8a10230727310adbecbef5979c5344aadf3cbca0b0f44e2cb9fe048e8bded1a7d0ef762c431b12a80befbe4e82243959ee61fdd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023000f10adc07bc9f8e05c8c177418915d0624931bcd5180f83a7a0ca87c3b158c71472db333ad94831db9bc9e0e5112557023100af793ce80ab66d87e4c7202e3714ecfb9ca2e3c523cd3a92b29ae465c4a1cdfc93b14ca686b13d722ec3d8cd571537e70302047c435bb500673065023100a49a436fdf755329432d5ec09f92985dfe8343cf8accc2a2d0653f8a9866dd2aec6a337c664dd048e8f40fe82a14f04502303250b41eba474853f9191d2e55bb32e024ce429e0d688e091aa94a8837ec3ce9b6e9c38ee8c7804dc36523aead45c2ff0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fe2cfe2fca4c4bb55869811ea5c34ca3b9c8a1d2e4de670bd5559a544f23b18792008f274e55369d0d8fdc3631d8cd74023100e7c0489c8e86329afe00a7f3cd5253c055b40ebbf112910be3dc61e164a1641ce0c6d0f739c3e30b49525461b60000c80302047c435bb50067306502302dee8d12dac7094a1a1c36ff7a6f164066b0215aedd2510166810ca7c97ccd44878f54ce33abe8001491b89ab36ac9cc023100a8b2fd78192c97acaca6323cdee1230d5205712ed9885f59d1a37a95275764a5b83279514deecfa601145521adee3f110302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301d200854ce89ed36f62c8b5680a855fd5b48d7ee3ee012b392831097e8ca762e641e859620fa2acbf7b288ea7daa5cac023100fe805c2617639ec65710e9d02688b0048c6d32569fc7820e51894fe82d947603b7ab49fd08ac69cd989012a6e3f338ac0302047c435bb500673065023100bfa62f623bdb9726eeb643f683ac37228700834d429cd5880ec5657bc8060cb06a30d147a272ec8f19cd5d4e6e41067e02306e250c5f39e8a1d6b05294169e05fe7dc5702223e952e66c5df9c970db085251c8090ad3722e1ca4302ddc124772076e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310083ae30b1c7ab83a1507fee0c7c816c1fc94c66b85d15cf64cecdd52dbb0e295bb189ba8fca63b6b0191d9bd237b73634023100f964287b1bc9750a045f7352082fefd5fff7b569aeedbdc6ce1e333b01bd55628b961ce8dd07ca5b24644b43cdb049310302047c435bb500673065023100c2d61d2a9e52e0c95f0c5e73d4ae197a47b31a3ccf4a6132505b703b7857db919971917697d1fee074c20303200e937a02307519d4c03447293340b86cb18cc715dc48e15f4eb709652b018127ab8f14b1e4b9bac1c4a0080c87fa35c548e7c3f7580302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302ea30fb2a64e9e39bb045c2875811f2fe015f9f98522cf0dfb55266ed3909fb041a234e0b9be57072445c7f8b28a7611023100c109ca1eeb6073f218056ce6555e0608d93deb5f9a5bcb9ef8c8ca8defa80d0ddd71cb494c4e1f30672c92549025d2590302047c435bb500673065023100c422ead3b9a4760d9aa75b6dd250b3bef1ed611b3ade566bee788785e55bbee07d1d3d3c1466959a1c1ecc0cd7a9fe5102302e02ca20c518a10540664e33eef7e8ead501c4fd3597a26fd40feb1fdd58c324b87b29cf24073243d0e5f4d88755ea920302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307e181e4baceeea8ee9fdfa80ada8d8d5ddad653cb40c004a118a6c28f0efa31632459e02fc68e053d70cec72cba1eab8023039492adfe1ff0bb700ceaf40344600a7fc98ec46ae6695ec61758da4fc1ac3956e2c7853fd9d43e25a03bcf211d244020302047c435bb500663064023029c92c8553ebf3a8f381b523d822821d8c49499043ad45616703f826bb01291f2de42ba0a4fc45a05c32f450047b6972023044712cc4d683ed6a2a72bdb939d3f4cab632e0af32e80d1839a7fdddf98175eaf77f099d5aa826d5a827f34389d467080302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306926a11ba4c75dcb553e4bf1cc6c1bc61dfc464ca7e6e0569ad71f68e094f1828554399c54fbe60ff83914857cee513702303214b148a526d420c1cf2fcdf5b4c2737c523493a952935d78b8ba6fae0a7dfa8dc6ac6ba56d944fce561556832f153d0302047c435bb500683066023100c858242532be42d296a8d01938930f837ea6c9531fb5f6459bac9b9073f02789bf82652ee02691ca997643f4b100db06023100fe50843f5d083c6e9077e847d302b1cf1158b199998303bc09a3da2aa7e58a148435567b0ffcd862865c78e0ca3d68870302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301c18e0b354dcd2855903aec6d08e21907a631650df1fe8515fa7354bd4f8c7b877c3160171d7361a19f21c3bf51a8c37023005f3e28c027ae5388b728e0e3ce14c51c9d02b69011168b85bb919c3a5bdecc445e3c945286abc0d5158c458adcfc86d0302047c435bb50066306402302aba575302d0ca27abe7192c9b3ac292964c6e893be7f05740fe3a0c53536330ee0f8c484acb1c224e94bf8218fe85d902307fcd621383f2ca8a4f9da9aa742022e069c6c9af0cce31c9800000d9633db4bb663343aa945b1599ceea30d7baff7fc20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300237f1ab8433ee1ad42cc6be13cb67b0b18370d6b8177ec6f8b2e8f6d3bcabe1b38d2d6141a2a22d8156b4354f7a95c6023100d085ae7246def716da39b0b8dcd0f0e241adb99a75fb8d3e56ca41bb72fe882f27597c918d10bb3e2e414d47ec825ab90302047c435bb5006630640230096378d8aefc4a0e9778f3121fa39f49d40c4329416baeaab11a74e662503087f0ff88b08c767074a4c7ab22103565de0230263727b9d1125f6874c1137f382c536b99a1e2b3b56e29a035a27a7b3e7a638c58a77abd82ac9e3cbdb81882f11bcb580302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cd20ca8cc25070516af2760ff3fb498c089ab970529c8c7dc551bfe13d592f5f375df7ce4032d80fcbe3cb27d2507abd023100c65144eedad343ffafd5cdb4ad8c60e844b209b62c866d9486c9bb3e2e304eca89c95e12a01249c84884983373f6c4230302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ca2610a03a784f34104bc9a93d37828a836b14604af99d271413253cfd0c535555e3e7e8ef744cca655218022d7796b9023039761d7ef0f7ac13634c38e1f81a20d13de375185f212321076a79b772e42f106cd3fae5a8a825ffa7407786baa91bcb0302047c435bb500673065023010727731ac19778e9e2516deee8d292a772b2d249cbb820f886b75117be5e1e388cc0c103ecbf82d935a48fe30f94c73023100f7d0c0b8418a1eaf972dd8cd76a91a41378ca56a0d6cd7e819de1afa700af00c9d269497f261adb8ff2e3f4bc40e5de10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a2744ad6b1fc57ebe7fef9edb71c633940261a1468fe15072137ee795f3ce80559eebfd3a17c1f60b2ac4cda1f6613ab023034926e333f965efd7c65874cb1eeb660b96afa3114cbc458e59c7bde063a9e3365409849ebe7dc1204b33d0c73e1db880302047c435bb500673065023017a3857185c1ec44babebbe9d40ca4ef3258fa9dfda6f9fa20662ba4d0653d45ab40e1b382fc2eff5f91a126b3024cff023100aad13671cfb07bb1f7abb0a6c23e95895e2f980453b179e79cce68e9c37c6768e4f04f65b89ef736bb4cf2ede2e44ab00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230434e6fe9f4e2283945aed57611dec070b95b3be7bfb17a1879cd21a3a11b3ad76bf7014563a287bac9f525d336c9b2ba023069e13fe4525d5f7da23e998db6270eb400d158620ba46c2da2dc4b3ca0d9c2745899e39f40e83fbd0f694b42f9c899900302047c435bb50066306402302312d1627d357ac0657ec0e0e9ed49169f9fc982a72535fb16cc3c9d9ae1e6b4fd0433642de50c232ce2852231628cad02300bbcfa94ca4625b0fe686ac8fbf18fbb3c5e0a378ef6d6479b56c77a7ecafaa16df2231e596325730c807ac840a80a090302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bc0b72525180e226c596be41bd687cc02849b9fa81a38ac02ff147e2965ac6d43088b46fb59558b5ba54d93eb6b671be02305d5f93f14a0900ccc9d977daa046f380e24015a2af8c796442bfaaa835eb1bc41063a12bf92ad2faf7b391d3afe4cbda0302047c435bb500683066023100ba93009a813771c7cf45f14e81af07ef472a778a1eac13d80ed212fa6189fc3f41497ccc39779c1c8411de96e9bbd674023100ed570a6f78b561a7641d9e5248bdd9f99917964aaed41c8fe8cc2fc4e8b2b1bc8153b268608c5d08785d8949fb1cf0ae0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f9f8171da8809a4c71897256dbce1709d3febb3a37d5b18481307933455faf03f5fb8c9bc4302ef8876912b6c39afdb002302b1f66e68caa05a5440a57daf72a8122fb3c662addd7d656561f5bdfd41004ed379d5dec465f2c01e3b3965d57f7a9620302047c435bb500663064023051df75f6b937e8cb6ac8aba754d65a69acaa7125725c1bb2e17ca2d24435740af00d494cab14772dd93c45e2853f01960230220337b046b00a724771109061e68515acd7b76445d1748f5f57debc52931436d6681f49765a73d4f9f0fc78a77eeb8c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d939414bea5baa5b5c5b563418eef661be48a2a7b93cf8b0bfeca3d0f0479b77e2c39cf8f92cc1f1c5f9d8d8fcd600ff0231009020bc7bbe5d56089a5cba91ab55e797ee77233cee575dd7052f0d07cc71132934083dc25e7cbe87b1f4583531285b770302047c435bb50068306602310094bc91f43280cfd28ce4b39296df3c081fdb92d065fa658c6b99268e71c56c959b5fa2c0d6aa005ce92e063ad08330dd023100f1ae500b92adc3a7330de21999d7c96bb6e38134306393467114bbcbdc1338fe589315623946d4d132ef8cca9beea2900302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023002a29e9aebf8f66ec60a6967c2b21d8ef3662ccb9ed5c433666a4f7398d287bbd9dc1d155d052be12e8df4063b865749023100a35599473ac0cb7ba1d9ac03a3c125cfdb2d9c050c631a856aace478adc13ecfc25e637a3f9ea3774800ad259ca09e340302047c435bb5006630640230308cc6714d28b0782dd8f88cf782888cf2bbee0c024590cad293426691ac7712a73ff5b2d1d83160c8693705c0634d8a023014ad817154686d1b670b03ac7b062a9607b2a90cc377b79a950a2faaeb17758a85450e9da20917715e568cc080209dc70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023075c9525e6c81fcb341dd80cebb0c7531e188f05e74c033e10142a87a7d10f6a72b32b4b71fe72e46b6a439d08cef7e0302301266853ca960364415d4446fa1ddfe6eaa5b9d3fadc3f3b54ed1c528273a84ac656434382368066c24a5a72fc3b02a010302047c435bb5006630640230480d2b6b86e63a8bfdf4bfed64c11c71977a14324af4716c147a27cc4a3985b63e4bc65441728ddd32cb3d085792d7b30230663af3e94f1dc9e837d4f5a895498569014852ca782d8d00492e3780567da10187c5aaa35da6ab4c646a800d3e3a4c280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f5d062a49d9b9e8c64065c229f40a257f7d9316b9bc1a3cca7a651b4ff637e89d71e8586c097413342308e52a7eccf99023100ae56961f6d612518d58c7b70bb9071fa8b58c7c700d99bf786c49f7d13a8f028fc174af8ae956825e1dae04c9133c69a0302047c435bb500673065023100eee64312441d2306c163896c3ef52040fd997df4b9cfc278a2eecc9da60548f2d2e8de9c0294dcca3cec29d1cef4013502302bc711329ca66e91425fc41ed9b0f312028ab5f72bd2d5b07d1f9394f2c3752dd35b69f47fed423a77b112a29e6a91590302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f711b26de65bca7ab1c5535cd33deb118ce199d9908319ee696268f8191bc09e4f3fe468b80b0ea61e3b2ef8339a701c023100ad5604c859ea4eeee250e197bb7a1cd5082e4b5732b6c2b08668c07d011068f35480f63af9f2d4c3fb37852c2e6c502a0302047c435bb5006730650230576fd813bc6c8fc00df44afe4cf59d832570eb7192cd7245c0504e41c5ab2a02632d599fcd52dba0eca4c57bc1ead04a023100d4e0df9dfc148c96a63f78e017eb3ccbb9f91eebc4cbd449ec0a8996c35cd62329eded1dfc8f3aeabffafcc704182d930302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230343c3ecdc2f137d412383803ac5907a60a3c9b498a15a0be97e59f7f6ce5b3b6d210ebee0e6733527975d28b316966e0023001d29484d816de0593e5d5610380c77feb8d9cb28b88845e0240f3eb5d1165eb10b69230f751ed39097f0526c6c6cb4f0302047c435bb500673065023100a6e4ba04d1a94b1bf3efb152854f3d9e816dc38b6ed118cdc10afc5d145524d3c68accc1a8e37a273e063ea6f92ed226023033da7625fd8077fda154cd1f06fbe8a514cbdec3f19b605cdde83372e763f111f6c9a1363bde59336fb4542b994a5d490302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305eb0d723117f07637f1006ddc7efe84ef11272ee098360d1dfd7ecbc1672812f467969746e29d390cbfea21e9445114002307466534264c3a2ab71c7efae778f71811b1c14511a1f2c3ec32ecee3953e7271c04663ed5210e88a4d6ad00305c9223f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009f1b6a337f649fbd67436a7c63b4f154d5abba34d9c6b81243911e7b9e43580181507b5d31f3f497b86ef50669fcc720023078034de29fab4297c4c876ee5e1d78f2c189714afa43fa37af63775c1cd0abe49e3c44358ce8dd94c5763ac8cb3c66ff0302047c435bb500683066023100c9175ec35c06c732d5a0ab2d3e7cd403212c89614bb6683e7502fd5b32aaf251e1e250de551638c6a892373360b84cf9023100f14b41a67957a55d36ac396f9a79f178135f1d267bbdb3f6b103d214feac104087e898b91fdcf3bec362ab1aaf75de0e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023017d3bf037e4438802235ed537450f89bed0ea0194a39110e8bb054cbb7cb98e7a918fbb6722da642ff97ca9a504383760230219db9d1c3b0fb8266cf87609f3b65854aeab0f07987040525184806efb8cd1e424fbcb21a76798758b84abddb2112ab0302047c435bb500673065023100ec5f65c04aca3c1da644822086a1ff4f78c1b5976489f4ec4c58959c423a81ed6c2ecb3a1a5ba94afbe4e4192b6a87540230643ce8385b3e0a8c4a5f7217edcb87d22a58afa698115e05a187c19aa6dc566c3067151f50bdaf90d928dc5f24bc4f8d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307fa4e9c1d760345cc50a5889549b7ac090e6963f95eb4b2c909a0c84d98f25d640a27b77531ffcacd39bffbd82104eff023100c18534cc1e4d09951fe088816e646297a328feda10b4189fe00371e7b5e1f3a32dd92af754b2996c0cfc81faa19bcde50302047c435bb500683066023100a2f0c75c93f123d1b0ebfc2ae712b1f2edf65c363fc969ceec8f90d49897d2567a68dc8624acfbb27a6f1c749f1436c4023100e89d30ba86205a2a883f9c2836e2cb95e8c7bbc16524202cd3c48bd7de8370b2e13f861318a7b01fce29e78a9fc12d3c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d1fbeceb1e82abe0fedc5a92c17cf5d2a9705c34a08d0082c26f64a0124ea8f3f39a65cdac4c3572f4269582b0fbca660230187b2bea999847bfa1715a89d1dd7a4717a8f9466ff19e3d8a5b2533cc0ecdab4e0148d19044801b52eb12bb5c564d5c0302047c435bb500663064023007396869e8f534dd62d5d4fb13a38e5c11384662e6c05aa402a1fcf37ae155a53a908a4013993f44615903684c6c19ce02300dc5be0eaf16b2394eba660a516883ad7965a4ef5b97addd798d987f8b9466ea61fd158748fcd6b91379cf003617ca890302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100950477a6fac08a01a5c2d7d9a6e336b06b2460f2db55060b56016762dfc9d3463db48660f48d49352e52ce6d807d961a023100b4b58aa378f1b6f26e0241f73c1e05455e8cecbf0a97fcb3f66b5586205e60874e09cc58db4d6cf2bfcdf50c5f8764ff0302047c435bb50066306402307613e777eb9b540f28eb5c0bf649a7545e37d37159c8fcac4d347b6d71de4d0c97fa3587674dbd6f2f02f99129a92ddd02304e66c05ccef02783e0443893f502c9dcffd51096f2d9dc8210a3cab66c94d03be78dddaffbf193f383cf21741af9bcd00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d007435d67b72b6c1cc3c9f9c3e531bf690874bac6fceef0cd96ac08382fa62c64cfb9c02cb226c7cfe96087f6a426c4023000840d3da0a8ecf238de72721b7cab5b22ae84d680aa652444744a200086a73c30c07db0e92433a33cb26e83725169510302047c435bb50066306402307d59d7cfebff212bfa196a27a8f5d30dfa097b99991efd8685b249ca4a229d798a9ce59c8ccb684140e3d005bb60b77e023063bf597b4130ea2d27d57421089ee7bc93ea06661876d1abfd4bba38a3f8c9162714c7302e7cee3e02b762e34287a1bb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302a2408f6f7c6c1936d276bb4d95f98da45b94d8766c749eb1373c272c21f10e8fb314ceb674cc756d52f3821ce391b4102310080d770dce9d45b3042804276dddc117ed5c44466c28318aadba981c7c83dfa94e68d271e6bed985148a68d790c9784650302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e6c938e523bb71ab1f43176e2f54dc12991133d48b373b5c0674640509c67b7309ada8fc6fcc9ebea22234270b1e509d02303a037f9d808cda45280d9a1a400cdd98b8dac57bbd60267e20262c3375744517bf576c11ac9733ce742b3b4e38cf064c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305ebe38960b482d5a580daf3d09f37f3c9471046f18955edf381818599b8b2b458f7dae56a3b2a18b3734bc37216412f802300d6b9dfaf6d309f71fb326b3f2a3e99ec09117866a9b5f95569fc722ff6c87050dfad07c6635c689681a1c02c12601440302047c435bb5006830660231009ec9449a03190c83216ca64ecc50a856bc126492a7a7ce302b0e26b259010edfabba6b5b8c542a62c07c9925b9131380023100ab2261a4c68e7f667c41f52d0785e541e60cd518b194e2f6502e2caf523cf7715d068a2a87a389dde3807112d98c02880302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304ab489654cc20ec9f21f4da4f4c90f7910fd431092cfac857ad99ec75c9e39c9e8471b1641b1fb99122387652e90eca70230467b6b645a258c553268eef98d3d70c5d2cfe57967f60769e1581f7068f678ac8db5687dab32e6bac1117a3e5a7d27d00302047c435bb50066306402304400c43d0afdf5d5420baea79a69a536791cc254313d7df05d2851244e95c44cea2e697780c4b59c287a861f112b26dc02306104784e4d143a4eba057acefe2b899b4a2515192582cbe84025fd8b9bc2a2337e4167e3010b37d6aa5b2a8f004377d50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100abed81ef99118e96ff47c63ba9a3b7a7ea2a5b654ef5e7363b7349f4c2ad144d9cd29536a399099f18468a567565f77d023100c03ae3355e40339758d35e1c854636ed98b39aa0c681c0966fe3b11180a427ef12d66df1c8d91d1f1c1b5e4f02d00c060302047c435bb500683066023100ecdea2a87c729a554bd3f97d812c43facf82014f56bc1f69e50078f9e7658efbe03a6753fa3154c39a0f21719b3be010023100fa94f70a0dc65380a65450e05743576d368f703cdef4c126b48f5db2296c9a79596f5f675c35b8bd09d3d32b132053fa0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023012d7b63b2836ec2eda8874f31699ca6659e5620b2e8eef51379622165fa79e5762192d397cd2de13be6ffce0fca42d93023100d8430af020d03f24488031cf0d6e9824c4d0dbe82a6b790d46dce210575e91143a2887a4f14890d301382f34376a41b10302047c435bb50066306402300f3714e8028e386957f005ea3e7320fa42aed080acec8654e8c8f012de260e9504534412ba5a14c527a81027f6545b6b0230349fdf7c29a5d2dcb271dad792aa2b842f471c4a949cd15e002f114986630913b369dff67305293fd86141dd9ae724a20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c699c00b2bb77163a4cb751f636c5b35d1aa0de3047d556230e8ab59ced2d20a5d1f42ae9856280b0d1accb8dfecd67102310083a55d94d61e3c249917faf600160baf42e8560c8b94196e3886adc5474a7bcc7241df9d6bc1bd61094477e8f64bf78b0302047c435bb500673065023100f40903d753a9daa24fbd660b61fa63bfc8e5d8c7edb56448168c126eabdc981eca6117ace2f36b109ac5538bcd7f604a0230567f8ed2b8d3dd67af3949b9aed6a13274a848898c20e6c950b5cb72aa3e27bab5324a858212d5646c7649bc40e1d4860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fb7f14d11b87500bba91df4a0edc717f83a634e716c89f2c84e4890084740f404bd86d1e400b84f8d913aaa221d6d135023064fe4d341f55ccdbdfc368200f1b87d3f66b08e3e2181dd61d678128f3eae3544b92a98d3d77c364a05b69225af28c510302047c435bb500673065023100e27c413d224a6165dbce7202c159d86fc32469e875e08b1c011f4c214d2b1d8d870ecce97ceb6d4f173a08daf78ff2d4023067de197d04d19a3328efd23890409d4f7a5dcd0992bf6c18ee871c00ac73c4e69edfdf48bb0da92a3c57d11be2d4bff00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305410af964984484d313e363535479b90ddd7fc979c8aebcc1d7402d2482997397b27c29692a265a6ca30b715383e36b502304d09c10cc88e3b75d4996ffab6be4293996989459b47132285b68987e29e26e1924894dbdf8302bd0c8ac0c846b5cd8e0302047c435bb500673065023100fd4da1f7b92a6ffc426396b0223e51285d219b7d33e29605ec8504f507c10a2bf79d0a72964d80f393f6f729eeb1861b023024312b7f3efe2266c3f0e8a52e5e0b31fdd9ada7eb6d89913a7694560186b16e402295f6832c9d6d5854eef82245e7690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e8d4aec23b6fa8a01d3188caea2d3421db283b4c5e3e292a48c2358323893292b94c68e7df2bdff52e513d2f70632937023100f3ffd85282796b9f19d9ec2af9cf0651982c8f337e87f2bbc66c4b9f908dc95461a5953f6b1f06f95cf1ee5b3ca7f6910302047c435bb5006630640230047ce3c012f39d95ea5ebf6379fedd500643aa9202405ff03d6105842ecd1ede01925a6ed1a0f73d21fe20c5559dae9402307ea92efd37a3b558475988a7943431b39970034f7287014b385fa7050d205e8605338573737a4ae93663f6849c0fced70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023014df84ccc26fe975e0e906f58dbf45ded63c6eac06eda58d68f077dee6cb698272f273a0a139651dc4dcfeacb1c841eb023100c7a24beb3d9a86aafeea7af9a2b1fb9f375a8ad986d6e36e7feeeb09cd843ba6ee7a819b9c540a236a783f020fcc3d1e0302047c435bb50067306502301d69a43b352d0a023a699bad02984eab3196ef9dcb5bdccdcb00c69a69ad9fe2ae9f162b4a43e88ed256c7094d8440b7023100f9d2a8dbe3ed04a8f696cf18db2882d980b9a502d54e24bc9f0ea3274502b4f3ff884da6f70bda0e1f0441a55d5dcd950302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c700fd3ce698dc7b22e215c3892fb70fe7eb44aadd596fd6858599b7af9c6be48d5d90217502168e740c2d67d9e94027023039edf2964c30b6aaa5f5ecb63bbf0aae1e7d1ebd5f435bf6b3beaaaf75c8d1608c9bd316e7f947f3d36ca40780a40b450302047c435bb500673065023100dda9f01c90ba27a46612af5ccc3d0269458a998df574db99187430297f8f3ade9315216fa5816100ef7d0aa6a23bc1a1023068d198700f00209f8737f77d9edba8f3dbbefca3f58596ec9a7ad20a9c18f29f22de816744b6e82436fb1085da4437a20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230770ebe1ad6ccc4caffa79a8989fa5c2d3389ab529c1fa7551386b13295b071adf8e63d9d35d4c644875dd1a44309ad68023100cc94db77477eee51ff1e060e1279e71a4ee66ed88479fb0a9298684e88d9e75ba2af9f65fde6e3b47f1b99084c1870ea0302047c435bb500683066023100a5ecf544c42607f0199a32aaca98fa4e5a154f4ba0b96619d51289c9409d27dd7be1fda714ada0efa05791453851abe0023100f231f0c5f4e7a5f4bdb7d68755b3f9aa84084f160048a3e8ad3d2b8fe614065c5326701e89c148f875ea8578bda6563c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100af90dd0b84cef853e9820c5ab97b7725ef568fef9673f413b442a771a24d0eb30db54ee433f09556c87c8c5fa9acb37002307edb7e15b056747027a829b1add510a24a341d4c9d9405bb6e7d2cad4eba538871c7c1bef54de2817ddaed2751b4e2950302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ddbeb2b3785a7023ca92e46d0514282aa57ecd2948c810a70dd83de354fc1f4b96fca03f0ba56c8cbc980672181341a5023020dab875f5764a09cde8110a481c06b0d2e652ed777b4b06493dd716e05848d605931d18c7b89414c4c4adeb620fd71d0302047c435bb5006830660231008fd0384339414b271fbc75469762edc1c7648b204c30ebef70ca61a5d0c70dd9e75320aa26b1d5b6b975504abd6b1229023100f7e98d74ed1e80079ca59fcfd78c43e3490071466cdacff254d21f9b56b51055c50d9673542a36a77585f6c0250789440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e088c65690d15b1c93288ec91db6952cb5b1e824107fcae4a1d2173a9775c853510bcd0f59772662586b61b6efcd6d2c023100d2435169c877c3a207f1655b646ecabaa4178c86be893074e8fc33a82160d648d75a25d35727baccef0b70e48f01821c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ec9eab34032e300c19b41731ce4bfc176d70123d81230ca3c4e5d51daec639112430aae47d2f1549617fa5f45248f285023100c18e535c52c4f4780c268d163accaca08fdcb6a5712cc3056d642d50e45dab64d17b63d8d735117f4ed98332048c1acc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c32de83f7513bf21905a19a68d4bc38040344da4057d7941490a322abca85dcc43cad551095350b4dd90c22c286274ed02300a0b2461506ef44526b3f5fb857382decab584e5dc96dcd4ef741adb455df25d3d0c722ae854cd9b529358f3942a33860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023038afbf090660949b14adcee7879c27610ba19c5bf248c3b896bba563ac0e5b710e4e428251fff935bb0f29aa3b46df8e0230197603d6f860d5ed991cb0d4a48180e41406213bd212d8f801cabcef97cec096b0d11cb78889346ed02cd528425a56e30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e4886af190816cfc8feb287cf6afc836b05d2ffe003b07127e61dab4f266dd33cd5e6a2a1ea72ae050558bdfc1e84b2f023100b4b44dfbf72f8088441e6cc9632aa34cec0f8c360c2496f5acc6270ee513256860ade40b480efd7a2d338c908bc8f1170302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310097070546965bd7fed3e31bbf6a1367ef941ddd613c165f98ef627f2cd5d1750ce06cd13b54bd3377cf3dc355b1b631f8023100fee5b959868dda5f18e4518244cf1ec6b903042828a640a7d19901256855aa5064d880dda5af2da508d225e67b79b8b90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d224923d14e8fafca361bcbb74682961d69b9dd0aded8c982ba3e01583e5beb3f6fb61581c264560f09a76a27c0d8377023100b50f8b205168ae17d51e0f88bd2cf0064863a7cce7a055f1525568711dbc338126a0039e12786935ed5e59c1caf699650302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008586f9639f750f3cba07b1dccce71c83c943c24ada82ae56261810eabddb29f0c722b4f3c7e74b1342a427a20e727b1b023100b2e061f493c77de23980af477290ce4613130d26d58dcfddc460c73953e3a770c6cec4cb02f0d226f59aee42c9ce83210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230094639ee3e4141afc067bca584e879ca5eefd2b3cf070d92d931490bb71b098b66d9a3fccb9cf4532dc78800f54c85a602301fbd733dabd87c5b667fd15b9331fdfc1a91cc4d2ba65470b2c8804b649ebc0b57e6277dc819e5627486cc14e4c9529b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009a2bd1ccb104a67fc76a0ac2bcb136b904214b2a7b0fb617973f344fe5556e6c21c08187a69682a63829ca384d58999a023004466c0303a7384483a750e12c9ec0534b9229b657a80d7d4098e9fd5f7ae62b07f4746ad29b53137656d0b7f34eb0050302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307f97a5d5d666867b2c3c897c9d653cb89025f8423368e4e7d31c62d0d78af6ce6eef13442d67be205fef125225ad219002307356ac618480147d57e48d777142a7c48f5101d2d636ad687a9e87d958531fbc60d6ea240c12c10b7b354dd03fab4a780302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009a725a87843db36e62690a617738c1c1afd1df8d4a8b86b492828c24b641f5abacbb255facfdb263a59d12e9254d82160230261703568307c7205a2156fbb5e9144289b5defdf351ef2767a16991eea67ce79912ef3f2c251bc57343b4a5a79e21550302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230496be412902a65fe82a635665f70447deee6b3cddf3f36e8716838ec376e3a060ba70331adbed6b3524d04046fa7df7d023100929f1e2cf8ad1b49dde5fe794fe98a87bd70db36a1ce9678aec6fde282900099ffbcb47abcf83ce9873bec1672aff99a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302e9eb1396c5c4c23ea63219c58ede04ef6243796081821c391f8e7294a4a7eda91a070ae39dedc351e30403531c7039c023100f3859b5cdeaceac20227855a4f6d07424f54b1450a4f973b8e0007a1933b0e12e2667583473bef8085e47afa517efe5a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100db6fd653c78c8a1edeabaf1a773af35c1551e5c4e5871ec9e76fee1d15d001356a50588cab6a8b65c1e29f8cb3bb9ab90231008696d320db2f59c4e7c96fac293303f8fcc05e4dd298c0e9ba3decb798cf44370eec387cbba0cd9a923326c3ae5545010302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ac9dad86021864390fc35c32873339e25ee53e950667f6e4b6d4503e5a92005795831d313c8f9ee61aac2b265cd757b402300a2251b47c875a1391c91218e0433c096db859973e2eb096f696a5cf43f6ca85a6cdde11034c6de71b3aa577d8c3455b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230519a820f1b8eaaf3e33b4da5b39e61c5a3033909290bf31d88823c4bdfc1ab18d2f8efda7ef6e2d43d3ddc00e886e36002305b950dc391742cc41532db4b318a5516ba0d5e5ebd09076cd133f8c0954b268e5f435193eeca15a817dd831c1031e5b80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009ebaa5ffc961d4adc88c5f0bf25a9350a7fc108c2d2ab2509c82257dd4e610d111b33da4abdf7625703e145e2b234eee02303cdaf59a4e91e7921cb2d2c8416ebb0ec8673007a4b1061f77ac64120bc90fd20291613971f113a53040f12dceaedbeb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305de2ad68250be144cf5b680b434f4112797aa31cb738da75c417d4bef75f964a8c6dd3bad21dd3e2f543b8582dfb7a4a023100e385b923e90bb3c5e883c6acc1f672bb8af9aec664f2a9226e204d9994ff5eec7b051d6553988235a8199114df6922690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c0d35a5655eaa1e9876752f74904da88eff5f714c4f465a86398498a3be1c50ddadf979acfc25bc922fdc5642b6c4333023100df4ee1d19881b822202c5cdb413074fb7da04ab692ada01f803cee5849afed2e20e25680ae0ab6630f5abe3767ff95d20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306edc24d568c985477d9f5cee1cc2f4b7814dd3b8688d6d23fbc0cf2b30700a76fade63fa1bdd758907b9c06a0b4e64b702301422111968a8fe41cb3c533385ef5d7c539db37e7392eb70bc37c31b11e1a9f9987f485a43d7fef4398819a97b80ca240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230592a9d8699042ae96ac059ad3e2692685e065c196025b4c49764e032aeb8c878306447a91dfd14cf4fd659db0584939f023076763efc216853fc7a62111c3a03173a293f2f85ddaf1af02eb2da9cfd74431099b3c04099fba27f5e8e93c7a2ef1c220302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d049506ef95c09225a40950ad8de1702de709a09c55853afcd7fed9c46c2bba2d659f57e73c196a9a846125877854cf9023100da441ee395b9ebff9ee3fd8b1ba95d6758abd1d2dc19ee7c4543c514407b561671de94d159383e5dd13a1edfa7a767390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c46f350c456d7c75507a70f045c46c05b86aea7e92028136a6152c92435e2b80fb1373400f8ebda9586b11c347587e0602310099166bfabb9909c05c7ae60158fc59b807182955d5651d20c7def81fe7059697d73f181e6f630661f1b0e2a4a954a5dc0302047c435bb500663064023071eba4cc9357bc34809ca9281bd5a99fd3b063f8e7dec77addece81d47c5f29c595e7c88cbe3b39d4d7540833ca03a3c023017039544517e2e8cb13af7baf1cfb0e1294b63c54ed2dca8e0b393ab3dcde260e50788bf0f1a33f646a8b29b49cf92d50302047c435bb500673065023100fb853319c02b30eb2445a0893e9d2d311c670bf2401af6c6766b52380d22e2688ab1537e6bbbe2b7973dced37a8548f8023075db440f833eec54b8e9fb80cf066b2a6c70ab64267ce9fb61c7d8387488d53f367e9557e3b8f5b0099951f249842ee50302047c435bb500663064023050b660c5868a6b91aa61d95a28de7bccc72e57fdf2f82d131b86603c6d974ac4daf67aab6e6a9cbd298af206c224458c023068caa307c025029d65521001a3c63fcdcec0a67e1b679ac8ca8d1366105f0754fa8168738a13a46bd6b8dcd117f8cf290302047c435bb50067306502302d0e3d4856f5b9b437c87ef7f588b9961af304e362e76706ae979c44c8f34e41304c679750d32d4d26b293029376a3020231008be0bacbbf8dbfb11e2b8373a45fe2fa6e09a2e8b45fb93b3dd76b3e1964db8cdbb33d9da0a0f8c578018166212b73a30302047c435bb50067306502310081feb2288efeb6a5a743eac1b0686adfbd74646b2e65b315b536102df72ba2123c8b29ee328042f10859d637bfac2f2f0230120d83737c31f44e4db18db7d943b2356c54ef3773f5a0ac99cc11681589e7e0feb7e3eb697a03c0898a9c327b6b661c0302047c435bb500683066023100ee0bc65c99ee92dd061a59b6134a118f0a4449b546ae102ecfa97d5d065fc1073ec7dbdfe925571fbc5c1ef1af10acd8023100a4aa2b036006259d2daa622007c9cb92016f23d45b3b74dab38cda6d534c2ec3b986f11fb551b4d97b825ee9b6edee740302047c435bb5006730650230270ec43de89af9fd584253c1e443cb03de0afbf7bcc1cdfac447e07161507013a60d271831a31879f6560392083b20ba023100f2727ace87b3f4b15bfca2214045b8b26101954a052ef22ac19dcafa7230b88fd693f3b5985d12e3d756244049a5cf4a0302047c435bb50067306502303c9cf0f435929513ab2430747d9e6f658e82107f4ce4778de01e7dfffe6088caaf7e156d8b48eb4af1b7c41ac710718a0231009687bde7efd57d2ab4e870632b56ee1d8ed4bdae2c4bb6ebd5189f77540fd6dc2ec018537ed172069be2674c81a7621b0302047c435bb5006730650230409286796f68d6b76eac0423126ec6929ec0783bcf51ae6807a92606d743c4eb96d1e2655ff89ca837991a3d5e0e8265023100f02bcd987d1b71a7d81f8e9e9da8a5ae2f2678f92139388477258e34a9c41e7a0ca5f4e2020034628d46ead23283df7d0302047c435bb500673065023100db77f84e77732c93ad7170918ac63936e4519e169891075f029aab2a032da28f4a212ef27d85b7843b3184612eed7269023052e1729878e878b32c25e87522bffdbe5af211abf9867e95a5a9ed1e1b1fac9d3b1387ccd8d5d87677eec27fa1f69ca00302047c435bb500673065023100f2ad974245d6d50f770c2aeebb5e38dcc9a8594d3103cc1bbae6a9a6562403b42496e333befff81031789b908789e897023041d8455c88db5e78e4f816a0e4316ea09717d66f498849800f3e9c150ec56a2a7a6f7f94ca1be626639995c6507c20e30302047c435bb50066306402304fef58e536c5d6643449c18b8762b5a40c85e78a9cdb5197a1eb1c12e60be3b50f7a456bcc161d4da5fecc5441aa21f702301d087192da4825510419eee46b26bb7d21b01ca9149515c12d8ef702fb4f57c19a7504861fbd377c38fa9ba4dfd163420302047c435bb500673065023100a258215fe794af3e3044673515e8a8f7923b3d5a38d58cb675e358af308ef91f3197eb6fb01eb20c0d02962ce2e7288902305f5ccff2ecb6048d1e6611af51d7a8796daa1ed25908c18e932b675f85ebe90db4b94c5551ee464c88246cf769f0ad1b0302047c435bb500663064023079e7384d6392fd115f5fccd754a00363f760517b2e61720e0834d5f50be1c877e8b54b33dcb806563d1e3495e0b5fb91023018cd0ae88df0858caa944143730c466b7d774a73487d796a935ee09fc79990ecb6c504ddf6e40aec9ffb00e7b562f05d0302047c435bb50067306502306b6f8bc52bb0cea1195f428bc0a0bb9f917cbbf5da35d5d3b7fae2e9a12b96c4e86cda2629814e4cc76b6ddeaef54f19023100ab7a3e28f77e723310614eba489fc302ac73d6c5f8f0bb6ef987ac1654aff3f66e2464e2be5b383188d3ce1c376dd0820302047c435bb500673065023100c9426d8123176f3cc11dd59124f319e38a1aeee7aed10a64dffd18a5a1f031178f80ca426e3127c66c2b507acc6788ab02307c2375d2d2c54bdfa9c3887ab56e68f085f5b7255d9930755c6acc477c7912f30e87413a7e7d5decc52ddf19cdf45d0c0302047c435bb50066306402302ec1031b809ab095527be8fd23ee07f45fd62367b04e26b0fcd51b2b15b0a2365e51f35af82e285957d706bc357b942f023056544652734d94f8bf84125a65e84c442346004d3a922adde6cd3f583d723e70f313880dd2a9d053663c697d36348a360302047c435bb500683066023100f640908b2f64d951756280392985545c972acb22f49dbb98b78f1ed1ec338c58b595e175fd7a25028949f3600106faf1023100caa43fe1ae6e59ad18c17d2ea46f5f766910bd8009b3ef1fed112e48c9ef2df0b7f43d264cb57690c7b30dd7fa6a22c00302047c435bb500683066023100fad35aa19c1246fd28d70bb3429fd32f7e68b7099df1d38ef9d4a825990b15af8aaed8eef3e2bd7b593348aaf1140cc9023100df18802ee33b5b93070ab34b0a365f1694b85adb78b5749f42f23ae314b20402755d679de5a79ba83bf7e14be9ee22f40302047c435bb500683066023100fb1da3be12a47cede332fcf22d3647f3c06c9a72e3c7b07fc96b89e71b2908217391f5048c49dd210f7c579f1d547542023100dbbbe8f146a790938909b8d831abb19d9c794351e8103d745a4d97af37c754dacfe296c8bda3745643c4de3fd212d0b50302047c435bb5006830660231009d01f3817641b3a2573a994264c7277eacb12b0eb9f24beeedf7821b97f17665a834fbe1bb43f6aa0d0083a95a1daf7d023100bd6e79c5fc2f6bbddffad5f3a1b08000818ee9af268602b4d4a39af6c7d80e22cd0b0f24706daa9e73c3a603f3651cc60302047c435bb500673065023100fc2f7ac51d464ae2e082d7004f04553bf2dffc433313eea9aef60b314b768859b820328ec4fa1347b693906e581da98d023027e8b7c96821a18313ca4722ac7fa435a01009dfb40de5eabaf7a3a45f7f59adcf05894e7757e6781855258afba759740302047c435bb500683066023100de8964a31aee5fcd78e7e611e0c2c6f903f0c935467d03ee19e56dd2b23b0cee1f7673b572d63a2359605df3a9ab5a3a023100f97b290bd0a44bcdb2c27dd027b25d8b9d8f1c0e8db6c4e4481398bf1868ac69afa8124868b3e7dfb8dea98809ba218d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f0ede61970011f8ba12693f0dc55546e05b0e0a628021dec08bc73ed889db0a48768216aa7142d16726d2a443e7b4ec002300f604f8e4c2412a2fe0c396ce05df297847514b39e672a0b830efe5f47139396120148dbb190a5fbff62ee9f33f8b6580302047c435bb500683066023100d90da62e360157f4cdb1799ce3ad35631f51e77b8ce24edfe30e24dc5666eaa275b32fc18acd995883432ae0f546d832023100d7d79a025b2e1c63e83a1b4946696b7cd181e2423d146a8be5e4876ebdf7f53a53523caf1cf6007ec2ba92321f3c74b80302047c435bb500673065023100c57673e6761a8945312609b9a5ee456387864be34c7e7cc58d1c9f6f7164b28067e8725d544ecd43db0327241cbbf86e02305aa29c6c022434ec6f8208bcd496e793a0917248e492826542bdaa9c9994104e19d22984212cddb74390112e2fa2635c0302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500673065023100c48dfa0e2d91638055c040bfbf581000f43811913605e63ec64ff04bff59dc32dcf139c93c1061ef1447c555e0495f7a0230774cf104686dd5b72bfaeb048d38cb21f0c65180de40e0f5e27ba78acd928611a430963d1568b3dd9d60c39e458361370302047c435bb500683066023100bd1bf647e284d5c75bb9846776cfe9cac8f08f6222c3e0e00f3cdfc66f0f33fa552469632cfd24059070ba7f444e83d2023100b70e9a4edd87b8502807458b250221a070c0edff52f27de8e4151c1c8a5e272951e4eea7860acfdc4d5b89eeabb6461b0302047c435bb500673065023100d41bc678e50b1ae457ea7f6fa17290a5ae3f5b52ba7da102a39fb9bf6ad6c7b760bf1c9e5bdbb46643b551c9a9544eca02302fa4ad40b6dfe204603ec589531e3e58b4fd2875f8ee3d5af7f15a378f33c55d10fe07a341afe2f75c9503dc2adcc3e70302047c435bb50066306402304841939728b105dd3b4e14435328d169d5ca1f7407b3f2469b32352bd5812663957e86f6ee1bce5b1ef2031dc3eaa572023014c0153b0c77b7b098b19380e76f22a31c7ee7d7a31974079441ea3e2994681aa16f42f0bc6e64d391f84c5b8ad5d43f0302047c435bb50067306502307f54fcc2de661b4c3663425d15e58e24d5be77348f12d9d3d15cca6424493f8cbf8769c9f6ab93100795f5b9a3a345ab023100c841ec3a2ccce4ff1d6f1da6a2fd67420c048da47681a1614e6b85c37098de128b9a1d4ddc1bc74e1085f8ceb117ab010302047c435bb500673065023100e586feaec22e827016fd0518aacf4d38167b84883ed0a5de081c6aee265bda6e80d0b3e162392a00a76b50aee3285700023072f0e21d28662e2dbdb2434e79f9b19d79b25cfcebb47eb3f90903d37b991f890eabc40e26ba230bbecb04576511812d0302047c435bb500673065023100f1bae6613f7c94fa8677044ec4ce332d2b9d181eaf87d652457018b23809a20d0998de0d1d5df21f78a85a0fca51f16e02304518e2f297d60c2c04e4c393d8f5cf68f775acb29d5724547e2354f15a1a38444ab8bae575c851b740faf638a26234ab0302047c435bb500683066023100e381e240f4f3d12ce8b91e339fce0af046ef3a2dd5e92af9cd867218c5ae2d4654d265e17813b323ddeea793838f7bfd023100d7ae031875a8a641dd4cc75b8b70da0c79e2e0aff7f6673d080fbd059c765561a8aafa8f312a4e9f921fbab3d742402f0302047c435bb500683066023100c82e02cf92368508f90f13bac1777d82de78e7e24759039984ea88d0bab43de42671274aa558146646ca435242252a81023100c771b30c9046f19b098eab0be66a0b05e879d9c895ded4dd2ead74f480e87c89ee4d89d3b096389af70cb088305a68a40302047c435bb500673065023100882ecbcb2fd4003328acc772e6935ca74988ba150422b0dc6db0b3f84afe92259509df8dfc49093b51a29ee412269b880230084c88128acf174e21381f5d7ea16718b7a8d13054e60c530a1a9033d44cbef662acde514485d9a098fcb8f4decd8c5a0302047c435bb500683066023100bdfd0c20cb72057e6c8201b619aa3da5eba640090a736ec5e3fde6beef25d615a5208c1730721b73104fc98775508747023100b5f50a0cc872bb1ad315c7ad846df08fb62e5a55b251fd4d835d75a5628ee0b3fde95ec7bb2aa8c9065e40f80a93cad30302047c435bb500683066023100bb04d10ef48c6e97ff43ea1f51b0486fb661e58d8e3f69e0b630ada75d30312cbadbaea3e5bc4bb6ec17fd7e3bb730e80231008d247a26922e0318874a6339e809bfeba19ea0b31c73ff4fb9f3bc1e67b867f0594ed73020e1de9b114a5a3821071f370302047c435bb50067306502305703c8092786a4d8f5a84776ebead9b8b641d955e1f81b7b63865b236ebd4f989d12e606143b11845221d0b5974e4c81023100fa3da2c9b2f6f349ebe536e888355778e46c29bfab7dad85bd756115f8a73af2b8139f968c3fd844de6ff4c4885c14420302047c435bb5006630640230459d1f4a0b420bdc85dd41ad81006a81d9644831d796782b5853e57205e0dc5c0adffc577ffc5b81592e10c9a08e8fa2023023e992b4706d090014c807b444b1352afbb671c06d4d677e2c1784ea24c04cee229c204bab211efcbffa9de419b8224d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301d733c9fb21f6c968bbf8efda50e5b72b5cd4042f5f604429e348621b983d1d6c163f94de5eaaa4b58da7e8fca3b8a350231009d0b93fa3fc17412bbbab2208e964c46db2ea1c76eb545a3c1ecb5ca1664021a8e4ff48b9fbbf7dcae032bee8b6779ba0302047c435bb500673065023100c5a132d270d213e00dc9e06c89887027a8476d806db653e160fc189fc658c11a7b1f9fb37c215c6019d672ceeeed38bc023026712d9115e4b1f489665e4d72377f2f71314b55e31e014bacdc75bf60c57aa12b078f3b352e80c7e6e6d1cb2b63d3e10302047c435bb50067306502301e561a4c00e31f4482d7ea2435739cce5bdc7df36a1acf9271f0a354bd4dcbc96637b64586f492bf9856a0a1ceba1ecb023100d669b49407860a63887bf8fb2d3737ca9026cea8dc5465f50f87116d502fa67218a483e6922abd3bc7cd1aee9469f6800302047c435bb50067306502307a15556666bbc32893bb2dee78b22db2552911c436b7995619bab9c9201167bce77a4285315a1a7d6d9aa5b3216af65d023100eafb48d1f471af6648423dd4f12c8454f67b898923eb729439666fadfd42722046140abab8e6b33bea95127dfde806eb0302047c435bb500673065023077d9506149602808d845f82f593841b864d000a5a7005147255eab158a04d7a13d5ac9894ee03c266de40436e4296c3b0231009b87c7182750cf570bc5d2e9f977337932bd1a138d96473a631e63daed38bc3b2e13ee292b566aea37fb336abbddfd4c0302047c435bb500663064023070f9c4c28e42033abd327e0e014ff7f05f03da01f37d61868443e688cbf3290aec476800c2209e90e15a5554392a251d0230691e2961a5adfa7b957e099343e915d28554e12ee25cb019cfad199c39bedbde653e69f4d7b25902c741d4f55fb6c93b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e2da46e5193f7973cb1ddd66ae9ccfe86c6f570eec2347e57dd803233f775026b43308543ff32b20478e0aa810beb1fd023100c9a291d5d99bb04aff5c9b957eede048befdd07bb0235d5980b5aff6a8e63393c1489787c709aaaef1c5886c47e368eb0302047c435bb500663064023040d53feae30e53e7391de1cac8cbc93423a1f62eb32c3df671112fc9695f568a4946399df3197afbe0e2c8e2690c99d9023057851882be94ce1d6121c1713daf94f4a3f4f8f2b0f41e9ce5ec926b7ae473d04bfcaee46ece90c9dd41b84600cce21e0302047c435bb500663064023003e4f18477fcfb00f25952356c043cc6102468f2e666f4eab8aa9ec6013b9f9b3ebb8534f484726b928b2ebec6a2e1d202302b31befa44e5fba41c3e2be364ef2f3701be3bcf9cdd68a69888fea40b1f2cb0b81e1fdabdd184ee172306921f6d4f280302047c435bb5006730650231008a222bb6a7af62e847b6bba9d8ee41eb39918aa88a1d324f2a252ec5f80f39b97b8f9309a0160f56ad428da483dfadaf02307422a2bdfbee8bdb4e986070434f065fecade6f7d934d5246e2e7a746ff80c38e27e9f2e84780fc06af5fc772050c2090302047c435bb50066306402304cf207f260a6d58d3105a3c08da0d625240b0faaa7c97d362983e0ed7444daecb7221f047fa4eea2c7b4e62e7890117e023075e5c0d0d70dc557030ad83e0873870be464b8ee854692fd0afe720f8c777acb41988a1a1655037ee17f248660170e7e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c5eb22a13b5817ef109a901b9bc9932cbc3f1c444f1e3dd969badbb739f9a4215e4b1823fad23c5adb97e3031de0c9c4023100f054f15e55757dc858d13c42711d3e67b1e7be8f5731f8aa026a65972e1e4364ecd1b7ff47d365f29438999a519f83620302047c435bb500683066023100bf9f15291be0cb1f2bba22c1ebdc37aab31b4716949fdd2b2598f1e46123b038329b930d87fcddab5b13dd42c735995d02310088c5f478d563e959fd215befd69d5bce0522270c8a2b0fa4233d6169c6946e91b2025fd07c1037af56c15f5eeea2fb330302047c435bb50066306402305a3ef3063cc21aa10abbca0bdf484562dc14402877981e6812f8e8b8612aa4adf1865ae603a31c0ab733d550662def9702305213acc38dc896c18efdd3515b3076848af64751bdac9725d81a2325c434ac869511e85d392c702ee061cc3628abc41c0302047c435bb50066306402303e810398528d66d04b9268b954b063efb3ab74b64223d4d487b70f85942e6e384192c47a12430c9eb7aec341ccd1a623023008766b906a92b34d272f9ddabe017b9d3ed65c61e46ea963910402abdb71102edab6d502b7353b67ee91abaac5605fd50302047c435bb5006730650230040da36d9ac2c8677dddf2741c38c96defe4226d7a7cb9831a3effaac8d9806769d3a5028086201728234e75ed56bf62023100a2c94ed1d377bc9f0d1ff872aa717816dd78343ca963459f2e8f0309aea54fed2878554d33af0e7a85739e82551e78c70302047c435bb500683066023100929f96fa0b91301b540ae8be975842d42d6fa5ff173050630698de993f109ab009b906edc7b8d2846d67b1f7504de65a023100fe331c86b6a2300f3d29a55d423f9bb8132c1f85f5605fafc689394ded39dc6ef2f833054f4877c0216eb61814df12e90302047c435bb50067306502310085c6da8e16a125eda5b830e26707616fa9e3fbcd1fc5ac9bb351820b6a4222784d49d19a16577be38b96a708c72e844a02302063d5a76fd019a42d2f1493bc2778bd249a0f10e96781fee148baaaf5896366e3b0c28b0677bb4ba321ab587a95d7550302047c435bb500663064023050e6ff18c2ed220249b6a4229b2169f526e185a1094a70b6028a5317e11eaaab97a0fbc8ab9eee8a65c2f6fae0bd5f1902300f94a65faac3d15660cd53f611b6da39bfd5a6a6c57f80bd16a0815de2296b1d6e1ed3f54ed4d85e4ed478aea0af01410302047c435bb5006830660231008607281436e7a6389995c82ec55fc87f3359c3b0539c4fb8b3816e2af62883021c1800712101c3fa3ba19ce99e07451d023100bb4895174b1fa6824b5fad30205776daadecb60b979bddbe4469a4c825c6512722a4f7bf78eebf6f49f07c77f0068b840302047c435bb500683066023100826ed0ed9c158279df108d5930bb95b377fc2853d9bcd91502b6a3da8fcc2ad1b04ecd88ea6a5ba26c7a2c82af3506df023100f0a4ce72e17ff8970d1f20cfbfaa632164a05efceedee6e89cee05f9ef0977dd1d9b206721b941b4e64f562194abb1760302047c435bb5006730650231008d5c529beb966831d606090bcebc466865947c094c74c61c71e7b3ff3783c2e763243222840b607fb33bc9d7b8f764b702303e8bc554e01bab1a07dc8894a65d646514f7bc5be3a9f341249a2d59251487f4a3dba4a4b8392ec654387e7e03f1e4470302047c435bb500673065023014f2bc77cf7cee117b8ac60f75370720627f54789c4ed57a5786492f56020fac50d49270a60bafee20ff5c9a519f230a023100f17be0124af4e111e6dddd3772b9f423b9f5fa2306721b73882a21e83cf37ebea6dfed3127ed0554ae6596a9ef1e5f7a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100865cf70b8ddaf771b447ef36bc3b64cc6095c28782aeb967ee8b44be086941c13d57dafb0695e3de2098e160671fb47302305bb6b1671370d1d406b1c4bbedc0bd3d22f1d06070ac93abb62fdd29c6bff21a224de9a86ad22406a6633b173e48bed70302047c435bb500673065023100b42fa4a61c2e90cf2933578155062f3854da0ef497123e32da8ad5a01be0f1e6dacfb8ab2d508a11f282991a79e8ffeb02305657f645cc9ebcc52d7de4055ed3cbf7d7a165d7200874e2c4deb221807500d7d7dd6f6cdbe954e179b4b3f99cd732c80302047c435bb500673065023100b5e9771ac170d761e7b2a097dc6cf8768d07ed18abf56c352b479d1c7aa8348e24d0f83328310cc3cf03df899d442b3402303780a9c95576c2dd60386c0fcee59d4e949fecb2de3179c420c674583642cbb4c783e3bfaa626a03454f1e77666e0d9d0302047c435bb500683066023100c6ff7c73f43104d95f0abef1cde0da3ebc7edc1a57c222a9ffed752af71c0ea9c3724aa9e998ad79d22f4e4e17022835023100c1c89b33182b0537e2b821f4ae0e2b6a32d4ebd4c921d96b528faebe843e06236daff0aeefc760cd9a3bb64bed92e1a20302047c435bb500673065023030149315844f85d7ac73e48e4999e05e84389116496440e30981e98bf949d49beed0739e2d8276a7480144e308ecc2ad023100b89bd505b19f57a76a32a5aedfb87adbfac1b146774ac4924f64422465edd6005a51cdd64390b76251ba5e7c079179780302047c435bb50066306402300892c70d09473fa7ed71631072eabc5dca3b452974fe8e2e9155c7887ad0a0b8e9b11d2bb2380a9dca9107eff3f533ac0230509be643b4db1fe24d8af8381db0fc6c00353dc962754a2426dfbc38da7183b0fe296bb4799d16ac5ad137e6ae10fed50302047c435bb500673065023100cd63c3712eb2d4a592a79c7ad1fd108bef1ed3184de319d2bb13411e430aa12699076172952aeaa645970819befecfad023055548adc0a5633023448a3a0c54fc4296543c95daf8e7d2308510888e3d58707cae04cc1765fdd5ce0e0b0257a7a8f060302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301a88a96ea6c604aeaf361044be2a13fef640c4621f8a0641d73c55fbcde014422a7746c39f6084d31dcbb7ea15f9096e023100caa6dc5b2f40eda49d2a2206604ab7049ee69c9efbb3c1e43e90d4a8bcb0e401868849b8b78191a6ace3e812bba5634c0302047c435bb500673065023100a8ecb3df2e0faa45ed13b5e65e8bca753e7c92caeda8983d264f7d712a461d15705214ea73ce01156846dfd64429045a02307a8b2d3d6e82d923ccb05cef3add4335354a5f584b6b9656af4b6542a1177bd65dd0893fca1d264c77b03a9cacaffe790302047c435bb5006630640230593c66695e23cc61cadbf47c877d4f231f7e2b62444cc2cf1e8625163bf69e5671be391e9b2113a95ed073c902012fae0230254b6ee9cf8a07b703e91e2d55bc63da13c53367d663001db702bcc182ccfb74bab993104342cdc924b35260910e15ee0302047c435bb50067306502307da85541cd144a17375e2b3eac1bf39db306f32fcf3be6f6b8a608827b1c82e8be215838ef0eadec6fbf06cd1ac71ac4023100a49d205fd92bddfcf469f8bc9c5a065e25f376e29afb3d9aebb7fee913ed3f487b0f4725b91e8bdaefa34f96b1d23e740302047c435bb50066306402303765943c8161a586df348e2a6ec7b262447654529fa0582f1d1ef5edccd944ca667ee64093cf46334a3f2d5bd8d0ff75023062ae8998bb77dc4f8df63480c95d9f6076450f881fb105ebd1b1235e509137c4de7fecc974204022b47f4262591c51910302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300ce8f88a2fdaa4d0f669fa4267e2a82225f61f3fc019c118ab0eec5dc89d7428d2a27c4835807df19e8d1dccfc370fb8023100f5b5b6ba72c2e8acee1d5d73eeb33031044a68cd807342ac6c50d65c62830f4ce43912e15d13da5d6257d06634ba1fa80302047c435bb50067306502302f56af6535970e7cd888e570af6300593e9663aa3272fdc7bcd58d7a6445f93d9be2cd106a778d96a6b365245d923ce5023100bc39c2c117195037a38ad94a94cfabc618009cd9e30da28626712976a2d6134f2b26d8555d1b3838ed5b68999ff11c610302047c435bb500683066023100b036e1c57933106669ffb8628162f342ef776f92595e99d3c9d344572dbe9409910cc3478a6ab94eab4196b09e581bda023100c9c732c936ec26f205a0acf9f0dc1b115a360f9b37ec938bdbdaf61e035427836e843845a83b4cb65426ead4c50811de0302047c435bb5006730650231008e594fcb6a32a6418b4351c81a31a84f1067f695391f76efbc50eadd1f94c68bdf949a720217a525b4cc50672348e3a50230513ee6bc87269821d1f68a7fa2c18ff27c6df43aad504d7132e9907f4e16b9b2f26fc2e17cfde31c74ec142ff70193bc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023037769a85a2e2f387c1b7eed04c0a6185d152cb9966d6aa382ae97f938ddb80d62ec423780fe8f286f5834a54e134b22a023100bc21d22a128c194c88572b1b39e70be4b7c71a529fec2acb640946d3307e09ed014d7a81fae8143738f99ffa59be264a0302047c435bb500673065023100acced01866a6324e0ec0d000e0dce96ecff2ef449282d35068b53c5155ebcc0e3d610fea1bb98c88ab1c4e00fc30513102302056e943a0ab5530c14fd6c51df0682c241991dd6d1436011afd7780662aa200b4e0f58ccbf1a51558f2a4e14176c8f30302047c435bb50067306502301f2f20a7c0d4a8a729b2b98e69bf8eb392880724b205fd899b9a25fa3f98909d9ce67805c24e296ead12580789940fd3023100962c6a54ae999c78480f7393523968866509b3003969e795a99fd7ea998302a3da2d2966c2a7a3d98b7250b4f88255250302047c435bb5006730650231009336ea9033617ddbfe498350767b3b4e9ae642e4470a42803909766fafafeab768e6b5015ec89cb28714cbc94447929f02304581316562ed8da6b42cd0c59fea7445479cb02e692058a38ba947b97927cddbdcabe4fc7e6365959e92e46ab141eb750302047c435bb500673065023100d998c4637746db26de3697adb1ec7fb6450ef302d4e0273097bac2079778c96d129284528bd07dbd4ee143bff4327a7b0230171ee8416a6f913c506ed27b12517ee8668c11c3e1e8dbd2a16da3d3e7fb347869478fa98769777e554b9dc3305691ca0302047c435bb5006730650230011d4e4317e2d7b64f7ccb55b67c516a084fed6fa8ae5fb5f4dc333f4b9a0fda0fbdd91785995c71af06bec10a884092023100c3da78da6c39ad2e568eb24881b5e9f2cffff908688e17350be13c056f15f35d8886d06168d1fb15d96bb145e9c79a100302047c435bb50067306502301583706794e44136960d9d787d65714f282044a5f95ae055a0d9029fc8fd8fe8ad35e7af43304d1e22d24138109d64e0023100dbaa0a058256e3c691d367340f39bafe0fbe2731a777080a48107e11157196cd06e264b6899eed1781e21f184aedd1940302047c435bb500673065023100e30583bc0672bb441c5c9ea32cd6d71a2b822629cfa26577949b8c4243ca878178a489eb5dba7ef8385630e2b30e076d023037e6626d0c7bca55fd692f444f20a979ebc74d1680deb5a2143e7e8da35f68b313dbbee22c26a8a537051b97468171ac0302047c435bb5006630640230517351c5f3a4c25e0e7ccd54d2bb763e32d6628e374d8a9a3171f236f19206986d2527a62bbf9d9723605293eae187f10230237ddb1d76fe34943efe0f657fa9f9f88d8a0461a163e8853bd0a087c1505262572a94edee709ffe0e291957d0292bac0302047c435bb50067306502307a1313dcd8d4ed2a5a9270037c8603d82e0239239b351eac2e597bd01af86ecdd0afa75c68805ab16b94fb461fc5f37d023100e2c59f66d6a469c02294cd81ae6908098511e0e990d60dd473641990ae1087630c67f656d452e232f1cb232a577ea89e0302047c435bb5006730650231009657e361207fa61b5a2ed133ebdfb5620073952f9701ecad9f09b7eea383f32ef4476d60d5753fd8e59398756007a70402307b64d995b2564c69c6fe0270093f0e9cd4ea32b3a51be747e07fb55a41e95584d3bd9c43efcac76ac9c19e856e0baf950302047c435bb50068306602310098ff8700cd128248c3c5bd898944729b70bdcaf7f1a0bfeaa1f8b1ed93f815b30468a9615ebadfac18d744c91f5440d2023100d6d7c931ba08a437fc5f7b1beddd72faa9407dcc096aaf2c6183e1025351b7cf321977f8dac01f3c9d88d8d8e2de144c0302047c435bb500673065023100c8e3acdcff00b0eddbf167428f0f8f4b49feafea835c4169a8ca14f6fe2b2bce94fd5e2a5b74554bafe24c03d5508038023072a73b76233b558240cdb14db76049adfccb3ab6569b083e4ae75aec38421ff0b6bd54f95e40cc604a1863655c230d9b0302047c435bb500673065023100b7ee1c14485ffd807372cc0eefe2ff75574d5629b88070cb183c1c89d62e22945c838ccc587e931849461a5fb59dea2402302605e8c9fc1eab5469733dd81a22d5526a7c8cb88f3921840609ba82e4ef2b5625071960a1013f9d03d00f4f1d4b92280302047c435bb500663064023019e62754ea732f7a281b27a530b45f4f4ea43489e36e1ef6f8225fa0fd32ac8b4549da21dd2d64452771c741223405bd02304b6af55ed02d7286276d495cbd6c7ab8ccd3785d60ec2a388a18914c6bac4a84e2acc5fe69a0af03b97c69f827d0358e0302047c435bb5006730650230521452d11d4c7b4acce892f143312bd421fb4fff9ac713d5e9890d40b31f4d5bc8b1319f26b43d6547a3a6d5ccc49205023100a55c67287c0b42d9309404782b10c8ddfe3c9c9044eb4a9346c5c7457bab37704640cf64803d71bd253c7e93953316770302047c435bb5006730650231009c94fe458eaee87231e697adc4d5ab552bcd0b6b0b3834985af7bd2c4ace0f58637adc0ef482751b9e698ff75af7855a02304aacf8628d897fa1421ba7f5266f09514805cacb0e580710f5af63b842e51032a0593daa5e0d0db35b11888fc17258090302047c435bb500683066023100bd01fb39bf4698c23cd0eb5de78d3a0c245c0cf2ec71302caf2eb6b464682e478ac209a71bbaeac116882216f288b938023100edeb9d9fa39502c33e9bd4350bed3151a2ec3e4a815f955d81a0ecad00079cbd017453966f7332209a611975ab2647160302047c435bb500663064023059d0ace7d610a2b99060578d4545996af599a3fefc223b79786f3c40fd26fd7943f433fe5716d06b3db7d2bcd357d10802304895e124097da427783e60b79e3a72708d864b69bf6e37ab2c479efda096e9da7d4e2c33b529462129710240cff061260302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310083c4d368ce3b623c205658187008252638b75963e046462b7ba2827c54d0076e0085786ea7143897ceeb1a9e16fe74bb0230027e5a07171679522384870feb05eba67193a051e2d145951881eadd1816b200fafefe8d64aeae91afa86f63b02b75ab0302047c435bb50066306402303b5e53ace26235da5f726248814cd742953407839c7ec067740090ddcef3e7c0016b4b42f2211c940118ae4a766bc02a023040b0eb0b67ebeecfbad4fae597cafadb8ef7e714898129d6ab5f9799a20862dba8a53077cf59d62efd5cf9ca19a9f4f60302047c435bb5006730650230472800948aed09376f63a8f2340e96240670c134a63716e2cd67d39987aca167bfe71d36314d84011cd41384dbae2fd7023100dd5b192e9ebe15109fcdf552b1bfd194da2e5a81b9eded6dfd8405bc332b9c6373e2a4bf20e569d2fd5ad982bf98fd040302047c435bb5006830660231008b50e611d9c96ed9f87f6c89eca9c63922a7a8630ac8f98a49376c8157e74b5f83a29294fd983f74754e3cd096a318c3023100fbe7cfba54b457e521c936d2ba06e6fc961a39814669debeb8dfc6187d1056f1344e31b86a4782f4a684c285354a69110302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ad3856716eee6dcd14f42afc592b16cae4e4d48a5dfc2af5fe2fa9d733c3633b2207cd994e83bab4e16a80454085d64c023017b57fcb616ca28eb33a8afab6a32d68f90c71aeefcece0c7f6ae989a17ff03ccf4c3bee8bf1b1f102ada30f415e6feb0302047c435bb500683066023100afb3d436bebf25be5e20d3c9e4a4f17880014f759a415706205532c26dedd2534202f3d6a8b17451268043e08d7f27c1023100c464ee094ab51da1927e5935b082d251817b48b6dd04a2214bf41af7f94494a64cda78c5cd97d1fbfd195256099bd73d0302047c435bb50068306602310089b5627304fea0403d5f27f12ea601a4563508f74362c0ecb9125fe4ca7b5105f298f5ecf7a8202f5044e6f2aeea5699023100d4bcfa5bb6e92e4cd27510a2b45c199c8ed93ee32ee2b05d5f067feee822b2638931f691f303b76064896c1b4f33e3540302047c435bb50067306502300ce28f86e950994dbd22db2fc683d20df11ca62cf996a4197b944d39ee36f88b44274abc9b4dbeca28a24e89309cd19c023100905e8560869d4ab40b80cfd337c9840247a980fbf4b725fd912cd3b643cdc36c920dd4ffdc9983fafe153c4fbe7307830302047c435bb5006630640230540b54bc5468867c51851eaca0711339d8a5a153c3ea6f68e9c8a536eca248a542d1b3539e252dc94ab5be19da67e24602306ff581f28a76f063e4be093f6ec46cfdc67b8dc09d220a4b5fcc41d63611d396da3f9398472e3af781f93aba7393de350302047c435bb500673065023100d1278b9faf079d16c37f15490cf2aefb76901e7d984b642cf6c0f7d8f4f8e1a9db2eb1a5fad48a08d04f8ad7366efa11023075f2c8363de13bbdff6a0f38220d2e873f95c4dd0cf4eccb00613992c5e7b0dc6f8a75f3ad2b31a1dbf57e60175ab6130302047c435bb500673065023100f43b4d5707b8b5deedc9ee0881e7bb1842e215ff2159a30905ae65149dab2ef02aee5bfc3258080a4edd2edb843dcfaf0230348d5f1d31c4b59aa9869edf0de3659baede5f839d28729c777cee57993d11e71a7454ab53179cc26eb98efba9761b380302047c435bb5006830660231008d6da5372a649cd100f7b3fd9ee663c2b39d84ea4b050839bef9af584b3294a573aa2552fbc1549a2fcce11ab5d46d10023100c2c801df1b91325a6e700e86dafae669a812e72a3efa1ae22c659e8713dd0097b3467121d274b5fceb4e5379d44937c40302047c435bb500673065023100ff801411b6f93182dbbb18a684ae612750118684d931147bc551fc081b27340fe2cd0ecb025343e6cb956b9bdc220a74023019bd7bb722e0108dae9a2f5e2daca9e6bda3abc26d91ef5746bd5b176b742ab23e5488b5d9875e2513e490c2105932690302047c435bb5006630640230263d062690ef43cbf0b77e1d2fea5ef58b3e494d3c6da15f888da937ca028aa5f6aea529bc1eb9b1b3d7a7f9fdd40309023025e36124551e87388eede1c9e4ce9c5a3ff419cd3a4ca6b614db5821e84571801a460a2109489e703e246b0215be94c90302047c435bb500673065023100f4c8e0440fa638d04306b5693cf2545b7e5d55e3ccc78f71a799204268df7827469fc72e7abd8248939b7426b5d8c90602303e7405eda7c8d0cdd3372a36f2c57d88800d7621b37fcedb138f1e150b8cdcca9175ff66c66a5f57ac18580a325fa7d60302047c435bb5006630640230594466f4a6525ba179943d2e79913d3d7a660811acb88b5fe40afe5b1537f1bd65362044e3f06b4e4352260b9b531d71023071b4c4f22d6e29430d61febac4db6bab0417532c1fcd477518149e1dea2a4bf341e78487f79a866bedfb1fbbbe122be10302047c435bb500663064023077fd9d7c39c049fd8bff4505a18aff8dafea4d6af53c95da10c015da7e76fe08180013b30f841e8c7da80a0dfa5e5af402307d756c63c94d8f86b852849e36961900a5f7995b5c7b60ee46fbf84cc35755c24b9e410fc5cd81bba913ecebf931b76e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e6530f214fd36b0e82b67d8f5beaa0c2b8151b50f16ff5cc5c91b0a75d9cd9f17b82cb781a889b4287604128f59285f2023100eb71c3cb0e6073b37d7edf134a0c4020ff9810185cb8eb33513fd5e8ed58a23efdcb6848aba40b3bd83df8b88a6b72be0302047c435bb50066306402306038c2bbc187e8bfebbc37c3a52224fe77c863f7a94d34f739e0ffba459e085a57e43fc7a79d253e4d3019f0378e7378023007730c3a910abc332ce2e32e7b89edbedea50ba65d814b0877439d98c729cf20598ec5c2575893dd7340ebc27f572b690302047c435bb500683066023100f1b41fcdfe3b4bb04753074da5dca2ce9e87e6ab22d163842bd8f80006087c193d0373fe53da6388c0cf41c5a46ad08d023100cfe8835cc86ef6771cf76a9b8703f72a4bac5bdbadfc1e4e0967d6b34c19e96ffabc49990b75beccd389f03251f4178f0302047c435bb50067306502304f8108ab87acad8568f6e37e730fd81d53806046e3a79ca170fa3d4b137cc7ccf95023eec332ad35f407a75e79babf00023100fdddbc88222a6986b5c0256aaa4546c1caf4d5f10b98e148149bc1361437686fca9180f57cc74ef1743ddacf0f06b4e20302047c435bb500683066023100ac7fc4628e9fc06885d440038a70cdda02ac7332deac3be3b6109f0d91aa77a4d6d07448e6ae75965cb5c99b94ea787f023100ec483ac52b695f70b79f0c2224bc7d7a6e9e7e6763708e8e5ba774b26c89c7531528d75bbac5592e21a54c8a377e96b90302047c435bb500663064023005eecea63a6230e2897b89c6a1be1e5df42be4bf84acc91a064a8b4fbeb8cdd92e83848fea0b1a10c567b15b265f4ecf023036f50879b84b93696069516ca1c5958f37645e9f518687b472d2552ecbbfa792fca2958c0f29a34218fbd38496822d680302047c435bb500663064023001baafdbcb1a3fedfebc99f53d541d5b4f7c98b17c995cac95af496c0cdb4e87e2a6c44ce6b5038ce0098d0f2120d317023074001d58f9225f57ace7e3ddc30eb1de578de1764ba70becc919bd0e4ea38902af69b2ad05438af22e73379e7e19ea540302047c435bb5006630640230031ae0ef8f40b408c398e2caf67a68dd0cede935bdd93a1906b8d57f3c774fdc9633e129d17ca8577ddd96a52abdc3de02303e191cc2446275854c97b142d8a37160f5e7c23823ad87107073469f50e6c13dc9fa54498d36d7d0d0bcf9657d0fdb250302047c435bb500673065023023ec6d5856f4c395288252b9f8158d17fda1633ff86384fb07e60e2cbd0a261da93b40bc49405eabd7fe6a2486b95980023100c356c87318d7b487bf1f56c26feac8cf3b72c1cd037a49fb66831927ff7879079a67c9b9a5a06205881cd09258f29bb90302047c435bb50067306502300ab65a0d67f4ce300ded72825083a3fc3fc1b6d20ad95cd70b5e674d609bb8a365f2e0b5ba04913445d804003f213493023100fbce232f2b93640a2fed2677fc2bee07aedcd472ec22fd361068993b930a9c86c6e2e1433628f0d1f96b812ea126d5380302047c435bb500673065023100be1896735f4a50e1e05f102bcc9c074da8e4e5202720050be24679b57a377a8ca26cb95fd7a1e995a896fe23a528ccfc02304de8560755a1df80258e30634f2584e2d01b6a2152852fed80a85ebe64865e3e5d9dbd7f6327100da7dec46282cb35a60302047c435bb50067306502302ba4892176edc3b58ff40824768befeb618ed4782271352aa0108e9cd411d442e6271f3cb0a0ed714f9d902f20ad5a0a023100bc5e054c839d1b20f1d92aaed3b53f7b10b58a6decc46715be8cc410d7ca32079156008e87de56c248653989e5bf63030302047c435bb500673065023054851de18d92b2ac63c6d80558bb8deca77212f86e7f12b52d8a55c3d2c24931732a10f2fde3eb07f7f4fce56e3f1763023100a72804a08636a322e35c9de5c19268269d0b8ea5a86fecb1177fe2f74e3bb8d718b601a16d2fd27b77a2408c1047b4250302047c435bb500683066023100e01bcc93495aa763267f5525667e3e951b28e7adb7e77268d1d673c8b2db3a3288085e63bfc63a73947411c786599f190231008deca962e644f1eb97709de5932f79d2c2377ca0ee9b670cbf23bfb58f29f2923d9531c50d8066f695259e00698f5f360302047c435bb500673065023100d36df608bd76def7cbdccf72e43f5b16758e1b8616441ed804767b959be019da7b493961e01fdd233e6052d9d7ac0d1e023054917f8a46d66008cef1e166419b4d128f49c31336926ae9e02de18d1f4d4b16b24a10aaa88ce98bf97c12825f77a9390302047c435bb50067306502301c862f5af812d718a838898e70e6aeeb3be71437ccb0cefcb24a288c66a5dc416be46973eb50b5cc9166f89e443f732d02310089b59057fbc35acf8970b9f36e821025318cbfecc42da541ad7f652837be60a7037188118837556e9242eae3bb51cf6c0302047c435bb50066306402303204876635cb7bd51b9cd40f12c6e80e3d49d3c231cc204ce3b7be845112219da8218485c17572e62641a62e64a76cf0023048704757d3e64cfd2a81fdd19c081ece4eab90a431b4d7bddfafa0abcb439ff50b9d2d80218eaf2d4a63092ecbfb715c0302047c435bb500673065023100c01fa38147ecbfc5bb7da778883d44d25daabd5cfc51c801411d8bc48c3ded918fd85839403e2a47bdac165a20c50e4702306ddcf0bc7952525e8030b0b300b8b49cc5d084e3a447ea39e8ad9006d70cb8b2821fb19dab67a21affefdc8349ea13f60302047c435bb50067306502310097095a903e490a18dce021250bd42e8f0e9eb0e3720de4b9e641d18cc2e2ee0617a6eaae74299e3b4513f69f30baeaee02305bdcbde2a9d76524292a5deffad725cce04fec6515d50c47b922ad5c3f25a1c7ed76ad9b97bb639faf6e7eb3f4f5fbcc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230035aa5ee79f971ee69e0d36b9b442bf79acae377d95977968188d91967d8b694040f5308f9e6973e95783fe9d6912cb5023100ec3a4d8f74c5a21116e71e5a19d4b5d98810ec46522f21dd90f4002c8417d3f7d370d7886da38fbde26dadd9deb752660302047c435bb500673065023100ddbcf8d7b5695d192492d2223c1f6c3fd111e5d7ae52a15b007286c4de5a7ab7033ffec5c8da0cff6d2117b1ea823b7e023032bc50881e2cbf02f06e2ffe5d0d91fa42f2e38e738a7b4dcc691f47416d30c279d13fa038818c069493a788d293ced60302047c435bb5006730650230129e00efeb4f4e55a966615e2b3bfc4adcb78adf43a5435b13a0ac13f14da3095f2f0952cb55539fabd51c5f4bb0fea4023100f3afed205e60dced85aa2f70435901cc87f19bc375edd3340fdd2047c431dd62af08d40ebad38741e643761896d10e470302047c435bb50066306402300c5a5eeb001903d8877ded9459b9171e431196aebc299ace904d3c15ea2612fdef1e8ff2e692d4b25daeba5c09b771a002304b862276c6af7779f04c04882491208ad1769a94a9e7a6895434e14dcc369cabc1ce1aefdc7f4a9854b232e792f86e570302047c435bb50067306502306d831b600c9e9f6d50b3ef806fe82aaa57c3380e51817206de3b358a4a38063d70a36d33b8813ff4070d9486829db07f023100b3d9f15a1f1bf00dbd7d2384e3e43d018ea7981b6f5e8d5d1e264d0ada2f8fa3adeacd9d07b64d33719d86f2eb8bb22e0302047c435bb50067306502310093aa94c76f84cf56c6e98b91f69959a09b07e4058e55f5af0796cf5338d865a21e265e59c1c7155b212d644159d64e860230553fbc4b1b07dc1e6e90122790406706353929eedc284f7beec4a7954f5e9b992a8fb8a419e8fba3297f2eef5bd8baa90302047c435bb50067306502310099004b242f1ad9a00d5cacdb2309974f76a1655e1a1a10ecd7f056c1276d9b3f4cd6acc1c676b7687e5ab86026677a7e0230731899165785695089733fdbad3964602033f206039e78d45d2849b6a5f5a2e9e5a5ff650fc61d9809608097cd26cb870302047c435bb500683066023100fbb86eb7d9a66df2ee43f2fc723223dda2a3879750c4bc647ae17c6ff1b59316719e6c14181b43c9074602cd843d77c10231009d2ea30f5582eb2499aa88f7867a42cb18b7111d076dccec22fa7a1796ab1fc62be922fad2b55b9bfe96fbbf78f374860302047c435bb500673065023100d8f377745a35a043010bdd40f8ae172c2e8ea85d4cb23339a3989eff782ccc8e8e02eeb9866082674835014e5c2bbf7d023072078c48cb92ee5107f7d0d128bc9688e7c3df5bae469d383fc6f6068793def7a433265e8475c5a453ab7bb97ad1e8cf0302047c435bb500683066023100c156d1f4e88114ce7c82bd8b853a8ecfed8fc30b2f3d82f2a1f4b4155906bdc67dacf6d0cfc978ec10dfa65f90f3c9fa0231009bf8a87d4ebfb92a22c9fe2f397c42f7add8f669e8de57b4ddb537b66245d206dc392f45f6b03621f3b255d92d31e6c10302047c435bb500683066023100e1da41588d07f8a5d05073b0a781e0bec178b2353dac5695d125f8f9da952127332a890207489f7949703215a26c07b6023100ef430b5df848eff42b70742a6204e2ef4e54d68821220f91290732cccf98702675d803e9920c42d0d5844fe752fd49020302047c435bb50066306402303dc3d1e3c415fabcfa467af839912edb8569f75271a40989c9174180ab68ced57a664dd0bc1e862363ec9d543e9c0fd80230682b5ad33359e0dc568f62f3484ca2f83579ac80c9b92d8b5d61a47b3d5b9ced47e0a885551d8ef9ee29b4f59412e1720302047c435bb500673065023100dd71afb76a8bb73310601c8e5c800ae9cef23f9dd72cb98adacd52a0177ad1147803f550f3a07e8cbc4c5092c04584cb023028250a6fd463c13a4d0b6d2ca4eed4849701a5d3309f50e065aead0f5fc17e3dbc0ce8bcee42668ba8415cc0811380bc0302047c435bb500683066023100b725be31090c551d146414e945327815ad99cd34a6f3d089f3d5d466fcb8d2af2d2d1933144076d08e526d8b7da23625023100be4db9d855d2c50840cf55959a93ee7296b046e395f44f5c4cb345488705e1cb73f44911a0458bafc2b1d0c967d957220302047c435bb5006730650231009ff5c9ef59b972b466a4ca2160e4ebd9f95f0e32159c096cea858b56363b939929bae5a55ebbc33d306e565c0b6651b70230587984b53cba23e2933fc3556c06b810ecec4e08277f2ccf37f764a8d73a5394524f59c80f240919b7266d00b3b2bf4a0302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500673065023075c2fb4ff1f89f4d7cc00e55da04fe9d0db0eed832def474c79560742d93560f53f720f87288c0e672d021deea0bdb63023100fa65aae3dff45fd04ca80556e2d1fbe9b42d3c4101f926dd1c3366df1904cc2fefb1bd8b220b599e1e955b4d41a745b50302047c435bb5006730650231008ce7dea0270266ac7a80214408e3294415cf00b933f69749e67c426bb77cb7e03808a6d90e0688951cc17e0b8177348002303c60a002401ac0a348be7ad0e8e0424ada038979670e0bd87e13bff8a521df46643d495b90553729fdeba477c4df24ec0302047c435bb50067306502310096f6ea3285bc4c2bd7eb628d22e198ee681d278ee97af87d7c8ddb8efe540b50157afe6b12a8e3da72159d1b4543224202300fe223ba927f6f593ef02d73029d6f2e2c13a1f486f965d05b65fbe1a72da3b1734c931298d846baa977ca14f15a60840302047c435bb500683066023100f40f8350c91faff23fc616cd0ce610a0d26fa137956cb581d534fbcfd33be1e4167d12b51fdaaef1122a860001961333023100ef7e95a2ba34ef95cc866c6e7c520d23215ec481fe6443e5873269aba63c0dce6f04bc701b68e2ac00bf1321edbce7e60302047c435bb50067306502310087737699b0083498452e66f22f15c71ac239f6dfa52012a2ce0d400f3a95a00751e1e897e9a43122aa6e5199616ec65202303d4f3b6de572e69c7930bb0b3bdeb95a5871101759ff8e23e1001769d3aa18dfc38b4da93e2553e518b34890488291030302047c435bb500663064023061067e6133b71c66606d120e6d782cfc1aea76efe393cb381c0494463c4f99c37b7dce7ce9eb8628eba301552d87bfd8023071c1df181ea68ac4f78037e79ceaef3051e01e9f33aa2971c64bca3d3ad63364d3909a995c39dff5bd6d6fc57a10fe100302047c435bb500683066023100d8941304090547ffc101090b6b37cd18737770fb971195e5c094ba83e288465f37c1286abc8f5c2be9b93585235f9bda023100d617edf5201d1bdf52735dab0fdc1b64455b10f61d6f08c917fecf95d210eabf860fd9e0f01fc4b02eadf85d486c17f90302047c435bb500673065023100caf40ec3f46c99dbdb20604e89fb2301dfafb529eea19b5a9ec7935c26d434398ba14146bfa6c63a2a6dd4bae71ec37802301f8d8d9bae8520fe58792c2bc79cfbf6d30bb6220e5999d724575da4410c3823553bf4d2ad9306dca4a1e6c7d200c9fc0302047c435bb500683066023100c9cc2e8e6937d2d2394a275b6ce43d1277327a1bbfac32cf04ef835f5fc6a1cf324cae4ff2f182005356223dbb9733f2023100fb8d950220d30282d358dd870576759560e2f7f3b6d1bde2da4455a06b957e32114f3f974140764972db894ab33eeaa80302047c435bb500663064023060ba87d1e0f4874ee4bc8ec88cb9aa9cd84a6210b27489a70f235b38fc476f3224ed1bbcc193884efe8a79c4f25bb583023074544f69a7a6bbf68de5713779bf99b6ea4ed229187d35242bb3a60b7a620f48fcda3491ed0ba0f32a7acf112f7387260302047c435bb500673065023100b31b9201ca5dd5ec31db5b61bc4c8b0335d5534e7c13cb86abd16716d3a104bd95e0af318a2d3f21e85e470f25497f7b02300f15b82699e5055e41f5c31426085f2d12fd286fe63d563734d31a2a8c2ae908dd4d8348e0208978677269c701bc29bd0302047c435bb500673065023100fbf0e7fd0f88b11870d1e69a06f56d8d5a7e49794a582672c40f275393b6109b6aebaa73c43f3d56797f8b44f306e6fb02304f97eb5fe53e7032c56bfa91a50860ce2868b889c9fbce4d10f0dd0a3565752e37e18e62ba2a8041d8acc593398a47000302047c435bb500683066023100fa7445466fc87b916bdaf4effe01687d7680722d4570883024585acc7562d23a4eadbd93959b1557868061162ab8468e023100fc7a9ec5453899010eac464a9512403333349a0adc7237d1416da7b300dba325649d7b171337d06c051511a2b74247350302047c435bb500683066023100f253cb63e46d3ecf39858390c0ccabc039fa389b2e34f82680ef90fbe17423c41f7020dfd61d7da46e1231d66376f280023100928771b377ef8d4d91c477e702d796578a4db1fdaed1e40b42d31ee7e8fb31172e937b7bf527d0f2cf43864637cd3bfa0302047c435bb500673065023100cb6f7bc6ff69d0a91006577b395631554a9592ef9cbc65bd2d1341d1fccb4a391ed7adbfc90b13d48e40a8f98f5732d1023045d471810846b00b48c263ed564136dda04536dc782c7f2c2814b05bbf0edace8638feff88f3d721feea6e611ee2f7670302047c435bb500673065023100d9f6a9c942dd8a55939ca96bdaa79155f7affa2ae619537243e29b1b7706308f4710738f627beaec773218d0078438d00230212d1c27664e6964c518c1a1ce5f675f7f5b936973138060f48926d94695e3e9800d7f988bc70e13840190fe15ab2b5e0302047c435bb500683066023100fc892bdce054e6dfc8294a073f23079667418f95dc6e3c2d2481bd8e1cd1e37f4aa1d12248b8bf4a33ec837adf67656d02310081a6bf5e84f739ef2da00dd554767bfc84de4aa24a7ff6d9c4f8f91bbe9cab09fee421cb08240f4fcce3c6bfae12b6690302047c435bb500673065023077f6e6086632e1bfb23dfd30d97e1c088eb40351326260d9d7276f5fad370272b19025f8c02f8acca2b0020fecef4846023100dff14c307066a5ba516850835447cbb37ea2f03090ca9b91dfb71474c490712c9c1dc0331c94c2a5ba2e30c648c636c50302047c435bb500673065023022f70a2c1c568e9bbbdaa8fd5af87c34a0a0bd7aa0ebfd573a720a7bb3032d655bda9de72bba7b26ed4c449ddca07f6e023100a52b296c5e9732d741f933aaf188a424d4a68fa094e6ae217f66c09aea058d06322db357af11215cf8420798644832ac0302047c435bb500673065023100f7f0841913aebc2750308b7e688b26be08dc43f16b8a0a85dd746f5d4301e061e583439974d1f5a1d03c20bd9efee295023077f1ddd0cc52156e439134b92a3b65f2c5b9a64673aeedfaee4b221a5de150fa68bc41dce04be641187442b4e783079b0302047c435bb50066306402307d22e1eac48991d214c3f1f48656a91b82cc43fb842247cf6a12712f8c4363c73d01706be99e604a0106c82e91ebe38302306d466e3d96eab22dd4eba559f50beed940075b5f7c968a5339edacfbeafb00f3021845950f906f204a2e15824f35c01d0302047c435bb50067306502307612d20781ed2a127b64df22293a81bf2fb9a768655e9113fb00555e189baca5c03a4948911eef49cd89311387cbe2e1023100fd418222b56079c1dfe73819a70606d30bc15a4d4993cb51b455a5936a71566fc4f22663ee6598de927b3cef24e5f87c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100958478348ef82620f574ee02c4b1b1cb60186ba18be1894dbfe940421858f27a63f25852444263fdf27d78c436008e1f0231009700da086cba25dd5e0ee5ac7841c03484329aa259e64e43d1b12ed1cbc51a8aab14af6414c8f1e43ad53bf850269f1f0302047c435bb500673065023100dd0cad56986a49d3829e8fd7e0b2f12b87d589ca06e38546aa5e8ab326911242332b9edd27b22e6040ca49bfc02f1a2c023035c29921d446e48c9a1b27993190369f218e282eee285f23ee7061db731bfe30786b44c7b4425d32cc8e1b4391ae1ff30302047c435bb50066306402304164dc917fa03c3006c1c84b7ac375e6e561283686de378ab4d7db0a72fbcb6fb828d30202bee50739dfda2e9b7d7cab02303325fc621b171a0239624134f5a8aa4d146c62f38ffe7f125c797f46e776b8ec6b4b0c924c95299d786247a19826ba050302047c435bb5006630640230382b76aa7a054909853f5e941b5b47a04219af25c6483aede39f38883fc08d298942889f7146b3b299e90c6613c6e754023067e1411d6a2408c2b324f3d4a3ff281d3243559a3cff45b72aea75920b90df60c5f32bcd2ef352b7b764c71a5ff2c3ea0302047c435bb5006730650231008db4f2b4801e05c3eedf96003336d0f992befd7c62af71030b6d70646294fb4a1c2dbfeeb1869623130bc01696375cb90230600e84b1f93b53c608bc0db73e0227a9ed6aa5faab0915dbe5fc967e755fb7b1cc364560bece2f39c50cae8f64dc0de00302047c435bb500683066023100f5c7a1690e45b5c0fc5eea256e5f21a9eba0ea6df5f076c04a5bdef16ca224ed784318602e9b6492d273f26a1a8a9b5c023100ba19a31b8bae267a09deacfd3240d9f84a5f791588f00a769ecfeacf20512d32f52c016aba281bac110b4261e7eec26e0302047c435bb50068306602310088e8f5d2a61ce3d94db2b57d38609748801ac4f655b5047e429816c938a1a6d7f5e5e2b48b6085cfeb41e25452a7395a023100d35ae54660d63d2c9730c084c19417e2d1c1e8371b891c90985a329b852c7cd588efb45ffb134eb6d8252cd22b780c4d0302047c435bb500663064023056ad013764f1853c11f306d57045f534d07a59a68b54b91b5595f8483e8aabda63860558f745afa5c0635a649c48b729023036d8b2180fef32d05da520593f4f7badfb2632ab3189e351b8608a2af809f1e522dc34cf946c979033048c6e00e9cf760302047c435bb500683066023100957bd264a33015f4c2dfa1cd14f2073f135e5b43b987f54d30206a051da4df50b80fc59b0beddce71a624c67659527280231008a36dd611c17ec9cf9ef51e8f4aa7064be1d6bafa002dc8d5df307e295ec66d43f1b5900599b0c6977ab0aa9ded4d2860302047c435bb5006730650230601fe8066e38fcc90f3ec43825bd1a491694b1fcc0c06f26f29be13f00801f3b74fe2fa83c00bb577eb2890bebf7334f023100cbab81be386751d99f0393544660fcd91d54ac6bd42ff4df492c3a55e4f8c2f2a294bf9b4da7a621261e4ca66673e7a40302047c435bb50067306502307e6b814d520a469b782e7ff58ab103299804ebe59554d44cda5564da853e047ca5e569acdac070a1b867f98d20ef87f10231009aa84d563948cd08a13996881143adb805bbfc595ad36d9d68fb1b76d8072d74612b1210487e29867db87207f601f4740302047c435bb500663064023061cc2b52e44edc95de380ebf1ae027378a9ccd2dd0837a93a279dfa2ddf90ae93516dd1a3fe940075ba6e5ff5a7d552e02305cff1b07d52337fba5ea2b3d0f42e3985d661e6a4913473d6fde501f87679ef8d1c8d0321d408fa19996cd09160941310302047c435bb5006730650230504ff6754dc958f4b3b1fc6772f6ae39e79746858aa415ff786940fbd257fd89de4410cd6b5fffc4ef6720aa77d0dec8023100a2da152f253f55561fa06a7ee18b0fa6559851ca762dc08363aa5db54e59feb860e473f8e9a012440b9b9f48d0d9c9d40302047c435bb500673065023100d255dd374a3384b86c74461be97b9ddb64e61f770c76d700eba3367cf168e005c27b1efe3daf0146a74a755addb2a81b02304a312b534ab6543f7b6e4bf17b740bc74cc51c9e1adc3ce5bd2cecf401fa227935751d1a4f6bd03445a75305a3bcab9d0302047c435bb5006830660231009c6d84ed0ca549b7d9c34cfba55b3bb00c306975a0bdfedf6b565e96c91df85f18349ced35a8327d6867d847dcb3e0f1023100e73bc68de3e594eb62c3db40ff999a82f634455f2bd2d73f1a83f1de08092aea5c8b536dd24ebf5eddc6f891bd813fc70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100da259471fb9da37ada3d6db2aa17777a6f432fe77ddc2529b17c5e8d5057a07b131a48ab924c495d3f229aed6547b977023059b13856a75fd92e200e880cc9eec7a2f4e618af3a7a558486e80a79c2b5825dac3ce7d10b7ad30772035111d2ad34b80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f341b7015c1a8b5937d0403f6db04b71520783c027dc237c52165ae38a692c75e1dd8ccd01c76ac1183101d244c4dd3f023077254afc1d7cea741b48bd41e85c271dd27119c3561d9e57887a4a3784babab309d4824be35ee60497b4d4836f2c93200302047c435bb50066306402303502ee755e4d10cc7f37fc8413dd9da22606182a74b18188f910e5d81da2257f4840b72e39fae7a65f55dc3ca711b016023068f460c787ddb4f15258de45371d4e3a752c78531817099ff7ef6aa50838ac0e923a00391e1d015cf786d238fc9343bc0302047c435bb500683066023100deb8f47d43700c77e9b58c3bd01e37ca9e2d1d332b2007f3327f9d5092ef7a9df9c3ab13fc36b273247552ba88dcc8460231009cedc3e4df0735a776a19e27ef74e0fccfe4dbcbd648b54f0af75d490e5a4918bd14108291f4021e7b021d8193e2172e0302047c435bb50067306502305ba6834c19f9eb5fc4e5d27be08c69796acdfd3c47612c6495baaab2ac30afaa6bee00ff3c95aeeec11ebfe632d625ef023100e84da9d04ca0eb7924ac71d14f351527e1608076cf958a477a6256fd7e67e434d3a63fda9c2d08c96313507bae85be8a0302047c435bb500673065023005125cb536be70470282a9b0847a7ebd0abd03a47274e15acbb2dd17cb221de8d3be5bcb50b36b9e0b08377a824e59a8023100eb308c140fbf5705041aaa3337c023e24602ac5d4196a61cd2c3b5931a65ed0a0bd081ce6a6896fb49e3a5f9883a525e0302047c435bb500683066023100d3b205ccd5b11c4b7dee92b4df8912db6a85b98f48fcfa513675bbcdded8d1c4fcc94c2e4bf2d0789f4b101efe302f50023100d85ddadf4b1b45683561d26f3c10856539c9a4457bb810d0f8675366a3b613d334cbd4eafa06668d1c480b5def20aeae0302047c435bb50066306402302cd809112ddd1350874f32a21c7b4e5f8bd5d76daac65f76116db1b9c6d001651937321018c457bac500e3297ba3e37c023055533f20993f56384adbfe2212ad99269289d8faf6ed63d2884b87256882e5c84535af4f74c75623b98fd3f1215b165a0302047c435bb500673065023050d1873537ee96d5856343b8e5cc8dd5f876411c2e7658a6d851f723e6321aa6c9822f385281e4ac8216af7898c76fe5023100d3df48009b86c1c4fff1af155641fc72a14c814d617ef4d01a5d8d883e3221d2d91e1af5db39deba69de855377a400b00302047c435bb50066306402300b4f8efc07d7e53752f370baca7959fdd73d4bb491b35d691ae908095aab92b069ecd960ec27eebeff3cc207de54be3e02302151bb532ee475b91eec170b9b008665ae88156c483c120896c9ae406896fcfd39615d756150e63eaa35c29a12be0c190302047c435bb500683066023100b56f92e166efae589f775966bc05ab67dc6b3f7616a81d6d412b06efe39947267ed1a773140bedea47640ab46f7eed9c023100dcb26d9b78c578a7455327565f437249b2e8ebf6ade791b5f02bc19f95f2b5b92d1b1fd44e93f8251110dc15919221030302047c435bb500683066023100a0406860d6da9b9facb8a02fddabe6d7a18b97a14571b3d59abd026ecc1a0cfd2cf65ef3d7860d2ccca08f602f658a78023100b18a824ba9c642cc71b0b655c780ca73d8c7084ccb0c94b7330b6236389f5ceef7157aefeebf704a9b09e853f40da0370302047c435bb500673065023100ed51da71d4d4f0f306240a76bcd3755e80f49e1cae76776667d74ac0e58c1f3d5124b9cacd3d774cea962956ebec891602307c5bf82547ffc15f7c2bac670f7b81293cd0347c5cf665c5e84b519dce5c450fc84b1222b82f0abf58b33afd224cd8960302047c435bb500673065023100bb0565b4fdc4002cd111e524210f61cde33890b040ff7af578aca1ddadb76486d36d48892d19374cb0271ffaff54356602304bb1c60d4615765863078666d9da8d8a90f81f1aa3a682ee662de18f8b7f3635a3be30ef0e4922731538a8ea3ae831ef0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fc3c98fd76c9c8a1069a560315c2bbe470e89ff78c2ba159d24d67bf650f9a70f917d5cd0091ef746209203873413bf9023100a3fe15623c38957b3bbefb3a4c4124cb4b909efe07bdd5f237890eeb3cf6bfae671e21c5072dd9d813600ef1b12ec0bd0302047c435bb500673065023100b9c8486a9f65324923c044758181ed43533a3314de5d6325c3b3058ce4ca32bff62f9013fb5931dbbfb8512a4b585f44023043e21fafa1cd61eb3182ae0537e39cf2d79d6d9dfafc7d987e0f653ba2cb6bbb55fe9a43342f57fe766cba3400408f320302047c435bb500683066023100bef033b4032037255e910f737e4ec87c0b6a7d40f5d3541e8fb24246e8e600f73c79afe9bba409cdf83d2e945cf2c3ff023100b61f2d63a5e4dc5c5e7c62bb7cc848d9aca2bca559b8162460dd11017a10f5b407d213c0c2eb0af77875ebf73a2f59340302047c435bb500683066023100ad79e0dd9b7d22912cd56f98ddcdfa65f99fb261fc75a5edda2fffdc137149aab2866bfc355effa3479d1a45c27b82450231008e77bf836a12bda39a83ff0b3e616b7e8322ace5236c4db1b75cac70a39357ce6be8f958aa8d33e541bf861c3d8e7c400302047c435bb500683066023100dba420b83c86c18a425d5c5bff854f9f45c7954394cd520ee39d01d0b23cf1786bbc56cbaacbd2e9bf15afe3488582a5023100b0f575be71e568e3d982b9acb1075c748533f4f6d822d598b5e21a75608f47b675970b047cc79fd528c504795af18ba80302047c435bb500673065023100d1938c107a931342b39bde97cca10d18a8a7ad092b0dff4bbc7c5ff409e98169e4710969415fe9d903520436446c517c02300dbaa508774361eca02098dfa2e49b91d1d339bcea3a775991eeaac2ec52bb49edc0738f3dc3574b139638f610609e0c0302047c435bb500673065023000bfd0cb9b11a8afa7adeb71ffb3fe24b58bca61e26a09374353b30dec738d4590493b062eaa7aab565a3214bbe37356023100f02d45836e03e228bc76430122343973f9b24a0c156251eaa4a065a3dac58079166dd4a25eee5c51a0c216f1f3961ba50302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500683066023100ca7d34b17fceebec17692ba047ea41e3a64d3e13ef3560ff8fba0d1c29c004528f4c21624917b14a5525b2e868a4658b023100af3b98e2cd763b9e65b0fa3893b6d6c09d39be526bad85664962416c0db8fe83546f85128274b207971f5e95aa2dacf40302047c435bb50067306502305fd3d70b1817b2e4251a8a52145e038fbaad7aad5bd7ff05366c42c30702a7b883469a19e2f7ef6b417134954756d9d9023100ba626217b64b8488e3cc9c9fa19df6d8d924fb720f8c1c180451029d4d3e56086278135c3cb201fe13e325f88dc86cb00302047c435bb5006730650230600b2f59890b34bf47d5e5c2d37d68c0f36d012f95a3b2928fe9320f4dde5460fbef38d3085cbac63027766710fd6579023100b4267cf38c446e529f438b10f9d28343f8b4a0b863dd2dfcff7d5ca76fda00644f33784f5c2ee41590a3ab843b15c3e90302047c435bb500683066023100d32ddc0d5aa6525c15dedcd8c5adc21fc04fd855495f21dba61d2e04053e885fbc350330c1ea5134f71b9d1bc85fd761023100d63ed5d4a166ce1ff7e791d1b6a755c3a4e7102a07d9dcbdc61f07d4ad302f632043310cc83bdcdc6f4e3619e8d1a3da0302047c435bb500673065023100a5571afd46485e60460ccf733f0d89aef1357aa5dfac2c9b134effd1033987719ddd9e85c031343208400fa4317b3ad90230096548a936babc29ece6cd4c87c893c30ba11d06ca4b2957198836ce38dcba63edc37ab015fb7a6377fd1007305c847f0302047c435bb5006730650230482d91d545eec8d346fc06ae06af4bbacb5a53cb7680c05be67c991b5f73a0c451e84e24783ffcee04d27942cadd8838023100b9e9ededbd77c95b6d291fe75dfd3bdc3be0c1f5a6294c4d4652a2be857bff378ec426f045a43dea56ee712c94c2221d0302047c435bb500673065023004c30ebdae78f4a33e28efe79b00d9fc8f75b3d61aced6a5a4eadfb6a3f3b43e411c877a250d67b3eedcdcb5d13a404e023100d76a3daf234aaf33356f7d801c077a330d350a4dd42a574e517c9523d3976a2e1a80cc4ac75f96e957abde2ff3947d8f0302047c435bb50066306402300cdcae2ee3fa176ce253ef881264d6f4c43d30bc9a8dab61ffc75f27f003246341629f17acfbda737b486545f83eeaf10230482ff89ca794cef5ee776ac16b601422835a03a60248907f7b892bc48774f869816992c050426c47008a1275abcb6a470302047c435bb500673065023100fae0f0959dacf7a64e2ddb461fcc1d3ec541398076d3220a02762f2a881d6a84cbb437ae867b4d465257fe060866befe02305223b58cff5abc5017fc7075ef2104d2ef0be62714b5f871b29404c523faae8c3e123f1b38bdc5cda505dcdc9cee1ddf0302047c435bb5006830660231008c664f3c68c26e7ac77f82936cec1ebf3334f4ccc37c9a97bf7fae321883bb31d2d5d7a6f3c4e73f556252a754ecf6e4023100b0dec1d246b9bf8c02d54128e73e34fcae91418386fcf78999162bc89350fa56c1ca7b2de45c09be5cc2da165745ca3a0302047c435bb50066306402303161d9d9567692c71fed8a020887cb507dc8315a55af4f66c8ff7a5c043e5a135a9b496a60c38ddb00c58dedbed2d2b402305f1dc149116dba02bcb6a767b1d810e553b29bb91dd827d121752c24e8e8df7bc4a609fbeda00c52f1fefd4ed18abf580302047c435bb500673065023032b933019b375d77a43c94f67f548b5d7b1050b7670d01b19998e1c6b161d02359d813cc07955f7828fd7974b9a6907802310096fd95af951e40e0e06d0837fa184a6f1997f990624a843fbd51123db414c19c047ba56bca90f52a9d62eba19655844a0302047c435bb5006630640230176eed73e684248727239c4cb50cbef79f549ab2b3149c36a8a2f2d7ba2fdc1860f82e8aabe6583d50b7eed842beccbc023048713ee3b14cd643e8ec918926064b27d067edbe5a9e1c10f0a5cb1ce697b20a5ce0d22e712c3cfe6a553789ab55a9d30302047c435bb50066306402305a26a2c679ba15fbcee97e2d95de03056af04c139c5020cf9da81995753a3c7aaddfcf9d1b91f2029cb88897fb26cce702304ac53ce7085ac2b3bd48c92b36df14981d9ddfac643720308e61938592c512ac8446b57e0c9d5af75067107e873df7500302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100acce11e5650bda9ed7cab33c6d9e4486a3c4b0a375cc9f46c0792c3053caefed6f85b42ddf9d8af67907e815b8340e1f02303f06103d373eaf2652f0dd92eb6630544ee823b1ce756a7485c55d8aa71c59af3b959355149d5f819fc0d04e2d952b9c0302047c435bb500683066023100abecd6b6c85ee8eca69ca56094377c677d80b03d29e07f4e77cc39d6a5c9248be05dc45c36e263cc0ce0b705f4d4cded023100d72ec9dc26c035a070f0c1bab3a830f394ee44c0d5d4183256a9be05d954748e418efd0810a19af79538e97ec1058c4a0302047c435bb500673065023100a47fca006064e15df0b484b95a5dde1d4edce1226d707489b555a37c20a831d31b4a23644e46cd64877c079703088ca30230421dd2707f59027a92520acc739b9e115b73e58187fb0593e7a7fb88cd20705e26843bc711130465cf4fdc6c7a53e4eb0302047c435bb5006630640230790e85894e2c12febac20a0bf3463af217a7686e1802ae0d3415edcd3111fed7c1dec41c17eec09879f61cd5e0245d11023043267de4f5f1287a90cc6d0f20dd38094e31fa3b0de119d9e6929e56dda999318510a9497f1631e0b4168ae5f64729940302047c435bb5006730650231009cdc04d871a68af6be845eb99839b761ab25d201e6ace3e51f1cde0216c70bad47d63f7e9871906c3772ebe43f70760102305454945d5bdc308a5e678790c6fde958e9ffb982f8cc7cd9928756e8e365c687ccc6b54923b1ef60df2c2ed22fdd04c20302047c435bb50067306502303db444356c59f472fa7689c32263c901bb419691d447c93e59fb65ccb27964911784e29e78f739e34b68ace1ce208299023100ec801517a81a252a22b701cd6169ea90613eb3f03f749aaf688432fcf0cad3c9faf79e7c381acb06cbcf33490ac6ef2c0302047c435bb500683066023100b1dd0354c08b4800df5802b2f4024c30ae68a7d622e611f8673dd665a6f5e03ea4a002d83ae0a53d1fbab29165d66a75023100c034b73d7177f6d53d28915fa99fc431c7c6b0eeec14e7ae2ec888d65f211fba0672ee99ee5fc06d5e83c25df0f8fa9d0302047c435bb500663064023043bb5708ce7333fe3d1ae78531167ddae1764cd28cd6bb5948b0d60b651a47eaa763d93d8dbc35098edb0dd5ef9a69110230116100abd414483eb5a16c51643df42bce911056d5a69be1cb12115718b3a4d064edfda7078a5b2f4a84de6adbe83bfd0302047c435bb50067306502303b2f281120824115a278d3185f9872f495a6bd985afa1520b6054f565d718d8faf86d84b6dc7e87aefea457c54f3fcf0023100847edadde80e6963a76213abbd06758d3537e5a58c79e4cc1973bffa1bf52ad43b3fa918e1fa9435bc225ec95b2dd5090302047c435bb500673065023100ffed2996f3491cf6beb52003d7deed3376708ecbe74d4ecbec650aafbcaaf4042dca1a7778e642af52dd69c83642812602305cbba7cb28ed2cb912a7c3ca62d3f0c0615024ebbe925835d2f39515934806c4a0f41062c732c475e7ca8116c0e5fa050302047c435bb5006730650230131c1642a877bda717ffa24fba7f8d32732ef063a1cc2a6ab500fe383af44caa2b5a06d55ba123a5403916ad72704274023100c1bcead4aebf81684ecfd799fcbd59aad1ac006dd556ce60685de25c523c4386ba4483c2beded15791d680ad46123f220302047c435bb500683066023100b2fa5051de8abe722c0081824ff2133b9f318f945c78a5c38a8be2cdec25ec614aceb7b25cd0c03695d9507a60f5c4320231009895c15fc0cca77eff2105385253a225ea9319d7049c7f8111e78c913ad30d45402497ee4c20914551eae78c8d887d290302047c435bb500663064023053a44ffa9d1d5febe384c851ccae298a1f87bcbbd937e888d222352fb8bd1c65691f1926ea07619f3a18cfa8a4f589f10230214793c3b2a2bfdf298d667ec490c19d6a8691719b09d68f663533289c345d7f97be1fe16a2c894f5426e0daba767b640302047c435bb500683066023100e20b5554b37d9531ff4e496ac09b622ac260d5c1d620db7168da168d00c3fbc6339d9c40a7afc48861b8331f7714e4f20231008f9acccc5cc52306c77cd8d6e71e2c1b0a5b938d3f49a53fd814e3531ad3e7f7df4192ec2f0f3e45a46dfaf205d742130302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301e705c290e7d2305c745c0f9e385b6559cb2891884f19cc65f14d1affb856dc3ae4c2eb76f27bd94f624f97c1d03453d0231009d7f4f1f65ef6e95a09f49c63edf8f46424aa32fa94e236e573fdaabe5f276eff78c9abae1f79f978f6ebea8f9f8e12d0302047c435bb50067306502307d0980f9b298816e8adf44bcaa1c0cd6f87634b145cfe0ff64962ad8cac9032c804db7bd19ff2c547ebaa7a691cf96d702310090c9804312714a26540de9cec40ec038fdcd7608366878f79707b42aac50e9d6ca050e33966bf66b3f061c41412e299f0302047c435bb500683066023100f105012876ac7dc77e1c2a2ac7d3294bfcdfac3831651bdecaa9db69d99c3ad411510ba186ef90e9ff9aee9615f80c16023100b2e291f998afb5ad7c92a6e09c380abdb3c7225b9165e676e0e72a604828f2ead62b0e5172dc9c77bc943044d3ab5cf40302047c435bb5006630640230672581884a0310a2ff012e62d9ba2720d23e8c43ee86bd6bd311b61f49685a1edb8a8a518b3606ed936c3864ae3b757d023065f7f48465ee1669c2388ee0a330314ae08706ac20e6f1687cc36469773dba652e9b6d4022624c37c618690ace0122a90302047c435bb500673065023100a2f223163c6d8ec0f8585f38cbaf336a50f073ba2e5138b3b53e4ec79b6bef3c1822ed4b1b3ccadcaae2ccae506d563502303697d99a75b9a347df07329977dabfeaf33fc7f1f3a86a09d51ac0fcec722f77b5bbd9794d8a07f902dd722cc222dfd90302047c435bb500683066023100c33afa612f8d0e4275e9c870eaa62a2d36bd47a76ae712af4085c5fc6c2824c7551c507ff5c31c2c0653d201d2d43173023100f2af4729d871351240c1fb07fdc7ad2c1e46f41e62085e27a99b99fc23269b1da36b2892f3b4c68be0a22dbba0b4d38f0302047c435bb500673065023100ab6f6122c78cc8d64f0876c1668be041ac33a52511e4440fdb8dad43e88d3ca2938e63d7d411ab578a93aee9de7db80e02306a6565faba87badccf2e78bb8e1fececeedb15cd8c24836c68dbe8d9247c5e512d47d721a2dbbf8975b716d34aab4b170302047c435bb500663064023043a1fa0173d2a5ab04430bd634e14e9fa9fcbbbda56afc20ce76e3e0d82cc78a959f0ecb7d49c74abe233547647901ce02306dfd6f3797aea059b25ec16290b1e025545fd11350701a17a4fa6a2c2b9346ecb806d8d810685c3a986f1b08544ae23c0302047c435bb500683066023100d3151b00c777eed96b31990b1d1855dcdd3e6706362373e3740bc7b969459fc0d350ee975cdab79a41c044482daf773d023100b461835891dee554d3acfe9d730f35f1d38f7ce703cfbbebbdf757d8e879aa249dab21a8853730c47c66796b116312460302047c435bb50066306402305e543d589371d13e3eeb4aace291fb0972ebc60c44693116b4eb8c197f2e396524c85b1459e3dd3fb6978ef3c882384002304eaa452d080e94870114d931d38463512c3185cfa53885a8aaac282e80f14fdf9c3be5abd57ea40675837a47929f00df0302047c435bb50067306502302254103f797719b57e2f8e29dea36f62ac7ad45a4225e168f233d9f6b91068e8abe952fa3ea0c6bbcaf80049e43bbd92023100c00c7fbb7453054efcf35c54a64d5e066a919f390a7aab301cd71b0aad7a9e3d1862b3451a0ea9630426ff2cdc83de380302047c435bb50066306402307e1fb843a93e6c547a03ee2b2c8c964705f252cee44d49a3f67a4a5982253674f80b586ea8d60bf8f7f04c4616fda5b2023040ca2fe7e64be741080f0611cec544f41985daf1aa65c162b17d2a06393e888abe3be88e65c8117c2a0fd85857ddad1f0302047c435bb500673065023100ddbdac6bdc9de39262a612d80b3ab6830dc5761e256587f8ff884809cd883bf4eaaebfdbae4b683b412f8b9556f9c371023021e221d340a6fcac41b6c3c3f052f25ff926ff0afd7d7e8c1277718b1ccd6a5a93ca873280864dfe2b59d3ab163302120302047c435bb50066306402306f07914f6960f8a3c967048c2555c1113151f9326d2be54089d8228d5a6a932fbefdff3d80f1551045d56b23ddf21ece023038efeb61bb244b3db7f05ff3b875b4f05151d2f8cd0cd64f12ecf03ca8b155a6b60282a5ce99679c556532839658804a0302047c435bb50067306502303efba3bd58bb32846683a1881a6419b47ae437549a2fa5edd0769e92dec70cc6b2fdd61cea1c5ef0295d5925db27fff5023100fcc0454188c1e06ca2f29864a730f133b4101b37c04042ee94e4554147f7b1ad2439e9af25b0bbcc982b418d9f4110d30302047c435bb500673065023100ef670a6dbab1277cc204a9e6dcd0876ca793f7abf133290588c8713523a21b9911149f93ee61febc92dd7c9ef789391202303165ecd8caaf56744b25068a249655778c90372eb2afab85782c70db5d381133c80b9d5f63d15a776ec4759441826c440302047c435bb500673065023100d5714c0719108eb8ed1ff5632c4ade565121a66e6ffa1ea0afa1105d7e8db37699b126e08738ce72297fad62d660dda002304a6d674e374ea86978c50a05562ff94cc5766813925dec57710741f2786eff1b385e2b513596776bf70ad872a268eafb0302047c435bb500683066023100b3ab136d9e5443f2bc1b31a7a31dd50419e5165c2eabcbba6a878277fd330b1770ea9871fe62ca8670f300468cfa4bac023100cdbe6983e9d670d9b15dadfe3e8ff1056ae1b73a6ea5d35c9eb2f271e3c36c3d43ce6499a1a0e93d92e47a6100bb30120302047c435bb50066306402307e1fdc458484d0df5f62a561a3fb78f6b65fc19620af1fa88371043945ccbee3fd41292e59a6d174c1d2d7fa701a5b020230667aa14dfc28b549157deaea000c0efe1b6de0f877885081732ec3162219367b649675d2de8fdcdc9bab3a6829dbe38e0302047c435bb500683066023100e1518ef5307ca3430be7bead6f9bc97c1f0a0698b736564df2fab165254f636e9551780994891422b0b1b8e142808a31023100b8b67ce312b15c62f65d9abba739c170cf1da425840cab73ee0014aca94895713adce6eb1a326496e1dcb0b82a0f41fb0302047c435bb500673065023100c8a71fd7af9e0e442c92d13c456424702ffc253046f7a65fbb655279e0f77c132f43d53f7040f869ab9f7be19973c4510230435c812aad7ab44acdb454529690c98f9d0d2533036bb77d395137b5eb70545d749b26276f66a848d073c489c799e1010302047c435bb5006730650231009f1de1afdd87a7371377ad3502a6f114cd28796fe21c9f0759fe96644f9674d925f0e1b2290e7a1db70e262a39020ec50230589a9da2c53f0b8299b0854307611706a034396bd8ef3802ea9364712a5a8769d71f7d22a1ad647f386725b9eb554e470302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023074448328c881e491eba310e3b033259b1a93b69fe2f93d7d37e3bce3ff6aed2a1df6fa4b0c8fdec6fc0d57b9ccf57127023037ad20ac784933d4431094c2ca1e993097060b321d75febf6e8a926f3dbcca98a133da695a2a4216aff340136d346de70302047c435bb50066306402307363a1af85fba8bc25965e757dcf086043558c1d70ad7911ed9d8feb905acdbe875ec9327c20b47e33ad27bc818ea2ff02307a3639eedcbd8bb0e8bbca759b182b8b8337ea77e456d17e5708db054e2a8309dea0db048ecbbe969be9138996afb5410302047c435bb500673065023100cecb5b8db454621870e62f68fe81d3e719ed658b51ada84eecd31f3bf3d37fbdcf1cc659e37e4494f985b5d30f92a9cc02300639649fb39a6344ca5c70a80a275d07c0b17efd597bf089c7dab14befb487f50824efae0e6b3ec89cc9a69159dd40c80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023009814c7675f5b6bf3212912503d78ef44bc554adb89c00b55fbfb3b623d94812c981abb12d43be69d668cd3ed7adde18023100b194b1a0525840bd6713ee07022045702b9d57f3ea546389b8e54ccb748c06230aac06e886e81ad6bf249394d86262790302047c435bb50067306502301f779968c690f5cbf98bce21b3ddcbfe64aaf2b79051cb001aa07b416abbdefe66504ff8e74b118af04a3b48b713e81b023100b6a90a574ab91a12edf99810d38b5adf77809591bdd4e37ce23c22730157f4a8af45d73b5483b8eb8f094558492d25350302047c435bb500683066023100ba0a708e010a91d2add5b9afb3ff14c9a5453cbda89b663d197a317bad5c57d3cc69e62098ff9de5af668bb4b2f99b0f023100c8cdcb6bd5bce9f257a3f5439d4b55bae16a67d2178aef04327c580e7a0c5d1a38d9e5ec96be0f5f62c5b384afe4bf3a0302047c435bb50067306502307fd645d3ba15deb1ea5437aed7fbc3256314623825705e2d9cbc51c5a61518fbfd5ad027592a0f6962be391d721186ab0231008cc2fbfb64602a1d501269c29bf85fbb78b26022f6e227723d154c612f979e0a74f3c83781d5fbf4646786cf98473fcd0302047c435bb5006730650230073e5bc41176e1d23b6b7e751a28088eef440684973dfe01bcf2e7c8b5a439f519f0f79e31d7516a1fac4086c984ec330231008d6478eece3b660f02fad1ade92b3efe168ed7d36c7bb7164d84056c0306d4c996496fcd39ffa6dae75b552567ccd5970302047c435bb500673065023100d5f6dfc1f5e7fa6881f7f8e2b653b1bb37b89c416b87da5556c9d4cc65f434e3e67be5ac802e03207b53912f3122ed9c02307dbcf6ba9b361df082f627b80cb2f43d02022ffbe0046d8d4a3575175e90b1431a208dccc4ce0c335576dc9234623a130302047c435bb500683066023100a0a448553041800a00b5f983671bef3ba9dd6e42decd6779e401219ff4399ef18f95960ded92cc6cb0a85204b57e3db302310098ae9f5a52e8a0305538a5de22eb19de72606d54fdc6438e21cad11b03fa1915f4b9a3fed13bd2cce228fad2b4ccf50a0302047c435bb500673065023100e59cbcdf99974d5637d7547cd22574bee7fd46237c69c20849ed68cb5cf624b737f16c6c54086447c82f4bcbe18a923f02306876d56dce1aaa9bebefb37332ac99d2865db36407564681deffb5eabdc8eccc9aa557c1b71791c7d3d42ab445474b710302047c435bb500683066023100f24304f974b2dbcbb7d01604661a670b4dacb38eaeea45ec9ab6ec270f439b279d2ec90d204f007380c60466c8262efa023100b842da45c0e766dc5f0d3923225c92d10a7a1a5dccc883aec840cd71657fd41445eccca23a93a93fae22b85355e651800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d7dd1f6cff686024206113edd5ce935e075f47f97c53dde527f75b747e38664a0014e4917e5de48f0a7093b5583a38bf023100a34780467396c5711b5c0468f0e9d3b975bbbc1fba0e79c4d2813e05684f7348fb7e73a963cdf8de0a8a0f224734ff6f0302047c435bb50067306502301ed7549945b6fd3bc3b59fb33ea9378935fc63a095620b552f63ae6ef147803e925bf3d55d17fb4e30a69a5a562e23f8023100c6893795c3f1d853939541d328427256654edafe0f2854f6637d897d565e85926b6bdb5a4fb7af21c1efe491380ff6870302047c435bb500663064023060cdcec591bde40c67cf41242a2586c9f9dce6aa74e046dd8857671d47264bceb5d4709c0d13f4dd435d4e798c4dd4df023009248b616212e135e5570c1a5109b7951f0a83c9caacf42ddfc7a72eb49d5f6b453eedbc52a8001b1f1a8ad0f75a85c10302047c435bb500673065023071a5a6c3c04b5e87142208649546bf854ceae5c508c959847284cd730129347b5c383a213036f9c044edfa124878e66102310099173060db115ba5d92efcdf85d40daebc650d81d92b51906c745e027047b1f79df17e90750bc8eac570d872c64cfdf50302047c435bb500673065023006df0b1efb199fee8683234bb10cb2cd0f385190492e8f466db57903984c403502c40eccebef2f6db392a8064b1120c5023100b2e308457cc5f3b7bdbc1087ac22799a81aa91c9f49ba3e5d56af89aa6c6a0baccf367c255299c477a4462804448b9550302047c435bb500683066023100fb5f8964b6594a494a635597893dab145a7fa2a810b063183ab3b5038916b29e1a5ccea3cfd94f66e0ac9be363078076023100c295d4d39a16c43869edbb3aabc920afdbedf42fa74490b2d8a25d8f80f60219c01139a67ecb523e12d127b15937aa930302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306b54a61708468ccced2af7f9203cef5f87c965d2d5804750bc36822724d1e3d6b49d19c6239f66d03845540423f519d602306534a8a5246f28dbe3cce1a445fee6c1d8ad581a99f6569601da67d17bd4477b75b392e763dcbcd576bb03d30ddf00d40302047c435bb50067306502310099f99539a755bf5c9e3aa018ec2a66d1f22090e442833b0374cf2108a1bedde1638e8646ed6fd3ea7de74992cfd0de2f0230724557302a10354e75025cb1c0530ba0f1c42faba2ca2b2aa7e1552eb651dd8330256735f0c4771b651afd4a2a5255df0302047c435bb500673065023100a3e3635b55d1c32178052adfd15ac077b8de45473271e20fad319b514fd3d0acba9a19e49aa9c165519382453e011e5f0230604d923c7883f0c7ef8b0e1cdf158adfbd8349ba90a2811a36c8ae140953913bf80c97a8881460a72229b3f1695f58ff0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c429baec48cf693bd98fc289348b3212d6fbe0531c8dedd92bdccf25d9e10038664d1bae59b5220a60021bc757a9cb9802301d8e2403845dfabe3283a99c79d3b3f40a886eaf48da09fad60ce2d7ffa0ae87380f849a166632a2fbef61969d28c5a30302047c435bb50066306402307dd517637ff3bda181b14d5760bedd9c9f3ab8717e78faa3582e98dcd26a129522216b886908da1a9fa16eda80dff10602302adede06e0cc2cfeadebbe37a116df46000f6678b919eb729a196dc3056dd7a033fa65b5547c9b77e8331000d8721b7f0302047c435bb50067306502300bf9965c98749210e6c38c959956400c622a49554715e20e9fa00303202c007aaa101962bee80af940e245988976c9530231008f3310b3bf70a077be22bb60ec8b62da929635ef6a80a7597686c1d7e6076144cc2bb3e4e6f08695a52a3349a34059b90302047c435bb500673065023100c429baec48cf693bd98fc289348b3212d6fbe0531c8dedd92bdccf25d9e10038664d1bae59b5220a60021bc757a9cb9802301d8e2403845dfabe3283a99c79d3b3f40a886eaf48da09fad60ce2d7ffa0ae87380f849a166632a2fbef61969d28c5a30302047c435bb50067306502307fe3d6076cab11c41691ee0f06123f467b7afb965778c8399d00053b2e0638c19692665ca2eb9185a7e269147a3e5f2d023100f46a33e5b7ad53b7b59f6dc1d2d820055a9ee5b994530eb2f7e3643ff0c6623689d06482cac2c37a14e75c925e4363150302047c435bb50067306502301b58bc02c3879e61831d9e5242ef07f590fecf2c1292cbe70b026aee698c79bbca2ccb9f9780bf5a4f53a7683527e1c3023100d7c3fddf30ce590dd9a1a8009afe6ac78275268286225d50241583d2cb84065b434c4a32fc60bad354fc076da887a2860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009ed969ed6ff9b52b449158d5ec364d0e125b60b601f4811ce3de2f769a8b09890837270e02abf961f4d701e54ec8f6e90231009a9fda1f2bd967270d939c4dab8183f3ed2e710952a3533f7071c8c9380d992aceb2b5977d698ced02c5e89ebda084540302047c435bb5006730650230487dbe4941bfc6baf5df6d407dd1bada074a624a214199b9db5829de1eb1fb675627e5bdb89a73d3a01768cf12680286023100ba2ba1c9928e66571d1236135a05e524d3f3863728299729ab6143bc846750696d5ea13fc63bcd7f836f67d3b37b18990302047c435bb50067306502310089f816d25e973d2c93e6218c935d6aa1edaa95a62e0763c2439c2ae59df01217a40f5b652135c94dc6938163ebe2233e0230330e21842fa2edd951808e27768508da860cc7e6e381ec1e0a8649241e55d81d44766c3b319d61951521f1c5ddf2214a0302047c435bb5006830660231009f2156e8acc4a7d54f14f092c17e30966bfbabc7129e2c9ea50d02613d42a56e6c5daab2a3c99dd6e79e14f5580b6d7002310097971f33228e767861ae2ff024a74213ba095f685841a9b2f7b81e7c7c7ed723e94d1a84adaa6ee3cca76eb60f916f730302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300a9ace683ba15321b8980e0bbad21c7e236c7b425c4373216f97847321586600ee7ce1d6a2330bc0e139bd3e42451adb023100c283c7bf5fc5b7387dbfae336761b54b9a07d0af5b8824041a71a488cdb637ed1f2851276237ee9b3e4a9d9384e143230302047c435bb50067306502301963228714eccd7870d2daa777dc1700e86306729092de572041185a565495c9d00662da8cef11c0d7869082b29f0035023100f894d78256e8d6e96b2af59a1e12bd42a519d6a848015b78e24e7c7b17fe3c43f8d7cbaab4f51d6a61e5d2dd8be463e40302047c435bb500683066023100ca9bca423538c0aa332efae4d4683062fe5df0793f23a1817dda82a4c90ef57edd520db7400e9fcf74fb4c5cb74398b0023100a6d70bcbd0ba3dfac7d903caa0ffe4a37b3d59f1898f372c256e52947cef82db682ca5c1703c51927b66060778e57f830302047c435bb50066306402303df288d8d057eada7d3d4acf82616c464725e39bb478ba319ad4d9273bc7daf1266348c5fd545537db93d2681b831cd402305892525acd8488fc08c8ddac2b905a5ae8ad85804b89bc11b0aa95dcb82a4d144ffe636982ef8084f1a54786ebdaf8820302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f576650995d314aed714afedddbb2f653004493a273dbaacab46dd9155520d47bfb727b0ada62909f16ecf1e39152fc3023100bce78c8118b7b444251986974c67c06a52f2e9392aeedd2c0c880404e6dfacfdaf92083d8b25702ab4066d05236fe6860302047c435bb5006630640230665c8a24ddc337f259a3dbd4fdefa0db2462fcf146f508d76c6c8d6e98031691091fb265f3a26b30974f021015896bda02306fde48f2c74b59ef15b02db51bc0ed082d2d09ad03915ad8a6f2cbc37012f02b7443b801961162b9bd0a76608e19c9bf0302047c435bb500673065023100a4efba17c05890c7eb1cbf08524e2ec314a44d251ebd989e10691266ba502aa26c4fd5b33c8c59b5340f4f14c61d336e023045f7bf4a9436e4285e9d0eb63a06e3796b8aedc83f28dcc7b87f5f249466b0bf44622b3f5e051b2dbed653a6c7d3c5320302047c435bb500673065023100d924fb9749e0bcd9ea074d3f34eef0257e1e8e406a293522f57d33b3811a9e69b37ea6f5b5d049950cb5b66ae92d7a9b02301a93541b635307e620a3330136d51a20f1fd84674e8e8bbcc7bfeb1a3d7eeee1840a35d5439af583be3ad8e6414c49140302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008f33de8f21f9f0abb7f93af816809c553273a60aac7ba9228d2c49920d89be70e84ed1ef67d63631274a4655991161ab02306bfdb0b419cc67b9808b7b3ec27d23b0bb0787e916b661cb722f01b6ef701f111713b3b07c4e8c8487a95205fd30a43b0302047c435bb500683066023100a3c81061549ed0585654feafdaa11194d53497d91ccd4d3f9ddd4aaed482c48953774097ec94c4af96883378bf6f4287023100ee342510053de6a18f9383e6286951ef67d3a1628f545b32f7e663cdfbdff1610bb89f797e30d65b73b768a7fd32b2300302047c435bb50067306502306e2b693a57eed7029522afb5fe5849b73072d1229c7d5af656e5e5d27ea2c868bb4ddc5e893649b5beef4366716733f10231008bce13a1850938969299599be5ba8def40ea8038b0504c6fb79b6095770f14c247975f47520e74f938c2a785e160f32b0302047c435bb500663064023041c64514f6ff729eda26f372b38647d647ed9e314674e058b921857853e0639a8d01205df3329e1428c416d1616062cf02301413172b883d5859b9622ecfa88b111f47af81679324955ea5ec0f68728e349a8bf63c10ccaf50f11551eb235376adf10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100975a48ab7bf3b7dd2e448af5fbaf4000baa2f6a166d4536a7c117098aaf68355366adeab9aaf33340fc855faa911bb7b023100d474bbeecbbd373d2a9fe8cd45a2ae07b17e9d5a2a42a2e588b73dd248eaa3d52a01cd44bab9da1f3e5806c604ca0c6e0302047c435bb500673065023100eed7522d9d48b17ccf8ee0db51ac0bf44790f104ec944aa493aa5cb61507d216a172f655f590969dbe79b72c59dcb68602302fc4878de6416585fa2be491621e1a2658a083a318860fc0aa52b375ecc9c2d61d0756fb3e5574829b1def162c73dcd10302047c435bb500673065023100a656ba63e8aecd663839f5c014efbc871968fd6729257f70e32d8fda6ff20ac83c31b201f7fb2d55edb7e9a7e1df19d0023039edce96f3ca3d301d66f0c7724d3698be2397024db7cdb2dc67d5f00fb4ccbf753e3e85d920b509b62b67b2f4bbac050302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008f6d84110ccd27ae13ae6b7cac3d2eb56afa6919fe4a4e2026699b1258ee2bad98c3abb6bf673ba04bf0f7f482b8eade0231009516ff0a843b4d23c5fb417c0ef1eee1d8fb4671949fddf824a3e256d2e4b8c324b5983c7021bbf499385ee29b0726810302047c435bb500683066023100ecdd37eecf647d9f5130c359629cd7f50b9103d75b414035b73637de6c4bd03110b76eb797f694e6502bdb31d99f3019023100c1050847b5d5dd9be0d4da376150ef4b5ffbb30ff24b09f6dfa44f49b18410cb68f814e8ecd463bff7a53d522225880c0302047c435bb5006730650230025bb4188d2d7209dce334a0bb28fcb0a801b5b1cdaf7f6a76dbbb43d6266284bdaa28d0c732f8328305c35ef6161a9b023100e24b2b8f43f100dc338a5430aa44b09f97f64e58d0cedd0e50bf446a2d68e56bc9a71b93194d4ce44f72f69692d573860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304099084cf231c19590131298314cb60255423774455918843b46d95cfcba91853e62021a2124dbce1ff86cba3600f56902303106201d0348514baf3cb3a6cf568a4d6342bd3602a07340d11ed4b700bec90e95e4fe3d7eefb7f81e5f99393038dfb50302047c435bb50067306502306818376165a07defdd08db6cca2cf17b6699278e71c95afd253a8e550ddd84ec6da052b0fa9f2695f345f8fe16f973ae0231009763cea1f240533394b5c17828acfe1278a0e560f8defd33eed1d4c92c5bc156d11b1ba664ec406f7b462345405848c40302047c435bb500663064023042c4dc43a6f96e11edb05d475af396927b8974f0e56919af1334e2cb4286d61cec12aea89d88dd0a370212f0c8b505f4023017d7ca818595ccd369a3627dfacbd9230c045af7602e3ca6587ccb77dc3485b2f08a1efda5872430bc11495164e053ab0302047c435bb500683066023100bcd118b4cf786a2d7ab3b5b8831dd797522ee95ed879c74ed3f435e0b3712d76c808b299e3cf4d581d59809701845606023100ffe62756656916a0d7c82d2f6760a8c09a15d81c5684e71200964d3c9c18b28108c8402ef71e5d302f46d977bf77bf830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f9216c63b46ed0343dc2a6bfa7370507e76152e4e2a9e2543734eaba4edc5c81ed7b34e7471370a13d3825d220632413023016eda38142907dd118454a81f8888b308c8f6f9ca147135ca0cf74cd34a16ae07c946f3cb3e6665f65f0005e00df2d3a0302047c435bb500673065023054756f6295f276cd6c779cf23705a11e42deded841c4e737cc0f872441768c8603ca72d170badd4c5eaaf7f119fc7fc402310093a0ff1771283190a11ddf29a43c900a0c31e60792d2bf04e29dabe506e5d41b1609f2d3337a5b205a52e9d6ecb8bb560302047c435bb5006630640230652eee66d902cb6789a5e1102c9064efcd7f4765e5e718ca2c9118fc9304d607788dabf77cf2e3d9bc80138641b9e1a902304ce670ba9719a7c19d1aeea03012b219830388819701ed583e087c2fabfdc4a3e2a9e55cda7ea1303d0a8505a61adb970302047c435bb500673065023100bd857046ca59c1701a7e9fa98e3e81e50ab857fc6134200c5e73de8d0ca747c4922076f760e80f70b30fef982088fcb9023000bb73af47505a3f5e82c1f9a930da7b5fb6814a084d8602aa7e0f3e803a566961cd49e22f16fb21bbbf7e3781fa0fd30302047c435bb5006730650230657e4a1dc25d46bfa7714b88853d432eba7e3466f5d20228b459294a215487df30d8d286c1e8e570c0e13b6382d6169c023100d0c6161c3851658125508dec53f41b9b5ba6fe5fded867cfeb4411570d16c9343b0e9705a461cbd2f41db67e3835dca40302047c435bb5006630640230297635139b2b0159c074247bdd1d6d5a7ffbb54fdb583095c3393eb2364492bc93ffa86ff1a5f9e7cdbfc8a5bcdb74b602307fbb3eed44d0dbeb80c6554ede4484363c6a2854f0c63d94ec878ac85c77f4d535a867db074a14b96ae1ba46c43b29c20302047c435bb500673065023100c7cd6cc568f369be05385dd7327f5d178c0918569f88ea4204294ba5338e7fe4618c3ab5a2ca81be00b35c802506f93f02302946a4966a258e549fb3c789867928bd06b38fc33e3ba50d864f5af52a077cd390356a4e039862140f69d703535550980302047c435bb50067306502305c157dabe54878651e85f7e549b6b0ce9b9b3aac8af7f6201a3d95290b44c0f37c458febc4fb26e785877116286c3582023100f2eecbe8d1f342cab8232d10870cc6b0f17978709cd08ed3ad48310bceb9642272b571c188e8268d1de000a12f87c7210302047c435bb500663064023071dc36f6c5b3b488ef1976b649a498b5f7ab98dcbdcee4eaf5cfb3f672097ef90e3c3fdfbe77d25ade485b5f44127e6202304ec63e0bf96aa70cd50152be4e4ff109a46e85457201960ec1f2290a64d7b9c66a9564a1dce4c945424b6161f1f1d2760302047c435bb500663064023006140d50cd102be7b1428b3fbc84ce0ca2de0b091efe7b54b1ca3b22c8ef802b350a7d237bd7eb515cb674b788bea37e02302f0e316d6f866b9f12f1ebc98f59c88be4471f61af41b7f5649c6a4118eaaa0cbba56dede564fd72a13d197b1359ce030302047c435bb500683066023100dabdc74b7ca72b2a70af6fdb1bbc54333ec16a23040d5f75b2dac1d695da36633a9c474ec9a72866f0c59cb82cb7d8470231008d4d9093c555172d6fe2da330bf6e8002b9c4d31fec02796f14326d59529d4019d6f7fd59788ccff98a301957d769e1e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f57224c20ec1bfaefcb016b9be0b2ff857c306dbedd9b12907384fcdff9cead05b359efed593b831797fe302be08a690023100b033477639649f8bf629189d87baedb7728b5eed64856099265d5d7a88ce4c9118582a70470bc65d8404bc35b7aae01e0302047c435bb500663064023048ee7ac754aa6bc1b6d6dfdd09f0050bab6e0a0e076de502c626bf3c546dbad862025d2ccd31511748f596b1f04e939c02306bd6ca684255af7cd47564b82dadd2fdb2992dfdd3f61c2f3fa5872ccdbec0573f8c791fb88a1177d5c178b456f18b6b0302047c435bb500683066023100c137e979485839b70ac58264b5e6721c998923db31e33cad7551a0be05d57dc7cbf1ec0e3161379fd12f48a41afa5d11023100f6fcbecdf835b9aea3f916d10152f53f3dfdc01e79cf41540205597b45a4f881d9b4a436ea871c62eafddffdfd682d850302047c435bb500673065023100fd10876b945d90f6965f32277bd65785fee1e6bf46ba10121a7301957b1900952ad22b42df58e489611600c79268a56602305f72111a3eaabb2932ae7d7335dd0f2d00771b61e163e87d79a4744724bdcbe64102069480d61705ef7c962aff7afee00302047c435bb50067306502300c6d3653e69bbc5077544ceb69ef9f4e0dd52f1e6ed3823abe56fde68ad48424bcbb0021f4516277667a3980f3ff661402310085a2bdeaa35f84dcb4633db1935240422acec744795dd9cb24385c4a3cec7be797a2b40bd3f54e757bcf7beaf37246e10302047c435bb500683066023100ef8cb6bebe79b71678c3623c2bd3dc018d5d94397e0fac506c9849000d840658a5965b6ee9cd348f6f5ad2790a78961b023100aee3946ed3bf5e4367cf3c001fa1adcbcc50df7f88222449e274418e3308877bc014d224490c8e1e60b85be6d13ac9540302047c435bb5006730650230328d4a1c33722388a1577307d784a57fede7a03d45bd5f62af2dcfe3164229d4d7cf78bb6e709b3396597ca8fdb59527023100f413a0f50f410c5e36c794f7220f760aa557e5f06a7c1bc3d1df539931bedd98be801c06d5cffce6a89ce430abec24f80302047c435bb5006830660231008eed7a40e047c918ad0d276f94776ed903921c8a61ae99f74469ced12de8f3d100b83ef4bd18e74df58261d1de88a3a40231009ff22affc390cc797487973008e4b04c865434a620a2853e6078ae33fe0d197b98b6e7aedf339753e8db30c01dfe4c470302047c435bb500673065023100ed5d8553c7d912bcaf116d0a5c1cc3abaabec7afd482e4d6a6a13a469165b4e086ac799e646826dd7e8c280f312144dc023049dbf20482e3d33a46823549b9fd201aae8829681b92ee1c0ae326ede48382081acf8aca2cfdeec10d3b7ae76b16ca250302047c435bb50067306502304d5449711adcdf01f6532acddae8d19248e7f367ef98df8641afbc63d4737c9304b060f91e4af31a8ba52eb3a4da7c56023100978234f65432fdf2238158da78dc5cc0eaa813aec75bfb6f0ebb0003af7b730c39e4141e98fd32a7e891be62f81493910302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ed9e503304f226cf63526ecb241ac5d474ab5d898d50a286fff57a8361546512ad0bf8688a414bfcdec32237d645288b023023d8965155284bfea86635aef82be9ff68d76a6761c4f583d7639d356386769741c38c34f383029d110fbef4550a59880302047c435bb500683066023100a3ea352b3f080be4e63d835bf703c2ff40a2a217c998615b2b736f467f112e6f0fa77dce479ee77950efe641c7819729023100dd024a7e7bac8a27b67a6592a9911510f56d6d10035f0bf75ab016f071f63759ff3e7e0c95daea65584c30f4a8de42730302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023070d41d50616e52ce343a8ee935f6e7f3a4627db4123686cb5adb0b4ed75ec63a7ab04765f11af5fd54eb54ed13f94b8902302d04086d3a7d448952d71f6397a7abed753c826feb40db48e0349532d70cddb040a813abc0c957b198437c6283a758610302047c435bb500663064023056621c82a2ca0d10a2013623a149072d7d75205501d146d81851783f6a8dae856cf92887c4c881d4875df85a034475c5023003d2fb84cf9cac196bd61c1f1051513dead69d6d28f9e9d676708527d8b6b51bb117a95c9668f534d582b7876be5d2750302047c435bb500683066023100aaafaa3b02c719f9d9bfc2be6db74371d6321acdc5dd22e71250b033b5e351882bf1d3beb3f911d367a64f9ea6b87c21023100fa3e5ec6722d41c84a9782b1316abba4f10b32aeb19b3efb1e58bba3a244b072eebe47cb6529488f09d4bcde9a1ed0700302047c435bb500683066023100cce150b69577e775f5973f64950d1547985a5ebe7fe588b3b4fb5f80ff9b3fa15a622880e480255e6667be741303a1f2023100ae5e081b879ccb3ed6a4dfca523c0d6e34b056d10c081c4ce685b935185197267596d7189263537d4ef3fe8ec59d261d0302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50067306502305b15b9d02ccc4341d3f86e3ab57caa251ade55305ba4f91f72c4024f5b28d2cf3d821ba80bad2871c9a0a6a435794dcc023100aefb2956bb3cf4213eb42cce6834d1aff8d7b87fae7795346f0543759e222526b0573d2fb0d8493a9a914fec4804711c0302047c435bb5006630640230565ff834b33e7b4448857f4938e378ce663f6ca822fe78958c65f50ca7ec15dfec32703d5ecff80050ed71bce6bda02f02307a526a1323abc7b958f46a5f973d81d8109d2153201bda4509623d19205e95efc86eaa730e97a913939b0a4b46abcff30302047c435bb50068306602310096cf70d543ceb48cec2dfe915dbbd43758fe1dc13e15c6405f7d7a1b51e94af46ca29058ef65285b75daab835d0eb5a7023100ca84a9f73987503f2976e7323b8411da03a9b1140c099f549c305d2cdeba3b75b7833cb3f93765c855806efe6a4d891d0302047c435bb500673065023100c5c61f92904f9a98188225e3ab8fa6a912036faa63c519bdf2afc540dd4dccbb66329bcfaf7a5a25c901e60af34df7f7023011637a377011b69d510dc98cc05cccb37a4f871f26c8a30891c1e666b6dbb45c92f9ed42e9bbeaa47760857999df59500302047c435bb500683066023100aa96e69f85b4c2431465937ab12e8842ccdf2fc463b72bfcfadf5b06acd9c199444700fa97326bc124bbab665bc6271f023100efbe772ac45216027f680daf726d2d476a48e625238d796026490e464dcf98dd4d15b11c97b17466bcdedc880352d3fb0302047c435bb50066306402304bcadc5c805417fc26886cbaffdd00a43fa042e826bad2159a59d8ed3d01493896e0068746b5b41249295d7f42819bf402302f68b442c3d35d33aade49264c5449ce879bde8820957b30dcdba29a78f1eb5c2caa9fd75ef8dbfc368f34a3e6efb1850302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500683066023100eb6e96663b8aa4306e738760ff56ad13a1bddd46919382f357b212a2ef02819f4739125d72bc9a100b00a76da414bc120231008b3b88c24c1121ff0f3b6e2b647d9396336581492b4b47cd474dcd7f25fa77e60a14514274a794d633d707eddfa5c3910302047c435bb5006630640230547077849b8f711e1ad0a4aa20cc10dc7898d7d3f9517bc72a336cca12324bf546447ab68869ebce8ef7f455c6b97a4d02303453516a7b75174140676e3be0757990fd743c2e9021d5917d9b9e8da5ab42092bfe29085304d7deefcc505247b21c0a0302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb50067306502306cd5d22ceb106e385ff34d4d6ed4a4e59cb5f4a32f6880d70475c53619b8ee980a1f61447d0270656cebef340320f04d023100e2716748e9590cbd240699d47a559899f65cfb34a775305c06b7d4567b3bc1c566d07c02e2a4f44f95f47034038afea00302047c435bb500663064023061c3394647d6dd6efeb8e13e7b7e67f04be1400fc2db282c730b422fd158ad8858274ae7fc5807d0497ebb853102486b02303e5dd64b769ab47ed5fba1a42c7e94c040981a3faf5153416404e4b96b0a1e755c5d6206ccd04aee0e8f6a919d67205f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e81f040ca6e53dbc554c2cc7bb2acb467ca34ad140f7107381cc5fa9d255116ba2c9cce2b7848a03ba2b425d810e98f2023038159641298a5d03652a52289d05335742c27534f6d7433762369ea29c03f227756cfd2693c8a322e6aca6493a9fb3ed0302047c435bb500673065023100e3e67fcac41b73fc4467275745db2b91b8593fd25e0d4bb3f8ec2a45584d14c5637beab8db007c0927bbc0fecd607b92023051718a07e2d3b210f7a7b4623501e482b08527a944f84cd0c61e766bbb30b786259275643c4cec7aa0a42cd098b777db0302047c435bb500673065023100cb2146dc957a4068d7e45b0203d59840d021782e6f73fcdaa80ea51d493f0f68391f343b9d8b7d5f4532394dd2410d8f02306945ccb9ace2190fb5a27f572c747655808d50aeeeb9a73f1abe7e4156f5ab7ff3e74dd767e7e7b783ed396bda39e1ad0302047c435bb500663064023007b5f6f8c7cf9ec25472de56f792ac22db816c4dc4cda39a5e9f3f0d57ee4986c5fde5068d420597c2b22e1624530b310230253448a13d6a19534d52e13f08b79dd4a812b4be5a683547c007810e57a13af2bc436a3e966633fbfc620f1444383b7a0302047c435bb500673065023010eda85906b302dafd10aa5f1dcebc03bb8044508638d10d5ab25df423123698f79bd8bb0ca7cbea09d0c6a06af12a7b023100c452f68ce64265324a3b4b0c61352f7e78fd3601e47e35ae3505b05f7cdbf94b5d819ca22b942b9250d14e81eec828c10302047c435bb500663064023002e22d57bae6865ce906102cdb2883caf987a3a1c5eca3d2eccd51ed019b8eb4f671b301497069d7a59e4841bf15948602305367d2db8e367a820e3dfd0f8f4a446d3fa3794961b239df184b4556c5202e885cc3ebb81ebc27ad4ec552f8bf55dc2e0302047c435bb50066306402305c6c386dba18205d34b359743f382c1cd73e92eecea3735dcd251072af6adde079c116db765540e5a9ec69fbf2cd0df202303b70df2e85f60fb3a39ac62bc23c3f5c16c700efbfb757cb4bdb771d733bf1682801d64debe4d16ffd7ef96945b007380302047c435bb500673065023100a4b044fda289cbe45c90b6bda7916d7df072e2864ad276c251e7bb20f5d2131f35490e53af4148a285abffd32a03e2dd02301dbd9d354b33fe08f8a9d5c558bd29fc1bf8b6b205608a6d35c806b506065468b71aaae9ae2c96d31c704539b3a8b9700302047c435bb50067306502305e3ae5111137826af3f6cfde71516789adb859db7690650bca5801a90ebcfc15d5ed3b23933c7a1c740fdd24f8cd29350231009cef4a41afe4c5cd4839ee91cf71eff0597eab06d35d7a1650f6aa7c22738f0347cc21381854403f5613483a53c08daa0302047c435bb50066306402307d1cfe12c8997734b7e83b6afeb9bd8f6e97b1b9f3c3f0c7589f1bdde18babba81a0a4b6a1a5407e406bc4bd483601a5023066d5aee97b3c783ddaea1f3dea5124a703df7bcaf72e060c6071ffde7aa23d367a874a1878fc273140b13ed85998d20b0302047c435bb50066306402302be889593c64983c6aed08662fe09137d3699fad24fc6942715072824bfe6abc672b0d1246d1b07948aba5f99d31d3db02304b40862ce577cd05b21290bb442b904d95224f9be269efd1b40a2ca6a770ad92e411ce57ad5b110dcf67a5ba2ef60daa0302047c435bb500663064023030a4233048330d4df32f961e63fbb7d7da5e424db116a4e38220c9bbb1c24265f6e7fafa6e9e39fc749540a62fd9009902305e4d98003cdbf087bd78b7a3b83100191cb56905d75350d2612d2fdc353ac3fed49cc79b49eebd0618102e7d0b75644e0302047c435bb50066306402301023620a774c33a2358d4f0d480316c6f91ec2e77e5c7ad6820f89c02ae15cd697e2b871c3517da5858311b689674ba1023076dc05e47d271ce04d2f54dd76f3a8f50d24527c3e3601d85c296d7b5e54942701c3ef0ad64d0fefec4c5dcd97b8832c0302047c435bb5006730650230078e9e0d339cb9d64a6f1a9bf240383063cbb9f6a19791d4ec186ced3c63cdb4c5ddadde6f64d651006e5c664aa9a9d1023100d754fff1a11a829f7812be49397bbb131d659da480c1323636996209289a1cd3b5e882b34437b7e4165e25505f1077bc0302047c435bb500683066023100d99b9a09827c86d733a78a0da9a8240d210f299414ea61a57835ccdbde24f4b98174a43e8fa20dbca36c18511262e2bb023100da5f963e2a8ffef9a8bd50d8baede029ffb18587955c5115906a39adddac3cca8a3ef60a9ab2d3714ef9c7f708f28fbe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e64f7fc7e11f20a705157c452d13ef5c9a50f54a47db6f2cccc2e8b525ff1687d6fad9b53afd6e7f7b84f6fdeb37ef4802300b6541d5f7906a223bb6f2143939a08e57eff22acd1c7f2c1d8463a02f5c4b267b58930ab8285e87aaf0a3f08f1a2f330302047c435bb500673065023055f0a6a8cdd030d4f9f9b9ce1db07abd465dccc7b6089e36043d6c9a7ab843b40fe043993a717ae55d434d11c1be7cf3023100aee18d7b1c7fc302d19187a144c575ccc42df58a47fd01cc55ffd7a73f5fa44b350a14b42ba148ed98774526acb04a0c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230347e844f6121e2c9346b6752f9516ede8632a87721fc8eb6418a92bfd84eaaf9593387e9faac6882a6ba6ae2fb895f9402307de90bbe5f94a68072494c162b40b5f4eee08a7ab3802427e11dab978552517ef8adafc63edae59cb15a68c670479e170302047c435bb5006730650230245ed0274859add8df18a4f5df12a1b4781db7761069471ce103e1086e789cc50ae572650faf7ad24aa579d201041913023100b83f0ceed95cd49e5945be31db2bdca9aa888d529db70c71e67e3b0bc7c72097535fa89998a23904e9f111c8df2d3cea0302047c435bb500683066023100ab56d27bd1c052178574534901ef5520128f1104be188906538be2e1eedc1804018feeeec840db2dbba4d4fe8ab0aa60023100a031ca80b9fa8408958f758287777905c363478f1689f8285e8beba79d199abd2d482f5832f337507b18c994056d0f780302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb5006630640230675f4b5e4fc33c4882d945d88a65d84a1ddb5ec6c172bd5df4938877d5b678a4f4973e55f5f077412e469ea8a5b6b00e0230372b45aafe8bbcd40ca6d455ba4cf657137284844daa1c2eb0d331c3fe739f3d1d9071c38a860370a09fdb5a9a4afde20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d7f97118784510400777f66827ca1c92e478a1d6c67ec5b6b805a9b677bb68c8c29050fbce4e2552fea69aa09749495102300c02e1610344ff030010262602f1235273076c3b0ae94517c8bb3bfa77f34d730cb796be3d0aeceda6a0f95fa3aebbba0302047c435bb5006730650230403638e51f418a328a1693277ef1d24101589b9f1366b1c0896bd8b7b4ab4acd0684fa3a69d8ff6d07f67274d6be289102310094f8bb2c93025f96dce09978987588d7bb9ac1a23a5f8c06c9093919c0ce4d41adfa822752635509da271e2a40a9aafa0302047c435bb500673065023100b54fd261c7c41179f89788b4b1c3b6793339e91a943f76c09c922f272ebe7dee00c34c16a66e4d4aae42c1e17e8c7bb40230187ce6bd042f63c8b355817fd9ec44e26751abd663a0abec518291aeb995e1f7ba278fb6823604b4c281a684f78a48670302047c435bb50067306502305724e99dc2191cb0466fd462f3fbf19736bd700f2381b34330e8ca3e619083b58ad746a29c62c7055bfabd8b7fc78c7d0231009a81c7315337ce48263d4f48490557df8db671359835986e2c680f725aa772954b37c88e3b36bf63a9ce9c1ae798fe900302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb500663064023043533c51857cc6141b828fd7f00db947ee73cddcdbaff7844082c30a1e9ef0827d64a06c43709af25ea56cb9cc52ab2402305e1477797aa3f1ec951fb9b1f4facc936986732ab557f733e7a061cce79865a6c5bd8f1f3505a56967fd1d4be55b12a60302047c435bb5006630640230268d2aa672982b97d1380d1e9c68a29ed9ec4443f3c97aff1f138964075435d2327ac09fb8c8958e6752eed0c2eb7f9902300e1beeb9f1a7a97868ebdd143f28e7f41c5d6df06ff806bf258d54d3d9b70eee4bdf0886ef18812618b0cf27734453bc0302047c435bb50067306502307e83495b5ffed56889482cee8936a317bf2d78f13ebb7e2c03025ba97dab1b910b40cb4008671ce2058d7ac00ae7dc4f023100fdef055e54577446dab9bbbb9c1697c08a6a50175142540ca348c5d13c0b93bda75fdec87f7b00a35e7af3bd8a5026410302047c435bb500683066023100b156c1f9c6eb40775ad3eaf3826cd42dca67d4453490a69a781a85acb4a5d0936faddce7e996b954c07711ea51740590023100ffb61e0d868374fd600efaa24d3248c43f3991b6d78939eb7e5f6f3195924de50abe5827a6eae7985fa1ffed2a8470740302047c435bb500673065023100fe4e6379cd093f717cc99c80987fde38d7cc9253030e3775204b8ee238b20c6e73b55ad8f110ab8c1ff5f4ecb16f6d3802302c807fc25aad20641c1a568c49277f09e361acad588e4dedbf69c2cc81ae53c2db61bd5396f63302d98a198fd5e99c2d0302047c435bb500673065023100b3cea1b245106296c383d2d6cc911f677100611d91218b03ae954620c41311718c73f8cbf1a59baa9a1f4e3050a4b4f202303dbc542a2c6ec346cd6d989676bdaaa2926b84a65f8305ca61453abe7b69c5a361909aacb92c47797b818a8c99f1d5c70302047c435bb5006730650231008adba03d9da7268ea42141a9a4d1e363a8ce0bf4bbfeebd4e6d20495b0b345065731f1d764106027816358d9011885ae0230261822d8cfc92b83a34bc2083a08cb61c47c87bab707a96af2c963d55b279db31f5697c7d8097638e26ee9627b3600f60302047c435bb500663064023014f9da8bd475549755a1f73d4c7ff5f1bab6fa32b49db045b8eea8bd7ece673c8d6868cd13c99757b5ae8a25d3452dc9023041a6b3623fbb3d07d28428ff8d852bb144531213830b5d9a32a20e648f2f73b2934ad43c55c74cadf76307b7eef4bb620302047c435bb500673065023100cac0cccbf7dc045f76bc7fe179028e7f86ed310eb5642ca154482869f2a6892ca4617dc12475c12442105e7f8524112902302c856c1a97c1ee8c7018709a24af6ba9bdc85a1088806f37649b39b847a1d3db29cc4ec111f154b8b9637a58f7c7ed770302047c435bb500673065023100ee9f21a317ae2e174464826d56e72532572dcadaf11c62c4ae39bdc1b3a8a38ec331539434ac54a828b0b6465cce98610230358e795e2e60220fb524f8a416c24d285c5913da40435924a6d976fe2cd3c6fd4a491155d0501fbac6d76990d653f7f10302047c435bb500683066023100dd4cccd9e455adc1d58772f620f83eb38842870f2263c01d14d75794c238a2d18c278179598eb00029645b31a49385df023100cd92c9a6407ac6dbe827f507ae5d73ac98228b9885f172b61d4424f4b15d32854136ec63cfb4023705ad97b2113d9cdb0302047c435bb50066306402304d2193e4501b6241a60a95230d0ac1ddc8511cc500e7eb8506c37ef086e78a023915a7989a61badb0ff8e769a55fce690230750b35cd98aef5a6ca53a9d6cab9ed4e717a3e7b46a2a7562ad3534226de47b3fc2d6019e416babc9e40920e8e097d300302047c435bb50067306502301fca8080db2d9e5969c3277a059eeb5394c6b0b31a2e4aa4dbe4ad8fa97a2bd3e08a7213ded0900744c91b1e5202062402310081d0480fd7309bd9da55d49bd54f945180589e77f1aa19b680cddc9a63a4563d125ec435aa2c79f8f6f0157631ef21210302047c435bb50066306402306b5fb68d62bf7e63ed6b92faaaa3f2a1e1542743d550615fad6f258c4e275eb938466c11e5a3c81629cb79a2f772f7b3023076231a47a3eed7c138c27ff73ffb9a0cc960bbaebb7dcb4e9f076dee4e97ed3616fdcdc4ab22a9c9c7b11523ff0580390302047c435bb500673065023100de96908964cd9d5ddefe498d7901990258e850e265c44bb0c6d88c3ab3cf481be98754cf7d641c2abe6e214e704cd67002303b6d120ed39b6ba4224e69bfbdf89ed81a40ad431080b80597971f3edcce7bcb323881e672c775c34571a40d6410720f0302047c435bb50067306502302364c0289a4af1b9ba2ae6ca9b435c68e87071f096b19eb29c9aa6e315b9eb164b77f6b682b11f7371bf0001316ceed6023100c4fcfab0ea49cc6b5cced993c46a8a482fe6234d809b1201acb9d1ceb9d442744690f5bcb875e318530b7b060e2e40f70302047c435bb50067306502300df60a96a5d4f26b702e3331d319a422b10efbfdc1226027633536619506cd16069c5e8bdf42be8700628f8786e439a0023100a7e00594d30b49154480b7b43f8a245cdf5b9667597214574ffe745e7ad68cd327341ec7a9ff28e8c5e094e87ca301fb0302047c435bb500663064023047823f1fde23716ef21052fb32ecf3939e0bb9e1ee8d14df89a987be3c31818ca3ea613399ff3f44938127eff229c15a023071f56838b6a1e852ea8f03ef48bd1dca6468e38b569299e3f7e4c54ff67399cddc39c1af3a6485f2d8d11fe75c7e9f0d0302047c435bb50067306502300d5f88e7a1c1309e9fb23bef27be0834fb54e8a597e6626e027d50663d3e131116fe7b1c4bde8efad1dfd7df2b65df3302310099df0b0f97be60c5813a66f59af08e200917dd3930e52cadeb33830902732d6a2f53c7558a716fd6a90209009f22a3bd0302047c435bb50067306502310084243b6247c54b9e02791b44f3e0f30a75a3b5b10da73555b11ec135de539510552c57720a10bb4a069510d4e1aa7a96023003bce67f0568167b4ba698d948d87dc96518cf1b39192fcdf5d17f1f7d33b377f7ae5ac1c0e04a8b1a1f4bcda26235b50302047c435bb500673065023100f253cd8c777c32490510f79afb003d83151a68e749ba4e53d5bbf79bfaae4301782340636fb9452c234091b0887ce1300230280d0fbdafc27fc805c0cf442ed275f44e2f703046edb1d68399bac81cdd744a4854ca1914ce7092018ebcd11d63b16d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f21e1eefb80d264c03230f521933af9ceb4aa0a2526c7b2ffa1c72c92aaab0ec9d2d6bc15cda31bb360acff08ff4903e02310081051768d8a669e71d4616879d20ac27801e636148ff704be62a5baf51b2cc537e46606d9dce72b4709ea9176be6a9fb0302047c435bb500673065023007d326d2f12dd2bd97082a959070cca4ae8a793a08aa0ecf171d0d975967120fbf78638ab02a6e146d2da021d5397737023100d036f0ae2bd924d62014caefd345a5601cf3aa3b2ce48037e535c881ba03ff7653d3c2a863e2ab4446379562f7f0a3d20302047c435bb500663064023014472d5e639d60777c6a817bc6b443ec8a52161c9576bbb35e1242f7698f8d8e6797eb28f1adedc5a0eb67530a5aa3dc023036d36761af9c6be8bf1795db2780cd3e2055949a4a92e6c4c0b2431d19cb40b76784834b8ca33da41433d53cf19bc59c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307f58903e54ec51278d1e5c1a1d688f017f03fe098a4631cac242f27140fc2eafad0f150e81de3458b1c7e127213156a002307ecf2608385ff84a75ca8836cccb36b1b0fe2d5e9584d91feef2b1cdf62ad8a9854b20f87110192a68f7719270d071b30302047c435bb500673065023100aef6c092fa7f41eea87b7a76d08a0e3776694886189892ba0d667619e4cea0468c30a08f8669b1a88bcf1c1155af38c9023002d6af92748389e6b7266c351370cb1e9eecd911e4848eb13d87f99eb1771b152e785a3db05683de16518e11994fa71d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304b1da2513af3893730daee97d6f525c2e12b096e8fe6da1b2c12fbd78557f6290efbe612fc31f52966029832888f53be023006c2e5415c2987aab87d7cd5ff59f8b67d319feaa72e09a9dfb3c5b479e08f608ebb69df0cc637e89b9bcca3245700a00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023061630c340a2179f8cefb6686cdcef4fba22b26a4118f6b9f4e1c4dde76e383abee3d9e3bd9cd70fd17e28d011e9032d4023100e39aa71c74887fb3416cc0f82bb172a17da851794e54e6aedae7b7b6f5ed9315516cd10b8784a54f68de038206958ce00302047c435bb5006830660231009971f16a9c7cce8126893e94f5c369034aaa99d5e5473a795f726febe9c6579a3a1d3ff8781b1368cc34213338ef1e43023100de379fbaeccbf3e96c1ac06a26dc993371dd105e5fed6443250552cdb79219230a8f2b8596afc909bfb8da3f208759120302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e40634151bc51e699b4e075cb28fa88723e0b7318989f04996848e9aef9fbb892cf123abbac91879e2bfb17be93061ca023100f9adc09762c120ba57a4e680fda656fc27fc1cbdd9049e6c06afa49d1744938d45772ad2283871b845d7d9896c1d911a0302047c435bb500673065023100cb6a4fe97bec53a50e684f25e0bb5640da5fdb893876f7b0dbd1aca5d50c35b7d7d32578b28f30abb3c4f29db356418a02300ac7c08de34587af8de316a7f235042b47436741ad37ce447c6d58a16ebe7a86922d0002359a08822792174151b5b6820302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023059f1956bf9823fbe3ada24c6834a3358fe4f8a823b6cae4b332176e0701d9a2ae024cff93f6b02b7e9a92c61f987b864023078c29d359b549b5f58ba941da2041ef5962793ba1affd62ec28ec3fd7d3687714f79fd6787c16a7cc0b28da096698c910302047c435bb50068306602310092eee2208b18e5873c08ac0761136220da7ea44e7b4f1d5a917bc89038e0f7c39030c911c8ebe7dd940eeabab1f0216a023100ac2a25e8b6b1687738c4715bb028129c93db1c011a7f378ccceaf62de5db5c217894942ac3dd52dde76854481533daa80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008f72c99d7b16d36ee9d8c0ec8a6eed0455022f22e1005cbf5537b4395795205f4475422c43af5e0a1e0307a875aaf9000230188d3cdace036443625aa5fbd1e1423eee45a8e3dd262557cfe4a43dd9e78fd592d347c56e9dc78559a832629f8d867f0302047c435bb5006730650230441bdc55638a21bbea11dd28f7ca63c284290d8f85f22155a39c728dedd9651f57af9e5cf42f82c2171e7a46054037a202310099632393e92c7a5b94703a22e96adc2aa1c804c47714d5f06c005551da0de415ad731b6ef1d218e8481bf976cb0d0a7e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023077b15469a64f00937dff2587e9cac62d81c919838bceeceb9aa1f6081380b4824936494b7f41c87afc4ecbc497d130fc02306e93b26b0a96814d3640f8a52f6fb89e2dc64982b4ab54d17ce922fb90daceafe1aeabf02c721cd66216d8bc02bc961b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307777658f70938092d275e25d0560e597fa5746857dc5c55c0ddd66d68a9a5f4c60da5304ba7caeb7b98de353c9abe83502305b4e529c19572832af1471eb92b22244c4ab4ba0947641bd6939f5df6fe1361574a8a07d21a7e7ce94d5400098d1886b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305d852fd002cb4128af8e64174e39bd319144b0caca6a21438f898cc4632a73c9364965efa1ec06b16dbaa9952d10072e0231008c0fd0eae57e9e5abe271f397376506dd9d4761dbef108ca757a0f03c5a2f0fcafdddce1609cc4817440c98cd2653ef30302047c435bb50067306502304035d7666025e86bfbf471b218f262f89c16cab4103de4426d9f5c0a7c13ce0f834fd179c5b54f2d70f2a36e82b96a66023100ed86d0ba40445f32bac9bd7fd301cbcc7db5b116b35a77b2af291b264bf7b159da2153b877843859e93b2a31186b2c600302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a2371454e733734ea83fa1ef7827a21a1cf1a242824ae35fa60b6c35678900836b36a396b79ab5c429bea898e457bd02023100d833c52559fb529702896362bcd2f76bc243da8592001b424e3e4211db5ecb71789ecb1e0d167056044929229c72e2740302047c435bb50068306602310096445c1b94b530221131f007af2b05196cb359b64da60c2af7274709fc4f37be7a22f728f23b052917632d092ed44751023100cc9ca363d61e287dc439736017bc74302aa8d7fb1a8190a5170a381145363846473fe2ee74ed316f0340b97848d2470a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306ed0c49f203f8db9f5e2e5f88537706dadda74741718ede641e083e5d728802cd6eff7d0bbafa5ff8a178fd15272d26a023027861b7dcbd2d009f76a4acc77d13f46c7c3d2121446fe77cd2484a5f3d85e668749300b928e033fd6c6e97a7f4f88240302047c435bb5006630640230194df28901997f0bd5f579961161c936009a55f27b7534f481425bc55e76008bbb2abbdf364c17b5f1fd0db3329e9df60230366f14c58d945df4e43e876dc7b50714a6fcd76824dfea6f157124fea8ee79f0facc559477797c5deabd36744c8be7d10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302d5096b30f29aa7fc83412cdbd38cd5b83224a345dec79409b316654539874bddc4c0048ffca3535572b30d7525222be023100d2a7d8be1d8d21aefbc4a8f4faefa0c5137c90012e832bee30ee7213e376986ecbf191cd3b3c247a1d9c4aed1374a7f90302047c435bb500673065023028f39fa57989530c8689d9a39406a570d264b8738af3e50663f50fb9791366bb87e2036c18097276b0133d862e9dc40a0231008a3914784cbc8421fa9f2b781cca364ef87920ebf3525c6f31833a4f00bb92823dde39cb1d4ff00a29c91c4661b14d110302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cc4e4aaeedaf584e175f7c56de6eac8acfe7fd4b041a6802ecb82df49e23d11058b50f0e790bc6bfbfc61210d39c473a023100d2ea0b0715ecebd21485842c76d555efe8c14d353ff177b13d61548aa3ff99b36daec615ffb93a09fdc30a540d1df3380302047c435bb50066306402306d13b4573e499c761b999c00f5a79d3c8eef9512685ae4b017acc5648c06844c0afe9aa20ffcec1b11d343bd493629a3023025107c73fee1b52b52a4647a416620b3dae9932398829bee28c8597fc89f0b311ed445ed481cfa537fad6e6da93367460302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023037a65d00b01c6830f96e182598f1b89f1be4dc620dfbdd492431d1fb2d912d91c26aa3662be09984be70e2c0e4863371023100c6929427cf1ec153fdde915903105ba19235786f943c60e5777ee54c4cdacbf154c74457d806dd170aa4d982ddc08a4f0302047c435bb50067306502303936416bbe4156a773b05a9464b11adf5e6a903f7c20e9d30671a42e7d667385b8f58b9c53b45628795725d32ae2ad40023100a660253292afc2865a00cf0925b5cd08f71eecd95164a9052ba585f7fbfaed3d14fd7571afc239d341d2d542f348e21b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303e12cd4eba27245fdfc2ce503964c648ef9db4e2c48cee095ac0c86396741b5a664b511c5deb934720bff68090d2f0aa02301d00f193c13fa4f352b714cffd535633828fb4eed146dede35f1620b462768858680fed6e22052df2ecd99a1045997ab0302047c435bb500673065023044bd9b1581d06ac487c6f15a6308debd07a3e4e563ba9ff0e56e43c09f32b7ab86d8e6929ccecfaeb295cb7f025631d7023100d7a8536070dc7ffd3921b8b6f84eb6923f48af4aec5cb29745d028cbf5563812755f3cf773b72f719c805eec4b1d599a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310080e1c46cb4b3b845f307ef2fe8210dc784a8f0c4d6bab3dfbaa35c5049987245ac311f453b56e0a81d4f25436484bd30023100eb55d0f9e2c2eef896793bf98642c65cd4608980fe6ffce5ae5f35459d1488c7054ba10bb0873fc61d826a0d3fd294970302047c435bb50066306402300c2ca0a58a561185b71de58a4922f1b35dd0ef2544fb848a071857e4ae38c4ee899a47e71de57dcfa80bb4b8b51d3b690230545a271c96c1a38930e65f5de0a4db15f7635b92cd402a8e530537e24d21e37c457c74cb949b7ad99fe12da535f0e0250302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c1998334a4431baee5afcb0607a53d1987a943edff7613bf4090f20309e3f9044d88a2f2cde02accebcf1c9e9df7959b0231009e5f0fe7a8aefb9a3550746318b843a77a9d3ece8758fa5964a5b39675e14de432862c26ca07350e3bddac91a0d00f140302047c435bb500673065023100b097b13edb0ae25468bcf5d2bba0a54601c7ebc8a579b550d9e949cc949902bdb989a74534b7675cc61612ea438095630230398637359db20b4e59c65ab1ef29e6b02ede246c160f88dbe90e835df3f34e9bbdc239454a5ed790be3eb3e39707b29b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009d2d90d10ca556569f75ead0e957cfdb6634ec9d10c7d8405ec5e723489074e0795756a8e4755bc3cfaa6fcd7d29af1e02310083a99e70232adca9bb9bd7388fa9a5f35a43524985c4b7d54cccf2d057979602fa3dd0cc528b6a14d99dfc191bd75c580302047c435bb500663064023006315e9c2ec74e53a08abf04ffca020a79461c04d0b5dc36a461138f115ecc9883a644fa781af44401766616ce6bf95102306e59800e193e210e57e3e2771872e0052990f7281c77444ff77235726c4108499e3ac724d37f980231f68a5a267c2c9f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307d6cae761dc0d0b9cf08834af8d324f22c7fcf3c942651746a7e265d2dc85bc68737ce17966079ad9bd8ee5b48a9601c023002491d0bf60439bfcf5fa0e9b7a884030c4b7d65841081cec710521d2b02f0aca15d688094840acd07301207cf7e66800302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b2e2a6dadd2988fb09b1badbf048d9a1cd7c33398e8db09a9e4c9dc63f2d7cd96bbb5154b95a60ee1274b3c68fdabe2a023100ed1391d8b7f2aa8f5f1546edd6ddefc5617b1301d05b6f691520fefe59674fd3a32754e45723dc616ece6964566e066c0302047c435bb500663064023074b4bdbafa741272dc38719cda9eeddd08bdc31dfb020bc79ae4741f1f145814053efad77f8e77da656c437c53898586023065e30112607fa025c736138b1640f30daa66e7b1e62305f5fb1a461dc55853b9a1d113c4b5be3e62457f68d94002bd6b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300ddae157623ea7f097140b7578f7154f568b592ad573879fd614b151da7b0127590756754b3bb72761cda70bbbc42a9502300a8b71c5d46ee633e06ff8042f4b9c9a110f893cfa456502c352c679c6403731abf7ccbf45abfcb8838723aedfcac2ff0302047c435bb500683066023100cd8a6482f49ee1d4723b4c0d7a3f4a88c13b19d3a6f1fa6f9c7d5d8dd50154745e1732ed4ccdd507e62b6e3c027fe3ec023100dbcf338edbb38809cbd1f96addf9c9e28f4346f4815d956f88ec466c31c49bde74c42c1d3986754ef4b99f2fa907159b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e50c4fa809b22b47d839abf96b9def5b3629e2fac53b06fd127977afeca8c35e46fdc91278627e3348ebc42fc95ca6b6023027381847ecf673ef25d7a05e483381222b6499816a39ae39dced339bdfe52a78d9a32001bbeb484b072ee5320a6559180302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009ff24c704775069ca555f27a52f8cf646b74ba9a32d3fd8dc01b73a43d1e780fb77f7312c620f2e2f59777ed11e2c4ae023100cbb607575cb5edf4e4419fb5fea778749cf18e826476ef143eb0f3149ad29bd081a0d7068da4070a1346b2ee7e0db9ef0302047c435bb500673065023100d772b6f83d076f20b3bce7e5fdb4a1bef67f4a064d94ec1a8924b76fa0012f1c207c435699c3da12c0ed56c925591e580230449540bf7355e8065d1f9b5f1e3651ce9b831aea8d3c186fc000f5740e9ceb0b27f9327a71d538f1342bd0b8fc226e870302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303c31d646206b07f26f117a8e3ecbb4473c68ff6d84163e3ae30a5f92e7eb4c4a6246a4f8bb37078cd862af3962f1c45b02301346d5fc7a6ae60ae67436b11b9f897ffd3281bb933454b431507f5e7bc179d3cc08a5e8664570dfea80d1537751a9130302047c435bb5006630640230150f8e53a7572a99eb19ba4bff1e486551cb993a66fd14fff9a4082167f95f141ab68647fa18c2791415763981d8cfe2023046976d414209b23eb387836fe2c0164d570407114b9957d8b2038e99421441d3feb4557cf816f70bc171b6862e91994d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230596b0c1c3b0989ac71f65a6689d92b1f4151d0965b09d177ec6501886eecb5a652858880c403e40ce944166d84b9ded0023100a8c72bcfef3869ce6fb5ff45a775115cc102db07b3cc6e0c56e60dd6c83c2ba61043d52ca7cc4183fd772fbac971f2a40302047c435bb5006730650230201fc002522f52e1df1450f31e7e8583e7469f057cf863185c5cbc7b80102ac0cb72f9658ffee400a07c2f5c7221ae420231008785226a2a10ba5f340bdbca2250db7c892e22ebf1ea562821d9ee6d0e009c64ecb543755f00ebe08aa2fb76dae82ea70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304c647c092423fd95d398957df4b90451b26018e32cce254f517725841b0949f244156f55a34104cea13fb94f2a484f00023100da973d6ccbf3b1077aebe71f1ee86075d6a18a665e6d3a9e0081c9b8e7b21de404bc5935d6a77ddbcdcd11ee1a7673830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301c887316d53a6178efd6403ff6967ecec66fa40fc0ea6866714fb298b454d5d6cd50771faa8ee8b19cdaa2e786553722023050f54d9de9ecb7b6e25a5a9d49a7491b3f6776f8778c0434b2ff35eae7cf46a0f588c8a129da4c1541676e4aad1cd78a0302047c435bb5006730650230159170968b07cd2009847c3d3f0e4bbd85b0319f5d364a04a2e53f7c00bd1996092f10d3eaeaa1ad09b4b20acf70ebec023100c8825f2ae71bde094dc46fe166b93fb4758d93d33ce7151f106eaa21760ee1f6782793ecd529c12018898fc45a4dbe5f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cb0bb106686cb30f8020cbb1ad651fab6a876c280b3c2a71b26bd0c1b6b47867d6576b6bdd23f334733e78135614341b0231009ba29868a1ddcac6b09e719614a6d933b9a94a2d769d171fc2850863a614579f17a97df1dc25be06423b1ce60798c7eb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303dcd5d94b74c46302aff59eb1350f432a9386e948b7cebde743dca0824f15f68d5d25badd177bdbf3604618d2f45002502307912cc44bf06a947e99874f5824e455b9a5c335f5dc161c0957704d08bb1f21835ff9740922204ed326c5f912379878f0302047c435bb500673065023001d3caebd78b2ae0524c48af344944f9f3b9168e4d1c4f052c717c5307499434d8044b4a0456a961ce2d2aa385c3190e0231008d153ec3a33a8f702a1b59456b113f0a8b3ccfbfe396231dcab0b36efd24351c9825717be945a6574357d760fc1373400302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023070d86a4dd343720c6fc54ecccbaf1f127e38352e40ccb313195a08e6ff54ed5d4ff40d090272559aaa47adf48ffc4b3e02304c76885a91450cad13affc049d4576670dc9eb46d3f033a9a89df3937e3bb15e3a2724fbb6173e0b9398f5640b9167360302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100aea06978e7075ec1902e91fefb7ff1741855e5737b77f88e4b7cf0f05b56979fe48fe852adc95f342eef39dfa7376d22023034be73417d5b3b32e9899fa1db31a5df763f2cd726f1d2e6f9e3f11a9e3b83d5f4e569b321967555c7a4754cecdb485e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301a0584e3fad0d8ca42abb510bd746e13bc373afb85d2710dac1ea410f8fb2f0e908fb45742247ddbcc1bdaae05920492023100d96d1d39bf5c396e0231e23e9364bf588e956e86a69f765c34e6e1d428f3d3e48a732ee759f50418ae45ed02c7bc32890302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100825ab9f8e3add13fe77f2bd37a7a7997bbe8e940530f6a1cb714409f0ccd2cafcc9c69adb44a2ecda406e09ba6a941940230155e47069a0c46cdb6c8e399b8ab52e77dc70efea791b55d7d6257142a50994369dcd4fd478c56366fbf9e3d7074ae0e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e62a9c575366c1ee71a74ee51970ad86cdfca684c61a0109440fc1f9434ed2232b5c298f38288cb6515259455322443f023015346e7fd5baeb3424e9f683d43ac3bb529735ec7b7bcade1e3c5b5417fcac6672ee78ac176dd960a0c21fcb1103dd6e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100af02b6abfe22a894424595dfcf8d7b9b88b4fd84fb72ad2d49d264a0de295ccc27e486ab0186feee36dd5cb667c0d300023057031186ad7ed6f69ce7f79ed02918361d867650704ee228addc7378522b087a6dfc58d6a2c64c2fe5e025233749c7a50302047c435bb5006730650230018aaece0c9e16e7679d9dd837294ee1ab2e7f3b7a3a6577d6f46278cd894d55990330cf1d910edea4a9ce708e8db8c3023100b94b695bc827d44c0086f29d3656203e2dea152eda5af2b63b588b570f76ce3e61801fba3004b1263e0d88eb49a4f7e00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ba0da79d66a0cf883f9b6cfd649b1b2b3d77e0ea9122d14f30b4e9aabd42be88e609fc5ec555285aac3ee7c1a2a75a0d023100b9efa85fc3d07ab400dea7cbb26390f6e72b844629cc1521fba8d61d8164dc17decc94324d9a88dcbc91e64dd05ea49b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230096c3280be66e05962cf4e3137f0be6035046cf884cb87f2a3c4aa2df886f0f4cbc444f0b73cbefa309b69474ab0b1ab023100c5a68a5483effda1dc2e0c8facd217c835ea05a3b76a656c8be621ff66a95cc7cfb954bd993ee876b50433dd670e47200302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b3a19de77cd15884567b3f1378dc0655def69196f6770c91229813f5563b89da554e0b327f36906b3f6696a22bec09db0230409b8ccc91d3fc5694ed1c02a1be4e84681fcf1e7138cbf35562600805d331f38560f9e483447c62d028097936e5a5040302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305c1f0a720f67846c95ef8aa4027be1c05567f591e3177a2b5e93fbfb81ce51de00d898c9e633a640fcd0e0b8e75b13bd023100a890f32e0223c91eeb66bd6615b5f2e78b792a27c86197167886657e756d3ff660c7b485cdccb7bb949d64377396348c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230165218f1914fd3f31f54a536a4bfb6f921c8776336da9201820c4e09dff7d9dba413d6bd8565ba65107865facca26462023100a3088a2dcc1ecb53476b5adf001aa8c73f46179d4cff7ada63d3b14d4dd7777eda8669fad4e1da2674b0ad4134b945370302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023017aefc490004f7b00c6db77eaf583000f29e23f75b19ee07e5ae582f17b4b2dd628f552f3046c8659ff7f89b90fb2a81023100a241bf9aa9c43c07ef127fc9ace1a41b628d2f01e58b0e5836c9b3903a8e34b4e5fdfd9a456838c9a0bb649e860230a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230569ad2aee4bf3e550a5e3d4398aa57a7998d9b85139d750f3e5a6784f782111b58f00875ffa6aeebd68a1b1128a5ea8e02301b8d6d1b40dcda31c64bb509b2259a1a109a0430d00d7815a8bc31f3794b7f2c351f24ee1467f595a07d110f949212ec0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ec13da4a1191127b9f9071b64849e00867ffe41d0a604685797b968c11abe34164b5b72ad7f2d02c0571b10142adbf65023100d4577a0efc8bae9271a35971064e9032ef1569a55081ee92c819468809236e0d09f8979d169f43a78dda1ad76ef425930302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023046b40c09f948ac02375dc5807f98d8996c99cb993f0f59e15d744c9e0bf06a167009a304528b4d3c8e4f92922fc72f88023100a95fea777935696740440f9b458a6118634d150898096fa85ac79f96ee7fc54efa3546ff22e3ccd759fdc8cb7e5f4afd0302047c435bb500663064023036e0eb6473f9231008ccf3e2d354a179c7cacbb0201d73061475a888c3f936053c5e131a5d627aaa947bcc593f94527202306bf3a3826fe508835aed5d85e7e83c63ff7515aa2ba70d1d1f4d6908049d7395b98f40c8fbdf674e24da9696b74020310302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023079c051f5f0eb90b2887cc33c415afb7b8e0394c7da647a415e00e4b41856ad136a94de1e4055cffa22a55087e3e6e43d0230451eafcbe25975fd4c5f9093f21e964269175929164dc61799535dcfab1024b3e2177e867580831dd9c8ef968603daa40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a3f78f0964200fe20f176c7f376c4cee9dc87e3d70110749cbe1905acac720dd058ef781822e5a3baee2452699210cd3023100b095ed238ccdc8af9ea0a1e8fd5f1c3a543b0d25783192522b6b420eaa061b9a7dfb5aba6cc07e4c47f50e55910821790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230552c071ed505b4dbe5a62716ffc8553e975ab098ba2ccdfc3abb85482d1fe2d35a0f91fd0afc74109a961d63731d4f7a023100b413ba9397f14436bab78faefff7566e91b75e3d32191ff216fe5a4eee673073cc745e9c3ea0887a023e2d82af7d6b770302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023067df5addb0e99e66f931e7539316769f2b71fa6908f3102e2984abd776d973e2f9fb506a586318326c0089de21ef8470023100e75c3a797f42ed685943d3c8bc1f977cd9a15e66cdb3d9ef7e3fa8290eb4fef9f61d0d563ca7811df75c110ee662e9590302047c435bb500673065023100ddaf326fdb6fa215f6df457fb4edbe0f7537f31b3021bf559fcde78e7e97d52bdf96ac21dfae560883a385980929b047023001e6f89a8b38c0bce37f9068de876e79ac89a5f92cf316b0d8e1c1703addd450f7c021feb4bd4c1bb0ab22533068d8eb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023017eaf6cb4443214b8bdd55e4047e539175b18012767fe320f4cdba755147e40ea18013dc9b54ee6ba247cd409f4a7262023100abd1a2456fbb80b8a3590b9e5bc7f515ef32da45a0bab9fac9d0bd515fa480f13da3c29efabd118de46311a71c8170500302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230667cde1015056298aa122c9dfd486ed12eb32d0f6aa55174042f4fa8e0530adda20b06b39b8ca9183779f7c94dde66b7023100d23fd55c4173d4e1e5c116902e210e87993f505c7cf275d7652ee84267269426a2fb9ee5406f86bbdb35c5ae453dbe260302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303dd00c31ddfd27842ecb6b965698ec69a67f4b204e1d7aa91be37198da479b6314c805c2dd3cbcb5bacf0a1f374329b4023100f2cac5403f3a5c102507aec3efd18edb09cfa0d9897128f3e5aba81921d266256f96e3ea7d545d228161ec1dd06bbebe0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230760ff5eac7b37efd8cc37c11a59e1c441d13c4cd834030dbce02c0f43d02794aa6b4fabc28cab25210eb745697004ff9023100acd3fefba20ecf0cc421b10f25188583fffe3779cab506d32aa6cbad3db6baa63332766a599babca61877c15963f50be0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100eb4d2c7c4a47e76abdecfac51bc5bf086192273b7886d39aaaa164f70b8fa1e985a0b169f53d94fe5ffd4fae69353925023100cb7b7e587334373215fe0899f9069710758895240e8695e82d8c69997969c70fe3fe295cdd1f30b4237fab048af179960302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230223f66836da1def31ceb919a5ffddff97b3b19ac5b54cb2cf91ed1451618678bbf101afd783b147764516e689c2eccfe02303324921c0eb9e815aa1cf689e3a150ebd151fab4b4024861c9ae66f2398d3e69b5653e3eca48f13cde8d4b63e18a91710302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009aaf00b6033324e16e7715ad5c7208aede409634ce6592cd3005c4b88499ba03a7ef81c743d18272ec877a609e8973ae023028dcca8ba3e290ab8c566f75e66daf94f52a1e28b506566adca8386f941c3f612c9503b2f74fb477729353b19d56c1190302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023002dad02149768198d882a81ff0603b2aa6c7b7530256f076c637bfaf8949649e7887bedba8ffc7f2d6f2ba73ab0b22af0231009209a8cfbb025c4f49e5327576f644fdcf7cae6190ba4919db56b5ee2a354021d7ef510808e17d7d64eb9dc00988d5770302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302c72defd8e7aae5178e43fb3f990fb2d8f01b6929e572b9c6d87173fe9c29a69f75e66309b19fe6f7ae0c256e90d249e02301385566564b4d7a578bb9bc9bef937e0025761c8a9da4aaed06fecd6fecc2b9b2d958cda80b3f751183cf823a3e01a320302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023014f3d9440c0bb4915a1995ca5e1eed4188f852c837a426b6940dfc61225e4c8feea561bd930b44f305d1c262103005ae02300f828801db444ab1edd925e82d3fcae11a4a6042ab319fb987f76d449c62c3124c8dc93bf54ed8fe3a546052f9bb92040302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303691578bf6b1b7218b0d7bec962d1468c3ed778b7b4240c06151840354e6c193351761542f25c438a96181610bd6f936023100b79bc781dd46ce89d66b26f137183d4cf08fc8b3786031005b28edf6a93a4cbbf4cb48820dac63f1be2014b11b37f3490302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023055523c2d8a42fbd6545d7836ce1662f015db4762c4b84bb32d146caf508b98c2b68ecdaf321a4f63db2dd203a082786f0230707c87a9a1391afe73ce2e2e46040e31072285eed61aa3e4dfce2b4f6948142c11ccfc6096dce00dde36b3313abe9f2b0302047c435bb500673065023100e6f10edcafd1761e57a2bc4558d802254b2558403647a881df43cb33b012fc7b5e6b40f52aaad087064dc5489f946e660230409eeb7c2d5f08bf3f739d1a5ffc4dcec0cc54ec0b53a5c4a370929a0fe8ddad640942099a7d5ccc66b1663f8c7f0fa10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e1bf877e39e960d82718851167dca8547a0f7227ef0c1acfb7d549bc718cc507024b0da41b5707825c7f8b4279e168b302302682de57624816f769467236fdf571fccc27ddccac994698f9de697015b465b11b98be7367dedd7da8691995d26bf77a0302047c435bb50067306502307a25a809437c6dc73b59ef5d6f3f0f2eec5b103da845519ab2aa97cfde45096cd6dc70df5ee54727e95ca7d7ce08289202310088c50fc577f356500591eecc285f79d27851f3d9e796e5cdd60bf7c645ba8ad49977d9313dfcaa7bbf1a73202621bbba0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100accdce9d69a7f616adc0faf4660b73e31627383b543332119221617ff461c3003af160b806aeb47c6a5d946e69bf46f8023011b0027a53e7affa18d9c06c09a55abcbacf67a0012cc7aab0824b7fd365b3026138a374957f3ea9809627fb1cd8a70a0302047c435bb500673065023033ca1e99da86c0c371a6b09f91cf34ce9b20f8ef8e98eb707f565dcb6aedfec5f6532524ff29644201337ded4d1141650231009196fa8bb2b8a9985e349f9ff689b5d80ca0acbe2b462afa5fb38b2ab6f0d206125219c07ffbfc721c08b93a593b77a30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bd9eb78c79254a8af5ff41913e1a00f8236e50bb1a595301bb70060fd69b482c24f3984ccad4f3172be6122b646e426d02304deba83a96208924c00f37e50db84291e1c8149f68b4ebed5b2f9b4cdc95bf865275ee9edff3464d2559d0e35f241baa0302047c435bb50067306502307bc64ecc7f27220ee6b2f29000f807eb29232466670a99e1711e9445563edb8c1b48c0b2d1ecf816fc843f9b0cc7ec3b02310092b371a26446d2e048b9221fe0573f62b133573692400e64115b5b16f3384e21813c2a8d77e5324b4b24d1c6340b0de30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304008096149c65d4fa51c3825ad4357b28abe9d6136c985fffde5209e0dcd17a701e9adaa546c8da11aad2eab4f0c1d82023100ffbe6aa5c66b1c10fcec48b616a872d3deec2fb1523ed4e3c55eb9b74df47a820d7a83896798cea8bcbcf1a78a1626510302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b4876ce730822d0a4e445ba9559947a8335c869577fbd2ddbf0fad814a70e486eb2713d2a18f14128e61d13388e8556a023100a0525ee42c5ac85fa7220e6be02d271ff629a023e7875a6f551c809125553a2d502ce739c422330e1b579d165ffd50f80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008d93d6842ecfd33d11f94a90dbef9d323a63918ac10454dde0bcc0f1e17717d4bbb0d071b5d07b25594bf102dd3f7393023100e16672863f7ea423a33ea4403c253df639ef13cc2c2219c0114aa0385456f35f38c8170097018cfef3e8f2dc9c2134730302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009dd514bc80802ff97e2e992f4e9475ff91ff16f4835a14078ed82aad93a9c4726491ecad6b0f1335badbd567d2ad99ba02301acec66c2b5c2c95d2ff0fa335d84d97c845eb9c0537234b7497dddb068a1fac6d6513fff598f09d185f0c546f1cc9e70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009a68eadf0c43be0f1c0389647c83a5ff8d86f9cc438e4b6bf3e4fa76d6751596c622d79fca1233482f75d9eaa3d37e1d023100910eba6119e438cbbc09c676acb6cafc41dd12964fcbf1657187aee5e5c3dbeeed6af199849d1e1b9b39b4e8ed3a81620302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f5785aa8b2da252dce2e1be36104aa4fa8d8e9c695ad04c93e62325a65b6784944259921c3eee15713ac0f45f5c78624023100e9769637658cb34936bc2bc7855c1e9c4703a51053d0a07473e09eed8a7559c3bad857450ae83c6bb9de43cc3cb096030302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304a1075c18a1e42b0c4a450e499adc311b4fd3e97a18e40adf2e61446c0b6c1ef8361d3aa270a71b378c8529c7a19f199023054cb60d85e6d4310a8cbe58d667f5334604d1d425d57f8e14176214db240df62242b62dd382f7fb07d45b8712c5ec6af0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301b2b01c000c8ac209f0bc4ecbbb7a12f2a6be997f8ff65dd4223978c6f4a840ce1ef4282393f37df935dae15dd63de8402300916aa526b464219099561656bac4d84f4a7938e67b516bb8f2f67f497a52b787fad4e427aae26d1534909a70b5056af0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e4a007bd2c92a0deeee3051112d65d0c60f38b0aa50f1f15da3011628eb5d7f19b8db392d26028b64c87931fb83cc64f0231009406a674ad13181fb79af2a3048d404d66734de7697007468199a656c34eab7686b9e32c09b1ae442fb8b167446254260302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305da1a6e19c033f9762b0e57db2dfdfcaaf9ef17c19b59d05526729206223abca916e6d60673e119f9b6bc82cbd9ed74c0230559ab8e13da4936bdc2376f7b4a3a49bf49b9d8e44ed04a620fee1a1f1fb902fe9b5b4a3799970d49f9b8020205594ea0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100efcd6a3e99cbf536a5b6a41d4d1e2e38640e0b2cde382c70e58db3df85dfff4ce90d98f9a57726d23a42baf238640444023100deb426e66f14e5e54f4af7b297524eeeec110199dd3dff0166eec6f9353e4f7c809c82b36eda1b7312d3d1856a38dc300302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c815d1687ed3c353e0451b15eb20811f9c9d478c64a9f4d47c9e6137f4237f44be7f0c79a7617872cca0d2682f3b7ee902306b2c78ee145ce28586b665384cf206c5f93a22b6bd636a2ce4c0a0401d444e0b218f0397188a695b3c78dcaf4b3f92e70302047c435bb50067306502300f198daa7da9b1ce8e242d924b219ec30cc2fb3942a9029b27f9cb7ecf88b1a6bd84691648bb9c2737fe4c9f65ae6d5a023100a175dcdf6c6c1f40c713bd650b270ef16e451f9eaa965ee9dbc8ed950a84df24c18732e139c209f563522e73792703130302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307b9771c056e379dc73a50490bac1b607e02c493142a092fee54c00b82f0cb15fb36e8efc08af08a2f19efb16e0d7dd0c02303f559a3eb78caf6a591070dab3f9c53e871f2cbe474beb151138137f284cba9527871c9f7f1c556c936cf2f2ad4b001f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b715b0968aad38ceae65f4a607919744eaa35d8b6b7f2c5b553233dd3748003dc4e74ec40e76b02c1c6e4635730cad9202306befe6b1777818332dc3aae9bde3c47e20b030b1de0a7dd0ddd719e9bef2de53e7389dd236071e18286f50aa6acc42a20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303dff3f4544bae2b3c6e7e44a5badfc6375bf52657b149f2fa2851bcd856738bc7276e17435864bb93b8ec7b2d0d4d18c023100ffe3d31b36de0a49560b024af43dfe4f918b218eafae4d44081cc0e5dbdd47471fbb7cffbecbc27b549f658e51d3828c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304c7e69f0db11c05a022e28c0a47f69b961c7e43dccd5a2c63d1d81eff6cb54d425567e4e8abfa7b2164d288d09ef5126023100d39a183d47bd5d8aa66ef2797325bdf8e0e35feb827dceef123bd68abe267d3af5114e88c08cb08c075ed2bc25cfb1cb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a9b0513bb022e14ed5f3016f810a9408dee51063e3e8d63384a78db38215ae3da3c64ceea16f8e254f27bfd8d64216c202307d566d53d6320e42a9b5a416b60c3d95537de46a83bb281f5f8e2a0d4cac4fffc11fd8c3dc8c0ccd602e22030c5d0ba10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304f40867e9ea3e2eaa6ccb7a265ccf35602f179355b600beffad0b74538fe48f559f68eb8ee0cf9cc44e3d4735dced909023004d3fe7d4c77a232d60a53483221ff2deef1db8236e32296bcb7130e74afc078d97b5be03ed68eaa0ec8d74ff1320db40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023063e64e474814c7a0b2d4d78f4bbd9785d7deb07f4426e9333e6f7a6911297eba59dc528d3e6573530ec03261efe1957402300fa06d2cc4cc639fe6d5b0ce67cf502e71b3d6fee47e7a3573024f6e0be6fc0a443de6dc6faab3dc5091b72b935666550302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d17a7ab77d0496fbd83274ffea971365298085fd4fbebab2c96bf030a3c36a43d67f6d3c8bc7b5892ab075c4386da1e1023019a8544012a05bedc9d50f626b23e1abd1aec4b8cd5a0fec4f120cd9850d763440461a175a6b497ceb838f11033f67d20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302222d0ebb20164422277320acd6ca23507891e03d0383ccf69f47b2769d2cd5024c9749a4239a2b96a3512356d4422a7023100bfc8e26d798ee2c2bb6f6ecca7e6a5d033cc3a6b85d8fc6df7633f591f3095ef7b22833e8717e09a88ef43ca7944a02b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304ce4f0548aeb62826d9ea5873c2bcf8f15c19c988e5651907d594e0623cc2df6aebe908ca6d7d942fbde9f5b0221c854023100c08bd6f9cdae8d914fadb140de85795fc6379af921e5decda6a79c3018ebffada3c4cd22c8c199d084a712b2843708360302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023006e284d9d46a98d91e6b5905f4ba28a5e2a932a9069948cd89fde4d4c39717e004a79c7af7370048193dfc77c6fdbfae023100a38cc1b7a82c00912bf17153993b7ce58e1481f63c27c4e16ec8152a1ba39abdbaa967ddbae80c598f7661220474da1f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b890cb2da39a18c8c6fde276c5f72e633dfb4a3c06e6f5c0ea3a8a8436403b52b267d7a493798059b66c237efee6a7c1023100d42e0c5f42d85fa90089acdd49ce49602a081ec86a1ae9af3f5eebc1bad8cab26d851c5b64f5630d2b6b7546741bd9840302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310095ac8bb8abfd34a6ca13c0e050035624af0c11254e5fe478e9aeabe725b2339180d0919302ea59a0c5cf53d7224f767502307b8d2faa782627b05aec31e0ce71f537e6cdfa6f8540f176dfdd9b107287b8fdd670d7c3da1025eca65e1855e219f18a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a1b53f682e7c950e8caca416278e2c1f1005a5ee665ffed0a31a5d1c3b676e1092f35b5b3b3db4cd655f34045c2b10ab023071172fec401d61c121676ebca644efe1d856282978ce678472b776c7e6914fe2276de5837746c12ea924309168348af80302047c435bb500683066023100abe5f0e5e2e7b40cf1fe010aee8e2d81c8aadf7b82664b09e3bc7cba73370cea0d9aedf88ccedb49bbde8789b076c6dc023100ac90442cf0be465467a72900d86535eb4a22d60b9e2c01b2f4df2f74884b839d98f482c08de23eafb5e7670880e29fb60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302169fc3523c7bc23f7446c15aae5b188e1edd1427312670628f762c1e5067ca8be83ce5c1129d691bd4108a6b21f771202310090dd78d3892105a0802e9da21adc7e2907541658f90c9f3666c4ab6d01aea1493a0763f5bfed1c443dae2bf319aaa14f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023074256d11facc251039fecfdd7a55496a93afe5edc784ded399951338cc48c2435b75c463192fd2f2889ec491f22c6954023100e5547f1145e4834dcdf703bcb3e66fc3351866fbe47d7e1ca6783741691748c38f06c6154d7c23188d9231f3417238260302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100eccdd402fe00731a6047b7ab69fe678910794318aceb42c796327899d2359b61945158849bc8212db8db80fa418cc48302300b82439a3b2a425a4f7d4caefee5200d71a6be2188490029a4836626603493b0dad230a6228f1e1ffb56b5218bce64d70302047c435bb500673065023100b2355734c1f20613cf93bfa5273486546a4935774f152bffc81c60bbf95a32241c69a63173bf5dd07e91e66fa1964c74023049e7533dd8e444fee605e0d5b66709c59df32ae22130da30330e3829777cabb1e28edc5a7d581526bc3de4d88a2e28590302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301c94224136519c2ff0a83af8a923a8e9d25681ba47a7a3801240f68634eea974dccfc0d4ded9fff2433d35d4e825728b023100f6b3bcf7f5bc0e204d03a085dd7d6209a1b1c8cdda0517b7e7090307abbd1c6910094c71b4751790f892ae49d4b3b2ec0302047c435bb50067306502302f33a76c01cb184c8670e7cd32a86546aac38b44c58e43248a9fb28f1ec2646c09467419351c75816938f2c6592757ac023100d207bb8f36e12379c4b4eb0635d19f43d7f202bdde033dac0d0aed755bf0b9bff839abfa381305243c4f03f2bcac86920302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231008bf6b66ee9333cae52c292cc55a914e7e7253d84a662e9881f2ce342bc054ffc61f061d47b10b323e9c99b069c40ff8002303c4e5e7f272bf9480750c954401004020eb690c585201ae265a1652b91eaa9ab74cdae67462e0da2b37827102d0181c30302047c435bb500683066023100c82e1822a715aee7fb3ffa15f2faeb1f2b900f8f982eb89da69b5590c5509313b4152b32125ce0d9439b27df0bbeb495023100f9b6557dc3327d1d467355e60aa37629574722854d83d4017f33fb8f4d46de7bfc0d9d1f89cafb5e3ebe1f8900d4ec890302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100af5de09c939d9d0cfd63a032faa2833c047cff4695ee8fa0b21a27a43c850eb7b69729771968c2ea898591605a0332dc023100a535722d24a821b5b690b451c4480fa891a888df629e420e20d95b043f59a57907db66240acf410d1ac29017d705d9eb0302047c435bb50067306502310088f73fc695638e707a870fbed32bcd5b371de1ace9c83d7ba9c3683697d6c6ab4dfb96aa6d6cec2d3d30c0c0cebc26e902304767decb824146c52f6c80ad8d20a4261c11a628444e0374d94c3f7de0a5b35a06ee628dd299322caec5cf2db83941a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230320c4d4a8d5f3391b7b8aa84d067c34a6751c3a9194768e3eb31a8974cd3b7397af527aa6ba9c1212751212e4613de4302306c45bb2ac2270fd575442f16d2685bdcec7e9e500fa74d093ace8f53fb904739cb65f64e385ed9b5a53f1475ccd7d4950302047c435bb5006730650231009c179a8c4e2bedc9a0b919554e7aaaa52a16732f145843a76800c0c190fef104f0c064657790fdb918238c22a22fc146023046e78e120521118105e01e422fcc175f5f2687f66926eb98e20285cfab049dba9afa67fa85f1c467b74f0c068481289f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a5eb510867e8b173ebeb611c0fe71d4f60e13a2688ba4b96da8cf742da112bc8efb984afbc80a2cd7846264b39278f87023100d3c729aa3da965af5ed106a2ae17c8492fab16ebd95c03e14d397a24c17706c516f2d48ea4e29650a47c0a2c453700420302047c435bb500683066023100c34748cf1719b1eb901cdd23240987bca1e2deb8aab938afbc7256c693f50e01c76204f0cbaf04caba675a23d66e8c25023100e651f6a04860453c133ac760750984582440e5d973c4082b145c78a075184cafc6dd5090c09bc0504b79f80e1ad2096c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b07348375ed5b54bc9ff5d84916d7efd3f30882f14b8458b2c9295e8bc709312cab0b209fda82fa439bd75afc846e0ad023011cffb5539f8b854605c83c780701f15e620b960c57662e4c98c84edd2c94c8f21799e37fcf30c6cfc35c5545db973cc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100848ab1bf646a8cfa57f6c2740bb34b95696bb3552178a78d3bb77fe578596ae636595ec082637f69f590171e8d491a8c0230774bff6bd827f3b7a836596c68afc42476421b39df3b3d902678997e5fcef93fce40bb715659f911724966e1c3a107610302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307399a10c355b943b7afb27df94e2e1f2bd46af9ebbb157daadd85533d0537ece11e61b2d4379b02b7debf4c7fe71734102307c497ddff70c787bd696750a725b88c07e043265f89d90ce9781dfbcbda03305a4105f66f6586cd36317745beadfc70d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c13e5a4864effa65f904022f94aa8d2f447604d11a4b0f4ff9c1a903d383550cc0006a44e46c341444c4df92f2b43cf9023100d6aa3f194828a117d4a512bf55719ee332e32851aa0f08e022e61fa048d9ee8edb9e11b8e16dc08351dcea2747650b100302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023008e71e63bcc40713bb1006d6ef8de5cc12965c676f98000d5bf9801474845ef3908f080e7fcdca351832adff2d71bb090230159faec29bf42c7624b7dc477844aacba8e7c23b87aab7abedc168939be4cb500de899407b2da6c1097450255214bc1a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009d02e6b5bb1a21f03426052724895012eb024efa3fa0c10c747b5616df40b3c1a145056ef5309ec27f1d833a9544c2b6023100d762fe11d6f81fa2739be7192b262c177188301eeba4756ab3c4b5ec2697d65b2a203020b7b23e2ad18ca3d79c3a2c6b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500653063022f7d14235e147c0a499793f92a8d82a79a0fd60b96e7496b67ac355084f2c3deeaf7df929b6c63652e7a41beb7d6c9f602305061e644d43a466d18e827d6bd90109d13391c3fbac33494ffc913327c0e8c107fa6c1cb58f8257ce4126e9d5f5924830302047c435bb5006730650231009eeeead6c962eb1492679c443e7bd761344e15dab5c3a592fadaffaa9552d79ebad4f8cebbfcb55781c7d169781b00d002300fb2a1cb9d8afc8f32449826a286dc7b35892c331a012eacc3366bae69a35069e42494137783a5daff6ef915f02263390302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230055c91cc2330ddd17b4ce155a192abdab7e70fc44b9183febf745346c14177c0bfe60abbb76becdc7356d70c37147d5d023100d76674ad74e4ac8cd0da6ca458daaa0ef7214018a6c318c79f7e89741bbd00bc8333df2c97aacaf3cda288335664e72b0302047c435bb500683066023100bdae7d76e27aa584a18b83a713c8b7a726b66ba4f9d9b0bcf573baba1c903b1479ea2df96c67ec0063e23762ee9333e7023100df79e9e850b88006296f6c0dd036b8b66b1ab4f6480d6f6efdb11a53c1cde7289a1b0bedbfaf01a41d0783fefa1022d30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a4e45f4cecb38b2461ff660291513f007152936c8826271e0117a9b7ed928fd8a037d940ecec6a4d627e1cd2fb3e0a31023100f1f66d03ba5e391fc0392f427c47d648037400758c3060c0e9ab386c037aabde0c94b22f6f08228e42ec99a56c9e4da00302047c435bb500683066023100d29ab82c140bb9f87237b4122d4e71aa342bd6dc22f31221484ad5bcbc1f9f45d1c063626b0e96cead98d808c40d4604023100fb011c2f43f66bc7952526189cd390a83b4e44300107dfcd1adea90dfe63eae83f02a67a43ac4999ef246f682ae30bf40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230278c3d6ef52015bff0dd2712376c638540f81be572a1c09449ceee9ef6c09e5c2ec81203056b69dac04399dd4341644a0230269d9c755cc6cfb17cd15cdb3a3681876176db79fa0e327767714a01183770ad37f7da4df4ba7f3140122188db839f2b0302047c435bb500683066023100fac958c80c6a88fae8dd5709b7f2bf40221e82ffae45f2240355f806ec282085a25d5ed09621678477272399744006ae023100cb83eddb5ee85b3e44d6a19cf94055e47c83c9e242188ae7ac88abe40eadf60a002e35250e5b85e9aab0d607653f5db60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230436f706aafa359c5ff61938362cc1f6de1333771414192b93ab98f268b7f6084844e8d2a6868b259c9fcf441739f663802306571dd04d125de00fd312edef70e6a5f36ae177eb77954ff159fe76653577613d3e56233870872840978921a1723377e0302047c435bb50066306402301bea3acedc23ff23063463e85aa78853d12e67924c9f2dee808498d1efcbef1dbe162606a46ba0d6dcbeb1cc56517e7c0230272aa5d67da6a0b4587bb4ed142bae75c55a28892a63e71a11ca0d78b49ac80455725b8665afafaaa8914ed4224de0a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306aafeefb5b61029b2227de9065e5751cd32d89e04c24acd2d1d65d554e2fe391953797b619f17c04eb6a1dc67899329c02300e1a242e3c22f6fac52dba34eca305c22158949beba6ca59bb5a05aae92f6f45013419e4daf46de442b50bcaf2b2db890302047c435bb500673065023100a140412a37b9edb9da25f8eb02f1a4ad748a36aeed6732c1e57707c8cb974bd1f6823ffa8de25811bb5f76643ae3441a0230121938c2f70a90647f28da9bb827101fe1932e35bacbbf65ffdf2a02d6263475a7d4b6060d8b953b0af76e587cbe83c40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310095e122e3428e61650a316a272708a6f5bcbfb77925e419066e6604fbdf9747b1d440e92784dae974b00133e66d3995a6023100aefcd1b1010ff9710fb9870986cec8fd61d2b623f94249e518c4f993bc6ceec75d60828ef52fa02cbf92756f61d9baa30302047c435bb5006730650231009d1532af45404515517003f887ba3efcdeea4b2dc8362dccb06d4bf98bb904842a0604ee4081f3b67a2169bd31a28abd02302d6794ca76967ca876fa8cd66750730552d23468c6ac585958ab08d041c310c9ca871fb88cc1c326e436267c158e2c7c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023009875cd3d815ef43c4ed31615b1135b9139cbc690347ee573cc462b7dee267822fb561581fe72fe6c61b550e1ef3643b023019b5efcd3709065a2f6ac03629c4945242d81b6af204c4a92e1f95c641ffb56ddc2d4bd4c5bad7b5ae195b6afaed69ea0302047c435bb500673065023100d68873db505cf5f02a96fdf7dd3d3d4a83f217c491820764fd90ddfd813eeee4eb2e110501fbecc0d9229ea94188a4ab02303e6f978bd5cff3fbdb42250feee01052451a19f82bbe035f32dc18b823100480d9ff09f9aa0ea12349087b26726543470302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b7db7802ca1ba78726e774debc9e619a3dde7d596b52220ff789ae8d176e5c6a93e9fe26df52b3a982b9dc8924abbd0e023100d26cd0b0579d2291ce16b5779411763a31f0594b663424a75007d4bab8d9e9083f9feff7eb768b0a015b89e86dcace0e0302047c435bb500683066023100c314fc5a34be895b720d7f2c124df24d365a665927d332d96d8cbb7aa38e709cc4f333dc51aaa20137ee558cc5c890fb023100b54978b4e3a612c09685b32f36c812ed93a6bf6da9d69ffd0948fede7eb42b5bc176b535033c55fbd2ee74c08dbb0c3c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e591e5c82821dd2370d2836acd387f89f402bfeb7c376c499c580574c3b8e2b8d3e71f9a265c49816b3d92859dd4ddcf023028372b8148c2af3b8616a8f9deecf513a34abd9e260f338dee8e608c6a4da4abcda0856f63a84b93dac20cd76bd8309f0302047c435bb50066306402301db2b419497040e0984b60945fc6bb710baedc62c3f05a8cee886113d25dc9bc4c98142d8e8a033f34017c7198a5e2ee0230709dc05fb6bc2623ba4c77a4a8c0a229abe4996a6bdfcce352b1ec6875948eabee365fd077be83fb36245f8dac1be05a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100eb3277aa744d59b4c7d3acf665cad07fcb4e432ae983ed30c618130af13eeb4ba07cd5adcbe06e869b27b873a5ade5dc023100a14adaf8bedff704da3570c2dff6d7003674214c5a7048df3c4444e95311d262eba36baabde18a7a8ad595d3d5be2b7c0302047c435bb500663064023011d9e303eba036bad86256523164299417b282f3b2314253dab3b2d2d3f21796ff96fb7d9a7516caa94eb20e15bbe6d8023023cb204003bd532b18917a97fde118032cf0673e0e89cbfad4afcaaf1475dab0efe166d6e07f50b986ca4f21cd2d0f380302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300d64caeef596051baddbcf33ed522ef0d7e986f0dfe7f3ec49e9ee63bd00e010992625cef53139a441284e01674b3a8b023004bc816bffc29f5bbb295edb1ddfda995e2f3f7f009193ddff618767a6f99b5e91dcaff7cf4fb84b7ee7e010633f26520302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c08d7e6adc5dee4354d297ee726439d357fa7ef8053a479bc7d83db571666c8cee6cbf5c38e7f2e988a23a959eef2a5402300368b2831af42c489608f391153d48e3051114c79f4ba719fdbb96c63f28fb44139ee940d021da7eee44977009a83f7e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303c00bbd46e516775c69e7cfac9ce94cf88edd03ca783c9e5839ed6cc0aead375d9464e8aceb8d0e3d22dc1b7e763c49a02303e978d918d0cad26531e0e509135d68d276acdaf7a78fc16646d091372e7eaafccfd2c6d9ac507b39c4ff0c98c0c32d20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300bab1d1c8b6541c765bdff2760890b616c0eee2d82fe0b8254436bca61a2f144e8cdb98c6a751865ef4f369022ba219a023042b2b151eb7c3cc2122d042e01d016baf46d774cb28dd0c38fddba0c6b0b3a61c4516e19803c631a41c1a7d0ab75c1f70302047c435bb500663064023009714db97a1e0a1eff92a78d83bf42ebfdf3e0d67f025986cd3278c8f9290e9fe451d70b4bcad36732f95592ecab3c060230460602acc762b4134a33073144e8d5cbf1a7da28ff1485e6e1d8a911e36e864342e4838c8354c8748d0c24798328b00a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100eec72009cfc71f04595d0c911de699edf8e8f98eded7dbdee90d466f307dac54a76f910ac0cffd41d0b581b2db8144c602301352316d291bc80cbb2ae885c614d8d0949d11baf9343081f1a2a5e37ee9f93b849d286d16f68df1eb513a988dd7d5b30302047c435bb500673065023100b966493757157f3b3f8be8ab2cc354ccd2908cca0b3a53d46cb6cd9db19c53f0e3e11838ff6b72807308ff08fd2dc1940230557db863b7d9fceeee0dfc27ecd886613e0dad0843e7b9e625b46048fe0ea4f6be60bbfb746b17d7ae3202cebed35ab20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301750026681d95f7acd678adec39d2bd606915332584322f1604d15ac9ab27cf893dbefd49ea9369b607cf971dc526e41023100a9a40d5a7c52b76768d34d88d730bed1053b04cebb9280cd3e806fab928d04b8f63b5b717ba0a23f8480f03878894f420302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100bacb6a8c4172af3c039b1bb8fd85d5a874f1824446c5542dc7c45d336943b4c07e1a4796021e3be6b7f904c8c7b361830231008bb720eebc8759e2676be650c6ef40fc37cdca18becea8155abceb7c1036e31cdbac9037bc2bcc6c3717a51b2a2dd3de0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ecb32b0a5455bca51105898143ae8650407a984789632dcfe300c40802071775df1652522ed772d284a4655473509acb023100f4649abacaa53ca37fb23adb2d42b411b553a886c91a928ce885272ee4edc2cba341d99c8d5fcb6b901ab451705882790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023040664a028eac31ea87244850783b5647cadf3472750fe7790d185b91440bbdafe772aff8d05a336d91ad213e08cd0f9502300d9036f8f2b014a0f6ed4949b43e8d31d848eb29f0fe7d4069a4c35443072361c7bcc5c1afca27d663a98e3130e70c1c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100dafb576c71e54f88459f4dc8f4e7da98caeb2a9d7041f1695d9ee5dbe821dd11251225f251f84df294b456cb3b13ad4d02302b3b56950ade8b2951ede18a0411f2e2f896bbfb8c42c22998849f15070297edb1bce159639cc885dbeed17f700e74100302047c435bb500673065023100eaa6ae1051ee646460ba69e8ba306c126a211233641af8057a134917faafcbc5afd6ad876f7becdc7e401436a9c7755b0230777cdaaa1c4021af6675e1a62993c7d98ab7e62c16aac57db1b3794f48f54ccb2d7599c06ad2b534549f6912f21abc860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023078523eaef78bc73e33389dd3d9c3e56071bd874eda8b611ee4e69eb7d17cf470da8a629e1ab0cbbd9644f8936ce9c55c023100d44d89940bf246cfb5f80b0f11e57247b7e4f978248e79c3ee4a7ede5f911b74961f12f81e6e2ade1682e14218abacaa0302047c435bb50066306402303937d2310784af8be47a2c4beffbc92944682cfcebf09d5dffe9e11cbf13120e0f88b773e7984a454cb802a5cc17f64302300dd291ed95f3e8927a2982e8c235066465634c12ba861ef9e4ef58f7d332f2153033541d95cfdc58506d9ce8ab99e07f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304406ff56f8346762ed8157d0f4e4b0ecb55178d06514fec58b30c90d531089c29ae80523181cf3da418f552c8ef3366c02303a18b41859a45aa4d5170be633583934e13cc8e3beddc2d73714c9dd75fe5e7c100306311604958e5d5fac78199193470302047c435bb500673065023055e7d39e2cf6a93f4e77ef524096956145ba01964eb471eb5e43128d4466db313bafc2b19f501c531b7543de931d18d0023100d9b5114b55093cc7f582d5f9e7ed34f0ad522b4b4d8ffeccc9e3057badc64bc8d0597604dda18f112236c9782c7d23530302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303eb48262667ab3bbbcadd46330c8dcb35402e90b20960c6f4c5c4eb5baa454db33c603a535c6c903855d6c2c767227820231009977eec4c698c8a6f5117f6423f3a05b798cfae45cb66a37cc0a83575f37a10487a51b7372cddbd855483650cf04a1c20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310086b58f804532dbb749b4bcf55e4882c9ef32e101b0810f45cd56255d41b10238576051fbc292c4e9c955caf9b69a89ed023100acb72923334211465d44dc93b1f1668b787f0754e12291bcdb0b4cd97473d73c66f38d3eeaca2b0ddc71db733833f8240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bee9e29c95d687db108ce30daa101da2833a89f0a42187a9ce34e21827323ef2d0fd2d6cd24d34e39ff69d59334abcbe023037c3cf6d01dd3dd317797abfc7a18958e3791fb4059d23c0f1b99773cedec471c67c8c544e958da90783b37f292c5b110302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307d62c807058622e13061e6370228daa35b71d583d4cf4af077668c9f510f7449aadbf36c8e1ca355217762419f6298cd023100b346f16a68978abb26c413eb23ae9b0dc4e10fcbd41a11834eb72e25139a15bf15756557ab1b79026cf965999b4b8e0f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305d46ea00633d8bcb618c35f13916f7b9f4b2e878a848d3b7aa699b0fe6aac1feef115f3d344fa3ac33e14335742ddba602302d8e26e7d12f813c3ff50c69424f27cfbc97cdd922044b5e95a3760374a93a56cb6db8419426d25feb7fa8c8008081470302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230643d0d1159b4b05f8c25ab481bd3b3bd0d28f1f3340698b8f1f8292e5e855b57385db2249115101e716227c0da3bf32402303df6ce51e927513f917c23a448dfbe4efb2f44a970d56900c9c3d3664356eb933eaaadb7f933f1e2725f0b15feac7f700302047c435bb50066306402304e18daef6e58d32c6a575b606cbcf59d372dedff4da0c4b787d8ff11109d7bd1d8e37ad055b5707d7677da3462834b4402305c0d2957b8c54a9aacc93adbe150f583bce44417d80ea23b43cfaa281c31b8401420f51f69d29101deabd9ddc7bcd2b70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023042dc9fc6660325f89357fc270f133d67d944874c56c36ff38366f0847b3f7d66038e4f021b3b67f6bd875c945a9d3b78023100a312bbfb784186c9fa0e9786b2d67d6346629cac452374f8f245098d2b841ff48c3cbac21abd44ec5164f56040452f3a0302047c435bb500683066023100b2c7dff45da06a9254e71721b78f2d53e422a3ad143f80a28df9a9f1c33a80afa88f2e08c65f8bd89f47cb37c591bb79023100ce8d17b4029bd79530eb6291b16475307f0ee49b74b5a67f391b508df5e0b49c86a38d5df98c112464f039832e1b1ae40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230031fde0019fe4b61e92c9ded6654f4abff907fe8577313c9b4afd5339e6bd10d6274b2edf70703689412e21fd9a66049023100871a401a454044014c1a558dc8e7f528b8c080c093bc77e0d965795d730dc9692b1af64517734eb0c4a876323515434e0302047c435bb5006730650231008f2466452e7e9b3c2690aab9d9c866c0c903024fcd304f5b3ad08b224aaa99899794b12978aaf40cb23c5e84e8c31c710230370f58f329b3d0386fe6cae10e7274a5af3b2f35311c2ece2a630e65808f6656c257547c14a902ae5e962b6675ce8c600302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230321a8378f175106c9eeeb64eb3cfbd294b18bc756140d36e18659871639f4adaf223fc3c9af2c247cc1d3c98da526ffa02304205b39c22eb46205c60eeb5389f770566138ff07f80b34f2db9b9ef1695240a59d59a7e966f69485cb8d8ceb6ca09dc0302047c435bb50068306602310095577c6967788b195b31f4f71ba37963cad65fe8c83e5b0b0e476c642855e96225ad1fc78852b1fc601e6f21d8e10aba023100f5ef1a93886ad6164b8a110d5014069749200a309d8da3ec0236e83e3f4a89b09803adef064568a8c97aaec5eedc6ff30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d9bf4f25229976c1a00f24d6095db2f97cd3c908ac7c71713ee0fa288e429d4349b45f3ba9e7ce49d6304ea71ea997230230780c5ca9291821b7234c56ad5dd396c71b43766b7b9bcef9d55c881aadf9d11ad93d22a327dc4da57e5933d6910175280302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d7ad17559213f7146ff9eca3ffd85c9f64c80e820b71704a965e0ade02830e0246209c3749869624e62afa34fde78e3f02303d0bce75b03476c56f75ca74a3c6540ceabc1b011473e3389552570793ca04ee819de2b46f709d658afc59445ca31acd0302047c435bb500673065023072ea3a2305323e25975e75def189025d147108979ddc81fd3d48c28f2fb1aa63e0e1582a8eae7941fa0c06085651a17f023100bf657944846c4ee597d43a10a4dae990e7756e781163b15c616f23b4193e59557b22575563a359e2ff1c66ca963f224b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023038453a64e10ccf3e4b155819da932cd7b1151e61e90c65de4e9ceb18420f47efd7c1ecad8813eb4a206c1854d3b8b86a023100f47960f5aad6ead028f5037db01a3da1a0eb4c7508c2cbeba52f0ddc53480d51f309bd8fac3c7f895211091be58add100302047c435bb5006730650230129893722174d2d77c98fb5cb4b3c4ccf39620faf4bcb50c0511a0ccf999bf3638e3c4b56f7eb94b7b3409e03cc7434d0231009410c19eeb948bc521851dc93623b4ce4b96fb5f338e0683d7f09d9018a495d6346086898b20103c1718083d244415350302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230453c82377ca3cf073f532731e2af477e4e6a849ebbc14450a541e93338a8f0cb0faabee89eb6b49515ab4aea4cc7402c02301779cda5cfa00c43a56dd3e7710962f47ff77181363aa597a6e682aa30daadef57f22b1ac51bfba844375deea2733d390302047c435bb500683066023100876e9eee45692be872fd51da0d24d44eed0705431e224f752483b2cdb5a4ca5c1968451baa9d1b68bf34525e7afec3ad023100d2514a073a2f14fb3b484f94401013bab65ad918b3342d9de68ae39cb628f36f06026f5ce70df49d97e292527a2f4ec60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ad35e3cad3d93a83625774dec49cf4687e0ecb64f25d035e5a9eeb64ba586902b3d00a0bf1fefa09ee70912d0b07ef24023100fb18438455da65fd9967314569b3a46ccd75f1955cf4cda4e6e2bbc670dc2f71ec86d5e82726b7041780d516347694380302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e585a67e9706ba0dfb9bf01536845f7d6ca2b60ac976729d19bc5ea0b3763780184b3e620d417b35db31f19d7836180e023100ec3ccdcd991ba5cd59f44b328779cd2f296c9177bf42e995278f1eabd52a530a5bf97514bf226211553cac41f402ccf40302047c435bb500663064023052161c466331e5c9cee42f4eb8a473db1fce2a06d5ba228acd73e844fbd1c81598b46aca9b8db3ca5b05715a07c55f3d023076d4847bbb201999b1c962460ae987359cbfa287f24bfe9601c4c298782eac24a8f04879058b69b962b80f83d8dd69490302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230153e1958795b7c8c4b7a00b320b551a8499f2dfe09038816879b981d1f733e7e36942bd32689273ec59219a01b2bfad0023065403724d54e42a79dd5dba0bd833e288e9a90c3779e3e7e299b868c3255e72897265a4cc4340d6bc89f739f144563470302047c435bb500663064023009a066e9ec7f1425cda17af2648640d96aeb9cc086283d2240fd8235a576c86a0fe25e38c167b7cf1f519cd1e1da145702301f9e9171703d457016fdcfbb864bb8920dc6adeec52a0e4e54876e02dd4afda1e8e98c1bc77a6667061e17725990a40c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d4e2b9d6aec8e91d1c32a5f5f8578342085202951fea0f295a7cbd9778dd34848e6960756b511d780f1dcf001434f674023100ed3f066c216745894f81a7ed4a6d1c848ac80f6fa68ba6f73c1d06ec02639f2fa9175d4814d8d78b90be187d5110d5d40302047c435bb50068306602310094865a995b59ed809c0c4e0b099f90071976d6df8ea3782f78865dabc53c0ab476785520eabb1fff2fcaa458c19a5174023100ff3d824d8f13421b074a188d41d344bd28d69aed9faa27bc74ec9b17ff1e02e0312c44cf3e5f1cf5db1bf7fcc9fd22240302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100836f2ce146b65d39d4e14c6496151e0bb469cc9bfa0af629dd2bccd40338e667c6d33d6eecb5fcfe061f153667e6c46402306fdd7112b596a6875dbb877d115e2fb0f4262616658d7c50fefb59ec10d412d86c835a5124e0e8d4659339bcc6c4adc10302047c435bb500683066023100c8bf1fa0ae4eee30c6840f113aed9921b239e5265dfbbf58d4631c3763fe197918a882a1c684114a5ae172d842627165023100ca16c9c3ad6b419b18e17bef3234d7dfd285819c97e9d4cb524dbfdffb08d74f96bfd19b82987e51ac5b321bbbb0db2c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502300836e51f404d0416107baec21d4ec049e19a655e53bfb7917feba71c98b21923eb3fc90f621b9c6799b84e0be8706ce60231009e550878ef2524a70d254661ccfddcfe2b65d411f9249fd890f0626d3af9646afcc281ac09d5828ec3f106a09d4970e00302047c435bb50068306602310099d58028d62a5fc9c13f1d3b35edf8245bc1be0190643a1a20faf3d1e519c8cc5250de0db96ecff9db69a5e15817db8d0231009b7fec863ed0438f79af61603f713056377aaf6f900e9910ee9a5a6bb3a9f5f3d5bbabeaef5d25f276851e4773db9ef10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f335a7896898554538e13127db01f1fdef475457d0a3bace51b0340a61e2517880ed5e1ef7b040c211d2d87eaeccfc9b023100ac545fa5c68e0137fc5505ffa2202385261467bcf1f53c53858901f6415b7362df18687c39659251e5a4114ee468b5840302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100deac469e909d7bd77aba38f918336de3a6dc6bb39c6f810dae5a92f7bea99220c98f891be26b2e8542440157882f1ed8023070d763f7d45a332fb0fd918a0d8773b4fd66f36a36e12323b9823360e2f1309a9dd32610cf15a20192d51ac70baccfba0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305fc64821a89da97401f0a0d2218c98680a816eb65d016ac59f12d25212df9cd85209288e0d12bd6f52ac187d603b9a5c02302dae5a426e4c1d8429821a0a741e18a49a84887ba5af68e181b50a914636e1193b8e1a0ec2d186acba2c0300c99652630302047c435bb5006630640230705ac1fd44924e526229f092a62766af2a247c603971362bb287a0c6a64e54473bd0b46a3f3de50a86b152398335eee202304e930b9675afa1ffb5dda6524b2e748a460ce2f6e1165f67c07a4463ad950b7da9b6441c5b87db2fcddb0fb206e25ff50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023064e6f679ac9c1d469d5a9ccf0b583f763f538b92a02cfb8b4e8a7d3f97c597abf530e6b073fa7fa0b8cf01d6e1efcd13023100ee6e96a507f9ee588102b74852cab9276249fb1131b5599ebacfff2cd5020252add011804f460a8371befc0f2434f8b30302047c435bb50067306502301946dbfad3c115feb84408db83028e90d10f095a65d0f4292655adb432f822c7e0338d47a4775471f9b7f14bcf690bd502310097bf10c626096b548c9aff34774d6d28c124b585ac9eb09b5bdb2f80dfd2f40f3733d77c833baec7d3e78bc5ad72a9430302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023011d2bf7fd139aec261bbe53818bed02a443bf649b2e9b095072ec4f38d35cd43e4952d99d8e283292bb5597367835637023100ef3cac1c23751cf7511e12898e0161010f2fc6908dc1c5784d920bdc0d271dc52747d6b7e508768e82afc54f4a821f7d0302047c435bb50066306402302606df6ea7808c7b4c4b7086e978a9a1c3bbec44b4e4ac7404da1ab8d5b69b35bfd3f01fafa1cc45958a174dad5592f602306fc15c306580a9ade553967e20e926b6b69feca8a7cbd5336a2346c7c48738c7267cad15c2333f69da0575e084730ce00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ad25a64ae5863610c20e871de7409718b43b06c486544f0d6af57510ec5f5eed026f923e5c7960c6c7a95fd0719f883c02304cd06883e43cc851058fd9dfad6a6b4630631973216d2226e1bbf1577e9bc8523e6b3064c31844f2265f799a9695e8f90302047c435bb500683066023100d641130a0dea99b201590ee710c54cc96db993cf1a20f8789ba3b224f07f39c32615674b1cfac99fa036665b330fb73b0231008689953b90d2f5f3f8d3effcbec944135fff57e21afe8c1262b042047f2660d34900cd509e8204bbb669fd5d270e024b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e03dc9153bf0e62ac0771fd1ad7c597fb2f064ac517c1333297925f09ec78be2bf324bd678449240bcbbfddfa7b2379f023100d5ad6a58bc80810ed19f9b859495f603b66ac649889e08037435cd999c56cb58d357f308c9b5117a6584ccf6168d47cb0302047c435bb500673065023100b81ac783088ace1134e7b21ef6644c3946aa12bd085e58b93df8ecd9bd87ded232a470d8dabc631620a9a61126a2c7eb023022038ca2f31ec61783b677a952ae9ed4e7203d2ef9727d210bc1a544dc99e9293181b3d01c93a66350c926733ece48650302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f02722b8aac1877c15eaeebb9385e6e18c5f450fad33e3e1a2da5adf8b077fcb0df75cb45547d110f0b5c25e13f22782023100b05933abfd02d1bc07381287cf0fa58a428fdc22dce270a2ce55ccc747b3b026395211a1837f2bf8ba0304ea7032a29b0302047c435bb500673065023100ddac5d47c553665dc2b94fb52fe995793d805af2ccefd7117a5addd6642e9128ca34b1a2296ff47c454a186240de99ed023004d6dd472a2f092e72ea7128eb8248ae11f97907cef2595ebc89489a7e9e825dbc816707771b1105322ca8cc982ca1920302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100babd0e1ea29f3487411aba5aca93897482448510445d75953d6216df03351bbdca80c13c5f2751ba8b4daa171043f60f02306b063e2588e52bd4a2e0fa6a090899edc233fffc07884781b998bdcadf6d6cfc061525c6318f5f536d8c0392f88b37080302047c435bb50067306502300a4e64e8067511110ef5a8af277709661cfb80e5ff610e8e3944db68eb2d7a90cca7c12c5410c88750bda613cd9cac2e02310098e8398dbb935eb47919b1a23f16dfd967087cbb5592dde43c9fbdd86cfe43295898598534337cd7c0e8c93e4b72881e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009faf8910ad51214695086f5dd87b72d52136dcd777682fdfbea850738b2323fc9d5dc713d159304fe18ba2a8a297ea1f023100b992bf70e567085b165a6dc5e9b87d77b4832267e2835326c9796990ccbf5d4c9ea03cc9d72b9cbdb5bcfb47ba3b7cc70302047c435bb500673065023100d634732f2af49ae1b36b3d36a712c5fa28e7dada8945ed7f73065be019d971b6bb1df2642b6ef7a1071214b64d1ae2a6023053e16556f2371913d41f46a81db0b2ee22cb57380f0b57863863aaa5d6d318a9bf07805c8078ccd76fffba19ad4edae60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f1aa39aa8a083b0f3a86c611684309583caf7ad63bb63b51f295720e337097a854c248084965393d1caf66afa7e04beb023100eb56ad7ffe8feace750425d140c328f073fd450ded7d2374158afcfd4c13b8582292e516555fcebe4d4f1581293e731b0302047c435bb50068306602310082ba1eb469396309fa77f63b32a4ca8cd3131e2c2db5149f18a1238a5654a558c210fc67f820c517e844951969a2ad0d023100d3b4784b1f71f88bf660ded5377aa2f408e5f48f64383c6b0a047be52bed4e90936623645ff186c7ccd95b9a123ae8720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a053844d8f7061467770c2facf550227eb48967d8dbf6da204528525cd2e6399fe0346b4ce3bf8a51aa49dac0cfe98410231008871ea489fbad4893c7fcffc0d5e049415ba3adeb47cf330628dfb2a01ec29399d5c7c0ebe99b6da9e60508080e0d1660302047c435bb500673065023100f8f1911cdfacc8260415060b263440dd57e2f4c1f0a0516ae44a2c1ba0c0187e7b7a1cff80b057a7af74f4596c3215d7023069ca127533eccf140ef821062a62e51a88281f0c7e0d03932da526d8c64b55dc306374aec1f740d1331645c1a53d36e70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023013f68112bae42e87c966a8b243ba42c7875df278e51ceddaa2d0c9a57c8606292e303a6ec4fab38b3c43ec99bf9f92d102303ed70866966c4ba938e89a72921944757be7538e62246d1d7c6c3763cfb44f12437c59860eeb5f26a58c6243641142350302047c435bb500663064023070388273dc1090692831f2e46cf27d67099298e4b5d24e8f3aab52523e12e4189cac0e0e6d0dc58b7e8114c905134c21023066af0166a98e2f386bc110b6de4d474751532ee4915e0b3756b38d722cb1a8ecb3918e4099884f8fd9fc9b0255c49fea0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023062470931ecf18f8bcf2ddfade27efa1d14aee92d73efc11006cfbde03af9090c6774b1dc7133fad11d23787db7c78609023058a708b141bce3628a3631176ceb2a844d66943c2cbdb339305f115bd4473ee3b0fe6881936a3a6e29bb42937713d8090302047c435bb500663064023036fab2148da5cf6e08508cddcf5edaed4d1ee005a4488a8b506ff0b01405b2c67452890c815dd83e5140d25a8470ccf402306066815fbd490c712d6c64516f69e76ac43b2e4ba2fb88bb4035a99a53176f73a37fcd62e73b6a3cafa5661793d741e30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304c90243e9fe7fc12e4adea132694d2ecf5622d233ef1027fbf9a356e9bd13de2923e961bd0df48524fbcd810567e22a4023100e17eb72ede728f7ca8eaa42fcb3a4d2c0dc4078e5eefb8423cc3db72638dcb00c95bfeb74bd1ee668a43436bf9d756690302047c435bb5006730650230393c27694e1876bd18db489042762303f7f45906f1079e3e871491f88927180f76f6afff2cefa068119ba8c4a2b66525023100912f9e5a82fc3e9e9465bbaef26827dd575a766173ff0dbdc0775031c8a29ea42fc87735fd62d0db2740858fd67242510302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310091a248ca8d3591aea17b1ecbdeda21da7743357a7703e1b2ee28a300643206ef948bf90d6f6ff1e875f32dc63edf7021023100c7f2305a28ce46e109d89d3c06a22780dbadfcaff8b89d0be08489817086432e13ae3e06740149608d2de25b38bd61530302047c435bb50066306402303f82c34cca210d2ec8667bacd3c3950a107b70614ca9023910859afb8627c0c5840e5b71576206a0886e10e50209de1c0230393bdc91d81e8ab2416781de16719243a882d29abdaae19f843511d0dca662d109a5100794bdf4aad1004c73538463bb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300c5f05ff28915d22df52a545183c15a691c1624aa7ccb9d536afb2c112bf5cf49cb3d98c125a9191729ea0dbb112cb930230730e6608e6c3be2eef0522e2b8b3298981643a9e16012c3ea51f2a4d66dd7ab8c1eb219f9bec30ca7e085d484fc160740302047c435bb500673065023100f76e983f7534a7b2e14d38869f5ae7884f02ae4599e03187f14d30e9bee59b0bf829dc810996c460eb020e74f09a309202305ee98bb04a17cc20a0763c36f08a91a2aac4f9661519905dcc61232a0bcafdfaf37d440a16a522b205d06aa66a4e72980302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e1515df6652e1a0959180f0185cdb9a9b2d6de158383e8c7ca36771a23bf4d9a1612f315b6eb19235f5c030ee32d0fa902307e75f1bc90956ed86593d6f088f358d65a29a3d8124bbb11b8cfd8bb20425f9ef764eaf0a1233aeb703610a6ff104dbb0302047c435bb500683066023100df0859e5a844543325de3a9caeed79a1fcec8b0875ca8743d3bd64b57377fc4c12091da7a9c7d60fa71563bf87d8456b02310095c6aa0201d914fcc82733a76efca4b9b1db0f4c1060a62f1330f5e57f381958a25ac478606f734469e3b82e70e3a2e20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b27fd95e2dc01611f693a8d2d1cd02ce85db59f1eeb6d093f9083fe994e7a9fef5687c1b377f61e9c7b9d5d2ae15223e0230286c002e7e0724d95ae2aac098653a4b04b9e1d8b8c8bfba92fc10882ff481077f4f8520a8b825819e622fffd0d2126c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310097f9dd1b0f80318e8ea9230b3da29d503458923837917729f419788ef8298485acf6201da8f90eb5938ba2bd287fb33a023100ea3554be180e5dcce9bd90f1a4638d11b2eea86fa473f5727da1dcee666af3702f2c2f412b6109cc2939a5b81f96aeb70302047c435bb50066306402302a6bc73a4007d5dcd084b76df4f99f3a8b9f1c8b3554b56bc729c8459809763823e05bbb36edcacbd4a1244751233f8802304ba246f245be5c3b07ce4a49edbc16cd185b902184fe1a549748d4f657440a057a235dab17d40fd9ccf384e6c50bedd60302047c435bb50066306402302265109d57fdfc484ca57b085585fc65ee981324d2c531d0e724f9e0cb89ba362e5e0254b8ee91cb8ce3dda4963c58ec0230482d5ae92e509866c3e8c73258ecd6837b896bfb0db5c7fc1442d79a0d7a715ea6d65a47b1b91c17fa57559cf595e50b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310096a870d4f77fb7908e6a3f8d77b66f450de46c44820c76b507aedf6f2480bf8baa9bd5dd3dc82889d0196dcd702dff1b02310086b9ef6bbdf95ba243ee33aeac2e8ef783e553e4d25f158d3b1aa04dd42509471c0667feb7988b8f77ae63da11209deb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d181a0866783f927cc3629229b1148ab7765a3c645b867491db174d819f7f818b3d3f8896cff3a3e6e5d87bdf272f28b023100d3709e07f1bba61a6a13c4483d85569a07f6b9dc84962585d94a1a27a070d68bf7cba9b79854bc91dd261378806876470302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023021d8f1b7b195c0c5350544a99499eaa3b3bef8382aa07a3134f95f8a16b9863c63d1f7d852997ea49ac126fb0fd84be302305688c160bdbea5a9124ae1cfa719e73221609c4434f63db049b0021ef04321d5bcd0ef1a0240e827f340d89661b08e940302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310090d52f4b2f6fdff1a310f3374ca8521e734a0d08e41cda244274fccf25379bc3cf94e9c557b10b6364ae21dd6906167c023100e4da38f99023c3034b647c4510b68ecc6c7d13440c3947d351cf789f41fe23257780fb32e3e0c7b314719437306bd7520302047c435bb500683066023100da9c68240ced030885c3d20909e58327bac9d8c62b39362eed13d5ac6419e4e52912816da808d692aeaeb6e62a9996590231008019edbd6a82d98dbcc505b2a7737ad13185065003dfbf4bb499aea67d2e38333fa79faee8d046bdc0fa98afdaf9266f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c2184942adaa848b5a509a78af20b973f27657ba08dab8fe1956b972e4f351936dae337aafff7301505b2c9515067d670230506e9d344d8044bca0ea85509c0324801a91ba05e6bd0de7660898b948569cfb61f2836a454be05fd8f603e26d59d1820302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023042120fcabf3de32ce64697cd2502c582d48953200ff3d77328ceb43c0659c5b1624cded82c10b7b33d41dbaa6c74c50f0230484b5a605d1869045a7cc6d39b6a6a9d1a6a87cf3492c984272bcb5fd85fbf7e39e545e9c7e8e08b73d0b679f64b05b80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023014cbf28161eb38ee76e943de2688be9e52d3bbab7a1fff456b5f0c1fd2fbc2795578a8d6a3d9d485d6d15327d218240d023100ce837026d5cfdcf7e37536a767bc4ea85c1e1172ed25fe2130f2e0cb8731f2afafa07e8e475a67fa2bd0e8d863c796110302047c435bb500673065023100c23be24b67fa18e5143afa713e8006f59898ae7de9997d8e7ccb88bbaf2347c6791d2e4638931276e6df61789f02487602305b46a4b1d8ed8bf7c7b87c167507f1aebfd94ee0969cfe87bee6a7f4889eb6f8e829bfd52143c971d544dd894733c24e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231009ccbe1711c1d58eaaddb9a31316e4ba2626d0e31d6f2dbc165ed30ba3be7463922a959d7a881c7f048a2284ca73c6918023100d10318be785fcb4e8ec0ab9e7cdc6ba45ca3630f5721a11be4efd6fa9202a042ae523c5728f3b12b69c0a8146467ca680302047c435bb500673065023028dbafa021675e1bf357d798346332e814139580b810bf13c52cf5b93bd45d7aaa478e6585511a956414c799c5bc68d8023100fe72e8c6dc62195ae9305baf0938098bb5dfa284956e377369d6733fe5f7674c1adfae0afc025e69fe2233a21d48bde70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fee3384c5e0e8ae08a2d17061a3d05954af905264a4e579693aad2f832ae736bff6e4c33f8f3c4809607517936f7da93023100ea38d16356b8ad26ea24f82e0934eb5ed41c1e09e8ff1888e99bfdc5f9c732721aecf845c20945400fdab84a3742f1470302047c435bb500683066023100c195ff9dd585e70154c02fb13b14ee9e8c51c8ca6dbe976870036c1eb3458c0abf03aed3b4347122b539048f9f6fae80023100ea2839209b401301c222daa502a8307f7fca43d3afb7f020b8469d0506f803ba6c69ccbca33431cda6f686c3fc528c6a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306a39b9c2f6e68e329d8d9fd7f963ad4d38777e10b91e021954119fc1c822f2b1b6604890e6c58d617e54a94ce159145702305d503210a6f15e40f8d5e24ec82aa8536ed7e640d6efbc38289db944a115ea2f61bd3868452b453886e37541b0397f780302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023003ac52f4931061bd8f09734714007403c9db2f172487ae74efe248708de4c11bf96ce3a757a7bcf486abaedbb0120faa02310088604f178608a5803e2ab37fd531e74bbfaab60498eb12f491d60a815a7bc64d3c20dcc9a5a2fd4ebde8749bd86584860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304a4a6f98a6de65cefb23e1639bf9d0b8927e1da8a494c2f3a369748482d45500398b9c42fc8e661c111fa4f6db08346a0230728055c21b6b6265d5a0bace06e981b487fba99cc597872cc1648e49bdc1d3e921dda3a8172426269dc632f5ebc2c4f00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f865b7d295a245941151f0ff016c283070450b409ac7ca1442119be91a814848764fc7b3f864624f62de5d58af100789023100fb3b7eb9986a70b0946b27ed61121e402a30054aa70871f258bec436d74ca01c00d829c4e92f3fc49187726e907ab5d90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301927c73e7c7960c66493efd4d63f31eb265f6c8a58888f5bd6664217cff64d662c71ff4d7a76804a79e6449edf42cfce02305187eb350653b5f681a408b0db5bb33ab77d044affa9eda56b6dd1beb1f2734d08af77991ef327d0bf74cd4091808ada0302047c435bb500673065023100cd1d2c9e0d8fff56fccdf1de38efb7ebf3f26dc2c07d3cdf041133c249a256f349da5ac771ad541a423fd176d31038420230321ced2e7216d6855935718a33196250b8f6d6578a6c2c495592dc8b6c0fd9c1f564b46b1bc3e8613547547ac389b6690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307967960eabded3fa76d6014b6d504ca902ad1574762c3f107194c029305effd65312ef0c8708b8dbd1211fc6c5ed31d4023069be989edcc7c32e5d4a5a4b3f6df2cb434c0cde8fedac438f2dc8a192cbbce207da3e6c1166f16d91edfcb8f1c6a4d20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023078f01d64d1d4de708e5b6ad08bf2f8c02ab06a3474a64a186d34ce7bef7cee960e7bafb138c4323ffd1704cf5e16eb110230229144a449e19a341febdc1024c6dbbe434a9c5d2c149eea777a2b4a7b82c0e865b1fa5719f403760f4ce6392fbfeaf40302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302c9e696ec393ad8237af886c89067e3a4ce8cdb1aef799f76fa1ee15bde007030d762e907b9185dc6cdb7e409387f9af02310084f0c11cb7b7e4b8d530b0a76f89f6a852b095cc5bce2c0f23593ad0825df74b627005291f23697363e562046174f1900302047c435bb50066306402305163b804aa31676630a2fb9454e3e2f7f7a8618c9a49bbd381283811f25df0a88f1a6dd6d8e310813e0e9f875537f9c20230048888f2d17898ecf91a29eaee6963c5c0f385163f51aab7ee8f0085c39eacc8206f964733f1e8c1a66f7f97ca67bb640302047c435bb50066306402300cb8a6f1ab8050eeb7c7e87bc639acf9e35b15ebdb194ca7fcb1a3631be7f945ce2d49c7b1ebe8e60e270932a702090902300b52407ab870e0144fdb95434aa271df915274f8eaa5c4b829ab19628aefd60d734fb4dc3c51b8d661ea6ca4205498ba0302047c435bb50066306402301847f890329c2d47655cd8537574bf00c5b6d1131ecbb47105bb99545dccc94fc3f7dcaa60c278f16eb99769ab98386602307ab2e7dbdfb543f2cc94f886bb68c3a6bd1bb7f440242d54b703318d9f38b96c606dabe52ea8107704454b56a6090dcf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023035abca5f6c487a812b933e991141a572a838e77f1ccda1dd9d89ac4cc90394dfb0eee7d16d31dafbb1c94253443970c3023100f01a95e6f95a50089523f5d2f6c32271609fd4971998e886a2453d433ebd9ff8fe265bbde5fd746b4fcbc1a6b0e2d1b60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306a5f8accd568d8b304fb274c14acbe6cd45c2885f9fc8e2b3c61de1b4d9dc3a1a00fb300eec1f5edfac4a44e9ed4a60702300c3e2ed98748d03a033cff4645e9db5246f8688e68c61097529581f4d27d9e2ef386c8b8a34c359053b2cd3f3e0bd4850302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023000835359d84c3311b6816a228c3b5d67b8213376cecf30b6d514f3d47074f11c05a008846c2f9d2bdf1dd8fa3fb41b3c0231008ad90d4649e05e2937aafe3c16c453e57c1dcee7598dcc3f1a441a5898c327a4802d79411eaf456ca624287fd68f3fde0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310089e0fdb128447282a516b478e808ae351627b531169049d78584b87abb426472dee9fba426d40375423a10f267971a9602305d4257bd5c64d779eb916f0aeeb12495468ff9be1d63252c2e7bfdba10f37be2d662a9d0e53a4e2defe64bf79152eb3e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304e4a6e540cd60eafa7e9ea8550cf25e8d8b118fa0bae5ac1166542bb0c8e1d38720b66d44664c65156cfe592aa53ef640231009eaa7dcc0badd07b84ee1a70d53669aef3d7d837dd558a073f4cc5b4783dd275e2b558150952a32548f7a37f226e933d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b5ab47e8536b12f314721045ce3ebb60c215b0f52f5f32be4194304a853c50bd4692828a9af1b572882d03479f2db063023075080234a9c8fc208104c5904b4a2c0ab1443073876939861d029a8e9b85c303f0593c891ba768171865eeb2b1dded630302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301382ba28fd370dd9a52c0ac2a5d43e270209c8a83be11deff4f1bc048d5e4a2d7ffc29a076965b3d6b83e4d81acc6bcc023100fa59395c515581025e42b570925533b9457a773184e254fcec5b6252038f3c4ac781623d98187babda3c93d2182f37320302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b2f9fe358e0dc37261b68046bf70c73547e19919f4686d58638400f3ad7b46ce13941b749873237667195d5793aaa8940230246c172f577dbe1614771260a20a6770aa9317ca12d201d84c85e5ae204b5c00ec6f18eb00e05a9c5038be55582577560302047c435bb5006830660231008d75d51df939108b453959cb7c1d33185e9dcf414a9386ff87741a482005a9699d0fb6a6f6dce961967d1bc4213663c5023100e80a779e2ed590d80ab7cc10493a18cb8d42125a90db1feaad333c7b93bcc1af0a136854960d935ac8887af00f849d1d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023012e88a91900bd36de06227efa6aa56ea0e32d4bc4bbc61450c10baab1520d16764e9e67744724c4977e2676d91c2ab8502305d7bb628213868fbc4dabc56c1f9cb2a413a29add0e3417421be314bdb85cb2a1847c66a8fa8fd04bccf65fc2fe3598e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230760f51351fb84bfb710ebae2aca23cf133f72082305ef0229486ea86616fbab2db58746a8e2fe50bad12357c3cb811cf023100bc1376964cda9a6765e9643fed75cf137f1213298426b574a3bfbe7ca4e5d006b0c4ebcaf38010638e488008746977860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f22ceb87719f481e5216faf8e15d46ae09d3770447bf95cde7fcc42ff18ba8aa72c4a2518cb006fb3059448129b916c10231009c4b3fabfbc5d8e497cdc258188700035291f0a675c8c5867d7757e9b283bec3a44534ddb342fd23e79dc4e23d8072c20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230374517e847e8b9b440f5f99de10fefa4d6598ae8ac9dae663d9b0e3571204d9c82a827ab55a7136aa735474705a19450023100f38a742b846700ba8354c5716f3ef80b07bdc034e30ad22a83623b51cc36f3022d5c7867b8077f8d725122772aa737f70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303537d1e28b5375509eccb1a46e82ca792c6899f9bad5e9f8be6887f65ae07b3e500368c738e275102cedbcf7c1d9f22602307d0b997e6ab433bb26210e15b15d7218abb7cb5e9fd339390d2d237b5357f8df3062ba2e573de1998e8bf85726d9dad20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100fe836c09bb2f179dc483c6ca7fa042179300c5deec70381d99c7642621e674be3e3796b9d60ed26751934f22410b23b6023100b3f530de4a6a954da865e010a63517a7fc6d805a66dc8e387b3d780efaba34a2b613a7804d37b1c79fa828689001f8130302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305161c9d00f0f3256e483e6530a936d446309905441e9daf255f1962529cb627431c1588c5811fdc3a8eef73b8e1b2221023003f221db43f460051be35a11b11294ec6e17b184f99c40b06bbfb113cd3f14b2012d115e3f2edfba135dc20a737bf34d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302b4ec5228ee084570c251efbfe236d0c54786a809df364dad828bfbd32ff829ca4171ebb482e499ca694d8403ecd208a0231009a23fd0bbfdbbd1a26de9ccdf5dba1c279440320d015c001e9696f47b20ccf8bd412ce7fdc3c82d206302c8c3272d4b80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302f0a155f84c70213a7af65c40bf1717abcde5f9a725c728b79e9df352a751e627695e770d5d00bf5420cbbc7febb996e02306f27364b121a560153f8cbeb3f4cea2cd2167395ca9c1f3a7bf6bd97c356e6c796df19734f7337cc7f1bd273a61da0a80302047c435bb500683066023100880c1547fbc9f6e25fac5ddcebaaf10982a02d4eed910f63edd7ee35a59b8a39fb5122453a17bddc0404d1f408176b35023100f6f11d1ff242023b19e19a918efffe6b6caad96a11a278e10d985a7d4c73e9cbc7768e3e932e9790bf2e1e0a8d8677ab0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d6eb3217ba60c830f43eb6a64e4a1f364b3b90d5c4c2d350f6d5d3458510ba9109144493dd9330a05c4899e5d4f3721a023100e9d3c99c253edd3ee8cb4c2ae715c83404bd844f44431ef03d71100ec14f1893e8d786e85267f290298f0cbbd357083d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f2ef2aba61899f464370e9e5334ba6e758968c399b83d1f0bff529b5740f500d9a3ffecbfe490e490cd44e775bce3643023025ac659590ef97f26bfbe1febca3d6fc279d4e52a50188dd15621cf764443a1dafff4dbd4a9cc3b89c1f17d6f03fbb850302047c435bb500673065023100d82adfca4695702c0c62840c553cb175124cea97503f2259687f443d2e4ec7b7aadcedd9a03d21af47e86f1f99d9749f0230185cf8a030447c49c47427cb41e2af0a533822c3012029ef45193746d6910c793b7214d89459528c10bec4296c80fd9c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304bc81995cfaf9f59a5988cb4755f5461732b7635d80d6d7fed7289116598e52b1dacb3618c4b8a15a95951bd7c4aef42023100c2f4df5e3be546a3c0e56368eb8709cead713bf1de8085a5ecfd0d14ad5460099ff5471cd74e0c3c4f154ae3589ce6610302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023069b0b392515e85f56e0a23e069337a0ff662c4bac6000e282fda74b587b54551a2a56878c9115f315213f033e5db95c702301c05268eaac78adcfd1e8b20efbd8e5c98edee04ec86a9a7c5e8b0e7c779dd2c11397e7b8f0c8654a3910865bd3536300302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023061fb3fac19e8d274d4d79eb9533abdf3066334f1c6bbb547f17dc084056e4bbf8560d76851ac41a5b06d0be6e21719b8023100a22c2f7d308eafae8729df692be0da867d19e31efa687952db9e2206a9d34c0821672de57f13fce533bbd61f2d9299b30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305ac9b8ade9fdb420ec75d8dec45a3ab95e674ec39456cc96b9e8f381f4aad1e8f90b84fe8ca69557720d3407bd04afd8023100bb7eb84d8e95fa8dd02a72aac45e74f382f5c441b0de511705702a41c8aae86b0c4ef62a31ee517e0102b4c9263b3c210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305537654e3108989b9fc2f76d3b8995b505116706c0e33aa73be66c7e0294573b5a4a7f5fb526e1a5b3f52ce3e3f3624902304b90123620a0e131d4fe7676eb8563a9eae935b4bead1b5b342a31b4f5ee007b198db7957f7138725ad7b7656ecc6a600302047c435bb500683066023100c2600973c5dae6f30c8a12a118081e0642a8ee213d3e6c44a85007bc6fca710435157bf5303b772619cfe394213cb47e023100a1d2426b4e1628056965dadecc9dd9e18d4812e3ba0f15ffabe8b5ddfd863f8847d2451269baf8bdcc9891696928e6ac0302047c435bb500683066023100b78820769de0cd8dafe93931f212eb5cda0f22dbd5d747ade0a7b426f3c2a34449ffbb07bf7d7eb44efb9454b82af444023100ac02572640ff595c8226ca2404930a1c827ceb7d832c1e7fb466eb465e3c2794a015dc31deac6cb651c5f5be5db3bbec0302047c435bb500663064023021446a0e42588af71d009ead1eaace4ae5942f555786ae7ab8a0d9bfb95eef74cd08362503485b8bbd2b8297b379923402307ad8942ad41530387d80f4ffe8b4546765e8e3282dfc0042ef4b016734c6301d973674b07b93efaa8c08072e628686b00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f351f97d8a05903617eabc5188fbe8e8ead54b22b395dcc0cda8ebb86a7e606c47716925b0d9fc1733cbc63baecfaa8d0230061e3e70e12a8ce02e4b05ed14d486d3db8369341a3f0e85a6f615705243f1839f8761ce6bb0a14e00e2329eafff86010302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e32eedfa8d0022bd6133fc2002b6749a90b3b16be546a2643b6b3e42c830e760516f16058727f05746889ffc2bb2cfaa023013da9c6adcd743519b8936ea5f2024fd367eccbb6f1f2301485572416482df27c1da455769ca42cdbee43a38778b2e270302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d558f1b5a911a765f2b09e7c2afb97efbc60113840775e65ece096dd27027f03f8c8ce22d1818152efe130a43cbca30c023048250b925b7a1750855b309a1424f48b28016598a4e63c1562b21c6f98b64e791c63868196d0f02b6e658767448a55700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023063632c2a99a3ccd370d5048badff01cbec6129756ba0b52450a490dab2eb6f54f3be1027f96c24cdc815063e1a1e577702306d52c9a9a39afccff4f13aa52ea86e967a3cd6012eb0c105301b4b44827dba9ece71bcb5bdc2ca0b9f877ae9efad714c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f35510133484e061f8b8ff9cd2fedaa7df9fbae8ff699397fabb98e1ace0b20415b22432ff0942af4cfa9c5dc57a1f2d02302fdd48e76b0eaeeb58d90f96505ae83dc1e331ec35e68bb51690d1388e1d10c7d3a9cf213776eb1ca8199d92d3ac41270302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023072e09d7dc4f1a77ee15271d421580250df10744ff087eb68ce033019e51267d22471c28566500e07bd8c5d69d2b2ac3f02303cac7094436e03955c7444a7e468bebc4bdfde36c89e7e0279d33c306b0150a04cbb68a7a5c906ae645cfc1f8093f0460302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d558f1b5a911a765f2b09e7c2afb97efbc60113840775e65ece096dd27027f03f8c8ce22d1818152efe130a43cbca30c023048250b925b7a1750855b309a1424f48b28016598a4e63c1562b21c6f98b64e791c63868196d0f02b6e658767448a55700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023009425a60f52ad223689adfd6f78e09602f9cc2fa9a8663d4f37d58a9b17f12d2263ac5228fa0e33db55e9f52df11a38802306ae3c84e946e0794ddf7f8135d252d8350091bb513c1ad399fab02271e9270eade57d257a39d1d650f2d37246a9382b60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302cfd7923c4a4f2dacbd7d357128c0d451d58c0b47d1871963c52c0777ad55df7c8174b292afafdee35496bd0160eb4420230567feef57c56561b40eb4b598cd0726c98723c080bbec4edfd317dc16d64f0ee247f4f9bd679f453e825420c745a7ac80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d558f1b5a911a765f2b09e7c2afb97efbc60113840775e65ece096dd27027f03f8c8ce22d1818152efe130a43cbca30c023048250b925b7a1750855b309a1424f48b28016598a4e63c1562b21c6f98b64e791c63868196d0f02b6e658767448a55700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230644a6dd709bf17e91ba22fae5ecaed144ba543f06d4aea9111ee3ca617b2e27f2d40404847ce6874bb1f8a84516da365023100da06eba53ba9b99395a5b13221925d1ccdf12ca37587f84cabf421fa3acda09f38733778408c2e0e9c1f0421531f30fc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100dfa1cfada9f4005b558d9f250c9067371410af95af622017318c0e544cfce6b46fde373ecf5503cd6b38d479d7f2a29402306e136951473c85c5da850cf96c5d66cabd7ae9ae089181134060c9293dc1c1af0545b8f4d4132350fa479eca62d52fee0302047c435bb5006630640230653ddfee6c738b8c2b7f550b02f377c9aff29439e264da387e27b8c79178c49d2866c5097ebdfd53214e61c7a8ecba7902307d08f9394cdd141523b6fd711488ef93c801b2bb857d73ec4a9bd0896e5bbe85d11b70c7013dad4c8a9a162de07ab4870302047c435bb50066306402302229451855fa39cabd46a6da7cfac634aeea5430eb4f90cb9af694c845ea7ec3d42eb40e12883d4d497d6f68928a481b02307ff58216dd03fe022d1ac4fbee761ba3f4dbb1356332264dc547677f5fa8eee3e72561aa3f562c32c02f714db3ed8d8a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bc0c78676e555cd480b0c9d32b39d1d397255a6ddd3949e7252cbcc41ca72b633cff60a415f9a388a68f1a86f633426e023002725bbd4bc541e63dada7983c5d9132ea1f709701dd111c53c1a694f838bc65e23a0c5064f663bce3117fec5dfa6d530302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306f902202f1f37bceeca7510ed166efba5bf02daa6acc276caaf1cb6398e5a3cb1db0d8f89f2fa0c3065cfafd2ba1eb45023100aec2c26c09e190e37b2954d2924b753eac9ef3bd8e2fb8b0d9b19bb3d4d9e186e192a2c2a550da37f533a3a6799b02950302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a96fe486b0c867d818bbc0a6a175791cfae7f57d60f6ce8daeb9370335b2d43a438f5508c146c2f4e470d6755d6c75b1023100dabc9cd4d36778087e6a35725bb4f0ae3821b3ef03ffffdeaf9a98a539943f6c758d508d9c04cdda54442f212ddc6ca50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310088b4a38365ea822ba19ea696d5b68ec9c01b0b4bda5cf9f1e08e4073b0d8814ede9e42fd5d0c58c53f90bbf2b0faca9b023057ec383c43a28c02ce2e148ed350eb5dda2276db275a00cea37fd1dd25707c8945c69c7d39b699b65584d47eafd5045c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310087c44e61f76cccfb29f778137f23ae1c2bc1d61607a67f3d61efeb7b7e5f5c8a1d269d4bcf3a3312527e5a5c0a0a358802307f75e95d59de88b29440ddfb87491b6a9b7b124865874dbea2ed952b90b2397f0373848651aa56624d058d75e60137360302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d02108f26d9baaaa420e96799df37d15a296b0dd0220abcbe6534e82f231ad4acf8912a850d81c2c229d1faf1350ba2a023100b7dc1ca579bd5527cdf7466c939e1402b6317f513b9b535c5134c70ad09d2ee9caaeb06f34c0dce3a930eda5849afec00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023020b5bc259f87d3d0049b25adc6675d1ae65280ca3af1d340ee989a6cffd658e1b57f0c69e1da78500fb39aa5897dc84802310090ea6e13940a1c3739b668a6ec92dacaecb925ef08004883c39c1a4e6bd96c1e3ac508fed299b78e8285f38ee78d74b60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502304d811179ded15a226bc49a7a7034d8f175e2f3b6ad5b6aa2541cac2ff47bbf5993c4a413a238b88919fda702d9d5ce07023100b3d76c8fdd0f721562573d995eedeadcc933f096d38aacfa589f15127f5de4f0d3a9bab897fe69bc1706776cd84913a90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230418016bffaaca82e4d577b072174ba4eeed867c163ed195cea2cfc7b7d89945330207750dfa502c40cb09af398e015bf023100f049a94d893b196f3ee3622e330d0f2b722b12b14b2d5541074a18c738b23b9cbeec944593f114aedf5013523f1a8ca00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100978ce9c4853433101f0dab607db1102bf8487bd825e1ba335c615399846d853ec5edfdc382f250ffce9b97481a8d72d10231009ab0aa0a8e019ff637f3970cb429bee9e10bfeed14714d8c584a1c1a48d791d0a2604b77c078fd4c84033fa684c0bdb30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230129940884bfc5430ff45f84772778a74eb96e1b155cdaee1a73dcb09c10fee3bc0c334966008743cd6933c54be502d95023100d45df81f97f1819e1d1a0f14f15c61b9a7cda9f03e9b29ce712838587d685cdaa181d2c109d9067458068bc1b79ce1130302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023036bdf4b523db6dedacecd9c967ccf8046791571a9ffa8be0271164b50a5660a3b8ec3e706d25c20b93f4f9ae0fd9195a0231008afb2934b542245d25d4109dd36f601a3392de09195c5d04cb79dd1a5c2ce3df5364fe6e9efdaa01076f05af1678eb120302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230738f741635a021b6addf672625e1e46c5243a44b472672c34c7bce715448ad5049868d43c9447780eb43ff33bb820b200230341b54a6811d2ab7e5a217f0bd874f4f21b8905bced84cce4176e30768ac67c5fcf7e3d97d6fb5b0c5dfa3d022f911210302047c435bb500663064023003a280509b662939ca27077e17ad25c21f999cf0fe17b9531888fdc907c1091c0dd5d102f3a378f7c19601a2274b1a9402302566f53811eafd20d18a70e715429ea49dbb985522f3b46e7b06128839c9174d7de167764137f8cf17e01a4155c25b910302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023036ef185e6c9da54ad7172c2b8b702a85c0df2eb71f8155b1c3d44b183a315ccf5ff692579066d06ed341ddf879635aec023100de8011d80ebf190910bbe9e738a8f460f2a99ffe97b17e8674155c684cf65d90fe408601aca5e8f72472f325c1b936580302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023076841a5ffd169837ca235817fe154be0f47941b9889a627c07322742f446b8a369cfa8123c905d2d58406681bf3204e20230616b900d54e56fef76f50e7686b5db20a298ec5c3df009a7d3375e209f33a6667b72526041fae81ce46fa67fbca7a8860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230644693c9724dec5f935a96435edb9281613857095240b4cf6d4ed26055fd03d3999455803c7e09ff38db0bfd7982ae2f023028e6d0840f7bcf312554dde582aef4ee01a4eb4b5863bb05ecf05f78b0bceb6ff1943c12cb2a7d83cd2b4393041ceb0b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302380bddc057d05a12f8e23f03c6bb7a9921e0bc67a60b412975a27ba0c0bcf375b15ff75e48db1df077e2e170bdf359a02303b46b5f9647ebb9d5da8c4a63ef5232f93df4ae045a7ba3021ca9a85f430f8ecf23b883db25982f09a2f5a4d45b9fea30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009384af04575be22fbdf6544a4bb8ce6f6f6cd80832c4750547b854a79b2ea52d7a4b741ae2eb2a2cd2c6ada8691a800f023017a507a65f047c4d1571eee512251f28bfdc6645f7009203de49aeb182893f999424b6aea43c112ce6b07bb44e6cec190302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e4cf0d26043999770c5a3e111ba6fd4ca24bf7e50420cf6059e4081c16c24e9a4db11d3ea7885f8827dc51f749307ebd02304d3ef2bc208a44d157a1ed38cba27e04b5156a954d6e39a7f4a52cde0b60a2880cbc16df0b43d1ec806fab71e7b27c550302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306c72f08b2b8533097efd4b5978cd5f7453d85efb0cd9e025e374e3af06daf87a77a938f244a213e9cb664bbc1cbe17f1023100d8b271c9cee7e81423834d239f6193b089d4ef302d6d5fc04fccc6a1a1c488ca3c4e3e4adf23a9c1f47983aad8ebaab00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301c74c429b94a5935420a36f233813c1a365786ddb2e0bd9209db07a4348433283eba5a38c3352e9f6cff4400c2f31ce90230024438d06c2121f50bcc38f6c8334eb0122ef8672821a5532d356ab3015160d04cedffc8a54e677354014a8f6a75ba740302047c435bb50067306502310092849450313cc29a2c12892e330a1acc3f3e11233f424b366a3d8b6f6dd671a86c4dbcdb08152249254954153e61250802303018a057e0b51a8e10685e30af1c969415442254136df005d41edb3a9b4105d24dd8667cb29a06d858f94bc64a62d7bb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ab3a667f6e00c56309d849e6e0d2b79d5ca7a8cf4696953e60c1dd5ce7dc16093f333813a70d570cbc5551077f6daba20231008dbc6b8451e6077080c78049e8dcca0b3d374acdb77c0c9bf11f938d3968de883c3ad42d6811bcf33955e820b4ab20810302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502305a95d976c1601ad039b16dda8b485410f671d77caf459d862dd5111479321fc6387fcada889466930afb0c9d402a96e80231009069c5e0a59210d5a526adf16dd462c3673b3a59f812bca9f7896a5c1e55c3c2438b6f79abd23da77f07017cc5cffb410302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ab3e670362266c9e88acc12ea618f67910262bcd5e8aca2c57db01773a73f8bf746c119415d15659127d2ccf8818d85f02303c7ad227d2c46d8bff677ac63353f20936ddd1e01f1615890dc8d55df1232fc16e0df4fb06b6440d150701202dae619f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307f20842bfa3621a01126456f86e60dbf312d35c198960968a26e3e8f9c1127296fde78a187c19876df4992cedbbe6766023100e215af1441581d00431e2785c8d87329d518602508a36f2028a07fda5ade40af770837a1355cc4ca2a357c61be23143f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100d62fb01d91199dcc8628dbc750c87711bdabe65d7989bdbfd3770fc89551a93f2c546217094f129bdb7fa40b8918bb9f023100e2dc4ca755ec42f481c79d1bb5c708272bcecac16a7b80910ab951c620806bd6158491ccfd72d0d9023807d65a7559b10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306576db021f2f62447dc98540bc5a1c650047a41b9c0727b68fbbc543651639acdcd566b83cdbf6e5773a4df6c41ba63e02301f46a00667b455e3f1f30677e9f1495195d2f9298178968d7abbab7d0571bc26aeb7a130d864c98fe70dcc3d11fa69cc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ce456dcbc43a5a58ce56e7185fa8f3efcbef5ec136d2d022873690b7a465898fe59b5ccc67ba3f042d1f642b20562f4f023079699ddfbd2b6ec3273c7a4d3b6100e2bc571addcdae83034795547136c0c3e057a3b57983af951878b89c53d97d2cb80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009a85364bf34b3e61e64dafbadacd65e91f03ba2aaaecd660adb0ab00a0d0571afe14a66408653a28bfac6c44fff96ae9023045762fe06d7cf8995f2c49866c61d58dc1b40134fd5a7d4d28629c4d5e1c73298ea165c8008109c38909a91e4f6e96df0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023071d2dcfd166f9e896fa4ae2cb28de31bb9abb407f25f1e9305ed52ceffb17a42c532f988bbc7c5a2b57e4257ecd2a618023028cfded9a18f6a4ea8944d60dc21539a36be25833c318c4fa10def5751ea7f85be21ee30203f191ae11e717c30d0f0830302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230112cb5b08a27de53f52a09e23d17fbb0e8659a1405f1340313ec559518ccef5e60dd9cec7112f7a56821829dbf9ba767023100d274a146cea227302264b512ae1d383b2bba094d5b4070809d65fd732adc932a3824179c9a94bfbc34b0c462f3ce6b690302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100f9b40fa0104bac0a67e36a5a14271136b6f93e7b92cb4f5b129ec446839f64e784004cc2d06e9bdb9f83eef3594adf060231009bf71d478fb1ab8e5d0f0f7c5615e8c7ca91d22963b76f934345aef62eb20c32261b879aba2f4d055840949175a542cc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300310f8baf8a0cf2226e6e4217d31da85218916c5e66ad3eecda5e0527e542e9effdedbfd1f06785ef49492f7ffcfddfc0230507d972ccf4287545e1146909ae99e238ca975877ec367ac49df9238ab0c3a658b70d202eb695c97ecd0b06ac258cfd00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b354139f70f29b4bca3406ae28cd431ca442b477a49c8d23e9229932377d06e8333a802889e6a7c5cdf2b09b054ba648023100d460ef3194483b662a728d7a0286bdb9025abcac63832eac1c96575d418501b7b428cb5385de82b2abbd524b6d6fb7b10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301cec260ca10e9faaaf22739b6f6866d2ec71374eb57aa67ad82c084c5ae6213e7f6a7d849f7973b5a2d09dfe784f2500023100ec22d1f414ddc9d90094a9be1dde9ce23478114e11dd67c824e8e267d5fbab87168cce78f111c8302511f9d9d0d8aa9a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304f43c5b7ce98dedf294ccbcd5b9736996460fdec86efe4693ccdbd4d29581fd5da4116eaa335e422fe4618bf196910bd023026787f871af5d6643de78b685e7dcfa95ee5639c2827aab38691fdd0eeb11c9f11d161d384893570f182ae808c4e45120302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230345baf804722dc165476ee33101dbd1782b3d8c3f1418513ecb66fe8e2f2ce114b76134bc9b1857c9a5b49b85ef30273023100d9a841a5a42b192e6053f383d21b34a65d30c4bb2c7de959fc266608d8abf6d374ef62017b2b17af50a8fea8dd6dae500302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100863964b6373f266a5d9e9fb9dedba55413beea3948f743d03bebc957c192682fb4c34dabfc323931ed3d032a717062f602306ecde4cfbaa7c37ff40c9fed0118bee5f23f7aa1cf125e3493031921a552087122c9f4e12c7eeef858298ea98da546a30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f8d22d240e6c52012798efff91414797d00f52d965de51a1f30fcf94fa01b625f0a4d7f9ad3402c4cdfbc84a1b6af79b02304eca4908625265db5fb51bc97c33f235c209b6fe17c76e1e2c7c1ff0262413e32fc01dd28cf4b2078add8c4a30241bb80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100c2187f4dd8c3a8df74197e71d8544cb4fa53ca0a5ba361a3b50f23a3240e50ad546209f3d83d3ff7d4a0d9b5cc34156d023010ea4905769b3633741b6b7ce62e88e04e56008948ca5470f52827d565ee9840f393e9fb93462d547b973961d80b34270302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100cea031e4147baa25f6ac84666402cca1e97f045bf132dfe7bf364c01cdfb002c4df52f0ee341d2263f07b93c28e0f95a0230204d5a32ce568d03239e5fed6466fb99895d26098593aa89b8ca81d39d8f48e030f74545fd3970e44da6fc967705f9740302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100bec0561e6bbe0be98c282c1ffc91c2c6cbdd46c0d64be65ca5544dc8dfc78641c4c65315d4d0324be3bf7193ac4fbf9402305046306f177f7721d37b7f06e77bfc5ec339b63dda8ad9590019d38ab62c3e1e9b816fb0ff3178f40cfe72f59d8f3dc90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307948ea793b59aefcb7b11c5147e9906d0afd427d5549151aff07c925281d6ec005bcfdae8b6b8772d61205e680883022023100d9f3cc01fb20e5498011d208b7384a7ca4346868bc408ae424ac74b2163bcfc859e469a289ae926b7331e6eaeb139e7e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302f506d8cbf4b455f346e695369e50494e700744126e5a1f7661db87d741c59bbf303a914bea8990c82fd8740c88d7e42023018f6852cd6f2bcfd4c13aa4fb842645a9b01604f584544fd6ced9b65cb86c746c93d58ab6c6ecd6d40b7a1a3e72402cc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e0b9d84fbe5343d4c4d62c641c84e99255b3d5f11d2a23a33a076566ad1d9b70ff0c3540bfdebffdb46cf3cb61ef43ee023046f2204ce18d8bea3fa44fafcfa734841d9d35761da53235f533c3887e5e9d91ca8bad150d684a8e3bf6225a14f928d00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402305545b620688f9c29cdc456815a6abb41f4a68d4f9f4932e1ec7163b28a24683c1f88a09d7fc2d7c2cfaf2077a2e9d473023001f797c3bc40a55ad5ac5e998e13724fa84fbceecdb5be03b5bc0de6bfc683198f6a7998d15d226f0c70f34713cdb5d10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fa74dc241ba9675d1efba23bc48b7c9763174bb59f56733e5303ce0342e1b9ea772523abf43b1f20bffeb34b6666b26702306bdcfcbaa24cc2abcd8fb2f13a1bfee39a3562e825fc3625c07946f5b2e37f7bfdc06a932c3fd9b0d180dfd32df347d60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023100b318d9196d4919547a627eefb16e93b32e2ece4c0143cafa62746f65e47ae34276ff8fdbcd226261883ed8202e5ee1e4022f5f667dfa098ab3dac75bdf4bd57b2495abffa85791098a88725e435a06fd3e7e7ccf37063122e1d6e2f9bdc9e32cbc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306f4a3f63bae56aa40c771c4fc099f2afcd22ac9948b0e2c0ea829d444f935e449d3ace1315910faeeb47f3f4a921972302307fa4492e531754f936890451693873b68b7336533bb5e115eda5b110d00921d6be76bd40b73d561a32c058dfe4eba7ef0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302283a23e446fa8c18ca55e9bad579a2e163639674e401b76ce63c55a7ac3ce7ff4cf4ecea146da695fbcf11a8b54bce80230319a4a971fcbcec495b2c9e9281dc0f6c84aded4490248a65d391f3e7fd4bf700fb60889ccdb22587bafc84651d918710302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cd92283f027e17c97855d4dec46f0f32fe0defe7e635a8c2cc74d11ebd1947ed0ada508eb20100f2718f229f7e4fecb0023100c8dd2ecd51e4ae6b393070b041dd904a81f3154c459b8cfd509a0b3bb7e6e5423831109c8f24da93c9e2b5fd0ff9ca610302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a55d11153dbcf0890251c1fe9f1c832ba3a8797bbbaadde32220fd13bbd48d1e2ee26dd045dd152feb69b6b7704eef5b02300b0748dbddf28163b6ed7deb58b30fb077b1f61fad8781a7ea09922d4f4fb39451df93257fb7344239ee54a2c2928e560302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023069d224995b715bc9dbbdedf3bb2a368cc1e06787d323ab6400c3eb871f20f90f6db60b7f2d33425e41f385d6667562b202310088605018be9ef3ba7a9324b233ed90d776a22b54393a639b3d3642446a7dbed648cb53bd37150958064ed9934602937b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230303f1c6a75db0c8b3df285d8d0c5ef41a027d3cfcf86dc0573ead795a2d683d9a0e49072871cde108f2a6b0f579ace7e0230164caf738beb1833e111c888c0735e6ee9a1a1609e8d3e46b74bc4d5f084b69be7486c6f1ce48eb281ac4a4037cc879e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023042c1799c71d888268a89646736cd65bf00161d7483a85e78924fefb2aa0b3562881042a1dd4d16489b3fd3d2e5b1fbca023100f8e11f257d48503f5df97945b59a4bb4a490a2281a297e42b2baf835387d57420ab5d1ea2e1b5c960d162ce37174a4870302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e803eaf7e37ed55732fd20ae636cdd841da6aec46ff80716054dd217d3a6dd8fa84d128560e63fdf229819c21ffc893f023014d73a70272024cf4d741de7b25f8334a3b68e1f4ce51788d89a2659610e28800f736358621c8ec94ed6a630694b40b10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fdb437881dc1b0fea4a219bd79df79a77e2a72980345710ff3fad3a5e64ece63db1c44855132d27392dafaba631be0a902300309491fc0183baf4064bff09bc74d74d0f842795b610d8db104876f3d2abf3049d13488b1b5b30725216cc79f18b4810302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230150534c4e570598d68550823ce8fec353e4008ead6f445f3a474ef1435d5092f6670a22098432d32fb54655daffedd8d02301a085adc45353b74691d11282c1517c912ee8dea9bbbd2a022a76367a616f798d1629c7e8693d508f7ba2cfa44e968890302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c356c9dbeac4fafd1afca40c040532af43e21d33898a67e881b719e88c11d3c225c838c852d00f86539de56b41d5b3fe023100a3b2bc38b0b4f4e260aae785a4257338bb98508dfa4a3044547914da4406348ea47f197ea1357a50ac9325affd264c880302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302225b91b23bcd51aebd71bcb0841b21d8602385616acadd0ad5c2061e48c4b1349b975304a734f05828b8f46e0f5e497023100bdd18e1347569b150f02efa28b2fb2aed5bd4974dff962458be79c7d8116af7c943c3c506ced2c0e0d2025815e0eee560302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ccc645d2aebac4e46571858783b5d5b056862a670fa7fc26d4ee7d389274764cbd53a056628ca7dfd84f1b17b9f6deb7023100cced114e7aaf45e013a1da58d47370ae9e91caa79254ccbd39cca4c58f45db7318a438a2d56dd0218b4e29e7b0f3c5b20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307a30441f6d2fa5d2ad92484da9f4145db7b406754533f6f629f30f551309ae5f497a6e6bf678a348d2a0792f9af4a54f023065074d5ffe7102dd17c775f2c330a6d308d423d9f6174c31f336e48ddf672906a13861269e159cb0f35abf50484affc60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ddb0bec34329f8045bcd3371feb0d1453677fca8452f85edea77929e8183d49220623d47d329b81cedcbff75829ac5d4023100a63fc1a59d44e953337f9c276e5a6c4b8a1582227fdc745362de4666560d3d990540ab8508cf1b32458e8050f5f593bc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100ec5bb3d86f3b9c200035482144b84e8e021fad531d5a0f4fdff642d6a4f7f5031a669fece0218a8e62a401350a971e800230208e18c756a20446c8c922a12d528ebbb7ca126b759fce523719342a30f8fda69810225cf418987f02f829d2eb6b90cf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023040436b63fab44966e1cb2fb5521d91f82a9d162a608dc95f28325d89a47472b8444d53b75afc1c88df7f33897c3b5d68023016e8910ba1722cf01a1e1cd7eea52fb9e8b013bcc9250320427cb05232ef313f1a0f78e21c14325072b8ac808fe9591b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302ac56f504386058b0a72eee11ad85a8cb6886ca6b4e58986478c0352e427a28c90a55411cab20b9bea0fe269750006b402304210095ff805711fe3ca4a7d5a6fcdb39de1c17be0eee1e2701607ea91d63963caf8d012a866aca1be18bf18255574c20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502303a880673a92ea3eae391ee7d0f12ff56f0bfd497ba2c805381bde99ffa09a5131c34ce4b87ba23b27f006d3df125c6b40231009d59e0e4c7641ca7e796a6435c2fd053989ae60d11c73ce778c1efdb231bfe3c2de65e6f82775c34b284091b81d621210302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502302b6a312be1acde40e7f39da95899a9c7160c74f54be0c6c3389bac8cd2146b0c7380a272adb91b4bf366cf27034874ef0231008b1585c93fb2ff49549e1599c770a4e2873f996085723ef7a68b5188965d07a873319ef68f9d342e6516b6c38f31ae980302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300829fb30fe102c039b867c1c1a531aa6ae2d3d3a983c0165440e673255a51501d4be9240d164a51f00e2ed40e4170624023072e428c625e42a63233fee94996c526e4e847c6b3327ae41c02f404196a2595002bb84f986667176ca7b8918b1a059500302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306e10e14bd4ace0bb54d73f24c493bf674b54c3c92f298a067a493721e4a119faa759eedfcb19c53859596f3042e0942102303a6490b8ff51e6443abd5100a6f70927ce7181916b69fc9428297869a4c592a1260ebc50f9b842e3e3c75e163548a77d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023039cf3facc9c1110994852f9543ddaaa9644a5535c5c1e09ef1c40c1c8320f018a786104384a60fb514df2e25f8c1efe7023100c1c3becbfb44631af3483d53aa578dca6969d9e30e9a8c9ae237555ca454f3c1a9a7f4301f4e33d8a27eccc1b39b33040302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023000ae6b490f20113217200ab5345873ae8eda9852be5b222f52c0eb2beb69a1c01610fc6c730656606b49e7ff59350f7e0230161ce7ac99863e0790f88c485c6de28d1bbd91cf34d1f7387aa2559bc6e6c0581e901e63c5bd50484a50e347bfeb7f050302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023023384930d491929216366018a0c3c0f5f0aa893ded799e872ea079016ae2cb68bb0aed150743e29a524651f1f66869e7023100bbff5f3c04be00f385d32fbd2fa59f521ae70b6a69ec81517b67eba9bb06e993a20fee9d9d45b50e6c4b8f17408e7fdc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fd8fdfa0ccaa663b31171772e00e1cc4a6166d814bf2db117926ac49bc8dca3e5cc79f9e6c18a9d7eab63727847e462a023025c8c7430915b9b9402d0905a23ad9d9cb6c35e032aad83f62253703133f30f33a3b7b518b2ba5d3541dda628a5bb5c10302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023047d40c723051c41629c932c7cb91c8c48c73cf6f878fbc3f1d5fe3b7d29b5cd40040b6405c4c1018b5fb16fe90a45fdc023100f6951846cc263dc39935cf327a730c03e989c7a616822894bf01e1cc5cd2b9411c6c7db1aa4212ba82d1a0bb45c3a2440302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023054f91daf8cef2a02374b89e1374d9f74d3c0c20efeb1f40a7803b811030cfe361449e247fb9f2ac0b57da782afb8b53402301c342fe04b01a9bfcc6188280675902ce240698e94f4b1c81dcc7e17ec66c3cb47338fe67622318777ba02c7885185f50302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a98bb0dde203313dc95611f894a7506efd33f067a5bf4a3eb759052429481cd42e6dcc1a62c29c6bf7b779d852cb32ad0230563af906d182dfc66e4f946bd6bd469123d248c81902c3457c82e16dd23f868309ce5fc5c92db13f75fff13e5e0024e70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023025190dc5f5353c1aa14f5b97f581fbcea1b2d448bf6d90e540a92262e0934809e0e7dda17a114399b161b4a013b65ee502304aa434877a2abc38d1c04c8611da36bb5cd68ddc6b487b01d34f7faac7f5459539eaf9c835f1a596fe6ed28e377b44a60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100cb9c3b5cd7d471e61982380c0aa5bafaf813e07d3eee8a6bfeb594cf90bde6d1857851d74cd883b14c786b863dbf17c5023100c8e2de038ddade8bf0a63ac756edc4fd2e24fadefddddfbc6d1561fb51ce42edc4fe46833a9c52323f91612ebcf5fcf90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023014e774e4911bece6d3a810a665e4e4d672a2c37afa17f2638d3285ad97d34e2e52e5b941bd5a2ec789c31ae6ca217b9602301e5bd556e9151127b805e17efdcde885342520b6c88e0cc4a34e3dd53ddc9a62076012242a5af74ba7a4a9762cf2f4fd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023051ae41a9a1879db836337488e5285752696c98241b14f012f0388b2513b09093db8beec6c215ac72e10838f8c1da9af002301e79a138250124f0ac947a8e86b30a795ff53cae27f473cc53271f6691daedf767e8a12b16bf9a7c9f6f60776fbb16790302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310090a289f43595a7e59d0fc704acb3818629c15f7dfa580f9bc34cca7067b3a9c846b12a1add4ca41fce677b79485d50d8023100cbf30fcbb2e926770321c2df6d7ccf1d3597248c4c23f0343a7e323c3395149e95aae4e917e2a46f3279892aa369568d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a075fc3736c624cd5cefeb9b2aaca120c3ae707509ea6bcb0a75e90084d89974d7ba8b882fc6dee01ebe79a861292b1f023052be87d045220e0b6f5fc93fec4859468af95aac720c96c30f3e9b63240ead888d9819910a85e71d3331184bcb6f4af30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009a9845a7ee60bd073d894b74ee6db8936e010887fd343bf924df0868057433bd692edaf3ca181ceebdca918545416841023017e2732e5537a98442a67716ab347ffedd85bf226aac3bffa0561b725976860f6f46e3692439d1258014b4e93b68a8d30302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502310095e956f026e13e8a7aedb980969f8cbfb54afb4056665a7396f78e042e85c0139e84765b6dd200b7bd7b8d321a9f0966023025e0c97c4b0984cfefa0cf86a0d601d2ae7648802366d7d4d6f8be3d4fec3caa05cf1901a5c25b883e24fbeaa49834d80302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100947ad29a8dd93f93f222cf55549a2f65d43e679753212aaf0ca5e9d0e27266e59a47be8e744d09f45b751164479c2f7b023100805452b41554711a362ef4b9ecb509a4e83e45e013c2292ebf1de157bc1dd65bc4bceba650ee433c631ac175576a31b60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402301c041dcce87bb77caeafd99ad8b9d1d8311a7d3f0cceeabb3a677e235a8cf1c8a861be75e2701a889b0eed1e8953bcda02306c2e95251f93160e68a0cd8eeff9607bebb35368aad9cf38f306c0ae05fd9fa69c552ee302bcc48464dff2632718ccad0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009ed5673e74077961cbb45c2c8806545b1eb04320666f951ce86810a53ceda0a14e8ef454045e133b449086315f1d76840230272b65a34b2c9095d47ad4ee5e7876568900211db04668ec31c042f2875604b6b47c6ebcde5ca331c936c8249666fd970302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301385f3049f31ee351f1fa131039efec26e8f303668f1e086b222ddfd58ee92b15f084bff0d848639a7fa98c38e6fce4c023100f4f935d00fb94cae96fc857b114b4061015d39aa130287f0a644ab56dcef9b92bf8b7faf1278e129d6cec56b86bc78530302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100abc1a32d5c6e90c10025a30aa372daaa1fd3f98cc916d0885d62158aa7885d3aebb3e1583b70b969ce3922b78833ca87023058b0df3fd4b8ea3f6310dea7c2c3edede5cc0e14587f2137f265434bca5bc24f552e7ab4670940de3f24ce107dc7966f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100c9a52d9e358c7c95ed76a354b38775a1f493eb3066293e39bc38005a92e7f7c3a850e9d94182abc8ba71780542908d6b023100be077d154d874efbecd5de08badc1993331452cdcb751257228f03f76e4312efc763c3a510f707f02debbe067d6aa8720302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650231009776b0d4e17604be370f569f08141741293919fc426749675ad91aafd5d15db433e144cf6dc5ac2b74a4d95a4b87fef902303e85bf343c0bdbcefad1b01c43a4e74217766c7ef1e82b442aa5e66c30f21be7fbd9e7f2ec74f7746cc17574b98e651b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a4326ecedf66180b85e5d4eae630eb3bc19229586de8612e37b5153e9785ee3b4c6ca893bfb91a4aa878742089377382023043bd3576759348f65812761bc7c3083c6859f5819fabb9d9229b5ff7d71d4487861015a2aa127bb025faf69fcce032430302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023049595e35b5212d33f3026d0859a2c9701d7d0d1c662feff5ce24162ace49d909b511427f5f3d9a25449bd5a27559cad2023100e806ddaee7f321a5766e54d0baaad5db4be02f036d4446ee0b8de617de9cf8dda094c97dbc98aca43b670751e90925450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e32daa63c2ed4e030ed66508d14bd3ef6ff32a430371a1340cc965abfdbd65f2b77ea3a0e3202c165353859a52a63627023025d69f82079bf1549eebb1e8cf0389bfd1307d91eea362d64c429e1cc27749c45ec18bbe5fd075ccadfb1e03430d98300302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d9c77be1b20c71ac85c7405e5a4f913cfee415a6d2c846139ab5839687fddf365e6f3b640d6074c98aa54b6289296b16023042a79eea9187392060995f1bf460449a7ea85f73781986aa76754408778d61e29a76f16de2d735f2efa743af37f2e94f0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006730650230010d728447fa0722574f2464c107ff272fecd106eede6b98d11a7f32851cfc58c1f1bc7a6c27fed8160059467dea2332023100ad8902767923e3e275d119ccdc821a12f82373ef694d473627b204d441505ccbbac59c234018ac00bd61eeb9ad34a2570302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100e5c2056828d939da1b3fa9ff90848bb323d412f3759fdc36e56ea92c6747b5ea2039b63246a0d3cac7748d58bc539a1f02304ffa1acd516ae7579ef1a5df2c677045126875889f32a203c2893e746e11472a0e82271f19a63bda8d610b0e8bbaf1850302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023046abace833b897969fa4622325def885eb30bbf87931f9263141c85dd4fdd57155d593150318da41e42a101338807380023100d4e794639934f786715e9ccacaee7aca814b1be5ab20c3f1940faaff96e8cdce21c31423b0e13cbd6c8c42a0158cb1810302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100abf466e457a6df92c356d7e4156b7196c16ff9fff5107238e9869f52074f851fcc18c63dab34c98aa6a38d8aa25b99c10231009683d89af5ff49f3e7641527fd5a8bd49d365ed4f2f5ebaec88bdde99fc1c60deb8a406694f318d3cb9de15d450d8b9d0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402304cb4b82b4672d1f361616d416d5043f2fc3f49e0265b17690a67411cc8a2b85caf61fbf82e56254befd64e79ee5046f402301b760a2ade676bc5d30ae804556e8c133ded026500209e89cae81c2299180d63ff92a91cc9a3c3d46ea91d59dfb35d870302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023006c45862914c9b3ecd7c4b4074d3573a98dd719db48e2e953dffe307e227c6845700a4036541deb7feb604465a2dee1a023100f388d2493b9e9b2d75281bc87a350b4f1927b61ec2da935a476476e42a802e3825c404a3409c4e3cc900614c5ea1767c0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100db09c0ea1640b6be8280fa5a3275c19b8fb18606875eed66e2e44e12aab725caeb36d4f31748ad93713085447eaac420023034c4e5f1fa5b85f55b2d9827673bce34ab4d40e256f1adb959a3166429e308fcbf1152338a82c6d4724cccc80aa746d90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ebe53777b6998c2505e9a443594de47d04257dd4e12ba22c6c7517e6551a95a88895372f1bdf3438eaeabf3f56ec49d0023100a41cf2344ed47e708c73e94180767f49011ef02c4d0d97a1197c6af8269f091c838683623d33fd55a252077074c649000302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023023029b06d2603e1791d9432696ff7bd22a4e9d82bc577fcdbe10376011f4f63334890b2313b826ce0383c283727c150c023100824fc25a2f945f7d9f883b38fecff59d2ac716fd4f42f9f955692cff4fe3e47eef46067dd0f6d1f07609d86820bcd8dd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023059b93633a0fdda0fd61f195be40c81e17144c23d46564a930b38d071dfd4f9e4aef0d51f87e2701a324039d8e64854f102310096fe7d7235017cc4f002340adec355aabdfe3a8c7118ff32176ebd167b7f23d2f8dae288a1c8c06ec6602b1aa05524400302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006830660231008243d954b633debaf7804711ca5faf29789fb882a7990029be58d05fb3a79280ff067c5d21f65992cdf7e620feef961a023100a02906ee02571584fa59f1537fb899e0500b9e617284d29bd7a982ea7af167837b885af7e9598f387e18ed2e34d7cc610302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b391cc9c7e615932b142af1189c240a064dc5d06db2a7b4d51c6eaf30471faf3c70f29d1ac5ed0bc5bb4ef798a46896d023100b357cb8c0ace884a225ab81056072bdfe823f3a8b669231628cd7ddd8a44667d872d4b414bf8299a8f8ef3267a943da00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100a07380da15632402232489d526362707931a3b13338d9d5d6685b47249e951aca70b040f6707c5b0dc4d4929a104ff3f023100ff99e73c0fe24f1945a8a7e6bcf9375189b183c566f47ec238c44ff586e41e27faad803d1f28d8357f101f851470a4c00302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100d8adad7b47cee2f9ab9fb9674c8ba4f0187a88fd0609918e6a94d2bbb8688c31fef50716f192234d527056a1b360824c02300094dcb86faffc3d1b8b5e77e5dd68f64f264fafaf9c03a0924db7da199bed049b7b0f56ed8f92efcf281de86f1c11610302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502306fc11624825fa51e52e5d21a118f013c38b86d37775917e3e2f9154fbf25af0f43a94dec2cbc7874046186c12988773e023100ef776e756b82484d39450db68c4dbd08d5cd238dbfc743bc39511c7a489c64748f2cbdb9f5545062b2c469bf731e8af20302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402300aad03d010eb7c69c0613e5d817fbb0c936cb043e4341b9072f7d96f289b03c7d8a79efa332df6db3914de62602bd976023007654a6694f418b65515294953d610f00e76abfeac2e645f0240792b44539d6a7cd98ecde6afa7f741b78356797f99eb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502301d871909e28b520d56bb36717291d016969ccaa135030f86f301492225254d7e9c995791cabf876f5b9bd9c095723d47023100aaeac9c6899750990611c98e02fa3bb1864cb1abb926a236061a3a7ed5f37624e5170af24adb37bf95cacb41a19da1410302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50067306502307997e37a3c88a422cda887e895dfd49d407c1aa166f019229e37d850df55f1bea2d5580996764b8abca38127e8394aa0023100fa32d63a592f27ed85f370b5ad9be6ba20413815fd785bbad92321fb1d61798d69392f02ad052ed5ac79f722cd4f92b90302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b0193a629e7e73ff685cfcc44b6107a4a41dec8d40c050e0e123418d2fc867a534ac157d7c4561ec4ecf17f5dfa600030231009696ee1cf9268952f9404049308a58c2e183d86300af9f479854df146cab36866ebbdc667d91c97d1f1764ff3a7b78750302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100b56544bc20c41c0b60f75b3d76ec030ddf6d5355f3533b4bd2442cab1782b76ce2fd14ae7e8203838ee1fbeb3b55f63b023100ab8bbb14d490805c0769407aceef45100ab49e4a9a0f877f9b239ed2c88689793936f750222b3022edde3017cfef97b70302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a1a7865b5067eb468643bf281ce77f7ff39fb6dc0a9e7f8a9c14b5fc2c459380aa5e47ab6be293c6ba3b01d57c86fd2b023048f1e7609b52aad48e61fba8789cb651c96a25d4ae47dd3c34dfbcd42a651c5e402875f0dfd6942b4b4a410da0fdfa460302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100ed7351b88d50f30386b1a78232d3ca8409cb4960dec01bb3fd1c08756eea97a780b83867c629e6d17b9f64513c27cc39023100d0a3e4314ad85bd60cbe2db09dbb0afd774d4504b9f082051ddef845452d12e057c49bf83be275098904840d57577ffc0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023003b598f608717d8e3956390571be3719bd4d336d1713e5d0c3b8eec95c80be04116628d2080a26fe332f33b62b17c5160231008ef68023c5285ad614e14e77c341ad2bfedc00705064cda52488aa038230811cb7a2b70339b16f2cd23d37809128cd2b0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023069f91a92c710f60f2cf17b2a6973412a817c806caa7c30bc1b76450cd7d7a8973135ea6efb37e5485559a71635737ed6023100c7a10a35ac540f11b64c228a4efb7fe31d949491d9f9d87c9727ccc18c77c1cba7040603062366f2a6daf7a7b8de6a080302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100fa740c5164da2c5ec4bb310391120e2fd1e439034e811ea7430bd3a06d93660027c2367c88173b9af60724d4a38a582002300cc9bff5d8802cec7de1f4eedddea525445a0a3698b3cf829bf06d3a931fc3be3a1e2dc45afb46a03a7d54a857b76c130302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100b0f0e5a58cbca81ab5573cb50c0e629bbff8c1fe6d3b3cf2e6c0b27030f158b5b9ddda1eee1cc0dc90a2cbce55f6fc730230266315dd7ecfb5c86ae45b4da528486d0aa035642e49c10438b774915d826844d2f9989b06d64b11ca24fccc31d0dbdd0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500663064023073f8ffb22bcbea5a889282e6af7ad05e88e3b1dd28dfab01a02ddc1b19a802366c6bf930cb9ee3998cda0822243c78bb02305fcbc6f742bdd712711cb2092ae04687f730cc80b619060abc9db51ad12d62240178441409ad869fcb8183c33c6530be0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100f59c993a416caa4ed928b5c0c09ef52a0b1dc36aa8a9939d1542bce6459784eee473516b5f8e6bc01db2f42d0f5f96f9023071217b3ac5297a16932baa6920ff80ed8fa8fc89041371ee8315ed3a77ab6764af75758577069b2955ccad3ffa94ef4a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023059d7c579dd0d88cf5236c1c279fe07308ff1d3a8ea1fb4cc43a72d7099ff4934d4b7a07cad02af7b4ed6ff871e3adeeb023100a2b782a33cf0843255d56a7808c6430178cf1a795aacc39a7d62e4b70021f6ad5fa829f784bd07a9589fcdb775782efb0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402306904fbd47e2529648a92b6d253b19a84004187d7225a570d6b42038aa6d5211b9b1f8141547da132f40611b662c26412023022508d42fd0a39b62a498db64740fe9bc85098fe8b49b2c43914dabe9b9a6798c0f9fb6be32b85dda21e77f079ee10700302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402307958837f6f9bdcf79d134d5a7140cd1331097e8e1322481345aaffdc88d7f53bcb2ae03dce9fde6557831974302ba510023025a9c60e8fbecbdaadf6e728cfce0486ebbf7fe7938cf5578cd37c8c61b6befab875b3ee924c6a0c7d579568b33977d60302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50066306402303eecf1a20b345ef5dafa90108bc0ad6f1cbfc2ab2ec8e9563ad58fd5ed0522ea975026c32aed0a31194d22cf5ca7cba10230455269dd8726b94b4e7ab8ef1d53772df2e56820bad76c8e9e98b0e9ebf51775ab0e7ac73a3a02e9fc0aa523dede03590302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500683066023100e7d2e62a9d391456b1d92006c76ab99edd4357c77c4e7d463d3764fd88592d48f4835b6d4daa27ba781e46ad349d1c9502310095b0b0af5e0428be3f829b09623ccb6479abff56bd8437a3c339fdc7531f745d23eb31b3d6857c83071691d9727b6ccf0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb50068306602310095931ad8795435721452ab8e40cb69dea8dd6eece70e56048a1f929f4bed3f1faf2c101ed8c4dee0dfb2973099c5e03c023100f1c78e5658854e12e9db6576804d9e0f2ac820807b119e5b62087f2d5ee8a6bae353082d41dbaeb25abcf11eeab419640302047c435bb50067306502310085e99d82635fdcbcb030bf3c921715d3e7b8aa659361b1266895d9e9c7708aaa4f7f86286c1edeb6d450162ba565c10c02306bef3bafbf66530383dfb38700a4a227cecba82fd0d77a5f105fa91a047608f2c4e88a3e21aa831741cbc696b722710a0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100eadc9b255d98dea00a9a5650f8b92f793995123bf809402c900595e46932aee8a88dc46855d3b36db8c5941aff9829f60230026714e28880630398fb1f08d07e990fe8bd6e84d539fcaa795e317dcc3d42b696927bc56bfce8655d6e49ad355bab860302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb5006630640230712d443144967f2521f140da678acf9d8635e604fb5334fa9c1b899b2dfcaa597303b3a1fe65d3a04dfea4f323ad6643023036d81402b4290dbfb54c9e4f17a49d25eca65fe5803aae553716ab95ddf2384f49be2417384a91331ece89b0d15cf3e00302047c435bb50067306502306c2c9ea12b90e01776b74b1ffaf288e5d76bb2edccdcfd288ba692497263632e651190a950e8df5ea7de8400e638b8a0023100cc7e0db09f953aeea5395372a6a500298874233a7734549dab3a01924aebc291127d82d7d5f95338a68b40daf58e0b3e0302047c435bb50066306402302378a85a0d5775a4e67e5f3137021831fe26069bec49c51ea956fc4c8977d7c6eb3d8571c469277ec7f051a115c936f802300ab4adc98f450d64425547d2f34a954425de8c8e5403e96cfb0d332b54b554fa0a15298721b927b3ddf15c0a028913450302047c435bb500673065023100a4c426cbbb1dfbb6b6bdd7b781c58be0eddece346cbf04cafa1f1866e5df0b6c0a3f0982e0312a8bee05c1cff022c528023062d17237a113bd83d19f43efb79fadf100f8eaf18b7d52680f1c166c81ab55272102469ad3a673e5858eeb411df442430302047c435bb500673065023100c9ab4a004d604f9f1f0199ad9dbcf2c1256efd7eac5331218b2c8ca3be98c28e28180933c09b1ee2ef4cd924bec6ca04023069a0e37f1be9c621e97c611a585984e5746b41207a1a5530de1b973ee398af80ff4030f036c8596da2b5249f1f90552b0302047c435bb5006830660231008ee72bc4eabc100114f557b5e2925fecb54eb47e9649f42e108cd89a9957079a4ffb3322778e8ca8bd47154fa443b2db023100881b3002c130bbb6e279079f02ec807e3059b4ec8625707ae722a0398d467edd37638a49abe6095f5740c9f6a28665ea0302047c435bb5006830660231008e27518958a2404ecd0e2cb6ead86b493ac761d7fce1ed0175d6aeead0598a4f34df5ed6b8a8d7e3fc19ae8a8bb63f72023100de8547bf9cf6a4e05fcc6966f7d34a2e713ee8e10e2c70baebe0fb03a760366f432f29370a7220f4e42998aa8391ba3cwtfB= U]2H=cH^Rd x^=֑HZxu+ёj:eyFWX;Ta4oE^/ u4t74Z/թƲ_߸SeG +M;,\=dDS>G(ʹ_p>}xyq,:Z8+NJTk|3C ۥ|3BS)/j/g"lEq{J}s)i`Ul=UcUs0ծt $&M2QZv6c{cd#Il z !L2 Z7Ҝ^V]SroLVMT9Vg!'G MHBnz2m4XL5n9Y1) ɋE^KI}7s;7;Su!>dp>p>?d " fC VpH$H H FH iH @H HHHZ|H(89:9 >cGcHHHIHX\Yp\H]H^§=bNJdNjeNjfNjlNjtnjHuȮ0HvL*8@X^Ckernel-devel4.18.0552.3.1.el8Development package for building kernel modules to match the kernelThis package provides kernel headers and makefiles sufficient to build modules against the kernel package.f?ppc64le-04.stream.rdu2.redhat.comPcCentOSCentOSGPLv2 and Redistributable, no modification permittedbuilder@centos.orgSystem Environment/Kernelhttp://www.kernel.org/linuxppc64leif [ -f /etc/sysconfig/kernel ] then . /etc/sysconfig/kernel || exit $? fi if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ] then (cd /usr/src/kernels/4.18.0-552.3.1.el8.ppc64le && /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*.el8.*/$f $f done) fiVXJ !U8wUcn<y92%# ([4 8!Lxj w 3pM/& pWXb=}7tf ,TZU6GL U<; 9 PWTTL`9 lT50C> C v> i3w(+YW&rR9A9 ZqU4 +#+ NQ}yB tou&TE6gvDFMZB/ DZ Mh/<)zTX +w\8N$ixV B 6 YDHL\g8g6 4$,l 4:]<e M% _^XRJaCx 11xXWU3^5KxVPVVcX e7\s>FNBa|}S > 92WM_o#3sXj3{j_w:Xe cqknH~ "ER|3.u@@dzK~;yb ap{ m8?6]]R<<q yK< aX=cZ y jz'^}$m kjr&.<KJ7[ m #6[qf# Z>I#^lei#FI bv  f%&G0 TT) Oa 3pCU   * i0QA+ PA]w# MsD+kt K7} #ER!w\ "A& iUJ zK)  \&qa, sv#w+5l CI  <VNX $J'T_NGv;%r%@&%P WG+\' 7n |z(  MJk %sh |_GR "+6C ]G&HHl  :7'G4T -x Jx U_o8k=] n) I }> o  5MQ~e.})f9yu @0 )  }\n l p  G 6h5$  u%:V' ""##!&!!("!! 8A& _4,o.!a7 5 s\ P Zh'-/_ Y7 *R 6#|t5 M[%+TJ=K =qk  815-xn#,Gj]nk C hccso$G+gT E d )2bcNZ_|qEXLUmaaa"af; l9G&b&[$!a h;r 6[pi #FQ;" ;i3leSa=14j Oi<&$|f/x[X[52u,5'%`%T'%<!gs  *C Im9>/#Lk}Y&nCՃ (aR9N .kie5l B.IXo$8[? %UZ> 7B3 Gr3VW;2 fKvaMH6l:O "2? ,.z:i1yYtX/; aXh-[A?tA8d6?qXk`%}!(\' jA[65d<\pL/kg= b]'6 eE6>PN AP{ a\AKGOTt:O ~2 fD*7`OJi' Ac%z*bpX.!x,b7F G  ~ \r*tVf=l   v fVt\"uQ 8&F!b[^]xk WiW\uk05J?&imcB S F  ag \ W"}Q|gt(I  1a\Z"*hRlm>'YJf e  Y#tUUKwxq  0or=xh, [ -Fn ~ o  b|H*'b4s/ 2(M-5=%{y kGpR %u N=(kx,RYb2(ZV wR{UoS hT-S LX~ gcex21 $ i5TC yv)*p Piv ~1 9;H[;5& : M /H3_<GSB8 _4^f0sqtVihO3YTcU< G1 24L;Qu'B- c4q*#!AR^ ^p;+pVcI TtZ% Rk ew-pF? b^QF^ /a2x\R>}j9:Op ' #"Z  05 W*b7/X,/Z)[KUu=[]%PfSG`Z"V$oN.ayIL &~!Etf[$'AQ)ymK6Jpm  w rl.  U6[q UE zk`c"YG 5BR?S8a[[ ~vXsntTIh; )we`WTz[4X({czmX_S%i*=Ud;E(4 FSJS=W+ )-k_.FJ|"J=uQNiMy$NX7| AM[$eQo5,)RMPBT]',.#YzD/Epho( # H H U^ 5eh@J\^(nSiiiii0e^8$F\mOzW . ZKcHS@vu[|zN|Y[_h_ `;vX t`' jzYNdXb v59!N\y]k<\R oTL5I&]R#`B5;"w-Gc &9# IO>" z 5B- s`GaOkA]!hzw $DP<6i  S,=]gFz 1KaoN}S$Q7W&&&f2Thf#  h_) 3m:9d!~od7|jQ }oN` ;7:/1-w J cq% Y &Z(xj@-\ 5i La9~~f#^ 'Ism p<]O}f@nzSYnkQhLH18 hD{WMhga-/zӫ +juqF D% ! _Z % R6Njo<V0Z PT!  &-ha$d|R% ;<)T39QQ'`b|#]?J@x|M9M<a Rqy)gb-5a[JJa|!{ ,-eA^a%W Ota_ (GG' <\ wcsli>i}-=~D-3/'  2aao]]e8]e3xb^U2 6/o^*;E4)y@|U +QMJ&WgRC 2UZS*E,)a6@vSD; {E+0=!x3gE j A?EBg[AVa 5g'pV+[_UY Sz  -QuFt M5 mKew$ADK!\8Vd nOcOBQlH9|4YL|! *_ n0;d ",t#zA;uEz#s~Wyzz ;R ITWp`3y Mb}I9*`}m r;$T6u@  hJdhf3= = v2,{b= q#CAvSZuD/-c|NIwW R s_$ G /S J#57p'$_ +:{XE \ P@ < ")" X .P_^gd%q/Vq^! o\2VO L0Yj4NIt =L6>Kp4 6 2/P1HV4I)"./M N| ~ { # j%}j?4=f&'UlN Eo [UA Mi%, {h}4?K!A i'?_ g 1.,=>  P $UM O+O?8,]2  'p)5N&&!6 %)4FOL&x[ WBK  / R&g R$' K.!G] ; 7!Z =2]>T AtX ? cd* {19u \q|#{$:%u M )0* q " o ,%E$ ?q+B Vva &exv ~60! $P2H!~1=%M.$~041!PZ g$N, [?o/c k,#$&@%$NJ"?%t4)85B st c  IRx Hk  . R T!,(4*#mS. M$   ,uf$%[\e*F K' 3h=I ]M "f  4x~  # . .@9g+!gPP<)% :  P 2   J g= 5L   (ar # N { ? * = 1 V  hGM N{)PV?(n>@Yb1b    [!F. t^q-"b zo (>6 D_S{ t ".& S'  > Q  T?(&-P Ol/ 0 (W/4Y/ dX+ e<Ci5Z8bCP 8S X %>Q;*#MjxIg6 F6 W8+ Yte46} DI M#^A"nj'(lH9K+>N$:K/.jjpN`bE-GLh ,;:#bk m| U "nZ638t i Iaen NKb<1+D")oL~ L*1[.1:n$ 3 !2LI+ "c"+ npT+a R *oZC]6=k("W;G*UCgKP' ]1 uGp)gj/_ ~Bw q O( XH^ p(X a 6,G)B )u< A'&>@ /%$) 1˳# k+!K6s$ xS@'m*1AWN d:tP,S ?nc>.]}^T];fO`  UF23#zX + zI0!8 7A 0 i=i;v5 I72Z  's)=+%U.lL yP ?  iRA(5H@[itZn& `| + e f .!&2J:`-< Z 42}?@ `?Y f!29~  6Ez1 ;-#feJn-q+$CR7M?a=a+)Q [oa! PjXv8Y[ 8 PM 1~c= v< 31[| { "6KQ K*3]cW-1 r C!/3 !' _ I/  K %= K&v.m$s }i)3#$R g.Jn nqTQ 1 Ni|!;5-~ A `}5dRAm* f&'5V+.7J 1-Cd{!3 /%t ?)cU M2BVF *WS 5 i V9Y! ?11l? ZX< "!}?p +~4 G=1:9 V1@1w/TE 7X0%'HO2_ZcpF( &S< iJ ~" " T1    a z]' N[fM"%H !00lQ 6.'/" Sd3qk*(/ 2s@i&  ?E 17 0'seC N 0[e% t[#tJ0  h &+XNcB `{( K 2o.W#W\k bO3|  0w=1; $)&! M ?5xMmJR8Bt f{*21 K;A)S q љ!6;j0u ?)17&<[R("  B\R @ c:uI5 lr# )yLH4(  MfD  - tѻ4*p& f + 1\4k w c~P*G  X f*0` mL w { 9B \ OG vGa9u<  fh?LH+c4 zB dDvK*R\ R +% %G{ (,i l@ J|S!y+v/! E  I w1  w<tV:F NCg# $ "l7-99/|JN7* \KWv("=pN u8K  $ ,1 0TP!S KE!je !2 t \  ;,L?`? @5@%.;7P"h N3-)(YU X%= [ 4< _Ut-n&:2Y d J, 86./jhB  Qa DcI T 0A;jM$C"(08a TGeB!$!WG  K)9F:K1e&=(t, o .; B lX2  ԯ<dGO c!!"5 Bf_vj]"Nn{"$ 5S Z+ TL:%M+0Cu/kR\$"7ZU K?l8 v<IFS Y; b041 Rx , VQx$D R$^<G  Lyd;Wx M cL'uvF n"PK ?Xpq  %414a "/&D< $8 %\*>ao );&_ B8[ j_ ,D-CSH9(,W{I,"s- [EF{ZFh$" 2 OFyA-M@S8D%8L UOB Y,QORbY7FS p> pE5K&_T#-) )d$ }J?9Y57TK/D & 8d&3 [ o^ \^8"w @+@  cC CF [a ' Ic)F) %rW+$ duK6=t"|YN <{d 3 0 9 9 x%c#N$),B;@G*lU$4>2 , H>pp Ž $N\>hZ9 6DA9h(> G5tb !Z& K(F+Nb Gg+t !L:Ks#  5h6JjWgj.|:kt 6Z D/3po>]32>3;[+#c *`@>F"7h` ZN*k& '6bGM) w?2 d7z(@5$ gF%57 ~:M4&`m$%kLO mYV"h rRM l+ p!4 k pN/@s6 $ !O`|,E%  v 97j 1y Y$! 6-6&dV ,R 5$76`+ o"DSWp%A*;97T~%=GOJ-Q 6<;b :?6N*& *1 Wy ^J jQ y@Zd  z']RNU jj Is'\KXa#F"x> 5y(0a1:IJ (d }fB-;_qX-P*z,?,W $9SB !  WRfkj5JE\I v_D Dw Cyp eSs @a4@4O%$. $ 9&%0ZBLa N0i 3~ 5 4~8p z 47B  Sfe># ]{5}9.Jg<3FE'4 #-%pTY4 qT-' 2paD{|0:D4 z4u=+m[=!<#ypF:l9' "  oo ) m1`?- v(&-!^   N@3*?xi Pi& _ia &'$ k.N dF%M/C_ - )  d 2M'A.U":upB_^)64u 2eLhK"pH q ?PRy]Bi  4B]" ?^Y[(>#OW:HVIi<x4 z k$rp*'rbD' +A c #;O h w -!;h @(1 \,// 1 (, .$i z!= #*6 S  Z  m/Ys ,a" 9x Z ;1F J G# $# ;  9 Y(Qx#:1 C [-'B:) I,c/CL/o ` Rp~ H_-1Ea  I>lpen&m .+)^ >W!#T:38g`/K Ya5wr e @n Mj=O2L P.s rel}Cf  Kqb R /5 U pf E0# @B b/TC  ',;W"$_(ruO:"s4 2GY9 5J@]-, n s"'4![E9n a kY|Hg9+f l-~ ! *xLIT G { h 76q _ }'O o>?75?K< f +hv QU j y6K e1 p p0 k m iS C . ; c %'JxE BB = y w (%4 ju`#Qp-O   r 3-Uq, M?<vAwY  E-)8[" #K^ !F h? V$B5w -*'+ x^ 2PFQ3o O#S48Ks@)I3 iv HOvX [J ~@W i pnh?im$UN : $r X*7O   - W  )t<!P "5_$ Z# (j R#(e8 ,BrfXPK D& (3t ,"e9Z$@/$< -K4#)e(i1  jC O[ JQA{JY h" cg O62K, i)Df $Xx mg  . >:3 ;. u ol%DD 2 $R$!R q%6-) : +D HK'0O Ou"q<RRW˄5&@MI+s bv-\jE ;{*4 65y) t*.4; sqJ.ob^ #M? ` 'C3,*E ! h6c 5 ! h1$a)  QD 83K4^N )KF"(+F @.G!2*Y{ $.] BY w67i4y  LYEz: ` Jp+)$]sfk 6^;eAOAb 0s zIo<ez%/Tfy/~ e bZ`4  X PyUv( ITS(Jnt1_!AaQpKRe )$*")y#[8X&<Be)R]",Vt̟"$b39n%v2*sS: *z `!+ |Ig L/$ ]$2 , 4]8(dA%O7;A-/8 5!{ :s%F $I F ZC O.PH Xdr$(;orV&} MgFs  _ j: *$!"3"M!bU!VI,# h Q3"D  !*. aVB^mSBe1BicYW72J/ %!  yHZ ]&;Z 6-%d) u #| PHVx=rdxh&C d*>= e+#G xmU8;S+>x@u/J\6"/O(KNUA- SC A !BM Q! _B`z 3h#( Q DOl}96 h d/4. e_&' /BAIkpo  '  (d 8*X[&= 5 2.vB c@h "( .wg , I k*< +5k'.s#}6wW[i>/7m%42|1C I]e)u0:L' rYHE W &&>QW^-]Z8t) | Y~z7zYbvA 0:y k8;@ <4  %&Q%)FLh1U^r'mz-ap=gH^o}mW | u!% G~y$ wt [>K( YG0HI0H0 X)Y)T ]r"Q=lAHhpS2T!bS|<J_P&wd  zW}E8a er<VV WX;@$6SJB$0'A2)A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤AA큤AAA큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AAA큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤AAA큤A큤A큤AAA큤A큤AAA큤AAA큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤AA큤A큤AAA큤AAAA큤AA큤AAA큤AA큤AA큤AAA큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AAAA큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤AA큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤AAAA큤A큤A큤AA큤A큤A큤A큤AA큤AA큤AAAA큤A큤AAA큤A큤AAA큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AAA큤A큤AAA큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤AAA큤A큤AAAA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AAAA큤A큤AA큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤AAA큤AA큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤A큤A큤AAA큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAA큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤AAA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AAA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤큤큤A큤큤큤AAAA큤A큤A큤A큤A큤A큤A큤A큤큤A큤큤큤AA큤큤큤A큤A큤A큤A큤큤큤큤A큤큤큤A큤큤큤큤큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤큤큤A큤큤큤큤A큤A큤큤A큤큤큤큤큤큤큤큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AAA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?~f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?~f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?~f?f?f?f?f?f?f?Zf?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?~f?f?~f?f?f?~f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?~f?~f?f?~f?f?~f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?~f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?~f?f?~f?~f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?~f?f?f?f?f?f?~f?f?~f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?~f?f?~f?f?~f?f?f?f?f?f?~f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?~f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?~f?f?f?f?f?f?~f?f?\f?f?f?f?f?f?f?\f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?~f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?~f?f?~f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?~f?f?f?~f?f?f?~f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?~f?f?~f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?~f?f?f?~f?f?f?f?~f?f?f?f?~f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?~f?f?f?f?~f?f?f?~f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?~f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?~f?f?~f?f?f?f?f?~f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?~f?f?f?f?f?f?~f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?~f?f?~f?f?~f?f?~f?f?f?~f?f?f?f?f?f?f?f?~f?f?f?~f?f?f?~f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?~f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?~f?f?f?f?f?f?f?f?~f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?~f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?~f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?~f?f?f?f?~f?f?f?f?f?~f?f?~f?f?~f?f?~f?f?f?f?f?f?f?f?f?~f?f?f?f?~f?f?~f?f?f?~f?f?~f?f?~f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?~f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?~f?f?f?f?f?f?f?~f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?~f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?~f?f?f?f?f?f?~f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?~f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?~f?~f?f?f?f?f?f?~f?f?f?f?f?f?f?~f?f?f?f?~f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?~f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?~f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?~f?~f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?~f?f?f?f?f?f?~f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?~f?f?f?f?~f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?~f?f?f?f?~f?f?f?f?f?f?f?~f?f?f?f?f?~f?f?f?f?f?~f?f?f?f?f?~f?~f?f?f?f?f?~f?f?f?f?~f?f?f?f?~f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?~f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?[f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?f?aae6cbe6617a661f1cd6c34294b7ee77ca2076a417a2e495b74513a42d10933643aeea3120e4f6a7f729af20f13c584a79d9c7df4eb14b2ca01854624d20f5fa440327ef5d61924ff03b7680bea8fe805fc4420ce5e103deaf56db9a9601079d52de71ae8836fa9bf73bffcca70bade7b5af0226ca189ca662f416acff791bee37ea47f8fa19488c4a0272fe2bcaea0e04d7fa6697d288f15958fda40f5fd4c1185446dfb756163811105ea09c0791c9950052c05359186ff0104556ea4698bca58db4d5073aad320872474cb2837048ad74f35a7fbdd89ea9ea03719b7a95a61203d1d9284d3d8db4ea0a741a1b03e300e2a9c812205222e8fc026a458420220a876bf3835fe06ed1dba1e8de3aa12fe18ea0d6ae505090357985cb29230933516f885d0b46bad87679dc9b36905731d6834d728f306848947033175dc228cf2319519ccb40a770088dd9fff78496466e7b3814766ba6f901037d098f8c1ccc20baa302107fe87d46fb7401d91aacdab82e2491c7c8613b0c95031da4e84471df89619cb26525622db08b81f27e7275f1c1dd64e57174c06e7bd79febdd6aec31592a0294c9e276b3d65987f470eaaa2dc024c33977f409a6026185bed4f55b571c2738b88cc09f74b4b84ff494f71bb93b3df25675a48178dfa7ce98244c6024dfbb4f382a643d538fda5df16cd9639085cd64f5877f63e4ef41c9a4c3b7b1392226f3c8f9b858f0cb601c14e0dc88a73e24caa743776fa424aeeb27bc37402e7ec7972924a4ecb50dbb7469221d706b958c2f2318dfe3d4adf23c6da0f2251ca2ac85309fe8a4bcfa4a53896c9eed83fe15e44638a9fd8c2d3c64de92bd5fb773d87e25758e5a2622e2fc0890c2ef7ed4ad61ee8c6524bf9e51fcda7ddafd6c4457adc2cbfb72505ffb25318a4507900b186542bbc07c8b2cdda872829d48a3c9737252cac2c3d060376051bd400edbfa60ba7ce9df19101937ecd26d11cbc0b8ba07e762b5c8653db0e025e5588b1b1c57d4473d4926dde2a151c147968ba5d0d31912cd6ed3f7ae6acee3066a462fde5d1142b8a16ea0b59510c3d9137f5afafc70fe18ceb5f7c8ae27de7088029263c037548ed3e920d61995c6c033915edb772d77604f69b09f9478711f2b058d925bf859200a3eb539894de28ce6ce536b6ef4881d480596d4a60bf3e28c53d0535c1b8a92aec6f1035569e8d5d99533bea624614503b1765259766e469cf6c5e53296d8d45f3bde15d579000aa27234c69e7dcce7ece7b2f76a0683969d5f19ebc4b6f52cca5bb792126483b3b8b75e27417e08e9473eced1c817088495033ff5afce8d9852229d398a081a4baa52cc7c6faec669260c6b454edf07c7ab2c7d9f020505323dcb34c975b96f5833e2353fb9e7776c9fcc028ab726c753aaaf95af857c9ea520784a1c863cd2c04be93d5b3b7a7e72c2b71ce79f44d8698d0392141704a8d40220b1dc14cbb8afc4c5fc8b24f119802bc77ba324e5e287d6d8056192e5272aac5c3cf236d563b9bfd5414a249f99b06d79604cc514de3981f988464c6a856402fa2b6869fbb4a37803df2db4a45a7d3624839e9e9cd0de0f3a4a71efe6ad3cc4171b2bbdbbe1ca4057f1ee8a70ec6f0698cc54b613f13a5b7dee8d5a8185fe2e847b626a96047bd046b1bf05714a925ff4e91a279e30cf4c855898d599c316f557bf7eaf8834e40bcae517059524ef2b4a1c05f86d32dee7c51b6c407532a77a61e6e6a9ac8d9ae9a71c183955a31a181ae2f3661446e7cf0d3c5d121b9e17fc2d4ba5049549331a94a5cdb297c4e17f08e8fb39f3869602d91d6ba45c56f0d6266846d7d73649e4f90b9bb55ea9055cb7fb989a27fbf11870934740228a94633042b9debf4d116cb93daa31b9e9804a50dc36b5d1b9a98d1afc924ef79089514bb9419a40ddbf9e59f91dc0bb81af273017a3ba6c59c894c17829b95edc22f0d5af05d2d5923f6b4ddfc7a97a56d5c2b52289c123b7fb629a993aba08362063e884fad36cca56625fb735388e8f242ecb3efa6b5e3457999e16499191985106db2ba5ed0607edadc1dc3ca059d67394db68a931c6b373598bdc9293fc55440f0ca9aa37f793f9652cc9cdb4a78abca35e1c2a5aba26d472dd5df12dd0ca97dc87df98e81e0cf070489f7683a8fc4af41d9ba7d0fd7fee699b1b1f5b287a4f0b46441e38bbc276584a543a5870f22c21bffa0ac6a23664905c3427f777c49a6a0ce66f8c8e94d64062a0c9d9b959c59560cfa011c6b031e4247f05e473bd1d421ef2ac855a7758d50e315177e68bcea86b2d2394fcf98b899afaa3614af301ca85900bd5e94921a0c32da3ab29d1f9aa277c91fc76f4a7075a6258d40d13e2e1fbefe346394ded3fca8cc2ae7eed4e0ab7c8a9965f6996fca2827a01426483e6bfb5910e695a97dcaab71b04facd18ecd60cc0e749c91db7638b5a841eb65b95336d4b0d2d34217b18147e344e6b1ffc7abc35e99fb24de9dbe2e734bb3086ff14bf0ee87813d92b32f982f893c09c86066854e5a39398576db00c2eaf8da38150c8b1008664c4e7362396af63ed0fee3633e2131bbc1bd9b1ed865fd62fa5c279edf8c7a8c4548b39a28a54a9992210ff570c5e3fefae68e089ae0ccd207d5203503f9d132d56ebd60aa6fc89bcbcbe529b292d59da0514367c2fa7410b7852108846ae3386b317a38ed57b1afae8fe80e1a6eab67b7a27ffde519956a732160aa3f96e43d5da9db72c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b091b6160357012089ff9d49d4e5b65c6481e030e3e44a7aa9fa2137db8c923cfd0e401af1daeb836ff1832b140f73842686c83a36541351db6db77f36b1d451cd52dd61eaeea7b8c4d953b52eac27c0b16ed7d18ff1ab1f0e9e0cb0c531b4a667f8753506a3a7ffe6910c4a9458fac0732336224d3a768e12c61752dd751870480295e6cbdf822209e231a9a9dcc330e1f3f9d31a85ba6ea1778a617e51c382bfd34699a2efc86726c058135bb47780c596e4bba2e7e36150cdf5c3c8f44ad58a2fb702168a0fa3b30211e339f672d83ecb8ed6ac170d7fdb892ce24b7ae0e6be8819850f8e3086ea13cc411c4292e2372c6c4d78153be10d4b49a3a6d54817aa7db17cba4c54f2c4ac6f0cedfd66a5efb0eb9aa936159352d58c66509cfaa4ec479d2bde838a70ad275f3cba7362a07bb342542ebb197b9a7cb91612d8fed369e773434837d1072f36511cf3169d149b1a56685ba0928c79fc19aa1369af071edcc1e42d288676dbb9a76c2091382d941d81a4390534173a01bab15a3b20a7a74b1c495fa94ceea35a1c22cb817e1648b3cb23cd5a43ce3fe4dbfa482fd1801f89897f6c0721944ab6d15cc810f26e03062cd35dbaf8e66208676e5ef7140dfcb53ba35a66d328915d012af2186ca2970283f9eab6d0058db4227b20260b681288ac87dd7fc264ddbba75cc8b907a68d3903faeb73f0c6285ae2714ca501a5a9338009203d0a85ede5cc2dbfe62e7170dcc7bb41c158140f0f8bc49bc30c85657a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5f61ead437cf74b68e2824fd1546847b4980a12f41086c8383533c3b820a12db422a78aeef7982157b3673603ec0ca9fee565867fbe916936d001e157d297a9dd3c33355e54fa815fed023ff1e795de6e5bcd7cc01554a557a1c7aeae31b4a732c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09581e2ffce95d8e6d4d63f0c2bdf8ed670285d75852c56e6e5640bbcb4dc21e97d8f655df6468490d2fbd7c4c35832d36afa6d53523acdabe7703787b5b14f3a2001c45c6d08eb13141915e9f74d533b6ba68193ed998c6c35cba2443593b3fef881ba17e679f9bc0778508ae05304a2d9781a4065d02fcf30131045c61fa46066b573674703a97a2f3a2253bcf0e6157e08111f4c4f8110ab6987d918eb2dfcab649198bc7b084b6cf39d0ee1fbf9e7b6b32c80cf962bf4c02e6978d3dae99686ebe0eeb6da7ba61ce85fdc4e1c06d175bd2eac225d98f84cac909f15f3b947701a6b64719c1ac7795e29366d0d96bba4b873f936c2ebd7ea55ad3ebb80242af71b96e77ccabc19c609772c574c0505ad472c304776fb62d0c053def0d5a9c31e7fbf48ff91eaa348395b22d842f570cf2e65a3d2c1f23e1a4ade7b4897593063139819a78a2fded30dc26f27c9473aa0b190dab7d0ebcf4d07c8119d18b3b4e3a42ed1cd4ba7ecaee5208d419db9344311079fc4ce88ee02a582b1ee3ee0aaa27ca9bb2d0621b7929156064307b02efb0960ca3d503a534463180e355997d189e801c53cb769d73bd2204e36c4515a693312238f7a87f9111dbe3446ab73d9bd3de558f03b0dc75985154377932f556e0e3e521b4145431f84888c8ff1e487a58adfd4746975d39f40d3cf61ca576be689b68b057fa60ddb116a7484e6427c3e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8551248c3d28ce2b064dbc323a20fc7db527dd233e6598ed8b9d205aadf12cbf34e867a98ee769795a7c30f3acea9fa4bda3b846bcfacc461c3b0075c7cf548671cbfd0bb41c01004857246a003071747353b9c3c3ff4e59959980944f82e9da4e116f44af2fc552f49ba861e27e2f6aff9a7188098a3262dc1b34f031016a57713e606092c52e52d561e42d22661ab41ebaf1a23bf9f52059f6d52fe9827e0f6522489c5e00f9b2ca77a29bd8a07df20768160b06d3c501fa520ae2350db83abbc246c101ad69232414ab4567eb4c7fac81dbea0aa19f40c5b13999ae43519e9d457fff263f1e0f8856c379e63b0d34f3b45a6baa36a250ada6590961f48d77def3951f9f20027111aadd7d5258e57d2764e72a513612b73b29f8d1b43148548aedea9a36526ce61165286190d31ec5cd9dffdba092f902589bd0895c7402277b35bc9d5a2416e1923574d12225cd85a8f4e517bc05f360b00baffb74cda0ecb24c4b58917adfe5461569674cd4bd3e5fb1c3b789785157af8a9dfabcf645261f4a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5cb8135535be27c3f3bf63df0907d2971abae439f0203b6051affb90e2847c8a5f9e96a0f7838a5298837a89223271c28dc33ee74b953a11425beed7fbce5bb988d5de817fd1f2b6214d389581f02a18087946adebcd792d5e130c24e1c375f5628cb77864808d120e180bcddedf1b24ba7bdbe366a29f1e7e269469108d748db77eebf4792c6b106897628cbd5c63fc287921572a5d343b67d02b9d9e30793a9b40e1c0de092cf1200a2716642029620a154e98fb763ed63356debf7768652caff4bc1e665391aabb7d32b8f0e6ce0dfdbd2e4d6525d77f213f3122d825ca8701e97942c6e62becba36045bb5ef1c10ce86c80e16eebb471672f840a6046e5226330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b092e1ec58feca23fad7159e41bcd36821549f8609e629b9822b7dd541c59f4b8c01bae3ff7d3f08121bd65e5a3e3a00028120fa38e17134194b228ba5f61a5d7e331c4877c641ffada00285181b3b67ad333e991cb1952a2ac0ba99452e22c48e70b5f1ee1bcbb28de35df4aa47377151c65cf75578b0cec72637604776a2d437eff105271ec8b74e1b382003e3117d2ad0becc687985c4c1c0c9c04ba0df73b9266f1251f2a62ab07095b5dcfd9f3871b6f075230a2a6e1c60edeb9cd10bb481853a6bdc2130822aa3d396849a82497c41682a2eea75152c6921d7fb936b9effedfa0765570c3138541e5435716e2ca77cd4032daf8d3903beca1305fca8021e372eff3fb4e6c5d271e792814483138256291bd04975f3bd5ae8bf5d01711d525bd83d3f21c4d36ec7014322624071cc5f50cd5246efc667dfd2aab85fea7213dbe1d2bc57b1f3736c6b7c8da5e63120a73db731e286ee61c8d691cda27a0086197bf2efa9fa8dfff63386b64aadd66819187c7f3f0e97992ef3e261b2806ee2db4710166ec3643f3bfc34da54c91237cfcf44cb1b9c5449d3dcb6d3c505b046d0c2287411f0b0b5af1b9fd23d866f77929e4ca6f487e0fb3f3dafa83afe17fa7e7fd8ca88056dc90b9be5840ebbf6b39ad1798f7340297d2bcd5e71583db489aa88e976d94e8fb011f3148f76c9596b3f4dfbd739ae6ada37505f773f693f8cd8fa394122d4f85ce337ca5f5b9667a38b2a633037913ddeeb65b4d0fecee83f9b4cc85b05770692b3d0f7ac24026a15ed5969ffec02816265107bd712aea8c4375d00aee5734ebf3faaa5df71a223a4215b0f9f33aaff5b6c38df60f33c3330f343423bc0a8dee4927aa1b2805931c1b4db3e6610e7ca9864f4b1b9196a1d97fc363558e36459552c683c46bf7496b93ccefab5300a805f92f4d75bfa9cbbf5a923bb4dfa37cd8c3aaa083d8e6f46cb47dfe5b273581f5f5ec48ba801389bfb7a3d28c8f6bf88c7027e7c2f5c0d63926ca604a860dc18d1c0da47a6fc5cc86605d41c88f9788f5b4e968b535cdd90084c88dbee598b460ecc86512d5176fe94d53924259af4a1bd8054ead7d8fa99256d7f1169ffacf8b089f185a72c2f8882abe4818b7140152df9e12ebf0eb329ff66c8e54409568570024c42cef9478287e3a19b78fc29bb30df5f752545834eea94b617a8b98963455a691ee196837de67c17e0fb2a509ab14e34cf88b269145fd4620109dc791c0d9060ba71ff06392bce8024509f91bf221b8f946ef96ad09120e03cf9f1e5b5c74643a8a0c0cbe9ad9d6f9f1d8d0503ea3dcbcb4fb6419b9538f3cf3b39e8427d9579194d439b82bc09ee6fd7426f77483be57887b1f717545cb956ae95d153c25db1cf898e7f84d71163764903ab8986107e42732c347d362656b28b170c1b6e796b35be1805c2cb59791971cafcbff1f957f1aff446f4bb55b093221e0f9f811feb539a9c48b53d7eadcfed98e1fd7518017da97a061318ffea1eed1efba137b719c02d8eb107f2949c586bd1950dff037375b65e69ed337639a0d62a6a45db7a0fda179c0ab317e6a8f51c750319c8a42cf956b23915f3b4b9ca3a5cd6a7d1583118ee1ee183996589d054b8dd1c2cc75ddf60c2308ef31e0ddbee3e4547afd079550f6ba1930cb028ef90b8ac36e9caf17f0b8fffceca64f1bdaea1c59ad595dcb52d5a4118c99f25450f5f2f0e05460cbafdf479ee3f93341f797c5b2203eb225e86065a99a675c912b1c24deb8c6ae5b88518a66530cfd999dfef7bcd4566296d23fc141dff1da5478c4475ebc25a64d912a265925573ae54cc3891900b62ed86e7f4aaf5a7e8373179980f1595775385a8d02b64cf7dc4b4faf56bfb45c647c046716c40c19614be9f4f63490b9bfd5a9fd913249782759d59aea99f9c47efbe235f7bc07d25f6db17ccd2324d78a983317d4a2ae4ce513827d803991498dd6ad3f897caea1fa7aa24161afcd9bb6687ce8f86ce457ff16a7b8bd0b9ce411f8dda285ec39734e320cce4388430c3df5b9a56ad96a6494a4e53c350585dedb10ef7a87f8bb911bd2c50841ccda7024f0f0c9e0d507c2010abf7b65a20f7f4c2c0487e1276029ee6a9dc29698d26cc8293b059ea89998e4b4936e799a934602b9f8f016f044abd4a5cf6b3a3952f65ebd0a7394bb649587fc1c78e3447e29c328e9c06fb9e9dbb5199f9ffeab97cc48f03ff348baf86dd745ac6a333e7f92715d8baf9c8a9f39e50e4fa7a186e790e82bb296dca7064be1392ae323f1b3a9b300ec0d1c816f8214d1b41695feef5478294870c8fd7c5633b34a567a514ababfcf2fcfcdf231c6783b46cb6328d9bf210076094050ed8ecde8bf92f5f51ec92f807ed2fd61e1a0ed330de8d7ca7936b179b24a5525ba3d61f82091f172ecde5c9d04cdb1961164c5fe0bcc6d8e00dceef4ba3edc4818fa3a6d708287f6ff0105401fab83f2f4dbabcd800629ee21a5b30d934656b77a707ceb0b523883a6013928a91901a70d98c4344c78f255ed2bbd8c9488d4ecfedc42c50ecf96e5d7cf8df8bc25bcc90d4922654a404924c104bdace338ab8d1c122bb16c6dd942eb85db2c9e4c34c3c88fcc83fa92d2a6e124c991a76817468cda0502c3b55192c16e52361981f88d88ef3225450939615177d3b6eeb078b96aacae7abd3c71c8458adbebd12aee94df2f3724aa11faf4bf7ff36fe49bd73d38d97356aabf0f7ad992dbf45c64a01f56d4232062f94707af8c87ffca19e5bfc9f621d25181504538cb0a6306b5dce26af6b81d71433d04da5b3b04130b23cc28051938f6fc0e1cbb45845fabf52755a1462f6df60628a1287cea5568528843b886bccf93429dfda810142fa3a17d7e02d71a2b0140b82e2ae62f6d1a4eaa716178d50d1b0f3194c47f0510f270cd18ca785e11e3b54e585661678faf98af52dfc43254b37bd566a994e307fc09bb9338125b8ae1cc55fad8a546e6832c4bfa93204665a9cf4673386f10c02f0f6f0e7532f8a772153057480f8eebd4aa0c3c818b13b389b4187131d792680322f742d89726330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09cf1dd922b1aa15f94bff94dd558b3d90f19aa827bf78c88ea5a47e234993c7f0238c644183bf69d26c5d020117b7493123b45451800bb02f2e4ec37491f32be3a26c9070e6159fd1b9984b9c5c923be9a81c00a101c7843ee1cc41ca4bdd691538a4eb01107d885d44c4ae527ee558a68dc7535cdc7b5b9b63496d8b85943ca05b3bf0d7be0f9bff118cf424dca0a685458a11b21b0699f91b1563410db1ab16d1ce453a059b15d1b9174dd8e585f7bdad036f50b898336b86eafd2cba0fe3c1aed6861809d72131f7a3ec83495157a54d3ccc7bbcb079cf94201083e4a42463ac71355848bbf51536f4cd9efa05d7fcd5bb1f55163bcdb7a3293cd201facbf597c772e91f106286ded2ca7eb704a32951d96d9322915ec15a7904a059007bc8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555c1ba96f8c127aab4bd1253c4992b27bc04a62c8f1f48c1644f8c9fe3cf010ca02e27bb8323440c05ff9ca7c12eef1c4befd7411490159690180d8dff8d7cd2b302886c44dccbac2bb65fcde830856fce571ac2246ceb0baea8460cbdb8262d5375bd286f47ed4b45faea85fa65bb2c99cc42e9cef50ca76ddaa022bb16b43483f2cbfcfd47566d54aad520e57d21bf89e7d4531340c9a2d7d4be0955505e42903071bfb5f0ab959a57db7f09e7bc88a02d84fc58ef0a07fc8691dbc8321935c2c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09e651c6033c299a7f88c63620ad219b0da31b3d49240aaad819627ed446633708c460fd69a428f81ad0e00688b59bd8ec10edc2ab7847ca2254d3ad8bc71f6facfbe001eb9ff8a51ce65b0ee3b22ded44f8731a41efc0bc150804163f91673837603fb8d2a3a795605c1cdc4f7a3c03ee4548af9af70ec7b13cfb350693965f5afd7a48671c7db4b91d1babf5d30000e17b2361edfb3fd822d438aa2eeb79c551deafca7e71909b401ba47a4449ed2feb366912e6cd009f48d490115113f07b85bca9a15450b1d8368c4f2adfef540749fe232c0f6051df747c32d261b1d9b375e98a6a7a08a4f740f2930538a43efd3d7aa580737f94fc7ece1fd070f22fa75ab9736c72dd808f71721f8a0e8877b681e872f4e12ddbd37412af635722a583d091d0de0eb049e78789d75f488c41bd322b785c02c587504f4de99a7baefb621e9575c8a19a23a88d8de30100895ef78e526e150ef3e3f6632941c503aaa19e6cd5e9cd08e65ede30636c756e8b18a74087362fb0cf8afdc0ec2b1834b0d72a8c0b855309b00451fd1d4981988acb87eb2903ab091f4e7ba266b57f6fddd65d0628a420c46befff6e4b6d1a69745b018121c77827059895dba459abc0bb6640639765d809fb87c1b3914459fd78eb0b7eef53f312003aadb10cd1273db20c9c2a337f37c06373c6ecee8af65f2511192f049a9fda6983460a30cbf066527a95c5569af018b4434e9e0c2674722e2cc1a9bcc8accaf07e575ac7359569082efe2825fcc2e6705a0f747ac1afc89825ef355de382f75f4016f379fa1706336621dc976558869a3776361143f5720277c0b4cc4e92cf02d1b124e9c85958ad5508f501bb6bdc496382ddf07bde75a542e601fad63e78a0c550592ca5e60725112b3d766e03b2e26c8dd072d218a8d0d3081a63c65883546cde70bd14a8cc40d372fb9bd9170e1d9ba59bb5ca07f3e63c351882ea29229cde8ec29c43900d4d6a98138da57ba826cbbaed808a412d6a74032fe25cd326aa1996a84214e59e7ebe384dda3f6ead3973d63778ee11b5413b5574ef2a8031a695ab82aa6cd6097c1b255259cde54050dc49f32095c348864e9b65e66f55f961ac3c5c884ab1f136a770c9d5a8284d81477ff6a54bf6e5fec9d3d2f4043b59ccd67f04dd856787f685d44b0fac7914b195a60cfbd42d867c48abc88ffa07e426e0c295e5511d31fba4f76e076d418cd5df1321d227fac514244d41268ca89b5417a2e0b9f3431040fb4b8640432c10695dd0d2b367dc8abfbdfe3d8166816e749c5c7877c86b4f3f55911825bdf8e82a090097e85ab00aaaee4db448d2196a3efdda1497ccbfc4cd4b4c36250ff7f411721f118d1d260c771fb5dc1b588b43aab0e55a633bef5dbb9a5a068c097b61bb48d37f608d175503161a747b1d82ff60b381bcc0abe11e7797e3202547b9970e4a6d79e80d0995c11dcbf78d13fc032879a7417a6b5e8b0676a6ed2a1daf7c2eda49865ad3539254bbd74c86789035d194eef7866cb236531c8c060c7eb0b45e6ea33765f1433e2417a425bbc4df24e0d594ddfbb495d4e14491f8ba717072d647c5db5343d17f8023a3fe182576bdb3b5b6573871ebe0717c709a807591555a4ea2fa0beedb19fac4455224d867b5e2e20b861c37327c289f3fdc3757742882578abe56131d7f25ce3fa16b27f24b092e8524da179bb47dfe2ed6c0adfa7b8ca122af945102098c5a133ec6269a2a7f2dc3b184ad86b562ea8d8cf5b17013f2fe97b2093f59b5b5ebe27abeb40f259470453213b7f29c947ed443c39a1de1742a33e28338e6bc8bfcdfe09d6db76e94175d3bca4f4a8b6a518f4ddf3fbe5b6bb49e3b90f030df2e65b31052e551e938870f55c20d29dcc97c7bc9c38388a87ec386d130d1989150910363d31ad1287df84b8c2d08c3ee24cbbaa710ef7cadab974cbaaef2a0bbd824fcce29aa9b36092668aeb897c87dd8c2f824e4b3a02f6cf17896939607580cc0011fb4987a7a4fd0cbfcc1a3a229a3a418eee5a42030061e6f76e3b9cb4f05ec0130ff1d61fc23e80738ee3b1e872fc48ed386c16d5a80983d1182607faa7c9923a498ae0660b87ae104a313ec1607890bacba69a4b1bce31c2d62287565a2689a23fb70681d4298d6636adc59f4c8b5ed256a5d9483d25de128c8f195182ff998fa34c2fc761694bbad0dea7be854c1832049d45f1215d893bd98b6d228cea06b024bd6fda56dc83c6b5e8c8eac38bed306176a3f26b090f6f12e03f405b242953e552ab635213c071b4a3bf99593913c8116455bcb266f3840c65985a2d3b572571531eac253e1122f0b76baca907ff86d1b8d8881b8e78c19aaa4be7a3d83a5e30b3bbb288cda1805486798e78915487018d9018e28374334ddf5dae3f9a14c598dd131386bbcd808df7fd33de5b3e1726952335aa109114922c10f8a002a5358f0b0ff7c396be2fbad937611ab8de36a982dd1279ac45ff15aaa88d208687c91ea6ba9e1c6656e90de25d6030e07be0ea529a2f7ed1b3749030b67d4441abf7beb95e8752961851ccec4fad4827b0ef13e30c7a8d21f07f4ad8203435eb568a1379c58d26bb20e401f4da4351cc693ce7bedc9163df0beafdd4b39aad83e10917ace0089aebedebbb33c6b4fdc8fb5f5d617a6945887bfdefc307fd11dc37665f4825726ca4b6d591a87a26cca945ec4e78959fb5f29f638f146b7602df23f832895f9f9b6012f669a25a93ac0489cb047d512f522d56177d5c84d82b53e8676778dffbb6d9925589417c4f9f08400e946b021fa8682665486a39ff590b9bc35d968c85f772449421c1282b4bb734c468da9c9bbab1c7e115f452050d706facc841a8ce8ebc8f26871268ec058f461d0138f635b7842936bb0d1de5245267f2fe6fd714a0e75d0c946465e18db23b6a4c25f6db2e3ff8a9ddbfe42546fa95b40dbee2c7bac277aad4a0a708fa83e7a14a82f473e7821a91023746e8521eca386cc35270722a39ad7b71921cd46d3f1dde0f04245bb85d25c885272d1b2b9fd88d517c975f5b49b0d6cb395c0069e9a85620f03d868bc8ab8335fd79ec5791e75336eb4338d2a41c140997f2a4f6940732ba092ed4a8ba8e0467ac8e1174630f15379c693beaf25a8822ebb09293c8991a1a7f055827b1d985b55dcd52410485a8be805bbb7527f488dada3bbff9815e75218e0f23e93697b8aa9ada7236cb94a141ab1124d7da580a225ef7177810c047f9669227d5a06e5b305874a9de120b489cd814455f12e89d621391c216b2b76fd8652beb87e47fc9f49392988354bb9f3774710540cfd05f5e8d84b303c4c4bec6bca7df581d6ca13c9c8517e6d68963ca37ed7b3d8bc6f864df20e4240167ac25ee5fef5a6f56241d64b9d83bc732bc802a07c8bf87bf12acbf4e7f3ad1f1d328ba8708118940392d18d8d1a09a55596987c5458b8cd8e9a0f3e60d5e6172a93a2755ccfc059af8c8d89ea214cfc7da41848eae845d928fe80fabc91ac697df8da6eb6471779af28b21d8c39f4c5d12f082f79b404365e3f5be7396b97ae3dbb7bc36decc4802765fc0047eebee325c027067a853062317a965262e10aedafa2bee299baeaac43a434f79e96f4e7afdef0ac4b1cf76ce28dbe8ac8504fd87a8e63d4d03a9b253e2f1ef346b84750218b9fe63d6c0b1e3730b5be278fcf48d95c4c47e26d1767921acc0d05acfae4ff9e86ed22cbccdd54d1ae034e8c92d897f4b3d80ffeca765e1ddcde8e375db099156fed7aa123a1e67294a19c8c5933cfc6a477fb81b3a83a9d079bf6f931612427ca5070cd7f7130a3fddf07a123d99968fa33b4c1750f7c45232366d5527f4ce927b6e49df4eab57719d846daf2d0a782f9ff47f5d01769da487050b9fbdabfd7f1899d63ec86862d682c6b0ead14babb7f66192bf54c7f7d3219dbee88c163b73977663abc50e6b9ee95464070051d89cb465f13f1ae553bec7e8aa42b77c9282996dd009d0aee562f5a86af90980a628f88ee27f62b4564cbca385f9a7b339c2dd33ac699486a98c5bcf1613ec3e1ee9d44ac3c09438f905be8aef9a7b69624ddebfe1379f0b518ea82bde8ec7d9f42d0562c48579c3ecca8d29ee96b6c08987a6d6e5c19add316e15ec0687356e11313f447de5c92422b899b2a1f0565bffc4dd44b679a9c12ef5cc5483b436d970b7eb815a0b3f9246e206f365eaf6696ea710ec3d74c2d3918af886b4fdd410b589a24dc4d7397b319801039100a50c7435419d91321e9e39518a3b78f0acc3a313135ede1614d35f94fd9954b70371afb85ec079b2791d1207fb2612469f2858552f9f4e40fd630c8a32e85521200a85384bd1717a04f89552fc6cb3490d76c5e9c8a763b9739d464d1b4ec21ad8f5bf95a476c17b56b6bd2a3c20003c77430d0c2dee210418f9ff17bd9fb603290b237a8a68934ea3d9926a49effc7b5ecfb537e1dbf826b6146171d436e0c850bf0dad45c75075f6b8a4440c4bfead86a4491f6397df872c828bb4ee34749ac7d022b55505f4a29073fcf4be8b5e8af7be8f2670dc08b600c8664b6a6d1b81cd7fac4e1b426be179d03311318b9803180bbcfae4d9a6ebd4009b17ed3657a0a0fae1bbcc0243608db5dac04e28dcdd536f15b405a37e40f72891c13e37c0a703b1f883679c016bf7d01f8b122b47079862f968781d468da4b97cce7eeeefab41bab84db682c7bb0325adf4148e6328243a8a828e20c7ad770c52b6fae702e4826b6d96b1ec5deecb60b6d653190ccfeb18881f707b83e2bcc7c07f2eed1e914aa17c15c472e2b131b2a2aaa6a492b25add68594ac600a39bc76cea98d502acd1d75d627942c56633ed17ab067ab3e3d37c7e6d649b523ead364cf56f4944a25a0e10213aed24bf71d697941b5f741f53b73bc27ee4a55ed18f39d52cfe5d1fbe5ccf8140d07cda5417dcd6f207d9bfa0a654d55196b268d5eef0136c12a374d95fd911fc66048ae082e5bef8fdad3949d9054c9861bb3d89bdfe7647a1571aa8046e4f6f571e2d8b383f8370b3b610c48b65187c394d1502c0c9b33f819eba2a5ff6e2b9577b1712cc7a480d32497d1b78647cd1bdc312719579d3198356400a5be4f9164ba71efc9a447b44c9394b6714823eabcb4e928eab097318e6e108392f27ae25200cc84bca28772688ed2bddfa9615b628f26677f93964a9105169c6d589ae6fc63ddc1b9bb66adab468e4ef3fd9b5957cc19f95e0bfb56b4498aabf948170a1dad4105afc66b9319137366e6f4250d71223ae89693b9e863d4fe20419d6b2d66ff53c98742876a2aeaf0163feb039b43a9756867f92a9c5ec4e1b85a64fc66907239f6887264f70ea5dd790fb297104e2eb152c6815fbdd20764cabe1673b0338ce0de95aea872ce91c152a5e8500b23e4cd0acee608a039e922c761126dbdaad3769153589bd1c860219eadbb2319ae604547acf477a4a62ef5fd8fc9c2fa6826f7d765cc2ff5b899e05c4e675b83c00a7f20a0c522089a1d8dbe17ceaeb4af7cf28a96c01c8e17bd6c081e391edbe70b3d03f59089c5b6d32282f3c0c3816a2708d3a68a4615a1d6490d4623d2f68cb4bc89d220622cc53217022b0cb3657fc216e25b9a81c4574e9dde87aa0b388d6e908fd4aedad6a15e4a5f1a84c6308d96668e547a5f5536914a2976828387004c1bfaf9bf84a2256b071f7a0821b4bbce2a5c222ace880aa940e24b5fd44b1fe742ab04d85eb6e643700e7c911ea44534f7542fcf1c9f3fa79a119cca922b92fe8c5286a2112bf13efea9c026adbe3716f21673498cf0f7bd75c215097892cd07cc1e257a10e0b339c81edcb229375adca68360d9f2bdeb767fced212878bdca91c3c5b7b3f20e80d0b1b7f18993e2af99349160863fc25d0637e5bc6b7c9bb80a15175c7d4c5c88e9742c56d02fb09f142567772eada9e2f91aaffbc949b2577b99442859fc89061ffeac0ff6e46baccd045d587607ba32b6ce0330a4e966f15e8a8092aca8b07a7eaee0399d6563c3b7814ce0690b038d0e435b0898d149b43121ee778e73222174cbdaa9caf573eec276fbb0edd7aca4a6128093754f2f1b7fa151aeea7670323da4decd135774a9993ed3bc3fc57a267f48c0ce5efa8a0fd4b2fd50eba14a904f49974917bb3f1713e3c8260655a9e2529ca1c554b8fbf217ed74a4fa8b1d5562c15ffb86052d4892947909c512b6a5ec49d2ce3fdae12737db98210841ad16f323126772d18b7d5d23ab73de120f26b5c8a9665e76482383e3187e4fd2cb1562ba8052f7fc1b40ba47923edf565824fe59e468d6440cecf21a9fb590b0afd4b1a07d7c7c708e3f9fb0b45a7dd26514ba1e872f1ae4b60931853f436fdbe2aa0624e915af7de5472915fba6b7d5e201b8c81bfb5afbc3356baa7072c491737b2057740cc5e2e6acabab82ea20958d5e86ad815e597f4ac8d12c386851e34505a71d7c31cb1f67a13640bc31e59c300a78eedcff9607a77789b59d08084fe79d5b951994ef312dfb27040aceba9e0c1072368384442dd51296edbc5dbf62edca092db9c8e66d077cb88de49fe1f28d8a6f988891c9a4262ff669cc589b3e42242eccb032ecae08e4d230e827a18ee8cdc1a980b7dc19c6f50c06d0d2c543ae95b35c4bb5014d3e7f3ca6830fe3f84ddf8dee74a249d19f05c6623dad3853b9ba791c99093c878478b166beb8c6baf6e3d357af10bb7d5629de6ad49cd85ff4a4de02715d8d53a6448cc90da28c2b23cd151a5684532f79bce9035d0073b7d4d3516062918ee16243bae42016f010c31f80346b8268fbbe45ebec0e69b876622923796aabb90d1dce1af2a68ca7f80ee484f419438c64a044888b4d23521533abd1f58287909cadcf5daa72de6c1cd9b218e08c01372547ab2725a41322f2c95ed42cbfcb0816429f474c87b4d71080360269d7d185fc5b06e016819dbe0d760b39d5b7e2679e707955ec20889dccba3c3d9ba73de08355e6511f6590523bfb7f0c8edf60e7a31753a392f9a941d93c5f9c836ae2e1b8b1367af4cb8904747b58450d4f249436095ce561c2f3a5adf61270f592f4d8ad807237a85148c14c7f1b445ab6e1e4447aaee164e3aa842570b900165416f0a63651f4c11dc6cbc01dc1c38b6205576af6646e532dd4cf8f62e3255dc76a02222a86976398a31cd779e2d9d97c201290e8c9759b58f7618735b805543c24c5608c49ef6d8cfc0406566fc92355015cf9277abd3027c13edd0006387337d9cd5538921dac51dfcba5ec95df4dc2eba974565404d7ef8a60a4ed5505fb2f7c0fd019f0e7512f25525baf701e521fec1b1f9a8485c4f7d395f453976842d151a3723d0d66ca3a62b2ccf946385c7b5b3885be4238e1b5ff65e7c8728df020c5c1b97bb59dd547fa8c98ed6ea3612ce99da4ba90c20a56330c2bbfcd6716b78b09aec2f25ec151ef5e49dbd3936862217aad990aca9ae80d51d909aa65ad50dc6b834f8870b1e04d3e797704e4c39253652656d934d223acec95c8328d516dedc760cc6b9b310359be96e7387b4a0347e745ad4908aca5d8761e8809782b8923e7f05d255c44e86eacfc3ce8732aabb9216a1509d3f9cb5ee497ecdd64069ddc50d6e5173955a347bfd36359b1be231e6b53d6422692a351b00945deb11a7023ee7013bcd14c1d7822441f9663ab0f77cfac42bcba458d33c4bb9b197120eea402693946bc87f54e8187edc7a98a15ea58f5e95b1f4fcaabf1251d0193eade82a6786881e65dcf57ed54b801307e1c0aac61f7828779489326463922ce22ab832b3b26a532e9a9d8b9c594b71bf7367940da384dc7c972e0746e790b1ba66e6e7cef5fb7b3b9efeb312854aece4ce0a89c3a01efc6d89629c3c81a29fd1c6efc58fa2fb09c12f3447ce821a90b3529998268b32f1b15afde3b42ea2e0a85c63c021d3b682ccfdce025318488adc94175fe0a04f373322712ce3832e7ce267dfe9870927283ad7219a3a693422f648aac2db72ccba6f4fb1ca46905ae2490e1cbafc79c4f6a663519fd5f1ad51f95a9d04ac0efa3f44963596f890032994b71fc703e18e844a9b33534b7a18061d00057e8e4e0c458625a9e033b9865d60331ea04805d5002d8d564871724afbddfbd1a2624c7a0cf69099ba23d1dc784d224c5fc5cc2cb6b9262e590da5381d4faaec49ad7c0c3921be3f580c94b112147addecab9b4b41f3cb70d61226aa97b09a7f109f80d8cfd74b9d2a0e98d3165f1dac82f283a5803422c4b617075d803ab772f736fd29bf39ad61b392ac9ce9bdede3c7f546274a717a77aa0dac4bc150531c2a8eef5bcc53b3788d7d71b09bc220de90df85be46292008aa9aabd5c92ebcf7d7fbf5e44374ec6516d687e8c045acf3f7bf1297ac00ba2e47ffe054a5040cafe03a27dc8b7f0b29ad85ceeb9cf09d0b92bb9e7a2ebeb6e55ce27d527281ba37bc3446c39339cc73b6a309f1910aa635486fecc3befbf6e1fdcd7cc5ebae0f47a635f4008254ebd04688d17f537cbbcb08b26a8e47c18582a324b3f90229472b7053b9a6371f675d37b14492683675668d986a84c4b9097139e3f9411c1a0a424004e30a09d002772f17335de5369ac612ecae9da6042dd6c155a2fc19cbbbd651bea0876c2ef72aa4c135fddb4f7226f9aa86a3f597d2254d2fb5d3a5b372b98344bbda390cd60ef3d6553653608c1a7372e044212ef78a659d2c2ab73eea8cb5c115ca2160e6b6dff6d3ea27dcbb797cd64f5ec4b393d3fe064e9f360f237267f267b9f8db2f0cb2e436628758132f96a53e0629e30acf94557dbd1c8e649c1a0092241136e4dff3df7720ebc5dd7798b101049112604a98781737b98741cc1de4ad1fd9b7e282b7da41b5b02bdf815654cb4a29979d187b0e67bd029887a929d87de350597b4579ea2dbecf490d6936c504d3c55ec9e32b93b5c580929efc4bee329ae5303e93d020b1fa627c6db0ba3a8fb3d9ff71c494ed9e8b2ae7d739fb194f2dba40c9a973a525d7952cd8bfd6f50888f12ecb6f6da70d3a6b3bca03885ca9b5c7be2c02da7a32df1360c33e64c8f82d5a181d7de918389a115b6162e0ea2505f76c1f1a1286d57ddf4b89a9dcfc0245aef94d7842198dbd2bba5e52ce92b743a0ec0c5f09168e4d81c34cb342147a492c87cef529de0bfe781408e13aaa2a043ea4b53f3e545d7027e1fee0af57b77ed043e76fe7783c51049487f1b19c1448dadb3b42eb7b212dd2eddf3823681043327fb3220b57044c0edaf2fac6673678ccdeb99cc10c58f4ad3f56100ba84f68c3d8d8deab5a1c08721814999367d4e6f57c005ce3e64f33877e20e720670cd0ab56c9b4173544eb7183f74d946f6fc4386e62a078cedbcb42b3777c95a4ef6b7ddc35be381159d985657f21ab235233614ca6c1145464213a77b491e89f86cd3e26454c1b92937c914b83a8db322488ffddc662cc395900239d7fe05c4829dfe5311813e1e2e0a12b68303b50334f29230e1c6b148780bb45d7f2ae88f615ebe300e508235544294f7dda571413b1bf97efc3c2977430db2bbf33b4e6fdc8484a7087b7f220f538f46ad5f01216a39aaeb00fff64e47ec3283dc748d9dd57532b767486eb052d80a2a6cfc485d6b9dbec5e9dd9c311d187ca74bdd52899b4c3c9b21654cd435765eb29663615affa725de66f80359072d31545dabb2a7a97e264413235508a04cb313fc6f88c2394041a6cb1b4868a9d4664362206997cc06b697eb5c82b2ff6a3e9baecb455d91376dd4e317735784507a83a0a873d2f0f71d3cc4e499a5960891d0f8fb7cccb89f99854e51ea8ab302cb60de94c18ecad5aa1a88e3c52aa374c9d97bffe2b4f0357ac46579b49ab6d1f6d9ba6fd5dc07b7572c9369cfccfc39a8e159faf5d2004ca2e46788185317508d4c5a0fa617ea638d83d71df8838e266c089cd0b2b4a71094521f9f56b7aed87773ddbc99b9a3310965b0f282ceb1bf95b0d69eeb786e9b0ea8eefaed9855f8e48cc1274c168301aadfeebccf0af3dedb8aaf087f97755f9aab5ca192b3f7c9ba5888025b538fc77121610f7df259a06c0f903a80628c75544734c90253cf9eef0333ea20b9923a84238a8d010f5707aaab4822a53efe9edd7d79dcfe4126a8d3fc3da532a9b52c078b65d2921019177ae7e7566261371f99ffc5398b1c5a1326a3f6b96db2ccb4640251f0637940e1f751e81de226d94445100efb51228fc7da579ca586a2abee315bc6dc298434ad679373a356ab97f0ec4da656ee3aced46c84a9eb3ae0fb0d1395466db857db9f489f03ce969099e18f58cebf36fb054ac4cc448093c9b169351ea7445127b73d43bf5980e3bb0ef9a46194b81a7b15255ae3e5975219b4ed8a74cd22fcbcb38b23a893db4c18c7dbfbbc38662b8a8bb40173816e73c24cdeb4e14347d43173b0d34dbd557fcd5bd96882d5344e5e22dc26229b5b86a848dab20e45c35ff88f68fbc5b2aee00bf34d83cbf355e6b5c3d928168e2920fdf3fd87b32be62f4cf5c6e1fbbfff7f52f78eb36f3abc323f7e8f833472e69576b4607fff22f76cdfb791f06c66cd5bb89f345319b382de6ef974b7321f3b870fea452a9cece026ba76a46255548c6e05309b18e5190025430233eda9c4d0f72ba0cc3540b240c07f07b3413b99730512e69202d925c5087c543fa6de7a782c634f13a09425a16d7bd1e32583a02c62b7997d969b3a627c3c424e5fa6bffee448fc07bea817ec72c34941c030da6783ac7f3dc48074216beafc00a740d965c61e0fb15f60463537b6375cf798233b3bbebfcf8f034cba8e189778de6e2c7ecdbaacab145ecac4e5e4c7c04092f4d302a1379c65c28f28a4a100a268603a4a7780036f324330e86bffd157257fbc3e89c4836555d52ea9c6fd667631702eb57ac55ba3d5636a978791813b04070370e7222c6d892bdf4e89c0ed73adeb0e749aa47db0e9322e633f8902dce2da566986c66de4f28e29284514911280f7f62774cf401f4e2c41da6840672ec80db2efe101e91db5765f61f692114dfbff29b4251022fbb2ef7865bbb573bcc8bf977ec8b43ef4a0e3128e58ba9d8b35e7b1329a48a84517196559674739baab09c25f9d98cb4ad982998209593a22f9095e80b54bcf8d7b3ccb3c33ee59f33292bd6bf2e9dc4f5e7127a102c632c06d821111f5235a3f785d1d4111c6e05b65af34db54ce7e825b2853ce49d4247b27302dbec1579588b6cdc7177e1c393866e747ce3a38a8ff89fc8fd4f66ed14de4a3cc0ecddc3f631621f3c9d23f76d4fcdcd6144a7b0f7590cac04789ca54793d0e231a79bc8f1c034896a887ead08653b9e8ce53909886115bc8233d8e0138dda5e85c4b2454f112ee02b801a72d8b292e3da980e25afe6e47c2d7047f692e7c8d7cb2aa78f68436c82954a492f741ffc4e123577a26bc5ef60b3b83a6b7ab20ef4b21a296774cba1c5ef435c578062dcaaafd1548240770aebfbb54271f51ca06945be507989f7bbf8b31a7d2b80711cb1eef2817fee8070ad2e7ed27c3794854ffa46cb30e57534253bc351fe67ea797b7e1f889a70fc57ca25a6848f3fdcd3a2860a95583bd7df007b891ef7738fb1d1071659bf6885a725bf39db5ab218a14fb9f518a788a63fac9c7547800cfa8f0e6d4a7d64fe9642797433116ea8693c780429373f2d8a68a5b28a7a4ecaa597bac181dfd0a0cf098f9360df2e3f993c0e0fd92560446d97311199f595fa0737b7e6105488dfb485d54f8828e1f105bf4270974c200923b988d2848a18876a8ea2e4d951cfe8a0f244329398dc6baec0452dbbf4e328a238fb499f716ec150f8ee06daee231cd474c97bb51d3469fcfeeebce121a6c48f76571005206690199f92be5ef4ca3e7c123de5485ec5d968227d1ce822770ff6a1278b879f0a2df9d407174e406c85b8ff06a51a894514a719096130cead008a0a7200b30b9d5deb2866f39ebd942aaa5b4bda1e1615f032b663395d82816800f21ca8265f0661d1974f480b1bda242e5f4f85cfbb56e83a327ce020d32890d5d868f3b1dd9e8e94def3a37df91b703e6a5c2e928cdbf36751be24c4105d7523413c6f3836ae26f84795332487161e773abd775b07af6f94c3e82f30800f119daf8bb642c5b4c7392299e870fcd44e5e25fe913447c3ae3d7cc6fb259d9e9e55605ccefe726e3e7aaabe3df170fab5f4a57db832ccb19c705d3e3fa6c994d2a717bcc862e756b15ad5343178f9c152362e758e97ae24c5bc9cc1a7bd17aee4030102141a66ea9c9cdabe8dc78ec1dc3dc041b48fa8e505728f261519e7d79648bfcf1ef21dcfd009d15fdb9b5633f3caba2f216979020102161a3c4b47496ee4c441d2f1cdc0de411b63635ae3bcf9f220a9c824e1ddf90c5241bee9116405f6cf74ccb42f0bca656adae015248f114c4be87482723c8c8bd04b39d85471165843a12338196e4ef33b9e1d63b4d780baadd0010c309cf3689112cac2445f548440a94638a6859a4f78d5add81946b4ec840c80f67000079d77cb1678e815b8e61ac3699c04c929b352faac2a76b784022855e56fddf86f6de6bad81edb05a062c845085890483d959587b1bb6890debf869a44b2e0aac295274b6bb2ec5fe123bc5cee4b31fd734d7dfc21151365888f8ae21169c61edd419873b6cff916f3c8485e721a943f74d2b747f3e44256df498a8031868dcc81b8639279eb962b6a66ab89902cb31542e3d517dc1fb9b720e6b3a3b252cb5a29f37388e7cf4cf7a2829c80ad77bd39da3c3f5fcf25c9eeb0963ffd803d1c732e4b9ad0023e238702c908b6d6fa38134f06b4d123f8b9a612622116fc8a3125df8a05c6fb0ef365e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1a3961136f5b072a7f127af6fc80865f599ce721fa53207eed8f868f53c7090ef65e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1f7d272fcf770f1bc5a6adca9b42a41a58a4b444f2f7620fb76a047e1f2d0dc04d6e4a2f14a7745296e96e75273f9dd5216e6030310a5506b41bb1d4fd6f09a2fcca3bdee93104513a9e153272df35e0fabdbce7812782c4a531beb883f7d563dfd5957d5f2f807ca519bffea2e47c19c39c40cc43a6164ce2a7d10d04f3e0bdbcb584fcaeb966b18acf1470d69fb46551e75f67def1435b140d50587ed98933e411e00e7118d0eb1a4b5d3581169e76b988197e383238e7f8738ffc78d3aa310d486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fd486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fb74d7809c6c9f24c7ae89c9647b42a07894b89acbe510d1657cd0f49888516666ed018acf76703ce37fdd60e554720394a67f85ee17fa976f87ccd6f90a85fef755650106a8ef815d0e5c231df595b678f9d302a5e4a6c15b38750548ed8e51bb16af762aa022ea39f4776ecea22e8bac14deeb4cc9c1bc9ce45a77568502c5c2a090e9239328c44e297571b39e2928bdc5583dc88e76f4d47cd93d224b24a4061c861fc80eae7c95fb1caf75496358f0b0f174f8dd8fc8fe4ea619b8f88ce0f77cf8c2e90f69af4bf3d84b6eb29805e04d83a30cefb5fdcf044611941347fe4bc4cb146abf2fee0ea7d74ccf071929f83b0ddb6151657aa7d46a3ddd05038db7be367fb4955982d559b55835281056822bf814c02f3470835fd3ccb19a8ee16be85ee6290e7ad84ca97f7ccd05bea29e0ec90c26eb506ae15a5e95863b871172d1d6d1637730063f2d87b8e198b5617433d3259c7c3ae325b3e35b71a51e956b7cbef9712ed67afc2c356248c18244539fc5337535a562e5447fbec0e6697bba77d901272613d4cd165ddeec2f6b5cd29c730c5d85522cc9d97b91a86f4ede6c2a01b3d20372d5e70563c0fc36d2b630745f1ff96040b3f8fae7d78cc95d53c20a32d4af84080d355b2c6dca17a5a793c9032d9d3b401a917b07f72aae68a34fbc1fe26a578f27859bacb39e0784b9214942224af6229f11e07fd7d9cfccb4e4b08928929f2ab49b1ae381c088ee8783be29c717b5bdd353d615e7db652ae7b8a258812d2774113757be757d59435d726178d48c6b6988d4ff1f7b68d4c7bd824d74632b306e9b8c9e0c14df58a2b7c3ea445606b17fe5a9305b8007fa656a50dd0e921e0381dc01a1cf69366b4d38c3e552d86900cdaba1c9de8c5b69162e4c3810b7c30fd04710e0ff6ec53c0f0faed747bfefe21e102e0e8b3974a6c082ef5fa835e9f25b02344924cb6a6bec4975e319ebb147abc75611c92b6ee726697570b55cc21ea445d0275e03a50d697a2ebc03a6e4cbdc13f26698b02aa77a581c531a2ebf1e95e634b38e774d548fd04ce24d49bb407029a6fd04cb97ba5ae28da99043e3e33ff73e2577a222beb9d1ecfe94dafd108a35f87d8157fac9ddaadfce7361081470a89f0ee810a78d94e179976cfcbdc0e266a61f4a9798e60183508eb116e676a544b00de2fa949d33bfb66530c1c42a4dc9729a19011e398b81aacf3b3015bae64a55d63f4cbb7e77cc3f868d562f39a896d78e1ad36473afb6c9f95a8ac590b10cb82b36b3d28b34ddac52b68203321d2288479a4220baba748900d6f9e273b063d7eda052bd76aec671b34036f64c3be125b426d88465eb77681cc3f2cd386bc5f6a636973619802704d0fdf6a957d298b3c248117bd1266275019864e053d042369daed54a35ef46ffda4815b4e2f8a2966c13bfd4085b043e7ac5d4f94619deaad90ccee28cd7343c1e114c17e5a812c2cd216af36c9f8f57d767341d750a5c2714a09bb85eb40dcdd694fdb7b6c95dbdc5cadeec01d93482bf21c0c200fb0d681e5cec7cf649ca85c57f93eee220eeff6356165ac12583eb4c8947da45b26ce1c05aaac989c1cf965134c3a52ef5169e69ee8715c58095155efde37c4ed163bf3e0e44bd6b52be6ece68f4cd66e991a4fd72f6818604ee363ae448569b05f834130ff2e18b26d9b7730e44ecf85755200dd18ed2a58426a42c38278d7da2b002b87a2afc97eba5379bd76e03d50048d2be46ba912be53754e61c44e31f66a89b71f11109498b31bb803a8bffc3d9fada6d77432ad52d2397935c76820c76a21341f2228bf7ecc16374817986c3eba9fa495ce3b8b9b605b08d3cd1f78eb82055f5ff9d55396b1a8a53fd7e5ce0ab6a80ca4256c1df7eed2b45f72a12e84884d2ce0c6f7c2dd43ff58798e5731a003630be4f0c224a9e584791bfa487f469d880420d73c4bccf0cae600b3462689b0b8189f4191dfb8dffa655facb35e14c1f0dbce2af97e4c02db85b8822cb743269b8c31c23025d889d07641eecc7a5b90f19c21926b0efde7a0b53bd7fba871a750ef6eaeeb9cd5b53ad8d18d19a226b5abd22752de09b4f03a7582b36544e4f69310c8e0ad18c656f7f601391a2d0a9735cb8d3944593d4f7fb57361886d8128246e80719d9d8e485791521ef3382497c166c0e5ced0713b21471202df473ec431dad8a7ad4bc7b69d886cffa26ede9bdca9bbd1662deb0e3b8fd78ec886ba1918415db9e8051a6512d84cbe0e51ffb4446b41d01452f52b538b633e4eeaf0a9bed49539e2537e0cd3f2bbfe26f9610ec2ef55396441b9f3269170478f9971fd72ecdedb3806d45d78a9fa63f96f91d2ef67cfd5efeb9afc313b033447aa37c8e1a627b8b522e6a7fe234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d32e3498a5f4a7dc3d788925a5e23e27c29e54888af946740169172d4b4a1a49c30caaac37a040f1b4670018f8237274b8791919f7816c44dadbdb2aa22025d8c5bcf42056ef46dbb72e9b3d529e46a022692c79f08b39bea9c111bdc5e3ff6d43c856fd7b0f448dbff667d62904c000e382c767d263a394f6ebbc7f6a914ff719e10f7f81ce1d0d0665169fa2da9be187686025da32794e896aae2ecd347af9e3cf6a55d5843ed7143402484c9462194feca5f9bc6bc6a8746a74762cc3c5e2ee832eb06ed50d9d40fda1dd24060260573c046ad651ba0efd1b2246ddfb4360952afab5cf8288ee493458a394b82bb692cc73badeaf61e1e1db0bc9dfd4d011aa1f71f3ed51575e83a8808e09a515804686433ff0778d7b240f6c246237754cd4f66f1642f60ce5dc8b7c457faf88867e22e6b200ba8bc9ba6a8444281d5d79ceccc4ed4a8d8f0a543dda61132bfb483f30ee6aa1f17f31b950256d77e11077b598adb75a1555c6cc828c21d13d39ec18568d58c9a08933f86b54623cd254d3ac801ad379c877427ea8ea0fad5fac2abadb34552b9f0b8ba3b94a300bd7395ddf1855772125a9c1dbd3000990934550b329cf82e757dfa6ad63f900cf4f47b0ef7607912c65adb324080ddf0124f2eeaf0644d2a420308d70fa7598ea397c5f566ad1bc1c070d75b8acfad9884be9f5870df25b07c40f9ab80ecaa8efaa70c859014ce1da0e746ac21ac9012e5d3570ade0ee737f43f415b13164581063388c0ebca2b44ea746e4123489457831b8ba7a5b5a312c39e578120e3304442f9ec1987bf09fd30fe883cef09a120f5044a42a193d30118764d3cf499e956e787cd4aff2e26444379c708ffcc3030813c019e847d2eacf471513ea9bb667630cac2c093fc22b4815b8bbe14ed21f92895bdc003f7b504f935bbd15d00331ccea6d11fba4f9693f538f56ce17fd1436da2b236d1086e556830a64c28830b78865172d81037a89502082067c566aa3c5b6aebc25a7a1675846ccab8f5c2f81fac991cfa67d31e9efb6be9516120813981e6d5105db8f5c3e4df9616316b59df6140184e3186d4127da17c9ab8c276195ca50c21188b7cd13a6f39abb2d725a0efa7c01d15d5e1ca5a9d4757962861c5e95d4e86ca84e087d41c4dcaac35c1cce1d031566b762694ba34238b3aa911c56f112d79fd3c696ff9da61b50844961989bd95363a2accf969e9055acb49c4af21780a4ec38fcc326ca8a437907463dc7025da31519c51b4e027255cd469cd971f3f5ff4a0e76325f1cf2a3f2d4d0fd5a30d8df21d8ad7557ce89909a35735be610a011b498be060333179f9c555fe04268d6b168955b52e5b0daecb9b5b116bdd9ff082a597a74274ed04fb8b3f0b38de40a34e2230fb4f44790117e6840545fbc109b7cd20bfaa6ff0b6f7d0f62b7dad59a0d3abbc6afd647824f3f56543160ef1f62f1775a9bbdad2b2003bd6f7e988ce0e6671687bc54fbbbbb1fc7a728709980871a63992f0f225346236091481e3a3ad8e0045f905a9802da1c6d2011748cfe8de59285c7bec8b14fc3297b9479f9e491ab176d1432fc3f0e90ac3358eb843395b29d30cdea3dde23378d546857f6d4775dc8fdb9c0e862bf062e1a98a3cdd2f8a8954348476f8c586c3cf35e19c7673fdd540557bc29e87ae1adba8c025ef57007cf9432adbd4d290648a29cfc8a8265f1febc9839a0820d10b7ec58a00059e9a3180d3ba835e1cb28b93e83a2d15ff93df5ccef6932722be3000417596bc38888ec392e36ed88a9ca8d716d0b34b8ab26b3528531f04befc36db1ace14f666de33a547d7f78371aec9cecafb4375879e729bfc85f7b14f2b2ee11c8f36afa56d8310a5a585d9970c6780881b156d2f00fe8d5097a82ecd898ea44da53df5b193f8759c1aa9bfb9660d3abc5e829caae909a0c191189e50ba3d9e5102ab34d148dc41340b0806fca463aef05d6de016cd33184d19e1b150e7fd480da86f2dfe316f26dfccfd47809ec592b1c286ecd2b00fd82af56b7c890b4e3926bb02d21c32da9a9c828a888d8e461e13309fc9a56a1378eb6d004ce97049e7aa8cf927274e35b640e8e9582e7e1f5c075e58ec07401a5f763239aaf0be910d05149413c313fc709846ff67d38f5003b0d6ce8d2e59d3938c3f9fd1ad0a08747128445e443213c53693804b0b6376e0b1fe6c2a81e96dad128868bc72d95a8a9a52b3bf8ef5ffda62593e4ace706e18bc1add4e447f769e4a24e5dda946168d991a92fd04a30cb01f0205e434e62c91aa3b35e76f132611c07043fc9a10ae0ea393ab6dc388be8076e9571c601d0562ab265ae0635f8c4d530d34631f46ad5cb7f9d413fd7c6b76980dcf79f74f4ee8950608df428d011f8eae9c471bdfb2dc5af274f0d683f92bb70d7532d15671cce46d8b57a7ba5817e03c064f6b7b28c2afb33aa72c9c303eae02121a860790510a9dcbd62281579b8fd318af635b4709b72489bebb0a984b7f8bc4fdab6649f511d976b5d311bd2be1b45c940f35a483c7b44063b92d0b6883d7bfc8f30241c0790fec70be7f57cb1e72fafe1e5d16bd75218c1c469705261e43b7c37900f1b995fcc2c5f60a5ac5324a0d3ba9635613f125358f363ef17ec274aa587510853fd5d0b555de7a979c0eb4933ee9ed7e6319ff86f090e9e80e0078f5ef5cfd2403f21598ed263eb8973f542753f7f59e783f94afb99f988fc3766af3b3a0fdfbf50d4d486e171204a8ff60c2b0301b1447225969cf14b1278c105f7187d16a732d08cdec2a6bcfbc8045df789325e414301a31af88504d17f4d246f8efe6273e72da06110cff4fb49a24885f211dd1b75a65276b5909afc986d706418f72ead166a69459805c9b26ef836b1bb7b3f1faeb9e37c4f46e8a82da3a4d6a6c53b6a9b8b763410ccb7109191d44f4f24dd105f668c32b7e895ac8df93d3402395980cfa05d5d6335c06f2fb5bbe1d84b191d142ac43e44f08253c1613b3c4c990f1830720635c02f5b2a3ec393eecc109edd25f721107a8a6ee7875114453c23e2b5fbf36a220ba9895b774deaa6b4fa07319a7f5598d861c5990ee81ad85ce0830ccc05f3994d74c2a0c0012832a57357dae41c4a0ee189efb04add028abd5b4df1d59f8a9eb190b3a3b8cd79dce806e1e8c45e3e094f3b14b5337d09da9c7aed39dc5855529f0fca2c2608bef8b94422e2899e56400087be1be181d1840710b76113b7b655a22c65ddf13e3ec7eb930cbcb1ebed1243bc726e72c69472c4bb250a5654247cd6b19f8aa82b493d62b5372f9df198f553cf7d8d5a4a74ea9c0b291eae6d21cd6ee91b03508110a0fa1c93eb60fb03bbdc14a2cc4f6c3e5830460ba63ed37aecd1b8373b4cb108471d6a3e438156fdc510064ce1b13b1be3aea45fd2c21ee44df54512a86775b64521281f34e3d13a26ae99c4542293bc1cd983371a2fa24878a452eabeb465754f8986cd8d7c057d164555c5288e933386a28ff4b3e36b5c5f2025e22388eafbf70d32c242bf41548c3e1edf4ae5f75a98456b7f5900e673eec551b1f75d04c91aedb57cc7bde5468e4f92a7df627bf7c2ac72262ab81a2f61abea573ea80e7923a101bdeb181ea104c35e3090633be8aef93759f3ff3b299c4b7995fd3fc9ac34e26229a7b75c0f93977164ebc306d88d50be83e0a030061af0081ec5642952058f28bed9a4d77ad962165c563ff729160442e64ee0f1ff3fb60fc4f9170c5561fd3fb0a42cd03dd78c8dea7ce960c859c53603537f41f75fd184fcbd1804335ce2c82990d73e57948022b5b6db2d7342c4eb359359ce40937e41531b9b4aaeabb5b5d1e6faa888075b3318cdcfcba74364f49a991029b23093a991784cd98fbc469ae7a749873ad56a1750f5b4182c7788db21a0e2b370faf799117685cf07bd02b52c91e8aba868bd153e076ab21d3e7e78ca2841a338bcff71ed937b87371d42f740ef22f2c1b20e89e198848e8bbdacbd113d3315c15b8810ead3a4635788f009d3d0fbbeedb4e7df3c06de5aa264385e070c07a25b74e1e9c85e89b7cfee8846c38a453f349c2f4e84c4ebd47ac29a4005ac69b3dda6346a5cae74ce97acf88f179ba82d0795c296e3331f315ffbbac1722ba6452c931bf95189b1f0b05c090a617035dcad58a9bdac63635509cbd81e64ddbbd1c55441b24d2723ffa4be205950ea6ce1e1acffdb26f3bb320166287d05aa1e1987dd6576feed92ab91c7ee23ca2644047376e8f1c0ccf0c28ae37ba48a37675e92395b95b746dcd1d6669f62e979ce5b28a644f24d559940b8a37072896dc4d2e53c6ff26b1fd177d5acf38a226b6f09f4cf5a577e1d0676a8932b883a871e92c1427692fa1c07de01a0678e2cb08cb3bb8d1440d4d27e3634a2f5a35e3c609382e6aa75598d678ca7b32b90b6f50d2554352f3071213bdcfcefd84a3a124a289aafe2fd544ac37cc6e9f3e1579b02d37968da4449957b4fe1c578a28e384abced83dfe07ef00e690d0c1743c3c9bef28d8cfe253a1f624adeb411ee1b39fad8a20a739ab969828a0c78f9705981cce47f2ccc04bb82ff4562a455a031186ddd0f34dadc5d59997adc83c4ccf706a86294fd7865af0b342ee23a6bc69c2ec7385955e7b8bf85d3c218408e9fb7343d8e48b46080e22fcf626e56548f85e4ee878c2df12a6919b753967b9a86392741b609e8a4096c0455c7ba6bb4bad5f1a8dbd7b8fd1a89c454285a6a81fc11af3354fc9c0ae9802f538510f5e6636fdb8df307cab62346e4608125b19c0bf67c1b8d5cbdb7a16968899edc5bcf8c7cd0d4d03d569108fde6736b72b3d766a4bcedb8bdb7a725827616de7d5ac81d8d7d959e08c5e0cebd028a52e8dc4b77e07d061d5fb1cb38b59864cd0bde35485e5b298ec78a08d5c5da9cdde2c649e878f1c765ec425283ea382da8b47497c408bc581d92ade997552d38838d93db2a6b307de1e75dab3070bf96d234b14a56ef2cfac837864d4ce35da4ba8243262a9031046b9a3ac1d61f4a25c3ffe1e4b4e628fa2ecd87da46925d14201f8c6fed656258a787926af0afb84e8a4359be0b2e57bd789aea63bffe2f27e0b3dd048e8a72dd80aab3ffb3a493ff47dc70a2820f35b44f7c02149695fa3129fb0599265f3b5eced13415859cd8b1d6e64e1569327896facf2e21d312f5ac9af7a77cbaa6c0479e40b358e75a7716738b3262af59c3fac30233e8fb30446bc1e12d00d0819791bceb83055db2aa66a1e943e0be03362031f9d198f6ece3796174c4307865ae2596283b12ce87da7da7513a5f1a8de8dbe61eeca533a464cd67a6377952873f9d574c2955d4466ac5d8149c0748cef7e566e776af903c8a4c28c229f272e060e280ba03986f65422068419aacac6d0c9ee0236d4f54f59cb9d1461a2945efacf5ffd6c1ef357ced706d360f7330a1b84a998b0b54ddc97b7bc93e053488d71ee140e57d1f5d25fbfeaf5d93733982be60231bb5756a9334ee8d241e609e23d0221e7d5e5dcbb252be9f2132064f13e142fcbfd35b75cd080053e1707d267b8d9b52c26edef9442dcbffdecfd663a9933ef945c74f5432ec75368602d0c24962073e8d421dae30932b06feb3d4c574751118652bcba5d2c4515f8cacda67fc34d1f35314ee49ff2658559fb148831d6e7820ecaf3040770121438f7da40e8be1c427a1f0a88a4abcbec3466b6a7447df3313dd3d896fb058c255ed4290c30de613c83d6751331a19ed3b916ef522b82859f532ebbb151ca54c42b1a2e44403cb1f13ada21f8bbef060e79c7eebffd303afe03b14bcc66f672de4c62739f81839931e32bcece570651ff7377efbb4f36d65938f805781846b82f6d7f0c5db3667900ed62d8ee66c4f73b02b2a8baa7846470f13a864aea45c2f1264c2842cf6b64fb18251dc7c04d9c8cedb2786ee80490ae66e7074ec2e3dbc52a5f2f208eae193c5b3baef4a2751f49b3274f3a6737a36e909241e2105c66276d17c27696d0463a67dc3d055d77fbf3d405b417f1dfaa71d817b0cb0a85f552604a1cb1571ea9a9de616640e9c0e98eb28b97c31a6df129624e91d3e2267ead9be01c3731939f5c5944198461ecb2d9911cb6fea764fbb5d1eced9db72b28c47a93e3be2593f69dd78d7d7393472aa4eb92461f1f109a31175bc43c7670ece8d0e53353f5afdecbcd41dcfc0103c397c6abeafc14d50152ab1a081c398b910fd06df081095cc84a156ae040bb52002abb88543c0004a249b883c8c5bf0e19e57e405c0a3a32dbc540a0e452c914553884d931e223180cab23f00a9d2942636bc9c35eedd3c8d05a1d4910f59f9940880a66a4e4ffde03cd7e9c271ae821787b298d6b943ca268472a653b27a666b2565fec9beb793101b68e321bd8b9b1208512b8d6d80f4caa6c196f4d4619c989240fc8ce33682ba89e57676136d6681a101cf3ab762f3c1c4b76cbdffda41f5cca332552d1472030a27ac2e96b96f3658f6c3e7198c913f6b8904d76506a2e7cd8bb764b0eb1be443610a7423dc4ebf140a71fd1fcfe7332bffe7d8960c81be147732552073499cab1c8b906bca6ad4df2146c26f8bab59cbe20a40a7924c794ba3f0165b6b3085bc413882b3803d914734c8b63aeda6adf0667f658302e11115a526568eaa23e4cbf836ae1f22cf86d773cdcbb95b9e80b5b1cd3c1427ecb65a41a47b91b8b0db3e68a378a3beab585210a073577e121c5ee54d2cd875de2e464c102d6d46c4b9666ecc690a76780639ac9814ddbb0f545918b9f8f56c3e5b07581ff4e47080d022c7ab54223c7e7712cce85b5ad3046f440c0b0503ccf3b543aff93b9838e5a2a9e47e3a9b3a690f78a61e5353e475d6a821819a0637498459ca8df5f87e427036e594ddad894ad5210d0b11b76909caf1817e17536411ceb6d41b20ab198248c60e864907653ae21bbc0be5a529db8169c9105836a5766e7a9b45762fb270b92f844ac1fc1e579a87354179bca1bc3ae7dca593353e929705b19080466c2fb04d6645d6eba842a21a3d2283f06af5f3260a2907e6e7cedd20ad0bd6ef527c44ee7b654f1b9b01abdaef33151bb1788ce96f4d42d642454fa06c967b2c3c7af620492a5b2df7f4fe879a1eb5f84b648cc3dfade4f2df3754e1d1bf2f48ce3df98c030caf4080b494230a7bfb0e37b9f4431d979735191aaae09b8927a05157b8bf9223c1500863d37316ca81b002d88e36df1e1ef265fbce73dc236ce3a6e9e208717105c7b61455c40a556f18e55d22f7cb448bece89fd6c6dbab3b4254b1feb82bdd0adec7f9d870fbef893c576d0333ca49a4824e0d8d3f0fa29be1e6f53c4227a716c270fdd873b7861b5efdd4b6328dc1058b1de5587af907bc8d547e9c9c961b4186117874163b8117be2ee1c481d641e528a9b8d31bb8aa314abb365aff9969c555e44ac44cb08acafe5efb4ceb7d891acc6424ac2b528e7c5d93f58dde6c01c1541bcb1f04c33612eb2f577b85b5224d7b40ab198cd7da796c0ef4441418692864eb9933a4cd4d1331fa3b64e0d91c4128e03b48e2eae7ee3d6a190e3f8c4ddcfd86b1d684e5c97e9d35d57a659a0a78a1ae42d5890b5d7122b59c33cffa021ee9f8d62a52ee3fbb20831dd2898c2575c31757854ae4f872ec90826a12f6638b93be7a26c330fe6fa4dc67f38ca1a0c07dd8344af018cb50bc5b680645ced303da139891475186ca4dd46f95d7cab675df0268568d21d177e9914b93e661e0a910d21fce430f8e1e7cff62f0cc4cc001924d4f4c30542bdb305c3f9cb76ef5e3b68e94874aca0b01fbc431f5a55b4b298ab10905368e7f0b596d9af26debf6ee7a3c211dd4a3b73e345f30183e2ec7395e3aa595837b4cc24f347cd36018ca28066875229a71177ba43d2ddf53cc330ff076675bc54d1fd5e776854032030a072a3306095be0acb68ab37ebe79d9858a262797eda1deec6ec49e14ca948e8b38559bc6aeec023bd4f4ca264ee5797ec7015c2ddd106b65d95e1ec15883ffafad8fbe741986efbeaaaaaad2c9a82f1d41773a9b504ad76654f3ae2ce4d8e68d69e358ef88caa86f1e2cdf0c73c676eed997c5fd559a58344610f86102eaacc7f7a45cf53f17b4dd592cbeb9d6aa1cf3f56211564b6aec28d3339494746850e2ae5048c8b32befeb056e25cb3379020af72ecdbcaf2ea110def532acf608032edd4f58a732d68f478c2578c22a348161ce544b7eae545375145c8962ae513c9225d87a4213b0331b3fe45b7562ecd27c3d6e792c512a224c2a80046c166fc96d769898f980c51f201ee6a1d8039659612762f1add3c9116c9a9ab2bcdfaabddadfc70ce18009d87367b8b7ab4353409d337e2278721c18728ebd60de036775b54bc812b863911351c640902bde7e01a37d61669fad7b70c9d622a8895224b2ced0795dcb7afb84525d64752aa9fca71e9a69b272a3c7c0172eca5ca3b9a5b1c2de77984f6e7eb6801551cb40f58ecb6494c975ca12aec1dd58d2e18ec63d6403365a1312af976c7e3a5b526e08af97fbd426972afae6c6a1821e707a1ba632f5e98239819b66404d7a98e8db567b0daa49db68eb254f61131994b47e67d6f1a92b1f27851adb4ee2f7bf8fd47d2e850ac4c4458e7c6932015bb259d5611c70860acb7712c923da33ab747c62765676f5740c0a7699f503215dc6e371e332b7a7f5a6fdddbac9c860fafe2a6ac1dffb6eda6a11e9fff2f8d41d958e85458ce64160e2daaa8d78720a3c80ccd18a6124ddaad8bbcc85c90b219185f0d8b1a54acda8952e0ef305aebfa78bb1b76ef78f0f22f8cbf1d64b86508b4b457d535c6c36db02c5e3f1eee65927f1e571c61dbc097e76599169b91990033ccb3a8cce18047274ad80f2d8c0d6311cfdbf709a0d5e358719ea7728a568bdc1a869307b6a1d1633e4ac55daafff5fac1155a218b232ba4113fbb47e886616791a6de640fb4ab875edcdb4dec2c752090c8864482f5e56fa0e88b5bb5ef40f1dc985e247ca86d74b0c929717c343f20efc6c0276d24e8f62c08c92bd283043adcd2522df8f5a57671c216c3736225d79c8131b66be99905b84030c41235cad081f909f6242641ba2b5654344762cea0ff54c8d61c099d242dfcd10fdc9723f1890f724834a464d0ec30a11f428b92d83fdffb7d7d618b969e115d5289d199365fae45733a473edce6abb4840951a05a1938d04dd038efa1294e542349bf17458da3119fd918a6ac995ca5c5137657c6f84379e5a4d025a3fc34b150298ab6d2bfacfa19622c0fbb88d2e012256a2cf77d11f767add6590e242b566ebe73aa29c309662f33e1fd2762a997fd3f16fe88f7ac4afd7b1bab9167b555303541f95ce4a9e99707a022ee0c2b652ddf192869d9452c49a6c17cf628b53539eaa8d8f2aa7c7b504dd29db49a74e051d82d7f4ab15e9ec39c25ddca064ef5b3a3e862d624d4d16665abcb3a4f958df4569c208606dfcbfd9df6d1f0d62907e43e6ec2bd9ff91d37fb4b3157ea34e4947a8f50f08c55f1d0558aac52e0b495008bbdb98d4e4ced809c2cf43cca714634f49f29a327d8f453f5cd9f71b38b5a0fd3147f703cb00e190239330118b9ba5f70dbae84caa52aa1f49f11a7d7399bf8e61d231411e8524c920e0415a52abe5e99dc3e4b2f12846f4f33707fa4c464ee51e8c711be4ed47bf5007c51018f0c3615dea623e3a204814292aedfba9e68da6f3e299dfa3b723dc975ced97d3d4fafffcc4601e17cb683cedc22111dfcbcbb420a59e90baee675459f7b8e7104a9b9cc118b5d1d9edb570b796fa5edf30832d3a2f664e71240b863189de37da9a4e4a9bff787a77ad7036314a30119149f2845b80aac78fb99d2c0d479c0cbcf9c17144a973a38a72fac4e3bdd349df1c38607d8f63e49754718ec47627d42b704f78e9692c5adbead872ba420bf8bfb42cef6bd4edae17fd89ed611f361d00f75aa25c6e5157e8e2cbbc6b854e520b58c12c5be2ffd22aae917c87245ddba128b8d31388b3b0d6c273aee5a499f33cb5b69c164564553d34c32a98408ec1a7f7a0ef0e0dd3b5f91ffd4627f9633813d5827fc12089593223cf78475b6d5d7f406c17d8821ef3ce94a12fadef6b34636f9809359e54434997c460a74aa665b1e447b6676a62a22221ac8a2528e60522e40fabd3c0b4da4687fea69b80b90059c68b4243e2753b901fc7a352aa59677f4666ae06cc85756ddeaabe5df939ce2bf56380dfab623b6a2889a20ddf003631a00458269694a1e49b6fc8e4572f21361943ba64f8a30905f2c09333d60c4aeebb6a860f2803c16fe3139081cde6ac9bc1718439f6fd735147475c96ba6f10aad34cb5b86d87f54fa04a50135fe7600cce60de36e557f7216a43acabbad4c6b621a12a7115e32415b29a4a5e90537d6e813742de37138851938686cd4397d87000aecdf84603c71f16eef9573c3a8c4a195bd25d7b8dd1521f91a35223fc6ce82debe22a30591dc413032082f8daab5f030bd4b06c931aeea6f4a551e16f73b9195e26c8bd1ca2bc844d8b6d0436b5cb33d3e7625399d229642c4d989fd387353f3995e542d5da565b446c8b80469af051ec2af8230ad8c9b450591844756d7feb3d622af30316086c503b31cae96dba2fa230af5c006407df65039f840bfc887183d690e335d5aed3f51746b5e0a46f1e2ab109ebc383efd94edaaaed14457e236268e0185818cd6bc2f5526104a65a6a7a5478b080c92c6d361ffade46596643486f1fc406a3bb138348b3811e719afb4bdf2b59d41fa92caaa5465b7944e2f7ab98092de65fc3e21760910a7716dd2aa80b977f5e3f190ea0e0432a583b6a8cbaab65c1c686c4a18dab25e32d80148ef7fc38da1a7a518df04ba4b353c931382d641ff16d0b055c8fa6b45a728aa4c0caa350e2ab2b52188f5db5e2bed84593f64b96f9520d2c712cbe23950ecb781f0562a49f5ef4489b6a765b128f4e144d720b8a90bace5645da0f4ba857990a7f61ef117b3143c6668e919b4e860f342cba2389277b17fe1e7a6903c1d4d77f02f841bb8e0b7042309473979251b2b77e94fc1cc4ecd2d280036bd23c1d2a279a7d98812fb7b078dbc0e08beda77f3ce5dbcfbd20e64b590cbbef131766ab393b1d9b2b1ac9ab9529b661030c1861ff6add69d3bc808475c77834873df83d3168c1e5e97b99f069db274cd06e9093d4ccf45854b3858321a79138629fc5af0cdadb66ad8e4699eb2acdb1d4f80f142654c667a6efbcc9fc0d78515095b4f5ad56ca990832daa33e3a5665e6a53ffea81c088e1ecb0986982af12e04ac1aad247dee39c17a3f84880f52eaea6753c23ea8bc886a986113d83e46bab0141cf151dec00e2fa7df5fc02ff91d133e7b74f182dfe441be3dc8764d51223145291d99753306077f9fd7b7172ff1b519e7bc7c9b82566fefc24f29dad144250ce9ff9d66c97093d0f5dac8e18f1b3e413d8a2e63910cdbc4885c7d82e5e1f6cbaeb04c7e9f936b0d48d15527065e06c969d6f98cc5137adc042c864403e0f671d7871b78d25ce7913e528aca2c30b617bb13dcbe0ff8f940241e32580a58c968fa68cbe5b3ce7996110b395f67633afb53ef74e2c97eeb22a1216010f0f6c42caccd9efea034e39335355296a155dd8f013b0b8b05fa5778ff8ca639f2e4593e72d7ab3fe2c2f7bd4df77f620fc3783a7e8b8b96fd32e2c336221f6e43d8cc669b71c6dba8c96e7ab4307c9416a3bdc0430bb2c8af56a20e5742ec6df601d6176eaacbdd1d7b9860c7f87de27d6f8b1a81f2014bb71c9244e9a94c270bbdf5fb7a311f1dce9658cffdf13d37b5d82e10481f7b7d09d4e6a62deb3a81a55e288b92eaf98bb85081b289827d7753bb1d756c1a9386b2794c21d14275896bb8144bfa644de784897c99288eacb04a1b31fe974760eb77ba805f975e0686edd44a60adc7f73174ea2cb45e2b8dbb81918f5bea661b9d287614b2522c6235ef4e702aff54065eec0eb74dacf65c9ef5b958ce7a9af9845947fef316afd33ce6bdfe58c24e6f5eb0c868c10fa5fd9207cdc1068e295c1d9603391ce1e8ff87d1e677ec2a8003c8e0fb69d3f0ebed16b41520762a1039b46d9e90c50e4169cbbe09fc79446fa0374aa916fc57b1ad8af03f7c54395cbffff0c3f3560d2cb22f42a770d2e2887e06960822f1803cae8ed22be4452b59a20988126be21ba7bc3536174451c16ac011aec52fa30131c8983d63a46087fc415652907e49813da2cbb65ba2ec0fb1649d92898c5b0ea415c31073aa9cd8c7ed2b8f446693383a306694b4d280f94849a59fc7cae4963592f55b6fda60ac3e3303922033f503c3112a54ed9e8b6f91b4e53f54cf48d654d502668405473bbf0a541b381ac68d2f6e06d2edf0d9504bc2948207a8e915dba4a9cfe25aa6a2f99b5d94618190cd5be0b51ae668bfd828788c4f1c12dc1c807aa1ae4f665055c95990eeb836fc759dc50939d8c460e4b3fe1378c5b5ee6ab76bae9e10e65e47aaa0c1cc5b120868af4daa6571c95cb60e8fd5a093a7084d0ecb8fb17c4e94233e4c1813e9a1ced4ea083c9f1405aa45fbbea9d77acd203e51387bf256ab633257ba90ce27be921f0c91c8241b083b35ace878c28534c88b8e2842295c11476d300013958eb4266df4216c16051db923c3db2b01ceb4606f6d0884f845983b8f0b48f7b17629e6ed832ee0a58e2aa9d7f1e3d09125bea91b1a2756c29ac028d5d095ec4ec2bf01fa4a76e35e67bd119b85b993030c123ee7457da88847301e7f5c388cd78b0d470c52b716841c8df93b540ac93cb35e72a4f7d901f0f7542765c75e1ed04bbd30f1bddd32b7e614494235ff153827da72d56647df9ca76522ae8da1037ce34fec6c7295f95cfad4751859480debdd94efa97583bfe022574e6ff359d3eae9a0e5c3bb1ae425e989a5268dc9b171e63cfc71c78ab496ac0cc68227f9c974b6a8ebb97e8de7d9438024586ab190f5cf0718c7d8ad3e081fc0376a9154db98029196d3771d2732750efd10540a70e9c4dd2547c252629d4e43e9a1cfcfc4a0f7f42dba35ba80e091f0f9b5ae97c9a7dc993c29e2fb22ecb62b8d21903f5a3ab313540968b04078c22a498871d21f746d5be9035a76f9470b3862544e5265d79dcafe24a8a3a8d61ada78e00f2bddca42d79658ada50feff401b4ce623ffef9a133179d3ac3526f08f63a90a12097559778925dd0515764fc9370ec5fef19c95d1d4b70c5369853034c9703f72fbd19208f22a27c74820058c6d454d9cf174f11b363f1f5dcbda2de696306b40df9aff263122ff9b7f513bf705a52bcf10db17057d8e6d66273f82549d29bb1c5d3170e52fe3a6c5e131fe2c0738af2b93ce7f82984f57a255263fcb47aac314f327200fd3297c4c3591dc16dba703c9426de66e7230cd5408ac43699c3c3e185dbed68434847efc9ba0245e0502c4284b40ddae428d4711a54c73e39d9493680b8bf4c0e4396954c1034e0b40278c95446378127eb8f8943414e5cc251613e46d3872333172eb8c8135cc8611191ed80d97351b83241219154bf53df9a820ee7db1a65b901292cede8bc9efcddd32495fc8a2d52d5e18369a22c5bdf21d957d54e2244e3d9d40712724658d31de73ee3e51f2970f730f75c5d7975460e02611397f97af5d0cd06e43389c7139de840b959b03225c6aaa890d07953bdc119fa38af692a860fd477a2ddb8c11ec4b5921a2175e0c227cd45109fe50442d1339abe383e81edb1432e9da9767d371ab813b4955b3a0be691aaf8dc64be0eb44e21a279b7c36948df0865af1fecebcd92735e583eddc11e13af83c2055b7b0fadbdb47a0f3da068a17bf4281bf97d49dc515f625ebddc66f4dc93de4eb4a2623e11c9317dce9710edc9ce646bba91c681539d749f6d9c6dc277843f8518aa51f2b74ec5e2f1848bf5892419799adb785debbfdf33d7f16483204fb922c0eb57cfe680b849eb68fb7742d29ff7a8e7147d7b129573f69907a28c6d340749023177ca8c656ec80aa883ec0e5ccf38a8810302b1301b4da0df46a22c62f8505521311e4575bf35f98da29af2ffa6f8617bbb76ed84a95570e2b1a75f8b253a08e3c25eb886f8bf8a7a445f1b1af5ec7cba84b00964536b6c1a60606a9e1ffe37825dcd33498c5ef2e508fa694b1f927afbb288f297345c9e4afec9fc476818f248c28c78e26dcea6dc2f6ba3e65342b727e62be0ce6cf050f5215dacdaf4884ce604e804c68b467895e646989dcc955c24b26206be47bfb9f926aa0bccc41e6ac7ed1fecc5ff534d028b8b40110efc494a6ce368cfc4f71a80cf7d3d87cb0cbe60638052e341e3c1fe8c50928d50463b590da59e51f824c39b6c43fdf3595fad71dede50d5deb9b08c09d48921d613f210ed0e0e9bdf5135e9b651c28de684dfa50588a132645e1328793df4839d51a7c9189b8331a0527d9613596298bedf3e058b39f3928d59a270a05dd64e43feb7f5e91d41ae1628f34f339a656e0b3c734ab29fd87fdc2356fe919d3c2b58f1a1842948cd86aba5fefd11411b397efe153228e850779164a80735e088296aef61538ac616e71aabc75966698cc69433ec1786fa7f300722cd33cc92f439c968bb4f0aa40e6a5b648473f6237dd73c94139d14dc80dbe5eedef578aa778e820988b1e722989b12440aec25fd98bd4f639f08032fcd2d02e2cbb83223cb023451ce6fac2f7d84d7356e8963e9b1b6c29666d8df29315cdfb687cf78ebc8b23ce451424dbce87f17672aef4946e9608443852128bf2b982060fd7093d87f6eee4e7b75c4bb398b428350278e1d1cbaa04183cd99913afc99551e5707dd4a8214eecb6c9fef9eca28d0ba02485a7d5bd3ee0d4bcdb6c8b511ca43f01d1421b05448a30907f4a35d626e2ecb12dd12fa52281002fd940cd8484276dd100003ce42b0f292ae8e1c12b00d6463cbd491e9b63d697cb02dbd4da5d6888ab32463c1a6e1bdb55b07a88e9bccbedc3c948fa44ad9acbf224f5c953259af2c51cdc4ad99649c6908f52f39010f288f474bbbbd9b13c358c6eae318fedb50c907d0294616b98e4e80f85baa450bdbee8659864e6016a45336c43e111c79dd023b00980ea90e662a4471e6461a99771cc8d5b99f1941d0b4873427d7704dd4f8128eae5a23a577ae16c364e919f855202a87d93a300058381c2353754bb9a7562ab336d016f35df93674c7fd9487cb1c0f9ef2d388648aa224258ae74d6b79f07864e67d73fe7fa2fcd447e99f1f7bbdda60a3d410609e40f0f772f01a9f019dc6e89cdb4c55914e135d3aee201291ffbf787d679e4b7a4d081703ddfd781ea6dbb5f46bc001315384c2abefb20b42eee8cec6a6733d9aeabdab5e05833d6531e5a41c8652e09be5ffc2fd353c43b760eba4c632917e45ffc84c6557bb915a729392415bd5c9818efe39a21892846522a2ab844d2fd759841169e2c5e930a4544319ec8fddda58fb23f503531259807ac2dce16ac4505bb75cc778d5a2da1cc028fd022002c0443ff4f8ae6772eccdc6e72b17db8b741472fe810195c97ccc134b0429468cde24a9c8afa1349b4b4381e872338fe8b7c74bbd5f7de12ac6f95e54f0c6de92266ba712b4d371b5468f300225c530c710d097c61c52cbd436a9c327f7568c64cbdb7f7083365fe5ca2bb2ce3dd0d718bef9483efdf6ae5120cb70ce9a902e2104f0445b596adc067e37b80c850e898a4213cb9d67584b47245ee3b42b2e5df950a01ce7c2374db7b971a5a4304646d5a4e9ccfa76395ee72ecd530f0e47ba5da46c052c26f4b9a953459ac4f6afbfaaece45a5ff82011960fcbd6c2f3f7207d61791f97406e59efeb90d071c82492f56a386ee54ab8c5edd864107295503e102ea339e0fd4496204c697bdd5c1b1a35864dfefe504a9901bb3801c1b6cf9d36bef650e297aff61dc1cbbb9789d0e667fea057a262e39e86100b67666a4d14507fd43f105a251be7d713303af0581a5bd3b0d787c0a2aa9fd4f05382315c0a32fa3d77d08b9c75b190bdbef49eca11f61520db974316ef5b09915985fb3f074dc1ebc48f7796722a162b3f0263d3ffab496fc54482b2494bfb40dfccf983dce09e3ee0f570f3bcc969d4bab8c1f3d4572ecf3b5da7f936d6bf1865f0ddba5c80877463ad6650d7fee66931486956a07884f53deaa13e2b80b6ca981303acc042195061225039c080c900169b231ab343c7e9ec6530864ea6d9c7f1ca98f275aafe3c5533d274aec702ea6029f8036bdb577b0c53e08f7d9175b80f0fd759d48de2f33001630dc4905ee3786cc6097fce981632661195691ac496b3bcc37452f0caa104b2205a8a19dde0196a7791988b3b74e23c2174c1e16fa4547451bf5656a8624083945404367142c2a1e93b9e46c479ca81ce2b15dc862700d6dd1c194542bb1b7d6078c829857f179d549dbca9f9fff56d1a9bbd4905b9550f7574b59e8be2e813904f46198fb093afc816a8df6c92211325fffb8cded840088f864c7969facb4e46c115cbfbde5370b9617e772b077d62be3df8f049d5b2b6f178eb2ddd8e0d32c2894d31051830bab7b131979a636527a32cd914be8c093277041d16fe28db29f6fa8f905f4c6b028c487daee15cd8adae17a81b6406e399005db9ae973c5ee9872dc996129d1226069578643f673d9038ca46a17203b4ad62ae9a23b466c6e5d8273c3f3525073c096b52e7b06e80f09a7f945f078dfd7b6d81c2aacb5150c898f37a17ac22be28d013d772e75f5ef0acc67cc624c910bf0e2584ad7709fc43b875369898d663deb8b1de1328e47cfcd5cf6d3fd97daab3be354e524f76657059aae49b92884a19fc1edb6a6bc11a8f0d078d321e2f12f4b25ec9424f5c34dbdaa5cc64e4137f041be5f18b3e6cb5783f0fab9655298e24d49ba6b81e85c73f96c38a354d01b2d6256edc97c7f3ace7719a65bd184fb4c9187a7a40e04231cbc3f4990d42cce357bb8f498bc259d7fac96928a750f3af2d93f048136e222312ccf4b73395d043977551a72fb80cf08e869aced8d19a7e71032e2010256043e2e2c3e7b91d615a1f0a27b096a4169899d971457227db50e17e15b41fcb8c021ab1942ed9ff47185b2decffb701acfc4d2177ad16f8208839c92ff5fc2a3b2bdd4569ff1ec09deb2abf8d5022feb768157927b0e4e2a946963525f5bf94c71b18b539e3a242717621b4c39e2503a8a0c8b67a4d649104fa0ae61a7eb14aac6f7fcb7a82fdd255f7c294be3785ad4c7ad8263f6dcb2505706e585c1d0a83decdccd78eab1ddb47903145cb22e7b61f941453042895bf79b0e17629b896ffea7726674edcba7a42e93b0352506c648a4bec7a491461ad710798765079f69a51ed864ca3539a5e044383f2d51b3c60dacd300f6a02824cdbdbb8675ef6c213901e454d4205a24b785ff54f2ffcc22e011f860bd6f6c2c7888132f6f53b6fa84743c0dbd8e13009652a92e8256b84b235aaf9366b3488f836e09df24e2d80c5af1bdd7228857acf488d5815d3d8244e6fd3feabe243ea8c4492d30b7b9566079d72fb32fc9ad7f6ee32d73dfeb15fd52e36ab7b9628b7aefd55ac894eb3186d4815f08ca5bac06543afc01fed7d2702b2053c686812486db0f9241bdb013fc1a961aeb0385d671dd3f8ac2752ae1af263961c4e056bb82fd29d46155c4b526772997cc9c777aee8ede713520f00b34ff856f4b8f816aad35491cfb852598a9a0222878967072ea1e544e626a52d6e9b74e201b9606b86a899444285e372e9c4d714620bb217611ebb360309d80bf99dfeb64e97362ab7e42d7dd18228aea7cc18da54a53549135ea6164c24fffb0f7d1af1d3131ad44d0dcec7329ed0d761ca45aad69614a120631c179d916de0241aa6a001eee6152d5084327fa6da28fbec48679900f86af802aed738fe903da54c6e4ee4eec51c55ca19f6bac958d0ee35eeeab2cdcba0faadb149976f7a187b8cc109f30317b990fd5122bf285e1dad10fbe50b34024bb77c35cafbc223a8b152868206b8875e23ec7ca902027b3a169bcf541dace358934e87534d35fa28805e85953342324ab19f4186537efb01ce800bf4bcd9eba42f22247a3da26a0ca22168e6be5949a87bd086d181f32e4094bbe4ca0fae94b9cf57dd166bc490365018fb0aac6ea91b9b0d89cfe0419771f05b9c953284bc1f43d334f4757132267131f7514799c7b17f3d0922dd79b1ff3284a087395f296821fa33ab0d607a504a20feab165347f8043170f6275bd0fb61debfa3cd99bfc996fa5c3e073557479039c3445683721dbbb7466be6509d7bf7f0440bedf08dd5c852e67cf1d531e877ad26eecd7fc46f28dcb900e903fe30544817569a81caff5852865252045200b560c475c8d5bcc799961cffddc074ac99097954299ef6883ecc2f9b0f2fbf3ddc33bc736dfb7dec1f6fd6f6fedc3d16fdf9967e1ad9bb640d307251200d9348285daff1d7b9810c323c26b9c67f1329e6decee251bb50650b7b9ff6c92fb0fde8f96893beacf91f5c55ef1b714134f904e27c06c030ec8a221e37e508507dc3ecaea2f86cb905b16851cdb8decd71151cb2a39a2c0ca0c0e9b7c807735f29f365f4ff8112a83d56048faf487bd6bcf1f921a6d119f15d5bd3dda21108967f6e3b1279f5e81b6dcac6bdb7d9fd8f5af4cf8e3f6f07099aef7d4e020f82bdbd6891005440cb6eb2c0ced786965e36da745834b3a4f762e19b88ce9a7495ca7d63fb93c18f4decf93c709679b78c2bceacde707070828b95dd915a3e315d963797bfba550d409a6e1d0ee7f34bd35d27a520b0e21b72e03e2bd056c42b754f17d75b1203d27a94abf103ac492442f8c288958dcde2e6d6ffc387fe3829eec9408a67a6ae8a92042d42f10a762999603ed270ba31f7db42c886b6147c0a530d37039ab3fac517efe5282a6f29a95038b8475d9e4afc6ec6ae5c6ace6954ff4cd42d50ed69f6e36c3723069e41b4a2184adc03d6f1915b08f20630dfc15b7f6481fcc01c6c722fb90e439c180b444db6ad6b20df44907a2bb9f03bab04ab7ce9e3ece7bf245514dce9f96040a81340e47cdd44775dcf5ee227df0c0748109dced80749228992f01af59bc8c7726d71ebd706709aaf50ee080b0bac909cd449646a4f550e47aa1009fc7900d308a821b809d8c2d0335670aad712b2c47b53353a5427f85ce934965909f44353f9e1ec78c4d6f2d09163f45055091edc6267687bc04a665d6654b891cbba3db4756900b338e86628416c7e4c13cfd9b0f652707414a754a855074be080fe188b3f1abf95cadde7456770d0316853160ca99285ca8550e9bfb5613143a5f1a24f10eadf1f611ce50df0df23a72e814f738e60560ef0dabc5f7f8ab3ad8e5e2f5843dac6f9c0c9eb5a16097751f6eee40f460089816f0cbfeb9c32f8bbd0b8e5d31ec482e85a9d1e840b6e1162042561074e0439e48d2e15678db7ee619cfb3caacfa4ddabc7d5442dbf20493e0a748868bd60e8fc8190a38aa81c1e2e2b43303f05c03b92ff153761076adaaefcf0004f75d9f21eb2b1c8abe4f0f29073247ae83a6044d2854b858860c99c72019aee538240dad6d3febdf1a03609d755b4c5e6bcf3563785d0bd92a6aff7583c18c1b2c56864a3023d3d3e9a9c947d2471942781d6766c8906f5781a9ba589cfeb72aa6e2cd8d59824f6869d70d082c3015396b30af597b7f12c68f3944251873519193c160684fd2085d326944cb70efa3873606da4cf00ef8d9eb85f080da2f5b97286a2f64caa74fa9776fdddff28ef6b7b47d4b9388049cedc5ee4248253c02bcfb2d1ee03fd660a73a098d884b90024aa1c9df5cb68c9143efe7b120eaceb7bac9911debb56a3ce009e353af53b3fb6fb4d5297c68cf86f0d079e9472100c6a072f5b200ede7429bc8977b544ff631dd1e0f3882e98d4594ae0ba3f31e763b093f76e1f6a3d5455c09b2cc1d4a6804256cc021d22bdfa9207b92562b571f7ec723d08404cd6959e1a662a66bc766dd379ba1bd8ec07e29b8aa45b53096fd5ab166c7a4cce0cbf8a4132e7a30446f94953b60e231b4c357f2c8d3968b8d928eb3303de2b3551af33f2e4d74d11419450283c3e12d1534bdfa1cb0e1a6a8854b338b2d29e25b8653982743046232b23574c0c4331e0bac59f1581eb70b9271ffc4b156fb25f6d3ca70f42b02159fd6edfd58c468807ff8dccbba548eb85ad7b27cdc5d9fd42d41fe50123ee71852469695eb25502eddf8149018feab234bb1a355f7d52f2434270408bfb602a56a0490a6cf7384d2f85c8b4a34dd92aff7202fd0ed6388f1b10f8661323faeabcd29a7ac114500695a5ea97ecfc19e11f776778bebe5119b633bfddfe7976b44e189c07491fdb43da05c140f99eac6169f357160a113f23bb2904ac26ef4d3e9c8b0894e45c0a0fd3910d5d8c9dd7a0f9f3f368c39027bfb2dfb89082795a4e07a10b5ae3aaadcbe3fadc7e701562c64f9c5f60e03247a4ef69b9cc56d40bea2bdcb7942d015485f7b7515c374cf5b86e634803d36295fab13c6a7eed44863143a106c9a6aba1c2873240335ea394b1623c858227325e07c74ada6604aba5a0800cffc902b89aa37096be6e66789230938c43307d14f2d10ca94a16d661fab3d3ec45afecef1fd39e73c23ff600e299947cf4f65cde6e39ef55a61ede94523b2ac545452ec7bef3e3fb6b7a0449aaafe051122037389d29881f61ff47595a506cdebe652c06d9772b9eeed8a45780baaece2d060c7ae97993411f65c51f5b1c0654cddd0b649a75aa6ab64497a25129226f72c6248836840f7022b215bc1d4807ce5c44fd16675dfcaa616ba0987dc40fcb8fdd81a7a2c2316c7eed8f30c019f437f8f7e9507e882fcdab408bfe17f588e054ca87082ee5952078bddf3726a74e09c9e490400e88a1a4299a443b94389a16f0a2710d55ec713befead2de0950a051b1c170022e22b96fd88d40db443e5c47904d1c963ef2cb12773ae2cf659ceb3b46cba4d9b00ac4d585123eeb99b0c8d7778c2c365380f1f84ed905283bc882e9e27953b7b0b5b489171a1ead9033b3be674c8131c9f26c6f2ed99f454cabb3dfd1ada43f22ca6f5843d571fd8f318907b632da1ab13a90e48bd19e6d5640e4a418cb6ba988578d928c0d5d481d030d47f86f6b416811af7b4df484105f4692e55b523cd4c596b1ac091b2ac0bfd4e63c8544fe2e815a159841167bb05244f32fb6f26b9490530a62cb759b43c30c1b59b66d1e550d7927271e40d9fc9ecf4d06df5c3543b865235836c834513e5cb449b8eda2a425aa5e5a9813a5bbda1790a2864cc16e41848513f5f93c427f85ea3b9aa7f65c1a9987cf04f8323c8b524baef2d99087f56a9240651f8c28e13a47acdc0992ee7cd38920c8647413c6942b9a6d99d1f7fed486c97b39d0f6171339559d85b5f527d983856bcdd6a1cce2abe81aad222f09e2328b006b4bef944bf540c3dc3d03866b697bd672ae330d0d1f7efd68ea2013cfc58a55faee4472bde1c73f04c7ec740c4e107002dddf942571b59a85c89f2740e824729c5ef8451fbebd05c5e95f06843486dd4ff01c49af433ae4c8ec378c3295930c066f07276e3422d150b7c74989a759134cf0ebb26ab7e76570caabe0e110f46bfcd9b4a15f60483032ffe7350f3cff417ccbd166634800230ee20a3bf74372774e27ece29da045627b27df1987a493034f9cb039a8f91a5600c2217419454ee50250cda276198a315e72214e193bf65f27b8f564fb80979befb4eb0870866f9e958e0ef442c65486e0ebb38635b6203a485078cce3fafa6980789f6232ed3de4d88e2d96bd648c4482e1069ec34575bf6739c270d74bbf1d8742d016de19c11716784f8aaab9a763d6b3e6d5837bdce28e77c4e5d772dd3adbc19ab23691c7a0973178304ae77271b9b6302f97cb8d88b92d1ca5c5517582daabc93fe7e5306fdfeb13e100666d2a360d620bbea6927ed3154b68ee2fe4be139059fafa501d03719be5bf950337d8213bd6b95a698ebd0dadfa8f1467dd72d9a26d0e2985ba04f08b82efe38685f688e336a1e3caf521fdfbe61219ceb7511c0ec8e5169c51d8a8e36ffe00fca66f557a0316d11cec60315e94cf1763907928b079b8f4c74c9539d7a42bb652d4f6f7d263f436d7391609bacdb27433565f5b89bc5cbc0d8ed97771e53f45fe29a029586d9675b182a06b102aceab804604d2ad407ee0619a176c744035c9bc33decc180f9d0d87fb4b90df7a08c1895add7eb04e728bf0b7528a635c1b6edf0dd423e00542ace09e739894d02300cc237c350769cb20a714357716457cd95762b9c8b9454a1fd9e9d4179fb3efc3e3f795f7bb7dc0dee9801a2cf0d471efa6697b02469da6ab1ee66fe985cc277553199266273b1e63314bd7fb7dfb2f3fa36a612b7e9865cccbc7d1f616775f54d6880c1be23a48799f2d331285a8890dd1ae01838b65d220aad3c622e3d3e483d8957d44ea54bb4768f298beb5a505f314284e2e8c8424d94563ae6ac3446a8c54ba9b13b6a2c8c28ea00e4cb990485cedc0f7b6bcc8b88cac51ab1f39b12e56d2ce2cafa1e74df206c2050c57dcd7a0f87a0bb00a662524d136f7b8e6e05c8e4f5e0d95c5febc1bbd9eff3ed2d8b41edf7ea9e841b27ecd147e89ca95eaba255ebb31f10d3cbcd24edabf77dd6a5513d9194c7f6555c40cb1a3c981ba6f0a1853e2ee8967bba8fcb6835548bf9a582dde5502ac05db64948ad098b159bfd8fada31254c530396aec4e87c1a4dbeedae1bc17b702f73d94a0a45a3b4088510958734d89aeb522b746eb51f6c5e8a5f25994e3906b94e8e801d34201df93f2beea12c40715892d46a285246ac59bd7c295bd2fffd919b4490001b04ea8cd67db8ccb66823729f87db8b86d25ff54b459904fc26ebcfb0b71ee6a83c010c3566275fe920434d4792d055a5282832eee0dea27eb757f00b29410f5879c572a279113fc1c4a2c75fddbb0b3efc22f8383098bafb694a3efceb1f1561683726b046aadf4f4c065b870207ef084d38dfb83cb5ac19adfdfac8ebf9cf741402d60c37fb2dff682919f6d449732ac799c38f6bc78241a356f860328b06f4b6fe82630fb40a45cdb491919e2a6822c011ba0da307850626453b1ce798297e501993906b649c5fe536cb0ab89c56c04c4668ce0d8e1ae1de21b28d73e1debe07e2c18938b57fe94bba4613ef1844c44f90f8510e47e41d40da5a55c669c93f7d6fa902760a52d4934579b631ccc9c6cf08e08efad36ca23330bb96412953e2a2ff544f06b2bfd4e58ef561fa20d8442142d00fabedc7191a26f57ce0c4379399aafa4425288243d6053ad62dcdda6f7d2abe8fca57b69d09075f61d4c852b36e26547ed0c9fad313db91b78ed5b893cd4ffc08fb5001bcb114d30a61842270c7afaa9602903e8ae9a78ff8572feb604810d40378540918cbbf8fdedabc73a9636daddbe619dff43ae3ccd4a1a5062a6ad276f6d057b0e2397cd1182dbcda9977c29eb330120077701465f2c257ceb7227ffaf23c648aef1e294156b5b56b9c0d2062729fb2e37de1a9ab243fb7dd7c408d855e41573d763fcfccd5278eb5457ef995b203912ac1afb916cb45cdccf25ed7df4dcc0cb82bcd5f2e5a020d5c1787897208fed394e0c1c18cf07f1570dce729f7b3cbe61fc531ba29faf4e1b88e8b818497106e90bb7f142be76862e5051c1990c929e849eaa42555eaa2d60a54c468e7ddde73489691b62299d329abe9ad319781b6cd521c32c370670ca3acf71680788683c258aec9d564c1af0046b6ae18bc120b2f4ae20922229b85f86821100c6c8d0e0fcd2fbb07b64102a7afe37fef28c1c3bd8284d8eb58ac76c29611894952b64f445ab782dfab90a54968d42e0efd870ceca7762b21fea12f8ea5c81695870ab685108c03859f67360efd1ace95fc060013d1f496674f04936abf3d5503b739cde1aac6bead572542934160e2ab3b9026f7beae7de82bb485cba9cf19bb6451b2e86ea54a8bd72f8ad91d3dcd031173718fa0b7fb5a86ccd9f2191fe6d59e5ec4487d60bbb3c330cfa66699ab47741d4c1bd21e7775861740495a72817b35d9ccba3c37ec6fb8f8fa88e30817638b7935840e8993ba837b3a1e4856612e3fbe0d7aeb85f5eb4cb872849a2c220228543a6eb2b69641fbcc5b2c3cb5ada14ee76afd2ce40d58acc70d2bd25fc574881a5b201ef6ee6ac8d993682a11a5c2600e4df6ab59e3d14d617b4282052177f433fb7ffafea0c77341832c39ad9b527307649fc33daa75858335c864dda533db9a707f2f376278463b6a42cd8c69ea4a53af0bd13e04a370556f3c8d7a38d3b43f59c4f11fc406af33538dd257357eb5cc5003b6ee91b0ab95063915acfdaa3636717ea4c29ba17a8fa71c54a40c72c582ff90b07e480fc2a5a9924bb5e071a21f370f0e9039e6dc18f9de0fb827b244a37a2224da0ca2df6b0f586a69dbc7c32d8204016f3d8beac7231427860c7ee366f42a353d00cdafd425908a33841df7493eaa3c24b3f4cd07c4739ce1092dc13d70cdcc7603963c071ebf94c6c6e63331de9741a87bfd900022821a0f57735c2372a7bc17d4cb837cc0c12c75a82173f01db422e0690c9111797841b1dd9dfb8dde4fc9bd507d6db1dcdf6b0e9022a7b9709d964647cac340d6524c76e27224a3055f13c2948010a1d301fd4bcc79e629e2c7b2712e500cb51697bd2e9f2c7f8991212e96c9b37cc292ec83a27e3d5d5b2521666b995ff30985fb722862fcd950f52cfae2f17169b74a3ab8ce9e294be6e37ff56c78fa70aa48cbf52344697892ffc3ef12858b469d2a70b5dda8bdb38dbf65d78c30b2548d1bf4475839b3399ad973a50ee286e44c260382f9d872aaa5ad9848648af0f327cdcd38cc3e9df6d20578bc694432f8943bcfca7c52b1b5c87d527e2ac3bdaef0a7c9b3eebcb333cc0d88f4dddab206c00f132ecd9fe8144f9efcd8d9a4f2b8aa12afe30599fbccb6dd0c2d619b8be6813f91ebfe63d7053ea886875efa24b152cb244e8a9134c718268c5f32f88949ee588339806a3b2d613a7d9316290f2cbc0724287f2920c28bed47179f1ba159e16b8fe083a8f635306b19803e52862c71ec4c96354986c58a2e8efb012f37fc3ba8c463fb73fc0cc9370f10a06f3caaab26bfd1c2424c139bfcf9dc2621a036f1c3a5b1afdf22f43c7b7106d5c556b94d5708f0251f495f2a5a5c57355d026b8ca27fbd5d32d3a9b79112c4919fe24dc691e4fbbde56c58661d0dc2c3ec3aed8504de6db24fd07c95a5f7eb30b85cfa554b32817a7d5c8915d4d9f04744495cfe576de600d0d1734d0ee46234d536ecebc50fb6d42177606a57f5911be2e4afae08ee08ae130de0a412bbb926d5ebb770ddc0b4adda14f63941f93ceb3c091262e7bc2690b29865818d82e8296812671301d23d9d2bc42a703a400b383b8c0c3085fa2894f392455b4feaa161495e55bd0b1d5733fdef62f3a55906ee30835762518c21a7c6c7fe0559ef59f10f191ea1c4aba43d7b6f57421006c3767f8dbea18dfd7faf1cfa41c83727a4294dbce735d20503bb25dc64cebf48de93b1e878739ede2a066d08ebd567d138ae66e647c8d880b8d71cb02d9c82433e8a89cdadafd8a750e397c124ccca598c4734e3c9bf372c92d76530e69d80fbd17db07da496ff1cba99cc71fbb5b35ce2382bc18b4e009e1f014168c598d99bfb5c9b87f9e84d83c61f247e84d4936c440422ca0507c9e3b17f5f5eddb242b9f7e72d4c3fe06dc8a6449a20edf566196239b827f54bbca889aef1f9e0ce35452ad99dfecc710e806badfe6abc9a160c962368e82e59367dee065e8491fca43c33336d612196a34d93bbd6f1bfd298b7589022d38195a49a2aee2e9d9ef8e831f59bea19a6351ce68b1e7e090b46802ee6e61c843c75b53d6ba57b4c3d5a5bf482959a4e161003604e752a0fc18f0923f53b74c4c4046730fa6c3180ba6fb5e3d7b0bc3b9ad1841f3fd3bae114db71bcbd055bad0c8d5fcb293cec2a0a7da75ed515c1fdbd76d2e8c9b4881fa775066a5f229f68c7a082c5d1db4c8a4607f04c2641413632856649b6c559a6114f6f24fe28bc8b8babfef15297248bbf9260bb49bd04f1dece0f612d544495fb0bda63218f62b561515f11d839b677445516823ba5a88eaf828f637515d2aaaf52f97303f43d3ff5c0522bd73c03587c2f75f563ceb4a1a26800912f05d4fe00ec531281b64d07fe20f8df716d7dca7dce1ac293d2b5af0d14003ad3f93485027a39ce2ccb138d89fbbb6227037209a8405bb57717875efa2aa14bc17f83e959a692e6df374f56b2a7ed0c92e7e23733ba13982b57d4512f52a92dad3801d23438e6a426228c3ad3691d9b141e39aead5684a7a4e7a17ee2cdff9d81f8103421c8a650c961a9f5f56adc511bc65402a7156e3406a21bf3ada4b867941e8b13f8f8687c0b0db629b76e93ff1fa57ef6d20c269543000e32d12f852e4b924d0fe078d794c485e92a68c9522196ddd925aa2daa1718a08db0c2046f4fc1f8cad6e78e49406107d956ff255e4a485b2186f26f37dd0740083d9b1c047d4edaeada215bccc0f8196e29777ef4b42fffc0ac17fd8edcbba7ecd385d18ec551917a82b64da47a9a3daefaf5f5e1d65ce592c106eb1b7e0889b48829c3f99a1bc089578a3260a0f49d63d0d81a13f650c5ed088d4cde90aa0f51111be153ea41249cf85ecaad8a3ccae8848e9655e569ddc6653a897a763d40529c54ddecb099730bcfd54ae51d053c8327d1176f548f07bfe0fd028f26f6f6903106a892f0f8a1f7348c9bcfb99280f14d7913d238a3f5bacbd07d443e69e4d8da8ec881c14728c82b64ead6f21b3400db58c8c3a749ab436e852aadb8a896793f59b08ed59c386d7867cc26878e9443ff85c18bc87e0841d6946b4c673de7c838496ee1147d813885e150a2277d9d7db1e1ddf21ba061f6fa018fb2582e6122d1dc4b5ac7ef1d50ac54fa9961f1445f85be92dada9bcd239c1e4bc4d7a201711e3c9292853986cbc78c356e200e66d33423c799179ebd378aa69a8193814c96de389f741ed020c3c14f005bdc12d4de549bb4cb57e322aa1043e0cec6d4235d49a2b2a835682cb2862d41fdd8bacc03da95512b086ee09b2533947561b078760011e3d232feb7061993689893ce0c52933110ac23a7f5f917f326df590928eea6e1cab3e34099b3e553dc2f8ae012b64423b51827002f014b20b54de562375834d5434834be500abd23d83cf8b070b69a1da6303877a66b353e31833fdaf9286903bf2436252ffd39b065c64e459b5dfa733f6cffeae666c30a7d0c36716a5847762e13dc89cf555a648208a7670e2dac95c7dd6d6f1cecd9c6ab600ad92ca6354893669556aff53dfa9c6d69b37f6cdd2c5e564e66fb61ff19b0315c93873d2bf1f49b2566cc085efa4d839b46268e0edd15aeb664a2bb8d061288e58805675142bdfba4fe41118b68e09334d1763b2a4fd985f83f0dec4c3830691c8e1f7cc5d9d204d6380b980679488cdeac5250718f7faa9e3bcc3fd1ecaaa2cb450f563d52fef98930b28ae4fe881134b0e753b3517928d09f13bc3bc7b10be354f499c7134b0ca21dd0c12afa087fd3d48a874b37c04ae685a70257de60369f71ef9b6156254aff481471ff75b7421b49de344e829ab367f0518fadfeaeed3f224884e29380f69d35e1cec316c8c753707cfc938c71fb52966533e410fe3028d6c32a1d2b99f823146e7f55073d410dba896dda0581866eb737f553937ad3d00dd2c3b5bff4cd8e6ffc6831489a4167095f3d9147b59b6d268c59113075eb2ee413c118e067ed3fd754f03a1498b1c6093181d245f62df6847a6821c1bd2f6c6517d0867e0050b0495d9f3ed09721a3859efe4c26a1717cac734474cc560a418a26951ba3afa6bc903619c009d12ea2ff4c8dcd5bf34870bb97fbb01dcca8cf1087ec2aaf0194c7fbb783b25a17d2bb5fdfa8ebcb817ce4242eccde15e14f6a2ead5b731811a1a822e8b1a266c21a38bc29c70a4b5096daa884bc60d1ab3ea76e37f5ebb081784d3dda750f1c2dd089fd64383151ae52476f2406f3aaf1a55b7ef8806ca71b7fd3fa4002ec8fe9ab2c6e398cb43aead43a48dfc045aa1eb3aa7787f9bf7857161e29f29f19449b479cc751bb5636849805d79fc9c12230fef2351a6a0d2c83c056adebe95e2d5ab1346acb7657cb164cc06b6e2662e2a6c9d728d67dcd51c5ba7cffa04fca96aa7d55b3bbf41246486707bb3d2c219109c9993bd9d7f586560ae6365d15dcfb5338b10a1fb06ab99e84512605c8d5a506b09048efb0b5403829ebd58add331db0a41fe578860cd3d48c48f499c076327a370eb5f315d02d08f0c22885de97f673a14207b951254dfd38e6a08f97541b70d002958d12eeb31b52fa0fdc4734d642e86af14bbd34a11444f0fb073ddcb58b16381f766972136470307176bc8f8c13b46f7cac6b117c5d2ba3ae5cdd944d7aac5ece7de7a3d4e3073559313db24194775dae829a35e65d94aede43901da43b52f8a50b0efa5aea0b72f8782e2f0548e0ee73eda13fea8ed57567f7237a872719493ac7481006999ad81df54ce2f8973d784ae6e2a1552ea6c042e16e9c0b9a60ba18fa9fae96474cc9c4ecf7fe722b34ddc4dbcf0dea7b4b2ed7a212f8cacc94a09cbf95a903a6f5c020de628d0a32e33cd307000dd09c8edb50eedab9f96127986e4be3323ca879b3d4aa50507352a39bc1678b5b931768271a7442c74d60073255e15920830a38872dd133848ff42759dd30a2024fde61517073a21834704b5b89ed0a328c93bb55fd41a5f13919aaaca0bd7ec949d9efc2bb2d8d90305ae5d364caa7320ecdbdb46f80c188fe3dbbb5b38fb464b4e6d9db5790db4385b9f84f86116b006fb153f7e9672dffb89e7227ac3354293a4b0792f1566717fcbe98436873bac1c976a3c699fabc5c0d7b477aa9f133128af324a95a09ac798f3132cfa5a16d1d7551f5a1a8d34d86bcde5b04aac2fca5205b58a5a4802671f29d4fd4508b81842ce88cd04cc55a2b73dae089634bd2b2ce43f792e0d2f72cc3810b9c8e2707f3fe0bf80bd45130f6007ce7c3ecec96a4285adb340317ee0ac037c58a7f76d9045ecda1931c125dbda11a03a3b954447da11a7d163e4f56dcd8b99879483e7fb69f1d336c40461066922d2868b91acdcb52ad523a7a68aba40e9205b22812496f31fa17dc923423a66a389d9eb91cb878662722eba30162b148354c3a3e66b24c0cf9586adea6621025faae129c4b9a58484caf37abc49aa5f29971daac89ee00c87d1b945c902a44f24d239a3ea1df6a2e05a176af36f2476ea995313c2729bc4c88d136666b79085ac3db00e48e9735900e98dee905a4fb1e162f4055327b5c87660136bfe42fb789f7dbebce796ec6630bdd5bd55c990c4318bad90742c2e548f02104088eb8f4db0d55bf982b18d29806a90c72f50c0b361ed6fa665b6526fd94ce2b0826e230115aa5d73279f74f7213a9fa3fdd5cc3b915b4ef5b60be46a505be3394bed11d6ededd76bd4b830ef7b09ccd4382b9b3d07ae50c2e407509ca6a1859d2194c7006696662f014ee5a71514f5d9d3690ba0d54f5ab5dae33682d786284961d7de79c4edffe28a1c01a3490ceb20811df1cfe5954b13d9aae5496cf022cd8bebf128f578caea3851cec11203f7a8ae6fab747d0e31aba4d58707428fd27c618a3630266b5fd94d4b8068c8b372f1703cb54e62c87b5e605acdb8edae624b831f825e09051b1de1edfcbc4946af4780401e1d023239bb456c78416b04a42d2a7e12b468040416c85624e7f99c742c785010a0df5f1ece5ac7f73f7867c90e7d72026c6500dcd948eea5bea83988add5ab266e4c682713d393787ae83cfe6ba699d87ae7c59e139d37c40474febcf1f2990e087d4ba35fdc2849ae172543023eb240e3fb7fff84c42ab276dbb0355f1cfd6bdd1f0401b34e33f9b405fe0c13552ebcc55bc40802529cfe9a3b1808088283096c4e6d70d57754e2a9d03c2e862bd9b3845a09bbd5bf0caf33eed8c2df58157aea57792b65159f4696943ae98dde48630a55ac6118863c7f93157124f147234906f43caeb64d19636ce9453eae6b2ca47230f87ef5e3da7bdc72b9e7a0dffb12c6b2323693f25069acaf1a869086550cc0712f88e6d210cd144681031b1b1ef442ad258c7fe242e5dd9ceb7c48cf303cdbdbf9544a07341c729e362cb3d276343a4865c914618c1f103c4dbce7d5cbb9228eb635926f39ce15929b93808e57e35427fda15fdceeb46b8387d08f0102556b01a2754ae28b19d5a0d6720c71755cd674c780831f3cbf345c9bb7b68b2fa841cf9ed1d8204ac05ebefb5ad1983deaead2cd5c71a960b4837d22946dc9d3b60f0750f3d8a53f443439d78b47a43e6c33415e75bf0ec1dc116bc66dfefb2827a827b8f415e9dec139af8cd48937339af8d4a914a236fce4ab3cf616108851890ca158ab0e8a8ceb89c28cc2d7bbfd7ec377cbdcf51e82c3502a8fd2fb869366b9d7ef8f45f1064d076c9589ea909019de686265ea92369b1e4c8aaab055353ce98a4485167eeb27738d89c83386affd93c2fb0a70046fa60ea0899e3b5e51f80081a44e95b22b4527542a8c7ebfa7df96ebf11a98f1e1f98f2b4a56efede17dd6ca0a8f5992178a899e35d02af5f704b0a5d7790535af471b5e80aaad49dd11cc8ffda61c4882fc48399345011702818437e16306dffb98ec16b62b2aee70551e48d7aaf0f4858182fb584af2a60df13dd117444d5dcf2586bd96a399a98af3e4ab4e1c7cc39324ec6a4e82055cafc705b068d6f877e362b8cf38521862edcfb7e7725821ee55aabda7684d2c5fa6d313ca6dea0a1ea54614c2cd20a756c923a12c056eade4fa898c81677958cdb13dbe80c3d57773cdd9a3b093a4c0f670b023aea301a1e664559ee1ba88ff1ee58557fee5ce27d69784a9ff7aac9daf810226065317dad81887104bc5647daf1b315d7e23133cd3ef1e14b026cb4a0b3d9030c5060baa8a6fa86b16b8816281f68ad0517f1299af5387cdea3518ebe8eb402b62160ba6386d05f5f6e1559beedc540167307473a1fc88f1dd0863b6bc3be1c814c3512e77ad9eb1c8b7a0df03553a679304c53cb767af8ffeef26e3c7f34dd132a67a04c9985187e7392b0a657bb0167f900bbd00e403d313b098683a9114cd7b8cdb9941fe1e1360e8718a8e635ebe6a06978a5ec5d988a82bd9629f52b66d53774f5ef387b2dbf535cf3099ed3bbcfc3bc9b1a62d4e07093960a216eb823704e12e9a6738da157189200ec6c66bb4d36d189104c2ee6e3da1cd82cf09a3f7a61c11fe8d9acb53be3b2f13190467c7653fcfea4611ef3b5fe8b929151afd13d7b84a483d45954cf44b0cb899c994e01ac5672856cb92f1295b7b72744d482e2480dfac1c2c7ca67424702a2e10305073f2e258405ba22e3c69c7416cc3484bc6cda50b73644b78c2769c5a91122a078d822045f872a98d8cf6d0fa0be4dfa530f21d31bc82a742186dc0e1e71ed3943b1e73169ebe91c030bdbded3842eca6734d7dcba1862cf43fefef4918935f80d8be1ce534537439385a0bc072b095fce1d7ceb81ba4c727bca08bca20b71fdb13642af122a7d4b3c76d8e5291c668ed687719ddc54443ba31e287cd1e269cd2e680ff09ed9593a1fe42592f852127079c181f0e54d42eae0ca0c7e4c19b3878cf9b1b70c65c819795105a48ed440746846b7c45aa42fdf7f8117f45ca6ab4b02ca2b9c2e56319cd15cc781243f332ba8ac4f2288eca4353af9c529d45d8068cf6ef2d9d6e92de847ed792e3b2da51186331bb022e32f9908783a7cb8c8c4f0be769140fedb72865093f98689e36ed0a2959777626a70eeb988d1722199fc7e92e6a8dfb7787826bbda017cbbabfa833b9e3925531a4afc45e9b1970a861d6369d2ed71482db72ad082092c11165dc3f8294a8c71d38f790ca511bc898ff643ffcda3e875f8a0b3b7c0d49497cc2d842135b17f4dbc1a4ec8c55bb67647b17210b4194583e046df9b02a53a7ecfc6b195229eead65e4fb6dbd461bef4f51b79476cdb544ea5ceeea7b4d906d907450d2abdb5f06443fa8e1db3944bbe0f5089ca20a649789e59adf477d17806131b682b7912c3c4e2de22a56fd817e12b16992f3c5f2f963cc64c24f958c55a9b3f719114e559446fa316e0fb83e5f547666a6b73e95c6706f3ded5e9bb9d0cd9619ca9659445558295b59c017b1481bfb1b7899580b384148aa12e5a60425f4998c02aa0a7c2ef5d85ee1289556d8cd86694dd9298b26f39d040f7cc469922e233ebd6abc7eac863946e6fe7d66c4b3b3364a54e9758768f8c2f51ef3cfb6ad400fed58c0c4a0671d66d0df6319c0e2b4ba11fdb803cb2b9a6246ed159c2a23b3206ed897206b8902eb796c142ac724db8319da5db61aa6946595ac7b9e40319d9d9d718db4c187c6782775d9a054a4d042cc5a1adcc779a40bc70343056bb250d50e357fa2f56ae37aea578d5eec47bf1ad458b669eb9aeb48c5714af7a8067dd71489fdadc66c81690efed6600e832ad5a138dc53f7d5881bb98d7202cec8a5601a87d9d9186598e771e73efde416d809ce71d90e3a4304671c3bd70de1de6781e3bda32caf3754408887d5202be0bbaf365498d69366284807b90abc934a8227e2328f5db131566494571aef8c99d3b084e82cec4c86f75d1e67eb15f5ee60ede4821ce3956898c5e1185ec592da7a68ebaadc1f6fb9c0f5615f02591acb0bdf32384b067f893a3090cfbd3e656765858a64644e0f62d465e9529185ddafd841c7335eade2dcb8e510a6f66a531f9c123bb7a65ad11e3279db3cfda65a0df2d52fa1ff170e2e63dca68be5ec79b84a94def6368304d38b44b13d198aa0816aee4b7bbd2a47121d7b47d514ed03cd7b5d1f879ff4a4eff3cee1c0e15d7fb1d0647ed5e70a06cf93c27b8be76efcdd288eacbfdd4a25553dab91be84393d4b69f78dc43d81d3653151b54e574c2e705ff2995411a524f92c02f883a3a949ae852ab8a26b3db87e588ddf24c3b2a071a52e9a642cca8a304d80b5ba4c839bbbf2eda48369d8bd9db5090b8df6bf9f69d7be90a75cd7fd012b18319381f8faac79f2eafa693e9211a91a0794e68d7fdb36fd68758f9d821ad1d6abdb97cd3bd396188de2435fdf4c675477e063ba8bc340702bf99be0999dcb86736a9b3564215317ff4bfac3e99881221d64249c156341751bd63643309bfd9b6b63361233dfd8dc472dbda83ce3114d1bb814b7d591d90d564b97a70e187d59d532aafb8259c7acb0a87c70f997e151e7f4d69ee776b6fab66fbcf88e08b065225162edbee234976e2c063d7d9854571f7374f35218ffa1becae5b7b4809e21b074e569f8d68d143242a3c5535f87791261c7bdd195d98b84498392e1ed1c3307399d9c37ae122df7445ee435c92a0f00a85a90cd182748cabb9c061f5c976182c4537c081a9d33b1ded532be29ce7d1ab6f21ce82a8726e2bc2e391d5dd4245b5791abcce02fb10fb24fae6abee0a3ce8a08cea70ee45daa141fdace6d12a63110a95c821edef343673a6e01f428e40416e3d68753ca99db69dd0b26cfe8af220e63490ea5e056751a9968efa99d1fb0f7c4a9e290c2bcbefe385b3f04866c32e8fef57d241fc5c69374b534d4b7e49921d871e9a809f4b740e9d3e53c313ab3d0d7afe022287901f7822d1964527cec5380d5e78b5b5294c253cee5432359f651e1c836029c961139094248a1258d4fe38f4d2221b4968179bf7ad1466de93bc4ab9dbcf1991c648402dd9d3006258c65f13409b52b029fef9b2ff6cbe141845cb29d27de79e23a28994fd8c2f08200b7de8f7d16303a80b46eaa1483c46a533541d468e0182d4566ccb812e7b94a5154560fc1b1a558ce8a7eb24d8eb1407f4f3c1ed4ce2cf18b6a365d5034a7cf9bfb1efc9b8a18bfffc8b248c5e8ff537718f736998e1d5dcd1a7ffb8fc1f570726593fd71114f0e2de1bf1ed8eaeeb1903c22fcfadcbfb9d4f7bff3bd08ef2c6fcdcbe238d463fc9178d943f728e8284130b0c9c5f4d5f5e09e35e6a803ab002e68c8bba40ef851a4690017bfac94b9d578cf91d2615f6412360794bc4c17628a1bef13351145544e7c2aae73ab61f7be0d1fe41a564a90bead0ccfa266258f24ab61997f45e88839375c0541d9a81152d57681044b5a4229829971e59950afabbc28788ccb05f4dea72ae3a4900a4c918353342e807c3208d21db1fcd6ebd2228fbc5d6d564190f7da2138de1015c08c160f59e90a50df72baa5e4a17eca40692ccd540702dd4ac88ef3701da609f07d6d5115dfdb473f51f57b061fa50a2c6fbab608e268ee278e4d0c3b4102f1aa27fc740c5b601f3db8245419189826daab749ed01a92f2999c63a37379609439196983304d67ad1e9aaa9b694e63af60fd5b5edc3aa2823eec9d0e5a491f608b7267d9e11e2f82966445f17aafbd0ba6f44c763d292637447ade0e8d666d65425d40389efa1cf091bea481e286f6cc1da8368d4314525adf6f7ae27b5df2c3efb4c9da8f3311a5812a15c9140e8b14315d7f7695c13a9a2df05af053d3a247e6dc0a61267e6173655b101f53b1688c5aa9354c8490875acc3bb47ce72b63eb5ec7adfbf66380f2550c418432fe47df1ecc0544187831e044d0d5729aba90537d2f390167b4ef46eab949de09eecc1e0295c76de707de9892ed2bc5678e5aaa5ff7bbff86b2cbf5f49874ce9162748b2a43851398f43f1cfcd95a40d0f4a59c72ca82e740606bd10bfaf61866821b163c536e755954275b39de82092db790eab5f89d37bb522268212d75cc9c798f643a95b18cb146802267338d37e8843e9c95093d51971e275a742ef8db39dfdaef0b896c4287507166344f2b51edcccd5f3bb5d0caf0e459135dfff83faee382d3e41031cc7d0316d4bcf466c927974acc0aec849905c510f5054c98056bb2fd026d28463f4317713bb36c073acd5dac662d45b5a9798a42b1d70f8920bf353051fec5c6a83d152e88dd2ca3c6c50a99d89c10c4c2a270ab292755563206ee13e2df9a4bef61397c230087f01fb05b4b6dc6c8f55c4dcea745069b0f5392dcd5fc3f450acf319e2c5b00d66a726aabee5436f4a2c67d357d013e161531384b23027f520c20d1fffcf2a7202b88c51a7c44b6bf2f63149ab71a0b58ae4dc72231c8fcd60d2ca4c48fbff243249be2c40361454bdfd58534855a90d9f8d9629ccaae1c466afba74db4fba324f439c97406979f01541ec0cf78ab96f5efb851428cebbed3aff631a044b9af96b4c8c2213e82e76f0c126eadcb71bace44f21ea701f19869492a06f2851af0dc7cee287f0cc5ae54f0553aad8edba40190c4fbf4a1180a9609324c28085ed718716fe1b903f21deb30e9d2a1ec1d94cddce0ea644f9d333fe4f212e315fe0f3d1d4121095fcd71838c224377a2aedfada43ce0ff1ba720f89d82bc28000c3994a56777e7f39a995f4c6d0ede44eb446096850eb341cd0c4d8504404d259beca37d35fb9d12075551370e388fe8ffbf704430dbc00a8a48e389bca82dfa66511f232c18d338da503790782db18cb358129155507eaee2a6bdcb2d5014a311aca75319f71aa7db3c8e85d331e3ff39f88cf9144a08baf3fd4e93efdf08ea46ef913691544cec56006633a08cacc399d2d355f6022afd735b5c32b5e50acb2ca7a4feb5f3d80fe72fe5ab0ea9cbb26f3efb52068d1924134856247269613e21ae4bcbe74d4637db036ce42b06df7d1bbba292e62132b57dc0b41dc6be3e01b3a5cca26ea4505c318ae6b9ae3b5c05e8bdb575460685bda6d682bda5a1337a930807411216b758b32542ddb76fe0421056fa2911cc7bf375cc745659a8a64fe03a9e2805bb9eb49860f483d9a0abaa75761402a37c66a70d6cce4924d0355c323eab95a3fd1eeaa209813982fc459b1493f32e8e8588cd81ccd146823e2728ea20af131699fceaffc0b0fefde0e5f30a7bcf87a712cdeb5b895660aa3320bc2be9bb77a40dbfe1277be1e7bf472e00a472f2880cbf7441d95ba87ee976015451d8e68dc7188748d022f5adf8195b22bb148c91af3a5a7e43f76ef8e7c8ea7cff557decbf412d55374663177a4427ae03ec7cc9fdede4f102d1b93106957756ff035553d25d7b80588b77e83812f566c31f6c3413864c158d270905190dc1798b86c958bf4edbcc516f999f16a531e3f76fe2333f353a6f5dc37a75a09f746c3636f46418bed291e6334d1b701dc6fc3ae907860adf00a15f5b66184c7441eb7b584fd196af089bfa9eae055a93b8d3aa9f07064514d4108b3bb39e3d3fa2a6129f9e6d776d1dfce884c3d4f836c7cb66be33c3d054fbe568a1fc0e65d97bcfe9513f38ca7f7b1e4873f1cb6e71b62c9cb3688b687a841e1e6d33ea3d23d1e700ba201883886628d3c42bbe9f82279851df86ddba256d0c00e07634b0f0af884a113fe2854fb61bced9b4775681a5f9b378e7075763bfd71968f5193cdbfa2dc967ed4fe10e2a2abb63ddb8b39a8025a5d68e1fadb6909d02de70ef0733569b10ce689800e71bfb270f42ffb6016810ada2f50ca9a887c07557455d729a3e2e59d5182fe1ac08c997d4a6d8714fc791a65664cd031c1490266d680bd4379f71b93836339e216975831ba1c153ac9adaf8230a6659989bd2e664d996b5e70b9720e1a0e89a2681873aaabedd1fb43c3f9046086de12d7fb49c2c62ca3e87c847948fdcb3104ea557ee969dd29a1aa49c6757c666dcd23c9474aa28a6a8ee4216b9cd9bdd49ab9be34f744b7ed164a180912dbfda7a0be51a0ab0a8ccf1548e36c8ff0a8ebc55d8f2c3cda5c522cca47625d310bc4ae2e378fa2b7fc435090c9aaf0e861efaa91ff71d51838a6288559722ade02f511f563664cff3a0ffb01855fda85687affc93eb0656faea47795f4f2f3bfdc8b3c565f52c58b20c6f470c46f9d1633df11683de880d8b9a6e5a3cd762a814103819e8a3d5196e84f1d46e50fddc84515e5e049ab429e9e7d816674b36dd46ec4717ab161824599a66a6e2f42613d556f822d4780b913f0a87cabe96d030c12da5b4876699201cc6abfbfe201e905eaffa65c4c3792cb297937620cbb9b9ffeb4122a3e85073d67a6e680d0a4d2261bffe845e98b0eaf2a3da1936096ecf46d5d521faa6009e0cc6a97baef88ad5d693ceb107fe45c6f31fc5f982444c75fba94d820179d3ecf8e4841da27c90b1f659561f8814d2f47118f650fe54128921e9c1c00498118a83592bc8e5ca2e1f218b9f02974a670a593d8ec985eb544f07fd193820c1d86932dd6232adb706f0c177baaee20687600c2b82a1ab35aa2b0f9c3313982fa6e634ec72396923b1c1bb72ee8d13f27dbccab09b11860af0a73f81af55cf43294ea9f81f7761108c61f9a14731936e88e4d4c2138db35691bd273ffbee4014115e40f06c6bb53663a5ff9f7e989a8a7b023295a3109a75a77154a9cf430bf67dbeb99fa79d5f4a01ae69bd7dafc9803fe41830d26ad564e9db25d64a33ee593db5be67e8dc352549ac9863081e118ad1393d6aa5ca069d14dadfc43cd8c5b9da7b9834bef98e4bd706d2e6fb9d768ed12daf0b5cc90222a82139ed20804b612b15e94da968f9dbbac5c3d1db9d09afa539a19f4e923bfe5235bf3846cad469e7764d1205d6882cbbf548f232214f7daac78135dfb4063b26bd28b5a9bfe89a9a6dbcd1e38d313e045e619374df1ce27e37f521a87b8570c628cd8e2cc5b2eb14599927c9c745d873ee641cf9e20986f39da2a98dd8bd6caad6d699c207cac1251f22c4ccb053860c424a520df639cde3e4e1d0a927d949e9b121b387adaa017943996db18278942bbf56e2cf5ac509df39892d830b015f952a3bab58a5bf40c7783b4a457af722d5e73ed67b27e2de5751fce4132c271623ccbe7ebd40531fbd24ac041f06eb6b124711eeef5b06e300fd88f67cd2335bc4abe2ebcd881163568c35aedb02f05af89144956677699a0c937242ecc1c4e0e862eb34999f32981cb63b0b42ff851b3e45c0aeed01018f67e9d78896d7b1e71b8056d6c8ee7f64938981994cc24d3c7691f08b6912d631a0e8a399d264fd0afd59769071fc8cdabf6f4a27bfd78e3f0e8768385187389f70621ce7a6e69f472ee342ff3e01ef7046d7a51babd5351efa1e43656506abadf699869e4764b11bb249886a86ad4ae00d90c51297f756ea910ebf485d3aef6cf3d98436c2e4d1dba5532d32f049d13be2037b5da9bf5f29d4565ce8c807db3cc90630029da9061c76d50a47bef8fdd4c8c022c0aebd9e4a9aa9c2adfbad60b957b34a2b34074197a24eb5db0a702e9bf565a8c4cf8a6c0f90bb72f3847a5a85f61963e40ab6a39cc283b3bc5ba3d355f77917df709c30c8d97086b8bfe66caef606d176e149114619e6ef84490576b6de2d7f05ec3861fce262d9a6f776ea4c2b07a9d32fa736b15c0637e38d6e32908b041c97807a61f599326336e855b25b6af6a39d0a74bdbd002eb4be30af1f6e6577072ae4c06b7f4b65901f78bc13bb051edce2cf30819cc642dc03c3935914ccbedf171723254fe0b64b958c3fcf9a0910a57034ba577874c365d99c545a622b5dee0bde2e3965b7d0c24cbbaaa29050efde94b660f671592e7cf7623580d89a952e28d45a9da4525d6f98844814d56d29029e92d19f7997717689a5ca574e48d8f49567e0da9b842f2f2cc0957f0d53d011a22a86497de0de7041b763698614af49809c17e82efb08d7c742ce4fbe04d5920c54193175020bf956b4829313481b546755f6c814823be19a0c017cdf01783762d12a79bd77ae08d3c39ab87e144be4439fbaa08fd0af76aa9b6f38a8adee7e25f772fb2eac5af76a351f7b9dcaf7e9671947374766b561703c754ef345b815ab8a7ddf3381032adfdf1724ba12b389bb84f52c364314971db358938b7215f0989b8228ade35679f99ac4c35f96f971b810a7ee273b20276ab4aa506090cc864027e4b11948ca234f4353c291a90cbd38e6e4dc97e6c745ed4d539ed39aa89d88dfd12a232904e5989bba5b71eb0526cdc34eb58ed009a9f46d12e4041387779ead235f142cb477e31f0e44e5b677ab7a6913de2ae9b0857cee31b62ac3679fe9d823198aae94d63fb096424f2cdf09229be839e7a2a8c1b3c39f6a15e31211b339e8d4762825ba7300222a5320fa1acc45e18aa607b3415c18f9a425da694708d5534de7fd83786080e7c969fc7449d5ab024fd556327bd211a521d85299251cd1d14fc528bb024e89b31aa135fb545b7f5ecfc0f1c3b86af791d7d6bf26e4afdea2faf6d94cc358ce5c50f24409cbc1ff9ca469f152f41c399a99eb5b339efa4386de7d1af357fdf8eebcf07dd62219b6d508decdf36e72064228b4a1844e0d20f67043b12a53fbd7db1b9d4403554e5ae8fb7b534988ed770751ab0d6f6414ddb494ec5e4a1f2f619dab2a4bfacf9b021041f0a2f0df6937960f5f8b64708c03869e674bd0ea3749a547b1a4c0bc644c98f521aadd392eaba111612709407675c2ddbe09738d6af3ebc9e79800e48a42dee07d05afbc5fa239b1b9d640f68659bda3cbc488e722995c2ffb70f2f4901e12d564bcb2920bb6145c81c29a277e22ceb4375288227a9985f97dfb7b4fd6be35032a4f0de6e77e5edb676483d4467fd38299ab866cee9f3b7cc1835db4a7a2abe56da517c1af9ce0aee5e2c8b63153d41acdc18da0fda763444982abb55134948c0dca29b761a601c5bd598a4c972614edb6c2543038c008bfd81e1db9c53009b5e661719f03c025461a4ecce280545e974b12ce565d6a1126275777f8de8c224f325d67821dde414b3cf020e85051a7723fa437662a591a39d278e65489cd4c90da2ce45e79deff6de213e0984d39fb7d3be7d66d6b39cda24dfb582cd0fef0b784efe0e31def20a9c7ce8f53761c9de7fbc9cbb5e9b9eaaae1e382377ab3321bbc7fadf5ee6f41b6d676743c3f610dd7beedd02a1420240e57a4deebc635304fdaf5a0716e5c5200e8a62e37a62b51c10a67d0eee7caa953df17bbbacd76f3be8939447b205520988746fd1bef45905c9cf1efb2dbc866b4ead37982fcc3bece0fe1c9723052059b1cf739d39394cb306db8387a0d990131c06c42f2e172f67cea28e469c8911336b09fe2cf580613754ab565fd41a973038720424e04a72f92f8dc82a43a8fd185244fad5aa9d937df8433ddcc15924878d2d6c319a5df3822b5e879df02b7896ca9bc4877dc8d2b5adec82fbaf6780ab36f8bc7b71cafaf9b5d59cef86750bcb276eca53a35472b4fb06ee1cdcf3a363e3f5b6ed07c2dbd757021ac2a7e6235f1207c0badf723fc89e27c478afe5ce8982c5d334f14fe1b49c076ab3a68a99140b27f285acceb01734eb708aec69d26962538549825a0d3175de875e86b93e29a46cf2c17afdb9ee6334c9d9ae57b60bb27a734412ff16e399ccaab07f81b58553a6e5b0709c12953393f48f78c1270c7c13c2d42f0c98d7049259fad463162ec551c0de89cbc4b76a25be8c0443e0b140518b3f2f4a087bd6baeb6294b10ea07e168c3d95154ef26631a0afd0af0a21ef61dd3cbd501cb14dfaaf76e0b3cd1e0e97f180d9beec1e648395869f0f44c5fa16b6d95c0f8f849b7f99d15eb3b06aab7050e56f058896f0914e13fb3956e693909f967df365f2c1d16f85d93c491dbb5b1df904ce3659fcb20977a62fac57ae645507fb1224fabd1124544eed9fa22bcfe919450a6e28890251ad7328369da357723a070d1f5a2430efad1a4c524daac22a705d98f7dbdd1a8a54c5d9385f9bd189c12f6f5d79c146e3bcd290fa6c7791e76f886898af5a3a9cdad0fb78d6de6bc2f8a723b16a4579e122e3a3db2ebbd1f9516d6a0a9b22366f8d912793a3a093d345966e3958f447456324a9227921b0bd6c71b3e7b859ec5cb9c59f65c1eab41852e605a6be8fbec66b293eba39662dc664c094962a730d661c0db9e00d003ed9dedca1f324ebfb3d286d57b0f581d88e81b13a86fca000f290913bf707ebaa00371541d9ec012efa05d94969d5a25b0fb47d1578695818facf7288a8731053dc4602fa2b4d0bd4e43d976e15f731a61d482e9bd43ec2f4ab24e137878bf7d57db09b5f96109d8b5979dd31779d4018dd25fb2b655333cd32f417d7979a4950964853040d4e5960a480b54411e7ed43508887591f286a6daff86064c8241a346b3bbfaee2ad41593875b15f702866ce16d3b973e9b337fcc45585bdad670dde851aafbd4c0323a8c6bb1faf95d9f652252d280d676b02a34f41d055bce2f7c39bd2607f9991d04ae448f4e7f2316cd27dcb8625be811cb2e96b7ae9b478186469ee1167b415aa13b142bb93c23f02ff6387a056c39a9908f2cef4cafaa469ea964ee9aba8ca96e8587dfe90745d80f68ff56418a7f7c63166d0c0909c61b333cdf70aaab60ee6c2a3999318b655b2b61a07bbc28ab614506a2be83c4ea281b9b8879aae3125f121eb17dbf9540681180faefa2691312dcf8cb0c02433a7dc58b2b3cee379e05a713003ecb63d3b1ee767194689f196efc43c9a4365030ebe992d035e0ce23fc87f5766f0c6756845b17b71a378fd73ddc9d16c2cee7b4e497e1f29aaceef840e8f17e5bb79a75d96cd74c49f606c0e0aa192bfa7959b95b9dc55d136b46e30c2babdafc5d8a156f0965447860d6b753718dfc3728d592e858b3789a8f6a3421f98973246e36316b539b5ce3557f69ada699b6997f51a32c5280691ecfe59ae4dbe0a2c29695e21cc5fa974aa6c5b9748180a99c192177ee344d17310071714edcec7360d68c9f50720d0c1ced43b2e4274bbf360db1a7d4f54633464f89b02fa970ce1c141ae06859f355652fe50f1a5efb51125c4c234cd797571f51c5a7093682e0a24f9a43fca95f6fc8936a0e50f1a400a3adb1bcdb25d336646e3529afd66238d1acc298dbf9a624778ff517bb8e0554574e25bbffe4356376d8a072ec629f4b29801459107b2e5589310aa9337eb3fd5da8d531099e66dcb749630ddf11e5073a2d92f94af51d340f9e2d7c63fbc10f6a5802d84f548132754590615ec1d12ce6cfe0730f5f4591125e4ffed0e941b291d6a8741e34f4f72adf8012f6e2f1d967864acaa44308af1cfdad311e6009c1edc3520658361c9e9e0bfac0bd66c9e1f38dc0a19259d8d451ce50c773ce3de997f17e7f5a41e84bb56a1b4b7f0931a7bbb515eb5292dde549d7303e546c7cf6a0c448c6008b84151a10a4ae427a57052742dc9bda6a84b6eca4bb2b7ccf6827902b9cf98805ecebd48312d0df35fe4417258f8b4302785564fb04e2be6a173b5183b0e0b641f939c8885010af0d64a289444baa70e33d530d415cdd7f688af92171b93cd0177ae41cc0db1b1e5373930870d4458071c9c2c22070367bf4b31d27210c3b87c56bf3c49ff91086f6f7f202df292d0a103f02234208b4e1cf400c6ea930891d8433666c96cc18dfb00456d8508aad617c6374bf2a9f1abeedee8b2a8e67297003592305e3c4757e3dfa374f6428d7e51300d4165fa1cfc8ee3640304b7c6797f2bb86bcdb9fbcb51824b4b0a9df5ca74e164b5106f8d42b70e09da9779631ea8317dcf42db9142447df18e3d2b6b179687235aa6ddd021f99152dbc731af6ce2cd000e8fa722dbd04a0fb28975ca262ab5a111564b09af10b50c66b788bd70192d45908537617ba10a9af693d6b00014ba84bdb55674067108508e7b3452d75c4e0b1be52eeb4fe800e531986bf24032c6b8b148c667c51b9a70714ed74591281ac916951f1b28d94dc336aa640f2710fc038fdb5ed1931257259f174108d6095456f528b7f872442166a95369feade1abcf309fd891bd05c57164e39ab1674f3ab0299ea31668865d40235c75916d7697b941e039624e69f25e4cc325fb4aae8b9abcb998f0b6a0700e547dfbdc901827024cbedcafcda27eeb97a5f69d2dca741f2cf6d4e2963b0ea50f5995ce0fe6a1faa46b3badf45f8807b47248b35fd346e958d18d58e230e2ecde554030e4d409176a71eaa3e03bcb472f86cd20f246c07ca9347db3efa903c311debc5a0ba9f044c71c86b5c0a87e29de6b6ebcf14a9df4cf38fe27c713c7a63f214f8b75d2399b058ee2af7a9e84fb9edeb5b4c095d382da350e3a55e4e9695c001a24a4ba9cb8f81948425e513a4244d30c1d2602383a3481c40f0a8372a54bc869c8bc61ed3a7898c15c47a3d445eb61d135f7618dc03cde610f08b95d2010af76c3b3609c6e30c693b8856027229c3b0148e96a9e8901081f5276fd0346b36bcddbcb7fdeffcd84db5f6e7834028758560b88308cf232152d514766449b0816a4b918ee6434d950e184ccadee592a680d0398e50a4ff8a9f891225493fd423962d6b199b825df3ada8c51fbe8229f324954aeec9c37a73e269676a0fdec071201f1668f5f12a758fd641a921d802d0c4bff3efe22617f2386947709db78fe0e44e8df4d095169ed432d1d0054e2c0b4302c0cecb480968577e11bfaf0fb11b542b3ade3360183132d86dc5ccf71efe92f720ebd10842db80b3468e8be5db5f37ffb73cdd5623badaa643a97dd7ffb4cf760133f0b9a046c45df7b726881a35a6d4ceb4ed16324d6d78c4c9139e9626e25f39887db0f5469b9b27141d98b8da7184f689cf924b7a954c278e39fc9e7ee1757248522fabfb0675c2c04de99ada6e42868647bf77468def0f420efdf62a029df18a95c17c618518253052b4e230514fbf002863c2ae7ec9299dae40ec79047275f8d90c37449539a56df8def159ff32345a44d470e9784a9b01c0564d4421f8384dcc2d997ad4c1b2c500b53b1096866f602823aa46e133f7d855f83c84aa063fd85e0907b41e4dafa221f7cfaaaeeddb35c84bd295f0fa1995822f7e577233f4780726fd4034c06992b73e38c6b0e936a7cc8216e12ec7341871fa51040d3512ff5f3700f8ee6a9c08f1e22a1b42d97345583daedf51556544f116afc7dd855b50a5288e4faaef73681be8d6e10adf43e3926f097f56b58402b7d67fe6b974ec32ef1e5541fd141a4612cf0ecfc403cf1a4063d2af20f1830ce2ecf50ef309df5add3db85eb8558fbd0f6b0ce9788de56f5c6c21b973d97b2d2b72bf44059f1a5326d3d8864c0c5b2d09a1b748132b9eb4ad98a73219fe2296feaf34d2377a413d0acf2253b306ddc95af9162cff12d38651a444bf7501b1678eb2b3925d9dd80d2aee92a75faa8cc834bf14ea1459ff5aa944b4c1206cac2d989e4b0be61b2f7d1669f7458303392bcebfd745348fb7a448d2f20af607d631387b916da766e02641e43a0d8d24288fec636ac70a8e113faf3919f7593d8562378cbd16e3117211c8cbbd3e0543f7a0d1f61086dad200c6e188880a8ce034dfb8eaeb9b05f2181f5d3007e643b9bcb4f8fc0b51d59375c07fe4674e91d32eeaadf7ca8143e500ef92cd9ef2928d4bc3245ba5e23f59814452c936a56eb38656c8c787e46437a1e0506ca35a1cca34e2f1c85c7537605fa05cf613b06f12e676bd0dbf3b87ec2c51a9f150d352866890576523069911f7921abb478b37f3cc18e4c17462867a7ad02b21c21111e893ebdb6e7d0311766487f208e7e80596c583e9fdac2a2d29ccf3a048ed1e1f51bfafe935530b1cf2ab6821dfd6cb1aa6b787d8997ece53e3094766b82725628460c9aa1c615ba41e17c2508245bb2fbdbced5b311001cfde794f9e6400a226bca22c19cc2ef93c23279531f4c2099260e10dd2b9222621e33ae8df3ff22f0a862a6b57dfbddd025e1d14a9312e1f97c02e204872ed667bb3322b5f1767045727ce5acc1e30216cb1c39804f44b88842a4c29bd9c78e647be78a6eb3a2e42478376c82d589448a6bfc5f24a53c082da36b931047726850ccb98c1e71f8095ffbb9c441c0705bb8224e9aed7cab9453f890624293cf711efe45e310a9094c75480227a041fa5a821d5ab477eaedf411ad930e3a44a32ea5df2febbebc750260a5571885679f1e440df22532eb6f7c3c1a521e6e15dbb729b612568d1996561c85bc8696cd9a71d02e838711ee47380697005ee3d1947b1f009e3fc89a871a6a32331a908dc483852a7206085eddc0a00e53582af4c899667c775fa6e94e0a7881373760c66f32e5c90154748e97e5644f32ca1ed51d36a98b34b9a72b1d94dbe431eb3a2dd2c351bc5411ffd9a9fa6d7c747b0864e217af664604eb7215f25d27e3b7a9f6af3bdedfacf36330f56ca008227b6380f5e73be4afa339ea11f06d1eaa2a69ca86d78cb586fcc075235db00682dfdff0bbf89a2007078eb532e825b62925071b2180f4943ec2c3ba47a2365d71d1f3fdfcbc78c7a01fb5f18635f3ad46b0d07dd57d73964c12a637cf871f9ed06068e60cd53cbb56049f9bd2623bf83a47c62a637f5f3731814a6dbe8eee660d1d3c61b98489cc00b1684c071e565cd3b7188feaf06b902dd360836b77709bc8d4c528417a2a612f24b810c0eb060e88aaf2a0d8431551578c11fe9d7fbcba11994f68e0ffb109b04187e8ed7ce94a19813b013347b96b861ecf50c75dbbcac39b6e1ffe006942468b4a3c931b5a07a6e5bb9d492dc563f81f49aa7bcb03a9051b6aec5f65228a8acc39b7e473b4ceebe2bf37f5df064a42621fc9c4095fce203c8bf2d31c21501512be847d5758a48e54ba179b91803a2508ae8c034b9271773914322637fe80d60318543aa403704914c3a4113ef96996208571381806f83c8fba5a7e199b7896727403cd32dfd582444a07e287bab52ccf29963c2628f3541dd43e54853f6a0bbdef6773c4f5ec8cf2e4ea5cb8596e61da21f4d58c57a4ca055e521361a5f832b1c2315161860fcdf8be218b1519ebc96dd702f5e37c5ce66540484614c39c6b401780a493ee10ce5745312ec667998fb69fbf8a3ffed95a5458e926a7fb62ad5e58925ed5f6d6cbc800cb083a1f4a3365e91a1830d2ed8dd3e4f196eb76898457dcaff48f339da510196ffabe3689233fcb3849d150b36a6843b295a0dd5030fdd4078c942c596f4e27c47765e500ada061d99690e6603c0b5627e39aa24c0c3c2f2b787e69643e65536549729b6bce5a69ec9a0115e7b39472d1132d7b3e035294ef0b9d0e63e5eae4ab8eb8ff64fdfa734f70c0d02b87f104171db033ec9dc1d0b220b1a8886af87c9110522efd72eda7da300add731c1744725f1863af9fd391de70e731c67123bd486ebe7a3155519c4894f94ec96f310eb93cdc475eb1de36c3ffc2b9664e74e5ea7103040b2708b91f2d5c604c242592fd27671ee254680b4869cbd45f52cfca80a43d49172850b5d9b56f0779c984c1ece4ccbbdeabe88e544dbf5348900991d18477f223f5c70d602712c382a1254600769c255f4cd76bf83048780c6b837cd19ca7d3850a5f0454ca634eaf63ff06da9539c10ed49da532f1f7ded73eda753d9c4084c0a3e38e072a60f109e0292d7e970df787cbe7fad64ef41ea1a994c1b548f26399531ddbf35836e1fdae5412362bb70c17a8c716ec6823a4bdc09ae6cbff511c3d027bd860d2d01d83c28db8584309c0aaf7d0aa3c764552f27d9a1f2a4678c81a39eb40eac418254bb5064f1903634a7855c987a42315cf6547803fc6bab11d195bbd57d474f4738becbc13c65e049f1239da9edb54a9b984fdda737f2060114acc32b20ff495958edddff884ad4dac1c88730ee35b4747f9a5f72e2bce22ddf465da4b382f122a03e6a05643f718394bcc621a9e90154ee121c7f8e916deb52a6da142d42ac525db8b9c8a4d5c3cff78687eb70595b8a83f9425ea7d4d1fdd23ff4f6262990805d79d79cb9e9cff56a7e78ea0d90488a2567786ca8a44222d1bd09724e6c69c9d1a8a48fa6fe66ea2851d066c5af28d7427b2f3dede0074f51cd554db3e5d5f06b2f961361950a68e463bfee18fc13eb90df6e679459a6bc8951273c15a1d24f796cb3654011ea20886acf2d232d3e6d15a27f0df9bb04889b695402d0c45b7ab196f2ec556d6a7e993567f113a627d89604f1155a17c9dce7baf578bc78bcb4cd66883f3b2a15e485a3574a07724762cb94c7d4c1ce7fba4a3984c38e9e2287c8c53dac4fadb73024f17d529b67c428f68ba23f09b8cae213a4fa83db6d26d0adc1878d827a3f1d31f879b4bb162ba1c38005c71eea8a55e69391ba6d447b732cc458d0d3bf54a54029579edd9214460acb5788839fbedd87056d73334af1383ea44521b7a80192018f8fd20ed1e68287871e556a70309d9fb42389e576eda674bb566795e2ce0805fd0ada4f4d3f4d4ad83ecec28cce97b44688bfc7f3ca3a014b913de95e220174fbe253ec1a8a0f67cc62cc83efa577ff72cf6ad23b95fa3ba26b461d55219b6886afd49632ca854238688ba0081b3061c4bc4e587b6746bf759be78b8e5074020366cbfb45c0d9a9f12c0879df948350ac8b6fd1fd6d99421b54a6920423c0ee1101947c29bdce545f63d48e69a0d756619920ccb6564a58821a93c3148d5c0bb85f30f137d4e131c5c7f27604966d4ab84e6eab99b9cdd63fa6f81f0373d220a7589eb6b096530532f87cc7f2762641bd68495ef991d118564b0d6e054b3e6b7958f543e1c0248e9409ba01f41ac0d25911f70bfe6705d611d35131466fac50156e4ffc12a9d2a51a20daa8043853439d02648b2088c71feecd3b2194904d05cc13d5866fd62a806936fc510c1924a65df64f66f361996b5a497fc2aa42cd05aab7cb8cd03ca33905bc4f77ad9b277a9a1df964284f9cb85477c451c9ffccf4f32965d4df653ff4fd0ae32e652aad3ccb3504b8d9bc3f86215d50db77dd769bd80a8ae7d97344c74ba70c2a839cff7ae942be2b149925e217e42ed331a6e4f15912c5e114ae8bfa1633bd1a6583bd70c5f49df0d7098116e9d9be1026cd3e15f33fdbad00f4ecebe245c36ac33b57d5c2d56e22d17dccfd841cc28c993092f8bac95e6936c99d506c8fc605c0cf223023fa32de1bd9cebc08d7a9a57054e2b3c1152f7af6ea2a7d060161129a0971be74a8a8decc68d3da4cb2b8beaabc47c63b1ba7edfbe5e557ba4444c6541b056f898cd8676ae65496b9a2f13d83f81fac67befb13ee293f8a94170be7b5551ad95715510913ae2178c2cf55ed12b7348770b4fb1f87a184f6c28c415518b92acda27d75d66e1cafd67381e0ffa955210cef2509b51e54226488d7adb54a47dcf20eee51dca39e74fa0f3222dd2d5e8132ae51b25b38e7f766408b8198552ff79e25f0c22c872088be03c8a0140ccb5aa64f3391244574c8f9ecb67013029b62ed23822989e2f9f9ea2c9f4647c0cec6ab1edebac09437a46ea8ed7cc701f845b69af352a07191b5b2c5311c83c414d56f50e473a0b4f874ca83d8cbac2095ab9f50dcb7406c61504bc5c53601d7df69c2680fc08d14e30c163f06af5d85690e08e58e2886178ea9612729cc025d2fb030c8d8ae8089a5dd4bbdd49318079b406c87c29a0de9211341506615f2f5a10a9c04f3145b3c5fc303f34ac35dea5b16b725403ab52e864fabcba324dc8d67abbdf8a55b349a763e6e87531cf882c77d978adac4749a81e8be281d38d87ef7f002861fdba55d9af8eefe2bd0f2c2e17851ab4fa48268a1194c770304c7cb28fbe8e28e27c84b9512079a8796256ffdcb7c536f598234f215d06d3fe4b63c8836676bf35e0edfcef966f02b9c8c3d7f1ae9df85a4440a059bb01d6832a6516a7c78b5d971c0fb580ae4e1cf2105e261c30bc4f94b68f7dbc92990433ae2bb630ed2d45c25dcd7c73bda4cc241dae7cf55cee7259e43e0795cc8158fce789cbe511550f9ebeef0e3cd96b8f74eacca1bbf9dd0c02ed38786e6622b884cd96aa152e0c06fb108f7aaf24704dc7d8a129ed494ed9461dd0cf9a5fab8607f8775a9629277b1bec5f08959949f03116f5fc343303af1161e00d5b0bbf5398d649502cdf3d7842d2f1606adf6028d735ffb509d018d58d4f520f8a1324910650f2fecd0f05257b124b8172a5f5d4c99459cd340ed6a4e8c23ccc83fdee005c0dfbff6875e074f51c81c52108b568f0f5fee1787ff852bd1b0952a3845b2583115b1a5414a4dbe13469be58cb33af07d30b5ab69b74fb77d177d4b0b321a9ffc3bf7d2f746938276b58eb00e19954c4c81b5231a6d5038d377f27bf212a4aebb8d9f27f4481aeb8b2b0d280e5de38780f56fd7577116cc91f53d34f5166439ae1903d053b72b9e6ccbcfbec4906b5b233ed5b50d68055d5d679cbc1181759df3d9390d64b8647b4601b5ad3065318de37708cb7655bb4b0a307043f483331aabd63cb97ece323e9bd9c3f8cb3b198a73ce66777dfdcb415b9ed8baef405b3a99b966e2ce03f57eb87c7238ad3242c6290d02845bfdb10f6f67895e7e4724bafae599d2eef5b632ad399fba01a4726fcedecd8ed898ccc51ba1e123d732a7280ce412179b0a0fb56ec7ae4a296a864b2067f7ec15d1dd36c25a21033b5a0d2799cb03b29bba2cce7ddac30357a84e1153fe10ada25e2d74248dfec7aa9d89d814dcb87030a4ffaf46ad197281f5e11a4205f344854c1b7c48fa2c97f34d37726f042850900f7072c658a42f87c14feac681463a6ccd341db95459b735947d619c6084790260446c95f9844f122a53f80a8ba9bd211edabb4bcdef4922efcecb47498d328284bccd58e5ae39a673631eb1f8af1e5219bd42b0fc6e4bead99cffe8d1a29d5043a1fe0fd18d5816e0725907defdcd4011071709aa9ba548928cdcb40398f48852143ef9700a702c9f6b5d39369df559bc08f92aa1b6d16637d9da4323c82f9958044163ff8516d1c03a6364c1eb30a10140d4760c4ca378691b19043e69bee546ad434a23712afbd91839546f7c51d21129b1a8b307e17ac8f17f8a2c2d1fbf7de5fd08f818607b5ec8ba11939ad155c9b71d8de0332f764961c1a7f1d588253942fd59c3ee8bc168a74a04b11edda1ad103ab30cb41f107f19217e66c2e5d966399cc4add1a93a086421b16d8f3f9deeb97877e3cc093a5defa0418bb4301d07a2b71a17a653585adb958da35a9b221eeb537e901bf1f8d4ea148142116092e6fe5ea2b717565f5a6ca31533b998a340e75b59f41648f59d8c5aa20440403454008c91aae2ff70f295b4f54f4088ddeaf1ab0af0a81c8ec04ec8782e0a4203b191d970f27b82fe301ebb21489b97d97d73671f6f036dccd3be3d17178a0fbab50fb4a275abc947d0df1ffa7f6b40c204a6be77053e2af810962b8caeda417f21662ce95a71dd0b3d5dc7ec865e098dbad7978bd13d3d49581d3904150097193ca108db28a28ce3e4e29792007343b46c8ee4db0d71440438aa2355a54e5243b5cdb1ecbb1fb781e7ad84428022ed4737e62ccda2d16fd8db845663895f340219e982ef0c83e6005b57ecf78d5ba1d1fd901f2d7c22c407dd15e6bcc9e6213cbc41032bad6158cf792bc88eccbd481024a3eeeafd64bce9965b664ba573feefbce034da1b00e6053d32994ba87ea4d72fffacc5f2e4e986029447cdb31bccb6bc7acc121c4198569e3a943b4fcf4ceaf7b028bd012499dc670e65d894e1152765f29bf40140216dd58065852fffc183640584e0fa182853324f205da6e1d688ce8dc82c90acd5427d6959dbce8f05a9bdbb22e7d349291e65cf58df566740a65a01c861b2f85ad3c9c3738b0e31e53e02db4040590fbc59657e67d45353bd2af702ecafed24b8f62a91e4eb5f7a2fd26385f66b678f307508af514a6211274e984678bd3f19aef9660a2390eaf8f08c68cb2a0bc923adb6783ffb351e2ec3795b6112428816346ef9d243e8b940bae90e2983f12789539897bc3b8cb35467ff50575bfd609effbeb236013b7ef6b92343622113879d7e189d684f0c55e3d51877f29f9e29c7ae04d9bdecc9bb0bcafd12e38b866b23ad8d5b537e62268d153aee365e81fbeeb788850ebcdbe192eb4457c89dace75408f0c95174f594557d1a2778b584fb9f456cf784fd9d5a24555cf05d1858cf376a65763632615da9e3226819deeaffdbeafebd1caa5058eb4f2b81113db378fd63af4d13d975a5001462f353e48511b0d67916a248fcb1d6e076bde1e29e4d50c80d14950e8b8969e8dd5bcec32ab94269ac95e2910382813d2f9532891855a7513635f1c2a0bca330c4f955e85318024e4712aae2a0c84c65a925f987b1b9c2c18ed236c9761853b0799ff5953d5c87967d43e1b3fbb077018ea4f6e21260db6a0423e7d605e794555604ddf104a24ff9c0ed031b1d90159996d0aa68c986b80ede79844fa3a9630d1b28c8883f8e17e2222e0f60d33f9dc9fdefeae5a59f92629fcc8166a90fb62aba3ced6395441791596a1b2f06973aef5b3f533fe25f389ae9776808cf61b6e9991f5190e1b1ec29730af46e489a2250c07b50dd09fc73c33601ac9572c110f6dc8e6198e02cbb5c509a0ba4fbcf8bc687940b69d3078c1f2540c98dab7a019aac2ca841fd334181faddf619894f3aca055db653b11f23dd12d49ac28875896daf48e19e5dac46bb43b87ee66f4f45bab0b38116f4c26e6b117141ff08b7a60e6884763ea23922a201947b064f2fbd4b1696797b2fbe7ae8923e2eb1d91607f152aa8370f449fe8d9204893551692039632555a5c4afe98d30b65b87ab94852b0f3c4a63c7a2573b90be2cd6bf110a41239693ab7a117a130ae8d75e50277152d0fb9bca33d1d7e04b37bfe6416213097caf1ca3e8341ff7487f2377cc00becce1d5496fa3266fa2e537826e2297cb146638be4d9960a8be75b26447926e8034d70c9f9ea487dea031568df37334ebb6cc611130e2cbb2f14d90ba87925c09f8aeb61ef01c9af0f6b0a9511dade66bb4eb2cc95716e99755e2c1879191c6d0c67dfcdbb389c05944e43e926c20a2a93448f6ef423a63dd9652ebd08b206cdf96240e250f6df22f53203f7cdc92837ddfdb6de9ed3c1cb0a38908c19a45a381a917c834ec1e3eba2ec80931e964280b3339f406b6bb1bf878140c3aa803b72bcd75f3c0bb6feb16ec7a81c22699966d92fa79d33131fcd62603ca0676a52546c4d635cd89f76a7d57509c5d0dcfe052d9d4087770d35dd4bb953a196d9f50318a41683d1debeaee723f10fc220cb2d4c6636e957ee5771a82f7b7eb7cb8f093d596df1be24abd24c6a30841202457d95ea3e48225292095ab19c052d8f93144cbe3f36f1d46ff4243fd55701decd799dda358fe0fa58bf22da59e3af65e93f3b7303f1c225f6fd1e39b68ad9de826893024fd978f71dd2db4cb226a660926ff6206f8b04cba25e0da7532097cf1b0b777d71b8cc0b0cd729daea43fc489fa7dcadb43195c7a38fac32e02508149781e949c98ad1c8b79dc6cf39632e6d5a0552cac66e8e7cc61176c9456910d23172c0f646ba8a394d4025c67302c9cc71bbba8ba1fcde886854c8e9644584c572a3657fed47dab18eeee34ba859ed808b0a646c2fb83c05b21db3c0fec91016cd34d84ebe97173aff395781c7ff7343e57429b73bc7c7d0fe0af857509500a5843b341155b92a8e7881764c1bbe40fc4fabc037dfce5ecc8eebf21a828f5a80f3f3fc2b0a81eb75cdc91243ec02f427de5486a7c6554f5f3e3cb4e12b60076416388ece6910bac1fdbe4e50b02618d62954194e773dc52874fc55191272feb3d96303b04615bde0fb89c064e97c8dd8752b003af16dc92e92dfd2054d4eaead81d6e01eb085acc30b947b85c8b7a9416d3f88d5fd7125b2335e430cd36eb445ed5c16aaf381eb3a2ee5d00826179e978ebb3f39bcaaee1ba6d22ca4cd20ff38786f4e50e374aefb5a84eafdea645a1cbeac6aaa1ff2a029f1ce4193458b3390034d929573eda600c4882cf34bec3eb30ca622b77852f7d12e18b8d15cf1e109da0027baa951780d51a3c6f847c05a5e56071a3ef62134dce4b51cacb03675a1e76022387dc5c598839eb5daf6c47a49d839685f2781f00dba7cd66209f60483b1218d9dba88654aa39c3269c25fd6c7d0133530f4f8f266484c49917326f762ff9fab2e6b9174ed91f0b77097e3b3696e848f12b567a0436214b4f9d908819b90b81b8c919eb098dfbc90d4089a431a65387a61d8c302e808f6b9579db6128c5531eddd7085b99a9b937927afbb315baca204ca0720f78ca1b5e4594be67b2409cd78334b647c3fa3fcee0571517fb530282b5b9ef80918cf08ecef5283008bbe7f5c47a4ef587936cd3f1dd9607b1fb0031f3c8bee7f70c9da8d753ffd60278dbf48bdc24e3422187358128382b65cfc73b56bc6c154a3193a05cb7d0e19edba468d5079095405f76faed719d0d0049503226ac663825a7ad255d7c1556a3ff457cb5d521a2e964c5dabbc043cd14ae81b5324645db5bf30c1dd8933d22ad271e97690d683113ead0febd1bd6e9235d65ac10eeab7919e7158ff44cec24ad63492fc11471ff18a4efc88f117989d5ac3a217550089821a9bf694ae3fa2ce289d85aa17629f63dc2d953be0ec213469b727792ef7dfedfb5eea2464f7f5f3210427c3723919277f5af7c3b6a74b2000b4f2f1b4c9d6c05d33c9694424867a23a8e5a833772b39eb5537ed1108392575ee2355a679b50a75c4afb6ee064e150723e1d1b7481991ec7d6a5e9c69ad6f8e48731975514b98cf3b0a8925e97a084eaecb0e74a8e9ee86925331ef544408c5d0bcfe7c274365f4205a3f50aa92470fe8500ce3e8cca7ec3b9cb874c4d86997ce02e8176e833445ce4338c4e692ac9446888bcedcd3a8beb1c5d57abc50f987dbff91987bf866b1be5e033c46165dfbef4895065893789c425bbd2c13a35b4b24017d213a195e546110356f7ef81ddda8400dbf1402fb16209143891b1aa0164cddb0c12480d0f21b733ba26c1e27f6309cd7798e72f7e034acea76dc4a99df7123a07a057d423956f8913b193bfe3cd60fffd2678b7c14d7e5b54cd67d8b438f75e090662bb58e11b00d3b05a3ead869c6a113ad3b986c9f0b9bd4528eff32634da91ea1b00d64f8398ce4e162de344f98cf588bc6408fccc1c37b847cad235e5347ac449970146309edd0bc2cfcdf50b2845456062b37712904d8be8ce0279063041362a2cbb15c528652efc2bdccf3631d5419f11220fbc5fab7e87bfc702737e8e78c9d8384b10347d63a2e5305852dc7796b9bbc7311fd03783f589eb452e73b17f9d7f354b6ad5665085533c91efe4ed606f63498dde3a06f1da601a1042b1d1c608a76ea7f78917b5f8de783ff131340550fc838075190bc037d944aa9ff619993d2527e123e4179bb2c3827e6e4acc7f17a84e27eb73360cb119cd652b518f94c38d9129db7e52c2f9468ff0486ec0380cedb9378e6d934e0c99ae52e2ef9fc6489e50ba170528c958dbaf0352cc2f7cef08352a3adcb4367d455e52bd83f349e8759826f24c3dc0ed6ac7f8404bb0af5da140de87f74c4c859f218c305eacaa78f8c9fdd14ede23083ea294659d942586eae0905370ceda9a9cb4d1666a0dbbd8c0ad79bf4a735432a5eff1b5d5a7610eb7f4cc624d9f843cd0263456b18ab714f10593c935d5bbedc6489a8d8a0339b4bafff0f49d9440359dc28dd8612de0948ffb847ed91154c4dcd848a32d58077774c3aad2ecf3c222d83421f91356a1cbc441dff3e141e0bc90f404340ea881e4ea123993cdfee22eae9cb3b6ffbcee9097bea444cf0b85a7080597aed33c68a84f7ad691f6484a0344bc7e745381356b4bfa537e2da0852d8508cd687cb8f094ec884ea408ac5e47ce0cd2926027244b01176e9fa1812481a014b713e109fcc9573682c7250ac0d8fabc8dd55ce5ef4326b39a87c8c32cd837b833a1aa36268a931f809ab1a2113dac0595bc99c0e1b01e43ab5e7d1de72497d6b91d36cfd491fbcaf752c18083ab16a907bd7dab9eb5d13d738c0da34cdd8bffb1d4c98414951b0991986d35829d2053279db0a74ba87ac748040df2e82777305f7e42fe148b8daae9ce1bfcba47f073ddeb31c6f8f9ac53ac7e5bb7f0baab3df90a3dd239ff06c6b7da13afae97bb504892e6963396d6c49eff81054f826310455a8ce43cb5e402b3289f2d4cfe8ac6f26e16db50d26cbf5555180c4f4922f3934b25a4499029dab44c1c2e7703b6ddc075c05c8bd823c08fd7619458aa7041e350f4937636ad5bf3699759978bb98d61465c19ce99ecc1cc37a3f239ece8f8442eef66aa9ab107beb59f2edc414106fe9c7f3dededc1157725dd4453b85a6c8ec499a44b3bc2cfa1ff43ba71e794877d366bd8d7821671157e3774a179885883f6fa07c0558637d60c51dbd8310e1b3dd0d1c86a5f38574eab3d172e591a8476e2f5d29b0652ddc51a82673a498b20142ccbe417db9d507180a83dcd0ebd4695ef001a159429a491071e1c19c07cf3f3dc5957237b4fc8724772c2a61985ec32ab73c1fe4ee07c76db0e034b843e13ae19b7299962d7c33cee8a12ba8e50c57328f787ef1cdca8f2939e06ece8ee421e46d750582149f0d9e2eebfbcea928ab4ccc35216d78ea8e997cac95b63df1a395152655414ddccb5ccadff7bfba36944705f2b1c8d984613c2baca1ec42c9549e9da30171849caf6a2e4ebb56378e2896a4e90cb6e2fec04ea05e31c871011ef44cb50b3be928e7c2405036243a6f4c265090c44d9b22c3586b9fc84b776f98aad6144a36a8525f971cb19859a7e5538575429fc0b49ccd6b2473db23469f5ea61c320c2929f572badf415f28b1cd70b45b00dcc2c224eb3699ae1c3d88837a0151eede1610e24e8c315a74d848957ba035fbdbc7ae7df0858fbd68cb3fd5b8a0c7cb89cbd7823a805875590711f86206ea6b2d6f7d0f3bae0b5bdedf3a24dd0fe673e92abf97e877d57f6cd0083926a581fe24d67cc63ec5bf76103a9d2bc98cc5754d47539e26054b74c0a0d837332be99c3eec2ba889bf407815c992ef1d8f2965c76733173a3d68a047fe0d3b31b1718259ffd52613a87f6d9cb901b3e2e88cbedb0c952b6c857e643315c735d178dc6a20f596e84325129f116df2d285fa72600ff00c8f44b775cad186d8b7fc1dce5f0ad9576acae3a85ffe6fcc5424e908030f931b4ca44c1d4cb6989cf8e8a818cade7ec9590f9714d15b1a4884d70c5251e14413d4a1cedff9f71f7e056bdcef47218490cdd19928a691f0decfb1cc7854c56173a863a6b88920942d4b73259ea0c73f8fa4e0571de0a419bfd86945124753379d9826b8bcab6cc183da2c3b895ec584be9adac15e011ed6cb9a0e736b02f8d432cbd89a99d067721191b80c2a003545bb25f81432d66569e3d0e6cfc279c4a978b989bf610c2fafc71257d64b5ce2ad5632cc16de62a7be79c5c9091ae43238c75d97ded29521431d5e2ca63bc480f29205eca539a58459063648015b213a84005553c73a9ed94485115daabefbe456e840e9bc7dd62d4f0bd49fc63d0b8ed3f2e34e2948c1e8261cc755d90a9e80c305d8f9d1475d0a1e2bbb1d44cf004bdd754268bd697ad54f10e1cdf088155c55b97578f591a734fd6a262f2436c7463a32765aaa74da9854d6debd44abd41430c79187a9d4c7150dd3d1d65450adff282c2c56577d19950988a789b864017e9d0d949116fe7a7dd0529eee318c0e2daec9aa89613ce9791c680ff8b7a34ba4e20d603f01f81c484f4030e1225b0264281e05b63894bce76a278c4d7ab92c1f304599b8775fc0c9be0a8eca72ae14280d539e9cce22aad667320b27b5c37b74381bb6703a3f55d6192f7f436a288a28b1e63502a0e6d461a7862079ec64af8bb50c44aa23878d6539db38e40d88240dc6aec75119357e22c09117e9cb828bd90898559635a5a92ea3e6fc2342200aded2de23a047b9d1e0c7da67c015b26cf772df6527485c27a1031820fc771fc4d6ba983e090ba1c0b84c1db6d8f46087f70d0c1e41c02c45e8a38fcc2943ada8b096a4aa8ee00512469aef426055207983898aaa6874a15558aef318d7b82194001c0ea80f43b924483bbf60fd7841e467d9a2632298dee2085bbb95af00593386ea94f8b8c98351708eea0d52bd83e197a1e6c5ac15699b39f8463ad5c2846594563e444bd5d60b2d46274054e0f04ded0ec9645faa84f7b072a948dfdb26f6937c5fe174bc85dfe833592483dd173b4bb3f8613c1b8f5f4e6565043612ee18b338d4709f3d528e43f4ba65cd0bf2ef4f2fecae6d88df4bd8de9ca0e76dcba71b71cfdfd7f8296825d6696d214b95eab0ca162eb0913516e249b1a83874e7d52532ff1a3180463cb94d8efb41262ba49c795ae659a8faa4592a4499dc55dbe18f446f7bcee152597d27727f23f697a3deb4ef0b701bf01f3a249fbe3b8f8714893dc217235531b2aa4aa73c520daf3ec07486346bff51ebf61a8b61e80e8b72b5f35f438abc3b1698913c5e7d1f0ccd5f1a1dbc2a3c8f000a6bf039927dcdf5586ed9d217a6392805eebe6237202abe30b424e6a985f429b851c44dca16740133cd175b1f5da5dfe008a05fac833fcb63d6a5008ed3d6d53f32032eb76f85b21c5f5f6596e9ae3b69f5b2930a1c14771227551f5d9cc748ceaaae703bdf8cfdb3fe7316e001cc5e0bde335546aa567504a23bb4710d47f446243c5bb5251a78330cd53ff64df170909156ef94f327ab24d70726b1ba291e2a1dd78c61a95e529e32bb7be88ec7bef36c9a4193f57f7a87bc0f8b9b17b63263d1628595436a851163065e1dc8cb625810a8229d22d1d1f0804f50f4134c764585d2a0def12520a1525cb7a8eac34c05cc705170980a6c69eaf08e9a2789ac7dcd673dbea677b36ddfee9634011d7a0597a335fba7fb19c9e961bedd88f9e96f7425b3ff6a31df24fe168561538959d1e7e8a33ea0cf42aa6d713b0d1c7b3f4e969bc3fee47561766fc504c72ad80ea8688fecdc4be7f6317bb2265a4d1edaf0e961a87317860fd5685901bc45770be458bc323f6aa689742e131ecc0061d25703738d1af8dd6a2560c702718f72ca83f6b6da134274d0d95b26f144f7e83ebf761ddf50b7588196e88a77ff9dc45437c739a496fa0fd9169c55154a8314a1a33c585ad75d65660802c8b0c36603b9b487d7241650de56471984f092a551d367a83be043247b350ea90893d065aa52a46b5f69136304820a062cce658b64cdf0c8c8b62dc9095c5994712557c215707523a54b325e05aab64ce7c0d21dc448fcb056bff7f673b7f49dd95e280fbedfb9cae65704d3e4b48d03bf7632bfb1e9131785e1e7c9ff310b85cc54701a7ef06b36a590e703b01752d5d0b5396984323954e1ed8c9efe73e36c05081f43b79cabc210b3f8411d296f5f30e0a2590b8b0e848ef34fe81adaa17908c5f9c238d786d980cd872dff3a2c5260d2b96b5960600f6cc244847e8f62b86f9999099d1a6583eeaf177be4100d9123398e591124a8308db34c225cce6448da1bcf109fd53b8eecac35f85c6967e53adefd7ba012e06c4bd48a9766b25c066d445302c5f0336fe6301e1c73077bf0f605a95ee1ef7b5b0f6aaf9a7779b96484bf19bd6cc475f5d10b3f475c02c466a966a1c064a0b629c99465844876c8acfa6b29f6f60ac6d4f9cd0ee8b3b0b61850460edf83b840387d2cee7eb7a8bed72c8b99265e547f57b7845fa8d60eac7b49db758558bb5e24cd836bcf0b5f817a774645e6299a80c7316a2517b4045eabb51ac35fab5fffcda76ed1aa79b4fb49ce33be8dc351ae734833cca8525786b422dd4d2cec59b0fe49fdbf944b4f1e4a606aa9a23aec84102370df81f5564c7878dd9cb0a4c8dce6ebfe86f72010af2fde32606ae100525ac6e3b6c7f987d8a34a02ec32826f09d91fd02599e561feaac1c348e65ae520a77ce03d8ff33980492115e15d44571e53dbd186c219bd2c0503c471e618a9603972552c3e323f083c2b36520ee830f83febc66d41cba678238f1e3fb9f5b73639bdba20a8e128c8de28da6b3daaae0bffc6a7a5da6259cdac66ebf2a4ce3c5f0e591a1796dc1473266c6c9439095bbdf33b4c2ec6ff386216b6b1531e0f2f2c66fc41de049188a8de5ea8dac9fb214fa41b2943780db444e1c38700a7b43c6543f444fc97ae7105e0301b32f8a9d0672bbe066183d730ca7b6dce15ca875f7cf1f345d01c9d9b10a79f1edf028ebe30251c1d1fbd2eef24ee2971baa75bb585c0df5cf3bb3b87f8fd2682d160dacbdf3efbd1719bce199e539be071ea7a31316b9cf4dddd717a17834150979e5a641aec901fc49833d7ac5211a181cd50145f8b555cc01b27dc5b8d7cf272d6a20249523fc1e06242be9dac35efef082d7217b5fa54808626e1d3b8b97e3506c01b90c6fbdda832241df6fc0d0e0240da9659d4695cd1c6b5e16f141334e2957a02e8dd090d5841ad90f3bccce2d594536fce5ace7db6c73f46e610e9d09336a10dfdaab3ea8686acec6d0617a276249e58bfa510fed39f1e748d1e83cbf020c6f01dd7a8316d3c9ab264baae4b78407ad0ef3b4d81fb0d921352478d17718212b046628a95b9d35cb81abe605bc76d2d1e3f7adac5962ae5eb1ab44fa7787cb2504c865c1855392d9bb7b35fa004e4e886a02abb18b4cf01d7f311b0d3213d01bfc8ccc4880ab661f50b0950fca1c0dd9cb8d2fc27973b6774e6c7a8f2c117fb1924ae2450a90000befd9eded5825af6fec44f3e415cae58695ed9f187c7308be52aafcef9b96de0b08c78167f3c4beb441497c7f8fd5c1f72070901a699e26a71b46a0a5b2f22951d19727ce56303fa12773856405bdc756b57f190747d033e18d97e9e0cd3677e0668f77cc8b3f67c43e84459c74ae38e900288c7e2eae2b03a7432038659aed6dd61a2912e94a9f0b08ad7b360052be679153ed3e0219d7af747e9d72d4d4f1c5a869232e74dc0d9b4997dba3a6d3c5eca2698e99e0243eee69faa703fed45f1e6938e363573456d72cfc4782d838fdabc6a73dae338e416778e7d17dbea9d61a5ac483803c2f12de68769d4ddc136cec15c97854c4c7379fd0dca8a748af4a065dd88fa421ce35f04c91d4ee04a651ea9dbfabde7970190ac6c50b843909fa46fbe0c0673daf2de7247e8af20c756c55036f6fc8f62f8334838ba290ed021f8a6055a7164567cc8b9b6aed18da6d6085e9e55a4c7a9c654779a91de80b5186ffec8f663e9a42bea1ca80a47ac6361e166c860b481b6779ec29a08cc7f99671df63d8c65f2c38fb51a9fff86410d25c31ad2a5697965631ca449b7f5707701fd4126f23c8929d0bb4cf7f0ddb00c18dc4567f22f402b1565a1c8b99b527fff544c244efc8c08f9e36bf86b6c61c65118c70b7a12ffa8514b3fb2eef3edd59d226f3242308ae61b59bdd858d36d8d18a71fb103f908e4b6b65f55692c86d91afbb0747d3cfdef576409d86b888464bdbe3524305f8def6706222ccb7d63cdc234dd88ebcdf9bc6f4cbbbc488b60f44706c89942754e7f6b4ef68b68048ba28e2bce1befaef5b732e0e44ddade8efb0a44bed4e1dcfc9a99ccf8dbad358086b309ef8345b7229e9f7600f60d79d1172a759327aaa15e32f18238c0dc59062267d17da837251d8942892a2b045ef3429a986ce4527942b8823f6a258bca389f0723621cf0447cc4d30306beca7ab6089d9e29d687c36f0800b434da309989821bcc14f2abf63969d57f74ee57680e9b1f285bdbdcfa8da2d9f700e5d5303f9c7749d8c9cf075a390e4825fcbec7e8d9b12324c8e072ae593242c5da3836b8bd3aad76c4abd4dcb85cc7c4396323fb4b305c8b00792b6284907d0f63bf99e1750ff82d67318f23222de8eff713a8cca205e0a0299696b40d0fd5420d72fdfb5674207a4f5e7f08e0ce822505867019a608a870f88487aca4ebbf73cdb575407941e33178b31a3d46df6f6f455680675254f4399c5acc05c1edccc56223abff81f8b60e9ddf5947ee4cb375574e3f41c9c7c90c4d7534e82560245b59a3815f8466840a966afd6d4090f04831a6ed168b72092dc23ed8ae8313133412c27e086a1186a6daf5e760a665827c3e441be808672dd9206d4e6fc9c662603d266045a3d2c2178a1f87c4d7b94d3287be3d51899bdf5300ee1c3985eb2de398dac7f870ba0e2aa96bdebe8b03b779b0d46f5702743ea0422e94e6b445934262066aeb0b7b1ce823509f89136bc6e139b0ff6f95a9a5b28e939f2e2625d6e4caeeb88c20f7519b9c634cc8c389ae6e5617307114e39263695eb620a3c513173ad5c9c32c6befd33bc82122676cb9f07c8429e1d0fa76e370903f91bf543bdb2c1943bb73d9a21be68dcf898c13c0483e7810f16d7683794e6946dae8152daf3577b22b45b4561c9e4bbb89e94a4ab0789c508cb04215394326b7d62cd61d09f3c84afb216b4dfa7b4ac77f6ac76073312c2a19e9dc249aff8cc34b7d0ded362f2574c92d020a47d1028d89e0890e50fc1c6bdd76daa6c400f4d75e201887509476f304c31b5ead2887a465b2bbe852679b3adf11c52937c06fc82fe1a3c63bf8e6a9f3f5141a865340cc315636e4adb7ae9d5d87654dab0e2bbf3b61c57f689ddf6617667a64729c674a5b2aea2e3eb1e907d02f4f3cab22224e7b369e108a18ac29ce3ee5c35514fcf1b37443c12ac361b84053c701d0bd46be17c32c133cfaee5ebd821e77012fb85cdf6b13df3bfb6fa4ea1d74719725cee400005357ad23718a541a0cf902d5571b2980692fb3bd1fd24bdf098ce1158c104e9fc85841582091cfd1784088421ae22052e5cb8028b9c679a2c98a5fe7ba1282e43613bb5513f358006ca5b3f8698cfc9f61fd96de75b2f6de9d3b5bfa0c5d6ce37bb971e7c96a3e9a9e39ed084a48c000308dca090b722266f04415495bf01678aeeb8f1256f9c2bc1713b420ffe2d8cd41e4d62a934ce003512b307c23738340a67d884997f3454ee1c5f9b97d5c97a43c0b41dd676a384a8ce1cec8a7e5ba81b193785a5d3c6b725de6896c7eccfe4b6f8e0fca5937c28921015d3368441b3df001413943c867e7315a7f73ac4442a8eec92732a8e338de75c1f0658ab2919c1dbe736757ec0c0117e80ef6b7cd7f103815cef1524c47a455aeb7326c13f3f8347a0bd80920b10a48a979f3b0357aeb9e877bb9b159e83f475fc1cce17fb0ac27f1e9a6902daaf0eb413a3ec401e2f45a798df4eda3ad9a2b431c9c9430b99f8e1c24b5b78567cea8acb1789491d40fc6f25ca33a5fb243fa221f4a650dcadb761169d6bd0419b9ee4e871943e84f609c3b5f17c1f877d9b70e53a7ff1a31669e73b21c0a1fd8de5368b15ad910a81edaf743ef68495feba0df84b523ba77b632f8702b0414e6a4f897e3e0d5e56b575d064a3ce429d501602df249193b200af63780785091eebfe161abc537d4536692013e98ee0590c2dfb399c19d6fc1c3daf5c4f6b93303e75c4af605b004c0f0ee278d866fd2fc28a8edd860cc0c8be957a7b9e13b6d92fae89d45ecc94beef5d19f0945a657f2ad82328b829699328ff66c184d45da84dc0be1e42a7a4130ddc175a1f9cd592a573047975425c7e80fb0ac02bc7fec6a2fb04b4fb2f3d6e574bd613c82a50bb9404a50b96dc820a6384aacfcba7e664accc944335e5e8fa09929dee307db63fd16da945153a9427a690fc66bb7b84fe83f948320ab3a7104661eeb071206ecc31ee494330c41f6a2b6fd1e1ed952ecda197d4cc2e90ef65cce9cecc4bb0257575bf458db7b65c7bb589f853e5b9cbd3ab6eb1a289e72e481669f983a6c7144a1259eea418b521280a299e39f2cf8464a1172ee5c6f471590992574b57cc07ab58bafc866ca21ddd231244a72d9218ee5de68994c81fdebc6dd3f62c088803f54564f61a8cff7e574b474a4da03b394acb89f1a03a97ad160e9bfd10c9e26e4faa7ee9c2d1f63d21d69e1a1ea8f5f2ea02f4c13399514fd4be091897d36821b5ac9865c1a1b8c7839690339ee521d568979aaba5783ede9294f05c1be3e2f42923f3b5fb2b63a4480a086ff7e7bc8d3681d2d431bdb88094133afc27caeef4be06f874052768592096d30b4588f8d6a6f2f61c369b9180ee8f5591b3491c03f60bc4ec7734c43ba0cd727c28579bf189f99aa58ba0816927b2b6d7beb22c38dba9e5ef8238f7d0339fd3b8783c5dc974f7e44a8e6266ea8d14d5dc75ccb4d37ce3cc312d35230b53a6e9bbe5891dfac7972a13f50b2d91f539a2722576d86b98419c9df68dfe6aaf255eaefd07193f9a2096d457f3bfd9c728f9e1783bfc3de37535befbe4e4104f5c2fff65a6b477f791dc8f7fe773d49f5197de8fd93a1c8910d05318cfa3c278a341696cb707b97dfa5454ff98dca7a379d16e9dfaf042938cef24c3e8c24d730b8d2d1326c416823136212d4144a66471278270a02f883109fed1802604c4118c10d7d3412eef17cd47b727036838be68811636e08091ea11a9402fc5868edbdd52b8187eefea7fdc480ecc4a9da2e1ad4d541247acc3ee1cb80c59524ea49d3c79b99d44847d882f6a2282a2088d3e22aa4ca3d333bbe1371152d368f62deeaa73efa65267404c1e0f359189dc2929c4d1ee06c3e191f0f8f21ab48d65b4cca3eca5e464f42411f3b76deec91024a80b949202d5823d93ef1e7d0ff518a77b0d668a8d194d54d2fab2d4551ac4d9c61edca8bd5e19e4aaf4e2bee1e68a8065e750537345f5bb5564d9be3adb7c7f380534bf69aa524e8dec5d6da203c72c78204f1a8614ae4e41349886503c0e0b493c649776f475752d7458271e5fedeeb42b28ac82252121f66746ca6cf1bb4b927ee532b014ec3cc7ea70f586852008b6044b3236ecce7606dfa7a45a87dcbe215b3fdae68038629eb67ebaf4dcd0e14306bd706a8615197f9e48c9c70d96060544d787023b0b47e2d70f778f1812eef4b254b5d906f8bfce5bdfb75bc706261fa10049cebbca56bc36d4b1e198e0c5b6f76a930a48b7aca20bb20446e70ffd55db62a40eb7526c84a670eb857abfb51711f44877b10196d53f228561eaed2ef82a00e74ed97c3af0f0a44909f8da995f8c185649f4f11453b11283b4f3891452c0c19203164c121e6e86623df35c255e6499e96e747d1315e840a9c8efc01ce3de5826b19540256526263ba0570fb0348b1291eb02683b669867bfda56ba9b46bb4c973d6eeeeab32c974a25bed457fc3363967ce3bd87ed4af974f977f24b11b69640e4c8e00b17ce61a2d571772ad4b032c00bd977930af1bc987d1bd4107845c40d562d5e8969981afa971b56a78745f5391bb10422c8856ec11756d6181eaff436adb632fe16556a89e0198d2093dc7564b700caf6325227ca46c32613a40c3d6da0d5da95068160e1ff9de159600617dd3f461fab4b58c73192031b332b64036ce01b7a7f4f2c816a64068da2c11ef0b1fc191e8e7dd34dae7daef03efd97fde41026203ff5b19462f0e2184ea99a09a100806ed4aaa44774e907e4269e24fa24dd7e3aba04c6c7d0bd23f24845bb60155680099d82cd9fd8e8f1381af06ea20e90358d098d84808222486b705539eafb8ad6a186c2875c8c8ffc2919e8b64b32bfe0494cc1017507dedf6a8ed3e7de6f03c2626095507486b6dcb76e96ca757e66de632c52c82ec9a7f3571502263d1bfae55d6d64d948c8d273c41bb237faf7083d5efcc2a1ded7074857e792de438c0d812e331754998c7cabe66151d67168736545d191ca7b023e185f18beb700ae4e0ac0645f4ac5b622d412046bbdcbb5b7a32677ffc08e7ecd31a3549f2cdcb59b97b146c65efa65103b5c0b8753440961fdaeffb518c26c875e8ad66c406b9166f9f2d74e103e0a77c5ba234275672144a4ee0a2be1f4cf8a94d7f9f6689543ef18b12765b97f1c76d02dbd5c9bfd9fef239c64536e2d01681bc1dca1e5055e93e286a4090bd8f23771205fbf9b02482591795cc0be840fae2a713506fade5e192829f313d3c6c0fed217e8b431b9770b22eb4c673f9005e77e9f02cd83930ffdcc6e0356e2c19d1282458d2b0e264e58b86f19fe9166c3bb97508f3ce7c819bf195b6f4f3cffcf201545f96881a7c6ba51831de8e62045f08466fb74e360abbcbb6a1e795a1ed0665dee1078aee4d374af6d2f639b91f0ed643354201b0f3197d58d6134fdd193594564c31aa545400c2dd4b484555a6c4e0d118da65611e70550f878eb2847b9806fbd80326d57676a2e51985c999048628712949f4c39965cd262da3cfefd8345ed605c27bececa44e1db8ae12d4aabfa4b18204efed3e2d0f83f2f0a92312188085ce3019db98ba2d4df72d058adb0e1d152798a71b5d941b5afcef04b80297258f4e3f773fff9664b0f136876633811e1256d5ef884f4c971859e7027df546beb003d2833c6b2a1f23ad80b633cd31e2031d3d3306a0cb67fe0b05b3ea02421c4deef96a6f911034d014c0028c3cd35e4332fbd29381d6526514b2a96a8a6ef3b967d23b16fb8d362884955a6d56a99d0c472b65eebf45888aeb03ff1d004fd99b9524a6390079d2b11fc88eac83bc48be8e64ad06f5c2e9070c7cd02b39101c2d3cf07848f5b8bae4085adb4620e703f810c85504f67d3bbdd414b10188bee457b7f13b479f9c066f27d2dd11dccccd0ad430ca7c2bf2bf52dd8c405a6e2fcb7024eec63699a0ff0192ff376b9afaca53cfdb5afbb9f62110447942a554e8ff4a844d9c98bda0286a7d54c86bcd62d641ef07ba9b2c158e9fe02d50925d46c03dcd12371e4eefa13b75e0981d59ee59dafff018bba288214140002a8a1b5c935d627233b1e72a22d80c892fe23fc2f91a8f4f104a0b970c0ff68ef0b5a6841fd31b72375d767e9805f27fd2419342b76b5b73c497b5d669a0dff536107fd5cf723e13a0897df95bc8db13ab3b2c854afb0ed8fd73ff31ec719c8bea97bec0b672f5115e18dd5fbc23015f0313c20e4b1a8981cdc39968ecd499d6c8e4dfa114dc081bab0ee0bcd56bda0030a1cc4256080120b0a8abe2b7be1566116795d0fdccfcf1226275cc9c1aa494c65901934aac13fce6e8b16c4c6faedce34897de5a17fe2af702268e2a8407db5801078be52ec7cf9e4e773fb89acfaaf5ab4afefbf297293acecd4a498d55e12a8830414ff45a95c38478c2d20d40c3ac1ee7ed3e80f72c85a6701a57673242d34692dcbae708a8eb057cb326b8adde7a7dfe867e873027d2ba226ff0878d5224f61dac26ae13d93a25adb0bdceaff24c308914d1c4975d0439ebc4998e0dcd9c8fb91c44e7cce21f40e8409e0ccdf3a85bde6afcf01358fa84990892a2dff5b9c3911493c288c7f436b575a1112ac56dbd0a186d0a9f4f51ece9b7996ff16b42e45f843cbce57cb4aa4634cc827a62337482b593f868556eb4031bf149849666a8e5809a0a7885ce8d5ffc61ff347a25471d9fb68c0805bb3de0ad0a6edac5e73011096c65192b55784158a27a225a6aa17253406d360f7aa5a90b93dadcfc9fac82f2a1caf9fc30b147de1fd53d12ac9a0ed221a5edea2407c8648cf08d792ec23ae11026068569da796fb7cd72b8be33c687f072b4c0364cd973d2d591c67c7217fffc1d5f1187bc7a8fd59c8448a7244f0a4660032f8b3fa3adc45d7390e57cb5f3e2db52257ee7085d28900a3bfd12cc930d17948b107f877772670d8e5208e86505e6110bc7dd4166b765eb89c7c86a44ff1a1f0419e1e395f24076cdc5c0aed681101df817de8a894e21ad03e96a5b0e3c45ad027054543be60d7a0a6744fa5ac6d1a34b28ce7da6274204569bfcab30ea453a2f99d7678668b9dbff385dd0b386bb7b163dda7afd39bd6b3838b4fa24eb5988b88be016737c2d6f4b19a7643c4f5cf7f4f7008c219c71ca590eb6e85229c2ba7ed9ef1dccaaa365e9badabd0ca7b1ac07c3a187000fbe39a18901d2368d0250035d9d8169e4b823329c619fd18dab5a7ab806452cf63a6dd155901e4645dcc3c463d41b9d62d902af4cf7dd621dea02588d73f184417a970c5e87583cf020919cd425f0c6c66a135e08de31b5268a5611dd22400aef517de0cb0e711ac0b22f9b770918e35e2cf754c904b2dc45f2b1bbbadefd36ddd17deb4b7be56f20ecc8c0ba120ee36168fd433d217fed578e5d9a84104c5aea37a513ca66d3b3b50a70ba285d92a7f1ee894210b680203a9912bb3c70ffbdfca26300c755776698f42413b089cbb220070b854cf18787c7094ca81526468a441e2560f6c2c8c212c075b51aad14821070e641d9dee88403e7c5845c578c322bbc7fde54301cab43318205090087ffecc901ec020fce86d083bb3a736e9333c630e050ba8ab8c6be5ba054d87b1f6676c34f8573aa589427438e8b896c2c44ab2a33cdf8c02fb618c0e1ba692a7fbfcf600b28d3419e8515717e97bf09214d9348ad81ba345f9ec32802cfb24371887cdf606c0f3254a65fbf6a41f7651f86c98c1989a525e724c17a323feef6c64b79c576c7475ddc6538ce3edfcd6ac82a9851458a51e9601c8786f31a3e781309148d2347e453ac3d0a01e388d9fde710bef74483318eaeee75b7a01476a75bba0c21ebfb71618b68bbda5ea6c76ababa79e985b0c5272f6c1e8b7cd64c4c7eafcaabd9d7fa80c356df1a24cdf6a364eac472ebe55719f11d23ecae7243491b0a130541e43d5855e0d308ba93968752385fb5549247bf3801f76f4d115dc7bbd2f2dd6bd5e3d4e68ed2f2926a4108136526da212bf9e51b2c73a9747e70df01e6113f46b2554dc310a4782107bc4596aa96ab59b4d9a0af0ad8c740d9373f1ad79b65c1a3b0e1b6c5dd18fa5449037c88462700274bc005e01f6c7b9209153c2ff6956c934bea65b53e299433e7a38ca9e09b0a9b50aaa96110a25fd1705bc3e9824f8e3870932512eed58a68965a0c0aa3099bddf6ebacc2f71061617f0f461bae952fe5e9eb5c9edd404653d59ea485cf46fafbf5b4a282ec069c90631b55ec4f8f383b5cdabf75ded7e4bc92752acfd2f2e40cdb72965e73560fa5316f6439e1791c89bebb810650f0f4598e56d1a3888c2e023a8c41e3c2e13a57b98b579259dfb012efa808f24033f5a45e26a07e3ebd2aedee300b525cf4a5f50042547c0ec15e396e056d77a50a7ad4e8bb4c45649ac4b1c098afe4d991623f747f9c01dc1c29752bccef5618c12b2c582bcb35beec39bfbdb2220e7cc86ede403e9d700fd8df15ff4ce823e829eaeb0e7398c32ffcff0f8bcdd2290e3b3304d459e67bcc51e3267b38b2403311fdf79f51ec41f73927ead9595c73e4ab779f3c3fa6a90ea8cfa3da4abc0d7b641deb52ddce8f4620282fb7346d9b8218a6aeabb05b0ec8e56f4e543d31a112fec804ed4909ee8b31f5af09c3d1f10e40b5a0bd74e44e0e86af4c80fbeab8bfa197e9913faa55201048b8fc82e45582c9ae311707657910eb2cb2fd1df9b5eda0842287a22678ef9c6d0b34258eb83cebdc693b718e2ad055ee8c27710a113d3df35c6f2d8e757cf0d6c2b987ccd1abc160ce53803813bc06e5b12a57472295b7fa9a9555989c909b68134244857513bbc93bb760b55efcde4e92b9f86eb361e4ca4a2fb4eb3504ac6ea17279821e8e945b2efd7340bcc24795df7164f2405eb753433de8ce1648df056afa629b80482e3b05c8125f0345b189fc1b7e7715faf735331dc51113f7b5392b738a50d6c45fd2077290cb58244e52e1a1126810e039cddc64815a4716bb6433bbf2fb784f0fb887964031cf851258adf8a317fcf52198ae73b59e5c5d70e30b421b7da96a79f5be177085d21d390f5ceb5ffd559a22c31257e6a03c0265c9304aa59a2da3599cd7c9c4b5e69416f93b310622d0f582908d5af725aa26a7e37aeaa90c1d110471ca32e4faf45c3fb2ab75fddb959954ac50e2dee875edb6790c68660a5c41d5a03926552b03867206ce3340426d95ce1126bd564e3391038ee6fbc1b6ab1ac9264c81033b267a232ecbba8d8b0de3655d22a5896bf3545ebe6f161979be66ed3a5d2ed3d497bb6bd3cb4bbf53ef1cc838d3897d37ab187e63a239e9190c6801de2534e6f48fdb49848927a47b90e0e3aa0dc639da1125d5d90fa7669bd8a4114b6738d9181df1faf4732ef79a85009782ff45fcd15b0496c4b02d88b4435a1bdec41e6313f900e490087235eb1ea2045a12ff9803d6709dbf97872c080751c1180bad87f87f72ecd72f74f3f04c60cca2fc615f8d2d5ccdebc423b942bf42682fc67ed295fb021085d5004eb85864c262abd7b664686f50623c93c4c1874132567e1eba40e630e27f6f581ddcad38c92d56a411ee075dcae35db80fa8a8d19c3ad702d2c0c802063931e5852d561f8e0080c047395289adf620b9791b52b6734d57250934ed326997f966ab2c4bb4d65ad7e88a2d0f483026a2929e6f61becb80bc89e1ddee6d2968ae28b9a8eb59c0508ba38a8bfbcd2267826bf90587bbdca090b7b041224693f6d0166b4c02834681b7bb1b58b8b146b005ca50b8231b07fea37a49ccb1da9ebfd6874cad262359b764097a4fa47f4981eb082ff3cf5e9e78dc17977a9e444b9f232107d07fbfe2ff2cc1a3e369c7e76a5ff0841dbff2ab1e69084a47474922049198389dcf591c0c8ff982e89479a40e4e918af9e92523a39d8cac4376298372c4429ce15604b48c2f222b071b4e16f85c9763c8b15425458ddaf940f02494bda77d0596ae076e5cceb149cddc84f7a5a95fc6cffd59f2a30b77f56917c5d93d3a911ff8552f4f4f7093304fb03d2d9e0c2d8ed5a5963614756c8c95e5ea0e29da8011c44d359571c22506558e746ef081a2c5dd30b751e01fea027df566fd5712468c4ca55599d521d538e1f3d1dd5095797306ee993fc4c3c784a34b73195fb0c0f615f1c4334016490ec2773aa8db9c0cd49e0bc60553296f919142799b3c2b2d2d2ce24891e0f643326b1dc71d7f44e794e61ae500445ec2fba5eea515fea20a8d1845424475e94c40a6c390c8dc05e9fc273d29d5398be4c52d741bee911bbe56f016776697d1012ba6bb4cf0f573c8f5510d31e7ad80aa02eccad95c07acbd11ac139a0007eba1daf0d88a008b614125a2df4083aae16c66e8da11da5b93680abbb59688b37902def63369a56c783b0cf64a6774235e8a71f243eb6a203fef08db2c53ca154867d83053f8254d9c3de11a511b643b0b60e0fc86b136000db158a0092f1bdb460c14619f13ce2ebaf20e67566ab19cfaf1e6c60646387e72bc58dcac7115ba86e25f586f722ded694465f18016021c8081b81322902bab4f3266883c09e606a9778c8b266cafca67f32a1155126b4b7e01b95e4cdd580eae64e23dbaa56d924267584b251daedf72c7a7464c710c88ed4b3ed6889ad3285fcf731a4bc033fbe4c45b9cf03ae396e5d5e6c82124864b6dc49557656946d324973f2048ef496c8028792b629cc7ee0d589f3d12dbe4e77076bc8135065e9a203f58e74a1e30d782995e7bfcffb052dd4ae26d1840fa109ab0166b4c6c52a7101179204aa3da238fa9dd64ae5c8072061df93573f9a24ed1282de21c81cf0baeab10387be4239527b5c16f2c3d94f06257839110d75b06d660b2d76e5ff3032d85fdfd9681b00b1a95abfa16393056cb4b2d94c19ecadec0667b87dc097be57c47039b0e509167278bd432236fe3e6d84ab3bb83b0c28b3caa761944a9c4bc172a029e5b110d4f29818be1ab2c3c1bd951beb6a1cb9ca6f4d7ada70a102ca502eadf6c61b6f3d7609f9da494cd29f489dadfd3e21b76d2dc56bfeb0db76dfded4dea92387275e4a5443ab5c78cddb50320fd999f81fb88b074b55f467495dd412c212d57ab77439e8e208f45b9d26e89ae09d0b91ebf1e994d7c0cafa6539a4379b02bab0131364b38e3f06bf49673cccec26a3a878eb919cc17ee125ef6a98856385fca6b19b7f403b86958ac1256a945f1547b175c76dd081e78d98f3be8f966e96b6a252ac5fcb4224f676b0e2b2a66a1423d00af3152ba500a16135a9739b89824ceec90de82270dc084a5ea041d07a0fe9787221ee64816943379a3f7373a4a97915fb6d2db242a7928607323f3b6639cf8a42e0367b7acd0a44b874f46c0836ff8456a0c923bed7e1cda3ca8fc74c4b6d755b0ddccb8cb0977d453e6ca64fd87fc48a081e79d28db8d8883e120847ecbbc6fcddcd6cb998a8c7d8d96b0fc201d17d507cb23f11f7ee0d05ae26ecd988c2a4ac850e6909a45edd086eb88e57f16effb585fe85f76b15c3308f796f3031973adbf2faee6312b880de7b5d9f723f2bf32e06a1960d68cce846308c4286833d305a6c7e02cb1fef824cfaca2980e30bce10a4ebca4ce525efc6fa7cce86ea89284243b2bb468b626f2ebadc7e25694498e1004490614c38ae03b1a29144974a67d1374e6dc05ec2a8e2306a67c5f0e469753d39854d903fc72ef66af489b485a49a9600464e0dce7d8251cddae59baa8570146a4bd1d37c921ee9643fa16ebf5eac1ac9179cdfef0cd532d325965b67258811117ab2fb1b9b91b6f1cba54b12ddff22f7bf3713dca424b0ea01e87d6c421fb000da18193108e76bbb82883532efffba3bdf6c993032b42bfa7e63f39de9b86f695baa047dd0278afe7e7aba54530ee934ee4b90544b1b346ce5585502c7838aa07e3202536fdc468c8b1ffb319b64290b94c64164aa850fe0afa513ffb42fa1561f08526ec571a6786ab30a463745ac45e811a5630e479dcdef169b423ebe62b59f78fc6817901864f6bd632fc057053f4e1d2b789e15f66f4505bf37e31adf9ecfe9c5566036aacad9209953ba3ba0232655a84f0da62b82969db6c872ec8d47d77c09729e6955b0f29a0a80dedbd3e393b6b750631443a79661f1a08ee3a3442bdec4c2175d5009eb20d7e5afafa8149fb6ea5f7c2cbcddc37e17bcb8af5c0da549fb64c12ee85f16670f517e9aa259219b67ace769ea7a00c3793af4bc42923bf2978aa5d8cc35d370fa55d07b1d14709628fdf6981396408fca1f2974b07629009c2fd04e400e2c9a84bc68cdc00456776c9bde1a816bc8ccd1d48c2915c7845f294239195f6d4467493ef0cb6106a29a1c519f43da4abbec66ea00851a02317473d7d8797badc0959493291dbd9e0e10c9c2efadd99367aa7e542cb8a65dfca24afbb1bcb922a8e7b2a99d35301bf73f34d5c70114bf353dbbc6fcf0f2d0e0c1c9a7b77fe270134a5be19a996f19afa8776a2699b3244c648a364b5c2b22989f0319fbe79d64a307d9ddda67592e7e7074bc38cf1bc1a5b439cfad8dce977a7c9fe4857696008cbbadc291012f2b0bb55c4bd233b014cc983f847cf29f0a671180efbb5a363ca96518b4c464e0162af875edef74943434c9d4743463bfd78c327a4dbe22e71c25f3670543642ea7d0770534b691eccd9ea75ada1f12c5990dddc5fdd8ef7beefcb275507bdab23584ce8bfaca1dd485695a29a75f3a7035febb5a913768ff1d2530071f2456abad554d1da39ece586000d81e1aa5899ffb63f52da6906c3a6e7d2bf54b8e2f44178d2ee3c9493e1087d210eb90777264dfd55042a2b0644aa6685d03e424e9b12903606a29faa3619e4e2975a7fa1c2acd6f2789db9c322d252bf2e70ebc74c14a633c8ce204355b1e02368d825b40a4a61fd64c5fd83adde404beb2185d1da4ee836031fc2d28ffc5ee05384796235aa0ac25c27868cb9df44fde0af06a00d526ea0cebaa41f6bc0c00b165b70ffa1a7ae31bab842f1ad783a6cdfb59b5f677be1e64bd26c70084fdd6c34cd2eba40244f24f41fd07aeabd3af28acef46b4a7b3fcd8d1e1b8194d3f67b94df8f58318f9a9bc3be6322fc68c24e47cb0054f24f3c9d75be92867a83aa518ef1fa7057211c4cdcb675efac8d9d7daf3d33d985ee29601406a0b4aea44963ef4b9c5aad5ad1e050f9fc731220f376702e533a698c95f81dbf64a44e52f846b179a875cc02197018c43d47d7ed18716951108e71798c278642325bb209e27178e143d2c5fc7e6f9e54663cba353ccff49ac3adbf3aa0eda74cec6a3e135f7d44bf507c1b10fdbafa208d047cf3057f72705574479fcbf19d9638dfdf2d70addce64e15b0b705a4d3053b41fea8c3183e9fa892b557d5f2bc0d2d21f60df7537ed92bd8c2f83941176fbd55834df63d10d42b14db9dc535383e92f9f8fa59860f2cea87224e3abd715ffb96bb91d78ab60c6ee8b52442e1be28dfc181c44dfbf6a37085e00822204829a11a871b59a611547a898fd9ae0e8e7e1e6ee5325f55712ea9ef0b665e7a309f83cb88bdd8023680a60c1122d414206d1be9b194275905dbea59adc4b5beeb0e129649aadccc0f40d05f78da1df457aaa76bc6279595646f1078ca1a9eee8649f1d0383209d8d545d823c2ac02111a76cd729a9c8f4f9af61bb1606dc6de4c6c84b69481904636cb4e0b6103b00f2f44081297fe173582e9ffca407a11f4926eedef7cdea57be30a9a659db9dd22033de4b1a7d94131e5f9b1868cbbf0678a116cd4b9fcf9d6333a42eceb10090df9f3f0fdd1c9f27e18c066d441a1c3ade2d6c1b16690cba2d5a05b95c5829daf07463dafa9f9c72aa1a2ec4ba66eedfd8d8a4af153273a6edd612cd0ff80dd39b8ac8cd09a5ad3dd0256853651fc962c51df410977ea06c4df7ebcb4368a02145d78b9de315c06d8a821f708eda0a05fd5b2b6d199ce3491afe298b5672db63882c3b1ee85374b48a57b234f07b932cdfca55ef66632df41cdac80b8b7a891feae533fce9b9f080da248018a884bad6128dc8e558f796e1be8dab7f65e5944a20d3489329ca5508d328d9d9d1affa60c2fe81e08bc006efac3733b6202be06e5475e713a647506086354e10f6c70a8b131e1675a55110172f35ff036db1407b930d6fd895fc37b734c55a3e5e8720ff8e116e21aec7744814b3cc8578537c34bce38d24291977750706e4af35ec65e522e85b7ab63a5e85f04684ecb4770f69acd788d04be24297731668ca052ba3719711609bed9768a98cda10a01139b0d4e97711478a7f4acdc50eee491267412f302ba4a19285736003934ebd72b21e48d1ca7688d5a06ffcc00c3bdcef96eedcce8c626355b1f1e524cf60fefc727917e6b58cf9ed39311e830384ad10ecd87e93058752bc284bed5d0e2e0c5d1a0ec3ee2f7f72d0ba404fdb88960d685f10e884b308ec5d93f52916fefe3b5871ba3d5a81462d389067f112460b21e5c86a80135c95e56a026b8e33c6deceffb0870f75c9d5f90a97c74a05fa7ffb28c0136f261415aebe06ddf99f0c2af4ce1b33605afa945a96b06b07bc6cd0bfac8e18768cfbfef1fa978304ea5f422ed68d676500d043174e3a8bb07849c604367649e4a97464fb8a3061b0177a7bee64ae523c028f5b6212455b248a41bae6aad936e966656e9acd0f992e1a310f1f414fa77d3170f1208e81ee0d9dde0e9c5a4000b8159ffded7b0f6329d687f602cb67a33ce10a646468d0350d5379f4467ea0eab863db2a9a8acfdf96e0f6e452559a00848305b0e3a6c9cbbf6ae0263dbfe33e6d54e6e4df587a6c87d7b272515b09572e8a88ca061b7df1e5f56e20482991c0747a68804f422b33ca2630ebbcfacc6ca1a09c9e5a96c5ade0833b5ee4df857c314a9ec49b8fb2fc35b528bd4fe17a98d672a32cb3e0d20b8725d348c7e1f8792c2ca939c2ec44b8e6fcacf78b5a32e4534b31fb3fb9df43d64c2fe1dd0574ec7a4b0ea954ffea7b569def7df865fb69f8a28c13b5856e3a54792cd5ba32d19cecd62e034ceed9c54544a07c28725ad075af65f93c75a8462a30ae5aa609d1840856bb0f11a866d99785949218a2e5ec706ee1f8b173a71acfd97493d4a7406be04b3095e16a0838122d0cc8733eb6e785840af250453589d1082841dbb14650cc597da0cfe78a5d3db18134f0b4cedbc75467abc62960d01b2b8d3e9441ffa9361fe28ca9ec209021fd3f5e2bad4ed7d1d67ea711fa0e8256e65713af3290ddbe8588604fba14c69c06f6a8819dcb87bf1546470baa82accafc1977df6c0f25503023e53d4238608db2950574b9c8c2726d8f3a16236a2c78761fc4599d35768064e954de6ba25fc88f19460e390c0f3f1007a73e0831295d8ed48841d68ccd3f0657e9fdfe400260f80b4492782620ad512559141107a0ef1c14bfa67e432340a32e09430f0b71e2dcaac1d6c2677e8ab09249b8a1502848d50cd2ec90b5b5b6772897ca2186c7ae7abbe3b089e04fb0167b6f2cb3e02ced5d8594c7b120c432194532facf1149b46020ccf002f31b41a3dfcbc6bb0445d8dede0387895224d7412f7dc9446981b9312402f10a7e63e6103d75b3d79edc2e525d0d4a7565fdbd3a2dec339463dce2d43e5ef0f1f07286ddbcfbab12fe8b690e1738256ab945b7b1bc25490aaa5d4abc0e5e67ad452ca3d20fcb4f1ddc03796b727ddbe06c90f02cbc22029f84682409d405e0f3aa788b304f6f2a6f8d5e2a3bae8ea692544e1bca0260ef2b5cdac7c1338b51ed399ee8ecc46da0625c282bc339037869eeb5086065983480a577b4a0b1bcad08052a7542f8331169ed9d523693ed32ebe99ea6eb53793ef328d2c152050d73b6543c641b437909ac0377f75ad095134c336623aae89729ba2a3e32018cb270c68d24e6021809db6aeee0189278151edcf9f158b40e2402e61fc02456ff6355afd8280cb2346228042e3ed34b1f8642d8d45d786f00552b6ccc8ac1aed3899e4a675da8e126245a6f4c871f67b9430319fa38c6fb895e1844e0f8399185f00bbe534d8ef64cc11069b447c016cd43948cd7ec962c8da04208823339479cc27900979c837433eb411d56100a74501710733be8868c77fd507fcd10e6d2ddd6a24f1080ce610ae07b49b2b3886e3a48c1ed7ef93db51fd59abab788137be959d530d349073bc1d22f76590146b625868e0636be2810fafdfd6065d92bec6eb4992485f8d4673ef1ed95f2ae33e89a326abbd3e8ef6ef2050bb5f629cef6886a96ccaf74cfb1e726664580d1636c513e8cd83eb83ca28414aa46150d385b415f17b698a378fc0c8fae9c2134fba3a4c50efd52d6128295ed0a1fdf927f0af7978a75673ee958bbc4f9c2f7bb9c26e05a8aec90393888e05e898e847e6adc067ab76f696e426c34c72f3cba0afcb49da45f4a195eb27f5271a74bb98e4dc4d19cd1bfbd05f5bc7bdb864bc061a2d2ed9934e134e755d3b8cc17d5fb17549f9332c6594e2d770210722cebe65a040c59cacb1920b18f5f91f82a0addb43ef6721c5556d1931f8a63cfcfbcdbd0a69805f91736f1d01e10d5643ed9e61cd4794caec14c2fef8fe6eb460ecff965d162e132bace38aebb451a54b1e3c3128f370432197e14369f694bf56f5a04e43aba98c627f7d85398a4d2900e10745f54dc7cdbd0e5db9762630b06a6addbc0089b908098e1dd7036d56be62f9b1fa1e4112eed5cb28e0bc5b6804484cefe0a0c3e55ffdd6350031ca2a92be3feb030cd7a5128cce4ca85dfaf6f7a951b53dcbd8d61ad050ec9724d3cded3b25f8800e41308e4f853f74accc82266981975d711c646d722cdf986d85d6dbc8e8916e77c0fd8219c90c512064e792ccc9eee5a69ffaebec1a837c86afc3d285ed9dbc5c7f9ff0af7a79079493f9f232e8eee2245a7455e7e6edfbe64763c3276fe5010ed5d06947a1d3c7f8d59144b6ed4db749b2fc92828b33d273a1e00cc1d999ee2be485676f6ea814f37536e5a3dbbf69446aba119c26c5a58bb343a8345265c55d07c9d78ead5b15724af86d9e933f55cc88e9cc3d85dd0934cbea191dbd18f21e5760223366472c71332387b843178f8a4e5aa05be7025f976dd477261ae368fdbe8cc8290769d5011d59e3f31b32616766c4c3d66e820a3157acaa5bbc8ecbf6810a28640fff0db6229105659389e2b82aee8d3441dd2d50796b2766d3e7b717bc3491d73b06df34180311261bf37c456b6887135c8da2123c61a46b836980bb1e306d72d5b171fe8bb9b6460d0e867f4b92289e833b6092ef273e0ec9292f9731f7819c0144d4ae6fe5a19f3ab00da2777266f03bb6154401445a1ad682e95be137a6ea13a987da1a6108438d83796cc92c14430569c288faf2b46b4b2e3fbcd33a1424d6a24342fe42f1ffd9660dfcc0a4df48548baf312732de75eaf8e90e442daa44c11bae0ed367dad99ad3a4a8874b7c1828ea84052a77b9f436dc31c1a89e5cfc2ddb2413f5929f7cf168bec6714521b7dad9abeef92096b017e88ef241ed4cf6468a85f631115cf9bfdccfb3be173a4242e61822e2f8703b8dc2a83399e0a136a81d7d1e46e2a997be193f68ec2531693b20296934994e61f0208d746c829863b80ab8c80503048491cc9dae02094911fa1f27617569325fde79a428c0c5fb71aaafebea65836c951d27555be8966b98e2cd3d3bcdf7c0ffc75f21dd0fd7588adb17f288f6b98b308307895e9ec3c06e13f86324d3532a298b5b873a8379047f2bf05997bc12a00d2c28f7a8054bf1b1d961a7f4f90b9a1095cc7597e509e5bb1bfad3018057363b343bbf0269f4e56214df761d967fb21bed43b0bffdee94dc26a907e3d7f89aa32b8156893055d50e7863f3e689fc44fac892b89ffd12115cda79dfe9e3b4cbd336dc99b9174b3b90892447a11ce28948f7d53e86afe698746b1580f4c1a11420f3d8f5f331a64634017e6db9812b8d6a4be560cb5314da88f394709d260ff15ef5ca512a4bbc1cb38befb4a5fde1c5bb498cd83e0b5d7d180e4c8ad1378a795d26452626b0f6fc1b50d5eabf9bebd7a96553d70ee600126acccedecc4076931130a674c296697cbba89c4d9f485d65cb361bc71680f3e1d9a31e587a75f01b3b781c6fc97a77ca29e6cfce2baf0e9d013facd5ebe6fa4880fa51cc5e2f9e88ea8dcc7a86860a9aaab53fde5d195d1a167a2d442d538f675ef4098a574e6de46523ee10ac280b14afee395264a5e820bbf1bbab158489f52a8203c2dd7c12f24d7580acac6c9984b0d45a4ab9f4bc8a210a26ed8339ab9757f2cdbdaa36381722005a021e58b2af6297658c17050411a520bb1d61d641b142ed6d758eba978d1c40ca2d7b058848af7a12de45fb1cf233c8762e20a0b1ab0db0e7117207cccc73e047d70404359340b73fd767bb87acf89cfc2784e3b2995955786605695c976e0dbed74109547179af70bd4c49fed00feb5858bcfdd47aa92822a61cc1a7d12c5448205deeec2b94c73a82f3493c614a4ee4efe4b15a97910a18bdf58a8782e85e51ca146675a25cd394ae243e2a620f4d52ee451d1169895764594df2af6b0e132372760c3dd869bdfd54e558eef930694a5a29c513518c0a7ccd2164e6d5403750e28ca01fe16be70fd9c65efcc9ae0fe952c79650ecf9aa7b86a9813ffb3f7938cd731e48e2b6bec570349b1239055d776840a7c80b8b20030cac4359eae65f1e3ece2875896852e63e6bf0272859a80e4019dfe0a1445126a62355ce955a88a02940cf8d9bc6e6325e0ba16b60886cb250e2221c6a66d2d07765798dcc17cbe64a350bb8b4f859a1604cd6d5b8e2ae69914f77ea6e024524fa8c9232f9891dc4473b0bd6bb028a568d4bd82b4259b0684c08b4939f97a983958bbc1e8f57ec6145338825ad99f3057be321fb8679481df57c0051332b37222b7c90271340ab1ccf8668d8ff62357f84669442147e3f42fa8f3dc4f10ac2ecef7cd56d657d3379671fe416c7cbfd7e4af3b5645a56e470f480063306839d8924717141c53a07a1706c567030aad002e4f35bfdecf69d41734affe15f63e2d2333113c3307002dddae233d6ea7514e838a4df98730481aeadae7d6d648f59c12e3299bfc04670c076f88ddc45e4fba7856db90c35308b13b3fc4cc309a8ee115f0d2b4bb2928de4f2938ad72e1421340db8d21b6a93664c0c36a8ef8b5f0fdb20c92921c520947f876c0a0cab24bbee74913952ea5e923c0f7afdc54ad9dbeef60caf27c53c38c45343a2b68e690924568aba4f0b084727461bf7a5f171b69d4f7c5210f6d2bbc9b7a964a740aceb3259f2977fa32da3243eb5b22966d1a8d0dccbbd502739e99ba974c5ed56689a39e93336eeac1ed7694053eb56c4d1d41ffbc8ad75daa14b781c98548a4741160b996f293299bce1add6ab6b342e56b24df39091800c8a1e40848bc3a640aaf349aa7703ef00235d6b5ad319c98e8aa1a69c3d729c210d920e09bc3aa07554c22b2853bcddc454546e119135d33af2c31618cabd0da44c345587bd3c388a50de79d6204db8fc2b6788f3d5c30950cbd2e1f5e0fde55e70dd6042c856487299b74cc9260768d7da0baee80390c2ba045ff899c6fd0adc16058723666a3e344486b26548db78889a89bd46065cc1583203caefb655c0e3dc7bc3665b6d1af20ae26707fad61a934304786cc765d117693bd921801acf2228a7407289f3d732f29713f8545d80173229dfc4e5b1d49469bdfa99db9e56a72068515f2fe421c4acf18e885f7b924b0ff5cede5d428339f0edd96cfc845e703ee513afdfc5e78e9b69ef7953dea5f89a8264535dc8698771e306a1647abd0d3b5bf0ee0219c8364522d753dbf30af3020738572b9c5aa0fea2d44509379fb6f97e1693bd92d0172169f6071c7707eaecbdf5f10ba5606dda90fd36fe06a629e321fc8ffab4552a9aadfcaba83a7426b1b9e9ae633bdf77b651fbdc0c7deae26426a773835a33b07b5e6e3b41264c0024eb2b2eaff17c85a1cf2c3b673a0528aef374e854c5bf66c3c171c5b221f6ca17c0f00049638db6992181af4fc63910a2dedb3211d9a1c2ca7444a7ba30ce7797585a416160fcdd777024ab65cf6dc76d23e6391fb5cb6436f1ba3946622a6a80d0f3722e7b67e1a3db97a08d7781687683ef1b01aca52a152f59b052c5c6de14361dd8e00736428c906b14e9c678fba965cac4e2067f6ec49149f52543e9f03eadf20f01f5bdd298a904bf6b5a490ba9583b7907a0e3dfae1281a9e259b2f299536ed561aac6ef161cfcda3b0c6e8771e203b13e709a06dfd00012863084184e7654a2ccd6f7269b250778a835ce936ddcd6da001778a0487cfd83d3b4b3ca8a97208f92863dcba5ade82a166f8f9cd38dac8e2f797d752c54665153e0675cfce796fdea1e314a3cf3c0590b933325936208ef82791287b13a9c1325b10163dfebcd43a537d2c503c7cf0046bb45888ff923119f57bb60d87bb7924c624dca9a6a007ad56e140716f4bac207d9a86a3637001783d3f427e04d81895acf0a6e5af287e03c87f6cc564a3f6f62058d746b5173c7a74c41e7bf4ca3e909db504e7e0297ed95273ea737930a9d374b1c8848721132e6214a145774c272f4978cb8313412a074008bd662763a9728292e4de947782d2fa07416a048789a3b0ba69307262f9cb7cb35a98a7aaab28fcb813075fb3c28e90d499bf9b4f6f59d639526842fb05e471da8964331b1ecd248ae78c17270e8c89514207b3dfc5d65a98efe3c7d74418b0c15de64e32bdbdfc588591fbba3e9cd7fdee3546e568739e1cf4fc2f79d07f733bb0f32d26535f81b9e53782500c29e4b323d32086f9fe7076ead66014c1916b0b7ed115d58cd1928f414c4e935790134db022f7cb75f8996fd9a937e1853ac90e997cbda500902a8f281ea622a2770707f95471f0a7c34c8ab706652ba5b7c9f8facd1d82ecb42e29649cbcb364b4621527715f0e30914d0b63cbdd2e0da7b54b2ea3eb48efa51888e7a00d3d32b6462f110cdfcc252e1f37285165a82a1916245d2c2320480e76baa28188cd2c80574a1259e57f06843683e94fb76bc6c1765e96bb642679aa634b12b1c8b30fb282d6f4d0410643dbf2d298573b918e59a244244208f67258ae8611873b7d61f8c3c8df5b66db9a389aee92fe2f90d00025e638aad0b8eb119e25524ca2b218e022e3f59d3ec9acaa6e0354cbc343d054fe8fbca1506f4c2ab2320d350eec61ef78fcffa2c0769300023fc509cdd200d74733e8dd1566866aff3bd6ccba49b6bd8546a9d88f7ef948d61f72c4b54bbb07e1886e920ced2b17e902877579f8d8e863cc6df0686ed81688e8ff077cfaa43c41b06eabed0e92630119441a291c52df9fbeca379df4ac8966db2ce14a9c17bd3ea2b729120b098478aa90f5906b141d309623996228bbe490fea2dd3bf0f2b5ad88212725f5689011093b0fd5c8db3febfa88b8ba5d67cb500aa01ad718f6ecd2f1ba51e0316a731b9f36a9428aa90a9380da5fa0054aca7b559bba20d98cd153892cf93154b60211fcb95825afc4a5e3aa77af9915ef57b5c4d83f28405bbe58857d244f847fd3ac3417f352798f8e541dbd0107b298a2a214a9467754b4dff18d879fc8620741200a85b58860c71ee67f589c7949cb32236f6a7b8ae47031ad2aab245b3bf772c03d9deb6bed7aa808dd6f46b6215bf4fb8c4ab966f7c39598ca310cd0e4c2282b2131782e91be346c2b1cf3aa511f015a63ebeef2104c5752b46061c9c8f3a670d0f4af64b4f96718eae65c3bf056d8e65f8cf78779dc2e36972a96e46320f614afc8b684740e99882167f12387f50fe5e3f659dcb7d2987a2e059968d7a4957292ba7862e865f235b3b06669a091f18bb9faf1813d150ee685c36c354addb028f94ae5a38a947b7dda52c10837805eeac1bda0439ce79bf126a458a3f7f77f39cc58f2838ba3862c0c1455d8564ac593bf7f4c2cfcda2ce0b76dbf21c322e69deff36757d16545018023f2cb3f55fd6c16be14d5e3998efcebe7728b2a35f645d388259c5ebb71a583284316f6864103a589451ba6477c801aead688190a7d23063f02de1fdb61ab2a92fe4313de1b1964bf06772a4be424e71fc39ecb0d21d3f968940742b3c0c398f36880f59567fccbeb6d2c5b5c30b6a0cc48c5efd24f7866009b509320bec00efcb0a4bfcf34b1a34d060866db5a8d37a9d7f0bf0fe3e01bfc98be4660a4c20b40feb3e8ed22256f435eb70b62c68a316bbd770c5dff3a9ff7543da36f1ae04d01eccd9d4b42a53943d82a2ce03280946ff6eb3cae247f0bfbc4be83bcf8e40a31adb111f7df7f477f298025450c26aea88dfd57de541847b81f2f2239f778755b8bc8e7c5a455d07d8483218be04b48b10d825dc5d748dc1a7f9aef84e63aace5ae54a42e4f930447c5f43357d1b4e78cad2c8a21ac5f55bba85af3fd17ada5ef04eb4d7140d1230b7850c57b16cac7d624b927dbefda3c23e1108b533a5cfe5fa06c94d311c5f9baada2cbdc5601ef698f703c07a0c0af70c3795d1c879af2cdcfb71960be577eab0f6db22b923a36c0bd3e93fdfc59aeb6c1ed778b9f5c94e672186669d9101d38beade37d8622e6a346bb4fb72a59e6ea582b74cd8f42a919309760066c533182a92d221368c6bf141cba5ba04d7db240cc823a40653569c9454e70cd542ff40a848c054aab679492ae6416417fc7028f57989f782946e9be3efad63a63f34b0eff4646c136cb5a1eaf06524ff33efe9a855ffc456b46bbb55f20b080397dec05b13aa138430f09bbc1355109d49eb3080001927177991ea5a752178097fcacc6ed378bf9d118f6b8bf0d09e82bd56ea5110be57db7b50ffc4d4330efbf9238a6854de4f7317cc35acb65efe8d87656f43c0a488b0d81a37fc7e723acf24c0a7229fd9d252715294fd77f2756e72d67d083541092298ce9d86241dbee484570139b0f27f25ea995649457ef695e478de0db3e1a7b3f0855e0ef696feffff2f1f52810264da3412e520354ddd908035cc4abdeb76865a31cfceb5e28cdf52919f6295fd7b90af86a0c64e053010dea9d088c21dc4725e7b74428340bfa1159f8db90a1b2c6e0000959c5f3b9654f61cd8560f9cc625b9cdf31b9e457f70867b607c65b32d742dcf5bcaf9e838f11f454313dd45153779cfd85ab2b2694bc0ee56fef69188cb88c0a7b17ff35ca90345c632bc7f6412a5d4c5788e3aa55b0e9041a370b8beb489082b8be7fa2102bd65d1cc6f8d5dc4dd3fa02432a60dbe32be6a8261a39ee30d26669b7745c5ba297bb1bbfa3127d34b30b12fea8c98aa3d8e6b0dafd82af5ab3696d60a8e079d3936072ce437e784ff40c1bb3153632e854ef0cb4029a63192061a9597cb53dc17b567c3cfde20f1060805fdbb6180e5942dab6cc9dee2fed43848c4b2589ca42faee4022f54d77244ec98c487f91a09d9defc706e655fb026ff64cbc65ce6c2ef88699e8070526c1f878da508b3f75b7479f8d396e12ccdedf6491162d8a783983eb138e2cc5defce7e09ee81428dcee6200e9a6efbdd5f069854135a07bc98064cbc6e1eb10f3823464a44f406b785cde22e7006962dab34f20160637028570c55e9dfc28384ed83824605027298c8bc0a7bea57d7c596d20094d93bbab09a4daf35fa19f1d7d0f8f2052723b558f818d49376645df4e36941e2ab2271a0cd4563a710437ccfd8d0ff365b3c8ef9ae1e30c7dcb9f4eeb3f63a0c89efc8ad2262014541f4b5d0c9dd09d7ba6267ad78c306099ddddedb65769f9d2a5f5652845841b756fee290a28d510eebb2765d3fb7b55cc9240f6858e51bf084acedcdd8fb3a6e23cf3860b1b3b2422a720511380dde8e56d8bc41119b92ab765ea7f45e98e938b2af712497b22fe0c77f44a1d4805ea5e58d0f3fb5a11f0fae2d30b7be79ce20c640f0bc35402f065887177860be467c0c7cac59a011047c32ef2fddb5adfd67f6941469342bbc472138090612f90913b618e96d5f313ef7bee418c46a3eec48c1440db091d1efa320e2a8dbc9abe30ba4997d45695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e199d355cdcb33428c4d4f76d8f2d93c7ad6358d3bf1c9e10162dd890d6ebf13880add6b43067b443f8b3050a1b8a3b32955c907b46f4b52b2600051a4e8c977c6d2cc48f8fc73169df5bdd980bee258deffb2fb8ecd6693186d400baf128e60256188b6eb783240232d5c524ce56a801ba7d6c43de979f2c147e8d9faf67b187c4d787f3d6814569556cc879f6004390252914a92248672824bdac1579c67892f24d88863722a774e92f996e63bcd8d4be2bfe29ab7440d1016a37f26aef0f1151f6f7d6d6b4e5caa79805e177ab2558d7157e394a56feb4c35ee783f05e74e0882b5b054e621c8d80c268b751e0e935f84540a38a6e337cb88b4333d315b92459b85604315c9eb55fe177e3eff713ddc561f0b824e0a7dc21bfb37bfaf42647e2365bacf7ebaf8a73d337e163b57549d73537f7c5e7cd3cb16c32bf2d3a76ca9d16f85390e239468cc46625034b8a17ee577280b87c995a3fb2475b5a2e77d7b3c183b7ce4f053abcb96d4c18549f4f0b34b3279e62a460540523c2577a78bdbee96d4eabf5a20d7d1c860ec37529b6fee9130c6d261845a633bb5e5e54c8f4c5f5d138fad613a04b1c424b66015c55cbf227b6339adca97127eaf2bd81fdc835f3db730be42c2d14b738ca0e577863dfc9304ee0b8317dbb17bcfe4be4f28b41781a52c5d4f258a25af1fdf3b1aaadf4588f663762417bad5b5ff6d60e3281990a625ffcea68098c83c0143bad5267b58c618deb67834a666241e7d16ba258f1f669504096a34328c9c9cea4291731d9f1fce99cd0947e47d766912553f80a238d1c78305ae21dd2f8eb588c6eeebecac0e8a1c7fd696adc53c53db51d291aa989b64696a5934ebf044a4a0fdb0cce7dc2868fd42b198f3853955a6f078b73a77c26360d4132acd0315920722ceecffd1113af91a98b25ced9f16ac9ae81e59aea71b3aad8a70dcb0bb2c902e4c81afeef99edad2b149d2e9377f487d73171e25d4ed853b633f91ad35e5d85cdf8e0b6800919043c1cf4f67f9a15eb77b0e3118ba1cba206188a6ec3a21eaee922a90df882b15d31e2dcb94311be6e60db4aea17ab775d0e4f633f9f3ea41877c38af1809d338f4974f66a17034d18ccdd3f22471d6d27f9208e57bb9b8d10c8be29adb8cee5f98efac3bfe8f1c3c61afb4fc6393777223f71ecedaf4cbf420e97ede115ad13ee6a1192dc2d06a6f78f50d0907e351196fe820729d7ecaa7bd8ed50fb64c4125880be0ce8db85da7d97f68af33d79d599588954a0b1cf91f618d9ab4e390b2f5b5f2d9e9e17992b547b41f0704f61b424db994f59db8aae825942d50abcb79b0deb44897218061a2c2a8e0879611e7236547c81785fe0e57c1bfc9b009f31d432847243c6b828aadff579ffa5ad8f86e9875e2086bfa8c9431484fb00439a57cef8226145870db99fd08ba6bb9425ee0f59b7b8a76a54364484c6de2bc95ad81ec8b236f7339132dd78f020ac2091dd914466dd5f47c24e36a7d60d14b8a36bb67181e91533ce6105c8f0dff7f8143fc57a132bd5dd307c30ef906e7438e4478a8cd24a807c761567a7e9e4c81df2c073ca96b3621253d1c89230fe4b89ddfb66427259959f439368cda8805c512292b3da83e92814f79f777e4325b252cd0b70867522148de086d2e460b8d568fc68e3070f36ba9d915b96697f7d4ad5dd8a8fc67e1d8b998f9b914a1e58cab0cb69beee8f05617b200e2fce06723390e70076a825016c51572d6711c2c1a7511f16b685e6b35d4ec2c4f4491dcd2f1d0545c33e9ed87e5c74bc1a9b6490cea8fe327118f2a9b2b6333b948685bdb98f0b823b9bfefcc15e16f93aa6f09f2c5fd9ffbec89d4dd140d354d869218eea0239dd986f9edcd262ab914851a07a7a3952f316a0515feac364be4af1a88cc41a9178794d07984da887d831ea497b6905c8cb6ff82149466971f10b229d81678a2d63c4bb201e97c4b62f575408be233716ad6e98452708c57eb17b167a117f29779f6133a3985ab5062cd61c7f608d9befc048dd26dc49ceea4945d5ccc39403a66afad8dd047bdd1eda97dc3fb7d4dde763a7bbb5747d24b3d6f3063fb7e7200516efe8be63695973284a08de78e48c931ae4d934d1dda841a43411ebf1a4ff1ff0d3a37d16fb69d3507819a51802bcb19f3030967c02cf920d8bb1f5976f3bdd07c97ec9934ad5955e7b6a513e7c446ef2dc0cf1865852f69115e6dc08f3b05e1b91bb1ee3c9aa5d2254fef28bd5e93a4bc49bede96e388dd5c5eda67d5712de2bb8fa8ba0d14bf2572a079521ece7d82d11a5a03ffb05a1d400089602ed4914c7235e2173ab5af5b59546a04dc5741bb2b579684974040e39fd685e19814ddf5067a2befe825b9b17d53606ffc922ab853e4315712f840930e67230fd664e24bc93ac6dbe980ced53e823bcd879e963b4148af9adb1caa8c771eb56d31607dba1ff9579ead15eb2da130c87972efb3abde42bbf359897b5085b9a74008b7fb80eb3798943503ccd8d50c761e168825299c28df6527d1063d1afdf5016ac6d5854a977172a589981f584f31bdf69eb6e90000ff98dd71eab5c67f153cbbefee91e33fc892dfa8f94a99cf09f4962997684aae4d007ff7d3c7f357816f2343d6b460bcdaec21644246ee6813fbbed9fc4b3fd07723a914d6c2ed441821d4ab061a04a2c918475da9473872a60e166c7a649b9d6b5bde8bcd3b919bebbee63d8605fb8a97416d84e2657bd61127e5f64c63c554481c726cc5dcff339b0edb3bb75c6c5c2195d71209207b56ad1d10f8c2b6ffbdbff4de11c57ca201e2ecb869c04f773aa69fbc3f4f5b3b29b383b153e37d6023d7e1de6efb7cf28207fd2df5ef642d6984238a8ad702554acea384b13502bb86ed757ea47890d0f283eb7fde958cbc8ffa3a8ca21db17d3f2b9fdf18195db7547cc287d4c1fa19babb9959ebd8abf95e94ba5d45c2f0aa2f94b2bf335db010110f77fe276e8417511babdc61499b84375da33a8ad6997cf861947ca85aa1b12bcfc91fbdf5931dbe2496bd1702a2bbe25fe1468bf574594d5d10ef02cc29111e48cfecf27fddd90196da247c4c1d6f5a6cee476926b6b35a2a93cc3182de35b81a36b17c50031b900575a0164ce19c77d1329b3e73d7e48fcf79d47c49da5a3f0cdcfb7614234b1cb3a9ecb047ea7e1a8b0282b5a313715593900bace431936c0a096f28de150b94d0911dc3df5c8e15370c72d909a258de700abf0bb728efdf58c23b08094f0aa7ddbb182c69ec2da4b516e0c1be59670089b461d5fd5538148bc51a2e1f606709ac325cb97037f57ac7a460243c06c3a0054e0a22b4629e7730fc418c1d2be81f2fc4171ee7a6e7b6b57ffa5486b6642a45b4a6606b1d0808652b63186b851442bd496fbddefca6bbf4fa00cff65a9d1b3f2aebf761c66e05e3131105aac38987a224f561002903f209b4ca4974267c46554cdb61e7c84da842da74a7eced622fa24026e300e518964a94820a8fc82aa7d86f07467fbd41711521498f217e583f5b10a2f48484f3358ef7687ada5dcf3b23ba24af3026a22412538121d15e2169992315d356add041924aa96f9e332cf467b8d03d0c2c7ab381e9c2134a855cccd5fd3c0c7d126cbbc3ba1651506c983b9669829e971faad64af9060bf077e6f6a4282ce53c1428f78582fbe65abba74b46ae1700f63865202012e1be3660cf86b16cc70870ed5a3afab5314e516b1b596996e0831a89e606185eab183710a96ec07425701683ef6a1ecce00c1e4cc1c1a9925d7844ce00c10d7385f0b5af7f13836f80663e3359ca49231053be046bc45b06977dc1467e923c17cb37af63aa00b5d2bd76deb71518f21418a430b633de9119c686f5178c12a6e4b591a5b84c8f13239e661852429abc2837d039b68fd4b5d6266806a0227941b67c16cb70e3ccf8150e21229f027b76e0c9a3606974ed18842362e98511585e4a66f6a948fa6d9e8a835a16681bc60c6f11eece4a208f680fbb71b803c447e47574aaeb197e7cce826e3d4e92d1a81f8053b85053c8017607aaaa5d5f9aee03b93887f5c54f036d6b7eb61ff215e6250eda5bb7a16f8264fe1f693cb86c52d1bf1a68557cba1c0176bbaff614b8e8cc39e71f04b8085d55a337ec56a41d497d70aade25ffd1230700df485db2ebcaf9148e6f597a6797c2d80e7284fcd4c7346720b3b88af8acd115d096ec2a571f36f63f2a8acd17f660787849595bf75a28909f2bbdb4b45a22a3b05f7c2ad86944e73b2fe5355a2b440c4a82b77eb3e0e5216fb04c4e509bc4f5ac0742cca4824b2704794df4ae0592294e49db477eb23d9bceae2f13012fc15faee4f1c9866e782ea1657b4d908c003c268042f28832758722ee363294ece4dac1adb5a4facf73f3e83c748cca9a0da97ddd42cb6b25af4fb036fb040554b7486da3023e0f33e2a9499335d11518be40572a30c539b3c94bb7792a5dd0afaddf9e254b1d2534ca96e2d85e193ae49ab33c557d67f681912662d98896a01587a0eadc43c8d13df168bd4785967cb083f16c78c88b9fd55ed0ca3fbe0bcdb072cf635826fc8a66a395d845358392dd8e5a8d81c72161388ed76a51113b35d47888767b7d8a7da8070438bc35d4c75e69c466973d4e7e01526dee0c4827e6e12215caa242f42041ff0d57b82309a3ffd9df4403a9e0671c6d32cbb188305708b3dab6d5392ee404468ad461d8ad5a7c358773671dc211c759d26a7915a482a698419812c6a07d9aef45decfca8cefa727ea4b322a4c5fed58ea05cc30bcdb641fd1b43851eb049d615c806b0d946ae29c560f54c5dbfd70fa90f8b0c04771d23a110e3e462a34e6a55a1619acac071afbe1f9aec2e86eabc12842db04637ce3e11e0d8dbb1be1accfdf45633a70faec505f368feaf41513185f1f30719107348e5e5cb1dcc8d20fe2b8d2e735c4e60876457543dae339e42f4f25f1753e758b88a75b32b9c3cadb33df26ea21e896c1124670c263fb0c8d0293f44c06259ad29abeecca630b68a736f749bac630deb9fbb1d71ed7be7f56d0674bbfb7ade817b034f1733e853227ebfe091228f850a71f249f738c08ab40bd6acd1f69ee2322ea7e9131f4808f9080407ea1dcf4c70d94e55d1a27b5e4979d89f14fcabf10d6591ff431dfe8a17cb767fa43b264cb5d6fb151b720bb384705b4cad1265d400a3d6d534843aabf6480a201ff414f05191f87739cf2f23bafbd07374870bc871c5d437a27fff3214922f92ff74438dec3c560f6f8251dcddabea30479eb51431ae1632abe9f28bd613008d37f939c8705c78104ff872e7e08e8b7f38660a0ae68593960d6d363ebac5fbdcc2f8098acbd7762346591013a5eb5360bc5f3dcd9b4ecfad62bd3d7c17b53ae7e9606a4b56aabaafa3f844385c364ed85f5beda8a1fdde5f7290a1c2060d8d6bba77f75dcf7568e3593a47459d207f537070f5c107c5d53b71d793a28c46542fbf6d97287b4d0bbef47ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d474dc8b43b03876a2a82897e15fb8477c956e4b18b9fe8453cfa4094837bb5517ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41a7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41ab1156a1c0d0f93c52b3e3e492720dc6682ffb32b275d534428a4f74ce1e2a0d5ff227ddea4b041a8a992d7b8dd0e2a529028418714ac4758e9c7203a96c14abe6e24c9031dd66ff9f13c047c3da673bb27acc341f5b63f557dd7fd78f4402898f77760056e559cec407344e118a2036a4ca3b5f78db0768a3e05afec60367bc986b6794fdaa3da9bdaa60bc8d1f8cb3e8f7ad8e05f86a41338a6bad769199f2cf4a19151429b1899b994833665d81e9b785f770459bdcafb15303ea9edcfae23fe21b3363d3598afe0fd23826999d0af2b0652fbbd1ed82280ccc4e5a6ffbfd440d8b729630d296c9e925184c6b24ed7f2ecc8b32b1941c6b8390dd3f16f471406ecdc7cd6744d8c96ad453d67aece0941ff5ad7fa1aa5d9bf0c144dfeca41e93fece0204248fa2e57a4fe09e0ee1149e4fe66d0edfd1b454127f1c6f310636196ff1826224be70a72a6d0cb922a2726d630372f7f5ca5e2fcb5a790a89f81a372b440b4ed2729f6b038ec457f1d43884aef74b06f129d324f6186514543e269cfeca56802f6fcfe22aff0647c756cde42dcd800eda4aa858c178f6cae8207a1a6ee0d0ef161fc284d75affbe273c9584eb7398cd37e611d7ffb44533684b4768410fc2b1fe9846d9a6cfbbfd2e2b51120387fce92ba1d0816f6bc09eb4a0a13a622b46ab87f917512f3cd25bc34be54b366f605dcf6b9d4545619297ed967a453b06f8177908399d9d6b06c8428574e13806a746ab21c4a75c2bd6d3510d5a7ba149f662557a0e850255de23f785d94e9617f76e21af96a1c8aa7d5b30f613a41f2cbeef9cd06e0ddd61fa8b9620dd37602e26a5614089d4826d6f739e0e43b05ab6e50e8da310596c5db02f727119d0289665d7e4303cae9b8aa7e8cd89e4cc49fca0dc8ed672f2cd9db291672426fe320ddf79ad971e43ee97b51367062810b49ddf0aeca9f297061e37a04714f3a4e27b93444e0e4168faa4b6bfe1a952e7def724a5e803c0f16126c8663fe14b8bf76bd3172839bd1c0afd1163fedf91534bcdbaa43d6d04efe4a8c9baa6acffda4966e72563d6549ae1c12177a0112a6263e800cb1e350691229a77754bcc56e04d5dd064b2770961d426e56f4e269d30cd5ef0a8049d17f81f0817013e55e54efaa044f98168d4e79b4bd2f940379868db80dcda181c7cd855b99a13beaa8aac280bc0dc04d3841a196e2abe55373da28a31735f2d7be51881f1f5763e9c93b1563e0430223df301ec31288437e48f05695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e190a8e093d58ad78199ec654abb363e1196f63118e4218b25e0d085e21d3701d394b8c5cd859bc7fab45107f2411c4d73bbb0045ff4735a0fe4e3cba8427ab58bd4967c9ba9d7327235b9a8ea6f67b6cd32470f11c3ba4e993d4d78be1962a27e0e71be3a051a58fd939c867febbb647773a0306b7767999ad35f4a845e5278d0395e32cb80ce43625650c04adfe72a99511b1debb362fb6860e3d28e40891590e6b0eb2a547ea62daf0b6f55eaa90e0f0493a72f90c995403adea20f06eaed5933b8981e0d759f390a2f076bebbf7e036ad680cd9497bef1b2a6703165ef4cb33e4dc84a602c00695598e6503cda22bca252db0199c5181adc73831c068933578bab672ade25f6f946540676a62b67f591070b80d2626f5406cda46e68ccfaa2a8061dbfb4ad652bbd55d70dcbf877f1c36e866beaa49057c9b21cf463f20871e42149dfa831c8895b0f68e24e8d09138ca82a27583554bf6aad960b801e990d30ae34484c5cf435cbc5c415811094973d17a4331be426f6b653d5cdaca28bddcbb15ac47a9b31970eafaa0e0bc53e2a6362f852a55a880137844f187ff6ede90061eb6d1d2990ddcb4e454d163277f834e6b94f4a028cf725d32dc56dc0920e3d90ead0bf88185be8301d5f664d1c18d740fe2d52c1e2f3dd5b9d784253488caf932ffcbcec4462466853ac900a172b95382b813f3516ada81e691abcff670c0e22c4816f6647fc66627192a60e77eb8f77170eb330ada6de06defa914faa80d5050cc0c4be7f27e5bd76ed09701ec5bd6f26d5df7ae7e18b02d347907b0d3b8895fbb5de7b416f55275e7449f7c781b0ae8e4cb3a61172ca7f84aec1647882621c9212d92692ee00590fe904f5d23da2470773f53df224e881654d3961d647ea79a68a397798466e774f586afbbb0583b5480ca49b141184fdfd2a7f0f98e04b319412890078eac8ff4276e4c11c6b3d1e921a76245a9f1a1fc0d474edb1d270b8a88747065de6e569dc3949835eea547ab23ae5fd2b42b71514d1aadee5019fa170e1ae8459425e005793ad92c956765c2e7cd27d31dab38a3927f6e498ff10983514e2ef9315420a90285e288f23753b396fc4304f199b4d976724c5217d655c67e01d33a9f58399aeb4e78c3444e660442808ad92aa06003606d08da918d80069a373dffdb5e775bebc8a953edebc427590cdbded1fe647150c7386f3b8cde7ec672a73e2e27a04bbf790066aae409799ff68f2b9fd4c78dc9348f83fe35734c484bfe05321960293d2176cb6065ce60be940513efafc819824f7c2a7320d7e20340c21db77028979b07388fdb668d85301149aabe2b96c303e04eb67ae8c314fb50562dae5fb0f9b0cfc68c9e242ef7c543ad10afee8061454ebf76567eedc380ac232fb2112c5e8242b1db581b09784acaea2515bdc6454ffa732fa427e9dd81f7b741bb02a3cdd224163258ff595dc1602b37f87ec978c74dbff498d3082a77bf9189bf2d27c37e10d49d8f3f1fd63711ab64e66e29164051d4b03ceeeae4bf85f86d9b18035f64107cf7a18adb3dca0deda3e3fe88a7540ef674b859e3e7842223a92b2ad723062c9d9393385c6fb4f55cab93ad71e25f8eed60fd384ccd2a26a544f0e84664cb862e1676fe89424ad6f5126569123ec78eaf1a8cede47b08916a60e7599e1b07df6027b9fd7c7c7d50ad176784b9d1c361039c7722358e94b9c9d3f7b9d57571b8b1899c5340d963742ff97c27ce376accd95ffce64dcf9b04a3a28ff7c0259709c395594a8b745a3b8807bea0da30c2b29a69f35c697fb47791be10bad3750fc899a74913292682a59a565a792ea9656e60039edf33bc3a5a17702b8a08549fc05cc2d611da811cac6f6ec1d6c0395a12cbac897e84d91e646cdd591fae7998d40b28de895a141e56f9a4a5c0e1f4ed411379d5bcec9856b83f72b3ecbe992872a130869ff3d568a36528ebee13b22c8977b7a24b450e5936bc627061e6ede3defb0cab2f1bf220c53fd75d50ed23eef79ca17f90d7aee9e5ef9bd906905c0a6553ac149148218e278579681e02e4f50decc5159a56da173783e03c218b05e6cae87fe73f578124db651ec7f4b275da1857493d9c6477e6b6cdc6f93ad75f5187e5a7c07a973a86b25635b7b46733659c562e1a95ea5e2d88021d3ce20f3ee178264a46cc22ad702a7e314804f9be97ecaa0079072021debe60e4016957159137c0ac9fdf2fe1ddc9fd33fc323421167771648a555bc79b18b889a74789732079fa44e04d91dd835b56c5a4b6aeec395923a44c20c81eb62869faff0ced335cbe32b493717af9d80a779f5fc0aaf7dfdaff11c2399ee62d78602c44b15cc96f837fdd896452af2f9262df5936d80dd2910e06bb3d119f285ad4bfdab902ecc9613ed82a680365e98f93f8a8880ff2656dfc98d2122722be875796ade64b574904ad78e422130727ecb5003606fae5787126236d3e153fa9f1622fcbc82a834b9a9aff1db79fe47b73b90eb0a450f752c1e1823bed3611de7c968f4a972c1494de707c9e11ec010adb07ffebf3c3455a7ee3b3df69862fc795d77d916417e4a15d7a5c3f9806afa37373443aa1b5fa0aa8649de283d0427caa00f92116d71afc6354786126556a50a5a9081cae1a47b458ed632bbe190121d625f80ff0a4d87e81a6bb4d0fa4409f30974c325ace8f27c3bfb6b455dadc4a741bc2101c06487e1553455c769068da9f705fad5e6e1a74cc1ede149d53240d936372abc91609ac44b692c3933e47d896f2e35ce23fb46c11b18472caa4f11e23f231be2cac9f60284f823c468633e91a4271c5105e728807ad16144d5cb3490ba4d850010d82c6cde6ab389d8d6ad5a5ecc79f4c8946b7f33f09694a868a7d600a83fc44865ae76de8c5f6eae10f9e29d41fbe75ce967d9e2594411ff1840301427632d4472f104876d8628553b299b43e26a2b49c30a00ebefa8ad7ad9879873f00041288fd4cc67cab2c86557eb86795d12581325cc6327cb60682855e6e7a06dda53909c0b58447f44fc80e1bfeed9b101c02846df956c0198222a8e5dad513fd49e82da7e717dc9be146b448a1c141e83cefbccfea15ad586cb9f15460ef13c41d70b1e3151bdb854436b763c860f87626209c62ccea946fb6dffe0a79a10c37aac09a571ed6a16ab6f25dbf280bd247e366e35fb143b75ab482f35d627631b671eaedebfcdec5944a327bdc99c65df8a750232f6a84cb313de49ede6abcf0f580b04b7e07466c8a2797d572897139b331aa3c283a5a9ce27066d78b52a5d3bbfe31d6f81529e3809c4bf1444320981c6e6c7940296c1ff92fdff759fa8d49442f4758f29d915eb409c5d53f1f3791ec4cb805d7d6e43322ee934c692b3d38f6ef6933f6ab67eb704f6345bec33ee632c5bed545fd7ff8610ffa9caa062c01eaa2b8a2950608259847e5e26f62758606073be9cfc65227af09b51880c8f1b72f5302fbd7b7b8d3fb772b4f5890dda8c80856b8e11862aa0f61997d7830ce851472e34094f7c6a1438fffe91ddfbe1c613464fed7a98e692c4dd4c58281a7a920c6191a37b98fcddc06147a6d8907b2911fe7c37133539e15d1500e82c41b9c8c4646a7ad967226a5507f0efbe956b03e0c39d8eec274af263ba22bb03f5de4b150681ccb30075c90743549588c78ca5b94dbe25d1d0650132114beb58381249b3389b6dc6f73e6ed1058829e500827715545ee2fee937877a5b00fc834cd1921cfa88b0d680c29f72fc0c839045f36166030d920ba610e8f3e112430cea74e061a7299dd929b70e702a4df82434ef6740f28475f25bf97415b5228d82eeaad8f0e889a7a8123287b111937507457d90615cc404e03f9aa6492a9f1a853637c7bd09136a351afd2095ea5c533d7a79e5a1c1075cdd55cb21e941f9d412b6499ec300d79275dcfe0338d231e5f3a0efeeea8a31168ed49e0db463dcaba806996ca78a7e0e1a4fa83249619c63ed1fe9be096c0c234d44146b475dea01cf557d5f4548db7329d00bbdc03fd2f52a34534c0f08e2d9caec0d7886fddc2d84a5682f48a4f252057bc1fc43abf04f73da8e1bff77cc5d0145355bdd81bff82ae193fceef126580b8b871271eb4cdea8d0a8ea333bfce7f3135180d65f33980ee2103d98872841b56ad5ee1f10aa30de0ed70009471f500a5bff81224a9af22cc2d3882be6525e3f013dcd73cb6168f2e54af4dd3e3d21ef96fa0935383947f9689b062d2f4fca6e9fc87d4df55d1b7755d78bea4c38bc5bfefa827cecc5b18b951d932f855791dc3a07078a093e9c109641cda8d5a7952ae7fe54b95adf46d2d3e8322efc6072d057fc5967841deb6746b5eb3dbb78944f652be4d6da704d832b356f1bafcd920b59393668ab50499de9cf4deb2bdb1aab0fd04b253aa6f0ab2817ebaec1b98db9d4e50f555d9249942cf53acd1605e5568394b29f519378fb92fb9cdbbb8b755f0ebb6af8e5757884b568f1bb1ef1a175f89ee9e87d9403c8bc9c42d0c4b9877a843b69d99adba28cee668c99c4ea6cab0774cd76a91e0b80d561dc426f628f94a60a582e17a8d0c53e6fe0367715471efe5bff963edfbff9d23874dc069750a1675ae861ef08e2ebb4dcc27ac79d093c1d5182a8b3f62badde575cdc1caa6931964643e27ac1528ed6663f34640816aee740b758aad8ef98a35e19b526b1fbf8e9ee6473db961a9b9ff7a8743cfda752cbda86df5bcedecab95c2075efbcd1fe15309af34ca0f9029297e131082d0de8147b9d7f2502385498b2c7e58778c1f929a7764066c6800d07ee778e3a13b2ab0239134c311d7e78a8b0ba93b61c72ed20533c4e035fa262c5c8f2693d7c25ed38dae42adb0d3756153c48b523a9d6510d3a42abb8801e612dc6b621b206b362bd0993122634012f480f48ca541a7e5f124bbfee669e71440bfe910859a93ed869a498c54abf4d0249d3c7d011fa273ae93f5c3e21f2ddbf477370a6bfcf9a42aeabfb4834c893483963d698a913e6aebcad26ee643a939e72949f29c692f2a6c102a51085bcb3131a7afb510e3bd8d4d754101c9811b56600c51c51a0dffe12671dab36af5024edbee2d9c9e65f0132d97b701e907fedff9200d1890d4b6809b314827f8a4a9525d2db1fcb00a59f7b5d3651bc6b58db9ac83b9b154410b7544d1e1488e1a9a744be224d66229e4257f917983b936340e3c78cde5c32eab0d9664a36ea649023fb1656a586eca32cc6c7e5f9470db7346451890b524c19c2886b3b220ec7e6bc582b0427554723bad48d53ec0f70acde980a6977b46bb9acd42d96d604ee7358d484ef6fa6dbd9fd37b32ef917db500753c4abd6c42f645c5e70a9627b7b0d8da7134691ab738f2dd098e384414e742cb9728634f5bd44a09b671a2d95459860aae7732064d5de3ccf2eddf725ca4739924d3495a4f603cdc4f8d10193c010e26640b1b3bddfaa81eeb5694d3e3aef600f04c37c1232c31ea82c75fb0eb29b0b7cdf81e1110c6478e347aa5bc689092edc088317409306d96e039c581926ab7d950e1b165e14d5082a12ee480040304f00ae0a711fff0f6cd59698e718d5b5845079192e65a5964825e8a5e889ad621e21f4677115b61c6951fe0107bb39815bf93d35686f930a91985ad75dbf64ee08652844654383755283e8c017f1102e85cf57565ff63b3237dd68d622a84e03e08e0c2aeb40cba0a371b078d93ea5bbe30c3ab193182c72dbdbef4e703282ecef133bd7adc1bd50cba1469ccbb175bbfb817a1a7a6b9e54989361d49a29e0410ac09deac582d8e8d451a5cbf457f1fb190b9b3a9c45d60f7b9824d42cb1a9f92d6185dffa63eec180a42fd5723cae2a61484237afe94025d75dbecf67e7de3cb6ef60a21c138a2885919aecc058d4381f9f2dd853b126ed9df5ca46cc9e9ac4ccca32a7d9b817fbab863b2eb407331f9a058bc2e8bcbd4a23179436ed7f96d6df4e438dacac64f81564fb3805fd8cbf6134d37e2e60375afcf3ba09d276c5f044045f32afff6d86c136ef86d37cee17a68d87c60179b2bad3b4d103c5cda0e1a066d30290cc74b76318233e0a93eb45ae80999ab92a3ea916d87d07e7b25a3fd11efa1237cb723e00d9c3684a6bff2d1a253f7f019f77e198826a19f0d7704108d837c89bfa4f3ba9996a39cbaba1a58e2ec054d8d0c01800f359a62a0475cde3acfd937bbaff9e7b529b1422650675aa78a530e46cff28c6149a8e001431d22a7039c557f9b1dd419aba43aca15609cc69ed349d2f091a9e198c1ef9d4108b244a5750eedd77a93f55eb82e78b4ac2e6dabaae3139eb65be0064f0f057e8944f4091e4bcffb61909b224c1b0c220592d7c429f6c795d8d93c10f0369e1ad18dcfb7668a5fdcf0057d6df2646436306f5a808d795994e58a507387bbd46cfb36bec4e720b2eb9480d9578b0ff0b9dd761de9bc941362a64c919bb4ed6da1408b3b28d9c9f2ce8dba847c60140cae5c7b5cef33eabee5c8edc6f00a88398b352e09cecf54ade881416499a22b8eeca336a7edfa7a9a08f2a7d59cab6c716dccc7a142f5d980fd3b14d12183ac8af79f68905dea2b245e23eb868bc7fc4a32a7618d75bd7ce2a950559f0b00d0265dd55fe58c22daf19a47bba29b5b468c7daafe7659eb4677b2e36ff7e98b8d9bf0ad2553bfca9edd0839b8b3831def12c635e550d179f487f1d79f075f44eb10196214d7a2860affad72e433b9554def64d8080742b4e6d802067c2f02d58cf052691189ab41f8557cec308fab9fe3fc22b0a9308a5b44a6437f467372238254bae169479543daf1902f71436b1d9ed887fece1d6aea35fe1510089052ddbc4773646f9b00a21e89862e80644346ebb44863de1406c61838612ffd78260dcb8fd8cc2f79f9d24c425338d4593dc8ab68d9d4865e61ed3289b9b31f72cea5862073bc7315b733a9a13e2a65ba9f47a93121d6491d18e9bb5882894b6f05b7262471bfe712cc08d04071c24280d7d1607f7bf3f1b6e108fb02e14d84c5743562678ca1045d5e137a8378cf6fe88fe145e3e7ee95359ee31da02506ab15825c8c66e8da5f6208486a55d847735e0d351e374a9f94646916fd132e72e4f994cbd57fa6bd0a3e3ef841cac5fa74ea264b290e6edaac22c7124936feff8752a4dedfa9701c8a5ff43aee9f1d230a30a54634f294b6678932a1b3581ba97241dc2062a7f2f2bcf68063fb3d3d3659bf7c166dfe1da7bf54353247c925578e961b3446175648bfefaa28a715d30be373c8771391c6d82d1ea3030ab5664f0335570478ef801090b14ffaef775198fa006ebef01b5f96097bc95f4f01d74cd69a195ea87f56d0dd6f232c7e00a91dcf0b39b29fe20f74e71613bd37a3696f5fa087e251d9ca590040e42286fd28bf62e7203ac087c9c0bb57e8f5d61320d5a9928b2ec4d5a254e39e5a456ec5c848f564f74ede28c7a3ad285329915a023486569be7f5de6b2bfb470db8505662e2e1c44c46ea81b37ec49bec570271045bbc306ab18e1274939bbe2bbcd2c3b5d5548637cf74aa692cb0f40701297caeab58acdd899a831e3b4f118aacedd22e2c2b498ae910fd8164ba2b8011ced0cc9c9727e7a3b42980aab4ab0c9a6b88d3244668db140e150193f8650c9259b87f0e10c8a1557a72671a3bdfb380ee2a64dcba12e7cd6943cda7b872b94389cfd625561d2702eb64265623690d11916b46c3b00034e0119e71de253402ba95952338243b848d24e04884744d6b24b667ce8e43a944cda1b0f1cdc02c89f2fcb2a60b43c18f7adf3f7b90dc80eec7b8977c0995a4be970d5e08eda7545fd8faee6a601d0ee7b6d3771d04fce7471975ac8049b4ce00c6ceb616cee6713d3d4a321e5532f7d554f5c60746a85f75e786d62aab7dbfce5bdda5925a17c5607f5967eabc23b483f3cf4c721876184e347e21358814c02a1dcf3b0d47a001d4011b22f6feb3362dfe50bd6518cfc10290ba4cd6e907958dfb36a323503e4eb872e913c3e5063a764217365c862a5a77c4663fae4873319523f9882bc437c9c67a15d7c19f0fb45dbf3e216e05d3741193c084a256aec795a680001737546d0b212256e8f89345f96be79179288c56e2b85456489afe2e3228c5b78f60935fc324fe11a1d49e16fbf436c3ba745d001c2c5e8819b64d220bb04192ade9fe0d47989ec78821e084a935c8b49128bb569eb218d207ed7d5e5ce68a17364bd54d793d29db620eb8819d57acfcf17ebc8d7bcb0e4568b9b3249f241de9029849095d7971c74a84d8446969baa9708b1b40af316fd8cd29127b8197ac91ceab6143f3267133f075780864a4f68371793646b526014f1daa8432bc5e937e4ee340625e9ae7640115614189588a04f6f9fdc19ab3a051ef62836b69d0586ea1188c71e42b901d59b1bfc4b30d5fd75cc5b7d8c62f79717b8be58b6daaa876e8fb098a20b26f19cd55e0ce7b90b26886c61e2555ca00379aeb7878dffc49fcac716d65b02f762d0f674f47ddebaccbe5165e2116eba1557825298f8be6e6744435c535912cdc99b17e8c421e8a34519af9e450b8cdf0ce9623501a8b0ead68c381f93d0c3c6cfcfe714f094c061dea84c8c4afe984866055cfcae7ef530fef01a138224a7a52c626889b4961878be12537df05c3145784939531562c1b1977daa8e663126bb2ec2fa87557d14e3fb4100347f80535f9f447db9118f0b7f0e982c718f97dbc604f2ddd3a9f9bd30308f554ac81aaf6f547ebca9cb910ab8dea81019debd497df72f6f4bec5e593be7f7634416937e7fb779f32b857bd5fb66b04c2be1111b2c6fa66c0fc8130fb4372d5972c06ac60d2d878c38043802335a1f77d2319ecbcd902af846e961c13fe8b581ab904a9fd90a470af8c38efe594415f4d7cb4afc772fb04a39f39fe093746355ca9fba436c50a09443142901b7389f37ea048e511a2375233e31b40f41b35d0197637f36bf9f374dde6df785e3caab3a1750b488f9dff841e0578b8c49a4682fd7947470d6cf0724dcf1da9b45e3fbc4a78470f5b85a4de21ff1872ac66d1be26ccab478f95d910f6217fdb5d7d9fe2b7546bb1fa01cf795cf4b0002c91321395c86fa97e3e8912cf45548020eb50a558ae8452c0d02c6ca4a073952d2ef266a14318cf20aed35c5bdcf974f51cf5084bd5e6107318934829f70aeaf8af4d8daed1503e231c787bb0040b75ae8da8a8f61578986fd07dd040db4aace4ea946c441c7e0e53c290996252fdd570de7faaffb767b63a867f026f61c45135f3845b49cac8a7a74c70c455b225b1d7966dc4938579d941e98db6468da91e2c09a41c08afe97ec3f90fdbe0bf8415063dc2102f01ec549daaf80f91e133846d4685e13028308e2074e9711b3adfd51f5752884144c100dad9b76ae43eb362e7326ab333ca296d504cc7cb59e3bf563f670bf793358bab6df78e1484815c85e91bac27c4d21d7b1b2fa478483dc01edbd6fce53eccc1a7f643e3d91b5bc0ec1bc0f2c7a504c20df01b50d3581530c3fca3c989f20ffbdb1ddf500c9092690d5261b706f2c02d4dd9663bc36be25395ab0fa7b9a7ff52034928d71c6a53118febe137e416143b67e6eba111c265420697796d5e15dec5ad0b334bfb4601257546f0a5fa8f3f8818f4eb85afa8ee1c9e912bbe04b95ab8fd4a1d89dcc3fdb4a1da5945641457ad4ce8c38c7a479d7924c59d1adb4b32e7dea0db4e900d02f1301e8e8965fb56c4423dba40c79347b644666020962beb28f35ff23cd9ea3668459ffafc3789626ffbf9293d76574110bc954bcc3ced0c9e998f8f1df4cfa1649e8579e3ce6915330cbb8f2b43627bcba62c1917c45235c815a5385bdbd91fd90a1b17d1fc47649388708c8a2af4b9ae7c69f2874593aeb89495117eb48566e439f11abd2048946f77ae09438dc95cb2d16cd8a0a017c815b708a20d71af486b6493019948b60e298499a3c17913b5353d5a8fc26f5acd488a7d0edf7ce841eada9b038a27ad2368eba0b804a7a020e14b858ca439cb740d9a322274e76102959aacfc5f0ca373d0a233645ec07809976a1295818ea5a01740b67fdd890f8e4ecc06c940d10433b8cf4f1ba210ac55f7156564e5461fb82b10f4508c0ee603d34b55ac671755d1291b94bba529d00124d48d54a9d273ae0da6277a0fbc5e78b6e0ca019d4ae6722abdc06903dda3a9f9b8f3ee706f2a3746c42d2715a8b7581092841dc1c58de9af7cc2de222a140ba958d18cdf778112ba2d2d5d79af162854c1aef2c5c1a39ac47639d734101f0af6c4cfb1592a555acf76b9ed422901cc6cd0df8f1f8a3ef754ab0855d145bbfdc376f6c7084a935b6e191244856b7bec5b316ad06b5d01c63f07c973b75785c74b977836a9d8e9d7176ad5c69953f55dc945dc7820bdeea69f47cb22fc46c684c161d3d36ea0c6942dbc93faf0a64086dc54340005242eaf027015543d54bc13abbbec51f5b47e9f16db40332bd39fb0f4dc2b079b8dd17a687993a37fe5e8f15fa81bdc714a9af80ddef99f65577c629c07f5887febfee652b991457e4dc0036fb195d2e53b6ba4cd503bd282384820731e28feaa93ee534bd4039ec32a26f15a974613b7fd70137f80d4a7e56b8bdfa5992a003a1c7ab0bf45a44dbaff9a1a61e99e9f0f65954ac38f840f4233a0baa4243f167d9bac54b6889132576ff2ab9fa39f2cecb68be571c363b6d46842b1920e59add1c740d0563bfc0c0744a6f2095f6d24d95e5ce447a460866524a8ab807505e8aaf95db01875a2291577137a0f594c9dda584af765016336e254c3560d854c80b7410adf120b34389aaeda9a504c7654786724cb1b2cc27677ab93c7f59ac649af1834cceb60ea81033ab43c11dae692d9631b5ccee4de86a35f8b9a9fcbc5ee4448c86e5b4a8935ffd19ea61243c2b48a61cdb1072d05603bde44788ae2200811131800edaa55e749f24f13ecb3a3962b429fcb8ae9fdb60adc0cb3c4ecb746ec6479c1ba99d616a0ddeedac876dead2c584101353f312b0d8ea10f0b6b37d07f1090cc30d4bdf5e2e36679923e6df087db05a7964ae7b21a55774933148003e799460fd70caab324a61f3b674ee43a55a9b9077f193d8e2b688f6ea938230c4d9ca3470f6a87351dd422005d76e72800dbbde607e4ccfdec5947546b8cf1310c8553980ba74924d6f87750299dd56c6785ec8da8f326a28ede3265523892488830aeb390d66f50b1d15f59000505ce9d30c36f2ab15a11314c3a9a9efc6b267ccd44075e7862037b09b2acbc6650fa4a815f34413544bd9789faaae0ee5eb80ed9ed6bc8f35d70ef85461262217352bded33ead7bad622762ef040058e2160c425c705eb1e97c9b6b048a3805ddb06987abe5fc7a5f5ad2272063d3db696012578a5916ef8380ea9350c5da7b61e340a65ada32524fcd9d684b7215cf8636106adca8114900b89254c8ac0b1745b3a144bee4e85157a6174129f6cf96c1bfcd4078826517010488738a7073b789a8a8d5e11c0aabe659f62f727d4a5d306f4a4172f45ad2791c09e50954da9eb9a01017e5b6c849d6035ec15607c84d38d66cc959c48b6b95992018fd2e1301fd076b17018c8f0daea4eefad1f3ebdbb2cee73667162316f62f4db2d00191b148fb81689616975e4085e37dff7dda2563f126620a60bcf0bbff00cfb9246763b322305966d948ca47bc8d2e2e81dea91d6d15af9550fbb972490c4dae700114314b4dfd7bba4eaaaa45031cc51b64c85997b07d5210f060b36b10e57ff97e37d63a439405bc0075498f78599da012a97de8a4d1c73d694d77c28c0f8751e7d223eec86ed50f50ad17a979192074d69e2f994b187d8c9853db0b8ee7416f98e45fe88d2303b354a656bedbc8646273357e7b33f199b62ac57899d565442046c255b596912a6686b21d242aaaa858bdbb197b8d176ec60694465b23994423fb29f94af331a5623c3c444d15643706e3bd0085cb8811cb5dca79434a17022b1a61aca2b27da0d20a64a1daeefe121e6c001e7b3bb388c73a5bc82e5f931aa89529d620ad3573b264e07dfb733cc7dd6a09c239cdf49d1120a3de1ca570fa9bfb8760f266e992a8211e27cdf3b32e1afbe6c4090d5913fe71ad51230104ee096f5080dec112a32287459c23f3b5257885488b3300d051a4640db217c08d8665f1b4adeaf3e11b82563a2257c6cfa694e96c71d6e70abe3b2b08cd886377760f24ec4b8c0daeb4c5905e14fdfa9ad37a9a46742029065bbd260ee23d37901269e13f80f1e5f390fb4bee6bb458af6d9761b9e6da0f8f66fb0364ab55791618faab639de2b09ef4d13420b0f7037f778f33e3d49b94a91883eb1c73bee6518e155f2343a902ac0c7b3d927bc461356ea383d35a835bba7779eee70b6ec977c7de5b48f974c655c85193ebd70e0ab69c033e5d100687f7334dd2ce2513a7c6a3b58b1d4e0a1a7a2714ef8b586337fe7a72f111b41d861487fe9fb14e1b418514b2a85d293c4ae8f36f75b22d7747b6130933d7b26db09753150803e3fb2613f58174127ff1a3c01bb5755c408c1f1405bf98a20969c0b185048c5487dc6a8a509e3481a5322e2c064a74b823044be76914033ca575e38d903417f39a500fe272c4566445b1cf72d8349e1a02764d4d1a0967ec5b00f38f03275762a3f1b93709876c0e4c597c173524f570582d1f6bfb9cca359aa95126594006992b0ca8ff02ab618db5437574299e91f2b002ed249753db1b0dd7bc6f23a3f6211f88b882bf7a938f322a444b91935eb6e957ee7f3aaad5bc6cab0e8deefd9410f6ecdaaf4385ac03325a4366406948143b459eb8d54f9f645b3b7b39a5ce677bd31032f1e02dfc71fef6d5d4bbb3701b8792114c5dfececa0c4844cda76bf06dabbc85509c37447799015851eac70edc3585682e635c0d0ad1f04ae79f6ab0202da6bf09dff99bf9c19af6bad7edc18d6ebcb30a880b7c22b7280e0a0e12727d267292b7f7d04448ca206aa64d4718bb873536d8f3636c9ed9003082ea1241446874be145b7e9dee50f015ae5f9acc76eaa34c7887b67e7e83b4f780663748daec46284980deb84afcd18199105b55cb9eb71c038c79f4eb27b71d880c0e73e07601d836947338667ed1fd2760fb12b5dc41acca3313a9b4aed4e404f118fd29f804fdffb7710f33bbee90b32179be5ded98d11e827c9f267c1ffe04759c98e13145ed3eaaa7408be4340dedb9bc18d06e3e779f24e5cf1f26fbb6c73ea582c8833f582ec82d3c38789f79a9604e966d31d6eca67e87845d142ec8c4ee2cc480c5a20a003f0c8290d6ea232ae06e9cd732b4522614071ae1e6c694591a1c21b2ecc3e1e45c443d3372818600cb11602ab47587c7682536e7e83ae3291cd34eaafca854f1c62cb71176d0a9bcc66df4e465a0be2b513ba958fa175de48441cb625ead171c2262e5ea8d32b36f1bb1e5b5b208bd08a4bead1dd14aeaf3f4b049837394418a1da41033df0547ecdaad1715482e02fff7c75aaa8d6ce2a3866ef2087ecf9abf8255d20a362b1905f624a3e2ef7a5a2b9810f7fb8e427720673a6fad7ce92e83a5a33fd31b8d8766ef06a974218fb6ba3938a226f858d786e79b767ee419f90d1d9f70d154d4b8717fbfa0494eef53c1a616ab64b9921ff4f2c0658b5498cbe703ac6262fcd05a08fd9c07f1919f714dcecde213e4ae2e7df2fee6dd0cf673f2c97e75e160627231ff8b0c415fc05d91246b6f39a82f9eb508e1683e6167a6c58fd65716f77d29f6c01ad85bb9a692f1ef4af6848e585118f673fa1de6544af3b4821dc74cb2dfa164253e28f98b1b763517fab6306a9fa614aafd30281a117a7a73fa47b95ef381bd5180db2805daecb297524128eb15cc66fe1d18a1a7c6edb14d4da6c81f91c040d3a6457d83a10f820d7f844b6f4a2eee69f3fcb24712d768e5b2ed4602f8d3fb6cc6383bfc8e87edc0d70c6598a0ba1aa7060608dbab4c5aecf83e2a4de57489dd98e6bf1feef7811c81dc166dbdf061b4b690fd32a9df3885b93fa5ce8cb7b8a6614fc22ab2de78564da55ae904eeecfb0a13beae680cd89f42b0c08a39b31f383efbf8138b2ced0276249c9ec38d45d211b88d9fbacd95a1f0af9b9fa1b4c11051889956e1e7ffddc98e280eff553e2d4ec813375dcbe7eb7c19ca03676c2d02dd86e0774fbfe4c01bdd29da9034e422dc0761c91215bf4793d98d76e8bc027d2d9e13c31e0b129fc06dcdd6d49ef659397fed958616bfcfe224c559df84568a92a80ec163a59e1108ec1b3dd03224d9857de955e42dca534d551311f8ff106c48a7eea9e165fadba7295509c83ee1487b52ebaa2fef89047da55e923e13abdf34a48859e2309881ed16ebdc093fc39a7985dea922b915929b5492135be978394c307a7615432a0afd9eb6639f9a300917964f0308c01d311ba39ab380c308ce0b141153221398440bcfcd2aa040dd76aae7cd630b11636b92ce51ed346c84533375b41bbc6a762947cf162353972a8a9254eb12eb23b45e939839f62b3f4980d9061ee2f80bfb9edc897d4575f9863245b459ca28a3caf07a2b165865a17c8f4bfd55053e68733bcce7a3369dcc0093dd3cafd329d99dd4e945c55f094a7034998600de2aaff26d12cc1452004696bb2b2f259fad1794c13dcda6c9dd311df018a69eb85bdc6e278543564da3952ce86a3e8905fecefc33ca5494957b7cdcacd7f220f80dea30c07ed01442ffbb809230ec17c591064f7847f44ad38c8c80a2facf18e3928324771a153572b35ba689aa5ebd7a0c24190310938130e76d29f4ec338679a7f115a9310081f3b648e965df3239704c639d030c6f3dbe17465d50a43786a492eb3f7d6bc8a5578d0fd5346bfa1423fe06c6b68c8c70197be1d06557e4eecca20576878031b5b15df716fa02bae3e9f46905d7a0eb05b000cb3a87a4de8f4df8d636db5a100e5e36d303b78dabcadeeca9fd70124237caa0d5389dd61edf03122a993808aff817c0b91b827b4b6086ac012597b64b37c4f76688fe977db2e494721df9e6eba765ca4d0c11edea74490cf12e81b68688d0ac2a0e9ef03e2a336c33f1e8873dfd73635e4c4a3c88a249b003e7b28251858dc2e61db414ba708419818ab18ab64085805e9886accf8f973e65786c9846f4df49d23b7fabfc144ab6b755083af52ae77e10ee31f806df82ffd86b064bc6ec7c6bf835c4d50092d45a7779660691a2e76c8015fe2aa1813162c8661f48c7e68ceb92d51855cf82ee401ac01d2317280baf3b2d392d9689de6c7b0f04f4685fedf27ad3e2c387f63022653080fbcf686898865f588291c132cdc284232d4b0c63a434260f7d873291d33fcdcd5ab29c200739843c287bfa263172235292aca28e7c9a880235de8ae30084a1cf82199bf7918acf23bb7c6bd432d9ec2155fe65c30cb03e5e5270ba2c7fc9c1cd4ee42cf030946c47065eb3a6dca9fd00b8b2ab3272b76b9c584b03d5cee245317a524d90209914986d56bcfab3e261093353da07e733a5dda58bd2478c1e3a28f33cb769c2c8073efc7d7fc0ad8a24a615fbc57d50c0e30d969976e9d527498f18bd248bb6049ad52f6cb8b69d4e505422c0f774c8b724188b61dda98d1cfbb0852f053049b9ed6d17d808771905161c7e5033c40dd7e3f8f93e6cffa33435ce358f9e8c7a314f638320021bf6317f602ed833ff58730c03b6c9c4ef22c342a82ad8ccf5a6d75377ba68c7c77e20c4f1fe54a90ddc1b4d3a49dcdfb7696979e831078157aae2d7b6224150cbcf954087569ecf5e81a1c739c3ba8be12864dd1eda3328a1877186c115f62376d980078a28b1dc2bb2d88f93da03045a70352769f55d9b003962fc7078677fe25aa60f744a728d05d51c954dfd77dba1d387bec0097cff365754fe20f1cfdbfd928a4fbf01caac06679585fc3a425f0ee9390a9009efe99a77ccbb35580f2a347459fe72f0a9baf5aa5549a2fb2758f1fe4b59ae4e563c7f67227500099148773187d14dd060e5cd912ed37dddc845cbe63eeda1c81cd2a8d50044ede5fff7a1164fd6fc6b93c4835321c24bdaab2eaa49fd836d84dddb8121cb3b10dd517d8aa02dcc9604bbd425c82146453064e9e1df75dff117ae7c4f16eff82b19653e52ccfe82419a785d53f509d38031bc58bbae39a232fc998dac1960ee5a60385009f0e9dec77e2d5a7d4c81435b73df6ffd89313f94846b7e2ff2fa0aee70e4cc489fd6a100b556903ae4e11e02d78f3c9d31f84e041d06435360404c956e91c55920454c87193959c2542d92b3053fb62fe0cc486deffd96c5d86e69940fc75f7bbe67324d149050bda7383b3a71b9e730496f2d80752f6c6fdd3d23df49173a6aea85f9502adab70b92b8d65de1c3d65f9483063ba519263a4a94a24b2d801208644a19edabd3c0810981a94b16822726496f13af129b9a6db27ce9daab5281786bc91f12547d1ccd4c2d99c80e4363bd692c4a1a527c0604e25d4ab5d1333b70be7879ed4daa89199cd059bfe386c9d518640090d343a657ba54ca6e8060eabcc3ed226d01d1367f81537ff3408175c2f6a95a69dd6b6a918300100b86992d0c87cd09ad270e4daca95b337b6134d3984b966b289125550da9e66c5790055f0e2e61e049a60ae1da1087a199d9e90c04dd7848136b4c97d9cb2e3fa473837ca555f34b128b452ad7e19a7dff3080489ffe466cc0be474d9cc6f4573af5d734f722831a4b061b5f30a3ea72be95beb50a3a455843d94d5bc80ee358a140b450d0229579dafa33674d6904618a67e0f8ec49836e70bd45d0ee332f61105b43991d0ead63a3da570feaa79e71bd69b9f53bcc87fe31351a6a7eb7986c0a72b03d72bc0ee22bf1c7d55c056379055951b58684ca87fd6ba7e2133d24ec6839cfa86a139ebb42f5aa52de1b4be78e7410112e5a378052c76a84ace8a0ba40fcbe90f06fe0d081bb83883ddf6f45d48b8811c2fb8e7aeb6d7dffb36f2fd85389e6e195bf5c5858561e53832d3aa7e46f5d041c9ef843ba48f3f76367c0ea6d1aa37a92f7bb968a53eeb6cb9f28d8195012c878fa7a7eb4a1f0d1e9d53bc65bc26fc35447f53469be541333dd6fc611b26e1f7dcf1ac9711060abfded12f1fdc4901577576472e48fc244f2f2c1f25bdf00e92cd80df18e01627996e6b23b1b776b50a1b4f1b2dd4e4124377c34385269fa2f3082711f8b0c8dbf60f95165c6ecaa63318adeb30acc00e20c7fd889f70fef093ad288db7f59201779d415146710bd19589a5838c4cbe6bd535c01e03115957208932a472428b5e5944503ef8e416b4112c93154d85a2958935af3578cf953db67cb582df73a6940547afb9b693b810555bc7d38629ba941252fb8217086a94e28cf55fcdfdc8351c22ba71bfbba18da3a9f20cdde148a8fef358848bde19b383c8ca6ebf1e4061186a48333035d880b53da40fc2f3eae96a599ec0681376dbcd1efd7307d85ce218b1108f0f531c86d1d62b28f4bc0561dd3ebc8654d5b28ad56192a59d5550e0f29ee95ad6dae6987d0276c242fd0aa2c144b84240d3e40e8170db3dd458dab022f89c06a57e90073061946ca3e659696ce1066ef46613b550a5a9300f4085647c8e97f99f53f635a866ad0025c3dcb4edb9a9f51d15e454c57243df3c55478ff3b3e464ad31bcd693ac72845063c8701f7ec4bd528219f93d2db15d883d12a06c237722840bf630b88d82139e2a3765749baa91231d199f95c78a60927992170dab48575dc3fffaaf4e7d191dacd421cb34b84d264a5cf0182790fcf5c5f531252b6cd8d341a0373dd016db058e893d452fd3552d55e22569108e83cf3aafae1975736f3d1f938566d80f3d4089ce655aaa87ceabd5574259668d39a0bf71a238675c5b3884d57929c3e932f8f4e21e3a52aacdffc32740ef2ad0a332b0dbb7196cdbc4b807899ca1b52249451ac5f419199f0401dff4d31ae214820a352a5c9e0e42f1b83bd71c09cf6b05d7d19e28900cc656dc720f85437e9e429c83b8ba05824e5dca22d37f4e263fe0d44f603f61af56ce746e4f8fac80c9119608152ce74bb38580b893ffdc7b2bb45a6f455091fb401e9229fae4acc1f0ce8b910262f088e7d6320aa7e4334705feddb22f01069bcc20918020f6b67b6d59beddd2a4edcefba908afb616ef90b4bd9f211e4722e0623d09e5136fe33c570a8f127b41fd814cca4dc05ec643d84365dac3688bb5556c303604816fcc956ffd2813cf7f19088726cdf396f5d68abc7d9bf4b4556bcb3eae268bd4617cbdeb26c2eaa426836614706f112308174931ed7b26eb68678064a0167472c4bc653a21cc38bbc4ec295110c19441fce6b5578e0865da9d0abbdc8819b81d364e1a165cef69aa1adc20dc0dcbe32aab559c1da3dffe433028fc2847945ada39d7e37bf4d8ae61d55352235d239881fb257457e0968c018e7d72be80d874911d4075a0bfe94ed9dcba4d99ae1331a4d101c3b44cb778e075223e42682a84f577d4039dd82227f9d7f1aa71bb1982205a5c0c0ab904d8c3e2eed1d4b5e850f3b632ea35eb2dfd8fdfa92727123f5df8e3e11ac557243997d9713fe060ac4ab4f1c91e10698c514d1b3a56e8e7c6fd5c8d47bf0026125ddf2127f216832badd4a0f0fbb3af166e64cee37bff51ea712702ef9db844d6aacc6f939c68db58b5e16fc4aee193a7886f2a5a994634ea0b409ee05974be4be5dda5ecc74f8541ff46d3c9763028c0617b6def6dec9e5bfcf75c7610dab9cac20c7c012d5907b049babb090a6e81d5c9690c71d3a4e8cbadb98cf8d1e32701f23bd256b1ef8e3d5b976da74faee4c0b47698b56e5689cffa430b94b89989c37fd9366dc9375d69962fd6824d88b3c3e556d54eef2a0ca3f4c8e7846c940c7500a624d7264ee6612f08bb2b2fef2fbc41b6d8f68c151ed03809335fc0182840b454f97f310f2d87a01ebc76adf181aaf0957700270d02ac4876836cbcb4fa062ed4b863dcc8d1ae5d6788b30af2a1d92b75fdd2e3c421594826fe5071e3c6e782d0bd8d11e5280170c5af26f6fa3401514533fc671d41faec85801a54b9e97e974d0691aeafc52348744c12e98cba849959b640561be19a1d695406442fda8e2fde7ae8cacc67280e7ee104b50eab01cabe16fd4c5d6bcd3271c5852d6ccac6e6043c66cf42d00a5b38bb44101b6de6702827f89d98ec55a419e3ffb936f8aa8be5cda143363497557c77d76144af157a5b074a3e67278eb8449418fdd78eee622b2a52fe006d47b07583f9f7c04355cd28b23b609728f977c80b0ff1503dff4e6416f3fd206704f3463a899f2e8a439948102760083fa0521c842a8591e3fc275e1a04d4d959b0060052128a39c9852bfe7e38baa4e8c778d1e0683c78aeb3f3efbc1640be6739d999faeceff70f545bdfa3920542085c55aff88ad7e92eb74fa63980023b40df7ae77dbc47ed712a7d18790240c81e153d214b78cf799a9d76ec67c43eb8e2fcf6598995c76de15a9d97f87eb510a552d03bf51476a2164c51fa9a7532c92aea11415de6dc4a126b2a362cf9f16ef60ce60e31088c3bd2efe48ae94c9f04b697c9c7e193368f354ac7f6b326bae08d85e8d3bcb9c125071a6a096b5cf159997f930d53dabc49ac5b189835499128cfacd9ad0bb89bcd33ebf6f6b6519bf9c2cc5d0511b6ef72ac35bd0959a5ca0143a250f3efc87ddd3e975c2d190b2f9ba194679f14eb9c16d5fa1070dd3b39e85a7bfb1125c41d834e9b276dda74e972951cc7d73312c6b32597d582729de020aafdc134dd4b153612a8848a19b4a759c56d798f5d60d4528cc12b6b6ce1799623b0e9cc51a34e4c79633af718b77fb037ae54b14d20959d7e4f7109b8c63e2d6278b39aae8d57353b3518522537a7e6ce2e5ce929dd7970441c37d8eaec739fbbc187b948feb2e0769cfc34644cf8f5602b17750ddbdd49236b0daf9b241623c246dba15ab9add8408e4c39df5d7acecdacb73bbcc777cf0dbe0140d94bc2becc1dee18281003cc6ce48ae8f4f66e64d2159ca58ca429d206449e53c76466f29f62cf16d119821df45ea0ac2f8d3c40af67cb1c8ca86786b2fc0e28a5b9f5d679762195121e536f4cddc2d7fe5e11223c5125787a92a24cfc7162f94f25b2f5f82bee90f17eadbc30e1d33b55644e4792342cd6eaf0ab5596dbe2f52c7ea7daba68af3ddd7abba1ae34c8ba83b166c201960d90f4fef9bea865d2ccf6452f95aaa34b0ec1ab576d074a638d45f0581d4a96be6045a1ef135a656a74f9b1798239904476507766a7212a243316a76f2df89b9ac8b7df4a68f0232dac3b38238b2715ffdacad0bb028a42588357e3fae10fe5b1541579ee42df588b38de71333264b81e24e387e1ce18afddc00ecfd8720ee145a48c61130c224300c8d2f0361b19bc541eb4e8896f7278f666083ae589456c9efa3b55b964f53c43e91a1a5d5e73887dd6fc4af066e5b5f65effe7d94d4ef607351e64e1f0e42099f1f51c425b4ad0e2d85c0adbb21cb1752ba73395743e9dbeee99f68aaf601435997e4aaef20a29693d942a1ef0dfb709c685a4993b2b0335a52ec81af2855da49e0c6e639ce5b8801526fcffd800926c08029fc0fab8a0dc501e673c6f11d58b4e47c3eb79c4e4196881866674b66c8c5bc98fd21b2629db6334c25d55d716c532ce61c9f6bc7c87a2c70fe70bdeb49d8446ca02b28f5a381e6ce1c9aae3c2d8f994fc3613c83a5e9a6414705782dd3b5fa58c39f774649436713c4fdb938dfd03ddc541c00bdeb460a0c7d15afbfa61297f37d5b60cb13da92f778d177344e34151293cbea26ae4b589a8e549382359eeaad44cb1f817b8e2c659d1fb2be40179a417d923568b63f6d41c3459db592e99b29a2c825ed4cb395d7e81388dd2eb14b8f2afb9d2889655ab4b9b1fc4625be4c17403699039f475fd5326665dd6fa5dd438cd3cce8ee6b128a4add69d0563b8d8f4af0b0a0ec34294a2a9b47915cd21b04e2229fa1f3f0c72168370ddfeb1a7c817c7762598ecf02b3a4745bdfa02c2e278ea63df9766f0547ced7615cb321b54875ebab601235a285bbcef55ba634f7aab4e0b71dcc60d8281680b85b5d19871b064267308f1121df62c57e995967851db78fae3adf806ff65ab9b3e372420d7f18bd310278cc79610272edfedb68bfdd6ffb54b3db1ec06996a2c70408225bf59a455e6c33feb24664957b20be8641a6ee420eb9e2a1a5a6e3cb0eb9d9e7180cedd67740a081523367930d48b902a0624395328476178475475b78b78355cc25b4aec2cd49be14420eacdbabc5a38795fee1cc95d2529e167dc256cf6fb488d7139547487c58ebe08c2bae2e0dbcd7558c4b062b45c1251e30fe437eba1a0848634f62f1c2bd905e517ff05f9e13a9076c7d128030f42d638fc379f0f222f7804b2871a3b7d223ea3436859551e8b0f96087602d1991909cecbb60ac1466a0938f9b328f0e2944d9964ed93bfb592d081844f1fe997d82c45b7df9827895f8baa8183333cdcf9676deb7bd7dc7909d65e8cb8b5cc996d443cffb7190f1ede8f61889764ee03e3ccd9a3f56c509f11eb715f0108b468f258fc6a8a4ef27c845b11dcd3ba039787e52801148f8186afb2c10d9b1e79a5a19ff902b613492759507acd89fa7fae88f751b17cc3bebbb5a42fdb59d2fda5480e2443a3a708179995c50720685ee97af41ab010016dc0ed4e03172261b314461fdd376f526519ba8131bea6f65e797938ffed504a6e79a079adfb6e89cdf7d9d353277c5809b45bed1d1df725dac8b490c65ce7269f121d6b1e5bac67fa8adb84f21cda2832e66ba19bf7a012034e6d83046c6b86f59b8765e45aeaefb45645152cf23e041988e9e60204a49db59586f4b0406e0747cbbfa7aea09a100ff7654908f5f7979a0a7e1625a078eb04397cbfe68b070d79c336c0771e429c929c7108ed96f213e86915bcc97aeccb8bf55e630ee9b0272ad9c6ac8b3616c528cbffeb3162bc8ecbcfe9f1c351856a3a344b748da9234ee78021c7792926895be6de8324723229b7e40bf658461424731af01faead15d8b1e466e43ff7844e2fd9037d675e670c0129f4159c62c774e0c2800edac8135e1c28f9856db3912d63d3d42f57ad532024418016d74ae092103a6875d26b91d1ca257f830d2232eab60ee565896cdcf0842db46ffb417746cecae3a22180c9978527d8d5b5883f718b9ecfa54ccac05e599e1336dbe04efb2d5d35c4e0973a11aa9932f13f5cefe01ed1570025d3227a1f22052e5aeb5dc3232c8ced20e7a41cadd879aec81bbc014d9f669ae12f6ca0adac5ff7a4b2b4643f2c58b4975dc8f8acdbdcc655e3bc98137f4f1650a8294bc5a587beebc5c52617e90a106a43195398ee26fdcb9d88b5d3614e77c9a03f0c1b4db0c2389759a8591482be43dc840d01aec2fb269e5fc40ffb19fc4ffca68a0c4516c8972078324cb73a0884c5a8df3f8d1818181bc9404eaeb437047119b5f57c7b998c50ace56593321871fdf780e39af4b9baad9b0dec012f1c8c029b668f7c1ce6b5bfe738f31ab0b7c42cb10bf8ffe262309ba664cab887b34f44817ab13fcc81245ea753670c4f74d40448a75a5ebded131c9c6d2302f4c506d3428851b5ab9bdab8a6f9ba0bbb51090eba3f5f43873a64f1d210fe7a8e86342b2c4e0ec4747ece636ecf1ba11f8b2b9a7633aebb52a3f7fe45d33d1bd36defd6b72923561774f0505ca8aa455f8fdd4f5b0d29e654d8244800fe0fd4db1636b066ff23254c7b5b4768671eaef6d8d4858b1ea4fd2c8fd6a78cc6e642662a2ecad3c5d159b0652ee70d19ba583b658521944726c88155b92b5f5b96d6810875bafad0d509cc1bf2a1dc8512ab1eb36399e85df48e7332ec5a6b177e239e0f9de635f55f982b9c875fa36e89539aceeb817b7aa221b04d995e3126665a9cb0de387b316c2d39696cfd8c56b6abbd8a545f35e745a8405b0445335713b5f9423e0cb0056226c5b76b2e49c2af4ab800e54d14bacd84e9e56111ff110d834664a99bf62f85248bc02cf9015f6c3d1a2bb2e1cc0921333ab22561fe314943ba3d7e3b7ae1ed326a991500c33857c3cd1bd4aa0105a46c0104002664a3dae6a35b817dc5c073c6aefc9067a06f22971d54248af5ce9c36066a24df476577ad33704fc31422d9b311f472edae7b843e421c9c479fb6519183c918cf7443dce06e91899df8799c9a1c08d4da3cf98f69e43b34b031e516a69832b99e3bd5e53f779d83c1334ec66aec50e6fdf5e23d53091aa88fd646fd3a5c270f1b5fa61e18634b48cd0a85cee44c2292d8b912253adb590c32458cc2bf3d74e4a23b4d6ac0832a094ad443c7efc37d0ea9cad14574b3ae1810b5c0a8466cdf8629107bb4ec2cd7327900b513b02d872ba0daea3554d494c87d6978f77ace6c4892a87428a0c739c0a27d2c4a316ca49e43c05d2c2775b7d869f7ebb91463adea5fdb406a021bd2623e2aef462da757cdcaf2a625acc2e0c28bfd2f1cc02d93c298d9055df761250b179c1b751a79ae49da175beadb1ab1565d2e5596444b97ebc7d6a86e382816683d7e86b2e594f1a66f743687181898795a652015577526242902ae44f134857e71bf23a06338f4f9f7418c0c3d4fea6c6a3ee802b247ffbcc9cfcf572ba3a1edcfbfe30a4ae761a0ab938c797c12012756f492a5cf7e106803827f9e6135eecfcd4ff0796fbef3b8c44a0553b996a99de212ca48f26e529631ebb93f005cc688d4345b608313fd4056654874578a0092715e11f40f91890f0057cae5e4909d91b75d30afa3c00ea047779f487f1a0e4ab2017bee29fd657f5e3da75cfd8b785cb7dabb78ef2bf02a8a20ff6d938db47afc1e7ae7bc5729121bf1c51d9f99f7472553a45838a15027b8f22d22cb28182054aade6fad2417ae44c035163b16a63f5ac25bb99415125f388905e07f905164005d850816033b1efbef171153301ecd6e6eb787d01135584b91847c3700f7aa6750ff0e64bac66918a722b6b09f3f39727db722ce4d7099b56438eeba5449462d0e25f725c18a7c9b495c8f4f9b93270a352210bb626f165d556493856e0ab6e5e57e176bf8bd23f69ce2fce1cddc32efd0bcb85301e25e67e5c61470f7f117a5523479755f22b8f024d61caa49278087c71a94a4eb6658f242534146a87151e156e846a2dc51adb38c746bd565ba7a26a297c0a71f517853184623a8d4dbae18dcefae3731e23c8c55e1e12c74ca4f1251862775a6a65d442ce68640f04ec474e15bd2fa00ff6b7012a1f4b77f310df394819290831f1c36a5795179f4cbd74515fd24469a0949cecdff26cff51d77759b81c0d64531841dda7b17a44a914c8bb2b134efb1a21b7e2a75ba6df7a0337015d789e69ba976ac0b94408c7d1485b518261df84c744d7bf60f02174b570c739c21e892b21ada4a7bbec47f52c68c23e3a9323e54bce4a68e1340e2dea1f528cc4e8cdfb790242f927b267d816c1c1b4537878bb42c899511fa023a88a1392532dea7442990af1c92d29ad6a0930bc130d81f31eb98c911b40985c36f5688ee6a4beeb8ea7b366398f12195aac9bb9719defd9809699650c244e517ac851785852b05fe77f7d33b21cfeb4749f1cd0c37fb2f584dc16d06220f879dbbd4fce477ed57f4ad10035f86a47fcd91b5868cc320b9748a38d34635a1d90cafff3d34fc628207b2bc9e193184806abfb4b2458b87bb39b2629770f3c4ce776fc1d441db331f45eba49297a29d0c973dec21381b1017ac9e6d612c3a7d2f0fd076258fdfd6c8f3527257a557654f9aa6143ae6e7b19635ffd1e11a1a98c8577c02efcd7bf5ace9ec03d53329724d0aaedc84351ea9edd1615f6af9608d3b94171e900054e1ec9eb18fa9f0e7ce1c4a13bd59191ebde70229f7f0516c1474aa92c3452cd52137fbd0688db23c69cc9316713ed1cc5005e1c4f263bb2b34d34f7d72b18fdaf3b5208536cdda23b4bc2791ff7863b46ca9e4a74f01bb1fa8ebd2da5fab3ffd9bbbfa60d5150f0b1327147566835d8847baed978b5a74ca3231857610823bc85681946a41a16b981c9225552f83a20150576e085c8ba7a57fc29a363c70f78c68ad7368e1c57e87b1b8b1be7b28d7c114bd4fa8136365eb2b2b77c48f352e7a52e70249ce364433f046035284572963327f143626145a05876cc3e6356c87eb9ef5c82f87bd4d21fecf62a1af835da681a126d1f04e9fa19cd1358341c897d2ec078a052604f35383ef3a46862e9523fbdd8503989ba4a3c940678ab674d4d0a5ed4aacf7b89f715cdd4dab39bbc13911b5e1d96e3495a95ae0d0d8124b16181d325d054ba4e34baf483d95bd34a02cf4cd83dd0baa779385e7eb6f921db3d731c18b5269efd46aaea8587ce73f0d4986fc6a2e0e484936d43fb35477cb63bef232b44ae7dfd627ad9cdef27d5a615c01d6116641bc51d8be416af9ecc6c8664eba15babc578ea9823f42bbe150992d9d304a3a98214b994912d6b0a873b6365e268d0446601e09fff82fa7e8be7fa4fa6104cf9f1ef9234611bc9ddbc4813adbe0a6420683aec0e09a0b27bac0adb22fdd30a4925659ccce463a595c1fc5f20172628a6e33a2d8f9fd0be6471ca8a4ccd98e06fe34c74b6eb9ec453159abaf8d441105acde99219acb322167a3d7951db4b439fcb90298f01868ac58410aff835ac3ad6ae7c43a77a63fc80da374008944d84559a72edddcfe7f34a89a92e17cf7c5657e84110c664c52dec76d62c0508e039a31ae3f29647e443fcbbacf0c8862030d0d104c167b095064a0854f513cfa53e7dcb2749fe7ecea3d29b42e927727d2b6b819b52cd1a78f0cb1e86b7743a7c4aa8b25bd3019596269d50e52a18c609a7c494bc2d7fe8bdea6d5aa046db4da5e9a8d6086467e3f99b84f664ed4890e26880a726c382d0f0df9e46d6f6c12d056c6f865c92f3f08ffba15e65c21e88e2859ebe0d7f11ce2cbfe8a55a1a389b05acc178be2c189650ad25a9ffce53f65dcfbe4653e5561959aa1ca0b96879d92ac2183f4cfc499c8e6b0e6587d5a9193e6d4a16dc113b7c31d5977dc31a025ee15c1f5916060b9f612e30de7e268c28e7a03502ff5bdb97002b3f04871841e251564527494b3dce8e146df0b644f006304fd74959cecd02fed17c39e0bcff41f35ab45b9ebfb1065d662bbb96f42542d019e97074e573aef524a1d23d825c089c0baf9858a06040d8a5cc8383e8078efae75f2da4bb5ca996282ee1517f5764818e376bd8a1ec00d9d4e3ac3563a1b813f5d9524f5b1843645acac874898fe3566c41378f819cfd6284604367503363750a82201c5d588843fef83901ca17b8169ded832c6d077a2f9ff7588d219c939efa47261ff6208c1bd3dd089f9c04dff2ccb7f50f53cc60b5f953fc7fb39c921770a52f8bdbb34e436c3dc0a50d257dd5d9a617bfa7219792e93592c5c4141f04b69213b3da41577a97915f5d53b0541ac701b2dbe8320e4d8aef6593fccae1dc417c7f83d4422660f1b0481c8fa78844907c9d0f786be8c3a7c5c4a330b91bc69d05d12e69fc37fbca59fa422da3b2325fcea04143f27900ccadeb311912b57a281e199fada5d8c6ff62fa5700649cb0bbe0495e50e375755c417571c9f4770f102e615cba91cf61ef5f9b9d55652c78c68568d8bfa93456272327542db4af05f9b8c4b393ca071d1677292c43478f67e988d7cd050aa0086f235da90d7ff69efeeb3c9f984d6ad3824cc3b13d6df683a51a1014be8cfa3302e978982993d3cde2be143d850b6b73cd12bcd9ee297ab49448cda8e2b67f8c40515f44a831d20d93807067f563bc523d5f81399dd5dbba603a1d44a0abc1a54f5ad20a190a41a3963e2a7bf5f3d35ece9caff1896fb079d7cfd23f4cddf262a1029717fade81daa78395e8571508b842b4c9af1cbeaaf9b5623daf19ea58c0a0920597126c57ff9aed9fa4f03377d8c9d449c6d36f4b903e6a52cb396730758d7b6be279a2bd80a3bf80f3220a52d321e24f0508723dbb5c9d66d9859d5794d84a9d544b53b9f0bab9f2ab046186eb04018df2e60a6df45d55fefc92714d3aeeef5b85de229b1ac535be8e7329cd566ff67bd8d7cd733ffe318588498cdd1d73a1fed1523f72e6c8dcce0239ba6f87002e06acf9b2ec96966f0534cd2ed71945e4b4d6804d69c2177f732ef9a6413ea874cf559cd404f997af1a2b4a47caaf5df1a927cf9ca3c73c58b96016c9cc2827dd8c023600688c6facbef38ea68541964201068183966b7fa4966ad74e52c09f955dabc800599979a04dfafbc58a9b0a6945df33abb44683974f5d4150713387778f7baf50cf53141f710815dc2df271679ff58cb1d8c1023a50bec40def6bd32e5feaffa4d16051483c6983c90930b9d60905bf5ce382ad6fc3731ac513e3681be4181c9e5f02deb14cec0a59a6205295751f6a42146c56d6594713134e158ea3895716a6d194249e3842ecfba590eb111c271c56bab1eedc3f07f1c413df91c63086d0cffecc62fec696132dfab4ac312730f8dd8307d2d5264290db32a691e22ec2dfcf1a268d03cf9c370d1dc2e7881a902e78f80d1a3139f07ef98d5c845161b3b6f9c73930b8fce65e4ebafdecd284955070fa945bf128baa25a4fae51a5b265220a06f60306bfe0f6ded008333ad5f9612031712655b3beadbf8305f3b5fb04387fe95b9b3b9869e500d597186e53f671a8b0ed0bdfb35a82fb4ed434dda91d77106398e1ca9ac060c4b17838ad01aafacc457312404b18b997c9bb7803747f881b3b83e230755333a76befd5ac7e16a9ebc2172d9c7b331cf06932430d60e1ba0fc2567d059d49e7f83643481bbc67f7592a1600d42ee1c55795e34b069350decec7a9bf2dd76708584f56bd85345065692904cf0cf280f9c716b27c45ed8c44dee8baf57839622dc9d7de26cf214aa5b3889ac3e113bc3357ce27fb7f30f9d1bb50fb85f188dbe47ae9fd8536f98d227b31e39481a29e5af162933b831219a3603d5d48a085c1b197c1b6a2ba03cd8df8494b60a7967712942378f5f3408710e6c8ca3fd5ad91cda3402126931d534e8ec8662b24035cd5c3a47deba380e25e05c1b5c2bbe1826a976e24625c722d6aa7b7487679b34cf60b5acfe443b18c6a58644c1f7a01225c4c98de88d6be84b4af4c6f86cdbfffb9249219508478a23607fd5e917779de64fc3f75a1aeaf31f01cc256762664f01cd066c93c66e2e08bb59669f1212057a49f9e324d6763de7ab81d0d684d41a45a60e02c2d711be7c66f8d712c9c3f4080391db67361d4d474c09e4cfb59a1936a9a877e66534acc1db9c08634dd295693e039e97a6c32a5fa0c4f52cfe53c7309f726699d73c6c553d1ee20da07b5dc0403dc38a26e08936c56254375f606c01bcd482620da55549ebd8bef8aaed43a7e79164643f4730bebdcdcbbf609d01f6d14c885936eab541c5a4a8ada7089a3f294afbf67d00e4a55dd513eea1f52205f2564b22b226af77cd5b2a8f14bf3e9c7215c1064434ed3b3e686d1ec629265282ac2e927c3ed4ca3c6dd63b2220a42489a3347a010b4a72cc7a39a9c9da640d465a2db04521888be35787d69fb59ecf3b5fbf563acf755ac9fabad93d5cd7bb23e0004cf855a900d878160df672001c8305a378b15a6c9a7ecfc7035e0dd78a16b3750463f862497b750f9bb8ed0d6e31f95866b8ce6435af30b998568da72a1145d2573d308cc47dccb743eb744c9a199e8814c0ffc1a7aed932aec96ea8007cf887fd4248bf69ba9991eb8f71f24decfd6a062be8028a6999b0d40789de01e2c39074e4ef052d3de99da76b0f94bcb81509a4a34fb4e9df435f892916930645dba35e8ca3022fa36a0c54da782c72b9ded1b31712abe62a2228ed8d395e71bf23b26e156df960d1d092f16cdcb54f9eca7cffb564a995fe045c671b4f235b1b87f1677b57556170184ec0641b862e8278bd2f6c978334fe7a88b9f3e8c19c8f60d9c1e6de61e1532d3ad0a4df386efb52911fdd32abd2dc946e4e523a4d1f9864614ea569455d3583b43cbd449e7c71b36e906fbf0fb78c42f392b0bcd41d615b598d966e277188fba43049064192e6b899fa383ae8d83cf3e9c9e387bac75b6cc261dc4e30d876d91b4eaed7e60dc5237527321d69518890ba8e7a32515a33acf390088171ccc14b001fd778df453978e0ecd12850050a6d3581df76f7adc0eb9101f892dd59b66ede0eb45b8301946bf97b175789466e4030fa92f132669a059aee20530f4ea98195e15d37fcdadb6ccd3c03202758b8c2b677f7e3ca444652d18c2fa2a4e4fbd269c79d7dc927fd83967a1ea18feecdeffce20d6342f45db525b4acbc752fb96190e3c7a8c178084dac1df90ae0b985871197ddc9e5cf0d1c465aac088b0b64d8b03c8239b92f749b52a359fa6a4217fc664cf6cbd020a52fa98b2f2af627b97c24b73ced25176defdb8ed4e47ab5d2f1c86853a23234efd0e9f68ac3612d95a73bc154e387b2710b8bf36542bf15001d4630ff0a7c1ba3177de17bc8c138ff067f8013832878e776715b9790e8e6819edccb2816001e311118408b813ca8c0f92785afee9f74e8a451579c65eff44baefe1c09189fce78e3e8d6b6fdd2de18d3c0553bbcd543842d9fbc6a7803b2b2d50b0eda8a8281cbd62a008ea577bcc6490029e81ab3a9eed69cbfd700687523db7fbf840b2c41f8452e99a5bfd70b610d76b07375518a8264026f9d1b48edaf7bc2de78095c19f4f2b9e2e35c90367ecb9605d7735fe62c220e6f685ca1f9e71d845cc47aaa4efd613117fbd124364cb7a13e3483d455142e2fc3b4f59bd09a500deaf9b945978cb4eefafef2adf36a52a43f690b87de1438df485779b4e8ec636974261bb7bf3a56c3f3b84a79ac2e76665f58751581df8fd7dfca3a7dec6380fe14e068ba1cbe4cd6fee1441fdc8328ceaf22603e0e90b79141236117e5e5abfaf601c5597468f5e36c9c31ac1169024c250c612bb35e4667c8c2da12ed2f9381b1c26db8ca171caf12fba7b9946b4cab98e919bf01781df594220adf3252d5be0435b7d426967bfed25cc32789cd97c63d387d0ef3d891deebb9028f5de14b994fd94004bbe27030a50b7f504e00cb61b34e70f976ac4d0ed2df772c1b495e65bbd97e993be010a0a68148efa1d7c238cac0d3139b81554da5503be5889ee3ea21c0c2f4208498f89f12ca9ba82808bef77c4a8cb34f6b7840b2f5dd12bfecf878c49e0fee1d8e02192d0ced39c578447955a2e431f6c2b53332c8f0f7deec71d568e9d9ad92975e1a8c263cd33dcfce55d922cf4ad71034532a88ecd5116d53cd65ccbdabb1af0ac74dcb4cf7f4e49077e27daf7e864d6082a856ddcc50844b832ec30db348babf9bb3d937db025547b0d3dcf46b0d5af48f7c946e267b4a0a58083d5bf3184c012d5d9243aa1516efb00ca5128fde618ad6db0c732ad28c78faa202315a825d67bc6ff95a3874b8051e2a48c8d7cb3b54bce2a04705c8d36b45cb870f38f64876ffd718ffe80d9b2d0c8197acc023aa3460e56fd14c11a04bd8bf64de312d693ab7445e8abf137eaf5308608f1f6c8484de1afa9252c76f3fd00ee0d583115444edc6e9df0500d43cc35c541ecf6f16a6925a74b596215f52a841586ee6fe11f46e34d7f399f14bbe41a855262646bc317c48cca42388f997be123dab1d33a2899d032a07d0b42eb6e9dc6a6901f2ce1b061957977fd87d8195515bae24807cad9d5e6c64b52a1ac25fa98fa10cc701fbe0f0f50ba061ccd46ca0c0358a4811195dc292a9d434b2b5b3098ef7a9fbe121c6ff96702ced5d2da61a0e55374666a13723ce5bbd58033b0607053f9cf29ee39233f95ff8189996bb385ad8c6bd2121827cf51b312e0ff602a9868b989c7abcc4eee0492a2458e737a4bfbd924a39f862dd027484afef35d33ec55ddf0fc2eb73f562edd6d61ad9be58780fbc9e72ed330235da8dcffcff8f0831157cbfc89d814f1930224509e431b4533576fd080c44fc577e6281e24b18a19a646a1cab716e0b187bb67a7395261c6c5fd50897f32e044736722c2e065b4366466fac85b861ce4d4bf03b05266716c34200ae559f34152a1be47f85c878284978b1befa97249ea99e8c8fa4a1318a4614cfbf7ee68ea38020a0a4ab6def7d2fa1182a8abe8690a6c2634a7f90d99a399daba212c695fa43c5d9cc7b77bfed82425d8b1e8817dfe791efc15a2b306c9fd4fcef20c0c691189815cb55116f32f180ecdf8811b4915ea82fe4bdd14b1b2838d2fa0f2d7f2271b01478007b247a50b81cce37b6666dd7da7a4ac95cf20d685eab4dbdb80b34445de16ac288d97ce35241c8691aab6398e2743e9534f8a7a104fb88f2c34a0de8b7ff76e6c1d9000981ec4d8e5dbc6f90050e20c960879e1aeeb7a737e5a549025dc2160db39b2b68f654f6cd1a4c128eb55ade49adcbeeb733e28bc278ae0011b52cadad34c175c58e16119d2c54483c2c95fbe3a20c864892cf4723acc35e2be5fd358fd38cd3c8111a9956ed62c7a9cc1bd08c6b473b300d10b174db052b6258807b295cbc2af802a31c55cc20b1cd21517eaf6cace35b9000e5181628522192cf0ac3f9f3bcbb0d1371701e9e5a5df4331d952d312951843c3bb5ea3bff7fde960e3c36971f51ac9eca188755d9217e6b0a039d1f530cfb6a851cfe6c3212c8dd841cdc790d38bc6656fadb65363359de6200005cc53e9300eb0a607971b778a44a337968b90058452e42f60b95e36d7041585b8cbf46b4f3ab660db6701453387456dabc441dfe28c3d2a9e08b4c338927011f882e0207fc7840be4b04ae75adc777cc52060c0921cf30dcdba0995c0324c3f2c69907c6d01ef102f9d9ce49d762233def1fe5f022b9e1271c25036dfcbb189cd728b61b29824c1e53d7ed4f4b30b7ad19c7788148066e4883854cdee94594e830b8ccde5c9da105bbd38e056d070561483fcabc420fcbac31f32552d0b804f2314e964926e5c3c776f5b53290dc78d2b6dddcb8cd986481f5e9390e287f5b7d379de6b721109eab4cd822aca533876538369f325ec2b2ca36accdc69a3803eb3b47bb54e3b7a94ecd7b289e4a4e1d6a393436fe164068e134b3e1fb785d4b781433a73661b3e9e14629c738c6059c0ca337b4182d208b10ba28c9dbf79aa3bed84fa0703d0b0c9b074b598590ad533b11762e3ae886ad1506ef5a2e50c18e906081718e5f24ec0ce17b20388b56a10026726de0f904288ab3dbe4837e26013e9a03368f90767bf95c2624a011aae52aae4d06e08173e791a95c4b4ae0cba5fc33ec081e5fb2056310b49e6b74535e8cf9f8fa36b1eb47a806eb06d16a589246ed7214ab5e8d9140513a27f95890dabae551fb8ccdf1500e227c09c6fab61dbb51325eec3e26bc903a02b009f03fe6200814983521485918d8aea551ab1cc2123dc120d5607dbb783e7c4eaeb0987a32a39c5ba9c7626e637f1964f0b2faf490b0b33020573bf16197ae15ab6df148e0910d8010a57c1297087ed5ff8c21c7d999ae4152653051f1604912953b0143d66b8c4d24bdb7279292a11744075e9b39256b71cf4c6c148caf70f1f2a3c6eb1b7bbe340d2222dbe3e5d0e875cf41db907e1eb3d47e9b92ef8535f5873693046365d7a56c148823bd79835070ffccf2e8e4c5ba58562469275b2850b0133cdf614d501775c5afb9e0692bc16bca5cf7cb6e5686d88a636a10c3aaeb76899cc7d569dadff4161b2b44b205d968b3f5438bdfbc3e8877976d1eee672dac199d339cb227768e6c34fb0740e4e7ddd9052e5241bc9075066e5355ce524721e0d2e77aa5a2f64a839db2e9fd947bd289d6adb1631bc9581053fefccc165d47ebb965bfe2838768134315e99e46f0a80ff7851907832de26cb544e1b338df6d831f9bb5a6ca9c86d264ac57d338fa18063b92d91aecbdc537b02593a0053e770188c1175dadf67a3e9721c881bc60ca4b80868d409e4674e8fdf56495174346e2f7fb91c850981e0516b41ced3f40185728d03b35e591e3adad4173f653822946d34c292d20f5e692ff4bdc166cb577970270b60ccfb19bec7a8e682f46dc8d2b0fdb3991f6b532c95cf5d68f860012fc16d5e1644150e058eedf3bff85b2df98cbe7adb360c82f81a3b5cf33aa272946aa1e9f529bbae53d385791baab3e3a507b783fd77bea7bda68d9828e47daa2c70c0d3acf9a6fe882b76a197a69f3036994e37628509e2a3a435780b034fc052d6e8aed99599e05e8ca8a3d59e7edc38ee878c1f5f6caa2a0d2b049f704770062db304b75e7385abf8f5269d710c928d559ad4a559e2b4a1b056f1076c28f6614cdb4f577daa691cf1256f027d2a7fc21ce90fbc6cf33ab02c644a808b1b965107c7c13d8d8f77adc4faa9740dc95eb8dada0c66c067a9921bba997bd6c9301818a4e2672dbec8e00e6109eb4620bf396aa8061cd1f8520064a66f20549f591318ba8549811c4cdd1c7fe7b87a6ef5fd5d5c19165d4d924afffb189fd66fa7803ed1d4b15b808b42452a1e5ce275f654c0821cd4d3a446c2f8cfd9e64ca90226c1472570a11541cbe380d7894d4d94a2e469c0d4c99cbd8d1029a0fb62e2ace66d8cb17b2278a88ea8a544eaa94e3236050366bcaef5cd49c778b2e6f3b58d4c02d97dcef41a3f8e294b48ea4cdea9319b94a5b87116f1a9432347c5273bb45a4335c392f9f037aa89b50cbcddc9d607b1397c10e336d09e22c424afd38f6daf69f1b3699228480547fc63719410c27859d07d933491d4146dd2640aa981535a09bfd3e245dceb799bd7a62b5908054f6684b1c24e0e05f1e0e31b0737ddbbd4e36526b3c88de092980730ae114b7ba5492a6ffef2169b9cd6a5890d3a9551c10ba5d4fdf7aee184097a09c63f4dd62370c7393ac7bd722b85418c111b4284c3879380e6a660d23943810f534a0e5eb62785918d9fb317ed1536178a9e4d49ed5d2ac919a84a7b157de23abfe437b44440f3098389434317a5134320c2e7a487d8013c2ca3b811fd09bc7efd9580bdf71744499850e93ad2564a1e691fd7f2e5ddab3c766478fd6a423d3d2ebc45535e14de1fe6fe5d3d56fe589df83a8633e326b08728cbef93a03f30f7e82277f84eeed8ca15693ba42ab438cdba1a508f21b1abfa12d15c9c7385e0677358693909b7f430f988c179531a6e7e7e677bdad1fea8035529c8c638de7cf7f0a428c6a3e986a657a0f974691f36f6572327de134cadd2cda7c86e56f52890573dfef2077ff54af573a95abef6e7c52e4a9d735e7be7c0d418cee0d760c900026dbd44fa891d2e85dc69578c290266f63c68313b584f4751d0f7c4cbaf0b9a0d254f1c36b6f0129dbb2ac1003f4d4f4f80b4740f936e176d5affb129e9217017b13afc5f1befce48d3d83f66628556eab93af9d2e1317e904441d03b8b746e5a1c2dfb8f4e89cac369394cce8e1cf2631c76ea11561dd1d3be04af5da49f418e53d262bc097bc7c8919eeb6e0d475100f593ddcb2cb2d99c7dba58ec863f99e9b6e31e19ef2b4aa0716149f0c0a295ba739ff0124d1e702bed6bdf94aa3632e1da1730ec8213693218523ada1693a49bfeffa7608368efcfe34280226297f64c78ebf606d3e005647905c60be625ff2d880647aca6130169847fb3678b747246dd404417d26332c94f2b1aec3236ff1fb2566cd47c12317d5edbbe13b73d34148678dd0ceb711037d398cb9abe0c3805f67503c9cc3e8e6e5d731a74bc3397b78237d6f955dc81a192b826b93a1bbd4589fd96128edbc3aa19f0f2279192e2d0893fc1663649fe5a4c282328cbc86ebb2fe03ed2a481894292782eafc83eb6011b101e0a9cd76b01cee931b0e9efa9cf58c7c8f2c0906527df1e7fc4c970937d5e43d4db6333e8ff3427f10df4453bb170caa39c26b4b1acbc92f07976138a5e741bf7e138fba4750e521acee639e4c78540a93589d8d53f2d98d8f0ff88e5874d1c3e52dac9c09eadc12378c857d735ba769e664f5597dfc85c3b8b4810e9851491ad3c8684d5b699846c51a92caeba61fa2a70dce284b0bf6cb0785f74b1cf12ddfb4464e6613073e8841b7142042850b8605a2f3e4ef3a4454889f99ce6e754d245fdec4041742fa34ff3ba1012e90ee5809b70f97caa977ed077911d3112ab6d56b84eec701adf074e1b6576d852bea25b6a817eb6c3ad3863d15cf72963470df5f544a5534febd462f443d714e8d30e9b47485a391a4702d12191631644042220c232af875e059c7da6c14b0d073b01562e763b83f2441eb05405e3159899494a6ba6992b4de0b563a8446cfdf4eabe905b992ed772f0c3af087cc4b2a850a35fc027972fd95647a7cd6c5198e351cd1fed8c10bb7f03e0af98804a109f40bdeaa86604a9114c7bc6a1ec8f079caa6d3296f3329aab19a84e6af1fdc2d2fd967801c5b41a78eeb45ed75c5137a563e8039c832db8c1c19b465d1ef06fba294b5c3ea290268db63feeab02e85339627b9f250b469584e4ffaafd7bb5b249b4f076e0f99ed52c8578d37f0449abf1afdb2bc663cc177e8c9ab1b7a1adf522a8602093d577915cabdf6edd05050497a3637f7042da7a9aeef44cbe1566950defcd256cf9b84995abe7a161eb32c2db9e033d33729e490ba86703afaeb38e3ed14c0de7de2b87403aac8c583448a36e356cd0e028ce0f23ee28cf935d03e58e150536df36c7eea4d0a7191cd500e9aa4c3e7d21aa01573131414629ace92f153b5ce6ea4dd7bd83f949a755992799c054104c864501272ccdfd636ecb6170f2109c59fa523fcced8485d55f392c20e8c3af8b500c86a78a82cd6c0a800c9bd582032dbc23f54ed9ef5916cac3f5778bb8c57d523f3164188a78aa78ff038414d91e7b69b8107910915733290c99b6fcef561b3466dc748dd0f3d1e9417d49675db62d190948c5d578a3f980d2c1f868d94c1a52346aa23b976dbf0e79717b203b3090b4699f6a76eb12db20adc0fd498058aff74e4f35a81f28457cb48e59d950a750f04278b2db19327b19294431eddc3bbed3bff235705b10b3948811f07d03badee543e789e9516a41d773356915cc6fdf348e355f0561a1a8222cd00cd623ba6868607f6473dcbc7c0c1a94dc58829edba05728a5aaf5ceb2c3f11dd4df98a402dfd54864ce0ccb835be3472140feb06c600688d4d213ebdea2358baa22b74a280a19a5782ea72241fbe5cf3d2338809920a48bb3896494ec1c6b5f9eb071454609e6936a5887bcc5e2c90830a70611deb889fc0e4e84b78e649de3b066112480823c8be1462713283f4208fe61ffc4f99a2ade0a0d96a2866e8b2138fb4f086c0a01c555a97f7c69cbae6e6aeb499dbaf0b7c09328d47ae12973737c801e1e3538159492cf83344e0f1aa2179de3c3d73529744f1a4a91c1a0230b2b01c2b692aa4272b96be075eb71fec81188ea919ed08779608b340e5527599da483fcbaf13b466cb2e4b92ae1583fb02b3c11eb95e18ae421f5708182865a9b01c49e922aa7183bb0b2a9950b76dc170a8388f79130414195eafbe0fc698fd8221c9329fc6dcf2f529f19eeb0bbb87ac371a07f99fa7700ead7d8589b67c51aa10632ec1d0106e1117568222899d31deb11ef6c32fdc74cea2cdf546756ac4f3780c2c7ba4eead42c4fa80612c42cf8acdc4ffcf2f15c5970635feea7c7d7b5638ff094d2e7153f2edb5a4991cd8164dd18a4cc60d097709e885fae7b7c511c30749d5abd882f9f97e7e237323e1761427ab5d28d7512fd05ede83a7182269fe2879784b1c3080bc85b03764098002beac529c98b4abba9dbc8ec98b20821a6774f2ba27b9453e85ca87b813dc2ebdc4aacc74a3bddcad623a85cfd097494782a3b2e90c2523f230a0cba5c58119f80a2f06c96496d42ea6eb6545cabed8ef78d9c232aedb29ca05c7b132112b73e16bd5157bf7d3be1b618a33279c7a6c9ab8ee4e3be08c9e74caf724cf2092eadc3f78e893fd015b70e54814f57bd3cd738420dc0a7db3ae4174c703d131e2300cd68bb9910fe56040fc3ec8398583c66b475d9f13887c1fe3aed4f44c3837b7b6e6ef1ed4d36e7ec26b0a5d977140aaff19ac6e869f8e9965b0b029046f29876918843fd820bab2e7fad7640e1d17fb2db0fbc9e66b830fc5471a4e270dd0b9191a4fc60800a0a49d0d7914d5df1890570c0feca19e47d65b5e9ea1e2d05185d215c15f0071cf933527cac574c6cf5b89050d6d8949b511a94442bffff0ac2fdda29cdf63dbfed58a17df72555cacd5b67197e7807cca4782bf16b925d9761e198cbb3d1a5f37241cdb2414bf379210529a0b0a4e37babdb60413c1e57a490da8f1cf676b950b4d6389f9455b1acbc12fdc1b0766f7936c47288b3a6c80e5b2be8a9a3e1471fbe8f2c137b51c29c381c70b3a82e7aba488851baebac8568b5e8e309acddbd4c33b83f97525929dc1f31095e024e98003f55b422ac06da9f4d55758cad35272b36d5a3fd6fa251ce114874147194cad7a1fb9a41ce45b35f8a16918fe07d2e67d651cc5ef538f08f571b892f16442544f36c710ee19dff5f6c9f2dce3b1303fa85e49d4786a040c6a589d9dca1db3e0ea7c0d7a075697aacbd551d65fe9adb87b26e8df37695baf4339f5db083ed420b929dfc5d2c6a7182263995e5da5e9e9028b46f82afc478a17dab2abcc2efae1d343877abc63ab396d2487a2017e7c25bdd936f15cbc97447af8468fc6b7527f2a63de97c151f0ecc6db5712765303180f9355b7a5c43ebba1f9d3f8812f28a80ed8c7af2636b025ccbb63f78044aa816c6852621f13ba8dcd23cee6ce9a44a8fd7c05be74a3cc5980ab799d13ea3ddb47c253660d97020801ad84e13252559db710141cf34928567ff66e0e5d49274447552fde79c7b06b0ee4ec81a9b8fcd3ac3c1577b1ceb1fe97678be314983fd723c400aea84f5e4ead92dd4f29787dcd3533d9ab98c3d66f04f36b40200a20e6983c35bb23a77eee6e04c098e98a14b84a285e2217d9696d7300f3aaffd196468116a11a5cd2af99040d9adf709c97db0fad08b99666f38a92cf0a2e7e11a36a1340810afff60a4cb8b360be372c2f6b7725f864e22371183783ea4d7193eb92c9a72ed64da7923ddbdc99d4211fcf877d324555c0205d46e6b9490b1356fc7231d1f0344f1108c79c52ff287b9db41d8f23e662ebf2ac4ca312d097a1150eeb4d641a40469f3f7ca131d43a254233aa5d5d256d8ff871f191e4ec55ac74fa8ba26205a25c3af616e138c788435959382f9d184f731d2c975512e9e9e251686bb9a1c6384f8870fd2c6234440a88ac846e85c3d8fafa8fc54c37c7acca8d25d7e878c9ddd5607170c9243ab5f27a7c3d4d035b27ba5a66c9e09dc6e3931bc5ae16f02c27ec415c586cf554bde71399c8b8dc7f2b8fee1b257b14fe156a35c2865e8387ab55bb4d679cc7558b67fbd259d2225dff0042034679dd74d8561e8777cc38ff0fafd45c05ea35444468a60d3f352ef2c53bfd7899c2aad729977a972c4e4bb2dc6ad57bc6e260e6c898ffb0d7abd6059d4e904146e6e73000a4e91301c0ce9ab7fc24a7236ceac7112a339da2df1352fd299e72fba2a46c0ae76fc6af7d446ea3c06dd4174e9289d80db4fb0b79fe5ab254c18cf232f0ca1f6aefb110b1bd089cfe9c25ce2c99f0c9ac5dc0cbceaa99c2dfcca80f60a7c464e8599d377aeeb7345efdf40d31407fea6a2f50419e3fc792da40cdffeef3cc8692ab01cacbee165ffed4cf233333ba94df43da81c01cf7089d67bc2963674b1b012b9dfbf4254a272fa9469ed69a1478a190fd7cc082064e3e0870cd7a5983a8fd677fc70e9abd9ec25352e8e266f56c1e3b118d8eb49834092063f17320d3d51cd3166d9e0206c52e9d3b1517db49ba67a6f946dd8cf2d30b5be000f43b3f9b11e983c1b9fd18e4fc8ec8befe1a402bf512f37da20ccd85b74f0757f3589148f3981a13a7800c16bad0cdb839ca96e3e20d7a81a6527d71add535595f13f120ee8712fb4d0ec58c58e68b3bcaa6f8f03ae2c2fe1c4e0e758498d884670ad7823e995425e544cac4dd495dd7543623e03596315664ee83a29023b4d8a023b95eb6558bbe0bfc06b8bf46978adc1fe046a4486461c9fa70b74e632e4a59bf42de3b7f56af8e9322f7aa462bca93887b78d86bd46a0babd8ed4b8801e647e1bfb2d129a817d57f6a2ce0ce960dfd721cef1e725b02da17d0d7a9c750501191a3fa2991fbcdc91bdcf0fc8c912820be7820d8fb60f2b9f5dee464b1c84e1204b603f505c564913bc723c4e09e311da5b2e5f99a31a2412e53658eaac796b1a2fd8499c454ebcaffa1de1b79963bfcb141f7da53a3c5402279a486d84d27668d591aa0bec1d42fac9463b14da872e57abd4845c1f1df08f5a8f1dba141f1c6e00073a3aa3dcd2383eb0d82efac5e21b6cc7d3da175cb6e1b96880775fdc2e7e44ea33ad535836462a2f7ea57be2f0befec8e381783136339f475a83d9a07532f5128b70746e1bc4106cfa60884976093f071df3ccdd79794ec61612386b5997eb236454bef75be15712a3b3296adeed62c136fde525c0ce6b90db11a7fc9e6fc1ab6f23ee49b2d3cb39fa58df38e730e4b93fe5ddebee22863d50a6a3f5695a44de35fe10257a096cff01ca6d6a06c65e97c26361b520d7fe37d3c77caa4d2820864f12182221e055727708eaedc97f743a48f7295786a46f366b7ce1b793ff350f91859f5406962e5bc38392be8ec16e861fe41b907c74830f6fac5cb5c827fc6bf3608efa370c3245a0130d8ee1d3e3bc147b4a605ca278f3878cafc7627079c4026c9b5ef340ab4f4994a78d09ef66d4b0af463bff21c6b4eed5c6dd93bc8a72ee6697410f01fb96365994bcc00062361f5a7fba090e6bb2a02838abfe3a3c5a67b326ef38103441f8b9f7e53ae5275b7304876f220a3a7c2cb3e7cd51b82e2a4f5500847e3866bd144521d458ec6b69650f0971942e42191d61ab9b15564b7c4617687148556463ab2456ca353a2f65a19ff995be355b53eb056761debd48cf257eb3a86ab18270d370298039b75d624fb852e659d50a6b7fb9634d90e1095286bec31609126631d0b84833d74aac85a5637d7e1bee4d8ae9486bbe78676227d760384922abd3fb9b0b95d8fedeea082fad833c2fe85803b8e6850f3e6588e1f918f3d8ee6eaa064075fd9b34947ce71676796a8c132eabc83752e58d25994559f474a501aefdddb47a4aa72afff6d4fe8cc84dc7ee7752d73bd09883eb6a07e3b5d926f9a57f97f5e1ed891d35ec4cb4f43a4b2b23205451cba3874bcbc82978243e52489962a63104da6a14d85cf3f75584e75e74e75457d6409437bc8bc64f768d87393d606691f3f269385b0b2e3a50bd56fb8fc1743d29ec8f548e0ef9b2638112162e716e18a6e6278e7f22549d3620477af0903972bab48ede3bdb481301e9d2bb9ee930b3e57bd47daa6e24adbc0bf15147c857caeeaad7f4b32df9dc807d3cb371fa41f9e0fce575e63292483f0cbb48f2e6f23df41da76520a3e6a10fa689a9618062216c2b5f52647226efa345d37b5635652311b0c9bf340cdeb92a96d97a053dfa38791d641220775bdd8421a7bce53eec8ea9377cc436a39ca51ad5d719ffd74b3551b35152ee769713df8ce17530962dcf98132036519361d2b6aeef2f27c084a7ad49f0951108e6dd3e461d4f5e29553af4d063c0dda54589bba671a45cfb1d21eb5401b79ad9bada0cf355ba519a3655643399900f0e5fcb31f0e965ad7a1f72d8ea9aba50047f019332287f33f7958f1b45e274cebe97b3e1e89379b356f582d28855d281774bf21e7d74f71c2204b673fca924d38d2c6f92a96bc53f69e98caf392b24a27175b32431894c604427ab4ce37505e03bbc249e3ae0b62411816a956deaddfe6b2e1054b3d8d10b78b4879bf6fcb2704a80bee22e47a6d6beeb7a58bc8cf1d265120dd984311a2fd965a9611f6f5541f89d4d0dbd9a9e86f867fde7879cf801302beab20f447427126f4420ef7310bfb6c82d045b544834fce602bb3b1a0032aa6a904f346bdd110b72a9e451f448cc91dc9dc5ae0733f25d5b1065270bb4f401bc321ae38dad78b6d260e524ef6d868e3cac20fef058ec810bd5324947225ffc6aa648479cc8c4f8c0505d36c65e3c997237c5924dbbb1ffe64fb316810d05813141f4ba6950ee614254110a938f5bb0e963a34ead652b2431b45da1631fa77b14dccbcfab442d0af96665746ad4b640713fae1b4c1cf290e67183545f3e15aa41956d7135054b04be3c0a71e1ebad6dcd0732d6c1118eb0c719334d93890e6d2538fddca93fbe938da85ab1c50028bacb9ef23783be162c9714643c1e60950920a507166c7ca285913717d40763431a9c8c7eeae0b6773820b1a7618ad42dd1a011aec789a73cb84b7c6aebc521a5c5569fa191b24b04303fc8ec4b91add984916616a8e148819965c0ba9454b44cc924b291b2b21b322d7e9d9d06ae4d6bb6e7719382ecde8a86c0efd8ca1c3baeec80d55c981857a7d18ed6607f2c1c2f19e358a07fa71784c76dccf6ac13ba01beeb6644fd9153a808c8d13ffc562d7780eaecc506a46b4ea777f9a3d15f363d14b834912051ca3b1043553c27d2bbdd901a947623a311a33a1ac7c70fafd395a921fe0c1762a720d8d0db710594050512114e51e5d7ea21c98049e50cff1eda479ad46eb8bb9fd1ed414b08b5f96c7a1ad95d02011a100b0acac6cdba7e36a9774747a812bcf1b988590ed46446530579d39148eebdd2a500794e1c5e74a91c7ad0b54587b7caa41fa7d7a021dd6663acd62ce11f6e26e44053e0b8b82b05b7860a4b04677e864a349e60d77ce7fcd657b116a7403be236a182271c47ce168a9e3563ef201189e8575b06756a4b7af9b9bbc1238b468d9b8341026e0e3f5afe8f6b34bdef815f595b9a3afdb0f21e48f2fc0a363c6ee8fd43594d22ffefabe43b7fbd28d997b0d364a56a13b11d456f8f460e69e94ee725092bab8caf0d8efd8d576b7a81b0d1f4e5df5820f43f3e29da675965b154fce31abf32c49723b63e0c8104d4c7d2a943cddb62c682a4262731a759808756b295ce97e802f3971775ceb4718338d543e072b73457f596971a486cad91a50bd58fc10506481d7fcc29557803e29f814a2a1ed1cce7e9622e3b21047690fb69f9da8becf5d5b3a6422cc41980983dac03cd13f5ad40938bdde37fa035d810bd2187ba9c68bd56a48c105950f8b91c203cdec9aa4513dd68d16704bd8e403317f838cf951f40923bb110ecd350339d46cdb5bda5d7de02ce3093925a0687a84a1d909bf0ea61a7fc33d376973db5f3855d9769cdb5bbc221a2d32fbd7c65ad014787fce1196c88d8b9d570d496ac109931a8c9378a24af0e6d316d9b661e3f7470cf3019716138e3f751d0d7853e59398cc1db1a0324ea7777562926218bd8e0db97756fedc5531a9a1c4b08c528e82ff7596e0a2c9ee89e4d71eb6452421617499b2e42c3fda6a05c78eadc76d756f1fcf56e3c00bea6137ab50cc98dbf222704e32956d3d09f98b67be0d01d2bb62025e51a0560da519e9a76320793a36c1907921a1ebb40ec4c3c95f45f3822f4be28a8422ef70cf1e711cbb14de0e8e338258cadeba061581bed9e67734e2b7fbd87672d25a046aadad186f3c6f80ee33e2b69c7a7452711f47347e7ddb769dfc5f11dea9a10c673834abd31112954e5814b92fa090e4942f1cae0fd9a78ce05d748937a7b27692c24f3c7e79d40b61e364e8ec2b8a3c06ed1d2b863f25e8f0740b46322af76247b6bd31337d7632b9e2971d4ebf9a3326f86886d87dbcc7bf545c9c71d95d4cf62e516511f2213b7a77eacebeb1a69ce642321769a15bf8bd8c95223be738ebd462d0983b58ca687ee1e610a16321ae7550cd68cf4faee4f0a4f8f89e0087df9cab0b821e5b428579a2c1845560e8a5f201e49041937b6779efa3795f6312ac6b9ae686b6324899404194cd974c16b90768451fb65323d39c7efde5ca9a000baed1e9148298e7c0186b4424515a4798dece69a76c4d86b93f52aa0ef17cc7a32fb42615626ce06604c1b95138a28e125d9cefe8a65d0b82b4e52892029eec3f5e9eb9e8030278ddad126799b329d430c8fd338856ce0afc0e3e5033df174c921ee60f39f78a84547811f50304224fd53657ff1e6353da9edeb4b67ff299e14e7de5a6dde8ba33d0e51abeed435defdc8f759052c1b48cb91e4a8165661da506bfe0ac8479142529d50107d81e2d5b54a20f6fa00b49b67ecb0d5c5f53f69e6ecbcf95c1c06e2bf380d06c9653fa0e4cbff55e4f7556f90cdc1d8889271da556be1c18dee73aa7cf3b86feb78c626551d7b4441cae174f5fb841ff04f9cef12361af37c54fce44fed8db69a5b7563d3e4261a285d4f820eefacef46bdc0950a29c28424d151a1a7322788342d3ed6659338037ef690d4669744c3b37a07517f6b76866ec78a164dc150a109b1243a5e6dd3c2d9c1f8a65ee58c1b15e1bed59e74a03e7b1af4ac5faed311ce198739a48a43bbbbad1c19fd2fe381801672c64c6a01a1010e6e48bc696a4379da0e77a17ee594f88604a5c6acf45e4bb308a0311d843037c5e5e38dfc086f2bb312ae2a2b219e5fce883086fccb4d42b42fb5bf358e2acdebe80314308274660395af2536ff767a942ca4f2b2340dba15df344e211d8ce3d372dff8233c02ae9ab677c3e5238f1f278d8913d42e441c4a527982b51d2874f7051e304ddcf90ddcc4959431859c4a084f22f3b1d0f6aa1e3ccaa38c499df6bec1b26c8c31100da4dd82020fed1acf612a8d8159175452eabba10ec9b8c665d8d62ae51d5b143946f8e227df4ab17bebc39adddb99f614fcfc2b14c592299d462eabb2df6e127c4c7d81da91e5aae01bd39a9e1e2362b006866155bd89c381c6b9db6b5beec77bbe37c3d3f70e923221fce0b509dffdb56041182f7604f79eb2afd49630b70193558ba8151a18321c4d71b141faf1400937282ff975799cef6df1c38b415c0a73d0281f4e5f49caadcead482e8fc0d5211d9527ada660c57a8421adc58486617e7dd22178e86c6fbee83c05171dce950b5e4b5d5900bd85b2aa0446403db76b13ef896638433c22df4478cf0155f2967eca1eff19abaafff2ce146b44edf66f24246c4b13c3892fee46757aae077f9b932e0cc492e5373635075acbe01139c98d825899bbe7e96786fe66750cb8462639c8bddc8ca445f41ab29a214f5d0ff379dcb8e1b44cae1f6e9540b389211a52cc2cbfbda37bfeb88020f605de4561a9f3e582c8dc72fef971d2b72560ab37c0e182c213c7e3f861e77609ec02b35664b710e1169dce107bcfc9dbe09042a62c481cef1a193d59f20f81fb7efa110a9eae1d13b6464082784a770ee8ea7f20b6bbbf20c122a6a2bc1c6a37be959fc88ef0fe8c4daacd6459b2ff7947b5af6caee3372e528b0c85b9f8f92447fb477a14740d8008d54a1237064ad32b4f83097f49aba14a2cf6f8377cd359dbbbcbbfcbe7ed225fd2a5569a80e4670dc48f17d56624971550e5e8e8d7109156107a5c77b50ab485ca3a266f895e8ad74a8bc111612140e5a2d0496f9dfe4d38bc1935c218da243cfb00e7306b2144a6aa35c1c0b61e8f2fed2b948461672b9de6ca78efea46b4a6a1b26caf8a74c4a49949e7b6554a3c27fdc5482fb78f54a9b222a56de4af6c4c70f90eccafc05c92bbf84b19fd86a0aa251d2363671ee043b20dc3ac19784291d73b274fc51c3ad2cd0da2ef63453dab5c6f4ebb8dc5b17a40c68408ca2079238e39fbd7e7166942d4eec6e5a234cfbc991191df8ed65cb298bf4189e373e5e1950d9040b63557100991076e887b94b7acdc0d1a545db391e0d352bbf335122e4bab47be39a496423e01e4bb2372d4c00c79cb6d7da2bdf6439e8d83d265b5a27f2b0a6021bfa35f660faa30277e156468e7ae38685b12bd6cead572a403c995f6b6daf16d674e149556fc6a743ddba79f3b878b9ac6dcda9b040b7ddf5fb71ca7e0e56898cd65451b054a575c7b872952729213cbc8bd3f603716cbe5abcf1d173b4e2f60c3dda30d2955acf3549c9709c0b4739e5b29bea58c52a8e18c3ac664a90c712f996e3bbb7ec71a38412b1d0529c0ba85e53acb52fc11b190d031ae72f16a25e6d1f1a6ce86a2a000958ad10b415ada246c55af1f6b0d8e01b8be160145878ca8501f64ef481e3720a3402c8eef148adeda87e4498c529f6972bb9a0a28833125414dafa0ad1f4e61b43910e67e9d8508e28560257dd922756d9dbf37799cde725000edc3d5700a60da73a763af12c772103ac7be6750283b26b4a94d63af35c72f6b8094b77d073232a0ba55b9477c789785b7c6b8a9f8136399edfc80fb605c51e76bc172c31738c0365dc9a9363174e005b2e31c71b76279a57589d29fba55bf7cd069514e440f1f0aefe6ffa31de03c4577ef125214d506ca3557433c1c349263bd1ea0d3e4a4a6a5d4e41a4bba5635c8b2a7401c90b2ff5db3e4169efb8ba10bb4bb34a048383af032744cd0d9db59923bbe3e18dae0683ec752897a48a7402d7ceb0c347dca5444e69f6262ea0afbb8a64a85faf2d1cd5be6e5090f437f247307b708c00bfeba1f9c8e31f1dd92769613c9b77460a5b2e4645fe2fd437e2693d905c8be8215c2d1b1c669d3a4351d848e2f7ebaaac364e1e352d2662d36c5ba9a75d3c14287bd77b4698ca5def840872c0c3a903e5d3db1ae326de60dea17129d200220a4746a4f7ccd4f7e536cf0428f3c2d34e4cc50175ce338e26bec9b11b4fb6ce75be01f3f7680ce1c17efc3246298958871118cdcd8577f38f22e87a3637dc5adafa5cf16e76f6b32a0ca30c111f58f600c551bcfeb9377b3345a4dca246ddcc1614883fa76d31496778dd69d4c087c8fd1c8ef65e5501fd2034f9fc1537bc10397296304ed03fdfee8eb09babde968956e0d5052f36613168166a55dc2bfedf7261f5aa32e04868ea8916758f407066fbcdcbebf072fb02447df06c80899f166c7e76897763ee01ef5340c403dcc4b76bcc29cb01c565350538b1a83b78786522d9391d531fe51c49f573a03a787f1df7f42412b02613b0baf87e190c23ab9a325bb06169cae16a8bc1b0462ed232c164e1822a83dbddd14d0504eadcda579114513e388500771d8700ea2c6b6234d54eeecfde94bd0c4922f1957b43e24b4da85be52a09b39567ff841aa3cfd3cacf51e46c89cf536a9f2e8e7d99d4e19453ed6890876ac3f3c4c8cbc19ee08336e9d31fb5f6694958dec09d2621ba89f435d1bd960be34e729238bffd8def7555140dec6889d67141bc7739e91b2715d35759b165e53e34d504cc209072cb76a0143b3bad135d59efeecf8e349623971160387b5e876c64d247027d354bbbf0b2054fde808a4f4d5c103ab0a010e9bd5185d51c311c2e4322b34aa5a06460738885950b5b569c6b99a1218acbed8eb893f217b5501c9679f02701349bc2dac58109f77b58c75fdebbe301af579a7844581ea76509c4277bbab4d011ea9fe4a57e1dca22d1fd92acd01d8e301281995d76b3aebf2145915df8c2822e00b21443944d27c41b243c694be0b88f703b9569bac26c5c20ace4217610ae1d9397d3accd5743659fbebd2d40c43e8485e31dc9e4d17a883091aa291457bbebca8770dbd4516b39faf9525418ba6c9fde383f9adadf46fc2dfcf3f13a809053e886a49fbc020380b7698692c0f87f5a7a024030eaf5a0dedca8e9ae8af43c55f3e6ffb891dd5f8d8a57fdca2706c5d04104a6830f3b3ad9ea2a8d70b1f276aab85659cc3e885fdaf67bcb96609014f259e0a7e47d806e85d9bc92215c57e2bb7379c8ad07515c910fa684bbb23bd3c4f852e40868bc4f29f97c5369512b9b282208996e1b185612f0d50588cca3a441775c6670af35ec340281f0195e51b284d818e27633e5488ac81e6275ab84dc7d4bbd864f6c5e68fa74377bf34d08f91c44230f1d9da04589d382341520cf2d9257cb267183c02363dd9fbce396f654671c8704286d395736ec9358021f0ef2ec9c81a23527b406890193ff3bac6184f6eff5620bccac0499ce883f5660d529de6323dd9a5741047da9a456ed3fd990080a035c786582645147a6ad3b0dc36f26dba0f3dc347751d889e2f02b00f91fd867ec6cd2e0eeca7a916cb8f8012836fbb3213d059533522e9cfdc3940df7cb58e658cf38d0bb52d6a8764c37c7219a055ba73bb44fff8647af375b428698adbcd725c90e4e75a37164680dcda19011f4ad24d0e039d5aec7bc06bb498bf234b5ec222b255831f63896d165eca4ff71a31395c36c816f45deabf124c2c3ea770300d8daca474fb932a357a213f11507df4ba67a52b226adc48858fbe6e81f3116572a5ec6e6cb4e3d7f9e5fd03b1ff8d82d1b1fe43120a3aec573459f90f78c3bc6bffc05afbe781ebe1fbfec06d76964bd5c3d66b99df5b97a4de6ba18f1d67750c6c60be63183e02abb822f3cb89a75b2b23a7216025b2a83d532a76331d5c195be06bdbf6382f5803ad5bd8839e2c8e99ffb3b314ec0bc9a2ac94a1911210d411b5e1eb677f163834961f8741914f522d8dfdf1f178a076325abd1acdb40419a58ba384568c9db64496b3c7bfd869413bf90111a6fd5197c46f420a1c50e975f17d53c601d8bc389eafa5ed496f6730374dcaa00f23f1397c4b9998dc261095653827dfa017efdf7e12cc6e5a835d700acf43947676927539033e994427e72a414a291070801942dd02f309a477c83f2d5035b5f3fef2e7beeb1b7a80a0336352187d8d96f3433b78dea80827b952b73ce3d36ba041316f4d62f24efc1f450129a3fd5fb4daba46fe843d839cb23f3573d2e8e505ddb3fb9b27513fb84fb72a8115440735763ce2ca728a61bb0ed798371031ffa7b1d6bd2f1d282955ae2d7a117b470bb646357a7d18153cbce5ba460b3865b71bf1665ca1f4611a60cb1383988deb57d3b106ded4a15a977d82e2788ac22aafff80d791982fb16892398d4c3f0bae1276705be6aa3f6077836847e1f33387e1125d86c0aa39c9c49729baefe94224b6f3747ff2d453f830d91d32de9bee044184e7f8e934d7abd7fe8fcd82c956fe33fa797cbc4815717ef5fd13c05fe2e49803acaf5620125dc07e5d00c85526acdac31d83d02afa895b166fb7f8d13f55bf3aaf87665a174fcc90c6e38e5c4bb5b1526ab92204b356726c66cb164997e5a029dabc87f2424ac323f483fa112ff5c03363f50f3477f031dd646b4148ce9b188217fb7ccd904e03ab70ee733f8452e5a2090dae8bf4a4eaac68fa7bcef238d07362f6a4c642eb7ac6dca3396d567e40c4c9489cfb74df51f808998bc53c38aa15096ef1058fa7708c4839b0a38fb21364f56d61674c33f336bc561f31de7b99ac365bd992f0f6400985eedcbd10b7221ca9f4af2da0eccf74920e751f9182921e2f4d08fd73e5b3edae87f1b4fee5bf661d0cb63e42021816bf23cd9632345949a5ed9f8842640d4801a6a8cc1bd4531cd3d047245d23bed24a8f107f749ab1e74984734bd29c7a7ad47cb3c15a6bd4ab4f8a43b791bb1b1ffdc789d986b4f732faadeec8b9e50c238dfb8696d3ab3e3d20c8a533a0c424474e00a72bfff5194aaf98c34dcf08fab8653fa72ecc82ad910478f1ec981200189426d5ed4cf0695fe01c09e125b32465b5997eb05cfc5eb27c1660d14e6fc08b5d6b40b93a98cc35b5759bcc5eaa141b99f62063a9e4cfdd7b6a2eea1dfac89619d719bdbd306be576f8f4358d885d7dfe965e11f6c9e5a0a4b406599f48f322994d42baf339f86e4261ab252163e9e0ad3f21656269669dea89c1a156633bc3983147d2f284ec0853b19f6735cc1960926c44740183635fba8c32ed51e1a456a8130d5b617f193899512a687f75c720f871173a6ccd0faa3e8fe53217df3b503f5d66d915ef047d412d3e1396ad58cfd8f76aeedd1bf3204428a471c156b6dfcc8c7ecdc5e4a0bc254622b149ea46ec205408aaaf5c7a81bd853c92d7603b7bc0751d8d1d315031bf66de4c1393bbd0a7b46129bcf67b7c225d97d14f622283f75fcd1bb3900f27c79bafa9d6e3d66f659744a080827f9d4cd666be03289a86b19ea49f7ccaaad9e550afdd67f5207aa6e59f2a8fc32cca13916803d1c836e55669e6c4baba7dcaed04e04baf0013fa348f9f4a823f3488a970b52814f49cffa97c77cf6d6725af6db703e83d6b9ce0a58344fa8a33efd90473f201d3b0732ee05bbbf8feeee8d7ea40c72836d3909f49b840479cadb73b675cc6a09caa72bb715e947829b1c086d62f579d800d7e1d23368cfc29f34231f9f757d4b5cc55f15c1e95426246cf4e48e713e753e8a7c6461c10b62036b7e524e60ec93e3e3a2f2313f218350c63b5512ee6c7d6526ee8f9cf3d63fc548ba8992cf40c67d017d52c3d73e1fd6e949d2cf22274724eb5da5cec6e1a36cb5807f37469f0a2f6213c5359ff55d91eaeb2c7bbbd5cfbd7b7a8f5c791683c2841e1ab8ac34ad2de776e068738d541108b08327e1b113b8bb900e3a705e2bf15c098425536d2b7cd64f300c8e53e0796474e6aa471ff180e5e7a07318cdeacf674095a0d1c09857faa0714a4bcef791a9955f6b916fc8d9eef605c0e18e3b16cbc0305bc91b466f3282b109b3512b31aa09766b670cd441e153ee2546ec2e3cd159c30fe1206fb3d901b88feeed3f23cfd838d86e6886a45c8da2fa2ce7a0f27574adc397d8252be58d3e42e874b7acda7e3c3f375259e55106f8e1cac746355fcb613295e7d63e643631048d7ed7ba11d4b4393d4ae46f26e442ef36edc2bde6dc1e33ee202eead81f29ceb7a73d883a68c7df55fb5fa20f31726fb14b8fa82a61075f27ec0d7eb4a25055a74321a3ad8bd0deacf112d438d0b4514d561bd290c37260ede515ff2076efed7d474aa2921c355a9eaceda3bf08cd18ae058d69690f1ba29d7c728e16df665c34524c3eb0437f32910c11894805d8645e8671a0478adacac8f15991a7f9108aafc1d8fd6f8830c4fb709b7ecf08037aa4ec65ec2112fd279bf2c03b10d37b9d3200fff6aed823f05b6150009ab2a55b65cc789061c4be5a8453ec9eb26796af555a1735c61c01afa672166ed28a6019c91ee5556fd2108e02e63ee89fcfc5edc0b26078fc71a4351b32567140d72836835ffee0b1ce7ab16c4587c1df99a8c6281671badaf2cd67d0847996fd4a93ac56feb83dd82002730c59bd4bf1484e77b265a6870ce9e67024da5de6d996f9abe19fb6f54ad1ec5aabe43f7a36d7f32a567daefb969a7234a0e9787f79188094a6794a3d78682b51ee57291213efc7ea295e6143d45e8444603d36a0ea98c5d959cbe3d8cf80d161ef341bc6a11265989696b8bcd96d140cfa87ebe007222f3bd2c2b1011f014abec17dd7714af677f151bfbcf742103e73a7d5278af5d2866717776ec27b318ca76547f4f5454672897eb6a620c46d13a5679d7c9a69549a14a465ebae9c84c5587c4548b897e3db9b224a11c1928189302c55c7df28943a2ea8627d35fd0153132f10b7c314e77451faea5bbf60db3c57c834a7b5f696a1ae46ff252451896ad7927b5595d52559fdb6b4e89b797262e1fbf5a8e1952a47d7f1aaf2c83a8528c0edeeca9f1431139b1863b915815aece4026c85058caaa3394e4c86f98c13f29d1bf514d73806f77e2101806489c281f838e418e17f86ca8ed99711afdfd75e25b5d9b9d748a8190881553b9d819482ae0115deb865c2f76dbdb260692b663adea3dea997f07f5213c2025838828d36d4f6bafaa6d27827213e8516616595643677fbbc68d853a6c5ec520e05a7efc68141e54a0c07b82947a9f20fbff7db66247662570625a2312065a82e7651da9993688eb3cadfeab775f5934ffc666c8ea3a8865f1dfb5e4897efed55c4bd96d8e1434bf1140554dd8aa919baf10b182511859974297123d84937843c96340ffd2f620f6823d55c8524d4238823cb6d952c7cd9445e89719ba4d4a29fa15ab28893b2f5923e67a93817b9d41b9aab6bae8c1f7c7e7df4d8ae73d506079791f56063b788f73cfbaf33208090bd9e63ee6fab8000c6ad2056769edf58d8f75a4b3dced7e9d80a7105c77e24a120c91683bae341471754f10e2dca1a279bd20289b0ff4863626a66e36f0a398382939e2648af8e41bdfead022561e37a6486aab0ed327e41d5bf5779976ad9081f012eba090a5d4c7637e31ca347156aa2da211c6fee450b1218384ed52751b7ec3af704b978afd60635c84122ad209f0d270d08abd8a177eddab4eae91dbd4256ab50e122514c4a6ef04f6d236b9269a49e4e475764ea22e71cdb246d7a03ef7c1ab4975a317515ffd20720fcc0fc4bef4dfadbd7f2c08deb1da807eb1d4118e71f9ccbada26319ba16517ebd77b7100199142a5adfcabc100bcdb4450708bade23f5ed0f07b84ff31b6e41ebde249391a2955d151acf41d24957321d3c89c22060390935ebc7721cc7519c675b6d13bcc9f4356370d73933005fab222306b2742d7afa06941febcf596e650e3324987d720aa7c34fc732a13e927a5bf38e3d1a19be59bbf7c4b57bcac43f4c2d29042d9a59d7506ef59725362b1f5529f416f973df6bac2c202727ef1295a518acad2a213f20400c610e8b91990ca1a86fd9ed8b2e69b71453e26d7d16cc6238937d19e918a206a517a7a1d7bf13071761f85d0aa837884fc9918864fb3ffb9aa122e22b49af61afd4f797f02ac22091be42e669bcf3805775f3451ed6a6056328947e8a4c72ff5cf017e934a632be0e397ea4cdd94f5a63d35a19972303b434f30d230518e187eeea35dad663251c94f02b16beaea73c5ae6b4b184d81a9239799d33edc7f6da46c08f844151fbf6225d24787bc80442c588ec70138af45da58f899eb3051f74d2947d4985aa5bd5b9ac27e721deaa41498b203e0e26b4485d83246cfb073e63952c0dc8ad9d7966287a44f98183b6f262cfb0ba48e0c71909dfe776d0a83372abe04efb927110af7a552f172b73ab8523bba2053beaa9363ae572e7ebbf47921813a21a40143e965a2922d75fec8b75052118d4780beaa9d3c3119fd870cd0cf1726dfa83e447913180dcf3764f93781b503db4f6b85aaf6e4b7d107e2c83598eabf4bab82c86ebe734de43f1dde30884eaa152d2f8ea3001c0163b5b153d392dc47d80953a94df4cc2d6eb96373a12ee5ac70ccb695820013381f4b398c7335fb094c37235b088c1f50465be4ba1cb4f99c267456597bffc7b24073227f9dcfee73a0900a8a8d8b8c583257538fe141a5ebf08002679936070337d27f6c44b13432796923feb4dbffe6009daf4df13db4c6118df5ed865abfbc7c9d9e49e8abb6fe5ffecdaa9576ac18bde81e2d31bf83438536049a6549db7f7bbc9e7ec5f05f7148dfc113d75d36c6fc0ae50ffb38edd6ac9b6bf611984690312d7c8253fddb0526ae4c922f46472211a8df084371bd8b853a624e5781af907b9045495fdce2da4a3c736eabb6eea97c771d2c4669fd62efbd5304f65ba3bf0d908693c4e216e9db76c784426e9c53db6e065828e176e6acfcee2f68fbf2598d49ab23ed3a917a8f705ffd64663f5ce84405f06936189f0e77a4d02aca499546e071136d5dda26eb40fa349ea4ff60f14a7cf4d827369d7f5a10007b58eea55760f46e71e2b3485d759d42db08f1922e54da0b4982904e3b1c94115b14572c2fc9488e55e7732b62b1b706f584ae089871c9dbf7470150d4a8db894afe937bd247dd13dbe18f0c21bcb18088639f1389328646b46a4f27656d4686ae834badcee5f42a9222d32e343433195d65c78f750f680de4fdfba8d3ccc9ff92a40123201eca1c9a216fb81a96475b53fb09568bf1abc2d6b4b391ead3bf4f3d0121f31bf955e41afdbeadfe702036ebbba788c5c71aa77cd6249b6a7257b13850eeac9d5a3632d6137a56aa4c5e20a1566155ac5711c263cdf15fa8a31aec83bbabf3b2e470cf457c287199e2345664e524946ae011e1363921dfe501f4125260d82044dc9f399c2f191c825ff3df7bef9db180a682e5a05fd7398eaac74925e9dd5f90158d2838d5a37f30f112c5d9b6a7c7d21aad64b171cde1050ba3b16c690a41df161cc340fbe8ec194ea8a5fde64a711274e87d7e5a6212b70f7f90906c6367d56e59fbe8b2a27a2100f4ea6e04cf88a2cffb545a8acfd0cb05a39f92edc9505e54e22a33020c4cf6b355f93d502cb37b6459b7099ff6e9f627592b938d90c5c6f8e29f859dc2e05c3faed394cd005b70d1f99229c49e7891eeb0482c7ab66f208bc767eb8b717e2a7323a615a1c4817b3f94ce11a8aa798b8fa8c96dfa73d915bb2410d462ba8f9e3cd864af7d6892a213555c5a73b6cb0023d3b7d59d859bf9528e708e9dddbf6c58ae8a848a7d7fcc896a4052a0147a81d5aa54894a9d4d6851c7253a2c64d800d1941889c88f4eb7b06712c00ae3d76416abdea39da64a713b8d49ae024fb953fce42f2cc69103ae325dbc8e79b395a6d787873be416cb72bd976a6389b70337cdc75c209cf0d62c10b69907d65de919889d844b07c6a2d298f68ee97b5510ca2f94772915ec11ab5a643bc4677b1e00183c461016f942deb8b3c6e3f087eec96c192af17b644c7769170cba3ac0867586cd47d2b2a0f86df0130fc50720af6f88707304bbc7804270ea977bc476d6a0f2f7c9fca4876a7ce03150dff0e0aa117de6a8e509668cb3cfda08a38d802b862af7ab9595afa37a67470fcfb0dd3b16e4c9cc526963d21a7fcb5f794069da26e1cb0463bf05846a8d2c392ca6778c8e9b462ffca1a2708714f8977da0ade74ebbeb01a738d214aed3a8497ff23704a63dc05d4e562a632ff3df8d9059a1ebb1e5be926ee0fc6b874c66bbdc347ddcf10280bed2a7cee28031643f0fe26e0aa0d6fec187d76027d70b9cf61fcaab62c532d656aaaec091f3b716ec332fe01cebf2721d8f64512ab3ffe1323f4185e1b9ab8a2f4cfcf96d0387d121561149ba9447541120783064945549bb9967c095fc0aff758284ce74de68021f22d4df5a97c98ceb85492fb924aa9137d5b8e490ecf5932c581506a458ddd479b17fc0de8cda6c4be46bb4cca9075eaf8c070002120b249d535ca6c81371c02a4dc3cd637c6995a622370a688b5f49914c7d2e92da16824ce0d06dc413e8b373703c180d72a406a2207ece53a8cbc152857bb6272fad4d1e35e560f03fcf957ffc060ccd93e94089575520bed9ecb170f6b1eb0cc82055b70a8e012495f644e3c0454fcd8262225ee1252e8f3f9756eb5de4c6a220f6d244855583a798f28ece02f14c08a2501fab4604f1f7ecfb8ae111f3c9d1e0762aaa2afb4be9f40ba511ca6d3b1db9a14f348f2c4e5882515096e940fb529c269e66b4e0771b6a08ffc1314f1421df562e83f88f569904efa92218a3ba352e213b8df67a374c013322c696fd4a8a029dd8d0604766acc64fbb75e79d80672029f869e07984194c2e0144a07dbfbf0e2f1224dd68d0b22c68cee0491c5e993d946c85dd0670dffcb04ad33e678cb19b80a3b3d6c8f3a6f267d428f486333fd84e61345f03cc80cb1f69dd8cac4ba3469c4ce03e9eebba116bd80700428f4beebd015b3b93dad366494982a48a84d926974a624367c6f07036322fe965709298de069a589ac94fb917e0032c8b88d626d02584b8afd93fe538f44d0d154148a1e9741993835b04ceb8cda5e2b3a9c548499464d76b2892501d398f3a2b2c219e81c5e9adf99504739e5856eb5dac4eed43895767254c132f47adf66b558b08a9e08a19cfcba97e8d8f16567eb28b39704cd5c7d7545b6591fdf9bd04e18480953846d423bb5a5c11253a37ce3f4e5cf70246a88a524484fa87344fe4cea47e57cc67954369577f5d6513639858c67b1d004c1ab32ba930ffe74f17cc5ff9ceee0146c4f7f51e67742c0b6dde2eb76c6d8dccecc26daeb3d57b076955841dc4671d4a9d97bb1cbf25a77e423640d579398bd580f06e8e7c2308231531c30cd334818af3bf692fd17b852d01c0f05ca999805b038c340b48d5aa236b40b7f85b1ae6534689d416a651636e6669dc3766caad8ec6c1d2eb59dfc0dc3365e7179b68f2725864cbfbe8b8b3d4b292ae8802b4730b0bb89c510ce11cff99f7e1c490b839d6a99fdc4da85e27e83e2abc9d003c4461fe8ad4953d7e1ddd0f95109dc53029f3f78605c38ed53155c583eef2eb632c0c732a04429c120839356cf3af7783217b74caac0618a53751013b04f02591618278d81f9ba39e01639a8d43b9932152fa6383a3091d7e2318c82c46214fcc6a813eb773b72e6712d50cf3f14a67ea0b6d784af67a7dd585d9becb04d5f0f23bc04c8dc1d3275cbf1ac7385a054762a3cf4a326f89c975315974f4465f770031453cbe412d19f24cb308eb7d3aa34a83b5d2e6dd5a0ff0a8f27f36bfe2a8edaa9776ab3bc3a1ae7c98177a8dd1f3c4ceb8aade8f8eefa42b18011265696a22beef499112686a3c17f43b7e3798320d20004b1cd3f1dce620ff008a1f950fa8a8aaa9145f12296b1178052bbdc888836411f3cbf6d9a898ddc2219051e2038a1ca39447f5b396a8988413e4b7e80803443ba934fc76620f629567cc7ff31fad9f19acf06c197713894fc08ff24d59493ee733510ed8035ee361363e3c4bb8d45c35cae3e6231a177a24286b8273eb06e246777347a16f58a9390c7c072d27baace1ba51593d1d38c405a03d6402ecac6e646d23e137a69e46df7bca3cca889f5d26d70d2d908db1e42f0b02a9124279addc9abb1c60e925615f8950f27f61351d32a381d3782c3c385b3b62fba36a2c07e01c80d8670aef9452dc9898adba4f5c5f151392f2e59ca5d658cc46b013604e24b328af307378f683622d4d29b9882a94ddeda8392322a276ed35c6471ce42382e84e41214d4c2638f59ae91766376c39526b2a8f39af1192be1c835878000442336befcfc6a39b2845a9a00ecde88ff11426a29e89f94a2ef4986603a0743c16c69d1ea92a196271165eede650ce2201f8c4e3adafa8e7fbd46fc784f1cd99aeaaf213f8e73082f20d39f803a065d81b65cc9caff8ed7d739141e23e0278437e5665365bc9eaab51e689542932605736dae32a89fc05d76a177996838a093c7e5942f84df58c52360eb36a7a48f6aa8ea3eed9fd3660d3955c74c6f310ee400d1d30b3aea49835a53738ee27ced4232c2d952a5b61ca7393146448319627811329c327506d383a95c089579f6f8e635a045a581ecb4d7450ddfc844a6b96c64fa002239ad670b6f913517b69dffa07627dc468c4a9725e5785a1b3361d97c86838bf197ea2b64ed29af82671d0c938e75f02105949abb75e8fe80faeee5370358c8446372dcd9fc6d30208173bae5bf6dda898da8eb84b909f1f9a8c8852c7c6ec43ceeccf08cf947d2a85e72c99b69f8134ecd9f64607087a577cc1bf76d2ae7b74aab73332308f43dfb6ff2468d4b2f32e84de31559431d7d954f260dcfee0d4bcc480484cd20e8429316d4508dea754a63cc0bb0f58136b903be14450aeaecb33a99be86c8fb6fbab99f7429774451d066dbd911bf392efb33562b1141969a18f57a9e2fc56df4b9cb481e8b83ab55df3d6dc9b6a2b961f71346ab87d12a432f85a3917ced413ba337507190f1d764170fb22aecaaaf540851ea2cba33d93b412cb65a649dc5f3b0e16538d68d754b9e3ecb3e79d1c39673f3270d96a98b815feb5115758cc9d75fafd200b4b0de6b8a5e06bacab72584e6adc79d85ea76b998b0e9f4f25d30af8cad29bb2ec948a7c538947c5a66f5848b2a21f465297307f098e44952257ce1e937e55c2e24137cf857a471eccf580892b7b354c762c93e2a34df168320c30511d680924c4387ea99c07c171a10affdc3b7260b14ea36ddd9dbb40932f3280655f3ec2818117ce342481f55be27e6ec84195db870822780a89462bf56bf3893b8d22c588527477e127ee6dfbc0af651dc957d92dbaa4145ac9388d35136be66c191d2221ffa23db7ea11156aa92925830e89f7ad4553be528ed7012deb39ea3051078e8e4a6cfa9a9fe8dd9832dd326d94120658a7b7777a6a4c92ee271311a0809a675137b0fc6355a51810646276af4c497ed6e8b4dfc2b8cb18b6211fd34871dd27a42daa84f438af55607650d883e7451e6b0a5362242ce2e6ddde2ffae71dd342c3c54b71104a3fa854c6be1310b86079841f991b9dba4f56263a36f0a2bd6dcf54a2cb6372ae6b8c42a11e270020ff70a684164d0661d5b247688952f435d29a7f69a219e85a9ab99db1a4a1665631d6f66d218679b42ef0febd6086479e16ff06840a7f09d091e71da83caa1df83be721411aca8575ac74934b29c7eac8540f7c67c156bfea8114131131d908317b74a43466545a0a81c1120db2b21b929bb2d996ab2d475675e7e0f843e22b8234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d23e047d01c0afa8f190742b6f071c6e2012e9cfd0ca1ed13a26f7dfc4f26d2f9cb0da5b1faa3f5f8c19956c26c42c826952db7b2a874dc876fb0a5b4fde117ad298aacd136dcbec13c7058f0e7fc6a495108f3e9db4c9505cd02beb95b7ac99e10028b3d6f86f28be25181a272067e3cedf0928348e3fed00c7229f80bd803aa00477e800485a04fe133178453d56fa778e36b2556d3b89e9a6cad1e7842157fa5e8361d0445f71d405e759649850accf3a057be210014907da109d1c26dcebb38b2dbacfacbbe359c02832550d1d9da0d683aa5e86caf9fff0c5b9e8e6ce3bdc536539260d1727a5130417275ce1a92fb732a77e1d3ae695b944f4dbd4bf0ab4c25383b29decdd26c56426fddb8b98a5dc068c602c339b4f7561e2bdca654904106e4fe9723b2d76c8e6d86efa422ff6cbcb85bb44f216841651862a22a16c2116269e1a50ca3bc5cc05f009b03c9e3170197c4ad2d65bad1ab25b9ccd049fff4996ed0fe2ebef225f12c67e66e78bc80f61726c76fc33cc0aee3a4c7f252b7afa6f68bf11026864bcfed6f4b45b6f79b378f525a00e9e7ec91510061aff864ff647f80918d719be4c3c42e15d8968d56d4177b449dd9f05000ed5cdfa73a1a1d9cbe4ea0f9188d7816e59acbfb4b382183510c20765913970cc03f0a258466409a1e3a13097682ec788a0d708394a9fcdada6ac5fb264ff5c2eb0ec4d13be5ad677ef36640243dd9fcd6ea536a60cc584e31d319ae2b9d2ecbd5f5da66669f0f048c6e95ac8ac198b137dd938e55e1dd7e05072d2586c2623b633df4dfdc6892e8d1c5be2a6880afaf3fae99101a28ffba2d7d495da39bde0f1d457225ed163cea16916a2e67a253ca48216fa1e6e260324d3377946463e29a6f1aad7e16c4fbfb0693986f0c10454c7b44c3db72626796a0808befa5d07a77d38f2bdedc419bbc94bc89ae521e00be3fea4c2bc1e33fc7b4bf9b8cfd87df2c46236efe84c43813ee4bf04de8c65e95e9100329a7620abb09423029c544808e384a126691c8452f2fd7e94f2acdb0e8c7d9d90bf882db4ff2b1a4a377256c93508317c2d8216b8f63dccdbbe6270976a953d3c0b62ac6725e760c7cf8f68fec8fd73f60583d2670e993fa25298639d89f63921d0ae7e8bcb1094a4e2ffb7460187f648cc839b7c101c4960f679e43984c67394313693fa2834820ce9c2ac261b9e4e3f2d8fb5ba2e19225e6d36d54375ee566999840787147360b6e99c77b98cc09b5db2670333420e1f072ce18c79dbc1adecaae3a9937c53bf328e1c8ac6ff1cd427a0aa668be7f56214439269a08215058fa7d718c5b6a5a4ba3ad3b97589f7e8c397e3327675b64a895abb21fa805ded56655cdb39856f6459db453d3ba818736b852ec090278e1e6ad9814f69bab000367e33e6aa0997f353e9ace4069f08ee5f125f72fe8842930cb42c8ee450dea8f983675c7ae4c03c3f9bda7708cbb3e0b40e7639ca18afe9cb77896c5a7ab7905cef16e224c12ab2238606ec9ad07f90c6a9ceac0734214b8b17b2baef16d62abb66fbbce337d7b7eed07d10674eec30369bda3d0d70bd51a85384dc84b1b9d1007ae2cdda8bcb3b03d4338479f016e639e3524b5ee4cfdce529665fc9b6eabc7f7b63227d9dc61a681bc916558a8a9ca088d4ff23cf8092022529b8c70277be17e64db50e77f0e8e563b7c678e2655245b3eb5c09469de8ffbdf014802ead7aa8e5edf4a84d568b390dcf6b5bba20d086338928889d6c28748004988290fe531987f19df0d807bdd41616198c73614e7158ab000ad594975bb01e7a0d2636c16e77d44f1ef98ef36f839ac000b3e212da2a5b89f0d91d5e74db5642805abc31696a4faab24e12f2de171cf94ddba3d5712f7d92ea728e278e60b2872ba99647b2466e7240e76a75081e608a206971aed280d27d4741686b9bf04b2d02f8141692d75e6d31a940153f3b956eb66752285d24b8190aa4e83a1627cb5d4aac7ae022d2c4ffa1759cf0eff67ff5d60df492eeeefa1ec6378286021ed7ae90c1a649ab8a5b08f0bb49fec014a98caabd5a6f2b5af8e1ae29908d23d66d3c7450ecbeeeefd6f44a2dff4820c1d328e7e1848dd56405f6ff0a68c00f387e3728bf39b2474548e107dde4fad781cb0df1ee6f17f4484490086c5010a63a2aed750d2110a949021ea8a0ef7bc36a29f07591823eaecf80202558533a96c988f1a2cfcc02706e8f48295e039576679e083def245362b75a937613c55c31b59ef8a2667e2b67fb93d691cd0838cf2a646dea6f50fc9f37e89fb674e46cca0962b550437e590a4a2ef1b8980c80f28de0f4cd5f0863f73784299ec6f7da0cfd34f318f0d64bfccf60d9cd3836943dd3fd5da5a2aeaafac2888a855cf01f112f8f650548cf7850659033a6bcee34a38fdfd74fca77b3273a29df97ec289a5512e00b0b89dde036d6a2b7aabb267f68a5e920612b9475011eb8a590561bfe1421840f13bfa0462558bc01372705d338786c006c68847050ca7883efddf9ab9e2cff55f23a4be90e903bdac1d275dfe8df8c11e9777fbdc966c4055df17c460cf1241e4a1d8c8555322d9f5c01234471932d522cd67af3431555440b0c12c17f2ca8b4054cd93bf6cfa3e7dbacf0153d3399184fc30902d2da0d4c4b2077f674c2482e75e19ef9778d780f8d71b94ea58317988667fb84be360a6ae45018db41888dc4f3ade3edeb30565bdfef9e54751f5f2ce040a8ca92f7b8f2d03ea40b44bc0db074e910ed57705e92dfaccfc2a7cd3d62a098bbb2762e79c438423043fce6587fc34eec805f68e711417509267244c629bbe3138b1df445fb9e037a9ee976d08424143f169957d09ea4f1fe7384e31e38260ad5e2632c6d543d0cf3cf13a5607348b20fad7762b3642e3ab6fbf1b403532bc601f82703f08026297c37f7957e21b7c1838f1c11fb67cf0e954a1da4dc8c6636f77f8a0d25e37cf4a4e7dee23dfe74b5b77da419e706f3c53b3b7a7cde31e8544e7c105f91d6adf196af7b0af7c4175e8c749f2acfcda2ffb59b926bb6b665182b0d6d6720afd28e0766ac1202b3be14f983545dbc9230aad0bb70625520a474a8c54615ff3f5c298423cf337ec430e1a26272bada9fa2f1bd4681847e407ebcad1550977e9f3cad65748956ba0935cb73a86172806afbda84ac4b9eb2b59e23f4d9629ab314dd110b005ace5528671c97dcbfbb5cc667524fab71c3010d368aff4f6380c9d04b0f0e8ab3356d206e8748dc1f48649ee4747aa21c00613b317869c05ff14a570effd9d331f4dec93af4f0141ab2dba9883175f74c1222ec46f5280468af5b1fef0fbaa50dccf3e9a717724e399c8c0edb41bc06c0314139c0fe469a84f3a3e74c314875121a36ef377617616df57e0cc4cb6d08fd428b9d509a1a0f2976ff6a598fac6d8e12108d3aac7a028fa35e2d546e67e0df381ef0893910f749587f1d9bb0b8093712e0ac123ec65607b82a83caa8ca2a11322caa77c49fb8ef005188ee8f6848e505709ee5a89f22ceb8c99dc8fe41a6480ae9e7ad6570f398d218c3309d8eb283b7127f4c82cc8d92df267ac8fd356a2aa574b8eeca40c867509c8649ba4d076a1ebac17503819c230859e0a0e624793256a86b0488f94648167007fa1f6da99eba1a0fcf224246e8d03a2b3bea3a8fa1574724ffa7831d18e32139f823a9dfe4acd77fb3201b95f5ff7763d2d3e7136344ded18e32a365b849ad43e1b74ae3a62955f000de80484ce0f45ed54d20f37202ee108909b28cc84ccd6a789dc8435d98e7dfabe4c11ba30d266ede5f0e0e388ed13a984690c333568ae87d0d333756394c19179e6b000b2fd4aefc0821e7378390314f0f6ae381e89b4e9603ee951deca34dedcda97c2eebd6f3facb169998360468d0b555de2562d9bb61626e825cfa6b8171509bdeedd72ed802dd0ff33fd18693268bea1b5f7888d185e7cacdd599acd804ce757c32c9a0937f9816d4e921686730ae5bf4b58bff02632ffd68854f731e4cd20ba831e7cd6794e47c61cbcf94121a2f93fba097f97e2b24822074a53798fde11e2997459d372f46ca69e555231281416ce3a362fd2583b5ea0cff584fa524af5b59f59d921407406112dcd90d44afea026b58b1a347bb1b38a6dffc764f6592858d7f2f6f4e236db42161cb37506dd58109a7b6c35e364576ab1d58ed79a9d861b183f0f11ca2ba886ca3bbbf9f6c5f70927806220deadfee5d9600b25be613062d9e5650303a7f8a0c4ea9b298ef1175c1011daa1b3acdbeb2e9fa79714f981854e36ae9673dcb33ff4b58b0bcc42dfe76cace7556f0790b383b38bea4739b9814a351d6829c8d88da26e2d6f1949f60eeee6510fe524c350d6431bea93aab3373719202eb1dee8fe2a6ede3a08d591f8d436e0d6f2f96c546575ce9edf8c3714840ccf6abac12be49e743b7d28ac11b7faafde2853f65b6873965d039f3421d6b73db81bbb22e112cf08c03cbdfcdf4096f6861e5f8f6b176ce6e8ee11c8af28a36b56c709f8ffd15c73889edb67dbb6a76c9641e6b7740f6956829b95f96e071da97fe5ef7021ffd50031739ec4e42d1a70505eddf12d257515b8192081ae4488c169fed989bb96176226605f57eb0e861297d7c172e3d814a2f967bd8edb860f0ecd780f1b489f6530e48563ba595b118986f16ae92d43ed51671be540f9b44c735574930fe7f7d08fe0a97e5a99f8fa9bf1b49bf8bfa510e8067d4ca68cae06dff23a09745745a75c3f4fab2d202a8fab0f69cc7159de2b9e2ac09afb414fdf60242be9250718809129e45ffa78905b11eb4ce5733018640ad9ac848a9717dad98c2ffc8a78eae910ac55dcbfed2ec210a0652e7bfdf84f269103490a494d7dbc80c252593a9eef79d58d9349f4f7967893e225aae5d905dcda3db9cbba5b4358438d5e21d116112f52ee5acb12557ca55665059438341e45ae01d14a3bdabdac877b0527e3e5d0b552376c2b438d4f0b5bf98a7f8214df6b47f40979da50d4ff280272c403652c23ca4aaa4aec5ce911501c2d4fb724b06358b0bbaf9c078d350be4da8bee6abad656916b342c991d1d6c298d433a0c9bc6bef6c44301cbf23caaa8df098b4a95bcf76cac3334d10379cecf460e855d3182ec31290c986b705a87ec2ba9848d7a9bffa3f314b6b61cc2b783e2429aea138683405647a01f0149b35c54a90462dab9e4d1acfdc0ad0350d5efa9c5dc57ab8735b71d7f8825586ae3b9718698ecf6a1c30f15e602dad5aa908550a950302efc422e799868470997f5b40e87d08fdf4c0c7a5d41176d95699652d963cc736bfe46ebc3fe7dbc4929dc4418db4ffbe84adc39ff51c6cfb8f3bde8bf52d192a1d561ac43e380f16c5cd3ae88f5d349dc31b96b99c4c18b3e6e1fc870372c93f1e0d416bcacc314abb1f1334084773a7347e74ba65834da47cdef7abe70926818ed1d066e3f2c4e13d9f192651ffc17abb99bab1f551308156e0820ff5c875fedd4e10ca91062bca623c50f8bb314f569f5987a4c11ac123d6027910d6cf276ccfc2e6c46f44a572e166067059a3e8966bb869e246f6842832ef4285356d0080c732e955bf8a535c438dc379ecbe59e457b972c010ccf72cc64e524ce3dbe054de985a48665953b223e0625b9ec7dcb742502754a1dadcc2d55fbf08528d2f53a5ff59e30724f0ae785a31d4b54d1d57fc26e0fb08723241fdd735ba6ba20b3e58069fdd857fac1ff9b42f82b30efe7b4164fb13ccecf857d4836cd97cc4e0dbce6c310a4b394eaef5016e6fd99302c91ad55f6e392dd86be40af2418803632a436b2edeaa29a3d0a9db1ee3180cdacce8033367d760e0c2b19be175dd23323524fc21a1c5526cb088ba79f5bca18d151e834974d5fd7c9364f0728cdfde1b6711a9cb40993e63a272acd8c0e9180d89e1efe40f0f6c8905257e4bdbb379f9e28f6de8ca362f7af9ead902b6daefe574ef4fa92f7b1e7cee614ff9164fae93cf621fa3459877f8e8aa52449cb0b7b071d50495625be5eee77e11c937d6f5ce349d2a9e207c9a9672d76c12655edc28657e3a1ab0abf02b9e87d14d132503b096af95fd15ccbbb0993cef2758864543efd3b5622fc59fa0b3dbf7df0b3a570423b577a56d5ce225a4fcd8b1ccbf9a032c3630811796b6d082e363ff72edd40aa4af552a47b180ac9aba7e780a384cfc89c3fc5c059eef4033847734d40f92a5bbda6177463e913729bc6f0dc5cfe6048251bc41f8ee6d10fc09c453acdfd3415280231c1e889c42260120ed7058d964e8c9fc1640e2788afdd5254901632c1d6270f433c09f72a34d3516ef56480b6d10c33bc288c19f08ae273fdbeeb5dad2faffcf09d2c451d7e8d748b0e29cd7807fb65fa772517c81f6e5f161327dea102cf3208984e5c6cb615b46d28bc0cb66e10d530c88efe1f9d3c1566b4f51981c372dab90d02e53fbf353360c7473bcbd3d8189f20abf7a76caad487be012acddf30297fb11119308ffed8702ec4036f5524d7073274cd69d745842070ce76047fd1a378810ecf118764f22d7204e51f803086b65f68ebeaefff9dde82b857de81edf53951f3539b08a572b8da124faab968de18116a4ae7a81f63293a53461100c6ff4f0a01affbabb478ae82c7fb55c02d563a74c2fc12c6b8b44e98dbe0ce25ea2423a8f2277a707f03b2dd4cffc5a2e28adaa9ad909e2329b982297ade08671d73c58a566ea1d5f2289a3c52a9156a919b49fcf192676067ed0062b6a99d43feb4b97dc4962c71e1764dc46720d06d8939e1f1067bc45673ad65b7f1bda2ed3c5fe06eb9e701eb09a7f5adbb33e4feb647d04a1d45bfceb00255f6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855aae6cbe6617a661f1cd6c34294b7ee77ca2076a417a2e495b74513a42d109336542a9c41455beea7660f57057b78b5dc58a815d6be6f7588b72e996ab001d5b0e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8552bb98b00797c9531935e2c444256e7fe0b933d23c77ae5b55a73adaabda7e97ce3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855c160105c41d98108a44785eb7b94b709043014243320b19d7201f398e350fe58e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557a10fe943f1b136b9cfd3f24da219918ce107045cc2e0610dc7dbc115a3deba80572895e4a53ce17dbec7b4843081f31308676108eea4f41b4d27365aa890a247475b628d7821a1a45f672fab34d8a52df053ffb41e254721f7c8b2dda1cb3d4df84057a2ba980fa9b14aa7d71b85fe58c66956c026727dbee687d956cbebffb07448eb82fa8e6945899ce99cc2292c79f47daf73f6cf4f7e1d3114dc5389f0ee43e7020d67065497c17a6fa4a7973394dbd2124c88ddb184aa01b10cd5e2748483334808ab40b21729a0c1aaec92bcaa37449d498c9964c648cbff9f1c439a2225682eea10edd7bcefbf09bed85a7061f51b63f00bbd4a2595798b1805f77bfcd152b9bf1ed0f58984c45a9c8d38fd38e5389f1a6e3316b0ae03871327068a20fafd35ea1bfd146a78e5136d88dca7e17115e1fb4c10ba98bc82a9bbec2c0156497d60327a667f7f59952b5d1e135ce12fb11e274a9ea2d21fbe2aee80f679814f5052476c9e7ca67c3768388a8a0dbb9222e72d7ed2e5f42166382920d9b46d012bc472cb04df4a81aee68df7084c95f069ee437d1238b532671a8f5d6165b2dbd4042705136e4e297f3bb7f93e1e5aa6eb36594b0e63c8a605ffe523fd4989793c6f26619ca013deaca58743db0bedda694db068c35688cbf9016dc2df7a9c3bb24fd758e95f4d8cd3e86fa5dc11e8e989c4e13f2611c595d03ca7aee1f9620687ab212af2298d41acd657cca3fc4d3d469658fad39f5dbe457d887139130b6096b0491a18e3104c298245905d7edd813e4e378045ddb9fc92767338c2309ad831db68a64a30b71cdc33b5396caabf41b6b27c350b388813891ba6482ffa1315d956bdab5518411663cbce65aee2828c784b0684f81a094c5667c0b5384ae979f37ddb3943a385661164212c59527d178e6dfb6c92065c51c1aa8121c1b115b0752f542b34146aa1333da4ee0ec11c232b60fad7617fcaa8c4488317c1202af4bd471b72243e062ed0d807bd6099fb66b1042f8b437a1990440c37aa467ee266ab0907864c4a93d38f1d447a3619a2442641955847283d71ee5e4dd9378b64477f2e7a21fa6b2b73bf19e325049d186bfde786f1182ffe5894fbbae65fd410d1b760c54bcf36fc45178be00366e766cf24b855e9806ff746350cb0c9daa329cfc0e8fb6b1b61e49aa8169bf84c85224623732d75328a9c59f5a2a5e46aef5a443de971df651e434ab3864023c85ab08727f71f5cd7056dfdac01713b20b68f88883cd8d32a326ffbe3e9f8d9ff5ef0d7177e6bc2cd09ef4274f8fa7acb637884c4acaccee534cdeed820cc2755689a309a11256387ae5618010524ffa14e011d9885cccd54036e752684417f485eae51c53bdc670f075494e7dc8852a5ce67d79f0f221863804e69ca18a6ce3dca5a1157518f9deae6c89869eb8ab95cc08837cb649327e7cd3ff60b1533a07f9f1f7a2fb2ea9034045b0f9ad411c76ab970820f149cf8373cb3529f8270e640a1d6db9984dfc9969c07ed9d9ab99b714e88da2a20b572fad4919ebfa5e5db0e9923bf80859fc52e8cc019de731e253708854f2b39c37fe7020232fc0f07529a6b4c7b51eb6cf336fbf274c38c4e67be1f7a21cfac14baf69abae798dddc863cb9fd50e0d3d451d6a3b6ff687347b0846586e4bcb1b488b31a918ad05f57a1f71e26082a97e8502f49657f5cd0907172c1b766353f9e7db2d8c1df377977ac25ce264d58c80d9a83d728d0ce8a5229b1078f01ac7256977bff8c5fe5141a5aa1b070186885cae8ed4b79b8d4d22df809713500a6c98166e50d10d8fc112e1eb6c332fe9a3d9e4a92c43616a6da1983ae159642c10a8ef6c9e3eb9362e0f9c97892e5df399c49b8602df2e62ed56cba728f1ce3f550bd5e244237cd0f30a90eda57b8b00cbc24101632221d8c50e4c3f8be1366409dc0163c7ec0656e0621b55bffe57a205351d545076fdfd64b3b22640fe4c7d6f582fbb88419d1277c954c103c7f1b52194661aecb7799a7e020170338a7cd2566b947928a845595e87edbff0487d98cf2471b55e84404d8c75e946fb1afa65f12b251bc1f6f7912177976a4f01f1190b623672509e313b3215dac2e4a7c5129350161ff642782faa42d762361be70d22df0d4b12dfa6cbc5d4e9ae1d7e13e0b70e5424b6f6e401ed86076c97f83370d50b6729098402bd620ef53960def5e9f19213b908550af0da5f8581518b8889c5e66f9726adbce574e80f27078b383321c7356e87024785143c723d1d86ebf69e1f93da88af750304b01278d15d2e1bc855fe99fdedb3db9dd429e6f7c42bfaa82a76a0cf1673e8ebc7d4c3093b7742c11857eb0ff5a83f9affaa7cfe6f60d46c066f2dc42a7b7c26571cf162a81f1d8e3738e645370650dd7a62f75f6ad661a4ee930383a58d4a0ac9dea8e6c412ebc112520127a5f74e6229133efd94bbe007eb47cd18958c8d6874857763a73fc8ba7cd54a003b00d42abd3dd6984a10a588ae9e060424b9afdd47feb0879ca5270e208fc63c958e4b3cb2ce123c86431d936c1d8358d8db3ed955af7fcf1387a6bbeb3e6bc3a0759d08870b6661d5358018d500bb793a738d8b784bdb7eab8d9a2200aca0fb74225f609885001de21b1889019661f0a9c1bfc2e9d6403216a922813b805d377d669b443531b851c7458aa5076be331b83fc372bd7a1511c839258ecfc5f0a282f025e9f30b480cc70ba6d939db0b8bcdaff42dc1132cc77c9caded97d798d72c5456676fbd769c95c5470cc99fac694168f3a308930f66347d4023af10ea57dc501d1a7a2882ea9dd7ae2209eeee5ceaf792d20f31328e5c0edd96eda4b1be30cf307db518c8392ff0d5fc6c94a733941ae15bb72be8415adb56c281170002c80cfa9a72799604ed7e3ce9e3c449cc2cb5147b8d32d8a5ce402983c34913ec72a61995fc92076d4a4230f94037cd6871cad263cda9cfd7b83bdd4630422d3f58897878a0d926ab0858df5ec1bcfbd73de19a0712518d2967e84c4073b07b41f8529b6170e12c8ccc7cfb5a820c7d96e9fe5d81f5e61cfab56be52d3981e19dcb59e47b59ea46d04a9b9c0a65b63bf734800ca055488638868a22db4e5e767fbdb6806f8fdc27567ca8d0d33a7aecf1a6f4440929a75cb63b3766db8e573ca524b6194b141e19aa2dd0b588444a90ff7a25849a21cd0e1b6627eaa236645a281124f8e50275afeefe91234370f33f10dba1171d2afa56d8cbe7574c18cafaf74457172a81ea69a39454e40444504477a6318d3a967c1f2c777163f435e468d11d59026c289a7d0481419fd54f47601271c9e2ed3d22d4d694769a6e44b7066caf1e9a9c65dc1d9b0939d721d228f84326095d723289c2287f5409161cfbd0fc2bac2c1f523f232cc8fb9576a0e1fed75fe08a6050ddaff17d9127794bf2d2ab9874d84872a4ff723c19b57974c9c875a014a2e8deaaa2c8367e9eb48fc73bb619186f31267406d16684c8f1c0ce5e834db237465c21b9e0b9ced60612fa9dcad8be1afddae5b598d5f2f4233c17951c4198ed18b940bb93566ebb918d46801eb106236ebd951539f77ccc46485fe93b8abc8f2210f62af517d865ee282171ac2888d90dff2b3232558b03fd66286268dba399b34821080943858d8c34bc50af8dfa978c38341d818844e7989701be588f8ad464af638f4f1525daf1f71ca38f67b42b4a8035b7d5384d93a02cd9e09efeb895ada40dfd9236e94fd10ddc89309ac635005b707f7e2ec4bad6914032dcfd307dd0e1a52b2d13e64bbaa7105c30e5611ac59a0050bb1bacc56b8653c1a08e12f45009319633e60eb1ca8cd9d060a50e9b54c35b8527cd67f905c6fb41eebd7136c86481827157110f041792516b47dff2861a0bcd9bb56caa0de6b4a55b49f342cc87f70e95e48e04c217b1f258a6c30685aec7324880cce7de2ce07d954172f1a49042a9db6c58e065302ded387164725348e3ad045870c30cef7a78fc3190b5547ec489551b165ed56511b0b1c45640aea35ee60b4728335a7c264526deeca7967d90cea45c0fabc1d74c02a65b37b3d9ac505ec85362cbcb427e297227e3f3e059bec361fe6d59e60cbb84b118da265c0250d0f52b5ded63f2c7ff87de61a6023c228b30d69a1649de63ab1fa5d91dfb28bc71eaa19311b6beb6e91c47b7298158080133f746a47b37fcb9dbb1da3f98d58db0075d21b1a0cde21290c5d627d4ace05f044f937da3c78c0c526b18f82a97aebc74eb7e44e943704c63fd30aecc3c3b748cff4fe107999bf2de46f34f1d52a085c911177317b204aa3af0964d62d54febdb6e8eed10534392bfcf7a78e28d3ac4c218fd13238ee70d796cb77b0bc0079a47ea2626120d1dd4222c14779b71a352e239aa80536aeebc1e742cf552abb77598ed8ad65ba53c93fd6564c6ea38546ee7851e120864ef8d67b210fc29e5e82424d649e8b8274e3e4f1513ff8d1c8122b5a496969aa68be0e41d80ac368b2c77cc44fb71edf1685ce2d6e030dd81bce11ecce4ceefcb9a6eb0d4d8c50fee3e82c0b42ba5c4981ad6d05c61968c2354d1c8b492bf9fd03cd79f1e950676d3b417ded0c81f00db30ddb11af48f7f6497141ef9e2513b00ac51731880d0cbe606dcf46dd38715934ff674a7f4c620e3b1ed987a5076e9c6437637b3b58a8b0b4c5ea7a601b336653ed28f97b701d19433f315827343cee14d1214080fb2684e1e911db180ef500de4319ce509d9102112b1fe6eca13289ef149c9fb7824b42789e3653a0f89c7e89810657ebd24e07b2b53b4c5e80a68479c7a75e6a46aae11ca5ba4633efaf00b7555a97f122ded97d4b01054d98d071e0e9b665c8f31b43682f3c12a02ff0d93eedb31c9762911ce51ec49a09a5dbb1e4efc101c9c594b76d09186f84d73efaa40c3e7ea30228b0e6fa2f6803f3def27702a0c61807ea425acea87330291244a82f399815a3a2488219a4cdffadecaa47a6f574687c8109ed74c60a47d6f66af35a3f3c49050cc9a4b78bea8ccbe592c345baaf647975b8a1657350d6bcf9b4a671fde2736651a84102cc892a662637d410f9400f509726e08d15de0ddad2ba79cadec8326c79c6c46fc76cc4153f18614f5894562a6e387a2459df5098b941725b0ec30d04e39b47fe95a07bc1409d1fc7a5c3ffdd10b8f2726e167a99954ef879f46f3aff78a6f60e61ec0dde1c7142eff25b5fcecff8dd21cc901a2ea145af12d649e2d77207740117d237ea33a8fbd386dde2a64d1c815b51ea9149a98d923beaf421f19f7bcad856e975b6a82bc3a33102901c78873ee134b806c0c1ff06aefb6a08f0d719117acef4fac6071d852c5f2d60b4d0cac96d4184cbfe2065b406566a8b3cc11839da4a99ce7eb73c525ff9a8a688c5b308606f05d6c43fd66147c10f8e35234a064e3190641238537c2347b45c32fe6f08e65598943235ccb62f3e668c3ed4284361d4f0ef5c69f72ed5ce78bfe86b49e8b7245c2a6e7405bab3d5588048f8b1d2d37b1c3bd2da91fc2eb04231d90315febcb3ff632eaa979f2fe3f613c53a2cf88d1c2b1d2c9d5869c8cefdf35956f04048b4ec092d533fbb8eac741a64dd2f24532998a092c90571e726b7501aa3c5c2dd9bd7385e954077bc75e1f527bce9b0a13bf8730884aa70e92968d99be3e29a2643415402dca017a9517eeda6a2ddcc71d96fc0aa1d66aed5e4273f19b2f330226e2f93526c48ee0cfd5ee48a18567d03fa4c7ab69eba8f8d9d88805311ead826f75346f9a1dcfa1ba4a75524acee1fd48aeebe9668e2be3dd84e39884cc3aa79c3617e52422fd5c4d611089a87244e30674f13a4d4bd94fc6216bf96da8b423f10a439e72865ddc9b616320703180504b8bf4fa25bd5629bcf079a07ccef2677b81bfa5e3e5013ba5c908aa6e277e3beb011fb24e0b639f42656cd49ec19c277496bc56117502c0246426b9781509fbc19055ea5ca41c84400f23e0ed9ebfd50be64100d87b489d3d851023bd61c1eb32a65fbca145ab4edba844dbfa71e529de25d2af0488bb126d361e7042bae17a9cfe668eafeefb9191aa4dda107ff961a353bd9a8ca9f4431408067f711a82187d97287f9ca5c2c66fbd735607a56bc2277b65ed0e4e37efb036dae58ad725ac156de6623a4d325bd70e68c3c0422f3d64a511afee5ed05465c7f7e13605bf171373aa60ea7ec8b287f26bcbe32ec24c20d5b4e4449e0bec73a29dd5486feac38cf90e3e810958b09c675b6181ce203b1ce7ebe4dac917f063ad6120ebf9025997914138a8aa30035bf6001ae97d7a566e4790812dfd07aa26853d6cb95da455155ca77465c8749229c37bd0736f93b5899da9c41c21cd102a3a5a42ffa2be8599308fdb962bc7fc5ea15fbda7cbc1e2958244dc6892ad6b8dc42b1500134f318561fe8543cb89f28693fdd8ca54a28b8062070001f300430c7aeb0f8bf737fb8502d425a7bc0f568cc5718ab990bc67057d6bf399e27ac75574cd6b5a515eaf9492be5b03667949aae1123ba6e8b6efa42efdba5fec67c26231cee37716519d6ef5f240881ea12b7005094dbb0f4cf14d9f3f754957d05952499365c720229807ac67466877fde8a8939bffaaae7ea379cd40540fa88b180f106661f4b462963baec8c10d905a50d96697a3f74fcafa60298d9fd97ad7180297515291bfd25f571292fd7aadbf77225c2ea43b2082c499bf01d54bce407b01bd758fc29f788428c04b8ccb556af17456ed6dc0666220f1c30343f310e92522933f889e2f65ee2cd18a2e4dcf30b9e078a9d549e6d36289f5210f9d08b01050cfc867a5691f6667b25a548f9e50516404ba18ce060e89fb767141bf104768bc24bb34e3aa207d8a1ae267f0a3679f1dae7b189a36b41082a36fa339a645a14f4ddd7c6d5704bb1afa1b2a558580d727f64f113a657d0c1258f8cc4c2524f99c2379ed109d569aa0eeb4a592b2990b0e350158060929de4d884a4678588f51717ecd27aae61d9ffe390717204b1ef45417ea4ee90e096073d1be3c21220a5da75301faa25b4cd4d72036a25c6278c131b046b2afe54ce099f9edc57d04007663706aa6c8ded8921e4b0b596f04cc667a0d18f360c2e0e363e863c5e589338ceea567453b7a1a8d0edfbbb52c6f7b387710c14d64f8077a0289a8795b42a9150416e9c9188f844f6e237c43a1e05f4bae1ac856055bea24c0ffa021fb821e715183662f1f07405cd5b0e5094022646787ff5da4ece2caf4cd7282070c2464bb9ea4cec8c506a1494f7bec5e85af8f0143632c15c4852791eace4438dd6265f90b7ffb7cdfe613360b9bc5f7eb496073ddad8545b2d9aaf4567eca85d89013a2246989aa13e099da3540320a6252e7e8dada0c0b5c43361b0823cc76497508aeee275b309dd61c2480adf6086dab998fd52e5f30ecb735923418d83326b112a80ff5fb4b7dfe3afb662e83f41d2836e9bbacc527efc4bb05ac113e421cc3d829c86ae47d8825a7ab9b656c7cdde9d13c9e01068bca5e74b6c450bc2be7c4f83d580600e9e11d215db08a5e6690552adbe2dbfcd37d00cb908fc7357ea644a846dd6a3c6427ed45877a8b5d1e87da0ca558ece8c82d3a5d044f549ae001ab419f499b383d5235bea5ae491d00432139637163077006d751b63ac5668933b43841b419a544919ed5f203677fa9f80813a57f850c31429f428ebe3a8b36cf67b9e93e9cf760a15fd195014280329d14354e68131e1cb3a7bcfe49651ea3b57ccd87956b12ab935b59e9cd3bdc6bfd22f3291f7e97d3af937afb21425c5841afcac1186f52221da2d85efd29dc59591a7ccef98041ec600c0ff97dea5d06874d6293a5855c98ab4cd28b37babd810b5da50bba48430eb14b1a20fcc5f2e96689cbf7b193738ed6a02953674a73043f9b6e0d8ab8812bba8432be057e8bc7a54d9084a4f09b07c331e25bb9f3addf836d0f43bf13fbe0eb4d8fe401a5d895444a943e4dff4fae1f905ba39f3fedb9283b0a0066cf91e4cb1f5b8638e2e1ee9f9de050c59f025f2893e072320f088eb0c922985cd22efa95bc774d725e86f4a4eee1a1b969bbd28a7e4da101280a8da9d2ccece82db559822c0d153cb84ffbdeaa3e13bcf02cf2350cbf84b805c035c40ce21385d6d21c3b83c55c82d0bcae7a6c561658a41906511f58dbad56d8ebadebde1564a39e85162c2061fed7d4892d870ab376e2343b8f65c7388ef27e3131363948bd4f68618c28d7376d59a19e63d4faa318271ec7b0ff323fd5319400aaa397f97670ffb649e812cce7b293f59706ad3717d606622de0fa4be3f06d4a990c2a7222077ca10bdafc0e0ad4a7817eb270a9ff01b0e279609af5d2979d4445c1b78fdf2c12b8cb259ee428f55f88aee7c9edf2fabbd92ec02257e8ca28da825014fbafb6fbbc684f5e9686c301103ac687219ac9dfbf74bea102eb96d6a212a8470cd30bf85e6ccf16a2306453d90df16986805e8249569ee5e2da3dfb1fef2be1ed8bf798b913417ad7ae4f4a22e5371204e05160dd094d3be9137a9583f1fd1c73546a43b3d7496dfb1f7b0c8a1c96f6a105447941a14af7ce6ebbc05464723f7ebc620c82e034e33d9edca868ff3890a96a3683f388a025740ea68ae2465dee385fc2ea1684256b7eb318c74ca76575aa3c38b9700c919d168ff7731b161c3c26c3920607c99fff367454775f2819f2a4c82e27a45ee4c6d713f88ae3d7491fa4325df3a1128e01fdbfd37fe16b5fd180a9fe265ac50e3825308b7db758685a4204773d6f4f02f1f0353347f6f95c3d370d0c61f43a350341ce3825c2622a2ed50c8f47849a7c5f2c84daf9c1476fa350dbaa5e58e00083dc0000cf0567f431de47f94bddf8b7d606ef9ddb9aaf1302712f6b11611aa3dca09e906781a05f4ee09571359b86891fe023a06d3e25e82c58b8fa563084db5806352751550b7b447ea166badb501750987bfb2fb586499b70d26546f64437b5bbc859eff479f1faa314b9a17c82f8c7055e69b1f8b70ff01a264dafb179304f04c0a756e962768a9a912e6d60b978e159c16b193b661b57334d773e51f8aab7c8512798aecebe492fecdf1aaa884231e8fcc53df0d0e18947314e1c69fa02692c49b81752a1652e523d9f639e6a20f310097caf96ff24eff2b36b43497c61701526c0700576b66ca16d86c0e5f4bda98fabac972a5268409c76c04ccefc0e681f2aa4dabe5855dde3bb84c610b7219bc7057eec954b0104a72a5183af1458ad94ed1526d1d60664bd60379918d8503e2e88dd25b2888812edfaba145c4a3c1ca32fe2aa23bef3b3321033a4c5a36de2d6fbea98be63b66c4f65cd2ffd0e9f1d56f74d4310ef15464aa89a30b9119fe21c270abf856bc0174b84d66c7a9690623da73af6f469372ec91a41f311f4d1d8bc566d18a7f636c6c335ed7f60169f2b761e994653da79badd317ef43d80d6932e81bc48351f09199723ee2ab328055e59265b42f1c3b18c2e168d407304994f9146da4df348a3817210f08fda70c2f0699a998436e8a24b03d2bc240558c7f093cb081cf3b737b7c1a4d63bc21537f7441e3360d301d23beb3b64cd595a2a98ffd8883287dcab92a917a450c32f0457615619a345e4c1a0d1a0f2784a6e65db8ac8c935a10f9bed247428a3a1461f4fffc75fb2fba86913cba1c8888f5b677fac56f0f29b4a434db51daa922c8a83692d0e3c8aeda639d012d1a073efbeed5a50120833c77497067c97b93a3b38aa7b2c69d5488f8ce6cdc9dc7a509f2d86fd48ef44f35caf0601ff828ce79a9bae85ed0cb0d51f950f6896a7042613446e8bf86810de79d92e1b43e58515e46e8e08789aa0677661bcd3a21dcda24548ac9c1e4d937a64b7242fc1a1f5e33aca7c54aab4e3cc77a8025562999a02f1e256a322708ff6f618e4b26bc1d7982cc5b4834b93e7c0ce434c517b9b4ccbc46971e4a7b98ed72c25c8f85b7c59de4ebee48e6b717d5f302e16ab2a1bd923e585736a5600218bb8784d76ef309e97ef243fcf4dbacc4ace6ac104a4c91e9437f4fe160518fd13e7a03aa4378cbe0837935e95809aa220e1c7013c5f64d2218b1df89655793173bea38acffffa8a66a0739dc2755845633d6b3262d92b7575207de37b70b57941375907bee669a2080e59fb4dbbf0ec30f087a2b84e9b42806933bc87ddbd88fae7580f7714c34554fa10a2bcbbc20d4ba43f1943d9b1f6d9c3eca7d536996b6c288e4dd39459c793f112298f356712f4a43ad8ea7f4d99263508f0ece5a4fef123a7925021a10b75d9c9be673fb004c1e1e9013d88cbd84929cce5b6309f470e6b8c83e323b2da54b932d11eaf5606eb52a1132b5f8cd2731bf7bd8cc9f7d148317a4c2129f4ea02d26d01c15c4f0e3ce45af3388fea4d7e649653bc07aff0e55da3da59a3096098ac0b7e740efe62d143bd3d4cbd3c90034f7736caf62aea28260cfed210e8927050bdeefc6df82b66e03a01a2af0502eb48a440e773535bf8b432553462e784508dc69b44c4cdfad8e590839b1c4c5762f1e9e6ef614d72dbb0c21f90ba49d421804a7cdf07926be2dbf796dfda873e6b156d1d30dd2bdbd555fc41e19e0695a7e65ffcac9ef5d916aeb5e0f61c9830fe45142b7acf6048e1982f8c17f3b353a1877e4a3b76f73cc4db9dea32e98cac422e1e895d6bdcf8eba97ca5be49bc412713ae77dde8a212dbaddc6ede3e5c7b34f49ba806e1765dc0aaf07f2635d85206dc3765eb547db455dfb6ca5b32685926e5da9e01d5ae339a179185cb2fd09a517374ee479e0c3efd52409b95bd57b40fc0ddce221060eb47f65db44d5aeb5d10bc65192c216fe566f5a0fecae15b6f59e3388ef76b47a6ada2df5aa16bd855a2109b643424ff6581d7ca065aa4f1fc2a0305fd0ac6e5efaee3e26cb5fbac13bbebce9fcfef242e8aedd191bae65adbabe19570e818dfd94285e23ddd6cd32c170794b6f2e87760745234c6297518d617f0d84ccbb40e579f6ce289232bb6e324d0cba46fdef0af14db7d35de1890f445068321b58322304bfe3f9d30f6ab4e4307f75ac19a21933032ad748768efce39da6c1efb4dcf04cc7838aecad9811b04362b6d3eff40a0bdcd4b1c249159c4a69c0b81aa25e3d420f3f9cf4bc03474df109637295c6ad9a5a5159395cd1784531216de9b5792fc0992374c2cda24c962294cfd739640ad578145bdc3355285df3303bfc4d62e9477b2a85228242f3fa513a2db176e08445d2be2d096fe2687d8e02185d7549598bbdcf3ba250ed81ca9a047f8308fc215294510e890b2e2314f0d1020ca10ce972ffbca778ff0ac8fb8343bde947e7ed9d7348a603d0d0f3ee31d5126867b970e676a3d8566b1c0b9ce50f95d5f8d0fe6840be71e791672265a21888c918bfbbcf1ed08b07c07cc65c7a147a858251ec4b3bf1333a97533ff2554dcf88fbf8c6af103e88e252dfd8420190b3c87ee45d5b3fc11c8282fc975fa57788999dee31b429f502cda7a0e0ae90b460ee3ce8bb96389e96d226aed22204781ef351591ece4ab6f6fb6c21dcfa099b0f18895182446aa66773f8a1c401aae487a03b74e1eaaafc2e8df1707f974fd6d33a8289f5a5520f5e6fc05fea717401995d9b3816490e2d3282e269bdb00c0cb43af5e82bddc5bcabe1df6955dff7b37fa4c261bc0a5667381ad2274d034af99e5a39b2484add9706608824baf17c3046b0b4e65cd9e209b85e02125e398b390d54ad34c2a84647c0fa403a0e3a383cbcafab264b482e5ac25ede2696dcb146edb1a0766ce2563f8b81b6cc76fce68c3ad571f7cd98c92914fad89587b02967c41a933e7bb8683eeda23f8faa8bb9f99b2095df701b7a2fd219e8c6354511c174b167b90bc1584418f6af0a1695ccaa11f15ceb6080109515b0fc82fb26a330da4fb9bbb1b2b089ab5459639020c8eb05296e52904ab1faa1bb37dd08db1fe3e76d3cb1b7fbc2ee5970be4ca6de78f703e93a618ebfa78b9da1361e16a7189920b9d779f6492ba49a79a10011e82d7ac456b09671f857aa328b3431b5931bfb28c087dab837ad82b276df187af680f8741c5cdb323f66cf6e0a4a0390f8d7f9df0868850a09a10b89304a7336dc8af94d446314a7831c7603e334d098ffc8dda6bc7cc7054a530f3fe2e4bb961481b70a5574f62f6e936657c28c1dc17a9afafed5b2e17b2dcdae0378c29422a9a4e6745f35f645db3fd915833cd54904063bc31c2586310ed4f04393083948e2068d6dff6f8b71d281848abdf3753eb4e7ef9f940f6f33fea58429408b3e2372b609975050d53b8147e4bbe9f9552263f3c255ef771b846b0844af834f4026526261eacfb46b4e8ce7393937d778c6ee060e3d54705110951b728d4374d89f324ddb34fdde7651ac6f1cf2eb5e4548e18b5a53284063cf625a0f457dcbe598d3b27b5da775cf914f3f26f0b61431398cd5bfef19debecf7ed28b0dd68f40369c53ea550fe8be274e16c1a8c1c67d63ed3d2405bcc243f9c0e19aadc134d5fa1bd887f3487bce598e423395ffa2201631cf019c3bf43c29da073997f3efcf1178b561df9b89d1cd8ffc3d60938c1fde882932c056b4fcedfbceac8798adcf952fddfcf5ed059f7f3e6ee3bff747ec55110d10ebfe63fdcded7519321dd4f6b093cae29d732541aece8ad379921daa1b7fa75e58a8b3bc761f68128ce827d77d571f4f54dfcb95c941a1460f5f753235ecd0507bba475ac4ee0b709d513fb73eebb0f8dbcede7497255faec9f2194f2ca2aed4589d7812c4faa3fb1882bab94a7db8857fee13425084d544874f62156573f1b60e7665e3e6221c669ac1c928bcac58e947f646d7d2f5550b57813cdc4fc27e6fca23c91fd50d85ef437acb96883d2e3964f99745139aebc2e23dc536f55fad1badfcb9c37a5338709d210c92fbceac185834c884a0e27a410ac47edd8379309afd8cc1276e1b5bbaaf356e08a28e0fcdd6be6cc4d20e5a7ec75044f63487a1e28371f65d539059aef9c03e974431d2deb6058c38057fe86fc7668a693b61e03cc22bcff6a9b32a1f3b0e5dd40bdc3ec6e8c15bf469bc888011fce8bcbe19fea8b69b3c832d2eeee7890ff800116aebbb6824449c95744d9d631268fe4ed044d3d36bc90b55d64061a2d9783bf373daa4bce1d43325db9be6039d1fda2ae9b72b763baf06b39b316f53fa1226325a262c8635a2490ed21dbc8406e363e52386893175340250d8d74fbfff5743916caa60c05c46a2bb011d027869377411e6dae324d2443a1cef6e018988ed14485241f0d761c7bd557b0a8de8b6ee49fc16434d5fceb35deb6ac1ad811b01c90f84954070d3c20cef176578a49c4ae57baa02eb5d93b134745bb7f1374fc85ba515a3db27f44246ea86b47038333278dbe67eb95659d1430ea68ad0f49d98f98300d5d30454df14b3e982e7eb89e7f23fc9113b03043ece7087650d60641dc7c2d239ef0954b763bd21eace188c56ba6b3c65ea0157ca32728219b507ff16e24397dc4d427a199fe80d34ce4d41ecb48efd5ed26b30375cfd1eb95eb1d61d86a13027f33bc00f7b4e7d702e1be367dfffa112331b326c413ab70a98f528d687ce049ad37b3632c37e15c68d25c7ff21850e3a8dbc623e1f10a8072a88d6e24dc6d1f352477d72f5b9e79918f63edd8f65bbd205d6298e429b9c380beaa9692e474b2f7e3be00380d0d371b4f005036e5837fe460ca6212257ae9bb2f9abadac26ca422d4bae6419dddbc6919722f1c134d642e17595c00e2a01af1e254148d48a39150909c6ba9b6405c5f6b50c69b5dda6c2a97e7cf14bcaeddcc762d52e2f7cc995df2de759ef4b48a9b97c5a52973d24304a1d5e6cb00c7ad51376fe5986c9bfc9e8a1c295749dcb395db565b572c8bb7d0d1a4dfd0916e5d963f9856698ac14022a2d5d3f8581aaac0a5ec19a5bc2587918e84e0407f5752af3fea43b673ac6db3bd947bf9d0c920002f12da69b5b2987a7d516fe964647fd1afe002653f7fb1b4f123cc9255886663c7bc46cf337160659bf95c8ad8868dd99caf6ce8010b1eb23a577c5c63123e02da884fb31db65399bffce1ee9f0ed6b1ece0465f07903b4f05a35f19cf33bcee6fa590b75ab3f1bafd268cf900b9777d76119a5f5bf678fdc1b69171403d74b15e972141d3eb3459f378846e0776f42c075174ba7cc2ed42354bb077b0f7e2b82228233007c5119651d14035a1f3546d958d44944d879af16c95869f0a9710fc394f4b02c0b4add1be095aa73fed9a85e1e404212db214e325fffd0f3914e60b64e9b9aa3e4393ca1512ba9577b47beb329cf653b3fff7c55aa566eb74d61749f31456452dd1e41f4b3de6330decbf6567ba45b29f766861fb541f5cef1d0b89766f1c91daddaf72a53d107ab06578349bdeecfd2f975b5b26e6f86c2a4b4dc46a686d66a572c995365200364b183e91714978d4e6612802873f0f9c793327d9517361b7be2d89c113899dff995f9f63990b9a34e045a088cd625ba3ae82f86c5b28008673cdd79230d025a2569d08c87e47a4074b9b8d9e7f8a7c6c4561a8adc0be4fa9f522795adb6b5fe9fddea52bb311b7f6fd296f655c137b24790e3d821f18ffaf86bd146c69990a5f6c16a6b966231809a7f0cc270d4fdb6c0d3b045f0c8c2e0218302e40c1eb30cee871a9f1079a196350f958e8b585f0efb5102cee6e2f10ca9882db743516105b80d612f7028f3473017fd81e5f76bba08b2ba08430733503b55df6c9d8b86644040f84526f399d105f525d511da96143b7c0ac07b351e012f227b59bcec889d38d76ac50b0a55c5977761a07a6c112a1ad06da5f44c45a36cc0ebc78079c39445fc9f5e52bf45c797c9242e28a4ffe70df5c0f96228a1d5d21c648185d3d2c49ce3b03d2095d19e17f3e3bdaad34039c52154121000d675ca85c04f827960f377b3eb85b1fc5ac7ff08c9796811940ed82499efb62e6969dc12e3dbfd29889458ef788593b1719c842f6ae2d08af2ab4c5f0aea08e1a1c90291d82b0dcc49ed29b9b7426bbb5d2e4652f614db3c5a117f054ab243e6c8df2ea514b1f8914740aa341f74bb7f03c5410fc3e86ec19f519120993e02253f8f873f84e9bbd8906881ab5e2b5817f2733ca47c46e45330eacd12e4cee6310874f198fd1a4b457bb6095e526c18d6e15215f6a603c72a19190cb59cf1d36fc8a3eda4ecca859ff70eac58176ac25084e639a9f8ecb1609a70e9c5846e34f8d5e171488001c70499acf3a1bb89614cded3402fce87d4e4dc671856591c986fe7efb18178160aab8a99c14d753176cebbeda18d21cc445f5fab789780dd0ce4c33131b856e018974ad485dde7b15833a509bacece5def520b0bff1b0f8707dfe80598f6e379b679a12b6313b7d2851b413e14bb8c5d72ab17c0ab75805f6380ef92745849af25a3c3328d29ef64be84d1a6c6fca9faddad3d95a8281d6e5fe0b7b4306d3f595632b164ff50576596dd54bab0dd20958c18e6b7c7bc0b46e594ac1c079504de8dd24c776dc9b5afc9a6472998222940b6621d7d813d291c41a0c74d9167137cd83848bc7bf7b3cb06f5b3748f4c4a547de41d4fb9d280a0b76c001254ab650de66f8c3a2a3de01d1b5589abde26111cdf66e11e266d31946ae9e64afff2117d9380e9bb42d041e500a2566443d72cdec67b0396c6d2b2e6efdecb446d39d4631778c3bef479586879e59d7c62a30591e7dd232b0ae402e0e8c57e07fc068fa72e260cda07606a1652ce503424861cc192274d156f2adf9610e664e79032eaea2f8ed288cfc1dfb1086dcb8083774d4583a2e7010b577fad338781ea8d0376dc8327d82348d6e92a97e13f4c4aa1e8d4b290690c6539ba20401079adfa5213c1c754305bf3191675238681e52ced6b15268e23d579fbba4dc512be3ed6a0aa53e43d4194133a6c208ab40679913887866a1470acb594207965ec277545e3f932f2af2ca63e00e1d0c65b524a107b19821d32415ff77b460563cf189283a67a3b8dd1925c19b3ce643d0914da2f7101d8ac495886365cbafe7e04328d2c3276d4426b9605547b7ec663177f5f1971bffb7b39a26830bf122cb6e5f241fc10967fcdf274864db6509ca70017302c97096fce1c122b07a95887c40e94ff61f9b5ddd1ee971f63498788fa95a8cffc9e739529b1f02ab1e892e5cd7f2476c45707df4b40f4ed07568175bcc3c155c7305da0b883a7b3d7d1b1648c10ab28524992e5272e21afe545ca830b83fa85716dca5ad1fb901b9c65115419ece8e6391d8b76e2ddc77e6750a181b3b0ff2523f4a18511cd140779475746e2cde39b0cd6f4914445cd11becc5e0f5347234705567480e89a68e347f9d15391a8d1abd00a9c979abd3dc948630be301bbb682ad780d5063cec9e77cb80d7c5681526a26922f9317a09e5b69ec44670a62d672939eca633205223afca602b98d44e494a747b4892d57ff6ed99442a97bacb9dec6794ae5de234448047eb684f2aec2134775f208d259f016d4a13a318a7be6b87f12f996652f7b52ac4b9afd889191f639c0d935abf27e32797d6857b7c91bf2c2bb9d5f221c0456967337011f069038cf6a6bbf9281dcaa20c63aa053006e89d8b93fada3a584894b9f9ec3bee83d919f32d1dc7f73e62d69c683ed9d43df54210257413149c11da7e3c088ea263526a0fb979e4ddcb7e539733ffdcc073c845f7ea5004943307a75885583a64de9df355eb98f2a2845ae260ad169ff0e2a054a30bbea4d867fbde15bf5454b437a1aa6307fb3920d2c7b6d122fb8bfdcda312a3d17a4666dc341a3cb042201ee513f0c5e5017a76281a8a468d1818e478a778a0191a5f331bc5532b01f4535d656e1bba190014093c22e7334893e00cb12815439e5f79d68eb2c0b9f7fe5edc8678471e97bbbb1ab0887e15f42fd5f59a82c2a5ddc9931dcebf635e09a5494a892668f9e8620f27ae4e435dda01b0e8bfd35ecc2b9182083ea01c86bb3a6df7756ab7225ccefbd6a49c5eee1c8f27cf820bfa2fcdbb73f921fa8d583a93c0f8fe7a1c1f0f6e9c72c07b302c274667b1ede4d769adba1406eaada12a6083e19fd78bf8aa5516a7f6723f5cb100912161be1af95aa3c720ea248e3dfa98f2eb6d1a3cd3b3dc890c5d334f12070ec1405cacfcc1b5700ddcf62ae74abe163b2ce1666f364454d3ede61ec5ac186aec7872fcbda2ee44c8d4421ee41e622a85644f196182a2f931084baa97dfab60e5a93672d705c63f6d28c87e695c1307de9e14109015b836bf90dcb0b93270b8107d6de313e44b6bcf51830c25dfd82c41344080dc53d67ef1d0341dfe92d0e70bf8de045291a27982ee11bcd0b974c4343eba891fd4452ebfd1fa2287b68c322c3f0bda680ab5024da11839e55e1424c789b41a9a5fc50139bd811d2bc6980e91cbffdfcb4ed0c776477f1d64bbf945641469197bbf6ec108e964d1221bab423826a1e01ca2da7cd60a992b37bc206a63e9927903fb0aff6c73ea0379624374a4394830ef6db837e985868eb7199b7681621b0c33ccdacee8ba43a65094a37c77c50c066a550ec659cce77a451c7aa1f1a976d41627e9baa6ff48c6fcdf4d249bd39b32a266adbfbe5ec861d71b6da0082f7cd06c99abe94b2405f6694e6d1e41f83a31a065ea1d5d341f2ef5a94e4198957780848c98dedad97e2a50737ca7e0ad0cd85af1f427f973cfba2b4f0b51a69223d133ff88e059f564e45a4b1855327e6f1a0d746b44af49d87c65b47ab72f8e2df3a6e3d4e4bb101f5839c2e4b713610232d52fcf1d1a942c504787d7348fb252e8e541331dc81cb1c1efbd6e4a61fc295b9e98ab23dbe34f8bce40e0d78b1ab4eab4751c627bf0c82176ac0496523a46636d5cd4c0c793eb08f2063f0a07f29bc8d4ab9d8c0d1a32c4b660c5e215962146a1b3a93a25c000130e21606a2e0ef5281e9ea11685cc4717505e602a4bb4be1a537538f7df0f85beb989d70df8ed21e4fb5e7636e954a17a38f906e935c3c9d3396cf9f40b05d5f6e2e7539898c7019df2acca50b16f1d21e314426f1bfada4aeff695d1776511b68ab016ceb71ac4157156347bbab4722377adc451501e66f475b5f3931c6d2a1ce01c6b10d46bc5c43ab1e1e036ddb37cc9d5ba2280d5745614e5a9487475fba1d374514b952a5fa2dab4a7abaf87cda1e30c10235e348378cb58d667428cbd1be9720c20ef36953d83b09b52964a89b1f54c5a880d5897653b3a21bb47ae6618302af98cbb536b3cff6a9512c3ba927627a2cd1274abc76c03ffddcc0bcbe5e6f09380dde718998def4aaa83dd61547e0d4e89c44f5a1e1b9490157224204a5745096c19478a86b094c2a7ac4dbb73d742722490c3b45d5f3965381beb42e62e57fc2d9376a803f8d6ed1ebfacfeb9a8997fbf1005af50086e18cfed783d1f59cdf409e954d7f4b2d90f8eef198e4ca459a9fd45601eed8a849b6a80cf3b855ee2e0941c912a7c5b8c4246b3bfd0bdc7debc757ff75e4d1105ccbc8a14b1a3eb452040229b2f7ae2ec64f1b033e9c3d34d9128c0851f86cfffa010a890b46ac49aae4f17ead58832245c95b4288e949cdc9f65bbd81e0d0f322b5f25a365c0f354d3ed522a0343e3fe31d7e6b694c0b25a2da29dc51dc1715d69fef4bd66df33f832f20910066417dc9cba1faa4aab90aed5d37e139033c4d048a48f8ae4a71d911bc5e39a41209dee029601b0151a03734122e62e07bbd3a694e2549af1742347776969fec1c3140621b6c7e50652aa2d47b8c279d6ce959a332a70c8f8ff24465172a49289348a9fbbd72b817a3f4adb29a6e4221153d52c0e422a13197e2ef29e8f2b6fd418aa60f4167f467fb89ce91ea912877d659b7943af98a8b05c37635f17716da36596daa61bdca015e34a1d5af5856e1ae44516402a3c53a7a08c60c287eb43fd8dccdf22636529c2d424e3ad6510f7a00464ea3b5d46c404e084c59ae75c24feeae7b782c2d57298ff2f6604d0cb3d3f6e3a8a8ea60ef6e5c2a5fa69226f8cb9916fe4f354f213d9074824bc52043a9406a312e44d3b9a7dde6fde737c60b2bf89f5885237d4d62857bc6690c3e6110ffce8d20c8924979621ba36f93436d91caa0bcc32ba825289cfebf50f39944074b237b6e7b74d85d666919b7788feb8f74a006e812d851c5266d0d79e5971aeec5d7831309cee953c2e704e8a75e0e7b5c8d33534c32472b93406686b60ac1814312c6048efb8397622a96a69cae3029085bf62db044eb0ab4a1d0b21b79540a026dc736cd7840663de68757eb1e4cd381e8a51004f734c5386273ec9fa387155abff2e32402b582dc7c30ec9f4ccd6135d355c009e11aaaab6f10fbc0fd785593727c755af4b34bddb5786c6cdc790bf58b3c1a82e784a8940d6355631dbe9696b42b6da6c0ee2d914cd193a006c74c91a6acd8ae35a114174ea5d5be7aef0d6421de823b649855961cf643ca4078ef0ee28f67e0c518702238685f745b705729bd4ecd72acb4b3de198a59274592de761c9e87f2301c1c9576d3fdf027f103a1df5193d85c2149ec0bb0c7812ddab1c5b926b627c6c616213100bad18a2debac618525740e8ba194b38a279135fa30f16fd82631079446bc576dd95833d6d0df49c3520486c284d07237aae4288f6613c9fcd60e3be0bfc6265c207a6f3ab72962e91fdade2b845b565bc420943031cf93366c3c8bfd492c1dc4c506f54d3efae01b023291266b80ae3fd090aad052385be34a7b6a0785dd1a0657b14362503c7601a528de7bd90cf91726f4ca80fa180294a37fa919d415c8968c7ff898a9d0be11af79b3e0f3ddd681d1f580305a4c70b1ba4423790ac62e29aa202aefd1f2037db433958181974671b15044e6fd3d611cda00bb44ee6cab4f694b97caa077e940ea97528cef2ff540dbfa67f89ceab3b8c638aae182a1911102dc4ea984093cccbf62a08c0b76f1fcba45db2c26ca71acdf60ce69ab609315e70c9fcc6de2290781580aeb03e8b94d9a29881b7f3de61dc8342140f4c54794400360c0f7fbb81e5730f943d0736543fdd5e07cc6a0c0aef729b668551efeea5e28dd52cd9d8dfad4fda5e7655e3fe50899269c926613a4fc1de9a1072126b07d3e1f2896d8c7b09c977cf914bac26f1a9bd282261270cb36f982407d84a905883e632db36e4c841e8a1a289335925095d2479f057a53000ec45367214cf711cfd71b96f1472f19e438c4cb06050160801cb8b9bfdd8cfd41008cfa9134314b4ecf191b41f5195ac033fb97f73614048194f31bc7a10194d138383ca360f85f07de633e5fba5d0ae505aca8ac5c16c2cbb3cd47d65b95cf69f13e703ac0715e00eee90757b2c24ad7991e0816903f726c419edf523e09fd463176990df1f479904c14f6448f53f37407f80ee6f9bae35db6bbb52c17b73f940cd866fddca730be6d2953e21040fa8cd6dbefa2fc20201a2b1999bc67309d30226e766129d0505875f1796872748b67ac79dba7dfdfa16420388b94242a8865183fa295ffc80874618a5e3abf2ccfefc46f2efa6e678ef19164be7cc3479acd0297ab1014064320d3cf3ae8314c996e73a066bf1ec75fe6766e320ac06c917a98f47efc0aeaeea4de1bcd5f83e96175222af236f35292906a65c6798c8809139e0d33854a5194cc2c98c3104ba24cdd6f340678bb1ac4af2eab3832944570c2a8b814ceee04951fdb0303adcaf418c578cb0d8cc3742f3ee24493af22e7596e55235381cd7bb044c0e0704b1140f624617c9ac56ac8159a76b0ca97237e581b8f30ae877bd33eec1bab23fd93278b8f75fa1dc59221aa96c6a32b503b1eb74c7092e19693ff39e8951bc0ff516b0d5adba19df6e2428639787960879e7ae5a7ff2f2e29792a214bae4107f36f3e2f612a0188ffb36659da7a10709964913edfbd75630a5c860b038a716e9b86fdc8799176707f457125fe5b85485955a3501f089637a38a6cc5934d012d31bb48e2cb28a54d6012abf35f3793d7236c1a2d2554a63c3349c43e1c912d42b2cf9e8bcd48e682e3824735bffde9e9e27b44b25e470a75cac4f7aa9368a3d2163ce6e5209d2caf6ecde6490330f92b74762c50d0509720c452ae08bbd23dd16146018d516825bf06f4cf2c5c0c42322915d061ded973dc688cc36867a67d593d0a6b93117363742da3ada3554b8b143f430d309fe8560d862df63e3a8e6e9ff8aec3c21367b3f11aee987852a32ebde56af77779f14d306726d8d1ebf70cfda2ed59284f56f3e5bf7930510b3c9ed2869acf8bdaf45042ac8c8ad1c3df184ac4823024351649014b7be4428ffdcf0ebce3fabe0af1acc8ee771aae9dba6e740bf5ccafbb46fa935b6de57ca4336cf7971e18a03849fbba076d3dc743b493514440875a803a764af246bda98ea2be6cfd3337692d5f6c6d4c41c9e9303b4189b6548e716a4b62e25361af376841ac791a9617fdad67d9b43fcdf7c6b37e1369d5253a2a9e3dbea19dc7ee40736379af9c33a1df7846ab92899f63d6cf056964c44579081a18d68ef07779d4d295bd128077252886a9c23ba8a7a0e9b99ab4b6ac023e1b99837c9eb327c36cc066b3d32f4677497583658f2476ef7ce65a34c63b0c671249d52626627076db0dc6d857795a8b23634f3273528b61dd26bdf18b146afd05fbd1bb056956040d7d0f38dc9f638c03132a0ec4af320dfa2b612baef877be166827a58b920bd0cf1c1aef035e30ff3301c73e20f5fd3a969aeab3b9d9b52d1ce42f55cccb8e7882eb25d4fccfb3d8ad864b60016ce886c95a0c754dfac37b369bdeb24f11224a076b0559610306aa062e755578563765bb93cddb71a54280dd4b0f1a7c83ce235b680d59c19ebc5ea2406639b5c47826e8d082aa4f8d2bb86e92fdb7bda3761a4d69f2110b770ad6a70b7f6f4d1656a65e2aaadcb907ff1ebe1ecc80bbed028c326d9681bf478e0ccd91dc6f8fcde73d6a6eb557cd35284cad5c47da2be7bfcc11c9718a2f66b89b0355c86dc289090b20f8ebb2cf74f40ededefaef157d6cec14c40a34617a6749bf2af438d355c3663852ddf66ad99ec9c26cbcf58d5e2b4569f24035c832607e1da82e41c34972ccf0bda0701955bff117e2afa07627f63d25c2c7d4efe040cc3cec05bc32b900556d55df406fb283fc5fda12a8dbc9b4a6ea1839a7a839bb9005746dfa5835585b2762f4f3ddeaf8fe7cfdebc3d4a97d5e8fce4f44f9b312ac0e1b13ea38e3c46001972bedc7e6a2a79f63880a272e26874da55bf3a63556f726fb37aad072873fae1926a70fcc7b090cd8748d9540ffca5e83d57fe3d660cad7b5a68be761945506702a0473ba3e9888fb194966882021dbda63db70680e6c227fd0bcfdb31b2a89eaf59239d6dcdec642145de8227b4eb3e59893833f9ca8de354b8c16ad15d61208f4dc98caa4723223368e9c54d221654a7ea9bd3dd267f8d0652752ea1ef482d1884fdd1253260aa65282b03d5d275a6a4344c84b324d278712e4bded9f898a9212444e06d38a8dae53dab2fc4dfd3b525b6cb4b5dd84639b5a463c22eac4eded0128ef6a8aed3bb01d4dccf2633dce03b8e45535608252b7a833a0b1cb227e30584059353ca690b107d71cec8a6df5b049e3a84783d48b20fa8af7f42b04ff4bce392549d0eb1bf4986b64a7003e9939ea0a9680f8cb62087424850b1dbd2964e3de596a7391d0baf960eb904976665787fd0161aea1f010cadca6f696c3480a4ba12c768bd37c62593a398f1bd6b7a46fefb5f7e19a854b4bc63b7f0bc5bfdfe472671c69d18931d625a0a51a0f16e77c941de56248cf26cfe1ef8b6b2ee37438682909306fafcc73c8f3494a6ce9f04f3c772071013cd6c6316666efb9f2859c6e05c223464503bfa30cd077dfe342ddc1550ef8682a7b9951bd2ff291d4611c19a46b2096e6423d2e0fa78bad0ba7c07400203a01855ed595ad48b305521624bb3ec320dc96dbd0d3175fc8881dd2aa0327e682dffb9739b65ad3343b0a9415d956ef2a11e1fbc1eab5e827d8d1778d53ea39ff51e1fc6d4d6ec22081924b8e0a1afaa9305475ebd1897fed8ae60227721751f938280ad31b2f0083c1a3f6e7c1fc70a3e30c023e9c9c109a7b8ab9f6b9032a4f409d7aa610bf2566feba243e3ac0ea971f92ff5e2079cd73f6f9f3204a75343e1600c2083e2c91157c16908327c92356acbf6e89af46db37018ac62924f6f65b5857b9a6142bf233e83f469af1bb36681554e2c0e95f59ee459dadf475509e223b361ece9bfb9118a56fcb55a8d84bec9d1d5a22d655e0f442ff5d334d57ffa1390d0bfd1f57de07c2521d6b3b6eb40b2c192565ca49c582163dc7b6785707f76b7b4f29c24cc87710f60cff99e0ac571ed7b6fa69dc127ae370dabd8546a339b220435866ad054262848550f454cb0709c5e8b92baf559d186206efacbb7013b56401217c9d60c713e3ac8e129548476c7932924b753a44a240175066b53d9a992086dca13a1ff0d88093a803ff5e823b899df7b8ce2190d483941b0953f2cbc06300fa5e053da8ed49bed061b93c5e84c08f4e75096a87a825c611a91ad32218cfd998c2e3a9f97d7c9289624cee0c69f87643ab697fec9cfa7ba645252cf1c1619fc639743327abe4967c3a3b6ccda156834edaa18e2245f89d9b6339915311761fae3809f5f895985b0a82aa7f68f1aca20683b27735abf0a5b8bf7eff7a8daf70380d95be734199b7791efacd7f0afd95f5aa6dcf6c5c17c09e4256d4f7dd782364d6365c9fb2eaf6d4d1ee42cbefe7f664efa662781f330e6f10b637b9d9930293d7ea06718667ae6e3b25517f7911a58be87e8f70578031d03a12f0923d1bd49b45cb51520c64798fefcb9ad858a239e7fd2f71939df7026eb03c7bda41df097f3ea132aed48e546f003410ffd7349229a3374f41f3aef861c435d8fb73dae97fe06b875c49743940cdf8f581b9da4344222453af5290f09d31dcc541c36b486d573f4bca642d6bde7d9e08de9a3a085a72a685b7dadd4f2f5504dfb79ab5366449b6b89a704bfcee20ffbb953d0420cd1e1ac35b8bf31f48645fb56c5a344a380ce8d7e590aab562ccfe0d92399ad1afe266a21426b9511e0f123d322b3fd2c8e4b9ee63c7b94f53d8f2a4dffa1dd285783fd0a6c5d06275afc1bd513e47488211fb31447975fa98d2fd6ef201542ec9ba374bb2a7119ad3dfbffc4728e032a6e4c8081e3b5a5d37f44d474dfbd2f4e1efaaf3625a83e0d1a907dca535ec753d3b8d5095958c167c3e6cb8178c77e4cdee7e4d298cca716c08bb4f6459da2755e83491782230f839ab60bc7e775fea9916ae2a00a4ea9f8f7b4166dd8b5b17cee20880fe0d6023622060fc62dc32da1c98e01cdd4f2c5aef6d49a60d84df65aff718dbf7ced2e19274736073007709ecf6dbe1b1f02a1dcfee83fc7e93c3bf266aff5d775c5c4e7b105426c6ce15142ad0662143c5248ee47ab8b13aef4c76e37aed5db3290f7ad7f64c70aa4722466118503e8043a76060c87eae05a7a461e041ccd5991257a640ed29ddcd3cc4acf701295945b62b146ac0214cb6605f57434a71f753148d52ea5db2702a755760a9376a1ff6157577efc7f8d6bcaf700ea6b23da0c385395aedba13bf031919e253110eec084ee6946a6610a8c906ac0dc626c381dc22a79d4f74480b902e8bc97945d871155c1743c5acae57ae4ae688904633ee6aac79c926232e9cbadc19c22815ba012231955f1cf1978d385755292b0f245f78ca8314a8d87790ae2fee198b845926f7ad99de8f4a06903374ab928ae405217a29425df9c56fa3041d76d9c8c6b53d7edd1fd1298e0ab0b0d9a7f832c503b52e38734e6ccd7041484b843fa2114bd35d9c1797b47c0139accf08ce792e2a2ee37c4ba4fedd784ecb53d36123c08b47d32e2f63185f427e53b9595f686d23e8b76fb99f156c4433f9565cb2f81948c639b505d92315875a28d3ba3005be9ab3e458ce606ed5bfbc6d662272710d897cda68ddcd96a4098661c7bf586d4b49e938a8da3c35f0dea61a15645841a6b753f212517bf67f3157856fed92df1b90b877b9951942714414534975b5cce9cf8d654a6fdbf22672756ebc5f7045a51413b487850a7166afb201dc0cdcc977687922cc613d899620ddebf33c952e766842baa0cb60c61fcbacec41178d210ac76bc49c405336efcde0b3d0304ca586d8c0455b8c8b1256f8f6676db78f93c3eea1ed97c43e390fa824b44e48df88b8e87e9587e10dd552e55710de1312164b4e576035c94dc846621bfbc6785df409f6c9bc9c5605f802171f2a31ce553accb7727211f730e32b9b3c8d3fa4c49ef944832975645a1ed336ba689ea1d2c4f3b0bcc3e8815bcabfb1cb17c7ebafe0b60b537a6935c127f1338570aa506917735047b28a2c3e06518e6cc6c2b8e836e7b2136cfeebfb4136758a2805694a5893f1fefb6aa19bceaba588b377a9d270da05b09b8e36277418c8a6f073d925b47314ee2da8d01d0ffe9753f9314a47e4da42af2e03ce2eeb925758d077334012269b3294d190b387b1d095e8f8c1d5715ff0688f293f0cf7c6340306aa8517d6ae1ef27231a5d1ba49ff341255cece51cef0b0afca40f2356fc96e488a714341e7fcbd2f3f4fadd331c1e2214dbbaa55ac7434ea16b600abe3a44afd2a53a93b9d8c7b586c39ddab2f6ea6817b4d836019e744bc90382661647544ed3a81d60db560e5cff0b3b2fae307ff581c7c5fee60e23892c2569ba605edeb1e32d83da6216a311853822f68e3b4b6e8f06755a833c5161bf3570211ef047e9a9eacda7bc53cf31bb1e128c3a2951363837728d73d3d565f6abbe0311ddb07dce53a69c165becd9bda78aaae5b9f76a6dc8ad4c4f5c58cd9489fc291fe74f9c18d18339f1b1646e37f6be9088b4b4fa7c7fac2ef3e28ba1f32c4ad5bda0768f6f9c61b6c89ecccb5c130960ab03104dc994d399a17fb2f52067f7487d9d857c83880d67486da4dd8abd01a59c0c1a166e39796b0dbe8c3ff2fe30f85c74b0b81206a3d84988f73a7952978861d4813cc069e22bfb455e8810cebf046984e21e4ae60bd7d9ae697bbade46117c4eeff1afcb1d88133c7d0e82758b8e52d8a8480a18257e7feb5ddc08245a69c5a4b8517d0b39dd05b088d83e2eccf5feb0442e7f809f95f044db36839ecfd36cb231efe6061e4bbb95ec8aeb3d75ae77728d605c2fa5a52e15a50e179181f444dae3c996d78dddcb6749ab9a27501b3e64bd0c7fd218a4c50bbbe56797bdbb3f117328a35532144d036fb1217f1a7f733dd65330b21a7576944902f7de145027ea9c645f6ea434681eeb008af780c12679644854dc6dbd727f2399c25fbdaece4ba09f9c3fa46218ab970d5f2b59dc95ca738cabc95104c21c251321377bd88b768ffdf74050bcfdd33569e14c99e2a74d9e909e843b65b87e4145eefa4cc29b278aa408632b2898ea6a242c0d61925f35c13c840003e6513b269efc5b1fe8dd06e5783a5fc91ce0ae11748708df64d1cf9cec8c59a5f4792da7212dec0223b706980bb85af6cf22bcd14f7f5f65dfed298af7d08e25971117f6360d896dcef53c3f19a83a7a62311627ea594089ccb49ca04642200f9fc56cc74cd6a3f9015b680157d6586dbb565a199407d864dd2efb1714933e4e18731217f40211235940f583ba321ef3692e8e6b8ce10cf3d08e677b1df9a253d7e6dea88d52233d546431e85f819221ac3ab337d433a0d9275d9fa5c2c6aea91c647cc557338cbdfcc83a1bbd787718b71d4e86ddef0eb85aef4cfb090e768e61768f144aac294a3962590d51c3e9a098ce15e3baf6ff8d955a19ba0c361914503e0c5ac4f806299eaa50d885423168425ac35b9b6d860b612aa7f8308c62a1557488cda6ac225266e0e5ae7cd432448a1f877e1e001d558ac1bbcf1ad1504f0da8c8701e7b703ff99cdd8a9a4f823163ef3aa47a5d7c39a1adbf3286770a3048e5bddaa776342434f12fb304b003479b5fb3380f054c40c48515340f7b2550bedce50a066c3bfd25501c7a30b2b9a171e33e530250cad0c13a5f707813e5f6192f5eef9a46831a96e5b39c303c492ef8ff4db5bf1607af19a566fac90f8f5b35358fd80c2a7caf1c79bd3d553dd84898946657da98928aceb8631593816c24e2267fcf3e0e5ae107c96a6b434fd60c3e01355a1c52819014ea7f8d50086a95df35fdf8d1c8a3a6a69d367c082496c45ab93af811732da56000caf5ffc9e6734ff633a2b348291f160ceb7e1419c4b33b3e0f121a2adad0c864fa6f5be4d82fa22a1349b9ce9bcdf85e2e1eb69ec0668d1d520dabed69a0b7e3fe3e5e74c7085596a5e05ae0173632904e745bdb6d789616f0aed42379dbc9a994bc8a8e7f3dbaaf3256bbe19db2f0838ae5be607ca906051f99484dd5f5bfa1b2856e3c70eebf3fe7ae604119701cef2bc3a0ab4ebb98c90d6a03c8b892c90d2e3c79b0a65be57d996d8d6af69915dcfc62711253987512fce952f129361a736cbef4d21247afbd02e64d15a5e89202217a8c87743ed573aba66423c497a9df0454da771b8ab537d95c9f346e21a28904c7265f7dcf3b1597391bc1b824c2a94456dc4e7c95c931a757203d20a0113bfa6cf2bd9726c030df4cf8cbb48cf99e0f988121feb8120cb8e5952b12b57b9056bab9d0c13c0c670aa2a17f9faff53729e88c7d077c3075f35cd704e4c673dc7615a941a6a65c79f8dc6432cde77ebebda3807545cefdc9382349f88bb74046329e5643177472c29bef04dac20717f2c4f8363f6b72be75f07eba50f0b7909b85c5385e7411cf95f7b5d4c192ff470b2288a466037e34c89c073a5927880d273269943f1ee070a518df4058217d93f2d01078e08235ed99975102dcb1195a5cf07cf8d8af1496bd0d30bdaf1725d7954d22a4a8bc87beaed7d6223e09370b98f5c8654f6d6a1d39c3c6af0be2ccd384451de8fbbfd436f3e337bf581f80ecac50d9b71da3e2b6754b1fe16527484bd1187dba3b05823dabe43bac7a40e6af3ba741debc3d6bfc4f8fe37ad0cc330a300d5ab9d3698f3ebe1c3b03b7bd24524bd5e316712ca10f6cc37264eafa1abd88bf63b8fed29fc82590ff5d518aea7cda630aac4141e6f1eabd3fb1600845c1ec850c758852bd69f3948fa6c6011906e248ea1ec32e2a02969620d96e1c66b506c87ff95eb716f745abc9af165fa1a081a35a968f15db10836de023506a40ce4bb297fd67d9d5b2c1fdefeb9cca43bb8278f87bd483e1f7002030bec3cda9e1a8a17f0d6213beaa47124b5f01b47f428c948f5f9dcabdaaccfb97890b168ec0451ab22e2c9a39a6cbef64f3d5489fb94987cbb8697788b57b99eff9d5ac3b90779317711d30df022c59e3f116e43166a55f4c44fac41ed3fa4ff69e424ceabb7cea54c387d28291ff5d47998ec2a620d38670189a17caa9b2fb5702f782a6047ae39789a90cb4534ee91a22304593c3a24109d9b654e2176d9a454a69a8ada6ade9d200e93c4c1ce70113cf710daeadbb18746447be6f0e939de68b43bb88a04d17e1d31a569848a2d56a21c4b29b383002e3cede7ddcdbe853f4ab9125ee84ab072fb1ca16a3c00baf961b532ee46a4eabec438fc0177cdd9ef205f2136200f1b0021252a29603a0ff68460047658a57f8706451f46527abc6ac3cec7b93feab3f0fbcfdab6bbeb1da228651b2a602424bd58b0154ba38b3b50569adbe4fa534f3c2348324b0d3f560dd95f7b90a6e85d3ae0ed85f6433db1c42ed5011f29beb8b01142830a840a1add22660e2bfc8aaef3533e19738d0697aeecf383b6e3b481b77e2798164931f54533144ecd3f615225bf6a21be527e16b233d98b3667990811fb914c99604f477787dd95f350daeb752dd38455b9876620ee17b2dde8881e594925a348c71607ab772a91d5ee351693a9283536ace84f5cebf1d719bb8d082f6d2633d2118095cc57c8e73f3ab5b11a53d214acc1421a3d92a8e305f8f8ff28d644433ef36a9d89b6be58489ff03e370e5a43435678ca5d6642751fe4e2e31f9d98a858d0d33f51cf9f3bac70d37c5076176fd2dcabc7bd6ae684bd41593dc0f60dfdd89628fe7d677b2635d2f84718a432ce564eee7c1235022604d98351491c653c68941328ecf56c9819f6da66c91f629e5a049933d2dc1bfbaf2632ce9f7c3172ef371aa8d2b4db3b8ba14e989b3c32c1308295353c9d0a2763ed12848dfcf80dc77bbec8ab14f8b4dc668d6ddd565890b285d9365d0f2ace847b2a579de643d77a7be97fc1165bb90a45fa59a6236c16f5ac520332ee409051b41ef9b78c820fecdf49fe556497d0d70f8d05033b90dbd83e4634e2e62ba48fa796fbe271cc2eae22ae088cf9b1672df74b367a8a94ba23201e2d8b33f48f993d6104512e45ff6377fb139a669725fc7d4e1eb79f04d15d2266f163228f83c2aa984c078d2894cf2d6c337054267d29dcf225a79afba37ef9edc213821490c036d2a016d460efbfd6d5f2b313d630813e442a9e57520b954820bfc38c00a342175ab9a4cfb97ff8869c52257fdf275873343297b08d1251dba70ee16d820a87a3abca44076b90e2387d5e05e04d48b3840b11c70fef162bd63b049447efc5609fc2b06633944af42937dda3a6de0de918f11eb3f7c8855e5787a77dac64a6803c112584df59a2e72f52b22256e858f37b3334e9817185dd33357a4af357fb131f9036760df609d57bba75688399d299a152140e64795b2ec05b89cfd69c37a1708b301c621cb1b4364a2140069b328cfb49acfd494e2014320447677907f7192bd71ee90f736f9dce0c601744a4d153fab532baa4e7c9804a825685c550ad85b94f57357605d077af5e05e831cf25162ba5fb7e4488dabdb042c674ebaf85ea8f7ec0ebdb3b1a70293f49246052046fbb41a510c908d1f0857f112eeb37351480b7a82197aed877036c2f53bd768cd20e56099ee24f8e5c78d525d366c091a392f7dfa36d94611d0e94a657d87bae915d5a57cd7c3ddfd837d7d12abe8691dd4347c911269902426aa29bba13c55e44babacdd0c04967ada9f88020a102ca81628cf7ed035b860bec9e0b168ff1fca88803c9da1c6a5a9d025b2d1aaeb474dbef7fe9257f6a1505f60b02afaf007a3ae034c9d351673b9aee6a715d663bdefc5ae4191ed9a4bdb7d448df8b07ffa4d43fec7ba459dcd281a615a383fc7d86a79aea5806f8cf215f92fefb04a6f458d5c3d3504eea9cb64d22aff399daaaae752431fb7f63e8a6f170af1dd0d6f6c83126bea88d6fe9859355dd6de466d257dc2834571105fcf13be08e0284999af226f0d1a7e43bbfb6b3f57b0542db92a7deca128b48f1b28b7e7ee62b01b955dcbc7153b13679c70e615889f8a4b46ddb6db1932512ef132e71dfe77c26be37dc67e1b981149b55db866e43b569009c79a717e80e15b9149b502cf173b8c1e449038d8ce9dd369320c42f07e33914d8cd757c657e5aa8ece8ad3f9dd830dc36a2c2722972c8e5281e918d3aad52c5dd3f65e1f7ad1a5c8cf1f0427658a046e1db6d5e1ab68a7cdaa46466936420c0b82bc7ab4859a66b99211437a10774e6d865c3528fef7f050a801dd3c1178e64b3849bfbecb013dde8847bd4840e3fcd7237089824c80e08d5280ea9a091536e1930bbf300ad4d33a0798e82e2e0f4d635feee8ee8400a9915b16355220134f95f9eca2c3f2e49acc8c299a4a8194db97beb9dde95178e9ca418d8887e0bbff4639838872018214e342d87f4d6a36c0da944642e30b6befff5635bf5bee70b2b89bf66f5d14db9e49a87c26eb12a434260c938a191f5c3ce175538d7ffc2b9f725e39ee10de75e92edddfa09d7d13c83dbe9b5351d45a85fae5722f66be218e8406636c799b03737274d76d5a6aefb32b3a87804a17922ecdfb714bfc75ddec81a5aa8254142eb6cb590044c06618b7ded48ab2efb1d67dd1ff434e57983a6dd9abbb6d651b49333ce84c7d7eae0267522d111ac8c3b67bed46a637d47c49e9b3603afbc92d6f4bbe837235b40d2434e1ceb773e74c1f905e62d7a1b3d925fac7ade285244b76c931203d92776c46a868d2a9159382e4ad1a7dbafa6ae3edc36e7cc0821dbe4cc118c905206bc92a1935454c0d0c08a027237c87c0d3ea136f2757c9d667035cb93ce99c3b64f68bd2316ea15028c2759b563097efcd9da2c358284a534e1a10ee4d24d5cfebe35fa2bbb9740085b3f02dcd8062ed7cfd8e2c3103b23746e1a53e2001177d0c4b286567ecda6dd0b088fd4ffed35a9cef862c71a3915355cb3d6ec49df2a51eb7275da9e9cca942e0cc1fd32343e3661fa206c3ce7404e8541ff7329aff818d47047eca368bb68822043f03088a2dfe81382e26042513aa8acff9c52c62545f84f87766607ddddc81c78318ee569df4590db051ac87356acab2a0f57b8a7ae3701b9be10999714db4cece00b0db68cd632b9f40342250813a4b6623ecb3e2f305e5bd8968e0b835f6a9f662dc2aa690b61fb6cd355f2e4a9d682f93e5423723cb1d36c662417e4734276f83ff8928a7b6fc5c1a0fbe235f9c29b05cd1035fe980b9fb364386a15ed53a963283d859e8894fa7613c349b61c9c316c3a4e1b181b462c09a8c939548609065d09058e439d1c790917b501f89545b590a35ea0a8a8ed58bcafecea86e6bce197ef37b0d5afa943c4ec4d30b54b5e4551d194292ba2b32117f58b6f474b3e68c9d7bbdd687905faaac3ff6d3badeee8db04adb6ee0718b44d4d9a43e5d8ef667cb41ba9491a58b6ad13d9c63d181d772a60cd56ac690075b432ad4e96e8e40a25a2629fb7669de93cbf4a01f94ee59748c539848a75d0f50babca2300823841ec8efab8d0ff6eef3aac82aae8419020d8a250415a269ceebe513e5499593da06c73678cb5b0dab841fb473ed90102ca2d7e57ac299aef53e159ce5bdab402fad84352b87f39bb7072cc695fb54375762ef29e6cae368ff03bd617ab10c0bb2eb8e04c10bd49ea1c10893691b825557948d5db2abb44b0272c37e8ea0735b40c13bcd889132fe66d6a87956a4e456ebb36ca65b570e5dc4b4368ab298e9de6c4ebfdb5c1c11b1dcafe46202f4c55aee356b424964bcc2673c5531c6d38b6eea845c72d4e614edbb4a5738621666fee74ecaa5c0030403cf9e958aafa2a8b2330a69db8a3343dbef5de49eabeae054a37fdc72bfe38ed8cf771960a73d72683a608ba99198ad8536cfea4d51262a1c328c37ef8fbfae0e1705182e2ffe4912767c055c5430f21997c726bb77920df39913b492638d90612f0309a8f5f36492cef85f74a1852b0f255c385cf1f361c7229a9d105f95c5adcd35e2087b9158b88f31a793bcb5ec55760e6018d456f81d58690c9dff33c33cbc89a1a59759b490a0583278707adf3e93ebdd1cb970495375d59b42a7a22bb4cd701ccb396e2597e83d0819d0e4781d9a79deb97145a1890a32d4696faf297d9fe486526faf7420cf4f348c45cd33105ef83c577704fa3403d7398980977eee4c55e4a9491542b321f7bb6049ec70562e89cd4a652d62b5953eb0166f62d6fd4b94b1955a18150f7821ee2df0fc7b1fa04ce475d6dcca6cbacd49df39f4071a3d71188121946cc8b5aa5738adb64c2ca9396cabc197e4525667016747aa4a3beed3037f2e954f8c702376b40d484d8ee7deb1c191c97ff46253cf4faa2b1946131a9fb8613ffa42ab8c2ee5bcc991340974db9ae2352cf0134837e66d7059467404635dff24828d063f19d6a1bd69d8130cc8af09e8ba2ed67bf5a37fd40598b5fa9496f995c916a00d4bc7493092cbf1834d04454200192055c438290032252c5d2e4fe7b01464333b1963fd569b2c166ca21b4a2949adb4e8c6e212816b24fe5bcfea80c1f259b9644099a9d50c5203257cf9d7daecef955e61a565fcb5b176fac194b7ac9b93cbc72e7d2ddbce50a23f2b8fcc0f295ac18f6e9ccdd27b26764244735979c56830764433fc411a7702c44874e81ec260888dcf613858cc4e2c2e7acac17310fe247f3708b24a6b67e5d8b0dddcdc479c6c920a6cbb757c8dfd757157899910b44b29b377ba7181fb61c0b341f67790dac8521341d65f516d1ac0572873b5c4c0b26c47d522927ce924d91e32551f224eae5377903734552272fd971346e76aefdf8cf1084534e709e677b2d46dbd4cfeaafdfe75f53b3e60b67041dec483b4fb1bc8d079c43223fe3bfd8eb2fc3a5b3a2a9efd9e2610436621558ee5cad7454af9e1b78e69f75e6b766f8c31b549f7f80a284b27a5750b4fa38034f9e14d1144662c5d8a7d182e7686d4f9eac7ac4ad2e188770ee8c2d5df80b6a51ca0660399b3ccddbafa70ab0168f51e11bf7349e15f9907effc042a2d7a7fd643cd178fe487f341683549204737dd1bcba23088288bf20f24ba21c631861a5613c9486259ad682cf30f4e7bc318f4bf2e02e365010fe3c457f7abbc6ba2c2fdf6eed6613cf19b023d6c7e663ee8167b74b89b3868b936daa0f0f1590e9cdce64676ce3a43975f21b202eceea74961f22bdeccf5f6454f842119b8ab08238c0b5d27a61ece8a5b5a6597e0f37700d495f62d056e89b2727ba36bc9ae4a2535795d40cfd25cc46fb2eef9f3f2cf62598de90b49e9cb513b352753309b1f924378060b4b759e54dba04a0f909fe740c3a6e050e853a7d779d1c09ccd4d3a32797e89e88af67ff086555713e08c98a78af3a7738003ac8938de341ae22b6c122042c48852a1f99055cca4ced779708ab825b44ed27ca88ae83aa29775125b80f8edcb1cb36538c078a30b471237dbf8e699f81e7e8139ac03663acef9f96df88c46651ab5ef3827acd5bbfc0560c186ccd2a36792a959eb6477d589e0e2e80ead9870097a94dd1785fd57d2b694d313229f10b5b1d281a6cc27403e3479289f97d8710c2d5b906d615ab99145c7b423c670020be1efb2cb85351fbcfaf23f177d4c40ca8c4bc8837390f286af79f9ad2931afa7c0f93f2b349d0c14ad6295ab7dd5253e5ae301a8bd348bcfe68f50e56f1008836b1906f895d4df7bd0b4fc26073c041e7c77ed9cb77964ce5a480c22814362ba25b3f8966413bb33fb5f121a3b5a8aa6fa99cb979d0e6849b8c42a986ff3fdc610b720b1a4ebb703539c8e127cacb64c1b6c56eaa2f1f7fc5d0b8dcef0c9cedbd3bed4809bf88847fe620f5c7284a2edb929ec63e406292f79480bc2683e428a0a18fd92cec4600c9768567e40b368db3c4d0ac77414938eaa067a6e267352c62fb2caebafa86f8e01c4c475ad2d43f1d877370ba0be570ac229a905ad4346b9e9e149f519d0cdb8bc3b22246e2be7e4bab8039bf95dbbfe64908f9862bfdbebcfcc3bacff81e5fb406afe5f50641930827db629a26595a4dd31ddca841d124e147b5783df8000c473ee3f6036a387edc95fa0eae5b14cbb499ce44a853252a462f051c829c8f81e82c58d73ecf7709743da815e47efada6feab1646304b51d052852cf2357c072ae7355493d68c6a9bed3d48a46ef43c4877a49ca3bb8177a3119ea7af17c2e385e7f4ef5caee084fa6bd3bea17b48d675b2fcbdee80617f0582769d2af3f1e2be598b364777aef106b76caa0ca5672d97b2259349d7c49f7ae714d252c3aa351436da39d66b4f39e741060820f5e359a38fdb3c1abc14924a3480828dee90b3907feb8bca38da84a10d42268c957e1bb281707aceca0c2c481d96c713f89eb26c17b6e984b8680ac407e7b89e22c409bf37c5937ed8bad3132b7907084fc3001e51ac88519d89b94dbe0cd9e71e9c9d5cc6035daabd100ab7f0272d64f80350e63feef4835f8edcd3fd8f5680c2510d9e9a439f5f7275858b5aeeccc1b398063660ab30c1719cc1081faeb44673db55ce926da91d032a03542543feb38d29567d9045aefc2617e7488c41a2da007a212870a285445786fa8e4f6e0c7dcf5061b6ee00019c1bd4ce4c3e7bbf4e05916e1a249311c45ffe936c2e96300f4597e2d4f6417981f86b9f1f55a159966ba73445aa4721fd24bebcf45835344ffe3e1163fb56bec03f3b26afdfbd771e156c84fc860df0f904b54929c7b5f65a149b47501db3c245258846029f2e6f51d055c69e3216e58b27fec5d06bfaf1c1569f39e1a966d881333732e8d05189fc4707edd8dd530513aa2778d657c294be7eb2ab0fb688eead542565d3de002cf1aeb31b9ab02e7f9de2c835702e154cb42540abde0e33421c5d7d35b79c3c9a79cae1cfa132a119441431436f83501fd0c70739309be21acef074908ee5647b69f5b53fb2aab82303b73a8be0ed3bcbf86813c7e01976aebcb21e816525f91412e2b383c74c95f152460b7ae986338bd1fec3c74e1fc9ef292db45391d2a0984a40650effb77c72ade8090c984c7b1f5b57929dfa3e11cef9fc871b86ea487cfe68bda93335c14c48e5c9dd14ee3d0f2a040f7af5424fb4789b32a5de0a8d57dddd8087b9ae3c67d29ad2b3c18bd94c5e18e62439860e5db11704edb94e8a6001c8bf65e751c15738ce727a1fcd95430d00859706041f08d1a88ca7070e3987c5157773e187e878850243b4fb04b4a760d1c6bf8319d0e4dac0167292198b085d4aebc9522816068e157b5afcc4b91bf99132982fb7c637d6760ab0a5cc8d7cb7c42b4e58b385ea609fa98108c19cd561f98501a8aa1860ce72c927f32c69e87e38cd807a082623d54035e2d5587e86b4dc6a7037262cdaff9b0e3be87c5b63e73d1f693eefb2f757524c490e77507da0bd0f374977d1d380d42ea0a82760ef26a506feaf5ee77d401d1ed1d1728529eec13f610bbcd3521674ed8b61c570216cb55e0e9245883cccf79f4e6c88bd31f2e69e6bb91c313fdc2e788daeac36e63036de0cf858f2d6ff4dcd5432bbbfb463c9d3ae088427adf173afcf66e9a3fcd8c29313dee800ee7362bbab1b544f0ab09b6aecd75a8e18d3f4eea9469f30229faa74bfcdf447164f53bb9490b88731bd4e69a44ed70495a8a41271c63519499c931ff76f5291a5dff381bac2be1a76b2e13dd58cc79067554186a574a3df62d2150e65b9037b5fe3c006662b72a4bcba9a0533cfb25b81867f5346b87c6d26cdcdc6b2b3b966b8112ba15c224551d40166bed139dc0fc2f94ec591046928ad6dfe65022ca69fa015a3e88b4a1fdfe76c74b6318496117c87f0b03179c75465a0bf992f6deaf3f63547c4fc8f08e6dfc485af8834a16e08df8dad5cb5da14ef27005b822e27bc6c3fd108aabdf379ed99e32428d9df75b07a979dcacf1e4f6b8cc72b37d103d64df8ed7dab88b6a3f19caf5376205cc643caf723d137e55a56ea8990067bc5b13f3fee86311c1a2ca286d301e5b9f1a1fb3a55d7c8eab1471e980c3d40a2c67e1daf1c74f125eab5154e5db32e66881c97feb6867229c2134471b7876d2d9a33de60d60f56c754e3477a3fa31a324438d9c22e4e9b7b6000d3d13f0e238e896a4b36f7ab6c859a1f0a55da9e58acf130c11d7f0a13f74b98449d1191726c4a4c42486be144aabb1c36889401ddfb4a639e07242dfaa9b366f4a8746715afeb1f7107041d7ad44c6e1a175760809b70f64ed0b839dd8139aef457dfb46580ff0b885921c6af041f293cb4dd1cd51b5d51ce02ae04975893eea02303fc88b26577fd969b465a6525d5236225def86b0c7d0e1ef2d6d34fbf8978605cc13c422abdebcbc7131b9a8db23d0070afc9b4ab1af8da70c263490e4318fd48b29145e21f6af5efceb049d9cc89d359ed66fdc581b20a004179bce9439f6ae4890f6eb7df4baf4156bb27fbe3bb5e3496023f088298c9710c4030bf80d1edfc4b875511d0028a5b97410a66872e41459ff4feb96909f1b4cca2aac05bbfdca78fb01ce527f039a798026783a262e21c1527467986e5096145eb5158762e523e01c93d08c5b1fa07072499116897fd8eebb09dd766c368e14012b9f57ba38544252b9c6b2c29e752e8c5f3927d94559ddbdd19abf6ff807c3954801f0c560d195e5976935d197dff9b232d4f106a955d8d39bdebd3b3ae6f48920593606c069c6c6a4a4b640bc34b85962491fe3b84b13e474d87df194cce4541302921b809206bfb6da107b4f67e8bfc86002ac8066c3c41141dc9e3804c1ee9cabdbfdd2c9cea561057123dc1c300014d8181ac40dde7b85cb479314ebac3101a2a6f4e5cbf75bcff622d59c56100972b195e74d1bd42ca50a6aa902355629bd3c56f69c0e8f7f0d1a95f5c273e74ac2dcc741dd10bfbefe43eab29cd7732bdd2241dcbdeaa4ac9be3a0ef4b90e776998fcd6048d856bc03f9c6d8f211f9c129f51274fe8536458969dc7f335e03ceb71af792b69bbaea8558d4df657fcca3b7e21c8ac7fa6a6b936d72fc7cf8e6466057b5335bbcce433fe376108742d863669ef918d8fb11b1a8d7166920774aea76505f9cae3c086f7bdf194b264e9d79ec15faf1f24a8b43b2e06e7ea5f00d14950ce40fb21dd2131343e5abd191b073f3269e52a5c421fb84dbc53a94ddbfd0ad524cac9a7682159ea66c576d521feaab7e715355ad5e398348eb24e46cdb7a13a9128a555d249ee6e7607511a41abbb6694e98eb842397ec6b89e05fa3bb631c78afea89a712fef221f4265b5b924ced8e1b5b887d1f149d603db402968e105b9e9ef65e07a856f1d3042f5cb50cae63343203d6a5323669f44155980d54f08f1848338f6d0e6318e7a34ca916e02f841bfa19d55f97fc9cc97253706d9097ceec2ea29d100ded65baafc807d04e278d29390c06aead845bdc1f4399e0b978eec93db437e9ab48bc9ab2145f2bf64fbd7a65f9434c9bb4bc56a5af0ddcf4469985fc2aeaaba9327e525ea3346b386ddc4b0c488aca3327b999c4c783a3b1cc113f74957d82839bc21e762ae84a2371dacdede965138dff18c13756894f8e653193cd4e30abde0e245177f99d5ad18480d7573f7c38de87038cfa95e3103cab8a5242dc14cc709a947d71fb7f6e2ac94004a5312e677d6de8801e505faa479268e8b39409cda6b22af22062899f1be31f7a85987d87534e97e38e481b9e6d31a6ea1cb812465b7790fd4a3a54921423e0db454862422ed7e0b9e9c555e7e68d69d5f5a6081d02dc15e3f21ff367e3a28a2105b921a56014c460392c3756f46e68269d421c8999eefdc561dd55fc6c5e9e8590319a68d5f7cf55b49c1f652dc17b583f6eebb4961cf9ab224a8329363291bd6cca9d9450dc53d06a350068b63b7f8110cdc2fa53f967e0c335a295dd394c7c3c40d1b9d0c6259ddb3a12a899289ad24bfb1f387f382898db96fd6d9008a8a35b69dd9e2b46412d7c40c18490c85d0d5999fcc6595deb133b2ca5bf2f1ca515fea11214b93a6d5135394b814de5eb4f7de36aa9e03265b3a1c49336303ad921678735a1ab946b4166f331ae83c1643a050325af63954ce1265042e7f659cac0b4b6d9697b81ad1c35a51e3901a660ce9d4c2172292b5328cc46a199af536ff2b5c5f5b162ba8c3159745011cf6dad1ee02c1731abd93798fde9d015e2c202ed0cd8b297d927be4c3435e86e071cb0fb3eff363b41c78c26f0c9b9c8c2e338a4b705319ec021b7fb78b71d6653120892ebc9a259df69143d09f2661403774f1059d692643d94cdedeade2cf278820ed516242fe8d6752ba06451cf48ff4c2d77adaa133a901f7b3991d1789358d81483a637fa626b14d3ed20f15683eecd854b2340d0f7c9fd1b5e13044b5f244ed8b768848b8c94bf6a8f19e3ee4a7aa8301cca20e6693c3682269720ee00bdf10b8ebe2ca6eaf5a4467b77ac57da0d26a8e4fa1457e9dff641b13eeebea2a10ba2e45163bd10cfccab00f922e537da013504a6c6b36aba2920152c166f2c35faa07acc4700ad002c80aeff49e0e59d1d94a48aaf1edcd71f9de24ab727c648a790ff671cc794d517ccc784d531830c6ae8f533bcd56426dd339ec61ccb251b3f4f401306fbb92347fb9a3a4790302fff30a054a8308bc564599ba701fd1edaa032a83b38ab3e7ef0aae8f95d272f09bd1c0db8b0a969817aaf8663019f1988881952a031fa12aefa9127af9ea1d546202af632b2f0adf8eb4b71d6b805a69724229c235561a2f077261c569950a84325b93d943419d4ee74e026854d05b4c83f3251119368fdbd9cf4e4e58e664e6565b2684588a3479599ad192ffb88376264fe87cae0e709e24419890140397492169e08d13c18f56e253855308ae45511895a51ae8ecb25b827e421f1786b993f056f7b6395ba315fc5a26a63d46117b68842025a5c0baab6adbc690d6df7bb1b8b11fccae924a1ca47bd85ed1d4016c86f59cd5e9d419511c558b13c5a869dad6b2a7977b0d971da07fd78be9270af41021772040247dd453ee0d0b70f49ef64597d57838edb1d5694fb79a5ff860124c8cbc27a6f0bfd502bfefd0fc1af2385de8000d536cf5d17b112c5312a1c9389071adc05cffc88c3d728df77492858b5941c293acd6b51158e828bcd86745996a8595065c9effc07d0f6f6dcd352bbd4c02bfa155742abe0a8a9246c99aecc26cdc98656be51ffbd36488274dbf804211670149715e5a6f160ea2f59cdef407c0c40407970f192e43ebc3ffc4ca366410883ffd4d255d80bd7ffd6173909ea609a2fe069fe01b68d992eaa06f8b1421e1bc91ce0f7ac8fda94c13574271c6ce6796dedea845e07837dc980938767e9fe9a4101a3eaef63822daa4fb27c584207ba4f56c054b5ec42ce309f6a64f5a8dd97bae3f13126658a27f9c1741963f191f288baa5b99c576d3c7914c57e26a2f278acbae79366f4713ef5f5fb47b91e91f6c11fd7b78c6890650b7df0a0dee1023f648e3c59f441aa388cd389049b752ded701779252e48cc1bb54fe753b55576d75d2160808a3b7a8e95a5ef1ff0c8d4623c3f2b7a3dbff6c581095aaf764dfe5ee3322fedf8383d22a8be20e77ff00005c018c905a9b59456ac019cf46453fe8370e7cf07154eeebcf3acccf3fe6982e77699272b727dc592186bad71fad57dfe043c73e37e975284c97a88fe3bf5070fc07d74ef8e6ea41f821ef4d112721c1bb7e8c2ddb24c786c9b50c4f7bcd881a8eb06d3cad4d25816538df3fed52f489b436c273fac759bf23d19e03c989e0a750344669e4fadf6de31515c8b8caba42ac8098498a2bf845492863848d630e5d04a6e35f6179b1ee34fbe8cc2ac38d35f6fba33b451c54e444bb3ab21923aac67e280ad19610000bcafa66bb234899292aa383f369b3680d023ba8bd88e2e735eeba442248961743881d07615010c832152ffb45259c2c4c5ddb278dfccd5b863900d0df7eaf7c5ffa2a4c01271d81460b5b082b711139b5912f7caa5c921e0e51a8961cda8b7d4827ec904b73eef713ca1a412a3aabc0d98339444832ba3250415d76f05f232bdd913725b691027d8e1b6afc9cf85de94c5564e6499325ff061c5052cd411dd24088c838d0ded31fd528afab8896106efe09421b2e2338833676be3e4b38f90c6a0a0ad386d3942166d9724dffb634134e833d8d9fa6f3521046d2b06b86e382460307335fae537994df8e9097e8a6fd9540461bfcfb7d38e04e6ad89150dfda645e38e85c56f1a77bf324b5d4d1e6e4c1c88040086e8a27835c5516d673b5ea21d594152268b6be7ea17b0321732b8426d14d14136c45189c71659aae40f17e53eff9831043c36ab351fc725e7b76c86f8af04b45a3cd30e140c307d7e6a5170be8818e7f3bf4438b51ecb4ea131b9211fa24cde3502892d01bbe1b80afc1f3220545f1221cf8e63489dc1090d9cc267d5f0b40620afbcf52bcc72986981056619813e70a0e01ce69d1d5dfe33109384a3f0b7eadec70f5d0ef1410080874dd3bb1d3039cb53ac4fe4fcf3b3400f0a826a7cac6c29c2ea0cc55b3faaab89b2fe659658afb0324b5fa88413f5e3c9e88d95b3aff551e0501270f3276d4255ee4ec61dc4e168da379b8595e82b3090746a526c44f3939c4e99a0dd1168e220c9a4b7f211d99be5238b795fc537e6603c12239f61adf2eebd206792bce3f640de36931a8346dfdf4ed0cb8e1b9121f0bbf54f855457c29b2be6533a4a3d2d55ca4e8e6db7cd0a99acb665cc226619f28f3fcf0802dc9d25fe08adf3f334ca00a60179b42866be9fde78cbaa2f9813a77177b43cbcf389b9dab04964902acb9c772223ed5fa44758161f0f3c4cf981cbd5ff2bd08697aad7f88d513bc704def6ee42808ff59746a549f7ea2eb9111e04e95dbe1e5ed8d9d0cceff04a510e171c2d14b6d9afb47095007f1fb54dae50145917977f9d3ce644ff82eea395b126ae061a9827f09ce78468879d966792ec076bf26647b3a9269d4bf6317c4762c345a8c64af5aec80ceada90ac3caf0867b497cf39b6043e88d239bcfaa98f7921e4fa7918344c72504346b3ffa4e11d21e583e86fda55c49a4570a1cd8016aeaf2c5aba375acd5dfa6ce9aed7f701b4fdf6947ed52ce9c1bfd59eeeebe8a8c43c282efb67adaab8f3da4fe51f0de49861bb9132e080b12de069c2926294f7d406227c27e021af46c9dbcef9751327b532eb40089afe67013b2ff07e0753d4c3d8501371d003ba39a7f1fa5071c17433632246cfa2ddc0a76cd5be325b4c4c5cb8bfaae8e19826a36b37ced6a05ec9cf4de425767856ce08512c1674a9799dc8989f531f701c3df3cc5bd92010f94755d356a127ec09a8ad678fb78bb20142c1b5345f49160d4d6dad6023adf0720579895011359e4c6367d384d21cd66c9133f007638ee9a61c5f8a24033988d7704062f3312cd7a62295733e7d1d566439bc080dd22b5c3142ff94e0aa3e2da5a93e6745691534261b986a79d20ab4fba5c4c3a2d92e50bde59e66defef5d8b9d645c56868168803b3167917e8f43a37bb1b0d36976b15110e6b68a6af3da5c57da624066534b067e3c66d027dbb01212eb2ac8d27dbbcae07963152910e3701ceadc59bdf1fa214bb6adddb6cc1b35c678cc5c33954521cb2da8818695c466dedab90d1dba50467bf57193a5be443e54de8ccdab19d49cff935bbb243c6bb937ea3c022b760b041d1a28aa78960af9a25695d705c69e79ca32d7851894cabc222f87414a2173d395feb9458ff0d7b8d69579a16cd0502baddf17236139c2fdb13a0b9b8189c139dd95fcefa1d9ff38ab3c8ab232da992295e98d7d7404842003b2f1df18fcb9e54af7bf452cadc81d6676c0fdccf5691e4917a142d1a53aca4352192c932fd22caab5241dae9a35a09a2a235a579b4793a111f86a3c14bbb20f30676988a4b941875cc8a77d808c32a3137cc078ff8dc4512eea20a486ff1c12e70108cb91e33aae52c63f70ee74227e36af85519724df0c07f85f8b49540be234f65eacff3eaf8a8c7c2c01653445351a3c2136c85a4aed8b282171a2388d2990e0257a2eec2edf8fefe381ca28b1887bc9d718174191927a1b8b8fbad14c181665781a5fdbf14377cc39d351fe23dcf0bc934305003759e47437cee53b5d07b79b2144e499f75f4995a5f48a83ce7b938796c2556ee0cd864ab598677017833a76a7368a2497e9f6acf06cd40505800cb5228c058bc3d4631e5376f3d6d5a8a40bbf0861e8bf7fe83ea240fe27c0f92cf77d09238d2075f342e811dee163d11d4d448d6ce39205231866935810076e9452426ef4cf0ba61c99580fac6d07f080beb2da5246d99a98cd04c81223321a327e26537b75a05af5511ab8ad86ab97d040ca85e8e6f52747e7c4d0cb2fcc67467d9735d1fae1ddda2dfc055e5199e27741d4c8cdae0074caf8f3fe550dc16f6fd438631cb4f19192e780e8783ee51bcf31d82e8fb27523f9246b62a612160dced38d113c04c58cee76b74ed3cf35306845e46f1582771dfb6a8d54f654797e594629eb908cc0913b05f3d828328fbd60d4c7b5459e34323249e9955dfb3f347fea9c64b8c14c0a85f3c93b55b6a810b9f673e1f23ed0ac00ee8286557799a9922518021f0f15cefa8d1f5fac39f05807ed63d6188ec0e826fed4aa96781ccdd7a32e5dd49f64e926c7fcc3ce39bdd50c05ebb77f1348713d19d6c8a1ab5351fa02a8869efe7cb19c837452c61819b321ced91862f715c79345ee116c477ded16d0332ee3ad28a96fd25a736631681c61bcfe5dd6980e24fd4ab99d67bd0fc1229336deb66c0c56d74a25bdff4dad698e06e04249c13192678228eb4f621471b9dd2c9c928edbda8d2b9ef362c8c2f264ecd14937fae56c81d932397693c3400f9c6a4c996c31a5ddf8390c093581bb3416ec1b4af285aa4954964752601c7a70c394083ac900f6dd5858ac3bdc716f4e0da045756866892fc73e0d81493d31309f2be8f6c3c3511987d7d0370f1f4c65b7c405a372a8aa889dc17dac3f58e7c674fbf9bdaa8d45b9f7d2f9e4b09795f22749b899eae5e68ab4a5c47115d7ed750fe52eca03c7a7026db6c791fefe28914219bfcddc387ba6b13c07bcafaf532e150e13c6946bc7c1b6b792743e00a7216449636a178aa5ec460deefb3634437b1c42ab7e73ff2cb8acccf3c43cc26506915d9e6d361bd4c89b3edb9549f20b1e27f20cb0d5510448cfc8add207b8f484a333d6bf814e16fa6a3c9bc5d611c84417ef8cd38aae00e5cc2fc70178e2b87da88f97f857027446f65b8f5541df1b4685f58c1fa4be22b7138778339464ae9854e3d9c6ce903b340f3722a6aa5728dd6cf84ee839835e846edaa514a258829edc3e5ed213d0219ef85fcde5601bb7e4555a8e079cdfb4789f50c7dc20fb75875100e464e41857c63a072342c362a3bc42c2915fa5d749ebdacd11537819edcc7acadbec0b2c1127f0d178ae624d2151e02bafaf4808cb79a09fcf6242fefe1c290d7be846b3b5718d9c65263ca3d227406242c3113e928d985dc87cf3529e127968b22995666a91eaa2e13b0b847b3fc414fe029e09512101b5594b6f35adb65c0c2a0ccc2f4de718fe362fda72cb9b09d47948369651dd33e0650bab284a8e90a3ed8be238b3adeabfb70da0f298ad3fad9191c55806a8cba113a828a1d00f9819da3e6b79aac5081c5cac0fc43b4cc58b70a95bc29808836b7bd43117374aee0c0505b8c29d9f3881b88c92bb9c8075a5a9e372705ac790c1fb2b4872f846bc22a1e953acbf6fce12365c4cf0205741ca697126542114ccdc63762edd0b3baa81d7ac3e0da96e793d62d64ed90331449bf2981378c41134aef26d5317dbea4c43ce31170a248a453ed061d63ca0ff480148bc942b9949ca048985275515d7746bb5d451f920f8ede2c5c4dc8a97006acebc76557007135e258b40ea9d6a9e5b65f70bafda2181a91e36f2c6f9756254573ee5ba88eedab856bebf6a8db5b516abd8bc0bf9af41c497de0b055b8e13be4d559ee4985de48642b70c0a90351ff8c4ebf5aed225aad706e1a3ea228a362c111cebe76a5b7b6769299b3f085607e1fc5ac4ec0dcf5c821ac39532c79dc92e887841739e6a157983cc94faeeb89b9e9e06ded239362ccec9716023a0eae23aaf34e7d5dd7261fe8076cb862faea0e3c79e77dd846e5d131f1f60f650a789de05dc7e55a127c0779c6c113bcb03a0d35cd41d2d39e664e550f41c9364ff91fd711f77864e8a68edbe4b130ab5742ea278f803e4c764e6a26278142144af79f36d975a66e8ef7ffa4a402a83485b25e50251f9ee11a9ef78a9404ab0c7da29884e23996d34915404e317297a81fa9678ba77361778a69116bb00a1934e84913de2f4229d6a141fec94bdc1c2d741f19d4ac74e335ad723e5c3baa6e6c9b1343876bdedc9c5903108ca6cb7c159a6f491d9324261cdcaf23268c8b214383c1df4ce66cd23708c362789221258841414ff4021187b8c55e1ec4abc65eee32a39b143f63822843c736b92eeaf6121c77d1f342359011283a0048d8ecbf43a51f4b038ee2bc05095668cf305dd2902c1ee8d90d25285b69c14f76034ddcfd8eed0f7c4847ff280362a9b1c52fa903c069f77b54264f92de78cf5356866eeb704c3ea04ee3026454314b4313be067a522841ef6c118465c71a3bdcd8679cbf0a063f1228ae65ef6010ff81cf3103e99eaf712376399523e237df3f5bd0178bcf32b62b7c060db0b39873328ba8a613272bbb70db9243ea16d533587748391cfc049d0139d04a9420b5eb3a8b6489d74d246e535fb36dddd67b39c99020df962b40ac46733134cb8b1f8a423c68a36c8c7396ccb451a8f5b86853fa3db10f8ab2513f37a77d1afbe1108923790191f78451562187e8aa902ef17d95d6276d3624590787837cd1eb1eb27ba7b333a3db70e4bee2ef2b24f5781f89c2fc2878ba224eb603b803911ce6a52a0b64e31330899f6dc33e3ea703c55a9f59759ebfdfe693083e1df7863d5f4c947e89c70956db5f288b7e9451c8efba81360c8971f148e1ee8f1b7e3fa4886a97fa76ee7307eef614f4717e388cb38e599c6f05f0454c1eae114b101b5a8f4788dde8d86b63c1cb63e1a768c15b6f177173c1e090cce15d4ce19bd347968202593ce2aad921c6ed4c597760b2d46cacc385d6152fb772ec7b623f82861fd4a58cd4b2ca7166cfcfd9e8b0697523d8afd76a830a0f8dd444e10c3d1b079013ac2efe75af9aed936bc231aa7b70db348cc165bd04813d905753bc938b5a8207dbe5236d9fbc16e03ea99a19a3c7abb40d9c827dd7c42397ec1f3c05a35248ae885c35e2ce7a1987e6aa3bf419f2575794f2d9652a536e32cb9a1fb267c07d8d1acdaef56a0b96d2e03f2805fce1e7bdbc3cf8bf8fc58496f2179652d2b93d683115518ce2287b54230b6d832a8b146ec6e0556f03bbc1277fadf80d6cfef7f09bc5bbd9affe721e37241f81430073a753b7e40ca030afae8031d76bcc314dd48857c4b5193eb9e46113ffedbb21d96949a3d168c01d57d434c236d80d632bc79f52ed621c650416098a1d07692eaea697160bdfe002ba6b7b7b46a20a44a7afd6b2dd6faf587fa1122848d5eb62e427a1cc938fcb369157a781e4986249d9244fb288b83178aba47bc6862a919cebc6fc4fe762ecd1cd8e7aaed6609efc1d3d07165774ed364f9cfaf18263c780d278dc5bcd749549a8991d645d96dda1e1a340759cc9c84b4b7563c2e0e1b3be371a010ba4e51702553bc1f80163a385b623fa23a4f69bdcad868184b79ceddc22d636d1eb4f5812ab7150751869979b34f073475e5a78a42dbee3e75e99a17d76a846f9ec3f59bfd6ae2b64ac19df522c55f4410b3a7d9434e5e62ed65452e158cc4a78ebe000ae5962aacd6e7c62abda2f88124d8ad4da0003bb923f7fbfda491411388596d5f045aa0f59bce7a7987e01991774268d059b1bcfada3f15497f6ed902d09f4ca11b4397757f7c43e508d29b367ad7003659ead59279733d57c12ce0d651a4043138d45a51db09ff2add684091dd3aaa93e2a86aa9127cb9f09b1d5ea2de0c650203d0c4c1520ab362fb50578e967d242fd598a13a99210116ee9135f71403392da8f50570f243ff849d547e1f673b61e6b55ce2387de17a44aa5b9379789702d946cb3186fd3fcd9bcc6715a0838a28b65da52250c3abb4e30802bec3efacc9f74eacb96aaef9e3374e3e38daff078c0cd9dd255ba0e529332b76aa89f38774fffbef4ab8181194921b066bb422634d30196f3ab670dd54a751816b6f2e7511ed904ee6d3c26c43e3712c906e82bc26456f1b2ad50358c0843e34e24d825af836c839f1923025686ac78b55cd21f1c1b310c3e289a328aa6462c3b168a84f0d520debc2bf1b928e057900b7dd265cc88d6ab770044c8d8ccc71e2aff732a1f0633abc0a854c71a821f9f601df43bbe0f32fd8c881d240aedfd51ebc5f2ad756511f424c9d0bec4a2acf8c565ce0cf7dcc9db824cbc533ccff2bee39cdb8dcb349559fc96f339c6b45120c6d769f040817e3a1996be3394d1d5f9fe0956268f1de883a72dab668c43afa984de82e3b5bf76552b72f8a62a59224f3db495feeacca677839dff1037c4e49a39cdeab74c0e0b2b70d202fb600e50bb849b72084d041dc6b5152a3c085e83b7a6901fd5dde3bfb34adf4fb25c419ed2bd6fe5257e2d0554dbfe1ee149fbfcc0e6505c2748bb6a9363c20eb6592430b513a1a11a5f625053295605ccf3da99ba3cce57778ce9ffd9547e9fa7fbf060f62e9c1e72073940dd91dac606c1749b52fa160e37872480dc68503186c3443cb84a0d2082c7ba74bd36d2ef8b37810f5287ae515003124bdac38ff463a8b15534138a28bef1ffc98d7f84f19b1891525ed222d58559453f94210f5f64bd52a64bd48cfc78f9463ce5a9dd513e9b78202c136125440f0d48ec661d5430dc5eb4290ef8821249bd386e81149630b9033192efd29fc9c7cecbcdae35b7a51319263f60fbfd6633333029f7915cba2d0672a0e6ce39df05a640008406f2d44ac75bcf50381e67ac8cd5eaf3d74a15b3892909f655143f3c5e249066c00ddbf38bb030c536a6d25e58313669bb26b42d3184f3ef7d7b5da90b863f9e606b52525ed0a7dd0e8882f7c8199da704bf84f0e4e10f93816f236c769290f4f998e2f494b1351b95e65a530245b9fba458864d657be6ee049ab7393afeca328b40ffeb05cbf109294525ea1e0ca6f2581a27eb64625a6c76769afb380121f10a5867e95879defc847958112ceccaf510d430b223b49f3e669c1486bdc55b6a5582e990ec1f84ca5aca9f96d52ffecfba5ebf90011b62a006304a9a954599f3c9207620a5842aa9c21b4c472114f21d88b7cb8110c40cb96a8a34ad68cc7e5baca15f4c8c36bce0ae69fe0a55e634a12c8af12b3d18716ebb0d615dc842a723972b777b3ad31f10a3d5717a9599ac13ac9708a3130070d24b20d6eaad36be5e54ad68db1881eb9ea5ca5d59229497fa867f71f3c01620061e3befab486634d8b8503e00ebac2650ab0b84b346368c7693f2c4a6fa3d3ef866fe5547ff6f0c698614d1f2aad7565720a5622d81d43e5883e68d794192d8472fb13e0775dab45cd691ce41ae5e13191320f9445626e0be338d185bd9e11a8b5768e0b1cbe590273a5c18d8ebcf7fa57022b4862c255708308344ab578507d623212413b9c8b61923370fab0bf964e3e69fbc96f041acd551da28dfb397965ea6b8a841a65fe72fac4368c9a7a64492e6655e009eecec9c65c0f9ff59cc21d2855d52a71b0887914e4f14ae31accfb167d2af392e216df38ff5e994661a5214ffd584828af845572d4b458fef1a2dc8df0f940b22cf9f45816838cd864a67c7f9a6f77bcc4162af8b62e0d21d788b403cd8e0b17583c66747eff81dc48eb0ff75e76368358b67f47c393081efbd4c7089400487e5279c1d0ee8911cb8d4224e25e74cb195027240b814d4483c6804502d41f2b22b490a55c5fe853174a4164499108a0d94ceb298dfcb0c07700a3c6117571a4bfd01f55fca68bc2dc7da871b0217cbabd2777e778bfd4e51e3364b8ad5be21d6bbd9167db0652bae929e4cc643ec464ede4c1bfc56f14090df8992b734eb15d9e32dba7cd0292d751bc0d20ee3aca3db7bd71dd28c85635fda50d83d86481a79acc228ccc2bf6370bea06652ff452ead0904f9750f8a2e9f6660411e22f167605935471805c56cd68a9fcabaf5ea2a45957dc09a77126066f5c0e4bc9b2fdd8825de169038243a773a0a3baed7541cdf1376cc9bcf62ea178b6cf7d1fd19277150f11b968317f6c84b86a6b3016ec39a1278ee1b110026bbda87733fc1b84b9f34cd28961b4f5687dc82f2ed3c0d91415ffb3dada8750bbaf0addf28c7e217e65054c8cdd865f0bc4f4299f112cf80c569cd98e1dfe8dd37401610f9b8aee6385800717c205dc7d901007c261787c1aa922be20f38d73f164c66dced3ca7cb6deb0aa3ba89578d91b60b14f7a929d0c439fd235b7f9ddca7e39300e1e42f1a128ec67c1746be8afcd02c2a8053a33f4a62b13e17437f9c528d1e4a79d7c833a31dd7d6dc0fccad47839d9356119edf7c63c2069beb248b8f6ef2af7d8fee38b923a6dae3e6ad911037d0df263e311443120b7b15beaac1f4787c5235043a0a857bb1feb2eac8ff7b2c4829dd386e77a5a88a854ecfeafe3945495a0374c24db61aa213796f81469e46fab7f1cf94e6abb73cf1f4fafed0f4b204530c3ed34d5aa9567c1377c425ee7f87fd4e354322efaf7a4e7c9fad746a959cc9f660153f8c60ec1e584e49ae0c79c1f568d47eaacee586f6d0460c9a1c9e5d74456920dbc38d5ad0971553953abc647752b472f3d9e810c020f1188e2491712b27e67b7c011264003d3a6bc5556be0aabb7e67a4f9884e4d4c3d6df4875680a249e7afa7c17920a78a0e0ff017794d9c74224e0a4085c439f1ad189c3f7b9a4d18d6ca0670bb7a8b950e6dc5598dc39a34edf9315dba14ab5698fc4403cee7f0497395decabf4b51e9c2dca54854119f49c55316d20f8070798c79fa5237422615f08f9ea2b50e38eb769e7967d47cf3f99c69b598c755dcfe5b0313168b253565350049b24889be68eb1ed5d1504c21cf7e5153285deb13fd3392c49f46b7e97a65a4b137194cd502b3738550b36a7b5b07255ada1c0969ae88075d7c843071418e801cb997dadf5f8a0ba800dcf9531c8816eaee273b80ef72ce41ab298fbcdd30b4fe79fc168eaaf645eb63e67c91ff6bd245e116c242e451ed7f50b5ecc856c8957effbdcbd997cc07af4c4f7a18db59ca172b986bc3239982664ab49b047c9d44349c5099b4a7164490672eb043bc3d7e0af80cdc48d993b77f37c6d5fd9a80fbb41b5b9949f31eff801676a1f167115dff2baf99dfb151b0ac75905dc7f047471a26dc45de5c7c0fcc766f8a08f5b562bae0faadf1b2c3fe50bf92317b7517615fe726a2d01da47dfeb6ed0143029b6304a465bbfde21a22e9044468745aeac5900b532da79a3a906b852b42d73e0d751ff59dc896c6c07f7cdafdfdb5fdd8d1157cb2daf4927476a30e9d399ecc40ac8fb2240bc52f3f037829be9191e3a9e6b995b1b94db390eac70462f08c11601d9e8d7431661048c1bfa865d0130c5f85dd2f87a174d7cb2f5fd5e00b26e2266280a74f045578496ce81909886d23cba0d53fdeff99c4f973815d1f708c9579e2868d9d5d06a1c4ff81abf826eb89b9478ba681aed2cba99a1d081cfd80078fe4d6b19cb1caca3118ad997d97de1b495ed255eb4faa7abbacfc1b0e4fa1d4e54bdadc3783b3176dc2be639c1e79dc76a43ded9700778b5e39893db1da029b4d1479f7442fe691be47e39bf73bc36ac0b921f4af85049debd04b2586dae013fb46a30c191356e02aa12ebf821038fab463b42d7b8b556a685c97e9a825ab06ec4a8b5685b055802924b2cb112c0800c502bd67dcb960f21c310bc398e65ce48ef39899a22f56c2cd86e403341df524c3fdf6a69af7fe562569a8c27a5d807a207e26a576833841eb31e2901e234b8b81fc89feef789c94ec2e51223486e7fb6a28e52fa88dd66d43cff93b2fdd2d24962a960a2c9c333e21af17f9ae3235b9e5abbf94c8bb06b7f2d1046552f6277891ac06f4ea63bfcee17313c5edf9d162de50a227fd13ac3d943c6aa56b74a3cf5023ee99c30d82b1643c02e1a02ae325ce9e55aea3d01e5354057f4444cdc145edf2d7df4f96080335a56c65f63cd7e15af6ccd1e7174d05021321ac9abe18d3cf18c5159cf679ca87faa37da69fb085403c8a00946b816e678d1f0556d09a05bf12bb2db838dbda3749424cc8ac525798cfb45b4384546cbb4e392be596039dd225a61bfbbceb59dfe8f156da4974514305d5f320a5ca00162dd9a13d8d8ee9d8da9c68e5a66765a7a5ce60d80564d2620f1884ba1bf78f925fda425e1b86597a5446db9a7541f4e14ded3ecb20378673cca8efe8aea7f557dd0d69ba47fdabd230ff48384a3759336b634fc54f00213daeb397492aaf1235cb8fb65e3a1641dcfb2d5fefb31d1e7e54b6ca5c82b726fb45d909db71ecd9f3f0da5647c021f3a6a2cceb3c3934b3473fc590fe3e776152369d7110d6f1eb6d59f7219dd3619d01cd90fdaa882cccd85e1dfefe200de0578f7e2f5ccccb8cda9add4629c3869be801e269f6e0b0cc47f6f81a09a4fa05b21683df9d63b3ad482bc48604d0420fa596b1b4bc8e55ca31963982c71e9992f7264c0d65627ab76d9ca8af9a03b9440d81b197b0f213229bc9908610626e14965e5b30b1d194c296cf97f38ad54f062bdad2f5f4321ca83e119c9e87f74b656b7fb593442a7f6bc330c930affb2b971feeaca313688c104ae22bdbb2dc74e2240d0587247f72eddeaaee0948548354228627bcca3407a302403415d862a868e8765e985a3374c8b6431ff33f10162c6ebf0b0ac2dcfe7399bb647ca81ae62607060ef7bf8e7a3b37f1717c04ddac09fa5e9ee04582d684b3b63eba26f6488ff71cac7938f53b8802676eec6060c97231ccf8bd391de9352888d618a4de1a6003c15270c7ee3e5a0f2ff65acfddd8bce214c8f6f6d8646d091ccdccbfcd2f8d7667eab5fae56009365bf1b89be34cdb0c2f559f005dcc717bd52103fd2914397eaf648cedb9f22f47034ea07c94127d7ba69b26176c88af82ce022af7a71153f9fc83e7c8a35afb54b78e6b5693396bb0dbba3e6f8460868901b0e54d6ae3ca4c174d83f905ab30ca57e66bd498af7cccb03fc3acf9b02d570c9152132ed09b38a81dd9b41e73737fede3eb293cf83180733c5f9283367c990224ffef7de7526f132d23061337e8e04534aa7e52877a7c4ff32589a404b51f450e6c9b9474cfaca613ec34667ec9ebc65d43ec68347a00f2bd0fe5b29ef66eaad8e9d1b50aca1262dc299944ea6360ec1f50b61fe9b4df0ffa58388dc0a36931756652a1b6afd78410e2e41227fa57c34d5d8015b953d5a08c4e76ad72944789c5e11e1b1c90ab681b344e16d69d7d3d0f490269c48ae0ddf4699aba179f36a331893be2bfba5160776db0167c22965c2b0f528fbb6b2be4e56718aba1d5a9c29684d1a30103850c18788a1fc59638af6d01d9b2484571e82955e5628b40aaa9a609ba26ebfa042c74d8b468dcbf310f9ec42cae94c3a81fceb66d2c421f40276be484fbf2ca00775eafd0c957f9515a055748e13d8197769322b4590710e27e00a60f4d96466a03096aa7a2c3079a9a922683c2d72764e51b072d49a08d0b785d4511716fccef58256b83a2a4e5640178b328bb7aa33e6961b8e5ee69e9028aa0539c0375e861d557202f47978badd77df735c93099ab70b8f381a29a649875b5b2dd1ee0574f7730aee8c72ead41f058248f222dccc2b7e4547a7ba7fd850398cdd230cc8d64a01d05fecc27d4f8b07d0aef5393dbbc04e2a7d18586ed65d8db15c1094034aec60bade9c8607973e04a711a494659c0ee511a44fdca270a9aa711229299169e0cb6db2cdea0c490116954defb87f7a524bb55a7fa0dfb63249c45d868679da0d9cb8f621b06694ac95f74a52ab641b830ad229ee970086234d223d0b4fe690b425510fde7ea97e0cc36d0b6227545c75642e0422ad90bd19ba9c2b13f09c6b118551be38a091dd75008585ef370c02c88c3b6b4bd6b9070b85e9e553b90eb384a1ccdbe650bd6b16d0fde20660e946611fd38852cdebe049608cab71b90c512564ad834852188a9e23500f91c95bebe6fbee3bfd998aaed24a7a6ca400ac896c9bde71e4ce00e2253c6939fc59c8c72774cc5125901ebc7e1cf34e36e1b81ec56bdad1f9c1a79d7aff3823f5d684fb37aa674bc47bbb80bf8df5517c41052ed80120d25f9e8b2dd177644299e986db080b23749629ec9fdea0911e2ea12f46b5e996f1a260f97a6b70bc6a6fd484f3bf3551391dae6eabca25e9c062b1923e20cba937f23cff91e2b25d72d0efb895b19369c85714b96a79057a507003080891e77a3f6362c613f80c9273252875b8a1ebd71f21beef40d973cf4db59fe592e12dd115f3c34a7cc5f03eeedd38fc8181ee00bda17f7b6caade76e90f669d1e115fcabdf00b6cd1ac6d235a142e6a7a0219e599dc0167710b547ac0e7a88cf6050952deef7bc581293c64d713ce23d9ab6250dc82145512a2ef155c70a49a351e968f090af0b2781fd466314dbcbc6280272da143d765bc1cd39def761f61514959c2786d1ba273c791052e3646926326a447b386cf71fa15651c81d0a84ac7ff3439b1b3398f171d4ba9a8059855b72cca37e025a73ebced5dcb81aff2785b5e966668d9c719873fa2b75ff51816e4f8ac09d0f679a65cc8298d48e98133eb9871810347f0b3a53650ceef599bab40afc715e303a71ae96a2d38d4d1cd3d8c6a97e1f18016635004ae1ef5208ecd3a0d93b5309b7aaee24f3d0b2661d978877c054053b9ecbab2a3540885e621e73bfb82aefe8d588e5fefa0d3550a52dffcf24b5bfa2a75d04a7b1910a3057863d447abc9b496b111e341371a14b9fdd27df9602a574dbdd294a879624014223c33dc85dca3e80f20559ed1b765ace8aa9f0980a798fa947083fdc31c51c22f32b2fbedb63c9d31df492886ce0ecf004f38e1a867ed9ecb3eaee0801f93d7c0f557232a58fcfde42debd5f64e7b2eafe4d767190b6bfb02dffb0187e9c1641fc37056bd257887b9cdc9c1dc388eaf10198b55b50877cc256bb22cdbd467c68f4e1ca3af20d641b6a8f56f371cde353592369f850fe45909415225d7ac29ee9050969395696ec017ed69bc8610e9eb064a3f08db0276abb99af2562c9945ab6aa4efea0b637ea2437057ad7921eab57433dac2cdfa773fbb02b1b760704d895c119a0b1b52f86ce71a216674fe91cd1f44055c64670839c3574964d08f7317dcaa25803f15447a5f9b50796c50ebda82a174b9b67a2061df56b3564aac2256b0c9bc678db6d3dc63b8d89311690307b03711d1a56ce2085437a997adf18529b027393eb8040d98fa6971b1f9eb018f187dee72bcff52f51c2863204e5f977ba5706c48517d524c522bfa0ca020c8e8a8cd68d5026e12fc91d00b8ee5f7d8dfbe65a4bc4c41e2071ffae10d51818a859b49dcb4f6a1a5463788efa34f4dc68e6c8ff21a7e8ad94d9455e99134c3d317e76e0aa6e81c8e66f66b1ba86c72f299fa1ce7c922a6ab03cb9c1c244e043ebc976fb1f00bd12e9c2c135450b48b2d2be45856a539df8b2a0027b6d4154ea6e700d11b0d75120f880328a5830025c0902d4ff4e5aa3a9c8aca9cf4f0d53733ea185e92c9045ee5376ce8c51057d73811a3c02ec23721f2fcec9ff514ba98b77444f722dee4679c44c68bed3c8f963fc7cabf18414b791657565936a0b2960311fdcd79c6e8818d733bdc13e6b783cf9248eedb1a3ffccd334bb2f43b4c9e3160f129fc52e6d424a2f1d07ecd7c32aa033079e749bc3f4da3fb97f6cdcfdd2694deb506eea00e2468f0759972ebb65f6ae9bd56fc4caa3873b8d861663a335e8f9edf3cbd1feaea3c759fd2c6346603668f1a65e47b24716bf9241a8665ce68fa6be8641f821e047d63ec9a18965d405054cc19b96e97574580a4bf5b6783681808b6302533ec324d2b1c83c5bd393eb1057c106dc284e6ccbd191db9411b8775eae4c17c681007d50d04ec9da319e12f13e4c41457591774413d8d000b948ee250e05c0a1fefa03640556e1cc4cced62b81e1838d1ebcb3c7c30e27d7809f7a9566c307d5bb91ce7835d495731953b1d37fe7e0aba3014ef8d4539a3a03b57e81bf0025e8e80e10dd5b3b7ff66e88d6f7f21baad947820256a5a7342f68862f614d4a12ea0f29d99b91c8f6eb030b43cadfabc9e75600e1a13a5a0b27db80718f750a5a7bb0cd46875a27d42248c7c62854792e3e763d9bce0457e8221f6066c5db5ab960608698c431f4da949ed8b458920cc43ec279a5816141cee6557f9b3cce7b0a7e22263ec22352113f3d72a5e53fce2189eddd31323d08d778f61c103dab060e207789f47eee1b30a922b417323820df6a0ef7887b7ac002dcfdc6b6c3637ab48324dc2625200faccbff6353951c6264f7958640042fe0fff76b907626588a160acaef947aee750a8db7771d2b9cae904fc0b1db627cc42167c50073917ffc83e296842afc72095722fb327c63dbc2ff5c379155d2a7b2c274b8bb47d0353f8f5cbfe616e5f06a0a1a83a6bb6259c66f464c2e475d4f81616c21739c67b765bf3490eeb8465c48bc34f9dfa5334901976d81204b1db3c0e106ae272049661974c1352d12965fd598a0b2784db95ccd6f55a2350e68687146602bf19d87d650a151a8c37937b457d098e4e0764e4a2d2ba8c3715af35a43ebe01226fa49250a21711467fe9a5ee0141e3731def0fd3505873b3003ce1862ae88877c6a6fcb3edf85d24014a3df94946103148e1884f2300e5cb226ad7dcf0274d90086a65eb7fab94e6f3d8efca0170ba6d02fdafd210dc39b013d478969b5d0a6453933c4751fbb314366baccba71d1c0b9afe747d65b4efca28cdc3d19ad24b682e1c5d72d07651169ee8835914f916af911aad0338dea093542407851c385ef0b4034cd0f19ca0fa65225c0865c6b18fe627dc8676583f6a458c24bd7ce0b7f47a70fccf6a34d018e471200becefadd17e3e674e7bf9ebdf2b37e8c4a459505ed9161b97cbe0355fcb9b87967964317221942d804e132b2c024ddf407d10925847a8afe4e75c75a9eec58e46b845ab836717343c1db527373e34ec985dd12b7cc6d06a83752c26927d82976ad7440198e5f92cf4f1fa41c79a736d05d3b8fe552557c2fc177ba9c61259eca43f2f747fad25a0a4e82f57e5f75ac37864bdc19b658d3827934d021938a3a4d229a7d2dbf55260736c068af1d82af3745619a612c13a666bf5282dc317e4bf66c4579ebf84160fcb01e720dbbc6528aa4e1106239b4c45b5cec01b784d22499b4f43b6670212f021988c346e6f16a26051be26605212321682e4cb3694e5c013f45847b3eb529db91fe5b39e2e8da51abce5be9e98417f83328a77d84cbdf6024eaf24629f31c7af6643f4b7b8164f28f291b52e34616d3633ff28a3c8cfcc1266a1ea090033ef563f845a79938f5189802b0633068a15c097a9179ce4da0fa04d7f85ee02cafa37b1b4ebb2cd44e4aaf2a15dfd58cbd227b72c99a7b23c7192ede15664f66531cbc00ea1e81ef3cb182b9c92fe8ffaa8d7dd74ca7aadb1456fe0eb7c24fc437c5e43179910bfa0ffff08c4e402e999e9dc1b2e0aeb6bbaf40d5ef63e3b76f4c2a82fa1cf35eeb3b721ef9000f3ca4a912c8ccb5a22c7e660930d4593466f63339a4111208734e743b233cf53ac85044a896dbe351945f17523af7afe3c235be06a87e93a4fc58ea38000aee322bf1aa796dbdb29136ba9b6e8ae9c4071553e30bc70c42f5e51c2e06e67322016ae3eb44d2515fb8ed359f82a6f536e0a8a66fe1a5defb0218c9ced547fc5d2f079a7316564e5a36b528ad6504676554cc9a17f4a8ffde37015f1c464b55b8ea450f93a17969e6ebc30608dc679bb53f488dc357a25454556a8607bcc97c9b428818e8ab22363def4427875dcfcccf306766209eca1ec47712bc4cdf1ea2106332e843dedb79931155b0b7c9a201ebdbe42153dc30706004e8b414408b852f37fda5be990e58ad139afd2b1155201d0d03bb91300abc88ca37175d80334a831c322c2b8d8b27275712110163a007c4defce9de19227e95b84a5d6157982b1efabc7e2619471d667b89638986d8ba0253aa81b797d46a4f96b37d224410dba001b93d0df97c442b3369ddf50d8853dfca522d7c6813cc1a1e7d6bca558091551fefff8ac5d849f3a5a3fdc7cb9ef9b0dd5348918de3d75d797f5ff1407be89cd17212b9cd2678996bb99325fbbd50a79e44cb8325fe6fb1e805827f46c5484cf6f2da388604fdc760fb64eb390fc2c1e32429c41a1a9d78d3023e9d46527adaf15fae56125b640bf6794a530947edf54848587a7e8d9e4553d1da42644594bb503e4d563e0d768837ef1513190359fa9c24d1c21727df58b7d8fdabc328a26e77b2575b4fcdfda7b806b352cadfca5ced4a6c9894b297bb3dc8f7818ba07717e053176274eda866ec8533dc2c853ef0bee01da9b8cc74a309ab08f240a3a251655750b689739d31f4ef787294fc1391182aff7708ffb6776da1d3b35e3c62f266c2496a1e1fa0183d1313791f145d74f452f2debd67eeba1a8ce85b79086e7f97aeb7f5fbee6cec64c2f442d8f93188f5e4498a6ecefc82069e8906f9c283a4568c91418ba7563d306bdf9782095deb36765b9cddb25d839903cca5728c4be6adc26f5c4048598fda24dd0bff5f8eea5f86d883c28e333f6bc848cdd0963f25e61e7083dfb3050bd853fcded0ea8b375fae150475bcdb59bcbc8239a6add26eb208cf2ee8345df39f7500c3d5b8e9ebb9fe49ffc615c02da3f13972e2d82fd02c388b597372408be395ef03729991e8f3c1f9703b90d7b034970e8653f9b30770bd01cebb875091ef37ddacc5050588d8ad530d05324ecbf52d16bf32eba40c2290381f490bfa59e543593a35857dd8f1f67456adfb0b2b0ca4403ea5b21ead8f797e9a4d8e7f5d5a04fd3ffca5f0cb645de482a34f191d530f7684813e6c23948303217f115b6c23c8f55d47bafc8919f10a3860ea428acbe6fd7115f45eb0b6deecbda42e1b285b3dc8e32099e532b135c132ac48a2e2bb71256772a73dddfe640175d005f7f6a8a95aba81d6c57aac59e88ba05687312cc0e7a5bb632fb099d2d87b6c3ed1b1c2bb133250558d74744f3670f40b6e3106b07e7d6ccdf1923dd522b317537ca7c82b00e65f10534e9ff370341b6227b536e7490cb580315fb81231178887f9d680d4631842a6d466bafd56867f36a4e6143eea5bcd0d7bbbde970832628ecf53e9ba0f59e2d21047a87eb138ef11942aa9a6bfa3016166849a09513993c88e36e26e5c92009e33c5f95ca028410ae4e463d62ab5277da992c2041962261677574f68d888c16eaea717d52017622458fe712985fe670cf24a95e82b466ae95d3e72e94e92e8fbcbeb12ddab29e26f4ccdc07aa225f310ade94cafb2fab27c95411674378fa4ebaf83bd24dcf29f89315b60514cf2611f501569d85d233a2d62222e14a76817c610aa8d7767816f40648d500c88ac0a8bb4eedb63b7035243d4a66165b51ae9f640c74853271b6ed63c0627b09a8e3129603b033d46ab7a7dc17af44590fc306759caab8fe53712d38edf71c4541e7a9a9d64ea1239e73f36df62ff508ebf7743bbbe5fcc12b9246bc8bcb6c921e7dd185da03655dee021e5eb1d8b82879e07b1a012310756f4e7784e56aa90f0be9cf3b843996646d9100bdf2bc6ff79033eff2ca68ac753fa64d30baf07f4827ac4e0d7785f00ad65c52dddd0c4972917342af2fc98fcfdcea004f80f781d32456135732533f736ac3499d1f469b216684c56770ea2f109912f07033be20829b597f561375b830961c4375778edc7a79804838fb7c12fe58ef96cb39bf6e0e9dc3cdb1092a544ad1c8e72f6887451d6ac68c9a137e8e227a32315c0e46677ffda45547c805d2413d726e80191c8b0e3fe0bf681ee37c9dcef4d0608b92c374f9aa1003bfe215dca37908a60db85908232865f2dd474d4e7c65caa073c7b2b733330811434f38f806e5bdbc0cc4c7f844f7f35797967c45f3287395d03f31a96eff2d1ab5aca5f69182688fede6a78c987d7866aab465b0c749f2e1ca9e424d13e8e54bbf9bfe3daf74840098ab54674b8747787b50adc2b778b8f537cf3a9a745e8ffb2a86d7b6bfcde68a9e436dcaa1821b7198f9396417287d4c43009cbca5edbc3921bc94d167c219c1bdfe489c22e21576f9d30efa32baa1c61fc2ee17dc3bb5e2f66ac74d525a67af34e479f00fca03c27752873f065aa884f9d46efba2543188a98aee9826ae9b5d315c8b694c35c1a697d8ef42c3d8f14457ce60687793562bd4092f09f475e700b092d22b4e78cf325716f2159a767a8a9a855273a6836155eb4a45d59efe218b3cdc679642f54113d00a8fc27981f04fce97840cea05dda593c484fb5b50857f7455fa2e92f8ac3c3afe264a96b24af952180595dd0d22fe98d8c92ff532871fc75f06c38cff852a52046e12fffa26b1f0c52da4d654b7fb38dbcf15634f2831cb92b5ab8690c31c57b39d2791df450bd9b2e374ec64066edc69b1ef2375d406f9bd12ef06337a65dd46f5dfd79cccdd25fa0c33a3f35b1e26547ad90f03397fabb75e1e475ea8ec01afc1ec23c2ede59193a64373be4007edac572e9c81ff89043d13e149a54e997de4a4b76c0c4e5f50a4d3f31c4e156516408680d1ce1f040ff876a49edca17ec02bde27e62902d30339d23390f583fdee2cbe101d1c52c039196244178dbc984705acaab293f22f17b5b9976caaa73bcc8f8ba9a508365b30f16b87c7124110f0e462ab5be558de7f65e3de16796aa8af2779934423c2d4b2c5e855e7d1d8a4016a5a8c1c760a5a75066e3c8379f470cccb2ce722583d0aff8eba131f5aae10e27e248f1309e66d0b35f05fd87a95f8496ef88efc9d2fd13b6c985e22a7019f50e613dd2bb31afb742516199b547baecef44fab916f1a979dc98b536d66019ca6cebc3d0852f851fd1652989516f80280728631d9697db2c788b97f6722760ad94631fe496eff4556d1ccacf76cd2e7cc0d317e2269753d914f44ff1ddbc392f1ca00d987d9b7132f8d62401f86db62a2df7ad32f46898963e9afebd3f68308b22700395080d973d4eb72ba1c3e9a322047c1b7654d76055583616a3fb9a1a92b99cfb8f6449a77e587981363d3fd48e23c4186bb5cbae1792369dcbe1a054b5abd94bae27a6c86266e669321776837e808c606d8cafd75264e88ff637e192958de68ade74dc294dc02af9ff3ceeb0b17016d6b08e10c1023a1c597cc13f1b0190340c6fac22ef11399472ed2421d924a3ac27c021006e65c30381dacf1843b5c0bee82fbb23f3b37709ecb5ff3cdd98e966d73b45105c2c9cb24a77488b2f2c0434dc8d081c562dbcf84afa7b02485418fa3c6c3ee0119d3cfe4f5e3f96c3f0ac5546415cf9d58f4d1bf51e6527065a423feb584fede6bab34c0628051d206a0e5f48d506c51c62e36d5f680b6a626f1ae9e0d997b49b652693aff9203f0aa9f2104418a26538fb4d0a018541e2f66ad37a6671d4d3cdd45a58f1128a7a49e29c089bf6d25f7eb8f5f4af0074506cbbbb9a7e20e2d2e1ab59c6cb41dcc2f6df7cbfc2237c808f6e904ef0a03ec1048f445f9202d175e018f77c3618a7a9d9a6ca33454da0e4d074e7954b60d0e19a230e0782a05aa8682a7322d302a377650d56f5e0994273b0e6fe2438450b88b51d7d8fd844d514bf573319add272ada911707ee1fb1e9e8bd85506dc999494ec21946903388ab544e408e98506ac971a2d96860dd30fee5696a65354b727866baa4cd514719bf40679c05bf753da6465a33bbc691cd59331bef2482ee6d332b3b6cb1784002791391b510a299bc2f188645385f26e7d87635c852b5fbb9cca87102a5cbdb41bc6762d746ea891b75502e3929287b5fd52048658d4fabdb0950b5c729abfa0fcffb040676e7abb6144a1de76566b0c64c2e7dc88caab9518889bc9e1929e0ef91059d2c543ea1d8f438ebfa3196ed6d5c746ba9372184b6681818020cbd0d30a283f35927d33d99a2cd392c7290e26f4b905f5f07f65d3972933768050b7a1ef8637c9a0e59e024ab9008ce4bac41aa44481c7b4228937fc1e9deb523016a8cca8634516498118070100caefcd94645b3de198fa3e89cba433d8f4a3293ce17dd8276f0357c6b51542fc7e69b2412650816343d759790cdd1ec8213186f46e86835ba84659ca09f89ebdd4ca4b7cae7bdfd04b67137050009c6233c97feb7960b1f3646bff1ec4ae1082593f3646f0ea830e236669c4c3bcc33313e9e3777b025373f53d361025218b07a0446e24fd13de7ee80851caca2419418dd95817b7beac6d638e3b5edbd95fb065732785adbb0d68c299d951c12455e5c4ca95f21d120e3347e7c003f8d0b8e40bbb62c341b5aad0abf2e4f0a920d98922b94d2f3a00bacfbe6f5473c8b665f99219ad92c418572460587ddb45bd51453b855a0286eb2430a7006972cb9f0efc0be0098728fa906ef9a971a776cc50a758d110f1ae50af513f12d0b99f7b7c5192d0b17d0aefd5bed9c00524be078778a4074ee77def0749c992c41e4a02b6c1f2b881ea682a3ea565e5ac0e0661a8b9c2393d1ffa42103e3f34d3e5c42f5add80eb1318158aa00822a63e29f3d9503d5b9f7ee9f3f53f02e9ca3ee9c92e2e99e7e701922a2a7b4cff970d34045ab56bed489a9589493ebed42bcb571f98b5bf7b099f8bd2ed0b00101926534794019af4b59dce55ba1d0e2f248ff6003550a7b65e476799db8579f7da95bfca08b602331bd6a54a27684cf0dd3c7bb02c64c8be3d5adcecee2f2b90f9fbc9cf7eb1fe356038fbc71e1137d4b359fed1b15abd87f23c6706726ae1e843d692b56afdc3c7f1f43b5daa4d0418f9c95a4a19650ac24f436ee86cbf35f0c1fab085f811f67a4c75281701fe107f1dfbd286f67942c72a24b92fa5fc4e796cf23efea9b35e5cc5a2159ff79cd43117043a3651b1824887102a63c7789e0801b7a50d21bc2036e84b516fa8421f3ccd500a1f90100619feeee52e5c478d30ed69d800e7bd364419ddb593707dd202efd389b787e3a2ed1faef1008077ff9170fded58925844f0b7b704f919e9e81576eba85eeaa05f7a553b682bf4f03d05346cdeb66c36ef4933490d8c704b9567f15e1af923790b79d21aca758e3c105ec74cb74f8e953864df35d5b42b002ce9c3fe31d78207c5e9777f73a9d0b679aaee232217b6738a1fc40cb1a99d177244dd06547ee330f8ac40b85899bf5cd5a3846b8e018a97d9a0611ecf92bc81eb28c7df280717a415bd14caa3044d6fb283c5ffeea532e1b778fe1bc8d44ea8547b25101068f84f277000a1e391b2ebee45ac25370c8c9e7e08bf0cfc8866402c8adaf1658b72208ea638cdf4deb864a93c33011cfee45b141fbecd2b15445ede672c0f91e943c2a4d4ffce902ffd0c0e9dbe42f1fb535d452804b636efc4c42fa5af33ba9508aa47f63c2b52d25a54a367e1316f26d7db2ea6d80eaea9e380e2fe0398c50e36a84ffd4c2c49ac774156ad6a09b721a8bfbb390e9a702260f9d41ff7c7aafb2b6cbe3279da7e3b7126d1afc0f1f39d445a7b818aeecc3bcee27b305123fae5a71341103880eeb326eeaa812e76f63edf3f716073d5766a9a5a311fb6b6dd24fac58a9d19464aafc27499ba3e6e371af0fbb212faa375b4d45612ec1741797b9b3bded0840fae1e77acd367f71ae320b45e58b7f07d19c831c2926143d135ded2ac9fd2a5e1513e042f26fcf4d35049d2d95503987525051c7133fc5215a6f571de34e4a9979ae94b4e27793299eda77d2e227fbb0abfeddc83309296774bde114fed31f8d424b59e8250611047d771dd1562482df35c2b6ca4e5d99c773be19cf13d4b1865a7f03335dbe3d399e5c055bf7d3decb962fab05992781e5722b766ad0d021519c19aed66fc92c26133c3736dbc90233897d18a847c942e13d41519810563991aa4df56dd35a225c6b97381c34d0e1155298c836ea6d304ea25d38471f7d903b7c1b069d6fb8f50b4a2a13efd372cb9d0b1834a19e4de2e4dd515d4b5fed016d89a1cecf0eef59edf1bc34a083dd40355f01a152dcadafc9e0610ba931d13963c6bed303f0477c2ac8220afd72e71d28a37203753ecc8c9ccd4e881e35f4428e13a5d4a75e87b137a376a330a86a1fe42bf9ad699da163c616b7eb06d15e4afe3b9a57f72fb2baeeddaff118c2f64fda141cd94c81a64fb4416eadc32e55e54a5e391fd9203ae1f2d349d584ece9f5a845b74396213165f4c9c484216769d4ee1d5c92a9deec02f8235e58d68aad0608674272cefb11f898a8c8aa5015a4857fb8884c212ccfb970ee7aefbc48dffbf1cb2c2ce2dcdddd9f5fecf59101331db8d2a83cd1415b6437bccbf351a26eeb62caff1704c432c6eee24c5942d8fc5cd8fb85acd2abdf88e19858fc894f027db9d0611fc60d25035a7c35f0bf529208b6b6ce3bad3112d9d00188c8bd8061ee58192c9e3ee72a8fe675553e3c1da0be69b1b4b33aaf6e86717c44a406cff142b8b02ad62a8447b73ba85e6015e71aa5630a7ac0032d0a2aab314f78b280e98bab483fcf138451a288587c9b2b170eb5bed26ff04354eced0a7fc963e1f72a07c3b02a5f45f65d30ab0a1b8a7592c33a37dab3471324a72a7f9465d7be1f87e3c50b56fdad2a15701b808237bc83ba3221b86c566a3e62e8e0b55bd0e984455d7eebb320414e172cf366d408a6c4cf4af940efca4c39cec6a50431dd0781e126172a7f23055f270ceb078fb2d91ba335e965f91059e90f43c1fffc8c27542cae579a923111d81cfdfae10b92a1b0ed14353573e9741e9be0a201e55cb944ff27fd09d6b7b84c141acd1ea3b121fc9f8dbcc7ab3b89178602168d9598001ca83ff4b92801f4c2cfdd841da52a855125695b819305e4a97abacdc78d8d4199e1512a8c5fdc505fd816d8eb1bd5471b6edf6d1ffeaf7efa77bfa7c9ec785fb4461e046e98325e6578c750d9c739e38ffe8b11ce37e5c112c9545de2b0bda7b2839a3988f02c9d45453509d5934714e65b040b6d3804c9e71441f82fe08b053703d84f38dde5c2a4c932af84c6000d7d2ebea80aaf7a9c6e8bb427dc1c7a6b164c10ffbefa83eee634cea635323149925f3ded96364e72c6867944dd32d1a870b6e7b34c46725f526d0129a0f116dd670e7f8b4dd144ffddf07a201234b83651adb8e4dc7e17d57d52d574d71bdfb435a1f22bca095beae2e6ebfcf48b20c52d16c55dc580d3544928ebc8bbfe02c324166b7c30cdfa37a4599940031e6bd7720c0a84605033fa00f02665554555f47b213fdf99955ca054ff5a6a890d5ab6fa8136ca1cb7e25a1f6de2ac21b9736460767cafa578fa76999fc3421bf2641c90d77aa7e4039ceae62322273d404d330dfa7af8b1f041e22dfd4b7aa89472a2ed1accd9e7fd8d704eba9418643610f6d71cf408813134d411f0c4c88076ec1704e602614aab391caf43c6325904fbcb5d4263823ea038eb7df6e45cbb037e1378157be35693a0db37ecbb63a9409eb6841892479f3aa02b7469396e4974cec51d5610490d7f140394713803e253cb0e34cd41de09152728fdc924017ba93184cac351ee25440ea56768d01c8c1982a57b233dbd3e24e2fb411a4e48a586178fca807eca94a9a5b66633c0a4dcc64768d780c964acb10a4a581bb5587fab45a74bc6ae0b6f68b6ee75c716abf4ccee81269934838497f28515774853f7f3e61e7bad8e382d683a17a5dd0cf4c1a633db177625ec04acc60dbe39217449ef7653247f19fd4cf6d39bf84712c69d5ef428f93778fc81ead2845d750a302d0ec35d2aad92e6005fa93c0815dfd7b2e5642379a2b4b883a39f06ce5f7c6c33bf295044a5cd4aec844af77914d79709f521b760ce0b15c0fd9aface715e0dc7d5c9815126e88f2693c32258c88caf4218314d7b23d51a7cee117dca4ce0cc3daa0a68c74d7465773e0499210da9f1366a555873f76dd7c72416454fff5cc01c14ba38e956cd1daf34417dd6d5d3392fbc9816ba0e1111bda87c7e1cf862d1bcae0de93e6b48c8e47325398d056e16f7e3bfc0d608c15bf582d8d1f017da69fd7fbc951c70c333eb12be53937f86ab011469c13b0ba92b8f2d505dd2a36651612e7b516c15a1afc44da94427d47e60d25cda65be9da750f066ca7c13cf61749d737c17d499aa1a817a364141a853ba57a053fbfdb1d47a37c3899cd1fcc8ec0f339a72c03ce486a3105eccd0813679472c05aa4652f4e530760ad67b8c0cffc6953604f1c14c210d289fd20fb4548ef5da575ddf0e461b7f80c1faffcfc23c99cd49db8943dfaed2335d38ff9cc991255251c95658ae0c8027f22437eb69a8dea1bffe677c3aa3d8fe949f68c45c2f31b4ca3d78f4716e9bc6459337fc0d0e6c5ee3e8de06ed9d40fbdc7bdcc1fdb97d15e82f8306f250bad088d81375ff7beb5fb5b9e42ff5ff03c7f63f41d75b090b7e543e92dd32dbde38fd9673bf505e1c4c02cde778ef0ddae7d4d8566129153f9a45660ce526aa33e67dd040fd83e82a6f1bfde47321cfa49dadcfcf497d9e19c75a1c81c5f3834ef0c3bfcf2e9114f1e6eebf045c449e3f8cc433fb8fc3fd3a59f5fceac6429b76b0520903954552d83d43c8b07b298be5d4f0ddfeafe201f6796d60f37ef549ce691fd06bf34ebbd8524c284a70d4085e179c610ec7a29adbdbfb72281145b813097d3d0b371235421b297c7fbd25c73281b7b8bde53b21ceed8ac51441fc0c491ee041efcf2268066221e832a09ef9b0df0e62c16ac94bb91f2131adde5b868227adccd08571522a78e6b65000922a47d9b12e565de2da312e2b8e8387ea284b7ba28acc75f3908a69676a865dc6474258a926bf03da7ec0bcc5436b6fcb527ec5f083730994337ccafa033fa2ab5b6ba6aac733c0b4a747c2e4a4123292b539a09f989d7b939cb8be50866c78a757d3a6c5ae72b59a2b8759630569e741cff5e96a304c60bece2ccdc19c19e8528983463f12590916b2615f73287d4eaa7571122510a75e6afbec8949e9a8abdf89501641d14b3ea5bfd71289e8c0cef759c8bd21ebe11e336286233fe4af1b6308a80e6d4e58886269e877f18d5635763ed9fbaa119df02c98ea2d73202fe4dc3e63935e565dc308770a9623ef7a18c213d0076cd502291f4d9f70f7ec923f3c252b4d3269ef9ed816f249bbf8b23a4b34920533fce39d158e323e7702c3a90558345f359bf1431f5054ca70b56c6756de4a07e40b9dc3ce58ac67b6884018688ba766a3080664cdb0fcb3894de98608ab86e4e61e1b59f5ad3017eaf6118d83a623f883575582709b5a099c8bc2152a03cf6450e30a0c7bbb61d4d9f1fe98035763a258c22e744771e49399c057c595cfe64606c50dcd9612cd519bea9d60c6ca6795c65021bb6695baebeeb47601ff2186a88e8eafb0b9c8e918af07c670a6b2337395b96c1fa23b94a57b49644e479469f1548d9ce6435b1db5b8cb95371ebd02b428b205c8b598aadd984f781c6478d5d53cd2affb6a6997ee8238b3d85fa1f2fb65c741f70a9cb904be31969d34a56a0fc26f9411e4652f942557e8e388dd53b22c5b7877260ce9584a9d8a5310ff90bc8f272f0240cfc1225dce15f6dffc6496da7bdb26f48d4a33898cdd4fa802ad4bff4ef2f9c1574cf4c8414f3c48dfebd78f7d5e5f5786dc02f153968b8c51a0dc6e4a140d768e205c06decdf0ceb8c00628feb9f025033db7c2e30f2b837086a41d58dbf0bd6783073161782cd982dc153e6ab0329555ab0b80c13329fa7e4922cd297dfddc59d183412c8a412cd1d6345f5690f5667db99156ee301daa050ed4fecb1f13668bdb5bade7edc4f8ac2c8f37a414cbf808b1474f441fb171a30ce5ba7256a39f9ce0c2cbd5d516fffa3d0ab04316ef3ce0bc7caf5ac93c9abe2c6c85238918dbf8ee941cd35f6dc782218b62504a7b22d0aab45f15796d0e310c97f5f9d058fc8c6fa961fa3b936dd3262ec6c492eea2a350b9a211599c993c399aea194bc21c68289d21975506d754973a804a745254aaec6baaa2d426f4d6a62e6e560e4a28abfbe1c1c3c30de5533d9f4943dca6cb200178312352c96004f4e9cc6c5230612622f54c2221a8368491e50314f03f2447305795d8c6d3e508fdcd337fb18386ebdb8b18f9723dfd920d1f4f7eb5236b7df3e1a48f252c5f1af72042f793e089f2fd543e3bde9be714af4b944fb7964eba3900ab5c5a734004f27f1294821d4b1606e890fa822687c80fec16c41406caf45f4a44bbac9c4daf859afe0bcee26b0c4973ff12444d8b3b8fdd245d54be1267bec5764a666e18d90f3aab7f7312a9aac81a9d7eb1c7d3e8b4b8c9fac4304de6d051c8188b5906266ddeeabee18c9cdac2fac5439f2cc1317520ba35f31f97ff1dc3a2f545c7fde4c788b7c66cfd27264bd2d36f5bb469ca8271b43164b48cb1b0817113cf8ce3a5ca86be74b0230c797bef81798c4ffcd741bea150deb49b16de639a6d92fcdb6ce0567b19ad85c70a1801d6f85cb8ec4ff9b158c859ad6745ee1af480a5c92c0051a6d1d1ee751dc8fc2eaf3d46903a4eb80e18743dc61f0a679a292b3965825ecde6c255a694fb0a5fb933d96e037dfba57c3ee0d2fdf521b19da275ceb4f0fd8f254c8cefae875d2b009994274a9f62b6662a5eac443030e2d5d97becbfac8da6dbea399dfca254f0e004afe4db4a7ad18006dbb734051955e6a95a284b0bfd77d5284fac200fdbb54f570025c9165cfb6337db1e0bbaa44d6070c204d8f39ee4bb14b0b6d5dbd122a29cfccfecfc707bcd5ab1baa8d2fab88a87467178d273e8d9e0be26642ac549daa0b9b421d7a6b5729dd20242d5109fd63cd3119125ec8fc4e8f5eb2d8eca30fa44560018ca58471edc8b93415420037e489ba1f31a362b2982c8f7f0c76edc3f85fe7f401b8d111c5ead6f43b688941cc8c5dd7710761a904af1a6041df96676356e88c090f53c9f66c683f9d73a9498464eb666d441f28e41ccd3469818ab9bc4a0798e380c85b2ddd6e4a5c59bf3cf0b62833c996b76883fc3a1b59621e81bf48878e417a7b23d579be209fac464f2279ce76da41d3ccd38b8883c32cd617939c4c76f4bf120a9cfddaa2bd4fbe8e716dc48ac2dc53330a107e1b70f84499e2eb07fcf54b48ab17cd2e12517d55198e462c1bb7ad68bbdc6a968949ef6cf83fe73d2862e518a81fe258f7c0d18ea7b70bde46b4e4ef519017cd4644cf04ed57021f99900d8064d2a94d63b9463718fbcad9deba377a7d1463096759e99d088bc69c823ba2b6e72142c076e9b8f12cacf3829a196e74068deabea7998d8bf44013fe409177822e25bc11241ee52d7568f05ac1b9041db7a89535a053f56ceb202e0dceeb539838674e29777aeec5a3612435179d1a6a2ac33677441d46e2daaaae1c9081b254e43e3be36213d693c6935bc90cde88e46245a166d9268c052cfb7ec6cf3bf3a06a41374479fb60fd3005aa3fc1ef4bdf0202643268d31cb5fc74d21d0aa841123b5738e78187204442f0dd659aa88c90f0bdc19b2681b732b085ce2e7af2fa0a18f9edc1c84744b894393599e3ac53ecf7f8db5811c99e510613ae47579c05463734ba860a221e3a18542ab907892764f143cfe6fde995c749e9924483735dd77d807a823d2df1da91e42dca6eb2ed866aeec52b440662c56a5830bc6bbb0e4a13960322901c3ea1247ac8cde8124d58403302c22068587595af356a43cafe664146e797570f91e82d763ed1830e902289e14253c9623cbbc420f334bf343fc172fb2d32e5c3db3372a939eac4e3b68b69ede43e56efd9fdf42749ab5bb4d27aaa079143ecc34c8ba623123e9e509a8ddbd23f55df55200152304120a7978a9da9ff5d9ac75799c3fcf0d85ec34427e976a4c54d31854dc318ab23bd02422a591908d990eadd8211b7cecfa7610aab920d8ba16082938f9794fd051249fe190511901407fd3bca173643073785cf01ddbd181b30b49b19efb39c05859a1a1912a228c19338d71d428aeb9815ec70b481ccef58a35b2c7d1b7daeae1ddf3b1a1a4b5fd5c3934396fb262bad106b7bf83a36d422d8efedbe45a901cc7e2784d84bd19f98fd41a07552e85c400d6c69aaaeca2b530b395e093f97262bb68c7ffdf07abddaf1c3ea890f58a7e1b902d0efce3ec3f8363ba3e0be71e14c4d7acc3eb9d5c322d6713cb037aef4302c0854696e5ba31568381d68afb28a870725b41d8617fdbf3bc025c931250f25e4573c06e3e2289dd0b02f2aa93e696ae25965b458f520731d52fe23879f724657f026dec25737cc1e4907fae3519433cbce28f1112bd81d2b08fea92f099f744d8f31db730f93c23f7513a533d8e45f0a684231ff4f0ce4c73a77b6c709112624d6da3d94a615f4127240cf3785e5f936e91ceca0c511b90487cfb91db2869fd26f1df589bc6eeab028190c2ddd00be48b46708b154124f0d004b56f205e640255c2c7b66636e2245990d5a7e1ad166454ef1564a49d83c0671d070c8a50b667ae9ebefcbb08a4f9d977ac74a7d9f93276d91261947fd318adfa715a7e411fb43e427012cffd93bca7e556af749e157f95e46bc86ddafaac2671930903da800c9296994792d392d4974969a36b2dd4b31c189bfcad6986115bb02714b078ef947888f712fc4972b4bbf558a61920c65616e60f91e0d3cbf09cf6932807bcf67d8440da32706cca29e4cb119b2c02d7c6ea8b7702ab512a464748a18356238b13aa3900f8435c385f2f553a66d21a61cbc0e7b59c93439d908bf5674e8c3375e5a51e3c28d323968b3ba6231771c6a1ba48fbe8d183bc6fbb84ec272e555eeac7f1485c57d9d249563ef346880bd1b838d95271a79d5091f241ed38f09f929bf218a88c8b622cd3f9bd483808b0a7d9ef5fcdca9aecf770d7e263c97c0550ad2fa42f46e5451f60413cebd6495d70fcd5589ef5f3e510a1b21d60c4c06a30b6d3b63f5079f6c56a1f69152e471099a212f6288358ea40c9e9d2bc00319507727d617baa6ab41e5e151ee1a9f801d00f201272abb73cde9a41e1a8d22cecdf4c08082e61282e1922553f5c3aa929f35cba2c70265bc9e44e828206fbcd7a89b155e36aaf8e585e691b0adba3a822005ad433bcfc73100c018a7836885719778bee38edf2eeaca939a8599e502bee34f454f02ab6e72b9a7a7e1244191a24b8931237a74e6d9b5a854b6c110378ff0d1e6569459fa27ee31977a650810d2935baaad8022a9d072995c8f621921177c977a122a75ae8d5e03f745235a698015eab44bb8db7b9b3746453e58e115c3dd255c3e0c099eaf396b5a2b2982f8b3cc8cc2b1192cbf98cb6f0809d068b82891c41ec814254bcfe1256b6de83ff2727e542b39e18e15d944d8e13d05c70a8fda0a3c765980ffd1fcc621a84d6e74a0dfbf4838de11b551f83608a01450741ea5e3e33c2c1e2e3ea470288cc55e74457bea50cc41c41cf3d5b72caa88854d2c3b727a871a013cf7ef610d2f6b2466a81f0519bae6e9c1ddbda6478685c0aab5f2321c730d07b342c41eb58ea50e7f90227b9ed1a9a7945514ca1496f34ce9ed74a74c28c9e496ace730a15322a32eaa14b076810589c8175fa45721b08511e1f4ef28c37bbb659971adef8e08101216a1cc0917044b396bbd77673dfdb55f89770d2b17ad4cef1d8414fc5d81e1e219e61a0a9633e842d2453d750142529298f5a2d2c05c71d997acdbc55563cb844477a4ca5c89e5a0b823cdb4fb01c3f95115d1b5ff5ab9e3f0dc0ddf467af81cce13549fb33be4c6e77e733ec93f72b1c8cea2b1c85ce6f42901a646904cf8ffb155d9464dbb33804b0e4da6ff954c42f69b1517f2308aec7a0dc4cff300764449a074f9b92064388babfcccf050ad968f6d7d5722d071d1a2227025d5a963ecf2cd63ef6de6f9d4518bcbfcff92878cfd702cd51c57ad81b7f94c65764834c03bb591ef12f485c409627ebeae99a7d26576a91e85636ddeb08cd6e4f6110ea116f3e852824346add3479a233f548464502cdd16684ed6d3e0a0b0b7f968138d072ad255e8407fcb839e4d145b6842fefddc0925027edf7b20b04661e82f4d5bd36ef9a7abeb2aea9b6dd50ca66bbbe386d8f1694ad69a2997084f9b73fe4226882c05d3c974847c6b05c0ba58967a23cc34f0ec1aa2cd8dd996c843914c602206bd04c38b41b57065d786574b585e55c35f4f16c72feed07744a9a2407450ae463805f233aa75090d1fb4a67628ed627e36159cf24a19684712b3a61d3dce154ea4905d5d070dc828db248abe3b936f8dc78ce9402ecfa44cb0b27355a964c8c19864a713ea10cd58041eec3dbd3f9f750bc4a4f440d4d0a47639b2b7b487058e47dce491082730958ebb8f77a61708bc13b854e01a85ec9ed3b2d9504c1423bdb3ff97814765084168d0cff90374103f808b6b9f70b4b37b99caa8a0b3cd9a33a28202ae1f02f87c3a64c19ec4ff1939293c7aa338dc9481963d76f22eee0069901c502019a2a9f83b9da5d3625a3c2d6f309a6ee076bcdaee2903f5114b8ad62aa7de92ca20d07388831285b9c33d2802bd068fab5957b86cd43200ca0540527ea149e558f1aa0df609b5d778ebfd39b1e4eef8affff3adf9617e4aee6ff7d0a3ed0eba65568b00e122a86df76cf28178940df4b39ef7621e14968ef0fec881903cd21760bf72075011980aa7d0a9fc724efba403608ea7ae6594acaac7bb2003cf6005a7ac68f952e5af146164497ba7566b7dc618ab70e8841cc6d470fd4190a18ca9559bc38a5e2de530c3ff9af75f8a39c80f09d950df42281aeaef699a7ba9ab22db6e97b04a9e5492122757d9c0ea47ee3484477ae1b072ad6fb811428ae9d323b81a71eba617534735e845d875326e9ed47f4688be494a2d750e39239290c50fa6b196c85cfcc9efb3cce39e86922ef2743648d59342b2839847f7cf897f380ec363ab1b7e2960e5435e30316b86d92254210c0dcdbcdcc472135d5dd06ce66c10e8536f9c0b53fada4fbd63eaf6dc176b762b34ce37f91dd084b8714d2c027badfc6656d942f280661449eb7abac819d9715e8165f6b459fb68755658464c86b47019d3262fe7c0cea5688e9ccb4f289b3c1133201113e86c485a085fd6ed5282cdb5e3e7753b8d311fa88c0013b1593ce2b986afd5ea451dc6b24a1e739c2d8213bdd59a05527d856a507799404cdb98214a41c6bce172e349e4190287f58aa5ef8a42d98f026030cdb6b504f49acba366a43001ec086c532f89754570c6db9c7a9b6c5291cf3c5dcee65331d29692c1dec1a4f7473b18cb6ba18507572ebb78197e182df20bfe07a0c4a70b3b6d4f1599a0d784e30bf2ca0e9a921beccc83939a64c1d1a1b59a72f9cf7e9f2d6ee2e9f92510081b068aaa6de8624932bff530c1088e4e5a5d7175f0eead1ae609e563f773eab27f24a7c502414ea012c08d9960a27263d3fee573420eeefff40e572859001eb0595ee318c1da1613cd1a71847db3c6d9d88841f43124b596450f0397a68e35045805410327a89cccd2c17b244c6db1d21b45a9c98d7c4fc74f739118596982edd2a57b96d3abcfb5abea04d47839632fff878cc542dd9ed10e9f61a804bd5c3f4c5ca7a5ab89026850325affa8d6d9c6eea5f71af6ea0354cca22a07edf990e9132fa3d90f8d605ece487f78f0f10515513ffa28ca7bb9e777a7e926ed44317644d1420c00576aa1b23649e9f45d5b09310ce1bc712648551749941991b3a40519d6df85553ac9ec15274d808aa0577513e168e9cfbd4bc834344ea2eba9a413a9c33ee931e44e140057806b4d3355c55bb6f4c21b9f6a2ed51c16449c735c87bb9326b1363635f78d9b0d0ea5a272a34728bf274829a14896c9c05fdb201fbb91251866ce5668cb9240f50200351788e56d6ceba5e2e39dd1e2f593af156006f9cb37fa6c37e81a9e8c358d9c9be1dcc5bdb48814c0a135cbbfb19f5f1862e17a3748212b982cd3015bdba4ad0e1e0ca69239709e42469b20db6598b71411e60d0d7f54dd254172e254a37532010590c719c574045f854d59759f43f99e7d83b1c5011569b570bda43f2d9917a764f8deaafbf671dfd6fa57a389ffe37ddb377fd6b7c833415f127d6c56a142bcdfe5649d4f8e72c67a3b42a6619d7300a1156c69446f0231908be5217aadbc092344884cd2d4bed7840728af3478ef5da77877a72daa2901ca1ce28be50a5818b1a8bc03f3771f1b4a63f3af85c409148d8338c8a266692a593a35f7c0357c0ea8ff5c2dd802619dbb0ebfd85069bc27327d054ac9f5f74c11b8e4b313796da686a1a0bd32164424a7fcae8b77cb5fdea8e35c4d965e415ea2f7db91035478a3311cdd5947f7b2339afe91b69a06ef8280659b022f6215d27e330dd653741d7eeabd65e005670bb8f5e252e78de9ce0230ae318112a1a6140d071db3bfa91c9fa56c259cf120945c82244aa6ff8805be9d4b73eac548149f50890b00c14930b28e7da63fdf33fb73196f77a6f818fcdd466e2f6393be8d4a4d85a4176a868964ce64942391bcd146dfdc5d73e6993cc6d6c6e304d4255f83151968db423bc43aa695b1e1bc17b0363a5e9ce388bf8e33494ad4e3ed4850faa4a0b399602be5f49a026227637a9d290499672eb37bbab16dad8c418d882badbc4c6d549ae7971b2ed503160fc115dc8ab268bd59016ca49d38debe077777c493ef561faf92db30f9dc576ec26ef5fe41639cf9dae06afaa1fa6dccce0bc4a0951d89abd152ad4542d57678fff0927e2718cdefcab2535cce49135407a532181f10d86fe119dfde3fd80cba4b9b0112545193fc8676957c6315111c5be95ce4ac6367f63fc05f6d092be4027376936e1b965fe710e7937738b9aff70b68192b521af8ca763b1e5ed28a648f06b5b5dcfdae63490c5581b226b89b4c5c00fef94e9e34d31854d7de54971657c545f10aca2f111c4b0f8c6306b63cd8b05ccab2b351489c7269c3b01ef1340c698a05fd276824c91feed2f3130d6e69a228e97e99555ba68183f469d0be9c0213b39335753fa4ec52596c37009abfe82f42ba8cd96b7eaf3b662dc866b79d94982ca99d53821a50e2a8c9d209a857868cb2a23d40de9fc9c8d12772a2fc67d4d287c3572e410d782af54ee8fd4512cea9da3d0a1a35f9deff9ffb65efeb7e38432d7ba495eeb047ee0d300f5104ab922bcef2d77091f2bc1e4b16bcd9be5f14db6205b87a25d3326afa280404c1c1b47ff04a246cd6f50343fee99b9a77837ebc809d25dec72cc832f9c23765e1cc6b7cb7588d17df03a7159d0092e47b1f5e5b925106b0b64d20f38a99d11a4c98bffd2b8793bc3085b95220dd33c50340967d62ab28e1480a8c61ad8cd6d49a8b5a1cc65f26bebdf59ebe16f0bbff64a708f4faa015df93a905de062adc6ba65d5ab880a7c095211e2e089647db0233a8b0206054554a52b04252fba4aae7f3ce43f60958911dcd23f3c4b201723c2df47d60586884c565214acd6a7c69da8d207ab88882aeec4db414b8807f775a9e8365489fb3918837f510c524a3c0215fc2b364a750dfb005868789b0fb08be307fbb57e397a3f48d911f1ef6c2c73a263751a3a8a9b27cf014df408eef93d139dea7b2faac4491b22c8d3003da2852f2ed54d1f44f5031fe567e627be21d58d38f16f151ca9aed5540ec830f116343f263d6c900bc04edc9f2af40a264c464d7bfb5b252a422e5b10cafcb551126243bb15d7dd09d94f279431a2d5f4bdc33ebe8422852ab01d2d3131b4c67628d46d4aaa3a5f007e913e41fae5236ca89d059cba1f4a4954d44fefd5bc7e7088a270f9fe73c3e19c2fb582438a5b39bff8b96051ef46e4ebf88820217d97597c57e1b5c91aee3316fb59cbccbe2dcdd22d90e4a2a516baadc52f9e1ce90d2a3c9f0e9567919cb6a086fe2282a404708c8d77f6543a790d190c0bc879762ae6e67350a5537f1e3f5629ba9c2f680cdb93387204fb98d3d4f7ce42fe2dbb6f36f3ddb55b634d3f01579219e615b138e3811800ec5ec8f2a99ef6caf3d43d098de4b88105b6c2e9201d770c7a24c33b86d807bef55aae2ed42223eaab6b71f8a63f60c59cabdb7865c513923704d1e40699d8cec41ab9d41e2258c52d0c3ec906c4e058249434f1c263179b5a530f0a297d2f8515039f94fd2c43ea1d039e573ae650df50a45f9b2448e54a8201ea4e158a25f383308619e2787d6fe76bd178a065d81b566150f156a550becb2c4da66492faebc81c19ceab932a28a59e7a77b16661849c08790d84cff978862a18d505ba4b627caaf1a53b1a843d256ec04ff103baeced84a6aae795d78a8110f6a7a0c85df0a4c232b49b5f9f8dc4419df35cf78f1cf8e69d83257673c95d668664153db700b2c0e434f39eb7b8aef321f8d1cd6dcefeaa01adb87b06733700c499185dba1533c61ff829829ffa5c25a41381b7b79f0cd6938a560f0e3aab8c120d3bc480d35c5b8459d34064ffeb05ac3098fd8c959312342170e7437c1d7b11e496486351821f2086678fa2c341062c0db4a9885213619527431e4604c6babc603270441ea5103732bc6241deef50af8d98fe25abaa29e24992656056730e45ece608863d950321fef9b66a84f006b85751678e749adb04e067d413c2a595e2990af208a48e25977f5419723c502451b27461f2e5854bd6b6788496981d2a7e86bd8516ab73dfffeed689dcd42f36f1740c6d811a479fb7d77c7b2d1200681b9784642827c154fdd9f5d7d152600fc4fa9684334249b2de377e0ffe5df86019b156f16d169395671d63b5061591cb5a0fa570e61edb82db8d51db4c5d18d0987a19c280089d8959f3767d8f29c8b45511dd400ef1c3ee6f35c89f404a7a2fcbf7b653157deb4ee1bbb123fa7a22f812bb062cab70232a458c1a94c02799299d8d47cfc469592cf0131ed79202821bcdb1c6b5f34172ae85ba0ff71aacfb937a7500ea5957593a8768cdc6a222b623d616d78369d1ad659837807f38771ee6aa5bad6be80f88ec5e356ad3a947794ff9d1acee838e23190b90edd143476afa7a61470c29536790b9659c51e568f466aa447cbb5899065af02432a868654ed020d319315badd3d56e3c3a3b287a71f45d2a1e22b27839ec5699cd0dace5bbc86829c7de11cf8a74f25fa58363dbec913960b0aada090ed1437fae3591f585b05579502d87997b2166b761b52ca09fee7d75cdf3a9fae233de4779f44b56c4fbd4f045e1a23be00c5f2b97a8900020e0da370732da2c9e1f5fd0b745992600c43d9a4174d0c56fd625d99dc382d8c22605f41d099eb412ac2a548566cf605f018be516961fc4a6f40d732f71032ff205e42882441d1f62d2df67997376c76b2ae8397a27d3f39af4b6c8850e9d9e8a64dc81f11715dcb59c2e7302b15768ffad2b0f707fec199b75225a3ee6b5b16cd1237e314bc1e983f72b7720226c3a8589a1f28e1e0774b3faaa6fefcabd83a5094037a775b399487e32dad7836ca74528a6566c81ee57ea2c8abb6f5f44f59bbc7be688058c42d721da693428dd9f59c6d004095fd5188cd5bb6d6d3303d33dd5f9f2278b0097408025406809be92726481064306d811e2da93a4a2a0229af7ade5e13e92b0de400a97db4198073e749e49488a751ccf57916ab2911f00278e28fa9bb41bb187ec40b9dd65ee10c3dbfbfeea5af7d7ae165f4c7788a7894b104c625bef071eb6640044ec72833ca3f8ea25a2b1f7dd5f59d96b6200eaa5bbc75c81e8a0f915b33e74a0b50e2d0858eea432390ec3d5a262a73d1e6297e12967aae488b563ed319c56bb3719991661b52f1080298456a70359b760aeeba93c66bfcbfcc44cd5ace084616d21c13e0de5250ef9048523dca9768bf660863b46e0dece62d38da4c24f79d74428f86ca9d975e6c8512c8d8a0ac6025c2ee351d5fdef79a935a72d1c3ff549d6d8e2c4a4375a70b846c60d42782d6f2b67002620ea2af905e5d54a05515331c597550fbc3a38c161edeecefb543167e0851f453b0aef0e3ba863a8f9781007a3c38e7f40c06ac7591d0e1508622151ac339c980b6b738aa8eb842f870986c59bac77fce2254cfe1327ea187bbd9544444cacd86bc6e6f92a69e53b62233ddd98cfa5eaa4aed0394ee016274444fda9440329ca91a87cba215c3b87a6d453f02f6963e5f49555cc378da123928f3727a03626c6c3891ec204121f5b698f5623a7e73f72d5aaa5e97e13b3080e0180e69a0efafc2f8cea1df840fb9ebe06bfa59045531cce9b6c6d5e455008cc7dc7b9b788d58cdec61dccac6cfd039372ffeed0cdd8eb223977690d015e56053cf9e848b657cc01344decded0e330b1c1363ae339f96db3a5c525765a959747688127be039dab8ee2f3d0ac0da28a37d9c22cfd407ac9c50847c86f32e9897788b1603231112045c0902461e3cb988a3f8ea30fecf88a8602fc55c0f5b60b89fec9af2a9568b7f361d6b09a6bea04cbc3835244fb9c1d58ea832735891592e54a592e73d1d6e3ca94c785ad94896dd983784dfb711fd8c592346925251a05a1d9c3c358230e24bd581bee33f71f6d8a2985df3a805474689ec05191aac3b58a36e122b1a020cd4b52106f929c84ae5baf0897ec5617ad712d519acac4216efdb89f80c0eea9f0df10232a609660ec1684008e9044a2e3f6fde42cd95a62fcda280f3d5945043342f6838e35c1647dd6422e29c8c775e945bf4081a4267552eb1c0aa6d066a4b349e58d82f3cea19082a0aeb6731c51a190e1a0ede8e2013eadd939d0b26b1546b03e0eec527161d4e7eb9f89e9fc62147ba6fd42ccab2b72232a124a7fb34581db82579470a5b14048d9bb71a947d5d3c4835fa9f2e2c39f991551f282606b2334872d326bb0408b799f408f946c62f414a9fc1818c31eb43df24fee3ba5b74405675ded0646c5315b2d8bbf96e6edcee96182c8a1d1e05f6bf6c94519caeffc4601dfaa3b56b787792c141b249082ff49ebd6afaf22c092f30d0bccdc8bb9d2c185d7baabf76733c688cd60d0a389c65e1e2c7feea1443f26796b4202f38ff7a81c80eca26f23215474c4836749592d4ea6cd72403c6d9792b7a093941ded539e232103fd232158a0b7522191f8d8b2004903f15940660cf3f881b91e7aaa7d860054938114d43cabd662d61fb6775daabdc9bef9446e6322512cd4816defeb2c4ec580f07d9c319feb8193321d713c3dca62a7609c0394807fc434a175bb22207a004339ed367f57ee37c9a91b10854c24ebf58c9c399c84260446eda5204f370ecb4f90a946ed6c1cdf114bf8f73f9b998f02489610396a4dff288522483493a2748e2e4cc4d5e6b01e8b4f015a68df5bbd8e2692152c3925a7abdbaccc715eafdae9c96cb74f5001b641c07f0c5667badaafacf032678c20bf7e05181bea5e483a0ce1c08dd504b0762c9c72938f54f1fd6d2497b801e0e2354f8e10b3a6bb6ba5048d2d21c571089529fe3d686a6f6409832e62ad83b0b37d89c3eda92f47935153477dbf8a540cb566d538ba9968475f30a481dbd22aa94c7250282fdd0e39c9587756d10df0926816d4b955b6d6fcd42c67da98fcfe43dfa4dbd8ae17fb5c9a4d7c3f4fd3ee2bf6b363fb1614d721d4c900a2af7e61963341608f7dc31971629d37f33977a295d676d4cc723ef0ce88d5c8976fcec0cd2c7971258d1b4ed6f8a7e20f0575bedc6ca497c1588d0d2ec376fb9a0675e840d1c0a80a9cfbe4714e600a1d178b56398e071e4101923df24f68564885de8df51416040892acafd2214a596673a8c677041af4197fc7a1dc10dd1f05adb5ea446ddb7c73e7693f911e3404b42a1237bdc07c0c9c03856260db12fe3496b400cf1d8d362979c8fcdfd16e7c01ff599d4b8cacddf44d096eb6902db15d6665ce1c9443e6f7bfb07792e4971517819e41164152aa91053694aad4dfe8f3dd244ead799687b89cee347ade4cb7ddd86bf5b13461d48295cd5cdf568ce42f24258ee15a290c3d7b5641d58fcbc004923241816bfcd99cda30d6a3616532f8ce3be6eec8482a919ba2d35103664f1b37677592cfcbad566a7410275caa0b63ba86f0e9825ddde781df0db4dd96ad5e046b5d588fdbe57be6fc085a31454dcf92f54f85f1c70b35da192386048f4d7434c6e015bd9605072699fdbbe671d4ec989a85219336180b279e553e59b73e7d6f15bb7a0ad8a241ebc278d01005c98425c1a36e8e9ec47feca5602c7bbc4249be8ba69c4fc3bbb784146e195f07ccafb4ea1809f912f2261cf35bacd358325b0be0d0cb2f2565bd6426ad9a854956e5cfeb7f768116f5723ca4bd8a5c88b2fa97569f15433683873861d95a1f74bc754dcb238a61109d7574ca6695dcf0fc6822cf5f0ce3179993ec3304f262f84e4fe1983a59536600f4c2e2ce5ef4c22ea90fda12a47a428fe0f655ef3f76baa1b2cf452e044984ecf49c30644fdc2f9d7686d9ca67e1ef2195cdd6b26535fefaf2ea0969619d50d3ed0d56f99c33dd65975a09b13fc798dc33b0d6799acd8bd28efe972680271b302652fffebd16cef077aaa6b0a85bb5a00a1b235e32995a62f528fa93c765ad351476b73ddc4ecbd54b496ef85738246bdc050fab22a8d73b4b671f687bb5ad302631fabc00d8f676382a45726fe656d93145a270361e1e7d6c76c7c8302efb9373d6ed75ff484346cbf26fe347584502703972b728cac8d7d48b1577d0e26f1d8a454ada86f15cd33c0210896e69b60914fb381355273ea59e3a10a9b426f47fc68c1328cc3c2f4b14151e29468b7bee9da8a5680b8744a6560813a43408b4b9d4a409e752684d855e6d2779d97a0880d6ee72c8b27d14ccb9c5609172d8bbdb8b948dedb6c71a6d822f7c080840da2828bef00d3b1b90fa0b7d5a76eb2cf1d0ba71325f35791fd270e3c9683d457b820b8d0018097b2a592f299e77bf2160b81e963360683ab6ad08a24f3aa90ea1a682f7f0f1eadf34a4e4c708ce9e48d75304bac409cd84acf14ffbd5c8ca031a8f9199aca4b84f9975dafb03456fec0307537f735d2456c7c0b132cb93872690ba5533f7c95afdc25fc1809e991058c6e1a0d76987676c9407411dea96e9d4ad1be17e4476d243f8a6a6f60268c43f30cc39362124d2fa2413adad7a95a9d97bee2e5927b549217175990518c5878e93e500c44dd257692d23977de8bd9af5375f930642698a78612648c3dbff59c18937e21537c92f7b989a1cdb1d2fae324428392e8de2fc4bc5988d1b9125140d6889ff46729ae5fd1392ec991d9fe35ea615de786bbe04c7a32b4f3cb1ae243890a26f1161c9d9a9df66e7390fd1b754f313f7f543a400a7115941b0a925db44f0faa42478d9b3da31846d06a245dc9386e70f6cf2dd33308c356ee4356facc438b532a579566970b390bcb49bb7f62ba9029b92d2299d2f4861bf156903ef1696e45786bd96e4e9eb277a391ba21f0adb44b14c6ebe6bf60d48b0edc8127fabaea8d94f9865152f7f512ea4f556f78598cf975dbe00f65c60f478954594235a4b3ed66ab5ed355673eb2ecdb49b8995a2d8aa7840ebed9d420d8a16af9547b5cc44d89579922b96b166deb244b2d9210b1273f43ef180bfd7669502d1a84eab25ddf8bbe73cf5b38cd593ce10412fb86dc9a56c6b910da40ae0305d80c6f7871a87096f838c02821b3ddbfb5ee99ba3b21582ac31d6f5bfa1c55201a9899aa5a8befed154427aeebc9c4c9bd63006b4b827d6141213d677dc6c135c59aa3201b4e084eeee904626dd4fd4c83bee5cd90c756992f406e0015c5bdfb99d9b24a0336b9be0f4a2d1112bd385eb50a76370a2ec9ddbf1eb78cb3f7f39c416f31faa60c265a0ec52bc3b2feea52ebc7d0e62774f652c77097c2d4eab2842eed8d57314e267312f48bc777bf647f7ff920f89945e71e2f792954714ce11b12f13789fc1e4be07a10f6cd1ce82624dcedb6775ed18bf15b179c1df728ee1c0cbdf4defc7d24effbe166cfaeea8965885355453f3af59b6c35ce08a21f2b0c3e3289bee0ee6b6199c54e171a560bd4d96c76c230cb73e9ed7afb639c5825cdaa2f7e9318ffbf2e395ae1b83b37ca9c43065437213eb33ce39bb90f06303854d3dc48c8960c550a235a7164eb427246b2688cb32d2300b7e8f5d955004c1b391111bce5bdd9ddffdfbcb6532da9de6153dc617a341cb75f661f621eb5400c77703ad37652f2df0a30230bfcd0f166fe7c66895425acefbcd65ea80f540e2a8300aa52d57601db4a7efd3c32067018a72875f47e4ab07767e51c7ae2dbadd7c6c7d564301fc20b4c09b69095d36edc719ab9bd8cfa37748d0b73f044fb39f98073f029ef31da014d97f2ad4fce273a99abf235c357b6c834f26f2124565148d3e6105cf311f75b116dce6f4b02df84b856c23a2f729e9849fc3424141c0f4053b783b862594869f39a91cc32f1f3e1cd4f448c8c14b3ff86de9f28d9776e27077ff0b08c2193827ae30c5a1b50738b4638001302cf23e9b3a2a49c88f6916fca3eae61d2673a37b3df4c98671af195239086bb5b7de568d37f47e104b4d025340f54e8ff8feca0a5b24a1ba4044b97fae995ed3ba52e88e709d382e1ade18a07bad7205c3d318bc379c8b049bcae28f38851b5fafd5591430e8fef31f313e59bb1d2fc7d93aac1f44d4c0fd5b8364e8109aef5e26048e6b8373175fab8e1988ffccb8da64a9fd2f7e9dfd16c35a9c04a843b59ca8971ae609c651f6107d8c951afc282ee5cabee8ebad0fd3db1aa7ac1ccb42fbceba65b072f6a3d5ca75f1cb546d5eed3fa1e6d5ec54893b958edd03fc3636b6e5c0ce425ac161f83627ff4da9a3a7b2149108b426dc0bb4dba19f7a06dd93e4732787ad336da265ea50f61b04382ac25aba6aa0005b23ff70004963c8251909b623c05730a6915ad90fee3f38c53b846a2ef58379e7e5a6e3dae9c3ba3389b0d7b708e86878fbb471c40211fa465261fb2a0886487033daaa4b483ea5bfec632761ca9257ca8e84e9af725f6ef34e44e8cc3318910788ba3ef746eedb65e46d9755f7dca2c22b481f5358aa65ba5f5d7fe1792b07d179d43b58d3dd25212ccffe4accee7dcb9bbbac7791d998ae7600056d32dd36b76c302628dae073be12e40cd3a05d4abf71363b72c8cebb3865c7d63ae829e4a6ea3014e95870f1e7e3048117f9b926a449f2610683bafe5e3d65702e38d583289f51432b6a18058dd5308df386320239761c00f260b5db1e6500e6c3ab358c396ae4f672ef61ac43792bcedd5200cff348b0b9f468fdcf59447da1bd3084a07947debbaea407aa1b741ff6b64a217e215c36e6390eec970ae3e83c7c6f1a5b7733d0357ee26c17f7b060989fd01bc054fae5dfe6f7347ff315862e7ad4daaea6a8cf4cca094600995ad868f3a0137cde12fa8ecf33e2cd1fd1ab2bf3e246b67f36458a72b74182a832968ceb7d5cafa1b69c8852dfb1440245c6ab6fa2b7da1cc46e0a5ae59dd106e9ebdf606d9c2b50468588afd6c5610746554f8a03ae5f17e30dd089c1c91190ea290ef212940a20758cf2ddff6763b8fe50e292cf1ee77a2b237eddb5d53889edf7090195262631c8683e83b4003477ba3ce8ed6539d09abfd2eb0401ef3fbddf13ed8249c6b9273d57ee9020b3bceb26b25404e0492c9ebf2f5dfb535ae7b39b64192aa0b76ef4fa8fa275cd85e37c83d9aee5fd3b2cb0d3637fb4c4546995fe01c127e557a3261a55b45c6bfd7c1564a0d66f6a9084da8052c2cca589c808dcb6497cc0b820473532de5d9f614a19f7506cee70ded1ed863b148b5a9453f8f422d4b874915095670b8cab7761732f987ea35610afbc06e5ad714e00e8d5c7a4da49d3e99b93d6c79cbea28e25456545886efe74c9ddb530c35631e661628339277a75bb2d69bd23c697299e25eb702a6587f498bd55acfeaa5961705836b27bff9dc9a937f84276520520afd6f8fa1ad00ffa0f36b30d16c74a7639ab7b849c8e87503bcf504343f319af063ccc8e42519d8783335e53149dbe415a4f55c7b2d015a1a62d0025dfbb81eb87e7958d6b0f06e49cf514d03298cdaa86c6dea568fd131f7e79e00b12d7223f5d4d3eb364d5df3c5fc018a1934388bc8837a79da5feda28c910099ade0aa214b15fe38c3ec0492ded3c4091a93eb2498bafc92b0712f3683b519db15d9bf1ebb1012214e6d83f4ffe8f94ae4468fb1092ed432688fbe42425b5ce9a53d5b4eda89adf4bf7b33927bd748ea9c802640eb8df314e7ebb6d8dc5ae8bafc1eb464c7afdb65268c28a80f614fcb8165d7fcacfbe8f74eca0377ad63e73d43b6a587f91860b95b77a1bb9bce2868c552a62c61f3e4cb1b7dc3a528830a110ece8b50e4de80f720dec9001b6dae5adc491105f1fa10e7f3579c02716aa12627e4f8d6e5debf6c759123d91feb6a911426089318d6eec3b6ce41d3cfe43604ba37a8aa40d8bd3c5d55cc10c5595a110bce18da636099e31ae6117c013d7a1a6e179d59934b9addec8bc75cec98c0c836ea04f93a820df79f6602f077ec38d84bd449c46bc323d605f83b48cc7f2158901cf74d4cb64d108f31ba647fc43726b4a7c7ed09e2bd322e605aa3a2bb72a7d9908f2b9767101081bcc617f2b756f9315f2eadce8ca6c9ca20bed855073270f1643a3fc12488f607dfba4d1a3bbd5bb4ca2f0201eb8003462761fcea7a0125343804128a5a44fe2902773fb677a601bf135cf31e83e83afe083313a1942cbf604b155b0ebbe7ff34d5c35bf5dd91d6f97e95f96ebeb82d5621d5e17b2989a879235b8499fd07fd6180fa41002107b988baebc0455ea1c39d1c737c9558f676e3e827b39dce47bfb75aeb636016c7851ac68a5adde68357daacab47007ac9ef965f47b93ab198d1d074df92617550aa8e81312d44bfee5563011232a640c570445b207bb73a9d65ebb0d20dab1d0a18389afb33f636922cb5525e4ca1b6030476c00898a8773e296e0030da71bbd2d53bb579a4e848aa3f5aa8c95af3cf3e61c1fc8a09d1124a36be5ac4f6f69d45ca760807a91627e5c155df2c305a9e4aac38f56d78030a7ed48e83e7248c4105760535c24b0f91fb43ab993ee955de08e988bf5e5b3bf954f897aa9a0d02f8c3dca80be37f54fd41696e77e69e7507c7f10c1dee9bdc9d33cdde390eb18717cc55dfdd8267f2f5b4966e48b299b299d462adc1339f8aa5064cb760ed87d858b50d93730747816c459e9ec5cd8a608a894f98db9ece38e6a623dac7dcd96a5bf59e9d62090087f9af24af22d8b5a247cd470b1a4e74706dae6b4cb6d467c812c13dc64db400ae8744baa5dff6c06c7d1ddfd9ec1f65cfc0fc7f3d90419ad784ab18390f036384472c828f8bdc29291f95b7727521570845fb539338585a03da0ea79ec3d0c77a68bd6e71e53cd316dd0cf6bc95a00c7fa8cd7e6822af1ec3555e4e9910bf1f1a19510982442ce93d74510032e8bf347f63bb7883c43301e9b497973d6cb2482dc8ae2d82b1ef2be812d7e7992b5faab3aa0a245046a8ce5d99421be48dc46d8ee8baf0881683bdb170aa6c7f5c7fd26d65b56cd7b2dc24a2b125a86aebd39146a7501db30861df6302bbb05207d0461fb454d3004b3fa520d71b508896b14350bbba5e430c2adc044b7fdb2b121c8d9e61c27384c769b6804159c06e47a43232d00b74993b3a7df3a676bcc90262bcd13720f6666195a42d8d1b8758ca57de115772f7bc0eca5c76f5416d69d131c84ca36f77561af69352faee5952d13d909f1e988bd1a432ab063e69100ced51528d89b9fdff2b0a458fb69a07dd17bee0d969da480d87a7b5d66651cea063e736d7fc347b8ebae3693511a7c0d63fd99e799148aee669fbf957b5437b03ccb5d0e26cb074a7347663da1981dc6d4d161af102e990de9fde03a625c8bfe8aaee47487d0be11fcdcde016c8ace6a6050fc9d4080ab71bb5ba16ad251b9e1b78d956bb3b070256b0a7e1e2c4ead05717381f8a1136cf0acd1516d351d9974038419c8d23a5966c4eff0133ea2d07d98110ad120174d8df2dbff90cafa9155b7f8b71a02dc287096bb2848ace0b0acd36156c2557488d20850a2d93c75ecd7f14c7deaf7554707662e9c1d7d9a1ef9041f50734f8d5fe14d5472f4067577271c2232c63fb6303ac33db8d5c52fda9bee7858b7566eab3f24e8bf3b89071cbd470990d14bda6808c9b1a47805ed558a0ff92fb963925929a8810c404c42287a394367c799030100ab030e51bd6ac36ef2886fb4de57f1cb9d08fff1a47ba926446cb00e74ac2c197af29423366d0c04e594d4fe2aed32f0380f1a0b5da9cfc53dc9e228d19904172c48ce2c1b1753126a8573a78782739c683ffd1a5a8c2e24d40cc5957243d5e8211f5573765dbd7478fb857ef5ea1dd764b232bb5eac9beafeff477b0ddfe154d8974df5aefbee5e9eb7e5d0da5c3f280634b0acef6c14a628c5bf87ef69534324174d6a6bbc1855de1e2bcb157d7e95560eb0b6317d78701d6a6de982b75b05c469115b59f6a535d32557136a5128f8b9e2aed165a760839e379d46869bdcce8c10a19e0bcdae7e79507485c29cfbbfeba413a8af53372a8ccbf83616d289b3da4312e3d8f50cb745e13a739f128c2af817c3d516f71c28a839041f941d492dcc6dd84b6535cf1168f10946edfc182ceffefd38d8d78556cddf17f6db4ae70aaa3e42ddfce4c65fbc77697ba4c04c32d436be8db30320ee3796f067ee2541237f2caaed525c54c0bff4cc03b62833b90b9b9f31e1b712ce8700306b73c447d4fdd1dfc12335c257a3374f42a34207ea23fdf5830c8ca9a0891d92931a13e1404e24bca2c5440dab1721708a38a743e668c83d1dcc9f0c272481b62314590d7f1d90cf45afa406e64b14e293655940862281cb60971e8e0d95522644288b1e60cb50347103ac50f51079745e02135c2e5dac9a3abd8931bdba53f8432080b5f2a023e18052afb750f95b443be2e04b9aef3004e25c76482353150d5e1e4016668c8da3bdd668fc8516aac37a946934ddd88f0494a8edc3004ea4bc53b0010f3d354ebf15ff24f39af3fba6b7c85cb4265092107f90bec2129f6bdb92fed69a8807efdc73027703e91f599916d0e23a826dbd573ca90443e7b3858d3720802b3918124d5ef50e284a23d10ceb133c6cd8ba9ee426c8830be62ed6625ec3f8f2372cec7704ed44bff55bbb1e0e31866f38c96c067fab62bc4e983e280a0580131ccee55432c44f23719faf18fda8498de62792c29846fa61c852e2254552c58c480641ef322d2b2f2159005a0d1147a856880be2763bec6a0bc25c42a4b0da8443ca676f41c21d362c80f86a93ff4af2aaeec71b575ef0c22c5449ce701f9b0d190e227965783cb9efbbfa2f9e39976c9cb8baf7aaf01a97e2fda679560cc48c2505dbf4c61c1aa009d819dcf3d3ebb854e274aa48adc3f47f2e4a2cd282faa86ca4721493c477af10d92760a39ec894d2fc90760d7ae11983db0764761afd4ae683172c313131fc7888540fc8e3d5272a3f3e02e8850f5e6868c87d4f49c77139d313345936a103eff0d48fbebaa1c118a6f699942d6f2d5880cb4994751f106a59828a94a2839fb7e222d6a3645c1a6fed33f8727f3d7135731a4294349bd81ff9864ad266f616f4b9cd3e5be280472d226c920262e5eea15c479affdba72b72a1e59f4aa9b8d149746cec4156559afbdd063a0f1756d9a25c5ecf520af3aa3ef0f305de92e3417e2c4d4c64784ec14801991f6ebd3f1b030b23ad198bc9beb2560e754778819c2c14f01b92e1f99f90cd353f38f7c2cccd514dbcf7deadd705c936e5a831903a9956c96a0641e312f65b0a0de45d82e73a96d3caae81d6cc11b7ff6c3fff44b04bf0ee086a652c5edb494e153e173739815d278216f4309550114c4a37ebc4915fe65de1befc2932186a9241d632dd783469357eb4ca16b9815813e14fe99e84498e623dcd5e421675afcfdb478428b9907a08a176d1c306365ea88a3557018a85205b8aca5b6332bab5bf06536f89bb79729c63276ceb4c6ef1e0c6cf3e0bb7998fbb84c543ead75ad9a4a00543d3123e3cd5a53dc3413ae855af450bc58963ca4cd1e93d6fd3f6fe1902fe7d902d27963e8654e1cd028bf55724fc8dabc6d5209b22bacac3bf103d8435fa37f34a3880899a26c157179d72cae98fc0ba23d3d82fc6bd944fc5b5c0f1fe1012231d330077fecc5d32a72936b9da82f2315543a2560aa332595f9b1e888e4879966e9d86a5f582e4e38c07dd1b4b9314e7443623ff35cfea919ff1eddf2701d00d044d9b2c0dbb701d45f6eccf911bb7e96c1c14acb9c558704e7cea2e4d3dacba6e6bc3520981b9aab78b495d451589942ecff6e1a421ab8a25c8372be39e4ac87772392906081acce512b17e9bd956e38f53a9ce2cb1733cb000b78718965a004dee9643b3e6483ecb2e7f84ceb969e3130693d3da125e146c49f78c25b9194c6df201c1f1cc41887cc5a77da22d6b731920e9509873890616dd0c867dd9ae9d91387c64d7edba67cccf43c046786d71630c6a4ad67bebec77e120ebf1d928741e75f07c62a8ae93073fa5f1098d16c09a360b7902a500381ff6b3e9c809528b557e93888259d3189af536df3de662ec70360d19234169b40a02e523e90ed41cdcf1cad11ff6086d88ac77033348dfd3f2f5e377adf323ff6391634ff6621ea196b4f213e2e05204aa7b019fb1706a6ebc3ced031d9f24692ba104fb9fcaf117542f79e3fb5fc11ba16341e4a890997619d4c7291b80c9416754c5e9901bb337c42e5c7068c6184d0f3620d7d7b77fa301a68ab214d8198e4d773dc5acef9344addc7e6e297956059261bcd4d19249997c4cb3e862441e67fd032bb194ece04cc301f0f8b08b8171e2d5ce3389129dc03410bcf97ba0b0c4622d6bd0197e5e4be63216be4d6070f7e5f5343e5691b33c320486c3981a87b1973c0a719ddbf82354df1950b088351bcb6b42c8fd1e9faa9034961af027b10241c627d51be9d7e2cbfcc9c6dcea956be5e0931b6a41a5108583f9413c14e2e4ec7ef8f8bbf11b025fe8624189a3b36a5ea3bdc50081bf89e15d253f6283dd259208f2102452bb08008663a3e5875b9571aa63ad65380de5534cc017c1454f2a69c0a43a41dcfe9b87ddd9093b3fdd41665fc7e3be1734d5f8266d4adc6c2d9ae778315c621bcd4ab4399c312c155d9aa4fb332979b17c20d74ebbde24238d2783416b295202a2661ef30af34510881fd254c84972bfeae5dd6d579ffe7c174ae3c1f3cfcd10cfd712c4717d149421049f1577508cfcc488532bd9856f04539ddb8a428bc49c96ed1582f6c821f9e4cdfd59da15ad713c07a80c6f288329023fa05271cc3a0d506b1414f04e10c36791db8d8b59e31203ec15cbc769ece794bc3bbfede35692b763116dfc2d24c019c0d943482748d810b1911993adf25e1e979c50fe5a7e5fc0c980d5c0358f9fa3c2b89ad808ff6c2f7fadca37499c963a4c073c9c5f50a8cf01098a7dd0c28810323a9e0a28597006fba47a6856e950aed162f874dec1e55a1935781226f352e1e079a6a1edb49416228599ef2d6330922a34680adfd7bf8dde8c81d8a56cd3bb981e9f480ffd2cbe67a87a298bde4200621245afe5bced4c0ac4ad9dafefed841c1bf0639ac3a2cf13a6ff7969c699b23408c7df62349e7e65534edd531cbb73096a38609ecb3c5f2e83a6086a53de7e0785883e6e6b1fbec9172ed6a9525fa01c1c83056d49b5158d705eadba441a60731c4c534c2e2c7cd74733adb89a1e310388b3c59ea6706d72f1ebaa5d731ee7bf54f4b1ccd779777d7ccae1bffba95d162ff0ad62594dffdd78045d24ce53f411411b2ea8a2cb0c390bbbbb59e42abd2fd89df6659cf44ad148b2efd8cd2e3850e26526270269bd21fa46241cbaf6fb6d1f55b1449eab8f8a9c92fa9b51e084db3ac92679fb30b1a2b72aefdc7d587ba29ece2bbe2868afd67f091b37607cdf03619c8622d44d93c265d4941e87d6226d2c94d786c9ffa8f485d708992c4691980387f7baf4134cf7e0ef660c4a86151e4ad1168bf22f9c6f53caaf604ddac891fb2ed8dd1f635935cf3332e591edf7b971c68db909eac20966e971483e6f9a43db236af2c87b43d74ae7b28ddf577372d34674c0758d34fcc1a63dc5cb2eb92bfd4de7c4d910102365f080b0ce3669c82e0b86cac4ffdbbd13f6135297be4aa7d6847468b7e6ccf7ccaa0396e12c70c2af7d8904583663d6648abcf439861c5dc9a42247b7b1d54010448835d08573c79a3e8d9f16e3eaed012db3d57ba79314129d1dd68d4b6249ad311b6e5e327180a7169f39d4506841e1616778ff4ebfb92e8c6b20ab93181965c564416e266e85ca6f1fb3de8731bbb219d7092fa48d3b9debb65d69da95c50bab0061b4ba45a9e7772000cfaf75683998bf8c40cb94b2cdc6c809fedaa02b8d5b54b0732bc064ab649c1ad99cd67496308352f74fa2268ddb73a1359291b7d8ca069472a07d951f2d9f35a584a885b7dcbdfd2e2cd02105d42e2358f6b85316f0373dd6937e1683e40ce41647cf443e4c6c34ac1971b072dec7e4293719669bd3fa67d28b2caaf99fb1330f7712d00588de38f900adf085a8ce3ad5fde12cb0634ccf9a5baf4f07d0012c37ff6814be130dd69f99940f624615814d4237d0f4e22f9ab6b73c34fb95d9639ad5206b38a7cc6cdab796768250c1c50587c578a21893af75c8261dadd5d37f6de7ea5354138859f58668fc14c81f96d0c97cbef889fd513acc9311a7ce9b34228a46642dd22bb930fd1223e64bda715f2c4ea2574c0ee3322ebec715da5ab5c6bc2ab63df1d15759551a42989e346d6fc1be14169acb8fb1f23c459b8a196281be0fb661ae8122d5486754bc1de01eb9efa986db183b107c3493d6b920130ec6c59914460a1336db423de09e8ca49a8ca0f3db936570ea298a921dabfdc260da5279366f1315eb7378016b36755d1589d4d97e77b778f8ce7e323dde6fdde361141fbe8acc3c5551e9468a736cd14299fd8cb7ce35192b0297d36c8abe2a1201a7d067671f833c296013bfc201dfc9f9a84334fea11aae09fce1f5e55cf94d7b9d6353b464871b988bed24ede5b05b13e1a37eebeea102357cb764666a1d8019219ac3b93ac3b3a3e3d78e78dde6dc5e6725a6286865b8727bb6049680185daaa297f3569b5a659b49c1ed96457f107e847456a6da63f9b52e1101060ed3ebb2953fc05679c7f8dd9968fa877200f1179a66cd3e7ab1cf950ab69cd91028ef1e8b99f22c29546b057b3ef0b617b63f75e7019f12b41a17c6db362a4c8cb46b5091325b9c055f2fd39fce49bd299185e2e773d5ec08d44c5912ac49b92f9ee359a47cf4e05f03d78640cff27907039080f4e4686fc2ece31bd6f48e62058b4b297ef746af13b1ec650909d3f57ac8b51fda25d81df5dffe11c3f7afbe10b1ab3266c9650eb94889bf90715ca566a57cf53944deeb18730461caf2cbe653abf251f9351e0fdb8655e40682cd515a3bfdce1c2d62683ace0075253afcdd2dff5c8813d45b0a5ad18225922bdd873251316016e9c3ec1e0bb6722968c4bd158ff69c7a8f1aa65d4066e4fe1da2167006522a312f1cb1f7be62012c1298d8ca9aef0714a0dd777f24fab037a847a20feaa7cd430222b0c348437074330fc673fb91e16dc762e7bf70a8cb81bbb45ee67bf7bc996d2b63cbcefbd1730a6769e4e8cc1431c27b9779fce33d9cd5c5a68e480b488c12f449d3fa13e5fbc936a6c204e54403863ae3d0dd3c75e4579d0979fa6db9e76a6979edd8120082d80c5a40e4ce76248709db89732e4930ce617822ffa513e0b9d872fbd46c0f621d3b1bbb0b809e2ea890a2de14b5b39a0209cf892322d52ca3ea88195617f1d049e1e1dc98e9bf2e4152a74d9ea89614c6f37faecda2b9b057d720911ba3f335d0053fe3598ca3843761dc25130f4074d016805c23e7a5e5e4f21e1dc15bb982c4da23b062e41d607d1fa37e61dc16de209394691b46f28935f4e267015f8abff3abf7fcc740eceeb5dcbd01e1cac83d17aa3ad1d37f7ee70a484dc2297a192a8a6caded7a1229726a000fb7ca97209a09c95b03f695dfea94b395c86c1f9f9d269c0421995a372abfde103bcf91320b29ab3f1b2938210d47e848f0ce3767b98781b3f22ab8b6c6b94863bbe4ba2b23ee076b8864352c416b5ce662dcef86d5790865dcd1e04ad57e7a3c7ff5a9d81462ea59737740a039320e596f2b1fa6660254c00bcda055e7d62f77c606443bc35d6c5378729ceddc94e2e0c4923b50fb06682986169a76fb2058dc986890f5e184535a80f8582f811c3f594c6e547d5917927753a9359c50bb4a07ce10444a8601842b6d686cfad6a43bd82e9dddcc8539c0b37b2a4c3013877c68f2a6ca052a5fb41d544eb47e510d2cb60f82723ba39daa5dd84ddbdf55760e075b650b66ae2088a7215b8e7ae780f7134af72d87381eebf729007b4e716ffd3c43b9f313495cab071f55cebe989830e41357eef7496136f474fe5ea36ce7850cff348967ca139a13087f3b34f9e839f4fb61d380075b346111ba861baf10ab2d4f19cc241be9c20b070f37fbb8c06399695e8a434fcc386e1759a77944709cdc297bb528ffd361f246a4ff0a8a0f1314af5df58ef0c8b6c8a6a30fa7eee8769e0fad8147cdc69809ca25d02468ebe1a7d888df3a995cef23cfa80d25f72ef274136ea03655d4ef66ed703bb159426d4cf968a0d615db6228d9a92e9e2b102c9a48202d7978638bb68b76effa37a33b6e3492a722b07f18281abc76c10e64879e82df8a2445e47492a5b6d3f0fc1c7ce58bf38abe0ffffd99d48c987f3ebfc5ee5eabc8925ab510bdf56c5ac49d20b0476d51ee0e281168079b7389052480cd4d97ac133018bd86f03a525af887417415bacb5520403271722acb32c1cac20b09a90d3ec44c34ee71c7302235afc1f11f2d86078e436dc86e0bf577dde54452732fe5906aafe79ce749d6478f464ad12e6f7286a47c56a9c27b24854431d26ac8aaef8ea3c7b78e51be9ca5651fcf543d418b37556a795565c852921e2e2eae9f2fcd0690fdd01c224de78c41702cc9117f586000700b6b8c4314f20b911cf5113b1fbd569318bd311707349c1b9b07d33a3c9fa96a63c06d7c1e509af9253538f314fe533a3ae74dd04507bb921c7068b74972d7a662a3edf8b1a974c380727e4717b385a5ce59a3b59b60e6faac713ee1dda79d31c089d63d6f24c0a4b591fe77272cc8d6aeb44e887ea322a3d8a72d4e6e8751e5c95c17145e460069fbe47b1d80f82f11b85e032fcd8b02a3ff5e53dbf72bb2b385449d2ebb0f3879b04709ef9753d45d06e43703a5b117ef025059ffc1b43030e3336f7129b746def4645cc637589c0d1c861438701a33c13b880c30a2cdffbd338c0a67c7bef672cdef1a1fb8916519b49945dbdca0772ada2a16cda0da2c4c2d2a22835a83f36e00022b5bc1a22e72d9457351bc8180b02ea6c489d2ffc77fdf7249569816f14fb6ad25ea101b72433327a56011fbe1777d0fdca83af44c06ebb85d882e376dac53051b58b101a578bbd1d0e5a3df358c54d8f8b2c5be9cc4ad1980cbe9ca5a466c4fe9151e7224af43edb9c98db3bbbb8f5930a1a0fde0e89ac00c6e1d8d67f05a8f42211bb0f3a4dc835196e4aa85e90844bc6d75b9acd815b6e737fa0183b4f1c54d42e054e4dcbecfe62e688c3e913864fac7899ecbd6a9d5cbcac384b23c467c57a8f685b222b91e2dbe07fbe6b74502843187e76fff5177b392a24b5d4ae5f76c961b595f719eaaf626ee51fa76914e04262e32891c152be978b158a9ca22cf9313b307cd3715187b04bae7174ada5d37c745451c7b116a601046b7638b062dddcc9f071bfed6bcf6b328fff7693651bbceb71e1134534ee694c61f19d62d7b190dc11d197a8c88134c14e041377df8b94831ca1c460fe9568ccf55d72e27cf270b64c6a422eb77d1e437090aeaa1dd537dfd105e927ad6857370bcc6f07bce7c77765b36231afc96786e5b3330b28ec414c7b139493b694bb0d050c289d2ea65a6ac03787fbe0db1d7951929323367d9142492e8b7675da57212bf7f32c2899014b91e3da95cfebc6438cc2b9dda2fac0b33a6d6b94f753c36105ad85164077bea33db614ccdae123797855a1d7174d704216afa1f17e4bc6dc57c598ff8090e3e0dabfb02a28f5cd62065cddb1fed1cb0e1fd0bd45f5b0dfcba897a9b9a826728094d5bc95eff7923aa874e10593d1aff65f68d4fc08efab9f1f8f6bd59af51b20374d5e4b67f111aad5ad6780883434aa045da636c80dc324be5db04059828ad19cf43eee137a73b1ba2e011248dae89890083b5b4011354e8b9ad7cacb19903600f39defc696e0c9c172a69b887a969c3d8ea33de72eea1259df83dc928eb266094515f3701617784bc15ff232af883d7579a858541a8bbd257abb26de1b136c6aa75301acddd1ad1f861ba620d4d5cdb8a4dde0817d156f6e2a0945849d63dd108551555600193d211eea6499116d3255fb1844eb0964cd0bc641d428e51c3fdaaaa60e73c4d284db3f1b5a938c6bddfd90b0b9689d0174d88ff77a329fc8636eff2abd8e7dc4406333d2999da3b92f92c6fefb60ad3230dd100acc837b117352f0cc3d71504d1e6c7d6c170d107fcae8d94fbebf007b213cd1bb92dc96946b24e9c7fbf986d528893e522afe2619c2fe55681caa4633a23acaf4a16be13e02142887a02ca77e4be2960bd176baa49c897a4f21565f5b25801726295bc69a74471880e66f52181b9e0c46ec426fa0642e3d295b99fbec1d66c964acaf9c193cf2ef582cee56a46f81d1ec1aa4a070a9857595cad6a2b1872f423343ddc4a273c35c838690fa8973681624481e13968eaf4251dd48cf569986a6360c305dd15472f30820f96f08e9aa63e9fdcf038b620a8a65d196f15f10e732a8b2693c9a857641b66e5636ab121d1a3c2f488e9a140db71f39cefe9aff7b6a117cbb88da764d96aa35e0b7e38c0d647f49405deab41db95fcb17fcaf0ab1b7c739f994e524d7a53905302b2afb155917bd3feaba2169b8d7ab29a78710f7764190373669423c10c5197ac01efbc69dea797899412751045018c270916a8e3771b5964af8abd20077fd4da11c0cb749fbdd9964c9d9dc3b69d6c4818d3ea93141b6c0bd53d41a38b81e7b155de0c7d1f10d2ee258735d12602f36de7286c8d22c1f8af5896dde3fc444d1eeac41aa09325ccfa4694f07c0aab1de06de6ea1d5254688753e582c96b766bd9f175fcc84239d52765c67635e5c0e05d6105dcac17457a0b609320329939457e19cc1f24e0fa6e92ee3b86c7922d69aabffffc52923bb29135cc6e9307cdba6c5f31fb1c7fc88a19db6ec730074214ce92cb7245a6f6a9fdc32224e01f672a04bd5776798a4bcb388345127d53b5d6e47abf044b937e7cbd89dad9a45d76040eb7bd647226fd07105df114df421646b62d0ba19479677b08fe4b75da745156429c7b95491e755ebdbaaa997cd7cbbc69db48c2bf47454b70e04ca67365ec3282e7ff3a2bc3c56ac2f518e9538e89cfe8ebed9a2491d597a309e033c5e502c3454a067900ac29f9c465c577825ce91ee5a4ac145ac42867eac7d36a7dd4f622a60d47387547209c715af1c0b20335e2f77c992469654dd43d3e06eedd169a4e3ea1543022aae78a05891ea747dd0faeb2cca38d1026be513650c8aced8e7270609428b22e484c10d8caf16a2e1e54a9a452219f37a5c223e3e227bd49fdd25929e07f04acdbc8a22544542a1699f99dee8867b1c1ec8940126a77ee07ee141f691b0905ba0cb53839d0e4181dcfab64e147b7d0ffd3c0c6ee9588738225101e2688687596b8e2db9e6fa12d5822dfc1895d7928882bd194a6d05753bc8fd0c4966267631bb82c56859e3ab1ce726803f5ed38a2d8ffc54831504abadb429887e73a838e0bdd922fef6a351b337d4b1821d0ac198fd59f1790e771c9d2ddb46bbfd8cc39e3589538e2c90db1ef6ab2f29ccd622a859503604bf5e94106b8f47b3f6db88e68c30b501e3347a6d8b81dcc06883b1a51788d437514e45fe619665a6cc9b6352add5251ecdfb90e36253b5572b81e21ccb85d4f042fda17e34eed1244e1f1f6957d17e5a01c5d8a82a722557856dc4287e8825edc3af2308170103622c8dc1f8e6a7c729de4a18ebdfa34f73487c6af014823778a34322dcd6607ee2af309f4f8da2d161a92cc9de1d07b603ab636749237875974e0f62e20183f7c77ad15f54460340c0f9de744db07f79df85aa3511a892ed8d2b40c24d86c9469f5062c6e000178c6afd5962941de3ffd7576e42bba046af0b9fb585a9edfea28587b429e514fa62889092e07a8d389f11304ae16ef797faa1ac43f88c2fbecd6a3f8fc8090e5e34e1b8ed59a7948181d69609630c45581481db9eee543adf050169a19cc2da4e8a066c32c7f02f617d85edeb80a60fd0ed065d52dddfe9d3ec944ff0b553678b57ca25613174f14361a8305af1de72286e9576188697d96edf6f22b3720661455f12f382db32bb037975ba768471bfa522c6da09658972afbe2f37d3cea51e252ce86577b6c060c2c54c41cdfe7514dd0aa214ec69c9e0f750912cc7ff10cc57c917eabafeb18e4c217b4de98a2c3c583de093454da30ed3e8e812d3bec123a24f66b04101f29a921d1b82562ef079ea2d2849f4aa19f1d40774c63e767597dc5c1bc906ee55d57277e45dd519983a25687c1223ad50b058b642134d2c725b6e70a4098dfdb17751114d59c99e3e96031f4d67d19b877ac2b0b9e363887a03f69b5e2506145a7daf423fc71fb9319f1e5f7902fde6e0a10c94f5f6ccf5ab4ac210368da8354f14648a1471b89712923684ac9a5cec78bd0e7de0a03157335a17049d74bb0e3480902bcce373c06b7e225cdb5352329543b01b1f7a04b30df7fc84089e86ce704df2b3fa22b6cc30a27bb51eaf4ab613fee13ac02d054364822cd44b637a5de72c337f9ee4944ce601d94d0f82ac6345457062ff9a1aa8eecf1310122f307214712656d44100a16341f1fb3c2181a02c47f9819f9af778782a2d030ade3d8adc78fc0b32d7fed9df11c5111060405f2114aa31ce29e1cc0a4a919dd7b0f2deb363f4b5525b2abf9b8803bb0cfd18ae5a2c8dc1dd42178531efa392c66d93504e0c1372f3ce7e742ce4469b839ea1f64e4a4e8020b6799c3bb803b7b7257b17f2b224c980c4d03b571720ac175533396dc0b5270475fdb74db6da807ff7d0f3206eec984269ca904421dbcc101f1cbbbff22e847da3b934e51ea5b62999cd666fe56bba4c994387ced454bd043d8537e09ab79987ef378283d8e50e7bdaf640e1c9a08fbf9f1a2bd193c723753ae7ecb7bfe697f5417145766820770f498699e8569dd499a7e736bed9f10205ab71fb353bc9150039b27c610290c06d15ec4387131a8cb5ed5c45a6d2f7cd59c516027a6214d9503ee4501d5f2d94615d9d56d430d62e163fa09dffd94e59bc7ba67d89cf864bce7dd2f3d982a930fef383efb7ef1e6cf09c365281e0a9e4d204167d984afa682b6c45c4789254be1227f1c4c542db3be449b8c59dbf4d3511aed8cfb29963a55e16150ae766c70e2be6c352c419f5678c3a0ecb2cfeea641c4f9557f204af72080a3c83fdd1a9098fdae142417da8fa97911c9c8d9b3a4cdac6eb19c7ba562824018833ae0700744b391f0d4819da46309c363b3b72bda35cbd9329548550481fc00d8700207e6bbb1117a81397c05a9f4d1beeb2398dc7ea4624c0acafc5b5c85690201a97a72dce5e7e5724e602e47ed6a5925ad9613162e4b19b4a4331c415295c4b829c473712edba63689e258905ec0963db4fdb3ff398ec70a9afed6646ee2656137e2c4afc3e1064b9e2e0e9fe658613a53c4de0b004d8545567c09f0be98208773daf22548e5140ae4eeffdad1729ac6e323f4c6281caaea49d66b8890853e6267149819762de7deb11ce335cb8de2b66e18f5cb0461d8eba281ac134ffe11a0b76caf634259d1bd9cd4734acbc9c4344187aa2c5853dd2e5c0a1a428ecdef9e7b158bcd8445bf4147e95964fd28ce34715c67423a1bdc145691f913d94a6dec13b6b4463fa874d10abfb47ce2a31b64db450df6e9fdc996263dffb94b102e707d36110bccef34494dcbc4159f5909e17d66bb34513c54f01a9f9f04f6742d27b03704dd86100021315601e3668491a80b8ff4a2277ad5106c38cdbfcfd6bbec28ec3842e89970b4db3009b30f3177a2fac5adfb22cc439207f36111c59703215f7bbced8254f3b2989f152f4c3c2783041440fb3241b0b2936191cd9d22f20e0208113c458fce394ed0fad505bfc065351f02603875abed7c9983e6cc1c4410999417512ec30c7560094825a1074c063e910eb2c3ce14b562313501576de90443547e281a9cd40e2c5d766f225426d038480bd841d5826b96b059bb8729a0d480557107fd0b8060a7841686e89d870cfdceb8c764117fe4d4ef0e2103330335f0ab7dc4d97f363c74d97bfbd125a1779fec2eefbe8a6860a6019b8284420e70aad60caefbb3c458c0ef023a48d897452f18d3b98bb85eb91f7469b5dbe78a0f5181e04b54d0bc937d9124f86560e86b366d1166d50dd887fdaca1225b23cd108b509c7d56ce8686a50087ba64837f54c1efdb9c0b6d4b838eaf5dd503054be439cff63a9fa8377b7019174f4e0cb5450725cc933e4c159c868843e164b7428e3c97a1d5c5acfea901980b59ae97af2bec14d487d131f6f8b9601e12149835af9117b13c4b5d93bd1ed947e677b40444fd6a09c09bb2ec24a9509cf47c9c01ecf3b85d7bfc3c18fe39beb9863be1d38ca99c2f0319834d6b1c5f5aba3982db6f986f2f00b632f43ab395802a516efbc19002cd2780830336864f1dd003b698ddfaec533890d50f429be2c1aa2168d6ea41f4ab3417906b6d1578d062a70ffb710b68eeb7ab01452afe3f82d2f0ecaaa79cc6a3709bb3528edbf536cabfaae3597cf5cd477ff2f0b394420a92b5379fc48bb65a227b1819e85748ef17af7bccedc79522073fa389cf90c060af5fa02d703644d034c8fed8fd1777faed86921614f79e513b1bc06745b9b06cfe8a3e34127c23979ac21e4f1c3f51a91e120797d7f326dd98c8589a8d5b27fa1f81d762253cf455706617cd12faf676e4eed26653f3d62302467cb60f772a9df99532ccd69a57c024f988c5bfc9c18216036ce94f5bc8d5227a4ecc2a0cfc2c0ae03b730eb3460d7d22cf6214fb5e0d23932361bd9e904f8c85cbc210855293cc0bb4ac9ca50d4e9f68a769b23261f9a41cbe6f44f6649916ad74e1c52e37a0ca10b41d229853a938814065ae5ae8681b6bc5d06dae6f928b4270efd0b525b96258643f06627f92f3c91f29b1837dc651a0e9ca99b3bd12b682b72ff43c9245346cc6edb05a3106946a7015c651fae435c7c8d2520e2b77b624a99038d205ccad44bb2bedd10b99c611dee16f1150072862f2a23168217e2d0fb42833a3e9f9e61d9cf4ba9373c3b3593241e1bbd39bdf7013330ebf650ee49d836bcba07296cfc7aaf2b2bf71ffef58a7afeca7c1b70eccba144cc19887efc2113d60e3727025ccfc8c21b2ac0c13426271e2df8adf28ead293cac2d9c6eea917afe2152897ae65617f93bb67997153bb904b8f25f79a81cde91120f2b42b22d3aae95f6fa88b47180346b79ff6813d543f34f7260225b2c7865e48bea5bfba9d2fc8fff3a54c427836b13b16922f05eb46e99d15a52695c5265f563800607e7148bdb2edf330a910765d00492fe5f043c659847eee347c8a4c22b70d60d6a3fc74a36aabf8b35d434c9409ecf1fbc68ad1ff306df3befb6745d73a23e4c807744a9a2897ea36d3fa4fc1b18801df75d914c19d45550101728d48cbdff6a3ec7ce9468b0d3d122cdff941d235ae45f44ab93940a9c5d4e5bbea2636d9554cb20006d980277789ba7d055764e8e1e714051831eb30eb242a2aaad3da3ac8f9b6d05a4eb279b42a70cbb895174bcba04be49d721ee91b91223a5f1c55becbea79bc056fad078861d639420935cd670fe93199cfe7afba7718b584598a4ac30a2f075a5baa2796ee7928276e754d690546330d560a84f7a135d649b17e4181dbfc79ae85383fb2e352c63b3c3a97cac328b0250769c14f8f750de4c9f96714b307e60e02a4304db22640306e29ca393febc7e3ff06a59820aaeddae236d9dfb5c1bc78a48a6a5e159ded66588d6119c15337048c8cddd7d082127ee15ecc60c365b433989ca9839eab7846fd55a2a35f3f02d965e728c7598ad502d970a973cfa92260ffba89e4e2cf2ccac520b0b6b2927ede624b97278ab0dbb693fe89a4b52d77e92cd775068619365bb9f4d71ecd0a5f0f1fb9eaa0ece7dc1c4dff22362a685c86f7a04e6913517b48ae086d43f4923bd9f5473f7f5259acbafe6c625e6886e04ef8fd77f9673975442f5edc6ec53130ef720f22873f73c7c58616954189b8c6a7610310592b22b85b6747b1cb8d8cad71f9e17a30c3b6b4f6265789e9101e4cc0a5a83a234547827440651d9b235eaab4e8c05760f02081a1d0d28d70127f5cad33fe7eeccd2833e423175c40c6841e1be9c24e0f41da276d3df5b4c5589afa898e50bba141fbd0c8db9082fa5966f79075f91811b6314a957e5b9022627a7a82e56ab02726bcaf8d238b3947694aa8bc87cc8beda44a1abbcb5404aede4f13a503ce237ef981abf34bcea488e045443e7fbf6e0932e60a56392b23be92722ba2299fcb6e2ae1c4a58d2d38374d6f838c2efc96e46302064015b77343daa64e485d632806407111a71fba8da1b5d55102c44c06f2e8220749805a9a3e033627cb9034dbc48197456a8224a904b7a55057dabdf7cc6d36d31ab04bce933d1f012dc4cbf409dcf538bc36f7092f839d24a4e1aaf117a4a6bd70f450c04cad7d871d095daf9bccb98b1ef22d75fb7feca921d258c6c2d5227e4916b08b76ebab07006b5885ad886c9fd75a4d600fdcd35644807dd85983b0026a78180de56eac61f176acd446e14b3712be974c2860ece460805510488f2e5c91e7d5064e79d009c1649a6f3b4621a8074d51e827f46d532ea125fcad79713fca8db429aa784d711d2562b3c45f3bc1b8808618de25cd97ea1c2639cab974f63c444057dc466e78f11b586c6a0e7e51074181a84dd2caa6ca83c722a61e8de84d5432ad039c61af44355974dcb7cf75e46d5b19c42513086b21e2a77355106caa51bc3a31b6648b19552c2be2cb518a1ce8fc8d1925c6712589ebc4bc44ee72d85d036c294827e2d2dea21aea5410b823ecd341d2bd0d79f53a7fd48e21b6e4871fa67568c1743a82103376a6f734de548bfdb7c494f81a68da10d54314d503fd894dc1d8d8d7889049a7b5a84de9396bc15e6422209e3e1adf022a94da9ba80017e422ed5fa04e4337ad1d597d1938db2300e6119b5bb78e84efe38a380ff626476fefab3d5714ac2f42ba7dbdf541a73be4918a391b69397b7b59a0d201dc4a92d7e4485f20ff3e86577bdff0c74567b7056fc965c04b43f356bf72fe2bcec1efa387648d254fe6ec7842dce5f8d6d030033110a9173192118035d934329c34a84a566fe2ef5230bb08ff0102af8a478a1df668e1143babed0e8d1b5b471a6f52062f15f67b3151eed7740d498489703fd04464dd82377c09682e47e8e202691798e9abd73c4d8415ec122ebe50d8967ef876d5fc48a1f2c07ef5e47b44c14f57c1b9dea9655394feff51c70ce0a0e4af6477af5276c751208c7cfba07f93bf89f9924ffc64c2aff773ae25de54d4dc54b90114d66542d01dddd1c0e6c0da99ea5c84b799bcc89247e77a26399187094dbfd6c11a7cebdddd0e2aeb8e3549cf28104cbc7591c63d196889c1a9a60cb7fa6ebaaa7a4769486eadcd053714623b5adbc7f721d101cbd74a0fbc3c5c29c6b294a49a55abf71ca9c2a690ffe1ecb6e791318801700e9596de466eea5e7790ca55fab034e7769b1f037593768b894f4418f96ee77d4458a33c4f78799d8db498f8f05aa70efd714cfea3a7b68e8af94380d599586768a0bacb3e4daff6fba84153636617381acecb345d27a1eeff9c74b7917aab406ba34db8933f74e2f8f32ab6c0c49752fecd33e69d49f67b6567d315bdaa5699bfd767c5dbf092c20f95813b5b317a7e091fb701eb765e78dc278258539e36401cef0c63d00fc44cf97d66bc9ea17d418f9cf3dcbe1b0f0ed0718dd331f37eeebf483397f82ba95c13dde8d52d0d80808805d7ebf4c4b76a9f3e1dfa55b26cd42b701ca5b1e20e067b6f1df0b6e50e829ba7b18331e7a86f044219144c66149dfd4fd8809273c2915fbb8c7c2dcf739a10201cbc9c76fff1c8bbfbe4714f8ed5272829a348031fbd8c9ae0afdb6030e44a7faef551484e9080a6e0797058918487a090f650ea59fa7b9e372fd270274f4139036f1e5cef37b84db3c6a276e3ea059ef3b172820f70a91b11c64eecadf55d051ce1676640c97fe403695e95104e2ddee05bbdbc0d282ffec44eefcd0b67d0e9f731f9c8c5020d9154bc81a3816a6ea052336593face08adb41a8354f9f57e50ef32c74fb394903d48dea4689b6cfb5c910ed9e6cd3387497cbaf2dd1aee55b9d6fe8bd4f33438bd283913bef3c083a68bae00bc2e2710641e6e01db487021e66767a76b628b5172efcdf40ecc7d8c3b5794cc0f10268cd1c2d830aeba6916033ec5a23c2e551e4b492d58548f6b22a600374682542044e15e3a62ae0e4ff5cb844ec2d103efd85101ad28770b7bf483ff4c6187bc446a5f0707a9e096d7934d709ccbe0150d41e272519be49fd7b2e536f1ca483c35a7a6522981764113d5e538ea7d1277c83da6f55c33c37c5eef4ab6f345c7f1e559b01301ddd091af30b9e228e9f2efe4d00477ec240cee8fbd9449ade4848b1d49c96086d448f7453951be82b6a8f02c0339ca0da70cdcb9f4c1860b3463cdc4709524ee9435ff8756bb9e659e13e098f2d75125f7234efff2169d5345a6e2a0d0424c5d3b87a648822510ab1289b872f4ba9ff54055e757838ce6e5b6f20d06b9b3d1680800ca771b0bf170d689432cb38759b10031f3a57f9af87a95d81baba4b3c9d6ca88578a2972bb66a99ff8bb8e8b8385d911d9da95218e901baf1c53fff1d83d954b8ba135e1d63241cad94147b2c0dd864138ce05231bde81bb13ac75012600109bdbe9740a3758170891f93e90ce74ad2d538428c221c124b381d67c81b61c015bacc7388227fe47a6dba0c53b22f7b501667ab62f6a3c574873c8fae9173e2f8e1c37fd58c57062f8777dff135002af86a33a6e3be2d3e103a1eb71673637efd29cb47844f6691e73ac12158d2320717da169d791453c8051a1aa31133ad606b109e544d891f1d4bb38020f7c5c469895b09f7fdced728b9e3a073cf3ac322e2c6e4c66c6dee207471308b89fb740011500cfce384c3d16ebf349bde321bf7d063f2f48587ae5b9123351c9a4a083580a0be6941a808b539008fc5a1639e791a38ec15a828f5788a4630f58e16c358e593fc3b1ef50977916264e83016b90598f5d8563466a5512e8576738a10a0fad25ee539d9c8a355bef9c2ff409203f0220acca549201a9607fccd1a028acc8ccef1532599c2100a0b5dbc11e0cda8bd40c3a0dc86a3d278ca3c3203905296b83ff05d31373cdc05b99702aed2f8092ee16b21fd3d192e523ef734fcae717d263b8b1eee0725f800e14d464c076b04904d49b19e3bb8ddb0aa81b3dffcc71d4db9508e04410acf2238c15246651a927905ef7e53994781c23c655c72ecae5d6d9b728516c68fcca35b160783c5130a0942f0d6436bc0ebbba973354a08762ed3f58a626e49543eff6365deb3d02115f20be24496f37d58614ed83333f2b818ccad3f8879a2c863e510cb38e7c9bf5ac6b48eb48e19cf06b00b1bb9d01b77f3aab8563e09ae9604395615ecfb0023e2efd356b8154a408dec22a25ecb087bdabf9ead07983b143f037527969584ae34162f011dd84361718e8e33fbd87567c90e62eeb340e243d205287fb7ee23fad77aa3ae8af46461cc40c411aa9ed4b36e117e351b307e6aaf46b1b9894cc6998160a18793f3fe6878f4e0a7953203c2325f8f2a779bb06122a3ec1b41a9316c82d54f2addad073c3858c431bd807def7a1be0572265da5addd41d03511f129c65808190f1b582d3ba3755d57db4d3c7b1a00877db0a0c78dc0602ed62d0daebe6bcd3854caf64aabf295b2266fee275dda4acd470e955a8547d1ffaf60eb5dd69f83a556837af6e5df39a40e40bb142cdd2ebc3607547f03809f85569df106b165a17f804f029498820a8d1e580915090b3fb7a098da7841a9bb3ce9168ec760fe560506c197d5e439641407a1d673c03084bfb483bed033159e84681765df29a5f35a352228640a82e065fc1b3196062b980f33a1d0f2379bd3431b95fda42469ceca06488c9146dfe3f9d8ee57d86ba09e1d5f623191a6990adff8a009de8136920918de110075f065eb8d474fdf75892ebb85d0c99b64b7a901a2aff77ddec4abf91b0dd7147c75d476d0f888f3db1d975b09bb306ea01fec737475396b0932ae1f4ec2f69edeae29533d5b193b70ec2a27dd50804e6626a284f6172913f540d1e22350881fdffe5822d089554c9268afbb438df34c508547255f48af48bb7a4345911cceb7a3e2e4987722cbd5a0548f85f18d30091209cc3e2d5c625ad9b4dcc79cd7e1960d442ba3197408d9df9cba6598a9e850e4b9d3a4f926643f7ab313533c10a1e867f6563524dcc43b498195a2bd8126dd533212623daf19f7c47297a5f00881d4baf0cba053590c8305e451c0e2d2b098bc632cb9a674c4243898b235cf687809fb8fbe53a563ea4ab5db0dfe2019d8bf9c54c57d63a02409c87999651d04c03afb8aa34975d3a4510759f5de9f358dcac49796e13ebb535fa1b9be8fccd8479df104d654f446b375d6d28d86a2538c105bbab8b233f39d8a0a91a50b743281548c136349ef6a0a588e63ca4b775d6e2e5a81805380b1dd276cf1afc7fb67010fdd52c4f6dedc86ec14cc54b807e5dfda0654a372f10a979fd52efb26f1b84da311cbf8986003994b500156defa9e6d9f2f500513ae6abac61832d8b0eaf8c21fcf49ab873286f05c9aa1d3cd1b920e20167c6fb95f713ffdf414b44e70c58c8a24519ec6351749ba136941b48754429d0e2715a401bddb03834d0840c98b153d894cf7eec0430c1f268c75e6eefbb34117337ba609726dd0de84ead58923f7939f658673100bf6ea85c59ac7aee5d9bab662bdb594342538b8ee021b4ae9e67b8a1560e7f694f944c50df4dd880b286bf9c6dcca075152b45698f8a2483985a29dd99bb97d24eca8f993c37d818bbfee7946756a83557083557165b9d46f1ea9ae355a02e93ddd72686f48c381cce3d6e22803d16214fe76697264419e1ae43f4e92e06f994cde36acdc4fbf614cce843c9aea433e34f62e4ebc3ca45ef0b657cc3b0d67bf9440a9ab73e6409be9d8a9662a638b668b15883af2308cf06965483aef0d0ea704d54c5cd858bb80cea27aa218a60344e9e88854b8d62ff3179f42a7fed8e5484f46b40c14e57d10b62581816bffb56139d542951af5f0c9b1daefb573928b95239c2e914ad09d6f588e3642b74e4a982c53020cf31ddf95997a32f523e8ad9ddf073bf874c4d19b26645b2e87b5a229b32d758bc113ed285f9eb823d433685ae5dcbc3215901bf9ccc0f381034a173d2ebe2c435373428fe0f5c5732ea05a873322ac95cdac5a369a8a44c9d2dcaa22fb6bfc3a50f744400387a3488316c430cd1a1d277674fb904cb560cbea31c6e58c4f5c977122a79098cafbef40acd7e68e96df8f7983b58b221c7e0e81b7f4192ab66e2d691c550809a82d937c6e2d752ca4396aec3039ae325e1f963281178e52a9c175298b850aededcab708c795e66e793b9ac8e46aeee03f73441329a2b5a957d31d3aa575f9a34343aee85b918b58fe8e094acc01e1932d8f3a3a510b0bc208578e1121c1e6c17565c10a8e5500c0eecb30c2c0bc15ac88196892560c141aca3a4384a8ed0957936652891466c4ac0d9200c648e8d9d85f46dbc64200705b4911a40864e6271ea09ccfc01b4bc78086e664e3d242418799b2bc8396eeba07972d37873aa0ec45d339379c92403599db2136d5831323531b38438fa44a8bf3922974a0802b0cc8cca7f7bd2a620939ef7c265f50470c9d3fa6a9317687f2cdf52096099e496e8073cdef48d80f7fedcd4e31d6f5ac0d360adf60612f6ff4c53622cbab3062ef0382cb418c1ea4d8bff3c5f224df0f2a1a3e243fe70561ee0acd3c407d373eeed16708edd5de914ce595efdb77465faeb0662b2fdd5126eb23b5cfffbcef1d4d492e7a001d5b03bac04bca99041eec4d085dbbd3b95d6f1f0935d46c1bef6df855143fc82d5043966a82d1415317ad38783dc0841f2aeba4fccd41c7ac5d26826854b176a0d5c97647cc5668d38130da51d1f518276871638b37e4a4b7a86f7ca471f272225eda1bfb3428033dbaecd7013cf6e21fed7b5d5e64994f542d3ef1a216578b86256c3eab53a05c5044c180f6fc82368987399003145f1c6801c94282e16a4b9f53ac5bfc861695fa95cbf21590966ad3d9d76f5b6a6b5db15917fc90ae7a80f5173386b61f7157b8f2ff856bf720701b91de99d42a350acfbbd56e2f6fa4efdb0787753852db9d5ee6133a980e0b88895b6b1f4ad38d094dca549f2b220252cc252b0c606d8658cbdfeff91839a58712b1bb1d1f907c4fe2f3e5a50ea5d368fcdc1121561da4baa35dc7d9110cf6fa6ff0d8d349e81cc08945cf431f03dbd294819f22d9f12ff02128a27c37b5459dda302a18f02ddccd425522c4792955b165347e7615b9fac0cac7e330f34e070ed3ed889bf3eaa6bafa5e6b4f50fdb42e495733e02c3985449ab2d3f4a3dc486f2ac892572bbf338dfb09b5cacb60bf001a760937595868923680faa24b5f538550a6f89baee80500bab66c9e10fff8b18af6f6a597883b39381783309fb4935ba41402092309a38f5b514572ec82cae23e50fbcc93727204e3b5a2234c7147bc6f38de0fe72bdb59a4388f3cb83b521464a4c423a4b408e948f6f3373bf2f8097d2a323330caf8f67c1e77a7b924434955fda33b908057c78b8fd251b890c1291aa19b469f059017e3059657c944b574036b63da2d7916de5ecee348ed577d89868a8b4cf725e3047efb111c383724b9667021b9b9041df7420b886c0f4e983659aa426e69dc260adc1c526f184c618e907058883aebe1ca3e19b86f7004d5fb9a463e0c183d7a7e4dd758ceaae4aaccbf3e03b9020688871664913d7944952c648d2aa262729037f54f4950a9067c1e8cb02f3173945b5db9e1d6c546976f43ba5e7b486ab82a9ffab1493491c6a6fa2e81f6bdca31e69c1388e7f149abcd107408a86e43417337c57276f408d7dc2af04a5ea9d4074a2e4992b380655de0658fdd021451ac28957f4af4e90f80471ed0196603171fae09d5383558ef1e0dcce3c8d66525edd6fccf59cc380f444e22f7d05cadd4b256437eecccf2d64505c78f11e0a0a1e395872b9c7cbfdc8719eb833e2f6282fa91cd733ce49f3fbcf934a91bf73d9cf92ef6749184696d00db0bb0e14f641fd69be1a89d0e1bc7ccb8ba214c3477fd2d641b626746519d00c227bd210e015ad272a9873d5329ac721be801e13a5632187d7a3e168f00735d9967254e2596d5c36f07ad49dfad78e16fa67728d9df911215b8ea1a7bc58e2d5f2c69d329408522577eeb63f2c1d264fd7b2cf7ebaea4cb3d83d09045380ef1c5c831318e5b499cc6777ea9297741dc67ee03e3d4c7d080bb65437850b1a907c09f930430cf6365f9d0b30a6803801db6b9c9c17e5eed72be2fee2dadcd10b6fdd02730abc6890635fda9446c37f8b4ac2c40a000914ecfe67b28804c910b1eb4b7dabb5dcc9eb3fc2560ca7a653fe478fef9d08958fce48a6aec87bd4ff43a261e7ed562bdd63e28d98b027190d6d6390aa655c0cefd5b0dfd8192952fe5bda19d1275d289f97ce5c4d79bb9fbb77f273ef5bd62e3a7fc5c10a1011cff5ef8608259fd46c25833dac33df98a3584cb0f7713b5983e81cbf5d13ba3a604b3552f91b946aa4fede18724452f68bad286bce67b81447528d602084712f9a17772fde0952b23d12cf423e188d83ae9b3b101ec6bfcec4fdda304c5ecf025fcf74ca896684e18507f99ec21329833376009e8a1f3891e6f2d3da70b5a82dfcd15439da9abcd6ab06e45ffaccc855de2ca09dd4aa2425650f6aa3a2966565a43ee3690f3fe66068c755ae03b1a6184d4974c05da15ff85518e001901426bf203a8e311f00c9ca1568f419379f9843727aed64242d077451eb7d542ab4d3616f0e1b1c48a7b4d62c5dc5bf0374c655bbce9680225a7dddb80eb3fa617e966852fc5f34c980750dd0daad2ff46728b58c34834f2411b0be980d51b20a43bde9b9529955fe7b6442efa2351522f5b22547d56fc9d980c0b274f352ea2fd79600644514e37a3b617236b956f22967f1b45499f4b3716252a02799721bc1bf225284670a00adfb0050450361a64dffecc00da12f426f5bdab2d7173ddad1687919c31c8a32ef3db270f0ca1318e72d1c56d757459d89be56d894a5136d946e5b877f0cf6103cee72fd7786af1414b11ab7d4252b2a754763cd87e24502bcb581a10025480f122c6b6ce014ca51a2e0c665645c11330f5243118c5da1d00a15523fbe836493870f692641fcb38b52e42b20b9996953424d8ac372065fd7517278aaaa299121dcff3b751c163be3165d3e89fc58a090819965ba86b11c2640444130553c5b42e26fc40f00f5261018cf7be4efa6fb777fc0598320ce7984e815dc0eaf77408260bac984a08c335a0df93f32399b352de4721218129f62f72817509b0ced193afe523321fbdce3d05c5252da468b0ded16ea24a0cdb4eeb1a302caec80471c4a1165a3cff471dece96d9fd1a435ebeb05c61a4a0d2d617ed76f5950b215db92fc084935ca6a9cc3f137f9f5167d8fcaa55c403d3b0fb59c07bce89c2c048cd0dfe5502b7936d41f00b98354243d2e20ca1fb1638fabe70c857b6f33437b673f2e09b96924f34a798ed3b838c92b6e0da967ca805d4061a14528ac4a69116d6b170a21e0e47c81a03a3ec992280a7e340822e3299a3b66486636b7eb92f62638dfd1c9f8752efa521d4c3a9b7c74ac9bcd1bcf85aabb62defaa28d1c8731cc7548d41a75ebbad3ae3d816ddfbd3a8c02b0581d76571a996fa14df164d81c93d0fd31e62344cd22e6540fb9ba492826a3fab8c6e6df3f074d3b31d58d031001586470473d80585124790000efa9a41d3265fabfaf917df8ada5a25266b8b1f297082fe13dac21b008951dc2a69fa008ca3284d16e6e201b341594be35ef88f763671a0f156a9e712e58cc52a4755e5b5de7e177654082bdeb3f3d63bc1ddc1c9a9c30ecdce4b667f835bfe114bd4f3733e4070bd93841d382d8f7eef2da9137165515bfa3ac7174f54a5145582ee2078483a0999c13ba12ee1986970230a2a7c80f56dddc4ee7776fe19cf473ff23e209ad76e757453fdb806444a1abb1e3bbaf0bb5dd33c857a08caa1cf19e9c5ae053b31e2925090f16138d2fa5722a974d8cfe1fbf00839de6c97a4601c34089bd90993c58c988d76c3b35405a909caf9fb935eb35b57fb7b7be7f3413d349dc9c7169ba0712a44f5492a196ef0705f52c1a13b704222c06b26ba2c4c7c9bbfdae6104f1643cc60eb3e14a249334fc4bbb71676673abca591df04c67c525b20484ac490d0375559dab0d7cc10e0804e191bc892caad40a6ebf8ab7d9523e7b7a058d0cfc5d441970ae92904df4de81500545dd5b0817be6e0265e2ec1a146ebb78534d4212776381b3b849ad6ce1009b9d3fdfb87e19f51e5e9449e7f03e22d6f7ff787f7497e5d76b97a0fd816c3c2a63bd10fdd1ef5209af3acabe3ea3cfc4c95953ee033f00b1ae0458ccafdf78b2438730410a4c64fee1a72eae39ccada8183a262f1a1874fd101ec116781cacb897abc3dea8601562a18cb78877b5a562fc4c619be17983619e4a87759bc5af51943a4d201a1b9c2a93049a001ac30d4f86cb6c51c5553a1fb91b04a3348315ebcda2e239582d425d61e7cc38c7d2a343ee274fd67b086b5cec232c59ea663704e5381e966302d233edc75d5f8fc3c88c3b38fea3e8687933050d6ed5c31e4d5c59e2940c0283ea5b3cc92f78170e6f75e2c4688e485b84f44147c7743494645287fb4dfc57b50c55f9d8dc613452536e8d97f9292510293de0decd6c9acd03502a82405ca311fd14bd34c3766aee13b6b33025b562609859300c105cef133b9774cafe0b1a9111c915207149b172a5fac2c86378410edc166ec2f768d02232da50bae8f65663160a1eb23259c078ea35e03e00e4f81de77bad8094dc55d5d46694a4906e45c729d86f67df06501b5570802cf00ff3db8f7ad75991e2027fef3ba21fd84e739a423642207e761eaaa5846f10a615d007ab1621bdd40585845bb3df420e33532dfeab974690343f0075617d09a170e68e5d427da8ae30860cd9f2f2504ab5265ac5050bea7f61aa69612df4b5eef1d133bdf20e8a2c6ff60c6ed49583251c5515e9fbd3f025c008533d55a5098c031dd6f62c7139f08b0da1e4c4b7cb0a2ec95ed60489a9781c24b0d1cf4b65dd06ec80128232bf22756dcbb745576d3e78a997e02ef19929681d7dbfde15de5bddfd8e91101c50516dc3fa89ea8b64e85b8b5d9de322d969a7f71105a58278e23776a85defbefd78d1b0eb9bb09680c709ec3b702485b74a48dd28afd84d72168e148c5f91f3b617c61eab5f201fbcb81991620019dd3daa550acaeda26536e20e3ee2992fc2b207d5ccbd06511fbcf19e63e61d591c9eb35276418c60ac6275db709cac40673eb7ea3c4d2d342f0c27d8aec6029ddc00f606e55f86631384fe412c61ef97024046ac34564483c17a3f63a4e96176dece5dbbc6938044c673d0910eb7c6d7204f3e59c4a5b027cd5f646968577b514e2ad4f1da0bcb88b1c0fbbb630697d28c45a64e9b807aa977a7e082ba114293e092ec717985deccef42c8acd170a70488cdcf077bc663c196d4c7d1cd5e35adc66fa514e6a4e20a0fedd81cd3d2cc7f0bfa76020ef6528c7da2b3adfac6de0e25094b528c2f1307a873a3449257fe9bb1463da009c2aa65e3b23c1dfc0edb07c57d1ca97fb4e6625b73b26fb6bfcbbe9b9cddbf13286fd8e58babae5318bf68725b154218f8c1a26a97b4b9b45afb70d943bb75a55648b0fb6831fab130427fbca458517e551516ce746d50bbb4e6800e85d8dd050ea43df5f06698314b7ef45028041f711fba438c0760bef443345f53aac4fb89a31707bfa38d88c8e6805207eac098f6abc14c86dcce0289d018da8ad4a47add1cf90742dc48ee9053f31b9dc2a23aa4c0ebf09d0b8b2abfd5b111f1411ca0a5d50ab078bf813f090aa93b0575a0c784fbcb77faafa95428ddb9e02a904a5e3810a899e4d75a66fc43ee30e6003e1fc987fa1ab91dcad63a5e9b9779e6f6b1d0cefeda79531e80386cfbb42027c27e6103387045ecd5ae7c64677973b2dc4ac57d715ed780894f8a4af4be3d7691bc4af4c32ff3dfde2b6ddc61144a8ed9a4794b6cf30ee4e49c83b605ba6bb7106ca95d55fab945b7595642d816f912e64b64f8763879b0e6207506e0a4b652be2698bf9ab16e5a8731b5798f7487ad09a5a5b55dc56267d38049a8e99fa052e300761cc011984f9d24c214f381cf731a606dcddf8a1286b9f845ea3f17a0ef9eb77a2f96953ac4e1073248da8ce6e62e605a92bce28ef3a19fe7f67a8b1486fa1277d5440409782c27e9ae63593491aca13dd7705eff380ca1448b3a2b6dcd25f6a0fa24576107ecbc99a8f21182d970f4e2357a3549d636447ab871e8c286138111bc84797a9a949be106ef725bfe09ae1e2e84b5af43c0849ceb3b829b0d5c66d6696fe81b9955289927e356e449669282983e18629bdd64f8e0e6b0aaf76951e218823ce5a28ac486c16e1f43f51b43d60dde2137976253f29d67221b33b961a6f4b72bb323b8b0ef7775a8edd14f240220ded036f4bea5a2f0c4be5d5d211a17a355fa84c09790199995f53ad90f7efe350c2b9559d8a9e98ae6d3131bfdef266bbf1240b987f054607918ed6042bb4c2c6c5b0b402157dc5b5f97899ecef54c3cc587a8b711c4fbd9255284a738705f520b28399c6b8d953e706ca224621ab146defff0aaa365f7c1d027afdfe3ae67d45ef4a571080152dbaaa9686fe1daad92751ecb3fae17b9abd35940fb948a538034afc85e2a52130a6be89735382d8881b29b5598231047103a6f4b72f17420a9889311bd005ce7546d0396a05bdce9d363cd270aeb39909286663b68e3821081d39a5743bc3273ee5670120b23ed695cb0a37c0c1db5dbd73faafe30ebf1d71773c39c79f955b71288a0694195373e5f80c4e3472527e0df29ec3659d721a51a39b53faabb482332d50485db8b4d33535c138a2402f681b7537b92e7cfaeff88e85255e583ea19ff525d0ba4f36dc402b5ad923fae2000038c1c38f9becdf0bfd5b1565bf8e178ccb6fa0370c8d342d3569248ad766235cf8de1439b303741ee9f5b1f41451c182bac28ad749702f35fb1acb7628cc7094079d4cce39dbd35898502f8714d53d24b65ed2b7cb3ec88ea4dc33f4e9855aa2d2e676376f7d4153c817f0343758d21a120cce4361075f6d69bc40cfe2b019ee8738d5ea67b4f094cef4ea22fe34bc692bd633ae06d48b95749547f4cb5778c4998153f442dfee95b4807f31c67bdf693bdbf9086736cb6597ea6650dd040c8dbcaa277909d2facdd6b84b25f3d529d21d58790a6acfb777f9fbe1cc30fef41cef1eea2ebcb3169a5bf45f09ab778e591221ba46a89ea13f9854559b0d54bde88db8f741350dd33d0f399f5cda85447b832449895b0363a36fe341078246315ca6edbaaa99fd2ae8949a704e33c0bd79801be18899113d76e53bc6c4f7249538a8cd27dc9023493254dec20b05594527a09c320cf86e556bb673b0482676a5600e3f86d811dee7f841384c291ea3accec6bd27357f60ab8f1f0ddeaf2a8d5d529cf593ac8443f48f486ea3ee5802ea95e12cc509d7c31451546bd92415306a831295560aab9d034c7e38513620251a1a9f14d3dcac06dad4f13f18dc1cb3d40d17ccc63f597cdab3009a6554454cab9772e58392b5c8b58230d21d6a0be643a4d8afdeca8161d433391408f0ad3f67ead64fdff482aee402e2c10cb60795aede7c32852dfb9884caf75d8cb4a3135abe96c43978272adbaf9c084f50c1afb0276f7c228addecc52768e69aef7d81275a0c49288e72eca20064b02a3d2a5b068f5f5dae2495dd9b44353288445b102de65cb31a77ed8e6758a82c3d3dc6892e12357c90b690a60752d35147fabbf0ae77d7d19853a37ff3ca84946d5d013724b37265448b0886f86eccab3ba3d107f01362b3d142c7a34aafab90a7bfb609b66fcc8690449282b670e6c15269e7637db6f33e55d088b0c0230328481e10b47fe136d1c25422d8c5abef94eb3d99772ab131a5e70fecde4f5f72db6e56c0003e3e874a3232ad965645b0f1d1807438518ea38c348f95f88cdb80b9c0a221250e52a1675f837795a0c3108e43cd3193cb52a8bc2b075928628871757179d193c9b82b8cdb476e6058a39e78fcd4d73ee7e064c1ed3c9697fb9fefe3a3640c350fd8a9f17775a8cb21f419b1936c3d22a9c5240aa10e89ec31c77a4356344eb293e0eb02070f04d39eeb0e3bbb6a61b41707f9cf2f2d1ac45001c013113d08461f0655940e3737270f4be86f8bd3bc1196d1ead3e43d524d2830f135de09e04f3d3ffa94979d964272a8943434f421b1cd9bf1e063c62edec65d19d8bdf0273b5cf16cc96e9e7d5b7ec98a928d792879f7937d66aef996fb056a1358d2de986943f4c744f4e382ee7e84cd0893818b6469c4f9fe68489d1b737e229bac175f5a0ac271742da08322cf8795817f4c24531a231327faf3ce50a28152f4d8ada7e55ca0b3531f1df675efc99206cbe4589d649d296c76502f1fef4c2704e2fec9a2a08cdea78cddbb1fa6b9c38d387ecba0abea03af4e23e01ea317fa775ec3a9e2e85c27cdd425faf51cb3190fb72c8ae1e9a3b4e2500dda79ad90a9d2c03d747b8b3d29376dba317eda6cf58ad23c20faf5e41da24392eea4c2618b40df96cce2435501f30a18d3cb228ffd7ea009954323bd54cbb27c479331a48c556425571ea6382efc2a055aeba13502d4cb7b6891635c216ab4338d70094b6586a2732d4a34602cfb0a51d7022d04cd40d89d94157b7fff6882a371ba5b9cfc934569d8d7386f10973281c77e1d0c9cfdf43c6b3a79cb79b514a825e6b85b6da787daab2b3a439efb8ea409ba6bde288e4d49f95c9c4cbf103018891359ea5983b85d66614ebe1eb43f1f32865ac5d3b76c377fd441f2eb3435c7999f09ecc02209a7121c1db4ba87711a5968fa04f45053bb7f765ca604a97bc8a3475178aa03f606fdd32fc38c4947e6e4e0112324308a049a45ca62467feecf378dd868b31f449dca03ceca2b52b66ff67fdeff83de26aa8efda5bc16789b24f81c0e67d5b9b13f465d09d371ded003452280f9fea33869fcb9e59810df816c087b51ba8b43b91984fb96c01c2549f507950acb80feb96d5978d6dfdb3e0c2ab8d76959204bdfaff32a84b67c66e5520c891f871096c927a0f2a10a88980b3a81307c822b1747c52c05c4b410ed78db85d02a020bdb2f36e914180eb5ae2c0770369b777403be61035f6e2f002190f5e674a96e0658959f82a4c5e704d17fe0b7a0abb86dd4a8cc044fec1512ba1da37c58d8306f8575a6c291e6968efb0e8c6570885564668116e524092787720d3f87e4bfa993cc66e69f19c7150e9a91d28972e37724e1174da60dbfafb841b2eda96dba2671bd282d6cf066c395c3fc8ecebcbfd154b9bf8324cbb334a97f29bf873cd65aa1bd3c3a649cc1bd9e33ceb3fe35b83d3cbc5c2e730535083c3da20cbb3932bb93c108387f9b8225ddcc5df97e04afa134e10ad88ce6d232f2e3f753ef9c5b52457924055631ceae26b6e9f225c2929898a061f3b1b66bce38735a4531d9ae74a5907f15732648ff1224d22a9173db96b4b05d2cfcb0863f4eff4fa631c34429bf4828d9da45b810489558849dcc91ffdd870bb912e5fca1e250c7f7ad7961be8f4bec28e338cfa7bed3140e03e8d0a97ded1bddbd7ed273d7fdf50cb095716f47e32579d1a560a5fd8ec65ee8e4cbaafec3afb189e15e876290ed2b9ae17d85a53023a6bd5448f4870a3c61c4f903f479901bc83feb0851471fb55d6981fd4e15b5fb0016f9b60e9639afd185674dc9493561f2b27bd4c248bee0f1518399b3b47976d89d748ec35879fc137fa53ffbb8174313291047a2cdc9a9e2da9975be6b37a636d46289aa45ef8a20a72776edb3da711af0df8ef7e2c1a1da2df55affd6065cf84fe6a835109ef887b1372bbb86965d22d1c1f97e153fd8c695d108a5a3993aab13332e8f38a391127e102106244cbf26bccac727a0bab5e6402c547a0e8cd350a920288d68f462feb75ce5465456e13247e459d2d964cc231013cbd2e89df8ef1368c30c1a9e50d6bbbf45bf94cf863242c00a4687108668db0354f11e3dcf6b0a44b77eb655f511c3d8be0418b6bef26c830a779541bbf7e761567bbdb3b5e1bc9290c7daa76c2e2874793835ff10b8e4cf7da17a6dd46e481b5801d455639cd57be829656bdb95f309e27e4fb42597f1ae9cb28c409082440be1abd65fba9943c46065287aad5d17a7d3bc9662521029d0457bb4940ce92809c15e5b7f4cb857a924ddc8f6a9c4f8d6257209889a70262831142b497d3a3bcd84226ce4cd52ae6d6f54ffeec2fc656f7ff57685011d633d477449fe51bb648cec5d2c311b978ac45df664d6798a1789b470232bba113b294fbc87ee224e4b2955fc270bc3d080b9e1fd77cbebbdae29fc24904525c6058a5a2c6c4f6f5d5680d886f63e4536e4e98db8935701ee1c013cefce4de4c40c10b6caf0c83f06e86816e79bdbed7e32e0b4ea24fd899cec43f1e7bbfe2277377b0fe8fb81db03b1d2720342ca082178c0736c379e55913f79ac523180d2004b93ad8ac227eb73cf509d777c3f37fb110b60cd4581e39f22c122f9ab2576a460cf48cf46229c3b294072ee8455556b14cb2807d65a8509d5172bdc18126aebd763a5ffa63dbcdb52b7dca3d7f974cbcd0cc899e8e3d7f4365fbad818058d37c8d3f3514dc29b7a7e0085f9d392d4b388df5fd63d274e53ef02dcb8bcd5b7b5f15d4ede208da0768a8ba93ac6b731cbefc25673c4f95850ce3de65fa59d0f973b966444f4083935add7d4a028df621fd122df1b7091b568ee0ee474983e41fc249089f6562601af25e8751fa4348a9b5409642342db3424e31ae3006cd7f9031001934895e3c49549efc0a4e406b8292fba21476e2ac4b6b77d17ea63c907d7d9f639d5eac9340408e8edcb83fb8ac06775094f6d5c60b444d7fab5bc3cddb0a8d0b9fa993c9983834c8fcc845b8544e1883c38e1a061418f56c530918d64db49b2c389555557cfc2368d11db1e392727a3e0ff6245a34227ba83103d87473c251bfb74b2f6a0a436fd931056cef5473e811b7c53af90e76c7b425abc3aaf5f16eea2c1175b940476c4c261ea253e09ae270d1757c6cc415251d1b960281d9867d561b27c1570886b515ac19f109b8676a110a5b06bf62579311921cd06be7250c05f33dc86655450c9ce1ae44af0297d15c8372be08caa2b96c8be346f25edac85a2ca5e8d7efacaaea8bcee88e199c8f94fff9a8a31fa51672ddf944b3e7396047a843192496b857adacc43422a92ccb50668f13abf506217eb6308c832e8d0bcd59977b39dce38158e5243ba3eb8e9ea972aceaed8965b43847e51593aed88bd5c3cdcf7280d72ef4202acdcb42d8244ff8bf07f9c8a9083549bf120e65dbca429521007cec762f24b4fdf69e09983d89702a072a8b0f83fb66f6ce467ae3c4163a8e30014d9248cdfae2c3c884622b6ac4c669799700e4ece5099ac7f8c8845205caa9624184562166f72ae2a8e91c49d26c6922d074dfdc57fb33912535f0db74c46afcadca46e1ba72f687961ec1d40d159aedddc8586b930f53d51ab62119f2f76bcabbd4b9685056fd61f613918030321de2b209223eb9e80cbaa18987a7206f606d981920bef01a489052064e9fbf03f9a67fd61caa04fb114db313cee70d19bf2308ddb15e9bbdcfdd74d2568eae5cb50c2e340275ed8deb3e8b3ddd289d541c1e5db9ea52d9a26963dffc244ecba45a0015d770b484d9aeabb8419e644ae4c510e65c6fd9a6622266cec5ddd02aac9ec2030f2572d3c753dbf6fd3764ddf83f2bf9e31fbbdc9e5e669fedc1aef68d29401f74fe30aa63bebbe044af2aa9df810b3d0e3a5d20f48b8f2c250662a486be133cb504967a0b33ae72fc7fe3f66582debf6a06b22bb5ba7b7019e0a7f862ebe9e89c47320ddecc4c78f4f08c84807e5183ea9c9e2392efbac82b13716cb9f4c0b2a2ef4210237a00901c860f4d14ee8cf7191edc0236ed387f8e9c68d38a713a824811169bdd418a460cdd491c2c7ab771280cd6d620c324bc9bd2c20abbc1b953eb40204a1c283a6f17ed8d089fbc62066fff08cd3812cd9a46b6c9890cff03e91a697e1ef932a178adac8794374c7cce204460085e870e5b44b61231dd76391e3886f468d2e86ce3f27ff9bc93ae76b25cca07b04a5b689337ef76cfd4f4c793003fee8d09fdf1fd777017c4880111d3d5524787bcc656ec378b4637116ed283550938346f62c3f9cf2b0296a9115d858b5c0ea2bc0fc055c45fa4c00d25024217071b7fa4fb3790692b205175d1bad0dcaa67a0c00b27660b8c7234ccf3dfe87e9e843755969c157f50c66740897207b987b05b71055ef170ae72c22c5c1cb49d043325322c78de184d62a9e12acbd44184e42336d991d07c975e53e769670d9b9b04b07b4bd818f53246afc5ee88a73918445c9b79c1dc964aa47bb050d1f36b17c99525b9f79a4bd5b4299a2df9e009126dba0c56d075cbf615e1ebb1fab4e44b285fb1d4e171e53ab6cf10da0b6fab0d93823eb5018458245917be8646f5ed6d70cc62b33cccc0bf2074f47d79dcd814351ea337f9c6989e778dc42e6c849b9d29c743e2379c54be04d9d9cb13defd92c5778215141042234327227e806d85ab5846eb2d341e8a4cd9dd6445a6e3998ca465bc420860d3dd6854d429a35476473160d99825effe9a1a30e61da0b8e1ec6cb3f376c069dd4ffeb0764825e5ee63e28044740fbc2752b2e4fa55bf25b675613dc49f577371073c70ba32249419b8f012ab90b9409df383ca323c9f9ec4d492f145ff94574a3113436c21ce8b218c06aa59006ba6c2b4bddd4338f6a702301d149a094d1e9e96818fd2422b9e905e01db6b52b219600200e3f8cbd2af3ee97378c7ecb3a74f013881c59cffea05040c0873ccbb85503f020db5a41b50732c12c7015b70029ba57482b8ffdb75f89f3e08dcc9062bfeabbe369ca1ef9b9e4bde5c3000d4d3fdd6fe23b21a9b18c8b6420e47dfb5e3677a0188103821b0495e85278215575932166f36ea5eacde945b74d8dcd531a46281e9cbf63657f68aabe8ed72474401c54c5034ba79c44c5b8069c65a39d6964171ed4cdc2445b2075eacedc5fb2a7848394c07d7ab97737b691b82d49ff5fa44eaff835224f3b8b1fff83cd840e5fd912ee64c10452c27f37d61b9e2479d88e6946ae0d708ca59f58b185d779a3745319e0a88e5c71486ed1bc9e45482a99fef135613c0144a99b9a8f6380a35ec42b49c953bd9980878af48bdb4ae7a51b7980631810bf4da42bc79b8d59bac7a5d9337236cc2165066322cdcfa52c8a5310e6abade379cef91f3930b9ff18cae3e8019fb863fd391a6e3d296cec169176d95d057ea92df456b91cbbe44614b6306569104c847f649945f71b368560781643bd285dfbb3cda52d56f63f328188b117d9a1cc669702876fc4f04c9725b954167d7dcb5c9ba8a2a6e76c0e365a55d82b4f903e243ae1bbd1d57cdcfa7cd699af5156cbb360af420ace09b7283b3b57995a9c57432ae4016dbc461a5d79087ecfb264bc81c17ae5c7f3644302fbd3a0972052ee800201cd8f5b27e3d38a91ec5c0ea100a58b8ca2636b3a0c0bc42a7d35d88863ef0af10f8349cc4556ee18ca284ee97a4e467366c124ee493ffe07486097ce3a51d205c7c850f4b143d6eb21059c8674a9896ca62420315d381e78d76d4b9cced8228b2b7571fe0a875975a7d8d9617de9e8286f6dedbfa48cb88c2ecf28ef8e1a9dc02f737b59c690c1782b5b3790cdb0493445ebb51d2052842e4f629ec235869a8bc93e5e3c419e5f6a6550b60d232205a1964e2a73e2ee19a90e7983a3f51f99711c7e4ce22e1030ed1144b3ddf263eeddb2c36a9d99b286c2a58ca057c02e56aa81e3da4cfdb972d30122cdbc5012feb1895d22e173b353c4faf3a3da785351d0e4564c6021f4ed95a0d99cf13c971ea7861b6f88b968c21f0db1879f296cef9771566f6b09fd478ecf50b2dc31d5c32d190258b34901587b1dd8e4735dffc94dc42a155abe35a055a3afb6f933354e9d8228462c2b8bb536bf9c57aadb286aa7b8229d72ac275f4771dc38216ed963f1abaa40100d1d1376538149822dd814fbd52cb42a544cb86e80acd8a7188b7bab3f50180f1a6660572fef1db7a43a7b17e4bd6cc416fa9b3d414c3241483987b36f7393f6bd66f6c2712e294ad0c16291f2be3056e185a929e51728de555d3d10b5add690e45c50b86e6e010363bf7bb8a018d132bfe2b6420f11e2054310fc308c2368dff6aa29ed2f1daa613d887a4923a7eff3a83516441c5c5b88c5a3b00dad34c654c0c2afc858647a4a3eb6221cc8d0914e2a1b9b8e8e0da92b322fe52841beb7034af7cc25162cbcf97258c01c57adc5991afaf01695974367ca25ce555165dba1ce5aad0f662173f0d4f4077693acb4d1bd7da5b084dbbebbb088b2ce4b367aae640fde9eb9287be6e419fcbf9e6c3b1da545024e618836e04487e9c13e88251e0e73e6e47b7a67d4471fe975b5a0bf8c0d34b0a037e12dba954c0a9ff48a4577df227883d86bf7e081d6df302d43acd5a1998b8ed643e575bcfa8354ad15402dbe98098ffb84bffb26b95725216fceed2767e43d3460b878b209f0822c3d82cc2fcfae0e501c921a7ded543175259b7bab7cc292359f2e6589037f78887564cb549ae4d33e9747a63cfffd4f0dc261c53a19f200a28056ab219c18250297cc425ea3895fb41609055f2509d326d52f072c8f8c76d3db14a24f21a6dc6de01abc1e4fa6d01baef6bef274567b5f2e1c026c054c4d0d1f027d3e7bfd9a08a55a746bb5f78a2e76053864904a0db5ded254956622fe7ff7d236d201f5750d446a0dd234d46b61d77187328bcf727efa86ae6485ba563ac32e52ad2a36485e6b05f33115f8c47f8c9bc13a69ba0e5a1b0d6caf5049a83c28f51227e4ea8718a37d5fc0a395eddb9aeeacd01335d5bae69b257138ba810bf6dc4c466e28dc05d54fe1ff1bfec6063402f81656893e3bab26c8892f2decc585a33cefaafa7f9740c99a3955abe97d29f0cc1c994483ce14312d29546478a6709d9553d4ede382de6ea00908455bd3f97c4440887c472448f30d605e22cd7e168bd2def20538192db40792ca286a9ed5308179c40315abee64cf0849f88247abe409a5a3f937d1bbab6d4c187da72c40fcfbc8c13c38527c884e9e4815d90edb3b9c32462e3018a127e826c8ab0dfbb49a7518990f1762c46d3c7e86ea125bf80eed5e157c2b816a1e67f3e1d040ddaaf15e8705a640bf24f3f41e7a5061d41ab9cbd121cc0f915d53958b6ca8309a4db8d0b00ee3d5ea9334de27eabae16cef2f82e9f4cbbbe8b2147284b70dc640f3026eefae2a002290608b2005528040461195f3f848affb61d2e4bcc1d4f29ca7cd4a17a91bdbd7c20cd962f651660399f82a75243767524cb6f11fd26fb2294eec51859389712e318abc8f3d345059343872f3ff1e2f81d72f24a0d115d06d4b23d7216aec203941a3d90a16fc89b4afd909f0503e017182b9526156a749c0c25879e2cdb1edd9899373a903c455b2dd278c0967960c7fc179b3b3e565dcfc756d16843b7152c66babfe29b63b520cafff0d002077f5bef91c676aede7d9c93cd74cf06768a32485cedef2d79fa2b3686b67f04bb1ef48b9dfff0187f91aaf583953a59e8491c7d6906401ae75b55d635f3e03163372d6544f4c2fb6cd679ae87b150cf28cdc13a1dacb1aa3de0882026cf674887dfa00e8c8af7ab5da884ff7ff118129687d05910d32801a57b566e6b8b28b05c89373eab0697dc5b1a40e886b5974ea02676f11c4d5998911eced432cd57bab39b600b2595a5b7875e2a0a35da41651957d720a02694b122cf999c015ae195202c6dd37239f0f04d12635c6c1ed04c9167013942dffd8ae073a7eac11533863484e6a741cf5f17f8c6302325763f191fc6020afd2a8214ca866024a3c0792c7ac1a00b14ab7d5b515b369c3fb0ecf6db370df1198eb3a7aa92416a57ef030edc2d407845f23e966696f1dc8a61f06e00348150ffe442c489e8115cbbc3db5ad39c1f15bae780bace454bd5f53d8824c5c484474f37a3e8d3b495c8250899e2c6aafa836edc2faab30d161550ef01b26920ffab1df9e71075e0b0d8bea738027885f5b6defaf1ddc3dcd55559e6ac2089cc7524017ab86bdc280d03e36d5e2496e91372cc0aa2b95a73e06011005903f5d238e2afc4aa00b58f30f8e946d171224eb698f694f576be58082830de9eb70980d234ee6db6278ef64686af2b280c4809f38310ea66a73fcbf04d87be49807d1746e6cc4591a9da8f2b8cc046a12e624d57a89fdc7e7c95ab0a4af989805ba20fa758707afcae250be707ee2a6171e359c3c6c3e21247362e8a11f6987ca3de97f04911d62c3b1028a4d925ba456974249d8d8ec2f3ee18a22f9907c1175fe109cc8ba9b4570128d37888f32a1e2df0d4c9c12970ccd459257bb96aafc36c3ffe42666adbd48125b3ec173cff5e75788a8b4fd40b2acafa1ffd49a5f57bbe4f02affee404849b7a8dfbcf4b3d2b0576ddf5e49ac913a7f38fb7920e43a4a593f99217de2a72f4ce4466df6d2eceb3fea57bdd595aeddca0e76a779b62ab70555dc31bb0e39638153cfe8d52cc57d5d1c2873effd8f6b57a7aa2333d8c7ba844c08036099453911b4c203ebf32fc47f0f4cbd7359217051d6fa510ed32fadf795121ff3cf0a6f2b60fcef9f83cfbf9afc3c67f679edafae7258e237658a134670dcbbd8ff23634b99b6c8fd8efacea2500c8b99e9b392ffeb40500c2e1fa971aaa348efc7792205099492161b94a3cfa95604a3ceb11b262413f3dbe2708db31ab2a05eee9d159b1af5a224c5670836bd588f30e3824c6eabbc9e58c24f1248d7c8e63b4554718d90f7902577850f337ae011bf873d13d2e44c15704e27536c96b7fb017f7774e1a66ac3a04935e8ccd0e5a76669cc7c792bbfb5b0f0681834ace6583dc7a2b0020d287816160ed4c4cdbae9c2dae5d993d2ae0d32df58fe9cf04a27a29db990a1f5158eddbe3b45bd1e04db2582ae2d3f5712ca9f0c4c14254c39210baa0a6d7fb97738f78d2401091c62646b6b96ea3b9038f0301cabe1ec3896ebc6bdf0221c8040f2695da35483c7f4283719e0a382f01d87e0c1847a5b0f8c916353e46a45ac8afb4322683220c46f1dd6eeae0573725f97a26678b22b3fb0ce77b10f87b6696b8309c86c60a3ecaaa3aec7288eca76f94fdfb3debbb849445d53ed77375e6b83447e12ab9bae27a2ccd8eb96918a5a395ad1e7c6495130af02ef691cef801387cc633015d8df90574882b203dd857d83d50461b11839f95bbe905d691e1cd09226870be250b228205ec4293dadeee61ec9dd83599004658f444ce6f2a8c76b46b5481c71adf73cc5cc7ca39f09334df3bf261ca5e772fd131b0615f1a90984566e16cf9ca61a1d0837b6225bdd75268669d00a2b94c3d6fe992de1a6a2df12df5c8f4f8f585b541d2cd3d8ed4a231160989be973827da17dd042a902f70fa71c8a32c474e79fb613e27884692393af389c015404a1bc997d071d12b6623b5442552069e0ecbc3febc563fdc7a5191879d5a44203c65eecf0404f0dbc915033cb1ae647b2468c341cd24bca6fac2a3d51416b71e872189540182f5440a282ef20dae88c2296d4fcbf7e0b4664b5f3ab00b11a7f3b4011ce0635408868f634e44feb5a8fcfe231f8f5d2f9785e416187137f408b47e3ab2894d7e3955386df3caf8ad11cc7fbc2134c5c41a40178d4e69860f6f01cb9220ef246cdb7478db8261ab89fd3e07ed7de08dc37b0b58606cab13ed37f7d0e5aeb8a228a6a44404a0ceaab7d81eccd4e2e907295d939b1ecbc6adcf04883154f7e3bb05f37b183061a2be8992297333d4262d0fd6b34d09ceaed16ca36d36a781f1d6a1034639737fe0585a47e842bc52b71b7e2b829d3dafe967152e0c333b3a5b60f1e1508971e4b411f2fa65069095c24cdb7ae51838c1084a843fcf16a026d8943e5461613f1d3449023dcf8037f68f22a0e2e0f1cf7122526efb7935be4927f724f8ef8520db4a3491d5414d8d784817fc096a6bafaa38d24983dc2aca49e799aab9503cdb51e7304f1660452c3e2786323b7bbcecd1d4a83017ef71f45339e4b0b2614ce9df6303552eda5f2d42e8cbb5c53d21991b3e7823e439ce63b32e2005be62c771b27526087f1ce6f25bc2a87a03f8fff593397972f70fcb0d6c0b2ff8feee62db0e1944a862a25175d1d3738f17b384727b8e321d3efab2a1d3ef50caecd01a714730d7ed94b31e661f421d2f027225c1c2da9a500513d5f0817283b061e48b6e74cf30b5919e5036d15bf6318d3bcea9b2e0c346d1f598828585f277f58d1fe4de6b8aa32bfdbdc7a5f0041a035409659e1c327f94eee90124ae6f3fd38323164d57cc1602ece83c9973e34c2fe91f460608e69dc1d431a54ebd56c9ea74180c67a88d0143109f96dcc133a2fc7c159f10428c6af5ea052ebadf2c21ee732d643877d5516b7211c9c44dbec9aa3aff42515eefaaa24afb7a130496c483262cc1891f9d9338c8b13be2cc1da4e0343afb52345ba4370b3403f0a8584a1df065f3f159faa47cacc8892132d816b8189e30f51dd67fe5600f9fa66254c54c25e2da4531271372a8b560c530686b7158cbe513b3df9d177f9b3afd16eae9ba2aeed100a8ff76104808286e8ec79d53374a90f75ae3a30504a2a8921c8dd831ecd0f29c994045cf070852fbba53e29f97a7e3e3299a6789880e3b9860ab9a482fa734f2ac11e9c4cbb1b8138a2df50a17fcc897a98779967262612a9b3e0da7324a0d5ca7c798d3c3ed4e776651de8800d8a5c41796d94081f5a3e8f0456776bf2054fd71e2e60eadc0380c6c5aa636dd460d274e816c1a5ae75999ba9be2683baed64474b3b73407c5b21d63893caae9d610a009a071993864be790f70803fdf0cba79773602999457078ab2b70619c9cf7fa7804d60f3f9ce994f739ea6c99cb3391b5716df0f116706f807a58eb974e04f4c870c885edbad69bd889ef47c8e597ba113b49c4683e13d8c254d2ee413365278d1fb5227b07dd3b49ba36a8eddd9c0d4925726814b38aa67e3479b2a460013513e57345e08ceca431b82033f9fa826b9ca62ce3ede9187df3a46d245bb4bc108d7bcb381f1a73fbd4003dd682b320eabc711267903aa36b2cfa04880f9025da5870fa6338da0e7e46e2982438d29a64df037d91debdc4657ff54e89748d8683386af29a53adc5af506ed8d7abfefc131fa1deb879d4da864caa19a29fa7767d5624e0c291618c8ea2d5b684c5ab55eda174f063cd26e6ff026c894f60f3e089085be923a9532f0809620d0abfb488799c21a559d908a42bbc3bd89068a6a4d5bafaea17325d4281a476dc1c4f2ea3f3bb12bc4d7a4145c028fa88d0aace0e7a092f229f453e3f608d7ab8368a35e8a9ff6ad24648941ffd54ae6d9412d97fba25b5c5d2674989b1cc47b5faff659dd0747b28487825ba9105b11e04a7488062303bf203327b9dd5250dce7315b14cd77ff23f924bd88cde1669564ce91c85dbe30691a4b817c4bf4b25f3046c3fb172e0ecde933e48fd678cff79227a5a33df7612ef75a7da949c1cf1ff0be24718ca122bbc97b582d1a41026774b105219f0a8288e938879bda390324b7937e3882008b077af7a44baff99bd917865728ab99a718c757275f75ba0fc6392a232a5a5333211bf62ee243197f7ebab7b6859c814c02d26a021ab3276015c074a5902f9559d39cfa7539c45cf2c331f1d605ac160386ade3d729f77904e18192696f8a57588798fc182144e767a04a0cab98e5f0e10b5a1e57690e25d6bd876f356da83203cbf30463cf1b8e54fee5aef25038b17cd47083a0ffd7f70319faf1c077a9bbaa966470654ce96f78b2ae08b2bb1cbb3f7e7ff37760132d8d7fbab561b828fc88d640f86417195ac35852422242e6ba602b4861c258932064769d265f80dc74fa466ef2fb9cb14f8382237a433353f1e2e4b5729ca0b4035940e6c0d1dc0fa368b1f0d9d44f6b49fc9cdba13b743d61c0bb8bc04335a4747ed2b3088a639b8555fdc4755f74c381bd4d7b7711660435e61a1a83fb1e229fbd00455a754e55e3f8d13861ac45ad95104c155297de7ec26b41d83aab457bbaa503ee71b6010c1f0340618680b8d56cf22167c4d4d23c8c55900f0144461521862f42fa8bcd7449c993f44c60ecb9f1c785c237388c8a74bae054d2672189f53b1c2ec068bc933059e12ed8d28df321e8c32a7a2e9efa36b34d98f9836acd4092d4f5227fe6b5bd9819aa740e0f574bc671434fd53c3679da19255cad0befde0fc922b04c87b85da4d37f291f2f9a00198ea1a2a3aa04b8fd0bbc6e1968e0d49fd4d819a9755bcca4a2c8228e0e743a9e0645a7ecca837061392cd67e6ee84a28dd56ab142870705b5242f673762793c2c4aba6007d6cb96671fe28bff4f79b8459f7ff7e777897fead201dd3be4eb22809893b28c1dcda9c45208ab5b58ceaa03f5c28963a4a885a469a41cbb2ecd656e5d2a7b32504bfe7c971caf4df4ba176244bb7b08bb4aa4065fe443985c6efb1da5c20bad84cbfe1db6c1082f16ce62e8f2f25bc2c0698f2e004226a9df2ee16086c023b15957a7679bda06db87eedef2ee29ed4a99a1a8dc8b0a48c933e58ade855b2633c47e00ae1f92a1ad9a0058b6d83387ac33d72c79d2833db8e620c4ebf87e82553368b5b9a147b7bb23f0606ea357d327d61a78a99335e118d9d097633f83c2104ace94a12bddab9d5c0f363e6fcc90ee40e89236b0d45fa0cda0447ad36ebdda11f7d46224a11cd77ba0c15391111999cf5775b0ec15384115ac9a9dd5a89d2175dec2073b3a80b7ab19b55fb5740fa5b819289a19883347c199c313dd32cd94b3c27bd6ee017652a399871db6c2b0b5fa23bac56ecd6fe4dc56a20b9a328394875adf41c15a8a5b6dbb69d2d9864b23ba0ddc590efa27e4b8ca5bc80fca29ea11f4b2dc39bbf9d7178fd81a4afef73fba036d6352490460653363b2a341b178b3022c879926e22aa1645de52c619201564795fe902751a3ba49ec692ee0d2fd02d5de71c773f66c0eadbf7d99b2e0546e594a85a53b9204593b2f5f0972e4dae43b28fe14b20e6a1828ee4514a3ed6be11b75cfd27ef5c90fa8ca1b3dd7a77e4178b623be801f3254ba8eda6c94dec5ede7d8a70d58032cb1dde1f30c97a2db1e168864c47c17e9e54a762883c6dc2cb0d8714a487d5152305fe2854816d968efd2c03917f9ad5064f2ec0a5779bfc564ccc26e972d8ba3e66162c4578e3c83c6bccd21a026e8067d734c85b9fa7940a580e4323b6ad45892e7ec2460f695aba985ff3f75aaf481175e74e552b8ed623dc527ebf42803d26fef14827f9d319d5f13e1bcedf4db58fd47787378064712365934bc44ead224b40f9b06093aada4ac5528163e9dff5ad0ea338b89d31f7f14de0a5b7b280bb0a4b6d0373820ac155b104929711238ca6854e844108dd781c03585974b323a2c49899d7c1a50355909cb1178671a53854272f72ed9641ec77464f012e135614629759560bcce0910f9bc9adb8a0be7ad7b43c8f6c4cdcff227c99e8a2a56364bd532bfd16585026b6b3430708c3d4e25e224faf28b332554c563a5e41719986125fc3feb891dcb3dde51cd9a11a1d1515b82ae0a64109f488db8c249b08639d2df4135eff384104d874e7955448af94c93cc5df9c1b3a4a770d33e778954cd97a1f3876dd33ecbcaa432a12fd7cfe8a840b69b73bf500c0299e49073fc1386d6797f52ec646da8f2db8c66e6a2aef8da62de0a46a0fd34691bf140e990117a637589d84ac3e23b0c1ec37feba116564858732e8fe06edd6e55b1a4aac2f1a341bdf38c749641c52832bb8468c92fd4419470abea2af022095d86ca8c9d580250fee44abd55a38bfeea4f17844579dccf0240678f716a9ec4db222444a48e18a942e0afda4bf9ee40a98f32ac310141134dcf8f6f3cf89258ee7084edecbf63c26f8d6a675fdb4990da716cd21146dad8c0850417d69645eaa8ddfcf959912b67da4f2075c87a546b7f31a32de7dda8fe7be28e8b8986b66ce056c76b08232b3e0d28ffb31c3c29b684422ddd2d91472fef8d3cd1c4455b332f27ca3d8f8b86817a00c7f52586d3dbe786adfb3c749417be42173331604cf4be96fc01d4e1a8b7f1b481ebb7807239a21d1f51e4cc9224a014ef3adc48b07ea273b5ab345bfc44e83c7466541d1addb3197a34b4a145f863b59afaa7ceb89b88b0c2b3eff741e108e5550763d6149993d0b2af7829626d95176e9dcbbbf55fe1bca538923738dfe50a3ed5b24e5f8abba9bba41d895e6e409bc037227dbed1bee9246869c7787f59c55c13456f881e4b8215a0ba52b3486162dba576b440979eceb6ba7133fdbd8e23c490d83992a1c7053591bc5af6d6eae58bb589c87ec37a80979826e47d93d5e163fcfc3802856ed75a489bdde565e36b6d494a2c8a999f5463828549aef98cc5400389e76a902eb8ec89a7d5e213c2fb05310ffba152d18fb5d8fc86164cd320541372fc15109eabad3587f2a208bbafcbf7ed78158b0e6a4300aaa680cead222ef8ed397c2a49f821b25afc2166b2468459a1a95db7d77f63912fc39b3a14b91e9c0a289b0b8ba3e091c97256eddd52028414ed6afcdf4ebac15d498bf4a05968427e81aa02e2bd437b474f52818d47b9708d9600c0b6a72dcf67b66e9d1a53f042ba48c207a7d4bd640d0589557787bea3b5a17ed13c434c2299da8609f713472eab1a7fea4313dfb25614bc45b21ab58a6371ea822fcc07155fd03aba118fd8eb09253ed0cd400fb8558eb62db55a296f74c7aff07ea8a25acb0dd1016ae2ab821ea0267921e959016cd9ef4bf1484af2387c7b75637dca9ef8f43d0d3587fbab1896b11bd30b53560bbdfa9975812a57fe575abcf07d91baf7221fe05485e75710275a7156f0155448b6bac742a1d09c04deb041d77c13dce8ecdbb23e9b4c0da7670b19a2ad4a34910383079042fbab4d789f025f6a7065e63af6c1f0682b7adbbbb5906c241eb8502177c8ebdb083665c2757a2e8fa789e74d964713e2ba40698bc1b6ed02ef4bcb5af4c769ba7de0a8b966a3d3a9eedff180e041ec04ee37e9629b928e9b4ee0db6440480a22af892e588a4d543dc15b321d506828d3f9a436c1196d2efb5893dc2d01d93c7a0790979ec24ac220c70d74d47176fbf7149ad1b6dc3f055d5fa445c6dbae5a8a716ad002455d673c5a02969179966f5c9edffed27001191e80bd1034268a1eed8e77697fa11e312c5d537acf3f6f960ee6fd0bdf8d319e74144f892c7023a7250064fb5bfe0e3de3fc4e4ad2c91a7006d12a0cc032b4b62b91d36aee451932620df7871d4dd9e4cff52f37d8687f29ba5068c4ba07b97c57f7fe0405cb6a888b4a01ec30f583c4c2d10061587b1de8a3e681b6d6d4c983cd0e5e00859413c9755a938d6a604a935a1fdf192907178018c2039d2a67ab37f02f021b24fe519b564b55f31bd56ebb9b39893b2265d619efef75a02e183250c5ba4fbe9ad28223e59b1b50e5d7fdd89bcd3bc130e8b6cebec4b22f26b9a4c664a21ff3810f437078ff6db018ace1b84e42596cb0716fdb0cf358f0682a6565aacbfd2cda6fa27c5606f315a52ba34500699242e3aca5d1b9a11288ad0a19bf04b6a469a7c43dc0fa274b72e098141586e53398434b3e78a4bc87c4ef17cd0dfb259841e175f14db5ce08a7dde8928a8b7d164a8c62ba9dcccaee07398378ff14f68c97248b821f51e543922d32c9b21b9162a5c8c723282e63d6e853709e53642c780fc3267e84712a4faa82e11f179ee4e1196c1a8f9fa52c13cff5b304471233d5dd44d5e9b2ea7c16f0b890aaeac3e451c0e785d94bb808b64ccd6b52ddc52a319e2a5a366c7f5b7378eaac32dd77d847971e3f4711125744f2d5fc7322df85f20e254d1321469e14844e30d9e034ffdf5c942034c44312b446b7325b16af56876f9523a62eff2fa5da7fe1cc9d92db5b0021730b722f84bce70b643e9e19770f381f243d4fe81adadaa4ce90cb3286d3d12eb2b973cf4271c997db492ba480299b15cea3e97f7991b819eff4c659a723adbfa4902d6e8d28b0f207ed10eb582694e70e90e82db9e7bedc11138a59c36f781381484d7b3ba22e23011653d4f3ebe684cbcc4ad0db966338b4f23a9d55802573f0995cf30212e47720c17a1acb03b7927ca8aaf621ce9053809bddc0451034420cdfb7fd5e12db11479094390b6c40a3f0608f44702ed5d1406a7641f366ceb469d805496ba83a987404d2ab7a3d00e515f6b4f9acc53705edfc6fc4442e6a7b8041be3d7e3e314cc9ecfd35172f0c1cec9a1d42c6d7a364c92f04f40eb5a922ddc32fea7cb5b24bf2f6d35d4679412e47ea08247c9dbce5fa1917941ca4accb1578a5e16396a20bd7416f01cdfc07f7f774d5dea25a76b77b532f9744ddc03c40e10e839e3a57d4aa227a3a89c034de838aba4c29fdf1359f3f489b8a8ba3da7299b7303debb78234252f93431ac29c470292515b787b2def68e75d46cf799d954c625461f0e272594830768b09aff27d09ec8aefa85ddaf7150515258c0c71a971ab86328b49224acaaf9eb09d3467ea05489e02fb68a38e733a40ea5a852887c5a7664518bb32c7347936282668025198a117839a45a4f6f0b566b2699779f521e4a28c266a278c0e20892c48598ceb7e74948d4ebc3fa71dae842903322801d95d11d6f2f4f363a392c2d2466fd3931709e513264ed319f4b7f4899bf1fd9ab4fdd503c939db4302d4a5c4a176592de1541c7f89026026c4453b35b19fbed0f74f25f0c94f4225ea408bedc8a821b07fefa267871c746db0bf69465e1ed292b88ad46f298b8921344b30d25637a162864779d71defdd6bd24be690135c7e45c8310e6e9a50e692be3dc45a8a34f41f933475d380c72ac00872e11941f00fe671f37e56abbfdf9fb7b6f01e3688b108c21ee400c304865d5c0a643528477b3235e11df2ffc43e367fa5ddecb02982a3717ffaf52b50ab79ad46f2a36aeb5164168d89d6d2a330a363acf9c8d59ae245d1ede55ecec6b44c2d0af856c611174961998105731e2e2fb1543b6f918b2f58b454d81477f248881ad52cf0607b97bfd6306e30fee0907fc528a9ad9d5f4780bec95b4dc33aed16a6ece1c4645462e70172304c6eb453ea3ef4c6290312c714ca50aad719134c62c33e8976859817b92cd3acaa1d48ef613365a0895a4f8aef45b1e06f5fd7b1108c9d5dfc9e73b309110a3d46e3f3f409c6bdf193610da1b5e5a8928365fa57e026524083516300b6300999b544e7e5291b3417b0330efea01835bb0b109c40316bb2f8a66ca4967a7d8ad7494fbe9d5237c445018dba1194ac057ad451585799bbb521b95c87cd03af9f41ea4f8d06c452bb16a27970b50d675cebcdd6dbe37fe3a8fadb8ca6e08c3ad08cdc65431dbc210297a0be224d415f5e3b1285a65185503415d36508d684cc3f3940a342c4966ecd90f8339f883cef6666ea0b125a5b8a91293a3193e234c388d30dc320c0f36f9ccb1e8535979fef775b6891055aefa3dcb86eaed460371a8de23384bfed4ef862229aca3cd26de5a31ba7ac96137a22eb893d4065135feacdf11ebc171cb62073912cd4f71fa17d7ab2e3d5dbb53ac17ba722d11bed2fbff7a7aa3ba8675fb6c911289c8e1e0190dab7acec03e1f6cac4569d0de9ef23439e37db5ef1fa34eb5dd863d08f8dd23cf040792b44b0586d90cde31921ef3d6d7e81117d0d2f511d2bb9dafd3efaea5e277cafe5753158bbe2e018c1dcf1a6765c8c762a6aac1a4e75c3282d7f86a796beb1a6a0d8e85f8b4bd94600de0f3d57f9d6b6025916525c55588a18203d75153ad43e823132168ad208833ee39060f1baacf944e5dd2c4006014bb5f62a895ab1d1a4cc84e65005026485a01b2dce1034d4dbe7dfa2c9143cb77e8632a05bb0efa3200c07e8d061db4e1eb45a48235879d74725d47244e330ee4bc3cbb4210ad18abf470a34e20c9d717f2230df84867d98cf63cc6ee48b7b5e5e87e28448a13793116bedfde7510727fe8069bbb412255e6f66f95523e92f71afe93163fe358e5ddddecbca815350c7453cf231491e4c1ac270f19cab2520660249b55375ccc5c1d7a85ac7811eaae0782649462c8d28f4f307b5bd4e77bbd5e378bb249f7dac0515d0ed58bb74e3a1c723323422c5a17f3141c18a07f7bd119f00fe1e7520ca58217597d6744dc925b6f1619f7936d3e5f1a01ad220bbc1f73d1290452a25c09172759ed7a653ad773d3929d25578a8ed47118cfd86cc11ab0759678696b330902a9a77ee080c10a632283bd2cd465c90f2c323314bae8522c42f38ca1ed74c850f359e876dd9662ac1c612a5e6d28badacdd3e7ccab27d467ced702eed9a209a4aa8d2ccbdd7ad1a097bde401d22c7c980ddb5244f0df446661f703dc91750899a2544bda3be5da578b90c89edf8bca4a9275401be08477a99ccdd1bf60b85d65ac0e3399dc9031c125862d260b46663715e9e469a3fa5799223d38a8392014b7e8f38f65ac23a6606485dac9352b1c3a967ecfcfafa24f4294eab78fb61f3912b205e6423d8dbc30fda0919d6d1b961c6a21d15f67e126851a023ef3b02d2269b53e6742574e0dd28911c4270eee32351c3053727762a4c35bdef3eb366d3d5d986e7ad5b5ad35b9eff7ab899e649e6c57df7bce37ec7a43826f64565192d542316714404faafb3e19038a96e1c76e1fcd8769a6e8e64fb265490ea3a8f678769b6f4f86e944f81c5cd0c825b1524504e4f40eac56d0f6358f3ec6e35a242f395b97d0a0d69f26e5125e271753d6efde1a3466a38a24d067a5e48d38cbb71d3fe6cb018c43011f47174e9efcac21b4fa25a6f9bf6504cdf44b63d7e99c914ffed35db59ca36e6ceb4a68eb261ccf196058530d4fb79d2db4eea65c2ab57eae564b76760bb84291ed5a64bc72e57b905254f57d69c7073a3ce08be92785f3d939e907ef76e1ba84baa2507cfe5ba8cd44347eb00870cdfde7cbca6778c946fc7971aff1dba093f7cf22d420b9ac0434fbf89c0520d09945b2695cb55ecc6447870a645945175a22d1313c6a1531f44953384043c4d2feee8496a63c40f45b6e8f8d812d171d7d5fcfa53b5afd4e6fb3bb24e1fa872624c757dd9b91aafcd70bcbd4d0a628153c1bb589d3869ca2b70efe75896387108f46591af4cb39a4d91b79101368b90f330a9f3faf94bd8f67291c335cfbe15383fcbd25dad4877807304e90b93c99d5ae1706815bd2897f1b5e695ad95920fbfd7d97392803efc9422bb08c4ac5edf4bd9d5db6d21121e18250f37b8901b1b6e074b176c9cb7e21b03f51b13401f83c963092a8a0ba8a467c2bf15fa6629836f8d212cac8b20db73b555d43ec3ee2747fa00df15f0bf2e52a65da347caec155484aa14cbd5a5d669fd6eaa2811f1a866ffe30d24a3f71f530f28b041db37053e902f731c36b81ee33e61114656c7eb8bae784eee54d12fe5d1cf325dc958dbccd619e335986c8038dfd10fd58b2fda5e5f2b9f0353a294081395eb9feb93e46464b2714cde5c6a44a1e52ffe64df2b070ec5e2b8b784f3541a12de1c033358cd61bab073e46566ab2fded31c5247bcf76b501918bef6b0d9ffc8b7b20f86f71a251f8bb9d1e106f96ace505700c27d1218c0ae0145173f94ed3fce3d83e0e7edf3ee2096ae0de096f091d820184d955f86d1b007854e360375168e2d2d43215f058e366637bae70ccf26f5c24f5d1285bde5d9d875be64f4331677ef11c3c47b2deddf0d7342b737181ade90924cff4bda01929bcd0effef126b16eede9ddbac57ae2e52030003fef6632b6b33ef3aab4e3cba52a2bdde22214d3038845b875a4d1ab337a365235d1e9d8e869f2a06d0ffcc0d1fe05442a21677bf321a0311f8575239bacf25bd526c28db7f7f9890f4176104fd9a04c470d715d3fe4ea3ebd954b307d40334282d5f1ff69f755da0b72a6727449d4fc782b107874052143027fc487bc20e9eb5dc60d82b9dddbd8e99b9dd1d7e1e13fcf3ba87694416246e5f7685030c537d689349bb3767926bcbfddee2c77cbc91be71707cce31831402a711cd1bca3621f20c08d21ed33968d9be7f8f1dcea83e85cabb3e782147445226f9f034cc7a4632dcf43e600518f436cfce631c5d17325a346e6be4e1afc412e04cba7ee57c20ed3cbda3084a111fad7c2f79519ee2cf76dbedc43ba6409c6fa753c360034de6803141fef592cc294bb603af276304388562621a854d5a4023eb5bcf9243dd71b557e50dedb9b256b12a3db21ffe042fd9f085372e75a00734d96960b4b68339f16712f18df874046d416d634fd40b5a5e3800b39075560ce0f9f349fd370d0d4b57e64fadefddf84565078525a6318f0c0e03479d6987114c48f65eb803461e871f78ad2462cba3a83c323f8c64a4cc36989e5c5dc41f38cf852b1b1a11465ce65f6f4bc494f8bd05bdebda919f990f50aa38c6e9b39eb4e15936261558fba8850b08f5b33dc8c9540ab6e06d325ea321ef82b8973b8c15e126e06dda702cb3f458a99f48c4ffd4c463c797487c7bdbfa4d83f3f929197d34b9453ecd2f1ab2641dc76c787e9ed7f56b2a83d6909c357887c91a8da0fc115d496027833ac3caf506e3c66c2e8da8b517ae1a797fa94f3a1735d2bc08787449dd2200205af31d174deb0f19eceee9d6c870608cc3852c442b292884d959482d4529800a640c52173c5963e534844cb08879dc44e62ee954391defdaf771aa2521ae781d1fed20f1a9c580078795cb328b84cca0e5fbb0533f720033929778ad6213f75c46e6dd73ae3e41d5d9be962db3b5bedd116cae35fe41a34a1607aeaf1683d72c897d7d6adfbfdebf2ab3311e2e01f2618795ba6b4bb186ba022cb8915fa294a578167bd45fea4d4206b4a1c9278c82891fea8928df850c0a371cc806e1b616c57caa06905c6f1e0a5ec3d70d4d289515d0454b816c589bc9fe177a7221d7ef4ed5fb400961f52848aee0c553c8a35ad9053930aaf86a7eb75c16376e31995f840390789df1e70bcd0a43c168220ea38c2e96043481f0ddcc0747def9dacba656084c6bf119254b0a4ae8ff36d1aa87539a105ac00541affdabdcd63e9352c4632c6952af2375666bb682f101e7329d890268fc300dad2eef2e59e4e5c5bf4743aecc8a584cb82f632aabb50a6710d4e428320fbaa78a99734dbe01ecbebdb87f91ce8a8dcd2bd2406254751be3e10d2b061f37f7ce7742896e59d878740894a2717cca66e1434a9facbfe3e79d8c360d0b30024229de6a0787d5a603ad4efd20e809e250dc65e093f1a30ef67cf9fd70e33e7f970a6da06847c401da15f013f68fb6eccb9c8c84c4c05233dca6685b8a86818435c00694cda137b1e038a4e82029737b422e6154a9aa1a6029c39b998ba51f6d3b8df055e7c2afdba1a4c264a9f66cd25f770f56c5a9ce9eccaf86a4400cc543cc887b147746c09545a23ff9f66d3f1567054592a395cc09a5533a7d47e521726ed7900deff9b98ddd339774b08950a0d16a426efbb4328b8396fa992abe1582c3e37a1158bb6c31f055aa624be5b2ed508a6165a63a7a0a9bae96b27ae2e073103c89d990861fce61cd3cef7410631b325bf9b0879aedbaf8a6c43769235d28237205d72e6be59e9f049fb9337440471e22891c56a94b8f6322f74c0f099e37d665b4dd35a61d14a5771d735164127ba749129dec3e015afc2f1315154788a4a5841c297bf379d121e26c6df7d5e423ce24b75f6594b0c02674e5fa8f5ba6667a494f67e98b06c07e547cbb4b73d7c6a1ec8b5e7af147619dde9a72191985eb2e72ce24ea172ec57614d0548712d508c96b9a180c346c927749e98349cbf8de42b9330dcc3a9219f196eb90b4aacea99448d966e4e19f144d22c9bbfdf64e944daf86a4dfd862e9a46ee2d55bcce25ece2dd1e64fd0732835a6411991046beafe09ac8f675382c832496efdf5d9a1263dff87cc4e3d7c1ac0d6b62fe119aa83f0da07d9cf7e5253c51add35eacac85dec814e0c0404d2e440c2147f846eb771d8d74e72e5c08b04de2ba0a30e1c861df91eb6482a97667df893411f090572d11ea4bb0b54a7b4e8c7b342e28fbc4db11a00552e9c6482a3d4466c91ea3213648005e501ed11bd79e78ceeff46f50a64cf2cd15108b940abba926ee985c767ff8b775238d01bec31b27266b204f110946fd6a479155837ab720da4a9f569f7ce02f56950b4dffc0f0ed6d4698bd0c13f42b4cd9006213fd5b8de7c258c86543149b3d4defae2eb46890eef8ea036ee1794913339546e72ee735b5006cf1b6dc727687e5a589e51857a7b905862973be9f05dade55baa3538d34ee56462b7875816c078f6f6310d5df35b383d0ea52b4f591d9257ab09be9c85815516dea2ab9a57cb3f20c43b4b011b406c2abd9316d9f2085297441257d7921c4c0937678b94883861dc4637f6353976e1d21b74a9ed5c316128466d4ac63effb43b48206da1753951dd4c24a5f7e86b89935e0b06b4d06a3c3fd467d8f7b0e17ffa3cdd2044aa9d9f48f4964c77ecdd8f37cc8393a3e3a235c32f87fff263e5fccf83314774d38ffafb59bf1dc267d9f1aab266b1cf36710ce248dd906085522ab290570ce5a62101173bab15d24bc2c15146b05e592aaab41b2a28fc49f4b8c6db8de1f075fdf51fdcee20b0b69db7a5542ca76c88a4a38073be3ad8b11173b479d0c6d07d1a5f4335e7f0402c31409b603057fb46e2216580c807a5aeca136bfdf902d6297d7d855cad8a4f3edb872fb5c9124fc38836d090b48575de4aec7b85ed4c8368b43064d1038e141dbebb3bff65af02c128cc273da28f08e4270e01ebcf2000eaa408f054d0d3fce367d793a6799da9af4f776570cff384a1bf9586f811713182c26b518371f213517ce0584de13d79519ef95436c3b77054ce630020dee86847aea32999196600e378cf4da030952650f193001933145e7c66ef6c771dc3fdefbaca1c465134b790aa170ee2ca700bc10128bb4440c2be4e7f9b5c541123824df66f3c853dc04fa346c6156bfec381d2ba99d3eae151c858b3af76757a5adf9375f238ed0f72287e129020c04b080137959ffd221ea6632f96df7ca4bd5658460c0df652ae65fd57d3ddaae9e2e75d1e1fce47dbd59bd094002953b44e23c62daf241bfd4bb6e07ca8eed9f8f2b62a79ade1fc0afbfebc8b49ccea753b4deef538ecd6a56ed99345497b254b1c480f45b1a5b0cb3e30a37bd4a9420db31de7cabc318b468f55f6c277b96000daa9eec1c9d2e9c2e02148beb35e5cf9a44c974cdf4cb1b9235fa61577ba16bdd7015bb650b83eb51c995775fed310922f56f6161ae076ae79bd1d38164ad36d4c5e3e0b638b66740f9353411d05111b202beea7c1def3abd02d4c353c03399edf31b834630bf14f906a6426f06a1df0816751381fc70db657d8f266051d5fddf36af2af1c3782808de527a283861b10ad5b711193ff5114278967e6d30df04f43b72608adc20a54729ae72a3065e02b2e2bdac717e2c8d945843f8c5d7e3f04f60d3433773163de0e0c0e45f5c6f91ad19f21bc9a0d9a9e887e00bdcacd9b7b465f04b95b99a4b441ad9363ec7b01b55ff9de4c0fcf65fabc4458f663d787d3fecde8d306bc69ef0d074ed6b7c11f48eaac3802d8800ac1eb77149a6c0c01ec4e5aa6e70321568e3b7a3f5a842b6358bb1b0b5efc9c14283eb6396affdc86e3c6b62c255bc1a8cb6fe7c27ca59e52f62973115e1b817cb10711abfe4c42c168922cfca281a32ba21032763adc74c9d1b27a3ac08c8c0114513d24f82d0b015f75cf1456871f5d6ba6a1e29a27dc6c8c427db42f1b5939271f9055b57e946d28fac2de338db3a6664d82289b80106ce9925af966bef12e910c94527bbc8f3c35f39f4d4ded4110641e7f69816c2d3a4d37d96b4ce7aea8e296bf237d81140652a7e4db65a4a1e0f84c2f9d45bb72f042e165f162689bfff9b07533f7bb5abe5342bd95c42905803da41cc1f366f0c90d38f825ba7a6092fdb26da7f14a21e3d4b773e120ba478e78525433e33eb57937c7b8c390268be01f7c5e6b95dce006cf6fa9a57d3ecc4fa40b4f51d7fed4b029464ce6b07fb61ee6b661b0b7d8dda3af460ed2730b48f3e97dba0e64d4286c2da4e25c96c341af979a56b45deb70eaeee6f433a1fb6af864c7622412f9bfa5d4f38abd2699dc70a2ac45038eaf6f88d42353926c3b5015950f457c211582e95c7c1d787532feb0595f9068a006fd30f1d2288307de8799ab0731a91e369dcf8979e4733d6be0a8db030a5213db71a11231f8424bfd3656dd36012f144a91fb1d8d8f713c5e8c35714e7d289754c82295d053358a4d03cce7eab4289ff3f1975143b6e7186dcd06ec7c1bce4e199b64e6524f6fbf0235324e902f37dc923d57a773ee25747c567fa2cef2f8f5cd9ebf721289c27d6ff22310d58cb7a25851b9ec34ea30c53e4d2d0b86615530bd3482bd4d2fdcbf4f934daaf64feb1d2bfb961c5886aadf9e86fea020f1fbc1e74d47ee95b302c0cf8329a70d51f21ecadc6562fe498b35179648b59e728c5a414b902a5b2823fe73c4650606cf07349bae4a5e56dcb14f1544b5dcfd63e088d100204c526c48222c84289c5841d6ee48799bfef216672306233a7a322120ffffbc4d751f694346c31b7dcb97de3c131cd66075c3737f5744975abfebe1540882fdd057cb78b52b9e4cb61963918b7832e2755667439a4f06619328e5fb1056f62b7305e3b9c7d422a2665164ecaea9d8807db02f41f6cf8a11dc70df1f2c2c0853607f1be7c4f954a49e3de37a440184d9c170079ecafce3d84731246ce381c566bbd8018ce1a79b16f89868ec95e3e077ba6a248585ed53a56a4fe2b977fb4ea57f2d555c45602aaa53d9247381a9ccffb87b5754ff6c04a744784018162daee121cfa69d7febcbc0707635aea4e64363ce69a1fff87e1fda9d54b5d173832485aed4ce8c7283ca9f830cbb1da608ab8e257c161852c3cd58a33d32d59fcb075c76c8d08a900c4905c99743655645e4e47dea5501bb5575b6fa59a2f539f89fdaffe030bc5e4cdbd78d91fbad7ef1e8c6fe311db331e7718d20087040031ff8dceb7cbed113ea66e90e6eba55e8a31bd19f61ab7515a7153a637304af88888339a5d5ca11228a733928657a496bc08c0b9b17dff924363d658fca4d61415a417703d191d0ba69d0a0fb74b8a517cad46a882d6e4db649bdaa61b1da5dc15825e6a3a04045236c6e024ca590d23e8e6f10ebf2c8caa944320d01a086247384966391e54650d3d001430106b2d205e4acc36e74d5b4cf89f980a92c9e0e8a272a60a7345de1a75a2b7dc260dbecbcea964374b3d0196ad47801ea6fc86b589c0e19e5cde02b1b7eecd68b1283c801f6085b815d585adca242f95aa583e1fb157a7e616b32a9ea79ec5aa17cbdfeca18f40c5867b1f0311553b0345ab88c5b8c2140a57178297136f85c01d711b881f57c25afba114731e9cff01f6b21e8ac2b00ba379f3cd7fa2dbadea9a418dbae39c0d20e1b2ebe0964090422b67066f60f7dc390b764dace45bee00a2eeec750961d05a6e5b8571cbd5b113325201ed8839f6b863ae37063a917da46ac88094df85f01c1f8de67c032226e214cdbd41a71ab698775a37b9f2b3f1bff74f14207b551fedc634316901858d13153d53bdb6fb7d78f24fde604c604d478101d2c493ee6e23d1bd2b77c644f59bde8c98d81e56f1a4e993e5119a12665676203236c7f874d45df7ea56efddbd30547e3d4b4c3cdbe194ed3f14afa208baa0de408d06f8aa1790280afdbe832c5687597419ea83261c59a580a5743f7fd66fed6cac03b76bfe7a3ca0ce0a212a3cb287df5261c0c9d8365911d88b78a3e4454ee4fbc8fa22ac5f1cd7f70b9afd86a560e34594707f7a2495efbc2941bcaea1ff5faee8d9a1afe38886c00c740058c0fadca4aaad11eb038e611630618cf6e7ff4c47bb5ab4457fee035d3260c759e6c0adfe0b887c33976120514f5480bdcc31acbd993bc069b7bd126138aaa82925620dd20746af1a895301494dbf7c06b3101c6b3cc38d2dbabed12f9cfce1574ca573c5d1d335b24635e746113493ee98ef2d9842b424bc72007cd13a553ca47da7a07e5a19c43f1c19590b8f8eac81ec7e3aa5ce99aaa7fb5276b2247de0f112aeb8d4a4b279ae7c8de4ce4e87a882ff963b5dbb5ac87286306bfd73537b7547f8b0cd37c06a98912fa54197a8d73bd9216ab40c92dd24839e2f505bc43ea4b462814253e4a65a7a60adca0a8a8d55072ea10a67f89a405e6a41c6307fb461c16281a8f7830568085f043c6c06b0103a189d782095dfb01f865273d8c26e4b7943160096ee7e1579e187592f753f7bdd7f19a4641c8ce15ea988e4ccb761143492f3a57015faa34498583fee431872011890e3f2c5556fb81a81f9dc62fda39b0eb0ca25ddd2440e8e146ff14474e14b035bfe632e2cb0ee71914666b4bb5ad250b844bc40085f9908acfab4f83d7e40030e7838a288a2eaf66bb577dc9b66914335c182fcb15cf2439ab5ca27fdf579c58df5da462bf3bdcede7eeced9f6d3ab1dcfac4d66359bd5e3e4ec917ea01ddbf186ed89bce0e79b007c0d4e344cef7b169890036743e2e6aa1e861d7feb5b1add70b9be9bc06784134065f43e56e47e050cd32a35d1bbc728725d7378cc9a9e032ee69fc32f5820e0e913e50605c36f75ea24b497d5a6017290b1abb488fe3e7a5050c0e88e1605de9a5abb20160092944ae0afa03e8c0ffa52259fae8e4dce7b17b0c4227cdcf008e047b68431517dc8fa7678604fe31ad56a486685374f00266c57bddda84aa8c43a25d30872b80f9e95af2a768c1e60453bae6240016b21a869248909da9f0924ffd87fd832bb764912d4f43d181705de8ca1a2a481792d2291507d0e01c8f7f84dc11a50244706d80e9db7a41358f59a99e1dde5fad2927577ee2ca38f5a4b87f83e53074ed75108a64a2b36bcbfe691ff344b6aa842e2d51c34fbc681037d43eea5524eb137cc4b1760128f62595518ade781d8c66c3883a1695957181c938333432ab3addf2bc436a1ddc2349a691303f369ba3277bd779b69fcf2f6db9bf08fba450fee27ac12e800dc21b57e3b681767bc05af63e3b2903f8df4f6cd2973253b84377e924df7477b7d3e89ea771f8422407c6193a7e819faf6e66188049757ac3a97659e1278ee4549ca724eee55e28bb5a027f749dd4311b9e6da889c94181e1c3431f4ad43c088f5d01cf55cad087c58fd6cd69b52140a47bc48775bdf5f0abd664751a9f468140a8f17c88c87bf9cdfc1086d5f5454c9c5b4715c34c6f70d6cdd966c96793d79e4046dabb17fde85ba580ca714daceded003b80f3572936d429991a21d4aacfc0c87f12de11aa686ce93603fff754be4b09a9c6d14635b05abee7f5da033b5f7e8319a952c5cec3ada312f4fa9de7ed93cbb8d1065fe56cc60ab015afad3231e8fa36ed37e3cb8652a2d93c0ebd9bb36968b52d151c637f66e786c83189d35ee22f7c9e2ba93fbb7cd96c93204b2def838c562966fbd74b2c55cc709e0a701bfe67dd13e00ac20dd62b296b114d33b3a75daa8ec924eb0a2e6248be7888749d9051741b788d4555d762fc3e89e78f101041884f5c8da31cb815c26120e9cc6a4158e1b7152d7962e31bf216d2345d733ba038ba4694d64b206b5ba97dfe3dfeaeec8aea758c0e9d6f40284d97bed04e90b573c7f47a39bb0b36d440bb4f50709f066593a4dd6fab150233feb24f0474ea980b6257280b10375a33ab73859e48662b6ff33435ea459b3490079f4613404724d821168dbce25f73c1724e868ea72d3539045540b29d96f4dde499fcacd6aa72038b2de70c54a4f85accd48e45c2f9c103420584df5cce6985ac51894cd6aeb1ef6afc000fab4a421efb44b5ab104801ff62d2b10c45333ab6e5e676688330075341e1667b2ae19cbe1ab249b717c33b5018c0f3fb3b829e13a25355a0445b22e52096947d2f4aab7fddddbc3d549dcb427f9815fdf5b7ca35a423f4a7838b82cb395d9c1edbbec9aafc370477de6fe288c797f1e0a3f61d947c28f1a32365367b94370a559373ad3f8163b9d2ae665279ecd52b044ef2fbbb9a4eb5f6c501497e6a353fe9ccf79c09c54170343b7df7203d957ea54d3313c057a71b952ca13cc0544eb4dcbe9353d4aa5e8371a12183c96877187cf77f5fa074534ef70d2a8b9100c544814f2e1f7147d0e9c745a8484748e44d0351c4ecf7ee7d52a5f49a30a69a7f8a779ea3b4ff2ed27f11afbae8cafec7297daa3e5e9702f42c86b147cdab0eed289207f5bd6604e12edefbcbb4b7ef231e241519ce5d6d7e394bb7508d22b15b86262f79aaa9229d866fd87ef2b37e9dd9278929c975df8e3d761012a12a4fe700b3c0ef462f4df24e4d82e8b2c6b812f2cf5798b37abf63bd1e8509e3e4362139489e85ee0a41c1efede1951bf67c1e831e9b31bc339af2ef9c493a74f0864275b3686cbdd402bc07cee192ab63d3a0bbe47891a62c3c17c3be31b80041d38962fbc888d25f556bb1724f4d9a88d1290ffefb7516664b4f265ad97536a55a7b7a388e7a91f887bb568f6420ccafa45a43e2e04cc98e1a57335991e4c022594f547f09ac6ffd69de5d7e3c4a69af4bb04c88a330bba684ac27608d1214ddcd2304ddff297291cc18a55ea0fa7f752a8846a7057900ca06b36a941250dbf7332354e2e955d4521509e408c7be37ce2f937b9cb1a969ec43c98da45fac913d41e74e2749fdb30fd68fbcaf7d5c5261e40fc0ab87556b877292d47743b504f150e98319ac1accf52ce1a45f8129e08ef555139c237f0bff5e4a214062b1c23793fc5043a53bf931150fefad07848466efbe5bee8010980d8d2f5e88eed546aae5f3e2f29dcb6e7133138bbb8850328fd2830bdbddc0c3a53fb347aa9be88600e4c2f4fb882729a49ec1bf18ce09cb5b70d56ab8ca4577153b5406815a13524e0853cafcc17b27b5fdc025f033ba7f5792c5e3b355cb64ba6246d795bb79dd6465ac64a42f82fae44f7199cbfcbf635fb0e70a0202400b98b8d29108a7d76eb7cec79b7df2e0be5acdbddbb171f021bdd2f569c763a65a218ebcdd84143ad2f2f34559b654e3130e50c2dacbd9c6ec8c07be3d8b553c587d5298bcf3331ad7af2983593e03542f5071e76d6965936ef7a179cf6e923506fe25c1d2daa7efd71ea4de648adb0a55d88ad02323f2713c3256076a283e0668a54af4186b2f775e1e2093e9bc49a089cec797a91123aee8972c3940cd56f3dbf6fce90c18aa654883339835cd1c82068f89556122871ddadb2f815f88e1e3564ed5a06bcd2af954000bdd8a1cb140ffdc78659e01f8a00ab4c3c0b1b3e873fda9f70ca1dad4075ea5462499c68e7fa807dcfbfe24b39740ffe78548bbb93861841f9d0b33b6745a7b34ea663c4a36ffa904800042c98f5243f699e73d384511c7251bc3852f848874356e23661585cbb874550ca2419eee13544669423fbb0db1889dd614b08f962226ea9d8fba066e99bb5a617871c4522ac39fb2b30d1439428f87e36d16f2d52da560daba788b5358918f538370f70bf92b2bc0633b342b52a0e7315f1be14c810b3e31ba2f9743f79e0345635ffb1cfba729e61de17cae434d6e2cd73a8fd5498fa70ec33037f6c3dc3f7d67037195156eda952428a21119e79c55dc18f933fec600696cfed1500d39515ca567b79c828dc29c5550df4ee9957e9c79a0d1a4c9e11c1d71f339ea85df6f0b68018d272a62de597c69b61bd67094f06e5999b5bbb513abc69a2c5a8d3e5f4ca3a418741f0b5c6fb98d6a8689921bebcfc0e5dd925c1e2df1e0bc4adbe44ddb86ad1ab9fdc26afc63dcf58329549db3ebef064b812b003334ea2ad72482d6b57f235bd803a76f1e1385fb605b57b5a93629246c235be934aafd4cdf842ac0c904ab2c745af957d52f8937357612ae0e0b641c1aa9906e5c1a03915d704ea84d288b518358299f7933fca454879ab022f708f3b0a85a7abc6fb2c09d0cd8fe8e7efe473cbdc5179b99b0a27dc97d84b94c8f4155591e663de7639cdf5252f4fcd4e05492468dcc0ba736e006ef05d22413adf73f6af8e114169941a1c17caf91f3b339679aa69caf61a44b948d7d07e4db1cef5c0fadcafa430dbe417a12e85e60fbc06cb96a3732e708475506c0b22d46b70b87d3f6c4787b22ab2fe6b135681ec9a7ded21dda83f143471557700df8d88afc47e0300966c82864ba49dd077d5212ec78c62a6488c63779c107276cd3d6f0b20a783c51c5b27b55adbd2801ac6756f981eb1902fdc9eb6fc73683a950a5f9df282fb3b395ca2917080aa9c75b05896f4935e3d4cfe682c1f5c251a056fb77e83db149c0923d040f1043934a6a7594383e5bb3e0a8eb7942cd1ccf39bebc88b1143421def4ab3950d2796209cf79e39b7a390690fd008ad8479dcba7b4f7f1259bb6bb6b9f4d8ca3908da70c9ef7a2ba3f4270bedc5d17da97e11e3988416fdaa46eb0e49d2e2a8d3d4d55a9261b0c689a728fe1f1f5c4a5526a4aecb6fe746d45c10d0b0806e0f7cc3cd6f11c1371faaa861da03358f66d286e79980e6a31a527c7c388722be4fcff058ae239af0b48df4dbe2513291d0602be4ce0e78b4b6a78a35d00ff5fd60a6668503188a2e66c6667ea504734f38a8958022ad8fc34be2bac8239a33239f9750ff6980e08795f8352be708f9a532764ab019f6de4a102d1a86ac1552a16c1616a5500d84b6aff9070311a8df127f7657fb09b4d286e872d002c5f71bc58b39936f6a61ab7154756ce429d1cae3ec60fd576b22cefa7ed0a8f2c6f4a89d7547572de3baaa9a705312d794d0af79f7faf14439cecfd4528b66e651633dd27cd05953b6fe5c4578a5ad1343c46fadb4a1dae5b698a49d37d8506509f5f42c04db7ba4b8b58d3acbf368edd563e6c14ca7dc68307bfbef1ceee9d3183c1f02202ac8c9feba3437333c0ec5d73ef298c0245cbce2ccdbc5e63f3150bdb1f6acfdbf8b4fa570ab5ecf3224c1291ca1f74f8a4e2795779a17941dab1b2b61190ef87bde7e25dc5f0bfc261ac6dc10b4ad610fa86655fb75bfb43c788495b845b28413622d47344aa469d44212ab303909aac13f2e46f5583e694941bef375bd6c2143aab81b70952b97d8abf6eb8312502af1f9d3849c2b9ef95f62ff60c32145d6313b36478743974b7210b9813a4a2a157383963f55d26e72036b3f23130a84915bc57e3de9579f48b4474d5d1cc05520b9764549f5ecd936df574df9d67edc37bcbf46903d01ff7e630822d6532ab2fb1d53a7c0d16f85c999a59a023c156d24b5ed7d907a4c25f86779b81282ad734cc1a3fa1955bd4c629cfea6517c2389e086c4e8b71dc4ea0dbb031f47839b38a02c09c45ed83957664dfeb1e3e990292c8b648153d371181be5df1245c13f968b3ed4829e2cb56b8e2ba350eed642c0172da3c1e1fcfce24dd21457d06336827b98a6eb2534369a0425503c516b850a83fe92de255798117abcac62f30602ec3c1c80181a513e16e39817c302b3d7d6677f91aa10eaf7f317807f501f62562d96d0b1fe115e227093fc5be70340c32ea8afa89c2ac8be35f61f603f332396a003d3f6de791614fd82b22f3deb9359590829a5efc45afbef6636ca75e8cb1335bb8af72258a70760e672476529b5b0ee47f3d86718b5f374c0da5aab2b8f918e179bd8f03f7e8d80f1e52698c932ec2749de385c0bb2e193dfc9f76f7b416133f40e530952fb279c3463904ee17c119be303d7848f67b968844aa0bf598dc402e9eaa4f6894e98420f7b4baa3f94b5eb39f17d581f0f2cc4cb66accbb2bbadf2da453e6c0102950d588ef99642154c34ea1a5f8b38ddcaf78f75be155af8bd8928f55e18d7b18dfe1cb468075cc8143f142d479917039036e2e32762374bc6459c8873f8cd7e1ca858fdc9ec0a08327f64727521d2a86239303ee6898f9acdf9734fe42c9538e1cc3827716d32981c9a757204327137dfa219f40cd7a482ad105b590b2313bf89125600383e5529030f9d2f2b4ddd6b38070128aede392cf916485f7fc6d87e07155695b0628e0b853792edaa9d39731bd48a120bb96e762c2b4416dced484aee3986d9c7c8202c32bf49cbf4f42eb9275c5f470e1de2ce6e1df55598509ab255737f5e4b2ba1546d58647fcf5dfe2a4df5ceb12c136d2ebdc89e3f2974ccb816cfaf0804ca1bdcb6a23067d4fa0a538dffa30d9f9007d368fcea692ce1d2cc1ffb0bff141df2ce90f0256e3d3b2755dee088632f8476bd342810a0c3fad7ebf09365aa2ef8377389668db14a369b25d3604669978fcc0923b36cc2ca807442aaa93657639a67a96c583c2604ebc9dadd88f5f9d22a58c4c8cf47a0dc468566776356b746229f50ade1535fcf9fbf99cf7d22c935b31300bd673b9919dca8b94909d61b69886004956b252afe97c2ac4f4c6e4256fd6b2f160849502960aec0d96a441d8cce57669fa434d3fe5105eaf7a7abe67a1f729d77d6d05a665af6e4c4a5404076675bf4db9d5c7dd4fe227f286b0756eec7a1a0985b548f9158c0ab3ea5a8cc2aa6634b00cb668da2cb6b0beb809c6888b2f82f3b36ea9e1db24ab8f91587df40a5ae10fa0205c048e0df39601b9a9d8446f1266c20a060b137b4c0e97e2e814e9cb780774b7fbfeaf84b2ff0c96dd3b79c1844e6aaa973c001e36f6fa9d60cc00319a9483dc09bc456e37ab71ac73864494b1f892734499bf0f86c44e4153e758f1ebf1ee54eac022e010ac6c1d1d08f1f4201d1be83b3a27e82b776222db4c27f63986eead3067eeb2433d8c8bc16c41418cdc1d7b7e488cd1fc5e43ab0e79611cc81b196d76e12e8ea7b6384cd14b63504ea516cb08e8f2c663bd8f90b693449495722fc62aa0f90f58ac3fa97dba1bf8655d3e56d963499cff29672cd6dff01499698f3f477eeb75c469741c2557276e2afa4144b490c44da53375dba0a6394bbf5bd0fe24e380bd77749b6b22ae7b06b79dd8584ab419c49a3109f8d29172630d99f482fa488cd28e0694f3fc13efe781eb9d8bcb87efad016a14cee987086eaa6c42a38d0becffa8baab3326dd58c81a73f110202498e333391dfd4990aa6055c46e47a1cb484565416af2a64dfe87f81270155e7fdbcf3dd693422161afcf6f77eb01ff0ba7a048f8db3b8f3afb772af5adeabc06aceee430bd520b6cd20b27e3f5d12f9302b25ccaf88dae804936ba9c099bcfa5c1c979402da67bf7e672a3c23813d23d506eb2e668e622f50b22918f12acb9fbe627e6c271add31e57d3380563b4e80754970c054cc61611c2d59ec9ec44a4ac9e4ca168233b14040369f2f065ef2d452517b2cec49cd221930c3d32b68b0de51110f02032a0fbe9dfd23ad4adef9f48f3364b6cfc35d648ce609a8e478b4dac4121b9b9af275a8c5366cf97e0e04311946f72f0f28e50fbb2e1a0e2bc9e3895f74b16db0801c571def33409bcb9a324baa7deb8ce4276625ad80de2d1f5a82b96468b5874fcc60c958464c598f3c0232dff76c5b680f1fca7de8c47a381cc65615d403e591acf3611eb419f762368c6fba52d3f3111fe2bb8021bd2808abbbde887ccb98fc6d7d2673de4fbbc3f20900c48fe2e7489afd57b2bc756802add7c7b5be7040ed72b630af2a3d9bdfb553b3f5645c0edde8963bbc34c77d0861063ff0e663aa43672d794e67dbcf85212db5e0563201d0f1af8c3e32f0d1f97beb23dfcda64d5d2a77d77adc09f67e0c9777e75673266e829177f9b27a6a9b28dfa07a23d5bf0b2753c2eb448ae822d069ff7d8ccc799b9a036cf14023307385f293eff2981eb3303d98ef8bbb376384c451e86bce955c3562dd29afd8a3333d71dcad7dce87fd53dc43e76c95dccbbf7efb977add9625442c2a5a628449882b3cddff72a677ccb368d0703d54f5e11a1d175c97bda7d770ce0aca4fe2b45ba87c74e0ffeb0fa9936f066cffa769af5a99f3815120292abfca42d034e188cfea9c67702f91541cc91190b4d43e7e4afd003ddccc389e5a9ba14abf680de876c53f7216bee2e421de3f05fe48c8a01f379447d5886648b017de3cd0370044c15f655a871ddbca9fd22dbcc6ea4105a977a7dcb4d54f7154b51ebf5d3a2b84fc6c360ce4f22249ff933376de2d7d9a0e50465ba863603f140dde55f4cbca49ce6bf4f96270c921163e2e29f8aaeda4010c9b60dcf32445d21de4daf194cd1687827fbd4a6e949837d135c66c058afef942f9a3005f3319f273a6c72c07efdba405aa0d0cb59eb2c672ca4d60bbd190a7c6757c54afbbe04f866879531be7d35f141f95b677e001c05c56de6b567730f2db76c8c3b1c5d05672d8b375ca4f5b15110d106a9d9f07fc7607a0e910af17a1a17e80a74d51a3000a0358f9bc479a9cf7ca12f14d9f0b31c49b646fe69c8991ef83be6d63f21d6ea5826684123f2482fcd7fbf2dd0fc70942e3d91d23ae3d2f7d5d12a3d37e7135e1d388054ba631f75e89069bd9c13a3b2c1c190841fa136f0ead3ade96f6c09eda5bb9cb9ade411799ee969f91e3047bca475ba29cc0aa3a9b36f9c8cd23886ef5288a102bfeb15097ae2a7fc6d787999e31620a238db15ec9127f0deca557070195ec0fa7952fa2808b51ceb412779978fdb81e97f5e82d72b49116c070ea4656e45f38c11197a5038443b96eb52dbab23e9140c5ec3b777b94348ddc34bb5f6cd6af6da760b8a8397f4128e0104953bba06f0a2d9436f59767d1c2f74f718e79758cf49076f2f8a31815788cfb98821c00716b8ddbd4ecd0211ef6bfb93756a04d8b3a57ded863ef61470c2a74e6aa7230fffc0c450c207832420d4911676c9b28a3b7c3f7ab03f28f7adf91ca9a0be21b47e6d7f6140b111406b83606b5921974658a95f0e6dc8d2956e5fa3a7d448579c810c8a8f96faa6a60ebf473ac977b01ce5df020d84d05731a7b3f02b2ba95eeb1bcb835b8174cf116470b08615f869cee5125adbc2643ac065afa635fad23444ace6e5ab425fefcb956b2df75029bd911bd868ea8a071ae9b46696d8939d6a7d39419b85ec74608466a1a06c4fff70a9f73b43a73bd1240c344dd055b9597deed950f6c4ae476061825313b59d737c510557ad1df2d84b00eecf205c150478d5cbf560247902a03a3a571834aa58f6ee3fff488150f660f37df91e91f05f24ba14df3d6eac59a9f244dc9790a9acd386e7998fbbe3434abe183ceefb8b9fb3c44ed047bf8ee6c02b3107ae709f3c56003d314e873694461f7fdf267309a795f423532d54cc4bbd7ef7d713fafbcf1395db2ad6afa90ffcfb0ffdfe3024267db0ae18cfa8c54b350960a63f5340bb174f9196f3814af04490f0443139e95827bbc9d034e793f852a0eb1d24c32ff6e34ef3832957bbab65ee3fd65d58314c137f2579198dc1909fdb103e72ef8f7bc5597515aa4e8351c1f1e74a0697dbd50d45146cd62ff4ea5d0db27bc3c504ba3b699717f8d68f7a0283192db9dd05e4da21a53500d8b88a3caa160195651f7063266c214a44a1473aebdf9f4691a29ef47885c0160984163861b3e0b340f002d321e5731ae6f9b38df40eef94e0a8c432f1fb8e2f97619b70b9025d7a1f8fa67cb7b46ea42461d2c083f4c2b9ff8da719387e7cf9a61242b7d5b39f3e56d94bd2fecbcaff7be19feedd4bc6763b01cdfc3f6abbd01d329ec307b94dc692650e6accf5342c2cc93365b71d65386b78327423d431bef3e1f1302a305aa4d256fcd00b16aaf48aa23917643d2dea04aafb7b5547b673ac2ae5427d30bc3ec2ed93b632f0b0b075e64a89a1a92ad45d9054f2d37408dd3ceecb821ad4a4ff73b0927db5bd39a744c9c0254b9bd09459ce4a4e1454d7ecd58f3e720835f46baae184e8675df5d131774985f765cf6478e9dd300c8a4300de0deeaa77023b3e7022182a65c5408f42e3ddec32c59e4d8df663c960a3ffad22cfde47878a3ca74aad31836e12a68ffce8b5dff6f897c1a6ec1e103b887c0e0ee82e8e2e92aa14b84f92320634d4bc6ddc2e48f111f633119ca3bf789731d1cab23f890ba4c7eaf6a38fcc126b0e00874ff4054b1f17cfb838fe0d1d9b031a69f0e961cc2dde40e383652465c7a68e29fecefe1e74fe6aac30593c1d44dac658f529a1966bfd92856440537c96f146666bf4a3b145aa64d0e55fc95165f00e4f3b452157e474c5846a23b21f4c581967f4521a85efcdfb6327e8e7b265185be636f2a7e2ad2e17a4be153a675755afec6efca95e1af47f80afbec9969ee84536a83121d6e0b690c988632baa6a02a1ae90846b2656b6fbae4ca15970d201eed9aa5ebfb6cb7d63e3a2b9f9ce8386968025a7301eaa82c73be521b469f4c2704346f2c4fb420396ceb04900394e4a592d26bec90ee320c43c3fb98fc219c7712efa0f3e547ca9313c0fb8d746b08c189a224acd16e51cf5d84ca2c41945c5039b1a6799af0f42847bd0b135fde7269fbed3d701cc3908bb04e64cf691299608e72ec733b1ae656a65239d8dfaf8557a30eea67deb5e86e8d14a04899fd6c5a430e732b1282e2aa9ead83ca5dfcd4d9d5335daad5778cef3466bf005fd86118db030111c5443483be65e34c3f559b6c0c75caed2424779b13d5de67a7f60b2320b4f30ca7c8be6a0665ba2f6e997ccf10b690d58237ed6c1b5126c2d37a0dde9be1cecd83c1e670218445fec1195b423daf4b05c2d9def35fec872d79a5a08a391a87efc0ed27e04feeca2d878d4163ab50c245dc5da16a8f537bd563b748f8b780c477f75f14b8006946d5be1fd187d3c34174fd8ce394eb203e6174a443df3a7690770e81b54ff9568d79492e02b6e4ef201c510c7f54a8b9010f578ca646b7e389a4390fbfd9c52c388ded10e9084299b4e710a378ef333061be2d2aa5fb264b1e358a1adf8f32f5da00518d115f0045b8bbb07283c82ff356e87b38c66055fa821fb8eaf1ec2a2a1e51a830f8ae4e6b4561bb7c77d7db3f7442afd7823a8a2e9e9dc00b068ed1b78546e390af17a67735f984a7f326bbb03006095a041d87fd70e02407db58a41e6fbecbfced7ba1d9cca0e980cc52b32065a854d9985e355ed484aaf75a44557ae5cfb155a2029339edd7fd85cd7b0db63481277f6e21fab4dd66ed95f9dd37788d8296d7fd3efadeacdb7dbf5e4d5997732c11e4292584147c7fc2030a8de044cce533122a6893fb4313e04d829a83f5200d80077df0197b3633bbf14dc4e6f2945cafa49fda21d3a360b0c3453fc00c45f9e66f74e381a69e73b8d64cf7061cea621331f17c48775609bb41b8efebdb5cc1762b4df252264683268f00686c8e5df2d05ff3e1171c966b8e165f5dfe2757c8774cef3cbd8e1da4bf71af472c151eedb1be4bee739ffbd8f9f7335f5401e5ed10129ad7f8ed79cc44a9b79a0cbef2bed7922cd6db63a4b59d703e4666c563e0aaa1ebfca9874722aadae9b801fdbeec5eb8a9f1ad9743aeaeb02151af4a0fffe7c5549b44c3afd17eff93e81b1965ae2c86f731fede33d2bb762d4f1042629960d049574eb3025be230acdf28ed2d99de6ace0bb136dd16622aaeb93d94a519cec50ad7897326aa0e542a838d26ac6e5f998239be6ef62cf9b7736b6c2703869791089ec759e37474e36e181f8bf5aac04cf4681c22f153ff6dfcc63a6ea15b856785494f01eebd5a297a9a3b282745059cf74ddddf82df41a2fef816c89e1eee5979cd5e96896e5466cdd43b8dae2e8b2cc967078e2dbd974dddab4fb026695e0fbcbc5f6f42b66ddcc98b791f918dde26515fa7f15f752f02e0c5ae01ee23fad12f7e3febbf00cbacdd0f586fbfab72153209c471e90bfc5999a9d0e344a81670c2186b00b0b4c775487470c923a9437aef006d0f1cce55ce4a6127bbfdfc6754285ce987e79c3dda8cbf4aa69cb8696c507d07e0798f919122c92fd9da270d118d2617029b9d764ac5fe04d9bd1a547994060682952b9bd906f03087dd36d473e9c31903cca4dd43dff28fb820dd1fc1f696d9fe09bcf7d9bfa8cee81a85616dfd9a77c297c5862a19884bbe0abdba78b3d1d5c5d845ae9660993abb38d0fe3ed7633d0631831f42a89cb91bf34914b736092c2176b35536dc74cc10db825ffc0cce4935061a99c16f8ef83baba672ce36d7f532fca14fc12486ebc26c2b29153a8c7f12640ff8376a31f8201afcd723f73389dfcf016cd1ebeaafdf4fc3f59222b276d5cc385e4336c137950c135c4ac0666918b7cedd64e6046b2dc7d751837d5190cee2f729fa48c8c203832cf56277d0e6820985590ae6af6b557c53d6ba752734853f450535a26acc69afa22054c9e86e865007d14e80a0e5e244bd456bd6991de252e3e1625d56bdb49e5bab69bda395d8e3ce9a31375fe24423391227b531a91d10c55551697dc6977d30583ccac2c0b3747e53701073b160e5f71b327ca96a2965c1062a0caff594165bc9c1564d7dcb4fec9f24072191aba67a93b6f1e62da13e77f8ccc5d1d1db37e86f35af955522a6f84c0f9ed6c88a4173140bc484cba822b7aecadf0068369cf63a8f303d1cd58e18f9fefbc410da210ae5923975619f7bedd9b4b821223fa7878d9620786dcab8addab09eddd7c39667eb824f8551922a87e86315c46ec9f4a76c54693b5a982ca70e366ff3a844d994c2a0344c4e41571bd26e0feedc0116af52b0e6488954cbbf0cb625787a84dec996a1d3a8fef289b39de5a7a51790c80a5ebe852f70d1e3b78b0cea812c9102fb4538fbb36d4b28c1caf0c898ba223cac7c90152cf51cac5495352e9dfe48423169d0c90776a3bad8e58c6d057469798fbedc3ac8d552ec302920e5667ab402e874d32a07f0f9c4b19a61a478de5134ca60b5d9413125b4d55e30f95d522dae4374a926f85be0a91936e2ba94d4a69fabe1e454f8e5e34c3a1b2f9fc184dce4cc32d39b0a4ccd913bb19fb7ac4c352fbb0ea69797eb86df738900838bfb98c23e21af57f86abecded5eecf382b0dda9b2086f5034c067ac26ceef79591385e97b0feedd0fe25b7447bcec8d21ffb2f435619efd4112d328bff5a1012e78f26726d867d6e62a704e39f6ae21abad411bc5b0d38af81b4b7d8f638f8a5f8a4f387c758965a07511cb528a68cdedc748b521dba44c5cfae0c5e1f8ed2cb62ed1a0425f48de2127cae9fe0aecc46463f8341ea8775d187fc14a10dacc443a142edeb928754b0c04abaf595451798a9850d947f323bf3bbf56120b10d63d2c422d26ae8ba5ec570582cf441a9e5f67c4227e2b7b49004d696f6238a18706bdb28f96f4e35146ed27fa73b3be55d2ee327e24fdb52f2f055ccb4340ec041ebc9eba9d3c567cdb302269f18f319edf36a035ed6e1c63c10462168b513e142669a29cdc8b0635c6c245dcd11c52cc8a63028a1d4545410b50afbb1c34a6a704f06bf9b4ce23a1dd209909ec6f71ad82c253eb6f0fe2eeda6339b6c0f76ad21928448266bc1acb74b1f9891640c6153a09cd352adec8827e30f256fcf831ba856cd1e82bd5aa0f58bda94f4102529f8d5dcdb19eb96d607e18a83b9da202d61c67c05d1c685e70791c1ff1b4a9b0891d3d5a8aa0f405deadfb94daf576365015c89ef5fe7d499995e440274efbe02c31948fbfc2273aae575b9ef2e002a514d36a265e24dbcab51f844c1c8a8468313b85fa4c224e983fc85fd2f5adf83a5c6854fd3a8318ba1e94a85ccc86739e7af9c001c6dfb23248dc723898715e130f407dd264fd4064aff099cda030eeb3e51327de868816c4779c50b726903d4ef35a9fe7fc78bc0bf5f04ead1fb94dad7f2ca3adc1567396b0a8f69ae0683ee98f3404bea81c70dc6f34847335e86a3738966f35ae796ff8d348a0a7eb6e91ed5d6f6abc4d3d162ebf3223284f60c0d86589ce75640c1646abb5bec4b28396fecddda9cc7b596037138fd027c6bffd7d0a01f1efe20bdcc7e9663164d69952da12c52cf677b9fcfcaef30d85ce2b03bcf5f67d90b42defbb11174cc09359c9cca362fbcf9b91d797235f3829fac9224f5c7a6dd0293ca5094f466876a7f84b3ada47936745db5af32594e4f9065110aacc640c812e62388f0435dac54712ab83f462060d03445f951bbec3ea07a695e35a27fc5cbfeb04720b92c96b57859ab8f309dc0bdcdad6a8472c9b6b319896d001c026b7400252e4d897755bf5620ec58885f443eabdd9d3e3a0032fd33d83fc81be192546c1b873818cd7387e1ac7e17df7cfcee38e01e127c95f9de6b26493158e44b18ad226774a7374259927daa733d3a81e33af6655c9ce826a11b90ab3630162315d95d6fca704aa46a670288647bdbe81fad5f066e78a92737ab56ca7a4d8b12796d644fe4a4f574f3f0b2b869de8f5100976db62a0eebabd407867da9ab32c545c76cfc549de472de5541c2a3f96a8ce7cc09a665a970731d2e8e13fa8ac739bab0e1d844831abf2fcdcf89db3618b121da1c313bc55e95d6ea514b03ec7f97ab91eb528b660a80c12dde57d9dddc8639574f527d484be6d31cce2e9f45b2019d4250a6c1db17ceece5db960a5c776f3e8552f95cd176f2de186d82a7bc2d8ee5878eb511990795a8ec85482f0ddfdb469e550e6266b838c35aa39c02aab5df1e35a4ca388384b13c69a5e0d038b5e3f0f21fd63444c3661b1990d707eaa2d93b21656701d2c7b53da01a0902d7186d284052595166563914b1f580324315b58262b891e221d228e7c66d7ae53703d5a8ac680324ddd706fabd6e6be0db15d9ac130983995c5d4a3a04fa0c5a931a71d87abebdf3b681810bf05373992e5fb2fe5cb1d8ce9f5c1f563c793a6289f167c5dd20dbd22b2381e6c545679016c908aaa4a6b87dfd92f52716fcb1adb6595bf1391ea738afa1e194ffc2b532cb00f9f601b5f75224c70be964c727d57a42e3fb6076a4f03375e136a75d7d11b3f1db3610beb21ed61dea38b2fe942477c1538921ddf7b28fcda6486e6738017df0afe2adb49363aa4017461883e95435c62dfff96a3170910ae35819bc71d6b31073292f6afaeae00d4bb2921e7c7d14b8f6d94dc6cb77ce5edb1ad1ba500481d58425ae99a8550d3fd774a2920d96a2ceceda0b005b16c8bd90dcd42b3c13e2287ec1cfaae429a93717c0195b1a7fe62b40a4906abf2b3ef0259a01639aabd8443ff723948edbbd4b1548d293dc4ee5faa2f8b67fecf55421ea0436342fd1a80c87db276cacfb3f3868832c68f6989ea502ebf16cf97090b62fc7fecd3779994d40b93f049671ea0be90d6540f385a9146069b6c6b077d0ff912e0acf0f7c1d0aa5a5e98bbf285becdf94521a85875016c503c69d5fb2650547262e57464df5c47f33e1200628306e355908dd84d953db8f690b69f6fb69c88c39d87a233a07e5e968a436da07a5851e7ef30e1bbdeb1e2ef4008348e9d421a1433cd4a0714d6b0ea842c0adde75a3e2094d97a05a44cac292488bfe6e0742feceda9bfd3a6bde69fccec824b911cc6a064ee3a12fd7c3eb7bcba33d98aa547bf523a4853cefeefb2b95476b55c9e4cb10086b4fb4cea5dafab23078b50244aa0f7009800332ffb89799ee11625b03661cd6465f590c35ddd9147dff53c9c420b20f7bd29672e0c2ba704eb2e6e5aa35150b9265312b5ab664b1b16bfcc23e3f61bbc2092ea5200509008804ebe8510f8df70d3354df988a0b09d6492ec4d17adf4914fcbe866159cf23c84bbdf069ba6c0e20c47d8ece9736dafb9ca45ce8aedfb444865c7e47c1f4f69c3b5bcb03bea78055b29af6f0580771018ab5f0631f6ea19018dbd0b6ebfb50965297145e3294cd0f005170c0ec5069ba4e6e02c512315934f8e8988ad63fa359a16b8c0bd247f463201c2c4a467091b0810a083c00fd3dbb2f008e835e16d1eb682b8de8b06b7cb05e10b5e360d95590e9e4a721b99ca7920a7280793d88882da08884d2add16c000a4c2524653aa0ab52f67d291dc6d852253488147a4076d8a2b5fc8538f1ba364b3f9db6d8a1794d6e1e3cb1ddbbe890fb1876df494d22c42661c5fc590f169070e30a8c57a521cb08d8037cb8c435194c61e0482acbe6214407265762226f76aa5cdaa554076c7bda41f31aa85b0ae4da81a9c9b46b5900675c8128754ffde33699c498e851aa144b4c2d1e53f5acf14d6931f8918fbb0c2cf2345647227aac2d4297dd05a3033a00e814b0f9eedf2d5bc5775d93331e6b8a734146280f79436545d75555c826163cb46731e95d5d5f724857bfa0cf00c47a72d983ea770c32ec1eb51d7bcbfc6b7d3ff714e3e5c51a9d07c706f930cdcca3ffd169e67e7f37466127f324df7424742e1257da8b4f0d4d4fa470e9e310189c7d84409cf64316a39497e794aa21783285ec3691ceefbda5c7b781915ac6e9e7e2e8fb07a450b16bbedcf055edcdba3923aa7f47c350a3dfd69c25b6fba4cd248e0fa3331306740cd16450331e950770f7358f6b47e4320394bb15b4f33bf7331d654e51d9da408fa89c79f62abde5d67d7c5a3b606be951b45ef6a21afeaa4db3491975a61f9f8b74017ef9b22d436bac07b304db715ed4dd1dfb6444273c137f1ae9a7a5a81ec4dbacc280b7e3d9c6bf15586b46077945f373eb77f512b8aa68e9207af9dd0971d0468e3cbae66f06ec86714111b9a4a6874d81067e36c62bfe90fd365d9774976b84b9359e539c9d44fc7b2034ab39e84bafad4d508e76bd648e0913dbc29606e93f50bd05df8175ffeef6d76e6dc031b15ac229db558447ac96c999234f626ae92a452898488c0dd4b7697059d74dbe2a7055148fd8152de73724df325c27a013d6ec51ea785e89f79fb2d90156e5f7fee774a9d7eab082e392700196554268cef4abd3966b6e42ba00966e20f16153365476dbbfe5910b411d894b1ee529989db83447b95956e6dfea4509e57f6322a400f6186686fe0363a3e59cc12784760aff77ae16427b12bddaa8cb2f94bc382a334543c69b17bc9b0ea0acf51cde6fb162bf412d93c34470f6c32986ad29247e1e197a37635ad0963d24716bd6bad7576653e115b8a1813a592424b31132cda7edda7106b4f2f9338042e4024635f32b16ac3e18cf33c5a9a0c42a2ff4e54819cca4250d9b2b1fdb9a00c65f816e5ad20d0c4bb23b3d75a95c20f5252e55167e6c842ab640bc79596d8f9c38146cc07b011108a9f10eb985ca0389fa5d8675d4fbde504e4018a99a819f15bb6e7bc4d30e33899fe8e9037fc88e55a5867e16106a12b7a018fb4b206f3c9681be65d2628c2cb4a44cbd631ad0f9c25f84c1f291692028ac00be89770dfbe630f375640cbdd82dbb25ac1bc556ea61120584b7d5f49d04c44724ecd18f031fb1627864a1d8a73cbdfbdd0fc89bc73e34f5284e1d996dce338a823541d401f00c67325dd84c30e8a43b847390b5dec231f066143222ac0de15c05a0b845a2084c8c5e5e561993f9491f639a0a3ace2dea21b80db4974f0c67dca6d4d38102b73aeaf28f5796584d628a7fa9eff266bc35ed213b2d544132e8179f2d1f4094aef429b053bd621c8c8fee4d5185ba3af91feec82a5588056b02ab4883722a815de309b073c05d281e33fdcecde25d66934081ba238b70a6a0988a065594a9deffbc8131366276a971d33c6007e6e06ef2a2e3055f4a09a5abf36245064d50aad8ac18b8b668b1c629c3cbcf3cdb469c0c59f0f1b5668d7c836fa0a62050e8fce7a2b86e4cd6dba017b7dc9de456ddbadff5f9c4f2b3baa9f25268cea3a0961bec2594fac912349dfa602fa4aa46bf5c38c3110769bbde0550ff477d30e85d79f6fde6f3c4d480e49faf9e0661b92f5d22a30a114f2c94f18e4ae75007fdbdc917f98931d866812d0c98e0f1a429fe32d84c38a6404cdd5835b3bb8c659238927c7994971144a4742f9f766ad78bce31966b5d96aa929d595fc94e0c2fac36cd8173cde096f86205826f178d35d97aa42da7e8d00f111392f5d88b763d0db4f1d733d3996023c94128edae4178d9c38da21384f3af39db8b9e1f585387e633f58a366484bba60394cd1b53180adfd427f4edf526b923d82102002b3218ddd3ad49ea53567dbb4672ced8cc3c691dc6236318269f9a6947a2499cf19f00d1240ec0076e3395de9c0d86bd13e9cfeaae506ca8d8a8052ff8f89ff952bee2777c873fa7bdad9d0b1835f04138bf6a6cccb3ac61dc6e1873d2176a4e1f4e2588716756568a3767eb8737b49516fb45c01419a21c1b329df3172d62dae2a5a991c8dbd4bd7dc1d639f1cd00c31d4aa65abbe9db0f4daf43a7876fbba005ed38cf2b29e87c4f288a6b1043d91a73e17008a0e4e969e2820a6c99c37ad2224210b381a5cdc5d1d4703380c118480a65569fc7d6d000265531256543aa4b2180b604d358ccbf30b5a66ec4a3ed09afa4b2c5b2791f22063cbde1ff2760f5eb7477555c1de3e4f4a4f79135866af9f5a1c4384faadd067f49c9e569ebbde6f4e9c56ce82c5c1cb4e5731a8e934b1fb926a9ac728a6468f2f645414eb066e6234d9a4a0d5dc5cd6c01abc4aeadfde3afb01bf63f5f320ed61f0c6834a94236480e1beabc7d29f4fadbd4813d06f33059adbcdca2c8fee5ecc93d37a2d91f89e00497042a286b7a7c77fd86254b9674a2108da236c32fa0674055f8cc7467f10be6dd3d32361b855021fadb28ae21667c51137ef3c3d718832ec61d92a16ee226531364d11407bc4f1aec106ade92ee2732ed85ffdddb2e16ed5e0fac5ad0374f43680136162677ce66299c1fd13f430b5b2158532c14b98c2fa3845794dd7153a1385fd9cc422e94f4a5c788cc064035470df0a9ba4ca4ffe273367386a9a0d53b189ff020fa4b397affb30ebcae2adb321927b2eed604da3f8c6942375518baffd38665759b0bbc767340a301a1811d30ccb4009f6e0aa4c5bb794441f2cf90ad917047f7567f4b383f387f78667b01cbddf427d2e7692babc2f8d68610bb2622cf5fa0f49f3d75a65977fc48f08c9655ce6b11289aa3147e2cbb70e08cd7972e125688bf639c7237f4b850e365e899291c6f9927cfa673a76ae111e11e0050806688d0f238b99fe6f33f7e08d5237b04662fd4c62e1b5cc8141689cb332b31ffb7f27d349e172354490197b3b286e61250dcdf8da72d635cb6dc7c756ac357c98b4db34b8733f6269b881736e5565ae0c983d0b8434f20fcd84bc6d21bf9692f949b457e000179f93bc2d8b5f89217885c3c987caaf337d2dabef38ce3d24f6566f5a516d81d2932524faf30015a61850270ef41ac63eb7f65ecd7182cb2f6619bd2a5e8c704da1ab18111146505bfc0a90ae08eaa22c234b9194a9373dc809276b6fa959fb729078231a0a0565e6b26997dcb968e65f0d5e82a88787320f1aa713439bee0614ff78faa7781217d3982dac17f1cc76c77df8a6cb512fba86b59b5c7aa6661bd1992fc91af4f87d1216d72ec21f8197aa6eddf2b3de8adf48fc7b01d35ea120ca35b3cab4b1a71fd4976e664e8c234c5420ff7e152cfe6e8670b7bd0ded6d0c6fb63ce1ca38223c7ee66aa2789dc326b15a354446613d949561beee340983c96df2a63f1a97e21a543f6b62000c3ad1a1cc39034bafec193f7e4bcf6183089582598832f46ebcc272cf1a3f82ea816a3f587c8b08a0d7be2cf15c17acadbe4cdfef5eb08fbddff5e3945cec410f97e9c6d046de10e37947dd55c0ef1c6208760aad8fdfd4d553d525e011399f0b665967d47cf878d64320f63fb98d9a997a72d153096a0cbb59a7a14d531392dd4e185ecb5e55cdb058dd7502943aafcedab84b336cbd3f58ffed6136dcffa45208f9c6c6024393b8aac4bb7aee8887e7190ee4a0ea83fbc7fd68de93977e4da7a223293c23a2ce222bd977319bc074ebdbbd62da4e39a79ff5789253285482b3c7a8652780841d69bb638361ee7564d9361b8ca893e02fbbc98f1488e44e698429170bed9cee6df36d1fe686afe17939285d561151d6903385be4442b656d3e55f18674214d74c449773ba30890b23ea5b34e0205ca43107bfa0422f3768129f7886b165dab1a6c82ffa1f9b76f79711af2cd7aff608f4cdf978a1a20eb39a817ed149344b9792862d05cdfa3c099d726f2b92e8b6868743412259d4ba107113f46811acbee28bcb8dced3ba187f25484d16e486983dacb7386736f411218d069f01a0b2c720fb939c296617cb5e2222fb86a79ec6b2be225b632eb441b3d86971c656f74af339eb36906dbd92085183e16c8743bbce80a2702e3298af8b4cd5e695c0e0ea1ced172ff4ee9c30d69684f746d40992b1b60b51df8af79aba111f965e102769d49012758be5f4864844bea97d190cff0905d78393f989c57643fd6ccad4810e6bc334329838df86e1983d2a9053045faed9cf8638e399d435e6088a1b251938a03ca09c48b071367646621867160b1efc81017f7e926a4be2d290c32d9e60af047020fbc52a11203e471f55effe251193d6a2dc336e46e771b301f479a901588d81ca64a176bf03db50e3b3ef711b1814a5fa28d45758da5550e707e9f1433d632f1bce9e90055ea4b0a3fc90999cdce4d7dc517e47c8280146aa268006b0522b73be21ddd4b1d702ee882115d843bf73fe3432868e8ffe11be02f7d2b2771b36147ea644d0b5da75e3601502898408d97e3dfb75fc35e6f6d403d0434e924634f462aa16b811bccd24bf6dce1aed87767c7545c51f8048060ab335ad34f35aad21cffd8669937ad5431799efca307840cc7c6998f71ea452475927b574ada5cd824edf261de11542216105df44f64a06e8c479d7d5d75950ef3d1749d33cdf97d8dfd3ac27a64a0463bbfeaf5bb4e4bc0e82f447b50e70956f7f75b5fdd28ac5fbf3565943c927eced29ce890389be21c0b7e85ec5478eac64b689e60e2cfae54c0ae24df65ae5df594e54176be49e9e7b1c50bc738b19c4b3a5ac303a89fc253a13f8806b84369a6cd418a74440213dea6089c4d7b309da7c20e02e04f28fdd90164c6027b20d239cf847d8161a542b778063e6a75215344c83b127f8a5c45d1120bea6fbc3cf85903b3b07ccbaeba6d0b27b9554316fcb9925b0e45a6be3cb43cd1a5be365cfd75fc968ae7b47397c862e32a8d4db054f405f93f9787b363d9502c0ce397bccdfd4ad08f7a897c53273d00122d551173111cebae7b5cfb921a524ae27fec1f39e228d118274d36800aaf16e5945495310c6cd72ab442df19b36466530f67db9bfd8d5395914e12a63a33d51f7bd839fef0700a3734982a7ff3f9bf3ebd49c5374fb6181cabc3c1928691c5b5406bb30b4e5a4902b3933fe30ca4ed02e207d3012656fbc6d46cd3daeb3415c4a4a999ae6fcaaff2c8ce65275dd5f52a9ec6710e8ec1fd066eceddbedf276e5c7c83ddd9db170897cda4a3f65a82cbd9caa6c1e06cbec3fe53ddb71ff82017ed86f7efded20bfef2bf017d47fe25d16a97fb1dc4224a8dafab4bc199f6503ea12302a8c3b51e440c2b20e194827adae1f20766f1b6d49d8e664eebb53dfd79815ca5b97e801276addb99316ace0dbb61e17498215b87baf31853eea78ef0a3de37e272e6fdb4e8589e7be9ab6e6df2808ced61a66ec0a977577b531615767caa0b6464e65ac8395d74829a9364aca222ca12f812ba926065890632ea72b4cbac44ed0328d7f01d193b3f75c2ea4784ffaac2331cdfffdb0fb24134dcff6d32dbb7f5af5abd1c3bd0f1c22e8aaa06a3b3ceaed6010482cc10441f59b1374ad6dc8c47a609dfeec6b569d8ce138decc28baf7a52f85504fa13a3495600cd62f6b29ad0ed57cfb2e98c159ef0408d3742ccf441fffa00430fe0279cd5a49fdd9c552bbfde8c0dbe1dd5db487d6c8061332e17f735bfc3bb378ebd30cf0f4f9467446fdaf6a1e4e28dc3353406ce645d59f4b363c676799ae6ca110ead8558ea91a144980ae3baee5ba8ac6349d0cb3018c49d5c518a2368fb8eadc7282c009f1429d5f9babbc2b578cce1616c3eba1f7db14f6ca3ebd0de73c6b42af9f476cf535b6a84d54b2f7c16793e94b1f84abb72384808f364d404613d8d8dd5b87a1dad39594fba46c3dd482248f5df9711257325a60a2cb7e1d3475214d5462d4c9eb59fcc74719de1f627899977538a39ccb2bfadcfde36052b700ae10554729a69a6dde49ffd59397b0d8245bde67581e481e3233b35d228a1603cd00aaf1e3141eb965a41061d634b914369d826d692135069b04d30e2e778d7bcf34511cfc6bc6cce748ae27410caff53692f0d501e80ec5d3d4ce3e5304f2e273894ecfa7a13e9fe6e340b0200a35d6d22a51ff88a15b76860b6c852004e9e385d24f002e34f1f5529ed2ed8added18824975d87d758d1b10ad35f5d7dd667dc117f9b44e30c3cfe42c977281e300a0ce7f6e7d9a527cafa1b49ab33e5d83ceb79393a56c8bf018f73bdb458fd15268d8707e5efb1e96d95977d9e417dea3fccc2241f7ce2c4f76b8b2ada3bc76de73f7f4f0133176ec55ded3e7de8e065d7d6b037c736d8d1020ef6cdfd294fad21dc024f0da62e8280cc2f9d46a038956f4576cb2af04b34e080f94beb4c2999a68301dfb2efb05f178a3cb45edfa8962c7c643098cebbcd51c80066d7fd6342b12a6840047173d8ab12d3f302843504189cc70f5d51ae234c3d6f6f9f19ec634bf14154161710eace9b102deb57b91f6a0d77d7aaeeb49b7d3848c8fe2df8bbfe8cad06aecad20ec3bc28a394b1a740cb4ba9c74eb40423eddb8cdeb823a915502f77b076dffdb1f824c4ab014f4ab7ecb9179a4c591f7efa24c74af21b9748eecfabfc00b42bd1da297f4607ae9186bdab1eb9c2298e48c735662b1fb601e0606fe598d93dc173fd53d43716369863aab58697b0dbd74e3e3ba5c4ccf0d3850236537f839a96c1027cb871ce72808e2592dd132c22b4ec7af153b1384a589bec8038cc1087cb2f5e65f5618c1240eaaa56d53e161f62def392572274c5dd2bb8e45f47e3a5837ae4a7431c09213fd2e131efb77d979eb44b39bc27daee37f5021d51c33f1bc8bef6a1f3ea4f6955ed3fd4576b6d87517e61eb67c8baeb0e6eec9df825aea765c9ab9e00a29d917e6a9a33e7e92e1c18d1ad5f249a77f32e573077c3b614cdb8ebad94c828f0b757ee3eb2ec80978fbd95f10dcee8950f557dcb283fb0f52c78252f7f50689683cd2b4ef06956cf4aacf472d9af620a0e8a1d4619cc8fe55df190bc640c4ff69a5675d9e85df5afc25ffbf2ac7da79707f85bb92ee21429dd566c61f324e7ef26c9b1b92d8beafd975fa25d2bca704ea7f927c12acd896ff0aa2b5578bf30e898e6e68ab6b661a1a5178eee104621d31916b50bbc8d206908c0d8d9d2aa7b413c4dfc66c04c58b06f04876eecb4d983d33b5a9cf10a657fd8c3d7ba2a4277002424f0a5ca8a0cac331a1ce1aa7a53c25d0bf5f08bebf77159320d73841638dfe1a39ead2cde6f8dd20bb1f6c321dc1390eb0c86afca092e81857abf5bfd3544d58a4180b09d8fdbbabe66fe63db76207d06b35543702f29fe2eb5ca358e6f4e295de76a89e93e88f9259ede7dcdd1a9f8e942e2c0c9642f2c09d8249384a8139c5837d5aac23d9b0ebf3f76acbdd4d6f24177aa8d1a9feace8f7044e8c2a8b15635a4d4c10fdf5139f6da28e9b4c8b1977a2ea14c5357fe98bcc690bb5e2fcf0acbd6e3866b2b238aa6144b9f575eb42ef2f20af3256080ed4251d5d172a6df176e408d6c41679325a9761e63e001276e243fd2f737827b5b814f09864817a46978f0b91d5b137da1e0d1f44721a66e14c1f3170eaeb874f976cb3993d5f69da27371ec87b29c475c664d489e802e087fa5e5e628406c7476d667f2c927341354d2f7de2929ccb7e0e095d4671f8ab3f951aae0267efff60fc0394d6aea071b1ec7e1538560d9800b43fa9cc60782384034e629c527859f7cdb36f7e70a33c025d17d21b8c94f75014c06007e01cb8df5029bc738c7b62bfd6be066ec18d4a279460100ea68eb860a71f5597ffacf3dd239cc7bfcd15af4eed6b2c06e8406e9dff6c4e1bb6b40a84d63d67268b077458c0678dbdc3c474c66a914e9bd8195f5b9cdf9383132c485ce15ec34a1bac7744b0722035aad0cc1e2bb4d39735e9e857b1f86c2b1478f02b37f029ed825e6b7cdfa490fbd9c4495456d3f4130a1b05d302d57a1ef906455f7e5d699e14ac2a89b1170f6d0d331ee9cce69014d08d80ead5c44c317f4812ffb30ab638f1462337b2902b2fbb6d2a632cd0b08358317664fd4983aaf534abcc6f1e1e5ae54c7145f0106cffc8b7bbf887e7e4f5fd43d66198e5662ba8aebd06b1d452ca4a822a708776474a06547e6cd3f985c52f6a313dbd1deb0f39949825c1d0d29c0572e0563740f27b2482be718ba060373aa49785ec732bed3f8afbb4a7ae87c3f053678dda69806698f250b9a1811ae4a9fad01aed3734a51d5307cf3dd4d749bcc9e189fd94ef48705f28c62a70d0086d8d679791f8568035b36574ad4e62d796c7d7fb171278251caec37e7c7ad6f8c2ed21d0ca198fa126e02b000c44adc99e5667d21ec2376aac46b0092be19d5b32049b70530531a77e3271f8b22ab7370f5db9f4d17943273a27eb4be306ddd4189757cb9b3dac3c93bde1d692616f5b479445c4465cd3263c5ef5d311665ab3e6b234264a2a4c0c7820e54208225ca1671f2550c8301698b1f7c8fd4bb0e8a7e9ef6cf1819bd233e4935bec429c49fef26751440f7faa8ab48925ace206d650628e0d0f456af3041afe6e587e0288b745c4084b59e2998b6232fd4e51e47342072e751befc04b76c340810c2d17bf270fa8efe085afc64c9d29aef2fbcf8ffb7fb534925ca9d62b470dc6b422fa82d242da32e82e49da69c6a137fe146818872de5fabd62090a3d14cca37da7d1fd6f51b8e10bafd7d36835881795211e19d6d229ac9276fd3f7de087370178d1074dfb95497d63b635456f73b7cfce63fc3ed353fc6e01b5739a0cae35721ce25f4ee1be7421ec81b3d6d61626e45229e0f60ec84fab9881960640abd0ee5e3ba1ce2859c74e9e715dbdedd22b1906fc7f2230253308cf5a77ab192e411a9f5d92744984c2aae5186de78b5720f73ed61a04bad409de3c875141c11a4c48d92aa36bab181be6b0fcfc5eb3eb2c7b302ab1f03792b41b9c4c4efee825e6da4c1c17d469e024180f3ecf0c008f908c8d5b3eea62168f0b4069d9b06d8f32a726d136e4b72de74c3c8c944c174f1a024e06fbed70a4dd977fe58095683275cc9a049d4f728eb6291e0b4b376a1a0fc41e41fde1f4ea3fe96b5cb76f893a4849c46a977c983218fbfc1bdae560a755dba4848f88fdd0b9a2a5eb1dd244af26e716697b06ae2de5675a459acf33560cde4148f047860fc7032154ec0af01a3987e195404077c3be6e9f0e89c82b5398ee63b59ad0d13999e34ef8c12b755974302bfd62328d6630928dec77ff0362737dc10704a71a2838f74888915df825927a547b1b0d213ff6bd35b69c3a6f9dbcc656644de77d53ceafec3df55e36388d78de57008b3c5455853f367b61448bf3e991618fb8d34c34482444e3db31ec7e6851b43db88fb05f9c729893960d2736e6ece9f64ccd5d370bc6622777e094dbc7edcaa8e6e1f7616227074d856ba40aa764132be9b91b77b837187e40effbe57d58a5e7c197b4944260e1b6c71f0fa208ed9650f7c1ce802b9a52c65f1762b05845bc8873370ace1fb1bf487d3e1a548d4193602a9b4a7b585a7986fd679670c33810cd0580e1ea846710905046e9a26eb8f369e3c203dc1f62ad62d39d0877a13614902d11269950233d94ecc8abbf8aa970afd043ce0c4e1e4348193c0f8550283ba99df19c3ff371fa338a3f6c73f5568c098733786cadfa4cc4db226ae7b887b3a922d4ba1af049f9fc771cf911adaa4df1bc3f71b89eedca9fa542fa4a1e03702f412266382e1dc6015646ce1b5e4e9e34405be3c66cf5880b69b0feb748d9dbfeed833a54cae1ab0dffd60ea9ca405d257194d5cda121cb80902c725d2abcd01f04fea20cd7db9ccf36451a022d03a5d9160a6484b7113ce5f0d93ee9c32a4eebe431c98af9694457a6bd6cb5f905312330a62f922f3f312baf86ea479fdc0f6780a51bceddc4d5ef6dfec0b45b60b539d86cf63c451ec48157aff7e3d7167322a169909e16323c5a4e0306f6e318ba2431f75f79d02a91d28635bdf7ccfdca4975e6f45cf02a0b4964d823f2f295876965df25e9dbbbaea43f9ace80a4174121b60a908de2d644fd9277d00acda0ad8a1426eed9c8ae59399d4dc351f2cf1eb3dae4be11795f6e23d0387ede66aa85208e0bff3802538a16afdfd0b63f643dad1734fee58e0e0221f5bd0b0481f60becf980b3b247cf3a877d56f0a4b34d37ec19a76d0206e9da973024b5a4c8177f4ee13987841b3eca701a7a0c7eb756bd7f99d85738204860b5ee44495a867ea3b077408621ae10f9c0b17fe99e3f5c9aa582faf886ef372f16d8d3d15c77221a347cd11bd5472df48bc70ff0a8179b10026629c5112730e5c4737aaf0fadb6dcb6f08cae688d73ff103ce4dc0a73f17c0bdb665e0cd1f44d642b3dafb37cc7c1689cdc34bdc7653349f4f86595e0641a104edbda8e855ce86116b3627d5822ac65587a6fb6ae01c7a952bb54911449d3fdb0c0468fa689ebe64e33825fd0c61ca02e33825d669ef77abbf4f5503af22298d66cf31a02032652ece102381c70d791e0ecc8084eec8e922af72aa546e98ad67170f7ff1bed811615242ef920b1783108e347a30f45dd57cfc5ead74d624821107b8dcf4c37fc30844da3a7636e0b76cfaf0e0483661bd52323555e8952292d15617f30090d5a6ea40719f63a56b56d44e43efb0d3811ebebe27f1feabcca731c43f20422835a62d3965ceac1364a665d1f5a92e626fc22a987e2c7024b1a95c098921b9cdc7b2a9449d8656f08ae3ff1c6e19075f68a4bbd8ac808ac5c68074b41c71c1c7c1e5b63c31e1162d40a75da25314016e73cc19950b906133d73d7edf131020d5c4648bf56085af395b4cbf6771a9922e5d7c25005ef014136a472555bf851e46c7f949006adb05a5779e92a7067e6a817c55af37edfce3646bed046eda4480bc3cc9fb8c5e7c5d79092993efd22959e6cea9b458b76683887a02ae40cb1b96a5f113712b9b98ece44695cbb7405092887f231f92aac93540f0e47174ef73038a3005f36ed65fbdcafd53b766a6eeb1d147a134de426a8da6c498315f85fd46ca95986d1ae83d972115063959a20894d4083fcc47942cf21e509e04d681b936619d2926264391bdc1cec126706483984b75f3afcdd95662bc8bc2f6b98057211e93431a7afbd643b5440647929bfef4faea610cb366a7b30e4cb842ad6cd7249165c3f5453ee12630c4085afd7978fe6e8b9c6a0c68f3118eb983e5127106541cd11d8c03cfb00b7a08bc4a5beda49cde349e6d07cd185b44e872e560ff5b65056353c5ad94fd4a4339d822fc8b7c68c5180a45388ec96a6c7fb568c97d2aa495f88c917e221071cff2b5cf4b113285dff0ea2bfdeeb8953a213f2d9e7ef640a81dd33f70486295e464d0009e82e073a3b121761dece82c85b58c210f98ea3fe192f25f964483913ef0cbf856cecba3ac1639b90b05b3bc67d1d3d984ac506793ab2c989c1bd957eb0378b5556b5e19575ab390f5a0216201ee47f0232fe357d9c99aa25b33ed9ebc2c4f634eb4617312c6bde136bbf10cf3e22467d5b555a1d8c7f54dee43c35fe619401ebd67bb7eec714fc03656319364c79d574cd0268e3049eb20104d4c35ddce90fcab19d2238b49fb14a32aab750889fbcd8031a0fea3f47105020e295b055cf8ad788633998daef381a49adf1e5f8dc498fbd629a69c5ab87bf42a06a36c8942848100fe847bbcfc31f0f691d22e289996d2bde115ea8acfe9ceaaff34e1111c2f702be699f4ef744c415389c641807e28eea864fec79423d7e075a8a132253c5edfb924e073dbe9a302e0a68d070fa35846dfcc49c7889cc083eaf8838d864f9b5f4398e6a4d70d3a61dd6ee588d44d8d024b8ff3a68b0cbdd946c2d3d239cdc56f5977fb461084fc0a7a096e89a400f835369ae2279d4db45af33341863a68d9cfec62f1f2990412a0506bab338ed7921659f5c48e96e363d9b8301c4ccf7d6d6b122311a092d4d528d8dada5e2b47873459e0d5653292293835b4ebb10eb3c5b98a47e8526c6a0de49264abfff68d68cb5128dc69f54ebb2ea2f8cd42e43d73cef029ecf17c3fdf64327ddf88a7b4073a05467f3bf4420ac53a6bc5ffe35d9a448fc3d21cafc07e68bd708e05e13d52a71469016bf9d0e259bcd2f8c55dfba71c0fcd774d7aa88f888b7c0d5374a785a1a0243f63e32bb77fa3378b63fbc8dbcbcf72388084dbe64653bdb37aee48f493cb3ecd5093d62173fc8177df4694b0d0c496b8988aed6fda5a2c9ffb5dce85220b874af09c8b670b777ebfb46ba4125e44bcb22661cc95374b861924cd7f07c9646f110e9fd6e170f5453eb52b72a8cbdd33428dfc276506aa531173920ca755c19734f06d8ebe3801d0e777f04d172f91752542cf9816de7b571547729e16bfb5b11af19b692ee3612e16cb46beeb6669eb4682e781b8dc5bca4dcd648911f38788bd85c6cecd3953a7ef73245e5721411c690bc65a0888ca5793aa7b570810cf6ea6a946bfc865a8b65ca81727b320169e1b62aa3ac24f03e67687554fe95dc668890089865ec474659a02ef132bd88eb92dbe627d6920aca8f8f536fe8b7e815e4cf07988dc3ad6668f498cc3f597fe91c8460e0353c818ad97df6669d35161882651fe57aab7067095529c8165c406c8c4a8a664b8fc8f81abc245f8139f6f23dd32c7915de53ad190ef31f48ad033b98e1104af663e50850f49106d62777399b3ba29c893a3511bdf24bcfa62150f5d13ed239baa656d60fb1cd002775b51837e8dd413dd4f5468c48acb0bf28d5c3032f5709f88aac17058eecfb5459c57867785197c69c6de4dba409a65da742d89a7f96f7d5273fc258f067eab6617d4ce39a3684967753818e65f54d42fc40cb838b479a41c309b590ad8772e41d61bec2ce71be9e620e57897a3acc7e37ad423122a4cc676855ce0fc39606c03d284613b474c4ece6927329e03539dff9c5d721a02d630d441ff98bf5054bf3f81e9ce27b81263d54fbf59331b5d896664e97ad65fb0de38d1e57b8c6eff57ac1fae1f073d0341da894075a0bf24e5e49e911190bcfc8490abfa4744e6362d33ea416abdd053ecfafeeadcf6c49c2523bcf6acf607973d8705d4e224dda2193105eae9a6c7f82edd4a9aa63f812ccde34528b7ce74e75ad830b5fba5541574f91ff46a41438b13bc31bd829110592b65aabb257cad271e3b93b51028d1bc65b0a8b5d00b1f0600dc8debdddb524d4e99ca72b674afb00477bf232e80047564cf21afff760cb178579f9b170c7f4a84c2aa7ed81a159a8eb4fcb498b490d50673ba761ae597166d5f6b051b68f5c742c7a2f4366f34faec8ed26f339b29147ee92bff60b1767810d6498ad57493c218975a74a2fdfe3b60106189b4ca39d2dc85c21d3788a5dde309d98c2ad2ed8941fca7c795b97b52f7ed9f46948d6e96e975cf946c193cf769d59f1fc9020070fbeb9c29859b04050059bc4eb0fdab74320967a67eade87fe8df635bed7fab801ea01b48ec474142bc7fbb5ebf3e38b33cc217d71ebbd63a1f2e00e961f126b3c433a83b433c48accbe4832ad51c14954703325037afbcba43ad71a45a1197cc5214e4e01bfe22fabed5a9cc9b3bbafc36e120ccb433b5113a83b6d34080cc71639df0cb2b82cba481a68fb9b90c8620477eb99431ec0bbf7cf5a4f07810d9fbd3ad021106efaad52ab26f577ab8a18d8267f6aefe636eb228ab030911d5552a96fffb68f13036582ab18026e617f3a626d95941756a4616d7480d7cc3975c5af6f41b2abb54d44864a0a0911778128e5c0679d8ca130a0985531f16b00d72141e8868ba0bfa16647b923846887008b4cb08e62398b97aa62e6321a83b3b23fb2290ec4d8521df56e12eb10c962e2f508e620fee83501e6bbe304992caac1403d05112d35cdda7e666efbd909230e9a14671a262a42a03a20c372ecc0fae79c8adebe6b00a21840d19e0a85f9797137a2caa556fbabd6f6066e28c519cea3e36b6dd4d6d25334040ee1e84fb9481aa209f086ec096e686491b9e16f5dee017036a83a6bc80616c1fb43133d7ab1f0e1f96ef6d64bc3204ef65b7831c17e2c3f98da154733ae41c0b9915e15311555cdba1468b255640337e1d9d9cadc791d9cbb9d6e74b9338b5a00cb4c7e99ac9a749f2730ad4208adf54947cc566551db75ffcdec879f8dc18cc30e5e9778096f75edece0a845fc71efe2a0a2dc1518dc1f2b02ff13d45d84a5aecaa92019844eeab84ea5e4eaae17fb39f56b4e333de06d2b68b4461666ed430560a0b7270a0d5662a46529888d31e582ee7ec50c9f7406c2ecb4cd9e570577786c4395c31dfc6fca2609793585c738379770006eaf0a28773f431ed4a573f902be6e4ca543405d038bc09ca468b0e2ee4888bdfeabbf3dfa94923662adce8f6326944b3533f0af8040d6aa1cbaf70e8c242c1ffbf51d303cafdcda4b25b5253daf655a836576880cd156f43232c87e6f5ea0b91192b943d55065b8ecc1c8a6ba0602acd24b36e58c128f509fc1737232fb5df552c0a3dbc2acad08c9b9ef6f2758b09ae21becc381565f6baeea53a24be31c9b9600a49fb0767b24c9c58accb348918aeda537a4290fbd5bc7ff2ce0af252bbce31e74d5bee9702db8324204832b7b10b5af671d3b6bbd1c0ab9ecc19099ee39249e5a69120f61d125c796a5bb02af64d338bb373298cc6392d5f55c510d7118fc6f3730947c3dd898ac4b1fe3cd18b1944330325df93f8a2d83c952588c2561df96d4810a8e21e3099702719fc8f7292da4f4f70418b31c2c65b5706f94d34919983ac96517a2187e476fae716554a1e6ba83bd86ee6e79642217b6774b4fde4691935b2e46833b91e92a544c869581a283aba6565d2d05d997cc1e8f84c140ae28ec6482e54ba62fa1df4fb65605f05575826235eda64e210ef6138cd6ede0024e26ba13680476f751bf4f7d79281c128667885ed7c0e7e9ba7204ebe026b7cc265234ab8417ea8d574e522236d02486ca95f4e55e061079997ef2b3772d394d2f46d5ccd438c795d49af0d507391b53191fdfb5c245775f4fedeece00affc690d10eb9c86d568e2366fe328b6bd1e83dbc49fe5c0752bbb3522d3924dfcebb3b8c0291bb8dd249c98b636bb4da424d0566b143c5d7588e64fc9f2815923533ff496933f8e4ad9c6e18091dc689122629f2009672454fed849f7f1ed648ffc6ea88cd80dccdb9585905eb34fe37ad2dc739f029745c3048ced77aa5b93fe8c9f9a791201b9f09a735b9f6eae119a88f8ffff24b99095594649a5d3e1a25fc4cabb631a95afc389269b72fc9571bb069ae1428adeaf3cd4885227a3129e2e5a0b949eae71306ef15e3c1e2cd4a35154bb4a241dbb8008a9a475880f08df03fb6dafce7795e3309ee37a3280101c45239894280418ebfb4e6bbadcd4fc3bc26237e2eda47a80a90c1699b7c11c263967bf60cd860014b9e0e2ce023b8b93e528e7774cdb1ebb21f0a769c9eee72874b39d46daf9bacae8bf7a0eb85e877c5a19538f1dc37d2390f4618e371d32921f09f53326089dbd0c7e5c41af0dd45fb9cf465e6b8d3e9fba381163fdc6878b5ac307042f7256dacb18cae224474900fdf8ad1cbdb2e03eaaa68cf7df12ef02559910d4059f9706599c832c06446cbf484cecd9c396033becd059aa2bf8b98a6d6b9fb4acdd0981b1ed2018236e0cd209229fa6230caa5c86113a6bfe1f5b3da541b354bea1d13b0e6f2e3f2f6fd6876b74af81c0fedcec093121d08fc6230852300b579e89e0a2a4e794dbe434f56311e0fd02571147383404383e44f61ee241f7c04ad24be5523fc2bca04ad4571241f2df9e589dfa23c80bb669548d54884cc4f2338e1d4371d975f660ea357a5beb7214bec2db1f3941a4f98ed493ac7347bbcdde07ad94421aa84237a180e9c45f90a77cf1f5fa9e60628014eb7cd074e6812559ed0fde72fb426a7fed8fb019cd4ec3425be327fef5945748a0ba4e4567ca936cb4b56935379a8523377dbf0d758a0c4b34b38f9d502dbdc4efee805b3993ebcf062f25c15e3d49e8e381538b16b095b3cdc5ac12ed4d91588031b93a8111a4da82078a03ea569197ae7157c00a0462660a99068557206cf00796afd25b57ac9c031b2904486fd2cabfbdf6310b40981e645b1d4abeb18c4a5ffe6185c95a48e708fa2bf7a4a7e1d6f292bbc2e5c8c340c70cf902e23d2819f8df6bb480f445a61397031e3a781041ab7c4daa55ea2723358a91a33091a44c760346e8d49404c9e719bc3d04f22e7fa7cde4c0f0f0e5bfa01c40043ba5134a1db52b7266403c9fad0fbdd91e421b6b4ed9a3abf5d456aaa99b1441c3f0843bd211b6e62fbe57ecebc7c69d9d34c4478a6fe588cc8fbbca6aef8d997e183785e2fa735b3c61e944818d8c9fc52a28d35a992334bdf25ee3a35d01d32e6bbde7a9606a62d10ced56574103e6cf8b044e19d541c197ec9eedc2f85c7bc77d2d78a099a250d6bfddbd232fbfc24c011e2af655ea7616308be3e49e4ad7e22710d55d2320a1b50417f8326be1ea4177bfaa7e836d144f7379fc243dce85c541367c27d283da57b906c101f0a7f8e75f4b14577fb1214eb46e4ed4ded92f5683ca8b410817c1fb4e98901813f4933c4e7991297c6195d687762fe46b835fd5b477a0238a972e3d1cfe882847896713d6cd9834e1011c98d34cb60d793d77588093e4fd714aad1d485c145b01d3e28052d558c413d943b402eded983f45fca92cda877de1fd782277809f634bb8eb52a83dd3d35995096688f1ea6d8653c98b997f55c6ea2539c1f63779de49087be29bc6071cc1aba954b41a050d29f804f028a1f98ad9ae81b7d6d33bd990ba822991458fd77291da7a34abc9a3651d090558e31c375fd209aae2de668706026a3f581d8947f9863ff7abbe8ca1edbaa66c3816606267ded3cd47a727cbf9e9960d80307eaa1bb7ea420ca31728273fad10ed71efa6466057d282caa7fe2de12e14e24f71e13160ae93c7a3d8c78ab32c5fd02c6991f89d7e7a9e665bcf7a4e38c2c8bc6d17a84e859c76ff13d073a2676e528a9970f8f8a73b2cd74bc978033c7e7f0d622fe2c1cfab9af1b027ae21626426eeed40923d73bb0562126f5e22339a537a700065f06275b4afb60ce673bbe2769ad129c7fbcb4f0d304ac15175348707b40a5fc6ab11b5cc5ee23aee919193e4746a6279f61c7dad42c18519b5ad8e68683eab01849541577e7b2cc27de4d522977267288b8abbbd2b5702bfcd69a148bf67693bbbf0719db10776580e82ee22f2f9a92fb183db12d531aba4e5f50370fd2a68bd128acf653e86ee602238fe1b2c98f0709cf9cba289fb928ce9bb1599edc72b2ffb4236ab0b5479d44f51fb2394347a1f95efae4f88e251c7b2a31d04a137e8ca937a8c0642f3a4db764a34dd1c048d3a3f8ac456ce763e3f5c14b639b8760026c1857bf754fede004da67a8445ee21ece4bb0fc0ae8d8d297e1218d479db1990832db19d72a8a58374753548682be7be40639664685ce2801bc9c9a1bf13f631208c826fcb9cb4965067c602f9cedb1dbeeec8bfec2d69534e922121d5104c5f7561d31aa9dd0e86dfa7d9dbbb5003a3faf406add8a68a81c5a75d1f730a03d2cc28be778f763c4b77e683603f025fb7d554198ce2453577a2f4553d888af784f262e4e170c3adc996e4e1fd7ae6f3cb0b6b936eb1d74b3cc53b33912600c7d34b4d50343b7561644e521882042e68ece1f4d3e42bed4989c09572222eb47abf049e81ffe0789d5cbe728b09477f5662591e632651f52fb1ca18383ec1c23547b2251452674f27a01bf5edc54cba765acd55c03d8f5893f52cd139600da248ff95257d1a5c1b384688b071eecbbf070c2b940acb2c60d5e7a3e7ac03253a5ef19d7f3fadf8d5d608533f3dfd8ce57f13f2681d162e2be4302269a873bfe648316bfaf306aa813a5805ef773cf5de97b48d99049dc78525fbc3f72c0082e7e03cd900d68002f1c87add89e153d4dc7c7e42bc405927b1b219323df36bc8b346fccd71bcd154bcad7fe4f2623c5a5f360d073a730cbc9319663771fb89aab7d6cc2921957d5cc850142f0644ec830ae1e503881c6061c499acb326c5bec829ff92979d8fc3515e074559ff2cd3e0a8190b0d1e71a31db035d18bdab4bb55a9da99c074a3dcb66f417de12455bb57a2c83f2e3092016a9ff0e7e9d098171f667f40f23c08da7b52eb00c5d4e2ff15f42e93d282ef02df10cfb0c624efde9555e282e85a145ffbe602b80d5872c958b567f2e705f58e0a3e5a17b6208f80fceab287ef42f79ca61a3b122b339388016c6500ef5bfaf379c5d49b45a9a10ad1916f47f692fc79365b84e76396f018d2dbb8d583803d077f1aa95a8c95f8ad6ce9c133fad4fc50d1b7744390014dfbded0625511f86da15a1da40ff39fa662c60cbf49b6ca8a482fb65b5dc0e378c72470dab58952b559e73400002b36d0f5b499eba92bb4cd7807b4c2ff4fee1ad038191b9b777580f53d26775a7460ef17b40a527b4b280d91f0cd38f4924f174ba9503c628a6430ec4b7ac0ef553468009dfcd7a30807f7cbb6f6ea8d9a9a3581d54cfcb45b8fd1e96ebc11e040796d4e8f77e1b05a74326129f675f95dc7e3d59f47004fbc27fb15c84fbe2bcc66945b5ca1761ec86c3c72a61aced7c93346c7745a4032a363f5d56fcbe3596392a024819bd94a2b9629d6760fe9cafb8be6e6122b705c6c6018bbac079584fe546b62e45bf44efdc62a98c99cc43aefd3d7afd24b861922b3c892fdfb2832b581c09b3c65619351988287d036145338d08a2aebe9a72c2c719ecff65f105ea3886966c040b42e030373174c26db0dab1599bdc22f6f83acdbf82a7b81c27f126cd02423cde2af62378789a1968afefbef94dbea830aaaa46cce4a296fc9ddf68ca5e497197d4606f02953da4b905a84965044eb778ee9ea543a2131a6a6b1f4d64b7ec738da27b9ecbc44fd02b1b49e284ced4f5225eb1eb77c85b38a67d8f1eb77185e5e6017c13557f3655a2dbfa998cf0f74836a33bf4124db2b2ccf38b244ba228915026dd737da86c0be3615a860035d5dab6b39dbfeae2c2c8ea8ce9ca844368a12a759f19476fbdbb02b573c977c0338900d47ea2a54d5393537401d9735bd207db55a6f360cb7aebfcdcc075dc49b11cfa256cb28d887b3aaeef770f1e3bc17e01c2112fa662ed1f9b7f84fa4e244118d0da19215285c6272fcae58324c39d43c20cd84f789dd86705ba8ba44c574c3162293683efc1cfe883d93a6ff6579d130822b199ce574513573012dbc0071549997db7dc6ca836bd9238970ffb91afba19727ff0634767d9a32b57802ceeab2887d8f692473d7a43f21c9dd03cd0f22226ce420b22b62f79c93188fe9ee46e1c1ff0f5821d93f062ea2a0da0588115d0530ccb306cc66f4aa63786a68b9e2b45d3297ed932f4d3eec3592e5256274403fff40ec31f766a99fdfd396f92bc080bfc659d2b91bef0a9de6b1f804281f4ba9d941c9445e0a3a282dfd6ba04cb94f827f581b456528a0616a300730433418023bbdee84a0b5a57540c8b54ce2be0f668727425382a4774b45e411b5bf1316f5c76f526e6150b5f96c03fe29378ddd8d1b303a5073689d4efb7ab221027b26684b38909368afd845e88753cc5ac7d3ece40dedad91537e1fc51bdccc5bc4042c11ec04ccbc4f3625388c4dae6e9f51214ef24807d45d75e1c0d0fb5c4c25102a9f84487527b02b7f2c1106f8a804066f284b5a01e4b2b516fa1b19c1300036b15e0ac130be1e1a6c2fab469e10f315eca45cac1b8c83194d4a9a2ba06af754e28ec0298a2004727aaf1a34c5cc60203de6d1dd9c900a654ebcd14099da02003058313a526fcfc1afb26e3a08e146611df1c0ac40c6a2bb8200c81d5b8d6f562ffe894009fc996bedbd176f1c14f9df333cff89bda05404f97055a17abe81f0b952a05aa2aefe0c3de7e8eb728c34ca1b75b7389d390199c17a7acbe1ea59f643ee302eea3cb8e4c3ffa43d7ab15ade5d09c22303e03f498e8f0f41f0bd70450824bc6ed247858ef61a026f2110a45a65a9d7fb76be06ee5082f9c68781ca546a8c150f95f11137d4d4a2bb73815733dbd1fa2c24991c6555229378056ceea0fef6cbb6ce66e4bc8897975d82234af184664bd6ea4d286d5bd35270e2dd5ad59d0edbe9cba6958563ee449e3208bd57db6eb5810556a1f6c150cbca901b42066dab6ff86b56927d263cb6d16d0d6b7c25618f4420ead04fb315ba740c091df2a05537d8a6d8b50ad8faf755b21dd1813059e3493a87bd4ab97a55eb11b28ad5ae3aeb4285121405dbf64527eae6dbaa8bbe669ca84a0e464c3549397480db3ad98ed6cea4d6d21372b898c9432823324667aaa8800feb6d4440efa255bb3dc57af875698aec023e35d37fd23721bfb747ba19dc8a9d31bfdbb7bd8d4a248027db4b65a0d32ac888e847bca00fc81289f6f59d52e3781da4fea4808e092e532a8f54666f75f860d4525004f8d9c7cbc16e3bd217db07000f765f0aeea74cc6f48a0e679ca881fd944875501f5638be3d3b2422f94e9cea1cf739e564662cef50417be9e7a7307959c1f5410a6715fb295b082efd42032e55c8f2eb673931743f780276a76be0757b5964d9bbfd8ee1f735456bf0659b2f3704a59fd8130f3b0b369681acb5d88dd47591b3b5759327f19e8f569f8704288b952f8642f4f36befa9879b972f11c24b61261b20b59ec3ed2a5e2a485ba0ecbf0957255bc8a84600a936edf36bbc175eea676eb49abc19d5f61c800add42cf59ffb12c2170e05f436415ee491532d54fc33fdcf4513313c185ed783a0efae66c549fd4092c150ce38f00be81714d958473faaf92bded6198401669f063edb5914f44ae3bd6c804f6e579bb80a373f18f93d6c935e36ee2bc8cbc4deb857a40c64befa8087c428552b7eaabfd099e7cf1b74eb9287844dc72a34eae3273a8f8d71414fac229226d90860a8b3a935622944137f54526bd58c1ca48c2c0ea4188147f961988b2bed27b56538899e789deeabb57fde59b0feba647c20f73bed9589491a040e5c34befe6d00c7639c6fe2ec6d481a6cec95ddfec23cceb71a02e2eafedecdd8cc452d788ae35016884089b5274526c1d77d90abb523df4ddcbecfd25a332734ddd8a4f46c695c256749712b98ac5a718f2b03dbc59b0a23bb6439d65ec60e5c253a0594b93cd63c39d51eef3f2082f61a4b856e84a0a88566db893b885bc0bf191df8fbbaf9561d777eaa41a7e4da5cc09898aa6907f4e01ce36c7086e344b62ea6f450a16f650780359196d29c5e4ff8a63920e6b08d0d34c9c53a45c436bc23cd895f8b105df71096af0c6cc2bc55ac13c84727006e2770f1e323f955d90ee9988f67bf212d1641ca7e4ce7710e7096aa3d75ca1714c14bca1aa3297f768be85c8114021635d8d80b0063d8559ae4be39e267e627cd75a315254259da8482226f0167c8e86bafbbc235d7d2d59a8e768d947bec90afceefc1208973e60aa499dea806aa991431cfee21783b7e764e83fbe9751eac42039fb16a495f0abcc03843e791c58ce0638c3364384583acffda4eb2530ccdfdcd908b097064b9e5c9c14956d30a117f10a2f08de1ae75cf45e8b34ed5b6c4cfc35bec452bba5c7ff6171d94bb8bbabc556cea318cf9b2b473e285b573ebbd9b9a14af70b767860e0005c5dc933012ca401a07bae6bf3d0990c3defaa9edf4ecac5e542f2a08d7bf80d916af068686f8027a1a5b34faee7cf1b7a17e8517e9f53127500c402df7b9a0600ba1d37c67bca14e51f1a6c872616b6d5f68b6c2f764505f084d76bb310d0c7f4ee85f7514bf9153d51e8a2b27f4aa4d9b9659dbf7dde11e8bf72250ace9438b1fdf6f095e85e2fa37f122ed99801a16eb93b7cf5fae3b306ef8a0ee8cebc8334cf852d6541eaf19e03a529947c13f47b903e61c57090899f62ecc7fbff88dfd5a87e66c0598535f7da2c6d2f30e232a61d79e8dab79361463174de8556e0af49aa4807d4ae29ce0891daaa9a9f75675581b6d32e794b790a22d59a5427a4bed281c49c7eb739db3934ca602f14401b89ab0ec4bdfa2e21d2e86b1af9b5e4da8e76e1f968094586e0b58d9a67c9cb2f2be10bdf5b1932f5fc7bb94dd26624a1b226edf80fbe8a5ab9de2a47a896a2044943a402420116997f74fb56747a1403bbd8a942ceb12b12fc05a2d5d5c752f6a38b50000787b06df8664e79cbf70be8056f4ac3b0e017661da1ab06b502c53acf7cf59780c483e2b23fa121b33769cfb5d245816a406db7a192b51b97976774b2733c12a4a503790e7f32756c7692f4976b9a276921841e83549d27745fb983fb102542997133ca79ab2df3b4dbfed02eaab6aa5bfdbcaba031bfce81e276049fec0385698000ce765e1b36fe4e946be24d4effe3130823d9a356700f63929be3cfb18199d7ea9c2bebf610912f38ed75dbdad60efd9006aae3fb408fcebb17f6000f4f53fcd0273dd63d48badd56730a726ec5a95657449af2e5d4aa7f7d1860300661000a61eab5691669abe99b5435b1930fa0ba526812fd8af75481fe6d48f7c8cb64e7dc95e450ffabc317bd253b12c80d5fb682d046fbf4803a5c78ca8050d3131292b4792ae125e464ab6e3f67534f7c18b358b6e46e52dc001bd7cd902b79370e0348d1c45a02896b66decf194fcfaa1d8c239408bd7035ac98b0cde669c51c0e76db3ca153a00f889fb92332b39dd4ae71504022f6c60b3464e1bd20919a8c912315ec4ecea812f4ebcd5afa754757c6f5d3366548fbbfc0cca95ca270deba6405180c0a14890510196c281bfcbf5f11da8f4ea3875c5b6ece015397ee325bdd4e14230cdab8df90f517b0d4d1d3e1b1a46aa31e1417cbb97fdaf18ca7b532bf674f9da509edf93b824b74a853e11c84ee1ce8bbbad5f660b27f12cde400c005a1b5a85077b854d3927dff4665cd0145bac591d9ba93aa3424d61229fd83b333d1d2d6eeb904c2a3c2c612160de9f8d76539679c21eef5c13a6d756158fb3ea43743a98e2b4ad40152bd2b3aa6f48aefabcca46c9ba07d7c37930ca71ef59487a5b44ced40cdbea49b49c633b77a63f0cd2449adbdfad89b012c236dd975551b50976df1ef2d6d38861c768e5c73850fa508e9362aacff6cd69432c33b925fb2b260c8f9a6982fed661730d531d11783db3339d8bcc8fdecea9c9db22c9edbcc3002866218722a69d58a16e421b31284ae70e3cc23839607b97bba9df229e30584f6e82c97caf97b2a72745ffe7a57dd496758790651f22ee1c5262ff70d9abb923b08959c2bdeed34b5ee87151f684181ffd5abd9ecd393f5f3dbd660f2a6d3095a684a0cce149212f2de9528c589976b72062e0da2ae8716ac6cebc183abe011618538c0b912409eeea7bf2ea9aa6c2f9360a8ec55a6c0b6fe2f241b547b4fec247e2659501366dab5039b98a066558287bedaf084774220c584a3e17640f10c03941949699cd6b63b809818859a55320630d6f4ba9a0233c8994e6bf1bc7e317e18c1a54c78a2f9c4629d02761c6f8dabce3bfd7420d4bafa2fd98b087a587307e3a327fe0afefbb8ee2d876440d8ad0f297e020444311e7b832f1bcf4d24c875a173d5dff7fc94bde203e552b48ea93e7616b1a23d87df7d069fd624bc1bc2f5f69ffc12fc93d434606d58d0aa1ab8adaf746d846fcf205d53e2d6ae251ebd3b9db2280e565a78941a943a341550d12793f9d00aece68607db607a47ed64378373f10581cdd2123e75a2f17e1a25f0ca321e5e905d8be435144d889f8ac2e06763d4acde3611168d40c329a634184d0d5441f730142297ddaa12fb4ec04f09cb31824ca6e9cd81b73129ea37f698615400182c5486bf63552da89310bcaace41504954edf0cd5808e808a6857e401754dc73bd458a189353ded55b75078fc24cc6969e95672a47bc3f921cd7cec0348e10ac3dc9e9b68b68f9f8cf268a411173b6131bd6acbe7d37458d12670161f200674ed1219564e0743e8a619edf3329735160ec06901ac7504d9ca97127368667f2881275f9ef9253eb8d8228c92c2fd594bb97f7fdf4c8f215d7b165f971e3d0d1f425d14415288ff84259d5573307150333db967e3a54f34657c883920592a4aa57708a5181c33d107d8def125ba6a97515381ba8ea7bedecec44d71771a7b7975dd9ce4d5ce6a8662926d16be7128913e5e5d5d8830e3883134b6a0711a9bdf6ef6cd7c7bb1e3a3e2425bafc8d3b88fb7947514218878069fd65fb34eef1439d49111990928d0c5214e34ad1a2f1b940f108c6344fd11751ad33cf73679de1701c4cad24c32c3c272517fa902900db0fc75d968b008acd1c83ac339396addeda54e534e7f9504936522962895a9ba9139ddf22de9c45b15bf5a97a8bcd9bbc42bc17961e587bb7c5d9afc811e8a775a8f3c7d4be5a0e7bae370e559b8a50b24678cc9fdf3f2b905ea7dbac6fd71f59341cae949c5a89db95272312ca72c007afc5efeace2d4d21503bf85257821665fb7ba2a59e8fcf28927c966809887e7d5d72c239b245d45a84ea4524f4ebfb695233a54f6f6c5dae003345b8c6035a87762e98b9a37f8782b149d6b0658f763a96c7a8cfdb64831012bbeaceb822f6413fa2c940f63e1319ca2e66384a7de0c513ea3385be854201a74b67088b5ebe2d6a62c27aeb2fe0aa8b3056f1b81670691d49adb3ae39b092953db330a692da9cb3edddf1710b956d34f208a68a69784c553f4715385c7c72508d276c3c3d5b5516694cdf3e5307239a6942b7d2c93bffdcac84cde3bdc1c0ed455922ddf56db5e8507807109d4ec5142c715659bd7fa9e528c129d640dadd906092e5894475c49a3a1c170c103766972cdab59b8dd218f36c018fd8feae01c59e979af5a21ca015a947ee17a2b97f1c6194734cfbe132c98ad04c39e225ec12eda77838b800b12f67ad56f266e767942b6f621eab75e12da3e521f8c0193834f289b2156af7ccc473c820e27829420785987b8276810da25444b9ed7c9f7f734359f14a70a3595b509529708f4516010c88aa70c1d51d7d0b4f2e2d47c2cc802e21044b9546324ec160ef2595cb37d9f62fff24b2cf57dbd5d319e5c42e2880d5b70d8b17e1288dbc11a3050fae4a5e586574c7a8a02e75d322a4266693941414101d18c9c2d8262209d1b82e2d30f35384e40eb34fe76913358289a2f304c6fdc671a4a504b4448f1fd29942c148e92b8318deeb767fabd60822113e575ee664ff09a1873aed8f7a495793cfb7b5a504015f3a9074c641e7371b250d867d751d90e4a22a8ac17fced3d50affc4998b97bb644acb07c55a4dade3bdcb89f6f82d6c24c305d68858b3dce88e1c5e6fbbaa4b78e68571619e67254f32655dad584b5a8ea5ffaaf8321e09292366e8fadfeb16e310bfffe0a06c31ab1c80f1a99d8945811fb2c426289e16dd053faca16150492e943a43c83e6b3069531dd498ef15dc612fb2051b88f7da83afc5764a3378f017c826ab55382386c5e477c8c8d34ff026cc9e02cff10f2a23bdb867644cd4a20815b7d8be14902b594bb6e30a81ea159aa5c67f24212c92cbab6c4de0767e791f4b0ec314a4e7db00ac64588f1350c2fed0a794fe8d988277d5ef8d4c35abae00f459017d39a7b0c3467752717f3d090f771492d139ac83743c5d8ace951e06511667472b6f2ab2b49d549684ff3724ee08c6d83c221330bf3050de85a124712e8d11e80e59e7a2ba4d60c213ef7fb6b97416915a8b8c3aea48c6aae3ada79a380fa4505b1a58e9547222402b88c7c8dd09f2837e889308c5c4b2a683eeba8cdb9c0b6a2c45bc0159cd41370156c538db4935d8e1a00c4293839381baa681b9b6b5d5a452b811ea05879df0db296216587451eaf162e9e16a8fa8d273280f282bf9e810f00ad9905977161dec3f103ef789892ceec8c453e1398ff487485f1e1b56fa1f4199272288f9984956b9f6b33e56a88544bf87093284d9f7be8ebdfbc054e736da7f0770d3b1a3ac5647cf5e39246ca6b8421f6a0868fbb3949fbeb7daa963d8d329aea4a1a92b3ffa437d8561007321f68d161f6dfe0d19c46b783e6c367dde74554ef3466be58678c85a59de5f59a8b6153d75ad994a1a24c4f5159937807e516d34ea81fe5ceb642bf258ebb872bf3092b655add9262d1950e9a445396367f41bbe919ac90a6d5f1c84aaefef8301e1e3e5277b78ec155bb9a4ede6e995e1cad2842fee4a01f91827dd875e37c5d37a3990d15cd64e2fa78e063917dd0ce48e7875fc4271c15cc90a85d8956d95ee511ed3329b16535b6df9e89c7df515e26be18233fa863091752014b93de171f920840fc7964ed4455c37bc5982303b58c96b9ea7d446f76387856b9fb468c0d2d3c95dd96bc688c8b66ab62a09ed42e8793c82edbf4a18ba4362891f1ed91026933e1a6c8cedf1ea2ff2d3576a20f87dadca8b45de4b29c812d39caca1a2498e207bcd39ebe0be91b8a175cabbe3b9b1ca9cc2eab3588d122c15eeb2b8680b21cea785052f59742d3212491166ef8657026f2bb2db3331cb397a6d16e696620137c008471ce23ced65a437336762b4e795389f5bcb26461e5c940624567f0f880eaa53082ff6309b4477d655ddd2c5657e83a0761700d6706f012c7365f310a6b0a6696936a106d69ae18801e22b5642bdc9ed3ec44ba4f8e858fd298fdaa07693c58e5d49cbfe4b4950f42906d3f5d7be263ff12e68abd5ac9e98fec24d75cc8d570b09d5fbfd59e11c1ed5a65c98b7dc8a70bc0658eb8bc0d34bbbd55a9f53ed801140d47f6ab4c08e41f8ec3bab0428999e00f5c5f967fcc00bb4f7531d512d8bffb92112b0c0cdd010647597ad419ce1321a1a7a9f6844018121b455029cfc01b9c226d38b7f10a83ea984c7f2af92d7b6198e82e97f29b163d2a4fd0b453ec26e4277932f7c6609fa2c579ee11b6c2be5a24309033334d26c59ac23cb3f566cb04e7ec933d7813647d95ee1a82d241dab60a47141ac84bd8d694f07ff0398404921988d663226644e8c128a5738b53629a7d33382423c9a759018acfe04c0828c411e8606a494fe23706fe92516f1dc3810fb393d02d88274d6184b82813c5ea1d1838e519b3bc6e9850492f8f3baed52a4d0c29e3da5d1affcf3696bb09f8f93803c95af588e73d415a4cc427d2b00ea94cbf2c419ab0620d3b183d42fc6d0a9a5b82ca7a4728dcba372c281214a101a65b542b3f8355bf4cdb32782010cdd8a4d610c8118eafe604a7811402ab4d254a23038beac454e97d3ea03a7f96bc2382becf4eee1fe79e88d3a410a09f1a33271b36aad0e8008a40c1adfa18d12ef4db0a691f96e5abec059cc47f71b3bb44b820b4b6504af2688038e19dc8644c985993046a66ddd07d4ec4f83151659e7b97dba15809283a853a42ec0f7e0dd6b4bf6c47238cff59724122fc05346702ace84b08d47cde83a27e410f7ed5c72820b5c5d875548e963e52309e741c413a2d1918e6f8e31399a350f98b5fd46c38155546ba6e4d1d189cab7ab4cf256d011f62ec43985fadcc16a995e0acb84e70b3ac8ff52f84969d7efe2d983090d0b4b0f47f0dcf0f5853b830808677005b1af9d1f954c92771a812de1aaeaab05e495f51bce83bf43fda6868be33ad1ba508f05f137c84753ab260b706d1840e4b1c2887bdababbe7341de2e3460c9ace4ace4a161f88991e71d11375134aff8b981eea11bf7d3eca9d7f528fbdbd351ec5fb9cac076e3db0c7c8f1604a2cbdf9a319c9fe2b03259811603e2d56027f2bec5310653844e6a4f10ca349c2024ea7ef12b4f500b7c4a5cdc8997b5a843caf992fb3b4704bb4d8fde974c06a5972a01b35c006499068667e0e0f10770ec9cc2bf22057c95090f93c597496306be62468a0d0d6f6cd22f23a4bbe915ff6f5a24ac7f8c33533554d04fbdff9be02bdd5420cd4224299523698bf5047335f045bedbc9d7286a0c5947d68947b763677cffbe7a0febe347b0ebd01727220e80381cf7dc8826e6780f6577f60680027c511fe2e563a1568b1fedd9b91171b707a99a000e4a930291d6e24e9782d5a3e04c365fbd472525b345e9840fa1b44a6fe1a603f404953164376235773004b20d2f58f2587bc958069d2f7141a1cf08e86206a1349de24aec899739cf66723e1a6a3bc7f59cd636b066c3a1be540fa02047d0d3aa5b7d6fd372804b2c3eb11072397925d672b1261084d8b33fcf118f9531211b9f91297f625983d6d268450fee3f80459f8b5e5e09114fb9a924baca04e27e0f59b6a98c531d0c3e0860a0ccd69bb9f31d5678c9ef182232d08ad0bdaa11150ef23eb2f8a828b3ebc0ce8c04f23453a63e0f9a0149e4c2222e9e7aa6f53e96d27d733209c1304fdfaf173f4fdefafd81082a0317ce8757ce10fdc2010125345ba28ab03f5fba8c1a041ec86a3ee82841d03cc5e1a6bc568ba020a1de85a841657624c940f7faccbc13933eabb2fc964ab6414a69c4fe465061fbfbd775d02091b525152c0c8e200074642613b02b520341722d8e233795b4c6008bb066531832d6f5764dc479a4c6365a1339386b5da9683d3babf4d34a7a71d33e6ed2f483ba1fa205adbbbf994dfeebfc08d466da93a80e84c1b170fc702de95f4ed845db09cd4e912bc90c7a44be5363e2103887f5de8430c789eccd4a9010dd4c9fe96592c85ef54065bfa9f203356d2589d8ef16ca196680336dcc13b90663f00348e2605b158c9c8dd8b72ed98f9c7e93239be52155e9f0d16da88854de18542cedd6db86698d50ade7f25d4338b56a441b50eb73753226ed8a640bab453ba85122b9c439c93cbe6a24e90f1c312728079d1b35f2e743dafc92b518005755e2be5751f69cb8073f36a6e3cc6c8072fd3438a72c6d1ad034f8744d8236a9353d23aae273c7b1aa776ab3fd0d18bad7f0ef750a9d865f71d25df46f91156f3883988377086fd5861dfff69cd67365b46485721608569679008d4b901db02c7fbe495c576f61da51cc09a711a41de5a819f36e06c5c9362460c4e7a30f389e1e0903678158525685e2e850af4c2a44a66ba1087a1b27d330d7e371f77d2cd10b4078257f681adcf4c8570eb2246e5ec8631831045fb220f85ae9d75fc4a5a0e6ea5efa9f21cee47cc3124fcecfd897def3360dcad8c13508a13af28e314275d487a95797cc69ea152d6f537a59f9b3b5d6a7e42dc6c629a0e272715462761a4394f5b091d3657e964b708f197fbf656d0b8e75afb41968792009efe0e565d61d9db6ca3bb1f5c77a55d47955024174792ed45293ade6c5682985d85457b9fccc1dc4328a19cd7365265e4e14e1097fa10cfb02656b34c449fed37ed49ac26a8d091d43e5cb10e99703c570e560d4c6ea33f774c1b9d9658e8bb443bd5d0a33c1a83d77aefb5d199cc76b1a6f81ff5874d7de57515bb6e5c27eff02bd1bacda0917325d4cbc0736f96d079e9581561c5366a351e88b79e0fadcdfbbc437fd3351b89bc824b9d72a8022fca78c0973cbc98d330f4c3a26259050b878750cce33e795f79255ea332bd8f80368f68d73372c5bb56d462d5b66fc646c5263a34fbc56e2613e048248ae03daacf7504a4f3d934522dacaf5f59853a5f9aec82ff4606a3743234f7582cd59c2ab84ae0c58dbea03700c144c38d3535159d6a6f416f9f067334782da91077d02020eeb1472556f90646605d4e34a341fccd81148c3a0d2186bf043bbb6063748c5550baee66987cd796e7a6801daebccf6bbb3b673b7259add2f3e83898541179077f631858241b7ff815337f417dbc7ec41fb5b9410a9505f417fed1b5781dcc1f59aed0f29317e88356de6f04c4e0ff4d6a3286f8cc4648ef86ba46be8247a19b80fc9d2c0b9e5ba5d2ef806626abeeca2b7c5746fe93fde3e47db58cb01ab4bc155a4a750324ac1151ec9b2f1c67734e2d0dfde2f5ede84ac1cfe3ffc6eb0d37b64545484246a66ff7e723e74e5b7672844b9243ac4e3e887d0bb45fc57a5b03b21d35c4b4072837097d565a26d074b25572831ec214924535de7204433d56359019b055672dd4de1e428a8e3c7368072114cc82909e30a29ee489db388feddffcf0ed929933cfa373d3e71ba42796b5b48ab461dac30f7afb53285903a8b6fadc9e87d1a335379ffe3658547635904cae6ccb8b7d1e578d0c25b50aa44db04acd02391f4eb712839f817b6f146ba87267d3b8d8bd6da7057dd62f22e769153efc40e0104023505484c320e149700aa4514aef93b7edd57801209696d097c77c952de28280b18d2dd98ea511a8df7a1de0247a7e28fc708244cd6f2b79c9ca1dad5f65aa931fa76541fd89d29c292a92c96807b65ebf733503229285213412a631f4031ba79c3429a1d68c1b5174a89c1637efada83142f9d9642386b1e8c83d28c75b186ab74d4966c8cca4181f4736b04b757bb4f7547ad91e149d0cb3b870542733e2b7daa66ef6a885eef9be1c9a8a9bf529eb8f28138ef8136b70cacdf712a2e2a0e10628bbfe603c69e753bdd1eb622212b0ceac53a0315458b1b0b557f9f3f7defddfb82e9446a0bd437bcf6d70fc53caab1b44296b5dd24067549ed8e2eb10c9870565adc112d7d3bee4f895ac117702fa05f6f11eb233ede0e917baf5cc1a8ea720b118c11033c769a3ac327f9db316773b236910bcfacb53dc1b526e05faef4c9618de6218c0f3c64840053f2ef07d10b6d4549235111baf778a704102f16b1a8eb6a6a4df6f10245eddd7a2e758a55916a52f38c64d722ff1edfaef65191ae27abfd0da57e99a0f463f09750271f16f581a266fb66b8426b4c76a38e31da223fcbb0a39bfadd50af42edf5aa9a98636992eb55fa1f78ce05a5b4c6e22891d0177be0dfc5a46f95462e6e45838f28ca671b844caa7a28ab6404610543542be0410680efc7f3e5587c79b19c1a58138d6d6f871b8ffdfe05d39f05e915bd9d4a617ad27c14c51122a964c9c668ed57122b2773bcad261ca3cc3ff95b85dcde20a9ce2dc389c92c147e937acab45f642029c033e7bfd7b469fc1574c469b036cf2b7e19aba47dc9911516a99d51301e234ca3498047f7f71cd75566362bec2b70e26b0beaf4a36c525482c5db9becd4c7bf9263e29e59b4dcd5e47ab1e8154cc4e0ecc2e444bbff1699cee779282ff148fb21a33a45723bc721a6002989000fdc4ae1646a8783af70e6edd5565c307da68678fb17e9794ff69102da173bd3d4d12cde83fddb05a65942f38e1d6929f8545635cda330c06f088fc1e73e5c0d220204acbd0de33f8cb9dd4ca73716cc14036f22279a0f77f4f45e9d4aff4cbc47d7efd8a3b096240f14813caea157a5f6e939699a578e4dcde4674229d94422f6b6c22a90adf4e335530fc451bd79b650cdae4db5534cc946efae97ac2954bef1e22385dd0a3883c3d68df8f4734d7b077b70ce59d1128db9cb5c87148122a7aa543fcf39eed340183c3d38ad2e59d0d42e4a80f6d83c5431ad94d99144a0a6f8c793b5a66cb1eaad2c9e5911d17d2f2ea092103a9027bc47b06c8ea2756421fde5131977388fb0c66d7016885eab1bc85768c8c16d8b6e6c2d580d219023c537d58ae2fc6d71ca2db19e1e1e07c9529deafc19abad575c125a7586034685f7d975e70abc5bdc197cbb2d678ccab9fac7ac4f4f4b2c087ce80241a10e511a30a371917d6d4590f6295c476cb6ca7db07e3d5e3ca7ef3bfae2e31b089849db7cbe13fb33bc4f14f2f70f1335c13203f1f3005b035d81771dd8ccd65742e56546dd5d49e34fd2a512b0a433c3f399b42b6f6e94b4f4faf178a1ae1dfe5c2c7dd9978324199587ccf8668093cf7be546ee2cd503aa19bf4353ba3cbeed2bddf1d7de896f0e4cbba00f699a752b2a85877350626a35d98a27132b57a913364d65134ae6172e35aec7fcc134295c5e6ff64df6a57927ed87c88abcc6bd7a293d259db41f6a97f526dbd8ec971b5eaf8f64129110087850ab882f4fc009a909e82899f9370a23ee4abafb60bb6c3c14d8892761752579d1db586dcede95bc1e637629efa9c173846f67901dd6f9b58cf4590e0aa085e4069617eb1586e80fd1ee7bb7813058ca909150f0e8535b4d70a34ebecabdf40e8c9e3b44819443ab43f1868ce7818edc58183161c844dddf323048fec4bb9836d2ffe58d376b2c38b7fbe072d0c07d26321d524056e3ae1e75046dec771f20bbf87c2ad6d8b58de46d71276bb8b0088a180a58bc18daa015ee7eb21a2b456cad3c52a9cdb03c43ec1cba6277319af0b882d3fe3f82fe2339617544e24dddfbc44f87f02881c6b7441c75eb7d42868683b4d395007c997786989467a78212337e9b0c89d9d81aa7c92713f6eb19e6d6c63782f5a34d503b5fe998e72e2c0d8d063e897e9836e09036f604d1ca7708dbda7654169c499257fc344853cf567e11545cc49ca38a0d3368a3ba02e8b66046616391ad65700dc6d266db6042a22a2f0ca9288015cb89222668164262bd0743f48b1602236beec40a8aee313e3009e376d9b29a3b39193a4e584cd938b8773fda7efbfba1c3716effc9c8336bcc195d307fdd29b40d3a5b25166fa205a7fdd3225babd7882597479b419af6999b07b90ea6f28b5475b65f647ba7aee530a00620b59cfd328dc8967c48011293c14740fee641ed7a507f5974ad447c59d859598feaf11fa439dc050cbc97debc548220856711a7340c9cb24ca40c18c09c44f8e006a785ea9ab3b4dfeb84d92a583b1272111ffeb8350c1decb331d05cbc2774f339c244052582f3337f4c01566fbe42e818476342ea13eaf33d280fd2bbb80a214d1d77644967c247ad7d8a01651fc265a1b8837ee2fd51421786717007713bd58c5468999f12d78b66dc24edb93b717e11fd58088aee3a88e94b7310a97c243b50a36586282a0995118dbd043ef1d1c41ea7a7085a29529875b081bf557a37160a224af00a99b33b4dd987ce5cd06a2104d1f67270abd0318212630cbec1527e656fdf3cf85d0ece5f57abfd41477c4f1e65a9b9906eb89299bfe7d4f2a716edd7509eab7bdb56ab3a6790da66ca9ed5f89728887c1b38b14516f6b98c30e6437bdc06b2faab220d461e59c43743b19f98a890905f98570c91711b6fcec92233260582a1ca04b402d2dc31efd6745ba0d12ec37edc8a37390df2dca3a78a905a3c80ba254f46b26e3cebc30e2e5682c518c4fe2dcb38389d23e722c8ae351e88fdbe9e3ba099e51cd21732356a4bd5ff3f7348ff8f24efe5e440536a7cd53c913278cf767f1830c16fa2b06a8fd13ef194ffa07ec6e4d0fdb0009188e963fc2fbe686f02a5f63780af982b3b561cb63aa92243961d5ad9ff3715fa1d6fb3ee26b5a5624cee10038a5484ac56d79320b3888bb86a8a30d0f18a845c0f4850459b032c4ff29279fc440d77486e682cf7faa541c313e8a36f6846a47fb2f49bce0546a1e88805cec954338abb1b2ac87de042166e8e3a74b23261ec204f93d9f142358feb5dca0268b8375aef0335d51aeb697abac8e2fd8e4e19147db0f42e713ff8b771b1aced0f8c11866b90e895aee53ca63e387bec78d55d3231dfc251bf509f0684e073a65d6bc3ad6719f086ae26e9411ca671a1a1419d0f8269eaff3228a54fe04c6f337005fd0889b83afefa1c46c1beb97b9caad8171c9a9603500587931f045c1d1be735c6eea0f24c82d966360f9ae5ead49ebffb222f9d0ce45ce75c51926b56259258d78254b17d5e6a87b6dddf082f228651000ddd2e4dfd9a1a8fc7d7d1724ae49f7b38d7a0661bd414f833bedb803420e95fa3ce8db58b46478c878e81172e6087a61af5668ae23684056eb127548b122eb408c6789499b7a8ed37a0d2807a2a4e0c02757bf25c58f7c43393181cf508fcb028b4bd7b09eb41d478ff360f4411aeff332388318c03203cb6804d5249e73ade11fa1097f3979dd1e99422bb5cb02a050a775651de7b28f97a724938ef9fbfbba71c58df80d04c48cbad49ade4755fc668411c82e323ba9eb1c6fb720e0a9f530466b97d9d657f59c9766f6ce24bc0970ce0474fb0a86fe9600b6bf9739e1497b3d4827aa153b9e0db38f979fc2e80ace4c756825f38d0b66a1bfc0d03eb30bc8b07bc3c8bcaa4b43318c43e588e36258bdc6a80848efce51158a274b664be7bca5c16508676538a80002c6345f6c24cae044c0fa254bfdf68d7be177842407ade32f4184c7c43912062f1a3c6782f93f88c15a70a67bdb17e3d6f04fd092444816f88a098454776d89633e555c3cd091689a57f0ca20a51cdf8eec09012fda02dcbbe62908811581073a2eb8045ab1262fb66d4196eb906822fd284cda00e335b87cb4f37dc58b591c9f7eef2e2e04451440460e34630aee2b3e194a4754a9ec39cf41532afdd99d925cc92a7605fd3c9ec9209ae5a117c6bd3005f164fb91677ecc364bfca86732b898dedc26c582bbf77901e80924efea989f0eb6786b3dba8830eb7ff597c29882a406b49bc0588abfd16122d226d8349dfcdab931b8583890497af1166d431e5178dafb3d58d3f62839ce3a462ffb313a1713195010cd1cd91db86e8e17f20eee1a02ef07f49304e1dc90e1821f424a8810db89e94c9ab560bf48c1f7963f5a84b90389d9fdaebe3c68a2c59ff093b06eecf3ce20c3f212b67b60297ac3521213e95f1e2f9d1e8987aae007a3c35eb5c9589757bb25e3b1889f6093e973e173dc7702a754336eb14a38d0d4d840eb225b3dac1d4986ad3b4d409f23d7d29324f831845c8c54402330db4b1d4116fc0faa7dc2054b8af6a94b3afcbf9e85e3fc45a71da2c57d769d0baf102fb19d2ea5731c05a0f3ed8c1bf8f9169cb57fed532107448491a8b8bb9817fb55b1d534b579b74027f80ce611a3dd20a3cf9d3f32c9ea042479b45befe51615fa77d13bdb7e6f59d06add14baaa9fefe3e95b44af9c9f424cf57dc5a1916ae721c299d9073fd960d6590c3ccdf224759e991407d14b54ee0b0cb11b309a9c4b8afa0cdbe2d01ae2922e7f9e1e938465356cbe4fb790e05d36b43259ff5a33b9539f913092e3b48e59dca7aa4abcc369915c3ae8f74188ddd1fae4225359fafaaadf1c653f0d07541b02e4428a7c9fd5d68cca2f4f16373c0da9eeb042f43e31ce9eae23e44750879da63fd867b4bf0ba93c60cebfb40ab732ee8345337f4d1810b95554c930fecbf971029c065b870b7085d097651c572011dab46f98bdeeba205d50a4ee8093124a3a39937681d2240f124dd8b4b7f96e8c77836a26a1176a3beb6e6af94766a7035b98268476cabaaada97acd03444b9d0ae28f975c9d0312f884529020c7cc1acdb56e4d253be814ee7b2e7cdf8407f059f5f4de11027a9f41399cbafaa4211bb2c4a42ad17a5092115ca177f810fc3971297fd003e85dab4090b105872d1a0d3300c4df95e6c8a019008e5c5c054ab16a84441999f630a200af454414d4a8555fe5ba8fe5d5fddf26adb39db359ce311bd5644aa18ac0bbe6eabe10f8f94728df0c2bebea46c47a9558575c8a0dca2ba34c2edf01a42a22acdd9d0b555e5d54079d1cee60af3f54fd1f79a58926eaccce2a957692efe156e7e504f0e26acd150b88ec52901f7e9ad9e65049f475e0086a9c21ab4a34de06c39b7a1844ca3eb133081899fd2e0b6d89e0f3d1f8207ad820f39070bd63aef8996917bcad5016206d9ee2ebf9eee94cbe9be15fa80ff7a53c116bc4273eae33e53f2ba531e7a8f80a66e33e0993fd10a0d9ff06934b4753e37790fc7a4450ddae7578c5004e3a40481c1913e3c212d725cd052bfa6bb9362a78cf071ba74c620478ad73fdcbefbde584c57db1ba940da75faf5d9435bc5413ae50c4a8e2c8109b0b992ef13b6a62e931dd4495332d4e5ab5f80717cead324bde332dd5363c7c584571ddc2b3b1e1704d74f34ab1b7b2d2c8d958202dba38165a943483626289129586fbcb43eb88fd9b38b7981acb22a9892975918535ef8768af53ddb786f489f786b5ccaff7f8f9c85c0ddac234835c91b2abd1a97582e8c2e4bd6b35873dc1f2ce26fdff7fad555aaeeca819341157b7d465d1e7023a8f404ccafd6ecc2296c8270a03b04519febbf9689f2fbd8faa1dbd83334d54acef5bcd7dc884306ec601525e3053c5820b110c6e9a89ede73b894356de29d4ca3835fd6d904e9618937b0e4a1427edfe784b04364c6a5a09bd678b88e0cedd435bc622519a7008c841db3389876962cc37dd43a8d2b940cb4e0a1251b48a49aee75a589942a8acb93be7587a5f3f95b41fa3f21d8adefa8601fa9c872227c6b61e77029b577569a99de842d9d74416613e4667519ce86d10ccbaaff15c6fd7e3075eddd8e41852dbd486b34c345183c9374511e1c80066cfceab0c6bdb72725acc726dc10fb90cbdf5751043f6552ab13dfba5a850bc7c0899d728a04b719d1d9115a09fec22560bbe47caa7b366edb80b5082ad4ee9b33f9f4f8eb67a1cfef3bc31107ab62d92071873a7a7e06b6412f313af45624e88372f4d516913213ab52f22375b714f17bffe5c5048f9fba88d85ab957f8d1bf0770caa729c8e117bcae41a38343f3a14a415b8ec55ac4d041c6774c3937bc462fbaa72dc8e30e3488cef2f074dd1c584617237a0dfdc9f8ea91082030b41991913d84f53e2961d183ddfaa82b4e2ff8f932eb8e98dfb571b2308c7b90d94ae24489543c5914d67582bc30294c01eb2efd7376fef65a8a3b418efbdc4737e304b002d16a9d34b1c7646161dda08cafb775e8168a72519424df26955b18923953032564666dad3f81c8a43cb8fd103cfb90d8dabd00135fd0782044eabb3922d3f756c6d27f9f2adcab1e2b289348c74568c4f6bee6864f1ac97ca56aef2a22bbe4423a0021694d3595736999a3cda88911a8443bfbaba976697d14732b89535182054d85e96ff9ad4105465577c10d4100f9a5d81ba5915d45a6591812a21c7d5eed3acc42c33f6e47240e530f05c4d4d6f09f044c70d3764832b34966a28b8a18cc917e23ddf4826b543e76752e718cd7eeefbef5593fb7598009e8887e2ba09ca6ea1065452a4c7d7585da673b7c840394d50131c28dc1b95260aa0efaa3da6f6a3f1bc67b2507afde489106f895c07553723f04cda3dfbb10ec03b1ea68bd1a2905e1d4a946404c213dcf8419236935b428f7d84fde30a5b992a28c30f1cf56d3b41ad9b7f5007bb5dccc3387c04fd39e4387d478904264f75dcf2c97061450d715767d0d594bf0cd46c48c28473e2ad0a280b33a496bb94880cf5ef5c6317a43fd77e57fab3c416a5636d019fdeae62b437e0c07d8cca614ca134cac9999204efe10b1455ee3d77d6e1557f20163b447cc55ad9e28d7affc9c70bba8105a987a1682b95ae37c77c63959b00f04a6b05fcf7203c74808202edebbf9d78b1705f266f986a2c895d283528a00e865a8fd0a8d0ac5a25d412965350523564f64c777c6dcf961bf3d3fc9be609b44a6a2441f283625aef09a27ed2c1cf4daea12449c3a2948e104961c6b67f99abaed8c22e7e6817813b92f30098e44add1ac8217d0d0888bf1c67f9aa69493145ec55ad5b84aed344879791c82e39f065f39b1c8ff47fd03e86cba2c918b52fd0a23eeb8e79b527bd6ced12d09a1fd1b21490f17bac2aad45d494d573dd9d02c9d1616328ca5645dda4c07835b58e3b1a538a0731d21e845d660f26cbab2688d0689efd52da2ec6a49c6ee1907448990efa98c9e3cda53cfeac9550dd66602431e9a865ef9d50bdcb10f8e1155df8d75ba4e7f2d159617b865fdd3f280772e29204f9f37a05fd0ff0aa2d3d5b0b16545d16c34aaa3ead7d07048b81b1880ec89ffa044ddef20556da8cc92aa897808d1f692ea2fe02a58d523e9daefdcd84418a52a60f239479f47e28436a53747490d5ff592911bc75c499bf994d3280f53d130133e5ac6c36566c7106e317172f9b3cad701d1365dfab20f275f8a0147630e510ac9384cd82b4ff3912c99371a2ea23f091a8ebbe6ebe71f86fa8d65e89e2e618f1bd43063017d64fe8d524519176bcba73b5892de6605e6c40b151820e367dfcb98cbdb3f8f468c5ef2bd8437df873bc281094226ed130e2ab26229609092450222aa4b7b33b8867802d4632989458ffc7985efe9a423a8eb31da11351ba6bd7fde0f024a01a7bd41d1fd2fc6529ebe8dec4d84ffc451e6306cd21973ade0f7da028b3a0ab8251f354172764c512882b6401512bfbad3fb8f265f6d2502e226c4e203f97a330f33ec35b6169da728e1ec1a9091e5fb18d759d469552b21413adaf353aec4cfc3f5982f67e3c63d392d1ac817a8c80015cd79e773586741c40056c5c18e792f65749d2fb79a6c548d619e4d0c936efb875b41a6845ef2b03960cd641c159e376a71dd5aed9ecea88f4aa12b4d7c43241eff4d7eb62665dbdace8258ac00ce98a494e32ff2aaa28c7ae2ca926514ef4f9044897df8c1fc7f8fc09c000b8c077cbe171c6b58a62b77e71a0a15fc1b254f307a3acd63f45d9b154e04f90bf320d1150562eaff652879297726440ac125a43ed217a487fd70a252ecb9d9d48ac893b4cec767cdd07d8bdde99c6a6699a60879445f20a6037f0db734deb9ffb968f4d78f36f9658d01be9638b127c5dacadd85144c931c0756d63815cf4a9a954c928bf0f07c398d7f7d0fce202d1d01363068bfd5f0d11a634c799c7b2299e9282c337a0c37970338b7cf0d1003d3f53c659c0cdfcdf5e0b872a2d843d37404463d2e5ab79eb2d3016f2ef7e9c1d52f673e28f777125359af48bb76d064be8e6c64383071c9d258774fb4d4a6a3f1015f09d0427c99ffc42e4141ac52d63db544406c93c7d6741c36665053360adc0b6075e7ea8eee98bd8520b2d3a1f02cfb483bfdb2d053a7e1dfb8c0f55ad6e29ceea2e32cacf32ed254c87734ad17899e64c83682e3d3e8a050b14c36fcce25c443bcf5828720b15b9cc65f5fc68e8764aade42497c1a7911ad83e80d665d926d1e4a320b8f98add36ab049ad5efb116eb57a8bfa4926d0de25ae0d51c50670aec154eb4c858ef1f0cb6fbed18ab801ab343868e24cc6a3d4260ce2c19a86c498e97c0a637902d25031f72ed6b5b4931b2b9a46911738e8938579947be4017c02b6e863ffd921ca1a56b111ddd91468dde81011ffc870de180c84e9e2e0173c796da0d7537115afae6901e80f5aad6726921afd5a3d2fcdd6ae70a398a16ec6a2c5fb80e4f52d7362e30efc5c45e7c6c6d67e20d2da2e614d9a947e20e74ad59aefc2329d6d5f9bb5136efa9ee00022aa5b991c68e80e2cce8dc148aa3fdd8fdd6a1ee0562aa0ec8bd036364c44bed0cea29733f2474bde6150fc742a9caa47c16353b58221c9fd7663f90cdf8e155ad1a990887b71e295a660273b6232a7c06c56de7bf1c3ba1def81834fda292c3e1771c36d01c7d2085106ca80ade1639b8bb9acb49d84da72152c35dc207d6d2be98bcc2d807727b46a162ba7973a767d7294ec4c10f4cbe605e1152322ccc5732f65f9c24eca25035c2f363a78c96e5d8413073d13d0af8a286a318a73e2d17c651eaf189c81e10f0cf0701eaa7e558422a0ae93481acf76e3e696cfd64f5a2aa6d0f980d3199882d0eea72c6e075d63bc01aa9507cce3c35dc8236c3521599bfb1bff6913709236495870ef86c03e884dbabb6d0bc16907fa0c67bca6b8aa5dba75c3e364cfeeb7722a28ae52f2e31823cae5321d82b584f7cac6f06aaaff055bdd2d06b33ea9bf423c7b929d0b894b35cb9f92b1b8e013511ac304e672352dc178ddf8786f1ebc941f1c7794b175538096547484608c5f898a0afa0c5f86dd5e75f4a6792b15e23d0cb48e05c57f28c3ebde8f76d0b816accb36daf6b4b59ca28aea74a2c3a8e4c93f3f4080dc0e3f527d6c7ae2eb018c4665542d12276d7788667ea3f6ff8aec0ff7affdb6fe31571a24580aaff1a79f266cf7c25a784922e46e1c9195c518b3e574f48e67ff957f385ddea8ea91dfd7080a02f37272429934a8538922fa2e64e6137374d5c047eb319a61e211442af30493b420eb9e721a1eceee552258dce0d5a26dede43103fa00553679aa045c81b6a1d7749b2b135b3d12e1fea85781e41ad258823a9f69849456e65da5791443bda8a1752657a33eb2914eabcc5d0dacaf58b65757a1afc2177820c1cd419f076b310cd68397492c61c2a615b0bf23c8f0f93bcd3ccb4020df7b92aba40af66235e05e924b80a98eff275b1e18b3bb07a49f558325435d59ed1a8e6c3372f3e1e838af0a9cb7484c4524c496b7917f5239f767c6f73e7deb5a826a04a653ab27a2901bef21d181cf2a88b08f1990144cf77fff2e0f623e2dce4279e8d1b626e9e36adc75d5945fbfefd9513daf88bbc4fd421b96f758a5e8116b7bfe86cc8348827b3f3af68586dde8e6fea721abf699782f48023b0e4cf25019db8a1f06bd69d80fb7e321f4b5a7c6ceb222080b8f80dc4293759079ab3734ce4b529e2a22914764618c811de4fee589213650495596e1b21e6ef65d1ebdf8d2e31485b745ebcf2280ecb404a6beb90d594aa4870ce801db6630c58a50485fae2b83c981d506a3911439462d5e97e01b09bf19a5fceeb420c2688e3a8a276c925a6d5ed230f7c00be5555eb8531e2d04da15e96b2a906a47d42c855e790ca0bde553ccb7e6874085f1b53d09589ed148430557cf5befcc5463fea5d73bcf48df840b7068deb932acf951d1fe5c08ff798c165f7dea8dd6ad36904baa6cb6e31dce03c843d1b0c9d341a5ca55911e94751239a1b3801b5edf908bd1faf0613a71a00b5fe8417c401d5a0b65bd49be49c1179525f22ef86135edad81640ab3ee7781d5f755e4629d4d2750b76751c8a3862806221155f76aa75e29425ae409cace3ca35c9438d7b2179648b7aaa84f9fe883cc4136e3d8ab8d84674cd3d3463f7df8d6bb341a7a9e6b0c896ffee8637570cdb8c8808130e02061b37181c6d7ca9a75a12682ebac65102c601a67530f282732bf6bd939f0071a4bd076626ab091db3bb46caa22bd4ffb357974ad41f8d7006b02937b748fcc6a4d16a3e996e7f7754ee3985a93194104a9d59be631406d8bd0351ca17baf8656775b5e7779c46aa680019e62ef3a36b738c8986378fb9358682ebca1b869fa5b3df2e54409be151b047c2281040a26b3b7ecbe5890fffdb1b3aaf16345f2a4e3516cd13500ae558198b40d1e1c921436946e5840886d8e4077528d63e2435cc0a377b3671055b59c66ed78429d4ab5ca413263445d6547e1e12f9501eccb81617c0e76a9941327efa2dbba65147cefbdadf02906bb2927ddf59fd8e87a52412fc586bf494586cbb2019db275a46bbbedecbc65cab717ead9760247681ca33d03246d81a7bffbcee5b98831b44385ed4d89f916f0021788286f42a5befa4212c57cef660187352813e3ed08ddb03748dca2288d3f3fbc1c95e584507eeff24aacc58baebd5fee9f1c9b0b933406b718c10ac687d4b2fdd91a9dfa29cff37683f46b1da170c35fd4b31bc6471f57f480fd53271a5b3e87e8627f4b6d739bebc0244ea591f13c57ccec8bcfbca8ec03b9569905fd151bc379caa70e138972e9a0bd1c6ac14e5a36076a42ae9b5c75811723c60531c4e8ea3c06eafc3789806308d3685adff6735d3c13313c20e66d3d2621268678094dc94e81bceb008b22c19c53b7df41151fca2012943ee40d5faf36a0acb4156a04382c604dd501cedbdfc20c0b992f6d6e5305570c69aa2470f12aafe27d0e20e0e0c4c6f1be9512d4bf22898271abe097f66f3f750e5f6dd7ced066698956ce8c67a7a3b35cae53a1c557c17a6e3b4ebb204aca47b63188798f0069cc56d1c309d90f1197f66040970bbd7cc663cd8c1606cc87a5e5e652fe013180e1f9db4d700fbd811a42d158eecd26efd4010c24d5cf874b41884f19c87a8c77c3c0f9a62b1142c9aad818c8a7fec68596f02c354e47dbab2b1ae0bbea6018d1be9981d77828e12c048e69e0c8ac0c2f19afd7a3044c1910301b969d43b181208e702d6c6174f2aa07fbc0789020078fcd3de11d88b8cdf12ea807d2a426633e938d01201b026074c796c7b5b4241bd8eedb97020aadc053dbf9d038eb17a2c34fbd655f5d3a6ccc3bc0cd73c6e0852e3c74b803c480536eca88a153113ac056510a9f8b4bb3485567ddd3a605185c488b0fdadebe5a6b7a7a5f6bbfccb7f14f4ec1615d9112620d1da37a65087bb338f9077e8d91465a7eb29b4f9e5f3d9ff4f9257ec2f4e8787dd0d923c99fe9816b9204370d5342a4f58da44db821988da3870b0de600bce5e91b46ca97fe6ad28151c3af1f7d3dffd89f9eef2d71952e44c9cc02f294ca4bd16b1b91ebbf59378b9a13a14644df12ee167e2b3a47303e3004798952e9c3228f046438ac272f6d2f58c1b3e3231492a1ea94c5012b978cf6335a65306d5a92e0a8ad62318783df61313c4dbad2b1206af6aeaec51b5a1e77cf93ef266c970116ec84536fb865e2ffc5afe33ff5bdc7c22d7f4127a55f3b1b9a716164f5539299305c8c2d44f9991bc673fc956be344af212f99ce2a0b1ce8eb32994c97fd235da62f43fc10e49a33e1c44a4ec25e53063398871146368460189dc5c35feba901bd0ff12b26f58ddff8e76c8347e943cec920f47cc2214a3e219b1c48efd3c108c520f6ca8b56795933fc41fd95ed79fbe1db8bf06c5e53544dd824618b46ea1045a3b2930ab9ccc6e986e4f30d93f982b9bc9049d802ed72996df6ced4204b2334104f6ccd4a7f17ddd13c61bf279b15f7342bec0b8a56b3636448aaefd6289b052fa728f8fd9ef6e9703fff7d026441419615778c791b178a6b6f0c4c1a2da7bd2345ebd4e235cffcdc00719badcd291d152446a6f16d0e35884409ba8eae577b37b01e091a92122395cc4e1fe95d2b4000de1b967cb98a8d78d826c7dfe1e75ce074b1c687d802efaee3c84bb42076f288b79fc4518a9e025b1ed9d33b129672cf9c2cb98f9a979aee516486e62cce614418464f988419f192abb47dce5b5a40ba9cd729dd354c5c8ad3a91e6f994cb1b8e76433898bc7f7276200f64c8aca3ed18475f78b19cfdeb5f4e1446c5d1d1cf77e6463b9ce7146ab3c9de5e5e8e975f045eeaed37e1a2b38f7a835b41d73ce764160bdd003ed5d5abec19748395099373717527495fbb8ad9d8fdedd95d4b0f11341c64ef5def9c0016481c7cba6119914d27ac0380b8bb4fcee7a22eaa562cc63e7bf7bbe02af8a154dd465f0b71a00c6e86f3f619bb15ebb3022d174bedf1dfd3644e96c45fa762513ea0900bf4506df793d5c4f4ea88136b3c0b7edb1781d66ba8b0b34e735677a0f302b713b0d8e0dd7416c4592faaf2e3d560bf2a90a3a790306c3d3ad09603a3992790e7a723c23b7ca86d70ecd0c34d861cf65a7bad40deadc0e3be19dfe5485fe70b4e94cf5c90f22fda418c4324f8935b2fd059b7ed60b244790845492505e5f0a08e5837da4b547244b0893a56e15d96fe80c7dbe980e0620920161e667af83993399e7cbb74f30957088ea20462de7ae637a028fcb9253bd8aca16fdd3f84779efcefb69abc2debe66ce2b94ac365339c9408c149550c3ecf83c94f8b14c0b87f7bbb276f6efcf5747048661dd6fab82c38205addd40f4515d4c1081b51eefbe549c69047da7f38b1dfc6ceb51b3dd68181467e3db2d311c283aa9082c1db56c8e25d62787c2534003844820d86f8f1256371bf855b2bfbe6db3cacc6ce3f61785cfe0d3dfd3204ff34fb22fa0d231d812bebff0e6e54d08859f2ffd6cb159744caa917a1da9a94e71c6dddda9e63c1342d04a4f9803fd60e9c1d9f6f00b16a0a1c0bd8d345544bf2feb15c5ee0662377a6c673e8f2e6f3c7539417924902950a2e4a753a73940cc871789bdc91b919d0db08c6150f086780773ba9543cb98b9d0ce79c9a5be1f68ce602434160c5f347d8fe92ee1ec9464474963c791cc7d815bd131e76745202e5f74e204135e2457f0cd20c1ed924da4c8c1b6ecbde34c15175426ff7a7cc24f251689ad2f19f29698faa4cdcf1e02388744ba720395882bfd63a060645284e27d4b2df79094216430dbde118af9b32d7ecf41055258e59982e801690b724c3ed2dd5a3aadb3bcf49d2a9f71386faee27be40b021cc0d3703c5d435c3e46dce5ec60595c415fac025f2ef87cef7387e2a8c4abf4ed23ca59868256e38de5095f857de3cc34cff587d7da1bf45b7dce9d08427059ee5dc87818c6a22f8d0ce7262c48a6dca42d2528ed8bb1d1873d7dbee79186e9c391dd8f81f3547001e6b77fc68720b7c88dc29c096a52d93a47338d4439afdba0b96135d4a90541b9feab29b06b694c4fb5348edc3b3baf72a56b1198f836ae1d3b45679143b6a5ae411627440d34e3864dc4eb214d2ec799478e1e169e183ce1b6e37f18877026d43600e4530cd2473dc1cab166da00afcb7a0bcbfffa2ac876c8e2fe591a47703420bff4d863ad6d8d77fa0bf278a976bda1a8d93f65586e07be36beedbac67633b4e5d6cf56facf09af6d72a64c58a8ffa8737d79be68067f5903468ac22476f029c4cfb65449b89f5d31ea9aa080b76e8f0602328d5073247ae57a620a04026205ad914202cc0103397938e6db2834bff73d45175418d42b12cf8ebf117f56180e7d933dfdc118f6187776230ec618204bd40b9d244402f06023af1ea58c7136576c5e1405c73e01b7cb4e1e164198605b4067837c0dc723b80ef956f7303a6a65f303df133d245eb4a2bc68cf946c08f37c1435cfc934d855cb484d12f2ee3215ebfd6adf7673be124c450283023b76627d9032985fa7a19608a7c03129b52de42431cb2735bb057a7b31fa0e194c85909fcd9547fd7ed051031f2e5f1588c15d9b5ada7841cf673ece7f43c6adfe0a55351d2d795ca656be6aa98f3b09d99c8819fff2b5ef591d9b3446aa0182a5a5e89063e4a260d65e2d752d6227ddf34a8dc8b8b99dc74bf3b49b301e8eee8287f29e080175cea5aeb91fb266034eab27cfd7c4d6f5776946c789c0febeaa73846e211eba7289f3e28baa114aef7dcd7782b2e5bab72f7d5f38165855ea138258996a53f67aff8f68d419643dfaedc72a571a84fbb995236bc13940f3056261695f0a6e60c36254709b50b66b197f7aed4265564e6082e0daea982d601ec644744e92d99e6200765d6e13a2efbcde58421a2cbf0d01bd6d0e9416fbf5727efe8e7999673e3e210f53a7aad15412cfa57fa4fcbc3b8923ba0504f4d5a1bb9f570f2ce4a55465bfca66009764825a8179c5b1d3ffd654b83d2177ab31a4ae591abda690c52d31c6ad08ed131fcacad409d5fe155cd82aaaff1f8790c668f066ae00b543979790ac1b820435b91e5a6d7575c5141280b0b873483c5e086f295bc8739c697c2a3e4fb2b080570aacd3378ad73e8f277804a933beaac1d30d0f595a9cc160a8555d7b8ec7c9d3dc376eb8e6d29ecc3271ac029a2d53077457224805c1925daa9fb12135455e8633609b1fe95f15e3d11b3f0e65265035c3741d5d989262ebc63ca66d30ac348a0208c9b4a6bb26fe6d7ad47f4c59447c14c25f1b220a49fd1cc595f38b75320e2735c9b69410184718a5e921667f9438838ab42c0bc76926ac770145119044a3f97ad2e968ca05bf010601ce28d6422f32ff3dd5912d887d12a3bfab09a58e444a1c63d6f59d714ba6623e2c4016894a6a892d2b8e2ac8150870827b3ae45ec5784466a9c90dffe67cb2f8d6dab731621a2b8c0113c5961a2dbdde4ddde9e22444bf2697f4176b914f9842be5a7e555a837af670fd17a7ce40d42cede463ae455333f24969fe32e4208325a6210278f7a6d6f22e392ef8965b017e1523903d14236c18c5a84136c5389cafcfd581e874bde99334a1bf72617b783048266db6bbe0ad90773dacd6b9bc5ce51086c059f6c5980fa1df3ffce34026dc3017452ff4d39f502d56d183d063e530af95f1497cf94d6008cc35136a68669295300c91d61d864596bbd9405a93e3a3900a4166e4ca40928ae7705b56e5424c92a14220df71f22dae23dd25bcc403287db624465021663a5fa8aea1a5adfc6c3c68be2fbfc8e75ca3ab37e42d89f3c818703a372bd49adef297531f667ef5c278fb99af279147f1b11d2ab5a5cd921720eff9dd2ab01edab6c9ddcda148812bc43b94dd7925fe6ac31b8da17383aff0dc730711f04f94e7f01d54826521d68d7ef61b150380f967d46d14f6d8f80363ce810bbe7fc2db49c5e0722c8882301b2d1b8570ebf5e74c089fa03917fcded89446389038386cb5271e68a462237f4bff84fff467327795588de35a0d4d1d5aa7df2419648f64f462d1523387d425e4fc8c98081f8692a1547548929551fa06a21c0cb6654311c28b9e0ddec01666c35d9e0a73f02dd7044415604240d4e57c52423bb39f580f608417c82dcd9b370b7f33b2dc2c4e74f8e74ea7416a9d1bf5c1b443e4c23fcb18cf020958864832f9ef6a0c7bc10218e1343dfe60f007deae54160b8a63c20b5f112345033f924071eb73481362faf158713d6537edcba5fa8a6ca9d0f25d446fd20b24b8a23649ac683c246839c2a91fed8325d2d93562fadf4d6d47455e6766c6dd24a3b480b0d632dc19da9c6943c61e6f5c605deae72c1ccd9d651592d45363f9247db62b1f10ea94d7b96db47a657beb6c2de72e5ad21b50299592d6b055ebb9c1d71c38acf8010e1586c3a1fe49d120ea4f3292f30d20d04ea35bf47656a9b73f209535c04336e672dd6125cc24a9c8156ed40a28329289f8dea2d271175efe2c3b9b96ab7b94722e03dfcb5583840bbb11e91febbb87b052899a1e489dfcd9ed1caaa07ae47cd7d70e0c1b55562a79ffc82f9055cf7f664d5dee0b11f7e71ee8cb9a2a844c8ba0e519b67205caddfd332386ae0e587a4660818e589b5502db93b62251192407f9897379757c32b4469090d241a4345ea9f69e3e1c19d4a11bedb01aad74533d47b97c824058573041adeda4ec92621e8b87ee2ab182cb9a9a5428f84d13c88b0f4b2ca3889a00bad432528a21008bd6ea2e01cb8028548ae7c6e89c745970f6d03c07eca9990d8cbdd80716f134a0b2eed7e81ea7a79b9ef9bd13bd53b80e40d99c47a940b48515f821aa80a7440d4b6c4704d05af61e230410a86efe547308cdb0f85eb739d301b90d8304c45ee96f9e23bde927917aafc387857a599c53100577be8e04229c96fc140e9e608324e5c6d3f53f5c7520838bdfdd151232a2ad7eaadb084bff4d8940a8bb659b31a938610fe1ddf8a6017fe4ca07a465ac8e8f075051b002b022fa9bdb67a6b07174f821622376ae58470fc2beddbe97be56a4101153323ff1904d7dfba5063aa5c490adbd8722c752808e4d032406762a9d0e61dc2aa65d2efa6d1665a264c563fb1edeac1d6cd268e40cc146931e035240afa8f8ff7d51f0d7a693fb5bc18227996b252ed54de95f3091c48367162a83e25209177ea2536b9b8e46d73458deeb700ffa1a9022480b439ac4d00bd6677445b32783963f0892dcf86b1c61fa7ab5d89fbd9db3618082815c68a4997d1321e136fb9f06e3e9b390971fbfcae62e2e518f78c0be3d696de201a826d7c7042754bb5a702cf9c38f960a04902b95b1be075013914beeb337219bfda32fd233cea39703ebf03f03cbc454f2c0be95837dafe386299dc3268b850f24ddfd1a9265170cf101e08f22ad8375b8f9d4c64aac809f5c9e73ff75cc058bca61495d0eb34253c5cdd67908b94b06bedae485c1129d6917a03c58d00d3a54c9a7708e87dbe4d284cbc4420c03eb6f104b57f7aff1cb7ce1e45bc9787ce575fc4b7ed4b980f3c6e304f255d706ac18ad4fcd77b32a575e3234a65de567a2b659c32538b0b07da545caf2b30e2cf026c20680c006bd951df722fcfe1bb39261c8d2c6a2344edf64f85ca932d76f815b9be52962a39fc8648ee1f60a15a6a4cee0950b346ae210536ea1b390f1345e898b042bda023e670e9156a87f3bd765a1d5e73de80c92897872adde8baad2953d6e9339fe6aa30e72f0771a6c10c1b2e72bf868bbd5ae4c20ca5d773cbd6a3a4aea166a1795ce7a095690e70522f23cbfaf60e8464ea0c31561e0bf69c3e0faf97fd532ff739b48b1d1801aa85c80235fb5d05ddbca047743e17123c6e2ab2fdf38c410db05bb49bf6ec5ff3e714bf365d4625b82065340aae436d3eef4e34d47e910e27591b13fb3dae06147c5232846f778b4a3cf9eab52e09116db1243afc31f386afe425599c440cf6d1d4e3c03dff041eb00baa7fe48bdb5da14bd1b0e7201a7dde41eee4a4429034e14e94943e6bda87b682d92e4275bed90fab1113d025e6016d25f80df41586f65fa4f1e0b61ee7a79cbd1251550750002a357a990be25a1e2f1ea782d2863ea23f2bdcb91679eedaf5c0b0d8ea93b3ef0720c88ceba91b52d666a98e04bd8b688484a44caef7cf70ac862e8dca6b7d1834f1602849d98418f99ab805bc064a51f909d47d40a7e7715d5b163d6aaf97bcc62cdbc579f522fe2a34005e00f16294ad59668901a61ee7f3b2f5aa7deeaad688330cdb71b87d17acbb41a3f961c957a21d2e9e55d7c8f9407dc061482837e3f7af633f18da1c2ce4485dc85f1cb96be579fd180dc918b4f8a26883ba79e985b866aaf1b6b35a01329454dab469c10cae001e9f9e1a9077cda9eca940728e932720696d5a1c378bdac27ccd019367eeb8614822cb103d08987f28e7864ebc292dab88b8b31235290f5646103d68c3300fc88804a5af37e164d7934df079a532ad86796ea0a5a87e2b4f866c1725e55471285c68007ca2698bcceb4c1873cf8f86359659c6941c2f5a8dc591f70decea408d8b6c1caf83cb26c5f0f20487e2f645036f07b94fcd328b4e0eb8a22bc31b76fa240a5ec8d6a9d049e741ab2ac228abe62a952aee3bf140ac0ed53bc01aed77a75283e25dc99292b11b32c6e918c882dda5a6cfde8e8a1139ed3a74c92035f18ccc20f263ffb458149939b8d53855788e8dd331f3eab7fdd6f469901f42d99976c26fc597400303da9734d3cf605fbc8791eeccb11396d2628a9b05900cc596a75d051e356748272326873369c98e2e71b3f576fee46d4f0ae2c72cdad68dcebe07f0253944052f0538926bb3a614a8ca521e7354687bb5dbb01a46445bc529c85bc278d423766828a513a5c01f2e04078ad243eb09aa4db58519851240d735c5075f1b4457e37438ea17d4458365e6f082f5320f4deeda587a71964ec322876c701fd2c85a58e7642e683c941e0da66c890998ae9b06678e5f8edaa28c047bf0c6168b25a23c1159c2448abc9fe18a5722700f64179865958c76d16ca9ed33c15a13d3dde01e1399871540b503547355796340fb6e744d10b9594efd33eec7dbaa15f4d7f857013144d5ee6a7eb66f3c033e3d7d6b3f75789bb4c1de8276c1ff794fe8fb36280e70f94839058014d950c22341ed78b95f718886d7bd67ce7b92dc23957eceb09c17ff79f6b2da951f6938a5505a8863407120ab070a64aa22375d5ee83d406c20891f7fe6a5baeeab4cd965548df6320f1c8f9b1c49ca1b6c992a67997877d09aa5f7dcffb876e185b9e699efd423419d3de7e026923d55d3cb4fcecf80160167e736db8c956f61a4362cb3f61fd8f62ca6e6849e2a2a9ba703b1dc99346c096ece96940ea222d9b90a76bc8efd6fe4c190f1e8ea0d111ac826b631f48eade2a85e889cc10c7497d1ef1a01eb7f539e7d771cf22ef07d2abe8a3d59be8819a32d1b3dca65d0a1233765247e431f11c0f66eb5a87c9b126b00b4d0648bcdc9d6be7ea8a33b8e6b842c063e7b2b71bdabd757de773896ae688d3ee1baa421326e2f8f57f00b8cd2bfba983f7c6956e3757fe4389bd7eafaa7023230d99093bd9cab1a938b42140aab0c2def96fcdd689f8639130ffb52bb1038018d91a332a3fded6da52d5cf18bd7cd9cf624b0b90a848803a7d9ae90a975c3c810ab5732ae2bca3d5947821db5e61d203ba3b00f658472232295d6684900168fe700607831a5456360a2d50199d372e4ce4365095d44873efae88d6220fb02a867b9a7da5fc5172fcc17928242f60b8c53bde74d5bf74924f975a2947767460035758063ac16dc158590322a1a67a95a53eddba6a93d106e052c6370f798f1d2a9fc88265d0c4632617a50f598af4d3a87d37d05a87f5d6ba45c1139cddd18269756ba7b6618b82ff36e99ffdaf127aade81186ecaa3134c30168c7c7431ca3eb078d28d95052326b9c38adb3b83a99013149987df619650f0e2f4cc675171b16b3b1aed8db98af650868ec69d5347accc9eb7f562fb3492a67554dbb11fc8e1f9583ba5bb99b20c13826375eafb0ffe4f3a2b1b0e945b98f97c09546f068f8ec701142fdcbbb57b4d111cc0b4d2ae852838fa0bcdcbde0c683f4fe0437c02ca64e95215f0f283e9f0588af614a8a5c5f56fbb29a27c82a8300ba5c17dc2dc9b6e170749b22305d052f106495006a7f94be862295286c473dbd7d0bebdce4826859cb1ce07314404ac8c7d576ddfe606753579821a5fe68ddd5ee0951054c7bf26654ed288925ff0ce79494803b3129c576006a18f426bd5e22d9843d293a7b1e7440ab96524ee8e46420fe66cf82a548161c4e198528211a19f1a6ad60098fbb912d89c2c85092ad287038fa17b386b5599baa040e8dc60965fb582218f7dec561f474882676050db315f37e1e4d9576bfd15a38fb6c8c6d5bb5c0a7d87ba188970e3cae1a7d6376c739a18e98d3cea1f7dba1bebdc046310f1671dc66d8268f585f020db01fa3ff8172cde7e75e65ae56adbd9a664971be9692f55b379a2903236a9ffd32702e6879e48e219556b860486119145561f64c591f87e96bc68636a383418f235d3457e4b21cf27cefc7c7f3edea4c1f6706f1018db196f25524157d3c1ce1626a2f7ea752cd16f80e7d55a0b2f47f8d5565f5df609ec125887429daff633c01d25c1e5325534b29e7131c6b01e3babaa2867dce0e861d00dc5a8d7f0d8874e81d423bb4390c09e74eb2913a475b2c04b35aebefa5bf3d6950d2e512f0f080f1653440e20b61ebf287927457d740228015e31c838651b4dbc64f9efa17294bdd42847764d6cce26a425a18effcd822a4f641749df62f93d1c3025869a611307d51e6a14517e5aeebc4b81886ec7fdafcd78b8c9e631ca57ce90ce25521a946129656de751f10a04ee81a72e3bd648663b59808fcf0a540b5521d498a12472085ef18674b8ef67688e7a365e2a73bd4858338a1a76b84d73dfdf7eafdef53463b2fcdd785cf54571b8809d83ba9d4a09e5dfc01e2a11897dba77fc50966eb84659006d2a010673bd5a5340a62179f496c6b203e1b6a627617635b179f1a354df2f60412bd0d9c5e5001f7b2bdf6d972e382cb95f49143a8075c717318392b571e19d0320ce468c6fce59497ba9c4968fbf062c830952d5579f4fee4a2ecec21ae7464753de4f6b41bd3ad8766139bc05a395740c3ed6c655b472926cc3e3cae3092be72fb1c84c9e6c3ed3dcdd7e476f845cd467eaf40ff62f6b2d7acf31cebb340bec7c994d8a861c337500defedda36a86b286afdb800cb3f919d3f58984e4895dab7e753aaed2d4069c030b81b8e8bd743d603ade395751e02a6f0ec05a3688362e7cfabf20c032709e6dbb43580e488c0dff8d5a4e801e860b80b5fb8ab19374585c470c9410b9bfd2b2cff9572d5d674e2468b6760aed99bfb489bf55e229b35f454230abcf820b66ed6ed459c43c5eb3ac9f6eba9ca729419a27c89528bc529c1716e24062185c5a469e0fbeadfecef4ebf90e81f244eba638c0de310d3af99c3c3a7171b04117a18a226e24e6ce011a4860c5e4522bc81ec5905a1d9a963cd8cdb2fb5e6d4d5c3a4588dcac410fa6097dcbb52da06441435f97893f156a72bcbfbaa13b9882bd1306baa76ec11145912de2a85b7324a1a120fe399f45d5278a4fdbea7c26fb22023daef1fed5ea5c9c1e6c8fb223d19744fda6154fcab8dfcd268f36275d417dc61863001ccc50028511db84e4b8d497abb987bb8b2e61aab9de94d407ab660d6fe1ee0e5c1cbdbabeb2a4c19f1eb246fa405673a6c0383817f071dcf30c7d85392ed67e6956fbc4100a648745a18b9dbe7e0b160a8329768b62fd822e990435b929833bf08841f4db2d18f0fc1d6c861c34be50105ee1053d6d504d30e19363d48cb327a06e3f93cd3aacf329fc867b8c1304b324888f6004b43e640479887f86561f79e4e49c820b5552f581dc1c81e25f9dcf8b962a448e81b5917fceb62dc297590132f25276f335f37a3157ee7c437af7805024a6f8d091bf94c470a0292591726c8cd0b65c2940b7cab32126101b575b648585c1a6f34e20eca000e6ae4c869e632b987e9e3f9345b13eab2da2c2a8a1943ac2840c4bea84b87ec0343262502a135cdd02cb85bd3b0e1c70d87e91fa37d172fc09b51cfe34e60ae6a05326fff92ef3e0e0f72bc5e8c7aab0e1ba36f7b72b4926513b1169f0d6e5f96f8405d4f0288c0d76f96883a1afe0c41d1f17b1ee988f7b97d4272bf3f548a58994bbbec3577df82f9a30a07431cb08228ccb35d009fc2b5393fcc54b4292d0b5448febfdcb5f2dbc2719c8e4c659edd76d5e2ff3db0ae8c74b7f3ed4e5fbc72c2e079a9a36317d71f0c0ddac42effe688e1b53211e829aa63b59fda04ff8a5b64f0a7181447658bcb46f3ec9d6ead3e5134343b17354087a1a632b8c75d0c9f484f015b5ebbd056789f6a2c5056a2ba674fc71a2cf6b25626efc1cce865b215c3b03ee44e395b9c163ad5a4aac5e215d5b98dd17d3423afaaaa76f25da65af4dd076fcadee487f82a6d2d9f0631857ff9cde376d48257722f4a0e2a1b1208a535abb736480bdc8c1e173e9d569ee6f5059903fba367ce951c6c7c037aba69ea1b2aa8aabdefdc3da3ec0def813300a6513e8999f17255ccdf77f5df1b00bd3dc064307a834fcab055fcd1cc074123025a7f7acb44f17118787fd0ed33d0ffb6371853a6ab745f5852db8d770acef00a33f44e60fdb8e6fd3c4ada9714153fb0d1a761ceeeb920a4ef4bee9161f4c7361cf1086d7b5237560c6981e19e60bf46cc6b17dc8f7ebcd5a22606c2de0718c91ea46f614a761942a91b3e9a4696469702b18d4e4a09db3b9e5a3020af82bfb9199808d3c0b10f7b0c46e025fed027118cbe130e6c25ab7b1918348e301491afe10834dbc2e92c571cca520feea29488621e840aba1aaa70f7e366a21396044d1ed0e1f038f26dff7a95cc56801a6781cc0869d984918c2f8f09bfe1af2c9cb9bdbecba439b3609e2ed1c6f19e9db9c99d8ba6ed80257cd25dfdf429019e1fabf4f72490c5d32a5bd46cfc2019a5b79866e1f53571090a7de455852ea7003bb8123b4d734b760e06aa8c98f1b2d87bc84af08ff6954f93fcf72ba6fb8b66add6d0b29091325612a066b29aba77b7180d1c2456e2002ed16194a09a53282410fe5b0811a8c74d6a8864432e29944db242b032a9777c7b34a882e8e022ff6b97ccaaa502f73157e368315adfadf7e9f3234c556bf3f81cdc19660742383bbd85b9d74add4bb87384d6ed3e0d42f454e397788198f43703477d47f38708c4b1922a1d55cf89e06bd07ddb3dbb6b24fed4e5271e09498324429bb371f4bd6d03d854744021d82b90e0dd5bbad5283c98361aad73510127d19c2bd4103c7d21234d80b911f9a27e35321262a20d8d81cb116dd0e2d012ff8f78166693e28470af972a6582bea82740bf28c921da8eb7c6effe9e5cc953f9e3288304bcab395a312ae4e97801e344a4ec10164921edd6ce047ab3fddb4628f38fcbb299647ca412141ed603b4a7b091ad96a6e40142601b49ce0419d12694ded66de88b759f1e1f5c06ef112bc02b972954a8faaa55370be1ec4e1e5a13236ae3da30be6f8d833c3d80b74a982ae8abefef6c23553cc597a72dc87692d123eac7f46e96c4647bdd52775e406a57931c4d8bd79e7125d1a7a0a21cba3439c4d18d54f02a0ff5f6e1dcfabecdcad09ede67f972ac49550a9f9a85df7775ca76d387d78bd9759005c1db19d757cd078e3b12a11d031ae626761ab66dbd97a64b11cddf9722cbed50982cf8bc242b4809109a6075108db4a95055f28a1b4ebec89c49c537411d76f3c53574afb534377015c3be5d329af5d2b51e7b025e5f47cef369aa03817a63e153dca5888ae8bb9ab22760c37b0cf14fea9cdb94de936247e1ba1c22f927573f897dfe63b948476497ecef07d3466a8a3f05cddb52f491663f30a154365b78c89275268ed928023e4c7decb2e2b6ce43bb4cc6083307ad90193db83745946da1461391d038053c5a04008a8a266c522757ab0ab472cdc10a927df0ec6ee756e184850f947d0ed19214e2253aa3c3f74c23afdbedea49ef14b5fa8502ba8e6a78f2d390ad5788ad9b356a76e9388d0bbff9f7c8e3dbc1dd7ca54bf47c99f5e78f41f7a55dec39d053b7f016adeaf64d7e8ac131d3afa0b57743e99d6929585a0d192c535cb8d5be7bc8e9017895f68ae02829dd0fbbe99972264a8e3cbcab748c0e323ff7dca343940dff8bf8f15b90454abb4953450adb50548e29353c61cefe0f4f4ce1aab25beb0d070756675f40e39d01c19baa4c37e339cbe9202fe7e9f73576115118b2a7128a53d76318b232cb749fa6c6bac3b8330cab2c7e5f4f6871c48a4f4a405accc403ba2b836db7803f45b5556316f5f0f485255a767ce95d278f74051eb17d3ea8ea1d76df4f108bfba59dc094f651f95096f5655d9b04b82f2567db803e9e4c4d3cb43b265d9d046fcce6b731af8bf04e78b5c0708e926a6d8f9e2db721a47feb3408af3fc2e90bc4ed1225de14130f138ffe614dec43b5bef0becc05f13413a97c0e46d689ed6a07c93704227adb6c31293c81e5989a9bbd7375f3159b19a753ee93f2a5a1beec945af51e13373be2188700e20937cffd2a717985adc6f644ed2d70d6a2156d903f1ade14ab1cfc3bffba19db67ba4d8073aee7023a067329faae0b1f5bd552c8e2f71a47cf1ed4d577b9425ab822ba9d679ae0dcbae2bc580236ffee55c3806080bf2d76e147aa3217b169487fc3a33d25401f768eb5eab17d03d4d3201fa6e2095287e7bf632f9664a654225f736892a73b6a54f860b65a62fd93a0b709cd2dd36a9a3f8a9bf429194f1f0e986efbfcd3585ff1cf32204a74202d5627be09b9cf3409ab11d5482db01bcd94477ac2d92abf3d12aa75b223f06a2762f8b7c22a737591ec6d679274e7dbb402ed6eecdac6a0a6c77010d3c487c4ed548dce89704254c6cbc117ee0725be13983206034cfe491419e04a25903d5909aeb1cfbcca1c4b08be0f22f4faf1b30a70bbcaf161bf45e4233294dba860fd394c45ad0ac73728c836b6c1927d1b26aa7a0e1aadc5127c66d994c5446dd58ea507175cfc40b339c515c91dd69dbb01c1bf6815310d00478a4c91d211f0f834139c37acdc1f0fae21e140e4f8319e0246bc4eb053478a9d79287df21f7f7a296da2305680f5c8226ccbb6d704236086d3c7b260e054a41feaf1caf33a72c4c688dee365c5f7e01ecbf923b0cb71468dc22f1b4ede290438db001e4e83df01b150766a10fa4e759a2623ebf4e3955f7def38a1cbe8223211238241a5d87c781294a449af5d319a7daa8166c54ef4ec03b5f68e3532f496f4797146ed4ca73267aeea9ed03a0903a04336cdc99f31b1e6b9eb6a311c1ffd13fcaabf66a3db3a755084ef88e7cb716fad54c521e181b02ba51e0189644e143b74323a4c8504191b593cbaab6099334cd40116049e758d40196d678a6a5df0010ca075a4cc8bdd415e2328990457e2e93657e72377574b6cd2df41e93d195bdd3a5e6e8d8f1b65459dff7d38d2d2bff9ddbfb3883ae54f7876e252da0313929f6a64c5a9e48851171fe286218605af7e0d2f8fc2482d7be34a7a2d0d18d362b111c5a16bbe894d9eea96ba3248788ed7c332c7f19f0040767eb10da0b812a3489b40adf22c7ee7a3c4f5e6db2945ec0bc3c5f5b1a3018ae428235feb339e7483f4c2e219ba961e347d9b457f9bd1298b42d386c43f797442b227f8c747bdb02e8da8f4857e5e8873b56c86884f781d04cf9bac0e9947e2d784f78dde1ab9b87f9431f1da69c03b3033e9abd24e3da6b5e04697cc616a5bc50284928267fdaac5c805cbd7ea64fd77447c65880b74555e38ba2a300da97d0f6a7fa5474a27569791ea762f8a7244aa024f9e0c7e14fbedd3b7707ce9786069cce2ec8d8e3dd557ba96034b996a60223f1756c92aee7b364d63994e7a344b9b8fb73b4e024d5a3ecd804e97f7b8b629061ca9ddaa38aec564c4a90ae3cb78b13d6bee175746e423ced7dc4b847628092e26e41f616a201f45d777b7099722d5569d96d0551cbcdaba8515f93bf266325f24361c4fdd54efdb139052c8c64445c16fa8158b295f84875fa671e0720d0207fe7a3e6f4b7fb92e985ec4b924d85495bff85a239406b9fcf6c581f035b39804f4c357333a772a275a2a70596f1c4566b0352966baef9052af8fd17f8b5bc9bec7cb282a23ab070c3df1a49d48a303997aeb7a38c9bbec99b66a8af4066cfd16dd76a115e4d85732166de4f28573c0e457a87e606d345e09a05df376de5f3318d187df8f40cadb29ae2b92ea03804d2fa05583c43605315f16cb3d61aca67389086810677321ea148b18aa7c01423ed0b10ffc1d045cd182240375d0b2c1bb13ff974fc0a931c202895f511a2695ebfbba29db16cd86f4a1e382a5cfcab59d38540147884264f1c62f6438fe6275791ebd0ed5034ab0241f67f4d4f15f36fb41019ccbe707ea24cb3b0133db0667c2c65789eb77e9fc74b3d0fc4d3561e7695b28ca111e78a620f591ebb2b94b4fe3e9d03530cd332d22d1e99bc956a07673882db4f0018ff77ec1ffa2af6129727d4afd3d1eee74ab00ec5792f7f10110e85b8c691cd409f0fcf890a62b484b4ff5917afefce66f082642724fbbb3ec13da268d4fef584b34c0133eb58bf4854652b970816169cce6b2b4cd64892f9ed550f37cd3027aaf180879d1f3c4813eda34bc6d9558b2905891ca29123b078f13047c34797332c4f835e5f1e418387e9a950024920faa5a11869749a48c83bafcbbe8d69e1d08bd50f7f1628afdc8062c819e89fdaefb1ec2484be0ca0581450f6f14e5d7b059c193b40eafd08efca82047d5e5baf44f1bd682d07ada56d94772cd9daf7befc4b410bba12679cd266f7e98aac90a6ec1a2f4849a4368c182fde315a03c1de2054a950ac314daacf6118f26bba4c0da36344b8cf5701a6f7628ed6f3511eade5891e631c05679e141d031e689a6d028e840032e3943eeffa2a1d2a2fc59fb20d66bd06599d4bab76d0414821471e1432d1aca0dfa6248d393e82d295c20a8584eeb823da9e5a0f24f661eda8e55f51f13009e42c0ba471882a8688472e29ff79bb34db9e8eb9e295e99a76bcc78080ba94bb848ed8633c31a63d4101f1d77c1b7437a96bd2b5fa8f55bfe6676c1bef83f66233041dd5d16bded7a490a1aba196bab365f3944a4cfeddadb6203b8230094706e84cc4d91a4b285a98cf9b554d4e469907079a1e327ff9326555d64f4e423e70d13c944ff5f8b3483a91483683bae8adb06cdb55323e3d952eb5eec0ea9a06ce75fd3b96b75cc95dfb13e93d4dbb4cabc0f7a4006559e2b12f0bc4a57cf013af3172ea775dfaffab4eb69042a0542cdb4b0cf9158d9259d734e7ccaa717665301b698a69bf9df0406c9e22b6094230076075ed7aa572cec6b45e89fcf6717f021c90ca42b48edc462289ba9cb76f742a9bfc4a9fdb8219cee0bc3755d4d75f0ebfe9eb297f99383448888072b5dc72e9fbc411a5737a6b7a4869b1c6bfaffed90f6d6dd1d67709c02a8764e1819d620052341f5990363a3976e4d2ab134d0ed6317ebc1b1e950d0438949d6995330b5207eaf7c38310db18ed810def18bf7b3dcf97e559751fbd84627466d8dbfeb11f808ff623fcf1b33c79a6a07c31394cefc857361a4af609a6a53bafa5d932d2baf85f389ce9b910a18606054cd1467bab31528f7080d3bd0f1dd0380e8937aa344cfe433ebf416f43dc7e966c1b04416352f1f1a39b61437603f9bf82dfe4d0e6ed1147f3df08ca3ce0a7566315401e17c26da4c48bc5c50cd0436d61f9bcbd12ba4645df2f8795129422b04f7550719a52b149e6a7aeffebf22a2d74b5e671ab5ff8bb99b0655cefb544bfca0acc22aa396c2a65ea196f68974827b574e4146e4dc9ff41df3104d2d6e9215ba16e996794858d16e0ba73f24c226890d838b97c884be3c5407a980c84d71a38736be4de2a189cd09cf06801a0ea1e4b388ca7fe730176876b7f71326cdab950a08f929c89464738aad0befe9bd85c9cb7ef7cb0061a602fcad801d6533b2bfab0d4d615f1e71488ed5d5db6ac44d2d0314ed4864b7dc0d4cbded5530b6453820eb7e442d8c8594a2c4b41675b1e68b8459a8bb24cca58eb1e0e97da1339942456d37e6032208db712c7411c2089d4961ea71f7749e367624e4ae5d7313ae802cfa03edb2ebc84e0fcd15ba92787e5ac9b388dcdffde0915705726a3430851d60c2d39610edcf4a0ebd9a900d3e075111f6f60e5780c5f8aeec42c4f096c1a29ac3226e77cc97a4c46c8f29da98ac13159a16a5f3d4347a961a0242383f65f10f141cc06c821c3dd435d14b388caf0e0c454723d930fbb8a0987f4b930aac1af46b8f12509de88ce185c9ad6bfae75895ced4fb442102f0a59008deff4d0bf18f2b10159df4a5f7ae6cd882315dfd236c4afc65193c111c9f29a56c9a2e9a8a8e5d59bf80d3f4b96160030cbc72fe29cfa19cc73370294bb9d0e32321c95c76fb527f9501753b286b0f66df4959718fc271c1eed5b812db3eb9116bb408ae164b24504a4231768f99ca1673899254ed9a8b667d0e6a3acc6f7121bc09a5a5fc0174e74c0a1a3043535697ce35e7d618e50c7834a6d4708d7e72be7329d04479f2eb6bdd9005b7c019b37cbe5eea3bbc8aef49290f638c623d779a1e4f7dd26de32056cd6c431034432d4a12e748bcc856008e9b42d13ca829cd90cfdfcbb609d59a206aa08e413724e5a54f6427979b2192df168c3f1ebd02f5a4d3dd8740f01098c2fda0380f2e21b6e7672d3425b320d38b04c64bbaba2573313785f0ae3a4379043f789dc929eeca8a90f80951ce02a6c9d8b9867201effbf7d6306f479008bb3cf1b2737cc2abf67f2832ba2b1fc0cd0c21ef0517de0a5a984afbd0791a81bd357991366b86b1eab58a2f01efedc17aeedb8ba9d0137f095a8e8fbdcb1a55594da6119aaf2146f065788ca831699e27be841eeee7eaddf37acb83730b848f500b7204e47ced5c83893cbee81166f291377473cb001d9d6bd81b56b088e559206976bf0d6ee599f19f9d60915aafd5310832187b3b3a347fd195a491dd121e89f031a3c36cdabab688e0329b36db3fa4e2e8a8cc55fcce6b4d9e82c7697ea8eb042c28ddbb546f121d8377633322b24b46f441f39547b89167972e781053f143156120f640586b36ef099a83c6256e84251d1f842dcf0016ae2b6e2ccf614e1f346898ad6dbf2b384fe61236c372b560a80444021d05913c292fdbe5adb14eef76527d2ec25562812983bfea61bf5e1b29d8368f6bec5c398aec2a1a79489266ff73905fd9151119302268214d5b4978d2f307972efd599facad235935db758a468843bab0141a13306fe5066dd197a6cd52b2dc67b5ac98379fc6225a8e95e50596ea45ad29d8ef9f45de5193a9f2e5805eb8d1efb3cc084186f306a30bc7ff83750ec9b0e4f65ef0109f5236a73d653d145b9757285facce03cfa057800df405d9c11365b6fd82cc63011afb1d97fa62faabc6e9a42d9b58f59c502ee71a563c4875d8b18c082e66efe730f3d61c848c03fd485648291b3a5c59857e1dd0b1ff62ef40c033a6bf6debdb7873b234ca57693a61a77b6b43c68b90d60bfc14ae5fcce5d6d0949df3b90dd38f2b436b3a70b71b193446a52f3683a28df0e4f58f73756c53f343df49b0708b8fdac29b6e4b4ca3b2369fd04eb239c45fbbbb070be838981846011d5d9cb41035ea0b6acdc7a04732873f9f0a8bdb9c2c56bc6489f0bc80c03f336c0b3b6389757d6660fa0cf891d7bbf9ecd7d321a7b32c79d570062797b443d0e138c1644c44d6aa1b817330f323ec351143943048896b14cccbd063e4372d53a0629b67ca24af1c58808095036b5b84756ed4632bf13d4a68d819142a0ad5bdce09e074ad73d3a0801e818965fd7203c0c3862e56c762794eadd5e7c60faa15aef6849976f461a6a202d92c4f37de8d0550b66699efc398ada9e906047fdc3e69ccaae0c5fe913a000763f759451f5c55c4db715502a90a9205a93864246e7d3351c0e7f25dfbd2f7ac1c03ca65f2539f538a61e424fe3c6b587795432b252d43985124e15b59e5b25502a26e84caf11d24cbb2e88bad80cf1e888242928d9766a2ba8f4a598056da248c8fccf0e2813caf3acfcff2f90f27a17babb95588f533ce0d92a87b0a03a54b8859f9243a3bce8cddf4fa1ba11ec2f1977d96bc70c6202a7d89186dd6e380c969de3e4a716c6425161f0b229e50ca6bda74e7b56c98994646c0aeadacb39d6b0c37c62d7faa55a61fdeb90bb7743149f07b722f44e47d1afddd52133fec01a4e9c76691a8bf588cfeed1351c8b08db710d7dc6f551462b0e0a767063a76233a508fad271bcfd6800d2c06834e7122c364f9a891f41f9b66caeb43ca819c36ee8bfe3193238efd3359329c14b2285c2b3bfc3030d7eba991a613c7a9d8316e93e9bff6e4f9abbde361c73de671137852def9709384129a2d11db95be39b3d23714115eec5c589cb8b778ea61cb7338c60223c91fc70b390d4d8a341e420b5cb6019aa0e9b4b6d90e8577eea2315e019bcf89e67cf79754baf1911696455b0137f3e53c1048040a3ac69ee6cec286b2368468762888dab973021d23761170adda6e15a4d713e2f83ffe564fd953163823a045669e9f3f8a674b28053c0b463f887ad7d0901b576714653033ca729b0fb4c9b1aee9e264b77a0e22aafa18b0935f6a46c518e430c34f6b034c1fc773cd82ecc0dc33da8f1ff6a29e215af31ccda7322b2e2a71bdc45246d00392f8df9d875fbbbc374404624833727f0b6604aac2ac844eb9b28c310d620f0d62f2741a117d9355956affb31268f045d1099024d8ed60379e4dc533d945456a608a0aad7206ad3cc7d92ca02b11e5e1665cbdd1d0607ee4cbfb1003d640beee0897daa3f117af82890c3aa6d33b555971d6e6dab58f8d73e33e895b6cd3cf36402994e02ad71a46de52ebe0aaa5c3ad06e1f5ad9a0fef1b48e963922ca532882569ef3b724b9c80832c61465b3640ae4952d3d0aaaea51a5248395e5288a29dae87d825943ffa2ec9691479f9b58412de214b165b3cd636139ab702d070b257c3fc2aa6ceb39bb5923adad8cac9f6f30ea1496d09e592c309a76b4ca9ebc686e807c67045d6cd67b485698c54816bbe4f2a50297431f7efcabddfd59355d08ef40be51e1169442ccf6f3d620543dbf1a89be1090e18acb131b21acd81b84cc2d1bbd3e20b7a1614e6098e252cd2cc7e37371a8f2e8b00872cb228911f93c3ef2e21b0cbac7a28e32d523f97b63202ac4f4f34a00ce843f807ba8cdf8daa64119f682dea2e610c27a6f42c9c568dcd436cfc13e35fec0e4598abd654c17b7580c96d1e85f46b36414191b7e32869c330291f4ccda8073c57fab2b7df898546eaba16062ee555ee964f861cfb3594d38b6a95cb33320ca5a9448d9423302975758d57d157b15617b8e8f9f6a6b56327a1d8af8c3b2edbcee960b05aa949ee36639c0968303bc6897aa2d69805805cb12adcec4075e1efbc3077529443197a8713b719f140bb82cb4c1706f702207ef8debae5ef98a7a2e0150625cb00678a092686aea297d65ccd983babe3b08ee82ec743a314b1d5eba5537ba41ee8658fc840e292b10ce40488e51a467981029daa3829d13c72809def343d878d3178e9b1762075f926f8397a62561863c26b6617a6107599faa3c1b35eeda04d108233249d9bdc6070f0d2089284d59ce386be004c73032746d2a56867f3533f74b1c56b9e03c19a39c0c7a04681b4af675f2460f445d9ee03e93e68f3cd0faadb3d469613a1fab51e57be5c047cb2bda9ae45b656826d6adf795bd83eed8b832f6dd261bd74612ce11db74f66565bc84adaa142d364db8386954b1c4a3ddd4c676101a553f4abefd097a1c00940ebf612d3491dc13b73b1324fc98845b4fa514a2e9c4cf35284e9be66f2fc10165f053ec3cb0dace2adad36fd1647006b113246a901425d448273e5056f89140070bdd79e7bff647cccd60b9ce447891d71d3abf69ca75cb8de28ed2ca119cdb642fdae75b055dc663307e25ac25b16a936b9933922f898c74254e058d745df3edd448be0ec8047c9782698072c78758887dd814a72ee9bdc1701a83b89ef45881d0ce29e9623d0adbc5c933120e1eeec9a2fb54f4794d79afc353a877e58f9fa016c0989661cc294a20c6a4aefa8e0fcb58dbbc86c36724e33bc4b8cc0eb9b42f53e55d08bc14c45fca6062c5d4f9deed006fe04743437db62906bcdd7b22dfff8a573eb661b025b08aa16d0d9f91264f535c2a25759424de89310e38649ddfec5f64877e3d16636693d2921ef8ff6f21217857efddd2dbd5256dded71cdc459fe192fe35d02c1de5acd1c710743fc6cddf104ca5efd7e1a6f8d814aef92a797c2cdb3baef57bd0ee52ed2b42db28b47b43c19e19513220e079726c32a5fb9e7e7c349268df38decbe37499893d2c04ba74c65b86cdbad9a253c61159d5450e93c7dc68a8a61f84874b153d53d58af7553ae8a41d0e47d59ee07b4bbb0ce337b5f250dafef0be46196616f0de867821bb004ea3b85645500ef1a610b1de645f7c1eae5f6c6f80489122321045ce4f31a40f2e2eb4600551d74a1ac508c887b301fdc8571d22f71d74450d780c0e55eab82c0aaaf5177e7682310c0d24279b837c515fd6fc2ea2a5288f804ed6b8ba0dc8e60b4063bcf404e6c6c295d497dc2b10c1cc76a46fe6d8fee43d2cc282ade9e985dcd1bf11ec9a6c83312f1ee957f6c57547cd41e2dfe3b73ffadc576a92f707e9b7556d1372436b41e55ba18f4f264ff059f52969c04f44ba29af61113a019a6ee2313cec646b228f475198457a5d1b899bdaefaf31f7a6e5db659535ad564586b9fd687e5cd1bf098d344f517443f5dcb6fe98fa20b80d0cc713fddba95c25b7e1d75ed467d5527bfe35648356bc0fb8104155e22b51e4a9db1d5210ffdf54cc0c956ad0971fa6c330822fa7e527643a7cb2458fad7fff49bac6ca231aca07b99461a173e61677fb8df6e718db3e08d3a13a2513ecd887e340668d4e11131455f2ed8ca9a7f1d65feb8e472ac7a78e254a7bd7097453aff0eef5f6b15e5061e992fddc6b50a7ed6e2abb127321790e4f284e2abcbcbe52d171791b22e37bca64267aa6eb4fcc0c8fd2374ceaee9d2d9ad5186f9a3316a3f76c51d2a20265d16056db54a319253e28fec6452518ba806fd77cb062765ead84394f799975156068bb75d3b40cc910bb128ceafc23a5eb6c2b5ad612ff92caabde7f53de32bf14eb1b3eb7ab819b8bef589dd23543dce79ecdd1a9ab1c6bb1ab9032d4d7eb1fd9e342109e20bd4bdd898500658107c56b8029dbb19df0fa0b835bdcb9382647c4da08628fd4e7fa7342fd9efa989fba98be3704d68750623cc843a9537f7aa3207952f2f1be229e5952a4bf21af2a0cc7d0cf7dffa99cf38f1459aff4b741e27b298c31f864d3e4bb30b07ce55a33213584b850b009524ec96be3c9ef253e602b7345654cc9482574396a172b7f0175b394a4a6e15528fa990bd0bbf04f563bb61654b833b18d8a58f9e359f4c5f42317aef046346e9cd802da21f3209dc77375acd0ce88d3a2e2f7a4d2dacbe1ee6773cbcfd7adc7a869a362fa9dfb82f6ca680fbb56ff10de162e6d4530b02511bb413155fe913e1e02677da0b6295c817f419962317194e05c7c68c1f999b116443ccce1b17994207164b4c06c66ff22981deff82a1556b50d5b2c164689553c539e7e1275197541b8ec59c2e161ee43ad944a3e8e70f6b0d535b56f34f68c56d60e7b7f78eac632f935d5cc5df5391b94c16105e8cf20e5c5915fb14859420c71ef8fbdbb0adbe2893d0cfeaf50dda429e957c8f23a8b557e6a7abbb780cb6f2614cda1a27950295d26ba91befd38ef642bbe40f8fc4bd251e3684238111b88bd8ef1063bec23979bceeb3207d1778776bd86eb44d0f5dd6e30b2b4c39cedc2e32490cbc536325f50c9a6b8f895748f10871f72516eb0097aa5ad244803af8ea49cb62e9b11569cd27eeee04c37ef400a557cd646e9c4758d0f7f58dee7a603f60d0a534df3bf0bda6b55ec0a81a194dc44a3ec2bc5123001d89125a88020af8f387dc416fe9f93d429fb83288e6f28c13506fd7e2053f0e26bde1d2e9410aaa45740653708a73389bd7a9ef4dd85acf45f19227ac60f2dc133d6285af29cff774544913eb6ae15c7986b94d55bfe7e41bc92652068b699c783efdcdac361c7bd0769f8b3fa03ef614991f73173163aa5960fe61d6dcf6f575e715221b0a7404655efd40b62cfecc09799273dc366662d994698eb00e09170579777941b3ed7ab13f95c14ab2a84e4cef3704d3917e8ee8530012074b7900b4e132f980413a486ba92104eea9bdc191af8cc8f0e755a246a0a5c3021c7e0561dfea15490d71e90d42b375ca69ddc4bc45dad4153430b33a7efdd9099f51e857bfff14cb89bca61fe1247af964c5f6a0a41d46381e013a6a0e06f66a3c40e9d78a16e465b0ca2589e980d23406a033230e3f7e05357c4f29d2dfcc5839776f87519d5d2b8a5548a8083c6d2148b87850dbd6d9f43b4985797ce3712fa7ddad5d917170425f4e06f9e7f3f5553b9c17ced7c1ba7d54cd365ec915d6f4214361509831034c91c00e3a78529cd9b51d4678c1c48198ad0d7ad618c0f3fd8a15741e8eaec96b809dc26e5f0d0634d1468088497bbb36d9fdaa5d4bb7f129fd0fc3abcfda336fb2ab1155b5e7d8c56cbdf26a193c6681d35d7c1e4db2ee8bab4a2bb28ffebfa02aafae842ea10a80add98760ff0f96c231d9eba5a7b04e8ff43647ee4666ac841bad7ea12dd6c9dc6f1b6fbb05a5f2addbd8305580b59daee15d99b16aae3a92c28a732e262a9aaa57922fd55b5f72919ee45d5ad4684562772747d8d37f9c72c36a4d24da119b0eed5c41e26c50160c47dbc9f95779b8654de2209fedf9e1fa8985f8312bf35f1fd12861f9d6de2ddfd7c6536764fea050726615c020f5b05ae05135d4f0e77769e9e8b7d5b488930fdc6677e8e2b0fc5bed1e0a82c094950f907ba7091af465e179c6bc184e4d661d5f6131af323f225d54ce534c63f52b73caf6d6fbcd4b08488939ad14db1d1916cb8ad31d79eb19f45e251a053b5ed350a27eacf36bced8f8a8f190cc8860402c69bc1787eb0c72464ac64b5c7af5cac66e7bd893e1468a0e161b33720c3abdd4b74eb2a52d0a5dc59e33c7c1e9d59ed25420d232c81bf1f13a8cd1fafc1f5878c5998a9257e0737c6eef28076c37badd6f3fc30dea136fc5778eda7503f25df5d75dcd8dd70e9bf7df20b387b3adcd05185391f23abd38d2b6ca932414b5f36374e17868e598692506f264927b346f0329c15f281b9bf36d6cc9a99c3521db76ceb5746b477d99ad529846f34ce660a206b21c9c9f7c3c05300831f09944f68706376966b28c3d7b6e4562d1c9a113d5dc805e99a0aea778093d9851de955c6280f2edda634873ca0e11fe9598bdfb1a79a3def6076efb565fdf6d813438e1e5b727d4b4d2a2f99f59bdc6608f4d576c8e9b0906e92797245f8637b65ddeedc90e62c50670e6f58aff4514fa3f5145904e9e134cb534043fee6b7fbc454cbb64b4c2ae870da148f5b330e7e59383883469f3c2c8ab236dd0da3d176f0dc4ab66c2ca325f14ac6ba9198d5a4a493462d6c222e2faf3e1bc14f6d4f83fd4926169bfe9bc10ad419f9b804299d7eeed45354d7a4f2a32de8dec5ddb2071d5f9a9c4f6f2781935f2543928cb84ef4cc15427fbde98401cc724ac0608b1a2d6fee1e4d5276c3f11efd775c469f1a3273f3c468da6646564fe39471f1cb700ad8f807fcbda8c47026edad69e8331d39107e35907910f12fd91c70d24c7e7e72335dc89e08472d6579610623f36cae7869174bfdf53429c2b7d1a03bb5d716b847b7e680634f6ab6adb03a261472f09d90d702ec40861ba2010343552c3677738088b0197c56d6a0dadbbe9220858f9290efedf2d1d6f3e04f40cf2d601d1da0a20340ce88a9c8bae187dd3d48890af4da11233f6558a2d52e011934345494cc3b44f7b14dcda0e73f47dc4af340207b3859b3e8c307835698ac20f08542fa686b49bf440b34ed3780137918a78ee5d515972208a7554290a48b5efe5cbe6417c9174dfb3acda22f9491f933d6cc93ecf06dc0379482ce88891a0baeda1b304b538c82ade9a5835b3dcca0b116311420f5d6bed45a35c693d09bc4d3c05c7d36bca5c34aa2babf96c712bf171501565f46cb2ba2f08064eae9d44a95749379d97e2b8b388be9675c0e270bf3fb93dc6fee14eb5d802334dd803a0b6a924ba333a42053f3be4882e72b832d80c39adac3fa779ba38b8800b994b4c89d5d35749e41a120862ee2e6fe29cf55c7d3055f45b5436e1d60d1a53627671b9b4e6a330d9785309b62b192f46b9af13d9381272da7fe69f78ae477ded20c0f0e73f7ec1c5769a1fd4d680987c546b18546c2676d7d42c5583a572f4a94ff0b80bb552c1c2d9adffe444f4aab70d5a543223164775662d73c36e9e7c1d2fcc0995c1784da793a445b324483737c86def533e771cdb8b9547632fb1a7fa4e08d26f79e863c8d1f8e9f55eb2f3eb230310b8e293ba2b4cd48d574df7e860ce911a28f3a8798921d27d11ea8b484cadde2dd83d0211d486171c6beab26eed3059533a706683e363448ef023c13713e20585c4f3d109d46addbf474be1c48d3f71d0236094e7c343074668f5dc84f0654de675fcab4f246df8f76fea41a7f2873079b4e37ea2130070cc5a379622283f190fefdfbd66df7d5c95d80ca5a11395e10b690abd84e26eda6b7dde912aa9f0c90866faea4e64a830a6d4459f9a007ad7e47a2d793fbf861f8685cf21211ac513850c5d2fe26f05afabdbb9ad8d64b70d55bf4d95dbad87b236a5e1db05f5a5edd5b27042d4e9e784f54bf6966c70be1e2f2a74cd227256a3475d4cbd43288fef7590008e0d5981396e637305ad0309242b4c5cf4aeae037bef0f52050161e9d85beaf1d94b5c3298fbcb1f66ffce7f3a35b22e01f4422b613764170f01623885de923e68bf2c2bd6e5e5d9963217a2c7d0b79a460f53f2a774360ca8c69b6f85c0affce152a14a298fc4f9a7622c6d03a9cd4574376127092a0a5938770191a1a8b983ea4031762f70e342006a03c4011b99ea41fd20b0d25ce9a178072a9b1dd38657a8a09d3f2e4227a3c5f4bbf555a97041bdf7cb90f624b2977dd8e63b1ae3b32de0cf6e94dfe714cfcb968d569d49150cc023d9d2bf6152eacedd5538e0e59cc5db8f2e0665f87da28e53212d0e90eade0a72e747edf4d516011c7309046e5509f7d711992904d0c64fad23f70df638cc7068c1e47840dee896f33113c365cc7e492bc01aacf7fa752e9f3c02e2d1035035f4386aba1cfeb03c609df1add61d02f1ad6668dee60f303f44c529b832f7b36cf526585046feca377bf36a2536129deda276725a23b62cfa6778b4de8f8163daafe15a3d815489732fa3a414a6e2ad80213629f92d67cfb7b792034ff13c9cbf1cfecf445b09065a48a27783120683750cb88986f51bd713bbf2cbafdd8914262238a85ec5c93070d84ba82b1325dedd513cddf26b78b415bbf8b4d79613c52e0b92ccc2bb5f31eb6452c6780ab7cb001aaba0d1b5df245d13db043df7ac3b8750eb20bae8c2150dd677a9c72762b68845968488dd67f13163a8112261e1d158023fb3e74896b12b6595c7d969a8b2a0cd96ebd1ee5a600ec53ee530043f92353b3f6c83611cf8f626769a7b246223b80300567de5ababe17ad7fb1e62dfc09d40b27abb3e2290bba9824381f999a5ac3be7e022333eb3eba7087ea144b7d149b8dd2325a638e8c003ceeb239de3d8866ea84ed99be4f55aef2e97780cb41bb69fa8a0576bb032af1a6926d8389db97f37ce2cd1044dacaccbc46b316222e2323f625f36a31b41920c799f919efd9421188eb64546116a6d44008ff629ff189485efc299bd107a51d49e5279c29bbdba41a0d5b25554a9806b362ee6fb10a0b775b6b02a8490c40e978597ca69158e5e559b1bdf8b30c3b0a75f0398504f66b7c6845ac704c9fbb3fd13c01a9b64d063bc3349ad1a480e727463c48e65254aed2217baf565f64b666353dc5c2cb06e4e88aec79ba14e76088903e7d43b7e493121983d6ce84cf6a8ed2ea91653a732ffb704d62817b30477ca447e1abc0652fd830881c224826cf5a985cf0f21d82992f269c29f741cf0898c4a36aca363cf60e1c5ec610d78fdeed7355cc340855410fca3f555df41f1b1dd9bbbe5f5a5bc183365900842db3eeedf28baaabe7c411d9b900325142fc0a332fc018b7d1d1c37e6cb81202295620e1fccb9ca0ff0810aaf164739d4808851d3ab14a44872193a524cb20323eff47768c5f9c0c316c5a6ab39bd16758f223f163c271bb9ae3e5e58152dc5cb78e1a59af72f755694b16ac291495fe6ecd7f726e40ab92b1e0472d685ffc2c7003e1ade7721311debce50259e810cddece87c59c0bd980ad668b6c688d49493f49bc652c34dc0f4246131703426331222fa8c16ad9f08035609fdc375aa9d4f932c3d6351d495818a93870c6d763cd4d63eee8f0384ca3ac7c8516dc763d6a5efbdb76eed8e94ee98eef794dfb8645dc3d01e1dfcb99db8aa03eeb7ff951056be1c8b34279f257769a0cfc847a94d641f318fd63b51064901468fa2a782856038b2291d1f7d5dff36485981809a8c23b3af003f63dd787d5d5b1c3b2070eea2fc0662483b36ccd1c2b0310419db49e1857c7e3e4a36c793ecd8e04f22b71dcdd44f0c0a22714c4d940221612fd9804b7a96aeba886e1ad49c437b92b68f5d13b727d54e40a7624d454e7f5b7faa25feb6d70ab73c9031a080765389f7fa924dc98275c07ab64ba726c4219aa4998e019e87fbf9cb622a133827beb4ccdf0543103d3a3cd5acb3a2e21637fc019eda9ff805e76b7cd7e0b53476fb111dacfa98e7f61945d90cd40dfff5d799cd3f2aac8e463495b4323c50932bcb9a0e9294b56f0f9e51fbc17d4ff73e3b4ca01c6da2646a2e9cb85209e2d35cf29db6bea270fa2d69ede2a04be1ab0596513f0d1f3e51b2ed62604b3954a837004806dc6db5cb28d0e7ebd36e55b828fd5db2d040bc08ee7186ed85a3b1ef2a663c2ada8ee343672e9dc6037bc27a0726e6a9d827226b0d079ef6c61bcbdcd153e3765aac92b49f29bf1cf93bdd83ca82977b7306cbb2eb3a84340da4b66d2d7fd6f15d6db5e5444edca2cfae3398d362a87dca8e2c44208f95b31333647e119e9eb58931110f53c2f1d6cba105356205f0bf3bd354a0aaeb3d22290addad9f42eafc5f475a54631006c7317ebe60c6546ce1278a594674e2d4612cf7b305badf209b6624f9d072521218536b7e53981a56d21766fa247474580f52fb3d2b7220a91ba33593ba4a06146b5175463b8cf826db2eb8659de6951010c347cdf93dc10625c9095a83914208e9b420c03ef1a2856c78218f9cf83bc9225d2e8a3cb7026dcb29f07dcdb3b8daabeb0c1c417d2c451516b78d4d5b9b9df09a00afe525d36d2bbca6342731ebff8c26cd4a79ef4762483c83762e243edfcf19f5857cdc3828fb62fb9bfa7de7ad02b8dbeb373b5cde774f8d0dab19a4b13a212655574a217ae07d600820f9262f749001e86d079926bdda9d914076de0e1765db9ad779c899573804eddb90ec1f514772e065f183819646a1c5f09df20bec7169a2b2ea32b10dc7aefa72eea3dca735a4e0ba50fa98b2d70c63e5452179d386c7925934314b34b779209dcc430012f8783de5354bd78e855271a55d3768de95a48b43575dd61081ff2d38eb39b08dcfe5a41dc81d05c11e65c096cc6eb1c1059193b9946e9b8f83dba3f03678cada7b636f0357dce519c4c4008260f87f4ce760d0a99029910030caf5f3566f11067b328e90803f9985ab5141f2108189405f0b65bb33e943266e80a3535890dc5992fae91abec5749b1e3a8fcde88cdf43cf439f74cb876a99e45a0c8b5721a0cb9209413604fa6957a7384dc76d9f359c866d8091319d0c16f348fdbc2d4d59af34247e96183bd4a226dfdaf6b0388e0edfa6df5627c6915f7da39c6554644a5a417a41c169eef7eebbc4753bd9781b2e4352daa95d086c39587442f02436f2c98e88355f37c7ed529d47ac0d284d0e8a0c1c7652f3d65653cff24c5b5f7be5ecededd4678c48b29ad3c8ab6352862d9419d5d89b84523baa20fa63debc561bf4ad851e4395feaf4ef6e237ef267defcd4df7d0ab188a068ef4ed5311395dadd9a02e50a928aa97af17cc61d3a249c6347c7bb021300cc8c0a0f6f6c98732cc2fe47b1b5e1b67ec0dd7d4cb5471b41444af768c172cd17c79784c2181eeeac79311397db6db659e0d32e49fdefa45b6ba2d32d669ac1238861318a1a71e59aafba45aad4747b7de6dc1a90137615df2999f1bc410bd388a5312ac9f4f26b4e0767936993a7f422b757be2f3ae5ba3da6c642c4a390a6ddac7bdba60c386daf118ed02d62d081f3c4d77957f0a093e1904602d9327c92b8cf7a2555b46e19a09b10c1df9d02b9fb1a34b6d47b596048d136401680ce35127bfb68386009763adbf3ded960b98a73a7cb341355adb642de4dbd5599ee900addbb152fc27ebbe0e9e5ebd8b8110e869f9b1274a6ef4909a1edb3ef5cf5f71e6e0c4a2768e754eb5e514d908e7e89a6c82cc60ddaf9464d9f16903d6beaec3fdcd7c82bb54f510710a5152d3f5da0179c503b84c04e0a532b9d508b340681f722cf50b49277e642517944fd3c4390d2757acb3f12f6828e66b5d9e0077560fb89b15499dab3fe151733bc6ee48752192df3deb7132642172f709cf145b77faedc30cb122c7ad9b055aae729ba4b0788310d55a7889ddf4ddbeb43f42e365a4ae3a90a2141d890c32c922fc4d8b3fa99e5d7cf986dd6ed0ecc29b557c0d1c6150ea8bd9b885ff643b9f4a7e74617bdca1b61e08811986fa0e491065cea83c816253266584c7c1ba53568114e900677cee29ef3b5ed524f6da43633038273400e08e3cd5bbb771e8d3ffdba4d2e65f03dd275feadf8366cd330246eb8fe47c6e74fc190a64740ce573f81731a3c59db6d2a8bb5ff16787af3f3037bbe1d379071113df3f3f7c53cf572268af3ceac3b5879d175cff8f2be277a98cd42a264499767ba91e97c751712fe4ecff7f31e81b591ec3f1b0cd2d51ca160501dce358f0bea0ad1065644adc6dc21dbb648693325687708706e4e254d1dfdc56b0ed63b07d6c031aadcd37702d93dc6e654ddeacae9a3d962398246de0ad04149de83a0e28f3f782e70e0f8173f9d8f90e73fb59da8722da7e3ba76576c14728c5de4cdc49c33034de7e7edf68bb2003c85f226db463ac5c58db6e0027e3cf52688ff468f15d1179111451574d246fa66e7f35528e45d67467862b07c68e7a071fa0b2e059a8334ce1927a5a230d2637948bee69d4f355c9ea57479a9b81080a382daf8092689f5f459f662c423fed3f20722d927ad7ad70f5e3da82733cb4f3302d581a024b15627eadec09fae01770913423aac432a68fa20c6cf84f779fbec7b47066f2f02162d78bbec550a37debb7943fb2d6d687feab436561cbea0e855a1e141a5ddceaee3799ef87a46e46fe1b5c45a084f6ea65e82da5e6df678d685877b826b6c1e2f7e1a2eb2f7e8db5a69ccf1d65741e32827914da9b00b0a0bd2599ca068a9130dc4df52b59f08221702303d33f43eda6f9b228fe9a59da8f1280b8b50cd49a5fc953639d0eec64229f03e4539a61c3414c2e0405b4014aad4792a9614b8b696651afaaf36d987c5ca555b14915e176d08a51dbe1b7e10e05e8be57b66054efa5a186cbad9472e686bb91c01fbb185dec12feeabf47a81691c8f1b8e623eb243adc77519bca9afb97d3088c1c44523e48902796102c9d52196ba22d8ab49d451b0824bc2a2c78d9dc83fe18e58c80065a20111e0556d6d4a1b7ffb46386bfc42dc3ea03a5e9a2d2aeb36362b3ca13141881151b8cc4fc10d668ae7d381b0bcefa9cdec14874ebd35103584559eb91d58edf45bfbe25a77078cce9f75bcd436b3f536c09cdd153e874197e198dcedfac07639a9aa100d76ea92c7fef45c854043533353b081c91c98fe83bef0247951858c18a775727e1259ffaf4130e345a675322bf51fafba5afa1183d4a935c92c8ffb24038c8295100818cc86d1ecb14723debcaf97b6089ac383cea2c4dfc239c555a4495601241f46f417fefa19380cd9060cecf85f8410e125bc8f5a8551bb928271457bae9d6f008fb70019811ea8da34ef6e8503e87c41ff2fda98328780b743ea8852ddaff880e0cc33151da36d0c1a09a28e51d7c919b6f558876783b020dc8ca412b6a5ec07df1687514aa45113a54dc2d2c33df117ae0c1f265baeddc249e7a1ad25d5179cad470794018ff95076b0b1d44a1769d2560ce9ee4951fdff1c0bc0359e18b8014b27822b2700153087ca16ac04c82b7377005d8289ef23797632a7ff8a57e4a996762a7dcf5f0cd4a3c24cbc519a45ba7f3030690060af5a954fa082f38b756f7296c9ef14daa632375a152da67dc3ad96ce39dabf17526330b2eece337baee2fc35027953e30ea4bac6a38f2594ccb06cc94e5783c0dac5231e08fda6e1a663893a54cd6bbd91e0c301f3e4a936de4add89eed4757944b9732f8bcf57c4c305174b4efe7eda0cad44f71a10bfa196cb604d65a0b6b131de90e3f7f331f09c7812ce8d61874158cd0e72ee13c7d755e32c4409d068ce5addbf1e9e064cb492aa7ec532b61f93d2e2be8ffc2ee31e514f671703b5bda2cc6b1852c521cb9e45f8c7ff8060f9d4fbf04e988b4b3a6bff5f3da81a72886b86b9633759bcc86019c8e0c760634b32e8667ec647723a1bf493785ab16ecb5edef958c07f4cfc766b25f082965143e7a8322a90c37b21f5be719f9f25308ae266e461245afee70531dcd4b46745a001342cfae71a30a8f4e36cfbbd963db12ffe2d2a202351010e5f547716ad7761d636464c4eecf66ff228bd7746675b89efb79dc1287d07c29bbe7dec2c83acf658e172b4c1c7347eb271da31972a98d0d9ac03a3e4c5fe20a795d15b0d27efc4a5f961b7ed1fa10d200fad88315dc88b0547699bf265cb9ab7d69e2b9be97c11b10475912c3ae088131ef4fa518f17d4ff38f0b2a3c10427c61022f050e98f22f61708f1425ee22f3a65ef05ed25b4b8790cd2051675afdb4c50eb0f94de7a934e533e3e51e5c200a6a0c715e88bcb0e8a0023cf4c3640dd6688d74617a4329838e6ec2ce0cb9281b3783c44e72e0d0f2930fe203b3405f9f9c69d2027e08d59d2f0e409eb08fd8a79f13e54b5a2af39c1dc511bfbca53bffc214a7c0b30737b611206d12d475d4faeaf36e49359eb7af2fdba9d17fb694b40e79b6dcefbee5426cffbbd6c0d702e1d08e485a103e086aebe1b2f9c13694c3dd3daca2b627f05abf61b69cb36b81f316cd306929d8db5ad05d6fe2fa3b05e33ab0374fead3e82d923f3cabaefcd170837e42fda9c3c0339a93585ff3236cc14740595ca8e634e0df9acec95f0f06d410985954268b618074337beb17aab57bea57b6748c1a8dec1945feb5b7ae855cf72884bebac30cfe2b0c1139b39936879cfa116b5753e519e243f4634d3357dcce109a83d3011c104f8c8ff14c6f7d2fb934d8d122e4f90d87162dff3422717dc6e36fa054fadf3105c333d2b4c4e8bdb3ab72d4fc8b1e0d8c6622d7b8c40db641442ea73dcad5642817ee63a715ed6026f274aa3e9dbbc438fe4f0429bea56178db401d5845eb996ae4daf08d8c4d6ced3a0ce778d408ec0a8ea055e67558858650f6ff7405f90e8e1bc92ea69c95a51893aec6d19408fcd5402eb9554bd9076751b40c6a758f28af417e0667b423357524a6300db084ca8f45cb6344cfd713ea83fd13b05d16905802f2d06a4e3187800d8cbe5bc00aae2f21512d1778a74521bb3b59e36a65a9fb3e9b62dc0e1819c869abd32bb3df0f9d66f64235ddfb5bd9111060b95cccf5f985324e3daf36c5050fb2b10bdfd663ffc24d266d8691b01a321d15bf3ae8f05a4a1b55a69c74a576de593418dfda8f151804614bbc3f4acc4a9fadd9a9b9f44e3bbdfbdb2805c1f78124b18f3bee509393e9d8ee68a72b8a844395a1317a6301a38d22c5183a4036aeb32d1a438ac1e19ebe64733dcc43ef7e4843a9b5d2690150edc6f1dbf3aad179e282bdb1138a58b57c3a2d451617391d5f11b39dc528d40b9e0e14b7734265793b3edc718b086833df1344cd6d8097afcf94e9673bfbb104b1e387d4153e7391b0ec071303a3c408e658f70f572bd5372bf702b8005c3dab5b3dfa54ff2c6080c614d2fc7d5c4ebe26697040f4a3efb1073a7ab2e65c2525a5700755c177bd40bbc9d4af48beb8175ae7ecfd650d37b8155f514223d9ae5ca707f80b2bbfeb9a8ccf83cef87c9234c7d0bde894f7a077ca5172792468e97d745dee6ef64fc86cceb62d0ff8489456540420d1843a7926ed3d75946097809433377b93f8028d6e11756a5946de269e819e965b4cd0a15ff2c3de6a2287fe226951c343b705c3e29db5780d07acec95a1a6630762d67e7be9197536cddb457d711c1ac3f09ab16af356bbe0060dc75c8ed8df7971bf60b2fd73093420fa9d691d84e4ad79d139abf15ab2b9bc627ea17a1c1f267d1350e03dd7d54b0d0a238cb798fad74e4105a3b6df4f237a20ee5bde67ea66ac471d8ab3cb0ae97dabcd4e3563722742c81d64dd59e4a4be2d49d707b622082ff46715a1812e144797907cc67b6772b6664bb6c63b16e3918b0d15e68d026f48b6449f957214b6d3a423ca6eeb0388f8d9483b688efdddb0e21e54715280f3d9df4441b8f7cc12c8d430720fdc37f3841ac6b991a8785276b7fe7f8333abcd75a8ffe955ecda37c3c321ff3dd941b7055d00d8562035fa158c7e11746aa1332f36cc9100ac2ee14fc722ba3d38cb87dd45cd5553803f48e65d8ffd8b88ea5c6e9f0393b3404f5518a14c630e6374189f50ffe2efb0ded5212d7197fdcf5d6b1258a38074a8fa484d150219742569a0a23f73ae6813070baebb8c31413b460388fff67956d63649da8d7af1fafacd3678d06056ac87d6c63b0457d22f74b06521c91287f117ab3a68e15261aff6944d4c7f1417aebe1a60509f4523d56afd573cf3a28348aa97db498e8fea3383ff2e25abdf5bc8126e01a9f9d4d744aebaf59452fc97408d4e520a624f9ac60b5d7b57e4bbef46101cafa610bc8572f84941f8e46dab0a70d2040111497fdb93c4a14f8413fa808d6591994926d5f16287f3cdc7d6c7e90f9c54258f1be11d5d15b6fb783033bd0c1baac21fefc00f9b28e5bf1642cf88d913f9f9e477c9b206184c353c15b0f25e998f25008c8270ae88c1a7c7df91182709cfa0866164bf2dcaa0a8373dfc286e2baf78baeae83812e3b97e122808a21a3fe96ec240ea030b07496e8f096b55cdbeed3ab4b288f9063507ab15bc988ffed5a2f197c85ac24e0a8cbec9f770f74848f064618df2a70ecca4a377aa0b6e78eb30efb91afca0e768c3fb23f5f3cb53495c25b561d16bc8416b2a588be068eb63cdd6b520442409429ae29235ee9ad93a11b36cc0ae354908c18ff7e9b984dfd79e3f0e03f065f672923f4e0220a99587802e92182d5f9e262d18d6a8fc1a978d7473d00772a701f35365221208c5b623fe807715041fcb073f803e0c41c668035442229ef947f60d2207de89f568205e8b93e96337efebd16db28de25ee6f3119e50bc83b8a601df2f3484e8b9d6326fc3be5a2503fead58ba03a8a6ae1337c2889e9c4ec2041e113c5a2f465c835fedc5c420946d48e13eacdf43776673dffaec1435a48055811cd91715b2874e74362a578bfff1a929fcd9b23509ceb4124e24d2b9d0417e07773fb779863e73a0cdf80acaa00975262bdce7a3bc471ae9b19fd9777f74ff09658582020bec6b1ed76beb9b70af23bb95aae885c4de529645a1fb4ea7aeab3a3639f664e2a8ab2aea6018372d3b8a45196623f198ff93291c17d6cf84c33732b06f8932a90d11cf82b4145266207805af1d143e36d6d5286383a648ffd491f4a78a51bde6b612e513a55a8119d40bde2a1fd587fafd8433bb989fc2b046ee0bb38ab992836a4a70bcf923baaec222a4d3d3c2996f17539c99512948244beedef70db1b92cf9de2c970e679060153051e28487d0d28b0405ce7de6be970887d46dbc4899b3fa3caaeecdd38d0917baf8f0d6166e495d105c801ab8666e5d2decdb8b3ed6efc6209cd61937edfb1f4769d5bd6df1bb02a47e13c3cad212d56fd9fdb2c03399eaa1787a51d7229118348e0cdf529cd249914a1cfb28eafdf11a31373078932c520e60f400970490897a4bac99f5966d7c9deaa2bfb8d5b8a4b4eff93f237bc0558bc32a33ed1a121cf22cfcf75d3517014890cc071fba566baf0a30227ba6f6f05593549c0d1e8411c9f22e716e5f52d12f7e668960f8922943ea38d341d0c34f2b366bd72435be4127df1a2af714be16686df58af57d403183be5a856a31fb19da57a80e00dd89160222d93b710b067bd81e579c71d7c40d48e537394a2e9069f10bd5b38f4cefe7beb41d60d53ddd3fe270e7ca2ac658761a01d6fe958b24460eede5f6c859dd36e3cc1b54dd86207a69e8bea3a5e7ae5de4df56f962e2788f7a443361a00a70f59d771ee2f597778a763ffddce0ae0229ddd6ec99f0a38d86b72b8fff214488cafc09022ec7e24e32772bb8d3f6513068a4b7c77042e0849a56a00b8c2eeaa28fb57f65c83f194584336a0b076888917a6d3d782b152772ba9b08c7e3fe7692646a0f972c39c4ee40211391a90ed8df12f42e2c5db927f3248f1004bd3b894a8b0acecaa6ef58ef9801c4cae866ced1f8db7c640367514469d9f783640f936bc328f68715e02b9a0e8708c450fb28e03e5268f30d14d775e1c4eb9fff9a2eb8704ea41545ef5169196a52a0419e6e3b98c5f100561a98ced1001d2381b6cfaedf5ebde681aa947b4ec82bc62762eaf9a254cbf545dcdbf8b6c43759461edb3fd8eb0f1327514540afdceda672cdffc1ee5a9180c9ce1f3c83bccfcb45a9da5a7d4e00a194d56284b3266ea5e230ba04231ab47de6be51549397b5180746e1d02bdc2f67732c9177ba81513a46e034761ad3674df650d40710849d8774508ae74702e32aa341270aedd860916abf3cfe8f42a7129e6886ff0abe805d8ca89710705e634f62ab03d2aceb2e1ffe13272cbee1e89ba861c5ed03584acd0aa0e7218d956d86a58816b95a65e6f5715c3acde0584fc499f1278062404b86ad07c8d17e59f8bfb4bef8c143cef2a49e27ae4864a3ab39cca0d081673dd0cf2d3d3c2e8dd98f675165a6b7cc1c248618c3f57eec1e419a9b89cd9391993ef6833b4329beec2bb9708bbf19e71c1c87885ba03fc50cdb3a1d4ef9232e5681ca5f0f0cb6853215465f3b0d4a2e7591d7f843ba6361918a34ee988a5974e3bcf6f56e43815bc2165fe3665fac7e5b6ed40dac4139c2f4be85f1eb8656c6bde9a67a84bb21f516fe6cbdea8c10b30840be9f2632e85f205ad940e477609da37aa92fbfc3216136a0603c8464c7aa4f001914e64da30ff4331d8486a6df46b4b54bf0ae31f6628dc54afd8fcb2adb2652acd96f55c625b4de141d50187d7f34a402ffdbccab22ab8335f15ae08428709c3b88f51e6bfff31df744f2e85ca858bbdeb93a0d3f7fc2174e54371c5b9199c4bf955910597af027c80c4b01efc8f381f50b4c9562a2de2fbc27c18e3546791bd0978955776c799c7f6e988ac08f194490843145477ce45dc67fe1d26f15213da00567525af295843f96c2e7e25456383a738bc3fe46245577894ba953d907dff55e825e5534c602e6e63ee6421ca8efac5e2f8a913e5ece10bcf32ff5e3aef34ae4cd10f10686c3e1bc1bca62e7dea37a5a7c6084d034f1802eddb6464126a7a2ad6004bcf629b8dffb666d461bef777686b311248b8d369de209c239b3ab492dfd178bed4012a94463c8627ebe518461a6346ea057250a046fbacbb6c9235da7b44f05045abfba16903940bb24fbe9886fc770763d3b645357ff4260ba5017f1fe5618e292ccd6ddd646314322c86d51a1b62cc1de9c7c37a1ff1669ebef0164c84b1abb135a5359c5d426fa577880c5d7a513b15360db810d132c37b83c7397ab4aed4471650c2a9026e1d6f9a6cbec017bbe1b41503e459a13d98f4b2d2aff2a93041fecda43983409d1d3e1859700ea3b5202b781428431d09b37f470abde0393c10bb0da57d3863e104baaa50f8dd50feaf65e7fb221bb2c82658861b8fdac35b053c09c49d929ff4348f7d0d69c600027c3cc80dbb069e694007b52b553ca76d4e49c71e63a04da27f49ec69860c257c26d267008bdfc939d4a1ede36070b28b5908b98f1c23033b5a02979ebf02b18387ff04fa706c915022140296a7fdaf69c107213e6509ce0a83df433050594763943e5e10042c698132f1d38915cd0f33bec2b5f6634ceaaad836fe88ac2fd956f9cfe0c125a99400cfdad31fb3c8c2e7117e3ab53d3c7003cf2852c8c0ffb5eabcca9c7b5e89aa8211b7f0ed21872039023600b0ddcf6a7767b20154b15ef3be592e6bb12dbf01f91d95bf9f468fda023cfae4c54078bd887325ca043e567725f66a812b6bb656da8e374e48bc64651395c5c20b2ff57dabaff0f6f28724d321a3bbfcf5ac232abd6bafe19fe372e4d1fd732bcf80e74946f2640231e392e7bfae1c1eec8e85d840bb61e1fb2666199cc17ddcb5fed2b39aecfa670617ad2450052295c81d43d22868f8f02cf66d05ebc9c8aed79404a9248f1cfaa9d9fceb1366b4426d4f8a13618512a09aded424bc035c43ec663951dfae1cc836c75e08a0676ce77ce4bbf52705cadf3428c9d8c8710d0081b532f1012572f0a625a7789202e21fec5da12081c0993f69d8ccdf618ec8f33dac120bd8762a2611c7280a9fe1dad18b0159a7f026a87b6ce2e17882048205715c0e069c6fec794fa0a803f08ce915d0650af0666d00a76ac4748673d3fca5465ded8f101b59d35e22c377a8e90a97b5212a99fa73f80198851c4cd7ec543d979cfdafa28406c633f5a2cc85678d898e92cd61cf0cccc722ea1f5c118f5f58c70c01bf01f6f0db6c779cb75851f4d0f17c799b8a6de033cce4c4292521adcbe6f1d5f4857f48450dbb9c440f5e14962c34fb09f57467313ad9b4865777329798d2fb4a10e5fa680d3c7de77d18bdf762b3ad4b72bd74baaf43f9dbf3cf19260f3d4d7542fd02076b33d068bbacc8a7072c128f68ac513c3c1a1a23231b7a3ad5a95a10eea267a1d1270285eeb441590e7bc98071744e089e805502019677567d8f632edea759bf78632118a24dca2bef6fd963a6fc84420c537c5850ed6cc2cfac61c39b6071fcacd8fe64cc02afbd381241cc809c9b4dfadf5030ff5926d6508ecad482f316bb36b72bfed167f9183d6963b98946389508bb9d2a0881413dc6220fb18eb5dc86be90b49a6b9ac94f6e7230e69f147d6a19eb91db994aaf455136c87cd9d70425abc4bc526eab8b346793a748355878010957477b3bc03ace5a4206086131440a9f8a96208e5a43a375b497e99c6b421c5adbf95f86b186c6d9caed8741264b504501ff871034e1f147d1cfa428627d04aaab65cb6c685d0f80962ad23698b3dbeb884b45a1e2a65c7d6894c6a128efb5da73c22394ef36cbc4c5373d719fe555bce9ed1ff47bb5b36e9f4deb92b9f3981df2ad3786876f2e90806d791f5ce0336b9cf4690bac87f87db44d4346b1e59984d752eccfa3213e3c266fba3bc2a00d2cfec543f8e380ab61d3e9d4ce06b9cfc1e5c74b0ad26c70afe76ae04a53fb06ea999bfbaa9c2f6feb75fe3e4c7004f60f6c22d924b3d2744adbf7a7a8fdea278a12977f87101f858239dd0bed2f09b61dc89045ae1a017ab83fc2897c65badd60c790ed35fdeadd433def1eefb399bcd4cca3e8f3442ab6c814749c19afede61cb362f88bd5a9a41f6d83245b55e58335ce0723383f37ab1bb06391f46fd71b80bc7bda9557f913ccfa97c77cff09ae283e2a5ae4dc4d258356368c3ec1637055430eb117137cca1d9e9c999020d9a18342b65a539e595ca98b6c95cb86f421e4b10bee9d410ae8c7b45f7ed6fdbbbbf25813700f55ca696223d5592838473bf37df15911c4cc8c5af0d398a9c1f070bb9e862f19e90843969eff999fafe0a22f226eb0bb99ddb7ca4bf7e1a0f79ed37cd10dca9b4ac983f1bb074303043d98da413cc77e5560fd9c3df1292ac68e0b822fa14d331b5b23ac42c6a78c0b5562908f0e2098f24716ea24d063e6832982ef7dc990c0dd52340193e3fe6b44107a9e8fbc8805faa51d6b54b9e90bb6557acddf198bc8d9db4665d4fdd134341b016740288ceefd473a46e487f87bea163db118fcd4c3d59915f9cf5df8f2dc693076d473ce3615580ed685da3a82ea7a7540f3544039119d97b3fcf9faab26526cae54ccd8888c070b61c8d259e3b8553eb26eb57fbb37834595720c067832e96759445ccbddc7dd2170b6ce9d3774c8687e04bbe311505c4124ffb63ae094c758cd96526198cff9031967175f3ff8e00d65f127f5ef2acc41c9ddde5978f5b7d4c79d6746b5511ba1a830fc73a4034961a964c0fc0e56e33f7be196cb43726e271f01994265df093f090b1ee217cae0acbda22692fde7aee6571e6c371920efc28cfe7e1b5241637bfdce38872465730c020d848840026206f371270697b3f3c69fdf0ac8af4f8f2eaaf958cd63bad84d6fae80d93172c46af52b13c1e02b3aaa423a021581f4adc81be0b01455138c83a8cba3924d323c242bd4dbf9eca3d047e4531a94a8bc9d23910c03bbb487f3dc7fe58a282691504698e980ff26d75a6c171c8ba3e829ab707d33fe1ad8f5b3e86a112d5d98cb6c2558591df6a944d5f52836335c7d2e619ef82853f5ed27c8614538a20fa61020d0657098641034ba9fb2d7c010d8f5ab300582dcf32d9559641df8209a425c74a6a2ad58749246c120d1ec76060403d5059476b10b30765a7eaea1b2a7751f895f7f219b1796e6c717e77ed25e0ca3c8cf7da0da46dd43dfd273130733abac3ad97d46ed294e277fc548b30bafd51229b27e7c53d998b030ae0c94a36782a1fa3bb431946083ea5426d974e4289bdb7b9a2dc67c51546234d9f6edb86b79c0c3ae0fd8c6a817b08b2a7bfd5307c8dc953f5555ed8e601d43618d76fdcda0b1e3b486b51b0cf733ae3cbb6dc0c23e66a3bfeaf89339d7f27d5fa5dc4ea6986578d4867b429568a33478cab5df495639602367e615918de5d1e586f7cc89e27f878f8277b087f23e6bf88cf0af82d177c3cfb09ccb42a688fb5b5f8c6632533a2fdc1c9f7d19978d954d9a7f3c2598955343ad3162403d4f62b7b937f10cbdb3b5e5e7cd2390f158428e73ecbe0a13ad329b3131a4d541a13d7cec131deece19ff287b308b4a1d2fbd3220ae2efcaf1d7983929bceac06f466bd9da33fbf880fd37a736f4b358b2456daa22e21678c09068dfeaab112f2c4a44c8816ff4a60e63ceab7a053ed433cb96a9be1944adae03f7c63e640642d2a9cfe8645e3e783db8eb2ac7ba83e2fd3fc76b4df9f9717b77d0d0e1fe423326d96381e5987fc15079a30c0b7b2284f27f3f0774e8b69c8e04281b4216bf55a42d45ca88b062c9fbee3e04a07d6a15c3c7cb1698b4738facb27f1ab5495990da5a3adffd97507110ce1f64c4b69488dde5509e245f1f37036820c5adea88ce05f771b555a948032c74b64a3574fc7ad38896995cc4820f499c0378831b9cc7f15aceb4475b40f5f22a02273c0e971e12d500de3ec0d2c869de2b7472710e7c736c57436bffc5954be451779df7ac356e03b534cfff440ac30e26e36d541842ba238b90050c0e381ed4d7ae7bccf9d6405443c62bfc31b49d01c5208a5d1867368ded47b42f584ddf059645265dabd527207ccc8f2f7314ac6e894a2c06eae82017d2ed8177513203983fb4793b022379ce604aa22e70fde2973173ac73dcc1bf9c803f36d3089f26f915f8fcbe1898f1b8e12069676c96d8b4ec3672c72f52f53b715e06e258e34d2b14f0393671d31b0a7ff16d27ba11553dcb9a2443101ac87f134d35529cc0a6d2d775c3e680b6efc6eb1059999768afe2bd0f43695aea7f29d8bac3556f516010d99fd3003630a31c88a9c96e0b5d29c2d7847e83fdf6d2238e2f924b1ab3e4efe4dfd66637502bff57f859d752ce93d1d6756aa946f2bad7b30eb4cf0955218eccd44d27ed468dd93674a973748ea3a0b1da05c2c6e1196d6b72f7d8a664dd54030e81ea423371cc698284c159113c771bcf42913c31a3240f50e49b58d1a87a7aa055f3ed2fcb73dba8df9e86f88acc3fd8fb3ad3042a5e1474d1305f07bdb8bceaa5848ef3c836fdefa8c250466998c73f8da6ffba816d9521c9174c3eea70474258a52c208ebc7e1005633e2f3d527dd56bf41da3d9e35b722e795d58e8c3d362e5a180ba45f03ede3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8552e1bed14345a5a5843cf7079233660d6fbad6c5221b8bec3f2712654418431c10d1ecbe84d59ba7201705582092c7a3608cf5986e3fffb30e872518cfdd19675b829f4b1f44ac99a56637d15af6291d19bc9a35945459adc0633bbc9627649f9f45b3d5d81b3bed5656a8254d45b884e202df174cec786c6d520d66128e2c6d9d4214e79c2fbc6e9d12e547100bfdc707a17ed2bcdb3dfe41d5a689cc6334c2af7adbb3ca747604e365f268ec5acddf877d2e599193f03f6d8ebb550f7d0330d8a0cf999c533eea6dd991f3e58bf36d5503a4a00fd3027fb8fd13cd1044f530914c47041aa06a7497f1e7ad5e19ac2aeb6bf5d1d4006f92ddbda07569069949d7e3725622365519d162a4fe028bb8933e218b0f40bb6c26093d5df421b810ef23febfdab2ea687e0d76d6324e3fa69cbfa36f06ebd7f1052782dcc2264100c1d4109ad1f00c741af1b89d40440869c94d0af41fa91ae5c0da8cbd2ce97761724829473e8b64c634b837bfcf5fbf3776b58d7709e1548912fb7931e554e7b588829c8df272a156e1b732bc36730a634cfbf5794aa17a16139722353b5e7975986a66f4e5ac2ba23284407e248cd18136bf50b7862be97b3b946ac2b606fb19b2995e00850c15f844eea4d4314735c3180714d21f199c0a1296600f30ec757e9f2693a32296f27956b56caa8adfa7c100b1f39ab3f3f06da972f71acf43b5d9ea9820828145d8f74ff2e02caa8b2ce190a2766f431e6d39711f8d0dd7000d269e667024acff4135bb8e9748fe900eea481ee41a9818ba41d632bbeaeff38f79ffba4c04992f54aedb14e98b30e6dc61f7d5ed43be238ba2926eaf41c4f3e5f82c971dc79289e1398a4d5b17ea3e69a68558a48a162ef737d61257120aa2dbc2f0719ee568f124ae82358950b7a6e2c9b8547f94932df99be9d01c78e0964ff7a939cd710294d0e3be23ea73f280a528ce8367167ddde4d75be7d3e7aebd7656d0798900cf83457b27ec4bbbf70800363dfd1cb68c5c9a7116628b2748fa787fc778bd6b07aa177a6233b35b4a98be3ce3c883fdfe7e479d162c85c5cbf3f362eae892dd0d9555b28122b9316f454b8321537bf8d90c06282cab86b7d223c1da1b2b418ee99843dc0d6e9ce96c7b2b249a1d9c1f22e8e3109d70ed557f0b2c865723ca8120f452646cbc7162185cddd9572d756f075b55526b721d3c1cf8057ebfe7a689d1d0985c2d17a1007648c01b33a5025162b610ced3204d0dc7f90434208faff5e68c52caed76cfed0f0c7ca6576dca38ee2f47ab71d21634ff77d72ba94e55cf51d35159e42c44a02183af5a08b42d2cea5ebc6c24d11c96ad0bc5a767ebe73386a1927ce69b5e6b76b1f869ae33112da2e45f563c290966956ef1d484eb003818e56c081af24c1262f92bee5bf710604d33781017b603322009db4e2bb0f16fd3eda32e1b1e27e998119d23a7ba9a1426c141febbc1d42ae35ca4b00578517967db9d8b58cc97a2224d93803afab85cc487dde026617601c598d446643605f150a69fa27d5264c4ff43787009f832ed42a52c0a4d1aa622a2177cfc79e5ceb63238c7b6a04f5fa4fd31cf7e83829102675b4ddd4070c2df12e96d3e227d72e4af14ddac05574f9c172c7bc676d4f3f3b0fcbbaa192a1fe05ece5f0e96af9d1ad935e0e99ffa134914622484536c59bae27a6ed70a85e05126c66d8e8b8e73aa5833b07ceb34281b2e678a4ca7d5b1ad10eb477c460f395374cde3d96e89baebe0b40de3bd623b271eeb682e214d7fc5d10d7d87d3f458d34652225d8a88ff28f721ee0e765e6a6bc2b5ac8ca910c3d17965b13e42a1fcf23a154d519fe99e2418ad7b19bbbd38fd59c7f4af28dc04f564617f0089cd0b391f8ecff74adea7abe865d77284eaa25c40a1075a00852f2196f27f8f31001b902ddf8b3c053359779a18031665f1ae01f0d42bcfce9f486ff0e975c64437a550e0d1f84721cda826d417a5a2b2cc6e05e8f50a5d112105b9d4dcbf4112ee97e453d9a7a45f37a0aeebc47c8b975aa59e142aa473c41f5734b92d1a030ffbe337e0a5fd931b2e4a8f2a00c5a371109f824670df1affd6f17395ebdfc16a84d8681102d893420a8cbe577e9ee4464085c75e07f38fc124e833ddaeb156a00371769326557fba4af3e434f3a4959505cccd7be034bb1e66bbb671ac579e2d29f12ee4d42c4949196a29daa11273363996c205991b53408890fe55fbef126d5477a899855ba623ebbbce00111322397a54e3a26c7ddef5553861c532b2db4ecf30942fd4dc2a7c80e430d014ac2f53e5be2fabef3d190c47a6f585802216677305686df632f6b2242b021fad1322310910a28991d0584795a304f03c7b7d22d0648e80587092f469fb144b0853de3c6f34dffb3f2845bcfb38bb5850965adacb419b2fc31df37a4781605b327ae1cafffc800f29167b310df771fdaaa995f0b765e966a07ff586c3b5c13e9bad92b615e4aa3fb3dcf4b4589c7604dec237df5fb030eaf066b17e275b0986fe4d3ce3971f0cceb384c1a823a57d7108e247f851936faba58332eec2ca74f39e8afec1b5548b8b2f25c577037b873839c73434884144223d5518dc6f505165dd08ef46cde5e16d73db3c98f99d98105151b487ed28b486f8e5423c0f743fd068cc1f42adaa14b693e0245c146c78792f08ad4bf9deae005cb888bdc25b172e70cdc374521cf165c32dcdedac704c854a3f0d319b7f39473002ef6c8a23c9dcad1cc0b423bf6898a616cac37957d0b38ab9c2e1dab603ca33c5fcf1c8ca5b17c2de6ffbdb7e9844680aa22e2d7d706d244dab708e8ff9cd986ae922d968e84cb06de6d07422771bcdc1b423f27bd3b3254323249aea22527047a34b5c711349e407e1820a033e1118f2a72732247a38a115391bc9030b41195c563a9d282570d969f73496eec08161ec71fa53f86a6359a53c3e3d7711a3a42d8eefa985577c5ccbde1704d67b24b5f1b3c7a7505958c1ac6f844f1e800e298968685416a5d431d572846554fd84641757e6a9b04a5611b922dd0b26da9d91e3663786df7459dcf7f13bea949d7d6c54c13a4e9b3f9fa2cabdc0c932d4dac8be8d32ada39782651f450ec028eb2a99d4b1191959365ddf90f5f58f818d783659b4ceff23dfedc29bb44e92cce9fb034a0befdb15f0f06077a9b5a68fcaa30a19dc302eef84bee37b44a3a0543110b103faa2d3f9d5d369037f1ee6164cab81974b54a750d93e3ebbd8b5185ccf0468fcffa6c1d29a9876c21ff5cd52f49750ad69a8da103c6336b379d52fbc718b927668b8c8ec1afe86365d2335ceeb6a8a2be55ee5d3743cf885abcfe6e25977317f862c1ea55467db1b2abb7d15ebc60c9000910c764acce5295c399d846a1822a87563638e0aecbffde86ca85a7f5429da24630ec7a47602b92a2282f5352984645930978afedb4b1959dff623b0d2f817a577156ffd2b7494f162c895cdf750b3d300c83c2a02f403dd4b4f7aa9e4ffe527925b1b968dfadd00f825bb53ff986d5b2fae9ca0ae16bab6a63d24aa47eb5e300ca068577ecd5750212676da69802eaf827725e5ca20a7c5564f96a733fe563dc61e53b2ba95e2139463cf5c332338c1b405506c2d71a6d337ed0da1409fe9f5d2e426060ccf6ae5c15903f0279d6710009425cca05cce8fc4763f2b52097d9bf123ae6e1a2ddc0f66fd2b1b85b7214e4bc5718918493f95f06e21f4eab83c5ee0d7fdbab58e4d9409999aed433ae81e2a2fba5df27cd3707bd73c34f46f01415e7d785165e8ed99152b668532062df4de60d84ca9929cc7a6f9379918d15bc9aac5061136ed88ebc083e454e96bb81b065477da06a55d0b4e7bb431154df79ad6e3a5ba5294e47733f347899067a673251cacd294406300ffb3cea793123960bcf97ddc99c846ceb54bd95fb08fb0bf52f0fb86f9a9eb6bb20ab9bd006516aa3ace3255323d5dec1ca7ec34ae2673052a202cfcbf10b72ebbdabe16a6e199262048fbf50df92fffa4efbf9aff3d56b78dfb9d616641d5d9723c01a63ce970e7d9fab8ed5d7f688414747a099fd2f3c88c3b4edb6fa3654721a021918f7d746b6460de575d7a951d8f44c32b92f907936e53f7969f6075f8e4f21f52036d6bdfd16eec7217270528eaa78277d792461db054225714d877d06262e629597b1530904943aadc2bb72bb4ad042b095e09edd9c0f2a79208f3494a43f7054249cd4a06e71dd7989eb9782ff9f49279d99abe268e5032b59c6709ac438fca99e1a6e78fa44fecc25f2ca5daf25dc9eaed8fc84da1521a9f6cc8548dc82a5ca873338a7886adb42a3502d203b6746fbb76d4b563ba96a528c953771430361883b139b0b436c4a1fde160e7d87974e3b8eeccf9dfaf67c021e0932f6ed99be4eaf8605eec458e1d37df2b2e495aeab3a1c817374dee6cb93f9a2e5d7f515b762ef1bc21251138ce8f4de6be91d15f4aa6a601cfb2feaaac23cd2a463ad162144caf6ea39eb536616a6cdd7aee192182f44c79074cfaf98bdaf628806c027737170e28d8765dafac29f4ea6b663c8ee7c34b5c560b964bb57921f5fb0087b87a00879b5656749e87edfa1bca6909aa4e804392bde1e7e57d1024b7d171a4950525549628c09fec7b9e81631860a09bd69405d3dbcc03713cdca7d1e4f5efd260ea9c91b598ce677d9f44250feffaa25130695fa72c4340e70f8218e21caa1d1b9eb080fef62d091a3f78456582e3badbbe9c824601b4133e86865470a437f49839821a339fe450e05322dd39e97d80b2c865a9bb6a7df82388e14f57715fe41a029baca221181e1e41f499713d92d6b5b38b88753c10ade4900a3e136cae2ae1aae2e930eb7b21e12c86379d957426f1339f8d72b414b8a5f081354be08f1a517e20391f8e0eb62185efb4e87032baa224fe9717226e7c3b5c387284e1fd863623945d13fd20841a268996ad929ee062303409b9f1bd536c1dfce8516fc121bed3331e41f4e8c9c754345ce105bf55f2597173d55a69a557c3854e0eb7ac6b3a87991d4fd93f3cdbfa1bcc86cc841544fee5a16c2f66a4da86b1065eaadab9700addb858369271fe56ef98918dd2f85d38a1bdf0c11439242e49a7ea1901243a0e541f0796c053fb457455f3d638020564e5dc1392e150ef4f0f87146ee7499ebe728c04ae7a178389c0880cc22131f441f8c41c856ea001fa1db6b0e862fd8a48cdebe33d8472e208eb9615dfb8304623589a96d83cd7c429a9f3c84bb91f68bc5c6be0571be9daa20a2c110017fd103b569fe33aa39fc694819205963ce975d8f9f89df111c127e16c3e3e8e13842d616ac1b54000bf38c1c72ba1ed8d6cfc6efdb9fece84b334fecf76f0c5eb7fca1e7e51d80d376b3468c2a747bf34b905f84707e009e273bb264cacd60bb005cfa558bee084558469b9107eaf40d7e1362571ed1bc94baba2f6e510cca6040eb3fc779f23f100d3929888bda13ca48e76cbbd0e328e95537b323536ddf9aefa33e642b5007ce2bb03086aaa8572b859646fdc6d9a73ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855774454e3a1e3e0294c445444a26fc519ec1e418db89b88a6a8a8ea0e2f32242940af803b1e02f1945cd215f54fc1d826f81d0471f9723230ae8c7d0f598d32e823f28939848aaa1a9011c279e2f2313ce00965da290aa0990125c7a13d6905a5d5fcdc72e355f55e423b90c3a3a670ce6b87ad02a82e9b07f15ae1a3d82c0ebc075533ab3440dec3250f14db21e841f154e5b27fc8bd30aae1185120c7459922efe1f121f083b7e579487bdf9af524a0301c100f694b03c5f80b2b76d3004357dc8df3ae6a879134cfdd87dcf7ab2c6251e9010bdba1a936ac5a8334ed72b8cbf94e671e2a68c28fd4a6ca75a687d376404678b0aaa4ed061702a9bf7467513bcdc4aa3586b32030ce760d4d69c4296e4ef8bb513c1fc9d8f4876f2d0bf04c55eaab066ceb35f56b1f91fb10dd4d63f40b6437aef8b392f6dbfceafe37747f3cc323ef908105a57b48ae2395fd6509b6c74caa8296e4ae23dc6478abd0da9612473ffa2fa199f6d450b19221e816e7ced5aed6b84eb0ab20b96e4ce148c33a1d29b5a945679a69080283a3c9667d465e49926c46d496c4b71b8470437bebb6a02739148e350e63ff8063179c3197008b1d32acc752def8e604926b6598702a26d4379a267bd228454a902a01703607b0224a51edf2c321c47e857335c85786b66161d587f52cfc1539cccbe8da36beb7be926501118587d137f975c120fbaeccdc57ec63363598dcc0f144ab7dcd9dba7ac4a280dd62e5b7d854cf06b9e2820e78df01ba026fc532dd8a45be4b7d0f7887da824dffdc9a08b4bdd243ae847f9148c30d881e28c9df857979ec00fb9b24e1d9084861a7a5c2c26be61ccbd4405fbfee52ee71a6a8e4f8f513b364a6e3d675a1f4522fa18aab229381329b977dd03ce57d2824e4182d145db4138a233b270d677f3117f45f3b96e8d2e0161bb915c0906d99af9f9518c2fd34446c20e8db44601c6c958185c60676428c2e78d7146399350005bc89c09119fb3e7e7eae46c28e9ac887b24717b63b43fa2fc37485d86852dcc8ba6b088fadf3c771f880fdb7b189a16d866a771ae1b6bd4e57e99e495038cba1b3ae3f954a035573c6eed31305c7a1c63345273cec172559f78c0a53c307971e383831f0a99b82663f82273ca6274aaf5cb5bfbd8ed9c6099899bc1b0d0909e800412802acfebc2d4a6af0be3d052582099d6757e7aa73a35dfe06c275c0438359d04c5dba677374dae784b11e3af4d1192b804d9a263e84439d23042c53f806905b8c796086fa2156edf1549b495c91db4061819cb51612026fbe6f1d6baa9903a4d980746b26c25c923e9395ff115ebea06db33b8e4b079d8882eb888f88ac9ca01af9280c335af48cf14f750c7c10ca96e6d68800c46a4e31e460c4dfda8f8a8f6d84cccc3d4542e62fb03e7eca7c870001229a3a99bed1658dc5b08160be927d81ef4d20da216ad1ad53f21a9820d641d83e2c8e2e97bbc07c3a38f65d75d5bbe03b4499748f8d34ce8cf720b4ebf471d77abd6e54a27aee6efc552db5bae8ee2f1ff32ddc2338687b50879318c83ac2dfbe0794cb5abdaf669a7d0c28a3489ec4904513313ff936ab394df025248b3d78b3d6067d55b7364f58b1f965a140048ae60ffeedb3243a94b5762dfa75f9b6a2f5bedeef4090a461bc963f46964f7d5c2ef40ab552136457a997ab41ed648758b075d2b034c65f7a21a339ce6e3f0131e026e79ff6d9c4e59d52868f93a65c70d3bee294defe1980322b73fc6d48f588436dc53be49f8c830ed091219638733d3679d8cf9049a1bb9e932b18be91014cd1442a890d4363788a78d99813e44b05708082400e03d441330d758121c0db4488262e1c3688273a1625fe8702dab299ce7f3a9ad664319851bd945ce4d0e20620187743e0c133d4f0f7a479efee6ceefc08a0acd1cb7db44e4f676501861260ea3d27e13d66fb99c70647abb597d25604b5f7efac0f4712ba9c8eb898a3bf2f2ccc58ad5221f5057cb33006d497d9fd4195c21fc4b28b8592637e2b0bfa21630d0c74a153305b142a2b7c0ba4bb8fa9c2d9d7fd40cad6c13fc9e4c4817fe23e988e4de0302e5e373c095a1be65d44cd08a4e0b69b6b5814cd5edb6041a03eaa2c872e9dcd03f76cbfabe5bf172e98290a14d8812beb9df77364d3d3ac7392c66e02ba131db05071a474c445121201e4f3b17da727a26abdfeb2ecc0ea7b5326fb3220726f30f9c87d810c8a50294d5cfa7ca5c24cc1793b14cdf5ec49cc9f185538e7ee63037bf91b3cd474b155960aa82cb4b0b4031736906c60950ac3c1534bbda0a59f20d2c8a64bc8f175e00833bc9b5b81b4dc36b9d765904bf9707f95511851f0ba2c2beb02768ad9314b1258588c59b42beee79338a855b2f2e76dd1044fc950d3cc360767ea1d0dfd783a386b0eeb78d5c185991029d5d0ea2015973cd58b75e678685a9826a9b412ef186d944328b1364b2cafd5a583c0375a1ffbdd9658a1d24dadccaec7b67226c8274f74f6636744017252e3f15be4fb4b6d503bc0bf87a209f556c3bf4a548abe9ccef3562f35a10bb6ca0f98dfd54cc0398e68ea4c13480fd1e0732e4ae03624e3b15ba6ce94f8095f2ae3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557c8f7b1f0146209e38b8ded1c7d0dfb0d4934746aedc5b68ecaec4dcc64183deab2bc08375f87c7aac90c3516fb98f2ee866ad58de8ad170995e1afdd3c3ef4b56bf108e1c58480049ea91f2686a8fff87a9bc9dcac5efa391892a8cc5359c2455f1e61aeb4bd4122146627cf6c88c669a256faac042fbf0c4e3b0b7be149bc33e9b36ba4f8c334c3b1dd6394e4db14d854c7a144dd14b0e87884b4a405a81a7892288b03b082746b2f607f5636aab328b23695d1d2f65b59e7b5f0cb8343133954f69822a79be70fd3dbf13b1fe64a6a6477f388a52f2e98df6a4539f1f82ee99bbafe061ee96e90443682b569b90d60b3efe25b7c5db73254965206648a14b4ae37c2608b594ff9943a149bec1366e1a4cf8b9cc97be2666129bb56bf9b39fb511a90a7a8f3ef91c12298f2b300864d650ef1924aeb1ab26c8798c161115bf65c9e6c467517901cd9fba0b32a0493dd23798f1bee66be36a723c9b8226bf92ac195d7e901557dc7a5f0888eaf342770c24a0df0bf44e252de7ce6a58602fa7b4254f51fbf96c519e24cfd45bee034af6cdd3e7bd869bb524a0e6a727267fdde83d284735c71a91db832d0595f945d0950fc6ef24671b5732d516d24ccde1a2238ade5d00899b4d9b7811e83deb3444a3312e69b2d9b525bd40c11517bdd3f25ae4fd8aaaaea3f1a0cf2080767ea857c5f0baed965f72833e3b77d5fc1642a3e37c204dd682dca32dd518fbf9c2b9e1560c90de00597bc6cc51917f827f2d8d3587a23a6d30fd44130973c2a6ca91f13344ef8aa29e301a12aa16b3f8d6d7f720e2589713ebc6d0aa6fc2ba7844df9fe6ad491ce209d744faac156075948ca16e0a981510d732cee2dd0cf0a496d1cf9bf1be1d725ffb74ba953082a48cd2b69321241f5f3624f399a89572515c21ce817d5cf37693b83bffb3c7c4aadc127d25994a28d5dc546d5b3322228b843b7854725a6cab3ac1013681f18ff33137775aa850de64a62752440c8de119d33e5824ebb66b82a205a102b5f906d156e6cee4cd230d7d5d48a18ac2380c6d250e121cd80c2ca447eddc1e2976038a0a9931a8fbd8e3855c7c81f69b35e278ade8df12c8a80cde9c8941b6e7ab0ec0914f0afc686618be614e481ef6bfdce9d33f97dde4e94682ec57af1138122c48a2df3bea95d03c9f86efa5c138fb3133f27ac48dc896c4d65188d9c2c65dbfabe99665e45fbe7566bd70a7c79426160d2756012d94548f5a74e364e0e4369b3ded377ffafb1692d3d4f88b12fc38a4ddfd818927b0c094f34eb5fdf05000694306de75c7ef84cb4b8fa47bd70aa2e89f7b96b2487c7716e1b5b2f1cb1ba79217d70724026a00fb501f44746f56af7a56ddead4ea6eee6bcd3dc2f2390caa11f0beba538ef095a6b57a082d89d029c8da3fbdaa16e83a231ac0598623f67e07dc0895f45e9ff7e9200872abc7390c5d297e274043d86885477a10f8844e968e78dad3598a665a7950e260d3e3207f0b792e6b99e8db28ecd3c0849653703c83ce995ab81412c8d13ec9ef79f4acf9e35ea467ef3c383f1950bcf16e231e5263334df5ff5f1ca4233702a3badd507f56679c634cf4fb054ba662bd729712b2a68a70570192947c05414af2790bdfe23c6fec8ff3a74a329f225f868aec6375108337a9f3a4ab765acdbdb04205be39e5b6c07700e1d2967480c1ac1b62eff2e960db908501475c7cced3ab876b5cba64ef56112e326393f64717368d3ad951295a470ac71e1a365c35e66267a092ffd89a8d9ccb6cc097a585b7f65cf366dea85cfc2f9e84504eac3c5bd8c90510f4c52a5bb4754486c4160b6503d3ae2e3e461643808c6c37aa3cf57671b1b074f84853f9dbd0fdb6764bb04af8200ffc256ae3ab3fd8c9e48ce9fd0967106c3959eac85a97744a9c3aa122a04e14a74b47d51976520de445671ee0b76c5595fd984bfe2c11090b7d1cf7a03334094cd107cd5917f3a883b39497c37efcb399622be3dc4493c09071fb502c04684164120ab01479025fcb4ee457514145f7a3ad2539491941857cc337c53b481875d041d1da85463073268c20c13e4f239c2fbdb060afe31b9910df5010ed88ac3bf3fe747818a74d03977f3dc402e6f20cd2515e86a26175da10b34c631ac513854ea3122743a5374795e50156b772602037571c7b184b66d10a5fb753be4d1c0c777ca21f188eba90c3862d5ba0b7411502a0c68538b7f2dcd53f273947d754f172c773f9bf63f8d7e4b9fb92a79c2e45c6465add1cfbaeed83521921ebdc503101e1d0f3445f583790b9945b3ee4b05fd8f96c92ea633a8a883d455f66a12535129f517f7fbbe09af0bc9d70498648ffc80d01c73e0648058be142cbeaa69cc9741e686da4099aea8c5dd7dd1f44f19529eff77b1cf52dc8483d2d30b7888236eb6d0038d523df83eac98ac27d43294942b0b52341f13b9d70fe245ba50ede36b9ddae855b32a0abf8b93e26d0643501a1775caf96c697673c8bbe30c4764d8cc6d2177babd741ab02ab325c0117e44a400c6db6343c76ceb279134166f81595e7fbf92d79e36e7cee85453d6c488fd2373b5f68dc4d9b3e7ae7003a4041540642ccfec001fe0e0db12b458031c157e1e85af58423ae4b2c17cf40321009ca6f4c5df6db975e000ae6ecedcd214434a16f0d2ca40a93ff55d6c155aba46f2cf8b25d58c97469dc16817770684a0e2f0d2106aa3473fdbb9755926a878088ff414374f84d68e0b899f94c11a2508dc4a01709dd6dae50c992f239b127acc0165bb93de109e4da9cde1367734d7c5462d61f1cf0b00b3738cb22e3b4d97ebc841e4d8d2f91b1886d8f3f951f80bcabe545e670a88997ddfa9f7bc89cc0b4465f39547e70f89ca5a20aaa37591b9e61950cb7fdcc7cc8a9f4622e8ca79028425c654f9b33e3bfdb23e03a470d602c92a5d58dc0123970fd2597dfd18d5ea2b7b20ad7cc2b2b2aa7bb5c003e3118b3d28b4d73daba0046f19c0c6e9a60ed94c0edb6b4d415a653d8d90d6d48ac0391fba77029fe248586ddd383d1367dc7813a93aae1ea0b6e236e78d306a9932e4db68d4c8622be71788c57a657349adc08faac2f6ce6e77846776a4775acbfd8de2f50820bf7e35c8e836a424cf3cde0f6ddd62f5110486d46399e19187260d32b65256b2e93c7cbb54c687e8aa5cb654aa7580cc617f9faf80a86cb73007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc81779d0639aba859c1338d31b531ae01cab769f5468ae4b3ac1bdde2716a85d8a4b0b6b84e6b1ef3f2a36e0f7a9cae7d33d2c17ab1646565f358765c74b2115dcf37673007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc817795ba0ebc9709af1a672f674a4bb873cca7387990de378974661feb0b80cc293d6fddf8918cf7c974aca0addbc10e3c7066a48ddcdce94cbf9ee65b3422cbc7a8ab40a27ac37ef7745f882a55e4bc289f9e0ce96bfb1d88361ad458f639d61bd199734f4d3dc3b7b11a2580dd408895f66b5297badde7c387716f460b98ec7ff6265d3f5dddf79c4ea63bdcde8238ef12bdb41783969b0b80acefde242e68ba3d875499dfcb860186d854ecae6ae87086dcb1bce5bcacf2c532690c4576a36ae2a781bf6b4d39f308d08046e8c63c59907807da8717c3d45ff8e5111ac422d660abf9fbf2d0e92495d2cdafd50323cebbeb63a3c08a6bb7015ad22db6e7643cecb612a7be062682a0fac215c336007573978e6e8a12839d9d48b364a4465550cd9ffe3a3173334f7c7f74055c41e540a474d413040221a858c0091241bbf28e63eeb4619a8b740e3068b30d0fd91072fc2f0a7d193f28a543d863309f235f8f4ec68b21fa95958198e79240e3b5d19da9f2ee22f53470458135c6dc4595ea023a8e7e1b2c0a9031fbc9e999438d6d65847f80ddd76244dfc5a1efac71731d40f85c7eb0b68d5856593c34078d220bd92bb699060bf2540f9fc34c0d4fbae1a0cae94c2343923ac620a19ead21d3c1777070bca5ff90e0d228015def3184c5ed66e33362634ad837d9708bb0898f5609a1409d57215272813b9bdd7b6c02dc275a47e0938a4c5c83e53e533a0913ce3da53f54c873bb1f418af314c1be7e00a751b8bfa9a398e97152beaaf385847808ad2d828c1c7251f1a45bc7697723827e7e7b864c621c47c1be06cbcd26dba4833eaaf9c049628eeaab29e4621135204da61df1c78e4547494b866cd0278474a45e84327f580bb4d3edd6881f69d4c31e2f04786bfaf15f3c6de00946743dfe02a8dd7a5ecd595233a11c8146b3574276162796408a082526cd575413addb6ca97d48f141fa62e188690ca5222aa8845fbb606f8517f8828faaed54f2dd6f1c593af3beaf7b0e1340f0d1d0b39b47a2cbc3746c82944a5beeeeeb7e67577d7f68ff6371e6104827d0e670cd184c722b1daa39934523d603111be24805e70cde7f19b959e43845db7c8af2733471896dc8d88e4b4398694261203ee1a23125d0d546f0358c3a4bc1e9a2d42c6e16ab4a58376f95415cb700afe71be30c0f76713d87873dfb327b171d0781a9132da653190dd428cc805fb534b547e3e211b00899e6f2625913666e4e9d45674bdf87fbadfc571d8648ff82726c4587fbbbb5dca57f592dd2228a970255404f22c61865bd004cb9267b971b6300094d3a99a1eabdf139d13da86d8177e9f06cf74a2fb65051ec01348fa84bf2377838a55a513eb7d6185ffa6b0bff2af8d1c5678b531ec842de7551757bb2eeb606a4d3a41138036c07204e85fcf9c3b4ca53a0a232ccecffb9555e76d451d049eab675173c8ba5ed709e9749ab25f4846e69f83d54af147e46a19159142c5174614930130dc5b0f7485c91e6aba70339ef5b367844d102a4562413ba0b6b5a0972993a277c6b7045bc5764dc0b7b3dbaf3849fcb1dc842e0d61454ca8d58805929d815dccae00e12ea3d1ecccb209a461b0ab7f726bc390c2b84b89607743213a8fc2aa0e83d0ab72604da50e9164a2ffadf8d6de0c3ff66bb2760f1450273a6cd569cee83129c6e45aa9dea7b5b08251c168a1c816e3c228f9dc105e826eaa9901cfaf6198e79119ab91cae0ddc6a9657b946fb69a9451371036096e54ab2d897396a4d87741957f83cd92b82772b0ca7e15de36c4f59c28f5a4cf3ce45c01417ac82d5d3c5d93d521e7ababcd8e2e1145f967466eb77bd688420c57d32e4022f3899be94ba2fe56acf3be46b344c559e41659b2e9d1b1c566da59f2812882f752ed8ef81b3e61321102a2a763393f1d9f76c53bb7056dacc8441e76ee7953ab89f815130ce540aae9f40011121a7b499bb297d28060e6698a15a722622be79f24da3a25ac9a822235ca54817882cb664414dade30e476fb6ddfa7b39d162dddce71744c00f93eadac695f23437227db36cacbc8e7b0889faabcb109da1d058a654dea43ade8f36bc3f87d9cc27be2a38593bba1624c0eb7a34150482adfd90801876cf399253f9107a43d23c136df75a5e2cbc7c5710b2e89994e6d99bde5f653a74b9f48a4b0a6cdc604a8e4f050890ec96d5e89aa9a3295e1fba220c06e06b5cfeab8dda643966e568c5348b959695a22842f7c3ae8907b5e9e4b1ce5ba743e6180d5219f8238efd8e5dfbfa0c71a9f0b2062f2a1927ce3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855610d34dce8017841ec5882a147c263bfb794db7695c73335d8be59a0c77529fa48a958d9cf47f3b69f761e9a38574736b20997c3afb0a75b36cbd48f60c90accfd0b754d69fb78b16716c9345ad4ed8b80bf6693672eea8324dfcae5100212089a2fad63f50d07687241e8cecbfcce91deea91d9ae908410c363347731f5c6e1e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85531488bd2c1674a6dfed2315e0cede0628fad895dc689a7431b8a81ade29f4c13509ee7ba269d545b51cd00501c4a2b5991ea8c4d0fc2cee99758c2bd609d9bbbaad47046d392789ea7eabe8b96b0ee23fc15149c808b79596eca524824444d3e273c9d0346fabbb0124a70654121b090e1203915a41692da90f797a9f298bb086cb472ed499d17b53f7e6ba62ae9598d7372e06f35cd095d3b08e9375d3774f9375764be8f8e651259c038d273c4c94f0ef37a61811ca45005240f32ad41de10e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558755d777a827deaf32df19a72f81f5d7eb9ed54fd5914e1e5eeeb84c0eb5d5afb0842afec1a7948546fe6d0dac813b5b9e045a2f3b326a1df946f7045ab1a77fe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85558b867b7b7c0076e744e973dbd2c51efcef8f880361d8f24f0b529fd22c9a43e0b97aa1c6c9fce15bca4fed7e6811fa0be4b7d2e330938c9baadd5f0312138345344df1def7ed0c3d9ac82fd86bfbcc36d92b65154973de95eaff6ec91af20c0d9dbc740ba9dae3fc02eeda599dffdffdcee19d3a052069705855a2770916b31796fb3c1f825c0c624d79c7b5299f593cb885b9587e550848dc37d747d6653009178ddbc4dd16ddc6bc3d9ec1dabf5ab721dfede42e1fbdadd747e7b0c9fef5c8ee70431c65f96ece6092131cea9e3a62fc186adc8a972041ed6f10f1cee89d00689f6d3f29b7c73f81dee162e2fbe8510e21a898f5e770306ac6f96c70b7968f17ca3099bf5cd36b7f62104c5c6a0e9b5fc96f583c4679132c0469c096cc50d20d2e1cd39366f175b4dc6a094263433475d527ba65bc97de62c6e27ab90c35cd44ad0b9fd1292b26185c4e756b39627237b34043ed07144a9eff6aa749f28182a483d0390521060634e9cacc92422f6b42d5499b6a05e88a3f9fed181b3ed41893f889dbeafc55a2256fe0bbb968acfc18db8720e023ee1872c047ee08d8473dc075981ffa3c1461912a701bf4b9c9861c428097290a382feed3ef585b9cac568e90709d234314f6bdcbb8820b4b96673e0d2f343ebbcba58d5372c1edf4be77db525e801c760ce6aa154a22ce2942c69809779ff7620286930a580cd1f5c9ec0ed34862dd86700d6d7e6bcea14113089ce092635e92ef99e3a0905f3a15d15e8e6a3b88913196ae24bd80d140d6def5cf7cee75fffa8e90bdf62b82ae454a7460f890ed6997dca16d7389040a3c1119cf7d745e60a27b20ea0608c5dfc7019d2f61ac88e6afdda55b4785c7617688f54be83629ab76fbc2cc248195593dde7fba3d540b7985e275a887e612bdf8b37196613297cf621638a2e208b656c590a0373d6d61480f2a70ae82e4b391428e59269532b175fd1c894092061ee5424ebe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85585e41ec0fde536f82233a63855e43ac15d73f257b8baa7ff7f2e6adc428fa87e182052352978ea62fcb9e21dcb388990c9a4f0cef9058457a441fe0225f0ad5233115c8ae83b6d571d45099e1758b571209e2808eed26389ffc50c1d5409cb37bcc7625009de845973a057ce325c18b620effe33ca8b96dc1a0d07b5434a185b2d625cf8a0f60bb971248f72ca505103338967450d78f4089273448b82d82f3ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855d2af67b02c4de7379e30b1d753eb65b5720324ed73baed5a56c417027d63fe3790be9e0b7f5bc296d21b1d4d638213338af07c194c8d9094339b2a96924a2cf2ee75987f5236976a54ae48ea7c6ced4028c09776aac6ab12836f79647f04c03f17203c1aa9f6feb3bd89f7232ee08970993eda5b32d244ebdd580ba14d4a33435e12e3fba2257b2d1307919da9e7ad029f296b0d3a7e179a2c0ca2b6b9a3a8541741bfd255a09a7f2ec938f90fd0680d755507732781debb3b97716244a5aa0b975b8272f9b577b7edbcd9ceb1b65a9e1ca2404d6a1b45b2e1548efb83bb4c1e3dcfc58ec3b5a00af85317130c52ed783cafdd2a0bff56d83c0f57d13d790bf9fcb1ad17a335a866930c47863c888e9115d24a9c037a99192a3b25038d751cab496c680238bb5093ec1a6f521c3390f671396ab081a2679a55f9a92979f87e9d759a3218afa5c1b3691fe1acb11535a4ed738e5e6db6523b8428200b8995a77557cf5143d459b7f9724e42a6db4b2a422ace98c8469a8f2cabdd3b3e537302d04750344b16e8795e2752b3c41f8e35aff7f16368238ee1114018fc91c6b294f69728f60de1a2d75e52b111ba06a3d2a518ca0e84a9ce7bad8325561e2d09e128696d95a4acf34e5332c6a904fd04ec4524fb7165fc85a81633725c529558bef47432340b3d8acdb28c148040f0788b17a7fb24e0b67d8de0e9ee9be0051842ab1b86c9f64ff2c3333016dbc54345df88f0dd902bf099ab727983d36bd94a1981eec0a5e0fab930c8183ce0d19918ea36e4b4f5a93e0d75c512729eb0d7ee2b59e1d6771300a4bbc56f132586a8e2825d881896dd73de698eecfbb5d6b06113e47ef400f4b5856a35e95e747f14f8bfb36917beba21ed8987ddf08b3d0fe18bf690b65e4f3fd352acc9207b139f9fea324fc236abfa454388591e2ffb264726d3385c11a00849abd2afcd46e3841ad67ff546769ab21bdf16b7d7ed706b89aac847499b41a4b5ca1174669f718b40afb98753870e613e7548dc42476aeef23409639155706ccdf57f047566374acd40629e1876c9a3278ed2298216ffb91832b02bffad9577d181002bca117b9ed98089fa756b1567d646504b0be80ca10b2edeef1e112647319c33457e1e10275edac62d3e702c530d95a3f274111bffaddaca532af8f49bdbb703ddc79d4e928609c5bc01b6b0b806f38c124a09a3ca4ead74ff528001aebd8ee1a76619f7294df23f02ac9225c4e4ed8695ec8cb551e439c917f152a23c92297d10cc8af8dde85c05debadf78a2ce3a94a746e6355691b2841440fa423c60620b9724b004a99abaf2f56f7ddea7976e20ba7c409605dc7010258f884726e2f7a7a1f3bda50390777c99f1dc7ed915f8761f298c2b5b6072fac855fe5c9f985aa29a098eee0a6ccffae2c44157a6dc39eca974bef35997440b1b9054bfb1c95fda3355c51276c279984573c895709f9f4f4987f063ebb68a8075671e44bc7e7cb148aa0e36278f4f161dd48d41247dd8e52e19e69f55a1d92176d345fd548680177139838385e6c5c372598eed44f1caf751b33a7fa847a2287a2ee7405ad06b4f850a95cfcc9091722bcc04aee11fbc0fd44953ef666af8752a396325a98d944d86451f8b4ecc85f1fc38773a0d56aae1d553b343fb0c8acfcef65cba1c2f785ccbf9156db35ff83217a6913dface465366381a8b727dbaae537b44f3b1b646d78ff490d8feff1dff01a7dffc42d06e71148fbea6d68cb5e84e5689e47e5145bceef3d49e16f7a257a9d6bc2778cefa6eabd3ff0e90888913a857c3fa6c25e8a52b00e76a96eb9a387c3e0b97d46562373fb2220ed60900a15ad7f04da1991ca9fa677b7fe548825f7e45465ec9f7089e2fac2d7a9f6c02ab84d84c0ab5939dac61ce089d494d36167d87053771abeb548018d4de8a5780ead0621f0278f1b6dc78087cb6e43351894955d77cba575ed15b3aaf96ef00a4e6b4e5e9dc6b10ae761d945b290c060929d1c8996f758f4bbaf32fa7a0e4228d569db1cd4f2cfa92b3e94586b5e6ca49dcc52c16a8613fde5b1f0e068a34043985e172eb73ae9addab96a9eeae921ee35eebf4184e685429147a18b973cab210d49d7c5965ee14b24af69d968a33cbf8846c15da31538cba421a65fd8dc7cbcb237efe1c36f59ab040fc2459097fa49644d6761b2ccadfeb8ea4836500b971fcd64f9b51fff1a1c82f68405614590868ef1a147118ab6b5dc61abcf93ccc0495351c6d8efc9f3fe71c21bdff004d52f87fc2bdfebe58ec76f5ce90ecd697b3f7e945d5c4c252c7f489c5e50a79a553d3cb711073679a0954c4936aab3d39c3b4b22bcada4f4a70e3d1569dcc4d4593634431f90152f157b72aaa8516c73b4eac36f022b25cccdacac275b3e52d2d7d036fd22254f1aa2934ff03915c99534249bbb4121d75f320682f46b2f6506e053e812880339cdf0fe516bc1a9cee6a6ef068ffd22f1c1991110ef029f266f7d4f5c96adc41e575f4d72cc23faf64591b79924cb2f7d418561464945ab14ccc9cc6aa2c7ca56023116f5f07bd18a233e02efa252d258fdfb717c4b1f67f7beeab25ba2efbb8aa70b53f41c8fe686552d487d3328c78fa0498c49e872957f77c41b483c1b4e7cb27ac2801d75233335d38ef904acda8de90e4bbc152cb37e119ddf974af645a828f7f9945987208d49915302443c330824b6d3ed2c0858ae6aff2cecbc5f6f5b0447f3205abe13793be4686b9378dfed558bfa90eda824dee2f8eea3bb881f66e543606b819b7c334bb3ab8f132355932ff0aeb853ae27471aca7a80b4470653b1c3a082dc018505b73d74b0af1c05783c9efae1cfe1bf7f53462e5d96958bcf5927f4af1fb42fb0d0be7aa9fb6bf007edbe59a5157eae8acfb6851bb87560036e2335cc56c2272c6ac47b332767809dcea1ac90ec256c3edb65c6591269af008d413ae362df1494f8465999e7a108ef8c49535efedd075470dcab7b8006c27a3b51869d05f1e8b4a6264cfa41198c1931ee7991ef1d57480d4213950241c4f01e9494557b12621e96cad2698ec684d3707214fa2ebb113b6ed9bbec705e1bea95878fd6088f9c9ed3c3a840def37014a3f6752f2c2057ea5b50924bac303e02b417adcfe22daf170cdf58fcc719c6b6a472380111238e06c160c6bec4991adc34964b089ffb7b72dc8bdbcd598692312d890029fe1688556fe629d66e2eb61c9509303f269ae9f83b4002dabe90659f57884d2f9748275cdc686933bdef4e42975c1a79ac1993115a65473b66a3a5834275eccf2d31400f80192b73477e2ae2a3e38c1e0f49164b66c4e800b02a67667d828faf21e3ef3463932d7d97826f20cb6736de59bae5cc6c8e00d058540b7a7f93d7f00709590e4f3211a7bcb27f6598a26e036eb628b7ce0735e0a89eaae4854ced5f6e15ab5c75c9dc66f54066983c9c8ec92e2d68c863c3e249d23b32626bcc00f0407c941142c9e08ff48a49881f8faa5aa064c3aeb0d16ff85fd3cdc70c0ba1d68058ec525f4089d3a0511f595552cc8e5ac18028fe8f3dbf9cb30ae4ac3e6bcbce2447dd3c9789c36cc386b5ca7c86a7b4c2aaaa8ff93ccf16d0c8eb1076f40ee0dc120f24487929003c7f5e5c02d647e0ad2fdde76b964d8ef85ab33566ccc58eeed9f1e4ee443422fbbf6add3295353fd7aa135a8dbeb42b2b057a093e43c85e81d6803cbaf1028779f8384ce7376b102eb7c78815c41ea1cafed1d9837c8f9d7df304aa7cc669f22027be5958389e8ae79921bba5943a7edd814179ad32cb721442f065a97b7caefff9e4db9e6b2011679f23911a4255ec72ff407884e51468ea833cb00c81a4ed0294115d21374a148510c657bef477c2c420cbba44d3fc07988bfbd9a11dc8370ce697fdba7963735d6291922809c9b7adf4cd762bbef6e50eaa6799408579368461599ac0721f1b6202b1da03884466482446e30bbed44d550e837d54aded17f841e55e24523ccdaddef4b851abfc77e2ba70e9e046f682a14c95622c785ce2009b4551ca4f18450b984c7a657b443a77cac7955ef1fa67a87c90d8431011b1f74a7623bf46e994b69a4365069f021dc90a84cb5a899625f4703de4c236bd8c2a96a1314e06846288ba81a428088c76f2cd1c7b14e396accc5dceabca9ae7b854c5f7aa5196deaa667791195263370f7afdde39e80582c5620299a176a461638db5bd2e1caf8da1b70f03315b0eb33af1e353f4f60f45b737f6d02d6815fbdf26be3db4f96368b05ea769a39b527957f05d4e3c55aa37c376857f01c32af7a49baa01f2d671342614d9742d632d4060757783b5e62924d14320f46238eb720fd97233c59f334018ab2db5d3d0537031fc2f0ba974adb8e1ebbb92aa9422ccdf7cf7e8332e919fa43e7073f1f2c6e1a6e580bc06f898f2269b0607d9ab5208945e525154653d6fe2f8191a2bbecc0ceacd8ec38aaf9741317c753f27a47fbef709a2497ba0d3571f54c3f589320b0fbcc1ab842adfd7ee0fc209be2f986371f8cdcb3b6a10b8e325cb27d3682509ea99d2ca793c895053485693c0761587b2f2d29a2d771d4d8c2df6c3977ff24c988859f1b94d979a945b01f9138a43c7ad6664f6402bff2e1afeffa9a2d5bee9fa08b7031772d179d1032501754f629aca86bc1afb8570f9b8d4a5a7d6eb28bf7642361da0daede4bc3b4d51074b082a975f37c5a463639ba597b2fe2cb0379e961a91d320ccef8a344ad64b1950733abd16049b1f4d9dfdf4ed4f2150370feac9a0b2ee37d06f8e5421ff50c443146cecb5ff0332100c959e25758c84386a7509b8b9e9ae97938c3a569da6a075f10fc652bb46f5f94ed479034c1be965295f8f16d9cf15920efd005095dd2e2229a0b0cab34728cf27eb16d331ac87a8f495589e3a890b1846dcff5dd14afe3908beef9738b9ede70ae8d031f577d8dae6529d4abf3c0846ecc134385a4b0fa18ce7e3781399fa9c0091df974ffc81771597aa398f0ffa3cf347995a83376ce482bcbd16e44f87f2c947356c3399b18cefb7767f3ba50bc4c40af1a436ed55bfd5c36df629057eaccbc9df887b3f87c3249defbbafc33d3fedce1950c6ca8fbfc92cc66a079c27bff39cde2fa084df701dc7dc0e2952c893730e2a4f2928dcd361eb903c75ae9c4365751c67db308c2ec9f13d24c1185887938ac502a0383f58d592bd766f351751bb83ac4a240188d334335431af74dcb8d3834d1322ef69eb0604482ff1310697a1f504b9f1de35f83b4ab6a3080b3eb481e378c2e26f91a045831e3d61ed2543e1e60c208e64fec31c3da5a62326b3722caf13e9fe4202a555bbb7448b7979f802938c9f7e490078e96beb507219c6162a7750a45cd134d877ee0cf2aa176eb36c66238176408b2b67c7ca44483ca0d20b440e25c49ca188d981310e646f5415fbeb4b63111f0ad65d38f1dd30615370ee70f5c0b17dc63ac3580e4df87cbb64d3d4b8f62cc83ab3444f55e3219803815f5e4c5e88768c4410d10275aa9426550378c04b31bea6eb0797ba480265528fef7c9730c60e465413c8f12b63a7dbf179b310b0263c3a5bef5364db0844e6721c6c28dc9c509ed1f5de189dfb6e3708464c7d44b4d58cbfcf9d0f1768eae05e72d6dffd5129942e5e399e727b6360305e63c0ffee2084ccdf801b39ea7017d0379edfc9560c983fa092662a02120574f5ab1654e8d1dc5b093233b24484d911574e73d0522b50f1c701cdab47e8bd6ad758846c4d7174102bb5107ee8312fcd988d783727380f7fcc11e69b26671890b55cbdff8656f93602835e7d83ef1856f22880d38b7851f846f6e9e577f587115c564a0e06ab2d7689230b6901f036dc24dc2ebfbf066bc38e5ffc673dda02a3330d9ce8ed379efa5cebe70cfda880526837c0d8f3b535fea9c6487ba336cbcb8b889dadcd0568e7328e0d9c25eb6e2c6144c5ffc5e60b74bdb610beb4dd438c7a882e779fdc8d3ec7262ece0e19c4c461baa9e6d591ca1dbfaefd8dd48f580d74331b9f5eccd8a2d6b0a818016d88528dc066eb50e0b2cb06061227a765dac2b42bc7d38b2204296a0b9d6fbc001bc9e987675086a776fc6028c2f8e3fc4ef284ac44977725124096d2426bf416e83bcdc45433657861619e280f7092e58acec50907d8da489ec4bc866119d1b2572d6fc7856fd762c8f6e03ea33ed277fb55a8f254714ab3790aff29124ed2d8277edea5a4eda13282e0b6c71180ddc9b0b408a86ba7d0cb7d3e255099163b9377d5dc130182998898a0aaa521c4ee626028755084097568d88797fde2be030379a3ced21584efd3f727bef895a3ef97f25cf6ecc9e7cc4a3bc1d2b8acefc2a949c41462d6f148ab7cb37e5992585338e55c37d6e3ddb03c1cfac2c986b26f899bb949119924eee94c5408579f1057ccd3a05919dc8637bc171a7973e20661448eb4ec468dfcf33ffdc0b5e36dfc6e277f888c9d593de160cd11d75cc1f4994dcf0c6c101c5d022b2ba32f9f55531bdab85f18b9c048a6f4a8f13a87913dfe25eb33c661d35b600d31f3a20806b53e5ab44953c3a2a3a25be73e47ba0a53543005272528b690c9307b136b41c12ce24dd1cd73ae82c099d0bb52cf1e015deb4e4ee2276d9ac5aa1f86cff73ead9ff5e04cbd0d18a3f5bce78cb1c54d6a1a32866ffc8b757a62e8fd401b620cecdfa2404e3f4d301de09aea98b637b5298651f74d5c1ecbaae61bfa16b0385239243adceabc78d70e91849d4b8f3977c1358c40833280acb36d397a02a2af3338e212f7164e623e37b91b0bd0af8e70b890270a15d32718b4bf1412c29a4c8555bd5e064bf0cefdf2faf66d0cb21d02f18cb3d30ad717a11b99a0180344c4bda5d41ec33595e411049f98bb717069c129454eea100e42813a6f2c983a3f4a54e2b02061251dcb04142f3ea6c77c065c1e744fe11ce71ee4acbbe9d210a5fbe04c2a3b22e25eaa474ca16599f96e14c5b43579a1a81287749357f4e71fccec5dee31b6dfdcd84b81076cd0e4ba6495ee2ee595a523ab4af9b318a7771751fef91bcaf9a480dfb44c57570e671d9a2fa6452d85b5d451f4d698522cf9ffcd9ad70be03e58ff7a4525b11fe79f2b6a183ab41f423dac54e2b00b5207dbc8af684723dc6cc19a875e95a0c8b52be2f60f8ec8acd348cd9f90bb672121183d9516a07735c93e0f2ec783c272e478bee2445a9698e59214d6af238ad6e19a7c8ecf64e6437d4ba28a99af918f58a91564cd2400659964d154c5cb19943189034c76d47dda3f0fda30763b748fbb612682f9b6642bc4e335539cd3e8cb3f3e034e832360f6e8c3f6a9316ccc38ac34b61a58a1d63f640a0f6c5c976b5fb117a590e9a62a3a2f121335125b8463fcac29ab58fca59e5fe91ae18080de741ac2094437f71c268d424bfe0be7411ed853586291b7da4616c01edb42ffd54d9134450e570d1f5004b03d428dd2404869189b7f0d462a6877b0ea3615717a6b2ebd2fd95f02313f10870d0ba2c2a99c56c4eb225fdf6e4917826b54c131c4de7a3537f13076438fd0d7ef56af7e86df7ee6c0a5e827e69f06e158a56afb124b37efec0c75a1ec1a4b7db141c04ae9c60e64495fb74d8fffec6267ca150fb4adafa5dbe4e72b155a9df3b50a0fbda9b66ff8761af294614188d3b3c56aef6f54f85d0dfc5765302d8b8ce77c5765f5141b449b12cebd3d1adf2ddc61e18f136c9d0c4969997c55f1e97c9959448de5ff37e836319c24d8553d3755eb44eb0e2eba9f7b8385ec5b859b7977e7b0df43eb096a46c9b3c87aa37b50d1b8661d94dee84a639f7dd220a8e530f4f45f3721c74937f01231ce0c0ddd827713e9579d72c60d4403fd3772abd05709a2855e63f2f612c95b33684afbf688bb37631542dd4cbfd7adedff606cda64205312f13d791c1dca6d5f1b35eb87e71d80284343a2f834b3ef1fdd57df8f240775346340369186b371417b1b22a3a6850a35e1e70e423879e6b6d68faa86b1036a74551d3fba019ae0144ebb5d07f8d90c3b2e96024dfc7be23c87c9f31f8e0e7437a9e60e6bf5172f1912e1475097c1cd32f57efccc487aa2c5e9f9864b83c53860ce02a74f5799b2ee9a1fca9c03d956d6131569f5c4d588753ba2cf3ff072b848be361509f0414ab97bb2bf760f3272ce4b093a0e586ce16b0641109f7bf5dad5fc2e075f3a54f31a6ca13581545d5d3c229449164ac0135629435fe67b5ff1481bf1f262a22eb866dea77dca64048d048d458633134c4e932b0c7cb0177bcc967eaab803a02e5e6c1969162b0e80a2623d28894cceda254399cd039cb34c55fb271da522dc3ee43f3d1e02d53d3597d8905d811be8716cd9508887fb7e886acf6e1eeaac346c0d52ed82a8034113f218236587d791f204516536f8d7670f4340f692a3cd34b60efdadec004700a5f2582164369edaacb08c5617f30ad59386981e1013e7bb49504dc1d890d180a53e78f9121c37a393dd713355c757a05e0de2c827ef397ce00d8dbf8c8250691ab980a1662d0317ff20240d81d31f95fc4b4f9877e894a6f093b90e4a1174863fc9203f6d3b51edcf61553d497f9243db48a7a814c18faa0ad977e90833e0371ddc25767e2d35cf364d0081d08d69d0bd3628b53974a9624a4eea4c54d583288048af6665e279a97f115a69abdd5f5dfaf9baf075e2d872b495b945aa3f1b738627e4bb17cc4fc1b3e1b5c84297e7906f2cecbc666e9b03bdedf5b951785ec7676c81d7e646bb3a88238289729f4e8e1dee7d8223a5dfc217c35391411a298d9405ae6dc26ac10b980f3e0483fe6e53927128568a32ed5f7eaa4615a5568164c13a72462029d3f4c3d63fd2fee11cc9440ed9aedb024016b1dc77f276bbeb4488bf5035b2a78603b85fa266d9a534ebbd2a8c0b4992209d6d8e43fd4a64b213da28d79db5b394fc45ca8f713d3d3681a503a36f480695ba267f8d53bd0c129a275e99ca83b857ab91e444dfc648ebfe0082a4e00533952832a056b00c5d402c1b9697f4d17fbb7b764a271a46c7b61041d8ab023b5c44b39198944dfb7b9a20c0df42eff401a82635ce4270b6dde90402052b2a0c159f280e73713e02fa5b7244e3b9b66f9df73eb52af63871772808efb2346832888783c63e6b0bbf936a0aa9e141a0120a2324e9383e769f50699da78ec1bdb7572627e7580acbf3cad72b1c9cdeaf711e922ca04e1ca4684c66211798eb26c35ec37aa71854a33f449e6f7456ad6bd2bff5b5d4df65929b6e9f7857f72262e991389eed9008ba093efe1ac7f36249ee530b2984924fcceb784e874690ab2f84bea903bc904c07f58f23cc8d54e6ac9ed83ab4da9c140f3ea897aaa2c24d05eaac4c796eed0c041b8db357e29bf824e1797bce9e1f6b0926a8560d59b7dc7cfd24b93db2170997c094d79e03c684933ad53e91a17023d3116c9eca1348bbd2b5e0d80c7c80a29ac4973ac83803eeddfaba4a7f430dfa87035e4c3f39bee14bcbb696a3f40bbb189dde1543adeab0b4d4ee625861da503c2fb5c748f351df4916bceb5a493be38ad4fb17e0273fbbfe06ae2ffb295269dd930a9823c33ef37c5470f49b1a0013594ad53e9173f5498e8a25b44e4fc01ed3b321a5269f11b7672192f196a098aac67dbcdcb925617385e02be54485efb1114ee2a69a77a4ec60a126815a29593b6eaccf9695ac6a28b13e8ba88bde3bf95b6121e5ef11a5b236fa7c00b47050de6a1db9b6326521f632c87690bbdb2db6f9628054e384f3d8bc3bb60255c097c95671f1ec7ea722366b992af7df8276b673a040b94058f5047ee53640eea910f171411a9cfa261cbc5bfa4b79f64c1c8eeaa3e2e2fa9fe861705c82985ed01d5a3bde50b523de10faca25c44c4eb78b3b9da9d4e563abd4867db7e4bc664677c8196f021f3a514394becb59f51a30858fc76defef4b104e2874e7a8a4562f61d7ddbbacdb5591d96d0ec14b332c23f76057e31e02510d462c69143c6e24b92018dfb79f06711aacc3f1fd9e01628f0c03e89466eb39195e6f99b5b273dd49b0a37d997e069282ba510b9b34075fb3a511bf4c34dcd3b50d2a439b4e0c920902628737f2b98c18b6c5df620422363214646c28534a15f67ee4ba7e2db6fff077731db7d49027c99549a119dbaa22e416a62d6626521b0572168d90dfedd4b64fd382b861b08201cc98225c0ee6e899bd2cc4de68b3bf83db779b1dcb433572397507bc9bfdea81d34eb1f8be64fae8f544ac985cbde2025c57e5f03bcc3fc6d951f7610e000439f61dff7407d7b4287ccc01d2f41f7165895e74106b337a446088b056f4015f8fb0eeacc5f2636f54d9ff54cb24f28454dd81f545de5c77db77b13dc6edab18cfd4447f61eafc2ec4e7d3f39c618274f24263a5d72627bc1b1478937c569df39f8b4a21aa982165590a7cca76466ba8cb47e373f4362880c55e34f80ce08d03d1ce9f152a4fc0e893bb4e8c4d90af3249c06894e063b0aa5a84d240b02778cf27df8a68a74d8ae74ab495fd73aabd70a203581559ee88a05d6feed165c2bcea3d89605c18cf53eeec13d15f7a0d0e0beafcbb59372af7128e3060040835c1316cd30f67a0f0c8ebb3cf511c501dde1dcfbbfde8619290020f13d0057f5e55c8e402747058c931e1b218a9fe723cfe5cca5fae7c1441edb9d61f7c6703d5811e6ec3492e8cae1d4b9029b7a333b953e28e029d1827cc6404749597fbbb573fce800e958ed506bc8a470ca7b3a6ab3781c16b68a6ff5dec810b68a1fe1cbccf26b3625c099bb2b3b580d3c22a410cca903425f8a722d630f76df507571affd9a19b78bf5702e00ae3763f5e90561666a9b817a01ac993cc739531771bfa761bf74deea8875868a48fef8d333075e0d2bb7a4d3c1d765a188b30043aac02c19a4370ce54be3b588877b17fa929e58925b52d36aae8e8eda135053438a43a9fb2cf6fd98b118c4232724278f4f5d31ad0c6c5a66506059edc9bab62ab479b84dbcaa8d93a4b919396abe36a8757b4080dd9ea45f8c7f921b390ee35c3f572c1dc01b432cc00c16a1a9b5940870b139d76991df7e8e985182365ef0b27f91b744bd4e0608bf1d12e54ea28c3615f1fe4d1873cbf1126170586577b5bcef33357e12e10d02b69a9f82984ab1a22badbb28927a263e0cf1fe75f58318cd41f9f00e836dab8392ec04de71244d52c313ee1121d24b10ea574e030c782f7be1d063eba42f535681a25d2e45c6077553fc9b798c250f31dcccc8443f0d5f27c824f965732a9bfb9d7bff64330af9bc78c831d655178599ffa187a2a096074ce03b26dce052cad9a37384290aa6356976a37c69813f1af2bbdcf17996edb7d2c1b7bd34d3e9d50ad749ff818e8c92615189128b759f71025a0030a4ee9468b2fcba9a6568cae0a65ae18c53fd2e6d557c821841a2c9cd72c74fd13dcb56d2a76eeee0942617aee16520c8637b7c3bfd825c146bac46e7191c75699bfe653640a902bb8691252d5474828ae2468e04e1fedbed9a499aea3e5c5ad09745671b69c00e2d23f5da6935f0232531ca3683b00eaa32bb3d258c6ca21e1a369c02905ed1472a97be35e81c19c469c8539545d5dda9d72656088492a65aa19b0fb9c29a69e7a00f89d7afcae67bff9501672dbc77067806a6a26ab7a467f9dc3e14e1749ca08fff250520bffc003e18edfa306db773264f8ae2a2e6c5417146dd82641b5f2a2c6855ba0767585f0a396e67f8d286140f02571b3adcba8b2faa66af0a65b9e5eb3163485eb8600d25553d0a2270b417f4d1b85cead0734ccf4c2e707671c99807a24eec3cb1a0befbf1dd6ea3b7e1d9a328e54da7162d36ca411e217d9591bba1a3aa9f48ac094577b551837e4e381399c93b430fe8c03b8e9925cd6cf19d22b04996090d1cd44af93381d5d1c0e953493d8248a5d9a860b825dcb7bead72e8e4934f09ca0007cb0e42746d166789ce8d67bb8e34019dfb6c8b2c318f16faa899c134d3824325986c8d9c95f4ea32078bce6b3071dcf82d1eef8ac13044777d21fc1d1d8d19f5bc4b042cd767b75bda31a7a73a0beba02b6944eed2690863b3465d522650da9b5e9085f9585cad250aadd7208c618496b0f4d3fb4bbc13c6bd31327e614e1b3ca09a6e55b772dc8ab66fcd5b40deac0267a8c58fec13f39ef98755870b651587339ad15209fb3b5c9b47faca217497f974cd5194b6d112cb69e7b475da23199da751b2a7484a0e0f74e40ae6bcb551a1717743368f78f7ee5b48f180dc5517a74c34642498be4b4f4adc055a39a8f1e38c22f39bf9ed8d14e7fdcf43144e971d065d29f7d22d893c2a1a996a0995d9e6b9269b059ffe7fc719988d8714740ec1d52cdc1ab1ad730b17eb5e137730d57556216e4b669622e745f3c833c69c13eb014f91c4bffd5912b03d1b41e960c4bdfc6afe31b1cbfe126d1c752bd9b2d92fcb9b81ef98cb99e245f661fdde5490bbfe6209d834b5dd619e30c819b411c2d2b49eed9c6a3f88a43b4b9fe3bf44bb49ea1b9b79374a09e4312e60c804a5f24ad282bda45684b3c3d246eeb0d57829f7e35730b12b4a2b6fd8274af98d17f922bade1e40bf440b3c03c5465bde4cb0a56363b92f2085ce9b5c2a091a5826f213c8b297e83068c785712a0f288d2f1a6fbdda89f0213abca256ad04a9cea3f692387760c83cfdae697f11ad88b8a41a07cc63aa331e8ea2b15cb084d8e6e07d17eb15314e0d14dcd038d35a5355b3c0b7c67ef23ed6e6776e5484ec8d659ed7cd12845a5934c5fe83344eaf05f266fbefaa8af090e2ad3868f18aac7f3c10c4eed20a6b3bc4efed27ab202d661e8d010722a77e419d5115bb7e24f6aa128c06303f401f3f2decd4ae2ae71921f9af8632a5f53e0838790b38f5e59338ebbd22994d929243c431803b81fe62ba6881d11819e62c2cee4a9d10156c62a595e58620a51f65d188b6fb5e821db4e2b050e6dfb8dfc9e55d967bedd8a147c7a40851a51650f35e123e90ca94add46e87f5e0b62e333ad1255567e7cc1e2da389353765794567af97d10702f5407d79313685a7b23f4460cebb3771d8c0f25710d990691442ab37e7652c361a305e22b00e5f6bc00832e0d1c11e79c775bb1576703a707057c92fa7646ba119e425f9beb73528b9c0bdcd09942ec59d5f2325403651f6aba49ed9dc969066557d48c2041d8c3a4cc69d5ab81a26c8ecaa3021b7aea72bd16ec95d16b4542eec65dfa65d1b811da6d8071b1e5737805e7d7be183215ad227e1ce3f97f5a0a1888207c06c6bf8903a33812ffb68415b442bad34cd44b44ea85b6e37f1cf1586825ca99e632076130d668945fe5753fd834663430aa046c3e407dbffdd51234a907476439d5097a8e31a32ad06c169b9350eb80c19a099a4c6e96491e2bdbfdee291bfbadc9c94117af45b9f75b445f9558a613984654e6624182936c35aff8b67a30447629e533bb76ebaf64693e671b2118c5687ca6dd5fad6958c3f01d0e9d6f5cfd5e3dd8531194a13bb3c553d54c85905d42dad4c70cf7ed8e5ba4762b0e5d2a012f65815a8c4a585fabfebd20f961aaef4ea7c96158e8fdfe5d6a3e02ee594af68011007df8e817408f819c71d1e6ff6b9a7f2d05e6d79e8db2639f648241fae5e265eb150da98c628646244cc62109eebca57fda0a718e69fcc12ca01fe182388950dc1f529e054a0b3c2a89866de87b40e54fed5b27a9acd784e41521d8bbf95922448d07bea17be6b4bb5fa792521227495384d7e90aee5ca0b2acae497bf1be5b3ac53e30be5c3d1204ccabadd0a04bd4953ecd8a14655949f85a04b6f6d48c20d7e46c2e51e1bfcecacb61f95ab9b2bc1541d9cd768421698f50a4a450a909656b667efdfb806b1d2531a98d86f0136928930e4d581bb2dd224bca16d13480abf62aee5ba9ddce2bfee470096cf7cad79d83be6f5f808acd2326d417e2dec4ff7d5990a10347d0caed407e50922937c3f479e99dce0740f1d1c164143efaedb393666976f096ab456b2c08e3d125ed7790acff62b3171f1820f4379f4d2143159509e0270b1fd10a7f6e4df08da1fcabead53645db54f2357b26b9118d2460b39e1ac4f5d5c59acbda8f418b78f4c6233652890b3c67f6ff18a8ff51010e24d70bae11eda2feee291eeb43c7cb647c1c2c09b3fa5561fea63a38106d11a2a273c814867677ac2c0aec94a0385a0c3507328b27ed2f60d4ac4cc0425edc744894edd364f9d2f4161dddeba0131e8237121003a35c198ab3184c943232547617915875904288e247821b06b9eb55ca43014db23cde8c0524f20e29da959343fbc7591b8f313a70493c29263f989da020d66649f9c496090b2abbbf0c6ff0d97307c5f6bd8042e857bbf929a7d9d00b0b519814a984555ba6c9724a627723d442d4c068b7be56936d801f18345c53ff7db4ccfe2f53f3d4e32f62849e38013089bd164f1ad5d9dbeeaa3b683ecc030635a50787e25f7c0ef0b1d93a42e119e08e7d5373e89286552ac919c7783ccbe2b36d899189829b0ba66fc9e407f8ce29b1cab361769cbbb2a38fe4f7a4d6a2fd185433006f957afb26ca625f593242992edc3c0699b01a3421b2e1a9b87d4a575c929e858eb2a2c90cf829982e6e54d85e5febdb2bbc2347b2bceedbdc9a5ccf62af91b96b6b5ec4c958bf322549eaff57b79941c11c5907267bc29938c64984acba0ef8fbacc9f7114e2e63472f69ce4ed9ff55f96849e93c1619a78d248303edc295102fef5994fb315e8c2c4865e149127738e3f7c4f36f97a00c9c0329ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c061535781bd2333a5c5cbc961a0c230ae8ed049f3cb26cce0afaa965675cae2a97dcf8c87d2916405cee52a5709225bf2dfb5452277e091b6f36ee251fc9f31532db44bb177a465208cf3b50212cf53d3c4b38df55d0051646b5fad13df3a0b6e09ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c063fc5b25de544ed98d8c6a1ec548c47a5523e939e8bf07326efdc133352c92b758035c841e4360799f0135deaa0a3c176479cc9d356fb8b3001ee624ba3b4c7c39ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c062d8144189140bb7c3ac457c80db5c4e44a8d4e443e2773311c9fad69917dce60c97f4cceb9c2dd63df80675554f335640cc46875185af539e2b2f3d6b9e9d7ed57d1ba78e19dd46a4dc3be448ab14e7f5fa8019b3bcf94fc58c2d31d1268465410e277ae39e189a5405eb84d31408cff0e4e1bb4698a4778a86a3b78ba53b9a754a40c9f144e80fd40afc82eb5b85fa7da166804f41641cbdfd1b47c17ae4249a9b81962058b0284fc6a678abd5aae733df2a9fff9d9f7b345303b1c6a071e798b399c1baadbe4d98eb1c5ec0c61d66af08f61c9280d8be84212bb3aba564f9a4e18b109b19b6aa79663d9635ddced8c8975dbea92e2f2c280e194449d261233fa3e1f3a9bc83ec3e56fdf4d164020792ccf9cc7ff62544e6b499095e5e984cca627a0af554b97ca19127b8fd4a395feea57a22e3a481bb74132c30f7a4c4cb3d891b1c7782cb72c1a45673de45b15d7d97442c83f4f89a63561eea9e5b2db1474967cc79b07f116dfb5f0df30993258310ae8c87b698d164248c81428906c12b38a8b4abc38531ee4da2c4d3a33a9f150147711254bb01e7a36fcc94d01be17fa566cb893fdf9409da62c4ebfe439f5d03dbf215f1cb604acb01b9e42e1c0d83b6e1ca0f0f11649c4b689b7a563f6cf82ac0d608708175515b1a568c4c52346285841d56c54638db511bff0f0bbc2958b1b0866674b54b99729f756887332ab18dbad97a02b74466fc3cd460fdf2a2eaaeedc51cfaf784305da8f01f2d21b1054ae1aade69c0378e2d3a612ed0ffc24fcbd781f7f93cbff1ce93e7933b08922648e164d616509dfba870cde711f63cd7105415ed680d5603977f7c4aa92b24ed869b213d8fa004b93da70314ba02e2a40a635326de3f88b4f854c2946ff25ec150c4c32ad3fdc8682baeb8c28e76f067abc27af406e95b53c22cefda75fbf996bf46b60603a24209d0b1b2dc656bcbed0b7df5a8d76079daa4e1552d5540b12139c0b32a25ad0eebcdde074b0a29c3ae9829d8371e1b71c0838379db4d5081af2e18f940087c85f2a9a7286b61a792c76e33387d6033f6fe1329f56d4c4a8e7c2ea4d0efbcfaedf4466fc28f1cadc2b5297529deb3d231839c08652bc8f6107e27e9b34f21583f095e62c009d170457ee0f91b8fa54f90326f1b20122028204366f5e07480e9fc5015cbde9996770a2f0da5aa061fca258a31a647323a35d7e764e4c6d0f76c9cae5aaabf071bde7b5a006414914d01c8c33a0b9df6b699bb963f2019985f34d30d8577db06f1cab3bebdb327ed63d1abe28b78fafebc63bf30bb56c4759f57160674ea01f66be094e296a7465cdaba02f6b2a83acaca8f8bcba323a34cb7ad0b3cf44c2ab458dca3e3581e1fbe58d7e3ce8943a1f1f87f8dbf51151bb45c6a786c5fad5a856b5e5de636d1c9492c06e7b9cc77144dc7f94f1b14abfce2e77d18f0143fe3d8c5275257b429efb6da34fd654cfcca98fb477909cce87c3e55abb2fdbd80d9eb1059a13c4d29f5e0c35b9522b7341e5132d6be1f2c11269d1a5703af7c9f902b3d107e898af939dcb8adac11cd39304a705d79551eba38cfcd045e26ac140d22eafd6448813e6ae8b2fa9d597d42d51ab3f23e702d92c0a306857004026ee6d9d805f705cb15131cd6a85f4fe6c562ee543b0fbb8c06e5e825630c9c36e41dc3939cc7fcc12c97f0d26ffa71f74847cbae4f6a51590b276e5220fcdd216b9ca348c2275d50b1005ed566e571ba36efcaad31830021608c2f422fde6e3851a9606b5a438743fa1fdb54e7df672bc0300249c0b7140f5c6e2c822b43f3069ce74b126e03cc976567552671473970ed5fe3b94bc5bcd3c8f45f47b93194eb3147fabc02c6c0b1337f388e33905c00ffadf99fc1486083750c78b8de368c512e36b6b501df190cdd0009017798e6e09873138fecb58922e9039d1234f122f365a49c5c4d2dee37d11b5267d4f46737e0c6549be0b2df663972fb108264bb8902560007582322de80dbaaf2d2b4977881fee569ccccc12140caf1087f869810eca7befec11accedac05229c0571e4e4113221ce8a09f6cd9c7d3061ec0c0b9ec2b8a0d4771a80974a24b347d30f44fc7fcd5e2055466efd07beb2bb6e0e0aa355ac4cb77e4edd15cdb6e7f4c1a6732ef9962cc741b8cdb7ad0450f6c3d31c21a80817c8c2088c29a5daadd9d66aaac828097afbf56c2780c25db0e66071c8db09103c2d97d9da01551d360382f57a94bcc84d2c827a8a0c5c3d172b1fcd13d63e9901e4ae8ecb1207d1fe8c223bc221da7643f28b836e21674212691329d478a71c4fdd6d383c401a6bb9e93f09819be6d0babfda599a23db562253f2d2b495ae6da82c66a8f63010ffd6e1989e927c176ed5c88b49f19cdeeaa97c4dd63c6e4a36246c3eaa40f4ca6d395cb9f707e059bf98baa2dde96f2086f8c709bf56f3c710768d6cffa617a26ff5a381cdc6b4d74c9078b9a756f1f4bcedb8cd6c177614c09eae8b455de22cafc2541ec7a0f9ac1977c732fd45956b255d96a5d8c855de47b57166054c46978bc728475fe96b0219c598dc71924534b76d68641356d9275dbe1148ad175713f3951f6ad5ba6a525d98db04a253e4fa22a0b7d13a2930bf74210921de659e331a1c1647fe0102ee547f83028d05ba76434ccfa8a7ecf3eecde2302276b9ba13192932fd60614b6d36e0ffaa005e4db9da88ebf5f691695276ce7fc1166adefb4b10f8737ae97497993c7b1d897162523089d9981a70ad9d5a0233e08ac400ef0d6c2559de5ab375a3d3c4c1835527e65d2c6248d4069355ae8de32032168e5c8bbc68070d338e008c504ff434158adc395be0378e6680609ab937947a2062aba2b90935d6c96d75db61f843e10d6407265642042f448ab87af3173b1e21ce14cc51a181a19251874215cf79e9691f5d3edb271983e00d652ad037965f8b1c1c5a37b7dd8ce45d69e62ce0139112e4a962e8981d8aa6910608b99738eca62a5832e025b52d2849bf3d7a78a2021d5df221a241139f57f9edd464099b1d10679c7058e754c7230c37983c667b2fb2ae06eb37a688a8ab1ddbcd06f5353bab30b5f92a23c8db5ff307c5c7cfd3a9aae2b9191847bb6438398dec3db9a1519ca72d7160939894c093c18791c9a9a83f3a652e6d5d3225a6b9c09269b9f157f95ebf8e96b0bd8743f569e4930639f3ea985959307a4cbba12006bf14ad1140497976060f387bc75c338ccc7da15f3c222737e817af45561ba76f0519319fdc442d942ff7405462d58ae06af2e1ad2ea7fff86b2d3f1af0d649898a35e42dda4f26a3a7e920c86b85f90f5a40ac4936033049e6b02f5b4b13eff5acbf5c28f949dce714d44a5517fb92dbea952f933b0c86818315c01d0e39026fafe23dc2c564806bdd986cf849700533d0fa02aafc42b508432e94e837f2310a94595da24b6b6f11ff60df52ca17542a90af712971b98cc25b7c3857ed0315a848ebfbe20e4bb7dae8ea515673d25fe4c84eac5804818d67bf80e99a7a2c57dfbc3e105be913ed7d6117eff83c57eb11ee6994826003e7419ae200805b220b7d854b0ba02d793315637ffa6f2068866bf550eab83524f31459b31586d7abc0b7b7d8a74242eb2950b8fa66093340cf907fe9e6df5591840e65833f3dcd2ba5db2f11d4ca3d6a1b31f03ecdfda0fafafb6574cbc867b1bbf704392e366f0eb5d1a7f1b865f46978da6019015ab8dacf0e3c33641ce834f9f3f657aad65334c2b059cd7c4e64a390021f4ea250e40ab6456bc84c211b61f2b5568d37ff82ff11814ee6af76cf5d68cb8ef55adfe742649241c52d08b79eaa1721e99fc3378ddf5ea037c37311096dab4e278d4ec1e12eebbedf1d2c5dfd4c69e675f2751492c50b48ab04d2620601285185ae2858d4931ca6fdfdf2a8a88249ae7d0a538e3241c200a64518507a64b1bcec478e108d863a7f625171ed42582b7b9a9389eb3b665421f3d68f59425ba512f80434033bfc50e597def94fbe011380b4aff784295d72261fa2322ba0a24f56eb49e22957a47596452f0269bce077365ec09d1a5a45696fdab3bddcce23ae42a00d3927d03b8f214566ac4c1f5d7a1c872771da5176d41195b5d2b6c9645e0f21ee32ce61432062862068d262ce600cc128407eca99a7da780fcb3e53d215274512e58c7dac233906b856ba279b7156f1ab2c311f47814618f7ac0689733ca19ce9dc1b95d9a0d6e884ff2c1efc0e1ca6e4caf47b9a72f0c7560684e5205c1f2811707e5450d1abd20bcdd39bc37f3fd5374965f243d104d9eab3f752764ce8464ffe5e25e89d0a04fae437b42fa22a65bdbfc99b8ab0c2d8e5c2ff72329420f51369613ab2c92d8d20deaa106732cfa66b3fff2de56ab5d25b45ba37042612ad4833660a3d2a908157b199a150f00fa47e500e83f950f2e98a632b002396636f396153e0975f42e0f48be6be06a655be35612c6d7f8d64dbcd3e0b306313602f99c35a75d6169d6a3fdd8241d3f2e4b67aaa5bb77f40b696fdddc14a7357564c3924fdddcc43837610a231067d7403111ede3984976545fc9c860eb09259fdba7fce03ca9bb4ed90b961519f8559a8cea6625cc8d0891f4642d5529955a1a3adbb84dce88635dd8763aeeaae3ccb1ff30954f1a1e97aa47dd384458c5080f8c7a53c534b3e379a6c0e884cb35954c877685917d9dbc52e6bca78046ef4103be357b6e44946ecb8c4d5399b56efa85381be5d79fbeaf94027afeede3b623b17090bc0e6cd5dcf3a94c46066449def8531ccd1c18d8f3043500c532e0b0451e9c4682255c1853c44a58ea9adc47d55ca8a23e276dbfeec3f315eedfebc8271fe656ca0d43949abe60ac555d86d5c29d092df0229bd1986b40dd990356d5f23656fc05f48aab0705e9cf0ba24ac5e1fcb4d339cf2fec2d6942ee2ddd4c76a8740ebf60b3ff9be2fff6a5eee01eeeed802177fef4705de5efc45ef2c1a22fd745a802cd9b0f8ae9025218d78e0fa2408f63575b2c563c0dfbe778937e67ff4b6aa6b53e21fe0c6e922747e644f23d204ee01cbe63e6c0abbca916c47078f0cce8af94e3830d15e5df49cc716be8770c51914ff0e3f311d32a820bd0f7138f4bfc6e7865143b7e9b89eb2de9c498468155fe29326eace2b0049466086d14dbfc9b0a6f2e18f6b3fcccb6fef8f4f8eff919e726717544612fe567a3782225d52a381e06cd77c0b123e13344e8696ea2a3b3852ba129808299b42b9a96a8032d91005a4384eb16309e593850c80e4c237fd7eb2c008a7ad9673b898cd061ac82281aac3072752d4ffd0b3e5dd88c43fd04746421de0539591fbd0c83f19a4b03d2eebffc7279faa45ad3a0578447538efa81dff39f824ad53bf0881575ed4f9914eb08728358b28827fac262cbe2f4f587fd88674ac330d034a9c4ec63c198549226d745eddd979e3696e085489dafad0ff1796090e96e442af5db25e8ed864d5bba91dbe1e1dd679760ab4e3a7e1fc4e4f106544dd7d611171f64b0dfd2435352b5d61000694492de4a590bbf0b7997228dc7bc3d708c72cdd2ce24443963600dd975e553c22158239ae7e76935e3cb1749ec972e60ae84ddc46dadefe6c69f2a158ca9afa6ced8a715b86ad3c1da4afbc4eef16abd8a522bb946d841bd389ba7415ddc54b6ded71d237d28534e64dc638a5eba0c3b8a6cb1cfc202bafc7088497d4754af710ce3792994b395743f0dfdb096a39487a7f7b6e2d13b19a29f14cafbb51c194e98513e9d54c2fffee70d6008271dc535daa1bb9abd5c0594fa46bf17d309c11368f5d80fa5c62d3683546e4833b4e02ca11bf26e7085cc0482dbcda62ed68178cbece361394a7454c94444da72f600cf6c3dcc1029e0e5c8cf54e1bf92ec7a4f58d776063be0671f956a55ed4ba0355de686608143cc4868ca68ea8846ac0022d002ec43c2c75e5e35a92d4a4217c385cadf93f7a35867267f449b058438f08f013293c6ce274f749aa502f8042fcf9a1610ecd11edfd7ac365efec04ac27a5c2dd14acc307ad195c01e4972df13a1cc3d17aebc91d3e9fece1e414632fedd297bc892c862b55a5ed7aaeeaa4793eebaf6eb68c2a41339126c4204de48f6c529f0f1b98e616899b59ffd61b618f993c54dc1e9e0f82f7f9798708683b601e2ab06c3c0d3c3dd84a1b5a65fab2e5bfd405802a826d13709e8ff4fd48536ad925ab68ba5a99cd580ecb6c5c250bc0449cb803df98903ff23519813b3959a52c9be2f0a5f86846d6956166cfa1783f7a825c3728aea244fba31f2b6d979e3bce11b689ac14b29358cb90864cb3420bffca281cb92aa0b08bb54c74687eeb4259c7d372fcc97c9bc4e0b1464881c1809ddca66b696341ff1596e2cd2c60b4310ef4dc9942b7aee279838abce0662a8762d9bab2c67f472a44d506e62879969e1551d68f9f97fbad251ef40043f3e3f3d27e9d4bcab2c3fe40c2160fb29b847d9667a00112727e39142605e../../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/dtsrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootkernel-4.18.0-552.3.1.el8.src.rpminstallonlypkg(kernel)kernel-develkernel-devel(ppc-64)kernel-devel-ppc64lekernel-devel-uname-r    /bin/shfindutilsfindutilsperl-interpreterrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3f?]f8@f+@fff P@f[fe~@e8@e@e7@eeBeN@eee6@eeee@ee(e}@etVeoehy@e_>eWUeTeP@eKx@eGe?e;@e7e/e%@d7d0d-bd&@d!@d@ddddxdcU@cU@cc`cl@c@c@c@c@cwc&@c&@c@c@c@ccc=@cc@cۥcT@cױ@ccvc0cƍc@ccFcR@ccc@c@c|cwscr-cn9@ck@ch@cb[c_cV~@cMCc@c:c2c*c!@c*c@ccd@cb{@b{@b5@bbbb@bz@bޅb@bVbby@bb>bb@bUblbb2@b@bb@b@bbw@bb@b~H@bzSbu bk@bjbgbf@b_bX bT@bP#bMbMbF@bEbA@b; b8hb3"b1@b/.@b(b@b!b~b @b@ba@a aa7aaaa@a@aa5a@aza@a@aaW@aayav@amaaf@a]aQ@aLl@aC1a@a;Ha0a(a'@a&0a$@a#a@a@aS@a @aa a /a`@`` @``@`@`ݮ@`ٹ`@`"@`@`9@`D``r`r```@```Z`f@``@` @`@``@`@`e@`}p`x*`t6@`n@`m`e`c`a@`[)`X`P`KW`J@`Gc@`B@`?z@`<@`7@`2K@`0`-@`*b@`%@`#`"y@`!'``>`@``@` `@```2@___I@_@_@__1@__ܙ_H@__@__@_м@_v@_ǁ_ǁ__@__G@_@_ _i_#_@_/@__@_:_@___@_ _@_"_@__~@_}_w@_s!_k8_e_cO_`_X_P_>e_;_16_*@_&_"@__@__ L_X@_c^z^^@@^^K^@^W@^@^n@^y^^@^א^?@^ϧ^V@^^˳@^@^Ǿ^^@^'@^@^^@^^U@^^^&@^^@^1^^H^^^@^k@^@^@^0^^|@^{G^{G^wS@^v^t@^s^^r @^p^n^l@^j$@^g@^f/^c^Y^U @^Ri@^O@^Nt^M#@^F^C^AE^9\^4^2@^*@^&^!^@^g@^r]]]+]@]]]B]]Y]@]߶]e@]]]]@]Γ@]A]ʞ]@]@]{@])]]@]W]]]z@]]@]]@]V]@]m]z3@]v>]rJ@]i]g@]e@]c]^][]V]UI@]S]R@]QT]L]J@]D%]B@]A]@1@]>]9]8H@]6]1]0_@]/ ]-@](v@]'$]%@]$];]]@]^@]@]@]:]@\\@\Q\@\@\\\t@\@\\@\9\\ޢ@\P\@\ڭ\\@\g\@\\s@\-@\8\@\\O\@\\f\@\\r@\,@\\@\7\C@\\@\N\\@\@\6\B@\\\@\@\@\@\M\M\M\~d\k\eX@\d\^\\\Z@\HW@\C@\@n@\?\8@\73\3?@\@\\>@\@\I\@\ `\\l@\&@[[@[1[[@[H[@[_[@[[v[[@[@[ٙ@[S@[ @[ @[[@[[[@[;@[@[R@[[@[][ @[@[t[#@[[[:@[[@[Q@[[@[\[[[@[v[qrDenys Vlasenko [4.18.0-552.3.1.el8_10]Denys Vlasenko [4.18.0-552.2.1.el8_10]Denys Vlasenko [4.18.0-552.1.1.el8_10]Denys Vlasenko [4.18.0-552.el8]Denys Vlasenko [4.18.0-551.el8]Denys Vlasenko [4.18.0-550.el8]Denys Vlasenko [4.18.0-549.el8]Denys Vlasenko [4.18.0-548.el8]Denys Vlasenko [4.18.0-547.el8]Denys Vlasenko [4.18.0-546.el8]Denys Vlasenko [4.18.0-545.el8]Denys Vlasenko [4.18.0-544.el8]Denys Vlasenko [4.18.0-543.el8]Denys Vlasenko [4.18.0-542.el8]Denys Vlasenko [4.18.0-541.el8]Denys Vlasenko [4.18.0-540.el8]Denys Vlasenko [4.18.0-539.el8]Denys Vlasenko [4.18.0-538.el8]Denys Vlasenko [4.18.0-537.el8]Denys Vlasenko [4.18.0-536.el8]Denys Vlasenko [4.18.0-535.el8]Denys Vlasenko [4.18.0-534.el8]Denys Vlasenko [4.18.0-533.el8]Denys Vlasenko [4.18.0-532.el8]Denys Vlasenko [4.18.0-531.el8]Denys Vlasenko [4.18.0-530.el8]Denys Vlasenko [4.18.0-529.el8]Denys Vlasenko [4.18.0-528.el8]Denys Vlasenko [4.18.0-527.el8]Denys Vlasenko [4.18.0-526.el8]Denys Vlasenko [4.18.0-525.el8]Denys Vlasenko [4.18.0-524.el8]Denys Vlasenko [4.18.0-523.el8]Denys Vlasenko [4.18.0-522.el8]Denys Vlasenko [4.18.0-521.el8]Denys Vlasenko [4.18.0-520.el8]Denys Vlasenko [4.18.0-519.el8]Denys Vlasenko [4.18.0-518.el8]Denys Vlasenko [4.18.0-517.el8]Denys Vlasenko [4.18.0-516.el8]Denys Vlasenko [4.18.0-515.el8]Denys Vlasenko [4.18.0-514.el8]Patrick Talbert [4.18.0-513.1.1.el8_9]Denys Vlasenko [4.18.0-513.el8]Denys Vlasenko [4.18.0-512.el8]Denys Vlasenko [4.18.0-511.el8]Denys Vlasenko [4.18.0-510.el8]Denys Vlasenko [4.18.0-509.el8]Denys Vlasenko [4.18.0-508.el8]Denys Vlasenko [4.18.0-507.el8]Denys Vlasenko [4.18.0-506.el8]Denys Vlasenko [4.18.0-505.el8]Denys Vlasenko [4.18.0-504.el8]Denys Vlasenko [4.18.0-503.el8]Denys Vlasenko [4.18.0-502.el8]Denys Vlasenko [4.18.0-501.el8]Denys Vlasenko [4.18.0-500.el8]Denys Vlasenko [4.18.0-499.el8]Denys Vlasenko [4.18.0-498.el8]Denys Vlasenko [4.18.0-497.el8]Denys Vlasenko [4.18.0-496.el8]Denys Vlasenko [4.18.0-495.el8]Denys Vlasenko [4.18.0-494.el8]Denys Vlasenko [4.18.0-493.el8]Denys Vlasenko [4.18.0-492.el8]Denys Vlasenko [4.18.0-491.el8]Denys Vlasenko [4.18.0-490.el8]Denys Vlasenko [4.18.0-489.el8]Denys Vlasenko [4.18.0-488.el8]Denys Vlasenko [4.18.0-487.el8]Denys Vlasenko [4.18.0-486.el8]Denys Vlasenko [4.18.0-485.el8]Denys Vlasenko [4.18.0-484.el8]Denys Vlasenko [4.18.0-483.el8]Denys Vlasenko [4.18.0-482.el8]Denys Vlasenko [4.18.0-481.el8]Denys Vlasenko [4.18.0-480.el8]Denys Vlasenko [4.18.0-479.el8]Denys Vlasenko [4.18.0-478.el8]Lucas Zampieri [4.18.0-477.2.1.el8]Lucas Zampieri [4.18.0-477.1.1.el8]Lucas Zampieri [4.18.0-477.el8]Lucas Zampieri [4.18.0-476.el8]Lucas Zampieri [4.18.0-475.el8]Lucas Zampieri [4.18.0-474.el8]Lucas Zampieri [4.18.0-473.el8]Lucas Zampieri [4.18.0-472.el8]Lucas Zampieri [4.18.0-471.el8]Lucas Zampieri [4.18.0-470.el8]Lucas Zampieri [4.18.0-469.el8]Lucas Zampieri [4.18.0-468.el8]Lucas Zampieri [4.18.0-467.el8]Lucas Zampieri [4.18.0-466.el8]Lucas Zampieri [4.18.0-465.el8]Lucas Zampieri [4.18.0-464.el8]Lucas Zampieri [4.18.0-463.el8]Lucas Zampieri [4.18.0-462.el8]Lucas Zampieri [4.18.0-461.el8]Lucas Zampieri [4.18.0-459.el8]Lucas Zampieri [4.18.0-458.el8]Lucas Zampieri [4.18.0-457.el8]Lucas Zampieri [4.18.0-456.el8]Lucas Zampieri [4.18.0-455.el8]Lucas Zampieri [4.18.0-454.el8]Lucas Zampieri [4.18.0-453.el8]Lucas Zampieri [4.18.0-452.el8]Lucas Zampieri [4.18.0-451.el8]Lucas Zampieri [4.18.0-450.el8]Lucas Zampieri [4.18.0-449.el8]Lucas Zampieri [4.18.0-448.el8]Lucas Zampieri [4.18.0-447.el8]Lucas Zampieri [4.18.0-446.el8]Lucas Zampieri [4.18.0-445.el8]Lucas Zampieri [4.18.0-444.el8]Lucas Zampieri [4.18.0-442.el8.v2.g6f5f]Lucas Zampieri [4.18.0-441.el8]Lucas Zampieri [4.18.0-440.el8]Lucas Zampieri [4.18.0-439.el8]Lucas Zampieri [4.18.0-438.el8]Lucas Zampieri [4.18.0-437.el8]Lucas Zampieri [4.18.0-436.el8]Lucas Zampieri [4.18.0-435.el8]Lucas Zampieri [4.18.0-434.el8]Lucas Zampieri [4.18.0-433.el8]Lucas Zampieri [4.18.0-432.el8]Lucas Zampieri [4.18.0-431.el8]Lucas Zampieri [4.18.0-430.el8]Lucas Zampieri [4.18.0-429.el8]Lucas Zampieri [4.18.0-428.el8]Lucas Zampieri [4.18.0-427.el8]Lucas Zampieri [4.18.0-426.el8]Jarod Wilson [4.18.0-425.el8]Jarod Wilson [4.18.0-424.el8]Jarod Wilson [4.18.0-423.el8]Jarod Wilson [4.18.0-422.el8]Jarod Wilson [4.18.0-421.el8]Jarod Wilson [4.18.0-420.el8]Jarod Wilson [4.18.0-419.el8]Jarod Wilson [4.18.0-418.el8]Jarod Wilson [4.18.0-417.el8]Jarod Wilson [4.18.0-416.el8]Jarod Wilson [4.18.0-415.el8]Jarod Wilson [4.18.0-414.el8]Jarod Wilson [4.18.0-413.el8]Jarod Wilson [4.18.0-412.el8]Jarod Wilson [4.18.0-411.el8]Jarod Wilson [4.18.0-410.el8]Jarod Wilson [4.18.0-409.el8]Jarod Wilson [4.18.0-408.el8]Jarod Wilson [4.18.0-407.el8]Jarod Wilson [4.18.0-406.el8]Jarod Wilson [4.18.0-405.el8]Jarod Wilson [4.18.0-404.el8]Jarod Wilson [4.18.0-403.el8]Jarod Wilson [4.18.0-402.el8]Jarod Wilson [4.18.0-401.el8]Jarod Wilson [4.18.0-400.el8]Jarod Wilson [4.18.0-399.el8]Jarod Wilson [4.18.0-398.el8]Jarod Wilson [4.18.0-397.el8]Jarod Wilson [4.18.0-396.el8]Jarod Wilson [4.18.0-395.el8]Jarod Wilson [4.18.0-394.el8]Jarod Wilson [4.18.0-393.el8]Jarod Wilson [4.18.0-392.el8]Jarod Wilson [4.18.0-391.el8]Jarod Wilson [4.18.0-390.el8]Jarod Wilson [4.18.0-389.el8]Jarod Wilson [4.18.0-388.el8]Jarod Wilson [4.18.0-387.el8]Jarod Wilson [4.18.0-386.el8]Jarod Wilson [4.18.0-385.el8]Bruno Meneguele [4.18.0-384.el8]Jarod Wilson [4.18.0-383.el8]Jarod Wilson [4.18.0-382.el8]Jarod Wilson [4.18.0-381.el8]Jarod Wilson [4.18.0-380.el8]Jarod Wilson [4.18.0-379.el8]Jarod Wilson [4.18.0-378.el8]Jarod Wilson [4.18.0-377.el8]Jarod Wilson [4.18.0-376.el8]Jarod Wilson [4.18.0-375.el8]Jarod Wilson [4.18.0-374.el8]Jarod Wilson [4.18.0-373.el8]Augusto Caringi [4.18.0-372.2.1.el8]Augusto Caringi [4.18.0-372.1.1.el8]Augusto Caringi [4.18.0-372.el8]Augusto Caringi [4.18.0-371.el8]Augusto Caringi [4.18.0-370.el8]Augusto Caringi [4.18.0-369.el8]Augusto Caringi [4.18.0-368.el8]Augusto Caringi [4.18.0-367.el8]Augusto Caringi [4.18.0-366.el8]Augusto Caringi [4.18.0-365.el8]Augusto Caringi [4.18.0-364.el8]Augusto Caringi [4.18.0-363.el8]Augusto Caringi [4.18.0-362.el8]Augusto Caringi [4.18.0-361.el8]Augusto Caringi [4.18.0-360.el8]Augusto Caringi [4.18.0-359.el8]Augusto Caringi [4.18.0-358.el8]Augusto Caringi [4.18.0-357.el8]Augusto Caringi [4.18.0-356.el8]Augusto Caringi [4.18.0-355.el8]Augusto Caringi [4.18.0-354.el8]Jan Stancek [4.18.0-353.el8]Jan Stancek [4.18.0-352.el8]Bruno Meneguele [4.18.0-351.el8]Bruno Meneguele [4.18.0-350.el8]Augusto Caringi [4.18.0-349.el8]Augusto Caringi [4.18.0-348.6.el8]Augusto Caringi [4.18.0-348.5.el8]Augusto Caringi [4.18.0-348.4.el8]Augusto Caringi [4.18.0-348.3.el8]Augusto Caringi [4.18.0-348.2.el8]Augusto Caringi [4.18.0-348.1.el8]Augusto Caringi [4.18.0-345.1.el8]Augusto Caringi [4.18.0-343.1.el8]Bruno Meneguele [4.18.0-343.el8]Bruno Meneguele [4.18.0-342.el8]Bruno Meneguele [4.18.0-341.el8]Bruno Meneguele [4.18.0-340.el8]Bruno Meneguele [4.18.0-339.el8]Bruno Meneguele [4.18.0-338.el8]Bruno Meneguele [4.18.0-337.el8]Bruno Meneguele [4.18.0-336.el8]Bruno Meneguele [4.18.0-335.el8]Bruno Meneguele [4.18.0-334.el8]Bruno Meneguele [4.18.0-333.el8]Bruno Meneguele [4.18.0-332.el8]Bruno Meneguele [4.18.0-331.el8]Bruno Meneguele [4.18.0-330.el8]Bruno Meneguele [4.18.0-329.el8]Bruno Meneguele [4.18.0-328.el8]Augusto Caringi [4.18.0-327.el8]Augusto Caringi [4.18.0-326.el8]Augusto Caringi [4.18.0-325.el8]Augusto Caringi [4.18.0-324.el8]Augusto Caringi [4.18.0-323.el8]Bruno Meneguele [4.18.0-322.el8]Bruno Meneguele [4.18.0-321.el8]Bruno Meneguele [4.18.0-320.el8]Bruno Meneguele [4.18.0-319.el8]Bruno Meneguele [4.18.0-318.el8]Bruno Meneguele [4.18.0-317.el8]Bruno Meneguele [4.18.0-316.el8]Bruno Meneguele [4.18.0-315.el8]Bruno Meneguele [4.18.0-314.el8]Bruno Meneguele [4.18.0-313.el8]Bruno Meneguele [4.18.0-312.el8]Bruno Meneguele [4.18.0-311.el8]Bruno Meneguele [4.18.0-310.el8]Bruno Meneguele [4.18.0-309.el8]Bruno Meneguele [4.18.0-308.el8]Bruno Meneguele [4.18.0-307.el8]Bruno Meneguele [4.18.0-306.el8]Bruno Meneguele [4.18.0-305.8.el8]Bruno Meneguele [4.18.0-305.7.el8]Bruno Meneguele [4.18.0-305.6.el8]Bruno Meneguele [4.18.0-305.5.el8]Bruno Meneguele [4.18.0-305.4.el8]Bruno Meneguele [4.18.0-305.3.el8]Bruno Meneguele [4.18.0-305.2.el8]Bruno Meneguele [4.18.0-305.1.el8]Bruno Meneguele [4.18.0-304.7.el8]Bruno Meneguele [4.18.0-304.6.el8]Bruno Meneguele [4.18.0-304.5.el8]Bruno Meneguele [4.18.0-304.4.el8]Bruno Meneguele [4.18.0-304.3.el8]Bruno Meneguele [4.18.0-304.2.el8]Bruno Meneguele [4.18.0-304.1.el8]Bruno Meneguele [4.18.0-303.1.el8]Bruno Meneguele [4.18.0-302.1.el8]Bruno Meneguele [4.18.0-301.1.el8]Bruno Meneguele [4.18.0-300.1.el8]Bruno Meneguele [4.18.0-299.1.el8]Bruno Meneguele [4.18.0-298.1.el8]Bruno Meneguele [4.18.0-297.1.el8]Jan Stancek [4.18.0-297.el8]Jan Stancek [4.18.0-296.el8]Jan Stancek [4.18.0-295.el8]Jan Stancek [4.18.0-294.el8]Jan Stancek [4.18.0-293.el8]Jan Stancek [4.18.0-292.el8]Jan Stancek [4.18.0-291.el8]Jan Stancek [4.18.0-290.el8]Jan Stancek [4.18.0-289.el8]Jan Stancek [4.18.0-288.el8]Jan Stancek [4.18.0-287.el8]Jan Stancek [4.18.0-286.el8]Jan Stancek [4.18.0-285.el8]Jan Stancek [4.18.0-284.el8]Jan Stancek [4.18.0-283.el8]Jan Stancek [4.18.0-282.el8]Jan Stancek [4.18.0-281.el8]Jan Stancek [4.18.0-280.el8]Jan Stancek [4.18.0-279.el8]Jan Stancek [4.18.0-278.el8]Jan Stancek [4.18.0-277.el8]Jan Stancek [4.18.0-276.el8]Jan Stancek [4.18.0-275.el8]Jan Stancek [4.18.0-274.el8]Jan Stancek [4.18.0-273.el8]Jan Stancek [4.18.0-272.el8]Jan Stancek [4.18.0-271.el8]Jan Stancek [4.18.0-270.el8]Jan Stancek [4.18.0-269.el8]Jan Stancek [4.18.0-268.el8]Jan Stancek [4.18.0-267.el8]Jan Stancek [4.18.0-266.el8]Jan Stancek [4.18.0-265.el8]Jan Stancek [4.18.0-264.el8]Jan Stancek [4.18.0-263.el8]Jan Stancek [4.18.0-262.el8]Jan Stancek [4.18.0-261.el8]Jan Stancek [4.18.0-260.el8]Jan Stancek [4.18.0-259.el8]Jan Stancek [4.18.0-258.el8]Jan Stancek [4.18.0-257.el8]Jan Stancek [4.18.0-256.el8]Jan Stancek [4.18.0-255.el8]Jan Stancek [4.18.0-254.el8]Jan Stancek [4.18.0-253.el8]Jan Stancek [4.18.0-252.el8]Jan Stancek [4.18.0-251.el8]Jan Stancek [4.18.0-250.el8]Jan Stancek [4.18.0-249.el8]Jan Stancek [4.18.0-248.el8]Jan Stancek [4.18.0-247.el8]Jan Stancek [4.18.0-246.el8]Jan Stancek [4.18.0-245.el8]Jan Stancek [4.18.0-244.el8]Jan Stancek [4.18.0-243.el8]Jan Stancek [4.18.0-242.el8]Jan Stancek [4.18.0-241.el8]Jan Stancek [4.18.0-240.10.el8]Jan Stancek [4.18.0-240.9.el8]Jan Stancek [4.18.0-240.8.el8]Jan Stancek [4.18.0-240.7.el8]Jan Stancek [4.18.0-240.6.el8]Jan Stancek [4.18.0-240.5.el8]Jan Stancek [4.18.0-240.4.el8]Jan Stancek [4.18.0-240.3.el8]Jan Stancek [4.18.0-240.2.el8]Jan Stancek [4.18.0-240.1.el8]Jan Stancek [4.18.0-239.1.el8]Frantisek Hrbata [4.18.0-239.el8]Frantisek Hrbata [4.18.0-238.el8]Frantisek Hrbata [4.18.0-237.el8]Frantisek Hrbata [4.18.0-236.el8]Frantisek Hrbata [4.18.0-235.el8]Frantisek Hrbata [4.18.0-234.el8]Frantisek Hrbata [4.18.0-233.el8]Frantisek Hrbata [4.18.0-232.el8]Frantisek Hrbata [4.18.0-231.el8]Frantisek Hrbata [4.18.0-230.el8]Frantisek Hrbata [4.18.0-229.el8]Frantisek Hrbata [4.18.0-228.el8]Frantisek Hrbata [4.18.0-227.el8]Frantisek Hrbata [4.18.0-226.el8]Frantisek Hrbata [4.18.0-225.el8]Frantisek Hrbata [4.18.0-224.el8]Frantisek Hrbata [4.18.0-223.el8]Frantisek Hrbata [4.18.0-222.el8]Frantisek Hrbata [4.18.0-221.el8]Frantisek Hrbata [4.18.0-220.el8]Frantisek Hrbata [4.18.0-219.el8]Frantisek Hrbata [4.18.0-218.el8]Frantisek Hrbata [4.18.0-217.el8]Frantisek Hrbata [4.18.0-216.el8]Frantisek Hrbata [4.18.0-215.el8]Frantisek Hrbata [4.18.0-214.el8]Frantisek Hrbata [4.18.0-213.el8]Frantisek Hrbata [4.18.0-212.el8]Frantisek Hrbata [4.18.0-211.el8]Frantisek Hrbata [4.18.0-210.el8]Frantisek Hrbata [4.18.0-209.el8]Frantisek Hrbata [4.18.0-208.el8]Frantisek Hrbata [4.18.0-207.el8]Frantisek Hrbata [4.18.0-206.el8]Frantisek Hrbata [4.18.0-205.el8]Frantisek Hrbata [4.18.0-204.el8]Frantisek Hrbata [4.18.0-203.el8]Frantisek Hrbata [4.18.0-202.el8]Frantisek Hrbata [4.18.0-201.el8]Frantisek Hrbata [4.18.0-200.el8]Frantisek Hrbata [4.18.0-199.el8]Frantisek Hrbata [4.18.0-198.el8]Frantisek Hrbata [4.18.0-197.el8]Frantisek Hrbata [4.18.0-196.el8]Frantisek Hrbata [4.18.0-195.el8]Frantisek Hrbata [4.18.0-194.el8]Frantisek Hrbata [4.18.0-193.15.el8]Frantisek Hrbata [4.18.0-193.14.el8]Frantisek Hrbata [4.18.0-193.13.el8]Frantisek Hrbata [4.18.0-193.12.el8]Frantisek Hrbata [4.18.0-193.11.el8]Frantisek Hrbata [4.18.0-193.10.el8]Frantisek Hrbata [4.18.0-193.9.el8]Frantisek Hrbata [4.18.0-193.8.el8]Frantisek Hrbata [4.18.0-193.7.el8]Frantisek Hrbata [4.18.0-193.6.el8]Frantisek Hrbata [4.18.0-193.5.el8]Frantisek Hrbata [4.18.0-193.4.el8]Frantisek Hrbata [4.18.0-193.3.el8]Frantisek Hrbata [4.18.0-193.2.el8]Frantisek Hrbata [4.18.0-193.1.el8]Frantisek Hrbata [4.18.0-192.2.el8]Frantisek Hrbata [4.18.0-192.1.el8]Frantisek Hrbata [4.18.0-191.2.el8]Frantisek Hrbata [4.18.0-191.1.el8]Frantisek Hrbata [4.18.0-190.3.el8]Frantisek Hrbata [4.18.0-190.2.el8]Frantisek Hrbata [4.18.0-190.1.el8]Frantisek Hrbata [4.18.0-189.1.el8]Frantisek Hrbata [4.18.0-188.3.el8]Frantisek Hrbata [4.18.0-188.2.el8]Frantisek Hrbata [4.18.0-188.1.el8]Frantisek Hrbata [4.18.0-187.2.el8]Frantisek Hrbata [4.18.0-187.1.el8]Frantisek Hrbata [4.18.0-186.2.el8]Frantisek Hrbata [4.18.0-186.1.el8]Bruno Meneguele [4.18.0-185.el8]Herton R. Krzesinski [4.18.0-184.el8]Herton R. Krzesinski [4.18.0-183.el8]Herton R. Krzesinski [4.18.0-182.el8]Herton R. Krzesinski [4.18.0-181.el8]Herton R. Krzesinski [4.18.0-180.el8]Herton R. Krzesinski [4.18.0-179.el8]Herton R. Krzesinski [4.18.0-178.el8]Herton R. Krzesinski [4.18.0-177.el8]Herton R. Krzesinski [4.18.0-176.el8]Bruno Meneguele [4.18.0-175.el8]Bruno Meneguele [4.18.0-174.el8]Bruno Meneguele [4.18.0-173.el8]Bruno Meneguele [4.18.0-172.el8]Bruno Meneguele [4.18.0-171.el8]Bruno Meneguele [4.18.0-170.el8]Bruno Meneguele [4.18.0-169.el8]Bruno Meneguele [4.18.0-168.el8]Bruno Meneguele [4.18.0-167.el8]Bruno Meneguele [4.18.0-166.el8]Bruno Meneguele [4.18.0-165.el8]Bruno Meneguele [4.18.0-164.el8]Bruno Meneguele [4.18.0-163.el8]Bruno Meneguele [4.18.0-162.el8]Bruno Meneguele [4.18.0-161.el8]Bruno Meneguele [4.18.0-160.el8]Bruno Meneguele [4.18.0-159.el8]Bruno Meneguele [4.18.0-158.el8]Bruno Meneguele [4.18.0-157.el8]Bruno Meneguele [4.18.0-156.el8]Bruno Meneguele [4.18.0-155.el8]Bruno Meneguele [4.18.0-154.el8]Bruno Meneguele [4.18.0-153.el8]Bruno Meneguele [4.18.0-152.el8]Phillip Lougher [4.18.0-151.el8]Phillip Lougher [4.18.0-150.el8]Phillip Lougher [4.18.0-149.el8]Phillip Lougher [4.18.0-148.el8]Phillip Lougher [4.18.0-147.13.el8]Phillip Lougher [4.18.0-147.12.el8]Phillip Lougher [4.18.0-147.11.el8]Phillip Lougher [4.18.0-147.10.el8]Phillip Lougher [4.18.0-147.9.el8]Phillip Lougher [4.18.0-147.8.el8]Phillip Lougher [4.18.0-147.7.el8]Phillip Lougher [4.18.0-147.6.el8]Phillip Lougher [4.18.0-147.5.el8]Phillip Lougher [4.18.0-147.4.el8]Phillip Lougher [4.18.0-147.3.el8]Phillip Lougher [4.18.0-147.2.el8]Phillip Lougher [4.18.0-147.1.el8]Phillip Lougher [4.18.0-146.1.el8]Phillip Lougher [4.18.0-145.1.el8]Phillip Lougher [4.18.0-144.1.el8]Herton R. Krzesinski [4.18.0-144.el8]Herton R. Krzesinski [4.18.0-143.el8]Herton R. Krzesinski [4.18.0-142.el8]Herton R. Krzesinski [4.18.0-141.el8]Herton R. Krzesinski [4.18.0-140.el8]Herton R. Krzesinski [4.18.0-139.el8]Herton R. Krzesinski [4.18.0-138.el8]Herton R. Krzesinski [4.18.0-137.el8]Herton R. Krzesinski [4.18.0-136.el8]Herton R. Krzesinski [4.18.0-135.el8]Herton R. Krzesinski [4.18.0-134.el8]Herton R. Krzesinski [4.18.0-133.el8]Herton R. Krzesinski [4.18.0-132.el8]Herton R. Krzesinski [4.18.0-131.el8]Herton R. Krzesinski [4.18.0-130.el8]Herton R. Krzesinski [4.18.0-129.el8]Herton R. Krzesinski [4.18.0-128.el8]Herton R. Krzesinski [4.18.0-127.el8]Herton R. Krzesinski [4.18.0-126.el8]Herton R. Krzesinski [4.18.0-125.el8]Herton R. Krzesinski [4.18.0-124.el8]Herton R. Krzesinski [4.18.0-123.el8]Herton R. Krzesinski [4.18.0-122.el8]Herton R. Krzesinski [4.18.0-121.el8]Herton R. Krzesinski [4.18.0-120.el8]Herton R. Krzesinski [4.18.0-119.el8]Herton R. Krzesinski [4.18.0-118.el8]Herton R. Krzesinski [4.18.0-117.el8]Herton R. Krzesinski [4.18.0-116.el8]Herton R. Krzesinski [4.18.0-115.el8]Herton R. Krzesinski [4.18.0-114.el8]Herton R. Krzesinski [4.18.0-113.el8]Herton R. Krzesinski [4.18.0-112.el8]Herton R. Krzesinski [4.18.0-111.el8]Herton R. Krzesinski [4.18.0-110.el8]Herton R. Krzesinski [4.18.0-109.el8]Herton R. Krzesinski [4.18.0-108.el8]Frantisek Hrbata [4.18.0-107.el8]Frantisek Hrbata [4.18.0-106.el8]Frantisek Hrbata [4.18.0-105.el8]Frantisek Hrbata [4.18.0-104.el8]Herton R. Krzesinski [4.18.0-103.el8]Herton R. Krzesinski [4.18.0-102.el8]Herton R. Krzesinski [4.18.0-101.el8]Herton R. Krzesinski [4.18.0-100.el8]Herton R. Krzesinski [4.18.0-99.el8]Herton R. Krzesinski [4.18.0-98.el8]Herton R. Krzesinski [4.18.0-97.el8]Herton R. Krzesinski [4.18.0-96.el8]Herton R. Krzesinski [4.18.0-95.el8]Herton R. Krzesinski [4.18.0-94.el8]Herton R. Krzesinski [4.18.0-93.el8]Herton R. Krzesinski [4.18.0-92.el8]Herton R. Krzesinski [4.18.0-91.el8]Herton R. Krzesinski [4.18.0-90.el8]Herton R. Krzesinski [4.18.0-89.el8]Herton R. Krzesinski [4.18.0-88.el8]Herton R. Krzesinski [4.18.0-87.el8]Herton R. Krzesinski [4.18.0-86.el8]Herton R. Krzesinski [4.18.0-85.el8]Herton R. Krzesinski [4.18.0-84.el8]Herton R. Krzesinski [4.18.0-83.el8]Herton R. Krzesinski [4.18.0-82.el8]Herton R. Krzesinski [4.18.0-81.el8]Herton R. Krzesinski [4.18.0-80.23.el8]Herton R. Krzesinski [4.18.0-80.22.el8]Herton R. Krzesinski [4.18.0-80.21.el8]Herton R. Krzesinski [4.18.0-80.20.el8]Herton R. Krzesinski [4.18.0-80.19.el8]Herton R. Krzesinski [4.18.0-80.18.el8]Herton R. Krzesinski [4.18.0-80.17.el8]Herton R. Krzesinski [4.18.0-80.16.el8]Herton R. Krzesinski [4.18.0-80.15.el8]Herton R. Krzesinski [4.18.0-80.14.el8]Herton R. Krzesinski [4.18.0-80.13.el8]Herton R. Krzesinski [4.18.0-80.12.el8]Herton R. Krzesinski [4.18.0-80.11.el8]Herton R. Krzesinski [4.18.0-80.10.el8]Herton R. Krzesinski [4.18.0-80.9.el8]Herton R. Krzesinski [4.18.0-80.8.el8]Herton R. Krzesinski [4.18.0-80.7.el8]Herton R. Krzesinski [4.18.0-80.6.el8]Herton R. Krzesinski [4.18.0-80.5.el8]Herton R. Krzesinski [4.18.0-80.4.el8]Herton R. Krzesinski [4.18.0-80.3.el8]Herton R. Krzesinski [4.18.0-80.2.el8]Herton R. Krzesinski [4.18.0-80.1.el8]Herton R. Krzesinski [4.18.0-79.1.el8]Herton R. Krzesinski [4.18.0-78.1.el8]Herton R. Krzesinski [4.18.0-77.1.el8]Herton R. Krzesinski [4.18.0-76.1.el8]Herton R. Krzesinski [4.18.0-75.1.el8]Herton R. Krzesinski [4.18.0-74.1.el8]Herton R. Krzesinski [4.18.0-73.1.el8]Herton R. Krzesinski [4.18.0-72.1.el8]Herton R. Krzesinski [4.18.0-71.1.el8]Herton R. Krzesinski [4.18.0-70.el8]Herton R. Krzesinski [4.18.0-69.el8]Herton R. Krzesinski [4.18.0-68.el8]Herton R. Krzesinski [4.18.0-67.el8]Herton R. Krzesinski [4.18.0-66.el8]Herton R. Krzesinski [4.18.0-65.el8]Herton R. Krzesinski [4.18.0-64.el8]Herton R. Krzesinski [4.18.0-63.el8]Herton R. Krzesinski [4.18.0-62.el8]Herton R. Krzesinski [4.18.0-61.el8]Herton R. Krzesinski [4.18.0-60.el8]Herton R. Krzesinski [4.18.0-59.el8]Herton R. Krzesinski [4.18.0-58.el8]Herton R. Krzesinski [4.18.0-57.el8]Herton R. Krzesinski [4.18.0-56.el8]Herton R. Krzesinski [4.18.0-55.el8]Herton R. Krzesinski [4.18.0-54.el8]Herton R. Krzesinski [4.18.0-53.el8]Herton R. Krzesinski [4.18.0-52.el8]Herton R. Krzesinski [4.18.0-51.el8]Herton R. Krzesinski [4.18.0-50.el8]Herton R. Krzesinski [4.18.0-49.el8]Herton R. Krzesinski [4.18.0-48.el8]Herton R. Krzesinski [4.18.0-47.el8]Herton R. Krzesinski [4.18.0-46.el8]Herton R. Krzesinski [4.18.0-45.el8]Herton R. Krzesinski [4.18.0-44.el8]Herton R. Krzesinski [4.18.0-43.el8]Herton R. Krzesinski [4.18.0-42.el8]Herton R. Krzesinski [4.18.0-41.el8]Herton R. Krzesinski [4.18.0-40.el8]Herton R. Krzesinski [4.18.0-39.el8]Herton R. Krzesinski [4.18.0-38.el8]Herton R. Krzesinski [4.18.0-37.el8]Herton R. Krzesinski [4.18.0-36.el8]Herton R. Krzesinski [4.18.0-35.el8]Herton R. Krzesinski [4.18.0-34.el8]Herton R. Krzesinski [4.18.0-33.el8]Herton R. Krzesinski [4.18.0-32.el8]Herton R. Krzesinski [4.18.0-31.el8]Herton R. Krzesinski [4.18.0-30.el8]Herton R. Krzesinski [4.18.0-29.el8]Herton R. Krzesinski [4.18.0-28.el8]Herton R. Krzesinski [4.18.0-27.el8]Herton R. Krzesinski [4.18.0-26.el8]Herton R. Krzesinski [4.18.0-25.el8]Herton R. Krzesinski [4.18.0-24.el8]Herton R. Krzesinski [4.18.0-23.el8]Herton R. Krzesinski [4.18.0-22.el8]Herton R. Krzesinski [4.18.0-21.el8]Herton R. Krzesinski [4.18.0-20.el8]Herton R. Krzesinski [4.18.0-19.el8]Herton R. Krzesinski [4.18.0-18.el8]Herton R. Krzesinski [4.18.0-17.el8]Herton R. Krzesinski [4.18.0-16.el8]Herton R. Krzesinski [4.18.0-15.el8]Herton R. Krzesinski [4.18.0-14.el8]Herton R. Krzesinski [4.18.0-13.el8]Herton R. Krzesinski [4.18.0-12.el8]Herton R. Krzesinski [4.18.0-11.el8]Herton R. Krzesinski [4.18.0-10.el8]Herton R. Krzesinski [4.18.0-9.el8]Herton R. Krzesinski [4.18.0-8.el8]Herton R. Krzesinski [4.18.0-7.el8]Herton R. Krzesinski [4.18.0-6.el8]Herton R. Krzesinski [4.18.0-5.el8]Herton R. Krzesinski [4.18.0-4.el8]Herton R. Krzesinski [4.18.0-3.el8]Herton R. Krzesinski [4.18.0-2.el8]Herton R. Krzesinski [4.18.0-1.el8]- netfilter: nf_tables: mark set as dead when unbinding anonymous set with timeout (Phil Sutter) [RHEL-30076] {CVE-2024-26643} - netfilter: nf_tables: disallow anonymous set with timeout flag (Phil Sutter) [RHEL-30080] {CVE-2024-26642} - selftests/bpf: Fix pyperf180 compilation failure with clang18 (Artem Savkov) [RHEL-35576] - md/raid5: fix atomicity violation in raid5_cache_count (Nigel Croxon) [RHEL-27930] {CVE-2024-23307} - usb: ulpi: Fix debugfs directory leak (Desnes Nunes) [RHEL-33287] {CVE-2024-26919} - powerpc/pseries: Fix potential memleak in papr_get_attr() (Mamatha Inamdar) [RHEL-35213] {CVE-2022-48669} - USB: usb-storage: Prevent divide-by-0 error in isd200_ata_command (Desnes Nunes) [RHEL-35122] {CVE-2024-27059} - NFSv4: fairly test all delegations on a SEQ4_ revocation (Benjamin Coddington) [RHEL-34912] - USB: core: Fix deadlock in usb_deauthorize_interface() (Desnes Nunes) [RHEL-35002] {CVE-2024-26934} - usb: xhci: Add error handling in xhci_map_urb_for_dma (Desnes Nunes) [RHEL-34958] {CVE-2024-26964} - fs: sysfs: Fix reference leak in sysfs_break_active_protection() (Ewan D. Milne) [RHEL-35076] {CVE-2024-26993} - xhci: handle isoc Babble and Buffer Overrun events properly (Desnes Nunes) [RHEL-31297] {CVE-2024-26659} - xhci: process isoc TD properly when there was a transaction error mid TD. (Desnes Nunes) [RHEL-31297] {CVE-2024-26659} - USB: core: Fix deadlock in port "disable" sysfs attribute (Desnes Nunes) [RHEL-35006] {CVE-2024-26933} - USB: core: Add hub_get() and hub_put() routines (Desnes Nunes) [RHEL-35006] {CVE-2024-26933} - netfilter: ipset: Missing gc cancellations fixed (Phil Sutter) [RHEL-30521] - netfilter: ipset: fix performance regression in swap operation (Phil Sutter) [RHEL-30521] - netfilter: ipset: Fix "INFO: rcu detected stall in hash_xxx" reports (Phil Sutter) [RHEL-30521] - netfilter: ipset: fix race condition between swap/destroy and kernel side add/del/test (Phil Sutter) [RHEL-30521] - x86/apic/x2apic: Fix a NULL pointer deref when handling a dying cpu (David Arcari) [RHEL-32516] - x86/coco: Disable 32-bit emulation by default on TDX and SEV (Vitaly Kuznetsov) [RHEL-25087] {CVE-2024-25744} - x86: Make IA32_EMULATION boot time configurable (Vitaly Kuznetsov) [RHEL-25087] {CVE-2024-25744} - x86/entry: Make IA32 syscalls' availability depend on ia32_enabled() (Vitaly Kuznetsov) [RHEL-25087] {CVE-2024-25744} - x86/elf: Make loading of 32bit processes depend on ia32_enabled() (Vitaly Kuznetsov) [RHEL-25087] {CVE-2024-25744} - x86/entry: Rename ignore_sysret() (Vitaly Kuznetsov) [RHEL-25087] {CVE-2024-25744} - x86/cpu: Don't write CSTAR MSR on Intel CPUs (Vitaly Kuznetsov) [RHEL-25087] {CVE-2024-25744} - x86: Introduce ia32_enabled() (Vitaly Kuznetsov) [RHEL-25087] {CVE-2024-25744}- s390/ptrace: handle setting of fpc register correctly (Tobias Huschle) [RHEL-29106] {CVE-2023-52598} - net/smc: fix illegal rmb_desc access in SMC-D connection dump (Tobias Huschle) [RHEL-27746] {CVE-2024-26615} - wifi: mac80211: fix race condition on enabling fast-xmit (Jose Ignacio Tornos Martinez) [RHEL-31664] {CVE-2024-26779} - powerpc/fadump: make is_kdump_kernel() return false when fadump is active (Mamatha Inamdar) [RHEL-24401] - vmcore: remove dependency with is_kdump_kernel() for exporting vmcore (Mamatha Inamdar) [RHEL-24401] - mtd: require write permissions for locking and badblock ioctls (Prarit Bhargava) [RHEL-27585] {CVE-2021-47055} - mtd: properly check all write ioctls for permissions (Prarit Bhargava) [RHEL-27585] {CVE-2021-47055} - pid: take a reference when initializing `cad_pid` (Waiman Long) [RHEL-29420] {CVE-2021-47118} - i2c: i801: Don't generate an interrupt on bus reset (Prarit Bhargava) [RHEL-30325] {CVE-2021-47153} - RDMA/srpt: Do not register event handler until srpt device is fully setup (Kamal Heib) [RHEL-33224] {CVE-2024-26872} - ceph: switch to corrected encoding of max_xattr_size in mdsmap (Xiubo Li) [RHEL-26723] - ceph: switch to use cap_delay_lock for the unlink delay list (Xiubo Li) [RHEL-32870] - ceph: pass ino# instead of old_dentry if it's disconnected (Xiubo Li) [RHEL-32870] - fat: fix uninitialized field in nostale filehandles (Andrey Albershteyn) [RHEL-33186 RHEL-35108] {CVE-2024-26973} - do_sys_name_to_handle(): use kzalloc() to fix kernel-infoleak (Andrey Albershteyn) [RHEL-33186] {CVE-2024-26901} - idpf: limit the support to GCP only (Michal Schmidt) [RHEL-15652] - redhat/configs: enable CONFIG_IDPF (Michal Schmidt) [RHEL-15652] - idpf: remove the use of ETHTOOL_RING_USE_TCP_DATA_SPLIT (Michal Schmidt) [RHEL-15652] - idpf: workaround for unavailable skb page recycling (Michal Schmidt) [RHEL-15652] - idpf: always allocate a full page (Michal Schmidt) [RHEL-15652] - idpf: remove page pool stats code (Michal Schmidt) [RHEL-15652] - idpf: add minimal macros for __free(kfree) to work (Michal Schmidt) [RHEL-15652] - idpf: fixup include paths for RHEL 8 (Michal Schmidt) [RHEL-15652] - idpf: fix kernel panic on unknown packet types (Michal Schmidt) [RHEL-15652] - idpf: disable local BH when scheduling napi for marker packets (Michal Schmidt) [RHEL-15652] - idpf: remove dealloc vector msg err in idpf_intr_rel (Michal Schmidt) [RHEL-15652] - idpf: fix minor controlq issues (Michal Schmidt) [RHEL-15652] - idpf: prevent deinit uninitialized virtchnl core (Michal Schmidt) [RHEL-15652] - idpf: cleanup virtchnl cruft (Michal Schmidt) [RHEL-15652] - idpf: refactor idpf_recv_mb_msg (Michal Schmidt) [RHEL-15652] - idpf: add async_handler for MAC filter messages (Michal Schmidt) [RHEL-15652] - idpf: refactor remaining virtchnl messages (Michal Schmidt) [RHEL-15652] - idpf: refactor queue related virtchnl messages (Michal Schmidt) [RHEL-15652] - idpf: refactor vport virtchnl messages (Michal Schmidt) [RHEL-15652] - idpf: implement virtchnl transaction manager (Michal Schmidt) [RHEL-15652] - idpf: add idpf_virtchnl.h (Michal Schmidt) [RHEL-15652] - idpf: avoid compiler padding in virtchnl2_ptype struct (Michal Schmidt) [RHEL-15652] - idpf: distinguish vports by the dev_port attribute (Michal Schmidt) [RHEL-15652] - idpf: avoid compiler introduced padding in virtchnl2_rss_key struct (Michal Schmidt) [RHEL-15652] - idpf: fix corrupted frames and skb leaks in singleq mode (Michal Schmidt) [RHEL-15652] - idpf: refactor some missing field get/prep conversions (Michal Schmidt) [RHEL-15652] - idpf: add get/set for Ethtool's header split ringparam (Michal Schmidt) [RHEL-15652] - idpf: fix potential use-after-free in idpf_tso() (Michal Schmidt) [RHEL-15652] - idpf: cancel mailbox work in error path (Michal Schmidt) [RHEL-15652] - idpf: set scheduling mode for completion queue (Michal Schmidt) [RHEL-15652] - idpf: add SRIOV support and other ndo_ops (Michal Schmidt) [RHEL-15652] - idpf: add ethtool callbacks (Michal Schmidt) [RHEL-15652] - idpf: add singleq start_xmit and napi poll (Michal Schmidt) [RHEL-15652] - idpf: add RX splitq napi poll support (Michal Schmidt) [RHEL-15652] - idpf: add TX splitq napi poll support (Michal Schmidt) [RHEL-15652] - idpf: add splitq start_xmit (Michal Schmidt) [RHEL-15652] - idpf: initialize interrupts and enable vport (Michal Schmidt) [RHEL-15652] - idpf: configure resources for RX queues (Michal Schmidt) [RHEL-15652] - idpf: configure resources for TX queues (Michal Schmidt) [RHEL-15652] - idpf: add ptypes and MAC filter support (Michal Schmidt) [RHEL-15652] - idpf: add create vport and netdev configuration (Michal Schmidt) [RHEL-15652] - idpf: add core init and interrupt request (Michal Schmidt) [RHEL-15652] - idpf: add controlq init and reset checks (Michal Schmidt) [RHEL-15652] - idpf: add module register and probe functionality (Michal Schmidt) [RHEL-15652] - virtchnl: add virtchnl version 2 ops (Michal Schmidt) [RHEL-15652] - net: netdev_queue: netdev_txq_completed_mb(): fix wake condition (Michal Schmidt) [RHEL-15652] - net: piggy back on the memory barrier in bql when waking queues (Michal Schmidt) [RHEL-15652] - net: provide macros for commonly copied lockless queue stop/wake code (Michal Schmidt) [RHEL-15652]- redhat: set DIST to el8_10 and ZSTREAM to yes for 8.10 (Denys Vlasenko) - tty: tty_buffer: Fix the softlockup issue in flush_to_ldisc (Prarit Bhargava) [RHEL-32590] {CVE-2021-47185} - net: mana: Fix Rx DMA datasize and skb_over_panic (Cathy Avery) [RHEL-32579] - RDMA/srpt: Support specifying the srpt_service_guid parameter (Kamal Heib) [RHEL-31710] {CVE-2024-26744} - RDMA/qedr: Fix qedr_create_user_qp error flow (Kamal Heib) [RHEL-31714] {CVE-2024-26743} - hwmon: (coretemp) Fix out-of-bounds memory access (David Arcari) [RHEL-31305] {CVE-2024-26664} - RDMA/irdma: Fix KASAN issue with tasklet (Kamal Heib) [RHEL-15776] - net: bridge: use DEV_STATS_INC() (Ivan Vecera) [RHEL-27989] {CVE-2023-52578} - net: Fix unwanted sign extension in netdev_stats_to_stats64() (Ivan Vecera) [RHEL-27989] {CVE-2023-52578} - net: add atomic_long_t to net_device_stats fields (Ivan Vecera) [RHEL-27989] {CVE-2023-52578} - net/sched: act_ct: fix skb leak and crash on ooo frags (Xin Long) [RHEL-29467] {CVE-2023-52610} - net: usb: smsc75xx: Fix uninit-value access in __smsc75xx_read_reg (Jose Ignacio Tornos Martinez) [RHEL-28015] {CVE-2023-52528} - RDMA/core: Fix uninit-value access in ib_get_eth_speed() (Kamal Heib) [RHEL-30130] - RDMA/core: Get IB width and speed from netdev (Kamal Heib) [RHEL-30130] - cpufreq: intel_pstate: Add Emerald Rapids support in no-HWP mode (Prarit Bhargava) [RHEL-29444] - powerpc/mm: Fix null-pointer dereference in pgtable_cache_add (Mamatha Inamdar) [RHEL-29118] {CVE-2023-52607} - powerpc/lib: Validate size for vector operations (Mamatha Inamdar) [RHEL-29114] {CVE-2023-52606} - usb: hub: Guard against accesses to uninitialized BOS descriptors (Desnes Nunes) [RHEL-28986] {CVE-2023-52477} - media: uvcvideo: Fix OOB read (Desnes Nunes) [RHEL-27940] {CVE-2023-52565} - media: pvrusb2: fix use after free on context disconnection (Desnes Nunes) [RHEL-26498] {CVE-2023-52445} - i2c: i801: Fix block process call transactions (Prarit Bhargava) [RHEL-26478] {CVE-2024-26593} - overlay: disable EVM (Coiby Xu) [RHEL-19863] - evm: add support to disable EVM on unsupported filesystems (Coiby Xu) [RHEL-19863] - evm: don't copy up 'security.evm' xattr (Coiby Xu) [RHEL-19863] - net: ena: Remove ena_select_queue (Kamal Heib) [RHEL-14286] - media: dvbdev: Fix memory leak in dvb_media_device_free() (Prarit Bhargava) [RHEL-27254] {CVE-2020-36777} - gfs2: Fix invalid metadata access in punch_hole (Andrew Price) [RHEL-28784] - i2c: Fix a potential use after free (Prarit Bhargava) [RHEL-26849] {CVE-2019-25162} - i2c: validate user data in compat ioctl (Prarit Bhargava) [RHEL-27022] {CVE-2021-46934} - platform/x86: think-lmi: Fix reference leak (Prarit Bhargava) [RHEL-28030] {CVE-2023-52520} - vhost: use kzalloc() instead of kmalloc() followed by memset() (Jon Maloy) [RHEL-21505] {CVE-2024-0340} - RDMA/siw: Fix connection failure handling (Kamal Heib) [RHEL-28042] {CVE-2023-52513} - vt: fix memory overlapping when deleting chars in the buffer (Waiman Long) [RHEL-27778 RHEL-27779] {CVE-2022-48627} - x86/fpu: Stop relying on userspace for info to fault in xsave buffer (Steve Best) [RHEL-26669] {CVE-2024-26603} - mptcp: fix double-free on socket dismantle (Davide Caratti) [RHEL-22773] {CVE-2024-26782} - crypto: akcipher - Disable signing and decryption (Herbert Xu) [RHEL-17114] {CVE-2023-6240} - crypto: akcipher - default implementations for request callbacks (Herbert Xu) [RHEL-17114] {CVE-2023-6240} - crypto: testmgr - split akcipher tests by a key type (Herbert Xu) [RHEL-17114] {CVE-2023-6240} - workqueue: Warn when a rescuer could not be created (Waiman Long) [RHEL-22136] - RDMA/cma: Avoid GID lookups on iWARP devices (Benjamin Coddington) [RHEL-12456] - RDMA/cma: Deduplicate error flow in cma_validate_port() (Benjamin Coddington) [RHEL-12456] - RDMA/core: Set gid_attr.ndev for iWARP devices (Benjamin Coddington) [RHEL-12456] - RDMA/siw: Fabricate a GID on tun and loopback devices (Benjamin Coddington) [RHEL-12456]- i40e: Enforce software interrupt during busy-poll exit (Ivan Vecera) [RHEL-26248] - i40e: Remove _t suffix from enum type names (Ivan Vecera) [RHEL-26248]- x86/sev: Harden #VC instruction emulation somewhat (Vitaly Kuznetsov) [RHEL-30040] {CVE-2024-25743 CVE-2024-25742} - i40e: Fix VF MAC filter removal (Ivan Vecera) [RHEL-22992] - i40e: Do not allow untrusted VF to remove administratively set MAC (Ivan Vecera) [RHEL-22992]- mm/sparsemem: fix race in accessing memory_section->usage (Waiman Long) [RHEL-28875 RHEL-28876] {CVE-2023-52489} - mm: use __pfn_to_section() instead of open coding it (Waiman Long) [RHEL-28875] {CVE-2023-52489}- dm-integrity: align the outgoing bio in integrity_recheck (Benjamin Marzinski) [RHEL-29678] - dm-integrity: fix a memory leak when rechecking the data (Benjamin Marzinski) [RHEL-29678] - RDMA/mana_ib: Add CQ interrupt support for RAW QP (Maxim Levitsky) [RHEL-23934] - RDMA/mana_ib: query device capabilities (Maxim Levitsky) [RHEL-23934] - RDMA/mana_ib: register RDMA device with GDMA (Maxim Levitsky) [RHEL-23934] - net: mana: add msix index sharing between EQs (Maxim Levitsky) [RHEL-23934] - net: mana: Fix spelling mistake "enforecement" -> "enforcement" (Maxim Levitsky) [RHEL-23934] - net :mana :Add remaining GDMA stats for MANA to ethtool (Maxim Levitsky) [RHEL-23934] - net: mana: Fix oversized sge0 for GSO packets (Maxim Levitsky) [RHEL-23934] - net: mana: Fix TX CQE error handling (Maxim Levitsky) [RHEL-23934] - net: mana: Add gdma stats to ethtool output for mana (Maxim Levitsky) [RHEL-23934] - net: mana: Fix MANA VF unload when hardware is unresponsive (Maxim Levitsky) [RHEL-23934] - net: mana: Configure hwc timeout from hardware (Maxim Levitsky) [RHEL-23934] - RDMA/mana_ib: Use v2 version of cfg_rx_steer_req to enable RX coalescing (Maxim Levitsky) [RHEL-23934]- gitlab-ci: enable arm64/s390x/ppc64le debug builds (Michael Hofmann) - arm64: Add missing bits of AmpereOne Spectre-BHB mitigation (Mark Salter) [RHEL-29005] - [rt] enable CONFIG_DRM_MGAG200_IOBURST_WORKAROUND (Jocelyn Falempe) [RHEL-13214] - drm/mgag200: Add a workaround for low-latency (Jocelyn Falempe) [RHEL-13214]- x86/efistub: Avoid placing the kernel below LOAD_PHYSICAL_ADDR (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Give up if memory attribute protocol returns an error (Lenny Szubowicz) [RHEL-2505] - x86/boot: Increase section and file alignment to 4k/512 (Lenny Szubowicz) [RHEL-2505] - x86/boot: Split off PE/COFF .data section (Lenny Szubowicz) [RHEL-2505] - x86/boot: Drop PE/COFF .reloc section (Lenny Szubowicz) [RHEL-2505] - x86/boot: Construct PE/COFF .text section from assembler (Lenny Szubowicz) [RHEL-2505] - x86/boot: Derive file size from _edata symbol (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed: Remove, discard, or assert for unwanted sections (Lenny Szubowicz) [RHEL-2505] - x86/boot: Check that there are no run-time relocations (Lenny Szubowicz) [RHEL-2505] - x86/boot: Discard .discard.unreachable for arch/x86/boot/compressed/vmlinux (Lenny Szubowicz) [RHEL-2505] - x86/boot: Define setup size in linker script (Lenny Szubowicz) [RHEL-2505] - x86/boot: Set EFI handover offset directly in header asm (Lenny Szubowicz) [RHEL-2505] - x86/boot: Drop references to startup_64 (Lenny Szubowicz) [RHEL-2505] - x86/boot: Drop redundant code setting the root device (Lenny Szubowicz) [RHEL-2505] - x86/build: Declutter the build output (Lenny Szubowicz) [RHEL-2505] - x86/boot: Omit compression buffer from PE/COFF image memory footprint (Lenny Szubowicz) [RHEL-2505] - x86/boot: Mark global variables as static (Lenny Szubowicz) [RHEL-2505] - efi/x86: Remove extra headroom for setup block (Lenny Szubowicz) [RHEL-2505] - x86/boot: Remove the 'bugger off' message (Lenny Szubowicz) [RHEL-2505] - x86/efi: Drop alignment flags from PE section headers (Lenny Szubowicz) [RHEL-2505] - efi: Put Linux specific magic number in the DOS header (Lenny Szubowicz) [RHEL-2505] - efi/x86: Fix the missing KASLR_FLAG bit in boot_params->hdr.loadflags (Lenny Szubowicz) [RHEL-2505] - efi/x86: Avoid physical KASLR on older Dell systems (Lenny Szubowicz) [RHEL-2505] - x86/boot: efistub: Assign global boot_params variable (Lenny Szubowicz) [RHEL-2505] - x86/boot: Rename conflicting 'boot_params' pointer to 'boot_params_ptr' (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Avoid legacy decompressor when doing EFI boot (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Perform SNP feature test while running in the firmware (Lenny Szubowicz) [RHEL-2505] - x86/sev: Do not try to parse for the CC blob on non-AMD hardware (Lenny Szubowicz) [RHEL-2505] - efi/libstub: Add limit argument to efi_random_alloc() (Lenny Szubowicz) [RHEL-2505] - arm64: efi: Limit allocations to 48-bit addressable physical region (Lenny Szubowicz) [RHEL-2505] - efi: libstub: use EFI_LOADER_CODE region when moving the kernel in memory (Lenny Szubowicz) [RHEL-2505] - arm64: efi: kaslr: Fix occasional random alloc (and boot) failure (Lenny Szubowicz) [RHEL-2505] - efi/libstub/random: Increase random alloc granularity (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Factor out kernel decompression and relocation (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Move global symbol references to C code (Lenny Szubowicz) [RHEL-2505] - decompress: Use 8 byte alignment (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Prefer EFI memory attributes protocol over DXE services (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Perform 4/5 level paging switch from the stub (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Merge trampoline cleanup with switching code (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Pass pgtable address to trampoline directly (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Only call the trampoline when changing paging levels (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Call trampoline directly from C code (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Avoid the need for a stack in the 32-bit trampoline (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Use standard calling convention for trampoline (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Call trampoline as a normal function (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Remove .bss/.pgtable from bzImage (Lenny Szubowicz) [RHEL-2505] - x86/boot: Remove run-time relocations from .head.text code (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Assign paging related global variables earlier (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Store boot_params pointer in callee save register (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Clear BSS in EFI handover protocol entrypoint (Lenny Szubowicz) [RHEL-2505] - x86/head_64: Store boot_params pointer in callee save register (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Don't rely on upper 32 bits of GPRs being preserved (Lenny Szubowicz) [RHEL-2505] - x86/head/64: Switch to KERNEL_CS as soon as new GDT is installed (Lenny Szubowicz) [RHEL-2505] - efi/libstub: Add memory attribute protocol definitions (Lenny Szubowicz) [RHEL-2505] - efi/x86: libstub: remove unused variable (Lenny Szubowicz) [RHEL-2505] - x86/boot: Robustify calling startup_{32,64}() from the decompressor code (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Simplify and clean up handover entry code (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Branch straight to kernel entry point from C code (Lenny Szubowicz) [RHEL-2505] - efi/x86: Avoid using code32_start (Lenny Szubowicz) [RHEL-2505] - efi/libstub/x86: Use Exit() boot service to exit the stub on errors (Lenny Szubowicz) [RHEL-2505] - efi: x86: Wipe setup_data on pure EFI boot (Lenny Szubowicz) [RHEL-2505] - efi: x86: Fix config name for setting the NX-compatibility flag in the PE header (Lenny Szubowicz) [RHEL-2505] - efi: x86: Set the NX-compatibility flag in the PE header (Lenny Szubowicz) [RHEL-2505] - efi/x86: Add kernel preferred address to PE header (Lenny Szubowicz) [RHEL-2505] - efi/x86: Use symbolic constants in PE header instead of bare numbers (Lenny Szubowicz) [RHEL-2505] - efi/x86: Drop redundant .bss section (Lenny Szubowicz) [RHEL-2505] - efi/x86: add headroom to decompressor BSS to account for setup block (Lenny Szubowicz) [RHEL-2505] - x86/boot: Remove run-time relocations from head_{32,64}.S (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed: Fix debug_puthex() parameter type (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Use 32-bit (zero-extended) MOV for z_output_len (Lenny Szubowicz) [RHEL-2505] - x86/boot: Use unsigned comparison for addresses (Lenny Szubowicz) [RHEL-2505] - x86/boot: Micro-optimize GDT loading instructions (Lenny Szubowicz) [RHEL-2505] - x86/boot: GDT limit value should be size - 1 (Lenny Szubowicz) [RHEL-2505] - efi/x86: Remove GDT setup from efi_main (Lenny Szubowicz) [RHEL-2505] - x86/boot: Clear direction and interrupt flags in startup_64 (Lenny Szubowicz) [RHEL-2505] - efi/x86: Don't depend on firmware GDT layout (Lenny Szubowicz) [RHEL-2505] - x86/boot: Remove KEEP_SEGMENTS support (Lenny Szubowicz) [RHEL-2505] - x86/boot: Handle malformed SRAT tables during early ACPI parsing (Lenny Szubowicz) [RHEL-2505] - efi/libstub/x86: Use mandatory 16-byte stack alignment in mixed mode (Lenny Szubowicz) [RHEL-2505] - efi/libstub/x86: Avoid globals to store context during mixed mode calls (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Disable paging at mixed mode entry (Lenny Szubowicz) [RHEL-2505] - x86: efi/random: Invoke EFI_RNG_PROTOCOL to seed the UEFI RNG table (Lenny Szubowicz) [RHEL-2505] - x86/asm: Make some functions local (Lenny Szubowicz) [RHEL-2505] - x86/boot: Annotate data appropriately (Lenny Szubowicz) [RHEL-2505] - x86/boot: Annotate local functions (Lenny Szubowicz) [RHEL-2505] - x86/asm: Make more symbols local (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Fix missing initialization in find_trampoline_placement() (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Fix boot on machines with broken E820 table (Lenny Szubowicz) [RHEL-2505] - x86, boot: Remove multiple copy of static function sanitize_boot_params() (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Remove unused variable (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Explain paging_prepare()'s return value (Lenny Szubowicz) [RHEL-2505] - x86/boot: Save several bytes in decompressor (Lenny Szubowicz) [RHEL-2505] - fs,hugetlb: fix NULL pointer dereference in hugetlbs_fill_super (Audra Mitchell) [RHEL-20614] {CVE-2024-0841} - net/gve: update check for little-endianness in gve kconfig (Joshua Washington) [RHEL-29030]- sched/membarrier: reduce the ability to hammer on sys_membarrier (Wander Lairson Costa) [RHEL-23430] {CVE-2024-26602} - NFS: Set the stable writes flag when initialising the super block (Benjamin Coddington) [RHEL-25266] - smb: client: fix OOB in receive_encrypted_standard() (Scott Mayhew) [RHEL-21685] {CVE-2024-0565} - scsi: core: Move scsi_host_busy() out of host lock if it is for per-command (Ming Lei) [RHEL-23942] - scsi: core: Move scsi_host_busy() out of host lock for waking up EH handler (Ming Lei) [RHEL-23942] - gfs2: Fix kernel NULL pointer dereference in gfs2_rgrp_dump (Andrew Price) [RHEL-26501] {CVE-2023-52448} - smb: client: fix parsing of SMB3.1.1 POSIX create context (Paulo Alcantara) [RHEL-26241] {CVE-2023-52434} - smb: client: fix potential OOBs in smb2_parse_contexts() (Paulo Alcantara) [RHEL-26241] {CVE-2023-52434} - smb3: Replace smb2pdu 1-element arrays with flex-arrays (Jay Shin) [RHEL-22143] - cifs: Replace remaining 1-element arrays (Jay Shin) [RHEL-22143] - cifs: Convert struct fealist away from 1-element array (Jay Shin) [RHEL-22143] - cifs: remove unneeded 2bytes of padding from smb2 tree connect (Jay Shin) [RHEL-22143] - cifs: Replace zero-length arrays with flexible-array members (Jay Shin) [RHEL-22143] - cifs: Replace a couple of one-element arrays with flexible-array members (Jay Shin) [RHEL-22143] - cifs: fix FILE_BOTH_DIRECTORY_INFO definition (Jay Shin) [RHEL-22143] - nfsd: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - nfs: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - lockd: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - cifs: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - ceph: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - filelock: add a new locks_inode_context accessor function (Jeffrey Layton) [RHEL-27441] - dm-integrity, dm-verity: reduce stack usage for recheck (Benjamin Marzinski) [RHEL-27849] - dm-crypt: recheck the integrity tag after a failure (Benjamin Marzinski) [RHEL-27849] - dm-crypt: don't modify the data when using authenticated encryption (Benjamin Marzinski) [RHEL-27849] - dm-verity: recheck the hash after a failure (Benjamin Marzinski) [RHEL-27849] - dm-integrity: recheck the integrity tag after a failure (Benjamin Marzinski) [RHEL-27849]- tracing/timerlat: Move hrtimer_init to timerlat_fd open() (John Kacur) [RHEL-26667] - tracing/perf: Fix double put of trace event when init fails (Michael Petlan) [RHEL-19537] - ipvlan: Add handling of NETDEV_UP events (Hangbin Liu) [RHEL-19098] - ceph: add ceph_cap_unlink_work to fire check_caps() immediately (Xiubo Li) [RHEL-21760] - ceph: always queue a writeback when revoking the Fb caps (Xiubo Li) [RHEL-21760] - ceph: always check dir caps asynchronously (Xiubo Li) [RHEL-21760] - nfs: fix redundant readdir request after get eof (Benjamin Coddington) [RHEL-7780] - NFSv4.1: fixup use EXCHGID4_FLAG_USE_PNFS_DS for DS server (Scott Mayhew) [RHEL-7994] - NFSv4.1: fix pnfs MDS=DS session trunking (Scott Mayhew) [RHEL-7994] - NFSv4.1: fix zero value filehandle in post open getattr (Scott Mayhew) [RHEL-7994] - NFSv4.1: use EXCHGID4_FLAG_USE_PNFS_DS for DS server (Scott Mayhew) [RHEL-7994]- ext4: fix kernel BUG in 'ext4_write_inline_data_end()' (Carlos Maiolino) [RHEL-23386] {CVE-2021-33631} - i2c: designware: Disable TX_EMPTY irq while waiting for block length byte (Charles Mirabile) [RHEL-24019] - scsi: smartpqi: Fix disable_managed_interrupts (Tomas Henzl) [RHEL-25747] - hwmon: (k10temp) Check range scale when CUR_TEMP register is read-write (Steve Best) [RHEL-26167] - gitlab-ci: do not show (results can be ignored) for rt pipelines (Michael Hofmann)- perf symbols: Symbol lookup with kcore can fail if multiple segments match stext (Charles Mirabile) [RHEL-23760] - perf/arm-cmn: Move overlapping wp_combine field (Charles Mirabile) [RHEL-23757] - drm/amd: Fix detection of _PR3 on the PCIe root port (Michel Dänzer) [RHEL-14572] - xfs: avoid AGI->AGF->inode-buffer deadlocks (Thiago Becker) [RHEL-7914] - dm-crypt, dm-verity: disable tasklets (Benjamin Marzinski) [RHEL-22232] - dm verity: initialize fec io before freeing it (Benjamin Marzinski) [RHEL-22232] - dm-verity: don't use blocking calls from tasklets (Benjamin Marzinski) [RHEL-22232] - char: misc: Increase the maximum number of dynamic misc devices to 1048448 (Charles Mirabile) [RHEL-23758] - char: misc: remove usage of list iterator past the loop body (Charles Mirabile) [RHEL-23758] - char: misc: increase DYNAMIC_MINORS value (Charles Mirabile) [RHEL-23758] - char: misc: Move EXPORT_SYMBOL immediately next to the functions/varibles (Charles Mirabile) [RHEL-23758] - clocksource/drivers/arm_arch_timer: Force inlining of erratum_set_next_event_generic() (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix handling of ARM erratum 858921 (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Remove arch_timer_rate1 (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix CNTPCT_LO and CNTVCT_LO value (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Disable timer before programming CVAL (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix XGene-1 TVAL register math error (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: limit XGene-1 workaround (Mark Salter) [RHEL-19605] - clocksource/drivers/arch_arm_timer: Move workaround synchronisation around (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix masking for high freq counters (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Drop unnecessary ISB on CVAL programming (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Remove any trace of the TVAL programming interface (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Work around broken CVAL implementations (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Advertise 56bit timer to the core code (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Move MMIO timer programming over to CVAL (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix MMIO base address vs callback ordering issue (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Add __ro_after_init and __init (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Move drop _tval from erratum function names (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Move system register timer programming over to CVAL (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Extend write side of timer register accessors to u64 (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Drop CNT*_TVAL read accessors (Mark Salter) [RHEL-19605] - clocksource/arm_arch_timer: Add build-time guards for unhandled register accesses (Mark Salter) [RHEL-19605]- netfilter: nf_tables: reject QUEUE/DROP verdict parameters (Florian Westphal) [RHEL-23506] {CVE-2024-1086} - drm/virtio: Set segment size for virtio_gpu device (Sebastian Ott) [RHEL-15465] - xfs: run blockgc on freeze to avoid inode inactivation deadlock (Brian Foster) [RHEL-11344] - RDMA/irdma: Report the correct link speed (Kamal Heib) [RHEL-23967] - scsi: core: Increase max device queue_depth to 4096 (Ming Lei) [RHEL-11725] - smsc95xx: fix stalled rx after link change (Izabela Bakollari) [RHEL-22312] - ovl: remove privs in ovl_fallocate() (Miklos Szeredi) [RHEL-17933] - ovl: remove privs in ovl_copyfile() (Miklos Szeredi) [RHEL-17933] - Bluetooth: Add more enc key size check (David Marlin) [RHEL-19666] {CVE-2023-24023} - Bluetooth: Normalize HCI_OP_READ_ENC_KEY_SIZE cmdcmplt (David Marlin) [RHEL-19666] {CVE-2023-24023} - IB: Use capital "OR" for multiple licenses in SPDX (Izabela Bakollari) [RHEL-10238] - RDMA/rdmavt: Delete unnecessary NULL check (Izabela Bakollari) [RHEL-10238] - IB/rdmavt: Fix target union member for rvt_post_one_wr() (Izabela Bakollari) [RHEL-10238] - selftests/mm: cow: print ksft header before printing anything else (Nico Pache) [RHEL-5623] - selftests/mm/kugepaged: restore thp settings at exit (Nico Pache) [RHEL-5623] - selftests: line buffer test program's stdout (Nico Pache) [RHEL-5623] - selftests/kselftest/runner.sh: Pass optional command parameters in environment (Nico Pache) [RHEL-5623] - selftests/kselftest/runner/run_one(): allow running non-executable files (Nico Pache) [RHEL-5623] - selftests: allow runners to override the timeout (Nico Pache) [RHEL-5623] - selftests: mm: fix map_hugetlb failure on 64K page size systems (Nico Pache) [RHEL-5623] - redhat: Fix build for kselftests mm (Nico Pache) [RHEL-5623] - selftests: anon_cow: skip broken test (Nico Pache) [RHEL-5623] - mm/gup_test: free memory allocated via kvcalloc() using kvfree() (Nico Pache) [RHEL-5623] - selftests/mm: prevent duplicate runs caused by TEST_GEN_PROGS (Nico Pache) [RHEL-5623] - selftests: mm: add a test for mutually aligned moves > PMD size (Nico Pache) [RHEL-5623] - tools: fix ARRAY_SIZE defines in tools and selftests hdrs (Nico Pache) [RHEL-5623] - selftests: mm: fix failure case when new remap region was not found (Nico Pache) [RHEL-5623] - selftests/mm: fix WARNING comparing pointer to 0 (Nico Pache) [RHEL-5623] - selftests/mm: run all tests from run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests/mm: optionally pass duration to transhuge-stress (Nico Pache) [RHEL-5623] - selftests/mm: make migration test robust to failure (Nico Pache) [RHEL-5623] - selftests/mm: va_high_addr_switch should skip unsupported arm64 configs (Nico Pache) [RHEL-5623] - selftests/mm: fix thuge-gen test bugs (Nico Pache) [RHEL-5623] - selftests/mm: skip soft-dirty tests on arm64 (Nico Pache) [RHEL-5623] - selftests/mm: add gup test matrix in run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests/mm: add -a to run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests/mm: give scripts execute permission (Nico Pache) [RHEL-5623] - selftests: mm: remove duplicate unneeded defines (Nico Pache) [RHEL-5623] - Documentation: kselftest: "make headers" is a prerequisite (Nico Pache) [RHEL-5623] - selftests/mm: fix build failures due to missing MADV_COLLAPSE (Nico Pache) [RHEL-5623] - selftests/mm: fix a "possibly uninitialized" warning in pkey-x86.h (Nico Pache) [RHEL-5623] - selftests/mm: .gitignore: add mkdirty, va_high_addr_switch (Nico Pache) [RHEL-5623] - selftests/mm: fix invocation of tests that are run via shell scripts (Nico Pache) [RHEL-5623] - selftests/mm: fix "warning: expression which evaluates to zero..." in mlock2-tests.c (Nico Pache) [RHEL-5623] - selftests/mm: fix unused variable warnings in hugetlb-madvise.c, migration.c (Nico Pache) [RHEL-5623] - selftests/mm: fix cross compilation with LLVM (Nico Pache) [RHEL-5623] - selftests/mm: run hugetlb testcases of va switch (Nico Pache) [RHEL-5623] - selftests/mm: configure nr_hugepages for arm64 (Nico Pache) [RHEL-5623] - selftests/mm: add platform independent in code comments (Nico Pache) [RHEL-5623] - selftests/mm: rename va_128TBswitch to va_high_addr_switch (Nico Pache) [RHEL-5623] - selftests/mm: add support for arm64 platform on va switch (Nico Pache) [RHEL-5623] - selftests/mm: use PM_* macros in vm_utils.h (Nico Pache) [RHEL-5623] - selftests/mm: merge default_huge_page_size() into one (Nico Pache) [RHEL-5623] - selftests/mm: link vm_util.c always (Nico Pache) [RHEL-5623] - selftests/mm: use TEST_GEN_PROGS where proper (Nico Pache) [RHEL-5623] - selftests/mm: merge util.h into vm_util.h (Nico Pache) [RHEL-5623] - selftests/mm: dump a summary in run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests/mm: set overcommit_policy as OVERCOMMIT_ALWAYS (Nico Pache) [RHEL-5623] - selftests/mm: change NR_CHUNKS_HIGH for aarch64 (Nico Pache) [RHEL-5623] - selftests/mm: change MAP_CHUNK_SIZE (Nico Pache) [RHEL-5623] - selftests: vm: enable cross-compilation (Nico Pache) [RHEL-5623] - selftests/vm: rename selftests/vm to selftests/mm (Nico Pache) [RHEL-5623] - selftests: vm: Fix incorrect kernel headers search path (Nico Pache) [RHEL-5623] - selftests/vm: cow: fix compile warning on 32bit (Nico Pache) [RHEL-5623] - mm/gup_test: fix PIN_LONGTERM_TEST_READ with highmem (Nico Pache) [RHEL-5623] - mm/pagewalk: don't trigger test_walk() in walk_page_vma() (Nico Pache) [RHEL-5623] - selftests/vm: enable running select groups of tests (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: add R/O longterm tests via gup_test (Nico Pache) [RHEL-5623] - mm/gup_test: start/stop/read functionality for PIN LONGTERM test (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: add liburing test cases (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: hugetlb tests (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: THP tests (Nico Pache) [RHEL-5623] - selftests/vm: factor out pagemap_is_populated() into vm_util (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: test COW handling of anonymous memory (Nico Pache) [RHEL-5623] - selftests/vm: add local_config.h and local_config.mk to .gitignore (Nico Pache) [RHEL-5623] - selftest: vm: remove deleted local_config.* from .gitignore (Nico Pache) [RHEL-5623] - Kselftests: remove support of libhugetlbfs from kselftests (Nico Pache) [RHEL-5623] - selftests/vm: use top_srcdir instead of recomputing relative paths (Nico Pache) [RHEL-5623] - selftests/vm: skip 128TBswitch on unsupported arch (Nico Pache) [RHEL-5623] - selftests/vm: fix va_128TBswitch.sh permissions (Nico Pache) [RHEL-5623] - selftests/vm: add protection_keys tests to run_vmtests (Nico Pache) [RHEL-5623] - selftests/vm: only run 128TBswitch with 5-level paging (Nico Pache) [RHEL-5623] - userfaultfd: selftests: infinite loop in faulting_process (Nico Pache) [RHEL-5623] - userfaultfd/selftests: Fix typo in comment (Nico Pache) [RHEL-5623] - selftests: vm: Fix resource leak when return error (Nico Pache) [RHEL-5623] - selftests: vm: add the "settings" file with timeout variable (Nico Pache) [RHEL-5623] - selftests: vm: add "test_hmm.sh" to TEST_FILES (Nico Pache) [RHEL-5623] - selftests: vm: check numa_available() before operating "merge_across_nodes" in ksm_tests (Nico Pache) [RHEL-5623] - selftests: vm: add migration to the .gitignore (Nico Pache) [RHEL-5623] - selftests/vm/pkeys: fix typo in comment (Nico Pache) [RHEL-5623] - userfaultfd/selftests: use swap() instead of open coding it (Nico Pache) [RHEL-5623] - selftests: vm: fix shellcheck warnings in run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests: vm: refactor run_vmtests.sh to reduce boilerplate (Nico Pache) [RHEL-5623] - selftests: vm: add test for Soft-Dirty PTE bit (Nico Pache) [RHEL-5623] - selftests: vm: bring common functions to a new file (Nico Pache) [RHEL-5623] - mm: add selftests for migration entries (Nico Pache) [RHEL-5623] - selftest/vm: add skip support to mremap_test (Nico Pache) [RHEL-5623] - selftest/vm: support xfail in mremap_test (Nico Pache) [RHEL-5623] - selftest/vm: verify remap destination address in mremap_test (Nico Pache) [RHEL-5623] - selftest/vm: verify mmap addr in mremap_test (Nico Pache) [RHEL-5623] - selftests: kselftest framework: provide "finished" helper (Nico Pache) [RHEL-5623] - selftest/vm: add helpers to detect PAGE_SIZE and PAGE_SHIFT (Nico Pache) [RHEL-5623] - selftest/vm: add util.h and and move helper functions there (Nico Pache) [RHEL-5623] - selftests: vm: remove dependecy from internal kernel macros (Nico Pache) [RHEL-5623] - selftests: vm: Add the uapi headers include variable (Nico Pache) [RHEL-5623] - selftests/vm/transhuge-stress: Support file-backed PMD folios (Nico Pache) [RHEL-5623] - selftests, x86: fix how check_cc.sh is being invoked (Nico Pache) [RHEL-5623] - selftests: vm: fix clang build error multiple output files (Nico Pache) [RHEL-5623] - kselftest/vm: fix tests build with old libc (Nico Pache) [RHEL-5623] - selftest/vm: fix map_fixed_noreplace test failure (Nico Pache) [RHEL-5623] - kselftest/vm: revert "tools/testing/selftests/vm/userfaultfd.c: use swap() to make code cleaner" (Nico Pache) [RHEL-5623] - selftests/vm: make charge_reserved_hugetlb.sh work with existing cgroup setting (Nico Pache) [RHEL-5623] - tools/testing/selftests/vm/userfaultfd.c: use swap() to make code cleaner (Nico Pache) [RHEL-5623] - selftests/vm: remove ARRAY_SIZE define from individual tests (Nico Pache) [RHEL-5623] - selftests: vm: add KSM huge pages merging time test (Nico Pache) [RHEL-5623] - selftest/vm: fix ksm selftest to run with different NUMA topologies (Nico Pache) [RHEL-5623] - selftests/vm/transhuge-stress: fix ram size thinko (Nico Pache) [RHEL-5623] - selftests: vm: add COW time test for KSM pages (Nico Pache) [RHEL-5623] - selftests: vm: add KSM merging time test (Nico Pache) [RHEL-5623] - mm: KSM: fix data type (Nico Pache) [RHEL-5623] - selftests: vm: add KSM merging across nodes test (Nico Pache) [RHEL-5623] - selftests: vm: add KSM zero page merging test (Nico Pache) [RHEL-5623] - selftests: vm: add KSM unmerge test (Nico Pache) [RHEL-5623] - selftests: vm: add KSM merge test (Nico Pache) [RHEL-5623] - selftests: Fix spelling mistake "cann't" -> "cannot" (Nico Pache) [RHEL-5623] - selftests/vm: use kselftest skip code for skipped tests (Nico Pache) [RHEL-5623] - selftest/mremap_test: avoid crash with static build (Nico Pache) [RHEL-5623] - selftest/mremap_test: update the test to handle pagesize other than 4K (Nico Pache) [RHEL-5623] - selftests/vm/pkeys: exercise x86 XSAVE init state (Nico Pache) [RHEL-5623] - selftests/vm/pkeys: refill shadow register after implicit kernel write (Nico Pache) [RHEL-5623] - selftests/vm/pkeys: handle negative sys_pkey_alloc() return code (Nico Pache) [RHEL-5623] - vm/test_vmalloc.sh: adapt for updated driver interface (Nico Pache) [RHEL-5623] - tool: selftests: fix spelling typo of 'writting' (Nico Pache) [RHEL-5623] - userfaultfd/selftests: hint the test runner on required privilege (Nico Pache) [RHEL-5623] - userfaultfd/selftests: fix retval check for userfaultfd_open() (Nico Pache) [RHEL-5623] - userfaultfd/selftests: always dump something in modes (Nico Pache) [RHEL-5623] - userfaultfd: selftests: make __{s,u}64 format specifiers portable (Nico Pache) [RHEL-5623] - tools: Avoid comma separated statements (Nico Pache) [RHEL-5623] - kselftests: vm: add mremap tests (Nico Pache) [RHEL-5623] - Revert "selftests/vm: enable running select groups of tests" (Nico Pache) [RHEL-5623]- cgroup/rstat: Optimize cgroup_rstat_updated_list() (Waiman Long) [RHEL-18154] - cgroup/rstat: Reduce cpu_lock hold time in cgroup_rstat_flush_locked() (Waiman Long) [RHEL-18154] - cgroup: use irqsave in cgroup_rstat_flush_locked(). (Waiman Long) [RHEL-18154] - cgroup: fix spelling mistakes (Waiman Long) [RHEL-18154] - s390/ipl: add missing intersection check to ipl_report handling (Tobias Huschle) [RHEL-24612] - drm/amdgpu: Fix potential fence use-after-free v2 (Michel Dänzer) [RHEL-22504] {CVE-2023-51042} - sched/fair: Don't balance task to its current running CPU (Luis Claudio R. Goncalves) [RHEL-8854] - md: partially revert "md/raid6: use valid sector values to determine if an I/O should wait on the reshape" (Benjamin Marzinski) [RHEL-24518] - blk-mq: fix IO hang from sbitmap wakeup race (Ming Lei) [RHEL-21289] - sfc: introduce shutdown entry point in efx pci driver (Izabela Bakollari) [RHEL-11016] - KVM: arm64: vgic-its: Avoid potential UAF in LPI translation cache (Sebastian Ott) [RHEL-5178] - efi: libstub: ensure allocated memory to be executable (Lenny Szubowicz) [RHEL-24852] - efi: libstub: declare DXE services table (Lenny Szubowicz) [RHEL-24852] - efi/libstub/x86: Avoid overflowing code32_start on PE entry (Lenny Szubowicz) [RHEL-24852] - RDMA/efa: Fix wrong resources deallocation order (Izabela Bakollari) [RHEL-18229] - RDMA/efa: Add RDMA write HW statistics counters (Izabela Bakollari) [RHEL-18229] - RDMA/efa: Fix unsupported page sizes in device (Izabela Bakollari) [RHEL-18229] - RDMA/efa: Add rdma write capability to device caps (Izabela Bakollari) [RHEL-18229] - RDMA/efa: Add data polling capability feature bit (Izabela Bakollari) [RHEL-18229] - APEI: GHES: correctly return NULL for ghes_get_devices() (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Make ghes_edac a proper module (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Prepare to make ghes_edac a proper module (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Add a notifier for reporting memory errors (Aristeu Rozanski) [RHEL-1603] - efi/cper: Export several helpers for ghes_edac to use (Aristeu Rozanski) [RHEL-1603] - ACPI: APEI: rename ghes_init() with an "acpi_" prefix (Aristeu Rozanski) [RHEL-1603] - ACPI: APEI: explicit init of HEST and GHES in apci_init() (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Clear scanned data on unload (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Fix NULL pointer dereference in ghes_edac_register() (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Scan the system once on driver init (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Remove unused members of struct ghes_edac_pvt, rename it to ghes_pvt (Aristeu Rozanski) [RHEL-1603] - EDAC: Introduce an mci_for_each_dimm() iterator (Aristeu Rozanski) [RHEL-1603] - EDAC: Remove EDAC_DIMM_OFF() macro (Aristeu Rozanski) [RHEL-1603] - r8169: add handling DASH when DASH is disabled (Izabela Bakollari) [RHEL-6505] - r8169: remove rtl_wol_shutdown_quirk() (Izabela Bakollari) [RHEL-6505] - r8169: improve driver unload and system shutdown behavior on DASH-enabled systems (Izabela Bakollari) [RHEL-6505] - r8169: fix dmar pte write access is not set error (Izabela Bakollari) [RHEL-6505] - r8169: move rtl_wol_enable_rx() and rtl_prepare_power_down() (Izabela Bakollari) [RHEL-6505] - r8169: prevent potential deadlock in rtl8169_close (Izabela Bakollari) [RHEL-6505] - r8169: fix deadlock on RTL8125 in jumbo mtu mode (Izabela Bakollari) [RHEL-6505] - r8169: fix network lost after resume on DASH systems (Izabela Bakollari) [RHEL-6505] - r8169: respect userspace disabling IFF_MULTICAST (Izabela Bakollari) [RHEL-6505] - r8169: fix the KCSAN reported data race in rtl_rx while reading desc->opts1 (Izabela Bakollari) [RHEL-6505] - r8169: fix the KCSAN reported data-race in rtl_tx while reading TxDescArray[entry].opts1 (Izabela Bakollari) [RHEL-6505] - r8169: fix the KCSAN reported data-race in rtl_tx() while reading tp->cur_tx (Izabela Bakollari) [RHEL-6505] - r8169: fix rare issue with broken rx after link-down on RTL8125 (Izabela Bakollari) [RHEL-6505] - r8169: check for PCI read error in probe (Izabela Bakollari) [RHEL-6505] - r8169: fix RTL8168H and RTL8107E rx crc error (Izabela Bakollari) [RHEL-6505] - r8169: reset bus if NIC isn't accessible after tx timeout (Izabela Bakollari) [RHEL-6505] - r8169: disable ASPM in case of tx timeout (Izabela Bakollari) [RHEL-6505] - r8169: use tp_to_dev instead of open code (Izabela Bakollari) [RHEL-6505] - r8169: add rtl_disable_rxdvgate() (Izabela Bakollari) [RHEL-6505] - r8169: remove not needed net_ratelimit() check (Izabela Bakollari) [RHEL-6505] - r8169: remove useless PCI region size check (Izabela Bakollari) [RHEL-6505] - Bluetooth: hci_sync: Fix not processing all entries on cmd_sync_work (David Marlin) [RHEL-23781] - Bluetooth: hci_core: Fix unbalanced unlock in set_device_flags() (David Marlin) [RHEL-23781] - Bluetooth: Fix not checking MGMT cmd pending queue (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix not using conn_timeout (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix hci_update_accept_list_sync (David Marlin) [RHEL-23781] - Bluetooth: assign len after null check (David Marlin) [RHEL-23781] - Bluetooth: Fix bt_skb_sendmmsg not allocating partial chunks (David Marlin) [RHEL-23781] - Bluetooth: fix data races in smp_unregister(), smp_del_chan() (David Marlin) [RHEL-23781] - Bluetooth: hci_core: Fix leaking sent_cmd skb (David Marlin) [RHEL-23781] - Bluetooth: hci_sock: fix endian bug in hci_sock_setsockopt() (David Marlin) [RHEL-23781] - Bluetooth: L2CAP: uninitialized variables in l2cap_sock_setsockopt() (David Marlin) [RHEL-23781] - Bluetooth: btqca: sequential validation (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Rework hci_inquiry_result_with_rssi_evt (David Marlin) [RHEL-23781] - Bluetooth: btbcm: disable read tx power for MacBook Air 8,1 and 8,2 (David Marlin) [RHEL-23781] - Bluetooth: hci_qca: Fix NULL vs IS_ERR_OR_NULL check in qca_serdev_probe (David Marlin) [RHEL-23781] - Bluetooth: hci_bcm: Check for error irq (David Marlin) [RHEL-23781] - Bluetooth: MGMT: Fix spelling mistake "simultanous" -> "simultaneous" (David Marlin) [RHEL-23781] - Bluetooth: vhci: Set HCI_QUIRK_VALID_LE_STATES (David Marlin) [RHEL-23781] - Bluetooth: MGMT: Fix LE simultaneous roles UUID if not supported (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Add check simultaneous roles support (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Wait for proper events when connecting LE (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Add support for waiting specific LE subevents (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Add hci_le_create_conn_sync (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use skb_pull_data when processing inquiry results (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Push sync command cancellation to workqueue (David Marlin) [RHEL-23781] - Bluetooth: hci_qca: Stop IBS timer during BT OFF (David Marlin) [RHEL-23781] - Bluetooth: btintel: Add missing quirks and msft ext for legacy bootloader (David Marlin) [RHEL-23781] - Bluetooth: L2CAP: Fix using wrong mode (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix not always pausing advertising when necessary (David Marlin) [RHEL-23781] - Bluetooth: mgmt: Make use of mgmt_send_event_skb in MGMT_EV_DEVICE_CONNECTED (David Marlin) [RHEL-23781] - Bluetooth: mgmt: Make use of mgmt_send_event_skb in MGMT_EV_DEVICE_FOUND (David Marlin) [RHEL-23781] - Bluetooth: mgmt: Introduce mgmt_alloc_skb and mgmt_send_event_skb (David Marlin) [RHEL-23781] - Bluetooth: btusb: Return error code when getting patch status failed (David Marlin) [RHEL-23781] - Bluetooth: btusb: Handle download_firmware failure cases (David Marlin) [RHEL-23781] - Bluetooth: msft: Fix compilation when CONFIG_BT_MSFTEXT is not set (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Set Privacy Mode when updating the resolving list (David Marlin) [RHEL-23781] - Bluetooth: Introduce HCI_CONN_FLAG_DEVICE_PRIVACY device flag (David Marlin) [RHEL-23781] - Bluetooth: btusb: Add support for queuing during polling interval (David Marlin) [RHEL-23781] - Bluetooth: hci_core: Rework hci_conn_params flags (David Marlin) [RHEL-23781] - Bluetooth: MGMT: Use hci_dev_test_and_{set,clear}_flag (David Marlin) [RHEL-23781] - Bluetooth: btbcm: disable read tx power for some Macs with the T2 Security chip (David Marlin) [RHEL-23781] - Bluetooth: add quirk disabling LE Read Transmit Power (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use of a function table to handle Command Status (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use of a function table to handle Command Complete (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use of a function table to handle LE subevents (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use of a function table to handle HCI events (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse LE Direct Advertising Report event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse LE Ext Advertising Report event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse LE Advertising Report event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse LE Metaevents (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Extended Inquiry Result event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Inquiry Result with RSSI event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Inquiry Result event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Number of Complete Packets event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Command Complete event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse BR/EDR events (David Marlin) [RHEL-23781] - Bluetooth: btusb: Cancel sync commands for certain URB errors (David Marlin) [RHEL-23781] - Bluetooth: hci_core: Cancel sync command if sending a frame failed (David Marlin) [RHEL-23781] - Bluetooth: Add hci_cmd_sync_cancel to public API (David Marlin) [RHEL-23781] - Bluetooth: Reset more state when cancelling a sync command (David Marlin) [RHEL-23781] - Bluetooth: Limit duration of Remote Name Resolve (David Marlin) [RHEL-23781] - Bluetooth: Send device found event on name resolve failure (David Marlin) [RHEL-23781] - Bluetooth: HCI: Fix definition of hci_rp_delete_stored_link_key (David Marlin) [RHEL-23781] - Bluetooth: HCI: Fix definition of hci_rp_read_stored_link_key (David Marlin) [RHEL-23781] - Bluetooth: refactor malicious adv data check (David Marlin) [RHEL-23781] - Bluetooth: btusb: Add one more Bluetooth part for the Realtek RTL8852AE (David Marlin) [RHEL-23781] - Bluetooth: btusb: enable Mediatek to support AOSP extension (David Marlin) [RHEL-23781] - Bluetooth: Attempt to clear HCI_LE_ADV on adv set terminated error event (David Marlin) [RHEL-23781] - Bluetooth: Ignore HCI_ERROR_CANCELLED_BY_HOST on adv set terminated event (David Marlin) [RHEL-23781] - Bluetooth: hci_request: Remove bg_scan_update work (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_CONNECTABLE to use cmd_sync (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_DISCOVERABLE to use cmd_sync (David Marlin) [RHEL-23781] - Bluetooth: btmrvl_main: repair a non-kernel-doc comment (David Marlin) [RHEL-23781] - Bluetooth: Don't initialize msft/aosp when using user channel (David Marlin) [RHEL-23781] - Bluetooth: fix uninitialized variables notify_evt (David Marlin) [RHEL-23781] - Bluetooth: stop proccessing malicious adv data (David Marlin) [RHEL-23781] - Bluetooth: hci_h4: Fix padding calculation error within h4_recv_buf() (David Marlin) [RHEL-23781] - Bluetooth: aosp: Support AOSP Bluetooth Quality Report (David Marlin) [RHEL-23781] - Bluetooth: Add struct of reading AOSP vendor capabilities (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix not setting adv set duration (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix missing static warnings (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Rework hci_suspend_notifier (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Rework init stages (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SSP (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert adv_expire (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_ADVERTISING (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_PHY_CONFIGURATION (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_LOCAL_NAME (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_READ_LOCAL_OOB_EXT_DATA (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_READ_LOCAL_OOB_DATA (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_LE (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_GET_CLOCK_INFO (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_SECURE_CONN (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_GET_CONN_INFO (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Enable synch'd set_bredr (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_FAST_CONNECTABLE (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_START_DISCOVERY (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_SET_POWERED (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Rework background scan (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Enable advertising when LL privacy is enabled (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Make use of hci_cmd_sync_queue set 3 (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Make use of hci_cmd_sync_queue set 2 (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Make use of hci_cmd_sync_queue set 1 (David Marlin) [RHEL-23781] - Bluetooth: Add helper for serialized HCI command execution (David Marlin) [RHEL-23781] - Bluetooth: Fix removing adv when processing cmd complete (David Marlin) [RHEL-23781] - Bluetooth: hci_bcm: Remove duplicated entry in OF table (David Marlin) [RHEL-23781] - Bluetooth: bfusb: fix division by zero in send path (David Marlin) [RHEL-23781] - Bluetooth: cmtp: fix possible panic when cmtp_init_sockets() fails (David Marlin) [RHEL-23781] - Bluetooth: vhci: Fix checking of msft_opcode (David Marlin) [RHEL-23781] - Bluetooth: btsdio: Do not bind to non-removable BCM4345 and BCM43455 (David Marlin) [RHEL-23781] - Bluetooth: vhci: Add support for setting msft_opcode and aosp_capable (David Marlin) [RHEL-23781] - Bluetooth: btusb: fix memory leak in btusb_mtk_submit_wmt_recv_urb() (David Marlin) [RHEL-23781] - Bluetooth: Fix memory leak of hci device (David Marlin) [RHEL-23781] - Bluetooth: btintel: Fix bdaddress comparison with garbage value (David Marlin) [RHEL-23781] - Bluetooth: Fix debugfs entry leak in hci_register_dev() (David Marlin) [RHEL-23781] - Bluetooth: L2CAP: Fix not initializing sk_peer_pid (David Marlin) [RHEL-23781] - Bluetooth: hci_sock: purge socket queues in the destruct() callback (David Marlin) [RHEL-23781] - Bluetooth: mgmt: Fix Experimental Feature Changed event (David Marlin) [RHEL-23781] - Bluetooth: hci_vhci: Fix to set the force_wakeup value (David Marlin) [RHEL-23781] - Bluetooth: Read codec capabilities only if supported (David Marlin) [RHEL-23781] - Bluetooth: Fix handling of SUSPEND_DISCONNECTING (David Marlin) [RHEL-23781] - Bluetooth: hci_vhci: Fix calling hci_{suspend,resume}_dev (David Marlin) [RHEL-23781] - skbuff: introduce skb_pull_data (David Marlin) [RHEL-23781] - Bluetooth: defer cleanup of resources in hci_unregister_dev() (David Marlin) [RHEL-23781] - serial: core: return early on unsupported ioctls (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - lib/hexdump: make print_hex_dump_bytes() a nop on !DEBUG builds (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix race condition in status line change on dead connections (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - Revert "tty: n_gsm: fix UAF in gsm_cleanup_mux" (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix the UAF caused by race condition in gsm_cleanup_mux (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix UAF in gsm_cleanup_mux (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: add parameter negotiation support (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: add parameters used with parameter negotiation (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: introduce macro for minimal unit size (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: name the debug bits (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: introduce gsm_control_command() function (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: replace use of gsm_read_ea() with gsm_read_ea_val() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: name gsm tty device minors (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: initialize more members at gsm_alloc_mux() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: add sanity check for gsm->receive in gsm_receive_buf() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix flow control handling in tx path (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix resource allocation order in gsm_activate_mux() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix deadlock and link starvation in outgoing data path (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix race condition in gsmld_write() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix non flow control frames during mux flow off (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix missing timer to handle stalled links (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong queuing behavior in gsm_dlci_data_output() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix tty registration before control channel open (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix user open not possible at responder until initiator open (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Debug output allocation must use GFP_ATOMIC (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Fix packet data hex dump output (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix buffer over-read in gsm_dlci_data() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix sometimes uninitialized warning in gsm_dlci_modem_output() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix software flow control handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix invalid use of MSC in advanced option (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix broken virtual tty handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix missing update of modem controls after DLCI open (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix reset fifo race condition (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix missing tty wakeup in convergence layer type 2 (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong signal octets encoding in MSC (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong command frame length field encoding (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong command retry handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix missing explicit ldisc flush (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong DLCI release order (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix insufficient txframe size (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix frame reception handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong signal octet encoding in convergence layer type 2 (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix mux cleanup after unregister tty device (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix decoupled mux resource (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix restart handling via CLD command (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix deadlock in gsmtty_open() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong modem processing in convergence layer type 2 (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong tty control line for flow control (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix NULL pointer access due to DLCI release (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix encoding of command/response bit (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix SW flow control encoding/handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove tty parameter from mxser_receive_chars_new() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: don't throttle manually (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: make mxser_port::ldisc_stop_rx a bool (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Don't ignore write return value in gsmld_output() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: clean up indenting in gsm_queue() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Save dlci address open status when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Modify gsmtty driver register method when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Delete gsmtty open SABM frame when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Modify CR,PF bit printk info when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Modify CR,PF bit when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: stop using alloc_tty_driver (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: don't store semi-state into tty drivers (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - hvsi: don't panic on tty_register_driver failure (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: switch rs_table to a single state (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: expand "custom" (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: use memset to zero serial_state (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: remove serial_* strings (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop mxser_port::custom_divisor (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop mxser_port::baud_base (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove unused mxser_port::stop_rx (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: don't allocate MXSER_PORTS + 1 (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove cnt from mxser_receive_chars (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_GETMSTATUS ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_GETDATACOUNT ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_CHKPORTENABLE ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_ASPP_LSTATUS ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_ASPP_MON and friends (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_SET_BAUD_METHOD ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_GET_MAJOR deprecated ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop unused MOXA_DIAGNOSE macro (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop UART_MCR_AFE and UART_LSR_SPECIAL defines (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove else from LSR bits checks (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: extract mxser_receive_chars_old (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: extract mxser_receive_chars_new (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: simplify mxser_interrupt and drop mxser_board::vector_mask (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: extract port ISR (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: cleanup LSR handling in mxser_receive_chars (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove nonsense from ISR (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop constant board::uart_type (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: introduce enum mxser_must_hwid (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: rename mxser_board::chip_flag to must_hwid (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: rename CheckIsMoxaMust to mxser_get_must_hwid (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: cleanup Gpci_uart_info struct (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: integrate mxser.h into .c (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop ISA support (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: use goto-failpaths in gsm_init (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: mxser: drop low-latency workaround (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: check error while registering tty devices (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: mxser: fix TIOCSSERIAL jiffies conversions (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm, remove duplicates of parameters (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: do not check tty_unregister_driver's return value (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: nozomi, remove init/exit messages (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty_port: drop last traces of low_latency (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Demote obvious abuse of kernel-doc and supply other missing docss (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm, eliminate indirection for gsm->{output,error}() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Fix bogus i++ in gsm_data_kick (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Remove unnecessary test in gsm_print_packet() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Fix waking up upper tty layer when room available (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Fix SOF skipping (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Improve debug output (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: switch constipated to bool (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: switch throttled to bool (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: switch dead to bool (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: introduce enum gsm_dlci_mode (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: introduce enum gsm_dlci_state (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: drop unneeded gsm_dlci->fifo field (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Replace zero-length array with flexible-array member (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: avoid recursive locking with async port hangup (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: add helpers to convert mux-num to/from tty-base (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - docs: serial: move it to the driver-api (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - docs: serial: convert docs to ReST and rename to *.rst (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Mark expected switch fall-throughs (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: Constify u8 and unsigned char usage (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Add copy_config() and gsm_config() to prepare for serdev (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: switch to ->[sg]et_serial() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: switch to ->[sg]et_serial() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty/serial_core: add ISO7816 infrastructure (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546}- mm/readahead: reintroduce legacy madvise_willneed behavior to force_page_cache_readahead (Rafael Aquini) [RHEL-22476] - PCI: Disable ATS for specific Intel IPU E2000 devices (Myron Stowe) [RHEL-21011] - PCI: Extract ATS disabling to a helper function (Myron Stowe) [RHEL-21011] - HID: intel-ish-hid: ipc: Disable and reenable ACPI GPE bit (Tony Camuso) [RHEL-14732] - HID: intel-ish-hid: ipc: Add Arrow Lake PCI device ID (Tony Camuso) [RHEL-14732] - HID: intel-ish-hid: Fix kernel panic during warm reset (Tony Camuso) [RHEL-14732] - net: usb: ax88179_178a: avoid failed operations when device is disconnected (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: avoid two consecutive device resets (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: fix failed operations during ax88179_reset (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: Bind only to vendor-specific interface (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: wol optimizations (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: move priv to driver_priv (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: restore state on resume (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: clean up pm calls (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: remove redundant init code (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: make drivers set the TSO limit not the GSO limit (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: add Allied Telesis AT-UMCs (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: add TSO feature (Jose Ignacio Tornos Martinez) [RHEL-17561] - ethernet: constify references to netdev->dev_addr in drivers (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: initialize local variables before use (Jose Ignacio Tornos Martinez) [RHEL-17561] - gve: Remove dependency on 4k page size. (Joshua Washington) [RHEL-22210] - gve: Add page size register to the register_page_list command. (Joshua Washington) [RHEL-22210] - gve: Remove obsolete checks that rely on page size. (Joshua Washington) [RHEL-22210] - gve: Deprecate adminq_pfn for pci revision 0x1. (Joshua Washington) [RHEL-22210] - gve: Perform adminq allocations through a dma_pool. (Joshua Washington) [RHEL-22210] - gve: add gve_features_check() (Joshua Washington) [RHEL-22210] - gve: Fixes for napi_poll when budget is 0 (Joshua Washington) [RHEL-22210] - gve: Do not fully free QPL pages on prefill errors (Joshua Washington) [RHEL-22210] - gve: Use size_add() in call to struct_size() (Joshua Washington) [RHEL-22210] - gve: fix frag_list chaining (Joshua Washington) [RHEL-22210] - gve: RX path for DQO-QPL (Joshua Washington) [RHEL-22210 RHEL-9878] - gve: Tx path for DQO-QPL (Joshua Washington) [RHEL-22210 RHEL-9878] - gve: Control path for DQO-QPL (Joshua Washington) [RHEL-22210 RHEL-9878] - gve: trivial spell fix Recive to Receive (Joshua Washington) [RHEL-22210] - gve: unify driver name usage (Joshua Washington) [RHEL-22210] - gve: Set default duplex configuration to full (Joshua Washington) [RHEL-22210] - gve: Remove the code of clearing PBA bit (Joshua Washington) [RHEL-22210] - gve: Secure enough bytes in the first TX desc for all TCP pkts (Joshua Washington) [RHEL-22210] - gve: Cache link_speed value from device (Joshua Washington) [RHEL-22210] - gve: Add AF_XDP zero-copy support for GQI-QPL format (Joshua Washington) [RHEL-22210] - gve: Add XDP REDIRECT support for GQI-QPL format (Joshua Washington) [RHEL-22210] - gve: Add XDP DROP and TX support for GQI-QPL format (Joshua Washington) [RHEL-22210] - gve: Changes to add new TX queues (Joshua Washington) [RHEL-22210] - gve: XDP support GQI-QPL: helper function changes (Joshua Washington) [RHEL-22210] - gve: Fix gve interrupt names (Joshua Washington) [RHEL-22210] - gve: Handle alternate miss completions (Joshua Washington) [RHEL-22210] - gve: Adding a new AdminQ command to verify driver (Joshua Washington) [RHEL-22210] - gve: Fix error return code in gve_prefill_rx_pages() (Joshua Washington) [RHEL-22210] - gve: Reduce alloc and copy costs in the GQ rx path (Joshua Washington) [RHEL-22210] - google/gve:fix repeated words in comments (Joshua Washington) [RHEL-22210] - gve: Fix spelling mistake "droping" -> "dropping" (Joshua Washington) [RHEL-22210] - gve: enhance no queue page list detection (Joshua Washington) [RHEL-22210] - net: Google gve: Remove dma_wmb() before ringing doorbell (Joshua Washington) [RHEL-22210]- tcp: Dump bound-only sockets in inet_diag. (Guillaume Nault) [RHEL-6113] - rh_messages.h: update driver and device lists (Scott Weaver) [RHEL-22126] - vmstat: allow_direct_reclaim should use zone_page_state_snapshot (Marcelo Tosatti) [RHEL-22138] - rbd: don't move requests to the running list on errors (Ilya Dryomov) [RHEL-21941] - drm/vmwgfx: Fix possible null pointer derefence with invalid contexts (Jocelyn Falempe) [RHEL-3179] {CVE-2022-38096} - atm: Fix Use-After-Free in do_vcc_ioctl (Guillaume Nault) [RHEL-21179] {CVE-2023-51780} - perf/x86/intel/uncore: Factor out topology_gidnid_map() (Michael Petlan) [RHEL-22189] - perf/x86/intel/uncore: Fix NULL pointer dereference issue in upi_fill_topology() (Michael Petlan) [RHEL-22189] - KVM: x86: Constrain guest-supported xfeatures only at KVM_GET_XSAVE{2} (Bandan Das) [RHEL-7558] - x86/fpu: Allow caller to constrain xfeatures when copying to uabi buffer (Bandan Das) [RHEL-7558] - Bluetooth: Fix double free in hci_conn_cleanup (David Marlin) [RHEL-2555] {CVE-2023-28464} - Bluetooth: hci_sysfs: Fix attempting to call device_add multiple times (David Marlin) [RHEL-2555] - kobject: Fix slab-out-of-bounds in fill_kobj_path() (Waiman Long) [RHEL-20926] {CVE-2023-45863} - kobject: modify kobject_get_path() to take a const * (Waiman Long) [RHEL-20926] {CVE-2023-45863} - kobject: Remove docstring reference to kset (Waiman Long) [RHEL-20926] {CVE-2023-45863} - EDAC/amd64: Add support for AMD family 1Ah models 00h-1Fh and 40h-4Fh (Aristeu Rozanski) [RHEL-10031] - amd64: allow F0 and F6 registers to be missing (Aristeu Rozanski) [RHEL-10031] - hwmon: (k10temp) Add thermal support for AMD Family 1Ah-based models (Aristeu Rozanski) [RHEL-10031] - x86/amd_nb: Add PCI IDs for AMD Family 1Ah-based models (Aristeu Rozanski) [RHEL-10031] - nvmet-tcp: Fix the H2C expected PDU len calculation (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6536 CVE-2023-6535 CVE-2023-6356} - nvmet-tcp: remove boilerplate code (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6536 CVE-2023-6535 CVE-2023-6356} - nvmet-tcp: fix a crash in nvmet_req_complete() (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6536 CVE-2023-6535 CVE-2023-6356} - nvmet-tcp: Fix a kernel panic when host sends an invalid H2C PDU length (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6536 CVE-2023-6535 CVE-2023-6356} - ipv6: Remove extra counter pull before gc (Davide Caratti) [RHEL-21457] {CVE-2023-52340} - ipv6: remove max_size check inline with ipv4 (Davide Caratti) [RHEL-21457] {CVE-2023-52340} - net/dst: use a smaller percpu_counter batch for dst entries accounting (Davide Caratti) [RHEL-21457] {CVE-2023-52340} - net: add a route cache full diagnostic message (Davide Caratti) [RHEL-21457] {CVE-2023-52340} - x86/sev: Use the GHCB protocol when available for SNP CPUID requests (Bandan Das) [RHEL-16382] - x86/sev: Do not handle #VC for DR7 read/write (Bandan Das) [RHEL-16382] - Revert "x86/sev: Expose sev_es_ghcb_hv_call() for use by HyperV" (Bandan Das) [RHEL-16382] - x86/alternatives: Add cond_resched() to text_poke_bp_batch() (Waiman Long) [RHEL-15221] - x86/alternative: Fix race in try_get_desc() (Waiman Long) [RHEL-15221] - x86/alternatives: Mark text_poke_loc_init() static (Waiman Long) [RHEL-15221] - x86/int3: Ensure that poke_int3_handler() is not traced (Waiman Long) [RHEL-15221] - tools/mm: filter out timestamps for correct collation (Audra Mitchell) [RHEL-3821] - tools/vm/page_owner_sort.c: support sorting pid and time (Audra Mitchell) [RHEL-3821] - tools/vm/page_owner_sort.c: filter out unneeded line (Audra Mitchell) [RHEL-3821] - tools/vm/page_owner: use page_owner_sort in the use example (Audra Mitchell) [RHEL-3821] - mm/page_owner: remove free_ts from page_owner output (Audra Mitchell) [RHEL-3821] - xfs: up(ic_sema) if flushing data device fails (Andrey Albershteyn) [RHEL-8464] - xfs: reserve less log space when recovering log intent items (Andrey Albershteyn) [RHEL-8464] - xfs: fix an agbno overflow in __xfs_getfsmap_datadev (Andrey Albershteyn) [RHEL-8464] - xfs: fix agf_fllast when repairing an empty AGFL (Andrey Albershteyn) [RHEL-8464] - xfs: fix dqiterate thinko (Andrey Albershteyn) [RHEL-8464] - xfs: fix uninit warning in xfs_growfs_data (Andrey Albershteyn) [RHEL-8464] - xfs: fix xfs_btree_query_range callers to initialize btree rec fully (Andrey Albershteyn) [RHEL-8464] - xfs: validate fsmap offsets specified in the query keys (Andrey Albershteyn) [RHEL-8464] - xfs: fix logdev fsmap query result filtering (Andrey Albershteyn) [RHEL-8464] - xfs: clean up the rtbitmap fsmap backend (Andrey Albershteyn) [RHEL-8464] - xfs: fix integer overflows in the fsmap rtbitmap and logdev backends (Andrey Albershteyn) [RHEL-8464] - xfs: fix interval filtering in multi-step fsmap queries (Andrey Albershteyn) [RHEL-8464] - xfs: don't reverse order of items in bulk AIL insertion (Andrey Albershteyn) [RHEL-8464] - xfs: fix ag count overflow during growfs (Andrey Albershteyn) [RHEL-8464] - xfs: don't deplete the reserve pool when trying to shrink the fs (Andrey Albershteyn) [RHEL-8464] - xfs: fix agf/agfl verification on v4 filesystems (Andrey Albershteyn) [RHEL-8464] - xfs: set bnobt/cntbt numrecs correctly when formatting new AGs (Andrey Albershteyn) [RHEL-8464] - xfs: fix rm_offset flag handling in rmap keys (Andrey Albershteyn) [RHEL-8464] - xfs: make kobj_type structures constant (Andrey Albershteyn) [RHEL-8464] - xfs: allow setting full range of panic tags (Andrey Albershteyn) [RHEL-8464] - xfs: shut up -Wuninitialized in xfsaild_push (Andrey Albershteyn) [RHEL-8464] - xfs: use memcpy, not strncpy, to format the attr prefix during listxattr (Andrey Albershteyn) [RHEL-8464] - xfs: initialize the check_owner object fully (Andrey Albershteyn) [RHEL-8464] - xfs: fix uninitialized list head in struct xfs_refcount_recovery (Andrey Albershteyn) [RHEL-8464] - xfs: increase rename inode reservation (Andrey Albershteyn) [RHEL-8464] - xfs: remove xfs_setattr_time() declaration (Andrey Albershteyn) [RHEL-8464] - xfs: Fix false ENOSPC when performing direct write on a delalloc extent in cow fork (Andrey Albershteyn) [RHEL-8464] - xfs: check return codes when flushing block devices (Andrey Albershteyn) [RHEL-8464] - xfs: reduce the number of atomic when locking a buffer after lookup (Andrey Albershteyn) [RHEL-8464] - xfs: convert btree buffer log flags to unsigned. (Andrey Albershteyn) [RHEL-8464] - xfs: shutdown in intent recovery has non-intent items in the AIL (Andrey Albershteyn) [RHEL-8464] - xfs: aborting inodes on shutdown may need buffer lock (Andrey Albershteyn) [RHEL-8464] - xfs: only bother with sync_filesystem during readonly remount (Andrey Albershteyn) [RHEL-8464] - xfs: kill the XFS_IOC_{ALLOC,FREE}SP* ioctls (Andrey Albershteyn) [RHEL-8464] {CVE-2021-4155} - xfs: prevent a WARN_ONCE() in xfs_ioc_attr_list() (Andrey Albershteyn) [RHEL-8464] - xfs: only run COW extent recovery when there are no live extents (Andrey Albershteyn) [RHEL-8464] - xfs: move recovery needed state updates to xfs_log_mount_finish (Andrey Albershteyn) [RHEL-8464] - xfs: clear log incompat feature bits when the log is idle (Andrey Albershteyn) [RHEL-8464] - xfs: allow setting and clearing of log incompat feature flags (Andrey Albershteyn) [RHEL-8464] - xfs: remove all COW fork extents when remounting readonly (Andrey Albershteyn) [RHEL-8464] - xfs: replace snprintf in show functions with sysfs_emit (Andrey Albershteyn) [RHEL-8464] - xfs: reduce the size of nr_ops for refcount btree cursors (Andrey Albershteyn) [RHEL-8464] - xfs: rework attr2 feature and mount options (Andrey Albershteyn) [RHEL-8464] - xfs: sb verifier doesn't handle uncached sb buffer (Andrey Albershteyn) [RHEL-8464] - xfs: standardize inode number formatting in ftrace output (Andrey Albershteyn) [RHEL-8464] - xfs: make fsmap backend function key parameters const (Andrey Albershteyn) [RHEL-8464] - xfs: remove kmem_alloc_io() (Andrey Albershteyn) [RHEL-8464] - mm: Add kvrealloc() (Andrey Albershteyn) [RHEL-8464] - xfs: remove kmem_realloc() (Andrey Albershteyn) [RHEL-8464] - xfs: fix silly whitespace problems with kernel libxfs (Andrey Albershteyn) [RHEL-8464] - xfs: deprecate BMV_IF_NO_DMAPI_READ flag (Andrey Albershteyn) [RHEL-8464]- ida: Fix crash in ida_free when the bitmap is empty (Wander Lairson Costa) [RHEL-19681] {CVE-2023-6915} - mm: create a new system state and fix core_kernel_text() (Joel Savitz) [RHEL-5227] - redhat: rewrite genlog and support Y- tags (Jan Stancek) - Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d" (Nigel Croxon) [RHEL-22698] - Revert "x86/fpu/xstate: Fix PKRU covert channel" (Steve Best) [RHEL-22192] - net: tls, update curr on splice as well (Sabrina Dubroca) [RHEL-19065] {CVE-2024-0646} - smb: client: fix OOB in smbCalcSize() (Scott Mayhew) [RHEL-18990] {CVE-2023-6606} - smb: client: fix potential OOB in smb2_dump_detail() (Scott Mayhew) [RHEL-19144] {CVE-2023-6610} - smb: client: fix potential OOB in cifs_dump_detail() (Scott Mayhew) [RHEL-19144] {CVE-2023-6610} - ovl: skip stale entries in merge dir cache iteration (Miklos Szeredi) [RHEL-18076] - ovl: invalidate readdir cache on changes to dir with origin (Miklos Szeredi) [RHEL-18076] - ipv6: avoid atomic fragment on GSO packets (Hangbin Liu) [RHEL-22149] - ipv6: fix potential NULL deref in fib6_add() (Hangbin Liu) [RHEL-22149] - lockdep: Fix block chain corruption (Joel Savitz) [RHEL-5227] - futex: Don't include process MM in futex key on no-MMU (Joel Savitz) [RHEL-5227] - locking/rtmutex: Fix task->pi_waiters integrity (Joel Savitz) [RHEL-5227] - locking/rwsem: Add __always_inline annotation to __down_read_common() and inlined callers (Joel Savitz) [RHEL-5227] - locking/rwsem: Disable preemption in all down_write*() and up_write() code paths (Joel Savitz) [RHEL-5227] - mm: make generic arch_is_kernel_initmem_freed() do what it says (Joel Savitz) [RHEL-5227]- cgroup/cpuset: Inherit parent's load balance state in v2 (Waiman Long) [RHEL-12873] - cgroup/cpuset: Free DL BW in case can_attach() fails (Waiman Long) [RHEL-12873] - sched/deadline: Create DL BW alloc, free & check overflow interface (Waiman Long) [RHEL-12873] - cgroup/cpuset: Iterate only if DEADLINE tasks are present (Waiman Long) [RHEL-12873] - sched/cpuset: Keep track of SCHED_DEADLINE task in cpusets (Waiman Long) [RHEL-12873] - sched/cpuset: Bring back cpuset_mutex (Waiman Long) [RHEL-12873] - cgroup/cpuset: Rename functions dealing with DEADLINE accounting (Waiman Long) [RHEL-12873] - cgroup/cpuset: Skip task update if hotplug doesn't affect current cpuset (Waiman Long) [RHEL-12873] - cgroup/cpuset: Fix wrong check in update_parent_subparts_cpumask() (Waiman Long) [RHEL-12873] - cgroup/cpuset: Optimize cpuset_attach() on v2 (Waiman Long) [RHEL-12873] - cgroup/cpuset: Skip spread flags update on v2 (Waiman Long) [RHEL-12873] - kselftest/cgroup: Add cpuset v2 partition root state test (Waiman Long) [RHEL-12873] - cgroup/cpuset: Update description of cpuset.cpus.partition in cgroup-v2.rst (Waiman Long) [RHEL-12873] - cgroup/cpuset: Make partition invalid if cpumask change violates exclusivity rule (Waiman Long) [RHEL-12873] - cgroup/cpuset: Relocate a code block in validate_change() (Waiman Long) [RHEL-12873] - cgroup/cpuset: Show invalid partition reason string (Waiman Long) [RHEL-12873] - cgroup/cpuset: Add a new isolated cpus.partition type (Waiman Long) [RHEL-12873] - cgroup/cpuset: Relax constraints to partition & cpus changes (Waiman Long) [RHEL-12873] - cgroup/cpuset: Allow no-task partition to have empty cpuset.cpus.effective (Waiman Long) [RHEL-12873] - cgroup/cpuset: Miscellaneous cleanups & add helper functions (Waiman Long) [RHEL-12873] - cgroup: cleanup comments (Waiman Long) [RHEL-12873] - cgroup/cpuset: Avoid memory migration when nodemasks match (Waiman Long) [RHEL-12873] - cgroup/cpuset: Enable memory migration for cpuset v2 (Waiman Long) [RHEL-12873] - cgroup/cpuset: Enable event notification when partition state changes (Waiman Long) [RHEL-12873] - doc/admin-guide/cgroup-v2: use tables (Waiman Long) [RHEL-12873] - docs/admin-guide: cgroup-v2: fix cgroup.type rendering (Waiman Long) [RHEL-12873] - docs: fix memory.low description in cgroup-v2.rst (Waiman Long) [RHEL-12873] - cgroup/cpuset: Revert "Reduce cpuset_rwsem writer latency" (Waiman Long) [RHEL-12873] - selftests/bpf: Workaround verification failure for fexit_bpf2bpf/func_replace_return_code (Artem Savkov) [RHEL-17256] - mISDN: fix use-after-free bugs in l1oip timer handlers (Ricardo Robaina) [RHEL-2553 RHEL-2690] {CVE-2022-3565} - firmware: dmi-sysfs: make pr_info messages rate limited (Prarit Bhargava) [RHEL-21096] - xfs: short circuit xfs_growfs_data_private() if delta is zero (Andrey Albershteyn) [RHEL-19431] - net-sysfs: add check for netdevice being present to speed_show (Michal Schmidt) [RHEL-16007] - drm/mgag200: Fix gamma lut not initialized for G200ER, G200EV, G200SE (Jocelyn Falempe) [RHEL-21054] - netfilter: nf_tables: bail out on mismatching dynset and set expressions (Florian Westphal) [RHEL-19014] {CVE-2023-6622} - netfilter: nft_set_pipapo: skip inactive elements during set walk (Florian Westphal) [RHEL-19721] {CVE-2023-6817} - ipv4: igmp: fix refcnt uaf issue when receiving igmp query packet (Hangbin Liu) [RHEL-19794] {CVE-2023-6932} - s390/paes: fix PKEY_TYPE_EP11_AES handling for secure keyblobs (Tobias Huschle) [RHEL-22160] - s390/dasd: protect device queue against concurrent access (Tobias Huschle) [RHEL-22161] - s390/cmma: fix handling of swapper_pg_dir and invalid_pg_dir (Tobias Huschle) [RHEL-16317] - s390/cmma: fix detection of DAT pages (Tobias Huschle) [RHEL-16317] - s390/mm: add missing arch_set_page_dat() call to gmap allocations (Tobias Huschle) [RHEL-16317] - s390/mm: add missing arch_set_page_dat() call to vmem_crst_alloc() (Tobias Huschle) [RHEL-16317] - s390/cmma: fix initial kernel address space page table walk (Tobias Huschle) [RHEL-16317] - s390/vfio-ap: do not reset queue removed from host config (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: reset queues associated with adapter for queue unbound from driver (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: reset queues filtered from the guest's AP config (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: let on_scan_complete() callback filter matrix and update guest's APCB (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: loop over the shadow APCB when filtering guest's AP configuration (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: always filter entire AP matrix (Cédric Le Goater) [RHEL-19575] - KVM: s390: vsie: Fix STFLE interpretive execution identification (Cédric Le Goater) [RHEL-19575] - KVM: s390: vsie: fix race during shadow creation (Cédric Le Goater) [RHEL-19575] - KVM: s390: fix cc for successful PQAP (Cédric Le Goater) [RHEL-19575] - KVM: s390: fix setting of fpc register (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: fix sysfs status attribute for AP queue devices (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: unpin pages on gisc registration failure (Cédric Le Goater) [RHEL-19575] - iommu/iova: Manage the depot list size (Jerry Snitselaar) [RHEL-10100] - iommu/iova: Make the rcache depot scale better (Jerry Snitselaar) [RHEL-10100] - iommu/iova: Optimize iova_magazine_alloc() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove two WARN_ON in domain_context_mapping_one() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Handle the failure case of dmar_reenable_qi() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON in dmar_insert_dev_scope() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove a useless BUG_ON(dev->is_virtfn) (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON in map/unmap() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON when domain->pgd is NULL (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON in handling iotlb cache invalidation (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON on checking valid pfn range (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Make size of operands same in bitwise operations (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Do not use GFP_ATOMIC when not needed (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove PASID supervisor request support (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Use non-privileged mode for all PASIDs (Jerry Snitselaar) [RHEL-10100] - iommu: Optimise PCI SAC address trick (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Use page mode macros in fetch_pte() (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Allocate IOMMU irqs using numa locality info (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Allocate page table using numa locality info (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Add a length limitation for the ivrs_acpihid command-line parameter (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Fix ill-formed ivrs_ioapic, ivrs_hpet and ivrs_acpihid options (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Do not allocate io_pgtable_ops for passthrough domain (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Fix error handling for pdev_pri_ats_enable() (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Fix compile error for unused function (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Improving Interrupt Remapping Table Invalidation (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Do not Invalidate IRT when IRTE caching is disabled (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Introduce Disable IRTE Caching Support (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Change macro for IOMMU control register bit shift to decimal value (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Remove the unused struct amd_ir_data.ref (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Switch amd_iommu_update_ga() to use modify_irte_ga() (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Handle GALog overflows (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Process all IVHDs before enabling IOMMU features (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Introduce global variable for storing common EFR and EFR2 (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Introduce Support for Extended Feature 2 Register (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Avoid memory allocation in iommu_suspend() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Fix to flush cache of PASID directory table (Jerry Snitselaar) [RHEL-10100] - of/address: Return an error when no valid dma-ranges are found (Jerry Snitselaar) [RHEL-10100] - iommu/arm-smmu-qcom: Fix mask extraction for bootloader programmed SMRs (Jerry Snitselaar) [RHEL-10100] - iommu/arm-smmu-qcom: Read back stream mappings (Jerry Snitselaar) [RHEL-10100] - of: Fix "dma-ranges" handling for bus controllers (Jerry Snitselaar) [RHEL-10100] - swiotlb: move slot allocation explanation comment where it belongs (Jerry Snitselaar) [RHEL-10100] - swiotlb: fix debugfs reporting of reserved memory pools (Jerry Snitselaar) [RHEL-10100] - iommu: fix MAX_ORDER usage in __iommu_dma_alloc_pages() (Jerry Snitselaar) [RHEL-1261] - swiotlb: use the calculated number of areas (Jerry Snitselaar) [RHEL-1261] - swiotlb: relocate PageHighMem test away from rmem_swiotlb_setup (Jerry Snitselaar) [RHEL-1261] - swiotlb: reduce the number of areas to match actual memory pool size (Jerry Snitselaar) [RHEL-1261] - swiotlb: always set the number of areas before allocating the pool (Jerry Snitselaar) [RHEL-1261] - swiotlb: clean up some coding style and minor issues (Jerry Snitselaar) [RHEL-1261] - iommu/amd: Fix DTE_IRQ_PHYS_ADDR_MASK macro (Jerry Snitselaar) [RHEL-1261] - iommu/amd/iommu_v2: Clear pasid state in free path (Jerry Snitselaar) [RHEL-14152] - iommu/amd/iommu_v2: Fix pasid_state refcount dec hit 0 warning on pasid unbind (Jerry Snitselaar) [RHEL-14152] - iommu/amd: Don't block updates to GATag if guest mode is on (Jerry Snitselaar) [RHEL-1261] - iommu/amd: Fix domain flush size when syncing iotlb (Jerry Snitselaar) [RHEL-1261] - iommu/amd: Fix "Guest Virtual APIC Table Root Pointer" configuration in IRTE (Jerry Snitselaar) [RHEL-1261] - iommu: Fix error unwind in iommu_group_alloc() (Jerry Snitselaar) [RHEL-1261] - net/mlx5e: Fix error code in mlx5e_tc_action_miss_mapping_get() (Amir Tzin) [RHEL-924] - net/mlx5: Fix fw tracer first block check (Amir Tzin) [RHEL-924] - net/mlx5e: fix a potential double-free in fs_udp_create_groups (Amir Tzin) [RHEL-924] - net/mlx5e: Fix slab-out-of-bounds in mlx5_query_nic_vport_mac_list() (Amir Tzin) [RHEL-924] - net/mlx5e: fix double free of encap_header (Amir Tzin) [RHEL-924] - Revert "net/mlx5e: fix double free of encap_header" (Amir Tzin) [RHEL-924] - Revert "net/mlx5e: fix double free of encap_header in update funcs" (Amir Tzin) [RHEL-924] - net/mlx5e: fix double free of encap_header in update funcs (Amir Tzin) [RHEL-924] - net/mlx5e: fix double free of encap_header (Amir Tzin) [RHEL-924] - net/mlx5e: Fix error codes in alloc_branch_attr() (Amir Tzin) [RHEL-924] - net/mlx5e: Track xmit submission to PTP WQ after populating metadata map (Amir Tzin) [RHEL-924] - net/mlx5e: Avoid referencing skb after free-ing in drop path of mlx5e_sq_xmit_wqe (Amir Tzin) [RHEL-924] - net/mlx5e: Correct snprintf truncation handling for fw_version buffer used by representors (Amir Tzin) [RHEL-924] - net/mlx5e: Correct snprintf truncation handling for fw_version buffer (Amir Tzin) [RHEL-924] - net/mlx5: Fix a NULL vs IS_ERR() check (Amir Tzin) [RHEL-924] - net/mlx5e: Check netdev pointer before checking its net ns (Amir Tzin) [RHEL-924] - net/mlx5e: TC, Don't offload post action rule if not supported (Amir Tzin) [RHEL-924] - net/mlx5e: Remove a useless function call (Amir Tzin) [RHEL-924] - net/mlx5e: Fix possible deadlock on mlx5e_tx_timeout_work (Amir Tzin) [RHEL-924] - net/mlx5: Increase size of irq name buffer (Amir Tzin) [RHEL-924] - net/mlx5e: Update doorbell for port timestamping CQ before the software counter (Amir Tzin) [RHEL-924] - net/mlx5e: Add recovery flow for tx devlink health reporter for unhealthy PTP SQ (Amir Tzin) [RHEL-924] - net/mlx5e: Make tx_port_ts logic resilient to out-of-order CQEs (Amir Tzin) [RHEL-924] - net/mlx5e: Check return value of snprintf writing to fw_version buffer for representors (Amir Tzin) [RHEL-924] - net/mlx5e: Check return value of snprintf writing to fw_version buffer (Amir Tzin) [RHEL-924] - net/mlx5e: Reduce the size of icosq_str (Amir Tzin) [RHEL-924] - net/mlx5e: Fix pedit endianness (Amir Tzin) [RHEL-924] - net/mlx5: Decouple PHC .adjtime and .adjphase implementations (Amir Tzin) [RHEL-924] - IB/mlx5: Fix init stage error handling to avoid double free of same QP and UAF (Amir Tzin) [RHEL-924] - IB/mlx5: Fix rdma counter binding for RAW QP (Amir Tzin) [RHEL-924] - net/mlx5e: Fix VF representors reporting zero counters to "ip -s" command (Amir Tzin) [RHEL-13397 RHEL-924] - net/mlx5e: Don't offload internal port if filter device is out device (Amir Tzin) [RHEL-924] - net/mlx5e: XDP, Fix XDP_REDIRECT mpwqe page fragment leaks on shutdown (Amir Tzin) [RHEL-924] - net/mlx5: Handle fw tracer change ownership event based on MTRC (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, fix peer entry ageing in LAG mode (Amir Tzin) [RHEL-924] - net/mlx5: E-switch, register event handler before arming the event (Amir Tzin) [RHEL-924] - net/mlx5e: Again mutually exclude RX-FCS and RX-port-timestamp (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix NULL string error (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix mutex unlocking on error flow for steering anchor creation (Amir Tzin) [RHEL-924] - net/mlx5: Free IRQ rmap and notifier on kernel shutdown (Amir Tzin) [RHEL-924] - net/mlx5: Free irqs only on shutdown callback (Amir Tzin) [RHEL-924] - net/mlx5: Improve naming of pci function vectors (Amir Tzin) [RHEL-924] - net/mlx5e: Clear mirred devices array if the rule is split (Amir Tzin) [RHEL-924] - net/mlx5: Dynamic cyclecounter shift calculation for PTP free running clock (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix trailing */ formatting in block comment (Amir Tzin) [RHEL-924] - net/mlx5: Use RMW accessors for changing LNKCTL (Amir Tzin) [RHEL-924] - net/mlx5: DR, Fix code indentation (Amir Tzin) [RHEL-924] - net/mlx5: Fix error message in mlx5_sf_dev_state_change_handler() (Amir Tzin) [RHEL-924] - net/mlx5e: Add capability check for vnic counters (Amir Tzin) [RHEL-924] - net/mlx5e: Expose catastrophic steering error counters (Amir Tzin) [RHEL-924] - net/mlx5: Skip clock update work when device is in error state (Amir Tzin) [RHEL-924] - net/mlx5: LAG, Check correct bucket when modifying LAG (Amir Tzin) [RHEL-924] - net/mlx5e: Unoffload post act rule when handling FIB events (Amir Tzin) [RHEL-924] - net/mlx5: Allow 0 for total host VFs (Amir Tzin) [RHEL-924] - net/mlx5: DR, Fix wrong allocation of modify hdr pattern (Amir Tzin) [RHEL-924] - net/mlx5e: TC, Fix internal port memory leak (Amir Tzin) [RHEL-924] - net/mlx5: Fix typo reminder -> remainder (Amir Tzin) [RHEL-924] - net/mlx5: fs_core: Skip the FTs in the same FS_TYPE_PRIO_CHAINS fs_prio (Amir Tzin) [RHEL-924] - net/mlx5: fs_core: Make find_closest_ft more generic (Amir Tzin) [RHEL-924] - net/mlx5e: kTLS, Fix protection domain in use syndrome when devlink reload (Amir Tzin) [RHEL-924] - net/mlx5e: Move representor neigh cleanup to profile cleanup_tx (Amir Tzin) [RHEL-924] - net/mlx5e: Fix crash moving to switchdev mode when ntuple offload is set (Amir Tzin) [RHEL-13501 RHEL-924] - net/mlx5e: Don't hold encap tbl lock if there is no encap action (Amir Tzin) [RHEL-924] - net/mlx5e: fix return value check in mlx5e_ipsec_remove_trailer() (Amir Tzin) [RHEL-924] - net/mlx5: fix potential memory leak in mlx5e_init_rep_rx (Amir Tzin) [RHEL-924] - net/mlx5: DR, fix memory leak in mlx5dr_cmd_create_reformat_ctx (Amir Tzin) [RHEL-924] - net/mlx5e: Check for NOT_READY flag state after locking (Amir Tzin) [RHEL-924] - net/mlx5: Register a unique thermal zone per device (Amir Tzin) [RHEL-924] - net/mlx5e: fix memory leak in mlx5e_ptp_open (Amir Tzin) [RHEL-924] - net/mlx5e: fix memory leak in mlx5e_fs_tt_redirect_any_create (Amir Tzin) [RHEL-924] - net/mlx5e: fix double free in mlx5e_destroy_flow_table (Amir Tzin) [RHEL-924] - net/mlx5: Fix reserved at offset in hca_cap register (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix Q-counters query in LAG mode (Amir Tzin) [RHEL-924] - RDMA/mlx5: Remove vport Q-counters dependency on normal Q-counters (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix Q-counters per vport allocation (Amir Tzin) [RHEL-924] - net/mlx5: Drain health before unregistering devlink (Amir Tzin) [RHEL-924] - net/mlx5: E-switch, Devcom, sync devcom events and devcom comp register (Amir Tzin) [RHEL-924] - eth: mlx5: avoid iterator use outside of a loop (Amir Tzin) [RHEL-924] - net/mlx5: Update op_mode to op_mod for port selection (Amir Tzin) [RHEL-924] - net/mlx5: E-Switch, Remove redundant dev arg from mlx5_esw_vport_alloc() (Amir Tzin) [RHEL-924] - Documentation: net/mlx5: Wrap notes in admonition blocks (Amir Tzin) [RHEL-924] - Documentation: net/mlx5: Use bullet and definition lists for vnic counters description (Amir Tzin) [RHEL-924] - Documentation: net/mlx5: Wrap vnic reporter devlink commands in code blocks (Amir Tzin) [RHEL-924] - net/mlx5e: Add vnic devlink health reporter to representors (Amir Tzin) [RHEL-14659 RHEL-924] - net/mlx5: Add vnic devlink health reporter to PFs/VFs (Amir Tzin) [RHEL-14659 RHEL-924] - Revert "net/mlx5: Expose vnic diagnostic counters for eswitch managed vports" (Amir Tzin) [RHEL-14659 RHEL-924] - Revert "net/mlx5: Expose steering dropped packets counter" (Amir Tzin) [RHEL-14659 RHEL-924] - net/mlx5: Create a new profile for SFs (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, add tracepoints for multicast (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, implement mdb offload (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, support multicast VLAN pop (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, add per-port multicast replication tables (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, snoop igmp/mld packets (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, extract code to lookup parent bridge of port (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, move additional data structures to priv header (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, increase bridge tables sizes (Amir Tzin) [RHEL-924] - net/mlx5: Add mlx5_ifc definitions for bridge multicast support (Amir Tzin) [RHEL-924] - net/mlx5e: Fix SQ SW state layout in SQ devlink health diagnostics (Amir Tzin) [RHEL-924] - net/mlx5e: Fix RQ SW state layout in RQ devlink health diagnostics (Amir Tzin) [RHEL-924] - RDMA/mlx5: Remove unused num_alloc_xa_entries variable (Amir Tzin) [RHEL-924] - net/mlx5e: Rename misleading skb_pc/cc references in ptp code (Amir Tzin) [RHEL-924] - net/mlx5: Update cyclecounter shift value to improve ptp free running mode precision (Amir Tzin) [RHEL-924] - RDMA/mlx5: Expand switchdev Q-counters to expose representor statistics (Amir Tzin) [RHEL-924] - net/mlx5: Introduce other vport query for Q-counters (Amir Tzin) [RHEL-924] - net/mlx5e: Fix build break on 32bit (Amir Tzin) [RHEL-924] - net/mlx5: Set out of order (ooo) by default (Amir Tzin) [RHEL-924] - RDMA/mlx5: Disable out-of-order in integrity enabled QPs (Amir Tzin) [RHEL-924] - net/mlx5: Expose bits for enabling out-of-order by default (Amir Tzin) [RHEL-924] - net/mlx5e: TC, Add support for VxLAN GBP encap/decap flows offload (Amir Tzin) [RHEL-897 RHEL-924] - net/mlx5e: Add helper for encap_info_equal for tunnels with options (Amir Tzin) [RHEL-897 RHEL-924] - net/mlx5e: Remove redundant include statement and adjust code to upstream. (Amir Tzin) [RHEL-924] - net/mlx5e: Enable TC offload for egress MACVLAN over bond (Amir Tzin) [RHEL-924] - net/mlx5e: Enable TC offload for ingress MACVLAN over bond (Amir Tzin) [RHEL-924] - net/mlx5e: TC, Extract indr setup block checks to function (Amir Tzin) [RHEL-924] - net/mlx5e: Add XSK RQ state flag for RQ devlink health diagnostics (Amir Tzin) [RHEL-924] - net/mlx5e: Expose SQ SW state as part of SQ health diagnostics (Amir Tzin) [RHEL-924] - net/mlx5e: Stringify RQ SW state in RQ devlink health diagnostics (Amir Tzin) [RHEL-924] - net/mlx5e: Rename RQ/SQ adaptive moderation state flag (Amir Tzin) [RHEL-924] - net/mlx5e: Utilize the entire fifo (Amir Tzin) [RHEL-924] - net/mlx5: Implement thermal zone (Amir Tzin) [RHEL-924] - net/mlx5: Stop waiting for PCI up if teardown was triggered (Amir Tzin) [RHEL-924] - net/mlx5: remove redundant clear_bit (Amir Tzin) [RHEL-924]- libbpf: Add LIBBPF_DEPRECATED_SINCE macro for scheduling API deprecations (Artem Savkov) [RHEL-10697] - drm/amdgpu/sdma5.2: add begin/end_use ring callbacks (Michel Dänzer) [RHEL-19603] - audit: fix possible soft lockup in __audit_inode_child() (Ricardo Robaina) [RHEL-9128] - audit: correct audit_filter_inodes() definition (Ricardo Robaina) [RHEL-9128] - usb: typec: ucsi: Use GET_CAPABILITY attributes data to set power supply scope (Desnes Nunes) [RHEL-14574] - perf: Fix perf_event_validate_size() lockdep splat (Michael Petlan) [RHEL-17968] - perf: Fix perf_event_validate_size() (Michael Petlan) [RHEL-17968] {CVE-2023-6931} - Bluetooth: af_bluetooth: Fix Use-After-Free in bt_sock_recvmsg (Ricardo Robaina) [RHEL-20743] {CVE-2023-51779} - md/raid1-10: limit the number of plugged bio (Nigel Croxon) [RHEL-19121] - md/raid1-10: don't handle pluged bio by daemon thread (Nigel Croxon) [RHEL-19121] - md/md-bitmap: add a new helper to unplug bitmap asynchrously (Nigel Croxon) [RHEL-19121] - md/raid1-10: submit write io directly if bitmap is not enabled (Nigel Croxon) [RHEL-19121] - md/raid1-10: factor out a helper to submit normal write (Nigel Croxon) [RHEL-19121] - md/raid1-10: factor out a helper to add bio to plug (Nigel Croxon) [RHEL-19121] - selftests/bpf: Workaround verification failure for fexit_bpf2bpf/func_replace_return_code (Felix Maurer) [RHEL-15938] - bpf, sockmap: Reject sk_msg egress redirects to non-TCP sockets (Felix Maurer) [RHEL-15506] - bpf, sockmap: Fix map type error in sock_map_del_link (Felix Maurer) [RHEL-15506] - xsk: fix refcount underflow in error path (Felix Maurer) [RHEL-15506] - bpf, cpumap: Make sure kthread is running before map update returns (Felix Maurer) [RHEL-15506] - bpf: cpumap: Fix memory leak in cpu_map_update_elem (Felix Maurer) [RHEL-15506] - page_pool: fix inconsistency for page_pool_ring_[un]lock() (Felix Maurer) [RHEL-15506] - net: page_pool: use in_softirq() instead (Felix Maurer) [RHEL-15506] - xsk: Fix unaligned descriptor validation (Felix Maurer) [RHEL-15506] - Revert "x86/hyperv: fix logical processor creation" (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: fix logical processor creation (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Move the code in ivm.c around to avoid unnecessary ifdef's (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Remove hv_isolation_type_en_snp (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Use TDX GHCI to access some MSRs in a TDX VM with the paravisor (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Bring the post_msg_page back for TDX VMs with the paravisor (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Introduce a global variable hyperv_paravisor_present (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add missing 'inline' to hv_snp_boot_ap() stub (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Mark hv_ghcb_terminate() as noreturn (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Support >64 VPs for a fully enlightened TDX/SNP VM (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Fix serial console interrupts for fully enlightened TDX guests (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Support fully enlightened TDX guests (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Support hypercalls for fully enlightened TDX guests (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add hv_isolation_type_tdx() to detect TDX guests (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Fix undefined reference to isolation_type_en_snp without CONFIG_HYPERV (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add hyperv-specific handling for VMMCALL under SEV-ES (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add smp support for SEV-SNP guest (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: implement and use hv_smp_prepare_cpus (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add VTL specific structs and hypercalls (Vitaly Kuznetsov) [RHEL-10110] - clocksource: hyper-v: Mark hyperv tsc page unencrypted in sev-snp enlightened guest (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Use vmmcall to implement Hyper-V hypercall in sev-snp enlightened guest (Vitaly Kuznetsov) [RHEL-10110] - drivers: hv: Mark percpu hvcall input arg page unencrypted in SEV-SNP enlightened guest (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Remove the per-CPU post_msg_page (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Mark Hyper-V vp assist page unencrypted in SEV-SNP enlightened guest (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Set Virtual Trust Level in VMBus init message (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add sev-snp enlightened guest static key (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Do not corrupt frame-pointer in __tdx_hypercall() (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Expand __tdx_hypercall() to handle more arguments (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Refactor __tdx_hypercall() to allow pass down more arguments (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Add more registers to struct tdx_hypercall_args (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Fix typo in comment in __tdx_hypercall() (Vitaly Kuznetsov) [RHEL-10110] - arm64/hyperv: Use CPUHP_AP_HYPERV_ONLINE state to fix CPU online sequencing (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Fix hyperv_pcpu_input_arg handling when CPUs go online/offline (Vitaly Kuznetsov) [RHEL-10110] - PCI: hv: Replace retarget_msi_interrupt_params with hyperv_pcpu_input_arg (Vitaly Kuznetsov) [RHEL-10110] - PCI: hv: Enable PCI pass-thru devices in Confidential VMs (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: Don't remap addresses that are above shared_gpa_boundary (Vitaly Kuznetsov) [RHEL-10110] - hv_netvsc: Remove second mapping of send and recv buffers (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Remove second way of mapping ring buffers (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Remove second mapping of VMBus monitor pages (Vitaly Kuznetsov) [RHEL-10110] - swiotlb: Remove bounce buffer remapping for Hyper-V (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Change vTOM handling to use standard coco mechanisms (Vitaly Kuznetsov) [RHEL-10110] - init: Call mem_encrypt_init() after Hyper-V hypercall init is done (Vitaly Kuznetsov) [RHEL-10110] - x86/mm: Handle decryption/re-encryption of bss_decrypted consistently (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: Explicitly request decrypted in vmap_pfn() calls (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Reorder code to facilitate future work (Vitaly Kuznetsov) [RHEL-10110] - x86/ioremap: Add hypervisor callback for private MMIO mapping in coco VM (Vitaly Kuznetsov) [RHEL-10110] - x86/sev: Add SEV-SNP guest feature negotiation support (Vitaly Kuznetsov) [RHEL-10110] - ALSA: update configuration for RHEL 8.10 (Jaroslav Kysela) [RHEL-13726] - ASoC: hdmi-codec: fix missing report for jack initial status (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: fix out-of-bounds in snd_pcm_state_names (Jaroslav Kysela) [RHEL-13726] - ALSA: cs35l41: Fix for old systems which do not support command (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Remove unnecessary boolean state variable firmware_running (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Add Pioneer DJM-450 mixer controls (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable headset on Lenovo M90 Gen5 (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: fix speakers on XPS 9530 (2023) (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Apply quirk for ASUS UM3504DA (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add supported ALC257 for ChromeOS (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Headset Mic VREF to 100% (Jaroslav Kysela) [RHEL-13726] - ALSA: hda - Fix speaker and headset mic pin config for CHUWI CoreBook XPro (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for HP Laptops (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for ASUS 2024 Zenbooks (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable Mute LED on HP 255 G10 (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable Mute LED on HP 255 G8 (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - Add Dell ALC295 to pin fall back table (Jaroslav Kysela) [RHEL-13726] - ALSA: info: Fix potential deadlock at disconnection (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: ASUS UM5302LA: Added quirks for cs35L41/10431A83 on i2c bus (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add support dual speaker for Dell (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8540: Add self recovery to improve capture quility (Jaroslav Kysela) [RHEL-13726] - ASoC: hdmi-codec: register hpd callback on component probe (Jaroslav Kysela) [RHEL-13726] - ASoC: dapm: fix clock get name (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Add ASRock X670E Taichi to denylist (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS UX7602ZM (Jaroslav Kysela) [RHEL-13726] - ASoC: da7219: Improve system suspend and resume handling (Jaroslav Kysela) [RHEL-13726] - ASoC: rt712-sdca: fix speaker route missing issue (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Fix missing error code in cs35l41_smart_amp() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: mark cs35l41_verify_id() static (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add missing check with firmware version control (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Remap Level Meter values (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Allow passing any output to line_out_remap() (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add support for reading firmware version (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Rename Gen 3 config sets (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Rename scarlett_gen2 to scarlett2 (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Detect CSPL errors when sending CSPL commands (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Check CSPL state after loading firmware (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Do not unload firmware before reset in system suspend (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Force a software reset after hardware reset (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Run boot process during resume callbacks (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Assert Reset prior to de-asserting in probe and system resume (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Assert reset before system suspend (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Use reset label to get GPIO for HP Zbook Fury 17 G9 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: Skylake: Fix mem leak when parsing UUIDs fails (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: add quirk flag to enable native DSD for McIntosh devices (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt298: remove redundant assignment to d_len_code (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-pci-dev: Fix community key quirk detection (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Stop processing CODECs when enough are found (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: intel-dsp-config: Fix JSL Chromebook quirk detection (Jaroslav Kysela) [RHEL-13726] - ASoC: da7213: Add new kcontrol for tonegen (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - Fixed ASUS platform headset Mic issue (Jaroslav Kysela) [RHEL-13726] - ASoC: da7219: Correct the process of setting up Gnd switch in AAD (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/relatek: Enable Mute LED on HP Laptop 15s-fq5xxx (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GU603ZV (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5650: fix the wrong result of key button (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715: reorder the argument in error log (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715-sdca: reorder the argument in error log (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw_rt712_sdca: construct cards->components by name_prefix (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw_rt_sdca_jack_common: add rt713 support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi-intel-mtl-match: add rt713 rt1316 config (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi-intel-rpl-match: add rt711-l0-rt1316-l12 support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: update HP Omen match (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Fix missing include of gpio/consumer.h (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: core: Ensure sof_ops_free() is still called when probe never ran. (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add Focusrite Clarett 2Pre and 4Pre USB support (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Fix microphone sound on Nexigo webcam. (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Change model for Intel RVP board (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Fix microphone sound on Opencomm2 Headset (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Cleanup and fix double free in firmware request (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682: Fix regulator enable/disable sequence (Jaroslav Kysela) [RHEL-13726] - ASoC: hdmi-codec: Fix broken channel map reporting (Jaroslav Kysela) [RHEL-13726] - ASoC: core: Do not call link_exit() on uninitialized rtd objects (Jaroslav Kysela) [RHEL-13726] - ASoC: core: Print component name when printing log (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Fix non-functional mic on Lenovo 82YM (Jaroslav Kysela) [RHEL-13726] - ALSA: aloop: Add control element for getting the access mode (Jaroslav Kysela) [RHEL-13726] - ALSA: aloop: Add support for the non-interleaved access mode (Jaroslav Kysela) [RHEL-13726] - ALSA: intel8x0m: fix name of SIS7013 sound chip in comment (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: fix for firmware reload failure after playback (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add Focusrite Clarett+ 2Pre and 4Pre support (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-generic-dmaengine-pcm: Fix function name in comment (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Add read-only ALSA control for forced mute (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Support mute notifications for CS35L41 HDA (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Support ACPI Notification framework via component binding (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Add notification support into component binding (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - ALC287 merge RTK codec with CS CS35L41 AMP (Jaroslav Kysela) [RHEL-13726] - ASoC: hdac_hda: fix HDA patch loader support (Jaroslav Kysela) [RHEL-13726] - soundwire: bus: Make IRQ handling conditionally built (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: Make sure DAI parameters cleared if the DAI becomes inactive (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add support for SKU 0B14 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: fix Dell SKU 0B34 (Jaroslav Kysela) [RHEL-13726] - ASoC: hdac_hda: add HDA patch loader support (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - ALC287 Realtek I2S speaker platform support (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: scarlett_gen2: Fix another -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Use size_add() in call to struct_size() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: MTL: Reduce the DSP init timeout (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: core: Only call sof_ops_free() on remove if the probe was successful (Jaroslav Kysela) [RHEL-13726] - ALSA: riptide: Fix -Wformat-truncation warning for longname string (Jaroslav Kysela) [RHEL-13726] - ALSA: cs4231: Fix -Wformat-truncation warning for longname string (Jaroslav Kysela) [RHEL-13726] - ALSA: ad1848: Fix -Wformat-truncation warning for longname string (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: generic: Check potential mixer name string truncation (Jaroslav Kysela) [RHEL-13726] - ALSA: cmipci: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: firewire: Fix -Wformat-truncation warning for MIDI stream names (Jaroslav Kysela) [RHEL-13726] - ALSA: firewire: Fix -Wformat-truncation warning for longname string (Jaroslav Kysela) [RHEL-13726] - ALSA: xen: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: opti9x: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: es1688: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: cs4236: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: sscape: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: caiaq: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: scarlett_gen2: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ASoC: imx-audmix: Fix return error with devm_clk_get() (Jaroslav Kysela) [RHEL-13726] - ASoC: hdaudio.c: Add missing check for devm_kstrdup (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add correct product series name to messages (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add support for Clarett 8Pre USB (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Move USB IDs out from device_info struct (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Default mixer driver to enabled (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: fix wrong sizeof argument (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-audio: Fix DSP core put imbalance on widget setup failure (Jaroslav Kysela) [RHEL-13726] - firmware: cirrus: cs_dsp: Only log list of algorithms in debug build (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Avoid stale SoundWire ATTACH after hard reset (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Don't rely on GPIOD_OUT_LOW to set RESET initially low (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Ensure a reset pulse meets minimum pulse width. (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: mixer: Remove temporary string use in parse_clock_source_unit (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Splitting the UX3402 into two separate models (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: intel-sdw-acpi: Use u8 type for link index (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Only cancel jack-detect work on suspend if active (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Fix IRQ not being free-ed for HDA jack detect mode (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Enable the IRQ on resume after configuring jack-detect (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Do not disable/enable IRQ twice on suspend/resume (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Fix sleep in atomic context (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Revert "Fix sleep in atomic context" (Jaroslav Kysela) [RHEL-13726] - ALSA: core: Use dev_name of card_dev as debugfs directory name (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - Fixed two speaker platform (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Fix non-functional mic on Lenovo 82QF and 82UG (Jaroslav Kysela) [RHEL-13726] - Add DMI ID for MSI Bravo 15 B7ED (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm: Shrink stack frame for __soc_pcm_hw_params (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Consistently use dev_err_probe() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Undo runtime PM changes at driver exit time (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Fix unbalanced pm_runtime_get() (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Make use of dev_err_probe() (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Undo runtime PM changes at driver exit time (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Verify PM runtime resume errors in IRQ handler (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Fix broken shared boost activation (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Handle mdsync_up reg write errors (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Handle mdsync_down reg write errors (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Disable power save for solving pop issue on Lenovo ThinkCentre M70q (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Fix a non-functional mic on Lenovo 82TL (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - ALC287 I2S speaker platform support (Jaroslav Kysela) [RHEL-13726] - regmap: debugfs: Fix a erroneous check after snprintf() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/cirrus: Fix broken audio on hardware with two CS42L42 codecs. (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: NULL pointer access when removing jack (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Add DMI entries to support Victus by HP Gaming Laptop 15-fb0xxx (8A3E) (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: Fix missing fixup call in compat hw_refine ioctl (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Don't try to submit URBs after disconnection (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-core.c: Do not error if a DAI link component is not found (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for mute LEDs on HP ENVY x360 15-eu0xxx (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Fix a non-functional mic on Lenovo 82SJ (Jaroslav Kysela) [RHEL-13726] - ALSA: ymfpci: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Override the _DSD for HP Zbook Fury 17 G9 to correct boost type (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for HP Victus 16-d1xxx to enable mute LED (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Correct amp_gain_tlv values (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: clear dsp to host interrupt status (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: clear panic mask status when panic occurs (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: add conditional check for acp_clkmux_sel register (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: remove redundant clock mux selection register write (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: enable ACP external global interrupt (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: remove unused sha dma interrupt code (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Fix possible error value of *rac97 (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Add module parameter to ignore the CPC value (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Modify the reference output valid_bits for copier (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Fix pipeline params at the output of copier (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Fix the output reference params for SRC (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Modify pipeline params based on SRC output format (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Fix init call orders for UAC1 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: fix typos (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Add VivoBook Pro 15 to quirks list for acp6x (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: Add kcontrols and widgets per-codec in common code (Jaroslav Kysela) [RHEL-13726] - ALSA: aoa: Fix typos in PCM fix patch (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: improve the depop sequences of CBJ detection (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682s: Convert to use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682: Convert to use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5668: Convert to use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5665: Convert to use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Convert to just use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: change cs35l41_prop_model to static (Jaroslav Kysela) [RHEL-13726] - ALSA: core: Drop snd_device_initialize() (Jaroslav Kysela) [RHEL-13726] - ALSA: seq: Create device with snd_device_alloc() (Jaroslav Kysela) [RHEL-13726] - ALSA: timer: Create device with snd_device_alloc() (Jaroslav Kysela) [RHEL-13726] - ALSA: compress: Don't embed device (Jaroslav Kysela) [RHEL-13726] - ALSA: rawmidi: Don't embed device (Jaroslav Kysela) [RHEL-13726] - ALSA: hwdep: Don't embed device (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: Don't embed device (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Don't embed ctl_dev (Jaroslav Kysela) [RHEL-13726] - ALSA: core: Introduce snd_device_alloc() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-pcm: fix possible null pointer deference (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Fix the loop check in cs35l41_add_dsd_properties (Jaroslav Kysela) [RHEL-13726] - firmware: cs_dsp: Fix new control name check (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Support systems with missing _DSD properties (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: intel-dsp-cfg: Add Chromebook quirk to ADL/RPL (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - Remodified 3k pull low procedure (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: topology: Add a token for dropping widget name in kcontrol name (Jaroslav Kysela) [RHEL-13726] - ASoC: dapm: Add a flag for not having widget name in kcontrol name (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: Refactor code for HDA stream creation (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add support for Dell SKU0C87 devices (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682-sdw: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5660: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5659: Drop legacy GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: Drop legacy GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5514: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5514-spi: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1308: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1305: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1019: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1016: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1015p: Drop legacy GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1015: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1011: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-jack: calling snd_soc_jack_report causes a null pointer access (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/cs8409: Support new Dell Dolphin Variants (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1308-sdw: fix random louder sound (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3: Use devm_kmemdup to replace devm_kmalloc + memcpy (Jaroslav Kysela) [RHEL-13726] - ASoC: tas5805m: Use devm_kmemdup to replace devm_kmalloc + memcpy (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715: Add software reset in io init (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: Initialize chip in hda_sdw_check_wakeen_irq() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Switch Dell Oasis models to use SPI (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for HP G11 Laptops (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Update the basecfg for copier earlier (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Simplify get_slave_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Allow different devices on the same link (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Support multiple groups on the same link (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Device loop should not always start at adr_index (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Move range check of codec_conf into inner loop (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Update DLC index each time one is added (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Pull device loop up into create_sdw_dailink (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Add helper to create a single codec DLC (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof-sdw: Move check for valid group id to get_dailink_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Check link mask validity in get_dailink_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Remove duplicate NULL check on adr_link (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Printk's should end with a newline (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: intel: hda: Clean up link DMA for IPC3 during stop (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof-sdw-cs42142: fix for codec button mapping (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-mlink: add sublink to dev_dbg() log (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: IPC4: clarify 'pipeline_ids' usage and logs (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: add abstraction for SoundWire wake-ups (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai-ops: only allocate/release streams for first CPU DAI (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: restore gateway config length (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4: avoid uninitialized default instance 0 (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: fix u16/32 confusion in LSDIID (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-mlink: fix off-by-one error (Jaroslav Kysela) [RHEL-13726] - ALSA: info: Remove unused function declarations (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Fix incorrect use of sizeof in sof_ipc3_do_rx_work() (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp3x-rt5682-max9836: Configure jack as not detecting Line Out (Jaroslav Kysela) [RHEL-13726] - soundwire: bus: Allow SoundWire peripherals to register IRQ handlers (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-acpi: Add missing kernel doc (Jaroslav Kysela) [RHEL-13726] - soundWire: intel_auxdevice: resume 'sdw-master' on startup and system resume (Jaroslav Kysela) [RHEL-13726] - soundwire: intel_auxdevice: enable pm_runtime earlier on startup (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Add support for Mythware XA001AU capture and playback interfaces. (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_da7219_max98373: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: kbl_da7219_max98927: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: kbl_da7219_max98357a: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: bytcr_wm5102: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: bxt_da7219_max98357a: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs: da7219: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp3x-rt5682-max9836: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp-rt5645: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp-da7219-max98357a: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: max98373-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: max98363: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1318-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1316-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1308-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715-sdca: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt712-sdca-dmic: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1712-sdca: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt700: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt711-sdca: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt711: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682-sdw: make regmap cache-only in probe (Jaroslav Kysela) [RHEL-13726] - ASoC: SoundWire codecs: make regmap cache-only in probe (Jaroslav Kysela) [RHEL-13726] - ASoC: SoundWire codecs: return error status in probe (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/i915: extend connectivity check to cover Intel ARL (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: intel-dsp-cfg: use common include for MeteorLake (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: add HD Audio PCI ID for Intel Arrow Lake-S (Jaroslav Kysela) [RHEL-13726] - PCI: add ArrowLake-S PCI ID for Intel HDAudio subsystem. (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Print amp configuration after bind (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: set variables dev_attr_vendor_id to static (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5665: add missed regulator_bulk_disable (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Remove unused function declaration (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Move group_generated logic (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Merge codec_conf_alloc into dailink_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Clean up DAI link counting (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Allow direct specification of CODEC name (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: break earlier when a adr link contains different codecs (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Move amp_num initialisation to mc_probe (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Remove redundant parameters in dai creation (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Minor tidy up of mc_probe (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Constify parameter to find_codec_part_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Simplify find_codec_info_acpi (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Remove some extra line breaks (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Rename codec_idx to codec_dlc_index (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Use consistent variable naming for links (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add support for SKU 0AFE (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: rename link_id to be_id (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: allow mockup amplifier to provide feedback (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: reorder SoundWire codecs in Kconfig (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: Add entry for rt711-sdca-sdw at link 0 in RPL match table (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp5x-mach:add checks to avoid static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: atom: remove static analysis false positive (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: bdw_rt286: add checks to avoid static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: topology: simplify code to prevent static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3: add checks to prevent static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-client-probes-ipc4: add checks to prevent static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Deprecate invalid enums in IPC3 (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3: update dai_link_fixup for SOF_DAI_MEDIATEK_AFE (Jaroslav Kysela) [RHEL-13726] - ASoC: 88pm860x: refactor deprecated strncpy (Jaroslav Kysela) [RHEL-13726] - ASoC: fsl_micfil: refactor deprecated strncpy (Jaroslav Kysela) [RHEL-13726] - ALSA: bcd2000: refactor deprecated strncpy (Jaroslav Kysela) [RHEL-13726] - ALSA: xen-front: refactor deprecated strncpy (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Support ASUS G713PV laptop (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Update for native DSD support quirks (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1316: fix key tone missing (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l51: change cs42l51_of_match to static (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3-dtrace: Switch to memdup_user_nul() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/relatek: Enable Mute LED on HP 250 G8 (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Add quirk for Microsoft Modern Wireless Headset (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Ensure amp is only unmuted during playback (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Add device_link between HDA and cs35l41_hda (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Rework System Suspend to ensure correct call separation (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Use pre and post playback hooks (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: hda_component: Add pre and post playback hooks to hda_component (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Move Play and Pause into separate functions (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Ensure we pass up any errors during system suspend. (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Ensure we correctly re-sync regmap before system suspending. (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Check mailbox status of pause command after firmware load (Jaroslav Kysela) [RHEL-13726] - ALSA: cs35l41: Poll for Power Up/Down rather than waiting a fixed delay (Jaroslav Kysela) [RHEL-13726] - ALSA: cs35l41: Use mbox command to enable speaker output for external boost (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: add HDMI codec ID for Intel LNL (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/hdmi: keep codec entries in numerical order (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Fix missing header dependencies (Jaroslav Kysela) [RHEL-13726] - ASoC: rt712-sdca: fix for JD event handling in ClockStop Mode0 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt711-sdca: fix for JD event handling in ClockStop Mode0 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt711: fix for JD event handling in ClockStop Mode0 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682-sdw: fix for JD event handling in ClockStop Mode0 (Jaroslav Kysela) [RHEL-13726] - ASoC: wm8960: Add DAC filter characteristics selection (Jaroslav Kysela) [RHEL-13726] - ALSA: ice1712: Use the standard snd_ctl_add_followers() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: ca0106: Use the standard snd_ctl_add_followers() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Use the standard snd_ctl_add_followers() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: vmaster: Add snd_ctl_add_followers() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: cmipci: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: via82xx: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: maestro3: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: ice1712: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: es1968: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: cs46xx: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: ca0106: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Introduce snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add support for DELL Oasis 13/14/16 laptops (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Fix generic fixup definition for cs35l41 amp (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8821: Add DMI quirk mechanism for active-high jack-detect (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: fix SND_SOC_AMD_ACP_PCI depdenencies (Jaroslav Kysela) [RHEL-13726] - ASoc: codecs: ES8316: Fix DMIC config (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable Mute LED on HP Laptop 15s-eq2xxx (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for Clevo NS70AU (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: Go back and simplify with snd_ctl_find_id() (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Take lock in snd_ctl_find_id() and snd_ctl_find_numid() (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Introduce unlocked version for snd_ctl_find_*() helpers (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Make snd_ctl_find_id() argument const (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Add lockdep warning to internal functions (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Take controls_rwsem lock in snd_ctl_remove() (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Take card->controls_rwsem in snd_ctl_rename() (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: delete unnecessary NULL check (Jaroslav Kysela) [RHEL-13726] - ASoC: da7219: Check for failure reading AAD IRQ events (Jaroslav Kysela) [RHEL-13726] - ASoC: da7219: Flush pending AAD IRQ when suspending (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sst: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: Skylake: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ALSA: intel-dsp-config: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: Skylake: Use global PCI match macro (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/i915: Use global PCI match macro (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Use global PCI match macro (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Add controller matching macros (Jaroslav Kysela) [RHEL-13726] - ALSA: Remove unused Broxton PCI ID (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Remove unused Broxton PCI ID (Jaroslav Kysela) [RHEL-13726] - PCI: Add Intel Audio DSP devices to pci_ids.h (Jaroslav Kysela) [RHEL-13726] - PCI: Sort Intel PCI IDs by number (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Update jact detection function (Jaroslav Kysela) [RHEL-13726] - ASOC: codecs: ES8326: Add calibration support for version_b (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Fix power-up sequence (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Change Volatile Reg function (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Change Hp_detect register names (Jaroslav Kysela) [RHEL-13726] - tools include UAPI: Sync the sound/asound.h copy with the kernel sources (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Add es8326_mute function (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l51: fix driver to properly autoload with automatic module loading (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-dai: don't call PCM audio ops if the stream is not supported (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - remove 3k pull low procedure (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: clean up some inconsistent indentings (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Fix the issue of speaker noise (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: Add new dmi entries to config entry (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: Add acpi machine id's for vangogh platform (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: Add machine driver support for max98388 codec (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: Add machine driver support for nau8821 codec (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3-dtrace: uninitialized data in dfsentry_trace_filter_write() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GZ301V (Jaroslav Kysela) [RHEL-13726] - ALSA: jack: Fix mutex call in snd_jack_report() (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: Use dmi_first_match() for DMI quirk handling (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: Make use of DRV_NAME (Jaroslav Kysela) [RHEL-13726] - ASoC: core: suppress probe deferral errors (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: suppress probe deferral errors (Jaroslav Kysela) [RHEL-13726] - soundwire: fix enumeration completion (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: add the system level suspend-resume callback (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: check return value after reading device id (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: implement set_jack callback (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Whitespace fix (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG G614Jx (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Amend G634 quirk to enable rear speakers (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GA402X (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GX650P (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: Fix potential data race at PCM memory allocation helpers (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: fix a possible null-pointer dereference due to data race in snd_hdac_regmap_sync() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for Unis H3C Desktop B760 & Q760 (Jaroslav Kysela) [RHEL-13726] - ASoC: stac9766: fix build errors with REGMAP_AC97 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Sort headers alphabetically (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Use device_get_match_data() (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Use agnostic irq_domain_create_linear() (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Refactor GPIO support code (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: refactor PSP smn_read (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: add revision check for sending sha dma completion command (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: es8316: Add support for S24_3LE format (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: es8316: Add support for 24 MHz MCLK (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Fix sleep in atomic context (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for Clevo NPx0SNx (Jaroslav Kysela) [RHEL-13726] - soundwire: amd: Fix a check for errors in probe() (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: add pm ops support for rembrandt platform (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: move pdm macros to common header file (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: store the pdm stream channel mask (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: export config_acp_dma() and config_pte_for_stream() symbols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: store xfer_resolution of the stream (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: add pm ops support for acp pci driver (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: store platform device reference created in pci probe call (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: remove the redundant acp enable/disable interrupts functions (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: add acp i2s master clock generation for rembrandt platform (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: refactor the acp init and de-init sequence (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on EliteBook (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: fix for invalid dai id handling in acp_get_byte_count() (Jaroslav Kysela) [RHEL-13726] - ASoC: hdmi-codec: fix channel info for compressed formats (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: fix ELD constraints for (E)AC3, DTS(-HD) and MLP formats (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: update pm_runtime enable sequence (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-dapm.h: Convert macros to return a compound literal (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: remove acp poweroff function (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: clear pdm dma interrupt mask (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for ROG ALLY CS35l41 audio (Jaroslav Kysela) [RHEL-13726] - ASoC: cs43130: Fix numerator/denominator mixup (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GV601V (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-core.c: cleanup soc_dai_link_sanity_check() (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-core.c: initialize dlc on snd_soc_get_dai_id() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG G634Z (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-compress: Fix deadlock in soc_compr_open_fe (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Add MODULE_FIRMWARE macro (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: wm0010: Add MODULE_FIRMWARE macros (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: mtl: setup primary core info on MeteorLake platform (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: pm: Remove duplicated code in sof_suspend (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4: Switch to use the sof_debug:bit11 to dump message payload (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3: Dump IPC message payload (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Add new sof_debug flag to request message payload dump (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: core: Free the firmware trace before calling snd_sof_shutdown() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-audio: test virtual widget in sof_walk_widgets_in_order (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-audio: add is_virtual_widget helper (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_rt5682: Add mtl support RT1019P speaker (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_rt5682: reorder quirk table (Jaroslav Kysela) [RHEL-13726] - soundwire: stream: Make master_list ordered to prevent deadlocks (Jaroslav Kysela) [RHEL-13726] - soundwire: bus: Prevent lockdep asserts when stream has multiple buses (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Fix possible NULL dereference in snd_ac97_mixer (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Add quirk flag for HEM devices to enable native DSD playback (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: Add support for IPC with a reply_size set to zero (Jaroslav Kysela) [RHEL-13726] - ALSA: timer: minimize open-coded access to hw.resolution (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Fix broken resume due to UAC3 power state (Jaroslav Kysela) [RHEL-13726] - ALSA: seq: oss: Fix racy open/close of MIDI devices (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-ssm4567: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-rt5682: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-rt298: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-rt286: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-rt274: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-nau8825: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-max98927: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-max98373: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-max98357a: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-hdaudio: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-dmic: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-da7219: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: max98363: Remove cache defaults for volatile registers (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add a quirk for Compaq N14JP6 (Jaroslav Kysela) [RHEL-13726] - ASoC: audio-graph-card2-custom-sample: add missing CPU:Codec = 1:N sample (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Refactor rx function for fuzzing (Jaroslav Kysela) [RHEL-13726] - ASoC: max98088: clean up some inconsistent indenting (Jaroslav Kysela) [RHEL-13726] - ASoC: remove old trigger ordering method (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: use use new trigger ordering method (Jaroslav Kysela) [RHEL-13726] - ASoC: add new trigger ordering method (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/intel: Workaround for WALLCLK register for loongson controller (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Workaround for SDnCTL register on loongson (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Using polling mode for loongson controller by default (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Add Loongson LS7A HD-Audio support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add dai_link_codec_ch_map (Jaroslav Kysela) [RHEL-13726] - ASoC: add N cpus to M codecs dai link support (Jaroslav Kysela) [RHEL-13726] - soundwire: debugfs: Add missing SCP registers (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-pcm: remove kernel parameter init (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: fix SoundWire/HDaudio mutual exclusion (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Delete cs35l41 component master during free (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Fix endian conversions (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Clean up Firmware Load Controls (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Keep the previous numid at snd_ctl_rename_id() (Jaroslav Kysela) [RHEL-13726] - firmware: cs_dsp: Log correct region name in bin error messages (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: select CONFIG_SND_AMD_ACP_CONFIG (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda: add helper to extract SoundWire link count (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: mtl: prepare for code reuse (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: add DMA config TLV to IPC data (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: introduce DMA config TLV (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: extend ALH-specific data structure (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: add get_hlink callback (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: add calc_stream_format callback (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: add codec_dai_set_stream callback (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: add error checks to prevent static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add Rex CS42l42 and MAX98363 SoundWire entries (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Add support for Rex soundwire (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Add support for MAX98363 codec (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Modify maxim helper functions and structure names (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Rename sof_sdw_max98373.c file to sof_sdw_maxim.c (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Add helper function for cs42l42 codec (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: Sof_ssp_amp: Correcting author name. (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: ADL: Moving amp only boards into end of the table. (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: ADL: Enable HDMI-In capture feature support for non-I2S codec boards. (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof-sdw: add Dell SKU 0B34 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add tables for Dell SKU 0B34 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add quick for Dell SKU 0BDA (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add table for RPL Dell SKU 0BDA (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: increase sdw pin index for each sdw link (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add rt713 support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi-intel-mtl-match: add rt712 ID (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi-intel-tgl-match: add rt712 ID (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add rt712 support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: make rt711_sdca be generic (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: rename SOF_RT711_JDSRC to SOF_JACK_JDSRC (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw_rt_sdca_jack_common: test SOF_JACK_JDSRC in _exit (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add multi dailink support for a codec (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sdw_sof: append dai_type and remove codec_type (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add codec_info pointer (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: use predefine dailink id (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add dai info (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add missing exit callback (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: select CONFIG_SND_AMD_ACP_CONFIG (Jaroslav Kysela) [RHEL-13726] - soundwire: stream: Remove unnecessary gotos (Jaroslav Kysela) [RHEL-13726] - soundwire: stream: Invert logic on runtime alloc flags (Jaroslav Kysela) [RHEL-13726] - soundwire: stream: Remove unneeded checks for NULL bus (Jaroslav Kysela) [RHEL-13726] - soundwire: bandwidth allocation: Remove pointless variable (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Update output control for NAU8825C (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Update the calculation of FLL for NAU8825C (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Add registers patch for NAU8825C (Jaroslav Kysela) [RHEL-13726] - ASoC: soc.h: remove snd_soc_compr_ops :: trigger (Jaroslav Kysela) [RHEL-13726] - ASoC: add snd_soc_get_stream_cpu() (Jaroslav Kysela) [RHEL-13726] - firmware: cs_dsp: Log that a bin file was loaded (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Add the management of headset detection for power saving (Jaroslav Kysela) [RHEL-13726] - ASoC: es8316: Do not set rate constraints for unsupported MCLKs (Jaroslav Kysela) [RHEL-13726] - ASoC: es8316: Increment max value for ALC Capture Target Volume control (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: Add check for acp config flags in vangogh platform (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: tidyup playback/capture_only at soc_get_playback_capture() (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: use temporary variable at soc_get_playback_capture() (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: cleanup soc_get_playback_capture() error (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: use dai_link on soc_get_playback_capture() (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: indicate error if stream has no playback no capture (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: HDA: Limit the number of dai drivers for nocodec mode (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: topology: Use partial match for connecting DAI link and DAI widget (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Allow partial matching when finding DAI link (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Add PLL ratio table values (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: tgl: unify core_put on IPC3 & IPC4 path (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: mtl: add core_get & put support on MeterLake platforms (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Add pre-charge actions for input (Jaroslav Kysela) [RHEL-13726] - ALSA: rawmidi: Pass rawmidi directly to snd_rawmidi_kernel_open() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: Add pci revision id check (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-loader/topology: Query the CPC value from manifest (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Do not use the CPC value from topology (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Rename sof_ipc4_update_pipeline_mem_usage() to be generic (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-loader: Save a pointer to fm_config in sof_ipc4_fw_module (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-loader: Drop unused bss_size from struct sof_ipc4_fw_module (Jaroslav Kysela) [RHEL-13726] - ASoC: stm32: sai: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682s: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5659: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: cs53l30: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l51: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: adau1761: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: mixart: Replace one-element arrays with simple object declarations (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Remove redundant log (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Remove redundant log (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Do not split message string on multiple lines (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Remove redundant logs (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Log control load errors in soc_tplg_control_load() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: Fix locking in hda_ipc4_pre_trigger() (Jaroslav Kysela) [RHEL-13726] - soundwire: amd: Improve error message in remove callback (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt715: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt715-sdca: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt712-sdca: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt712-sdca-dmic: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt711: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt711-sdca: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt700: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt5682: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt1318: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt1316: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt1308: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - soundwire: intel_bus_common: update error log (Jaroslav Kysela) [RHEL-13726] - soundwire: cadence: revisit parity injection (Jaroslav Kysela) [RHEL-13726] - soundwire: intel/cadence: update hardware reset sequence (Jaroslav Kysela) [RHEL-13726] - soundwire: intel_bus_common: enable interrupts last (Jaroslav Kysela) [RHEL-13726] - soundwire: debugfs: fix unbalanced pm_runtime_put() (Jaroslav Kysela) [RHEL-13726] - ALSA: compat_ioctl: use correct snd_ctl_elem_type_t type (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Fix an unsigned comparison which can never be negative (Jaroslav Kysela) [RHEL-13726] - soundwire: qcom: drop unused struct qcom_swrm_ctrl members (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-pcm: reset all pipelines during FE DAI hw_free (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai-ops: Split the get_hext_stream() op for IPC4 (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Modify input audio format selection logic (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: New helper to check if all output formats are the same (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Modify the output format selection logic (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Add a new helper function to get the valid bits (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Handle output format special case (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Rename sof_ipc4_init_audio_fmt() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Move the call to init output format (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Add a helper function for output format selection (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Handle input/output audio format special case (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: read AC timing control register before updating it (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: use substream for .free callback (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: remove .free callback implementation (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: use substream for .trigger callback (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: remove .trigger callback implementation (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF/soundwire: re-add substream in params_stream structure (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: remove mutual exclusion between NOCODEC and HDA_LINK (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: use HDA_LINK instead of HDA_AUDIO_CODEC (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: mark functions as __maybe_unused (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: move hda_dai_prepare() code (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: Kconfig: move selection of PROBE_WORK_QUEUE (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: clarify initialization when HDA_AUDIO_CODEC is not used (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: fix DAI number mismatch (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: remove use of cpu_dai->component drvdata (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: simplify .prepare callback (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add tables for LunarLake (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add new mapping for HP Spectre x360 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: start set codec init function with an adr index (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add support for MTL SDCA boards (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add quirk for MTL RVP (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: remove SOF_SDW_TGL_HDMI for MeteorLake devices (Jaroslav Kysela) [RHEL-13726] - ASoC: wm_adsp: Update to use new component control notify helepr (Jaroslav Kysela) [RHEL-13726] - ASoC: ak4118: Update to use new component control notify helper (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-component: Add notify control helper function (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Use set_get_data() to send LARGE_CONFIG message (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Simplify the calculation of variables (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Add MECHREVO Jiaolong Series MRID6 into DMI table (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: simplify tone control switch DSP code (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: apply channel delay hack to all E-MU cards (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: simplify snd_emu10k1_audigy_dsp_convert_32_to_2x16() (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: fix+optimize E-MU stereo capture DSP code (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: roll up loops in DSP setup code for Audigy (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: make tone control switch mono (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: don't create regular S/PDIF controls for E-MU cards (Jaroslav Kysela) [RHEL-13726] - ASoC: sof: Improve sof_ipc4_bytes_ext_put function (Jaroslav Kysela) [RHEL-13726] - ASoC: sof: Improve sof_ipc3_bytes_ext_put function (Jaroslav Kysela) [RHEL-13726] - ALSA: uapi: pcm: control the filling of the silence samples for drain (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: remove now superfluous mixer locking (Jaroslav Kysela) [RHEL-13726] - ALSA: core: update comment on snd_card.controls_rwsem (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: fix locking in snd_emu1010_fpga_link_dst_src_write() (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: use the right lock in snd_emu10k1_shared_spdif_put() (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: remove pointless locks from /proc code (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: remove pointless locks from timer code (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: refactor acp power on and reset functions. (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: remove the register read and write wrappers. (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: Update copyright notice (Jaroslav Kysela) [RHEL-13726] - soundwire: bus: Don't filter slave alerts (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Define dummy functions for snd_ac97_suspend() and resume() (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Remove redundant driver match function (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: Add a module parameter to influence pdm_gain (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: Adjust the gain for PDM DMIC (Jaroslav Kysela) [RHEL-13726] - PCI: Add Loongson vendor ID (Jaroslav Kysela) [RHEL-13726]- VMCI: Use threaded irqs instead of tasklets (Ani Sinha) [RHEL-17673] - arm64: kdump: simplify the reservation behaviour of crashkernel=,high (Pingfan Liu) [RHEL-8989] - blk-mq: don't count completed flush data request as inflight in case of quiesce (Ming Lei) [RHEL-18055] - md/raid6: use valid sector values to determine if an I/O should wait on the reshape (Nigel Croxon) [RHEL-17287] - powerpc/hv-gpci: Add return value check in affinity_domain_via_partition_show function (Mamatha Inamdar) [RHEL-20259] - powerpc/pseries/vas: Migration suspend waits for no in-progress open windows (Mamatha Inamdar) [RHEL-20243] - fuse: fix deadlock between atomic O_TRUNC and page invalidation (Miklos Szeredi) [RHEL-7989] - fuse: truncate pagecache on atomic_o_trunc (Miklos Szeredi) [RHEL-7989] - blk-mq: use quiesced elevator switch when reinitializing queues (Ming Lei) [RHEL-19944] - lib/group_cpus.c: avoid acquiring cpu hotplug lock in group_cpus_evenly (Ming Lei) [RHEL-8128] - netdev: replace napi_reschedule with napi_schedule (Ivan Vecera) [RHEL-19714] - netdev: make napi_schedule return bool on NAPI successful schedule (Ivan Vecera) [RHEL-19714] - netdev: replace simple napi_schedule_prep/__napi_schedule to napi_schedule (Ivan Vecera) [RHEL-19714] - x86/topology: Use total_cpus for max logical packages calculation (Frank Ramsay) [RHEL-17893] - x86/fpu/xstate: Fix PKRU covert channel (Dean Nelson) [RHEL-16175] - x86/fpu: Invalidate FPU state correctly on exec() (Dean Nelson) [RHEL-16175] - x86/fpu/xstate: Prevent false-positive warning in __copy_xstate_uabi_buf() (Dean Nelson) [RHEL-16175] - x86/fpu: Emulate XRSTOR's behavior if the xfeatures PKRU bit is not set (Dean Nelson) [RHEL-16175] - x86/fpu: Allow PKRU to be (once again) written by ptrace. (Dean Nelson) [RHEL-16175] - x86/fpu: Add a pkru argument to copy_uabi_to_xstate() (Dean Nelson) [RHEL-16175] - x86/fpu: Add a pkru argument to copy_uabi_from_kernel_to_xstate(). (Dean Nelson) [RHEL-16175] - x86/fpu: Take task_struct* in copy_sigframe_from_user_to_xstate() (Dean Nelson) [RHEL-16175] - x86/fpu/xstate: Fix XSTATE_WARN_ON() to emit relevant diagnostics (Dean Nelson) [RHEL-16175] - x86/fpu: Cleanup variable shadowing (Dean Nelson) [RHEL-16175] - x86/fpu: Remove redundant XCOMP_BV initialization (Dean Nelson) [RHEL-16175] - x86/ptrace: Fix xfpregs_set()'s incorrect xmm clearing (Dean Nelson) [RHEL-16175] - x86/fpu: Remove duplicate copy_fpstate_to_sigframe() prototype (Dean Nelson) [RHEL-16175] - x86/fpu/signal: Initialize sw_bytes in save_xstate_epilog() (Dean Nelson) [RHEL-16175] - scsi: mpi3mr: Fetch correct device dev handle for status reply descriptor (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Block PEL Enable Command on Controller Reset and Unrecoverable State (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Clean up block devices post controller reset (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Refresh sdev queue depth after controller reset (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: driver version upgrade to 8.5.0.0.50 (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Add support for status reply descriptor (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Increase maximum number of PHYs to 64 from 32 (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Add PCI checks where SAS5116 diverges from SAS4116 (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Add support for SAS5116 PCI IDs (Tomas Henzl) [RHEL-17365] - scsi: scsi_debug: Remove dead code (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Abort commands from scsi_debug_device_reset() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix missing error code in scsi_debug_init() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop sdebug_queue (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Only allow sdebug_max_queue be modified when no shosts (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Use scsi_host_busy() in delay_store() and ndelay_store() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Use blk_mq_tagset_busy_iter() in stop_all_queued() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Use blk_mq_tagset_busy_iter() in sdebug_blk_mq_poll() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Dynamically allocate sdebug_queued_cmd (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Use scsi_block_requests() to block queues (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Protect block_unblock_all_queues() with mutex (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Change shost list lock to a mutex (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Don't iter all shosts in clear_luns_changed_on_target() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix check for sdev queue full (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Remove redundant driver match function (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Add poll mode deferred completions to statistics (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Get command abort feature working again (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop sdebug_dev_info.num_in_q (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop check for num_in_q exceeding queue depth (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_host_reset() device NULL pointer check (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_bus_reset() NULL pointer checks (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_target_reset() NULL pointer checks (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_device_reset() NULL pointer checks (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_abort() NULL pointer checks (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Stop setting devip->sdbg_host twice (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Don't hold driver host struct pointer in host->hostdata[] (Ming Lei) [RHEL-16241] - scsi: core: Introduce {init,exit}_cmd_priv() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix possible UAF in sdebug_add_host_helper() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix sdebug_blk_mq_poll() in_use_bm bitmap use (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix qc_lock use in sdebug_blk_mq_poll() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Refine sdebug_blk_mq_poll() (Ming Lei) [RHEL-16241] - ice: fix theoretical out-of-bounds access in ethtool link modes (Petr Oros) [RHEL-15678] - ice: restore timestamp configuration after device reset (Petr Oros) [RHEL-15678] - ice: unify logic for programming PFINT_TSYN_MSK (Petr Oros) [RHEL-15678] - ice: remove ptp_tx ring parameter flag (Petr Oros) [RHEL-15678] - ice: Fix VF-VF direction matching in drop rule in switchdev (Petr Oros) [RHEL-15678] - ice: Fix VF-VF filter rules in switchdev mode (Petr Oros) [RHEL-15678] - ice: Fix safe mode when DDP is missing (Petr Oros) [RHEL-15678] - ice: fix over-shifted variable (Petr Oros) [RHEL-15678] - ice: Remove the FW shared parameters (Petr Oros) [RHEL-15678] - ice: PTP: add clock domain number to auxiliary interface (Petr Oros) [RHEL-15678] - ice: Use PTP auxbus for all PHYs restart in E822 (Petr Oros) [RHEL-15678] - ice: Auxbus devices & driver for E822 TS (Petr Oros) [RHEL-15678] - ice: introduce ice_pf_src_tmr_owned (Petr Oros) [RHEL-15678] - ice: fix pin assignment for E810-T without SMA control (Petr Oros) [RHEL-15678] - ice: remove ICE_F_PTP_EXTTS feature flag (Petr Oros) [RHEL-15678] - ice: PTP: move quad value check inside ice_fill_phy_msg_e822 (Petr Oros) [RHEL-15678] - ice: PTP: Rename macros used for PHY/QUAD port definitions (Petr Oros) [RHEL-15678] - ice: PTP: Clean up timestamp registers correctly (Petr Oros) [RHEL-15678] - ice: introduce hw->phy_model for handling PTP PHY differences (Petr Oros) [RHEL-15678] - ice: Support cross-timestamping for E823 devices (Petr Oros) [RHEL-15678] - ice: retry acquiring hardware semaphore during cross-timestamp request (Petr Oros) [RHEL-15678] - ice: prefix clock timer command enumeration values with ICE_PTP (Petr Oros) [RHEL-15678] - ice: avoid executing commands on other ports when driving sync (Petr Oros) [RHEL-15678] - ice: fix receive buffer size miscalculation (Petr Oros) [RHEL-15678] - ice: split ice_aq_wait_for_event() func into two (Petr Oros) [RHEL-15678] - ice: embed &ice_rq_event_info event into struct ice_aq_task (Petr Oros) [RHEL-15678] - ice: ice_aq_check_events: fix off-by-one check when filling buffer (Petr Oros) [RHEL-15678] - ice: Remove redundant VSI configuration in eswitch setup (Petr Oros) [RHEL-15678] - ice: move E810T functions to before device agnostic ones (Petr Oros) [RHEL-15678] - ice: refactor ice_vsi_is_vlan_pruning_ena (Petr Oros) [RHEL-15678] - ice: refactor ice_ptp_hw to make functions static (Petr Oros) [RHEL-15678] - ice: refactor ice_sched to make functions static (Petr Oros) [RHEL-15678] - ice: refactor ice_vf_lib to make functions static (Petr Oros) [RHEL-15678] - ice: refactor ice_lib to make functions static (Petr Oros) [RHEL-15678] - ice: refactor ice_ddp to make functions static (Petr Oros) [RHEL-15678] - ice: remove unused methods (Petr Oros) [RHEL-15678] - ice: Block switchdev mode when ADQ is active and vice versa (Petr Oros) [RHEL-15678] - ice: clean up __ice_aq_get_set_rss_lut() (Petr Oros) [RHEL-15678] - ice: add FW load wait (Petr Oros) [RHEL-15678] - ice: Add get C827 PHY index function (Petr Oros) [RHEL-15678] - ice: Rename enum ice_pkt_flags values (Petr Oros) [RHEL-15678] - ice: Add direction metadata (Petr Oros) [RHEL-15678] - ice: Fix RDMA VSI removal during queue rebuild (Petr Oros) [RHEL-15678] - ice: Correctly initialize queue context values (Petr Oros) [RHEL-15678] - ice: Fix memory management in ice_ethtool_fdir.c (Petr Oros) [RHEL-15678] - ice: Implement basic eswitch bridge setup (Petr Oros) [RHEL-15678] - ice: Unset src prune on uplink VSI (Petr Oros) [RHEL-15678] - ice: Disable vlan pruning for uplink VSI (Petr Oros) [RHEL-15678] - ice: Prohibit rx mode change in switchdev mode (Petr Oros) [RHEL-15678] - ice: Skip adv rules removal upon switchdev release (Petr Oros) [RHEL-15678] - ice: use ice_down_up() where applicable (Petr Oros) [RHEL-15678] - ice: Remove managed memory usage in ice_get_fw_log_cfg() (Petr Oros) [RHEL-15678] - ice: clean up freeing SR-IOV VFs (Petr Oros) [RHEL-15678] - ice: reduce initial wait for control queue messages (Petr Oros) [RHEL-15678] - ice: remove unnecessary check for old MAC == new MAC (Petr Oros) [RHEL-15678] - ice: do not re-enable miscellaneous interrupt until thread_fn completes (Petr Oros) [RHEL-15678] - ice: trigger PFINT_OICR_TSYN_TX interrupt instead of polling (Petr Oros) [RHEL-15678] - ice: introduce ICE_TX_TSTAMP_WORK enumeration (Petr Oros) [RHEL-15678] - ice: always return IRQ_WAKE_THREAD in ice_misc_intr() (Petr Oros) [RHEL-15678] - ice: handle extts in the miscellaneous interrupt thread (Petr Oros) [RHEL-15678] - ice: use src VSI instead of src MAC in slow-path (Petr Oros) [RHEL-15678] - ice: allow matching on meta data (Petr Oros) [RHEL-15678] - ice: specify field names in ice_prot_ext init (Petr Oros) [RHEL-15678] - ice: remove redundant Rx field from rule info (Petr Oros) [RHEL-15678] - ice: define meta data to match in switch (Petr Oros) [RHEL-15678] - ice: refactor PHY type to ethtool link mode (Petr Oros) [RHEL-15678] - ice: update ICE_PHY_TYPE_HIGH_MAX_INDEX (Petr Oros) [RHEL-15678] - ice: call ice_is_malicious_vf() from ice_vc_process_vf_msg() (Petr Oros) [RHEL-15678] - ice: move ice_is_malicious_vf() to ice_virtchnl.c (Petr Oros) [RHEL-15678] - ice: print message if ice_mbx_vf_state_handler returns an error (Petr Oros) [RHEL-15678] - ice: pass mbxdata to ice_is_malicious_vf() (Petr Oros) [RHEL-15678] - ice: remove unnecessary &array[0] and just use array (Petr Oros) [RHEL-15678] - ice: always report VF overflowing mailbox even without PF VSI (Petr Oros) [RHEL-15678] - ice: declare ice_vc_process_vf_msg in ice_virtchnl.h (Petr Oros) [RHEL-15678] - ice: initialize mailbox snapshot earlier in PF init (Petr Oros) [RHEL-15678] - ice: merge ice_mbx_report_malvf with ice_mbx_vf_state_handler (Petr Oros) [RHEL-15678] - ice: remove ice_mbx_deinit_snapshot (Petr Oros) [RHEL-15678] - ice: move VF overflow message count into struct ice_mbx_vf_info (Petr Oros) [RHEL-15678] - ice: track malicious VFs in new ice_mbx_vf_info structure (Petr Oros) [RHEL-15678] - ice: convert ice_mbx_clear_malvf to void and use WARN (Petr Oros) [RHEL-15678] - ice: re-order ice_mbx_reset_snapshot function (Petr Oros) [RHEL-15678]- nfsd: lock_rename() needs both directories to live on the same fs (Jeffrey Layton) [RHEL-19591] - HID: check empty report_list in hid_validate_values() (Desnes Nunes) [RHEL-19237 RHEL-19260] {CVE-2023-1073} - ceph: do not print the whole xattr value if it's too long (Xiubo Li) [RHEL-16411] - libceph: fix potential use-after-free on linger ping and resends (Jay Shin) [RHEL-20390] - ceph: fix incorrect revoked caps assert in ceph_fill_file_size() (Xiubo Li) [RHEL-8003] - ceph: silence smatch warning in reconnect_caps_cb() (Xiubo Li) [RHEL-16410] - ceph: fix potential use-after-free bug when trimming caps (Xiubo Li) [RHEL-16410] - ceph: don't let check_caps skip sending responses for revoke msgs (Xiubo Li) [RHEL-16412] - ceph: issue a cap release immediately if no cap exists (Xiubo Li) [RHEL-16412] - ceph: trigger to flush the buffer when making snapshot (Xiubo Li) [RHEL-16412] - ceph: force updating the msg pointer in non-split case (Xiubo Li) [RHEL-16412] - ceph: flush cap releases when the session is flushed (Xiubo Li) [RHEL-16412] - ceph: reorder fields in 'struct ceph_snapid_map' (Xiubo Li) [RHEL-16412] - ceph: voluntarily drop Xx caps for requests those touch parent mtime (Xiubo Li) [RHEL-16412] - redhat/configs: Remove multi-buffer SHA configs (Štěpán Horáček) [RHEL-14477] - crypto: tcrypt - remove all multibuffer ahash tests (Štěpán Horáček) [RHEL-14477] - crypto: hash - Remove unused async iterators (Štěpán Horáček) [RHEL-14477] - crypto: x86 - remove SHA multibuffer routines and mcryptd (Štěpán Horáček) [RHEL-14477] - fs: group frequently accessed fields of struct super_block together (Miklos Szeredi) [RHEL-12504] - fanotify: add API to attach/detach super block mark (Miklos Szeredi) [RHEL-12504] - fsnotify: send path type events to group with super block marks (Miklos Szeredi) [RHEL-12504] - fsnotify: add super block object type (Miklos Szeredi) [RHEL-12504] - netfilter: nf_tables: set backend .flush always succeeds (Florian Westphal) [RHEL-1722] - netfilter: nft_set_pipapo: no need to call pipapo_deactivate() from flush (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix memleak when more than 255 elements expired (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disable toggling dormant table state more than once (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix table flag updates (Florian Westphal) [RHEL-1722] - netfilter: nftables: update table flags from the commit phase (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disallow element removal on anonymous sets (Florian Westphal) [RHEL-1722] - netfilter: nft_set_hash: try later when GC hits EAGAIN on iteration (Florian Westphal) [RHEL-1722] - netfilter: nft_set_pipapo: stop GC iteration if GC transaction allocation fails (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix nft_trans type confusion (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: defer gc run if previous batch is still pending (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix out of memory error handling (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: use correct lock to protect gc_list (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: GC transaction race with abort path (Florian Westphal) [RHEL-1722] - netfilter: nft_dynset: disallow object maps (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: GC transaction race with netns dismantle (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix GC transaction races with netns and netlink event exit path (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: don't fail inserts if duplicate has expired (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix kdoc warnings after gc rework (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix false-positive lockdep splat (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: remove busy mark and gc batch API (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: adapt set backend to use GC transaction API (Florian Westphal) [RHEL-1722] {CVE-2023-4244} - netfilter: nf_tables: GC transaction API to avoid race with control plane (Florian Westphal) [RHEL-1722] {CVE-2023-4244} - netfilter: nftables: rename set element data activation/deactivation functions (Florian Westphal) [RHEL-1722] - netfilter: nft_set_rbtree: skip elements in transaction from garbage collection (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: don't skip expired elements during walk (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix spurious set element insertion failure (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: report use refcount overflow (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: add nft_chain_add() (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disallow timeout for anonymous sets (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disallow updates of anonymous sets (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disallow element updates of bound anonymous sets (Florian Westphal) [RHEL-1722] - netfilter: nft_set_pipapo: .walk does not deal with generations (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: integrate pipapo into commit protocol (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: honor NLM_F_CREATE and NLM_F_EXCL in event notification (Florian Westphal) [RHEL-1722] - netfilter: nftables: add catch-all set element support (Florian Westphal) [RHEL-1722]- netlink: support extack in dump ->start() (Hangbin Liu) [RHEL-17272] - audit: don't WARN_ON_ONCE(!current->mm) in audit_exe_compare() (Artem Savkov) [RHEL-16009] - audit: don't take task_lock() in audit_exe_compare() code path (Artem Savkov) [RHEL-16009] - IB/ipoib: Fix mcast list locking (Daniel Vacek) [RHEL-19244] - RDMA/IPoIB: Fix error code return in ipoib_mcast_join (Daniel Vacek) [RHEL-19244] - ipvlan: Fix a reference count leak warning in ipvlan_ns_exit() (Davide Caratti) [RHEL-14290] - ipvlan: Fix return value of ipvlan_queue_xmit() (Davide Caratti) [RHEL-14290] - scsi: qedf: Do not touch __user pointer in qedf_dbg_fp_int_cmd_read() directly (Oleksandr Natalenko) [2228079] - scsi: qedf: Do not touch __user pointer in qedf_dbg_debug_cmd_read() directly (Oleksandr Natalenko) [2228079] - scsi: qedf: Do not touch __user pointer in qedf_dbg_stop_io_on_error_cmd_read() directly (Oleksandr Natalenko) [2228079] - xen/blkfront: fix memory allocation flags in blkfront_setup_indirect() (Vitaly Kuznetsov) [RHEL-15958] - xen-blkfront: switch kcalloc to kvcalloc for large array allocation (Vitaly Kuznetsov) [RHEL-15958] - xen-blkfront: fix kernel panic with negotiate_mq error path (Vitaly Kuznetsov) [RHEL-15958] - tracing/timerlat: Add user-space interface (Chris White) [RHEL-15142] - tracing/osnoise: Skip running osnoise if all instances are off (Chris White) [RHEL-15142] - tracing/osnoise: Switch from PF_NO_SETAFFINITY to migrate_disable (Chris White) [RHEL-15142] - tracing/timerlat: Always wakeup the timerlat thread (Chris White) [RHEL-15142] - tracing/osnoise: Fix notify new tracing_max_latency (Chris White) [RHEL-15142] - tracing/timerlat: Notify new max thread latency (Chris White) [RHEL-15142] - trace/osnoise: make use of the helper function kthread_run_on_cpu() (Chris White) [RHEL-15142] - kthread: add the helper function kthread_run_on_cpu() (Chris White) [RHEL-15142] - iavf: Fix iavf_shutdown to call iavf_remove instead iavf_close (Michal Schmidt) [RHEL-15675] - iavf: Handle ntuple on/off based on new state machines for flow director (Michal Schmidt) [RHEL-15675] - iavf: Introduce new state machines for flow director (Michal Schmidt) [RHEL-15675] - iavf: validate tx_coalesce_usecs even if rx_coalesce_usecs is zero (Michal Schmidt) [RHEL-15675] - iavf: delete the iavf client interface (Michal Schmidt) [RHEL-15675] - iavf: add a common function for undoing the interrupt scheme (Michal Schmidt) [RHEL-15675] - iavf: use unregister_netdev (Michal Schmidt) [RHEL-15675] - iavf: rely on netdev's own registered state (Michal Schmidt) [RHEL-15675] - iavf: fix the waiting time for initial reset (Michal Schmidt) [RHEL-15675] - iavf: in iavf_down, don't queue watchdog_task if comms failed (Michal Schmidt) [RHEL-15675] - iavf: simplify mutex_trylock+sleep loops (Michal Schmidt) [RHEL-15675] - iavf: fix comments about old bit locks (Michal Schmidt) [RHEL-15675] - iavf: in iavf_down, disable queues when removing the driver (Michal Schmidt) [RHEL-15675] - iavf: initialize waitqueues before starting watchdog_task (Michal Schmidt) [RHEL-15675] - iavf: delete unused iavf_mac_info fields (Michal Schmidt) [RHEL-15675] - iavf: fix format warnings (Michal Schmidt) [RHEL-15675] - iavf: fix string truncation warnings (Michal Schmidt) [RHEL-15675] - iavf: remove "inline" functions from iavf_txrx.c (Michal Schmidt) [RHEL-15675] - iavf: do not process adminq tasks when __IAVF_IN_REMOVE_TASK is set (Michal Schmidt) [RHEL-15675] - iavf: Fix promiscuous mode configuration flow messages (Michal Schmidt) [RHEL-15675] - iavf: fix FDIR rule fields masks validation (Michal Schmidt) [RHEL-15675] - iavf: fix potential races for FDIR filters (Michal Schmidt) [RHEL-15675] - iavf: check for removal state before IAVF_FLAG_PF_COMMS_FAILED (Michal Schmidt) [RHEL-15675] - iavf: fix potential deadlock on allocation failure (Michal Schmidt) [RHEL-15675] - iavf: Remove unnecessary aer.h include (Michal Schmidt) [RHEL-15675] - iavf: Remove redundant pci_enable_pcie_error_reporting() (Michal Schmidt) [RHEL-15675]- devres: handle zero size in devm_kmalloc() (Mark Langsdorf) [RHEL-1025 RHEL-14039] - cpufreq: ACPI: Prevent a warning when another frequency driver is loaded (Mark Langsdorf) [RHEL-1025] - cpufreq: drivers with target_index() must set freq_table (Mark Langsdorf) [RHEL-1025] - cpufreq: warn about invalid vals to scaling_max/min_freq interfaces (Mark Langsdorf) [RHEL-1025] - ACPI: cpufreq: Use platform devices to load ACPI PPC and PCC drivers (Mark Langsdorf) [RHEL-1025] - cpufreq: move to use bus_get_dev_root() (Mark Langsdorf) [RHEL-1025] - kbuild, cpufreq: remove MODULE_LICENSE in non-modules (Mark Langsdorf) [RHEL-1025] - cpufreq: Add __init annotation to module init funcs (Mark Langsdorf) [RHEL-1025] - cpufreq: intel_pstate: Add Tigerlake support in no-HWP mode (Mark Langsdorf) [RHEL-1025] - netfilter: nfnetlink_osf: avoid OOB read (Phil Sutter) [RHEL-12299] {CVE-2023-39189} - crypto: qat - add NULL pointer check (Vladis Dronov) [RHEL-19124] - crypto: qat - fix mutex ordering in adf_rl (Vladis Dronov) [RHEL-19124] - crypto: qat - fix error path in add_update_sla() (Vladis Dronov) [RHEL-19124] - crypto: qat - add sysfs_added flag for rate limiting (Vladis Dronov) [RHEL-19124] - crypto: qat - add sysfs_added flag for ras (Vladis Dronov) [RHEL-19124] - x86/speculation: Provide a debugfs file to dump SPEC_CTRL MSRs (Waiman Long) [RHEL-16845] - x86/idle: Disable IBRS entering mwait idle and enable it on wakeup (Waiman Long) [RHEL-16845] - intel_idle: Add ibrs_off module parameter to force-disable IBRS (Waiman Long) [RHEL-16845] - intel_idle: Use __update_spec_ctrl() in intel_idle_ibrs() (Waiman Long) [RHEL-16845] - x86/idle: Disable IBRS when CPU is offline to improve single-threaded performance (Waiman Long) [RHEL-16845] - x86/speculation: Add __update_spec_ctrl() helper (Waiman Long) [RHEL-16845] - cpuidle, intel_idle: Fix CPUIDLE_FLAG_IBRS (Waiman Long) [RHEL-16845] - igb: Fix potential memory leak in igb_add_ethtool_nfc_entry (Corinna Vinschen) [RHEL-15681] - igb: Fix an end of loop test (Corinna Vinschen) [RHEL-15681] - igb: replace deprecated strncpy with strscpy (Corinna Vinschen) [RHEL-15681] - intel: fix format warnings (Corinna Vinschen) [RHEL-15681] - intel: fix string truncation warnings (Corinna Vinschen) [RHEL-15681] - ethernet/intel: Use list_for_each_entry() helper (Corinna Vinschen) [RHEL-15681] - igb: clean up in all error paths when enabling SR-IOV (Corinna Vinschen) [RHEL-15681] - igb: Change IGB_MIN to allow set rx/tx value between 64 and 80 (Corinna Vinschen) [RHEL-15681] - igb: disable virtualization features on 82580 (Corinna Vinschen) [RHEL-15681] - igb: Avoid starting unnecessary workqueues (Corinna Vinschen) [RHEL-15681] - igb: Fix igb_down hung on surprise removal (Corinna Vinschen) [RHEL-15681] - igb: Enable SR-IOV after reinit (Corinna Vinschen) [RHEL-15681] - bpf: Mark PTR_TO_FUNC register initially with zero offset (Viktor Malik) [RHEL-8477 RHEL-8926] {CVE-2021-4204} - bpf: Fix out of bounds access for ringbuf helpers (Viktor Malik) [RHEL-8477 RHEL-8926] {CVE-2021-4204} - bpf: Generally fix helper register offset check (Viktor Malik) [RHEL-8477 RHEL-8926] {CVE-2021-4204} - bpf: Generalize check_ctx_reg for reuse with other types (Viktor Malik) [RHEL-8477 RHEL-8926] {CVE-2021-4204} - bpf: Check PTR_TO_MEM | MEM_RDONLY in check_helper_mem_access (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Fix crash due to out of bounds access into reg2btf_ids. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Add MEM_RDONLY for helper args that are pointers to rdonly mem. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Make per_cpu_ptr return rdonly PTR_TO_MEM. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Convert PTR_TO_MEM_OR_NULL to composable types. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Introduce MEM_RDONLY flag (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Replace PTR_TO_XXX_OR_NULL with PTR_TO_XXX | PTR_MAYBE_NULL (Viktor Malik) [RHEL-8473 RHEL-8476 RHEL-8925 RHEL-9037] {CVE-2022-0500 CVE-2022-23222} - bpf: Replace RET_XXX_OR_NULL with RET_XXX | PTR_MAYBE_NULL (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Replace ARG_XXX_OR_NULL with ARG_XXX | PTR_MAYBE_NULL (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Introduce composable reg, ret and arg types. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - ipmi: Explicitly include correct DT includes (Tony Camuso) [RHEL-14570] - ipmi_si: fix -Wvoid-pointer-to-enum-cast warning (Tony Camuso) [RHEL-14570] - ipmi: fix potential deadlock on &kcs_bmc->lock (Tony Camuso) [RHEL-14570] - ipmi_si: fix a memleak in try_smi_init() (Tony Camuso) [RHEL-14570] - ipmi: Change request_module to request_module_nowait (Tony Camuso) [RHEL-14570] - ipmi:ssif: Fix a memory leak when scanning for an adapter (Tony Camuso) [RHEL-14570] - ipmi:ssif: Add check for kstrdup (Tony Camuso) [RHEL-14570] - ipmi_watchdog: Fix read syscall not responding to signals during sleep (Tony Camuso) [RHEL-14570] - ipmi:ssif: Drop if blocks with always false condition (Tony Camuso) [RHEL-14570] - ipmi: fix SSIF not responding under certain cond. (Tony Camuso) [RHEL-14570] - ipmi:ssif: Add send_retries increment (Tony Camuso) [RHEL-14570] - char:ipmi:Fix spelling mistake "asychronously" -> "asynchronously" (Tony Camuso) [RHEL-14570] - ipmi: simplify sysctl registration (Tony Camuso) [RHEL-14570] - ipmi: ASPEED_BT_IPMI_BMC: select REGMAP_MMIO instead of depending on it (Tony Camuso) [RHEL-14570] - bnxt_en: fix free-runnig PHC mode (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - eth: bnxt: handle invalid Tx completions more gracefully (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - eth: bnxt: take the bit to set as argument of bnxt_queue_sp_work() (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - eth: bnxt: move and rename reset helpers (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: don't handle XDP in netpoll (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Implement .set_port / .unset_port UDP tunnel callbacks (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Prevent kernel panic when receiving unexpected PHC_UPDATE event (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Skip firmware fatal error recovery if chip is not accessible (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Query default VLAN before VNIC setup on a VF (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Don't issue AP reset during ethtool's reset operation (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Fix bnxt_hwrm_update_rss_hash_cfg() (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Do not initialize PTP on older P3/P4 chips (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Add missing 200G link speed reporting (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Fix typo in PCI id to device description string mapping (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Fix reporting of test result in ethtool selftest (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: Enforce PTP software freq adjustments only when in non-RTC mode (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: Defer PTP initialization to after querying function caps (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: Change fw_cap to u64 to accommodate more capability bits (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: avoid overflow in bnxt_get_nvram_directory() (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: reset PHC frequency in free-running mode (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Avoid order-5 memory allocation for TPA data (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - ptp: bnxt: convert .adjfreq to .adjfine (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Add a non-real time mode to access NIC clock (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - igc: Fix ambiguity in the ethtool advertising (Corinna Vinschen) [RHEL-15680] - igc: replace deprecated strncpy with strscpy (Corinna Vinschen) [RHEL-15680] - intel: fix format warnings (Corinna Vinschen) [RHEL-15680] - igc: Expose tx-usecs coalesce setting to user (Corinna Vinschen) [RHEL-15680] - igc: Fix infinite initialization loop with early XDP redirect (Corinna Vinschen) [RHEL-15680] - igc: Change IGC_MIN to allow set rx/tx value between 64 and 80 (Corinna Vinschen) [RHEL-15680] - igc: Decrease PTM short interval from 10 us to 1 us (Corinna Vinschen) [RHEL-15680] - igc: Add support for multiple in-flight TX timestamps (Corinna Vinschen) [RHEL-15680] - igc: Fix the typo in the PTM Control macro (Corinna Vinschen) [RHEL-15680] - igc: Add lock to safeguard global Qbv variables (Corinna Vinschen) [RHEL-15680] - eth: add missing xdp.h includes in drivers (Corinna Vinschen) [RHEL-15680] - igc: Fix Kernel Panic during ndo_tx_timeout callback (Corinna Vinschen) [RHEL-15680] - igc: Prevent garbled TX queue with XDP ZEROCOPY (Corinna Vinschen) [RHEL-15680] - igc: Fix inserting of empty frame for launchtime (Corinna Vinschen) [RHEL-15680] - igc: Fix launchtime before start of cycle (Corinna Vinschen) [RHEL-15680] - igc: No strict mode in pure launchtime/CBS offload (Corinna Vinschen) [RHEL-15680] - igc: Handle already enabled taprio offload for basetime 0 (Corinna Vinschen) [RHEL-15680] - igc: Do not enable taprio offload for invalid arguments (Corinna Vinschen) [RHEL-15680] - igc: Rename qbv_enable to taprio_offload_enable (Corinna Vinschen) [RHEL-15680] - igc: Handle PPS start time programming for past time values (Corinna Vinschen) [RHEL-15680] - igc: Include the length/type field and VLAN tag in queueMaxSDU (Corinna Vinschen) [RHEL-15680] - igc: set TP bit in 'supported' and 'advertising' fields of ethtool_link_ksettings (Corinna Vinschen) [RHEL-15680] - igc: Fix TX Hang issue when QBV Gate is closed (Corinna Vinschen) [RHEL-15680] - igc: Remove delay during TX ring configuration (Corinna Vinschen) [RHEL-15680] - igc: Add condition for qbv_config_change_errors counter (Corinna Vinschen) [RHEL-15680] - igc: Work around HW bug causing missing timestamps (Corinna Vinschen) [RHEL-15680] - igc: Retrieve TX timestamp during interrupt handling (Corinna Vinschen) [RHEL-15680] - igc: Check if hardware TX timestamping is enabled earlier (Corinna Vinschen) [RHEL-15680] - igc: Fix race condition in PTP tx code (Corinna Vinschen) [RHEL-15680] - igc: Remove unnecessary aer.h include (Corinna Vinschen) [RHEL-15680] - igc: Clean up and optimize watchdog task (Corinna Vinschen) [RHEL-15680] - igc: offload queue max SDU from tc-taprio (Corinna Vinschen) [RHEL-15680] - igc: Add qbv_config_change_errors counter (Corinna Vinschen) [RHEL-15680]- s390/pci: fix iommu bitmap allocation (Tobias Huschle) [RHEL-18202] - net/smc: Fix pos miscalculation in statistics (Tobias Huschle) [RHEL-18203] - ibmveth: Remove condition to recompute TCP header checksum. (Mamatha Inamdar) [RHEL-12553] - net: thunderx: Fix the ACPI memory leak (Maurizio Lombardi) [RHEL-18244] - null_blk: Always check queue mode setting from configfs (Ming Lei) [RHEL-18182] - drivers: net: slip: fix NPD bug in sl_tx_timeout() (Michal Schmidt) [RHEL-6655] {CVE-2022-41858} - mm: thp: replace DEBUG_VM BUG with VM_WARN when unmap fails for split (David Hildenbrand) [RHEL-8517] - net/tls: do not free tls_rec on async operation in bpf_exec_tx_verdict() (Sabrina Dubroca) [RHEL-16720] {CVE-2023-6176} - nfp: fix use-after-free in area_cache_get() (Ricardo Robaina) [RHEL-6567] {CVE-2022-3545} - igb: set max size RX buffer when store bad packet is enabled (Wander Lairson Costa) [RHEL-15188] {CVE-2023-45871} - igbvf: replace deprecated strncpy with strscpy (Corinna Vinschen) [RHEL-15679] - igbvf: Change IGBVF_MIN to allow set rx/tx value between 64 and 80 (Corinna Vinschen) [RHEL-15679] - ixgbe: Fix panic during XDP_TX with > 64 CPUs (Ken Cox) [RHEL-15682] - ixgbe: Enable setting RSS table to default values (Ken Cox) [RHEL-15682] - ixgbe: Allow flow hash to be set via ethtool (Ken Cox) [RHEL-15682] - vsock/virtio: remove socket from connected/bound list on shutdown (Stefano Garzarella) [RHEL-17877] - vsock/virtio: initialize the_virtio_vsock before using VQs (Stefano Garzarella) [RHEL-17877] - vsock: send SIGPIPE on write to shutdowned socket (Stefano Garzarella) [RHEL-17877] - vsock/virtio: factor our the code to initialize and delete VQs (Stefano Garzarella) [RHEL-17877] - virtio-net: fix for skb_over_panic inside big mode (Laurent Vivier) [RHEL-7165] - virtio-net: fix pages leaking when building skb in big mode (Laurent Vivier) [RHEL-7165] - virtio_net: fix wrong buf address calculation when using xdp (Laurent Vivier) [RHEL-7165] - virtio_net: get build_skb() buf by data ptr (Laurent Vivier) [RHEL-7165] - virtio-net: fix for unable to handle page fault for address (Laurent Vivier) [RHEL-7165] - scsi: qedi: Remove unused declarations (Nilesh Javali) [RHEL-9860] - scsi: qedi: Fix firmware halt over suspend and resume (Nilesh Javali) [RHEL-9860] - scsi: qedi: Fix potential deadlock on &qedi_percpu->p_work_lock (Nilesh Javali) [RHEL-9860] - scsi: qedi: Replace all non-returning strlcpy with strscpy (Nilesh Javali) [RHEL-9860] - scsi: qedi: Fix use after free bug in qedi_remove() (Nilesh Javali) [RHEL-9860] - scsi: qedi: Remove unneeded version.h include (Nilesh Javali) [RHEL-9860] - perf/x86/amd/uncore: Pass through error code for initialization failures, instead of -ENODEV (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Fix uninitialized return value in amd_uncore_init() (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Add memory controller support (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Add group exclusivity (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Use rdmsr if rdpmc is unavailable (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Move discovery and registration (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Refactor uncore management (Michael Petlan) [RHEL-9993] - RDMA/hfi1: Workaround truncation compilation error (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Fix potential deadlock on &irq_src_lock and &dd->uctxt_lock (Izabela Bakollari) [RHEL-18211] - RDMA/hfi1: Remove redundant assignment to pointer ppd (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Replace deprecated strncpy (Izabela Bakollari) [RHEL-18211] - RDMA/hfi1: Use FIELD_GET() to extract Link Width (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Reduce printing of errors during driver shut down (Izabela Bakollari) [RHEL-18211] - RDMA/hfi1: Use list_for_each_entry() helper (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Fix possible panic during hotplug remove (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Use struct_size() (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Suppress useless compiler warnings (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Remove trace newlines (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Drop redundant pci_enable_pcie_error_reporting() (Izabela Bakollari) [RHEL-18211] - IB/hifi1: add a null check of kzalloc_node in hfi1_ipoib_txreq_init (Izabela Bakollari) [RHEL-18211]- Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb (David Marlin) [RHEL-1231] {CVE-2023-40283} - amd_hsmp: Add HSMP protocol version 5 messages (John Allen) [2072238] - KVM: s390/mm: Properly reset no-dat (Cédric Le Goater) [RHEL-17383] - KVM: s390: vsie: fix wrong VIR 37 when MSO is used (Cédric Le Goater) [RHEL-17383] - nvme-rdma: fix typo in comment (Kamal Heib) [RHEL-10968] - nvme-rdma: minor cleanup in nvme_rdma_create_cq() (Kamal Heib) [RHEL-10968] - scsi: iscsi_tcp: Fix UAF during login when accessing the shost ipaddress (Chris Leech) [RHEL-8200 RHEL-8992] {CVE-2023-2162} - scsi: iscsi_tcp: Fix UAF during logout when accessing the shost ipaddress (Chris Leech) [RHEL-8200 RHEL-8992] {CVE-2023-2162} - ibmveth: Reduce default tx queues to 8 (Mamatha Inamdar) [RHEL-11209] - ibmveth: Ethtool set queue support (Mamatha Inamdar) [RHEL-11209] - ibmveth: Implement multi queue on xmit (Mamatha Inamdar) [RHEL-11209] - ibmveth: Copy tx skbs into a premapped buffer (Mamatha Inamdar) [RHEL-11209] - ibmveth: Use dma_alloc_coherent() instead of kmalloc/dma_map_single() (Mamatha Inamdar) [RHEL-11209] - vt: keyboard, reorder user buffer handling in vt_do_kdgkb_ioctl (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, rename i to kb_func in vt_do_kdgkb_ioctl (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, use bool for rep (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, union perm checks in vt_do_kdsk_ioctl (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, extract vt_kdgkbent and vt_kdskbent (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, sort includes (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, include linux/spinlock.h (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, extend func_buf_lock to readers (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, simplify vt_kdgkbsent (John W. Linville) [RHEL-3015] {CVE-2020-25656} - tty/vt: fix write/write race in ioctl(KDSKBSENT) handler (John W. Linville) [RHEL-3015] {CVE-2020-25656} - tty: keyboard, do not speculate on func_table index (John W. Linville) [RHEL-3015] {CVE-2020-25656} - Bluetooth: RFCOMM: Fix possible deadlock on socket shutdown/release (David Marlin) [RHEL-17716] - Bluetooth: fix dangling sco_conn and use-after-free in sco_sock_timeout (David Marlin) [RHEL-17716] - bluetooth: use dev_addr_set() (David Marlin) [RHEL-17716] - bluetooth: use eth_hw_addr_set() (David Marlin) [RHEL-17716] - Bluetooth: Rename driver .prevent_wake to .wakeup (David Marlin) [RHEL-17716] - Bluetooth: btrtl: Ask ic_info to drop firmware (David Marlin) [RHEL-17716] - Bluetooth: btusb: Add support for TP-Link UB500 Adapter (David Marlin) [RHEL-17716] - Bluetooth: hci_sock: Replace use of memcpy_from_msg with bt_skb_sendmsg (David Marlin) [RHEL-17716] - Bluetooth: btrtl: Add support for MSFT extension to rtl8821c devices (David Marlin) [RHEL-17716] - Bluetooth: hci_vhci: Add force_prevent_wake entry (David Marlin) [RHEL-17716] - Bluetooth: hci_vhci: Add force_suspend entry (David Marlin) [RHEL-17716] - Bluetooth: Make use of hci_{suspend,resume}_dev on suspend notifier (David Marlin) [RHEL-17716] - Bluetooth: btrsi: remove superfluous header files from btrsi.c (David Marlin) [RHEL-17716] - Bluetooth: btrtl: Set VsMsftOpCode based on device table (David Marlin) [RHEL-17716] - Bluetooth: Fix handling of experimental feature for codec offload (David Marlin) [RHEL-17716] - Bluetooth: Fix handling of experimental feature for quality reports (David Marlin) [RHEL-17716] - Bbluetooth: btusb: Add another Bluetooth part for Realtek 8852AE (David Marlin) [RHEL-17716] - Bluetooth: btrtl: enable Realtek 8822C/8852A to support AOSP extension (David Marlin) [RHEL-17716] - Bluetooth: hci_qca: enable Qualcomm WCN399x for AOSP extension (David Marlin) [RHEL-17716] - Bluetooth: Apply missing portion of previously applied commit to correct context. (David Marlin) [RHEL-17716] - Bluetooth: Fix wrong opcode when LL privacy enabled (David Marlin) [RHEL-17716] - Bluetooth: Fix Advertisement Monitor Suspend/Resume (David Marlin) [RHEL-17716] - Bluetooth: hci_h5: directly return hci_uart_register_device() ret-val (David Marlin) [RHEL-17716] - Bluetooth: hci_h5: Fix (runtime)suspend issues on RTL8723BS HCIs (David Marlin) [RHEL-17716] - Bluetooth: hci_core: Move all debugfs handling to hci_debugfs.c (David Marlin) [RHEL-17716] - Bluetooth: btmtkuart: fix a memleak in mtk_hci_wmt_sync (David Marlin) [RHEL-17716] - Bluetooth: hci_ldisc: require CAP_NET_ADMIN to attach N_HCI ldisc (David Marlin) [RHEL-17716] - Bluetooth: btusb: Add gpio reset way for qca btsoc in cmd_timeout (David Marlin) [RHEL-17716] - Bluetooth: Fix passing NULL to PTR_ERR (David Marlin) [RHEL-17716] - Bluetooth: hci_sock: Add support for BT_{SND,RCV}BUF (David Marlin) [RHEL-17716] - Bluetooth: eir: Move EIR/Adv Data functions to its own file (David Marlin) [RHEL-17716] - Bluetooth: RFCOMM: Replace use of memcpy_from_msg with bt_skb_sendmmsg (David Marlin) [RHEL-17716] - Bluetooth: Add bt_skb_sendmmsg helper (David Marlin) [RHEL-17716] - Bluetooth: hci_uart: fix GPF in h5_recv (David Marlin) [RHEL-17716] - Bluetooth: btintel: Fix incorrect out of memory check (David Marlin) [RHEL-17716] - Bluetooth: Keep MSFT ext info throughout a hci_dev's life cycle (David Marlin) [RHEL-17716] - Bluetooth: hci_vhci: Add support for offload codecs over SCO (David Marlin) [RHEL-17716] - Bluetooth: Allow usb to auto-suspend when SCO use non-HCI transport (David Marlin) [RHEL-17716] - Bluetooth: Add offload feature under experimental flag (David Marlin) [RHEL-17716] - Bluetooth: Add support for msbc coding format (David Marlin) [RHEL-17716] - Bluetooth: btintel: Define a callback to fetch codec config data (David Marlin) [RHEL-17716] - Bluetooth: Configure codec for HFP offload use case (David Marlin) [RHEL-17716] - Bluetooth: Add support for HCI_Enhanced_Setup_Synchronous_Connection command (David Marlin) [RHEL-17716] - Bluetooth: Allow setting of codec for HFP offload use case (David Marlin) [RHEL-17716] - Bluetooth: btintel: Define callback to fetch data_path_id (David Marlin) [RHEL-17716] - Bluetooth: Allow querying of supported offload codecs over SCO socket (David Marlin) [RHEL-17716] - Bluetooth: btintel: Read supported offload use cases (David Marlin) [RHEL-17716] - Bluetooth: Add support for Read Local Supported Codecs V2 (David Marlin) [RHEL-17716] - Bluetooth: Enumerate local supported codec and cache details (David Marlin) [RHEL-17716] - Bluetooth: fix init and cleanup of sco_conn.timeout_work (David Marlin) [RHEL-17716] - Bluetooth: call sock_hold earlier in sco_conn_del (David Marlin) [RHEL-17716] - Bluetooth: btusb: Add support for IMC Networks Mediatek Chip(MT7921) (David Marlin) [RHEL-17716] - Bluetooth: btusb: Add the new support ID for Realtek RTL8852A (David Marlin) [RHEL-17716] - Bluetooth: btintel: Read boot address irrespective of controller mode (David Marlin) [RHEL-17716] - Bluetooth: btintel: Fix boot address (David Marlin) [RHEL-17716] - Bluetooth: Fix using RPA when address has been resolved (David Marlin) [RHEL-17716] - Bluetooth: Fix using address type from events (David Marlin) [RHEL-17716] - Bluetooth: Fix enabling advertising for central role (David Marlin) [RHEL-17716] - Bluetooth: set quality report callback for Intel (David Marlin) [RHEL-17716] - Bluetooth: Support the quality report events (David Marlin) [RHEL-17716] - Bluetooth: refactor set_exp_feature with a feature table (David Marlin) [RHEL-17716] - Bluetooth: btintel: support link statistics telemetry events (David Marlin) [RHEL-17716] - Bluetooth: btusb: disable Intel link statistics telemetry events (David Marlin) [RHEL-17716] - Bluetooth: mgmt: Disallow legacy MGMT_OP_READ_LOCAL_OOB_EXT_DATA (David Marlin) [RHEL-17716] - Bluetooth: reorganize functions from hci_sock_sendmsg() (David Marlin) [RHEL-17716] - crypto: qat - prevent underflow in rp2srv_store() (Vladis Dronov) [RHEL-15642] - crypto: qat - fix deadlock in backlog processing (Vladis Dronov) [RHEL-15642] - crypto: qat - move adf_cfg_services (Vladis Dronov) [RHEL-15642] - crypto: qat - add num_rps sysfs attribute (Vladis Dronov) [RHEL-15642] - crypto: qat - add rp2svc sysfs attribute (Vladis Dronov) [RHEL-15642] - crypto: qat - add rate limiting sysfs interface (Vladis Dronov) [RHEL-15642] - crypto: qat - add rate limiting feature to qat_4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - add retrieval of fw capabilities (Vladis Dronov) [RHEL-15642] - crypto: qat - add bits.h to icp_qat_hw.h (Vladis Dronov) [RHEL-15642] - crypto: qat - move admin api (Vladis Dronov) [RHEL-15642] - crypto: qat - fix ring to service map for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - use masks for AE groups (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor fw config related functions (Vladis Dronov) [RHEL-15642] - crypto: qat - count QAT GEN4 errors (Vladis Dronov) [RHEL-15642] - crypto: qat - add error counters (Vladis Dronov) [RHEL-15642] - crypto: qat - add handling of errors from ERRSOU3 for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add adf_get_aram_base() helper function (Vladis Dronov) [RHEL-15642] - crypto: qat - add handling of compression related errors for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add handling of errors from ERRSOU2 for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add reporting of errors from ERRSOU1 for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add reporting of correctable errors for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add infrastructure for error reporting (Vladis Dronov) [RHEL-15642] - crypto: qat - fix double free during reset (Vladis Dronov) [RHEL-15642] - crypto: qat - add cnv_errors debugfs file (Vladis Dronov) [RHEL-15642] - crypto: qat - add pm_status debugfs file (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor included headers (Vladis Dronov) [RHEL-15642] - crypto: qat - Remove zlib-deflate (Vladis Dronov) [RHEL-15642] - crypto: qat - increase size of buffers (Vladis Dronov) [RHEL-15642] - crypto: qat - enable dc chaining service (Vladis Dronov) [RHEL-15642] - crypto: qat - consolidate services structure (Vladis Dronov) [RHEL-15642] - crypto: qat - fix unregistration of compression algorithms (Vladis Dronov) [RHEL-15642] - crypto: qat - fix unregistration of crypto algorithms (Vladis Dronov) [RHEL-15642] - crypto: qat - ignore subsequent state up commands (Vladis Dronov) [RHEL-15642] - crypto: qat - do not shadow error code (Vladis Dronov) [RHEL-15642] - crypto: qat - fix state machines cleanup paths (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor deprecated strncpy (Vladis Dronov) [RHEL-15642] - crypto: qat - Use list_for_each_entry() helper (Vladis Dronov) [RHEL-15642] - Documentation: ABI: debugfs-driver-qat: fix fw_counters path (Vladis Dronov) [RHEL-15642] - crypto: qat - fix crypto capability detection for 4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - Remove unused function declarations (Vladis Dronov) [RHEL-15642] - crypto: qat - use kfree_sensitive instead of memset/kfree() (Vladis Dronov) [RHEL-15642] - crypto: qat - replace the if statement with min() (Vladis Dronov) [RHEL-15642] - crypto: qat - add heartbeat counters check (Vladis Dronov) [RHEL-15642] - crypto: qat - add heartbeat feature (Vladis Dronov) [RHEL-15642] - crypto: qat - add measure clock frequency (Vladis Dronov) [RHEL-15642] - crypto: qat - drop obsolete heartbeat interface (Vladis Dronov) [RHEL-15642] - crypto: qat - add internal timer for qat 4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - add fw_counters debugfs file (Vladis Dronov) [RHEL-15642] - crypto: qat - change value of default idle filter (Vladis Dronov) [RHEL-15642] - crypto: qat - do not export adf_init_admin_pm() (Vladis Dronov) [RHEL-15642] - crypto: qat - expose pm_idle_enabled through sysfs (Vladis Dronov) [RHEL-15642] - crypto: qat - extend configuration for 4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor fw config logic for 4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - make fw images name constant (Vladis Dronov) [RHEL-15642] - crypto: qat - move returns to default case (Vladis Dronov) [RHEL-15642] - crypto: qat - unmap buffers before free for RSA (Vladis Dronov) [RHEL-15642] - crypto: qat - unmap buffer before free for DH (Vladis Dronov) [RHEL-15642] - crypto: qat - update slice mask for 4xxx devices (Vladis Dronov) [RHEL-15642] - crypto: qat - set deprecated capabilities as reserved (Vladis Dronov) [RHEL-15642] - crypto: qat - add missing function declaration in adf_dbgfs.h (Vladis Dronov) [RHEL-15642] - crypto: qat - move dbgfs init to separate file (Vladis Dronov) [RHEL-15642] - crypto: qat - drop redundant adf_enable_aer() (Vladis Dronov) [RHEL-15642] - crypto: qat - fix apply custom thread-service mapping for dc service (Vladis Dronov) [RHEL-15642] - crypto: qat - make state machine functions static (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor device restart logic (Vladis Dronov) [RHEL-15642] - crypto: qat - replace state machine calls (Vladis Dronov) [RHEL-15642] - crypto: qat - fix concurrency issue when device state changes (Vladis Dronov) [RHEL-15642] - crypto: qat - delay sysfs initialization (Vladis Dronov) [RHEL-15642] - crypto: qat - Include algapi.h for low-level Crypto API (Vladis Dronov) [RHEL-15642] - crypto: rsa-pkcs1pad - Use helper to set reqsize (Vladis Dronov) [RHEL-15642] - units: Add BYTES_PER_*BIT (Vladis Dronov) [RHEL-15642]- netfilter: xt_sctp: validate the flag_info count (Wander Lairson Costa) [RHEL-11728] {CVE-2023-39193} - nvmet: nul-terminate the NQNs passed in the connect command (Maurizio Lombardi) [RHEL-16690] {CVE-2023-6121} - x86/speculation: Mark all Skylake CPUs as vulnerable to GDS (Waiman Long) [RHEL-3876] - gve: Fix GFP flags when allocing pages (Izabela Bakollari) [2140228] - Fix double fget() in vhost_net_set_backend() (Jon Maloy) [RHEL-7162] {CVE-2023-1838} - mptcp: fix disconnect vs accept race (Davide Caratti) [RHEL-15347] - mptcp: fix accept vs worker race (Davide Caratti) [RHEL-15347] - mptcp: stops worker on unaccepted sockets at listener close (Davide Caratti) [RHEL-15347] - mptcp: fix UaF in listener shutdown (Davide Caratti) [RHEL-15347] - mptcp: fix lockdep false positive (Davide Caratti) [RHEL-15347] - mptcp: use the workqueue to destroy unaccepted sockets (Davide Caratti) [RHEL-15347] - mptcp: refactor passive socket initialization (Davide Caratti) [RHEL-15347] - mptcp: set msk local address earlier (Davide Caratti) [RHEL-15347] - mptcp: fix possible list corruption on passive MPJ (Davide Caratti) [RHEL-15347] - mptcp: fix possible deadlock in subflow_error_report (Davide Caratti) [RHEL-15347] - dmaengine: idxd: Modify the dependence of attribute pasid_enabled (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioatdma: use pci_dev_id() to simplify the code (Jerry Snitselaar) [RHEL-10101] - dmaengine: Simplify dma_async_device_register() (Jerry Snitselaar) [RHEL-10101] - dmaengine: qcom: hidma_mgmt: Use devm_platform_get_and_ioremap_resource() (Jerry Snitselaar) [RHEL-10101] - dmaengine: qcom_hidma: Use devm_platform_get_and_ioremap_resource() (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioat: fixing the wrong dma_dev->chancnt (Jerry Snitselaar) [RHEL-10101] - dmaengine: hidma: Don't set chancnt (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioat: Free up __cleanup() name (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: Fix passing freed memory in idxd_cdev_open() (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: make misc interrupt one shot (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioat: Drop redundant pci_enable_pcie_error_reporting() (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioat: use PCI core macros for PCIe Capability (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: Allow ATS disable update only for configurable devices (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: Expose ATS disable knob only when WQ ATS is supported (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: Simplify WQ attribute visibility checks (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: use spin_lock_irqsave before wait_event_lock_irq (Jerry Snitselaar) [RHEL-10101] - dmaengine: Actually use devm_add_action_or_reset() (Jerry Snitselaar) [RHEL-10101] - clk: fix leak on devm_clk_bulk_get_all() unwind (Jerry Snitselaar) [RHEL-10101] - drm/amdgpu: Fix possible null pointer dereference (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/amdgpu: Fix possible null pointer dereference (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Keep a gem reference to user bos in surfaces (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: fix typo of sizeof argument (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Fix possible invalid drm gem put calls (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Fix shader stage validation (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: remove unused vmw_overlay function (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Fix Legacy Display Unit atomic drm support (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Print errors when running on broken/unsupported configs (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Drop mksstat_init_record fn as currently unused (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Fix src/dst_pitch confusion (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Replace one-element array with flexible-array member (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Do not drop the reference to the handle too soon (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Stop accessing buffer objects which failed init (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Make the driver work without the dummy resources (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Stop using raw ttm_buffer_object's (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Abstract placement selection (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Rename dummy to is_iomem (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Cleanup the vmw bo usage in the cursor paths (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Simplify fb pinning (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Rename vmw_buffer_object to vmw_bo (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Remove the duplicate bo_free function (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Use the common gem mmap instead of the custom code (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/radeon: handle NULL bo->resource in move callback (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/qxl: handle NULL bo->resource in move callback (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/gem-vram: handle NULL bo->resource in move callback (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/ttm: prevent moving of pinned BOs (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/ttm: stop allocating a dummy resource for pipelined gutting (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/ttm: stop allocating dummy resources during BO creation (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/ttm: clear the ttm_tt when bo->resource is NULL (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/i915/ttm: audit remaining bo->resource (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - Revert "drm/vmwgfx: Stop accessing buffer objects which failed init" (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - Revert "drm/vmwgfx: Do not drop the reference to the handle too soon" (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - Revert "drm/vmwgfx: Fix Legacy Display Unit atomic drm support" (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - ACPI: NFIT: Fix incorrect calculation of idt size (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add IRQ override quirk for LG UltraPC 17U70P (Mark Langsdorf) [RHEL-1021] - ACPI: property: Support strings in Apple _DSM props (Mark Langsdorf) [RHEL-1021] - ACPI: x86: utils: Remove Lenovo Yoga Tablet 2's MAGN0001 (Mark Langsdorf) [RHEL-1021] - ACPI: PM: Do not turn of unused power resources on the Toshiba Click Mini (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Add 80862289 ACPI _HID for second PWM controller on Cherry Trail (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Ensure that notify handlers are not running after removal (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Add missing braces to acpi_sb_notify() (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on ASUS ExpertBook B1502CBA (Mark Langsdorf) [RHEL-1021] - ACPI: x86: utils: Add Picasso to the list for forcing StorageD3Enable (Mark Langsdorf) [RHEL-1021] - ACPICA: ACPICA: check null return of ACPI_ALLOCATE_ZEROED in acpi_db_display_objects (Mark Langsdorf) [RHEL-1021] - ACPICA: acpi_madt_oem_data: Fix flexible array member definition (Mark Langsdorf) [RHEL-1021] - ACPICA: acpi_dmar_andd: Replace 1-element array with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: acpi_pci_routing_table: Replace fixed-size array with flex array member (Mark Langsdorf) [RHEL-1021] - ACPICA: struct acpi_resource_dma: Replace 1-element array with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: actbl1: Replace 1-element arrays with flexible arrays (Mark Langsdorf) [RHEL-1021] - ACPICA: struct acpi_resource_vendor: Replace 1-element array with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: acpi_resource_irq: Replace 1-element arrays with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: struct acpi_nfit_interleave: Replace 1-element array with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: load of misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within null pointer (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: applying zero offset to null pointer (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: load of misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: actbl2: Replace 1-element arrays with flexible arrays (Mark Langsdorf) [RHEL-1021] - ACPICA: Introduce ACPI_FLEX_ARRAY (Mark Langsdorf) [RHEL-1021] - ACPICA: add support for ClockInput resource (v6.5) (Mark Langsdorf) [RHEL-1021] - ACPICA: Update all copyrights/signons to 2023 (Mark Langsdorf) [RHEL-1021] - ACPICA: acpisrc: Add missing tables to astable (Mark Langsdorf) [RHEL-1021] - ACPICA: Add missing macro ACPI_FUNCTION_TRACE() for acpi_ns_repair_HID() (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Fix oops when removing custom query handlers (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Limit explicit removal of query handlers to custom query handlers (Mark Langsdorf) [RHEL-1021] - ACPI: SPCR: Amend indentation (Mark Langsdorf) [RHEL-1021] - ACPI: property: Refactor acpi_data_prop_read_single() (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: EINJ: warn on invalid argument when explicitly indicated by platform (Mark Langsdorf) [RHEL-1021] - ACPI: sysfs: Enable ACPI sysfs support for CCEL records (Mark Langsdorf) [RHEL-1021] - ACPICA: iASL: Add CCEL table to both compiler/disassembler (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Rework system-level device notification handling (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add Medion S17413 to IRQ override quirk (Mark Langsdorf) [RHEL-1021] - ACPI: LPIT: move to use bus_get_dev_root() (Mark Langsdorf) [RHEL-1021] - ACPI: SPCR: Prefix error messages with FW_BUG (Mark Langsdorf) [RHEL-1021] - ACPI: processor: Fix evaluating _PDC method when running as Xen dom0 (Mark Langsdorf) [RHEL-1021] - ACPI: s2idle: Log when enabling wakeup IRQ fails (Mark Langsdorf) [RHEL-1021] - ACPI: processor: Check for null return of devm_kzalloc() in fch_misc_setup() (Mark Langsdorf) [RHEL-1021] - ACPI: PPTT: Fix to avoid sleep in the atomic context when PPTT is absent (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add skip i2c clients quirk for Lenovo Yoga Book X90 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: utils: Add Cezanne to the list for forcing StorageD3Enable (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on Asus Expertbook B2402FBA (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Do IRQ override on all TongFang GMxRGxx (Mark Langsdorf) [RHEL-1021] - ACPI: make kobj_type structures constant (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add IRQ overrides for MAINGEAR Vector Pro 2 models (Mark Langsdorf) [RHEL-1021] - ACPI: PMIC: Add comments with DSDT power opregion field names (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: EINJ: Limit error type to 32-bit width (Mark Langsdorf) [RHEL-1021] - ACPI: NFIT: fix a potential deadlock during NFIT teardown (Mark Langsdorf) [RHEL-1021] - ACPI: Don't build ACPICA with '-Os' (Mark Langsdorf) [RHEL-1021] - ACPI: PRM: Check whether EFI runtime is available (Mark Langsdorf) [RHEL-1021] - ACPI: PNP: Introduce list of known non-PNP devices (Mark Langsdorf) [RHEL-1021] - ACPICA: nsrepair: handle cases without a return value correctly (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on Asus Expertbook B2402CBA (Mark Langsdorf) [RHEL-1021] - ACPI: Silence missing prototype warnings (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Avoid updating frequency QoS unnecessarily (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Use the "no limit" frequency QoS (Mark Langsdorf) [RHEL-1021] - ACPI: processor: idle: Drop unnecessary (void *) conversion (Mark Langsdorf) [RHEL-1021] - ACPICA: Constify pathname argument for acpi_get_handle() (Mark Langsdorf) [RHEL-1021] - ACPICA: Drop port I/O validation for some regions (Mark Langsdorf) [RHEL-1021] - ACPI: PMIC: Add pmic_i2c_address to BYT Crystal Cove support (Mark Langsdorf) [RHEL-1021] - ACPI: tables: Add support for NBFT (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Force AMD GUID/_REV 2 on HP Elitebook 865 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Stop using AMD specific codepath for Rembrandt+ (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add Asus ExpertBook B2502 to Asus quirks (Mark Langsdorf) [RHEL-1021] - ACPI: resource: do IRQ override on Lenovo 14ALC7 (Mark Langsdorf) [RHEL-1021] - ACPI: resource: do IRQ override on XMG Core 15 (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Fix ECDT probe ordering issues (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Fix EC address space handler unregistration (Mark Langsdorf) [RHEL-1021] - ACPICA: Allow address_space_handler Install and _REG execution as 2 separate steps (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add skip i2c clients quirk for Medion Lifetab S10346 (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: EINJ: Refactor available_error_type_show() (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: EINJ: Fix formatting errors (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Adjust acpi_processor_notify_smm() return value (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Rearrange acpi_processor_notify_smm() (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Rearrange unregistration routine (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Drop redundant parentheses (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Adjust white space (Mark Langsdorf) [RHEL-1021] - ACPI: processor: idle: Drop unnecessary statements and parens (Mark Langsdorf) [RHEL-1021] - ACPI: thermal: Adjust critical.flags.valid check (Mark Langsdorf) [RHEL-1021] - ACPI: fan: Convert to use sysfs_emit_at() API (Mark Langsdorf) [RHEL-1021] - ACPICA: Fix use-after-free in acpi_ut_copy_ipackage_to_ipackage() (Mark Langsdorf) [RHEL-1021] - ACPI: use sysfs_emit() instead of scnprintf() (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add skip i2c clients quirk for Lenovo Yoga Tab 3 Pro (YT3-X90F) (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Remove a useless include (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Silence missing prototype warnings (Mark Langsdorf) [RHEL-1021] - ACPI: fan: Bail out if extract package failed (Mark Langsdorf) [RHEL-1021] - ACPI: pfr_telemetry: use ACPI_FREE() to free acpi_object (Mark Langsdorf) [RHEL-1021] - ACPI: pfr_update: use ACPI_FREE() to free acpi_object (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Fix the _OSC capability check for FFH OpRegion (Mark Langsdorf) [RHEL-1021] - ACPI: HMAT: Fix initiator registration for single-initiator systems (Mark Langsdorf) [RHEL-1021] - ACPI: HMAT: remove unnecessary variable initialization (Mark Langsdorf) [RHEL-1021] - ACPI: APMT: Fix kerneldoc and indentation (Mark Langsdorf) [RHEL-1021] - ACPI: Implement a generic FFH Opregion handler (Mark Langsdorf) [RHEL-1021] - redhat: configs: enable FFH OpRegion handlers (Mark Langsdorf) [RHEL-1021] - ACPI: Enable FPDT on arm64 (Mark Langsdorf) [RHEL-1021] - ACPI: sysfs: use sysfs_emit() to instead of scnprintf() (Mark Langsdorf) [RHEL-1021] - ACPI: irq: Fix some kernel-doc issues (Mark Langsdorf) [RHEL-1021] - ACPI: tables: Fix the stale comments for acpi_locate_initial_tables() (Mark Langsdorf) [RHEL-1021] - ACPI: HMAT: use hotplug_memory_notifier() directly (Mark Langsdorf) [RHEL-1021] - ACPICA: Fix error code path in acpi_ds_call_control_method() (Mark Langsdorf) [RHEL-1021] - ACPICA: Add utcksum.o to the acpidump Makefile (Mark Langsdorf) [RHEL-1021] - ACPI/IORT: Update SMMUv3 DeviceID support (Mark Langsdorf) [RHEL-1021] - ACPI: ARM Performance Monitoring Unit Table (APMT) initial support (Mark Langsdorf) [RHEL-1021] - ACPI: sysfs: Use kstrtobool() instead of strtobool() (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Add quirk for the HP Pavilion Gaming 15-cx0041ur (Mark Langsdorf) [RHEL-1021] - ACPI: processor: throttling: remove variable count (Mark Langsdorf) [RHEL-1021] - ACPI: processor: idle: Check acpi_fetch_acpi_dev() return value (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Drop unsetting driver data on remove (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add another system to quirk list for forcing StorageD3Enable (Mark Langsdorf) [RHEL-1021] - ACPICA: Finish support for the CDAT table (Mark Langsdorf) [RHEL-1021] - ACPICA: Improve warning message for "invalid ACPI name" (Mark Langsdorf) [RHEL-1021] - ACPICA: Check that EBDA pointer is in valid memory (Mark Langsdorf) [RHEL-1021] - arm64: acpi: Fix possible memory leak of ffh_ctxt (Mark Langsdorf) [RHEL-1021] - arm64: Add architecture specific ACPI FFH Opregion callbacks (Mark Langsdorf) [RHEL-1021] - ACPICA: Add support for FFH Opregion special context data (Mark Langsdorf) [RHEL-1021] - ACPICA: Do not touch VGA memory when EBDA < 1ki_b (Mark Langsdorf) [RHEL-1021] - ACPICA: Make acpi_ex_load_op() match upstream (Mark Langsdorf) [RHEL-1021] - ACPI: scan: Add LATT2021 to acpi_ignore_dep_ids[] (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on Asus Vivobook S5602ZA (Mark Langsdorf) [RHEL-1021] - apei/ghes: Use xchg_release() for updating new cache slot instead of cmpxchg() (Mark Langsdorf) [RHEL-1021] - ACPI: PCI: Fix device reference counting in acpi_get_pci_dev() (Mark Langsdorf) [RHEL-1021] - ACPI: resource: note more about IRQ override (Mark Langsdorf) [RHEL-1021] - ACPI: resource: do IRQ override on LENOVO IdeaPad (Mark Langsdorf) [RHEL-1021] - ACPI: extlog: Handle multiple records (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Fix integer overflow in ghes_estatus_pool_init() (Mark Langsdorf) [RHEL-1021] - ACPI: thermal: Drop redundant parens from expressions (Mark Langsdorf) [RHEL-1021] - ACPI: thermal: Use white space more consistently (Mark Langsdorf) [RHEL-1021] - ACPI: thermal: Drop some redundant code (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: do not add task_work to kernel thread to avoid memory leak (Mark Langsdorf) [RHEL-1021] - ACPI: PM: Take wake IRQ into consideration when entering suspend-to-idle (Mark Langsdorf) [RHEL-1021] - ACPI: resources: Add wake_capable parameter to acpi_dev_irq_flags (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Replace loop with first entry retrieval (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Deduplicate skipping device in acpi_lpss_create_device() (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Fix a NULL pointer dereference (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add another ID to s2idle_dmi_table (Mark Langsdorf) [RHEL-1021] - ACPI: Kconfig: Drop link to https://01.org/linux-acpi (Mark Langsdorf) [RHEL-1021] - ACPI: DPTF: Drop stale link from Kconfig help (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add a quirk for ASUSTeK COMPUTER INC. ROG Flow X13 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add a quirk for ASUS ROG Zephyrus G14 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add a quirk for Lenovo Slim 7 Pro 14ARH7 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: If a new AMD _HID is missing assume Rembrandt (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add a quirk for ASUS TUF Gaming A17 FA707RE (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Move _HID handling for AMD systems into structures (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add module parameter to prefer Microsoft GUID (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add ASUS model S5402ZA to quirks (Mark Langsdorf) [RHEL-1021] - ACPI: AMBA: Add ARM DMA-330 controller to the supported list (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Remove unneeded result variables (Mark Langsdorf) [RHEL-1021] - ACPI: fan: Reorder symbols to get rid of a few forward declarations (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add a quirk for Dell Inspiron 14 2-in-1 for StorageD3Enable (Mark Langsdorf) [RHEL-1021] - ACPI: PCI: Rework acpi_get_pci_dev() (Mark Langsdorf) [RHEL-1021] - ACPI: HMAT: Drop unused dev_fmt() and redundant 'HMAT' prefix (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Refactor _UID handling to use acpi_dev_uid_to_integer() (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Refactor _UID handling to use acpi_dev_uid_to_integer() (Mark Langsdorf) [RHEL-1021] - ACPI: utils: Add acpi_dev_uid_to_integer() helper to get _UID as integer (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add helper function acpi_dev_get_memory_resources() (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Use the helper acpi_dev_get_memory_resources() (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on Asus Vivobook K3402ZA/K3502ZA (Mark Langsdorf) [RHEL-1021] - ACPI: APD: Use the helper acpi_dev_get_memory_resources() (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Filter out the non memory resources in is_memory() (Mark Langsdorf) [RHEL-1021] - ACPI: tables: FPDT: Don't call acpi_os_map_memory() on invalid phys address (Mark Langsdorf) [RHEL-1021] - ACPI: s2idle: Add a new ->check() callback for platform_s2idle_ops (Mark Langsdorf) [RHEL-1021] - ACPI: property: Silence missing-declarations warning in apple.c (Mark Langsdorf) [RHEL-1021] - ACPI: platform: Use PLATFORM_DEVID_NONE in acpi_create_platform_device() (Mark Langsdorf) [RHEL-1021] - ACPI: platform: Remove redundant print on -ENOMEM (Mark Langsdorf) [RHEL-1021] - ACPI: platform: Sort forbidden_id_list[] in ascending order (Mark Langsdorf) [RHEL-1021] - ACPI: platform: Use sizeof(*pointer) instead of sizeof(type) (Mark Langsdorf) [RHEL-1021] - ACPI: property: Use acpi_dev_parent() (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Refactor ACPI matching functions for better readability (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Drop kernel doc annotation from acpi_bus_notify() (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Drop unneeded result variable from ec_write() (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Add BERT error log footer (Mark Langsdorf) [RHEL-1021] - platform/x86: asus-wmi: Move acpi_backlight=native quirks to ACPI video_detect.c (Mark Langsdorf) [RHEL-1021] - ACPI: video: Fix indentation of video_detect_dmi_table[] entries (Mark Langsdorf) [RHEL-1021] - platform/x86: acer-wmi: Move backlight DMI quirks to acpi/video_detect.c (Mark Langsdorf) [RHEL-1021] - platform/x86: asus-wmi: Move acpi_backlight=vendor quirks to ACPI video_detect.c (Mark Langsdorf) [RHEL-1021] - ACPI: video: Refactor acpi_video_get_backlight_type() a bit (Mark Langsdorf) [RHEL-1021] - ACPI: video: Simplify acpi_video_unregister_backlight() (Mark Langsdorf) [RHEL-1021] - ACPI: video: Remove acpi_video_bus from list before tearing it down (Mark Langsdorf) [RHEL-1021] - ACPI: video: Remove code to unregister acpi_video backlight when a native backlight registers (Mark Langsdorf) [RHEL-1021] - ACPI: PM: Fix NULL argument handling in acpi_device_get/set_power() (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Remove the unneeded result variable (Mark Langsdorf) [RHEL-1021] - ACPI: OSI: Remove Linux-HPI-Hybrid-Graphics _OSI string (Mark Langsdorf) [RHEL-1021] - ACPI: OSI: Remove Linux-Lenovo-NV-HDMI-Audio _OSI string (Mark Langsdorf) [RHEL-1021] - ACPI: OSI: Remove Linux-Dell-Video _OSI string (Mark Langsdorf) [RHEL-1021] - ACPI: Drop parent field from struct acpi_device (Mark Langsdorf) [RHEL-1021] - ACPI: move from strlcpy() with unused retval to strscpy() (Mark Langsdorf) [RHEL-1021] - ACPI: PM: Fix acpi_dev_state_d0() kerneldoc (Mark Langsdorf) [RHEL-1021] - ACPI: scan: Eliminate __acpi_device_add() (Mark Langsdorf) [RHEL-1021] - ACPI: scan: Rearrange initialization of ACPI device objects (Mark Langsdorf) [RHEL-1021] - ACPI: Rename acpi_bus_get/put_acpi_device() (Mark Langsdorf) [RHEL-1021] - ACPI: scan: Rename acpi_bus_get_parent() and rearrange it (Mark Langsdorf) [RHEL-1021]- s390/smp: move rcu_cpu_starting() earlier (Joel Savitz) [RHEL-8624] - net: fix net device address assign type (Michal Schmidt) [RHEL-6383] - net: add check for current MAC address in dev_set_mac_address (Michal Schmidt) [RHEL-6383] - writeback, cgroup: Fix kernel bootup panic with cgroup v2 (Waiman Long) [RHEL-17504] - net/tls: Remove the context from the list in tls_device_down (Jay Shin) [RHEL-17301] - tls: Fix context leak on tls_device_down (Jay Shin) [RHEL-17301] - RDMA/core: Require admin capabilities to set system parameters (Kamal Heib) [RHEL-1033] - RDMA/cma: Initialize ib_sa_multicast structure to 0 when join (Kamal Heib) [RHEL-1033] - RDMA/core: Use size_{add,sub,mul}() in calls to struct_size() (Kamal Heib) [RHEL-1033] - RDMA/cma: Fix truncation compilation warning in make_cma_ports (Kamal Heib) [RHEL-1033] - RDMA/uverbs: Fix typo of sizeof argument (Kamal Heib) [RHEL-1033] - IB/uverbs: Fix an potential error pointer dereference (Kamal Heib) [RHEL-1033] - scsi: RDMA/srp: Fix residual handling (Kamal Heib) [RHEL-1033] - rdma: fix INFINIBAND_USER_ACCESS dependency (Kamal Heib) [RHEL-1033] - gfs2: Fix quota=quiet oversight (Bob Peterson) [RHEL-14849] - gfs2: Free quota data objects synchronously (Andreas Gruenbacher) [RHEL-14849] - gfs2: Fix initial quota data refcount (Andreas Gruenbacher) [RHEL-14849] - gfs2: Factor out duplicate quota data disposal code (Andreas Gruenbacher) [RHEL-14849] - gfs2: Use gfs2_qd_dispose in gfs2_quota_cleanup (Andreas Gruenbacher) [RHEL-14849] - gfs2: Fix wrong quota shrinker return value (Andreas Gruenbacher) [RHEL-14849] - gfs2: ignore negated quota changes (Bob Peterson) [RHEL-14849] - gfs2: Introduce new quota=quiet mount option (Bob Peterson) [RHEL-14849] - gfs2: Rename sd_{ glock => kill }_wait (Andreas Gruenbacher) [RHEL-14849] - Bluetooth: btrtl: Set MSFT opcode for RTL8852 (David Marlin) [RHEL-2531] - Bluetooth: Fix return value in hci_dev_do_close() (David Marlin) [RHEL-2531] - Bluetooth: add timeout sanity check to hci_inquiry (David Marlin) [RHEL-2531] - Bluetooth: btusb: Remove WAKEUP_DISABLE and add WAKEUP_AUTOSUSPEND for Realtek devices (David Marlin) [RHEL-2531] - Bluetooth: mgmt: Pessimize compile-time bounds-check (David Marlin) [RHEL-2531] - Bluetooth: Fix race condition in handling NOP command (David Marlin) [RHEL-2531] - Bluetooth: btbcm: add patch ram for bluetooth (David Marlin) [RHEL-2531] - Bluetooth: Store advertising handle so it can be re-enabled (David Marlin) [RHEL-2531] - Bluetooth: Fix handling of LE Enhanced Connection Complete (David Marlin) [RHEL-2531] - Bluetooth: fix repeated calls to sco_sock_kill (David Marlin) [RHEL-2531] - Bluetooth: switch to lock_sock in RFCOMM (David Marlin) [RHEL-2531] - Bluetooth: serialize calls to sco_sock_{set,clear}_timer (David Marlin) [RHEL-2531] - Bluetooth: switch to lock_sock in SCO (David Marlin) [RHEL-2531] - Bluetooth: avoid circular locks in sco_sock_connect (David Marlin) [RHEL-2531] - Bluetooth: schedule SCO timeouts with delayed_work (David Marlin) [RHEL-2531] - Bluetooth: btusb: Fix fall-through warnings (David Marlin) [RHEL-2531] - Bluetooth: btintel: Combine setting up MSFT extension (David Marlin) [RHEL-2531] - Bluetooth: increase BTNAMSIZ to 21 chars to fix potential buffer overflow (David Marlin) [RHEL-2531] - Bluetooth: Add additional Bluetooth part for Realtek 8852AE (David Marlin) [RHEL-2531] - Bluetooth: btusb: Record debug log for Mediatek Chip. (David Marlin) [RHEL-2531] - Bluetooth: hci_bcm: Fix kernel doc comments (David Marlin) [RHEL-2531] - Bluetooth: Fix not generating RPA when required (David Marlin) [RHEL-2531] - Bluetooth: HCI: Add proper tracking for enable status of adv instances (David Marlin) [RHEL-2531] - Bluetooth: btusb: Enable MSFT extension for Mediatek Chip (MT7921) (David Marlin) [RHEL-2531] - Bluetooth: btusb: Make the CSR clone chip force-suspend workaround more generic (David Marlin) [RHEL-2531] - Bluetooth: btusb: Enable MSFT extension for WCN6855 controller (David Marlin) [RHEL-2531] - Bluetooth: btusb: Load Broadcom firmware for Dell device 413c:8197 (David Marlin) [RHEL-2531] - Bluetooth: btmrvl_sdio: Remove all strcpy() uses (David Marlin) [RHEL-2531] - Bluetooth: skip invalid hci_sync_conn_complete_evt (David Marlin) [RHEL-2531] - Bluetooth: btusb: Add valid le states quirk (David Marlin) [RHEL-2531] - Bluetooth: hci_h5: Add runtime suspend (David Marlin) [RHEL-2531] - Bluetooth: hci_h5: btrtl: Maintain flow control if wakeup is enabled (David Marlin) [RHEL-2531] - Bluetooth: hci_h5: add WAKEUP_DISABLE flag (David Marlin) [RHEL-2531] - Bluetooth: btrsi: use non-kernel-doc comment for copyright (David Marlin) [RHEL-2531] - Bluetooth: btusb: Add support for LG LGSBWAC92/TWCM-K505D (David Marlin) [RHEL-2531] - Bluetooth: sco: prevent information leak in sco_conn_defer_accept() (David Marlin) [RHEL-2531] - Bluetooth: btusb: Add support for IMC Networks Mediatek Chip (David Marlin) [RHEL-2531] - Bluetooth: hci_h5: Disable the hci_suspend_notifier for btrtl devices (David Marlin) [RHEL-2531] - Bluetooth: msft: Use the correct print format (David Marlin) [RHEL-2531] - Bluetooth: mgmt: Use the correct print format (David Marlin) [RHEL-2531] - Bluetooth: use inclusive language in hci_core.h (David Marlin) [RHEL-2531] - Bluetooth: btqca: Moved extracting rom version info to common place (David Marlin) [RHEL-2531] - Bluetooth: btqca: Add support for firmware image with mbn type for WCN6750 (David Marlin) [RHEL-2531] - Bluetooth: hci_qca: Add support for QTI Bluetooth chip wcn6750 (David Marlin) [RHEL-2531] - Bluetooth: use flexible-array member instead of zero-length array (David Marlin) [RHEL-2531] - Bluetooth: Fix default values for advertising interval (David Marlin) [RHEL-2531] - Bluetooth: Remove trailing semicolon in macros (David Marlin) [RHEL-2531] - Bluetooth: Fix crash in mgmt_add_adv_patterns_monitor_complete (David Marlin) [RHEL-2531] - Bluetooth: disable advertisement filters during suspend (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT interleave scanning integration (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT handle filter enablement (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT handle controller reset (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT remove monitor (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT add monitor (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT add rssi support (David Marlin) [RHEL-2531] - Bluetooth: btrtl: Enable MSFT extension for RTL8822CE controller (David Marlin) [RHEL-2531] - Bluetooth: btqca: Enable MSFT extension for Qualcomm WCN399x (David Marlin) [RHEL-2531] - Bluetooth: btqca: Use NVM files based on SoC ID for WCN3991 (David Marlin) [RHEL-2531] - Bluetooth: fix typo in struct name (David Marlin) [RHEL-2531] - Bluetooth: btqca: Add valid le states quirk (David Marlin) [RHEL-2531] - Bluetooth: ath3k: use usb_control_msg_send() and usb_control_msg_recv() (David Marlin) [RHEL-2531] - Bluetooth: Use fallthrough pseudo-keyword (David Marlin) [RHEL-2531] - Bluetooth: hci_qca: Enable WBS support for wcn3991 (David Marlin) [RHEL-2531] - Bluetooth: L2CAP: Replace zero-length array with flexible-array (David Marlin) [RHEL-2531] - Bluetooth: Replace BT_DBG with bt_dev_dbg for security manager support (David Marlin) [RHEL-2531] - Bluetooth: Replace BT_DBG with bt_dev_dbg for management support (David Marlin) [RHEL-2531] - Bluetooth: Clear HCI_LL_RPA_RESOLUTION flag on reset (David Marlin) [RHEL-2531] - Bluetooth: Sort list of LE features constants (David Marlin) [RHEL-2531] - Bluetooth: Add HCI device identifier for VIRTIO devices (David Marlin) [RHEL-2531] - Bluetooth: hci_qca: Add support for Qualcomm Bluetooth SoC QCA6390 (David Marlin) [RHEL-2531] - Bluetooth: Fixing a few comment typos in the quirk definitions. (David Marlin) [RHEL-2531] - Bluetooth: hci_qca: Add support for Qualcomm Bluetooth SoC WCN3991 (David Marlin) [RHEL-2531] - Bluetooth: btsdio: Use module_sdio_driver helper (David Marlin) [RHEL-2531] - mmc: sdio: Add helper macro for sdio_driver boilerplate (David Marlin) [RHEL-2531] - kasan: add compiler barriers to KUNIT_EXPECT_KASAN_FAIL (Nico Pache) [RHEL-5622] - redhat: add new tests (Nico Pache) [RHEL-5622] - redhat: disable kunit by default (Nico Pache) [RHEL-5622] - kasan: fix unit tests with CONFIG_UBSAN_LOCAL_BOUNDS enabled (Nico Pache) [RHEL-5622] - kasan: fix array-bounds warnings in tests (Nico Pache) [RHEL-5622] - kasan: test: Silence GCC 12 warnings (Nico Pache) [RHEL-5622] - tracepoint: Allow trace events in modules with TAINT_TEST (Nico Pache) [RHEL-5622] - kunit: Fix missed memory release in kunit_free_suite_set() (Nico Pache) [RHEL-5622] - kunit: fix kunit_test_init_section_suites(...) (Nico Pache) [RHEL-5622] - kunit: tool: print summary of failed tests if a few failed out of a lot (Nico Pache) [RHEL-5622] - kunit: alloc_string_stream_fragment error handling bug fix (Nico Pache) [RHEL-5622] - kunit: Fix wild-memory-access bug in kunit_free_suite_set() (Nico Pache) [RHEL-5622] - Documentation: kunit: Modular tests should not depend on KUNIT=y (Nico Pache) [RHEL-5622] - kunit: update NULL vs IS_ERR() tests (Nico Pache) [RHEL-5622] - Documentation: kunit: Update description of --alltests option (Nico Pache) [RHEL-5622] - kunit: declare kunit_assert structs as const (Nico Pache) [RHEL-5622] - kunit: rename base KUNIT_ASSERTION macro to _KUNIT_FAILED (Nico Pache) [RHEL-5622] - kunit: remove format func from struct kunit_assert, get it to 0 bytes (Nico Pache) [RHEL-5622] - kunit: make kunit_kfree(NULL) a no-op to match kfree() (Nico Pache) [RHEL-5622] - kunit: make kunit_kfree() not segfault on invalid inputs (Nico Pache) [RHEL-5622] - kunit: make kunit_kfree() only work on pointers from kunit_malloc() and friends (Nico Pache) [RHEL-5622] - kunit: drop test pointer in string_stream_fragment (Nico Pache) [RHEL-5622] - kunit: string-stream: Simplify resource use (Nico Pache) [RHEL-5622] - Documentation: Kunit: Use full path to .kunitconfig (Nico Pache) [RHEL-5622] - kunit: tool: rename all_test_uml.config, use it for --alltests (Nico Pache) [RHEL-5622] - kunit: tool: remove UML specific options from all_tests_uml.config (Nico Pache) [RHEL-5622] - lib: stackinit: update reference to kunit-tool (Nico Pache) [RHEL-5622] - Documentation: KUnit: update links in the index page (Nico Pache) [RHEL-5622] - Documentation: KUnit: add intro to the getting-started page (Nico Pache) [RHEL-5622] - Documentation: KUnit: Reword start guide for selecting tests (Nico Pache) [RHEL-5622] - Documentation: KUnit: add note about mrproper in start.rst (Nico Pache) [RHEL-5622] - Documentation: KUnit: avoid repeating "kunit.py run" in start.rst (Nico Pache) [RHEL-5622] - Documentation: KUnit: remove duplicated docs for kunit_tool (Nico Pache) [RHEL-5622] - Documentation: Kunit: Add ref for other kinds of tests (Nico Pache) [RHEL-5622] - Documentation: KUnit: Fix non-uml anchor (Nico Pache) [RHEL-5622] - Documentation: Kunit: Fix inconsistent titles (Nico Pache) [RHEL-5622] - Documentation: kunit: fix trivial typo (Nico Pache) [RHEL-5622] - kunit: no longer call module_info(test, "Y") for kunit modules (Nico Pache) [RHEL-5622] - kunit: add kunit.enable to enable/disable KUnit test (Nico Pache) [RHEL-5622] - kunit: tool: make --raw_output=kunit (aka --raw_output) preserve leading spaces (Nico Pache) [RHEL-5622] - module: kunit: Load .kunit_test_suites section when CONFIG_KUNIT=m (Nico Pache) [RHEL-5622] - MAINTAINERS: kunit: add David Gow as a maintainer of KUnit (Nico Pache) [RHEL-5622] - Documentation: KUnit: Fix example with compilation error (Nico Pache) [RHEL-5622] - Documentation: kunit: Add CLI args for kunit_tool (Nico Pache) [RHEL-5622] - kunit: flatten kunit_suite*** to kunit_suite** in .kunit_test_suites (Nico Pache) [RHEL-5622] - kunit: unify module and builtin suite definitions (Nico Pache) [RHEL-5622] - Documentation: kunit: fix example run_kunit func to allow spaces in args (Nico Pache) [RHEL-5622] - kunit: test.h: fix a kernel-doc markup (Nico Pache) [RHEL-5622] - kunit: tool: Enable virtio/PCI by default on UML (Nico Pache) [RHEL-5622] - kunit: tool: make --kunitconfig repeatable, blindly concat (Nico Pache) [RHEL-5622] - kunit: add coverage_uml.config to enable GCOV on UML (Nico Pache) [RHEL-5622] - kunit: tool: refactor internal kconfig handling, allow overriding (Nico Pache) [RHEL-5622] - kunit: tool: introduce --qemu_args (Nico Pache) [RHEL-5622] - kunit: tool: simplify creating LinuxSourceTreeOperations (Nico Pache) [RHEL-5622] - kunit: tool: cosmetic: don't specify duplicate kernel cmdline options (Nico Pache) [RHEL-5622] - kunit: tool: refactoring printing logic into kunit_printer.py (Nico Pache) [RHEL-5622] - kunit: tool: redo how we construct and mock LinuxSourceTree (Nico Pache) [RHEL-5622] - kunit: tool: drop unused load_config argument (Nico Pache) [RHEL-5622] - apparmor: test: Remove some casts which are no-longer required (Nico Pache) [RHEL-5622] - kunit: Taint the kernel when KUnit tests are run (Nico Pache) [RHEL-5622] - panic: Taint kernel if tests are run (Nico Pache) [RHEL-5622] - kunit: tool: Use qemu-system-i386 for i386 runs (Nico Pache) [RHEL-5622] - kunit: tool: update riscv QEMU config with new serial dependency (Nico Pache) [RHEL-5622] - kunit: tool: Add list of all valid test configs on UML (Nico Pache) [RHEL-5622] - kunit: take `kunit_assert` as `const` (Nico Pache) [RHEL-5622] - kunit: fix UAF when run kfence test case test_gfpzero (Nico Pache) [RHEL-5622] - lib: stackinit: Convert to KUnit (Nico Pache) [RHEL-5622] - lib/test_stackinit: Add assigned initializers (Nico Pache) [RHEL-5622] - lib/test_stackinit: Allow building stand-alone (Nico Pache) [RHEL-5622] - lib/test_stackinit: Fix static initializer test (Nico Pache) [RHEL-5622] - lib: test_stackinit.c: XFAIL switch variable init tests (Nico Pache) [RHEL-5622] - lib/test_stackinit: Handle Clang auto-initialization pattern (Nico Pache) [RHEL-5622] - lib: Introduce test_stackinit module (Nico Pache) [RHEL-5622] - kunit: cleanup assertion macro internal variables (Nico Pache) [RHEL-5622] - kunit: factor out str constants from binary assertion structs (Nico Pache) [RHEL-5622] - kunit: consolidate KUNIT_INIT_BINARY_ASSERT_STRUCT macros (Nico Pache) [RHEL-5622] - kunit: remove va_format from kunit_assert (Nico Pache) [RHEL-5622] - docs: dev-tools: kunit: don't use a table for docs name (Nico Pache) [RHEL-5622] - Documentation: dev-tools: Add Testing Overview (Nico Pache) [RHEL-5622]- perf vendor events: Update PMC used in PM_RUN_INST_CMPL event for power10 platform (Michael Petlan) [RHEL-16880] - gfs2: Fix another freeze/thaw hang (Andrew Price) [RHEL-5340] - tcp: enforce receive buffer memory limits by allowing the tcp window to shrink (Felix Maurer) [RHEL-15023] - cpufreq: amd-pstate: Update policy->cur in amd_pstate_adjust_perf() (Prarit Bhargava) [RHEL-10028] - driver/base/cpu: Retry online operation if -EBUSY (Waiman Long) [RHEL-5730] - net: openvswitch: reject negative ifindex (Antoine Tenart) [RHEL-14350] - sctp: annotate data-races around sk->sk_wmem_queued (Xin Long) [RHEL-14838] - sctp: fix potential deadlock on &net->sctp.addr_wq_lock (Xin Long) [RHEL-14838] - sctp: fix an error code in sctp_sf_eat_auth() (Xin Long) [RHEL-14838] - sctp: handle invalid error codes without calling BUG() (Xin Long) [RHEL-14838] - sctp: fix an issue that plpmtu can never go to complete state (Xin Long) [RHEL-14838] - sctp: add bpf_bypass_getsockopt proto callback (Xin Long) [RHEL-14838] - powerpc/pseries: Always inline functions called from cpuidle (Mark Langsdorf) [RHEL-4666] - cpuidle: pseries: Mark ->enter() functions as __cpuidle (Mark Langsdorf) [RHEL-4666] - cpuidle: move to use bus_get_dev_root() (Mark Langsdorf) [RHEL-4666] - cpuidle: driver: Update microsecond values of state parameters as needed (Mark Langsdorf) [RHEL-4666] - cpuidle: sysfs: make kobj_type structures constant (Mark Langsdorf) [RHEL-4666] - cpuidle: Fix poll_idle() noinstr annotation (Mark Langsdorf) [RHEL-4666] - cpuidle-haltpoll: Replace default_idle() with arch_cpu_idle() (Mark Langsdorf) [RHEL-4666] - cpuidle-haltpoll: select haltpoll governor (Mark Langsdorf) [RHEL-4666] - cpuidle: Annotate poll_idle() (Mark Langsdorf) [RHEL-4666] - powerpc/cpuidle: Set CPUIDLE_FLAG_POLLING for snooze state (Mark Langsdorf) [RHEL-4666] - cpuidle: Remove redundant check in cpuidle_switch_governor() (Mark Langsdorf) [RHEL-4666] - cpuidle: powernv: move from strlcpy() with unused retval to strscpy() (Mark Langsdorf) [RHEL-4666] - cpuidle: coupled: Drop duplicate word from a comment (Mark Langsdorf) [RHEL-4666] - KVM: s390: add tracepoint in gmap notifier (Cédric Le Goater) [RHEL-11434] - KVM: s390: add stat counter for shadow gmap events (Cédric Le Goater) [RHEL-11434] - KVM: s390: fix gisa destroy operation might lead to cpu stalls (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping keyless mode exits (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping userspace-emulated instructions (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping kernel-emulated instructions (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping into program interrupt handlers (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping into interrupt handlers (Cédric Le Goater) [RHEL-9581] - KVM: s390: fix sthyi error handling (Cédric Le Goater) [RHEL-9581] - KVM: s390: pv: fix index value of replaced ASCE (Cédric Le Goater) [RHEL-9581] - KVM: s390/diag: fix racy access of physical cpu number in diag 9c handler (Cédric Le Goater) [RHEL-9581] - KVM: s390: vsie: fix the length of APCB bitmap (Cédric Le Goater) [RHEL-9581] - KVM: s390: fix KVM_S390_GET_CMMA_BITS for GFNs in memslot holes (Cédric Le Goater) [RHEL-9581] - KVM: s390: pci: fix virtual-physical confusion on module unload/load (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: fix virtual-physical confusion for next alert GISA (Cédric Le Goater) [RHEL-9581] - KVM: s390: pv: fix external interruption loop not always detected (Cédric Le Goater) [RHEL-9581] - s390: vfio-ap: tighten the NIB validity check (Cédric Le Goater) [RHEL-9581] - KVM: s390: pv: leak the topmost page table when destroy fails (Cédric Le Goater) [RHEL-9581] - mbcache: Avoid nesting of cache->c_list_lock under bit locks (Carlos Maiolino) [RHEL-15010] - ext4: fix deadlock due to mbcache entry corruption (Carlos Maiolino) [RHEL-15010] - mbcache: automatically delete entries from cache on freeing (Carlos Maiolino) [RHEL-15010] - ext4: fix use-after-free read in ext4_find_extent for bigalloc + inline (Carlos Maiolino) [RHEL-15010] - ext4: fix another off-by-one fsmap error on 1k block filesystems (Carlos Maiolino) [RHEL-15010] - ext4: fix task hung in ext4_xattr_delete_inode (Carlos Maiolino) [RHEL-15010] - ext4: Fix function prototype mismatch for ext4_feat_ktype (Carlos Maiolino) [RHEL-15010] - ext4: avoid unaccounted block allocation when expanding inode (Carlos Maiolino) [RHEL-15010] - ext4: avoid BUG_ON when creating xattrs (Carlos Maiolino) [RHEL-15010] - ext4: fix delayed allocation bug in ext4_clu_mapped for bigalloc + inline (Carlos Maiolino) [RHEL-15010] - ext4: fix uninititialized value in 'ext4_evict_inode' (Carlos Maiolino) [RHEL-15010] - ext4: fix corruption when online resizing a 1K bigalloc fs (Carlos Maiolino) [RHEL-15010] - ext4: fix error code return to user-space in ext4_get_branch() (Carlos Maiolino) [RHEL-15010] - ext4: init quota for 'old.inode' in 'ext4_rename' (Carlos Maiolino) [RHEL-15010] - ext4: fix undefined behavior in bit shift for ext4_check_flag_values (Carlos Maiolino) [RHEL-15010] - ext4: fix bug_on in __es_tree_search caused by bad boot loader inode (Carlos Maiolino) [RHEL-15010] - ext4: add EXT4_IGET_BAD flag to prevent unexpected bad inode (Carlos Maiolino) [RHEL-15010] - ext4: add helper to check quota inums (Carlos Maiolino) [RHEL-15010] - ext4: fix bug_on in __es_tree_search caused by bad quota inode (Carlos Maiolino) [RHEL-15010] - ext4: silence the warning when evicting inode with dioread_nolock (Carlos Maiolino) [RHEL-15010] - ext4: fix use-after-free in ext4_ext_shift_extents (Carlos Maiolino) [RHEL-15010] - ext4: fix warning in 'ext4_da_release_space' (Carlos Maiolino) [RHEL-15010] - jbd2: wake up journal waiters in FIFO order, not LIFO (Carlos Maiolino) [RHEL-15010] - ext4: place buffer head allocation before handle start (Carlos Maiolino) [RHEL-15010] - ext4: fix check for block being out of directory size (Carlos Maiolino) [RHEL-15010] {CVE-2022-1184} - ext4: make ext4_lazyinit_thread freezable (Carlos Maiolino) [RHEL-15010] - ext4: fix null-ptr-deref in ext4_write_info (Carlos Maiolino) [RHEL-15010] - ext4: limit the number of retries after discarding preallocations blocks (Carlos Maiolino) [RHEL-15010] - ext4: fix bug in extents parsing when eh_entries == 0 and eh_depth > 0 (Carlos Maiolino) [RHEL-15010] - jbd2: fix assertion 'jh->b_frozen_data == NULL' failure when journal aborted (Carlos Maiolino) [RHEL-15010] - ext4: fix race when reusing xattr blocks (Carlos Maiolino) [RHEL-15010] - ext4: unindent codeblock in ext4_xattr_block_set() (Carlos Maiolino) [RHEL-15010] - ext4: remove EA inode entry from mbcache on inode eviction (Carlos Maiolino) [RHEL-15010] - ext4: use kmemdup() to replace kmalloc + memcpy (Carlos Maiolino) [RHEL-15010] - ext4: avoid remove directory when directory is corrupted (Carlos Maiolino) [RHEL-15010] - ext4: recover csum seed of tmp_inode after migrating to extents (Carlos Maiolino) [RHEL-15010] - mbcache: add functions to delete entry if unused (Carlos Maiolino) [RHEL-15010] - mbcache: don't reclaim used entries (Carlos Maiolino) [RHEL-15010] - redhat/configs: Disable AMD PMF driver (Prarit Bhargava) [RHEL-10011] - x86/amd_nb: Add PCI ID for family 19h model 78h (Prarit Bhargava) [RHEL-10011] - platform/x86: amd: pmc: provide user message where s0ix is not supported (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Fix memory leak in amd_pmc_stb_debugfs_open_v2() (Prarit Bhargava) [RHEL-10011] - platform/x86: amd: pmc: Remove __maybe_unused from amd_pmc_suspend_handler() (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Move out of BIOS SMN pair for STB init (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Utilize SMN index 0 for driver probe (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Move idlemask check into `amd_pmc_idlemask_read` (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Don't dump data after resume from s0i3 on picasso (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Hide SMU version and program attributes for Picasso (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Don't try to read SMU version on Picasso (Prarit Bhargava) [RHEL-10011] - platform/x86: amd: pmc: Convert to platform remove callback returning void (Prarit Bhargava) [RHEL-10011] - platform/x86: amd: hsmp: Convert to platform remove callback returning void (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: remove CONFIG_SUSPEND checks (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add line break for readability (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: differentiate STB/SMU messaging prints (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Write dummy postcode into the STB DRAM (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add num_samples message id support to STB (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: add CONFIG_SERIO dependency (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add a module parameter to disable workarounds (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Disable IRQ1 wakeup for RN/CZN (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: Fix refcount leak in amd_pmc_probe (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add new ACPI ID AMDI0009 (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Remove more CONFIG_DEBUG_FS checks (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Read SMU version during suspend on Cezanne systems (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: remove CONFIG_DEBUG_FS checks (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Fix build without debugfs (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add sysfs files for SMU (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Always write to the STB (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add defines for STB events (Prarit Bhargava) [RHEL-10011] - platform/x86/amd/pmf: Add support for PMF core layer (Prarit Bhargava) [RHEL-10011] - platform/x86/amd/pmc: Add new platform support (Prarit Bhargava) [RHEL-10011] - platform/x86/amd/pmc: Add new acpi id for PMC controller (Prarit Bhargava) [RHEL-10011] - platform/x86: Move AMD platform drivers to separate directory (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Fix build error unused-function (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Shuffle location of amd_pmc_get_smu_version() (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Avoid reading SMU version at probe time (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Move FCH init to first use (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Move SMU logging setup out of init (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Fix compilation without CONFIG_SUSPEND (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Only report STB errors when STB enabled (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Drop CPU QoS workaround (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Output error codes in messages (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Move to later in the suspend process (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Validate entry into the deepest state on resume (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: uninitialized variable in amd_pmc_s2d_init() (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Add support for AMD Spill to DRAM STB feature (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Correct usage of SMU version (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Make amd_pmc_stb_debugfs_fops static (Prarit Bhargava) [RHEL-10011] - scsi: qedf: Add synchronization between I/O completions and abort (Nilesh Javali) [RHEL-9861] - scsi: qedf: Remove unused declaration (Nilesh Javali) [RHEL-9861] - scsi: qedf: Fix firmware halt over suspend and resume (Nilesh Javali) [RHEL-9861] - scsi: qedf: Do not touch __user pointer in qedf_dbg_fp_int_cmd_read() directly (Nilesh Javali) [RHEL-9861] - scsi: qedf: Do not touch __user pointer in qedf_dbg_debug_cmd_read() directly (Nilesh Javali) [RHEL-9861] - scsi: qedf: Do not touch __user pointer in qedf_dbg_stop_io_on_error_cmd_read() directly (Nilesh Javali) [RHEL-9861] - scsi: qedf: Fix NULL dereference in error handling (Nilesh Javali) [RHEL-9861] - scsi: qedf: Remove unused 'num_handled' variable (Nilesh Javali) [RHEL-9861] - scsi: qla2xxx: Fix system crash due to bad pointer access (Nilesh Javali) [RHEL-9859] - qla2xxx: Fix double free of dsd_list during driver load. (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix NULL vs IS_ERR() bug for debugfs_create_dir() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Use raw_smp_processor_id() instead of smp_processor_id() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Correct endianness for rqstlen and rsplen (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix unused variable warning in qla2xxx_process_purls_pkt() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix spelling mistake "tranport" -> "transport" (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove unused variables in qla24xx_build_scsi_type_6_iocbs() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix nvme_fc_rcv_ls_req() undefined error (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Update version to 10.02.09.100-k (Nilesh Javali) [RHEL-9859] - Revert "scsi: qla2xxx: Fix buffer overrun" (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix smatch warn for qla_init_iocb_limit() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove unsupported ql2xenabledif option (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Error code did not return to upper layer (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Add logs for SFP temperature monitoring (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix firmware resource tracking (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Flush mailbox commands on chip reset (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Add Unsolicited LS Request and Response Support for NVMe (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Allow 32-byte CDBs (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Move resource to allow code reuse (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove unused declarations (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Update version to 10.02.08.500-k (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: fix inconsistent TMF timeout (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix TMF leak through (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Turn off noisy message log (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix session hang in gnl (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix erroneous link up failure (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix command flush during TMF (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Limit TMF to 8 per function (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Adjust IOCB resource on qpair create (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix deletion race condition (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix error code in qla2x00_start_sp() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Silence a static checker warning (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove unused nvme_ls_waitq wait queue (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Update version to 10.02.08.400-k (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Correct the index of array (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Pointer may be dereferenced (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix buffer overrun (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Check valid rport returned by fc_bsg_to_rport() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Avoid fcport pointer dereference (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix potential NULL pointer dereference (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Array index may go out of bound (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Drop useless LIST_HEAD (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Replace one-element array with DECLARE_FLEX_ARRAY() helper (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix end of loop test (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix NULL pointer dereference in target mode (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Replace all non-returning strlcpy() with strscpy() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Update version to 10.02.08.300-k (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Wait for io return on terminate rport (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix mem access after free (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix hang in task management (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix task management cmd fail due to unavailable resource (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix task management cmd failure (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Multi-que support for TMF (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix memory leak in qla2x00_probe_one() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Refer directly to the qla2xxx_driver_template (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove default fabric ops callouts (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Drop redundant pci_enable_pcie_error_reporting() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Add option to disable FC2 Target support (Nilesh Javali) [RHEL-9859]- cpupower: Fix cpuidle_set to accept only numeric values for idle-set operation. (Mamatha Inamdar) [RHEL-15215] - powerpc/vas: Limit open window failure messages in log bufffer (Mamatha Inamdar) [RHEL-14968] - udplite: Fix NULL pointer dereference in __sk_mem_raise_allocated(). (Paolo Abeni) [RHEL-14372] - vxlan: calculate correct header length for GPE (Petr Oros) [RHEL-14527] - af_unix: Fix null-ptr-deref in unix_stream_sendpage(). (Guillaume Nault) [RHEL-2574] {CVE-2023-4622} - netfilter: xt_u32: validate user space input (Phil Sutter) [RHEL-11729] {CVE-2023-39192} - netfilter: nf_log_syslog: Consolidate entry checks (Phil Sutter) [RHEL-6044] - netfilter: nf_log_syslog: Don't ignore unknown protocols (Phil Sutter) [RHEL-6044] - netfilter: nf_log_syslog: Merge MAC header dumpers (Phil Sutter) [RHEL-6044] - tipc: fix a potential deadlock on &tx->lock (Xin Long) [RHEL-14830] - tipc: stop tipc crypto on failure in tipc_node_create (Xin Long) [RHEL-14830] - tipc: check return value of pskb_trim() (Xin Long) [RHEL-14830] - net: tipc: resize nlattr array to correct size (Xin Long) [RHEL-14830] - scsi: target: core: Fix deadlock due to recursive locking (Maurizio Lombardi) [RHEL-15311] - scsi: target: Replace strlcpy() with strscpy() (Maurizio Lombardi) [RHEL-15311] - scsi: target: iscsi: Stop using sprintf() in iscsi_target_configfs.c (Maurizio Lombardi) [RHEL-15311] - scsi: target: iscsi: Fix buffer overflow in lio_target_nacl_info_show() (Maurizio Lombardi) [RHEL-15311] - scsi: target: Fix multiple LUN_RESET handling (Maurizio Lombardi) [RHEL-15311] - scsi: target: iscsit: Free cmds before session free (Maurizio Lombardi) [RHEL-15311] - net: xfrm: skip policies marked as dead while reinserting policies (Sabrina Dubroca) [RHEL-14518] - ip_vti: fix potential slab-use-after-free in decode_session6 (Sabrina Dubroca) [RHEL-14518] - ip6_vti: fix slab-use-after-free in decode_session6 (Sabrina Dubroca) [RHEL-14518] - xfrm: fix slab-use-after-free in decode_session6 (Sabrina Dubroca) [RHEL-14518] - net: ipv4: Use kfree_sensitive instead of kfree (Sabrina Dubroca) [RHEL-14518] - xfrm: Linearize the skb after offloading if needed. (Sabrina Dubroca) [RHEL-14518] - xfrm: fix inbound ipv4/udp/esp packets to UDPv6 dualstack sockets (Sabrina Dubroca) [RHEL-14518] - net: skb_queue_purge_reason() optimizations (Antoine Tenart) [RHEL-14568] - net: add skb_queue_purge_reason and __skb_queue_purge_reason (Antoine Tenart) [RHEL-14568] - tcp: add TCP_OLD_SEQUENCE drop reason (Antoine Tenart) [RHEL-14568] - net: move dropreason.h to dropreason-core.h (Antoine Tenart) [RHEL-14568] - net: fix kfree_skb_list use of skb_mark_not_on_list (Antoine Tenart) [RHEL-14568] - net: kfree_skb_list use kmem_cache_free_bulk (Antoine Tenart) [RHEL-14568] - bpf: Clarify error expectations from bpf_clone_redirect (Davide Caratti) [RHEL-15040] - veth: Fixing transmit return status for dropped packets (Davide Caratti) [RHEL-15040] - net: fib: avoid warn splat in flow dissector (Davide Caratti) [RHEL-15040] - net: af_key: fix sadb_x_filter validation (Davide Caratti) [RHEL-15040] - net: dcb: choose correct policy to parse DCB_ATTR_BCN (Davide Caratti) [RHEL-15040] - llc: Don't drop packet from non-root netns. (Davide Caratti) [RHEL-15040] - vlan: fix a potential uninit-value in vlan_dev_hard_start_xmit() (Davide Caratti) [RHEL-15040] - af_key: Reject optional tunnel/BEET mode templates in outbound policies (Davide Caratti) [RHEL-15040] - af_packet: Don't send zero-byte data in packet_sendmsg_spkt(). (Davide Caratti) [RHEL-15040] - ethtool: Fix uninitialized number of lanes (Davide Caratti) [RHEL-15040] - vlan: partially enable SIOCSHWTSTAMP in container (Davide Caratti) [RHEL-15040] - net/sched: act_ct: additional checks for outdated flows (Davide Caratti) [RHEL-14032] - netfilter: flowtable: GC pushes back packets to classic path (Davide Caratti) [RHEL-14032] - net: sched: sch_qfq: Use non-work-conserving warning handler (Davide Caratti) [RHEL-14032] - net: sched: sch_qfq: Fix UAF in qfq_dequeue() (Davide Caratti) [RHEL-14032] - net/sched: sch_hfsc: upgrade 'rt' to 'sc' when it becomes a inner curve (Davide Caratti) [RHEL-14032] - net/sched: sch_hfsc: Ensure inner classes have fsc curve (Davide Caratti) [RHEL-14032] - net/sched: fix a qdisc modification with ambiguous command request (Davide Caratti) [RHEL-14032] - net/sched: mqprio: Add length check for TCA_MQPRIO_{MAX/MIN}_RATE64 (Davide Caratti) [RHEL-14032] - net/sched: mqprio: add extack to mqprio_parse_nlattr() (Davide Caratti) [RHEL-14032] - net: sched: cls_flower: Undo tcf_bind_filter in case of an error (Davide Caratti) [RHEL-14032] - net: sched: cls_bpf: Undo tcf_bind_filter in case of an error (Davide Caratti) [RHEL-14032] - net: sched: cls_u32: Undo refcount decrement in case update failed (Davide Caratti) [RHEL-14032] - net: sched: cls_u32: Undo tcf_bind_filter if u32_replace_hw_knode (Davide Caratti) [RHEL-14032] - net: sched: cls_matchall: Undo tcf_bind_filter in case of failure after mall_set_parms (Davide Caratti) [RHEL-14032] - net/sched: flower: Ensure both minimum and maximum ports are specified (Davide Caratti) [RHEL-14032] - net/sched: act_pedit: Add size check for TCA_PEDIT_PARMS_EX (Davide Caratti) [RHEL-14032] - sch_netem: fix issues in netem_change() vs get_dist_table() (Davide Caratti) [RHEL-14032] - sch_netem: acquire qdisc lock in netem_change() (Davide Caratti) [RHEL-14032] - selftests: tc-testing: add one test for flushing explicitly created chain (Davide Caratti) [RHEL-14032] - net/sched: cls_api: Fix lockup on flushing explicitly created chain (Davide Caratti) [RHEL-14032] - net/sched: qdisc_destroy() old ingress and clsact Qdiscs before grafting (Davide Caratti) [RHEL-14032] - net/sched: Refactor qdisc_graft() for ingress and clsact Qdiscs (Davide Caratti) [RHEL-14032] - net/sched: act_ct: Fix promotion of offloaded unreplied tuple (Davide Caratti) [RHEL-14032] - net/sched: fq_pie: ensure reasonable TCA_FQ_PIE_QUANTUM values (Davide Caratti) [RHEL-14032] - net: sched: fix NULL pointer dereference in mq_attach (Davide Caratti) [RHEL-14032] - net/sched: act_mirred: Add carrier check (Davide Caratti) [RHEL-14032] - redhat/configs: delete ftdi-elan driver config (Desnes Nunes) [RHEL-13071] - redhat/configs: delete u132-hcd driver config (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: acpi: fix a NULL vs IS_ERR() check in probe (Desnes Nunes) [RHEL-13071] - usb: typec: Fix fast_role_swap_current show function (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: Fix command cancellation (Desnes Nunes) [RHEL-13071] - USB: serial: option: add Quectel EM061KGL series (Desnes Nunes) [RHEL-13071] - usb: typec: tps6598x: Fix broken polling mode after system suspend/resume (Desnes Nunes) [RHEL-13071] - usb: usbfs: Use consistent mmap functions (Desnes Nunes) [RHEL-13071] - usb: usbfs: Enforce page requirements for mmap (Desnes Nunes) [RHEL-13071] - thunderbolt: Do not touch CL state configuration during discovery (Desnes Nunes) [RHEL-13071] - thunderbolt: Increase DisplayPort Connection Manager handshake timeout (Desnes Nunes) [RHEL-13071] - thunderbolt: dma_test: Use correct value for absent rings when creating paths (Desnes Nunes) [RHEL-13071] - xhci: Fix incorrect tracking of free space on transfer rings (Desnes Nunes) [RHEL-13071] - xhci-pci: Only run d3cold avoidance quirk for s2idle (Desnes Nunes) [RHEL-13071] - usb-storage: fix deadlock when a scsi command timeouts more than once (Desnes Nunes) [RHEL-13071] - usb: typec: tps6598x: Fix fault at module removal (Desnes Nunes) [RHEL-13071] - usb: typec: altmodes/displayport: fix pin_assignment_show (Desnes Nunes) [RHEL-13071] - USB: UHCI: adjust zhaoxin UHCI controllers OverCurrent bit value (Desnes Nunes) [RHEL-13071] - PCI: Add ACS quirk for Zhaoxin Root/Downstream Ports (Desnes Nunes) [RHEL-13071] - PCI: Add ACS quirk for Zhaoxin multi-function devices (Desnes Nunes) [RHEL-13071] - PCI: Add Zhaoxin Vendor ID (Desnes Nunes) [RHEL-13071] - USB: usbtmc: Fix direction for 0-length ioctl control messages (Desnes Nunes) [RHEL-13071] - usb: usbtmc: Fix bug in pipe direction for control transfers (Desnes Nunes) [RHEL-13071] - media: pvrusb2: fix DVB_CORE dependency (Desnes Nunes) [RHEL-13071] - USB: sisusbvga: Add endpoint checks (Desnes Nunes) [RHEL-13071] - USB: core: Add routines for endpoint checks in old drivers (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: don't print PPM init deferred errors (Desnes Nunes) [RHEL-13071] - usb: typec: tcpm: fix multiple times discover svids error (Desnes Nunes) [RHEL-13071] - usb: xhci: plat: Add USB 3.0 phy support (Desnes Nunes) [RHEL-13071] - usb: host: xhci-plat: Use dev_is_pci() helper (Desnes Nunes) [RHEL-13071] - xhci: fix debugfs register accesses while suspended (Desnes Nunes) [RHEL-13071] - debugfs: regset32: Add Runtime PM support (Desnes Nunes) [RHEL-13071] - USB: serial: option: add UNISOC vendor and TOZED LT70C product (Desnes Nunes) [RHEL-13071] - net: thunderbolt: Fix typos in comments (Desnes Nunes) [RHEL-13071] - net: thunderbolt: Fix sparse warnings in tbnet_xmit_csum_and_map() (Desnes Nunes) [RHEL-13071] - net: thunderbolt: Fix sparse warnings in tbnet_check_frame() and tbnet_poll() (Desnes Nunes) [RHEL-13071] - media: mc-device: remove unnecessary __must_check (Desnes Nunes) [RHEL-13071] - media: au0828: remove unnecessary (void*) conversions (Desnes Nunes) [RHEL-13071] - USB: core: Fix docs warning caused by wireless_status feature (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: acpi: add quirk for ASUS Zenbook UM325 (Desnes Nunes) [RHEL-13071] - ACPI: OSL: Remove the helper for deactivating memory region (Desnes Nunes) [RHEL-13071] - ACPI: OSL: Clean up printing messages (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: acpi: Map the mailbox with memremap() (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: tps6598x: make interrupts optional (Desnes Nunes) [RHEL-13071] - dt-bindings: Explicitly allow additional properties in common schemas (Desnes Nunes) [RHEL-13071] - dt-bindings: connector: Convert Samsung 11-pin USB bindings to dtschema (Desnes Nunes) [RHEL-13071] - dt-bindings: Merge gpio-usb-b-connector with usb-connector (Desnes Nunes) [RHEL-13071] - dt-bindings: Clean-up schema indentation formatting (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: typec-tcpci: convert to DT schema format (Desnes Nunes) [RHEL-13071] - usb: typec: tcpm: try to get role switch from tcpc fwnode (Desnes Nunes) [RHEL-13071] - USB: core: Add API to change the wireless_status (Desnes Nunes) [RHEL-13071] - USB: core: Add wireless_status sysfs attribute (Desnes Nunes) [RHEL-13071] - ABI: sysfs-bus-usb: better document variable argument (Desnes Nunes) [RHEL-13071] - thunderbolt: Introduce usb4_port_sb_opcode_err_to_errno() helper (Desnes Nunes) [RHEL-13071] - media: pvrusb2: clean up unneeded complexity in pvrusb2 class logic (Desnes Nunes) [RHEL-13071] - usb: move config USB_USS720 to usb's misc Kconfig (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: usb-nop-xceiv: add power-domains property (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: usb-nop-xceiv: Convert to DT schema (Desnes Nunes) [RHEL-13071] - thunderbolt: Make use of SI units from units.h (Desnes Nunes) [RHEL-13071] - thunderbolt: Get rid of redundant 'else' (Desnes Nunes) [RHEL-13071] - thunderbolt: ACPI: Replace tb_acpi_find_port() with acpi_find_child_by_adr() (Desnes Nunes) [RHEL-13071] - usb: pci-quirks: Reduce the length of a spinlock section in usb_amd_find_chipset_info() (Desnes Nunes) [RHEL-13071] - xhci: use pm_ptr() instead of #ifdef for CONFIG_PM conditionals (Desnes Nunes) [RHEL-13071] - usb: xhci-pci: Set PROBE_PREFER_ASYNCHRONOUS (Desnes Nunes) [RHEL-13071] - usb: typec: tps6598x: Add support for polling interrupts status (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: add PMIC Glink UCSI driver (Desnes Nunes) [RHEL-13071] - tracing: Acquire buffer from temparary trace sequence (Desnes Nunes) [RHEL-13071] - USB: serial: quatech2: remove unused qt2_setdevice function (Desnes Nunes) [RHEL-13071] - usb: typec: tipd: remove unused tps6598x_write16,32 functions (Desnes Nunes) [RHEL-13071] - usb: typec: tcpci_mt6360: remove unused mt6360_tcpc_read16 function (Desnes Nunes) [RHEL-13071] - usb: typec: tcpm: remove unnecessary (void*) conversions (Desnes Nunes) [RHEL-13071] - xhci: Move xhci MSI sync function to to xhci-pci (Desnes Nunes) [RHEL-13071] - xhci: Call MSI sync function from xhci-pci instead of generic xhci code (Desnes Nunes) [RHEL-13071] - xhci: Move functions to cleanup MSI to xhci-pci (Desnes Nunes) [RHEL-13071] - xhci: move PCI specific MSI/MSIX cleanup away from generic xhci functions (Desnes Nunes) [RHEL-13071] - xhci: Move functions to setup msi to xhci-pci (Desnes Nunes) [RHEL-13071] - xhci: Avoid PCI MSI/MSIX interrupt reinitialization at resume (Desnes Nunes) [RHEL-13071] - xhci: dbc: Provide sysfs option to configure dbc descriptors (Desnes Nunes) [RHEL-13071] - xhci: mem: Join string literals back (Desnes Nunes) [RHEL-13071] - xhci: mem: Replace explicit castings with appropriate specifiers (Desnes Nunes) [RHEL-13071] - xhci: mem: Use while (i--) pattern to clean up (Desnes Nunes) [RHEL-13071] - xhci: mem: Drop useless return:s (Desnes Nunes) [RHEL-13071] - xhci: mem: Get rid of redundant 'else' (Desnes Nunes) [RHEL-13071] - xhci: mem: Use dma_poll_zalloc() instead of explicit memset() (Desnes Nunes) [RHEL-13071] - xhci: mem: Carefully calculate size for memory allocations (Desnes Nunes) [RHEL-13071] - overflow: Provide constant expression struct_size (Desnes Nunes) [RHEL-13071] - test_overflow: Regularize test reporting output (Desnes Nunes) [RHEL-13071] - overflow: Implement size_t saturating arithmetic helpers (Desnes Nunes) [RHEL-13071] - test_overflow: Add shift overflow tests (Desnes Nunes) [RHEL-13071] - overflow.h: Add comment documenting __ab_c_size() (Desnes Nunes) [RHEL-13071] - docs: basics.rst: get rid of rcu kernel-doc macros (Desnes Nunes) [RHEL-13071] - docs: Do not seek comments in kernel/rcu/tree_plugin.h (Desnes Nunes) [RHEL-13071] - docs: deprecated.rst: Add zero-length and one-element arrays (Desnes Nunes) [RHEL-13071] - docs: Remove :c:func: from process/deprecated.rst (Desnes Nunes) [RHEL-13071] - docs: Introduce deprecated APIs list (Desnes Nunes) [RHEL-13071] - USB: misc: Remove unused include file usb_u132.h (Desnes Nunes) [RHEL-13071] - usb: ftdi-elan: Delete driver (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: Drop unneeded quotes (Desnes Nunes) [RHEL-13071] - usb: host: u132-hcd: Delete driver (Desnes Nunes) [RHEL-13071] - media: pvrusb2: VIDEO_PVRUSB2 depends on DVB_CORE to use dvb_* symbols (Desnes Nunes) [RHEL-13071] - usb: misc: usb3503: support usb3803 and bypass mode (Desnes Nunes) [RHEL-13071] - usb: misc: usb3503: refactor code to prepare for usb3803 addition (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: smsc,usb3503: Add usb3803 (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: Convert SMSC USB3503 binding to a schema (Desnes Nunes) [RHEL-13071] - usb: typec: fusb302: mark OF related data as maybe unused (Desnes Nunes) [RHEL-13071] - usb: typec: hd3ss3220: Drop of_match_ptr for ID table (Desnes Nunes) [RHEL-13071] - usb: typec: hd3ss3220: Convert to i2c's .probe_new() (Desnes Nunes) [RHEL-13071] - usb: acpi: Switch to use acpi_evaluate_dsm_typed() (Desnes Nunes) [RHEL-13071] - usb: Use of_property_read_bool() for boolean properties (Desnes Nunes) [RHEL-13071] - usb: host: Fix refcount leak in ehci_hcd_ppc_of_probe (Desnes Nunes) [RHEL-13071] - usb: usb251xb: Switch to use dev_err_probe() helper (Desnes Nunes) [RHEL-13071] - thunderbolt: Refactor DROM reading (Desnes Nunes) [RHEL-13071] - thunderbolt: use `tb_eeprom_get_drom_offset` to discover DROM offset (Desnes Nunes) [RHEL-13071] - usb: xhci: change some trace event __dynamic_array() to __get_buf() (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: allow evaluated properties in OHCI controllers (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: usb-device: make "compatible" optional (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: hcd: correct usb-device path (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: fix yamllint check warning (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: usb-device: fix typo in required properties (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: convert usb-device.txt to YAML schema (Desnes Nunes) [RHEL-13071] - dt-bindings: Fix SPI and I2C bus node names in examples (Desnes Nunes) [RHEL-13071] - dt-bindings: mfd: mediatek: Add bindings for MT6360 PMIC (Desnes Nunes) [RHEL-13071] - usb typec: mt6360: Add MT6360 Type-C DT binding documentation (Desnes Nunes) [RHEL-13071]- net: xfrm: Fix xfrm_address_filter OOB read (Wander Lairson Costa) [2227304] {CVE-2023-39194} - drm/qxl: fix UAF on handle creation (Wander Lairson Costa) [2218333] {CVE-2023-39198} - x86/sev: Make enc_dec_hypercall() accept a size instead of npages (Vitaly Kuznetsov) [RHEL-3656] - net: virtio_net_hdr_to_skb: count transport header in UFO (Cindy Lu) [RHEL-6030] - ice: reset first in crash dump kernels (Petr Oros) [2139761] - perf/core: Fix potential NULL deref (Wander Lairson Costa) [RHEL-14982] {CVE-2023-5717} - perf: Disallow mis-matched inherited group reads (Wander Lairson Costa) [RHEL-14982] {CVE-2023-5717} - scsi: mpt3sas: Drop redundant pci_enable_pcie_error_reporting() (Tomas Henzl) [RHEL-8246] - scsi: mpt3sas: Fix in error path (Tomas Henzl) [RHEL-8246] - scsi: mpt3sas: Fix loop logic (Tomas Henzl) [RHEL-8246] - scsi: mpt3sas: Remove volatile qualifier (Tomas Henzl) [RHEL-8246] - scsi: mpt3sas: Perform additional retries if doorbell read returns 0 (Tomas Henzl) [RHEL-8246] - scsi: mpi3mr: Split off bus_reset function from host_reset (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Update driver version to 8.5.0.0.0 (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Enhance handling of devices removed after controller reset (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: WRITE SAME implementation (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Add support for more than 1MB I/O (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Update MPI Headers to version 3.00.28 (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Invoke soft reset upon TSU or event ack time out (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Propagate sense data for admin queue SCSI I/O (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Fix the type used for pointers to bitmap (Tomas Henzl) [RHEL-8232] - regmap: Drop initial version of maximum transfer length fixes (Mark Langsdorf) [RHEL-1022] - regmap: Account for register length when chunking (Mark Langsdorf) [RHEL-1022] - driver core: update comments in device_rename() (Mark Langsdorf) [RHEL-1022] - cacheinfo: Add use_arch[|_cache]_info field/function (Mark Langsdorf) [RHEL-1022] - arch_topology: Remove early cacheinfo error message if -ENOENT (Mark Langsdorf) [RHEL-1022] - cacheinfo: Allow early level detection when DT/ACPI info is missing/broken (Mark Langsdorf) [RHEL-1022] - cacheinfo: Check sib_leaf in cache_leaves_are_shared() (Mark Langsdorf) [RHEL-1022] - cacheinfo: Add arch specific early level initializer (Mark Langsdorf) [RHEL-1022] - regmap: Factor out single value register syncing (Mark Langsdorf) [RHEL-1022] - regmap: Add RAM backed register map (Mark Langsdorf) [RHEL-1022] - regmap: Removed compressed cache support (Mark Langsdorf) [RHEL-1022] - base: soc: populate machine name in soc_device_register if empty (Mark Langsdorf) [RHEL-1022] - regmap: Clarify error for unknown cache types (Mark Langsdorf) [RHEL-1022] - regmap: Handle sparse caches in the default sync (Mark Langsdorf) [RHEL-1022] - regmap: add a helper to translate the register address (Mark Langsdorf) [RHEL-1022] - regmap: cache: Silence checkpatch warning (Mark Langsdorf) [RHEL-1022] - regmap: cache: Return error in cache sync operations for REGCACHE_NONE (Mark Langsdorf) [RHEL-1022] - devres: Pass unique name of the resource to devm_add_action() (Mark Langsdorf) [RHEL-1022] - device property: Clarify description of returned value in some functions (Mark Langsdorf) [RHEL-1022] - driver core: Make state_synced device attribute writeable (Mark Langsdorf) [RHEL-1022] - PM: domains: fix memory leak with using debugfs_lookup() (Mark Langsdorf) [RHEL-1022] - PM: runtime: Do not call __rpm_callback() from rpm_idle() (Mark Langsdorf) [RHEL-1022] - kobject: kset_uevent_ops: make name() callback take a const * (Mark Langsdorf) [RHEL-1022] - kobject: kset_uevent_ops: make filter() callback take a const * (Mark Langsdorf) [RHEL-1022] - kobject: make get_ktype() take a const pointer (Mark Langsdorf) [RHEL-1022] - kobject: make kobject_get_ownership() take a constant kobject * (Mark Langsdorf) [RHEL-1022] - arm64: topology: move store_cpu_topology() to shared code (Mark Langsdorf) [RHEL-1022] - filemap: skip write and wait if end offset precedes start (Nico Pache) [RHEL-5620] - mm/mempolicy: clean up the code logic in queue_pages_pte_range (Nico Pache) [RHEL-5620] - mm:vmscan: fix inaccurate reclaim during proactive reclaim (Nico Pache) [RHEL-5620] - mm/page_alloc: don't wake kswapd from rmqueue() unless __GFP_KSWAPD_RECLAIM is specified (Nico Pache) [RHEL-5620] - writeback: fix call of incorrect macro (Nico Pache) [RHEL-5620] - mm/page_alloc: use write_seqlock_irqsave() instead write_seqlock() + local_irq_save(). (Nico Pache) [RHEL-5620] - mm/page_alloc: fix potential deadlock on zonelist_update_seq seqlock (Nico Pache) [RHEL-5620] - writeback, cgroup: fix null-ptr-deref write in bdi_split_work_to_wbs (Nico Pache) [RHEL-5620] - mm/khugepaged: check again on anon uffd-wp during isolation (Nico Pache) [RHEL-5620] - mm/swap: fix swap_info_struct race between swapoff and get_swap_pages() (Nico Pache) [RHEL-5620] - mm/fadvise: use LLONG_MAX instead of -1 for eof (Nico Pache) [RHEL-5620] - mm: Make failslab writable again (Nico Pache) [RHEL-5620] - mm: migrate: fix THP's mapcount on isolation (Nico Pache) [RHEL-5620] - mm/memremap.c: map FS_DAX device memory as decrypted (Nico Pache) [RHEL-5620] - mm/page_alloc: add missing is_migrate_isolate() check in set_page_guard() (Nico Pache) [RHEL-5620] - mm: pagewalk: Fix race between unmap and page walker (Nico Pache) [RHEL-5620] - mm/slub: add missing TID updates on slab deactivation (Nico Pache) [RHEL-5620] - hugetlb: fix huge_pmd_unshare address update (Nico Pache) [RHEL-5620] - fs-writeback: writeback_sb_inodes:Recalculate 'wrote' according skipped pages (Nico Pache) [RHEL-5620] - highmem: fix checks in __kmap_local_sched_{in,out} (Nico Pache) [RHEL-5620] - mm: fix race between MADV_FREE reclaim and blkdev direct IO read (Nico Pache) [RHEL-5620] - mm/thp: fix NR_FILE_MAPPED accounting in page_*_file_rmap() (Nico Pache) [RHEL-5620] - memblock: use kfree() to release kmalloced memblock regions (Nico Pache) [RHEL-5620] - mm/list_lru.c: prefer struct_size over open coded arithmetic (Nico Pache) [RHEL-5620] - mm/kmemleak: allow __GFP_NOLOCKDEP passed to kmemleak's gfp (Nico Pache) [RHEL-5620] - mm/hugetlb: initialize hugetlb_usage in mm_init (Nico Pache) [RHEL-5620] - mm: mempolicy: don't have to split pmd for huge zero page (Nico Pache) [RHEL-5620] - mm/thp: fix page_vma_mapped_walk() if THP mapped by ptes (Nico Pache) [RHEL-5620] - mm/thp: unmap_mapping_page() to fix THP truncate_cleanup_page() (Nico Pache) [RHEL-5620] - delayacct: clear right task's flag after blkio completes (Nico Pache) [RHEL-5620] - mm: remove lru_add_drain_all in alloc_contig_range (Nico Pache) [RHEL-5620] - mm: always have io_remap_pfn_range() set pgprot_decrypted() (Nico Pache) [RHEL-5620] - mm/page_alloc: fix documentation error (Nico Pache) [RHEL-5620] - s390/mm: mmap base does not depend on ADDR_NO_RANDOMIZE personality (Nico Pache) [RHEL-5620] - powerpc/mm: Fix "sz" set but not used warning (Nico Pache) [RHEL-5620] - powerpc/mm/hash: Handle mmap_min_addr correctly in get_unmapped_area topdown search (Nico Pache) [RHEL-5620] - mm: ksm: do not block on page lock when searching stable tree (Nico Pache) [RHEL-5620] - powerpc/hugetlbpage: Rmove unhelpful HUGEPD_*_SHIFT macros (Nico Pache) [RHEL-5620] - arm64: mm: Export __sync_icache_dcache() for xen-privcmd (Nico Pache) [RHEL-5620]- pNFS/filelayout: treat GETDEVICEINFO errors as layout failure (Scott Mayhew) [RHEL-4969] - mm/kmemleak: move up cond_resched() call in page scanning loop (Waiman Long) [RHEL-8630] - net/sched: cls_rsvp: always try to match inside the linear part of skb (Davide Caratti) [RHEL-11730] {CVE-2023-42755} - vc_screen: don't clobber return value in vcs_read (Ricardo Robaina) [2221467] {CVE-2023-3567} - vc_screen: move load of struct vc_data pointer in vcs_read() to avoid UAF (Ricardo Robaina) [2221467] {CVE-2023-3567} - vt_kdsetmode: extend console locking (John W. Linville) [RHEL-3016] {CVE-2021-3753} - console: consume APC, DM, DCS (John W. Linville) [RHEL-3016] {CVE-2021-3753} - vt_ioctl: move vt_kdsetmode out of vt_k_ioctl (John W. Linville) [RHEL-3016] {CVE-2021-3753} - scsi: core: Fix legacy /proc parsing buffer overflow (Ewan D. Milne) [RHEL-14311] - scsi: core: Improve scsi_vpd_inquiry() checks (Ewan D. Milne) [RHEL-14311] - scsi: core: Fix a procfs host directory removal regression (Ewan D. Milne) [RHEL-14311] - scsi: core: Remove the /proc/scsi/${proc_name} directory earlier (Ewan D. Milne) [RHEL-14311] - ibmvnic: Assign XPS map to correct queue index (Mukesh Chaurasiya) [RHEL-11210] - ibmvnic: Toggle between queue types in affinity mapping (Mukesh Chaurasiya) [RHEL-11210] - ibmvnic: Update XPS assignments during affinity binding (Mukesh Chaurasiya) [RHEL-11210] - ibmvnic: Add hotpluggable CPU callbacks to reassign affinity hints (Mukesh Chaurasiya) [RHEL-11210] - ibmvnic: Assign IRQ affinity hints to device queues (Mukesh Chaurasiya) [RHEL-11210] - mm/slub: fix a slab missed to be freed problem (Rafael Aquini) [RHEL-9526] - mm/slub: simplify __cmpxchg_double_slab() and slab_[un]lock() (Rafael Aquini) [RHEL-9526] - mm/slub: convert object_map_lock to non-raw spinlock (Rafael Aquini) [RHEL-9526] - mm/slub: remove slab_lock() usage for debug operations (Rafael Aquini) [RHEL-9526] - mm/slub: restrict sysfs validation to debug caches and make it safe (Rafael Aquini) [RHEL-9526] - mm/slub: move free_debug_processing() further (Rafael Aquini) [RHEL-9526] - mm/slub: remove unneeded return value of slab_pad_check (Rafael Aquini) [RHEL-9526] - s390/qdio: fix do_sqbs() inline assembly constraint (Tobias Huschle) [RHEL-11194] - s390/lcs: Convert sysfs sprintf to sysfs_emit (Tobias Huschle) [RHEL-11194] - s390/lcs: Convert sprintf to scnprintf (Tobias Huschle) [RHEL-11194] - s390/ctcm: Convert sysfs sprintf to sysfs_emit (Tobias Huschle) [RHEL-11194] - s390/ctcm: Convert sprintf/snprintf to scnprintf (Tobias Huschle) [RHEL-11194] - s390/qeth: Fix vipa deletion (Tobias Huschle) [RHEL-11194] - s390/lcs: Remove FDDI option (Tobias Huschle) [RHEL-11194] - net/ism: Remove redundant pci_clear_master (Tobias Huschle) [RHEL-11198] - net/smc: Fix dependency of SMC on ISM (Tobias Huschle) [RHEL-11198] - s390/ism: Do not unregister clients with registered DMBs (Tobias Huschle) [RHEL-11198] - s390/ism: Fix and simplify add()/remove() callback handling (Tobias Huschle) [RHEL-11198] - s390/ism: Fix locking for forwarding of IRQs and events to clients (Tobias Huschle) [RHEL-11198] - s390/ism: Fix trying to free already-freed IRQ by repeated ism_dev_exit() (Tobias Huschle) [RHEL-11198] - s390/ism: Set DMA coherent mask (Tobias Huschle) [RHEL-11198] - net/ism: Remove extra include (Tobias Huschle) [RHEL-11198] - net/smc: Introduce explicit check for v2 support (Tobias Huschle) [RHEL-11198] - dm: fix a race condition in retrieve_deps (Benjamin Marzinski) [RHEL-13917] - dm raid: protect md_stop() with 'reconfig_mutex' (Benjamin Marzinski) [RHEL-13917] - dm raid: clean up four equivalent goto tags in raid_ctr() (Benjamin Marzinski) [RHEL-13917] - dm raid: fix missing reconfig_mutex unlock in raid_ctr() error paths (Benjamin Marzinski) [RHEL-13917] - dm integrity: fix double free on memory allocation failure (Benjamin Marzinski) [RHEL-13917] - dm integrity: scale down the recalculate buffer if memory allocation fails (Benjamin Marzinski) [RHEL-13917] - dm integrity: only allocate recalculate buffer when needed (Benjamin Marzinski) [RHEL-13917] - dm integrity: reduce vmalloc space footprint on 32-bit architectures (Benjamin Marzinski) [RHEL-13917] - dm ioctl: Refuse to create device named "." or ".." (Benjamin Marzinski) [RHEL-13917] - dm ioctl: Refuse to create device named "control" (Benjamin Marzinski) [RHEL-13917] - dm ioctl: structs and parameter strings must not overlap (Benjamin Marzinski) [RHEL-13917] - dm ioctl: Avoid pointer arithmetic overflow (Benjamin Marzinski) [RHEL-13917] - dm ioctl: Check dm_target_spec is sufficiently aligned (Benjamin Marzinski) [RHEL-13917] - dm thin: disable discards for thin-pool if no_discard_passdown (Benjamin Marzinski) [RHEL-13917] - dm thin metadata: Fix ABBA deadlock by resetting dm_bufio_client (Benjamin Marzinski) [RHEL-13917] - dm crypt: fix crypt_ctr_cipher_new return value on invalid AEAD cipher (Benjamin Marzinski) [RHEL-13917] - dm thin: update .io_hints methods to not require handling discards last (Benjamin Marzinski) [RHEL-13917] - dm thin: remove return code variable in pool_map (Benjamin Marzinski) [RHEL-13917]- cifs: Fix UAF in cifs_demultiplex_thread() (Scott Mayhew) [RHEL-7930 RHEL-9046] {CVE-2023-1192} - x86/platform/uv: Use alternate source for socket to node data (Frank Ramsay) [RHEL-13360] - media: technisat-usb2: break out of loop at end of buffer (Desnes Nunes) [RHEL-3013 RHEL-3895] {CVE-2019-15505} - can: af_can: fix NULL pointer dereference in can_rcv_filter (Ricardo Robaina) [RHEL-6429 RHEL-7053] {CVE-2023-2166} - PCI/portdrv: Prevent LS7A Bus Master clearing on shutdown (Myron Stowe) [RHEL-5147] - kernel/fork: beware of __put_task_struct() calling context (Wander Lairson Costa) [RHEL-14767] - KVM: x86/mmu: Fix an sign-extension bug with mmu_seq that hangs vCPUs (Peter Xu) [RHEL-7210] - net: tun: fix bugs for oversize packet when napi frags enabled (Ricardo Robaina) [RHEL-7185 RHEL-7267] {CVE-2023-3812} - Bluetooth: hci_ldisc: check HCI_UART_PROTO_READY flag in HCIUARTGETPROTO (Jose Ignacio Tornos Martinez) [RHEL-6357] {CVE-2023-31083} - RDMA/qedr: clean up work queue on failure in qedr_alloc_resources() (Kamal Heib) [RHEL-10313 RHEL-11030] - RDMA/qedr: fix repeated words in comments (Kamal Heib) [RHEL-10313 RHEL-11030] - x86/sev: Check for user-space IOIO pointing to kernel space (Wander Lairson Costa) [RHEL-14978] {CVE-2023-46813} - x86/sev: Check IOBM for IOIO exceptions from user-space (Wander Lairson Costa) [RHEL-14978] {CVE-2023-46813} - x86/sev: Disable MMIO emulation from user mode (Wander Lairson Costa) [RHEL-14978] {CVE-2023-46813} - x86/sev-es: Fix SEV-ES OUT/IN immediate opcode vc handling (Wander Lairson Costa) [RHEL-14978] {CVE-2023-46813} - USB: core: Fix oversight in SuperSpeed initialization (Desnes Nunes) [RHEL-2569 RHEL-2675] {CVE-2023-37453} - USB: core: Fix race by not overwriting udev->descriptor in hub_port_init() (Desnes Nunes) [RHEL-2569 RHEL-2675] {CVE-2023-37453} - USB: core: Change usb_get_device_descriptor() API (Desnes Nunes) [RHEL-2569 RHEL-2675] {CVE-2023-37453} - USB: core: Unite old scheme and new scheme descriptor reads (Desnes Nunes) [RHEL-2569 RHEL-2675] {CVE-2023-37453} - bonding: do not assume skb mac_header is set (Hangbin Liu) [RHEL-13959] - bonding: Fix incorrect deletion of ETH_P_8021AD protocol vid from slaves (Hangbin Liu) [RHEL-13959] - bonding: support balance-alb with openvswitch (Hangbin Liu) [RHEL-13959] - bonding: reset bond's flags when down link is P2P device (Hangbin Liu) [RHEL-13959] - net: fix stack overflow when LRO is disabled for virtual interfaces (Hangbin Liu) [RHEL-13959] - Documentation: bonding: fix the doc of peer_notif_delay (Hangbin Liu) [RHEL-13959] - bonding: fix send_peer_notif overflow (Hangbin Liu) [RHEL-13959] - bonding: Fix memory leak when changing bond type to Ethernet (Hangbin Liu) [RHEL-13959] - bonding: restore bond's IFF_SLAVE flag if a non-eth dev enslave fails (Hangbin Liu) [RHEL-13959] - bonding: restore IFF_MASTER/SLAVE flags on bond enslave ether type change (Hangbin Liu) [RHEL-13959] - drivers/net/bonding/bond_3ad: return when there's no aggregator (Hangbin Liu) [RHEL-13959] - KVM: s390: pv: Allow AP-instructions for pv-guests (Thomas Huth) [2111392] - KVM: s390: Add UV feature negotiation (Thomas Huth) [2111392] - s390/uv: UV feature check utility (Thomas Huth) [2111392] - s390/vfio-ap: make sure nib is shared (Thomas Huth) [2111392] - KVM: s390: export kvm_s390_pv*_is_protected functions (Thomas Huth) [2111392] - s390/uv: export uv_pin_shared for direct usage (Thomas Huth) [2111392] - s390/vfio-ap: check for TAPQ response codes 0x35 and 0x36 (Thomas Huth) [2111392] - s390/vfio-ap: handle queue state change in progress on reset (Thomas Huth) [2111392] - s390/vfio-ap: use work struct to verify queue reset (Thomas Huth) [2111392] - s390/vfio-ap: store entire AP queue status word with the queue object (Thomas Huth) [2111392] - s390/vfio-ap: remove upper limit on wait for queue reset to complete (Thomas Huth) [2111392] - s390/vfio-ap: allow deconfigured queue to be passed through to a guest (Thomas Huth) [2111392] - s390/vfio-ap: wait for response code 05 to clear on queue reset (Thomas Huth) [2111392] - s390/vfio-ap: clean up irq resources if possible (Thomas Huth) [2111392] - s390/vfio-ap: no need to check the 'E' and 'I' bits in APQSW after TAPQ (Thomas Huth) [2111392] - s390/vfio-ap: fix memory leak in vfio_ap device driver (Thomas Huth) [2111392] - s390/vfio-ap: remove redundant driver match function (Thomas Huth) [2111392] - s390/vfio_ap: increase max wait time for reset verification (Thomas Huth) [2111392] - s390/vfio_ap: fix handling of error response codes (Thomas Huth) [2111392] - s390/vfio_ap: verify ZAPQ completion after return of response code zero (Thomas Huth) [2111392] - s390/vfio_ap: use TAPQ to verify reset in progress completes (Thomas Huth) [2111392] - s390/vfio_ap: check TAPQ response code when waiting for queue reset (Thomas Huth) [2111392] - s390/vfio-ap: verify reset complete in separate function (Thomas Huth) [2111392] - s390/vfio-ap: fix an error handling path in vfio_ap_mdev_probe_queue() (Thomas Huth) [2111392] - s390/vfio-ap: add s390dbf logging to the vfio_ap_irq_enable function (Thomas Huth) [2111392] - s390-vfio-ap: introduces s390 kernel debug feature for vfio_ap device driver (Thomas Huth) [2111392]- netfilter: ipset: add the missing IP_SET_HASH_WITH_NET0 macro for ip_set_hash_netportnet.c (Florian Westphal) [RHEL-8444] {CVE-2023-42753} - cxgb4: fix use after free bugs caused by circular dependency problem (Ricardo Robaina) [RHEL-6261 RHEL-7058] {CVE-2023-4133} - ipvs: queue delayed work to expire no destination connections if expire_nodest_conn=1 (Florian Westphal) [RHEL-5742] - bpf: Fix incorrect verifier pruning due to missing register precision taints (Artem Savkov) [RHEL-7534 RHEL-7535] {CVE-2023-2163} - mm/memcontrol.c: remove the redundant updating of stats_flush_threshold (Waiman Long) [2238379] - virtio_balloon: Fix endless deflation and inflation on arm64 (Gavin Shan) [RHEL-1672] - i40e: Fix VF VLAN offloading when port VLAN is configured (Ivan Vecera) [RHEL-6384] - libfs: take cursors out of list when moving past the end of directory (Jeffrey Layton) [RHEL-15148] - net/core: Fix ETH_P_1588 flow dissector (Paolo Abeni) [RHEL-14379] - skbuff: skb_segment, Call zero copy functions before using skbuff frags (Paolo Abeni) [RHEL-14379] - net: prevent skb corruption on frag list segmentation (Paolo Abeni) [RHEL-14379] - udp6: Fix race condition in udp6_sendmsg & connect (Paolo Abeni) [RHEL-14379] - scsi: megaraid_sas: Driver version update to 07.727.03.00-rc1 (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Log message when controller reset is requested but not issued (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Increase register read retry rount from 3 to 30 for selected registers (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Fix deadlock on firmware crashdump (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Use pci_dev_id() to simplify the code (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Convert union megasas_sgl to flex-arrays (Tomas Henzl) [RHEL-8244] - scsi: smartpqi: Change driver version to 2.1.24-046 (Don Brace) [RHEL-1728] - scsi: smartpqi: Enhance error messages (Don Brace) [RHEL-1728] - scsi: smartpqi: Enhance controller offline notification (Don Brace) [RHEL-1728] - scsi: smartpqi: Enhance shutdown notification (Don Brace) [RHEL-1728] - scsi: smartpqi: Simplify lun_number assignment (Don Brace) [RHEL-1728] - scsi: smartpqi: Rename pciinfo to pci_info (Don Brace) [RHEL-1728] - scsi: smartpqi: Rename MACRO to clarify purpose (Don Brace) [RHEL-1728] - scsi: smartpqi: Add abort handler (Don Brace) [RHEL-1728] - x86/sgx: mark as supported (Vladis Dronov) [2041881] - x86/sgx: Resolves SECS reclaim vs. page fault for EAUG race (Vladis Dronov) [2041881] - x86/sgx: Break up long non-preemptible delays in sgx_vepc_release() (Vladis Dronov) [2041881] - Documentation: Fix typos (only the SGX part) (Vladis Dronov) [2041881] - x86/sgx: Avoid using iterator after loop in sgx_mmu_notifier_release() (Vladis Dronov) [2041881] - selftests/sgx: Add "test_encl.elf" to TEST_FILES (Vladis Dronov) [2041881] - convert sgx_set_attribute() to fdget()/fdput() (Vladis Dronov) [2041881] - x86/sgx: use VM_ACCESS_FLAGS (Vladis Dronov) [2041881] - x86/sgx: Replace kmap/kunmap_atomic() calls (Vladis Dronov) [2041881] - x86/sgx: Allow enclaves to use Asynchrounous Exit Notification (Vladis Dronov) [2041881] - x86/sgx: Reduce delay and interference of enclave release (Vladis Dronov) [2041881] - x86/vdso: Conditionally export __vdso_sgx_enter_enclave() (Vladis Dronov) [2041881] - x86/sgx: Add overflow check in sgx_validate_offset_length() (Vladis Dronov) [2041881]- team: fix null-ptr-deref when team device type is changed (Hangbin Liu) [RHEL-13961] - team: Fix incorrect deletion of ETH_P_8021AD protocol vid from slaves (Hangbin Liu) [RHEL-13961] - team: reset team's flags when down link is P2P device (Hangbin Liu) [RHEL-13961] - teaming: deliver link-local packets with the link they arrive on (Hangbin Liu) [RHEL-13961] - kernfs: change kernfs_rename_lock into a read-write lock. (Ian Kent) [RHEL-11484] - kernfs: Separate kernfs_pr_cont_buf and rename_lock. (Ian Kent) [RHEL-11484] - kernfs: fix missing kernfs_iattr_rwsem locking (Ian Kent) [RHEL-11484] - kernfs: Use a per-fs rwsem to protect per-fs list of kernfs_super_info (Ian Kent) [RHEL-11484] - kernfs: Introduce separate rwsem to protect inode attributes (Ian Kent) [RHEL-11484] - kernfs: move struct kernfs_root out of the public view. (Ian Kent) [RHEL-11484] - iw_cxgb4: Fix potential NULL dereference in c4iw_fill_res_cm_id_entry() (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: Fix potential null-ptr-deref in pass_establish() (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: add null-ptr-check after ip_dev_find() (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: Replace 0-length arrays with flexible arrays (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: remove unnecessary NULL check in __c4iw_poll_cq_one() (Kamal Heib) [RHEL-1734] - block: check_events: don't bother with events if unsupported (Ming Lei) [RHEL-2407] - Revert "block: unexport DISK_EVENT_MEDIA_CHANGE for legacy/fringe drivers" (Ming Lei) [RHEL-2407] - Revert "ide: unexport DISK_EVENT_MEDIA_CHANGE for ide-gd and ide-cd" (Ming Lei) [RHEL-2407] - block: disk_events: introduce event flags (Ming Lei) [RHEL-2407] - block: genhd: remove async_events field (Ming Lei) [RHEL-2407] - ibmvnic: Ensure login failure recovery is safe from other resets (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Do partial reset on login failure (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Handle DMA unmapping of login buffs in release functions (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Unmap DMA login rsp buffer on send login fail (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Enforce stronger sanity checks on login response (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Free rwi on reset success (Mamatha Inamdar) [RHEL-11211] - selftests: tls: swap the TX and RX sockets in some tests (Hangbin Liu) [RHEL-13962] - selftests: mirror_gre_changes: Tighten up the TTL test match (Hangbin Liu) [RHEL-13962] - selftests: forwarding: tc_tunnel_key: Make filters more specific (Hangbin Liu) [RHEL-13962] - selftests: forwarding: tc_flower: Relax success criterion (Hangbin Liu) [RHEL-13962] - selftests: forwarding: ethtool_extended_state: Skip when using veth pairs (Hangbin Liu) [RHEL-13962] - selftests: forwarding: ethtool: Skip when using veth pairs (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Add a helper to skip test when using veth pairs (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Set default IPv6 traceroute utility (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Switch off timeout (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Skip test when no interfaces are specified (Hangbin Liu) [RHEL-13962] - selftests: rtnetlink: remove netdevsim device after ipsec offload test (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Fix race condition in mirror installation (Hangbin Liu) [RHEL-13962] - selftests: fib_tests: mute cleanup error message (Hangbin Liu) [RHEL-13962] - sched/topology: Align group flags when removing degenerate domain (Phil Auld) [RHEL-2524] - sched/fair: Use recent_used_cpu to test p->cpus_ptr (Phil Auld) [RHEL-2524] - sched/core: Avoid double calling update_rq_clock() in __balance_push_cpu_stop() (Phil Auld) [RHEL-2524] - sched/core: Fixed missing rq clock update before calling set_rq_offline() (Phil Auld) [RHEL-2524] - sched/topology: Mark set_sched_topology() __init (Phil Auld) [RHEL-2524] - sched/wait: Fix a kthread_park race with wait_woken() (Phil Auld) [RHEL-2524] - sched: Add schedule_user() declaration (Phil Auld) [RHEL-2524] - sched/topology: Propagate SMT flags when removing degenerate domain (Phil Auld) [RHEL-2524] - sched_getaffinity: don't assume 'cpumask_size()' is fully initialized (Phil Auld) [RHEL-2524] - sched/topology: Make sched_energy_mutex,update static (Phil Auld) [RHEL-2524] - sched/fair: Fix inaccurate tally of ttwu_move_affine (Phil Auld) [RHEL-2524] - sched/fair: Revise comment about lb decision matrix (Phil Auld) [RHEL-2524] - sched/topology: Remove unused numa_distance in cpu_attach_domain() (Phil Auld) [RHEL-2524] - perf vendor events: Update metric events for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Update metric event names for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Update JSON/events for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Move JSON/events to appropriate files for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Drop STORES_PER_INST metric event for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Drop some of the JSON/events for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Update the JSON/events descriptions for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events power10: Add JSON metric events to present CPI stall cycles in powerpc (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document affinity_domain_via_partition sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show affinity domain via partition information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document affinity_domain_via_domain sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show affinity domain via domain information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document affinity_domain_via_virtual_processor sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show affinity domain via virtual processor information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document processor_config sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show processor config information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document processor_bus_topology sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show processor bus topology information (Mamatha Inamdar) [RHEL-11205] - KVM: x86: Add SBPB support (Waiman Long) [RHEL-11272 RHEL-9298] - KVM: x86: Add IBPB_BRTYPE support (Waiman Long) [RHEL-11272 RHEL-9298] - x86/retpoline: Document some thunk handling aspects (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Remove unnecessary semicolon (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/rethunk: Use SYM_CODE_START[_LOCAL]_NOALIGN macros (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Disentangle rethunk-dependent options (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Move retbleed IBPB check into existing 'has_microcode' code block (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/bugs: Remove default case for fully switched enums (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Remove 'pred_cmd' label (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Unexport untraining functions (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Improve i-cache locality for alias mitigation (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix vulnerability reporting for missing microcode (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Print mitigation for retbleed IBPB case (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Print actual mitigation if requested mitigation isn't possible (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix SBPB enablement for (possible) future fixed HW (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/alternatives: Remove faulty optimization (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix SBPB enablement for spec_rstack_overflow=off (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Don't probe microcode in a guest (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Set CPUID feature bits independently of bug or mitigation status (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix srso_show_state() side effect (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Fix amd_check_microcode() declaration (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/CPU/AMD: Remove amd_get_topology_early() (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Correct the mitigation status when SMT is disabled (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Explain the untraining sequences a bit more (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu/kvm: Provide UNTRAIN_RET_VM (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Cleanup the untrain mess (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Rename srso_(.*)_alias to srso_alias_\1 (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Rename original retbleed methods (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Clean up SRSO return thunk mess (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/alternative: Make custom return thunk unconditional (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - objtool/x86: Fix SRSO mess (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Fix up srso_safe_ret() and __x86_return_thunk() (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Fix __x86_return_thunk symbol type (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/retpoline,kprobes: Fix position of thunk sections with CONFIG_LTO_CLANG (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Disable the mitigation on unaffected configurations (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/CPU/AMD: Fix the DIV(0) initial fix attempt (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20588} - x86/retpoline: Don't clobber RFLAGS during srso_safe_ret() (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu/amd: Enable Zenbleed fix for AMD Custom APU 0405 (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20593} - driver core: cpu: Fix the fallback cpu_show_gds() name (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86: Move gds_ucode_mitigated() declaration to header (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/speculation: Add cpu_show_gds() prototype (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - driver core: cpu: Make cpu_show_not_affected() static (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix build breakage with the LLVM linker (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - Documentation/srso: Document IBPB aspect and fix formatting (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - driver core: cpu: Unify redundant silly stubs (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/CPU/AMD: Do not leak quotient data after a division by 0 (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20588} - x86/srso: Tie SBPB bit setting to microcode patch detection (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add a forgotten NOENDBR annotation (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix return thunks in generated code (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add IBPB on VMEXIT (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add IBPB (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add SRSO_NO support (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add IBPB_BRTYPE support (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add a Speculative RAS Overflow mitigation (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/retbleed: Add __x86_return_thunk alignment checks (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/retbleed: Fix return thunk alignment (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/alternative: Optimize returns patching (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/microcode/AMD: Load late on both threads too (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/returnthunk: Allow different return thunks (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86: Sanitize linker script (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - objtool: Fix .return_sites generation (Waiman Long) [RHEL-11272 RHEL-9298]- kernel/rh_messages.c: move hardware tables to rh_messages.h (Scott Weaver) [2181912] - kernel/rh_messages.c: Wire up new calls (Prarit Bhargava) [2181912] - drivers/pci: Update rh_messages.c (Prarit Bhargava) [2181912] - treewide: Remove mark_driver_deprecated() (Prarit Bhargava) [2181912] - treewide: Remove mark_hardware_deprecated() (Prarit Bhargava) [2181912] - treewide: Remove mark_driver_unmaintained() (Prarit Bhargava) [2181912] - drivers/pci: Remove RHEL-only pci_hw_*() functions (Prarit Bhargava) [2181912] - treewide: Remove pci_hw_disabled() calls (Prarit Bhargava) [2181912] - treewide: Remove pci_hw_deprecated() calls (Prarit Bhargava) [2181912] - treewide: Remove pci_hw_unmaintained() calls (Prarit Bhargava) [2181912] - redhat: fix bug/zjira sort in the changelog (Patrick Talbert) - blk-mq: enforce op-specific segment limits in blk_insert_cloned_request (Ming Lei) [RHEL-14504] - tunnels: fix kasan splat when generating ipv4 pmtu error (Guillaume Nault) [RHEL-14377] - net:ipv6: check return value of pskb_trim() (Guillaume Nault) [RHEL-14377] - sit: update dev->needed_headroom in ipip6_tunnel_bind_dev() (Guillaume Nault) [RHEL-14377] - ipv4: fix null-deref in ipv4_link_failure (Felix Maurer) [RHEL-5427] {CVE-2023-42754} - powerpc/perf/hv-24x7: Update domain value check (Michael Petlan) [RHEL-13718] - vxlan: Expose helper vxlan_build_gbp_hdr (Izabela Bakollari) [RHEL-12413] - vxlan: Remove unused argument from vxlan_build_gbp_hdr( ) and vxlan_build_gpe_hdr( ) (Izabela Bakollari) [RHEL-12413] - net: ipv4: fix one memleak in __inet_del_ifa() (Guillaume Nault) [RHEL-14375] - ipv4: Fix potential uninit variable access bug in __ip_make_skb() (Guillaume Nault) [RHEL-14375] - icmp: guard against too small mtu (Guillaume Nault) [RHEL-14375] - ipv6: ping: fix wrong checksum for large frames (Guillaume Nault) [RHEL-14375] - net: ipv6/addrconf: avoid integer underflow in ipv6_create_tempaddr (Hangbin Liu) [RHEL-13954] - ip6mr: Fix skb_under_panic in ip6mr_cache_report() (Hangbin Liu) [RHEL-13954] - ipv6 addrconf: fix bug where deleting a mngtmpaddr can create a new temporary address (Hangbin Liu) [RHEL-13954] - ipv6/addrconf: fix a potential refcount underflow for idev (Hangbin Liu) [RHEL-13954] - icmp6: Fix null-ptr-deref of ip6_null_entry->rt6i_idev in icmp6_dev(). (Hangbin Liu) [RHEL-13954] - ping6: Fix send to link-local addresses with VRF. (Hangbin Liu) [RHEL-13954] - ipv6: Fix out-of-bounds access in ipv6_find_tlv() (Hangbin Liu) [RHEL-13954]- redhat: remove kabi-rhel810 directory (Prarit Bhargava) - redhat: Update .gitignore for 8.10 kabi files (Prarit Bhargava) - nvmet-tcp: Fix a possible UAF in queue intialization setup (John Meneghini) [RHEL-11509 RHEL-11527] {CVE-2023-5178} - sctp: update hb timer immediately after users change hb_interval (Xin Long) [RHEL-6045] - s390/zcrypt_ep11misc: support API ordinal 6 with empty pin-blob (Tobias Huschle) [RHEL-11200] - net: openvswitch: add support for l4 symmetric hashing (Antoine Tenart) [RHEL-10498] - igmp: limit igmpv3_newpack() packet size to IP_MAX_MTU (Hangbin Liu) [RHEL-10475 RHEL-10477] {CVE-2023-42752} - ip_tunnel: Preserve pointer const in ip_tunnel_info_opts (Ivan Vecera) [RHEL-12418] - tracing: Fix race in perf_trace_buf initialization (Michael Petlan) [RHEL-8648] - Input: gtco - bounds check collection indent level (Desnes Nunes) [RHEL-3014 RHEL-3892] {CVE-2019-13631} - x86/microcode/AMD: Rip out static buffers (Prarit Bhargava) [2225261] - perf/x86/amd: Do not WARN() on every IRQ (Michael Petlan) [RHEL-12340] - netfilter: conntrack: Fix gre tunneling over ipv6 (Florian Westphal) [RHEL-12497] - netfilter: handle the connecting collision properly in nf_conntrack_proto_sctp (Xin Long) [RHEL-6157] - sctp: update transport state when processing a dupcook packet (Xin Long) [RHEL-6157]- trace: Add trace_ipi_send_cpu() (Jerome Marchand) [2192614] - sched, smp: Trace smp callback causing an IPI (Jerome Marchand) [2192614] - smp: reword smp call IPI comment (Jerome Marchand) [2192614] - treewide: Trace IPIs sent via smp_send_reschedule() (Jerome Marchand) [2192614] - irq_work: Trace self-IPIs sent via arch_irq_work_raise() (Jerome Marchand) [2192614] - smp: Trace IPIs sent via arch_send_call_function_ipi_mask() (Jerome Marchand) [2192614] - sched, smp: Trace IPIs sent via send_call_function_single_ipi() (Jerome Marchand) [2192614] - trace: Add trace_ipi_send_cpumask() (Jerome Marchand) [2192614] - RDMA/umem: Set iova in ODP flow (Kamal Heib) [RHEL-1032] - RDMA/core: Update CMA destination address on rdma_resolve_addr (Kamal Heib) [RHEL-1032] - RDMA/core: Refactor rdma_bind_addr (Kamal Heib) [RHEL-1032] - RDMA/cma: Remove NULL check before dev_{put, hold} (Kamal Heib) [RHEL-1032] - IB/isert: Fix possible list corruption in CMA handler (Kamal Heib) [RHEL-1028] - IB/isert: Fix dead lock in ib_isert (Kamal Heib) [RHEL-1028] - RDMA/srpt: Add a check for valid 'mad_agent' pointer (Kamal Heib) [RHEL-1028] - IB/iser: remove redundant new line (Kamal Heib) [RHEL-1028] - IB/iser: centralize setting desc type and done callback (Kamal Heib) [RHEL-1028] - IB/iser: remove unused macros (Kamal Heib) [RHEL-1028] - IB/uverbs: Fix to consider event queue closing also upon non-blocking mode (Kamal Heib) [RHEL-1028] - RDMA/uverbs: Restrict usage of privileged QKEYs (Kamal Heib) [RHEL-1028] - RDMA/cma: Always set static rate to 0 for RoCE (Kamal Heib) [RHEL-1028] - RDMA/core: Fix GID entry ref leak when create_ah fails (Kamal Heib) [RHEL-1028] - RDMA/cm: Trace icm_send_rej event before the cm state is reset (Kamal Heib) [RHEL-1028] - RDMA/cma: Remove NULL check before dev_{put, hold} (Kamal Heib) [RHEL-1028] - RDMA/core: Fix multiple -Warray-bounds warnings (Kamal Heib) [RHEL-1028] - RDMA/cma: Allow UD qp_type to join multicast only (Kamal Heib) [RHEL-1028] - md/raid5: release batch_last before waiting for another stripe_head (Nigel Croxon) [RHEL-9875] - CI: Remove unused kpet_tree_family (Nikolai Kondrashov) - ice: Don't tx before switchdev is fully configured (Michal Schmidt) [RHEL-10997] - fbcon: set_con2fb_map needs to set con2fb_map! (Wander Lairson Costa) [RHEL-1183] {CVE-2023-38409} - fbcon: Fix error paths in set_con2fb_map (Wander Lairson Costa) [RHEL-1183] {CVE-2023-38409} - mm/slab_common: fix slab_caches list corruption after kmem_cache_destroy() (Rafael Aquini) [RHEL-3652] - sched/rt: Fix bad task migration for rt tasks (Valentin Schneider) [RHEL-3872] - RDMA/irdma: Prevent zero-length STAG registration (Kamal Heib) [RHEL-6389] {CVE-2023-25775} - mm/memcontrol: export memcg.swap watermark via sysfs for v2 memcg (Waiman Long) [RHEL-10099] - cgroup: add pids.peak interface for pids controller (Waiman Long) [RHEL-10099] - mm/memcontrol: export memcg->watermark via sysfs for v2 memcg (Waiman Long) [RHEL-10099] - cpufreq: amd-pstate: fix global sysfs attribute type (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add a kernel config option to set default mode (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Set a fallback policy based on preferred_profile (Prarit Bhargava) [2218687] - ACPI: CPPC: Add definition for undefined FADT preferred PM profile value (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Make amd-pstate EPP driver name hyphenated (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Write CPPC enable bit per-socket (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Update policy->cur in amd_pstate_adjust_perf() (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Remove fast_switch_possible flag from active driver (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add ->fast_switch() callback (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Make varaiable mode_state_machine static (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add guided mode control support via sysfs (Prarit Bhargava) [2218687] - amd-pstate: Fix amd_pstate mode switch (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add guided autonomous mode (Prarit Bhargava) [2218687] - ACPI: CPPC: Add auto select register read/write support (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: move to use bus_get_dev_root() (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: remove MODULE_LICENSE in non-modules (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Let user know amd-pstate is disabled (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Fix invalid write to MSR_AMD_CPPC_REQ (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: avoid uninitialized variable use (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: convert sprintf with sysfs_emit() (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: add driver working mode switch support (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: implement suspend and resume callbacks (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: implement amd pstate cpu online and offline callback (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: implement Pstate EPP support for the AMD processors (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: optimize driver working mode selection in amd_pstate_param() (Prarit Bhargava) [2218687] - ACPI: CPPC: Add AMD pstate energy performance preference cppc control (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: fix kernel hang issue while amd-pstate unregistering (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Fix initial highest_perf value (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Expose struct amd_cpudata (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: update pstate frequency transition delay time (Prarit Bhargava) [2218687] - cpufreq: amd_pstate: map desired perf into pstate scope for powersave governor (Prarit Bhargava) [2218687] - cpufreq: amd_pstate: fix wrong lowest perf fetch (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: fix white-space (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: simplify cpudata pointer assignment (Prarit Bhargava) [2218687]- Bluetooth: L2CAP: Fix u8 overflow (Wander Lairson Costa) [2152858] {CVE-2022-45934} - tracing/histograms: Fix parsing of "sym-offset" modifier (Jerome Marchand) [2229575] - ice: always add legacy 32byte RXDID in supported_rxdids (Michal Schmidt) [RHEL-3379] - task_work: cleanup notification modes (Audra Mitchell) [RHEL-1064] - perf test topology: Use !strncmp(right platform) to fix guest PPC comparision check (Michael Petlan) [2131821] - perf test session topology: Fix test to skip the test in guest environment (Michael Petlan) [2131821] - sched/fair: Block nohz tick_stop when cfs bandwidth in use (Phil Auld) [RHEL-2527] - sched, cgroup: Restore meaning to hierarchical_quota (Phil Auld) [RHEL-2527] - sched/fair: Hide unused init_cfs_bandwidth() stub (Phil Auld) [RHEL-2527] - rbd: take header_rwsem in rbd_dev_refresh() only when updating (Ilya Dryomov) [RHEL-11241] - rbd: decouple parent info read-in from updating rbd_dev (Ilya Dryomov) [RHEL-11241] - rbd: decouple header read-in from updating rbd_dev->header (Ilya Dryomov) [RHEL-11241] - rbd: move rbd_dev_refresh() definition (Ilya Dryomov) [RHEL-11241] - redhat: list Z-Jiras in the changelog before Y-Jiras (Herton R. Krzesinski) - Revert "mm, meminit: recalculate pcpu batch and high limits after init completes" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm,memory_hotplug: factor out adjusting present pages into adjust_present_page_count()" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: move free_the_page" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: allow high-order pages to be stored on the per-cpu lists" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: fetch the correct pcp buddy during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: track range of active PCP lists during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: simplify how many pages are selected per pcp list during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: drain the requested list first during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: free pages in a single pass during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: do not prefetch buddies during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: check high-order pages for corruption during PCP operations" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: fix incorrect PGFREE and PGALLOC for high-order page" (Chris von Recklinghausen) [RHEL-8539] - Revert "cnic: Use the bitmap API to allocate bitmaps" (Chris Leech) [RHEL-1950] - Revert "cnic: don't pass bogus GFP_ flags to dma_alloc_coherent" (Chris Leech) [RHEL-1950] - scsi: lpfc: Prevent use-after-free during rmmod with mapped NVMe rports (Paul Ely) [RHEL-2602] - scsi: lpfc: Early return after marking final NLP_DROPPED flag in dev_loss_tmo (Paul Ely) [RHEL-2602] - gfs2: Add quota_change type (Bob Peterson) [2224075]- bpf: Adjust insufficient default bpf_jit_limit (Viktor Malik) [2219567] - bpf: Prevent increasing bpf_jit_limit above max (Viktor Malik) [2219567] - NFS: Guard against READDIR loop when entry names exceed MAXNAMELEN (Benjamin Coddington) [2231130] - perf/arm-dmc620: Fix dmc620_pmu_irqs_lock/cpu_hotplug_lock circular lock dependency (Waiman Long) [2177103] - bonding: fix macvlan over alb bond support (Hangbin Liu) [2117816] - s390/ipl: add missing secure/has_secure file to ipl type 'unknown' (Tobias Huschle) [RHEL-2852] - s390/zcrypt: fix reply buffer calculations for CCA replies (Tobias Huschle) [2227778] - intel_th: pci: Add Meteor Lake-P support (Michael Petlan) [2156847] - perf/x86/rapl: Add support for Intel Meteor Lake (Michael Petlan) [2156816] - iavf: schedule a request immediately after add/delete vlan (Petr Oros) [2231174] - iavf: add iavf_schedule_aq_request() helper (Petr Oros) [2231174] - PCI: rpaphp: Error out on busy status from get-sensor-state (Mamatha Inamdar) [2230045] - powerpc/rtas: export rtas_error_rc() for reuse. (Mamatha Inamdar) [2230045] - powerpc/eeh: Set channel state after notifying the drivers (Mamatha Inamdar) [2230045] - s390/pkey: fix PKEY_TYPE_EP11_AES handling for sysfs attributes (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_VERIFYKEY2 IOCTL (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_KBLOB2PROTK[23] (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_CLR2SECK2 IOCTL (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_GENSECK2 IOCTL (Tobias Huschle) [2225520] - s390/pkey: fix/harmonize internal keyblob headers (Tobias Huschle) [2225520] - s390/pkey: add support for ecc clear key (Tobias Huschle) [2225520] - s390/pkey: do not use struct pkey_protkey (Tobias Huschle) [2225520] - s390/pkey: introduce reverse x-mas trees (Tobias Huschle) [2225520] - s390/pkey: zeroize key blobs (Tobias Huschle) [2225520] - md/raid1: fix error: ISO C90 forbids mixed declarations (Nigel Croxon) [RHEL-5084] - md raid1: allow writebehind to work on any leg device set WriteMostly (Nigel Croxon) [RHEL-5084] - md/raid1: hold the barrier until handle_read_error() finishes (Nigel Croxon) [RHEL-5084] - md/raid1: free the r1bio before waiting for blocked rdev (Nigel Croxon) [RHEL-5084] - md/raid1: call free_r1bio() before allow_barrier() in raid_end_bio_io() (Nigel Croxon) [RHEL-5084] - md/raid5-cache: fix null-ptr-deref for r5l_flush_stripe_to_raid() (Nigel Croxon) [RHEL-5084] - md/raid10: fix a 'conf->barrier' leakage in raid10_takeover() (Nigel Croxon) [RHEL-5084] - md: raid1: fix potential OOB in raid1_remove_disk() (Nigel Croxon) [RHEL-5084] - md/raid5-cache: fix a deadlock in r5l_exit_log() (Nigel Croxon) [RHEL-5084] - md/md-bitmap: hold 'reconfig_mutex' in backlog_store() (Nigel Croxon) [RHEL-5084] - md/md-bitmap: remove unnecessary local variable in backlog_store() (Nigel Croxon) [RHEL-5084] - md: restore 'noio_flag' for the last mddev_resume() (Nigel Croxon) [RHEL-5084] - md: don't quiesce in mddev_suspend() (Nigel Croxon) [RHEL-5084] - md: move initialization and destruction of 'io_acct_set' to md.c (Nigel Croxon) [RHEL-5084] - md: enhance checking in md_check_recovery() (Nigel Croxon) [RHEL-5084] - md: wake up 'resync_wait' at last in md_reap_sync_thread() (Nigel Croxon) [RHEL-5084] - md: refactor idle/frozen_sync_thread() to fix deadlock (Nigel Croxon) [RHEL-5084] - md: add a mutex to synchronize idle and frozen in action_store() (Nigel Croxon) [RHEL-5084] - md: refactor action_store() for 'idle' and 'frozen' (Nigel Croxon) [RHEL-5084] - Revert "md: unlock mddev before reap sync_thread in action_store" (Nigel Croxon) [RHEL-5084] - md/raid0: add discard support for the 'original' layout (Nigel Croxon) [RHEL-5084] - md/raid10: prevent soft lockup while flush writes (Nigel Croxon) [RHEL-5084] - md/raid10: fix io loss while replacement replace rdev (Nigel Croxon) [RHEL-5084] - md/raid10: Do not add spare disk when recovery fails (Nigel Croxon) [RHEL-5084] - md/raid10: clean up md_add_new_disk() (Nigel Croxon) [RHEL-5084] - md/raid10: prioritize adding disk to 'removed' mirror (Nigel Croxon) [RHEL-5084] - md/raid10: improve code of mrdev in raid10_sync_request (Nigel Croxon) [RHEL-5084] - md/raid10: fix null-ptr-deref of mreplace in raid10_sync_request (Nigel Croxon) [RHEL-5084] - md/raid5: don't start reshape when recovery or replace is in progress (Nigel Croxon) [RHEL-5084] - md/bitmap: factor out a helper to set timeout (Nigel Croxon) [RHEL-5084] - md/bitmap: always wake up md_thread in timeout_store (Nigel Croxon) [RHEL-5084] - md: factor out a helper to wake up md_thread directly (Nigel Croxon) [RHEL-5084] - md/raid10: fix wrong setting of max_corr_read_errors (Nigel Croxon) [RHEL-5084] - md/raid10: fix overflow of md/safe_mode_delay (Nigel Croxon) [RHEL-5084] - md/raid5: fix a deadlock in the case that reshape is interrupted (Nigel Croxon) [RHEL-5084] - md: add a new api prepare_suspend() in md_personality (Nigel Croxon) [RHEL-5084] - md: export md_is_rdwr() and is_md_suspended() (Nigel Croxon) [RHEL-5084] - md: introduce md_ro_state (Nigel Croxon) [RHEL-5084] - md: fix data corruption for raid456 when reshape restart while grow up (Nigel Croxon) [RHEL-5084] - md/raid5: don't allow replacement while reshape is in progress (Nigel Croxon) [RHEL-5084] - md/raid10: check slab-out-of-bounds in md_bitmap_get_counter (Nigel Croxon) [RHEL-5084] - md: raid1: check if adding pages to resync bio fails (Nigel Croxon) [RHEL-5084] - md: raid1: use __bio_add_page for adding single page to bio (Nigel Croxon) [RHEL-5084] - md: check for failure when adding pages in alloc_behind_master_bio (Nigel Croxon) [RHEL-5084] - md: raid5: use __bio_add_page to add single page to new bio (Nigel Croxon) [RHEL-5084] - md: raid5-log: use __bio_add_page to add single page (Nigel Croxon) [RHEL-5084] - md: use __bio_add_page to add single page (Nigel Croxon) [RHEL-5084] - md/raid5: fix miscalculation of 'end_sector' in raid5_read_one_chunk() (Nigel Croxon) [RHEL-5084]- s390/dasd: fix hanging device after quiesce/resume (Tobias Huschle) [RHEL-2838] - s390/dasd: fix hanging device after request requeue (Tobias Huschle) [RHEL-2830] - s390/dasd: fix command reject error on ESE devices (Tobias Huschle) [RHEL-2850] - s390/dasd: print copy pair message only for the correct error (Tobias Huschle) [RHEL-2831] - s390: add z16 elf platform (Tobias Huschle) [RHEL-2854] - s390/qeth: Don't call dev_close/dev_open (DOWN/UP) (Tobias Huschle) [RHEL-2410] - powerpc/kprobes: Fix null pointer reference in arch_prepare_kprobe() (Mamatha Inamdar) [2227601] - arm64: kdump: Remove custom linux,usable-memory-range handling (Baoquan He) [RHEL-2307] - arm64: kdump: Remove custom linux,elfcorehdr handling (Baoquan He) [RHEL-2307] - media: dvb-core: Fix use-after-free due to race condition at dvb_ca_en50221 (Dean Nelson) [RHEL-1784] {CVE-2022-45919} - media: dvb-core: Fix use-after-free due to race at dvb_register_device() (Dean Nelson) [RHEL-1841] {CVE-2022-45884} - media: dvb-core: Fix use-after-free due on race condition at dvb_net (Dean Nelson) [RHEL-1842] {CVE-2022-45886} - media: dvb_ca_en50221: fix a size write bug (Dean Nelson) [RHEL-1784] - media: dvbdev: fix refcnt bug (Dean Nelson) [RHEL-1841] - media: dvbdev: adopts refcnt to avoid UAF (Dean Nelson) [RHEL-1841] - media: dvbdev: fix error logic at dvb_register_device() (Dean Nelson) [RHEL-1841] - media: dvb_net: avoid speculation from net slot (Dean Nelson) [RHEL-1842] - media: dvb_ca_en50221: avoid speculation from CA slot (Dean Nelson) [RHEL-1784] - media: dvbdev: Fix memleak in dvb_register_device (Dean Nelson) [RHEL-1841] - media: media/dvb: Use kmemdup rather than duplicating its implementation (Dean Nelson) [RHEL-1841] - media: dvbdev: remove double-unlock (Dean Nelson) [RHEL-1841] - media: dvb-core: fix epoll() by calling poll_wait first (Dean Nelson) [RHEL-1784] - media: dvb_ca_en50221: off by one in dvb_ca_en50221_io_do_ioctl() (Dean Nelson) [RHEL-1784] - drm/amd/display: fix the white screen issue when >= 64GB DRAM (Mika Penttilä) [2231934] - gfs2: conversion deadlock do_promote bypass (Bob Peterson) [2225228] - gfs2: do_promote cleanup (Andreas Gruenbacher) [2225228] - gfs2: Make use of list_is_first (Andreas Gruenbacher) [2225228] - x86/cpu: Enable STIBP on AMD if Automatic IBRS is enabled (Waiman Long) [2227916] - Documentation/hw-vuln: Document the interaction between IBRS and STIBP (Waiman Long) [2227916] - x86/CPU/AMD: Make sure EFER[AIBRSE] is set (Waiman Long) [2227916] - fs: don't audit the capability check in simple_xattr_list() (Andrey Albershteyn) [RHEL-863]- redhat: fix to be able to build with rpm 4.19.0 (Denys Vlasenko) - redhat: add additional gating boot tests (Denys Vlasenko) - redhat: list Z-Jiras in the changelog before Y-Jiras (Herton R. Krzesinski) - scsi: st: Add third party poweron reset handling (John Meneghini) [1930388] - kvm: initialize all of the kvm_debugregs structure before sending it to userspace (Jon Maloy) [2179896] {CVE-2023-1513} - bpf: sockmap: Remove preempt_disable in sock_map_sk_acquire (Tomas Glozar) [2229965] - s390/ap: add ap status asynch error support (Tobias Huschle) [2110511] - s390/ap: implement SE AP bind, unbind and associate (Tobias Huschle) [2110511] - s390/ap: introduce low frequency polling possibility (Tobias Huschle) [2110511] - s390/ap: new low level inline functions ap_bapq() and ap_aapq() (Tobias Huschle) [2110511] - s390/ap: provide F bit parameter for ap_rapq() and ap_zapq() (Tobias Huschle) [2110511] - s390/ap: filter ap card functions, new queue functions attribute (Tobias Huschle) [2110511] - s390/ap: make tapq gr2 response a struct (Tobias Huschle) [2110511] - s390/ap: introduce new AP bus sysfs attribute features (Tobias Huschle) [2110511] - s390/ap: exploit new B bit from QCI config info (Tobias Huschle) [2110511] - s390/zcrypt: replace scnprintf with sysfs_emit (Tobias Huschle) [2110511] - s390/zcrypt: rework length information for dqap (Tobias Huschle) [2110511] - s390/zcrypt: make psmid unsigned long instead of long long (Tobias Huschle) [2110511] - s390/ap,zcrypt,vfio: introduce and use ap_queue_status_reg union (Tobias Huschle) [2110511] - s390/ap: fix status returned by ap_qact() (Tobias Huschle) [2110511] - s390/ap: fix status returned by ap_aqic() (Tobias Huschle) [2110511] - s390/ap: adjust whitespace (Tobias Huschle) [2110511] - s390/ap: use insn format for new instructions (Tobias Huschle) [2110511] - s390/zcrypt: Filter admin CPRBs on custom devices (Tobias Huschle) [2110511] - s390/zcrypt: Add admask to zcdn (Tobias Huschle) [2110511] - s390/zcrypt: CCA control CPRB sending (Tobias Huschle) [2110511] - s390/ap: add missing virt_to_phys address conversion (Tobias Huschle) [2110511] - s390/ap: get rid of register asm in ap_dqap() (Tobias Huschle) [2110511] - s390/ap: get rid of register asm (Tobias Huschle) [2110511] - s390/ap: Rework ap_dqap to deal with messages greater than recv buffer (Tobias Huschle) [2110511] - s390/ap: rework assembler functions to use unions for in/out register variables (Tobias Huschle) [2110511] - internal: add new files for RHEL_MINOR=10 change (Denys Vlasenko) - thunderbolt: Fix Thunderbolt 3 display flickering issue on 2nd hot plug onwards (Desnes Nunes) [2233974] - mm/userfaultfd: don't consider uffd-wp bit of writable migration entries (Rafael Aquini) [2231554] - mm/userfaultfd: fix uffd-wp handling for THP migration entries (Rafael Aquini) [2231554] - mm/userfaultfd: fix uffd-wp special cases for fork() (Rafael Aquini) [2231554] - mm/thp: simplify copying of huge zero page pmd when fork (Rafael Aquini) [2231554] - internal: update RHEL_MINOR for the start of RHEL-8.10 development (Denys Vlasenko)- thunderbolt: Fix Thunderbolt 3 display flickering issue on 2nd hot plug onwards (Desnes Nunes) [2233974] - mm/userfaultfd: don't consider uffd-wp bit of writable migration entries (Rafael Aquini) [2231554] - mm/userfaultfd: fix uffd-wp handling for THP migration entries (Rafael Aquini) [2231554] - mm/userfaultfd: fix uffd-wp special cases for fork() (Rafael Aquini) [2231554] - mm/thp: simplify copying of huge zero page pmd when fork (Rafael Aquini) [2231554]- redhat/configs: enable CONFIG_INET_DIAG_DESTROY (Andrea Claudi) [2230213] - net/sched: cls_u32: Fix reference counter leak leading to overflow (Davide Caratti) [2225202] {CVE-2023-3609} - cifs: fix bogus cifs_mount error handling in RHEL8 (Jeffrey Layton) [2215018] - KVM: nVMX: add missing consistency checks for CR0 and CR4 (Ricardo Robaina) [2190257] {CVE-2023-30456} - netfilter: snat: evict closing tcp entries on reply tuple collision (Florian Westphal) [2196717] - tun: avoid double free in tun_free_netdev (Jon Maloy) [2156366 2156371] {CVE-2022-4744} - net/sched: cls_fw: Fix improper refcount update leads to use-after-free (Davide Caratti) [2225103] {CVE-2023-3776} - net/sched: sch_qfq: account for stab overhead in qfq_enqueue (Davide Caratti) [2225196] {CVE-2023-3611} - net/sched: sch_qfq: reintroduce lmax bound check for MTU (Davide Caratti) [2225196] - net/sched: sch_qfq: refactor parsing of netlink parameters (Davide Caratti) [2225196] - net/sched: cls_route: No longer copy tcf_result on update to avoid use-after-free (Davide Caratti) [2225512] {CVE-2023-4128} - net/sched: cls_fw: No longer copy tcf_result on update to avoid use-after-free (Davide Caratti) [2225512] {CVE-2023-4128} - net/sched: cls_u32: No longer copy tcf_result on update to avoid use-after-free (Davide Caratti) [2225512] {CVE-2023-4128} - scsi: lpfc: Remove reftag check in DIF paths (Paul Ely) [2229152] - scsi: lpfc: Modify when a node should be put in device recovery mode during RSCN (Paul Ely) [2229152] - scsi: lpfc: Make fabric zone discovery more robust when handling unsolicited LOGO (Paul Ely) [2229152] - scsi: lpfc: Set Establish Image Pair service parameter only for Target Functions (Paul Ely) [2229152] - scsi: lpfc: Revise ndlp kref handling for dev_loss_tmo_callbk and lpfc_drop_node (Paul Ely) [2229152] - scsi: lpfc: Qualify ndlp discovery state when processing RSCN (Paul Ely) [2229152] - gfs2: Fix freeze consistency check in gfs2_trans_add_meta (Andreas Gruenbacher) [2095340] - gfs2: gfs2_freeze_lock_shared cleanup (Andreas Gruenbacher) [2095340] - gfs2: Replace sd_freeze_state with SDF_FROZEN flag (Andreas Gruenbacher) [2095340] - gfs2: Rework freeze / thaw logic (Andreas Gruenbacher) [2095340] - gfs2: Rename SDF_{FS_FROZEN => FREEZE_INITIATOR} (Andreas Gruenbacher) [2095340] - gfs2: Reconfiguring frozen filesystem already rejected (Andreas Gruenbacher) [2095340] - gfs2: Rename gfs2_freeze_lock{ => _shared } (Andreas Gruenbacher) [2095340] - gfs2: Rename the {freeze,thaw}_super callbacks (Andreas Gruenbacher) [2095340] - gfs2: Rename remaining "transaction" glock references (Andreas Gruenbacher) [2095340] - gfs2: init system threads before freeze lock (Bob Peterson) [2095340] - net: mana: Use the correct WQE count for ringing RQ doorbell (Bandan Das) [2222573] - net: mana: Batch ringing RX queue doorbell on receiving packets (Bandan Das) [2222573] - net: mana: Add support for vlan tagging (Bandan Das) [2222573] - net: mana: Fix perf regression: remove rx_cqes, tx_cqes counters (Bandan Das) [2222573] - net: mana: Check if netdev/napi_alloc_frag returns single page (Bandan Das) [2222573] - net: mana: Rename mana_refill_rxoob and remove some empty lines (Bandan Das) [2222573] - net: mana: Add support for jumbo frame (Bandan Das) [2222573] - net: mana: Enable RX path to handle various MTU sizes (Bandan Das) [2222573] - net: mana: Refactor RX buffer allocation code to prepare for various MTU (Bandan Das) [2222573] - net: mana: Use napi_build_skb in RX path (Bandan Das) [2222573] - net: mana: Remove redundant pci_clear_master (Bandan Das) [2222573] - net: mana: Add new MANA VF performance counters for easier troubleshooting (Bandan Das) [2222573] - ice: Fix NULL pointer deref during VF reset (Petr Oros) [2227743] - x86/kasan: Populate shadow for shared chunk of the CPU entry area (Rafael Aquini) [2232451] - x86/kasan: Add helpers to align shadow addresses up and down (Rafael Aquini) [2232451] - x86/kasan: Rename local CPU_ENTRY_AREA variables to shorten names (Rafael Aquini) [2232451] - x86/mm: Populate KASAN shadow for entire per-CPU range of CPU entry area (Rafael Aquini) [2232451] - x86/mm: Recompute physical address for every page of per-CPU CEA mapping (Rafael Aquini) [2232451]- dm cache policy smq: ensure IO doesn't prevent cleaner policy progress (Benjamin Marzinski) [2227951] - netfilter: nf_tables: prevent OOB access in nft_byteorder_eval (Florian Westphal) [2221046] {CVE-2023-35001} - scsi: storvsc: Remove errant duplicate code (Cathy Avery) [2211725] - scsi: storvsc: Limit max_sectors for virtual Fibre Channel devices (Cathy Avery) [2211725] - redhat/configs: Enable CONFIG_AMPERE_ERRATUM_AC03_CPU_38 (Shaoqin Huang) [2219725] - arm64: errata: Mitigate Ampere1 erratum AC03_CPU_38 at stage-2 (Shaoqin Huang) [2219725] - KVM: arm64: Correctly handle page aging notifiers for unaligned memslot (Shaoqin Huang) [2219725] - KVM: arm64: timers: Fix resource leaks in kvm_timer_hyp_init() (Shaoqin Huang) [2219725] - KVM: arm64: vgic-v4: Make the doorbell request robust w.r.t preemption (Shaoqin Huang) [2219725] - KVM: arm64: Don't miss pending interrupts for suspended vCPU (Shaoqin Huang) [2219725] - KVM: arm64: Move vGIC v4 handling for WFI out arch callback hook (Shaoqin Huang) [2219725] - KVM: arm64: PMU: Don't overwrite PMUSERENR with vcpu loaded (Shaoqin Huang) [2219725] - KVM: arm64: PMU: Restore the host's PMUSERENR_EL0 (Shaoqin Huang) [2219725] - KVM: arm64: Restore mdcr_el2 from vcpu (Shaoqin Huang) [2219725] - kvm: arm64: Remove __hyp_this_cpu_read (Shaoqin Huang) [2219725] - wifi: rtw88: unlock on error path in rtw_ops_add_interface() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: check only affected links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: send time sync only if needed (Íñigo Huguet) [2196823] - wifi: clean up erroneously introduced file (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Handle return value for iwl_mvm_sta_init (Íñigo Huguet) [2196823] - wifi: rtw88: delete timer and free skb queue when unloading (Íñigo Huguet) [2196823] - wifi: cfg80211: Fix return value in scan logic (Íñigo Huguet) [2196823] - Revert "wifi: ath11k: Enable threaded NAPI" (Íñigo Huguet) [2196823] - wifi: cfg80211: fix receiving mesh packets without RFC1042 header (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: fix init command fail with enabled device (Íñigo Huguet) [2196823] - wifi: ath9k: convert msecs to jiffies where needed (Íñigo Huguet) [2196823] - wifi: ath11k: Add missing check for ioremap (Íñigo Huguet) [2196823] - wifi: ath11k: fix memory leak in WMI firmware stats (Íñigo Huguet) [2196823] - wifi: ath9k: Fix possible stall on ath9k_txq_list_has_key() (Íñigo Huguet) [2196823] - wifi: ath9k: don't allow to overwrite ENDPOINT0 attributes (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid baid size integer overflow (Íñigo Huguet) [2196823] - wifi: rtw88: process VO packets without workqueue to avoid PTK rekey failed (Íñigo Huguet) [2196823] - wifi: rtw88: Fix action frame transmission fail before association (Íñigo Huguet) [2196823] - wifi: iwlwifi: add a few rate index validity checks (Íñigo Huguet) [2196823] - wifi: iwlwifi: Validate slots_num before allocating memory (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Validate tid is in valid range before using it (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: fix NULL pointer dereference in iwl_pcie_irq_rx_msix_handler() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: check link during TX (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add a NULL pointer check (Íñigo Huguet) [2196823] - wifi: iwlwifi: pull from TXQs with softirqs disabled (Íñigo Huguet) [2196823] - wifi: iwlwifi: Correctly indicate support for VHT TX STBC (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add NULL check before dereferencing the pointer (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix potential array out of bounds access (Íñigo Huguet) [2196823] - wifi: rtw88: add missing unwind goto for __rtw_download_firmware() (Íñigo Huguet) [2196823] - wifi: iwlwifi: disable RX STBC when a device doesn't support it (Íñigo Huguet) [2196823] - wifi: iwlwifi: don't silently ignore missing suspend or resume ops (Íñigo Huguet) [2196823] - wifi: ath9k: avoid referencing uninit memory in ath9k_wmi_ctrl_rx (Íñigo Huguet) [2196823] - wifi: ath9k: fix AR9003 mac hardware hang check register offset calculation (Íñigo Huguet) [2196823] - wifi: rtw89: pci: fix interrupt enable mask for HALT C2H of RTL8851B (Íñigo Huguet) [2196823] - wifi: rtw89: fix rtw89_read_chip_ver() for RTL8852B and RTL8851B (Íñigo Huguet) [2196823] - wifi: rtw88: fix incorrect error codes in rtw_debugfs_set_* (Íñigo Huguet) [2196823] - wifi: rtw88: fix incorrect error codes in rtw_debugfs_copy_from_user (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: Handle SO-F device for PCI id 0x7AF0 (Íñigo Huguet) [2196823] - config: wifi: debug configs for brcm80211 (Íñigo Huguet) [2196823] - config: wifi: set RTL8821CS, RTL8822BS and RTL8822CS as disabled (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: spin_lock_bh() to fix lockdep regression (Íñigo Huguet) [2196823] - wifi: mac80211: fragment per STA profile correctly (Íñigo Huguet) [2196823] - wifi: mac80211: Use active_links instead of valid_links in Tx (Íñigo Huguet) [2196823] - wifi: cfg80211: remove links only on AP (Íñigo Huguet) [2196823] - wifi: mac80211: take lock before setting vif links (Íñigo Huguet) [2196823] - wifi: cfg80211: fix link del callback to call correct handler (Íñigo Huguet) [2196823] - wifi: mac80211: fix link activation settings order (Íñigo Huguet) [2196823] - wifi: cfg80211: fix double lock bug in reg_wdev_chan_valid() (Íñigo Huguet) [2196823] - wifi: cfg80211: fix locking in regulatory disconnect (Íñigo Huguet) [2196823] - wifi: cfg80211: fix locking in sched scan stop work (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix -Warray-bounds bug in iwl_mvm_wait_d3_notif() (Íñigo Huguet) [2196823] - wifi: mac80211: fix switch count in EMA beacons (Íñigo Huguet) [2196823] - wifi: mac80211: don't translate beacon/presp addrs (Íñigo Huguet) [2196823] - wifi: mac80211: mlme: fix non-inheritence element (Íñigo Huguet) [2196823] - wifi: cfg80211: reject bad AP MLD address (Íñigo Huguet) [2196823] - wifi: mac80211: use correct iftype HE cap (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix possible NULL pointer dereference in mt7996_mac_write_txwi() (Íñigo Huguet) [2196823] - wifi: rtw89: remove redundant check of entering LPS (Íñigo Huguet) [2196823] - wifi: rtw89: correct PS calculation for SUPPORTS_DYNAMIC_PS (Íñigo Huguet) [2196823] - wifi: rtw88: correct PS calculation for SUPPORTS_DYNAMIC_PS (Íñigo Huguet) [2196823] - wifi: mt76: mt7615: fix possible race in mt7615_mac_sta_poll (Íñigo Huguet) [2196823] - wifi: b43: fix incorrect __packed annotation (Íñigo Huguet) [2196823] - wifi: rtw88: sdio: Always use two consecutive bytes for word operations (Íñigo Huguet) [2196823] - mac80211_hwsim: fix memory leak in hwsim_new_radio_nl (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add locking to the rate read flow (Íñigo Huguet) [2196823] - wifi: iwlwifi: Don't use valid_links to iterate sta links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't trust firmware n_channels (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix OEM's name in the tas approved list (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix OEM's name in the ppag approved list (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix initialization of a return value (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix access to fw_id_to_mac_id (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: fix DBGI dump (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix number of concurrent link checks (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix cancel_delayed_work_sync() deadlock (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't double-init spinlock (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: always free dup_data (Íñigo Huguet) [2196823] - wifi: mac80211: recalc chanctx mindef before assigning (Íñigo Huguet) [2196823] - wifi: mac80211: consider reserved chanctx for mindef (Íñigo Huguet) [2196823] - wifi: mac80211: simplify chanctx allocation (Íñigo Huguet) [2196823] - wifi: mac80211: Abort running color change when stopping the AP (Íñigo Huguet) [2196823] - wifi: mac80211: fix min center freq offset tracing (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rfi: disable RFI feature (Íñigo Huguet) [2196823] - wifi: mac80211: Fix puncturing bitmap handling in __ieee80211_csa_finalize() (Íñigo Huguet) [2196823] - wifi: mac80211: fortify the spinlock against deadlock by interrupt (Íñigo Huguet) [2196823] - wifi: cfg80211: Drop entries with invalid BSSIDs in RNR (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: fix authentication timeout due to incorrect RCR value (Íñigo Huguet) [2196823] - wifi: brcmfmac: Check for probe() id argument being NULL (Íñigo Huguet) [2196823] - wifi: rtw88: correct qsel_to_ep[] type as int (Íñigo Huguet) [2196823] - wifi: rtw88: use work to update rate to avoid RCU warning (Íñigo Huguet) [2196823] - wifi: rtw89: 8852b: adjust quota to avoid SER L1 caused by access null page (Íñigo Huguet) [2196823] - wifi: mt76: connac: fix stats->tx_bytes calculation (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix endianness of MT_TXD6_TX_RATE (Íñigo Huguet) [2196823] - wifi: rtw88: Update spelling in main.h (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Simplify setting the initial gain (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Add rtl8xxxu_write{8,16,32}_{set,clear} (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Don't print the vendor/product/serial (Íñigo Huguet) [2196823] - wifi: rtw88: Fix memory leak in rtw88_usb (Íñigo Huguet) [2196823] - wifi: rtw88: call rtw8821c_switch_rf_set() according to chip variant (Íñigo Huguet) [2196823] - wifi: rtw88: set pkg_type correctly for specific rtw8821c variants (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8821c: Fix rfe_option field width (Íñigo Huguet) [2196823] - wifi: rtw88: usb: fix priority queue to endpoint mapping (Íñigo Huguet) [2196823] - wifi: rtw88: 8822c: add iface combination (Íñigo Huguet) [2196823] - wifi: rtw88: handle station mode concurrent scan with AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: prevent scan abort with other VIFs (Íñigo Huguet) [2196823] - wifi: rtw88: refine reserved page flow for AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: disallow PS during AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: 8822c: extend reserved page number (Íñigo Huguet) [2196823] - wifi: rtw88: add port switch for AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: add bitmap for dynamic port settings (Íñigo Huguet) [2196823] - wifi: rtw89: mac: use regular int as return type of DLE buffer request (Íñigo Huguet) [2196823] - wifi: mac80211: remove return value check of debugfs_create_dir() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix RFKILL report when driver is going down (Íñigo Huguet) [2196823] - wifi: iwlwifi: mei: re-ask for ownership after it was taken by CSME (Íñigo Huguet) [2196823] - wifi: iwlwifi: mei: make mei filtered scan more aggressive (Íñigo Huguet) [2196823] - wifi: iwlwifi: modify scan request and results when in link protection (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable support for MLO APIs (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: prefer RCU_INIT_POINTER() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix potential memory leak (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: fix argument to efi.get_variable (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix MIC removal confusion (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: fix memory leak in debugfs (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update support for b0 version (Íñigo Huguet) [2196823] - wifi: ath11k: Remove disabling of 80+80 and 160 MHz (Íñigo Huguet) [2196823] - wifi: ath11k: Fix SKB corruption in REO destination ring (Íñigo Huguet) [2196823] - wifi: ath11k: Fix incorrect update of radiotap fields (Íñigo Huguet) [2196823] - wifi: ath11k: fix tx status reporting in encap offload mode (Íñigo Huguet) [2196823] - wifi: ath11k: add peer mac information in failure cases (Íñigo Huguet) [2196823] - wifi: ath11k: Prevent REO cmd failures (Íñigo Huguet) [2196823] - wifi: ath11k: fix double free of peer rx_tid during reo cmd failure (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fill txd by host driver (Íñigo Huguet) [2196823] - wifi: mt76: set NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 on supported drivers (Íñigo Huguet) [2196823] - wifi: mt76: dma: use napi_build_skb (Íñigo Huguet) [2196823] - wifi: mt76: mt7615: increase eeprom size for mt7663 (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable mesh HW amsdu/de-amsdu support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable configured beacon tx rate (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable BSS_CHANGED_MCAST_RATE support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable BSS_CHANGED_BASIC_RATES support (Íñigo Huguet) [2196823] - wifi: iwlwifi: dvm: Fix memcpy: detected field-spanning write backtrace (Íñigo Huguet) [2196823] - wifi: mac80211: remove ieee80211_tx_status_8023 (Íñigo Huguet) [2196823] - wifi: iwlwifi: bump FW API to 78 for AX devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: check firmware response size (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add MLO support to SF - use sta pointer (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: configure TLC on link activation (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix iwl_mvm_max_amsdu_size() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove RS rate init update argument (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: initialize per-link STA ratescale data (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rs-fw: properly access sband->iftype_data (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: only clients can be 20MHz-only (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix iwl_mvm_sta_rc_update for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove per-STA MFP setting (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: allow NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use BSSID when building probe requests (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: update mac id management (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adopt the latest firmware API (Íñigo Huguet) [2196823] - wifi: mt76: connac: add nss calculation into mt76_connac2_mac_tx_rate_val() (Íñigo Huguet) [2196823] - wifi: mt76: connac: fix txd multicast rate setting (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: stop chip reset worker in unregister hook (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: improve reliability of dma reset (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: fix missing unwind goto in `mt7921u_probe` (Íñigo Huguet) [2196823] - mt76: mt7921: fix kernel panic by accessing unallocated eeprom.data (Íñigo Huguet) [2196823] - wifi: mt76: move mcu_uni_event and mcu_reg_event in common code (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable coredump support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: add full system reset knobs into debugfs (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable full system reset support (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: enable p2p support (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: Replace fake flex-arrays with flexible-array members (Íñigo Huguet) [2196823] - wifi: mt76: Replace zero-length array with flexible-array member (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: add Netgear AXE3000 (A8000) support (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: drop redundant prefix of mt7915_txpower_puts() (Íñigo Huguet) [2196823] - wifi: mt76: fix 6GHz high channel not be scanned (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: fix probe timeout after reboot (Íñigo Huguet) [2196823] - wifi: mt76: move shared mac definitions in mt76_connac2_mac.h (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: get rid of eeprom.h (Íñigo Huguet) [2196823] - wifi: mt76: add mt76_connac_gen_ppe_thresh utility routine (Íñigo Huguet) [2196823] - wifi: mt76: get rid of unused sta_ps callbacks (Íñigo Huguet) [2196823] - wifi: mt76: add mt76_connac_irq_enable utility routine (Íñigo Huguet) [2196823] - wifi: mt76: move irq_tasklet in mt76_dev struct (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: Set memory space enable in PCI_COMMAND if unset (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: use driver flags rather than mac80211 flags to mcu (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: introduce mt7921_get_mac80211_ops utility routine (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix eeprom tx path bitfields (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: remove mt7996_mcu_set_pm() (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: init mpdu density cap (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix pointer calculation in ie countdown event (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: remove unused eeprom band selection (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: let non-bufferable MMPDUs use correct hw queue (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: add eht rx rate support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: remove mt7996_mcu_beacon_check_caps() (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: remove mt7915_mcu_beacon_check_caps() (Íñigo Huguet) [2196823] - wifi: mt76: connac: refresh tx session timer for WED device (Íñigo Huguet) [2196823] - wifi: mt76: add missing locking to protect against concurrent rx/status calls (Íñigo Huguet) [2196823] - wifi: mt76: handle failure of vzalloc in mt7615_coredump_work (Íñigo Huguet) [2196823] - wifi: mt76: drop the incorrect scatter and gather frame (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: rework init flow in mt7915_thermal_init() (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: add dev->hif2 support for mt7916 WED device (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: expose device tree match table (Íñigo Huguet) [2196823] - wifi: mt76: dynamic channel bandwidth changes in AP mode (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix radiotap bitfield (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: unlock on error in mt7915_thermal_temp_store() (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: Remove unneeded semicolon (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: fix PCI DMA hang after reboot (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: fix wrong command to set STA channel (Íñigo Huguet) [2196823] - wifi: mt76: remove redundent MCU_UNI_CMD_* definitions (Íñigo Huguet) [2196823] - wifi: ath9k: fix per-packet TX-power cap for TPC (Íñigo Huguet) [2196823] - wifi: ath11k: fix undefined behavior with __fls in dp (Íñigo Huguet) [2196823] - wifi: ath11k: Ignore frags from uninitialized peer in dp. (Íñigo Huguet) [2196823] - wifi: ath11k: print a warning when crypto_alloc_shash() fails (Íñigo Huguet) [2196823] - wifi: ath11k: pci: Add more MODULE_FIRMWARE() entries (Íñigo Huguet) [2196823] - wifi: ath11k: enable SAR support on WCN6750 (Íñigo Huguet) [2196823] - wifi: ath11k: Disable Spectral scan upon removing interface (Íñigo Huguet) [2196823] - wifi: rtw89: add support of concurrent mode (Íñigo Huguet) [2196823] - wifi: rtw89: Disallow power save with multiple stations (Íñigo Huguet) [2196823] - wifi: rtw89: update statistics to FW for fine-tuning performance (Íñigo Huguet) [2196823] - wifi: rtw89: use struct instead of macros to set H2C command of hardware scan (Íñigo Huguet) [2196823] - wifi: rtw89: refine scan function after chanctx (Íñigo Huguet) [2196823] - wifi: rtw89: prohibit enter IPS during HW scan (Íñigo Huguet) [2196823] - wifi: rtw89: coex: send more hardware module info to firmware for 8851B (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Update function to get BT RSSI and hardware counter (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add path control register to monitor list (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Enable Wi-Fi RX gain control for free run solution (Íñigo Huguet) [2196823] - wifi: rtw89: fix power save function in WoWLAN mode (Íñigo Huguet) [2196823] - wifi: rtw89: support WoWLAN mode for 8852be (Íñigo Huguet) [2196823] - wifi: iwlwifi: move debug buffer allocation failure to info verbosity (Íñigo Huguet) [2196823] - wifi: iwlwifi: make the loop for card preparation effective (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: allow number of beacons from FW (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement key link switching (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement BAID link switching (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: track station mask for BAIDs (Íñigo Huguet) [2196823] - wifi: iwlwifi: bump FW API to 77 for AX devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use correct sta mask to remove queue (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid iterating over an un-initialized list (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: factor out iwl_mvm_sta_fw_id_mask() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: properly implement HE AP support (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix _iwl_mvm_get_scan_type() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix getting lowest TX rate for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: call napi_synchronize() before freeing rx/tx queues (Íñigo Huguet) [2196823] - wifi: iwlwifi: nvm-parse: add full BW UL MU-MIMO support (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Support devices with 5-6 out endpoints (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Clean up some messy ifs (Íñigo Huguet) [2196823] - wifi: brcmfmac: add Cypress 43439 SDIO ids (Íñigo Huguet) [2196823] - wifi: rtw89: fix crash due to null pointer of sta in AP mode (Íñigo Huguet) [2196823] - wifi: rtw89: correct 5 MHz mask setting (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: add tables for RFK (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: add BB and RF tables (2 of 2) (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: add BB and RF tables (1 of 2) (Íñigo Huguet) [2196823] - wifi: rtw89: pci: update PCI related settings to support 8851B (Íñigo Huguet) [2196823] - wifi: rtw89: mac: update MAC settings to support 8851b (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: fix TX path to path A for one RF path chip (Íñigo Huguet) [2196823] - wifi: rtw89: read version of analog hardware (Íñigo Huguet) [2196823] - wifi: rtw89: use hardware CFO to improve performance (Íñigo Huguet) [2196823] - wifi: rtw89: support parameter tables by RFE type (Íñigo Huguet) [2196823] - wifi: rtw89: fix authentication fail during scan (Íñigo Huguet) [2196823] - wifi: rtw89: add flag check for power state (Íñigo Huguet) [2196823] - wifi: rtw89: add ieee80211::remain_on_channel ops (Íñigo Huguet) [2196823] - wifi: rtw89: add function to wait for completion of TX skbs (Íñigo Huguet) [2196823] - wifi: rtw89: 8852c: add beacon filter and CQM support (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: tx: remove misleading if statement (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix setting the rate for non station cases (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: validate station properly in flush (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: set STA mask for keys in MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix ptk_pn memory leak (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make iwl_mvm_mac_ctxt_send_beacon() static (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: track AP STA pointer and use it for MFP (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: Fix integer overflow in iwl_write_to_user_buf (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: move memset before early return (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: initialize seq variable (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix spelling mistake "Gerenal" -> "General" (Íñigo Huguet) [2196823] - wifi: iwlwifi: Fix spelling mistake "upto" -> "up to" (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable new MLD FW API (Íñigo Huguet) [2196823] - wifi: iwlwifi: add a new PCI device ID for BZ device (Íñigo Huguet) [2196823] - wifi: iwlwifi: Add RF Step Type for BZ device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: scan legacy bands and UHB channels with same antenna (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: Fix possible division by zero (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: skip dump correctly on hw error (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: fix possible NULL pointer dereference (Íñigo Huguet) [2196823] - wifi: iwlwifi: Fix the duplicate dump name (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: work around ROM bug on AX210 integrated (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add DSM_FUNC_ENABLE_6E value to debugfs (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: cleanup beacon_inject_active during hw restart (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: support wowlan info notification version 2 (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make HLTK configuration for PASN station optional (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: request limiting to 8 MSDUs per A-MSDU (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix shift-out-of-bounds (Íñigo Huguet) [2196823] - wifi: iwlwifi: acpi: support modules with high antenna gain (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't drop unencrypted MCAST frames (Íñigo Huguet) [2196823] - wifi: iwlwifi: dbg: print pc register data once fw dump occurred (Íñigo Huguet) [2196823] - wifi: mac80211: add flush_sta method (Íñigo Huguet) [2196823] - wifi: mac80211: flush queues on STA removal (Íñigo Huguet) [2196823] - wifi: ieee80211: correctly mark FTM frames non-bufferable (Íñigo Huguet) [2196823] - wifi: ieee80211: clean up public action codes (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't set CHECKSUM_COMPLETE for unsupported protocols (Íñigo Huguet) [2196823] - wifi: iwlwifi: trans: don't trigger d3 interrupt twice (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configurations for Bnj-a0 and specific rf devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update init sequence if tx diversity supported (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: move function sequence (Íñigo Huguet) [2196823] - wifi: iwlwifi: nvm: Update HE capabilities on 6GHz band for EHT device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor TX csum mode check (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix A-MSDU checks (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable bz hw checksum from c step (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use OFDM rate if IEEE80211_TX_CTL_NO_CCK_RATE is set (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: convert TID to FW value on queue remove (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configuration for SO,SOF MAC and HR RF (Íñigo Huguet) [2196823] - wifi: iwlwifi: add a validity check of queue_id in iwl_txq_reclaim (Íñigo Huguet) [2196823] - wifi: iwlwifi: nvm-parse: enable 160/320 MHz for AP mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: debug: fix crash in __iwl_err() (Íñigo Huguet) [2196823] - wifi: rtw88: Add support for the SDIO based RTL8821CS chipset (Íñigo Huguet) [2196823] - wifi: rtw88: Add support for the SDIO based RTL8822CS chipset (Íñigo Huguet) [2196823] - wifi: rtw88: Add support for the SDIO based RTL8822BS chipset (Íñigo Huguet) [2196823] - wifi: rtw88: main: Reserve 8 bytes of extra TX headroom for SDIO cards (Íñigo Huguet) [2196823] - wifi: rtw88: main: Add the {cpwm,rpwm}_addr for SDIO based chipsets (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Support SDIO specific bits in the power on sequence (Íñigo Huguet) [2196823] - wifi: rtw88: sdio: Add HCI implementation for SDIO based chipsets (Íñigo Huguet) [2196823] - wifi: rtw88: Clear RTW_FLAG_POWERON early in rtw_mac_power_switch() (Íñigo Huguet) [2196823] - wifi: ath12k: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: ath10k: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: ath11k: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: ath11k: Send 11d scan start before WMI_START_SCAN_CMDID (Íñigo Huguet) [2196823] - wifi: ath11k: fix writing to unintended memory region (Íñigo Huguet) [2196823] - wifi: ath11k: Fix invalid management rx frame length issue (Íñigo Huguet) [2196823] - wifi: ath11k: fix rssi station dump not updated in QCN9074 (Íñigo Huguet) [2196823] - wifi: ath11k: Configure the FTM responder role using firmware capability flag (Íñigo Huguet) [2196823] - wifi: ath11k: Optimize 6 GHz scan time (Íñigo Huguet) [2196823] - wifi: mac80211: set EHT support flag in AP mode (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: fix potential NULL deref in hwsim_pmsr_report_nl() (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix duplicate entry in iwl_dev_info_table (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix the order of TIMING_MEASUREMENT notifications (Íñigo Huguet) [2196823] - bus: mhi: host: Use mhi_tryset_pm_state() for setting fw error state (Íñigo Huguet) [2196823] - bus: mhi: host: Remove duplicate ee check for syserr (Íñigo Huguet) [2196823] - bus: mhi: host: Avoid ringing EV DB if there are no elements to process (Íñigo Huguet) [2196823] - net: rfkill-gpio: Add explicit include for of.h (Íñigo Huguet) [2196823] - net: qrtr: correct types of trace event parameters (Íñigo Huguet) [2196823] - wifi: rt2x00: Fix memory leak when handling surveys (Íñigo Huguet) [2196823] - wifi: b43legacy: Remove the unused function prev_slot() (Íñigo Huguet) [2196823] - wifi: rtw89: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: rtw89: fix potential race condition between napi_init and napi_enable (Íñigo Huguet) [2196823] - wifi: rtw89: config EDCCA threshold during scan to prevent TX failed (Íñigo Huguet) [2196823] - wifi: rtw89: fix incorrect channel info during scan due to ppdu_sts filtering (Íñigo Huguet) [2196823] - wifi: rtw89: remove superfluous H2C of join_info (Íñigo Huguet) [2196823] - wifi: rtw89: set data lowest rate according to AP supported rate (Íñigo Huguet) [2196823] - wifi: rtw89: add counters of register-based H2C/C2H (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Update Wi-Fi Bluetooth coexistence version to 7.0.1 (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add report control v5 variation (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Update RTL8852B LNA2 hardware parameter (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Not to enable firmware report when WiFi is power saving (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add LPS protocol radio state for RTL8852B (Íñigo Huguet) [2196823] - bus: mhi: pci_generic: Add Foxconn T99W510 (Íñigo Huguet) [2196823] - bus: mhi: host: Use ERANGE for BHIOFF/BHIEOFF range check (Íñigo Huguet) [2196823] - bus: mhi: host: Range check CHDBOFF and ERDBOFF (Íñigo Huguet) [2196823] - wifi: mwifiex: remove unused evt_buf variable (Íñigo Huguet) [2196823] - wifi: brcmsmac: ampdu: remove unused suc_mpdu variable (Íñigo Huguet) [2196823] - wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_reg() (Íñigo Huguet) [2196823] - wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_rfreg() (Íñigo Huguet) [2196823] - wifi: brcmsmac: remove unused has_5g variable (Íñigo Huguet) [2196823] - wifi: b43legacy: remove unused freq_r3A_value function (Íñigo Huguet) [2196823] - wifi: rtlwifi: Replace fake flex-array with flex-array member (Íñigo Huguet) [2196823] - wifi: rtw88: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: rndis_wlan: Replace fake flex-array with flexible-array member (Íñigo Huguet) [2196823] - wifi: rndis_wlan: clean up a type issue (Íñigo Huguet) [2196823] - wifi: rtw88: remove unused rtw_pci_get_tx_desc function (Íñigo Huguet) [2196823] - wifi: rsi: Slightly simplify rsi_set_channel() (Íñigo Huguet) [2196823] - wifi: ipw2x00: remove unused _ipw_read16 function (Íñigo Huguet) [2196823] - wifi: mac80211: enable EHT mesh support (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: correctly use link in iwl_mvm_sta_del() (Íñigo Huguet) [2196823] - wifi: iwlwifi: separate AP link management queues (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: free probe_resp_data later (Íñigo Huguet) [2196823] - wifi: iwlwifi: bump FW API to 75 for AX devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: move max_agg_bufsize into host TLC lq_sta (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: send full STA during HW restart (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rework active links counting (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: update mac config when assigning chanctx (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use the correct link queue (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: clean up mac_id vs. link_id in MLD sta (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix station link data leak (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: initialize max_rc_amsdu_len per-link (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use appropriate link for rate selection (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use the new lockdep-checking macros (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove chanctx WARN_ON (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid sending MAC context for idle (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove only link-specific AP keys (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: skip inactive links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust iwl_mvm_scan_respect_p2p_go_iter() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rxmq: report link ID to mac80211 (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use bcast/mcast link station id (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: translate management frame address (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement mac80211 callback change_sta_links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use the link sta address (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust rs init to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust radar detection to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust iwl_mvm_sec_key_remove_ap to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make a few warnings only trigger once (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: coex: start handling multiple links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rs-fw: don't crash on missing channel (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use STA link address (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: skip MEI update for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix narrow RU check for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make some HW flags conditional (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement link change ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust some cleanup functions to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_mac_sta_state_common() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: update iwl_mvm_tx_reclaim() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust to MLO assign/unassign/switch_vif_chanctx() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add fw link id allocation (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust internal stations to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: replace bss_info_changed() with vif_cfg/link_info_changed() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add link_conf parameter for add/remove/change link (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't check dtim_period in new API (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust SMPS for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add set_hw_timestamp to mld ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add link to firmware earlier (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust some PS and PM methods to MLD (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust mld_mac_ctxt_/beacon_changed() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust smart fifo configuration to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: align to the LINK cmd update in the FW (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: always use the sta->addr as the peers addr (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: modify link instead of removing it during csa (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix crash on queue removal for MLD API too (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix "modify_mask" value in the link cmd. (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add all missing ops to iwl_mvm_mld_ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for post_channel_switch in MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: unite sta_modify_disable_tx flows (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add cancel/remain_on_channel for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_roc() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add some new MLD ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add sta handling flows for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an indication that the new MLD API is used (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: sta preparation for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: vif preparation for MLO (Íñigo Huguet) [2196823] - wifi: nl80211: support advertising S1G capabilities (Íñigo Huguet) [2196823] - wifi: mac80211: S1G capabilities information element in probe request (Íñigo Huguet) [2196823] - mac80211: minstrel_ht: remove unused n_supported variable (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Use 64-bit division helper in iwl_mvm_get_crosstimestamp_fw() (Íñigo Huguet) [2196823] - wifi: carl9170: Replace fake flex-array with flexible-array member (Íñigo Huguet) [2196823] - wifi: carl9170: Fix multiple -Warray-bounds warnings (Íñigo Huguet) [2196823] - wifi: ath10k: remove unused ath10k_get_ring_byte function (Íñigo Huguet) [2196823] - wifi: ath12k: incorrect channel survey dump (Íñigo Huguet) [2196823] - wifi: ath12k: fix incorrect handling of AMSDU frames (Íñigo Huguet) [2196823] - wifi: ath12k: fix packets are sent in native wifi mode while we set raw mode (Íñigo Huguet) [2196823] - wifi: ath12k: fill peer meta data during reo_reinject (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR report support via virtio (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR abort support via virtio (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR request support via virtio (Íñigo Huguet) [2196823] - wifi: nl80211: make nl80211_send_chandef non-static (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR capability support (Íñigo Huguet) [2196823] - mac80211: support RNR for EMA AP (Íñigo Huguet) [2196823] - cfg80211: support RNR for EMA AP (Íñigo Huguet) [2196823] - wifi: mac80211: use bullet list for amsdu_mesh_control formats list (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix NULL deref in iwl_mvm_mld_disable_txq (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: EMA support (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: Multiple BSSID support (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: move beacon transmission to a separate function (Íñigo Huguet) [2196823] - wifi: mac80211: generate EMA beacons in AP mode (Íñigo Huguet) [2196823] - wifi: nl80211: Update the documentation of NL80211_SCAN_FLAG_COLOCATED_6GHZ (Íñigo Huguet) [2196823] - wifi: mac80211: implement support for yet another mesh A-MSDU format (Íñigo Huguet) [2196823] - wifi: mac80211: add mesh fast-rx support (Íñigo Huguet) [2196823] - wifi: mac80211: use mesh header cache to speed up mesh forwarding (Íñigo Huguet) [2196823] - wifi: mac80211: mesh fast xmit support (Íñigo Huguet) [2196823] - wifi: mac80211: fix race in mesh sequence number assignment (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add debugfs to get TAS status (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: support enabling and disabling HW timestamping (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configurations for Bnj device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_add_sta(), iwl_mvm_rm_sta() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove not needed initializations (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_sta_send_to_fw() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_sta (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_cfg_he_sta() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Don't send MAC CTXT cmd after deauthorization (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add stop_ap() and leave_ibss() callbacks for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add start_ap() and join_ibss() callbacks for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: select ptp cross timestamp from multiple reads (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement PHC clock adjustments (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable TX beacon protection (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for timing measurement (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: report hardware timestamps in RX/TX status (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: read synced time from firmware if supported (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for PTP HW clock (PHC) (Íñigo Huguet) [2196823] - wifi: ath12k: Enable IMPS for WCN7850 (Íñigo Huguet) [2196823] - wifi: ath12k: Identify DFS channel when sending scan channel list command (Íñigo Huguet) [2196823] - wifi: ath12k: fix firmware assert during channel switch for peer sta (Íñigo Huguet) [2196823] - wifi: ath12k: fix memory leak in ath12k_qmi_driver_event_work() (Íñigo Huguet) [2196823] - wifi: ath11k: fix BUFFER_DONE read on monitor ring rx buffer (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Support new chip RTL8710BU aka RTL8188GU (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: RTL8192EU always needs full init (Íñigo Huguet) [2196823] - wifi: iwlwifi: Avoid disabling GCC specific flag with clang (Íñigo Huguet) [2196823] - wifi: iwlwifi: suppress printf warnings in tracing (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: pnvm: fix uefi reduced TX power loading (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configurations for Bnj and Bz devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rs: print BAD_RATE for invalid HT/VHT index (Íñigo Huguet) [2196823] - wifi: iwlwifi: Replace space with tabs as code indent (Íñigo Huguet) [2196823] - wifi: iwlwifi: Add required space before open '(' (Íñigo Huguet) [2196823] - wifi: iwlwifi: Remove prohibited spaces (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix typos in comment (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove setting of 'sta' parameter (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an unassign_vif_chanctx() callback for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor __iwl_mvm_unassign_vif_chanctx() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an assign_vif_chanctx() callback for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor __iwl_mvm_assign_vif_chanctx() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add a remove_interface() callback for mld mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add an add_interface() callback for mld mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for the new STA related commands (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for the new LINK command (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for the new MAC CTXT command (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Refactor MAC_CONTEXT_CMD sending flow (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Refactor STA_HE_CTXT_CMD sending flow (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: Add driver defined dump file name (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: Add new tlv for dump file name extension (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid sta lookup in queue alloc (Íñigo Huguet) [2196823] - wifi: ath11k: fix deinitialization of firmware resources (Íñigo Huguet) [2196823] - wifi: ath11k: Replace fake flex-array with flexible-array member (Íñigo Huguet) [2196823] - wifi: ath12k: Add missing unwind goto in ath12k_pci_probe() (Íñigo Huguet) [2196823] - net: Use of_property_present() for testing DT property presence (Íñigo Huguet) [2196823] - wifi: brcmfmac: slab-out-of-bounds read in brcmf_get_assoc_ies() (Íñigo Huguet) [2196823] {CVE-2023-1380} - wifi: rtw88: fix memory leak in rtw_usb_probe() (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add v5 firmware cycle status report (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add v2 Bluetooth scan info (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Fix wrong structure assignment at null data report (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add register monitor report v2 format (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add traffic TX/RX info and its H2C (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add WiFi role info v2 (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add more error_map and counter to log (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: use module_usb_driver (Íñigo Huguet) [2196823] - wifi: rtw89: release RX standby timer of beamformee CSI to save power (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: mark Edimax EW-7811Un V2 as tested (Íñigo Huguet) [2196823] - wifi: brcmfmac: Use ISO3166 country code and rev 0 as fallback on 4356 (Íñigo Huguet) [2196823] - wifi: move raycs, wl3501 and rndis_wlan to legacy directory (Íñigo Huguet) [2196823] - wifi: move mac80211_hwsim and virt_wifi to virtual directory (Íñigo Huguet) [2196823] - wifi: ath11k: add debug prints in regulatory WMI event processing (Íñigo Huguet) [2196823] - wifi: ath11k: add support to parse new WMI event for 6 GHz (Íñigo Huguet) [2196823] - wifi: ath11k: use proper regulatory reference for bands (Íñigo Huguet) [2196823] - bus: mhi: host: pci_generic: Revert "Add a secondary AT port to Telit FN990" (Íñigo Huguet) [2196823] - bus: mhi: host: pci_generic: Drop redundant pci_enable_pcie_error_reporting() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix EOF bit reporting (Íñigo Huguet) [2196823] - wifi: iwlwifi: Do not include radiotap EHT user info if not needed (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add EHT RU allocation to radiotap (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update logs for yoyo reset sw changes (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: clean up duplicated defines (Íñigo Huguet) [2196823] - wifi: iwlwifi: rs-fw: break out for unsupported bandwidth (Íñigo Huguet) [2196823] - wifi: iwlwifi: Add support for B step of BnJ-Fm4 (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make flush code a bit clearer (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid UB shift of snif_queue (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add primary 80 known for EHT radiotap (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: parse FW frame metadata for EHT sniffer mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: decode USIG_B1_B7 RU to nl80211 RU width (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rename define to generic name (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: allow Microsoft to use TAS (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add all EHT based on data0 info from HW (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add EHT radiotap info based on rate_n_flags (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an helper function radiotap TLVs (Íñigo Huguet) [2196823] - wifi: radiotap: separate vendor TLV into header/content (Íñigo Huguet) [2196823] - bus: mhi: ep: Demote unsupported channel error log to debug (Íñigo Huguet) [2196823] - bus: mhi: host: Remove mhi_poll() API (Íñigo Huguet) [2196823] - wifi: iwlwifi: reduce verbosity of some logging events (Íñigo Huguet) [2196823] - wifi: iwlwifi: Adding the code to get RF name for MsP device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: mark mac header with no data frames (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add LSIG info to radio tap info in EHT (Íñigo Huguet) [2196823] - wifi: nl80211: Add support for randomizing TA of auth and deauth frames (Íñigo Huguet) [2196823] - wifi: mac80211: add LDPC related flags in ieee80211_bss_conf (Íñigo Huguet) [2196823] - wifi: mac80211: add EHT MU-MIMO related flags in ieee80211_bss_conf (Íñigo Huguet) [2196823] - wifi: mac80211: introduce ieee80211_refresh_tx_agg_session_timer() (Íñigo Huguet) [2196823] - wifi: mac80211: add support for driver adding radiotap TLVs (Íñigo Huguet) [2196823] - wifi: radiotap: Add EHT radiotap definitions (Íñigo Huguet) [2196823] - wifi: mac80211: fix ieee80211_link_set_associated() type (Íñigo Huguet) [2196823] - wifi: mac80211: simplify reasoning about EHT capa handling (Íñigo Huguet) [2196823] - wifi: mac80211: mlme: remove pointless sta check (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: Indicate support for NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT (Íñigo Huguet) [2196823] - wifi: mac80211: add netdev per-link debugfs data and driver hook (Íñigo Huguet) [2196823] - wifi: mac80211: remove SMPS from AP debugfs (Íñigo Huguet) [2196823] - wifi: mac80211: add pointer from bss_conf to vif (Íñigo Huguet) [2196823] - wifi: mac80211: warn only once on AP probe (Íñigo Huguet) [2196823] - wifi: cfg80211/mac80211: report link ID on control port RX (Íñigo Huguet) [2196823] - wifi: mac80211: add support for set_hw_timestamp command (Íñigo Huguet) [2196823] - wifi: nl80211: add a command to enable/disable HW timestamping (Íñigo Huguet) [2196823] - wifi: wireless: cleanup unused function parameters (Íñigo Huguet) [2196823] - wifi: wireless: correct primary channel validation on 6 GHz (Íñigo Huguet) [2196823] - wifi: wireless: return primary channel regardless of DUP (Íñigo Huguet) [2196823] - wifi: mac80211: allow beacon protection HW offload (Íñigo Huguet) [2196823] - wifi: mac80211: check key taint for beacon protection (Íñigo Huguet) [2196823] - wifi: mac80211: clear all bits that relate rtap fields on skb (Íñigo Huguet) [2196823] - wifi: mac80211: adjust scan cancel comment/check (Íñigo Huguet) [2196823] - wifi: nl80211: Update the documentation of NL80211_SCAN_FLAG_COLOCATED_6GHZ (Íñigo Huguet) [2196823] - gpiolib: split linux/gpio/driver.h out of linux/gpio.h (Íñigo Huguet) [2196823] - wifi: rtlwifi: rtl8192se: Remove some unused variables (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Return the original error from rtw_mac_power_switch() (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Return the original error from rtw_pwr_seq_parser() (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Add 4359C0 firmware definition (Íñigo Huguet) [2196823] - wifi: rtw89: fix SER L1 might stop entering LPS issue (Íñigo Huguet) [2196823] - wifi: ath11k: Add tx ack signal support for management packets (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Add BCM4378B3 support (Íñigo Huguet) [2196823] - wifi: brcmfmac: common: Add support for external calibration blobs (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Load and provide TxCap blobs (Íñigo Huguet) [2196823] - wifi: brcmfmac: common: Add support for downloading TxCap blobs (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4387 (Íñigo Huguet) [2196823] - wifi: brcmfmac: cfg80211: Pass the PMK in binary instead of hex (Íñigo Huguet) [2196823] - wifi: brcmfmac: cfg80211: Add support for PMKID_V3 operations (Íñigo Huguet) [2196823] - wifi: brcmfmac: feature: Add support for setting feats based on WLC version (Íñigo Huguet) [2196823] - wifi: brcmfmac: cfg80211: Add support for scan params v2 (Íñigo Huguet) [2196823] - wifi: brcmfmac: chip: Handle 1024-unit sizes for TCM blocks (Íñigo Huguet) [2196823] - wifi: brcmfmac: chip: Only disable D11 cores; handle an arbitrary number (Íñigo Huguet) [2196823] - wifi: ath11k: generate rx and tx mcs maps for supported HE mcs (Íñigo Huguet) [2196823] - wifi: ath11k: move HE MCS mapper to a separate function (Íñigo Huguet) [2196823] - wifi: ath11k: push MU-MIMO params from hostapd to hardware (Íñigo Huguet) [2196823] - wifi: ath11k: modify accessor macros to match index size (Íñigo Huguet) [2196823] - wifi: ath6kl: reduce WARN to dev_dbg() in callback (Íñigo Huguet) [2196823] - wifi: brcmfmac: support CQM RSSI notification with older firmware (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Provide a buffer of random bytes to the device (Íñigo Huguet) [2196823] - wifi: brcmfmac: acpi: Add support for fetching Apple ACPI properties (Íñigo Huguet) [2196823] - wifi: ath12k: remove memset with byte count of 278528 (Íñigo Huguet) [2196823] - wifi: wcn36xx: Slightly optimize PREPARE_HAL_BUF() (Íñigo Huguet) [2196823] - wifi: rtw89: refine FW feature judgement on packet drop (Íñigo Huguet) [2196823] - wifi: rtw89: 8852b: enable hw_scan support (Íñigo Huguet) [2196823] - wifi: rtw89: 8852b: add channel encoding for hw_scan (Íñigo Huguet) [2196823] - wifi: rtw89: adjust channel encoding to common function (Íñigo Huguet) [2196823] - wifi: rtw89: fw: configure CRASH_TRIGGER feature for 8852B (Íñigo Huguet) [2196823] - wifi: rtw89: add tx_wake notify for 8852B (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8822c: Implement RTL8822CS (SDIO) efuse parsing (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8822b: Implement RTL8822BS (SDIO) efuse parsing (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8821c: Implement RTL8821CS (SDIO) efuse parsing (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Add SDIO HCI support in the TX/page table setup (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Add support for the SDIO HCI in rtw_pwr_seq_parser() (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Remove always true condition in rtl8xxxu_print_chipinfo (Íñigo Huguet) [2196823] - wifi: rtw89: add RNR support for 6 GHz scan (Íñigo Huguet) [2196823] - wifi: rtlwifi: rtl8192de: Remove the unused variable bcnfunc_enable (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: 8188e: parse single one element of RA report for station mode (Íñigo Huguet) [2196823] - wifi: rtlwifi: rtl8192ce: fix dealing empty EEPROM values (Íñigo Huguet) [2196823] - wifi: ath11k: fix SAC bug on peer addition with sta band migration (Íñigo Huguet) [2196823] - wifi: ath10k: Remove redundant assignment to changed_flags (Íñigo Huguet) [2196823] - wifi: ath10k: snoc: enable threaded napi on WCN3990 (Íñigo Huguet) [2196823] - wifi: ath5k: fix an off by one check in ath5k_eeprom_read_freq_list() (Íñigo Huguet) [2196823] - wifi: ath5k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2196823] - wifi: ath11k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2196823] - wifi: ath12k: PCI ops for wakeup/release MHI (Íñigo Huguet) [2196823] - wifi: ath12k: Handle lock during peer_id find (Íñigo Huguet) [2196823] - wifi: ath9k: hif_usb: fix memory leak of remain_skbs (Íñigo Huguet) [2196823] - wifi: ath11k: fix return value check in ath11k_ahb_probe() (Íñigo Huguet) [2196823] - wifi: ath12k: use kfree_skb() instead of kfree() (Íñigo Huguet) [2196823] - wifi: ath: Silence memcpy run-time false positive warning (Íñigo Huguet) [2196823] - wifi: ath10k: Remove the unused function shadow_dst_wr_ind_addr() and ath10k_ce_error_intr_enable() (Íñigo Huguet) [2196823] - wifi: ath12k: dp_mon: clean up some inconsistent indentings (Íñigo Huguet) [2196823] - wifi: ath12k: dp_mon: Fix unsigned comparison with less than zero (Íñigo Huguet) [2196823] - wifi: ath12k: Fix spelling mistakes in warning messages and comments (Íñigo Huguet) [2196823] - wifi: ath6kl: minor fix for allocation size (Íñigo Huguet) [2196823] - wifi: ath11k: Set ext passive scan flag to adjust passive scan start time (Íñigo Huguet) [2196823]- xfrm: add NULL check in xfrm_update_ae_params (Daniel Mendes) [2218948] {CVE-2023-3772} - scsi: storvsc: Fix handling of virtual Fibre Channel timeouts (Cathy Avery) [1986067] - netfilter: xt_owner: Add supplementary groups option (Phil Sutter) [2136194] - netfilter: nf_tables: can't schedule in nft_chain_validate (Florian Westphal) [2230460] - drm/nouveau/nvkm/dp: Add workaround to fix DP 1.3+ DPCD issues (Karol Herbst) [2229989] - net: deprecate PF_KEY (Sabrina Dubroca) [RHEL-1257] - KVM: SEV: remove ghcb variable declarations (Vitaly Kuznetsov) [2213807] - KVM: SEV: only access GHCB fields once (Vitaly Kuznetsov) [2213807] {CVE-2023-4155} - KVM: SEV: snapshot the GHCB before accessing it (Vitaly Kuznetsov) [2213807] {CVE-2023-4155} - Documentation/x86: Fix backwards on/off logic about YMM support (Waiman Long) [2229884] {CVE-2022-40982} - KVM: Add GDS_NO support to KVM (Waiman Long) [2229884] {CVE-2022-40982} - x86/speculation: Add Kconfig option for GDS (Waiman Long) [2229884] {CVE-2022-40982} - x86/speculation: Add force option to GDS mitigation (Waiman Long) [2229884] {CVE-2022-40982} - x86/speculation: Add Gather Data Sampling mitigation (Waiman Long) [2229884] {CVE-2022-40982} - x86/bugs: Use sysfs_emit() (Waiman Long) [2229884] - Documentation/ABI: Mention retbleed vulnerability info file for sysfs (Waiman Long) [2229884] - docs/kernel-parameters: Update descriptions for "mitigations=" param with retbleed (Waiman Long) [2229884] - arm64: correct the effect of mitigations off on kpti (Waiman Long) [2229884] - x86/speculation: Add missing srbds=off to the mitigations= help text (Waiman Long) [2229884] - usb: typec: ucsi: Mark dGPUs as DEVICE scope (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Remove ccgx,firmware-build property (Desnes Nunes) [2222463] - usb: typec: ucsi_ccg: Add OF support (Desnes Nunes) [2222463] - usb: typec: ucsi/ucsi_ccg: Convert to i2c's .probe_new() (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Add ACPI property to align with device-tree (Desnes Nunes) [2222463] - dt-bindings: usb: Add Cypress cypd4226 Type-C controller (Desnes Nunes) [2222463] - i2c: designware-pci: Switch to use i2c_new_ccgx_ucsi() (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Convert to use dev_err_probe() (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Use temporary variable for struct device (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Switch to use i2c_new_ccgx_ucsi() (Desnes Nunes) [2222463] - i2c: Remove support for dangling device properties (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Constify the software node (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Use PTR_ERR_OR_ZERO() to simplify code (Desnes Nunes) [2222463] - i2c: nvidia-gpu: convert to use i2c_new_client_device() (Desnes Nunes) [2222463] - i2c: Add support for software nodes (Desnes Nunes) [2222463] - i2c: Introduce common module to instantiate CCGx UCSI (Desnes Nunes) [2222463] - power: supply: Fix logic checking if system is running from battery (Desnes Nunes) [2222463] - redhat: support virtio-mem on x86-64 as tech-preview (David Hildenbrand) [2229123] - virtio/virtio_mem: handle a possible NULL as a memcpy parameter (David Hildenbrand) [2229123] - virtio-mem: support VIRTIO_MEM_F_UNPLUGGED_INACCESSIBLE (David Hildenbrand) [2229123] - virtio-mem: disallow mapping virtio-mem memory via /dev/mem (David Hildenbrand) [2229123] - kernel/resource: disallow access to exclusive system RAM regions (David Hildenbrand) [2229123] - kernel/resource: clean up and optimize iomem_is_exclusive() (David Hildenbrand) [2229123] - virtio-mem: kdump mode to sanitize /proc/vmcore access (David Hildenbrand) [2229123] - virtio-mem: factor out hotplug specifics from virtio_mem_remove() into virtio_mem_deinit_hotplug() (David Hildenbrand) [2229123] - virtio-mem: factor out hotplug specifics from virtio_mem_probe() into virtio_mem_init_hotplug() (David Hildenbrand) [2229123] - virtio-mem: factor out hotplug specifics from virtio_mem_init() into virtio_mem_init_hotplug() (David Hildenbrand) [2229123] - proc/vmcore: fix possible deadlock on concurrent mmap and read (David Hildenbrand) [2229123] - proc/vmcore: don't fake reading zeroes on surprise vmcore_cb unregistration (David Hildenbrand) [2229123] - proc/vmcore: fix clearing user buffer by properly using clear_user() (David Hildenbrand) [2229123] - proc/vmcore: convert oldmem_pfn_is_ram callback to more generic vmcore callbacks (David Hildenbrand) [2229123] - proc/vmcore: let pfn_is_ram() return a bool (David Hildenbrand) [2229123] - x86/xen: print a warning when HVMOP_get_mem_type fails (David Hildenbrand) [2229123] - x86/xen: simplify xen_oldmem_pfn_is_ram() (David Hildenbrand) [2229123] - x86/xen: update xen_oldmem_pfn_is_ram() documentation (David Hildenbrand) [2229123] - virtio-mem: fix sleeping in RCU read side section in virtio_mem_online_page_cb() (David Hildenbrand) [2229123] - virtio-mem: prioritize unplug from ZONE_MOVABLE in Big Block Mode (David Hildenbrand) [2229123] - virtio-mem: simplify high-level unplug handling in Big Block Mode (David Hildenbrand) [2229123] - virtio-mem: prioritize unplug from ZONE_MOVABLE in Sub Block Mode (David Hildenbrand) [2229123] - virtio-mem: simplify high-level unplug handling in Sub Block Mode (David Hildenbrand) [2229123] - virtio-mem: simplify high-level plug handling in Sub Block Mode (David Hildenbrand) [2229123] - virtio-mem: use page_zonenum() in virtio_mem_fake_offline() (David Hildenbrand) [2229123] - virtio-mem: don't read big block size in Sub Block Mode (David Hildenbrand) [2229123] - fs/proc/kcore: use page_offline_(freeze|thaw) (David Hildenbrand) [2229123] - virtio-mem: use page_offline_(start|end) when setting PageOffline() (David Hildenbrand) [2229123] - mm: introduce page_offline_(begin|end|freeze|thaw) to synchronize setting PageOffline() (David Hildenbrand) [2229123] - fs/proc/kcore: don't read offline sections, logically offline pages and hwpoisoned pages (David Hildenbrand) [2229123] - fs/proc/kcore: pfn_is_ram check only applies to KCORE_RAM (David Hildenbrand) [2229123] - fs/proc/kcore: drop KCORE_REMAP and KCORE_OTHER (David Hildenbrand) [2229123] - proc/kcore: Remove unused kclist_add_remap() (David Hildenbrand) [2229123] - x86/gart: Exclude GART aperture from kcore (David Hildenbrand) [2229123] - kernel/resource: remove first_lvl / siblings_only logic (David Hildenbrand) [2229123] - kernel/resource: make walk_mem_res() find all busy IORESOURCE_MEM resources (David Hildenbrand) [2229123] - kernel/resource: make walk_system_ram_res() find all busy IORESOURCE_SYSTEM_RAM resources (David Hildenbrand) [2229123] - kernel/resource.c: fix kernel-doc markups (David Hildenbrand) [2229123] - resource: avoid unnecessary lookups in find_next_iomem_res() (David Hildenbrand) [2229123] - resource: fix locking in find_next_iomem_res() (David Hildenbrand) [2229123] - virtio-mem: check against mhp_get_pluggable_range() which memory we can hotplug (David Hildenbrand) [2229123] - virtio-mem: Assign boolean values to a bool variable (David Hildenbrand) [2229123] - mm/memory_hotplug: MEMHP_MERGE_RESOURCE -> MHP_MERGE_RESOURCE (David Hildenbrand) [2229123] - virtio-mem: Big Block Mode (BBM) - safe memory hotunplug (David Hildenbrand) [2229123] - virtio-mem: Big Block Mode (BBM) - basic memory hotunplug (David Hildenbrand) [2229123] - mm/memory_hotplug: extend offline_and_remove_memory() to handle more than one memory block (David Hildenbrand) [2229123] - virtio-mem: allow to force Big Block Mode (BBM) and set the big block size (David Hildenbrand) [2229123] - virtio-mem: Big Block Mode (BBM) memory hotplug (David Hildenbrand) [2229123] - virtio-mem: factor out adding/removing memory from Linux (David Hildenbrand) [2229123] - virtio-mem: memory notifier callbacks are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virito-mem: existing (un)plug functions are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: memory block ids are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: nb_sb_per_mb and subblock_size are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virito-mem: subblock states are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: memory block states are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virito-mem: document Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: generalize handling when memory is getting onlined deferred (David Hildenbrand) [2229123] - virtio-mem: don't always trigger the workqueue when offlining memory (David Hildenbrand) [2229123] - virtio-mem: drop last_mb_id (David Hildenbrand) [2229123] - virtio-mem: generalize virtio_mem_overlaps_range() (David Hildenbrand) [2229123] - virtio-mem: generalize virtio_mem_owned_mb() (David Hildenbrand) [2229123] - virtio-mem: generalize check for added memory (David Hildenbrand) [2229123] - virtio-mem: retry fake-offlining via alloc_contig_range() on ZONE_MOVABLE (David Hildenbrand) [2229123] - virtio-mem: factor out handling of fake-offline pages in memory notifier (David Hildenbrand) [2229123] - virtio-mem: factor out fake-offlining into virtio_mem_fake_offline() (David Hildenbrand) [2229123] - virtio-mem: print debug messages from virtio_mem_send_*_request() (David Hildenbrand) [2229123] - virtio-mem: factor out calculation of the bit number within the subblock bitmap (David Hildenbrand) [2229123] - virtio-mem: use "unsigned long" for nr_pages when fake onlining/offlining (David Hildenbrand) [2229123] - virtio-mem: drop rc2 in virtio_mem_mb_plug_and_add() (David Hildenbrand) [2229123] - virtio-mem: simplify MAX_ORDER - 1 / pageblock_order handling (David Hildenbrand) [2229123] - virtio-mem: more precise calculation in virtio_mem_mb_state_prepare_next_mb() (David Hildenbrand) [2229123] - virtio-mem: determine nid only once using memory_add_physaddr_to_nid() (David Hildenbrand) [2229123] - MAINTAINERS: add URL for virtio-mem (David Hildenbrand) [2229123] - virtio-mem: Constify mem_id_table (David Hildenbrand) [2229123] - kernel/resource: make iomem_resource implicit in release_mem_region_adjustable() (David Hildenbrand) [2229123] - virtio-mem: try to merge system ram resources (David Hildenbrand) [2229123] - mm/memory_hotplug: MEMHP_MERGE_RESOURCE to specify merging of System RAM resources (David Hildenbrand) [2229123] - mm/memory_hotplug: prepare passing flags to add_memory() and friends (David Hildenbrand) [2229123] - mm/memory_hotplug: guard more declarations by CONFIG_MEMORY_HOTPLUG (David Hildenbrand) [2229123] - include/linux/memory_hotplug.h: move definitions of {set,clear}_zone_contiguous (David Hildenbrand) [2229123] - kernel/resource: make release_mem_region_adjustable() never fail (David Hildenbrand) [2229123] - virtio-mem: don't special-case ZONE_MOVABLE (David Hildenbrand) [2229123] - virtio_mem: convert to LE accessors (David Hildenbrand) [2229123] - virtio_mem: correct tags for config space fields (David Hildenbrand) [2229123] - virtio-mem: Fix build error due to improper use 'select' (David Hildenbrand) [2229123] - virtio-mem: add memory via add_memory_driver_managed() (David Hildenbrand) [2229123] - virtio-mem: silence a static checker warning (David Hildenbrand) [2229123] - virtio_mem: convert device block size into 64bit (David Hildenbrand) [2229123] - virtio-mem: drop unnecessary initialization (David Hildenbrand) [2229123] - virtio-mem: Don't rely on implicit compiler padding for requests (David Hildenbrand) [2229123] - virtio-mem: Try to unplug the complete online memory block first (David Hildenbrand) [2229123] - virtio-mem: Use -ETXTBSY as error code if the device is busy (David Hildenbrand) [2229123] - virtio-mem: Unplug subblocks right-to-left (David Hildenbrand) [2229123] - virtio-mem: Drop manual check for already present memory (David Hildenbrand) [2229123] - virtio-mem: Add parent resource for all added "System RAM" (David Hildenbrand) [2229123] - virtio-mem: Better retry handling (David Hildenbrand) [2229123] - virtio-mem: Offline and remove completely unplugged memory blocks (David Hildenbrand) [2229123] - mm/memory_hotplug: Introduce offline_and_remove_memory() (David Hildenbrand) [2229123] - virtio-mem: Allow to offline partially unplugged memory blocks (David Hildenbrand) [2229123] - virtio-mem: Paravirtualized memory hotunplug part 2 (David Hildenbrand) [2229123] - virtio-mem: Paravirtualized memory hotunplug part 1 (David Hildenbrand) [2229123] - virtio-mem: Allow to specify an ACPI PXM as nid (David Hildenbrand) [2229123] - MAINTAINERS: Add myself as virtio-mem maintainer (David Hildenbrand) [2229123] - virtio-mem: Paravirtualized memory hotplug (David Hildenbrand) [2229123] - Revert "drm/amd/display: edp do not add non-edid timings" (Jocelyn Falempe) [RHEL-845] - Revert "drm/amd/display: reallocate DET for dual displays with high pixel rate ratio" (Jocelyn Falempe) [RHEL-845] - drm/client: Fix memory leak in drm_client_modeset_probe (Jocelyn Falempe) [RHEL-845] - drm/client: Fix memory leak in drm_client_target_cloned (Jocelyn Falempe) [RHEL-845] - drm/atomic: Fix potential use-after-free in nonblocking commits (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: conditionally disable pcie lane/speed switching for SMU13 (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: share the code around SMU13 pcie parameters update (Jocelyn Falempe) [RHEL-845] - drm/ttm: Don't leak a resource on swapout move error (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: avoid restore process run into dead loop. (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Correct `DMUB_FW_VERSION` macro (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix 128b132b link loss handling (Jocelyn Falempe) [RHEL-845] - drm/amd/display: add a NULL pointer check (Jocelyn Falempe) [RHEL-845] - drm/amd: Disable PSR-SU on Parade 0803 TCON (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: fix clearing mappings for BOs that are always valid in VM (Jocelyn Falempe) [RHEL-845] - drm/amd/display: disable seamless boot if force_odm_combine is enabled (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Remove Phantom Pipe Check When Calculating K1 and K2 (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix seamless odm transitions (Jocelyn Falempe) [RHEL-845] - drm/dp_mst: Clear MSG_RDY flag before sending new message (Jocelyn Falempe) [RHEL-845] - drm/atomic: Allow vblank-enabled + self-refresh "disable" (Jocelyn Falempe) [RHEL-845] - drm/amd/display: perform a bounds check before filling dirty rectangles (Jocelyn Falempe) [RHEL-845] - drm/nouveau: bring back blit subchannel for pre nv50 GPUs (Jocelyn Falempe) [RHEL-845] - drm/nouveau/disp/g94: enable HDMI (Jocelyn Falempe) [RHEL-845] - drm/nouveau/disp: fix HDMI on gt215+ (Jocelyn Falempe) [RHEL-845] - drm/i915: Fix one wrong caching mode enum usage (Jocelyn Falempe) [RHEL-845] - drm/i915: Don't preserve dpll_hw_state for slave crtc in Bigjoiner (Jocelyn Falempe) [RHEL-845] - drm/panel: simple: Add Powertip PH800480T013 drm_display_mode flags (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi86: Fix auxiliary bus lifetime (Jocelyn Falempe) [RHEL-845] - drm/panel: simple: Add connector_type for innolux_at043tn24 (Jocelyn Falempe) [RHEL-845] - drm/nouveau/acr: Abort loading ACR if no firmware was found (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for jpeg_v4_0 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for jpeg_v2_6 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: separate ras irq from jpeg instance irq for UVD_POISON (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Move jpeg ras block init to ras sw_init (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for vcn_v4_0 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for vcn_v2_6 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: separate ras irq from vcn instance irq for UVD_POISON (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Move vcn ras block init to ras sw_init (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Fix usage of UMC fill record in RAS (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Fix memcpy() in sienna_cichlid_append_powerplay_table function. (Jocelyn Falempe) [RHEL-845] - amdgpu: validate offset_in_bo of drm_amdgpu_gem_va (Jocelyn Falempe) [RHEL-845] - drm/radeon: fix possible division-by-zero errors (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix artifacting on eDP panels when engaging freesync video mode (Jocelyn Falempe) [RHEL-845] - drm/amdkfd: Fix potential deallocation of previously deallocated memory. (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix a test dml32_rq_dlg_get_rq_reg() (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix a test CalculatePrefetchSchedule() (Jocelyn Falempe) [RHEL-845] - drm/panel: simple: fix active size for Ampire AM-480272H3TMQW-T01H (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi83: Fix enable/disable flow to meet spec (Jocelyn Falempe) [RHEL-845] - drm/bridge: anx7625: Prevent endless probe loop (Jocelyn Falempe) [RHEL-845] - drm/nouveau: dispnv50: fix missing-prototypes warning (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358767: Switch to devm MIPI-DSI helpers (Jocelyn Falempe) [RHEL-845] - drm/vkms: Fix RGB565 pixel conversion (Jocelyn Falempe) [RHEL-845] - drm: Add fixed-point helper to get rounded integer values (Jocelyn Falempe) [RHEL-845] - drm/vkms: isolate pixel conversion functionality (Jocelyn Falempe) [RHEL-845] - drm/panel: sharp-ls043t1le01: adjust mode settings (Jocelyn Falempe) [RHEL-845] - drm/vram-helper: fix function names in vram helper doc (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix THS_TRAILCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix TXTAGOCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix THS_ZEROCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix TCLK_TRAILCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: Add atomic_get_input_bus_fmts() implementation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix TCLK_ZEROCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix PLL target frequency (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix PLL parameters computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: always enable HS video mode (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi83: Fix enable error path (Jocelyn Falempe) [RHEL-845] - drm/bridge: it6505: Move a variable assignment behind a null pointer check in receive_timing_debugfs_show() (Jocelyn Falempe) [RHEL-845] - drm/i915/guc/slpc: Provide sysfs for efficient freq (Jocelyn Falempe) [RHEL-845] - drm/i915/guc: More debug print updates - GuC SLPC (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Explicitly specify update type per plane info change (Jocelyn Falempe) [RHEL-845] - radeon: avoid double free in ci_dpm_init() (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix is_timing_changed() prototype (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Add logging for display MALL refresh setting (Jocelyn Falempe) [RHEL-845] - drm: use mgr->dev in drm_dbg_kms in drm_dp_add_payload_part2 (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Ensure vmin and vmax adjust for DCE (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Validate VM ioctl flags. (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Do not update DRR while BW optimizations pending (Jocelyn Falempe) [RHEL-845] - drm/radeon: fix race condition UAF in radeon_gem_set_domain_ioctl (Jocelyn Falempe) [RHEL-845] - udmabuf: revert 'Add support for mapping hugepages (v4)' (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix the system hang while disable PSR (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Add wrapper to call planes and stream update (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Use dc_update_planes_and_stream (Jocelyn Falempe) [RHEL-845] - drm/nouveau: add nv_encoder pointer check for NULL (Jocelyn Falempe) [RHEL-845] - drm/nouveau/dp: check for NULL nv_connector->native_mode (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi86: Avoid possible buffer overflow (Jocelyn Falempe) [RHEL-845] - drm/nouveau: don't detect DSM for non-NVIDIA device (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Modify indirect buffer packages for resubmission (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Implement gfx9 patch functions for resubmission (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Program gds backup address as zero if no gds allocated (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Reset CP_VMID_PREEMPT after trailing fence signaled (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add missing radeon secondary PCI ID (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: workaround for compute workload type on some skus (Jocelyn Falempe) [RHEL-845] - drm/amd: Tighten permissions on VBIOS flashing attributes (Jocelyn Falempe) [RHEL-845] - drm/amd: Make sure image is written to trigger VBIOS image update flow (Jocelyn Falempe) [RHEL-845] - drm/amd/display: edp do not add non-edid timings (Jocelyn Falempe) [RHEL-845] - drm/amd/display: limit DPIA link rate to HBR3 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: vcn_4_0 set instance 0 init sched score to 1 (Jocelyn Falempe) [RHEL-845] - Revert "drm/amdgpu: remove TOPDOWN flags when allocating VRAM in large bar system" (Jocelyn Falempe) [RHEL-845] - drm:amd:amdgpu: Fix missing buffer object unlock in failure path (Jocelyn Falempe) [RHEL-845] - drm: panel-orientation-quirks: Change Air's quirk to support Air Plus (Jocelyn Falempe) [RHEL-845] - drm/amd/display: add ODM case when looking for first split pipe (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Reduce sdp bw after urgent to 90% (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: Fix power context allocation in SMU13 (Jocelyn Falempe) [RHEL-845] - drm/amd: Disallow s0ix without BIOS support again (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: change reserved vram info print (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: fix xclk freq on CHIP_STONEY (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: conditionally disable pcie lane switching for some sienna_cichlid SKUs (Jocelyn Falempe) [RHEL-845] - drm/i915/gt: Use the correct error value when kernel_context() fails (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: fix Null pointer dereference error in amdgpu_device_recover_vram (Jocelyn Falempe) [RHEL-845] - drm/i915/selftests: Add some missing error propagation (Jocelyn Falempe) [RHEL-845] - drm/i915: Use 18 fast wake AUX sync len (Jocelyn Falempe) [RHEL-845] - drm/i915: Explain the magic numbers for AUX SYNC/precharge length (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for renoir (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for yellow carp (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk clocks levels for SMU v13.0.5 (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: resolve reboot exception for si oland (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for vangogh (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for SMU v13.0.4 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: enable tmz by default for GC 11.0.1 (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Only wait for blank completion if OTG active (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: skip disabling fence driver src_irqs when device is unplugged (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: set gfx9 onwards APU atomics support to be true (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/nv: update VCN 3 max HEVC encoding resolution (Jocelyn Falempe) [RHEL-845] - drm/ast: Fix ARM compatibility (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Use the default reset when loading or reloading the driver (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix memleak in aconnector->timing_requested (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: release gpu full access after "amdgpu_device_ip_late_init" (Jocelyn Falempe) [RHEL-845] - drm/i915: Fix PIPEDMC disabling for a bigjoiner configuration (Jocelyn Falempe) [RHEL-845] - drm/i915: Disable DPLLs before disconnecting the TC PHY (Jocelyn Falempe) [RHEL-845] - drm/i915: Move shared DPLL disabling into CRTC disable hook (Jocelyn Falempe) [RHEL-845] - drm: fix drmm_mutex_init() (Jocelyn Falempe) [RHEL-845] - drm/amd/amdgpu: limit one queue per gang (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: Fix output of pp_od_clk_voltage (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: add missing NotifyPowerSource message mapping for SMU13.0.7 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: don't enable secure display on incompatible platforms (Jocelyn Falempe) [RHEL-845] - drm/radeon: reintroduce radeon_dp_work_func content (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Have Payload Properly Created After Resume (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: reserve the old gc_11_0_*_mes.bin (Jocelyn Falempe) [RHEL-845] - drm/amd/amdgpu: introduce gc_*_mes_2.bin v2 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gfx11: update gpu_clock_counter logic (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: refine get gpu clock counter method (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gfx11: Adjust gfxoff before powergating on gfx11 as well (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gfx10: Disable gfxoff before disabling powergating. (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gmc11: implement get_vbios_fb_size() (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: fix possible power mode mismatch between driver and PMFW (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Enable IH retry CAM on GFX9 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Fix sdma v4 sw fini error (Jocelyn Falempe) [RHEL-845] - drm/amd: Fix an out of bounds error in BIOS parser (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Correct DML calculation to follow HW SPEC (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fixed dcn30+ underflow issue (Jocelyn Falempe) [RHEL-845] - drm/amd/display: reallocate DET for dual displays with high pixel rate ratio (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Use DC_LOG_DC in the trasform pixel function (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Enable HostVM based on rIOMMU active (Jocelyn Falempe) [RHEL-845] - drm/amd/display: enable DPG when disabling plane for phantom pipe (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Correct DML calculation to align HW formula (Jocelyn Falempe) [RHEL-845] - drm/amd/display: populate subvp cmd info only for the top pipe (Jocelyn Falempe) [RHEL-845] - drm/displayid: add displayid_get_header() and check bounds better (Jocelyn Falempe) [RHEL-845] - drm/i915: taint kernel when force probing unsupported devices (Jocelyn Falempe) [RHEL-845] - drm/i915/dp: prevent potential div-by-zero (Jocelyn Falempe) [RHEL-845] - drm/i915: Fix NULL ptr deref by checking new_crtc_state (Jocelyn Falempe) [RHEL-845] - drm/i915/guc: Don't capture Gen8 regs on Xe devices (Jocelyn Falempe) [RHEL-845] - drm/sched: Check scheduler work queue before calling timeout handling (Jocelyn Falempe) [RHEL-845] - drm/mipi-dsi: Set the fwnode for mipi_dsi_device (Jocelyn Falempe) [RHEL-845] - drm/nouveau/disp: More DP_RECEIVER_CAP_SIZE array fixes (Jocelyn Falempe) [RHEL-845] - drm/dsc: fix DP_DSC_MAX_BPP_DELTA_* macro values (Jocelyn Falempe) [RHEL-845] - drm/fbdev-generic: prohibit potential out-of-bounds access (Jocelyn Falempe) [RHEL-845]- x86/show_trace_log_lvl: Ensure stack pointer is aligned, again (Oleg Nesterov) [2188093] - ahci: Add support for Dell S140 and later controllers (Tomas Henzl) [2222879] - s390/time: steer clocksource on STP syncs for CLOCK_MONOTONIC (Tobias Huschle) [2177649] - memstick: r592: Fix UAF bug in r592_remove due to race condition (Wander Lairson Costa) [2215906] {CVE-2023-35825} - scsi: zfcp: Defer fc_rport blocking until after ADISC response (Tobias Huschle) [2230241] - RDMA/efa: Add EFA 0xefa2 PCI ID (Izabela Bakollari) [2170086] - RDMA/efa: Support CQ receive entries with source GID (Izabela Bakollari) [2170086] - Revert "isystem: ship and use stdarg.h" (Jocelyn Falempe) [2229185] - drm/drm_print: Use system include for (Jocelyn Falempe) [2229185] - x86/mm: Do not shuffle CPU entry areas without KASLR (Rafael Aquini) [2165931] {CVE-2023-0597} - x86/mm: Randomize per-cpu entry area (Rafael Aquini) [2165931] {CVE-2023-0597} - x86/kasan: Map shadow for percpu pages on demand (Rafael Aquini) [2165931] {CVE-2023-0597} - x86/pti/32: Calculate the various PTI cpu_entry_area sizes correctly, make the CPU_ENTRY_AREA_PAGES assert precise (Rafael Aquini) [2165931] {CVE-2023-0597}- cifs: fix for following DFS links where sharename is the same as prepath (Ronnie Sahlberg) [2130474] - crypto: rng - Fix lock imbalance in crypto_del_rng (Herbert Xu) [2229700] - ibmvnic: Do not reset dql stats on NON_FATAL err (Mamatha Inamdar) [2227904] - mptcp: Correct the sock::sk_lock.owned lockdep annotations (Felix Maurer) [2228890] - gpio: name PCA953x gpio chips after device name (Steve Best) [2226775] - scsi: storvsc: Handle SRB status value 0x30 (Cathy Avery) [2218133] - netfilter: nft_set_pipapo: fix improper element removal (Phil Sutter) [2225276] {CVE-2023-4004} - macvlan: add forgotten nla_policy for IFLA_MACVLAN_BC_CUTOFF (Xin Long) [2226791] - tcp: Reduce chance of collisions in inet6_hashfn(). (Felix Maurer) [2176119] {CVE-2023-1206} - ipv6: fix locking issues with loops over idev->addr_list (Jiri Benc) [2123305] - relayfs: fix out-of-bounds access in relay_file_read (Bill O'Donnell) [2215510] {CVE-2023-3268} - kernel/relay.c: fix read_pos error when multiple readers (Bill O'Donnell) [2215510] - seq_buf: Make trace_seq_putmem_hex() support data longer than 8 (Ricardo Robaina) [2212208] {CVE-2023-28772} - seq_buf: Fix overflow in seq_buf_putmem_hex() (Ricardo Robaina) [2212208] {CVE-2023-28772} - tools/power/x86/intel-speed-select: Support more than 8 sockets. (Frank Ramsay) [2212508] - platform/x86: ISST: Remove 8 socket limit (Frank Ramsay) [2212508] - media: saa7134: fix use after free bug in saa7134_finidev due to race condition (Wander Lairson Costa) [2215902] {CVE-2023-35823} - Bluetooth: btmtksdio: fix possible FW initialization failure (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: fix the reset takes too long (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: mask out interrupt status (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add support for Foxconn QCA 0xe0d0 (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add two more Bluetooth parts for WCN6855 (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add protocol for MediaTek bluetooth devices(MT7922) (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add support for Foxconn MT7922A (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: Fix kernel oops when sdio suspend. (David Marlin) [2142489 2144730 2145097] - Enable MTK BT Support for RHEL (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add a new PID/VID 13d3/3567 for MT7921 (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: support bluetooth reset mechanism (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: fix btmtksdio_[drv|fw]_pmctrl() (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: refactor btmtksdio_runtime_[suspend|resume]() (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: fix bus hang with wrong privilege (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: fix firmware coredump retrieve (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: Enable SCO over I2S (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: Support wake on bluetooth (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: rename btsdio_mtk_reg_read (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: enable AOSP extension for MT7921 (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: enable msft opcode (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: fix resume failure (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: handle runtime pm only when sdio_func is available (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: drop the unnecessary variable created (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: add support of processing firmware coredump and log (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: add MT7921s Bluetooth support (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: transmit packet according to status TX_EMPTY (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: use register CRPLR to read packet length (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: update register CSDIOCSR operation (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: move interrupt service to work (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: explicitly set WHISR as write-1-clear (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: add .set_bdaddr support (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksido: rely on BT_MTK module (David Marlin) [2142489 2144730 2145097] - Bluetooth: mediatek: add BT_MTK module (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Support public address configuration for MediaTek Chip. (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Support Bluetooth Reset for Mediatek Chip(MT7921) (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add support for Foxconn Mediatek Chip (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: fix blacklist_table context (David Marlin) [2142489 2144730 2145097]- HID: betop: check shape of output reports (Desnes Nunes) [2212164] {CVE-2023-1073} - media: ttusb-dec: fix memory leak in ttusb_dec_exit_dvb() (Desnes Nunes) [2153575] {CVE-2022-45887} - selinux: make labeled NFS work when mounted before policy load (Juraj Marcin) [1753646] - Revert "xfs: expose the blockgc workqueue knobs publicly" (Bill O'Donnell) [2223260] - media: dm1105: Fix use after free bug in dm1105_remove due to race condition (Dean Nelson) [2215904] {CVE-2023-35824} - media: dvb-core: Fix kernel WARNING for blocking operation in wait_event*() (Dean Nelson) [2213142] {CVE-2023-31084} - drm/ast: report connection status on Display Port. (Jocelyn Falempe) [2189645] - drm/ast: Add BMC virtual connector (Jocelyn Falempe) [2189645] - x86/cpu/amd: Add a Zenbleed fix (Waiman Long) [2226832] {CVE-2023-20593} - x86/cpu/amd: Move the errata checking functionality up (Waiman Long) [2226832] {CVE-2023-20593} - x86/amd: Cache debug register values in percpu variables (Waiman Long) [2226832] {CVE-2023-20593} - x86/cpu: Restore AMD's DE_CFG MSR after resume (Waiman Long) [2226832] {CVE-2023-20593} - x86/sev: Change snp_guest_issue_request()'s fw_err argument (John Allen) [2216284] - virt/coco/sev-guest: Double-buffer messages (John Allen) [2216284] - virt/coco/sev-guest: Add throttling awareness (John Allen) [2216284] - virt/coco/sev-guest: Convert the sw_exit_info_2 checking to a switch-case (John Allen) [2216284] - virt/coco/sev-guest: Do some code style cleanups (John Allen) [2216284] - virt/coco/sev-guest: Carve out the request issuing logic into a helper (John Allen) [2216284] - virt/coco/sev-guest: Remove the disable_vmpck label in handle_guest_request() (John Allen) [2216284] - virt/coco/sev-guest: Simplify extended guest request handling (John Allen) [2216284] - virt/coco/sev-guest: Check SEV_SNP attribute at probe time (John Allen) [2216284] - virt/sev-guest: Return -EIO if certificate buffer is not large enough (John Allen) [2216284] - x86/sev: Mark snp_abort() noreturn (John Allen) [2216284] - s390/uv: Update query for secret-UVCs (Cédric Le Goater) [2111749] - s390/uv: replace scnprintf with sysfs_emit (Cédric Le Goater) [2111749] - s390: Add attestation query information (Cédric Le Goater) [2111749] - s390/uvdevice: Add 'Lock Secret Store' UVC (Cédric Le Goater) [2111749] - s390/uvdevice: Add 'List Secrets' UVC (Cédric Le Goater) [2111749] - s390/uvdevice: Add 'Add Secret' UVC (Cédric Le Goater) [2111749] - s390/uvdevice: Add info IOCTL (Cédric Le Goater) [2111749] - s390/uv: Always export uv_info (Cédric Le Goater) [2111749] - s390/kasan: support protvirt with 4-level paging (Cédric Le Goater) [2111749] - s390/protvirt: support ultravisor without secure storage limit (Cédric Le Goater) [2111749] - s390/protvirt: parse prot_virt option in the decompressor (Cédric Le Goater) [2111749] - s390/mm: avoid trimming to MAX_ORDER (Cédric Le Goater) [2111749] - net/mlx5e: TC, CT: Offload ct clear only once (Amir Tzin) [2159233] - net/mlx5: DR, Fix wrong action data allocation in decap action (Amir Tzin) [2159233] - net/mlx5: DR, Support SW created encap actions for FW table (Amir Tzin) [2159233] - net/mlx5e: TC, Cleanup ct resources for nic flow (Amir Tzin) [2159233] - net/mlx5e: TC, Add null pointer check for hardware miss support (Amir Tzin) [2159233] - RDMA/mlx5: Fix affinity assignment (Amir Tzin) [2159233] - RDMA/mlx5: Create an indirect flow table for steering anchor (Amir Tzin) [2159233] - RDMA/mlx5: Initiate dropless RQ for RAW Ethernet functions (Amir Tzin) [2159233] - net/mlx5: DR, Add missing mutex init/destroy in pattern manager (Amir Tzin) [2117777] - net/mlx5: Read embedded cpu after init bit cleared (Amir Tzin) [2159233] - net/mlx5e: Fix error handling in mlx5e_refresh_tirs (Amir Tzin) [2159233] - net/mlx5e: Don't attach netdev profile while handling internal error (Amir Tzin) [2159233] - net/mlx5: Fix post parse infra to only parse every action once (Amir Tzin) [2159233] - net/mlx5: fw_tracer, Fix event handling (Amir Tzin) [2159233] - net/mlx5: SF, Drain health before removing device (Amir Tzin) [2159233] - net/mlx5e: Consider internal buffers size in port buffer calculations (Amir Tzin) [2159233] - net/mlx5e: Prevent encap offload when neigh update is running (Amir Tzin) [2159233] - net/mlx5e: Extract remaining tunnel encap code to dedicated file (Amir Tzin) [2159233] - net/mlx5e: TC, Remove sample and ct limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove mirror and ct limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove tuple rewrite and ct limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove multiple ct actions limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove special handling of CT action (Amir Tzin) [2159233] - net/mlx5e: TC, Remove CT action reordering (Amir Tzin) [2159233] - net/mlx5e: CT: Use per action stats (Amir Tzin) [2159233] - net/mlx5e: TC, Move main flow attribute cleanup to helper func (Amir Tzin) [2159233] - net/mlx5e: TC, Remove unused vf_tun variable (Amir Tzin) [2159233] - net/mlx5e: Set default can_offload action (Amir Tzin) [2159233] - net/mlx5: Devcom, serialize devcom registration (Amir Tzin) [2159233] - net/mlx5: Devcom, fix error flow in mlx5_devcom_register_device (Amir Tzin) [2159233] - net/mlx5e: Fix SQ wake logic in ptp napi_poll context (Amir Tzin) [2159233] - net/mlx5e: Fix deadlock in tc route query code (Amir Tzin) [2159233] - net/mlx5: Fix error message when failing to allocate device memory (Amir Tzin) [2159233] - net/mlx5e: Use correct encap attribute during invalidation (Amir Tzin) [2159233] - net/mlx5: DR, Check force-loopback RC QP capability independently from RoCE (Amir Tzin) [2159233] - net/mlx5: DR, Fix crc32 calculation to work on big-endian (BE) CPUs (Amir Tzin) [2159233] - net/mlx5: Handle pairing of E-switch via uplink un/load APIs (Amir Tzin) [2159233] - net/mlx5: Collect command failures data only for known commands (Amir Tzin) [2159233] - net/mlx5e: do as little as possible in napi poll when budget is 0 (Amir Tzin) [2159233] - net/mlx5: Use recovery timeout on sync reset flow (Amir Tzin) [2159233] - net/mlx5: DR, Add memory statistics for domain object (Amir Tzin) [2117777] - net/mlx5: DR, Add more info in domain dbg dump (Amir Tzin) [2117777] - net/mlx5: DR, Calculate sync threshold of each pool according to its type (Amir Tzin) [2117777] - net/mlx5: DR, Fix dumping of legacy modify_hdr in debug dump (Amir Tzin) [2117777] - net/mlx5: DR, Enable patterns and arguments for supporting devices (Amir Tzin) [2117777] - net/mlx5: DR, Add support for the pattern/arg parameters in debug dump (Amir Tzin) [2117777] - net/mlx5: DR, Modify header action of size 1 optimization (Amir Tzin) [2117777] - net/mlx5: DR, Support decap L3 action using pattern / arg mechanism (Amir Tzin) [2117777] - net/mlx5: DR, Apply new accelerated modify action and decapl3 (Amir Tzin) [2117777] - net/mlx5: DR, Add modify header argument pointer to actions attributes (Amir Tzin) [2117777] - net/mlx5: DR, Add modify header arg pool mechanism (Amir Tzin) [2117777] - net/mlx5: DR, Fix QP continuous allocation (Amir Tzin) [2117777] - net/mlx5: DR, Read ICM memory into dedicated buffer (Amir Tzin) [2117777] - net/mlx5: DR, Add support for writing modify header argument (Amir Tzin) [2117777] - net/mlx5: DR, Add create/destroy for modify-header-argument general object (Amir Tzin) [2117777] - net/mlx5: DR, Check for modify_header_argument device capabilities (Amir Tzin) [2117777] - net/mlx5: DR, Split chunk allocation to HW-dependent ways (Amir Tzin) [2117777] - net/mlx5: DR, Add cache for modify header pattern (Amir Tzin) [2117777] - net/mlx5: DR, Move ACTION_CACHE_LINE_SIZE macro to header (Amir Tzin) [2117777] - net/mlx5: DR, Add modify-header-pattern ICM pool (Amir Tzin) [2117777] - net/mlx5: DR, Prepare sending new WQE type (Amir Tzin) [2117777] - net/mlx5: Add new WQE for updating flow table (Amir Tzin) [2117777] - net/mlx5: Add mlx5_ifc bits for modify header argument (Amir Tzin) [2117777] - net/mlx5: DR, Set counter ID on the last STE for STEv1 TX (Amir Tzin) [2117777] - net/mlx5e: TC, Remove redundant parse_attr argument (Amir Tzin) [2165908] - net/mlx5e: Use a simpler comparison for uplink rep (Amir Tzin) [2165908] - net/mlx5: Lag, Add single RDMA device in multiport mode (Amir Tzin) [2165908] - net/mlx5: Lag, set different uplink vport metadata in multiport eswitch mode (Amir Tzin) [2165908] - net/mlx5: E-Switch, rename bond update function to be reused (Amir Tzin) [2165908] - net/mlx5e: TC, Add peer flow in mpesw mode (Amir Tzin) [2165908] - net/mlx5: Lag, Control MultiPort E-Switch single FDB mode (Amir Tzin) [2165908] - net/mlx5e: Add devlink fdb_large_groups parameter (Add missing Documentation) (Amir Tzin) [2165908] - SUNRPC: Fix READ_PLUS crasher (Benjamin Coddington) [2218539] - SUNRPC: Remove pointer type casts from xdr_get_next_encode_buffer() (Benjamin Coddington) [2218539] - SUNRPC: Clean up xdr_get_next_encode_buffer() (Benjamin Coddington) [2218539] - NFSv4.1: freeze the session table upon receiving NFS4ERR_BADSESSION (Benjamin Coddington) [2218539] - NFSv4.2: fix wrong shrinker_id (Benjamin Coddington) [2218539] - svcrdma: Prevent page release when nothing was received (Benjamin Coddington) [2218539] - SUNRPC: Fix UAF in svc_tcp_listen_data_ready() (Benjamin Coddington) [2218539] - nfsd: fix double fget() bug in __write_ports_addfd() (Benjamin Coddington) [2218539] - SUNRPC: Fix trace_svc_register() call site (Benjamin Coddington) [2218539] - SUNRPC: remove the maximum number of retries in call_bind_status (Benjamin Coddington) [2218539] - NFSv4.1: Always send a RECLAIM_COMPLETE after establishing lease (Benjamin Coddington) [2218539] - NFSD: callback request does not use correct credential for AUTH_SYS (Benjamin Coddington) [2218539] - sunrpc: only free unix grouplist after RCU settles (Benjamin Coddington) [2218539] - nfsd: call op_release, even when op_func returns an error (Benjamin Coddington) [2218539] - NFSD: Avoid calling OPDESC() with ops->opnum == OP_ILLEGAL (Benjamin Coddington) [2218539] - SUNRPC: fix shutdown of NFS TCP client socket (Benjamin Coddington) [2218539] - NFSv4: Fix hangs when recovering open state after a server reboot (Benjamin Coddington) [2218539] - NFSD: Protect against filesystem freezing (Benjamin Coddington) [2218539] - nfsd: fix race to check ls_layouts (Benjamin Coddington) [2218539] - nfs4trace: fix state manager flag printing (Benjamin Coddington) [2218539] - SUNRPC: ensure the matching upcall is in-flight upon downcall (Benjamin Coddington) [2218539] - nfsd: under NFSv4.1, fix double svc_xprt_put on rpc_create failure (Benjamin Coddington) [2218539] - SUNRPC: Don't leak netobj memory when gss_read_proxy_verf() fails (Benjamin Coddington) [2218539] - NFSv4.x: Fail client initialisation if state manager thread can't run (Benjamin Coddington) [2218539] - SUNRPC: Fix missing release socket in rpc_sockname() (Benjamin Coddington) [2218539] - xprtrdma: Fix regbuf data not freed in rpcrdma_req_create() (Benjamin Coddington) [2218539] - NFSD: Finish converting the NFSv3 GETACL result encoder (Benjamin Coddington) [2218539] - NFSD: Finish converting the NFSv2 GETACL result encoder (Benjamin Coddington) [2218539] - SUNRPC: Return true/false (not 1/0) from bool functions (Benjamin Coddington) [2218539] - NFS: Fix an Oops in nfs_d_automount() (Benjamin Coddington) [2218539] - NFSv4: Fix a deadlock between nfs4_open_recover_helper() and delegreturn (Benjamin Coddington) [2218539] - NFSv4: Fix a credential leak in _nfs4_discover_trunking() (Benjamin Coddington) [2218539] - NFSv4.2: Fix initialisation of struct nfs4_label (Benjamin Coddington) [2218539] - NFSv4.2: Fix a memory stomp in decode_attr_security_label (Benjamin Coddington) [2218539] - NFSv4.2: Always decode the security label (Benjamin Coddington) [2218539] - NFSv4.2: Clear FATTR4_WORD2_SECURITY_LABEL when done decoding (Benjamin Coddington) [2218539] - nfs4: Fix kmemleak when allocate slot failed (Benjamin Coddington) [2218539] - NFSv4.2: Fixup CLONE dest file size for zero-length count (Benjamin Coddington) [2218539] - SUNRPC: Fix null-ptr-deref when xps sysfs alloc failed (Benjamin Coddington) [2218539] - NFSv4.1: We must always send RECLAIM_COMPLETE after a reboot (Benjamin Coddington) [2218539] - NFSv4.1: Handle RECLAIM_COMPLETE trunking errors (Benjamin Coddington) [2218539] - NFSv4: Fix a potential state reclaim deadlock (Benjamin Coddington) [2218539] - NFSv4/pNFS: Always return layout stats on layout return for flexfiles (Benjamin Coddington) [2218539] - NFSD: Fix handling of oversized NFSv4 COMPOUND requests (Benjamin Coddington) [2218539] - nfsd: Fix a memory leak in an error handling path (Benjamin Coddington) [2218539] - Revert "SUNRPC: Remove unreachable error condition" (Benjamin Coddington) [2218539] - NFSv4: Turn off open-by-filehandle and NFS re-export for NFSv4.0 (Benjamin Coddington) [2218539] - SUNRPC: RPC level errors should set task->tk_rpc_status (Benjamin Coddington) [2218539] - NFS: Fix another fsync() issue after a server reboot (Benjamin Coddington) [2218539] - net/sunrpc: fix potential memory leaks in rpc_sysfs_xprt_state_change() (Benjamin Coddington) [2218539] - SUNRPC: Fix xdr_encode_bool() (Benjamin Coddington) [2218539] - SUNRPC: Reinitialise the backchannel request buffers before reuse (Benjamin Coddington) [2218539] - NFSv4.1: RECLAIM_COMPLETE must handle EACCES (Benjamin Coddington) [2218539] - sunrpc: fix expiry of auth creds (Benjamin Coddington) [2218539] - pNFS/flexfiles: Report RDMA connection errors to the server (Benjamin Coddington) [2218539] - Revert "pNFS: nfs3_set_ds_client should set NFS_CS_NOPING" (Benjamin Coddington) [2218539] - SUNRPC: Fix the calculation of xdr->end in xdr_get_next_encode_buffer() (Benjamin Coddington) [2218539] - pNFS: Avoid a live lock condition in pnfs_update_layout() (Benjamin Coddington) [2218539] - pNFS: Don't keep retrying if the server replied NFS4ERR_LAYOUTUNAVAILABLE (Benjamin Coddington) [2218539] - SUNRPC: Trap RDMA segment overflows (Benjamin Coddington) [2218539] - nfsd: Fix null-ptr-deref in nfsd_fill_super() (Benjamin Coddington) [2218539] - NFS: Further fixes to the writeback error handling (Benjamin Coddington) [2218539] - NFS: clean up a needless assignment in nfs_file_write() (Benjamin Coddington) [2218539] - NFS: remove redundant code in nfs_file_write() (Benjamin Coddington) [2218539] - NFS: Add support for eager writes (Benjamin Coddington) [2218539] - NFS: 'flags' field should be unsigned in struct nfs_server (Benjamin Coddington) [2218539] - NFSv4/pNFS: Do not fail I/O when we fail to allocate the pNFS layout (Benjamin Coddington) [2218539] - NFS: Memory allocation failures are not server fatal errors (Benjamin Coddington) [2218539] - SUNRPC: Ensure that the gssproxy client can start in a connected state (Benjamin Coddington) [2218539] - Revert "SUNRPC: Ensure gss-proxy connects on setup" (Benjamin Coddington) [2218539] - SUNRPC: Ensure gss-proxy connects on setup (Benjamin Coddington) [2218539] - NFSv4: Don't invalidate inode attributes on delegation return (Benjamin Coddington) [2218539] - SUNRPC: svc_tcp_sendmsg() should handle errors from xdr_alloc_bvec() (Benjamin Coddington) [2218539] - SUNRPC: Handle low memory situations in call_status() (Benjamin Coddington) [2218539] - SUNRPC: Handle ENOMEM in call_transmit_status() (Benjamin Coddington) [2218539] - SUNRPC: Fix the svc_deferred_event trace class (Benjamin Coddington) [2218539] - NFSv4: fix open failure with O_ACCMODE flag (Benjamin Coddington) [2218539] - NFSv4/pNFS: Fix another issue with a list iterator pointing to the head (Benjamin Coddington) [2218539] - NFSv4.1: Fix uninitialised variable in devicenotify (Benjamin Coddington) [2218539] - NFSv4.1: don't retry BIND_CONN_TO_SESSION on session error (Benjamin Coddington) [2218539] - NFS: remove unneeded check in decode_devicenotify_args() (Benjamin Coddington) [2218539] - NFS: NFSv2/v3 clients should never be setting NFS_CAP_XATTR (Benjamin Coddington) [2218539] - NFS: Do not report writeback errors in nfs_getattr() (Benjamin Coddington) [2218539] - NFS: Remove an incorrect revalidation in nfs4_update_changeattr_locked() (Benjamin Coddington) [2218539] - nfsd: nfsd4_setclientid_confirm mistakenly expires confirmed client. (Benjamin Coddington) [2218539] - SUNRPC: Fix sockaddr handling in svcsock_accept_class trace points (Benjamin Coddington) [2218539] - SUNRPC: Fix sockaddr handling in the svc_xprt_create_error trace point (Benjamin Coddington) [2218539] - NFSD: Fix zero-length NFSv3 WRITEs (Benjamin Coddington) [2218539] - NFS: Ensure the server has an up to date ctime before renaming (Benjamin Coddington) [2218539] - NFS: Ensure the server has an up to date ctime before hardlinking (Benjamin Coddington) [2218539]- Revert "NFSv4: Retry LOCK on OLD_STATEID during delegation return" (Benjamin Coddington) [2217658] - powerpc/pseries/vas: Hold mmap_mutex after mmap lock during window close (Mamatha Inamdar) [2224883] - KVM: x86/mmu: Fix race condition in direct_page_fault (Jon Maloy) [2179929] {CVE-2022-45869} - x86/speculation: Allow enabling STIBP with legacy IBRS (Ricardo Robaina) [2187268] {CVE-2023-1998} - ACPI: sleep: Avoid breaking S3 wakeup due to might_sleep() (Mark Langsdorf) [2215625] - locking/semaphore: Add might_sleep() to down_*() family (Mark Langsdorf) [2215625] - perf stat: Support hybrid --topdown option (Michael Petlan) [2088833] - i40e: Wait for pending VF reset in VF set callbacks (Ivan Vecera) [2203921] - i40e: Add helper for VF inited state check with timeout (Ivan Vecera) [2203921] - tracing: Have filter accept "common_cpu" to be consistent (Jerome Marchand) [2210711] - tracing/histogram: Fix sorting on old "cpu" value (Jerome Marchand) [2210711] - tracing: Dump stacktrace trigger to the corresponding instance (Jerome Marchand) [2210711] - tracing/histogram: Rename "cpu" to "common_cpu" (Jerome Marchand) [2210711] - docs: histogram.txt: convert it to ReST file format (Jerome Marchand) [2210711] - bonding: add software tx timestamping support (Hangbin Liu) [2181339] - bonding: fix missed rcu protection (Hangbin Liu) [2181339] - bonding: use rcu_dereference_rtnl when get bonding active slave (Hangbin Liu) [2181339] - Bonding: return HWTSTAMP_FLAG_BONDED_PHC_INDEX to notify user space (Hangbin Liu) [2181339] - Bonding: force user to add HWTSTAMP_FLAG_BONDED_PHC_INDEX when get/set HWTSTAMP (Hangbin Liu) [2181339] - bond: pass get_ts_info and SIOC[SG]HWTSTAMP ioctl to active device (Hangbin Liu) [2181339] - mm/page_alloc: fix incorrect PGFREE and PGALLOC for high-order page (Chris von Recklinghausen) [2100592] - mm/page_alloc: check high-order pages for corruption during PCP operations (Chris von Recklinghausen) [2100592] - mm/page_alloc: do not prefetch buddies during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: free pages in a single pass during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: drain the requested list first during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: simplify how many pages are selected per pcp list during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: track range of active PCP lists during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: fetch the correct pcp buddy during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: allow high-order pages to be stored on the per-cpu lists (Chris von Recklinghausen) [2100592] - mm/page_alloc: move free_the_page (Chris von Recklinghausen) [2100592] - mm,memory_hotplug: factor out adjusting present pages into adjust_present_page_count() (Chris von Recklinghausen) [2100592] - mm, meminit: recalculate pcpu batch and high limits after init completes (Chris von Recklinghausen) [2100592] - compiler_attributes.h: Add kABI workaround (Waiman Long) [2215801] - linux/compiler-clang.h: define HAVE_BUILTIN_BSWAP* (Waiman Long) [2215801] - compiler.h: fix barrier_data() on clang (Waiman Long) [2215801] - compiler_types.h: Add __no_sanitize_{address,undefined} to noinstr (Waiman Long) [2215801] - x86, kcsan: Add __no_kcsan to noinstr (Waiman Long) [2215801] - kcsan: Add __no_kcsan function attribute (Waiman Long) [2215801] - kcsan: Reorganize compiler.h (Waiman Long) [2215801] - include/linux/compiler*.h: fix OPTIMIZER_HIDE_VAR (Waiman Long) [2215801] - include/linux/compiler_types.h: don't pollute userspace with macro definitions (Waiman Long) [2215801] - include/linux/compiler*.h: define asm_volatile_goto (Waiman Long) [2215801] - Compiler Attributes: use feature checks instead of version checks (Waiman Long) [2215801] - Compiler Attributes: remove unneeded sparse (__CHECKER__) tests (Waiman Long) [2215801] - Compiler Attributes: homogenize __must_be_array (Waiman Long) [2215801] - Compiler Attributes: remove unneeded tests (Waiman Long) [2215801] - Compiler Attributes: always use the extra-underscores syntax (Waiman Long) [2215801] - Compiler Attributes: remove unused attributes (Waiman Long) [2215801] - Compiler Attributes: naked can be shared (Waiman Long) [2215801] - Compiler Attributes: naked was fixed in gcc 4.6 (Waiman Long) [2215801] - include/linux/compiler*.h: make compiler-*.h mutually exclusive (Waiman Long) [2215801] - Raise the minimum required gcc version to 4.6 (Waiman Long) [2215801] - deprecate the '__deprecated' attribute warnings entirely and for good (Waiman Long) [2215801]- libceph: harden msgr2.1 frame segment length checks (Ilya Dryomov) [2222256] - netfilter: nf_conntrack_netlink: need to hold rcu readlock when doing l4proto lookup (Florian Westphal) [2188230] - net/mlx5: Expose steering dropped packets counter (Amir Tzin) [2223198] - net/mlx5: Expose vnic diagnostic counters for eswitch managed vports (Amir Tzin) [2223198] - igbvf: add PCI reset handler functions (Corinna Vinschen) [2153365] - igbvf: Regard vf reset nack as success (Corinna Vinschen) [2153365] - intel/igbvf: free irq on the error path in igbvf_request_msix() (Corinna Vinschen) [2153365] - Bluetooth: L2CAP: Fix use-after-free in l2cap_disconnect_{req,rsp} (Ricardo Robaina) [2139617] {CVE-2022-3640} - Bluetooth: L2CAP: Fix build errors in some archs (Ricardo Robaina) [2139617] {CVE-2022-3640} - Bluetooth: L2CAP: Fix l2cap_global_chan_by_psm regression (Ricardo Robaina) [2139617] {CVE-2022-3640} - Bluetooth: L2CAP: fix use-after-free in l2cap_conn_del() (Ricardo Robaina) [2139617] {CVE-2022-3640} - Bluetooth: L2CAP: Fix use-after-free caused by l2cap_chan_put (Ricardo Robaina) [2139617] {CVE-2022-3640} - iavf: fix reset task race with iavf_remove() (Petr Oros) [2223604] - iavf: fix a deadlock caused by rtnl and driver's lock circular dependencies (Petr Oros) [2223604] - Revert "iavf: Do not restart Tx queues after reset task failure" (Petr Oros) [2223604] - Revert "iavf: Detach device during reset task" (Petr Oros) [2223604] - iavf: Wait for reset in callbacks which trigger it (Petr Oros) [2223604] - iavf: use internal state to free traffic IRQs (Petr Oros) [2223604] - iavf: Fix out-of-bounds when setting channels on remove (Petr Oros) [2223604] - iavf: Fix use-after-free in free_netdev (Petr Oros) [2223604] - iavf: make functions static where possible (Petr Oros) [2223604] - iavf: fix err handling for MAC replace (Petr Oros) [2223604] - iavf: remove some unused functions and pointless wrappers (Petr Oros) [2223604] - iavf: remove mask from iavf_irq_enable_queues() (Petr Oros) [2223604] - iavf: send VLAN offloading caps once after VFR (Petr Oros) [2223604] - cpufreq: Fix parameter in parse_perf_domain() (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: remove MODULE_LICENSE in non-modules (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Adjust balance_performance EPP for Sapphire Rapids (Mark Langsdorf) [2181273] - cpufreq: Make kobj_type structure constant (Mark Langsdorf) [2181273] - driver core: make kobj_type constant. (Mark Langsdorf) [2181273] - cpufreq: Make cpufreq_unregister_driver() return void (Mark Langsdorf) [2181273] - drivers/cpufreq: Remove "select SRCU" (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Drop ACPI _PSS states table patching (Mark Langsdorf) [2181273] - cpufreq: stats: Convert to use sysfs_emit_at() API (Mark Langsdorf) [2181273] - cpufreq: Init completion before kobject_init_and_add() (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Allow EPP 0x80 setting by the firmware (Mark Langsdorf) [2181273] - cpufreq: ACPI: Use str_enabled_disabled() helper (Mark Langsdorf) [2181273] - cpufreq: Generalize of_perf_domain_get_sharing_cpumask phandle format (Mark Langsdorf) [2181273] - cpufreq: Add of_perf_domain_get_sharing_cpumask (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Read all MSRs on the target CPU (Mark Langsdorf) [2181273] - ACPI: CPPC: Add ACPI disabled check to acpi_cpc_valid() (Mark Langsdorf) [2181273]- gfs2: Don't deref jdesc in evict (Bob Peterson) [2214356] {CVE-2023-3212} - md/raid5: Don't do accounting for non-align read io (Nigel Croxon) [2183033] - powerpc: Don't select HAVE_IRQ_EXIT_ON_IRQ_STACK (Mamatha Inamdar) [2218348] - NFSv4.1: freeze the session table upon receiving NFS4ERR_BADSESSION (Benjamin Coddington) [2217963] - proc: Use PIDTYPE_TGID in next_tgid (Brian Foster) [2047252] - netfilter: nf_tables: unbind non-anonymous set if rule construction fails (Phil Sutter) [2214963] {CVE-2023-3390} - netfilter: nf_tables: add NFT_TRANS_PREPARE_ERROR to deal with bound set/chain (Phil Sutter) [2214963] {CVE-2023-3390} - netfilter: nf_tables: incorrect error path handling with NFT_MSG_NEWRULE (Phil Sutter) [2214963] {CVE-2023-3390} - fanotify,audit: Allow audit to use the full permission event response (Richard Guy Briggs) [2055328] - fanotify: define struct members to hold response decision context (Richard Guy Briggs) [2055328] - fanotify: Ensure consistent variable type for response (Richard Guy Briggs) [2055328] - RDMA/mlx4: Prevent shift wrapping in set_user_sq_size() (Amir Tzin) [2166019] - RDMA/mlx: Calling qp event handler in workqueue context (mlx4 hunks only) (Amir Tzin) [2166019] - net/mlx4: small optimization in mlx4_en_xmit() (Amir Tzin) [2166019] - net/mlx4: rename two constants (Amir Tzin) [2166019] - RDMA/mlx4: Remove NULL check before dev_{put, hold} (Amir Tzin) [2166019] - ptp: mlx4: convert to .adjfine and adjust_by_scaled_ppm (Amir Tzin) [2166019] - mlx4: Do type_clear() for devlink ports when type_set() was called previously (Amir Tzin) [2166019] - cgroup: Reorganize css_set_lock and kernfs path processing (Waiman Long) [2193485] - cgroup: Fix build failure when CONFIG_SHRINKER_DEBUG (Waiman Long) [2193485] - cgroup: fix missing cpus_read_{lock,unlock}() in cgroup_transfer_tasks() (Waiman Long) [2193485] - cgroup: Make cgroup_get_from_id() prettier (Waiman Long) [2193485] - cgroup: remove obsolete comment on cgroup_on_dfl() (Waiman Long) [2193485] - cgroup/cpuset: Wake up cpuset_attach_wq tasks in cpuset_cancel_attach() (Waiman Long) [2193485] - kselftests: cgroup: update kmem test precision tolerance (Waiman Long) [2193485] - cgroup/cpuset: Improve cpuset_css_alloc() description (Waiman Long) [2193485] - selftests: cgroup: fix unsigned comparison with less than zero (Waiman Long) [2193485] - device_cgroup: Roll back to original exceptions after copy failure (Waiman Long) [2193485] - cgroup/cpuset: use hotplug_memory_notifier() directly (Waiman Long) [2193485] - mm: memcontrol: don't allocate cgroup swap arrays when memcg is disabled (Waiman Long) [2193485] - cgroup: cgroup_get_from_id() must check the looked-up kn is a directory (Waiman Long) [2193485] - sched/psi: Don't create cgroup PSI files when psi_disabled (Waiman Long) [2193485] - cgroup: Homogenize cgroup_get_from_id() return value (Waiman Long) [2193485] - cgroup: cgroup: Honor caller's cgroup NS when resolving cgroup id (Waiman Long) [2193485] - cgroup: Honor caller's cgroup NS when resolving path (Waiman Long) [2193485] - mm: memcontrol: introduce mem_cgroup_ino() and mem_cgroup_get_from_ino() (Waiman Long) [2193485] - cgroup: Use separate src/dst nodes when preloading css_sets for migration (Waiman Long) [2193485] - cgroup.c: add helper __cset_cgroup_from_root to cleanup duplicated codes (Waiman Long) [2193485] - cgroup/rstat: check updated_next only for root (Waiman Long) [2193485] - cgroup: rstat: explicitly put loop variant in while (Waiman Long) [2193485] - cgroup: return early if it is already on preloaded list (Waiman Long) [2193485] - cgroup: Trace event cgroup id fields should be u64 (Waiman Long) [2193485] - cgroup: fix a typo in comment (Waiman Long) [2193485] - hugetlb_cgroup: remove unused hugetlb_cgroup_from_counter macro (Waiman Long) [2193485] - cgroup: Make rebind_subsystems() disable v2 controllers all at once (Waiman Long) [2193485] - cgroup: Avoid compiler warnings with no subsystems (Waiman Long) [2193485] - cgroup: Fix kernel-doc (Waiman Long) [2193485] - kernfs: use 64bit inos if ino_t is 64bit (Waiman Long) [2193485] - kernfs: implement custom exportfs ops and fid type (Waiman Long) [2193485] - kernfs: combine ino/id lookup functions into kernfs_find_and_get_node_by_id() (Waiman Long) [2193485] - kernfs: kernfs_find_and_get_node_by_ino() should only look up activated nodes (Waiman Long) [2193485] - kernfs: use dumber locking for kernfs_find_and_get_node_by_ino() (Waiman Long) [2193485] - kernfs: fix ino wrap-around detection (Waiman Long) [2193485] - ice: prevent NULL pointer deref during reload (Petr Oros) [2153356] - ice: Unregister netdev and devlink_port only once (Petr Oros) [2153356] - ice: Fix ice module unload (Petr Oros) [2153356] - ice: Fix tx queue rate limit when TCs are configured (Petr Oros) [2153356] - ice: Fix max_rate check while configuring TX rate limits (Petr Oros) [2153356] - ice: Fix XDP memory leak when NIC is brought up and down (Petr Oros) [2153356] - ice: remove comment about not supporting driver reinit (Petr Oros) [2153356] - ice: block LAN in case of VF to VF offload (Petr Oros) [2153356] - ice: Fix stats after PF reset (Petr Oros) [2153356] - ice: Reset FDIR counter in FDIR init stage (Petr Oros) [2153356] - ice: fix wrong fallback logic for FDIR (Petr Oros) [2153356] - ice: add profile conflict check for AVF FDIR (Petr Oros) [2153356] - ice: Fix ice_cfg_rdma_fltr() to only update relevant fields (Petr Oros) [2153356] - ice: remove filters only if VSI is deleted (Petr Oros) [2153356] - ice: check if VF exists before mode check (Petr Oros) [2153356] - ice: xsk: disable txq irq before flushing hw (Petr Oros) [2153356] - ice: avoid bonding causing auxiliary plug/unplug under RTNL lock (Petr Oros) [2153356] - ethernet: ice: avoid gcc-9 integer overflow warning (Petr Oros) [2153356] - ice: don't ignore return codes in VSI related code (Petr Oros) [2153356] - ice: Fix DSCP PFC TLV creation (Petr Oros) [2153356] - ice: copy last block omitted in ice_get_module_eeprom() (Petr Oros) [2153356] - ice: properly alloc ICE_VSI_LB (Petr Oros) [2153356] - ice: xsk: Fix cleaning of XDP_TX frames (Petr Oros) [2153356] - ice: Mention CEE DCBX in code comment (Petr Oros) [2153356] - ice: Change ice_vsi_realloc_stat_arrays() to void (Petr Oros) [2153356] - ice: Add GPIO pin support for E823 products (Petr Oros) [2153356] - ice: switch: fix potential memleak in ice_add_adv_recipe() (Petr Oros) [2153356] - ice: Fix off by one in ice_tc_forward_to_queue() (Petr Oros) [2153356] - ice: Fix disabling Rx VLAN filtering with port VLAN enabled (Petr Oros) [2153356] - ice: fix out-of-bounds KASAN warning in virtchnl (Petr Oros) [2153356] - ice: Do not use WQ_MEM_RECLAIM flag for workqueue (Petr Oros) [2153356] - ice: remove unnecessary virtchnl_ether_addr struct use (Petr Oros) [2153356] - ice: introduce .irq_close VF operation (Petr Oros) [2153356] - ice: introduce clear_reset_state operation (Petr Oros) [2153356] - ice: convert vf_ops .vsi_rebuild to .create_vsi (Petr Oros) [2153356] - ice: introduce ice_vf_init_host_cfg function (Petr Oros) [2153356] - ice: add a function to initialize vf entry (Petr Oros) [2153356] - ice: Pull common tasks into ice_vf_post_vsi_rebuild (Petr Oros) [2153356] - ice: move ice_vf_vsi_release into ice_vf_lib.c (Petr Oros) [2153356] - ice: move vsi_type assignment from ice_vsi_alloc to ice_vsi_cfg (Petr Oros) [2153356] - ice: refactor VSI setup to use parameter structure (Petr Oros) [2153356] - ice: drop unnecessary VF parameter from several VSI functions (Petr Oros) [2153356] - ice: fix function comment referring to ice_vsi_alloc (Petr Oros) [2153356] - ice: Add more usage of existing function ice_get_vf_vsi(vf) (Petr Oros) [2153356] - ice: implement devlink reinit action (Petr Oros) [2153356] - ice: update VSI instead of init in some case (Petr Oros) [2153356] - ice: move VSI delete outside deconfig (Petr Oros) [2153356] - ice: sync netdev filters after clearing VSI (Petr Oros) [2153356] - ice: split probe into smaller functions (Petr Oros) [2153356] - ice: stop hard coding the ICE_VSI_CTRL location (Petr Oros) [2153356] - ice: split ice_vsi_setup into smaller functions (Petr Oros) [2153356] - ice: cleanup in VSI config/deconfig code (Petr Oros) [2153356] - ice: alloc id for RDMA using xa_array (Petr Oros) [2153356] - ice: move RDMA init to ice_idc.c (Petr Oros) [2153356] - ice: Prevent set_channel from changing queues while RDMA active (Petr Oros) [2153356] - ice: Remove redundant pci_enable_pcie_error_reporting() (Petr Oros) [2153356] - ice: move devlink port creation/deletion (Petr Oros) [2153356] - ice: Remove excess space (Petr Oros) [2153356] - ice: Introduce local var for readability (Petr Oros) [2153356] - ice: Match parameter name for ice_cfg_phy_fc() (Petr Oros) [2153356] - ice: Explicitly return 0 (Petr Oros) [2153356] - ice: Reduce scope of variables (Petr Oros) [2153356] - ice: Move support DDP code out of ice_flex_pipe.c (Petr Oros) [2153356] - ice: Remove cppcheck suppressions (Petr Oros) [2153356] - ice: combine cases in ice_ksettings_find_adv_link_speed() (Petr Oros) [2153356] - ice: Add support for 100G KR2/CR2/SR2 link reporting (Petr Oros) [2153356] - ice: add missing checks for PF vsi type (Petr Oros) [2153356] - ice: remove redundant non-null check in ice_setup_pf_sw() (Petr Oros) [2153356] - ice: restrict PTP HW clock freq adjustments to 100, 000, 000 PPB (Petr Oros) [2153356] - ice: Support drop action (Petr Oros) [2153356] - ice: Handle LLDP MIB Pending change (Petr Oros) [2153356] - ice: Add 'Execute Pending LLDP MIB' Admin Queue command (Petr Oros) [2153356] - ice: xsk: do not use xdp_return_frame() on tx_buf->raw_buf (Petr Oros) [2153356] - ice: Use ICE_RLAN_BASE_S instead of magic number (Petr Oros) [2153356] - ice: Accumulate ring statistics over reset (Petr Oros) [2153356] - ice: Accumulate HW and Netdev statistics over reset (Petr Oros) [2153356] - ice: Remove and replace ice speed defines with ethtool.h versions (Petr Oros) [2153356] - ice: Check for PTP HW lock more frequently (Petr Oros) [2153356] - ice: Fix spurious interrupt during removal of trusted VF (Petr Oros) [2153356] - ice: Enable RX queue selection using skbedit action (Petr Oros) [2153356] - ice: Add support for VLAN priority filters in switchdev (Petr Oros) [2153356] - ice: support features on new E810T variants (Petr Oros) [2153356] - ice: xsk: drop power of 2 ring size restriction for AF_XDP (Petr Oros) [2153356] - ice: xsk: change batched Tx descriptor cleaning (Petr Oros) [2153356] - ice: reorder PF/representor devlink port register/unregister flows (Petr Oros) [2153356] - ice: Add L2TPv3 hardware offload support (Petr Oros) [2153356] - ice: Simplify memory allocation in ice_sched_init_port() (Petr Oros) [2153356] - ice: switch: Simplify memory allocation (Petr Oros) [2153356] - ice: add helper function to check FW API version (Petr Oros) [2153356] - ice: Print human-friendly PHY types (Petr Oros) [2153356] - ice: Add support for ip TTL & ToS offload (Petr Oros) [2153356] - ice: xsk: use Rx ring's XDP ring when picking NAPI context (Petr Oros) [2153356] - ice: xsk: prohibit usage of non-balanced queue id (Petr Oros) [2153356] - ice: remove non-inclusive language (Petr Oros) [2153356] - ice: Remove ucast_shared (Petr Oros) [2153356] - ice: Allow 100M speeds for some devices (Petr Oros) [2153356] - ice: Implement FCS/CRC and VLAN stripping co-existence policy (Petr Oros) [2153356] - ice: Implement control of FCS/CRC stripping (Petr Oros) [2153356] - ice: initialize cached_phctime when creating Rx rings (Petr Oros) [2153356] - ice: set tx_tstamps when creating new Tx rings via ethtool (Petr Oros) [2153356] - ice: link representors to PCI device (Petr Oros) [2153356] - ice, xsk: Avoid refilling single Rx descriptors (Petr Oros) [2153356] - ice, xsk: Diversify return values from xsk_wakeup call paths (Petr Oros) [2153356] - ice, xsk: Terminate Rx side of NAPI when XSK Rx queue gets full (Petr Oros) [2153356] - ice, xsk: Decorate ICE_XDP_REDIR with likely() (Petr Oros) [2153356] - ice: xsk: check if Rx ring was filled up to the end (Petr Oros) [2153356] - ice: xsk: Eliminate unnecessary loop iteration (Petr Oros) [2153356] - ice: xsk: fix GCC version checking against pragma unroll presence (Petr Oros) [2153356] - ice: xsk: Borrow xdp_tx_active logic from i40e (Petr Oros) [2153356] - ice: xsk: Improve AF_XDP ZC Tx and use batching API (Petr Oros) [2153356] - ice: xsk: Avoid potential dead AF_XDP Tx processing (Petr Oros) [2153356] - ice: Make Tx threshold dependent on ring length (Petr Oros) [2153356] - ice: xsk: Handle SW XDP ring wrap and bump tail more often (Petr Oros) [2153356] - ice: xsk: Force rings to be sized to power of 2 (Petr Oros) [2153356] - ice: xsk: do not clear status_error0 for ntu + nb_buffs descriptor (Petr Oros) [2153356] - ice: remove dead store on XSK hotpath (Petr Oros) [2153356] - ice: xsk: clear status_error0 for each allocated desc (Petr Oros) [2153356] - intel: Simplify bool conversion (Petr Oros) [2153356] - ice: Use the xsk batched rx allocation interface (Petr Oros) [2153356]- blk-cgroup: Reinit blkg_iostat_set after clearing in blkcg_reset_stats() (Waiman Long) [2212032] - ipvlan:Fix out-of-bounds caused by unclear skb->cb (Davide Caratti) [2218676] {CVE-2023-3090} - net: openvswitch: fix upcall counter access before allocation (Eelco Chaudron) [2214262] - netfilter: Drop fragmented ndisc packets assembled in netfilter (Phil Sutter) [2217795] - netfilter: conntrack: gre: don't set assured flag for clash entries (Florian Westphal) [2219357] - netfilter: conntrack: allow insertion clash of gre protocol (Florian Westphal) [2219357] - sfc: use budget for TX completions (Íñigo Huguet) [2179558] - sfc: fix XDP queues mode with legacy IRQ (Íñigo Huguet) [2214589] - memstick: r592: Fix UAF bug in r592_remove due to race condition (Ricardo Robaina) [2213205] {CVE-2023-3141} - audit: avoid missing-prototype warnings (Richard Guy Briggs) [2175322] - audit: update the mailing list in MAINTAINERS (Richard Guy Briggs) [2175322] - audit: fix undefined behavior in bit shift for AUDIT_BIT (Richard Guy Briggs) [2175322] - fork: Use IS_ENABLED() in account_kernel_stack() (Valentin Schneider) [2131754] - fork: Only cache the VMAP stack in finish_task_switch() (Valentin Schneider) [2131754] - fork: Move task stack accounting to do_exit() (Valentin Schneider) [2131754] - fork: Move memcg_charge_kernel_stack() into CONFIG_VMAP_STACK (Valentin Schneider) [2131754] - fork: Don't assign the stack pointer in dup_task_struct() (Valentin Schneider) [2131754] - fork, IA64: Provide alloc_thread_stack_node() for IA64 (Valentin Schneider) [2131754] - fork: Duplicate task_struct before stack allocation (Valentin Schneider) [2131754] - fork: Redo ifdefs around task stack handling (Valentin Schneider) [2131754] - fork: fix some -Wmissing-prototypes warnings (Valentin Schneider) [2131754] - igb: fix nvm.ops.read() error handling (Corinna Vinschen) [2153360] - igb: Fix extts capture value format for 82580/i354/i350 (Corinna Vinschen) [2153360] - igb: Define igb_pm_ops conditionally on CONFIG_PM (Corinna Vinschen) [2153360] - igb: fix bit_shift to be in [1..8] range (Corinna Vinschen) [2153360] - igb: refactor igb_ptp_adjfine_82580 to use diff_by_scaled_ppm (Corinna Vinschen) [2153360] - igb: revert rtnl_lock() that causes deadlock (Corinna Vinschen) [2153360] - igb: Remove unnecessary aer.h include (Corinna Vinschen) [2153360] - igb: Fix PPS input and output using 3rd and 4th SDP (Corinna Vinschen) [2153360] - igb: Remove redundant pci_enable_pcie_error_reporting() (Corinna Vinschen) [2153360] - igb: Add lock to avoid data race (Corinna Vinschen) [2153360] - x86/cpu: Include the header of init_ia32_feat_ctl()'s prototype (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/pm: Fix false positive kmemleak report in msr_build_context() (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/speculation: Restore speculation related MSRs during S3 resume (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: remove leftover comment for filechk utility (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/cpu: Reinitialize IA32_FEAT_CTL MSR on BSP during wakeup (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/rdrand: Sanity-check RDRAND output (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/CPU/AMD: Clear RDRAND CPUID bit on AMD family 15h/16h (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: change filechk to surround the given command with { } (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - firmware: refactor firmware/Makefile (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: remove redundant 'set -e' from filechk_offsets (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: do not redirect the first prerequisite for filechk (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: move bin2c back to scripts/ from scripts/basic/ (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - perf/x86/ibs: Add new IBS register bits into header (Michael Petlan) [2088767] - perf tool x86: Fix perf_env memory leak (Michael Petlan) [2088767] - perf tool x86: Consolidate is_amd check into single function (Michael Petlan) [2088767] - perf env: Add perf_env__cpuid, perf_env__{nr_}pmu_mappings (Michael Petlan) [2088767] - perf/x86/amd/uncore: Fix memory leak for events array (Michael Petlan) [2088767] - perf script: Add missing fields in usage hint (Michael Petlan) [2086837] - perf mem: Print "LFB/MAB" for PERF_MEM_LVLNUM_LFB (Michael Petlan) [2088767] - perf mem/c2c: Avoid printing empty lines for unsupported events (Michael Petlan) [2088767] - perf mem/c2c: Add load store event mappings for AMD (Michael Petlan) [2088767] - perf mem/c2c: Set PERF_SAMPLE_WEIGHT for LOAD_STORE events (Michael Petlan) [2088767] - perf mem: Add support for printing PERF_MEM_LVLNUM_{CXL|IO} (Michael Petlan) [2088767] - perf/mem: Rename PERF_MEM_LVLNUM_EXTN_MEM to PERF_MEM_LVLNUM_CXL (Michael Petlan) [2088767] - perf amd ibs: Sync arch/x86/include/asm/amd-ibs.h header with the kernel (Michael Petlan) [2088767] - tools headers UAPI: Sync include/uapi/linux/perf_event.h header with the kernel (Michael Petlan) [2088767] - perf/uapi: Define PERF_MEM_SNOOPX_PEER in kernel header file (Michael Petlan) [2088767] - perf: correct SNOOPX field offset (Michael Petlan) [2088767] - perf tools: Sync addition of PERF_MEM_SNOOPX_PEER (Michael Petlan) [2088767] - perf/x86/amd: Support PERF_SAMPLE_PHY_ADDR (Michael Petlan) [2088767] - perf: Add sample_flags to indicate the PMU-filled sample data (Michael Petlan) [2086837] - perf/x86/amd: Support PERF_SAMPLE_ADDR (Michael Petlan) [2088767] - perf/x86/amd: Support PERF_SAMPLE_{WEIGHT|WEIGHT_STRUCT} (Michael Petlan) [2088767] - perf/x86/amd: Support PERF_SAMPLE_DATA_SRC (Michael Petlan) [2088767] - perf/x86/amd: Add IBS OP_DATA2 DataSrc bit definitions (Michael Petlan) [2088767] - perf/mem: Introduce PERF_MEM_LVLNUM_{EXTN_MEM|IO} (Michael Petlan) [2088767] - perf/x86/amd/uncore: Add PerfMonV2 RDPMC assignments (Michael Petlan) [2086837] - perf/x86/amd/uncore: Add PerfMonV2 DF event format (Michael Petlan) [2086837] - perf/x86/amd/uncore: Detect available DF counters (Michael Petlan) [2086837] - perf/x86/amd/uncore: Use attr_update for format attributes (Michael Petlan) [2086837] - perf/x86/amd/uncore: Use dynamic events array (Michael Petlan) [2086837] - tracing/osnoise: set several trace_osnoise.c variables storage-class-specifier to static (John Kacur) [2175293] - tracing/osnoise: No need for schedule_hrtimeout range (John Kacur) [2175293] - tracing/osnoise: Use built-in RCU list checking (John Kacur) [2175293] - tracing/osnoise: Add preempt and/or irq disabled options (John Kacur) [2175293] - tracing/osnoise: Add PANIC_ON_STOP option (John Kacur) [2175293] - tracing/osnoise: Make osnoise_options static (John Kacur) [2175293] - tracing/osnoise: Add OSNOISE_WORKLOAD option (John Kacur) [2175293] - tracing/osnoise: Add osnoise/options file (John Kacur) [2175293] - tracing/osnoise: Fix duration type (John Kacur) [2175293] - tracing/osnoise: Fix possible recursive locking in stop_per_cpu_kthreads (John Kacur) [2175293] - tracing/timerlat: Do not wakeup the thread if the trace stops at the IRQ (John Kacur) [2175293] - tracing/timerlat: Print stacktrace in the IRQ handler if needed (John Kacur) [2175293] - tracing/timerlat: Notify IRQ new max latency only if stop tracing is set (John Kacur) [2175293] - drivers: base: cacheinfo: Fix shared_cpu_map changes in event of CPU hotplug (Mark Lansgdorf) [2178301] - drivers: base: cacheinfo: Update cpu_map_populated during CPU Hotplug (Mark Lansgdorf) [2178301] - driver core: bus: move documentation for lock_key to proper location. (Mark Langsdorf) [2178301] - cacheinfo: Check cache properties are present in DT (Mark Langsdorf) [2178301] - cacheinfo: Fix LLC is not exported through sysfs (Mark Langsdorf) [2178301] - of: Add of_property_present() helper (Mark Langsdorf) [2178301] - driver core: fw_devlink: Print full path and name of fwnode (Mark Langsdorf) [2178301] - driver core: fw_devlink: Avoid spurious error message (Mark Langsdorf) [2178301] - driver core: bus: Handle early calls to bus_to_subsys() (Mark Langsdorf) [2178301] - driver core: class: move EXPORT_SYMBOL_GPL() lines to the correct place (Mark Langsdorf) [2178301] - driver core: cpu: don't hand-override the uevent bus_type callback. (Mark Langsdorf) [2178301] - driver core: bus: update my copyright notice (Mark Langsdorf) [2178301] - driver core: bus: add bus_get_dev_root() function (Mark Langsdorf) [2178301] - driver core: bus: constify bus_unregister() (Mark Langsdorf) [2178301] - driver core: bus: constify some internal functions (Mark Langsdorf) [2178301] - driver core: bus: constify bus_get_kset() (Mark Langsdorf) [2178301] - driver core: bus: constify bus_register/unregister_notifier() (Mark Langsdorf) [2178301] - driver core: create bus_is_registered() (Mark Langsdorf) [2178301] - driver core: bus: clean up driver_find() (Mark Langsdorf) [2178301] - driver core: move driver_find() to bus.c (Mark Langsdorf) [2178301] - driver core: bus: clean up bus_sort_breadthfirst() (Mark Langsdorf) [2178301] - driver core: bus: bus iterator cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_add/remove_driver() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_register/unregister_notifier() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_get_kset() cleanup (Mark Langsdorf) [2178301] - driver core: bus: subsys_interface_register/unregister() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_register/unregister() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_add/probe/remove_device() cleanups (Mark Langsdorf) [2178301] - driver core: bus: sysfs function cleanups (Mark Langsdorf) [2178301] - driver core: bus: convert bus_create/remove_file to be constant (Mark Langsdorf) [2178301] - driver core: bus: constantify the bus_find_* functions (Mark Langsdorf) [2178301] - driver core: bus: implement bus_get/put() without the private pointer (Mark Langsdorf) [2178301] - driver core: add local subsys_get and subsys_put functions (Mark Langsdorf) [2178301] - driver core: fw_devlink: Make cycle detection more robust (Mark Langsdorf) [2178301] - driver core: fw_devlink: Consolidate device link flag computation (Mark Langsdorf) [2178301] - driver core: fw_devlink: Allow marking a fwnode link as being part of a cycle (Mark Langsdorf) [2178301] - driver core: Add wait_for_init_devices_probe helper function (Mark Langsdorf) [2178301] - driver core: fw_devlink: Add DL_FLAG_CYCLE support to device links (Mark Langsdorf) [2178301] - driver core: fw_devlink: Improve check for fwnode with no device/driver (Mark Langsdorf) [2178301] - driver core: fw_devlink: Don't purge child fwnode's consumer links (Mark Langsdorf) [2178301] - drivers: base: dd: fix memory leak with using debugfs_lookup() (Mark Langsdorf) [2178301] - drivers: base: component: fix memory leak with using debugfs_lookup() (Mark Langsdorf) [2178301] - drivers/base: Remove CONFIG_SRCU (Mark Langsdorf) [2178301] - devtmpfs: convert to pr_fmt (Mark Langsdorf) [2178301] - driver core: bus: move lock_class_key into dynamic structure (Mark Langsdorf) [2178301] - driver core: platform: simplify __platform_driver_probe() (Mark Langsdorf) [2178301] - driver core: platform: removed unneeded variable from __platform_driver_probe() (Mark Langsdorf) [2178301] - cacheinfo: Initialize variables in fetch_cache_info() (Mark Langsdorf) [2178301] - regmap: apply reg_base and reg_downshift for single register ops (Mark Langsdorf) [2178301] - driver core: soc: remove layering violation for the soc_bus (Mark Langsdorf) [2178301] - of: device: make of_device_uevent_modalias() take a const device * (Mark Langsdorf) [2178301] - driver core: device_get_devnode() should take a const * (Mark Langsdorf) [2178301] - driver core: fix up missed drivers/s390/char/hmcdrv_dev.c class.devnode() conversion. (Mark Langsdorf) [2178301] - driver core: fix up missed scsi/cxlflash class.devnode() conversion. (Mark Langsdorf) [2178301] - driver core: fix up some missing class.devnode() conversions. (Mark Langsdorf) [2178301] - driver core: make struct class.devnode() take a const * (Mark Langsdorf) [2178301] - driver core: make struct device_type.devnode() take a const * (Mark Langsdorf) [2178301] - driver core: class: Clear private pointer on registration failures (Mark Langsdorf) [2178301] - cacheinfo: Fix shared_cpu_map to handle shared caches at different levels (Mark Langsdorf) [2178301] - cacheinfo: Check 'cache-unified' property to count cache leaves (Mark Langsdorf) [2178301] - arch_topology: Build cacheinfo from primary CPU (Mark Langsdorf) [2178301] - cacheinfo: Make default acpi_get_cache_info() return an error (Mark Langsdorf) [2178301] - ACPI: PPTT: Update acpi_find_last_cache_level() to acpi_get_cache_info() (Mark Langsdorf) [2178301] - ACPI: PPTT: Remove acpi_find_cache_levels() (Mark Langsdorf) [2178301] - drivers: base: transport_class: fix resource leak when transport_add_device() fails (Mark Langsdorf) [2178301] - driver core: location: Free struct acpi_pld_info *pld before return false (Mark Langsdorf) [2178301] - driver core: fix resource leak in device_add() (Mark Langsdorf) [2178301] - drivers/base/memory: Fix comments for phys_index_show() (Mark Langsdorf) [2178301] - drivers/base/memory: rename base_memory_block_id to memory_block_id (Mark Langsdorf) [2178301] - driver core: Fix test_async_probe_init saves device in wrong array (Mark Langsdorf) [2178301] - device property: fix of node refcount leak in fwnode_graph_get_next_endpoint() (Mark Langsdorf) [2178301] - driver core: bus: move bus notifier logic into bus.c (Mark Langsdorf) [2178301] - driver core: bus.h: document bus notifiers better (Mark Langsdorf) [2178301] - cacheinfo: Return error code in init_of_cache_level() (Mark Langsdorf) [2178301] - cacheinfo: Use RISC-V's init_cache_level() as generic OF implementation (Mark Langsdorf) [2178301] - platform: remove useless if-branch in __platform_get_irq_byname() (Mark Langsdorf) [2178301] - platform: Document platform_add_devices() return value (Mark Langsdorf) [2178301] - software node: Remove unused APIs (Mark Langsdorf) [2178301] - software node: Switch property entry test to a new API (Mark Langsdorf) [2178301] - platform: Provide a remove callback that returns no value (Mark Langsdorf) [2178301] - regmap: Rework regmap_mdio_c45_{read|write} for new C45 API. (Mark Langsdorf) [2178301] - net: Convert more users of mdiobus_* to mdiodev_* (Mark Langsdorf) [2178301] - PM: runtime: Document that force_suspend() is incompatible with SMART_SUSPEND (Mark Langsdorf) [2178301] - cpuidle, ARM: OMAP2+: powerdomain: Remove trace_.*_rcuidle() (Mark Langsdorf) [2178301] - driver core: fix potential null-ptr-deref in device_add() (Mark Langsdorf) [2178301] - PM: domains: Allow a genpd consumer to require a synced power off (Mark Langsdorf) [2178301] - driver core: move struct subsys_dev_iter to a local file (Mark Langsdorf) [2178301] - driver core: make subsys_dev_iter_exit() static (Mark Langsdorf) [2178301] - driver core: make subsys_dev_iter_next() static (Mark Langsdorf) [2178301] - driver core: make subsys_dev_iter_init() static (Mark Langsdorf) [2178301] - driver core: remove subsys_find_device_by_id() (Mark Langsdorf) [2178301] - driver core: make bus_get_device_klist() static (Mark Langsdorf) [2178301] - platform/mellanox: mlxbf-pmc: Fix event typo (Mark Langsdorf) [2178301] - firmware_loader: remove #include (Mark Langsdorf) [2178301] - PM: runtime: Adjust white space in the core code (Mark Langsdorf) [2178301] - device property: Fix documentation for fwnode_get_next_parent() (Mark Langsdorf) [2178301] - PM: runtime: Relocate rpm_callback() right after __rpm_callback() (Mark Langsdorf) [2178301] - regmap: Add FSI bus support (Mark Langsdorf) [2178301] - PM: domains: Reverse the order of performance and enabling ops (Mark Langsdorf) [2178301] - driver core: make struct class.dev_uevent() take a const * (Mark Langsdorf) [2178301] - driver core: change to_subsys_private() to use container_of_const() (Mark Langsdorf) [2178301] - xen/xenbus: move to_xenbus_device() to use container_of_const() (Mark Langsdorf) [2178301] - virtio: move dev_to_virtio() to use container_of_const() (Mark Langsdorf) [2178301] - cacheinfo: Remove of_node_put() for fw_token (Mark Langsdorf) [2178301] - device property: Add a blank line in Kconfig of tests (Mark Langsdorf) [2178301] - device property: Rename goto label to be more precise (Mark Langsdorf) [2178301] - regmap: add regmap_might_sleep() (Mark Langsdorf) [2178301] - regmap: Add can_sleep configuration option (Mark Langsdorf) [2178301] - regmap: Use flexible sleep (Mark Lansgdorf) [2178301] - platform: use fwnode_irq_get_byname instead of of_irq_get_byname to get irq (Mark Langsdorf) [2178301] - driver core: Fix bus_type.match() error handling in __driver_attach() (Mark Langsdorf) [2178301] - driver core: Use kstrtobool() instead of strtobool() (Mark Langsdorf) [2178301] - cacheinfo: Decrement refcount in cache_setup_of_node() (Mark Langsdorf) [2178301] - driver core: mark driver_allows_async_probing static (Mark Langsdorf) [2178301] - driver core: remove devm_device_remove_group() (Mark Langsdorf) [2178301] - driver core: remove devm_device_remove_groups() (Mark Langsdorf) [2178301] - driver core: class: make namespace and get_ownership take const * (Mark Langsdorf) [2178301] - devres: Use kmalloc_size_roundup() to match ksize() usage (Mark Langsdorf) [2178301] - class: fix possible memory leak in __class_register() (Mark Langsdorf) [2178301] - PM: domains: Power off[on] domain in hibernate .freeze[thaw]_noirq hook (Mark Langsdorf) [2178301] - PM: domains: Consolidate genpd_restore_noirq() and genpd_resume_noirq() (Mark Langsdorf) [2178301] - PM: domains: Pass generic PM noirq hooks to genpd_finish_suspend() (Mark Langsdorf) [2178301] - PM: domains: Drop genpd status manipulation for hibernate restore (Mark Langsdorf) [2178301] - PM: domains: Fix handling of unavailable/disabled idle states (Mark Langsdorf) [2178301] - device property: Fix documentation for *_match_string() APIs (Mark Langsdorf) [2178301] - device property: Constify parameter in device_dma_supported() and device_get_dma_attr() (Mark Langsdorf) [2178301] - device property: Constify device child node APIs (Mark Langsdorf) [2178301] - device property: Constify fwnode connection match APIs (Mark Langsdorf) [2178301] - device property: Allow const parameter to dev_fwnode() (Mark Langsdorf) [2178301] - PM: domains: log failures to register always-on domains (Mark Langsdorf) [2178301] - dt-bindings: irqchip: Describe the IMX MU block as a MSI controller (Mark Langsdorf) [2178301] - platform-msi: Export symbol platform_msi_create_irq_domain() (Mark Langsdorf) [2178301] - PM: runtime: Return -EINPROGRESS from rpm_resume() in the RPM_NOWAIT case (Mark Langsdorf) [2178301] - device property: Add const qualifier to device_get_match_data() parameter (Mark Langsdorf) [2178301] - driver core: use IS_ERR_OR_NULL() helper in device_create_groups_vargs() (Mark Langsdorf) [2178301] - devcoredump : Serialize devcd_del work (Mark Langsdorf) [2178301] - regmap: mmio: replace return 0 with break in switch statement (Mark Langsdorf) [2178301] - mm: kill is_memblock_offlined() (Mark Langsdorf) [2178301] - driver core: remove make_class_name declaration (Mark Langsdorf) [2178301] - regmap/hexagon: Properly fix the generic IO helpers (Mark Langsdorf) [2178301] - regmap: trace: Remove unneeded blank lines (Mark Langsdorf) [2178301] - regmap: trace: Remove explicit castings (Mark Langsdorf) [2178301] - regmap: trace: Remove useless check for NULL for bulk ops (Mark Langsdorf) [2178301] - PM: wakeup: Add extra debugging statement for multiple active IRQs (Mark Langsdorf) [2178301] - devres: Slightly optimize alloc_dr() (Mark Langsdorf) [2178301] - drivers: base: Print error code on synthetic uevent failure (Mark Langsdorf) [2178301] - class: use IS_ERR_OR_NULL() helper in class_unregister() (Mark Langsdorf) [2178301] - regmap: introduce value tracing for regmap bulk operations (Mark Langsdorf) [2178301] - regmap: mmio: Fix MMIO accessors to avoid talking to IO port (Mark Langsdorf) [2178301] - regmap: mmio: Introduce IO accessors that can talk to IO port (Mark Langsdorf) [2178301] - regmap: mmio: Get rid of broken 64-bit IO (Mark Langsdorf) [2178301] - regmap: mmio: Remove mmio_relaxed member from context (Mark Langsdorf) [2178301] - thunderbolt: Mask ring interrupt on Intel hardware as well (Desnes Nunes) [2216483] - thunderbolt: Clear registers properly when auto clear isn't in use (Desnes Nunes) [2216483] - dt-bindings: usb: fsa4480: Use generic node name (Desnes Nunes) [2216483] - media: Revert "media: uvcvideo: Set unique vdev name based in type" (Desnes Nunes) [2216483] - media: uvcvideo: Don't expose unsupported formats to userspace (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Fix configure initial pin assignment (Desnes Nunes) [2216483] - xhci: Free the command allocated for setting LPM if we return early (Desnes Nunes) [2216483] - xhci: also avoid the XHCI_ZERO_64B_REGS quirk with a passthrough iommu (Desnes Nunes) [2216483] - USB: serial: option: add Quectel RM500U-CN modem (Desnes Nunes) [2216483] - thunderbolt: Rename shadowed variables bit to interrupt_bit and auto_clear_bit (Desnes Nunes) [2216483] - thunderbolt: Disable interrupt auto clear for rings (Desnes Nunes) [2216483] - thunderbolt: Use const qualifier for `ring_interrupt_index` (Desnes Nunes) [2216483] - uas: Add US_FL_NO_REPORT_OPCODES for JMicron JMS583Gen 2 (Desnes Nunes) [2216483] - USB: serial: option: add Telit FE990 compositions (Desnes Nunes) [2216483] - USB: serial: cp210x: add Silicon Labs IFS-USB-DATACABLE IDs (Desnes Nunes) [2216483] - thunderbolt: Use scale field when allocating USB3 bandwidth (Desnes Nunes) [2216483] - thunderbolt: Limit USB3 bandwidth of certain Intel USB4 host routers (Desnes Nunes) [2216483] - thunderbolt: Call tb_check_quirks() after initializing adapters (Desnes Nunes) [2216483] - thunderbolt: Add missing UNSET_INBOUND_SBTX for retimer access (Desnes Nunes) [2216483] - thunderbolt: Fix memory leak in margining (Desnes Nunes) [2216483] - usb: typec: tcpm: fix warning when handle discover_identity message (Desnes Nunes) [2216483] - usb: typec: tcpm: fix create duplicate source-capabilities file (Desnes Nunes) [2216483] - usb: ucsi_acpi: Increase the command completion timeout (Desnes Nunes) [2216483] - usb: ucsi: Fix ucsi->connector race (Desnes Nunes) [2216483] - usb: ucsi: Fix NULL pointer deref in ucsi_connector_change() (Desnes Nunes) [2216483] - thunderbolt: Add quirk to disable CLx (Desnes Nunes) [2216483] - usb: typec: pd: Add higher capability sysfs for sink PDO (Desnes Nunes) [2216483] - usb: typec: pd: Remove usb_suspend_supported sysfs from sink PDO (Desnes Nunes) [2216483] - xhci: host: potential NULL dereference in xhci_generic_plat_probe() (Desnes Nunes) [2216483] - media: usb: siano: Fix warning due to null work_func_t function pointer (Desnes Nunes) [2216483] - media: usb: siano: Fix use after free bugs caused by do_submit_urb (Desnes Nunes) [2216483] - media: usb: dvb-usb-v2: af9015.c: return 0 instead of 'ret'. (Desnes Nunes) [2216483] - dt-bindings: usb: convert fcs,fusb302.txt to yaml (Desnes Nunes) [2216483] - dt-bindings: usb: fusb302: Remove deprecated properties (Desnes Nunes) [2216483] - usb: uvc: Enumerate valid values for color matching (Desnes Nunes) [2216483] - USB: ene_usb6250: Allocate enough memory for full object (Desnes Nunes) [2216483] - USB: uhci: fix memory leak with using debugfs_lookup() (Desnes Nunes) [2216483] - USB: ULPI: fix memory leak with using debugfs_lookup() (Desnes Nunes) [2216483] - USB: serial: option: add support for VW/Skoda "Carstick LTE" (Desnes Nunes) [2216483] - usb: remove the dead USB_OHCI_SH option (Desnes Nunes) [2216483] - xhci: decouple usb2 port resume and get_port_status request handling (Desnes Nunes) [2216483] - xhci: clear usb2 resume related variables in one place. (Desnes Nunes) [2216483] - xhci: rename resume_done to resume_timestamp (Desnes Nunes) [2216483] - xhci: Pass port structure as parameter to xhci_disable_port(). (Desnes Nunes) [2216483] - xhci: move port specific items such as state completions to port structure (Desnes Nunes) [2216483] - xhci: pass port pointer as parameter to xhci_set_port_power() (Desnes Nunes) [2216483] - xhci: cleanup xhci_hub_control port references (Desnes Nunes) [2216483] - xhci: add helpers for enabling and disabling interrupters (Desnes Nunes) [2216483] - xhci: Refactor interrupter code for initial multi interrupter support. (Desnes Nunes) [2216483] - xhci: remove xhci_test_trb_in_td_math early development check (Desnes Nunes) [2216483] - xhci: fix event ring segment table related masks and variables in header (Desnes Nunes) [2216483] - USB: core: Don't hold device lock while reading the "descriptors" sysfs file (Desnes Nunes) [2216483] - usb: early: xhci-dbc: Use memcpy_and_pad() (Desnes Nunes) [2216483] - usb: early: xhci-dbc: Optimize early_xdbc_write() (Desnes Nunes) [2216483] - usb: early: xhci-dbc: Fix a potential out-of-bound memory access (Desnes Nunes) [2216483] - Documentation: usb: correct spelling (Desnes Nunes) [2216483] - docs: usb: convert documents to ReST (Desnes Nunes) [2216483] - Documentation/usb: Fix typo (Desnes Nunes) [2216483] - USB: serial: clean up kl5kusb105 documentation (Desnes Nunes) [2216483] - usb: uvc: use v4l2_fill_fmtdesc instead of open coded format name (Desnes Nunes) [2216483] - usb: uvc: make uvc_format_desc table const (Desnes Nunes) [2216483] - usb: uvc: move uvc_fmts and uvc_format_by_guid to own compile unit (Desnes Nunes) [2216483] - usb: uvc: move media/v4l2-uvc.h to usb/uvc.h (Desnes Nunes) [2216483] - media: uvcvideo: Add GUID for BGRA/X 8:8:8:8 (Desnes Nunes) [2216483] - usb: gadget: uvc: add v4l2 try_format api call (Desnes Nunes) [2216483] - usb: gadget: uvc: add v4l2 enumeration api calls (Desnes Nunes) [2216483] - usb: gadget: uvc: allow for application to cleanly shutdown (Desnes Nunes) [2216483] - usb: gadget: uvc: rename function to be more consistent (Desnes Nunes) [2216483] - usb: gadget: uvc: fix multiple opens (Desnes Nunes) [2216483] - thunderbolt: Add missing kernel-doc comment to tb_tunnel_maximum_bandwidth() (Desnes Nunes) [2216483] - thunderbolt: Handle bandwidth allocation mode enablement notification (Desnes Nunes) [2216483] - xhci: split out rcar/rz support from xhci-plat.c (Desnes Nunes) [2216483] - usb: host: xhci-rcar: Use xhci_plat_priv.quirks instead of code settings (Desnes Nunes) [2216483] - usb: host: xhci-plat: Remove useless DMA-32 fallback configuration (Desnes Nunes) [2216483] - usb: host: xhci-plat: Add reset support (Desnes Nunes) [2216483] - usb: host: xhci-plat: Improve clock handling in probe() (Desnes Nunes) [2216483] - dt-bindings: usb: Convert Marvell Orion EHCI to DT schema (Desnes Nunes) [2216483] - dt-bindings: usb: Convert OMAP OHCI/EHCI bindings to schema (Desnes Nunes) [2216483] - dt-bindings: usb: Convert multiple "usb-ohci" bindings to DT schema (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ohci: Document dr_mode property (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ehci: Document dr_mode property (Desnes Nunes) [2216483] - dt-bindings: ehci/ohci: Allow iommus property (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ohci: Add missing compatible strings (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ehci: Add missing compatible strings (Desnes Nunes) [2216483] - dt-bindings: Fix incorrect 'reg' property sizes (Desnes Nunes) [2216483] - dt-bindings: usb: ehci: Add missing 2nd register region (Desnes Nunes) [2216483] - usb: typec: tcpm: Remove altmode active state updates (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Update active state (Desnes Nunes) [2216483] - usb: typec: mux: Introduce GPIO-based SBU mux (Desnes Nunes) [2216483] - redhat: configs: Add unset CONFIG_TYPEC_MUX_GPIO_SBU option (Desnes Nunes) [2216483] - usb: typec: mux: Add On Semi fsa4480 driver (Desnes Nunes) [2216483] - dt-bindings: usb: Add binding for fcs,fsa4480 (Desnes Nunes) [2216483] - dt-bindings: usb: Introduce GPIO-based SBU mux (Desnes Nunes) [2216483] - usb: host: ehci-fsl: Use DRV_NAME (Desnes Nunes) [2216483] - usb: typec: maxim_contaminant: Implement check_contaminant callback (Desnes Nunes) [2216483] - usb: typec: tcpci: Add callback for evaluating contaminant presence (Desnes Nunes) [2216483] - usb: typec: tcpm: Add callbacks to mitigate wakeups due to contaminant (Desnes Nunes) [2216483] - usb: typec: Make bus switch code retimer-aware (Desnes Nunes) [2216483] - usb: typec: retimer: Use device type for matching (Desnes Nunes) [2216483] - usb: typec: Add wrapper for bus switch set code (Desnes Nunes) [2216483] - usb: typec: Add retimer handle to port altmode (Desnes Nunes) [2216483] - usb: typec: tipd: Support wakeup (Desnes Nunes) [2216483] - dt-bindings: usb: tps6598x: Add wakeup property (Desnes Nunes) [2216483] - USB: fix memory leak with using debugfs_lookup() (Desnes Nunes) [2216483] - usb: typec: intel_pmc_mux: Deduplicate ACPI matching in probe (Desnes Nunes) [2216483] - usb: typec: intel_pmc_mux: Don't leak the ACPI device reference count (Desnes Nunes) [2216483] - usb: typec: tcpci: Request IRQ with IRQF_SHARED (Desnes Nunes) [2216483] - USB: Improve usb_fill_* documentation (Desnes Nunes) [2216483] - usb: typec: hd3ss3220: Add polling support (Desnes Nunes) [2216483] - dt-bindings: usb: ti,hd3ss3220: Update interrupt property as optional (Desnes Nunes) [2216483] - dt-bindings: usb: convert ti,hd3ss3220 bindings to json-schema (Desnes Nunes) [2216483] - dt-bindings: Convert usb-connector to YAML format. (Desnes Nunes) [2216483] - dt-bindings: usb: rt1711h: Add connector bindings (Desnes Nunes) [2216483] - dt-bindings: usb: hd3ss3220 device tree binding document (Desnes Nunes) [2216483] - thunderbolt: Add support for DisplayPort bandwidth allocation mode (Desnes Nunes) [2216483] - thunderbolt: Include the additional DP IN double word in debugfs dump (Desnes Nunes) [2216483] - thunderbolt: Add functions to support DisplayPort bandwidth allocation mode (Desnes Nunes) [2216483] - thunderbolt: Increase timeout of DP OUT adapter handshake (Desnes Nunes) [2216483] - thunderbolt: Take CL states into account when waiting for link to come up (Desnes Nunes) [2216483] - thunderbolt: Improve debug logging in tb_available_bandwidth() (Desnes Nunes) [2216483] - thunderbolt: Log DP adapter type (Desnes Nunes) [2216483] - thunderbolt: Use decimal port number in control and tunnel logs too (Desnes Nunes) [2216483] - media: uvcvideo: Silence memcpy() run-time false positive warnings (Desnes Nunes) [2216483] - media: uvcvideo: Quirk for autosuspend in Logitech B910 and C910 (Desnes Nunes) [2216483] - media: uvcvideo: Fix race condition with usb_kill_urb (Desnes Nunes) [2216483] - media: uvcvideo: Use standard names for menus (Desnes Nunes) [2216483] - media: uvcvideo: Fix power line control for Lenovo Integrated Camera (Desnes Nunes) [2216483] - media: uvcvideo: Add a quirk to force GEO GC6500 Camera bits-per-pixel value (Desnes Nunes) [2216483] - media: v4l: common: Fix naming of v4l2_get_link_rate (Desnes Nunes) [2216483] - media: ipu3-cio2: Use v4l2_get_link_freq helper (Desnes Nunes) [2216483] - media: ipu3-cio2: Update Copyright year and fix indentation issues (Desnes Nunes) [2216483] - media: v4l: Add a helper for obtaining the link frequency (Desnes Nunes) [2216483] - media: v4l2-common: add RGB565 and RGB55 to v4l2_format_info (Desnes Nunes) [2216483] - media: v4l2-common: add pixel encoding support (Desnes Nunes) [2216483] - media: v4l2-common: add support for new RGB32 pixelformats (Desnes Nunes) [2216483] - media: v4l2-common: add bayer formats in v4l2_format_info (Desnes Nunes) [2216483] - media: v4l2-common: Add an helper to apply frmsize constraints (Desnes Nunes) [2216483] - media: v4l2-common: Fix v4l2_fill_pixfmt[_mp]() prototypes (Desnes Nunes) [2216483] - media: Introduce helpers to fill pixel format structs (Desnes Nunes) [2216483] - media: uvcvideo: Refactor power_line_frequency_controls_limited (Desnes Nunes) [2216483] - media: uvcvideo: Refactor uvc_ctrl_mappings_uvcXX (Desnes Nunes) [2216483] - media: uvcvideo: Implement mask for V4L2_CTRL_TYPE_MENU (Desnes Nunes) [2216483] - media: uvcvideo: Extend documentation of uvc_video_clock_decode() (Desnes Nunes) [2216483] - media: uvcvideo: Refactor __uvc_ctrl_add_mapping (Desnes Nunes) [2216483] - media: uvcvideo: Undup use uvc_endpoint_max_bpi() code (Desnes Nunes) [2216483] - media: uvcvideo: Simplify uvc_endpoint_max_bpi() (Desnes Nunes) [2216483] - media: uvcvideo: Fix memory leak if uvc_ctrl_add_mapping fails (Desnes Nunes) [2216483] - media: uvcvideo: Avoid returning invalid controls (Desnes Nunes) [2216483] - media: uvcvideo: Avoid invalid memory access (Desnes Nunes) [2216483] - media: uvcvideo: Set the colorspace as sRGB if undefined (Desnes Nunes) [2216483] - media: uvcvideo: Fix memory leak of object map on error exit path (Desnes Nunes) [2216483] - media: uvcvideo: Fix handling on Bitmask controls (Desnes Nunes) [2216483] - media: uvcvideo: Do not return positive errors in uvc_query_ctrl() (Desnes Nunes) [2216483] - media: uvcvideo: Return -EACCES for Wrong state error (Desnes Nunes) [2216483] - media: uvcvideo: Improve error logging in uvc_query_ctrl() (Desnes Nunes) [2216483] - media: uvcvideo: Check for INACTIVE in uvc_ctrl_is_accessible() (Desnes Nunes) [2216483] - media: uvcvideo: Factor out usb_string() calls (Desnes Nunes) [2216483] - media: uvcvideo: Limit power line control for Acer EasyCamera (Desnes Nunes) [2216483] - media: uvcvideo: Recover stalled ElGato devices (Desnes Nunes) [2216483] - media: uvcvideo: Remove void casting for the status endpoint (Desnes Nunes) [2216483] - media: uvcvideo: Increase UVC_CTRL_CONTROL_TIMEOUT to 5 seconds. (Desnes Nunes) [2216483] - media: uvcvideo: Fix usage of symbolic permissions to octal (Desnes Nunes) [2216483] - media: uvcvideo: Fix assignment inside if condition (Desnes Nunes) [2216483] - media: uvcvideo: Fix missing newline after declarations (Desnes Nunes) [2216483] - media: uvcvideo: Handle errors from calls to usb_string (Desnes Nunes) [2216483] - media: uvcvideo: Only create input devs if hw supports it (Desnes Nunes) [2216483] - media: uvcvideo: Handle cameras with invalid descriptors (Desnes Nunes) [2216483] - media: uvcvideo: Remove format descriptions (Desnes Nunes) [2216483] - media: docs: Document the behaviour of uvcvideo driver (Desnes Nunes) [2216483] - media: uvcvideo: Set error_idx during ctrl_commit errors (Desnes Nunes) [2216483] - media: uvcvideo: Check controls flags before accessing them (Desnes Nunes) [2216483] - media: uvcvideo: Use control names from framework (Desnes Nunes) [2216483] - media: uvcvideo: Set unique vdev name based in type (Desnes Nunes) [2216483] - media: uvcvideo: Use dev->name for querycap() (Desnes Nunes) [2216483] - media: uvcvideo: Add support for V4L2_CTRL_TYPE_CTRL_CLASS (Desnes Nunes) [2216483] - media: uvcvideo: Set capability in s_param (Desnes Nunes) [2216483] - media: uvcvideo: Remove s_ctrl and g_ctrl (Desnes Nunes) [2216483] - media: v4l2-ioctl: S_CTRL output the right value (Desnes Nunes) [2216483] - media: uvcvideo: Do not check for V4L2_CTRL_WHICH_DEF_VAL (Desnes Nunes) [2216483] - media: pvrusb2: Do not check for V4L2_CTRL_WHICH_DEF_VAL (Desnes Nunes) [2216483] - media: v4l2-ioctl: Fix check_ext_ctrls (Desnes Nunes) [2216483] - net: thunderbolt: Add tracepoints (Desnes Nunes) [2216483] - net: thunderbolt: Add debugging when sending/receiving control packets (Desnes Nunes) [2216483] - net: thunderbolt: Move into own directory (Desnes Nunes) [2216483] - xhci: Convert to use list_count_nodes() (Desnes Nunes) [2216483] - usb: typec: ucsi: Register USB Power Delivery Capabilities (Desnes Nunes) [2216483] - xhci: Add hub_control to xhci_driver_overrides (Desnes Nunes) [2216483] - xhci: hub: export symbol on xhci_hub_control (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Add hpd sysfs attribute (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Notify drm subsys of (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Make dp_altmode_notify() more generic (Desnes Nunes) [2216483] - thunderbolt: Refactor tb_acpi_add_link() (Desnes Nunes) [2216483] - thunderbolt: Use correct type in tb_port_is_clx_enabled() prototype (Desnes Nunes) [2216483]- s390/diag: fix display of diagnose call statistics (Tobias Huschle) [2187995] - rseq, ptrace: Add PTRACE_GET_RSEQ_CONFIGURATION request (Adrian Reber) [2218454] - locking/rwbase: Mitigate indefinite writer starvation (Eder Zulian) [2077282] - fbcon: Check font dimension limits (Ricardo Robaina) [2213493] {CVE-2023-3161} - libnvdimm: Notify disk drivers to revalidate region read-only (Jeff Moyer) [1999673] - nvdimm/region: always show the 'align' attribute (Jeff Moyer) [1999673] - nvdimm/region: Fix default alignment for small regions (Jeff Moyer) [1999673] - libnvdimm/region: Allow setting align attribute on regions without mappings (Jeff Moyer) [1999673] - KVM: SVM: Return the local "r" variable from svm_set_msr() (Emanuele Giuseppe Esposito) [2124598] - KVM: x86: Virtualize FLUSH_L1D and passthrough MSR_IA32_FLUSH_CMD (Emanuele Giuseppe Esposito) [2124598] - KVM: x86: Move MSR_IA32_PRED_CMD WRMSR emulation to common code (Emanuele Giuseppe Esposito) [2124598] - KVM: SVM: Passthrough MSR_IA32_PRED_CMD based purely on host+guest CPUID (Emanuele Giuseppe Esposito) [2124598] - KVM: VMX: Passthrough MSR_IA32_PRED_CMD based purely on host+guest CPUID (Emanuele Giuseppe Esposito) [2124598] - KVM: x86: Revert MSR_IA32_FLUSH_CMD.FLUSH_L1D enabling (Emanuele Giuseppe Esposito) [2124598] - kvm: x86: Advertise FLUSH_L1D to user space (Emanuele Giuseppe Esposito) [2124598] - kvm: svm: Add IA32_FLUSH_CMD guest support (Emanuele Giuseppe Esposito) [2124598] - kvm: vmx: Add IA32_FLUSH_CMD guest support (Emanuele Giuseppe Esposito) [2124598] - rtc: lib_test: add MODULE_LICENSE (Lenny Szubowicz) [2207975] - rtc: efi: Remove the repeated module alias (Lenny Szubowicz) [2207975] - efi/efivars: Set generic ops before loading SSDT (Lenny Szubowicz) [2207975] - efi: efibc: check for efivars write capability (Lenny Szubowicz) [2207975] - efi/efivars: Expose RT service availability via efivars abstraction (Lenny Szubowicz) [2207975] - integrity: Check properly whether EFI GetVariable() is available (Lenny Szubowicz) [2207975] - x86/ima: Use EFI GetVariable only when available (Lenny Szubowicz) [2207975] - efi: Use EFI ResetSystem only when available (Lenny Szubowicz) [2207975] - scsi: iscsi: Use EFI GetVariable only when available (Lenny Szubowicz) [2207975] - infiniband: hfi1: Use EFI GetVariable only when available (Lenny Szubowicz) [2207975] - efi: Register EFI rtc platform device only when available (Lenny Szubowicz) [2207975] - efi: Use more granular check for availability for variable services (Lenny Szubowicz) [2207975] - efi: mark all efi runtime services as unsupported on non-efi boot (Lenny Szubowicz) [2207975] - efi: Add support for EFI_RT_PROPERTIES table (Lenny Szubowicz) [2207975] - crypto: ccp - Add support for PCI device 0x156E (Vladis Dronov) [2180960] - crypto: ccp - Add support for PCI device 0x17E0 (Vladis Dronov) [2180960] - crypto: ccp - Validate that platform access mailbox registers are declared (Vladis Dronov) [2180960] - crypto: ccp - Use lower 8 bytes to communicate with doorbell command register (Vladis Dronov) [2180960] - crypto: ccp - Return doorbell status code as an argument (Vladis Dronov) [2180960] - crypto: ccp - Bump up doorbell debug message to error (Vladis Dronov) [2180960] - crypto: ccp - Drop extra doorbell checks (Vladis Dronov) [2180960] - crypto: ccp - Don't initialize CCP for PSP 0x1649 (Vladis Dronov) [2180960] - crypto: ccp - Clear PSP interrupt status register before calling handler (Vladis Dronov) [2180960] - crypto: ccp - Add support for ringing a platform doorbell (Vladis Dronov) [2180960] - crypto: ccp - Enable platform access interface on client PSP parts (Vladis Dronov) [2180960] - crypto: ccp - Add support for an interface for platform features (Vladis Dronov) [2180960] - crypto: ccp - Move some PSP mailbox bit definitions into common header (Vladis Dronov) [2180960] - crypto: ccp - Add a header for multiple drivers to use `__psp_pa` (Vladis Dronov) [2180960] - crypto: ccp - Drop TEE support for IRQ handler (Vladis Dronov) [2180960] - crypto: ccp: Get rid of __sev_platform_init_locked()'s local function pointer (Vladis Dronov) [2180960] - crypto: ccp - Name -1 return value as SEV_RET_NO_FW_CALL (Vladis Dronov) [2180960] - crypto: ccp - Flush the SEV-ES TMR memory before giving it to firmware (Vladis Dronov) [2180960] - crypto: ccp - Add a firmware definition for EPYC gen 4 processors (Vladis Dronov) [2180960] - crypto: ccp - Provide MMIO register naming for documenation (Vladis Dronov) [2180960] - redhat/configs: enable CONFIG_INTEL_UNCORE_FREQ_CONTROL for x86_64 (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Return error on write frequency (David Arcari) [2156826] - platform/x86: intel-uncore-freq: Add client processors (David Arcari) [2156826] - platform/x86: intel-uncore-freq: add Emerald Rapids support (David Arcari) [2156826] - platform/x86: intel-uncore-freq: Use sysfs_emit() to instead of scnprintf() (David Arcari) [2156826] - platform/x86: intel-uncore-freq: Prevent driver loading in guests (David Arcari) [2156826] - platform/x86: intel-uncore-freq: fix uncore_freq_common_init() error codes (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Split common and enumeration part (David Arcari) [2156826] - platform/x86/intel/uncore-freq: Display uncore current frequency (David Arcari) [2156826] - platform/x86/intel/uncore-freq: Use sysfs API to create attributes (David Arcari) [2156826] - platform/x86/intel/uncore-freq: Move to uncore-frequency folder (David Arcari) [2156826] - platform/x86: intel-uncore-frequency: use default_groups in kobj_type (David Arcari) [2156826] - platform/x86: intel-uncore-frequency: Move to intel sub-directory (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Add Sapphire Rapids server support (David Arcari) [2156826] - platform/x86/intel-uncore-freq: make uncore_root_kobj static (David Arcari) [2156826] - platform/x86: Convert to new CPU match macros (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Add release callback (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Fix static checker issue and potential race condition (David Arcari) [2156826] - MAINTAINERS: Update for the intel uncore frequency control (David Arcari) [2156826] - platform/x86: Add support for Uncore frequency control (David Arcari) [2156826]- ceph: fix use-after-free bug for inodes when flushing capsnaps (Xiubo Li) [2209299] - net/tls: tls_is_tx_ready() checked list_entry (Sabrina Dubroca) [2212176] {CVE-2023-1075} - Revert "RDMA/umem: remove FOLL_FORCE usage" (Kamal Heib) [2210153 2210849] - Revert "RDMA/core: Refactor rdma_bind_addr" (Kamal Heib) [2212211 2212217] - cpufreq: intel_pstate: Fix scaling for hybrid-capable systems with disabled E-cores (David Arcari) [2221276] - netfilter: nf_tables: fix scheduling-while-atomic splat (Phil Sutter) [2217731] - netfilter: nf_tables: add rescheduling points during loop detection walks (Phil Sutter) [2217731] - ipv6: Remove dependency of ipv6_frag_thdr_truncated on ipv6 module (Phil Sutter) [2217794] - ipv6/netfilter: Discard first fragment not including all headers (Phil Sutter) [2217794] - s390/ipl: add eckd dump support (Tobias Huschle) [2159695] - net/smc: fix document build WARNING from smc-sysctl.rst (Tobias Huschle) [2159734] - s390/ism: switch from 'pci_' to 'dma_' API (Tobias Huschle) [2159734] - net/smc: Fix device de-init sequence (Tobias Huschle) [2159734] - net/smc: fix deadlock triggered by cancel_delayed_work_syn() (Tobias Huschle) [2159734] - net/smc: fix NULL sndbuf_desc in smc_cdc_tx_handler() (Tobias Huschle) [2159734] - net/smc: fix fallback failed while sendmsg with fastopen (Tobias Huschle) [2159734] - net/smc: fix application data exception (Tobias Huschle) [2159734] - net/smc: replace mutex rmbs_lock and sndbufs_lock with rw_semaphore (Tobias Huschle) [2159734] - net/smc: reduce unnecessary blocking in smcr_lgr_reg_rmbs() (Tobias Huschle) [2159734] - net/smc: use read semaphores to reduce unnecessary blocking in smc_buf_create() & smcr_buf_unuse() (Tobias Huschle) [2159734] - net/smc: llc_conf_mutex refactor, replace it with rw_semaphore (Tobias Huschle) [2159734] - net: add missing includes of linux/splice.h (Tobias Huschle) [2159734] - net/smc: De-tangle ism and smc device initialization (Tobias Huschle) [2159734] - s390/ism: Consolidate SMC-D-related code (Tobias Huschle) [2159734] - net/smc: Separate SMC-D and ISM APIs (Tobias Huschle) [2159734] - net/smc: Register SMC-D as ISM client (Tobias Huschle) [2159734] - net/ism: Add new API for client registration (Tobias Huschle) [2159734] - s390/ism: Introduce struct ism_dmb (Tobias Huschle) [2159734] - net/ism: Add missing calls to disable bus-mastering (Tobias Huschle) [2159734] - net/smc: Terminate connections prior to device removal (Tobias Huschle) [2159734] - net/smc: Fix possible leaked pernet namespace in smc_init() (Tobias Huschle) [2159734] - net/smc: Fix an error code in smc_lgr_create() (Tobias Huschle) [2159734] - net/smc: Support SO_REUSEPORT (Tobias Huschle) [2159734] - net/smc: Introduce a specific sysctl for TEST_LINK time (Tobias Huschle) [2159734] - net/smc: Stop the CLC flow if no link to map buffers on (Tobias Huschle) [2159734] - net/smc: Fix possible access to freed memory in link clear (Tobias Huschle) [2159734] - net/smc: Remove redundant refcount increase (Tobias Huschle) [2159734] - net/smc: Enable module load on netlink usage (Tobias Huschle) [2159734] - net/smc: Pass on DMBE bit mask in IRQ handler (Tobias Huschle) [2159734] - s390/ism: Cleanups (Tobias Huschle) [2159734] - net/smc: Eliminate struct smc_ism_position (Tobias Huschle) [2159734] - tcp: Fix data-races around keepalive sysctl knobs. (Tobias Huschle) [2159734] - net/smc: Extend SMC-R link group netlink attribute (Tobias Huschle) [2159734] - net/smc: Allow virtually contiguous sndbufs or RMBs for SMC-R (Tobias Huschle) [2159734] - net/smc: Use sysctl-specified types of buffers in new link group (Tobias Huschle) [2159734] - net/smc: Introduce a sysctl for setting SMC-R buffer type (Tobias Huschle) [2159734] - net/smc: optimize for smc_sndbuf_sync_sg_for_device and smc_rmb_sync_sg_for_cpu (Tobias Huschle) [2159734] - net/smc: remove redundant dma sync ops (Tobias Huschle) [2159734] - net/smc: fixes for converting from "struct smc_cdc_tx_pend **" to "struct smc_wr_tx_pend_priv *" (Tobias Huschle) [2159734] - net/smc: set ini->smcrv2.ib_dev_v2 to NULL if SMC-Rv2 is unavailable (Tobias Huschle) [2159734] - net/smc: postpone sk_refcnt increment in connect() (Tobias Huschle) [2159734] - net/smc: rdma write inline if qp has sufficient inline space (Tobias Huschle) [2159734] - net/smc: send cdc msg inline if qp has sufficient inline space (Tobias Huschle) [2159734] - net/smc: align the connect behaviour with TCP (Tobias Huschle) [2159734] - net/smc: non blocking recvmsg() return -EAGAIN when no data and signal_pending (Tobias Huschle) [2159734] - net/smc: Fix slab-out-of-bounds issue in fallback (Tobias Huschle) [2159734] - net/smc: Only save the original clcsock callback functions (Tobias Huschle) [2159734] - net/smc: sync err code when tcp connection was refused (Tobias Huschle) [2159734] - net/smc: Fix sock leak when release after smc_shutdown() (Tobias Huschle) [2159734] - net/smc: Send out the remaining data in sndbuf before close (Tobias Huschle) [2159734] - net/smc: fix a memory leak in smc_sysctl_net_exit() (Tobias Huschle) [2159734] - net/smc: fix -Wmissing-prototypes warning when CONFIG_SYSCTL not set (Tobias Huschle) [2159734] - net/smc: fix compile warning for smc_sysctl (Tobias Huschle) [2159734] - net/smc: fix unexpected SMC_CLC_DECL_ERR_REGRMB error cause by server (Tobias Huschle) [2159734] - net/smc: fix unexpected SMC_CLC_DECL_ERR_REGRMB error generated by client (Tobias Huschle) [2159734] - net: smc: fix different types in min() (Tobias Huschle) [2159734] - net/smc: don't send in the BH context if sock_owned_by_user (Tobias Huschle) [2159734] - net/smc: correct settings of RMB window update limit (Tobias Huschle) [2159734] - net/smc: send directly on setting TCP_NODELAY (Tobias Huschle) [2159734] - net/smc: add sysctl for autocorking (Tobias Huschle) [2159734] - net/smc: add autocorking support (Tobias Huschle) [2159734] - net/smc: add sysctl interface for SMC (Tobias Huschle) [2159734] - x86/resctrl: Clear staged_config[] before and after it is used (Prarit Bhargava) [1989284] - x86/resctl: fix scheduler confusion with 'current' (Prarit Bhargava) [1989284] - x86/resctrl: Fix a silly -Wunused-but-set-variable warning (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to write mbm_local_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to write mbm_total_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to read mbm_local_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to read mbm_total_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Support monitor configuration (Prarit Bhargava) [1989284] - x86/resctrl: Add __init attribute to rdt_get_mon_l3_config() (Prarit Bhargava) [1989284] - x86/resctrl: Detect and configure Slow Memory Bandwidth Allocation (Prarit Bhargava) [1989284] - x86/cpufeatures: Add Bandwidth Monitoring Event Configuration feature flag (Prarit Bhargava) [1989284] - x86/cpufeatures: Add Slow Memory Bandwidth Allocation feature flag (Prarit Bhargava) [1989284] - x86/resctrl: Include new features in command line options (Prarit Bhargava) [1989284] - x86/resctrl: Add a new resource type RDT_RESOURCE_SMBA (Prarit Bhargava) [1989284] - x86/resctrl: Replace smp_call_function_many() with on_each_cpu_mask() (Prarit Bhargava) [1989284] - x86/resctrl: Fix event counts regression in reused RMIDs (Prarit Bhargava) [1989284] - x86/resctrl: Fix task CLOSID/RMID update race (Prarit Bhargava) [1989284] - x86/resctrl: Move MSR defines into msr-index.h (Prarit Bhargava) [1989284] - x86/resctrl: Remove arch_has_empty_bitmaps (Prarit Bhargava) [1989284] - x86/resctrl: Fix min_cbm_bits for AMD (Prarit Bhargava) [1989284] - x86/resctrl: Make resctrl_arch_rmid_read() return values in bytes (Prarit Bhargava) [1989284] - x86/resctrl: Add resctrl_rmid_realloc_limit to abstract x86's boot_cpu_data (Prarit Bhargava) [1989284] - x86/resctrl: Rename and change the units of resctrl_cqm_threshold (Prarit Bhargava) [1989284] - x86/resctrl: Move get_corrected_mbm_count() into resctrl_arch_rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Move mbm_overflow_count() into resctrl_arch_rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Pass the required parameters into resctrl_arch_rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Abstract __rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Allow per-rmid arch private storage to be reset (Prarit Bhargava) [1989284] - x86/resctrl: Add per-rmid arch private storage for overflow and chunks (Prarit Bhargava) [1989284] - x86/resctrl: Calculate bandwidth from the previous __mon_event_count() chunks (Prarit Bhargava) [1989284] - x86/resctrl: Allow update_mba_bw() to update controls directly (Prarit Bhargava) [1989284] - x86/resctrl: Remove architecture copy of mbps_val (Prarit Bhargava) [1989284] - x86/resctrl: Switch over to the resctrl mbps_val list (Prarit Bhargava) [1989284] - x86/resctrl: Create mba_sc configuration in the rdt_domain (Prarit Bhargava) [1989284] - x86/resctrl: Abstract and use supports_mba_mbps() (Prarit Bhargava) [1989284] - x86/resctrl: Remove set_mba_sc()s control array re-initialisation (Prarit Bhargava) [1989284] - x86/resctrl: Add domain offline callback for resctrl work (Prarit Bhargava) [1989284] - x86/resctrl: Group struct rdt_hw_domain cleanup (Prarit Bhargava) [1989284] - x86/resctrl: Add domain online callback for resctrl work (Prarit Bhargava) [1989284] - x86/resctrl: Merge mon_capable and mon_enabled (Prarit Bhargava) [1989284] - x86/resctrl: Kill off alloc_enabled (Prarit Bhargava) [1989284] - x86/resctrl: Fix to restore to original value when re-enabling hardware prefetch register (Prarit Bhargava) [1989284] - x86: Replace cpumask_weight() with cpumask_empty() where appropriate (Prarit Bhargava) [1989284] - x86/resctrl: Remove redundant assignment to variable chunks (Prarit Bhargava) [1989284] - x86/resctrl: Fix kfree() of the wrong type in domain_add_cpu() (Prarit Bhargava) [1989284] - x86/resctrl: Free the ctrlval arrays when domain_setup_mon_state() fails (Prarit Bhargava) [1989284] - x86/resctrl: Make resctrl_arch_get_config() return its value (Prarit Bhargava) [1989284] - x86/resctrl: Merge the CDP resources (Prarit Bhargava) [1989284] - x86/resctrl: Expand resctrl_arch_update_domains()'s msr_param range (Prarit Bhargava) [1989284] - x86/resctrl: Remove rdt_cdp_peer_get() (Prarit Bhargava) [1989284] - x86/resctrl: Merge the ctrl_val arrays (Prarit Bhargava) [1989284] - x86/resctrl: Calculate the index from the configuration type (Prarit Bhargava) [1989284] - x86/resctrl: Apply offset correction when config is staged (Prarit Bhargava) [1989284] - x86/resctrl: Make ctrlval arrays the same size (Prarit Bhargava) [1989284] - x86/resctrl: Pass configuration type to resctrl_arch_get_config() (Prarit Bhargava) [1989284] - x86/resctrl: Add a helper to read a closid's configuration (Prarit Bhargava) [1989284] - x86/resctrl: Rename update_domains() to resctrl_arch_update_domains() (Prarit Bhargava) [1989284] - x86/resctrl: Allow different CODE/DATA configurations to be staged (Prarit Bhargava) [1989284] - x86/resctrl: Group staged configuration into a separate struct (Prarit Bhargava) [1989284] - x86/resctrl: Move the schemata names into struct resctrl_schema (Prarit Bhargava) [1989284] - x86/resctrl: Add a helper to read/set the CDP configuration (Prarit Bhargava) [1989284] - x86/resctrl: Swizzle rdt_resource and resctrl_schema in pseudo_lock_region (Prarit Bhargava) [1989284] - x86/resctrl: Pass the schema to resctrl filesystem functions (Prarit Bhargava) [1989284] - x86/resctrl: Add resctrl_arch_get_num_closid() (Prarit Bhargava) [1989284] - x86/resctrl: Store the effective num_closid in the schema (Prarit Bhargava) [1989284] - x86/resctrl: Walk the resctrl schema list instead of an arch list (Prarit Bhargava) [1989284] - x86/resctrl: Label the resources with their configuration type (Prarit Bhargava) [1989284] - x86/resctrl: Pass the schema in info dir's private pointer (Prarit Bhargava) [1989284] - x86/resctrl: Add a separate schema list for resctrl (Prarit Bhargava) [1989284] - x86/resctrl: Split struct rdt_domain (Prarit Bhargava) [1989284] - x86/resctrl: Split struct rdt_resource (Prarit Bhargava) [1989284] - x86/resctrl: Include pid.h (Prarit Bhargava) [1989284] - x86/resctrl: Fix kernel-doc in internal.h (Prarit Bhargava) [1989284] - x86/resctrl: Fix kernel-doc in pseudo_lock.c (Prarit Bhargava) [1989284] - x86/resctrl: Fix init const confusion (Prarit Bhargava) [1989284] - x86/resctrl: Fix various typos in comments, take #2 (Prarit Bhargava) [1989284] - x86/resctrl: Fix various typos in comments (Prarit Bhargava) [1989284] - x86/resctrl: Apply READ_ONCE/WRITE_ONCE to task_struct.{rmid,closid} (Prarit Bhargava) [1989284] - x86/resctrl: Use task_curr() instead of task_struct->on_cpu to prevent unnecessary IPI (Prarit Bhargava) [1989284] - x86/resctrl: Add printf attribute to log function (Prarit Bhargava) [1989284] - x86/resctrl: Don't move a task to the same resource group (Prarit Bhargava) [1989284] - x86/resctrl: Use an IPI instead of task_work_add() to update PQR_ASSOC MSR (Prarit Bhargava) [1989284] - x86/resctrl: Fix incorrect local bandwidth when mba_sc is enabled (Prarit Bhargava) [1989284] - x86/resctrl: Clean up unused function parameter in rmdir path (Prarit Bhargava) [1989284] - x86/resctrl: Add necessary kernfs_put() calls to prevent refcount leak (Prarit Bhargava) [1989284] - x86/resctrl: Remove superfluous kernfs_get() calls to prevent refcount leak (Prarit Bhargava) [1989284] - x86/resctrl: Constify kernfs_ops (Prarit Bhargava) [1989284] - x86/resctrl: Correct MBM total and local values (Prarit Bhargava) [1989284] - x86/include/asm/msr-index.h: Add IFS Array test bits (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Update IFS doc (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Implement Array BIST test (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Sysfs interface for Array BIST (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Introduce Array Scan test to IFS (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: IFS cleanup (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Reorganize driver data (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Separate ifs_pkg_auth from ifs_data (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add missing kernel-doc entry (Prarit Bhargava) [1971937] - Revert "platform/x86/intel/ifs: Mark as BROKEN" (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add current_batch sysfs entry (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove reload sysfs entry (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add metadata validation (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Use generic microcode headers and functions (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add metadata support (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove memory allocation from load path (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove image loading during init (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Return a more appropriate error code (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove unused selection (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Mark as BROKEN (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add CPU_SUP_INTEL dependency (Prarit Bhargava) [1971937] - Documentation: In-Field Scan (Prarit Bhargava) [1971937] - redhat/configs: Add CONFIG_INTEL_IFS (Prarit Bhargava) [1971937] - redhat/configs: Add CONFIG_MICROCODE_LATE_LOADING (Prarit Bhargava) [1971937] - stop_machine: Add stop_core_cpuslocked() for per-core operations (Prarit Bhargava) [1971937] - trace: platform/x86/intel/ifs: Add trace point to track Intel IFS operations (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add IFS sysfs interface (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add scan test support (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Authenticate and copy to secured memory (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Check IFS Image sanity (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Read IFS firmware image (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add stub driver for In-Field Scan (Prarit Bhargava) [1971937] - x86/msr-index: Define INTEGRITY_CAPABILITIES MSR (Prarit Bhargava) [1971937] - x86/microcode/core: Return an error only when necessary (Prarit Bhargava) [1971937] - x86/microcode/AMD: Fix mixed steppings support (Prarit Bhargava) [1971937] - x86/microcode/AMD: Add a @cpu parameter to the reloading functions (Prarit Bhargava) [1971937] - x86/microcode/amd: Remove load_microcode_amd()'s bsp parameter (Prarit Bhargava) [1971937] - x86/microcode: Allow only "1" as a late reload trigger value (Prarit Bhargava) [1971937] - x86/microcode/intel: Print old and new revision during early boot (Prarit Bhargava) [1971937] - x86/microcode/intel: Pass the microcode revision to print_ucode_info() directly (Prarit Bhargava) [1971937] - x86/microcode: Adjust late loading result reporting message (Prarit Bhargava) [1971937] - x86/microcode: Check CPU capabilities after late microcode update correctly (Prarit Bhargava) [1971937] - x86/microcode: Add a parameter to microcode_check() to store CPU capabilities (Prarit Bhargava) [1971937] - x86/microcode: Use the DEVICE_ATTR_RO() macro (Prarit Bhargava) [1971937] - x86/microcode/AMD: Handle multiple glued containers properly (Prarit Bhargava) [1971937] - x86/microcode/AMD: Rename a couple of functions (Prarit Bhargava) [1971937] - x86/microcode/intel: Do not retry microcode reloading on the APs (Prarit Bhargava) [1971937] - x86/microcode/intel: Do not print microcode revision and processor flags (Prarit Bhargava) [1971937] - x86/microcode/intel: Use a reserved field for metasize (Prarit Bhargava) [1971937] - x86/microcode/intel: Add hdr_type to intel_microcode_sanity_check() (Prarit Bhargava) [1971937] - x86/microcode/intel: Reuse microcode_sanity_check() (Prarit Bhargava) [1971937] - x86/microcode/intel: Use appropriate type in microcode_sanity_check() (Prarit Bhargava) [1971937] - x86/microcode/intel: Reuse find_matching_signature() (Prarit Bhargava) [1971937] - x86/microcode: Drop struct ucode_cpu_info.valid (Prarit Bhargava) [1971937] - x86/microcode: Do some minor fixups (Prarit Bhargava) [1971937] - x86/microcode: Kill refresh_fw (Prarit Bhargava) [1971937] - x86/microcode: Simplify init path even more (Prarit Bhargava) [1971937] - x86/microcode: Rip out the subsys interface gunk (Prarit Bhargava) [1971937] - x86/microcode/AMD: Track patch allocation size explicitly (Prarit Bhargava) [1971937] - x86/microcode: Print previous version of microcode after reload (Prarit Bhargava) [1971937] - x86/microcode: Remove ->request_microcode_user() (Prarit Bhargava) [1971937] - misc: Mark MICROCODE_MINOR unused (Prarit Bhargava) [1971937] - x86/microcode: Remove unnecessary perf callback (Prarit Bhargava) [1971937] - x86/microcode: Taint and warn on late loading (Prarit Bhargava) [1971937] - x86/microcode: Default-disable late loading (Prarit Bhargava) [1971937] - x86/microcode: Rip out the OLD_INTERFACE (Prarit Bhargava) [1971937] - x86/microcode/intel: Expose collect_cpu_info_early() for IFS (Prarit Bhargava) [1971937] - x86/cpu: Load microcode during restore_processor_state() (Prarit Bhargava) [1971937] - microcode: Replace zero-length arrays with flexible-array members (Prarit Bhargava) [1971937] - x86/microcode: Use the firmware_loader built-in API (Prarit Bhargava) [1971937] - firmware: Export firmware_request_builtin() (Prarit Bhargava) [1971937] - x86/microcode: Replace deprecated CPU-hotplug functions. (Prarit Bhargava) [1971937] - x86/microcode: Make microcode_init() static (Prarit Bhargava) [1971937] - x86/microcode/intel: Check patch signature before saving microcode for early loading (Prarit Bhargava) [1971937] - x86/microcode/amd: Remove unneeded break (Prarit Bhargava) [1971937] - x86/microcode: Do not select FW_LOADER (Prarit Bhargava) [1971937] - x86/microcode: Fix return value for microcode late loading (Prarit Bhargava) [1971937] - docs: fix broken documentation links (Prarit Bhargava) [1971937]- x86/cpu: Add Xeon Emerald Rapids to list of CPUs that support PPIN (Prarit Bhargava) [2215040] - redhat: configs: increase CONFIG_DEBUG_KMEMLEAK_MEM_POOL_SIZE (Audra Mitchell) [2215423] - docs: admin-guide: Add information about intel_pstate active mode (Prarit Bhargava) [2216962] - net/sched: flower: fix possible OOB write in fl_set_geneve_opt() (Davide Caratti) [2214027] {CVE-2023-35788} - scsi: aacraid: Reply queue mapping to CPUs based on IRQ affinity (Tomas Henzl) [2160149] - cifs: missing null pointer check in cifs_mount (Ronnie Sahlberg) [2215018] - cpufreq: intel_pstate: Enable HWP IO boost for all servers (Prarit Bhargava) [2175625] - block: make sure local irq is disabled when calling __blkcg_rstat_flush (Ming Lei) [2208904] - blk-cgroup: Flush stats before releasing blkcg_gq (Ming Lei) [2208904] - scsi: storvsc: Always set no_report_opcodes (Cathy Avery) [2217552] - scsi: storvsc: Don't pass unused PFNs to Hyper-V host (Cathy Avery) [2217552] - scsi: storvsc: Handle BlockSize change in Hyper-V VHD/VHDX file (Cathy Avery) [2217552] - dm thin: fix issue_discard to pass GFP_NOIO to __blkdev_issue_discard (Benjamin Marzinski) [2212240] - dm thin metadata: check fail_io before using data_sm (Benjamin Marzinski) [2215418] - dm: don't lock fs when the map is NULL during suspend or resume (Benjamin Marzinski) [2215418] - redhat/configs: enable CONFIG_MANA_INFINIBAND for RHEL (Kamal Heib) [2188737] - RDMA/mana_ib: Fix a bug when the PF indicates more entries for registering memory on first packet (Kamal Heib) [2188737] - RDMA/mana_ib: Prevent array underflow in mana_ib_create_qp_raw() (Kamal Heib) [2188737] - RDMA/mana: Remove redefinition of basic u64 type (Kamal Heib) [2188737] - RDMA/mana_ib: Add a driver for Microsoft Azure Network Adapter (Kamal Heib) [2188737] - net: mana: Define data structures for allocating doorbell page from GDMA (Kamal Heib) [2188737] - Documentation: net: net.core.txrehash is not specific to listening sockets (Antoine Tenart) [2175716] - net: ipv4: use consistent txhash in TIME_WAIT and SYN_RECV (Antoine Tenart) [2175716] - net: tcp: make the txhash available in TIME_WAIT sockets for IPv4 too (Antoine Tenart) [2175716] - net: ipv6: fix skb hash for some RST packets (Antoine Tenart) [2175716] - ipv6: tcp: send consistent autoflowlabel in RST packets (Antoine Tenart) [2175716] - ipv6: tcp: send consistent autoflowlabel in SYN_RECV state (Antoine Tenart) [2175716] - ipv6: tcp: send consistent autoflowlabel in TIME_WAIT state (Antoine Tenart) [2175716] - txhash: fix sk->sk_txrehash default (Antoine Tenart) [2175716] - socket: Don't use u8 type in uapi socket.h (Antoine Tenart) [2175716] - tcp: Change SYN ACK retransmit behaviour to account for rehash (Antoine Tenart) [2175716] - txhash: Add txrehash sysctl description (Antoine Tenart) [2175716] - txhash: Add socket option to control TX hash rethink behavior (Antoine Tenart) [2175716] - txhash: Make rethinking txhash behavior configurable via sysctl (Antoine Tenart) [2175716] - igc: Fix possible system crash when loading module (Corinna Vinschen) [2153370] - igc: Clean the TX buffer and TX descriptor ring (Corinna Vinschen) [2153370] - igc: Avoid transmit queue timeout for XDP (Corinna Vinschen) [2153370] - igc: read before write to SRRCTL register (Corinna Vinschen) [2153370] - igc: Enable and fix RX hash usage by netstack (Corinna Vinschen) [2153370] - igc: Remove obsolete DMA coalescing code (Corinna Vinschen) [2153370] - igc: fix the validation logic for taprio's gate list (Corinna Vinschen) [2153370] - igc: Add ndo_tx_timeout support (Corinna Vinschen) [2153370] - igc: return an error if the mac type is unknown in igc_ptp_systim_to_hwtstamp() (Corinna Vinschen) [2153370] - igc: Remove redundant pci_enable_pcie_error_reporting() (Corinna Vinschen) [2153370] - igc: Fix PPS delta between two synchronized end-points (Corinna Vinschen) [2153370] - igc: Remove reset adapter task for i226 during disable tsn config (Corinna Vinschen) [2153370] - igc: enable Qbv configuration for 2nd GCL (Corinna Vinschen) [2153370] - igc: remove I226 Qbv BaseTime restriction (Corinna Vinschen) [2153370] - igc: Set Qbv start_time and end_time to end_time if not being configured in GCL (Corinna Vinschen) [2153370] - igc: recalculate Qbv end_time by considering cycle time (Corinna Vinschen) [2153370] - igc: allow BaseTime 0 enrollment for Qbv (Corinna Vinschen) [2153370] - igc: Add checking for basetime less than zero (Corinna Vinschen) [2153370] - igc: Use strict cycles for Qbv scheduling (Corinna Vinschen) [2153370] - igc: Enhance Qbv scheduling by using first flag bit (Corinna Vinschen) [2153370] - r8152: fix the autosuspend doesn't work (Jose Ignacio Tornos Martinez) [2159264] - r8152: move setting r8153b_rx_agg_chg_indicate() (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the poor throughput for 2.5G devices (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix flow control issue of RTL8156A (Jose Ignacio Tornos Martinez) [2159264] - r8152: Add __GFP_NOWARN to big allocations (Jose Ignacio Tornos Martinez) [2159264] - r8152: reduce the control transfer of rtl8152_get_version() (Jose Ignacio Tornos Martinez) [2159264] - r8152: remove rtl_vendor_mode function (Jose Ignacio Tornos Martinez) [2159264] - r8152: avoid to change cfg for all devices (Jose Ignacio Tornos Martinez) [2159264] - r8152: add vendor/device ID pair for Microsoft Devkit (Jose Ignacio Tornos Martinez) [2159264] - cdc_ether: no need to blacklist any r8152 devices (Jose Ignacio Tornos Martinez) [2159264] - r8152: add USB device driver for config selection (Jose Ignacio Tornos Martinez) [2159264] - net: usb: cdc_ether: add support for Thales Cinterion PLS62-W modem (Jose Ignacio Tornos Martinez) [2159264] - net: usb: cdc_ether: add u-blox 0x1343 composition (Jose Ignacio Tornos Martinez) [2159264] - r8152: Add MAC passthrough support for Lenovo Travel Hub (Jose Ignacio Tornos Martinez) [2159264] - r8152: allow userland to disable multicast (Jose Ignacio Tornos Martinez) [2159264] - r8152: add PID for the Lenovo OneLink+ Dock (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the RX FIFO settings when suspending (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the units of some registers for RTL8156A (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix a WOL issue (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix accessing unset transport header (Jose Ignacio Tornos Martinez) [2159264] - net: usb: r8152: Add in new Devices that are supported for Mac-Passthru (Jose Ignacio Tornos Martinez) [2159264] - cdc_ether: export usbnet_cdc_zte_rx_fixup (Jose Ignacio Tornos Martinez) [2159264] - USB: zaurus: support another broken Zaurus (Jose Ignacio Tornos Martinez) [2159264] - Revert "net: usb: r8152: Add MAC passthrough support for more Lenovo Docks" (Jose Ignacio Tornos Martinez) [2159264] - r8152: sync ocp base (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the force speed doesn't work for RTL8156 (Jose Ignacio Tornos Martinez) [2159264] - net: usb: r8152: Add MAC passthrough support for more Lenovo Docks (Jose Ignacio Tornos Martinez) [2159264] - net: usb: use eth_hw_addr_set() for dev->addr_len cases (Jose Ignacio Tornos Martinez) [2159264] - net: usb: use eth_hw_addr_set() instead of ether_addr_copy() (Jose Ignacio Tornos Martinez) [2159264] - r8152: avoid to resubmit rx immediately (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the maximum number of PLA bp for RTL8153C (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix writing USB_BP2_EN (Jose Ignacio Tornos Martinez) [2159264] - r8152: Fix a deadlock by doubly PM resume (Jose Ignacio Tornos Martinez) [2159264] - r8152: Fix potential PM refcount imbalance (Jose Ignacio Tornos Martinez) [2159264] - r8152: store the information of the pipes (Jose Ignacio Tornos Martinez) [2159264] - r8152: support pauseparam of ethtool_ops (Jose Ignacio Tornos Martinez) [2159264] - r8152: Avoid memcpy() over-reading of ETH_SS_STATS (Jose Ignacio Tornos Martinez) [2159264] - r8152: check the informaton of the device (Jose Ignacio Tornos Martinez) [2159264] - r8152: remove some bit operations (Jose Ignacio Tornos Martinez) [2159264] - r8152: redefine REALTEK_USB_DEVICE macro (Jose Ignacio Tornos Martinez) [2159264] - r8152: remove NCM mode from REALTEK_USB_DEVICE macro (Jose Ignacio Tornos Martinez) [2159264] - r8152: replace return with break for ram code speedup mode timeout (Jose Ignacio Tornos Martinez) [2159264] - r8152: search the configuration of vendor mode (Jose Ignacio Tornos Martinez) [2159264] - r8152: support PHY firmware for RTL8156 series (Jose Ignacio Tornos Martinez) [2159264] - r8152: support new chips (Jose Ignacio Tornos Martinez) [2159264] - r8152: add help function to change mtu (Jose Ignacio Tornos Martinez) [2159264] - r8152: adjust rtl8152_check_firmware function (Jose Ignacio Tornos Martinez) [2159264] - r8152: set inter fram gap time depending on speed (Jose Ignacio Tornos Martinez) [2159264] - r8152: adjust the flow of power cut for RTL8153B (Jose Ignacio Tornos Martinez) [2159264] - treewide: Use fallthrough pseudo-keyword (Jose Ignacio Tornos Martinez) [2159264] - nouveau: fix client work fence deletion race (Jocelyn Falempe) [2160452] - drm/mgag200: Fix gamma lut not initialized. (Jocelyn Falempe) [2160452] - drm/amd/display: Fix hang when skipping modeset (Jocelyn Falempe) [2160452] - drm/amd/display: Lowering min Z8 residency time (Jocelyn Falempe) [2160452] - drm/amd/display: Update minimum stutter residency for DCN314 Z8 (Jocelyn Falempe) [2160452] - drm/amd/display: Add minimum Z8 residency debug option (Jocelyn Falempe) [2160452] - drm/i915: disable sampler indirect state in bindless heap (Jocelyn Falempe) [2160452] - drm/i915/mtl: Add Wa_14017856879 (Jocelyn Falempe) [2160452] - drm/i915/mtl: Add workarounds Wa_14017066071 and Wa_14017654203 (Jocelyn Falempe) [2160452] - drm/i915: Add _PICK_EVEN_2RANGES() (Jocelyn Falempe) [2160452] - drm/amd/display: hpd rx irq not working with eDP interface (Jocelyn Falempe) [2160452] - drm/amd/display: merge dc_link.h into dc.h and dc_types.h (Jocelyn Falempe) [2160452] - drm/amd/pm: avoid potential UBSAN issue on legacy asics (Jocelyn Falempe) [2160452] - drm/amdgpu: disable sdma ecc irq only when sdma RAS is enabled in suspend (Jocelyn Falempe) [2160452] - drm/amdgpu: drop gfx_v11_0_cp_ecc_error_irq_funcs (Jocelyn Falempe) [2160452] - drm/amd/pm: parse pp_handle under appropriate conditions (Jocelyn Falempe) [2160452] - drm/amd/display: Enforce 60us prefetch for 200Mhz DCFCLK modes (Jocelyn Falempe) [2160452] - drm/amdgpu: Fix vram recover doesn't work after whole GPU reset (v2) (Jocelyn Falempe) [2160452] - drm/amdgpu: change gfx 11.0.4 external_id range (Jocelyn Falempe) [2160452] - drm/amdgpu/jpeg: Remove harvest checking for JPEG3 (Jocelyn Falempe) [2160452] - drm/amdgpu/gfx: disable gfx9 cp_ecc_error_irq only when enabling legacy gfx ras (Jocelyn Falempe) [2160452] - drm/amdgpu: fix amdgpu_irq_put call trace in gmc_v11_0_hw_fini (Jocelyn Falempe) [2160452] - drm/amdgpu: fix an amdgpu_irq_put() issue in gmc_v9_0_hw_fini() (Jocelyn Falempe) [2160452] - drm/amdgpu: fix amdgpu_irq_put call trace in gmc_v10_0_hw_fini (Jocelyn Falempe) [2160452] - drm/amd/display: Change default Z8 watermark values (Jocelyn Falempe) [2160452] - drm/amdgpu: drop redundant sched job cleanup when cs is aborted (Jocelyn Falempe) [2160452] - drm/amd/display: fix flickering caused by S/G mode (Jocelyn Falempe) [2160452] - drm/amd/display: fix access hdcp_workqueue assert (Jocelyn Falempe) [2160452] - drm/amd/display: filter out invalid bits in pipe_fuses (Jocelyn Falempe) [2160452] - drm/amd/display: Fix 4to1 MPC black screen with DPP RCO (Jocelyn Falempe) [2160452] - drm/amd/display: Add NULL plane_state check for cursor disable logic (Jocelyn Falempe) [2160452] - drm/panel: otm8009a: Set backlight parent to panel device (Jocelyn Falempe) [2160452] - drm/dsc: fix drm_edp_dsc_sink_output_bpp() DPCD high byte usage (Jocelyn Falempe) [2160452] - drm/i915/dsi: Use unconditional msleep() instead of intel_dsi_msleep() (Jocelyn Falempe) [2160452] - drm/i915: Check pipe source size when using skl+ scalers (Jocelyn Falempe) [2160452] - drm/i915/color: Fix typo for Plane CSC indexes (Jocelyn Falempe) [2160452] - drm/bridge: lt8912b: Fix DSI Video Mode (Jocelyn Falempe) [2160452] - drm/amdgpu: add a missing lock for AMDGPU_SCHED (Jocelyn Falempe) [2160452] - drm/i915/mtl: Add the missing CPU transcoder mask in intel_device_info (Jocelyn Falempe) [2160452] - drm/i915/guc: Actually return an error if GuC version range check fails (Jocelyn Falempe) [2160452] - drm/i915/guc: More debug print updates - UC firmware (Jocelyn Falempe) [2160452] - drm/amd/display: Update bounding box values for DCN321 (Jocelyn Falempe) [2160452] - drm/amd/display: Do not clear GPINT register when releasing DMUB from reset (Jocelyn Falempe) [2160452] - drm/amd/display: Reset OUTBOX0 r/w pointer on DMUB reset (Jocelyn Falempe) [2160452] - drm/amd/display: Fixes for dcn32_clk_mgr implementation (Jocelyn Falempe) [2160452] - drm/amd/display: Return error code on DSC atomic check failure (Jocelyn Falempe) [2160452] - drm/amd/display: Add missing WA and MCLK validation (Jocelyn Falempe) [2160452] - drm/panel: novatek-nt35950: Only unregister DSI1 if it exists (Jocelyn Falempe) [2160452] - drm/panel: novatek-nt35950: Improve error handling (Jocelyn Falempe) [2160452] - drm/i915: Fix memory leaks in i915 selftests (Jocelyn Falempe) [2160452] - drm/i915: Make intel_get_crtc_new_encoder() less oopsy (Jocelyn Falempe) [2160452] - drm/amd/display: Fix potential null dereference (Jocelyn Falempe) [2160452] - drm/ttm/pool: Fix ttm_pool_alloc error path (Jocelyn Falempe) [2160452] - drm/i915/pxp: limit drm-errors or warning on firmware API failures (Jocelyn Falempe) [2160452] - drm/i915/pxp: Invalidate all PXP fw sessions during teardown (Jocelyn Falempe) [2160452] - drm/amd/display/dc/dce60/Makefile: Fix previous attempt to silence known override-init warnings (Jocelyn Falempe) [2160452] - accel: Link to compute accelerator subsystem intro (Jocelyn Falempe) [2160452] - drm/bridge: adv7533: Fix adv7533_mode_valid for adv7533 and adv7535 (Jocelyn Falempe) [2160452] - drm/probe-helper: Cancel previous job before starting new one (Jocelyn Falempe) [2160452] - drm/vgem: add missing mutex_destroy (Jocelyn Falempe) [2160452] - drm/i915/dg2: Drop one PCI ID (Jocelyn Falempe) [2160452] - drm/amd/pm: re-enable the gfx imu when smu resume (Jocelyn Falempe) [2160452] - drm/vmwgfx: Fix Legacy Display Unit atomic drm support (Jocelyn Falempe) [2160452] - drm/fb-helper: set x/yres_virtual in drm_fb_helper_check_var (Jocelyn Falempe) [2160452] - redhat: include new drm tests in mod-internals (Jocelyn Falempe) [2160452] - drm/amd/display: build with std=gnu99 (Jocelyn Falempe) [2160452] - overflow: Introduce overflows_type() and castable_to_type() (Jocelyn Falempe) [2160452] - Revert "driver core: make struct bus_type.uevent() take a const *" (Jocelyn Falempe) [2160452] - Revert "iommu: Add a gfp parameter to iommu_map()" (Jocelyn Falempe) [2160452] - Revert "mm: replace vma->vm_flags direct modifications with modifier calls" (Jocelyn Falempe) [2160452] - Merge DRM changes from upstream v6.2..v6.3 (Jocelyn Falempe) [2160452] - redhat: include new drm_kunit_helpers in mod-internals (Jocelyn Falempe) [2160452] - drm/i915: build i915 with std=gnu99 (Jocelyn Falempe) [2160452] - drm/amdgpu: Add missing include for ppc64le (Jocelyn Falempe) [2160452] - drm/fb-helper: Add missing include for s390x (Jocelyn Falempe) [2160452] - drm/edid: Add missing include (Jocelyn Falempe) [2160452] - Revert "drm/i915/gvt: use atomic operations to change the vGPU status" (Jocelyn Falempe) [2160452] - Revert "kunit: Use KUNIT_EXPECT_MEMEQ macro" (Jocelyn Falempe) [2160452] - Revert "treewide: use get_random_u32_inclusive() when possible" (Jocelyn Falempe) [2160452] - Revert "treewide: use get_random_u32_below() instead of deprecated function" (Jocelyn Falempe) [2160452] - Revert "overflow: Introduce overflows_type() and castable_to_type()" (Jocelyn Falempe) [2160452] - Merge DRM changes from upstream v6.1..v6.2 (Jocelyn Falempe) [2160452] - kconfig: disable DRM dynamic debug. (Jocelyn Falempe) [2160452] - drm/vkms: build driver with gnu99 (Jocelyn Falempe) [2160452] - Revert "drm: POC drm on dyndbg - use in core, 2 helpers, 3 drivers." (Jocelyn Falempe) [2160452] - Revert "mm: free device private pages have zero refcount" (Jocelyn Falempe) [2160452] - Revert "mm/memory.c: fix race when faulting a device private page" (Jocelyn Falempe) [2160452] - Revert "drm/i915/gvt: simplify vgpu configuration management" (Jocelyn Falempe) [2160452] - Revert "i915: use the VMA iterator" (Jocelyn Falempe) [2160452] - Revert "drm/i915/userptr: restore probe_range behaviour" (Jocelyn Falempe) [2160452] - Revert "dynamic_dname(): drop unused dentry argument" (Jocelyn Falempe) [2160452] - Revert "i2c: Make remove callback return void" (Jocelyn Falempe) [2160452] - Merge DRM changes from upstream v6.0..v6.1 (Jocelyn Falempe) [2160452] - Enable A64FX_DIAG config option (Charles Mirabile) [2047817] - NMI workaround for GIC irq controllers (Charles Mirabile) [2047817] - arm64: entry: avoid kprobe recursion (Charles Mirabile) [2047817] - soc: a64fx-diag: disable modular build (Charles Mirabile) [2047817] - soc: fujitsu: Add A64FX diagnostic interrupt driver (Charles Mirabile) [2047817] - irqchip/gic-v3: Fix priority mask handling (Charles Mirabile) [2047817] - irqchip/gic-v3: Refactor ISB + EOIR at ack time (Charles Mirabile) [2047817] - irqchip/gic-v3: Ensure pseudo-NMIs have an ISB between ack and handling (Charles Mirabile) [2047817] - arm64: select TRACE_IRQFLAGS_NMI_SUPPORT (Charles Mirabile) [2047817] - arm64: entry: Save some nops when CONFIG_ARM64_PSEUDO_NMI is not set (Charles Mirabile) [2047817] - irqchip/gic-v3: Fix priority comparison when non-secure priorities are used (Charles Mirabile) [2047817] - arm64: entry: add missing noinstr (Charles Mirabile) [2047817] - arm64: suspend: Use cpuidle context helpers in cpu_suspend() (Charles Mirabile) [2047817] - PSCI: Use cpuidle context helpers in psci_cpu_suspend_enter() (Charles Mirabile) [2047817] - arm64: Convert cpu_do_idle() to using cpuidle context helpers (Charles Mirabile) [2047817] - arm64: Add cpuidle context save/restore helpers (Charles Mirabile) [2047817] - arm64: entry: make NMI entry/exit functions static (Charles Mirabile) [2047817] - arm64: entry: split SDEI entry (Charles Mirabile) [2047817] - arm64: entry: split bad stack entry (Charles Mirabile) [2047817] - arm64: entry: fold el1_inv() into el1h_64_sync_handler() (Charles Mirabile) [2047817] - arm64: entry: handle all vectors with C (Charles Mirabile) [2047817] - arm64: entry: template the entry asm functions (Charles Mirabile) [2047817] - arm64: entry: improve bad_mode() (Charles Mirabile) [2047817] - arm64: entry: move bad_mode() to entry-common.c (Charles Mirabile) [2047817] - arm64: entry: consolidate EL1 exception returns (Charles Mirabile) [2047817] - arm64: entry: organise entry vectors consistently (Charles Mirabile) [2047817] - arm64: entry: organise entry handlers consistently (Charles Mirabile) [2047817] - arm64: entry: convert IRQ+FIQ handlers to C (Charles Mirabile) [2047817] - arm64: entry: add a call_on_irq_stack helper (Charles Mirabile) [2047817] - arm64: entry: move NMI preempt logic to C (Charles Mirabile) [2047817] - arm64: entry: move arm64_preempt_schedule_irq to entry-common.c (Charles Mirabile) [2047817] - arm64: entry: convert SError handlers to C (Charles Mirabile) [2047817] - arm64: entry: unmask IRQ+FIQ after EL0 handling (Charles Mirabile) [2047817] - arm64: remove redundant local_daif_mask() in bad_mode() (Charles Mirabile) [2047817] - arm64: entry: always set GIC_PRIO_PSR_I_SET during entry (Charles Mirabile) [2047817] - arm64: entry: remove test_irqs_unmasked macro (Charles Mirabile) [2047817] - arm64: irq: allow FIQs to be handled (Charles Mirabile) [2047817] - arm64: Always keep DAIF.[IF] in sync (Charles Mirabile) [2047817] - arm64: entry: factor irq triage logic into macros (Charles Mirabile) [2047817] - arm64: irq: rework root IRQ handler registration (Charles Mirabile) [2047817] - arm64: don't use GENERIC_IRQ_MULTI_HANDLER (Charles Mirabile) [2047817] - genirq: Allow architectures to override set_handle_irq() fallback (Charles Mirabile) [2047817] - irqchip: Do not blindly select CONFIG_GENERIC_IRQ_MULTI_HANDLER (Charles Mirabile) [2047817] - arm64: entry: consolidate Cortex-A76 erratum 1463225 workaround (Charles Mirabile) [2047817] - arm64: entry: remove redundant IRQ flag tracing (Charles Mirabile) [2047817] - arm64: entry: suppress W=1 prototype warnings (Charles Mirabile) [2047817] - arm64: sdei: explicitly simulate PAN/UAO entry (Charles Mirabile) [2047817] - arm64: entry: fix EL1 debug transitions (Charles Mirabile) [2047817] - arm64: entry: fix NMI {user, kernel}->kernel transitions (Charles Mirabile) [2047817] - arm64: entry: fix non-NMI kernel<->kernel transitions (Charles Mirabile) [2047817] - arm64: ptrace: prepare for EL1 irq/rcu tracking (Charles Mirabile) [2047817] - arm64: entry: fix non-NMI user<->kernel transitions (Charles Mirabile) [2047817] - arm64: entry: move el1 irq/nmi logic to C (Charles Mirabile) [2047817] - arm64: entry: prepare ret_to_user for function call (Charles Mirabile) [2047817] - arm64: entry: move enter_from_user_mode to entry-common.c (Charles Mirabile) [2047817] - arm64: entry: mark entry code as noinstr (Charles Mirabile) [2047817] - arm64: mark idle code as noinstr (Charles Mirabile) [2047817] - arm64: add C wrappers for SET_PSTATE_*() (Charles Mirabile) [2047817] - kgdb: Honour the kprobe blocklist when setting breakpoints (Charles Mirabile) [2047817] - genirq: Add stub for set_handle_irq() when !GENERIC_IRQ_MULTI_HANDLER (Charles Mirabile) [2047817] - arm64: Improve diagnostics when trapping BRK with FAULT_BRK_IMM (Charles Mirabile) [2047817] - arm64/entry: deduplicate SW PAN entry/exit routines (Charles Mirabile) [2047817] - arm64: Prepare arch_nmi_enter() for recursion (Charles Mirabile) [2047817] - arm64: Make debug exception handlers visible from RCU (Charles Mirabile) [2047817] - irqchip: Remove unneeded select IRQ_DOMAIN (Charles Mirabile) [2047817] - net/mlx5e: TC, Fix using eswitch mapping in nic mode (Amir Tzin) [2166015] - net/mlx5e: Use query_special_contexts cmd only once per mdev (Amir Tzin) [2166015] - net/mlx5e: Move Ethernet driver debugfs to profile init callback (Amir Tzin) [2166015] - net/mlx5e: Do not update SBCM when prio2buffer command is invalid (Amir Tzin) [2166015] - RDMA/mlx5: Use correct device num_ports when modify DC (Amir Tzin) [2166015] - net/mlx5e: Nullify table pointer when failing to create (Amir Tzin) [2166015] - net/mlx5e: Fix error flow in representor failing to add vport rx rule (Amir Tzin) [2166015] - net/mlx5: E-switch, Don't destroy indirect table in split rule (Amir Tzin) [2166015] - net/mlx5: E-switch, Create per vport table based on devlink encap mode (Amir Tzin) [2166015] - net/mlx5e: Don't clone flow post action attributes second time (Amir Tzin) [2166015] - Revert "net/mlx5: Expose vnic diagnostic counters for eswitch managed vports" (Amir Tzin) [2166015] - RDMA/mlx5: Fix flow counter query via DEVX (Amir Tzin) [2166015] - RDMA/mlx5: Check pcie_relaxed_ordering_enabled() in UMR (Amir Tzin) [2166015] - net/mlx5: Fix wrong comment (Amir Tzin) [2166015] - net/mlx5e: Coding style fix, add empty line (Amir Tzin) [2166015] - RDMA/mlx5: Coding style fix reported by checkpatch (Amir Tzin) [2166015] - net/mlx5e: Release the label when replacing existing ct entry (Amir Tzin) [2165914] - net/mlx5: Release tunnel device after tc update skb (Amir Tzin) [2166015] - Revert "net/mlx5: Expose steering dropped packets counter" (Amir Tzin) [2166015] - Revert "net/mlx5e: Don't use termination table when redundant" (Amir Tzin) [2166015] - Revert "net/mlx5: Enable management PF initialization" (Amir Tzin) [2166015] - net/mlx5: E-Switch, Fix an Oops in error handling code (Amir Tzin) [2166015] - net/mlx5: Read the TC mapping of all priorities on ETS query (Amir Tzin) [2166015] - net/mlx5e: Initialize link speed to zero (Amir Tzin) [2166015] - net/mlx5: Fix steering rules cleanup (Amir Tzin) [2166015] - net/mlx5e: Block entering switchdev mode with ns inconsistency (Amir Tzin) [2166015 2166018] - net/mlx5e: Set uplink rep as NETNS_LOCAL (Amir Tzin) [2166015] - IB/mlx5: Add support for 400G_8X lane speed (Amir Tzin) [2166015] - net/mlx5e: TC, Remove error message log print (Amir Tzin) [2166015] - net/mlx5e: TC, fix cloned flow attribute (Amir Tzin) [2166015] - net/mlx5e: TC, fix missing error code (Amir Tzin) [2166015] - net/sched: TC, fix raw counter initialization (Amir Tzin) [2166015] - net/mlx5: Set BREAK_FW_WAIT flag first when removing driver (Amir Tzin) [2166013] - net/mlx5e: Fix cleanup null-ptr deref on encap lock (Amir Tzin) [2166013] - net/mlx5: E-switch, Fix missing set of split_count when forward to ovs internal port (Amir Tzin) [2166013] - net/mlx5: E-switch, Fix wrong usage of source port rewrite in split rules (Amir Tzin) [2166013 2166018] - net/mlx5: Disable eswitch before waiting for VF pages (Amir Tzin) [2166013] - net/mlx5: Fix setting ec_function bit in MANAGE_PAGES (Amir Tzin) [2166013] - net/mlx5e: Don't cache tunnel offloads capability (Amir Tzin) [2166013] - net/mlx5e: Remove hairpin write debugfs files (Amir Tzin) [2166015] - net/mlx5: Remove NULL check before dev_{put, hold} (Amir Tzin) [2166015] - net/mlx5e: TC, Set CT miss to the specific ct action instance (Amir Tzin) [2166015] - net/mlx5e: Rename CHAIN_TO_REG to MAPPED_OBJ_TO_REG (Amir Tzin) [2166015] - net/mlx5: Refactor tc miss handling to a single function (Amir Tzin) [2166015] - net/mlx5: Kconfig: Make tc offload depend on tc skb extension (Amir Tzin) [2166015] - net/sched: Rename user cookie and act cookie (mlx5 hunk only) (Amir Tzin) [2166015] - IB/mlx5: Extend debug control for CC parameters (Amir Tzin) [2166015] - net/mlx5e: Allow offloading of ct 'new' match (Amir Tzin) [2165914 2166015] - net/mlx5e: Implement CT entry update (Amir Tzin) [2165914 2166015] - net: flow_offload: provision conntrack info in ct_metadata(mlx5 hunks only) (Amir Tzin) [2165914 2166015] - net/mlx5e: Fix outdated TLS comment (Amir Tzin) [2166015] - net/mlx5e: Remove unused function mlx5e_sq_xmit_simple (Amir Tzin) [2166015] - net/mlx5: Simplify eq list traversal (Amir Tzin) [2166015] - net/mlx5e: Switch to using napi_build_skb() (Amir Tzin) [2166015] - RDMA/mlx5: Use query_special_contexts for mkeys (Amir Tzin) [2166015] - net/mlx5e: Use query_special_contexts for mkeys (Amir Tzin) [2166015] - net/mlx5: Change define name for 0x100 lkey value (Amir Tzin) [2166015] - net/mlx5: Expose bits for querying special mkeys (Amir Tzin) [2166015] - RDMA/mlx5: Use rdma_umem_for_each_dma_block() (Amir Tzin) [2166015] - net/mlx5e: TC, fix return value check in mlx5e_tc_act_stats_create() (Amir Tzin) [2166015] - net/mlx5e: TC, support per action stats (Amir Tzin) [2166015] - net/mlx5e: TC, map tc action cookie to a hw counter (Amir Tzin) [2166015] - net/mlx5e: TC, store tc action cookies per attr (Amir Tzin) [2166015] - net/mlx5e: TC, add hw counter to branching actions (Amir Tzin) [2166015] - RDMA/mlx5: Track netdev to avoid deadlock during netdev notifier unregister (Amir Tzin) [2166015] - net/mlx5e: Propagate an internal event in case uplink netdev changes (Amir Tzin) [2166015] - net/mlx5e: Fix trap event handling (Amir Tzin) [2166015] - net/mlx5: fw_tracer, Add support for unrecognized string (Amir Tzin) [2166015] - net/mlx5: fw_tracer, Add support for strings DB update event (Amir Tzin) [2166015] - net/mlx5: fw_tracer, allow 0 size string DBs (Amir Tzin) [2166015] - net/mlx5: fw_tracer: Fix debug print (Amir Tzin) [2166015] - net/mlx5: fs, Remove redundant assignment of size (Amir Tzin) [2166015] - net/mlx5: fs_core, Remove redundant variable err (Amir Tzin) [2166015] - net/mlx5: fs, Remove redundant vport_number assignment (Amir Tzin) [2166015] - net/mlx5e: Remove redundant code for handling vlan actions (Amir Tzin) [2166015 2166018] - net/mlx5: fw reset: Skip device ID check if PCI link up failed (Amir Tzin) [2166015] - net/mlx5: Remove redundant health work lock (Amir Tzin) [2166015] - mlx5: reduce stack usage in mlx5_setup_tc (Amir Tzin) [2166015] - net/mlx5e: Trigger NAPI after activating an SQ (Amir Tzin) [2166015] - net/mlx5e: IPoIB, Add support for XDR speed (Amir Tzin) [2166015] - net/mlx5: Lag, Move mpesw related definitions to mpesw.h (Amir Tzin) [2166015] - net/mlx5: Lag, Use flag to check for shared FDB mode (Amir Tzin) [2166015] - net/mlx5: Lag, Remove redundant bool allocation on the stack (Amir Tzin) [2166015] - net/mlx5: Lag, Use mlx5_lag_dev() instead of derefering pointers (Amir Tzin) [2166015] - net/mlx5: Lag, Update multiport eswitch check to log an error (Amir Tzin) [2166015] - net/mlx5: Add firmware support for MTUTC scaled_ppm frequency adjustments (Amir Tzin) [2166015] - net/mlx5: Add hardware extended range support for PTP adjtime and adjphase (Amir Tzin) [2166015] - net/mlx5: Add adjphase function to support hardware-only offset control (Amir Tzin) [2166015] - net/mlx5: Geneve, Fix handling of Geneve object id as error code (Amir Tzin) [2166015] - net/mlx5e: Verify flow_source cap before using it (Amir Tzin) [2166015 2166018] - net/mlx5: ECPF, wait for VF pages only after disabling host PFs (Amir Tzin) [2166015] - mlx5: fix possible ptp queue fifo use-after-free (Amir Tzin) [2166015] - mlx5: fix skb leak while fifo resync and push (Amir Tzin) [2166015] - net/mlx5: Fix memory leak in error flow of port set buffer (Amir Tzin) [2166015] - net/mlx5e: Remove incorrect debugfs_create_dir NULL check in TLS (Amir Tzin) [2166015] - net/mlx5e: Remove incorrect debugfs_create_dir NULL check in hairpin (Amir Tzin) [2166015] - net/mlx5: Enhance debug print in page allocation failure (Amir Tzin) [2166015] - net/mlx5e: kTLS, Improve connection rate by using fast update encryption key (Amir Tzin) [2166015] - net/mlx5: Keep only one bulk of full available DEKs (Amir Tzin) [2166015] - net/mlx5: Add async garbage collector for DEK bulk (Amir Tzin) [2166015] - net/mlx5: Reuse DEKs after executing SYNC_CRYPTO command (Amir Tzin) [2166015] - net/mlx5: Use bulk allocation for fast update encryption key (Amir Tzin) [2166015] - net/mlx5: Add bulk allocation and modify_dek operation (Amir Tzin) [2166015] - net/mlx5: Add support SYNC_CRYPTO command (Amir Tzin) [2166015] - net/mlx5: Add new APIs for fast update encryption key (Amir Tzin) [2166015] - net/mlx5: Refactor the encryption key creation (Amir Tzin) [2166015] - net/mlx5: Add const to the key pointer of encryption key creation (Amir Tzin) [2166015] - net/mlx5: Prepare for fast crypto key update if hardware supports it (Amir Tzin) [2166015] - net/mlx5: Change key type to key purpose (Amir Tzin) [2166015] - net/mlx5: Add IFC bits and enums for crypto key (Amir Tzin) [2166015] - net/mlx5: Add IFC bits for general obj create param (Amir Tzin) [2166015] - net/mlx5: Header file for crypto (Amir Tzin) [2166015] - net/mlx5e: Use read lock for eswitch get callbacks (Amir Tzin) [2166015 2166018] - net/mlx5e: Remove redundant allocation of spec in create indirect fwd group (Amir Tzin) [2165994 2166015] - net/mlx5e: Support Geneve and GRE with VF tunnel offload (Amir Tzin) [2165994 2166015 2166018] - net/mlx5: E-Switch, Fix typo for egress (Amir Tzin) [2166015] - net/mlx5e: Warn when destroying mod hdr hash table that is not empty (Amir Tzin) [2166015] - net/mlx5e: TC, Use common function allocating flow mod hdr or encap mod hdr (Amir Tzin) [2166015] - net/mlx5e: TC, Add tc prefix to attach/detach hdr functions (Amir Tzin) [2166015] - net/mlx5e: TC, Pass flow attr to attach/detach mod hdr functions (Amir Tzin) [2166015] - net/mlx5: E-switch, Remove redundant comment about meta rules (Amir Tzin) [2166015] - net/mlx5: Suppress error logging on UCTX creation (Amir Tzin) [2166015] - net/mlx5e: Suppress Send WQEBB room warning for PAGE_SIZE >= 16KB (Amir Tzin) [2166015] - net/mlx5e: Use kzalloc() in mlx5e_accel_fs_tcp_create() (Amir Tzin) [2166015] - net/mlx5: remove redundant ret variable (Amir Tzin) [2166015] - net/mlx5e: Replace 0-length array with flexible array (Amir Tzin) [2166015] - net/mlx5e: Replace zero-length array with flexible-array member (Amir Tzin) [2166015] - net/mlx5: Prevent high-rate FW commands from populating all slots (Amir Tzin) [2166015] - net/mlx5: Introduce and use opcode getter in command interface (Amir Tzin) [2166015] - net/mlx5: Enable management PF initialization (Amir Tzin) [2166015] - net/mlx5e: Add hairpin debugfs files (Amir Tzin) [2166015] - net/mlx5e: Add flow steering debugfs directory (Amir Tzin) [2166015] - net/mlx5e: Add hairpin params structure (Amir Tzin) [2166015] - net/mlx5e: kTLS, Add debugfs (Amir Tzin) [2166015] - net/mlx5e: Add Ethernet driver debugfs (Amir Tzin) [2166015] - net/mlx5e: Update shared buffer along with device buffer changes (Amir Tzin) [2166015] - net/mlx5e: Add API to query/modify SBPR and SBCM registers (Amir Tzin) [2166015] - net/mlx5: Expose shared buffer registers bits and structs (Amir Tzin) [2166015] - net/mlx5: Serialize module cleanup with reload and remove (Amir Tzin) [2166013] - net/mlx5: fw_tracer, Zero consumer index when reloading the tracer (Amir Tzin) [2166013] - net/mlx5: fw_tracer, Clear load bit when freeing string DBs buffers (Amir Tzin) [2166013] - net/mlx5: Expose SF firmware pages counter (Amir Tzin) [2166013] - net/mlx5: Store page counters in a single array (Amir Tzin) [2166013] - net/mlx5e: IPoIB, Show unknown speed instead of error (Amir Tzin) [2166013] - net/mlx5e: Fix crash unsetting rx-vlan-filter in switchdev mode (Amir Tzin) [2055530 2166013] - net/mlx5: Bridge, fix ageing of peer FDB entries (Amir Tzin) [2166013] - net/mlx5: DR, Fix potential race in dr_rule_create_rule_nic (Amir Tzin) [2166013] - net/mlx5e: Update rx ring hw mtu upon each rx-fcs flag change (Amir Tzin) [2166013] - net/mlx5e: Don't support encap rules with gbp option (Amir Tzin) [2166013] - net/mlx5e: Fix memory leak on updating vport counters (Amir Tzin) [2165677 2166013] - net/mlx5e: TC, Restore pkt rate policing support (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, ignore match level for post meter rules (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Fix 'stack frame size exceeds limit' error in dr_rule (Amir Tzin) [2166013] - net/mlx5: Lag, fix failure to cancel delayed bond work (Amir Tzin) [2166013] - net/mlx5e: Fix RX reporter for XSK RQs (Amir Tzin) [2166013] - net/mlx5: Expose steering dropped packets counter (Amir Tzin) [2166013] - net/mlx5: Refactor and expand rep vport stat group (Amir Tzin) [2165677 2166013] - net/mlx5e: TC, add support for meter mtu offload (Amir Tzin) [2165893 2166013 2166018] - net/mlx5e: meter, add mtu post meter tables (Amir Tzin) [2165893 2166013] - net/mlx5e: meter, refactor to allow multiple post meter tables (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Add support for range match action (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Add function that tells if STE miss addr has been initialized (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Some refactoring of miss address handling (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Manage definers with refcounts (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Handle FT action in a separate function (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Rework is_fw_table function (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Add functions to create/destroy MATCH_DEFINER general object (Amir Tzin) [2165893 2166013] - net/mlx5: fs, add match on ranges API (Amir Tzin) [2165893 2166013] - net/mlx5: mlx5_ifc updates for MATCH_DEFINER general object (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, allow meter jump control action (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, init post meter rules with branching attributes (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, rename post_meter actions (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, initialize branching action with target attr (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, initialize branch flow attributes (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, set control params for branching actions (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, validate action list per attribute (Amir Tzin) [2165893 2166013] - net/mlx5e: Adjust function actions_match_supported() to upstream. (Amir Tzin) [2166006] - net/mlx5e: TC, add terminating actions (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, reuse flow attribute post parser processing (Amir Tzin) [2165893 2166013] - net/mlx5: fs, assert null dest pointer when dest_num is 0 (Amir Tzin) [2165893 2166013] - net/mlx5e: E-Switch, handle flow attribute with no destinations (Amir Tzin) [2165893 2166013 2166018] - RDMA/mlx5: Remove not-used IB_FLOW_SPEC_IB define (Amir Tzin) [2166013] - RDMA/mlx5: no need to kfree NULL pointer (Amir Tzin) [2166013] - net/mlx5e: TC, Add offload support for trap with additional actions (Amir Tzin) [2166013 2166018] - net/mlx5e: Do early return when setup vports dests for slow path flow (Amir Tzin) [2166013 2166018] - net/mlx5e: Support devlink reload of IPsec core (Amir Tzin) [2166013] - net/mlx5: Remove redundant check (Amir Tzin) [2166013] - net/mlx5e: Don't use termination table when redundant (Amir Tzin) [2166013] - net/mlx5: Remove unused ctx variables (Amir Tzin) [2166013] - net/mlx5e: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper (Amir Tzin) [2166013] - net/mlx5e: Remove unneeded io-mapping.h #include (Amir Tzin) [2166013] - net/mlx5e: CT, optimize pre_ct table lookup (Amir Tzin) [2166013] - net/mlx5e: kTLS, Use a single async context object per a callback bulk (Amir Tzin) [2166013] - net/mlx5e: kTLS, Remove unnecessary per-callback completion (Amir Tzin) [2166013] - net/mlx5e: kTLS, Remove unused work field (Amir Tzin) [2166013] - net/mlx5e: TC, Remove redundant WARN_ON() (Amir Tzin) [2166013] - net/mlx5e: Add error flow when failing update_rx (Amir Tzin) [2166013] - net/mlx5e: Move params kernel log print to probe function (Amir Tzin) [2166013] - net/mlx5e: Support enhanced CQE compression (Amir Tzin) [2166013] - net/mlx5e: Use clamp operation instead of open coding it (Amir Tzin) [2166013] - net/mlx5e: remove unused list in arfs (Amir Tzin) [2166013] - net/mlx5: Expose vhca_id to debugfs (Amir Tzin) [2166013] - net/mlx5: Unregister traps on driver unload flow (Amir Tzin) [2166013] - net/mlx5: Fix spelling mistake "destoy" -> "destroy" (Amir Tzin) [2166013] - net/mlx5: Bridge, Use debug instead of warn if entry doesn't exists (Amir Tzin) [2166013] - RDMA/mlx5: Change debug log level for remote access error syndromes (Amir Tzin) [2166013] - ptp: mlx5: convert to .adjfine and adjust_by_scaled_ppm (Amir Tzin) [2166013] - net/mlx5: DR, Remove the buddy used_list (Amir Tzin) [2166013] - net/mlx5: DR, Keep track of hot ICM chunks in an array instead of list (Amir Tzin) [2166013] - net/mlx5: DR, Lower sync threshold for ICM hot memory (Amir Tzin) [2166013] - net/mlx5: DR, Allocate htbl from its own slab allocator (Amir Tzin) [2166013] - net/mlx5: DR, Allocate icm_chunks from their own slab allocator (Amir Tzin) [2166013] - net/mlx5: DR, Manage STE send info objects in pool (Amir Tzin) [2166013] - net/mlx5: DR, In rehash write the line in the entry immediately (Amir Tzin) [2166013] - net/mlx5: DR, Handle domain memory resources init/uninit separately (Amir Tzin) [2166013] - net/mlx5: DR, Initialize chunk's ste_arrays at chunk creation (Amir Tzin) [2166013] - net/mlx5: DR, For short chains of STEs, avoid allocating ste_arr dynamically (Amir Tzin) [2166013] - net/mlx5: DR, Remove unneeded argument from dr_icm_chunk_destroy (Amir Tzin) [2166013] - net/mlx5: DR, Check device state when polling CQ (Amir Tzin) [2166013] - net/mlx5: DR, In destroy flow, free resources even if FW command failed (Amir Tzin) [2166013] - net/mlx5: Add support for NPPS with real time mode (Amir Tzin) [2166006] - net/mlx5: Expose NPPS related registers (Amir Tzin) [2166006] - net/mlx5e: Use kvfree() in mlx5e_accel_fs_tcp_create() (Amir Tzin) [2166006] - net/mlx5e: Remove leftovers from old XSK queues enumeration (Amir Tzin) [2166006] - net/mlx5: Lag, avoid lockdep warnings (Amir Tzin) [2166006] - net/mlx5: Update fw fatal reporter state on PCI handlers successful recover (Amir Tzin) [2166006] - net/mlx5: Make ASO poll CQ usable in atomic context (Amir Tzin) [2166006] - net/mlx5: E-Switch, Return EBUSY if can't get mode lock (Amir Tzin) [2166006] - net/mlx5: E-switch, Don't update group if qos is not enabled (Amir Tzin) [2166006] - net/mlx5: E-Switch, Allow offloading fwd dest flow table with vport (Amir Tzin) [2166006 2166018] - net/mlx5: Set default grace period based on function type (Amir Tzin) [2166006] - net/mlx5: Start health poll at earlier stage of driver load (Amir Tzin) [2166006] - net/mlx5e: Expose rx_oversize_pkts_buffer counter (Amir Tzin) [2166006] - net/mlx5: Remove from FPGA IFC file not-needed definitions (Amir Tzin) [2166006] - net/mlx5: Remove unused structs (Amir Tzin) [2166006] - net/mlx5: Remove unused functions (Amir Tzin) [2166006] - net/mlx5: detect and enable bypass port select flow table (Amir Tzin) [2166006] - net/mlx5: Lag, enable hash mode by default for all NICs (Amir Tzin) [2166006] - net/mlx5: Lag, set active ports if support bypass port select flow table (Amir Tzin) [2166006] - RDMA/mlx5: Don't set tx affinity when lag is in hash mode (Amir Tzin) [2166006] - net/mlx5: add IFC bits for bypassing port select flow table (Amir Tzin) [2166006] - RDMA/mlx5: Move function mlx5_core_query_ib_ppcnt() to mlx5_ib (Amir Tzin) [2166006] - IB/mlx5: Support querying eswitch functions from DEVX (Amir Tzin) [2166006] - net: ethernet: move from strlcpy with unused retval to strscpy (mlx5 hunks only) (Amir Tzin) [2166006] - net/mlx5e: Do not use err uninitialized in mlx5e_rep_add_meta_tunnel_rule() (Amir Tzin) [2166006] - IB/mlx5: Remove duplicate header inclusion related to ODP (Amir Tzin) [2166006] - net/mlx5: TC, Add support for SF tunnel offload (Amir Tzin) [2166006] - net/mlx5: E-Switch, Move send to vport meta rule creation (Amir Tzin) [2166006 2166018] - net/mlx5: E-Switch, Split creating fdb tables into smaller chunks (Amir Tzin) [2166006 2166018] - net/mlx5: E-Switch, Add default drop rule for unmatched packets (Amir Tzin) [2166006 2166018] - net/mlx5: Adjust function mlx5_eswitch_inline_mode_get() location (Amir Tzin) [2166006] - net/mlx5e: Completely eliminate priv from fs.h (Amir Tzin) [2166006] - net/mlx5e: Make all ttc functions of en_fs get fs struct as argument (Amir Tzin) [2166006] - net/mlx5e: Make flow steering arfs independent of priv (Amir Tzin) [2166006] - net/mlx5e: Introduce flow steering debug macros (Amir Tzin) [2166006] - net/mlx5e: Separate ethtool_steering from fs.h and make private (Amir Tzin) [2166006] - net/mlx5e: Directly get flow_steering struct as input when init/cleanup ethtool steering (Amir Tzin) [2166006] - Revert "[netdrv] net/mlx5e: Fix missing cleanup of ethtool steering during rep rx cleanup" (Amir Tzin) [2166006] - net/mlx5e: Convert ethtool_steering member of flow_steering struct to pointer (Amir Tzin) [2166006] - net/mlx5e: Drop priv argument of ptp function in en_fs (Amir Tzin) [2166006] - net/mlx5e: Decouple fs_tcp from en.h (Amir Tzin) [2166006] - net/mlx5e: Decouple fs_tt_redirect from en.h (Amir Tzin) [2166006] - net/mlx5e: Introduce flow steering API (Amir Tzin) [2166006] - IB/mlx5: Call io_stop_wc() after writing to WC MMIO (Amir Tzin) [2166006]- mm: page_counter: mitigate consequences of a page_counter underflow (Ty Berry) [2196726] - ceph: fix decoding of client session messages flags (Xiubo Li) [2213062] - net: stmmac: propagate feature flags to vlan (Corinna Vinschen) [2174701] - KVM: Avoid illegal stage2 mapping on invalid memory slot (Gavin Shan) [2190376] - perf/x86/rapl: Add support for Intel Emerald Rapids (Michael Petlan) [2165766] - s390/dasd: Use correct lock while counting channel queue length (Tobias Huschle) [2215889] - inotify: show inotify mask flags in proc fdinfo (Andrey Albershteyn) [2163455] - scsi: scsi_transport_fc: Add an additional flag to fc_host_fpin_rcv() (Ewan D. Milne) [2169276] - perf bench: Fix numa bench to fix usage of affinity for machines with #CPUs > 1K (Michael Petlan) [2134284] - perf bench: Fix numa testcase to check if CPU used to bind task is online (Michael Petlan) [2134284] - powerpc/64s: Make POWER10 and later use pause_short in cpu_relax loops (avchouha) [2188343] - powerpc: add ISA v3.0 / v3.1 wait opcode macro (avchouha) [2188343] - scsi: lpfc: Account for fabric domain ctlr device loss recovery (Dick Kennedy) [2213027] - scsi: lpfc: Clear NLP_IN_DEV_LOSS flag if already in rediscovery (Dick Kennedy) [2213027] - scsi: lpfc: Fix use-after-free rport memory access in lpfc_register_remote_port() (Dick Kennedy) [2213027] - PCI: hv: Add a per-bus mutex state_lock (Vitaly Kuznetsov) [2184863] - Revert "PCI: hv: Fix a timing issue which causes kdump to fail occasionally" (Vitaly Kuznetsov) [2184863] - PCI: hv: Remove the useless hv_pcichild_state from struct hv_pci_dev (Vitaly Kuznetsov) [2184863] - PCI: hv: Fix a race condition in hv_irq_unmask() that can cause panic (Vitaly Kuznetsov) [2184863] - PCI: hv: Fix a race condition bug in hv_pci_query_relations() (Vitaly Kuznetsov) [2184863] - RHEL-only: KVM: arm64: Fixes comments (Shaoqin Huang) [2202988] - KVM: arm64: Fix buffer overflow in kvm_arm_set_fw_reg() (Shaoqin Huang) [2202988] - KVM: selftests: arm64: Fix pte encode/decode for PA bits > 48 (Shaoqin Huang) [2202988] - KVM: arm64: selftests: Use FIELD_GET() to extract ID register fields (Shaoqin Huang) [2202988] - tools: Copy bitfield.h from the kernel sources (Shaoqin Huang) [2202988] - x86/platform/uv: Update UV[23] platform code for SNC (Frank Ramsay) [2163467] - x86/platform/uv: Remove remaining BUG_ON() and BUG() calls (Frank Ramsay) [2163467] - x86/platform/uv: UV support for sub-NUMA clustering (Frank Ramsay) [2163467] - x86: uv: uv_hub.h: Delete duplicated word (Frank Ramsay) [2163467] - x86/platform/uv: Helper functions for allocating and freeing conversion tables (Frank Ramsay) [2163467] - x86/platform/uv: When searching for minimums, start at INT_MAX not 99999 (Frank Ramsay) [2163467] - x86/platform/uv: Fix printed information in calc_mmioh_map (Frank Ramsay) [2163467] - x86/platform/uv: Introduce helper function uv_pnode_to_socket. (Frank Ramsay) [2163467] - x86/platform/uv: Add platform resolving #defines for misc GAM_MMIOH_REDIRECT* (Frank Ramsay) [2163467] - IB/hfi1: Fix sdma.h tx->num_descs off-by-one errors (Izabela Bakollari) [2170629] - IB/hfi1: Fix math bugs in hfi1_can_pin_pages() (Izabela Bakollari) [2170629] - IB/hfi1: Restore allocated resources on failed copyout (Izabela Bakollari) [2170629] - IB/hfi1: Use dma_mmap_coherent for matching buffers (Izabela Bakollari) [2170629] - IB/hfi1: Update RMT size calculation (Izabela Bakollari) [2170629] - IB/hfi1: Split IB counter allocation (Izabela Bakollari) [2170629] - IB/hfi1: Improve TID validity checking (Izabela Bakollari) [2170629] - IB/hfi1: Consolidate the creation of user TIDs (Izabela Bakollari) [2170629] - IB/hfi1: Assign npages earlier (Izabela Bakollari) [2170629] - IB/hfi1: Fix expected receive setup error exit issues (Izabela Bakollari) [2170629] - IB/hfi1: Reserve user expected TIDs (Izabela Bakollari) [2170629] - IB/hfi1: Reject a zero-length user expected buffer (Izabela Bakollari) [2170629] - RDMA/hfi1: Fix doc for hfi1_free_ctxt (Izabela Bakollari) [2170629] - RDMA/hfi1: use sysfs_emit() to instead of scnprintf() (Izabela Bakollari) [2170629] - RDMA/hfi1: Fix error return code in parse_platform_config() (Izabela Bakollari) [2170629] - IB/hfi1: Switch to netif_napi_add() (Izabela Bakollari) [2170629] - RDMA/hfi: Decrease PCI device reference count in error path (Izabela Bakollari) [2170629] - RDMA/hfi1: don't pass bogus GFP_ flags to dma_alloc_coherent (Izabela Bakollari) [2170629] - IB/hfi1: Replace 1-element array with singleton (Izabela Bakollari) [2170629] - RDMA/opa_vnic: fix spelling typo in comment (Izabela Bakollari) [2170629] - IB/hfi1: Use skb_put_data() instead of skb_put/memcpy pair (Izabela Bakollari) [2170629] - IB/hfi1: remove rc_only_opcode and uc_only_opcode declarations (Izabela Bakollari) [2170629] - RDMA/hfi1: fix repeated words in comments (Izabela Bakollari) [2170629] - RDMA/hfi1: Remove the unneeded result variable (Izabela Bakollari) [2170629] - IB: move from strlcpy with unused retval to strscpy (Izabela Bakollari) [2170629] - perf intel-pt: Add documentation for Event Trace and TNT disable (Michael Petlan) [2154066] - perf scripts python: export-to-postgresql.py: Export all sample flags (Michael Petlan) [2154066] - perf scripts python: export-to-sqlite.py: Export all sample flags (Michael Petlan) [2154066] - perf scripting python: Add all sample flags to DB export (Michael Petlan) [2154066] - perf scripts python: intel-pt-events.py: Add Event Trace (Michael Petlan) [2154066] - perf script: Display new D (Intr Disabled) and t (Intr Toggle) flags (Michael Petlan) [2154066] - perf script: Display Intel PT iflag synthesized event (Michael Petlan) [2154066] - perf script: Display Intel PT CFE (Control Flow Event) / EVD (Event Data) synthesized event (Michael Petlan) [2154066] - perf intel-pt: Force 'quick' mode when TNT (Taken/Not-Taken packet) is disabled (Michael Petlan) [2154066] - perf intel-pt: Synthesize new D (Intr Disabled) and t (Intr Toggle) flags (Michael Petlan) [2154066] - perf intel-pt: Synthesize iflag event (Michael Petlan) [2154066] - perf intel-pt: Synthesize CFE (Control Flow Event) / EVD (Event Data) event (Michael Petlan) [2154066] - perf intel-pt: Record Event Trace capability flag (Michael Petlan) [2154066] - perf auxtrace: Add itrace option "I" (Michael Petlan) [2154066] - perf tools: Define new D (Intr Disable) and t (Intr Toggle) flags (Michael Petlan) [2154066] - perf tools: Define Intel PT iflag synthesized event (Michael Petlan) [2154066] - perf tools: Define Intel PT CFE (Control Flow Event) / EVD (Event Data) event (Michael Petlan) [2154066] - perf intel-pt: decoder: Add MODE.Exec IFLAG processing (Michael Petlan) [2154066] - perf intel-pt: decoder: Add CFE (Control Flow Event) and EVD (Event Data) processing (Michael Petlan) [2154066] - perf intel-pt: decoder: Factor out clearing of FUP (Flow Update) event variables (Michael Petlan) [2154066] - perf intel-pt: Fix error timestamp setting on the decoder error path (Michael Petlan) [2154066] - perf intel-pt: Fix missing 'instruction' events with 'q' option (Michael Petlan) [2154066] - perf intel-pt: Fix next 'err' value, walking trace (Michael Petlan) [2154066] - perf intel-pt: Fix state setting when receiving overflow (OVF) packet (Michael Petlan) [2154066] - perf intel-pt: Fix intel_pt_fup_event() assumptions about setting state type (Michael Petlan) [2154066] - perf intel-pt: Fix sync state when a PSB (synchronization) packet is found (Michael Petlan) [2154066] - perf intel-pt: Fix some PGE (packet generation enable/control flow packets) usage (Michael Petlan) [2154066] - perf intel-pt: decoder: Add config bit definitions (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder: Add MODE.Exec IFLAG bit (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder: Add CFE and EVD packets (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder: Remove misplaced linebreak (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder-test: Fix scope of test_data (Michael Petlan) [2154066] - perf/x86/intel/pt: Add a capability and config bit for disabling TNTs (Michael Petlan) [2154066] - perf/x86/intel/pt: Add a capability and config bit for event tracing (Michael Petlan) [2154068] - container_of: Update header inclusions (Desnes Nunes) [2196368] - media: netup_unidvb: fix irq init by register it at the end of probe (Desnes Nunes) [2196368] - media: dvb-usb: dw2102: fix uninit-value in su3000_read_mac_address (Desnes Nunes) [2196368] - media: dvb-usb: digitv: fix null-ptr-deref in digitv_i2c_xfer() (Desnes Nunes) [2196368] - media: dvb-usb-v2: rtl28xxu: fix null-ptr-deref in rtl28xxu_i2c_xfer (Desnes Nunes) [2196368] - media: dvb-usb-v2: ce6230: fix null-ptr-deref in ce6230_i2c_master_xfer() (Desnes Nunes) [2196368] - media: dvb-usb-v2: ec168: fix null-ptr-deref in ec168_i2c_xfer() (Desnes Nunes) [2196368] - media: dvb-usb: az6027: fix three null-ptr-deref in az6027_i2c_xfer() (Desnes Nunes) [2196368] - Revert "usb: xhci-pci: Set PROBE_PREFER_ASYNCHRONOUS" (Desnes Nunes) [2196368] - usb: typec: Don't try to register component master without components (Desnes Nunes) [2196368] - usb: typec: Only attempt to link USB ports if there is fwnode (Desnes Nunes) [2196368] - usb: core: Unregister device on component_add() failure (Desnes Nunes) [2196368] - usb: core: add quirk for Alcor Link AK9563 smartcard reader (Desnes Nunes) [2196368] - USB: new quirk for Dell Gen 2 devices (Desnes Nunes) [2196368] - USB: quirks: add STRING quirk for VCOM device (Desnes Nunes) [2196368] - USB: quirks: add a Realtek card reader (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Fix probe pin assign check (Desnes Nunes) [2196368] - usb: typec: ucsi: Don't attempt to resume the ports before they exist (Desnes Nunes) [2196368] - USB: misc: iowarrior: fix up header size for USB_DEVICE_ID_CODEMERCS_IOW100 (Desnes Nunes) [2196368] - usb: host: ehci-fsl: Fix module alias (Desnes Nunes) [2196368] - usb: core: hub: disable autosuspend for TI TUSB8041 (Desnes Nunes) [2196368] - USB: fix misleading usb_set_intfdata() kernel doc (Desnes Nunes) [2196368] - usb: typec: tcpm: Fix altmode re-registration causes sysfs create fail (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Use proper macro for pin assignment check (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Fix pin assignment calculation (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Add pin assignment helper (Desnes Nunes) [2196368] - usb: ucsi: Ensure connector delayed work items are flushed (Desnes Nunes) [2196368] - xhci: Detect lpm incapable xHC USB3 roothub ports from ACPI tables (Desnes Nunes) [2196368] - usb: acpi: add helper to check port lpm capability using acpi _DSM (Desnes Nunes) [2196368] - xhci: Add a flag to disable USB3 lpm on a xhci root port level. (Desnes Nunes) [2196368] - xhci: Add update_hub_device override for PCI xHCI hosts (Desnes Nunes) [2196368] - xhci: Fix null pointer dereference when host dies (Desnes Nunes) [2196368] - usb: xhci: Check endpoint is valid before dereferencing it (Desnes Nunes) [2196368] - xhci-pci: set the dma max_seg_size (Desnes Nunes) [2196368] - usb-storage: apply IGNORE_UAS only for HIKSEMI MD202 on RTL9210 (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05CN modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05CN (SG) modem (Desnes Nunes) [2196368] - USB: serial: cp210x: add SCALANCE LPE-9000 device id (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EC200U modem (Desnes Nunes) [2196368] - USB: serial: qcserial: add EM9191 QDL support (Desnes Nunes) [2196368] - USB: serial: option: add prod. id for Quectel EG91 (Desnes Nunes) [2196368] - USB: serial: option: add Telit LE910Cx composition 0x1204 (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G (RS) modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G (GR) modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G (CS) modem (Desnes Nunes) [2196368] - thunderbolt: Disable XDomain lane 1 only in software connection manager (Desnes Nunes) [2196368] - thunderbolt: Use correct function to calculate maximum USB3 link rate (Desnes Nunes) [2196368] - thunderbolt: Do not call PM runtime functions in tb_retimer_scan() (Desnes Nunes) [2196368] - Revert "usb: ulpi: defer ulpi_register on ulpi_read_id timeout" (Desnes Nunes) [2196368] - thunderbolt: Do not report errors if on-board retimers are found (Desnes Nunes) [2196368] - treewide: Convert del_timer*() to timer_shutdown*() (Desnes Nunes) [2196368] - USB: core: export usb_cache_string() (Desnes Nunes) [2196368] - usb: ulpi: defer ulpi_register on ulpi_read_id timeout (Desnes Nunes) [2196368] - usb: storage: Add check for kcalloc (Desnes Nunes) [2196368] - USB: sisusbvga: use module_usb_driver() (Desnes Nunes) [2196368] - USB: sisusbvga: rename sisusb.c to sisusbvga.c (Desnes Nunes) [2196368] - USB: sisusbvga: remove console support (Desnes Nunes) [2196368] - media: Switch to use dev_err_probe() helper (Desnes Nunes) [2196368] - media: uvcvideo: Fix memory leak in uvc_gpio_parse (Desnes Nunes) [2196368] - media: usb: pwc-uncompress: Use flex array destination for memcpy() (Desnes Nunes) [2196368] - media: usb: pwc-uncompress: Use struct_size() helper in pwc_decompress() (Desnes Nunes) [2196368] - firmware_loader: fix up to_fw_sysfs() to preserve const (Desnes Nunes) [2196368] - usb.h: take advantage of container_of_const() (Desnes Nunes) [2196368] - device.h: move kobj_to_dev() to use container_of_const() (Desnes Nunes) [2196368] - container_of: add container_of_const() that preserves const-ness of the pointer (Desnes Nunes) [2196368] - driver core: allow kobj_to_dev() to take a const pointer (Desnes Nunes) [2196368] - container_of: remove container_of_safe() (Desnes Nunes) [2196368] - linux/container_of.h: switch to static_assert (Desnes Nunes) [2196368] - media: dvb-usb: m920x: make read-only arrays static const (Desnes Nunes) [2196368] - net: thunderbolt: Use bitwise types in the struct thunderbolt_ip_frame_header (Desnes Nunes) [2196368] - net: thunderbolt: Switch from __maybe_unused to pm_sleep_ptr() etc (Desnes Nunes) [2196368] - USB: serial: f81534: fix division by zero on line-speed change (Desnes Nunes) [2196368] - xhci: remove unused stream_id parameter from xhci_handle_halted_endpoint() (Desnes Nunes) [2196368] - xhci: Prevent infinite loop in transaction errors recovery for streams (Desnes Nunes) [2196368] - xhci: disable U3 suspended ports in S4 hibernate poweroff_late stage (Desnes Nunes) [2196368] - USB: hcd-pci: Fully suspend across freeze/thaw cycle (Desnes Nunes) [2196368] - USB: core: Disable remote wakeup for freeze/quiesce (Desnes Nunes) [2196368] - xhci: export two xhci_hub functions for xhci-pci module usage (Desnes Nunes) [2196368] - xhci: Apply XHCI_RESET_TO_DEFAULT quirk to ADL-N (Desnes Nunes) [2196368] - xhci: print warning when HCE was set (Desnes Nunes) [2196368] - Revert "xhci: Convert to use list_count()" (Desnes Nunes) [2196368] - xhci: Convert to use list_count() (Desnes Nunes) [2196368] - usb: typec: Add partner PD object wrapper (Desnes Nunes) [2196368] - usb: xhci-mtk: fix leakage of shared hcd when fail to set wakeup irq (Desnes Nunes) [2196368] - usb: add usb_set_intfdata() documentation (Desnes Nunes) [2196368] - usb: host: fix a typo in ehci.h (Desnes Nunes) [2196368] - usb: core: hcd: Fix return value check in usb_hcd_setup_local_mem() (Desnes Nunes) [2196368] - usb: typec: ucsi: Resume in separate work (Desnes Nunes) [2196368] - usb: roles: fix of node refcount leak in usb_role_switch_is_parent() (Desnes Nunes) [2196368] - net: thunderbolt: Use kmap_local_page() instead of kmap_atomic() (Desnes Nunes) [2196368] - media: dvb-usb: az6027: fix null-ptr-deref in az6027_i2c_xfer() (Desnes Nunes) [2196368] - media: dvb-usb: dib0700_devices: Remove unused struct dibx090p_adc (Desnes Nunes) [2196368] - media: dib0700: remove orphan dvb_usb_dib0700_ir_proto declaration (Desnes Nunes) [2196368] - media: dvb-usb: fix memory leak in dvb_usb_adapter_init() (Desnes Nunes) [2196368] - media: dvb-core: Enhance shared multi-frontend support (Desnes Nunes) [2196368] - media: docs: fix minor typos (Desnes Nunes) [2196368] - media: dvb-frontends: a8293: fix LNB powerup failure in PCTV 461e (Desnes Nunes) [2196368] - USB: serial: kl5kusb105: drop line-status helper (Desnes Nunes) [2196368] - USB: serial: kl5kusb105: simplify line-status handling (Desnes Nunes) [2196368] - USB: serial: kl5kusb105: clean up line-status handling (Desnes Nunes) [2196368] - USB: serial: cp210x: add support for B0 hangup (Desnes Nunes) [2196368] - USB: serial: cp210x: add Kamstrup RF sniffer PIDs (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel RM520N (Desnes Nunes) [2196368] - USB: serial: ch341: fix lost character on LCR updates (Desnes Nunes) [2196368] - USB: serial: ch314: use usb_control_msg_recv() (Desnes Nunes) [2196368] - USB: serial: option: add support for Cinterion MV32-WA/WB RmNet mode (Desnes Nunes) [2196368] - USB: serial: option: add support for Cinterion MV31 with new baseline (Desnes Nunes) [2196368] - USB: serial: io_ti: add Agilent E5805A support (Desnes Nunes) [2196368] - USB: serial: whiteheat: fix heap overflow in WHITEHEAT_GET_DTR_RTS (Desnes Nunes) [2196368] - USB: serial: cp210x: add PIDs for Kamstrup USB Meter Reader (Desnes Nunes) [2196368] - USB: serial: option: add support for Cinterion MV32-WA/MV32-WB (Desnes Nunes) [2196368] - USB: serial: option: add Telit 0x1057, 0x1058, 0x1075 compositions (Desnes Nunes) [2196368] - USB: serial: option: add Telit FN990 compositions (Desnes Nunes) [2196368] - USB: serial: cp210x: add ID for GW Instek GDM-834x Digital Multimeter (Desnes Nunes) [2196368] - USB: serial: cp210x: add part-number debug printk (Desnes Nunes) [2196368] - USB: serial: option: add Telit LN920 compositions (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM060K modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel RM500K module support (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EC200S-CN module support (Desnes Nunes) [2196368] - USB: serial: pl2303: add support for more HXN (G) types (Desnes Nunes) [2196368] - USB: serial: option: add Telit LE910Cx 0x1250 composition (Desnes Nunes) [2196368] - usb: typec: tipd: Set mode of operation for USB Type-C connector (Desnes Nunes) [2196368] - usb: typec: tipd: Move tps6598x_disconnect error path to its own label (Desnes Nunes) [2196368] - usb: typec: tipd: Fix typec_unregister_port error paths (Desnes Nunes) [2196368] - usb: typec: tipd: Only update power status on IRQ (Desnes Nunes) [2196368] - usb: typec: tipd: Forward plug orientation to typec subsystem (Desnes Nunes) [2196368] - tps6598x: clear int mask on probe failure (Desnes Nunes) [2196368] - usb: typec: tipd: Fix initialization sequence for cd321x (Desnes Nunes) [2196368] - usb: typec: tipd: Fix typo in cd321x_switch_power_state (Desnes Nunes) [2196368] - usb: typec: tipd: Enable event interrupts by default (Desnes Nunes) [2196368] - usb: typec: tipd: Remove FIXME about testing with I2C_FUNC_I2C (Desnes Nunes) [2196368] - usb: typec: tipd: Switch CD321X power state to S0 (Desnes Nunes) [2196368] - usb: typec: tipd: Add support for Apple CD321X (Desnes Nunes) [2196368] - usb: typec: tipd: Add short-circuit for no irqs (Desnes Nunes) [2196368] - usb: typec: tipd: Split interrupt handler (Desnes Nunes) [2196368] - dt-bindings: usb: tps6598x: Add Apple CD321x compatible (Desnes Nunes) [2196368] - dt-bindings: usb: Add TI tps6598x device tree binding documentation (Desnes Nunes) [2196368] - usb: typec: tipd: Remove WARN_ON in tps6598x_block_read (Desnes Nunes) [2196368] - usb: typec: tipd: Add an additional overflow check (Desnes Nunes) [2196368] - usb: typec: tipd: Don't read/write more bytes than required (Desnes Nunes) [2196368] - usb: typec: tipd: Fix spurious fwnode_handle_put in error path (Desnes Nunes) [2196368] - usb: typec: tipd: Cleanup resources if devm_tps6598_psy_register fails (Desnes Nunes) [2196368] - usb: host: xhci-mtk: omit shared hcd if either root hub has no ports (Desnes Nunes) [2196368] - usb: xhci-mtk: enable wake-up interrupt after runtime_suspend called (Desnes Nunes) [2196368] - usb: typec: tcpci: fix of node refcount leak in tcpci_register_port() (Desnes Nunes) [2196368] - usb: typec: Check for ops->exit instead of ops->enter in altmode_exit (Desnes Nunes) [2196368] - usb: ftdi-elan: remove variable l (Desnes Nunes) [2196368] - Documentation: USB: correct possessive "its" usage (Desnes Nunes) [2196368] - usb: Check !irq instead of irq == NO_IRQ (Desnes Nunes) [2196368] - tools: usb: ffs-aio-example: Fix build error with aarch64-*-gnu-gcc toolchain(s) (Desnes Nunes) [2196368] - usb: xhci-pci: Set PROBE_PREFER_ASYNCHRONOUS (Desnes Nunes) [2196368] - usb: ehci-pci: Set PROBE_PREFER_ASYNCHRONOUS (Desnes Nunes) [2196368] - dt-bindings: usb: usb-drd: Describe default dual-role mode (Desnes Nunes) [2196368] - dt-bindings: usb: xhci: Add Broadcom STB v2 compatible device (Desnes Nunes) [2196368] - dt-bindings: usb: Convert xHCI bindings to DT schema (Desnes Nunes) [2196368] - usb: host: Add ability to build new Broadcom STB USB drivers (Desnes Nunes) [2196368] - dt-bindings: Add Broadcom STB USB support (Desnes Nunes) [2196368] - dt-bindings: usb: Add generic "usb-phy" property (Desnes Nunes) [2196368] - dt-bindings: usb: usb-hcd: Add "tpl-support" property (Desnes Nunes) [2196368] - dt-bindings: usb: Add "ulpi/serial/hsic" PHY types (Desnes Nunes) [2196368] - dt-bindings: usb: usb-drd: Add "otg-rev" property constraints (Desnes Nunes) [2196368] - dt-bindings: usb: Convert generic USB properties to DT schemas (Desnes Nunes) [2196368] - dt-bindings: usb: mtu3: add properties about USB Role Switch (Desnes Nunes) [2196368] - dt-bindings: usb: add binding for USB GPIO based connection detection driver (Desnes Nunes) [2196368] - dt-bindings: connector: add optional properties for Type-B (Desnes Nunes) [2196368] - dt-bindings: connector: Add self-powered property (Desnes Nunes) [2196368] - dt-bindings: usb: generic: Add role-switch-default-mode binding (Desnes Nunes) [2196368] - dt-binding: usb: add usb-role-switch property (Desnes Nunes) [2196368] - dt-binding: usb: add "super-speed-plus" (Desnes Nunes) [2196368] - dt-bindings: usb: usb-hcd: Detach generic USB controller properties (Desnes Nunes) [2196368] - dt-bindings: Explicitly allow additional properties in common schemas (Desnes Nunes) [2196368] - dt-bindings: usb: Bring back phy-names (Desnes Nunes) [2196368] - usb: core: stop USB enumeration if too many retries (Desnes Nunes) [2196368] - usb: hub: port: add sysfs entry to switch port power (Desnes Nunes) [2196368] - usb: typec: port-mapper: Convert to the component framework (Desnes Nunes) [2196368] - usb: Link the ports to the connectors they are attached to (Desnes Nunes) [2196368] - usb: Remove usb_for_each_port() (Desnes Nunes) [2196368] - thunderbolt: Add wake on connect/disconnect on USB4 ports (Desnes Nunes) [2196368] - thunderbolt: Link USB4 ports to their USB Type-C connectors (Desnes Nunes) [2196368] - usb: core: Use kstrtobool() instead of strtobool() (Desnes Nunes) [2196368] - kernel.h: split out kstrtox() and simple_strtox() to a separate header (Desnes Nunes) [2196368] - USB: core: Change configuration warnings to notices (Desnes Nunes) [2196368] - thunderbolt: ACPI: Use the helper fwnode_find_reference() (Desnes Nunes) [2196368] - thunderbolt: Remove redundant assignment to variable len (Desnes Nunes) [2196368] - thunderbolt: Use str_enabled_disabled() helper (Desnes Nunes) [2196368] - media: device property: Add a function to test is a fwnode is a graph endpoint (Desnes Nunes) [2196368] - usb: typec: mux: Allow multiple mux_devs per mux (Desnes Nunes) [2196368] - usb: typec: mux: Introduce indirection (Desnes Nunes) [2196368] - device property: Use multi-connection matchers for single case (Desnes Nunes) [2196368] - device property: Fix fwnode_graph_devcon_match() fwnode leak (Desnes Nunes) [2196368] - device property: Add helper to match multiple connections (Desnes Nunes) [2196368] - Documentation: Remove device connection documentation (Desnes Nunes) [2196368] - usb: ftdi-elan: remove variable err_count (Desnes Nunes) [2196368] - USB: make devnode() callback in usb_class_driver take a const * (Desnes Nunes) [2196368] - USB: remove usb_bus_type from usb.h (Desnes Nunes) [2196368] - USB: allow some usb functions to take a const pointer. (Desnes Nunes) [2196368]- s390/ap: Fix hanging ioctl caused by orphaned replies (Tobias Huschle) [2215891] - crypto: jitter - correct health test during initialization (Vladis Dronov) [2214270] - x86: properly define CONFIG_AS_TPAUSE in Makefile (Nico Pache) [2193009] - zsmalloc: fix races between asynchronous zspage free and page migration (Oleksandr Natalenko) [2213146] - netfilter: ip6t_rpfilter: Fix regression with VRF interfaces (Phil Sutter) [2169958] - x86/mm: Avoid incomplete Global INVLPG flushes (Rafael Aquini) [2213793] - rbd: get snapshot context after exclusive lock is ensured to be held (Ilya Dryomov) [2214973] - rbd: move RBD_OBJ_FLAG_COPYUP_ENABLED flag setting (Ilya Dryomov) [2214973] - vfio/pci: Also demote hiding standard cap messages (Oleksandr Natalenko) [2207849] - vfio/pci: demote hiding ecap messages to debug level (Oleksandr Natalenko) [2207849] - mm: avoid unnecessary page fault retires on shared memory types (Nico Pache) [2213877] - mm: remove redundant check about FAULT_FLAG_ALLOW_RETRY bit (Nico Pache) [2213877] - mm: Allow the [page|pfn]_mkwrite callbacks to drop the mmap_sem (Nico Pache) [2213877] - s390/qeth: convert sysfs snprintf to sysfs_emit (Tobias Huschle) [2203380] - s390/lcs: Fix return type of lcs_start_xmit() (Tobias Huschle) [2203380] - s390/netiucv: Fix return type of netiucv_tx() (Tobias Huschle) [2203380] - s390/ctcm: Fix return type of ctc{mp,}m_tx() (Tobias Huschle) [2203380] - s390/pci: clean up left over special treatment for function zero (Tobias Huschle) [2214268] - s390/pci: remove redundant pci_bus_add_devices() on new bus (Tobias Huschle) [2214268] - s390/pci: only add specific device in zpci_bus_scan_device() (Tobias Huschle) [2214268] - PCI: s390: Fix use-after-free of PCI resources with per-function hotplug (Tobias Huschle) [2214268] - net: atlantic: fix potential memory leak in aq_ndev_close() (Íñigo Huguet) [2184353] - net: atlantic: fix aq_vec index out of range error (Íñigo Huguet) [2179726 2184353] - net: atlantic: verify hw_head_ lies within TX buffer ring (Íñigo Huguet) [2184353] - net: atlantic: add check for MAX_SKB_FRAGS (Íñigo Huguet) [2184353] - net: atlantic: reduce scope of is_rsc_complete (Íñigo Huguet) [2184353] - net: atlantic: fix "frag[0] not initialized" (Íñigo Huguet) [2184353] - net: atlantic: Avoid out-of-bounds indexing (Íñigo Huguet) [2179726 2184353] - atlantic: Fix buff_ring OOB in aq_ring_rx_clean (Íñigo Huguet) [2184353] - atlantic: Remove warn trace message. (Íñigo Huguet) [2184353] - atlantic: Fix statistics logic for production hardware (Íñigo Huguet) [2184353] - atlantic: Add missing DIDs and fix 115c. (Íñigo Huguet) [2184353] - atlantic: Fix to display FW bundle version instead of FW mac version. (Íñigo Huguet) [2184353] - atlantic: Increase delay for fw transactions (Íñigo Huguet) [2184353] - atlantic: fix double-free in aq_ring_tx_clean (Íñigo Huguet) [2184353] - atlantic: Fix OOB read and write in hw_atl_utils_fw_rpc_wait (Íñigo Huguet) [2184353] - net: ethernet: aquantia: Handle error cleanup of start on open (Íñigo Huguet) [2184353] - aquantia: Remove the build_skb path (Íñigo Huguet) [2184353] - net: fix __dev_kfree_skb_any() vs drop monitor (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to icmpv6_echo_reply() (Antoine Tenart) [2184076] - ipv6: icmp6: add SKB_DROP_REASON_IPV6_NDISC_NS_OTHERHOST (Antoine Tenart) [2184076] - ipv6: icmp6: add SKB_DROP_REASON_IPV6_NDISC_BAD_OPTIONS (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_redirect_rcv() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_router_discovery() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_recv_rs() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_recv_na() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_recv_ns() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_rcv() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to icmpv6_notify() (Antoine Tenart) [2184076] - net: add pskb_may_pull_reason() helper (Antoine Tenart) [2184076] - net-next: skbuff: refactor pskb_pull (Antoine Tenart) [2184076] - net: dropreason: add SKB_DROP_REASON_IPV6_BAD_EXTHDR (Antoine Tenart) [2184076] - rxrpc: Use consume_skb() rather than kfree_skb_reason() (Antoine Tenart) [2184076] - ipv4: raw: add drop reasons (Antoine Tenart) [2184076] - ipv6: raw: add drop reasons (Antoine Tenart) [2184076] - tcp: add TCP_MINTTL drop reason (Antoine Tenart) [2184076] - net: fix call location in kfree_skb_list_reason (Antoine Tenart) [2184076] - rxrpc: Show consumed and freed packets as non-dropped in dropwatch (Antoine Tenart) [2184076] - net: tun: rebuild error handling in tun_get_user (Antoine Tenart) [2184076] - ALSA: Update kernel configuration for 8.9 (Jaroslav Kysela) [2179850] - soundwire: stream: Add missing clear of alloc_slave_rt (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add new mapping for HP Spectre x360 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable 4 amplifiers instead of 2 on a HP platform (Jaroslav Kysela) [2179850] - ALSA: hda: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: gus: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: cmipci: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: ice1712,ice1724: fix the kcontrol->id initialization (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Clevo NS50AU (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for Asus ROG 2024 laptops using CS35L41 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add "Intel Reference board" and "NUC 13" SSID in the ALC256 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add Lenovo P3 Tower platform (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add a quirk for HP Slim Desktop S01 (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: fix PCM constraint error check (Jaroslav Kysela) [2179850] - ASoC: max98363: limit the number of channel to 1 (Jaroslav Kysela) [2179850] - ASoC: max98363: Removed 32bit support (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add Thinkpad Neo14 to quirks list for acp6x (Jaroslav Kysela) [2179850] - ASoC: nau8824: Add quirk to active-high jack-detect (Jaroslav Kysela) [2179850] - ASoC: amd: ps: fix for acp_lock access in pdm driver (Jaroslav Kysela) [2179850] - ASoC: simple-card: Add missing of_node_put() in case of error (Jaroslav Kysela) [2179850] - ASoC: codecs: wsa881x: do not set can_multi_write flag (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: remove code for module namespaces (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable headset onLenovo M70/M90 (Jaroslav Kysela) [2179850] - regmap: sdw: check for invalid multi-register writes config (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132: add quirk for EVGA X299 DARK (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing checks on FE startup (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Fix avs_path_module::instance_id size (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Account for UID of ACPI device (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Fix declaration of enum avs_channel_config (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Fix declaration of enum skl_ch_cfg (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Access path components under lock (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Fix module lookup (Jaroslav Kysela) [2179850] - ALSA: hda: Fix unhandled register update during auto-suspend period (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: test if a BE can be prepared (Jaroslav Kysela) [2179850] - ALSA: hda: Add NVIDIA codec IDs a3 through a7 to patch table (Jaroslav Kysela) [2179850] - ALSA: oss: avoid missing-prototype warnings (Jaroslav Kysela) [2179850] - ALSA: cs46xx: mark snd_cs46xx_download_image as static (Jaroslav Kysela) [2179850] - ALSA: hda: Fix Oops by 9.1 surround channel names (Jaroslav Kysela) [2179850] - ASoC: rt5682: Disable jack detection interrupt during suspend (Jaroslav Kysela) [2179850] - ASoC: SOF: Separate the tokens for input and output pin index (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Fix tuples array allocation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to program SoundWire PCMSyCM registers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: initialize instance_offset member (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: use 'ml_addr' parameter consistently (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: fix base_ptr computation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to get SoundWire hlink (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: fix sublink refcounting (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Fix logic for copying tuples (Jaroslav Kysela) [2179850] - ASoC: dwc: move DMA init to snd_soc_dai_driver probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3-topology: Make sure that only one cmd is sent in dai_config (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: save io region state in case of errors in resume (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-client-probes: fix pm_runtime imbalance in error handling (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: fix pm_runtime imbalance in error handling (Jaroslav Kysela) [2179850] - ASoC: SOF: debug: conditionally bump runtime_pm counter on exceptions (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix mute and micmute LEDs for yet another HP laptop (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add a sample rate workaround for Line6 Pod Go (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Apply HP B&O top speaker profile to Pavilion 15 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for ASUS GU604V and GU603V (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for HP EliteBook G10 laptops (Jaroslav Kysela) [2179850] - tools include UAPI: Sync the sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2179850] - firewire: net: fix unexpected release of object for asynchronous request packet (Jaroslav Kysela) [2179850] - ASoC: ssm2602: Add workaround for playback distortions (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix NULL pointer crash in acp_sof_ipc_msg_data function (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add a quirk for HP EliteDesk 805 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for 2nd ASUS GU603 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Clevo L140AU (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entry to support System76 Pangolin 12 (Jaroslav Kysela) [2179850] - ALSA: pcm: use exit controlled loop in snd_pcm_playback_silence() (Jaroslav Kysela) [2179850] - ALSA: pcm: simplify top-up mode init in snd_pcm_playback_silence() (Jaroslav Kysela) [2179850] - ALSA: pcm: playback silence - move silence variable updates to separate function (Jaroslav Kysela) [2179850] - ALSA: pcm: playback silence - remove extra code (Jaroslav Kysela) [2179850] - ALSA: pcm: fix playback silence - correct incremental silencing (Jaroslav Kysela) [2179850] - ALSA: pcm: fix playback silence - use the actual new_hw_ptr for the threshold mode (Jaroslav Kysela) [2179850] - ALSA: pcm: Revert "ALSA: pcm: rewrite snd_pcm_playback_silence()" (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix mute and micmute LEDs for an HP laptop (Jaroslav Kysela) [2179850] - ALSA: caiaq: input: Add error handling for unsupported input methods in `snd_usb_caiaq_input_init` (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add quirk for Pioneer DDJ-800 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: support HP Pavilion Aero 13-be0xxx Mute LED (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for ASUS UM3402YAR using CS35L41 (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add Asus VivoBook Pro 14 OLED M6400RC to the quirks list for acp6x (Jaroslav Kysela) [2179850] - ALSA: docs: Extend module parameters description (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi-cht: Add quirk for Nextbook Ares 8A tablet (Jaroslav Kysela) [2179850] - ALSA: emu10k1: use more existing defines instead of open-coded numbers (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add ASUS M3402RA into DMI table (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for ThinkPad P1 Gen 6 (Jaroslav Kysela) [2179850] - ALSA: hda: Glenfly: add HD Audio PCI IDs and HDMI Codec Vendor IDs. (Jaroslav Kysela) [2179850] - ALSA: emu10k1: use high-level I/O in set_filterQ() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix error handling in snd_audigy_i2c_volume_put() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: don't stop DSP in _snd_emu10k1_{,audigy_}init_efx() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: skip Sound Blaster-specific hacks for E-MU cards (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fixup DSP defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: use high-level I/O functions also during init (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix SNDRV_EMU10K1_IOCTL_SINGLE_STEP (Jaroslav Kysela) [2179850] - ALSA: emu10k1: pull in some register definitions from kX-project (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove some bogus defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: eliminate some unused defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix lineup of EMU_HANA_* defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: comment updates (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix snd_emu1010_fpga_read() input masking for rev2 cards (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove unused emu->pcm_playback_efx_substream field (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove unused `resume` parameter from snd_emu10k1_init() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: minor optimizations (Jaroslav Kysela) [2179850] - ASoC: max98090: make it selectable (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi-byt: Fix "WM510205" match no longer working (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Rate limit usb_set_interface error reporting (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove remaining cruft from snd_emu10k1_emu1010_init() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: clean up P16V part somewhat (Jaroslav Kysela) [2179850] - ALSA: emu10k1: clarify various fx8010.*_mask fields (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove apparently pointless EMU_HANA_OPTION_CARDS reads (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove apparently pointless FPGA reads (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove unused snd_emu10k1_voice.emu field (Jaroslav Kysela) [2179850] - ALSA: emu10k1: stop doing weird things with HCFG in snd_emu10k1_emu1010_init() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove obsolete card type variable and defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix access to Audigy GPIO port (Jaroslav Kysela) [2179850] - ALSA: emu10k1: drop redundant snd_emu10k1_efx_playback_pointer() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: properly assert E-MU FPGA access constaints (Jaroslav Kysela) [2179850] - ALSA: emu10k1: drop redundant snd_emu10k1_efx_playback_hw_free() (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Add an option to skip platform trigger during stop (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Do not stop/start DMA during pause/release (Jaroslav Kysela) [2179850] - ALSA: pcm: rewrite snd_pcm_playback_silence() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Split the set_power_op for IPC3 and IPC4 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: append codec type to dai link name (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: support different devices on the same sdw link (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: set codec_num = 1 if the device is not aggregated (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw_max98373: change sof_sdw_mx8373_late_probe to static call (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: remove late_probe flag in struct sof_sdw_codec_info (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: Add entry for rt711-sdca-sdw at link 2 in RPL match table (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_cirrus_common: Guard against missing buses (Jaroslav Kysela) [2179850] - ASoC: SOF: Use no_reply calls for TX (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc: Add no reply inline calls (Jaroslav Kysela) [2179850] - ASoC: es8316: Don't use ranges based register lookup for a single register (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Remove specific patch for Dell Precision 3260 (Jaroslav Kysela) [2179850] - ASoC: nau8825: fix bounds check for adc_delay (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd934x: Simplify &pdev->dev in probe (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd934x: Simplify with dev_err_probe (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd9335: Simplify with dev_err_probe (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Remove some dead code (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Fix default regmap values for some registers (Jaroslav Kysela) [2179850] - ASoC: ssm2602: Add support for CLKDIV2 (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add delay control for input path (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: disable KAE for Intel DG2 (Jaroslav Kysela) [2179850] - ASoC: da7218: Use devm_clk_get_optional() (Jaroslav Kysela) [2179850] - ASoC: da7219: Improve the relability of AAD IRQ process (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for Lenovo Z13/Z16 Gen2 (Jaroslav Kysela) [2179850] - ASoC: amd: Add check for acp config flags (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add ThinkBook 14 G5+ ARP to quirks list for acp6x (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: fix page fault in dspless mode when DSP is disabled (Jaroslav Kysela) [2179850] - ASoC: tas5720: add missing unwind goto in tas5720_codec_probe (Jaroslav Kysela) [2179850] - ASoC: ep93xx: Add OF support (Jaroslav Kysela) [2179850] - ASoC: ep93xx: i2s: Make it individually selectable (Jaroslav Kysela) [2179850] - ASoC: cs4271: flat regcache, trivial simplifications (Jaroslav Kysela) [2179850] - ASoC: ep93xx: i2s: move enable call to startup callback (Jaroslav Kysela) [2179850] - ASoC: amd: Add Dell G15 5525 to quirks list (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Print the format_val as hexadecimal number (Jaroslav Kysela) [2179850] - ASoC: max98373: change power down sequence for smart amp (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: conditionally wake WPIO1PG domain (Jaroslav Kysela) [2179850] - ASoC: Intel: Add rpl_mx98360_rt5682 driver (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add __func__ in SoundWire lcount() error logs (Jaroslav Kysela) [2179850] - ALSA: hda: patch_realtek: add quirk for Asus N7601ZM (Jaroslav Kysela) [2179850] - ALSA: hda: LNL: add HD Audio PCI ID (Jaroslav Kysela) [2179850] - ASoC: max98363: Make soc_codec_dev_max98363 static (Jaroslav Kysela) [2179850] - soundwire: bus: Fix unbalanced pm_runtime_put() causing usage count underflow (Jaroslav Kysela) [2179850] - ALSA: firewire-tascam: add missing unwind goto in snd_tscm_stream_start_duplex() (Jaroslav Kysela) [2179850] - ALSA: document that struct __snd_pcm_mmap_control64 is messed up (Jaroslav Kysela) [2179850] - ASoC: rt712-sdca: Add RT712 SDCA driver for Mic topology (Jaroslav Kysela) [2179850] - ASoC: add snd_soc_card_mutex_lock/unlock() (Jaroslav Kysela) [2179850] - ASoC: expand snd_soc_dpcm_mutex_lock/unlock() (Jaroslav Kysela) [2179850] - ASoC: expand snd_soc_dapm_mutex_lock/unlock() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: tidyup dapm_connect_dai_pair() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: documentation updates (Jaroslav Kysela) [2179850] - ALSA: emu10k1: update label & help in config system (Jaroslav Kysela) [2179850] - ALSA: emu10k1: don't create old pass-through playback device on Audigy (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix capture interrupt handler unlinking (Jaroslav Kysela) [2179850] - ALSA: hda/sigmatel: fix S/PDIF out on Intel D*45* motherboards (Jaroslav Kysela) [2179850] - ALSA: i2c/cs8427: fix iec958 mixer control deactivation (Jaroslav Kysela) [2179850] - ALSA: hda/sigmatel: add pin overrides for Intel DP45SG motherboard (Jaroslav Kysela) [2179850] - ALSA: pcm: fix wait_time calculations (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Tear down pipelines only if DSP was active (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to retrieve eml_lock (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to offload link ownership (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to retrieve DMIC/SSP hlink (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: program SoundWire LSDIID registers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to check cmdsync (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers for sync_arm/sync_go (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to set link SYNC frequency (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to enable/check interrupts (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to return sublink count (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add convenience helpers for SoundWire PM (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: introduce helpers for 'extended links' PM (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: special-case HDaudio regular links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add structures to parse ALT links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: move to a dedicated module (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add return value for hda_bus_ml_get_capabilities() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: improve hda_bus_ml_free() helper (Jaroslav Kysela) [2179850] - ALSA: hda: add HDaudio Extended link definitions (Jaroslav Kysela) [2179850] - Documentation: sound: add description of Intel HDaudio multi-links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tgl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-skl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-mtl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-icl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-cnl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-apl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: make DSPless mode work with DSP disabled in BIOS (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Add support for DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Skip interfaces not supported on a platform (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support for DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Add flag and state which will be used for DSP-less mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: Do not dereference hstream until it is safe (Jaroslav Kysela) [2179850] - ASoC: tegra20_ac97: Add missing unwind goto in tegra20_ac97_platform_probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Clarify bind failure caused by missing fw_module (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: refactor dmic codec platform device creation (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: refactor error checks in probe call (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: refactor get_chip_info callback (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: remove unused variables (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: remove acp_dai_probe() function (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: remove unused code (Jaroslav Kysela) [2179850] - ASoC: soc.h: remove unused params/num_params (Jaroslav Kysela) [2179850] - ASoC: samsung: switch to use c2c_params instead of params (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2: switch to use c2c_params instead of params (Jaroslav Kysela) [2179850] - ASoC: soc.h: clarify Codec2Codec params (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entries to support HP OMEN 16-n0xxx (8A42) (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Clevo X370SNW (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Preserve the previous PCM device upon re-enablement (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2179850] - ASoC: amd: ps: update the acp clock source. (Jaroslav Kysela) [2179850] - ASoC: max98363: add soundwire amplifier driver (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4/intel: Fix spelling mistake "schduler" -> "scheduler" (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4/intel: Add missing mutex_unlock() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4/intel: Add support for chained DMA (Jaroslav Kysela) [2179850] - ASoC: SOF: avoid a NULL dereference with unsupported widgets (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Use register macro in place of integer literal (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Use u16 consistently for old_legacy_ctrl (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Store additional legacy registers on suspend (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Store saved legacy registers in an array (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Move allocation of saved registers to struct snd_ymfpci (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Switch to DEFINE_SIMPLE_DEV_PM_OPS() (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Add error messages for abritrary IO ports on older chips (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Fix BUG_ON in probe function (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Create card with device-managed snd_devm_card_new() (Jaroslav Kysela) [2179850] - ASoC: soc-topology.c: dai_link->platform again (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Add a debugfs entry containing control details (Jaroslav Kysela) [2179850] - ASoC: wm8903: Remove outdated DMIC comment (Jaroslav Kysela) [2179850] - ASoC: es8316: Handle optional IRQ assignment (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Lenovo ZhaoYang CF4620Z (Jaroslav Kysela) [2179850] - ASoC: da7213.c: add missing pm_runtime_disable() (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2-custom-sample.dtsi: use card->name to avoid long name (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: add snd_soc_add_pcm_runtimes() (Jaroslav Kysela) [2179850] - ALSA: asihpi: remove unused loop_count variable (Jaroslav Kysela) [2179850] - ASoC: hdac_hdmi: use set_stream() instead of set_tdm_slots() (Jaroslav Kysela) [2179850] - ASoC: dapm: Sort speakers after other outputs (Jaroslav Kysela) [2179850] - ASoC: soc-compress: Inherit atomicity from DAI link for Compress FE (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Fix regression on detection of Roland VS-100 (Jaroslav Kysela) [2179850] - ASoC: codecs: rt5682-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt715-sdca: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt715: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt712-sdca: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt711-sdca: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt711-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt700-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1318-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1316-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1308-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: max98373-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: sdw-mockup: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: cs42l42-sdw: clear stream (Jaroslav Kysela) [2179850] - ASoC: simple-card.c: add missing of_node_put() (Jaroslav Kysela) [2179850] - ASoC: soc-topology.c: remove unnecessary dai_link->platform (Jaroslav Kysela) [2179850] - ASoC: ti: remove unnecessary dai_link->platform (Jaroslav Kysela) [2179850] - ASoC: atmel: remove unnecessary dai_link->platform (Jaroslav Kysela) [2179850] - ALSA: hdspm: remove unused copy_u32_le function (Jaroslav Kysela) [2179850] - ALSA: docs: A few more words for PCM XRUN handling and stream locks (Jaroslav Kysela) [2179850] - ALSA: docs: Add description about ack callback -EPIPE error handling (Jaroslav Kysela) [2179850] - ALSA: pcm: Improved XRUN handling for indirect PCM helpers (Jaroslav Kysela) [2179850] - soundwire: intel_auxdevice: improve pm_prepare step (Jaroslav Kysela) [2179850] - soundwire: bus: Update sdw_nread/nwrite_no_pm to handle page boundaries (Jaroslav Kysela) [2179850] - soundwire: bus: Update kernel doc for no_pm functions (Jaroslav Kysela) [2179850] - soundwire: bus: Remove now outdated comments on no_pm IO (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix support for Dell Precision 3260 (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5640: Add quirk for the Acer Iconia One 7 B1-750 (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Improve the pcm trigger sequence (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Make hw_params reset conditional for IPC3 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Do not perform DMA cleanup during stop (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Ensure DSP is in D0I0 during sof_ipc4_set_get_data() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Remove conditional dpcm_capture setting (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Update BT offload config for MTL RVP (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Update BT offload config for Rex (Jaroslav Kysela) [2179850] - soundwire: stream: uniquify dev_err() logs (Jaroslav Kysela) [2179850] - soundwire: stream: remove bus->dev from logs on multiple buses (Jaroslav Kysela) [2179850] - ASoC: tegra: remove unneeded semicolon (Jaroslav Kysela) [2179850] - ASoC: simple-card: add comment to indicate don't remove platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-control: Return on error in sof_ipc4_widget_kcontrol_setup() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add macros for chain-dma message bits (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Set pipeline widget before updating IPC structures (Jaroslav Kysela) [2179850] - soundwire: amd: add pm_prepare callback and pm ops support (Jaroslav Kysela) [2179850] - soundwire: amd: handle SoundWire wake enable interrupt (Jaroslav Kysela) [2179850] - soundwire: amd: add runtime pm ops for AMD SoundWire manager driver (Jaroslav Kysela) [2179850] - soundwire: amd: add SoundWire manager interrupt handling (Jaroslav Kysela) [2179850] - soundwire: amd: enable build for AMD SoundWire manager driver (Jaroslav Kysela) [2179850] - soundwire: amd: register SoundWire manager dai ops (Jaroslav Kysela) [2179850] - soundwire: amd: Add support for AMD Manager driver (Jaroslav Kysela) [2179850] - soundwire: export sdw_compute_slave_ports() function (Jaroslav Kysela) [2179850] - soundwire: intel: don't save hw_params for use in prepare (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Fix recursive locking at XRUN during syncing (Jaroslav Kysela) [2179850] - ALSA: hda/conexant: Partial revert of a quirk for Lenovo (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Simplify the logging of requested firmware files (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Add support for loading bin files without wmfw (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Expose the DSP boot work actions as wm_adsp_power_up() (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Support DSPs that don't require firmware download (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Support DSPs that don't require firmware download (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Use no_core_startstop to prevent creating preload control (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Introduce no_core_startstop for self-booting DSPs (Jaroslav Kysela) [2179850] - mfd: arizona-i2c: Add the missing device table IDs for OF (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Add 12288000 clk freq to cs35l41_fs_mon clk config (Jaroslav Kysela) [2179850] - ALSA: portman2x4: remove unused portman_read_command,data functions (Jaroslav Kysela) [2179850] - ALSA: ymfpci: remove unused snd_ymfpci_readb function (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for some Clevo laptops (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Initialize in_format to NULL in sof_ipc4_get_audio_fmt (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entries to support Victus by HP Laptop 16-e1xxx (8A22) (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: update pipeline_params in process prepare (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: set copier output format for process module (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add support for base config extension (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add base module config extension structure (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add effect widget support (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Move the kcontrol module_id update to helper (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: use common helper function in copier prepare (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: support multiple configs for BE DAIs (Jaroslav Kysela) [2179850] - soundwire: stream: restore cumulative bus bandwidth when compute_params callback failed (Jaroslav Kysela) [2179850] - ASoC: amd: acp: rembrandt: Drop if blocks with always false condition (Jaroslav Kysela) [2179850] - ALSA: sh: aica: Drop if blocks with always false condition (Jaroslav Kysela) [2179850] - soundwire: bandwidth allocation: Use hweight32() to calculate set bits (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add remapping for Intel 'Rooks County' NUC M15 (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: add table for Intel 'Rooks County' NUC M15 (Jaroslav Kysela) [2179850] - ASOC: Intel: sof_sdw: add quirk for Intel 'Rooks County' NUC M15 (Jaroslav Kysela) [2179850] - soundwire: cadence: change access to IP_MCP_CMD_BASE (Jaroslav Kysela) [2179850] - soundwire: cadence: split access to IP_MCP_CMDCTRL fields (Jaroslav Kysela) [2179850] - soundwire: cadence: split access to IP_MCP_CONTROL fields (Jaroslav Kysela) [2179850] - soundwire: cadence: split access to IP_MCP_CONFIG fields (Jaroslav Kysela) [2179850] - soundwire: cadence: add helpers to access IP_MCP registers (Jaroslav Kysela) [2179850] - soundwire: cadence: remove CDNS_MCP_CONFIG_SSPMOD (Jaroslav Kysela) [2179850] - soundwire: intel: move bank switch routine to common intel_bus_common.c (Jaroslav Kysela) [2179850] - soundwire: intel: add abstraction for cmdsync check (Jaroslav Kysela) [2179850] - soundwire: intel: move bus common sequences to different file (Jaroslav Kysela) [2179850] - soundwire: intel: use indirection before moving bus start/stop sequences (Jaroslav Kysela) [2179850] - soundwire: intel: add sync_arm/sync_go to ops (Jaroslav Kysela) [2179850] - soundwire: intel: simplify sync_go sequence (Jaroslav Kysela) [2179850] - soundwire: intel: remove useless abstraction (Jaroslav Kysela) [2179850] - soundwire: intel: remove PDI-level restrictions on rates and formats (Jaroslav Kysela) [2179850] - soundwire: intel: remove stale/misleading comment (Jaroslav Kysela) [2179850] - soundwire: intel: move common definitions to header file (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Search only pin 0 formats (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add new tokens for input/output pin format count (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Remove the ref_audio_fmt field (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Modify the signature of sof_ipc4_init_audio_fmt() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Modify the type of available input/output formats (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Always parse the output formats in topology (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Parse the SOF_COMP_TOKENS only once (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Do not parse the DMA_BUFFER_SIZE token (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add a new field in struct sof_ipc4_available_audio_format (Jaroslav Kysela) [2179850] - ASoC: SOF: Use input/output pin consistently (Jaroslav Kysela) [2179850] - ASoC: SOF: rename a couple of tokens (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-control: Add support for bytes control get and put (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add support for TPLG_CTL_BYTES (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-control: set_volume_data only applies to VOLSW family (Jaroslav Kysela) [2179850] - ASoC: SOF: uapi: header: Update sof_abi_hdr doc for IPC4 use (Jaroslav Kysela) [2179850] - ASoC: SOF: uapi: header: Convert sof_abi_hdr comments to kernel style (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3-control: Merge functions to handle bytes_ext get variants (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3-control: Rename snd_sof_refresh_control() (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: add support for setting up loopback routes (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132: fixup buffer overrun at tuning_ctl_set() (Jaroslav Kysela) [2179850] - ALSA: asihpi: check pao in control_message() (Jaroslav Kysela) [2179850] - ASoC: codecs: zl38060: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1019: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: codecs: pcm179x-spi: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: codecs: adau1977-spi: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Enable Bluetooth offload on adl_rt1019_rt5682 (Jaroslav Kysela) [2179850] - ALSA: Use of_property_read_bool() for boolean properties (Jaroslav Kysela) [2179850] - ALSA: ppc/tumbler: Use of_property_present() for testing DT property presence (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: Don't access EM2 (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Steam Deck Shared boost properties quirk (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: fix hw->formats cleared by soc_pcm_hw_init() for dpcm (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: only startup/shutdown on supported streams (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Enable cont_update_posn variable in pcm hw_params. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Add pcm pointer callback for amd platforms. (Jaroslav Kysela) [2179850] - ASoC: tegra: Support MAX9808x by machine driver (Jaroslav Kysela) [2179850] - ASoC: tegra: Support RT5631 by machine driver (Jaroslav Kysela) [2179850] - ASoC: tegra: Support coupled mic-hp detection (Jaroslav Kysela) [2179850] - ALSA: hda: Match only Intel devices with CONTROLLER_IN_GPU() (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro (Jaroslav Kysela) [2179850] - ASoC: da7219: Initialize jack_det_mutex (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: remove redundant DAI config during hw_free (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Remove hda_ctrl_dai_widget_setup/free() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Unify DAI drv ops for IPC3 and IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Define DAI widget DMA trigger ops for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Use the topology IPC dai_config op (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Add setup_hext_stream/reset_hext_stream DMA ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Define and set the HDA DAI widget DMA ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Introduce DAI widget ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Use the dai argument in ipc4_hda_dai_trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Pass the CPU dai pointer (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Modify the signature of hda_link_dma_cleanup() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: remove struct hda_pipe_params (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Remove hda_link_dma_params() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Remove BE DAI DRV ops for SSP DAI's (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix speaker, mute/micmute LEDs not work on a HP platform (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add core token in each module extended token list (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add support for core_id for pipelines (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add macro to set the core_id in create_pipe message (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Remove log prefixes for snd_sof_run_firmware (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3: Check for upper size limit for the received message (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Fix error handling in sof_widget_ready() (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: don't squelch errors in WIDGET_SETUP phase (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Fix broken early bclk feature for SSP (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-mtrace: process pending logs upon FW crash (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: don't allocate blob if it will not be used (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Fix incorrect sample rate print unit (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: set dmic dai index from copier (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC4: update gain ipc msg definition to align with fw (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: fix copy-paste issue in topology names (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: harden D0i3 programming sequence (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: re-add sleep after entering and exiting reset (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tng: revert invalid bar size setting (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: Access MTL_HFPWRCTL from HDA_DSP_BAR (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: use SOF helper for consistency (Jaroslav Kysela) [2179850] - ASOC: SOF: Intel: pci-tgl: Fix device description (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: SKL: Fix device description (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: HDA: Fix device description (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: Fix the device description (Jaroslav Kysela) [2179850] - ALSA: hda: intel-dsp-config: add MTL PCI id (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: remove useless dev_dbg() (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: remove indirect runtime copy (Jaroslav Kysela) [2179850] - ASoC: soc-dai.c: add missing flag check at snd_soc_pcm_dai_probe() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Use struct_size for struct avs_modcfg_ext size (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: nau8825: Adjust clock control (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: ssm4567: Remove nau8825 bits (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt5682: Explicitly define codec format (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: da7219: Explicitly define codec format (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: max98357a: Explicitly define codec format (Jaroslav Kysela) [2179850] - ASoC: maxim,max9867: add "mclk" support (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: add option to start DMA after DAI (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entries to support HP OMEN 16-n0xxx (8A43) (Jaroslav Kysela) [2179850] - ASoC: zl38060 add gpiolib dependency (Jaroslav Kysela) [2179850] - ASoC: mt6358: Remove undefined HPx Mux enumeration values (Jaroslav Kysela) [2179850] - ASoC: mt6358: Validate Wake on Voice 2 writes (Jaroslav Kysela) [2179850] - ASoC: mt6358: Fix event generation for wake on voice stage 2 switch (Jaroslav Kysela) [2179850] - ALSA: ice1712: Delete unreachable code in aureon_add_controls() (Jaroslav Kysela) [2179850] - ALSA: ice1712: Do not left ice->gpio_mutex locked in aureon_add_controls() (Jaroslav Kysela) [2179850] - ASoC: adau7118: don't disable regulators on device unbind (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Replace fake flexible arrays with flexible-array member (Jaroslav Kysela) [2179850] - ALSA: cs35l41: Add shared boost feature (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Refactor error release code (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Only disable internal boost (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for HP EliteDesk 800 G6 Tower PC (Jaroslav Kysela) [2179850] - soundwire: qcom: gracefully handle too many ports in DT (Jaroslav Kysela) [2179850] - soundwire: qcom: define hardcoded version magic numbers (Jaroslav Kysela) [2179850] - soundwire: qcom: correct setting ignore bit on v1.5.1 (Jaroslav Kysela) [2179850] - ASoC: jack: allow multiple interrupt per gpio (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Improve support for Dell Precision 3260 (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Add quirk for Rex board with mx98360a amplifier (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: Enable DMI L1 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Restrict DMI L1 disable workaround (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Do not re-enable L1 if disabled before suspend (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Add components prefix in structs and function names (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Centralize strings definition (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Move nau8821 and CPU side code up for future platform (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Check Bit Clock rate before snd_soc_dai_set_pll (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: use for_each_rtd_components instead of for (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: remove unnecessarily included headers (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: use sizeof of variable instead of struct type (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Small code refactor (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Remove unnecessary init function (Jaroslav Kysela) [2179850] - ASoC: nau8821: Implement DRC controls (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: fix possible stream_tag leak (Jaroslav Kysela) [2179850] - ASoC: amd: yp: Add OMEN by HP Gaming Laptop 16z-n000 to quirks (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.h: fixup warning struct snd_pcm_substream not declared (Jaroslav Kysela) [2179850] - ASoC: soc-ac97: Return correct error codes (Jaroslav Kysela) [2179850] - ASoC: da7219: Improve the IRQ process to increase the stability (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable mute/micmute LEDs and speaker support for HP Laptops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: Set streaming flag for d0i3 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Enable d0i3 work for ipc4 (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Wake up dsp core before sending ipc msg (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: use set_pm_gate according to ipc version (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce a new set_pm_gate() IPC PM op (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs don't work for a HP platform. (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Fix struct definition (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd934x: Use min macro for comparison and assignment (Jaroslav Kysela) [2179850] - ASoC: soc-ac97: Convert to agnostic GPIO API (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Enable Amp High Pass Filter (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Ensure firmware/tuning pairs are always loaded (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Correct error condition handling (Jaroslav Kysela) [2179850] - ASoC: codecs: Modify error implicit declaration of function 'gpiod_set_value_cansleep' (Jaroslav Kysela) [2179850] - ASoC: codecs: Modify the log print statement (Jaroslav Kysela) [2179850] - ASoC: codecs: Fixed a spelling error in the function name (Jaroslav Kysela) [2179850] - ALSA: hda/realtek - fixed wrong gpio assigned (Jaroslav Kysela) [2179850] - ALSA: hda: Fix codec device field initializan (Jaroslav Kysela) [2179850] - ASoC: rt712-sdca: fix coding style and unconditionally return issues (Jaroslav Kysela) [2179850] - ASoC: rt5640: Update MCLK rate in set_sysclk() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: set copier sink format (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Print queue IDs in error (Jaroslav Kysela) [2179850] - ALSA: hda: remove redundant variable in snd_hdac_stream_start() (Jaroslav Kysela) [2179850] - ALSA: hda/conexant: add a new hda codec SN6180 (Jaroslav Kysela) [2179850] - SoC: rt5682s: Disable jack detection interrupt during suspend (Jaroslav Kysela) [2179850] - ALSA: ppc: fix unused function local variable (Jaroslav Kysela) [2179850] - ASoC: codecs: max98090: simplify snd_soc_dai_driver (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: refine parameters order in function snd_sof_dsp_update8 (Jaroslav Kysela) [2179850] - ASoC: topology: Return -ENOMEM on memory allocation failure (Jaroslav Kysela) [2179850] - ALSA: core: Make snd_card_free() return void (Jaroslav Kysela) [2179850] - ALSA: core: Make snd_card_free_when_closed() return void (Jaroslav Kysela) [2179850] - ALSA: core: Make snd_card_disconnect() return void (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add Positivo N14KP6-TG (Jaroslav Kysela) [2179850] - ALSA: emux: Avoid potential array out-of-bound in snd_emux_xg_control() (Jaroslav Kysela) [2179850] - ASoC: rt712-sdca: Add RT712 SDCA driver for Jack and Amp topology (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs don't work for a HP platform. (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for ASUS UM3402 using CS35L41 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable mute/micmute LEDs on HP Elitebook, 645 G9 (Jaroslav Kysela) [2179850] - ASoC: codecs: aw88395: initialize cur_scene_id to 0 (Jaroslav Kysela) [2179850] - ASoC: codecs: es8326: Fix DTS properties reading (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix for handling spurious interrupts from DSP (Jaroslav Kysela) [2179850] - ASoC: codecs: fix platform_no_drv_owner.cocci warning (Jaroslav Kysela) [2179850] - ALSA: fireface: add field for the number of messages copied to user space (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: add delay function support (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: add get_stream_position support (Jaroslav Kysela) [2179850] - ASoC: SOF: add get_stream_position ops for pcm delay (Jaroslav Kysela) [2179850] - ASoC: SOF: add delay function support in sof framework (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: add hw_params (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: allocate time info for pcm delay feature (Jaroslav Kysela) [2179850] - ASoC: SOF: add time info structure for ipc4 path (Jaroslav Kysela) [2179850] - ASoC: SOF: add fw_info_box support (Jaroslav Kysela) [2179850] - ASoC: SOF: add ipc4_fw_reg header file (Jaroslav Kysela) [2179850] - ASoC: codecs: aw88395: Fix spelling mistake "cersion" -> "version" (Jaroslav Kysela) [2179850] - ASoC: SOF: fix intel-soundwire link failure (Jaroslav Kysela) [2179850] - ALSA: hda: Fix the control element identification for multiple codecs (Jaroslav Kysela) [2179850] - ASoC: amd: update ps platform acp header file (Jaroslav Kysela) [2179850] - ASoC: topology: Set correct unload callback for graph type (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Add missed "else" in sof_connect_dai_widget (Jaroslav Kysela) [2179850] - ASoC: cs42l42: use helper function (Jaroslav Kysela) [2179850] - ALSA: pci: lx6464es: fix a debug loop (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: cleanup Playback/Capture data for snd_soc_dai (Jaroslav Kysela) [2179850] - ASoC: soc-topology.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-dai.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: ti: use helper function (Jaroslav Kysela) [2179850] - ASoC: tegra: use helper function (Jaroslav Kysela) [2179850] - ASoC: sof: use helper function (Jaroslav Kysela) [2179850] - ASoC: intel: use helper function (Jaroslav Kysela) [2179850] - ASoC: sdw-mockup: use helper function (Jaroslav Kysela) [2179850] - ASoC: spear: use helper function (Jaroslav Kysela) [2179850] - ASoC: cirrus: use helper function (Jaroslav Kysela) [2179850] - ASoC: rt: use helper function (Jaroslav Kysela) [2179850] - ASoC: max: use helper function (Jaroslav Kysela) [2179850] - ASoC: hda: use helper function (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc.h: add snd_soc_card_is_instantiated() helper (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add snd_soc_dai_get/set_widget_playback/capture() helper (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add snd_soc_dai_tdm_mask_set/get() helper (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add snd_soc_dai_dma_data_set/get() for low level (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add missing snd_soc_dai_set_widget() (Jaroslav Kysela) [2179850] - ALSA: doc: Fix PCM interface section typos (Jaroslav Kysela) [2179850] - ALSA: firewire-motu: fix unreleased lock warning in hwdep device (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: fix uninitialized local variable (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Refactor bit width calculation (Jaroslav Kysela) [2179850] - ASoC: rt715-sdca: fix clock stop prepare timeout issue (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro 360 (Jaroslav Kysela) [2179850] - ASoC: tas5720: set bit 7 in ANALOG_CTRL_REG for TAS5720A-Q1 during probe (Jaroslav Kysela) [2179850] - ASoC: codecs: tas5720: add support for TAS5720A-Q1 (automotive) variant (Jaroslav Kysela) [2179850] - ASoC: codecs: tas5720: split a tas5720_mute_soc_component() function (Jaroslav Kysela) [2179850] - ASoC: topology: Use unload() op directly (Jaroslav Kysela) [2179850] - ASoC: topology: Unify kcontrol removal code (Jaroslav Kysela) [2179850] - ASoC: topology: Remove unnecessary check for EOF (Jaroslav Kysela) [2179850] - ASoC: topology: Return an error on complete() failure (Jaroslav Kysela) [2179850] - ASoC: topology: Pass correct pointer instead of casting (Jaroslav Kysela) [2179850] - ASoC: topology: Remove unnecessary forward declarations (Jaroslav Kysela) [2179850] - ASoC: topology: Rename remove_ handlers (Jaroslav Kysela) [2179850] - ASoC: topology: Fix function name (Jaroslav Kysela) [2179850] - ASoC: topology: Fix typo in functions name (Jaroslav Kysela) [2179850] - ASoC: topology: Remove unused SOC_TPLG_PASS_PINS constant (Jaroslav Kysela) [2179850] - ASoC: topology: Properly access value coming from topology file (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Wait for debounce interval after resume (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Don't set idle_bias_on (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add SoundWire support (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Export some functions for SoundWire (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Separate ASP config from PLL config (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Ensure MCLKint is a multiple of the sample rate (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add SOFT_RESET_REBOOT register (Jaroslav Kysela) [2179850] - soundwire: stream: Add specific prep/deprep commands to port_prep callback (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Do not run the trigger pipelines if no spipe is stored (Jaroslav Kysela) [2179850] - ASoC: SOF: Protect swidget->use_count with mutex for kcontrol access race (Jaroslav Kysela) [2179850] - ASoC: SOF: Avoid double decrementing use_count in sof_widget_setup on error (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Protect pipeline free with mutex (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Implement pipeline trigger reference counting (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Rename 'data' variable to trigger_list (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce struct snd_sof_pipeline (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Use the PCM stream's pipeline_info during trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Populate the PCM stream pipeline_info (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add flag to skip triggering pipelines during FE DAI trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Define pcm_setup/free ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce PCM setup/free PCM IPC ops (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Set IPC-specific trigger order for DAI links (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: do not free widgets during suspend trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Only process widgets in the connected widget list (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Set up/free DAI/AIF widgets only once (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: Export widget_in_list() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: No need to unbind routes within a pipeline (Jaroslav Kysela) [2179850] - Documentation: sound: correct spelling (Jaroslav Kysela) [2179850] - treewide: fix up files incorrectly marked executable (Jaroslav Kysela) [2179850] - ASoC: cs42l56: fix DT probe (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add buffer type support (Jaroslav Kysela) [2179850] - ALSA: memalloc: Workaround for Xen PV (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: use different channel mask for each sdw amp feedback (Jaroslav Kysela) [2179850] - soundwire: bus_type: Avoid lockdep assert in sdw_drv_probe() (Jaroslav Kysela) [2179850] - soundwire: cadence: further simplify low-level xfer_msg_defer() callback (Jaroslav Kysela) [2179850] - soundwire: stream: use consistent pattern for freeing buffers (Jaroslav Kysela) [2179850] - soundwire: bus: Remove unused reset_page_addr() callback (Jaroslav Kysela) [2179850] - soundwire: bus: Don't zero page registers after every transaction (Jaroslav Kysela) [2179850] - ASoC: ts3a227e: add set_jack and get_jack_type (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: create jack inputs for aux_devs (Jaroslav Kysela) [2179850] - ASoC: soc-component: add get_jack_type (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify probe-component implementation (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: prepare_widgets: Check swidget for NULL on sink failure (Jaroslav Kysela) [2179850] - firewire: cdev: use single object to dispatch event for request to IEC 61883-1 FCP region (Jaroslav Kysela) [2179850] - firewire: cdev: obsolete NULL check to detect IEC 61883-1 FCP region (Jaroslav Kysela) [2179850] - firewire: core: use kref structure to maintain lifetime of data for fw_request structure (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: zero clear HDMI pdata (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-mtrace: prevent underflow in sof_ipc4_priority_mask_dfs_write() (Jaroslav Kysela) [2179850] - soundwire: bus: remove sdw_defer argument in sdw_transfer_defer() (Jaroslav Kysela) [2179850] - soundwire: cadence: use directly bus sdw_defer structure (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add FIXED_RATE quirk for JBL Quantum610 Wireless (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs, speaker don't work for a HP platform (Jaroslav Kysela) [2179850] - ASoC: SOF: keep prepare/unprepare widgets in sink path (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: skip prepare/unprepare if swidget is NULL (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: unprepare when swidget->use_count > 0 (Jaroslav Kysela) [2179850] - ALSA: fireface: fix locking bug in ff400_copy_msg_to_user() (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: start with the right widget type (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Set compress data offset (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support for compress API for stream data/offset (Jaroslav Kysela) [2179850] - ASoC: SOF: Prepare set_stream_data_offset for compress API (Jaroslav Kysela) [2179850] - ASoC: SOF: Prepare ipc_msg_data to be used with compress API (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132: minor fix for allocation size (Jaroslav Kysela) [2179850] - firewire: fix memory leak for payload of request subaction to IEC 61883-1 FCP region (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Use asoc_substream_to_rtd() to obtain rtd (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Use min_t instead of min with cast (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Correctly access topology fields (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Implement PCI shutdown (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Fix possible NULL pointer dereference in snd_usb_pcm_has_fixed_rate() (Jaroslav Kysela) [2179850] - ASoC: codecs: Aw88395 chip register file, data type file and Kconfig Makefile (Jaroslav Kysela) [2179850] - ASoC: codecs: Aw88395 function for ALSA Audio Driver (Jaroslav Kysela) [2179850] - ASoC: codecs: ACF bin parsing and check library file for aw88395 (Jaroslav Kysela) [2179850] - ASoC: codecs: Add i2c and codec registration for aw88395 and their associated operation functions (Jaroslav Kysela) [2179850] - regmap: sdw: Remove 8-bit value size restriction (Jaroslav Kysela) [2179850] - regmap: sdw: Update misleading comment (Jaroslav Kysela) [2179850] - ALSA: fireface: implement message parser for Fireface 400 (Jaroslav Kysela) [2179850] - ALSA: fireface: add local framework to message parser (Jaroslav Kysela) [2179850] - ALSA: fireface: update UAPI for data of knob control (Jaroslav Kysela) [2179850] - ALSA: fireface: add helper function to parse MIDI messages transmitted by Fireface 400 (Jaroslav Kysela) [2179850] - ALSA: fireface: pick up time stamp for request subaction of asynchronous transaction (Jaroslav Kysela) [2179850] - ALSA: fireface: rename callback functions (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_es8336: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_wm5102: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5640: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5651: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcht_es8316: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: amd: acp-es8336: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI support for new acer/emdoor platforms (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable mute/micmute LEDs on HP Spectre x360 13-aw0xxx (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: compute extra delay for runtime of PCM substream (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: obsolete return value from context payload processing layer (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: move parameter for pcm frame multiplier from context payload processing layer (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Provide debugfs_add_region_item ops for core (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Support mt8188 platform (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: extend tracepoints event including CYCLE_TIME of 1394 OHCI (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Add a HP device 0x8715 to force connect list (Jaroslav Kysela) [2179850] - ALSA: control-led: use strscpy in set_led_id() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Always initialize fixed_rate in snd_usb_find_implicit_fb_sync_format() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Enable i2s tdm support for skyrim platforms (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add i2s tdm support in machine driver (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Refactor i2s clocks programming sequence (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Refactor dai format implementation (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add new cpu dai's in machine driver (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: keep history to process isochronous packet (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: use circular linked list for context payload processing layer (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: use circular linked list to enumerate packet descriptors (Jaroslav Kysela) [2179850] - ASoC: nau8315: remove dependency on GPIOLIB (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for cache position in sequence replay (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for cache position in tx packets (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for pool position in rx packets (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for helper functions to pool sequence in rx packets (Jaroslav Kysela) [2179850] - ALSA: aoa: make remove callback of soundbus driver void returned (Jaroslav Kysela) [2179850] - ALSA: ac97: make remove callback of ac97 driver void returned (Jaroslav Kysela) [2179850] - ASoC: amd: ps: Fix uninitialized ret in create_acp64_platform_devs() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Check runtime suspend capability at runtime_idle (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Don't return -EINVAL from system suspend/resume (Jaroslav Kysela) [2179850] - mfd: arizona: Use pm_runtime_resume_and_get() to prevent refcnt leak (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs don't work for a HP platform (Jaroslav Kysela) [2179850] - ASoC: amd: ps: use static function (Jaroslav Kysela) [2179850] - ASoC: nau8822: add speaker Bridge Tied Output configuration (Jaroslav Kysela) [2179850] - ASoC: amd: ps: remove unused variable (Jaroslav Kysela) [2179850] - ASoC: amd: ps: use acp_lock to protect common registers in pdm driver (Jaroslav Kysela) [2179850] - ASoC: amd: ps: add mutex lock for accessing common registers (Jaroslav Kysela) [2179850] - ALSA: hda - Enable headset mic on another Dell laptop with ALC3254 (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_ssp_amp: remove unused variable (Jaroslav Kysela) [2179850] - ASoC: Intel: sof-wm8804: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: cht_bsw_rt5672: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: cht_bsw_rt5645: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcht_da7213: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcht_cx2072x: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: More refactoring of hw constraint rules (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Relax hw constraints for implicit fb sync (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Make sure to stop endpoints before closing EPs (Jaroslav Kysela) [2179850] - ALSA: hda/realtek - Turn on power early (Jaroslav Kysela) [2179850] - ASoC: rt9120: Make dev PM runtime bind AsoC component PM (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add ASUS M5402RA into DMI table (Jaroslav Kysela) [2179850] - ASoC: wm8904: fix wrong outputs volume after power reactivation (Jaroslav Kysela) [2179850] - ASoC: rt711-sdca: add jack detection mode for JD2 100K (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_nau8825: add variant with nau8318 amplifier. (Jaroslav Kysela) [2179850] - ASoC: amd: ps: move irq handler registration (Jaroslav Kysela) [2179850] - ASoC: amd: ps: update dev index value in irq handler (Jaroslav Kysela) [2179850] - ASoC: amd: ps: refactor platform device creation logic (Jaroslav Kysela) [2179850] - ASoC: amd: ps: implement api to retrieve acp device config (Jaroslav Kysela) [2179850] - ASoC: Intel: fix sof-nau8825 link failure (Jaroslav Kysela) [2179850] - ASoC: Intel: sof-nau8825: fix module alias overflow (Jaroslav Kysela) [2179850] - ASoC: SOF: trace: No need to check for op pointer in sof_fw_trace_free() (Jaroslav Kysela) [2179850] - ASoC: SOF: trace: Use sof_ipc_get_ops() in sof_fw_trace_init (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-priv: Mark fw_tracing ops optional in documentation (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: control: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: Add helper macro to be used to get an IPC ops (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Update documentation for sof_ipc_tplg_ops (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Treat tplg_ops->route_setup() as optional (Jaroslav Kysela) [2179850] - ASoC: SOF: Add FW state to debugfs (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Always tear down pipelines before DSP suspend (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Set target state earlier (Jaroslav Kysela) [2179850] - ASoC: SOF: core: Print out the value of sof_debug if it is set (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC3 topology: Print the conflicting bytes sizes (Jaroslav Kysela) [2179850] - ASoC: wm8940: Read chip ID when wm8940 codec probing (Jaroslav Kysela) [2179850] - ASoC: wm8940: Rewrite code to set proper clocks (Jaroslav Kysela) [2179850] - ASoC: wm8940: Remove warning when no plat data present (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add Razer Blade 14 2022 into DMI table (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add new quirk FIXED_RATE for JBL Quantum810 Wireless (Jaroslav Kysela) [2179850] - ASoC: lochnagar: Fix unused lochnagar_of_match warning (Jaroslav Kysela) [2179850] - soundwire: intel: remove DAI startup/shutdown (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: remove a redundant comparison of sram (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Peakvol module configuration (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Parse control tuples (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add control volume operations (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add peakvol runtime-parameter requests (Jaroslav Kysela) [2179850] - ASoC: Intel: Add HP Stream 8 to bytcr_rt5640.c (Jaroslav Kysela) [2179850] - ASoC: da7213: Add support for mono, set frame width to 32 when possible (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5640: Add quirk for the Advantech MICA-071 tablet (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: initialize panic_info to zero (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Enable cache for AMD Rembrandt platform (Jaroslav Kysela) [2179850] - ALSA: azt3328: Remove the unused function snd_azf3328_codec_outl() (Jaroslav Kysela) [2179850] - ASoC: SOF: nocodec: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: wl1273: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: mc13783: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: cq93vc: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: bt-sco: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: adau7002: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: ac97: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: 88pm860x: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: atmel-pdmic: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: atmel-classd: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: amd: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: SOF: Revert: "core: unregister clients and machine drivers in .shutdown" (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tgl: unblock S5 entry if DMA stop has failed" (Jaroslav Kysela) [2179850] - ASoC: rt5640: Allow configuration of LOUT to mono differential mode (Jaroslav Kysela) [2179850] - ALSA: hda: Error out if invalid stream is being setup (Jaroslav Kysela) [2179850] - ASoC: soc-compress: Reposition and add pcm_mutex (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_realtek_common: set ret = 0 as initial value (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: add jsl_rt5682 board config (Jaroslav Kysela) [2179850] - ALSA: hda/cirrus: Add extra 10 ms delay to allow PLL settle and lock. (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Workaround for XRUN at prepare (Jaroslav Kysela) [2179850] - ALSA: pcm: Handle XRUN at trigger START (Jaroslav Kysela) [2179850] - ASoC : SOF: amd: Add support for IPC and DSP dumps (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Use poll function instead to read ACP_SHA_DSP_FW_QUALIFIER (Jaroslav Kysela) [2179850] - ASoC: imx-audmux: use sysfs_emit() to instead of scnprintf() (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Use SG allocation for SKL-based firmware load (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Introduce single place for pipe-config selection (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Drop pipe_config_idx (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Remove skl_tplg_is_multi_fmt() (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Update pipe_config_idx before filling BE params (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd-clsh: Remove the unused function (Jaroslav Kysela) [2179850] - ASoC: rt715: Make read-only arrays capture_reg_H and capture_reg_L static const (Jaroslav Kysela) [2179850] - soundwire: cadence: Drain the RX FIFO after an IO timeout (Jaroslav Kysela) [2179850] - soundwire: cadence: Remove wasted space in response_buf (Jaroslav Kysela) [2179850] - soundwire: cadence: Don't overflow the command FIFOs (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Allow for dumping debug window snapshot (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Allow for dumping FW_REGS area (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Gather remaining logs on strace_release() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Probing and firmware tracing over debugfs (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add probe machine board (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Data probing soc-component (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Probe compress operations (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add data probing requests (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Drop usage of debug members in non-debug code (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Make enable_logs() dependent on DEBUG_FS (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Introduce debug-context aware helpers (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Drop fifo_lock (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Introduce avs_log_buffer_status_locked() (Jaroslav Kysela) [2179850] - ALSA: hda: Interrupt servicing and BDL setup for compress streams (Jaroslav Kysela) [2179850] - ALSA: hda: Prepare for compress stream support (Jaroslav Kysela) [2179850] - ALSA: hda: Allow for compress stream to hdac_ext_stream assignment (Jaroslav Kysela) [2179850] - ALSA: dice: Remove left-over license text (Jaroslav Kysela) [2179850] - drm: tda99x: Don't advertise non-existent capture support (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: Allow playback and capture to be disabled (Jaroslav Kysela) [2179850] - ALSA: dice: add support for Focusrite Saffire Pro 40 with TCD3070 ASIC (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt5682: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt5682: Add define for codec DAI name (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add quirk for Tascam Model 12 (Jaroslav Kysela) [2179850] - ASoC: SOF: Add DAI configuration support for AMD platforms. (Jaroslav Kysela) [2179850] - ASoC: rt5640: Fix Jack work after system suspend (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: Clear DAIs parameters after stream_active is updated (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add shutdown callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Drop obsolete dependency on COMPILE_TEST (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt298: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt298: Add define for codec DAI name (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt286: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt286: Add define for codec DAI name (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt274: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt274: Refer to DAI name through a constant (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: nau8825: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: da7219: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: bdw_rt286: Refactor jack handling (Jaroslav Kysela) [2179850] - ALSA: pcm: fix tracing reason in hw_ptr_error (Jaroslav Kysela) [2179850] - soundwire: stream: Move remaining register accesses over to no_pm (Jaroslav Kysela) [2179850] - soundwire: debugfs: Switch to sdw_read_no_pm (Jaroslav Kysela) [2179850] - soundwire: Provide build stubs for common functions (Jaroslav Kysela) [2179850] - soundwire: bus: export sdw_nwrite_no_pm and sdw_nread_no_pm functions (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Rename KConfig symbol CS_DSP -> FW_CS_DSP (Jaroslav Kysela) [2179850] - ASoC: nau8315: add new acpi id and compatible id (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Return whether changed when writing controls (Jaroslav Kysela) [2179850] - firmware: cs_dsp: cs_dsp_coeff_write_ctrl() should report changed (Jaroslav Kysela) [2179850] - ASoC: sdw-mockup: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt715: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt711: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt700: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt5682-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt1316-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt1308-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: max98373-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - sound: sdw: Add hw_params to SoundWire config helper function (Jaroslav Kysela) [2179850] - ASoC: max9867: Implement exact integer mode (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: ADD HS and SP virtual DAI. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix for selecting clock source as external clock. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix for reading position updates from stream box. (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add a manually mechanism for detection failure (Jaroslav Kysela) [2179850] - ASoC: nau8825: Adjust internal clock during jack detection (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing audio amplifier for KBL (Jaroslav Kysela) [2179850] - ALSA: pcm: fix undefined behavior in bit shift for SNDRV_PCM_RATE_KNOT (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Fix Kconfig dependency (Jaroslav Kysela) [2179850] - ASoC: da7219: Fix pole orientation detection on OMTP headsets when playing music (Jaroslav Kysela) [2179850] - ASoC: max98396: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ASoC: codecs: es8326: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: ppc: keywest: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: aoa: tas: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: aoa: onyx: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - mfd: arizona-i2c: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Initialize private data for subsequent HDA FEs (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Fix possible UAF in acp_dma_open (Jaroslav Kysela) [2179850] - soundwire: enable optional clock registers for SoundWire 1.2 devices (Jaroslav Kysela) [2179850] - ASoC/soundwire: remove is_sdca boolean property (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw_amp: mark coeff tables with __maybe_unused (Jaroslav Kysela) [2179850] - ASoC: SOF: dai: move AMD_HS to end of list to restore backwards-compatibility (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_nau8825: support rt1015p speaker amplifier (Jaroslav Kysela) [2179850] - ASoC: SOF: probes: Check ops before memory allocation (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Disconnect substream if suspend or resume fails (Jaroslav Kysela) [2179850] - ASoC: amd: ps: Move acp63_dev_data strcture from PCI driver (Jaroslav Kysela) [2179850] - ASoC: amd: ps: update macros with ps platform naming convention (Jaroslav Kysela) [2179850] - ALSA: pcm: avoid nused-but-set-variable warning (Jaroslav Kysela) [2179850] - ALSA: memalloc: Allocate more contiguous pages for fallback case (Jaroslav Kysela) [2179850] - ASoC: codecs: Remove a useless include (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2: remove Experimental announce (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: read multi-link capabilities earlier (Jaroslav Kysela) [2179850] - soundwire: intel_init: remove check on number of links (Jaroslav Kysela) [2179850] - soundwire: intel_init: remove sdw_intel_enable_irq() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add callback to check SoundWire lcount information (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: move SoundWire interrupt enabling to callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: factor interrupt enable/disable interrupt functions (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add per-chip enable_sdw_irq() callback (Jaroslav Kysela) [2179850] - soundwire: intel_init: remove useless interrupt enablement in interrupt thread (Jaroslav Kysela) [2179850] - soundwire: intel: split auxdevice to different file (Jaroslav Kysela) [2179850] - soundwire: intel: add in-band wake callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add link power management callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add bus management callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add register_dai callback in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add debugfs callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: start using hw_ops (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: add MTL AIC SoundWire configurations (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Allow client to hook into pre_run callback (Jaroslav Kysela) [2179850] - ASoC: rt1316-sdw: get BQ params property and apply them (Jaroslav Kysela) [2179850] - ASoC: rt1308-sdw: get BQ params property and apply them (Jaroslav Kysela) [2179850] - ASoC: Intel: sof rt5682: remove the duplicate codes (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: add support for ALC5682I-VD with amp rt1019p (Jaroslav Kysela) [2179850] - ASoC: core: fix wrong size kzalloc for rtd's components member (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: get pipeline instance id from pipe_widget->instance_id (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: get max pipeline number (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: rename sof_ipc4_widget_free_comp (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: set d0i3 register with d0i3_offset (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add d0i3_offset in chip_info (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add d0i3 definition for MTL (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Add helper to get/put widget queue id (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support to parse pin binding array from topology (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support for parsing the number of sink/source pins (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Implement tear_down_all_pipelines callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: use small buffer for iccmax stream (Jaroslav Kysela) [2179850] - ALSA: cs5535audio: Remove the redundant assignment (Jaroslav Kysela) [2179850] - ASoC: soc-dai: Do not call snd_soc_link_be_hw_params_fixup() twice (Jaroslav Kysela) [2179850] - ASoC: amd: fix ACP version typo mistake (Jaroslav Kysela) [2179850] - ASoC: Intel: cirrus-common: Make const array uid_strings static (Jaroslav Kysela) [2179850] - ARM: omap2: n8x0: stop instantiating codec platform data (Jaroslav Kysela) [2179850] - ASoC: tlv320aic3x: switch to using gpiod API (Jaroslav Kysela) [2179850] - ASoC: tlv320aic3x: remove support for platform data (Jaroslav Kysela) [2179850] - ASoC: rt5682: Support DBVDD and LDO1-IN supplies (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Support DBVDD and LDO1-IN supplies (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2: check also dpcm node for convert-xxx (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2-custom-sample.dtsi: add convert-rate for DPCM (MIXer) (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: remove asoc_simple_convert_fixup() (Jaroslav Kysela) [2179850] - soundwire: cadence: use dai_runtime_array instead of dma_data (Jaroslav Kysela) [2179850] - soundwire: cadence: rename sdw_cdns_dai_dma_data as sdw_cdns_dai_runtime (Jaroslav Kysela) [2179850] - ASoC: cs42xx8-i2c.c: add module device table for of (Jaroslav Kysela) [2179850] - ALSA: hda: clarify comments on SCF changes (Jaroslav Kysela) [2179850] - ASoC: SOF: fix compilation issue with readb/writeb helpers (Jaroslav Kysela) [2179850] - ASoC: codecs: da7219: Do not export internal symbols (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: amd: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: rockchip: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: Intel: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: codecs: da7219: Introduce set_jack() callback (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC4: probes: Implement IPC4 ops for probes client device (Jaroslav Kysela) [2179850] - ASoC: SOF: client: Add sof_client_ipc4_find_module() function (Jaroslav Kysela) [2179850] - ASoC: SOF: client: Add sof_client_ipc_set_get_data() (Jaroslav Kysela) [2179850] - ASoC: SOF: probes: Separate IPC3 operations to a separate file (Jaroslav Kysela) [2179850] - ASoC: SOF: probes: Replace [0] union members with DECLARE_FLEX_ARRAY() (Jaroslav Kysela) [2179850] - ASoC: adau1372: correct PGA enable & mute bit (Jaroslav Kysela) [2179850] - ASoC: adau1372: add support for S24_LE mode (Jaroslav Kysela) [2179850] - ASoC: adau1372: fix mclk (Jaroslav Kysela) [2179850] - ASoC: SOF: introduce new DEBUG_NOCODEC mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: use GPL-2.0-only license (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: clarify Kconfig dependencies (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add hda_bus_ml_free helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to suspend/resume links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: clarify bus_init and bus_exit sequences (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add helpers to suspend and resume cmd_io (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: clarify dependencies on SND_SOC_SOF_HDA (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: use helper to clear RIRB status (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add hda_codec_check_rirb_status() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: always allocate CORB/RIRB buffer (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add stop_cmd_io helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add hda_codec_device_remove() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: add codec wakeup helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: move all RIRB/CMD_IO helpers to hda-codec.c (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add multi-link helper for LOSVID (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: start moving multi-link handling in dedicated file (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: move codec state change to hda-codec.c (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: simplify SND_SOC_SOF_HDA_AUDIO_CODEC handling (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: remove all dependencies on SND_SOC_HDAC_HDMI (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: remove option to disable the common_hdmi handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Enact power gating policy (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Power and clock gating policy overriding (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Standby power-state support (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Count low power streams (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Restart instead of resuming HDA capture streams (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Handle SUSPEND and RESUME triggers (Jaroslav Kysela) [2179850] - ALSA: hda: Introduce snd_hdac_stream_wait_drsm() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Introduce PCM power management routines (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Split pcm pages freeing operation from hw_free() (Jaroslav Kysela) [2179850] - ASoC: core: Exit all links before removing their components (Jaroslav Kysela) [2179850] - ASoC: tas5805m: add missing page switch. (Jaroslav Kysela) [2179850] - ASoC: tas5805m: rework to avoid scheduling while atomic. (Jaroslav Kysela) [2179850] - soundwire: qcom: add support for v1.7 Soundwire Controller (Jaroslav Kysela) [2179850] - soundwire: qcom: make reset optional for v1.6 controller (Jaroslav Kysela) [2179850] - soundwire: qcom: remove unused SWRM_SPECIAL_CMD_ID (Jaroslav Kysela) [2179850] - ASoC: dapm: Don't use prefix for regulator name (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Return ssize_t from sof_ipc4_fw_parse_ext_man() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: boards: Fix typo in comments (Jaroslav Kysela) [2179850] - ASoC: Intel: boards: Fix typo in comments (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: use readb/writeb for stream registers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: use snd_sof_dsp_updateb() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: use SOF helper for consistency (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: rename CL_SD_CTL registers as SD_CTL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: use SOF helpers for consistency (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: remove useless check on GCTL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: always do a full reset (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: remove useless sleep (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: remove useless members in hda_pipe_params (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: use component_get_drvdata to find hdac_bus (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: start removing the use of runtime->private_data in BE (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: use SOF helpers for consistency (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: add snd_sof_dsp_updateb() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: add readb/writeb helpers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: use mmio fallback for all platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: fallback to mmio in helpers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: fix comment error (Jaroslav Kysela) [2179850] - ALSA: asihpi: remove variable loops (Jaroslav Kysela) [2179850] - ALSA: rawmidi: remove variable dest_frames (Jaroslav Kysela) [2179850] - mfd: arizona: Remove #ifdef guards for PM related functions (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: fix possible memory leak in hda_codec_device_init() (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: fix possible memory leak in skl_codec_device_init() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Support for loading external libraries (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Remove the query_fw_configuration ops (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Stop using the query_fw_configuration fw_loader ops (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Add support for IPC dependent post firmware boot ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Add ipc4 library loading implementation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Add flag to indicate that the firmware is IMR booted (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Define platform dependent library loading callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Set the default firmware library path for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Add path definition for external firmware libraries (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC4: Add helper for looking up module by UUID (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Convert the firmware handling (loader) to library convention (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Save the maximum number of libraries supported (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc: ops: Add support for optional init and exit callbacks (Jaroslav Kysela) [2179850] - ASoC: SOF: Drop the firmware and fw_offset from snd_sof_pdata (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader-skl: Use the basefw firmware container directly (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: Use the basefw firmware container directly (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Use the basefw firmware container directly (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce container struct for SOF firmware (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Set complete state before post_fw_run op (Jaroslav Kysela) [2179850] - soundwire: intel: Initialize clock stop timeout (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: move SPIB/DRMS functionality from ext layer (Jaroslav Kysela) [2179850] - ALSA: hda: hdac_ext_controller: remove useless loop (Jaroslav Kysela) [2179850] - ALSA: hda: ext: reduce ambiguity between 'multi-link' and 'link' DMA (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: ext: add 'bus' prefix for multi-link stream setting (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: ext: remove 'link' prefix for stream-related operations (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: ext: add 'ext' prefix to snd_hdac_link_free_all (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: use hlink variable/parameter (Jaroslav Kysela) [2179850] - ALSA: hda: ext: hda_ext_controller: use hlink variable/parameter (Jaroslav Kysela) [2179850] - ALSA: hda: ext: hdac_ext_controller: use helpers in loop (Jaroslav Kysela) [2179850] - ASoC: rt1308-sdw: update the preset settings (Jaroslav Kysela) [2179850] - ASoC: simple-card: Fix up checks for HW param fixups (Jaroslav Kysela) [2179850] - ASoC: soc-dpcm.h: remove snd_soc_dpcm::hw_param (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.h: fixup comment for snd_soc_dapm_widget_for_each_path() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.h: cleanup white space (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: numerical order for dapm_up_seq (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: cleanup snd_soc_dapm_new_dai() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: merge dapm_power_one_widget() and dapm_widget_set_power() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: cleanup dapm_widget_set_power() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: ignore parameter NULL at snd_soc_dapm_free_widget() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: remove no meaning variable from snd_soc_dapm_add_path() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: tidyup error handling on snd_soc_dapm_add_route() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: replace snd_soc_dapm_wcache to snd_soc_dapm_widget (Jaroslav Kysela) [2179850] - ASoC: twl4030: make read-only array ramp_base static const (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3: Log the tx message before sending it (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: ipc4: Ack a received reply or notification separately (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: ipc4: Wait for channel to be free before sending a message (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: ipc4: Read the interrupt reason registers at the same time (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Log the tx message before sending it (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add TDM slots setting support for ACP I2S controller (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-mtrace: protect per-core nodes against multiple open (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add quirk variant for LAPBC710 NUC15 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: simplify S3 resume flows (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: simplify S3 resume flows (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: simplify S3 resume flows (Jaroslav Kysela) [2179850] - ASoC: codecs: jz4725b: add missed microphone widgets (Jaroslav Kysela) [2179850] - ASoC: codecs: jz4725b: add missed Mixer inputs (Jaroslav Kysela) [2179850] - ASoC: codecs: jz4725b: use right control for Master Playback (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: simplify the return of comp_bind() (Jaroslav Kysela) [2179850] - ASoC: ak4458: add optional reset control to instead of gpio (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Support System Suspend (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Remove suspend/resume hda hooks (Jaroslav Kysela) [2179850] - ALSA: hda/cs_dsp_ctl: Fix mutex inversion when creating controls (Jaroslav Kysela) [2179850] - ALSA: hda: hda_cs_dsp_ctl: Ensure pwr_lock is held before reading/writing controls (Jaroslav Kysela) [2179850] - ALSA: hda: hda_cs_dsp_ctl: Minor clean and redundant code removal (Jaroslav Kysela) [2179850] - ASoC: codecs: hda: Fix spelling error in log message (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify log control for SKL (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify ignore_fw_version description (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Do not print IPC error message twice (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Do not treat unsupported IPCs as invalid (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Do not reuse msg between different IPC handlers (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing include to HDA board (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify d0ix disabling routine (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing SKL-based device IDs (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Support da7219 on both KBL and APL (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Support AML with rt286 configuration (Jaroslav Kysela) [2179850] - ASoC: wm8997: Revert "ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe" (Jaroslav Kysela) [2179850] - ASoC: wm5110: Revert "ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe" (Jaroslav Kysela) [2179850] - ASoC: wm5102: Revert "ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe" (Jaroslav Kysela) [2179850] - ASoC: amd: Update Pink Sardine platform ACP register header (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Avoid superfluous endpoint setup (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Correct the return code from snd_usb_endpoint_set_params() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Apply mutex around snd_usb_endpoint_set_params() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Avoid unnecessary interface change at EP close (Jaroslav Kysela) [2179850] - ASoC: cx2072x: fix spelling typo in comment (Jaroslav Kysela) [2179850] - ALSA: hda: Update register polling macros (Jaroslav Kysela) [2179850] - Revert "ASoC: soc-component: using pm_runtime_resume_and_get instead of pm_runtime_get_sync" (Jaroslav Kysela) [2179850] - ASoC: codecs: allow WM8961 to be selected by the user (Jaroslav Kysela) [2179850] - ASoC: wm8961: add support for devicetree (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Load max98927 on target platform (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add max98927 machine board (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add TDM support (Jaroslav Kysela) [2179850] - ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe (Jaroslav Kysela) [2179850] - ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe (Jaroslav Kysela) [2179850] - ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe (Jaroslav Kysela) [2179850] - ASoC: core: clarify the driver name initialization (Jaroslav Kysela) [2179850] - ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe (Jaroslav Kysela) [2179850] - ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe (Jaroslav Kysela) [2179850] - ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe (Jaroslav Kysela) [2179850] - ALSA: asihpi - Remove unused struct hpi_subsys_response (Jaroslav Kysela) [2179850] - ALSA: sb: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [2179850] - ASoC: wm8978: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [2179850] - ASoC: cs35l36: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Fallback to headphones for type detect (Jaroslav Kysela) [2179850] - ASoC: uapi: Replace zero-length arrays with __DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: control.h: Replace zero-length array with DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - usb: gadget: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ASoC: intel: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: usx2y: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: asihpi: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: hda: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: firewire: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: aloop: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: pcm: Make mmap status read-only (Jaroslav Kysela) [2179850] - ALSA: pcm: Avoid reference to status->state (Jaroslav Kysela) [2179850] - ALSA: Remove some left-over license text in include/uapi/sound/ (Jaroslav Kysela) [2179850] - ALSA: firewire: Remove some left-over license text in sound/firewire (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add pcm_pointer callback (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add pcm_hw_params callback (Jaroslav Kysela) [2179850] - ALSA: memalloc: use __GFP_RETRY_MAYFAIL for DMA mem allocs (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Call snd_sof_handle_fw_exception() in case of timeout (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Only dump firmware registers for IPC3 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: Print relevant register in ipc_dump (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: skl: Use the ipc4 version of the ipc_dump (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Add separate ops for ipc_dump for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: cnl: Add separate ops for ipc_dump for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: remove the unnecessary snd_sof_dsp_read() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: reuse the common ops for PM (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: HDA: use IPC version-specific ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: define and set the disable_interrupts op (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: define and set the disable_interrupts op for cavs platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Add a new op for disabling interrupts (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: use power_down_dsp op in hda_dsp_remove (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: define and set power_down_dsp op (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: define and set power_down_dsp op for HDA platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: introduce new op to handle dsp power down (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_da7219_mx98360a: Access num_codecs through dai_link (Jaroslav Kysela) [2179850] - ASoC: soc-component: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132 - remove the unneeded result variable (Jaroslav Kysela) [2179850] - ASoC: SOF: pci-tgl: add missing PCI IDs for RPL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tgl: reorder PCI IDs (Jaroslav Kysela) [2179850] - ASoC: es8316: fix register sync error in suspend/resume tests (Jaroslav Kysela) [2179850] - ASoC: cs42l83: change cs42l83_regmap to static (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add pcm_pointer callback for mt8186 (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add setbias level for rt5682s codec in machine driver (Jaroslav Kysela) [2179850] - ASoC: ts3a227e: add parameters to control debounce times (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Split endpoint setups for hw_params and prepare (take#2) (Jaroslav Kysela) [2179850] - ASoC: rt5682s: simplify the return of rt5682s_probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: don't unprepare widget used other pipelines (Jaroslav Kysela) [2179850] - ASoC: SOF: clear prepare state when widget is unprepared (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: remove useless assignment (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: clarify calculation precedence (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add ops for SKL/KBL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add initial SKL/KBL hardware support (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add SKL/KBL hardware code loader (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: expose functions for SKL support (Jaroslav Kysela) [2179850] - ALSA: es18xx: Remove the unneeded result variable (Jaroslav Kysela) [2179850] - ASoC: soc.h: use array instead of playback/capture_widget (Jaroslav Kysela) [2179850] - ASoC: soc.h: use defined number instead of direct number (Jaroslav Kysela) [2179850] - ASoC: soc.h: remove num_cpus/codecs (Jaroslav Kysela) [2179850] - soundwire: intel: add helper to stop bus (Jaroslav Kysela) [2179850] - soundwire: intel: introduce helpers to start bus (Jaroslav Kysela) [2179850] - soundwire: intel: introduce intel_shim_check_wake() helper (Jaroslav Kysela) [2179850] - soundwire: intel: simplify read ops assignment (Jaroslav Kysela) [2179850] - soundwire: intel: remove intel_init() wrapper (Jaroslav Kysela) [2179850] - soundwire: intel: move shim initialization before power up/down (Jaroslav Kysela) [2179850] - soundwire: intel: remove clock_stop parameter in intel_shim_init() (Jaroslav Kysela) [2179850] - soundwire: intel: move all PDI initialization under intel_register_dai() (Jaroslav Kysela) [2179850] - soundwire: intel: move DAI registration and debugfs init earlier (Jaroslav Kysela) [2179850] - soundwire: intel: simplify flow and use devm_ for DAI registration (Jaroslav Kysela) [2179850] - soundwire: intel: fix error handling on dai registration issues (Jaroslav Kysela) [2179850] - ASoC: SOF: replace ipc4-loader dev_vdbg with tracepoints (Jaroslav Kysela) [2179850] - ASoC: SOF: replace dev_vdbg with tracepoints (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: replace dev_vdbg with tracepoints (Jaroslav Kysela) [2179850] - ASoC: SOF: remove unneeded dev_vdbg (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: remove unneeded dev_vdbg (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add HDA interrupt source tracing (Jaroslav Kysela) [2179850] - ASoC: SOF: add widget setup/free tracing (Jaroslav Kysela) [2179850] - ALSA: hda: ext: remove always-true conditions on host and link release (Jaroslav Kysela) [2179850] - ALSA: hda: ext: fix locking in stream_release (Jaroslav Kysela) [2179850] - ALSA: hda: ext: simplify logic for stream assignment (Jaroslav Kysela) [2179850] - ALSA: hda: Use hdac_ext prefix in snd_hdac_stream_free_all() for clarity (Jaroslav Kysela) [2179850] - ALSA: hda: ext: make snd_hdac_ext_stream_init() static (Jaroslav Kysela) [2179850] - ALSA: hda: document state machine for hdac_streams (Jaroslav Kysela) [2179850] - ALSA: hda: make snd_hdac_stream_clear() static (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: override mclk_id after parsing NHLT SSP blob (Jaroslav Kysela) [2179850] - ALSA: hda: intel-nhlt: add intel_nhlt_ssp_mclk_mask() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: refine SSP count support (Jaroslav Kysela) [2179850] - soundwire: cadence: Simplify error paths in cdns_xfer_msg() (Jaroslav Kysela) [2179850] - soundwire: cadence: Fix error check in cdns_xfer_msg() (Jaroslav Kysela) [2179850] - soundwire: bus: Fix wrong port number in sdw_handle_slave_alerts() (Jaroslav Kysela) [2179850] - soundwire: cadence: Write to correct address for each FIFO chunk (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add pcm_hw_params callback for mt8186 (Jaroslav Kysela) [2179850] - ALSA: ppc: Switch to use for_each_child_of_node() macro (Jaroslav Kysela) [2179850] - ASoC: Intel: skylake: remove unnecessary dev_set_drvdata() (Jaroslav Kysela) [2179850] - soundwire: qcom: do not send status of device 0 during alert (Jaroslav Kysela) [2179850] - soundwire: qcom: update status from device id 1 (Jaroslav Kysela) [2179850] - ASoC: max98390: Fix dsm calibration reading (Jaroslav Kysela) [2179850] - soundwire: cadence: Don't overwrite msg->buf during write commands (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_ssp_amp: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASOC: SOF: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_es8336: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_nau8825: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_cs42l42: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Switch to dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Implement 'set_bclk_ratio' (Jaroslav Kysela) [2179850] - ASoC: cs42l83: Extend CS42L42 support to new part (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Export regmap elements to core namespace (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Split I2C identity into separate module (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Pass component and dai defs into common probe (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Split cs42l42_resume into two functions (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Split probe() and remove() into stages (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Use cs42l42->dev instead of &i2c_client->dev (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add bitclock frequency argument to cs42l42_pll_config() (Jaroslav Kysela) [2179850] - soundwire: bus: Don't exit early if no device IDs were programmed (Jaroslav Kysela) [2179850] - soundwire: cadence: Fix lost ATTACHED interrupts when enumerating (Jaroslav Kysela) [2179850] - soundwire: bus: Don't re-enumerate before status is UNATTACHED (Jaroslav Kysela) [2179850] - soundwire: bus: Don't lose unattach notifications (Jaroslav Kysela) [2179850] - soundwire: cadence: fix updating slave status when a bus has multiple peripherals (Jaroslav Kysela) [2179850] - ASoC: soc-dapm: Switch to use dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Switch to use dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: bcm2835-i2s: Switch to use dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: increase SRAM inbox and outbox size to 1024 (Jaroslav Kysela) [2179850] - ASoC: SOF: Adding amd HS functionality to the sof core (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Add support for Rembrandt plaform. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Make ACP core code generic for newer SOC transition (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add ADCOUT IO drive strength control (Jaroslav Kysela) [2179850] - ASoC: ak4458: Add ak4458_reset in device probe and remove (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: remove SOF_RT1015_SPEAKER_AMP_100FS flag (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Reduce coupling of PLLB setting (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Reduce coupling of I2S1 setting (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Reduce coupling of Micbias and Vref2 settings (Jaroslav Kysela) [2179850] - ALSA: dummy: Add customizable volume min/max. (Jaroslav Kysela) [2179850] - ALSA: dummy: Fix trailing whitespaces. (Jaroslav Kysela) [2179850] - soundwire: cadence: remove unused sdw_cdns_master_ops declaration (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Add mtrace type information for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: icl: Set IPC4-specific DSP ops (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add support for mtrace log extraction (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Configure the debug box offset (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add define for the outbox window index (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add macro to get core ID from log buffer status message (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Only print LOG BUFFER update message info if requested (Jaroslav Kysela) [2179850] - sound: oss: dmasound: remove software_input_volume declaration (Jaroslav Kysela) [2179850] - ALSA: memalloc: remove snd_dma_sg_ops declaration (Jaroslav Kysela) [2179850] - ALSA: line6: remove line6_set_raw declaration (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec.c: use devm_kzalloc() for DMA data (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: setup rtd->pmdown_time at soc_new_pcm_runtime() (Jaroslav Kysela) [2179850] - ASoC: ak4458: Remove component probe() and remove() (Jaroslav Kysela) [2179850] - ASoC: max98390: Remove unnecessary amp on/off conrtol (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: tidyup snd_soc_dai_link_event_pre_pmu() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: add comment for kzalloc()/kfree() on snd_soc_dai_link_event_pre_pmu() (Jaroslav Kysela) [2179850] - ASoC: sti-sas: Remove the unneeded result variable (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: switch to using gpiod API (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add devicetree support to select topologies (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add generic pcm_{open,close} callbacks (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add mailbox generic callbacks for IPC (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: fixup snd_soc_dapm_new_control_unlocked() error handling (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: don't use WARN_ON() at snd_soc_dai_link_event_pre_pmu() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Utilize acpi_get_subsystem_id() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Call put_device() in the scope of get_device() (Jaroslav Kysela) [2179850] - ASoC: SOF: Remove strsplit_u32() and tokenize_input() (Jaroslav Kysela) [2179850] - lib/string_helpers: Introduce parse_int_array_user() (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce function sof_of_machine_select (Jaroslav Kysela) [2179850] - ALSA: asihpi - Remove useless code in hpi_meter_get_peak() (Jaroslav Kysela) [2179850] - ASoC: amd: fix spelling mistake: "i.e" -> "i.e." (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: check fe condition at out of loop (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: add soc_pcm_ret() (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: remove unnecessary codec2codec_close_delayed_work() (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Replace zero-length array with DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - ASoC: codecs: max98088: remove redundant ret variable (Jaroslav Kysela) [2179850] - ASoC: amd: enable Pink sardine platform machine driver build. (Jaroslav Kysela) [2179850] - ASoC: amd: add Pink Sardine machine driver using dmic (Jaroslav Kysela) [2179850] - ASoC: amd: create platform device for acp6.2 machine driver (Jaroslav Kysela) [2179850] - ASoC: amd: enable Pink Sardine acp6.2 drivers build (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pdm driver pm ops (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pci driver pm ops (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pdm driver dma ops (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 irq handler (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pdm platform driver (Jaroslav Kysela) [2179850] - ASoC: amd: add platform devices for acp6.2 pdm driver and dmic driver (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 init/de-init functions (Jaroslav Kysela) [2179850] - ASoC: amd: add Pink Sardine ACP PCI driver (Jaroslav Kysela) [2179850] - ASoC: amd: add Pink Sardine platform ACP IP register header (Jaroslav Kysela) [2179850] - ASoC: max98396: Make data monitor features configurable (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Modify dai_id macros to be more generic (Jaroslav Kysela) [2179850] - ASoC: tas2562: Drop conflicting set_bias_level power setting (Jaroslav Kysela) [2179850] - ASoC: tas2764: Export highpass filter setting (Jaroslav Kysela) [2179850] - ASoC: tas2764: Add IRQ handling (Jaroslav Kysela) [2179850] - ASoC: sigmadsp: switch to use kmemdup_nul() helper (Jaroslav Kysela) [2179850] - ASoC: max98088: add support for noise gate reg (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Use generic implementation for .ipc_msg_data field (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add snd_sof_dsp_ops callbacks for pcm and mail box (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Add dai driver for mt8186 (Jaroslav Kysela) [2179850] - ASoC: codecs: add suspend and resume for ES8316 (Jaroslav Kysela) [2179850] - ASoC: SOF: imx8ulp: add missing of_node_put() in imx8ulp_probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: imx: imx8ulp: declare ops structure as static (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Skip IMR boot after a firmware crash or boot failure (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Verify ext manifest magic number (Jaroslav Kysela) [2179850] - ASoC: SOF: Kconfig: Make IPC_MESSAGE_INJECTOR depend on SND_SOC_SOF (Jaroslav Kysela) [2179850] - ASoC: SOF: Kconfig: Make IPC_FLOOD_TEST depend on SND_SOC_SOF (Jaroslav Kysela) [2179850] - ALSA: memalloc: Drop special handling of GFP for CONTINUOUS allocation (Jaroslav Kysela) [2179850] - ASoC: Intel: sst: Switch to standard device pages (Jaroslav Kysela) [2179850] - ALSA: pdaudiocf: Drop superfluous GFP setup (Jaroslav Kysela) [2179850] - ALSA: vx: Drop superfluous GFP setup (Jaroslav Kysela) [2179850] - ASoC: atmel_ssc_dai: Remove the unneeded result variable (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup WakeEnable and WakeStatus (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup AC Timing Control (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup IO control (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup PCM Stream channel map and channel count (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup PCM stream capabilities (Jaroslav Kysela) [2179850] - soundwire: intel: add comment for control stream cap/chmap (Jaroslav Kysela) [2179850] - soundwire: intel: remove unused PDM capabilities (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup SHIM SYNC (Jaroslav Kysela) [2179850] - soundwire: intel: remove IPPTR unused definition (Jaroslav Kysela) [2179850] - soundwire: intel: regroup definitions for LCTL (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup definition of LCOUNT (Jaroslav Kysela) [2179850] - soundwire: intel: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2179850] - soundwire: bus: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2179850] - soundwire: intel: set dev_num_ida_min (Jaroslav Kysela) [2179850] - soundwire: bus: allow device number to be unique at system level (Jaroslav Kysela) [2179850] - soundwire: bus: rename sdw_ida as sdw_bus_ida (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add remapping for HP Omen 16-k0005TX (Jaroslav Kysela) [2179850] - ALSA: hda: cleanup definitions for multi-link registers (Jaroslav Kysela) [2179850] - ASoC: wcd9335: remove always-true condition (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: remove unused definitions (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Remove dai_posn variable (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Add copy function for capture case (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Move sof_compr_copy functionality (Jaroslav Kysela) [2179850] - ASoC: Intel: fix unused-variable warning in probe_codec (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: summarize related settings at soc_new_pcm() (Jaroslav Kysela) [2179850] - ASoC: SOF: Fix compilation when HDA_AUDIO_CODEC config is disabled (Jaroslav Kysela) [2179850] - ASoC: amd: acp: add a label to make error path more clean (Jaroslav Kysela) [2179850] - ASoC: amd: acp: switch to use dev_err_probe() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: remove unnecessary NULL checks (Jaroslav Kysela) [2179850] - ASoC: Change handling of unimplemented set_bclk_ratio (Jaroslav Kysela) [2179850] - ALSA: hda: Remove unused defines (Jaroslav Kysela) [2179850] - ALSA: hda: Remove unused MAX_PIN_CONFIGS constant (Jaroslav Kysela) [2179850] - ALSA: hda: Rework snd_hdac_stream_reset() to use macros (Jaroslav Kysela) [2179850] - ALSA: hda: Move stream-register polling macros (Jaroslav Kysela) [2179850] - ASoC: SOF: imx: Add i.MX8ULP HW support (Jaroslav Kysela) [2179850] - ASoC: soc-utils-test: Add test for snd_soc_params_to_bclk() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Use snd_soc_tdm_params_to_bclk() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Fix comment typo in cs42l42_slow_start_put() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Move cs42l42_supply_names to .c file (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add include dependencies to cs42l42.h (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Don't include kernel.h (Jaroslav Kysela) [2179850] - ASoC: codecs: es8326: change es8326_regmap_config to static (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Add support for computing timestamps (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Save channel count and sample bytes (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Introduce sof_compr_stream (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Remove byte offset computation (Jaroslav Kysela) [2179850] - soundwire: intel: Remove unnecessary TODO (Jaroslav Kysela) [2179850] - ASoC: Variable type completion (Jaroslav Kysela) [2179850] - ASoC: core: remove setting platform_max in kcontrol macros (Jaroslav Kysela) [2179850] - ALSA: hda: Fix page fault in snd_hda_codec_shutdown() (Jaroslav Kysela) [2179850] - ALSA: hda: Remove codec init and exit routines (Jaroslav Kysela) [2179850] - ALSA: hda: Always free codec on the device release (Jaroslav Kysela) [2179850] - ASoC: Intel: Drop hdac_ext usage for codec device creation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Introduce HDA codec init and exit routines (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Introduce HDA codec init and exit routines (Jaroslav Kysela) [2179850] - ASoC: codecs: add support for ES8326 (Jaroslav Kysela) [2179850] - ASoC: Intel: Drop legacy HSW/BDW board-match information (Jaroslav Kysela) [2179850] - ASoC: Intel: catpt: Drop SND_SOC_ACPI_INTEL_MATCH dependency (Jaroslav Kysela) [2179850] - ASoC: Intel: bdw_rt286: Rename module (Jaroslav Kysela) [2179850] - ASoC: Intel: hsw_rt5640: Rename module (Jaroslav Kysela) [2179850] - ASoC: soc-utils: Improve kerneldoc for snd_soc_tdm_params_to_bclk() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add TDM support for acp i2s stream (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Initialize list to store acp_stream during pcm_open (Jaroslav Kysela) [2179850] - ASoC: Variable type completion (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: Fixup DAI sample format (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Add sof_mt8186_machs for mt8186 (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce function sof_of_machine_select (Jaroslav Kysela) [2179850] - ASoC: omap: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: DAPM: Replace sprintf() calls with sysfs_emit_at() (Jaroslav Kysela) [2179850] - ASoC: core: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: skylake: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: catpt: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: sst: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: tlv320aic26: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: cs43130: Replace scnprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ALSA: aoa: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ALSA: ac97: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: cirrus-common: Use UID to map correct amp to prefix (Jaroslav Kysela) [2179850] - ASoC: codecs: show PING status on resume failures (Jaroslav Kysela) [2179850] - soundwire: add sdw_show_ping_status() helper (Jaroslav Kysela) [2179850] - soundwire: intel/cadence: expose PING status in manager ops (Jaroslav Kysela) [2179850] - soundwire: add read_ping_status helper definition in manager ops (Jaroslav Kysela) [2179850] - soundwire: qcom: Update error prints to debug prints (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Drop no longer used ROM state definitions (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: Use the FSR state definitions during bootup (Jaroslav Kysela) [2179850] - ALSA: wavefront: remove redundant assignment to pointer end (Jaroslav Kysela) [2179850] - soundwire: Use acpi_dev_for_each_child() (Jaroslav Kysela) [2179850] - firewire: cdev: fix potential leak of kernel stack due to uninitialized value (Jaroslav Kysela) [2179850] - list: Add list_next_entry_circular() and list_prev_entry_circular() (Jaroslav Kysela) [2179850] - ASoC: cs43130: Re-use generic struct u16_fract (Jaroslav Kysela) [2179850] - firewire: fix potential uaf in outbound_phy_packet_callback() (Jaroslav Kysela) [2179850] - firewire: add kernel API to access packet structure in request structure for AR context (Jaroslav Kysela) [2179850] - firewire: add kernel API to access CYCLE_TIME register (Jaroslav Kysela) [2179850] - firewire: Add dummy read_csr/write_csr functions (Jaroslav Kysela) [2179850] - treewide: Replace open-coded flex arrays in unions (Jaroslav Kysela) [2179850] - firewire: Remove function callback casts (Jaroslav Kysela) [2179850] - ALSA: doc: Document PC Beep Hidden Register on Realtek ALC256 (Jaroslav Kysela) [2179850] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2179850]- Revert "softirq: Let ksoftirqd do its job" (Oleg Nesterov) [2196767] - perf: Fix check before add_event_to_groups() in perf_group_detach() (Michael Petlan) [2209645] {CVE-2023-2235} - perf/core: Call LSM hook after copying perf_event_attr (Audra Mitchell) [2172142] - kprobes: Skip clearing aggrprobe's post_handler in kprobe-on-ftrace case (Audra Mitchell) [2172142] - cgroup/cpuset: Enable update_tasks_cpumask() on top_cpuset (Audra Mitchell) [2172142] - cgroup: Fix race condition at rebind_subsystems() (Audra Mitchell) [2172142] - tick/nohz: unexport __init-annotated tick_nohz_full_setup() (Audra Mitchell) [2172142] - ipc/mqueue: use get_tree_nodev() in mqueue_get_tree() (Audra Mitchell) [2172142] - genirq: Synchronize interrupt thread startup (Audra Mitchell) [2172142] - genirq: Initialize request_mutex if CONFIG_SPARSE_IRQ=n (Audra Mitchell) [2172142] - scftorture: Fix distribution of short handler delays (Audra Mitchell) [2172142] - tick/nohz: Use WARN_ON_ONCE() to prevent console saturation (Audra Mitchell) [2172142] - ipc/sem: do not sleep with a spin lock held (Audra Mitchell) [2172142] - signal: In get_signal test for signal_group_exit every time through the loop (Audra Mitchell) [2172142] - genirq: Move prio assignment into the newly created thread (Audra Mitchell) [2172142] - sched,irq: Convert to sched_set_fifo() (Audra Mitchell) [2172142] - cgroup/cpuset: Fix violation of cpuset locking rule (Audra Mitchell) [2172142] - timers: Move clearing of base::timer_running under base:: Lock (Audra Mitchell) [2172142] - cgroup1: fix leaked context root causing sporadic NULL deref in LTP (Audra Mitchell) [2172142] - jump_label: Fix usage in module __init (Audra Mitchell) [2172142] - padata: fix possible padata_works_lock deadlock (Audra Mitchell) [2172142] - genirq/PM: Always unlock IRQ descriptor in rearm_wake_irq() (Audra Mitchell) [2172142] - padata: upgrade smp_mb__after_atomic to smp_mb in padata_do_serial (Audra Mitchell) [2172142] - cpu/speculation: Warn on unsupported mitigations= parameter (Audra Mitchell) [2172142] - x86/speculation: Remove redundant arch_smt_update() invocation (Audra Mitchell) [2172142] - cpu/hotplug: Non-SMP machines do not make use of booted_once (Audra Mitchell) [2172142] - can: usb_8dev: usb_8dev_start_xmit(): fix double dev_kfree_skb() in error path (Jose Ignacio Tornos Martinez) [2156581] {CVE-2022-28388} - kernfs: Improve kernfs_notify() poll notification latency (Ian Kent) [2195844] - stmmac: fix changing mac address (Corinna Vinschen) [2177654] - net/sched: cls_tcindex: downgrade to imperfect hash (Davide Caratti) [2192308] {CVE-2023-1829} - Bluetooth: btsdio: fix use after free bug in btsdio_remove due to race condition (Ricardo Robaina) [2185961] {CVE-2023-1989} - net: qcom/emac: Fix use after free bug in emac_remove due to race condition (Ricardo Robaina) [2192673] {CVE-2023-2483} - s390/crypto: improve retry logic in case of master key change (Tobias Huschle) [2212794] - bpf: pull before calling skb_postpull_rcsum() (Felix Maurer) [2186521] - bpf, sockmap: fix race in sock_map_free() (Felix Maurer) [2186521] - bpf, sock_map: Move cancel_work_sync() out of sock lock (Felix Maurer) [2186521] - brcmfmac: Switch to appropriate helper to load EFI variable contents (Lenny Szubowicz) [2183047] - iwlwifi: Switch to proper EFI variable store interface (Lenny Szubowicz) [2183047] - efi: Store mask of supported runtime services in struct efi (Lenny Szubowicz) [2183047] - NFS: Don't report errors from nfs_pageio_complete() more than once (Benjamin Coddington) [2213644] - NFS: Do not report flush errors in nfs_write_end() (Benjamin Coddington) [2213644] - NFS: Don't report ENOSPC write errors twice (Benjamin Coddington) [2213644] - NFS: fsync() should report filesystem errors over EINTR/ERESTARTSYS (Benjamin Coddington) [2213644] - NFS: Do not report EINTR/ERESTARTSYS as mapping errors (Benjamin Coddington) [2213644] - net: openvswitch: release vport resources on failure (Antoine Tenart) [2190225] - net: openvswitch: Add support to count upcall packets (Antoine Tenart) [2190225] - net: openvswitch: fix race on port output (Antoine Tenart) [2190225] - net: openvswitch: fix possible memory leak in ovs_meter_cmd_set() (Antoine Tenart) [2190225] - net: openvswitch: fix flow memory leak in ovs_flow_cmd_new (Antoine Tenart) [2190225] - openvswitch: Fix flow lookup to use unmasked key (Antoine Tenart) [2190225] - openvswitch: switch from WARN to pr_warn (Antoine Tenart) [2190225] - EDAC/i10nm: Add Intel Emerald Rapids server support (Aristeu Rozanski) [2165649] - EDAC/skx_common: Delete duplicated and unreachable code (Aristeu Rozanski) [2165649] - EDAC/skx_common: Enable EDAC support for the "near" memory (Aristeu Rozanski) [2165649] - EDAC/i10nm: Print an extra register set of retry_rd_err_log (Aristeu Rozanski) [2165649] - EDAC/i10nm: Retrieve and print retry_rd_err_log registers for HBM (Aristeu Rozanski) [2165649] - EDAC/skx_common: Add ChipSelect ADXL component (Aristeu Rozanski) [2165649] - EDAC/i10nm: Fix NVDIMM detection (Aristeu Rozanski) [2165649] - EDAC/skx_common: Set the memory type correctly for HBM memory (Aristeu Rozanski) [2165649] - EDAC/mc: Add new HBM2 memory type (Aristeu Rozanski) [2165649] - EDAC: Replace EDAC_DIMM_PTR() macro with edac_get_dimm() function (Aristeu Rozanski) [2165649] - tpm: disable hwrng for fTPM on some AMD designs (Štěpán Horáček) [2159583] - tpm/eventlog: Don't abort tpm_read_log on faulty ACPI address (Štěpán Horáček) [2159583] - tpm: Use managed allocation for bios event log (Štěpán Horáček) [2159583] - efi: tpm: Avoid READ_ONCE() for accessing the event log (Štěpán Horáček) [2159583] - tpm: Allow system suspend to continue when TPM suspend fails (Štěpán Horáček) [2159583] - tpm: tpm_tis: Add the missed acpi_put_table() to fix memory leak (Štěpán Horáček) [2159583] - tpm: tpm_crb: Add the missed acpi_put_table() to fix memory leak (Štěpán Horáček) [2159583] - tpm: acpi: Call acpi_put_table() to fix memory leak (Štěpán Horáček) [2159583] - tpm/tpm_crb: Fix error message in __crb_relinquish_locality() (Štěpán Horáček) [2159583] - tpm: Avoid function type cast of put_device() (Štěpán Horáček) [2159583] - char: tpm: Protect tpm_pm_suspend with locks (Štěpán Horáček) [2159583] - efi/tpm: Pass correct address to memblock_reserve (Štěpán Horáček) [2159583] - char: move from strlcpy with unused retval to strscpy (Štěpán Horáček) [2159583] - tpm: eventlog: Fix section mismatch for DEBUG_SECTION_MISMATCH (Štěpán Horáček) [2159583] - tpm: Fix buffer access in tpm2_get_tpm_pt() (Štěpán Horáček) [2159583] - tpm: ibmvtpm: Correct the return value in tpm_ibmvtpm_probe() (Štěpán Horáček) [2159583] - tpm: use try_get_ops() in tpm-space.c (Štěpán Horáček) [2159583] - tpm: Fix error handling in async work (Štěpán Horáček) [2159583] - tpm: vtpm_proxy: Check length to avoid compiler warning (Štěpán Horáček) [2159583] - tpm: fix NPE on probe for missing device (Štěpán Horáček) [2159583] - tpm: fix potential NULL pointer access in tpm_del_char_device (Štěpán Horáček) [2159583] - tpm_tis: Fix an error handling path in 'tpm_tis_core_init()' (Štěpán Horáček) [2159583] - tpm: add request_locality before write TPM_INT_ENABLE (Štěpán Horáček) [2159583] - tpm_tis_spi: Add missing SPI ID (Štěpán Horáček) [2159583] - tpm: fix Atmel TPM crash caused by too frequent queries (Štěpán Horáček) [2159583] - tpm: Check for integer overflow in tpm2_map_response_body() (Štěpán Horáček) [2159583] - KEYS: trusted: Fix TPM reservation for seal/unseal (Štěpán Horáček) [2135881] - KVM: x86: Add helpers to recalc physical vs. logical optimized APIC maps (John Allen) [2117761] - KVM: x86: Allow APICv APIC ID inhibit to be cleared (John Allen) [2117761] - KVM: x86: Track required APICv inhibits with variable, not callback (John Allen) [2117761] - Revert "KVM: SVM: Do not throw warning when calling avic_vcpu_load on a running vcpu" (John Allen) [2117761] - KVM: SVM: Handle multiple logical targets in AVIC kick fastpath (John Allen) [2117761] - KVM: SVM: Require logical ID to be power-of-2 for AVIC entry (John Allen) [2117761] - KVM: SVM: Update svm->ldr_reg cache even if LDR is "bad" (John Allen) [2117761] - KVM: SVM: Always update local APIC on writes to logical dest register (John Allen) [2117761] - KVM: SVM: Inhibit AVIC if vCPUs are aliased in logical mode (John Allen) [2117761] - KVM: x86: Inhibit APICv/AVIC if the optimized physical map is disabled (John Allen) [2117761] - KVM: x86: Honor architectural behavior for aliased 8-bit APIC IDs (John Allen) [2117761] - Documentation: KVM: Add SPDX-License-Identifier tag (John Allen) [2117761] - Documentation: KVM: add virtual CPU errata documentation (John Allen) [2117761] - KVM: x86: Disable APIC logical map if vCPUs are aliased in logical mode (John Allen) [2117761] - KVM: x86: Disable APIC logical map if logical ID covers multiple MDAs (John Allen) [2117761] - KVM: x86: Skip redundant x2APIC logical mode optimized cluster setup (John Allen) [2117761] - KVM: x86: Explicitly track all possibilities for APIC map's logical modes (John Allen) [2117761] - KVM: x86: Explicitly skip optimized logical map setup if vCPU's LDR==0 (John Allen) [2117761] - KVM: SVM: Add helper to perform final AVIC "kick" of single vCPU (John Allen) [2117761] - KVM: SVM: Document that vCPU ID == APIC ID in AVIC kick fastpatch (John Allen) [2117761] - Revert "KVM: SVM: Use target APIC ID to complete x2AVIC IRQs when possible" (John Allen) [2117761] - KVM: SVM: Replace "avic_mode" enum with "x2avic_enabled" boolean (John Allen) [2117761] - KVM: x86: Inhibit APIC memslot if x2APIC and AVIC are enabled (John Allen) [2117761] - KVM: x86: Handle APICv updates for APIC "mode" changes via request (John Allen) [2117761] - KVM: x86: Don't inhibit APICv/AVIC if xAPIC ID mismatch is due to 32-bit ID (John Allen) [2117761] - KVM: x86: Don't inhibit APICv/AVIC on xAPIC ID "change" if APIC is disabled (John Allen) [2117761] - KVM: SVM: Process ICR on AVIC IPI delivery failure due to invalid target (John Allen) [2117761] - KVM: SVM: Flush the "current" TLB when activating AVIC (John Allen) [2117761] - KVM: x86: Purge "highest ISR" cache when updating APICv state (John Allen) [2117761] - KVM: x86: Blindly get current x2APIC reg value on "nodecode write" traps (John Allen) [2117761] - KVM: x86: Bug the VM if an accelerated x2APIC trap occurs on a "bad" reg (John Allen) [2117761] - KVM: x86: Do not block APIC write for non ICR registers (John Allen) [2117761] - KVM: x86: Add support for vICR APIC-write VM-Exits in x2APIC mode (John Allen) [2117761] - KVM: x86: fix APICv/x2AVIC disabled when vm reboot by itself (John Allen) [2117761] - KVM: SEV: fix misplaced closing parenthesis (John Allen) [2117761] - KVM: SVM: Do not virtualize MSR accesses for APIC LVTT register (John Allen) [2117761] - KVM: SVM: Fix x2APIC MSRs interception (John Allen) [2117761] - KVM: x86: nSVM: optimize svm_set_x2apic_msr_interception (John Allen) [2117761] - KVM: SVM: Add AVIC doorbell tracepoint (John Allen) [2117761] - KVM: SVM: Use target APIC ID to complete x2AVIC IRQs when possible (John Allen) [2117761] - KVM: x86: Warning APICv inconsistency only when vcpu APIC mode is valid (John Allen) [2117761] - KVM: x86: Move APIC access page helper to common x86 code (John Allen) [2117761] - KVM: SVM: Introduce hybrid-AVIC mode (John Allen) [2117761] - KVM: SVM: Do not throw warning when calling avic_vcpu_load on a running vcpu (John Allen) [2117761] - KVM: SVM: Modify AVIC GATag to support max number of 512 vCPUs (John Allen) [2117761] - KVM: SVM: Fix a benign off-by-one bug in AVIC physical table mask (John Allen) [2117761] - KVM: SVM: Ignore writes to Remote Read Data on AVIC write traps (John Allen) [2117761] - KVM: SVM: Introduce logic to (de)activate x2AVIC mode (John Allen) [2117761] - KVM: x86: nSVM: always intercept x2apic msrs (John Allen) [2117761] - KVM: SVM: Don't put/load AVIC when setting virtual APIC mode (John Allen) [2117761] - KVM: SVM: Refresh AVIC configuration when changing APIC mode (John Allen) [2117761] - KVM: x86: Deactivate APICv on vCPU with APIC disabled (John Allen) [2117761] - KVM: SVM: Adding support for configuring x2APIC MSRs interception (John Allen) [2117761] - KVM: SVM: Do not support updating APIC ID when in x2APIC mode (John Allen) [2117761] - KVM: SVM: Compute dest based on sender's x2APIC status for AVIC kick (John Allen) [2117761] - KVM: SVM: Update avic_kick_target_vcpus to support 32-bit APIC ID (John Allen) [2117761] - KVM: SVM: Update max number of vCPUs supported for x2AVIC mode (John Allen) [2117761] - KVM: svm/avic: Drop "struct kvm_x86_ops" for avic_hardware_setup() (John Allen) [2117761] - KVM: SVM: Detect X2APIC virtualization (x2AVIC) support (John Allen) [2117761] - KVM: x86: lapic: Rename [GET/SET]_APIC_DEST_FIELD to [GET/SET]_XAPIC_DEST_FIELD (John Allen) [2117761] - x86/cpufeatures: Introduce x2AVIC CPUID bit (John Allen) [2117761] - KVM: x86: SVM: fix nested PAUSE filtering when L0 intercepts PAUSE (John Allen) [2117761] - KVM: x86: nSVM: support PAUSE filtering when L0 doesn't intercept PAUSE (John Allen) [2117761] - KVM: x86: SVM: drop preempt-safe wrappers for avic_vcpu_load/put (John Allen) [2117761] - KVM: x86: disable preemption around the call to kvm_arch_vcpu_{un|}blocking (John Allen) [2117761] - KVM: x86: disable preemption while updating apicv inhibition (John Allen) [2117761] - KVM: SVM: Fix x2APIC Logical ID calculation for avic_kick_target_vcpus_fast (John Allen) [2117761] - KVM: x86: SVM: fix avic_kick_target_vcpus_fast (John Allen) [2117761] - KVM: SVM: Use target APIC ID to complete AVIC IRQs when possible (John Allen) [2117761] - KVM: x86: SVM: remove avic's broken code that updated APIC ID (John Allen) [2117761] - KVM: x86: inhibit APICv/AVIC on changes to APIC ID or APIC base (John Allen) [2117761] - KVM: x86: document AVIC/APICv inhibit reasons (John Allen) [2117761] - KVM: x86: SVM: allow AVIC to co-exist with a nested guest running (John Allen) [2117761] - KVM: x86: allow per cpu apicv inhibit reasons (John Allen) [2117761] - KVM: x86: SVM: allow to force AVIC to be enabled (John Allen) [2117761]- sctp: fix a potential overflow in sctp_ifwdtsn_skip (Xin Long) [2189324] - sctp: check send stream number after wait_for_sndbuf (Xin Long) [2189324] - sctp: sctp_sock_filter(): avoid list_entry() on possibly empty list (Xin Long) [2189324] - sctp: fail if no bound addresses can be used for a given scope (Xin Long) [2189324] - sctp: sysctl: make extra pointers netns aware (Xin Long) [2189324] - sctp: add a refcnt in sctp_stream_priorities to avoid a nested loop (Xin Long) [2189324] - sctp: delete free member from struct sctp_sched_ops (Xin Long) [2189324] - sctp: fix memory leak in sctp_stream_outq_migrate() (Xin Long) [2189324] - sctp: clear out_curr if all frag chunks of current msg are pruned (Xin Long) [2189324] - sctp: remove the unnecessary sinfo_stream check in sctp_prsctp_prune_unsent (Xin Long) [2189324] - sched/fair: Fix imbalance overflow (Phil Auld) [RHEL-419] - sched/fair: Move calculate of avg_load to a better location (Phil Auld) [RHEL-419] - sched/fair: Sanitize vruntime of entity being migrated (Phil Auld) [RHEL-419] - sched/rt: pick_next_rt_entity(): check list_entry (Phil Auld) [RHEL-419] - sched/fair: sanitize vruntime of entity being placed (Phil Auld) [RHEL-419] - sched/fair: Limit sched slice duration (Phil Auld) [RHEL-419] - sched/topology: Add __init for sched_init_domains() (Phil Auld) [RHEL-419] - sched/core: Reorganize ttwu_do_wakeup() and ttwu_do_activate() (Phil Auld) [RHEL-419] - sched/core: Micro-optimize ttwu_runnable() (Phil Auld) [RHEL-419] - sched/numa: Stop an exhastive search if an idle core is found (Phil Auld) [RHEL-419] - sched/topology: Add __init for init_defrootdomain (Phil Auld) [RHEL-419] - sched: Clear ttwu_pending after enqueue_task() (Phil Auld) [RHEL-419] - sched/psi: Fix possible missing or delayed pending event (Phil Auld) [RHEL-419] - sched/fair: Cleanup for SIS_PROP (Phil Auld) [RHEL-419] - sched/fair: Default to false in test_idle_cores() (Phil Auld) [RHEL-419] - sched/fair: Remove useless check in select_idle_core() (Phil Auld) [RHEL-419] - sched/fair: Avoid double search on same cpu (Phil Auld) [RHEL-419] - sched/fair: Remove redundant check in select_idle_smt() (Phil Auld) [RHEL-419] - sched: Rename task_running() to task_on_cpu() (Phil Auld) [RHEL-419] - sched/fair: Move call to list_last_entry() in detach_tasks (Phil Auld) [RHEL-419] - sched/fair: Cleanup loop_max and loop_break (Phil Auld) [RHEL-419] - sched/fair: Make sure to try to detach at least one movable task (Phil Auld) [RHEL-419] - sched: Add update_current_exec_runtime helper (Phil Auld) [RHEL-419] - sched/fair: Don't init util/runnable_avg for !fair task (Phil Auld) [RHEL-419] - sched/fair: Move task sched_avg attach to enqueue_task_fair() (Phil Auld) [RHEL-419] - sched/fair: Update comments in enqueue/dequeue_entity() (Phil Auld) [RHEL-419] - sched/fair: Maintain task se depth in set_task_rq() (Phil Auld) [RHEL-419] - sched/debug: Print each field value left-aligned in sched_show_task() (Phil Auld) [RHEL-419] - sched/fair: Make per-cpu cpumasks static (Phil Auld) [RHEL-419] - sched/fair: Rename select_idle_mask to select_rq_mask (Phil Auld) [RHEL-419] - sched: Snapshot thread flags (Phil Auld) [RHEL-419] - sched/fair: find_idlest_group(): Remove unused sd_flag parameter (Phil Auld) [RHEL-419] - redhat/genlog.py: add support to list/process zstream Jira tickets (Herton R. Krzesinski) - powercap: intel_rapl: add support for Emerald Rapids (Prarit Bhargava) [2156804] - vsock: avoid to close connected socket after the timeout (Stefano Garzarella) [2209710] - sfc: Fix module EEPROM reporting for QSFP modules (Íñigo Huguet) [2192382] - perf script: Fix missing Retire Latency fields option documentation (Michael Petlan) [2177014] - perf event x86: Add retire_lat when synthesizing PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [2177014] - perf test x86: Support the retire_lat (Retire Latency) sample_type check (Michael Petlan) [2177014] - perf script: Support Retire Latency (Michael Petlan) [2177014] - perf report: Support Retire Latency (Michael Petlan) [2177014]- netfilter: nft_redir: correct value of inet type `.maxattrs` (Florian Westphal) [2189517] - netfilter: tproxy: fix deadlock due to missing BH disable (Florian Westphal) [2189517] - netfilter: ebtables: fix table blob use-after-free (Florian Westphal) [2189517] - netfilter: ctnetlink: fix possible refcount leak in ctnetlink_create_conntrack() (Florian Westphal) [2189517] - netfilter: nf_tables: make table handle allocation per-netns friendly (Florian Westphal) [2189517] - netfilter: nf_tables: really skip inactive sets when allocating name (Florian Westphal) [2189517] - intel_idle: add Emerald Rapids Xeon support (Prarit Bhargava) [2156824] - tools/power turbostat: Introduce support for EMR (Prarit Bhargava) [2156806] - kunit: drm: make DRM buddy test compatible with other pages sizes (Nico Pache) [2209108] - redhat: fix missing kunit module in mod-internal.list (Nico Pache) [2209108] - bluetooth: Perform careful capability checks in hci_sock_ioctl() (Ricardo Robaina) [2196353] {CVE-2023-2002} - macvlan: Fix mc_filter calculation (Xin Long) [2186948] - macvlan: Add netlink attribute for broadcast cutoff (Xin Long) [2186948] - macvlan: Skip broadcast queue if multicast with single receiver (Xin Long) [2186948] - net: macvlan: fix memory leaks of macvlan_common_newlink (Xin Long) [2186948] - net: macvlan: change schedule system_wq to system_unbound_wq (Xin Long) [2186948] - net: macvlan: fix potential UAF problem for lowerdev (Xin Long) [2186948] - macvlan: Support for high multicast packet rate (Xin Long) [2186948] - macvlan: Skip loopback packets in RX handler (Xin Long) [2186948] - macvlan: fix null dereference in macvlan_device_event() (Xin Long) [2186948] - macvlan: add cond_resched() during multicast processing (Xin Long) [2186948] - macvlan: schedule bc_work even if error (Xin Long) [2186948] - macvlan: replace kfree_skb by consume_skb for drop profiles (Xin Long) [2186948] - tipc: fix unexpected link reset due to discovery messages (Xin Long) [2193242] - tipc: Fix potential OOB in tipc_link_proto_rcv() (Xin Long) [2193242] - tipc: check skb_linearize() return value in tipc_disc_rcv() (Xin Long) [2193242] - tipc: fix the msg->req tlv len check in tipc_nl_compat_name_table_dump_header (Xin Long) [2193242] - tipc: fix a null-ptr-deref in tipc_topsrv_accept (Xin Long) [2193242] - s390/dasd: fix hanging blockdevice after request requeue (Tobias Huschle) [2043875] - s390/dasd: add autoquiesce event for start IO error (Tobias Huschle) [2043875] - s390/dasd: add aq_timeouts autoquiesce trigger (Tobias Huschle) [2043875] - s390/dasd: add aq_requeue sysfs attribute (Tobias Huschle) [2043875] - s390/dasd: add aq_mask sysfs attribute (Tobias Huschle) [2043875] - s390/dasd: add autoquiesce feature (Tobias Huschle) [2043875] - s390/dasd: remove unused DASD EER defines (Tobias Huschle) [2043875] - md: Fix bitmap offset type in sb writer (Nigel Croxon) [2189478] - md/raid5: Improve performance for sequential IO (Nigel Croxon) [2189478] - md/raid5: remove unused working_disks variable (Nigel Croxon) [2189478] - md/raid10: fix memleak of md thread (Nigel Croxon) [2189478] - md/raid10: fix memleak for 'conf->bio_split' (Nigel Croxon) [2189478] - md/raid10: fix leak of 'r10bio->remaining' for recovery (Nigel Croxon) [2189478] - md/raid10: don't BUG_ON() in raise_barrier() (Nigel Croxon) [2189478] - md: fix soft lockup in status_resync (Nigel Croxon) [2189478] - md: add error_handlers for raid0 and linear (Nigel Croxon) [2151208 2189478] - md: Use optimal I/O size for last bitmap page (Nigel Croxon) [2189478] - md: Fix types in sb writer (Nigel Croxon) [2189478] - md: Move sb writer loop to its own function (Nigel Croxon) [2189478] - md/raid10: Fix typo in comment (replacment -> replacement) (Nigel Croxon) [2189478] - md/raid10: fix null-ptr-deref in raid10_sync_request (Nigel Croxon) [2189478] - md/raid10: fix task hung in raid10d (Nigel Croxon) [2189478] - md: simplify sysctl registration (Nigel Croxon) [2189478] - HID: intel-ish-hid: ipc: Fix potential use-after-free in work function (Tony Camuso) [2182388] - devm-helpers: Fix devm_delayed_work_autocancel() kerneldoc (Tony Camuso) [2182388] - devm-helpers: Add resource managed version of work init (Tony Camuso) [2182388] - workqueue: Add resource managed version of delayed work init (Tony Camuso) [2182388] - HID: stop drivers from selecting CONFIG_HID (Tony Camuso) [2182388] - HID: intel_ish-hid: Add check for ishtp_dma_tx_map (Tony Camuso) [2182388] - HID: intel-ish-hid: ishtp: remove variable rb_count (Tony Camuso) [2182388]- i40e: Add support for VF to specify its primary MAC address (Stefan Assmann) [2091552] - net/tg3: resolve deadlock in tg3_reset_task() during EEH (Ken Cox) [2159218 2166475] - HID: asus: use spinlock to safely schedule workers (Ricardo Robaina) [2186282] {CVE-2023-1079} - HID: asus: use spinlock to protect concurrent accesses (Ricardo Robaina) [2186282] {CVE-2023-1079} - e1000e: Disable TSO on i219-LM card to increase speed (Ken Cox) [2109782] - erspan: get the proto with the md version for collect_md (Xin Long) [2207724] - netfilter: nf_tables: deactivate anonymous set from preparation phase (Florian Westphal) [2196148] {CVE-2023-32233} - scsi: scsi_dh_alua: Fix memleak for 'qdata' in alua_activate() (Ewan D. Milne) [2171092] - scsi: core: Add BLIST_SKIP_VPD_PAGES for SKhynix H28U74301AMR (Ewan D. Milne) [2171092] - scsi: core: Add BLIST_NO_VPD_SIZE for some VDASD (Ewan D. Milne) [2171092] - scsi: core: Fix a source code comment (Ewan D. Milne) [2171092] - scsi: Revert "scsi: core: map PQ=1, PDT=other values to SCSI_SCAN_TARGET_PRESENT" (Ewan D. Milne) [2171092] - scsi: scsi_debug: Delete unreachable code in inquiry_vpd_b0() (Ewan D. Milne) [2171092] - scsi: core: Use SCSI_SCAN_INITIAL in do_scsi_scan_host() (Ewan D. Milne) [2171092] - scsi: core: Use SCSI_SCAN_RESCAN in __scsi_add_device() (Ewan D. Milne) [2171092] - scsi: Define the COMPLETED sense key (Ewan D. Milne) [2171092] - scsi: core: Add I/O timeout count for SCSI device (Ewan D. Milne) [2171092] - tipc: check the bearer min mtu properly when setting it by netlink (Xin Long) [2185143] - tipc: do not update mtu if msg_max is too small in mtu negotiation (Xin Long) [2185143] - tipc: add tipc_bearer_min_mtu to calculate min mtu (Xin Long) [2185143] - net/tipc: fix tipc header files for kernel-doc (Xin Long) [2185143] - scsi: smartpqi: Update version to 2.1.22-040 (Don Brace) [2162103] - scsi: smartpqi: Update copyright to 2023 (Don Brace) [2162103] - scsi: smartpqi: Add sysfs entry for NUMA node in /sys/block/sdX/device (Don Brace) [2162103] - scsi: smartpqi: Stop sending driver-initiated TURs (Don Brace) [2162103] - scsi: smartpqi: Fix byte aligned writew for ARM servers (Don Brace) [2162103] - scsi: smartpqi: Add support for RAID NCQ priority (Don Brace) [2162103] - scsi: smartpqi: Validate block layer host tag (Don Brace) [2162103] - scsi: smartpqi: Remove contention for raid_bypass_cnt (Don Brace) [2162103] - scsi: smartpqi: Fix rare SAS transport memory leak (Don Brace) [2162103] - scsi: smartpqi: Remove NULL pointer check (Don Brace) [2162103] - scsi: smartpqi: Add new controller PCI IDs (Don Brace) [2162103] - scsi: smartpqi: Map full length of PCI BAR 0 (Don Brace) [2162103] - scsi: smartpqi: Replace one-element array with flexible-array member (Don Brace) [2162103] - scsi: mpi3mr: Use -ENOMEM instead of -1 in mpi3mr_expander_add() (Tomas Henzl) [2163671] - scsi: mpi3mr: Use IRQ save variants of spinlock to protect chain frame allocation (Tomas Henzl) [2163671] - scsi: mpi3mr: Handle soft reset in progress fault code (0xF002) (Tomas Henzl) [2163671] - scsi: mpi3mr: Update driver version to 8.4.1.0.0 (Tomas Henzl) [2163671] - scsi: mpi3mr: Update copyright year (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix W=1 compilation warnings (Tomas Henzl) [2163671] - scsi: mpi3mr: Update MPI Headers to revision 27 (Tomas Henzl) [2163671] - scsi: mpi3mr: Avoid escalating to higher level reset when target is removed (Tomas Henzl) [2163671] - scsi: mpi3mr: Modify MUR timeout value to 120 seconds (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix admin queue memory leak upon soft reset (Tomas Henzl) [2163671] - scsi: mpi3mr: Successive VD delete and add causes FW fault (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix expander node leak in mpi3mr_remove() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix memory leaks in mpi3mr_init_ioc() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix sas_hba.phy memory leak in mpi3mr_remove() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix mpi3mr_hba_port memory leak in mpi3mr_remove() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix config page DMA memory leak (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix throttle_groups memory leak (Tomas Henzl) [2163671] - scsi: mpi3mr: Bad drive in topology results kernel crash (Tomas Henzl) [2163671] - scsi: mpi3mr: NVMe command size greater than 8K fails (Tomas Henzl) [2163671] - scsi: mpi3mr: Return proper values for failures in firmware init path (Tomas Henzl) [2163671] - scsi: mpi3mr: Wait for diagnostic save during controller init (Tomas Henzl) [2163671] - scsi: mpi3mr: Driver unload crashes host when enhanced logging is enabled (Tomas Henzl) [2163671] - scsi: mpi3mr: ioctl timeout when disabling/enabling interrupt (Tomas Henzl) [2163671] - scsi: mpi3mr: Remove unneeded version.h include (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix missing mrioc->evtack_cmds initialization (Tomas Henzl) [2163671] - scsi: mpi3mr: Use number of bits to manage bitmap sizes (Tomas Henzl) [2163671] - scsi: mpi3mr: Remove unnecessary memcpy() to alltgt_info->dmi (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix issues in mpi3mr_get_all_tgt_info() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix an issue found by KASAN (Tomas Henzl) [2163671] - scsi: mpi3mr: Refer CONFIG_SCSI_MPI3MR in Makefile (Tomas Henzl) [2163671] - scsi: mpi3mr: Remove usage of dma_get_required_mask() API (Tomas Henzl) [2163671] - scsi: mpi3mr: Suppress command reply debug prints (Tomas Henzl) [2163671] - ipmi: ipmb: Fix the MODULE_PARM_DESC associated to 'retry_time_ms' (Tony Camuso) [2174220] - ipmi:ssif: Add a timer between request retries (Tony Camuso) [2174220] - ipmi:ssif: Remove rtc_us_timer (Tony Camuso) [2174220] - ipmi_ssif: Rename idle state and check (Tony Camuso) [2174220] - ipmi:ssif: resend_msg() cannot fail (Tony Camuso) [2174220] - ipmi/watchdog: use strscpy() to instead of strncpy() (Tony Camuso) [2174220] - ipmi: ssif_bmc: Convert to i2c's .probe_new() (Tony Camuso) [2174220] - ipmi: fix use after free in _ipmi_destroy_user() (Tony Camuso) [2174220] - ipmi:ssif: Increase the message retry time (Tony Camuso) [2174220] - ipmi: Fix some kernel-doc warnings (Tony Camuso) [2174220] - ipmi: ssif_bmc: Use EPOLLIN instead of POLLIN (Tony Camuso) [2174220] - ipmi: fix msg stack when IPMI is disconnected (Tony Camuso) [2174220] - ipmi: fix memleak when unload ipmi driver (Tony Camuso) [2174220] - ipmi: fix long wait in unload when IPMI disconnect (Tony Camuso) [2174220] - ipmi: kcs: Poll OBF briefly to reduce OBE latency (Tony Camuso) [2174220] - ipmi: ssif_bmc: Add SSIF BMC driver (Tony Camuso) [2174220] - ipmi: Remove unused struct watcher_entry (Tony Camuso) [2174220] - ipmi: kcs: aspeed: Update port address comments (Tony Camuso) [2174220] - ipmi: Add __init/__exit annotations to module init/exit funcs (Tony Camuso) [2174220] - ipmi:ipmb: Don't call ipmi_unregister_smi() on a register failure (Tony Camuso) [2174220] - ipmi:ipmb: Fix a vague comment and a typo (Tony Camuso) [2174220] - ipmi: Fix comment typo (Tony Camuso) [2174220] - char: ipmi: modify NPCM KCS configuration (Tony Camuso) [2174220] - cipso: Fix data-races around sysctl. (Juraj Marcin) [2181138] - netlabel: fix out-of-bounds memory accesses (Juraj Marcin) [2181138] - CIPSO: Fix unaligned memory access in cipso_v4_gentag_hdr (Juraj Marcin) [2181138] - netlabel_domainhash.c: Use built-in RCU list checking (Juraj Marcin) [2181138] - net: netlabel: Use built-in RCU list checking (Juraj Marcin) [2181138] - netlabel: remove redundant assignment to pointer iter (Juraj Marcin) [2181138] - capabilities: fix potential memleak on error path from vfs_getxattr_alloc() (Juraj Marcin) [2181138] - selinux: enable use of both GFP_KERNEL and GFP_ATOMIC in convert_context() (Juraj Marcin) [2181138] - selinux: free contexts previously transferred in selinux_add_opt() (Juraj Marcin) [2181138] - LSM: general protection fault in legacy_parse_param (Juraj Marcin) [2181138] - selinux: check return value of sel_make_avc_files (Juraj Marcin) [2181138] - net/sched: flower: fix error handler on replace (Ivan Vecera) [2180870] - Revert "net/sched: flower: Fix wrong handle assignment during filter change" (Ivan Vecera) [2180870] - net/sched: flower: fix filter idr initialization (Ivan Vecera) [2180870] - net/sched: cls_api: remove block_cb from driver_list before freeing (Ivan Vecera) [2180870] - net/sched: flower: Fix wrong handle assignment during filter change (Ivan Vecera) [2180870] - net/sched: cls_api: Initialize miss_cookie_node when action miss is not used (Ivan Vecera) [2180870] - net/sched: sch_fq: fix integer overflow of "credit" (Ivan Vecera) [2180870] - net/sched: clear actions pointer in miss cookie init fail (Ivan Vecera) [2180870] - net/sched: mqprio: simplify handling of nlattr portion of TCA_OPTIONS (Ivan Vecera) [2180870] - l2tp: generate correct module alias strings (Ivan Vecera) [2180870] - net/sched: act_api: add specific EXT_WARN_MSG for tc action (Ivan Vecera) [2180870] - Revert "net/sched: act_api: move TCA_EXT_WARN_MSG to the correct hierarchy" (Ivan Vecera) [2180870] - netfilter: ctnetlink: revert to dumping mark regardless of event type (Ivan Vecera) [2180870] - net/sched: flower: fix fl_change() error recovery path (Ivan Vecera) [2180870] - net/sched: act_api: move TCA_EXT_WARN_MSG to the correct hierarchy (Ivan Vecera) [2180870] - net/sched: act_connmark: handle errno on tcf_idr_check_alloc (Ivan Vecera) [2180870] - net/sched: act_sample: fix action bind logic (Ivan Vecera) [2180870] - net/sched: act_mpls: fix action bind logic (Ivan Vecera) [2180870] - net/sched: act_pedit: fix action bind logic (Ivan Vecera) [2180870] - net/sched: cls_api: Move call to tcf_exts_miss_cookie_base_destroy() (Ivan Vecera) [2180870] - net/sched: flower: Support hardware miss to tc action (Ivan Vecera) [2180870] - net/sched: flower: Move filter handle initialization earlier (Ivan Vecera) [2180870] - net/sched: cls_api: Support hardware miss to tc action (Ivan Vecera) [2180870] - net/sched: Rename user cookie and act cookie (Ivan Vecera) [2180870] - net/sched: taprio: dynamic max_sdu larger than the max_mtu is unlimited (Ivan Vecera) [2180870] - net/sched: taprio: don't allow dynamic max_sdu to go negative after stab adjustment (Ivan Vecera) [2180870] - net/sched: taprio: fix calculation of maximum gate durations (Ivan Vecera) [2180870] - net/sched: act_pedit: use percpu overlimit counter when available (Ivan Vecera) [2180870] - net/sched: act_gate: use percpu stats (Ivan Vecera) [2180870] - net/sched: act_connmark: transition to percpu stats and rcu (Ivan Vecera) [2180870] - net/sched: act_nat: transition to percpu stats and rcu (Ivan Vecera) [2180870] - selftests: forwarding: tc_actions: cleanup temporary files when test is aborted (Ivan Vecera) [2180870] - net/sched: support per action hw stats (Ivan Vecera) [2180870] - net/sched: introduce flow_offload action cookie (Ivan Vecera) [2180870] - net/sched: pass flow_stats instead of multiple stats args (Ivan Vecera) [2180870] - net/sched: act_pedit, setup offload action for action stats query (Ivan Vecera) [2180870] - net/sched: optimize action stats api calls (Ivan Vecera) [2180870] - net/sched: act_ctinfo: use percpu stats (Ivan Vecera) [2180870] - net/sched: fix error recovery in qdisc_create() (Ivan Vecera) [2180870] - net/sched: taprio: don't segment unnecessarily (Ivan Vecera) [2180870] - net/sched: taprio: split segmentation logic from qdisc_enqueue() (Ivan Vecera) [2180870] - net/sched: taprio: automatically calculate queueMaxSDU based on TC gate durations (Ivan Vecera) [2180870] - net/sched: keep the max_frm_len information inside struct sched_gate_list (Ivan Vecera) [2180870] - net/sched: taprio: warn about missing size table (Ivan Vecera) [2180870] - net/sched: make stab available before ops->init() call (Ivan Vecera) [2180870] - net/sched: taprio: calculate guard band against actual TC gate close time (Ivan Vecera) [2180870] - net/sched: taprio: calculate budgets per traffic class (Ivan Vecera) [2180870] - net/sched: taprio: rename close_time to end_time (Ivan Vecera) [2180870] - net/sched: taprio: calculate tc gate durations (Ivan Vecera) [2180870] - net/sched: taprio: give higher priority to higher TCs in software dequeue mode (Ivan Vecera) [2180870] - net/sched: taprio: avoid calling child->ops->dequeue(child) twice (Ivan Vecera) [2180870] - net/sched: taprio: refactor one skb dequeue from TXQ to separate function (Ivan Vecera) [2180870] - net/sched: taprio: continue with other TXQs if one dequeue() failed (Ivan Vecera) [2180870] - net/sched: taprio: delete peek() implementation (Ivan Vecera) [2180870] - net: sched: sch: Fix off by one in htb_activate_prios() (Ivan Vecera) [2180870] - net/sched: taprio: only pass gate mask per TXQ for igc, stmmac, tsnep, am65_cpsw (Ivan Vecera) [2180870] - net/sched: taprio: pass mqprio queue configuration to ndo_setup_tc() (Ivan Vecera) [2180870] - net/sched: refactor mqprio qopt reconstruction to a library function (Ivan Vecera) [2180870] - net/sched: taprio: centralize mqprio qopt validation (Ivan Vecera) [2180870] - net/sched: mqprio: add extack messages for queue count validation (Ivan Vecera) [2180870] - net/sched: mqprio: allow offloading drivers to request queue count validation (Ivan Vecera) [2180870] - net/sched: mqprio: allow reverse TC:TXQ mappings (Ivan Vecera) [2180870] - net/sched: move struct tc_mqprio_qopt_offload from pkt_cls.h to pkt_sched.h (Ivan Vecera) [2180870] - net/sched: mqprio: refactor offloading and unoffloading to dedicated functions (Ivan Vecera) [2180870] - net/sched: mqprio: refactor nlattr parsing to a separate function (Ivan Vecera) [2180870] - netlink: add support for formatted extack messages (Ivan Vecera) [2180870] - net/sched: simplify tcf_pedit_act (Ivan Vecera) [2180870] - net/sched: transition act_pedit to rcu and percpu stats (Ivan Vecera) [2180870] - net: sched: sch: Bounds check priority (Ivan Vecera) [2180870] - net: Kconfig: fix spellos (Ivan Vecera) [2180870] - net/sched: sch_taprio: do not schedule in taprio_reset() (Ivan Vecera) [2180870] - sched: add new attr TCA_EXT_WARN_MSG to report tc extact message (Ivan Vecera) [2180870] - net/sched: sch_taprio: fix possible use-after-free (Ivan Vecera) [2180870] - net: sched: htb: fix htb_classify() kernel-doc (Ivan Vecera) [2180870] - net/sched: fix retpoline wrapper compilation on configs without tc filters (Ivan Vecera) [2180870] - net: sched: update the nat flag for icmp error packets in ct_nat_execute (Ivan Vecera) [2180870] - net/sched: avoid indirect classify functions on retpoline kernels (Ivan Vecera) [2180870] - net/sched: avoid indirect act functions on retpoline kernels (Ivan Vecera) [2180870] - net/sched: add retpoline wrapper for tc (Ivan Vecera) [2180870] - net/sched: move struct action_ops definition out of ifdef (Ivan Vecera) [2180870] - netfilter: ctnetlink: fix compilation warning after data race fixes in ct mark (Ivan Vecera) [2180870] - net: sched: allow act_ct to be built without NF_NAT (Ivan Vecera) [2180870] - netfilter: conntrack: Fix data-races around ct mark (Ivan Vecera) [2180870] - net: flow_offload: add support for ARP frame matching (Ivan Vecera) [2180870] - selftests: tc-testing: Add matchJSON to tdc (Ivan Vecera) [2180870] - Documentation: networking: TC queue based filtering (Ivan Vecera) [2180870] - act_skbedit: skbedit queue mapping for receive queue (Ivan Vecera) [2180870] - net: sched: cake: fix null pointer access issue when cake_init() fails (Ivan Vecera) [2180870] - net: sched: use tc_cls_bind_class() in filter (Ivan Vecera) [2180870] - net: sched: cls_api: introduce tc_cls_bind_class() helper (Ivan Vecera) [2180870] - net: sched: ensure n arg not empty before call bind_class (Ivan Vecera) [2180870] - selftests/tc-testing: update qdisc/cls/action features in config (Ivan Vecera) [2180870] - net/sched: taprio: allow user input of per-tc max SDU (Ivan Vecera) [2180870] - net/sched: query offload capabilities through ndo_setup_tc() (Ivan Vecera) [2180870] - net: sched: act_bpf: simplify code logic in tcf_bpf_init() (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for teql qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for tbf qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for taprio qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for skbprio qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for sfq qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for sfb qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for plug qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for pfifo_fast qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for hhf qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for gred qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for fq qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for etf qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for codel qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for choke qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for atm qdisc (Ivan Vecera) [2180870] - headers: Remove some left-over license text (Ivan Vecera) [2180870] - net/sched: taprio: simplify list iteration in taprio_dev_notifier() (Ivan Vecera) [2180870] - net/sched: taprio: remove unnecessary taprio_list_lock (Ivan Vecera) [2180870] - net: sched: remove unused tcf_result extension (Ivan Vecera) [2180870] - net: sched: simplify code in mall_reoffload (Ivan Vecera) [2180870] - net: sched: act_ct: remove redundant variable err (Ivan Vecera) [2180870] - selftests/tc-testings: add list case for basic filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for tcindex filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for rsvp filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for route filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for flow filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for cgroup filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for bpf filter (Ivan Vecera) [2180870] - net/sched: use tc_cls_stats_dump() in filter (Ivan Vecera) [2180870] - net/sched: cls_api: add helper for tc cls walker stats dump (Ivan Vecera) [2180870] - net/sched: taprio: replace safety precautions with comments (Ivan Vecera) [2180870] - net/sched: taprio: add extack messages in taprio_init (Ivan Vecera) [2180870] - net/sched: taprio: stop going through private ops for dequeue and peek (Ivan Vecera) [2180870] - net/sched: taprio: remove redundant FULL_OFFLOAD_IS_ENABLED check in taprio_enqueue (Ivan Vecera) [2180870] - net/sched: taprio: use rtnl_dereference for oper and admin sched in taprio_destroy() (Ivan Vecera) [2180870] - net/sched: taprio: taprio_dump and taprio_change are protected by rtnl_mutex (Ivan Vecera) [2180870] - net/sched: taprio: taprio_offload_config_changed() is protected by rtnl_mutex (Ivan Vecera) [2180870] - net/sched: taprio: avoid disabling offload when it was never enabled (Ivan Vecera) [2180870] - flow_offload: Introduce flow_match_l2tpv3 (Ivan Vecera) [2180870] - net/sched: flower: Add L2TPv3 filter (Ivan Vecera) [2180870] - flow_dissector: Add L2TPv3 dissectors (Ivan Vecera) [2180870] - skbuff: make __skb_header_pointer()'s data argument const (Ivan Vecera) [2180870] - tools headers uapi: Update linux/in.h copy (Ivan Vecera) [2180870] - uapi: move IPPROTO_L2TP to in.h (Ivan Vecera) [2180870] - selftests/tc-testings: add tunnel_key action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add sample action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add nat action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add ife action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add connmark action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for xt action (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for gate action (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for ctinfo action (Ivan Vecera) [2180870] - net: sched: act_vlan: get rid of tcf_vlan_walker and tcf_vlan_search (Ivan Vecera) [2180870] - net: sched: act_tunnel_key: get rid of tunnel_key_walker and tunnel_key_search (Ivan Vecera) [2180870] - net: sched: act_skbmod: get rid of tcf_skbmod_walker and tcf_skbmod_search (Ivan Vecera) [2180870] - net: sched: act_skbedit: get rid of tcf_skbedit_walker and tcf_skbedit_search (Ivan Vecera) [2180870] - net: sched: act_simple: get rid of tcf_simp_walker and tcf_simp_search (Ivan Vecera) [2180870] - net: sched: act_sample: get rid of tcf_sample_walker and tcf_sample_search (Ivan Vecera) [2180870] - net: sched: act_police: get rid of tcf_police_walker and tcf_police_search (Ivan Vecera) [2180870] - net: sched: act_pedit: get rid of tcf_pedit_walker and tcf_pedit_search (Ivan Vecera) [2180870] - net: sched: act_nat: get rid of tcf_nat_walker and tcf_nat_search (Ivan Vecera) [2180870] - net: sched: act_mpls: get rid of tcf_mpls_walker and tcf_mpls_search (Ivan Vecera) [2180870] - net: sched: act_mirred: get rid of tcf_mirred_walker and tcf_mirred_search (Ivan Vecera) [2180870] - net: sched: act_ipt: get rid of tcf_ipt_walker/tcf_xt_walker and tcf_ipt_search/tcf_xt_search (Ivan Vecera) [2180870] - net: sched: act_ife: get rid of tcf_ife_walker and tcf_ife_search (Ivan Vecera) [2180870] - net: sched: act_gate: get rid of tcf_gate_walker and tcf_gate_search (Ivan Vecera) [2180870] - net: sched: act_gact: get rid of tcf_gact_walker and tcf_gact_search (Ivan Vecera) [2180870] - net: sched: act_ctinfo: get rid of tcf_ctinfo_walker and tcf_ctinfo_search (Ivan Vecera) [2180870] - net: sched: act_ct: get rid of tcf_ct_walker and tcf_ct_search (Ivan Vecera) [2180870] - net: sched: act_csum: get rid of tcf_csum_walker and tcf_csum_search (Ivan Vecera) [2180870] - net: sched: act_connmark: get rid of tcf_connmark_walker and tcf_connmark_search (Ivan Vecera) [2180870] - net: sched: act_bpf: get rid of tcf_bpf_walker and tcf_bpf_search (Ivan Vecera) [2180870] - net: sched: act_api: implement generic walker and search for tc action (Ivan Vecera) [2180870] - net: sched: act: move global static variable net_id to tc_action_ops (Ivan Vecera) [2180870] - net: sched: htb: remove redundant resource cleanup in htb_init() (Ivan Vecera) [2180870] - net/sched: cls_api: remove redundant 0 check in tcf_qevent_init() (Ivan Vecera) [2180870] - net: sched: etf: remove true check in etf_enable_offload() (Ivan Vecera) [2180870] - net: sched: gred: remove NULL check before free table->tab in gred_destroy() (Ivan Vecera) [2180870] - net: sched: remove redundant NULL check in change hook function (Ivan Vecera) [2180870] - net: sched: gred/red: remove unused variables in struct red_stats (Ivan Vecera) [2180870] - net: sched: choke: remove unused variables in struct choke_sched_data (Ivan Vecera) [2180870] - net: sched: using TCQ_MIN_PRIO_BANDS in prio_tune() (Ivan Vecera) [2180870] - net_sched: remove impossible conditions (Ivan Vecera) [2180870] - net: sched: remove unnecessary init of qdisc skb head (Ivan Vecera) [2180870] - net: sched: delete duplicate cleanup of backlog and qlen (Ivan Vecera) [2180870] - net: sched: remove duplicate check of user rights in qdisc (Ivan Vecera) [2180870] - net_sched: move from strlcpy with unused retval to strscpy (Ivan Vecera) [2180870] - net: sched: delete unused input parameter in qdisc_create (Ivan Vecera) [2180870] - net: sched: remove the unused return value of unregister_qdisc (Ivan Vecera) [2180870] - net_sched: cls_route: disallow handle of 0 (Ivan Vecera) [2180870] - net/sched: sch_cbq: change the type of cbq_set_lss to void (Ivan Vecera) [2180870] - net/sched: remove qdisc_root_lock() helper (Ivan Vecera) [2180870] - net/sched: sch_cbq: Delete unused delay_timer (Ivan Vecera) [2180870] - net/sched: remove return value of unregister_tcf_proto_ops (Ivan Vecera) [2180870] - net: extract port range fields from fl_flow_key (Ivan Vecera) [2180870] - net/sched: act_ct: set 'net' pointer when creating new nf_flow_table (Ivan Vecera) [2180870] - net: sched: provide shim definitions for taprio_offload_{get,free} (Ivan Vecera) [2180870] - time64.h: consolidate uses of PSEC_PER_NSEC (Ivan Vecera) [2180870] - selftests: tc-testing: Add testcases to test new flush behaviour (Ivan Vecera) [2180870] - tc-testing: gitignore, delete plugins directory (Ivan Vecera) [2180870] - net/sched: sch_netem: Fix arithmetic in netem_dump() for 32-bit platforms (Ivan Vecera) [2180870] - net_sched: em_meta: add READ_ONCE() in var_sk_bound_if() (Ivan Vecera) [2180870] - selftests: forwarding: tc_actions: allow mirred egress test to run on non-offloaded h2 (Ivan Vecera) [2180870] - net: sched: support hash selecting tx queue (Ivan Vecera) [2180870] - net: sched: use queue_mapping to pick tx queue (Ivan Vecera) [2180870] - net_sched: make qdisc_reset() smaller (Ivan Vecera) [2180870] - sch_red: Fix a typo (Ivan Vecera) [2180870] - wifi: ath9k: Don't mark channelmap stack variable read-only in ath9k_mci_update_wlan_channels() (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: Fix an uninit variable access bug in qrtr_tx_resume() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: ignore key disable commands (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: reduce the MHI timeout to 20s (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: Do not do DEL_SERVER broadcast after DEL_CLIENT (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix fw used for offload check for mt7922 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: Fix use-after-free in fw features query. (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix SDIO suspend/resume regression (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: Fix a refcount bug in qrtr_recvmsg() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix invalid drv_sta_pre_rcu_remove calls for non-uploaded sta (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix flow dissection for forwarded packets (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix mesh forwarding (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix receiving mesh packets in forwarding=0 networks (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix the size calculation of ieee80211_ie_len_eht_cap() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix potential null pointer dereference (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: drop bogus static keywords in A-MSDU rx (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix mesh path discovery based on unicast packets (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix qos on mesh interfaces (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Serialize ieee80211_handle_wake_tx_queue() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: mark OF related data as maybe unused (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: do not check WED status for non-mmio devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add back 160MHz channel width support for MT7915 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: do not run mt76_unregister_device() on unregistered hw (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Partial revert "wifi: cfg80211: Fix use after free for wext" (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: fix MLO connection ownership (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: check basic rates validity (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: fix puncturing bitmap policy (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: fix NULL-ptr deref in offchan check (Jose Ignacio Tornos Martinez) [2183487] - wifi: wext: warn about usage only once (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: allow system suspend to survive ath11k (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: add LEDS_CLASS dependency (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: remove unused iwl_dbgfs_is_match() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix AP mode authentication transmission failed (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: use RTW_FLAG_POWERON flag to prevent to power on/off twice (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: p2p: Introduce generic flexible array frame member (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add documentation for amsdu_mesh_control (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: remove gfp parameter from cfg80211_obss_color_collision_notify description (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: always initialize link_sta with sta (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: pass 'sta' to ieee80211_rx_data_set_sta() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Set SSID if it is not already set (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: move H2C of del_pkt_offload before polling FW status ready (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: use readable return 0 in rtw89_mac_cfg_ppdu_status() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: usb: drop now unnecessary URB size check (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: usb: send Zero length packets if necessary (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: usb: Set qsel correctly (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix off-by-one link setting (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Fix for Rx fragmented action frames (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: avoid u32_encode_bits() warning (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Don't translate MLD addresses for multicast (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: call reg_notifier for self managed wiphy from driver hint (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: get rid of gfp in cfg80211_bss_color_notify (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: Allow authentication frames and set keys on NAN interface (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix non-MLO station association (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Allow NSS change only up to capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add a workaround for receiving non-standard mesh A-MSDU (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix receiving A-MSDU frames on mesh interfaces (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: remove mesh forwarding congestion check (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: factor out bridge tunnel / RFC1042 header check (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: move A-MSDU check in ieee80211_data_to_8023_exthdr (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: make rate u32 in sta_set_rate_info_rx() (Jose Ignacio Tornos Martinez) [2183487] - rfkill: Use sysfs_emit() to instead of sprintf() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Allow action frames to be transmitted with link BSS in MLD (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: configure puncturing bitmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: include puncturing bitmap in channel switch events (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: validate and configure puncturing bitmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: move puncturing bitmap validation from mac80211 (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: return error message for malformed chandef (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211_hwsim: Rename pid to portid to avoid confusion (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: add MLO_LINK_ID to CMD_STOP_AP event (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: emit CMD_START_AP on multicast group when an AP is started (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: mlme: handle EHT channel puncturing (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Extend cfg80211_update_owe_info_event() for MLD AP (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Extend cfg80211_new_sta() for MLD AP (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: move color collision detection report in a delayed work (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Fix use after free for wext (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Authentication offload to user space for MLO connection in STA mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: trace: remove MAC_PR_{FMT,ARG} (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: fix txdw7 assignment of TX DESC v3 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add LED control code for RTL8723AU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add LED control code for RTL8192EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add LED control code for RTL8188EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Register the LED and make it blink (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: set TX power according to RF path number by chip (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: correct register mask name of TX power offset (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: use passed channel in set_tx_shape_dfir() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852be: enable CLKREQ of PCI capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: try to use NORMAL_CE type firmware first (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: don't support LPS-PG mode after firmware 0.29.26.0 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: reset IDMEM mode to default value (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add use of pkt_list offload to debug entry (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: refine packet offload flow (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix potential wrong mapping for pkt-offload (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: disallow enter PS mode after create TDLS link (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: refine MCC C2H debug logs (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix parsing offset for MCC C2H (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: deal with RXI300 error (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: debug: avoid invalid access on RTW89_DBG_SEL_MAC_30 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: mac: add function to get TSF (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: split out generic part of rtw89_mac_port_tsf_sync() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: correct unit for port offset and refine macro (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update Wi-Fi Bluetooth coexistence version to 7.0.0 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Fix test fail when coexist with raspberryPI A2DP idle (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Correct A2DP exist variable source (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Set Bluetooth background scan PTA request priority (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Refine coexistence log (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Force to update TDMA parameter when radio state change (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Clear Bluetooth HW PTA counter when radio state change (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update Wi-Fi external control TDMA parameters/tables (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: change cfg80211_set_channel() name and signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: fix loop iterator in mwifiex_update_ampdu_txwinsize() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Replace one-element array with flexible-array member (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Replace one-element arrays with flexible-array members (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Replace one-element array with flexible-array member (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Support firmware hotfix version in GET_HW_SPEC responses (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Support SD8978 chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Add missing compatible string for SD8787 (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: pcie: Perform correct BCM4364 firmware selection (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4377 (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4355 (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Rename Cypress 89459 to BCM4355 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: mac: Use existing macros in rtw_pwr_seq_parser() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Move enum rtw_tx_queue_type mapping code to tx.{c,h} (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: pci: Change queue datatype to enum rtw_tx_queue_type (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: pci: Use enum type for rtw_hw_queue_mapping() and ac_to_hwq (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: support ww power config in dts node (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x0u: report firmware version through ethtool (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: complete wed reset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add mt7915 wed reset callbacks (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: reset wed queues in mt76_dma_rx_reset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: add reset to mt76_dma_wed_setup signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add EHT beamforming support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: enable EHT support in firmware (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add support for EHT rate report (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add EHT capability init (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rework capability init (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add helpers for wtbl and interface limit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add variants support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add EHT rate stats for ethtool (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: increase wcid size to 1088 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add cmd id related to EHT support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add helpers for EHT capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add CMD_CBW_320MHZ (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add EHT phy type (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: remove __mt76_mcu_restart macro (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac_tx_complete_skb (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac_txp_skb_unmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac_txp_common structure (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac2_mac_tx_rate_val (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix error code of return in mt7921_acpi_read (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: release rxwi in mt7915_wed_release_rx_buf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix memory leak in mt7915_mmio_wed_init_rx_buf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix rx filter incorrect by drv/fw inconsistent (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add memory barrier to SDIO queue kick (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: reduce polling time in pmctrl (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add flexible polling wait-interval support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix WED TxS reporting (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: wed: enable red per-band token drop (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: set sku initial value to zero (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921u: add support for Comfast CF-952AX (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: fix switch default case in mt7996_reverse_frag0_hdr_trans (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7603: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: fix memory leak running mt76_dma_tx_cleanup (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: free rx_head in mt76_dma_rx_cleanup (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix memory leak in mt7996_mcu_exit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix memory leak in mt7915_mcu_exit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: introduce mt76_queue_is_wed_rx utility routine (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix invalid remain_on_channel duration (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: remove BW160 and BW80+80 support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: fix POWER_CTRL command name typo (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: do not hardcode vht beamform cap (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: update register for CFEND_RATE (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix chainmask calculation in mt7996_set_antenna() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add ack signal support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix channel switch fail in monitor mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add chip id condition in mt7915_check_eeprom() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add error message in mt7915_thermal_set_cur_throttle_state() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework mt7915_thermal_temp_store() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework mt7915_mcu_set_thermal_throttling (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: call mt7915_mcu_set_thermal_throttling() only after init_work (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix deadlock in mt7921_abort_roc (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Fix off by one in mhi_ep_process_cmd_ring() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix compilation errors in rfkill() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: bump FW API to 74 for AX devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Reset rate index if rate is wrong (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: simplify by using SKB MAC header pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: add sniffer meta data APIs (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: rx: add sniffer support for EHT mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: always send nullfunc frames on MGMT queue (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: remove h from printk format specifier (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: improve tag handling in iwl_request_firmware (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mention the response structure in the kerneldoc (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: add minimal EHT rate reporting (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: free memory on error path in radix_tree_insert() (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Change state_lock to mutex (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Save channel state locally during suspend and resume (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Move chan->lock to the start of processing queued ch ring (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Fix the debug message for MHI_PKT_TYPE_RESET_CHAN_CMD cmd (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Only send -ENOTCONN status if client driver is available (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Check if the channel is supported by the controller (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Power up/down MHI stack during MHI RESET (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: Update mhi driver description (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: Update Makefile to used Kconfig flags (Jose Ignacio Tornos Martinez) [2183487] - wifi: wireless: deny wireless extensions on MLO-capable devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: wireless: warn on most wireless extension usage (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: drop extra 'e' from ieeee80211... name (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Deduplicate certificate loading (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add kernel-doc for EHT structure (Jose Ignacio Tornos Martinez) [2183487] - mac80211: support minimal EHT rate reporting on RX (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Add HE MU-MIMO related flags in ieee80211_bss_conf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Add VHT MU-MIMO related flags in ieee80211_bss_conf (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Use MLD address to indicate MLD STA disconnection (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Support 32 bytes KCK key in GTK rekey offload (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Fix extended KCK key length check in nl80211_set_rekey_data() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: remove support for static WEP (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Add support to read EEPROM caldata (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Add new qmi_bdf_type to handle caldata (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Fix incorrect qmi_file_type enum values (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: dp_mon: Fix uninitialized warning related to the pktlog (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: dp_mon: Fix out of bounds clang warning (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: hal_rx: Use memset_startat() for clearing queue descriptors (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Fix uninitilized variable clang warnings (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: wmi: delete PSOC_HOST_MAX_NUM_SS (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: hal: convert offset macros to functions (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: hal: add ab parameter to macros using it (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix memory leak in ath11k_peer_rx_frag_setup (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: fix ce memory mapping for ahb devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Remove the unused function ath10k_ce_shadow_src_ring_write_index_set() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add channel 177 into 5 GHz channel list (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Add support to configure FTM responder role (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Fix potential stack-out-of-bounds write in ath9k_wmi_rsp_callback() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: hif_usb: clean up skbs if ath9k_hif_usb_rx_stream() fails (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: htc_hst: free skb in ath9k_htc_rx_msg() if there is no callback function (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Dump the efuse only for untested devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Print the ROM version too (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Use non-atomic sta iterator in rtw_ra_mask_info_update() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Use rtw_iterate_vifs() for rtw_vif_watch_dog_iter() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Move register access from rtw_bf_assoc() outside the RCU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use a longer retry limit of 48 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Report the RSSI to the firmware (Jose Ignacio Tornos Martinez) [2183487] - wifi: rt2x00: Remove useless else if (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt7601u: fix an integer underflow (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8723ae: fix obvious spelling error tyep->type (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix memory leaks with RTL8723BU, RTL8192EU (Jose Ignacio Tornos Martinez) [2183487] - Revert "wifi: mac80211: fix memory leak in ieee80211_if_add()" (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: fix a regression in adding rx buffers (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: fill the missing configuration about queue empty checking (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix assignation of TX BD RAM table (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct ADC clock settings (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: correct register definitions of digital CFO and spur elimination (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: set the correct mac_id for management frames (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix null vif pointer when get management frame date rate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change Wi-Fi role info related logic to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change RTL8852B use v1 TDMA policy (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Packet traffic arbitration hardware owner monitor (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: refactor debug log of slot list (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change firmware steps report to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change Wi-Fi Null data report to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add version code for Wi-Fi firmware coexistence control (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update WiFi role info H2C report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: only read Bluetooth counter of report version 1 for RTL8852A (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add v5 firmware control report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change firmware control report to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add v4 version firmware cycle report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Rename BTC firmware cycle report by feature version (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Remove le32 to CPU translator at firmware cycle report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: Fix a typo in debug message (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: ensure CLM version is null-terminated to prevent stack-out-of-bounds (Jose Ignacio Tornos Martinez) [2183487] - wifi: rndis_wlan: Prevent buffer overflow in rndis_query_oid (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: fix regression for Broadcom PCIe wifi devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: avoid NULL-deref in survey dump for 2G only device (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: avoid handling disabled channels for survey dump (Jose Ignacio Tornos Martinez) [2183487] - net: rfkill: gpio: add DT support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix double space in comment (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: debugfs: fix to work with multiple PCI devices (Jose Ignacio Tornos Martinez) [2183487] - mac80211: Fix MLO address translation for multiple bss case (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: reset multiple BSSID options in stop_ap() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Fix iTXQ AMPDU fragmentation handling (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: sdata can be NULL during AMPDU start (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Proper mark iTXQs for resumption (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Prefer DT board type over DMI board type (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: remove most hidden macro dependencies on ah (Jose Ignacio Tornos Martinez) [2183487] - wifi: wl3501_cs: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: unmap dma buffer in brcmf_msgbuf_alloc_pktid() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: fix potential memory leak in brcmf_netdev_start_xmit() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix potential stack-out-of-bounds in brcmf_c_preinit_dcmds() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: fixing transmisison failure for rtl8192eu (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add rate control code for RTL8188EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Support new chip RTL8188EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Define masks for cck_agc_rpt bits (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Make rtl8xxxu_load_firmware take const char* (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Deduplicate the efuse dumping code (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: refine AGC tuning flow of DPK for irregular PA (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: refine 6 GHz scanning dwell time (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: update BSS color mapping register (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change TDMA related logic to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: refactor _chk_btc_report() to extend more features (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add v2 BT AFH report and related variable (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update BTC firmware report bitmap definition (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Enable Bluetooth report when show debug info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: use new introduction BTC version format (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: add BTC format version derived from firmware version (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: select CONFIG_RELAY (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: Fix global-out-of-bounds bug in _rtl8812ae_phy_set_txpower_limit() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: recover RX DCK failure (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct DPK settings (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct DACK setting (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fw: adapt to new firmware format of security section (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: consider ER SU as a TX capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: don't call dev_kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix assignment to bit field priv->cck_agc_report_type (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix assignment to bit field priv->pi_enabled (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8723be: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8188ee: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8821ae: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: get rid of wed rx_buf_ring page_frag_cache (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: resource leaks at mt7921_check_offload_capability() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: rely on queue page_frag_cache for wed rx queues (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: handle possible mt76_rx_token_consume failures (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: do not increment queue head if mt76_dma_add_buf fails (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: enable per-phy led support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable per-phy led support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move leds struct in mt76_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move leds field in leds struct (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix unintended sign extension of mt7915_hw_queue_read() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix unintended sign extension of mt7996_hw_queue_read() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add support to update fw capability with MTFG table (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x0: fix oob access in mt76x0_phy_get_target_power (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix endianness warning in mt7996_mcu_sta_he_tlv (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: drop always true condition of __mt7996_reg_addr() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: drop always true condition of __mt7915_reg_addr() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: check the correctness of event data (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: check return value before accessing free_block_num (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: check return value before accessing free_block_num (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: split mcu chan_mib array up (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix integer handling issue of mt7996_rf_regval_set() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix insecure data handling of mt7996_mcu_rx_radar_detected() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix insecure data handling of mt7996_mcu_ie_countdown() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix mt7915_rate_txpower_get() resource leaks (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921s: fix slab-out-of-bounds access in sdio host (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add missing of_node_put() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: fix monitor mode bringup crash (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix scan request param frame size warning (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Fix use-after-free in ath9k_hif_usb_disconnect() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: fixing IQK failures for rtl8192eu (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: btcoexist: fix conditions branches that are never executed (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8192se: remove redundant rtl_get_bbreg() call (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8723du chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8822cu chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8822bu chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8821cu chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add common USB chip support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: iterate over vif/sta list non-atomically (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Drop coex mutex (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Drop h2c.lock (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Drop rf_lock (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Call rtw_fw_beacon_filter_config() with rtwdev->mutex held (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: print firmware type in info message (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add join info upon create interface (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix unsuccessful interface_add flow (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: stop mac port function when stop_ap() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add mac TSF sync function (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix error return code in brcmf_sdio_download_firmware() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Introduce rtl8xxxu_update_ra_report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix the channel width reporting (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add __packed to struct rtl8723bu_c2h (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add vendor name in revinfo debugfs file (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add support Broadcom BCA firmware api (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add support for Cypress firmware api (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add support for vendor-specific firmware api (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add firmware vendor info in driver info (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add function to unbind device to bus layer api (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add ipq5018 device support (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add new hw ops for IPQ5018 to get rx dest ring hashmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: initialize hw_ops for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: update hal srng regs for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: remap ce register space for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: update ce configurations for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: update hw params for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: fw: use correct IML/ROM status register (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dump: Update check for UMAC valid FW address (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: d3: add TKIP to the GTK iterator (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: clean up comments (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Don't use deprecated register (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: pcie: Add reading and storing of crf and cdb id. (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: replace usage of found with dedicated list iterator variable (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dump: Update check for valid FW address (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: don't access packet before checking len (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: modify new queue allocation command (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: nvm-parse: enable WiFi7 for Fm radio for now (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add reset to rx_ring_setup callback (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix race condition with struct htt_ppdu_stats_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: fix QCOM_SMEM dependency (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921e: add pci .shutdown() support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: mmio: fix naming convention (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add support to configure spatial reuse parameter set (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: enable ack signal support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: enable use_cts_prot support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rely on band_idx of mt76_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable per bandwidth power limit support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: introduce mt7915_get_power_bound() (Jose Ignacio Tornos Martinez) [2183487] - mt76: mt7915: Fix PCI device refcount leak in mt7915_pci_init_hif2() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: fix coverity overrun-call in mt76_get_txpower() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add driver for MediaTek Wi-Fi 7 (802.11be) devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x0: remove dead code in mt76x0_phy_get_target_power (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix band_idx usage (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable .sta_set_txpwr support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add basedband Txpower info into debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add support to configure spatial reuse parameter set (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add missing MODULE_PARM_DESC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable WED RX stats (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable WED RX support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce mt76_connac_mcu_sta_wed_update utility routine (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add info parameter to rx_skb signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add WED RX support to dma queue alloc (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add WED RX support to mt76_dma_rx_fill (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add WED RX support to mt76_dma_{add,get}_buf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: introduce rxwi and rx token utility routines (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce helper for mt7996 chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add more starec command tags (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add more bss info command tags (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce unified event table (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add more unified command IDs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: rework fields for larger bandwidth support in sta_rec_bf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: update struct sta_rec_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: rework macros for unified command (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: introduce chanctx support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: introduce remain_on_channel support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: accept hw scan request at a time (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: drop ieee80211_[start, stop]_queues in driver (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add unified ROC cmd/event support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add chanctx parameter to mt76_connac_mcu_uni_add_bss signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add mt76_connac_mcu_uni_set_chctx (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: do not run mt76u_status_worker if the device is not running (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: update nss calculation in txs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: don't claim 160MHz support with mt7915 DBDC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: Fix VHT beamforming capabilities with DBDC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: Fix chainmask calculation on mt7915 DBDC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable coredump support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add full system reset into debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable full system reset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework mt7915_dma_reset() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move aggr_stats array in mt76_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: rely on mt7615_phy in mt7615_mac_reset_counters (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix reporting of TX AGGR histogram (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: enable use_cts_prot support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable use_cts_prot support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: fix bandwidth 80MHz link fail in 6GHz band (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add ack signal support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: improve accuracy of time_busy calculation (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable wed for mt7986-wmac chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable wed for mt7986 chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: move wed init routines in mmio.c (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix mt7915_mac_set_timing() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: set correct antenna for radar detection on MT7915D (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add spatial extension index support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce mt76_connac_spe_idx() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework testmode tx antenna setting (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: deal with special variant of mt7916 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework eeprom tx paths and streams init (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: reserve 8 bits for the index of rf registers (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix bounds checking for tx-free-done command (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: Remove unused inline function mt76_wcid_mask_test() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x02: simplify struct mt76x02_rate_power (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move mt76_rate_power from core to mt76x02 driver code (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix and simplify unencrypted drop check for mesh (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add support for restricting netdev features per vif (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: update TIM for S1G specification changes (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: don't parse multi-BSSID in assoc resp (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: use bss_from_pub() instead of container_of() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: remove unnecessary synchronize_net() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Drop not needed check for NULL (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Fix not unregister reg_pdev when load_builtin_regdb_keys() fails (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: fix comparison of BSS frequencies (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Correct example of ieee80211_iface_limit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix memory leak in ieee80211_if_add() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ieee80211: Do not open-code qos address offsets (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: link rtw89_vif and chanctx stuffs (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fw: implement MCC related H2C (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: mac: process MCC related C2H (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: introduce helpers to wait/complete on condition (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: check if atomic before queuing c2h (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: rfk: rename rtw89_mcc_info to rtw89_rfk_mcc_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: 8821c: enable BT device recovery mechanism (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: turn off PoP function in monitor mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add HE radiotap for monitor mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: enable mac80211 virtual monitor interface (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Check the count value of channel spec to prevent out-of-bounds reads (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: driver for Qualcomm Wi-Fi 7 devices (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add reset to tx_ring_setup callback (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add mtk_wed_rx_reset routine (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: update mtk_wed_stop (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: move MTK_WDMA_RESET_IDX_TX configuration in mtk_wdma_tx_reset (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: return status value in mtk_wdma_rx_reset (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add wcid overwritten support for wed v1 (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add configure wed wo support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: rename tx_wdma array in rx_wdma (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: introduce wed wo support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: introduce wed mcu support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add missing of_node_put() (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add missing put_device() in mtk_wed_add_hw() (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add axi bus support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add wed support for mt7986 chipset (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add mtk_wed_configure_irq and mtk_wed_dma_{enable/disable} (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc: fix off by one check of ARRAY_SIZE (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc: add check for allocation failure (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc/wed: fix sparse endian warnings (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc: fix return value check in mtk_wed_add_hw() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix parameter passing to iwl_mei_alive_notif() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: return error value in case PLDR sync failed (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: trigger PCI re-enumeration in case of PLDR sync (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: fix double free on tx path. (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: print OTP info after alive (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: nvm: Update EHT capabilities for GL device (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: nvm-parse: support A-MPDU in EHT 2.4 GHz (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: advertise 320 MHz in 6 GHz only conditionally (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: set HE PHY bandwidth according to band (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: support PPE Thresholds for EHT (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: add support for EHT 1K aggregation size (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: rs: add support for parsing max MCS per NSS/BW in 11be (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: support 320 MHz PHY configuration (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Advertise EHT capabilities (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: fix race condition when doing H2C command (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Store WLAN firmware version in SMEM image table (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: avoid inaccessible IO operations during doing change_interface() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: switch BANDEDGE and TX_SHAPE based on OFDMA trigger frame (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: read CFO from FD or preamble CFO field of phy status ie_type 1 accordingly (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: correct TX power controlled by BT-coexistence (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Use struct_size() in code ralated to struct brcmf_dload_data_le (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: replace one-element array with flexible-array member in struct brcmf_dload_data_le (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Use struct_size() and array_size() in code ralated to struct brcmf_gscan_config (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Replace one-element array with flexible-array member (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Remove redundant argument offset (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Fix return value in ath10k_pci_init() (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: Add definition for some VIDs (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: Fix some error handling path in rtw89_wow_enable() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Avoid clashing function prototypes (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use u32_get_bits in *_identify_chip (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use strscpy instead of sprintf (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Name some bits used in burst init (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Rename rtl8xxxu_8188f_channel_to_group (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Split up rtl8xxxu_identify_chip (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Move burst init to a function (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: wait for the mac to stop on suspend (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: iwlmei: report disconnection as temporary (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: use wait_event_timeout() return value (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: implement PLDR flow (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Fix getting the lowest rate (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: support new key API (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dbg: use bit of DRAM alloc ID to store failed allocs (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: print an error instead of a warning on invalid rate (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: cfg: disable STBC for BL step A devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dbg: add support for DBGC4 on BZ family and above (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: use old checksum for Bz A-step (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix potential NULL-ptr deref after clone (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: avoid blocking sap messages handling due to rtnl lock (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix tx DHCP packet for devices with new Tx API (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: don't send SAP commands if AMT is disabled (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: make sure ownership confirmed message is sent (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: send TKIP connection status to csme (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Use IEEE80211_SEQ_TO_SN() for seq_ctrl conversion (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Remove unused variable mismatch (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: change debug mask of message of no TX resource (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Trigger sta disconnect on hardware restart (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: update D-MAC and C-MAC dump to diagnose SER (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: dump dispatch status via debug port (Jose Ignacio Tornos Martinez) [2183487] - wifi: Use kstrtobool() instead of strtobool() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Avoiding Connection delay (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix for when connect request is not success (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: correctly remove all p2p vif (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: Add HP variant of T99W175 (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: add support for sc8280xp-crd SDX55 variant (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use dev_* instead of pr_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Set IEEE80211_HW_SUPPORT_FAST_XMIT (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Recognise all possible chip cuts (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix the CCK RSSI calculation (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add central frequency offset tracking (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix potential NULL pointer dereference in 'brcmf_c_preinit_dcmds()' (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix a typo "unknow" (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8192ee: remove static variable stop_report_cnt (Jose Ignacio Tornos Martinez) [2183487] - bcma: Use the proper gpio include (Jose Ignacio Tornos Martinez) [2183487] - mtd: rawnand: brcmnand: Add platform data structure for BCMA (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix potential shift-out-of-bounds in brcmf_fw_alloc_request() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Make QMI message rules const (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Make QMI message rules const (Jose Ignacio Tornos Martinez) [2183487] - soc: qcom: qmi: use const for struct qmi_elem_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: synchronize ath11k_mac_he_gi_to_nl80211_he_gi()'s return type (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix qmi_msg_handler data structure initialization (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: remove variable sent (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: Fix spelling mistake KIP_RESOTRE -> KIP_RESTORE (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add WoWLAN pattern match support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add WoWLAN function support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add related H2C for WoWLAN mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add drop tx packet function (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add function to adjust and restore PLE quota (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: move enable_cpu/disable_cpu into fw_download (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: collect and send RF parameters to firmware for WoWLAN (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: check if sta's mac_id is valid under AP/TDLS (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add BW info for both TX and RX in phy_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: make table of RU mask constant (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: declare support bands with const (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fw: adapt to new firmware format of dynamic header (Jose Ignacio Tornos Martinez) [2183487] - net: Remove the obsolte u64_stats_fetch_*_irq() users (net). (Jose Ignacio Tornos Martinez) [2183487] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: Add a secondary AT port to Telit FN990 (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: Fix race between channel preparation and M0 event (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: Use mhi_soc_reset() API in place of register write (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: fix monitor vdev creation with firmware recovery (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix reads of uninitialized variables hw_ctrl_s1, sw_ctrl_s1 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add 8852be to Makefile and Kconfig (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: add dummy C2H handler to avoid warning message (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops related to RF calibration (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add DPK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add TSSI (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add IQK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add RX DCK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add RCK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add DACK (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Delay the unmapping of the buffer (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Check return value of ath10k_get_arvif() in ath10k_wmi_event_tdls_peer() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix firmware crash on vdev delete race condition (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Send PME message during wakeup from D3cold (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add support to configure channel dwell time (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: suppress add interface error (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add basic attributes of chip_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add functions to control BB to assist RF calibrations (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to configure TX/RX path (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to query PPDU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops related to BT coexistence (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to get thermal (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add basic baseband chip_ops (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add power on/off functions (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops::set_channel_help (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Update module description (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix reading the vendor of combo chips (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Make some arrays const (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix wrong bandwidth settings after scan (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: correct 6 GHz scan behavior (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops::set_channel (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: make generic functions to convert subband gain index (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add HFC quota arrays (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: set proper configuration before loading NCTL (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: parse PHY status only when PPDU is to_self (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: move chip_ops::btc_bt_aci_imp to a generic code (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: verify the expected usb_endpoints are present (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: hif_usb: Fix use-after-free in ath9k_hif_usb_reg_in_cb() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Remove -Warray-bounds exception (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: hif_usb: fix memory leak of urbs in ath9k_hif_usb_dealloc_tx_urbs() (Jose Ignacio Tornos Martinez) [2183487] - wifi: realtek: remove duplicated wake_tx_queue (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Make arrays prof_prio and channelmap static const (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix spelling mistake "chnange" -> "change" (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Drop support for TX push path (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add wake_tx_queue callback to drivers (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add internal handler for wake_tx_queue (Jose Ignacio Tornos Martinez) [2183487] - cfg80211: Update Transition Disable policy during port authorization (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: minstrel_ht: remove unused has_mrr member from struct minstrel_priv (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: remove support for AddBA with fragmentation (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: agg-rx: avoid band check (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: prohibit IEEE80211_HT_CAP_DELAY_BA with MLO (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: don't clear DTIM period after setting it (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: change AddBA deny error message (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: mlme: mark assoc link in output (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add RCU _check() link access variants (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix AddBA response addressing (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: set internal scan request BSSID (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: advertise TWT requester only with HW support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: use link_id in ieee80211_change_bss() (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: use link ID in NL80211_CMD_SET_BSS (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: transmit AddBA with MLD address (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: wme: use ap_addr instead of deflink BSSID (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Process association status for affiliated links (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Parse station profile from association response (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211/mac80211: Fix ML element common size validation (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211/mac80211: Fix ML element common size calculation (Jose Ignacio Tornos Martinez) [2183487] - wifi: ieee80211: Support validating ML station profile length (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: support reporting failed links (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: recalc station aggregate data during link switch (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: include link address in debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add API to show the link STAs in debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add pointer from link STA to STA (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add to dump TX FIFO 0/1 for 8852C (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: set pin MUX to enable BT firmware log (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: ignore warning of bb gain cfg_type 4 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: update BB parameters to v28 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct miscoding delay of DPK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: correct set of IQK backup registers (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Fix AP interface delete issue (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: support station interface creation version 1, 2 and 3 (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: add creating station interface support (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: dump dongle memory when attaching failed (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: return error when getting invalid max_flowrings from dongle (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: add a timer to read console periodically in PCIE bus (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Fix authentication latency caused by OBSS stats survey (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: fix CERT-P2P:5.1.10 failure (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: fix firmware trap while dumping obss stats (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Add dump_survey cfg80211 ops for HostApd AutoChannelSelection (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Support new chip RTL8188FU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852be: add 8852BE PCI entry (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to read phy cap (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to read efuse (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops::set_txpwr (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: debug: txpwr_table considers sign (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: make generic txpwr setting functions (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add tables for RFK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add BB and RF tables (2 of 2) (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add BB and RF tables (1 of 2) (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Don't exit on wakeup failure (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: stop tx queues immediately upon firmware exit (Jose Ignacio Tornos Martinez) [2183487] - Revert "mac80211: set NETIF_F_LLTX when using intermediate tx queues" (Jose Ignacio Tornos Martinez) [2183487] - treewide: use get_random_u32() when possible (Jose Ignacio Tornos Martinez) [2183487] - treewide: use prandom_u32_max() when possible, part 1 (Jose Ignacio Tornos Martinez) [2183487] - hwrng: core - let sleep be interrupted when unregistering hwrng (Jose Ignacio Tornos Martinez) [2183487] - tracing/kprobes: Do the notrace functions check without kprobes on ftrace (Mukesh Chaurasiya) [2203370] - tracing/kprobes: Fix a double initialization typo (Mukesh Chaurasiya) [2203370] - tracing/kprobe: Check whether the non-suffixed symbol is notrace (Mukesh Chaurasiya) [2203370] - tracing/kprobes: Fix to check notrace function with correct range (Mukesh Chaurasiya) [2203370] - tracing/kprobes: Fix within_notrace_func() to check only notrace functions (Mukesh Chaurasiya) [2203370] - powerpc/kprobes: Fix kprobe Oops happens in booke (Mukesh Chaurasiya) [2203370] - xfs: verify buffer contents when we skip log replay (Andrey Albershteyn) [2187456] {CVE-2023-2124} - perf c2c: Add report option to show false sharing in adjacent cachelines (Michael Petlan) [2193188] - powerpc/papr_scm: Update the NUMA distance table for the target node (Mamatha Inamdar) [2183474] - i2c: xgene-slimpro: Fix out-of-bounds bug in xgene_slimpro_i2c_xfer() (Tony Camuso) [2188408] {CVE-2023-2194} - prlimit: do_prlimit needs to have a speculation check (Alex Gladkov) [2196314] {CVE-2023-0458} - vmxnet3: use gro callback when UPT is enabled (Izabela Bakollari) [2183057] - r8152: Rate limit overflow messages (Jose Ignacio Tornos Martinez) [2153573] {CVE-2022-3594} - docs: Remove unnecessary unicode character (Patrick Talbert) [2207988] - PCI: vmd: Add quirk to configure PCIe ASPM and LTR (Myron Stowe) [2136922] - PCI: vmd: Create feature grouping for client products (Myron Stowe) [2136922] - PCI: vmd: Use PCI_VDEVICE in device list (Myron Stowe) [2136922] - PCI/ASPM: Add pci_enable_link_state() (Myron Stowe) [2136922] - PCI: vmd: Fix secondary bus reset for Intel bridges (Myron Stowe) [2136922] - PCI: vmd: Disable MSI remapping after suspend (Myron Stowe) [2136922] - PCI: vmd: Add DID 8086:7D0B and 8086:AD0B for Intel MTL SKUs (Myron Stowe) [2136922] - PCI: vmd: Use devm_kasprintf() instead of simple kasprintf() (Myron Stowe) [2136922]- net/sched: sch_fq: fix integer overflow of "credit" (Davide Caratti) [2187718] - net: sched: gred: prevent races when adding offloads to stats (Davide Caratti) [2187718] - sch_htb: Avoid grafting on htb_destroy_class_offload when destroying htb (Davide Caratti) [2187718] - net/sched: act_mpls: Fix warning during failed attribute validation (Davide Caratti) [2187718] - net: sched: fix memory leak in tcindex_set_parms (Davide Caratti) [2187718] - net_sched: reject TCF_EM_SIMPLE case for complex ematch module (Davide Caratti) [2187718] - net: sched: Fix use after free in red_enqueue() (Davide Caratti) [2187718] - net: sched: fix race condition in qdisc_graft() (Davide Caratti) [2187718] - net: sched: sfb: fix null pointer access issue when sfb_init() fails (Davide Caratti) [2187718] - net/sched: cls_api: Fix flow action initialization (Davide Caratti) [2187718] - scsi: lpfc: Update inbox lpfc driver for RHEL 8.9 to 14.0.0.21. (Paul Ely) [2165048] - scsi: lpfc: Copyright updates for 14.2.0.11 patches (Paul Ely) [2165048] - scsi: lpfc: Copyright updates for 14.2.0.10 patches (Paul Ely) [2165048] - scsi: lpfc: Defer issuing new PLOGI if received RSCN before completing REG_LOGIN (Paul Ely) [2165048] - scsi: lpfc: Record LOGO state with discovery engine even if aborted (Paul Ely) [2165048] - scsi: lpfc: Fix lockdep warning for rx_monitor lock when unloading driver (Paul Ely) [2165048] - scsi: lpfc: Reorder freeing of various DMA buffers and their list removal (Paul Ely) [2165048] - scsi: lpfc: Prevent lpfc_debugfs_lockstat_write() buffer overflow (Paul Ely) [2165048] - scsi: lpfc: Introduce new attention types for lpfc_sli4_async_fc_evt() handler (Paul Ely) [2165048] - scsi: lpfc: Fix use-after-free KFENCE violation during sysfs firmware write (Paul Ely) [2165048] - scsi: lpfc: Exit PRLI completion handling early if ndlp not in PRLI_ISSUE state (Paul Ely) [2165048] - scsi: lpfc: Remove duplicate ndlp kref decrement in lpfc_cleanup_rpis() (Paul Ely) [2165048] - scsi: lpfc: Remove redundant clean up code in disable_vport() (Paul Ely) [2165048] - scsi: lpfc: Fix crash involving race between FLOGI timeout and devloss handler (Paul Ely) [2165048] - net: sched: sch_qfq: prevent slab-out-of-bounds in qfq_activate_agg (Ricardo Robaina) [2192680] {CVE-2023-2248 CVE-2023-31436} - vfio/ccw: remove old IDA format restrictions (Tobias Huschle) [2187662] - vfio/ccw: handle a guest Format-1 IDAL (Tobias Huschle) [2187662] - vfio/ccw: allocate/populate the guest idal (Tobias Huschle) [2187662] - vfio/ccw: calculate number of IDAWs regardless of format (Tobias Huschle) [2187662] - vfio/ccw: read only one Format-1 IDAW (Tobias Huschle) [2187662] - vfio/ccw: refactor the idaw counter (Tobias Huschle) [2187662] - vfio/ccw: populate page_array struct inline (Tobias Huschle) [2187662] - vfio/ccw: record the page offset in struct pfn_array (Tobias Huschle) [2187662] - vfio/ccw: pass page count to page_array struct (Tobias Huschle) [2187662] - vfio/ccw: simplify CCW chain fetch routines (Tobias Huschle) [2187662] - vfio/ccw: move where IDA flag is set in ORB (Tobias Huschle) [2187662] - vfio/ccw: allow non-zero storage keys (Tobias Huschle) [2187662] - iavf: remove active_cvlans and active_svlans bitmaps (Stefan Assmann) [2153349] - iavf: refactor VLAN filter states (Stefan Assmann) [2153349] - iavf: do not track VLAN 0 filters (Stefan Assmann) [2153349] - iavf: fix non-tunneled IPv6 UDP packet type and hashing (Stefan Assmann) [2153349] - iavf: fix inverted Rx hash condition leading to disabled hash (Stefan Assmann) [2153349] - net/sched: move struct tc_mqprio_qopt_offload from pkt_cls.h to pkt_sched.h (Stefan Assmann) [2153349] - iavf/iavf_main: actually log ->src mask when talking about it (Stefan Assmann) [2153349] - iavf: Fix VF driver counting VLAN 0 filters (Stefan Assmann) [2153349] - iavf: Change information about device removal in dmesg (Stefan Assmann) [2153349] - iavf: Replace __FUNCTION__ with __func__ (Stefan Assmann) [2153349] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Stefan Assmann) [2153349] - ipv4: prevent potential spectre v1 gadget in fib_metrics_match() (Guillaume Nault) [2188040] - ipv4: prevent potential spectre v1 gadget in ip_metrics_convert() (Guillaume Nault) [2188040] - ipv4: Fix error return code in fib_table_insert() (Guillaume Nault) [2188040] - ipv4: drop dst in multicast routing path (Guillaume Nault) [2188040] - net: igmp: respect RCU rules in ip_mc_source() and ip_mc_msfilter() (Guillaume Nault) [2188040] - xfrm: Zero padding when dumping algos and encap (Sabrina Dubroca) [2189212] - xfrm: redact SA secret with lockdown confidentiality (Sabrina Dubroca) [2189212] - xfrm: fix bug with DSCP copy to v6 from v4 tunnel (Sabrina Dubroca) [2189212] - xfrm: enforce validity of offload input flags (Sabrina Dubroca) [2189212] - ice: Remove LAG+SRIOV mutual exclusion (Michal Schmidt) [2120585] - ext4: correct the misjudgment in ext4_iget_extra_inode (Carlos Maiolino) [2193101] - ext4: correct max_inline_xattr_value_size computing (Carlos Maiolino) [2193101] - ext4: fix use-after-free in ext4_xattr_set_entry (Carlos Maiolino) [2193101] {CVE-2023-2513} - ext4: add EXT4_INODE_HAS_XATTR_SPACE macro in xattr.h (Carlos Maiolino) [2193101] - ixgbevf: Fix resource leak in ixgbevf_init_module() (Ken Cox) [2153374] - ixgbevf: Add error messages on vlan error (Ken Cox) [2153374]- kunit: make kunit_test_timeout compatible with comment (Nico Pache) [2168375] - kunit: fix assert_type for comparison macros (Nico Pache) [2168375] - redhat: include new kunit tests in mod-internals (Nico Pache) [2168375] - kernel.h: split out mathematical helpers (Nico Pache) [2168375] - linux/kernel.h: fix overflow for DIV_ROUND_UP_ULL (Nico Pache) [2168375] - linux/kernel.h: Use parentheses around argument in u64_to_user_ptr() (Nico Pache) [2168375] - : drop the gcc-3.3 'const' hack in roundup() (Nico Pache) [2168375] - kernel.h: documentation for roundup() vs round_up() (Nico Pache) [2168375] - apparmor: test: Use NULL macros (Nico Pache) [2168375] - kasan: test: Use NULL macros (Nico Pache) [2168375] - kunit: use NULL macros (Nico Pache) [2168375] - kunit: Introduce _NULL and _NOT_NULL macros (Nico Pache) [2168375] - kunit: decrease macro layering for EQ/NE asserts (Nico Pache) [2168375] - kunit: decrease macro layering for integer asserts (Nico Pache) [2168375] - kunit: reduce layering in string assertion macros (Nico Pache) [2168375] - kunit: drop unused intermediate macros for ptr inequality checks (Nico Pache) [2168375] - kunit: make KUNIT_EXPECT_EQ() use KUNIT_EXPECT_EQ_MSG(), etc. (Nico Pache) [2168375] - Documentation: kunit: Remove redundant 'tips.rst' page (Nico Pache) [2168375] - Documentation: KUnit: reword description of assertions (Nico Pache) [2168375] - kunit: tool: Don't download risc-v opensbi firmware with wget (Nico Pache) [2168375] - drm/tests: Split up test cases in igt_check_drm_format_min_pitch (Nico Pache) [2168375] - kunit: executor: Fix a memory leak on failure in kunit_filter_tests (Nico Pache) [2168375] - Documentation: kunit: Cleanup run_wrapper, fix x-ref (Nico Pache) [2168375] - kunit: use kmemdup in kunit_filter_tests(), take suite as const (Nico Pache) [2168375] - kunit: fix executor OOM error handling logic on non-UML (Nico Pache) [2168375] - drm: selftest: convert drm_mm selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_buddy selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_framebuffer selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_dp_mst_helper selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_plane_helper selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_format selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_rect selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_cmdline_parser selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_damage_helper selftest to KUnit (Nico Pache) [2168375] - drm/doc: Add KUnit documentation (Nico Pache) [2168375] - kunit: drop unused assert_type from kunit_assert and clean up macros (Nico Pache) [2168375] - kunit: split out part of kunit_assert into a static const (Nico Pache) [2168375] - kunit: factor out kunit_base_assert_format() call into kunit_fail() (Nico Pache) [2168375] - kunit: drop unused kunit* field in kunit_assert (Nico Pache) [2168375] - kunit: move check if assertion passed into the macros (Nico Pache) [2168375] - kunit: tool: misc cleanups (Nico Pache) [2168375] - kunit: tool: minor cosmetic cleanups in kunit_parser.py (Nico Pache) [2168375] - kunit: tool: make parser stop overwriting status of suites w/ no_tests (Nico Pache) [2168375] - kunit: tool: remove dead parse_crash_in_log() logic (Nico Pache) [2168375] - kunit: tool: print clearer error message when there's no TAP output (Nico Pache) [2168375] - kunit: tool: stop using a shell to run kernel under QEMU (Nico Pache) [2168375] - kunit: tool: update test counts summary line format (Nico Pache) [2168375] - kunit: bail out of test filtering logic quicker if OOM (Nico Pache) [2168375] - lib/Kconfig.debug: change KUnit tests to default to KUNIT_ALL_TESTS (Nico Pache) [2168375] - kunit: Rework kunit_resource allocation policy (Nico Pache) [2168375] - thunderbolt: Add KUnit test for devices with no DisplayPort adapters (Nico Pache) [2168375] - drm/todo: Add entry for converting kselftests to kunit (Nico Pache) [2168375] - drm/todo: Add entry for using kunit in the subsystem (Nico Pache) [2168375] - kunit: fix debugfs code to use enum kunit_status, not bool (Nico Pache) [2168375] - kunit: add ability to specify suite-level init and exit functions (Nico Pache) [2168375] - kunit: rename print_subtest_{start,end} for clarity (s/subtest/suite) (Nico Pache) [2168375] - kunit: add support for kunit_suites that reference init code (Nico Pache) [2168375] - Documentation: kunit: change complete_and_exit to kthread_complete_and_exit (Nico Pache) [2168375] - mm/slub, kunit: Make slub_kunit unaffected by user specified flags (Nico Pache) [2168375] - kunit: Make kunit_remove_resource() idempotent (Nico Pache) [2168375] - list: test: Test the hlist structure (Nico Pache) [2168375] - ASoC: soc-utils: Add kunit test for snd_soc_tdm_params_to_bclk() (Nico Pache) [2168375] - ASoC: soc-utils: Add helper to calculate BCLK from TDM info (Nico Pache) [2168375] - Documentation: kunit: update kconfig options needed for UML coverage (Nico Pache) [2168375] - kunit: split resource API impl from test.c into new resource.c (Nico Pache) [2168375] - kunit: split resource API from test.h into new resource.h (Nico Pache) [2168375] - kunit: tool: more descriptive metavars/--help output (Nico Pache) [2168375] - kunit: tool: Do not colorize output when redirected (Nico Pache) [2168375] - kunit: tool: properly report the used arch for --json, or '' if not known (Nico Pache) [2168375] - kunit: tool: refactor how we plumb metadata into JSON (Nico Pache) [2168375] - kunit: tool: drop mostly unused KunitResult.result field (Nico Pache) [2168375] - kunit: tool: readability tweaks in KernelCI json generation logic (Nico Pache) [2168375] - kunit: tool: simplify code since build_dir can't be None (Nico Pache) [2168375] - kunit: tool: drop last uses of collections.namedtuple (Nico Pache) [2168375] - kunit: tool: drop unused KernelDirectoryPath var (Nico Pache) [2168375] - kunit: tool: make --json handling a bit clearer (Nico Pache) [2168375] - Documentation: kunit: fix path to .kunitconfig in start.rst (Nico Pache) [2168375] - Documentation: kunit: Fix cross-referencing warnings (Nico Pache) [2168375] - binfmt_elf: Introduce KUnit test (Nico Pache) [2168375] - list: test: Add a test for list_entry_is_head() (Nico Pache) [2168375] - list: test: Add a test for list_is_head() (Nico Pache) [2168375] - list: test: Add test for list_del_init_careful() (Nico Pache) [2168375] - list: introduce list_is_head() helper and re-use it in list.h (Nico Pache) [2168375] - list: add "list_del_init_careful()" to go with "list_empty_careful()" (Nico Pache) [2168375] - kunit: add example test case showing off all the expect macros (Nico Pache) [2168375] - test_hash.c: refactor into kunit (Nico Pache) [2168375] - lib/Kconfig.debug: properly split hash test kernel entries (Nico Pache) [2168375] - test_hash.c: split test_hash_init (Nico Pache) [2168375] - test_hash.c: split test_int_hash into arch-specific functions (Nico Pache) [2168375] - hash.h: remove unused define directive (Nico Pache) [2168375] - iio: test: Add check against NULL for buffer in tests. (Nico Pache) [2168375] - net: kunit: add a test for dev_addr_lists (Nico Pache) [2168375] - kprobes: convert tests to kunit (Nico Pache) [2168375] - bitfield: build kunit tests without structleak plugin (Nico Pache) [2168375] - thunderbolt: build kunit tests without structleak plugin (Nico Pache) [2168375] - iio/test-format: build kunit tests without structleak plugin (Nico Pache) [2168375] - gcc-plugins/structleak: add makefile var for disabling structleak (Nico Pache) [2168375] - math: RATIONAL_KUNIT_TEST should depend on RATIONAL instead of selecting it (Nico Pache) [2168375] - math: make RATIONAL tristate (Nico Pache) [2168375] - rtc: move RTC_LIB_KUNIT_TEST to proper location (Nico Pache) [2168375] - rtc: Improve performance of rtc_time64_to_tm(). Add tests. (Nico Pache) [2168375] - lib/math/rational: add Kunit test cases (Nico Pache) [2168375] - time/kunit: Add missing MODULE_LICENSE() (Nico Pache) [2168375] - kasan: test: make use of kunit_skip() (Nico Pache) [2168375] - time: Improve performance of time64_to_tm() (Nico Pache) [2168375] - iio: Remove a cast in iio-test-format which is no longer required (Nico Pache) [2168375] - lib: kunit: suppress a compilation warning of frame size (Nico Pache) [2168375] - kasan: docs: update tests section (Nico Pache) [2168375] - iio: Add basic unit test for iio_format_value() (Nico Pache) [2168375] - Documentation: KUnit: Fix usage bug (Nico Pache) [2168375] - kunit: fix missing f in f-string in run_checks.py (Nico Pache) [2168375] - kunit: tool: Import missing importlib.abc (Nico Pache) [2168375] - kunit: replace kernel.h with the necessary inclusions (Nico Pache) [2168375] - Documentation: KUnit: Restyled Frequently Asked Questions (Nico Pache) [2168375] - Documentation: KUnit: Restyle Test Style and Nomenclature page (Nico Pache) [2168375] - Documentation: KUnit: Rework writing page to focus on writing tests (Nico Pache) [2168375] - Documentation: kunit: Reorganize documentation related to running tests (Nico Pache) [2168375] - Documentation: KUnit: Added KUnit Architecture (Nico Pache) [2168375] - Documentation: KUnit: Rewrite getting started (Nico Pache) [2168375] - Documentation: KUnit: Rewrite main page (Nico Pache) [2168375] - kunit: tool: Default --jobs to number of CPUs (Nico Pache) [2168375] - kunit: tool: fix newly introduced typechecker errors (Nico Pache) [2168375] - kunit: tool: make `build` subcommand also reconfigure if needed (Nico Pache) [2168375] - kunit: tool: delete kunit_parser.TestResult type (Nico Pache) [2168375] - kunit: tool: use dataclass instead of collections.namedtuple (Nico Pache) [2168375] - kunit: tool: suggest using decode_stacktrace.sh on kernel crash (Nico Pache) [2168375] - kunit: tool: reconfigure when the used kunitconfig changes (Nico Pache) [2168375] - kunit: tool: revamp message for invalid kunitconfig (Nico Pache) [2168375] - kunit: tool: add --kconfig_add to allow easily tweaking kunitconfigs (Nico Pache) [2168375] - kunit: tool: move Kconfig read_from_file/parse_from_string to package-level (Nico Pache) [2168375] - kunit: tool: print parsed test results fully incrementally (Nico Pache) [2168375] - kunit: Report test parameter results as (K)TAP subtests (Nico Pache) [2168375] - kunit: Don't crash if no parameters are generated (Nico Pache) [2168375] - kunit: tool: Report an error if any test has no subtests (Nico Pache) [2168375] - kunit: tool: Do not error on tests without test plans (Nico Pache) [2168375] - kunit: add run_checks.py script to validate kunit changes (Nico Pache) [2168375] - kunit: tool: fix --json output for skipped tests (Nico Pache) [2168375] - kunit: tool: fix typecheck errors about loading qemu configs (Nico Pache) [2168375] - kunit: tool: continue past invalid utf-8 output (Nico Pache) [2168375] - kunit: tool: improve compatibility of kunit_parser with KTAP specification (Nico Pache) [2168375] - kunit: tool: yield output from run_kernel in real time (Nico Pache) [2168375] - kunit: tool: support running each suite/test separately (Nico Pache) [2168375] - kunit: tool: actually track how long it took to run tests (Nico Pache) [2168375] - kunit: tool: factor exec + parse steps into a function (Nico Pache) [2168375] - kunit: add 'kunit.action' param to allow listing out tests (Nico Pache) [2168375] - kunit: tool: show list of valid --arch options when invalid (Nico Pache) [2168375] - kunit: tool: misc fixes (unused vars, imports, leaked files) (Nico Pache) [2168375] - kunit: fix too small allocation when using suite-only kunit.filter_glob (Nico Pache) [2168375] - kunit: tool: allow filtering test cases via glob (Nico Pache) [2168375] - kunit: tool: better handling of quasi-bool args (--json, --raw_output) (Nico Pache) [2168375] - kunit: tool: make --raw_output support only showing kunit output (Nico Pache) [2168375] - kunit: tool: add --kernel_args to allow setting module params (Nico Pache) [2168375] - kunit: tool: Assert the version requirement (Nico Pache) [2168375] - kunit: tool: remove unnecessary "annotations" import (Nico Pache) [2168375] - Documentation: kunit: drop obsolete note about uml_abort for coverage (Nico Pache) [2168375] - kunit: tool: Fix error messages for cases of no tests and wrong TAP header (Nico Pache) [2168375] - kunit: tool: Support skipped tests in kunit_tool (Nico Pache) [2168375] - kunit: tool: internal refactor of parser input handling (Nico Pache) [2168375] - kunit: Remove the unused all_tests.config (Nico Pache) [2168375] - kunit: Move default config from arch/um -> tools/testing/kunit (Nico Pache) [2168375] - kunit: arch/um/configs: Enable KUNIT_ALL_TESTS by default (Nico Pache) [2168375] - kunit: tool: add support for QEMU (Nico Pache) [2168375] - kunit: tool: make --kunitconfig accept dirs, add lib/kunit fragment (Nico Pache) [2168375] - kunit: tool: Disable PAGE_POISONING under --alltests (Nico Pache) [2168375] - kunit: tool: Fix a python tuple typing error (Nico Pache) [2168375] - iommu/amd: Indicate whether DMA remap support is enabled (Desnes Nunes) [2184064] - Revert "usb: typec: ucsi: add a common function ucsi_unregister_connectors()" (Desnes Nunes) [2184064] - usb: typec: ucsi: Only check the contract if there is a connection (Desnes Nunes) [2184064] - media: uvcvideo: Fix InterfaceProtocol for Quanta camera (Desnes Nunes) [2184064] - net: thunderbolt: fix memory leak in tbnet_open() (Desnes Nunes) [2184064] - USB: serial: option: add u-blox LARA-L6 modem (Desnes Nunes) [2184064] - USB: serial: option: add u-blox LARA-R6 00B modem (Desnes Nunes) [2184064] - USB: serial: option: remove old LARA-R6 PID (Desnes Nunes) [2184064] - net: thunderbolt: Fix error handling in tbnet_init() (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom FM160 0x0111 composition (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom MA510 modem (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom L610 modem (Desnes Nunes) [2184064] - USB: serial: option: add device id for Foxconn T99W265 (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom FM101-GL variants (Desnes Nunes) [2184064] - USB: serial: option: add Telit LE910S1 0x9200 composition (Desnes Nunes) [2184064] - usb: add NO_LPM quirk for Realforce 87U Keyboard (Desnes Nunes) [2184064] - usb: typec: tipd: Prevent uninitialized event{1,2} in IRQ handler (Desnes Nunes) [2184064] - usb: typec: mux: Enter safe mode only when pins need to be reconfigured (Desnes Nunes) [2184064] - USB: bcma: Make GPIO explicitly optional (Desnes Nunes) [2184064] - USB: serial: option: add Sierra Wireless EM9191 (Desnes Nunes) [2184064] - xhci: Remove device endpoints from bandwidth list when freeing the device (Desnes Nunes) [2184064] - xhci-pci: Set runtime PM as default policy on all xHC 1.2 or later devices (Desnes Nunes) [2184064] - xhci: Add quirk to reset host back to default state at shutdown (Desnes Nunes) [2184064] - usb: xhci: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96 controller (Desnes Nunes) [2184064] - Revert "xhci: turn off port power in shutdown" (Desnes Nunes) [2184064] - xhci-pci: Allow host runtime PM as default for Intel Meteor Lake xHCI (Desnes Nunes) [2184064] - xhci-pci: Allow host runtime PM as default for Intel Raptor Lake xHCI (Desnes Nunes) [2184064] - xhci: turn off port power in shutdown (Desnes Nunes) [2184064] - xhci: Keep interrupt disabled in initialization until host is running. (Desnes Nunes) [2184064] - fbdev: sisfb: use explicitly signed char (Desnes Nunes) [2184064] - usb: typec: ucsi: acpi: Implement resume callback (Desnes Nunes) [2184064] - usb: typec: ucsi: Check the connection on resume (Desnes Nunes) [2184064] - usb: host: ehci-exynos: switch to using gpiod API (Desnes Nunes) [2184064] - usb: typec: ucsi_ccg: Disable UCSI ALT support on Tegra (Desnes Nunes) [2184064] - usb: typec: Replace custom implementation of device_match_fwnode() (Desnes Nunes) [2184064] - usb: typec: ucsi: Don't warn on probe deferral (Desnes Nunes) [2184064] - usb: typec: ucsi: Wait for the USB role switches (Desnes Nunes) [2184064] - usb: typec: ucsi: add a common function ucsi_unregister_connectors() (Desnes Nunes) [2184064] - usb: typec: ucsi: Better fix for missing unplug events issue (Desnes Nunes) [2184064] - usb: typec: ucsi: Read the PDOs in separate work (Desnes Nunes) [2184064] - usb: typec: ucsi: Check the partner alt modes always if there is PD contract (Desnes Nunes) [2184064] - usb: typec: ucsi: acpi: Reduce the command completion timeout (Desnes Nunes) [2184064] - usb: typec: ucsi: Add polling mechanism for partner tasks like alt mode checking (Desnes Nunes) [2184064] - usb: typec: ucsi: Don't stop alt mode registration on busy condition (Desnes Nunes) [2184064] - usb: typec: ucsi: Always cancel the command if PPM reports BUSY condition (Desnes Nunes) [2184064] - usb: add quirks for Lenovo OneLink+ Dock (Desnes Nunes) [2184064] - USB: NO_LPM quirk Lenovo USB-C to Ethernet Adapher(RTL8153-04) (Desnes Nunes) [2184064] - USB: NO_LPM quirk Lenovo Powered USB-C Travel Hub (Desnes Nunes) [2184064] - usb: idmouse: fix an uninit-value in idmouse_open (Desnes Nunes) [2184064] - usb: ulpi: use DEFINE_SHOW_ATTRIBUTE to simplify ulpi_regs (Desnes Nunes) [2184064] - usb: ulpi: Add debugfs support (Desnes Nunes) [2184064] - usb: typec: fusb302: Switch to use dev_err_probe() helper (Desnes Nunes) [2184064] - usb: typec: qcom-pmic-typec: Switch to use dev_err_probe() helper (Desnes Nunes) [2184064] - usb: typec: stusb160x: Switch to use dev_err_probe() helper (Desnes Nunes) [2184064] - USB: serial: qcserial: add new usb-id for Dell branded EM7455 (Desnes Nunes) [2184064] - thunderbolt: Explicitly enable lane adapter hotplug events at startup (Desnes Nunes) [2184064] - media: flexcop-usb: use usb_endpoint_maxp() (Desnes Nunes) [2184064] - media: flexcop-usb: clean up URB initialisation (Desnes Nunes) [2184064] - media: flexcop-usb: clean up endpoint sanity checks (Desnes Nunes) [2184064] - media: flexcop-usb: fix endpoint type check (Desnes Nunes) [2184064] - media: flexcop-usb: sanity checking of endpoint type (Desnes Nunes) [2184064] - media: dib0700: fix rc endpoint lookup (Desnes Nunes) [2184064] - media: flexcop-usb: fix endpoint sanity check (Desnes Nunes) [2184064] - media: b2c2-flexcop-usb: add sanity checking (Desnes Nunes) [2184064] - media: flexcop-usb: fix NULL-ptr deref in flexcop_usb_transfer_init() (Desnes Nunes) [2184064] - media: usb/dvb-usb-v2: fix repeated words in comments (Desnes Nunes) [2184064] - thunderbolt: Use dev_err_probe() (Desnes Nunes) [2184064] - thunderbolt: Convert to use sysfs_emit()/sysfs_emit_at() APIs (Desnes Nunes) [2184064] - Revert "usb: storage: Add quirk for Samsung Fit flash" (Desnes Nunes) [2184064] - USB: add RESET_RESUME quirk for NVIDIA Jetson devices in RCM (Desnes Nunes) [2184064] - media: uvcvideo: move uvc_format_desc to common header (Desnes Nunes) [2184064] - media: uvcvideo: Add UVC_GUID_FORMAT_H265 (Desnes Nunes) [2184064] - media: v4l: move helper functions for fractions from uvc to v4l2-common (Desnes Nunes) [2184064] - xhci: remove unused lpm_failed_dev member from struct xhci_hcd (Desnes Nunes) [2184064] - xhci: remove unused command member from struct xhci_hcd struct (Desnes Nunes) [2184064] - xhci: show fault reason for a failed enable slot command (Desnes Nunes) [2184064] - xhci: Don't show warning for reinit on known broken suspend (Desnes Nunes) [2184064] - xhci: dbc: Fix memory leak in xhci_alloc_dbc() (Desnes Nunes) [2184064] - usb: host: xhci: Fix potential memory leak in xhci_alloc_stream_info() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up driver prefix (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: move driver structure (Desnes Nunes) [2184064] - USB: serial: make remove callback return void (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up attribute visibility logic (Desnes Nunes) [2184064] - USB: serial: console: move mutex_unlock() before usb_serial_put() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: convert to use dev_groups (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: add support for HP and HA devices (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: simplify divisor handling (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: assume hi-speed type (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up baudrate request (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up attribute handling (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up modem-status handling (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: tighten device-type detection (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: rename channel index (Desnes Nunes) [2184064] - USB: serial: kl5kusb105: use usb_control_msg_recv() and usb_control_msg_send() (Desnes Nunes) [2184064] - USB: serial: keyspan_pda: use usb_control_msg_recv() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: use usb_control_msg_recv() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: include FT2232D in type string (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: rename chip types (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: drop redundant chip type comments (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up chip type enum (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: fix 300 bps rate for SIO (Desnes Nunes) [2184064] - usb: typec: intel_pmc_mux: Use the helper acpi_dev_get_memory_resources() (Desnes Nunes) [2184064] - usb: misc: usb3503: call clk_disable_unprepare in the error handling (Desnes Nunes) [2184064] - usb: misc: uss720: fix uninitialized variable rlen (Desnes Nunes) [2184064] - thunderbolt: debugfs: Fix spelling mistakes in seq_puts text (Desnes Nunes) [2184064] - thunderbolt: Add support for ASMedia NVM image format (Desnes Nunes) [2184064] - thunderbolt: Move vendor specific NVM handling into nvm.c (Desnes Nunes) [2184064] - thunderbolt: Provide tb_retimer_nvm_read() analogous to tb_switch_nvm_read() (Desnes Nunes) [2184064] - thunderbolt: Rename and make nvm_read() available for other files (Desnes Nunes) [2184064] - thunderbolt: Extend NVM version fields to 32-bits (Desnes Nunes) [2184064] - thunderbolt: Allow NVM upgrade of USB4 host routers (Desnes Nunes) [2184064] - scsi: uas: Drop DID_TARGET_FAILURE use (Desnes Nunes) [2184064] - usb: clean up after dropping driver registration log spam (Desnes Nunes) [2184064] - USB: host: ehci-atmel: Add support for HSIC phy (Desnes Nunes) [2184064] - dt-bindings: usb: atmel: add USB PHY type property (Desnes Nunes) [2184064] - USB: xhci: make xhci_get_endpoint_address static (Desnes Nunes) [2184064] - thunderbolt: Add support for receiver lane margining (Desnes Nunes) [2184064] - thunderbolt: Add helper to check if CL states are enabled on port (Desnes Nunes) [2184064] - thunderbolt: Pass CL state bitmask to tb_port_clx_supported() (Desnes Nunes) [2184064] - thunderbolt: Move port CL state functions into correct place in switch.c (Desnes Nunes) [2184064] - thunderbolt: Move tb_xdomain_parent() to tb.h (Desnes Nunes) [2184064] - USB: hcd-pci: Drop the unused id parameter from usb_hcd_pci_probe() (Desnes Nunes) [2184064] - USB: FHCI: Switch to GPIO descriptors (Desnes Nunes) [2184064] - net: thunderbolt: Update module description with mention of USB4 (Desnes Nunes) [2184064] - net: thunderbolt: Convert to use SPDX identifier (Desnes Nunes) [2184064] - net: thunderbolt: Enable full end-to-end flow control (Desnes Nunes) [2184064] - net: thunderbolt: Align the driver to the USB4 networking spec (Desnes Nunes) [2184064] - net: thunderbolt: Add comment clarifying prtcstns flags (Desnes Nunes) [2184064] - thunderbolt: Add back Intel Falcon Ridge end-to-end flow control workaround (Desnes Nunes) [2184064] - thunderbolt: Make iommu_dma_protection more accurate (Desnes Nunes) [2184064] - iommu: Add capability for pre-boot DMA protection (Desnes Nunes) [2184064] - iommu: Introduce device_iommu_capable() (Desnes Nunes) [2184064] - thunderbolt: Show link type for XDomain connections too (Desnes Nunes) [2184064] - thunderbolt: Add KUnit test for devices with no DisplayPort adapters (Desnes Nunes) [2184064] - thunderbolt: Add support for XDomain lane bonding (Desnes Nunes) [2184064] - thunderbolt: Split setting link width and lane bonding into own functions (Desnes Nunes) [2184064] - thunderbolt: Move tb_port_state() prototype to correct place (Desnes Nunes) [2184064] - thunderbolt: Fix typo in comment (Desnes Nunes) [2184064] - thunderbolt: Replace usage of found with dedicated list iterator variable (Desnes Nunes) [2184064] - net: thunderbolt: Enable DMA paths only after rings are enabled (Desnes Nunes) [2184064] - usb: reduce kernel log spam on driver registration (Desnes Nunes) [2184064] - usb: host: xhci-plat: suspend/resume clks for brcm (Desnes Nunes) [2184064] - usb: host: xhci-plat: suspend and resume clocks (Desnes Nunes) [2184064] - usb: host: Initiate urb ep with udev ep0 (Desnes Nunes) [2184064] - usb: ehci: Use endpoint in URB to get maxpacket (Desnes Nunes) [2184064] - dt-bindings: usb: Add missing (unevaluated|additional)Properties on child nodes (Desnes Nunes) [2184064] - dt-bindings: usb: Add DT bindings for STUSB160x Type-C controller (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Sonix Technology (Desnes Nunes) [2184064] - media: uvcvideo: Use entity get_cur in uvc_ctrl_set (Desnes Nunes) [2184064] - media: uvcvideo: Fix typo 'the the' in comment (Desnes Nunes) [2184064] - media: uvcvideo: Use indexed loops in uvc_ctrl_init_ctrl() (Desnes Nunes) [2184064] - media: uvcvideo: Fix invalid pointer in uvc_ctrl_init_ctrl() (Desnes Nunes) [2184064] - media: uvcvideo: Remove unneeded goto (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Acer EasyCamera (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Quanta cameras (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Chicony Easycamera (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Chicony Easycamera (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Quanta UVC Webcam (Desnes Nunes) [2184064] - media: uvcvideo: Add support for per-device control mapping overrides (Desnes Nunes) [2184064] - media: uvcvideo: Add missing value for power_line_frequency (Desnes Nunes) [2184064] - media: uvcvideo: Replace broken URL (Desnes Nunes) [2184064] - media: uvcvideo: Fix comment blocks style (Desnes Nunes) [2184064] - media: uvcvideo: refactor __uvc_ctrl_add_mapping (Desnes Nunes) [2184064] - media: technisat-usb2: Fix comment typo (Desnes Nunes) [2184064] - media: tm6000: Fix typo 'the the' in comment (Desnes Nunes) [2184064] - media: gspca: Fix typo 'the the' in comment (Desnes Nunes) [2184064] - thunderbolt: Add support for Intel Meteor Lake (Desnes Nunes) [2184064] - thunderbolt: Add comment where Thunderbolt 4 PCI IDs start (Desnes Nunes) [2184064] - usb/hcd: Fix dma_map_sg error check (Desnes Nunes) [2184064] - usb: move from strlcpy with unused retval to strscpy (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Fix CC PHY noise filter of voltage level (Desnes Nunes) [2184064] - usb: typec: tcpci: Move function "tcpci_to_typec_cc" to common (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Add compatible id with rt1715 (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Add initial phy setting (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Add regulator support when source vbus (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Fix vendor setting when set vconn (Desnes Nunes) [2184064] - dt-bindings usb: typec: rt1711h: Add binding for Richtek RT1711H (Desnes Nunes) [2184064] - usb: common: debug: Check non-standard control requests (Desnes Nunes) [2184064] - usb: typec: ucsi: stm32g0: Fix spelling mistake "booloader" -> "bootloader" (Desnes Nunes) [2184064] - usb: common: usb-conn-gpio: Simplify some error message (Desnes Nunes) [2184064] - scsi: target: iscsi: Fix an error message in iscsi_check_key() (Maurizio Lombardi) [2186500] - scsi: target: core: Fix warning on RT kernels (Maurizio Lombardi) [2186500] - scsi: target: core: Remove unused variable 'unit_serial_len' (Maurizio Lombardi) [2186500] - scsi: target: Remove the unused function transport_lba_64_ext() (Maurizio Lombardi) [2186500] - fix iov_iter_bvec() "direction" argument (Maurizio Lombardi) [2186500] - scsi: target: tcm_loop: Fix possible name leak in tcm_loop_setup_hba_bus() (Maurizio Lombardi) [2186500] - scsi: target: core: New key must be used for moved PR (Maurizio Lombardi) [2186500] - scsi: target: core: UA on all LUNs after reset (Maurizio Lombardi) [2186500] - scsi: target: core: Abort all preempted regs if requested (Maurizio Lombardi) [2186500] - scsi: target: core: Fix memory leak in preempt_and_abort (Maurizio Lombardi) [2186500] - scsi: target: core: Fix preempt and abort for allreg res (Maurizio Lombardi) [2186500] - scsi: target: Remove unused se_tmr_req_cache declaration (Maurizio Lombardi) [2186500] - scsi: target: alua: Do not report emtpy port group (Maurizio Lombardi) [2186500] - scsi: target: core: Set MULTIP bit for se_device with multiple ports (Maurizio Lombardi) [2186500] - scsi: target: pscsi: Remove repeated word "calling" (Maurizio Lombardi) [2186500] - scsi: target: core: De-RCU of se_lun and se_lun acl (Maurizio Lombardi) [2186500] - scsi: target: core: Fix race during ACL removal (Maurizio Lombardi) [2186500] - scsi: target: Remove XDWRITEREAD emulated support (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Do not require target authentication (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Allow AuthMethod=None (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Support base64 in CHAP (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Add support for extended CDB AHS (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Fix clang -Wformat warnings (Maurizio Lombardi) [2186500] - scsi: target: Remove incorrect zero blocks WRITE_SAME check (Maurizio Lombardi) [2186500] - scsi: target: Remove duplicate "the" (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Fix NULL pointer dereference in iscsi_conn_auth_required() (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Control authentication per ACL (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Extract auth functions (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Add upcast helpers (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Avoid holding XArray lock when calling lock_page (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Rename iscsi_session to iscsit_session (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Rename iscsi_conn to iscsit_conn (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Rename iscsi_cmd to iscsit_cmd (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Fix possible data corruption (Maurizio Lombardi) [2186500] - scsi: target: core: Silence the message about unknown VPD pages (Maurizio Lombardi) [2186500] - target: remove an incorrect unmap zeroes data deduction (Maurizio Lombardi) [2186500] - scsi: target: Fix incorrect use of cpumask_t (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Fix possible page UAF (Maurizio Lombardi) [2186500] - scsi: target: Add iscsi/cpus_allowed_list in configfs (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Make cmd_ring_size changeable via configfs (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Make sure the np under each tpg is unique (Maurizio Lombardi) [2186500] - scsi: target: configfs: Delete unnecessary checks for NULL (Maurizio Lombardi) [2186500] - scsi: target: core: Use RCU helpers for INQUIRY t10_alua_tg_pt_gp (Maurizio Lombardi) [2186500] - scsi: target: core: Remove from tmr_list during LUN unlink (Maurizio Lombardi) [2186500] - scsi: target: core: Stop using bdevname() (Maurizio Lombardi) [2186500] - scsi: target: Perform ALUA group changes in one step (Maurizio Lombardi) [2186500] - scsi: target: Replace lun_tg_pt_gp_lock with rcu in I/O path (Maurizio Lombardi) [2186500] - scsi: target: Fix alua_tg_pt_gps_count tracking (Maurizio Lombardi) [2186500] - scsi: target: Fix ordered tag handling (Maurizio Lombardi) [2186500] - scsi: target: Fix ordered CMD_T_SENT handling (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Allocate zeroed pages for data area (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Use struct_size() helper in kmalloc() (Maurizio Lombardi) [2186500] - scsi: target: sbp: Replace enable attr with ops.enable (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Replace tpg enable attr with ops.enable (Maurizio Lombardi) [2186500] - scsi: target: core: Add common tpg/enable attribute (Maurizio Lombardi) [2186500] - scsi: target: core: Make logs less verbose (Maurizio Lombardi) [2186500] - scsi: target: Remove unused function arguments (Maurizio Lombardi) [2186500] - scsi: target: Fix spelling mistake "CONFLIFT" -> "CONFLICT" (Maurizio Lombardi) [2186500] - dm: don't lock fs when the map is NULL in process of resume (Benjamin Marzinski) [2192702] - dm flakey: add an "error_reads" option (Benjamin Marzinski) [2192702] - dm flakey: remove trailing space in the table line (Benjamin Marzinski) [2192702] - dm flakey: fix a crash with invalid table line (Benjamin Marzinski) [2192702] - dm ioctl: fix nested locking in table_clear() to remove deadlock concern (Benjamin Marzinski) [2192702] - dm: unexport dm_get_queue_limits() (Benjamin Marzinski) [2192702] - dm: add helper macro for simple DM target module init and exit (Benjamin Marzinski) [2192702] - dm raid: remove unused d variable (Benjamin Marzinski) [2192702] - dm mirror: add DMERR message if alloc_workqueue fails (Benjamin Marzinski) [2192702] - dm: push error reporting down to dm_register_target() (Benjamin Marzinski) [2192702] - dm integrity: call kmem_cache_destroy() in dm_integrity_init() error path (Benjamin Marzinski) [2192702] - dm error: add discard support (Benjamin Marzinski) [2192702] - dm zero: add discard support (Benjamin Marzinski) [2192702] - dm table: allow targets without devices to set ->io_hints (Benjamin Marzinski) [2192702] - dm verity: fix error handling for check_at_most_once on FEC (Benjamin Marzinski) [2192702] - dm thin: speed up cell_defer_no_holder() (Benjamin Marzinski) [2192702] - dm bufio: don't bug for clear developer oversight (Benjamin Marzinski) [2192702] - dm bufio: never crash if dm_bufio_in_request() (Benjamin Marzinski) [2192702] - dm bufio: use WARN_ON in dm_bufio_client_destroy and dm_bufio_exit (Benjamin Marzinski) [2192702] - dm bufio: remove unused dm_bufio_release_move interface (Benjamin Marzinski) [2192702] - dm stats: check for and propagate alloc_percpu failure (Benjamin Marzinski) [2192702] - dm crypt: avoid accessing uninitialized tasklet (Benjamin Marzinski) [2192702] - dm crypt: add cond_resched() to dmcrypt_write() (Benjamin Marzinski) [2192702] - dm thin: fix deadlock when swapping to thin device (Benjamin Marzinski) [2192702] - units: add the HZ macros (Jocelyn Falempe) [2160451] - isystem: ship and use stdarg.h (Jocelyn Falempe) [2160451] - i915: Move list_count() to list.h as list_count_nodes() for broader use (Jocelyn Falempe) [2160451] - resource: Convert DEFINE_RES_NAMED() to be compound literal (Jocelyn Falempe) [2160451] - media: videobuf2: Assert held reservation lock for dma-buf mmapping (Jocelyn Falempe) [2160451] - media: videobuf2: Stop using internal dma-buf lock (Jocelyn Falempe) [2160451] - media: videobuf2: Prepare to dynamic dma-buf locking specification (Jocelyn Falempe) [2160451] - media: videobuf2-dma-contig.c: remove spurious 'b' in message (Jocelyn Falempe) [2160451] - dma-buf: Add unlocked variant of attachment-mapping functions (Jocelyn Falempe) [2160451] - dma-buf: Add unlocked variant of vmapping functions (Jocelyn Falempe) [2160451] - kbuild: simplify access to the kernel's version (Jocelyn Falempe) [2160451] - hwmon: (core) Add support for rated attributes (Jocelyn Falempe) [2160451] - ACPI: video: Allow GPU drivers to report no panels (Jocelyn Falempe) [2160451] - drm: Move nomodeset kernel parameter to drivers/video (Jocelyn Falempe) [2160451] - PM: core: Add EXPORT[_GPL]_SIMPLE_DEV_PM_OPS macros (Jocelyn Falempe) [2160451] - PM: runtime: Add DEFINE_RUNTIME_DEV_PM_OPS() macro (Jocelyn Falempe) [2160451] - ACPI: video: Make backlight class device registration a separate step (v2) (Jocelyn Falempe) [2160451] - ACPI: video: Add acpi_video_backlight_use_native() helper (Jocelyn Falempe) [2160451] - scsi: sched/wait: Add wait_event_lock_irq_timeout for TASK_UNINTERRUPTIBLE usage (Jocelyn Falempe) [2160451] - iosys-map: Add IOSYS_MAP_INIT_VADDR_IOMEM() (Jocelyn Falempe) [2160451] - perf branch: Fix interpretation of branch records (Michael Petlan) [2086826] - perf/x86/amd/lbr: Adjust LBR regardless of filtering (Michael Petlan) [2086826] - perf/x86/utils: Fix uninitialized var in get_branch_type() (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 branch speculation info support (Michael Petlan) [2086826] - perf/core: Add speculation info to branch entries (Michael Petlan) [2086826] - perf/x86/amd/lbr: Use fusion-aware branch classifier (Michael Petlan) [2086826] - perf/x86: Make branch classifier fusion-aware (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 software branch filter support (Michael Petlan) [2086826] - perf/x86: Move branch classifier (Michael Petlan) [2086826] - perf: Add irq and exception return branch types (Michael Petlan) [2086826] - perf/x86/intel/ds: Check return values of insn decoder functions (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 hardware branch filter support (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 branch record support (Michael Petlan) [2086826] - perf/x86/amd/lbr: Detect LbrExtV2 support (Michael Petlan) [2086826] - x86/cpufeatures: Add LbrExtV2 feature bit (Michael Petlan) [2086826] - perf/x86/amd/core: Add generic branch record interfaces (Michael Petlan) [2086826] - perf/x86/amd/core: Refactor branch attributes (Michael Petlan) [2086826] - perf/x86/amd/brs: Move feature-specific functions (Michael Petlan) [2086826] - scsi: zfcp: Trace when request remove fails after qdio send fails (Tobias Huschle) [2159733] - scsi: zfcp: Change the type of all fsf request id fields and variables to u64 (Tobias Huschle) [2159733] - scsi: zfcp: Make the type for accessing request hashtable buckets size_t (Tobias Huschle) [2159733] - scsi: zfcp: Drop redundant "the" in the comments (Tobias Huschle) [2159733] - s390/qeth: Convert sprintf/snprintf to scnprintf (Tobias Huschle) [2159732] - s390/qeth: Convert sysfs sprintf to sysfs_emit (Tobias Huschle) [2159732] - s390/qeth: Use constant for IP address buffers (Tobias Huschle) [2159732] - s390/ctcm: cleanup indenting (Tobias Huschle) [2159732] - s390/ipl: add loadparm parameter to eckd ipl/reipl data (Tobias Huschle) [2159689] - s390/ipl: add DEFINE_GENERIC_LOADPARM() (Tobias Huschle) [2159689] - s390/ipl: use octal values instead of S_* macros (Tobias Huschle) [2159689] - s390/ipl: add eckd support (Tobias Huschle) [2159689] - net/iucv: Fix size of interrupt data (Tobias Huschle) [2192507] - workqueue: Protects wq_unbound_cpumask with wq_pool_attach_mutex (Waiman Long) [2176760] - workqueue: make sysfs of unbound kworker cpumask more clever (Waiman Long) [2176760] - workqueue: Rename "delayed" (delayed by active management) to "inactive" (Waiman Long) [2176760] - workqueue: Kick a worker based on the actual activation of delayed works (Waiman Long) [2176760] - workqueue: fix UAF in pwq_unbound_release_workfn() (Waiman Long) [2176760] - workqueue: fix a piece of comment about reserved bits for work flags (Waiman Long) [2176760] - workqueue: void unneeded requeuing the pwq in rescuer thread (Waiman Long) [2176760] - mm/memcg: Fix mem_cgroup_id_get_online() underflow problem (Waiman Long) [2176760] - net: fix NULL pointer in skb_segment_list (Paolo Abeni) [2188595] - net: stream: purge sk_error_queue in sk_stream_kill_queues() (Paolo Abeni) [2188595] - skbuff: Account for tail adjustment during pull operations (Paolo Abeni) [2188595] - net: vmxnet3: Fix NULL pointer dereference in vmxnet3_rq_rx_complete() (Seiji Nishikawa) [2186419] - tipc: add an extra conn_get in tipc_conn_alloc (Xin Long) [2177374] {CVE-2023-1382} - tipc: set con sock in tipc_conn_alloc (Xin Long) [2177374] {CVE-2023-1382} - net: sched: fix memory leak in tcindex_set_parms (Davide Caratti) [2181874] - net/sched: tcindex: search key must be 16 bits (Davide Caratti) [2181874] - net/sched: tcindex: update imperfect hash filters respecting rcu (Davide Caratti) [2181874] {CVE-2023-1281} - crypto: rng - Use a different crypto_rng for reseeding (Herbert Xu) [2193410] - media: rc: Fix use-after-free bugs caused by ene_tx_irqsim() (Ricardo Robaina) [2174409] {CVE-2023-1118}- xfs: assert in xfs_btree_del_cursor should take into account error (Andrey Albershteyn) [2183168] - xfs: prevent a UAF when log IO errors race with unmount (Andrey Albershteyn) [2183168] - xfs: fix NULL pointer dereference in xfs_getbmap() (Andrey Albershteyn) [2183168] - xfs: avoid a UAF when log intent item recovery fails (Andrey Albershteyn) [2183168] - xfs: fix memory leak in xfs_errortag_init (Andrey Albershteyn) [2183168] - xfs: Fix unreferenced object reported by kmemleak in xfs_sysfs_init() (Andrey Albershteyn) [2183168] - xfs: fix sb write verify for lazysbcount (Andrey Albershteyn) [2183168] - xfs: invalidate block device page cache during unmount (Andrey Albershteyn) [2183168] - xfs: invalidate xfs_bufs when allocating cow extents (Andrey Albershteyn) [2183168] - xfs: dquot shrinker doesn't check for XFS_DQFLAG_FREEING (Andrey Albershteyn) [2183168] - xfs: fix intermittent hang during quotacheck (Andrey Albershteyn) [2183168] - xfs: fix exception caused by unexpected illegal bestcount in leaf dir (Andrey Albershteyn) [2183168] - xfs: fix super block buf log item UAF during force shutdown (Andrey Albershteyn) [2183168] - xfs: fix uninitialized variable access (Andrey Albershteyn) [2183168] - xfs: fix potential log item leak (Andrey Albershteyn) [2183168] - xfs: fix inode reservation space for removing transaction (Andrey Albershteyn) [2183168] - xfs: fix extent busy updating (Andrey Albershteyn) [2183168] - xfs: fix low space alloc deadlock (Andrey Albershteyn) [2183168] - xfs: purge dquots after inode walk fails during quotacheck (Andrey Albershteyn) [2183168] - xfs: get root inode correctly at bulkstat (Andrey Albershteyn) [2183168] - iomap: iomap: fix memory corruption when recording errors during writeback (Andrey Albershteyn) [2183168] - xfs: attach dquots to inode before reading data/cow fork mappings (Andrey Albershteyn) [2183168] - xfs: get rid of assert from xfs_btree_islastblock (Andrey Albershteyn) [2183168] - xfs: fix use-after-free in xattr node block inactivation (Andrey Albershteyn) [2183168] - xfs: pass the correct cursor to xfs_iomap_prealloc_size (Andrey Albershteyn) [2183168] - xfs: don't report reserved bnobt space as available (Andrey Albershteyn) [2183168] - xfs: fix overfilling of reserve pool (Andrey Albershteyn) [2183168] - xfs: always succeed at setting the reserve pool size (Andrey Albershteyn) [2183168] - xfs: remove infinite loop when reserving free block pool (Andrey Albershteyn) [2166567 2183168] - xfs: don't include bnobt blocks when reserving free block pool (Andrey Albershteyn) [2183168] - xfs: document the XFS_ALLOC_AGFL_RESERVE constant (Andrey Albershteyn) [2183168] - xfs: prevent UAF in xfs_log_item_in_current_chkpt (Andrey Albershteyn) [2183168] - xfs: fix incorrect i_nlink caused by inode racing (Andrey Albershteyn) [2183168] - xfs: fix incorrect error-out in xfs_remove (Andrey Albershteyn) [2183168] - KVM: s390: GISA: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - KVM: s390: disable migration mode when dirty tracking is disabled (Cédric Le Goater) [2169294] - KVM: s390: Unwind kvm_arch_init() piece-by-piece() if a step fails (Cédric Le Goater) [2169294] - iommu/s390: Make attach succeed even if the device is in error state (Cédric Le Goater) [2169294] - KVM: s390: pci: Fix allocation size of aift kzdev elements (Cédric Le Goater) [2169294] - iommu/s390: Fix incorrect aperture check (Cédric Le Goater) [2169294] - KVM: s390: VSIE: sort out virtual/physical address in pin_guest_page (Cédric Le Goater) [2169294] - KVM: s390: pv: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - KVM: s390: sida: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - KVM: s390: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - iommu/s390: Fail probe for non-PCI devices (Cédric Le Goater) [2169294] - PCI/AER: Remove redundant Device Control Error Reporting Enable (Myron Stowe) [2180894] - PCI/AER: Configure ECRC only if AER is native (Myron Stowe) [2180894] - PCI/AER: Iterate over error counters instead of error strings (Myron Stowe) [2180894] - PCI/AER: Enable error reporting when AER is native (Myron Stowe) [2180894] - PCI/AER: Configure ECRC for every device (Myron Stowe) [2180894] - PCI/AER: Clear MULTI_ERR_COR/UNCOR_RCV bits (Myron Stowe) [2180894] - PCI/sysfs: Use sysfs_emit() and sysfs_emit_at() in "show" functions (Myron Stowe) [2180894] - PCI/AER: Use consistent format when printing PCI device (Myron Stowe) [2180894] - PCI/sysfs: Rely on lengths from scnprintf(), dsm_label_utf16s_to_utf8s() (Myron Stowe) [2180894] - PCI/sysfs: Fix dsm_label_utf16s_to_utf8s() buffer overrun (Myron Stowe) [2180894] - mlxsw: minimal: Fix deadlock in ports creation (Petr Oros) [2177956] - mlxsw: core: Fix use-after-free calling devl_unlock() in mlxsw_core_bus_device_unregister() (Petr Oros) [2177956] - net: devlink: convert reload command to take implicit devlink->lock (Petr Oros) [2177956] - mlxsw: convert driver to use unlocked devlink API during init/fini (Petr Oros) [2177956] - mlxsw: Narrow the critical section of devl_lock during ports creation/removal (Petr Oros) [2177956] - ice: sleep, don't busy-wait, in the SQ send retry loop (Michal Schmidt) [2184013] - ice: remove unused buffer copy code in ice_sq_send_cmd_retry() (Michal Schmidt) [2184013] - ice: sleep, don't busy-wait, for ICE_CTL_Q_SQ_CMD_TIMEOUT (Michal Schmidt) [2184013] - ice: remove ice_ctl_q_info::sq_cmd_timeout (Michal Schmidt) [2184013] - ice: increase the GNSS data polling interval to 20 ms (Michal Schmidt) [2184013] - ice: do not busy-wait to read GNSS data (Michal Schmidt) [2184013] - enic: Use irq_update_affinity_hint() (Michal Schmidt) [2101515] - ethernet:enic: Fix a use after free bug in enic_hard_start_xmit (Michal Schmidt) [2101515] - net: enic: Cure the enic api locking trainwreck (Michal Schmidt) [2101515] - enic: switch from 'pci_' to 'dma_' API (Michal Schmidt) [2101515] - enic: convert to new udp_tunnel_nic infra (Michal Schmidt) [2101515] - enic: let core reject the unsupported coalescing parameters (Michal Schmidt) [2101515] - scsi: mpt3sas: Fix an issue when driver is being removed (Tomas Henzl) [2166206] - scsi: mpt3sas: Remove HBA BIOS version in the kernel log (Tomas Henzl) [2166206] - scsi: mpt3sas: Don't print sense pool info twice (Tomas Henzl) [2166206] - scsi: mpt3sas: Fix NULL pointer access in mpt3sas_transport_port_add() (Tomas Henzl) [2166206] - scsi: mpt3sas: Fix a memory leak (Tomas Henzl) [2166206] - scsi: mpt3sas: Demote log level for trace buffer allocation to info (Tomas Henzl) [2166206] - scsi: mpt3sas: Fix possible resource leaks in mpt3sas_transport_port_add() (Tomas Henzl) [2166206] - scsi: mpt3sas: Remove usage of dma_get_required_mask() API (Tomas Henzl) [2166206] - scsi: mpt3sas: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Tomas Henzl) [2166206] - ipmi: msghandler: kABI implementation was wrong (Tony Camuso) [2182345] - hwmon: (xgene) Fix use after free bug in xgene_hwmon_remove due to race condition (Chris von Recklinghausen) [2184583] {CVE-2023-1855} - RDMA/irdma: Add ipv4 check to irdma_find_listener() (Kamal Heib) [2117129 2135976] - RDMA/irdma: Increase iWARP CM default rexmit count (Kamal Heib) [2117129 2135976] - RDMA/irdma: Fix memory leak of PBLE objects (Kamal Heib) [2117129 2135976] - RDMA/irdma: Do not generate SW completions for NOPs (Kamal Heib) [2117129 2135976] - RDMA/irdma: Remove a redundant irdma_arp_table() call (Kamal Heib) [2117129 2135976] - migrate: grab the compound head in migration_entry_wait_on_locked (Nico Pache) [2188249] - module: Don't wait for GOING modules (Mark Langsdorf) [1964563] - redhat/configs: Fix DEBUG_BLK_CGROUP and BFQ_CGROUP_DEBUG configs (Vladis Dronov) - x86/MCE/AMD: Clear DFR errors found in THR handler (Prarit Bhargava) [2190279]- iommu/amd: Update amd_iommu_fault structure to include PCI seg ID (Jerry Snitselaar) [2117775] - iommu/amd: Update device_state structure to include PCI seg ID (Jerry Snitselaar) [2117775] - iommu/amd: Print PCI segment ID in error log messages (Jerry Snitselaar) [2117775] - iommu/amd: Add PCI segment support for ivrs_[ioapic/hpet/acpihid] commands (Jerry Snitselaar) [2117775] - iommu/amd: Specify PCI segment ID when getting pci device (Jerry Snitselaar) [2117775] - iommu/amd: Include PCI segment ID when initialize IOMMU (Jerry Snitselaar) [2117775] - iommu/amd: Introduce get_device_sbdf_id() helper function (Jerry Snitselaar) [2117775] - iommu/amd: Flush upto last_bdf only (Jerry Snitselaar) [2117775] - iommu/amd: Remove global amd_iommu_[dev_table/alias_table/last_bdf] (Jerry Snitselaar) [2117775] - iommu/amd: Update set_dev_entry_bit() and get_dev_entry_bit() (Jerry Snitselaar) [2117775] - iommu/amd: Update (un)init_device_table_dma() (Jerry Snitselaar) [2117775] - iommu/amd: Update set_dte_irq_entry (Jerry Snitselaar) [2117775] - iommu/amd: Update dump_dte_entry (Jerry Snitselaar) [2117775] - iommu/amd: Update iommu_ignore_device (Jerry Snitselaar) [2117775] - iommu/amd: Update set_dte_entry and clear_dte_entry (Jerry Snitselaar) [2117775] - iommu/amd: Convert to use per PCI segment rlookup_table (Jerry Snitselaar) [2117775] - iommu/amd: Update alloc_irq_table and alloc_irq_index (Jerry Snitselaar) [2117775] - iommu/amd: Update amd_irte_ops functions (Jerry Snitselaar) [2117775] - iommu/amd: Introduce struct amd_ir_data.iommu (Jerry Snitselaar) [2117775] - iommu/amd: Update irq_remapping_alloc to use IOMMU lookup helper function (Jerry Snitselaar) [2117775] - iommu/amd: Convert to use rlookup_amd_iommu helper function (Jerry Snitselaar) [2117775] - iommu/amd: Convert to use per PCI segment irq_lookup_table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment rlookup table size (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment alias table size (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment device table size (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment last_bdf (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment unity map list (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment alias_table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment old_dev_tbl_cpy (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment dev_data_list (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment irq_lookup_table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment rlookup table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment device table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce pci segment structure (Jerry Snitselaar) [2117775] - iommu/amd: Update struct iommu_dev_data definition (Jerry Snitselaar) [2117775] - redhat: configs: Enable CONFIG_INTEL_IOMMU_PERF_EVENTS (Jerry Snitselaar) [2176995] - iommu/vt-d: Fix an IOMMU perfmon warning when CPU hotplug (Jerry Snitselaar) [2176995] - iommu/vt-d: Enable IOMMU perfmon support (Jerry Snitselaar) [2176995] - iommu/vt-d: Add IOMMU perfmon overflow handler support (Jerry Snitselaar) [2176995] - iommu/vt-d: Support cpumask for IOMMU perfmon (Jerry Snitselaar) [2176995] - iommu/vt-d: Add IOMMU perfmon support (Jerry Snitselaar) [2176995] - iommu/vt-d: Support Enhanced Command Interface (Jerry Snitselaar) [2176995] - iommu/vt-d: Retrieve IOMMU perfmon capability information (Jerry Snitselaar) [2176995] - iommu/vt-d: Fix error handling in sva enable/disable paths (Jerry Snitselaar) [2181397] - iommu/vt-d: Support size of the register set in DRHD (Jerry Snitselaar) [2181397] - iommu/vt-d: Allow zero SAGAW if second-stage not supported (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove include/linux/intel-svm.h (Jerry Snitselaar) [2181397] - iommu/vt-d: Allow to use flush-queue when first level is default (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PASID directory pointer coherency (Jerry Snitselaar) [2181397] - iommu/vt-d: Set No Execute Enable bit in PASID table entry (Jerry Snitselaar) [2181397] - iommu: Remove SVM_FLAG_SUPERVISOR_MODE support (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PCI device refcount leak in prq_event_thread() (Jerry Snitselaar) [2181397] - PCI: Enable PASID only when ACS RR & UF enabled on upstream path (Jerry Snitselaar) [2181397] - iommu/vt-d: Set SRE bit only when hardware has SRS cap (Jerry Snitselaar) [2181397] - iommu/vt-d: Preset Access bit for IOVA in FL non-leaf paging entries (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove pasid_set_eafe() (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unnecessary SVA data accesses in page fault path (Jerry Snitselaar) [2181397] - iommu/vt-d: Add RPLS to quirk list to skip TE disabling (Jerry Snitselaar) [2181397] - iommu: Remove guest pasid related interfaces and definitions (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove guest pasid related callbacks (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unused PASID_DISABLED (Jerry Snitselaar) [2181397] - iommu/vt-d: Clean up unused PASID updating functions (Jerry Snitselaar) [2181397] - iommu/vtd: Replace acpi_bus_get_device() (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unused dma_to_mm_pfn function (Jerry Snitselaar) [2181397] - iommu/vt-d: Use bitmap_zalloc() when applicable (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unused macros (Jerry Snitselaar) [2181397] - iommu/vt-d: Allow NVS regions in arch_rmrr_sanity_check() (Jerry Snitselaar) [2181397] - iommu/vt-d: Use rcu_lock in get_resv_regions (Jerry Snitselaar) [2181397] - iommu: Add gfp parameter to iommu_alloc_resv_region (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PCI device refcount leak in dmar_dev_scope_init() (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PCI device refcount leak in has_external_pci() (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove iova_cache_get/put() (Jerry Snitselaar) [2181397] - iommu/vt-d: Add missing "__init" for rmrr_sanity_check() (Jerry Snitselaar) [2181397] - iommu/arm-smmu: Force identity domains for legacy binding (Jerry Snitselaar) [2181397] - iommu/arm-smmu-v3: Properly handle the return value of arm_smmu_cmdq_build_cmd() (Jerry Snitselaar) [2181397] - iommu/arm-smmu-v3: Stop pre-zeroing batch commands in arm_smmu_atc_inv_master() (Jerry Snitselaar) [2181397] - iommu/arm-smmu: Add clk_bulk_{prepare/unprepare} to system pm callbacks (Jerry Snitselaar) [2181397] - iommu: Make sysfs robust for non-API groups (Jerry Snitselaar) [2181397] - iommu: Use right way to retrieve iommu_ops (Jerry Snitselaar) [2181397] - iommu: Remove apply_resv_region (Jerry Snitselaar) [2181397] - iommu/dma: Explicitly sort PCI DMA windows (Jerry Snitselaar) [2181397] - iommu: Do not dereference fwnode in struct device (Jerry Snitselaar) [2181397] - iommu: Remove duplicate ida_free in iommu_group_alloc (Jerry Snitselaar) [2181397] - iommu: Directly use ida_alloc()/free() (Jerry Snitselaar) [2181397] - iommu/iova: change IOVA_MAG_SIZE to 127 to save memory (Jerry Snitselaar) [2181397] - iommu/iova: Fix alloc iova overflows issue (Jerry Snitselaar) [2181397] - iova: Remove iovad->rcaches check in iova_rcache_get() (Jerry Snitselaar) [2181397] - iova: Remove magazine BUG_ON() checks (Jerry Snitselaar) [2181397] - iova: Remove some magazine pointer NULL checks (Jerry Snitselaar) [2181397] - swiotlb: fix a braino in the alignment check fix (Jerry Snitselaar) [2181397] - swiotlb: fix slot alignment checks (Jerry Snitselaar) [2181397] - swiotlb: use wrap_area_index() instead of open-coding it (Jerry Snitselaar) [2181397] - swiotlb: fix the deadlock in swiotlb_do_find_slots (Jerry Snitselaar) [2181397] - swiotlb: mark swiotlb_memblock_alloc() as __init (Jerry Snitselaar) [2181397] - swiotlb: remove swiotlb_max_segment (Jerry Snitselaar) [2181397] - swiotlb: reduce the swiotlb buffer size on allocation failure (Jerry Snitselaar) [2181397] - swiotlb: replace kmap_atomic() with memcpy_{from,to}_page() (Jerry Snitselaar) [2181397] - swiotlb: don't panic! (Jerry Snitselaar) [2181397] - iommu/vt-d: Avoid superfluous IOTLB tracking in lazy mode (Jerry Snitselaar) [2175620] - iommu/amd: Add map/unmap_pages() iommu_domain_ops callback support (Jerry Snitselaar) [2181397] - iommu/amd/io-pgtable: Implement unmap_pages io_pgtable_ops callback (Jerry Snitselaar) [2181397] - iommu/amd/io-pgtable: Implement map_pages io_pgtable_ops callback (Jerry Snitselaar) [2181397] - iommu/vt-d: Avoid unnecessary global DMA cache invalidation (Jerry Snitselaar) [2176983] - iommu/vt-d: Avoid unnecessary global IRTE cache invalidation (Jerry Snitselaar) [2176983] - iommu/vt-d: Fix buggy QAT device mask (Jerry Snitselaar) [2169568] - iommu/vt-d: Add a fix for devices need extra dtlb flush (Jerry Snitselaar) [2169568] - xfs: fix off-by-one-block in xfs_discard_folio() (Carlos Maiolino) [2112147] - xfs: drop write error injection is unfixable, remove it (Carlos Maiolino) [2112147] - xfs: use iomap_valid method to detect stale cached iomaps (Carlos Maiolino) [2112147] - iomap: write iomap validity checks (Carlos Maiolino) [2112147] - xfs: xfs_bmap_punch_delalloc_range() should take a byte range (Carlos Maiolino) [2112147] - iomap: buffered write failure should not truncate the page cache (Carlos Maiolino) [2112147] - iomap: Export page_cache_seek_hole_data (Carlos Maiolino) [2112147] - xfs,iomap: move delalloc punching to iomap (Carlos Maiolino) [2112147] - xfs: use byte ranges for write cleanup ranges (Carlos Maiolino) [2112147] - xfs: punching delalloc extents on write failure is racy (Carlos Maiolino) [2112147] - xfs: write page faults in iomap are not buffered writes (Carlos Maiolino) [2112147] - iomap: iomap_read_inline_data cleanup (Carlos Maiolino) [2112147] - iomap: Fix inline extent handling in iomap_readpage (Carlos Maiolino) [2112147] - iomap: constify iomap_iter_srcmap (Carlos Maiolino) [2112147] - iomap: rework unshare flag (Carlos Maiolino) [2112147] - iomap: pass an iomap_iter to various buffered I/O helpers (Carlos Maiolino) [2112147] - iomap: remove iomap_apply (Carlos Maiolino) [2112147] - fsdax: Fix infinite loop in dax_iomap_rw() (Carlos Maiolino) [2112147] - fsdax: switch dax_iomap_rw to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_swapfile_activate to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_seek_data to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_seek_hole to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_bmap to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_fiemap to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch __iomap_dio_rw to use iomap_iter (Carlos Maiolino) [2112147] - iomap: support REQ_OP_ZONE_APPEND (Carlos Maiolino) [2112147] - iomap: add a filesystem hook for direct I/O bio submission (Carlos Maiolino) [2112147] - iomap: switch iomap_page_mkwrite to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_zero_range to use iomap_iter (Carlos Maiolino) [2112147] - iomap: Change calling convention for zeroing (Carlos Maiolino) [2112147] - iomap: switch iomap_file_unshare to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_file_buffered_write to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch readahead and readpage to use iomap_iter (Carlos Maiolino) [2112147] - iomap: add the new iomap_iter model (Carlos Maiolino) [2112147] - iomap: fix the iomap_readpage_actor return value for inline data (Carlos Maiolino) [2112147] - iomap: Support inline data with block size < page size (Carlos Maiolino) [2112147] - fs: mark the iomap argument to __block_write_begin_int const (Carlos Maiolino) [2112147] - fsdax: mark the iomap argument to dax_iomap_sector as const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_read_page_sync const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_read_inline_data const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_inline_data_valid const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_inline_data const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_sector const (Carlos Maiolino) [2112147] - ipv6: Fix an uninit variable access bug in __ip6_make_skb() (Hangbin Liu) [2185798] - ipv6: Fix tcp socket connection with DSCP. (Hangbin Liu) [2185798] - ipv6: Fix datagram socket connection with DSCP. (Hangbin Liu) [2185798] - ipv6: avoid use-after-free in ip6_fragment() (Hangbin Liu) [2185798] - ipv6: addrlabel: fix infoleak when sending struct ifaddrlblmsg to network (Hangbin Liu) [2185798] - ipv6: fix WARNING in ip6_route_net_exit_late() (Hangbin Liu) [2185798] - ipv6: ensure sane device mtu in tunnels (Hangbin Liu) [2185798] - KVM: arm64: PMU: Restore the guest's EL0 event counting after migration (Shaoqin Huang) [2175146] - KVM: arm64: Retry fault if vma_lookup() results become invalid (Shaoqin Huang) [2175146] - KVM: arm64: PMU: Don't save PMCR_EL0.{C,P} for the vCPU (Shaoqin Huang) [2175146] - KVM: arm64: PMU: Fix GET_ONE_REG for vPMC regs to return the current value (Shaoqin Huang) [2175146] - KVM: arm64: timers: Convert per-vcpu virtual offset to a global value (Shaoqin Huang) [2175146] - KVM: arm64: Fix non-kerneldoc comments (Shaoqin Huang) [2175146] - arm64/sysreg: clean up some inconsistent indenting (Shaoqin Huang) [2175146] - KVM: arm64: timers: Don't BUG() on unhandled timer trap (Shaoqin Huang) [2175146] - KVM: arm64: Reduce overhead of trapped timer sysreg accesses (Shaoqin Huang) [2175146] - KVM: arm64: Don't arm a hrtimer for an already pending timer (Shaoqin Huang) [2175146] - KVM: arm64: Fix S1PTW handling on RO memslots (Shaoqin Huang) [2175146] - KVM: arm64: Fix typo in comment (Shaoqin Huang) [2175146] - KVM: arm64: Fix pvtime documentation (Shaoqin Huang) [2175146] - KVM: arm64: Fix PAR_TO_HPFAR() to work independently of PA_BITS. (Shaoqin Huang) [2175146] - KVM: arm64: nvhe: Fix build with profile optimization (Shaoqin Huang) [2175146] - fuse: wait for writepages in syncfs (Brian Foster) [2185834] - virtio_fs: Modify format for virtio_fs_direct_access (Brian Foster) [2185834] - virtiofs: delete unused parameter for virtio_fs_cleanup_vqs (Brian Foster) [2185834] - virtiofs: use strscpy for copying the queue name (Brian Foster) [2185834] - virtiofs: propagate sync() to file server (Brian Foster) [2185834] - fuse: add a flag FUSE_SETXATTR_ACL_KILL_SGID to kill SGID (Brian Foster) [2185834] - fuse: extend FUSE_SETXATTR request (Brian Foster) [2185834] - virtiofs: fix userns (Brian Foster) [2185834] - virtiofs: remove useless function (Brian Foster) [2185834] - virtiofs: split requests that exceed virtqueue size (Brian Foster) [2185834] - virtiofs: fix memory leak in virtio_fs_probe() (Brian Foster) [2185834] - virtio_fs: convert to LE accessors (Brian Foster) [2185834] - dmaengine: use sysfs_emit() to instead of scnprintf() (Jerry Snitselaar) [2181398] - dmaengine: Simplify dmaenginem_async_device_register() function (Jerry Snitselaar) [2181398] - dmaengine: idma64: Update bytes_transferred field (Jerry Snitselaar) [2181398] - dmaengine: dw: Move check for paused channel to dwc_get_residue() (Jerry Snitselaar) [2181398] - dmaengine: ptdma: check for null desc before calling pt_cmd_callback (Jerry Snitselaar) [2181398] - dmaengine: idxd: Fix default allowed read buffers value in group (Jerry Snitselaar) [2181398] - dmaengine: idxd: Set traffic class values in GRPCFG on DSA 2.0 (Jerry Snitselaar) [2181398] - ptdma: pt_core_execute_cmd() should use spinlock (Jerry Snitselaar) [2181398] - dmaengine: Fix double increment of client_count in dma_chan_get() (Jerry Snitselaar) [2181398] - dmaengine: ioat: stop mod_timer from resurrecting deleted timer in __cleanup() (Jerry Snitselaar) [2153929] - cifs: set a minimum of 120s for next dns resolution (Ronnie Sahlberg) [2182867] - cifs: use the expiry output of dns_query to schedule next resolution (Ronnie Sahlberg) [2182867] - cifs: sanitize paths in cifs_update_super_prepath. (Ronnie Sahlberg) [2182472] - redhat/configs: Fix incorrect configs location and content (Vladis Dronov) - scsi: megaraid_sas: Fix double kfree() (Tomas Henzl) [2163670] - scsi: megaraid_sas: Fix fw_crash_buffer_show() (Tomas Henzl) [2163670] - scsi: megaraid_sas: Fix crash after a double completion (Tomas Henzl) [2163670] - scsi: megaraid_sas: Driver version update to 07.725.01.00-rc1 (Tomas Henzl) [2163670] - scsi: megaraid_sas: Add crash dump mode capability bit in MFI capabilities (Tomas Henzl) [2163670] - scsi: megaraid_sas: Update max supported LD IDs to 240 (Tomas Henzl) [2163670] - scsi: megaraid_sas: Add flexible array member for SGLs (Tomas Henzl) [2163670] - scsi: megaraid_sas: Fix some spelling mistakes in comment (Tomas Henzl) [2163670] - scsi: megaraid_sas: Remove unnecessary kfree() (Tomas Henzl) [2163670] - scsi: megaraid_sas: Use irq_set_affinity_and_hint() (Tomas Henzl) [2163670] - scsi: megaraid: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Tomas Henzl) [2163670] - scsi: ses: Handle enclosure with just a primary component gracefully (Tomas Henzl) [2188481] - ipvlan: hold lower dev to avoid possible use-after-free (Davide Caratti) [2188055] - net: macvlan: Use built-in RCU list checking (Davide Caratti) [2188055] - x86/split_lock: Enumerate architectural split lock disable bit (Prarit Bhargava) [2123535] - bpf: bpf_fib_lookup should not return neigh in NUD_FAILED state (Yauheni Kaliuta) [2175160] - hwmon: (coretemp) avoid RDMSR interrupts to isolated CPUs (Marcelo Tosatti) [2158707] - scsi: target: iscsi: Handle abort for WRITE_PENDING cmds (Maurizio Lombardi) [2156588] - scsi: target: iscsit: Fix TAS handling during conn cleanup (Maurizio Lombardi) [2156588]- RDMA/cma: Distinguish between sockaddr_in and sockaddr_in6 by size (Kamal Heib) [2170083] - RDMA/umem: Remove unused 'work' member from struct ib_umem (Kamal Heib) [2170083] - RDMA/restrack: Correct spelling (Kamal Heib) [2170083] - scripts/spelling.txt: add "exsits" pattern and fix typo instances (Kamal Heib) [2170083] - RDMA/cma: Refactor the inbound/outbound path records process flow (Kamal Heib) [2170083] - RDMA/core: Refactor rdma_bind_addr (Kamal Heib) [2170083] - IB/IPoIB: Fix legacy IPoIB due to wrong number of queues (Kamal Heib) [2170076] - RDMA/core: Fix ib block iterator counter overflow (Kamal Heib) [2170076] - RDMA/srp: Move large values to a new enum for gcc13 (Kamal Heib) [2170076] - IB/IPoIB: Fix queue count inconsistency for PKEY child interfaces (Kamal Heib) [2170076] - RDMA/cm: Make QP FLUSHABLE for supported device (Kamal Heib) [2170076] - RDMA: Extend RDMA kernel verbs ABI to support flush (Kamal Heib) [2170076] - RDMA: Extend RDMA user ABI to support flush (Kamal Heib) [2170076] - RDMA/cma: Change RoCE packet life time from 18 to 16 (Kamal Heib) [2170076] - RDMA/srp: Fix error return code in srp_parse_options() (Kamal Heib) [2170076] - RDMA: Extend RDMA kernel ABI to support atomic write (Kamal Heib) [2170076] - RDMA: Extend RDMA user ABI to support atomic write (Kamal Heib) [2170076] - RDMA/umem: remove FOLL_FORCE usage (Kamal Heib) [2170076] - RDMA/nldev: Fix failure to send large messages (Kamal Heib) [2170076] - RDMA/nldev: Add NULL check to silence false warnings (Kamal Heib) [2170076] - RDMA/nldev: Add checks for nla_nest_start() in fill_stat_counter_qps() (Kamal Heib) [2170076] - IB/isert: use the ISCSI_LOGIN_CURRENT_STAGE macro (Kamal Heib) [2170076] - RDMA/nldev: Return "-EAGAIN" if the cm_id isn't from expected port (Kamal Heib) [2170076] - RDMA/core: Make sure "ib_port" is valid when access sysfs node (Kamal Heib) [2170076] - RDMA/restrack: Release MR restrack when delete (Kamal Heib) [2170076] - IB/mad: Don't call to function that might sleep while in atomic context (Kamal Heib) [2170076] - RDMA/core: Fix order of nldev_exit call (Kamal Heib) [2170076] - RDMA/core: fix repeated words in comments (Kamal Heib) [2170076] - IB/iser: open code iser_disconnected_handler (Kamal Heib) [2170076] - IB/iser: add safety checks for state_mutex lock (Kamal Heib) [2170076] - IB/iser: open code iser_conn_state_comp_exch (Kamal Heib) [2170076] - RDMA/opa_vnic: fix spelling typo in comment (Kamal Heib) [2170076] - RDMA/core: return -EOPNOSUPP for ODP unsupported device (Kamal Heib) [2170076] - IB/uverbs: fix the typo of optional (Kamal Heib) [2170076] - treewide: use get_random_u32() when possible (Kamal Heib) [2170070] - treewide: use prandom_u32_max() when possible, part 1 (Kamal Heib) [2170070] - RDMA/core: Clean up a variable name in ib_create_srq_user() (Kamal Heib) [2170070] - RDMA/srp: Support more than 255 rdma ports (Kamal Heib) [2170070] - RDMA/cm: Use DLID from inbound/outbound PathRecords as the datapath DLID (Kamal Heib) [2170070] - RDMA/cma: Multiple path records support with netlink channel (Kamal Heib) [2170070] - RDMA/core: Rename rdma_route.num_paths field to num_pri_alt_paths (Kamal Heib) [2170070] - RDMA/srpt: Use flex array destination for memcpy() (Kamal Heib) [2170070] - IB/cm: Refactor cm_insert_listen() and cm_find_listen() (Kamal Heib) [2170070] - IB/cm: remove cm_id_priv->id.service_mask and service_mask parameter of cm_init_listen() (Kamal Heib) [2170070] - IB/cm: Remove the service_mask parameter from ib_cm_listen() (Kamal Heib) [2170070] - RDMA/core: Remove 'device' argument from rdma_build_skb() (Kamal Heib) [2170070] - RDMA/srp: Use the attribute group mechanism for sysfs attributes (Kamal Heib) [2170070] - RDMA/srp: Handle dev_set_name() failure (Kamal Heib) [2170070] - RDMA/srp: Remove the srp_host.released completion (Kamal Heib) [2170070] - RDMA/srp: Rework the srp_add_port() error path (Kamal Heib) [2170070] - IB: move from strlcpy with unused retval to strscpy (Kamal Heib) [2170070] - treewide: uapi: Replace zero-length arrays with flexible-array members (Kamal Heib) [2170070] - RDMA/core: Delete IPsec flow action logic from the core (Kamal Heib) [2170070] - net: Don't include filter.h from net/sock.h (Kamal Heib) [2170070] - scsi: qla2xxx: Synchronize the IOCB count to be in order (Nilesh Javali) [2164947] - scsi: qla2xxx: Perform lockless command completion in abort path (Nilesh Javali) [2164947] - scsi: qla2xxx: Use the proper SCSI midlayer interfaces for PI (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove the unused variable wwn (Nilesh Javali) [2164947] - scsi: qla2xxx: Simplify if condition evaluation (Nilesh Javali) [2164947] - scsi: qla2xxx: Use a variable for repeated mem_size computation (Nilesh Javali) [2164947] - scsi: qla2xxx: Make qla_trim_buf() and __qla_adjust_buf() static (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix printk() format string (Nilesh Javali) [2164947] - scsi: qla2xxx: Update version to 10.02.08.200-k (Nilesh Javali) [2164947] - scsi: qla2xxx: Select qpair depending on which CPU post_cmd() gets called (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Fix clang warning (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Reduce memory usage during low I/O (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Fix stall session after app start (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Fix performance dip due to lock contention (Nilesh Javali) [2164947] - scsi: qla2xxx: Relocate/rename vp map (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove dead code (GNN ID) (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove dead code (GPNID) (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove dead code (Nilesh Javali) [2164947] - scsi: qla2xxx: Update version to 10.02.08.100-k (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix IOCB resource check warning (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove increment of interface err cnt (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix erroneous link down (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove unintended flag clearing (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix stalled login (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix exchange oversubscription for management commands (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix exchange oversubscription (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix DMA-API call trace on NVMe LS requests (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix link failure in NPIV environment (Nilesh Javali) [2164947] - scsi: qla2xxx: Check if port is online before sending ELS (Nilesh Javali) [2164947] - scsi: qla2xxx: Initialize vha->unknown_atio_[list, work] for NPIV hosts (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove duplicate of vha->iocb_work initialization (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove unused variable 'found_devs' (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix set-but-not-used variable warnings (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix memory leak in __qlt_24xx_handle_abts() (Nilesh Javali) [2164947] - ethtool: eeprom: fix null-deref on genl_info in dump (Davide Caratti) [2188002] - packet: do not set TP_STATUS_CSUM_VALID on CHECKSUM_COMPLETE (Davide Caratti) [2188002] - af_key: Fix send_acquire race with pfkey_register (Davide Caratti) [2188002] - net: llc: fix skb_over_panic (Davide Caratti) [2188002] - inet_ecn: Fix endianness of checksum update when setting ECT(1) (Davide Caratti) [2188002] - RDMA/irdma: Fix potential NULL-ptr-dereference (Kamal Heib) [2153377] - RDMA/irdma: Split CQ handler into irdma_reg_user_mr_type_cq (Kamal Heib) [2153377] - RDMA/irdma: Split QP handler into irdma_reg_user_mr_type_qp (Kamal Heib) [2153377] - RDMA/irdma: Split mr alloc and free into new functions (Kamal Heib) [2153377] - RDMA/irdma: Split MEM handler into irdma_reg_user_mr_type_mem (Kamal Heib) [2153377] - RDMA/irdma: Remove extra ret variable in favor of existing err (Kamal Heib) [2153377] - RDMA/irdma: Initialize net_type before checking it (Kamal Heib) [2153377] - RDMA/irdma: Do not request 2-level PBLEs for CQ alloc (Kamal Heib) [2153377] - RDMA/irdma: Fix RQ completion opcode (Kamal Heib) [2153377] - RDMA/irdma: Fix inline for multiple SGE's (Kamal Heib) [2153377] - bnxt_en: Fix mqprio and XDP ring checking logic (Ken Cox) [2159222] - bnxt: Do not read past the end of test names (Ken Cox) [2159222] - bnxt: report FEC block stats via standard interface (Ken Cox) [2159222] - bnxt_en: Remove debugfs when pci_register_driver failed (Ken Cox) [2159222] - bnxt_en: update RSS config using difference algorithm (Ken Cox) [2159222] - bnxt_en: refactor VNIC RSS update functions (Ken Cox) [2159222] - bnxt_en: fix potentially incorrect return value for ndo_rx_flow_steer (Ken Cox) [2159222] - bnxt_en: Fix possible crash in bnxt_hwrm_set_coal() (Ken Cox) [2159222] - bnxt_en: fix the handling of PCIE-AER (Ken Cox) [2159222] - bnxt_en: refactor bnxt_cancel_reservations() (Ken Cox) [2159222] - bnxt_en: check and resize NVRAM UPDATE entry before flashing (Ken Cox) [2159222] - bnxt_en: Update firmware interface to 1.10.2.118 (Ken Cox) [2159222] - bnxt_en: replace reset with config timestamps (Ken Cox) [2159222] - hugetlbfs: don't delete error page from pagecache (Aristeu Rozanski) [2188334] - mm: shmem: don't truncate page if memory failure happens (Aristeu Rozanski) [2188334] - mm: hwpoison: handle non-anonymous THP correctly (Aristeu Rozanski) [2188334] - mm: hwpoison: refactor refcount check handling (Aristeu Rozanski) [2188334] - scsi: qedf: Remove set but unused variable 'page' (Nilesh Javali) [2164955] - scsi: qedf: Fix a UAF bug in __qedf_probe() (Nilesh Javali) [2164955] - xfs: don't use BMBT btree split workers for IO completion (Carlos Maiolino) [2127493] - tools/power turbostat: Add support for MeteorLake platforms (Derek Barbosa) [2153966] - x86/bugs: Workaround for incorrectly set X86_BUG_RETBLEED under VMware (Waiman Long) [2184343]- nvmet: fix workqueue MEM_RECLAIM flushing dependency (Maurizio Lombardi) [2187618] - nvmet: use a private workqueue instead of the system workqueue (Maurizio Lombardi) [2187618] - nvme: fix discard support without oncs (Maurizio Lombardi) [2187618] - nvme-pci: fix timeout request state check (Maurizio Lombardi) [2187618] - nvme: fix multipath crash caused by flush request when blktrace is enabled (Maurizio Lombardi) [2187618] - nvme: return err on nvme_init_non_mdts_limits fail (Maurizio Lombardi) [2187618] - nvme initialize core quirks before calling nvme_init_subsystem (Maurizio Lombardi) [2187618] - nvmet: fix memory leak in nvmet_subsys_attr_model_store_locked (Maurizio Lombardi) [2187618] - nvme: quiet user passthrough command errors (Maurizio Lombardi) [2187618] - nvme-tcp: fix possible circular locking when deleting a controller under memory pressure (Maurizio Lombardi) [2187618] - nvme-hwmon: kmalloc the NVME SMART log buffer (Maurizio Lombardi) [2187618] - nvme-hwmon: consistently ignore errors from nvme_hwmon_init (Maurizio Lombardi) [2187618] - nvme-pci: disable write zeroes on various Kingston SSD (Maurizio Lombardi) [2187618] - nvme-pci: avoid the deepest sleep state on ZHITAI TiPro5000 SSDs (Maurizio Lombardi) [2187618] - nvme-rdma: fix possible hang caused during ctrl deletion (Maurizio Lombardi) [2187618] - nvmet-tcp: add bounds check on Transfer Tag (Maurizio Lombardi) [2187618] - nvmet-tcp: handle ICReq PDU received in NVMET_TCP_Q_LIVE state (Maurizio Lombardi) [2187618] - nvme-pci: set min_align_mask before calculating max_hw_sectors (Maurizio Lombardi) [2187618] - nvme: enumerate controller flags (Maurizio Lombardi) [2187618] - nvme: ensure subsystem reset is single threaded (Maurizio Lombardi) [2187618] - nvme: copy firmware_rev on each init (Maurizio Lombardi) [2187618] - nvme: restrict management ioctls to admin (Maurizio Lombardi) [2187618] - nvme: consider also host_iface when checking ip options (Maurizio Lombardi) [2187618] - nvme: move from strlcpy with unused retval to strscpy (Maurizio Lombardi) [2187618] - nvme: add comment for unaligned "fake" nqn (Maurizio Lombardi) [2187618] - nvme-pci: disable Write Zeroes on Phison E3C/E4C (Maurizio Lombardi) [2187618] - nvmet: fix mar and mor off-by-one errors (Maurizio Lombardi) [2187618] - nvmet: fix a use-after-free (Maurizio Lombardi) [2187618] - nvmet-tcp: fix unhandled tcp states in nvmet_tcp_state_change() (Maurizio Lombardi) [2187618] - nvme-fabrics: Fix a typo in an error message (Maurizio Lombardi) [2187618] - nvme-fabrics: parse nvme connect Linux error codes (Maurizio Lombardi) [2187618] - nvmet-tcp: fix lockdep complaint on nvmet_tcp_wq flush during queue teardown (Maurizio Lombardi) [2187618] - nvme: rename nvme_validate_or_alloc_ns to nvme_scan_ns (Maurizio Lombardi) [2187618] - nvme: catch -ENODEV from nvme_revalidate_zones again (Maurizio Lombardi) [2187618] - nvme-pci: print the command name of aborted commands (Maurizio Lombardi) [2187618] - nvme: use command_id instead of req->tag in trace_nvme_complete_rq() (Maurizio Lombardi) [2187618] - nvme-pci: use nvme core helper to cancel requests in tagset (Maurizio Lombardi) [2187618] - nvme-tcp: use in-capsule data for I/O connect (Maurizio Lombardi) [2187618] - nvme-rdma: remove timeout for getting RDMA-CM established event (Maurizio Lombardi) [2187618] - nvmet: parse fabrics commands on io queues (Maurizio Lombardi) [2187618] - nvme-fabrics: decode 'authentication required' connect error (Maurizio Lombardi) [2187618] - nvme-loop: use nvme core helpers to cancel all requests in a tagset (Maurizio Lombardi) [2187618] - nvme: handle the persistent internal error AER (Maurizio Lombardi) [2187618] - nvme: remove a double word in a comment (Maurizio Lombardi) [2187618] - nvme: use struct group for generic command dwords (Maurizio Lombardi) [2187618] - nvme-pci: fix freeze accounting for error handling (Maurizio Lombardi) [2187618] - nvmet-tcp: fix regression in data_digest calculation (Maurizio Lombardi) [2187618] - nvme: add a bogus subsystem NQN quirk for Micron MTFDKBA2T0TFH (Maurizio Lombardi) [2187618] - nvme-pci: disable write zeros support on UMIC and Samsung SSDs (Maurizio Lombardi) [2187618] - nvme-pci: avoid the deepest sleep state on ZHITAI TiPro7000 SSDs (Maurizio Lombardi) [2187618] - nvme-pci: add trouble shooting steps for timeouts (Maurizio Lombardi) [2187618] - nvme: add device name to warning in uuid_show() (Maurizio Lombardi) [2187618] - nvmet: fix typo in comment (Maurizio Lombardi) [2187618] - nvme: set controller enable bit in a separate write (Maurizio Lombardi) [2187618] - nvme: set non-mdts limits in nvme_scan_work (Maurizio Lombardi) [2187618] - nvme-pci: harden drive presence detect in nvme_dev_disable() (Maurizio Lombardi) [2187618] - nvme-pci: fix a NULL pointer dereference in nvme_alloc_admin_tags (Maurizio Lombardi) [2187618] - nvme: mark internal passthru request RQF_QUIET (Maurizio Lombardi) [2187618] - nvme: remove unneeded include from constants file (Maurizio Lombardi) [2187618] - nvme: set dma alignment to dword (Maurizio Lombardi) [2187618] - nvme: fix interpretation of DMRSL (Maurizio Lombardi) [2187618] - ixgbe: add double of VLAN header when computing the max MTU (Ken Cox) [2153372] - ixgbe: allow to increase MTU to 3K with XDP enabled (Ken Cox) [2153372] - ixgbe: Filter out spurious link up indication (Ken Cox) [2153372] - ixgbe: XDP: fix checker warning from rcu pointer (Ken Cox) [2153372] - ixgbe: fix pci device refcount leak (Ken Cox) [2153372] - ixgbe: change MAX_RXD/MAX_TXD based on adapter type (Ken Cox) [2153372] - tracing: kprobes: Prohibit probing on notrace function (Mukesh Chaurasiya) [2183475] - powerpc/kprobes: Ignore traps that happened in real mode (Mukesh Chaurasiya) [2183475] - nvme-rdma: handle number of queue changes (Kamal Heib) [2160665] - nvme-rdma: remove timeout for getting RDMA-CM established event (Kamal Heib) [2160665] - nvmet-rdma: fix kernel-doc warning for nvmet_rdma_device_removal (Kamal Heib) [2160665] - net: mpls: fix stale pointer if allocation fails during device rename (Guillaume Nault) [2184956] {CVE-2023-26545} - block: don't set GD_NEED_PART_SCAN if scan partition failed (Ming Lei) [2151112] - block: fix wrong mode for blkdev_put() from disk_scan_partitions() (Ming Lei) [2151112] - block: fix scan partition for exclusively open device again (Ming Lei) [2151112] - mm: swap: get rid of livelock in swapin readahead (Aristeu Rozanski) [2035182 2182084] - redhat: require reasonably recent grub2 _only_ if grub2 is already installed (Denys Vlasenko) [2183531] - i40e: Fix kernel crash during reboot when adapter is in recovery mode (Stefan Assmann) [2153348] - i40e: add double of VLAN header when computing the max MTU (Stefan Assmann) [2153348] - i40e: Add checking for null for nlmsg_find_attr() (Stefan Assmann) [2153348] - net/i40e: Replace 0-length array with flexible array (Stefan Assmann) [2153348] - i40e: use ERR_PTR error print in i40e messages (Stefan Assmann) [2153348] - i40e: use int for i40e_status (Stefan Assmann) [2153348] - i40e: Remove string printing for i40e_status (Stefan Assmann) [2153348] - i40e: Remove unused i40e status codes (Stefan Assmann) [2153348] - net/sched: move struct tc_mqprio_qopt_offload from pkt_cls.h to pkt_sched.h (Stefan Assmann) [2153348] - i40e: Remove redundant pci_enable_pcie_error_reporting() (Stefan Assmann) [2153348] - virtchnl: i40e/iavf: rename iwarp to rdma (Stefan Assmann) [2153348] - treewide: Convert del_timer*() to timer_shutdown*() (Stefan Assmann) [2153348] - i40e: allow toggling loopback mode via ndo_set_features callback (Stefan Assmann) [2153348] - i40e: Disallow ip4 and ip6 l4_4_bytes (Stefan Assmann) [2153348] - i40e: Fix for VF MAC address 0 (Stefan Assmann) [2153348] - i40e: Fix not setting default xps_cpus after reset (Stefan Assmann) [2153348] - dm: fix __send_duplicate_bios() to always allow for splitting IO (Benjamin Marzinski) [2183559] - dm: fix improper splitting for abnormal bios (Benjamin Marzinski) [2183559] - dm: remove unnecessary (void*) conversion in event_callback() (Benjamin Marzinski) [2179207] - dm ioctl: remove unnecessary check when using dm_get_mdptr() (Benjamin Marzinski) [2179207] - dm ioctl: assert _hash_lock is held in __hash_remove (Benjamin Marzinski) [2179207] - dm cache: add cond_resched() to various workqueue loops (Benjamin Marzinski) [2179207] - dm thin: add cond_resched() to various workqueue loops (Benjamin Marzinski) [2179207] - dm: add cond_resched() to dm_wq_work() (Benjamin Marzinski) [2179207] - dm: update targets using system workqueues to use a local workqueue (Benjamin Marzinski) [2179207] - dm: remove flush_scheduled_work() during local_exit() (Benjamin Marzinski) [2179207] - dm: declare variables static when sensible (Benjamin Marzinski) [2179207] - dm ioctl: prefer strscpy() instead of strlcpy() (Benjamin Marzinski) [2179207] - dm: avoid 'do {} while(0)' loop in single statement macros (Benjamin Marzinski) [2179207] - dm: favour __packed versus "__attribute__ ((packed))" (Benjamin Marzinski) [2179207] - dm: favour __aligned(N) versus "__attribute__ (aligned(N))" (Benjamin Marzinski) [2179207] - dm: adjust EXPORT_SYMBOL() to follow functions immediately (Benjamin Marzinski) [2179207] - dm block-manager: avoid not required parentheses (Benjamin Marzinski) [2179207] - dm: send just one event on resize, not two (Benjamin Marzinski) [2179207] - dm table: check that a dm device doesn't reference itself (Benjamin Marzinski) [2179207] - dm raid: fix some spelling mistakes in comments (Benjamin Marzinski) [2179207] - dm verity: stop using WQ_UNBOUND for verify_wq (Benjamin Marzinski) [2179207] - dm integrity: Remove bi_sector that's only used by commented debug code (Benjamin Marzinski) [2179207] - dm crypt: Slightly simplify crypt_set_keyring_key() (Benjamin Marzinski) [2179207] - dm ioctl: drop always-false condition (Benjamin Marzinski) [2179207] - dm flakey: fix logic when corrupting a bio (Benjamin Marzinski) [2179207] - dm flakey: fix a bug with 32-bit highmem systems (Benjamin Marzinski) [2179207] - dm flakey: don't corrupt the zero page (Benjamin Marzinski) [2179207] - dm cache: Add some documentation to dm-cache-background-tracker.h (Benjamin Marzinski) [2179207] - dm cache: free background tracker's queued work in btracker_destroy (Benjamin Marzinski) [2179207] - dm ioctl: fix a couple ioctl codes (Benjamin Marzinski) [2179207] - dm ioctl: a small code cleanup in list_version_get_info (Benjamin Marzinski) [2179207] - sfc: include vport_id in filter spec hash and equal() (Íñigo Huguet) [2159251] - ptp: convert remaining drivers to adjfine interface (Íñigo Huguet) [2159251] - sfc: Use kmap_local_page() instead of kmap_atomic() (Íñigo Huguet) [2159251] - sfc: use sysfs_emit() to instead of scnprintf() (Íñigo Huguet) [2159251] - selftests: forwarding: add tunnel_key "nofrag" test case (Davide Caratti) [2103797] - selftests: tc-testing: add tunnel_key "nofrag" test case (Davide Caratti) [2103797] - selftests: tc-testing: add "depends_on" property to skip tests (Davide Caratti) [2103797] - net/sched: act_tunnel_key: add support for "don't fragment" (Davide Caratti) [2103797] - e1000e: Fix TX dispatch condition (Ken Cox) [2153313] - e1000e: Separate MTP board type from ADP (Ken Cox) [2153313] - drivers/net/ethernet/e1000e: check return value of e1e_rphy() (Ken Cox) [2153313] - ipvs: add sysctl_run_estimation to support disable estimation (Hangbin Liu) [2182003] - scsi: ses: Don't attach if enclosure has no components (Tomas Henzl) [1975026] - scsi: ses: Fix slab-out-of-bounds in ses_intf_remove() (Tomas Henzl) [1975026] - scsi: ses: Fix possible desc_ptr out-of-bounds accesses (Tomas Henzl) [1975026] - scsi: ses: Fix possible addl_desc_ptr out-of-bounds accesses (Tomas Henzl) [1975026] - scsi: ses: Fix slab-out-of-bounds in ses_enclosure_data_process() (Tomas Henzl) [1975026] - vmxnet3: move rss code block under eop descriptor (Izabela Bakollari) [2172579]- crypto: qat - add support for 402xx devices (Vladis Dronov) [2144529] - crypto: qat - drop log level of msg in get_instance_node() (Vladis Dronov) [2144529] - crypto: qat - fix out-of-bounds read (Vladis Dronov) [2144529] - Documentation: qat: change kernel version (Vladis Dronov) [2144529] - crypto: qat - add qat_zlib_deflate (Vladis Dronov) [2144529] - crypto: qat - extend buffer list logic interface (Vladis Dronov) [2144529] - crypto: qat - fix spelling mistakes from 'bufer' to 'buffer' (Vladis Dronov) [2144529] - crypto: qat - add resubmit logic for decompression (Vladis Dronov) [2144529] - crypto: acomp - define max size for destination (Vladis Dronov) [2144529] - crypto: qat - enable deflate for QAT GEN4 (Vladis Dronov) [2144529] - crypto: qat - expose deflate through acomp api for QAT GEN2 (Vladis Dronov) [2144529] - crypto: qat - rename and relocate GEN2 config function (Vladis Dronov) [2144529] - crypto: qat - relocate qat_algs_alloc_flags() (Vladis Dronov) [2144529] - crypto: qat - relocate backlog related structures (Vladis Dronov) [2144529] - crypto: qat - extend buffer list interface (Vladis Dronov) [2144529] - crypto: qat - generalize crypto request buffers (Vladis Dronov) [2144529] - crypto: qat - change bufferlist logic interface (Vladis Dronov) [2144529] - crypto: qat - rename bufferlist functions (Vladis Dronov) [2144529] - crypto: qat - relocate bufferlist logic (Vladis Dronov) [2144529] - crypto: qat - Use helper to set reqsize (Vladis Dronov) [2144529] - crypto: kpp - Add helper to set reqsize (Vladis Dronov) [2144529] - crypto: qat - fix error return code in adf_probe (Vladis Dronov) [2144529] - crypto: qat - remove ADF_STATUS_PF_RUNNING flag from probe (Vladis Dronov) [2144529] - selftests: net: rps_default_mask.sh: delete veth link specifically (Hangbin Liu) [2185801] - selftests: net: devlink_port_split.py: skip test if no suitable device available (Hangbin Liu) [2185801] - selftests: mirror_gre_bridge_1q: Avoid changing PVID while interface is operational (Hangbin Liu) [2185801] - selftests/tls: Add {} to avoid static checker warning (Hangbin Liu) [2185801] - selftests: nft_nat: ensuring the listening side is up before starting the client (Hangbin Liu) [2185801] - selftest: fib_tests: Always cleanup before exit (Hangbin Liu) [2185801] - selftests/net: Interpret UDP_GRO cmsg data as an int value (Hangbin Liu) [2185801] - selftests: forwarding: lib: quote the sysctl values (Hangbin Liu) [2185801] - selftests: net: udpgso_bench_tx: Cater for pending datagrams zerocopy benchmarking (Hangbin Liu) [2185801] - selftests: net: udpgso_bench: Fix racing bug between the rx/tx programs (Hangbin Liu) [2185801] - selftests: net: udpgso_bench_rx/tx: Stop when wrong CLI args are provided (Hangbin Liu) [2185801] - selftests: net: udpgso_bench_rx: Fix 'used uninitialized' compiler warning (Hangbin Liu) [2185801] - selftests: rtnetlink: correct xfrm policy rule in kci_test_ipsec_offload (Hangbin Liu) [2185801] - selftests: forwarding: Fix failing tests with old libnet (Hangbin Liu) [2185801] - powerpc/pseries/mobility: set NMI watchdog factor during an LPM (Mamatha Inamdar) [2186026] - powerpc/watchdog: introduce a NMI watchdog's factor (Mamatha Inamdar) [2186026] - watchdog: export lockup_detector_reconfigure (Mamatha Inamdar) [2186026] - powerpc/mobility: wait for memory transfer to complete (Mamatha Inamdar) [2186026] - crypto: drbg - Only fail when jent is unavailable in FIPS mode (Vladis Dronov) [2175712] - crypto: jitter - permanent and intermittent health errors (Vladis Dronov) [2175712] - crypto: jitter - quit sample collection loop upon RCT failure (Vladis Dronov) [2175712] - crypto: jitter - don't limit ->health_failure check to FIPS mode (Vladis Dronov) [2175712] - crypto: jitter - drop kernel-doc notation (Vladis Dronov) [2175712] - selftests/livepatch: normalize sysctl error message (Julia Denham) [RHEL-256] - livepatch: Skip livepatch tests if ftrace cannot be configured (Julia Denham) [RHEL-256] - livepatch: Add a missing newline character in klp_module_coming() (Julia Denham) [RHEL-256] - livepatch: fix race between fork and KLP transition (Julia Denham) [RHEL-256] - scsi: bnx2i: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Nilesh Javali) [2164956] - x86/xen: Split HVM vector callback setup and interrupt gate allocation (Prarit Bhargava) [2187810] - s390/uaccess: add missing earlyclobber annotations to __clear_user() (Tobias Huschle) [2183078] - s390/qeth: fix use-after-free in hsci (Tobias Huschle) [2183992] - SUNRPC: Fix a server shutdown leak (Benjamin Coddington) [2166107] - powerpc/pseries/vas: Ignore VAS update for DLPAR if copy/paste is not enabled (Mamatha Inamdar) [2184979] - cnic: don't pass bogus GFP_ flags to dma_alloc_coherent (Nilesh Javali) [2164958] - cnic: Use the bitmap API to allocate bitmaps (Nilesh Javali) [2164958]- perf vendor events intel: Add uncore event list for Sapphirerapids (Michael Petlan) [2180657] - perf vendor events intel: Add metrics for Sapphirerapids (Michael Petlan) [2180657] - perf vendor events intel: Update core event list for Sapphirerapids (Michael Petlan) [2180657] - perf vendor events intel: Add sapphirerapids events (Michael Petlan) [2180657] - perf vendor events intel: Update metrics for Alderlake (Michael Petlan) [2180656] - perf vendor events: Fix Alderlake metric groups (Michael Petlan) [2180656] - perf vendor events intel: Add metrics for Alderlake (Michael Petlan) [2180656] - perf/x86/rapl: Add support for Intel Raptor Lake (Michael Petlan) [2180654] - perf/x86/intel: Add Cooper Lake stepping to isolation_ucodes[] (Michael Petlan) [2153896] - perf/x86/intel/cstate: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/intel: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/intel/uncore: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/msr: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/msr: Add Sapphire Rapids CPU support (Michael Petlan) [2156802] - perf/x86/intel/uncore: Add Meteor Lake support (Michael Petlan) [2177039] - perf/x86/msr: Add Meteor Lake support (Michael Petlan) [2153962] - perf/x86/cstate: Add Meteor Lake support (Michael Petlan) [2153962] - perf/x86/intel: Support Architectural PerfMon Extension leaf (Michael Petlan) [2153962] - x86/cpufeatures: Add Architectural PerfMon Extension bit (Michael Petlan) [2153962] - perf/x86: Support Retire Latency (Michael Petlan) [2153962] - perf/x86: Add Meteor Lake support (Michael Petlan) [2153962] - perf: Add PMU_FORMAT_ATTR_SHOW (Michael Petlan) [2153962] - mm/hugetlb: add dedicated func to get 'allowed' nodemask for current process (Rafael Aquini) [2153926] - mm/hugetlb: simplify the calculation of variables (Rafael Aquini) [2153926] - mm/mempolicy: fix lock contention on mems_allowed (Rafael Aquini) [2153926] - mm/mempolicy: do not allow illegal MPOL_F_NUMA_BALANCING | MPOL_LOCAL in mbind() (Rafael Aquini) [2153926] - mm/mempolicy.c: use in_task() in mempolicy_slab_node() (Rafael Aquini) [2153926] - mm/mempolicy: unify the create() func for bind/interleave/prefer-many policies (Rafael Aquini) [2153926] - mm/mempolicy: advertise new MPOL_PREFERRED_MANY (Rafael Aquini) [2153926] - mm/hugetlb: add support for mempolicy MPOL_PREFERRED_MANY (Rafael Aquini) [2153926] - mm/memplicy: add page allocation function for MPOL_PREFERRED_MANY policy (Rafael Aquini) [2153926] - mm/mempolicy: add MPOL_PREFERRED_MANY for multiple preferred nodes (Rafael Aquini) [2153926] - mm/mempolicy: use readable NUMA_NO_NODE macro instead of magic number (Rafael Aquini) [2153926] - mm/mempolicy: unify the parameter sanity check for mbind and set_mempolicy (Rafael Aquini) [2153926] - mm/mempolicy: use unified 'nodes' for bind/interleave/prefer policies (Rafael Aquini) [2153926] - mm/mempolicy: don't handle MPOL_LOCAL like a fake MPOL_PREFERRED policy (Rafael Aquini) [2153926] - mm/mempolicy: cleanup nodemask intersection check for oom (Rafael Aquini) [2153926] - mm/mempolicy: fix mpol_misplaced kernel-doc (Rafael Aquini) [2153926] - numa balancing: migrate on fault among multiple bound nodes (Rafael Aquini) [2153926] - mm/hugetlb: add mempolicy check in the reservation routine (Rafael Aquini) [2153926] - mm: remove unused alloc_page_vma_node() (Rafael Aquini) [2153926] - mm/mempolicy: remove or narrow the lock on current (Rafael Aquini) [2153926] - mm, mempolicy: fix uninit memory access (Rafael Aquini) [2153926] - mm/mempool: minor coding style tweaks (Rafael Aquini) [2153926] - mm: fix typos in comments (Rafael Aquini) [2153926] - futex: Do not apply time namespace adjustment on FUTEX_LOCK_PI (Joel Savitz) [2170113] - Revert 337f13046ff0 ("futex: Allow FUTEX_CLOCK_REALTIME with FUTEX_WAIT op") (Joel Savitz) [2170113] - kernel, fs: Introduce and use set_restart_fn() and arch_set_restart_data() (Joel Savitz) [2170113] - futex: Remove unneeded gotos (Joel Savitz) [2170113] - rtmutex: Ensure that the top waiter is always woken up (Joel Savitz) [2170113] - rtmutex: Add acquire semantics for rtmutex lock acquisition slow path (Joel Savitz) [2170113] - locking/lockdep: Fix lockdep_init_map_*() confusion (Joel Savitz) [2170113] - locking/lockdep: Avoid potential access of invalid memory in lock_class (Joel Savitz) [2170113] - lockdep: Correct lock_classes index mapping (Joel Savitz) [2170113] - locking/rtmutex: Squash self-deadlock check for ww_rt_mutex. (Joel Savitz) [2170113] - locking/rtmutex: Fix incorrect condition in rtmutex_spin_on_owner() (Joel Savitz) [2170113] - kallsyms: remove arch specific text and data check (Joel Savitz) [2170113] - lockdep: Let lock_is_held_type() detect recursive read as read (Joel Savitz) [2170113] - lockdep: Fix wait-type for empty stack (Joel Savitz) [2170113] - locking/lockdep: Improve noinstr vs errors (Joel Savitz) [2170113] - locking/lockdep: Correct calling tracepoints (Joel Savitz) [2170113] - locking/percpu-rwsem: Use this_cpu_{inc,dec}() for read_count (Joel Savitz) [2170113] - locking/ww_mutex: Fix runtime warning in the WW mutex selftest (Joel Savitz) [2170113] - fortify: Do not cast to "unsigned char" (Josef Oskera) [2139487] - fortify: Use SIZE_MAX instead of (size_t)-1 (Josef Oskera) [2139487] - afs: Work around strnlen() oops with CONFIG_FORTIFIED_SOURCE=y (Josef Oskera) [2139487] - net/mlx4_en: Introduce flexible array to silence overflow warning (Josef Oskera) [2139487] - wusbcore: silence fortify warning (Josef Oskera) [2139487] - skbuff: Switch structure bounds to struct_group() (Josef Oskera) [2139487] - RDMA/cxgb4: fix accept failure due to increased cpl_t5_pass_accept_rpl size (Josef Oskera) [2139487] - intel_th: msu: Use memset_startat() for clearing hw header (Josef Oskera) [2139487] - dm integrity: Use struct_group() to zero struct journal_sector (Josef Oskera) [2139487] - iw_cxgb4: Use memset_startat() for cpl_t5_pass_accept_rpl (Josef Oskera) [2139487] - scsi: lpfc: Use struct_group() to initialize struct lpfc_cgn_info (Josef Oskera) [2139487] - netfilter: conntrack: Use memset_startat() to zero struct nf_conn (Josef Oskera) [2139487] - netfilter: conntrack: avoid gcc-10 zero-length-bounds warning (Josef Oskera) [2139487] - thermal: int340x: Use struct_group() for memcpy() region (Josef Oskera) [2139487] - net/af_iucv: Use struct_group() to zero struct iucv_sock region (Josef Oskera) [2139487] - ipv6: Use memset_after() to zero rt6_info (Josef Oskera) [2139487] - bnx2x: Use struct_group() for memcpy() region (Josef Oskera) [2139487] - tracing: Use memset_startat() to zero struct trace_iterator (Josef Oskera) [2139487] - xfrm: Use memset_after() to clear padding (Josef Oskera) [2139487] - HID: roccat: Use struct_group() to zero kone_mouse_event (Josef Oskera) [2139487] - scsi: ibmvscsi: Avoid multi-field memset() overflow by aiming at srp (Josef Oskera) [2139487] - ipv4: ip_output.c: Fix out-of-bounds warning in ip_copy_addrs() (Josef Oskera) [2139487] - media: ngene: Fix out-of-bounds bug in ngene_command_config_free_buf() (Josef Oskera) [2139487] - s390/zcrypt: Switch to flexible array member (Josef Oskera) [2139487] - s390/speculation: Use statically initialized const for instructions (Josef Oskera) [2139487] - cifs: avoid extra calls in posix_info_parse (Josef Oskera) [2139487] - x86/entry: Fixup bad_iret vs noinstr (Josef Oskera) [2139487] - x86/traps: Mark fixup_bad_iret() noinstr (Josef Oskera) [2139487] - x86/doublefault: Remove memmove() call (Josef Oskera) [2139487] - tracing: Initialize iter->seq after zeroing in tracing_read_pipe() (Josef Oskera) [2139487] - tracing: Silence GCC 9 array bounds warning (Josef Oskera) [2139487] - fortify: Fix __compiletime_strlen() under UBSAN_BOUNDS_LOCAL (Josef Oskera) [2139487] - fortify: Provide a memcpy trap door for sharp corners (Josef Oskera) [2139487] - fortify: Make pointer arguments const (Josef Oskera) [2139487] - fortify: Replace open-coded __gnu_inline attribute (Josef Oskera) [2139487] - fortify: Update compile-time tests for Clang 14 (Josef Oskera) [2139487] - fortify: Detect struct member overflows in memset() at compile-time (Josef Oskera) [2139487] - fortify: Detect struct member overflows in memmove() at compile-time (Josef Oskera) [2139487] - fortify: Detect struct member overflows in memcpy() at compile-time (Josef Oskera) [2139487] - fortify: strlen: Avoid shadowing previous locals (Josef Oskera) [2139487] - fortify: Add compile-time FORTIFY_SOURCE tests (Josef Oskera) [2139487] - fortify: Allow strlen() and strnlen() to pass compile-time known lengths (Josef Oskera) [2139487] - fortify: Prepare to improve strnlen() and strlen() warnings (Josef Oskera) [2139487] - fortify: Fix dropped strcpy() compile-time write overflow check (Josef Oskera) [2139487] - fortify: Explicitly disable Clang support (Josef Oskera) [2139487] - fortify: Move remaining fortify helpers into fortify-string.h (Josef Oskera) [2139487] - lib/string: Move helper functions out of string.c (Josef Oskera) [2139487] - lib/string.c: update match_string() doc-strings with correct behavior (Josef Oskera) [2139487] - string.h: move fortified functions definitions in a dedicated header. (Josef Oskera) [2139487] - string.h: add FORTIFY coverage for strscpy() (Josef Oskera) [2139487] - lib: string.h: detect intra-object overflow in fortified string functions (Josef Oskera) [2139487] - lib: string_helpers: provide kfree_strarray() (Josef Oskera) [2139487] - lib/string.c: implement stpcpy (Josef Oskera) [2139487] - kernel-doc: core-api: include string.h into core-api (Josef Oskera) [2139487] - docs/core-api: move *{str,mem}dup* to "String Manipulation" (Josef Oskera) [2139487] - selftests/tc-testing: add show class case for red qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add show class case for prio qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add show class case for mq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add show class case for ingress qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for qfq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for netem qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for multiq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for mqprio qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for htb qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for hfsc qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for fq_codel qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for dsmark qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for drr qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for cbs qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for cbq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for cake qdisc (Ivan Vecera) [2172130] - net/sched: use tc_qdisc_stats_dump() in qdisc (Ivan Vecera) [2172130] - net/sched: sch_api: add helper for tc qdisc walker stats dump (Ivan Vecera) [2172130] - hwrng: core - use per-rng quality value instead of global setting (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - start and stop in-kernel rngd in separate function (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - do not bother to order list of devices by quality (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - credit entropy for low quality sources of randomness (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - break out of hwrng_fillfn if current rng is not trusted (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - only set cur_rng_set_by_user if it is working (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - use rng_fillbuf in add_early_randomness() (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - read() callback must be called for size of 32 or more bytes (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - explicit ordering of initcalls (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - Use DEVICE_ATTR_ macro (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - remove redundant initialization of variable err (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - convert sysfs sprintf/snprintf family to sysfs_emit (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - remove redundant initialization of variable ret (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - Fix use-after-free warning in hwrng_register() (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - move add_early_randomness() out of rng_mutex (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - document the quality field (Jose Ignacio Tornos Martinez) [2172884] - netfilter: nf_conntrack: allow early drop of offloaded UDP conns (Florian Westphal) [2183080] - net/sched: act_ct: offload UDP NEW connections (Florian Westphal) [2183080] - net/sched: act_ct: set ctinfo in meta action depending on ct state (Florian Westphal) [2183080] - netfilter: flowtable: cache info of last offload (Florian Westphal) [2183080] - netfilter: flowtable: allow unidirectional rules (Florian Westphal) [2183080] - netfilter: flowtable: fixup UDP timeout depending on ct state (Florian Westphal) [2183080] - ptp_clock: Let the ADJ_OFFSET interface respect the ADJ_NANO flag for PHC devices. (Íñigo Huguet) [2180896] - ptp: Add adjust_phase to ptp_clock_caps capability. (Íñigo Huguet) [2180896] - ptp: Add adjphase function to support phase offset control. (Íñigo Huguet) [2180896] - kernfs: dont take d_lock on revalidate (Ian Kent) [2126350] - kernfs: dont take i_lock on inode attr read (Ian Kent) [2126350] - kernfs: remove redundant kernfs_rwsem declaration. (Ian Kent) [2126350] - kernfs: fix potential NULL dereference in __kernfs_remove (Ian Kent) [2126350] - kernfs: fix NULL dereferencing in kernfs_remove (Ian Kent) [2126350] - kernfs: prevent early freeing of root node (Ian Kent) [2126350] - kernfs: switch global kernfs_rwsem lock to per-fs lock (Ian Kent) [2126350] - workqueue: Fold rebind_worker() within rebind_workers() (Valentin Schneider) [2088578] - workqueue: Unbind kworkers before sending them to exit() (Valentin Schneider) [2088578] - workqueue: Don't hold any lock while rcuwait'ing for !POOL_MANAGER_ACTIVE (Valentin Schneider) [2088578] - workqueue: Convert the idle_timer to a timer + work_struct (Valentin Schneider) [2088578] - workqueue: Factorize unbind/rebind_workers() logic (Valentin Schneider) [2088578] - workqueue: Protects wq_unbound_cpumask with wq_pool_attach_mutex (Valentin Schneider) [2088578] - workqueue: make sysfs of unbound kworker cpumask more clever (Valentin Schneider) [2088578] - fuse: add feature flag for expire-only (Pavel Reichl) [2109496] - fuse: add "expire only" mode to FUSE_NOTIFY_INVAL_ENTRY (Pavel Reichl) [2109496] - fuse: extend init flags (Pavel Reichl) [2109496] - wifi: iwlwifi: mvm: protect TXQ list manipulation (Jose Ignacio Tornos Martinez) [2152168] - wifi: iwlwifi: mvm: fix mvmtxq->stopped handling (Jose Ignacio Tornos Martinez) [2152168] - thunderbolt: Explicitly enable lane adapter hotplug events at startup (Desnes Nunes) [2130062] - x86/tsc: Add option to force frequency recalibration with HW timer (Prarit Bhargava) [2100597] - ovl: fix use after free in struct ovl_aio_req (Miklos Szeredi) [2176159] {CVE-2023-1252}- mm/memremap: fix missing call to untrack_pfn() in pagemap_range() (Nico Pache) [2168370] - arm64: mm: correct the inside linear map range during hotplug check (Nico Pache) [2168370] - s390/mm: define arch_get_mappable_range() (Nico Pache) [2168370] - arm64/mm: define arch_get_mappable_range() (Nico Pache) [2168370] - mm/memory_hotplug: prevalidate the address range being added with platform (Nico Pache) [2168370] - s390/extmem: return correct segment type in __segment_load() (Nico Pache) [2168370] - s390/vmem: get rid of memory segment list (Nico Pache) [2168370] - arm64/mm: Validate hotplug range before creating linear mapping (Nico Pache) [2168370] - mm/truncate.c: make __invalidate_mapping_pages() static (Nico Pache) [2168370] - powerpc/mm: fix "section_base" set but not used (Nico Pache) [2168370] - powerpc: Avoid link stack corruption in misc asm functions (Nico Pache) [2168370] - powerpc/booke: Avoid link stack corruption in several places (Nico Pache) [2168370] - powerpc/mm: Fix lockup on kernel exec fault (Nico Pache) [2168370] - x86: fix seq_file iteration for pat/memtype.c (Nico Pache) [2168370] - powerpc/book3s64/hash: Add cond_resched to avoid soft lockup warning (Nico Pache) [2168370] - powerpc/nvdimm: Update vmemmap_populated to check sub-section range (Nico Pache) [2168370] - powerpc/pseries: Fix cpu_hotplug_lock acquisition in resize_hpt() (Nico Pache) [2168370] - x86/mm: Sync also unmappings in vmalloc_sync_all() (Nico Pache) [2168370] - Fix page corruption caused by racy check in __free_pages (Nico Pache) [2168370] - mm/gup: fix gup_pud_range() for dax (Nico Pache) [2168370] - memcg: Fix possible use-after-free in memcg_write_event_control() (Nico Pache) [2168370] - mm/huge_memory: use pfn_to_online_page() in split_huge_pages_all() (Nico Pache) [2168370] - mm: fix madivse_pageout mishandling on non-LRU page (Nico Pache) [2168370] - mm/page_alloc: fix race condition between build_all_zonelists and page allocation (Nico Pache) [2168370] - mm/slub: fix to return errno if kmalloc() fails (Nico Pache) [2168370] - writeback: avoid use-after-free after removing device (Nico Pache) [2168370] - x86/mm: Use proper mask when setting PUD mapping (Nico Pache) [2168370] - mm/mmap.c: fix missing call to vm_unacct_memory in mmap_region (Nico Pache) [2168370] - mm/hmm: fault non-owner device private entries (Nico Pache) [2168370] - mm: split huge PUD on wp_huge_pud fallback (Nico Pache) [2168370] - mm/page_owner: use strscpy() instead of strlcpy() (Nico Pache) [2168370] - mm/vmscan: take min_slab_pages into account when try to call shrink_node (Nico Pache) [2168370] - x86: Fix return value of __setup handlers (Nico Pache) [2168370] - mm: fix unexpected zeroed page mapping with zram swap (Nico Pache) [2168370] - mm, page_alloc: fix build_zonerefs_node() (Nico Pache) [2168370] - mm/mempolicy: fix mpol_new leak in shared_policy_replace (Nico Pache) [2168370] - mm/slub: remove forced_order parameter in calculate_sizes (Nico Pache) [2168370] - mm/usercopy: return 1 from hardened_usercopy __setup() handler (Nico Pache) [2168370] - mm/thp: ClearPageDoubleMap in first page_add_file_rmap() (Nico Pache) [2168370] - mm/thp: refix __split_huge_pmd_locked() for migration PMD (Nico Pache) [2168370] - mempolicy: mbind_range() set_policy() after vma_merge() (Nico Pache) [2168370] - mm/pages_alloc.c: don't create ZONE_MOVABLE beyond the end of a node (Nico Pache) [2168370] - mm: userfaultfd: fix missing cache flush in mcopy_atomic_pte() and __mcopy_atomic() (Nico Pache) [2168370] - mm: hugetlb: fix missing cache flush in copy_huge_page_from_user() (Nico Pache) [2168370] - mm: thp: fix wrong cache flush in remove_migration_pmd() (Nico Pache) [2168370] - mm: fix missing cache flush for all tail pages of compound page (Nico Pache) [2168370] - tmpfs: fix regressions from wider use of ZERO_PAGE (Nico Pache) [2168370] - tmpfs: do not allocate pages on read (Nico Pache) [2168370] - shmem: mapping_set_exiting() to help mapped resilience (Nico Pache) [2168370] - mm/hmm.c: allow VM_MIXEDMAP to work with hmm_range_fault (Nico Pache) [2168370] - shmem: fix a race between shmem_unused_huge_shrink and shmem_evict_inode (Nico Pache) [2168370] - mm, slub: use prefetchw instead of prefetch (Nico Pache) [2168370] - arm64: mm: update max_pfn after memory hotplug (Nico Pache) [2168370] - mm, vmscan: guarantee drop_slab_node() termination (Nico Pache) [2168370] - fs, mm: fix race in unlinking swapfile (Nico Pache) [2168370] - fs: inode: count invalidated shadow pages in pginodesteal (Nico Pache) [2168370] - mm, fadvise: improve the expensive remote LRU cache draining after FADV_DONTNEED (Nico Pache) [2168370] - mm/filemap.c: rewrite mapping_needs_writeback in less fancy manner (Nico Pache) [2168370] - fs: drop_caches: fix skipping over shadow cache inodes (Nico Pache) [2168370] - mm: introduce and use mapping_empty() (Nico Pache) [2168370] - mm: remove irqsave/restore locking from contexts with irqs enabled (Nico Pache) [2168370] - mm: zswap: clean up confusing comment (Nico Pache) [2168370] - mm/memory_hotplug: use helper function zone_end_pfn() to get end_pfn (Nico Pache) [2168370] - mm: vmstat: add some comments on internal storage of byte items (Nico Pache) [2168370] - mm: vmstat: fix NOHZ wakeups for node stat changes (Nico Pache) [2168370] - mm/mmap.c: replace do_brk with do_brk_flags in comment of insert_vm_struct() (Nico Pache) [2168370] - mm/mmap.c: use helper function allow_write_access() in __remove_shared_vm_struct() (Nico Pache) [2168370] - mm: use helper function mapping_allow_writable() (Nico Pache) [2168370] - mm: memcontrol: reword obsolete comment of mem_cgroup_unmark_under_oom() (Nico Pache) [2168370] - mm/page_counter: correct the obsolete func name in the comment of page_counter_try_charge() (Nico Pache) [2168370] - mm: memcontrol: correct the comment of mem_cgroup_iter() (Nico Pache) [2168370] - x86/mm: use max memory block size on bare metal (Nico Pache) [2168370] - mm/util.c: remove the VM_WARN_ONCE for vm_committed_as underflow check (Nico Pache) [2168370] - include/linux/swapops.h: correct guards for non_swap_entry() (Nico Pache) [2168370] - mm: set vm_next and vm_prev to NULL in vm_area_dup() (Nico Pache) [2168370] - mm: don't prepare anon_vma if vma has VM_WIPEONFORK (Nico Pache) [2168370] - page-flags: fix a crash at SetPageError(THP_SWAP) (Nico Pache) [2168370] - mm/rmap.c: fix outdated comment in page_get_anon_vma() (Nico Pache) [2168370] - mm/mmap.c: extract __vma_unlink_list() as counterpart for __vma_link_list() (Nico Pache) [2168370] - mm: hugetlb: switch to css_tryget() in hugetlb_cgroup_charge_cgroup() (Nico Pache) [2168370] - x86/mm: Kill stray kernel fault handling comment (Nico Pache) [2168370] - arm64/numa: Unify common error path in numa_init() (Nico Pache) [2168370] - tools/power/x86/intel-speed-select: v1.14 release (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Adjust uncore max/min frequency (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix display of uncore min frequency (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Add Emerald Rapid quirk (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: turbo-freq auto mode with SMT off (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: cpufreq reads on offline CPUs (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Use null-terminated string (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove duplicate dup() (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Handle open() failure case (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unused non_block flag (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove wrong check in set_isst_id() (Prarit Bhargava) [2154078] - platform/x86: ISST: Fix typo in comments (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Release v1.13 (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Optimize CPU initialization (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Utilize cpu_map to get physical id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unused struct clos_config fields (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Enforce isst_id value (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Do not export get_physical_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Introduce is_cpu_in_power_domain helper (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Cleanup get_physical_id usage (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Convert more function to use isst_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Add pkg and die in isst_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Introduce struct isst_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unused core_mask array (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove dead code (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix cpu count for TDP level display (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unneeded semicolon (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix off by one check (Prarit Bhargava) [2154078] - platform/x86: ISST: PUNIT device mapping with Sub-NUMA clustering (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix warning for perf_cap.cpu (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Display error on turbo mode disabled (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: fix build failure when using -Wl,--as-needed (Prarit Bhargava) [2154078] - KVM: x86: Propagate the AMD Automatic IBRS feature to the guest (Waiman Long) [1989283] - x86/cpu: Support AMD Automatic IBRS (Waiman Long) [1989283] - x86/cpu, kvm: Add the SMM_CTL MSR not present feature (Waiman Long) [1989283] - x86/cpu, kvm: Add the Null Selector Clears Base feature (Waiman Long) [1989283] - x86/cpu, kvm: Move X86_FEATURE_LFENCE_RDTSC to its native leaf (Waiman Long) [1989283] - x86/cpu, kvm: Add the NO_NESTED_DATA_BP feature (Waiman Long) [1989283] - KVM: x86: Move open-coded CPUID leaf 0x80000021 EAX bit propagation code (Waiman Long) [1989283] - x86/cpu, kvm: Add support for CPUID_80000021_EAX (Waiman Long) [1989283] - x86/bugs: Make sure MSR_SPEC_CTRL is updated properly upon resume from S3 (Waiman Long) [1989283] - KVM: x86: Advertise that the SMM_CTL MSR is not supported (Waiman Long) [1989283] - Documentation/hw-vuln: Update spectre doc (Waiman Long) [1989283] - nvme-tcp: fence TCP socket on receive error (John Meneghini) [2116939] - nvme-multipath: fix possible hang in live ns resize with ANA access (John Meneghini) [2116939] - nvme-tcp: fix possible hang caused during ctrl deletion (John Meneghini) [2116939] - nvme-tcp: fix regression that causes sporadic requests to time out (John Meneghini) [2116939] - nvme-tcp: fix UAF when detecting digest errors (John Meneghini) [2116939] - nvme-tcp: check if the queue is allocated before stopping it (John Meneghini) [2116939] - nvme-tcp: always fail a request when sending it failed (John Meneghini) [2116939] - nvme: fix regression when disconnect a recovering ctrl (John Meneghini) [2116939] - nvme-multipath: use vmalloc for ANA log buffer (John Meneghini) [2116939] - bfq: fix waker_bfqq inconsistency crash (Ming Lei) [2177565] - blktrace: Fix output non-blktrace event when blk_classic option enabled (Ming Lei) [2177565] - blk-wbt: fix that 'rwb->wc' is always set to 1 in wbt_init() (Ming Lei) [2177565] - blk-wbt: call rq_qos_add() after wb_normal is initialized (Ming Lei) [2177565] - block: sync mixed merged request's failfast with 1st bio's (Ming Lei) [2177565] - blk-mq: Fix potential io hung for shared sbitmap per tagset (Ming Lei) [2177565] - block: bio-integrity: Copy flags when bio_integrity_payload is cloned (Ming Lei) [2177565] - dim: initialize all struct fields (Audra Mitchell) [2172125] - XArray: Update the LRU list in xas_split() (Audra Mitchell) [2172125] - lib: bitmap: fix many kernel-doc warnings (Audra Mitchell) [2172125] - vsprintf: Fix %pK with kptr_restrict == 0 (Audra Mitchell) [2172125] - lib: uninline simple_strntoull() as well (Audra Mitchell) [2172125] - lib: dimlib: fix help text typos (Audra Mitchell) [2172125] - locks: fix TOCTOU race when granting write lease (Waiman Long) [2152051] - locks: eliminate false positive conflicts for write lease (Waiman Long) [2152051] - locks: Use inode_is_open_for_write (Waiman Long) [2152051] - fs/locks: remove unnecessary white space. (Waiman Long) [2152051] - fs/locks: use properly initialized file_lock when unlocking. (Waiman Long) [2152051] - redhat/configs: Enable CONFIG_PINCTRL_METEORLAKE in RHEL (Prarit Bhargava) [2156845] - pinctrl: intel: Add Intel Meteor Lake pin controller support (Prarit Bhargava) [2156845] - md: fix regression for null-ptr-deference in __md_stop() (Nigel Croxon) [2162231] - md: avoid signed overflow in slot_store() (Nigel Croxon) [2162231] - md: Free resources in __md_stop (Nigel Croxon) [2162231] - md: account io_acct_set usage with active_io (Nigel Croxon) [2162231] - md: use MD_RESYNC_* whenever possible (Nigel Croxon) [2162231] - md: Free writes_pending in md_stop (Nigel Croxon) [2162231] - md: Change active_io to percpu (Nigel Croxon) [2162231] - md: Factor out is_md_suspended helper (Nigel Croxon) [2162231] - md: don't update recovery_cp when curr_resync is ACTIVE (Nigel Croxon) [2162231] - md: fold unbind_rdev_from_array into md_kick_rdev_from_array (Nigel Croxon) [2162231] - md: mark md_kick_rdev_from_array static (Nigel Croxon) [2162231] - mm/kmemleak: fix UAF bug in kmemleak_scan() (Waiman Long) [2172763] - mm/kmemleak: simplify kmemleak_cond_resched() usage (Waiman Long) [2172763] - mm/kmemleak.c: fix a comment (Waiman Long) [2172763] - ptp: introduce a phase offset in the periodic output request (Íñigo Huguet) [2179072] - ptp: add ability to configure duty cycle for periodic output (Íñigo Huguet) [2179072] - platform/x86: intel/pmc/core: Add Meteor Lake mobile support (Prarit Bhargava) [2153968] - platform/x86: intel/pmc/core: Add Meteor Lake support to pmc core driver (Prarit Bhargava) [2153968] - sched/core: Fix arch_scale_freq_tick() on tickless systems (Phil Auld) [2184083] - qede: avoid uninitialized entries in coal_entry array (Michal Schmidt) [2160054] - qede: fix interrupt coalescing configuration (Jonathan Toppins) [2160054] - powerpc/64s: Unmerge EX_LR and EX_DAR (Mamatha Inamdar) [2134271] - powercap: intel_rapl: add support for Meteor Lake (Prarit Bhargava) [2153964] - dm: fix __send_duplicate_bios() to always allow for splitting IO (Benjamin Marzinski) [2184429] - dm: fix improper splitting for abnormal bios (Benjamin Marzinski) [2184429] - ovl: fail on invalid uid/gid mapping at copy up (Miklos Szeredi) [2165342] {CVE-2023-0386}- timers: Provide timer_shutdown[_sync]() (Ivan Vecera) [2174474] - timers: Add shutdown mechanism to the internal functions (Ivan Vecera) [2174474] - timers: Split [try_to_]del_timer[_sync]() to prepare for shutdown mode (Ivan Vecera) [2174474] - timers: Silently ignore timers with a NULL function (Ivan Vecera) [2174474] - timers: Rename del_timer() to timer_delete() (Ivan Vecera) [2174474] - timers: Rename del_timer_sync() to timer_delete_sync() (Ivan Vecera) [2174474] - timers: Use del_timer_sync() even on UP (Ivan Vecera) [2174474] - timers: Update kernel-doc for various functions (Ivan Vecera) [2174474] - timers: Replace BUG_ON()s (Ivan Vecera) [2174474] - timers: Get rid of del_singleshot_timer_sync() (Ivan Vecera) [2174474] - clocksource/drivers/sp804: Do not use timer namespace for timer_shutdown() function (Ivan Vecera) [2174474] - clocksource/drivers/arm_arch_timer: Do not use timer namespace for timer_shutdown() function (Ivan Vecera) [2174474] - misc/sgi-xp: Replace in_interrupt() usage (Ivan Vecera) [2174474] - timers: Don't block on ->expiry_lock for TIMER_IRQSAFE timers (Ivan Vecera) [2174474] - hvcs: Synchronize hotplug remove with port free (Mamatha Inamdar) [2167962] - hvcs: Use vhangup in hotplug remove (Mamatha Inamdar) [2167962] - hvcs: Get reference to tty in remove (Mamatha Inamdar) [2167962] - hvcs: Use driver groups to manage driver attributes (Mamatha Inamdar) [2167962] - hvcs: Use dev_groups to manage hvcs device attributes (Mamatha Inamdar) [2167962] - hvcs: Fix hvcs port reference counting (Mamatha Inamdar) [2167962] - tty: hvcs: Don't NULL tty->driver_data until hvcs_cleanup() (Mamatha Inamdar) [2167962] - docs/memory-barriers.txt/kokr: introduce io_stop_wc() and add implementation for ARM64 (Ivan Vecera) [2179061] - docs/memory-barriers.txt: Add a missed closing parenthesis (Ivan Vecera) [2179061] - asm-generic: Add missing brackets for io_stop_wc macro (Ivan Vecera) [2179061] - asm-generic: introduce io_stop_wc() and add implementation for ARM64 (Ivan Vecera) [2179061] - ipv4: Fix incorrect table ID in IOCTL path (Guillaume Nault) [2176792] - ipv4: Fix incorrect route flushing when table ID 0 is used (Guillaume Nault) [2176792] - ipv4: Fix incorrect route flushing when source address is deleted (Guillaume Nault) [2176792] - selftests: Add source route tests to fib_tests (Guillaume Nault) [2176792] - mm/rmap: split page_dup_rmap() into page_dup_file_rmap() and page_try_dup_anon_rmap() (David Hildenbrand) [2179164] - mm/memory: slightly simplify copy_present_pte() (David Hildenbrand) [2179164] - mm/hugetlb: take src_mm->write_protect_seq in copy_hugetlb_page_range() (David Hildenbrand) [2179164] - mm: /proc/sys/vm/stat_refresh stop checking monotonic numa stats (Waiman Long) [2178001] - mm: /proc/sys/vm/stat_refresh skip checking known negative stats (Waiman Long) [2178001] - mm: no more EINVAL from /proc/sys/vm/stat_refresh (Waiman Long) [2178001] - mm: restore node stat checking in /proc/sys/vm/stat_refresh (Waiman Long) [2178001] - sfc: ef10: don't overwrite offload features at NIC reset (Íñigo Huguet) [2154500] - sfc: correctly advertise tunneled IPv6 segmentation (Íñigo Huguet) [2154500] - igb: conditionalize I2C bit banging on external thermal sensor support (Corinna Vinschen) [2130727] - platform/x86: ISST: PUNIT device mapping with Sub-NUMA clustering (Prarit Bhargava) [2139963] - x86/nmi: Make register_nmi_handler() more robust (Ani Sinha) [2037005] - net: tls: fix possible race condition between do_tls_getsockopt_conf() and do_tls_setsockopt_conf() (Sabrina Dubroca) [2179819] {CVE-2023-28466} - cpufreq: intel_pstate: hybrid: Use known scaling factor for P-cores (Prarit Bhargava) [2179183] - target: iscsi: use GFP_NOIO with loopback connections (Maurizio Lombardi) [2156546] - core_pattern: add CPU specifier (Oleksandr Natalenko) [1968108] - Bluetooth: L2CAP: Fix accepting connection request for invalid SPSM (David Marlin) [2148404] {CVE-2022-42896} - ipv6: prevent router_solicitations for team port (Xin Long) [2141600] - ipv6: Don't send rs packets to the interface of ARPHRD_TUNNEL (Xin Long) [2141600] - Bluetooth: L2CAP: Fix attempting to access uninitialized memory (David Marlin) [2148408] {CVE-2022-42895} - redhat/scripts/create-tarball.sh: Use nproc instead of rpm macros (Prarit Bhargava) - Revert "Switch to z-stream for 8.8 for CKI pipelines" (Denys Vlasenko)- ethernet: Remove vf rate limit check for drivers (Izabela Bakollari) [2172124] - rtnetlink: verify rate parameters for calls to ndo_set_vf_rate (Izabela Bakollari) [2172124] - sfc: Change VF mac via PF as first preference if available. (Íñigo Huguet) [2117449] - Fix genlog.py to ensure that comments retain "%" characters. (Eder Zulian) [RHEL-340] - redhat: fix duplicate jira issues in the resolves line (Eder Zulian) [RHEL-340] - redhat: add support for Jira issues in changelog (Eder Zulian) [RHEL-340] - redhat/configs: Put CONFIG_SFC_* to a proper location (Vladis Dronov) - redhat/configs: Put CONFIG_SEV_GUEST to a proper location (Vladis Dronov) - Reinstate "GFS2: free disk inode which is deleted by remote node -V2" (Bob Peterson) [2181343] - iavf: fix hang on reboot with ice (Stefan Assmann) [2181811] - iavf: Fix race condition between iavf_shutdown and iavf_remove (Stefan Assmann) [2181811] - net/ulp: use consistent error code when blocking ULP (Sabrina Dubroca) [2176955] {CVE-2023-0461} - net/ulp: prevent ULP without clone op from entering the LISTEN status (Sabrina Dubroca) [2176955] {CVE-2023-0461} - lockd: lockd server-side shouldn't set fl_ops (Jeffrey Layton) [2179329] - NFS: Correct timing for assigning access cache timestamp (Benjamin Coddington) [2180851] - Switch to z-stream for 8.8 for CKI pipelines (Michael Hofmann) - KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS (Jon Maloy) [2160033] {CVE-2022-2196}- tracing/hwlat: Replace sched_setaffinity with set_cpus_allowed_ptr (Jerome Marchand) [2174935] - drivers: hv, hyperv_fb: Untangle and refactor Hyper-V panic notifiers (Mohammed Gamal) [2172513] - video: hyperv_fb: Avoid taking busy spinlock on panic path (Mohammed Gamal) [2172513] - HID: hyperv: remove unused struct synthhid_msg (Mohammed Gamal) [2172513] - HID: hyperv: Replace one-element array with flexible-array member (Mohammed Gamal) [2172513] - clocksource: hyper-v: Add TSC page support for root partition (Mohammed Gamal) [2172443] - clocksource: hyper-v: Use TSC PFN getter to map vvar page (Mohammed Gamal) [2172443] - clocksource: hyper-v: Introduce TSC PFN getter (Mohammed Gamal) [2172443] - clocksource: hyper-v: Introduce a pointer to TSC page (Mohammed Gamal) [2172443] - HV: hv_balloon: fix memory leak with using debugfs_lookup() (Mohammed Gamal) [2172435] - debugfs: add debugfs_lookup_and_remove() (Mohammed Gamal) [2172435] - Drivers: hv: Enable vmbus driver for nested root partition (Mohammed Gamal) [2172435] - video: hyperv_fb: Avoid taking busy spinlock on panic path (Mohammed Gamal) [2172435]- sched/deadline: Add more reschedule cases to prio_changed_dl() (Valentin Schneider) [2120570] - perf/x86/uncore: Add new Raptor Lake S support (Michael Petlan) [2120365] - perf/x86/cstate: Add new Raptor Lake S support (Michael Petlan) [2120365] - perf/x86/msr: Add new Raptor Lake S support (Michael Petlan) [2120365] - perf/x86: Add new Raptor Lake S support (Michael Petlan) [2120365] - net: sched: atm: dont intepret cls results when asked to drop (Davide Caratti) [2168336] {CVE-2023-23455} - nvdimm: Allow overwrite in the presence of disabled dimms (Aristeu Rozanski) [2154070] - Revert "GFS2: free disk inode which is deleted by remote node -V2" (Bob Peterson) [2109600] - gfs2: Evict inodes cooperatively (Andreas Gruenbacher) [2109600] - gfs2: Flush delete work before shrinking inode cache (Andreas Gruenbacher) [2109600] - gfs2: Add SDF_DEACTIVATING super block flag (Bob Peterson) [2109600] - gfs2: check gl_object in rgrp glops (Bob Peterson) [2109600] - gfs2: Split the two kinds of glock "delete" work (Andreas Gruenbacher) [2109600] - gfs2: Move delete workqueue into super block (Andreas Gruenbacher) [2109600] - gfs2: Use container_of() for gfs2_glock(aspace) (Andreas Gruenbacher) [2109600] - gfs2: Get rid of GLF_PENDING_DELETE flag (Andreas Gruenbacher) [2109600] - gfs2: Make glock lru list scanning safer (Andreas Gruenbacher) [2109600] - gfs2: Fix use-after-free in gfs2_glock_shrink_scan (Andreas Gruenbacher) [2109600] - gfs2: Clean up gfs2_scan_glock_lru (Andreas Gruenbacher) [2109600] - gfs2: gl_object races fix (Andreas Gruenbacher) [2109600] - iomap/gfs2: Unlock and put folio in page_done handler (Andreas Gruenbacher) [2109600] - iomap: Add __iomap_put_folio helper (Andreas Gruenbacher) [2109600] - gfs2: Remove support for glock holder auto-demotion (2) (Andreas Gruenbacher) [2109600] - gfs2: Remove support for glock holder auto-demotion (Andreas Gruenbacher) [2109600] - gfs2: Minor gfs2_try_evict cleanup (Andreas Gruenbacher) [2109600] - gfs2: Partially revert gfs2_inode_lookup change (Andreas Gruenbacher) [2109600] - gfs2: Add gfs2_inode_lookup comment (Andreas Gruenbacher) [2109600] - gfs2: Uninline and improve glock_{set,clear}_object (Andreas Gruenbacher) [2109600] - gfs2: Simply dequeue iopen glock in gfs2_evict_inode (Andreas Gruenbacher) [2109600] - gfs2: Clean up after gfs2_create_inode rework (Andreas Gruenbacher) [2109600] - gfs2: Avoid dequeuing GL_ASYNC glock holders twice (Andreas Gruenbacher) [2109600] - gfs2: Handle -EBUSY result of insert_inode_locked4 (Andreas Gruenbacher) [2109600] - gfs2: Fix and clean up create / evict interaction (Andreas Gruenbacher) [2109600] - gfs2: Clean up initialization of "ip" in gfs2_create_inode (Andreas Gruenbacher) [2109600] - gfs2: Get rid of ghs[] in gfs2_create_inode (Andreas Gruenbacher) [2109600] - gfs2: Dequeue waiters when withdrawn (Bob Peterson) [2109600] - gfs2: Prevent double iput for journal on error (Bob Peterson) [2109600] - Revert "gfs2: stop using generic_writepages in gfs2_ail1_start_one" (Andreas Gruenbacher) [2109600] - gfs2: remove ->writepage (Andreas Gruenbacher) [2109600] - gfs2: stop using generic_writepages in gfs2_ail1_start_one (Andreas Gruenbacher) [2109600] - gfs2: List traversal in do_promote is safe (Andreas Gruenbacher) [2109600] - gfs2: do_promote glock holder stealing fix (Bob Peterson) [2109600] - gfs2: Use better variable name (Andreas Gruenbacher) [2109600] - gfs2: Make go_instantiate take a glock (Andreas Gruenbacher) [2109600] - gfs2: Add new go_held glock operation (Andreas Gruenbacher) [2109600] - gfs2: Revert 'Fix "truncate in progress" hang' (Andreas Gruenbacher) [2109600] - gfs2: Instantiate glocks ouside of glock state engine (Andreas Gruenbacher) [2109600] - gfs2: Fix up gfs2_glock_async_wait (Andreas Gruenbacher) [2109600] - gfs2: Add GL_NOPID flag for process-independent glock holders (Andreas Gruenbacher) [2109600] - gfs2: dump inode object for iopen glocks (Bob Peterson) [2109600] - gfs2: convert to use DEFINE_SEQ_ATTRIBUTE macro (Andreas Gruenbacher) [2109600] - gfs2: Use TRY lock in gfs2_inode_lookup for UNLINKED inodes (Bob Peterson) [2109600] - Updated dist tag to el8_8 (Lucas Zampieri) - Revert "net/mlx5: Don't perform lookup after already known sec_path" (Amir Tzin) [2176349] - KVM: x86: do not report a vCPU as preempted outside instruction boundaries (Jon Maloy) [2124800] {CVE-2022-39189} - Drivers: vmbus: Check for channel allocation before looking up relids (Mohammed Gamal) [2178622] - drm/nouveau/fb/tu102-: fix register used to determine scrub status (Karol Herbst) [2168648] - drm/nouveau/devinit/tu102-: wait for GFW_BOOT_PROGRESS == COMPLETED (Karol Herbst) [2168648] - fs/proc: task_mmu.c: don't read mapcount for migration entry (Jay Shin) [2174623] - perf/core: Fix cgroup event list management (Michael Petlan) [2162525]- redhat: include all certs (Red Hat and CentOS) in the srpm (Denys Vlasenko) [2179095] - redhat: do not require grub2 on s390x (Denys Vlasenko) [2179095] - thermal: int340x: Add Meteor Lake PCI device ID (Prarit Bhargava) [2156822] - i2c: i801: Add support for Intel Meteor Lake-P (Prarit Bhargava) [2156841]- redhat: fix the signing failure on ppc64el on centos (Denys Vlasenko) [2179095]- redhat: add centos signing certs (Denys Vlasenko) - redhat: fix "make rh-brew" not choosing _scratch_ build (Denys Vlasenko) - mfd: intel-lpss: Add Intel Meteor Lake-P PCI IDs (Prarit Bhargava) [2156843] - x86/cpu: Add CPU model numbers for Meteor Lake (Prarit Bhargava) [2153936] - redhat: require grub2 >= 2.02-99 (Denys Vlasenko) [2179095] - redhat: delete unused script and file (Denys Vlasenko) [2179095] - redhat: drop certificates that were deprecated after GRUB's BootHole flaw (Denys Vlasenko) [2179095] - redhat: align file names with names of signing keys for ppc and s390 (Denys Vlasenko) [2179095]- net/tunnel: wait until all sk_user_data reader finish before releasing the sock (Hangbin Liu) [2176344] - powerpc/pseries: unregister VPA when hot unplugging a CPU (Mamatha Inamdar) [2143007] - net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2172474] - net: mana: Fix return type of mana_start_xmit() (Mohammed Gamal) [2172474] - net: mana: Define data structures for protection domain and memory registration (Mohammed Gamal) [2172474] - net: mana: Define and process GDMA response code GDMA_STATUS_MORE_ENTRIES (Mohammed Gamal) [2172474] - net: mana: Define max values for SGL entries (Mohammed Gamal) [2172474] - net: mana: Move header files to a common location (Mohammed Gamal) [2172474] - net: mana: Record port number in netdev (Mohammed Gamal) [2172474] - net: mana: Export Work Queue functions for use by RDMA driver (Mohammed Gamal) [2172474] - net: mana: Set the DMA device max segment size (Mohammed Gamal) [2172474] - net: mana: Handle vport sharing between devices (Mohammed Gamal) [2172474] - net: mana: Record the physical address for doorbell page region (Mohammed Gamal) [2172474] - net: mana: Add support for auxiliary device (Mohammed Gamal) [2172474] - hv_netvsc: Check status in SEND_RNDIS_PKT completion message (Mohammed Gamal) [2172438] - hv_netvsc: Allocate memory in netvsc_dma_map() with GFP_ATOMIC (Mohammed Gamal) [2172438] - hv_netvsc: Fix missed pagebuf entries in netvsc_dma_map/unmap() (Mohammed Gamal) [2172438] - Drivers: hv: Make remove callback of hyperv driver void returned (Mohammed Gamal) [2172438] - hv: fix comment typo in vmbus_channel/low_latency (Mohammed Gamal) [2172434] - x86/hyperv: Introduce HV_MAX_SPARSE_VCPU_BANKS/HV_VCPUS_PER_SPARSE_BANK constants (Mohammed Gamal) [2172434] - x86/hyperv: Fix hv_get/set_register for nested bringup (Mohammed Gamal) [2172434] - x86/hyperv: Add an interface to do nested hypercalls (Mohammed Gamal) [2172434] - Drivers: hv: Setup synic registers in case of nested root partition (Mohammed Gamal) [2172434] - x86/hyperv: Add support for detecting nested hypervisor (Mohammed Gamal) [2172434] - x86/hyperv: Add HV_EXPOSE_INVARIANT_TSC define (Mohammed Gamal) [2172434] - x86/hyperv: Expand definition of struct hv_vp_assist_page (Mohammed Gamal) [2172434] - KVM: x86: hyper-v: Expose support for extended gva ranges for flush hypercalls (Mohammed Gamal) [2172434] - x86/hyperv: Move VMCB enlightenment definitions to hyperv-tlfs.h (Mohammed Gamal) [2172434] - iommu/hyper-v: Allow hyperv irq remapping without x2apic (Mohammed Gamal) [2172434] - smp: Fix offline cpu check in flush_smp_call_function_queue() (Waiman Long) [2169471] - sched/fair: Trigger the update of blocked load on newly idle cpu (Waiman Long) [2169471] - redhat: rh-dist-git should depend on rh-srpm (Denys Vlasenko) - redhat: change kabi tarballs to use the package release (Denys Vlasenko) - redhat/Makefile: add variables used in rhel9 makefiles (Denys Vlasenko) - redhat/Makefile: Remove RHPRODUCT variable (Denys Vlasenko) - redhat/scripts/rh-dist-git.sh: expand sources from srpm (Denys Vlasenko) - redhat: remove GL_DISTGIT_USER, RHDISTGIT and unify dist-git cloning (Denys Vlasenko) - redhat/scripts/rh-dist-git.sh: Use Makefile variables (Denys Vlasenko) - redhat: fix typo and make the output more silent for dist-git sync (Denys Vlasenko) - redhat: add initial support for centos stream dist-git sync on Makefiles (Denys Vlasenko) - internal: update RHEL_MINOR for the start of RHEL-8.9 development (Denys Vlasenko) - watchdog: diag288_wdt: fix __diag288() inline assembly (Tobias Huschle) [2171361] - watchdog: diag288_wdt: do not use stack buffers for hardware data (Tobias Huschle) [2171361] - bonding: add documentation for peer_notif_delay (Ryosuke Yasuoka) [2171348] - net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2166787] - crypto: des - disallow des3 in FIPS mode (Vladis Dronov) [2175234] - self-tests: more rps self tests (Paolo Abeni) [2168878] - net: make default_rps_mask a per netns attribute (Paolo Abeni) [2168878] - self-tests: introduce self-tests for RPS default mask (Paolo Abeni) [2168878] - net: introduce default_rps_mask netns attribute (Paolo Abeni) [2168878] - net-sysctl: factor-out rpm mask manipulation helpers (Paolo Abeni) [2168878] - net-sysctl: factor out cpumask parsing helper (Paolo Abeni) [2168878] - txhash: Make rethinking txhash behavior configurable via sysctl (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in rx_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in netdev_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: fix netdev_queue_add_kobject() breakage (Paolo Abeni) [2168878] - net-sysfs: Fix reference count leak in rx|netdev_queue_add_kobject (Paolo Abeni) [2168878] - ice/ptp: fix the PTP worker retrying indefinitely if the link went down (Petr Oros) [2166392] - ice: reschedule ice_ptp_wait_for_offset_valid during reset (Petr Oros) [2166392] - ice: make Tx and Rx vernier offset calibration independent (Petr Oros) [2166392] - ice: only check set bits in ice_ptp_flush_tx_tracker (Petr Oros) [2166392] - ice: handle flushing stale Tx timestamps in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: cleanup allocations in ice_ptp_alloc_tx_tracker (Petr Oros) [2166392] - ice: protect init and calibrating check in ice_ptp_request_ts (Petr Oros) [2166392] - ice: check Tx timestamp memory register for ready timestamps (Petr Oros) [2166392] - ice: handle discarding old Tx requests in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: always call ice_ptp_link_change and make it void (Petr Oros) [2166392] - ice: fix misuse of "link err" with "link status" (Petr Oros) [2166392] - ice: Reset TS memory for all quads (Petr Oros) [2166392] - ice: Remove the E822 vernier "bypass" logic (Petr Oros) [2166392] - ice: Use more generic names for ice_ptp_tx fields (Petr Oros) [2166392] - ice: Merge pin initialization of E810 and E810T adapters (Petr Oros) [2166392] - ice: Check if reset in progress while waiting for offsets (Petr Oros) [2166392] - NFS: Judge the file access cache's timestamp in rcu path (Benjamin Coddington) [2161321] - redhat: switch to z-stream for 8.8 (Lucas Zampieri)- net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2166787] - crypto: des - disallow des3 in FIPS mode (Vladis Dronov) [2175234] - self-tests: more rps self tests (Paolo Abeni) [2168878] - net: make default_rps_mask a per netns attribute (Paolo Abeni) [2168878] - self-tests: introduce self-tests for RPS default mask (Paolo Abeni) [2168878] - net: introduce default_rps_mask netns attribute (Paolo Abeni) [2168878] - net-sysctl: factor-out rpm mask manipulation helpers (Paolo Abeni) [2168878] - net-sysctl: factor out cpumask parsing helper (Paolo Abeni) [2168878] - txhash: Make rethinking txhash behavior configurable via sysctl (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in rx_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in netdev_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: fix netdev_queue_add_kobject() breakage (Paolo Abeni) [2168878] - net-sysfs: Fix reference count leak in rx|netdev_queue_add_kobject (Paolo Abeni) [2168878]- ice/ptp: fix the PTP worker retrying indefinitely if the link went down (Petr Oros) [2166392] - ice: reschedule ice_ptp_wait_for_offset_valid during reset (Petr Oros) [2166392] - ice: make Tx and Rx vernier offset calibration independent (Petr Oros) [2166392] - ice: only check set bits in ice_ptp_flush_tx_tracker (Petr Oros) [2166392] - ice: handle flushing stale Tx timestamps in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: cleanup allocations in ice_ptp_alloc_tx_tracker (Petr Oros) [2166392] - ice: protect init and calibrating check in ice_ptp_request_ts (Petr Oros) [2166392] - ice: check Tx timestamp memory register for ready timestamps (Petr Oros) [2166392] - ice: handle discarding old Tx requests in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: always call ice_ptp_link_change and make it void (Petr Oros) [2166392] - ice: fix misuse of "link err" with "link status" (Petr Oros) [2166392] - ice: Reset TS memory for all quads (Petr Oros) [2166392] - ice: Remove the E822 vernier "bypass" logic (Petr Oros) [2166392] - ice: Use more generic names for ice_ptp_tx fields (Petr Oros) [2166392] - ice: Merge pin initialization of E810 and E810T adapters (Petr Oros) [2166392] - ice: Check if reset in progress while waiting for offsets (Petr Oros) [2166392] - NFS: Judge the file access cache's timestamp in rcu path (Benjamin Coddington) [2161321] - redhat: switch to z-stream for 8.8 (Lucas Zampieri)- cpufreq: intel_pstate: Add Sapphire Rapids support in no-HWP mode (Prarit Bhargava) [2170564]- igb: Initialize mailbox message for VF reset (Corinna Vinschen) [2103948] - igb: Allocate MSI-X vector when testing (Corinna Vinschen) [2103948] - igb: Proactively round up to kmalloc bucket size (Corinna Vinschen) [2103948] - igb: Do not free q_vector unless new one was allocated (Corinna Vinschen) [2103948] - ptp: introduce helpers to adjust by scaled parts per million (Corinna Vinschen) [2103948] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Corinna Vinschen) [2103948] - net: ethernet: move from strlcpy with unused retval to strscpy (Corinna Vinschen) [2103948] - igb: convert .adjfreq to .adjfine (Corinna Vinschen) [2103948] - ASoC: Intel: soc-acpi: add configuration for variant of 0C11 product (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add configuration for variant of 0C40 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: use common helpers for all Realtek amps (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C11 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C4F product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C40 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C10 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw_rt1316: add BQ params for the Dell models (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw_rt1308: add BQ params for the Dell models (Jaroslav Kysela) [2100582] - ASoC: intel: sof_sdw: add rt1318 codec support. (Jaroslav Kysela) [2100582] - ASoC: rt1318: Add RT1318 SDCA vendor-specific driver (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: update codec addr on 0C11/0C4F product (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add SKU 0C11 SoundWire configuration (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add SKU 0C40 SoundWire configuration (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add SKU 0C10 SoundWire configuration (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi-intel-rpl-match: add rpl_sdca_3_in_1 support (Jaroslav Kysela) [2100582]- net: ena: Update NUMA TPH hint register upon NUMA node update (Petr Oros) [2167316] - net: ena: Set default value for RX interrupt moderation (Petr Oros) [2167316] - net: ena: Fix rx_copybreak value update (Petr Oros) [2167316] - net: ena: Use bitmask to indicate packet redirection (Petr Oros) [2167316] - net: ena: Account for the number of processed bytes in XDP (Petr Oros) [2167316] - net: ena: Don't register memory info on XDP exchange (Petr Oros) [2167316] - net: ena: Fix toeplitz initial hash value (Petr Oros) [2167316] - net: ena: Fix error handling in ena_init() (Petr Oros) [2167316] - net: sched: disallow noqueue for qdisc classes (Xin Long) [2168282] {CVE-2022-47929} - net: sched: cbq: dont intepret cls results when asked to drop (Xin Long) [2168327] {CVE-2023-23454} - sctp: do not check hb_timer.expires when resetting hb_timer (Xin Long) [2133092] - arm64: Add AMPERE1 to the Spectre-BHB affected list (Mark Salter) [2140727] - net: mana: Fix accessing freed irq affinity_hint (Emanuele Giuseppe Esposito) [2168969] - net: mana: Assign interrupts to CPUs based on NUMA nodes (Emanuele Giuseppe Esposito) [2168969] - Revert "RDMA/irdma: Report the correct link speed" (Kamal Heib) [2143088] - Documentation/sysctl: document page_lock_unfairness (Nico Pache) [2165737] {CVE-2022-3623} - mm: allow a controlled amount of unfairness in the page lock (Nico Pache) [2165737] {CVE-2022-3623} - mm/hugetlb: fix races when looking up a CONT-PTE/PMD size hugetlb page (Nico Pache) [2165737] {CVE-2022-3623} - mm/migration: fix potential pte_unmap on an not mapped pte (Nico Pache) [2165737] {CVE-2022-3623} - mm/migrate.c: rework migration_entry_wait() to not take a pageref (Nico Pache) [2165737] {CVE-2022-3623} - mm: make wait_on_page_writeback() wait for multiple pending writebacks (Nico Pache) [2165737] {CVE-2022-3623} - mm: rewrite wait_on_page_bit_common() logic (Nico Pache) [2165737] {CVE-2022-3623} - mm/gup.c: use is_vm_hugetlb_page() to check whether to follow huge (Nico Pache) [2165737] {CVE-2022-3623}- perf/x86/amd: Fix crash due to race between amd_pmu_enable_all, perf NMI and throttling (Michael Petlan) [2085282] - x86/perf: Fix snapshot_branch_stack warning in VM (Michael Petlan) [2085282] - perf/x86/amd/core: Fix reloading events for SVM (Michael Petlan) [2085282 2086722] - perf/x86/amd: Run AMD BRS code only on supported hw (Michael Petlan) [2085282] - perf/x86/amd: Fix AMD BRS period adjustment (Michael Petlan) [2085282] - perf/x86/amd: Remove unused variable 'hwc' (Michael Petlan) [2085282] - perf/ibs: Fix comment (Michael Petlan) [2085282] - perf report: Add tools/arch/x86/include/asm/amd-ibs.h (Michael Petlan) [2085282] - perf/amd/ibs: Advertise zen4_ibs_extensions as pmu capability attribute (Michael Petlan) [2085282] - perf/amd/ibs: Add support for L3 miss filtering (Michael Petlan) [2085282] - perf/amd/ibs: Use ->is_visible callback for dynamic attributes (Michael Petlan) [2085282] - perf/amd/ibs: Cascade pmu init functions' return value (Michael Petlan) [2085282] - perf/amd/ibs: Use interrupt regs ip for stack unwinding (Michael Petlan) [2085282] - perf/x86/amd/core: Add PerfMonV2 overflow handling (Michael Petlan) [2085282 2086722] - perf/x86/amd/core: Add PerfMonV2 counter control (Michael Petlan) [2085282 2086722] - perf/x86/amd/core: Detect available counters (Michael Petlan) [2085282 2086722] - perf/x86/amd/core: Detect PerfMonV2 support (Michael Petlan) [2085282 2086722] - x86/msr: Add PerfCntrGlobal* registers (Michael Petlan) [2085282 2086722] - x86/cpufeatures: Add PerfMonV2 feature bit (Michael Petlan) [2085282 2086722] - perf/x86: Unify format of events sysfs show (Michael Petlan) [2085282] - perf/x86/amd: Add idle hooks for branch sampling (Michael Petlan) [2085282] - perf: Enable branch record for software events (Michael Petlan) [2085282] - redhat/configs: Enable AMD Zen3 branch sampling by default (Michael Petlan) [2085282] - perf/x86/amd: Make Zen3 branch sampling opt-in (Michael Petlan) [2085282] - perf/x86/amd: Add AMD branch sampling period adjustment (Michael Petlan) [2085282] - perf/x86/amd: Enable branch sampling priv level filtering (Michael Petlan) [2085282] - perf/x86/amd: Add branch-brs helper event for Fam19h BRS (Michael Petlan) [2085282] - perf/x86/amd: Add AMD Fam19h Branch Sampling support (Michael Petlan) [2085282] - perf/x86/amd/ibs: Add bitfield definitions in new header (Michael Petlan) [2085282] - perf/amd/uncore: Allow the driver to be built as a module (Michael Petlan) [2085282] - perf/amd/uncore: Clean up header use, use module_list from nf_tables_exit_net() (Florian Westphal) [2134371] - netfilter: nf_tables: fix nft_counters_enabled underflow at nf_tables_addchain() (Florian Westphal) [2134371] - netfilter: nf_tables: do not leave chain stats enabled on error (Florian Westphal) [2134371] - ipvs: use explicitly signed chars (Florian Westphal) [2134371] - netfilter: nf_tables: release flow rule object from commit path (Florian Westphal) [2134371] - netfilter: nf_tables: fix percpu memory leak at nf_tables_addchain() (Florian Westphal) [2134371] - netfilter: nf_tables: clean up hook list when offload flags check fails (Florian Westphal) [2134371] - netfilter: br_netfilter: Drop dst references before setting. (Florian Westphal) [2134371] - netfilter: nft_tproxy: restrict to prerouting hook (Florian Westphal) [2134371] - netfilter: ebtables: fix memory leak when blob is malformed (Florian Westphal) [2134371] - netfilter: ebtables: reject blobs that don't provide all entry points (Florian Westphal) [2134371] - netfilter: nf_tables: check NFT_SET_CONCAT flag if field_count is specified (Florian Westphal) [2134371] - netfilter: nf_tables: relax NFTA_SET_ELEM_KEY_END set flags requirements (Florian Westphal) [2134371] - netfilter: nf_tables: NFTA_SET_ELEM_KEY_END requires concat and interval flags (Florian Westphal) [2134371] - netfilter: nf_tables: validate NFTA_SET_ELEM_OBJREF based on NFT_SET_OBJECT flag (Florian Westphal) [2134371] - netfilter: nf_tables: possible module reference underflow in error path (Florian Westphal) [2134371] - netfilter: nf_tables: disallow NFTA_SET_ELEM_KEY_END with NFT_SET_ELEM_INTERVAL_END flag (Florian Westphal) [2134371] - netfilter: nf_tables: use READ_ONCE and WRITE_ONCE for shared generation id access (Florian Westphal) [2134371] - netfilter: nf_tables: fix null deref due to zeroed list head (Florian Westphal) [2134371]- bnxt_en: fix memory leak in bnxt_nvm_test() (Ken Cox) [2112186] - bnxt_en: Fix HDS and jumbo thresholds for RX packets (Ken Cox) [2112186] - bnxt_en: Fix first buffer size calculations for XDP multi-buffer (Ken Cox) [2112186] - bnxt_en: Fix XDP RX path (Ken Cox) [2112186] - bnxt_en: Simplify bnxt_xdp_buff_init() (Ken Cox) [2112186] - bnxt: prevent skb UAF after handing over to PTP worker (Ken Cox) [2112186] - bnxt_en: fix flags to check for supported fw version (Ken Cox) [2112186] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2112186] - bnxt_en: fix NQ resource accounting during vf creation on 57500 chips (Ken Cox) [2112186] - bnxt_en: set missing reload flag in devlink features (Ken Cox) [2112186] - bnxt_en: Use PAGE_SIZE to init buffer when multi buffer XDP is not in use (Ken Cox) [2112186] - bnxt_en: Remove duplicated include bnxt_devlink.c (Ken Cox) [2112186] - bnxt_en: implement callbacks for devlink selftests (Ken Cox) [2112186] - bnxt_en: Fix bnxt_refclk_read() (Ken Cox) [2112186] - bnxt_en: fix livepatch query (Ken Cox) [2112186] - bnxt_en: Fix bnxt_reinit_after_abort() code path (Ken Cox) [2112186] - bnxt_en: reclaim max resources if sriov enable fails (Ken Cox) [2112186] - bnxt: Use the bitmap API to allocate bitmaps (Ken Cox) [2112186] - bnxt: Fix typo in comments (Ken Cox) [2112186] - eth: bnxt: make ulp_id unsigned to make GCC 12 happy (Ken Cox) [2112186] - bnxt_en: Enable packet timestamping for all RX packets (Ken Cox) [2112186] - bnxt_en: Configure ptp filters during bnxt open (Ken Cox) [2112186] - bnxt_en: Update firmware interface to 1.10.2.95 (Ken Cox) [2112186] - bnxt: add page_pool support for aggregation ring when using xdp (Ken Cox) [2112186] - bnxt: change receive ring space parameters (Ken Cox) [2112186] - bnxt: rename bnxt_rx_pages to bnxt_rx_agg_pages_skb (Ken Cox) [2112186] - bnxt: refactor bnxt_rx_pages operate on skb_shared_info (Ken Cox) [2112186] - bnxt: add flag to denote that an xdp program is currently attached (Ken Cox) [2112186] - bnxt: refactor bnxt_rx_xdp to separate xdp_init_buff/xdp_prepare_buff (Ken Cox) [2112186] - bnxt: report header-data split state (Ken Cox) [2112186] - net: Don't include filter.h from net/sock.h (Ken Cox) [2112186] - ethernet: constify references to netdev->dev_addr in drivers (Ken Cox) [2112186] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2112186] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Ken Cox) [2112186] - bnxt_en: Use struct_group_attr() for memcpy() region (Ken Cox) [2112186] - net: don't include ethtool.h from netdevice.h (Ken Cox) [2112186] - treewide: Use fallthrough pseudo-keyword (Ken Cox) [2112186] - net: Use skb_frag_off accessors (Ken Cox) [2112186] - net: Use skb accessors in network drivers (Ken Cox) [2112186] - ethernet: remove redundant memset (Ken Cox) [2112186] - treewide: Add SPDX license identifier - Makefile/Kconfig (Ken Cox) [2112186]- ASoC: amd: renoir: Add a module parameter to influence pdm_gain (Jaroslav Kysela) [2169761] - ASoC: amd: renoir: Adjust the gain for PDM DMIC (Jaroslav Kysela) [2169761] - ASoC: amd: yc: Add a module parameter to influence pdm_gain (Jaroslav Kysela) [2169761] - ASoC: amd: yc: Adjust the gain for PDM DMIC (Jaroslav Kysela) [2169761] - genirq: Fix reference leaks on irq affinity notifiers (Ricardo Robaina) [2154842] - genirq: Prevent use-after-free and work list corruption (Ricardo Robaina) [2154842] - perf/x86/uncore: Don't WARN_ON_ONCE() for a broken discovery table (Michael Petlan) [2154044] - perf/x86/uncore: Add a quirk for UPI on SPR (Michael Petlan) [2154044] - perf/x86/uncore: Ignore broken units in discovery table (Michael Petlan) [2154044] - perf/x86/uncore: Fix potential NULL pointer in uncore_get_alias_name (Michael Petlan) [2154044] - perf/x86/uncore: Factor out uncore_device_to_die() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Support extra IMC channel on Ice Lake server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix CAS_COUNT_WRITE issue for ICX (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix IIO event constraints for Snowridge (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix IIO event constraints for Skylake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix filter_tid mask for CHA events on Skylake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix Intel ICX IIO event constraints (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in __uncore_imc_init_box() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in snr_uncore_mmio_map() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in hswep_has_limit_sbox() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in sad_cfg_iio_topology() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Make set_mapping() procedure void (Michael Petlan) [2154044] - perf/x86/intel/uncore: Update sysfs-devices-mapping file (Michael Petlan) [2154044] - perf/x86/intel/uncore: Enable UPI topology discovery for Sapphire Rapids (Michael Petlan) [2154044] - perf/x86/intel/uncore: Enable UPI topology discovery for Icelake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Get UPI NodeID and GroupID (Michael Petlan) [2154044] - perf/x86/intel/uncore: Enable UPI topology discovery for Skylake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Generalize get_topology() for SKX PMUs (Michael Petlan) [2154044] - perf/x86/intel/uncore: Disable I/O stacks to PMU mapping on ICX-D (Michael Petlan) [2154044] - perf/x86/intel/uncore: Clear attr_update properly (Michael Petlan) [2154044] - perf/x86/intel/uncore: Introduce UPI topology type (Michael Petlan) [2154044] - perf/x86/intel/uncore: Generalize IIO topology support (Michael Petlan) [2154044]- net/mlx4: Check retval of mlx4_bitmap_init (Amir Tzin) [2150787] - net/mlx4: Fix error check for dma_map_sg (Amir Tzin) [2150787] - net/mlx4_en: Fix wrong return value on ioctl EEPROM query failure (Amir Tzin) [2150787] - RDMA/mlx4: Avoid flush_scheduled_work() usage (Amir Tzin) [2150787] - net: mellanox: fix open-coded for_each_set_bit() (Amir Tzin) [2150787] - tracing: Add linear buckets to histogram logic (Jerome Marchand) [2161509] - configs/generic: enable CONFIG_RTC_SYSTOHC (Marcelo Tosatti) [2135417] - watchdog: fix UAF in reboot notifier handling in watchdog core code (Wander Lairson Costa) [2131308]- drm/i915/fbdev: do not create fbdev if HPD is suspended (Jocelyn Falempe) [2156006] - drm/i915/fbdev: suspend HPD before fbdev unregistration (Jocelyn Falempe) [2156006] - drm/i915/hpd: suspend MST at the end of intel_modeset_driver_remove (Jocelyn Falempe) [2156006] - drm/i915/gvt: fix vgpu debugfs clean in remove (Jocelyn Falempe) [2115903] - drm/i915/gvt: fix gvt debugfs destroy (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix kernel warning during topology setup (Jocelyn Falempe) [2115903] - Revert "drm/amd/display: Enable Freesync Video Mode by default" (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix double release compute pasid (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix kfd_process_device_init_vm error handling (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix size validation for non-exclusive domains (v4) (Jocelyn Falempe) [2115903] - drm/i915/gvt: fix double free bug in split_2MB_gtt_entry (Jocelyn Falempe) [2115903] - drm/i915: unpin on error in intel_vgpu_shadow_mm_pin() (Jocelyn Falempe) [2115903] - drm/amd/pm: correct the fan speed retrieving in PWM for some SMU13 asics (Jocelyn Falempe) [2115903] - drm/amd/pm: bump SMU13.0.0 driver_if header to version 0x34 (Jocelyn Falempe) [2115903] - drm/amd/pm: add missing SMU13.0.7 mm_dpm feature mapping (Jocelyn Falempe) [2115903] - drm/amd/pm: add missing SMU13.0.0 mm_dpm feature mapping (Jocelyn Falempe) [2115903] - drm/i915/migrate: Account for the reserved_space (Jocelyn Falempe) [2115903] - drm/i915: improve the catch-all evict to handle lock contention (Jocelyn Falempe) [2115903] - drm/amdgpu: make display pinning more flexible (v2) (Jocelyn Falempe) [2115903] - drm/amdgpu: handle polaris10/11 overlap asics (v2) (Jocelyn Falempe) [2115903] - drm/amd/display: Add DCN314 display SG Support (Jocelyn Falempe) [2115903] - drm/i915/ttm: consider CCS for backup objects (Jocelyn Falempe) [2115903] - drm/i915/dsi: fix VBT send packet port selection for dual link DSI (Jocelyn Falempe) [2115903] - drm/vmwgfx: Validate the box size for the snooped cursor (Jocelyn Falempe) [2115903] - drm/connector: send hotplug uevent on connector cleanup (Jocelyn Falempe) [2115903] - drm/amdgpu: fix mmhub register base coding error (Jocelyn Falempe) [2115903] - drm/amd/pm: correct SMU13.0.0 pstate profiling clock settings (Jocelyn Falempe) [2115903] - drm/amd/pm: update SMU13.0.0 reported maximum shader clock (Jocelyn Falempe) [2115903] - drm/amdgpu: skip MES for S0ix as well since it's part of GFX (Jocelyn Falempe) [2115903] - drm/amd/display: revert Disable DRR actions during state commit (Jocelyn Falempe) [2115903] - drm/amd/pm: avoid large variable on kernel stack (Jocelyn Falempe) [2115903] - drm/i915/display: Don't disable DDI/Transcoder when setting phy test pattern (Jocelyn Falempe) [2115903] - drm/sti: Fix return type of sti_{dvo,hda,hdmi}_connector_mode_valid() (Jocelyn Falempe) [2115903] - drm/fsl-dcu: Fix return type of fsl_dcu_drm_connector_mode_valid() (Jocelyn Falempe) [2115903] - drm/amd/display: Fix DTBCLK disable requests and SRC_SEL programming (Jocelyn Falempe) [2115903] - drm/amd/display: Use the largest vready_offset in pipe group (Jocelyn Falempe) [2115903] - drm/amd/display: fix array index out of bound error in bios parser (Jocelyn Falempe) [2115903] - drm/amd/display: Workaround to increase phantom pipe vactive in pipesplit (Jocelyn Falempe) [2115903] - drm/sti: Use drm_mode_copy() (Jocelyn Falempe) [2115903] - drm/amd/display: Disable DRR actions during state commit (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix type of second parameter in odn_edit_dpm_table() callback (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix type of second parameter in trans_msg() callback (Jocelyn Falempe) [2115903] - Revert "drm/amd/display: Limit max DSC target bpp for specific monitors" (Jocelyn Falempe) [2115903] - drm/edid: add a quirk for two LG monitors to get them to work on 10bpc (Jocelyn Falempe) [2115903] - drm/amd/display: prevent memory leak (Jocelyn Falempe) [2115903] - drm/i915/bios: fix a memory leak in generate_lfp_data_ptrs (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix memory leakage (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix PCI device refcount leak in amdgpu_atrm_get_bios() (Jocelyn Falempe) [2115903] - drm/radeon: Fix PCI device refcount leak in radeon_atrm_get_bios() (Jocelyn Falempe) [2115903] - amdgpu/nv.c: Corrected typo in the video capabilities resolution (Jocelyn Falempe) [2115903] - drm/amd/pm/smu11: BACO is supported when it's in BACO state (Jocelyn Falempe) [2115903] - drm/tegra: Add missing clk_disable_unprepare() in tegra_dc_probe() (Jocelyn Falempe) [2115903] - drm/i915/guc: make default_lists const data (Jocelyn Falempe) [2115903] - drm/amdgpu: fix pci device refcount leak (Jocelyn Falempe) [2115903] - drm/fourcc: Fix vsub/hsub for Q410 and Q401 (Jocelyn Falempe) [2115903] - amdgpu/pm: prevent array underflow in vega20_odn_edit_dpm_table() (Jocelyn Falempe) [2115903] - drm/radeon: Add the missed acpi_put_table() to fix memory leak (Jocelyn Falempe) [2115903] - drm/ttm: fix undefined behavior in bit shift for TTM_TT_FLAG_PRIV_POPULATED (Jocelyn Falempe) [2115903] - drm/panel/panel-sitronix-st7701: Remove panel on DSI attach failure (Jocelyn Falempe) [2115903] - drm/amd/display: wait for vblank during pipe programming (Jocelyn Falempe) [2115903] - drm/i915/guc: Fix GuC error capture sizing estimation and reporting (Jocelyn Falempe) [2115903] - drm/i915/guc: Add error-capture init warnings when needed (Jocelyn Falempe) [2115903] - drm/i915/guc: Make GuC log sizes runtime configurable (Jocelyn Falempe) [2115903] - drm/i915/guc: Fix capture size warning and bump the size (Jocelyn Falempe) [2115903] - drm/i915/guc: Add a helper for log buffer size (Jocelyn Falempe) [2115903] - drm/i915: Fix compute pre-emption w/a to apply to compute engines (Jocelyn Falempe) [2115903] - drm/i915/guc: Limit scheduling properties to avoid overflow (Jocelyn Falempe) [2115903] - drm/bridge: it6505: Initialize AUX channel in it6505_i2c_probe (Jocelyn Falempe) [2115903] - drm/amdgpu/powerplay/psm: Fix memory leak in power state init (Jocelyn Falempe) [2115903] - drm/bridge: adv7533: remove dynamic lane switching from adv7533 bridge (Jocelyn Falempe) [2115903] - drm/atomic-helper: Don't allocate new plane state in CRTC check (Jocelyn Falempe) [2115903] - drm/amdgpu/vcn: update vcn4 fw shared data structure (Jocelyn Falempe) [2115903] - drm: bridge: dw_hdmi: fix preference of RGB modes over YUV420 (Jocelyn Falempe) [2115903] - drm/bridge: ti-sn65dsi86: Fix output polarity setting bug (Jocelyn Falempe) [2115903] - drm/vmwgfx: Fix race issue calling pin_user_pages (Jocelyn Falempe) [2115903] - drm/shmem-helper: Avoid vm_open error paths (Jocelyn Falempe) [2115903] - drm/shmem-helper: Remove errant put in error path (Jocelyn Falempe) [2115903] - drm/amd/display: fix array index out of bound error in DCN32 DML (Jocelyn Falempe) [2115903] - drm/amdgpu/sdma_v4_0: turn off SDMA ring buffer in the s2idle suspend (Jocelyn Falempe) [2115903] - drm/vmwgfx: Don't use screen objects when SEV is active (Jocelyn Falempe) [2115903] - drm/amdgpu: fix use-after-free during gpu recovery (Jocelyn Falempe) [2115903] - drm/amd/display: Use new num clk levels struct for max mclk index (Jocelyn Falempe) [2115903] - drm/amd/display: Avoid setting pixel rate divider to N/A (Jocelyn Falempe) [2115903] - drm/amd/display: Use viewport height for subvp mall allocation size (Jocelyn Falempe) [2115903] - drm/i915: Remove non-existent pipes from bigjoiner pipe mask (Jocelyn Falempe) [2115903] - drm/i915: Never return 0 if not all requests retired (Jocelyn Falempe) [2115903] - drm/i915: Fix negative value passed as remaining time (Jocelyn Falempe) [2115903] - drm/amdgpu: enable Vangogh VCN indirect sram mode (Jocelyn Falempe) [2115903] - drm/amdgpu: temporarily disable broken Clang builds due to blown stack-frame (Jocelyn Falempe) [2115903] - drm/amd/pm: update driver if header for smu_13_0_7 (Jocelyn Falempe) [2115903] - drm/amd/pm: update driver-if header for smu_v13_0_10 (Jocelyn Falempe) [2115903] - drm/amd/pm: add smu_v13_0_10 driver if version (Jocelyn Falempe) [2115903] - drm/amdgpu: fix userptr HMM range handling v2 (Jocelyn Falempe) [2115903] - drm/amdgpu: cleanup error handling in amdgpu_cs_parser_bos (Jocelyn Falempe) [2115903] - drm/amdgpu: move setting the job resources (Jocelyn Falempe) [2115903] - drm/amdgpu: Partially revert "drm/amdgpu: update drm_display_info correctly when the edid is read" (Jocelyn Falempe) [2115903] - drm/amdgpu: always register an MMU notifier for userptr (Jocelyn Falempe) [2115903] - drm/amd/display: Update soc bounding box for dcn32/dcn321 (Jocelyn Falempe) [2115903] - drm/amd/amdgpu: reserve vm invalidation engine for firmware (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable Aldebaran devices to report CU Occupancy (Jocelyn Falempe) [2115903] - drm/amdgpu/psp: don't free PSP buffers on suspend (Jocelyn Falempe) [2115903] - drm/amd/display: No display after resume from WB/CB (Jocelyn Falempe) [2115903] - drm/amd/dc/dce120: Fix audio register mapping, stop triggering KASAN (Jocelyn Falempe) [2115903] - drm/display/dp_mst: Fix drm_dp_mst_add_affected_dsc_crtcs() return code (Jocelyn Falempe) [2115903] - drm/i915/ttm: never purge busy objects (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix a memory limit issue (Jocelyn Falempe) [2115903] - drm/amdgpu: disable BACO support on more cards (Jocelyn Falempe) [2115903] - drm/amd/display: use uclk pstate latency for fw assisted mclk validation dcn32 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix calculation for cursor CAB allocation (Jocelyn Falempe) [2115903] - drm/amd/display: Update MALL SS NumWays calculation (Jocelyn Falempe) [2115903] - drm/amd/display: Add debug option for allocating extra way for cursor (Jocelyn Falempe) [2115903] - drm/amd/display: Added debug option for forcing subvp num ways (Jocelyn Falempe) [2115903] - drm/amdkfd: update GFX11 CWSR trap handler (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable SA software trap. (Jocelyn Falempe) [2115903] - dma-buf: Use dma_fence_unwrap_for_each when importing fences (Jocelyn Falempe) [2115903] - dma-buf: fix racing conflict of dma_heap_add() (Jocelyn Falempe) [2115903] - drm/i915: Fix warn in intel_display_power_*_domain() functions (Jocelyn Falempe) [2115903] - drm/amd/display: only fill dirty rectangles when PSR is enabled (Jocelyn Falempe) [2115903] - drm/amdgpu: Drop eviction lock when allocating PT BO (Jocelyn Falempe) [2115903] - Revert "drm/amdgpu: Revert "drm/amdgpu: getting fan speed pwm for vega10 properly"" (Jocelyn Falempe) [2115903] - drm/amd/display: Fix gpio port mapping issue (Jocelyn Falempe) [2115903] - drm/amd/display: Fix FCLK deviation and tool compile issues (Jocelyn Falempe) [2115903] - drm/amd/display: Zeromem mypipe heap struct before using it (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Acer Switch V 10 (SW5-017) (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Nanote UMPC-01 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix prefetch calculations for dcn32 (Jocelyn Falempe) [2115903] - drm/amd/display: don't enable DRM CRTC degamma property for DCE (Jocelyn Falempe) [2115903] - drm/amd/display: Fix optc2_configure warning on dcn314 (Jocelyn Falempe) [2115903] - drm/amd/display: Support parsing VRAM info v3.0 from VBIOS (Jocelyn Falempe) [2115903] - drm/amd/display: Fix access timeout to DPIA AUX at boot time (Jocelyn Falempe) [2115903] - drm/amd/display: Add HUBP surface flip interrupt handler (Jocelyn Falempe) [2115903] - drm/amd/display: Fix invalid DPIA AUX reply causing system hang (Jocelyn Falempe) [2115903] - drm/display: Don't assume dual mode adaptors support i2c sub-addressing (Jocelyn Falempe) [2115903] - drm/amd/pm: fix SMU13 runpm hang due to unintentional workaround (Jocelyn Falempe) [2115903] - drm/amd/pm: enable runpm support over BACO for SMU13.0.0 (Jocelyn Falempe) [2115903] - drm/amd/pm: enable runpm support over BACO for SMU13.0.7 (Jocelyn Falempe) [2115903] - drm: Fix potential null-ptr-deref in drm_vblank_destroy_worker() (Jocelyn Falempe) [2115903] - drm/drv: Fix potential memory leak in drm_dev_init() (Jocelyn Falempe) [2115903] - drm/panel: simple: set bpc field for logic technologies displays (Jocelyn Falempe) [2115903] - drm/amd/display: Investigate tool reported FCLK P-state deviations (Jocelyn Falempe) [2115903] - drm/amd/display: Round up DST_after_scaler to nearest int (Jocelyn Falempe) [2115903] - drm/amd/display: Use forced DSC bpp in DML (Jocelyn Falempe) [2115903] - drm/amd/display: Fix DCN32 DSC delay calculation (Jocelyn Falempe) [2115903] - drm/amd: Fail the suspend if resources can't be evicted (Jocelyn Falempe) [2115903] - drm/amdgpu: set fb_modifiers_not_supported in vkms (Jocelyn Falempe) [2115903] - drm/amd/display: Enable timing sync on DCN32 (Jocelyn Falempe) [2115903] - drm/amd/display: Ignore Cable ID Feature (Jocelyn Falempe) [2115903] - drm/imx: imx-tve: Fix return type of imx_tve_connector_mode_valid (Jocelyn Falempe) [2115903] - drm/scheduler: fix fence ref counting (Jocelyn Falempe) [2115903] - drm/amd/display: Don't return false if no stream (Jocelyn Falempe) [2115903] - drm/amd/display: Remove wrong pipe control lock (Jocelyn Falempe) [2115903] - drm/amdgpu: Adjust MES polling timeout for sriov (Jocelyn Falempe) [2115903] - drm/amdkfd: Migrate in CPU page fault use current mm (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix error handling in kfd_criu_restore_events (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix error handling in criu_checkpoint (Jocelyn Falempe) [2115903] - drm/amdgpu: disable BACO on special BEIGE_GOBY card (Jocelyn Falempe) [2115903] - drm/amdgpu: workaround for TLB seq race (Jocelyn Falempe) [2115903] - drm/amd/display: Update SR watermarks for DCN314 (Jocelyn Falempe) [2115903] - drm/amd/pm: update SMU IP v13.0.4 msg interface header (Jocelyn Falempe) [2115903] - drm/amd/display: Fix reg timeout in enc314_enable_fifo (Jocelyn Falempe) [2115903] - drm/i915/dmabuf: fix sg_table handling in map_dma_buf (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix the lpfn checking condition in drm buddy (Jocelyn Falempe) [2115903] - drm/i915: Do not set cache_dirty for DGFX (Jocelyn Falempe) [2115903] - drm/i915/psr: Send update also on invalidate (Jocelyn Falempe) [2115903] - drm/vc4: Fix missing platform_unregister_drivers() call in vc4_drm_register() (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix NULL pointer dereference in svm_migrate_to_ram() (Jocelyn Falempe) [2115903] - drm/amdkfd: handle CPU fault on COW mapping (Jocelyn Falempe) [2115903] - drm/amd/display: Set memclk levels to be at least 1 for dcn32 (Jocelyn Falempe) [2115903] - drm/amd/display: Limit dcn32 to 1950Mhz display clock (Jocelyn Falempe) [2115903] - drm/amd/display: Acquire FCLK DPM levels on DCN32 (Jocelyn Falempe) [2115903] - drm/i915/sdvo: Grab mode_config.mutex during LVDS init to avoid WARNs (Jocelyn Falempe) [2115903] - drm/i915: Simplify intel_panel_add_edid_alt_fixed_modes() (Jocelyn Falempe) [2115903] - drm/i915: Allow more varied alternate fixed modes for panels (Jocelyn Falempe) [2115903] - drm/i915/sdvo: Setup DDC fully before output init (Jocelyn Falempe) [2115903] - drm/i915/sdvo: Filter out invalid outputs more sensibly (Jocelyn Falempe) [2115903] - drm/amd/display: Update DSC capabilitie for DCN314 (Jocelyn Falempe) [2115903] - drm/amd/display: Update latencies on DCN321 (Jocelyn Falempe) [2115903] - drm/amdgpu: disable GFXOFF during compute for GFX11 (Jocelyn Falempe) [2115903] - drm/i915: stop abusing swiotlb_max_segment (Jocelyn Falempe) [2115903] - drm/rockchip: fix fbdev on non-IOMMU devices (Jocelyn Falempe) [2115903] - drm/rockchip: dw_hdmi: filter regulator -EPROBE_DEFER error messages (Jocelyn Falempe) [2115903] - drm/amdgpu: dequeue mes scheduler during fini (Jocelyn Falempe) [2115903] - drm/amdgpu: Program GC registers through RLCG interface in gfx_v11/gmc_v11 (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix type of reset_type parameter in hqd_destroy() callback (Jocelyn Falempe) [2115903] - drm/amd/pm: skip loading pptable from driver on secure board for smu_v13_0_10 (Jocelyn Falempe) [2115903] - drm/amdgpu: set vm_update_mode=0 as default for Sienna Cichlid in SRIOV case (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix memory leak in kfd_mem_dmamap_userptr() (Jocelyn Falempe) [2115903] - drm/i915/dp: Reset frl trained flag before restarting FRL training (Jocelyn Falempe) [2115903] - drm/i915/dgfx: Keep PCI autosuspend control 'on' by default on all dGPU (Jocelyn Falempe) [2115903] - drm/bridge: ps8640: Add back the 50 ms mystery delay after HPD (Jocelyn Falempe) [2115903] - drm/msm: Fix return type of mdp4_lvds_connector_mode_valid (Jocelyn Falempe) [2115903] - drm/msm/hdmi: fix memory corruption with too many bridges (Jocelyn Falempe) [2115903] - drm/msm/dsi: fix memory corruption with too many bridges (Jocelyn Falempe) [2115903] - drm/amdkfd: correct the cache info for gfx1036 (Jocelyn Falempe) [2115903] - drm/amdkfd: update gfx1037 Lx cache setting (Jocelyn Falempe) [2115903] - drm/amd/display: Revert logic for plane modifiers (Jocelyn Falempe) [2115903] - drm/amdgpu: fix pstate setting issue (Jocelyn Falempe) [2115903] - drm/amdgpu: disallow gfxoff until GC IP blocks complete s2idle resume (Jocelyn Falempe) [2115903] - drm/amdgpu: Remove ATC L2 access for MMHUB 2.1.x (Jocelyn Falempe) [2115903] - drm/i915: Extend Wa_1607297627 to Alderlake-P (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix for BO move issue (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix VRAM BO swap issue (Jocelyn Falempe) [2115903] - drm/vc4: Add module dependency on hdmi-codec (Jocelyn Falempe) [2115903] - drm/amdgpu: fix sdma doorbell init ordering on APUs (Jocelyn Falempe) [2115903] - drm/amd/pm: update SMU IP v13.0.4 driver interface version (Jocelyn Falempe) [2115903] - drm/amd/pm: fulfill SMU13.0.0 cstate control interface (Jocelyn Falempe) [2115903] - drm/amd/pm: disable cstate feature for gpu reset scenario (Jocelyn Falempe) [2115903] - drm/amd/pm: add SMU IP v13.0.4 IF version define to V7 (Jocelyn Falempe) [2115903] - drm/amd/pm: fulfill SMU13.0.7 cstate control interface (Jocelyn Falempe) [2115903] - drm/i915/bios: Use hardcoded fp_timing size for generating LFP data pointers (Jocelyn Falempe) [2115903] - drm/i915/bios: Validate fp_timing terminator presence (Jocelyn Falempe) [2115903] - drm/amd/display: Fix build breakage with CONFIG_DEBUG_FS=n (Jocelyn Falempe) [2115903] - Revert "drm/amd/display: correct hostvm flag" (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix UBSAN shift-out-of-bounds warning (Jocelyn Falempe) [2115903] - drm/amd/display: polling vid stream status in hpo dp blank (Jocelyn Falempe) [2115903] - drm/amd/display: Remove interface for periodic interrupt 1 (Jocelyn Falempe) [2115903] - drm/dp: Don't rewrite link config when setting phy test pattern (Jocelyn Falempe) [2115903] - drm/amdgpu: fix initial connector audio value (Jocelyn Falempe) [2115903] - drm/amd/display: correct hostvm flag (Jocelyn Falempe) [2115903] - drm/amd/display: Fix urgent latency override for DCN32/DCN321 (Jocelyn Falempe) [2115903] - drm/amdgpu: SDMA update use unlocked iterator (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Aya Neo Air (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Anbernic Win600 (Jocelyn Falempe) [2115903] - drm/vc4: vec: Fix timings for VEC modes (Jocelyn Falempe) [2115903] - drm/admgpu: Skip CG/PG on SOC21 under SRIOV VF (Jocelyn Falempe) [2115903] - drm/amdgpu: Skip the program of MMMC_VM_AGP_* in SRIOV on MMHUB v3_0_0 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix variable dereferenced before check (Jocelyn Falempe) [2115903] - drm: bridge: dw_hdmi: only trigger hotplug event on link change (Jocelyn Falempe) [2115903] - drm/amd: fix potential memory leak (Jocelyn Falempe) [2115903] - udmabuf: Set ubuf->sg = NULL if the creation of sg table fails (Jocelyn Falempe) [2115903] - drm/amd/display: fix overflow on MIN_I64 definition (Jocelyn Falempe) [2115903] - gpu: lontium-lt9611: Fix NULL pointer dereference in lt9611_connector_init() (Jocelyn Falempe) [2115903] - drm: Prevent drm_copy_field() to attempt copying a NULL pointer (Jocelyn Falempe) [2115903] - drm: Use size_t type for len variable in drm_copy_field() (Jocelyn Falempe) [2115903] - drm/nouveau/nouveau_bo: fix potential memory leak in nouveau_bo_alloc() (Jocelyn Falempe) [2115903] - virtio-gpu: fix shift wrapping bug in virtio_gpu_fence_event_create() (Jocelyn Falempe) [2115903] - drm/vmwgfx: Fix memory leak in vmw_mksstat_add_ioctl() (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix memory leak in hpd_rx_irq_create_workqueue() (Jocelyn Falempe) [2115903] - drm/bochs: fix blanking (Jocelyn Falempe) [2115903] - drm/virtio: set fb_modifiers_not_supported (Jocelyn Falempe) [2115903] - drm/bridge: it6505: Fix the order of DP_SET_POWER commands (Jocelyn Falempe) [2115903] - drm/bridge: megachips: Fix a null pointer dereference bug (Jocelyn Falempe) [2115903] - drm/amdgpu: add missing pci_disable_device() in amdgpu_pmops_runtime_resume() (Jocelyn Falempe) [2115903] - drm: fix drm_mipi_dbi build errors (Jocelyn Falempe) [2115903] - drm/panel: use 'select' for Ili9341 panel driver helpers (Jocelyn Falempe) [2115903] - drm/virtio: Fix same-context optimization (Jocelyn Falempe) [2115903] - drm/i915/dg2: Bump up CDCLK for DG2 (Jocelyn Falempe) [2115903] - drm/dp_mst: fix drm_dp_dpcd_read return value checks (Jocelyn Falempe) [2115903] - drm/format-helper: Fix test on big endian architectures (Jocelyn Falempe) [2115903] - drm/bridge: parade-ps8640: Fix regulator supply order (Jocelyn Falempe) [2115903] - drm/bridge: tc358767: Add of_node_put() when breaking out of loop (Jocelyn Falempe) [2115903] - drm/bridge: anx7625: Fix refcount bug in anx7625_parse_dt() (Jocelyn Falempe) [2115903] - drm/virtio: Correct drm_gem_shmem_get_sg_table() error handling (Jocelyn Falempe) [2115903] - drm/bridge: it6505: Power on downstream device in .atomic_enable (Jocelyn Falempe) [2115903] - drm/mipi-dsi: Detach devices when removing the host (Jocelyn Falempe) [2115903] - drm/bridge: Avoid uninitialized variable warning (Jocelyn Falempe) [2115903] - drm: bridge: adv7511: unregister cec i2c device after cec adapter (Jocelyn Falempe) [2115903] - drm: bridge: adv7511: fix CEC power down control register offset (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable F32_WPTR_POLL_ENABLE in mqd (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable VCN PG on GC11_0_1 (Jocelyn Falempe) [2115903] - drm/amd/display: explicitly disable psr_feature_enable appropriately (Jocelyn Falempe) [2115903] - drm/amd/display: Add HUBP surface flip interrupt handler (Jocelyn Falempe) [2115903] - drm/amd/display: Fix vblank refcount in vrr transition (Jocelyn Falempe) [2115903] - drm/amd/display: Enable 2 to 1 ODM policy if supported (Jocelyn Falempe) [2115903] - drm/amd/display: Enable dpia support for dcn314 (Jocelyn Falempe) [2115903] - drm/amd/display: Validate DSC After Enable All New CRTCs (Jocelyn Falempe) [2115903] - drm/amd/display: zeromem mypipe heap struct before using it (Jocelyn Falempe) [2115903] - drm/amd/display: Update PMFW z-state interface for DCN314 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix watermark calculation (Jocelyn Falempe) [2115903] - drm/i915: Fix display problems after resume (Jocelyn Falempe) [2115903] - drm/i915/guc: Fix revocation of non-persistent contexts (Jocelyn Falempe) [2115903] - drm/i915/gt: Use i915_vm_put on ppgtt_create error paths (Jocelyn Falempe) [2115903] - drm/nouveau: fix a use-after-free in nouveau_gem_prime_import_sg_table() (Jocelyn Falempe) [2115903] - drm/udl: Restore display mode on resume (Jocelyn Falempe) [2115903] - drm/virtio: Use appropriate atomic state in virtio_gpu_plane_cleanup_fb() (Jocelyn Falempe) [2115903] - drm/virtio: Unlock reservations on dma_resv_reserve_fences() error (Jocelyn Falempe) [2115903] - drm/virtio: Unlock reservations on virtio_gpu_object_shmem_init() error (Jocelyn Falempe) [2115903] - drm/virtio: Check whether transferred 2D BO is shmem (Jocelyn Falempe) [2115903] - Revert "drm/amdgpu: use dirty framebuffer helper" (Jocelyn Falempe) [2115903]- nvme: fix SRCU protection of nvme_ns_head list (Ewan D. Milne) [2113865] - perf vendor events power10: Fix hv-24x7 metric events (Mamatha Inamdar) [2149192] - perf tests: Fix 'perf probe' error log check in skip_if_no_debuginfo (Mamatha Inamdar) [2149192] - perf tests: Fix *probe_vfs_getname.sh test failures (Mamatha Inamdar) [2149192] - blk-cgroup: Optimize blkcg_rstat_flush() (Waiman Long) [2162173] - blk-cgroup: Return -ENOMEM directly in blkcg_css_alloc() error path (Waiman Long) [2162173] - blk-cgroup: factor out blkcg_iostat_update() (Waiman Long) [2162173] - mm/memcg: Free percpu stats memory of dying memcg's again (Waiman Long) [2162173] - memcg: sync flush only if periodic flush is delayed (Waiman Long) [2162173] - memcg: better bounds on the memcg stats updates (Waiman Long) [2162173] - memcg: unify memcg stat flushing (Waiman Long) [2162173] - memcg: flush stats only if updated (Waiman Long) [2162173] - memcg: flush lruvec stats in the refault (Waiman Long) [2162173] - memcg: infrastructure to flush memcg stats (Waiman Long) [2162173] - memcg: switch lruvec stats to rstat (Waiman Long) [2162173] - mm/memcg: Remove mem_cgroup_per_node from being kABI protected (Waiman Long) [2162173] - mm/memcg: Revert "Free percpu stats memory of dying memcg's" (Waiman Long) [2162173]- virt/sev-guest: Prevent IV reuse in the SNP guest driver (John Allen) [2087262] - virt/sev-guest: Add a MODULE_ALIAS (John Allen) [2087262] - virt/sev-guest: Remove unnecessary free in init_crypto() (John Allen) [2087262] - x86/sev: Don't use cc_platform_has() for early SEV-SNP calls (John Allen) [2087262] - x86/boot: Don't propagate uninitialized boot_params->cc_blob_address (John Allen) [2087262] - x86/idt: Rework IDT setup for boot CPU (John Allen) [2087262] - x86/cpu: Init AP exception handling from cpu_init_secondary() (John Allen) [2087262] - x86/idt: Cleanup trap_init() (John Allen) [2087262] - x86/idt: Annotate alloc_intr_gate() with __init (John Allen) [2087262] - redhat/configs: enable CONFIG_SEV_GUEST (John Allen) [2087262] - virt: sev-guest: Pass the appropriate argument type to iounmap() (John Allen) [2087262] - x86/compressed/64: Add identity mappings for setup_data entries (John Allen) [2087262] - x86/sev: Mark the code returning to user space as syscall gap (John Allen) [2087262] - x86/sev: Annotate stack change in the #VC handler (John Allen) [2087262] - x86/sev: Remove duplicated assignment to variable info (John Allen) [2087262] - x86/sev: Fix address space sparse warning (John Allen) [2087262] - x86/sev: Get the AP jump table address from secrets page (John Allen) [2087262] - x86/sev: Add missing __init annotations to SEV init routines (John Allen) [2087262] - virt: sevguest: Rename the sevguest dir and files to sev-guest (John Allen) [2087262] - virt: sevguest: Change driver name to reflect generic SEV support (John Allen) [2087262] - x86/boot: Put globals that are accessed early into the .data section (John Allen) [2087262] - x86/boot: Add an efi.h header for the decompressor (John Allen) [2087262] - virt: sevguest: Fix bool function returning negative value (John Allen) [2087262] - virt: sevguest: Fix return value check in alloc_shared_pages() (John Allen) [2087262] - x86/sev: Unroll string mmio with CC_ATTR_GUEST_UNROLL_STRING_IO (John Allen) [2087262] - x86/sev-es: Replace open-coded hlt-loop with sev_es_terminate() (John Allen) [2087262] - virt: sevguest: Add documentation for SEV-SNP CPUID Enforcement (John Allen) [2087262] - virt: sevguest: Add support to get extended report (John Allen) [2087262] - virt: sevguest: Add support to derive key (John Allen) [2087262] - virt: Add SEV-SNP guest driver (John Allen) [2087262] - x86/sev: Register SEV-SNP guest request platform device (John Allen) [2087262] - x86/sev: Provide support for SNP guest request NAEs (John Allen) [2087262] - x86/sev: Add a sev= cmdline option (John Allen) [2087262] - x86/sev: Use firmware-validated CPUID for SEV-SNP guests (John Allen) [2087262] - x86/sev: Add SEV-SNP feature detection/setup (John Allen) [2087262] - x86/sev: Check SME/SEV support in CPUID first (John Allen) [2087262] - x86/compressed/64: Add identity mapping for Confidential Computing blob (John Allen) [2087262] - x86/compressed: Export and rename add_identity_map() (John Allen) [2087262] - x86/compressed: Use firmware-validated CPUID leaves for SEV-SNP guests (John Allen) [2087262] - x86/compressed: Add SEV-SNP feature detection/setup (John Allen) [2087262] - x86/boot: Add a pointer to Confidential Computing blob in bootparams (John Allen) [2087262] - x86/boot: Preserve boot_params.secure_boot from sanitizing (John Allen) [2087262] - x86/boot: Fix boot regression caused by bootparam sanitizing (John Allen) [2087262] - x86/boot: Save fields explicitly, zero out everything else (John Allen) [2087262] - x86/compressed/64: Add support for SEV-SNP CPUID table in #VC handlers (John Allen) [2087262] - x86/sev: Move MSR-based VMGEXITs for CPUID to helper (John Allen) [2087262] - KVM: x86: Move lookup of indexed CPUID leafs to helper (John Allen) [2087262] - x86/boot: Add Confidential Computing type to setup_data (John Allen) [2087262] - x86/compressed/acpi: Move EFI kexec handling into common code (John Allen) [2087262] - x86/compressed/acpi: Move EFI vendor table lookup to helper (John Allen) [2087262] - x86/compressed/acpi: Move EFI config table lookup to helper (John Allen) [2087262] - x86/compressed/acpi: Move EFI system table lookup to helper (John Allen) [2087262] - x86/compressed/acpi: Move EFI detection to helper (John Allen) [2087262] - x86/head/64: Re-enable stack protection (John Allen) [2087262] - x86/sev: Use SEV-SNP AP creation to start secondary CPUs (John Allen) [2087262] - x86/apic/of: Fix CPU devicetree-node lookups (John Allen) [2087262] - x86/mm: Validate memory when changing the C-bit (John Allen) [2087262] - x86/kernel: Validate ROM memory before accessing when SEV-SNP is active (John Allen) [2087262] - x86/kernel: Mark the .bss..decrypted section as shared in the RMP table (John Allen) [2087262] - x86/sev: Add helper for validating pages in early enc attribute changes (John Allen) [2087262] - x86/sev: Register GHCB memory when SEV-SNP is active (John Allen) [2087262] - x86/compressed: Register GHCB memory when SEV-SNP is active (John Allen) [2087262] - x86/compressed: Add helper for validating pages in the decompression stage (John Allen) [2087262] - x86/sev: Check the VMPL level (John Allen) [2087262] - x86/sev: Add a helper for the PVALIDATE instruction (John Allen) [2087262] - x86/sev: Check SEV-SNP features support (John Allen) [2087262] - x86/mm: Extend cc_attr to include AMD SEV-SNP (John Allen) [2087262] - x86/sev: Detect/setup SEV/SME features earlier in boot (John Allen) [2087262] - x86/compressed/64: Detect/setup SEV/SME features earlier during boot (John Allen) [2087262] - x86/boot: Use MSR read/write helpers instead of inline assembly (John Allen) [2087262] - x86/boot: Introduce helpers for MSR reads/writes (John Allen) [2087262] - KVM: SVM: Update the SEV-ES save area mapping (John Allen) [2087262] - KVM: SVM: Create a separate mapping for the GHCB save area (John Allen) [2087262] - KVM: SVM: Create a separate mapping for the SEV-ES save area (John Allen) [2087262] - KVM: SVM: Define sev_features and VMPL field in the VMSA (John Allen) [2087262] - x86/sev: Remove do_early_exception() forward declarations (John Allen) [2087262] - x86/sev: Make the #VC exception stacks part of the default stacks storage (John Allen) [2087262] - x86: Increase exception stack sizes (John Allen) [2087262] - x86/head64: Carve out the guest encryption postprocessing into a helper (John Allen) [2087262] - x86/sev: Get rid of excessive use of defines (John Allen) [2087262] - x86/sev: Add defines for GHCB version 2 MSR protocol requests (John Allen) [2087262] - x86/sev: Make sure IRQs are disabled while GHCB is active (John Allen) [2087262] - x86/sev: Propagate #GP if getting linear instruction address failed (John Allen) [2087262] - x86/insn: Extend error reporting from insn_fetch_from_user[_inatomic]() (John Allen) [2087262] - x86/sev-es: Convert to insn_decode() (John Allen) [2087262] - x86/sev-es: Split vc_decode_insn() (John Allen) [2087262] - x86/insn-eval: Make 0 a valid RIP for insn_get_effective_ip() (John Allen) [2087262] - x86/sev: Fix error message in runtime #VC handler (John Allen) [2087262] - x86/sev-es: Optimize __sev_es_ist_enter() for better readability (John Allen) [2087262] - x86/sev: Do not require Hypervisor CPUID bit for SEV guests (John Allen) [2087262] - x86/boot/compressed/64: Cleanup exception handling before booting kernel (John Allen) [2087262] - x86/sev-es: Remove subtraction of res variable (John Allen) [2087262]- net: mlx5: eliminate anonymous module_init & module_exit (Amir Tzin) [2157750] - net/mlx5: E-switch, Fix switchdev mode after devlink reload (Amir Tzin) [2157750] - net/mlx5e: Set decap action based on attr for sample (Amir Tzin) [2157750] - net/mlx5e: QoS, Fix wrongfully setting parent_element_id on MODIFY_SCHEDULING_ELEMENT (Amir Tzin) [2157750] - net/mlx5: E-switch, Fix setting of reserved fields on MODIFY_SCHEDULING_ELEMENT (Amir Tzin) [2157750] - net/mlx5e: Avoid false lock dependency warning on tc_ht even more (Amir Tzin) [2157750] - net/mlx5: fix missing mutex_unlock in mlx5_fw_fatal_reporter_err_work() (Amir Tzin) [2157750] - net/mlx5: Fix ptp max frequency adjustment range (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Fix child PKEY interface stats on rx path (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Block PKEY interfaces with less rx queues than parent (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Block queue count configuration when sub interfaces are present (Amir Tzin) [2157750] - net/mlx5e: Verify dev is present for fix features ndo (Amir Tzin) [2157750] - net/mlx5: Fix command stats access after free (Amir Tzin) [2157750] - net/mlx5e: TC, Keep mod hdr actions after mod hdr alloc (Amir Tzin) [2157750] - net/mlx5: check attr pointer validity before dereferencing it (Amir Tzin) [2157750] - RDMA/mlx5: Fix validation of max_rd_atomic caps for DC (Amir Tzin) [2157750] - RDMA/mlx5: Fix mlx5_ib_get_hw_stats when used for device (Amir Tzin) [2157750] - net/mlx5e: Set geneve_tlv_option_0_exist when matching on geneve option (Amir Tzin) [2157750] - net/mlx5e: Fix hw mtu initializing at XDP SQ allocation (Amir Tzin) [2157750] - net/mlx5e: Always clear dest encap in neigh-update-del (Amir Tzin) [2157750] - net/mlx5e: CT: Fix ct debugfs folder name (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Don't allow CQE compression to be turned on by default (Amir Tzin) [2157750] - net/mlx5: Fix RoCE setting at HCA level (Amir Tzin) [2157750] - net/mlx5: Avoid recovery in probe flows (Amir Tzin) [2157750] - net/mlx5: Fix io_eq_size and event_eq_size params validation (Amir Tzin) [2157750] - net/mlx5: Add forgotten cleanup calls into mlx5_init_once() error path (Amir Tzin) [2157750] - net/mlx5: E-Switch, properly handle ingress tagged packets on VST (Amir Tzin) [2157750 2096109] - dm thin: Use last transaction's pmd->root when commit failed (Benjamin Marzinski) [2162537] - dm thin: resume even if in FAIL mode (Benjamin Marzinski) [2162537] - dm cache: set needs_check flag after aborting metadata (Benjamin Marzinski) [2162537] - dm cache: Fix ABBA deadlock between shrink_slab and dm_cache_metadata_abort (Benjamin Marzinski) [2162537] - dm thin: Fix ABBA deadlock between shrink_slab and dm_pool_abort_metadata (Benjamin Marzinski) [2162537] - dm integrity: Fix UAF in dm_integrity_dtr() (Benjamin Marzinski) [2162537] - dm cache: Fix UAF in destroy() (Benjamin Marzinski) [2162537] - dm thin: Fix UAF in run_timer_softirq() (Benjamin Marzinski) [2162537] - dm integrity: clear the journal on suspend (Benjamin Marzinski) [2162537] - dm integrity: flush the journal on suspend (Benjamin Marzinski) [2162537] - dm bufio: Fix missing decrement of no_sleep_enabled if dm_bufio_client_create failed (Benjamin Marzinski) [2162537] - dm ioctl: fix misbehavior if list_versions races with module loading (Benjamin Marzinski) [2162537]- net: gso: fix panic on frag_list with mixed head alloc types (Jiri Benc) [2136229] - futex: Resend potentially swallowed owner death notification (Rafael Aquini) [2161526] - Bluetooth: L2CAP: Fix memory leak in vhci_write (Wander Lairson Costa) [2155872] {CVE-2022-3619} - net: Use this_cpu_inc() to increment net->core_stats (Antoine Tenart) [2152542] - vlan: fix memory leak in vlan_newlink() (Xin Long) [2051415] - vlan: move dev_put into vlan_dev_uninit (Xin Long) [2051415] - vlan: introduce vlan_dev_free_egress_priority (Xin Long) [2051415] - vlan: fix memory leak in vlan_dev_set_egress_priority (Xin Long) [2051415] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2103956] - intel/ixgbevf:fix repeated words in comments (Ken Cox) [2103956] - intel: remove unused macros (Ken Cox) [2103956] - ixgbe: propagate XFRM offload state direction instead of flags (Ken Cox) [2103956] - ixgbevf: add disable link state (Ken Cox) [2103956] - ixgbevf: clean up some inconsistent indenting (Ken Cox) [2103956] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Ken Cox) [2103956] - intel: Remove rcu_read_lock() around XDP program invocation (Ken Cox) [2103956]- RDMA/siw: Always consume all skbuf data in sk_data_ready() upcall. (Kamal Heib) [2141420] - cifs: fix use-after-free caused by invalid pointer `hostname` (Ronnie Sahlberg) [2154172] - ceph: blocklist the kclient when receiving corrupted snap trace (Xiubo Li) [2162414] - ceph: move mount state enum to super.h (Xiubo Li) [2162414] - xfs: estimate post-merge refcounts correctly (Bill O'Donnell) [2161678] - xfs: hoist refcount record merge predicates (Bill O'Donnell) [2161678] - NFS: Fix revalidation of empty readdir pages (Benjamin Coddington) [2166364] - NFS: Don't deadlock when cookie hashes collide (Benjamin Coddington) [2166364] - locking/rwsem: Disable preemption in all down_read*() and up_read() code paths (Waiman Long) [2162139] - locking/rwsem: Prevent non-first waiter from spinning in down_write() slowpath (Waiman Long) [2162139] - locking/rwsem: Allow slowpath writer to ignore handoff bit if not set by first waiter (Waiman Long) [2162139] - locking/rwsem: Always try to wake waiters in out_nolock path (Waiman Long) [2162139] - locking/rwsem: No need to check for handoff bit if wait queue empty (Waiman Long) [2162139] - locking/rwsem: Make handoff bit handling more consistent (Waiman Long) [2162139] - dax: fix ENOMEM handling in grab_mapping_entry() (Andrey Albershteyn) [2128474] - crypto: ccp - Failure on re-initialization due to duplicate sysfs filename (Vladis Dronov) [2130714] - crypto: ccp - Avoid page allocation failure warning for SEV_GET_ID2 (Vladis Dronov) [2130714] - crypto: ccp - Add support for TEE for PCI ID 0x14CA (Vladis Dronov) [2130714] - crypto: ccp - Remove unused struct ccp_crypto_cpu (Vladis Dronov) [2130714] - crypto: ccp - Add __init/__exit annotations to module init/exit funcs (Vladis Dronov) [2130714] - i40e: Fix the inability to attach XDP program on downed interface (Ivan Vecera) [2121511] - mm, compaction: fix fast_isolate_around() to stay within boundaries (Daniel Vacek) [2149309]- aio: fix mremap after fork null-deref (Jeff Moyer) [2166088] - mm/hugetlb: use hugetlb_pte_stable in migration race check (Rafael Aquini) [2158120] {CVE-2022-3522} - mm/hugetlb: fix race condition of uffd missing/minor handling (Rafael Aquini) [2158120] {CVE-2022-3522} - mm/hugetlb: simplify the code when alloc_huge_page() failed in hugetlb_no_page() (Rafael Aquini) [2158120] {CVE-2022-3522} - mm/hugetlb: pass the old pte entry value to hugetlb_no_page() (Rafael Aquini) [2158120] {CVE-2022-3522} - perf/arm-cmn: Add more bits to child node address offset field (Charles Mirabile) [2122267] - perf/arm-cmn: Decode CAL devices properly in debugfs (Charles Mirabile) [2122267] - perf/arm-cmn: Fix filter_sel lookup (Charles Mirabile) [2122267] - drivers/perf: arm_spe: Expose saturating counter to 16-bit (Charles Mirabile) [2122267] - perf/arm-cmn: Add CMN-700 support (Charles Mirabile) [2122267] - perf/arm-cmn: Refactor occupancy filter selector (Charles Mirabile) [2122267] - perf/arm-cmn: Add CMN-650 support (Charles Mirabile) [2122267] - perf: check return value of armpmu_request_irq() (Charles Mirabile) [2122267] - arm_pmu: Validate single/group leader events (Charles Mirabile) [2122267] - perf: qcom_l2_pmu: fix an incorrect NULL check on list iterator (Charles Mirabile) [2122267] - drivers/perf: arm_pmu: Handle 47 bit counters (Charles Mirabile) [2122267] - perf/arm-cmn: Update watchpoint format (Charles Mirabile) [2122267] - perf/arm-cmn: Hide XP PUB events for CMN-600 (Charles Mirabile) [2122267] - perf: replace bitmap_weight with bitmap_empty where appropriate (Charles Mirabile) [2122267] - perf: Replace acpi_bus_get_device() (Charles Mirabile) [2122267] - perf/arm-cmn: Make arm_cmn_debugfs static (Charles Mirabile) [2122267] - perf/arm-ccn: Use platform_get_irq() to get the interrupt (Charles Mirabile) [2122267] - perf/smmuv3: Don't cast parameter in bit operations (Charles Mirabile) [2122267] - perf/smmuv3: Use msi_get_virq() (Charles Mirabile) [2122267] - perf/smmuv3: Synthesize IIDR from CoreSight ID registers (Charles Mirabile) [2122267] - perf/arm-cmn: Add debugfs topology info (Charles Mirabile) [2122267] - perf/arm-cmn: Add CI-700 Support (Charles Mirabile) [2122267] - perf/arm-cmn: Support new IP features (Charles Mirabile) [2122267] - devres: provide devm_krealloc() (Charles Mirabile) [2122267] - devres: move the size check from alloc_dr() into a separate function (Charles Mirabile) [2122267] - perf/arm-cmn: Demarcate CMN-600 specifics (Charles Mirabile) [2122267] - perf/arm-cmn: Move group validation data off-stack (Charles Mirabile) [2122267] - perf/arm-cmn: Optimise DTC counter accesses (Charles Mirabile) [2122267] - perf/arm-cmn: Optimise DTM counter reads (Charles Mirabile) [2122267] - perf/arm-cmn: Refactor DTM handling (Charles Mirabile) [2122267] - perf/arm-cmn: Streamline node iteration (Charles Mirabile) [2122267] - perf/arm-cmn: Refactor node ID handling (Charles Mirabile) [2122267] - perf/arm-cmn: Drop compile-test restriction (Charles Mirabile) [2122267] - perf/arm-cmn: Account for NUMA affinity (Charles Mirabile) [2122267] - perf/arm-cmn: Fix CPU hotplug unregistration (Charles Mirabile) [2122267] - drivers/perf: thunderx2_pmu: Change data in size tx2_uncore_event_update() (Charles Mirabile) [2122267] - perf: qcom_l2_pmu: move to use request_irq by IRQF_NO_AUTOEN flag (Charles Mirabile) [2122267] - arm_pmu: move to use request_irq by IRQF_NO_AUTOEN flag (Charles Mirabile) [2122267] - arm64: perf: Fix 64-bit event counter read truncation (Charles Mirabile) [2122267] - drivers/perf: Replace spin_lock_irqsave to spin_lock (Charles Mirabile) [2122267] - arm_pmu: arm64: Use NMIs for PMU (Charles Mirabile) [2122267] - arm_pmu: Introduce pmu_irq_ops (Charles Mirabile) [2122267] - arm64: perf: Defer irq_work to IPI_IRQ_WORK (Charles Mirabile) [2122267] - arm64: perf: Remove PMU locking (Charles Mirabile) [2122267] - arm64: perf: Avoid PMXEV* indirection (Charles Mirabile) [2122267] - arm64: perf: Add missing ISB in armv8pmu_enable_counter() (Charles Mirabile) [2122267] - perf: arm_spe: Remove unnecessary zero check on 'nr_pages' (Charles Mirabile) [2122267] - drivers/perf: arm_pmu_acpi: Fix incorrect checking of gicc pointer (Charles Mirabile) [2122267] - perf/smmuv3: Use platform_get_irq_optional() for wired interrupt (Charles Mirabile) [2122267]- wifi: rtw89: Add missing check for alloc_workqueue (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: fix potential leak in rtw89_append_probe_req_ie() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix initialization of rx->link and rx->link_sta (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Drop stations iterator where the iterator function may sleep (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: use proper statements in conditionals (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix MLO + AP_VLAN check (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix coverity uninit_use_in_call in mt76_connac2_reverse_frag0_hdr_trans() (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: Add checks for nla_nest_start() in nl80211_send_iface() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: Add missing __packed annotation of struct mt7921_clc (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: do not send firmware FW_FEATURE_NON_DL region (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Fix use after rcu_read_unlock in rtl8xxxu_bss_info_changed (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: fix physts IE page check (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix wrong power after multiple SAR set (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: Fix some error handling path in rtw89_core_sta_assoc() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: use u32_encode_bits() to fill MAC quota value (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix reporting of TX AGGR histogram (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix ifdef symbol name (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix firmware assert during bandwidth change for peer sta (Jose Ignacio Tornos Martinez) [2136125] - Revert "mt76: use IEEE80211_OFFLOAD_ENCAP_ENABLED instead of MT_DRV_AMSDU_OFFLOAD" (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: gen2: Turn on the rate control (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix warning in dma_free_coherent() of memory chunks while recovery (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: check link ID in auth/assoc continuation (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: fix null-ptr deref on failed assoc (Jose Ignacio Tornos Martinez) [2136125] - wifi: fix multi-link element subelement iteration (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix antenna signal are way off in monitor mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac8021: fix possible oob access in ieee80211_get_rate_duration (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: don't allow multi-BSSID in S1G (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix buffer overflow in elem comparison (Jose Ignacio Tornos Martinez) [2136125] - net: mhi: Fix memory leak in mhi_net_dellink() (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix QCN9074 firmware boot on x86 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Set TWT Information Frame Disabled bit as 1 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Fix ack frame idr leak when mesh has no route (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix general-protection-fault in ieee80211_subif_start_xmit() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: fix debugfs attribute ps with rc table support (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Fix bitrates overflow issue (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix memory leak in query_regdb_file() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix memory free error when registering wiphy fail (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: silence a sparse RCU warning (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: use explicitly signed or unsigned types (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: mac: fix reading 16 bytes from a region of size 0 warning (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix rx checksum offload on mt7615/mt7915/mt7921 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix receiving LLC packets on mt7615/mt7915 (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: update hidden BSSes to avoid WARN_ON (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix crash in beacon protection for P2P-device (Jose Ignacio Tornos Martinez) [2136125 2134582] {CVE-2022-42722} - wifi: mac80211_hwsim: avoid mac80211 warning on bad rate (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: avoid nontransmitted BSS list corruption (Jose Ignacio Tornos Martinez) [2136125 2134511] {CVE-2022-42721} - wifi: cfg80211: fix BSS refcounting bugs (Jose Ignacio Tornos Martinez) [2136125 2134460] {CVE-2022-42720} - wifi: cfg80211: ensure length byte is present before access (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix MBSSID parsing use-after-free (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211/mac80211: reject bad MBSSID elements (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix u8 overflow in cfg80211_update_notlisted_nontrans() (Jose Ignacio Tornos Martinez) [2136125 2134385] {CVE-2022-41674} - wifi: nl80211: Split memcpy() of struct nl80211_wowlan_tcp_data_token flexible array (Jose Ignacio Tornos Martinez) [2136125] - wifi: wext: use flex array destination for memcpy() (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix ieee80211_data_to_8023_exthdr handling of small packets (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: netdev compatible TX stop for iTXQ drivers (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix decap offload for stations on AP_VLAN interfaces (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: unlock on error in ieee80211_can_powered_addr_change() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: remove/avoid misleading prints (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix probe req HE capabilities access (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: do not drop packets smaller than the LLC-SNAP header on fast-rx (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix rate reporting / throughput regression on mt7915 and newer (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Improve rtl8xxxu_queue_select (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Fix AIFS written to REG_EDCA_*_PARAM (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: gen2: Enable 40 MHz channel width (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852b: configure DLE mem (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: check DLE FIFO size with reserved size (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: mac: correct register of report IMR (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: set power cut closed for 8852be (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: add to do PCI auto calibration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852b: implement chip_ops::{enable,disable}_bb_rf (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add DMA busy checking bits to chip info (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: mac: define DMA channel mask to avoid unsupported channels (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: mask out unsupported TX channels (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: Track scan_cmd allocation size explicitly (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: Remove the call to "dtim_assoc" IOVAR (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: increase dcmd maximum buffer size (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: Support 89459 pcie (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: increase default max WOWL patterns to 16 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix deadlock during WoWLAN suspend (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Remove redundant ath11k_mac_drain_tx (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add spectral scan support for 160 MHz (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add support to get power save duration for each client (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix peer addition/deletion error on sta band migration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for enable/disable MSDU aggregation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: disable 26-tone RU HE TB PPDU transmissions (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for processing P2P power saving (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support WMM-PS in P2P GO mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: set wifi_role of P2P (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: send OFDM rate only in P2P mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support P2P (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: correctly set BBP register 86 for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: set SoC wmac clock register (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: set VGC gain for both chains of MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: set correct TX_SW_CFG1 MAC register for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: fix HT20/HT40 bandwidth switch on MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: move helper functions up in file (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add TX LOFT calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: don't run Rt5592 IQ calibration on MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add RXIQ calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add RXDCOC calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add r calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add RF self TXDC calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: move up and reuse busy wait functions (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add support for external PA on MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add throughput LED trigger (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: define RF5592 in init_eeprom routine (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix number of VHT beamformee spatial streams (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: retrieve MAC address from system firmware if provided (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: add get_txpower mac ops (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: move firmware stats out of debugfs (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: fix repeated the words in a comment (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: fix repeated to words in a comment (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: reset pointer after memory free to avoid potential use-after-free (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix failed to find the peer with peer_id 0 when disconnected (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: change complete() to complete_all() for scan.completed (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: update coexistence to 6.3.0 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add logic to control BT scan priority (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: summarize Wi-Fi to BT scoreboard and inform BT one time a cycle (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: modify LNA2 setting to avoid BT destroyed Wi-Fi aggregation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add WL_S0 hardware TX/RX mask to allow WL_S0 TX/RX during GNT_BT (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add v1 Wi-Fi firmware steps report (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add v1 summary info to parse the traffic status from firmware (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: translate slot ID to readable name (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add v1 cycle report to parsing Bluetooth A2DP status (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: fix array of flexible structures warnings (Jose Ignacio Tornos Martinez) [2136125] - wifi: rndis_wlan: fix array of flexible structures warning (Jose Ignacio Tornos Martinez) [2136125] - mwifiex: fix sleep in atomic context bugs caused by dev_coredumpv (Jose Ignacio Tornos Martinez) [2136125] - bus: mhi: host: pci_generic: Add a secondary AT port to Telit FN990 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add WoW support for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Include STA_KEEPALIVE_ARP_RESPONSE TLV header by default (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: Fix "Error - Attempt to send packet over invalid queue 2" (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: add multi-port ID to TX descriptor (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: fix rx filter after scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: free unused skb to prevent memory leak (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: reset halt registers before turn on wifi CPU (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: update LTR settings (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: mac: set NAV upper to 25ms (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: initialize DMA of CMAC (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support SER L1 simulation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: support fw crash simulation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: introudce functions to drop packets (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: unify use of rtw89_h2c_tx() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: concentrate control function of TX DMA channel (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: correct enable functions of HCI/PCI DMA (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: L1 DMA reset has offloaded to FW (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for setting TID specific configuration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for setting HE GI and LTF (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: show connecting state in debug message (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Combine set grant WL/BT and correct the debug log (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Remove trace_step at COEX-MECH control structure for RTL8852C (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Parsing Wi-Fi firmware TDMA info from reports (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Parsing Wi-Fi firmware error message from reports (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Move coexistence firmware buffer size parameter to chip info (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Add v1 Wi-Fi firmware power-saving null data report (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: use void pointer as temporal type to copy report (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4378 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Support PCIe core revisions >= 64 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: msgbuf: Increase RX ring sizes to 1024 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: firmware: Allow platform to override macaddr (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Perform firmware selection for Apple platforms (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: of: Fetch Apple properties (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Read Apple OTP information (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: firmware: Support passing in multiple board_types (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie/sdio/usb: Get CLM blob via standard firmware mechanism (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: firmware: Handle per-board clm_blob files (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: d3: parse keys from wowlan info notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: iterate over interfaces after an assert in d3 (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: trigger resume flow before wait for notifications (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add handling for scan offload match info notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: enable resume based on notifications (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add support for d3 end notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add support for wowlan wake packet notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add support for wowlan info notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: don't check D0I3 version (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: cfg: remove IWL_DEVICE_BZ_COMMON macro (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: refactor iwl_mvm_set_sta_rate() a bit (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: rxmq: further unify some VHT/HE code (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: rxmq: refactor mac80211 rx_status setting (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: fix typo in struct iwl_rx_no_data API (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: pcie: add support for BZ devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix kernel-doc issues (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix miscellaneous spelling errors (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: Fix miscellaneous spelling errors (Jose Ignacio Tornos Martinez) [2136125] - bus: mhi: host: always print detected modem name (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921s: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7663s: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921e: fix random fw download fail (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: introduce Country Location Control support (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921e: fix rmmod crash in driver reload test (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: reset msta->airtime_ac while clearing up hw value (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: do not check state before configuring implicit beamform (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix uninitialized pointer in mt7921_mac_fill_rx (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: fix mcs value in ht mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: get rid of the false positive reset (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: connac: fix in comment (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: add PPDU based TxS support for WED device (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: move move mt76_sta_stats to mt76_wcid (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix the firmware version report (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: add mt7921_mutex_acquire at mt7921_sta_set_decap_offload (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: add mt7921_mutex_acquire at mt7921_[start, stop]_ap (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt76_usb.mt76u_mcu.burst is always false remove related code (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7663s: add rx_check callback (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: connac: fix possible unaligned access in mt76_connac_mcu_add_nested_tlv (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: fix possible unaligned access in mt7915_mac_add_twt_setup (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7615: add mt7615_mutex_acquire/release in mt7615_sta_set_decap_offload (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: fix transmitting packet hangs (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: add rx_check callback for sdio devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: delete stray if statement (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix use after free in mt7921_acpi_read() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: fix an uninitialized variable bug (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: poll sta stat when device transmits data (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: fix the deadlock caused by sdio->stat_work (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: move mt7921_rx_check and mt7921_queue_rx_skb in mac.c (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921u: remove unnecessary MT76_STATE_SUSPEND (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921u: fix race issue between reset and suspend/resume (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921s: fix race issue between reset and suspend/resume (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921e: fix race issue between reset and suspend/resume (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: add rx_check callback for usb devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: testmode: use random payload for tx packets (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: connac: introduce mt76_connac_reg_map structure (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Remove copy-paste leftover in gen2_update_rate_mask (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: gen2: Fix mistake in path B IQ calibration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: split scan including lots of channels (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: support hw_scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: call tx_wake notify for 8852c in deep ps mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support deep ps mode for rtw8852c (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: set response rate selection (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: set TX to single path TX on path B in 6GHz band (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: enlarge polling timeout of RX DCK (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: enable the interference cancellation of MU-MIMO on 6GHz (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add DIG register struct to share common algorithm (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support TX diversity for 1T2R chipset (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: record signal strength per RF path (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: configure TX path via H2C command (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: parse phycap of TX/RX antenna number (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: use u32_get_bits to access C2H content of PHY capability (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Increase TCL data ring size for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add multi TX ring support for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Enable threaded NAPI (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: mhi: fix potential memory leak in ath11k_mhi_register() (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: implement SRAM dump debugfs interface (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Split PCI write/read functions (Jose Ignacio Tornos Martinez) [2136125] - ath11k: Enable remain-on-channel support on WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: fix endian annotations in casts (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: fix endian conversion (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: mark a variable unused (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Fix skb misuse in TX queue selection (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: remove redundant variable err (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: add 43439 SDIO ids and initialization (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Simplify the error handling code (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: Fix comment typo (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Add DMI nvram filename quirk for Chuwi Hi8 Pro tablet (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Use ISO3166 country code and rev 0 as fallback on 43430 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix use-after-free bug in brcmf_netdev_start_xmit() (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: calib: Refactor iwl_calib_result usage for clarity (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: always activate all links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: implement link switching (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: keep A-MSDU data in sta and per-link (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set up beacon timing config on links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: add vif/sta link RCU dereference macros (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: send NDP for link (de)activation (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: extend ieee80211_nullfunc_get() for MLO (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: track active STA links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: skip inactive links on TX (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: add ieee80211_find_sta_by_link_addrs API (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: isolate driver from inactive links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: make smps_mode per-link (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use correct rx link_sta instead of default (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set link_sta in reorder timeout (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: fix multi-channel handling in netlink RX (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: call drv_sta_state() under sdata_lock() in reconfig (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: add MLD address to assoc BSS entries (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: refactor QoS settings code (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: warn on invalid link address (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix double SW scan stop (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: assign link address correctly (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: move link code to a new file (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: refactor RX a bit (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: check STA magic in change_sta_links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: remove unused arg to ieee80211_chandef_eht_oper (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: remove multicast workaround (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: remove redundant err variable (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Support POWERED_ADDR_CHANGE feature (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: Add POWERED_ADDR_CHANGE feature (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: prevent 4-addr use on MLDs (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: prevent VLANs on MLDs (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add support to connect to non-transmit MBSSID profiles (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix hardware restart failure due to twt debugfs failure (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add TWT debugfs support for STA interface (Jose Ignacio Tornos Martinez) [2136125] - wifi: move from strlcpy with unused retval to strscpy (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add missing destroy_workqueue() on error path in rtw_core_init() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: tighten bounds checking in rtl8xxxu_read_efuse() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: declare to support beamformee above bandwidth 80MHz (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: correct polling address of address CAM (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: no HTC field if TX rate might fallback to legacy (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: correct TX resource checking in low power mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: fix interrupt stuck after leaving low power mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: enlarge the CFO tracking boundary (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: correct suspend/resume setting for variant chips (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: enable CLK_REQ, ASPM, L1 and L1ss for 8852c (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: fix PCI PHY auto adaption by using software restore (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: set TBTT shift configuration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add retry to change power_mode state (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: correct BA CAM allocation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: initialize and correct BA CAM content (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: declare correct BA CAM number (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: update TX power tables to R49 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: update RF radio A/B parameters to R49 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: TX power limit/limit_ru consider negative (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Update Wi-Fi driver/firmware TDMA cycle report for RTL8852c (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Add v1 Wi-Fi SCC coexistence policy (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Move _set_policy to chip_ops (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: update WL role info v1 for RTL8852C branch using (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Add v1 version TDMA format and parameters (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Define BT B1 slot length (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Add logic to parsing rtl8852c firmware type ctrl report (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Move Wi-Fi firmware coexistence matching version to chip (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: update radio state for RTL8852A/RTL8852C (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852c: adjust mactxen delay of mac/phy interface (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852c: modify PCIE prebkf time (Jose Ignacio Tornos Martinez) [2136125] - rtw89: ser: leave lps with mutex (Jose Ignacio Tornos Martinez) [2136125] - rtw89: declare support HE HTC always (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852a: update HW setting on BB (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852c: disable dma during mac init (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: declare support for mac80211 chanctx ops by chip (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add skeleton of mac80211 chanctx ops support (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: introduce entity mode and its recalculated prototype (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: initialize entity and configure default chandef (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: concentrate chandef setting to stack callback (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: concentrate parameter control for setting channel callback (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: rfk: concentrate parameter control while set_channel() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: txpwr: concentrate channel related control to top (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: create rtw89_chan centrally to avoid breakage (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: re-arrange channel related stuffs under HAL (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: introduce rtw89_chan for channel stuffs (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: rewrite decision on channel by entity state (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add cold boot calibration support on WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix incorrect QMI message ID mappings (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Register shutdown handler for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: avoid uninit memory read in ath9k_htc_rx_msg() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix potential deadlock in ieee80211_key_link() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix uninitialized use of primary channel index (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use full 'unsigned int' type (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: move from strlcpy with unused retval to strscpy (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: read ethtool's sta_stats from sinfo (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: correct SMPS mode in HE 6 GHz capability (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Add link_id to cfg80211_ch_switch_started_notify() (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: send MLO links channel info in GET_INTERFACE (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: allow bw change during channel switch in mesh (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: clean up a needless assignment in ieee80211_sta_activate_link() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: allow link address A2 in TXQ dequeue (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix control port frame addressing (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set link ID in TX info for beacons (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: fix link change handling (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: maintain link_id in link_sta (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211/mac80211: check EHT capability size correctly (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: split iftype data into AP/non-AP (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: don't add empty EML capabilities (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use link ID for MLO in queued frames (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use the corresponding link for stats update (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: add link information in ieee80211_rx_status (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: properly implement MLO key handling (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Add link_id parameter to various key operations for MLO (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Prevent cfg80211_wext_siwencodeext() on MLD (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: reject connect response with MLO params for WEP (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix use-after-free (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use link in TXQ parameter configuration (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: add link id to txq params (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set link BSSID (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: get correct AP link chandef (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Update RNR parsing to align with Draft P802.11be_D2.0 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: properly set old_links when removing a link (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: accept STA changes without link changes (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: prohibit enter IPS during HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add flag check before enter or leave IPS (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add flushing queue before HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix WARNING:rtw_get_tx_power_params() during HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add the update channel flow to support setting by parameters (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add mutex when set regulatory and get Tx power table (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add mutex when set SAR (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Fix to add skb free for TIM update info when tx is completed (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Fix to add brcmf_clear_assoc_ies when rmmod (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix invalid address access when enabling SCAN log level (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix scheduling while atomic issue when deleting flowring (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix continuous 802.1x tx pending timeout error (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: add peer map clean up for peer delete in ath10k_sta_state() (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: Set tx credit to one for WCN3990 snoc based devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852a: correct WDE IMR settings (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: refine leaving LPS function (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtlwifi: 8192de: correct checking of IQK reload (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmsmac: remove duplicate words (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: access chip_info by const pointer (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: phy: fix warning of possible buffer overflow (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix store OP channel info timing when HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix stopping queues in wrong timing when HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: 8822c: extend supported probe request size (Jose Ignacio Tornos Martinez) [2136125]- ALSA: pcm: Move rwsem lock inside snd_ctl_elem_read to prevent UAF (Jaroslav Kysela) [2125548] {CVE-2023-0266} - ALSA: usb-audio: Remove redundant workaround for Roland quirk (Jaroslav Kysela) [2125548] - ASoC: jz4740-i2s: Handle independent FIFO flush bits (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Apply dual codec fixup for Dell Latitude laptops (Jaroslav Kysela) [2125548] - ALSA: patch_realtek: Fix Dell Inspiron Plus 16 (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: Static PCM mapping again with AMD HDMI codecs (Jaroslav Kysela) [2125548] - ALSA: line6: fix stack overflow in line6_midi_transmit (Jaroslav Kysela) [2125548] - ALSA: line6: correct midi status byte when receiving data from podxt (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: Add HP Device 0x8711 to force connect list (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for Lenovo TianYi510Pro-14IOB (Jaroslav Kysela) [2125548] - ALSA: usb-audio: add the quirk for KT0206 device (Jaroslav Kysela) [2125548] - ASoC: rt5670: Remove unbalanced pm_runtime_put() (Jaroslav Kysela) [2125548] - ASoC: rockchip: spdif: Add missing clk_disable_unprepare() in rk_spdif_runtime_resume() (Jaroslav Kysela) [2125548] - ASoC: wm8994: Fix potential deadlock (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: fix stream-id config keep-alive for rt suspend (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: set default audio parameters for KAE silent-stream (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: fix i915 silent stream programming flow (Jaroslav Kysela) [2125548] - ASoC: rockchip: pdm: Add missing clk_disable_unprepare() in rockchip_pdm_runtime_resume() (Jaroslav Kysela) [2125548] - ASoC: audio-graph-card: fix refcount leak of cpu_ep in __graph_for_each_link() (Jaroslav Kysela) [2125548] - ASoC: mediatek: mt8173-rt5650-rt5514: fix refcount leak in mt8173_rt5650_rt5514_dev_probe() (Jaroslav Kysela) [2125548] - ASoC: Intel: Skylake: Fix driver hang during shutdown (Jaroslav Kysela) [2125548] - ALSA: hda: add snd_hdac_stop_streams() helper (Jaroslav Kysela) [2125548] - ASoC: sof_es8336: fix possible use-after-free in sof_es8336_remove() (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Xiaomi Redmi Book Pro 14 2022 into DMI table (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Add quirk for KBL-R RVP platform (Jaroslav Kysela) [2125548] - ASoC: codecs: rt298: Add quirk for KBL-R RVP platform (Jaroslav Kysela) [2125548] - ALSA: mts64: fix possible null-ptr-defer in snd_mts64_interrupt (Jaroslav Kysela) [2125548] - ALSA: pcm: Set missing stop_operating flag at undoing trigger start (Jaroslav Kysela) [2125548] - ASoC: pcm512x: Fix PM disable depth imbalance in pcm512x_probe (Jaroslav Kysela) [2125548] - ALSA: asihpi: fix missing pci_disable_device() (Jaroslav Kysela) [2125548] - ASoC: mediatek: mtk-btcvsd: Add checks for write and read of mtk_btcvsd_snd (Jaroslav Kysela) [2125548] - ASoC: qcom: Add checks for devm_kcalloc (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Lock substream before snd_pcm_stop() (Jaroslav Kysela) [2125548] - ASoC: pxa: fix null-pointer dereference in filter() (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Fix potential RX buffer overflow (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Fix DMA mask assignment (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2125548] - ASoC: ops: Correct bounds check for second channel on SX controls (Jaroslav Kysela) [2125548] - ASoC: cs42l51: Correct PGA Volume minimum value (Jaroslav Kysela) [2125548] - ASoC: ops: Check bounds for second channel in snd_soc_put_volsw_sx() (Jaroslav Kysela) [2125548] - ASoC: fsl_micfil: explicitly clear CHnF flags (Jaroslav Kysela) [2125548] - ASoC: fsl_micfil: explicitly clear software reset bit (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: More robust component matching for CS35L41 (Jaroslav Kysela) [2125548] - ASoC: soc-pcm: Add NULL check in BE reparenting (Jaroslav Kysela) [2125548] - ALSA: seq: Fix function prototype mismatch in snd_seq_expand_var_event (Jaroslav Kysela) [2125548] - ASoC: rt711-sdca: fix the latency time of clock stop prepare state machine transitions (Jaroslav Kysela) [2125548] - ASoC: wm8962: Wait for updated value of WM8962_CLOCKING1 register (Jaroslav Kysela) [2125548] - ASoC: ops: Fix bounds check for _sx controls (Jaroslav Kysela) [2125548] - ALSA: dice: fix regression for Lexicon I-ONIX FW810S (Jaroslav Kysela) [2125548] - ASoC: sof_es8336: reduce pop noise on speaker (Jaroslav Kysela) [2125548] - ASoC: SOF: ipc3-topology: use old pipeline teardown flow with SOF2.1 and older (Jaroslav Kysela) [2125548] - ASoC: hda: intel-dsp-config: add ES83x6 quirk for IceLake (Jaroslav Kysela) [2125548] - ASoC: Intel: soc-acpi: add ES83x6 support to IceLake (Jaroslav Kysela) [2125548] - ASoC: Intel: bytcht_es8316: Add quirk for the Nanote UMPC-01 (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Alienware m17 R5 AMD into DMI table (Jaroslav Kysela) [2125548] - ASoC: max98373: Add checks for devm_kcalloc (Jaroslav Kysela) [2125548] - ASoC: soc-pcm: Don't zero TDM masks in __soc_pcm_open() (Jaroslav Kysela) [2125548] - ASoC: sgtl5000: Reset the CHIP_CLK_CTRL reg on remove (Jaroslav Kysela) [2125548] - ASoC: hdac_hda: fix hda pcm buffer overflow issue (Jaroslav Kysela) [2125548] - ALSA: usb-audio: add quirk to fix Hamedal C20 disconnect issue (Jaroslav Kysela) [2125548] - ASoC: SOF: topology: No need to assign core ID if token parsing failed (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book Pro 360 (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: fix speakers for Samsung Galaxy Book Pro (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Drop snd_BUG_ON() from snd_usbmidi_output_open() (Jaroslav Kysela) [2125548] - ASoC: soc-utils: Remove __exit for snd_soc_util_exit() (Jaroslav Kysela) [2125548] - ASoC: rt5677: fix legacy dai naming (Jaroslav Kysela) [2125548] - ASoC: rt5514: fix legacy dai naming (Jaroslav Kysela) [2125548] - ASoC: tas2764: Fix set_tdm_slot in case of single slot (Jaroslav Kysela) [2125548] - ASoC: tas2770: Fix set_tdm_slot in case of single slot (Jaroslav Kysela) [2125548] - ASoC: core: Fix use-after-free in snd_soc_exit() (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: Fix spelling mistake "Sourc" -> "Source", "Routee" -> "Route" (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Lenovo Thinkbook 14+ 2022 21D0 to quirks table (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Adding Lenovo ThinkBook 14 Gen 4+ ARA and Lenovo ThinkBook 16 Gen 4+ ARA to the Quirks List (Jaroslav Kysela) [2125548] - ASoC: rt1308-sdw: add the default value of some registers (Jaroslav Kysela) [2125548] - ASoC: Intel: sof_rt5682: Add quirk for Rex board (Jaroslav Kysela) [2125548] - ASoC: Intel: sof_sdw: add quirk variant for LAPBC710 NUC15 (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: fix capture selector naming (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: use right control for Capture Volume (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: fix reported volume for Master ctl (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: add missed Line In power control bit (Jaroslav Kysela) [2125548] - ASoC: wm8962: Add an event handler for TEMP_HP and TEMP_SPK (Jaroslav Kysela) [2125548] - ASoC: rt1019: Fix the TDM settings (Jaroslav Kysela) [2125548] - ASoC: rt5682s: Fix the TDM Tx settings (Jaroslav Kysela) [2125548] - ASoC: mt6660: Keep the pm_runtime enables before component stuff in mt6660_i2c_probe (Jaroslav Kysela) [2125548] - ASoC: wm8997: Revert "ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe" (Jaroslav Kysela) [2125548] - ASoC: wm5110: Revert "ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe" (Jaroslav Kysela) [2125548] - ASoC: wm5102: Revert "ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe" (Jaroslav Kysela) [2125548] - ALSA: memalloc: Try dma_alloc_noncontiguous() at first (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add DSD support for Accuphase DAC-60 (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add quirk entry for M-Audio Micro (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Yet more regression for for the delayed card registration (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add Positivo C6300 model quirk (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for ASUS Zenbook using CS35L41 (Jaroslav Kysela) [2125548] - ALSA: hda: fix potential memleak in 'add_widget_node' (Jaroslav Kysela) [2125548] - ALSA: hda/ca0132: add quirk for EVGA Z390 DARK (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi - enable runtime pm for more AMD display audio (Jaroslav Kysela) [2125548] - ALSA: memalloc: Don't fall back for SG-buffer with IOMMU (Jaroslav Kysela) [2125548] - ALSA: aoa: Fix I2S device accounting (Jaroslav Kysela) [2125548] - ALSA: aoa: i2sbus: fix possible memory leak in i2sbus_add_dev() (Jaroslav Kysela) [2125548] - ALSA: ac97: fix possible memory leak in snd_ac97_dev_register() (Jaroslav Kysela) [2125548] - ASoC: SOF: Intel: pci-tgl: fix ADL-N descriptor (Jaroslav Kysela) [2125548] - ASoC: SOF: Intel: pci-tgl: use RPL specific firmware definitions (Jaroslav Kysela) [2125548] - ASoC: Intel: common: add ACPI matching tables for Raptor Lake (Jaroslav Kysela) [2125548] - ALSA: rme9652: use explicitly signed char (Jaroslav Kysela) [2125548] - ALSA: au88x0: use explicitly signed char (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add another HP ZBook G9 model quirks (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add quirks for M-Audio Fast Track C400/600 (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for ASUS Zenbook using CS35L41 (Jaroslav Kysela) [2125548] - ALSA: Use del_timer_sync() before freeing timer (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Fix last interface check for registration (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Lenovo Yoga Slim 7 Pro X to quirks table (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add ASUS UM5302TA into DMI table (Jaroslav Kysela) [2125548] - ASoC: SOF: add quirk to override topology mclk_id (Jaroslav Kysela) [2125548] - ASoC: SOF: pci: Change DMI match info to support all Chrome platforms (Jaroslav Kysela) [2125548] - ALSA: intel-dspconfig: add ES8336 support for AlderLake-PS (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Register card at the last interface (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add quirk to enable Avid Mbox 3 support (Jaroslav Kysela) [2125548] - ASoC: mt6660: Fix PM disable depth imbalance in mt6660_i2c_probe (Jaroslav Kysela) [2125548] - ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe (Jaroslav Kysela) [2125548] - ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe (Jaroslav Kysela) [2125548] - ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe (Jaroslav Kysela) [2125548] - ASoC: stm: Fix PM disable depth imbalance in stm32_i2s_probe (Jaroslav Kysela) [2125548] - ASoC: stm32: spdifrx: Fix PM disable depth imbalance in stm32_spdifrx_probe (Jaroslav Kysela) [2125548] - ASoC: stm32: dfsdm: Fix PM disable depth imbalance in stm32_adfsdm_probe (Jaroslav Kysela) [2125548] - ALSA: dmaengine: increment buffer pointer atomically (Jaroslav Kysela) [2125548] - ASoC: da7219: Fix an error handling path in da7219_register_dai_clks() (Jaroslav Kysela) [2125548] - ASoC: eureka-tlv320: Hold reference returned from of_find_xxx API (Jaroslav Kysela) [2125548] - ASoC: wm_adsp: Handle optional legacy support (Jaroslav Kysela) [2125548] - ASoC: rsnd: Add check for rsnd_mod_power_on (Jaroslav Kysela) [2125548] - ASoC: soc-pcm.c: call __soc_pcm_close() in soc_pcm_close() (Jaroslav Kysela) [2125548] - ASoC: mt6359: fix tests for platform_get_irq() failure (Jaroslav Kysela) [2125548] - ASoC: wcd934x: fix order of Slimbus unprepare/disable (Jaroslav Kysela) [2125548] - ASoC: wcd9335: fix order of Slimbus unprepare/disable (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add Intel Reference SSID to support headset keys (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for ASUS GV601R laptop (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Fix NULL dererence at error path (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Fix potential memory leaks (Jaroslav Kysela) [2125548] - ALSA: rawmidi: Drop register_mutex in snd_rawmidi_free() (Jaroslav Kysela) [2125548] - ALSA: oss: Fix potential deadlock at unregistration (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for HP Zbook Firefly 14 G9 model (Jaroslav Kysela) [2125548] - ALSA: hda: Fix position reporting on Poulsbo (Jaroslav Kysela) [2125548]- KVM: x86: smm: preserve interrupt shadow in SMRAM (Maxim Levitsky) [2097144] - KVM: x86: SVM: don't save SVM state to SMRAM when VM is not long mode capable (Maxim Levitsky) [2097144] - KVM: x86: SVM: use smram structs (Maxim Levitsky) [2097144] - KVM: svm: drop explicit return value of kvm_vcpu_map (Maxim Levitsky) [2097144] - KVM: x86: smm: use smram struct for 64 bit smram load/restore (Maxim Levitsky) [2097144] - KVM: x86: smm: use smram struct for 32 bit smram load/restore (Maxim Levitsky) [2097144] - KVM: x86: smm: use smram structs in the common code (Maxim Levitsky) [2097144] - KVM: x86: smm: add structs for KVM's smram layout (Maxim Levitsky) [2097144] - KVM: x86: smm: check for failures on smm entry (Maxim Levitsky) [2097144] - KVM: x86: do not go through ctxt->ops when emulating rsm (Maxim Levitsky) [2097144] - KVM: x86: move SMM exit to a new file (Maxim Levitsky) [2097144] - KVM: x86: move SMM entry to a new file (Maxim Levitsky) [2097144] - KVM: x86: start moving SMM-related functions to new files (Maxim Levitsky) [2097144] - bug: introduce ASSERT_STRUCT_OFFSET (Maxim Levitsky) [2097144] - KVM: x86: Rename and expose helper to detect if INIT/SIPI are allowed (Maxim Levitsky) [2097144] - KVM: x86: smm: number of GPRs in the SMRAM image depends on the image format (Maxim Levitsky) [2097144] - KVM: x86: emulator: update the emulation mode after CR0 write (Maxim Levitsky) [2097144] - KVM: x86: emulator: update the emulation mode after rsm (Maxim Levitsky) [2097144] - KVM: x86: emulator: introduce emulator_recalc_and_set_mode (Maxim Levitsky) [2097144] - KVM: x86: emulator: em_sysexit should update ctxt->mode (Maxim Levitsky) [2097144] - KVM: x86: Bug the VM if the emulator accesses a non-existent GPR (Maxim Levitsky) [2097144] - KVM: x86: Reduce the number of emulator GPRs to '8' for 32-bit KVM (Maxim Levitsky) [2097144] - KVM: x86: Use 16-bit fields to track dirty/valid emulator GPRs (Maxim Levitsky) [2097144] - KVM: x86: Omit VCPU_REGS_RIP from emulator's _regs array (Maxim Levitsky) [2097144] - KVM: x86: Harden _regs accesses to guard against buggy input (Maxim Levitsky) [2097144] - KVM: x86: Grab regs_dirty in local 'unsigned long' (Maxim Levitsky) [2097144]- RDMA/bnxt_re: Fix endianness warning for req.pkey (Kamal Heib) [2142690] - RDMA/bnxt_re: Use bitmap_zalloc() when applicable (Kamal Heib) [2142690] - RDMA/bnxt_re: Remove dynamic pkey table (Kamal Heib) [2142690] - RDMA/bnxt_re: Scan the whole bitmap when checking if "disabling RCFW with pending cmd-bit" (Kamal Heib) [2142690] - RDMA/bnxt_re: Remove unneeded variable (Kamal Heib) [2142690] - RDMA/bnxt_re: Remove unsupported bnxt_re_modify_ah callback (Kamal Heib) [2142690] - RDMA/bnxt_re: Use helper function to set GUIDs (Kamal Heib) [2142690] - RDMA/bnxt_re: Check if the vlan is valid before reporting (Kamal Heib) [2142690] - RDMA/bnxt_re: Correct FRMR size calculation (Kamal Heib) [2142690] - RDMA/bnxt_re: Use GFP_KERNEL in non atomic context (Kamal Heib) [2142690] - RDMA/bnxt_re: Fix FRMR issue with single page MR allocation (Kamal Heib) [2142690] - RDMA/bnxt_re: Fix query SRQ failure (Kamal Heib) [2142690] - RDMA/bnxt_re: Suppress unwanted error messages (Kamal Heib) [2142690] - RDMA/bnxt_re: Support multiple page sizes (Kamal Heib) [2142690] - RDMA/bnxt_re: Reduce the delay in polling for hwrm command completion (Kamal Heib) [2142690] - RDMA/bnxt_re: Use separate response buffer for stat_ctx_free (Kamal Heib) [2142690] - net/mlx5: Lag, Fix for loop when checking lag (Amir Tzin) [2112917] - net/mlx5e: Fix use-after-free when reverting termination table (Amir Tzin) [2112927] - net/mlx5: Fix uninitialized variable bug in outlen_write() (Amir Tzin) [2112927] - net/mlx5: E-switch, Fix duplicate lag creation (Amir Tzin) [2112927 2112917] - net/mlx5: E-switch, Destroy legacy fdb table when needed (Amir Tzin) [2112927 2112917] - net/mlx5: DR, Fix uninitialized var warning (Amir Tzin) [2112927] - net/mlx5e: Offload rule only when all encaps are valid (Amir Tzin) [2112927] - net/mlx5: Fix sync reset event handler error flow (Amir Tzin) [2112927] - net/mlx5: E-Switch, Set correctly vport destination (Amir Tzin) [2112927] - net/mlx5: Fix handling of entry refcount when command is not issued to FW (Amir Tzin) [2112927] - net/mlx5: cmdif, Print info on any firmware cmd failure to tracepoint (Amir Tzin) [2112927] - net/mlx5: SF: Fix probing active SFs during driver probe phase (Amir Tzin) [2112927] - net/mlx5: Fix FW tracer timestamp calculation (Amir Tzin) [2112927] - net/mlx5: Do not query pci info while pci disabled (Amir Tzin) [2112927 2129249] - net/mlx5e: TC, Fix slab-out-of-bounds in parse_tc_actions (Amir Tzin) [2112927] - net/mlx5e: Clean up and fix error flows in mlx5e_alloc_rq (Amir Tzin) [2112927] - net/mlx5: DR, Fix the SMFS sync_steering for fast teardown (Amir Tzin) [2112927] - net/mlx5e: E-Switch, Fix comparing termination table instance (Amir Tzin) [2112927] - net/mlx5e: TC, Fix wrong rejection of packet-per-second policing (Amir Tzin) [2112927 2049622] - net/mlx5e: Fix tc acts array not to be dependent on enum order (Amir Tzin) [2112927] - net/mlx5e: Add missing sanity checks for max TX WQE size (Amir Tzin) [2112927] - net/mlx5: fw_reset: Don't try to load device in case PCI isn't working (Amir Tzin) [2112927] - net/mlx5: E-switch, Set to legacy mode if failed to change switchdev mode (Amir Tzin) [2112927 2112917] - net/mlx5: Allow async trigger completion execution on single CPU systems (Amir Tzin) [2112927] - net/mlx5: Bridge, verify LAG state when adding bond to bridge (Amir Tzin) [2112927] - net/mlx5: Fix crash during sync firmware reset (Amir Tzin) [2112927] - net/mlx5e: TC, Fix cloned flow attr instance dests are not zeroed (Amir Tzin) [2112927] - net/mlx5: Fix possible use-after-free in async command interface (Amir Tzin) [2112927] - net/mlx5: ASO, Create the ASO SQ with the correct timestamp format (Amir Tzin) [2112927 2049622] - net/mlx5e: Update restore chain id for slow path packets (Amir Tzin) [2112927] - net/mlx5e: Extend SKB room check to include PTP-SQ (Amir Tzin) [2112927] - net/mlx5: DR, Fix matcher disconnect error flow (Amir Tzin) [2112927] - net/mlx5: Wait for firmware to enable CRS before pci_restore_state (Amir Tzin) [2112927] - net/mlx5e: Do not increment ESN when updating IPsec ESN state (Amir Tzin) [2112927] - net/mlx5e: Fix calculations for ICOSQ size (Amir Tzin) [2112927] - net/mlx5: Fix spelling mistake "syndrom" -> "syndrome" (Amir Tzin) [2112927] - net/mlx5e: Fix a typo in mlx5e_xdp_mpwqe_is_full (Amir Tzin) [2112927] - RDMA/mlx5: Don't compare mkey tags in DEVX indirect mkey (Amir Tzin) [2112927] - RDMA/mlx5: Fix UMR cleanup on error flow of driver init (Amir Tzin) [2112927] - RDMA/mlx5: Rely on RoCE fw cap instead of devlink when setting profile (Amir Tzin) [2112927] - net/mlx5: Unlock on error in mlx5_sriov_enable() (Amir Tzin) [2112927] - net/mlx5e: Fix use after free in mlx5e_fs_init() (Amir Tzin) [2112927] - net/mlx5e: kTLS, Use _safe() iterator in mlx5e_tls_priv_tx_list_cleanup() (Amir Tzin) [2112927] - net/mlx5: unlock on error path in esw_vfs_changed_event_handler() (Amir Tzin) [2112927 2150647] - net/mlx5e: Fix wrong tc flag used when set hw-tc-offload off (Amir Tzin) [2112927] - net/mlx5e: TC, Add missing policer validation (Amir Tzin) [2112927] - net/mlx5e: Fix wrong application of the LRO state (Amir Tzin) [2112927] - net/mlx5: Avoid false positive lockdep warning by adding lock_class_key (Amir Tzin) [2112927] - net/mlx5: Fix cmd error logging for manage pages cmd (Amir Tzin) [2112927] - net/mlx5: Disable irq when locking lag_lock (Amir Tzin) [2112927] - net/mlx5: Eswitch, Fix forwarding decision to uplink (Amir Tzin) [2112927 2150647] - net/mlx5: LAG, fix logic over MLX5_LAG_FLAG_NDEVS_READY (Amir Tzin) [2112927] - net/mlx5e: Properly disable vlan strip on non-UL reps (Amir Tzin) [2112927] - net/mlx5e: Allocate flow steering storage during uplink initialization (Amir Tzin) [2112927] - RDMA/mlx5: Use the proper number of ports (Amir Tzin) [2112927] - mlx5: do not use RT_TOS for IPv6 flowlabel (Amir Tzin) [2112927] - RDMA/mlx5: Add missing check for return value in get namespace flow (Amir Tzin) [2112927] - net/mlx5e: xsk: Discard unaligned XSK frames on striding RQ (Amir Tzin) [2112927] - net: devlink: convert reload command to take implicit devlink->lock (mlx5 hunk only) (Amir Tzin) [2112927] - devlink: Hold the instance lock in health callbacks (mlx5 hunk only) (Amir Tzin) [2112927] - net/mlx5: Lock mlx5 devlink health recovery callback (Amir Tzin) [2112927] - net/mlx5: Lock mlx5 devlink reload callbacks (Amir Tzin) [2112927] - net/mlx5: Move fw reset unload to mlx5_fw_reset_complete_reload (Amir Tzin) [2112927] - net/mlx5e: kTLS, Dynamically re-size TX recycling pool (Amir Tzin) [2112927] - net/mlx5e: kTLS, Recycle objects of device-offloaded TLS TX connections (Amir Tzin) [2112927] - net/mlx5e: kTLS, Take stats out of OOO handler (Amir Tzin) [2112927] - net/mlx5e: kTLS, Introduce TLS-specific create TIS (Amir Tzin) [2112927] - net/mlx5e: Move mlx5e_init_l2_addr to en_main (Amir Tzin) [2112927] - net/mlx5e: Split en_fs ndo's and move to en_main (Amir Tzin) [2112927] - net/mlx5e: Separate mlx5e_set_rx_mode_work and move caller to en_main (Amir Tzin) [2112927] - net/mlx5e: Add mdev to flow_steering struct (Amir Tzin) [2112927] - net/mlx5e: Report flow steering errors with mdev err report API (Amir Tzin) [2112927] - net/mlx5e: Convert mlx5e_flow_steering member of mlx5e_priv to pointer (Amir Tzin) [2112927] - net/mlx5e: Allocate VLAN and TC for featured profiles only (Amir Tzin) [2112927] - net/mlx5e: Make mlx5e_tc_table private (Amir Tzin) [2112927] - net/mlx5e: Convert mlx5e_tc_table member of mlx5e_flow_steering to pointer (Amir Tzin) [2112927] - net/mlx5e: TC, Support tc action api for police (Amir Tzin) [2112927] - net/mlx5e: TC, Separate get/update/replace meter functions (Amir Tzin) [2112927] - net/mlx5e: Add red and green counters for metering (Amir Tzin) [2112927] - net/mlx5e: TC, Allocate post meter ft per rule (Amir Tzin) [2112927] - net/mlx5: DR, Add support for flow metering ASO (Amir Tzin) [2112927] - net/mlx5: Fix driver use of uninitialized timeout (Amir Tzin) [2112927] - net/mlx5: DR, Fix SMFS steering info dump format (Amir Tzin) [2112927] - net/mlx5: Adjust log_max_qp to be 18 at most (Amir Tzin) [2112927] - net/mlx5e: Modify slow path rules to go to slow fdb (Amir Tzin) [2112927 2150647] - net/mlx5e: Fix calculations related to max MPWQE size (Amir Tzin) [2112927] - net/mlx5e: xsk: Account for XSK RQ UMRs when calculating ICOSQ size (Amir Tzin) [2112927] - net/mlx5e: Fix the value of MLX5E_MAX_RQ_NUM_MTTS (Amir Tzin) [2112927] - net/mlx5e: TC, Fix post_act to not match on in_port metadata (Amir Tzin) [2112927] - net/mlx5e: Remove WARN_ON when trying to offload an unsupported TLS cipher/version (Amir Tzin) [2112927] - RDMA/mlx5: Rename the mkey cache variables and functions (Amir Tzin) [2112927] - RDMA/mlx5: Store in the cache mkeys instead of mrs (Amir Tzin) [2112927] - RDMA/mlx5: Store the number of in_use cache mkeys instead of total_mrs (Amir Tzin) [2112927] - RDMA/mlx5: Replace cache list with Xarray (Amir Tzin) [2112927] - RDMA/mlx5: Replace ent->lock with xa_lock (Amir Tzin) [2112927] - net/mlx5: CT: Remove warning of ignore_flow_level support for non PF (Amir Tzin) [2112927] - net/mlx5e: Add resiliency for PTP TX port timestamp (Amir Tzin) [2112927] - net/mlx5: Expose ts_cqe_metadata_size2wqe_counter (Amir Tzin) [2112927] - net/mlx5e: HTB, move htb functions to a new file (Amir Tzin) [2112927] - net/mlx5e: HTB, change functions name to follow convention (Amir Tzin) [2112927] - net/mlx5e: HTB, remove priv from htb function calls (Amir Tzin) [2112927] - net/mlx5e: HTB, hide and dynamically allocate mlx5e_htb structure (Amir Tzin) [2112927] - net/mlx5e: HTB, move stats and max_sqs to priv (Amir Tzin) [2112927] - net/mlx5e: HTB, move section comment to the right place (Amir Tzin) [2112927] - net/mlx5e: HTB, move ids to selq_params struct (Amir Tzin) [2112927] - net/mlx5e: HTB, reduce visibility of htb functions (Amir Tzin) [2112927] - net/mlx5e: Fix mqprio_rl handling on devlink reload (Amir Tzin) [2112927] - net/mlx5e: Report header-data split state through ethtool (Amir Tzin) [2112927] - RDMA/mlx5: Expose steering anchor to userspace (Amir Tzin) [2112927] - RDMA/mlx5: Refactor get flow table function (Amir Tzin) [2112927] - net/mlx5: fs, allow flow table creation with a UID (Amir Tzin) [2112927] - net/mlx5: fs, expose flow table ID to users (Amir Tzin) [2112927] - net/mlx5: Expose the ability to point to any UID from shared UID (Amir Tzin) [2112927] - net/mlx5e: Remove the duplicating check for striding RQ when enabling LRO (Amir Tzin) [2112927] - net/mlx5e: Move the LRO-XSK check to mlx5e_fix_features (Amir Tzin) [2112927] - net/mlx5e: Extend flower police validation (Amir Tzin) [2112927] - net/mlx5e: configure meter in flow action (Amir Tzin) [2112927 2150647 2049622] - net/mlx5e: Removed useless code in function (Amir Tzin) [2112927] - net/mlx5: Bridge, implement QinQ support (Amir Tzin) [2112927] - net/mlx5: Bridge, implement infrastructure for VLAN protocol change (Amir Tzin) [2112927] - net/mlx5: Bridge, extract VLAN push/pop actions creation (Amir Tzin) [2112927] - net/mlx5: Bridge, rename filter fg to vlan_filter (Amir Tzin) [2112927] - net/mlx5: Bridge, refactor groups sizes and indices (Amir Tzin) [2112927] - net/mlx5: debugfs, Add num of in-use FW command interface slots (Amir Tzin) [2112927] - net/mlx5: Expose vnic diagnostic counters for eswitch managed vports (Amir Tzin) [2112927 2150647 2049881] - net/mlx5: Use software VHCA id when it's supported (Amir Tzin) [2112927] - net/mlx5: Introduce ifc bits for using software vhca id (Amir Tzin) [2112927] - net/mlx5: Use the bitmap API to allocate bitmaps (Amir Tzin) [2112927] - devlink: Hold the instance lock in port_new / port_del callbacks (mlx5 hunks only) (Amir Tzin) [2112925] - net/mlx5: Remove devl_unlock from mlx5_devlink_eswitch_mode_set (Amir Tzin) [2112927 2150647] - net/mlx5: Use devl_ API in mlx5e_devlink_port_register (Amir Tzin) [2112927 2150647] - net/mlx5: Use devl_ API in mlx5_esw_devlink_sf_port_register (Amir Tzin) [2112927] - net/mlx5: Use devl_ API in mlx5_esw_offloads_devlink_port_register (Amir Tzin) [2112927 2150647] - net/mlx5: Use devl_ API for rate nodes destroy (Amir Tzin) [2112927 2150647] - net/mlx5: Remove devl_unlock from mlx5_eswtich_mode_callback_enter (Amir Tzin) [2112927 2150647] - net/mlx5: fix 32bit build (Amir Tzin) [2112927 2049622] - net/mlx5e: TC, Support offloading police action (Amir Tzin) [2112927 2049622] - net/mlx5e: Add flow_action to parse state (Amir Tzin) [2112927 2049622] - net/mlx5e: Add post meter table for flow metering (Amir Tzin) [2112927 2049622] - net/mlx5e: Add generic macros to use metadata register mapping (Amir Tzin) [2112927 2049622] - net/mlx5e: Get or put meter by the index of tc police action (Amir Tzin) [2112927 2049622] - net/mlx5e: Add support to modify hardware flow meter parameters (Amir Tzin) [2112927 2049622] - net/mlx5e: Prepare for flow meter offload if hardware supports it (Amir Tzin) [2112927 2049622] - net/mlx5: Implement interfaces to control ASO SQ and CQ (Amir Tzin) [2112927 2049622] - net/mlx5: Add support to create SQ and CQ for ASO (Amir Tzin) [2112927 2049622] - net/mlx5: E-switch: Change eswitch mode only via devlink command (Amir Tzin) [2112927 2150647 2112917] - net/mlx5: E-switch, Remove dependency between sriov and eswitch mode (Amir Tzin) [2112927 2150647 2112917] - net/mlx5: E-switch, Introduce flag to indicate if fdb table is created (Amir Tzin) [2112927 2112917] - net/mlx5: E-switch, Introduce flag to indicate if vport acl namespace is created (Amir Tzin) [2112927 2112917] - net/mlx5: delete dead code in mlx5_esw_unlock() (Amir Tzin) [2112927] - net/mlx5: Delete ipsec_fs header file as not used (Amir Tzin) [2112927] - net/mlx5: Add bits and fields to support enhanced CQE compression (Amir Tzin) [2112927] - net/mlx5: Remove not used MLX5_CAP_BITS_RW_MASK (Amir Tzin) [2112927] - net/mlx5: group fdb cleanup to single function (Amir Tzin) [2112927] - net/mlx5: Add support EXECUTE_ASO action for flow entry (Amir Tzin) [2112927 2049622] - net/mlx5: Add HW definitions of vport debug counters (Amir Tzin) [2112927] - net/mlx5: Add IFC bits and enums for flow meter (Amir Tzin) [2112927 2049622] - RDMA/mlx5: Support handling of modify-header pattern ICM area (Amir Tzin) [2112927] - net/mlx5: Manage ICM of type modify-header pattern (Amir Tzin) [2112927] - net/mlx5: Introduce header-modify-pattern ICM properties (Amir Tzin) [2112927] - RDMA/mlx5: Add a umr recovery flow (Amir Tzin) [2112927] - net/mlx5e: Ring the TX doorbell on DMA errors (Amir Tzin) [2112925] - net/mlx5e: Fix capability check for updating vnic env counters (Amir Tzin) [2112925] - net/mlx5: Lag, correct get the port select mode str (Amir Tzin) [2112925] - net/mlx5e: Fix enabling sriov while tc nic rules are offloaded (Amir Tzin) [2112925] - net/mlx5e: kTLS, Fix build time constant test in RX (Amir Tzin) [2112925] - net/mlx5e: kTLS, Fix build time constant test in TX (Amir Tzin) [2112925] - net/mlx5: Lag, decouple FDB selection and shared FDB (Amir Tzin) [2112925] - net/mlx5: TC, allow offload from uplink to other PF's VF (Amir Tzin) [2112925] - mellanox: mlx5: avoid uninitialized variable warning with gcc-12 (Amir Tzin) [2112925] - net/mlx5: E-Switch, pair only capable devices (Amir Tzin) [2112925 2150647] - Revert "net/mlx5e: Allow relaxed ordering over VFs" (Amir Tzin) [2112925] - net/mlx5: Fix mlx5_get_next_dev() peer device matching (Amir Tzin) [2112925] - RDMA/mlx5: Remove duplicate pointer assignment in mlx5_ib_alloc_implicit_mr() (Amir Tzin) [2112925] - net/mlx5: fix multiple definitions of mlx5_lag_mpesw_init / mlx5_lag_mpesw_cleanup (Amir Tzin) [2112925] - net/mlx5: Support multiport eswitch mode (Amir Tzin) [2112925 2150647] - net/mlx5: Remove unused argument (Amir Tzin) [2112925] - net/mlx5: Lag, refactor lag state machine (Amir Tzin) [2112925] - net/mlx5e: Add XDP SQs to uplink representors steering tables (Amir Tzin) [2112925] - net/mlx5e: Allow relaxed ordering over VFs (Amir Tzin) [2112925] - net/mlx5e: Support partial GSO for tunnels over vlans (Amir Tzin) [2112925] - net/mlx5e: IPoIB, Improve ethtool rxnfc callback structure in IPoIB (Amir Tzin) [2112925] - net/mlx5e: Allocate virtually contiguous memory for reps structures (Amir Tzin) [2112925] - net/mlx5e: Allocate virtually contiguous memory for VLANs list (Amir Tzin) [2112925] - net/mlx5: Allocate virtually contiguous memory in pci_irq.c (Amir Tzin) [2112925] - net/mlx5: Allocate virtually contiguous memory in vport.c (Amir Tzin) [2112925] - net/mlx5: Inline db alloc API function (Amir Tzin) [2112925] - net/mlx5: Add last command failure syndrome to debugfs (Amir Tzin) [2112925] - net/mlx5: sparse: error: context imbalance in 'mlx5_vf_get_core_dev' (Amir Tzin) [2112925] - net/mlx5: Expose mlx5_sriov_blocking_notifier_register / unregister APIs (Amir Tzin) [2112925] - net/mlx5: Lag, add debugfs to query hardware lag state (Amir Tzin) [2112925] - net/mlx5: Lag, use buckets in hash mode (Amir Tzin) [2112925] - net/mlx5: Lag, refactor dmesg print (Amir Tzin) [2112925] - net/mlx5: Support devices with more than 2 ports (Amir Tzin) [2112925] - net/mlx5: Lag, use actual number of lag ports (Amir Tzin) [2112925] - net/mlx5: Lag, use hash when in roce lag on 4 ports (Amir Tzin) [2112925] - net/mlx5: Lag, support single FDB only on 2 ports (Amir Tzin) [2112925] - net/mlx5: Lag, store number of ports inside lag object (Amir Tzin) [2112925] - net/mlx5: Lag, filter non compatible devices (Amir Tzin) [2112925] - net/mlx5: Lag, use lag lock (Amir Tzin) [2112925] - net/mlx5: Lag, move E-Switch prerequisite check into lag code (Amir Tzin) [2112925] - net/mlx5: devcom only supports 2 ports (Amir Tzin) [2112925] - net/mlx5: Lag, expose number of lag ports (Amir Tzin) [2112925] - net/mlx5: Increase FW pre-init timeout for health recovery (Amir Tzin) [2112925] - net/mlx5: Add exit route when waiting for FW (Amir Tzin) [2112925] - net/mlx5e: Use XFRM state direction instead of flags (Amir Tzin) [2112925] - net/mlx5: Allow future addition of IPsec object modifiers (Amir Tzin) [2112925] - net/mlx5: Don't perform lookup after already known sec_path (Amir Tzin) [2112925] - net/mlx5: Cleanup XFRM attributes struct (Amir Tzin) [2112925] - net/mlx5: Remove not-supported ICV length (Amir Tzin) [2112925] - net/mlx5: Simplify IPsec capabilities logic (Amir Tzin) [2112925] - net/mlx5: Don't advertise IPsec netdev support for non-IPsec device (Amir Tzin) [2112925] - net/mlx5: Make sure that no dangling IPsec FS pointers exist (Amir Tzin) [2112925] - net/mlx5: Clean IPsec FS add/delete rules (Amir Tzin) [2112925] - net/mlx5: Simplify HW context interfaces by using SA entry (Amir Tzin) [2112925] - net/mlx5: Remove indirections from esp functions (Amir Tzin) [2112925] - net/mlx5: Merge various control path IPsec headers into one file (Amir Tzin) [2112925] - net/mlx5: Remove useless validity check (Amir Tzin) [2112925] - net/mlx5: Store IPsec ESN update work in XFRM state (Amir Tzin) [2112925] - net/mlx5: Reduce useless indirection in IPsec FS add/delete flows (Amir Tzin) [2112925] - net/mlx5: Don't hide fallback to software IPsec in FS code (Amir Tzin) [2112925] - net/mlx5: Check IPsec TX flow steering namespace in advance (Amir Tzin) [2112925] - net/mlx5: Simplify IPsec flow steering init/cleanup functions (Amir Tzin) [2112925] - net/mlx5: fs, an FTE should have no dests when deleted (Amir Tzin) [2112925] - net/mlx5: fs, call the deletion function of the node (Amir Tzin) [2112925] - net/mlx5: fs, delete the FTE when there are no rules attached to it (Amir Tzin) [2112925] - net/mlx5: fs, do proper bookkeeping for forward destinations (Amir Tzin) [2112925] - net/mlx5: fs, add unused destination type (Amir Tzin) [2112925] - net/mlx5: fs, jump to exit point and don't fall through (Amir Tzin) [2112925] - net/mlx5: fs, refactor software deletion rule (Amir Tzin) [2112925] - net/mlx5: fs, split software and IFC flow destination definitions (Amir Tzin) [2112925] - net/mlx5e: TC, set proper dest type (Amir Tzin) [2112925] - net/mlx5e: Remove unused mlx5e_dcbnl_build_rep_netdev function (Amir Tzin) [2112925] - net/mlx5e: Drop error CQE handling from the XSK RX handler (Amir Tzin) [2112925] - net/mlx5: Print initializing field in case of timeout (Amir Tzin) [2112925] - net/mlx5: Delete redundant default assignment of runtime devlink params (Amir Tzin) [2112925] - net/mlx5: Remove useless kfree (Amir Tzin) [2112925] - net/mlx5: use kvfree() for kvzalloc() in mlx5_ct_fs_smfs_matcher_create (Amir Tzin) [2112925] - RDMA/mlx5: Clean UMR QP type flow from mlx5_ib_post_send() (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to update xlt (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to update MR pas (Amir Tzin) [2112925] - RDMA/mlx5: Move creation and free of translation tables to umr.c (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to rereg pd access (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to revoke MRs (Amir Tzin) [2112925] - RDMA/mlx5: Introduce mlx5_umr_post_send_wait() (Amir Tzin) [2112925] - RDMA/mlx5: Expose wqe posting helpers outside of wr.c (Amir Tzin) [2112925] - RDMA/mlx5: Simplify get_umr_update_access_mask() (Amir Tzin) [2112925] - RDMA/mlx5: Move mkey ctrl segment logic to umr.c (Amir Tzin) [2112925] - RDMA/mlx5: Move umr checks to umr.h (Amir Tzin) [2112925] - RDMA/mlx5: Move init and cleanup of UMR to umr.c (Amir Tzin) [2112925] - RDMA/mlx5: Fix flow steering egress flow (Amir Tzin) [2112925] - mlx5, xsk: Diversify return values from xsk_wakeup call paths (Amir Tzin) [2112925] - net/mlx5: Remove not-implemented IPsec capabilities (Amir Tzin) [2112925] - net/mlx5: Remove ipsec_ops function table (Amir Tzin) [2112925] - net/mlx5: Reduce kconfig complexity while building crypto support (Amir Tzin) [2112925] - net/mlx5: Move IPsec file to relevant directory (Amir Tzin) [2112925] - net/mlx5: Remove not-needed IPsec config (Amir Tzin) [2112925] - net/mlx5: Align flow steering allocation namespace to common style (Amir Tzin) [2112925] - net/mlx5: Unify device IPsec capabilities check (Amir Tzin) [2112925] - net/mlx5: Remove useless IPsec device checks (Amir Tzin) [2112925] - net/mlx5: Remove ipsec vs. ipsec offload file separation (Amir Tzin) [2112925] - RDMA/mlx5: Drop crypto flow steering API (Amir Tzin) [2112925] - RDMA/mlx5: Delete never supported IPsec flow action (Amir Tzin) [2112925] - net/mlx5: Remove FPGA ipsec specific statistics (Amir Tzin) [2112925] - net/mlx5: Remove XFRM no_trailer flag (Amir Tzin) [2112925] - net/mlx5: Remove not-used IDA field from IPsec struct (Amir Tzin) [2112925] - net/mlx5: Delete metadata handling logic (Amir Tzin) [2112925] - net/mlx5_fpga: Drop INNOVA IPsec support (Amir Tzin) [2112925] - net/mlx5: Cleanup kTLS function names and their exposure (Amir Tzin) [2112925] - net/mlx5: Remove tls vs. ktls separation as it is the same (Amir Tzin) [2112925] - net/mlx5: Remove indirection in TLS build (Amir Tzin) [2112925] - net/mlx5: Reliably return TLS device capabilities (Amir Tzin) [2112925] - net/mlx5_fpga: Drop INNOVA TLS support (Amir Tzin) [2112925] - ipv6: Use ipv6_only_sock() helper in condition (mlx5 hunk only). (Amir Tzin) [2112925] - Revert "stmmac/intel: mark driver as tech preview" (Mark Salter) [2122230] - net: stmmac: Fix queue statistics reading (Mark Salter) [2122230] - stmmac: intel: Update PCH PTP clock rate from 200MHz to 204.8MHz (Mark Salter) [2122230] - net: stmmac: power up/down serdes in stmmac_open/release (Mark Salter) [2122230] - stmmac: intel: Simplify intel_eth_pci_remove() (Mark Salter) [2122230] - net: stmmac: work around sporadic tx issue on link-up (Mark Salter) [2122230] - stmmac: intel: Add a missing clk_disable_unprepare() call in intel_eth_pci_remove() (Mark Salter) [2122230] - net: phylink: fix SGMII inband autoneg enable (Mark Salter) [2122230] - net: phylink: fix NULL pl->pcs dereference during phylink_pcs_poll_start (Mark Salter) [2122230] - net: phylink: disable PCS polling over major configuration (Mark Salter) [2122230] - net: phylink: remove pcs_ops member (Mark Salter) [2122230] - net: pcs: xpcs: depends on PHYLINK in Kconfig (Mark Salter) [2122230] - net: phylink: add QSGMII support to phylink_mii_c22_pcs_encode_advertisement() (Mark Salter) [2122230] - net: stmmac: make mdio register skips PHY scanning for fixed-link (Mark Salter) [2122230] - stmmac: intel: add phy-mode and fixed-link ACPI _DSD setting support (Mark Salter) [2122230] - net: pcs: xpcs: add CL37 1000BASE-X AN support (Mark Salter) [2122230] - stmmac: intel: prepare to support 1000BASE-X phy interface setting (Mark Salter) [2122230] - net: make xpcs_do_config to accept advertising for pcs-xpcs and sja1105 (Mark Salter) [2122230] - net: pcs: xpcs: propagate xpcs_read error to xpcs_get_state_c37_sgmii (Mark Salter) [2122230] - net: stmmac: remove redunctant disable xPCS EEE call (Mark Salter) [2122230] - net: stmmac: fix dma queue left shift overflow issue (Mark Salter) [2122230] - net: stmmac: switch to use interrupt for hw crosstimestamping (Mark Salter) [2122230] - net: stmmac: fix unbalanced ptp clock issue in suspend/resume flow (Mark Salter) [2122230] - net: stmmac: fix pm runtime issue in stmmac_dvr_remove() (Mark Salter) [2122230] - net: stmmac: dwc-qos: Disable split header for Tegra194 (Mark Salter) [2122230] - stmmac: intel: Fix an error handling path in intel_eth_pci_probe() (Mark Salter) [2122230] - stmmac: intel: Add RPL-P PCI ID (Mark Salter) [2122230] - net: stmmac: use dev_err_probe() for reporting mdio bus registration failure (Mark Salter) [2122230] - net: stmmac: remove unused get_addr() callback (Mark Salter) [2122230] - net: pcs: pcs-xpcs: Convert to mdiobus_c45_read (Mark Salter) [2122230] - net: phylink: Convert to mdiobus_c45_{read|write} (Mark Salter) [2122230] - net: stmmac: stmmac_main: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Mark Salter) [2122230] - net: phylink: remove phylink_helper_basex_speed() (Mark Salter) [2122230] - net: phylink: remove phylink_set_10g_modes() (Mark Salter) [2122230] - net: stmmac: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Mark Salter) [2122230] - net: stmmac: fix missing pci_disable_device() on error in stmmac_pci_probe() (Mark Salter) [2122230] - net: stmmac: disable Split Header (SPH) for Intel platforms (Mark Salter) [2122230] - net: stmmac: Use readl_poll_timeout_atomic() in atomic state (Mark Salter) [2122230] - net: stmmac: Fix unset max_speed difference between DT and non-DT platforms (Mark Salter) [2122230] - stmmac: intel: Add ADL-N PCI ID (Mark Salter) [2122230] - net: stmmac: switch no PTP HW support message to info level (Mark Salter) [2122230] - net: phylink: remove phylink_set_pcs() (Mark Salter) [2122230] - stmmac: intel: Enable 2.5Gbps for Intel AlderLake-S (Mark Salter) [2122230] - net: phylink: remove phylink_config's pcs_poll (Mark Salter) [2122230] - net: phylink: use legacy_pre_march2020 (Mark Salter) [2122230] - net: phylink: add legacy_pre_march2020 indicator (Mark Salter) [2122230] - net: stmmac: optimize locking around PTP clock reads (Mark Salter) [2122230] - net: stmmac: use .mac_select_pcs() interface (Mark Salter) [2122230] - net: stmmac: convert to phylink_generic_validate() (Mark Salter) [2122230] - net: stmmac: remove phylink_config.pcs_poll usage (Mark Salter) [2122230] - net: stmmac/xpcs: convert to pcs_validate() (Mark Salter) [2122230] - net: convert users of bitmap_foo() to linkmode_foo() (Mark Salter) [2122230] - net: phylink: add pcs_validate() method (Mark Salter) [2122230] - net: phylink: add mac_select_pcs() method to phylink_mac_ops (Mark Salter) [2122230] - net: phylink: tidy up disable bit clearing (Mark Salter) [2122230] - net: phylink: handle NA interface mode in phylink_fwnode_phy_connect() (Mark Salter) [2122230] - net: phylink: Add helpers for c22 registers without MDIO (Mark Salter) [2122230] - net: phylink: add 1000base-KX to phylink_caps_to_linkmodes() (Mark Salter) [2122230] - net: phylink: add generic validate implementation (Mark Salter) [2122230] - net: phylink: use supported_interfaces for phylink validation (Mark Salter) [2122230] - net: phylink: add MAC phy_interface_t bitmap (Mark Salter) [2122230] - net: phy: add phy_interface_t bitmap support (Mark Salter) [2122230] - net: phylink: Convert some users of mdiobus_* to mdiodev_* (Mark Salter) [2122230] - net: phylink: use mdiobus_modify_changed() helper (Mark Salter) [2122230] - net: mdio: add mdiobus_modify_changed() (Mark Salter) [2122230] - net: phylink: add phylink_set_10g_modes() helper (Mark Salter) [2122230] - net: stmmac: fill in supported_interfaces (Mark Salter) [2122230] - net: stmmac: convert to phylink_get_linkmodes() (Mark Salter) [2122230] - net: xpcs: add support for retrieving supported interface modes (Mark Salter) [2122230] - net: mdio: Add helper functions for accessing MDIO devices (Mark Salter) [2122230] - net: stmmac: fix return value of __setup handler (Mark Salter) [2122230] - net: stmmac: only enable DMA interrupts when ready (Mark Salter) [2122230] - net: stmmac: ensure PTP time register reads are consistent (Mark Salter) [2122230] - net: stmmac: dump gmac4 DMA registers correctly (Mark Salter) [2122230] - net: stmmac: properly handle with runtime pm in stmmac_dvr_remove() (Mark Salter) [2122230] - net: stmmac: skip only stmmac_ptp_register when resume from suspend (Mark Salter) [2122230] - drivers/net/ethernet: clean up mis-targeted comments (Mark Salter) [2122230] - net: stmmac: configure PTP clock source prior to PTP initialization (Mark Salter) [2122230] - net: stmmac: reduce unnecessary wakeups from eee sw timer (Mark Salter) [2122230] - net: stmmac: remove unused members in struct stmmac_priv (Mark Salter) [2122230] - net: stmmac: Fix "Unbalanced pm_runtime_enable!" warning (Mark Salter) [2122230] - net: stmmac: add tc flower filter for EtherType matching (Mark Salter) [2122230] - net: stmmac: bump tc when get underflow error from DMA descriptor (Mark Salter) [2122230] - stmmac: remove ethtool driver version info (Mark Salter) [2122230] - net: stmmac: Calculate CDC error only once (Mark Salter) [2122230] - net: stmmac: ptp: fix potentially overflowing expression (Mark Salter) [2122230] - net: stmmac: fix tc flower deletion for VLAN priority Rx steering (Mark Salter) [2122230] - net: stmmac: Avoid DMA_CHAN_CONTROL write if no Split Header support (Mark Salter) [2122230] - net: stmmac: Disable Tx queues when reconfiguring the interface (Mark Salter) [2122230] - net: phylink: Force retrigger in case of latched link-fail indicator (Mark Salter) [2122230] - net: phylink: Force link down and retrigger resolve on interface change (Mark Salter) [2122230] - net: stmmac: retain PTP clock time during SIOCSHWTSTAMP ioctls (Mark Salter) [2122230] - stmmac_pci: Fix underflow size in stmmac_rx (Mark Salter) [2122230] - net: stmmac: Fix signed/unsigned wreckage (Mark Salter) [2122230] - net: stmmac: allow a tc-taprio base-time of zero (Mark Salter) [2122230] - ethernet: stmmac: use eth_hw_addr_set() (Mark Salter) [2122230] - net: phylink: Support disabling autonegotiation for PCS (Mark Salter) [2122230] - net: stmmac: fix off-by-one error in sanity check (Mark Salter) [2122230] - net: stmmac: fix gcc-10 -Wrestrict warning (Mark Salter) [2122230] - net: phylink: don't call netif_carrier_off() with NULL netdev (Mark Salter) [2122230] - net: stmmac: Fix E2E delay mechanism (Mark Salter) [2122230] - net: stmmac: add support for dwmac 3.40a (Mark Salter) [2122230] - net: stmmac: fix get_hw_feature() on old hardware (Mark Salter) [2122230] - net: stmmac: trigger PCS EEE to turn off on link down (Mark Salter) [2122230] - net: pcs: xpcs: fix incorrect steps on disable EEE (Mark Salter) [2122230] - net: pcs: xpcs: fix incorrect CL37 AN sequence (Mark Salter) [2122230] - net: stmmac: fix EEE init issue when paired with EEE capable PHYs (Mark Salter) [2122230] - net: stmmac: allow CSR clock of 300MHz (Mark Salter) [2122230] - net: stmmac: platform: fix build warning when with !CONFIG_PM_SLEEP (Mark Salter) [2122230] - net: stmmac: fix system hang caused by eee_ctrl_timer during suspend/resume (Mark Salter) [2122230] - net: stmmac: fix MAC not working when system resume back with WoL active (Mark Salter) [2122230] - net: phylink: add suspend/resume support (Mark Salter) [2122230] - net: stmmac: add ethtool per-queue irq statistic support (Mark Salter) [2122230] - net: stmmac: add ethtool per-queue statistic framework (Mark Salter) [2122230] - net: stmmac: fix INTR TBU status affecting irq count statistic (Mark Salter) [2122230] - net: pcs: xpcs: Add Pause Mode support for SGMII and 2500BaseX (Mark Salter) [2122230] - net: stmmac: fix kernel panic due to NULL pointer dereference of plat->est (Mark Salter) [2122230] - net: pcs: xpcs: fix error handling on failed to allocate memory (Mark Salter) [2122230] - net: stmmac: add est_irq_status callback function for GMAC 4.10 and 5.10 (Mark Salter) [2122230] - net: stmmac: ptp: update tas basetime after ptp adjust (Mark Salter) [2122230] - net: stmmac: add mutex lock to protect est parameters (Mark Salter) [2122230] - net: stmmac: separate the tas basetime calculation function (Mark Salter) [2122230] - net: stmmac: Terminate FPE workqueue in suspend (Mark Salter) [2122230] - stmmac: intel: set PCI_D3hot in suspend (Mark Salter) [2122230] - stmmac: intel: Enable PHY WOL option in EHL (Mark Salter) [2122230] - net: stmmac: option to enable PHY WOL with PMT enabled (Mark Salter) [2122230] - net: stmmac: remove redundant continue statement (Mark Salter) [2122230] - stmmac: intel: fix wrong kernel-doc (Mark Salter) [2122230] - stmmac: intel: move definitions to dwmac-intel header file (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_do_config and xpcs_link_up (Mark Salter) [2122230] - net: pcs: xpcs: also ignore phy id if it's all ones (Mark Salter) [2122230] - net: pcs: xpcs: add support for sgmii with no inband AN (Mark Salter) [2122230] - net: pcs: xpcs: move register bit descriptions to a header file (Mark Salter) [2122230] - net: stmmac: reduce indentation when calling stmmac_xpcs_setup (Mark Salter) [2122230] - net: stmmac: reverse Christmas tree notation in stmmac_xpcs_setup (Mark Salter) [2122230] - net: pcs: xpcs: rename mdio_xpcs_args to dw_xpcs (Mark Salter) [2122230] - net: phylink: Refactor phylink_of_phy_connect() (Mark Salter) [2122230] - net: phylink: introduce phylink_fwnode_phy_connect() (Mark Salter) [2122230] - net: phy: Introduce phy related fwnode functions (Mark Salter) [2122230] - net: phy: Introduce fwnode_mdio_find_device() (Mark Salter) [2122230] - net: stmmac: Fix unused values warnings (Mark Salter) [2122230] - net: stmmac: Fix mixed enum type warning (Mark Salter) [2122230] - net: stmmac: Fix missing { } around two statements in an if statement (Mark Salter) [2122230] - net: stmmac: explicitly deassert GMAC_AHB_RESET (Mark Salter) [2122230] - net: stmmac: platform: use optional clk/reset get APIs (Mark Salter) [2122230] - net: stmmac: fix NPD with phylink_set_pcs if there is no MDIO bus (Mark Salter) [2122230] - net: stmmac: enable Intel mGbE 2.5Gbps link speed (Mark Salter) [2122230] - net: pcs: add 2500BASEX support for Intel mGbE controller (Mark Salter) [2122230] - net: stmmac: split xPCS setup from mdio register (Mark Salter) [2122230] - net: pcs: xpcs: convert to phylink_pcs_ops (Mark Salter) [2122230] - net: pcs: xpcs: convert to mdio_device (Mark Salter) [2122230] - net: pcs: xpcs: use mdiobus_c45_addr in xpcs_{read,write} (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_probe (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_config_eee (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_validate (Mark Salter) [2122230] - net: pcs: xpcs: make the checks related to the PHY interface mode stateless (Mark Salter) [2122230] - net: pcs: xpcs: delete shim definition for mdio_xpcs_get_ops() (Mark Salter) [2122230] - net: pcs: xpcs: there is only one PHY ID (Mark Salter) [2122230] - net: stmmac: enable platform specific safety features (Mark Salter) [2122230] - net: stmmac: the XPCS obscures a potential "PHY not found" error (Mark Salter) [2122230] - net: stmmac: Add callbacks for DWC xpcs Energy Efficient Ethernet (Mark Salter) [2122230] - net: pcs: Introducing support for DWC xpcs Energy Efficient Ethernet (Mark Salter) [2122230]- xfs: reserve quota for dir expansion when linking/unlinking files (Bill O'Donnell) [2086880] - scsi: storvsc: Fix swiotlb bounce buffer leak in confidential VM (Emanuele Giuseppe Esposito) [2150659] - ACPICA: Fix operand resolution (Mark Langsdorf) [2156144] - driver core: Add missing kernel doc for device::msi_lock (Myron Stowe) [2158839] - PCI/MSI: Protect msi_desc::masked for multi-MSI (Myron Stowe) [2158839] - KVM: arm64: Don't retrieve memory slot again in page fault handler (Gavin Shan) [2161161] - fs: allow cross-vfsmount reflink/dedupe (Andrey Albershteyn) [2086200] - powerpc/hv-gpci: Fix hv_gpci event list (Mamatha Inamdar) [2161258] - powerpc: declare unmodified attribute_group usages const (Mamatha Inamdar) [2161258] - drm/amd: Delay removal of the firmware framebuffer (Michel Dänzer) [2162039] - cpuidle: Add cpu_idle_miss trace event (Mark Langsdorf) [2122312] - cpuidle: haltpoll: Add trace points for guest_halt_poll_ns grow/shrink (Mark Langsdorf) [2122312] - efi/cper, cxl: Decode CXL Error Log (Lenny Szubowicz) [2143733] - efi/cper, cxl: Decode CXL Protocol Error Section (Lenny Szubowicz) [2143733] - efi: cper: Add support for printing Firmware Error Record Reference (Lenny Szubowicz) [2143733] - Bluetooth: L2CAP: Fix use-after-free caused by l2cap_reassemble_sdu (Wander Lairson Costa) [2152927] {CVE-2022-3564} - drm/i915: Fix CFI violations in gt_sysfs (Jocelyn Falempe) [2154880] - NFS: Clear the file access cache upon login (Benjamin Coddington) [2050832] - NFS: don't store 'struct cred *' in struct nfs_access_entry (Benjamin Coddington) [2050832] - NFS: pass cred explicitly for access tests (Benjamin Coddington) [2050832] - NFS: change nfs_access_get_cached to only report the mask (Benjamin Coddington) [2050832] - init: Initialize noop_backing_dev_info early (Nico Pache) [2160228] - mm: vmscan: make rotations a secondary factor in balancing anon vs file (Nico Pache) [2160228] - writeback: Fix inode->i_io_list not be protected by inode->i_lock error (Nico Pache) [2160228] - mm: vmscan: fix extreme overreclaim and swap floods (Nico Pache) [2160228] - mm/page_alloc: ensure kswapd doesn't accidentally go to sleep (Nico Pache) [2160228] - mm/page_io: count submission time as thrashing delay for delayacct (Nico Pache) [2160228] - delayacct: support re-entrance detection of thrashing accounting (Nico Pache) [2160228] - filemap: make the accounting of thrashing more consistent (Nico Pache) [2160228] - writeback: don't warn on an unregistered BDI in __mark_inode_dirty (Nico Pache) [2160228] - s390/dasd: fix no record found for raw_track_access (Tobias Huschle) [2161270] - crypto: testmgr - disallow certain DRBG hash functions in FIPS mode (Vladis Dronov) [2152133] - dmaengine: idxd: Fix crc_val field for completion record (Jerry Snitselaar) [2144375] - dmaengine: idxd: Make read buffer sysfs attributes invisible for Intel IAA (Jerry Snitselaar) [2144375] - dmaengine: idxd: Make max batch size attributes in sysfs invisible for Intel IAA (Jerry Snitselaar) [2144375] - dmaengine: idxd: Do not call DMX TX callbacks during workqueue disable (Jerry Snitselaar) [2144375] - dmaengine: idxd: Prevent use after free on completion memory (Jerry Snitselaar) [2144375] - dmaengine: idxd: Let probe fail when workqueue cannot be enabled (Jerry Snitselaar) [2144375] - dmaengine: idxd: Fix max batch size for Intel IAA (Jerry Snitselaar) [2144375] - dmaengine: idxd: add configuration for concurrent batch descriptor processing (Jerry Snitselaar) [2144375] - dmanegine: idxd: reformat opcap output to match bitmap_parse() input (Jerry Snitselaar) [2144375] - dmaengine: idxd: add configuration for concurrent work descriptor processing (Jerry Snitselaar) [2144375] - dmaengine: idxd: add WQ operation cap restriction support (Jerry Snitselaar) [2144375] - dmaengine: idxd: convert ats_dis to a wq flag (Jerry Snitselaar) [2144375] - dmaengine: idxd: track enabled workqueues in bitmap (Jerry Snitselaar) [2144375] - dmaengine: idxd: Set wq state to disabled in idxd_wq_disable_cleanup() (Jerry Snitselaar) [2144375] - dmaengine: idxd: Do not enable user type Work Queue without Shared Virtual Addressing (Jerry Snitselaar) [2144375] - dmaengine: idxd: fix RO device state error after been disabled/reset (Jerry Snitselaar) [2144375] - dmaengine: idxd: avoid deadlock in process_misc_interrupts() (Jerry Snitselaar) [2144375] - KVM: x86: nSVM: implement nested LBR virtualization (Emanuele Giuseppe Esposito) [2155149] - KVM: x86: nSVM: correctly virtualize LBR msrs when L2 is running (Emanuele Giuseppe Esposito) [2155149] - kvm: x86: SVM: use vmcb* instead of svm->vmcb where it makes sense (Emanuele Giuseppe Esposito) [2155149] - KVM: x86: nSVM: implement nested VMLOAD/VMSAVE (Emanuele Giuseppe Esposito) [2155149] - eth: octeon: fix build after netif_napi_add() changes (Íñigo Huguet) [2152918] - net: drop the weight argument from netif_napi_add (Íñigo Huguet) [2152918] - net: remove netif_tx_napi_add() (Íñigo Huguet) [2152918] - ipoib: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - IB/hfi1: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - IB/hfi1: switch to netif_napi_add_tx() (Íñigo Huguet) [2152918] - crypto: caam/qi2 - switch to netif_napi_add_tx_weight() (Íñigo Huguet) [2152918] - can: can-dev: move to netif_napi_add_weight() (Íñigo Huguet) [2152918] - net: virtio: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - r8152: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - eth: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - mt76: switch to netif_napi_add_tx() (Íñigo Huguet) [2152918] - net: move snowflake callers to netif_napi_add_tx_weight() (Íñigo Huguet) [2152918] - net: switch to netif_napi_add_tx() (Íñigo Huguet) [2152918] - can: m_can: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: remove remaining copies of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: benet: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: atlantic: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: smsc: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: remove copies of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - netdev: reshuffle netif_napi_add() APIs to allow dropping weight (Íñigo Huguet) [2152918] - ipv6: raw: Deduct extension header length in rawv6_push_pending_frames (Hangbin Liu) [2162124] {CVE-2023-0394} - netfilter: conntrack: handle tcp challenge acks during connection reuse (Florian Westphal) [2158726] - act_mirred: use the backlog for nested calls to mirred ingress (Davide Caratti) [2131339] {CVE-2022-4269} - net/sched: act_mirred: better wording on protection against excessive stack growth (Davide Caratti) [2131339] - xfs: add selinux labels to whiteout inodes (Andrey Albershteyn) [2094060] - tdx: enable TDX attestation driver (Wander Lairson Costa) [2076748] - selftests/tdx: Test TDX attestation GetReport support (Wander Lairson Costa) [2076748] - virt: Add TDX guest driver (Wander Lairson Costa) [2076748] - x86/tdx: Add a wrapper to get TDREPORT0 from the TDX Module (Wander Lairson Costa) [2076748] - proc: proc_skip_spaces() shouldn't think it is working on C strings (Wander Lairson Costa) [2152572] {CVE-2022-4378} - proc: avoid integer type confusion in get_proc_long (Wander Lairson Costa) [2152572] {CVE-2022-4378} - NFSv4.2: Update mode bits after ALLOCATE and DEALLOCATE (Jeffrey Layton) [2127153] - NFS: nfsiod should not block forever in mempool_alloc() (Jeffrey Layton) [2127153] - NFSv4.1: Handle NFS4ERR_DELAY replies to OP_SEQUENCE correctly (Benjamin Coddington) [2061259] - NFSv4.1: Don't decrease the value of seq_nr_highest_sent (Benjamin Coddington) [2061259]- uas: ignore UAS for Thinkplus chips (Torez Smith) [2113004] - usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS (Torez Smith) [2113004] - thunderbolt: Explicitly reset plug events delay back to USB4 spec value (Torez Smith) [2113004] - USB: serial: option: add Quectel BG95 0x0203 composition (Torez Smith) [2113004] - thunderbolt: Add support for Intel Maple Ridge single port controller (Torez Smith) [2113004] - USB: core: Fix RST error in hub.c (Torez Smith) [2113004] - kunit: fix Kconfig for build-in tests USB4 and Nitro Enclaves (Torez Smith) [2113004] - usb: storage: Add ASUS <0x0b05:0x1932> to IGNORE_UAS (Torez Smith) [2113004] - USB: serial: cp210x: add Decagon UCA device id (Torez Smith) [2113004] - USB: core: Prevent nested device-reset calls (Torez Smith) [2113004] - usb: typec: Remove retimers properly (Torez Smith) [2113004] - USB: serial: ftdi_sio: add Omron CS1W-CIF31 device id (Torez Smith) [2113004] - USB: serial: option: add support for OPPO R11 diag port (Torez Smith) [2113004] - xhci: Add grace period after xHC start to prevent premature runtime suspend. (Torez Smith) [2113004] - xhci: Fix null pointer dereference in remove if xHC has only one roothub (Torez Smith) [2113004] - USB: cdc-acm: Add Icom PMR F3400 support (0c26:0020) (Torez Smith) [2113004] - usb: xhci-mtk: fix bandwidth release issue (Torez Smith) [2113004] - usb: xhci-mtk: relax TT periodic bandwidth allocation (Torez Smith) [2113004] - usb: typec: altmodes/displayport: correct pin assignment for UFP receptacles (Torez Smith) [2113004] - usb: typec: intel_pmc_mux: Add new ACPI ID for Meteor Lake IOM device (Torez Smith) [2113004] - usb-storage: Add ignore-residue quirk for NXP PN7462AU (Torez Smith) [2113004] - usb: typec: tcpm: Return ENOTSUPP for power supply prop writes (Torez Smith) [2113004] - thunderbolt: Check router generation before connecting xHCI (Torez Smith) [2113004] - thunderbolt: Use the actual buffer in tb_async_error() (Torez Smith) [2113004] - USB: usbsevseg: convert sysfs snprintf to sysfs_emit (Torez Smith) [2113004] - dt-bindings: usb: Add binding for TI USB8041 hub controller (Torez Smith) [2113004] - usb: typec: ucsi: stm32g0: add bootloader support (Torez Smith) [2113004] - usb: typec: ucsi: stm32g0: add support for stm32g0 controller (Torez Smith) [2113004] - dt-bindings: usb: typec: add bindings for stm32g0 controller (Torez Smith) [2113004] - usb: typec: ucsi: Acknowledge the GET_ERROR_STATUS command completion (Torez Smith) [2113004] - usb: typec: retimer: Add missing id check in match callback (Torez Smith) [2113004] - USB: xhci: Fix comment typo (Torez Smith) [2113004] - usb/typec/tcpm: fix repeated words in comments (Torez Smith) [2113004] - usb/misc: fix repeated words in comments (Torez Smith) [2113004] - usb/image: fix repeated words in comments (Torez Smith) [2113004] - usb/host: fix repeated words in comments (Torez Smith) [2113004] - usb/core: fix repeated words in comments (Torez Smith) [2113004] - usb/atm: fix repeated words in comments (Torez Smith) [2113004] - USB: HCD: Fix URB giveback issue in tasklet function (Torez Smith) [2113004] - usb: xhci_plat_remove: avoid NULL dereference (Torez Smith) [2113004] - USB: serial: fix tty-port initialized comments (Torez Smith) [2113004] - USB: serial: usb_wwan: replace DTR/RTS magic numbers with macros (Torez Smith) [2113004] - USB: cdc-acm: use CDC serial-state defines (Torez Smith) [2113004] - USB: cdc-acm: use CDC control-line defines (Torez Smith) [2113004] - USB: cdc: add serial-state defines (Torez Smith) [2113004] - USB: cdc: add control-signal defines (Torez Smith) [2113004] - net/cdc_ncm: Increase NTB max RX/TX values to 64kb (Torez Smith) [2113004] - usb: typec: Add retimer handle to port (Torez Smith) [2113004] - usb: typec: Add support for retimers (Torez Smith) [2113004] - dt-bindings: usb: Add analogix anx7411 PD binding (Torez Smith) [2113004] - usb: ldusb: replace ternary operator with max_t() (Torez Smith) [2113004] - USB: serial: fix repeated word "the" in comments (Torez Smith) [2113004] - USB: serial: io_edgeport: fix spelling mistakes (Torez Smith) [2113004] - USB: serial: ftdi_sio: add Belimo device ids (Torez Smith) [2113004] - thunderbolt: test: Use kunit_test_suite() macro (Torez Smith) [2113004] - media: pvrusb2: drop unexpected word 'a' in comments (Torez Smith) [2113004] - media: gspca: drop unexpected word 'is' in the comments (Torez Smith) [2113004] - usb: typec: add missing uevent when partner support PD (Torez Smith) [2113004] - tools: usb: testusb: Add super-plus speed reporting (Torez Smith) [2113004] - tools: usb: testusb: Add super speed reporting (Torez Smith) [2113004] - tools: usb: testusb: Add wireless speed reporting (Torez Smith) [2113004] - usb: typec: tcpci: move tcpci.h to include/linux/usb/ (Torez Smith) [2113004] - ARM: sa1100/assabet: move dmabounce hack to ohci driver (Torez Smith) [2113004] - usb: host: xhci: use snprintf() in xhci_decode_trb() (Torez Smith) [2113004] - USB: cdc-acm: use define for timeout (Torez Smith) [2113004] - usb: typec_altmode: add a missing "@" at a kernel-doc parameter (Torez Smith) [2113004] - usb: core: sysfs: convert sysfs snprintf to sysfs_emit (Torez Smith) [2113004] - media: usb: gspca: aligned '*' each line (Torez Smith) [2113004] - media: hdpvr: fix error value returns in hdpvr_read (Torez Smith) [2113004] - media: em28xx: Remove useless license text when SPDX-License-Identifier is already used (Torez Smith) [2113004] - USB: serial: use kmemdup instead of kmalloc + memcpy (Torez Smith) [2113004] - usb: host: ehci-q: Fix ehci_submit_single_step_set_feature annotation typo (Torez Smith) [2113004] - USB: storage: Fix typo in comment (Torez Smith) [2113004] - usb: typec: mux: Add CONFIG guards for functions (Torez Smith) [2113004] - usb: typec: mux: Allow muxes to specify mode-switch (Torez Smith) [2113004] - usb: musb: Add support for PolarFire SoC's musb controller (Torez Smith) [2113004] - media: pvrusb2: fix memory leak in pvr_probe (Torez Smith) [2113004] - media: airspy: respect the DMA coherency rules (Torez Smith) [2113004] - media: usbtv: Add PAL-Nc standard (Torez Smith) [2113004] - thunderbolt: Fix typo in comment (Torez Smith) [2113004] - dt-bindings: usb: add documentation for aspeed udc (Torez Smith) [2113004] - usb: Avoid extra usb SET_SEL requests when enabling link power management (Torez Smith) [2113004] - usb: typec: tcpm: Register USB Power Delivery Capabilities (Torez Smith) [2113004] - usb: typec: USB Power Delivery helpers for ports and partners (Torez Smith) [2113004] - usb: typec: Separate USB Power Delivery from USB Type-C (Torez Smith) [2113004] - usb: hub: port: add sysfs entry to switch port power (Torez Smith) [2113004] - ucsi_ccg: ACPI based I2c client enumeration for AMD ASICs (Torez Smith) [2113004] - ucsi_ccg: Do not hardcode interrupt polarity and type (Torez Smith) [2113004] - usb: xhci-mtk: add support optional controller reset (Torez Smith) [2113004] - usb: typec: tcpm: fix typo in comment (Torez Smith) [2113004] - usb: xhci: tegra: Fix error check (Torez Smith) [2113004] - usb: common: usb-conn-gpio: Allow wakeup from system suspend (Torez Smith) [2113004] - usbip: vudc: Don't enable IRQs prematurely (Torez Smith) [2113004] - USB: usbip: clean up mixed use of _irq() and _irqsave() (Torez Smith) [2113004] - USB: Follow-up to SPDX identifiers addition - remove now useless comments (Torez Smith) [2113004] - thunderbolt: Fix some kernel-doc comments (Torez Smith) [2113004] - usb: hub: Simplify error and success path in port_over_current_notify (Torez Smith) [2113004] - usb: remove Link Powermanagement (LPM) disable before port reset. (Torez Smith) [2113004] - thunderbolt: Change TMU mode to HiFi uni-directional once DisplayPort tunneled (Torez Smith) [2113004] - usb: core: Bail out when port is stuck in reset loop (Torez Smith) [2113004] - thunderbolt: Add CL1 support for USB4 and Titan Ridge routers (Torez Smith) [2113004] - thunderbolt: Change downstream router's TMU rate in both TMU uni/bidir mode (Torez Smith) [2113004] - USB: core: Fix bug in resuming hub's handling of wakeup requests (Torez Smith) [2113004] - thunderbolt: Fix typos in CLx enabling (Torez Smith) [2113004] - usb: hub: Add delay for SuperSpeed hub resume to let links transit to U0 (Torez Smith) [2113004] - usb: hub: make wait_for_connected() take an int instead of a pointer to int (Torez Smith) [2113004] - thunderbolt: CLx disable before system suspend only if previously enabled (Torez Smith) [2113004] - usb: hub: avoid warm port reset during USB3 disconnect (Torez Smith) [2113004] - thunderbolt: Silently ignore CLx enabling in case CLx is not supported (Torez Smith) [2113004]- config: Enable Security Path (Ricardo Robaina) [2161309] - tcp: Fix build break when CONFIG_IPV6=n (Jamie Bainbridge) [2143849] - tcp: annotate data-race around queue->synflood_warned (Jamie Bainbridge) [2143849] - tcp: Add listening address to SYN flood message (Jamie Bainbridge) [2143849] - tcp: Fix data-races around sysctl_tcp_syncookies. (Jamie Bainbridge) [2143849] - firmware_loader: Fix memory leak in firmware upload (Mark Langsdorf) [2122319] - firmware_loader: Fix use-after-free during unregister (Mark Langsdorf) [2122319] - firmware_loader: fix memory leak for paged buffer (Mark Langsdorf) [2122319] - firmware_loader: describe 'module' parameter of firmware_upload_register() (Mark Langsdorf) [2122319] - firmware_loader: Move definitions from sysfs_upload.h to sysfs.h (Mark Langsdorf) [2122319] - firmware_loader: Add sysfs nodes to monitor fw_upload (Mark Langsdorf) [2122319] - firmware_loader: Add firmware-upload support (Mark Langsdorf) [2122319] - firmware_loader: Split sysfs support from fallback (Mark Langsdorf) [2122319] - firmware_loader: Clear data and size in fw_free_paged_buf (Mark Langsdorf) [2122319] - firmware: Use kvmalloc for page tables (Mark Langsdorf) [2122319] - firmware: Unify the paged buffer release helper (Mark Langsdorf) [2122319] - firmware: Free temporary page table after vmapping (Mark Langsdorf) [2122319] - arch_topology: Make cluster topology span at least SMT CPUs (Mark Langsdorf) [2122319] - driver core: fix driver_set_override() issue with empty strings (Mark Langsdorf) [2122319] - arch_topology: Silence early cacheinfo errors when non-existent (Mark Langsdorf) [2122319] - driver core: Don't probe devices after bus_type.match() probe deferral (Mark Langsdorf) [2122319] - regmap: spi: Reserve space for register address/padding (Mark Langsdorf) [2122319] - arch_topology: Fix cache attributes detection in the CPU hotplug path (Mark Langsdorf) [2122319] - cacheinfo: Use atomic allocation for percpu cache attributes (Mark Langsdorf) [2122319] - regmap: permit to set reg_update_bits with bulk implementation (Mark Langsdorf) [2122319] - PM: domains: Ensure genpd_debugfs_dir exists before remove (Mark Langsdorf) [2122319] - PM: runtime: Extend support for wakeirq for force_suspend|resume (Mark Langsdorf) [2122319] - regmap: add WARN_ONCE when invalid mask is provided to regmap_field_init() (Mark Langsdorf) [2122319] - PM: wakeup: Unify device_init_wakeup() for PM_SLEEP and !PM_SLEEP (Mark Langsdorf) [2122319] - arch_topology: Warn that topology for nested clusters is not supported (Mark Langsdorf) [2122319] - arch_topology: Add support for parsing sockets in /cpu-map (Mark Langsdorf) [2122319] - arch_topology: Set cluster identifier in each core/thread from /cpu-map (Mark Langsdorf) [2122319] - arch_topology: Limit span of cpu_clustergroup_mask() (Mark Langsdorf) [2122319] - arch_topology: Don't set cluster identifier as physical package identifier (Mark Langsdorf) [2122319] - arch_topology: Avoid parsing through all the CPUs once a outlier CPU is found (Mark Langsdorf) [2122319] - arch_topology: Check for non-negative value rather than -1 for IDs validity (Mark Langsdorf) [2122319] - arch_topology: Set thread sibling cpumask only within the cluster (Mark Langsdorf) [2122319] - arch_topology: Drop LLC identifier stash from the CPU topology (Mark Langsdorf) [2122319] - arm64: topology: Remove redundant setting of llc_id in CPU topology (Mark Langsdorf) [2122319] - arch_topology: Use the last level cache information from the cacheinfo (Mark Langsdorf) [2122319] - arch_topology: Add support to parse and detect cache attributes (Mark Langsdorf) [2122319] - cacheinfo: Align checks in cache_shared_cpu_map_{setup,remove} for readability (Mark Langsdorf) [2122319] - cacheinfo: Use cache identifiers to check if the caches are shared if available (Mark Langsdorf) [2122319] - cacheinfo: Allow early detection and population of cache attributes (Mark Langsdorf) [2122319] - cacheinfo: Add support to check if last level cache(LLC) is valid or shared (Mark Langsdorf) [2122319] - cacheinfo: Move cache_leaves_are_shared out of CONFIG_OF (Mark Langsdorf) [2122319] - cacheinfo: Add helper to access any cache index for a given CPU (Mark Langsdorf) [2122319] - cacheinfo: Use of_cpu_device_node_get instead cpu_dev->of_node (Mark Langsdorf) [2122319] - regmap: cache: Add extra parameter check in regcache_init (Mark Langsdorf) [2122319] - regmap-irq: Refactor checks for status bulk read support (Mark Langsdorf) [2122319] - regmap-irq: Remove mask_writeonly and regmap_irq_update_bits() (Mark Langsdorf) [2122319] - regmap-irq: Remove inappropriate uses of regmap_irq_update_bits() (Mark Langsdorf) [2122319] - driver core: fix potential deadlock in __driver_attach (Mark Langsdorf) [2122319] - devtmpfs: fix the dangling pointer of global devtmpfsd thread (Mark Langsdorf) [2122319] - regmap: Don't warn about cache only mode for devices with no cache (Mark Langsdorf) [2122319] - regmap: Wire up regmap_config provided bulk write in missed functions (Mark Langsdorf) [2122319] - regmap: Make regmap_noinc_read() return -ENOTSUPP if map->read isn't set (Mark Langsdorf) [2122319] - regmap: Re-introduce bulk read support check in regmap_bulk_read() (Mark Langsdorf) [2122319] - init: Initialize noop_backing_dev_info early (Mark Langsdorf) [2122319] - driver core: Introduce device_find_any_child() helper (Mark Langsdorf) [2122319] - regmap: cache: Fix syntax errors in comments (Mark Langsdorf) [2122319] - PM: domains: Trust domain-idle-states from DT to be correct by genpd (Mark Langsdorf) [2122319] - PM: domains: Measure power-on/off latencies in genpd based on a governor (Mark Langsdorf) [2122319] - PM: domains: Allocate governor data dynamically based on a genpd governor (Mark Langsdorf) [2122319] - PM: domains: Clean up some code in pm_genpd_init() and genpd_remove() (Mark Langsdorf) [2122319] - PM: domains: Fix initialization of genpd's next_wakeup (Mark Langsdorf) [2122319] - PM: domains: Fixup QoS latency measurements for IRQ safe devices in genpd (Mark Langsdorf) [2122319] - PM: domains: Measure suspend/resume latencies in genpd based on governor (Mark Langsdorf) [2122319] - PM: domains: Move the next_wakeup variable into the struct gpd_timing_data (Mark Langsdorf) [2122319] - PM: domains: Allocate gpd_timing_data dynamically based on governor (Mark Langsdorf) [2122319] - PM: domains: Skip another warning in irq_safe_dev_in_sleep_domain() (Mark Langsdorf) [2122319] - PM: domains: Rename irq_safe_dev_in_no_sleep_domain() in genpd (Mark Langsdorf) [2122319] - PM: domains: Don't check PM_QOS_FLAG_NO_POWER_OFF in genpd (Mark Langsdorf) [2122319] - PM: domains: Drop redundant code for genpd always-on governor (Mark Langsdorf) [2122319] - PM: domains: Add GENPD_FLAG_RPM_ALWAYS_ON for the always-on governor (Mark Langsdorf) [2122319] - PM: wakeup: expose pm_wakeup_pending to modules (Mark Langsdorf) [2122319] - driver core: fix deadlock in __device_attach (Mark Langsdorf) [2122319] - driver: base: fix UAF when driver_attach failed (Mark Langsdorf) [2122319] - driver core: location: Add "back" as a possible output for panel (Mark Langsdorf) [2122319] - driver core: location: Free struct acpi_pld_info *pld (Mark Langsdorf) [2122319] - regmap: Add missing map->bus check (Mark Langsdorf) [2122319] - device property: Advertise fwnode and device property count API calls (Mark Langsdorf) [2122319] - driver core: location: Check for allocations failure (Mark Langsdorf) [2122319] - regmap: Add bulk read/write callbacks into regmap_config (Mark Langsdorf) [2122319] - device property: Fix recent breakage of fwnode_get_next_parent_dev() (Mark Langsdorf) [2122319] - drivers/base/memory: fix an unlikely reference counting issue in __add_memory_block() (Mark Langsdorf) [2122319] - driver core: Add dma_cleanup callback in bus_type (Mark Langsdorf) [2122319] - driver core: Add sysfs support for physical location of a device (Mark Langsdorf) [2122319] - drivers/base/node.c: fix compaction sysfs file leak (Mark Langsdorf) [2122319] - driver core: Prevent overriding async driver of a device before it probe (Mark Langsdorf) [2122319] - Documentation: dd: Use ReST lists for return values of driver_deferred_probe_check_state() (Mark Langsdorf) [2122319] - regmap: cache: set max_register with reg_stride (Mark Langsdorf) [2122319] - firmware_loader: Check fw_state_is_done in loading_store (Mark Langsdorf) [2122319] - driver: platform: Add helper for safer setting of driver_override (Mark Langsdorf) [2122319] - PM: domains: Move genpd's time-accounting to ktime_get_mono_fast_ns() (Mark Langsdorf) [2122319] - PM: runtime: Allow to call __pm_runtime_set_status() from atomic context (Mark Langsdorf) [2122319] - device property: Drop 'test' prefix in parameters of fwnode_is_ancestor_of() (Mark Langsdorf) [2122319] - device property: Introduce fwnode_for_each_parent_node() (Mark Langsdorf) [2122319] - device property: Allow error pointer to be passed to fwnode APIs (Mark Langsdorf) [2122319] - device property: Check fwnode->secondary in fwnode_graph_get_next_endpoint() (Mark Langsdorf) [2122319] - PM: runtime: Avoid device usage count underflows (Mark Langsdorf) [2122319] - PM: domains: Extend dev_pm_domain_detach() doc (Mark Langsdorf) [2122319]- gitlab-ci: use CI templates from production branch (Michael Hofmann) - cpufreq: ACPI: Remove unused variables 'acpi_cpufreq_online' and 'ret' (Mark Langsdorf) [2038200] - cpufreq: ACPI: Only set boost MSRs on supported CPUs (Mark Langsdorf) [2038200] - cpufreq: ACPI: Defer setting boost MSRs (Mark Langsdorf) [2038200] - s390/kexec: fix ipl report address for kdump (Tobias Huschle) [2161328] - iavf: schedule watchdog immediately when changing primary MAC (Michal Schmidt) [2152493] - iavf: Move netdev_update_features() into watchdog task (Michal Schmidt) [2152493] - iavf: fix temporary deadlock and failure to set MAC address (Michal Schmidt) [2152493] - iavf: Fix error handling in iavf_init_module() (Michal Schmidt) [2152493]- net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2103955] - ixgbe: stop resetting SYSTIME in ixgbe_ptp_start_cyclecounter (Ken Cox) [2103955] - ixgbe: Manual AN-37 for troublesome link partners for X550 SFI (Ken Cox) [2103955] - ixgbe: Don't call kmap() on page allocated with GFP_ATOMIC (Ken Cox) [2103955] - ixgbe: convert .adjfreq to .adjfine (Ken Cox) [2103955] - ixgbe: drop unexpected word 'for' in comments (Ken Cox) [2103955] - ixgbe: remove unexpected word "the" (Ken Cox) [2103955] - intel: remove unused macros (Ken Cox) [2103955] - ixgbe: Fix typos in comments (Ken Cox) [2103955] - drivers, ixgbe: export vf statistics (Ken Cox) [2103955] - ixgbe: fix unexpected VLAN Rx in promisc mode on VF (Ken Cox) [2103955] - ixgbe: fix bcast packets Rx on VF after promisc removal (Ken Cox) [2103955] - ixgbe: propagate XFRM offload state direction instead of flags (Ken Cox) [2103955] - ixgbe: Fix module_param allow_unsupported_sfp type (Ken Cox) [2103955] - ixgbe: ensure IPsec VF<->PF compatibility (Ken Cox) [2103955] - ixgbe, xsk: Get rid of redundant 'fallthrough' (Ken Cox) [2103955] - ixgbe, xsk: Diversify return values from xsk_wakeup call paths (Ken Cox) [2103955] - ixgbe, xsk: Terminate Rx side of NAPI when XSK Rx queue gets full (Ken Cox) [2103955] - ixgbe, xsk: Decorate IXGBE_XDP_REDIR with likely() (Ken Cox) [2103955] - ixgbe: add improvement for MDD response functionality (Ken Cox) [2103955] - ixgbe: add the ability for the PF to disable VF link state (Ken Cox) [2103955] - ixgbe: xsk: change !netif_carrier_ok() handling in ixgbe_xmit_zc() (Ken Cox) [2103955] - ixgbe: Remove non-inclusive language (Ken Cox) [2103955] - ixgbe: Use irq_update_affinity_hint() (Ken Cox) [2103955] - net: convert users of bitmap_foo() to linkmode_foo() (Ken Cox) [2103955] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2103955] - net: Use skb_frag_off accessors (Ken Cox) [2103955] - drm/i915: Fix watermark calculations for DG2 CCS+CC modifier (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for DG2 CCS modifiers (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for gen12+ CCS+CC modifier (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for gen12+ MC CCS modifier (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for gen12+ RC CCS modifier (Jocelyn Falempe) [2041686] - drm/i915/uc: fix device/bus include on rhel8 (Jocelyn Falempe) [2041686] - drm/i915/display: consider DG2_RC_CCS_CC when migrating buffers (Jocelyn Falempe) [2041686] - drm/i915: allow control over the flags when migrating (Jocelyn Falempe) [2041686] - drm/i915/display: handle migration for dpt (Jocelyn Falempe) [2041686] - drm/i915/huc: better define HuC status getparam possible return values. (Jocelyn Falempe) [2041686] - drm/i915/huc: stall media submission until HuC is loaded (Jocelyn Falempe) [2041686] - drm/i915/huc: track delayed HuC load with a fence (Jocelyn Falempe) [2041686] - drm/i915/dg2: setup HuC loading via GSC (Jocelyn Falempe) [2041686] - drm/i915/pxp: add huc authentication and loading command (Jocelyn Falempe) [2041686] - drm/i915/pxp: implement function for sending tee stream command (Jocelyn Falempe) [2041686] - drm/i915/pxp: load the pxp module when we have a gsc-loaded huc (Jocelyn Falempe) [2041686] - drm/i915/gt: Flush to global observation point before breadcrumb write (Jocelyn Falempe) [2041686] - drm/i915/guc/slpc: Add SLPC selftest live_slpc_power (Jocelyn Falempe) [2041686] - drm/i915/guc/slpc: Run SLPC selftests on all tiles (Jocelyn Falempe) [2041686] - drm/i915: Remove unwanted pointer unpacking (Jocelyn Falempe) [2041686] - drm/i915/guc: Enable compute scheduling on DG2 (Jocelyn Falempe) [2041686] - drm/i915/dg2: introduce Wa_22015475538 (Jocelyn Falempe) [2041686] - drm/i915/uc: Update to latest GuC and use new-format GuC/HuC names (Jocelyn Falempe) [2041686] - Revert "drm/i915/dg2: extend Wa_1409120013 to DG2" (Jocelyn Falempe) [2041686] - drm/i915/gsc: allocate extended operational memory in LMEM (Jocelyn Falempe) [2041686] - drm/i915/gsc: add GSC XeHP SDV platform definition (Jocelyn Falempe) [2041686] - drm/i915/gsc: add slow_firmware flag to the gsc device definition (Jocelyn Falempe) [2041686] - drm/i915/gsc: skip irq initialization if using polling (Jocelyn Falempe) [2041686] - drm/i915/uc: Add patch level version number support (Jocelyn Falempe) [2041686] - drm/i915/uc: Support for version reduced and multiple firmware files (Jocelyn Falempe) [2041686] - drm/i915/ttm: Abort suspend on i915_ttm_backup failure (Jocelyn Falempe) [2041686] - drm/i915/dg2: Incorporate Wa_16014892111 into DRAW_WATERMARK tuning (Jocelyn Falempe) [2041686] - drm/i915/guc: Record CTB info in error logs (Jocelyn Falempe) [2041686] - drm/i915/guc: Add GuC <-> kernel time stamp translation information (Jocelyn Falempe) [2041686] - drm/i915/guc: Don't use pr_err when not necessary (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add support for DC5 state (Jocelyn Falempe) [2041686] - drm/i915/dmc: Update DG2 DMC firmware to v2.07 (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add additional tuning settings (Jocelyn Falempe) [2041686] - drm/i915/gt: Add dedicated function for non-ctx register tuning settings (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add Wa_1509727124 (Jocelyn Falempe) [2041686] - drm/i915/dg2: Update DG2 to GuC v70.4.1 (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add additional HDMI pixel clock frequencies (Jocelyn Falempe) [2041686] - Revert "drm/i915/dg2: Add preemption changes for Wa_14015141709" (Jocelyn Falempe) [2041686] - config: Enable TDX Guest (Wander Lairson Costa) [1836977] - x86/tdx: mark TDX as a tech preview (Wander Lairson Costa) [1836977] - x86/tdx: Panic on bad configs that #VE on "private" memory access (Wander Lairson Costa) [1836977] - x86/tdx: Prepare for using "INFO" call for a second purpose (Wander Lairson Costa) [1836977] - x86/tdx: Handle load_unaligned_zeropad() page-cross to a shared page (Wander Lairson Costa) [1836977] - x86/tdx: Clarify RIP adjustments in #VE handler (Wander Lairson Costa) [1836977] - vt: Initialize conswitchp to dummy_con if unset (Wander Lairson Costa) [1836977] - x86/tdx: Fix early #VE handling (Wander Lairson Costa) [1836977] - x86/tdx: Fix RETs in TDX asm (Wander Lairson Costa) [1836977] - x86/apic: Do apic driver probe for "nosmp" use case (Wander Lairson Costa) [1836977] - x86/mm: Fix spacing within memory encryption features message (Wander Lairson Costa) [1836977] - x86/kaslr: Fix build warning in KASLR code in boot stub (Wander Lairson Costa) [1836977] - Documentation/x86: Document TDX kernel architecture (Wander Lairson Costa) [1836977] - ACPICA: Avoid cache flush inside virtual machines (Wander Lairson Costa) [1836977] - x86/tdx/ioapic: Add shared bit for IOAPIC base address (Wander Lairson Costa) [1836977] - x86/mm: Make DMA memory shared for TD guest (Wander Lairson Costa) [1836977] - x86/mm/cpa: Add support for TDX shared memory (Wander Lairson Costa) [1836977] - x86/tdx: Make pages shared in ioremap() (Wander Lairson Costa) [1836977] - x86/topology: Disable CPU online/offline control for TDX guests (Wander Lairson Costa) [1836977] - x86/boot: Avoid #VE during boot for TDX platforms (Wander Lairson Costa) [1836977] - x86/boot/compressed/64: Use TEST reg,reg instead of CMP $0,reg (Wander Lairson Costa) [1836977] - x86/boot/compressed/64: Do not corrupt EDX on EFER.LME=1 setting (Wander Lairson Costa) [1836977] - x86/boot/compressed/64: Set EFER.LME=1 in 32-bit trampoline before returning to long mode (Wander Lairson Costa) [1836977] - x86/boot: Set CR0.NE early and keep it set during the boot (Wander Lairson Costa) [1836977] - x86/acpi/x86/boot: Add multiprocessor wake-up support (Wander Lairson Costa) [1836977] - x86/boot: Add a trampoline for booting APs via firmware handoff (Wander Lairson Costa) [1836977] - x86/asm/realmode: Use SYM_DATA_* instead of GLOBAL (Wander Lairson Costa) [1836977] - x86/realmode: Remove trampoline_status (Wander Lairson Costa) [1836977] - x86/tdx: Wire up KVM hypercalls (Wander Lairson Costa) [1836977] - x86/tdx: Port I/O: Add early boot support (Wander Lairson Costa) [1836977] - x86/tdx: Port I/O: Add runtime hypercalls (Wander Lairson Costa) [1836977] - x86/boot: Port I/O: Add decompression-time support for TDX (Wander Lairson Costa) [1836977] - x86/boot: Port I/O: Allow to hook up alternative helpers (Wander Lairson Costa) [1836977] - x86: Consolidate port I/O helpers (Wander Lairson Costa) [1836977] - x86: Adjust types used in port I/O helpers (Wander Lairson Costa) [1836977] - x86/tdx: Detect TDX at early kernel decompression time (Wander Lairson Costa) [1836977] - x86/tdx: Handle in-kernel MMIO (Wander Lairson Costa) [1836977] - x86/tdx: Handle CPUID via #VE (Wander Lairson Costa) [1836977] - x86/tdx: Add MSR support for TDX guests (Wander Lairson Costa) [1836977] - x86/tdx: Add HLT support for TDX guests (Wander Lairson Costa) [1836977] - x86/traps: Add #VE support for TDX guest (Wander Lairson Costa) [1836977] - x86/traps: Refactor exc_general_protection() (Wander Lairson Costa) [1836977] - x86/traps: Cleanup do_general_protection() (Wander Lairson Costa) [1836977] - x86/dumpstack: Introduce die_addr() for die() with #GP fault address (Wander Lairson Costa) [1836977] - x86/traps: Print address on #GP (Wander Lairson Costa) [1836977] - x86/kprobes: Inline kprobe_exceptions_notify() into do_general_protection() (Wander Lairson Costa) [1836977] - x86/tdx: Exclude shared bit from __PHYSICAL_MASK (Wander Lairson Costa) [1836977] - x86/tdx: Extend the confidential computing API to support TDX guests (Wander Lairson Costa) [1836977] - x86/tdx: Add __tdx_module_call() and __tdx_hypercall() helper functions (Wander Lairson Costa) [1836977] - x86/tdx: Provide common base for SEAMCALL and TDCALL C wrappers (Wander Lairson Costa) [1836977] - x86/tdx: Detect running as a TDX guest in early boot (Wander Lairson Costa) [1836977] - x86/mm/cpa: Generalize __set_memory_enc_pgtable() (Wander Lairson Costa) [1836977] - x86/mm/pat: Don't flush cache if hardware enforces cache coherency across encryption domnains (Wander Lairson Costa) [1836977] - x86/coco: Add API to handle encryption mask (Wander Lairson Costa) [1836977] - x86/cc: Move arch/x86/{kernel/cc_platform.c => coco/core.c} (Wander Lairson Costa) [1836977] - x86/sev-es: Use insn_decode_mmio() for MMIO implementation (Wander Lairson Costa) [1836977] - x86/insn-eval: Introduce insn_decode_mmio() (Wander Lairson Costa) [1836977] - x86/insn-eval: Introduce insn_get_modrm_reg_ptr() (Wander Lairson Costa) [1836977] - x86/insn-eval: Handle insn_get_opcode() failure (Wander Lairson Costa) [1836977] - x86/sev: Move common memory encryption code to mem_encrypt.c (Wander Lairson Costa) [1836977] - x86/sev: Rename mem_encrypt.c to mem_encrypt_amd.c (Wander Lairson Costa) [1836977] - x86/virtio: Have SEV guests enforce restricted virtio memory access (Wander Lairson Costa) [1836977] - devlink: protect devlink dump by the instance lock (Petr Oros) [2131116] - devlink: hold region lock when flushing snapshots (Petr Oros) [2131116] - net: devlink: enable parallel ops on netlink interface (Petr Oros) [2131116] - net: devlink: remove devlink_mutex (Petr Oros) [2131116] - net: devlink: convert reload command to take implicit devlink->lock (Petr Oros) [2131116] - net: devlink: introduce "unregistering" mark and use it during devlinks iteration (Petr Oros) [2131116] - devlink: Fix use-after-free after a failed reload (Petr Oros) [2131116] - net: devlink: Fix missing mutex_unlock() call (Petr Oros) [2131116] - Documentation: devlink: add add devlink-selftests to the table of contents (Petr Oros) [2131116] - devlink: Hold the instance lock in health callbacks (Petr Oros) [2131116] - net/mlx4: Lock mlx4 devlink reload callback (Petr Oros) [2131116] - net/mlx4: Use devl_ API for devlink port register / unregister (Petr Oros) [2131116] - net/mlx4: Use devl_ API for devlink region create / destroy (Petr Oros) [2131116] - net: devlink: remove region snapshots list dependency on devlink->lock (Petr Oros) [2131116] - net: devlink: remove region snapshot ID tracking dependency on devlink->lock (Petr Oros) [2131116] - devlink: introduce framework for selftests (Petr Oros) [2131116] - net: devlink: remove redundant net_eq() check from sb_pool_get_dumpit() (Petr Oros) [2131116] - net: devlink: move net check into devlinks_xa_for_each_registered_get() (Petr Oros) [2131116] - net: devlink: make sure that devlink_try_get() works with valid pointer during xarray iteration (Petr Oros) [2131116] - netdevsim: convert driver to use unlocked devlink API during init/fini (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_region_create/destroy() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_dpipe*() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_sb*() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_resource*() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devling_trap*() functions (Petr Oros) [2131116] - net: devlink: avoid false DEADLOCK warning reported by lockdep (Petr Oros) [2131116] - net: devlink: fix return statement in devlink_port_new_notify() (Petr Oros) [2131116] - net: devlink: fix a typo in function name devlink_port_new_notifiy() (Petr Oros) [2131116] - net: devlink: make devlink_dpipe_headers_register() return void (Petr Oros) [2131116] - net: devlink: move unlocked function prototypes alongside the locked ones (Petr Oros) [2131116] - net: devlink: use helpers to work with devlink->lock mutex (Petr Oros) [2131116] - net: devlink: fix unlocked vs locked functions descriptions (Petr Oros) [2131116] - devlink: Hold the instance lock in port_new / port_del callbacks (Petr Oros) [2131116] - powercap: intel_rapl: Add support for RAPTORLAKE_S (Prarit Bhargava) [2120363] - selftests/bpf: Fix test_varlen verification failure with latest llvm (Yauheni Kaliuta) [2149222] - iwlwifi: remove firmware version limit for AC9560 (Íñigo Huguet) [2129361] - wifi: iwlwifi: fw: skip PPAG for JF (Íñigo Huguet) [2129361] - sched: Improve wake_up_all_idle_cpus() take #2 (Julia Denham) [2134931] - selftests/livepatch: better synchronize test_klp_callbacks_busy (Julia Denham) [2121204] - sched,livepatch: Use wake_up_if_idle() (Joe Lawrence) [2134931] - sched: Simplify wake_up_*idle*() (Joe Lawrence) [2134931] - sched,livepatch: Use task_call_func() (Joe Lawrence) [2134931] - sched,rcu: Rework try_invoke_on_locked_down_task() (Joe Lawrence) [2134931] - sched: Improve try_invoke_on_locked_down_task() (Joe Lawrence) [2134931] - arm64/bpf: Remove 128MB limit for BPF JIT programs (Yauheni Kaliuta) [2140163] - bpf: Define bpf_jit_alloc_exec_limit for arm64 JIT (Yauheni Kaliuta) [2140163] - arm64: extable: add `type` and `data` fields (Yauheni Kaliuta) [2140163] - arm64: extable: use `ex` for `exception_table_entry` (Yauheni Kaliuta) [2140163] - arm64: extable: make fixup_exception() return bool (Yauheni Kaliuta) [2140163] - arm64: extable: consolidate definitions (Yauheni Kaliuta) [2140163] - arm64: kvm: use kvm_exception_table_entry (Yauheni Kaliuta) [2140163] - s390/cio: check the subchannel validity for dev_busid (Tobias Huschle) [2160494] - s390/cio: add dev_busid sysfs entry for each subchannel (Tobias Huschle) [2160494]- intel_idle: Add AlderLake-N support (Prarit Bhargava) [2144692] - selftests/timens: add a test for vfork+exit (Oleg Nesterov) [2116444] - fs/exec: switch timens when a task gets a new mm (Oleg Nesterov) [2116444] - namespace: make timens_on_fork() return nothing (Oleg Nesterov) [2116444] - timens: make vdso_join_timens() always succeed (Oleg Nesterov) [2116444] - xfrm: Fix oops in __xfrm_state_delete() (Sabrina Dubroca) [2156048] - tcp: Fix data races around icsk->icsk_af_ops. (Guillaume Nault) [2143904] {CVE-2022-3566} - ice: synchronize the misc IRQ when tearing down Tx tracker (Petr Oros) [2148858] - ice: fix handling of burst Tx timestamps (Petr Oros) [2148858] - vhost/vsock: Fix error handling in vhost_vsock_init() (Stefano Garzarella) [2159969] - net: vmw_vsock: vmci: Check memcpy_from_msg() (Stefano Garzarella) [2159969] - vhost/vsock: Use kvmalloc/kvfree for larger packets. (Stefano Garzarella) [2159969] - vsock: Set socket state back to SS_UNCONNECTED in vsock_connect_timeout() (Stefano Garzarella) [2159969] - vsock: Fix memory leak in vsock_connect() (Stefano Garzarella) [2159969] - tools/power turbostat: Add support for RPL-S (Prarit Bhargava) [2122848]- nvme: re-order nvme_alloc_ns to match "nvme: use blk_mq_alloc_disk" (Chris Leech) [2152742] - perf vendor events amd: Add Zen 4 mapping (Michael Petlan) [2148294] - perf vendor events amd: Add Zen 4 metrics (Michael Petlan) [2148294] - perf vendor events amd: Add Zen 4 uncore events (Michael Petlan) [2148294] - perf vendor events amd: Add Zen 4 core events (Michael Petlan) [2148294] - cpuhotplug: Fix KABI breakage (Prarit Bhargava) [2156529] - scsi: target: core: Fix hard lockup when executing a compare-and-write command (Maurizio Lombardi) [2119897] - x86/topology: Fix duplicated core ID within a package (Prarit Bhargava) [2159553] - x86/topology: Fix multiple packages shown on a single-package system (Prarit Bhargava) [2159553] - hwmon/coretemp: Handle large core ID value (Prarit Bhargava) [2159553] - x86: Remove vendor checks from prefer_mwait_c1_over_halt (Prarit Bhargava) [2150067] - x86: Handle idle=nomwait cmdline properly for x86_idle (Prarit Bhargava) [2150067] - cpufreq: intel_pstate: Support Sapphire Rapids OOB mode (Prarit Bhargava) [2117767] - KVM: nVMX: Inject #GP, not #UD, if "generic" VMXON CR0/CR4 check fails (Emanuele Giuseppe Esposito) [2159433] - vmxnet3: correctly report csum_level for encapsulated packet (Izabela Bakollari) [2158809] - mei: pxp: support matching with a gfx discrete card (Jocelyn Falempe) [2147557] - mei: pxp: add command streamer API to the PXP driver (Jocelyn Falempe) [2147557] - mei: bus: extend bus API to support command streamer API (Jocelyn Falempe) [2147557] - mei: adjust extended header kdocs (Jocelyn Falempe) [2147557] - mei: bus: enable sending gsc commands (Jocelyn Falempe) [2147557] - mei: add support to GSC extended header (Jocelyn Falempe) [2147557] - mei: debugfs: add pxp mode to devstate in debugfs (Jocelyn Falempe) [2147557] - mei: drop ready bits check after start (Jocelyn Falempe) [2147557] - mei: gsc: add transition to PXP mode in resume flow (Jocelyn Falempe) [2147557] - mei: gsc: setup gsc extended operational memory (Jocelyn Falempe) [2147557] - mei: mkhi: add memory ready command (Jocelyn Falempe) [2147557] - mei: bus: export common mkhi definitions into a separate header (Jocelyn Falempe) [2147557] - mei: extend timeouts on slow devices (Jocelyn Falempe) [2147557] - mei: gsc: wait for reset thread on stop (Jocelyn Falempe) [2147557] - mei: gsc: use polling instead of interrupts (Jocelyn Falempe) [2147557] - mei: add slow_firmware flag to the mei auxiliary device (Jocelyn Falempe) [2147557] - mei: add kdoc for struct mei_aux_device (Jocelyn Falempe) [2147557] - mei: me: fix clang -Wformat warning (Jocelyn Falempe) [2147557] - mei: me: add raptor lake point S DID (Jocelyn Falempe) [2147557] - mei: hbm: drop capability response on early shutdown (Jocelyn Falempe) [2147557] - mei: me: set internal pg flag to off on hardware reset (Jocelyn Falempe) [2147557] - misc/mei: Add NULL check to component match callback functions (Jocelyn Falempe) [2147557] - drm/display: Move HDCP helpers into display-helper module (Jocelyn Falempe) [2147557] - mei: gsc: retrieve the firmware version (Jocelyn Falempe) [2147557] - mei: gsc: add runtime pm handlers (Jocelyn Falempe) [2147557] - mei: gsc: setup char driver alive in spite of firmware handshake failure (Jocelyn Falempe) [2147557] - mei: add support for graphics system controller (gsc) devices (Jocelyn Falempe) [2147557] - mei: avoid iterator usage outside of list_for_each_entry (Jocelyn Falempe) [2147557] - mei: do not overwrite state on hw start (Jocelyn Falempe) [2147557] - mei: me: fix reset policy on read error in interrupt (Jocelyn Falempe) [2147557] - mei: me: avoid link reset on shutdown (Jocelyn Falempe) [2147557] - mei: me: disable driver on the ign firmware (Jocelyn Falempe) [2147557] - mei: me: Use dma_set_mask_and_coherent() and simplify code (Jocelyn Falempe) [2147557] - mei: hbm: fix client dma reply status (Jocelyn Falempe) [2147557] - mei: cleanup status before client dma setup call (Jocelyn Falempe) [2147557] - mei: add POWERING_DOWN into device state print (Jocelyn Falempe) [2147557] - mei: Remove some dead code (Jocelyn Falempe) [2147557] - mei: bus: add client dma interface (Jocelyn Falempe) [2147557] - mei: hbm: drop hbm responses on early shutdown (Jocelyn Falempe) [2147557] - mei: me: add Ice Lake-N device id. (Jocelyn Falempe) [2147557] - mei: pxp: export pavp client to me client bus (Jocelyn Falempe) [2147557] - mei: Remove usage of the deprecated "pci-dma-compat.h" API (Jocelyn Falempe) [2147557] - mei: constify passed buffers and structures (Jocelyn Falempe) [2147557] - mei: revamp mei extension header structure layout. (Jocelyn Falempe) [2147557] - mei: fix kdoc in the driver (Jocelyn Falempe) [2147557] - mei: hdcp: SPDX tag should be the first line (Jocelyn Falempe) [2147557] - mei: request autosuspend after sending rx flow control (Jocelyn Falempe) [2147557] - mei: Drop unnecessary NULL check after container_of (Jocelyn Falempe) [2147557] - mei: me: add Alder Lake P device id. (Jocelyn Falempe) [2147557] - mei: allow map and unmap of client dma buffer only for disconnected client (Jocelyn Falempe) [2147557] - mei: use sysfs_emit() in tx_queue_limit_show sysfs (Jocelyn Falempe) [2147557] - mei: bus: block send with vtag on non-conformat FW (Jocelyn Falempe) [2147557] - mei: bus: change remove callback to return void (Jocelyn Falempe) [2147557] - mei: bus: simplify mei_cl_device_remove() (Jocelyn Falempe) [2147557] - mei: implement client dma setup. (Jocelyn Falempe) [2147557] - mei: hbm: add client dma hbm messages (Jocelyn Falempe) [2147557] - mei: add support for client dma capability (Jocelyn Falempe) [2147557] - mei: allow clients on bus to communicate in remove callback (Jocelyn Falempe) [2147557] - mei: me: add adler lake point LP DID (Jocelyn Falempe) [2147557] - mei: hbm: drop hbm responses on shutdown (Jocelyn Falempe) [2147557] - mei: hbm: call mei_set_devstate() on hbm stop response (Jocelyn Falempe) [2147557] - mei: document that mei_msg_hdr_init returns ERR_PTR (Jocelyn Falempe) [2147557] - mei: fix transfer over dma with extended header (Jocelyn Falempe) [2147557] - misc/mei/hdcp: Fix AUTH_STREAM_REQ cmd buffer len (Jocelyn Falempe) [2147557] - mei: bus: enable pavp device. (Jocelyn Falempe) [2147557] - mei: bus: add vtag support (Jocelyn Falempe) [2147557] - Revert "mei: virtio: virtualization frontend driver" (Jocelyn Falempe) [2147557] - mei: bus: fix a kernel-doc markup (Jocelyn Falempe) [2147557] - mei: protect mei_cl_mtu from null dereference (Jocelyn Falempe) [2147557] - mei: bus: deinitialize callback functions on init failure (Jocelyn Falempe) [2147557] - mei: bus: do not start a read for disconnected clients (Jocelyn Falempe) [2147557] - misc: mei: remove unneeded break (Jocelyn Falempe) [2147557] - mei: hw: Replace zero-length array with flexible-array member (Jocelyn Falempe) [2147557] - mei: virtio: virtualization frontend driver (Jocelyn Falempe) [2147557] - mei: add connect with vtag ioctl (Jocelyn Falempe) [2147557] - mei: bus: unconditionally enable clients with vtag support (Jocelyn Falempe) [2147557] - mei: bus: use zero vtag for bus clients. (Jocelyn Falempe) [2147557] - mei: handle tx queue flushing for vtag connections (Jocelyn Falempe) [2147557] - mei: add a vtag map for each client (Jocelyn Falempe) [2147557] - mei: add a spin lock to protect rd_completed queue (Jocelyn Falempe) [2147557] - mei: bump hbm version to 2.2 (Jocelyn Falempe) [2147557] - mei: add support for mei extended header. (Jocelyn Falempe) [2147557] - mei: add vtag support bit in client properties (Jocelyn Falempe) [2147557] - mei: restrict vtag support to hbm version 2.2 (Jocelyn Falempe) [2147557] - mei: hbm: add capabilities message (Jocelyn Falempe) [2147557] - Revert "scsi: iscsi: ql4xxx: Use per-session workqueue for unbinding" (Chris Leech) [2122624] - Revert "scsi: iscsi: Use the session workqueue for recovery" (Chris Leech) [2122624] - l2tp: Don't sleep and disable BH under writer-side sk_callback_lock (Guillaume Nault) [2145235] {CVE-2022-4129} - l2tp: Serialize access to sk_user_data with sk_callback_lock (Guillaume Nault) [2145235] {CVE-2022-4129} - net: fix a concurrency bug in l2tp_tunnel_register() (Guillaume Nault) [2145235] {CVE-2022-4129} - net: tap: fix general protection fault when freeing an skb when the ring is full (Antoine Tenart) [2152802] - platform/x86/intel/pmt: Sapphire Rapids PMT errata fix (Prarit Bhargava) [2144689] - RDMA/core: Fix null-ptr-deref in ib_core_cleanup() (Kamal Heib) [2120677] - RDMA/rxe: Fix mr leak in RESPST_ERR_RNR (Kamal Heib) [2120677] - IB/hfi1: Correctly move list in sc_disable() (Kamal Heib) [2120677] - RDMA/cma: Use output interface for net_dev check (Kamal Heib) [2120677] - RDMA/usnic: fix set-but-not-unused variable 'flags' warning (Kamal Heib) [2120677] - IB/rdmavt: Add __init/__exit annotations to module init/exit funcs (Kamal Heib) [2120677] - RDMA/rxe: Fix resize_finish() in rxe_queue.c (Kamal Heib) [2120677] - IB: Set IOVA/LENGTH on IB_MR in core/uverbs layers (Kamal Heib) [2120677] - RDMA/cm: Use SLID in the work completion as the DLID in responder side (Kamal Heib) [2120677] - RDMA/siw: Fix QP destroy to wait for all references dropped. (Kamal Heib) [2120677] - RDMA/srp: Fix srp_abort() (Kamal Heib) [2120677] - RDMA/irdma: Validate udata inlen and outlen (Kamal Heib) [2120677] - RDMA/irdma: Align AE id codes to correct flush code and event (Kamal Heib) [2120677] - RDMA/rxe: Fix the error caused by qp->sk (Kamal Heib) [2120677] - RDMA/rxe: Fix "kernel NULL pointer dereference" error (Kamal Heib) [2120677] - RDMA/rxe: Remove an unused member from struct rxe_mr (Kamal Heib) [2120677] - x86/fpu: Fix copy_xstate_to_uabi() to copy init states correctly (Dean Nelson) [2122850] - x86/fpu: Exclude dynamic states from init_fpstate (Dean Nelson) [2122850] - x86/fpu: Fix the init_fpstate size check with the actual size (Dean Nelson) [2122850] - x86/fpu: Configure init_fpstate attributes orderly (Dean Nelson) [2122850] - x86/fpu/xstate: Fix the ARCH_REQ_XCOMP_PERM implementation (Dean Nelson) [2122850] - ceph: rely on vfs for setgid stripping (Andrey Albershteyn) [2128904] - fs: move S_ISGID stripping into the vfs_*() helpers (Andrey Albershteyn) [2128904] - fs: Add missing umask strip in vfs_tmpfile (Andrey Albershteyn) [2128904] - fs: add mode_strip_sgid() helper (Andrey Albershteyn) [2128904]- x86/insn: Add AMX instructions to the x86 instruction decoder (Prarit Bhargava) [2117765] - intel_idle: Add a new flag to initialize the AMX state (Prarit Bhargava) [2117765] - x86/fpu: Add a helper to prepare AMX state for low-power CPU idle (Prarit Bhargava) [2117765] - intel_idle: make SPR C1 and C1E be independent (Prarit Bhargava) [2117765] - rpmspec: drop traceevent files instead of just excluding them from files list (Michael Petlan) [2155509] - powerpc/bpf/64: Add instructions for atomic_[cmp]xchg (Mamatha Inamdar) [2113254] - powerpc/bpf/64: add support for atomic fetch operations (Mamatha Inamdar) [2113254] - powerpc/bpf/64: add support for BPF_ATOMIC bitwise operations (Mamatha Inamdar) [2113254] - powerpc/bpf: Simplify bpf_to_ppc() and adopt it for powerpc64 (Mamatha Inamdar) [2113254] - powerpc64/bpf: Store temp registers' bpf to ppc mapping (Mamatha Inamdar) [2113254] - powerpc/bpf: Use _Rn macros for GPRs (Mamatha Inamdar) [2113254] - powerpc/bpf: Move bpf_jit64.h into bpf_jit_comp64.c (Mamatha Inamdar) [2113254] - powerpc/bpf: Cleanup bpf_jit.h (Mamatha Inamdar) [2113254] - powerpc64/bpf: Get rid of PPC_BPF_[LL|STL|STLU] macros (Mamatha Inamdar) [2113254] - powerpc64/bpf: Convert some of the uses of PPC_BPF_[LL|STL] to PPC_BPF_[LD|STD] (Mamatha Inamdar) [2113254] - powerpc64/bpf: Optimize instruction sequence used for function calls (Mamatha Inamdar) [2113254] - powerpc64/bpf elfv1: Do not load TOC before calling functions (Mamatha Inamdar) [2113254] - powerpc64/bpf elfv2: Setup kernel TOC in r2 on entry (Mamatha Inamdar) [2113254] - powerpc64: Set PPC64_ELF_ABI_v[1|2] macros to 1 (Mamatha Inamdar) [2113254] - powerpc64/bpf: Use r12 for constant blinding (Mamatha Inamdar) [2113254] - powerpc64/bpf: Do not save/restore LR on each call to bpf_stf_barrier() (Mamatha Inamdar) [2113254] - powerpc/bpf: Handle large branch ranges with BPF_EXIT (Mamatha Inamdar) [2113254] - powerpc/bpf: Emit a single branch instruction for known short branch ranges (Mamatha Inamdar) [2113254] - powerpc/bpf: Skip branch range validation during first pass (Mamatha Inamdar) [2113254] - powerpc64/bpf: Limit 'ldbrx' to processors compliant with ISA v2.06 (Mamatha Inamdar) [2113254] - tools/bpf: Rename 'struct event' to avoid naming conflict (Mamatha Inamdar) [2113254] - bpf: Guard against accessing NULL pt_regs in bpf_get_task_stack() (Mamatha Inamdar) [2113254] - bpf ppc64: Access only if addr is kernel address (Mamatha Inamdar) [2113254] - bpf ppc64: Add BPF_PROBE_MEM support for JIT (Mamatha Inamdar) [2113254] - powerpc/ppc-opcode: introduce PPC_RAW_BRANCH() macro (Mamatha Inamdar) [2113254] - bpf powerpc: refactor JIT compiler code (Mamatha Inamdar) [2113254] - bpf powerpc: Remove extra_pass from bpf_jit_build_body() (Mamatha Inamdar) [2113254] - bpf powerpc: Remove unused SEEN_STACK (Mamatha Inamdar) [2113254] - powerpc/bpf: Emit stf barrier instruction sequences for BPF_NOSPEC (Mamatha Inamdar) [2113254] - powerpc/security: Add a helper to query stf_barrier type (Mamatha Inamdar) [2113254] - powerpc/bpf: Fix BPF_SUB when imm == 0x80000000 (Mamatha Inamdar) [2113254] - powerpc/bpf: Fix BPF_MOD when imm == 1 (Mamatha Inamdar) [2113254] - powerpc/bpf: Validate branch ranges (Mamatha Inamdar) [2113254] - powerpc/lib: Add helper to check if offset is within conditional branch range (Mamatha Inamdar) [2113254] - powerpc/lib/feature-fixups: Use PPC_RAW_xxx() macros (Mamatha Inamdar) [2113254] - powerpc: Move PPC_HA() PPC_HI() and PPC_LO() to ppc-opcode.h (Mamatha Inamdar) [2113254] - swapfile: fix soft lockup in scan_swap_map_slots (Waiman Long) [2155734] - mm/swap: add helper swap_offset_available() (Waiman Long) [2155734] - pNFS/filelayout: Fix coalescing test for single DS (Benjamin Coddington) [2158520] - arm64: kdump: Support crashkernel=X fall back to reserve region above DMA zones (Pingfan Liu) [1940674] - arm64: kdump: Provide default size when crashkernel=Y,low is not specified (Pingfan Liu) [1940674] - media: dmxdev: fix UAF when dvb_register_device() fails (Dean Nelson) [2123301] {CVE-2022-41218} - crypto: s390/aes - drop redundant xts key check (Vladis Dronov) [2158893] - crypto: xts - implement xts_verify_key() with xts_check_key() (Vladis Dronov) [2158893] - audit: cache ctx->major in audit_filter_syscall() (Richard Guy Briggs) [2123854] - audit: free audit_proctitle only on task exit (Richard Guy Briggs) [2123854] - audit: explicitly check audit_context->context enum value (Richard Guy Briggs) [2123854] - audit: move audit_return_fixup before the filters (Richard Guy Briggs) [2123854] - audit: fix potential double free on error path from fsnotify_add_inode_mark (Richard Guy Briggs) [2123854] - i2c: ismt: Fix an out-of-bounds bug in ismt_access() (Prarit Bhargava) [2119066] {CVE-2022-2873} - net: dropreason: add SKB_DROP_REASON_FRAG_TOO_FAR (Antoine Tenart) [2155186] - net: dropreason: add SKB_DROP_REASON_FRAG_REASM_TIMEOUT (Antoine Tenart) [2155186] - net: dropreason: add SKB_DROP_REASON_DUP_FRAG (Antoine Tenart) [2155186] - net: dropreason: propagate drop_reason to skb_release_data() (Antoine Tenart) [2155186] - net: dropreason: add SKB_CONSUMED reason (Antoine Tenart) [2155186] - ipv4: remove redundant null pointer check before kfree_skb (Antoine Tenart) [2155186]- turbostat: Bring code up-to-date with upstream (Prarit Bhargava) [2117769] - tools/power turbostat: Enable accumulate RAPL display (Prarit Bhargava) [2117769] - tools/power turbostat: version 2022.07.28 (Prarit Bhargava) [2117769] - tools/power turbostat: do not decode ACC for ICX and SPR (Prarit Bhargava) [2117769] - tools/power turbostat: fix SPR PC6 limits (Prarit Bhargava) [2117769] - tools/power turbostat: cleanup 'automatic_cstate_conversion_probe()' (Prarit Bhargava) [2117769] - tools/power turbostat: separate SPR from ICX (Prarit Bhargava) [2117769] - tools/power turbosstat: fix comment (Prarit Bhargava) [2117769] - tools/power turbostat: Support RAPTORLAKE P (Prarit Bhargava) [2117769] - tools/power turbostat: add support for ALDERLAKE_N (Prarit Bhargava) [2117769] - tools/power turbostat: dump secondary Turbo-Ratio-Limit (Prarit Bhargava) [2117769] - tools/power turbostat: simplify dump_turbo_ratio_limits() (Prarit Bhargava) [2117769] - tools/power turbostat: dump CPUID.7.EDX.Hybrid (Prarit Bhargava) [2117769] - tools/power turbostat: update turbostat.8 (Prarit Bhargava) [2117769] - tools/power turbostat: Show uncore frequency (Prarit Bhargava) [2117769] - tools/power turbostat: Fix file pointer leak (Prarit Bhargava) [2117769] - tools/power turbostat: replace strncmp with single character compare (Prarit Bhargava) [2117769] - tools/power turbostat: print the kernel boot commandline (Prarit Bhargava) [2117769] - tools/power turbostat: Introduce support for RaptorLake (Prarit Bhargava) [2117769] - tools/power turbostat: version 2022.04.16 (Prarit Bhargava) [2117769] - tools/power turbostat: No build warnings with -Wextra (Prarit Bhargava) [2117769] - tools/power turbostat: be more useful as non-root (Prarit Bhargava) [2117769] - tools/power turbostat: fix ICX DRAM power numbers (Prarit Bhargava) [2117769] - tools/power turbostat: Support thermal throttle count print (Prarit Bhargava) [2117769] - tools/power turbostat: Allow printing header every N iterations (Prarit Bhargava) [2117769] - tools/power turbostat: Allow -e for all names. (Prarit Bhargava) [2117769] - tools/power turbostat: print power values upto three decimal (Prarit Bhargava) [2117769] - tools/power turbostat: Add Power Limit4 support (Prarit Bhargava) [2117769] - tools/power turbostat: fix dump for AMD cpus (Prarit Bhargava) [2117769] - tools/power turbostat: tweak --show and --hide capability (Prarit Bhargava) [2117769] - NFSv4: Retry LOCK on OLD_STATEID during delegation return (Benjamin Coddington) [2137826] - KVM: s390: pv: don't allow userspace to set the clock under PV (Tobias Huschle) [2154284] - net: mana: Fix race on per-CQ variable napi work_done (Emanuele Giuseppe Esposito) [2151722] - powercap: intel_rapl: support new layout of Psys PowerLimit Register on SPR (Prarit Bhargava) [2106143] - ceph: choose auth MDS for getxattr with the Xs caps (Milind Changire) [2126703] - ceph: try to choose the auth MDS if possible for getattr (Milind Changire) [2126703] - ceph: convert to generic_file_llseek (Milind Changire) [2126707] - ceph: don't leak snap_rwsem in handle_cap_grant (Milind Changire) [2126706] - ceph: prevent a client from exceeding the MDS maximum xattr size (Milind Changire) [2126704] - ceph: add session already open notify support (Milind Changire) [2126701] - ceph: use correct index when encoding client supported features (Milind Changire) [2143875] - ceph: switch TASK_INTERRUPTIBLE to TASK_KILLABLE (Milind Changire) [2126700] - ceph: allow ceph.dir.rctime xattr to be updatable (Milind Changire) [2126699] - ipv6: Use ipv6_only_sock() helper in condition. (Izabela Bakollari) [2144855] - ipv6: Remove __ipv6_only_sock(). (Izabela Bakollari) [2144855] - redhat/configs: Switch CONFIG_X86_AMD_PSTATE to built-in (Prarit Bhargava) [2150424] - Documentation: add amd-pstate kernel command line options (Prarit Bhargava) [2150424] - cpufreq: amd-pstate: add amd-pstate driver parameter for mode selection (Prarit Bhargava) [2150424] - cpufreq: amd-pstate: change amd-pstate driver to be built-in type (Prarit Bhargava) [2150424] - cpufreq: amd-pstate: cpufreq: amd-pstate: reset MSR_AMD_PERF_CTL register at init (Prarit Bhargava) [2150424] - scsi: target: iscsi: Fix a race condition between login_work and the login thread (Maurizio Lombardi) [2153832] - virtio_console: Introduce an ID allocator for virtual console numbers (Cédric Le Goater) [2072437] - blk-throttle: fix that io throttle can only work for single bio (Ming Lei) [2088193] - scsi: zfcp: Fix double free of FSF request when qdio send fails (Tobias Huschle) [2155157] - scsi: qla2xxx: Fix crash when I/O abort times out (Nilesh Javali) [2115820] - perf trace: Fix SIGSEGV when processing syscall args (Michael Petlan) [2145089] - config: mhi: set CONFIG_MHI_BUS_EP to disabled (Íñigo Huguet) [2136123] - config: rtw89: set CONFIG_RTW89_8852C to disabled (Íñigo Huguet) [2136123] - wifi: ath11k: avoid deadlock during regulatory update in ath11k_regd_update() (Íñigo Huguet) [2136123 2139481] - wifi: mac80211: mlme: Fix double unlock on assoc success handling (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: Fix missing unlock on beacon RX (Íñigo Huguet) [2136123] - wifi: mac80211: fix memory corruption in minstrel_ht_update_rates() (Íñigo Huguet) [2136123] - wifi: mac80211: fix regression with non-QoS drivers (Íñigo Huguet) [2136123] - wifi: mac80211: ensure vif queues are operational after start (Íñigo Huguet) [2136123] - wifi: mac80211: don't start TX with fq->lock to fix deadlock (Íñigo Huguet) [2136123] - wifi: cfg80211: fix MCS divisor value (Íñigo Huguet) [2136123] - wifi: mt76: fix 5 GHz connection regression on mt76x0/mt76x2 (Íñigo Huguet) [2136123] - wifi: mt76: fix reading current per-tid starting sequence number for aggregation (Íñigo Huguet) [2136123] - wifi: iwlwifi: Mark IWLMEI as broken (Íñigo Huguet) [2136123] - wifi: iwlwifi: don't spam logs with NSS>2 messages (Íñigo Huguet) [2136123] - wifi: use struct_group to copy addresses (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: check length for virtio packets (Íñigo Huguet) [2136123] - wifi: mac80211: fix locking in auth/assoc timeout (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: release deflink channel in error case (Íñigo Huguet) [2136123] - wifi: mac80211: fix link warning in RX agg timer expiry (Íñigo Huguet) [2136123] - bus: mhi: host: Fix up null pointer access in mhi_irq_handler (Íñigo Huguet) [2136123] - net: Use u64_stats_fetch_begin_irq() for stats fetch. (Íñigo Huguet) [2136123] - wifi: mt76: mt7921e: fix crash in chip reset fail (Íñigo Huguet) [2136123] - wifi: mac80211: potential NULL dereference in ieee80211_tx_control_port() (Íñigo Huguet) [2136123] - wifi: cfg80211: debugfs: fix return type in ht40allow_map_read() (Íñigo Huguet) [2136123] - wifi: mac80211: Don't finalize CSA in IBSS mode if state is disconnected (Íñigo Huguet) [2136123] - wifi: mac80211: fix possible leak in ieee80211_tx_control_port() (Íñigo Huguet) [2136123] - wifi: mac80211: always free sta in __sta_info_alloc in case of error (Íñigo Huguet) [2136123] - wifi: mac80211: Fix UAF in ieee80211_scan_rx() (Íñigo Huguet) [2136123] - net: qrtr: start MHI channel after endpoit creation (Íñigo Huguet) [2136123] - wifi: cfg80211: Fix validating BSS pointers in __cfg80211_connect_result (Íñigo Huguet) [2136123] - wifi: rtw88: check the return value of alloc_workqueue() (Íñigo Huguet) [2136123] - wifi: rtw89: 8852a: adjust IMR for SER L1 (Íñigo Huguet) [2136123] - wifi: rtw89: 8852a: update RF radio A/B R56 (Íñigo Huguet) [2136123] - wifi: brcmfmac: prevent double-free on hardware-reset (Íñigo Huguet) [2136123] - wifi: brcmfmac: support brcm,ccode-map-trivial DT property (Íñigo Huguet) [2136123] - wifi: brcmfmac: Replace default (not configured) MAC with a random MAC (Íñigo Huguet) [2136123] - wifi: brcmfmac: Add brcmf_c_set_cur_etheraddr() helper (Íñigo Huguet) [2136123] - wifi: brcmfmac: Remove #ifdef guards for PM related functions (Íñigo Huguet) [2136123] - wifi: brcmfmac: use strreplace() in brcmf_of_probe() (Íñigo Huguet) [2136123] - wifi: rtl8xxxu: Fix the error handling of the probe function (Íñigo Huguet) [2136123] - wifi: mwifiex: clean up one inconsistent indenting (Íñigo Huguet) [2136123] - wifi: rtlwifi: Remove duplicate word and Fix typo (Íñigo Huguet) [2136123] - wifi: mwifiex: Fix comment typo (Íñigo Huguet) [2136123] - wifi: iwlwifi: mvm: fix clang -Wformat warnings (Íñigo Huguet) [2136123] - Revert "ath11k: add support for hardware rfkill for QCA6390" (Íñigo Huguet) [2136123] - wifi: ath11k: Fix register write failure on QCN9074 (Íñigo Huguet) [2136123] - wifi: mac80211: fix link data leak (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: fix disassoc with MLO (Íñigo Huguet) [2136123] - wifi: mac80211: add macros to loop over active links (Íñigo Huguet) [2136123] - wifi: mac80211: remove erroneous sband/link validation (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: transmit assoc frame with address translation (Íñigo Huguet) [2136123] - wifi: mac80211: verify link addresses are different (Íñigo Huguet) [2136123] - wifi: mac80211: rx: track link in RX data (Íñigo Huguet) [2136123] - wifi: mac80211: optionally implement MLO multicast TX (Íñigo Huguet) [2136123] - wifi: mac80211: expand ieee80211_mgmt_tx() for MLO (Íñigo Huguet) [2136123] - wifi: nl80211: add MLO link ID to the NL80211_CMD_FRAME TX API (Íñigo Huguet) [2136123] - wifi: mac80211: report link ID to cfg80211 on mgmt RX (Íñigo Huguet) [2136123] - wifi: cfg80211: report link ID in NL80211_CMD_FRAME (Íñigo Huguet) [2136123] - wifi: mac80211: add hardware timestamps for RX and TX (Íñigo Huguet) [2136123] - wifi: cfg80211: add hardware timestamps to frame RX info (Íñigo Huguet) [2136123] - wifi: cfg80211/nl80211: move rx management data into a struct (Íñigo Huguet) [2136123] - wifi: cfg80211: add a function for reporting TX status with hardware timestamps (Íñigo Huguet) [2136123] - wifi: nl80211: add RX and TX timestamp attributes (Íñigo Huguet) [2136123] - nl80211: document uapi for CMD_FRAME_WAIT_CANCEL (Íñigo Huguet) [2136123] - wifi: ieee80211: add helper functions for detecting TM/FTM frames (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: handle links for wmediumd/virtio (Íñigo Huguet) [2136123] - wifi: mac80211: sta_info: fix link_sta insertion (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: fix link_sta setup (Íñigo Huguet) [2136123] - wifi: nl80211/mac80211: clarify link ID in control port TX (Íñigo Huguet) [2136123] - wifi: mac80211: return error from control port TX for drops (Íñigo Huguet) [2136123] - wifi: nl80211: require MLD address on link STA add/modify (Íñigo Huguet) [2136123] - wifi: mac80211: more station handling sanity checks (Íñigo Huguet) [2136123] - wifi: mac80211: fix link sta hash table handling (Íñigo Huguet) [2136123] - wifi: mac80211: validate link address doesn't change (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: set sta.mlo to mlo state (Íñigo Huguet) [2136123] - wifi: mac80211: fast-xmit: handle non-MLO clients (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: fix address translation for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: fix RX MLD address translation (Íñigo Huguet) [2136123] - wifi: mac80211: fix NULL pointer deref with non-MLD STA (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: fix override calculation (Íñigo Huguet) [2136123] - wifi: mac80211: tx: use AP address in some places for MLO (Íñigo Huguet) [2136123] - net: add missing includes and forward declarations under net/ (Íñigo Huguet) [2136123] - wifi: rtl8192se: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: rtlwifi: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: rt2x00: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: brcmsmac: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: brcmfmac: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: mac80211: do not abuse fq.lock in ieee80211_do_stop() (Íñigo Huguet) [2136123] - wifi: mt7601u: fix clang -Wformat warning (Íñigo Huguet) [2136123] - wifi: mt7601u: eeprom: fix clang -Wformat warning (Íñigo Huguet) [2136123] - wifi: ath: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: ath11k: mac: fix long line (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: set sta.mlo correctly (Íñigo Huguet) [2136123] - wifi: mac80211: remove stray printk (Íñigo Huguet) [2136123] - wifi: mac80211: support MLO authentication/association with one link (Íñigo Huguet) [2136123] - wifi: mac80211: add API to parse multi-link element (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: fix TX link selection (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: use MLO link ID for TX (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: do rc update per link (Íñigo Huguet) [2136123] - wifi: mac80211: do link->MLD address translation on RX (Íñigo Huguet) [2136123] - wifi: mac80211: select link when transmitting to non-MLO stations (Íñigo Huguet) [2136123] - wifi: mac80211: fix up link station creation/insertion (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: implement sta_state for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: limit A-MSDU subframes for client too (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor ieee80211_set_associated() (Íñigo Huguet) [2136123] - wifi: cfg80211: add cfg80211_get_iftype_ext_capa() (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: look up beacon elems only if needed (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor assoc link setup (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: remove address arg to ieee80211_mark_sta_auth() (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor assoc success handling (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor ieee80211_prep_channel() a bit (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor assoc req element building (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: switch some things back to deflink (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: change flags in ieee80211_determine_chantype() (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: shift some code around (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor link station setup (Íñigo Huguet) [2136123] - wifi: mac80211: move IEEE80211_SDATA_OPERATING_GMODE to link (Íñigo Huguet) [2136123] - wifi: mac80211: make ieee80211_check_rate_mask() link-aware (Íñigo Huguet) [2136123] - wifi: mac80211: add multi-link element to AUTH frames (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: clean up supported channels element code (Íñigo Huguet) [2136123] - wifi: mac80211: release channel context on link stop (Íñigo Huguet) [2136123] - wifi: mac80211: prohibit DEAUTH_NEED_MGD_TX_PREP in MLO (Íñigo Huguet) [2136123] - wifi: nl80211: fix some attribute policy entries (Íñigo Huguet) [2136123] - wifi: nl80211: reject fragmented and non-inheritance elements (Íñigo Huguet) [2136123] - wifi: nl80211: reject link specific elements on assoc link (Íñigo Huguet) [2136123] - wifi: cfg80211: set country_elem to NULL (Íñigo Huguet) [2136123] - wifi: mac80211: remove link_id parameter from link_info_changed() (Íñigo Huguet) [2136123] - wifi: mac80211: replace link_id with link_conf in switch/(un)assign_vif_chanctx() (Íñigo Huguet) [2136123] - wifi: nl80211: advertise MLO support (Íñigo Huguet) [2136123] - wifi: mac80211: Support multi link in ieee80211_recalc_min_chandef() (Íñigo Huguet) [2136123] - wifi: mac80211: don't check carrier in chanctx code (Íñigo Huguet) [2136123] - wifi: nl80211: allow link ID in set_wiphy with frequency (Íñigo Huguet) [2136123] - wifi: mac80211: Allow EAPOL tx from specific link (Íñigo Huguet) [2136123] - wifi: mac80211: Allow EAPOL frames from link addresses (Íñigo Huguet) [2136123] - wifi: cfg80211/mac80211: Support control port TX from specific link (Íñigo Huguet) [2136123] - wifi: nl80211: Support MLD parameters in nl80211_set_station() (Íñigo Huguet) [2136123] - wifi: nl80211: check MLO support in authenticate (Íñigo Huguet) [2136123] - wifi: mac80211: add a helper to fragment an element (Íñigo Huguet) [2136123] - wifi: mac80211: skip rate statistics for MLD STAs (Íñigo Huguet) [2136123] - wifi: nl80211: set BSS to NULL if IS_ERR() (Íñigo Huguet) [2136123] - wifi: nl80211: add EML/MLD capabilities to per-iftype capabilities (Íñigo Huguet) [2136123] - wifi: nl80211: better validate link ID for stations (Íñigo Huguet) [2136123] - wifi: mac80211: fix link manipulation (Íñigo Huguet) [2136123] - wifi: mac80211: tighten locking check (Íñigo Huguet) [2136123] - wifi: cfg80211: clean up links appropriately (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: simplify adding ht/vht/he/eht elements (Íñigo Huguet) [2136123] - wifi: mac80211: refactor adding custom elements (Íñigo Huguet) [2136123] - wifi: mac80211: refactor adding rates to assoc request (Íñigo Huguet) [2136123] - wifi: mac80211: use only channel width in ieee80211_parse_bitrates() (Íñigo Huguet) [2136123] - wifi: cfg80211: add ieee80211_chanwidth_rate_flags() (Íñigo Huguet) [2136123] - wifi: mac80211: remove redundant condition (Íñigo Huguet) [2136123] - wifi: mac80211: don't set link address for station (Íñigo Huguet) [2136123] - wifi: mac80211: fix multi-BSSID element parsing (Íñigo Huguet) [2136123] - wifi: mac80211: move tdls_chan_switch_prohibited to link data (Íñigo Huguet) [2136123] - wifi: mac80211: don't re-parse elems in ieee80211_assoc_success() (Íñigo Huguet) [2136123] - wifi: mac80211: replace link_id with link_conf in start/stop_ap() (Íñigo Huguet) [2136123] - wifi: mac80211: refactor elements parsing with parameter struct (Íñigo Huguet) [2136123] - wifi: cfg80211: extend cfg80211_rx_assoc_resp() for MLO (Íñigo Huguet) [2136123] - wifi: cfg80211: put cfg80211_rx_assoc_resp() arguments into a struct (Íñigo Huguet) [2136123] - wifi: cfg80211: adjust assoc comeback for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: unify assoc data event sending (Íñigo Huguet) [2136123] - wifi: cfg80211: prepare association failure APIs for MLO (Íñigo Huguet) [2136123] - wifi: cfg80211: remove BSS pointer from cfg80211_disassoc_request (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: use correct link_sta (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: remove sta argument from ieee80211_config_bw (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: use ieee80211_get_link_sband() (Íñigo Huguet) [2136123] - wifi: mac80211: split IEEE80211_STA_DISABLE_WMM to link data (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: first adjustments for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: do IEEE80211_STA_RESET_SIGNAL_AVE per link (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: track AP (MLD) address separately (Íñigo Huguet) [2136123] - wifi: mac80211: remove unused bssid variable (Íñigo Huguet) [2136123] - wifi: mac80211: change QoS settings API to take link into account (Íñigo Huguet) [2136123] - wifi: mac80211: expect powersave handling in driver for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: move ps setting to vif config (Íñigo Huguet) [2136123] - wifi: mac80211: provide link ID in link_conf (Íñigo Huguet) [2136123] - wifi: mac80211: set up/tear down client vif links properly (Íñigo Huguet) [2136123] - wifi: mac80211: move ieee80211_request_smps_mgd_work (Íñigo Huguet) [2136123] - wifi: nl80211: acquire wdev mutex for dump_survey (Íñigo Huguet) [2136123] - wifi: mac80211: fix key lookup (Íñigo Huguet) [2136123] - wifi: mac80211: separate out connection downgrade flags (Íñigo Huguet) [2136123] - wifi: mac80211: Align with Draft P802.11be_D2.0 (Íñigo Huguet) [2136123] - wifi: mac80211: Align with Draft P802.11be_D1.5 (Íñigo Huguet) [2136123] - wifi: mac80211: skip powersave recalc if driver SUPPORTS_DYNAMIC_PS (Íñigo Huguet) [2136123] - wifi: mac80211: debug: omit link if non-MLO connection (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: Ack link addressed frames (Íñigo Huguet) [2136123] - wifi: cfg80211: drop BSS elements from assoc trace for now (Íñigo Huguet) [2136123] - wifi: cfg80211: make cfg80211_auth_request::key_idx signed (Íñigo Huguet) [2136123] - wifi: nl80211: enable setting the link address at new station (Íñigo Huguet) [2136123] - wifi: mac80211: RCU-ify link/link_conf pointers (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex for station APIs (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex for channel switch APIs (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex in add/mod/del link station (Íñigo Huguet) [2136123] - wifi: mac80211: implement callbacks for _link_station (Íñigo Huguet) [2136123] - wifi: cfg80211/mac80211: separate link params from station params (Íñigo Huguet) [2136123] - wifi: cfg80211: add API to add/modify/remove a link station (Íñigo Huguet) [2136123] - wifi: mac80211: add an ieee80211_get_link_sband (Íñigo Huguet) [2136123] - wifi: mac80211: Remove AP SMPS leftovers (Íñigo Huguet) [2136123] - wifi: cfg80211: Allow MLO TX with link source address (Íñigo Huguet) [2136123] - wifi: mac80211: Consider MLO links in offchannel logic (Íñigo Huguet) [2136123] - wifi: mac80211: rx: accept link-addressed frames (Íñigo Huguet) [2136123] - wifi: mac80211: consistently use sdata_dereference() (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: Support link channel matching on rx (Íñigo Huguet) [2136123] - wifi: mac80211: fix mesh airtime link metric estimating (Íñigo Huguet) [2136123] - wifi: mac80211: make 4addr null frames using min_rate for WDS (Íñigo Huguet) [2136123] - wifi: cfg80211: use strscpy to replace strlcpy (Íñigo Huguet) [2136123] - wifi: mac80211: exclude multicast packets from AQL pending airtime (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: use 32-bit skb cookie (Íñigo Huguet) [2136123] - mt76: mt7921: Let PCI core handle power state and use pm_sleep_ptr() (Íñigo Huguet) [2136123] - mediatek: mt76: mac80211: Fix missing of_node_put() in mt76_led_init() (Íñigo Huguet) [2136123] - mt76: get rid of mt76_wcid_hw routine (Íñigo Huguet) [2136123] - mt76: convert MT_TX_HW_QUEUE_EXT_PHY to MT_TX_HW_QUEUE_PHY (Íñigo Huguet) [2136123] - mt76: add phy_idx to mt76_wcid (Íñigo Huguet) [2136123] - mt76: introduce phys array in mt76_dev structure (Íñigo Huguet) [2136123] - mt76: add phy_idx in mt76_rx_status (Íñigo Huguet) [2136123] - mt76: introduce MT_RXQ_BAND2 and MT_RXQ_BAND2_WA in mt76_rxq_id (Íñigo Huguet) [2136123] - mt76: add len parameter to __mt76_mcu_msg_alloc signature (Íñigo Huguet) [2136123] - mt76: mt7915 add ht mpdu density (Íñigo Huguet) [2136123] - mt76: mt7921: reduce the mutex lock scope during reset (Íñigo Huguet) [2136123] - mt76: mt7921: reduce log severity levels for informative messages (Íñigo Huguet) [2136123] - mt76: connac: move tx initialization/cleanup in mt76_connac module (Íñigo Huguet) [2136123] - mt76: mt7921: make mt7921_pci_driver static (Íñigo Huguet) [2136123] - mt76: mt7921: enable HW beacon filter in the initialization stage (Íñigo Huguet) [2136123] - mt76: mt7921: enable HW beacon filter not depending on PM flag (Íñigo Huguet) [2136123] - mt76: remove q->qid (Íñigo Huguet) [2136123] - mt76: do not use skb_set_queue_mapping for internal purposes (Íñigo Huguet) [2136123] - mt76: pass original queue id from __mt76_tx_queue_skb to the driver (Íñigo Huguet) [2136123] - mt76: allow receiving frames with invalid CCMP PN via monitor interfaces (Íñigo Huguet) [2136123] - mt76: mt76x02: improve reliability of the beacon hang check (Íñigo Huguet) [2136123] - mt76: mt7615: add sta_rec with EXTRA_INFO_NEW for the first time only (Íñigo Huguet) [2136123] - mt76: mt7915: update the maximum size of beacon offload (Íñigo Huguet) [2136123] - mt76: do not check the ccmp pn for ONLY_MONITOR frame (Íñigo Huguet) [2136123] - mt76: mt7915: add sta_rec with EXTRA_INFO_NEW for the first time only (Íñigo Huguet) [2136123] - mt76: mt7915: update mpdu density in 6g capability (Íñigo Huguet) [2136123] - mt76: mt7915: do not copy ieee80211_ops pointer in mt7915_mmio_probe (Íñigo Huguet) [2136123] - mt76: mt7915: disable UL MU-MIMO for mt7915 (Íñigo Huguet) [2136123] - mt76: move mt76_connac2_mcu_fill_message in mt76_connac module (Íñigo Huguet) [2136123] - mt76: move mcu_txd/mcu_rxd structures in shared code (Íñigo Huguet) [2136123] - mt76: mt7915: rely on mt76_connac_tx_free (Íñigo Huguet) [2136123] - mt76: connac: move mt7615_txp_skb_unmap in common code (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_write_hw_txp in shared code (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_tx_complete_skb in shared code (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_tx_free in shared code (Íñigo Huguet) [2136123] - mt76: move mt7615_txp_ptr in mt76_connac module (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_fw_txp in common module (Íñigo Huguet) [2136123] - mt76: mt7915: get rid of unnecessary new line in mt7915_mac_write_txwi (Íñigo Huguet) [2136123] - mt76: mt7921s: remove unnecessary goto in mt7921s_mcu_drv_pmctrl (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_mac_fill_rx_rate in connac module (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_reverse_frag0_hdr_trans in mt76-connac module (Íñigo Huguet) [2136123] - mt76: connac: move HE radiotap parsing in connac module (Íñigo Huguet) [2136123] - mt76: mt7921: fix command timeout in AP stop period (Íñigo Huguet) [2136123] - mt76: mt7921: not support beacon offload disable command (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_mac_add_txs_skb in connac module (Íñigo Huguet) [2136123] - mt76: connac: move connac2_mac_write_txwi in mt76_connac module (Íñigo Huguet) [2136123] - mt76: connac: move mac connac2 defs in mt76_connac2_mac.h (Íñigo Huguet) [2136123] - mt76: mt7915: rely on mt76_dev in mt7915_mac_write_txwi signature (Íñigo Huguet) [2136123] - mt76: mt7921: rely on mt76_dev in mt7921_mac_write_txwi signature (Íñigo Huguet) [2136123] - mt76: enable the VHT extended NSS BW feature (Íñigo Huguet) [2136123] - mt76: mt7663: rely on mt76_connac2_fw_trailer (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_load_patch in connac module (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_load_ram in connac module (Íñigo Huguet) [2136123] - mt76: mt7921: move fw toggle in mt7921_load_firmware (Íñigo Huguet) [2136123] - mt76: connac: move shared fw structures in connac module (Íñigo Huguet) [2136123] - mt76: mt7921: get rid of mt7921_mcu_exit (Íñigo Huguet) [2136123] - mt76: mt7921: add missing bh-disable around rx napi schedule (Íñigo Huguet) [2136123] - mt76: mt7615: add missing bh-disable around rx napi schedule (Íñigo Huguet) [2136123] - mt76: mt7915: add missing bh-disable around tx napi enable/schedule (Íñigo Huguet) [2136123] - mt76: mt7921: add PATCH_FINISH_REQ cmd response handling (Íñigo Huguet) [2136123] - mt76: add DBDC rxq handlings into mac_reset_work (Íñigo Huguet) [2136123] - mt76: mt7915: add more ethtool stats (Íñigo Huguet) [2136123] - mt76: mt7921: introduce ACPI SAR config in tx power (Íñigo Huguet) [2136123] - mt76: mt7921: introduce ACPI SAR support (Íñigo Huguet) [2136123] - mt76: add 6 GHz band support in mt76_sar_freq_ranges (Íñigo Huguet) [2136123] - mt76: mt7915: fix endian bug in mt7915_rf_regval_set() (Íñigo Huguet) [2136123] - mt76: mt76x02u: fix possible memory leak in __mt76x02u_mcu_send_msg (Íñigo Huguet) [2136123] - mt76: mt7915: fix endianness in mt7915_rf_regval_get (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: add back erroneously removed cast (Íñigo Huguet) [2136123] - wifi: mac80211: fix queue selection for mesh/OCB interfaces (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: fix race condition in pending packet (Íñigo Huguet) [2136123] - wifi: mac80211: Use the bitmap API to allocate bitmaps (Íñigo Huguet) [2136123] - wifi: mac80211: fix center freq calculation in ieee80211_chandef_downgrade (Íñigo Huguet) [2136123] - wifi: nl80211: fix sending link ID info of associated BSS (Íñigo Huguet) [2136123] - wifi: cfg80211: fix a comment in cfg80211_mlme_mgmt_tx() (Íñigo Huguet) [2136123] - wifi: nl80211: Fix reading NL80211_ATTR_MLO_LINK_ID in nl80211_pre_doit (Íñigo Huguet) [2136123] - bus: mhi: ep: Check dev_set_name() return value (Íñigo Huguet) [2136123] - ath9k: remove unexpected words "the" in comments (Íñigo Huguet) [2136123] - ath11k: Fix typo in comments (Íñigo Huguet) [2136123] - wifi: nl80211: retrieve EHT related elements in AP mode (Íñigo Huguet) [2136123] - wifi: cfg80211: Increase akm_suites array size in cfg80211_crypto_settings (Íñigo Huguet) [2136123] - wifi: cfg80211: remove chandef check in cfg80211_cac_event() (Íñigo Huguet) [2136123] - wifi: nl80211: relax wdev mutex check in wdev_chandef() (Íñigo Huguet) [2136123] - wifi: nl80211: acquire wdev mutex earlier in start_ap (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex for tid config (Íñigo Huguet) [2136123] - wifi: cfg80211: handle IBSS in channel switch (Íñigo Huguet) [2136123] - wifi: mac80211: properly skip link info driver update (Íñigo Huguet) [2136123] - wifi: mac80211: only accumulate airtime deficit for active clients (Íñigo Huguet) [2136123] - wifi: mac80211: add debugfs file to display per-phy AQL pending airtime (Íñigo Huguet) [2136123] - wifi: mac80211: add a per-PHY AQL limit to improve fairness (Íñigo Huguet) [2136123] - wifi: mac80211: keep recently active tx queues in scheduling list (Íñigo Huguet) [2136123] - wifi: mac80211: consider aql_tx_pending when checking airtime deficit (Íñigo Huguet) [2136123] - wifi: mac80211: make sta airtime deficit field s32 instead of s64 (Íñigo Huguet) [2136123] - wifi: mac80211: fix a kernel-doc complaint (Íñigo Huguet) [2136123] - wifi: cfg80211: remove redundant documentation (Íñigo Huguet) [2136123] - wifi: mac80211: sta_info: fix a missing kernel-doc struct element (Íñigo Huguet) [2136123] - wifi: mac80211: add a missing comma at kernel-doc markup (Íñigo Huguet) [2136123] - wifi: cfg80211: fix kernel-doc warnings all over the file (Íñigo Huguet) [2136123] - wifi: ieee80211: s1g action frames are not robust (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Add another Foxconn T99W175 (Íñigo Huguet) [2136123] - wifi: cfg80211: Allow P2P client interface to indicate port authorization (Íñigo Huguet) [2136123] - wifi: mac80211: do not wake queues on a vif that is being stopped (Íñigo Huguet) [2136123] - wifi: mac80211: check skb_shared in ieee80211_8023_xmit() (Íñigo Huguet) [2136123] - wifi: mac80211: add gfp_t parameter to ieeee80211_obss_color_collision_notify (Íñigo Huguet) [2136123] - bus: mhi: host: Move IRQ allocation to controller registration phase (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Add Cinterion MV31-W with new baseline (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Add support for Quectel EM120 FCCL modem (Íñigo Huguet) [2136123] - wifi: rtw89: disable invalid phy reports for all ICs (Íñigo Huguet) [2136123] - wifi: rtw89: pci: fix PCI doesn't reclaim TX BD properly (Íñigo Huguet) [2136123] - wifi: rtw89: fix long RX latency in low power mode (Íñigo Huguet) [2136123] - wifi: rtw89: drop invalid TX rate report of legacy rate (Íñigo Huguet) [2136123] - wifi: rtw89: add UNEXP debug mask to keep monitor messages unexpected to happen frequently (Íñigo Huguet) [2136123] - wifi: rtw89: enable VO TX AMPDU (Íñigo Huguet) [2136123] - wifi: rtw89: fix potential TX stuck (Íñigo Huguet) [2136123] - wifi: rtw89: support TDLS (Íñigo Huguet) [2136123] - wifi: rtw89: allocate BSSID CAM per TDLS peer (Íñigo Huguet) [2136123] - wifi: rtw89: separate BSSID CAM operations (Íñigo Huguet) [2136123] - wifi: rtw89: allocate address CAM and MAC ID to TDLS peer (Íñigo Huguet) [2136123] - cfg80211: Indicate MLO connection info in connect and roam callbacks (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: print the link id (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: support creating MLO-capable radios (Íñigo Huguet) [2136123] - wifi: nl80211: expose link ID for associated BSSes (Íñigo Huguet) [2136123] - wifi: nl80211: expose link information for interfaces (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: send a beacon per link (Íñigo Huguet) [2136123] - wifi: mac80211: set STA deflink addresses (Íñigo Huguet) [2136123] - wifi: mac80211: maintain link-sta hash table (Íñigo Huguet) [2136123] - wifi: mac80211: RCU-ify link STA pointers (Íñigo Huguet) [2136123] - wifi: mac80211: ethtool: use deflink for now (Íñigo Huguet) [2136123] - wifi: mac80211: move ieee80211_bssid_match() function (Íñigo Huguet) [2136123] - wifi: mac80211: return a beacon for a specific link (Íñigo Huguet) [2136123] - wifi: mac80211: pass the link id in start/stop ap (Íñigo Huguet) [2136123] - wifi: mac80211: use link in start/stop ap (Íñigo Huguet) [2136123] - wifi: mac80211: implement add/del interface link callbacks (Íñigo Huguet) [2136123] - wifi: cfg80211: add optional link add/remove callbacks (Íñigo Huguet) [2136123] - wifi: cfg80211: sort trace.h (Íñigo Huguet) [2136123] - wifi: mac80211: add sta link addition/removal (Íñigo Huguet) [2136123] - wifi: mac80211: add MLO link ID to TX frame metadata (Íñigo Huguet) [2136123] - wifi: mac80211: remove band from TX info in MLO (Íñigo Huguet) [2136123] - wifi: mac80211: add vif link addition/removal (Íñigo Huguet) [2136123] - wifi: nl80211: support MLO in auth/assoc (Íñigo Huguet) [2136123] - wifi: mac80211: ignore IEEE80211_CONF_CHANGE_SMPS in chanctx mode (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: split bss_info_changed to vif/link info_changed (Íñigo Huguet) [2136123] - wifi: cfg80211: simplify cfg80211_mlme_auth() prototype (Íñigo Huguet) [2136123] - wifi: ieee80211: add definitions for multi-link element (Íñigo Huguet) [2136123] - wifi: nl80211: refactor BSS lookup in nl80211_associate() (Íñigo Huguet) [2136123] - wifi: cfg80211: mlme: get BSS entry outside cfg80211_mlme_assoc() (Íñigo Huguet) [2136123] - wifi: mac80211: tx: simplify chanctx_conf handling (Íñigo Huguet) [2136123] - wifi: mac80211: status: look up band only where needed (Íñigo Huguet) [2136123] - wifi: mac80211: sort trace.h file (Íñigo Huguet) [2136123] - wifi: mac80211: correct link config data in tracing (Íñigo Huguet) [2136123] - wifi: mac80211: make ieee80211_he_cap_ie_to_sta_he_cap() MLO-aware (Íñigo Huguet) [2136123] - wifi: mac80211: make some SMPS code MLD-aware (Íñigo Huguet) [2136123] - wifi: mac80211: HT: make ieee80211_ht_cap_ie_to_sta_ht_cap() MLO-aware (Íñigo Huguet) [2136123] - wifi: mac80211: add link_id to eht.c code for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: add link_id to vht.c code for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: refactor some link setup code (Íñigo Huguet) [2136123] - wifi: mac80211: validate some driver features for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: use IEEE80211_MLD_MAX_NUM_LINKS (Íñigo Huguet) [2136123] - wifi: mac80211: refactor some sta_info link handling (Íñigo Huguet) [2136123] - wifi: mac80211: remove sta_info_tx_streams() (Íñigo Huguet) [2136123] - wifi: mac80211: make channel context code MLO-aware (Íñigo Huguet) [2136123] - wifi: mac80211: pass link ID where already present (Íñigo Huguet) [2136123] - wifi: mac80211: add per-link configuration pointer (Íñigo Huguet) [2136123] - wifi: mac80211: split bss_info_changed method (Íñigo Huguet) [2136123] - mac80211: fix maybe-unused warning (Íñigo Huguet) [2136123] - wifi: mac80211: reorg some iface data structs for MLD (Íñigo Huguet) [2136123] - wifi: mac80211: move interface config to new struct (Íñigo Huguet) [2136123] - wifi: mac80211: move some future per-link data to bss_conf (Íñigo Huguet) [2136123] - wifi: cfg80211: do some rework towards MLO link APIs (Íñigo Huguet) [2136123] - wifi: mac80211: reject WEP or pairwise keys with key ID > 3 (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: Directly use ida_alloc()/free() (Íñigo Huguet) [2136123] - wifi: mac80211: refactor some key code (Íñigo Huguet) [2136123] - wifi: mac80211: remove cipher scheme support (Íñigo Huguet) [2136123] - wifi: nl80211: fix typo in comment (Íñigo Huguet) [2136123] - treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_391.RULE (Íñigo Huguet) [2136123] - rtw88: 8821c: fix access const table of channel parameters (Íñigo Huguet) [2136123] - rtw89: add new state to CFO state machine for UL-OFDMA (Íñigo Huguet) [2136123] - rtw89: 8852c: add trigger frame counter (Íñigo Huguet) [2136123] - ieee80211: add trigger frame definition (Íñigo Huguet) [2136123] - ath10k: fix recently introduced checkpatch warning (Íñigo Huguet) [2136123] - wifi: rtw89: support MULTI_BSSID and correct BSSID mask of H2C (Íñigo Huguet) [2136123] - wifi: ray_cs: Drop useless status variable in parse_addr() (Íñigo Huguet) [2136123] - wifi: ray_cs: Utilize strnlen() in parse_addr() (Íñigo Huguet) [2136123] - wifi: rtw88: use *ph to print small buffer (Íñigo Huguet) [2136123] - ath11k: Fix warnings reported by checkpatch (Íñigo Huguet) [2136123] - ath11k: Fix LDPC config in set_bitrate_mask hook (Íñigo Huguet) [2136123] - wifi: mac80211: fix use-after-free in chanctx code (Íñigo Huguet) [2136123] - ath10k: fix regdomain info of iw reg set/get (Íñigo Huguet) [2136123] - ath11k: support avg signal in station dump (Íñigo Huguet) [2136123] - wifi: rtlwifi: fix error codes in rtl_debugfs_set_write_h2c() (Íñigo Huguet) [2136123] - wifi: rtw88: Fix Sparse warning for rtw8821c_hw_spec (Íñigo Huguet) [2136123] - wifi: rtw88: Fix Sparse warning for rtw8723d_hw_spec (Íñigo Huguet) [2136123] - wifi: rtw88: Fix Sparse warning for rtw8822c_hw_spec (Íñigo Huguet) [2136123] - wifi: rtw88: Fix sparse warning for rtw8822b_hw_spec (Íñigo Huguet) [2136123] - rtw88: fix null vif pointer when hw_scan fails (Íñigo Huguet) [2136123] - rtw89: sar: adjust and support SAR on 6GHz band (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: re-calibrate RX DCK once thermal changes a lot (Íñigo Huguet) [2136123] - rtw89: pci: handle hardware watchdog timeout interrupt status (Íñigo Huguet) [2136123] - rtw89: fix null vif pointer when hw_scan fails (Íñigo Huguet) [2136123] - rtw89: fix channel inconsistency during hw_scan (Íñigo Huguet) [2136123] - wifi: rtw88: add a work to correct atomic scheduling warning of ::set_tim (Íñigo Huguet) [2136123] - wifi: iwlwifi: pcie: rename CAUSE macro (Íñigo Huguet) [2136123] - wifi: brcmfmac: work around a GCC 12 -Warray-bounds warning (Íñigo Huguet) [2136123] - wifi: iwlwifi: use unsigned to silence a GCC 12 warning (Íñigo Huguet) [2136123] - wifi: rtlwifi: remove always-true condition pointed out by GCC 12 (Íñigo Huguet) [2136123] - wifi: ath9k: silence array-bounds warning on GCC 12 (Íñigo Huguet) [2136123] - ath9k: replace ternary operator with max() (Íñigo Huguet) [2136123] - ath11k: Init hw_params before setting up AHB resources (Íñigo Huguet) [2136123] - ath11k: Fix warning on variable 'sar' dereference before check (Íñigo Huguet) [2136123] - ath10k: fix misreported tx bandwidth for 160Mhz (Íñigo Huguet) [2136123] - ath10k: add encapsulation offloading support (Íñigo Huguet) [2136123] - ath10k: turn rawmode into frame_mode (Íñigo Huguet) [2136123] - ath10k: improve tx status reporting (Íñigo Huguet) [2136123] - ath10k: do not enforce interrupt trigger type (Íñigo Huguet) [2136123] - iwlwifi: mei: fix potential NULL-ptr deref (Íñigo Huguet) [2136123] - iwlwifi: mei: clear the sap data header before sending (Íñigo Huguet) [2136123] - iwlwifi: mvm: remove vif_count (Íñigo Huguet) [2136123] - iwlwifi: mvm: always tell the firmware to accept MCAST frames in BSS (Íñigo Huguet) [2136123] - iwlwifi: mvm: add OTP info in case of init failure (Íñigo Huguet) [2136123] - iwlwifi: mvm: fix assert 1F04 upon reconfig (Íñigo Huguet) [2136123] - iwlwifi: mvm: clean up authorized condition (Íñigo Huguet) [2136123] - iwlwifi: mvm: use NULL instead of ERR_PTR when parsing wowlan status (Íñigo Huguet) [2136123] - iwlwifi: pcie: simplify MSI-X cause mapping (Íñigo Huguet) [2136123] - ath11k: update missing MU-MIMO and OFDMA stats (Íñigo Huguet) [2136123] - rtw89: pci: only mask out INT indicator register for disable interrupt v1 (Íñigo Huguet) [2136123] - rtw89: convert rtw89_band to nl80211_band precisely (Íñigo Huguet) [2136123] - rtw89: 8852c: update txpwr tables to HALRF_027_00_052 (Íñigo Huguet) [2136123] - rtw89: cfo: check mac_id to avoid out-of-bounds (Íñigo Huguet) [2136123] - rtw89: 8852c: set TX antenna path (Íñigo Huguet) [2136123] - rtw89: add ieee80211::sta_rc_update ops (Íñigo Huguet) [2136123] - wireless: Fix Makefile to be in alphabetical order (Íñigo Huguet) [2136123] - mac80211: refactor freeing the next_beacon (Íñigo Huguet) [2136123] - cfg80211: fix kernel-doc for cfg80211_beacon_data (Íñigo Huguet) [2136123] - mac80211: minstrel_ht: support ieee80211_rate_status (Íñigo Huguet) [2136123] - mac80211: extend current rate control tx status API (Íñigo Huguet) [2136123] - mac80211: minstrel_ht: fill all requested rates (Íñigo Huguet) [2136123] - mac80211: disable BSS color collision detection in case of no free colors (Íñigo Huguet) [2136123] - nl80211: Parse NL80211_ATTR_HE_BSS_COLOR as a part of nl80211_parse_beacon (Íñigo Huguet) [2136123] - mac80211: mlme: track assoc_bss/associated separately (Íñigo Huguet) [2136123] - mac80211: remove useless bssid copy (Íñigo Huguet) [2136123] - mac80211: remove unused argument to ieee80211_sta_connection_lost() (Íñigo Huguet) [2136123] - mac80211: mlme: use local SSID copy (Íñigo Huguet) [2136123] - mac80211: use ifmgd->bssid instead of ifmgd->associated->bssid (Íñigo Huguet) [2136123] - mac80211: mlme: move in RSSI reporting code (Íñigo Huguet) [2136123] - mac80211: remove stray multi_sta_back_32bit docs (Íñigo Huguet) [2136123] - mac80211: fix typo in documentation (Íñigo Huguet) [2136123] - mac80211: unify CCMP/GCMP AAD construction (Íñigo Huguet) [2136123] - mt76: mt7921: add ipv6 NS offload support (Íñigo Huguet) [2136123] - mt76: add gfp to mt76_mcu_msg_alloc signature (Íñigo Huguet) [2136123] - mt76: mt7915: add more statistics from fw_util debugfs knobs (Íñigo Huguet) [2136123] - mt76: mt7915: improve error handling for fw_debug knobs (Íñigo Huguet) [2136123] - mt76: mt7615/mt7915: do reset_work with mt76's work queue (Íñigo Huguet) [2136123] - mt76: mt7915: add support for 6G in-band discovery (Íñigo Huguet) [2136123] - mt76: mt7915: add Wireless Ethernet Dispatch support (Íñigo Huguet) [2136123] - net: ethernet: mtk_eth_soc: add support for Wireless Ethernet Dispatch (WED) (Íñigo Huguet) [2136123] - mt76: make number of tokens configurable dynamically (Íñigo Huguet) [2136123] - mt76: add support for overriding the device used for DMA mapping (Íñigo Huguet) [2136123] - mt76: dma: add wrapper macro for accessing queue registers (Íñigo Huguet) [2136123] - mt76: mt7915: move MT_INT_MASK_CSR to init.c (Íñigo Huguet) [2136123] - mt76: mt7915: introduce mt7915_mac_severe_check() (Íñigo Huguet) [2136123] - mt76: mt7915: rework SER debugfs knob (Íñigo Huguet) [2136123] - mt76: mt7915: limit minimum twt duration (Íñigo Huguet) [2136123] - mt76: mt7915: reject duplicated twt flows (Íñigo Huguet) [2136123] - mt76: mt7915: update mt7986 patch in mt7986_wmac_adie_patch_7976() (Íñigo Huguet) [2136123] - mt76: connac: use skb_put_data instead of open coding (Íñigo Huguet) [2136123] - mt76: mt7915: configure soc clocks in mt7986_wmac_init (Íñigo Huguet) [2136123] - mt76: fix encap offload ethernet type check (Íñigo Huguet) [2136123] - mt76: mt7915: disable RX_HDR_TRANS_SHORT (Íñigo Huguet) [2136123] - mt76: mt7603: move spin_lock_bh() to spin_lock() (Íñigo Huguet) [2136123] - mt76: mt7915: add debugfs knob for RF registers read/write (Íñigo Huguet) [2136123] - mt76: mt7921: make read-only array ppet16_ppet8_ru3_ru0 static const (Íñigo Huguet) [2136123] - mt76: mt7915: make read-only array ppet16_ppet8_ru3_ru0 static const (Íñigo Huguet) [2136123] - mt76: mt7915: remove SCS feature (Íñigo Huguet) [2136123] - mt76: fix rx reordering with non explicit / psmp ack policy (Íñigo Huguet) [2136123] - mt76: mt7921: Add AP mode support (Íñigo Huguet) [2136123] - mt76: mt7915: use 0xff to initialize bitrate_mask in mt7915_init_bitrate_mask (Íñigo Huguet) [2136123] - mt76: mt7915: always call mt7915_wfsys_reset() during init (Íñigo Huguet) [2136123] - mt76: mt7921: rely on mt76_dev rxfilter in mt7921_configure_filter (Íñigo Huguet) [2136123] - mt76: mt7921u: add suspend/resume support (Íñigo Huguet) [2136123] - mt76: fix MBSS index condition in DBDC mode (Íñigo Huguet) [2136123] - mt76: fix use-after-free by removing a non-RCU wcid pointer (Íñigo Huguet) [2136123] - mt76: mt7921: accept rx frames with non-standard VHT MCS10-11 (Íñigo Huguet) [2136123] - mt76: mt7915: accept rx frames with non-standard VHT MCS10-11 (Íñigo Huguet) [2136123] - mt76: dma: use kzalloc instead of devm_kzalloc for txwi (Íñigo Huguet) [2136123] - mt76: reduce tx queue lock hold time (Íñigo Huguet) [2136123] - mt76: mt7915: rework hardware/phy initialization (Íñigo Huguet) [2136123] - rtlwifi: Use pr_warn instead of WARN_ONCE (Íñigo Huguet) [2136123] - rtw89: add debug entry to dump BSSID CAM (Íñigo Huguet) [2136123] - rtw89: add debug select to dump MAC pages 0x30 to 0x33 (Íñigo Huguet) [2136123] - rtw89: correct CCA control (Íñigo Huguet) [2136123] - rtw89: correct setting of RX MPDU length (Íñigo Huguet) [2136123] - rtw89: 8852c: add settings to decrease the effect of DC (Íñigo Huguet) [2136123] - brcmfmac: allow setting wlan MAC address using device tree (Íñigo Huguet) [2136123] - ath11k: remove redundant assignment to variables vht_mcs and he_mcs (Íñigo Huguet) [2136123] - ath11k: Reuse the available memory after firmware reload (Íñigo Huguet) [2136123] - ath11k: Designating channel frequency when sending management frames (Íñigo Huguet) [2136123] - ath11k: Implement remain-on-channel support (Íñigo Huguet) [2136123] - ath11k: Handle keepalive during WoWLAN suspend and resume (Íñigo Huguet) [2136123] - bus: mhi: host: Add support for Foxconn T99W373 and T99W368 (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: add Telit FN990 (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: add Telit FN980 v1 hardware revision (Íñigo Huguet) [2136123] - bus: mhi: replace snprintf with sysfs_emit (Íñigo Huguet) [2136123] - rtw88: adjust adaptivity option to 1 (Íñigo Huguet) [2136123] - ath11k: Fix RX de-fragmentation issue on WCN6750 (Íñigo Huguet) [2136123] - ath10k: support bus and device specific API 1 BDF selection (Íñigo Huguet) [2136123] - ath10k: mac: fix too long lines (Íñigo Huguet) [2136123] - ath11k: mac: fix too long line (Íñigo Huguet) [2136123] - mac80211: support disabling EHT mode (Íñigo Huguet) [2136123] - cfg80211: support disabling EHT mode (Íñigo Huguet) [2136123] - mac80211: upgrade passive scan to active scan on DFS channels after beacon rx (Íñigo Huguet) [2136123] - mac80211: tx: delete a redundant if statement in ieee80211_check_fast_xmit() (Íñigo Huguet) [2136123] - mac80211: consider Order bit to fill CCMP AAD (Íñigo Huguet) [2136123] - cfg80211: declare MODULE_FIRMWARE for regulatory.db (Íñigo Huguet) [2136123] - nl80211: rework internal_flags usage (Íñigo Huguet) [2136123] - nl80211: don't hold RTNL in color change request (Íñigo Huguet) [2136123] - cfg80211: remove cfg80211_get_chan_state() (Íñigo Huguet) [2136123] - ath11k: Add support for targets without trustzone (Íñigo Huguet) [2136123] - rtw89: 8852c: add 8852ce to Makefile and Kconfig (Íñigo Huguet) [2136123] - rtw89: 8852c: fix warning of FIELD_PREP() mask type (Íñigo Huguet) [2136123] - rtw89: 8852c: correct register definitions used by 8852c (Íñigo Huguet) [2136123] - rtw89: correct AID settings of beamformee (Íñigo Huguet) [2136123] - rtw89: ps: fine tune polling interval while changing low power mode (Íñigo Huguet) [2136123] - rtw89: 8852c: add basic and remaining chip_info (Íñigo Huguet) [2136123] - rtw89: 8852c: add chip_ops::bb_ctrl_btc_preagc (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: get calibrated channels to notify firmware (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add DPK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add IQK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add RX DCK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add RCK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add TSSI (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add LCK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add DACK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add RFK tables (Íñigo Huguet) [2136123] - rtw88: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2136123] - ath10k: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2136123] - ath11k: Add support for WCN6750 device (Íñigo Huguet) [2136123] - ath11k: Datapath changes to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: HAL changes to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: Add QMI changes for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Fetch device information via QMI for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Add register access logic for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Add HW params for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Move parameters in bus_params to hw_params (Íñigo Huguet) [2136123] - ath11k: change management tx queue to avoid connection timed out (Íñigo Huguet) [2136123] - ath11k: fix warning of not found station for bssid in message (Íñigo Huguet) [2136123] - rtw88: fix hw scan may cause disconnect issue (Íñigo Huguet) [2136123] - rtw88: fix not disabling beacon filter after disconnection (Íñigo Huguet) [2136123] - rtw88: add HT MPDU density value for each chip (Íñigo Huguet) [2136123] - ath11k: Don't use GFP_KERNEL in atomic context (Íñigo Huguet) [2136123] - ath10k: skip ath10k_halt during suspend for driver state RESTARTING (Íñigo Huguet) [2136123] - rtw89: remove unneeded semicolon (Íñigo Huguet) [2136123] - ath10k: simplify if-if to if-else (Íñigo Huguet) [2136123] - ath11k: read country code from SMBIOS for WCN6855/QCA6390 (Íñigo Huguet) [2136123] - ath11k: disable spectral scan during spectral deinit (Íñigo Huguet) [2136123] - ath11k: Update WBM idle ring HP after FW mode on (Íñigo Huguet) [2136123] - ath11k: WMI changes to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: Do not put HW in DBS mode for WCN6750 (Íñigo Huguet) [2136123] - rtlwifi: btcoex: fix if == else warning (Íñigo Huguet) [2136123] - rtw88: use the correct bit in the REG_HCI_OPT_CTRL register (Íñigo Huguet) [2136123] - mwifiex: Add SD8997 SDIO-UART firmware (Íñigo Huguet) [2136123] - mwifiex: Select firmware based on strapping (Íñigo Huguet) [2136123] - rtw89: 8852c: add chip_ops related to BTC (Íñigo Huguet) [2136123] - rtw89: 8852c: fill freq and band of RX status by PPDU report (Íñigo Huguet) [2136123] - rtw89: 8852c: implement chip_ops::get_thermal (Íñigo Huguet) [2136123] - rtw89: 8852c: implement chip_ops related to TX power (Íñigo Huguet) [2136123] - rtw89: 8852c: configure default BB TX/RX path (Íñigo Huguet) [2136123] - rtw89: add RF H2C to notify firmware (Íñigo Huguet) [2136123] - rtw89: don't flush hci queues and send h2c if power is off (Íñigo Huguet) [2136123] - rtw89: pci: allow to process RPP prior to TX BD (Íñigo Huguet) [2136123] - rtw89: ps: access TX/RX rings via another registers in low power mode (Íñigo Huguet) [2136123] - rtw89: ser: re-enable interrupt in threadfn if under_recovery (Íñigo Huguet) [2136123] - rtw89: pci: add a separate interrupt handler for low power mode (Íñigo Huguet) [2136123] - rtw89: pci: reclaim TX BD only if it really need (Íñigo Huguet) [2136123] - rtw89: pci: add variant RPWM/CPWM to enter low power mode (Íñigo Huguet) [2136123] - rtw89: pci: add variant IMR/ISR and configure functions (Íñigo Huguet) [2136123] - bus: mhi: host: Add support for Cinterion MV32-WA/MV32-WB (Íñigo Huguet) [2136123] - bus: mhi: host: Optimize and update MMIO register write method (Íñigo Huguet) [2136123] - bus: mhi: host: Bail on writing register fields if read fails (Íñigo Huguet) [2136123] - bus: mhi: host: Wait for ready state after reset (Íñigo Huguet) [2136123] - bus: mhi: host: Add soc_reset sysfs (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Sort mhi_pci_id_table based on the PID (Íñigo Huguet) [2136123] - bus: mhi: host: Use cached values for calculating the shared write pointer (Íñigo Huguet) [2136123] - rtw88: pci: 8821c: Disable 21ce completion timeout (Íñigo Huguet) [2136123] - rtw88: fix uninitialized 'tim_offset' warning (Íñigo Huguet) [2136123] - rtw89: 8852c: add help function of set channel (Íñigo Huguet) [2136123] - rtw89: 8852c: add set channel of BB part (Íñigo Huguet) [2136123] - rtw89: 8852c: set channel of MAC part (Íñigo Huguet) [2136123] - rtw89: 8852c: add set channel function of RF part (Íñigo Huguet) [2136123] - rtw89: 8852c: add HFC parameters (Íñigo Huguet) [2136123] - rtw89: 8852c: add efuse gain offset parser (Íñigo Huguet) [2136123] - rtw89: 8852c: support bb gain info (Íñigo Huguet) [2136123] - rtw89: 8852c: add BB initial and reset functions (Íñigo Huguet) [2136123] - rtw89: 8852c: phy: configure TSSI bandedge (Íñigo Huguet) [2136123] - rtw89: 8852c: add TX power track tables (Íñigo Huguet) [2136123] - rtw89: 8852c: add TX power by rate and limit tables (Íñigo Huguet) [2136123] - rtw89: 8852c: add BB and RF parameters tables (Íñigo Huguet) [2136123] - ath9k: fix QCA9561 PA bias level (Íñigo Huguet) [2136123] - ath9k_htc: fix potential out of bounds access with invalid rxstatus->rs_keyix (Íñigo Huguet) [2136123] - ath11k: Fix build warning without CONFIG_IPV6 (Íñigo Huguet) [2136123] - ath11k: fix missing unlock on error in ath11k_wow_op_resume() (Íñigo Huguet) [2136123] - ath11k: Add support for SAR (Íñigo Huguet) [2136123] - ath11k: add support for extended wmi service bit (Íñigo Huguet) [2136123] - rtw89: pci: correct return value handling of rtw89_write16_mdio_mask() (Íñigo Huguet) [2136123] - rtw89: configure security CAM for V1 chip (Íñigo Huguet) [2136123] - rtw89: add new H2C to configure security CAM via DCTL for V1 chip (Íñigo Huguet) [2136123] - rtw89: extend H2C of CMAC control info (Íñigo Huguet) [2136123] - rtlwifi: rtl8192cu: Fix spelling mistake "writting" -> "writing" (Íñigo Huguet) [2136123] - rtlwifi: Fix spelling mistake "cacluated" -> "calculated" (Íñigo Huguet) [2136123] - rtw88: 8821ce: Disable PCIe ASPM L1 for 8821CE using chip ID (Íñigo Huguet) [2136123] - rtw88: 8821ce: add support for device ID 0xb821 (Íñigo Huguet) [2136123] - rtw88: 8821c: fix debugfs rssi value (Íñigo Huguet) [2136123] - rtw88: do PHY calibration while starting AP (Íñigo Huguet) [2136123] - rtw88: 8821c: Enable TX report for management frames (Íñigo Huguet) [2136123] - rtw88: Add update beacon flow for AP mode (Íñigo Huguet) [2136123] - rtw88: fix incorrect frequency reported (Íñigo Huguet) [2136123] - rtw88: add ieee80211:sta_rc_update ops (Íñigo Huguet) [2136123] - rtw89: rtw89_ser: add const to struct state_ent and event_ent (Íñigo Huguet) [2136123] - rtw89: 8852c: add 8852c specific BT-coexistence initial function (Íñigo Huguet) [2136123] - rtw89: Skip useless dig gain and igi related settings for 8852C (Íñigo Huguet) [2136123] - rtw89: 8852c: disable firmware watchdog if CPU disabled (Íñigo Huguet) [2136123] - rtw89: reset BA CAM (Íñigo Huguet) [2136123] - rtw89: change station scheduler setting for hardware TX mode (Íñigo Huguet) [2136123] - rtw89: ser: configure top ERR IMR for firmware to recover (Íñigo Huguet) [2136123] - rtw89: ser: configure C-MAC interrupt mask (Íñigo Huguet) [2136123] - rtw89: ser: configure D-MAC interrupt mask (Íñigo Huguet) [2136123] - rtw89: ser: fix unannotated fall-through (Íñigo Huguet) [2136123] - ath9k: Remove unnecessary print function dev_err() (Íñigo Huguet) [2136123] - ath11k: Fix spelling mistake "reseting" -> "resetting" (Íñigo Huguet) [2136123] - ath9k: fix ath_get_rate_txpower() to respect the rate list end tag (Íñigo Huguet) [2136123] - mac80211: prepare sta handling for MLO support (Íñigo Huguet) [2136123] - mac80211: minstrel_ht: fix where rate stats are stored (fixes debugfs output) (Íñigo Huguet) [2136123] - nl80211: show SSID for P2P_GO interfaces (Íñigo Huguet) [2136123] - mac80211: introduce BSS color collision detection (Íñigo Huguet) [2136123] - mac80211: Improve confusing comment around tx_info clearing (Íñigo Huguet) [2136123] - mac80211: protect ieee80211_assign_beacon with next_beacon check (Íñigo Huguet) [2136123] - rtl8xxxu: fill up txrate info for gen1 chips (Íñigo Huguet) [2136123] - rtl8xxxu: feed antenna information for cfg80211 (Íñigo Huguet) [2136123] - rtlwifi: replace usage of found with dedicated list iterator variable (Íñigo Huguet) [2136123] - brcmfmac: Avoid keeping power to SDIO card unless WOWL is used (Íñigo Huguet) [2136123] - mwifiex: add mutex lock for call in mwifiex_dfs_chan_sw_work_queue (Íñigo Huguet) [2136123] - rtw89: fix misconfiguration on hw_scan channel time (Íñigo Huguet) [2136123] - rtw89: coex: Add case for scan offload (Íñigo Huguet) [2136123] - rtw89: packet offload handler to avoid warning (Íñigo Huguet) [2136123] - rtw89: change idle mode condition during hw_scan (Íñigo Huguet) [2136123] - rtw89: update ptcl_init (Íñigo Huguet) [2136123] - rtw89: update TMAC parameters (Íñigo Huguet) [2136123] - rtw89: initialize NAV control (Íñigo Huguet) [2136123] - rtw89: update scheduler setting (Íñigo Huguet) [2136123] - rtw89: 8852c: update security engine setting (Íñigo Huguet) [2136123] - rtw89: Turn on CR protection of CMAC (Íñigo Huguet) [2136123] - rtw89: add chip_ops::{enable,disable}_bb_rf to support v1 chip (Íñigo Huguet) [2136123] - rtw89: update STA scheduler parameters for v1 chip (Íñigo Huguet) [2136123] - rtw89: extend dmac_pre_init to support 8852C (Íñigo Huguet) [2136123] - rtw89: pci: add L1 settings (Íñigo Huguet) [2136123] - rtw89: pci: add deglitch setting (Íñigo Huguet) [2136123] - rtw89: pci: set address info registers depends on chips (Íñigo Huguet) [2136123] - rtw89: pci: add LTR setting for v1 chip (Íñigo Huguet) [2136123] - rtw89: pci: refine pci pre_init function (Íñigo Huguet) [2136123] - rtw89: pci: add pci attributes to configure operating mode (Íñigo Huguet) [2136123] - rtw89: pci: add register definition to rtw89_pci_info to generalize pci code (Íñigo Huguet) [2136123] - ath11k: mhi: remove unnecessary goto from ath11k_mhi_start() (Íñigo Huguet) [2136123] - ath11k: mhi: add error handling for suspend and resume (Íñigo Huguet) [2136123] - ath11k: mhi: remove state machine (Íñigo Huguet) [2136123] - rtw89: handle potential uninitialized variable (Íñigo Huguet) [2136123] - rtw89: read RX bandwidth from v1 type RX descriptor (Íñigo Huguet) [2136123] - rtw89: support hardware generate security header (Íñigo Huguet) [2136123] - rtw89: support variant of fill_txdesc (Íñigo Huguet) [2136123] - rtw89: pci: support variant of fill_txaddr_info (Íñigo Huguet) [2136123] - rtw89: add chip_info::h2c_desc_size/fill_txdesc_fwcmd to support new chips (Íñigo Huguet) [2136123] - rtw89: disabled IGI configuration for unsupported hardware (Íñigo Huguet) [2136123] - rtw89: packed IGI configuration flow into function for DIG feature (Íñigo Huguet) [2136123] - rtw89: regd: update mapping table to R59-R32 (Íñigo Huguet) [2136123] - rtw89: regd: consider 6G band (Íñigo Huguet) [2136123] - rtw89: 8852a: update txpwr tables to HALRF_027_00_038 (Íñigo Huguet) [2136123] - rtw89: add UK to regulation type (Íñigo Huguet) [2136123] - rtw89: reduce export symbol number of mac size and quota (Íñigo Huguet) [2136123] - rtw89: support FW crash simulation (Íñigo Huguet) [2136123] - rtw89: reconstruct fw feature (Íñigo Huguet) [2136123] - rtw89: ser: dump fw backtrace while L2 reset (Íñigo Huguet) [2136123] - rtw89: ser: dump memory for fw payload engine while L2 reset (Íñigo Huguet) [2136123] - rtw89: ser: control hci interrupts on/off by state (Íñigo Huguet) [2136123] - rtw89: mac: correct decision on error status by scenario (Íñigo Huguet) [2136123] - rtw89: mac: move table of mem base addr to common (Íñigo Huguet) [2136123] - rtw89: ser: fix CAM leaks occurring in L2 reset (Íñigo Huguet) [2136123] - rtw88: change idle mode condition during hw_scan (Íñigo Huguet) [2136123] - iwlwifi: mei: Replace zero-length array with flexible-array member (Íñigo Huguet) [2136123] - iwlwifi: fw: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2136123] - ath11k: fix driver initialization failure with WoW unsupported hw (Íñigo Huguet) [2136123] - ath11k: Remove unnecessary delay in ath11k_core_suspend (Íñigo Huguet) [2136123] - ath11k: Change max no of active probe SSID and BSSID to fw capability (Íñigo Huguet) [2136123] - ath11k: Remove core PCI references from PCI common code (Íñigo Huguet) [2136123] - ath11k: Refactor MSI logic to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: Choose MSI config based on HW revision (Íñigo Huguet) [2136123] - ath11k: Refactor PCI code to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: PCI changes to support WCN6750 (Íñigo Huguet) [2136123] - bus: mhi: ep: Add uevent support for module autoloading (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for suspending and resuming channels (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for queueing SKBs to the host (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for processing channel rings (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for reading from the host (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for processing command rings (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for handling SYS_ERR condition (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for handling MHI_RESET (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for powering down the MHI endpoint stack (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for powering up the MHI endpoint stack (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for processing MHI endpoint interrupts (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for managing MHI state machine (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for sending events to the host (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for ring management (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for managing MMIO registers (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for creating and destroying MHI EP devices (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for registering MHI endpoint client drivers (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for registering MHI endpoint controllers (Íñigo Huguet) [2136123] - ath9k: make is2ghz consistent in ar9003_eeprom (Íñigo Huguet) [2136123] - ath10k: add support for MSDU IDs for USB devices (Íñigo Huguet) [2136123] - ath11k: add support to search regdb data in board-2.bin for WCN6855 (Íñigo Huguet) [2136123] - ath11k: store and send country code to firmware after recovery (Íñigo Huguet) [2136123] - ath9k: add functions to get paprd rate mask (Íñigo Huguet) [2136123] - ath9k: refactor ar9003_hw_spur_mitigate_ofdm (Íñigo Huguet) [2136123] - ath9k: fix ar9003_get_eepmisc (Íñigo Huguet) [2136123] - ath9k: use AR9300_MAX_CHAINS when appropriate (Íñigo Huguet) [2136123] - ath9k: split set11nRateFlags and set11nChainSel (Íñigo Huguet) [2136123] - ath9k: make ATH_SREV macros more consistent (Íñigo Huguet) [2136123] - ath11k: Add peer rhash table support (Íñigo Huguet) [2136123] - ath11k: add read variant from SMBIOS for download board data (Íñigo Huguet) [2136123] - ath11k: add fallback board name without variant while searching board-2.bin (Íñigo Huguet) [2136123] - ath11k: enable PLATFORM_CAP_PCIE_GLOBAL_RESET QMI host capability (Íñigo Huguet) [2136123] - ath11k: Add hw-restart option to simulate_fw_crash (Íñigo Huguet) [2136123] - ath11k: add synchronization operation between reconfigure of mac80211 and ath11k_base (Íñigo Huguet) [2136123] - ath11k: add support for device recovery for QCA6390/WCN6855 (Íñigo Huguet) [2136123] - ath11k: disable regdb support for QCA6390 (Íñigo Huguet) [2136123] - ath11k: remove unused ATH11K_BD_IE_BOARD_EXT (Íñigo Huguet) [2136123] - ath11k: change fw build id format in driver init log (Íñigo Huguet) [2136123] - ath11k: Refactor the peer delete (Íñigo Huguet) [2136123] - ath10k: Use of_device_get_match_data() helper (Íñigo Huguet) [2136123] - ath10k: Trigger sta disconnect on hardware restart (Íñigo Huguet) [2136123] - ath9k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2136123] - ath11k: support GTK rekey offload (Íñigo Huguet) [2136123] - ath11k: support ARP and NS offload (Íñigo Huguet) [2136123] - ath11k: purge rx pktlog when entering WoW (Íñigo Huguet) [2136123] - ath11k: implement hardware data filter (Íñigo Huguet) [2136123] - ath11k: Add WoW net-detect functionality (Íñigo Huguet) [2136123] - ath11k: Add basic WoW functionalities (Íñigo Huguet) [2136123] - x86/cpu: Add several Intel server CPU model numbers (Prarit Bhargava) [2158037] - ice: Implement devlink port split operations (Petr Oros) [2009705] - ice: Add additional flags to ice_nvm_write_activate (Petr Oros) [2009705] - ice: Add port option admin queue commands (Petr Oros) [2009705] - hwmon: (coretemp) Check for null before removing sysfs attrs (Phil Auld) [2152429] - KVM: x86/mmu: fix NULL pointer dereference on guest INVPCID (Jon Maloy) [2099301] {CVE-2022-1789} - redhat/configs: enable HP_WATCHDOG for aarch64 (Mark Salter) [2113079] - watchdog/hpwdt: Enable HP_WATCHDOG for ARM64 systems. (Mark Salter) [2113079] - watchdog: Improve Kconfig entry ordering and dependencies (Mark Salter) [2113079] - watchdog/hpwdt: Include nmi.h only if CONFIG_HPWDT_NMI_DECODING (Mark Salter) [2113079] - uprobes/x86: Allow to probe a NOP instruction with 0x66 prefix (Oleg Nesterov) [2133797] - platform/mellanox: Remove redundant 'NULL' check (Mark Langsdorf) [2122314] - platform/mellanox: Remove unnecessary code (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-lc: Fix locking issue (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-lc: Fix coverity warning (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-lc: Fix error flow and extend verbosity (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-io: Add locking for io operations (Mark Langsdorf) [2122314] - platform/mellanox: nvsw-sn2201: fix error code in nvsw_sn2201_create_static_devices() (Mark Langsdorf) [2122314] - platform/mellanox: Add static in struct declaration. (Mark Langsdorf) [2122314] - platform/mellanox: Spelling s/platfom/platform/ (Mark Langsdorf) [2122314] - redhat/configs: Enable Mellanox SN2201 management device (Mark Langsdorf) [2122314] - platform/mellanox: Add support for new SN2201 system (Mark Langsdorf) [2122314] - platform_data/mlxreg: Add field for notification callback (Mark Langsdorf) [2122314] - Bluetooth: btintel: Fix WBS setting for Intel legacy ROM products (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix broken LED quirk for legacy ROM devices (Gopal Tiwari) [2129295] - Bluetooth: Add support hdev to allocate private data (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix the legacy bootloader returns tlv based version (Gopal Tiwari) [2129295] - Bluetooth: btintel: Clean the exported function to static (Gopal Tiwari) [2129295] - Bluetooth: btintel: Move hci quirks to setup routine (Gopal Tiwari) [2129295] - Bluetooth: btintel: Refactoring setup routine for bootloader devices (Gopal Tiwari) [2129295] - Bluetooth: btintel: Add combined set_diag functions (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix the LED is not turning off immediately (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix the first HCI command not work with ROM device (Gopal Tiwari) [2129295] - Bluetooth: btintel: Add btintel data struct (Gopal Tiwari) [2129295] - Bluetooth: btintel: Refactoring setup routine for legacy ROM sku (Gopal Tiwari) [2129295] - Bluetooth: btintel: Add combined setup and shutdown functions (Gopal Tiwari) [2129295] - EDAC/mc_sysfs: Increase legacy channel support to 12 (Aristeu Rozanski) [2139861] - NFS: Trigger the "ls -l" readdir heuristic sooner (Benjamin Coddington) [2025991] - NFS: Cache all entries in the readdirplus reply (Benjamin Coddington) [2025991] - NFS: Optimise away the previous cookie field (Benjamin Coddington) [2025991] - NFS: Fix up forced readdirplus (Benjamin Coddington) [2025991] - NFS: Convert readdir page cache to use a cookie based index (Benjamin Coddington) [2025991] - NFS: Clean up page array initialisation/free (Benjamin Coddington) [2025991] - NFS: Trace effects of the readdirplus heuristic (Benjamin Coddington) [2025991] - NFS: Trace effects of readdirplus on the dcache (Benjamin Coddington) [2025991] - NFS: Add basic readdir tracing (Benjamin Coddington) [2025991] - NFS: Don't request readdirplus when revalidation was forced (Benjamin Coddington) [2025991] - NFSv4: Ask for a full XDR buffer of readdir goodness (Benjamin Coddington) [2025991] - NFS: Don't ask for readdirplus unless it can help nfs_getattr() (Benjamin Coddington) [2025991] - NFS: Improve heuristic for readdirplus (Benjamin Coddington) [2025991] - NFS: Reduce use of uncached readdir (Benjamin Coddington) [2025991] - NFS: Simplify nfs_readdir_xdr_to_array() (Benjamin Coddington) [2025991] - NFS: If the cookie verifier changes, we must invalidate the page cache (Benjamin Coddington) [2025991] - NFS: Adjust the amount of readahead performed by NFS readdir (Benjamin Coddington) [2025991] - NFS: Don't advance the page pointer unless the page is full (Benjamin Coddington) [2025991] - NFS: Don't re-read the entire page cache to find the next cookie (Benjamin Coddington) [2025991] - NFS: Store the change attribute in the directory page cache (Benjamin Coddington) [2025991] - NFS: Calculate page offsets algorithmically (Benjamin Coddington) [2025991] - NFS: Use kzalloc() to avoid initialising the nfs_open_dir_context (Benjamin Coddington) [2025991] - NFS: Initialise the readdir verifier as best we can in nfs_opendir() (Benjamin Coddington) [2025991] - NFS: Trace lookup revalidation failure (Benjamin Coddington) [2025991] - NFS: constify nfs_server_capable() and nfs_have_writebacks() (Benjamin Coddington) [2025991] - NFS: Return valid errors from nfs2/3_decode_dirent() (Benjamin Coddington) [2025991] - NFS: Avoid duplicate uncached readdir calls on eof (Benjamin Coddington) [2025991] - NFS: Don't skip directory entries when doing uncached readdir (Benjamin Coddington) [2025991] - NFS: Don't overfill uncached readdir pages (Benjamin Coddington) [2025991] - block: unhash blkdev part inode when the part is deleted (Ming Lei) [2148497]- x86/fpu: Drop fpregs lock before inheriting FPU permissions (Eder Zulian) [2153549] - cpufreq: amd-pstate: Add resume and suspend callbacks (Mark Langsdorf) [2122310] - cpufreq: CPPC: Enable dvfs_possible_from_any_cpu (Mark Langsdorf) [2122310] - cpufreq: check only freq_table in __resolve_freq() (Mark Langsdorf) [2122310] - cpufreq: ondemand: Use cpumask_var_t for on-stack cpu mask (Mark Langsdorf) [2122310] - cpufreq: Change order of online() CB and policy->cpus modification (Mark Langsdorf) [2122310] - cpufreq: Warn users while freeing active policy (Mark Langsdorf) [2122310] - cpufreq: Drop unnecessary cpus locking from store() (Mark Langsdorf) [2122310] - cpufreq: Optimize cpufreq_show_cpus() (Mark Langsdorf) [2122310] - cpufreq: make interface functions and lock holding state clear (Mark Langsdorf) [2122310] - cpufreq: Abort show()/store() for half-initialized policies (Mark Langsdorf) [2122310] - cpufreq: Rearrange locking in cpufreq_remove_dev() (Mark Langsdorf) [2122310] - cpufreq: Split cpufreq_offline() (Mark Langsdorf) [2122310] - cpufreq: Reorganize checks in cpufreq_offline() (Mark Langsdorf) [2122310] - cpufreq: Clear real_cpus mask from remove_cpu_dev_symlink() (Mark Langsdorf) [2122310] - cpufreq: Prepare cleanup of powerpc's asm/prom.h (Mark Langsdorf) [2122310] - cpufreq: governor: Use kobject release() method to free dbs_data (Mark Langsdorf) [2122310] - ipv6: fix panic when fib_lookup_arg->result is fib6_info (Jiri Benc) [2140599] - tipc: re-fetch skb cb after tipc_msg_validate (Xin Long) [2142732] - Documentation: bonding: correct xmit hash steps (Jonathan Toppins) [2150390] - Documentation: bonding: update miimon default to 100 (Jonathan Toppins) [2150390] - selftests: bonding: up/down delay w/ slave link flapping (Jonathan Toppins) [2150390] - bonding (gcc13): synchronize bond_{a,t}lb_xmit() types (Jonathan Toppins) [2150390] - selftests: net: Fix cross-tree inclusion of scripts (Jonathan Toppins) [2150390] - treewide: use get_random_u32() when possible (Jonathan Toppins) [2150390] - selftests/bonding: re-add lladdr target test (Jonathan Toppins) [2150390] - selftests: bonding: cause oops in bond_rr_gen_slave_id (Jonathan Toppins) [2150390] - selftests/bonding: add a test for bonding lladdr target (Jonathan Toppins) [2150390] - net: Add tests for bonding and team address list management (Jonathan Toppins) [2150390] - net: bonding: Unsync device addresses on ndo_stop (Jonathan Toppins) [2150390] - net: bonding: Share lacpdu_mcast_addr definition (Jonathan Toppins) [2150390] - Documentation: bonding: clarify supported modes for tlb_dynamic_lb (Jonathan Toppins) [2150390] - selftests: include bonding tests into the kselftest infra (Jonathan Toppins) [2150390] - bonding: fix reference count leak in balance-alb mode (Jonathan Toppins) [2150390] - net:bonding:support balance-alb interface with vlan to bridge (Jonathan Toppins) [2150390] - bonding: cleanup bond_create (Jonathan Toppins) [2150390] - bonding: netlink error message support for options (Jonathan Toppins) [2150390] - bonding: Update layer2 and layer2+3 hash formula documentation (Jonathan Toppins) [2150390] - net: bonding: Add support for IPV6 ns/na to balance-alb/balance-tlb mode (Jonathan Toppins) [2150390] - net: remove bond_slave_has_mac_rcu() (Jonathan Toppins) [2150390] - net: bonding: debug: avoid printing debug logs when bond is not notifying peers (Jonathan Toppins) [2150390] - net: bonding: constify and use dev_addr_set() (Jonathan Toppins) [2150390] - net: use dev_addr_set() (Jonathan Toppins) [2150390] - bonding: remove extraneous definitions from bonding.h (Jonathan Toppins) [2150390] - net: bonding: bond_alb: Fix some typos in bond_alb.c (Jonathan Toppins) [2150390] - net: bonding: use tabs instead of space for code indent (Jonathan Toppins) [2150390] - net: bonding: remove unnecessary braces (Jonathan Toppins) [2150390] - net: bonding: fix code indent for conditional statements (Jonathan Toppins) [2150390] - net: bonding: add some required blank lines (Jonathan Toppins) [2150390] - docs: networking: bonding.rst Fix a typo in bonding.rst (Jonathan Toppins) [2150390] - docs: networking: bonding.rst resources section cleanup (Jonathan Toppins) [2150390] - bonding: Replace zero-length array with flexible-array member (Jonathan Toppins) [2150390] - include/net/bond_3ad: Simplify the code by using the ARRAY_SIZE (Jonathan Toppins) [2150390] - vmxnet3: use correct intrConf reference when using extended queues (Izabela Bakollari) [2150917] - vmxnet3: correctly report encapsulated LRO packet (Izabela Bakollari) [2150917] - net: move from strlcpy with unused retval to strscpy (Izabela Bakollari) [2150917] - vmxnet3: Implement ethtool's get_channels command (Izabela Bakollari) [2150917] - vmxnet3: Record queue number to incoming packets (Izabela Bakollari) [2150917] - [rt] Revert "mm/memcg: disable threshold event handlers on PREEMPT_RT" (Chris White) [2152035] - s390/pci: allow zPCI zbus without a function zero (Tobias Huschle) [2043829] - PCI: Extend isolated function probing to s390 (Tobias Huschle) [2043829] - PCI: Move jailhouse's isolated function handling to pci_scan_slot() (Tobias Huschle) [2043829] - PCI: Split out next_ari_fn() from next_fn() (Tobias Huschle) [2043829] - PCI: Clean up pci_scan_slot() (Tobias Huschle) [2043829] - KVM: selftests: Build the memslot tests for arm64 (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Report optimal memory slots (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Consolidate memory (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Support variable guest page size (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Probe memory slots for once (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Consolidate loop conditions in prepare_vm() (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Use data->nslots in prepare_vm() (Gavin Shan) [2134650] - KVM: selftests: Make memslot_perf_test arch independent (Gavin Shan) [2134650] - selftests: netfilter: Fix and review rpath.sh (Phil Sutter) [1961152] - netfilter: Use l3mdev flow key when re-routing mangled packets (Phil Sutter) [1961152] - netfilter: Update ip6_route_me_harder to consider L3 domain (Phil Sutter) [1961152] - netfilter: Dissect flow after packet mangling (Phil Sutter) [1961152] - netfilter: rpfilter/fib: Populate flowic_l3mdev field (Phil Sutter) [1961152] - selftests: netfilter: Test reverse path filtering (Phil Sutter) [1961152] - netfilter: nft_fib: Fix for rpath check with VRF devices (Phil Sutter) [1961152] - net: seg6: fix seg6_lookup_any_nexthop() to handle VRFs using flowi_l3mdev (Phil Sutter) [1961152] - net: Handle l3mdev in ip_tunnel_init_flow (Phil Sutter) [1961152] - xfrm: Pass flowi_oif or l3mdev as oif to xfrm_dst_lookup (Phil Sutter) [1961152] - net: Add l3mdev index to flow struct and avoid oif reset for port devices (Phil Sutter) [1961152] - l3mdev: l3mdev_master_upper_ifindex_by_index_rcu should be using netdev_master_upper_dev_get_rcu (Phil Sutter) [1961152] - l3mdev: add function to retreive upper master (Phil Sutter) [1961152] - sfc: move deprecation message to sfc_siena (Íñigo Huguet) [2112205 2136107] - sfc/siena: add entries for new CONFIG_SFC_SIENA* configs (Íñigo Huguet) [2112205 2136107] - sfc: Fix an error handling path in efx_pci_probe() (Íñigo Huguet) [2112205] - sfc: support PTP over Ethernet (Íñigo Huguet) [2112205 2065017] - sfc: support PTP over IPv6/UDP (Íñigo Huguet) [2112205 2065017] - sfc: allow more flexible way of adding filters for PTP (Íñigo Huguet) [2112205 2065017] - sfc: correct filter_table_remove method for EF10 PFs (Íñigo Huguet) [2112205] - sfc/siena: fix null pointer dereference in efx_hard_start_xmit (Íñigo Huguet) [2112205] - sfc/siena: fix TX channel offset when using legacy interrupts (Íñigo Huguet) [2112205] - sfc: implement ethtool get/set RX ring size for EF100 reps (Íñigo Huguet) [2112205] - sfc: use a dynamic m-port for representor RX and set it promisc (Íñigo Huguet) [2112205] - sfc: move table locking into filter_table_{probe,remove} methods (Íñigo Huguet) [2112205] - sfc: insert default MAE rules to connect VFs to representors (Íñigo Huguet) [2112205] - sfc: receive packets from EF100 VFs into representors (Íñigo Huguet) [2112205] - sfc: check ef100 RX packets are from the wire (Íñigo Huguet) [2112205] - sfc: determine wire m-port at EF100 PF probe time (Íñigo Huguet) [2112205] - sfc: ef100 representor RX top half (Íñigo Huguet) [2112205] - sfc: ef100 representor RX NAPI poll (Íñigo Huguet) [2112205] - sfc: plumb ef100 representor stats (Íñigo Huguet) [2112205] - sfc: disable softirqs for ptp TX (Íñigo Huguet) [2112205] - sfc/siena: fix repeated words in comments (Íñigo Huguet) [2112205] - sfc: attach/detach EF100 representors along with their owning PF (Íñigo Huguet) [2112205] - sfc: hook up ef100 representor TX (Íñigo Huguet) [2112205] - sfc: support passing a representor to the EF100 TX path (Íñigo Huguet) [2112205] - sfc: determine representee m-port for EF100 representors (Íñigo Huguet) [2112205] - sfc: phys port/switch identification for ef100 reps (Íñigo Huguet) [2112205] - sfc: add basic ethtool ops to ef100 reps (Íñigo Huguet) [2112205] - sfc: add skeleton ef100 VF representors (Íñigo Huguet) [2112205] - sfc: detect ef100 MAE admin privilege/capability at probe time (Íñigo Huguet) [2112205] - sfc: update EF100 register descriptions (Íñigo Huguet) [2112205] - sfc: update MCDI protocol headers (Íñigo Huguet) [2112205] - sfc/siena: Use the bitmap API to allocate bitmaps (Íñigo Huguet) [2112205] - sfc: Separate netdev probe/remove from PCI probe/remove (Íñigo Huguet) [2112205] - sfc: replace function name in string with __func__ (Íñigo Huguet) [2112205] - sfc: Unsplit literal string. (Íñigo Huguet) [2112205] - sfc: Move EF100 efx_nic_type structs to the end of the file (Íñigo Huguet) [2112205] - sfc: Separate efx_nic memory from net_device memory (Íñigo Huguet) [2112205] - sfc: Encapsulate access to netdev_priv() (Íñigo Huguet) [2112205] - sfc: Change BUG_ON to WARN_ON and recovery code. (Íñigo Huguet) [2112205] - sfc: Remove netdev init from efx_init_struct (Íñigo Huguet) [2112205] - sfc: Add a PROBED state for EF100 VDPA use. (Íñigo Huguet) [2112205] - sfc: Split STATE_READY in to STATE_NET_DOWN and STATE_NET_UP. (Íñigo Huguet) [2112205] - sfc: fix repeated words in comments (Íñigo Huguet) [2112205] - sfc: siena: fix repeated words in comments (Íñigo Huguet) [2112205] - sfc/siena: Fix typo in comment (Íñigo Huguet) [2112205] - sfc: Fix typo in comment (Íñigo Huguet) [2112205] - sfc/siena: fix wrong tx channel offset with efx_separate_tx_channels (Íñigo Huguet) [2112205] - sfc/siena: fix considering that all channels have TX queues (Íñigo Huguet) [2112205] - sfc/siena: Remove duplicate check on segments (Íñigo Huguet) [2112205 2136107] - sfc: siena: Have a unique wrapper ifndef for efx channels header (Íñigo Huguet) [2112205 2136107] - eth: sfc: remove remnants of the out-of-tree napi_weight module param (Íñigo Huguet) [2112205] - sfc: siena: Fix Kconfig dependencies (Íñigo Huguet) [2112205 2136107] - sfc/siena: Reinstate SRIOV init/fini function calls (Íñigo Huguet) [2112205 2136107] - sfc/siena: Make PTP and reset support specific for Siena (Íñigo Huguet) [2112205 2136107] - sfc/siena: Make MCDI logging support specific for Siena (Íñigo Huguet) [2112205 2136107] - siena: Make HWMON support specific for Siena (Íñigo Huguet) [2112205 2136107] - siena: Make SRIOV support specific for Siena (Íñigo Huguet) [2112205 2136107] - siena: Make MTD support specific for Siena (Íñigo Huguet) [2112205 2136107] - sfc: Add a basic Siena module (Íñigo Huguet) [2112205 2136107] - sfc/siena: Inline functions in sriov.h to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename functions in nic_common.h to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename functions in mcdi headers to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename peripheral functions to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename RX/TX functions to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename functions in efx headers to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Remove build references to missing functionality (Íñigo Huguet) [2112205 2136107] - sfc: Copy shared files needed for Siena (part 2) (Íñigo Huguet) [2112205 2136107] - sfc: Copy shared files needed for Siena (part 1) (Íñigo Huguet) [2112205 2136107] - sfc: Move Siena specific files (Íñigo Huguet) [2112205 2136107] - sfc: Copy a subset of mcdi_pcol.h to siena (Íñigo Huguet) [2112205 2136107] - sfc: Disable Siena support (Íñigo Huguet) [2112205 2136107] - sfc: add EF100 VF support via a write to sriov_numvfs (Íñigo Huguet) [2112205] - sfc: Remove global definition of efx_reset_type_names (Íñigo Huguet) [2112205] - sfc: Remove duplicate definition of efx_xmit_done (Íñigo Huguet) [2112205] - sfc: efx_default_channel_type APIs can be static (Íñigo Huguet) [2112205] - sfc: Fix spelling mistake "writting" -> "writing" (Íñigo Huguet) [2112205] - sfc: ef10: Fix assigning negative value to unsigned variable (Íñigo Huguet) [2112205] - sfc: use hardware tx timestamps for more than PTP (Íñigo Huguet) [2112205 2065017] - net: ethernet: sfc: Make subdir logic consistent with other vendors (Íñigo Huguet) [2112205 2136107] - hugetlbfs: fix mount mode command line processing (Bill O'Donnell) [2148876] - igc: Correct the launchtime offset (Corinna Vinschen) [2103954] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Corinna Vinschen) [2103954] - igc: Remove IGC_MDIC_INT_EN definition (Corinna Vinschen) [2103954] - igc: Remove forced_speed_duplex value (Corinna Vinschen) [2103954] - igc: Remove MSI-X PBA Clear register (Corinna Vinschen) [2103954] - igc: Lift TAPRIO schedule restriction (Corinna Vinschen) [2103954] - wifi: brcmfmac: Fix potential buffer overflow in brcmf_fweh_event_worker() (Wander Lairson Costa) [2150964] {CVE-2022-3628} - net: ethernet: move from strlcpy with unused retval to strscpy (Corinna Vinschen) [2103949] - tipc: call tipc_lxc_xmit without holding node_read_lock (Xin Long) [2141640] - mptcp: fix sleep in atomic at close time (Davide Caratti) [2150361] - mptcp: don't orphan ssk in mptcp_close() (Davide Caratti) [2150361] - net: Avoid overwriting valid skb->napi_id (Antoine Tenart) [2142593] - x86/microcode/AMD: Apply the patch early on every logical thread (Waiman Long) [2139856] - x86/bugs: Enable STIBP for IBPB mitigated RETBleed (Waiman Long) [2139856] - x86/bugs: Add "unknown" reporting for MMIO Stale Data (Waiman Long) [2139856] - tracing: Use a copy of the va_list for __assign_vstr() (Íñigo Huguet) [2143356] - tracing/events: Add __vstring() and __assign_vstr() helper macros (Íñigo Huguet) [2143356] - rtnetlink: add IFLA_PARENT_[DEV|DEV_BUS]_NAME (Jose Ignacio Tornos Martinez) [2144853] - rtnetlink: add alloc() method to rtnl_link_ops (Jose Ignacio Tornos Martinez) [2144853] - ipv6: Fix data races around sk->sk_prot. (Guillaume Nault) [2144805] {CVE-2022-3567} - ipv6: annotate some data-races around sk->sk_prot (Guillaume Nault) [2144805] {CVE-2022-3567} - ipv6: use indirect call wrappers for {tcp, udpv6}_{recv, send}msg() (Guillaume Nault) [2144805] {CVE-2022-3567} - mm/mremap: hold the rmap lock in write mode when moving page table entries. (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: use pmd/pud_poplulate to update page table entries (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: don't enable optimized PUD move if page table levels is 2 (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: convert huge PUD move to separate helper (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: fix BUILD_BUG_ON() error in get_extent (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap.c: fix extent calculation (Waiman Long) [2140945] {CVE-2022-41222} - x86: mremap speedup - Enable HAVE_MOVE_PUD (Waiman Long) [2140945] {CVE-2022-41222} - mm: speedup mremap on 1GB or larger regions (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: start addresses are properly aligned (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: calculate extent in one place (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: it is sure to have enough space when extent meets requirement (Waiman Long) [2140945] {CVE-2022-41222}- irqchip/gic, gic-v3: Make SGIs use handle_percpu_devid_irq() (Charles Mirabile) [2133892] - irqchip/gic-common: Don't enable SGIs by default (Charles Mirabile) [2133892] - irqchip/gic: Configure SGIs as standard interrupts (Charles Mirabile) [2133892] - irqchip/gic: Refactor SMP configuration (Charles Mirabile) [2133892] - irqchip/gic-v3: Configure SGIs as standard interrupts (Charles Mirabile) [2133892] - irqchip/gic-v3: Describe the SGI range (Charles Mirabile) [2133892] - arm64: Allow IPIs to be handled as normal interrupts (Charles Mirabile) [2133892] - irqchip/gic, gic-v3: Prevent GSI to SGI translations (Charles Mirabile) [2133892] - Workaround to enable support for IPI (Charles Mirabile) [2133892] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2112182] - tg3: Disable tg3 device on system reboot to avoid triggering AER (Ken Cox) [2112182] - aquantia: Do not purge addresses when setting the number of rings (Izabela Bakollari) [2122571] - openvswitch: add nf_ct_is_confirmed check before assigning the helper (Antoine Tenart) [2135414] - net: openvswitch: allow conntrack in non-initial user namespace (Antoine Tenart) [2135414] - net: openvswitch: allow metering in non-initial user namespace (Antoine Tenart) [2135414] - openvswitch: Change the return type for vport_ops.send function hook to int (Antoine Tenart) [2135414] - net: openvswitch: fix repeated words in comments (Antoine Tenart) [2135414] - openvswitch: add OVS_DP_ATTR_PER_CPU_PIDS to get requests (Antoine Tenart) [2135414] - openvswitch: allow specifying ifindex of new interfaces (Antoine Tenart) [2135414] - openvswitch: move from strlcpy with unused retval to strscpy (Antoine Tenart) [2135414] - openvswitch: Fix overreporting of drops in dropwatch (Antoine Tenart) [2135414] - openvswitch: Fix double reporting of drops in dropwatch (Antoine Tenart) [2135414] - openvswitch: fix memory leak at failed datapath creation (Antoine Tenart) [2135414] - net: remove noblock parameter from skb_recv_datagram() (Íñigo Huguet) [2143359] - i40e: Fix error handling in i40e_init_module() (Stefan Assmann) [2103661] - i40e: Add appropriate error message logged for incorrect duplex setting (Stefan Assmann) [2103661] - i40e: Add i40e_napi_poll tracepoint (Stefan Assmann) [2103661] - i40e: Record number of RXes cleaned during NAPI (Stefan Assmann) [2103661] - i40e: Record number TXes cleaned during NAPI (Stefan Assmann) [2103661] - i40e: Store the irq number in i40e_q_vector (Stefan Assmann) [2103661] - ptp: introduce helpers to adjust by scaled parts per million (Stefan Assmann) [2103661] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Stefan Assmann) [2103661] - i40e: Fix flow-type by setting GL_HASH_INSET registers (Stefan Assmann) [2103661] - i40e: Fix ethtool rx-flow-hash setting for X722 (Stefan Assmann) [2103661] - i40e: Fix ADQ rate limiting for PF (Stefan Assmann) [2103661] - i40e: add description and modify interrupts configuration procedure (Stefan Assmann) [2103661] - i40e: Add basic support for I710 devices (Stefan Assmann) [2103661] - net: ethernet: move from strlcpy with unused retval to strscpy (Stefan Assmann) [2103661] - i40e: Fix incorrect address type for IPv6 flow rules (Stefan Assmann) [2103661] - i40e: Fix to stop tx_timeout recovery if GLOBR fails (Stefan Assmann) [2103661] - i40e: convert .adjfreq to .adjfine (Stefan Assmann) [2103661] - i40e: use mul_u64_u64_div_u64 for PTP frequency calculation (Stefan Assmann) [2103661] - i40e: Fix interface init with MSI interrupts (no MSI-X) (Stefan Assmann) [2103661] - i40e: Refactor tc mqprio checks (Stefan Assmann) [2103661] - i40e: Fix erroneous adapter reinitialization during recovery process (Stefan Assmann) [2103661] - i40e: Fix VF's MAC Address change on VM (Stefan Assmann) [2103661] - i40e: Fix dropped jumbo frames statistics (Stefan Assmann) [2103661] - intel/i40e:fix repeated words in comments (Stefan Assmann) [2103661] - intel: remove unused macros (Stefan Assmann) [2103661] - i40e: read the XDP program once per NAPI (Stefan Assmann) [2103661] - intel/i40e: delete if NULL check before dev_kfree_skb (Stefan Assmann) [2103661] - i40e: Remove unnecessary synchronize_irq() before free_irq() (Stefan Assmann) [2103661] - i40e: Add support for ethtool -s speed (Stefan Assmann) [2103661] - i40e: Add VF VLAN pruning (Stefan Assmann) [2103661] - xsk: Wipe out dead zero_copy_allocator declarations (Stefan Assmann) [2103661] - gpio: amdpt: add new device ID and 24-pin support (Prarit Bhargava) [2097868] - platform/x86/intel: pmc/core: Add Raptor Lake support to pmc core driver (Prarit Bhargava) [2076732] - HID: hyperv: fix possible memory leak in mousevsc_probe() (Mohammed Gamal) [2139468] - HID: hyperv: Correctly access fields declared as __le16 (Mohammed Gamal) [2139468] - Drivers: hv: vmbus: fix possible memory leak in vmbus_device_register() (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: fix double free in the error path of vmbus_add_channel_work() (Mohammed Gamal) [2139473] - Drivers: hv: fix repeated words in comments (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Split memcpy of flex-array (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Don't wait for the ACPI device upon initialization (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Use PCI_VENDOR_ID_MICROSOFT for better discoverability (Mohammed Gamal) [2139473] - PCI: Move PCI_VENDOR_ID_MICROSOFT/PCI_DEVICE_ID_HYPERV_VIDEO definitions to pci_ids.h (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Fix kernel-doc (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Optimize vmbus_on_event (Mohammed Gamal) [2139473] - Drivers: hv: Never allocate anything besides framebuffer from framebuffer memory region (Mohammed Gamal) [2139473] - Drivers: hv: Always reserve framebuffer region for Gen1 VMs (Mohammed Gamal) [2139473] - Drivers: hv: remove duplicate word in a comment (Mohammed Gamal) [2139473] - Drivers: hv: Create debugfs file with hyper-v balloon usage information (Mohammed Gamal) [2139473] - Drivers: hv: vm_bus: Handle vmbus rescind calls after vmbus is suspended (Mohammed Gamal) [2139473] - scsi: storvsc: remove an extraneous "to" in a comment (Cathy Avery) [2143320] - Drivers: hv: vmbus: Optimize vmbus_on_event (Cathy Avery) [2143320] - scsi: storvsc: Drop DID_TARGET_FAILURE use (Cathy Avery) [2143320] - scsi: storvsc: Remove WQ_MEM_RECLAIM from storvsc_error_wq (Cathy Avery) [2143320] - scsi: storvsc: Correct reporting of Hyper-V I/O size limits (Cathy Avery) [2143320] - scsi: storvsc: Removing Pre Win8 related logic (Cathy Avery) [2143320] - scsi: storvsc: Fix typo in comment (Cathy Avery) [2143320] - scsi: storvsc: Remove support for Hyper-V 2008 and 2008R2/Win7 (Cathy Avery) [2143320] - vdpa/mlx5: re-create forwarding rules after mac modified (Laurent Vivier) [2145136] - ipv6: Fix crash when IPv6 is administratively disabled (Guillaume Nault) [2140779] - raw: fix a typo in raw_icmp_error() (Guillaume Nault) [2140779] - raw: remove unused variables from raw6_icmp_error() (Guillaume Nault) [2140779] - raw: complete rcu conversion (Guillaume Nault) [2140779] - raw: Use helpers for the hlist_nulls variant. (Guillaume Nault) [2140779] - raw: Fix mixed declarations error in raw_icmp_error(). (Guillaume Nault) [2140779] - raw: convert raw sockets to RCU (Guillaume Nault) [2140779] - raw: use more conventional iterators (Guillaume Nault) [2140779] - raw: Add missing annotations to raw_seq_start() and raw_seq_stop() (Guillaume Nault) [2140779] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2103941] - e1000e: convert .adjfreq to .adjfine (Ken Cox) [2103941] - e1000e: remove unnecessary range check in e1000e_phc_adjfreq (Ken Cox) [2103941] - Revert "e1000e: Fix possible HW unit hang after an s0ix exit" (Ken Cox) [2103941] - e1000e: Enable GPT clock before sending message to CSME (Ken Cox) [2103941] - intel/e1000e:fix repeated words in comments (Ken Cox) [2103941] - intel: remove unused macros (Ken Cox) [2103941] - net: move netif_set_gso_max helpers (Ivan Vecera) [2137564] - net: make drivers set the TSO limit not the GSO limit (Ivan Vecera) [2137564] - net: don't allow user space to lift the device limits (Ivan Vecera) [2137564] - net: add netif_inherit_tso_max() (Ivan Vecera) [2137564] - net: extract a few internals from netdevice.h (Ivan Vecera) [2137564] - net: unexport a handful of dev_* functions (Ivan Vecera) [2137564] - bpf: Fix extable address check. (Felix Maurer) [2138532] - bpf, x64: Factor out emission of REX byte in more cases (Felix Maurer) [2138532] - bpf: Support dual-stack sockets in bpf_tcp_check_syncookie (Felix Maurer) [2138532] - bpf: Fix extable fixup offset. (Felix Maurer) [2138532] - bpf: Fix the off-by-two error in range markings (Felix Maurer) [2138532] - bpf: Fix potential race in tail call compatibility check (Felix Maurer) [2138532] - bpf: Fix possible out of bound write in narrow load handling (Felix Maurer) [2138532] - bpf: Fix potential memleak and UAF in the verifier. (Felix Maurer) [2138532] - KVM: s390: vsie: Fix the initialization of the epoch extension (epdx) field (Thomas Huth) [2151854] - PM: core: Remove static qualifier in DEFINE_SIMPLE_DEV_PM_OPS macro (Íñigo Huguet) [2143354] - PM: core: Add new *_PM_OPS macros, deprecate old ones (Íñigo Huguet) [2143354] - PM: Make *_DEV_PM_OPS macros use __maybe_unused (Íñigo Huguet) [2143354] - PM: core: Redefine pm_ptr() macro (Íñigo Huguet) [2143354] - linux/kconfig.h: replace IF_ENABLED() with PTR_IF() in (Íñigo Huguet) [2143354] - net: Remove unused inline function sk_nulls_node_init() (Guillaume Nault) [2143239] - ping: convert to RCU lookups, get rid of rwlock (Guillaume Nault) [2143239] - mm/cgroup/reclaim: fix dirty pages throttling on cgroup v1 (Waiman Long) [2149544] - mm: vmscan: remove deadlock due to throttling failing to make progress (Waiman Long) [2149544] - mm: vmscan: reduce throttling due to a failure to make progress -fix (Waiman Long) [2149544] - mm: vmscan: Reduce throttling due to a failure to make progress (Waiman Long) [2149544] - mm/vmscan: delay waking of tasks throttled on NOPROGRESS (Waiman Long) [2149544] - mm/vmscan: increase the timeout if page reclaim is not making progress (Waiman Long) [2149544] - mm/vmscan: centralise timeout values for reclaim_throttle (Waiman Long) [2149544] - mm/page_alloc: remove the throttling logic from the page allocator (Waiman Long) [2149544] - mm/writeback: throttle based on page writeback instead of congestion (Waiman Long) [2149544] - mm/vmscan: throttle reclaim when no progress is being made (Waiman Long) [2149544] - mm/vmscan: throttle reclaim and compaction when too may pages are isolated (Waiman Long) [2149544] - mm/vmscan: throttle reclaim until some writeback completes if congested (Waiman Long) [2149544] - mm/vmscan.c: delete or fix duplicated words (Waiman Long) [2149544] - powerpc/pseries/vas: Add VAS IRQ primary handler (Mamatha Inamdar) [2131675] - powerpc: Ignore DSI error caused by the copy/paste instruction (Mamatha Inamdar) [2131675] - powerpc/pseries: Move vas_migration_handler early during migration (Mamatha Inamdar) [2131675] - vt: drop old FONT ioctls (Wander Lairson Costa) [2109164] {CVE-2021-33656}- x86/mce: Reduce number of machine checks taken during recovery (Prarit Bhargava) [2104388] - scsi: storvsc: Fix handling of srb_status and capacity change events (Mohammed Gamal) [2139728] - clocksource: hyper-v: unexport __init-annotated hv_init_clocksource() (Mohammed Gamal) [2139463] - hv_netvsc: Fix race between VF offering and VF association message from host (Mohammed Gamal) [2139475] - sbitmap: fix lockup while swapping (Ming Lei) [2140214] - sbitmap: fix batched wait_cnt accounting (Ming Lei) [2140214] - sbitmap: Avoid leaving waitqueue in invalid state in __sbq_wake_up() (Ming Lei) [2140214] - sbitmap: fix possible io hung due to lost wakeup (Ming Lei) [2140214] - sbitmap: add helper to clear a batch of tags (Ming Lei) [2140214] - x86/hyperv: Restore VP assist page after cpu offlining/onlining (Mohammed Gamal) [2139454] - clocksource/drivers/hyperv: add data structure for reference TSC MSR (Mohammed Gamal) [2139454] - x86/hyperv: fix root partition faults when writing to VP assist page MSR (Mohammed Gamal) [2139454] - x86/hyperv: fix invalid writes to MSRs during root partition kexec (Mohammed Gamal) [2139454] - x86/hyperv: Remove BUG_ON() for kmap_local_page() (Mohammed Gamal) [2139454] - x86/hyperv: Disable hardlockup detector by default in Hyper-V guests (Mohammed Gamal) [2139454] - x86/hyperv: Update 'struct hv_enlightened_vmcs' definition (Mohammed Gamal) [2139454] - x86/hyperv: Fix 'struct hv_enlightened_vmcs' definition (Mohammed Gamal) [2139454] - x86/hyperv: Replace kmap() with kmap_local_page() (Mohammed Gamal) [2139454] - hyperv: simplify and rename generate_guest_id (Mohammed Gamal) [2139454] - x86/Hyper-V: Add SEV negotiate protocol support in Isolation VM (Mohammed Gamal) [2139454] - x86/sev: Define the Linux-specific guest termination reasons (Mohammed Gamal) [2139454] - x86/sev: Shorten GHCB terminate macro names (Mohammed Gamal) [2139454] - x86/sev: Save the negotiated GHCB version (Mohammed Gamal) [2139454] - locking: Add __sched to semaphore functions (Waiman Long) [2141429] - locking/rwsem: Disable preemption while trying for rwsem lock (Waiman Long) [2141429] - locking/percpu-rwsem: Add percpu_is_write_locked() and percpu_is_read_locked() (Waiman Long) [2141429] - locking/rwsem: Conditionally wake waiters in reader/writer slowpaths (Waiman Long) [2141429] - locking: Mark racy reads of owner->on_cpu (Waiman Long) [2141429] - locking: Make owner_on_cpu() into (Waiman Long) [2141429] - locking/rwsem: Optimize down_read_trylock() under highly contended case (Waiman Long) [2141429] - locking/rwsem: Fix comments about reader optimistic lock stealing conditions (Waiman Long) [2141429] - locking/rwsem: Disable preemption for spinning region (Waiman Long) [2141429] - locking: Remove rcu_read_{,un}lock() for preempt_{dis,en}able() (Waiman Long) [2141429] - NFSD: Mark exports of NFS as unsupported (Benjamin Coddington) [2150902] - fuse: lock inode unconditionally in fuse_fallocate() (Miklos Szeredi) [2110883] - fuse: add file_modified() to fallocate (Miklos Szeredi) [2110883] - mei: me: add adler lake point S DID (Prarit Bhargava) [2141602] - ocfs2/dlm: move BITS_TO_BYTES() to bitops.h for wider use (Izabela Bakollari) [2144858] - libnvdimm/namespace: Fix visibility of namespace resource attribute (Jeff Moyer) [2016347] - PCI: hv: Only reuse existing IRTE allocation for Multi-MSI (Mohammed Gamal) [2139458] - PCI: hv: Fix the definition of vector in hv_compose_msi_msg() (Mohammed Gamal) [2139458] - PCI: hv: Take a const cpumask in hv_compose_msi_req_get_cpu() (Mohammed Gamal) [2139458] - PCI: hv: Fix synchronization between channel callback and hv_pci_bus_exit() (Mohammed Gamal) [2139458] - PCI: hv: Add validation for untrusted Hyper-V values (Mohammed Gamal) [2139458] - PCI: hv: Fix interrupt mapping for multi-MSI (Mohammed Gamal) [2139458] - PCI: hv: Reuse existing IRTE allocation in compose_msi_msg() (Mohammed Gamal) [2139458] - PCI: hv: Fix hv_arch_irq_unmask() for multi-MSI (Mohammed Gamal) [2139458] - PCI: hv: Fix synchronization between channel callback and hv_compose_msi_msg() (Mohammed Gamal) [2139458] - PCI: hv: Use vmbus_requestor to generate transaction IDs for VMbus hardening (Mohammed Gamal) [2139458] - PCI: hv: Fix multi-MSI to allow more than one MSI vector (Mohammed Gamal) [2139458] - net: mana: Add rmb after checking owner bits (Mohammed Gamal) [2139462] - net: mana: Add support of XDP_REDIRECT action (Mohammed Gamal) [2139462] - net: mana: Add the Linux MANA PF driver (Mohammed Gamal) [2139462] - NFSD: Protect against send buffer overflow in NFSv3 READ (Scott Mayhew) [2141774] {CVE-2022-43945} - NFSD: Protect against send buffer overflow in NFSv2 READ (Scott Mayhew) [2141774] {CVE-2022-43945} - NFSD: Protect against send buffer overflow in NFSv3 READDIR (Scott Mayhew) [2141774] {CVE-2022-43945} - NFSD: Protect against send buffer overflow in NFSv2 READDIR (Scott Mayhew) [2141774] {CVE-2022-43945} - SUNRPC: Fix svcxdr_init_encode's buflen calculation (Scott Mayhew) [2141774] {CVE-2022-43945} - SUNRPC: Fix svcxdr_init_decode's end-of-buffer calculation (Scott Mayhew) [2141774] {CVE-2022-43945} - KVM: VMX: fully disable SGX if SECONDARY_EXEC_ENCLS_EXITING unavailable (Emanuele Giuseppe Esposito) [2127128] - cgroup/cpuset: Reduce cpuset_rwsem writer latency (Waiman Long) [2149031] - rcu/exp: Mark current CPU as exp-QS in IPI loop second pass (Waiman Long) [2149031] - rcu: Always inline rcu_dynticks_task*_{enter,exit}() (Waiman Long) [2149031] - rcu: Fix existing exp request check in sync_sched_exp_online_cleanup() (Waiman Long) [2149031] - rcu: Fix macro name CONFIG_TASKS_RCU_TRACE (Waiman Long) [2149031] - rcu: Fix stall-warning deadlock due to non-release of rcu_node ->lock (Waiman Long) [2149031] - rcu: Fix to include first blocked task in stall warning (Waiman Long) [2149031] - cgroup: Use cgroup_attach_{lock,unlock}() from cgroup_attach_task_all() (Waiman Long) [2149031] - cgroup: Add missing cpus_read_lock() to cgroup_attach_task_all() (Waiman Long) [2149031] - cgroup: Fix threadgroup_rwsem <-> cpus_read_lock() deadlock (Waiman Long) [2149031] - cgroup: Elide write-locking threadgroup_rwsem when updating csses on an empty subtree (Waiman Long) [2149031] - cgroup/cpuset: Fix a race between cpuset_attach() and cpu hotplug (Waiman Long) [2149031] - cgroup: reduce dependency on cgroup_mutex (Waiman Long) [2149031]- drm/i915: fix TLB invalidation for Gen12 video and compute engines (Wander Lairson Costa) [2148150] {CVE-2022-4139} - redhat/configs: Set CONFIG_X86_AMD_PSTATE to 'm' (Prarit Bhargava) [2145246] - bonding: uninitialized variable in bond_miimon_inspect() (Jonathan Toppins) [1973124] - bonding: fix link recovery in mode 2 when updelay is nonzero (Jonathan Toppins) [1973124] - RHEL: ALSA: update configuration (Jaroslav Kysela) [2125544] - RHEL: ALSA: fix compilation issues (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: pci-mtl: fix firmware name (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Correct pin configs for ASUS G533Z (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: remove ALC289_FIXUP_DUAL_SPK for Dell 5530 (Jaroslav Kysela) [2125544] - ALSA: ac97: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: ca0106: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: control: add snd_ctl_rename() (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Use only dynamic PCM device allocation (Jaroslav Kysela) [2125544] - regmap: add reg_sequence helpers (Jaroslav Kysela) [2125544] - regmap: fix the kerneldoc for regmap_test_bits() (Jaroslav Kysela) [2125544] - regmap: provide helpers for simple bit operations (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Free the ida when IPC fails in sof_ipc4_widget_setup() (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Handle BCLK set as PLL input configuration (Jaroslav Kysela) [2125544] - ASoC: test-component: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Add support for pll_r coefficient (Jaroslav Kysela) [2125544] - ASoC: ssm4567: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: rk3328: fix disabling mclk on pclk probe failure (Jaroslav Kysela) [2125544] - ASoC: pcm3060: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: cs42l42: remove redundant test (Jaroslav Kysela) [2125544] - ALSA: ppc: beep: fix clang -Wimplicit-fallthrough (Jaroslav Kysela) [2125544] - ASoC: soc-component: Add comment for the endianness flag (Jaroslav Kysela) [2125544] - ASoC: codecs: wsa881x: handle timeouts in resume path (Jaroslav Kysela) [2125544] - ASoC: wsa881x: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: codecs: wsa881x: add runtime pm support (Jaroslav Kysela) [2125544] - ASoC: wm_adsp: Fix event generation for wm_adsp_fw_put() (Jaroslav Kysela) [2125544] - ASoC: wm_adsp: Minor clean and redundant code removal (Jaroslav Kysela) [2125544] - ASoC: wm_adsp: Compressed stream DSP memory structs should be __packed (Jaroslav Kysela) [2125544] - ASoC: wm8998: Fix event generation for input mux (Jaroslav Kysela) [2125544] - ASoC: arizona: Fix a wrong free in wm8997_probe (Jaroslav Kysela) [2125544] - ASoC: wm8962: Allow switching between analog and digital inputs (Jaroslav Kysela) [2125544] - ASoC: wm8960: Fix clock configuration on slave mode (Jaroslav Kysela) [2125544] - ASoC: wm8962: Fix suspend while playing music (Jaroslav Kysela) [2125544] - ASoC: codecs: wm8962: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Jaroslav Kysela) [2125544] - ASoC: wm8960: Add ACPI support (Jaroslav Kysela) [2125544] - ASoC: wm8958: Fix change notifications for DSP controls (Jaroslav Kysela) [2125544] - ASoC: wm8940: add devicetree support (Jaroslav Kysela) [2125544] - ASoC: wm*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: wm8903: Fix the error handling of wm8903_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: wm8731: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: arizona: Make the wm5102, wm5110, wm8997 and wm8998 drivers use the new jack library (Jaroslav Kysela) [2125544] - ASoC: wm5102: Fix event generation for output compensation (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Use int array instead of bitmask for TX mixers (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Use DT bindings instead of local DAI definitions (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Fix spurious event generation (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Remove RX channel from old list before adding it to a new one (Jaroslav Kysela) [2125544] - ASoC: codecs: wcd9335: move gains from SX_TLV to S8_TLV (Jaroslav Kysela) [2125544] - ASoC: wcd9335: remove redundant tests (Jaroslav Kysela) [2125544] - ASoC: uda1380: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: uda1334: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: twl4030: Drop legacy, non DT boot support (Jaroslav Kysela) [2125544] - ASoC: tscs*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: ts3a227e: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tpa6130: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: tlv320dac3x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic33: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: codec: tlv320aic32x4: fix mono playback via I2S (Jaroslav Kysela) [2125544] - ASoC: tlv320aic32x4: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Fix typo in BCLK clock name (Jaroslav Kysela) [2125544] - ASoC: tlv320*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: Rename tlv320aic31xx-micbias.h as tlv320aic31xx.h (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic26: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic23: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas6424: Return zero in remove callback (Jaroslav Kysela) [2125544] - ASoC: tda7419: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas6424: Fix the error handling of tas6424_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: tas6424: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas5720: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas571x: Fix the error handling of tas571x_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: tas5086: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas2552: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: tas2770: Reinit regcache on reset (Jaroslav Kysela) [2125544] - ASoC: tas2562: Propagate the error in tas2562_dac_event() (Jaroslav Kysela) [2125544] - ASoC: tas2562: Fix mute/unmute (Jaroslav Kysela) [2125544] - ASoC: tas2764: Fix mute/unmute (Jaroslav Kysela) [2125544] - ASoC: tas2764: Drop conflicting set_bias_level power setting (Jaroslav Kysela) [2125544] - ASoC: tas2764: Allow mono streams (Jaroslav Kysela) [2125544] - ASoC: tas2770: Fix handling of mute/unmute (Jaroslav Kysela) [2125544] - ASoC: tas2770: Drop conflicting set_bias_level power setting (Jaroslav Kysela) [2125544] - ASoC: tas2770: Allow mono streams (Jaroslav Kysela) [2125544] - ASoC: tas2770: Set correct FSYNC polarity (Jaroslav Kysela) [2125544] - ASoC: tas2770: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: tas2552: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sti-sas: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sta350: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sta350: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: sta*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: sta32x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sta32x: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: ssm2602: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: ssm2518: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sgtl5000: Fix noise on shutdown/remove (Jaroslav Kysela) [2125544] - ASoC: rt9120: Fix 3byte read, valule offset typo (Jaroslav Kysela) [2125544] - ASoC: rt9120: Use pm_runtime and regcache to optimize 'pwdnn' logic (Jaroslav Kysela) [2125544] - ASoC: codecs: rt715-sdca: remove useless assignment of ops (Jaroslav Kysela) [2125544] - ASoC: rt5682s: Separate the regulator consumer controls (Jaroslav Kysela) [2125544] - ASoC: rt5645: Fix the error handling of rt5645_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: rt5640: Fix the issue of the abnormal JD2 status (Jaroslav Kysela) [2125544] - ASoC: rt5640: Fix the JD voltage dropping issue (Jaroslav Kysela) [2125544] - ASoC: rt5640: Fix the wrong state of JD1 and JD2 (Jaroslav Kysela) [2125544] - ASoC: rt5640: Add the MICBIAS1 to the dapm routing (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Fix jack detection (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Fix NULL jack in interrupt (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Set component to NULL on remove (Jaroslav Kysela) [2125544] - ASoC: codecs: rt286: Set component to NULL on remove (Jaroslav Kysela) [2125544] - ASoC: codecs: rt274: Set component to NULL on remove (Jaroslav Kysela) [2125544] - ASoC: codecs: rt274: Always init jack_detect_work (Jaroslav Kysela) [2125544] - ASoC: rt1308-sdw: add the default value of register 0xc320 (Jaroslav Kysela) [2125544] - ASoC: rk3328: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: pcm1789: Make pcm1789_common_exit() return void (Jaroslav Kysela) [2125544] - ASoC: pcm186x: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: pcm186x: simplify the return expression of pcm186x_power_off() (Jaroslav Kysela) [2125544] - ASoC: pcm*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: nau8825: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8825: Declare 2 channels for DAI of capture stream (Jaroslav Kysela) [2125544] - ASoC: nau8824: Fix semaphore is released unexpectedly (Jaroslav Kysela) [2125544] - ASoC: nau8824: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8824: Fix semaphore unbalance at error paths (Jaroslav Kysela) [2125544] - ASoC: nau8822: Don't reconfigure PLL to the same values (Jaroslav Kysela) [2125544] - ASoC: nau8822: Disable internal PLL if freq_out is zero (Jaroslav Kysela) [2125544] - ASoC: nau8821: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8821: Don't unconditionally free interrupt (Jaroslav Kysela) [2125544] - ASoC: nau8821: add new widget to control system clock (Jaroslav Kysela) [2125544] - ASoC: nau8821: Add headset button detection (Jaroslav Kysela) [2125544] - ASoC: codecs: mt6359-accdet: remove useless initialization (Jaroslav Kysela) [2125544] - ASoC: mediatek: mt6366: support for mt6366 codec (Jaroslav Kysela) [2125544] - ASoC: msm8916-wcd-digital: Check failure for devm_snd_soc_register_component (Jaroslav Kysela) [2125544] - ASoC: nau8540: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: mt6660: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: mt6359: Fix refcount leak bug (Jaroslav Kysela) [2125544] - ASoC: mediatek: mt6358: add missing EXPORT_SYMBOLs (Jaroslav Kysela) [2125544] - ASoC: msm8916-wcd-digital: Fix missing clk_disable_unprepare() in msm8916_wcd_digital_probe (Jaroslav Kysela) [2125544] - ASoC: codecs: msm8916-wcd-digital: move gains from SX_TLV to S8_TLV (Jaroslav Kysela) [2125544] - ASoC: ml26124: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: max9860: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: max98390: use linux/gpio/consumer.h to fix build (Jaroslav Kysela) [2125544] - ASoC: max98390: Add reset gpio control (Jaroslav Kysela) [2125544] - ASoC: codecs: soundwire: call pm_runtime_resume() in component probe (Jaroslav Kysela) [2125544] - ASoC: max98373: Removing 0x203E from the volatile reg (Jaroslav Kysela) [2125544] - ASoC: max98090: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: max98090: Fix event generation for custom controls (Jaroslav Kysela) [2125544] - ASoC: codecs: max98088: Clean up some inconsistent indenting (Jaroslav Kysela) [2125544] - ASoC: max980*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: lm4857: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: da732x: Drop no-op remove function (Jaroslav Kysela) [2125544] - ASoC: da7219: Drop no-op remove function (Jaroslav Kysela) [2125544] - ASoC: max9*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: lm49xxx: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: hdmi-codec: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: es83*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: codes: Add support for ES8316 producer mode (Jaroslav Kysela) [2125544] - ASoC: dmic: Add support for DSD data format (Jaroslav Kysela) [2125544] - ASoC: da[79]*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: da7219: cancel AAD related work earlier for jack removal (Jaroslav Kysela) [2125544] - ASoC: da7219: Fix pole orientation detection on certain headsets (Jaroslav Kysela) [2125544] - ASoC: da7218: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: cx2072x: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: cx2072x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: cs4349: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: cs42l56: Fix the error handling of cs42l56_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: cs42l51: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: cs42l42: Only report button state if there was a button interrupt (Jaroslav Kysela) [2125544] - ASoC: cs4270: update kernel-doc (Jaroslav Kysela) [2125544] - ASoC: cs4270: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Add support for CLSA3541 ACPI device ID (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Enable Internal Boost in shared lib (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Do not print error when waking from hibernation (Jaroslav Kysela) [2125544] - ASoC: cs35l36: Fix the error handling of cs35l36_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: cs*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: arizona: Update arizona_aif_cfg_changed to use RX_BCLK_RATE (Jaroslav Kysela) [2125544] - ASoC: alc56*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: ak4613: cares Simple-Audio-Card case for TDM (Jaroslav Kysela) [2125544] - ASoC: ak4613: add TDM256 support (Jaroslav Kysela) [2125544] - ASoC: ak4613: rename constraint to constraint_rates (Jaroslav Kysela) [2125544] - ASoC: ak4613: priv has ctrl1 instead of iface (Jaroslav Kysela) [2125544] - ASoC: ak4613: return error if it was setup as clock provider (Jaroslav Kysela) [2125544] - ASoC: ak4613: tidyup ak4613_interface (Jaroslav Kysela) [2125544] - ASoC: ak4613: add missing mutex_lock() (Jaroslav Kysela) [2125544] - ASoC: ak4642: Drop no-op remove function (Jaroslav Kysela) [2125544] - ASoC: ak*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: ak4*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: adau1761: Add ADAU1761-as-ADAU1361 compatibility mode (Jaroslav Kysela) [2125544] - ASoC: ada*, ssm*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: ab8500: Remove some leftover from the "Replace GPLv2 boilerplate/reference with SPDX" rules (Jaroslav Kysela) [2125544] - ASoC: ad1*, ada*, ssm*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: test-component: Rename set_fmt_new back to set_fmt (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils: rename asoc_simple_init_dai_link_params() to asoc_simple_init_for_codec2codec() (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils.c: care Codec2Codec vs DPCM:BE (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils.c: ignore Codec2Codec setting if it already have (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils: Make asoc_simple_clean_reference() return void (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2: indicate "Experimental stage" warning only when successed (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2: Add of_node_put() in fail path (Jaroslav Kysela) [2125544] - ASoc: audio-graph-card2: Fix refcount leak bug in __graph_get_type() (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2.c: remove pre-alloced Codec2Codec space (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2.c: make Codec2Codec settings optional (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2.c: use of_property_read_u32() for rate (Jaroslav Kysela) [2125544] - ASoC: audio_graph_card2: Fix port numbers in example (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2-custom-sample.dtsi: add verbose explanation (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card: Add of_node_put() in fail path (Jaroslav Kysela) [2125544] - ASoC: test-component: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: use software node API in Atom boards (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_ssp_amp: remove 'set-but-not-used' warning (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: avoid oops in error handling (Jaroslav Kysela) [2125544] - ASoC: Intel: use software node API in SoundWire machines (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: sof_sdw: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: Intel: catpt: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: Intel: catpt: Drop redundant enum constant (Jaroslav Kysela) [2125544] - ASoC: Intel: catpt: remove duplicating driver data retrieval (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_ssp_amp: enable capture stream from cs35l41 (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: allow HDaudio/HDMI disable (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: add quirk for HP Omen 16-k0005TX (Jaroslav Kysela) [2125544] - ASoC: intel: sof_sdw: add RT711 SDCA card for MTL platform (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_pcm512x: remove unnecessary init (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_nau8825: Move quirk check to the front in late probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: add support for Dell SKU 0AFF (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: add support for Dell SKU 0AF0 (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: Perform quirk check first in card late probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: Add support for mtl_mx98357_rt5682 (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: fix out-of-bounds array access (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: rename RTL1019 compatible driver to rt1019p (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_nau8825: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_da7219_max98927: remap jack pins (Jaroslav Kysela) [2125544] - ALSA: x86: intel_hdmi_audio: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ALSA: x86: intel_hdmi_audio: enable pm_runtime and set autosuspend delay (Jaroslav Kysela) [2125544] - ASoC: xtensa: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: xtensa: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: uniphier: make arrays mul and div static const, makes object smaller (Jaroslav Kysela) [2125544] - ASoC: uniphier: simplify the return expression of uniphier_aio_compr_set_params() (Jaroslav Kysela) [2125544] - ASoC: spear: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-topology: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-stream: test DMA buffer first in hw_params (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-stream: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-ipc: Do not process IPC reply before firmware boot (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dsp: report error on power-up/down (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: Drop misleading comment regarding dma_data (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: Intel: fix sof_es8336 probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: remove hard-coded SSP selection (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: reset the num_links during probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: add support for HDMI_In capture (Jaroslav Kysela) [2125544] - ASoC: Intel: common: fix typo for tplg naming (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: Add support for adl_rt1019_rt5682s (Jaroslav Kysela) [2125544] - ASoC: Intel: soc-acpi: add table for HP Omen 16-k0005TX (Jaroslav Kysela) [2125544] - ASoC: Intel: soc-acpi: Add entry for sof_es8336 in ADL match table (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: ignore GpioInt when looking for speaker/headset GPIO lines (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: Fix GPIO quirks set via module option (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_da7219_max98373: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_cs42l42: add adl_mx98360a_cs4242 board config (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_cs42l42: support BT offload audio (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_cs42l42: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: skl_nau88l25_ssm4567: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: skl_nau88l25_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_rt5663_rt5514_max98927: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_rt5663_max98927: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_da7219_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: hda: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: Intel: glk_rt5682_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: cml_rt1011_rt5682: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: Use temporary variable for struct device (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: reset acpi_chan_package (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Reorganize jack detect handling (Jaroslav Kysela) [2125544] - ASoC: Intel: bxt_da7219_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Improve hw_params() debug-ability (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Improve probe() function quality (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Update file comments (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Update code indentation (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Reword driver name (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Reword prefixes of all driver members (Jaroslav Kysela) [2125544] - ASoC: Intel: Rename haswell source file to hsw_rt5640 (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: sst_ipc: remove redundant test (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Remove FE DAI ops (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Improve codec_init() quality (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Improve hw_params() debug-ability (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Improve probe() function quality (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Update file comments (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Update code indentation (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Reword driver name (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Reword prefixes of all driver members (Jaroslav Kysela) [2125544] - ASoC: Intel: Rename broadwell source file to bdw_rt286 (Jaroslav Kysela) [2125544] - ASoC: codecs: rt286: Reorganize jack detect handling (Jaroslav Kysela) [2125544] - ASoC: Intel: broadwell: Make broadwell_disable_jack() return void (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt5677: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt5650: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: sst_ipc: remove useless initializations (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: sst: remove useless initialization (Jaroslav Kysela) [2125544] - ASoC: intel: atom: Remove superfluous flush_scheduled_work() (Jaroslav Kysela) [2125544] - ASoC: Intel: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: controls: remove useless initializations (Jaroslav Kysela) [2125544] - ASoC: Intel: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: Intel: skylake: skl-pcm: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: Intel: Skylake: remove redundant re-assignments to pointer array (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: bdw: remove duplicating driver data retrieval (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: byt: remove duplicating driver data retrieval (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: cnl: Do not process IPC reply before firmware boot (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: Do snd_hdac_ext_stream_decouple() only once (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Fix potential buffer overflow by snprintf() (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: add sanity check on SSP index reported by NHLT (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: only fixup topology name if not set already (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: don't set fw_filename (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: enable dmic handling with 2 or fewer SoundWire links (Jaroslav Kysela) [2125544] - ASoC: soc-core: accept zero format at snd_soc_runtime_set_dai_fmt() (Jaroslav Kysela) [2125544] - ASoC: SOF: compress: Prevent current kernel running with older FW (Jaroslav Kysela) [2125544] - ASoC: SOF: Copy compress parameters into extended data (Jaroslav Kysela) [2125544] - ASoC: SOF: compress: Dynamically allocate pcm params struct (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: atom: don't keep a temporary string in fixup_tplg_name (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add trigger callback into sdw_callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Correct the ROM/FW state reporting code (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: MTL: remove redundant snd_sof_dsp_read() call (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: mtl: Do not process IPC reply before firmware boot (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: mtl: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Introduce skip_imr_boot flag (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: disable IMR boot when resuming from ACPI S4 and S5 states (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: IPC4: enable IMR boot (Jaroslav Kysela) [2125544] - ASoC: SOC: Intel: introduce cl_init callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Do not (wrongly) assume positive return value in IMR path (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Revisit IMR boot sequence (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-loader: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-loader: Print out the non matching ext_man magic number (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-topology: Fix clang -Wformat warning (Jaroslav Kysela) [2125544] - ASoC: SOF: remove warning on ABI checks (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Fix error code in sof_ipc4_volume_put() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-pcm: set pcm rate to dai setting (Jaroslav Kysela) [2125544] - ASoC: SOF: reduce default verbosity of IPC logs (Jaroslav Kysela) [2125544] - Revert "RedHat: ASoC: SOF: Intel: do not enable IMR boot when resuming by default" (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: fix alh_group_ida max value (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: fix wrong use of sizeof in sof_ipc4_widget_setup_comp_src() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: set domain bit based on dp domain type (Jaroslav Kysela) [2125544] - ASoC: SOF: add ipc4 SRC module support (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: move ida allocate/free to widget_setup/free (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: free memories allocated in sof_ipc4_get_audio_fmt (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: check dai->private in ipc_free() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: add SoundWire/ALH aggregation support (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Compile and runtime IPC version selection (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Align mt8186 clock names with dt-bindings (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Fix error code in probe (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Revise mt8195 boot flow (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: fix mt8195 StatvectorSel wrong setting (Jaroslav Kysela) [2125544] - ASoC: SOF: pcm: use pm_resume_and_get() on component probe (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: fix copy in sof_msg_inject_ipc4_dfs_write() (Jaroslav Kysela) [2125544] - ASoC: sof: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-probes: Only load the driver if IPC3 is used (Jaroslav Kysela) [2125544] - ASoC: SOF: probes: rename assign/free callbacks as startup/shutdown (Jaroslav Kysela) [2125544] - ASoC: SOF: Add cont_update_posn to platform parameters (Jaroslav Kysela) [2125544] - ASoC: SOF: pm: add definitions for S4 and S5 states (Jaroslav Kysela) [2125544] - ASoC: SOF: pm: add explicit behavior for ACPI S1 and S2 (Jaroslav Kysela) [2125544] - ASoC: SOF: debug: Clarify the IPC timeout handling path (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: remove unused variable (Jaroslav Kysela) [2125544] - ASoC: SOF: Switch to IPC generic firmware tracing (Jaroslav Kysela) [2125544] - ALSA: sc6000: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2125544] - ALSA: gus: Fix memory leaks at memory allocator error paths (Jaroslav Kysela) [2125544] - ALSA: sound/isa/gus: check the return value of kstrdup() (Jaroslav Kysela) [2125544] - ALSA: gus: Fix erroneous memory allocation (Jaroslav Kysela) [2125544] - ALSA: galaxy: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2125544] - ALSA: cs4236: fix an incorrect NULL check on list iterator (Jaroslav Kysela) [2125544] - ALSA: aloop: Fix random zeros in capture data when using jiffies timer (Jaroslav Kysela) [2125544] - ALSA: Add generic serial MIDI driver using serial bus API (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix potential buffer overflow by snprintf() (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Use lookup table to create modules (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Update AVS_FW_INIT_TIMEOUT_US declaration (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Lower UNLOAD_MULTIPLE_MODULES IPC timeout (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Replace hardcodes with SD_CTL_STREAM_RESET (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Recognize FW_CFG_RESERVED (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Use helper function to set up DMA (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Set max DMA segment size (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Block IPC channel on suspend (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Shield LARGE_CONFIG_GETs against zero payload_size (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Copy only as many RX bytes as necessary (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Relax DSP core transition timings (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Assign I2S gateway when parsing topology (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix i2s_test card name initialization (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: correct config reference for I2S test board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix parsing UUIDs in topology (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add da7219 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add max98373 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add max98357a machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add ssm4567 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add nau8825 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt5682 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt298 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt286 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt274 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add I2S-test machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add DMIC machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix build error on arc, m68k and sparc (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: APL-based platforms support (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: SKL-based platforms support (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Power management (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Machine board registration (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Replace link_mask usage with i2s_link_mask (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Event tracing (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: D0ix power state support (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Prepare for firmware tracing (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Register HDAudio ext-bus operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add HDAudio machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: PCI driver implementation (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Coredump and recovery flow (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Drop direct ACPI dependency (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Depend on SND_INTEL_DSP_CONFIG (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Enable AVS driver only on x86 platforms (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: HDA PCM BE operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: non-HDA PCM BE operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Generic PCM FE operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Generic soc component driver (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Account for libraries when booting basefw (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Configure modules according to their type (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Prepare modules before bindings them (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Arm paths after creating them (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Path state management (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Path creation and freeing (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Declare path and its components (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Support link_mask formatted string (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add topology loading operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse path and path templates tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse pipeline and module tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse pplcfg and binding tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse module-extension tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add topology parsing infrastructure (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add MeteorLake machines (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Declare vendor tokens (Jaroslav Kysela) [2125544] - ASoC: SOF: dai-intel: add SOF_DAI_INTEL_SSP_CLKCTRL_MCLK_AON bit (Jaroslav Kysela) [2125544] - uapi: sof: abi: Bump SOF ABI for ext_data_length (Jaroslav Kysela) [2125544] - ASoC: SOF: Add two new structures for topology manifest data (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: introduce cont_update_posn in sof_ipc_stream_params struct (Jaroslav Kysela) [2125544] - ASoC: SOF: bump SOF_ABI_MINOR (Jaroslav Kysela) [2125544] - ASoC: SOF: Add header for IPC4 manifest (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: add code to parse config params for ACPDMIC dai (Jaroslav Kysela) [2125544] - ASoC: SOF: Add topology tokens for IPC4 (Jaroslav Kysela) [2125544] - ASoC: hdac_hda: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: max98504: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: adau1372: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: cx2072x: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6351: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6358: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6359: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6660: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: pcm3060: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt9120: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt700: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt715: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt715-sdca: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt1308-sdw: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt1316-sdw: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: wsa881x: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: sdw-mockup: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: lochnagar: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: lochnagar: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: tfa*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tfa9879: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cs*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: wm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: wm9090: Remove redundant endianness flag (Jaroslav Kysela) [2125544] - ASoC: wm8731: Factor out the I2C and SPI bus code into separate modules (Jaroslav Kysela) [2125544] - ASoC: wm8731: Factor our MCLK and mutex initialisation (Jaroslav Kysela) [2125544] - ASoC: wm8731: Move regulator request into wm8731_init() (Jaroslav Kysela) [2125544] - ASoC: wm8731: Factor component init out of bus code (Jaroslav Kysela) [2125544] - ASoC: wm8731: Update to modern DAI terminology (Jaroslav Kysela) [2125544] - ASoC: wm2000: fix missing clk_disable_unprepare() on error in wm2000_anc_transition() (Jaroslav Kysela) [2125544] - ASoC: wm2000: Remove redundant endianness flag (Jaroslav Kysela) [2125544] - ASoC: wm*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas2764: Fix amp gain register offset & default (Jaroslav Kysela) [2125544] - ASoC: tas2764: Correct playback volume range (Jaroslav Kysela) [2125544] - ASoC: tas2764: Fix and extend FSYNC polarity handling (Jaroslav Kysela) [2125544] - ASoC: tas2764: Add post reset delays (Jaroslav Kysela) [2125544] - ASoC: tas*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tas*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas2764: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [2125544] - ASoC: tas*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [2125544] - ASoC: tas2764: Add the driver for the TAS2764 (Jaroslav Kysela) [2125544] - ASoC: max98396: Fix TDM mode BSEL settings (Jaroslav Kysela) [2125544] - ASoC: max*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: max98396: Implement DSP speaker monitor (Jaroslav Kysela) [2125544] - ASoC: max98396: Fix register access for PCM format settings (Jaroslav Kysela) [2125544] - ASoC: max98396: Improve some error prints (Jaroslav Kysela) [2125544] - ASoC: max98396: add voltage regulators (Jaroslav Kysela) [2125544] - ASoC: max98396: Fix build error for implicit function declaration (Jaroslav Kysela) [2125544] - ASoC: max98396: add amplifier driver (Jaroslav Kysela) [2125544] - ASoC: rt*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: rt1019: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: fsl: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: pistachio: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: samsung: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sunxi: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tegra: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: test-component: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: uniphier: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ad*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ak*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: alc*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: da*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: es*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: msm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: nau*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: pcm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: spdif: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ssm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sta*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: twl*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: uda*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: 88pm860x: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ab8500: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ac97: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ads117x: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: bd28623: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: bt-sco: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cpcap: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cq93vc: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cx20442: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: dmic: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: gtm601: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: hdac_hdmi: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: hdmi-codec: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ics43432: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: inno_rk3036: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: isabelle: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: jz4740: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: lm49453: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: mc13783: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ml26124: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sgtl5000: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: si476x: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: stac9766: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sti-sas: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tscs42xx: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: wl1273: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: zl38060: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: fsl_micfil: Add legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: fsl_asrc_dma: Add legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: soc-component: Remove non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils: Move snd_soc_component_is_codec to be local (Jaroslav Kysela) [2125544] - ASoC: soc-component: Add legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: core: Add new SOC_DOUBLE_SX_TLV macro (Jaroslav Kysela) [2125544] - ASoC: Remove unused hw_write_t type (Jaroslav Kysela) [2125544] - ASoC: soc.h: Add SOC_SINGLE_S_EXT_TLV macro (Jaroslav Kysela) [2125544] - ASoC: soc.h: Introduce SOC_DOUBLE_R_S_EXT_TLV() macro (Jaroslav Kysela) [2125544] - ASoC: soc.h: Add SOC_SINGLE_S_TLV() macro (Jaroslav Kysela) [2125544] - ASoC: hdmi-codec: Update to modern DAI terminology (Jaroslav Kysela) [2125544] - ALSA: hda: Skip event processing for unregistered codecs (Jaroslav Kysela) [2125544] - ASoC: codecs: Add HD-Audio codec driver (Jaroslav Kysela) [2125544] - ASoC: cs42l42: Move CS42L42 register descriptions to general include (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Read System Name from ACPI _SUB to identify firmware (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Add common cs35l41 enter hibernate function (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs35l41 exit hibernate function into shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs_dsp config struct into shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs35l41 fs errata into shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs35l41_set_cspl_mbox_cmd to shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Support external boost (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Add support for MeteorLake (MTL) (Jaroslav Kysela) [2125544] - treewide: Replace zero-length arrays with flexible-array members (Jaroslav Kysela) [2125544] - ASoC: SOF: add definitions for different IPC types (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: enhance debug messages (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: add sdw blob (Jaroslav Kysela) [2125544] - AsoC: SOF: ipc4-topology: Add dai_get_clk op (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for SSP/DMIC DAI's (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a new IPC op for parsing topology manifest (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: init NHLT for IPC4 (Jaroslav Kysela) [2125544] - ASoC: SOF: Add ops_free (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: set the BE DAI ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-pcm: Expose sof_ipc4_set_pipeline_state() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add the dai_config op (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add route_setup/route_free ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add widget_setup/widget_free ops (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: Add pcm ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add control IO ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add control_setup op (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing mixer widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing and preparing pga widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add prepare op for DAI type widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add prepare op for AIF type widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing DAI_IN/DAI_OUT widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing AIF_IN/AIF_OUT widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: Introduce topology ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Return from dtrace_read if there is no new data available (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Add helper function to update the sdev->host_offset (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Introduce SOF_DTRACE_INITIALIZING state (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: implement pm ctx_save callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Switch to use the generic pm_ops.set_core_state (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: Add set_core_state pm_ops implementation (Jaroslav Kysela) [2125544] - ASoC: SOF: Add initial header file for ipc4 (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Add set_core_state pm_ops implementation (Jaroslav Kysela) [2125544] - ASoC: SOF: sof_ipc_pm_ops: Add support for DSP core power management (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 suspend check dsp idle (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 modify dram type as non-cache (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add shared_size for mediatek common chip information (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: revise mt8195 clock sequence (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Add SOF pm ops callback for Renoir (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Fix reversed if statement (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Propagate write errors correctly (Jaroslav Kysela) [2125544] - ASoC: SOF: Fix potential NULL pointer dereference (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-ipc-flood-test: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: remove duplicate include in mt8195.c (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8195 debug dump (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mediatek common debug dump (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Move dtrace related variables local from sof_dev (Jaroslav Kysela) [2125544] - ASoC: SOF: Introduce opaque storage of private data for firmware tracing (Jaroslav Kysela) [2125544] - ASoC: SOF: Modify the host trace_init parameter list to include dmab (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Move host ops wrappers from generic header to private (Jaroslav Kysela) [2125544] - ASoC: SOF: Clone the trace code to ipc3-dtrace as fw_tracing implementation (Jaroslav Kysela) [2125544] - ASoC: SOF: Rename dtrace_is_supported flag to fw_trace_is_supported (Jaroslav Kysela) [2125544] - ASoC: SOF: Introduce IPC independent ops for firmware tracing support (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Cap the rmaining to count in IPC4 mode (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 ipc support (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add ipc support for mt8195 (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: HDA: Set up sof_ipc4_fw_data for IPC4 (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: Add FW loader ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Add IPC4 private header (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: HDA: Set IPC4-specific DSP ops for CaVS platforms (Jaroslav Kysela) [2125544] - ASoC: SOF: trace: The dtrace is only available with SOF_IPC (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: IPC flood test can only work with SOF_IPC (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Add support for IPC4 messages (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Separate the message sending (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: Add support IPC4 message sending (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: Add API to get the ipc_type (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-probes: Query the maximum IPC payload size (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Query the maximum IPC payload size (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: Add API to get the maximum IPC payload size (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: Add support for mandatory message handling functionality (Jaroslav Kysela) [2125544] - ASoC: SOF: Add rx_data pointer to snd_sof_ipc_msg struct (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Remove the ipc3-ops.h header file (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: fix missing pci_release_regions() on error in sof_pci_probe() (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Call optional query_fw_configuration on first boot (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Remove snd_sof_parse_module_memcpy() as it is not used (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: bdw/byt/pci-tng: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: imx: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: renoir: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Switch to use the fw_loader ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Add check for fw_loader ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-loader: Implement firmware parsing and loading (Jaroslav Kysela) [2125544] - ASoC: SOF: Introduce IPC dependent ops for firmware handling, loading (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a prepare op to IPC topology widget ops (Jaroslav Kysela) [2125544] - ASoC: SOF: clarify use of widget complete flag (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: Skip parsing DAI link tokens if not needed (Jaroslav Kysela) [2125544] - ASoC: SOF: pcm: remove unnecessary function declaration (Jaroslav Kysela) [2125544] - ASoC: SOF: Add two new fields to struct snd_sof_widget (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a route_free op in struct sof_ipc_tplg_ops (Jaroslav Kysela) [2125544] - ASoC: SOF: expose a couple of functions (Jaroslav Kysela) [2125544] - ASoC: SOF: pcm: Move the call to snd_sof_pcm_platform_hw_params() (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: Set up widgets from source to sink (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: reset route status before freeing widget (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a new op to set up volume table (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Fix allyesconfig build error (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 change ipc timeout as 1 second (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-ipc-msg-injector: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: debug: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: control: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add DSP system PM callback for mt8186 (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 dsp clock support (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 sof fw loader and dsp ops (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 hardware support (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Remove the old fw_ready related code (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Do not set fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: imx: Do not set fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Do not set fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Do not check for the fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Add local implementation for handling fw_ready message (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: protect hw_params against successive calls (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add helper for link DMA cleanups (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: reset dma_data and release stream (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: improve suspend case (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: move code to deal with hda dai/dailink suspend (Jaroslav Kysela) [2125544] - ASOC: SOF: Intel: hda-dai: add hda_dai_hw_free_ipc() helper (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: flag errors on pipeline teardown (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: regroup dai and link DMA operations (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: split link DMA and dai operations (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: use snd_soc_dai_get_widget() helper (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: simplify hda_dai_widget_update() prototype (Jaroslav Kysela) [2125544] - ASOC: SOF: Intel: hda-dai: consistent naming for HDA DAI and HDA link DMA (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Add IPC-specific dai ops for IPC3 (Jaroslav Kysela) [2125544] - ASoC: SOF: remove incorrect clearing of prepared flag (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: simplify NHLT handling (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: Check w->sname validity once in sof_connect_dai_widget() (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: remove useless assignment (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: pci-tgl: add RPL-P support (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: pci-tgl: add ADL-PS support (Jaroslav Kysela) [2125544] - ASOC: SOF: pci: add ipc_type override for Intel IPC4 tests (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: don't use the community key on APL Chromebooks (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Use dedicated MBOX for ACP and PSP communication (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Add psp_mbox_ready() and psp_send_cmd() callback (Jaroslav Kysela) [2125544] - ASoC: SOF: using pm_runtime_resume_and_get to simplify the code (Jaroslav Kysela) [2125544] - ASoC: SOF: Kconfig: Make SND_SOC_SOF_HDA_PROBES tristate (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add IP identifier (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: expose some codeloader functions (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Define rom_status_reg in sof_intel_dsp_desc (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: define check_ipc_irq op (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: use BIT() macros for consistency (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: move HDA_CL_STREAM_FORMAT definition to header (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: use common ops across platforms (Jaroslav Kysela) [2125544] - ASoC: SOF: remove const qualifier for 'struct snd_sof_dsp_ops' (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: preserve topology filename override in nocodec mode (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: add parameter to override topology filename (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: add parameter to override firmware filename (Jaroslav Kysela) [2125544] - ASoC: SOF: add IPC-dependent file names (Jaroslav Kysela) [2125544] - ASoC: SOF: add default IPC capability and file paths (Jaroslav Kysela) [2125544] - ASoC: SOF: add path indirection to each IPC type (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Check the bar size before remapping (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Move the ipc_set_get_comp_data() local to ipc3-control (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: Use the widget_kcontrol_setup ops for kcontrol set up (Jaroslav Kysela) [2125544] - ASoC: SOF: Add widget_kcontrol_setup control ops for IPC3 (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Switch over to use the rx_msg ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Switch over to use the tx_msg and set_get_data ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Use the get_reply ops in snd_sof_ipc_get_reply() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Add check for mandatory IPC message handling ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Separate the ops checks by functions/topics (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement rx_msg IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement the get_reply IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement the set_get_data IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Use sof_ipc3_tx_msg() internally for message sending (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement the tx_msg IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Add high level IPC IO callback definitions to ipc_ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Add helper function to prepare and send an IPC message (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 add shutdown callback (Jaroslav Kysela) [2125544] - ASoC: SOF: OF: Add shutdown callback for SOF OF device (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: Avoid open coded arithmetic in memory allocation (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: use new sound control LED layer (Jaroslav Kysela) [2125544] - ASoC: SOF: Remove redundant return statements (Jaroslav Kysela) [2125544] - ASoC: SOF: Remove header from struct snd_sof_ipc_msg (Jaroslav Kysela) [2125544] - ASoC: SOF: Drop 'header' parameter from tx_message() API (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Use msg->reply_data directly in snd_sof_ipc_get_reply() (Jaroslav Kysela) [2125544] - ASoC: SOF: disable dma trace in s0ix (Jaroslav Kysela) [2125544] - ASoC: SOF: extend the interface to stop DMA trace (Jaroslav Kysela) [2125544] - ASoC: SOF: Drop support for mapped control data (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Use ipc->max_payload_size for message/reply size checking (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Add max_payload_size field in struct snd_sof_ipc (Jaroslav Kysela) [2125544] - ASoC: SOF: Remove dmab and dmab_bdl from snd_sof_dev struct (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-loader: Use local snd_dma_buffer (Jaroslav Kysela) [2125544] - ASoC: amd: acp: add missing platform_device_unregister() in acp_pci_probe() (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Fix initialization of ext_intr_stat1 in i2s_irq_handler() (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Use non-legacy DAI naming for cs35l41 (Jaroslav Kysela) [2125544] - ASoC: amd: enable RPL Platform acp drivers build (Jaroslav Kysela) [2125544] - ASoC: amd: add RPL Platform pci driver pm-ops (Jaroslav Kysela) [2125544] - ASoC: amd: add RPL Platform init/de-init functions (Jaroslav Kysela) [2125544] - ASoC: amd: add ACP PCI driver for RPL platform (Jaroslav Kysela) [2125544] - ASoC: amd: add RPL Platform acp header file (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add error handling cases (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Modify const resource struct variable to generic (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Drop superfluous mmap callback (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Modify local variables name to generic (Jaroslav Kysela) [2125544] - ASoC: amd: yc: Decrease level of error message (Jaroslav Kysela) [2125544] - ASoC: amd: yc: add new YC platform varaint support (Jaroslav Kysela) [2125544] - ASoC: amd: fix Jadeite kconfig warning and build errors (Jaroslav Kysela) [2125544] - ASoC: amd: Fix error pointer dereference (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add legacy audio driver support for Rembrandt platform (Jaroslav Kysela) [2125544] - ASoC: amd: acp: ACP code generic to support newer platforms (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Remove rt1019_1 codec conf from machine driver (Jaroslav Kysela) [2125544] - ASoC: amd: Remove duplicated include in acp-es8336.c (Jaroslav Kysela) [2125544] - ASoC: amd: fix for variable set but not used warning (Jaroslav Kysela) [2125544] - ASoC: amd: drop machine driver remove function (Jaroslav Kysela) [2125544] - ASoC: amd: remove unused header file inclusion (Jaroslav Kysela) [2125544] - ASoC: amd: acp-es8336: use static variables (Jaroslav Kysela) [2125544] - ASoC: amd: fix ACPI dependency compile errors and warnings (Jaroslav Kysela) [2125544] - ASoC: amd: enable machine driver build for Jadeite platform (Jaroslav Kysela) [2125544] - ASoC: amd: add Machine driver for Jadeite platform (Jaroslav Kysela) [2125544] - ASoC: amd: add I2S MICSP instance support (Jaroslav Kysela) [2125544] - ASoC: amd: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Fix error handling in .remove() (Jaroslav Kysela) [2125544] - ASoC: amd: acp: fix typo in comment (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add support for rt5682s and rt1019 card with hs instance (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add support for nau8825 and max98360 card (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Rename set_fmt_new back to set_fmt (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Set Speaker enable/disable pin through rt1019 codec driver. (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Set Speaker enable/disable pin through rt1019 codec driver (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Remove duplicate include files (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add pm ops callback in machine driver (Jaroslav Kysela) [2125544] - ASoC: soc-utils: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: topology: Drop superfluous check of CONFIG_SND_CTL_VALIDATION (Jaroslav Kysela) [2125544] - ASoC: topology: Rename soc_tplg_init_kcontrol() function (Jaroslav Kysela) [2125544] - ASoC: topology: Correct error message (Jaroslav Kysela) [2125544] - ASoC: topology: Rename SOC_TPLG_PASS_MIXER to _CONTROL (Jaroslav Kysela) [2125544] - ASoC: topology: Return bool instead of int (Jaroslav Kysela) [2125544] - ASoC: topology: Remove unnecessary looping (Jaroslav Kysela) [2125544] - ASoC: topology: Use for loop instead of while (Jaroslav Kysela) [2125544] - ASoC: topology: KUnit: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: topology: KUnit: Followup prototype change of snd_soc_unregister_card() (Jaroslav Kysela) [2125544] - ASoC: DPCM: Don't pick up BE without substream (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: demote warnings on non-atomic BE connection (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: fix BE transition for TRIGGER_START (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: improve BE transition for TRIGGER_START (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: improve BE transition for PAUSE_RELEASE (Jaroslav Kysela) [2125544] - ASoC: ops: Fix integer detection for when max possible values > 1 (Jaroslav Kysela) [2125544] - ASoC: ops: Fix boolean/integer detection for simple controls (Jaroslav Kysela) [2125544] - ASoC: ops: Don't modify the driver's plaform_max when reading state (Jaroslav Kysela) [2125544] - ASoC: ops: Remove unneeded delay.h inclusion (Jaroslav Kysela) [2125544] - ASoC: ops: Clarify snd_soc_info_volsw_sx() (Jaroslav Kysela) [2125544] - ASoC: soc-generic-dmaengine-pcm: Use default config when none is given (Jaroslav Kysela) [2125544] - ASoC: dapm: Move stereo autodisable check (Jaroslav Kysela) [2125544] - ASoC: soc-dai: Remove set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: soc-core.c: share code for snd_soc_of_get_dai_link_cpus/codecs() (Jaroslav Kysela) [2125544] - ASoC: soc-core.c: fixup snd_soc_of_get_dai_link_cpus() (Jaroslav Kysela) [2125544] - ASoC: core: Switch core to new DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: core: Make snd_soc_unregister_card() return void (Jaroslav Kysela) [2125544] - ASoC: core: Always send the CPU DAI a direct clock specifier (Jaroslav Kysela) [2125544] - ASoC: core: Add set_fmt_new callback that directly specifies provider (Jaroslav Kysela) [2125544] - ASoC: core: Pass legacy_dai_naming flag directly (Jaroslav Kysela) [2125544] - ASoC: core: Correct spelling fliped -> flipped (Jaroslav Kysela) [2125544] - ASoC: soc-core: remove always-false path (Jaroslav Kysela) [2125544] - ASoC: Introduce snd_soc_of_get_dai_link_cpus (Jaroslav Kysela) [2125544] - ASoC: soc-component: Update handling to component delays (Jaroslav Kysela) [2125544] - ASoC: Introduce 'fixup_controls' card method (Jaroslav Kysela) [2125544] - ASoC: soc-card: Create jack kcontrol without pins (Jaroslav Kysela) [2125544] - ALSA: Replace acpi_bus_get_device() (Jaroslav Kysela) [2125544] - Revert "ALSA: hda: cs35l41: Allow compilation test on non-ACPI configurations" (Jaroslav Kysela) [2125544] - ALSA: hda: beep: Simplify keep-power-at-enable behavior (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Don't skip notification handling during PM operation (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Limit the maximal count of PCM devices to 8 (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: ELD procfs - print the codec NIDs (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Simplify the pcm_idx condition in hdmi_pcm_setup_pin() (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Fix the converter allocation for the silent stream (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: change type for the 'assigned' variable (Jaroslav Kysela) [2125544] - ALSA: hda: intel-nhlt: Move structs out of #define block (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add a quirk for HP OMEN 16 (8902) mute LED (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Fix the converter reuse for the silent stream (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for ASUS GA503R laptop (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add pincfg for ASUS G533Z HP jack (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add pincfg for ASUS G513 HP jack (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Re-arrange quirk table entries (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5530 laptop (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5570 laptop (Jaroslav Kysela) [2125544] - ALSA: hda: Fix Nvidia dp infoframe (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Huawei WRT-WX9 (Jaroslav Kysela) [2125544] - ALSA: hda/tegra: set depop delay for tegra (Jaroslav Kysela) [2125544] - ALSA: hda: add Intel 5 Series / 3400 PCI DID (Jaroslav Kysela) [2125544] - ALSA: hda: Fix hang at HD-audio codec unbinding due to refcount saturation (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Fix out of bounds access in snd_emu10k1_pcm_channel_alloc() (Jaroslav Kysela) [2125544] - ALSA: hda/tegra: Align BDL entry to 4KB boundary (Jaroslav Kysela) [2125544] - ALSA: hda/sigmatel: Fix unused variable warning for beep power change (Jaroslav Kysela) [2125544] - ALSA: hda/sigmatel: Keep power up while beep is enabled (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add speaker AMP init for Samsung laptops with ALC298 (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Clevo NS50PU, NS70PU (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Support new Dolphin Variants (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Lenovo Yoga7 14IAL7 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Clarify support for CSC3551 without _DSD Properties (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirks for ASUS Zenbooks using CS35L41 (Jaroslav Kysela) [2125544] - ALSA: hda: Fix crash due to jack poll in suspend (Jaroslav Kysela) [2125544] - ALSA: hda/cirrus - support for iMac 12,1 model (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add a quirk for HP OMEN 15 (8786) mute LED (Jaroslav Kysela) [2125544] - ALSA: hda/conexant: Add quirk for LENOVO 20149 Notebook model (Jaroslav Kysela) [2125544] - ALSA: ice1712: remove redundant assignment to new (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for another Asus K42JZ model (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for HP Spectre x360 15-eb0xxx (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Clevo NV45PZ (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Lenovo Yoga9 14IAP7 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support CLSA0101 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Use the CS35L41 HDA internal define (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Enable speaker and mute LEDs for HP laptops (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix build error unused-function (Jaroslav Kysela) [2125544] - ALSA: asihpi: fix repeated words in comments (Jaroslav Kysela) [2125544] - ALSA: asihpi: Fix typo in comments (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Fix typo in comments (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add module parameter to control firmware load (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support Firmware switching and reloading (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add defaulted values into dsp bypass config sequence (Jaroslav Kysela) [2125544] - ALSA: hda: hda_cs_dsp_ctl: Add fw id strings (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Read Speaker Calibration data from UEFI variables (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support Hibernation during Suspend (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support Speaker ID for laptops (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support multiple load paths for firmware (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support reading subsystem id from ACPI (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Save Subsystem ID inside CS35L41 Driver (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add initial DSP support and firmware loading (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Save codec object inside component struct (Jaroslav Kysela) [2125544] - ALSA: hda: hda_cs_dsp_ctl: Add apis to write the controls directly (Jaroslav Kysela) [2125544] - ALSA: hda: hda_cs_dsp_ctl: Add Library to support CS_DSP ALSA controls (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Consolidate selections under SND_HDA_SCODEC_CS35L41 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Drop wrong use of ACPI_PTR() (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Allow compilation test on non-ACPI configurations (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Don't dereference fwnode handle (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Improve dev_err_probe() messaging (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix comments wrt serial-multi-instantiate reference (Jaroslav Kysela) [2125544] - ALSA: hda: Fix put_device() inconsistency in error path (Jaroslav Kysela) [2125544] - ALSA: hda: Make device usage_count consistent across subsequent probing (Jaroslav Kysela) [2125544] - ALSA: hda: Fix null-ptr-deref when i915 fails and hdmi is denylisted (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: change cs8409_fixups v.pins initializers to static (Jaroslav Kysela) [2125544] - ASoC: doc: Update dead links (Jaroslav Kysela) [2125544] - ALSA: hda/via: Delete does not require return (Jaroslav Kysela) [2125544] - ALSA: ctxfi: fix typo in comment (Jaroslav Kysela) [2125544] - ALSA: cs5535audio: fix typo in comment (Jaroslav Kysela) [2125544] - ALSA: lola: Bounds check loop iterator against streams array size (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add Amp Name based on channel and index (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Enable GPIO2 Interrupt for CLSA0100 laptops (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add Support for Interrupts (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Remove Set Channel Map api from binding (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Set Speaker Position for CLSA0100 Laptop (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix error in spi cs35l41 hda driver name (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Add Speaker Playback Switch for Warlock (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Add Speaker Playback Switch for Cyborg (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Support new Odin Variants (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Support manual mode detection for CS42L42 (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Use general cs42l42 include in cs8409 hda driver (Jaroslav Kysela) [2125544] - ALSA: hdsp: remove redundant assignment to pointer kctl (Jaroslav Kysela) [2125544] - ALSA: hda/conexant: add a new hda codec SN6140 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Move external boost handling to lib for ASoC use (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Handle all external boost setups the same way (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Reorganize log for playback actions (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Remove cs35l41_hda_reg_sequence struct (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Move boost config to initialization code (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Mute the device before shutdown (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Put the device into safe mode for external boost (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add Boost type flag (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Always configure the DAI (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix I2S params comments (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Move cs35l41_gpio_config to shared lib (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Check hw_config before using it (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Unify hardware configuration (Jaroslav Kysela) [2125544] - ALSA: hda/tegra: Enable Jack poll for tegra (Jaroslav Kysela) [2125544] - ALSA: hda: Jack detection poll in suspend state (Jaroslav Kysela) [2125544] - ALSA: echoaudio: remove redundant assignment to variable i (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Stop using iommu_present() (Jaroslav Kysela) [2125544] - ALSA: hda: intel-dsp-config: add missing RaptorLake PCI IDs (Jaroslav Kysela) [2125544] - ALSA: hda: intel-nhlt: Correct the handling of fmt_config flexible array (Jaroslav Kysela) [2125544] - ALSA: hda: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: hda: Remove unused macro definition (Jaroslav Kysela) [2125544] - ALSA: hda: Reset all SIE bits in INTCTL (Jaroslav Kysela) [2125544] - tracing: ALSA: hda: Remove string manipulation out of the fast path (Jaroslav Kysela) [2125544] - ALSA: hda: intel-nhlt: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ALSA: hda: intel-dspcfg: use SOF for UpExtreme and UpExtreme11 boards (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Properly refcounting clock rate (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Clear fixed clock rate at closing EP (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Fix an out-of-bounds bug in __snd_usb_parse_audio_interface() (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Register card again for iface over delayed_register option (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Inform the delayed registration more properly (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add quirk for LH Labs Geek Out HD Audio 1V5 (Jaroslav Kysela) [2125544] - ALSA: usb-audio: make read-only array marker static const (Jaroslav Kysela) [2125544] - ALSA: usb-audio: More comprehensive mixer map for ASUS ROG Zenith II (Jaroslav Kysela) [2125544] - ALSA: scarlett2: Add Focusrite Clarett+ 8Pre support (Jaroslav Kysela) [2125544] - ALSA: line6: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: hiface: fix repeated words in comments (Jaroslav Kysela) [2125544] - ALSA: usb/6fire: fix repeated words in comments (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add quirk for Behringer UMC202HD (Jaroslav Kysela) [2125544] - ALSA: bcd2000: Fix a UAF bug on the error path of probing (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Use atomic_try_cmpxchg in ep_state_update (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add endianness annotations (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Turn off 'manual mode' on Dell dock (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Support jack detection on Dell dock (Jaroslav Kysela) [2125544] - ALSA: usb-audio: US16x08: Move overflow check before array access (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Cancel pending work at closing a MIDI substream (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add mixer mapping for Gigabyte B450/550 Mobos (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Fix wrong kfree issue in snd_usb_endpoint_free_all (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Refcount multiple accesses on the single clock (Jaroslav Kysela) [2125544] - mfd: arizona-spi: Add Android board ACPI table handling (Jaroslav Kysela) [2125544] - mfd: arizona-spi: Split Windows ACPI init code into its own function (Jaroslav Kysela) [2125544] - mfd: arizona: Add missing statics to the of_match_tables (Jaroslav Kysela) [2125544] - firmware: cs_dsp: Add memory chunk helpers (Jaroslav Kysela) [2125544] - firmware: cs_dsp: Add pre_stop callback (Jaroslav Kysela) [2125544] - regmap: sdw: add required header files (Jaroslav Kysela) [2125544] - regmap: soundwire: remove unused header mod_devicetable.h (Jaroslav Kysela) [2125544] - regmap: Constify static regmap_bus structs (Jaroslav Kysela) [2125544] - soundwire: peripheral: remove useless ops pointer (Jaroslav Kysela) [2125544] - soundwire: intel: use pm_runtime_resume() on component probe (Jaroslav Kysela) [2125544] - soundwire: qcom: fix device status array range (Jaroslav Kysela) [2125544] - soundwire: qcom: remove duplicate reset control get (Jaroslav Kysela) [2125544] - soundwire: Intel: add trigger callback (Jaroslav Kysela) [2125544] - soundwire: qcom: Enable software clock gating requirement flag (Jaroslav Kysela) [2125544] - soundwire: qcom: Check device status before reading devid (Jaroslav Kysela) [2125544] - soundwire: qcom: Add flag for software clock gating check (Jaroslav Kysela) [2125544] - soundwire: revisit driver bind/unbind and callbacks (Jaroslav Kysela) [2125544] - soundwire: bus_type: fix remove and shutdown support (Jaroslav Kysela) [2125544] - soundwire: intel: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: qcom: soundwire: Add support for controlling audio CGCR from HLOS (Jaroslav Kysela) [2125544] - soundwire: qcom: adjust autoenumeration timeout (Jaroslav Kysela) [2125544] - soundwire: qcom: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: intel: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: cadence: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: bus: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: qcom: return error when pm_runtime_get_sync fails (Jaroslav Kysela) [2125544] - soundwire: bus: pm_runtime_request_resume on peripheral attachment (Jaroslav Kysela) [2125544] - soundwire: intel: disable WAKEEN in pm_runtime resume (Jaroslav Kysela) [2125544] - soundwire: cadence: recheck device0 attachment after status change (Jaroslav Kysela) [2125544] - soundwire: qcom: Add compatible name for v1.6.0 (Jaroslav Kysela) [2125544] - soundwire: stream: Fix error return code in do_bank_switch() (Jaroslav Kysela) [2125544] - soundwire: qcom: fix an error message in swrm_wait_for_frame_gen_enabled() (Jaroslav Kysela) [2125544] - soundwire: qcom: use __maybe_unused for swrm_runtime_resume() (Jaroslav Kysela) [2125544] - soundwire: qcom: constify static struct qcom_swrm_data global variables (Jaroslav Kysela) [2125544] - soundwire: qcom: add in-band wake up interrupt support (Jaroslav Kysela) [2125544] - soundwire: qcom: add runtime pm support (Jaroslav Kysela) [2125544] - soundwire: Replace acpi_bus_get_device() (Jaroslav Kysela) [2125544] - ALSA: Add snd_pcm_direction_name() helper (Jaroslav Kysela) [2125544] - ALSA: core: Fix double-free at snd_card_new() (Jaroslav Kysela) [2125544] - ALSA: hda: Once again fix regression of page allocations with IOMMU (Jaroslav Kysela) [2125544] - ALSA: pcm: oss: Fix race at SNDCTL_DSP_SYNC (Jaroslav Kysela) [2125544] - ALSA: control: Re-order bounds checking in get_ctl_id_hash() (Jaroslav Kysela) [2125544] - ALSA: control: Fix an out-of-bounds bug in get_ctl_id_hash() (Jaroslav Kysela) [2125544] - ALSA: seq: Fix data-race at module auto-loading (Jaroslav Kysela) [2125544] - ALSA: seq: oss: Fix data-race for max_midi_devs access (Jaroslav Kysela) [2125544] - ALSA: memalloc: Revive x86-specific WC page allocations again (Jaroslav Kysela) [2125544] - ALSA: info: Fix llseek return value when using callback (Jaroslav Kysela) [2125544] - ALSA: pcm: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: core: Replace scnprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: control-led: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: control: Use deferred fasync helper (Jaroslav Kysela) [2125544] - ALSA: pcm: Use deferred fasync helper (Jaroslav Kysela) [2125544] - ALSA: timer: Use deferred fasync helper (Jaroslav Kysela) [2125544] - ALSA: core: Add async signal helpers (Jaroslav Kysela) [2125544] - ALSA: core: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: memalloc: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: control: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: compress: Fix kernel doc warnings (Jaroslav Kysela) [2125544] - ALSA: dmaengine: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: pcm: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: compress: Enable kernel doc markers for some functions (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Take buffer refcount while draining output (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Check stream state at exported functions (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Take open_mutex around parameter changes (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Move lock to snd_rawmidi_substream (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Make internal functions local static (Jaroslav Kysela) [2125544] - ALSA: control: Add input validation (Jaroslav Kysela) [2125544] - ALSA: control: Drop superfluous ifdef CONFIG_SND_CTL_DEBUG (Jaroslav Kysela) [2125544] - ALSA: control: Rename CONFIG_SND_CTL_VALIDATION to CONFIG_SND_CTL_DEBUG (Jaroslav Kysela) [2125544] - ALSA: control: Use xarray for faster lookups (Jaroslav Kysela) [2125544] - ALSA: seq: replace ternary operator with max() (Jaroslav Kysela) [2125544] - ALSA: pcm: use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2125544] - pinctrl: amd: Don't save/restore interrupt status and wake status bits (Prarit Bhargava) [2130059] - x86/paravirt: Add a dummy __x86_paravirt_patch_template() function (Waiman Long) [2144161] - x86/paravirt: Fix kABI breakage in struct pv_mmu_ops (Waiman Long) [2144161]- can: af_can: fix NULL pointer dereference in can_rx_register() (Ivan Vecera) [2136823] - net: disable preemption in dev_core_stats_XXX_inc() helpers (Ivan Vecera) [2136823] - net: introduce CAN specific pointer in the struct net_device (Ivan Vecera) [2136823] - can: af_can: can_pernet_exit(): no need to iterate over and cleanup registered CAN devices (Ivan Vecera) [2136823] - net: add per-cpu storage and net->core_stats (Ivan Vecera) [2136823] - tun: switch to net core provided statistics counters (Ivan Vecera) [2136823] - tun: switch to u64_stats_t (Ivan Vecera) [2136823] - ceph: avoid putting the realm twice when decoding snaps fails (Xiubo Li) [2139881] - powerpc/64/kdump: Limit kdump base to 512MB (Mamatha Inamdar) [2132921] - ice: virtchnl rss hena support (Petr Oros) [2136516] - Documentation/admin-guide: Document nomodeset kernel parameter (Jocelyn Falempe) [2143952] - drm: Move nomodeset kernel parameter to the DRM subsystem (Jocelyn Falempe) [2143952] - usb: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - sound: usb: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - usb: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - net: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - media: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - Input: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - HID: usbhid: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - usb: deprecate the third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - scsi: smartpqi: Change version to 2.1.20-035 (Don Brace) [2116976] - scsi: smartpqi: Initialize feature section info (Don Brace) [2116976] - scsi: smartpqi: Add controller cache flush during rmmod (Don Brace) [2116976] - scsi: smartpqi: Correct device removal for multi-actuator devices (Don Brace) [2116976] - scsi: smartpqi: Change sysfs raid_level attribute to N/A for controllers (Don Brace) [2116976] - scsi: smartpqi: Correct max LUN number (Don Brace) [2116976] - scsi: smartpqi: Add new controller PCI IDs (Don Brace) [2116976] - scsi: smartpqi: Convert to host_tagset (Don Brace) [2116976] - scsi: smartpqi: Stop using the SCSI pointer (Don Brace) [2116976] - smartpqi: Change request pointer to scsi_cmd_to_rq (Don Brace) [2116976] - scsi: smartpqi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Don Brace) [2116976] - EDAC/skx_common: Make output format similar (Aristeu Rozanski) [2124915] - EDAC/skx_common: Use driver decoder first (Aristeu Rozanski) [2124915] - ptp: introduce helpers to adjust by scaled parts per million (Izabela Bakollari) [2141639] - ptp: add missing documentation for parameters (Izabela Bakollari) [2141639] - mm: slub: fix flush_cpu_slab()/__free_slab() invocations in task context. (Nico Pache) [2144559] - scsi: target: loop: Fix handling of aborted TMRs (Maurizio Lombardi) [2141713] - ceph: fix NULL pointer dereference for req->r_session (Xiubo Li) [2137955] - ceph: Use kcalloc for allocating multiple elements (Xiubo Li) [2137955] - net/mlx5e: TC, Reject forwarding from internal port to internal port (Mohammad Kabat) [2131345] - md/raid1: stop mdx_raid1 thread when raid1 array run failed (Nigel Croxon) [2143270] - md: fix a crash in mempool_free (Nigel Croxon) [2143257] - md/raid0, raid10: Don't set discard sectors for request queue (Nigel Croxon) [2143250] - sgx: use ->f_mapping... (Vladis Dronov) [2130210] - x86/sgx: Improve comments for sgx_encl_lookup/alloc_backing() (Vladis Dronov) [2130210] - x86/sgx: Handle VA page allocation failure for EAUG on PF. (Vladis Dronov) [2130210] - x86/sgx: Do not fail on incomplete sanitization on premature stop of ksgxd (Vladis Dronov) [2130210] - selftests/sgx: Ignore OpenSSL 3.0 deprecated functions warning (Vladis Dronov) [2130210] - x86/sgx: Set active memcg prior to shmem allocation (Vladis Dronov) [2130210] - x86/sgx: Drop 'page_index' from sgx_backing (Vladis Dronov) [2130210] - selftests/sgx: Page removal stress test (Vladis Dronov) [2130210] - selftests/sgx: Test reclaiming of untouched page (Vladis Dronov) [2130210] - selftests/sgx: Test invalid access to removed enclave page (Vladis Dronov) [2130210] - selftests/sgx: Test faulty enclave behavior (Vladis Dronov) [2130210] - selftests/sgx: Test complete changing of page type flow (Vladis Dronov) [2130210] - selftests/sgx: Introduce TCS initialization enclave operation (Vladis Dronov) [2130210] - selftests/sgx: Introduce dynamic entry point (Vladis Dronov) [2130210] - selftests/sgx: Test two different SGX2 EAUG flows (Vladis Dronov) [2130210] - selftests/sgx: Add test for TCS page permission changes (Vladis Dronov) [2130210] - selftests/sgx: Add test for EPCM permission changes (Vladis Dronov) [2130210] - Documentation/x86: Introduce enclave runtime management section (Vladis Dronov) [2130210] - x86/sgx: Free up EPC pages directly to support large page ranges (Vladis Dronov) [2130210] - x86/sgx: Support complete page removal (Vladis Dronov) [2130210] - x86/sgx: Support modifying SGX page type (Vladis Dronov) [2130210] - x86/sgx: Tighten accessible memory range after enclave initialization (Vladis Dronov) [2130210] - x86/sgx: Support adding of pages to an initialized enclave (Vladis Dronov) [2130210] - x86/sgx: Support restricting of enclave page permissions (Vladis Dronov) [2130210] - x86/sgx: Support VA page allocation without reclaiming (Vladis Dronov) [2130210] - x86/sgx: Export sgx_encl_page_alloc() (Vladis Dronov) [2130210] - x86/sgx: Export sgx_encl_{grow,shrink}() (Vladis Dronov) [2130210] - x86/sgx: Keep record of SGX page type (Vladis Dronov) [2130210] - x86/sgx: Create utility to validate user provided offset and length (Vladis Dronov) [2130210] - x86/sgx: Make sgx_ipi_cb() available internally (Vladis Dronov) [2130210] - x86/sgx: Move PTE zap code to new sgx_zap_enclave_ptes() (Vladis Dronov) [2130210] - x86/sgx: Rename sgx_encl_ewb_cpumask() as sgx_encl_cpumask() (Vladis Dronov) [2130210] - x86/sgx: Export sgx_encl_ewb_cpumask() (Vladis Dronov) [2130210] - x86/sgx: Support loading enclave page without VMA permissions check (Vladis Dronov) [2130210] - x86/sgx: Add wrapper for SGX2 EAUG function (Vladis Dronov) [2130210] - x86/sgx: Add wrapper for SGX2 EMODT function (Vladis Dronov) [2130210] - x86/sgx: Add wrapper for SGX2 EMODPR function (Vladis Dronov) [2130210] - x86/sgx: Add short descriptions to ENCLS wrappers (Vladis Dronov) [2130210] - x86/sgx: Ensure no data in PCMD page after truncate (Vladis Dronov) [2130210] - x86/sgx: Fix race between reclaimer and page fault handler (Vladis Dronov) [2130210] - x86/sgx: Obtain backing storage page with enclave mutex held (Vladis Dronov) [2130210] - x86/sgx: Mark PCMD page as dirty when modifying contents (Vladis Dronov) [2130210] - x86/sgx: Disconnect backing page references from dirty status (Vladis Dronov) [2130210] - HID: intel-ish-hid: ipc: Add Meteor Lake PCI device ID (Tony Camuso) [2132441] - hid: intel-ish-hid: ishtp: Fix ishtp client sending disordered message (Tony Camuso) [2132441] - HID: ishtp-hid-clientHID: ishtp-hid-client: Fix comment typo (Tony Camuso) [2132441] - ID: intel-ish-hid: hid-client: drop unexpected word "the" in the comments (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: use time_before to replace "jiffies < a" (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: add ADL and RPL device id (Tony Camuso) [2132441] - HID: intel-ish-hid: Use dma_alloc_coherent for firmware update (Tony Camuso) [2132441] - HID: intel-ish-hid: ishtp-fw-loader: Fix a kernel-doc formatting issue (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: Specify no cache snooping on TGL and ADL (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: only enable IRQ wakeup when requested (Tony Camuso) [2132441] - HID: intel-ish-hid: fix module device-id handling (Tony Camuso) [2132441] - HID: intel-ish-hid: hid-client: only load for matching devices (Tony Camuso) [2132441] - HID: intel-ish-hid: fw-loader: only load for matching devices (Tony Camuso) [2132441] - HID: intel-ish-hid: use constants for modaliases (Tony Camuso) [2132441] - s390/pci: add missing EX_TABLE entries to __pcistg_mio_inuser()/__pcilg_mio_inuser() (Tobias Huschle) [2141963] - s390/futex: add missing EX_TABLE entry to __futex_atomic_op() (Tobias Huschle) [2141963] - s390/uaccess: add missing EX_TABLE entries to __clear_user() (Tobias Huschle) [2141963] - net: usb: ax88179_178a: Fix packet receiving (Jose Ignacio Tornos Martinez) [2142725] {CVE-2022-2964} - net: usb: ax88179_178a: Fix out-of-bounds accesses in RX fixup (Jose Ignacio Tornos Martinez) [2142725] {CVE-2022-2964} - drm/i915/rpl-p: Add PCI IDs (Jocelyn Falempe) [2115880] - Revert "dma-buf: remove useless FMODE_LSEEK flag" (Jocelyn Falempe) [2115880] - drm/amd/display: Increase stack frame size limit for a few files. (Jocelyn Falempe) [2115880] - drm_crtc.h is missing include/linux/slab.h (Jocelyn Falempe) [2115880] - drm/amd/display: remove a duplicated declaration (Jocelyn Falempe) [2115880] - Revert "mm: shrinkers: provide shrinkers with names" (Jocelyn Falempe) [2115880] - Revert "drm/amdkfd: add SPM support for SVM" (Jocelyn Falempe) [2115880] - Merge DRM changes from upstream v5.19..v6.0 (Jocelyn Falempe) [2115880] - drm/i915/gvt: IMPORT_MODULE_NS workaround (Jocelyn Falempe) [2115880] - Replace EXPORT_SYMBOL_NS_GPL with EXPORT_SYMBOL_GPL (Jocelyn Falempe) [2115880] - Revert "vfio/gvt: Fix open/close when multiple device FDs are open" (Michel Dänzer) [2115880] - Revert "vfio/mdev: Pass in a struct vfio_device * to vfio_dma_rw()" (Jocelyn Falempe) [2115880] - Revert "drm/i915/gvt: convert to use vfio_register_emulated_iommu_dev" (Jocelyn Falempe) [2115880] - Revert "drm/i915/gvt: merge gvt.c into kvmgvt.c" (Jocelyn Falempe) [2115880] - Revert "vfio/mdev: Remove mdev_parent_ops" (Jocelyn Falempe) [2115880] - Revert "vfio: Make vfio_(un)register_notifier accept a vfio_device" (Jocelyn Falempe) [2115880] - Revert "drm/i915/gvt: Change from vfio_group_(un)pin_pages to vfio_(un)pin_pages" (Jocelyn Falempe) [2115880] - Revert "vfio: remove VFIO_GROUP_NOTIFY_SET_KVM" (Jocelyn Falempe) [2115880] - Revert "i915: Call aops write_begin() and write_end() directly" (Jocelyn Falempe) [2115880] - Merge DRM changes from upstream v5.18..v5.19 (Jocelyn Falempe) [2115880] - crypto: testmgr - disallow plain cbcmac(aes) and ghash in FIPS mode (Vladis Dronov) [2107595] - crypto: set the required FIPS_INTERNAL flag for gcm and ccm (Vladis Dronov) [2107595] - crypto: seqiv - flag instantiations as FIPS compliant (Vladis Dronov) [2107595] - crypto: xts - restrict key lengths to approved values in FIPS mode (Vladis Dronov) [2107595] - crypto: api - allow algs only in specific constructions in FIPS mode (Vladis Dronov) [2107595] - crypto: api - check for ERR pointers in crypto_destroy_tfm() (Vladis Dronov) [2107595] - crypto: api - Fix use-after-free and race in crypto_spawn_alg (Vladis Dronov) [2107595] - crypto: algapi - Avoid spurious modprobe on LOADED (Vladis Dronov) [2107595] - crypto: api - Retain alg refcount in crypto_grab_spawn (Vladis Dronov) [2107595] - crypto: api - Do not zap spawn->alg (Vladis Dronov) [2107595] - crypto: api - Fix race condition in crypto_spawn_alg (Vladis Dronov) [2107595] - crypto: api - Check spawn->alg under lock in crypto_drop_spawn (Vladis Dronov) [2107595] - crypto: algapi - reject NULL crypto_spawn::inst (Vladis Dronov) [2107595] - iavf: remove INITIAL_MAC_SET to allow gARP to work properly (Stefan Assmann) [1938635] - mm, slab: remove duplicate kernel-doc comment for ksize() (Michal Schmidt) [2143367] - slab: Introduce kmalloc_size_roundup() (Michal Schmidt) [2143367] - thermal: int340x: Mode setting with new OS handshake (Prarit Bhargava) [2072652] - thermal: int340x: Update OS policy capability handshake (Prarit Bhargava) [2072652] - hugetlb: remove unnecessary set_page_count in prep_compound_gigantic_page (Chris von Recklinghausen) [2143631] - mm/hugetlb: clear compound_nr before freeing gigantic pages (Chris von Recklinghausen) [2143631] - uprobes: __replace_page() avoid BUG in munlock_vma_page() (Chris von Recklinghausen) [2143631] - s390/boot: add secure boot trailer (Tobias Huschle) [2141967] - ice: Fix configuring VIRTCHNL_OP_CONFIG_VSI_QUEUES with unbalanced queues (Michal Schmidt) [2137378] - nvme: wait until quiesce is done (Ming Lei) [2144258] - scsi: make sure that request queue queiesce and unquiesce balanced (Ming Lei) [2144258] - scsi: avoid to quiesce sdev->request_queue two times (Ming Lei) [2144258] - dm: don't stop request queue after the dm device is suspended (Ming Lei) [2144258]- ata: libata-core: Print timeout value when internal command times (Ewan D. Milne) [1823688] - ata: libata-core: fix sloppy parameter type in ata_exec_internal[_sg]() (Ewan D. Milne) [1823688] - ata: libata-core: make ata_exec_internal_sg() *static* (Ewan D. Milne) [1823688] - perf/x86/intel: Fix unchecked MSR access error for Alder Lake N (Michael Petlan) [2104807] - perf/x86/intel: Fix PEBS data source encoding for ADL (Michael Petlan) [2104807] - perf/x86/intel: Fix PEBS memory access info encoding for ADL (Michael Petlan) [2104807] - i40e: Fix DMA mappings leak (Ivan Vecera) [2077847] - fbcon: Fix delayed takeover locking (Jocelyn Falempe) [2134795] - fbcon: use min() to make code cleaner (Jocelyn Falempe) [2134795] - fbcon: Use array3_size() helper in scr_memcpyw() (Jocelyn Falempe) [2134795] - fbcon: Maintain a private array of fb_info (Jocelyn Falempe) [2134795] - fbcon: untangle fbcon_exit (Jocelyn Falempe) [2134795] - fbcon: Move more code into fbcon_release (Jocelyn Falempe) [2134795] - fbcon: Move console_lock for register/unlink/unregister (Jocelyn Falempe) [2134795] - fbcon: Consistently protect deferred_takeover with console_lock() (Jocelyn Falempe) [2134795] - fbcon: use lock_fb_info in fbcon_open/release (Jocelyn Falempe) [2134795] - fbcon: move more common code into fb_open() (Jocelyn Falempe) [2134795] - fbcon: Ditch error handling for con2fb_release_oldinfo (Jocelyn Falempe) [2134795] - fbcon: Extract fbcon_open/release helpers (Jocelyn Falempe) [2134795] - fb: Delete fb_info->queue (Jocelyn Falempe) [2134795] - fbcon: Replace FBCON_FLAGS_INIT with a boolean (Jocelyn Falempe) [2134795] - fbcon: Use delayed work for cursor (Jocelyn Falempe) [2134795] - fbdev/sysfs: Fix locking (Jocelyn Falempe) [2134795] - fbcon: delete delayed loading code (Jocelyn Falempe) [2134795] - fbcon: Introduce wrapper for console->fb_info lookup (Jocelyn Falempe) [2134795] - fbcon: Move fbcon_bmove(_rec) functions (Jocelyn Falempe) [2134795] - fbcon: delete a few unneeded forward decl (Jocelyn Falempe) [2134795] - fbcon: Avoid 'cap' set but not used warning (Jocelyn Falempe) [2134795] - video: fbcon: Fix warnings by using pr_debug() in fbcon (Jocelyn Falempe) [2134795] - fbcon: Fix user font detection test at fbcon_resize(). (Jocelyn Falempe) [2134795] - fbcon: remove now unusued 'softback_lines' cursor() argument (Jocelyn Falempe) [2134795] - fbcon: remove soft scrollback code (Jocelyn Falempe) [2134795] - fbcon: prevent user font height or width change from causing potential out-of-bounds access (Jocelyn Falempe) [2134795] - fbmem: pull fbcon_update_vcs() out of fb_set_var() (Jocelyn Falempe) [2134795] - fbcon: fix null-ptr-deref in fbcon_switch (Jocelyn Falempe) [2134795] - fbcon: Adjust indentation in set_con2fb_map (Jocelyn Falempe) [2134795] - fbdev: Unexport unlink_framebuffer() (Jocelyn Falempe) [2134795] - backlight: drop EARLY_EVENT_BLANK support (Jocelyn Falempe) [2134795] - fbcon: Export fbcon_update_vcs (Jocelyn Falempe) [2134795] - backlight: simplify lcd notifier (Jocelyn Falempe) [2134795] - fbcon: Document what I learned about fbcon locking (Jocelyn Falempe) [2134795] - fbcon: Call con2fb_map functions directly (Jocelyn Falempe) [2134795] - fbcon: replace FB_EVENT_MODE_CHANGE/_ALL with direct calls (Jocelyn Falempe) [2134795] - fb: Flatten control flow in fb_set_var (Jocelyn Falempe) [2134795] - fbdev: remove FBINFO_MISC_USEREVENT around fb_blank (Jocelyn Falempe) [2134795] - fbmem: pull fbcon_fb_blanked out of fb_blank (Jocelyn Falempe) [2134795] - Revert "backlight/fbcon: Add FB_EVENT_CONBLANK" (Jocelyn Falempe) [2134795] - fbdev: Call fbcon_get_requirement directly (Jocelyn Falempe) [2134795] - fbcon: Call fbcon_mode_deleted/new_modelist directly (Jocelyn Falempe) [2134795] - fbdev: directly call fbcon_suspended/resumed (Jocelyn Falempe) [2134795] - fbdev: unify unlink_framebuffer paths (Jocelyn Falempe) [2134795] - fbdev: make unregister/unlink functions not fail (Jocelyn Falempe) [2134795] - fbcon: call fbcon_fb_bind directly (Jocelyn Falempe) [2134795] - fbcon: call fbcon_fb_(un)registered directly (Jocelyn Falempe) [2134795] - fbdev: fbmem: fix memory access if logo is bigger than the screen (Jocelyn Falempe) [2134795] - fbdev: add kerneldoc do remove_conflicting_framebuffers() (Jocelyn Falempe) [2134795] - fbdev: allow apertures == NULL in remove_conflicting_framebuffers() (Jocelyn Falempe) [2134795] - fbdev: show fbdev number for debugging (Jocelyn Falempe) [2134795] - fbcon: use kvmalloc() for scrollback buffer (Jocelyn Falempe) [2134795] - fbdev: fbcon: Fix unregister crash when more than one framebuffer (Jocelyn Falempe) [2134795] - fb: fix lost console when the user unplugs a USB adapter (Jocelyn Falempe) [2134795] - fbcon: introduce for_each_registered_fb() helper (Jocelyn Falempe) [2134795] - timers/nohz: Last resort update jiffies on nohz_full IRQ entry (Waiman Long) [2108387] - irq: Call tick_irq_enter() inside HARDIRQ_OFFSET (Waiman Long) [2108387] - irqtime: Move irqtime entry accounting after irq offset incrementation (Waiman Long) [2108387] - sched/vtime: Consolidate IRQ time accounting (Waiman Long) [2108387] - s390/vtime: Use the generic IRQ entry accounting (Waiman Long) [2108387] - sched/cputime: Remove symbol exports from IRQ time accounting (Waiman Long) [2108387] - genirq/irqdomain: Don't try to free an interrupt that has no mapping (Waiman Long) [2108387] - genirq: Provide __irq_enter/exit_raw() (Waiman Long) [2108387] - powerpc/time: Only set CONFIG_ARCH_HAS_SCALED_CPUTIME on PPC64 (Waiman Long) [2108387] - powerpc/time: isolate scaled cputime accounting in dedicated functions. (Waiman Long) [2108387] - perf: Fix list corruption in perf_cgroup_switch() (Aaron Tomlin) [2136548] - gen_compile_commands: fix issues in RHEL-8 (Íñigo Huguet) [2136840] - .gitignore: Add compilation database file (Íñigo Huguet) [2136840] - gen_compile_commands: fix missing 'sys' package (Íñigo Huguet) [2136840] - gen_compile_commands: extract compiler command from a series of commands (Íñigo Huguet) [2136840] - gen_compile_commands: prune some directories (Íñigo Huguet) [2136840] - scripts/clang-tools: switch explicitly to Python 3 (Íñigo Huguet) [2136840] - Makefile: Add clang-tidy and static analyzer support to makefile (Íñigo Huguet) [2136840] - kbuild: wire up the build rule of compile_commands.json to Makefile (Íñigo Huguet) [2136840] - gen_compile_commands: remove the warning about too few .cmd files (Íñigo Huguet) [2136840] - gen_compile_commands: support *.o, *.a, modules.order in positional argument (Íñigo Huguet) [2136840] - gen_compile_commands: move directory walk to a generator function (Íñigo Huguet) [2136840] - gen_compile_commands: make -o option independent of -d option (Íñigo Huguet) [2136840] - gen_compile_commands: reword the help message of -d option (Íñigo Huguet) [2136840] - gen_compile_commands: do not support .cmd files under tools/ directory (Íñigo Huguet) [2136840] - gen_compile_commands: use choices for --log_levels option (Íñigo Huguet) [2136840] - gen_compile_commands: parse only the first line of .*.cmd files (Íñigo Huguet) [2136840] - gen_compile_commands: lower the entry count threshold (Íñigo Huguet) [2136840] - scripts: add a tool to produce a compile_commands.json file (Íñigo Huguet) [2136840] - iavf: Do not restart Tx queues after reset task failure (Petr Oros) [2134005] - iavf: Fix a crash during reset task (Petr Oros) [2134005] - spec: add bpf_testmod.ko to kselftests/bpf (Yauheni Kaliuta) [2140082] - fuse: fix readdir cache race (Miklos Szeredi) [2131391] - ice: config netdev tc before setting queues number (Petr Oros) [2103946] - ice: Fix ice_xdp_xmit() when XDP TX queue number is not sufficient (Petr Oros) [2103946] - ice: Don't double unplug aux on peer initiated reset (Petr Oros) [2103946] - ice: use bitmap_free instead of devm_kfree (Petr Oros) [2103946] - ice: Fix DMA mappings leak (Petr Oros) [2103946] - ice: Fix call trace with null VSI during VF reset (Petr Oros) [2103946] - ice: Fix VSI rebuild WARN_ON check for VF (Petr Oros) [2103946] - net/ice: fix initializing the bitmap in the switch code (Petr Oros) [2103946] - net: ice: fix error NETIF_F_HW_VLAN_CTAG_FILTER check in ice_vsi_sync_fltr() (Petr Oros) [2103946] - ice: allow toggling loopback mode via ndo_set_features callback (Petr Oros) [2103946] - ice: compress branches in ice_set_features() (Petr Oros) [2103946] - ice: Add support for PPPoE hardware offload (Petr Oros) [2103946] - ice: add i2c write command (Petr Oros) [2103946] - ice: Remove pci_aer_clear_nonfatal_status() call (Petr Oros) [2103946] - ice: Remove unnecessary NULL check before dev_put (Petr Oros) [2103946] - ice: use eth_broadcast_addr() to set broadcast address (Petr Oros) [2103946] - ice: switch: dynamically add VLAN headers to dummy packets (Petr Oros) [2103946] - ice: Add support for VLAN TPID filters in switchdev (Petr Oros) [2103946] - ice: Add support for double VLAN in switchdev (Petr Oros) [2103946] - intel/ice:fix repeated words in comments (Petr Oros) [2103946] - drivers/net/ethernet/intel: fix typos in comments (Petr Oros) [2103946] - ice: Use correct order for the parameters of devm_kcalloc() (Petr Oros) [2103946] - ice: remove u16 arithmetic in ice_gnss (Petr Oros) [2103946] - ice: remove VLAN representor specific ops (Petr Oros) [2103946] - ice: don't set VF VLAN caps in switchdev (Petr Oros) [2103946] - kernel-doc: fix undefined args variable (Jan Stancek) [2134954]- sunrpc: Set sk_allocation to GFP_NOFS to avoid using current->task_frag. (Guillaume Nault) [2089660] - selftests/vm: enable running select groups of tests (Joel Savitz) [2089502] - selftests: make use of GUP_TEST_FILE macro (Nico Pache) [2089502] - selftests: clarify common error when running gup_test (Nico Pache) [2089502] - tools/testing/selftests/vm/gup_test.c: clarify error statement (Nico Pache) [2089502] - mm: remove the extra ZONE_DEVICE struct page refcount (Chris von Recklinghausen) [2082247] - mm: simplify freeing of devmap managed pages (Chris von Recklinghausen) [2082247] - mm: move free_devmap_managed_page to memremap.c (Chris von Recklinghausen) [2082247] - mm/memremap: add ZONE_DEVICE support for compound pages (Chris von Recklinghausen) [2082247] - mm/page_alloc: refactor memmap_init_zone_device() page init (Chris von Recklinghausen) [2082247] - mm/page_alloc: split prep_compound_page into head and tail subparts (Chris von Recklinghausen) [2082247] - mm/debug: sync up MR_CONTIG_RANGE and MR_LONGTERM_PIN (Chris von Recklinghausen) [2082247] - mm: gup: use helper PAGE_ALIGNED in populate_vma_page_range() (Chris von Recklinghausen) [2082247] - mm: gup: remove useless BUG_ON in __get_user_pages() (Chris von Recklinghausen) [2082247] - mm: gup: remove unneed local variable orig_refs (Chris von Recklinghausen) [2082247] - mm: gup: remove set but unused local variable major (Chris von Recklinghausen) [2082247] - writeback: make the laptop_mode prototypes available unconditionally (Chris von Recklinghausen) [2082247] - mm: hide laptop_mode_wb_timer entirely behind the BDI API (Chris von Recklinghausen) [2082247] - mm: remove special swap entry functions (Chris von Recklinghausen) [2082247] - hugetlb: address ref count racing in prep_compound_gigantic_page (Chris von Recklinghausen) [2082247] - hugetlb: remove prep_compound_huge_page cleanup (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): get vma_address_end() earlier (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): use goto instead of while (1) (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): add a level of indentation (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): crossing page table boundary (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): prettify PVMW_MIGRATION block (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): use pmde for *pvmw->pmd (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): settle PageHuge on entry (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): use page for pvmw->page (Chris von Recklinghausen) [2082247] - mm/gup: longterm pin migration cleanup (Chris von Recklinghausen) [2082247] - mm/gup: change index type to long as it counts pages (Chris von Recklinghausen) [2082247] - mm/gup: migrate pinned pages out of movable zone (Chris von Recklinghausen) [2082247] - mm: honor PF_MEMALLOC_PIN for all movable pages (Chris von Recklinghausen) [2082247] - mm cma: rename PF_MEMALLOC_NOCMA to PF_MEMALLOC_PIN (Chris von Recklinghausen) [2082247] - mm/huge_memory.c: use helper function migration_entry_to_page() (Chris von Recklinghausen) [2082247] - block: add queue_to_disk() to get gendisk from request_queue (Chris von Recklinghausen) [2082247] - mm/hugetlb: remove redundant check in preparing and destroying gigantic page (Chris von Recklinghausen) [2082247] - mm/hugetlb: use helper huge_page_order and pages_per_huge_page (Chris von Recklinghausen) [2082247] - mm: handle zone device pages in release_pages() (Chris von Recklinghausen) [2082247] - mm/gup: remove the vma allocation from gup_longterm_locked() (Chris von Recklinghausen) [2082247] - mm/mremap_pages: fix static key devmap_managed_key updates (Chris von Recklinghausen) [2082247] - mm/memremap.c: convert devmap static branch to {inc,dec} (Chris von Recklinghausen) [2082247] - mm/page_alloc: handle a missing case for memalloc_nocma_{save/restore} APIs (Chris von Recklinghausen) [2082247] - mm: store compound_nr as well as compound_order (Chris von Recklinghausen) [2082247] - mm: clean up the last pieces of page fault accountings (Chris von Recklinghausen) [2082247] - mm/x86: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm/s390: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm/powerpc: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm/arm64: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm: do page fault accounting in handle_mm_fault (Chris von Recklinghausen) [2082247] - include/linux/sched/mm.h: optimize current_gfp_context() (Chris von Recklinghausen) [2082247] - mm/page_alloc: fix memalloc_nocma_{save/restore} APIs (Chris von Recklinghausen) [2082247] - mm: remove redundant check non_swap_entry() (Chris von Recklinghausen) [2082247] - mm: rename gfpflags_to_migratetype to gfp_migratetype for same convention (Chris von Recklinghausen) [2082247] - mm,page_alloc,cma: conditionally prefer cma pageblocks for movable allocations (Chris von Recklinghausen) [2082247] - mm/vma: introduce VM_ACCESS_FLAGS (Chris von Recklinghausen) [2082247] - mm/vma: make vma_is_accessible() available for general use (Chris von Recklinghausen) [2082247] - kernel/events/uprobes.c: only do FOLL_SPLIT_PMD for uprobe register (Chris von Recklinghausen) [2082247] - uprobe: collapse THP pmd after removing all uprobes (Chris von Recklinghausen) [2082247] - uprobe: use FOLL_SPLIT_PMD instead of FOLL_SPLIT (Chris von Recklinghausen) [2082247] - mm, thp: introduce FOLL_SPLIT_PMD (Chris von Recklinghausen) [2082247] - mm: clean up is_device_*_page() definitions (Chris von Recklinghausen) [2082247] - driver core: Add helper device_find_child_by_name() (Chris von Recklinghausen) [2082247] - mm/page_alloc.c: remove unnecessary parameter in rmqueue_pcplist (Chris von Recklinghausen) [2082247] - sctp: handle the error returned from sctp_auth_asoc_init_active_key (Xin Long) [2134892] - sctp: leave the err path free in sctp_stream_init to sctp_stream_free (Xin Long) [2134892] - sctp: fix sleep in atomic context bug in timer handlers (Xin Long) [2134892] - stcp: Use memset_after() to zero sctp_stream_out_ext (Xin Long) [2134892] - sctp: read sk->sk_bound_dev_if once in sctp_rcv() (Xin Long) [2134892] - ethtool: add header/data split indication (Ivan Vecera) [2135624] - xfrm: store and rely on direction to construct offload flags (Sabrina Dubroca) [2137562] - platform/x86/intel: pmc: Support Intel Raptorlake P (Prarit Bhargava) [2076736]- KVM: selftests: Build the memslot tests for arm64 (Gavin Shan) [2132161] - KVM: selftests: Fix number of pages for memory slot in memslot_modification_stress_test (Gavin Shan) [2132161] - tools/include: Add _RET_IP_ and math definitions to kernel.h (Gavin Shan) [2132161] - tcp: fix early ETIMEDOUT after spurious non-SACK RTO (Davide Caratti) [2136409] - tcp: add a missing nf_reset_ct() in 3WHS handling (Davide Caratti) [2136409] - sock: redo the psock vs ULP protection check (Davide Caratti) [2136409] - tcp: tcp_rtx_synack() can be called from process context (Davide Caratti) [2136409] - tcp: fix tcp_mtup_probe_success vs wrong snd_cwnd (Davide Caratti) [2136409] - tcp: fix F-RTO may not work correctly when receiving DSACK (Davide Caratti) [2136409] - selftests: xsk: do not send zero-length packets (Ivan Vecera) [2135634] - selftests/xsk: Introduce XDP prog load based on existing AF_XDP socket (Ivan Vecera) [2135634] - selftests, xsk: Fix rx_full stats test (Ivan Vecera) [2135634] - selftests/bpf: Fix xdpxceiver failures for no hugepages (Ivan Vecera) [2135634] - selftests/xsk: Add missing close() on netns fd (Ivan Vecera) [2135634] - selftests, xsk: Fix bpf_res cleanup test (Ivan Vecera) [2135634] - selftests: xsk: Add frame_headroom test (Ivan Vecera) [2135634] - selftests: xsk: Change interleaving of packets in unaligned mode (Ivan Vecera) [2135634] - selftests: xsk: Add single packet test (Ivan Vecera) [2135634] - selftests: xsk: Introduce pacing of traffic (Ivan Vecera) [2135634] - selftests: xsk: Fix socket creation retry (Ivan Vecera) [2135634] - selftests: xsk: Put the same buffer only once in the fill ring (Ivan Vecera) [2135634] - selftests: xsk: Fix missing initialization (Ivan Vecera) [2135634] - selftests: xsk: Add tests for 2K frame size (Ivan Vecera) [2135634] - selftests: xsk: Add tests for invalid xsk descriptors (Ivan Vecera) [2135634] - selftests: xsk: Eliminate test specific if-statement in test runner (Ivan Vecera) [2135634] - selftests: xsk: Add test for unaligned mode (Ivan Vecera) [2135634] - selftests: xsk: Introduce replacing the default packet stream (Ivan Vecera) [2135634] - selftests: xsk: Allow for invalid packets (Ivan Vecera) [2135634] - selftests: xsk: Eliminate MAX_SOCKS define (Ivan Vecera) [2135634] - selftests: xsx: Make pthreads local scope (Ivan Vecera) [2135634] - selftests: xsk: Make xdp_flags and bind_flags local (Ivan Vecera) [2135634] - selftests: xsk: Specify number of sockets to create (Ivan Vecera) [2135634] - selftests: xsk: Replace second_step global variable (Ivan Vecera) [2135634] - selftests: xsk: Introduce rx_on and tx_on in ifobject (Ivan Vecera) [2135634] - selftests: xsk: Add use_poll to ifobject (Ivan Vecera) [2135634] - selftests: xsx: Introduce test name in test spec (Ivan Vecera) [2135634] - selftests: xsk: Make frame_size configurable (Ivan Vecera) [2135634] - selftests: xsk: Move rxqsize into xsk_socket_info (Ivan Vecera) [2135634] - selftests: xsk: Move num_frames and frame_headroom to xsk_umem_info (Ivan Vecera) [2135634] - selftests: xsk: Introduce test specifications (Ivan Vecera) [2135634] - selftests: xsk: Introduce type for thread function (Ivan Vecera) [2135634] - selftests: xsk: Simplify xsk and umem arrays (Ivan Vecera) [2135634] - selftests: xsk: Preface options with opt (Ivan Vecera) [2135634] - selftests: xsk: Make enums lower case (Ivan Vecera) [2135634] - selftests: xsk: Generate packets from specification (Ivan Vecera) [2135634] - selftests: xsk: Generate packet directly in umem (Ivan Vecera) [2135634] - selftests: xsk: Simplify cleanup of ifobjects (Ivan Vecera) [2135634] - selftests: xsk: Decrease sending speed (Ivan Vecera) [2135634] - selftests: xsk: Validate tx stats on tx thread (Ivan Vecera) [2135634] - selftests: xsk: Simplify packet validation in xsk tests (Ivan Vecera) [2135634] - selftests: xsk: Rename worker_* functions that are not thread entry points (Ivan Vecera) [2135634] - selftests: xsk: Disassociate umem size with packets sent (Ivan Vecera) [2135634] - selftests: xsk: Remove end-of-test packet (Ivan Vecera) [2135634] - selftests: xsk: Simplify the retry code (Ivan Vecera) [2135634] - selftests: xsk: Return correct error codes (Ivan Vecera) [2135634] - selftests: xsk: Remove unused variables (Ivan Vecera) [2135634] - selftests: xsk: Remove the num_tx_packets option (Ivan Vecera) [2135634] - selftests: xsk: Remove color mode (Ivan Vecera) [2135634] - xsk: Fix possible crash when multiple sockets are created (Ivan Vecera) [2135634] - i40e: xsk: Move tmp desc array from driver to pool (Ivan Vecera) [2135634] - xsk: Initialise xskb free_list_node (Ivan Vecera) [2135634] - xsk: Fix corrupted packets for XDP_SHARED_UMEM (Ivan Vecera) [2135634] - xsk: Fix clang build error in __xp_alloc (Ivan Vecera) [2135634] - xsk: Do not write NULL in SW ring at allocation failure (Ivan Vecera) [2135634] - xsk: Fix crash on double free in buffer pool (Ivan Vecera) [2135634] - xsk: Optimize for aligned case (Ivan Vecera) [2135634] - xsk: Batched buffer allocation for the pool (Ivan Vecera) [2135634] - xsk: Get rid of unused entry in struct xdp_buff_xsk (Ivan Vecera) [2135634] - redhat/configs: Move config files under common/generic/x86 to generic/x86_64 (Waiman Long) [2139172] - fbmem: Check virtual screen sizes in fb_set_var() (Wander Lairson Costa) [2109116] {CVE-2021-33655} - fbcon: Prevent that screen size is smaller than font size (Wander Lairson Costa) [2109116] {CVE-2021-33655} - fbcon: Disallow setting font bigger than screen size (Wander Lairson Costa) [2109116] {CVE-2021-33655} - video: of_display_timing.h: include errno.h (Wander Lairson Costa) [2109116] {CVE-2021-33655} - MAINTAINERS: pick up all vfio_ap docs for VFIO AP maintainers (Cédric Le Goater) [1660908] - s390/docs: fix warnings for vfio_ap driver doc (Cédric Le Goater) [1660908] - s390/docs: fix warnings for vfio_ap driver lock usage doc (Cédric Le Goater) [1660908] - s390/Docs: new doc describing lock usage by the vfio_ap device driver (Cédric Le Goater) [1660908] - s390/vfio-ap: bypass unnecessary processing of AP resources (Cédric Le Goater) [1660908] - s390/vfio-ap: update docs to include dynamic config support (Cédric Le Goater) [1660908] - s390/vfio-ap: handle config changed and scan complete notification (Cédric Le Goater) [1660908] - s390/vfio-ap: sysfs attribute to display the guest's matrix (Cédric Le Goater) [1660908] - s390/vfio-ap: implement in-use callback for vfio_ap driver (Cédric Le Goater) [1660908] - s390/vfio-ap: reset queues after adapter/domain unassignment (Cédric Le Goater) [1660908] - s390/vfio-ap: hot plug/unplug of AP devices when probed/removed (Cédric Le Goater) [1660908] - s390/vfio-ap: allow hot plug/unplug of AP devices when assigned/unassigned (Cédric Le Goater) [1660908] - s390/vfio-ap: prepare for dynamic update of guest's APCB on queue probe/remove (Cédric Le Goater) [1660908] - s390/vfio-ap: prepare for dynamic update of guest's APCB on assign/unassign (Cédric Le Goater) [1660908] - s390/vfio-ap: use proper locking order when setting/clearing KVM pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: introduce new mutex to control access to the KVM pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: rename matrix_dev->lock mutex to matrix_dev->mdevs_lock (Cédric Le Goater) [1660908] - s390/vfio-ap: allow assignment of unavailable AP queues to mdev device (Cédric Le Goater) [1660908] - s390/vfio-ap: refresh guest's APCB by filtering AP resources assigned to mdev (Cédric Le Goater) [1660908] - s390/vfio-ap: introduce shadow APCB (Cédric Le Goater) [1660908] - s390/vfio-ap: manage link between queue struct and matrix mdev (Cédric Le Goater) [1660908] - s390/vfio-ap: move probe and remove callbacks to vfio_ap_ops.c (Cédric Le Goater) [1660908] - s390/vfio-ap: use new AP bus interface to search for queue devices (Cédric Le Goater) [1660908] - s390/ap: fix error handling in __verify_queue_reservations() (Cédric Le Goater) [1660908] - s390/zcrypt: code cleanup (Cédric Le Goater) [1660908] - s390/zcrypt: fix wrong offset index for APKA master key valid state (Cédric Le Goater) [1660908] - s390/ap: uevent on apmask/aqpmask change (Cédric Le Goater) [1660908] - s390/vfio-ap: fix kernel doc and signature of group notifier functions (Cédric Le Goater) [1660908] - s390/ap: enable sysfs attribute scans to force AP bus rescan (Cédric Le Goater) [1660908] - s390/ap: fix crash on older machines based on QCI info missing (Cédric Le Goater) [1660908] - s390/ap: notify drivers on config changed and scan complete callbacks (Cédric Le Goater) [1660908] - s390/ap: driver callback to indicate resource in use (Cédric Le Goater) [1660908] - MAINTAINERS: update file path for S390 VFIO AP DRIVER (Cédric Le Goater) [1660908] - s390/vfio-ap: add status attribute to AP queue device's sysfs dir (Cédric Le Goater) [1660908] - s390/ap: function rework based on compiler warning (Cédric Le Goater) [1660908] - s390/vfio-ap: s390/crypto: fix all kernel-doc warnings (Cédric Le Goater) [1660908] - s390/ap: new module option ap.useirq (Cédric Le Goater) [1660908] - s390/ap: fix state machine hang after failure to enable irq (Cédric Le Goater) [1660908] - s390/crypto: fix all kernel-doc warnings in vfio_ap_ops.c (Cédric Le Goater) [1660908] - s390/ap: use the common device_driver pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: replace open coded locks for VFIO_GROUP_NOTIFY_SET_KVM notification (Cédric Le Goater) [1660908] - s390/vfio-ap: r/w lock for PQAP interception handler function pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: clean up mdev resources when remove callback invoked (Cédric Le Goater) [1660908] - s390/vfio-ap: clean up vfio_ap_drv's definition (Cédric Le Goater) [1660908] - s390/vfio-ap: fix circular lockdep when setting/clearing crypto masks (Cédric Le Goater) [1660908] - s390/vfio-ap: clean up vfio_ap resources when KVM pointer invalidated (Cédric Le Goater) [1660908] - s390/vfio-ap: No need to disable IRQ after queue reset (Cédric Le Goater) [1660908] - Documentation: s390/vfio-ap: eliminate duplicated word (Cédric Le Goater) [1660908] - docs: s390: Fix wrong label Guest2 instead of Guest3 (Cédric Le Goater) [1660908] - s390: vfio-ap: make local functions and data static (Cédric Le Goater) [1660908] - i40e: Fix set max_tx_rate when it is lower than 1 Mbps (Petr Oros) [2106964] - i40e: Fix VF set max MTU size (Petr Oros) [2106964] - iavf: Fix set max MTU size with port VLAN and jumbo frames (Petr Oros) [2106964] - iavf: Fix bad page state (Petr Oros) [2106964] - i40e: Fix VF hang when reset is triggered on another VF (Ivan Vecera) [2103801] - mpi3mr: a minor change (Tomas Henzl) [2115748] - scsi: mpi3mr: Select CONFIG_SCSI_SAS_ATTRS (Tomas Henzl) [2115748] - scsi: mpi3mr: Remove unnecessary cast (Tomas Henzl) [2115748] - scsi: mpi3mr: Update driver version to 8.2.0.3.0 (Tomas Henzl) [2115748] - scsi: mpi3mr: Fix scheduling while atomic type bug (Tomas Henzl) [2115748] - scsi: mpi3mr: Scan the devices during resume time (Tomas Henzl) [2115748] - scsi: mpi3mr: Free enclosure objects during driver unload (Tomas Henzl) [2115748] - scsi: mpi3mr: Handle 0xF003 Fault Code (Tomas Henzl) [2115748] - scsi: mpi3mr: Graceful handling of surprise removal of PCIe HBA (Tomas Henzl) [2115748] - scsi: mpi3mr: Support new power management framework (Tomas Henzl) [2115748] - scsi: mpi3mr: Update mpi3 header files (Tomas Henzl) [2115748] - scsi: mpi3mr: Fix error code in mpi3mr_transport_smp_handler() (Tomas Henzl) [2115748] - scsi: mpi3mr: Fix error codes in mpi3mr_report_manufacture() (Tomas Henzl) [2115748] - scsi: mpi3mr: Block I/Os while refreshing target dev objects (Tomas Henzl) [2115748] - scsi: mpi3mr: Refresh SAS ports during soft reset (Tomas Henzl) [2115748] - scsi: mpi3mr: Support SAS transport class callbacks (Tomas Henzl) [2115748] - scsi: mpi3mr: Add framework to issue MPT transport cmds (Tomas Henzl) [2115748] - scsi: mpi3mr: Add SAS SATA end devices to STL (Tomas Henzl) [2115748] - scsi: mpi3mr: Get target object based on rphy (Tomas Henzl) [2115748] - scsi: mpi3mr: Add expander devices to STL (Tomas Henzl) [2115748] - scsi: mpi3mr: Enable STL on HBAs where multipath is disabled (Tomas Henzl) [2115748] - scsi: mpi3mr: Add helper functions to manage device's port (Tomas Henzl) [2115748] - scsi: mpi3mr: Add helper functions to retrieve device objects (Tomas Henzl) [2115748] - scsi: mpi3mr: Add framework to add phys to STL (Tomas Henzl) [2115748] - scsi: mpi3mr: Enable Enclosure device add event (Tomas Henzl) [2115748] - scsi: mpi3mr: Add helper functions to retrieve config pages (Tomas Henzl) [2115748] - scsi: mpi3mr: Add framework to issue config requests (Tomas Henzl) [2115748] - scsi: mpi3mr: Add config and transport related debug flags (Tomas Henzl) [2115748] - scsi: mpi3mr: Delete a stray tab (Tomas Henzl) [2115748] - scsi: mpi3mr: Unlock on error path (Tomas Henzl) [2115748] - scsi: mpi3mr: Reduce VD queue depth on detecting throttling (Tomas Henzl) [2115748] - scsi: mpi3mr: Resource Based Metering (Tomas Henzl) [2115748] - scsi: mpi3mr: Increase cmd_per_lun to 128 (Tomas Henzl) [2115748] - scsi: mpi3mr: Enable shared host tagset (Tomas Henzl) [2115748] - lpfc version to 14.0.0.18. (Dick Kennedy) [2114050] - scsi: lpfc: Create a sysfs entry called lpfc_xcvr_data for transceiver info (Dick Kennedy) [2114050] - scsi: lpfc: Log when congestion management limits are in effect (Dick Kennedy) [2114050] - scsi: lpfc: Fix hard lockup when reading the rx_monitor from debugfs (Dick Kennedy) [2114050] - scsi: lpfc: Set sli4_param's cmf option to zero when CMF is turned off (Dick Kennedy) [2114050] - scsi: lpfc: Fix various issues reported by tools (Dick Kennedy) [2114050] - scsi: lpfc: Add reporting capability for Link Degrade Signaling (Dick Kennedy) [2114050] - scsi: lpfc: Rework FDMI attribute registration for unintential padding (Dick Kennedy) [2114050] - scsi: lpfc: Rework lpfc_fdmi_cmd() routine for cleanup and consistency (Dick Kennedy) [2114050] - scsi: lpfc: Update congestion mode logging for Emulex SAN Manager application (Dick Kennedy) [2114050] - scsi: lpfc: Fix multiple NVMe remoteport registration calls for the same NPort ID (Dick Kennedy) [2114050] - scsi: lpfc: Add missing free iocb and nlp kref put for early return VMID cases (Dick Kennedy) [2114050] - scsi: lpfc: Fix mbuf pool resource detected as busy at driver unload (Dick Kennedy) [2114050] - scsi: lpfc: Fix FLOGI ACC with wrong SID in PT2PT topology (Dick Kennedy) [2114050] - scsi: lpfc: Fix prli_fc4_req checks in PRLI handling (Dick Kennedy) [2114050] - scsi: lpfc: Remove unneeded result variable (Dick Kennedy) [2114050] - scsi: lpfc: Remove the unneeded result variable (Dick Kennedy) [2114050] - scsi: lpfc: Copyright updates for 14.2.0.6 patches (Dick Kennedy) [2114050] - scsi: lpfc: Add warning notification period to CMF_SYNC_WQE (Dick Kennedy) [2114050] - scsi: lpfc: Rework MIB Rx Monitor debug info logic (Dick Kennedy) [2114050] - scsi: lpfc: Fix null ndlp ptr dereference in abnormal exit path for GFT_ID (Dick Kennedy) [2114050] - scsi: lpfc: Fix unsolicited FLOGI receive handling during PT2PT discovery (Dick Kennedy) [2114050] - scsi: lpfc: Check the return value of alloc_workqueue() (Dick Kennedy) [2114050] - scsi: lpfc: Rework FDMI initialization after link up (Dick Kennedy) [2114050] - scsi: mpt3sas: Revert "scsi: mpt3sas: Fix ioc->base_readl() use" (Tomas Henzl) [2115763] - scsi: mpt3sas: Revert "scsi: mpt3sas: Fix writel() use" (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix return value check of dma_get_required_mask() (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix use-after-free warning (Tomas Henzl) [2115763] - scsi: mpt3sas: Update driver version to 43.100.00.00 (Tomas Henzl) [2115763] - scsi: mpt3sas: Increase cmd_per_lun to 128 (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix trace buffer registration failed (Tomas Henzl) [2115763] - scsi: mpt3sas: Don't change DMA mask while reallocating pools (Tomas Henzl) [2115763] - scsi: mpt3sas: Prevent error handler escalation when device removed (Tomas Henzl) [2115763] - scsi: mpt3sas: Disable MPI2_FUNCTION_FW_DOWNLOAD for ATTO devices (Tomas Henzl) [2115763] - scsi: mpt3sas: Add support for ATTO ExpressSAS H12xx GT devices (Tomas Henzl) [2115763] - scsi: mpt3sas: Remove flush_scheduled_work() call (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix whitespace and spelling mistake (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix typo in comment (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix out-of-bounds compiler warning (Tomas Henzl) [2115763] - media: em28xx: initialize refcount before kref_get (Dean Nelson) [2128003] {CVE-2022-3239} - gfs2: Register fs after creating workqueues (Bob Peterson) [2121201] - sysctl: returns -EINVAL when a negative value is passed to proc_doulongvec_minmax (Vratislav Bendel) [2139096] - mm/rmap: Fix anon_vma->degree ambiguity leading to double-reuse (Waiman Long) [2137585] {CVE-2022-42703} - mm: rmap: explicitly reset vma->anon_vma in unlink_anon_vmas() (Waiman Long) [2137585] {CVE-2022-42703} - mm/rmap: Fix typos in comments (Waiman Long) [2137585] {CVE-2022-42703} - iavf: Fix set max MTU size with port VLAN and jumbo frames (Stefan Assmann) [2103944] - iavf: Fix bad page state (Stefan Assmann) [2103944] - iavf: Fix cached head and tail value for iavf_get_tx_pending (Stefan Assmann) [2103944] - iavf: Fix change VF's mac address (Stefan Assmann) [2103944] - iavf: Fix race between iavf_close and iavf_reset_task (Stefan Assmann) [2103944] - net: ethernet: move from strlcpy with unused retval to strscpy (Stefan Assmann) [2103944] - iavf: Fix 'tc qdisc show' listing too many queues (Stefan Assmann) [2103944] - iavf: Fix max_rate limiting (Stefan Assmann) [2103944] - iavf: Check for duplicate TC flower filter before parsing (Stefan Assmann) [2103944] - iavf: Fix handling of dummy receive descriptors (Stefan Assmann) [2103944] - iavf: Disallow changing rx/tx-frames and rx/tx-frames-irq (Stefan Assmann) [2103944] - intel/iavf:fix repeated words in comments (Stefan Assmann) [2103944] - intel: remove unused macros (Stefan Assmann) [2103944] - iavf: Add waiting for response from PF in set mac (Stefan Assmann) [2103944] - iavf: Use irq_update_affinity_hint() (Stefan Assmann) [2103944] - net: Fix return value of qdisc ingress handling on success (Ivan Vecera) [2131361]- PCI: hv: Do not set PCI_COMMAND_MEMORY to reduce VM boot time (Emanuele Giuseppe Esposito) [2082836] - megaraid_sas: add #ifdef CONFIG_RHEL_DIFFERENCES (Tomas Henzl) [2119096] - mpt3sas: add #ifdef CONFIG_RHEL_DIFFERENCES (Tomas Henzl) [2119096] - mptcp: fix unreleased socket in accept queue (Paolo Abeni) [2135884] - mptcp: factor out __mptcp_close() without socket lock (Paolo Abeni) [2135884] - mptcp: do not queue data on closed subflows (Paolo Abeni) [2135884] - mptcp: move subflow cleanup in mptcp_destroy_common() (Paolo Abeni) [2135884] - mptcp: fix msk traversal in mptcp_nl_cmd_set_flags() (Paolo Abeni) [2135884] - xfs: fix perag reference leak on iteration race with growfs (Brian Foster) [2081105] - xfs: terminate perag iteration reliably on agcount (Brian Foster) [2081105] - xfs: rename the next_agno perag iteration variable (Brian Foster) [2081105] - xfs: fold perag loop iteration logic into helper function (Brian Foster) [2081105] - xfs: prevent spoofing of rtbitmap blocks when recovering buffers (Brian Foster) [2081105] - xfs: Enforce attr3 buffer recovery order (Brian Foster) [2081105] - xfs: avoid unnecessary waits in xfs_log_force_lsn() (Brian Foster) [2081105] - xfs: factor out forced iclog flushes (Brian Foster) [2081105] - xfs: detect misaligned rtinherit directory extent size hints (Brian Foster) [2081105] - xfs: fix an integer overflow error in xfs_growfs_rt (Brian Foster) [2081105] - xfs: improve FSGROWFSRT precondition checking (Brian Foster) [2081105] - xfs: reset child dir '..' entry when unlinking child (Brian Foster) [2081105] - xfs: check for sparse inode clusters that cross new EOAG when shrinking (Brian Foster) [2081105] - xfs: Fix multiple fall-through warnings for Clang (Brian Foster) [2081105] - xfs: remove callback dequeue loop from xlog_state_do_iclog_callbacks (Brian Foster) [2081105] - xfs: don't nest icloglock inside ic_callback_lock (Brian Foster) [2081105] - xfs: Initialize error in xfs_attr_remove_iter (Brian Foster) [2081105] - xfs: remove dead stale buf unpin handling code (Brian Foster) [2081105] - xfs: hold buffer across unpin and potential shutdown processing (Brian Foster) [2081105] - xfs: force the log offline when log intent item recovery fails (Brian Foster) [2081105] - xfs: shorten the shutdown messages to a single line (Brian Foster) [2081105] - xfs: print name of function causing fs shutdown instead of hex pointer (Brian Foster) [2081105] - xfs: fix type mismatches in the inode reclaim functions (Brian Foster) [2081105] - xfs: separate primary inode selection criteria in xfs_iget_cache_hit (Brian Foster) [2081105] - xfs: refactor the inode recycling code (Brian Foster) [2081105] - xfs: add iclog state trace events (Brian Foster) [2081105] - xfs: xfs_log_force_lsn isn't passed a LSN (Brian Foster) [2081105] - xfs: remove need_start_rec parameter from xlog_write() (Brian Foster) [2081105] - xfs: remove xfs_blkdev_issue_flush (Brian Foster) [2081105] - xfs: Fix 64-bit division on 32-bit in xlog_state_switch_iclogs() (Brian Foster) [2081105] - xfs: log stripe roundoff is a property of the log (Brian Foster) [2081105] - xfs: remove redundant initialization of variable error (Brian Foster) [2081105] - xfs: perag may be null in xfs_imap() (Brian Foster) [2081105] - xfs: Make attr name schemes consistent (Brian Foster) [2081105] - xfs: Fix default ASSERT in xfs_attr_set_iter (Brian Foster) [2081105] - xfs: rename struct xfs_eofblocks to xfs_icwalk (Brian Foster) [2081105] - xfs: change the prefix of XFS_EOF_FLAGS_* to XFS_ICWALK_FLAG_ (Brian Foster) [2081105] - xfs: selectively keep sick inodes in memory (Brian Foster) [2081105] - xfs: drop IDONTCACHE on inodes when we mark them sick (Brian Foster) [2081105] - xfs: drop the AGI being passed to xfs_check_agi_freecount (Brian Foster) [2081105] - xfs: cleanup error handling in xfs_buf_get_map (Brian Foster) [2081105] - xfs: remove ->b_offset handling for page backed buffers (Brian Foster) [2081105] - xfs: refactor per-AG inode tagging functions (Brian Foster) [2081105] - xfs: merge xfs_reclaim_inodes_ag into xfs_inode_walk_ag (Brian Foster) [2081105] - xfs: pass struct xfs_eofblocks to the inode scan callback (Brian Foster) [2081105] - xfs: make the icwalk processing functions clean up the grab state (Brian Foster) [2081105] - xfs: clean up inode state flag tests in xfs_blockgc_igrab (Brian Foster) [2081105] - xfs: remove indirect calls from xfs_inode_walk{,_ag} (Brian Foster) [2081105] - xfs: remove iter_flags parameter from xfs_inode_walk_* (Brian Foster) [2081105] - xfs: move xfs_inew_wait call into xfs_dqrele_inode (Brian Foster) [2081105] - xfs: separate the dqrele_all inode grab logic from xfs_inode_walk_ag_grab (Brian Foster) [2081105] - xfs: pass the goal of the incore inode walk to xfs_inode_walk() (Brian Foster) [2081105] - xfs: rename xfs_inode_walk functions to xfs_icwalk (Brian Foster) [2081105] - xfs: move the inode walk functions further down (Brian Foster) [2081105] - xfs: detach inode dquots at the end of inactivation (Brian Foster) [2081105] - xfs: move the quotaoff dqrele inode walk into xfs_icache.c (Brian Foster) [2081105] - xfs: don't take a spinlock unconditionally in the DIO fastpath (Brian Foster) [2081105] - xfs: mark xfs_bmap_set_attrforkoff static (Brian Foster) [2081105] - xfs: Remove redundant assignment to busy (Brian Foster) [2081105] - xfs: sort variable alphabetically to avoid repeated declaration (Brian Foster) [2081105] - xfs: remove xfs_perag_t (Brian Foster) [2081105] - xfs: use perag through unlink processing (Brian Foster) [2081105] - xfs: clean up and simplify xfs_dialloc() (Brian Foster) [2081105] - xfs: inode allocation can use a single perag instance (Brian Foster) [2081105] - xfs: get rid of xfs_dir_ialloc() (Brian Foster) [2081105] - xfs: collapse AG selection for inode allocation (Brian Foster) [2081105] - xfs: simplify xfs_dialloc_select_ag() return values (Brian Foster) [2081105] - xfs: remove agno from btree cursor (Brian Foster) [2081105] - xfs: use perag for ialloc btree cursors (Brian Foster) [2081105] - xfs: convert allocbt cursors to use perags (Brian Foster) [2081105] - xfs: convert refcount btree cursor to use perags (Brian Foster) [2081105] - xfs: convert rmap btree cursor to using a perag (Brian Foster) [2081105] - xfs: add a perag to the btree cursor (Brian Foster) [2081105] - xfs: pass perags around in fsmap data dev functions (Brian Foster) [2081105] - xfs: push perags through the ag reservation callouts (Brian Foster) [2081105] - xfs: pass perags through to the busy extent code (Brian Foster) [2081105] - xfs: convert secondary superblock walk to use perags (Brian Foster) [2081105] - xfs: convert xfs_iwalk to use perag references (Brian Foster) [2081105] - xfs: convert raw ag walks to use for_each_perag (Brian Foster) [2081105] - xfs: make for_each_perag... a first class citizen (Brian Foster) [2081105] - xfs: move perag structure and setup to libxfs/xfs_ag.[ch] (Brian Foster) [2081105] - xfs: prepare for moving perag definitions and support to libxfs (Brian Foster) [2081105] - xfs: move xfs_perag_get/put to xfs_ag.[ch] (Brian Foster) [2081105] - xfs: remove unnecessary shifts (Brian Foster) [2081105] - xfs: clean up open-coded fs block unit conversions (Brian Foster) [2081105] - xfs: Clean up xfs_attr_node_addname_clear_incomplete (Brian Foster) [2081105] - xfs: Remove xfs_attr_rmtval_set (Brian Foster) [2081105] - xfs: Add delay ready attr set routines (Brian Foster) [2081105] - xfs: Add delay ready attr remove routines (Brian Foster) [2081105] - xfs: Hoist node transaction handling (Brian Foster) [2081105] - xfs: Hoist xfs_attr_leaf_addname (Brian Foster) [2081105] - xfs: Hoist xfs_attr_node_addname (Brian Foster) [2081105] - xfs: Add helper xfs_attr_node_addname_find_attr (Brian Foster) [2081105] - xfs: Separate xfs_attr_node_addname and xfs_attr_node_addname_clear_incomplete (Brian Foster) [2081105] - xfs: Refactor xfs_attr_set_shortform (Brian Foster) [2081105] - xfs: Add xfs_attr_node_remove_name (Brian Foster) [2081105] - xfs: Reverse apply 72b97ea40d (Brian Foster) [2081105] - xfs: use xfs_buf_alloc_pages for uncached buffers (Brian Foster) [2081105] - xfs: split up xfs_buf_allocate_memory (Brian Foster) [2081105] - xfs: Fix fall-through warnings for Clang (Brian Foster) [2081105] - scsi: qla2xxx: Use transport-defined speed mask for supported_speeds (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix serialization of DCBX TLV data request (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused declarations for qla2xxx (Nilesh Javali) [2109830] - scsi: qla2xxx: Drop DID_TARGET_FAILURE use (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.900-k (Nilesh Javali) [2109830] - scsi: qla2xxx: Add NVMe parameters support in Auxiliary Image Status (Nilesh Javali) [2109830] - scsi: qla2xxx: Add debugfs create/delete helpers (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix response queue handler reading stale packets (Nilesh Javali) [2109830] - scsi: qla2xxx: Revert "scsi: qla2xxx: Fix response queue handler reading stale packets" (Nilesh Javali) [2109830] - scsi: qla2xxx: Log message "skipping scsi_scan_host()" as informational (Nilesh Javali) [2109830] - scsi: qla2xxx: Avoid flush_scheduled_work() usage (Nilesh Javali) [2109830] - scsi: qla2xxx: Always wait for qlt_sess_work_fn() from qlt_stop_phase1() (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused del_sess_list field (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused qlt_tmr_work() (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.800-k (Nilesh Javali) [2109830] - scsi: qla2xxx: Update manufacturer details (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix discovery issues in FC-AL topology (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix dropped IKE message (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix response queue handler reading stale packets (Nilesh Javali) [2109830] - scsi: qla2xxx: Zero undefined mailbox IN registers (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix incorrect display of max frame size (Nilesh Javali) [2109830] - scsi: qla2xxx: Check correct variable in qla24xx_async_gffid() (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.700-k (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix losing FCP-2 targets on long port disable with I/Os (Nilesh Javali) [2109830] - scsi: qla2xxx: Add debug prints in the device remove path (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix losing target when it reappears during delete (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix losing FCP-2 targets during port perturbation tests (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix crash due to stale SRB access around I/O timeouts (Nilesh Javali) [2109830] - scsi: qla2xxx: Turn off multi-queue for 8G adapters (Nilesh Javali) [2109830] - scsi: qla2xxx: Wind down adapter after PCIe error (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.600-k (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix slow session teardown (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Reduce N2N thrashing at app_start time (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix no logout on delete for N2N (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix session thrash (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Tear down session if keys have been removed (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix no login after app start (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Reduce disruption due to multiple app start (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Send LOGO for unexpected IKE message (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix I/O timeout due to over-subscription (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.500-k (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix n2n login retry for secure device (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix n2n discovery issue with secure target (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Remove old doorbell interface (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Add retry for ELS passthrough (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Synchronize NPIV deletion with authentication application (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix potential stuck session in sa update (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Add bsg interface to read doorbell events (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Wait for app to ack on sess down (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: bsg refactor (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Reduce Initiator-Initiator thrashing (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused 'ql_dm_tgt_ex_pct' parameter (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove setting of 'req' and 'rsp' parameters (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix missed DMA unmap for aborted commands (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Remove unneeded variable (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unneeded flush_workqueue() (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove free_sg command flag (Nilesh Javali) [2109830] - scsi: megaraid_sas: Clean up some inconsistent indenting (Tomas Henzl) [2120070] - scsi: megaraid_sas: Move megasas_dbg_lvl init to megasas_init() (Tomas Henzl) [2120070] - scsi: megaraid_sas: Remove unnecessary memset() (Tomas Henzl) [2120070] - scsi: megaraid_sas: Simplify megasas_update_device_list (Tomas Henzl) [2120070] - scsi: megaraid_sas: Correct an error message (Tomas Henzl) [2120070] - scsi: megaraid_sas: Correct value passed to scsi_device_lookup() (Tomas Henzl) [2120070] - scsi: megaraid_sas: Use struct_size() in code related to struct MR_PD_CFG_SEQ_NUM_SYNC (Tomas Henzl) [2120070] - scsi: megaraid_sas: Use struct_size() in code related to struct MR_FW_RAID_MAP (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_PD_CFG_SEQ_NUM_SYNC (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_DRV_RAID_MAP (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_FW_RAID_MAP_DYNAMIC (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_FW_RAID_MAP (Tomas Henzl) [2120070] - scsi: megaraid: Remove redundant assignment to variable mfiStatus (Tomas Henzl) [2120070] - scsi: megaraid_sas: Remove redundant variable cmd_type (Tomas Henzl) [2120070] - platform/x86/intel/vsec: Fix wrong type for local status variables (Prarit Bhargava) [2076744] - platform/x86/intel/vsec: Add PCI error recovery support to Intel PMT (Prarit Bhargava) [2076744] - platform/x86/intel/vsec: Add support for Raptor Lake (Prarit Bhargava) [2076744] - platform/x86/intel/pmt: telemetry: Fix fixed region handling (Prarit Bhargava) [2076744] - platform/x86/intel/vsec: Rework early hardware code (Prarit Bhargava) [2076744] - platform/x86/intel: Fix pmt_crashlog array reference (Prarit Bhargava) [2076744] - powerpc/kexec_file: Use current CPU info while setting up FDT (Mamatha Inamdar) [2126520] - mm/kmemleak: prevent soft lockup in kmemleak_scan()'s object iteration loops (Waiman Long) [2095075] - mm/kmemleak: prevent soft lockup in first object iteration loop of kmemleak_scan() (Waiman Long) [2095075] - mm/kmemleak: skip unlikely objects in kmemleak_scan() without taking lock (Waiman Long) [2095075] - mm/kmemleak: use _irq lock/unlock variants in kmemleak_scan/_clear() (Waiman Long) [2095075] - mm/kmemleak: avoid scanning potential huge holes (Waiman Long) [2095075] - KVM: s390: pci: fix GAIT physical vs virtual pointers usage (Thomas Huth) [1664379] - KVM: s390: pci: fix plain integer as NULL pointer warnings (Thomas Huth) [1664379] - KVM: s390/pci: fix include duplicates (Thomas Huth) [1664379] - redhat: Use group notifier to get the KVM pointer in the vfio_pci_zdev code (Thomas Huth) [1664379] - KVM: s390: pci: register pci hooks without interpretation (Thomas Huth) [1664379] - KVM: s390: pci: Hook to access KVM lowlevel from VFIO (Thomas Huth) [1664379] - Documentation: kvm: extend KVM_S390_ZPCI_OP subheading underline (Thomas Huth) [1664379] - KVM: s390: add KVM_S390_ZPCI_OP to manage guest zPCI devices (Thomas Huth) [1664379] - vfio-pci/zdev: different maxstbl for interpreted devices (Thomas Huth) [1664379] - vfio-pci/zdev: add function handle to clp base capability (Thomas Huth) [1664379] - vfio-pci/zdev: add open/close device hooks (Thomas Huth) [1664379] - KVM: s390: pci: add routines to start/stop interpretive execution (Thomas Huth) [1664379] - KVM: s390: pci: provide routines for enabling/disabling interrupt forwarding (Thomas Huth) [1664379] - KVM: s390: mechanism to enable guest zPCI Interpretation (Thomas Huth) [1664379] - KVM: s390: pci: enable host forwarding of Adapter Event Notifications (Thomas Huth) [1664379] - KVM: s390: pci: do initial setup for AEN interpretation (Thomas Huth) [1664379] - KVM: s390: pci: add basic kvm_zdev structure (Thomas Huth) [1664379] - redhat: Enable the new CONFIG_VFIO_PCI_ZDEV_KVM switch (Thomas Huth) [1664379] - vfio/pci: introduce CONFIG_VFIO_PCI_ZDEV_KVM (Thomas Huth) [1664379] - vfio/pci: remove CONFIG_VFIO_PCI_ZDEV from Kconfig (Thomas Huth) [1664379] - vfio-pci/zdev: fix possible segmentation fault issue (Thomas Huth) [1664379] - s390/pci: stash dtsm and maxstbl (Thomas Huth) [1664379] - s390/pci: stash associated GISA designation (Thomas Huth) [1664379] - s390/pci: externalize the SIC operation controls and routine (Thomas Huth) [1664379] - s390/airq: allow for airq structure that uses an input vector (Thomas Huth) [1664379] - s390/airq: pass more TPI info to airq handlers (Thomas Huth) [1664379] - s390/cio: add tpi.h header file (Thomas Huth) [1664379] - s390/ap: fix kernel doc comments (Thomas Huth) [1664379] - s390/sclp: detect the AISI facility (Thomas Huth) [1664379] - s390/sclp: detect the AENI facility (Thomas Huth) [1664379] - s390/sclp: detect the AISII facility (Thomas Huth) [1664379] - s390/sclp: detect the zPCI load/store interpretation facility (Thomas Huth) [1664379] - s390/sclp: add detection of IPL-complete-control facility (Thomas Huth) [1664379] - s390/pci: add error record for CC 2 retries (Thomas Huth) [2134399] - s390/pci: add PCI access type and length to error records (Thomas Huth) [2134399] - s390/pci: don't log availability events as errors (Thomas Huth) [2134399] - s390/pci: make better use of zpci_dbg() levels (Thomas Huth) [2134399] - s390/pci: rename get_zdev_by_bus() to zdev_from_bus() (Thomas Huth) [2134399] - redhat: Restore clp_rescan_pci_devices_simple() function (Thomas Huth) [2134399] - s390/pci: improve zpci_dev reference counting (Thomas Huth) [2134399] - s390/pci: make zpci_set_irq()/zpci_clear_irq() static (Thomas Huth) [2134399] - s390/pci: simplify __pciwb_mio() inline asm (Thomas Huth) [2134399] - s390/pci: use physical addresses in DMA tables (Thomas Huth) [2134399] - s390/pci: use phys_to_virt() for AIBVs/DIBVs (Thomas Huth) [2134399] - s390/pci: implement minimal PCI error recovery (Thomas Huth) [2134399] - PCI: Export pci_dev_lock() (Thomas Huth) [2134399] - PCI: Export pci_dev_trylock() and pci_dev_unlock() (Thomas Huth) [2134399] - s390/pci: implement reset_slot for hotplug slot (Thomas Huth) [2134399] - s390/pci: refresh function handle in iomap (Thomas Huth) [2134399] - s390/pci: add simpler s390dbf traces for events (Thomas Huth) [2134399] - s390/pci: tolerate inconsistent handle in recover (Thomas Huth) [2134399] - s390/pci_mmio: fully validate the VMA before calling follow_pte() (Thomas Huth) [2134399] - s390/pci: read clp_list_pci_req only once (Thomas Huth) [2134399] - s390/pci: fix clp_get_state() handling of -ENODEV (Thomas Huth) [2134399] - s390/pci: improve DMA translation init and exit (Thomas Huth) [2134399] - s390/pci: simplify CLP List PCI handling (Thomas Huth) [2134399] - s390/pci: handle FH state mismatch only on disable (Thomas Huth) [2134399] - s390/pci: fix misleading rc in clp_set_pci_fn() (Thomas Huth) [2134399] - s390/pci: reset zdev->zbus on registration failure (Thomas Huth) [2134399] - s390/pci: cleanup resources only if necessary (Thomas Huth) [2134399] - s390/pci: add zpci_set_irq()/zpci_clear_irq() (Thomas Huth) [2134399] - s390/pci: use register pair instead of register asm (Thomas Huth) [2134399] - s390: introduce register pair union (Thomas Huth) [2134399] - s390/pci: handle stale deconfiguration events (Thomas Huth) [2134399] - s390/pci: rename zpci_configure_device() (Thomas Huth) [2134399] - s390/pci: narrow scope of zpci_configure_device() (Thomas Huth) [2134399] - s390/pci: separate zbus registration from scanning (Thomas Huth) [2134399] - s390/pci: use mutex not spinlock for zbus list (Thomas Huth) [2134399] - s390/pci: separate zbus creation from scanning (Thomas Huth) [2134399] - s390/pci: do more bus setup in zpci_bus_scan() (Thomas Huth) [2134399] - s390/pci: introduce zpci_bus_scan_device() (Thomas Huth) [2134399] - s390/pci: fix DMA cleanup on hard deconfigure (Thomas Huth) [2134399] - s390/pci: move zpci_remove_device() to bus code (Thomas Huth) [2134399] - s390/pci: unify de-/configure for slots and events (Thomas Huth) [2134399] - s390/pci: add zpci_event_hard_deconfigured() (Thomas Huth) [2134399] - s390/pci: deconfigure device on release (Thomas Huth) [2134399] - s390/pci: refactor zpci function states (Thomas Huth) [2134399] - s390/pci: inform when missing required facilities (Thomas Huth) [2134399] - s390/pci: remove races against pte updates (Thomas Huth) [2134399] - s390: remove orphaned function declarations (Thomas Huth) [2134399] - s390/pci: add missing pci_iov.h include (Thomas Huth) [2134399] - s390/pci: remove clp_rescan_pci_devices_simple() (Thomas Huth) [2134399] - s390/pci: remove clp_rescan_pci_devices() (Thomas Huth) [2134399] - s390/pci: consolidate SR-IOV specific code (Thomas Huth) [2134399] - s390/pci: Implement ioremap_wc/prot() with MIO (Thomas Huth) [2134399] - s390/mm: properly clear _PAGE_NOEXEC bit when it is not supported (Thomas Huth) [2134399] - s390/pci: clarify comment in s390_mmio_read/write (Thomas Huth) [2134399] - s390/pci: remove unused functions (Thomas Huth) [2134399] - s390/pci: Log new handle in clp_disable_fh() (Thomas Huth) [2134399] - s390/pci: ioremap() align with generic code (Thomas Huth) [2134399] - s390: enforce CONFIG_SMP (Thomas Huth) [2134399] - s390/pci: mark function(s) __always_inline (Thomas Huth) [2134399] - s390/pci: avoid using strncmp with hardcoded length (Thomas Huth) [2134399] - s390/pci: PCI_IOV_RESOURCES loop refactoring in zpci_map_resources (Thomas Huth) [2134399] - s390: pci: no need to check return value of debugfs_create functions (Thomas Huth) [2134399] - s390/pci: fix sleeping in atomic during hotplug (Thomas Huth) [2134399] - s390/pci: remove fmb address from debug output (Thomas Huth) [2134399] - s390/pci: add fmt3 fmb (Thomas Huth) [2134399] - tools headers kvm s390: Sync headers with the kernel sources (Thomas Huth) [2111063] - KVM: s390: resetting the Topology-Change-Report (Thomas Huth) [2111063] - KVM: s390: guest support for topology function (Thomas Huth) [2111063] - KVM: s390: Cleanup ipte lock access and SIIF facility checks (Thomas Huth) [2111063] - KVM: s390: drop unexpected word 'and' in the comments (Thomas Huth) [2111063] - Documentation: KVM: update s390-diag.rst reference (Thomas Huth) [2043872] - Documentation: KVM: update msr.rst reference (Thomas Huth) [2043872] - Documentation: KVM: update amd-memory-encryption.rst references (Thomas Huth) [2043872] - Documentation: KVM: update s390-pv.rst reference (Thomas Huth) [2043872] - Documentation/virt/kvm/api.rst: Explain rc/rrc delivery (Thomas Huth) [2043872] - Documentation/virt/kvm/api.rst: Add protvirt dump/info api descriptions (Thomas Huth) [2043872] - Documentation: KVM: add API issues section (Thomas Huth) [2043872] - Documentation: virt: Protected virtual machine dumps (Thomas Huth) [2043872] - Documentation: KVM: add separate directories for architecture-specific documentation (Thomas Huth) [2043872] - KVM: s390: Add KVM_CAP_S390_PROTECTED_DUMP (Thomas Huth) [2043872] - KVM: s390: Add CPU dump functionality (Thomas Huth) [2043872] - KVM: s390: Add configuration dump functionality (Thomas Huth) [2043872] - KVM: s390: pv: Add query dump information (Thomas Huth) [2043872] - KVM: s390: pv: Add dump support definitions (Thomas Huth) [2043872] - KVM: s390: pv: Add query interface (Thomas Huth) [2043872] - s390/uv: Add dump fields to query (Thomas Huth) [2043872] - s390/uv: Add SE hdr query information (Thomas Huth) [2043872] - kvm: Move KVM_GET_XSAVE2 IOCTL definition at the end of kvm.h (Thomas Huth) [2043872] - docs: kvm: fix WARNINGs from api.rst (Thomas Huth) [2043872] - s390/mm: use non-quiescing sske for KVM switch to keyed guest (Thomas Huth) [2043872] - s390/gmap: voluntarily schedule during key setting (Thomas Huth) [2043872] - KVM: s390: Don't indicate suppression on dirtying, failing memop (Thomas Huth) [2043872] - s390: uv: Add offset comments to UV query struct and fix naming (Thomas Huth) [2043872] - KVM: s390: Use Makefile.kvm for common files (Thomas Huth) [2043872] - KVM: s390: Skip gfn/size sanity checks on memslot DELETE or FLAGS_ONLY (Thomas Huth) [2043872] - fs: dlm: fix invalid derefence of sb_lvbptr (Alexander Aring) [2121790] - fs: dlm: handle -EBUSY first in unlock validation (Alexander Aring) [2121790] - fs: dlm: handle -EBUSY first in lock arg validation (Alexander Aring) [2121790] - fs: dlm: fix race between test_bit() and queue_work() (Alexander Aring) [2121790] - scsi: core: Fix a use-after-free (Ming Lei) [1961010] - net/mlx5e: Fix wrong use of skb_tcp_all_headers() with encapsulation (Petr Oros) [2135685] - net: add skb_[inner_]tcp_all_headers helpers (Petr Oros) [2135685] - net: marvell: clean up trigraph warning on ??! string (Petr Oros) [2135685] - powerpc/pseries: Use lparcfg to reconfig VAS windows for DLPAR CPU (Steve Best) [2133103] - flow_dissector: Do not count vlan tags inside tunnel payload (Ivan Vecera) [2136875] - flow_offload: Introduce flow_match_pppoe (Ivan Vecera) [2136875] - net/sched: flower: Add PPPoE filter (Ivan Vecera) [2136875] - flow_dissector: Add PPPoE dissectors (Ivan Vecera) [2136875] - net/sched: flower: Consider the number of tags for vlan filters (Ivan Vecera) [2136875] - net/sched: flower: Add number of vlan tags filter (Ivan Vecera) [2136875] - flow_dissector: Add number of vlan tags dissector (Ivan Vecera) [2136875] - net/sched: flower: Reduce identation after is_key_vlan refactoring (Ivan Vecera) [2136875] - net/sched: flower: Helper function for vlan ethtype checks (Ivan Vecera) [2136875] - dissector: do not set invalid PPP protocol (Ivan Vecera) [2136875] - dm bufio: use the acquire memory barrier when testing for B_READING (Benjamin Marzinski) [2139161] - provide arch_test_bit_acquire for architectures that define test_bit (Benjamin Marzinski) [2139161] - wait_on_bit: add an acquire memory barrier (Benjamin Marzinski) [2139161] - add barriers to buffer_uptodate and set_buffer_uptodate (Benjamin Marzinski) [2139161] - dm verity: Add documentation for try_verify_in_tasklet option (Benjamin Marzinski) [2139161] - dm cache: delete the redundant word 'each' in comment (Benjamin Marzinski) [2139161] - dm raid: fix typo in analyse_superblocks code comment (Benjamin Marzinski) [2139161] - dm verity: enable WQ_HIGHPRI on verify_wq (Benjamin Marzinski) [2139161] - dm raid: delete the redundant word 'that' in comment (Benjamin Marzinski) [2139161] - dm: change from DMWARN to DMERR or DMCRIT for fatal errors (Benjamin Marzinski) [2139161] - dm bufio: fix some cases where the code sleeps with spinlock held (Benjamin Marzinski) [2139161] - dm writecache: fix smatch warning about invalid return from writecache_map (Benjamin Marzinski) [2139161] - dm verity: fix verity_parse_opt_args parsing (Benjamin Marzinski) [2139161] - dm verity: fix DM_VERITY_OPTS_MAX value yet again (Benjamin Marzinski) [2139161] - dm bufio: simplify DM_BUFIO_CLIENT_NO_SLEEP locking (Benjamin Marzinski) [2139161] - dm verity: have verify_wq use WQ_HIGHPRI if "try_verify_in_tasklet" (Benjamin Marzinski) [2139161] - dm verity: remove WQ_CPU_INTENSIVE flag since using WQ_UNBOUND (Benjamin Marzinski) [2139161] - dm verity: only copy bvec_iter in verity_verify_io if in_tasklet (Benjamin Marzinski) [2139161] - dm verity: optimize verity_verify_io if FEC not configured (Benjamin Marzinski) [2139161] - dm verity: conditionally enable branching for "try_verify_in_tasklet" (Benjamin Marzinski) [2139161] - dm bufio: conditionally enable branching for DM_BUFIO_CLIENT_NO_SLEEP (Benjamin Marzinski) [2139161] - dm verity: allow optional args to alter primary args handling (Benjamin Marzinski) [2139161] - dm verity: Add optional "try_verify_in_tasklet" feature (Benjamin Marzinski) [2139161] - dm bufio: Add DM_BUFIO_CLIENT_NO_SLEEP flag (Benjamin Marzinski) [2139161] - dm bufio: Add flags argument to dm_bufio_client_create (Benjamin Marzinski) [2139161] - dm: Start pr_preempt from the same starting path (Benjamin Marzinski) [2139161] - dm: Fix PR release handling for non All Registrants (Benjamin Marzinski) [2139161] - dm: Start pr_reserve from the same starting path (Benjamin Marzinski) [2139161] - dm: Allow dm_call_pr to be used for path searches (Benjamin Marzinski) [2139161] - Documentation: dm writecache: Render status list as list (Benjamin Marzinski) [2139161] - Documentation: dm writecache: add blank line before optional parameters (Benjamin Marzinski) [2139161] - dm snapshot: fix typo in snapshot_map() comment (Benjamin Marzinski) [2139161] - dm raid: remove redundant "the" in parse_raid_params() comment (Benjamin Marzinski) [2139161] - dm cache: fix typo in 2 comment blocks (Benjamin Marzinski) [2139161] - dm verity: fix checkpatch close brace error (Benjamin Marzinski) [2139161] - dm table: rename dm_target variable in dm_table_add_target() (Benjamin Marzinski) [2139161] - dm table: audit all dm_table_get_target() callers (Benjamin Marzinski) [2139161] - dm table: remove dm_table_get_num_targets() wrapper (Benjamin Marzinski) [2139161] - writeback: Avoid skipping inode writeback (Waiman Long) [2138886] - writeback: fix obtain a reference to a freeing memcg css (Waiman Long) [2138886] - mm/memcg: disable threshold event handlers on PREEMPT_RT (Waiman Long) [2138886] - memcg: increase MEMCG_CHARGE_BATCH to 64 (Waiman Long) [2138886] - mm: page_counter: rearrange struct page_counter fields (Waiman Long) [2138886] - mm: page_counter: remove unneeded atomic ops for low/min (Waiman Long) [2138886] - memcg: reduce size of memcg vmstats structures (Waiman Long) [2138886] - memcg: rearrange code (Waiman Long) [2138886] - memcg: extract memcg_vmstats from struct mem_cgroup (Waiman Long) [2138886] - mm: memcontrol: fix potential oom_lock recursion deadlock (Waiman Long) [2138886] - mm: memcontrol: add {pgscan,pgsteal}_{kswapd,direct} items in memory.stat of cgroup v2 (Waiman Long) [2138886] - mm/memcg: protect per-CPU counter by disabling preemption on PREEMPT_RT where needed. (Waiman Long) [2138886] - writeback: memcg: simplify cgroup_writeback_by_id (Waiman Long) [2138886] - writeback, cgroup: do not reparent dax inodes (Waiman Long) [2138886] - writeback, cgroup: remove wb from offline list before releasing refcnt (Waiman Long) [2138886] - writeback, cgroup: release dying cgwbs by switching attached inodes (Waiman Long) [2138886] - writeback, cgroup: support switching multiple inodes at once (Waiman Long) [2138886] - writeback, cgroup: split out the functional part of inode_switch_wbs_work_fn() (Waiman Long) [2138886] - writeback, cgroup: keep list of inodes attached to bdi_writeback (Waiman Long) [2138886] - writeback, cgroup: switch to rcu_work API in inode_switch_wbs() (Waiman Long) [2138886] - writeback, cgroup: increment isw_nr_in_flight before grabbing an inode (Waiman Long) [2138886] - writeback, cgroup: add smp_mb() to cgroup_writeback_umount() (Waiman Long) [2138886] - writeback, cgroup: do not switch inodes with I_WILL_FREE flag (Waiman Long) [2138886] - docs/admin-guide: cgroup-v2: typos and spaces (Waiman Long) [2138886] - fs: improve comments for writeback_single_inode() (Waiman Long) [2138886] - writeback: remove struct bdi_writeback_congested (Waiman Long) [2138886] - writeback: remove {set,clear}_wb_congested (Waiman Long) [2138886] - fs/writeback.c: use rcu_barrier() to wait for inflight wb switches going into workqueue when umount (Waiman Long) [2138886] - blkcg: remove unused __blkg_release_rcu() (Waiman Long) [2138886] - writeback: Add a bdi_writeback_rh extension to struct bdi_writeback (Waiman Long) [2138886] - RDMA/irdma: Report the correct link speed (Kamal Heib) [2125102] - blk-mq: avoid double ->queue_rq() because of early timeout (Ming Lei) [2132438] - blk-mq: add one API for waiting until quiesce is done (Ming Lei) [2132438] - blk-mq: support concurrent queue quiesce/unquiesce (Ming Lei) [2132438] - bridge: Do not send empty IFLA_AF_SPEC attribute (Ivan Vecera) [2139133] - net: bridge: Clear offload_fwd_mark when passing frame up bridge interface. (Ivan Vecera) [2139133] - net: bridge: vlan: fix memory leak in __allowed_ingress (Ivan Vecera) [2139133]- ice: Add additional CSR registers to ETHTOOL_GREGS (Petr Oros) [2131024] - udp: Update reuse->has_conns under reuseport_lock. (Xin Long) [2135937] - udp: Remove redundant __udp_sysctl_init() call from udp_init(). (Xin Long) [2135937] - udp: Fix a data-race around sysctl_udp_l3mdev_accept. (Xin Long) [2135937] - Documentation: fix udp_wmem_min in ip-sysctl.rst (Xin Long) [2135937] - be2net: Fix buffer overflow in be_get_module_eeprom (Josef Oskera) [2126917] - iommu/vt-d: Clean up si_domain in the init_dmars() error path (Jerry Snitselaar) [2133331]- md: Fix spelling mistake in comments of r5l_log (Nigel Croxon) [2112935] - md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d (Nigel Croxon) [2112935] - md/raid10: convert resync_lock to use seqlock (Nigel Croxon) [2112935] - md/raid10: fix improper BUG_ON() in raise_barrier() (Nigel Croxon) [2112935] - md/raid10: prevent unnecessary calls to wake_up() in fast path (Nigel Croxon) [2112935] - md/raid10: don't modify 'nr_waitng' in wait_barrier() for the case nowait (Nigel Croxon) [2112935] - md/raid10: factor out code from wait_barrier() to stop_waiting_barrier() (Nigel Croxon) [2112935] - md: Remove extra mddev_get() in md_seq_start() (Nigel Croxon) [2112935] - md/raid5: Remove unnecessary bio_put() in raid5_read_one_chunk() (Nigel Croxon) [2112935 2111563] - md/raid5: Ensure stripe_fill happens on non-read IO with journal (Nigel Croxon) [2112935] - md/raid5: Don't read ->active_stripes if it's not needed (Nigel Croxon) [2112935] - md/raid5: Cleanup prototype of raid5_get_active_stripe() (Nigel Croxon) [2112935] - md/raid5: Drop extern on function declarations in raid5.h (Nigel Croxon) [2112935] - md/raid5: Refactor raid5_get_active_stripe() (Nigel Croxon) [2112935] - md: Replace snprintf with scnprintf (Nigel Croxon) [2112935] - md/raid10: fix compile warning (Nigel Croxon) [2112935] - md/raid5: Fix spelling mistakes in comments (Nigel Croxon) [2112935] - md: call __md_stop_writes in md_stop (Nigel Croxon) [2112935] - md: Flush workqueue md_rdev_misc_wq in md_alloc() (Nigel Croxon) [2112935] - drivers:md:fix a potential use-after-free bug (Nigel Croxon) [2112935] - md/raid5: Ensure batch_last is released before sleeping for quiesce (Nigel Croxon) [2112935] - md/raid5: Move stripe_request_ctx up (Nigel Croxon) [2112935] - md/raid5: Drop unnecessary call to r5c_check_stripe_cache_usage() (Nigel Croxon) [2112935] - md/raid5: Make is_inactive_blocked() helper (Nigel Croxon) [2112935] - md/raid5: Refactor raid5_get_active_stripe() (Nigel Croxon) [2112935] - md-raid10: fix KASAN warning (Nigel Croxon) [2112935] - md: fix build failure for !MODULE (Nigel Croxon) [2112935] - raid5: fix duplicate checks for rdev->saved_raid_disk (Nigel Croxon) [2112935] - md/raid5: Convert prepare_to_wait() to wait_woken() api (Nigel Croxon) [2112935] - md/raid5: Fix sectors_to_do bitmap overflow in raid5_make_request() (Nigel Croxon) [2112935] - md: Fix spelling mistake in comments (Nigel Croxon) [2112935] - md/raid5: Increase restriction on max segments per request (Nigel Croxon) [2112935] - md/raid5: Improve debug prints (Nigel Croxon) [2112935] - md/raid5: Pivot raid5_make_request() (Nigel Croxon) [2112935] - md/raid5: Check all disks in a stripe_head for reshape progress (Nigel Croxon) [2112935] - md/raid5: Refactor add_stripe_bio() (Nigel Croxon) [2112935] - md/raid5: Keep a reference to last stripe_head for batch (Nigel Croxon) [2112935] - md/raid5: Refactor for loop in raid5_make_request() into while loop (Nigel Croxon) [2112935] - md/raid5: Move read_seqcount_begin() into make_stripe_request() (Nigel Croxon) [2112935] - md/raid5: Drop the do_prepare flag in raid5_make_request() (Nigel Croxon) [2112935] - md/raid5: Factor out helper from raid5_make_request() loop (Nigel Croxon) [2112935] - md/raid5: Move common stripe get code into new find_get_stripe() helper (Nigel Croxon) [2112935] - md/raid5: Move stripe_add_to_batch_list() call out of add_stripe_bio() (Nigel Croxon) [2112935] - md/raid5: Refactor raid5_make_request loop (Nigel Croxon) [2112935] - md/raid5: Factor out ahead_of_reshape() function (Nigel Croxon) [2112935] - md/raid5: Make logic blocking check consistent with logic that blocks (Nigel Croxon) [2112935] - md: unlock mddev before reap sync_thread in action_store (Nigel Croxon) [2112935] - md: Explicitly create command-line configured devices (Nigel Croxon) [2112935] - md: Notify sysfs sync_completed in md_reap_sync_thread() (Nigel Croxon) [2112935] - md: Ensure resync is reported after it starts (Nigel Croxon) [2112935] - md: Use enum for overloaded magic numbers used by mddev->curr_resync (Nigel Croxon) [2112935] - md/raid5-cache: Annotate pslot with __rcu notation (Nigel Croxon) [2112935] - md/raid5-cache: Clear conf->log after finishing work (Nigel Croxon) [2112935] - md/raid5-cache: Drop RCU usage of conf->log (Nigel Croxon) [2112935] - md/raid5-cache: Take mddev_lock in r5c_journal_mode_show() (Nigel Croxon) [2112935] - md/raid5: suspend the array for calls to log_exit() (Nigel Croxon) [2112935] - md/raid5-ppl: Drop unused argument from ppl_handle_flush_request() (Nigel Croxon) [2112935] - md/raid5-log: Drop extern decorators for function prototypes (Nigel Croxon) [2112935] - md/raid5: missing error code in setup_conf() (Nigel Croxon) [2112935] - Revert "md: don't unregister sync_thread with reconfig_mutex held" (Nigel Croxon) [2112935] - qed: fix typos in comments (Manish Chopra) [2111885] - net: qede: Remove unnecessary synchronize_irq() before free_irq() (Manish Chopra) [2111885] - RDMA/qedr: Fix potential memory leak in __qedr_alloc_mr() (Manish Chopra) [2111885] - qlogic: qed: fix clang -Wformat warnings (Manish Chopra) [2111885] - qed: Use bitmap_empty() (Manish Chopra) [2111885] - qed: Use the bitmap API to allocate bitmaps (Manish Chopra) [2111885] - qlogic/qed: fix repeated words in comments (Manish Chopra) [2111885] - net: qed: fix typos in comments (Manish Chopra) [2111885] - RDMA/qedr: Remove unnecessary synchronize_irq() before free_irq() (Manish Chopra) [2111885] - qed: Remove unnecessary synchronize_irq() before free_irq() (Manish Chopra) [2111885] - qed: replace bitmap_weight with bitmap_empty in qed_roce_stop() (Manish Chopra) [2111885] - qed: rework qed_rdma_bmap_free() (Manish Chopra) [2111885] - qed: Remove IP services API. (Manish Chopra) [2111885] - qed: remove an unneed NULL check on list iterator (Manish Chopra) [2111885] - RDMA/irdma: Report RNR NAK generation in device caps (Kamal Heib) [2120676 2103957] - RDMA/irdma: Use s/g array in post send only when its valid (Kamal Heib) [2120676 2103957] - RDMA/irdma: Return correct WC error for bind operation failure (Kamal Heib) [2120676 2103957] - RDMA/irdma: Return error on MR deregister CQP failure (Kamal Heib) [2120676 2103957] - RDMA/irdma: Report the correct max cqes from query device (Kamal Heib) [2120676 2103957] - RDMA/siw: Pass a pointer to virt_to_page() (Kamal Heib) [2120676] - RDMA/cma: Fix arguments order in net device validation (Kamal Heib) [2120676] - RDMA/irdma: Fix drain SQ hang with no completion (Kamal Heib) [2120676 2103957 2033244 2053376] - IB/iser: Fix login with authentication (Kamal Heib) [2120676] - RDMA/ib_srpt: Unify checking rdma_cm_id condition in srpt_cm_req_recv() (Kamal Heib) [2120676] - RDMA/rxe: Fix error unwind in rxe_create_qp() (Kamal Heib) [2120676] - RDMA/rxe: Split qp state for requester and completer (Kamal Heib) [2120676] - RDMA/rxe: Generate error completion for error requester QP state (Kamal Heib) [2120676] - RDMA/rxe: Update wqe_index for each wqe error completion (Kamal Heib) [2120676] - RDMA/srpt: Fix a use-after-free (Kamal Heib) [2120676] - RDMA/srpt: Introduce a reference count in struct srpt_device (Kamal Heib) [2120676] - RDMA/srpt: Duplicate port name members (Kamal Heib) [2120676] - Revert "RDMA/rxe: Create duplicate mapping tables for FMRs" (Kamal Heib) [2120676] - RDMA/rxe: Replace __rxe_do_task by rxe_run_task (Kamal Heib) [2120676] - RDMA/rxe: Limit the number of calls to each tasklet (Kamal Heib) [2120676] - RDMA/rxe: Make the tasklet exits the same (Kamal Heib) [2120676] - RDMA/rxe: Fix rnr retry behavior (Kamal Heib) [2120676] - RDMA/rxe: Add rxe_is_fenced() subroutine (Kamal Heib) [2120676] - RDMA/rxe: For invalidate compare according to set keys in mr (Kamal Heib) [2120676] - RDMA: Fix comment typo (Kamal Heib) [2120676] - IB: Fix repeated words 'the the' comments (Kamal Heib) [2120676] - RDMA/rxe: Fix mw bind to allow any consumer key portion (Kamal Heib) [2120676] - RDMA/rxe: Fix spelling mistake in error print (Kamal Heib) [2120676] - RDMA/rxe: Remove unused qp parameter (Kamal Heib) [2120676] - RDMA/hfi1: fix potential memory leak in setup_base_ctxt() (Kamal Heib) [2120676] - RDMA/rxe: Remove unused mask parameter (Kamal Heib) [2120676] - RDMA/rxe: Rename rxe_atomic_reply to atomic_reply (Kamal Heib) [2120676] - RDMA/rxe: Add common rxe_prepare_res() (Kamal Heib) [2120676] - RDMA/rxe: Fix BUG: KASAN: null-ptr-deref in rxe_qp_do_cleanup (Kamal Heib) [2120676] - RDMA/siw: Fix duplicated reported IW_CM_EVENT_CONNECT_REPLY event (Kamal Heib) [2120676] - RDMA/hfi1: Depend on !UML (Kamal Heib) [2120676] - RDMA/irdma: Use the bitmap API to allocate bitmaps (Kamal Heib) [2120676 2103957] - RDMA: remove useless condition in siw_create_cq() (Kamal Heib) [2120676] - RDMA/irdma: Fix setting of QP context err_rq_idx_valid field (Kamal Heib) [2120676 2103957] - RDMA/irdma: Fix VLAN connection with wildcard address (Kamal Heib) [2120676 2103957] - RDMA/irdma: Fix a window for use-after-free (Kamal Heib) [2120676 2103957] - RDMA/irdma: Make resource distribution algorithm more QP oriented (Kamal Heib) [2120676 2103957] - RDMA/irdma: Make CQP invalid state error non-critical (Kamal Heib) [2120676 2103957] - RDMA/irdma: Add AE source to error log (Kamal Heib) [2120676 2103957] - RDMA/irdma: Add 2 level PBLE support for FMR (Kamal Heib) [2120676 2103957] - IB: Fix spelling of 'writable' (Kamal Heib) [2120676] - RDMA/rxe: Remove unnecessary include statement (Kamal Heib) [2120676] - RDMA/rxe: Replace include statement (Kamal Heib) [2120676] - RDMA/rxe: Convert pr_warn/err to pr_debug in pyverbs (Kamal Heib) [2120676] - RDMA/rxe: Fix deadlock in rxe_do_local_ops() (Kamal Heib) [2120676] - RDMA/rxe: Merge normal and retry atomic flows (Kamal Heib) [2120676] - RDMA/rxe: Move atomic original value to res (Kamal Heib) [2120676] - RDMA/rxe: Move atomic responder res to atomic_reply (Kamal Heib) [2120676] - RDMA/rxe: Add a responder state for atomic reply (Kamal Heib) [2120676] - RDMA/rxe: Move code to rxe_prepare_atomic_res() (Kamal Heib) [2120676] - RDMA/rxe: Convert read side locking to rcu (Kamal Heib) [2120676] - RDMA/rxe: Stop lookup of partially built objects (Kamal Heib) [2120676] - RDMA/rxe: Remove useless pkt parameters (Kamal Heib) [2120676] - RDMA: Correct duplicated words in comments (Kamal Heib) [2120676] - IB/iser: Drain the entire QP during destruction flow (Kamal Heib) [2120676] - RDMA/rxe: fix xa_alloc_cycle() error return value check again (Kamal Heib) [2120676] - RDMA/core: Add a netevent notifier to cma (Kamal Heib) [2120676 2117912] - RDMA/core: Add an rb_tree that stores cm_ids sorted by ifindex and remote IP (Kamal Heib) [2120676 2117912] - RDMA/hfi1: Fix typo in comment (Kamal Heib) [2120676] - RDMA: Split kernel-only global device caps from uverbs device caps (Kamal Heib) [2120675] - RDMA/hfi1: Remove all traces of diagpkt support (Kamal Heib) [2120675] - RDMA/hfi1: Consolidate software versions (Kamal Heib) [2120675] - RDMA/hfi1: Remove pointless driver version (Kamal Heib) [2120675] - RDMA/hfi1: Prevent panic when SDMA is disabled (Kamal Heib) [2120675] - RDMA/core: Fix typo in comment (Kamal Heib) [2120675] - IB/hf1: Fix typo in comment (Kamal Heib) [2120675] - IB/iser: Fix typo in comment (Kamal Heib) [2120675] - IB/isert: Avoid flush_scheduled_work() usage (Kamal Heib) [2120675] - RDMA/siw: Enable siw on tunnel devices (Kamal Heib) [2120675] - RDMA/rxe: Enforce IBA C11-17 (Kamal Heib) [2120675] - RDMA/rxe: Move mw cleanup code to rxe_mw_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Move mr cleanup code to rxe_mr_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Move qp cleanup code to rxe_qp_do_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Check rxe_get() return value (Kamal Heib) [2120675] - RDMA/rxe: Add rxe_srq_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Remove IB_SRQ_INIT_MASK (Kamal Heib) [2120675] - RDMA/rxe: Skip adjusting remote addr for write in retry operation (Kamal Heib) [2120675] - RDMA/rxe: Optimize the mr pool struct (Kamal Heib) [2120675] - RDMA/rxe: Replace paylen by payload (Kamal Heib) [2120675] - RDMA/core: Avoid flush_workqueue(system_unbound_wq) usage (Kamal Heib) [2120675] - RDMA/rxe: Remove useless parameters for update_state() (Kamal Heib) [2120675] - RDMA/rxe: Remove reliable datagram support (Kamal Heib) [2120675] - RDMA/rxe: Remove support for SMI QPs from rdma_rxe (Kamal Heib) [2120675] - RDMA/rxe: Remove mc_grp_pool from struct rxe_dev (Kamal Heib) [2120675] - RDMA/rxe: Remove type 2A memory window capability (Kamal Heib) [2120675] - RDMA/usnic: Refactor usnic_uiom_alloc_pd() (Kamal Heib) [2120675] - RDMA/usnic: Stop using iommu_present() (Kamal Heib) [2120675] - IB/SA: Replace usage of found with dedicated list iterator variable (Kamal Heib) [2120675] - IB/rdmavt: add missing locks in rvt_ruc_loopback (Kamal Heib) [2120675] - IB/uverbs: Move part of enum ib_device_cap_flags to uapi (Kamal Heib) [2120675] - IB/uverbs: Move enum ib_raw_packet_caps to uapi (Kamal Heib) [2120675] - RDMA/pvrdma: Remove useless DMA-32 fallback configuration (Kamal Heib) [2120675] - RDMA: switch from 'pci_' to 'dma_' API (Kamal Heib) [2120675] - scsi: RDMA/srp: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Kamal Heib) [2120675] - scsi: RDMA/iser: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Kamal Heib) [2120675] - x86/fpu: Prevent FPU state corruption (Oleksandr Natalenko) [2130890] - net: team: Unsync device addresses on ndo_stop (Hangbin Liu) [2135240] - mmu_gather: fix the CONFIG_MMU_GATHER_NO_RANGE case (Waiman Long) [2130166] {CVE-2022-39188} - mmu_gather: Force tlb-flush VM_PFNMAP vmas (Waiman Long) [2130166] {CVE-2022-39188} - mmu_gather: Let there be one tlb_{start,end}_vma() implementation (Waiman Long) [2130166] {CVE-2022-39188} - mmu_gather: Remove per arch tlb_{start,end}_vma() (Waiman Long) [2130166] {CVE-2022-39188} - x86/ldt: Use tlb_gather_mmu_fullmm() when freeing LDT page-tables (Waiman Long) [2130166] {CVE-2022-39188} - tlb: arch: Remove empty __tlb_remove_tlb_entry() stubs (Waiman Long) [2130166] {CVE-2022-39188} - tlb: mmu_gather: Remove start/end arguments from tlb_gather_mmu() (Waiman Long) [2130166] {CVE-2022-39188} - tlb: mmu_gather: Introduce tlb_gather_mmu_fullmm() (Waiman Long) [2130166] {CVE-2022-39188} - tlb: mmu_gather: Remove unused start/end arguments from tlb_finish_mmu() (Waiman Long) [2130166] {CVE-2022-39188} - mm: proc: Invalidate TLB after clearing soft-dirty page state (Waiman Long) [2130166] {CVE-2022-39188} - mm: fix clear_refs_write locking (Waiman Long) [2130166] {CVE-2022-39188} - s390/Kconfig: sort config S390 select list once again (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: provide MMU_GATHER_TABLE_FREE (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: rename HAVE_MMU_GATHER_NO_GATHER (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: rename HAVE_MMU_GATHER_PAGE_SIZE (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: rename HAVE_RCU_TABLE_FREE (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: avoid potential double flush (Waiman Long) [2130166] {CVE-2022-39188} - powerpc/mm/book3s64/radix: Flush the full mm even when need_flush_all is set (Waiman Long) [2130166] {CVE-2022-39188} - powerpc/mm/book3s64/radix: Use freed_tables instead of need_flush_all (Waiman Long) [2130166] {CVE-2022-39188} - mm/tlb: Remove CONFIG_HAVE_RCU_TABLE_INVALIDATE (Waiman Long) [2130166] {CVE-2022-39188} - Add skb drop reasons to IPv6 UDP receive path (Antoine Tenart) [2059158] - net: skb: export skb drop reaons to user by TRACE_DEFINE_ENUM (Antoine Tenart) [2059158] - net: skb: prevent the split of kfree_skb_reason() by gcc (Antoine Tenart) [2059158] - tcp: md5: fix IPv4-mapped support (Antoine Tenart) [2059158] - net: dropreason: reformat the comment fo skb drop reasons (Antoine Tenart) [2059158] - net: skb: use auto-generation to convert skb drop reason to string (Antoine Tenart) [2059158] - net: skb: move enum skb_drop_reason to standalone header file (Antoine Tenart) [2059158] - tcp_ipv6: set the drop_reason in the right place (Antoine Tenart) [2059158] - net: tcp: reset 'drop_reason' to NOT_SPCIFIED in tcp_v{4,6}_rcv() (Antoine Tenart) [2059158] - net: skb: change the definition SKB_DR_SET() (Antoine Tenart) [2059158] - net: skb: check the boundrary of drop reason in kfree_skb_reason() (Antoine Tenart) [2059158] - net: dm: check the boundary of skb drop reasons (Antoine Tenart) [2059158] - tcp: fix signed/unsigned comparison (Antoine Tenart) [2059158] - tcp: add drop reason support to tcp_ofo_queue() (Antoine Tenart) [2059158] - tcp: add drop reasons to tcp_rcv_synsent_state_process() (Antoine Tenart) [2059158] - tcp: make tcp_rcv_synsent_state_process() drop monitor friend (Antoine Tenart) [2059158] - tcp: add drop reason support to tcp_prune_ofo_queue() (Antoine Tenart) [2059158] - tcp: add two drop reasons for tcp_ack() (Antoine Tenart) [2059158] - tcp: add drop reasons to tcp_rcv_state_process() (Antoine Tenart) [2059158] - tcp: make tcp_rcv_state_process() drop monitor friendly (Antoine Tenart) [2059158] - tcp: add drop reason support to tcp_validate_incoming() (Antoine Tenart) [2059158] - tcp: get rid of rst_seq_match (Antoine Tenart) [2059158] - tcp: consume incoming skb leading to a reset (Antoine Tenart) [2059158] - tcp: tcp_send_challenge_ack delete useless param `skb` (Antoine Tenart) [2059158] - ipv6: fix NULL deref in ip6_rcv_core() (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to ip6_protocol_deliver_rcu() (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to ip6_rcv_core() (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to TLV parse (Antoine Tenart) [2059158] - net: ipv6: remove redundant statistics in ipv6_hop_jumbo() (Antoine Tenart) [2059158] - net: icmp: introduce function icmpv6_param_prob_reason() (Antoine Tenart) [2059158] - net: ip: add skb drop reasons to ip forwarding (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to ip6_pkt_drop() (Antoine Tenart) [2059158] - net: ipv4: add skb drop reasons to ip_error() (Antoine Tenart) [2059158] - skb: add some helpers for skb drop reasons (Antoine Tenart) [2059158] - net: icmp: add skb drop reasons to icmp protocol (Antoine Tenart) [2059158] - ping: Check return value of function 'ping_queue_rcv_skb' (Antoine Tenart) [2059158] - net: icmp: introduce __ping_queue_rcv_skb() to report drop reasons (Antoine Tenart) [2059158] - net: skb: rename SKB_DROP_REASON_PTYPE_ABSENT (Antoine Tenart) [2059158] - net: sock: introduce sock_queue_rcv_skb_reason() (Antoine Tenart) [2059158] - net: tcp: fix shim definition of tcp_inbound_md5_hash (Antoine Tenart) [2059158] - skb: make drop reason booleanable (Antoine Tenart) [2059158] - net/tcp: Merge TCP-MD5 inbound callbacks (Antoine Tenart) [2059158] - tcp: md5: add tcp_md5_needed jump label (Antoine Tenart) [2059158] - net: tun: track dropped skb via kfree_skb_reason() (Antoine Tenart) [2059158] - net: tun: split run_ebpf_filter() and pskb_trim() into different "if statement" (Antoine Tenart) [2059158] - net: tap: track dropped skb via kfree_skb_reason() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for __netif_receive_skb_core() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for sch_handle_ingress() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for do_xdp_generic() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for enqueue_to_backlog() (Antoine Tenart) [2059158] - net: dev: add skb drop reasons to __dev_xmit_skb() (Antoine Tenart) [2059158] - net: skb: introduce the function kfree_skb_list_reason() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for sch_handle_egress() (Antoine Tenart) [2059158] - net: neigh: add skb drop reasons to arp_error_report() (Antoine Tenart) [2059158] - net: neigh: use kfree_skb_reason() for __neigh_event_send() (Antoine Tenart) [2059158] - net: ip: add skb drop reasons for ip egress path (Antoine Tenart) [2059158] - net: tcp: use tcp_drop_reason() for tcp_data_queue_ofo() (Antoine Tenart) [2059158] - net: tcp: use tcp_drop_reason() for tcp_data_queue() (Antoine Tenart) [2059158] - net: tcp: use tcp_drop_reason() for tcp_rcv_established() (Antoine Tenart) [2059158] - net: tcp: use kfree_skb_reason() for tcp_v{4,6}_do_rcv() (Antoine Tenart) [2059158] - net: tcp: add skb drop reasons to tcp_add_backlog() (Antoine Tenart) [2059158] - net: tcp: add skb drop reasons to tcp_v{4,6}_inbound_md5_hash() (Antoine Tenart) [2059158] - ipv4/tcp: Pass dif and sdif to tcp_v4_inbound_md5_hash (Antoine Tenart) [2059158] - ipv6/tcp: Pass dif and sdif to tcp_v6_inbound_md5_hash (Antoine Tenart) [2059158] - ipv4/tcp: Use local variable for tcp_md5_addr (Antoine Tenart) [2059158] - net: tcp: use kfree_skb_reason() for tcp_v6_rcv() (Antoine Tenart) [2059158] - net: tcp: add skb drop reasons to tcp_v4_rcv() (Antoine Tenart) [2059158] - net: tcp: introduce tcp_drop_reason() (Antoine Tenart) [2059158] - ipv6: Add reasons for skb drops to __udp6_lib_rcv (Antoine Tenart) [2059158] - net: drop_monitor: support drop reason (Antoine Tenart) [2059158] - net: udp: use kfree_skb_reason() in __udp_queue_rcv_skb() (Antoine Tenart) [2059158] - net: udp: use kfree_skb_reason() in udp_queue_rcv_one_skb() (Antoine Tenart) [2059158] - net: ipv4: use kfree_skb_reason() in ip_protocol_deliver_rcu() (Antoine Tenart) [2059158] - net: ipv4: use kfree_skb_reason() in ip_rcv_finish_core() (Antoine Tenart) [2059158] - net: ipv4: use kfree_skb_reason() in ip_rcv_core() (Antoine Tenart) [2059158] - net: netfilter: use kfree_drop_reason() for NF_DROP (Antoine Tenart) [2059158] - net: skb_drop_reason: add document for drop reasons (Antoine Tenart) [2059158] - net: socket: rename SKB_DROP_REASON_SOCKET_FILTER (Antoine Tenart) [2059158] - net: skb: use kfree_skb_reason() in __udp4_lib_rcv() (Antoine Tenart) [2059158] - net: skb: use kfree_skb_reason() in tcp_v4_rcv() (Antoine Tenart) [2059158] - net: skb: introduce kfree_skb_reason() (Antoine Tenart) [2059158] - bnx2x: Fix comment typo (Manish Chopra) [2111882] - bnx2x: Fix spelling mistake "regiser" -> "register" (Manish Chopra) [2111882] - bnx2x: Fix undefined behavior due to shift overflowing the constant (Manish Chopra) [2111882] - net: sched: act_ct: fix possible refcount leak in tcf_ct_init() (Davide Caratti) [2133741] - net: sched: fix possible refcount leak in tc_new_tfilter() (Davide Caratti) [2133741] - sch_sfb: Also store skb len before calling child enqueue (Davide Caratti) [2133741] - sch_sfb: Don't assume the skb is still around after enqueueing to child (Davide Caratti) [2133741] - net/sched: fix netdevice reference leaks in attach_default_qdiscs() (Davide Caratti) [2133741] - net: sched: tbf: don't call qdisc_put() while holding tree lock (Davide Caratti) [2133741] - net: Fix data-races around weight_p and dev_weight_[rt]x_bias. (Davide Caratti) [2133741] - net/sched: act_api: Notify user space if any actions were flushed before error (Davide Caratti) [2133741] - tipc: fix an information leak in tipc_topsrv_kern_subscr (Xin Long) [2134962] - tipc: Fix recognition of trial period (Xin Long) [2134962] - tipc: fix shift wrapping bug in map_get() (Xin Long) [2134962] - PCI/ASPM: Make Intel DG2 L1 acceptable latency unlimited (Myron Stowe) [2072656] - x86/pci/xen: Use msi_msg shadow structs (Jerry Snitselaar) [2133518] - iommu/intel: Use msi_msg shadow structs (Jerry Snitselaar) [2133518] - PCI: MSI: Fix Kconfig dependencies for PCI_MSI_ARCH_FALLBACKS (Jerry Snitselaar) [2133518] - x86/apic/msi: Unbreak DMAR and HPET MSI (Jerry Snitselaar) [2133518] - iommu/amd: Remove domain search for PCI/MSI (Jerry Snitselaar) [2133518] - iommu/vt-d: Remove domain search for PCI/MSI[X] (Jerry Snitselaar) [2133518] - x86/irq: Make most MSI ops XEN private (Jerry Snitselaar) [2133518] - x86/irq: Cleanup the arch_*_msi_irqs() leftovers (Jerry Snitselaar) [2133518] - PCI/MSI: Make arch_.*_msi_irq[s] fallbacks selectable (Jerry Snitselaar) [2133518] - x86/xen: Wrap XEN MSI management into irqdomain (Jerry Snitselaar) [2133518] - x86/xen: Consolidate XEN-MSI init (Jerry Snitselaar) [2133518] - x86/xen: Rework MSI teardown (Jerry Snitselaar) [2133518] - x86/xen: Make xen_msi_init() static and rename it to xen_hvm_msi_init() (Jerry Snitselaar) [2133518] - x86/irq: Move apic_post_init() invocation to one place (Jerry Snitselaar) [2133518] - x86/msi: Use generic MSI domain ops (Jerry Snitselaar) [2133518] - x86/msi: Remove pointless vcpu_affinity callback (Jerry Snitselaar) [2133518] - netfilter: nf_conntrack_irc: Tighten matching on DCC message (Wander Lairson Costa) [2124092] {CVE-2022-2663} - netfilter: nf_conntrack_irc: Fix forged IP logic (Wander Lairson Costa) [2124092] {CVE-2022-2663} - ice: Add support Flex RXD (Michal Schmidt) [2131310] - asm-generic: sections: refactor memory_intersects (Jerry Snitselaar) [2112119] - swiotlb: fix passing local variable to debugfs_create_ulong() (Jerry Snitselaar) [2112119] - swiotlb: move struct io_tlb_slot to swiotlb.c (Jerry Snitselaar) [2112119] - swiotlb: ensure a segment doesn't cross the area boundary (Jerry Snitselaar) [2112119] - swiotlb: consolidate rounding up default_nslabs (Jerry Snitselaar) [2112119] - swiotlb: remove unused fields in io_tlb_mem (Jerry Snitselaar) [2112119] - swiotlb: fix use after free on error handling path (Jerry Snitselaar) [2112119] - swiotlb: split up the global swiotlb lock (Jerry Snitselaar) [2112119] - swiotlb: fail map correctly with failed io_tlb_default_mem (Jerry Snitselaar) [2112119] - swiotlb: remove a useless return in swiotlb_init (Jerry Snitselaar) [2112119] - swiotlb: remove the unused swiotlb_force declaration (Jerry Snitselaar) [2112119] - iommu/dma: Fix race condition during iova_domain initialization (Jerry Snitselaar) [2112119] - iommu/amd: Fix compile warning in init code (Jerry Snitselaar) [2106599] - iommu/amd: Simplify and Consolidate Virtual APIC (AVIC) Enablement (Jerry Snitselaar) [2106599] - iommu/vt-d: Check correct capability for sagaw determination (Jerry Snitselaar) [2112119] - iommu/vt-d: Correctly calculate sagaw value of IOMMU (Jerry Snitselaar) [2112119] - iommu/vt-d: Fix kdump kernels boot failure with scalable mode (Jerry Snitselaar) [2080413] - iommu/amd: use full 64-bit value in build_completion_wait() (Jerry Snitselaar) [2112119] - swiotlb: avoid potential left shift overflow (Jerry Snitselaar) [2112119] - dma-debug: improve search for partial syncs (Jerry Snitselaar) [2112119] - iommu/iova: Improve 32-bit free space estimate (Jerry Snitselaar) [2112119] - iommu/amd: Handle return of iommu_device_sysfs_add (Jerry Snitselaar) [2112119] - swiotlb: fix setting ->force_bounce (Jerry Snitselaar) [2112119] - swiotlb: use the right nslabs-derived sizes in swiotlb_init_late (Jerry Snitselaar) [2112119] - swiotlb: use the right nslabs value in swiotlb_init_remap (Jerry Snitselaar) [2112119] - swiotlb: don't panic when the swiotlb buffer can't be allocated (Jerry Snitselaar) [2112119] - x86: remove cruft from (Jerry Snitselaar) [2112119] - swiotlb: remove swiotlb_init_with_tbl and swiotlb_init_late_with_tbl (Jerry Snitselaar) [2112119] - swiotlb: provide swiotlb_init variants that remap the buffer (Jerry Snitselaar) [2112119] - swiotlb: pass a gfp_mask argument to swiotlb_init_late (Jerry Snitselaar) [2112119] - swiotlb: add a SWIOTLB_ANY flag to lift the low memory restriction (Jerry Snitselaar) [2112119] - swiotlb: make the swiotlb_init interface more useful (Jerry Snitselaar) [2112119] - x86: centralize setting SWIOTLB_FORCE when guest memory encryption is enabled (Jerry Snitselaar) [2112119] - x86: remove the IOMMU table infrastructure (Jerry Snitselaar) [2112119] - swiotlb: rename swiotlb_late_init_with_default_size (Jerry Snitselaar) [2112119] - swiotlb: simplify swiotlb_max_segment (Jerry Snitselaar) [2112119] - iommu/vt-d: avoid invalid memory access via node_online(NUMA_NO_NODE) (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: check return value after calling platform_get_resource() (Jerry Snitselaar) [2112119] - iommu/arm-smmu: fix possible null-ptr-deref in arm_smmu_device_probe() (Jerry Snitselaar) [2112119] - iommu/amd: Increase timeout waiting for GA log enablement (Jerry Snitselaar) [2112119] - iommu/amd: Do not call sleep while holding spinlock (Jerry Snitselaar) [2112119] - iommu/amd: Remove redundant check (Jerry Snitselaar) [2112119] - swiotlb: simplify array allocation (Jerry Snitselaar) [2112119] - swiotlb: tidy up includes (Jerry Snitselaar) [2112119] - treewide: Replace the use of mem_encrypt_active() with cc_platform_has() (Jerry Snitselaar) [2112119] - swiotlb: simplify debugfs setup (Jerry Snitselaar) [2112119] - iommu: Log iova range in map/unmap trace events (Jerry Snitselaar) [2112119] - iommu/amd: Improve amd_iommu_v2_exit() (Jerry Snitselaar) [2112119] - iommu/amd: Remove unused struct fault.devid (Jerry Snitselaar) [2112119] - iommu/amd: Clean up function declarations (Jerry Snitselaar) [2112119] - iommu/amd: Improve error handling for amd_iommu_init_pci (Jerry Snitselaar) [2112119] - iommu/iova: Separate out rcache init (Jerry Snitselaar) [2112119] - iommu/iova: Temporarily include dma-mapping.h from iova.h (Jerry Snitselaar) [2112119] - iommu: Move flush queue data into iommu_dma_cookie (Jerry Snitselaar) [2112119] - iommu/iova: Move flush queue code to iommu-dma (Jerry Snitselaar) [2112119] - iommu/iova: Consolidate flush queue code (Jerry Snitselaar) [2112119] - iommu/vt-d: Use put_pages_list (Jerry Snitselaar) [2112119] - iommu/amd: Use put_pages_list (Jerry Snitselaar) [2112119] - iommu/amd: Simplify pagetable freeing (Jerry Snitselaar) [2112119] - iommu/iova: Squash flush_cb abstraction (Jerry Snitselaar) [2112119] - iommu/iova: Squash entry_dtor abstraction (Jerry Snitselaar) [2112119] - iommu/iova: Move fast alloc size roundup into alloc_iova_fast() (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: fix event handling soft lockup (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: Avoid open coded arithmetic in memory allocation (Jerry Snitselaar) [2112119] - iommu/amd: Fix loop timeout issue in iommu_ga_log_enable() (Jerry Snitselaar) [2112119] - iommu/intel: Use msi_msg shadow structs (Jerry Snitselaar) [2112119] - dma-mapping: use 'bitmap_zalloc()' when applicable (Jerry Snitselaar) [2112119] - iommu/dma: Use kvcalloc() instead of kvzalloc() (Jerry Snitselaar) [2112119] - iommu/vt-d: Convert the return type of first_pte_in_page to bool (Jerry Snitselaar) [2112119] - iommu/vt-d: Use second level for GPA->HPA translation (Jerry Snitselaar) [2112119] - iommu/vt-d: Remove duplicate identity domain flag (Jerry Snitselaar) [2112119] - iommu/vt-d: Do not falsely log intel_iommu is unsupported kernel option (Jerry Snitselaar) [2112119] - iommu/dma: Unexport IOVA cookie management (Jerry Snitselaar) [2112119] - iommu/amd: Use struct_group() for memcpy() region (Jerry Snitselaar) [2112119] - dma-mapping: remove bogus test for pfn_valid from dma_map_resource (Jerry Snitselaar) [2112119] - iommu/vt-d: Use pci_dev_id() helper (Jerry Snitselaar) [2112119] - swiotlb-xen: this is PV-only on x86 (Jerry Snitselaar) [2112119] - xen/pci-swiotlb: reduce visibility of symbols (Jerry Snitselaar) [2112119] - iova: Export alloc_iova_fast() and free_iova_fast() (Jerry Snitselaar) [2112119] - iommu: Clarify default domain Kconfig (Jerry Snitselaar) [2112119] - iommu/io-pgtable: Abstract iommu_iotlb_gather access (Jerry Snitselaar) [2112119] - iommu/vt-d: Refactor Kconfig a bit (Jerry Snitselaar) [2112119] - iommu: Allow enabling non-strict mode dynamically (Jerry Snitselaar) [2112119] - iommu: Merge strictness and domain type configs (Jerry Snitselaar) [2112119] - iommu: Only log strictness for DMA domains (Jerry Snitselaar) [2112119] - iommu: Expose DMA domain strictness via sysfs (Jerry Snitselaar) [2112119] - iommu: Express DMA strictness via the domain type (Jerry Snitselaar) [2112119] - iommu/vt-d: Prepare for multiple DMA domain types (Jerry Snitselaar) [2112119] - iommu/arm-smmu: Prepare for multiple DMA domain types (Jerry Snitselaar) [2112119] - iommu/amd: Prepare for multiple DMA domain types (Jerry Snitselaar) [2112119] - iommu: Introduce explicit type for non-strict DMA domains (Jerry Snitselaar) [2112119] - iommu/io-pgtable: Remove non-strict quirk (Jerry Snitselaar) [2112119] - iommu: Indicate queued flushes via gather data (Jerry Snitselaar) [2112119] - iommu/amd: Remove stale amd_iommu_unmap_flush usage (Jerry Snitselaar) [2112119] - iommu: Remove mode argument from iommu_set_dma_strict() (Jerry Snitselaar) [2112119] - iommu/amd: Add support for IOMMU default DMA mode build options (Jerry Snitselaar) [2112119] - iommu/vt-d: Add support for IOMMU default DMA mode build options (Jerry Snitselaar) [2112119] - iommu: Enhance IOMMU default DMA mode build options (Jerry Snitselaar) [2112119] - iommu: Print strict or lazy mode at init time (Jerry Snitselaar) [2112119] - iommu: Deprecate Intel and AMD cmdline methods to enable strict mode (Jerry Snitselaar) [2112119] - dma-debug: use memory_intersects() directly (Jerry Snitselaar) [2112119] - dma-debug: fix return value of __setup handlers (Jerry Snitselaar) [2112119] - arm-smmu-qcom: Ensure the qcom_scm driver has finished probing (Jerry Snitselaar) [2112119] - iommu/io-pgtable-arm: Clean up faulty sanity check (Jerry Snitselaar) [2112119] - iommu/vt-d: Fix RCU list debugging warnings (Jerry Snitselaar) [2112119] - iommu/dma: add a new dma_map_ops of get_merge_boundary() (Jerry Snitselaar) [2112119] - swiotlb: do not zero buffer in set_memory_decrypted() (Jerry Snitselaar) [2112119] - iommu: iommu_ops RH_KABI cleanup (Jerry Snitselaar) [2112119] - device: Fix RH_KABI work around (Jerry Snitselaar) [2112357] - iommu/vt-d: Drop stop marker messages (Jerry Snitselaar) [2112119] - iommu/vt-d: Remove unused function intel_svm_capable() (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: Fix size calculation in arm_smmu_mm_invalidate_range() (Jerry Snitselaar) [2112119] - iommu/vt-d: Delete dev_has_feat callback (Jerry Snitselaar) [2112119] - iommu/amd: Remove useless irq affinity notifier (Jerry Snitselaar) [2112119]- scsi: qedi: Fix ABBA deadlock in qedi_process_tmf_resp() and qedi_process_cmd_cleanup_resp() (Nilesh Javali) [2109890] - scsi: qedi: Remove set but unused 'page' variable (Nilesh Javali) [2109890] - x86/elf: Disable automatic READ_IMPLIES_EXEC on 64-bit (Wander Lairson Costa) [2070700] {CVE-2022-25265} - x86/elf: Split READ_IMPLIES_EXEC from executable PT_GNU_STACK (Wander Lairson Costa) [2070700] {CVE-2022-25265} - x86/elf: Add table to document READ_IMPLIES_EXEC (Wander Lairson Costa) [2070700] {CVE-2022-25265} - RHEL-only: KVM: selftests: Enable rseq_test on aarch64 (Gavin Shan) [2128974] - KVM: selftests: Use getcpu() instead of sched_getcpu() in rseq_test (Gavin Shan) [2128974] - selftests: kvm: Fix a compile error in selftests/kvm/rseq_test.c (Gavin Shan) [2128974] - KVM: selftests: Fix target thread to be migrated in rseq_test (Gavin Shan) [2128974] - selftests: KVM: Handle compiler optimizations in ucall (Gavin Shan) [2128974] - selftests: kvm: replace ternary operator with min() (Gavin Shan) [2128974] - KVM: selftests: Fix typo in vgic_init test (Gavin Shan) [2128974] - KVM: selftests: Fix buggy-but-benign check in test_v3_new_redist_regions() (Gavin Shan) [2128974] - KVM: arm64: vgic: Fix exit condition in scan_its_table() (Gavin Shan) [2128974] - KVM: arm64: selftests: Add support for GICv2 on v3 (Gavin Shan) [2128974] - KVM: arm64: Fix comment typo in nvhe/switch.c (Gavin Shan) [2128974] - KVM: arm64: vgic: Remove duplicate check in update_affinity_collection() (Gavin Shan) [2128974] - KVM: arm64: Don't return from void function (Gavin Shan) [2128974] - KVM: arm64: Drop stale comment (Gavin Shan) [2128974] - KVM: arm64: Warn if accessing timer pending state outside of vcpu context (Gavin Shan) [2128974] - KVM: arm64: Replace vgic_v3_uaccess_read_pending with vgic_uaccess_read_pending (Gavin Shan) [2128974] - KVM: arm64: vgic: Undo work in failed ITS restores (Gavin Shan) [2128974] - KVM: arm64: vgic: Do not ignore vgic_its_restore_cte failures (Gavin Shan) [2128974] - KVM: arm64: vgic: Add more checks when restoring ITS tables (Gavin Shan) [2128974] - KVM: arm64: vgic: Check that new ITEs could be saved in guest memory (Gavin Shan) [2128974] - KVM: arm64: nvhe: Eliminate kernel-doc warnings (Gavin Shan) [2128974] - KVM: arm64: Print emulated register table name when it is unsorted (Gavin Shan) [2128974] - KVM: arm64: Don't BUG_ON() if emulated register table is unsorted (Gavin Shan) [2128974] - KVM: arm64: Inject exception on out-of-IPA-range translation fault (Gavin Shan) [2128974] - KVM: arm64: vgic: Remove unnecessary type castings (Gavin Shan) [2128974] - KVM: arm64: Drop unused param from kvm_psci_version() (Gavin Shan) [2128974] - KVM: arm64: vgic: Add memcg accounting to vgic allocations (Gavin Shan) [2128974] - x86/split_lock: Enable the split lock feature on Raptor Lake (Prarit Bhargava) [2076738] - mm: prevent page_frag_alloc() from corrupting the memory (Izabela Bakollari) [2132265] - RDMA/mlx5: Set local port to one when accessing counters (Mohammad Kabat) [2077119] - scsi: ch: Do not initialise statics to 0 (Ewan D. Milne) [2132458] - scsi: core: Fix warning in scsi_alloc_sgtables() (Ewan D. Milne) [2132458] - scsi: core: Move the definition of SCSI_QUEUE_DELAY (Ewan D. Milne) [2132458] - scsi: scsi_debug: Fix zone transition to full condition (Ewan D. Milne) [2132458] - scsi: sd_zbc: Prevent zone information memory leak (Ewan D. Milne) [2132458] - scsi: sd: Fix potential NULL pointer dereference (Ewan D. Milne) [2132458] - scsi: sr: Add memory allocation failure handling for get_capabilities() (Ewan D. Milne) [2132458] - scsi: sd: Use cached ATA Information VPD page (Ewan D. Milne) [2132458] - scsi: core: Do not truncate INQUIRY data on modern devices (Ewan D. Milne) [2132458] - scsi: core: Pick suitable allocation length in scsi_report_opcode() (Ewan D. Milne) [2132458] - scsi: core: Query VPD size before getting full page (Ewan D. Milne) [2132458] - scsi: scsi_debug: Add gap zone support (Ewan D. Milne) [2132458] - scsi: scsi_debug: Rename zone type constants (Ewan D. Milne) [2132458] - scsi: scsi_debug: Fix a typo (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Hide gap zones (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Return early in sd_zbc_check_zoned_characteristics() (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Introduce struct zoned_disk_info (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Use logical blocks as unit when querying zones (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Verify that the zone size is a power of two (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Improve source code documentation (Ewan D. Milne) [2132458] - scsi: sr: Do not leak information in ioctl (Ewan D. Milne) [2132458] - scsi: core: Remove unreachable code warning (Ewan D. Milne) [2132458] - scsi: libfc: Fix use after free in fc_exch_abts_resp() (Ewan D. Milne) [2132458] - scsi: scsi_debug: Silence unexpected unlock warnings (Ewan D. Milne) [2132458] - scsi: Remove unused member cmd_pool for structure scsi_host_template (Ewan D. Milne) [2132458] - scsi: scsi_debug: Add environmental reporting log subpage (Ewan D. Milne) [2132458] - scsi: scsi_debug: Add no_rwlock parameter (Ewan D. Milne) [2132458] - scsi: scsi_debug: Divide power on reset UNIT ATTENTION (Ewan D. Milne) [2132458] - scsi: scsi_debug: Use TASK SET FULL more (Ewan D. Milne) [2132458] - scsi: scsi_debug: Strengthen defer_t accesses (Ewan D. Milne) [2132458] - scsi: ch: Don't use GFP_DMA (Ewan D. Milne) [2132458] - scsi: scsi_transport_sas: Add 22.5 Gbps link rate definitions (Ewan D. Milne) [2132458] - scsi: sd: Free scsi_disk device via put_device() (Ewan D. Milne) [2132458] - scsi: scsi_debug: Adjust num_parts to create equally sized partitions (Ewan D. Milne) [2132458] - scsi: ch: remove ch_mutex() (Ewan D. Milne) [2132458] - scsi: ch: synchronize ch_probe() and ch_open() (Ewan D. Milne) [2132458] - scsi: ch: fixup refcounting imbalance for SCSI devices (Ewan D. Milne) [2132458] - scsi: mpi3mr: Schedule IRQ kthreads only on non-RT kernels (Tomas Henzl) [2134535] - netfilter: flowtable: fix stuck flows on cleanup due to pending work (Phil Sutter) [2131370] - netfilter: flowtable: add function to invoke garbage collection immediately (Phil Sutter) [2131370] - netfilter: flowtable: pass flowtable to nf_flow_table_iterate() (Phil Sutter) [2131370] - netfilter: flowtable: separate replace, destroy and stats to different workqueues (Phil Sutter) [2131370] - drm/mgag200: Fix PLL setup for G200_SE_A rev >=4 (Jocelyn Falempe) [2130159] - af_key: Do not call xfrm_probe_algs in parallel (Sabrina Dubroca) [2122369] {CVE-2022-3028} - xfrm: Update ipcomp_scratches with NULL when freed (Sabrina Dubroca) [2136193] - esp: choose the correct inner protocol for GSO on inter address family tunnels (Sabrina Dubroca) [2136193] - xfrm: fix refcount leak in __xfrm_policy_check() (Sabrina Dubroca) [2136193] - xfrm: xfrm_policy: fix a possible double xfrm_pols_put() in xfrm_bundle_lookup() (Sabrina Dubroca) [2136193] - net: Fix esp GSO on inter address family tunnels. (Sabrina Dubroca) [2136193] - esp: Fix BEET mode inter address family tunneling on GSO (Sabrina Dubroca) [2136193] - cifs: fix check of dfs interlinks (Ronnie Sahlberg) [2132414] - powerpc/pseries: Fix numa FORM2 parsing fallback code (Nico Pache) [2089496] - powerpc/pseries: rename numa_dist_table to form2_distances (Nico Pache) [2089496] - x86/pkey: Fix undefined behaviour with PKRU_WD_BIT (Nico Pache) [2089496] - hugetlb: add lockdep check for i_mmap_rwsem held in huge_pmd_share (Nico Pache) [2089496] - mm: page_io: fix psi memory pressure error on cold swapins (Nico Pache) [2089496] - mm/memcg: Remove 'page' parameter to mem_cgroup_charge_statistics() (Nico Pache) [2089496] - mm: workingset: replace IRQ-off check with a lockdep assert. (Nico Pache) [2089496] - mm/madvise: fix potential pte_unmap_unlock pte error (Nico Pache) [2089496] - mm/mmu_notifier.c: fix race in mmu_interval_notifier_remove() (Nico Pache) [2089496] - mm/sparse.c: remove NULL check in clear_hwpoisoned_pages() (Nico Pache) [2089496] - node: fix device cleanups in error handling code (Nico Pache) [2089496] - x86/setup: Fix static memory detection (Nico Pache) [2089496] - x86/fault: Don't send SIGSEGV twice on SEGV_PKUERR (Nico Pache) [2089496] - s390/startup: round down "mem" option to page boundary (Nico Pache) [2089496] - powerpc/64s: Remove 'dummy_copy_buffer' (Nico Pache) [2089496] - page_alloc: fix invalid watermark check on a negative value (Nico Pache) [2089496] - lib/radix-tree: remove unused argument of insert_entries (Nico Pache) [2089496] - drm/radeon: fix incorrrect SPDX-License-Identifiers (Nico Pache) [2089496] - mm/swap: fix the obsolete comment for SWP_TYPE_SHIFT (Nico Pache) [2089496] - irq_work: use kasan_record_aux_stack_noalloc() record callstack (Nico Pache) [2089496] - kdb: Fix the putarea helper function (Nico Pache) [2089496] - mm: slab: Delete unused SLAB_DEACTIVATED flag (Nico Pache) [2089496] - mm, kasan: use compare-exchange operation to set KASAN page tag (Nico Pache) [2089496] - rcu: Avoid alloc_pages() when recording stack (Nico Pache) [2089496] - workqueue, kasan: avoid alloc_pages() when recording stack (Nico Pache) [2089496] - kasan: generic: introduce kasan_record_aux_stack_noalloc() (Nico Pache) [2089496] - kasan: common: provide can_alloc in kasan_save_stack() (Nico Pache) [2089496] - lib/stackdepot: remove unused function argument (Nico Pache) [2089496] - lib/stackdepot: include gfp.h (Nico Pache) [2089496] - blk-cgroup: blk_cgroup_bio_start() should use irq-safe operations on blkg->iostat_cpu (Nico Pache) [2089496] - libnvdimm/pmem: Fix crash triggered when I/O in-flight during unbind (Nico Pache) [2089496] - include/trace/events/vmscan.h: remove mm_vmscan_inactive_list_is_low (Nico Pache) [2089496] - khugepaged: selftests: remove debug_cow (Nico Pache) [2089496] - mm/mmzone.h: simplify is_highmem_idx() (Nico Pache) [2089496] - mm/page-writeback: use __this_cpu_inc() in account_page_dirtied() (Nico Pache) [2089496] - mm/page-writeback: update the comment of Dirty position control (Nico Pache) [2089496] - mm/page-writeback: Fix performance when BDI's share of ratio is 0. (Nico Pache) [2089496] - fuse: ignore PG_workingset after stealing (Nico Pache) [2089496] - mm/slub: actually fix freelist pointer vs redzoning (Nico Pache) [2089496] - mm/slub: clarify verification reporting (Nico Pache) [2089496] - irq_work: Make irq_work_queue() NMI-safe again (Nico Pache) [2089496] - mm/huge_memory.c: remove unused macro TRANSPARENT_HUGEPAGE_DEBUG_COW_FLAG (Nico Pache) [2089496] - irq_work: record irq_work_queue() call stack (Nico Pache) [2089496] - arm64: kasan: fix page_alloc tagging with DEBUG_VIRTUAL (Nico Pache) [2089496] - mm/arm64: Correct obsolete comment in do_page_fault() (Nico Pache) [2089496] - kernel: kexec: remove the lock operation of system_transition_mutex (Nico Pache) [2089496] - libnvdimm/pmem: Remove unused header (Nico Pache) [2089496] - workqueue: kasan: record workqueue stack (Nico Pache) [2089496] - lib/test_kasan.c: add workqueue test case (Nico Pache) [2089496] - page_frag: Recover from memory pressure (Nico Pache) [2089496] - mm: use helper function put_write_access() (Nico Pache) [2089496] - mm/swapfile.c: remove unnecessary goto out in _swap_info_get() (Nico Pache) [2089496] - mm/swap.c: fix incomplete comment in lru_cache_add_inactive_or_unevictable() (Nico Pache) [2089496] - mm/page_io.c: remove useless out label in __swap_writepage() (Nico Pache) [2089496] - mm/swap_slots.c: remove always zero and unused return value of enable_swap_slots_cache() (Nico Pache) [2089496] - mm/swap.c: fix confusing comment in release_pages() (Nico Pache) [2089496] - mm: annotate a data race in page_zonenum() (Nico Pache) [2089496] - mm/swap.c: annotate data races for lru_rotate_pvecs (Nico Pache) [2089496] - mm/rmap: annotate a data race at tlb_flush_batched (Nico Pache) [2089496] - mm/mempool: fix a data race in mempool_free() (Nico Pache) [2089496] - mm/list_lru: fix a data race in list_lru_count_one (Nico Pache) [2089496] - mm/memcontrol: fix a data race in scan count (Nico Pache) [2089496] - mm/swapfile: fix and annotate various data races (Nico Pache) [2089496] - mm: thp: remove debug_cow switch (Nico Pache) [2089496] - page_alloc: consider highatomic reserve in watermark fast (Nico Pache) [2089496] - mm: remove unnecessary wrapper function do_mmap_pgoff() (Nico Pache) [2089496] - doc: don't use deprecated "---help---" markers in target docs (Nico Pache) [2089496] - doc: cgroup: update note about conditions when oom killer is invoked (Nico Pache) [2089496] - mm: add kvfree_sensitive() for freeing sensitive data objects (Nico Pache) [2089496] - f2fs: fix retry logic in f2fs_write_cache_pages() (Nico Pache) [2089496] - mm/hugetlb: avoid unnecessary check on pud and pmd entry in huge_pte_offset (Nico Pache) [2089496] - mm/page-writeback.c: remove unused variable (Nico Pache) [2089496] - zswap: docs/vm: Fix typo accept_threshold_percent in zswap.rst (Nico Pache) [2089496] - tracing: Add a vmalloc_sync_mappings() for safe measure (Nico Pache) [2089496] - mm/hugetlb: fix a addressing exception caused by huge_pte_offset (Nico Pache) [2089496] - mm/page-writeback.c: write_cache_pages(): deduplicate identical checks (Nico Pache) [2089496] - revert "topology: add support for node_to_mem_node() to determine the fallback node" (Nico Pache) [2089496] - net: memcg: fix lockdep splat in inet_csk_accept() (Nico Pache) [2089496] - net: memcg: late association of sock to memcg (Nico Pache) [2089496] - tmpfs: deny and force are not huge mount options (Nico Pache) [2089496] - mm/zswap.c: add allocation hysteresis if pool limit is hit (Nico Pache) [2089496] - mm/swapfile.c: swap_next should increase position index (Nico Pache) [2089496] - fat: use prandom_u32() for i_generation (Nico Pache) [2089496] - mm/mmap.c: rb_parent is not necessary in __vma_link_list() (Nico Pache) [2089496] - mm/mmap.c: __vma_unlink_prev() is not necessary now (Nico Pache) [2089496] - docs: kmemleak: DEBUG_KMEMLEAK_EARLY_LOG_SIZE changed names (Nico Pache) [2089496] - mm/mmap.c: prev could be retrieved from vma->vm_prev (Nico Pache) [2089496] - mm/zsmalloc.c: fix a -Wunused-function warning (Nico Pache) [2089496] - mm/rmap.c: remove set but not used variable 'cstart' (Nico Pache) [2089496] - tools headers UAPI: Update tools's copy of mman.h headers (Nico Pache) [2089496] - mm/mmap: move common defines to mman-common.h (Nico Pache) [2089496] - mm: fix the MAP_UNINITIALIZED flag (Nico Pache) [2089496] - mm: vmalloc: show number of vmalloc pages in /proc/meminfo (Nico Pache) [2089496] - slab: remove /proc/slab_allocators (Nico Pache) [2089496] - mm/huge_memory.c: fix "orig_pud" set but not used (Nico Pache) [2089496] - mm: hwpoison: use do_send_sig_info() instead of force_sig() (Nico Pache) [2089496] - mm, page_alloc: drop should_suppress_show_mem (Nico Pache) [2089496] - mm,page_alloc: PF_WQ_WORKER threads must sleep at should_reclaim_retry() (Nico Pache) [2089496] - powerpc/8xx: Use patch_site for perf counters setup (Nico Pache) [2089496] - powerpc/8xx: Use patch_site for memory setup patching (Nico Pache) [2089496] - Revert "powerpc/8xx: Use L1 entry APG to handle _PAGE_ACCESSED for CONFIG_SWAP" (Nico Pache) [2089496] - mm/swapfile.c: put_swap_page: share more between huge/normal code path (Nico Pache) [2089496] - mm, swap, get_swap_pages: use entry_size instead of cluster in parameter (Nico Pache) [2089496] - mm/swapfile.c: add __swap_entry_free_locked() (Nico Pache) [2089496] - mm/swapfile.c: unify normal/huge code path in put_swap_page() (Nico Pache) [2089496] - mm/swapfile.c: unify normal/huge code path in swap_page_trans_huge_swapped() (Nico Pache) [2089496] - mm/swapfile.c: replace some #ifdef with IS_ENABLED() (Nico Pache) [2089496] - mm: swap: add comments to lock_cluster_or_swap_info() (Nico Pache) [2089496] - mm/swapfile.c: use swap_count() in swap_page_trans_huge_swapped() (Nico Pache) [2089496] - mm, oom: remove sleep from under oom_lock (Nico Pache) [2089496] - mm/hugetlb: remove gigantic page support for HIGHMEM (Nico Pache) [2089496] - mm/page-writeback.c: update stale account_page_redirty() comment (Nico Pache) [2089496] - shmem: use monotonic time for i_generation (Nico Pache) [2089496] - mptcp: increase default max additional subflows to 2 (Paolo Abeni) [2127136] - ipv6/addrconf: fix a null-ptr-deref bug for ip6_ptr (Davide Caratti) [2103990] - ipv6: Refactor fib6_ignore_linkdown (Davide Caratti) [2103990] - Revert "net: af_key: add check for pfkey_broadcast in function pfkey_process" (Davide Caratti) [2103990] - net: af_key: add check for pfkey_broadcast in function pfkey_process (Davide Caratti) [2103990] - certs: Add FIPS selftests (Vladis Dronov) [2134828] - certs: Move load_certificate_list() to be with the asymmetric keys code (Vladis Dronov) [2134828]- selftests/bpf: Limit unroll_count for pyperf600 test (Viktor Malik) [2139128]- perf affinity: Fix out of bound access to "sched_cpus" mask (Michael Petlan) [2125952] - net: skb: introduce and use a single page frag cache (Paolo Abeni) [2063335] - powerpc/pseries/vas: Pass hw_cpu_id to node associativity HCALL (Steve Best) [2131651] - agp/intel: Rename intel-gtt symbols (Jocelyn Falempe) [2115871] - drm/i915/gt: Split intel-gtt functions by arch (Jocelyn Falempe) [2115871] - drm: Implement DRM aperture helpers under video/ (Jocelyn Falempe) [2115871] - efi: Fix build error due to enum collision between efi.h and ima.h (Jocelyn Falempe) [2115871] - Revert "workqueue: remove unused cancel_work()" (Jocelyn Falempe) [2115871] - dma-buf: fix use of DMA_BUF_SET_NAME_{A,B} in userspace (Jocelyn Falempe) [2115871] - drm/i915/gsc: add gsc as a mei auxiliary device (Jocelyn Falempe) [2115871] - drm/i915: Prepare for multiple GTs (Jocelyn Falempe) [2115871] - drm/i915/gt: add gt_is_root() helper (Jocelyn Falempe) [2115871] - drm/i915: Rename INTEL_REGION_LMEM with INTEL_REGION_LMEM_0 (Jocelyn Falempe) [2115871] - drm/i915: fixup the initial fb base on DGFX (Jocelyn Falempe) [2115871] - drm/i915: add i915_gem_object_create_region_at() (Jocelyn Falempe) [2115871] - drm/i915: Report steering details in debugfs (Jocelyn Falempe) [2115871] - x86/gpu: include drm/i915_pciids.h directly in early quirks (Jocelyn Falempe) [2115871] - staging: fbtft: core: set smem_len before fb_deferred_io_init call (Jocelyn Falempe) [2115871] - fbdev: Put mmap for deferred I/O into drivers (Jocelyn Falempe) [2115871] - fbdev: Track deferred-I/O pages in pageref struct (Jocelyn Falempe) [2115871] - fbdev: defio: fix the pagelist corruption (Jocelyn Falempe) [2115871] - fbdev: Don't sort deferred-I/O pages by default (Jocelyn Falempe) [2115871] - staging: fbtft: Add spaces around / - Style (Jocelyn Falempe) [2115871] - fbdev/defio: Early-out if page is already enlisted (Jocelyn Falempe) [2115871] - panic, kexec: make __crash_kexec() NMI safe (Valentin Schneider) [2134126] - kexec: turn all kexec_mutex acquisitions into trylocks (Valentin Schneider) [2134126] - kexec: move locking into do_kexec_load (Valentin Schneider) [2134126] - ice: Fix interface being down after reset with link-down-on-close flag on (Petr Oros) [2024110] - ice: Add low latency Tx timestamp read (Petr Oros) [2092425] - ice: introduce ice_ptp_reset_cached_phctime function (Petr Oros) [2092425] - ice: re-arrange some static functions in ice_ptp.c (Petr Oros) [2092425] - ice: track and warn when PHC update is late (Petr Oros) [2092425] - ice: track Tx timestamp stats similar to other Intel drivers (Petr Oros) [2092425] - ice: implement adjfine with mul_u64_u64_div_u64 (Petr Oros) [2092425] - ice: Add EXTTS feature to the feature bitmap (Petr Oros) [2092425] - math: Export mul_u64_u64_div_u64 (Petr Oros) [2092425] - neighbour: allow NUD_NOARP entries to be forced GCed (Xin Long) [2076534] - neighbour: Prevent Race condition in neighbour subsytem (Xin Long) [2076534] - neighbour: Prevent a dead entry from updating gc_list (Xin Long) [2076534] - net: Exempt multicast addresses from five-second neighbor lifetime (Xin Long) [2076534] - neighbor: Reset gc_entries counter if new entry is released before insert (Xin Long) [2076534] - neighbor: Remove externally learned entries from gc_list (Xin Long) [2076534] - neighbor: Move neigh_update_ext_learned to core file (Xin Long) [2076534] - neighbor: Remove state and flags arguments to neigh_del (Xin Long) [2076534] - neighbor: Fix state check in neigh_forced_gc (Xin Long) [2076534] - neighbor: Fix locking order for gc_list changes (Xin Long) [2076534] - neighbor: gc_list changes should be protected by table lock (Xin Long) [2076534] - neighbor: Improve garbage collection (Xin Long) [2076534] - neighbour: send netlink notification if NTF_ROUTER changes (Xin Long) [2076534] - neighbour: allow admin to set NTF_ROUTER (Xin Long) [2076534] - s390/dasd: add device ping attribute (Tobias Huschle) [2043877] - s390/dasd: suppress generic error messages for PPRC secondary devices (Tobias Huschle) [2043877] - s390/dasd: add ioctl to perform a swap of the drivers copy pair (Tobias Huschle) [2043877] - s390/dasd: add copy pair swap capability (Tobias Huschle) [2043877] - s390/dasd: add copy pair setup (Tobias Huschle) [2043877] - s390/dasd: add query PPRC function (Tobias Huschle) [2043877] - s390/dasd: put block allocation in separate function (Tobias Huschle) [2043877] - s390/dasd: fix Oops in dasd_alias_get_start_dev due to missing pavgroup (Tobias Huschle) [2043877] - s390/qeth: Split memcpy() of struct qeth_ipacmd_addr_change flexible array (Tobias Huschle) [2110426] - s390/qeth: Fix typo 'the the' in comment (Tobias Huschle) [2110426] - s390/qdio: Fix spelling mistake (Tobias Huschle) [2110426] - qeth: remove a copy of the NAPI_POLL_WEIGHT define (Tobias Huschle) [2110426] - scsi: bnx2fc: Avoid using get_cpu() in bnx2fc_cmd_alloc() (Nilesh Javali) [2109895] - scsi: bnx2fc: Fix spelling mistake "mis-match" -> "mismatch" (Nilesh Javali) [2109895] - scsi: bnx2fc: Make use of the helper macro kthread_run() (Nilesh Javali) [2109895] - scsi: bnx2fc: Fix typo in comments (Nilesh Javali) [2109895] - scsi: qedf: Populate sysfs attributes for vport (Nilesh Javali) [2120219] - scsi: qedf: Fix typo in comment (Nilesh Javali) [2109893] - scsi: qedf: Remove redundant variable op (Nilesh Javali) [2109893] - scsi: qedf: Remove an unneeded NULL check on list iterator (Nilesh Javali) [2109893] - scsi: qedf: Remove unnecessary code (Nilesh Javali) [2109893] - s390/sclp: reserve memory occupied by sclp early buffer (Mete Durlu) [2060830] - s390: make command line configurable (Mete Durlu) [2060830] - s390: support command lines longer than 896 bytes (Mete Durlu) [2060830] - s390/kexec_file: move kernel image size check (Mete Durlu) [2060830] - s390/boot: move sclp early buffer from fixed address in asm to C (Mete Durlu) [2060830] - drivers/base: Fix unsigned comparison to -1 in CPUMAP_FILE_MAX_BYTES (Phil Auld) [2115518] - sched/core: Do not requeue task on CPU excluded from cpus_mask (Phil Auld) [2115518] - workqueue: Avoid a false warning in unbind_workers() (Phil Auld) [2115518] - sched/core: Always flush pending blk_plug (Phil Auld) [2115518] - sched/fair: fix case with reduced capacity CPU (Phil Auld) [2115518] - sched: Remove unused function group_first_cpu() (Phil Auld) [2115518] - sched/fair: Remove redundant word " *" (Phil Auld) [2115518] - sched: only perform capability check on privileged operation (Phil Auld) [2115518] - sched: Allow newidle balancing to bail out of load_balance (Phil Auld) [2115518] - sched: Remove the limitation of WF_ON_CPU on wakelist if wakee cpu is idle (Phil Auld) [2115518] - sched: Fix the check of nr_running at queue wakelist (Phil Auld) [2115518] - sched: Fix balance_push() vs __sched_setscheduler() (Phil Auld) [2115518] - sched/fair: Optimize and simplify rq leaf_cfs_rq_list (Phil Auld) [2115518] - topology: Remove unused cpu_cluster_mask() (Phil Auld) [2115518] - sched: Update task_tick_numa to ignore tasks without an mm (Phil Auld) [2115518] - sched/deadline: Remove superfluous rq clock update in push_dl_task() (Phil Auld) [2115518] - time/sched_clock: Fix formatting of frequency reporting code (Phil Auld) [2115518] - time/sched_clock: Use Hz as the unit for clock rate reporting below 4kHz (Phil Auld) [2115518] - time/sched_clock: Round the frequency reported to nearest rather than down (Phil Auld) [2115518] - sched/fair: Delete useless condition in tg_unthrottle_up() (Phil Auld) [2115518] - sched/fair: Fix cfs_rq_clock_pelt() for throttled cfs_rq (Phil Auld) [2115518] - workqueue: Restrict kworker in the offline CPU pool running on housekeeping CPUs (Phil Auld) [2115518] - kernel/sched: Remove dl_boosted flag comment (Phil Auld) [2115518] - workqueue: Remove schedule() in unbind_workers() (Phil Auld) [2115518] - workqueue: Remove outdated comment about exceptional workers in unbind_workers() (Phil Auld) [2115518] - workqueue: Remove the advanced kicking of the idle workers in rebind_workers() (Phil Auld) [2115518] - workqueue: Fix unbind_workers() VS wq_worker_running() race (Phil Auld) [2115518] - sched/membarrier: fix missing local execution of ipi_sync_rq_state() (Phil Auld) [2115518] - kthread: Move prio/affinite change into the newly created thread (Phil Auld) [2115518]- dmaengine: idxd: Correct IAX operation code names (Jerry Snitselaar) [2112121] - dmaengine: dmatest: use strscpy to replace strlcpy (Jerry Snitselaar) [2112121] - dmaengine: remove DMA_MEMCPY_SG once again (Jerry Snitselaar) [2112121] - MAINTAINERS: idxd driver maintainer update (Jerry Snitselaar) [2112121] - dmaengine: dmatest: Replace symbolic permissions by octal permissions (Jerry Snitselaar) [2112121] - dmaengine: dmatest: Remove spaces before tabs (Jerry Snitselaar) [2112121] - dma:dw: remove reference to AVR32 architecture in core.c (Jerry Snitselaar) [2112121] - dmaengine: idxd: Only call idxd_enable_system_pasid() if succeeded in enabling SVA feature (Jerry Snitselaar) [2112121] - dmaengine: idxd: force wq context cleanup on device disable path (Jerry Snitselaar) [2112121] - dmaengine: Revert "dmaengine: add verification of DMA_INTERRUPT capability for dmatest" (Jerry Snitselaar) [2112121] - dmaengine: idxd: Separate user and kernel pasid enabling (Jerry Snitselaar) [2112121] - dmaengine: ptdma: statify pt_tx_status (Jerry Snitselaar) [2112121] - dmaengine: hidma: In hidma_prep_dma_memset treat value as a single byte (Jerry Snitselaar) [2112121] - dmaengine: Document dmaengine_prep_dma_memset (Jerry Snitselaar) [2112121] - dmaengine: PTDMA: support polled mode (Jerry Snitselaar) [2112121] - dmaengine: Remove a useless mutex (Jerry Snitselaar) [2112121] - dmaengine: idxd: update IAA definitions for user header (Jerry Snitselaar) [2112121] - dmaengine: Clarify cyclic transfer residue documentation (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: Remove useless DMA-32 fallback configuration (Jerry Snitselaar) [2112121] - dmaengine: iot: Remove useless DMA-32 fallback configuration (Jerry Snitselaar) [2112121] - dmaengine: ioatdma: use default_groups in kobj_type (Jerry Snitselaar) [2112121] - Documentation: dmaengine: Correctly describe dmatest with channel unset (Jerry Snitselaar) [2112121] - Documentation: dmaengine: Add a description of what dmatest does (Jerry Snitselaar) [2112121] - dmaengine: Add core function and capability check for DMA_MEMCPY_SG (Jerry Snitselaar) [2112121] - dmaengine: Add documentation for new memcpy scatter-gather function (Jerry Snitselaar) [2112121] - dmaengine: remove slave_id config field (Jerry Snitselaar) [2112121] - dmaengine: ioat: switch from 'pci_' to 'dma_' API (Jerry Snitselaar) [2112121] - dmaengine: hsu: switch from 'pci_' to 'dma_' API (Jerry Snitselaar) [2112121] - dmaengine: dw: switch from 'pci_' to 'dma_' API (Jerry Snitselaar) [2112121] - dmaengine: remove debugfs #ifdef (Jerry Snitselaar) [2112121] - dmaengine: dmaengine_desc_callback_valid(): Check for `callback_result` (Jerry Snitselaar) [2112121] - dmaengine: Remove redundant initialization of variable err (Jerry Snitselaar) [2112121] - dmaengine: Extend the dma_slave_width for 128 bytes (Jerry Snitselaar) [2112121] - dmaengine: ioat: depends on !UML (Jerry Snitselaar) [2112121] - dmaengine: dw: Simplify DT property parser (Jerry Snitselaar) [2112121] - dmaengine: dw: Convert members to u32 in platform data (Jerry Snitselaar) [2112121] - dmaengine: dw: Remove error message from DT parsing code (Jerry Snitselaar) [2112121] - dmaengine: of-dma: router_xlate to return -EPROBE_DEFER if controller is not yet available (Jerry Snitselaar) [2112121] - dmaengine: hsu: Account transferred bytes (Jerry Snitselaar) [2112121] - dmaengine: Move kdoc description of struct dma_chan_percpu closer to it (Jerry Snitselaar) [2112121] - dmaengine: QCOM_HIDMA_MGMT depends on HAS_IOMEM (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: comment platform_driver_register call (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: remove unused code (Jerry Snitselaar) [2112121] - dmaengine: Fix a double free in dma_async_device_register (Jerry Snitselaar) [2112121] - dmaengine: hsu: disable spurious interrupt (Jerry Snitselaar) [2112121] - dmaengine: Extend the dmaengine_alignment for 128 and 256 bytes (Jerry Snitselaar) [2112121] - dmaengine: dmatest: Use dmaengine_get_dma_device (Jerry Snitselaar) [2112121] - dmaengine: doc: client: Update for dmaengine_get_dma_device() usage (Jerry Snitselaar) [2112121] - dmaengine: Add support for per channel coherency handling (Jerry Snitselaar) [2112121] - dmaengine: of-dma: Add support for optional router configuration callback (Jerry Snitselaar) [2112121] - dmaengine: add peripheral configuration (Jerry Snitselaar) [2112121] - dmaengine: idma64: Switch to use __maybe_unused instead of ifdeffery (Jerry Snitselaar) [2112121] - dmaengine: ioatdma: remove unused function missed during dma_v2 removal (Jerry Snitselaar) [2112121] - dmaengine: Save few bytes and increase readability of dma_request_chan() (Jerry Snitselaar) [2112121] - dmaengine: of-dma: Fix of_dma_router_xlate's of_dma_xlate handling (Jerry Snitselaar) [2112121] - dmaengine: dw: Don't include unneeded header to platform data header (Jerry Snitselaar) [2112121] - dmaengine: linux/dmaengine.h: drop duplicated word in a comment (Jerry Snitselaar) [2112121] - dmaengine: ioat: Fix some parameter misspelling and provide description for phys_complete (Jerry Snitselaar) [2112121] - dmaengine: of-dma: Fix misspellings/formatting issues in some function headers (Jerry Snitselaar) [2112121] - Documentation/driver-api: dmaengine/provider: drop doubled word (Jerry Snitselaar) [2112121] - dmaengine: Add support for repeating transactions (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: use true,false for bool variable (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: Simplify error handling path in hidma_probe (Jerry Snitselaar) [2112121] - dmaengine: Fix misspelling of "Analog Devices" (Jerry Snitselaar) [2112121] - docs: dmaengine: provider.rst: get rid of some warnings (Jerry Snitselaar) [2112121] - dmaengine: doc: fix warnings/issues of client.rst (Jerry Snitselaar) [2112121] - dmaengine: doc: Properly indent metadata title (Jerry Snitselaar) [2112121] - dmaengine: doc: Add sections for per descriptor metadata support (Jerry Snitselaar) [2112121] - dmaengine: Fix Kconfig indentation (Jerry Snitselaar) [2112121] - dmaengine: qcom: hidma_mgmt: Add of_node_put() before goto (Jerry Snitselaar) [2112121] - dmaengine: Remove dev_err() usage after platform_get_irq() (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: Remove call to memset after dmam_alloc_coherent (Jerry Snitselaar) [2112121] - Documentation: dmaengine: clean up description of dmatest usage (Jerry Snitselaar) [2112121] - dmaengine: hsu: Revert "set HSU_CH_MTSR to memory width" (Jerry Snitselaar) [2112121] - dmaengine: qcom: hidma: no need to check return value of debugfs_create functions (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: assign channel cookie correctly (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: initialize tx flags in hidma_prep_dma_* (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: convert to DEFINE_SHOW_ATTRIBUTE (Jerry Snitselaar) [2112121] - dmaengine: Documentation: Add documentation for multi chan testing (Jerry Snitselaar) [2112121] - dmaengine: hsu: remove dma_slave_config direction usage (Jerry Snitselaar) [2112121] - dmaengine: hsu: Support dmaengine_terminate_sync() (Jerry Snitselaar) [2112121] - scsi: core: Allow the ALUA transitioning state enough time (Tomas Henzl) [2084250] - scsi: core: Return BLK_STS_TRANSPORT for ALUA transitioning (Tomas Henzl) [2084250] - macvlan: enforce a consistent minimal mtu (Davide Caratti) [2134032] - ipvlan: Fix out-of-bound bugs caused by unset skb->mac_header (Davide Caratti) [2134032] - net: ipvtap - add __init/__exit annotations to module init/exit funcs (Davide Caratti) [2134032] - tunnels: do not assume mac header is set in skb_tunnel_check_pmtu() (Guillaume Nault) [2134099] - erspan: do not assume transport header is always set (Guillaume Nault) [2134099] - net: ip_gre: do not report erspan_ver for gre or gretap (Guillaume Nault) [2134099] - selftests: Fix the if conditions of in test_extra_filter() (Hangbin Liu) [2135232] - selftests: forwarding: add shebang for sch_red.sh (Hangbin Liu) [2135232] - selftests: forwarding: fix error message in learning_test (Hangbin Liu) [2135232] - selftests/net: pass ipv6_args to udpgso_bench's IPv6 TCP test (Hangbin Liu) [2135232] - ping: remove pr_err from ping_lookup (Guillaume Nault) [2135424] - ping: fix the dif and sdif check in ping_lookup (Guillaume Nault) [2135424] - ping: fix the sk_bound_dev_if match in ping_lookup (Guillaume Nault) [2135424] - tcp/udp: Call inet6_destroy_sock() in IPv6 sk->sk_destruct(). (Hangbin Liu) [2135259] - udp: Call inet6_destroy_sock() in setsockopt(IPV6_ADDRFORM). (Hangbin Liu) [2135259] - tcp/udp: Fix memory leak in ipv6_renew_options(). (Hangbin Liu) [2135259] - ipv6: sr: fix out-of-bounds read when setting HMAC data. (Hangbin Liu) [2135259] - ipv6: do not use RT_TOS for IPv6 flowlabel (Hangbin Liu) [2135259] - ipv6/sit: fix ipip6_tunnel_get_prl return value (Hangbin Liu) [2135259] - sit: use min (Hangbin Liu) [2135259] - net: ipv6: unexport __init-annotated seg6_hmac_init() (Hangbin Liu) [2135259] - sit: do not call ipip6_dev_free() from sit_init_net() (Hangbin Liu) [2135259] - block: avoid sign extend problem with default queue flags mask (Nico Pache) [2131929] - mm/hwpoison: do not lock page again when me_huge_page() successfully recovers (Aristeu Rozanski) [2110292] - crypto: ccp - Remove the unneeded result variable (Vladis Dronov) [2130195] - crypto: ccp - Release dma channels before dmaengine unrgister (Vladis Dronov) [2130195] - crypto: ccp - Fail the PSP initialization when writing psp data file failed (Vladis Dronov) [2130195] - crypto: ccp - Initialize PSP when reading psp data file failed (Vladis Dronov) [2130195] - crypto: ccp - Add a quirk to firmware update (Vladis Dronov) [2130195] - crypto: ccp - Add support for new CCP/PSP device ID (Vladis Dronov) [2130195] - crypto: ccp - During shutdown, check SEV data pointer before using (Vladis Dronov) [2130195] - crypto: ccp - Fix device IRQ counting by using platform_irq_count() (Vladis Dronov) [2130195] - crypto: ccp - fix typo in comment (Vladis Dronov) [2130195] - crypto: ccp - Use kzalloc for sev ioctl interfaces to prevent kernel memory leak (Vladis Dronov) [2130195] - crypto: ccp - Fix the INIT_EX data file open failure (Vladis Dronov) [2130195] - crypto: ccp - Log when resetting PSP SEV state (Vladis Dronov) [2130195] - crypto: ccp - When TSME and SME both detected notify user (Vladis Dronov) [2130195] - crypto: ccp - Allow PSP driver to load without SEV/TEE support (Vladis Dronov) [2130195] - crypto: ccp - Export PSP security bits to userspace (Vladis Dronov) [2130195] - crypto: ccp - cache capability into psp device (Vladis Dronov) [2130195] - PCI: Add support for dev_groups to struct pci_driver (Vladis Dronov) [2130195] - ACPI: processor idle: Practically limit "Dummy wait" workaround to old Intel systems (Wei Huang) [2130653] - blk-mq: fix io hung due to missing commit_rqs (Ming Lei) [2130028] - block: schedule queue restart after BLK_STS_ZONE_RESOURCE (Ming Lei) [2130028] - blk-mq: call commit_rqs while list empty but error happen (Ming Lei) [2130028] - null_blk: fix ida error handling in null_add_dev() (Ming Lei) [2130028] - blktrace: Trace remapped requests correctly (Ming Lei) [2130028] - virtio_blk: fix the discard_granularity and discard_alignment queue limits (Ming Lei) [2130028] - block: fix bio_clone_blkg_association() to associate with proper blkcg_gq (Ming Lei) [2130028] - blk-mq: do not update io_ticks with passthrough requests (Ming Lei) [2130028] - blk-mq: don't touch ->tagset in blk_mq_get_sq_hctx (Ming Lei) [2130028] - ipmi:ipmb: Fix refcount leak in ipmi_ipmb_probe (Tony Camuso) [2130238] - ipmi: remove unnecessary type castings (Tony Camuso) [2130238] - ipmi: Make two logs unique (Tony Camuso) [2130238] - ipmi:si: Convert pr_debug() to dev_dbg() (Tony Camuso) [2130238] - ipmi: Convert pr_debug() to dev_dbg() (Tony Camuso) [2130238] - ipmi: Fix pr_fmt to avoid compilation issues (Tony Camuso) [2130238] - ipmi: Add an intializer for ipmi_recv_msg struct (Tony Camuso) [2130238] - ipmi: Add an intializer for ipmi_smi_msg struct (Tony Camuso) [2130238] - ipmi:ssif: Check for NULL msg when handling events and messages (Tony Camuso) [2130238] - ipmi: use simple i2c probe function (Tony Camuso) [2130238] - ipmi: Add a sysfs count of total outstanding messages for an interface (Tony Camuso) [2130238] - ipmi: Add a sysfs interface to view the number of users (Tony Camuso) [2130238] - ipmi: Limit the number of message a user may have outstanding (Tony Camuso) [2130238] - ipmi: Add a limit on the number of users that may use IPMI (Tony Camuso) [2130238] - ipmi:ipmi_ipmb: Fix null-ptr-deref in ipmi_unregister_smi() (Tony Camuso) [2130238] - ipmi: When handling send message responses, don't process the message (Tony Camuso) [2130238] - ipmi: fix IPMI_SMI_MSG_TYPE_IPMB_DIRECT response length checking (Tony Camuso) [2130238] - ipmi: fix oob access due to uninit smi_msg type (Tony Camuso) [2130238] - ipmi: Make kABI adjustments (Tony Camuso) [2130238] - ipmi: Add support for IPMB direct messages (Tony Camuso) [2130238] - ice: Fix crash by keep old cfg when update TCs more than queues (Petr Oros) [2129902] - ice: Fix tunnel checksum offload with fragmented traffic (Petr Oros) [2129902] - ice: handle E822 generic device ID in PLDM header (Petr Oros) [2129902] - ice: ethtool: Prohibit improper channel config for DCB (Petr Oros) [2129902] - ice: ethtool: advertise 1000M speeds properly (Petr Oros) [2129902] - ice: Fix switchdev rules book keeping (Petr Oros) [2129902] - ice: fix access-beyond-end in the switch code (Petr Oros) [2129902] - eth: ice: silence the GCC 12 array-bounds warning (Petr Oros) [2129902] - ice: Expose RSS indirection tables for queue groups via ethtool (Petr Oros) [2129902] - Revert "ice: Hide bus-info in ethtool for PRs in switchdev mode" (Petr Oros) [2129902] - ice: remove period on argument description in ice_for_each_vf (Petr Oros) [2129902] - ice: add a function comment for ice_cfg_mac_antispoof (Petr Oros) [2129902] - ice: fix wording in comment for ice_reset_vf (Petr Oros) [2129902] - ice: remove return value comment for ice_reset_all_vfs (Petr Oros) [2129902] - ice: always check VF VSI pointer values (Petr Oros) [2129902] - ice: add newline to dev_dbg in ice_vf_fdir_dump_info (Petr Oros) [2129902] - ice: get switch id on switchdev devices (Petr Oros) [2129902] - ice: return ENOSPC when exceeding ICE_MAX_CHAIN_WORDS (Petr Oros) [2129902] - ice: introduce common helper for retrieving VSI by vsi_num (Petr Oros) [2129902] - ice: use min_t() to make code cleaner in ice_gnss (Petr Oros) [2129902] - ice: Add mpls+tso support (Petr Oros) [2129902] - ice: switch: convert packet template match code to rodata (Petr Oros) [2129902] - ice: switch: use convenience macros to declare dummy pkt templates (Petr Oros) [2129902] - ice: switch: use a struct to pass packet template params (Petr Oros) [2129902] - ice: switch: unobscurify bitops loop in ice_fill_adv_dummy_packet() (Petr Oros) [2129902] - ice: switch: add and use u16[] aliases to ice_adv_lkup_elem::{h, m}_u (Petr Oros) [2129902] - ice: Support GTP-U and GTP-C offload in switchdev (Petr Oros) [2129902] - ice: Remove useless DMA-32 fallback configuration (Petr Oros) [2129902] - ice: switch to napi_build_skb() (Petr Oros) [2129902] - nbd: fix race between nbd_alloc_config() and module removal (Ming Lei) [2127601] - nbd: call genl_unregister_family() first in nbd_cleanup() (Ming Lei) [2127601] - kselftests: memcg: speed up the memory.high test (Waiman Long) [1839057] - tools/testing/selftests/cgroup/cgroup_util.c: cg_read_strcmp: fix null pointer dereference (Waiman Long) [1839057] - kselftest/cgroup: fix incorrect test_core skip (Waiman Long) [1839057] - kselftest/cgroup: fix unexpected testing failure on test_core (Waiman Long) [1839057] - selftests: cgroup: fix cleanup path in test_memcg_subtree_control() (Waiman Long) [1839057] - cgroup: fix an error handling path in alloc_pagecache_max_30M() (Waiman Long) [1839057] - selftests: memcg: expect no low events in unprotected sibling (Waiman Long) [1839057] - selftests: memcg: fix compilation (Waiman Long) [1839057] - kseltest/cgroup: Make test_stress.sh work if run interactively (Waiman Long) [1839057] - cgroup: fix racy check in alloc_pagecache_max_30M() helper function (Waiman Long) [1839057] - cgroup: remove racy check in test_memcg_sock() (Waiman Long) [1839057] - cgroup: account for memory_localevents in test_memcg_oom_group_leaf_events() (Waiman Long) [1839057] - cgroup: account for memory_recursiveprot in test_memcg_low() (Waiman Long) [1839057] - cgroups: refactor children cgroups in memcg tests (Waiman Long) [1839057] - kselftest/cgroup: fix test_stress.sh to use OUTPUT dir (Waiman Long) [1839057] - selftests: cgroup: add a selftest for memory.reclaim (Waiman Long) [1839057] - selftests: cgroup: fix alloc_anon_noexit() instantly freeing memory (Waiman Long) [1839057] - selftests: cgroup: return -errno from cg_read()/cg_write() on failure (Waiman Long) [1839057] - memcg: introduce per-memcg reclaim interface (Waiman Long) [1839057] - kselftests: memcg: update the oom group leaf events test (Waiman Long) [1839057] - mm/memcontrol: return 1 from cgroup.memory __setup() handler (Waiman Long) [1839057] - memcg: synchronously enforce memory.high for large overcharges (Waiman Long) [1839057] - selftests: memcg: test high limit for single entry allocation (Waiman Long) [1839057] - memcg: unify force charging conditions (Waiman Long) [1839057] - memcg: refactor mem_cgroup_oom (Waiman Long) [1839057] - memcg: prohibit unconditional exceeding the limit of dying tasks (Waiman Long) [1839057] - mm, oom: do not trigger out_of_memory from the #PF (Waiman Long) [1839057] - mm, oom: pagefault_out_of_memory: don't force global OOM for dying tasks (Waiman Long) [1839057] - mm: memcontrol: fix root_mem_cgroup charging (Waiman Long) [1839057] - tests/cgroup: move cg_wait_for(), cg_prepare_for_wait() (Waiman Long) [1839057] - mm: memcontrol: don't count limit-setting reclaim as memory pressure (Waiman Long) [1839057] - selftests: Uninitialized variable in test_cgcore_proc_migration() (Waiman Long) [1839057] - kselftests: cgroup: Avoid the reuse of fd after it is deallocated (Waiman Long) [1839057] - selftests: cgroup: Run test_core under interfering stress (Waiman Long) [1839057] - selftests: cgroup: Add task migration tests (Waiman Long) [1839057] - selftests: cgroup: Simplify task self migration (Waiman Long) [1839057] - cgroup: kselftest: relax fs_spec checks (Waiman Long) [1839057] - kselftests: cgroup: remove duplicated include from test_freezer.c (Waiman Long) [1839057] - kselftest/cgroup: fix unexpected testing failure on test_memcontrol (Waiman Long) [1839057] - kselftests: cgroup: add freezer controller self-tests (Waiman Long) [1839057] - Add tests for memory.oom.group (Waiman Long) [1839057] - Fix cg_read_strcmp() (Waiman Long) [1839057] - cgroup: kselftests: add test_core to .gitignore (Waiman Long) [1839057] - selftests: cgroup: add gitignore file (Waiman Long) [1839057] - Add cgroup core selftests (Waiman Long) [1839057] - devdax: Fix soft-reservation memory description (Mark Langsdorf) [2122316] - arm64: cacheinfo: Fix incorrect assignment of signed error value to unsigned fw_level (Mark Langsdorf) [2122316] - ACPI: property: Remove default association from integer maximum values (Mark Langsdorf) [2122316] - ACPI: property: Ignore already existing data node tags (Mark Langsdorf) [2122316] - ACPI: property: Fix type detection of unified integer reading functions (Mark Langsdorf) [2122316] - ACPI: processor: Remove freq Qos request for all CPUs (Mark Langsdorf) [2122316] - ACPI: property: Fix error handling in acpi_init_properties() (Mark Langsdorf) [2122316] - ACPI/IORT: Fix build error implicit-function-declaration (Mark Langsdorf) [2122316] - ACPI/PCI: Remove useless NULL pointer checks (Mark Langsdorf) [2122316] - ACPI: property: Read buffer properties as integers (Mark Langsdorf) [2122316] - ACPI: property: Add support for parsing buffer property UUID (Mark Langsdorf) [2122316] - ACPI: property: Unify integer value reading functions (Mark Langsdorf) [2122316] - ACPI: property: Switch node property referencing from ifs to a switch (Mark Langsdorf) [2122316] - ACPI: property: Move property ref argument parsing into a new function (Mark Langsdorf) [2122316] - ACPI: property: Use acpi_object_type consistently in property ref parsing (Mark Langsdorf) [2122316] - ACPI: property: Tie data nodes to acpi handles (Mark Langsdorf) [2122316] - ACPI: property: Return type of acpi_add_nondev_subnodes() should be bool (Mark Langsdorf) [2122316] - ACPI: CPPC: Do not prevent CPPC from working in the future (Mark Langsdorf) [2122316] - ACPI: PM: x86: Print messages regarding LPS0 idle support (Mark Langsdorf) [2122316] - ACPI: PPTT: Leave the table mapped for the runtime usage (Mark Langsdorf) [2122316] - ACPI: resource: skip IRQ override on AMD Zen platforms (Mark Langsdorf) [2122316] - ACPI: irq: Allow acpi_gsi_to_irq() to have an arch-specific fallback (Mark Langsdorf) [2122316] - APCI: irq: Add support for multiple GSI domains (Mark Langsdorf) [2122316] - irqchip/gic: Drop support for secondary GIC in non-DT systems (Mark Langsdorf) [2122316] - ACPI: video: Use native backlight on Dell Inspiron N4010 (Mark Langsdorf) [2122316] - ACPI: PM: s2idle: Use LPS0 idle if ACPI_FADT_LOW_POWER_S0 is unset (Mark Langsdorf) [2122316] - Revert "[acpi] ACPI / PM: LPIT: Register sysfs attributes based on FADT" (Mark Langsdorf) [2122316] - ACPI: utils: Add api to read _SUB from ACPI (Mark Langsdorf) [2122316] - ACPI: video: Shortening quirk list by identifying Clevo by board_name only (Mark Langsdorf) [2122316] - ACPI: video: Force backlight native for some TongFang devices (Mark Langsdorf) [2122316] - PCI/ACPI: Guard ARM64-specific mcfg_quirks (Mark Langsdorf) [2122316] - ACPI/IORT: Add a helper to retrieve RMR info directly (Mark Langsdorf) [2122316] - ACPI/IORT: Add support to retrieve IORT RMR reserved regions (Mark Langsdorf) [2122316] - ACPI/IORT: Provide a generic helper to retrieve reserve regions (Mark Langsdorf) [2122316] - ACPI/IORT: Make iort_iommu_msi_get_resv_regions() return void (Mark Langsdorf) [2122316] - iommu: Introduce a callback to struct iommu_resv_region (Mark Langsdorf) [2122316] - ACPI: PM: s2idle: Add support for upcoming AMD uPEP HID AMDI008 (Mark Langsdorf) [2122316] - ACPI: PPTT: Use table offset as fw_token instead of virtual address (Mark Langsdorf) [2122316] - ACPI: Move PRM config option under the main ACPI config (Mark Langsdorf) [2122316] - ACPI: Enable Platform Runtime Mechanism(PRM) support on ARM64 (Mark Langsdorf) [2122316] - efi: Simplify arch_efi_call_virt() macro (Mark Langsdorf) [2122316] - efi/x86: Avoid redundant cast of EFI firmware service pointer (Mark Langsdorf) [2122316] - efi/libstub: Annotate firmware routines as __efiapi (Mark Langsdorf) [2122316] - ACPI: PRM: Change handler_addr type to void pointer (Mark Langsdorf) [2122316] - ACPI: bus: Drop driver member of struct acpi_device (Mark Langsdorf) [2122316] - ACPI: bus: Drop redundant check in acpi_device_remove() (Mark Langsdorf) [2122316] - ACPI: APEI: Fix _EINJ vs EFI_MEMORY_SP (Mark Langsdorf) [2122316] - ACPI: LPSS: Fix missing check in register_device_clock() (Mark Langsdorf) [2122316] - ACPI: APEI: Better fix to avoid spamming the console with old error logs (Mark Langsdorf) [2122316] - ACPI: PM: save NVS memory for Lenovo G40-45 (Mark Langsdorf) [2122316] - ACPI: EC: Drop unused ident initializers from dmi_system_id tables (Mark Langsdorf) [2122316] - ACPI: EC: Re-use boot_ec when possible even when EC_FLAGS_TRUST_DSDT_GPE is set (Mark Langsdorf) [2122316] - ACPI: EC: Drop the EC_FLAGS_IGNORE_DSDT_GPE quirk (Mark Langsdorf) [2122316] - ACPI: EC: Remove duplicate ThinkPad X1 Carbon 6th entry from DMI quirks (Mark Langsdorf) [2122316] - ACPI: processor: Drop leftover acpi_processor_get_limit_info() declaration (Mark Langsdorf) [2122316] - ACPI: processor: Split out thermal initialization from ACPI PSS (Mark Langsdorf) [2122316] - redhat/configs: move CONFIG_ACPI_VIDEO to common/generic (Mark Langsdorf) [2122316] - ACPI: video: Drop X86 dependency from Kconfig (Mark Langsdorf) [2122316] - ACPI: video: Fix acpi_video_handles_brightness_key_presses() (Mark Langsdorf) [2122316] - ACPI: video: Change how we determine if brightness key-presses are handled (Mark Langsdorf) [2122316] - ACPI / MMC: PM: Unify fixing up device power (Mark Langsdorf) [2122316] - mmc: sdhci-acpi: Use the new soc_intel_is_byt() helper (Mark Langsdorf) [2122316] - mmc: sdhci-acpi: Remove special handling for GPD win/pocket devices (Mark Langsdorf) [2122316] - ACPI: scan: Walk ACPI device's children using driver core (Mark Langsdorf) [2122316] - ACPI: bus: Introduce acpi_dev_for_each_child_reverse() (Mark Langsdorf) [2122316] - ACPI: video: Use acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: property: Use acpi_dev_for_each_child() for child lookup (Mark Langsdorf) [2122316] - ACPI: container: Use acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: bus: Export acpi_dev_for_each_child() to modules (Mark Langsdorf) [2122316] - ACPI: glue: Introduce acpi_find_child_by_adr() (Mark Langsdorf) [2122316] - ACPI: glue: Introduce acpi_dev_has_children() (Mark Langsdorf) [2122316] - ACPI: glue: Use acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: APEI: Fix double word in a comment (Mark Langsdorf) [2122316] - ACPI: processor/idle: Annotate more functions to live in cpuidle section (Mark Langsdorf) [2122316] - ACPI: DPTF: Support Meteor Lake (Mark Langsdorf) [2122316] - ACPI: CPPC: fix typo in comment (Mark Langsdorf) [2122316] - ACPI: video: improve PM notifer callback (Mark Langsdorf) [2122316] - ACPI: utils: include UUID in _DSM evaluation warning (Mark Langsdorf) [2122316] - cpufreq: CPPC: Enable fast_switch (Mark Langsdorf) [2122316] - acpi/nfit: rely on mce->misc to determine poison granularity (Mark Langsdorf) [2122316] - ACPI: PM: Block ASUS B1400CEAE from suspend to idle by default (Mark Langsdorf) [2122316] - ACPI: clean up white space in a few places for consistency (Mark Langsdorf) [2122316] - ACPI: glue: Rearrange find_child_checks() (Mark Langsdorf) [2122316] - ACPI: DPTF: Add support for high frequency impedance notification (Mark Langsdorf) [2122316] - ACPI: processor: idle: Expose max_cstate/nocst/bm_check_disable read-only in sysfs (Mark Langsdorf) [2122316] - ACPI: battery: Make "not-charging" the default on no charging or full info (Mark Langsdorf) [2122316] - PCI/ACPI: negotiate CXL _OSC (Mark Langsdorf) [2122316] - PCI/ACPI: Prefer CXL _OSC instead of PCIe _OSC for CXL host bridges (Mark Langsdorf) [2122316] - PCI/ACPI: add a helper for retrieving _OSC Control DWORDs (Mark Langsdorf) [2122316] - ACPI: bus: Avoid non-ACPI device objects in walks over children (Mark Langsdorf) [2122316] - ACPI: DPTF: Correct description of INT3407 / INT3532 attributes (Mark Langsdorf) [2122316] - ACPI: BGRT: use static for BGRT_SHOW kobj_attribute defines (Mark Langsdorf) [2122316] - ACPI, APEI, EINJ: Refuse to inject into the zero page (Mark Langsdorf) [2122316] - ACPI: PM: Always print final debug message in acpi_device_set_power() (Mark Langsdorf) [2122316] - ACPI: SPCR: Add support for NVIDIA 16550-compatible port subtype (Mark Langsdorf) [2122316] - ACPI: APEI: Fix missing ERST record id (Mark Langsdorf) [2122316] - ACPICA: Update version to 20220331 (Mark Langsdorf) [2122316] - ACPICA: IORT: Updates for revision E.d (Mark Langsdorf) [2122316] - ACPICA: iASL/MADT: Add OEM-defined subtable (Mark Langsdorf) [2122316] - ACPICA: Add support for ARM Performance Monitoring Unit Table. (Mark Langsdorf) [2122316] - ACPICA: Headers: Replace zero-length array with flexible-array member (Mark Langsdorf) [2122316] - ACPICA: Removed some tabs and // comments (Mark Langsdorf) [2122316] - ACPICA: Update copyright notices to the year 2022 (Mark Langsdorf) [2122316] - ACPICA: Clean up double word in comment (Mark Langsdorf) [2122316] - ACPICA: Add new ACPI 6.4 semantics for LoadTable() operator (Mark Langsdorf) [2122316] - ACPICA: Add new ACPI 6.4 semantics to the Load() operator (Mark Langsdorf) [2122316] - ACPICA: iASL: NHLT: Rename linux specific strucures to device_info (Mark Langsdorf) [2122316] - ACPICA: iASL: NHLT: Fix parsing undocumented bytes at the end of Endpoint Descriptor (Mark Langsdorf) [2122316] - ACPICA: iASL: NHLT: Treat Terminator as specific_config (Mark Langsdorf) [2122316] - ACPICA: Add the subtable CFMWS to the CEDT table (Mark Langsdorf) [2122316] - ACPICA: Add support for the Windows 11 _OSI string (Mark Langsdorf) [2122316] - ACPI: sysfs: Fix BERT error region memory mapping (Mark Langsdorf) [2122316] - ACPI: property: Release subnode properties with data nodes (Mark Langsdorf) [2122316] - PCI: ACPI: PM: Power up devices in D3cold before scanning them (Mark Langsdorf) [2122316] - ACPI: PM: Introduce acpi_dev_power_up_children_with_adr() (Mark Langsdorf) [2122316] - ACPI: bus: Introduce acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: PM: Unify debug messages in acpi_device_set_power() (Mark Langsdorf) [2122316] - ACPI: PM: Convert debug message in acpi_device_get_power() (Mark Langsdorf) [2122316] - device property: Add irq_get to fwnode operation (Mark Langsdorf) [2122316] - device property: Add iomap to fwnode operations (Mark Langsdorf) [2122316] - ACPI: property: Move acpi_fwnode_device_get_match_data() up (Mark Langsdorf) [2122316] - device property: Convert device_{dma_supported,get_dma_attr} to fwnode (Mark Langsdorf) [2122316] - ACPI: Add perf low power callback (Mark Langsdorf) [2122316] - s390: fix double free of GS and RI CBs on fork() failure (Brian Foster) [1944540] - wifi: iwlwifi: mvm: fix double list_add at iwl_mvm_mac_wake_tx_queue (other cases) (Jose Ignacio Tornos Martinez) [2086480] - wifi: iwlwifi: mvm: fix double list_add at iwl_mvm_mac_wake_tx_queue (Jose Ignacio Tornos Martinez) [2086480]- crypto: ecdh - disallow plain "ecdh" usage in FIPS mode (Vladis Dronov) [2129392] - crypto: dh - disallow plain "dh" usage in FIPS mode (Vladis Dronov) [2129392] - x86/cpu: Add new Raptor Lake CPU model number (Prarit Bhargava) [2120361] - mm, oom: fix missing tlb_finish_mmu() in __oom_reap_task_mm(). (Waiman Long) [2130954] - net: atlantic: remove aq_nic_deinit() when resume (Íñigo Huguet) [2130839] - net: atlantic: remove deep parameter on suspend/resume functions (Íñigo Huguet) [2130839] - efi: Allow EFI_MEMORY_XP and EFI_MEMORY_RO both to be cleared (Lenny Szubowicz) [2128172] - bonding: 3ad: make ad_ticks_per_sec a const (Jonathan Toppins) [2020773] - bonding: 802.3ad: fix no transmission of LACPDUs (Jonathan Toppins) [2020773] - redhat: workaround CKI cross compilation for scripts (Jan Stancek) [2123399] - nohz/full, sched/rt: Fix missed tick-reenabling bug in dequeue_task_rt() (Phil Auld) [2107238] - gfs2: Make sure FITRIM minlen is rounded up to fs block size (Andrew Price) [2118256] - ceph: don't truncate file in atomic_open (Xiubo Li) [2120924] - of: address: Work around missing device_type property in pcie nodes (Jerry Snitselaar) [2118732] - dma-mapping: introduce DMA range map, supplanting dma_pfn_offset (Jerry Snitselaar) [2118732] - of/address: check for invalid range.cpu_addr (Jerry Snitselaar) [2118732] - of: address: Fix parser address/size cells initialization (Jerry Snitselaar) [2118732] - of_address: Guard of_bus_pci_get_flags with CONFIG_PCI (Jerry Snitselaar) [2118732] - of_address: Add bus type match for pci ranges parser (Jerry Snitselaar) [2118732] - of/address: Support multiple 'dma-ranges' entries (Jerry Snitselaar) [2118732] - of/address: use range parser for of_dma_get_range (Jerry Snitselaar) [2118732] - of/address: Rework of_pci_range parsing for non-PCI buses (Jerry Snitselaar) [2118732] - of: Drop struct of_pci_range.pci_space field (Jerry Snitselaar) [2118732] - of/address: Move range parser code out of CONFIG_PCI (Jerry Snitselaar) [2118732] - of: Make of_dma_get_range() work on bus nodes (Jerry Snitselaar) [2118732] - Revert "arm64: dts: juno: add dma-ranges property" (Jerry Snitselaar) [2118732] - of/address: Fix of_pci_range_parser_one translation of DMA addresses (Jerry Snitselaar) [2118732] - of/address: Translate 'dma-ranges' for parent nodes missing 'dma-ranges' (Jerry Snitselaar) [2118732] - of: address: Follow DMA parent for "dma-coherent" (Jerry Snitselaar) [2118732] - of: Factor out #{addr,size}-cells parsing (Jerry Snitselaar) [2118732] - of/address: Introduce of_get_next_dma_parent() helper (Jerry Snitselaar) [2118732] - of: address: Report of_dma_get_range() errors meaningfully (Jerry Snitselaar) [2118732] - of: address: Add support for the parent DMA bus (Jerry Snitselaar) [2118732] - of: address: Retrieve a parent through a callback in __of_translate_address (Jerry Snitselaar) [2118732] - of: reserved_mem: fix reserve memory leak (Jerry Snitselaar) [2118732] - of: Use device_type helpers to access the node type (Jerry Snitselaar) [2118732] - of: make PowerMac cache node search conditional on CONFIG_PPC_PMAC (Jerry Snitselaar) [2118732]- crypto: qat - add limit to linked list parsing (Vladis Dronov) [2129897] - crypto: qat - use reference to structure in dma_map_single() (Vladis Dronov) [2129897] - Revert "crypto: qat - reduce size of mapped region" (Vladis Dronov) [2129897] - crypto: qat - fix DMA transfer direction (Vladis Dronov) [2129897] - crypto: qat - fix default value of WDT timer (Vladis Dronov) [2129897] - crypto: drivers - move from strlcpy with unused retval to strscpy (Vladis Dronov) [2129897] - crypto: qat - add check to validate firmware images (Vladis Dronov) [2129897] - Documentation: qat: rewrite description (Vladis Dronov) [2129897] - Documentation: qat: Use code block for qat sysfs example (Vladis Dronov) [2129897] - KVM: x86: Inject #UD on emulated XSETBV if XSAVES isn't enabled (Dr. David Alan Gilbert) [2079311] - KVM: x86: Always enable legacy FP/SSE in allowed user XFEATURES (Dr. David Alan Gilbert) [2079311] - KVM: x86: Reinstate kvm_vcpu_arch.guest_supported_xcr0 (Dr. David Alan Gilbert) [2079311] - bonding: fix NULL deref in bond_rr_gen_slave_id (Jonathan Toppins) [2051778] - tty: use new tty_insert_flip_string_and_push_buffer() in pty_write() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: extract tty_flip_buffer_commit() from tty_flip_buffer_push() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: drop tty_schedule_flip() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: the rest, stop using tty_schedule_flip() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: drivers/tty/, stop using tty_schedule_flip() (Rafael Aquini) [2078869] {CVE-2022-1462} - vt: keyboard, use tty_insert_flip_string in puts_queue (Rafael Aquini) [2078869] {CVE-2022-1462} - vt: use tty_insert_flip_string in respond_string (Rafael Aquini) [2078869] {CVE-2022-1462}- intel_th: pci: Add Raptor Lake-S CPU support (Michael Petlan) [2040035] - intel_th: pci: Add Raptor Lake-S PCH support (Michael Petlan) [2040035] - virtio-net: support XDP when not more queues (Eugenio Pérez) [2122225] - virtio_net: Don't process redirected XDP frames when XDP is disabled (Eugenio Pérez) [2122225] - virtio_net: Fix not restoring real_num_rx_queues (Eugenio Pérez) [2122225] - x86,config: Enable straight-line-speculation fix (Wander Lairson Costa) [2062175] {CVE-2021-26341} - x86/alternative: Relax text_poke_bp() constraint (Wander Lairson Costa) [2062175] {CVE-2021-26341} - perf/x86: Add support for perf text poke event for text_poke_bp_batch() callers (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Add straight-line-speculation validation (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Support conditional retpolines (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Refactor sibling call detection logic (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Change dead_end_function() to return boolean (Wander Lairson Costa) [2062175] {CVE-2021-26341} - x86/lib/atomic64_386_32: Rename things (Wander Lairson Costa) [2062175] {CVE-2021-26341} - KVM: arm64: Fix debug architecture version (Gavin Shan) [2123587] - thunderbolt: Add support for Intel Raptor Lake (Torez Smith) [2040037] - iommu/vt-d: Fix compile error with CONFIG_PCI_ATS not set (Myron Stowe) [2118428 2122515 2127028] - iommu/vt-d: Cure VF irqdomain hickup (Myron Stowe) [2118428 2122515 2127028] - x86/pci: Set default irq domain in pcibios_add_device() (Myron Stowe) [2118428 2122515 2127028] - iommm/amd: Store irq domain in struct device (Myron Stowe) [2118428 2122515 2127028] - iommm/vt-d: Store irq domain in struct device (Myron Stowe) [2118428 2122515 2127028] - PCI/MSI: Provide pci_dev_has_special_msi_domain() helper (Myron Stowe) [2118428 2122515 2127028] - x86/msi: Consolidate MSI allocation (Myron Stowe) [2118428 2122515 2127028] - PCI/MSI: Rework pci_msi_domain_calc_hwirq() (Myron Stowe) [2118428 2122515 2127028] - x86/irq: Consolidate UV domain allocation (Myron Stowe) [2118428 2122515 2127028] - x86/irq: Consolidate DMAR irq allocation (Myron Stowe) [2118428 2122515 2127028] - x86_ioapic_Consolidate_IOAPIC_allocation (Myron Stowe) [2118428 2122515 2127028] - x86/msi: Consolidate HPET allocation (Myron Stowe) [2118428 2122515 2127028] - iommu/irq_remapping: Consolidate irq domain lookup (Myron Stowe) [2118428 2122515 2127028] - iommu/amd: Consolidate irq domain getter (Myron Stowe) [2118428 2122515 2127028] - iommu/vt-d: Consolidate irq domain getter (Myron Stowe) [2118428 2122515 2127028] - x86/irq: Add allocation type for parent domain retrieval (Myron Stowe) [2118428 2122515 2127028] - irqdomain: Export irq_domain_update_bus_token (Myron Stowe) [2118428 2122515 2127028] - perf/x86/intel: Update the FRONTEND MSR mask on Sapphire Rapids (Michael Petlan) [2125349] - perf/x86/intel/uncore: Fix invalid unit check (Michael Petlan) [2125349]- KVM: s390: pv: don't present the ecall interrupt twice (Tobias Huschle) [2125236] - s390/mm: do not trigger write fault when vma does not allow VM_WRITE (Tobias Huschle) [2125218] - PCI: Print a debug message on PCI device release (Tobias Huschle) [2125216] - s390/pci: fix leak of PCI device structure (Tobias Huschle) [2125216] - s390/pci: refactor zpci_create_device() (Tobias Huschle) [2125216] - s390/pci: remove superfluous zdev->zbus check (Tobias Huschle) [2125216] - x86/boot/64: Add missing fixup_pointer() for next_early_pgt access (Rafael Aquini) [2082806] - x86/boot/64: Fix crash if kernel image crosses page table boundary (Rafael Aquini) [2082806] - mm/slab_common: fix possible double free of kmem_cache (Waiman Long) [2093781] - mm/slab_common: Deleting kobject in kmem_cache_destroy() without holding slab_mutex/cpu_hotplug_lock (Waiman Long) [2093781] - mm/slab_common: use WARN() if cache still has objects on destroy (Waiman Long) [2093781] - slab: use __func__ to trace function name (Waiman Long) [2093781] - s390/hugetlb: fix prepare_hugepage_range() check for 2 GB hugepages (Tobias Huschle) [2125215] - platform/x86: intel/pmc: Add Alder Lake N support to PMC core driver (Prarit Bhargava) [2072654] - crash_core: Increase crashkernel=auto size for x86_64, s390 and arm64 (Lichen Liu) [2122874] - virtio-net: fix use-after-free in skb_gro_receive (Cindy Lu) [2069047] - virtio-net: fix use-after-free in page_to_skb() (Cindy Lu) [2069047] - virtio-net: restrict build_skb() use to some arches (Cindy Lu) [2069047] - virtio-net: page_to_skb() use build_skb when there's sufficient tailroom (Cindy Lu) [2069047] - sched/fair: Consider CPU affinity when allowing NUMA imbalance in find_idlest_group() (Phil Auld) [2110020] - sched/numa: Adjust imb_numa_nr to a better approximation of memory channels (Phil Auld) [2110020] - sched/numa: Apply imbalance limitations consistently (Phil Auld) [2110020] - sched/numa: Do not swap tasks between nodes when spare capacity is available (Phil Auld) [2110020] - sched/numa: Initialise numa_migrate_retry (Phil Auld) [2110020] - cpufreq: intel_pstate: Handle no_turbo in frequency invariance (Phil Auld) [2100594] - sched/fair: Introduce SIS_UTIL to search idle CPU based on sum of util_avg (Phil Auld) [2100594] - i2c: piix4: Fix a memory leak in the EFCH MMIO support (Sudheesh Mavila) [2105160] - assoc_array: Fix BUG_ON during garbage collect (Dave Wysochanski) [1920523] - wait: Fix __wait_event_hrtimeout for RT/DL tasks (Derek Barbosa) [2125233]- raid1: ensure write behind bio has less than BIO_MAX_VECS sectors (Nigel Croxon) [2116209] - ceph: fix statfs for subdir mounts (Xiubo Li) [2120943] - ceph: try to queue a writeback if revoking fails (Xiubo Li) [2120940] - ceph: update the auth cap when the async create req is forwarded (Xiubo Li) [2120932] - ceph: make change_auth_cap_ses a global symbol (Xiubo Li) [2120932] - fs/dcache: export d_same_name() helper (Xiubo Li) [2120932] - ceph: wait for the first reply of inflight async unlink (Xiubo Li) [2120932] - redhat: Enable KASAN_VMALLOC (Nico Pache) [2108620] - arm64: select KASAN_VMALLOC for SW/HW_TAGS modes (Nico Pache) [2108620] - x86/crash: Fix crash_setup_memmap_entries() out-of-bounds access (Nico Pache) [2108620] - mm: defer kmemleak object creation of module_alloc() (Nico Pache) [2108620] - arm64: kaslr: keep modules inside module region when KASAN is enabled (Nico Pache) [2108620] - kasan: arm64: fix pcpu_page_first_chunk crash with KASAN_VMALLOC (Nico Pache) [2108620] - arm64: Kconfig: select KASAN_VMALLOC if KANSAN_GENERIC is enabled (Nico Pache) [2108620] - arm64: kaslr: support randomized module area with KASAN_VMALLOC (Nico Pache) [2108620] - arm64: Kconfig: support CONFIG_KASAN_VMALLOC (Nico Pache) [2108620] - arm64: kasan: abstract _text and _end to KERNEL_START/END (Nico Pache) [2108620] - arm64: kasan: don't populate vmalloc area for CONFIG_KASAN_VMALLOC (Nico Pache) [2108620] - x86/kasan: support KASAN_VMALLOC (Nico Pache) [2108620] - ath9k: htc: clean up statistics macros (Jose Ignacio Tornos Martinez) [2084598] {CVE-2022-1679} - ath9k: hif_usb: simplify if-if to if-else (Jose Ignacio Tornos Martinez) [2084598] {CVE-2022-1679} - ath9k: fix use-after-free in ath9k_hif_usb_rx_cb (Jose Ignacio Tornos Martinez) [2084598] {CVE-2022-1679} - igmp: Add ip_mc_list lock in ip_check_mc_rcu (Hangbin Liu) [2114946] {CVE-2022-20141} - scsi: zfcp: Fix missing auto port scan and thus missing target ports (Tobias Huschle) [2121089] - vfio/type1: Unpin zero pages (Alex Williamson) [2123015]- iommu/vt-d: Make DMAR_UNITS_SUPPORTED default 1024 (Jerry Snitselaar) [2120412] - Revert "iommu/vt-d: Make DMAR_UNITS_SUPPORTED a config setting" (Jerry Snitselaar) [2120412] - ptrace: Check PTRACE_O_SUSPEND_SECCOMP permission on PTRACE_SEIZE (Oleg Nesterov) [2121269] {CVE-2022-30594} - redhat: remove unused STAMP variable from genspec.sh (Herton R. Krzesinski) - internal: Update RHEL_MINOR for the start of RHEL-8.8 development (Lucas Zampieri)- EDAC/amd64: Add new register offset support and related changes (Aristeu Rozanski) [2048792] - EDAC/amd64: Set memory type per DIMM (Aristeu Rozanski) [2048792] - Revert "ixgbevf: Mailbox improvements" (Ken Cox) [2120545] - Revert "ixgbevf: Add support for new mailbox communication between PF and VF" (Ken Cox) [2120545] - drm/amdgpu: Only disable prefer_shadow on hawaii (Lyude Paul) [2118755]- redhat: configs: add CONFIG_SERIAL_MULTI_INSTANTIATE=m for x86_64 (Jaroslav Kysela) [2005073] - ACPI: scan: Add CLSA0101 Laptop Support (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Add CLSA0101 Laptop (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Sort ACPI IDs by HID (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Get rid of redundant 'else' (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Use while (i--) pattern to clean up (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Improve dev_err_probe() messaging (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Drop duplicate check (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Improve autodetection (Jaroslav Kysela) [2005073] - ACPI / scan: Create platform device for CS35L41 (Jaroslav Kysela) [2005073] - ACPI: scan: Create platform device for BCM4752 and LNV4752 ACPI nodes (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Add SPI support (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Reorganize I2C functions (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Rename it for a generic serial driver name (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Use the new i2c_acpi_client_count() helper (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Use device_get_match_data() to get driver data (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Simplify with dev_err_probe() (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Drop redundant ACPI_PTR() (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Replace zero-length array with flexible-array member (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Fail the probe if no IRQ provided (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Derive the device name from parent (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Use struct_size() helper (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Allow to have same slaves (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Introduce IOAPIC IRQ support (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Distinguish IRQ resource type (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Count I2cSerialBus() resources (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Get rid of obsolete conditional (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Defer probe when no adapter found (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Accept errors of i2c_acpi_new_device() (Jaroslav Kysela) [2005073] - serdev: Fix detection of UART devices on Apple machines. (Jaroslav Kysela) [2005073] - serdev: Add ACPI devices by ResourceSource field (Jaroslav Kysela) [2005073] - spi: Return deferred probe error when controller isn't yet available (Jaroslav Kysela) [2005073] - spi/acpi: avoid spurious matches during slave enumeration (Jaroslav Kysela) [2005073] - spi: Add API to count spi acpi resources (Jaroslav Kysela) [2005073] - spi: Support selection of the index of the ACPI Spi Resource before alloc (Jaroslav Kysela) [2005073] - ACPI: Test for ACPI_SUCCESS rather than !ACPI_FAILURE (Jaroslav Kysela) [2005073] - spi/acpi: fix incorrect ACPI parent check (Jaroslav Kysela) [2005073] - spi: Create helper API to lookup ACPI info for spi device (Jaroslav Kysela) [2005073] - spi/acpi: enumerate all SPI slaves in the namespace (Jaroslav Kysela) [2005073] - spi: kill useless initializer in spi_register_controller() (Jaroslav Kysela) [2005073] - spi: fix ctrl->num_chipselect constraint (Jaroslav Kysela) [2005073] - spi: Don't call spi_get_gpio_descs() before device name is set (Jaroslav Kysela) [2005073] - spi: Avoid undefined behaviour when counting unused native CSs (Jaroslav Kysela) [2005073] - spi: Allow to have all native CSs in use along with GPIOs (Jaroslav Kysela) [2005073] - spi: Add missing error handling for CS GPIOs (Jaroslav Kysela) [2005073] - spi: export tracepoint symbols to modules (Jaroslav Kysela) [2005073] - spi: Fix zero length xfer bug (Jaroslav Kysela) [2005073] - spi: Add generic support for unused native cs with cs-gpios (Jaroslav Kysela) [2005073] - spi: Reduce kthread priority (Jaroslav Kysela) [2005073] - spi: core: Use DEVICE_ATTR_RW() for SPI slave control sysfs attribute (Jaroslav Kysela) [2005073] - i2c: acpi: Add an i2c_acpi_client_count() helper function (Jaroslav Kysela) [2005073] - s390/qeth: cache link_info for ethtool (Michal Schmidt) [2117098] - nfp: amend removal of MODULE_VERSION (Stefan Assmann) [1955769] - x86/speculation: Add LFENCE to RSB fill sequence (Waiman Long) [2115080] {CVE-2022-26373} - x86/speculation: Add RSB VM Exit protections (Waiman Long) [2115080] {CVE-2022-26373} - tools headers cpufeatures: Sync with the kernel sources (Waiman Long) [2115080] - tools headers cpufeatures: Sync with the kernel sources (Waiman Long) [2115080] - x86/speculation: Fix RSB filling with CONFIG_RETPOLINE=n (Waiman Long) [2115080] - x86/bugs: Do not enable IBPB at firmware entry when IBPB is not available (Waiman Long) [2115080] - x86/amd: Use IBPB for firmware calls (Waiman Long) [2115080] - x86/bugs: Warn when "ibrs" mitigation is selected on Enhanced IBRS parts (Waiman Long) [2115080] - iavf: Fix reset error handling (Petr Oros) [2119759] - iavf: Fix NULL pointer dereference in iavf_get_link_ksettings (Petr Oros) [2119759] - iavf: Fix adminq error handling (Petr Oros) [2119759] - iavf: Fix missing state logs (Petr Oros) [2119759] - ixgbe: Add locking to prevent panic when setting sriov_numvfs to zero (Ken Cox) [1978613]- netfilter: ipset: fix suspicious RCU usage in find_set_and_id (Florian Westphal) [2118526] - net/mlx5e: Update netdev features after changing XDP state (Amir Tzin) [2049440] - net/mlx5e: CT: Use own workqueue instead of mlx5e priv (Amir Tzin) [2049440] - net/mlx5e: CT: Add ct driver counters (Amir Tzin) [2049440] - net/mlx5e: CT: Fix cleanup of CT before cleanup of TC ct rules (Amir Tzin) [2049440] - net/mlx5e: Align mlx5e_cleanup_uplink_rep_tx() with upstream code. (Amir Tzin) [2049440] - net/mlx5e: Correct the calculation of max channels for rep (Amir Tzin) [2049440] - Documentation: devlink: mlx5.rst: Fix htmldoc build warning (Amir Tzin) [2049440] - net/mlx5: fs, fail conflicting actions (Amir Tzin) [2049440] - net/mlx5: Rearm the FW tracer after each tracer event (Amir Tzin) [2049440] - net/mlx5: correct ECE offset in query qp output (Amir Tzin) [2049440] - net/mlx5e: Disable softirq in mlx5e_activate_rq to avoid race condition (Amir Tzin) [2049440] - net/mlx5e: TC NIC mode, fix tc chains miss table (Amir Tzin) [2049440] - net/mlx5: Don't use already freed action pointer (Amir Tzin) [2049440] - net/mlx5: fix typo in comment (Amir Tzin) [2049440] - IB/mlx5: Fix undefined behavior due to shift overflowing the constant (Amir Tzin) [2049440] - net/mlx5e: Force ethertype usage in mlx5_ct_fs_smfs_fill_mask() (Amir Tzin) [2049440] - net/mlx5: Drain fw_reset when removing device (Amir Tzin) [2049440] - net/mlx5e: CT: Fix setting flow_source for smfs ct tuples (Amir Tzin) [2049440] - net/mlx5e: CT: Fix support for GRE tuples (Amir Tzin) [2049440] - net/mlx5e: Remove HW-GRO from reported features (Amir Tzin) [2049440] - net/mlx5e: Properly block HW GRO when XDP is enabled (Amir Tzin) [2049440] - net/mlx5e: Properly block LRO when XDP is enabled (Amir Tzin) [2049440] - net/mlx5e: Block rx-gro-hw feature in switchdev mode (Amir Tzin) [2049440] - net/mlx5e: Wrap mlx5e_trap_napi_poll into rcu_read_lock (Amir Tzin) [2049440] - net/mlx5: Initialize flow steering during driver probe (Amir Tzin) [2049440] - net/mlx5: Fix matching on inner TTC (Amir Tzin) [2049440] - net/mlx5: Avoid double clear or set of sync reset requested (Amir Tzin) [2049440] - net/mlx5: Fix deadlock in sync reset flow (Amir Tzin) [2049440] - net/mlx5e: Fix trust state reset in reload (Amir Tzin) [2049440] - net/mlx5e: Avoid checking offload capability in post_parse action (Amir Tzin) [2049440] - net/mlx5e: CT: Fix queued up restore put() executing after relevant ft release (Amir Tzin) [2049440] - net/mlx5e: TC, Fix ct_clear overwriting ct action metadata (Amir Tzin) [2049440] - net/mlx5e: Lag, Don't skip fib events on current dst (Amir Tzin) [2049440] - net/mlx5e: Lag, Fix fib_info pointer assignment (Amir Tzin) [2049440] - net/mlx5e: Lag, Fix use-after-free in fib event handler (Amir Tzin) [2049440] - net/mlx5e: Fix the calling of update_buffer_lossy() API (Amir Tzin) [2049440] - net/mlx5e: Don't match double-vlan packets if cvlan is not set (Amir Tzin) [2049440] - net/mlx5: Fix slab-out-of-bounds while reading resource dump menu (Amir Tzin) [2049440] - RDMA/mlx5: Add a missing update of cache->last_add (Amir Tzin) [2049440] - RDMA/mlx5: Don't remove cache MRs when a delay is needed (Amir Tzin) [2049440] - net/mlx5e: HTB, remove unused function declaration (Amir Tzin) [2049440] - net/mlx5e: Statify function mlx5_cmd_trigger_completions (Amir Tzin) [2049440] - net/mlx5: Remove unused fill page array API function (Amir Tzin) [2049440] - net/mlx5: Remove unused exported contiguous coherent buffer allocation API (Amir Tzin) [2049440] - net/mlx5: CT: Remove extra rhashtable remove on tuple entries (Amir Tzin) [2049440] - net/mlx5: DR, Remove hw_ste from mlx5dr_ste to reduce memory (Amir Tzin) [2049440] - net/mlx5: DR, Remove 4 members from mlx5dr_ste_htbl to reduce memory (Amir Tzin) [2049440] - net/mlx5: DR, Remove num_of_entries byte_size from struct mlx5_dr_icm_chunk (Amir Tzin) [2049440] - net/mlx5: DR, Remove icm_addr from mlx5dr_icm_chunk to reduce memory (Amir Tzin) [2049440] - net/mlx5: DR, Remove mr_addr rkey from struct mlx5dr_icm_chunk (Amir Tzin) [2049440] - net/mlx5: DR, Adjust structure member to reduce memory hole (Amir Tzin) [2049440] - net/mlx5e: Drop cqe_bcnt32 from mlx5e_skb_from_cqe_mpwrq_linear (Amir Tzin) [2049440] - net/mlx5e: Drop the len output parameter from mlx5e_xdp_handle (Amir Tzin) [2049440] - net/mlx5e: RX, Test the XDP program existence out of the handler (Amir Tzin) [2049440] - net/mlx5e: Build SKB in place over the first fragment in non-linear legacy RQ (Amir Tzin) [2049440] - net/mlx5e: Add headroom only to the first fragment in legacy RQ (Amir Tzin) [2049440] - net/mlx5e: Validate MTU when building non-linear legacy RQ fragments info (Amir Tzin) [2049440] - net/mlx5e: MPLSoUDP encap, support action vlan pop_eth explicitly (Amir Tzin) [2049440] - net/mlx5e: MPLSoUDP decap, use vlan push_eth instead of pedit (Amir Tzin) [2049440] - RDMA/mlx5: Fix memory leak in error flow for subscribe event routine (Amir Tzin) [2049440] - net/mlx5e: Fix use-after-free in mlx5e_stats_grp_sw_update_stats (Amir Tzin) [2049440] - net/mlx5e: Remove overzealous validations in netlink EEPROM query (Amir Tzin) [2049440] - net/mlx5: Parse module mapping using mlx5_ifc (Amir Tzin) [2049440] - net/mlx5: Query the maximum MCIA register read size from firmware (Amir Tzin) [2049440] - net/mlx5: CT: Create smfs dr matchers dynamically (Amir Tzin) [2049440] - net/mlx5: CT: Add software steering ct flow steering provider (Amir Tzin) [2049440] - net/mlx5: Add smfs lib to export direct steering API to CT (Amir Tzin) [2049440] - net/mlx5: DR, Add helper to get backing dr table from a mlx5 flow table (Amir Tzin) [2049440] - net/mlx5: CT: Introduce a platform for multiple flow steering providers (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the doorbell pgdir (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for UAR (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the EQs (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the EQ table (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the IRQ table (Amir Tzin) [2049440] - net/mlx5: Delete useless module.h include (Amir Tzin) [2049440] - net/mlx5: DR, Add support for ConnectX-7 steering (Amir Tzin) [2049440] - net/mlx5: DR, Refactor ste_ctx handling for STE v0/1 (Amir Tzin) [2049440] - net/mlx5: DR, Rename action modify fields to reflect naming in HW spec (Amir Tzin) [2049440] - net/mlx5: DR, Fix handling of different actions on the same STE in STEv1 (Amir Tzin) [2049440] - net/mlx5: DR, Remove unneeded comments (Amir Tzin) [2049440] - net/mlx5: DR, Add support for matching on Internet Header Length (IHL) (Amir Tzin) [2049440] - net/mlx5: DR, Align mlx5dv_dr API vport action with FW behavior (Amir Tzin) [2049440] - net/mlx5: Add debugfs counters for page commands failures (Amir Tzin) [2049440] - net/mlx5: Add pages debugfs (Amir Tzin) [2049440] - net/mlx5: Move debugfs entries to separate struct (Amir Tzin) [2049440] - net/mlx5: Change release_all_pages cap bit location (Amir Tzin) [2049440] - net/mlx5: Remove redundant error on reclaim pages (Amir Tzin) [2049440] - net/mlx5: Remove redundant error on give pages (Amir Tzin) [2049440] - net/mlx5: Remove redundant notify fail on give pages (Amir Tzin) [2049440] - net/mlx5: Add command failures data to debugfs (Amir Tzin) [2049440] - net/mlx5e: TC, Fix use after free in mlx5e_clone_flow_attr_for_post_act() (Amir Tzin) [2049440] - net/mlx5: Support GRE conntrack offload (Amir Tzin) [2049440] - mlx5: add support for page_pool_get_stats (Amir Tzin) [2049440] - net/mlx5: Add migration commands definitions (Amir Tzin) [2049440] - net/mlx5: Introduce migration bits and structures (Amir Tzin) [2049440] - net/mlx5: Expose APIs to get/put the mlx5 core device (Amir Tzin) [2049440] - net/mlx5: Disable SRIOV before PF removal (Amir Tzin) [2049440] - net/mlx5: Reuse exported virtfn index function call (Amir Tzin) [2049440] - net/mlx5: Add clarification on sync reset failure (Amir Tzin) [2049440] - net/mlx5: Add reset_state field to MFRL register (Amir Tzin) [2049440] - RDMA/mlx5: Use new command interface API (Amir Tzin) [2049440] - net/mlx5: cmdif, Refactor error handling and reporting of async commands (Amir Tzin) [2049440] - net/mlx5: Use mlx5_cmd_do() in core create_{cq,dct} (Amir Tzin) [2049440] - net/mlx5: cmdif, Add new api for command execution (Amir Tzin) [2049440] - net/mlx5: cmdif, cmd_check refactoring (Amir Tzin) [2049440] - net/mlx5: cmdif, Return value improvements (Amir Tzin) [2049440] - net/mlx5: Lag, offload active-backup drops to hardware (Amir Tzin) [2049440] - net/mlx5: Lag, record inactive state of bond device (Amir Tzin) [2049440] - net/mlx5: Lag, don't use magic numbers for ports (Amir Tzin) [2049440] - net/mlx5: Lag, use local variable already defined to access E-Switch (Amir Tzin) [2049440] - net/mlx5: E-switch, add drop rule support to ingress ACL (Amir Tzin) [2049440] - net/mlx5: E-switch, remove special uplink ingress ACL handling (Amir Tzin) [2049440 2049580] - net/mlx5: E-Switch, reserve and use same uplink metadata across ports (Amir Tzin) [2049440 2049580] - net/mlx5: Add ability to insert to specific flow group (Amir Tzin) [2049440] - mlx5: remove unused static inlines (Amir Tzin) [2049440] - RDMA/mlx5: Reorder calls to pcie_relaxed_ordering_enabled() (Amir Tzin) [2049440] - RDMA/mlx5: Store ndescs instead of the translation table size (Amir Tzin) [2049440] - RDMA/mlx5: Merge similar flows of allocating MR from the cache (Amir Tzin) [2049440] - RDMA/mlx5: Fix the flow of a miss in the allocation of a cache ODP MR (Amir Tzin) [2049440] - RDMA/mlx5: Remove redundant work in struct mlx5_cache_ent (Amir Tzin) [2049440] - net/mlx5e: TC, Allow sample action with CT (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Make post_act parse CT and sample actions (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Clean redundant counter flag from tc action parsers (Amir Tzin) [2049440 2049659] - net/mlx5e: Use multi table support for CT and sample actions (Amir Tzin) [2049440 2049659] - net/mlx5e: Create new flow attr for multi table actions (Amir Tzin) [2049440 2049659] - net/mlx5e: Add post act offload/unoffload API (Amir Tzin) [2049440 2049659] - net/mlx5e: Pass actions param to actions_match_supported() (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Move flow hashtable to be per rep (Amir Tzin) [2049440] - net/mlx5e: E-Switch, Add support for tx_port_ts in switchdev mode (Amir Tzin) [2049440] - net/mlx5e: E-Switch, Add PTP counters for uplink representor (Amir Tzin) [2049440] - net/mlx5e: RX, Restrict bulk size for small Striding RQs (Amir Tzin) [2049440] - net/mlx5e: Default to Striding RQ when not conflicting with CQE compression (Amir Tzin) [2049440] - net/mlx5e: Generalize packet merge error message (Amir Tzin) [2049440] - net/mlx5e: Add support for using xdp->data_meta (Amir Tzin) [2049440] - net/mlx5e: Fix spelling mistake "supoported" -> "supported" (Amir Tzin) [2049440] - net/mlx5e: Optimize the common case condition in mlx5e_select_queue (Amir Tzin) [2049440] - net/mlx5e: Optimize modulo in mlx5e_select_queue (Amir Tzin) [2049440] - net/mlx5e: Optimize mlx5e_select_queue (Amir Tzin) [2049440] - net/mlx5e: Use READ_ONCE/WRITE_ONCE for DCBX trust state (Amir Tzin) [2049440] - net/mlx5e: Move repeating code that gets TC prio into a function (Amir Tzin) [2049440] - net/mlx5e: Use select queue parameters to sync with control flow (Amir Tzin) [2049440] - net/mlx5e: Move mlx5e_select_queue to en/selq.c (Amir Tzin) [2049440] - net/mlx5e: Introduce select queue parameters (Amir Tzin) [2049440] - net/mlx5e: Sync txq2sq updates with mlx5e_xmit for HTB queues (Amir Tzin) [2049440] - net/mlx5e: Use a barrier after updating txq2sq (Amir Tzin) [2049440] - net/mlx5e: Disable TX queues before registering the netdev (Amir Tzin) [2049440] - net/mlx5e: Cleanup of start/stop all queues (Amir Tzin) [2049440] - net/mlx5e: Use FW limitation for max MPW WQEBBs (Amir Tzin) [2049440] - net/mlx5e: Read max WQEBBs on the SQ from firmware (Amir Tzin) [2049440] - net/mlx5e: Remove unused tstamp SQ field (Amir Tzin) [2049440] - RDMA/mlx5: Delete useless module.h include (Amir Tzin) [2049440] - RDMA/mlx5: Delete get_num_static_uars function (Amir Tzin) [2049440] - net/mlx5: VLAN push on RX, pop on TX (Amir Tzin) [2049440 2049616] - net/mlx5: Introduce software defined steering capabilities (Amir Tzin) [2049440 2049616] - net/mlx5: Remove unused TIR modify bitmask enums (Amir Tzin) [2049440] - net/mlx5e: CT, Remove redundant flow args from tc ct calls (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Store mapped tunnel id on flow attr (Amir Tzin) [2049440 2049659] - net/mlx5e: Test CT and SAMPLE on flow attr (Amir Tzin) [2049440 2049580 2049659] - net/mlx5e: Refactor eswitch attr flags to just attr flags (Amir Tzin) [2049440 2049580 2049659] - net/mlx5e: CT, Don't set flow flag CT for ct clear flow (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Hold sample_attr on stack instead of pointer (Amir Tzin) [2049440 2049580 2049659] - net/mlx5e: TC, Reject rules with multiple CT actions (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Refactor mlx5e_tc_add_flow_mod_hdr() to get flow attr (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Pass attr to tc_act can_offload() (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Split pedit offloads verify from alloc_tc_pedit_action() (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Move pedit_headers_action to parse_attr (Amir Tzin) [2049440 2049659] - net/mlx5e: Move counter creation call to alloc_flow_attr_counter() (Amir Tzin) [2049440 2049659] - net/mlx5e: Pass attr arg for attaching/detaching encaps (Amir Tzin) [2049440 2049659] - net/mlx5e: Move code chunk setting encap dests into its own function (Amir Tzin) [2049440 2049659] - net_sched: cls_route: remove from list when handle is 0 (Felix Maurer) [2116328] {CVE-2022-2588} - netfilter: nf_tables: do not allow RULE_ID to refer to another chain (Florian Westphal) [2116356] {CVE-2022-2586} - netfilter: nf_tables: do not allow SET_ID to refer to another table (Florian Westphal) [2116356] {CVE-2022-2586} - netfilter: nf_queue: do not allow packet truncation below transport header offset (Florian Westphal) [2116159] {CVE-2022-36946} - net: let flow have same hash in two directions (Ivan Vecera) [2111094] - ipv4: Fix data-races around sysctl_fib_multipath_hash_fields. (Ivan Vecera) [2111094] - net: Add notifications when multipath hash field change (Ivan Vecera) [2111094] - selftests: forwarding: Add test for custom multipath hash with IPv6 GRE (Ivan Vecera) [2111094] - selftests: forwarding: Add test for custom multipath hash with IPv4 GRE (Ivan Vecera) [2111094] - selftests: forwarding: Add test for custom multipath hash (Ivan Vecera) [2111094] - ipv6: Add custom multipath hash policy (Ivan Vecera) [2111094] - ipv6: Add a sysctl to control multipath hash fields (Ivan Vecera) [2111094] - ipv6: Calculate multipath hash inside switch statement (Ivan Vecera) [2111094] - ipv6: Use a more suitable label name (Ivan Vecera) [2111094] - ipv4: Add custom multipath hash policy (Ivan Vecera) [2111094] - ipv4: Add a sysctl to control multipath hash fields (Ivan Vecera) [2111094] - ipv4: Calculate multipath hash inside switch statement (Ivan Vecera) [2111094] - ipv6: Use math to point per net sysctls into the appropriate struct net (Ivan Vecera) [2111094] - selftest/net/forwarding: declare NETIFS p9 p10 (Ivan Vecera) [2111094] - ipv6: Fix sysctl max for fib_multipath_hash_policy (Ivan Vecera) [2111094] - selftests: forwarding: Test multipath hashing on inner IP pkts for GRE tunnel (Ivan Vecera) [2111094] - ipv6: Support multipath hashing on inner IP pkts (Ivan Vecera) [2111094] - ipv4: Multipath hashing on inner L3 needs to consider inner IPv6 pkts (Ivan Vecera) [2111094] - ipv4: Support multipath hashing on inner IP pkts for GRE tunnel (Ivan Vecera) [2111094] - ipv4: Initialize flowi4_multipath_hash in data path (Ivan Vecera) [2111094] - net: ipv4: Fix NULL pointer dereference in route lookup (Ivan Vecera) [2111094] - route: Add multipath_hash in flowi_common to make user-define hash (Ivan Vecera) [2111094]- drm/nouveau/kms/nv140-: Disable interlacing (Lyude Paul) [2097647] - rpm: convert gcc and libelf to Recommends (Jarod Wilson) [2114900] - redhat: add ca7 to redhat/git/files (Jarod Wilson)- net/mlx5e: TC, Remove redundant error logging (Amir Tzin) [2049436] - net/mlx5e: SHAMPO, reduce TIR indication (Amir Tzin) [2049436] - net/mlx5e: Lag, Only handle events from highest priority multipath entry (Amir Tzin) [2049436] - net/mlx5: Fix offloading with ESWITCH_IPV4_TTL_MODIFY_ENABLE (Amir Tzin) [2049436] - net/mlx5: Fix a race on command flush flow (Amir Tzin) [2049436] - net/mlx5: Fix size field in bufferx_reg struct (Amir Tzin) [2049436] - net/mlx5e: Fix VF min/max rate parameters interchange mistake (Amir Tzin) [2049436] - net/mlx5e: Add missing increment of count (Amir Tzin) [2049436] - net/mlx5e: MPLSoUDP decap, fix check for unsupported matches (Amir Tzin) [2049436] - net/mlx5e: Fix MPLSoUDP encap to use MPLS action information (Amir Tzin) [2049436] - net/mlx5e: Add feature check for set fec counters (Amir Tzin) [2049436 2049711] - net/mlx5e: TC, Skip redundant ct clear actions (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with forward and drop actions (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with drop and modify hdr action (Amir Tzin) [2049436] - net/mlx5e: kTLS, Use CHECKSUM_UNNECESSARY for device-offloaded packets (Amir Tzin) [2049436] - net/mlx5e: Use dma device access helper (add dropped hunk) (Amir Tzin) [2049436] - net/mlx5e: Fix wrong return value on ioctl EEPROM query failure (Amir Tzin) [2049436] - net/mlx5: Fix possible deadlock on rule deletion (Amir Tzin) [2049436] - net/mlx5: Fix tc max supported prio for nic mode (Amir Tzin) [2049436] - net/mlx5: Update log_max_qp value to be 17 at most (Amir Tzin) [2049436] - net/mlx5: DR, Don't allow match on IP w/o matching on full ethertype/ip_version (Amir Tzin) [2049436] - net/mlx5e: Avoid field-overflowing memcpy() (Amir Tzin) [2049436] - net/mlx5e: Use struct_group() for memcpy() region (Amir Tzin) [2049436] - net/mlx5e: IPsec: Fix tunnel mode crypto offload for non TCP/UDP traffic (Amir Tzin) [2049436 2052871] - net/mlx5e: IPsec: Fix crypto offload for non TCP/UDP encapsulated traffic (Amir Tzin) [2049436 2052871] - net/mlx5e: Don't treat small ceil values as unlimited in HTB offload (Amir Tzin) [2049436] - net/mlx5: E-Switch, Fix uninitialized variable modact (Amir Tzin) [2049436] - net/mlx5e: Fix handling of wrong devices during bond netevent (Amir Tzin) [2049436] - net/mlx5e: Fix broken SKB allocation in HW-GRO (Amir Tzin) [2049436] - net/mlx5e: Fix wrong calculation of header index in HW_GRO (Amir Tzin) [2049436] - net/mlx5: Fix offloading with ESWITCH_IPV4_TTL_MODIFY_ENABLE (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with forward and drop actions (Amir Tzin) [2049436] - net/mlx5: Use del_timer_sync in fw reset flow of halting poll (Amir Tzin) [2049436] - net/mlx5e: Fix module EEPROM query (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with drop and modify hdr action (Amir Tzin) [2049436] - net/mlx5: Bridge, ensure dev_name is null-terminated (Amir Tzin) [2049436] - net/mlx5: Bridge, take rtnl lock in init error handler (Amir Tzin) [2049436] - mlx5: Don't accidentally set RTO_ONLINK before mlx5e_route_lookup_ipv4_get() (Amir Tzin) [2049436] - net/mlx5e: Fix build error in fec_set_block_stats() (Amir Tzin) [2049436] - Revert "net/mlx5: Add retry mechanism to the command entry index allocation" (Amir Tzin) [2049436] - net/mlx5: Set command entry semaphore up once got index free (Amir Tzin) [2049436] - net/mlx5e: Sync VXLAN udp ports during uplink representor profile change (Amir Tzin) [2049436] - net/mlx5: Fix access to sf_dev_table on allocation failure (Amir Tzin) [2049436] - net/mlx5e: Fix matching on modified inner ip_ecn bits (Amir Tzin) [2049436] - Revert "net/mlx5e: Block offload of outer header csum for GRE tunnel" (Amir Tzin) [2049436] - Revert "net/mlx5e: Block offload of outer header csum for UDP tunnels" (Amir Tzin) [2049436] - net/mlx5e: Fix nullptr on deleting mirroring rule (Amir Tzin) [2049436] - net/mlx5e: Fix page DMA map/unmap attributes (Amir Tzin) [2049436] - net/mlx5: Use dma device access helper (add dropped hunk) (Amir Tzin) [2049436] - net/mlx5e: Add recovery flow in case of error CQE (Amir Tzin) [2049436] - net/mlx5e: Refactor set_pflag_cqe_based_moder (Amir Tzin) [2049436] - net/mlx5e: Move HW-GRO and CQE compression check to fix features flow (Amir Tzin) [2049436] - net/mlx5e: Fix feature check per profile (Amir Tzin) [2049436] - net/mlx5e: Unblock setting vid 0 for VF in case PF isn't eswitch manager (Amir Tzin) [2049436] - net/mlx5e: Expose FEC counters via ethtool (Amir Tzin) [2049436 2049711] - net/mlx5: Update log_max_qp value to FW max capability (Amir Tzin) [2049436] - net/mlx5: Use irq_set_affinity_and_hint() (Amir Tzin) [2049436] - net/mlx5: SF, Use all available cpu for setting cpu affinity (Amir Tzin) [2049436] - net/mlx5: Introduce API for bulk request and release of IRQs (Amir Tzin) [2049436] - net/mlx5: Split irq_pool_affinity logic to new file (Amir Tzin) [2049436] - net/mlx5: Move affinity assignment into irq_request (Amir Tzin) [2049436] - net/mlx5: Introduce control IRQ request API (Amir Tzin) [2049436] - net/mlx5: mlx5e_hv_vhca_stats_create return type to void (Amir Tzin) [2049436] - RDMA/mlx5: Print wc status on CQE error and dump needed (Amir Tzin) [2049436] - net: fixup build after bpf header changes (Amir Tzin) [2049436] - net/mlx5: CT: Set flow source hint from provided tuple device (Amir Tzin) [2049436] - net/mlx5: Set SMFS as a default steering mode if device supports it (Amir Tzin) [2049436] - net/mlx5: DR, Improve steering for empty or RX/TX-only matchers (Amir Tzin) [2049436] - net/mlx5: DR, Add support for matching on geneve_tlv_option_0_exist field (Amir Tzin) [2049436] - net/mlx5: DR, Support matching on tunnel headers 0 and 1 (Amir Tzin) [2049436] - net/mlx5: DR, Add misc5 to match_param structs (Amir Tzin) [2049436] - net/mlx5: Add misc5 flow table match parameters (Amir Tzin) [2049436] - net/mlx5: DR, Add support for UPLINK destination type (Amir Tzin) [2049436] - net/mlx5e: Use auxiliary_device driver data helpers (Amir Tzin) [2049436] - net/mlx5e: Take packet_merge params directly from the RX res struct (Amir Tzin) [2049436] - net/mlx5e: Allocate per-channel stats dynamically at first usage (Amir Tzin) [2049436] - net/mlx5e: Use dynamic per-channel allocations in stats (Amir Tzin) [2049436] - net/mlx5e: Allow profile-specific limitation on max num of channels (Amir Tzin) [2049436] - net/mlx5e: Save memory by using dynamic allocation in netdev priv (Amir Tzin) [2049436] - net/mlx5e: Add profile indications for PTP and QOS HTB features (Amir Tzin) [2049436] - net/mlx5e: Use bitmap field for profile features (Amir Tzin) [2049436] - net/mlx5: Remove the repeated declaration (Amir Tzin) [2049436] - net/mlx5: Let user configure max_macs generic param (Amir Tzin) [2049436] - net/mlx5: Let user configure event_eq_size param (Amir Tzin) [2049436] - net/mlx5: Let user configure io_eq_size param (Amir Tzin) [2049436] - net/mlx5: Introduce log_max_current_uc_list_wr_supported bit (Amir Tzin) [2049436] - net/mlx5e: Move goto action checks into tc_action goto post parse op (Amir Tzin) [2049436] - net/mlx5e: Move vlan action chunk into tc action vlan post parse op (Amir Tzin) [2049436] - net/mlx5e: Add post_parse() op to tc action infrastructure (Amir Tzin) [2049436] - net/mlx5e: Move sample attr allocation to tc_action sample parse op (Amir Tzin) [2049436] - net/mlx5e: TC action parsing loop (Amir Tzin) [2049436] - net/mlx5e: Add redirect ingress to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add sample and ptype to tc_action infra (Amir Tzin) [2049436] - net/mlx5e: Add ct to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add mirred/redirect to tc action infra (Amir Tzin) [2049436] - Revert "net/mlx5e: TC, Remove redundant error logging" (Amir Tzin) [2049436] - net/mlx5e: Add mpls push/pop to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add vlan push/pop/mangle to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add pedit to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add csum to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add tunnel encap/decap to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add goto to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add tc action infrastructure (Amir Tzin) [2049436] - RDMA/mlx5: Use memset_after() to zero struct mlx5_ib_mr (Amir Tzin) [2049436] - RDMA/mlx5: Add support to multiple priorities for FDB rules (Amir Tzin) [2049436] - net/mlx5: Create more priorities for FDB bypass namespace (Amir Tzin) [2049436] - net/mlx5: Refactor mlx5_get_flow_namespace (Amir Tzin) [2049436] - net/mlx5: Separate FDB namespace (Amir Tzin) [2049436] - net/mlx5: Dynamically resize flow counters query buffer (Amir Tzin) [2049436] - net/mlx5e: TC, Set flow attr ip_version earlier (Amir Tzin) [2049436] - net/mlx5e: TC, Move common flow_action checks into function (Amir Tzin) [2049436] - net/mlx5e: Remove redundant actions arg from vlan push/pop funcs (Amir Tzin) [2049436] - net/mlx5e: Remove redundant actions arg from validate_goto_chain() (Amir Tzin) [2049436] - net/mlx5e: TC, Remove redundant action stack var (Amir Tzin) [2049436] - net/mlx5e: Hide function mlx5e_num_channels_changed (Amir Tzin) [2049436] - net/mlx5e: SHAMPO, clean MLX5E_MAX_KLM_PER_WQE macro (Amir Tzin) [2049436] - net/mlx5: Print more info on pci error handlers (Amir Tzin) [2049436] - net/mlx5: SF, silence an uninitialized variable warning (Amir Tzin) [2049436] - net/mlx5: Fix error return code in esw_qos_create() (Amir Tzin) [2049436] - net/mlx5: E-switch, Create QoS on demand (Amir Tzin) [2049436] - net/mlx5: E-switch, Enable vport QoS on demand (Amir Tzin) [2049436] - net/mlx5: E-switch, move offloads mode callbacks to offloads file (Amir Tzin) [2049436] - net/mlx5: E-switch, Reuse mlx5_eswitch_set_vport_mac (Amir Tzin) [2049436] - net/mlx5: E-switch, Remove vport enabled check (Amir Tzin) [2049436] - net/mlx5e: Specify out ifindex when looking up decap route (Amir Tzin) [2049436] - net/mlx5e: TC, Move comment about mod header flag to correct place (Amir Tzin) [2049436] - net/mlx5e: TC, Move kfree() calls after destroying all resources (Amir Tzin) [2049436] - net/mlx5e: TC, Destroy nic flow counter if exists (Amir Tzin) [2049436] - net/mlx5: TC, using swap() instead of tmp variable (Amir Tzin) [2049436] - net/mlx5: CT: Allow static allocation of mod headers (Amir Tzin) [2049436] - net/mlx5e: Refactor mod header management API (Amir Tzin) [2049436] - net/mlx5: Avoid printing health buffer when firmware is unavailable (Amir Tzin) [2049436 2049717] - net/mlx5e: Support ethtool cq mode (Amir Tzin) [2049436 2049840] - Revert "RDMA/mlx5: Fix releasing unallocated memory in dereg MR flow" (Amir Tzin) [2049435] - net/mlx5: Use first online CPU instead of hard coded CPU (Amir Tzin) [2049435] - net/mlx5e: SHAMPO, Fix constant expression result (Amir Tzin) [2049435] - net/mlx5: Fix access to a non-supported register (Amir Tzin) [2049435 2049717] - net/mlx5: Fix too early queueing of log timestamp work (Amir Tzin) [2049435 2049717] - net/mlx5: Fix use after free in mlx5_health_wait_pci_up (Amir Tzin) [2049435] - net/mlx5: Lag, Fix recreation of VF LAG (Amir Tzin) [2049435] - net/mlx5e: Sync TIR params updates against concurrent create/modify (Amir Tzin) [2049435] - RDMA/mlx5: Fix releasing unallocated memory in dereg MR flow (Amir Tzin) [2049435] - net/mlx5: Fix flow counters SF bulk query len (Amir Tzin) [2049435] - net/mlx5: Lag, fix a potential Oops with mlx5_lag_create_definer() (Amir Tzin) [2049435] - net/mlx5e: Prevent HW-GRO and CQE-COMPRESS features operate together (Amir Tzin) [2049435] - net/mlx5e: Add HW-GRO offload (Amir Tzin) [2049435] - net/mlx5e: Add HW_GRO statistics (Amir Tzin) [2049435] - net/mlx5e: HW_GRO cqe handler implementation (Amir Tzin) [2049435] - net/mlx5e: Add data path for SHAMPO feature (Amir Tzin) [2049435] - net/mlx5e: Add handle SHAMPO cqe support (Amir Tzin) [2049435] - net/mlx5e: Add control path for SHAMPO feature (Amir Tzin) [2049435] - net/mlx5e: Add support to klm_umr_wqe (Amir Tzin) [2049435] - net/mlx5e: Rename TIR lro functions to TIR packet merge functions (Amir Tzin) [2049435] - net/mlx5e: Align mlx5e_resources with upstream code. (Amir Tzin) [2049435] - net/mlx5: Add SHAMPO caps, HW bits and enumerations (Amir Tzin) [2049435] - net/mlx5e: Rename lro_timeout to packet_merge_timeout (Amir Tzin) [2049435] - net/mlx5: SF_DEV Add SF device trace points (Amir Tzin) [2049435] - net/mlx5: SF, Add SF trace points (Amir Tzin) [2049435] - net/mlx5: Bridge, support replacing existing FDB entry (Amir Tzin) [2049435] - net/mlx5: Bridge, extract code to lookup and del/notify entry (Amir Tzin) [2049435] - net/mlx5: Add periodic update of host time to firmware (Amir Tzin) [2049435 2049717] - net/mlx5: Print health buffer by log level (Amir Tzin) [2049435 2049717] - net/mlx5: Extend health buffer dump (Amir Tzin) [2049435 2049717] - net/mlx5: Reduce flow counters bulk query buffer size for SFs (Amir Tzin) [2049435] - net/mlx5: Fix unused function warning of mlx5i_flow_type_mask (Amir Tzin) [2049435] - net/mlx5: Remove unnecessary checks for slow path flag (Amir Tzin) [2049435] - net/mlx5e: don't write directly to netdev->dev_addr (Amir Tzin) [2049435] - RDMA/mlx5: Use dev_addr_mod() (Amir Tzin) [2049435] - RDMA/mlx5: fix build error with INFINIBAND_USER_ACCESS=n (Amir Tzin) [2049435] - RDMA/mlx5: Attach ndescs to mlx5_ib_mkey (Amir Tzin) [2049435] - RDMA/mlx5: Move struct mlx5_core_mkey to mlx5_ib (Amir Tzin) [2049435] - RDMA/mlx5: Replace struct mlx5_core_mkey by u32 key (Amir Tzin) [2049435] - RDMA/mlx5: Align mlx5e_resources with upstream code. (Amir Tzin) [2049435] - RDMA/mlx5: Remove pd from struct mlx5_core_mkey (Amir Tzin) [2049435] - RDMA/mlx5: Remove size from struct mlx5_core_mkey (Amir Tzin) [2049435] - RDMA/mlx5: Remove iova from struct mlx5_core_mkey (Amir Tzin) [2049435] - net/mlx5: E-Switch, Increase supported number of forward destinations to 32 (Amir Tzin) [2049435] - net/mlx5: E-Switch, Use dynamic alloc for dest array (Amir Tzin) [2049435] - net/mlx5: Lag, use steering to select the affinity port in LAG (Amir Tzin) [2049435] - net/mlx5: Lag, add support to create/destroy/modify port selection (Amir Tzin) [2049435] - net/mlx5: Lag, add support to create TTC tables for LAG port selection (Amir Tzin) [2049435] - net/mlx5: Lag, add support to create definers for LAG (Amir Tzin) [2049435] - net/mlx5: Lag, set match mask according to the traffic type bitmap (Amir Tzin) [2049435] - net/mlx5: Lag, set LAG traffic type mapping (Amir Tzin) [2049435] - net/mlx5: Lag, move lag files into directory (Amir Tzin) [2049435] - net/mlx5: Introduce new uplink destination type (Amir Tzin) [2049435] - net/mlx5: Add support to create match definer (Amir Tzin) [2049435] - net/mlx5: Introduce port selection namespace (Amir Tzin) [2049435] - net/mlx5: Support partial TTC rules (Amir Tzin) [2049435] - mlx5: prevent 64bit divide (Amir Tzin) [2049435] - net/mlx5: Use system_image_guid to determine bonding (Amir Tzin) [2049435] - net/mlx5: Use native_port_num as 1st option of device index (Amir Tzin) [2049435] - net/mlx5: Introduce new device index wrapper (Amir Tzin) [2049435] - net/mlx5: Check return status first when querying system_image_guid (Amir Tzin) [2049435] - net/mlx5: DR, Prefer kcalloc over open coded arithmetic (Amir Tzin) [2049435] - net/mlx5e: Add extack msgs related to TC for better debug (Amir Tzin) [2049435] - net/mlx5: CT: Fix missing cleanup of ct nat table on init failure (Amir Tzin) [2049435] - Revert "net/mlx5e: TC, Skip redundant ct clear actions" (Amir Tzin) [2049435] - net/mlx5: Disable roce at HCA level (Amir Tzin) [2049435] - net/mlx5i: Enable Rx steering for IPoIB via ethtool (Amir Tzin) [2049435] - net/mlx5: Bridge, provide flow source hints (Amir Tzin) [2049435] - net/mlx5: Read timeout values from DTOR (Amir Tzin) [2049435] - net/mlx5: Read timeout values from init segment (Amir Tzin) [2049435] - net/mlx5: Add layout to support default timeouts register (Amir Tzin) [2049435] - net/mlx5: Set devlink reload feature bit for supported devices only (Amir Tzin) [2049435] - RDMA/mlx5: Add optional counter support in get_hw_stats callback (Amir Tzin) [2049435] - RDMA/mlx5: Add modify_op_stat() support (Amir Tzin) [2049435] - RDMA/mlx5: Add steering support in optional flow counters (Amir Tzin) [2049435] - RDMA/mlx5: Support optional counters in hw_stats initialization (Amir Tzin) [2049435] - net/mlx5: Add priorities for counters in RDMA namespaces (Amir Tzin) [2049435] - net/mlx5: Add ifc bits to support optional counters (Amir Tzin) [2049435] - net/mlx5: Enable single IRQ for PCI Function (Amir Tzin) [2049435] - net/mlx5: Shift control IRQ to the last index (Amir Tzin) [2049435] - net/mlx5: Bridge, pop VLAN on egress table miss (Amir Tzin) [2049435] - net/mlx5: Bridge, mark reg_c1 when pushing VLAN (Amir Tzin) [2049435] - net/mlx5: Bridge, extract VLAN pop code to dedicated functions (Amir Tzin) [2049435] - net/mlx5: Bridge, refactor eswitch instance usage (Amir Tzin) [2049435] - net/mlx5e: Support accept action (Amir Tzin) [2049435] - net/mlx5e: Specify out ifindex when looking up encap route (Amir Tzin) [2049435] - net/mlx5e: Reserve a value from TC tunnel options mapping (Amir Tzin) [2049435] - net/mlx5e: Move parse fdb check into actions_match_supported_fdb() (Amir Tzin) [2049435] - net/mlx5e: Split actions_match_supported() into a sub function (Amir Tzin) [2049435] - net/mlx5e: Move mod hdr allocation to a single place (Amir Tzin) [2049435] - net/mlx5e: TC, Refactor sample offload error flow (Amir Tzin) [2049435] - RDMA/mlx5: Avoid taking MRs from larger MR cache pools when a pool is empty (Amir Tzin) [2049435] - IB/mlx5: Flow through a more detailed return code from get_prefetchable_mr() (Amir Tzin) [2049435] - net/mlx5e: Use array_size() helper (Amir Tzin) [2049435] - net/mlx5: Use struct_size() helper in kvzalloc() (Amir Tzin) [2049435] - net/mlx5: Use kvcalloc() instead of kvzalloc() (Amir Tzin) [2049435] - net/mlx5: Tolerate failures in debug features while driver load (Amir Tzin) [2049435] - IB/mlx5: Enable UAR to have DevX UID (Amir Tzin) [2049435] - net/mlx5: Add uid field to UAR allocation structures (Amir Tzin) [2049435] - net/mlx5e: check return value of rhashtable_init (Amir Tzin) [2049435] - net/mlx5e: Enable TC offload for ingress MACVLAN (Amir Tzin) [2049435] - net/mlx5e: Enable TC offload for egress MACVLAN (Amir Tzin) [2049435] - net/mlx5e: loopback test is not supported in switchdev mode (Amir Tzin) [2049435] - net/mlx5e: Use NL_SET_ERR_MSG_MOD() for errors parsing tunnel attributes (Amir Tzin) [2049435] - net/mlx5e: Use tc sample stubs instead of ifdefs in source file (Amir Tzin) [2049435] - net/mlx5e: Remove redundant priv arg from parse_pedit_to_reformat() (Amir Tzin) [2049435] - net/mlx5e: Check action fwd/drop flag exists also for nic flows (Amir Tzin) [2049435] - net/mlx5e: Set action fwd flag when parsing tc action goto (Amir Tzin) [2049435] - net/mlx5e: Remove incorrect addition of action fwd flag (Amir Tzin) [2049435] - Revert "net/mlx5e: TC, Fix ct_clear overwriting ct action metadata" (Amir Tzin) [2049435] - net/mlx5e: Use correct return type (Amir Tzin) [2049435] - net/mlx5e: Add error flow for ethtool -X command (Amir Tzin) [2049435] - net/mlx5: Fix rdma aux device on devlink reload (Amir Tzin) [2049434] - RDMA/mlx5: Relax DCS QP creation checks (Amir Tzin) [2049434] - net/mellanox: switch from 'pci_' to 'dma_' API (Amir Tzin) [2049434] - net/mlx5e: Make use of netdev_warn() (Amir Tzin) [2049434] - net/mlx5: Initialize numa node for all core devices (Amir Tzin) [2049434] - net/mlx5: Allocate individual capability (Amir Tzin) [2049434] - net/mlx5: Reorganize current and maximal capabilities to be per-type (Amir Tzin) [2049434] - net/mlx5: SF, use recent sysfs api (Amir Tzin) [2049434] - net/mlx5: Refcount mlx5_irq with integer (Amir Tzin) [2049434] - net/mlx5: Change SF missing dedicated MSI-X err message to dbg (Amir Tzin) [2049434] - net/mlx5: Align mlx5_irq structure (Amir Tzin) [2049434] - net/mlx5: Delete impossible dev->state checks (Amir Tzin) [2049434] - net/mlx5: Support enable_vnet devlink dev param (Amir Tzin) [2049434] - net/mlx5: Support enable_rdma devlink dev param (Amir Tzin) [2049434] - net/mlx5: Support enable_eth devlink dev param (Amir Tzin) [2049434] - RDMA/mlx5: Drop in-driver verbs object creations (Amir Tzin) [2049434] - RDMA/mlx5: Delete device resource mutex that didn't protect anything (Amir Tzin) [2049434] - RDMA/mlx5: Cancel pkey work before destroying device resources (Amir Tzin) [2049434] - net/mlx5e: Return -EOPNOTSUPP if more relevant when parsing tc actions (Amir Tzin) [2049434] - net/mlx5e: Remove redundant assignment of counter to null (Amir Tzin) [2049434] - net/mlx5e: Remove redundant parse_attr arg (Amir Tzin) [2049434] - net/mlx5e: Remove redundant cap check for flow counter (Amir Tzin) [2049434] - net/mlx5e: Remove redundant filter_dev arg from parse_tc_fdb_actions() (Amir Tzin) [2049434] - net/mlx5e: Remove redundant tc act includes (Amir Tzin) [2049434] - IB/mlx5: Rename is_apu_thread_cq function to is_apu_cq (Amir Tzin) [2049434] - RDMA/mlx5: Add DCS offload support (Amir Tzin) [2049434] - RDMA/mlx5: Separate DCI QP creation logic (Amir Tzin) [2049434] - net/mlx5: Add DCS caps & fields support (Amir Tzin) [2049434] - KVM: nVMX: Inject #UD if VMXON is attempted with incompatible CR0/CR4 (Vitaly Kuznetsov) [2119233] - mm: Fix PASID use-after-free issue (Jerry Snitselaar) [2113046] - scsi: csiostor: Uninitialized data in csio_ln_vnp_read_cbfn() (Rahul Lakkireddy) [2105815] - scsi: csiostor: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix a typo (Rahul Lakkireddy) [2105815] - scsi: csiostor: Assign boolean values to a bool variable (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix fall-through warnings for Clang (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix spelling mistake "couldnt" -> "couldn't" (Rahul Lakkireddy) [2105815] - scsi: csiostor: Add missing description for csio_rnode_fwevt_handler()'s 'fwevt' param (Rahul Lakkireddy) [2105815] - scsi: csiostor: Remove 2 unused variables {mc,edc}_bist_status_rdata_reg (Rahul Lakkireddy) [2105815] - scsi: csiostor: Demote kerneldoc that fails to meet the criteria (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix misnamed function parameter (Rahul Lakkireddy) [2105815] - scsi: csiostor: Adjust indentation in csio_device_reset (Rahul Lakkireddy) [2105815] - mediatek: mt76: eeprom: fix missing of_node_put() in mt76_find_power_limits_node() (Jose Ignacio Tornos Martinez) [2103625] - wifi: mac80211: consider EHT element size in assoc request (Jose Ignacio Tornos Martinez) [2103625] - wifi: mac80211: switch airtime fairness back to deficit round-robin scheduling (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7615: fix throughput regression on DFS channels (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix incorrect testmode ipg on band 1 caused by wmm_idx (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: enlarge maximum VHT MPDU length to 11454 (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: fix aggregation subframes setting to HE max (Jose Ignacio Tornos Martinez) [2103625] - wifi: mac80211_hwsim: set virtio device ready in probe() (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921s: fix possible sdio deadlock in command fail (Jose Ignacio Tornos Martinez) [2103625] - wifi: rtw89: 8852a: rfk: fix div 0 exception (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: do not update pm states in case of error (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7615: do not update pm stats in case of error (Jose Ignacio Tornos Martinez) [2103625] - ath11k: Avoid REO CMD failed prints during firmware recovery (Jose Ignacio Tornos Martinez) [2103625] - ath11k: Fix incorrect debug_mask mappings (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix missing skb drop on htc_tx_completion error (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921s: fix firmware download random fail (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix IRQ affinity warning on shutdown (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix netdev open race (Jose Ignacio Tornos Martinez) [2103625] - iwlwifi: fw: init SAR GEO table only if data is present (Jose Ignacio Tornos Martinez) [2103625] - ath10k: htt_tx: do not interpret Eth frames as WiFi (Jose Ignacio Tornos Martinez) [2103625] - ath11k: Don't check arvif->is_started before sending management frames (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix twt table_mask to u16 in mt7915_dev (Jose Ignacio Tornos Martinez) [2103625] - ath11k: reset 11d state in process of recovery (Jose Ignacio Tornos Martinez) [2103625] - brcmfmac: use ISO3166 country code and 0 rev as fallback on brcmfmac43602 chips (Jose Ignacio Tornos Martinez) [2103625] - mt76: fix tx status related use-after-free race on station removal (Jose Ignacio Tornos Martinez) [2103625] - mt76: do not attempt to reorder received 802.3 packets without agg session (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: fix kernel crash at mt7921_pci_remove (Jose Ignacio Tornos Martinez) [2103625] - mt76: fix antenna config missing in 6G cap (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: report rx mode value in mt7915_mac_fill_rx_rate (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: do not pass data pointer to mt7915_mcu_muru_debug_set (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix possible NULL pointer dereference in mt7915_mac_fill_rx_vector (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix possible uninitialized pointer dereference in mt7986_wmac_gpio_setup (Jose Ignacio Tornos Martinez) [2103625] - ath10k: enable napi on RX path for usb (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix the warning of dev_wake in mhi_pm_disable_transition() (Jose Ignacio Tornos Martinez) [2103625] - ath11k: acquire ab->base_lock in unassign when finding the peer by addr (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix unbounded shift in mt7915_mcu_beacon_mbss (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix DBDC default band selection on MT7915D (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: honor pm user configuration in mt7921_sniffer_interface_iter (Jose Ignacio Tornos Martinez) [2103625] - i40e: Fix tunnel checksum offload with fragmented traffic (Ivan Vecera) [2107977] - net/mlx5e: Fix matchall police parameters validation (Ivan Vecera) [2106271] - net/sched: act_police: allow 'continue' action offload (Ivan Vecera) [2106271] - net: Print hashed skb addresses for all net and qdisc events (Ivan Vecera) [2106271] - net: sched: fixed barrier to prevent skbuff sticking in qdisc backlog (Ivan Vecera) [2106271] - net/sched: act_pedit: sanitize shift argument before usage (Ivan Vecera) [2106271] - net/sched: act_pedit: really ensure the skb is writable (Ivan Vecera) [2106271] - net/sched: taprio: Check if socket flags are valid (Ivan Vecera) [2106271] - net/sched: flower: Avoid overwriting error messages (Ivan Vecera) [2106271] - net/sched: matchall: Avoid overwriting error messages (Ivan Vecera) [2106271] - net/sched: cls_api: Add extack message for unsupported action offload (Ivan Vecera) [2106271] - net/sched: act_vlan: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_tunnel_key: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_skbedit: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_police: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_pedit: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_mpls: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_mirred: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_gact: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_api: Add extack to offload_act_setup() callback (Ivan Vecera) [2106271] - net/sched: flower: Take verbose flag into account when logging error messages (Ivan Vecera) [2106271] - net/sched: matchall: Take verbose flag into account when logging error messages (Ivan Vecera) [2106271] - net/sched: fix incorrect vlan_push_eth dest field (Ivan Vecera) [2106271] - net/sched: add vlan push_eth and pop_eth action to the hardware IR (Ivan Vecera) [2106271] - selftests: tc-testing: Increase timeout in tdc config file (Ivan Vecera) [2106271] - flow_offload: improve extack msg for user when adding invalid filter (Ivan Vecera) [2106271] - flow_offload: reject offload for all drivers with invalid police parameters (Ivan Vecera) [2106271] - net: flow_offload: add tc police action parameters (Ivan Vecera) [2106271] - net: sched: avoid newline at end of message in NL_SET_ERR_MSG_MOD (Ivan Vecera) [2106271] - net_sched: add __rcu annotation to netdev->qdisc (Ivan Vecera) [2106271] - net/sched: act_police: more accurate MTU policing (Ivan Vecera) [2106271] - net/sched: Enable tc skb ext allocation on chain miss only when needed (Ivan Vecera) [2106271] - net: sched: remove qdisc_qlen_cpu() (Ivan Vecera) [2106271] - net: sched: remove psched_tdiff_bounded() (Ivan Vecera) [2106271] - net: sched: Clarify error message when qdisc kind is unknown (Ivan Vecera) [2106271] - sch_cake: revise Diffserv docs (Ivan Vecera) [2106271] - flow_offload: fix suspicious RCU usage when offloading tc action (Ivan Vecera) [2106271] - net/sched: use min() macro instead of doing it manually (Ivan Vecera) [2106271] - selftests: tc-testing: add action offload selftest for action and filter (Ivan Vecera) [2106271] - flow_offload: validate flags of filter and actions (Ivan Vecera) [2106271] - flow_offload: add reoffload process to update hw_count (Ivan Vecera) [2106271] - net: sched: save full flags for tc action (Ivan Vecera) [2106271] - flow_offload: add process to update action stats from hardware (Ivan Vecera) [2106271] - flow_offload: rename exts stats update functions with hw (Ivan Vecera) [2106271] - flow_offload: add skip_hw and skip_sw to control if offload the action (Ivan Vecera) [2106271] - flow_offload: allow user to offload tc action to net device (Ivan Vecera) [2106271] - flow_offload: add ops to tc_action_ops for flow action setup (Ivan Vecera) [2106271] - flow_offload: rename offload functions with offload instead of flow (Ivan Vecera) [2106271] - flow_offload: add index to flow_action_entry structure (Ivan Vecera) [2106271] - flow_offload: reject to offload tc actions in offload drivers (Ivan Vecera) [2106271] - flow_offload: fill flags to action structure (Ivan Vecera) [2106271] - sch_cake: do not call cake_destroy() from cake_init() (Ivan Vecera) [2106271] - net/sched: fq_pie: prevent dismantle issue (Ivan Vecera) [2106271] - selftests/tc-testing: Fix cannot create /sys/bus/netdevsim/new_device: Directory nonexistent (Ivan Vecera) [2106271] - selftests/tc-testing: add missing config (Ivan Vecera) [2106271] - selftests/tc-testing: add exit code (Ivan Vecera) [2106271] - net/sched: act_ct: Offload only ASSURED connections (Ivan Vecera) [2106271] - selftests/tc-testings: Be compatible with newer tc output (Ivan Vecera) [2106271] - selftests: forwarding: Fix packet matching in mirroring selftests (Ivan Vecera) [2106271] - net/sched: sch_taprio: fix undefined behavior in ktime_mono_to_any (Ivan Vecera) [2106271] - cls_flower: Fix inability to match GRE/IPIP packets (Ivan Vecera) [2106271] - sch_htb: Add extack messages for EOPNOTSUPP errors (Ivan Vecera) [2106271] - net: sch: simplify condtion for selecting mini_Qdisc_pair buffer (Ivan Vecera) [2106271] - net: sch: eliminate unnecessary RCU waits in mini_qdisc_pair_swap() (Ivan Vecera) [2106271] - net: sched: gred: dynamically allocate tc_gred_qopt_offload (Ivan Vecera) [2106271] - net: stats: Read the statistics in ___gnet_stats_copy_basic() instead of adding. (Ivan Vecera) [2106271] - net: sched: Allow statistics reads from softirq. (Ivan Vecera) [2106271] - net: sched: remove one pair of atomic operations (Ivan Vecera) [2106271] - net: sched: fix logic error in qdisc_run_begin() (Ivan Vecera) [2106271] - net: sch_tbf: Add a graft command (Ivan Vecera) [2106271] - net: sched: Remove Qdisc::running sequence counter (Ivan Vecera) [2106271] - net: sched: Merge Qdisc::bstats and Qdisc::cpu_bstats data types (Ivan Vecera) [2106271] - net: sched: Use _bstats_update/set() instead of raw writes (Ivan Vecera) [2106271] - net: sched: Protect Qdisc::bstats with u64_stats (Ivan Vecera) [2106271] - u64_stats: Introduce u64_stats_set() (Ivan Vecera) [2106271] - gen_stats: Move remaining users to gnet_stats_add_queue(). (Ivan Vecera) [2106271] - mq, mqprio: Use gnet_stats_add_queue(). (Ivan Vecera) [2106271] - gen_stats: Add gnet_stats_add_queue(). (Ivan Vecera) [2106271] - gen_stats: Add instead Set the value in __gnet_stats_copy_basic(). (Ivan Vecera) [2106271] - testing: selftests: tc_common: Add tc_check_at_least_x_packets() (Ivan Vecera) [2106271] - testing: selftests: forwarding.config.sample: Add tc flag (Ivan Vecera) [2106271] - net/sched: sch_taprio: properly cancel timer from taprio_destroy() (Ivan Vecera) [2106271] - net: sched: Use struct_size() helper in kvmalloc() (Ivan Vecera) [2106271] - net_sched: Use struct_size() and flex_array_size() helpers (Ivan Vecera) [2106271] - net: prevent user from passing illegal stab size (Ivan Vecera) [2106271] - net: sched: move and reuse mq_change_real_num_tx() (Ivan Vecera) [2106271] - selftests: net: test ethtool -L vs mq (Ivan Vecera) [2106271] - netdevsim: add ability to change channel count (Ivan Vecera) [2106271] - net: add netif_set_real_num_queues() for device reconfig (Ivan Vecera) [2106271] - net: sched: update default qdisc visibility after Tx queue cnt changes (Ivan Vecera) [2106271] - fix array-index-out-of-bounds in taprio_change (Ivan Vecera) [2106271] - Revert "flow_offload: action should not be NULL when it is referenced" (Ivan Vecera) [2106271] - sch_cake: fix srchost/dsthost hashing mode (Ivan Vecera) [2106271] - net/sched: cls_api, reset flags on replay (Ivan Vecera) [2106271] - net: sched: provide missing kdoc for tcf_pkt_info and tcf_ematch_ops (Ivan Vecera) [2106271] - net: flow_offload: correct comments mismatch with code (Ivan Vecera) [2106271] - net/sched: taprio: Fix init procedure (Ivan Vecera) [2106271] - net_sched: refactor TC action init API (Ivan Vecera) [2106271] - tc-testing: Add control-plane selftest for skbmod SKBMOD_F_ECN option (Ivan Vecera) [2106271] - net/sched: act_skbmod: Add SKBMOD_F_ECN option support (Ivan Vecera) [2106271] - qdisc: add new field for qdisc_enqueue tracepoint (Ivan Vecera) [2106271] - net/sched: act_skbmod: Skip non-Ethernet packets (Ivan Vecera) [2106271] - net/sched: Remove unnecessary if statement (Ivan Vecera) [2106271] - net_sched: introduce tracepoint trace_qdisc_enqueue() (Ivan Vecera) [2106271] - net_sched: use px to print skb address in trace_qdisc_dequeue() (Ivan Vecera) [2106271] - net: use px to print skb address in trace_netif_receive_skb (Ivan Vecera) [2106271] - net/sched: sch_taprio: fix typo in comment (Ivan Vecera) [2106271] - flow_offload: action should not be NULL when it is referenced (Ivan Vecera) [2106271] - net: sched: remove qdisc->empty for lockless qdisc (Ivan Vecera) [2106271] - net: sched: implement TCQ_F_CAN_BYPASS for lockless qdisc (Ivan Vecera) [2106271] - net: sched: avoid unnecessary seqcount operation for lockless qdisc (Ivan Vecera) [2106271] - Revert "net/sched: cls_flower: Remove match on n_proto" (Ivan Vecera) [2106271] - net: sched: add barrier to ensure correct ordering for lockless qdisc (Ivan Vecera) [2106271] - net: sched: fix error return code in tcf_del_walker() (Ivan Vecera) [2106271] - net/sched: cls_flower: Remove match on n_proto (Ivan Vecera) [2106271] - sch_cake: revise docs for RFC 8622 LE PHB support (Ivan Vecera) [2106271] - sch_cake: Fix out of bounds when parsing TCP options and header (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_lookup_leaf() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_do_events() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_charge_class() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_deactivate() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_activate() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_change_class_mode() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_class_mode() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_deactivate_prios() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_activate_prios() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_remove_class_from_row() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_add_class_to_row() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_next_rb_node() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_add_to_wait_tree() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_add_to_id_tree() (Ivan Vecera) [2106271] - net/sched: act_vlan: Test priority 0 modification (Ivan Vecera) [2106271] - net/sched: act_vlan: No dump for unset priority (Ivan Vecera) [2106271] - net: sched: Fix spelling mistakes (Ivan Vecera) [2106271] - net/sched: fq_pie: fix OOB access in the traffic path (Ivan Vecera) [2106271] - net/sched: fq_pie: re-factor fix for fq_pie endless loop (Ivan Vecera) [2106271] - net: taprio offload: enforce qdisc to netdev queue mapping (Ivan Vecera) [2106271] - net/sched: taprio: Drop unnecessary NULL check after container_of (Ivan Vecera) [2106271] - net: flow_offload: add FLOW_ACTION_PPPOE_PUSH (Ivan Vecera) [2106271] - gve: Recording rx queue before sending to napi (Jordan Kimbrough) [2018609] - gve: fix the wrong AdminQ buffer queue index check (Jordan Kimbrough) [2018609] - gve: Fix GFP flags when allocing pages (Jordan Kimbrough) [2018609] - gve: Add tx|rx-coalesce-usec for DQO (Jordan Kimbrough) [2018609] - gve: Add consumed counts to ethtool stats (Jordan Kimbrough) [2018609] - gve: Implement suspend/resume/shutdown (Jordan Kimbrough) [2018609] - gve: Add optional metadata descriptor type GVE_TXD_MTD (Jordan Kimbrough) [2018609] - gve: remove memory barrier around seqno (Jordan Kimbrough) [2018609] - gve: Update gve_free_queue_page_list signature (Jordan Kimbrough) [2018609] - gve: Move the irq db indexes out of the ntfy block struct (Jordan Kimbrough) [2018609] - gve: Correct order of processing device options (Jordan Kimbrough) [2018609] - gve: fix for null pointer dereference. (Jordan Kimbrough) [2018609] - gve: fix unmatched u64_stats_update_end() (Jordan Kimbrough) [2018609] - gve: Fix off by one in gve_tx_timeout() (Jordan Kimbrough) [2018609] - gve: Add a jumbo-frame device option. (Jordan Kimbrough) [2018609] - gve: Implement packet continuation for RX. (Jordan Kimbrough) [2018609] - gve: Add RX context. (Jordan Kimbrough) [2018609] - gve: Track RX buffer allocation failures (Jordan Kimbrough) [2018609] - gve: Allow pageflips on larger pages (Jordan Kimbrough) [2018609] - gve: Add netif_set_xps_queue call (Jordan Kimbrough) [2018609] - gve: Recover from queue stall due to missed IRQ (Jordan Kimbrough) [2018609] - gve: Do lazy cleanup in TX path (Jordan Kimbrough) [2018609] - gve: Add rx buffer pagecnt bias (Jordan Kimbrough) [2018609] - gve: Switch to use napi_complete_done (Jordan Kimbrough) [2018609] - gve: report 64bit tx_bytes counter from gve_handle_report_stats() (Jordan Kimbrough) [2018609] - gve: fix gve_get_stats() (Jordan Kimbrough) [2018609] - gve: Properly handle errors in gve_assign_qpl (Jordan Kimbrough) [2018609] - gve: Avoid freeing NULL pointer (Jordan Kimbrough) [2018609] - gve: Correct available tx qpl check (Jordan Kimbrough) [2018609] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Jordan Kimbrough) [2018609] - gve: Use kvcalloc() instead of kvzalloc() (Jordan Kimbrough) [2018609] - gve: DQO: avoid unused variable warnings (Jordan Kimbrough) [2018609] - gve: fix the wrong AdminQ buffer overflow check (Jordan Kimbrough) [2018609] - gve: DQO: Remove incorrect prefetch (Jordan Kimbrough) [2018609] - gve: Simplify code and axe the use of a deprecated API (Jordan Kimbrough) [2018609] - gve: Propagate error codes to caller (Jordan Kimbrough) [2018609] - gve: Fix an error handling path in 'gve_probe()' (Jordan Kimbrough) [2018609] - gve: DQO: Fix off by one in gve_rx_dqo() (Jordan Kimbrough) [2018609] - gve: Fix swapped vars when fetching max queues (Jordan Kimbrough) [2018609] - gve: Fix warnings reported for DQO patchset (Jordan Kimbrough) [2018609] - gve: DQO: Add RX path (Jordan Kimbrough) [2018609] - gve: DQO: Add TX path (Jordan Kimbrough) [2018609] - gve: DQO: Configure interrupts on device up (Jordan Kimbrough) [2018609] - gve: DQO: Add ring allocation and initialization (Jordan Kimbrough) [2018609] - gve: DQO: Add core netdev features (Jordan Kimbrough) [2018609] - gve: Update adminq commands to support DQO queues (Jordan Kimbrough) [2018609] - gve: Add DQO fields for core data structures (Jordan Kimbrough) [2018609] - gve: Add dqo descriptors (Jordan Kimbrough) [2018609] - gve: Add support for DQO RX PTYPE map (Jordan Kimbrough) [2018609] - gve: adminq: DQO specific device descriptor logic (Jordan Kimbrough) [2018609] - gve: Introduce per netdev `enum gve_queue_format` (Jordan Kimbrough) [2018609] - gve: Introduce a new model for device options (Jordan Kimbrough) [2018609] - gve: Make gve_rx_slot_page_info.page_offset an absolute offset (Jordan Kimbrough) [2018609] - gve: gve_rx_copy: Move padding to an argument (Jordan Kimbrough) [2018609] - gve: Move some static functions to a common file (Jordan Kimbrough) [2018609] - gve: Correct SKB queue index validation. (Jordan Kimbrough) [2018609] - gve: Upgrade memory barrier in poll routine (Jordan Kimbrough) [2018609] - gve: Add NULL pointer checks when freeing irqs. (Jordan Kimbrough) [2018609] - gve: Update mgmt_msix_idx if num_ntfy changes (Jordan Kimbrough) [2018609] - gve: Check TX QPL was actually assigned (Jordan Kimbrough) [2018609] - net: gve: remove duplicated allowed (Jordan Kimbrough) [2018609] - net: gve: convert strlcpy to strscpy (Jordan Kimbrough) [2018609] - gve: Add support for raw addressing in the tx path (Jordan Kimbrough) [2018609] - gve: Rx Buffer Recycling (Jordan Kimbrough) [2018609] - gve: Add support for raw addressing to the rx path (Jordan Kimbrough) [2018609] - gve: Add support for raw addressing device option (Jordan Kimbrough) [2018609] - net: don't include ethtool.h from netdevice.h (Jordan Kimbrough) [2018609] - gve: Replace zero-length array with flexible-array member (Jordan Kimbrough) [2018609] - gve: Enable Link Speed Reporting in the driver. (Jordan Kimbrough) [2018609] - gve: Use link status register to report link status (Jordan Kimbrough) [2018609] - gve: Batch AQ commands for creating and destroying queues. (Jordan Kimbrough) [2018609] - gve: NIC stats for report-stats and for ethtool (Jordan Kimbrough) [2018609] - gve: Add Gvnic stats AQ command and ethtool show/set-priv-flags. (Jordan Kimbrough) [2018609] - gve: Use dev_info/err instead of netif_info/err. (Jordan Kimbrough) [2018609] - gve: Add stats for gve. (Jordan Kimbrough) [2018609] - gve: Get and set Rx copybreak via ethtool (Jordan Kimbrough) [2018609] - redhat: update ppc64le secureboot signing key (Jarod Wilson) [2109215] - tools: add cpupower daemon reload when installed/upgraded (Jarod Wilson) [2042424] - sfc: fix use after free when disabling sriov (Íñigo Huguet) [2105999] - drm/nouveau: recognise GA103 (Karol Herbst) [1923125] - drm/aperture: Run fbdev removal before internal helpers (Michel Dänzer) [2088410] - drm/i915/ttm: fix 32b build (Michel Dänzer) [2088410] - drm/amd/display: Ensure valid event timestamp for cursor-only commits (Michel Dänzer) [2088410] - drm/amd/pm: Prevent divide by zero (Michel Dänzer) [2088410] - drm/amd/display: Only use depth 36 bpp linebuffers on DCN display engines. (Michel Dänzer) [2088410] - drm/amdkfd: correct the MEC atomic support firmware checking for GC 10.3.7 (Michel Dänzer) [2088410] - drm/i915/selftests: fix subtraction overflow bug (Michel Dänzer) [2088410] - drm/i915/gt: Serialize TLB invalidates with GT resets (Michel Dänzer) [2088410] - drm/i915/gt: Serialize GRDOM access between multiple engine resets (Michel Dänzer) [2088410] - drm/i915/ttm: fix sg_table construction (Michel Dänzer) [2088410] - drm/i915/selftests: fix a couple IS_ERR() vs NULL tests (Michel Dänzer) [2088410] - drm/i915/gvt: IS_ERR() vs NULL bug in intel_gvt_update_reg_whitelist() (Michel Dänzer) [2088410] - drm/i915/guc: ADL-N should use the same GuC FW as ADL-S (Michel Dänzer) [2088410] - drm/i915: fix a possible refcount leak in intel_dp_add_mst_connector() (Michel Dänzer) [2088410] - drm/amdgpu/display: disable prefer_shadow for generic fb helpers (Michel Dänzer) [2088410] - drm/amdgpu: keep fbdev buffers pinned during suspend (Michel Dänzer) [2088410] - drm/fourcc: fix integer type usage in uapi header (Michel Dänzer) [2088410] - drm/i915/dgfx: Disable d3cold at gfx root port (Michel Dänzer) [2088410] - drm/i915/gem: add missing else (Michel Dänzer) [2088410] - drm/amdgpu: To flush tlb for MMHUB of RAVEN series (Michel Dänzer) [2088410] - Revert "drm/amdgpu/display: set vblank_disable_immediate for DC" (Michel Dänzer) [2088410] - drm/amdgpu: fix adev variable used in amdgpu_device_gpu_recover() (Michel Dänzer) [2088410] - drm/amd: Revert "drm/amd/display: keep eDP Vdd on when eDP stream is already enabled" (Michel Dänzer) [2088410] - udmabuf: add back sanity check (Michel Dänzer) [2088410] - drm/amd/display: Fix typo in override_lane_settings (Michel Dänzer) [2088410] - amd/display/dc: Fix COLOR_ENCODING and COLOR_RANGE doing nothing for DCN20+ (Michel Dänzer) [2088410] - drm/i915: Implement w/a 22010492432 for adl-s (Michel Dänzer) [2088410] - drm/i915/uc: remove accidental static from a local variable (Michel Dänzer) [2088410] - drm/amd/display: Cap OLED brightness per max frame-average luminance (Michel Dänzer) [2088410] - drm/amdgpu: Fix GTT size reporting in amdgpu_ioctl (Michel Dänzer) [2088410] - drm/i915/reset: Fix error_state_read ptr + offset use (Michel Dänzer) [2088410] - drm/amdkfd: add pinned BOs to kfd_bo_list (Michel Dänzer) [2088410] - drm/amdkfd: Use mmget_not_zero in MMU notifier (Michel Dänzer) [2088410] - drm/amdgpu: Resolve RAS GFX error count issue after cold boot on Arcturus (Michel Dänzer) [2088410] - drm/amd/display: Read Golden Settings Table from VBIOS (Michel Dänzer) [2088410] - Revert "drm/amd/display: Fix DCN3 B0 DP Alt Mapping" (Michel Dänzer) [2088410] - drm/amdgpu: update VCN codec support for Yellow Carp (Michel Dänzer) [2088410] - drm/amd/display: remove stale config guards (Michel Dänzer) [2088410] - drm/amdgpu/jpeg2: Add jpeg vmid update under IB submit (Michel Dänzer) [2088410] - drm/atomic: Force bridge self-refresh-exit on CRTC switch (Michel Dänzer) [2088410] - drm/bridge: analogix_dp: Support PSR-exit to disable transition (Michel Dänzer) [2088410] - drm/amdkfd:Fix fw version for 10.3.6 (Michel Dänzer) [2088410] - drm/amd/pm: use bitmap_{from,to}_arr32 where appropriate (Michel Dänzer) [2088410] - drm/amd/pm: correct the metrics version for SMU 11.0.11/12/13 (Michel Dänzer) [2088410] - drm/amd/pm: Fix missing thermal throttler status (Michel Dänzer) [2088410] - drm/amd/pm: fix a potential gpu_metrics_table memory leak (Michel Dänzer) [2088410] - drm/radeon: fix a possible null pointer dereference (Michel Dänzer) [2088410] - drm/amd/display: Check zero planes for OTG disable W/A on clock change (Michel Dänzer) [2088410] - drm/amd/display: Check if modulo is 0 before dividing. (Michel Dänzer) [2088410] - drm/amdgpu: fix limiting AV1 to the first instance on VCN3 (Michel Dänzer) [2088410] - drm/bridge: ti-sn65dsi83: Handle dsi_lanes == 0 as invalid (Michel Dänzer) [2088410] - drm/amdgpu: Off by one in dm_dmub_outbox1_low_irq() (Michel Dänzer) [2088410] - gma500: fix an incorrect NULL check on list iterator (Michel Dänzer) [2088410] - drm/i915/dsi: fix VBT send packet port selection for ICL+ (Michel Dänzer) [2088410] - drm/bridge: analogix_dp: Grab runtime PM reference for DP-AUX (Michel Dänzer) [2088410] - drm/nouveau/kms/nv50-: atom: fix an incorrect NULL check on list iterator (Michel Dänzer) [2088410] - drm/nouveau/clk: Fix an incorrect NULL check on list iterator (Michel Dänzer) [2088410] - drm/nouveau/subdev/bus: Ratelimit logging for fault errors (Michel Dänzer) [2088410] - drm/amdgpu/cs: make commands with 0 chunks illegal behaviour. (Michel Dänzer) [2088410] - drm/amdgpu: add beige goby PCI ID (Michel Dänzer) [2088410] - drm/i915: Fix CFI violation with show_dynamic_id() (Michel Dänzer) [2088410] - drm/bridge: it6505: Send DPCD SET_POWER to downstream (Michel Dänzer) [2088410] - drm/panel: panel-simple: Fix proper bpc for AM-1280800N3TZQW-T00H (Michel Dänzer) [2088410] - drm/panel: simple: Add missing bus flags for Innolux G070Y2-L01 (Michel Dänzer) [2088410] - drm/bridge: Fix it6505 Kconfig DRM_DP_AUX_BUS dependency (Michel Dänzer) [2088410] - drm/bridge: Fix error handling in analogix_dp_probe (Michel Dänzer) [2088410] - drm/bridge: anx7625: Use uint8 for lane-swing arrays (Michel Dänzer) [2088410] - drm/amd/amdgpu: Remove static from variable in RLCG Reg RW (Michel Dänzer) [2088410] - drm/amd/amdgpu: Fix asm/hypervisor.h build error. (Michel Dänzer) [2088410] - drm/amd/amdgpu: Only reserve vram for firmware with vega9 MS_HYPERV host. (Michel Dänzer) [2088410] - drm: bridge: icn6211: Fix HFP_HSW_HBP_HI and HFP_MIN handling (Michel Dänzer) [2088410] - drm: bridge: icn6211: Fix register layout (Michel Dänzer) [2088410] - drm/bridge: adv7511: clean up CEC adapter when probe fails (Michel Dänzer) [2088410] - drm/bridge: anx7625: add missing destroy_workqueue() in anx7625_i2c_probe() (Michel Dänzer) [2088410] - drm/edid: fix invalid EDID extension block filtering (Michel Dänzer) [2088410] - drm/bridge: it6505: Fix build error (Michel Dänzer) [2088410] - drm: bridge: it66121: Fix the register page length (Michel Dänzer) [2088410] - drm/vmwgfx: Fix an invalid read (Michel Dänzer) [2088410] - drm/ssd130x: Reduce temporary buffer sizes (Michel Dänzer) [2088410] - drm/ssd130x: Fix rectangle updates (Michel Dänzer) [2088410] - drm/format-helper: Fix XRGB888 to monochrome conversion (Michel Dänzer) [2088410] - drm/format-helper: Rename drm_fb_xrgb8888_to_mono_reversed() (Michel Dänzer) [2088410] - drm/solomon: Make DRM_SSD130X depends on MMU (Michel Dänzer) [2088410] - drm: ssd130x: Always apply segment remap setting (Michel Dänzer) [2088410] - drm: ssd130x: Fix COM scan direction register mask (Michel Dänzer) [2088410] - drm/bridge: anx7625: check the return on anx7625_aux_trans (Michel Dänzer) [2088410] - drm/selftests: missing error code in igt_buddy_alloc_smoke() (Michel Dänzer) [2088410] - drm/bridge_connector: enable HPD by default if supported (Michel Dänzer) [2088410] - drm: fix EDID struct for old ARM OABI format (Michel Dänzer) [2088410] - drm/amdgpu: Move mutex_init(&smu->message_lock) to smu_early_init() (Michel Dänzer) [2088410] - drm/amd/pm: update smartshift powerboost calc for smu13 (Michel Dänzer) [2088410] - drm/amd/pm: update smartshift powerboost calc for smu12 (Michel Dänzer) [2088410] - drm/amdgpu/ucode: Remove firmware load type check in amdgpu_ucode_free_bo (Michel Dänzer) [2088410] - drm/amdgpu/psp: move PSP memory alloc from hw_init to sw_init (Michel Dänzer) [2088410] - drm/amd/pm: fix the compile warning (Michel Dänzer) [2088410] - drm/amdkfd: Fix circular lock dependency warning (Michel Dänzer) [2088410] - drm/plane: Move range check for format_count earlier (Michel Dänzer) [2088410] - drm/amdgpu/sdma: Fix incorrect calculations of the wptr of the doorbells (Michel Dänzer) [2088410] - drm/amd/pm: fix double free in si_parse_power_table() (Michel Dänzer) [2088410] - drm/amdgpu/pm: fix the null pointer while the smu is disabled (Michel Dänzer) [2088410] - drm/amd/display: Disabling Z10 on DCN31 (Michel Dänzer) [2088410] - drm/virtio: fix NULL pointer dereference in virtio_gpu_conn_get_modes (Michel Dänzer) [2088410] - drm/vmwgfx: validate the screen formats (Michel Dänzer) [2088410] - drm/selftests: fix a shift-out-of-bounds bug (Michel Dänzer) [2088410] - drm/i915: Fix -Wstringop-overflow warning in call to intel_read_wm_latency() (Michel Dänzer) [2088410] - selftests/xsk: Disable hanging BPF RES tests (Felix Maurer) [2116940] - NLM: Defend against file_lock changes after vfs_test_lock() (Benjamin Coddington) [2094884] - ice: Fix VF not able to send tagged traffic with no VLAN filters (Petr Oros) [2055446] - ice: Ignore error message when setting same promiscuous mode (Petr Oros) [2100683] - ice: Fix clearing of promisc mode with bridge over bond (Petr Oros) [2100683] - ice: Ignore EEXIST when setting promisc mode (Petr Oros) [2100683] - ice: Fix double VLAN error when entering promisc mode (Petr Oros) [2100683]- fs: dlm: fix build with CONFIG_IPV6 disabled (Alexander Aring) [2036988] - fs: dlm: don't call kernel_getpeername() in error_report() (Alexander Aring) [2036988] - fs: dlm: use sk->sk_socket instead of con->sock (Alexander Aring) [2036988] - x86: intel_epb: Allow model specific normal EPB value (Prarit Bhargava) [2101488] - x86: intel_epb: Do not build when CONFIG_PM is unset (Prarit Bhargava) [2101488] - x86: intel_epb: Take CONFIG_PM into account (Prarit Bhargava) [2101488] - PM / arch: x86: MSR_IA32_ENERGY_PERF_BIAS sysfs interface (Prarit Bhargava) [2101488] - PM / arch: x86: Rework the MSR_IA32_ENERGY_PERF_BIAS handling (Prarit Bhargava) [2101488] - thermal: int340x: Add Raptor Lake PCI device id (Prarit Bhargava) [2064828] - thermal: int340x: Support Raptor Lake (Prarit Bhargava) [2064828] - nvme-fc: restart admin queue if the caller needs to restart queue (Ewan D. Milne) [2095693] - netfilter: nf_tables: replace BUG_ON by element length check (Florian Westphal) [2104497] - netfilter: nf_log: incorrect offset to network header (Florian Westphal) [2104497] - netfilter: nft_set_pipapo: release elements in clone from abort path (Florian Westphal) [2104497] - netfilter: nf_tables: stricter validation of element data (Florian Westphal) [2104497] - netfilter: nft_dynset: restore set element counter when failing to update (Florian Westphal) [2104497] - netfilter: use get_random_u32 instead of prandom (Florian Westphal) [2104497] - netfilter: nf_tables: memleak flow rule from commit path (Florian Westphal) [2104497] - netfilter: nf_tables: hold mutex on netns pre_exit path (Florian Westphal) [2104497] - netfilter: conntrack: re-fetch conntrack after insertion (Florian Westphal) [2104497] - netfilter: flowtable: fix excessive hw offload attempts after failure (Florian Westphal) [2104497] - netfilter: flowtable: avoid possible false sharing (Florian Westphal) [2104497] - netfilter: nf_nat_h323: eliminate anonymous module_init & module_exit (Florian Westphal) [2104497] - netfilter: ip6t_rt: fix rt0_hdr parsing in rt_mt6 (Florian Westphal) [2104497] - netfilter: socket: icmp6: fix use-after-scope (Florian Westphal) [2104497] - netfilter: nft_fib_ipv6: skip ipv6 packets from any to link-local (Florian Westphal) [2104497] - net/mlx5: Remove ConnectX-7 device from the unsupported devices (Kamal Heib) [1899567] - fs: dlm: change posix lock sigint handling (Alexander Aring) [2088499] - fs: dlm: use dlm_plock_info for do_unlock_close (Alexander Aring) [2088499] - fs: dlm: change plock interrupted message to debug again (Alexander Aring) [2088499] - fs: dlm: add pid to debug log (Alexander Aring) [2088499] - fs: dlm: plock use list_first_entry (Alexander Aring) [2088499] - dlm: replace usage of found with dedicated list iterator variable (Alexander Aring) [2088499] - dlm: move global to static inits (Alexander Aring) [2088499] - dlm: remove unnecessary INIT_LIST_HEAD() (Alexander Aring) [2088499] - dlm: improve plock logging if interrupted (Alexander Aring) [2088499] - dlm: rearrange async condition return (Alexander Aring) [2088499] - dlm: cleanup plock_op vs plock_xop (Alexander Aring) [2088499] - dlm: replace sanity checks with WARN_ON (Alexander Aring) [2088499]- selftests: mptcp: make sendfile selftest work (Florian Westphal) [2109046] - selftests: mptcp: more stable simult_flows tests (Florian Westphal) [2109046] - be2net: Remove useless DMA-32 fallback configuration (Petr Oros) [2051324] - ethernet: constify references to netdev->dev_addr in drivers (Petr Oros) [2051324] - ethernet: Remove redundant 'flush_workqueue()' calls (Petr Oros) [2051324] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Petr Oros) [2051324] - ethernet: use eth_hw_addr_set() (Petr Oros) [2051324] - be2net: Use irq_update_affinity_hint() (Petr Oros) [2051324] - RedHat: ASoC: SOF: Intel: do not enable IMR boot when resuming by default (Jaroslav Kysela) [2114931] - ASoC: SOF: make ctx_store and ctx_restore as optional (Jaroslav Kysela) [2114931] - ASoC: SOF: ipc3-topology: Prevent double freeing of ipc_control_data via load_bytes (Jaroslav Kysela) [2114931] - ASoC: amd: yc: Update DMI table entries for AMD platforms (Jaroslav Kysela) [2114931] - ASoC: amd: yc: Update DMI table entries (Jaroslav Kysela) [2114931] - thunderbolt: Add DP OUT resource when DP tunnel is discovered (Torez Smith) [2107601] - iavf: Fix VLAN_V2 addition/rejection (Petr Oros) [2115618] - iavf: Fix deadlock in initialization (Petr Oros) [2054656] - qede: Reduce verbosity of ptp tx timestamp (Manish Chopra) [2080655] - dmaengine: idxd: Fixup merge conflict resolution from upstream (Jerry Snitselaar) [2100927] - dmaengine: idxd: skip clearing device context when device is read-only (Jerry Snitselaar) [2100927] - dmaengine: idxd: add RO check for wq max_transfer_size write (Jerry Snitselaar) [2100927] - dmaengine: idxd: add RO check for wq max_batch_size write (Jerry Snitselaar) [2100927] - dmaengine: idxd: fix device cleanup on disable (Jerry Snitselaar) [2100927] - Revert "dmaengine: idxd: Separate user and kernel pasid enabling" (Jerry Snitselaar) [2100927] - net: atlantic: always deep reset on pm op, fixing up my null deref regression (Foggy Liu) [2039680] - net: atlantic: invert deep par in pm functions, preventing null derefs (Foggy Liu) [2039680] - s390/ap: extend AP change bindings-complete uevent with counter (Mete Durlu) [2114907] - powerpc/memhotplug: Make lmb size 64bit (Diego Domingos) [2116517] - powerpc/drmem: Make lmb_size 64 bit (Diego Domingos) [2116517] - RHEL-only: tools: arm64: Use alternative.h header in sysreg.h (Eric Auger) [2118527]- vmxnet3: do not reschedule napi for rx processing (Kamal Heib) [2117263] - lockdown: also lock down previous kgdb use (Lenny Szubowicz) [2104748] {CVE-2022-21499} - sfc: fix kernel panic when creating VF (Íñigo Huguet) [2114738] - net/mlx4_en: use kzalloc (Amir Tzin) [2049433] - net/mlx4: Delete useless moduleparam include (Amir Tzin) [2049433] - RDMA/mlx4: remove redundant assignment to variable nreq (Amir Tzin) [2049433] - RDMA/mlx4: Delete useless module.h include (Amir Tzin) [2049433] - RDMA/mlx4: Don't continue event handler after memory allocation failure (Amir Tzin) [2049433] - net/mlx4: Use irq_update_affinity_hint() (Amir Tzin) [2049433] - RDMA/mlx4: Use bitmap_alloc() when applicable (Amir Tzin) [2049433] - net/mlx4_en: Update reported link modes for 1/10G (Amir Tzin) [2049433] - ethernet: Remove redundant 'flush_workqueue()' calls (Amir Tzin) [2049433] - mlx4: constify args for const dev_addr (Amir Tzin) [2049433] - mlx4: remove custom dev_addr clearing (Amir Tzin) [2049433] - mlx4: replace mlx4_u64_to_mac() with u64_to_ether_addr() (Amir Tzin) [2049433] - mlx4: replace mlx4_mac_to_u64() with ether_addr_to_u64() (Amir Tzin) [2049433] - net/mlx4_en: avoid one cache line miss to ring doorbell (Amir Tzin) [2049433] - net/mlx4_en: Add XDP_REDIRECT statistics (Amir Tzin) [2049433] - net/mlx4: Use array_size() helper in copy_to_user() (Amir Tzin) [2049433] - net: mlx4: Add support for XDP_REDIRECT (Amir Tzin) [2049433] - net/mellanox: switch from 'pci_' to 'dma_' API (Amir Tzin) [2049433] - net/mlx4: Use ARRAY_SIZE to get an array's size (Amir Tzin) [2049433] - net/mlx4: make the array states static const, makes object smaller (Amir Tzin) [2049433] - dma-direct: use the correct size for dma_set_encrypted() (Jerry Snitselaar) [2105608] - dma-debug: make things less spammy under memory pressure (Jerry Snitselaar) [2105608] - dma-iommu: Check that swiotlb is active before trying to use it (Jerry Snitselaar) [2105608] - cpufreq: powernow-k8: Re-order the init checks (Mark Langsdorf) [2072974] - cpufreq: unify show() and store() naming and use __ATTR_XX (Mark Langsdorf) [2072974] - cpufreq: amd-pstate: Add more tracepoint for AMD P-State module (Mark Langsdorf) [2072974] - cpufreq: CPPC: Fix performance/frequency conversion (Mark Langsdorf) [2072974] - cpufreq: Move to_gov_attr_set() to cpufreq.h (Mark Langsdorf) [2072974] - cpufreq: use default_groups in kobj_type (Mark Langsdorf) [2072974] - cpufreq: Fix initialization of min and max frequency QoS requests (Mark Langsdorf) [2072974] - cpufreq: Fix a comment in cpufreq_policy_free (Mark Langsdorf) [2072974] - cpufreq: Fix get_cpu_device() failure in add_cpu_dev_symlink() (Mark Langsdorf) [2072974] - cpufreq: schedutil: Destroy mutex before kobject_put() frees the memory (Mark Langsdorf) [2072974] - cpufreq: sh: Remove sh_cpufreq_cpu_ready() (Mark Langsdorf) [2072974] - cpufreq: acpi: Remove acpi_cpufreq_cpu_ready() (Mark Langsdorf) [2072974] - cpufreq: Fix fall-through warning for Clang (Mark Langsdorf) [2072974] - cpufreq: Remove ->resolve_freq() (Mark Langsdorf) [2072974] - cpufreq: Reuse cpufreq_driver_resolve_freq() in __cpufreq_driver_target() (Mark Langsdorf) [2072974] - cpufreq: Remove the ->stop_cpu() driver callback (Mark Langsdorf) [2072974] - cpufreq: powernv: Migrate to ->exit() callback instead of ->stop_cpu() (Mark Langsdorf) [2072974] - cpufreq: Make cpufreq_online() call driver->offline() on errors (Mark Langsdorf) [2072974] - cpufreq: sh: Remove unused linux/sched.h headers (Mark Langsdorf) [2072974] - cpufreq: stats: Clean up local variable in cpufreq_stats_create_table() (Mark Langsdorf) [2072974] - cpufreq: Remove unused for_each_policy macro (Mark Langsdorf) [2072974] - cpufreq: Rudimentary typos fix in the file s5pv210-cpufreq.c (Mark Langsdorf) [2072974] - ACPI: CPPC: Fix enabling CPPC on AMD systems with shared memory (Mark Langsdorf) [2067296] - ACPI: CPPC: Don't require flexible address space if X86_FEATURE_CPPC is supported (Mark Langsdorf) [2067296] - ACPI: CPPC: Don't require _OSC if X86_FEATURE_CPPC is supported (Mark Langsdorf) [2067296] - x86/ACPI: CPPC: Rename cppc_msr.c to cppc.c (Mark Langsdorf) [2067296] - ACPI: CPPC: Only probe for _CPC if CPPC v2 is acked (Mark Langsdorf) [2067296] - ACPI: CPPC: Assume no transition latency if no PCCT (Mark Langsdorf) [2067296] - ACPI: bus: Set CPPC _OSC bits for all and when CPPC_LIB is supported (Mark Langsdorf) [2067296] - ACPI: CPPC: Check _OSC for flexible address space (Mark Langsdorf) [2067296] - ACPI: processor: idle: Avoid falling back to C3 type C-states (Mark Langsdorf) [2067296] - Revert "ACPI: processor: idle: Only flush cache on entering C3" (Mark Langsdorf) [2067296] - ACPI: CPPC: Change default error code and clean up debug messages in probe (Mark Langsdorf) [2067296] - ACPI: CPPC: Avoid out of bounds access when parsing _CPC data (Mark Langsdorf) [2067296] - ACPI: tables: Make LAPIC_ADDR_OVR address readable in message (Mark Langsdorf) [2067296] - ACPI: IPMI: replace usage of found with dedicated list iterator variable (Mark Langsdorf) [2067296] - ACPI, APEI: Use the correct variable for sizeof() (Mark Langsdorf) [2067296] - clocksource: acpi_pm: fix return value of __setup handler (Mark Langsdorf) [2067296] - ACPI / x86: Add support for LPS0 callback handler (Mark Langsdorf) [2067296] - ACPI: bus: Avoid using CPPC if not supported by firmware (Mark Langsdorf) [2067296] - Revert "ACPI: Pass the same capabilities to the _OSC regardless of the query flag" (Mark Langsdorf) [2067296] - ACPI: video: Force backlight native for Clevo NL5xRU and NL5xNU (Mark Langsdorf) [2067296] - PM: hibernate: Honour ACPI hardware signature by default for virtual guests (Mark Langsdorf) [2067296] - ACPI: NFIT: Remove block aperture support (Mark Langsdorf) [2067296] - x86, ACPI: rename init_freq_invariance_cppc() to arch_init_invariance_cppc() (Mark Langsdorf) [2067296] - ACPI/APEI: Limit printable size of BERT table data (Mark Langsdorf) [2067296] - ACPI: APEI: fix return value of __setup handlers (Mark Langsdorf) [2067296] - ACPI / x86: Add skip i2c clients quirk for Lenovo Yoga Tablet 1050F/L (Mark Langsdorf) [2067296] - ACPI / x86: Add skip i2c clients quirk for Nextbook Ares 8 (Mark Langsdorf) [2067296] - ACPICA: Avoid walking the ACPI Namespace if it is not there (Mark Langsdorf) [2067296] - ACPI: processor idle: Check for architectural support for LPI (Mark Langsdorf) [2067296] - ACPI: battery: Add device HID and quirk for Microsoft Surface Go 3 (Mark Langsdorf) [2067296] - ACPI: fan: Add additional attributes for fine grain control (Mark Langsdorf) [2067296] - ACPI: fan: Properly handle fine grain control (Mark Langsdorf) [2067296] - ACPI: fan: Optimize struct acpi_fan_fif (Mark Langsdorf) [2067296] - ACPI: fan: Separate file for attributes creation (Mark Langsdorf) [2067296] - ACPI: fan: Fix error reporting to user space (Mark Langsdorf) [2067296] - ACPI: clean up double words in two comments (Mark Langsdorf) [2067296] - ACPI: property: Get rid of redundant 'else' (Mark Langsdorf) [2067296] - ACPI: EC: Rearrange code in acpi_ec_submit_event() (Mark Langsdorf) [2067296] - ACPI: EC: Reduce indentation level in acpi_ec_submit_event() (Mark Langsdorf) [2067296] - ACPI: EC: Do not return result from advance_transaction() (Mark Langsdorf) [2067296] - ACPI: EC / PM: Print additional debug message in acpi_ec_dispatch_gpe() (Mark Langsdorf) [2067296] - ACPI: PM: Print additional debug message in acpi_s2idle_wake() (Mark Langsdorf) [2067296] - ACPI: tables: Add CEDT signature to the list of known tables (Mark Langsdorf) [2067296] - ACPI: properties: Consistently return -ENOENT if there are no more references (Mark Langsdorf) [2067296] - ACPI: OSL: Fix and clean up acpi_os_read/write_port() (Mark Langsdorf) [2067296] - ACPICA: Use uintptr_t and offsetof() in Linux kernel builds (Mark Langsdorf) [2067296] - ACPI: processor: idle: Only flush cache on entering C3 (Mark Langsdorf) [2067296] - intel_idle: Add AlderLake support (Lenny Szubowicz) [2075709] - intel_idle: Fix SPR C6 optimization (Lenny Szubowicz) [2075709] - intel_idle: Fix the 'preferred_cstates' module parameter (Lenny Szubowicz) [2075709] - cpuidle: intel_idle: Update intel_idle() kerneldoc comment (Lenny Szubowicz) [2075709] - ice: Fix promiscuous mode not turning off (Petr Oros) [2088787] - ice: Introduce enabling promiscuous mode on multiple VF's (Petr Oros) [2088787] - PCI/IOV: Add pci_iov_get_pf_drvdata() to allow VF reaching the drvdata of a PF (Myron Stowe) [2106259] - PCI/IOV: Add pci_iov_vf_id() to get VF index (Myron Stowe) [2106259] - redhat: enable CONFIG_MAXLINEAR_GPHY as module (Petr Oros) [2071856] - net: phy: enhance GPY115 loopback disable function (Petr Oros) [2071856] - net: phy: add Maxlinear GPY115/21x/24x driver (Petr Oros) [2071856] - cgroup: Use css_tryget() instead of css_tryget_online() in task_get_css() (Vratislav Bendel) [2111491] - ASoC: mediatek: Fix error handling in mt8173_max98090_dev_probe (Jaroslav Kysela) [2065580] - ASoC: amd: Add support for enabling DMIC on acp6x via _DSD (Jaroslav Kysela) [2065580] - soundwire: intel: prevent pm_runtime resume prior to system suspend (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirk for Fiero SC-01 (fw v1.0.0) (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirk for Fiero SC-01 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirks for MacroSilicon MS2100/MS2106 devices (Jaroslav Kysela) [2065580] - ASoC: cs35l41: Add ASP TX3/4 source to register patch (Jaroslav Kysela) [2065580] - ASoC: dapm: Initialise kcontrol data for mux/demux controls (Jaroslav Kysela) [2065580] - ASoC: rt711-sdca: fix kernel NULL pointer dereference when IO error (Jaroslav Kysela) [2065580] - ASoC: cs35l41: Correct some control names (Jaroslav Kysela) [2065580] - ASoC: wm5110: Fix DRE control (Jaroslav Kysela) [2065580] - ASoC: wm_adsp: Fix event for preloader (Jaroslav Kysela) [2065580] - ASoC: Intel: bytcr_wm5102: Fix GPIO related probe-ordering problem (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda-loader: Clarify the cl_dsp_init() flow (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda-loader: Make sure that the fw load sequence is followed (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda-dsp: Expose hda_dsp_core_power_up() (Jaroslav Kysela) [2065580] - ASoC: codecs: rt700/rt711/rt711-sdca: initialize workqueues in probe (Jaroslav Kysela) [2065580] - ASoC: rt7*-sdw: harden jack_detect_handler (Jaroslav Kysela) [2065580] - ASoC: rt711: fix calibrate mutex initialization (Jaroslav Kysela) [2065580] - ASoC: Intel: sof_sdw: handle errors on card registration (Jaroslav Kysela) [2065580] - ASoC: rt711-sdca-sdw: fix calibrate mutex initialization (Jaroslav Kysela) [2065580] - ASoC: Realtek/Maxim SoundWire codecs: disable pm_runtime on remove (Jaroslav Kysela) [2065580] - ASoC: ops: Fix off by one in range control validation (Jaroslav Kysela) [2065580] - ASoC: Intel: Skylake: Correct the handling of fmt_config flexible array (Jaroslav Kysela) [2065580] - ASoC: Intel: Skylake: Correct the ssp rate discovery in skl_get_ssp_clks() (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Enable the headset-mic on a Xiaomi's laptop (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Fix headset mic problem for a HP machine with alc221 (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: fix mute/micmute LEDs for HP machines (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Fix headset mic problem for a HP machine with alc671 (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Fix headset mic for Acer SF313-51 (Jaroslav Kysela) [2065580] - ALSA: hda/conexant: Apply quirk for another HP ProDesk 600 G3 model (Jaroslav Kysela) [2065580] - ALSA: hda - Add fixup for Dell Latitidue E5430 (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda: Fix compressed stream position tracking (Jaroslav Kysela) [2065580] - ASoC: SOF: ipc3-topology: Move and correct size checks in sof_ipc3_control_load_bytes() (Jaroslav Kysela) [2065580] - ASoC: codecs: rt700/rt711/rt711-sdca: resume bus/codec in .set_jack_detect (Jaroslav Kysela) [2065580] - ASoC: rt711-sdca: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2065580] - ASoC: rt711: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2065580] - ALSA: cs46xx: Fix missing snd_card_free() call at probe error (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for Clevo L140PU (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Workarounds for Behringer UMC 204/404 HD (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for Clevo NS50PU (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for Clevo PD70PNT (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Apply fixup for Lenovo Yoga Duet 7 properly (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - ALC897 headset MIC no sound (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add mute LED quirk for HP Omen laptop (Jaroslav Kysela) [2065580] - ALSA: hda/conexant: Fix missing beep setup (Jaroslav Kysela) [2065580] - ALSA: hda: Fix discovery of i915 graphics PCI device (Jaroslav Kysela) [2065580] - ALSA: hda/via: Fix missing beep setup (Jaroslav Kysela) [2065580] - ALSA: memalloc: Drop x86-specific hack for WC allocations (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Add HW8326 support (Jaroslav Kysela) [2065580] - ALSA: hda: MTL: add HD Audio PCI ID and HDMI codec vendor ID (Jaroslav Kysela) [2065580] - ASoC: es8328: Fix event generation for deemphasis control (Jaroslav Kysela) [2065580] - ASoC: cs42l51: Correct minimum value for SX volume control (Jaroslav Kysela) [2065580] - ASoC: cs42l56: Correct typo in minimum level for SX volume controls (Jaroslav Kysela) [2065580] - ASoC: cs42l52: Correct TLV for Bypass Volume (Jaroslav Kysela) [2065580] - ASoC: cs53l30: Correct number of volume levels on SX controls (Jaroslav Kysela) [2065580] - ASoC: cs35l36: Update digital volume TLV (Jaroslav Kysela) [2065580] - ASoC: cs42l52: Fix TLV scales for mixer controls (Jaroslav Kysela) [2065580] - ASoC: Intel: cirrus-common: fix incorrect channel mapping (Jaroslav Kysela) [2065580] - ASoC: nau8822: Add operation for internal PLL off and on (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for HP Dev One (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Fix for quirk to enable speaker output on the Lenovo Yoga DuetITL 2021 (Jaroslav Kysela) [2065580] - ALSA: hda/conexant - Fix loopback issue with CX20632 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Set up (implicit) sync for Saffire 6 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Skip generic sync EP parse for secondary EP (Jaroslav Kysela) [2065580] - ASoC: rt5640: Do not manipulate pin "Platform Clock" if the "Platform Clock" is not in the DAPM (Jaroslav Kysela) [2065580] - ASoC: SOF: amd: Fixed Build error (Jaroslav Kysela) [2065580] - ASoC: rt5514: Fix event generation for "DSP Voice Wake Up" control (Jaroslav Kysela) [2065580] - ASoC: max98090: Move check for invalid values before casting in max98090_put_enab_tlv() (Jaroslav Kysela) [2065580] - ALSA: pcm: Check for null pointer of pointer substream before dereferencing it (Jaroslav Kysela) [2065580] - ASoC: SOF: ipc3-topology: Set scontrol->priv to NULL after freeing it (Jaroslav Kysela) [2065580] - ASoC: cs35l41: Fix an out-of-bounds access in otp_packed_element_t (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Move generic implicit fb quirk entries into quirks.c (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirk bits for enabling/disabling generic implicit fb (Jaroslav Kysela) [2065580] - ASoC: amd: Add driver data to acp6x machine driver (Jaroslav Kysela) [2065580] - ASoC: rt1015p: remove dependency on GPIOLIB (Jaroslav Kysela) [2065580] - ASoC: max98357a: remove dependency on GPIOLIB (Jaroslav Kysela) [2065580] - ASoC: rt5645: Fix errorenous cleanup order (Jaroslav Kysela) [2065580] - ASoC: SOF: amd: add missing platform_device_unregister in acp_pci_rn_probe (Jaroslav Kysela) [2065580] - ASoC: Intel: sof_ssp_amp: fix no DMIC BE Link on Chromebooks (Jaroslav Kysela) [2065580] - ASoC: tscs454: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2065580] - ASoC: SOF: ipc3-topology: Correct get_control_data for non bytes payload (Jaroslav Kysela) [2065580] - ASoC: dapm: Don't fold register value changes into notifications (Jaroslav Kysela) [2065580] - ASoC: Intel: bytcr_rt5640: Add quirk for the HP Pro Tablet 408 (Jaroslav Kysela) [2065580] - ALSA: jack: Access input_dev under mutex (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Fix microphone noise on ASUS TUF B550M-PLUS (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Enable 4-speaker output for Dell XPS 15 9520 laptop (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Add new type for ALC245 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Optimize TEAC clock quirk (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Configure sync endpoints before data (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add missing ep_idx in fixed EP quirks (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Workaround for clock setup on TEAC devices (Jaroslav Kysela) [2065580] - ALSA: ctxfi: Add SB046x PCI ID (Jaroslav Kysela) [2065580] - NFS: Fix initialisation of nfs_client cl_flags field (Scott Mayhew) [2114577] - Documentation: Add an explanation of NFSv4 client identifiers (Dave Wysochanski) [1801326]- crypto: chelsio/chcr - Remove useless MODULE_VERSION (Rahul Lakkireddy) [2105817] - crypto: chelsio - remove unused function (Rahul Lakkireddy) [2105817] - crypto: chelsio - Read rxchannel-id from firmware (Rahul Lakkireddy) [2105817] - crypto: chelsio - Fix some kernel-doc issues (Rahul Lakkireddy) [2105817] - crypto: chelsio - remove set but not used variable 'adap' (Rahul Lakkireddy) [2105817] - dm raid: fix address sanitizer warning in raid_resume (Benjamin Marzinski) [2115118] - dm raid: fix address sanitizer warning in raid_status (Benjamin Marzinski) [2115118] - dm: return early from dm_pr_call() if DM device is suspended (Benjamin Marzinski) [2115118] - dm thin: fix use-after-free crash in dm_sm_register_threshold_callback (Benjamin Marzinski) [2115118] - dm writecache: count number of blocks discarded, not number of discard bios (Benjamin Marzinski) [2115118] - dm writecache: count number of blocks written, not number of write bios (Benjamin Marzinski) [2115118] - dm writecache: count number of blocks read, not number of read bios (Benjamin Marzinski) [2115118] - dm writecache: return void from functions (Benjamin Marzinski) [2115118] - dm kcopyd: use __GFP_HIGHMEM when allocating pages (Benjamin Marzinski) [2115118] - dm writecache: set a default MAX_WRITEBACK_JOBS (Benjamin Marzinski) [2115118] - dm raid: fix KASAN warning in raid5_add_disks (Benjamin Marzinski) [2115118] - dm raid: fix KASAN warning in raid5_remove_disk (Benjamin Marzinski) [2115118] - KVM: x86: do not report preemption if the steal time cache is stale (Vitaly Kuznetsov) [2115240] - KVM: x86: revalidate steal time cache if MSR value changes (Vitaly Kuznetsov) [2115240] - KVM: nVMX: Always enable TSC scaling for L2 when it was enabled for L1 (Vitaly Kuznetsov) [2115240] - KVM: x86: Fully initialize 'struct kvm_lapic_irq' in kvm_pv_kick_cpu_op() (Vitaly Kuznetsov) [2115240] - KVM: SEV: Init target VMCBs in sev_migrate_from (Vitaly Kuznetsov) [2115240] - KVM: SVM: fix tsc scaling cache logic (Vitaly Kuznetsov) [2115240] - KVM: x86/mmu: Check every prev_roots in __kvm_mmu_free_obsolete_roots() (Vitaly Kuznetsov) [2115240] - KVM: LAPIC: Drop pending LAPIC timer injection when canceling the timer (Vitaly Kuznetsov) [2115240] - KVM: x86: avoid calling x86 emulator without a decoded instruction (Vitaly Kuznetsov) [2115240] - KVM: SVM: Use kzalloc for sev ioctl interfaces to prevent kernel data leak (Vitaly Kuznetsov) [2115240] - KVM: x86: avoid loading a vCPU after .vm_destroy was called (Vitaly Kuznetsov) [2115240] - KVM: nVMX: Clear IDT vectoring on nested VM-Exit for double/triple fault (Vitaly Kuznetsov) [2115240] - KVM: nVMX: Leave most VM-Exit info fields unmodified on failed VM-Entry (Vitaly Kuznetsov) [2115240] - KVM: x86: Drop WARNs that assert a triple fault never "escapes" from L2 (Vitaly Kuznetsov) [2115240] - sched/deadline: Fix BUG_ON condition for deboosted tasks (Phil Auld) [2111860] - scsi: qla2xxx: Fix excessive I/O error messages by default (Nilesh Javali) [2100728] - scsi: qla2xxx: Fix erroneous mailbox timeout after PCI error injection (Nilesh Javali) [2044160] - drm/radeon: fix build rules of *_reg_safe.h (Michel Dänzer) [2006451] - RDMA/irdma: Fix sleep from invalid context BUG (Kamal Heib) [2097318] - RDMA/irdma: Do not advertise 1GB page size for x722 (Kamal Heib) [2097318] - RDMA/cm: Fix memory leak in ib_cm_insert_listen (Kamal Heib) [2097318] - RDMA/hfi1: Fix potential integer multiplication overflow errors (Kamal Heib) [2097318] - RDMA/hfi1: Prevent use of lock before it is initialized (Kamal Heib) [2097318] - RDMA/rxe: Fix an error handling path in rxe_get_mcg() (Kamal Heib) [2097318] - RDMA/rxe: Generate a completion for unsupported/invalid opcode (Kamal Heib) [2097318] - scsi: target: cxgbit: Enable Delayed ACK (Rahul Lakkireddy) [2105813] - scsi: target: cxgbit: Increase max DataSegmentLength (Rahul Lakkireddy) [2105813] - cxgb4: Use the bitmap API to allocate bitmaps (Rahul Lakkireddy) [2105806] - cxgb4: Fix typo in string (Rahul Lakkireddy) [2105806] - cxgb4/cxgb4vf: Fix typo in comments (Rahul Lakkireddy) [2105806] - cxgb4vf: remove unexpected word "the" (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4: Avoid potential negative array offset (Rahul Lakkireddy) [2105806] - libcxgb: Don't accidentally set RTO_ONLINK in cxgb_find_route() (Rahul Lakkireddy) [2105806] - cxgb4vf: Remove useless DMA-32 fallback configuration (Rahul Lakkireddy) [2105806] - cxgb4: Remove useless DMA-32 fallback configuration (Rahul Lakkireddy) [2105806] - cxgb4: allow reading unrecognized port module eeprom (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4vf: Fix an error code in cxgb4vf_pci_probe() (Rahul Lakkireddy) [2105806] - cxgb4: Use struct_group() for memcpy() region (Rahul Lakkireddy) [2105806] - cxgb4: fix eeprom len when diagnostics not implemented (Rahul Lakkireddy) [2105806] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Rahul Lakkireddy) [2105806] - ethernet: chelsio: use eth_hw_addr_set() (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4vf: Make use of the helper function dev_err_probe() (Rahul Lakkireddy) [2105806] - cxgb4: improve printing NIC information (Rahul Lakkireddy) [2105806] - net: chelsio: switch from 'pci_' to 'dma_' API (Rahul Lakkireddy) [2105806] - cxgb4: make the array match_all_mac static, makes object smaller (Rahul Lakkireddy) [2105806] - cxgb4: fix IRQ free race during driver unload (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4: use eth_zero_addr() to assign zero address (Rahul Lakkireddy) [2105806] - cxgb4: Fix -Wunused-const-variable warning (Rahul Lakkireddy) [2105806] - cxgb4: clip_tbl: use list_del_init instead of list_del/INIT_LIST_HEAD (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4vf: Fix wrong function name in comments (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4: Fix wrong function name in comments (Rahul Lakkireddy) [2105806] - cxgb4: Remove redundant NULL check (Rahul Lakkireddy) [2105806] - net: ethernet: chelsiofix: spelling typo of 'rewriteing' (Rahul Lakkireddy) [2105806] - net: don't include ethtool.h from netdevice.h (Rahul Lakkireddy) [2105806] - cxgb4vf: convert to use DEFINE_SEQ_ATTRIBUTE macro (Rahul Lakkireddy) [2105806] - cxgb4vf: fix t4vf_eth_xmit()'s return type (Rahul Lakkireddy) [2105806] - cxgb4vf: update kernel-doc line comments (Rahul Lakkireddy) [2105806] - cxgb4: remove duplicate headers (Rahul Lakkireddy) [2105806] - cxgb4/cxgb4vf: Remove superfluous void * cast in debugfs_create_file() call (Rahul Lakkireddy) [2105806] - cxgb4: Add missing annotation for service_ofldq() (Rahul Lakkireddy) [2105806] - net: cxgb4vf: reject unsupported coalescing params (Rahul Lakkireddy) [2105806] - scsi: mpt3sas: Stop fw fault watchdog work item during system shutdown (Tomas Henzl) [2106413] - drm/amd/display: Fix new dmub notification enabling in DM (Mika Penttilä) [2107632] - Revert "crypto: chelsio - Inline single pdu only" (Rahul Lakkireddy) [2105818] - crypto/chcr: Moving chelsio's inline ipsec functionality to /drivers/net (Rahul Lakkireddy) [2105818] - net/xfrm: IPsec tunnel mode fix inner_ipproto setting in sec_path (Sabrina Dubroca) [2107200] - scsi: ch: Make it possible to open a ch device multiple times again (Ewan D. Milne) [2108649] - lpfc updates for rh8.7 14.0.0.15 (Paul Ely) [2107726] - scsi: lpfc: Copyright updates for 14.2.0.5 patches (Paul Ely) [2107726] - scsi: lpfc: Fix lost NVMe paths during LIF bounce stress test (Paul Ely) [2107726] - scsi: lpfc: Fix attempted FA-PWWN usage after feature disable (Paul Ely) [2107726] - scsi: lpfc: Fix possible memory leak when failing to issue CMF WQE (Paul Ely) [2107726] - scsi: lpfc: Remove extra atomic_inc on cmd_pending in queuecommand after VMID (Paul Ely) [2107726] - scsi: lpfc: Prevent buffer overflow crashes in debugfs with malformed user input (Paul Ely) [2107726] - scsi: lpfc: Fix uninitialized cqe field in lpfc_nvme_cancel_iocb() (Paul Ely) [2107726] - scsi: lpfc: Allow reduced polling rate for nvme_admin_async_event cmd completion (Paul Ely) [2107726] - scsi: lpfc: Fix port stuck in bypassed state after LIP in PT2PT topology (Paul Ely) [2107726] - scsi: lpfc: Resolve NULL ptr dereference after an ELS LOGO is aborted (Paul Ely) [2107726] - scsi: lpfc: Correct BDE type for XMIT_SEQ64_WQE in lpfc_ct_reject_event() (Paul Ely) [2107726] - scsi: qla2xxx: Fix imbalance vha->vref_count (Nilesh Javali) [2108964] - scsi: smartpqi: Update version to 2.1.18-045 (Don Brace) [2101548] - scsi: smartpqi: Update copyright to current year (Don Brace) [2101548] - scsi: smartpqi: Add ctrl ready timeout module parameter (Don Brace) [2101548] - scsi: smartpqi: Update deleting a LUN via sysfs (Don Brace) [2101548] - scsi: smartpqi: Add module param to disable managed ints (Don Brace) [2101548] - scsi: smartpqi: Fix RAID map race condition (Don Brace) [2101548] - scsi: smartpqi: Fix DMA direction for RAID requests (Don Brace) [2101548] - scsi: smartpqi: Stop logging spurious PQI reset failures (Don Brace) [2101548] - scsi: smartpqi: Add PCI IDs for Lenovo controllers (Don Brace) [2101548] - scsi: smartpqi: Add PCI ID for Adaptec SmartHBA 2100-8i (Don Brace) [2101548] - scsi: smartpqi: Fix PCI control linkdown system hang (Don Brace) [2101548] - scsi: smartpqi: Add driver support for multi-LUN devices (Don Brace) [2101548] - scsi: smartpqi: Close write read holes (Don Brace) [2101548] - scsi: smartpqi: Add PCI IDs for ramaxel controllers (Don Brace) [2101548] - scsi: smartpqi: Add controller fw version to console log (Don Brace) [2101548] - scsi: smartpqi: Shorten drive visibility after removal (Don Brace) [2101548] - scsi: smartpqi: Fix typo in comment (Don Brace) [2101548] - docs: kdump: Update the crashkernel description for arm64 (Pingfan Liu) [2093920] - of: Support more than one crash kernel regions for kexec -s (Pingfan Liu) [2093920] - of: kexec: Remove FDT_PROP_* definitions (Pingfan Liu) [2093920] - arm64: kexec: Fix missing error code 'ret' warning in load_other_segments() (Pingfan Liu) [2093920] - arm64: Use common of_kexec_alloc_and_setup_fdt() (Pingfan Liu) [2093920] - of: Add a common kexec FDT setup function (Pingfan Liu) [2093920] - arm64: Use ELF fields defined in 'struct kimage' (Pingfan Liu) [2093920] - kexec: Move ELF fields to struct kimage (Pingfan Liu) [2093920] - of: fdt: Add memory for devices by DT property "linux,usable-memory-range" (Pingfan Liu) [2093920] - efi: apply memblock cap after memblock_add() (Pingfan Liu) [2093920] - of: fdt: Aggregate the processing of "linux,usable-memory-range" (Pingfan Liu) [2093920] - of/fdt: Rework early_init_dt_scan_memory() to call directly (Pingfan Liu) [2093920] - of/fdt: Rework early_init_dt_scan_root() to call directly (Pingfan Liu) [2093920] - of/fdt: Rework early_init_dt_scan_chosen() to call directly (Pingfan Liu) [2093920] - of: fdt: Rename reserve_elfcorehdr() to fdt_reserve_elfcorehdr() (Pingfan Liu) [2093920] - of: fdt: Add generic support for handling elf core headers property (Pingfan Liu) [2093920] - arm64: kdump: Reimplement crashkernel=X (Pingfan Liu) [2093920] - arm64: Use insert_resource() to simplify code (Pingfan Liu) [2093920] - kdump: return -ENOENT if required cmdline option does not exist (Pingfan Liu) [2093920]- sched: Add WARN_ONCE_SAFE for use during critical scheduler code. (Phil Auld) [2095898] - printk: remove NMI tracking [partial] (Phil Auld) [2095898] - ext4: make sure ext4_append() always allocates new block (Lukas Czerner) [2070216] - ext4: check if directory block is within i_size (Lukas Czerner) [2070216] - redhat: nvme/tcp mistakenly uses blk_mq_tag_to_rq(nvme_tcp_tagset(queue)) (John Meneghini) [2112036] - RDMA/cxgb4: Set queue pair state when being queried (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use non-atomic bitmap functions when possible (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use bitmap_set() when applicable (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use bitmap_zalloc() when applicable (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use helper function to set GUIDs (Rahul Lakkireddy) [2105809] - RDMA/iw_cxgb4: Fix refcount underflow while destroying cqs. (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use refcount_t instead of atomic_t for reference counting (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Fix missing error code in create_qp() (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Remove useless assignments (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: add missing qpid increment (Rahul Lakkireddy) [2105809] - RDMA/iw_cxgb4: Use DEFINE_SPINLOCK() for spinlock (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use sizeof() notation (Rahul Lakkireddy) [2105809] - drm/amd/display: Ignore First MST Sideband Message Return Error (Michel Dänzer) [2089853] - sched, cpuset: Fix dl_cpu_busy() panic due to empty cs->cpus_allowed (Waiman Long) [2115165] - sched/deadline: Merge dl_task_can_attach() and dl_cpu_busy() (Waiman Long) [2115165] - ibmvnic: Properly dispose of all skbs during a failover. (Steve Best) [2107560] - redhat/configs: Enable CONFIG_AMD_HSMP for x86_64 (John Allen) [2072233] - platform/x86: Add AMD system management interface (John Allen) [2072233] - ice: do not setup vlan for loopback VSI (Petr Oros) [2103845] - ice: check (DD | EOF) bits on Rx descriptor rather than (EOP | RS) (Petr Oros) [2103845] - ice: Fix VSIs unable to share unicast MAC (Petr Oros) [2080033] - ice: Fix max VLANs available for VF (Petr Oros) [2112298] - ice: change devlink code to read NVM in blocks (Petr Oros) [2093904] - ALSA: Enable more Intel and AMD x86 chipset drivers (Jaroslav Kysela) [2065575] - ALSA: Remove module symbols namespace (Jaroslav Kysela) [2065575] - ASoC: SOF: tokens: add token for Mediatek AFE (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Expand firmware loading search options (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Add trace caps to speaker protection FW (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Make compressed buffers optional (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Correct control read size when parsing compressed buffer (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Add support for "toggle" preloaders (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Fix overrun of unterminated control name string (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Clear core reset for cache (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Move lockdep asserts to avoid potential null pointer (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Allow creation of event controls (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add offset to cs_dsp read/write (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Clarify some kernel doc comments (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Perform NULL check in cs_dsp_coeff_write/read_ctrl (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add support for rev 2 coefficient files (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Print messages from bin files (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add pre_run callback (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add version checks on coefficient loading (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add lockdep asserts to interface functions (Jaroslav Kysela) [2065575] - firmware: cs_dsp: tidy includes in cs_dsp.c and cs_dsp.h (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Remove the wmfw_add_ctl helper function (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: wm_adsp_control_add() error: uninitialized symbol 'ret' (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: remove a repeated including (Jaroslav Kysela) [2065575] - firmware: cs_dsp: add driver to support firmware loading on Cirrus Logic DSPs (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Separate wm_adsp specifics in cs_dsp_client_ops (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Split out struct cs_dsp from struct wm_adsp (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: move firmware loading to client (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Pass firmware names as parameters when starting DSP core (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Move check of dsp->running to better place (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Separate generic cs_dsp_coeff_ctl handling (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Move sys_config_size to wm_adsp (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Split DSP power operations into helper functions (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Separate some ASoC and generic functions (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Introduce cs_dsp logging macros (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Rename generic DSP support (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Cancel ongoing work when removing controls (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Switch to using wm_coeff_read_ctrl for compressed buffers (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Move check for control existence (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Remove use of snd_ctl_elem_type_t (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Put debugfs_remove_recursive back in (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Let soc_cleanup_component_debugfs remove debugfs (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Remove pointless string comparison (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Add CCM_CORE_RESET to Halo start core (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Correct wm_coeff_tlv_get handling (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Fix control name parsing for multi-fw (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Fix uninitialized variable warnings (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Use snd_ctl_elem_type_t for control types (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Only use __be32 for big-endian data (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Improve handling of raw byte streams (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: remove "ctl" from list on error in wm_adsp_create_control() (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: fix error return code in wm_adsp_load() (Jaroslav Kysela) [2065575] - ASoC: rt5640: Add the binding include file for the HDA header support (Jaroslav Kysela) [2065575] - ALSA: uapi: use C90 comment style instead of C99 style (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: Add RaptorLake PCI IDs (Jaroslav Kysela) [2065575] - ALSA: hda/i915: Fix one too many pci_dev_put() (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: update AlderLake PCI IDs (Jaroslav Kysela) [2065575] - ALSA: hda/i915 - skip acomp init if no matching display (Jaroslav Kysela) [2065575] - ALSA: hda/i915 - avoid hung task timeout in i915 wait (Jaroslav Kysela) [2065575] - ALSA: intel-dspconfig: add ES8336 support for CNL (Jaroslav Kysela) [2065575] - ALSA: intel-dsp-config: add more ACPI HIDs for ES83x6 devices (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: reorder the config table (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: add JasperLake support (Jaroslav Kysela) [2065575] - ALSA: hda: Simplify DMIC-in-NHLT check (Jaroslav Kysela) [2065575] - ALSA: intel_hdmi: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: x86: Use standard mmap helper for Intel HDMI LPE audio (Jaroslav Kysela) [2065575] - ALSA: intel_hdmi: Fix reference to PCM buffer address (Jaroslav Kysela) [2065575] - ALSA: intel_hdmi: Check for error num after setting mask (Jaroslav Kysela) [2065575] - tools include uapi: Update asound.h copy (Jaroslav Kysela) [2065575] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2065575] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2065575] - ALSA: hda: Add helper macros for DSP capable devices (Jaroslav Kysela) [2065575] - ALSA: intel-nhlt: add helper to detect SSP link mask (Jaroslav Kysela) [2065575] - ASoC: soc-acpi: add information on I2S/TDM link mask (Jaroslav Kysela) [2065575] - ASoC: soc-acpi: fix kernel-doc descriptor (Jaroslav Kysela) [2065575] - ASoC: SOF: fix 32 signed bit overflow (Jaroslav Kysela) [2065575] - ALSA: hda: Add snd_hdac_ext_bus_link_at() helper (Jaroslav Kysela) [2065575] - ALSA: cleanup double word in comment (Jaroslav Kysela) [2065575] - ASoC: SOF: add _D3_PERSISTENT flag to fw_ready message (Jaroslav Kysela) [2065575] - ALSA: HDA: hdac_ext_stream: use consistent prefixes for variables (Jaroslav Kysela) [2065575] - ipc: debug: Add shared memory heap to memory scan (Jaroslav Kysela) [2065575] - ALSA: pcm: comment about relation between msbits hw parameter and [S|U]32 formats (Jaroslav Kysela) [2065575] - ALSA: hda: Fill gaps in NHLT endpoint-interface (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: Add new IPC command to free trace DMA (Jaroslav Kysela) [2065575] - soundwire: stream: make enable/disable/deprepare idempotent (Jaroslav Kysela) [2065575] - soundwire: stream: sdw_stream_add_ functions can be called multiple times (Jaroslav Kysela) [2065575] - soundwire: stream: introduce sdw_slave_rt_find() helper (Jaroslav Kysela) [2065575] - soundwire: stream: separate alloc and config within sdw_stream_add_xxx() (Jaroslav Kysela) [2065575] - soundwire: stream: move list addition to sdw_slave_alloc_rt() (Jaroslav Kysela) [2065575] - soundwire: stream: rename and move master/slave_rt_free routines (Jaroslav Kysela) [2065575] - soundwire: stream: group sdw_stream_ functions (Jaroslav Kysela) [2065575] - soundwire: stream: split sdw_alloc_slave_rt() in alloc and config (Jaroslav Kysela) [2065575] - soundwire: stream: move sdw_alloc_slave_rt() before 'master' helpers (Jaroslav Kysela) [2065575] - soundwire: stream: split sdw_alloc_master_rt() in alloc and config (Jaroslav Kysela) [2065575] - soundwire: stream: simplify sdw_alloc_master_rt() (Jaroslav Kysela) [2065575] - soundwire: stream: group sdw_port and sdw_master/slave_port functions (Jaroslav Kysela) [2065575] - soundwire: stream: add 'slave' prefix for port range checks (Jaroslav Kysela) [2065575] - soundwire: stream: split alloc and config in two functions (Jaroslav Kysela) [2065575] - soundwire: stream: split port allocation and configuration loops (Jaroslav Kysela) [2065575] - soundwire: stream: add alloc/config/free helpers for ports (Jaroslav Kysela) [2065575] - soundwire: stream: simplify check on port range (Jaroslav Kysela) [2065575] - soundwire: stream: add slave runtime to list earlier (Jaroslav Kysela) [2065575] - soundwire: stream: remove unused parameter in sdw_stream_add_slave (Jaroslav Kysela) [2065575] - soundwire: intel: fix wrong register name in intel_shim_wake (Jaroslav Kysela) [2065575] - soundwire: bus: add dev_warn() messages to track UNATTACHED devices (Jaroslav Kysela) [2065575] - soundwire: intel: remove PDM support (Jaroslav Kysela) [2065575] - soundwire: intel: remove unnecessary init (Jaroslav Kysela) [2065575] - ASoC/SoundWire: dai: expand 'stream' concept beyond SoundWire (Jaroslav Kysela) [2065575] - soundwire: intel: improve suspend flows (Jaroslav Kysela) [2065575] - soundwire: intel: Use auxiliary_device driver data helpers (Jaroslav Kysela) [2065575] - soundwire: qcom: remove redundant version number read (Jaroslav Kysela) [2065575] - ASoC: SOF: Fix NULL pointer exception in sof_pci_probe callback (Jaroslav Kysela) [2065575] - ASoC: ops: Validate input values in snd_soc_put_volsw_range() (Jaroslav Kysela) [2065575] - ASoC: dmaengine: Restore NULL prepare_slave_config() callback (Jaroslav Kysela) [2065575] - ASoC: max98090: Generate notifications on changes for custom control (Jaroslav Kysela) [2065575] - ASoC: max98090: Reject invalid values in custom control put() (Jaroslav Kysela) [2065575] - ASoC: rt9120: Correct the reg 0x09 size to one byte (Jaroslav Kysela) [2065575] - ASoC: soc-ops: fix error handling (Jaroslav Kysela) [2065575] - ASoC: da7219: Fix change notifications for tone generator frequency (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: fix sysclk shutdown (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: Add a quirk for Huawei Matebook D15 (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add a quirk for headset at mic1 port (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: support a separate gpio to control headphone (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: simplify speaker gpio naming (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: correct device endpoints for max98373 (Jaroslav Kysela) [2065575] - ASoC: codecs: wcd934x: do not switch off SIDO Buck when codec is in use (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Fix memory leak in sof_control_load() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: cleanup dailinks on widget unload (Jaroslav Kysela) [2065575] - ASoC: rt711/5682: check if bus is active before deferred jack detection (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: Add support for max98360a speaker amp on SSP2 (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Avoid NULL deref in asoc_simple_set_tdm() (Jaroslav Kysela) [2065575] - ASoC: soc-core: add debugfs_prefix member to snd_soc_component_driver (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix a shift-out-of-bounds warning found by UBSAN (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Add one more variable in the debug log (Jaroslav Kysela) [2065575] - ASoC: rt5682: fix an incorrect NULL check on list iterator (Jaroslav Kysela) [2065575] - ASoC: soc-dapm: fix two incorrect uses of list iterator (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: use GFP_KERNEL when the code is sleepable (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Fix memory leak of scontrol->name (Jaroslav Kysela) [2065575] - codecs: rt5682s: fix an incorrect NULL check on list iterator (Jaroslav Kysela) [2065575] - ASoC: topology: Correct error handling in soc_tplg_dapm_widget_create() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Fix build error without SND_SOC_SOF_PCI_DEV (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a new dai_get_clk topology IPC op (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add ops for setting up and tearing down pipelines (Jaroslav Kysela) [2065575] - ASoC: SOF: expose sof_route_setup() (Jaroslav Kysela) [2065575] - ASoC: SOF: Add dai_link_fixup PCM op for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add trigger PCM op for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Define hw_params PCM op for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC3 PCM hw_free op (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: expose the sof_pcm_setup_connected_widgets() function (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC-specific PCM ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add bytes_ext control IPC ops for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add bytes_get/put control IPC ops for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add enum_get/put control ops for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add switch get/put IPC3 ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add volume_get/put IPC3 ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add IPC3 topology control ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC ops for kcontrol IO (Jaroslav Kysela) [2065575] - ASoC: SOF: Make sof_suspend/resume IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: Make sof_widget_setup/free IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: set up scheduler widget before all other widgets in the pipeline (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Use kmemdup() to replace kzalloc + memcpy (Jaroslav Kysela) [2065575] - ASoC: ak4642: Use of_device_get_match_data() (Jaroslav Kysela) [2065575] - ASoC: sti: Fix deadlock via snd_pcm_stop_xrun() call (Jaroslav Kysela) [2065575] - ASoC: amd: Fix reference to PCM buffer address (Jaroslav Kysela) [2065575] - ASoC: codecs: wcd934x: Add missing of_node_put() in wcd934x_codec_parse_data (Jaroslav Kysela) [2065575] - ASoC: rt1308-sdw: get calibration params after power on (Jaroslav Kysela) [2065575] - ASoC: msm8916-wcd-analog: Fix error handling in pm8916_wcd_analog_spmi_probe (Jaroslav Kysela) [2065575] - ASoC: ti: Fix spelling mistake "cant" -> "can't" (Jaroslav Kysela) [2065575] - ASoC: samsung: i2s: check the return value of kstrdup() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove snd_sof_complete_pipeline() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make widget binding IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make control parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make DAI widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make route setup IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make effect widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: Replace zero-length array with flexible-array member (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make siggen widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make asrc widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make src widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make mux/demux widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make mixer widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make pga widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make buffer widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make scheduler widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC3 ops (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add helper function for processing tuple arrays (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: Introduce IPC ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce struct snd_sof_dai_link (Jaroslav Kysela) [2065575] - ASoC: soc-compress: Change the check for codec_dai (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Code loading over HDA (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Code loading over CLDMA (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Implement CLDMA transfer (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: General code loading flow (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Dynamic firmware resources management (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Declare module configuration types (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Firmware resources management utilities (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add basefw runtime-parameter requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add ROM requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add power management requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add module management requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add pipeline management requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add code loading requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Inter process communication (Jaroslav Kysela) [2065575] - ASoC: Intel: Introduce AVS driver (Jaroslav Kysela) [2065575] - ASoC: Export DAI register and widget ctor and dctor functions (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Don't reset clock of active DAI (Jaroslav Kysela) [2065575] - ASoC: SOF: Remove ipc_pcm_params() ops (Jaroslav Kysela) [2065575] - ASoC: SOF: imx: Convert to use the generic set_stream_data_offset ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Convert to use the generic set_stream_data_offset ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-ipc: Add hda_set_stream_data_offset() (Jaroslav Kysela) [2065575] - ASoC: SOF: stream-ipc: Add sof_set_stream_data_offset() (Jaroslav Kysela) [2065575] - ASoC: SOF: Mark snd_sof_dsp_ops.ipc_pcm_params() callback optional (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce optional callback to configure stream data offset (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: Remove sof_pcm_dsp_params() wrapper (Jaroslav Kysela) [2065575] - ASoC: SOF: Make pcm_hw_params snd_sof_dsp_ops callback IPC neutral (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-priv: Remove stale snd_sof_ipc_stream_pcm_params() declaration (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: Add entry for rt711-sdca-sdw in ADL match table (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: add topology overwrite for Taniks (Jaroslav Kysela) [2065575] - ASoC: SOF: trace: Use proper DMA direction for the trace data buffer (Jaroslav Kysela) [2065575] - ASoC: SOF: compress: fix null check after dereference (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: enable DMI L1 for playback streams (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc-msg-injector: Use devm_kzalloc() for the rx_buffer (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Remove unneeded semicolon (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Remove unneeded semicolon (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: fix randconfig issue (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcht_es8316: move comment to the right place (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add cfg-dmics component for UCM support (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: extend machine driver to support ES8326 codec (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add support for JD inverted quirk (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: move comment to the right place (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: log all quirks (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: use NHLT information to set dmic and SSP (Jaroslav Kysela) [2065575] - ASoC: Intel: Revert "ASoC: Intel: sof_es8336: add quirk for Huawei D15 2021" (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: get codec device with ACPI instead of bus search (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: make gpio optional (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: add ESSX8336 support on Cannon Lake machines (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: add more ACPI HIDs for ES83x6 devices (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: quirk topology filename dynamically (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: report SSP link mask to machine driver (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: retrieve DMIC number for I2S boards (Jaroslav Kysela) [2065575] - ASoC: SOF: move definition of snd_sof_ipc to header file (Jaroslav Kysela) [2065575] - ASoC: SOF: make struct snd_sof_dai IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Rename arguments in sof_parse_tokens() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Rename arguments in sof_parse_token_sets() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Modify signature for token parsing functions (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a tuples array to struct snd_sof_widget (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: make sof_route_load() IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: make struct snd_sof_widget IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: mxs: Fix error handling in mxs_sgtl5000_probe (Jaroslav Kysela) [2065575] - ASoC: dmaengine: do not use a NULL prepare_slave_config() callback (Jaroslav Kysela) [2065575] - ASoC: SOF: Add missing of_node_put() in imx8m_probe (Jaroslav Kysela) [2065575] - ASoC: rockchip: i2s: Fix missing clk_disable_unprepare() in rockchip_i2s_probe (Jaroslav Kysela) [2065575] - ASoC: amd: acp3x: Fix signedness bug in acp3x (Jaroslav Kysela) [2065575] - ASoC: amd: acp5x-pcm-dma: Fix signedness bug (Jaroslav Kysela) [2065575] - ASoC: Intel: catpt: use asoc_substream_to_rtd() (Jaroslav Kysela) [2065575] - ASoC: SOF: change comp_dai to a pointer in struct snd_sof_dai (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: expose some get_token ops (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Modify the get_token op for string tokens (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Drop the size parameter from struct sof_topology_token (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove redundant code in sof_link_afe_load() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove redundant code (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-audio: removed unused function (Jaroslav Kysela) [2065575] - ASoC: SOF: set swidget's core for scheduler widget (Jaroslav Kysela) [2065575] - ASoC: SOF: simplify snd_sof_device_remove() (Jaroslav Kysela) [2065575] - ASoC: SOF: remove snd_sof_pipeline_find() (Jaroslav Kysela) [2065575] - ASoC: amd: vg: fix signedness bug in acp5x_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Remove unnecessary param (Jaroslav Kysela) [2065575] - ASoC: rt5682s: Stabilize the combo jack detection (Jaroslav Kysela) [2065575] - ASoC: wm8350: Handle error for wm8350_register_irq (Jaroslav Kysela) [2065575] - ASoC: amd: pcm-dma: Fix signedness bug in acp3x_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: amd: pcm-dma: Fix signedness bug in acp_pdm_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Fix signedness bug in renoir_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_sdw: fix quirks for 2022 HP Spectre x360 13" (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: add GPIOLIB dependency where missed (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: remove explicit dependency on GPIOLIB when DMIC is used" (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: store full version instead of major/minor (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: simplify register poking in fsl_sai_set_bclk (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: simplify irq return value (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: Drop unnecessary defines (Jaroslav Kysela) [2065575] - ASoC: codecs: Add Awinic AW8738 audio amplifier driver (Jaroslav Kysela) [2065575] - ASoC: audio_graph_card2: Add support for variable slot widths (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: clarify operator precedence (Jaroslav Kysela) [2065575] - ASoC: SOF: debug: clarify operator precedence (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Increase ACP_HW_SEM_RETRY_COUNT value (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Move group register configuration to acp-loader (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Use semaphore register to synchronize ipc's irq (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Flush cache after ATU_BASE_ADDR_GRP register update (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Do not set ipc_pcm_params ops as it is optional (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: acp-pcm: Take buffer information directly from runtime (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: pci-tgl: add RPL-S support (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix DSP mbox start command and global enable order (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix max number of TX channels (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix GPIO2 configuration (Jaroslav Kysela) [2065575] - ASoC: bt-sco: fix bt-sco-pcm-wb dai widget don't connect to the endpoint (Jaroslav Kysela) [2065575] - ASoC: hdac_hda: Avoid unexpected match when pcm_name is "Analog" (Jaroslav Kysela) [2065575] - ASoC: soc-compress: prevent the potentially use of null pointer (Jaroslav Kysela) [2065575] - ASoC: soc-generic-dmaengine-pcm: set period_bytes_min based on maxburst (Jaroslav Kysela) [2065575] - ASoC: dwc-i2s: Handle errors for clk_enable (Jaroslav Kysela) [2065575] - ASoC: amd: use asoc_substream_to_rtd() (Jaroslav Kysela) [2065575] - ASoC: atmel_ssc_dai: Handle errors for clk_enable (Jaroslav Kysela) [2065575] - ASoC: mxs-saif: Handle errors for clk_enable (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: add entries in ADL match table (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_ssp_amp: rename driver and support cs35l41 amplifier (Jaroslav Kysela) [2065575] - ASoC: Intel: cirrus-common: support cs35l41 amplifier (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt1308: move rt1308 code to common module (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: create sof-realtek-common module (Jaroslav Kysela) [2065575] - ASoC: Intel: add RT1308 I2S machine driver and HDMI-in capture via I2S support. (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: fix spelling in comments (Jaroslav Kysela) [2065575] - ASoC: soc-acpi: remove sof_fw_filename (Jaroslav Kysela) [2065575] - ASoC: es7241: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98927: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98926: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98925: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max9867: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max9860: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max9850: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98390: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98371: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98095: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98088: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: uda134x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: ml26124: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm512x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm186x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm1681: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm3060: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: ti: davinci-i2s: Add check for clk_enable() (Jaroslav Kysela) [2065575] - ASoC: mc13783: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: isabelle: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: amd: vangogh: fix uninitialized symbol warning in machine driver (Jaroslav Kysela) [2065575] - ASoC: amd: vg: remove warnings and errors pointed out by checkpatch pl (Jaroslav Kysela) [2065575] - ASoC: amd: vg: update DAI link name (Jaroslav Kysela) [2065575] - ASoC: amd: vg: fix for pm resume callback sequence (Jaroslav Kysela) [2065575] - ASoC: es8328: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: inno_rk3036: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: es8316: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: wl1273: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: es7134: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: twl4030: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: uda1334: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: uda1380: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: si476x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: sti-sas: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: amd: pcm-dma: Use platform_get_irq() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: tscs454: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: tscs42xx: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: lm49453: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: qcom: lpass-platform: Update warning print to control excess logging (Jaroslav Kysela) [2065575] - ASoC: acp: check the return value of devm_kzalloc() in acp_legacy_dai_links_create() (Jaroslav Kysela) [2065575] - ASoC: rt5663: check the return value of devm_kzalloc() in rt5663_parse_dp() (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-priv: Drop duplicate sof_compressed_ops declaration (Jaroslav Kysela) [2065575] - ASoC: amd: Use platform_get_irq_byname() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: SOF: Declare sof_compress_ops in sof-priv.h (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Fix NULL ptr dereference when ENOMEM (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add DMIC machine driver ops (Jaroslav Kysela) [2065575] - ASoC: amd: acp-legacy: Add legacy card support for new machines (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Change card name for Guybrush Machine (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: Add compress_ops for SOF platform component driver (Jaroslav Kysela) [2065575] - ASoC: rt5682s: Fix the wrong jack type detected (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi-byt: Add new WM5102 ACPI HID (Jaroslav Kysela) [2065575] - ASoC: amd: vg: update acp init and deinit sequence (Jaroslav Kysela) [2065575] - ASoC: amd: vg: apply sample bits pcm constraint (Jaroslav Kysela) [2065575] - ASoC: amd: vg: update platform clock control sequence (Jaroslav Kysela) [2065575] - ASoC: nau8821: enable no_capture_mute flag (Jaroslav Kysela) [2065575] - ASoC: amd: vangogh: refactor i2s master mode clock sequence code (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Add topology overwrite for Felwinter (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add quirk for Huawei D15 2021 (Jaroslav Kysela) [2065575] - ASoC: intel: skylake: Set max DMA segment size (Jaroslav Kysela) [2065575] - ASoC: SOF: hda: Set max DMA segment size (Jaroslav Kysela) [2065575] - ASoC: SOF: core: unregister clients and machine drivers in .shutdown (Jaroslav Kysela) [2065575] - ASoC: cs4265: Fix the duplicated control name (Jaroslav Kysela) [2065575] - ASoC: ops: Shift tested values in snd_soc_put_volsw() by +min (Jaroslav Kysela) [2065575] - ASoC: soc-core: skip zero num_dai component in searching dai name (Jaroslav Kysela) [2065575] - ASoC: SOF: Makefile: Fix randconfig sof-client build when SND_SOC_SOF=y (Jaroslav Kysela) [2065575] - ASoC: codec: wm8960: complete discharge on BIAS OFF->STANDBY (Jaroslav Kysela) [2065575] - ASoC: wm8731: Delete empty remove() function (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: remove numeric PCM3168A_NUM_SUPPLIES (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: refactor format handling (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: refactor hw_params routine (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: cleanup unintuitive mask usage (Jaroslav Kysela) [2065575] - ASoC: SOF: compr: Mark snd_compress_ops static (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcr_wm5102: use GFP_KERNEL (Jaroslav Kysela) [2065575] - ASoC: SOF: Convert the generic probe support to SOF client (Jaroslav Kysela) [2065575] - ASoC: SOF: Convert the generic IPC message injector into SOF client (Jaroslav Kysela) [2065575] - ASoC: SOF: Convert the generic IPC flood test into SOF client (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-client: Add support for clients not managed by pm framework (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC SOF client support (Jaroslav Kysela) [2065575] - ASoC: SOF: Split up utils.c into sof-utils and iomem-utils (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Read and pass the whole message to handlers for IPC events (Jaroslav Kysela) [2065575] - ASoC: SOF: Move the definition of enum sof_dsp_power_states to global header (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop unused DSP power states: D3_HOT and D3_COLD (Jaroslav Kysela) [2065575] - ASoC: rt5640: Remove the sysclk and sysclk_src checking (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hdac_ext_stream: consistent prefixes for variables/members (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: Enable combine mode soft (Jaroslav Kysela) [2065575] - ASoC: SOF: compr: Add compress ops implementation (Jaroslav Kysela) [2065575] - ASoC: SOF: dma-trace: Pass pointer to params_ext struct in trace_init() (Jaroslav Kysela) [2065575] - ASoC: SOF: intel: hda-trace: Pass the dma buffer pointer to hda_dsp_trace_prepare (Jaroslav Kysela) [2065575] - ASoC: zl38060: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: max9759: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: simple-amplifier: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: rt9120: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: dmic: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: rt5682: do not block workqueue if card is unbound (Jaroslav Kysela) [2065575] - ASoC: rt5668: do not block workqueue if card is unbound (Jaroslav Kysela) [2065575] - ASoC: rt5682s: do not block workqueue if card is unbound (Jaroslav Kysela) [2065575] - ASoC: tas2770: Insert post reset delay (Jaroslav Kysela) [2065575] - ASoC: samsung: Explicitly include gpiolib header (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Set gpio_spkr_en to None for max speaker amplifer in machine driver (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_xr_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw_range() (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw() (Jaroslav Kysela) [2065575] - ASoC: max98927: add missing header file (Jaroslav Kysela) [2065575] - ASoC: ops: Check for negative values before reading them (Jaroslav Kysela) [2065575] - ASoC: cs42l51: Improve error handling in cs42l51_remove() (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Do not allocate buffer for msg_data (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Drop header parameter from sof_ipc_tx_message_unlocked() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: cnl: Use pm_gate->hdr.cmd in cnl_compact_ipc_compress() (Jaroslav Kysela) [2065575] - ASoC: amd: renoir: Add check for acp configuration flags (Jaroslav Kysela) [2065575] - ASoC: amd: acp: acp-legacy: Add DMIC dai link support for Renoir (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add ACP init()/deinit() callback for Renoir. (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add generic PCI driver module for ACP device (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add PDM controller based dmic dai for Renoir (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add generic support for PDM controller on ACP (Jaroslav Kysela) [2065575] - ASoC: rk3399_gru_sound: Wire up DP jack detection (Jaroslav Kysela) [2065575] - ASoC: rt5682: Fix deadlock on resume (Jaroslav Kysela) [2065575] - ASoC: hdmi-codec: Fix OOB memory accesses (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: Move debugfs removal out of spinlock (Jaroslav Kysela) [2065575] - ASoC: SOF: trace: Simplify count adjustment in trace_read (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: Remove link assignment limitation (Jaroslav Kysela) [2065575] - ASoC: ops: Reject out of bounds values in snd_soc_put_xr_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Reject out of bounds values in snd_soc_put_volsw_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Reject out of bounds values in snd_soc_put_volsw() (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Add new system-clock-fixed flag (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Set sysclk on all components (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: add 512FS MCLK clock configuration (Jaroslav Kysela) [2065575] - ASoC: amd: sof-mach: Add support for RT5682S and RT1019 card (Jaroslav Kysela) [2065575] - ASoC: soc-generic-dmaengine-pcm: separate max_buffer_size assignment (Jaroslav Kysela) [2065575] - ASoC: samsung: remove unneeded ret variable (Jaroslav Kysela) [2065575] - ASoC: codecs: remove redundant ret variable (Jaroslav Kysela) [2065575] - ASoC: fsl-asoc-card: Add optional dt property for setting mclk-id (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: Add support for platform without amplifier (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: add support for systems without i915 audio (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Compare sdw adr directly (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: match sdw version on link_slaves_found (Jaroslav Kysela) [2065575] - ASoC: add support for TAS5805M digital amplifier (Jaroslav Kysela) [2065575] - ASoC: topology: Optimize soc_tplg_dapm_graph_elems_load behavior (Jaroslav Kysela) [2065575] - ASoC: topology: Allow TLV control to be either read or write (Jaroslav Kysela) [2065575] - ASoC: topology: Remove superfluous error prints (Jaroslav Kysela) [2065575] - ASoC: SOF: add flag to disable IMR restore to sof_debug (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-loader: add IMR restore support (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-loader: add SSP helper (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: use inclusive language for SSP clocks (Jaroslav Kysela) [2065575] - ASoC: amd: acp-mach: Fix Left and Right rt1019 amp devices (Jaroslav Kysela) [2065575] - ASoC: max9759: fix underflow in speaker_gain_control_put() (Jaroslav Kysela) [2065575] - ASoC: cpcap: Check for NULL pointer after calling of_get_child_by_name (Jaroslav Kysela) [2065575] - ASoC: simple-card: fix probe failure on platform component (Jaroslav Kysela) [2065575] - ASoC: xilinx: xlnx_formatter_pcm: Make buffer bytes multiple of period bytes (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Add support for hibernate memory retention mode (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Update handling of test key registers (Jaroslav Kysela) [2065575] - ASoC: wcd9335: Keep a RX port value for each SLIM RX mux (Jaroslav Kysela) [2065575] - ASoC: amd: acp: acp-mach: Change default RT1019 amp dev id (Jaroslav Kysela) [2065575] - ASoC: topology: Fix typo (Jaroslav Kysela) [2065575] - ASoC: fsl_asrc: refine the check of available clock divider (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcr_rt5640: Add support for external GPIO jack-detect (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcr_rt5640: Support retrieving the codec IRQ from the AMCR0F28 ACPI dev (Jaroslav Kysela) [2065575] - ASoC: rt5640: Add support for boards with an external jack-detect GPIO (Jaroslav Kysela) [2065575] - ASoC: rt5640: Allow snd_soc_component_set_jack() to override the codec IRQ (Jaroslav Kysela) [2065575] - ASoC: rt5640: Change jack_work to a delayed_work (Jaroslav Kysela) [2065575] - ASoC: rt5640: Fix possible NULL pointer deref on resume (Jaroslav Kysela) [2065575] - ASoC: ak4375: Fix unused function error (Jaroslav Kysela) [2065575] - ASoC: cs4265: Add a remove() function (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Correct handling of some registers in the cache (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Correct DSP power down (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Remove incorrect comment (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Add cs35l51/53 IDs (Jaroslav Kysela) [2065575] - ASoC: fsl_mqs: fix MODULE_ALIAS (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Create shared function for boost configuration (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Create shared function for setting channels (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Create shared function for errata patches (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Move power initializations to reg_sequence (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Move cs35l41_otp_unpack to shared code (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Convert tables to shared source code (Jaroslav Kysela) [2065575] - ASoC: samsung: idma: Check of ioremap return value (Jaroslav Kysela) [2065575] - ASoC: cs4265: Fix part number ID error message (Jaroslav Kysela) [2065575] - ALSA/ASoC: hda: move/rename snd_hdac_ext_stop_streams to hdac_stream.c (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Power on/off the speaker enable gpio pin based on DAPM callback. (Jaroslav Kysela) [2065575] - ASoC: mediatek: mt8173: reduce log verbosity in probe() (Jaroslav Kysela) [2065575] - ASoC: mediatek: mt8183: fix device_node leak (Jaroslav Kysela) [2065575] - ASoC: mediatek: mt8173: fix device_node leak (Jaroslav Kysela) [2065575] - ASoC: Intel/SOF: use set_stream() instead of set_tdm_slots() for HDAudio (Jaroslav Kysela) [2065575] - ASoC/soundwire: intel: simplify callbacks for params/hw_free (Jaroslav Kysela) [2065575] - ASOC: SOF: Intel: use snd_soc_dai_get_widget() (Jaroslav Kysela) [2065575] - ASoC: msm8916-wcd-analog: Use separate outputs for HPH_L/HPH_R (Jaroslav Kysela) [2065575] - ASoC: qcom: common: Parse "pin-switches" and "widgets" from DT (Jaroslav Kysela) [2065575] - ASoC: core: Add snd_soc_of_parse_pin_switches() from simple-card-utils (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: Use DEBUG log level for optional prints (Jaroslav Kysela) [2065575] - ASoC: SOF: debug: Use DEBUG log level for optional prints (Jaroslav Kysela) [2065575] - ASoC: SOF: Add clarifying comments for sof_core_debug and DSP dump flags (Jaroslav Kysela) [2065575] - ASoC: SOF: Rename snd_sof_get_status() and add kernel log level parameter (Jaroslav Kysela) [2065575] - ASoC: SOF: dsp_arch_ops: add kernel log level parameter for oops and stack (Jaroslav Kysela) [2065575] - ASoC: SOF: ops: Always print DSP Panic message but use different message (Jaroslav Kysela) [2065575] - ASoc: SOF: core: Update the FW boot state transition diagram (Jaroslav Kysela) [2065575] - ASoC: SOF: pm: Force DSP off on suspend in BOOT_FAILED state also (Jaroslav Kysela) [2065575] - ASoC: SOF: Set SOF_FW_BOOT_FAILED in case we have failure during boot (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Only allow sending of an IPC in SOF_FW_BOOT_COMPLETE state (Jaroslav Kysela) [2065575] - ASoC: SOF: Rename 'enum snd_sof_fw_state' to 'enum sof_fw_state' (Jaroslav Kysela) [2065575] - ASoC: SOF: Move the definition of enum snd_sof_fw_state to global header (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce new firmware state: SOF_FW_BOOT_READY_OK (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce new firmware state: SOF_FW_CRASHED (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a 'message' parameter to snd_sof_dsp_dbg_dump() (Jaroslav Kysela) [2065575] - ASoC: SOF: Add 'non_recoverable' parameter to snd_sof_dsp_panic() (Jaroslav Kysela) [2065575] - ASoC: SOF: Use sof_debug_check_flag() instead of sof_core_debug directly (Jaroslav Kysela) [2065575] - ASoC: SOF: core: Add simple wrapper to check flags in sof_core_debug (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-loader: Avoid re-defining the HDA_FW_BOOT_ATTEMPTS (Jaroslav Kysela) [2065575] - ASoC: SOF: ops: Use dev_warn() if the panic offsets differ (Jaroslav Kysela) [2065575] - ASoC: codecs: ak4375: Change invert controls to a stereo switch (Jaroslav Kysela) [2065575] - ASoC: Add AK4375 support (Jaroslav Kysela) [2065575] - ASoC: bcm: Use platform_get_irq() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: xlnx: Use platform_get_irq() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Remove duplicate dependency in Kconfig (Jaroslav Kysela) [2065575] - ASoC: SOF: AMD: simplify return status handling (Jaroslav Kysela) [2065575] - ASoC: amd: acp-config: Update sof_tplg_filename for SOF machines (Jaroslav Kysela) [2065575] - ASoC: amd: acp-config: Enable SOF audio for Google chrome boards. (Jaroslav Kysela) [2065575] - ASoC: sunxi: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: samsung: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: rockchip: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: qcom: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: mxs: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: img: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: generic: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: ti: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: ateml: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: tlv320aic31xx: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: ssm2305: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: simple-amplifier: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: sgtl5000: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: pcm3168a: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: max9860: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: max9759: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: es7241: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: ak4118: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: Intel: catpt: Streamline locals declaration for PCM-functions (Jaroslav Kysela) [2065575] - ASoC: Intel: catpt: Reduce size of catpt_component_open() (Jaroslav Kysela) [2065575] - ASoC: tegra20: spdif: Improve driver's code (Jaroslav Kysela) [2065575] - ASoC: tegra20: spdif: Support device-tree (Jaroslav Kysela) [2065575] - ASoC: tegra20: spdif: Set FIFO trigger level (Jaroslav Kysela) [2065575] - ASoC: SOF: Kconfig: Make the SOF_DEVELOPER_SUPPORT depend on SND_SOC_SOF (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Add null pointer check for substream->runtime (Jaroslav Kysela) [2065575] - ASoC: SOF: avoid casting "const" attribute away (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: remove support for RESUME in platform trigger (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: remove support for RESUME trigger (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: remove support for RESUME trigger (Jaroslav Kysela) [2065575] - ASoC: tegra20-spdif: stop setting slave_id (Jaroslav Kysela) [2065575] - ASoC: AMD: fix depend/select mistake on SND_AMD_ACP_CONFIG (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: read back control data from DSP (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop ctrl_type parameter for snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: SOF: control: Do not handle control notification with component type (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-audio: Drop the `cmd` member from struct snd_sof_control (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop ctrl_cmd parameter for snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Set control_data->cmd alongside scontrol->cmd (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop ipc_cmd parameter for snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Rename send parameter in snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: rt5663: Handle device_property_read_u32_array error codes (Jaroslav Kysela) [2065575] - ASoC: SOF: OF: Avoid reverse module dependency (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-probes: Constify sof_probe_compr_ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Remove pm_runtime_put_autosuspend() for SOF OF device (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: add comment on JasperLake support (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-dai: remove unused fields (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: add quirks for HDAudio DMA position information (Jaroslav Kysela) [2065575] - ASoC: SOF: hda-stream: only enable DPIB if needed (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-ctrl: apply symmetry for DPIB (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-stream: limit PROCEN workaround (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: ICL: move ICL-specific ops to icl.c (Jaroslav Kysela) [2065575] - ASoC: test-component: fix null pointer dereference. (Jaroslav Kysela) [2065575] - ASoC: amd: Convert to new style DAI format definitions (Jaroslav Kysela) [2065575] - ASoC: AMD: acp-config: fix missing dependency on SND_SOC_ACPI (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: Move rt1015 speaker amp to common file (Jaroslav Kysela) [2065575] - ASoC: rt5682s: add delay time to fix pop sound issue (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: add 'static' qualifiers for max98390 routes (Jaroslav Kysela) [2065575] - ASoC: amd: acp6x-pdm-dma: Constify static snd_soc_dai_ops (Jaroslav Kysela) [2065575] - ASoC: ti: davinci-mcasp: Get rid of duplicate of_node assignment (Jaroslav Kysela) [2065575] - ASoC: zl38060: Setup parent device and get rid of unnecessary of_node assignment (Jaroslav Kysela) [2065575] - ASoC: test-component: fix null pointer dereference. (Jaroslav Kysela) [2065575] - sound/soc: remove useless bool conversion to bool variable (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix undefined reference to core functions (Jaroslav Kysela) [2065575] - ASoC: rt5640: Fix the wrong state of the JD in the HDA header (Jaroslav Kysela) [2065575] - ASoC: codecs: wcd934x: remove redundant ret variable (Jaroslav Kysela) [2065575] - ASoC: tegra: Add master volume/mute control support (Jaroslav Kysela) [2065575] - ASoC: Intel: Skylake: Use NHLT API to search for blob (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: add max98390 2/4 speakers support (Jaroslav Kysela) [2065575] - ASoC: intel: boards: bytcht*: Constify static snd_soc_ops (Jaroslav Kysela) [2065575] - ASoC: Intel: hda_dsp_common: don't multiline PCM topology warning (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: tidyup soc_pcm_pointer()'s delay update method (Jaroslav Kysela) [2065575] - ASoC: intel: sst-mfld-platform-pcm: add .delay support (Jaroslav Kysela) [2065575] - ASoC: amd: acp-pcm-dma: add .delay support (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Use pR/pa to print resources/physical addresses (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix link problem (Jaroslav Kysela) [2065575] - ASoC: codecs/jz4770: Add missing gain control after DAC/ADC mixer (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: send DAI_CONFIG IPC during pause (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: dai: Expand DAI_CONFIG IPC flags (Jaroslav Kysela) [2065575] - ASoC: SOF: align the hw_free sequence with stop (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: move the check for prepared flag (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a helper for freeing PCM stream (Jaroslav Kysela) [2065575] - ASoC: SOF: call platform hw_free for paused streams during suspend (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: invoke platform hw_free for STOP/SUSPEND triggers (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: reset stream before coupling host and link DMA's (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: Add a helper function for stream reset (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: clear stream before freeing the DAI widget (Jaroslav Kysela) [2065575] - ASoC: rt5640: Add the HDA header support (Jaroslav Kysela) [2065575] - ASoC: uniphier: drop selecting non-existing SND_SOC_UNIPHIER_AIO_DMA (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add missing of_node_put() in platform_parse_resource() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: don't use list_for_each_entry_reverse() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: add .ack support for HDaudio platforms (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: add .ack callback support (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-pci-dev: use community key on all Up boards (Jaroslav Kysela) [2065575] - ASoC: stm32: spdifrx: add pm_runtime support (Jaroslav Kysela) [2065575] - ASoC: stm32: dfsdm: add pm_runtime support for audio (Jaroslav Kysela) [2065575] - ASoC: stm32: i2s: add pm_runtime support (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: free DAI widget during stop and suspend (Jaroslav Kysela) [2065575] - ASoC: SOF: add support for dynamic pipelines with multi-core (Jaroslav Kysela) [2065575] - ASoC: SOF: hda: don't use the core op for power up/power down (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove sof_load_pipeline_ipc() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: CNL/ICL/APL: set core_get/core_put ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: TGL: set core_get/put ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add ops for core_get and core_put (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce num_cores and ref count per core (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: expose get_chip_info() (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8m: Implement reset callback (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8m: Implement DSP start (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8m: Add runtime PM / System PM support (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8: Add runtime PM / System PM support (Jaroslav Kysela) [2065575] - ASoC: SOF: imx: Add code to manage DSP related clocks (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add DSP system PM callback for mt8195 (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add mt8195 dsp clock support (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add dai driver dsp ops callback for mt8195 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add mt8195 device descriptor (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add fw loader and mt8195 dsp ops to load firmware (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add support for Mediatek AFE DAI (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add mt8195 hardware support (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add support for SOF firmware authentication (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add trace logger support (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add support for AMD ACP DAIs (Jaroslav Kysela) [2065575] - ASoC: amd: acp-config: Remove legacy acpi based machine struct (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add Renoir PCI driver interface (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add machine driver dsp ops for Renoir platform (Jaroslav Kysela) [2065575] - ASoC: amd: Add module to determine ACP configuration (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add PCM stream callback for Renoir dai's (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add dai driver dsp ops callback for Renoir (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add IPC support for ACP IP block (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add fw loader and renoir dsp ops to load firmware (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add helper callbacks for ACP's DMA configuration (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add Renoir ACP HW support (Jaroslav Kysela) [2065575] - ASoC: stm32: sai: increase channels_max limit (Jaroslav Kysela) [2065575] - ASoC: SOF: debug: Add support for IPC message injection (Jaroslav Kysela) [2065575] - ASoC: SOF: intel: Use the generic helper to get the reply (Jaroslav Kysela) [2065575] - ASoC: SOF: imx: Use the generic helper to get the reply (Jaroslav Kysela) [2065575] - ASoC: SOF: utils: Add generic function to get the reply for a tx message (Jaroslav Kysela) [2065575] - ASoC: SOF: i.MX: simplify Kconfig (Jaroslav Kysela) [2065575] - ASoC: SOF: core: Unregister machine driver before IPC and debugfs (Jaroslav Kysela) [2065575] - ASoC: adau1701: Replace legacy gpio interface for gpiod (Jaroslav Kysela) [2065575] - ASoC: Intel: add sof-nau8825 machine driver (Jaroslav Kysela) [2065575] - ASoC: cs35l41: DSP Support (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: add link adr order check (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: remove get_next_be_id (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: remove sof_sdw_mic_codec_mockup_init (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: remove SOF_RT715_DAI_ID_FIX quirk (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: move DMIC link id overwrite to create_sdw_dailink (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: Use a fixed DAI link id for AMP (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: rename be_index/link_id to link_index (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_sdw: add SKU for Dell Latitude 9520 (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: return the original error number (Jaroslav Kysela) [2065575] - ASoC: SOF: trace: send DMA_TRACE_FREE IPC during release (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: update ipc_log_header() (Jaroslav Kysela) [2065575] - ALSA: mtpav: Don't call card private_free at probe error path (Jaroslav Kysela) [2065575] - ALSA: virmidi: Remove duplicated code (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machine (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for TongFang devices with pop noise (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for the Framework Laptop (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Dell Latitude 7520 (Jaroslav Kysela) [2065575] - ALSA: hda - fix unused Realtek function when PM is not enabled (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Yoga Duet 7 13ITL6 speakers (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Enable mute/micmute LEDs support for HP Laptops (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix mute led issue on thinkpad with cs35l41 s-codec (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo NP70PNP (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on EliteBook 845/865 G9 (Jaroslav Kysela) [2065575] - ALSA: hda/hdmi: add HDMI codec VID for Raptorlake-P (Jaroslav Kysela) [2065575] - ALSA: hda/hdmi: fix warning about PCM count when used with SOF (Jaroslav Kysela) [2065575] - ALSA: nm256: Don't call card private_free at probe error path (Jaroslav Kysela) [2065575] - ALSA: rme9652: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: hdspm: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: hdsp: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: oxygen: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: lx6464es: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: cmipci: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: aw2: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: als300: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: lola: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: bt87x: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: sis7019: Fix the missing error handling (Jaroslav Kysela) [2065575] - ALSA: via82xx: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: sonicvibes: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: rme96: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: rme32: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: riptide: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: maestro3: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: korg1212: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: intel8x0: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ice1724: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: fm801: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: es1968: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: es1938: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ens137x: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: emu10k1x: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: cs5535audio: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: cs4281: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ca0106: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: azt3328: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: au88x0: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: atiixp: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: als4000: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ali5451: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ad1889: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: echoaudio: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: add quirk for Lenovo Thinkpad X12 speakers (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo PD50PNT (Jaroslav Kysela) [2065575] - ALSA: hda: Avoid unsol event during RPM suspending (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix audio regression on Mi Notebook Pro 2020 (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Add new Dolphin HW variants (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Disable HSBIAS_SENSE_EN for Cyborg (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Support new Warlock MLK Variants (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Fix Full Scale Volume setting for all variants (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Re-order quirk table into ascending order (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Fix Warlock to use mono mic configuration (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Enable headset mic on Lenovo P360 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add mute and micmut LED support for Zbook Fury 17 G9 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add alc256-samsung-headphone fixup (Jaroslav Kysela) [2065575] - ALSA: pci: fix reading of swapped values from pcmreg in AC97 codec (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix LED on Zbook Studio G9 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machines (Jaroslav Kysela) [2065575] - ALSA: cmipci: Restore aux vol on suspend/resume (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for ASUS GA402 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek - Fix headset mic problem for a HP machine with alc671 (Jaroslav Kysela) [2065575] - ALSA: hda: Add AlderLake-PS variant PCI ID (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo NP50PNJ (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo NP70PNJ (Jaroslav Kysela) [2065575] - ALSA: lola: add a check for the return of vmalloc() (Jaroslav Kysela) [2065575] - ALSA: echoaudio: remove redundant assignment to variable bytes (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Make use of the helper component_compare_dev_name (Jaroslav Kysela) [2065575] - ALSA: hda/tegra: Update scratch reg. communication (Jaroslav Kysela) [2065575] - ALSA: hda/tegra: Hardcode GCAP ISS value on T234 (Jaroslav Kysela) [2065575] - ALSA: hda/tegra: Add Tegra234 hda driver support (Jaroslav Kysela) [2065575] - ALSA: hda: Expose codec cleanup and power-save functions (Jaroslav Kysela) [2065575] - ALSA: hda: Update and expose codec register procedures (Jaroslav Kysela) [2065575] - ALSA: hda: Update and expose snd_hda_codec_device_init() (Jaroslav Kysela) [2065575] - ALSA: hda/hdmi: add keep-alive support for ADL-P and DG2 (Jaroslav Kysela) [2065575] - ALSA: hda: Set max DMA segment size (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix deadlock by COEF mutex (Jaroslav Kysela) [2065575] - ALSA: hda: Fix missing codec probe on Shenker Dock 15 (Jaroslav Kysela) [2065575] - ALSA: hda: Fix regression on forced probe mask option (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Legion Y9000X 2019 (Jaroslav Kysela) [2065575] - ALSA: hda: Add PCI and HDMI IDs for Intel Raptor Lake (Jaroslav Kysela) [2065575] - ALSA: ca0106: Rename register macro names (Jaroslav Kysela) [2065575] - ALSA: hda: Fix driver index handling at re-binding (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add support for HP Laptops (Jaroslav Kysela) [2065575] - ALSA: hda: Skip codec shutdown in case the codec is not registered (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for ASUS GU603 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix silent output on Gigabyte X570 Aorus Xtreme after reboot from Windows (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix silent output on Gigabyte X570S Aorus Master (newer chipset) (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add missing fixup-model entry for Gigabyte X570 ALC1220 quirks (Jaroslav Kysela) [2065575] - ALSA: hda: realtek: Fix race at concurrent COEF updates (Jaroslav Kysela) [2065575] - ALSA: hda: Fix signedness of sscanf() arguments (Jaroslav Kysela) [2065575] - ALSA: hda: Fix UAF of leds class devs at unbinding (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Add new Warlock SKUs to patch_cs8409 (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Make cs35l41_hda_remove() return void (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Tidyup code (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Make use of the helper function dev_err_probe() (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Add missing default cases (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Move cs35l41* calls to its own symbol namespace (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Add calls to newly added test key function (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Avoid overwriting register patch (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: fix speakers and micmute on HP 855 G8 (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: fix double free on error in probe() (Jaroslav Kysela) [2065575] - ALSA: hda: Fix dependencies of CS35L41 on SPI/I2C buses (Jaroslav Kysela) [2065575] - ALSA: hda: Fix dependency on ASoC cs35l41 codec (Jaroslav Kysela) [2065575] - ALSA: hda: ALC287: Add Lenovo IdeaPad Slim 9i 14ITL5 speaker quirk (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add CS35L41 support for Thinkpad laptops (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add support for Legion 7 16ACHg6 laptop (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Add support for CS35L41 in HDA systems (Jaroslav Kysela) [2065575] - MAINTAINERS: Update Cirrus Logic codec driver maintainers (Jaroslav Kysela) [2065575] - ASoC: dt-bindings: cs42l42: Convert binding to yaml (Jaroslav Kysela) [2065575] - dt-bindings: remove 'interrupt-parent' from bindings (Jaroslav Kysela) [2065575] - ASoC: dt-bindings: cs42l42: Correct description of ts-inv (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Add warnings about DETECT_MODE and PLL_START (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Handle system suspend (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Change jack_detect_mutex to a lock of all IRQ handling (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Report full jack status when plug is detected (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Remove redundant pll_divout member (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Simplify reporting of jack unplug (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Remove redundant writes to RS_PLUG/RS_UNPLUG masks (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Remove redundant writes to DETECT_MODE (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Add control for audio slow-start switch (Jaroslav Kysela) [2065575] - ALSA: mixart: Add sanity check for timer notify streams (Jaroslav Kysela) [2065575] - ALSA: mixart: Reduce size of mixart_timer_notify (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Restore Rane SL-1 quirk (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Don't get sample rate for MCT Trigger 5 USB-to-HDMI (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Clear MIDI port active flag after draining (Jaroslav Kysela) [2065575] - ALSA: usb-audio: add mapping for MSI MAG X570S Torpedo MAX. (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Limit max buffer and period sizes per time (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Increase max buffer size (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Cap upper limits of buffer/period bytes for implicit fb (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Fix undefined behavior due to shift overflowing the constant (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Add mute TLV for playback volumes on RODE NT-USB (Jaroslav Kysela) [2065575] - ALSA: scarlett2: Add support for the internal "standalone" switch (Jaroslav Kysela) [2065575] - ALSA: scarlett2: Split scarlett2_config_items[] into 3 sections (Jaroslav Kysela) [2065575] - ALSA: usb-audio: add mapping for new Corsair Virtuoso SE (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Don't abort resume upon errors (Jaroslav Kysela) [2065575] - ALSA: usb-audio: revert to IMPLICIT_FB_FIXED_DEV for M-Audio FastTrack Ultra (Jaroslav Kysela) [2065575] - ALSA: usb-audio: remove redundant assignment to variable c (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Correct quirk for VF0770 (Jaroslav Kysela) [2065575] - ALSA: usb-audio: initialize variables that could ignore errors (Jaroslav Kysela) [2065575] - ALSA: usb-audio: scarlett2: Use struct_size() helper in scarlett2_usb() (Jaroslav Kysela) [2065575] - ALSA: fireworks: fix wrong return count shorter than expected by 4 bytes (Jaroslav Kysela) [2065575] - ALSA: firewire-lib: fix uninitialized flag for AV/C deferred transaction (Jaroslav Kysela) [2065575] - ALSA: memalloc: Add fallback SG-buffer allocations for x86 (Jaroslav Kysela) [2065575] - ALSA: core: Add snd_card_free_on_error() helper (Jaroslav Kysela) [2065575] - ALSA: pcm: Test for "silence" field in struct "pcm_format_data" (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix potential AB/BA lock with buffer_mutex and mmap_lock (Jaroslav Kysela) [2065575] - ALSA: pcm: Add stream lock during PCM reset ioctl operations (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent prealloc proc writes (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent prepare and hw_params/hw_free calls (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent read/write and buffer changes (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent hw_params and hw_free calls (Jaroslav Kysela) [2065575] - ALSA: oss: Release temporary buffers upon errors (Jaroslav Kysela) [2065575] - ALSA: oss: Fix PCM OSS buffer allocation overflow (Jaroslav Kysela) [2065575] - ALSA: core: Fix typo in 'PCM Timer Interface' help (Jaroslav Kysela) [2065575] - ALSA: seq: oss: fix typo (Jaroslav Kysela) [2065575] - ALSA: seq: oss: use kzalloc (Jaroslav Kysela) [2065575] - ALSA: memalloc: invalidate SG pages before sync (Jaroslav Kysela) [2065575] - ALSA: memalloc: Fix dma_need_sync() checks (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: Fix DPCM lockdep warning due to nested stream locks (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: fix BE handling of PAUSE_RELEASE (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: test refcount before triggering (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: serialize BE triggers (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: Fix and cleanup DPCM locking (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: align BE 'atomicity' with that of the FE (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: use GFP_ATOMIC for dpcm structure (Jaroslav Kysela) [2065575] - ASoC: soc-component: add snd_soc_pcm_component_delay() (Jaroslav Kysela) [2065575] - ASoC: soc-dai: update snd_soc_dai_delay() to snd_soc_pcm_dai_delay() (Jaroslav Kysela) [2065575] - ALSA: core: Simplify snd_power_ref_and_wait() with the standard macro (Jaroslav Kysela) [2065575] - ALSA: seq: virmidi: Add a drain operation (Jaroslav Kysela) [2065575] - ASoC: dai_dma: remove slave_id field (Jaroslav Kysela) [2065575] - ALSA: seq: Set upper limit of processed events (Jaroslav Kysela) [2065575] - ALSA: oss: remove useless NULL check before kfree (Jaroslav Kysela) [2065575] - ALSA: pcm: introduce INFO_NO_REWINDS flag (Jaroslav Kysela) [2065575] - ALSA: pcm: unconditionally check if appl_ptr is in 0..boundary range (Jaroslav Kysela) [2065575] - Revert "ASoC: Intel: soc-acpi: add entries in ADL match table" (Jaroslav Kysela) [2065575] - devlink: hold the instance lock during eswitch_mode callbacks (Petr Oros) [2101715] - netdevsim: replace vfs_lock with devlink instance lock (Petr Oros) [2101715] - netdevsim: replace port_list_lock with devlink instance lock (Petr Oros) [2101715] - devlink: add explicitly locked flavor of the rate node APIs (Petr Oros) [2101715] - bnxt: use the devlink instance lock to protect sriov (Petr Oros) [2101715] - devlink: pass devlink_port to port_split / port_unsplit callbacks (Petr Oros) [2101715] - devlink: hold the instance lock in port_split / port_unsplit callbacks (Petr Oros) [2101715] - eth: mlxsw: switch to explicit locking for port registration (Petr Oros) [2101715] - eth: nfp: replace driver's "pf" lock with devlink instance lock (Petr Oros) [2101715] - eth: nfp: wrap locking assertions in helpers (Petr Oros) [2101715] - devlink: expose instance locking and add locked port registering (Petr Oros) [2101715] - ethtool: don't drop the rtnl_lock half way thru the ioctl (Petr Oros) [2101715] - ethtool: handle info/flash data copying outside rtnl_lock (Petr Oros) [2101715] - ethtool: push the rtnl_lock into dev_ethtool() (Petr Oros) [2101715] - mlxsw: reg: Remove PMTM register (Ivan Vecera) [2101715] - mlxsw: spectrum: Use PMTDB register to obtain split info (Ivan Vecera) [2101715] - mlxsw: reg: Add Port Module To local DataBase Register (Ivan Vecera) [2101715] - mlxsw: spectrum: Use PLLP to get front panel number and split number (Ivan Vecera) [2101715] - mlxsw: reg: Add Port Local port to Label Port mapping Register (Ivan Vecera) [2101715] - mlxsw: spectrum: Move port SWID set before core port init (Ivan Vecera) [2101715] - mlxsw: spectrum: Move port module mapping before core port init (Ivan Vecera) [2101715] - mlxsw: spectrum: Bump minimum FW version to xx.2008.3326 (Ivan Vecera) [2101715] - bpf: fix build error due to missing bpf_perf_event.h header (Desnes A. Nunes do Rosario) [1908140] - powerpc/bpf: Fix use of user_pt_regs in uapi (Desnes A. Nunes do Rosario) [1908140] - net: ena: Do not waste napi skb cache (Michal Schmidt) [2097644] - net: ena: Extract recurring driver reset code into a function (Michal Schmidt) [2097644] - net: ena: Change the name of bad_csum variable (Michal Schmidt) [2097644] - net: ena: Add debug prints for invalid req_id resets (Michal Schmidt) [2097644] - net: ena: Remove ena_calc_queue_size_ctx struct (Michal Schmidt) [2097644] - net: ena: Move reset completion print to the reset function (Michal Schmidt) [2097644] - net: ena: Remove redundant return code check (Michal Schmidt) [2097644] - net: ena: Change ENI stats support check to use capabilities field (Michal Schmidt) [2097644] - net: ena: Add capabilities field with support for ENI stats capability (Michal Schmidt) [2097644] - net: ena: Change return value of ena_calc_io_queue_size() to void (Michal Schmidt) [2097644] - powerpc/ptrace: replace ptrace_report_syscall() with a tracehook call (Desnes A. Nunes do Rosario) [1992947] - powerpc/ptrace: Add support for PTRACE_SYSEMU (Desnes A. Nunes do Rosario) [1992947] - selftests/powerpc: New PTRACE_SYSEMU test (Desnes A. Nunes do Rosario) [1992947] - powerpc: Redefine TIF_32BITS thread flag (Desnes A. Nunes do Rosario) [1992947] - redhat: fix libnl3-devel BuildRequires for intel-speed-select (Jarod Wilson)- redhat: enable mtty module for internal testing (Jarod Wilson) [2071992] - tools/power/x86/intel-speed-select: v1.12 release (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: HFI support (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: OOB daemon mode (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: v1.11 release (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: Update max frequency (Martin McConnell) [2072658] - Spec fixes for intel-speed-select (Martin McConnell) [2072658] - Add BuildRequires libnl3-devel for intel-speed-select (Martin McConnell) [2072658] - xfs: fix soft lockup via spinning in filestream ag selection loop (Brian Foster) [2033293] - net: ping6: Fix memleak in ipv6_renew_options(). (Ivan Vecera) [2112339] - Input: i8042 - Add quirk for Fujitsu Lifebook T725 (Benjamin Tissoires) [2019942] - HID: amd_sfh: Modify the hid name (Benjamin Tissoires) [2090040] - HID: amd_sfh: Modify the bus name (Benjamin Tissoires) [2090040] - HID: amd_sfh: Add support for sensor discovery (Benjamin Tissoires) [2090040] - igc: Reinstate IGC_REMOVED logic and implement it properly (Corinna Vinschen) [2037969] - intel/igc:fix repeated words in comments (Corinna Vinschen) [2037969] - intel: remove unused macros (Corinna Vinschen) [2037969] - igc: Change type of the 'igc_check_downshift' method (Corinna Vinschen) [2037969] - igc: Remove unused phy_type enum (Corinna Vinschen) [2037969] - igc: Remove igc_set_spd_dplx method (Corinna Vinschen) [2037969] - igc: Fix suspending when PTM is active (Corinna Vinschen) [2037969] - igc: Fix BUG: scheduling while atomic (Corinna Vinschen) [2037969 2014971] - igc: Fix infinite loop in release_swfw_sync (Corinna Vinschen) [2037969] - igc: igc_write_phy_reg_gpy: drop premature return (Corinna Vinschen) [2037969] - igc: igc_read_phy_reg_gpy: drop premature return (Corinna Vinschen) [2037969] - igc: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Corinna Vinschen) [2037969] - igc: Remove useless DMA-32 fallback configuration (Corinna Vinschen) [2037969] - igc: Fix TX timestamp support for non-MSI-X platforms (Corinna Vinschen) [2037969] - igc: Do not enable crosstimestamping for i225-V models (Corinna Vinschen) [2037969] - igc: switch to napi_build_skb() (Corinna Vinschen) [2037969] - igc: Remove obsolete define (Corinna Vinschen) [2037969] - igc: Remove obsolete mask (Corinna Vinschen) [2037969] - igc: Remove obsolete nvm type (Corinna Vinschen) [2037969] - igc: Remove unused phy type (Corinna Vinschen) [2037969] - igc: Remove unused _I_PHY_ID define (Corinna Vinschen) [2037969] - igc: enable XDP metadata in driver (Corinna Vinschen) [2037969] - intel_idle: Fix false positive RCU splats due to incorrect hardirqs state (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/spec_ctrl: Enable RHEL only ibrs_always & retpoline,ibrs_user spectre_v2 options (Waiman Long) [2090229] - KVM: emulate: do not adjust size of fastop and setcc subroutines (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kvm: fix FASTOP_SIZE when return thunks are enabled (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - efi/x86: use naked RET on mixed mode call wrapper (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Remove apostrophe typo (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Use DECLARE_PER_CPU for x86_spec_ctrl_current (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/entry: Remove UNTRAIN_RET from native_irq_return_ldt (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Mark retbleed_strings static (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/asm/32: Fix ANNOTATE_UNRET_SAFE use on 32-bit (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Disable RRSBA behavior (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kexec: Disable RET on kexec (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Do not enable IBPB-on-entry when IBPB is not supported (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Add Cannon lake to RETBleed affected CPU list (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - redhat/configs: Add new mitigation configs for RetBleed CVEs (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retbleed: Add fine grained Kconfig knobs (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/cpu/amd: Enumerate BTC_NO (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/common: Stamp out the stepping madness (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Prevent RSB underflow before vmenter (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Fill RSB on vmexit for IBRS (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Fix IBRS handling after vmexit (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Prevent guest RSB poisoning attacks with eIBRS (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Convert launched argument to flags (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Flatten __vmx_vcpu_run() (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Remove x86_spec_ctrl_mask (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Use cached host SPEC_CTRL value for guest entry/exit (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Fix SPEC_CTRL write on SMT state change (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Fix firmware entry SPEC_CTRL handling (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/cpu/amd: Add Spectral Chicken (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Do IBPB fallback check only once (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Add retbleed=ibpb (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - objtool: Update Retpoline validation (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - intel_idle: Disable IBRS during long idle (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Report Intel retbleed vulnerability (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Split spectre_v2_select_mitigation() and spectre_v2_user_select_mitigation() (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Add spectre_v2=ibrs option to support Kernel IBRS (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Optimize SPEC_CTRL MSR writes (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/entry: Add kernel IBRS implementation (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Keep a per-CPU IA32_SPEC_CTRL value (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Enable STIBP for JMP2RET (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Add AMD retbleed= boot parameter (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Report AMD retbleed vulnerability (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: Add magic AMD return-thunk (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: Use return-thunk in asm code (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/sev: Avoid using __x86_return_thunk (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/vsyscall_emu/64: Don't use RET in vsyscall emulation (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kvm: Fix SETcc emulation for return thunks (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bpf: Use alternative RET encoding (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/ftrace: Use alternative RET encoding (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86,objtool: Create .return_sites (Josh Poimboeuf) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: Undo return-thunk damage (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retpoline: Use -mfunction-return (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retpoline: Swizzle retpoline thunk (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retpoline: Cleanup some #ifdefery (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/cpufeatures: Move RETPOLINE flags to word 11 (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kvm/vmx: Make noinstr clean (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - arch/x86/boot/compressed: Add -D__DISABLE_EXPORTS to kbuild flags (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: (Ab)use __DISABLE_EXPORTS to disable RETHUNK in real mode (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/entry: Remove skip_r11rcx (Waiman Long) [2090229] - cpuidle,intel_idle: Fix CPUIDLE_FLAG_IRQ_ENABLE (Waiman Long) [2090229] - x86/speculation/srbds: Do not try to turn mitigation off when not supported (Waiman Long) [2090229] - x86/ibt,paravirt: Use text_gen_insn() for paravirt_patch() (Waiman Long) [2090229] - x86/text-patching: Make text_gen_insn() play nice with ANNOTATE_NOENDBR (Waiman Long) [2090229] - x86/module: Fix the paravirt vs alternative order (Waiman Long) [2090229] - x86: Add straight-line-speculation mitigation (Waiman Long) [2090229] - x86: Prepare inline-asm for straight-line-speculation (Waiman Long) [2090229] - x86: Prepare asm files for straight-line-speculation (Waiman Long) [2090229] - x86: Use -mindirect-branch-cs-prefix for RETPOLINE builds (Waiman Long) [2090229] - x86: Move RETPOLINE*_CFLAGS to arch Makefile (Waiman Long) [2090229] - x86/entry: Add a fence for kernel entry SWAPGS in paranoid_entry() (Waiman Long) [2090229] - Makefile: remove stale cc-option checks (Waiman Long) [2090229] - tools headers: Remove broken definition of __LITTLE_ENDIAN (Waiman Long) [2090229] - tools arch: Update arch/x86/lib/mem{cpy,set}_64.S copies used in 'perf bench mem memcpy' (Waiman Long) [2090229] - x86: Add insn_decode_kernel() (Waiman Long) [2090229] - tools/insn: Restore the relative include paths for cross building (Waiman Long) [2090229] - x86/alternative: Use insn_decode() (Waiman Long) [2090229] - x86/insn: Add an insn_decode() API (Waiman Long) [2090229] - x86/insn: Rename insn_decode() to insn_decode_from_regs() (Waiman Long) [2090229] - x86/paravirt: Add new features for paravirt patching (Waiman Long) [2090229] - x86/alternative: Support not-feature (Waiman Long) [2090229] - x86/alternative: Merge include files (Waiman Long) [2090229] - objtool: Fix error handling for STD/CLD warnings (Waiman Long) [2090229] - x86/alternatives: Teach text_poke_bp() to emulate RET (Waiman Long) [2090229] - x86/ftrace: Have ftrace trampolines turn read-only at the end of system boot up (Waiman Long) [2090229] - x86/speculation: Change FILL_RETURN_BUFFER to work with objtool (Waiman Long) [2090229] - objtool: Add support for intra-function calls (Waiman Long) [2090229] - objtool: Rework allocating stack_ops on decode (Waiman Long) [2090229] - objtool: Better handle IRET (Waiman Long) [2090229] - objtool: Support multiple stack_op per instruction (Waiman Long) [2090229] - objtool: Make BP scratch register warning more robust (Waiman Long) [2090229] - x86/kexec: Make relocate_kernel_64.S objtool clean (Waiman Long) [2090229] - objtool: Introduce validate_return() (Waiman Long) [2090229] - Makefile: disallow data races on gcc-10 as well (Waiman Long) [2090229] - objtool: Improve call destination function detection (Waiman Long) [2090229] - x86/alternatives: Implement a better poke_int3_handler() completion scheme (Waiman Long) [2090229] - lib/: fix Kconfig indentation (Waiman Long) [2090229] - x86/alternatives: Use INT3_INSN_SIZE (Waiman Long) [2090229] - x86/kprobes: Fix ordering while text-patching (Waiman Long) [2090229] - x86/kprobes: Convert to text-patching.h (Waiman Long) [2090229] - x86/alternative: Shrink text_poke_loc (Waiman Long) [2090229] - x86/alternative: Remove text_poke_loc::len (Waiman Long) [2090229] - x86/ftrace: Use text_gen_insn() (Waiman Long) [2090229] - x86/alternative: Add text_opcode_size() (Waiman Long) [2090229] - x86/ftrace: Use text_poke() (Waiman Long) [2090229] - x86/ftrace: Use vmalloc special flag (Waiman Long) [2090229] - x86/ftrace: Explicitly include vmalloc.h for set_vm_flush_reset_perms() (Waiman Long) [2090229] - x86/alternatives: Add and use text_gen_insn() helper (Waiman Long) [2090229] - x86/alternatives, jump_label: Provide better text_poke() batching interface (Waiman Long) [2090229] - x86/asm: Annotate relocate_kernel_{32,64}.c (Waiman Long) [2090229] - x86: kprobes: Prohibit probing on instruction which has emulate prefix (Waiman Long) [2090229] - x86: Correct misc typos (Waiman Long) [2090229] - x86/speculation/mds: Apply more accurate check on hypervisor platform (Waiman Long) [2090229] - objtool: Convert insn type to enum (Waiman Long) [2090229] - objtool: Track original function across branches (Waiman Long) [2090229] - objtool: Rename elf_open() to prevent conflict with libelf from elftoolchain (Waiman Long) [2090229] - x86/ftrace: Make enable parameter bool where applicable (Waiman Long) [2090229] - x86/CPU/AMD: Don't force the CPB cap when running under a hypervisor (Waiman Long) [2090229] - objtool: Fix function fallthrough detection (Waiman Long) [2090229] - x86/paravirt: Detect over-sized patching bugs in paravirt_patch_call() (Waiman Long) [2090229] - x86/cpu/amd: Exclude 32bit only assembler from 64bit build (Waiman Long) [2090229] - x86/asm: Mark all top level asm statements as .text (Waiman Long) [2090229] - x86/cpu/bugs: Use __initconst for 'const' init data (Waiman Long) [2090229] - objtool: Add Direction Flag validation (Waiman Long) [2090229] - objtool: Rewrite add_ignores() (Waiman Long) [2090229] - x86/nospec, objtool: Introduce ANNOTATE_IGNORE_ALTERNATIVE (Waiman Long) [2090229] - x86/ftrace: Fix warning and considate ftrace_jmp_replace() and ftrace_call_replace() (Waiman Long) [2090229] - kbuild: Disable extra debugging info in .s output (Waiman Long) [2090229] - x86/CPU/AMD: Set the CPB bit unconditionally on F17h (Waiman Long) [2090229] - x86/alternatives: Print containing function (Waiman Long) [2090229] - x86/ftrace: Do not call function graph from dynamic trampolines (Waiman Long) [2090229] - ftrace: Create new ftrace_internal.h header (Waiman Long) [2090229] - kprobes/x86: Fix instruction patching corruption when copying more than one RIP-relative instruction (Waiman Long) [2090229] - tracing/Makefile: Fix handling redefinition of CC_FLAGS_FTRACE (Waiman Long) [2090229] - x86/paravirt: Remove unused paravirt bits (Waiman Long) [2090229] - x86/paravirt: Remove clobbers parameter from paravirt patch functions (Waiman Long) [2090229] - x86/paravirt: Make paravirt_patch_call() and paravirt_patch_jmp() static (Waiman Long) [2090229] - x86/l1tf: Fix build error seen if CONFIG_KVM_INTEL is disabled (Waiman Long) [2090229] - ftrace: Remove unused pointer ftrace_swapper_pid (Waiman Long) [2090229] - x86/spec_ctrl: Temporarily remove RHEL specific IBRS code (Waiman Long) [2090229] - net: bonding: fix use-after-free after 802.3ad slave unbind (Jonathan Toppins) [2109327] - net: bonding: fix possible NULL deref in rlb code (Jonathan Toppins) [2109327] - bonding: ARP monitor spams NETDEV_NOTIFY_PEERS notifiers (Jonathan Toppins) [2109327] - bonding: do not discard lowest hash bit for non layer3+4 hashing (Jonathan Toppins) [2109327] - bonding: helper macro __ATTR_RO to make code more clear (Jonathan Toppins) [2109327] - bonding: force carrier update when releasing slave (Jonathan Toppins) [2109327] - bonding: fix data-races around agg_select_timer (Jonathan Toppins) [2109327] - bonding: switch bond_net_exit() to batch mode (Jonathan Toppins) [2109327] - bonding: pair enable_port with slave_arr_updates (Jonathan Toppins) [2109327] - net: bonding: fix bond_xmit_broadcast return value error bug (Jonathan Toppins) [2109327] - tracing: Show size of requested perf buffer (Michael Petlan) [2103836] - tracing: Increase PERF_MAX_TRACE_SIZE to handle Sentinel1 and docker together (Michael Petlan) [2103836] - drivers/base/memory: determine and store zone for single-zone memory blocks (David Hildenbrand) [1997803] - drivers/base/node: rename link_mem_sections() to register_memory_block_under_node() (David Hildenbrand) [1997803] - drivers/base/node: consolidate node device subsystem initialization in node_dev_init() (David Hildenbrand) [1997803] - drivers/base/memory: introduce memory_block_{online,offline} (David Hildenbrand) [1997803] - mm/memory_hotplug: remove stale function declarations (David Hildenbrand) [1997803] - mm/memory_hotplug: remove HIGHMEM leftovers (David Hildenbrand) [1997803] - redhat/configs: remove CONFIG_MEMORY_HOTPLUG_SPARSE (David Hildenbrand) [1997803] - mm/memory_hotplug: restrict CONFIG_MEMORY_HOTPLUG to 64 bit (David Hildenbrand) [1997803] - mm/memory_hotplug: remove CONFIG_MEMORY_HOTPLUG_SPARSE (David Hildenbrand) [1997803] - mm/memory_hotplug: remove CONFIG_X86_64_ACPI_NUMA dependency from CONFIG_MEMORY_HOTPLUG (David Hildenbrand) [1997803] - memory: remove unused CONFIG_MEM_BLOCK_SIZE (David Hildenbrand) [1997803] - mm/memory_hotplug: disable the functionality for 32b (David Hildenbrand) [1997803] - include/linux/memory.h: drop fields 'hw' and 'phys_callback' from struct memory_block (David Hildenbrand) [1997803] - iommu/vt-d: Fix PCI bus rescan device hot add (Jerry Snitselaar) [2101591] - iommu/vt-d: Fix RID2PASID setup/teardown failure (Jerry Snitselaar) [2101591]- cifs: support share failover when remounting (Ronnie Sahlberg) [2095258] - cifs: avoid starvation when refreshing dfs cache (Ronnie Sahlberg) [2095258] - cifs: fix path comparison and hash calc (Ronnie Sahlberg) [2095258] - cifs: handle different charsets in dfs cache (Ronnie Sahlberg) [2095258] - spi: amd: Limit max transfer and message size (Sudheesh Mavila) [2047996] - redhat/configs: enable CONFIG_SPI_AMD for x86_64 (Sudheesh Mavila) [2047996] - spi: amd: Fix building without ACPI enabled (Sudheesh Mavila) [2047996] - spi: amd: Add support for version AMDI0062 (Sudheesh Mavila) [2047996] - spi: amd: Remove needless rom_addr variable (Sudheesh Mavila) [2047996] - spi: amd: Use iopoll for busy waiting (Sudheesh Mavila) [2047996] - spi: amd: Don't wait for a write-only transfer to finish (Sudheesh Mavila) [2047996] - spi: amd: Remove unneeded variable (Sudheesh Mavila) [2047996] - spi: amd: Refactor amd_spi_busy_wait (Sudheesh Mavila) [2047996] - spi: amd: Refactor code to use less spi_master_get_devdata (Sudheesh Mavila) [2047996] - spi: amd: Use devm_platform_ioremap_resource() in amd_spi_probe (Sudheesh Mavila) [2047996] - spi: spi-amd: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (Sudheesh Mavila) [2047996] - spi: amd: Drop superfluous member from struct amd_spi (Sudheesh Mavila) [2047996] - spi: amd: Fix refcount underflow on remove (Sudheesh Mavila) [2047996] - spi: amd: Drop duplicate driver data assignments (Sudheesh Mavila) [2047996] - spi: amd: Pass probe errors back to driver core (Sudheesh Mavila) [2047996] - spi: amd: Fix duplicate iounmap in error path (Sudheesh Mavila) [2047996] - spi: spi-amd: Fix a NULL vs IS_ERR() check in amd_spi_probe() (Sudheesh Mavila) [2047996] - spi: spi-amd: fix warning (Sudheesh Mavila) [2047996] - spi: spi-amd: Add AMD SPI controller driver support (Sudheesh Mavila) [2047996] - selftests/tc-testings: Be compatible with newer tc output (Hangbin Liu) [2100322] - selftests/net: enable lo.accept_local in psock_snd test (Hangbin Liu) [2100322] - selftests/net: Use kselftest skip code for skipped tests (Hangbin Liu) [2100322] - Bluetooth: SCO: Fix sco_send_frame returning skb->len (Gopal Tiwari) [1984641] - Bluetooth: Add bt_skb_sendmsg helper (Gopal Tiwari) [1984641] - Bluetooth: SCO: Replace use of memcpy_from_msg with bt_skb_sendmsg (Gopal Tiwari) [1984641] - Bluetooth: sco: Fix lock_sock() blockage by memcpy_from_msg() (Gopal Tiwari) [1984641] - platform/mellanox: mlxbf-pmc: Fix an IS_ERR() vs NULL bug in mlxbf_pmc_map_counters (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-lc: fix error code in mlxreg_lc_create_static_devices() (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-lc: Add initial support for Nvidia line card devices (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-io: Extend number of hwmon attributes (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-hotplug: Extend logic for hotplug devices operations (Mark Langsdorf) [2068297] - platform_data/mlxreg: Add new type to support modular systems (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-io: Fix read access of n-bytes size attributes (Mark Langsdorf) [2068297] - platform/mellanox: mlxbf-pmc: fix kernel-doc notation (Mark Langsdorf) [2068297] - platform/mellanox: Typo fix in the file mlxbf-bootctl.c (Mark Langsdorf) [2068297] - redhat/configs: Support QAT devices for x86 only (Vladis Dronov) [2040724] - crypto: qat - expose device config through sysfs for 4xxx (Vladis Dronov) [2040724] - crypto: qat - relocate and rename adf_sriov_prepare_restart() (Vladis Dronov) [2040724] - crypto: qat - change behaviour of adf_cfg_add_key_value_param() (Vladis Dronov) [2040724] - crypto: qat - expose device state through sysfs for 4xxx (Vladis Dronov) [2040724] - crypto: qat - Removes the x86 dependency on the QAT drivers (Vladis Dronov) [2040724] - crypto: qat - replace get_current_node() with numa_node_id() (Vladis Dronov) [2040724] - crypto: qat - add support for 401xx devices (Vladis Dronov) [2040724] - crypto: qat - re-enable registration of algorithms (Vladis Dronov) [2040724] - crypto: qat - honor CRYPTO_TFM_REQ_MAY_SLEEP flag (Vladis Dronov) [2040724] - crypto: qat - add param check for DH (Vladis Dronov) [2040724] - crypto: qat - add param check for RSA (Vladis Dronov) [2040724] - crypto: qat - remove dma_free_coherent() for DH (Vladis Dronov) [2040724] - crypto: qat - remove dma_free_coherent() for RSA (Vladis Dronov) [2040724] - crypto: qat - fix memory leak in RSA (Vladis Dronov) [2040724] - crypto: qat - add backlog mechanism (Vladis Dronov) [2040724] - crypto: qat - refactor submission logic (Vladis Dronov) [2040724] - crypto: qat - use pre-allocated buffers in datapath (Vladis Dronov) [2040724] - crypto: qat - set to zero DH parameters before free (Vladis Dronov) [2040724] - crypto: qat - Fix unsigned function returning negative constant (Vladis Dronov) [2040724] - crypto: qat - remove line wrapping for pfvf_ops functions (Vladis Dronov) [2040724] - crypto: qat - use u32 variables in all GEN4 pfvf_ops (Vladis Dronov) [2040724] - crypto: qat - replace disable_vf2pf_interrupts() (Vladis Dronov) [2040724] - crypto: qat - leverage the GEN2 VF mask definiton (Vladis Dronov) [2040724] - crypto: qat - rework the VF2PF interrupt handling logic (Vladis Dronov) [2040724] - crypto: qat - fix off-by-one error in PFVF debug print (Vladis Dronov) [2040724] - crypto: qat - fix wording and formatting in code comment (Vladis Dronov) [2040724] - crypto: qat - test PFVF registers for spurious interrupts on GEN4 (Vladis Dronov) [2040724] - crypto: qat - add check for invalid PFVF protocol version 0 (Vladis Dronov) [2040724] - crypto: qat - add missing restarting event notification in VFs (Vladis Dronov) [2040724] - crypto: qat - remove unnecessary tests to detect PFVF support (Vladis Dronov) [2040724] - crypto: qat - remove unused PFVF stubs (Vladis Dronov) [2040724] - crypto: qat - remove unneeded braces (Vladis Dronov) [2040724] - crypto: qat - fix ETR sources enabled by default on GEN2 devices (Vladis Dronov) [2040724] - crypto: qat - set COMPRESSION capability for DH895XCC (Vladis Dronov) [2040724] - crypto: qat - set CIPHER capability for DH895XCC (Vladis Dronov) [2040724] - crypto: qat - stop using iommu_present() (Vladis Dronov) [2040724] - crypto: qat - fix initialization of pfvf rts_map_msg structures (Vladis Dronov) [2040724] - crypto: qat - fix initialization of pfvf cap_msg structures (Vladis Dronov) [2040724] - crypto: qat - remove unneeded assignment (Vladis Dronov) [2040724] - crypto: qat - disable registration of algorithms (Vladis Dronov) [2040724] - crypto: qat - enable power management for QAT GEN4 (Vladis Dronov) [2040724] - crypto: qat - move and rename GEN4 error register definitions (Vladis Dronov) [2040724] - crypto: qat - add misc workqueue (Vladis Dronov) [2040724] - crypto: qat - don't cast parameter in bit operations (Vladis Dronov) [2040724] - crypto: qat - fix access to PFVF interrupt registers for GEN4 (Vladis Dronov) [2040724] - crypto: qat - fix a signedness bug in get_service_enabled() (Vladis Dronov) [2040724] - dlm: fix missing lkb refcount handling (Alexander Aring) [2084606] - scsi: storvsc: Fix unsigned comparison to zero (Mohammed Gamal) [2020774] - scsi: storvsc: Fix validation for unsolicited incoming packets (Mohammed Gamal) [2020774] - scsi: storvsc: Fix storvsc_queuecommand() memory leak (Mohammed Gamal) [2020774] - x86/kvm: Add kexec support for SEV Live Migration. (Mohammed Gamal) [2018614] - x86/kvm: Add guest support for detecting and enabling SEV Live Migration feature. (Mohammed Gamal) [2018614] - mm: x86: Invoke hypercall when page encryption status is changed (Mohammed Gamal) [2018614] - hv_netvsc: Fix potential dereference of NULL pointer (Mohammed Gamal) [2086611] - hv_netvsc: Add support for XDP_REDIRECT (Mohammed Gamal) [2086611] - hv_netvsc: Print value of invalid ID in netvsc_send_{completion,tx_complete}() (Mohammed Gamal) [2086611] - net: hyperv: remove use of bpf_op_t (Mohammed Gamal) [2086611] - hv_netvsc: Add check for kvmalloc_array (Mohammed Gamal) [2086611] - net: netvsc: remove break after return (Mohammed Gamal) [2086611] - hv_netvsc: Use bitmap_zalloc() when applicable (Mohammed Gamal) [2086611] - SMB3: EBADF/EIO errors in rename/open caused by race condition in smb2_compound_op (Ronnie Sahlberg) [2108871] - vsock/virtio: enable VQs early on probe (Stefano Garzarella) [2107594] - vsock/virtio: initialize vdev->priv before using VQs (Stefano Garzarella) [2107594] - vsock: each transport cycles only on its own sockets (Stefano Garzarella) [2107594] - vhost/vsock: don't check owner in vhost_vsock_stop() while releasing (Stefano Garzarella) [2107594] - vsock: remove vsock from connected table when connect is interrupted by a signal (Stefano Garzarella) [2107594] - ipv6: take care of disable_policy when restoring routes (Andrea Claudi) [2103894] - tools/testing/nvdimm: Fix security_init() symbol collision (Jeff Moyer) [2096791] - redhat: make kernel-devel pkgs Requires elfutils and gcc (Jarod Wilson) [1701282] - xhci: Fix null pointer dereference in resume if xhci has only one roothub (Dean Nelson) [2061791] - usb: dwc3: gadget: Move null pinter check to proper place (Dean Nelson) [2061791] - xhci: Don't defer primary roothub registration if there is only one roothub (Dean Nelson) [2061791] - USB: serial: pl2303: fix type detection for odd device (Dean Nelson) [2061791] - media: pvrusb2: fix array-index-out-of-bounds in pvr2_i2c_core_init (Dean Nelson) [2061791] - usb: xhci-mtk: remove bandwidth budget table (Dean Nelson) [2061791] - usb: xhci-mtk: fix fs isoc's transfer error (Dean Nelson) [2061791] - xhci: Allow host runtime PM as default for Intel Alder Lake N xHCI (Dean Nelson) [2061791] - xhci: prevent U2 link power state if Intel tier policy prevented U1 (Dean Nelson) [2061791] - xhci: use generic command timer for stop endpoint commands. (Dean Nelson) [2061791] - usb: host: xhci-plat: omit shared hcd if either root hub has no ports (Dean Nelson) [2061791] - usb: host: xhci-plat: prepare operation w/o shared hcd (Dean Nelson) [2061791] - usb: host: xhci-plat: create shared hcd after having added main hcd (Dean Nelson) [2061791] - xhci: prepare for operation w/o shared hcd (Dean Nelson) [2061791] - xhci: factor out parts of xhci_gen_setup() (Dean Nelson) [2061791] - xhci: Set HCD flag to defer primary roothub registration (Dean Nelson) [2061791] - usb: core: hcd: Add support for deferring roothub registration (Dean Nelson) [2061791] - thunderbolt: Fix buffer allocation of devices with no DisplayPort adapters (Dean Nelson) [2061791] - media: uvcvideo: Fix bit overflow in uvc_probe_video (Dean Nelson) [2061791] - media: uvcvideo: Fix missing check to determine if element is found in list (Dean Nelson) [2061791] - usb: typec: tcpci: Don't skip cleanup in .remove() on error (Dean Nelson) [2061791] - usb: cdc-wdm: fix reading stuck on device close (Dean Nelson) [2061791] - thunderbolt: Ignore port locked error in tb_port_wait_for_link_width() (Dean Nelson) [2061791] - thunderbolt: Add debug logging when lane is enabled/disabled (Dean Nelson) [2061791] - usb: dwc3: gadget: Return proper request status (Dean Nelson) [2061791] - usb: typec: mux: Check dev_set_name() return value (Dean Nelson) [2061791] - usb: dwc3: pci: Fix pm_runtime_get_sync() error checking (Dean Nelson) [2061791] - usb: dwc3: gadget: Replace list_for_each_entry_safe() if using giveback (Dean Nelson) [2061791] - usb: dwc3: core: Only handle soft-reset in DCTL (Dean Nelson) [2061791] - usb: dwc3: Try usb-role-switch first in dwc3_drd_init (Dean Nelson) [2061791] - usb: dwc3: core: Fix tx/rx threshold settings (Dean Nelson) [2061791] - USB: storage: karma: fix rio_karma_init return (Dean Nelson) [2061791] - xhci: Enable runtime PM on second Alderlake controller (Dean Nelson) [2061791] - usb: misc: fix improper handling of refcount in uss720_probe() (Dean Nelson) [2061791] - usb: typec: ucsi: Fix role swapping (Dean Nelson) [2061791] - usb: typec: ucsi: Fix reuse of completion structure (Dean Nelson) [2061791] - thunderbolt: Use different lane for second DisplayPort tunnel (Dean Nelson) [2061791] - thunderbolt: Dump path config space entries during discovery (Dean Nelson) [2061791] - thunderbolt: Use decimal number with port numbers (Dean Nelson) [2061791] - xhci: increase usb U3 -> U0 link resume timeout from 100ms to 500ms (Dean Nelson) [2061791] - xhci: stop polling roothubs after shutdown (Dean Nelson) [2061791] - USB: Fix xhci event ring dequeue pointer ERDP update issue (Dean Nelson) [2061791] - USB: storage: ums-realtek: fix error code in rts51x_read_mem() (Dean Nelson) [2061791] - usb: early: xhci-dbc: Fix xdbc number parsing (Dean Nelson) [2061791] - usb: early: xhci-dbc: Remove duplicate keep parsing (Dean Nelson) [2061791] - USB: serial: pl2303: fix GS type detection (Dean Nelson) [2061791] - usb: host: xhci: Remove some unnecessary return value initializations (Dean Nelson) [2061791] - usb: host: xhci: add blank line in xhci_halt() (Dean Nelson) [2061791] - usb: host: xhci: update hci_version operation in xhci_gen_setup() (Dean Nelson) [2061791] - usb: host: xhci: fix a comment typo in xhci_mem_init() (Dean Nelson) [2061791] - usb: host: xhci: use ffs() in xhci_mem_init() (Dean Nelson) [2061791] - xhci: fix runtime PM imbalance in USB2 resume (Dean Nelson) [2061791] - xhci: fix uninitialized string returned by xhci_decode_ctrl_ctx() (Dean Nelson) [2061791] - xhci: fix garbage USBSTS being logged in some cases (Dean Nelson) [2061791] - xhci: make xhci_handshake timeout for xhci_reset() adjustable (Dean Nelson) [2061791] - xhci: omit mem read just after allocation of trb (Dean Nelson) [2061791] - Revert "USB: serial: ch341: add new Product ID for CH341A" (Dean Nelson) [2061791] - usb: xhci: fix minmax.cocci warnings (Dean Nelson) [2061791] - usb: host: xhci: drop redundant checks (Dean Nelson) [2061791] - xhci: Allocate separate command structures for each LPM command (Dean Nelson) [2061791] - xhci: dbgtty: use IDR to support several dbc instances. (Dean Nelson) [2061791] - xhci: dbc: Don't call dbc_tty_init() on every dbc tty probe (Dean Nelson) [2061791] - xhci: dbc: Rename xhci_dbc_init and xhci_dbc_exit (Dean Nelson) [2061791] - xhci: dbc: create and remove dbc structure in dbgtty driver. (Dean Nelson) [2061791] - xhci: dbc: refactor xhci_dbc_init() (Dean Nelson) [2061791] - usb: dwc3: pci: Fix Bay Trail phy GPIO mappings (Dean Nelson) [2061791] - xhci: Prevent futile URB re-submissions due to incorrect return value. (Dean Nelson) [2061791] - xhci: re-initialize the HC during resume if HCE was set (Dean Nelson) [2061791] - usb: dwc3: pci: Add "snps,dis_u2_susphy_quirk" for Intel Bay Trail (Dean Nelson) [2061791] - usb: dwc3: pci: add support for the Intel Raptor Lake-S (Dean Nelson) [2061791] - usb: xhci-mtk: add support ip-sleep wakeup for mt8195 (Dean Nelson) [2061791] - usb: dwc3: gadget: Prevent core from processing stale TRBs (Dean Nelson) [2061791] - thunderbolt: Replace acpi_bus_get_device() (Dean Nelson) [2061791] - thunderbolt: Add internal xHCI connect flows for Thunderbolt 3 devices (Dean Nelson) [2061791] - thunderbolt: Add missing device ID to tb_switch_is_alpine_ridge() (Dean Nelson) [2061791] - thunderbolt: Disable LTTPR on Intel Titan Ridge (Dean Nelson) [2061791] - usb: ulpi: Call of_node_put correctly (Dean Nelson) [2061791] - usb: ulpi: Move of_node_put to ulpi_dev_release (Dean Nelson) [2061791] - usb: xhci-mtk: Use struct_size() helper in create_sch_ep() (Dean Nelson) [2061791] - usb: common: ulpi: Fix crash in ulpi_match() (Dean Nelson) [2061791] - usb: typec: tcpm: Do not disconnect when receiving VSAFE0V (Dean Nelson) [2061791] - usb: typec: tcpm: Do not disconnect while receiving VBUS off (Dean Nelson) [2061791] - xhci: Fresco FL1100 controller should not have BROKEN_MSI quirk set. (Dean Nelson) [2061791] - usb: typec: tcpci: don't touch CC line if it's Vconn source (Dean Nelson) [2061791] - thunderbolt: Remove useless DMA-32 fallback configuration (Dean Nelson) [2061791] - media: uvcvideo: Support devices that report an OT as an entity source (Dean Nelson) [2061791] - Revert "media: uvcvideo: Support devices that report an OT as an entity source" (Dean Nelson) [2061791] - thunderbolt: Add module parameter for CLx disabling (Dean Nelson) [2061791] - thunderbolt: Enable CL0s for Intel Titan Ridge (Dean Nelson) [2061791] - thunderbolt: Rename Intel TB_VSE_CAP_IECS capability (Dean Nelson) [2061791] - thunderbolt: Implement TMU time disruption for Intel Titan Ridge (Dean Nelson) [2061791] - thunderbolt: Move usb4_switch_wait_for_bit() to switch.c (Dean Nelson) [2061791] - thunderbolt: Add CL0s support for USB4 routers (Dean Nelson) [2061791] - thunderbolt: Add TMU uni-directional mode (Dean Nelson) [2061791] - xhci: use max() to make code cleaner (Dean Nelson) [2061791] - usb: ftdi-elan: fix memory leak on device disconnect (Dean Nelson) [2061791] - Revert "usb: early: convert to readl_poll_timeout_atomic()" (Dean Nelson) [2061791] - usb: typec: tcpm: fix tcpm unregister port but leave a pending timer (Dean Nelson) [2061791] - thunderbolt: Check return value of kmemdup() in icm_handle_event() (Dean Nelson) [2061791] - media: dw2102: Fix use after free (Dean Nelson) [2061791] - USB: serial: cp210x: fix CP2105 GPIO registration (Dean Nelson) [2061791] - usb: xhci-mtk: fix list_del warning when enable list debug (Dean Nelson) [2061791] - usb: core: config: fix validation of wMaxPacketValue entries (Dean Nelson) [2061791] - xhci: avoid race between disable slot command and host runtime suspend (Dean Nelson) [2061791] - xhci: Remove CONFIG_USB_DEFAULT_PERSIST to prevent xHCI from runtime suspending (Dean Nelson) [2061791] - thunderbolt: Do not dereference fwnode in struct device (Dean Nelson) [2061791] - thunderbolt: Add debug logging of DisplayPort resource allocation (Dean Nelson) [2061791] - thunderbolt: Do not program path HopIDs for USB4 routers (Dean Nelson) [2061791] - thunderbolt: Do not allow subtracting more NFC credits than configured (Dean Nelson) [2061791] - thunderbolt: Runtime resume USB4 port when retimers are scanned (Dean Nelson) [2061791] - thunderbolt: Tear down existing tunnels when resuming from hibernate (Dean Nelson) [2061791] - thunderbolt: Runtime PM activate both ends of the device link (Dean Nelson) [2061791] - thunderbolt: xdomain: Avoid potential stack OOB read (Dean Nelson) [2061791] - media: uvcvideo: fix division by zero at stream start (Dean Nelson) [2061791] - usb: typec: tcpm: Wait in SNK_DEBOUNCED until disconnect (Dean Nelson) [2061791] - xhci: Fix commad ring abort, write all 64 bits to CRCR register. (Dean Nelson) [2061791] - usb: dwc3: gadget: Skip reading GEVNTSIZn (Dean Nelson) [2061791] - usb: dwc3: gadget: Ignore Update Transfer cmd params (Dean Nelson) [2061791] - usb: dwc3: gadget: Skip checking Update Transfer status (Dean Nelson) [2061791] - usb: hub: Fix locking issues with address0_mutex (Dean Nelson) [2061791] - media: dib0700: Only touch one bit when start/stop an adapter (Dean Nelson) [2061791] - media: dib0700: cleanup start/stop streaming logic (Dean Nelson) [2061791] - media: dib0700: fix undefined behavior in tuner shutdown (Dean Nelson) [2061791] - media: s2255: fix control-message timeouts (Dean Nelson) [2061791] - media: pvrusb2: fix control-message timeouts (Dean Nelson) [2061791] - media: flexcop-usb: fix control-message timeouts (Dean Nelson) [2061791] - usb: hub: Fix usb enumeration issue due to address0 race (Dean Nelson) [2061791] - usb: typec: fusb302: Fix masking of comparator and bc_lvl interrupts (Dean Nelson) [2061791] - usb: dwc3: gadget: Fix null pointer exception (Dean Nelson) [2061791] - usb: dwc3: gadget: Check for L1/L2/U3 for Start Transfer (Dean Nelson) [2061791] - usb: dwc3: gadget: Ignore NoStream after End Transfer (Dean Nelson) [2061791] - usb: xhci-mtk: fix random remote wakeup (Dean Nelson) [2061791] - usb: xhci-mtk: remove unnecessary error check (Dean Nelson) [2061791] - USB: serial: keyspan: fix memleak on probe errors (Dean Nelson) [2061791] - USB: iowarrior: fix control-message timeouts (Dean Nelson) [2061791] - usb: dwc3: gadget: Skip resizing EP's TX FIFO if already resized (Dean Nelson) [2061791] - usb: dwc3: gadget: Change to dev_dbg() when queuing to inactive gadget/ep (Dean Nelson) [2061791] - xhci: Enable trust tx length quirk for Fresco FL11 USB controller (Dean Nelson) [2061791] - xhci: Fix command ring pointer corruption while aborting a command (Dean Nelson) [2061791] - USB: xhci: dbc: fix tty registration race (Dean Nelson) [2061791] - xhci: add quirk for host controllers that don't update endpoint DCS (Dean Nelson) [2061791] - xhci: guard accesses to ep_state in xhci_endpoint_reset() (Dean Nelson) [2061791] - media: usb: dvd-usb: fix uninit-value bug in dibusb_read_eeprom_byte() (Dean Nelson) [2061791] - USB: cdc-acm: fix break reporting (Dean Nelson) [2061791] - USB: cdc-acm: fix racy tty buffer accesses (Dean Nelson) [2061791] - usb: typec: tcpm: handle SRC_STARTUP state if cc changes (Dean Nelson) [2061791] - usb: typec: tcpci: don't handle vSafe0V event if it's not enabled (Dean Nelson) [2061791] - usb: xhci-mtk: use xhci_dbg() to print log (Dean Nelson) [2061791] - media: mxl111sf: change mutex_init() location (Dean Nelson) [2061791] - media: tm6000: Avoid card name truncation (Dean Nelson) [2061791] - media: gspca: Limit frame size to sizeimage. (Dean Nelson) [2061791] - media: uvcvideo: Don't spam the log in uvc_ctrl_restore_values() (Dean Nelson) [2061791] - media: uvcvideo: Increase the size of UVC_METADATA_BUF_SIZE (Dean Nelson) [2061791] - media: uvcvideo: Return -EIO for control errors (Dean Nelson) [2061791] - media: uvcvideo: Remove unused including (Dean Nelson) [2061791] - media: m5602_ov7660: remove the repeated declaration (Dean Nelson) [2061791] - media: dvb-usb: fix ununit-value in az6027_rc_query (Dean Nelson) [2061791] - thunderbolt: Fix -Wrestrict warning (Dean Nelson) [2061791] - USB: serial: cp210x: fix dropped characters with CP2102 (Dean Nelson) [2061791] - usb: dwc3: gadget: Avoid starting DWC3 gadget during UDC unbind (Dean Nelson) [2061791] - USB: serial: option: remove duplicate USB device ID (Dean Nelson) [2061791] - USB: serial: mos7840: remove duplicated 0xac24 device ID (Dean Nelson) [2061791] - USB: cdc-acm: fix minor-number release (Dean Nelson) [2061791] - usb: dwc3: reference clock period configuration (Dean Nelson) [2061791] - usb: xhci-mtk: allow bandwidth table rollover (Dean Nelson) [2061791] - usb: xhci-mtk: modify the SOF/ITP interval for mt8195 (Dean Nelson) [2061791] - usb: xhci-mtk: add a member of num_esit (Dean Nelson) [2061791] - usb: xhci-mtk: check boundary before check tt (Dean Nelson) [2061791] - usb: xhci-mtk: update fs bus bandwidth by bw_budget_table (Dean Nelson) [2061791] - usb: xhci-mtk: support option to disable usb2 ports (Dean Nelson) [2061791] - usb: xhci-mtk: fix use-after-free of mtk->hcd (Dean Nelson) [2061791] - usb: dwc3: pci: add support for AMD's newer generation platform. (Dean Nelson) [2061791] - xhci: Add bus number to some debug messages (Dean Nelson) [2061791] - xhci: Add additional dynamic debug to follow URBs in cancel and error cases. (Dean Nelson) [2061791] - Revert "USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set" (Dean Nelson) [2061791] - xhci: Fix failure to give back some cached cancelled URBs. (Dean Nelson) [2061791] - xhci: fix even more unsafe memory usage in xhci tracing (Dean Nelson) [2061791] - xhci: fix unsafe memory usage in xhci tracing (Dean Nelson) [2061791] - usb: typec: tcpm: Support non-PD mode (Dean Nelson) [2061791] - USB: serial: cp210x: determine fw version for CP2105 and CP2108 (Dean Nelson) [2061791] - USB: serial: cp210x: clean up type detection (Dean Nelson) [2061791] - USB: serial: cp210x: clean up set-chars request (Dean Nelson) [2061791] - USB: serial: cp210x: clean up control-request timeout (Dean Nelson) [2061791] - USB: serial: cp210x: fix flow-control error handling (Dean Nelson) [2061791] - USB: serial: cp210x: fix control-characters error handling (Dean Nelson) [2061791] - tty: drop put_tty_driver (Dean Nelson) [2061791] - media: dvb-usb: fix uninit-value in vp702x_read_mac_addr (Dean Nelson) [2061791] - media: dvb-usb: fix uninit-value in dvb_usb_adapter_dvb_init (Dean Nelson) [2061791] - usb: renesas-xhci: Remove renesas_xhci_pci_exit() (Dean Nelson) [2061791] - usb: dwc3: Resize TX FIFOs to meet EP bursting requirements (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: fix UAF (Dean Nelson) [2061791] - usb: dwc3: gadget: Clear DEP flags after stop transfers in ep disable (Dean Nelson) [2061791] - usb: dwc3: gadget: Set gadget_max_speed when set ssp_rate (Dean Nelson) [2061791] - usb: dwc3: gadget: Prevent EP queuing while stopping transfers (Dean Nelson) [2061791] - media: lmedm04: Fix misuse of comma (Dean Nelson) [2061791] - media: tm6000: Fix memleak in tm6000_start_stream (Dean Nelson) [2061791] - usb: dwc3: gadget: Restart DWC3 gadget when enabling pullup (Dean Nelson) [2061791] - memstick: Skip allocating card when removing host (Dean Nelson) [2061791] - USB: Replace zero-length array with flexible-array member (Dean Nelson) [2061791] - USB: xhci: fix 'broken_suspend' placement in struct xchi_hcd (Dean Nelson) [2061791] - Revert "[usb] USB: xhci: fix 'broken_suspend' placement in struct xchi_hcd" (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: Support runtime power management (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: Use ms_dev() helper (Dean Nelson) [2061791] - memstick: Prevent memstick host from getting runtime suspended during card detection (Dean Nelson) [2061791] - misc: rtsx_usb: Use USB remote wakeup signaling for card insertion detection (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: Add missing pm_runtime_disable() in probe function (Dean Nelson) [2061791]- RDMA/qedr: Fix reporting QP timeout attribute (Kamal Heib) [2083620] - NFSD: Handle COPYer - Not suppored in RHEL8 (Benjamin Coddington) [2108628] - NFSD add ca_source_server<> to COPY (Benjamin Coddington) [2108628] - NFS NFSD: defining nl4_servers structure needed by both (Benjamin Coddington) [2108628] - fix backport powerpc/uaccess: get rid of small constant size cases in raw_copy_{to,from}_user() (Diego Domingos) [2106984] - bpf: Enable bpf_ktime_get_coarse_ns helper (Viktor Malik) [2105133] - kernel/resource: Introduce request_mem_region_muxed() (Sudheesh Mavila) [2047999] - i2c: piix4: Enable EFCH MMIO for Family 17h+ (Sudheesh Mavila) [2047999] - i2c: piix4: Add EFCH MMIO support for SMBus port select (Sudheesh Mavila) [2047999] - i2c: piix4: Add EFCH MMIO support to SMBus base address detect (Sudheesh Mavila) [2047999] - i2c: piix4: Add EFCH MMIO support to region request and release (Sudheesh Mavila) [2047999] - i2c: piix4: Move SMBus port selection into function (Sudheesh Mavila) [2047999] - i2c: piix4: Move SMBus controller base address detect into function (Sudheesh Mavila) [2047999] - i2c: piix4: Move port I/O region request/release code into functions (Sudheesh Mavila) [2047999] - i2c: piix4: Replace hardcoded memory map size with a #define (Sudheesh Mavila) [2047999] - i2c: piix4: Detect secondary SMBus controller on AMD AM4 chipsets (Sudheesh Mavila) [2047999] - i2c: piix4: Add ACPI support (Sudheesh Mavila) [2047999] - i2c: piix4: Fix probing of reserved ports on AMD Family 16h Model 30h (Sudheesh Mavila) [2047999] - i2c: piix4: Fix port selection for AMD Family 16h Model 30h (Sudheesh Mavila) [2047999] - i2c-piix4: Add Hygon Dhyana SMBus support (Sudheesh Mavila) [2047999] - tracing: Remove WARN_ON in start_thread() (Jerome Marchand) [2090967] - net: usb: Fix spelling mistakes (José Ignacio Tornos Martínez) [1984353] - net: usb: cdc_ether: record speed in status method (José Ignacio Tornos Martínez) [1984353] - net: usb: usbnet: add method for reporting speed without MII (José Ignacio Tornos Martínez) [1984353] - e1000e: Fix possible overflow in LTR decoding (Ken Cox) [2037965] - e1000e: Print PHY register address when MDI read/write fails (Ken Cox) [2037965] - e1000e: Correct NVM checksum verification flow (Ken Cox) [2037965] - e1000e: Fix possible HW unit hang after an s0ix exit (Ken Cox) [2037965 2049952] - e1000e: Handshake with CSME starts from ADL platforms (Ken Cox) [2037965 2049952] - e1000e: Separate ADP board type from TGP (Ken Cox) [2037965 2049952] - e1000e: Remove useless DMA-32 fallback configuration (Ken Cox) [2037965] - e1000e: Remove redundant statement (Ken Cox) [2037965] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2037965] - net: e1000e: solve insmod 'Unknown symbol mutex_lock' error (Ken Cox) [2037965] - RDMA/irdma: Add SW mechanism to generate completions on error (Kamal Heib) [2100316] - RDMA/irdma: Remove the redundant variable (Kamal Heib) [2100316] - RDMA/irdma: Add support for DSCP (Kamal Heib) [2100316] - RDMA/irdma: Use irq_update_affinity_hint() (Kamal Heib) [2100316] - RDMA/irdma: Set protocol based on PF rdma_mode flag (Kamal Heib) [2100316 2096481] - virtio-ring: fix DMA metadata flags (Cindy Lu) [1969742] - virtio_ring: fix typos in vring_desc_extra (Jason Wang) [1969742] - virtio-ring: store DMA metadata in desc_extra for split virtqueue (Jason Wang) [1969742] - virtio: use err label in __vring_new_virtqueue() (Jason Wang) [1969742] - virtio_ring: introduce virtqueue_desc_add_split() (Jason Wang) [1969742] - virtio_ring: secure handling of mapping errors (Jason Wang) [1969742] - virtio-ring: factor out desc_extra allocation (Jason Wang) [1969742] - virtio_ring: rename vring_desc_extra_packed (Jason Wang) [1969742] - virtio-ring: maintain next in extra state for packed virtqueue (Jason Wang) [1969742] - drivers/base: fix userspace break from using bin_attributes for cpumap and cpulist (Phil Auld) [2089715] - rpminspect: disable abidiff scanning (Jarod Wilson)- Netvsc: Call hv_unmap_memory() in the netvsc_device_remove() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Release cpu lock in error case (Mohammed Gamal) [2086613] - Drivers: hv: Fix syntax errors in comments (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Don't assign VMbus channel interrupts to isolated CPUs (Mohammed Gamal) [2086613] - hv_balloon: Fix balloon_probe() and balloon_remove() error handling (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: fix typo in comment (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Remove support for Hyper-V 2008 and Hyper-V 2008R2/Win7 (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Refactor the ring-buffer iterator functions (Mohammed Gamal) [2086613] - hv_sock: Copy packets sent by Hyper-V out of the ring buffer (Mohammed Gamal) [2086613] - hv_sock: Check hv_pkt_iter_first_raw()'s return value (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Accept hv_sock offers in isolated guests (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Introduce {lock,unlock}_requestor() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Introduce vmbus_request_addr_match() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Introduce vmbus_sendpacket_getid() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix handling of messages with transaction ID of zero (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Add VMbus IMC device to unsupported list (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Replace smp_store_mb() with virt_store_mb() (Mohammed Gamal) [2086613] - Drivers: hv: balloon: Disable balloon and hot-add accordingly (Mohammed Gamal) [2086613] - Drivers: hv: balloon: Support status report for larger page sizes (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Prevent load re-ordering when reading ring buffer (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix potential crash on module unload (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix initialization of device object in vmbus_device_register() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Deactivate sysctl_record_panic_msg by default in isolated guests (Mohammed Gamal) [2086613] - drivers: hv: log when enabling crash_kexec_post_notifiers (Mohammed Gamal) [2086613] - Drivers: hv: utils: Make use of the helper macro LIST_HEAD() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Rework use of DMA_BIT_MASK(64) (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix memory leak in vmbus_add_channel_kobj (Mohammed Gamal) [2086613] - Drivers: hv: Compare cpumasks and not their weights in init_vp_index() (Mohammed Gamal) [2086613] - Drivers: hv: Rename 'alloced' to 'allocated' (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Use struct_size() helper in kmalloc() (Mohammed Gamal) [2086613] - Drivers: hv: balloon: account for vmbus packet header in max_pkt_size (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Initialize request offers message for Isolation VM (Mohammed Gamal) [2086613] - Drivers: hv: Fix definition of hypercall input & output arg variables (Mohammed Gamal) [2086613] - net: netvsc: Add Isolation VM support for netvsc driver (Mohammed Gamal) [2086613] - scsi: storvsc: Add Isolation VM support for storvsc driver (Mohammed Gamal) [2086613] - Drivers: hv : vmbus: Adding NULL pointer check (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Remove unused code to check for subchannels (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Initialize VMbus ring buffer for Isolation VM (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Add SNP support for VMbus channel initiate message (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Mark vmbus ring buffer visible to host in Isolation VM (Mohammed Gamal) [2086613] - SUNRPC: Don't leak sockets in xs_local_connect() (Jeffrey Layton) [2089429] - SUNRPC: clean up some inconsistent indenting (Jeffrey Layton) [2089429] - SUNRPC: Ensure we flush any closed sockets before xs_xprt_free() (Jeffrey Layton) [2089429] - SUNRPC: Don't call connect() more than once on a TCP socket (Jeffrey Layton) [2089429] - net: openvswitch: fix misuse of the cached connection on tuple changes (Timothy Redaelli) [2099213] - sfc: fix considering that all channels have TX queues (Íñigo Huguet) [1851823] - sfc: fix wrong tx channel offset with efx_separate_tx_channels (Íñigo Huguet) [1851823] - intel/igb:fix repeated words in comments (Corinna Vinschen) [2037959] - igb: remove unexpected word "the" (Corinna Vinschen) [2037959] - igb: Make DMA faster when CPU is active on the PCIe link (Corinna Vinschen) [2037959] - igb: fix a use-after-free issue in igb_clean_tx_ring (Corinna Vinschen) [2037959] - igb: Remove duplicate defines (Corinna Vinschen) [2037959] - igb: skip phy status check where unavailable (Corinna Vinschen) [2037959] - igb: Convert kmap() to kmap_local_page() (Corinna Vinschen) [2037959] - igb: zero hwtstamp by default (Corinna Vinschen) [2037959] - igb: Remove useless DMA-32 fallback configuration (Corinna Vinschen) [2037959] - PCI: Work around Intel I210 ROM BAR overlap defect (Corinna Vinschen) [2037959] - igb: support EXTTS on 82580/i354/i350 (Corinna Vinschen) [2037959] - igb: support PEROUT on 82580/i354/i350 (Corinna Vinschen) [2037959] - igb: move PEROUT and EXTTS isr logic to separate functions (Corinna Vinschen) [2037959] - igb: move SDP config initialization to separate function (Corinna Vinschen) [2037959] - igb: switch to napi_build_skb() (Corinna Vinschen) [2037959] - igb: remove never changed variable `ret_val' (Corinna Vinschen) [2037959] - NFSv4: Add an fattr allocation to _nfs4_discover_trunking() (Scott Mayhew) [2096393] - sunrpc: set cl_max_connect when cloning an rpc_clnt (Scott Mayhew) [2096393] - NFSv4.1 mark qualified async operations as MOVEABLE tasks (Scott Mayhew) [2096393] - powerpc/rtas: Allow ibm,platform-dump RTAS call with null buffer address (Desnes A. Nunes do Rosario) [2095041] - audit: free module name (Richard Guy Briggs) [2100259] - bfq: fix blkio cgroup leakage v4 (Ming Lei) [2093206] - scsi: scsi_dh_alua: Properly handle the ALUA transitioning state (Ewan D. Milne) [1992870] - mm: sparse: remove __section_nr() function (Mark Langsdorf) [2067280] - mm: sparse: pass section_nr to find_memory_block (Mark Langsdorf) [2067280] - mm: sparse: pass section_nr to section_mark_present (Mark Langsdorf) [2067280] - headers/uninline: Uninline single-use function: kobject_has_children() (Mark Langsdorf) [2067280] - arch_topology: Do not set llc_sibling if llc_id is invalid (Mark Langsdorf) [2067280] - topology: make core_mask include at least cluster_siblings (Mark Langsdorf) [2067280] - regmap: allow a defined reg_base to be added to every address (Mark Langsdorf) [2067280] - regmap: add configurable downshift for addresses (Mark Langsdorf) [2067280] - drivers/base/dd.c : Remove the initial value of the global variable (Mark Langsdorf) [2067280] - devres: fix typos in comments (Mark Langsdorf) [2067280] - base: soc: Make soc_device_match() simpler and easier to read (Mark Langsdorf) [2067280] - driver core: Refactor sysfs and drv/bus remove hooks (Mark Langsdorf) [2067280] - driver core: Refactor multiple copies of device cleanup (Mark Langsdorf) [2067280] - arch_topology: obtain cpu capacity using information from CPPC (Mark Langsdorf) [2067280] - PM: core: keep irq flags in device_pm_check_callbacks() (Mark Langsdorf) [2067280] - PM: sleep: Add device name to suspend_report_result() (Mark Langsdorf) [2067280] - PM: runtime: Have devm_pm_runtime_enable() handle pm_runtime_dont_use_autosuspend() (Mark Langsdorf) [2067280] - PM: sleep: wakeup: Fix typos in comments (Mark Langsdorf) [2067280] - PM: domains: Fix sleep-in-atomic bug caused by genpd_debug_remove() (Mark Langsdorf) [2067280] - PM: domains: use dev_err_probe() to simplify error handling (Mark Langsdorf) [2067280] - PM: domains: Prevent power off for parent unless child is in deepest state (Mark Langsdorf) [2067280] - driver core: cleanup double words comments (Mark Langsdorf) [2067280] - device property: Don't split fwnode_get_irq*() APIs in the code (Mark Langsdorf) [2067280] - regmap: irq: cleanup comments (Mark Langsdorf) [2067280] - platform: use dev_err_probe() in platform_get_irq_byname() (Mark Langsdorf) [2067280] - devtmpfs: drop redundant fs parameters from internal fs (Mark Langsdorf) [2067280] - component: Replace most references to 'master' with 'aggregate device' (Mark Langsdorf) [2067280] - device property: Add fwnode_irq_get_byname (Mark Langsdorf) [2067280] - regmap-irq: Fix typo in comment (Mark Langsdorf) [2067280] - driver core: Free DMA range map when device is released (Mark Langsdorf) [2067280] - regmap-irq: Update interrupt clear register for proper reset (Mark Langsdorf) [2067280] - PM: s2idle: ACPI: Fix wakeup interrupts handling (Mark Langsdorf) [2067280] - devtmpfs regression fix: reconfigure on each mount (Mark Langsdorf) [2067280] - regmap: debugfs: Fix indentation (Mark Langsdorf) [2067280] - regmap: Call regmap_debugfs_exit() prior to _init() (Mark Langsdorf) [2067280] - driver core: Make bus notifiers in right order in really_probe() (Mark Langsdorf) [2067280] - driver core: Move driver_sysfs_remove() after driver_sysfs_add() (Mark Langsdorf) [2067280] - driver core: Simplify async probe test code by using ktime_ms_delta() (Mark Langsdorf) [2067280] - PM: runtime: Simplify locking in pm_runtime_put_suppliers() (Mark Langsdorf) [2067280] - software node: fix wrong node passed to find nargs_prop (Mark Langsdorf) [2067280] - driver core: platform: document registration-failure requirement (Mark Langsdorf) [2067280] - device property: Add fwnode_iomap() (Mark Langsdorf) [2067280] - device property: Use fwnode_graph_for_each_endpoint() macro (Mark Langsdorf) [2067280] - device property: Implement fwnode_graph_get_endpoint_count() (Mark Langsdorf) [2067280] - device property: Fix documentation for FWNODE_GRAPH_DEVICE_DISABLED (Mark Langsdorf) [2067280] - rtc: Check return value from mc146818_get_time() (Mark Langsdorf) [2067280] - device property: Check fwnode->secondary when finding properties (Mark Langsdorf) [2067280] - topology/sysfs: rework book and drawer topology ifdefery (Mark Langsdorf) [2067280] - topology/sysfs: export cluster attributes only if an architectures has support (Mark Langsdorf) [2067280] - topology/sysfs: export die attributes only if an architectures has support (Mark Langsdorf) [2067280] - driver core: Don't call device_remove_properties() from device_del() (Mark Langsdorf) [2067280] - regmap: allow to define reg_update_bits for no bus configuration (Mark Langsdorf) [2067280] - platform/x86: amd-pmc: Set QOS during suspend on CZN w/ timer wakeup (Mark Langsdorf) [2067250] - PM: sleep: Fix error handling in dpm_prepare() (Mark Langsdorf) [2067250] - PM: sleep: Avoid calling put_device() under dpm_list_mtx (Mark Langsdorf) [2067250] - PM: sleep: Fix runtime PM based cpuidle support (Mark Langsdorf) [2067250] - PM / wakeirq: support enabling wake-up irq after runtime_suspend called (Mark Langsdorf) [2067250] - device property: Drop redundant NULL checks (Mark Langsdorf) [2067250] - PM: sleep: Pause cpuidle later and resume it earlier during system transitions (Mark Langsdorf) [2067250] - PM: suspend: Do not pause cpuidle in the suspend-to-idle path (Mark Langsdorf) [2067250] - regmap: spi: Set regmap max raw r/w from max_transfer_size (Mark Langsdorf) [2067250] - PM: sleep: Do not let "syscore" devices runtime-suspend during system transitions (Mark Langsdorf) [2067250] - component: do not leave master devres group open after bind (Mark Langsdorf) [2067250] - driver core: Provide device_match_acpi_handle() helper (Mark Langsdorf) [2067250] - regmap: Fix possible double-free in regcache_rbtree_exit() (Mark Langsdorf) [2067250] - device property: build kunit tests without structleak plugin (Mark Langsdorf) [2067250] - driver core: Reject pointless SYNC_STATE_ONLY device links (Mark Langsdorf) [2067250] - firmware_loader: add a sanity check for firmware_request_builtin() (Mark Langsdorf) [2067250] - firmware_loader: split built-in firmware call (Mark Langsdorf) [2067250] - firmware_loader: fix pre-allocated buf built-in firmware use (Mark Langsdorf) [2067250] - drivers/base/component.c: remove superfluous header files from component.c (Mark Langsdorf) [2067250] - drivers/base/arch_topology.c: remove superfluous header (Mark Langsdorf) [2067250] - driver core: use NUMA_NO_NODE during device_initialize (Mark Langsdorf) [2067250] - driver core: Fix possible memory leak in device_link_add() (Mark Langsdorf) [2067250] - driver core: Add debug logs when fwnode links are added/deleted (Mark Langsdorf) [2067250] - driver core: Create __fwnode_link_del() helper function (Mark Langsdorf) [2067250] - driver core: Set deferred probe reason when deferred by driver core (Mark Langsdorf) [2067250] - driver core: fw_devlink: Add support for FWNODE_FLAG_NEEDS_CHILD_BOUND_ON_ADD (Mark Langsdorf) [2067250] - driver core: Clarify that dev_err_probe() is OK even w/out -EPROBE_DEFER (Mark Langsdorf) [2067250] - driver core: fw_devlink: Improve handling of cyclic dependencies (Mark Langsdorf) [2067250] - software node: balance refcount for managed software nodes (Mark Langsdorf) [2067250] - driver core: platform: Make use of the helper macro SET_RUNTIME_PM_OPS() (Mark Langsdorf) [2067250] - PM: base: power: don't try to use non-existing RTC for storing data (Mark Langsdorf) [2067250] - PM: sleep: core: Avoid setting power.must_resume to false (Mark Langsdorf) [2067250] - PM: sleep: wakeirq: drop useless parameter from dev_pm_attach_wake_irq() (Mark Langsdorf) [2067250] - PM: domains: Fix domain attach for CONFIG_PM_OPP=n (Mark Langsdorf) [2067250] - PM: runtime: add devm_pm_clk_create helper (Mark Langsdorf) [2067250] - PM: runtime: add devm_pm_runtime_enable helper (Mark Langsdorf) [2067250] - regmap: teach regmap to use raw spinlocks if requested in the config (Mark Langsdorf) [2067250] - PM: domains: Add support for 'required-opps' to set default perf state (Mark Langsdorf) [2067250] - Revert "media: device property: Call fwnode_graph_get_endpoint_by_id() for fwnode->secondary" (Mark Langsdorf) [2067250] - driver: base: Prefer unsigned int to bare use of unsigned (Mark Langsdorf) [2067250] - cacheinfo: clear cache_leaves(cpu) in free_cache_attributes() (Mark Langsdorf) [2067250] - driver core: Fix error return code in really_probe() (Mark Langsdorf) [2067250] - driver: base: Replace symbolic permissions with octal permissions (Mark Langsdorf) [2067250] - regmap: Prefer unsigned int to bare use of unsigned (Mark Langsdorf) [2067250] - regmap: fix the offset of register error log (Mark Langsdorf) [2067250] - bpf: Fix request_sock leak in sk lookup helpers (Antoine Tenart) [2085313] - crypto: fips - make proc files report fips module name and version (Vladis Dronov) [2103966] - net: tipc: fix possible refcount leak in tipc_sk_create() (Xin Long) [2106048] - tipc: move bc link creation back to tipc_node_create (Xin Long) [2106048] - tipc: fix use-after-free Read in tipc_named_reinit (Xin Long) [2106048] - tipc: check attribute length for bearer name (Xin Long) [2106048] - ice: Fix memory corruption in VF driver (Petr Oros) [2037937] - ice: Fix queue config fail handling (Petr Oros) [2037937] - ice: Sync VLAN filtering features for DVM (Petr Oros) [2037937] - ice: Fix PTP TX timestamp offset calculation (Petr Oros) [2037937] - ice: Fix interrupt moderation settings getting cleared (Petr Oros) [2037937] - ice: fix possible under reporting of ethtool Tx and Rx statistics (Petr Oros) [2037937] - ice: allow creating VFs for !CONFIG_NET_SWITCHDEV (Petr Oros) [2037937] - ice: add trace events for tx timestamps (Petr Oros) [2037937] - ice: fix return value check in ice_gnss.c (Petr Oros) [2037937] - ice: remove PF pointer from ice_check_vf_init (Petr Oros) [2037937] - ice: introduce ice_virtchnl.c and ice_virtchnl.h (Petr Oros) [2037937] - ice: cleanup long lines in ice_sriov.c (Petr Oros) [2037937] - ice: introduce ICE_VF_RESET_LOCK flag (Petr Oros) [2037937] - ice: introduce ICE_VF_RESET_NOTIFY flag (Petr Oros) [2037937] - ice: convert ice_reset_vf to take flags (Petr Oros) [2037937] - ice: convert ice_reset_vf to standard error codes (Petr Oros) [2037937] - ice: make ice_reset_all_vfs void (Petr Oros) [2037937] - ice: drop is_vflr parameter from ice_reset_all_vfs (Petr Oros) [2037937] - ice: move reset functionality into ice_vf_lib.c (Petr Oros) [2037937] - ice: fix a long line warning in ice_reset_vf (Petr Oros) [2037937] - ice: introduce VF operations structure for reset flows (Petr Oros) [2037937] - ice: fix incorrect dev_dbg print mistaking 'i' for vf->vf_id (Petr Oros) [2037937] - ice: introduce ice_vf_lib.c, ice_vf_lib.h, and ice_vf_lib_private.h (Petr Oros) [2037937] - ice: use ice_is_vf_trusted helper function (Petr Oros) [2037937] - ice: log an error message when eswitch fails to configure (Petr Oros) [2037937] - ice: cleanup error logging for ice_ena_vfs (Petr Oros) [2037937] - ice: move ice_set_vf_port_vlan near other .ndo ops (Petr Oros) [2037937] - ice: refactor spoofchk control code in ice_sriov.c (Petr Oros) [2037937] - ice: rename ICE_MAX_VF_COUNT to avoid confusion (Petr Oros) [2037937] - ice: remove unused definitions from ice_sriov.h (Petr Oros) [2037937] - ice: convert vf->vc_ops to a const pointer (Petr Oros) [2037937] - ice: remove circular header dependencies on ice.h (Petr Oros) [2037937] - ice: rename ice_virtchnl_pf.c to ice_sriov.c (Petr Oros) [2037937] - ice: rename ice_sriov.c to ice_vf_mbx.c (Petr Oros) [2037937] - ice: Fix FV offset searching (Petr Oros) [2037937] - ice: Add support for outer dest MAC for ADQ tunnels (Petr Oros) [2037937] - ice: avoid XDP checks in ice_clean_tx_irq() (Petr Oros) [2037937] - ice: change "can't set link" message to dbg level (Petr Oros) [2037937] - ice: Add slow path offload stats on port representor in switchdev (Petr Oros) [2037937] - ice: Add support for inner etype in switchdev (Petr Oros) [2037937] - ice: convert VF storage to hash table with krefs and RCU (Petr Oros) [2037937] - ice: introduce VF accessor functions (Petr Oros) [2037937] - ice: factor VF variables to separate structure (Petr Oros) [2037937] - ice: convert ice_for_each_vf to include VF entry iterator (Petr Oros) [2037937] - ice: use ice_for_each_vf for iteration during removal (Petr Oros) [2037937] - ice: remove checks in ice_vc_send_msg_to_vf (Petr Oros) [2037937] - ice: move VFLR acknowledge during ice_free_vfs (Petr Oros) [2037937] - ice: move clear_malvf call in ice_free_vfs (Petr Oros) [2037937] - ice: pass num_vfs to ice_set_per_vf_res() (Petr Oros) [2037937] - ice: store VF pointer instead of VF ID (Petr Oros) [2037937] - ice: refactor unwind cleanup in eswitch mode (Petr Oros) [2037937] - ice: add TTY for GNSS module for E810T device (Petr Oros) [2037937] - ice: Simplify tracking status of RDMA support (Petr Oros) [2037937] - ice: Add ability for PF admin to enable VF VLAN pruning (Petr Oros) [2037937] - ice: Add support for 802.1ad port VLANs VF (Petr Oros) [2037937] - ice: Advertise 802.1ad VLAN filtering and offloads for PF netdev (Petr Oros) [2037937] - ice: Support configuring the device to Double VLAN Mode (Petr Oros) [2037937] - ice: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 (Petr Oros) [2037937] - ice: Add hot path support for 802.1Q and 802.1ad VLAN offloads (Petr Oros) [2037937] - ice: Add outer_vlan_ops and VSI specific VLAN ops implementations (Petr Oros) [2037937] - ice: Adjust naming for inner VLAN operations (Petr Oros) [2037937] - ice: Use the proto argument for VLAN ops (Petr Oros) [2037937] - ice: Refactor vf->port_vlan_info to use ice_vlan (Petr Oros) [2037937] - ice: Introduce ice_vlan struct (Petr Oros) [2037937] - ice: Add new VSI VLAN ops (Petr Oros) [2037937] - ice: Add helper function for adding VLAN 0 (Petr Oros) [2037937] - ice: Refactor spoofcheck configuration functions (Petr Oros) [2037937] - Revert "ice: Allow to pass VLAN tagged packets to VF when port VLAN is configured" (Petr Oros) [2037937] - Revert "ice: Do not enable VLAN pruning when spoofchk is enabled" (Petr Oros) [2037937] - ice: Remove likely for napi_complete_done (Petr Oros) [2037937] - ice: add support for DSCP QoS for IDC (Petr Oros) [2037937] - ice: respect metadata on XSK Rx to skb (Petr Oros) [2037937] - ice: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Petr Oros) [2037937] - ice: respect metadata in legacy-rx/ice_construct_skb() (Petr Oros) [2037937] - ice: Fix broken IFF_ALLMULTI handling (Petr Oros) [2037937]- i40e: Fix call trace in setup_tx_descriptors (Ivan Vecera) [2037943] - i40e: Fix calculating the number of queue pairs (Ivan Vecera) [2037943] - i40e: Fix adding ADQ filter to TC0 (Ivan Vecera) [2037943] - i40e: i40e_main: fix a missing check on list iterator (Ivan Vecera) [2037943] - i40e, xsk: Get rid of redundant 'fallthrough' (Ivan Vecera) [2037943] - i40e, xsk: Diversify return values from xsk_wakeup call paths (Ivan Vecera) [2037943] - i40e, xsk: Terminate Rx side of NAPI when XSK Rx queue gets full (Ivan Vecera) [2037943] - i40e: Add Ethernet Connection X722 for 10GbE SFP+ support (Ivan Vecera) [2037943] - i40e: Add vsi.tx_restart to i40e ethtool stats (Ivan Vecera) [2037943] - i40e: Add tx_stopped stat (Ivan Vecera) [2037943] - i40e: Add support for MPLS + TSO (Ivan Vecera) [2037943] - i40e: little endian only valid checksums (Ivan Vecera) [2037943] - i40e: stop disabling VFs due to PF error responses (Ivan Vecera) [2037943] - i40e: remove dead stores on XSK hotpath (Ivan Vecera) [2037943] - i40e: Add a stat for tracking busy rx pages (Ivan Vecera) [2037943] - i40e: Add a stat for tracking pages waived (Ivan Vecera) [2037943] - i40e: Add a stat tracking new RX page allocations (Ivan Vecera) [2037943] - i40e: Aggregate and export RX page reuse stat (Ivan Vecera) [2037943] - i40e: Remove rx page reuse double count (Ivan Vecera) [2037943] - i40e: Fix race condition while adding/deleting MAC/VLAN filters (Ivan Vecera) [2037943] - i40e: Add new version of i40e_aq_add_macvlan function (Ivan Vecera) [2037943] - i40e: Add new versions of send ASQ command functions (Ivan Vecera) [2037943] - i40e: Add sending commands in atomic context (Ivan Vecera) [2037943] - i40e: Remove unused RX realloc stat (Ivan Vecera) [2037943] - i40e: Disable hw-tc-offload feature on driver load (Ivan Vecera) [2037943] - i40e: Fix reset path while removing the driver (Ivan Vecera) [2037943] - i40e: respect metadata on XSK Rx to skb (Ivan Vecera) [2037943] - i40e: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Ivan Vecera) [2037943] - i40e: Remove useless DMA-32 fallback configuration (Ivan Vecera) [2037943] - i40e: fix unsigned stat widths (Ivan Vecera) [2037943] - i40e: Fix for failed to init adminq while VF reset (Ivan Vecera) [2037943] - i40e: Fix queues reservation for XDP (Ivan Vecera) [2037943] - i40e: Fix issue when maximum queues is exceeded (Ivan Vecera) [2037943] - i40e: Increase delay to 1 s after global EMP reset (Ivan Vecera) [2037943] - i40e: remove variables set but not used (Ivan Vecera) [2037943] - i40e: Remove non-inclusive language (Ivan Vecera) [2037943] - i40e: Update FW API version (Ivan Vecera) [2037943] - i40e: Minimize amount of busy-waiting during AQ send (Ivan Vecera) [2037943] - i40e: Add ensurance of MacVlan resources for every trusted VF (Ivan Vecera) [2037943] - i40e: Fix incorrect netdev's real number of RX/TX queues (Ivan Vecera) [2037943] - i40e: Fix for displaying message regarding NVM version (Ivan Vecera) [2037943] - i40e: fix use-after-free in i40e_sync_filters_subtask() (Ivan Vecera) [2037943] - i40e: Fix to not show opcode msg on unsuccessful VF MAC change (Ivan Vecera) [2037943] - i40e: switch to napi_build_skb() (Ivan Vecera) [2037943] - i40e: Use irq_update_affinity_hint() (Ivan Vecera) [2037943] - mptcp: fix race on unaccepted mptcp sockets (Davide Caratti) [2076971] - mptcp: fix local endpoint accounting (Davide Caratti) [2076971] - mptcp: fix race in overlapping signal events (Davide Caratti) [2076971] - mptcp: fix subflow accounting on close (Davide Caratti) [2076971] - mptcp: introduce implicit endpoints (Davide Caratti) [2076971] - mptcp: constify a bunch of of helpers (Davide Caratti) [2076971] - mptcp: drop port parameter of mptcp_pm_add_addr_signal (Davide Caratti) [2076971] - mptcp: fix removing ids bitmap setting (Davide Caratti) [2076971] - selftests: mptcp: be more conservative with cookie MPJ limits (Davide Caratti) [2076971] - selftests: mptcp: more robust signal race test (Davide Caratti) [2076971] - mptcp: cleanup MPJ subflow list handling (Davide Caratti) [2076971] - mptcp: do not block subflows creation on errors (Davide Caratti) [2076971] - mptcp: keep track of local endpoint still available for each msk (Davide Caratti) [2076971] - mptcp: clean up harmless false expressions (Davide Caratti) [2076971] - mptcp: fix per socket endpoint accounting (Davide Caratti) [2076971] - selftests: mptcp: add fullmesh testcases (Davide Caratti) [2076971] - selftests: mptcp: set and print the fullmesh flag (Davide Caratti) [2076971] - mptcp: local addresses fullmesh (Davide Caratti) [2076971] - mptcp: remote addresses fullmesh (Davide Caratti) [2076971] - mptcp: remove MPTCP_ADD_ADDR_IPV6 and MPTCP_ADD_ADDR_PORT (Davide Caratti) [2076971] - mptcp: build ADD_ADDR/echo-ADD_ADDR option according pm.add_signal (Davide Caratti) [2076971] - mptcp: fix ADD_ADDR and RM_ADDR maybe flush addr_signal each other (Davide Caratti) [2076971] - mptcp: make MPTCP_ADD_ADDR_SIGNAL and MPTCP_ADD_ADDR_ECHO separate (Davide Caratti) [2076971] - mptcp: move drop_other_suboptions check under pm lock (Davide Caratti) [2076971] - mptcp: drop flags and ifindex arguments (Davide Caratti) [2076971] - mptcp: allow to use port and non-signal in set_flags (Davide Caratti) [2076971] - NFSv4.1 support for NFS4_RESULT_PRESERVER_UNLINKED (Scott Mayhew) [2066369] - KVM: selftests: get-reg-list: Add KVM_REG_ARM_FW_REG(3) (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: proton-pack: Include unprivileged eBPF status in Spectre v2 miti (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Use the clearbhb instruction in mitigations (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: add ID_AA64ISAR2_EL1 sys register (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - KVM: arm64: Allow SMCCC_ARCH_WORKAROUND_3 to be discovered and migrated (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Mitigate spectre style branch history side channels (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - KVM: arm64: Add templates for BHB mitigation sequences (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: proton-pack: Report Spectre-BHB vulnerabilities as part of Spect (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Add percpu vectors for EL1 (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Add macro for reading symbol addresses from the trampolin (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Add vectors that have the bhb mitigation sequences (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Add non-kpti __bp_harden_el1_vectors for mitigations (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Allow the trampoline text to occupy multiple pages (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Make the kpti trampoline's kpti sequence optional (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Move trampoline macros out of ifdef'd section (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Don't assume tramp_vectors is the start of the vectors (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Allow tramp_alias to access symbols after the 4K boundary (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Move the trampoline data page before the text page (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Free up another register on kpti's tramp_exit path (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Make the trampoline cleanup optional (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry.S: Add ventry overflow sanity checks (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Add Cortex-X2 CPU part definition (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Add Neoverse-N2, Cortex-A710 CPU part definition (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: syscall: exit userspace before unmasking exceptions (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: ptrace: Consistently use pseudo-singlestep exceptions (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - ethtool: Fix get module eeprom fallback (Ivan Vecera) [2091772] - xfs: use setattr_copy to set vfs inode attributes (Andrey Albershteyn) [2085622] - xfs: ensure log flush at the end of a synchronous fallocate call (Andrey Albershteyn) [2085622] - xfs: set prealloc flag in xfs_alloc_file_space() (Andrey Albershteyn) [2085622] - xfs: fallocate() should call file_modified() (Andrey Albershteyn) [2085622] - xfs: remove XFS_PREALLOC_SYNC (Andrey Albershteyn) [2085622] - drm/ast: Fix black screen when getting out of suspend (Jocelyn Falempe) [2097492] - drm/ast: Create the driver for ASPEED proprietory Display-Port (Jocelyn Falempe) [2097492] - x86: change default to spec_store_bypass_disable=prctl spectre_v2_user=prctl (Waiman Long) [2101938] - x86/speculation/mmio: Print SMT warning (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - KVM: x86/speculation: Disable Fill buffer clear within guests (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Reuse SRBDS mitigation for SBDS (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/srbds: Update SRBDS mitigation selection (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Add sysfs reporting for Processor MMIO Stale Data (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Enable CPU Fill buffer clearing on idle (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/bugs: Group MDS, TAA & Processor MMIO Stale Data mitigations (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Add mitigation for Processor MMIO Stale Data (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation: Add a common function for MD_CLEAR mitigation update (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Enumerate Processor MMIO Stale Data bug (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - Documentation: Add documentation for Processor MMIO Stale Data (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/tsx: Disable TSX development mode at boot (Waiman Long) [2090252] - x86/tsx: Use MSR_TSX_CTRL to clear CPUID bits (Waiman Long) [2090252] - x86/tsx: Clear CPUID bits when TSX always force aborts (Waiman Long) [2090252] - cpu/speculation: Add prototype for cpu_show_srbds() (Waiman Long) [2090252] - x86/cpu: Move arch_smt_update() to a neutral place (Waiman Long) [2090252] - serial: 8250_pci: rewrite pericom_do_set_divisor() (Myron Stowe) [2096364] - serial: 8250_pci: Fix ACCES entries in pci_serial_quirks array (Myron Stowe) [2096364] - serial: 8250_pci: Merge 8250_moxa to 8250_pci (Myron Stowe) [2096364] - serial: 8250: Use dev_get_drvdata where possible (Myron Stowe) [2096364] - serial: 8250: pericom_do_set_divisor can be static (Myron Stowe) [2096364] - serial: 8250: Add support for higher baud rates to Pericom chips (Myron Stowe) [2096364] - serial: 8250_pci: Have ACCES cards that use the four port Pericom PI7C9X7954 chip use the pci_pericom_setup() (Myron Stowe) [2096364] - serial: 8250_pci: Fix number of ports for ACCES serial cards (Myron Stowe) [2096364] - serial: 8250_pci: Replace custom code with pci_match_id() (Myron Stowe) [2096364] - net/sched: act_police: more accurate MTU policing (Davide Caratti) [2100893] - selinux: initialize proto variable in selinux_ip_postroute_compat() (Ondrej Mosnacek) [2005892] - selinux: fix a sock regression in selinux_ip_postroute_compat() (Ondrej Mosnacek) [2005892] - LSM: Avoid warnings about potentially unused hook variables (Ondrej Mosnacek) [2005892] - selinux: fix all of the W=1 build warnings (Ondrej Mosnacek) [2005892] - selinux: make better use of the nf_hook_state passed to the NF hooks (Ondrej Mosnacek) [2005892] - selinux: fix race condition when computing ocontext SIDs (Ondrej Mosnacek) [2005892 1969344] - selinux: remove unneeded ipv6 hook wrappers (Ondrej Mosnacek) [2005892] - lsm_audit: avoid overloading the "key" audit field (Ondrej Mosnacek) [2005892] - security: remove unneeded subdir-$(CONFIG_...) (Ondrej Mosnacek) [2005892] - selinux: return early for possible NULL audit buffers (Ondrej Mosnacek) [2005892] - selinux: correct the return value when loads initial sids (Ondrej Mosnacek) [2005892] - audit: remove unnecessary 'ret' initialization (Ondrej Mosnacek) [2005892] - selinux: kill 'flags' argument in avc_has_perm_flags() and avc_audit() (Ondrej Mosnacek) [2005892] - selinux: slow_avc_audit has become non-blocking (Ondrej Mosnacek) [2005892] - selinux: Fix kernel-doc (Ondrej Mosnacek) [2005892] - selinux: use __GFP_NOWARN with GFP_NOWAIT in the AVC (Ondrej Mosnacek) [2005892] - lsm_audit,selinux: pass IB device name by reference (Ondrej Mosnacek) [2005892] - selinux: Remove redundant assignment to rc (Ondrej Mosnacek) [2005892] - selinux: Corrected comment to match kernel-doc comment (Ondrej Mosnacek) [2005892] - selinux: delete selinux_xfrm_policy_lookup() useless argument (Ondrej Mosnacek) [2005892] - selinux: constify some avtab function arguments (Ondrej Mosnacek) [2005892] - selinux: simplify duplicate_policydb_cond_list() by using kmemdup() (Ondrej Mosnacek) [2005892] - selinux: add proper NULL termination to the secclass_map permissions (Ondrej Mosnacek) [2005892] - security: commoncap: clean up kernel-doc comments (Ondrej Mosnacek) [2005892] - security: commoncap: fix -Wstringop-overread warning (Ondrej Mosnacek) [2005892] - selinux: fix misspellings using codespell tool (Ondrej Mosnacek) [2005892] - selinux: fix misspellings using codespell tool (Ondrej Mosnacek) [2005892] - ext4: mballoc: Use this_cpu_read instead of this_cpu_ptr (Lukas Czerner) [2102619] - ext4: add reserved GDT blocks check (Lukas Czerner) [2099702] - ext4: make variable "count" signed (Lukas Czerner) [2099702] - ext4: fix bug_on ext4_mb_use_inode_pa (Lukas Czerner) [2099702] - ext4: fix super block checksum incorrect after mount (Lukas Czerner) [2099702] - ext4: fix bug_on in __es_tree_search (Lukas Czerner) [2099702] - ext4: avoid cycles in directory h-tree (Lukas Czerner) [2099702] - ext4: verify dir block before splitting it (Lukas Czerner) [2099702] - ext4: fix bug_on in ext4_writepages (Lukas Czerner) [2099702] - ext4: reject the 'commit' option on ext2 filesystems (Lukas Czerner) [2099702] - ext4: fix use-after-free in ext4_rename_dir_prepare (Lukas Czerner) [2099702] - ext4: fix warning in ext4_handle_inode_extension (Lukas Czerner) [2099702]- i915: Explicitly #include (Michel Dänzer) [2041811] - i915: Use mdev_type_kobj_to_group_id instead of mtype_get_type_group_id (Michel Dänzer) [2041811] - drm/i915: #include for k(un)map APIs (Michel Dänzer) [2041811] - Revert "mm: remove the extra ZONE_DEVICE struct page refcount" (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.17..v5.18 (Michel Dänzer) [2041811] - iosys-map: Add a few more helpers (Michel Dänzer) [2041811] - iosys-map: Add offset to iosys_map_memcpy_to() (Michel Dänzer) [2041811] - dma-buf-map: Rename to iosys-map (Michel Dänzer) [2041811] - Revert "drm/amdgpu/display: set vblank_disable_immediate for DC" (Michel Dänzer) [2041811] - Revert "drm: import DMA_BUF module namespace" (Michel Dänzer) [2041811] - drm/virtio: Do not use virtio_reset_device (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.16..v5.17 (Michel Dänzer) [2041811] - agp/intel-gtt: reduce intel-gtt dependencies more (Michel Dänzer) [2041811] - agp/intel-gtt: Replace kernel.h with the necessary inclusions (Michel Dänzer) [2041811] - x86/gpu: Reserve stolen memory for first integrated Intel GPU (Michel Dänzer) [2041811] - drm/i915/rpl-s: Add PCI IDS for Raptor Lake S (Michel Dänzer) [2041811] - drm/amdgpu: Use MCE_PRIO_FIRST instead of MCE_PRIO_UC (Michel Dänzer) [2041811] - Revert "drm/amdgpu: disable runpm if we are the primary adapter" (Michel Dänzer) [2041811] - Revert "treewide: Replace the use of mem_encrypt_active() with cc_platform_has()" (Michel Dänzer) [2041811] - Revert "dma-buf: move dma-buf symbols into the DMA_BUF module namespace" (Michel Dänzer) [2041811] - Revert "fix for "dma-buf: move dma-buf symbols into the DMA_BUF module namespace"" (Michel Dänzer) [2041811] - x86/MCE/AMD, EDAC/mce_amd: Support non-uniform MCA bank type enumeration (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.15..v5.16 (Michel Dänzer) [2041811] - drm/bochs: Explicitly #include (Michel Dänzer) [2041811] - Revert "gpu: Bulk conversion to generic_handle_domain_irq()" (Michel Dänzer) [2041811] - Revert "vfio/gvt: Fix open/close when multiple device FDs are open" (Michel Dänzer) [2041811] - drm: Drop linux/ prefix from stdarg.h include (Michel Dänzer) [2041811] - drm/i915: Convert to older tasklet API (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.14.21..v5.15 (Michel Dänzer) [2041811] - dma-buf: Fix kerneldoc comment for struct dma_fence_array (Michel Dänzer) [2041811] - Makefile: Add RHEL_DRM_EXTRAVERSION (Michel Dänzer) [2041811] - mei: me: add Alder Lake N device id. (Prarit Bhargava) [2072660] - pinctrl: alderlake: Fix register offsets for ADL-N variant (Prarit Bhargava) [2049965] - pinctrl: alderlake: Add Intel Alder Lake-N pin controller support (Prarit Bhargava) [2049965] - pinctrl: tigerlake: Revert "Add Alder Lake-M ACPI ID" (Prarit Bhargava) [2049965] - spi: pxa2xx: Add support for Intel Alder Lake PCH-M (Prarit Bhargava) [2089507] - RHEL-only: KVM: selftests: Compile rseq_test out on aarch64 (Eric Auger) [2078919] - KVM: arm64: Don't read a HW interrupt pending state in user context (Eric Auger) [2078919] - KVM: arm64: selftests: Add init ITS device test (Eric Auger) [2078919] - KVM: arm64: selftests: Add test for legacy GICv3 REDIST base partially above IPA range (Eric Auger) [2078919] - KVM: arm64: selftests: Add tests for GIC redist/cpuif partially above IPA range (Eric Auger) [2078919] - KVM: arm64: selftests: Add some tests for GICv2 in vgic_init (Eric Auger) [2078919] - KVM: arm64: selftests: Make vgic_init/vm_gic_create version agnostic (Eric Auger) [2078919] - KVM: arm64: selftests: Make vgic_init gic version agnostic (Eric Auger) [2078919] - KVM: arm64: vgic: Drop vgic_check_ioaddr() (Eric Auger) [2078919] - KVM: arm64: vgic-v3: Check ITS region is not above the VM IPA size (Eric Auger) [2078919] - KVM: arm64: vgic-v2: Check cpu interface region is not above the VM IPA size (Eric Auger) [2078919] - KVM: arm64: vgic-v3: Check redist region is not above the VM IPA size (Eric Auger) [2078919] - kvm: arm64: vgic: Introduce vgic_check_iorange (Eric Auger) [2078919] - Revert "RHEL-only: KVM: selftests: Fix AArch64 compilation" (Eric Auger) [2078919] - selftests: KVM: Free the GIC FD when cleaning up in arch_timer (Eric Auger) [2078919] - selftests: KVM: Don't leak GIC FD across dirty log test iterations (Eric Auger) [2078919] - KVM: arm64: selftests: Introduce vcpu_width_config (Eric Auger) [2078919] - KVM: arm64: mixed-width check should be skipped for uninitialized vCPUs (Eric Auger) [2078919] - KVM: arm64: Generalise VM features into a set of flags (Eric Auger) [2078919] - KVM: selftests: aarch64: Skip tests if we can't create a vgic-v3 (Eric Auger) [2078919] - kvm: selftests: aarch64: use a tighter assert in vgic_poke_irq() (Eric Auger) [2078919] - kvm: selftests: aarch64: fix some vgic related comments (Eric Auger) [2078919] - kvm: selftests: aarch64: fix the failure check in kvm_set_gsi_routing_irqchip_check (Eric Auger) [2078919] - kvm: selftests: aarch64: pass vgic_irq guest args as a pointer (Eric Auger) [2078919] - kvm: selftests: aarch64: fix assert in gicv3_access_reg (Eric Auger) [2078919] - KVM: selftests: Add vgic initialization for dirty log perf test for ARM (Eric Auger) [2078919] - KVM: arm64: vgic: Read HW interrupt pending state from the HW (Eric Auger) [2078919] - KVM: arm64: Emulate the OS Lock (Eric Auger) [2078919] - KVM: arm64: Allow guest to set the OSLK bit (Eric Auger) [2078919] - KVM: arm64: Stash OSLSR_EL1 in the cpu context (Eric Auger) [2078919] - KVM: arm64: Correctly treat writes to OSLSR_EL1 as undefined (Eric Auger) [2078919] - KVM: arm64: vgic: Replace kernel.h with the necessary inclusions (Eric Auger) [2078919] - KVM: arm64: Fix comment typo in kvm_vcpu_finalize_sve() (Eric Auger) [2078919] - KVM: arm64: selftests: get-reg-list: Add pauth configuration (Eric Auger) [2078919] - KVM: selftests: aarch64: Add test for restoring active IRQs (Eric Auger) [2078919] - KVM: selftests: aarch64: Add ISPENDR write tests in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add tests for IRQFD in vgic_irq (Eric Auger) [2078919] - KVM: selftests: Add IRQ GSI routing library functions (Eric Auger) [2078919] - KVM: selftests: aarch64: Add test_inject_fail to vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add tests for LEVEL_INFO in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Level-sensitive interrupts tests in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add preemption tests in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Cmdline arg to set EOI mode in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Cmdline arg to set number of IRQs in vgic_irq test (Eric Auger) [2078919] - KVM: selftests: aarch64: Abstract the injection functions in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add vgic_irq to test userspace IRQ injection (Eric Auger) [2078919] - KVM: selftests: aarch64: Add vGIC library functions to deal with vIRQ state (Eric Auger) [2078919] - KVM: selftests: Add kvm_irq_line library function (Eric Auger) [2078919] - KVM: selftests: aarch64: Add GICv3 register accessor library functions (Eric Auger) [2078919] - KVM: selftests: aarch64: Add function for accessing GICv3 dist and redist registers (Eric Auger) [2078919] - KVM: selftests: aarch64: Move gic_v3.h to shared headers (Eric Auger) [2078919] - KVM: selftests: arm64: Add support for various modes with 16kB page size (Eric Auger) [2078919] - KVM: selftests: arm64: Add support for VM_MODE_P36V48_{4K,64K} (Eric Auger) [2078919] - KVM: arm64: Fix comment on barrier in kvm_psci_vcpu_on() (Eric Auger) [2078919] - KVM: arm64: Fix comment for kvm_reset_vcpu() (Eric Auger) [2078919] - KVM: arm64: Use defined value for SCTLR_ELx_EE (Eric Auger) [2078919] - KVM: arm64: vgic: Demote userspace-triggered console prints to kvm_debug() (Eric Auger) [2078919] - KVM: arm64: Consolidate dist->ready setting into kvm_vgic_map_resources() (Eric Auger) [2078919] - arm64/kvm: Fix bitrotted comment for SVE handling in handle_exit.c (Eric Auger) [2078919] - KVM: arm64: Drop vcpu->arch.has_run_once for vcpu->pid (Eric Auger) [2078919] - KVM: arm64: Merge kvm_arch_vcpu_run_pid_change() and kvm_vcpu_first_run_init() (Eric Auger) [2078919] - KVM: arm64: Restructure the point where has_run_once is advertised (Eric Auger) [2078919] - KVM: arm64: Move kvm_arch_vcpu_run_pid_change() out of line (Eric Auger) [2078919] - KVM: arm64: Move SVE state mapping at HYP to finalize-time (Eric Auger) [2078919] - KVM: arm64: Move double-checked lock to kvm_vgic_map_resources() (Eric Auger) [2078919] - KVM: arm64: Constify kvm_io_gic_ops (Eric Auger) [2078919] - KVM: arm64: Avoid setting the upper 32 bits of TCR_EL2 and CPTR_EL2 to 1 (Eric Auger) [2078919] - selftests: KVM: Fix kvm device helper ioctl assertions (Eric Auger) [2078919] - ACPI: tables: Quiet ACPI table not found warning (Mark Langsdorf) [2067290] - ACPI/IORT: Check node revision for PMCG resources (Mark Langsdorf) [2067290] - PM: s2idle: ACPI: Fix wakeup interrupts handling (Mark Langsdorf) [2067290] - ACPI: PM: s2idle: Cancel wakeup before dispatching EC GPE (Mark Langsdorf) [2067290] - ACPI: PM: Revert "Only mark EC GPE for wakeup on Intel systems" (Mark Langsdorf) [2067290] - ACPI: require CRC32 to build (Mark Langsdorf) [2067290] - ACPI: DPTF: Support Raptor Lake (Mark Langsdorf) [2067290] - ACPI: scan: Rename label in acpi_scan_init() (Mark Langsdorf) [2067290] - ACPI: scan: Simplify initialization of power and sleep buttons (Mark Langsdorf) [2067290] - ACPI: scan: Change acpi_scan_init() return value type to void (Mark Langsdorf) [2067290] - ACPI: SPCR: check if table->serial_port.access_width is too wide (Mark Langsdorf) [2067290] - ACPI: APD: Check for NULL pointer after calling devm_ioremap() (Mark Langsdorf) [2067290] - ACPI: pfr_telemetry: Fix info leak in pfrt_log_ioctl() (Mark Langsdorf) [2067290] - ACPI: APD: Add a fmw property clk-name (Mark Langsdorf) [2067290] - ACPI: pfr_update: Fix return value check in pfru_write() (Mark Langsdorf) [2067290] - ACPI: processor: thermal: avoid cpufreq_get_policy() (Mark Langsdorf) [2067290] - ACPI / x86: Add acpi_quirk_skip_[i2c_client|serdev]_enumeration() helpers (Mark Langsdorf) [2067290] - ACPI: battery: Add the ThinkPad "Not Charging" quirk (Mark Langsdorf) [2067290] - acpi: Store CRC-32 hash of the _PLD in struct acpi_device (Mark Langsdorf) [2067290] - acpi: Export acpi_bus_type (Mark Langsdorf) [2067290] - ACPI: sysfs: use default_groups in kobj_type (Mark Langsdorf) [2067290] - ACPI: Introduce Platform Firmware Runtime Telemetry driver (Mark Langsdorf) [2067290] - ACPI: Introduce Platform Firmware Runtime Update device driver (Mark Langsdorf) [2067290] - efi: Introduce EFI_FIRMWARE_MANAGEMENT_CAPSULE_HEADER and corresponding structures (Mark Langsdorf) [2067290] - ACPICA: Update version to 20211217 (Mark Langsdorf) [2067290] - ACPICA: iASL/NHLT table: "Specific Data" field support (Mark Langsdorf) [2067290] - ACPICA: iASL: Add suppport for AGDI table (Mark Langsdorf) [2067290] - ACPICA: iASL: Add TDEL table to both compiler/disassembler (Mark Langsdorf) [2067290] - ACPICA: Fixed a couple of warnings under MSVC (Mark Langsdorf) [2067290] - ACPICA: Change a return_ACPI_STATUS (AE_BAD_PARAMETER) (Mark Langsdorf) [2067290] - ACPICA: Hardware: Do not flush CPU cache when entering S4 and S5 (Mark Langsdorf) [2067290] - ACPICA: Add support for PCC Opregion special context data (Mark Langsdorf) [2067290] - ACPICA: Fix wrong interpretation of PCC address (Mark Langsdorf) [2067290] - ACPICA: Executer: Fix the REFCLASS_REFOF case in acpi_ex_opcode_1A_0T_1R() (Mark Langsdorf) [2067290] - ACPICA: Utilities: Avoid deleting the same object twice in a row (Mark Langsdorf) [2067290] - ACPICA: Fix AEST Processor generic resource substructure data field byte length (Mark Langsdorf) [2067290] - ACPICA: iASL/Disassembler: Additional support for NHLT table (Mark Langsdorf) [2067290] - ACPICA: Avoid subobject buffer overflow when validating RSDP signature (Mark Langsdorf) [2067290] - ACPICA: Macros: Remove ACPI_PHYSADDR_TO_PTR (Mark Langsdorf) [2067290] - ACPICA: Use original pointer for virtual origin tables (Mark Langsdorf) [2067290] - ACPICA: Use original data_table_region pointer for accesses (Mark Langsdorf) [2067290] - ACPICA: actypes.h: Expand the ACPI_ACCESS_ definitions (Mark Langsdorf) [2067290] - ACPI: CPPC: Amend documentation in the comments (Mark Langsdorf) [2067290] - ACPI: NFIT: Import GUID before use (Mark Langsdorf) [2067290] - ACPI: PM: Remove redundant cache flushing (Mark Langsdorf) [2067290] - ACPI: Use acpi_fetch_acpi_dev() instead of acpi_bus_get_device() (Mark Langsdorf) [2067290] - ACPI: tables: Add AEST to the list of known table signatures (Mark Langsdorf) [2067290] - ACPI: PM: Avoid CPU cache flush when entering S4 (Mark Langsdorf) [2067290] - PM: hibernate: Allow ACPI hardware signature to be honoured (Mark Langsdorf) [2067290] - ACPI: PMIC: xpower: Fix _TMP ACPI errors (Mark Langsdorf) [2067290] - ACPI: PMIC: allow drivers to provide a custom lpat_raw_to_temp() function (Mark Langsdorf) [2067290] - ACPI: PMIC: constify all struct intel_pmic_opregion_data declarations (Mark Langsdorf) [2067290] - ACPI: EC: Mark the ec_sys write_support param as module_param_hw() (Mark Langsdorf) [2067290] - ACPI: EC: Relocate acpi_ec_create_query() and drop acpi_ec_delete_query() (Mark Langsdorf) [2067290] - ACPI: EC: Make the event work state machine visible (Mark Langsdorf) [2067290] - ACPI: EC: Avoid queuing unnecessary work in acpi_ec_submit_event() (Mark Langsdorf) [2067290] - ACPI: EC: Rename three functions (Mark Langsdorf) [2067290] - ACPI: EC: Simplify locking in acpi_ec_event_handler() (Mark Langsdorf) [2067290] - ACPI: EC: Rearrange the loop in acpi_ec_event_handler() (Mark Langsdorf) [2067290] - ACPI: EC: Fold acpi_ec_check_event() into acpi_ec_event_handler() (Mark Langsdorf) [2067290] - ACPI: EC: Pass one argument to acpi_ec_query() (Mark Langsdorf) [2067290] - ACPI: EC: Call advance_transaction() from acpi_ec_dispatch_gpe() (Mark Langsdorf) [2067290] - ACPI: EC: Rework flushing of EC work while suspended to idle (Mark Langsdorf) [2067290] - ACPI / x86: Add PWM2 on the Xiaomi Mi Pad 2 to the always_present list (Mark Langsdorf) [2067290] - ACPI / x86: Add not-present quirk for the PCI0.SDHB.BRC1 device on the GPD win (Mark Langsdorf) [2067290] - ACPI / x86: Allow specifying acpi_device_override_status() quirks by path (Mark Langsdorf) [2067290] - ACPI: Change acpi_device_always_present() into acpi_device_override_status() (Mark Langsdorf) [2067290] - ACPI / x86: Drop PWM2 device on Lenovo Yoga Book from always present table (Mark Langsdorf) [2067290] - ACPI: processor idle: Use swap() instead of open coding it (Mark Langsdorf) [2067290] - ACPI: processor: Replace kernel.h with the necessary inclusions (Mark Langsdorf) [2067290] - ACPI: DPTF: Update device ID in a comment (Mark Langsdorf) [2067290] - ACPI: PM: Emit debug messages when enabling/disabling wakeup power (Mark Langsdorf) [2067290] - ACPI: thermal: drop an always true check (Mark Langsdorf) [2067290] - ACPI: Add a context argument for table parsing handlers (Mark Langsdorf) [2067290] - ACPI: Teach ACPI table parsing about the CEDT header format (Mark Langsdorf) [2067290] - ACPI: Keep sub-table parsing infrastructure available for modules (Mark Langsdorf) [2067290] - cxgb4: fix wrong shift. (Raju Rangoju) [1977437] - cxgb4: fix wrong ethtool n-tuple rule lookup (Raju Rangoju) [1977437] - cxgb4: halt chip before flashing PHY firmware image (Raju Rangoju) [1977437] - cxgb4: fix sleep in atomic when flashing PHY firmware (Raju Rangoju) [1977437] - cxgb4: fix endianness when flashing boot image (Raju Rangoju) [1977437] - cxgb4: avoid link re-train during TC-MQPRIO configuration (Raju Rangoju) [1977437] - cxgb4: fix regression with HASH tc prio value update (Raju Rangoju) [1977437] - cxgb4: avoid accessing registers when clearing filters (Raju Rangoju) [1977437] - net:CXGB4: fix leak if sk_buff is not used (Raju Rangoju) [1977437] - cxgb4: Fix unintentional sign extension issues (Raju Rangoju) [1977437] - cxgb4: remove unneeded if-null-free check (Raju Rangoju) [1977437] - PCI: vmd: Assign VMD IRQ domain before enumeration (Myron Stowe) [2050850] - PCI: vmd: Prevent recursive locking on interrupt allocation (Myron Stowe) [2050850] - PCI: vmd: Add DID 8086:A77F for all Intel Raptor Lake SKU's (Myron Stowe) [2050850] - PCI: vmd: Honor ACPI _OSC on PCIe features (Myron Stowe) [2050850] - PCI: vmd: Clean up domain before enumeration (Myron Stowe) [2050850] - PCI: vmd: Use PCI_POSSIBLE_ERROR() to check config reads (Myron Stowe) [2050850] - PCI: Add PCI_ERROR_RESPONSE and related definitions (Myron Stowe) [2050850] - PCI: vmd: Drop redundant includes of , (Myron Stowe) [2050850] - PCI: vmd: Assign a number to each VMD controller (Myron Stowe) [2050850] - PCI: vmd: Disable MSI-X remapping when possible (Myron Stowe) [2050850] - PCI: vmd: Offset Client VMD MSI-X vectors (Myron Stowe) [2050850] - PCI: vmd: Use msi_msg shadow structs (Myron Stowe) [2050850] - Merge tag 'pci-v5.10-changes' of git://git.kernel.org/pub/scm/linux/kernel/g (Myron Stowe) [2050850] - PCI: vmd: Update VMD PM to correctly use generic PCI PM (Myron Stowe) [2050850] - PCI: vmd: Create IRQ allocation helper (Myron Stowe) [2050850] - PCI: vmd: Create IRQ Domain configuration helper (Myron Stowe) [2050850] - PCI: vmd: Create bus offset configuration helper (Myron Stowe) [2050850] - PCI: vmd: Create physical offset helper (Myron Stowe) [2050850] - PCI_vmd_Mark_VMD_irqdomain_with_DOMAIN_BUS_VMD_MSI (Myron Stowe) [2050850] - irqdomain/msi: Provide DOMAIN_BUS_VMD_MSI (Myron Stowe) [2050850] - PCI: vmd: Dont abuse vector irqomain as parent (Myron Stowe) [2050850] - PCI: designware-ep: Fix the Header Type check (Myron Stowe) [2050850] - PCI: vmd: Use Shadow MEMBAR registers for QEMU/KVM guests (Myron Stowe) [2050850] - PCI: vmd: Filter resource type bits from shadow register (Myron Stowe) [2050850] - PCI: Fix indentation (Myron Stowe) [2050850] - scsi: iscsi: Fix session removal on shutdown (Chris Leech) [2101760] - scsi: qedi: Use QEDI_MODE_NORMAL for error handling (Chris Leech) [2101760] - scsi: iscsi: Add helper to remove a session from the kernel (Chris Leech) [2101760] - scsi: iscsi: Clean up bound endpoints during shutdown (Chris Leech) [2101760] - scsi: iscsi: Allow iscsi_if_stop_conn() to be called from kernel (Chris Leech) [2101760] - scsi: iscsi: Fix HW conn removal use after free (Chris Leech) [2101760] - scsi: iscsi: Make iscsi_unregister_transport() return void (Chris Leech) [2101760] - scsi: core: iscsi: Directly use ida_alloc()/ida_free() (Chris Leech) [2101760] - scsi: iscsi: Exclude zero from the endpoint ID range (Chris Leech) [2101760] - scsi: iscsi: Fix harmless double shift bug (Chris Leech) [2101760] - scsi: libiscsi: Remove unnecessary memset() in iscsi_conn_setup() (Chris Leech) [2101760] - scsi: libiscsi: Teardown iscsi_cls_conn gracefully (Chris Leech) [2101760] - scsi: libiscsi: Add iscsi_cls_conn to sysfs after initialization (Chris Leech) [2101760] - scsi: iscsi: Add helper functions to manage iscsi_cls_conn (Chris Leech) [2101760] - scsi: iscsi: Drop temp workq_name (Chris Leech) [2101760] - scsi: iscsi: Use the session workqueue for recovery (Chris Leech) [2101760] - scsi: iscsi: ql4xxx: Use per-session workqueue for unbinding (Chris Leech) [2101760] - scsi: iscsi: Remove iscsi_scan_finished() (Chris Leech) [2101760] - scsi: libiscsi: Fix UAF in iscsi_conn_get_param()/iscsi_conn_teardown() (Chris Leech) [2101760] - scsi: libiscsi: Move ehwait initialization to iscsi_session_setup() (Chris Leech) [2101760] - x86/sme: Explicitly map new EFI memmap table as encrypted (Chris von Recklinghausen) [2091831] - x86/sme: Use #define USE_EARLY_PGTABLE_L5 in mem_encrypt_identity.c (Chris von Recklinghausen) [2091831] - efi/x86: Fix boot regression on systems with invalid memmap entries (Chris von Recklinghausen) [2091831] - efi: Add tracking for dynamically allocated memmaps (Chris von Recklinghausen) [2091831] - efi: Add a flags parameter to efi_memory_map (Chris von Recklinghausen) [2091831] - x86/kexec: fix memory leak of elf header buffer (Tao Liu) [2014945] - net: sched: add barrier to fix packet stuck problem for lockless qdisc (Davide Caratti) [2103025] - powercap: intel_rapl: add support for ALDERLAKE_N (David Arcari) [2096964] - clk: fix invalid usage of list cursor in unregister (David Arcari) [2105258] - clk: fix invalid usage of list cursor in register (David Arcari) [2105258] - powercap: intel_rapl: add support for RaptorLake (David Arcari) [2076724] - lib/math: move int_pow() from pwm_bl.c for wider use (Ivan Vecera) [2101700] - x86/fpu: KVM: Set the base guest FPU uABI size to sizeof(struct kvm_xsave) (Paul Lai) [2092066]- net/sched: cls_u32: fix possible leak in u32_init_knode() (Davide Caratti) [2081283] - net/sched: cls_u32: fix netns refcount changes in u32_change() (Davide Caratti) [2081283] - net/sched: flower: fix parsing of ethertype following VLAN header (Davide Caratti) [2081283] - net: sched: limit TC_ACT_REPEAT loops (Davide Caratti) [2081283] - net_sched: add __rcu annotation to netdev->qdisc (Davide Caratti) [2081283] - sch_htb: Fail on unsupported parameters when offload is requested (Davide Caratti) [2081283] - net_sched: restore "mpu xxx" handling (Davide Caratti) [2081283] - net: sched: sch_netem: Refactor code in 4-state loss generator (Davide Caratti) [2081283] - net/mlx5e: TC, Fix ct_clear overwriting ct action metadata (Amir Tzin) [2100474] - bpftool: man: Add missing top level docs (Yauheni Kaliuta) [2097615] - net/mlx5: CT: Fix header-rewrite re-use for tupels (Amir Tzin) [2101162] - cpuidle: haltpoll: Call cpuidle_poll_state_init() later (Mark Langsdorf) [2067313] - cpuidle: use default_groups in kobj_type (Mark Langsdorf) [2067313] - cpuidle: Fix cpuidle_remove_state_sysfs() kerneldoc comment (Mark Langsdorf) [2067313] - cpuidle: menu: Fix typo in a comment (Mark Langsdorf) [2067313] - cpuidle: Fix kobject memory leaks in error paths (Mark Langsdorf) [2067313] - cpuidle: menu: Take negative "sleep length" values into account (Mark Langsdorf) [2067313] - HID: elo: Revert USB reference counting (Benjamin Tissoires) [2073833] - HID: elo: fix memory leak in elo_probe (Benjamin Tissoires) [2073833] - fs: dlm: filter user dlm messages for kernel locks (Alexander Aring) [2026116] - psample: Add a fwd declaration for skbuff (Ivan Vecera) [2101706] - platform/x86/intel/sdsi: Fix bug in multi packet reads (Prarit Bhargava) [2100948] - platform/x86/intel/sdsi: Poll on ready bit for writes (Prarit Bhargava) [2100948] - platform/x86/intel/sdsi: Handle leaky bucket (Prarit Bhargava) [2100948] - indirect_call_wrapper: extend indirect wrapper to support up to 4 calls (Petr Oros) [2101705] - block: Fix handling of offline queues in blk_mq_alloc_request_hctx() (Ming Lei) [2081913] - netfilter: br_netfilter: do not skip all hooks with 0 priority (Florian Westphal) [2099732] - net: openvswitch: fix parsing of nw_proto for IPv6 fragments (Eelco Chaudron) [2101537] - s390/smp,vdso: fix ASCE handling (Tobias Huschle) [2103887] - [s390] s390/pci: fix zpci_zdev_put() on reserve (Claudio Imbrenda) [2102305] - intel/igbvf:fix repeated words in comments (Corinna Vinschen) [2037962] - igbvf: Remove useless DMA-32 fallback configuration (Corinna Vinschen) [2037962] - SUNRPC: avoid race between mod_timer() and del_timer_sync() (Benjamin Coddington) [2104507] - iavf: Fix issue with MAC address of VF shown as zero (Petr Oros) [2037938] - iavf: switch to napi_build_skb() (Petr Oros) [2037938] - iavf: Remove non-inclusive language (Petr Oros) [2037938] - iavf: Fix incorrect use of assigning iavf_status to int (Petr Oros) [2037938] - iavf: stop leaking iavf_status as "errno" values (Petr Oros) [2037938] - iavf: Add usage of new virtchnl format to set default MAC (Petr Oros) [2037938] - iavf: refactor processing of VLAN V2 capability message (Petr Oros) [2037938] - iavf: Add support for 50G/100G in AIM algorithm (Petr Oros) [2037938] - iavf: remove redundant ret variable (Petr Oros) [2037938] - iavf: Remove useless DMA-32 fallback configuration (Petr Oros) [2037938] - cifs: fix potential double free during failed mount (Ronnie Sahlberg) [2088799] - cifs: escape spaces in share names (Dave Wysochanski) [2100367] - Documentation: add documentation for force_cgroup_v2_swappiness control (Nico Pache) [2084242] - Introduce force_cgroup_v2_swappiness tuneable to deprecate cgv1 per-cgroup swappiness (Nico Pache) [2084242] - redhat: trim rpminspect config file (Jarod Wilson)- powerpc/smp: Set numa node before updating mask (Diego Domingos) [2103833] - iommu/vt-d: Fix potential memory leak in intel_setup_irq_remapping() (Mohammed Gamal) [2088366] - irqdomain/treewide: Free firmware node after domain removal (Mohammed Gamal) [2088366] - x86/kvmclock: Fix Hyper-V Isolated VM's boot issue when vCPUs > 64 (Mohammed Gamal) [2088366] - x86/kvm: Don't waste memory if kvmclock is disabled (Mohammed Gamal) [2088366] - x86/pci: Create PCI/MSI irqdomain after x86_init.pci.arch_init() (Mohammed Gamal) [2088366] - x86/pci: Reducde #ifdeffery in PCI init code (Mohammed Gamal) [2088366] - hv_utils: Add comment about max VMbus packet size in VSS driver (Mohammed Gamal) [2088366] - x86/coco: Explicitly declare type of confidential computing platform (Mohammed Gamal) [2088366] - x86/hyper-v: Add hyperv Isolation VM check in the cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev: Use CC_ATTR attribute to generalize string I/O unroll (Mohammed Gamal) [2088366] - random: remove unused irq_flags argument from add_interrupt_randomness() (Mohammed Gamal) [2088366] - x86/hyperv: Fix definition of hv_ghcb_pg variable (Mohammed Gamal) [2088366] - swiotlb: Add CONFIG_HAS_IOMEM check around swiotlb_mem_remap() (Mohammed Gamal) [2088366] - hyper-v: Enable swiotlb bounce buffer for Isolation VM (Mohammed Gamal) [2088366] - swiotlb: Add swiotlb bounce buffer remap function for HV IVM (Mohammed Gamal) [2088366] - x86/hyperv: Refactor hv_msi_domain_free_irqs() (Mohammed Gamal) [2088366] - x86/hyperv: Move required MSRs check to initial platform probing (Mohammed Gamal) [2088366] - x86/hyperv: Fix NULL deref in set_hv_tscchange_cb() if Hyper-V setup fails (Mohammed Gamal) [2088366] - x86/hyperv: Protect set_hv_tscchange_cb() against getting preempted (Mohammed Gamal) [2088366] - x86/hyperv: Remove duplicate include (Mohammed Gamal) [2088366] - x86/hyperv: Remove duplicated include in hv_init (Mohammed Gamal) [2088366] - x86/hyperv: Add ghcb hvcall support for SNP VM (Mohammed Gamal) [2088366] - x86/hyperv: Add Write/Read MSR registers via ghcb page (Mohammed Gamal) [2088366] - x86/hyperv: Add new hvcall guest address host visibility support (Mohammed Gamal) [2088366] - x86/hyperv: Initialize shared memory boundary in the Isolation VM. (Mohammed Gamal) [2088366] - x86/hyperv: Initialize GHCB page in Isolation VM (Mohammed Gamal) [2088366] - x86/sev: Replace occurrences of sev_es_active() with cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev: Replace occurrences of sev_active() with cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev-es: Do not unroll string I/O for SEV-ES guests (Mohammed Gamal) [2088366] - efi/x86: Avoid RWX mappings for all of DRAM (Mohammed Gamal) [2088366] - x86/sme: Replace occurrences of sme_active() with cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev: Add an x86 version of cc_platform_has() (Mohammed Gamal) [2088366] - vmalloc: fix the owner argument for the new __vmalloc_node_range callers (Mohammed Gamal) [2088366] - mm: remove vmalloc_exec (Mohammed Gamal) [2088366] - arm64: use PAGE_KERNEL_ROX directly in alloc_insn_page (Mohammed Gamal) [2088366] - arm64/kprobes: set VM_FLUSH_RESET_PERMS on kprobe instruction pages (Mohammed Gamal) [2088366] - x86/hyperv: allocate the hypercall page with only read and execute bits (Mohammed Gamal) [2088366] - x86/hyperv: use vmalloc_exec for the hypercall page (Mohammed Gamal) [2088366] - drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status (Mohammed Gamal) [2088366] - x86/irq: Initialize PCI/MSI domain at PCI init time (Mohammed Gamal) [2088366] - x86/hyperv: implement an MSI domain for root partition (Mohammed Gamal) [2088366] - irqdomain/treewide: Keep firmware node unconditionally allocated (Mohammed Gamal) [2088366] - irqdomain/msi: Allow to override msi_domain_alloc/free_irqs() (Mohammed Gamal) [2088366] - x86/sev: Expose sev_es_ghcb_hv_call() for use by HyperV (Mohammed Gamal) [2088366] - x86/sev: Carve out HV call's return value verification (Mohammed Gamal) [2088366] - x86/sev: Fix noinstr for vc_ghcb_invalidate() (Mohammed Gamal) [2088366] - arch/cc: Introduce a function to check for confidential computing features (Mohammed Gamal) [2088366] - Revert "drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status" (Mohammed Gamal) [2088366] - Revert "drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status" (Mohammed Gamal) [2088366] - libperf tests: Fix typo in perf_evlist__open() failure error messages (Michael Petlan) [1878555] - libperf: Fix 32-bit build for tests uint64_t printf (Michael Petlan) [1878555] - libperf: Add arm64 support to perf_mmap__read_self() (Michael Petlan) [1878555] - libperf tests: Add test_stat_multiplexing test (Michael Petlan) [1878555] - libperf: Remove scaling process from perf_mmap__read_self() (Michael Petlan) [1878555] - libperf: Adopt perf_counts_values__scale() from tools/perf/util (Michael Petlan) [1878555] - arm64: perf: Don't register user access sysctl handler multiple times (Michael Petlan) [1878555] - Documentation: arm64: Document PMU counters access from userspace (Michael Petlan) [1878555] - arm64: perf: Enable PMU counter userspace access for perf event (Michael Petlan) [1878555] - arm64: perf: Add support for ARMv8.5-PMU 64-bit counters (Michael Petlan) [1878555] - arm64: perf: Clean up enable/disable calls (Michael Petlan) [1878555] - arm64: perf: Only advertise cap_user_time for arch_timer (Michael Petlan) [1878555] - arm64: perf: Implement correct cap_user_time (Michael Petlan) [1878555] - arm64: perf: Add userspace counter access disable switch (Michael Petlan) [1878555] - perf: Add a counter for number of user access events in context (Michael Petlan) [1878555] - x86: perf: Move RDPMC event flag to a common definition (Michael Petlan) [1878555] - Fix null ptr dereference crash due to premature release of ndlp. Upstream Status: RHEL-Only Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2034425 (Dick Kennedy) - lpfc updates for rh8.7 14.0.0.13 (Dick Kennedy) [2034425] - scsi: lpfc: Use sg_dma_address() and sg_dma_len() macros for NVMe I/O (Dick Kennedy) [2034425] - scsi: lpfc: Alter FPIN stat accounting logic (Dick Kennedy) [2034425] - scsi: lpfc: Decrement outstanding gidft_inp counter if lpfc_err_lost_link() (Dick Kennedy) [2034425] - scsi: lpfc: Use list_for_each_entry_safe() in rscn_recovery_check() (Dick Kennedy) [2034425] - scsi: lpfc: Fix ndlp put following a LOGO completion (Dick Kennedy) [2034425] - scsi: lpfc: Fix additional reference counting in lpfc_bsg_rport_els() (Dick Kennedy) [2034425] - scsi: lpfc: Fix resource leak in lpfc_sli4_send_seq_to_ulp() (Dick Kennedy) [2034425] - scsi: lpfc: Remove unneeded variable (Dick Kennedy) [2034425] - scsi: lpfc: Copyright updates for 14.2.0.2 patches (Dick Kennedy) [2034425] - scsi: lpfc: Expand setting ELS_ID field in ELS_REQUEST64_WQE (Dick Kennedy) [2034425] - scsi: lpfc: Update stat accounting for READ_STATUS mbox command (Dick Kennedy) [2034425] - scsi: lpfc: Change FA-PWWN detection methodology (Dick Kennedy) [2034425] - scsi: lpfc: Register for Application Services FC-4 type in Fabric topology (Dick Kennedy) [2034425] - scsi: lpfc: Remove false FDMI NVMe FC-4 support for NPIV ports (Dick Kennedy) [2034425] - scsi: lpfc: Revise FDMI reporting of supported port speed for trunk groups (Dick Kennedy) [2034425] - scsi: lpfc: Fix call trace observed during I/O with CMF enabled (Dick Kennedy) [2034425] - scsi: lpfc: Correct CRC32 calculation for congestion stats (Dick Kennedy) [2034425] - scsi: lpfc: Move MI module parameter check to handle dynamic disable (Dick Kennedy) [2034425] - scsi: lpfc: Remove unnecessary NULL pointer assignment for ELS_RDF path (Dick Kennedy) [2034425] - scsi: lpfc: Transition to NPR state upon LOGO cmpl if link down or aborted (Dick Kennedy) [2034425] - scsi: lpfc: Update fc_prli_sent outstanding only after guaranteed IOCB submit (Dick Kennedy) [2034425] - scsi: lpfc: Protect memory leak for NPIV ports sending PLOGI_RJT (Dick Kennedy) [2034425] - scsi: lpfc: Fix null pointer dereference after failing to issue FLOGI and PLOGI (Dick Kennedy) [2034425] - scsi: lpfc: Clear fabric topology flag before initiating a new FLOGI (Dick Kennedy) [2034425] - scsi: lpfc: Fix SCSI I/O completion and abort handler deadlock (Dick Kennedy) [2034425] - scsi: lpfc: Requeue SCSI I/O to upper layer when fw reports link down (Dick Kennedy) [2034425] - scsi: lpfc: Zero SLI4 fcp_cmnd buffer's fcpCntl0 field (Dick Kennedy) [2034425] - scsi: lpfc: Fix diagnostic fw logging after a function reset (Dick Kennedy) [2034425] - scsi: lpfc: Move cfg_log_verbose check before calling lpfc_dmp_dbg() (Dick Kennedy) [2034425] - scsi: lpfc: Tweak message log categories for ELS/FDMI/NVMe rescan (Dick Kennedy) [2034425] - scsi: lpfc: Fix queue failures when recovering from PCI parity error (Dick Kennedy) [2034425] - scsi: lpfc: Fix unload hang after back to back PCI EEH faults (Dick Kennedy) [2034425] - scsi: lpfc: Improve PCI EEH Error and Recovery Handling (Dick Kennedy) [2034425] - scsi: lpfc: Use kcalloc() (Dick Kennedy) [2034425] - scsi: lpfc: Fix typos in comments (Dick Kennedy) [2034425] - scsi: lpfc: Remove failing soft_wwn support (Dick Kennedy) [2034425] - scsi: lpfc: Reduce log messages seen after firmware download (Dick Kennedy) [2034425] - scsi: lpfc: Remove NVMe support if kernel has NVME_FC disabled (Dick Kennedy) [2034425] - scsi: lpfc: Remove redundant flush_workqueue() call (Dick Kennedy) [2034425] - scsi: lpfc: Terminate string in lpfc_debugfs_nvmeio_trc_write() (Dick Kennedy) [2034425] - scsi: lpfc: Use irq_set_affinity() (Dick Kennedy) [2034425] - time: Handle negative seconds correctly in timespec64_to_ns() (Íñigo Huguet) [2098634] - time: Prevent undefined behaviour in timespec64_to_ns() (Íñigo Huguet) [2098634] - mm,hwpoison: return -EBUSY when migration fails (Rafael Aquini) [2092671 2099510] - mm,hwpoison: remove drain_all_pages from shake_page (Rafael Aquini) [2092671] - mm,hwpoison: disable pcplists before grabbing a refcount (Rafael Aquini) [2092671] - mm,hwpoison: fix printing of page flags (Rafael Aquini) [2092671] - mm,hwpoison: refactor get_any_page (Rafael Aquini) [2092671] - mm,hwpoison: drop unneeded pcplist draining (Rafael Aquini) [2092671] - mm,hwpoison: drain pcplists before bailing out for non-buddy zero-refcount page (Rafael Aquini) [2092671] - redhat: Exclude cpufreq.h from kernel-headers (Patrick Talbert)- dm raid: fix accesses beyond end of raid member array (Benjamin Marzinski) [2012340] - dm mirror log: clear log bits up to BITS_PER_LONG boundary (Benjamin Marzinski) [2012340] - dm: fix BLK_STS_DM_REQUEUE handling when dm_io represents split bio (Benjamin Marzinski) [2012340] - dm mirror log: round up region bitmap size to BITS_PER_LONG (Benjamin Marzinski) [2012340] - dm: improve abnormal bio processing (Benjamin Marzinski) [2012340] - dm: simplify bio-based IO accounting further (Benjamin Marzinski) [2012340] - dm: don't grab target io reference in dm_zone_map_bio (Benjamin Marzinski) [2012340] - dm: improve bio splitting and associated IO accounting (Benjamin Marzinski) [2012340] - dm era: commit metadata in postsuspend after worker stops (Benjamin Marzinski) [2012340] - dm: fix race in dm_start_io_acct (Benjamin Marzinski) [2012340] - block: remove bioset_init_from_src (Benjamin Marzinski) [2012340] - dm: fix bio_set allocation (Benjamin Marzinski) [2012340] - dm verity: set DM_TARGET_IMMUTABLE feature flag (Benjamin Marzinski) [2012340] - dm cache metadata: remove unnecessary variable in __dump_mapping (Benjamin Marzinski) [2012340] - dm mpath: provide high-resolution timer to HST for bio-based (Benjamin Marzinski) [2012340] - dm crypt: make printing of the key constant-time (Benjamin Marzinski) [2012340] - dm integrity: fix error code in dm_integrity_ctr() (Benjamin Marzinski) [2012340] - dm stats: add cond_resched when looping over entries (Benjamin Marzinski) [2012340] - dm: improve dm_io reference counting (Benjamin Marzinski) [2012340] - dm: switch to bdev based IO accounting interfaces (Benjamin Marzinski) [2012340] - block: add sectors parameter to bio_start_io_acct_time() (Benjamin Marzinski) [2012340] - dm: pass dm_io instance to dm_io_acct directly (Benjamin Marzinski) [2012340] - dm: don't pass bio to __dm_start_io_acct and dm_end_io_acct (Benjamin Marzinski) [2012340] - dm: use bio_sectors in dm_aceept_partial_bio (Benjamin Marzinski) [2012340] - dm: simplify basic targets (Benjamin Marzinski) [2012340] - dm: conditionally enable branching for less used features (Benjamin Marzinski) [2012340] - dm: move hot dm_io members to same cacheline as dm_target_io (Benjamin Marzinski) [2012340] - dm: add local variables to clone_endio and __map_bio (Benjamin Marzinski) [2012340] - dm: mark various branches unlikely (Benjamin Marzinski) [2012340] - dm: simplify dm_start_io_acct (Benjamin Marzinski) [2012340] - dm: simplify dm_io access in dm_split_and_process_bio (Benjamin Marzinski) [2012340] - dm: factor out dm_io_set_error and __dm_io_dec_pending (Benjamin Marzinski) [2012340] - block: fix offset/size check in bio_trim() (Benjamin Marzinski) [2012340] - block: fix argument type of bio_trim() (Benjamin Marzinski) [2012340] - dm: allow dm_accept_partial_bio() for dm_io without duplicate bios (Benjamin Marzinski) [2012340] - dm mpath: only use ktime_get_ns() in historical selector (Benjamin Marzinski) [2012340] - dm: fix dm_io and dm_target_io flags race condition on Alpha (Benjamin Marzinski) [2012340] - dm integrity: set journal entry unused when shrinking device (Benjamin Marzinski) [2012340] - dm ioctl: log an error if the ioctl structure is corrupted (Benjamin Marzinski) [2012340] - dm: consolidate spinlocks in dm_io struct (Benjamin Marzinski) [2012340] - dm: reduce size of dm_io and dm_target_io structs (Benjamin Marzinski) [2012340] - dm: switch dm_target_io booleans over to proper flags (Benjamin Marzinski) [2012340] - dm: switch dm_io booleans over to proper flags (Benjamin Marzinski) [2012340] - dm: return void from __send_empty_flush (Benjamin Marzinski) [2012340] - dm: factor out dm_io_complete (Benjamin Marzinski) [2012340] - dm cache: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: simplify dm_sumbit_bio_remap interface (Benjamin Marzinski) [2012340] - dm thin: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: add WARN_ON_ONCE to dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: requeue IO if mapping table not yet available (Benjamin Marzinski) [2012340] - dm thin metadata: remove unused dm_thin_remove_block and __remove (Benjamin Marzinski) [2012340] - dm thin: use time_is_before_jiffies instead of open coding it (Benjamin Marzinski) [2012340] - dm crypt: fix get_key_size compiler warning if !CONFIG_KEYS (Benjamin Marzinski) [2012340] - dm ioctl: prevent potential spectre v1 gadget (Benjamin Marzinski) [2012340] - dm cache policy smq: make static read-only array table const (Benjamin Marzinski) [2012340] - dm delay: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm crypt: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: add dm_submit_bio_remap interface (Benjamin Marzinski) [2012340] - dm: flag clones created by __send_duplicate_bios (Benjamin Marzinski) [2012340] - dm: reduce dm_io and dm_target_io struct sizes (Benjamin Marzinski) [2012340] - dm: move duplicate code from callers of alloc_tio into alloc_tio (Benjamin Marzinski) [2012340] - dm: record old_sector in dm_target_io before calling map function (Benjamin Marzinski) [2012340] - dm: remove legacy code only needed before submit_bio recursion (Benjamin Marzinski) [2012340] - dm: remove unused mapped_device argument from free_tio (Benjamin Marzinski) [2012340] - dm: remove impossible BUG_ON in __send_empty_flush (Benjamin Marzinski) [2012340] - dm: reduce code duplication in __map_bio (Benjamin Marzinski) [2012340] - dm: refactor dm_split_and_process_bio a bit (Benjamin Marzinski) [2012340] - dm: fold __clone_and_map_data_bio into __split_and_process_bio (Benjamin Marzinski) [2012340] - dm: rename split functions (Benjamin Marzinski) [2012340] - dm: eliminate copying of dm_io fields in dm_io_dec_pending (Benjamin Marzinski) [2012340] - dm ioctl: return UUID in DM_LIST_DEVICES_CMD result (Benjamin Marzinski) [2012340] - dm crypt: support using trusted keys (Benjamin Marzinski) [2012340] - dm crypt: replaced #if defined with IS_ENABLED (Benjamin Marzinski) [2012340] - ext4: add check to prevent attempting to resize an fs with sparse_super2 (Lukas Czerner) [2077760] - fscache: Avoid ASSERTCMP if two threads race into fscache_disable_cookie (Dave Wysochanski) [2073260] - lib: bitmap: Introduce node-aware alloc API (Ivan Vecera) [2101701] - exec: Force single empty string when argv is empty (Rafael Aquini) [2100955] - powerpc: Enable execve syscall exit tracepoint (Steve Best) [2095521] - cgroup: disable controllers at parse time (Waiman Long) [2098264] - init: initialize jump labels before command line option parsing (Waiman Long) [2098264] - smp: Make softirq handling RT safe in flush_smp_call_function_queue() (Phil Auld) [2097364] - smp: Rename flush_smp_call_function_from_idle() (Phil Auld) [2097364] - cpupower: Add "perf" option to print AMD P-State information (Steve Best) [2059365] - cpupower: Add function to print AMD P-State performance capabilities (Steve Best) [2059365] - cpupower: Move print_speed function into misc helper (Steve Best) [2059365] - cpupower: Enable boost state support for AMD P-State module (Steve Best) [2059365] - cpupower: Add AMD P-State sysfs definition and access helper (Steve Best) [2059365] - cpupower: Introduce ACPI CPPC library (Steve Best) [2059365] - cpupower: Add the function to get the sysfs value from specific table (Steve Best) [2059365] - cpupower: Initial AMD P-State capability (Steve Best) [2059365] - cpupower: Add the function to check AMD P-State enabled (Steve Best) [2059365] - cpupower: Add AMD P-State capability flag (Steve Best) [2059365] - tools/power/cpupower/{ToDo => TODO}: Rename the todo file (Steve Best) [2059365] - tools: cpupower: fix typo in cpupower-idle-set(1) manpage (Steve Best) [2059365] - ntb: intel: fix port config status offset for SPR (John W. Linville) [2048750] - NTB/msi: Use struct_size() helper in devm_kzalloc() (John W. Linville) [2048750] - ntb_hw_switchtec: Fix a minor issue in config_req_id_table() (John W. Linville) [2048750] - ntb_hw_switchtec: Remove code for disabling ID protection (John W. Linville) [2048750] - ntb_hw_switchtec: Update the way of getting VEP instance ID (John W. Linville) [2048750] - ntb_hw_switchtec: AND with the part_map for a valid tpart_vec (John W. Linville) [2048750] - ntb_hw_switchtec: Fix bug with more than 32 partitions (John W. Linville) [2048750] - ntb_hw_switchtec: Fix pff ioread to read into mmio_part_cfg_all (John W. Linville) [2048750] - ntb_hw_switchtec: fix the spelling of "its" (John W. Linville) [2048750] - NTB/msi: Fix ntbm_msi_request_threaded_irq() kernel-doc comment (John W. Linville) [2048750] - NTB: switch from 'pci_' to 'dma_' API (John W. Linville) [2048750] - ntb: ntb_pingpong: remove redundant initialization of variables msg_data and spad_data (John W. Linville) [2048750] - NTB: perf: Fix an error code in perf_setup_inbuf() (John W. Linville) [2048750] - NTB: Fix an error code in ntb_msit_probe() (John W. Linville) [2048750] - ntb: intel: remove invalid email address in header comment (John W. Linville) [2048750] - NTB: Add support for EPF PCI Non-Transparent Bridge (John W. Linville) [2048750] - ntb: intel: add Intel NTB LTR vendor support for gen4 NTB (John W. Linville) [2048750] - ntb: idt: fix error check in ntb_hw_idt.c (John W. Linville) [2048750]- KVM: x86: Fix the intel_pt PMI handling wrongly considered from guest (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't rebuild page when the page is synced and no tlb flushing is required (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Verify the pmu event filter matches the correct event (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Add the helper function create_pmu_event_filter (Vitaly Kuznetsov) [2074835] - kvm: x86/pmu: Fix the compare function used by the pmu event filter (Vitaly Kuznetsov) [2074835] - KVM: Free new dirty bitmap if creating a new memslot fails (Vitaly Kuznetsov) [2074835] - KVM: Initialize debugfs_dentry when a VM is created to avoid NULL deref (Vitaly Kuznetsov) [2074835] - tools arch x86: Sync asm/cpufeatures.h with the with the kernel (Vitaly Kuznetsov) [2074835] - KVM: PPC: Book3S HV: Fix kvm_unmap_gfn_range_hv() for Hash MMU (Vitaly Kuznetsov) [2074835] - KVM: PPC: Book3S HV: Fix conversion to gfn-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: arm64: Fix boolreturn.cocci warnings (Vitaly Kuznetsov) [2074835] - KVM: VMX: Exit to userspace if vCPU has injected exception and invalid state (Vitaly Kuznetsov) [2074835] - KVM: SEV: Mark nested locking of vcpu->lock (Vitaly Kuznetsov) [2074835] - kvm: x86/cpuid: Only provide CPUID leaf 0xA if host has architectural PMU (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Account for family 17h event renumberings in amd_pmc_perf_hw_id (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use atomic XCHG to write TDP MMU SPTEs with volatile bits (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move shadow-present check out of spte_has_volatile_bits() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't treat fully writable SPTEs as volatile (modulo A/D) (Vitaly Kuznetsov) [2074835] - selftests: kvm: add amx_test to .gitignore (Vitaly Kuznetsov) [2074835] - Revert "x86/mm: Introduce lookup_address_in_mm()" (Vitaly Kuznetsov) [2074835] - KVM: x86: work around QEMU issue with synthetic CPUID leaves (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: fix potential races when walking host page table (Vitaly Kuznetsov) [2074835] - Documentation: KVM: Update documentation to indicate KVM is arm64-only (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Do not create SPTEs for GFNs that exceed host.MAXPHYADDR (Vitaly Kuznetsov) [2074835] - kvm: selftests: introduce and use more page size-related constants (Vitaly Kuznetsov) [2074835] - kvm: selftests: do not use bitfields larger than 32-bits for PTEs (Vitaly Kuznetsov) [2074835] - KVM: SEV: add cache flush to solve SEV cache incoherency issues (Vitaly Kuznetsov) [2074835] - KVM: SVM: Flush when freeing encrypted pages even on SME_COHERENT CPUs (Vitaly Kuznetsov) [2074835] - KVM: SVM: Simplify and harden helper to flush SEV guest page(s) (Vitaly Kuznetsov) [2074835] - KVM: selftests: Silence compiler warning in the kvm_page_table_test (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Update AMD PMC sample period to fix guest NMI-watchdog (Vitaly Kuznetsov) [2074835] - x86/kvm: Preserve BSP MSR_KVM_POLL_CONTROL across suspend/resume (Vitaly Kuznetsov) [2074835] - KVM: x86: Skip KVM_GUESTDBG_BLOCKIRQ APICv update if APICv is disabled (Vitaly Kuznetsov) [2074835] - KVM: x86: Pend KVM_REQ_APICV_UPDATE during vCPU creation to fix a race (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Defer APICv updates while L2 is active until L1 is active (Vitaly Kuznetsov) [2074835] - KVM: x86: Tag APICv DISABLE inhibit, not ABSENT, if APICv is disabled (Vitaly Kuznetsov) [2074835] - KVM: Add helpers to wrap vcpu->srcu_idx and yell if it's abused (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't re-acquire SRCU lock in complete_emulated_io() (Vitaly Kuznetsov) [2074835] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Vitaly Kuznetsov) [2074835] - tools arch x86: Sync the msr-index.h copy with the kernel sources (Vitaly Kuznetsov) [2074835] - tools headers UAPI: Sync x86's asm/kvm.h with the kernel sources (Vitaly Kuznetsov) [2074835] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Check for supported page sizes (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Initialise default guest mode at test startup time (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Introduce a variable default IPA size (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Rework TCR_EL1 configuration (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Avoid writing to TSC page without an active vCPU (Vitaly Kuznetsov) [2074835] - KVM: SVM: Do not activate AVIC for SEV-enabled guest (Vitaly Kuznetsov) [2074835] - selftests: kvm: add tsc_scaling_sync to .gitignore (Vitaly Kuznetsov) [2074835] - KVM: Don't create VM debugfs files outside of the VM directory (Vitaly Kuznetsov) [2074835] - KVM: avoid NULL pointer dereference in kvm_dirty_ring_push (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: remove unnecessary flush_workqueue() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Resolve nx_huge_pages when kvm.ko is loaded (Vitaly Kuznetsov) [2074835] - KVM: SEV: Add cond_resched() to loop in sev_clflush_pages() (Vitaly Kuznetsov) [2074835] - KVM: x86: fix sending PV IPI (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do compare-and-exchange of gPTE via the user address (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove redundant vm_entry_controls_clearbit() call (Vitaly Kuznetsov) [2074835] - KVM: x86: cleanup enter_rmode() (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: fix tsc scaling when the host doesn't support it (Vitaly Kuznetsov) [2074835] - kvm: x86: SVM: remove unused defines (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: move tsc ratio definitions to svm.h (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: fix avic spec based definitions again (Vitaly Kuznetsov) [2074835] - KVM: x86: Only do MSR filtering when access MSR by rdmsr/wrmsr (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Emulate RDPID only if it is enabled in guest (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Fix and isolate TSX-specific performance event logic (Vitaly Kuznetsov) [2074835] - KVM: x86: mmu: trace kvm_mmu_set_spte after the new SPTE was set (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Clear reserved bits written to PerfEvtSeln MSRs (Vitaly Kuznetsov) [2074835] - KVM: x86: Trace all APICv inhibit changes and capture overall status (Vitaly Kuznetsov) [2074835] - KVM: x86: Add wrappers for setting/clearing APICv inhibits (Vitaly Kuznetsov) [2074835] - KVM: x86: Make APICv inhibit reasons an enum and cleanup naming (Vitaly Kuznetsov) [2074835] - KVM: X86: Handle implicit supervisor access with SMAP (Vitaly Kuznetsov) [2074835] - KVM: X86: Rename variable smap to not_smap in permission_fault() (Vitaly Kuznetsov) [2074835] - KVM: X86: Fix comments in update_permission_bitmask (Vitaly Kuznetsov) [2074835] - KVM: X86: Change the type of access u32 to u64 (Vitaly Kuznetsov) [2074835] - KVM: Remove dirty handling from gfn_to_pfn_cache completely (Vitaly Kuznetsov) [2074835] - KVM: Use enum to track if cached PFN will be used in guest and/or host (Vitaly Kuznetsov) [2074835] - KVM: SVM: Fix kvm_cache_regs.h inclusions for is_guest_mode() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Use different raw event masks for AMD and Intel (Vitaly Kuznetsov) [2074835] - KVM: Don't actually set a request when evicting vCPUs for GFN cache invd (Vitaly Kuznetsov) [2074835] - KVM: avoid double put_page with gfn-to-pfn cache (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only TDP MMU leafs in zap range and mmu_notifier unmap (Vitaly Kuznetsov) [2074835] - KVM: SVM: fix panic on out-of-bounds guest IRQ (Vitaly Kuznetsov) [2074835] - KVM: MMU: propagate alloc_workqueue failure (Vitaly Kuznetsov) [2074835] - KVM: x86: Forbid VMM to set SYNIC/STIMER MSRs when SynIC wasn't activated (Vitaly Kuznetsov) [2074835] - KVM: x86: Avoid theoretical NULL pointer dereference in kvm_irq_delivery_to_apic_fast() (Vitaly Kuznetsov) [2074835] - KVM: x86: Check lapic_in_kernel() before attempting to set a SynIC irq (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix clang -Wimplicit-fallthrough in do_host_cpuid() (Vitaly Kuznetsov) [2074835] - Revert "KVM: set owner of cpu and vm file operations" (Vitaly Kuznetsov) [2074835] - KVM: Prevent module exit until all VMs are freed (Vitaly Kuznetsov) [2074835] - KVM: use kvcalloc for array allocations (Vitaly Kuznetsov) [2074835] - KVM: x86: Introduce KVM_CAP_DISABLE_QUIRKS2 (Vitaly Kuznetsov) [2074835] - kvm: x86: Require const tsc for RT (Vitaly Kuznetsov) [2074835] - KVM: x86: synthesize CPUID leaf 0x80000021h if useful (Vitaly Kuznetsov) [2074835] - KVM: x86: add support for CPUID leaf 0x80000021 (Vitaly Kuznetsov) [2074835] - Revert "KVM: x86/mmu: Zap only TDP MMU leafs in kvm_zap_gfn_range()" (Vitaly Kuznetsov) [2074835] - kvm: x86/mmu: Flush TLB before zap_gfn_range releases RCU (Vitaly Kuznetsov) [2074835] - kvm/emulate: Fix SETcc emulation function offsets with SLS (Vitaly Kuznetsov) [2074835] - KVM: compat: riscv: Prevent KVM_COMPAT from being selected (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add test to populate a VM with the max possible guest mem (Vitaly Kuznetsov) [2074835] - KVM: selftests: Define cpu_relax() helpers for s390 and x86 (Vitaly Kuznetsov) [2074835] - KVM: selftests: Split out helper to allocate guest mem via memfd (Vitaly Kuznetsov) [2074835] - KVM: selftests: add shared hugetlbfs backing source type (Vitaly Kuznetsov) [2074835] - KVM: selftests: Move raw KVM_SET_USER_MEMORY_REGION helper to utils (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: WARN on any attempt to atomically update REMOVED SPTE (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check for a REMOVED leaf SPTE before making the SPTE (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap defunct roots via asynchronous worker (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap roots in two passes to avoid inducing RCU stalls (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow yielding when zapping GFNs for defunct TDP MMU root (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap invalidated roots via asynchronous worker (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Defer TLB flush to caller when freeing TDP MMU shadow pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Do remote TLB flush before dropping RCU in TDP MMU resched (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only TDP MMU leafs in kvm_zap_gfn_range() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Require mmu_lock be held for write to zap TDP MMU range (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add dedicated helper to zap TDP MMU root shadow page (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Skip remote TLB flush when zapping all of TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only the target TDP MMU shadow page in NX recovery (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Refactor low-level TDP MMU set SPTE helper to take raw values (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: WARN if old _or_ new SPTE is REMOVED in non-atomic path (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add helpers to read/write TDP MMU SPTEs and document RCU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop RCU after processing each root in MMU notifier hooks (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Batch TLB flushes from TDP MMU for MMU notifier change_spte (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check for !leaf=>leaf, not PFN change, in TDP MMU SP removal (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do not allow readers to acquire references to invalid roots (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: only perform eager page splitting on valid roots (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Require mmu_lock be held for write in unyielding root iter (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Document that zapping invalidated roots doesn't need to flush (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Formalize TDP MMU's (unintended?) deferred TLB flush logic (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fix wrong/misleading comments in TDP MMU fast zap (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check for present SPTE when clearing dirty bit in TDP MMU (Vitaly Kuznetsov) [2074835] - selftests: kvm: add generated file to the .gitignore (Vitaly Kuznetsov) [2074835] - KVM: x86: pull kvm->srcu read-side to kvm_arch_vcpu_ioctl_run (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Passing up the error state of mmu_alloc_shadow_roots() (Vitaly Kuznetsov) [2074835] - KVM: SVM: Disable preemption across AVIC load/put during APICv refresh (Vitaly Kuznetsov) [2074835] - KVM: SVM: Exit to userspace on ENOMEM/EFAULT GHCB errors (Vitaly Kuznetsov) [2074835] - KVM: WARN if is_unsync_root() is called on a root without a shadow page (Vitaly Kuznetsov) [2074835] - KVM: Drop KVM_REQ_MMU_RELOAD and update vcpu-requests.rst documentation (Vitaly Kuznetsov) [2074835] - KVM: s390: Replace KVM_REQ_MMU_RELOAD usage with arch specific request (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only obsolete roots if a root shadow page is zapped (Vitaly Kuznetsov) [2074835] - KVM: Drop kvm_reload_remote_mmus(), open code request in x86 users (Vitaly Kuznetsov) [2074835] - KVM: x86: Invoke kvm_mmu_unload() directly on CR4.PCIDE change (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Move the unhandled outer privilege level logic of far return into __load_segment_descriptor() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Fix wrong privilege check for code segment in __load_segment_descriptor() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Defer not-present segment check in __load_segment_descriptor() (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add test to verify KVM handling of ICR (Vitaly Kuznetsov) [2074835] - KVM: x86: Make kvm_lapic_set_reg() a "private" xAPIC helper (Vitaly Kuznetsov) [2074835] - KVM: x86: Treat x2APIC's ICR as a 64-bit register, not two 32-bit regs (Vitaly Kuznetsov) [2074835] - KVM: x86: Add helpers to handle 64-bit APIC MSR read/writes (Vitaly Kuznetsov) [2074835] - KVM: x86: Make kvm_lapic_reg_{read,write}() static (Vitaly Kuznetsov) [2074835] - KVM: x86: WARN if KVM emulates an IPI without clearing the BUSY flag (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't rewrite guest ICR on AVIC IPI virtualization failure (Vitaly Kuznetsov) [2074835] - KVM: SVM: Use common kvm_apic_write_nodecode() for AVIC write traps (Vitaly Kuznetsov) [2074835] - KVM: x86: Use "raw" APIC register read for handling APIC-write VM-Exit (Vitaly Kuznetsov) [2074835] - KVM: VMX: Handle APIC-write offset wrangling in VMX code (Vitaly Kuznetsov) [2074835] - KVM: x86: Do not change ICR on write to APIC_SELF_IPI (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix emulation in writing cr8 (Vitaly Kuznetsov) [2074835] - KVM: x86: flush TLB separately from MMU reset (Vitaly Kuznetsov) [2074835] - KVM: x86: Yield to IPI target vCPU only if it is busy (Vitaly Kuznetsov) [2074835] - x86/kvmclock: Fix Hyper-V Isolated VM's boot issue when vCPUs > 64 (Vitaly Kuznetsov) [2074835] - x86/kvm: Don't waste memory if kvmclock is disabled (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: clear MMIO cache when unloading the MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Always use current mmu's role when loading new PGD (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: load new PGD after the shadow MMU is initialized (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: look for a cached PGD when going from 32-bit to 64-bit (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do not pass vcpu to root freeing functions (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do not consult levels when freeing roots (Vitaly Kuznetsov) [2074835] - KVM: x86: use struct kvm_mmu_root_info for mmu->root (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: avoid NULL-pointer dereference on page freeing bugs (Vitaly Kuznetsov) [2074835] - KVM: x86: do not deliver asynchronous page faults if CR0.PG=0 (Vitaly Kuznetsov) [2074835] - KVM: x86: Reinitialize context if host userspace toggles EFER.LME (Vitaly Kuznetsov) [2074835] - KVM: selftests: Verify disabling PMU virtualization via KVM_CAP_CONFIG_PMU (Vitaly Kuznetsov) [2074835] - KVM: selftests: Carve out helper to create "default" VM without vCPUs (Vitaly Kuznetsov) [2074835] - KVM: x86: Provide per VM capability for disabling PMU virtualization (Vitaly Kuznetsov) [2074835] - KVM: Move VM's worker kthreads back to the original cgroup before exiting. (Vitaly Kuznetsov) [2074835] - KVM: VMX: Remove scratch 'cpu' variable that shadows an identical scratch var (Vitaly Kuznetsov) [2074835] - kvm: vmx: Fix typos comment in __loaded_vmcs_clear() (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Make setup/unsetup under the same conditions (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: HVCALL_SEND_IPI_EX is an XMM fast hypercall (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Fix the maximum number of sparse banks for XMM fast TLB flush hypercalls (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Drop redundant 'ex' parameter from kvm_hv_flush_tlb() (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Drop redundant 'ex' parameter from kvm_hv_send_ipi() (Vitaly Kuznetsov) [2074835] - Revert "KVM: VMX: Save HOST_CR3 in vmx_prepare_switch_to_guest()" (Vitaly Kuznetsov) [2074835] - Revert "KVM: VMX: Save HOST_CR3 in vmx_set_host_fs_gs()" (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: disallow userspace setting of MSR_AMD64_TSC_RATIO to non default value when tsc scaling disabled (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: make apf token non-zero to fix bug (Vitaly Kuznetsov) [2074835] - selftests: kvm: Add the uapi headers include variable (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add EXTRA_CFLAGS in top-level Makefile (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove MMU auditing (Vitaly Kuznetsov) [2074835] - KVM: x86: make several APIC virtualization callbacks optional (Vitaly Kuznetsov) [2074835] - KVM: x86: warn on incorrectly NULL members of kvm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: x86: remove KVM_X86_OP_NULL and mark optional kvm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: x86: use static_call_cond for optional callbacks (Vitaly Kuznetsov) [2074835] - KVM: x86: return 1 unconditionally for availability of KVM_CAP_VAPIC (Vitaly Kuznetsov) [2074835] - selftests: KVM: allow sev_migrate_tests on machines without SEV-ES (Vitaly Kuznetsov) [2074835] - KVM: SEV: Allow SEV intra-host migration of VM with mirrors (Vitaly Kuznetsov) [2074835] - x86/kvm: Fix compilation warning in non-x86_64 builds (Vitaly Kuznetsov) [2074835] - kvm: x86: Disable KVM_HC_CLOCK_PAIRING if tsc is in always catchup mode (Vitaly Kuznetsov) [2074835] - KVM: Fix lockdep false negative during host resume (Vitaly Kuznetsov) [2074835] - KVM: x86: Add KVM_CAP_ENABLE_CAP to x86 (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename AVIC helpers to use "avic" prefix instead of "svm" (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Use AMD64_RAW_EVENT_MASK for PERF_TYPE_RAW (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Don't truncate the PerfEvtSeln MSR when creating a perf event (Vitaly Kuznetsov) [2074835] - KVM: x86: Replace memset() "optimization" with normal per-field writes (Vitaly Kuznetsov) [2074835] - KVM: SVM: fix race between interrupt delivery and AVIC inhibition (Vitaly Kuznetsov) [2074835] - KVM: SVM: set IRR in svm_deliver_interrupt (Vitaly Kuznetsov) [2074835] - KVM: SVM: extract avic_ring_doorbell (Vitaly Kuznetsov) [2074835] - selftests: kvm: Remove absent target file (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use local pointer to vcpu_vmx in vmx_vcpu_after_set_cpuid() (Vitaly Kuznetsov) [2074835] - KVM: selftests: nSVM: Add enlightened MSR-Bitmap selftest (Vitaly Kuznetsov) [2074835] - KVM: selftests: nSVM: Update 'struct vmcb_control_area' definition (Vitaly Kuznetsov) [2074835] - KVM: selftests: nSVM: Set up MSR-Bitmap for SVM guests (Vitaly Kuznetsov) [2074835] - KVM: selftests: nVMX: Add enlightened MSR-Bitmap selftest (Vitaly Kuznetsov) [2074835] - KVM: selftests: nVMX: Properly deal with 'hv_clean_fields' (Vitaly Kuznetsov) [2074835] - KVM: selftests: Adapt hyperv_cpuid test to the newly introduced Enlightened MSR-Bitmap (Vitaly Kuznetsov) [2074835] - KVM: nSVM: Implement Enlightened MSR-Bitmap feature (Vitaly Kuznetsov) [2074835] - KVM: nSVM: Split off common definitions for Hyper-V on KVM and KVM on Hyper-V (Vitaly Kuznetsov) [2074835] - KVM: x86: Make kvm_hv_hypercall_enabled() static inline (Vitaly Kuznetsov) [2074835] - KVM: nSVM: Track whether changes in L0 require MSR bitmap for L2 to be rebuilt (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add an option to disable MANUAL_PROTECT_ENABLE and INITIALLY_SET (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add tracepoint for splitting huge pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Split huge pages mapped by the TDP MMU during KVM_CLEAR_DIRTY_LOG (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Split huge pages mapped by the TDP MMU when dirty logging is enabled (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Separate TDP MMU shadow page allocation and initialization (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Derive page role for TDP MMU shadow pages from parent (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove redundant role overrides for TDP MMU shadow pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Refactor TDP MMU iterators to take kvm_mmu_page root (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move restore_acc_track_spte() to spte.h (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop new_spte local variable from restore_acc_track_spte() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unnecessary warnings from restore_acc_track_spte() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Consolidate logic to atomically install a new TDP MMU page table (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename handle_removed_tdp_mmu_page() to handle_removed_pt() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename TDP MMU functions that handle shadow pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Change tdp_mmu_{set,zap}_spte_atomic() to return 0/-EBUSY (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Automatically update iter->old_spte if cmpxchg fails (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename __rmap_write_protect() to rmap_write_protect() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename rmap_write_protect() to kvm_vcpu_write_protect_gfn() (Vitaly Kuznetsov) [2074835] - KVM: x86: Add checks for reserved-to-zero Hyper-V hypercall fields (Vitaly Kuznetsov) [2074835] - KVM: x86: Reject fixeds-size Hyper-V hypercalls with non-zero "var_cnt" (Vitaly Kuznetsov) [2074835] - KVM: x86: Shove vp_bitmap handling down into sparse_set_to_vcpu_mask() (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't bother reading sparse banks that end up being ignored (Vitaly Kuznetsov) [2074835] - KVM: x86: Add a helper to get the sparse VP_SET for IPIs and TLB flushes (Vitaly Kuznetsov) [2074835] - KVM: x86: Refactor kvm_hv_flush_tlb() to reduce indentation (Vitaly Kuznetsov) [2074835] - KVM: x86: Get the number of Hyper-V sparse banks from the VARHEAD field (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Consolidate comments about {Host,MMU}-writable (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename DEFAULT_SPTE_MMU_WRITEABLE to DEFAULT_SPTE_MMU_WRITABLE (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move is_writable_pte() to spte.h (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check SPTE writable invariants when setting leaf SPTEs (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move SPTE writable invariant checks to a helper function (Vitaly Kuznetsov) [2074835] - KVM: LAPIC: Enable timer posted-interrupt only when mwait/hlt is advertised (Vitaly Kuznetsov) [2074835] - KVM: VMX: Dont' send posted IRQ if vCPU == this vCPU and vCPU is IN_GUEST_MODE (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename hook implementations to conform to kvm_x86_ops' names (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename SEV implemenations to conform to kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: x86: Use more verbose names for mem encrypt kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove unused MAX_INST_SIZE #define (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename svm_flush_tlb() to svm_flush_tlb_current() (Vitaly Kuznetsov) [2074835] - KVM: x86: Move get_cs_db_l_bits() helper to SVM (Vitaly Kuznetsov) [2074835] - KVM: VMX: Rename VMX functions to conform to kvm_x86_ops names (Vitaly Kuznetsov) [2074835] - KVM: x86: Use static_call() for copy/move encryption context ioctls() (Vitaly Kuznetsov) [2074835] - KVM: x86: Unexport kvm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: x86: Uninline and export hv_track_root_tdp() (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Refactor PMU refresh to avoid referencing kvm_x86_ops.pmu_ops (Vitaly Kuznetsov) [2074835] - KVM: xen: Use static_call() for invoking kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: x86: Use static_call() for .vcpu_deliver_sipi_vector() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Call vmx_get_cpl() directly in handle_dr() (Vitaly Kuznetsov) [2074835] - KVM: x86: Rename kvm_x86_ops pointers to align w/ preferred vendor names (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop export for .tlb_flush_current() static_call key (Vitaly Kuznetsov) [2074835] - KVM: x86: skip host CPUID call for hypervisor leaves (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove unused "flags" of kvm_pv_kick_cpu_op() (Vitaly Kuznetsov) [2074835] - KVM: Remove unused "kvm" of kvm_make_vcpu_request() (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove unused "vcpu" of kvm_scale_tsc() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulate: Remove unused "tss_selector" of task_switch_{16, 32}() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulate: Remove unused "ctxt" of setup_syscalls_segments() (Vitaly Kuznetsov) [2074835] - KVM: x86/ioapic: Remove unused "addr" and "length" of ioapic_read_indirect() (Vitaly Kuznetsov) [2074835] - KVM: x86/i8259: Remove unused "addr" of elcr_ioport_{read,write}() (Vitaly Kuznetsov) [2074835] - KVM: SVM: improve split between svm_prepare_guest_switch and sev_es_prepare_guest_switch (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Remove unused "vcpu" of svm_check_exit_valid() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu_audit: Remove unused "level" of audit_spte_after_sync() (Vitaly Kuznetsov) [2074835] - KVM: x86/tdp_mmu: Remove unused "kvm" of kvm_tdp_mmu_get_root() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unused "vcpu" of reset_{tdp,ept}_shadow_zero_bits_mask() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unused "kvm" of __rmap_write_protect() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unused "kvm" of kvm_mmu_unlink_parents() (Vitaly Kuznetsov) [2074835] - KVM: x86: Skip APICv update if APICv is disable at the module level (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop NULL check on kvm_x86_ops.check_apicv_inhibit_reasons (Vitaly Kuznetsov) [2074835] - KVM: x86: Unexport __kvm_request_apicv_update() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap _all_ roots when unmapping gfn range in TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move "invalid" check out of kvm_tdp_mmu_get_root() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use common TDP MMU zap helper for MMU notifier unmap hook (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Fix runstate updates to be atomic when preempting vCPU (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: move avic definitions from AMD's spec to svm.h (Vitaly Kuznetsov) [2074835] - KVM: x86: lapic: don't touch irr_pending in kvm_apic_update_apicv when inhibiting it (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: deal with L1 hypervisor that intercepts interrupts but lets L2 control them (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: expose clean bit support to the guest (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM/nVMX: set nested_run_pending on VM entry which is a result of RSM (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: mark vmcb01 as dirty when restoring SMM saved state (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: fix potential NULL derefernce on nested migration (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: don't passthrough SMAP/SMEP/PKE bits in !NPT && !gCR0.PG case (Vitaly Kuznetsov) [2074835] - Revert "svm: Add warning message for AVIC IPI invalid target" (Vitaly Kuznetsov) [2074835] - selftests: KVM: Test OS lock behavior (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add OSLSR_EL1 to the list of blessed regs (Vitaly Kuznetsov) [2074835] - KVM: x86: Report deprecated x87 features in supported CPUID (Vitaly Kuznetsov) [2074835] - x86/cpufeatures: Add FDP_EXCPTN_ONLY and ZERO_FCS_FDS (Vitaly Kuznetsov) [2074835] - KVM: x86: use the KVM side max supported fixed counter (Vitaly Kuznetsov) [2074835] - x86: Share definition of __is_canonical_address() (Vitaly Kuznetsov) [2074835] - perf/x86/intel/pt: Relax address filter validation (Vitaly Kuznetsov) [2074835] - KVM: x86: Move delivery of non-APICv interrupt into vendor code (Vitaly Kuznetsov) [2074835] - KVM: eventfd: Fix false positive RCU usage warning (Vitaly Kuznetsov) [2074835] - selftests: kvm: check dynamic bits against KVM_X86_XCOMP_GUEST_SUPP (Vitaly Kuznetsov) [2074835] - KVM: x86: Sync the states size with the XCR0/IA32_XSS at, any time (Vitaly Kuznetsov) [2074835] - KVM: x86: Update vCPU's runtime CPUID on write to MSR_IA32_XSS (Vitaly Kuznetsov) [2074835] - KVM: x86: Keep MSR_IA32_XSS unchanged for INIT (Vitaly Kuznetsov) [2074835] - KVM: x86: Free kvm_cpuid_entry2 array on post-KVM_RUN KVM_SET_CPUID{,2} (Vitaly Kuznetsov) [2074835] - KVM: nVMX: WARN on any attempt to allocate shadow VMCS for vmcs02 (Vitaly Kuznetsov) [2074835] - KVM: selftests: Don't skip L2's VMCALL in SMM test for SVM guest (Vitaly Kuznetsov) [2074835] - KVM: x86: Check .flags in kvm_cpuid_check_equal() too (Vitaly Kuznetsov) [2074835] - KVM: x86: Forcibly leave nested virt when SMM state is toggled (Vitaly Kuznetsov) [2074835] - KVM: SVM: drop unnecessary code in svm_hv_vmcb_dirty_nested_enlightenments() (Vitaly Kuznetsov) [2074835] - KVM: SVM: hyper-v: Enable Enlightened MSR-Bitmap support for real (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't kill SEV guest if SMAP erratum triggers in usermode (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't apply SEV+SMAP workaround on code fetch or PT access (Vitaly Kuznetsov) [2074835] - KVM: SVM: Inject #UD on attempted emulation for SEV guest w/o insn buffer (Vitaly Kuznetsov) [2074835] - KVM: SVM: WARN if KVM attempts emulation on #UD or #GP for SEV guests (Vitaly Kuznetsov) [2074835] - KVM: x86: Pass emulation type to can_emulate_instruction() (Vitaly Kuznetsov) [2074835] - KVM: SVM: Explicitly require DECODEASSISTS to enable SEV support (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't intercept #GP for SEV guests (Vitaly Kuznetsov) [2074835] - Revert "KVM: SVM: avoid infinite loop on NPF from bad address" (Vitaly Kuznetsov) [2074835] - KVM: SVM: Never reject emulation due to SMAP errata for !SEV guests (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: skip eax alignment check for non-SVM instructions (Vitaly Kuznetsov) [2074835] - KVM: LAPIC: Also cancel preemption timer during SET_LAPIC (Vitaly Kuznetsov) [2074835] - KVM: VMX: Remove vmcs_config.order (Vitaly Kuznetsov) [2074835] - KVM/X86: Make kvm_vcpu_reload_apic_access_page() static (Vitaly Kuznetsov) [2074835] - KVM: selftests: Re-enable access_tracking_perf_test (Vitaly Kuznetsov) [2074835] - KVM: VMX: Set vmcs.PENDING_DBG.BS on #DB in STI/MOVSS blocking shadow (Vitaly Kuznetsov) [2074835] - KVM: remove async parameter of hva_to_pfn_remapped() (Vitaly Kuznetsov) [2074835] - x86,kvm/xen: Remove superfluous .fixup usage (Vitaly Kuznetsov) [2074835] - KVM: VMX: Zero host's SYSENTER_ESP iff SYSENTER is NOT used (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Fix the warning in lib/x86_64/processor.c (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Fix the warning in pmu_event_filter_test.c (Vitaly Kuznetsov) [2074835] - kvm: selftests: Do not indent with spaces (Vitaly Kuznetsov) [2074835] - KVM: SVM: Nullify vcpu_(un)blocking() hooks if AVIC is disabled (Vitaly Kuznetsov) [2074835] - KVM: SVM: Move svm_hardware_setup() and its helpers below svm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: SVM: Drop AVIC's intermediate avic_set_running() helper (Vitaly Kuznetsov) [2074835] - KVM: VMX: Don't do full kick when handling posted interrupt wakeup (Vitaly Kuznetsov) [2074835] - KVM: VMX: Fold fallback path into triggering posted IRQ helper (Vitaly Kuznetsov) [2074835] - KVM: VMX: Pass desired vector instead of bool for triggering posted IRQ (Vitaly Kuznetsov) [2074835] - KVM: VMX: Don't do full kick when triggering posted interrupt "fails" (Vitaly Kuznetsov) [2074835] - KVM: SVM: Skip AVIC and IRTE updates when loading blocking vCPU (Vitaly Kuznetsov) [2074835] - KVM: SVM: Use kvm_vcpu_is_blocking() in AVIC load to handle preemption (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove unnecessary APICv/AVIC update in vCPU unblocking path (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't bother checking for "running" AVIC when kicking for IPIs (Vitaly Kuznetsov) [2074835] - KVM: SVM: Signal AVIC doorbell iff vCPU is in guest mode (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove defunct pre_block/post_block kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: x86: Unexport LAPIC's switch_to_{hv,sw}_timer() helpers (Vitaly Kuznetsov) [2074835] - KVM: VMX: Move preemption timer <=> hrtimer dance to common x86 (Vitaly Kuznetsov) [2074835] - KVM: Move x86 VMX's posted interrupt list_head to vcpu_vmx (Vitaly Kuznetsov) [2074835] - KVM: Drop unused kvm_vcpu.pre_pcpu field (Vitaly Kuznetsov) [2074835] - KVM: VMX: Handle PI descriptor updates during vcpu_put/load (Vitaly Kuznetsov) [2074835] - KVM: avoid warning on s390 in mark_page_dirty (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add a test to force emulation with a pending exception (Vitaly Kuznetsov) [2074835] - KVM: VMX: Reject KVM_RUN if emulation is required with pending exception (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Add test for KVM_SET_PMU_EVENT_FILTER (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Introduce x86_model() (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Export x86_family() for use outside of processor.c (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Introduce is_amd_cpu() (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Parameterize the CPUID vendor string check (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Use binary search to check filtered events (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Improve TLB flush comment in kvm_mmu_slot_remove_write_access() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Document and enforce MMU-writable and Host-writable invariants (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Clear MMU-writable during changed_pte notifier (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fix write-protection of PTs mapped by the TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86: Making the module parameter of vPMU more common (Vitaly Kuznetsov) [2074835] - KVM: selftests: Test KVM_SET_CPUID2 after KVM_RUN (Vitaly Kuznetsov) [2074835] - KVM: selftests: Rename 'get_cpuid_test' to 'cpuid_test' (Vitaly Kuznetsov) [2074835] - KVM: x86: Partially allow KVM_SET_CPUID{,2} after KVM_RUN (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Fix available_event_types check for REF_CPU_CYCLES event (Vitaly Kuznetsov) [2074835] - KVM: x86: Check for rmaps allocation (Vitaly Kuznetsov) [2074835] - KVM: SEV: Mark nested locking of kvm->lock (Vitaly Kuznetsov) [2074835] - KVM: SVM: include CR3 in initial VMSA state for SEV-ES guests (Vitaly Kuznetsov) [2074835] - KVM: VMX: Provide vmread version using asm-goto-with-outputs (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix wall clock writes in Xen shared_info not to mark page dirty (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Add KVM_IRQ_ROUTING_XEN_EVTCHN and event channel delivery (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Maintain valid mapping of Xen shared_info page (Vitaly Kuznetsov) [2074835] - KVM: Reinstate gfn_to_pfn_cache with invalidation support (Vitaly Kuznetsov) [2074835] - KVM: Warn if mark_page_dirty() is called without an active vCPU (Vitaly Kuznetsov) [2074835] - x86/kvm: Silence per-cpu pr_info noise about KVM clocks and steal time (Vitaly Kuznetsov) [2074835] - KVM: x86: Update vPMCs when retiring branch instructions (Vitaly Kuznetsov) [2074835] - KVM: x86: Update vPMCs when retiring instructions (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Add pmc->intr to refactor kvm_perf_overflow{_intr}() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Reuse pmc_perf_hw_id() and drop find_fixed_event() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Refactoring find_arch_event() to pmc_perf_hw_id() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Setup pmc->eventsel for fixed PMCs (Vitaly Kuznetsov) [2074835] - KVM: x86: avoid out of bounds indices for fixed performance counters (Vitaly Kuznetsov) [2074835] - KVM: VMX: Mark VCPU_EXREG_CR3 dirty when !CR0_PG -> CR0_PG if EPT + !URG (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Reconstruct shadow page root if the guest PDPTEs is changed (Vitaly Kuznetsov) [2074835] - KVM: VMX: Save HOST_CR3 in vmx_set_host_fs_gs() (Vitaly Kuznetsov) [2074835] - Revert "KVM: X86: Update mmu->pdptrs only when it is changed" (Vitaly Kuznetsov) [2074835] - selftests: KVM: sev_migrate_tests: Add mirror command tests (Vitaly Kuznetsov) [2074835] - selftests: KVM: sev_migrate_tests: Fix sev_ioctl() (Vitaly Kuznetsov) [2074835] - selftests: KVM: sev_migrate_tests: Fix test_sev_mirror() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Wake vCPU when delivering posted IRQ even if vCPU == this vCPU (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add test to verify TRIPLE_FAULT on invalid L2 guest state (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Synthesize TRIPLE_FAULT for L2 if emulation is required (Vitaly Kuznetsov) [2074835] - KVM: VMX: Always clear vmx->fail on emulation_required (Vitaly Kuznetsov) [2074835] - selftests: KVM: Fix non-x86 compiling (Vitaly Kuznetsov) [2074835] - KVM: x86: Always set kvm_run->if_flag (Vitaly Kuznetsov) [2074835] - KVM: x86: remove PMU FIXED_CTR3 from msrs_to_save_all (Vitaly Kuznetsov) [2074835] - KVM: x86: Retry page fault if MMU reload is pending and root has no sp (Vitaly Kuznetsov) [2074835] - KVM: selftests: vmx_pmu_msrs_test: Drop tests mangling guest visible CPUIDs (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop guest CPUID check for host initiated writes to MSR_IA32_PERF_CAPABILITIES (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add test to verify KVM doesn't explode on "bad" I/O (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't WARN if userspace mucks with RCX during string I/O exit (Vitaly Kuznetsov) [2074835] - KVM: X86: Raise #GP when clearing CR0_PG in 64 bit mode (Vitaly Kuznetsov) [2074835] - selftests: KVM: avoid failures due to reserved HyperTransport region (Vitaly Kuznetsov) [2074835] - KVM: x86: Ignore sparse banks size for an "all CPUs", non-sparse IPI req (Vitaly Kuznetsov) [2074835] - KVM: Add Makefile.kvm for common files, use it for x86 (Vitaly Kuznetsov) [2074835] - KVM: Introduce CONFIG_HAVE_KVM_DIRTY_RING (Vitaly Kuznetsov) [2074835] - KVM: x86: selftests: svm_int_ctl_test: fix intercept calculation (Vitaly Kuznetsov) [2074835] - KVM: VMX: Clean up PI pre/post-block WARNs (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Ensure vCPU honors event request if posting nested IRQ fails (Vitaly Kuznetsov) [2074835] - KVM: x86: add a tracepoint for APICv/AVIC interrupt delivery (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Implement Enlightened MSR Bitmap feature (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Track whether changes in L0 require MSR bitmap for L2 to be rebuilt (Vitaly Kuznetsov) [2074835] - KVM: VMX: Introduce vmx_msr_bitmap_l01_changed() helper (Vitaly Kuznetsov) [2074835] - KVM: x86: Exit to userspace if emulation prepared a completion callback (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Don't use Enlightened MSR Bitmap for L3 (Vitaly Kuznetsov) [2074835] - KVM: x86: Use different callback if msr access comes from the emulator (Vitaly Kuznetsov) [2074835] - KVM: x86: Add an emulation type to handle completion of user exits (Vitaly Kuznetsov) [2074835] - KVM: x86: Handle 32-bit wrap of EIP for EMULTYPE_SKIP with flat code seg (Vitaly Kuznetsov) [2074835] - KVM: Clear pv eoi pending bit only when it is set (Vitaly Kuznetsov) [2074835] - KVM: x86: don't print when fail to read/write pv eoi memory (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove mmu parameter from load_pdptrs() (Vitaly Kuznetsov) [2074835] - KVM: X86: Rename gpte_is_8_bytes to has_4_byte_gpte and invert the direction (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use ept_caps_to_lpage_level() in hardware_setup() (Vitaly Kuznetsov) [2074835] - KVM: X86: Add parameter huge_page_level to kvm_init_shadow_ept_mmu() (Vitaly Kuznetsov) [2074835] - KVM: X86: Add huge_page_level to __reset_rsvds_bits_mask_ept() (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove mmu->translate_gpa (Vitaly Kuznetsov) [2074835] - KVM: X86: Add parameter struct kvm_mmu *mmu into mmu->gva_to_gpa() (Vitaly Kuznetsov) [2074835] - KVM: X86: Calculate quadrant when !role.gpte_is_8_bytes (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove useless code to set role.gpte_is_8_bytes when role.direct (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove unused declaration of __kvm_mmu_free_some_pages() (Vitaly Kuznetsov) [2074835] - KVM: X86: Fix comment in __kvm_mmu_create() (Vitaly Kuznetsov) [2074835] - KVM: X86: Skip allocating pae_root for vcpu->arch.guest_mmu when !tdp_enabled (Vitaly Kuznetsov) [2074835] - KVM: SVM: Allocate sd->save_area with __GFP_ZERO (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename get_max_npt_level() to get_npt_level() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Change comments about vmx_get_msr() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use kvm_set_msr_common() for MSR_IA32_TSC_ADJUST in the default way (Vitaly Kuznetsov) [2074835] - KVM: VMX: Save HOST_CR3 in vmx_prepare_switch_to_guest() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Update msr value after kvm_set_user_return_msr() succeeds (Vitaly Kuznetsov) [2074835] - KVM: VMX: Avoid to rdmsrl(MSR_IA32_SYSENTER_ESP) (Vitaly Kuznetsov) [2074835] - KVM: X86: Update mmu->pdptrs only when it is changed (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove kvm_register_clear_available() (Vitaly Kuznetsov) [2074835] - KVM: vmx, svm: clean up mass updates to regs_avail/regs_dirty bits (Vitaly Kuznetsov) [2074835] - KVM: VMX: Update vmcs.GUEST_CR3 only when the guest CR3 is dirty (Vitaly Kuznetsov) [2074835] - KVM: X86: Mark CR3 dirty when vcpu->arch.cr3 is changed (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove references to VCPU_EXREG_CR3 (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove outdated comment in svm_load_mmu_pgd() (Vitaly Kuznetsov) [2074835] - KVM: X86: Move CR0 pdptr_bits into header file as X86_CR0_PDPTR_BITS (Vitaly Kuznetsov) [2074835] - KVM: VMX: Add and use X86_CR4_PDPTR_BITS when !enable_ept (Vitaly Kuznetsov) [2074835] - KVM: VMX: Add and use X86_CR4_TLBFLUSH_BITS when !enable_ept (Vitaly Kuznetsov) [2074835] - KVM: SVM: Track dirtiness of PDPTRs even if NPT is disabled (Vitaly Kuznetsov) [2074835] - KVM: VMX: Mark VCPU_EXREG_PDPTR available in ept_save_pdptrs() (Vitaly Kuznetsov) [2074835] - KVM: X86: Ensure that dirty PDPTRs are loaded (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Add module param to control PMU virtualization (Vitaly Kuznetsov) [2074835] - KVM: VMX: Remove vCPU from PI wakeup list before updating PID.NV (Vitaly Kuznetsov) [2074835] - KVM: VMX: Move Posted Interrupt ndst computation out of write loop (Vitaly Kuznetsov) [2074835] - KVM: VMX: Read Posted Interrupt "control" exactly once per loop iteration (Vitaly Kuznetsov) [2074835] - KVM: VMX: Save/restore IRQs (instead of CLI/STI) during PI pre/post block (Vitaly Kuznetsov) [2074835] - KVM: VMX: Drop pointless PI.NDST update when blocking (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use boolean returns for Posted Interrupt "test" helpers (Vitaly Kuznetsov) [2074835] - KVM: VMX: Drop unnecessary PI logic to handle impossible conditions (Vitaly Kuznetsov) [2074835] - KVM: VMX: Skip Posted Interrupt updates if APICv is hard disabled (Vitaly Kuznetsov) [2074835] - KVM: Add helpers to wake/query blocking vCPU (Vitaly Kuznetsov) [2074835] - KVM: x86: Invoke kvm_vcpu_block() directly for non-HALTED wait states (Vitaly Kuznetsov) [2074835] - KVM: x86: Directly block (instead of "halting") UNINITIALIZED vCPUs (Vitaly Kuznetsov) [2074835] - KVM: Don't redo ktime_get() when calculating halt-polling stop/deadline (Vitaly Kuznetsov) [2074835] - KVM: stats: Add stat to detect if vcpu is currently blocking (Vitaly Kuznetsov) [2074835] - KVM: Split out a kvm_vcpu_block() helper from kvm_vcpu_halt() (Vitaly Kuznetsov) [2074835] - KVM: Rename kvm_vcpu_block() => kvm_vcpu_halt() (Vitaly Kuznetsov) [2074835] - KVM: Drop obsolete kvm_arch_vcpu_block_finish() (Vitaly Kuznetsov) [2074835] - KVM: x86: Tweak halt emulation helper names to free up kvm_vcpu_halt() (Vitaly Kuznetsov) [2074835] - KVM: Don't block+unblock when halt-polling is successful (Vitaly Kuznetsov) [2074835] - KVM: Reconcile discrepancies in halt-polling stats (Vitaly Kuznetsov) [2074835] - KVM: Refactor and document halt-polling stats update helper (Vitaly Kuznetsov) [2074835] - KVM: Update halt-polling stats if and only if halt-polling was attempted (Vitaly Kuznetsov) [2074835] - KVM: Force PPC to define its own rcuwait object (Vitaly Kuznetsov) [2074835] - KVM: SVM: Ensure target pCPU is read once when signalling AVIC doorbell (Vitaly Kuznetsov) [2074835] - KVM: VMX: Don't unblock vCPU w/ Posted IRQ if IRQs are disabled in guest (Vitaly Kuznetsov) [2074835] - KVM: x86: change TLB flush indicator to bool (Vitaly Kuznetsov) [2074835] - KVM: Avoid atomic operations when kicking the running vCPU (Vitaly Kuznetsov) [2074835] - KVM: x86/MMU: Simplify flow of vmx_get_mt_mask (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Propagate memslot const qualifier (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove need for a vcpu from mmu_try_to_unsync_pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove need for a vcpu from kvm_slot_page_track_is_active (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use shadow page role to detect PML-unfriendly pages for L2 (Vitaly Kuznetsov) [2074835] - KVM: nSVM: introduce struct vmcb_ctrl_area_cached (Vitaly Kuznetsov) [2074835] - KVM: nSVM: split out __nested_vmcb_check_controls (Vitaly Kuznetsov) [2074835] - KVM: nSVM: use svm->nested.save to load vmcb12 registers and avoid TOC/TOU races (Vitaly Kuznetsov) [2074835] - KVM: nSVM: use vmcb_save_area_cached in nested_vmcb_valid_sregs() (Vitaly Kuznetsov) [2074835] - KVM: nSVM: rename nested_load_control_from_vmcb12 in nested_copy_vmcb_control_to_cache (Vitaly Kuznetsov) [2074835] - KVM: nSVM: introduce svm->nested.save to cache save area before checks (Vitaly Kuznetsov) [2074835] - KVM: nSVM: move nested_vmcb_check_cr3_cr4 logic in nested_vmcb_valid_sregs (Vitaly Kuznetsov) [2074835] - KVM: Dynamically allocate "new" memslots from the get-go (Vitaly Kuznetsov) [2074835] - KVM: Wait 'til the bitter end to initialize the "new" memslot (Vitaly Kuznetsov) [2074835] - KVM: Optimize overlapping memslots check (Vitaly Kuznetsov) [2074835] - KVM: Optimize gfn lookup in kvm_zap_gfn_range() (Vitaly Kuznetsov) [2074835] - KVM: Call kvm_arch_flush_shadow_memslot() on the old slot in kvm_invalidate_memslot() (Vitaly Kuznetsov) [2074835] - KVM: Keep memslots in tree-based structures instead of array-based ones (Vitaly Kuznetsov) [2074835] - KVM: Use interval tree to do fast hva lookup in memslots (Vitaly Kuznetsov) [2074835] - KVM: Resolve memslot ID via a hash table instead of via a static array (Vitaly Kuznetsov) [2074835] - KVM: Move WARN on invalid memslot index to update_memslots() (Vitaly Kuznetsov) [2074835] - KVM: x86: Use nr_memslot_pages to avoid traversing the memslots array (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't call kvm_mmu_change_mmu_pages() if the count hasn't changed (Vitaly Kuznetsov) [2074835] - KVM: Don't make a full copy of the old memslot in __kvm_set_memory_region() (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't assume old/new memslots are non-NULL at memslot commit (Vitaly Kuznetsov) [2074835] - KVM: Use prepare/commit hooks to handle generic memslot metadata updates (Vitaly Kuznetsov) [2074835] - KVM: Stop passing kvm_userspace_memory_region to arch memslot hooks (Vitaly Kuznetsov) [2074835] - KVM: PPC: Avoid referencing userspace memory region in memslot updates (Vitaly Kuznetsov) [2074835] - KVM: x86: Use "new" memslot instead of userspace memory region (Vitaly Kuznetsov) [2074835] - KVM: s390: Use "new" memslot instead of userspace memory region (Vitaly Kuznetsov) [2074835] - KVM: arm64: Use "new" memslot instead of userspace memory region (Vitaly Kuznetsov) [2074835] - KVM: Let/force architectures to deal with arch specific memslot data (Vitaly Kuznetsov) [2074835] - KVM: Use "new" memslot's address space ID instead of dedicated param (Vitaly Kuznetsov) [2074835] - KVM: Resync only arch fields when slots_arch_lock gets reacquired (Vitaly Kuznetsov) [2074835] - KVM: Open code kvm_delete_memslot() into its only caller (Vitaly Kuznetsov) [2074835] - KVM: Require total number of memslot pages to fit in an unsigned long (Vitaly Kuznetsov) [2074835] - KVM: Convert kvm_for_each_vcpu() to using xa_for_each_range() (Vitaly Kuznetsov) [2074835] - KVM: arm64: vgic-v3: Fix vcpu index comparison (Vitaly Kuznetsov) [2074835] - KVM: Use 'unsigned long' as kvm_for_each_vcpu()'s index (Vitaly Kuznetsov) [2074835] - KVM: Convert the kvm->vcpus array to a xarray (Vitaly Kuznetsov) [2074835] - KVM: Move wiping of the kvm->vcpus array to common code (Vitaly Kuznetsov) [2074835] - KVM: MMU: update comment on the number of page role combinations (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Retry page fault if root is invalidated by memslot update (Vitaly Kuznetsov) [2074835] - KVM: VMX: Set failure code in prepare_vmcs02() (Vitaly Kuznetsov) [2074835] - KVM: ensure APICv is considered inactive if there is no APIC (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Fix reserved bits for AMD PerfEvtSeln register (Vitaly Kuznetsov) [2074835] - x86: Snapshot thread flags (Vitaly Kuznetsov) [2074835] - thread_info: Add helpers to snapshot thread flags (Vitaly Kuznetsov) [2074835] - KVM: fix avic_set_running for preemptable kernels (Vitaly Kuznetsov) [2074835] - KVM: VMX: clear vmx_x86_ops.sync_pir_to_irr if APICv is disabled (Vitaly Kuznetsov) [2074835] - KVM: SEV: accept signals in sev_lock_two_vms (Vitaly Kuznetsov) [2074835] - KVM: SEV: do not take kvm->lock when destroying (Vitaly Kuznetsov) [2074835] - KVM: SEV: Prohibit migration of a VM that has mirrors (Vitaly Kuznetsov) [2074835] - KVM: SEV: Do COPY_ENC_CONTEXT_FROM with both VMs locked (Vitaly Kuznetsov) [2074835] - selftests: sev_migrate_tests: add tests for KVM_CAP_VM_COPY_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: SEV: move mirror status to destination of KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: SEV: initialize regions_list of a mirror VM (Vitaly Kuznetsov) [2074835] - KVM: SEV: cleanup locking for KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: SEV: do not use list_replace_init on an empty list (Vitaly Kuznetsov) [2074835] - KVM: x86: Use a stable condition around all VT-d PI paths (Vitaly Kuznetsov) [2074835] - KVM: x86: check PIR even for vCPUs with disabled APICv (Vitaly Kuznetsov) [2074835] - KVM: VMX: prepare sync_pir_to_irr for running with APICv disabled (Vitaly Kuznetsov) [2074835] - KVM: selftests: page_table_test: fix calculation of guest_test_phys_mem (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Handle "default" period when selectively waking kthread (Vitaly Kuznetsov) [2074835] - KVM: MMU: shadow nested paging does not have PKU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove spurious TLB flushes in TDP MMU zap collapsible path (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use yield-safe TDP MMU root iter in MMU notifier unmapping (Vitaly Kuznetsov) [2074835] - KVM: X86: Use vcpu->arch.walk_mmu for kvm_mmu_invlpg() (Vitaly Kuznetsov) [2074835] - KVM: selftests: Make sure kvm_create_max_vcpus test won't hit RLIMIT_NOFILE (Vitaly Kuznetsov) [2074835] - KVM: x86: Forbid KVM_SET_CPUID{,2} after KVM_RUN (Vitaly Kuznetsov) [2074835] - KVM: selftests: Avoid KVM_SET_CPUID2 after KVM_RUN in hyperv_features test (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Emulate guest TLB flush on nested VM-Enter with new vpid12 (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Abide to KVM_REQ_TLB_FLUSH_GUEST request on nested vmentry/vmexit (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Flush current VPID (L1 vs. L2) for KVM_REQ_TLB_FLUSH_GUEST (Vitaly Kuznetsov) [2074835] - KVM: SEV: expose KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM capability (Vitaly Kuznetsov) [2074835] - selftests: sev_migrate_tests: free all VMs (Vitaly Kuznetsov) [2074835] - selftests: fix check for circular KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: x86: ignore APICv if LAPIC is not enabled (Vitaly Kuznetsov) [2074835] - KVM: downgrade two BUG_ONs to WARN_ON_ONCE (Vitaly Kuznetsov) [2074835] - KVM: VMX: do not use uninitialized gfn_to_hva_cache (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Pass parameter flush as false in kvm_tdp_mmu_zap_collapsible_sptes() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Skip tlb flush if it has been done in zap_gfn_range() (Vitaly Kuznetsov) [2074835] - x86/kvm: remove unused ack_notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: Disallow user memslot with size that exceeds "unsigned long" (Vitaly Kuznetsov) [2074835] - KVM: Ensure local memslot copies operate on up-to-date arch-specific data (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fix TLB flush range when handling disconnected pt (Vitaly Kuznetsov) [2074835] - KVM: x86: Assume a 64-bit hypercall for guests with protected state (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add /x86_64/sev_migrate_tests to .gitignore (Vitaly Kuznetsov) [2074835] - KVM: SEV: Fix typo in and tweak name of cmd_allowed_from_miror() (Vitaly Kuznetsov) [2074835] - KVM: SEV: Drop a redundant setting of sev->asid during initialization (Vitaly Kuznetsov) [2074835] - KVM: SEV: WARN if SEV-ES is marked active but SEV is not (Vitaly Kuznetsov) [2074835] - KVM: SEV: Set sev_info.active after initial checks in sev_guest_init() (Vitaly Kuznetsov) [2074835] - KVM: SEV: Disallow COPY_ENC_CONTEXT_FROM if target has created vCPUs (Vitaly Kuznetsov) [2074835] - KVM: Kill kvm_map_gfn() / kvm_unmap_gfn() and gfn_to_pfn_cache (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Use a gfn_to_hva_cache for vmptrld (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Use kvm_read_guest_offset_cached() for nested VMCS check (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Use sizeof_field() instead of open-coding it (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Use kvm_{read,write}_guest_cached() for shadow_vmcs12 (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: include EFER.LMA in extended mmu role (Vitaly Kuznetsov) [2074835] - KVM: nVMX: don't use vcpu->arch.efer when checking host state on nested state load (Vitaly Kuznetsov) [2074835] - KVM: Fix steal time asm constraints (Vitaly Kuznetsov) [2074835] - KVM: x86: Move Intel Processor Trace interrupt handler to vmx.c (Vitaly Kuznetsov) [2074835] - KVM: Move x86's perf guest info callbacks to generic KVM (Vitaly Kuznetsov) [2074835] - KVM: x86: More precisely identify NMI from guest when handling PMI (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop current_vcpu for kvm_running_vcpu + kvm_arch_vcpu variable (Vitaly Kuznetsov) [2074835] - perf/core: Rework guest callbacks to prepare for static_call support (Vitaly Kuznetsov) [2074835] - perf: Protect perf_guest_cbs with RCU (Vitaly Kuznetsov) [2074835] - KVM: x86: Register Processor Trace interrupt hook iff PT enabled in guest (Vitaly Kuznetsov) [2074835] - KVM: x86: Register perf callbacks after calling vendor's hardware_setup() (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix uninitialized eoi_exit_bitmap usage in vcpu_load_eoi_exitmap() (Vitaly Kuznetsov) [2074835] - KVM: selftests: Use perf_test_destroy_vm in memslot_modification_stress_test (Vitaly Kuznetsov) [2074835] - KVM: selftests: Wait for all vCPU to be created before entering guest mode (Vitaly Kuznetsov) [2074835] - KVM: selftests: Move vCPU thread creation and joining to common helpers (Vitaly Kuznetsov) [2074835] - KVM: selftests: Sync perf_test_args to guest during VM creation (Vitaly Kuznetsov) [2074835] - KVM: selftests: Fill per-vCPU struct during "perf_test" VM creation (Vitaly Kuznetsov) [2074835] - KVM: selftests: Start at iteration 0 instead of -1 (Vitaly Kuznetsov) [2074835] - KVM: selftests: Create VM with adjusted number of guest pages for perf tests (Vitaly Kuznetsov) [2074835] - KVM: selftests: Remove perf_test_args.host_page_size (Vitaly Kuznetsov) [2074835] - KVM: selftests: Move per-VM GPA into perf_test_args (Vitaly Kuznetsov) [2074835] - KVM: selftests: Use perf util's per-vCPU GPA/pages in demand paging test (Vitaly Kuznetsov) [2074835] - KVM: selftests: Capture per-vCPU GPA in perf_test_vcpu_args (Vitaly Kuznetsov) [2074835] - KVM: selftests: Use shorthand local var to access struct perf_tests_args (Vitaly Kuznetsov) [2074835] - KVM: selftests: Require GPA to be aligned when backed by hugepages (Vitaly Kuznetsov) [2074835] - KVM: selftests: Assert mmap HVA is aligned when using HugeTLB (Vitaly Kuznetsov) [2074835] - KVM: selftests: Expose align() helpers to tests (Vitaly Kuznetsov) [2074835] - KVM: selftests: Explicitly state indicies for vm_guest_mode_params array (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add event channel upcall support to xen_shinfo_test (Vitaly Kuznetsov) [2074835] - KVM: SEV: unify cgroup cleanup code for svm_vm_migrate_from (Vitaly Kuznetsov) [2074835] - KVM: x86: move guest_pv_has out of user_access section (Vitaly Kuznetsov) [2074835] - KVM: Move INVPCID type check from vmx and svm to the common kvm_handle_invpcid() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Add a helper function to retrieve the GPR index for INVPCID, INVVPID, and INVEPT (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Clean up x2APIC MSR handling for L2 (Vitaly Kuznetsov) [2074835] - KVM: VMX: Macrofy the MSR bitmap getters and setters (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Handle dynamic MSR intercept toggling (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Query current VMCS when determining if MSR bitmaps are in use (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't update vcpu->arch.pv_eoi.msr_val when a bogus value was written to MSR_KVM_PV_EOI_EN (Vitaly Kuznetsov) [2074835] - KVM: x86: Rename kvm_lapic_enable_pv_eoi() (Vitaly Kuznetsov) [2074835] - kvm: mmu: Use fast PF path for access tracking of huge pages when possible (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Properly dereference rcu-protected TDP MMU sptep iterator (Vitaly Kuznetsov) [2074835] - kvm: x86: Convert return type of *is_valid_rdpmc_ecx() to bool (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix recording of guest steal time / preempted status (Vitaly Kuznetsov) [2074835] - selftest: KVM: Add intra host migration tests (Vitaly Kuznetsov) [2074835] - selftest: KVM: Add open sev dev helper (Vitaly Kuznetsov) [2074835] - KVM: SEV: Add support for SEV-ES intra host migration (Vitaly Kuznetsov) [2074835] - KVM: SEV: Add support for SEV intra host migration (Vitaly Kuznetsov) [2074835] - KVM: SEV: provide helpers to charge/uncharge misc_cg (Vitaly Kuznetsov) [2074835] - KVM: generalize "bugged" VM to "dead" VM (Vitaly Kuznetsov) [2074835] - EFI: Introduce the new AMD Memory Encryption GUID. (Vitaly Kuznetsov) [2074835] - x86/kvm: Add AMD SEV specific Hypercall3 (Vitaly Kuznetsov) [2074835] - KVM: x86: SGX must obey the KVM_INTERNAL_ERROR_EMULATION protocol (Vitaly Kuznetsov) [2074835] - KVM: x86: On emulation failure, convey the exit reason, etc. to userspace (Vitaly Kuznetsov) [2074835] - KVM: x86: Get exit_reason as part of kvm_x86_ops.get_exit_info (Vitaly Kuznetsov) [2074835] - KVM: x86: Clarify the kvm_run.emulation_failure structure layout (Vitaly Kuznetsov) [2074835] - KVM: selftests: Fix nested SVM tests when built with clang (Vitaly Kuznetsov) [2074835] - kvm: x86: Remove stale declaration of kvm_no_apic_vcpu (Vitaly Kuznetsov) [2074835] - KVM: x86: Move SVM's APICv sanity check to common x86 (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Extract zapping of rmaps for gfn range to separate helper (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop a redundant remote TLB flush in kvm_zap_gfn_range() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop a redundant, broken remote TLB flush (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't unload MMU in kvm_vcpu_flush_tlb_guest() (Vitaly Kuznetsov) [2074835] - KVM: X86: pair smp_wmb() of mmu_try_to_unsync_pages() with smp_rmb() (Vitaly Kuznetsov) [2074835] - KVM: emulate: Comment on difference between RDPMC implementation and manual (Vitaly Kuznetsov) [2074835] - KVM: x86: Add vendor name to kvm_x86_ops, use it for error messages (Vitaly Kuznetsov) [2074835] - kvm: x86: mmu: Make NX huge page recovery period configurable (Vitaly Kuznetsov) [2074835] - KVM: vPMU: Fill get_msr MSR_CORE_PERF_GLOBAL_OVF_CTRL w/ 0 (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename slot_handle_leaf to slot_handle_level_4k (Vitaly Kuznetsov) [2074835] - KVM: VMX: RTIT_CTL_BRANCH_EN has no dependency on other CPUID bit (Vitaly Kuznetsov) [2074835] - KVM: VMX: Rename pt_desc.addr_range to pt_desc.num_address_ranges (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use precomputed vmx->pt_desc.addr_range (Vitaly Kuznetsov) [2074835] - KVM: VMX: Restore host's MSR_IA32_RTIT_CTL when it's not zero (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: clean up prefetch/prefault/speculative naming (Vitaly Kuznetsov) [2074835] - KVM: cleanup allocation of rmaps and page tracking data (Vitaly Kuznetsov) [2074835] - selftests: KVM: Introduce system counter offset test (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add helpers for vCPU device attributes (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add test for KVM_{GET,SET}_CLOCK (Vitaly Kuznetsov) [2074835] - kvm: x86: protect masterclock with a seqcount (Vitaly Kuznetsov) [2074835] - KVM: x86: Report host tsc and realtime values in KVM_GET_CLOCK (Vitaly Kuznetsov) [2074835] - KVM: x86: avoid warning with -Wbitwise-instead-of-logical (Vitaly Kuznetsov) [2074835] - KVM: x86: only allocate gfn_track when necessary (Vitaly Kuznetsov) [2074835] - KVM: x86: add config for non-kvm users of page tracking (Vitaly Kuznetsov) [2074835] - nSVM: Check for reserved encodings of TLB_CONTROL in nested VMCB (Vitaly Kuznetsov) [2074835] - kvm: use kvfree() in kvm_arch_free_vm() (Vitaly Kuznetsov) [2074835] - KVM: x86: Expose Predictive Store Forwarding Disable (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Avoid memslot lookup in make_spte and mmu_try_to_unsync_pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Avoid memslot lookup in rmap_add (Vitaly Kuznetsov) [2074835] - KVM: MMU: pass struct kvm_page_fault to mmu_set_spte (Vitaly Kuznetsov) [2074835] - KVM: MMU: pass kvm_mmu_page struct to make_spte (Vitaly Kuznetsov) [2074835] - KVM: MMU: set ad_disabled in TDP MMU role (Vitaly Kuznetsov) [2074835] - KVM: MMU: remove unnecessary argument to mmu_set_spte (Vitaly Kuznetsov) [2074835] - KVM: MMU: clean up make_spte return value (Vitaly Kuznetsov) [2074835] - KVM: MMU: inline set_spte in FNAME(sync_page) (Vitaly Kuznetsov) [2074835] - KVM: MMU: inline set_spte in mmu_set_spte (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Avoid memslot lookup in page_fault_handle_page_track (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Pass the memslot around via struct kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: unify tdp_mmu_map_set_spte_atomic and tdp_mmu_set_spte_atomic_no_dirty_log (Vitaly Kuznetsov) [2074835] - KVM: MMU: mark page dirty in make_spte (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fold rmap_recycle into rmap_add (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Verify shadow walk doesn't terminate early in page faults (Vitaly Kuznetsov) [2074835] - KVM: MMU: change tracepoints arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change disallowed_hugepage_adjust() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change kvm_mmu_hugepage_adjust() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change fast_page_fault() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change tdp_mmu_map_handle_target_level() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change kvm_tdp_mmu_map() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change FNAME(fetch)() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change __direct_map() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change handle_abnormal_pfn() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change kvm_faultin_pfn() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change page_fault_handle_page_track() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change direct_page_fault() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change mmu->page_fault() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: Introduce struct kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: pass unadulterated gpa to direct_page_fault (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix potential race in KVM_GET_CLOCK (Vitaly Kuznetsov) [2074835] - KVM: x86: extract KVM_GET_CLOCK/KVM_SET_CLOCK to separate functions (Vitaly Kuznetsov) [2074835] - kvm: x86: abstract locking around pvclock_update_vm_gtod_copy (Vitaly Kuznetsov) [2074835] - KVM: X86: Move PTE present check from loop body to __shadow_walk_next() (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: implement nested TSC scaling (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: add module param to control TSC scaling (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: add module param to control LBR virtualization (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: don't copy pause related settings (Vitaly Kuznetsov) [2074835] - kvm: irqfd: avoid update unmodified entries of the routing (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't check unsync if the original spte is writible (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't unsync pagetables when speculative (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove FNAME(update_pte) (Vitaly Kuznetsov) [2074835] - KVM: X86: Zap the invalid list after remote tlb flushing (Vitaly Kuznetsov) [2074835] - KVM: X86: Change kvm_sync_page() to return true when remote flush is needed (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove kvm_mmu_flush_or_zap() (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't flush current tlb on shadow page modification (Vitaly Kuznetsov) [2074835] - KVM: selftests: Fix kvm_vm_free() in cr4_cpuid_sync and vmx_tsc_adjust tests (Vitaly Kuznetsov) [2074835] - kvm: selftests: Fix spelling mistake "missmatch" -> "mismatch" (Vitaly Kuznetsov) [2074835] - KVM: x86: Manually retrieve CPUID.0x1 when getting FMS for RESET/INIT (Vitaly Kuznetsov) [2074835] - KVM: x86: WARN on non-zero CRs at RESET to detect improper initalization (Vitaly Kuznetsov) [2074835] - KVM: SVM: Move RESET emulation to svm_vcpu_reset() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Move RESET emulation to vmx_vcpu_reset() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Drop explicit zeroing of MSR guest values at vCPU creation (Vitaly Kuznetsov) [2074835] - KVM: x86: Fold fx_init() into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove defunct setting of XCR0 for guest during vCPU create (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove defunct setting of CR0.ET for guests during vCPU create (Vitaly Kuznetsov) [2074835] - KVM: x86: Simplify retrieving the page offset when loading PDTPRs (Vitaly Kuznetsov) [2074835] - KVM: x86: Subsume nested GPA read helper into load_pdptrs() (Vitaly Kuznetsov) [2074835] - kvm: rename KVM_MAX_VCPU_ID to KVM_MAX_VCPU_IDS (Vitaly Kuznetsov) [2074835] - KVM: Make kvm_make_vcpus_request_mask() use pre-allocated cpu_kick_mask (Vitaly Kuznetsov) [2074835] - KVM: Pre-allocate cpumasks for kvm_make_all_cpus_request_except() (Vitaly Kuznetsov) [2074835] - KVM: Drop 'except' parameter from kvm_make_vcpus_request_mask() (Vitaly Kuznetsov) [2074835] - KVM: Optimize kvm_make_vcpus_request_mask() a bit (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Avoid calling kvm_make_vcpus_request_mask() with vcpu_mask==NULL (Vitaly Kuznetsov) [2074835] - KVM: use vma_pages() helper (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Reset vmxon_ptr upon VMXOFF emulation. (Vitaly Kuznetsov) [2074835] - x86/kvm: Always inline to_svm() (Vitaly Kuznetsov) [2074835] - x86/kvm: Always inline vmload() / vmsave() (Vitaly Kuznetsov) [2074835] - x86/kvm: Always inline sev_*guest() (Vitaly Kuznetsov) [2074835] - KVM: Remove tlbs_dirty (Vitaly Kuznetsov) [2074835] - KVM: X86: fix lazy allocation of rmaps (Vitaly Kuznetsov) [2074835] - KVM: Remove unnecessary export of kvm_{inc,dec}_notifier_count() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop 'shared' param from tdp_mmu_link_page() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add detailed page size stats (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: bump mmu notifier count in kvm_zap_gfn_range (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: fix parameters to kvm_flush_remote_tlbs_with_address (Vitaly Kuznetsov) [2074835] - Revert "KVM: x86/mmu: Allow zap gfn range to operate under the mmu read lock" (Vitaly Kuznetsov) [2074835] - KVM: X86: Introduce mmu_rmaps_stat per-vm debugfs file (Vitaly Kuznetsov) [2074835] - KVM: X86: Introduce kvm_mmu_slot_lpages() helpers (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Protect marking SPs unsync when using TDP MMU with spinlock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't step down in the TDP iterator when zapping all SPTEs (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't leak non-leaf SPTEs when zapping all SPTEs (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename __gfn_to_rmap to gfn_to_rmap (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Leverage vcpu->last_used_slot in tdp_mmu_map_handle_target_level (Vitaly Kuznetsov) [2074835] - KVM: const-ify all relevant uses of struct kvm_memory_slot (Vitaly Kuznetsov) [2074835] - KVM: Don't take mmu_lock for range invalidation unless necessary (Vitaly Kuznetsov) [2074835] - KVM: Block memslot updates across range_start() and range_end() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Lazily allocate memslot rmaps (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Skip rmap operations if rmaps not allocated (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Tear down roots before kvm_mmu_zap_all_fast returns (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fast invalidation for TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow enabling/disabling dirty logging under MMU read lock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow zapping collapsible SPTEs to use MMU read lock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow zap gfn range to operate under the mmu read lock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow yielding during MMU notifier unmap/zap, if possible (Vitaly Kuznetsov) [2074835] - KVM: Take mmu_lock when handling MMU notifier iff the hva hits a memslot (Vitaly Kuznetsov) [2074835] - KVM: Move MMU notifier's mmu_lock acquisition into common helper (Vitaly Kuznetsov) [2074835] - KVM: Kill off the old hva-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: PPC: Convert to the gfn-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: arm64: Convert to the gfn-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: Move x86's MMU notifier memslot walkers to generic code (Vitaly Kuznetsov) [2074835] - KVM: Assert that notifier count is elevated in .change_pte() (Vitaly Kuznetsov) [2074835] - KVM: Move arm64's MMU notifier trace events to generic code (Vitaly Kuznetsov) [2074835] - KVM: Switch to new MMU notifiers API (Vitaly Kuznetsov) [2074835] - scsi: qedi: Remove redundant flush_workqueue() calls (Nilesh Javali) [2044837] - scsi: qedi: Fix SYSFS_FLAG_FW_SEL_BOOT formatting (Nilesh Javali) [2044837] - xfs: reserve quota for dir expansion when linking/unlinking files (Carlos Maiolino) [2082833] - iwlwifi: fix use-after-free (Jose Ignacio Tornos Martinez) [2091539] - nfs: fix broken handling of the softreval mount option (Benjamin Coddington) [2083224] - ethtool: extend ringparam setting/getting API with rx_buf_len (Ivan Vecera) [2091857] - ethtool: add support to set/get rx buf len via ethtool (Ivan Vecera) [2091857] - ethtool: add support to set/get tx copybreak buf size via ethtool (Ivan Vecera) [2091857]- x86/apic: Make TSC deadline timer detection message visible (David Arcari) [2098086] - x86/apic: Move TSC deadline timer debug printk (David Arcari) [2098086] - [s390] KVM: s390: selftests: Add error memop tests (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Add more copy memop tests (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Add named stages for memop test (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Add macro as abstraction for MEM_OP (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Split memop tests (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Fix lockdep issue in vm memop (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add missing vm MEM_OP size check (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Clarify key argument for MEM_OP in api docs (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Update api documentation for memop ioctl (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add capability for storage key extension of MEM_OP IOCTL (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Rename existing vcpu memop functions (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add vm IOCTL for key checked guest absolute memory access (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add optional storage key checking to MEMOP IOCTL (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Test TEST PROTECTION emulation (Claudio Imbrenda) [1984917] - [s390] KVM: s390: handle_tprot: Honor storage keys (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Honor storage keys when accessing guest memory (Claudio Imbrenda) [1984917] - [s390] s390/uaccess: Add copy_from/to_user_key functions (Claudio Imbrenda) [1984917] - [s390] s390/uaccess: fix compile error (Claudio Imbrenda) [1984917] - [s390] s390/uaccess: introduce bit field for OAC specifier (Claudio Imbrenda) [1984917] - [s390] KVM: s390: gaccess: Cleanup access to guest pages (Claudio Imbrenda) [1984917] - [s390] KVM: s390: gaccess: Refactor access address range check (Claudio Imbrenda) [1984917] - [s390] KVM: s390: gaccess: Refactor gpa and length calculation (Claudio Imbrenda) [1984917] - xfs: reorder iunlink remove operation in xfs_ifree (Brian Foster) [2081146] - tcp: fix TCP socket rehash stats mis-accounting (Antoine Tenart) [2073082] - tcp: export count for rehash attempts (Antoine Tenart) [2073082] - tcp: add SRTT to SCM_TIMESTAMPING_OPT_STATS (Antoine Tenart) [2073082] - tcp: add new SNMP counter for drops when try to queue in rcv queue (Antoine Tenart) [2073082] - tcp: add SNMP counter for zero-window drops (Antoine Tenart) [2073082] - net: udp: introduce UDP_MIB_MEMERRORS for udp_mem (Antoine Tenart) [2073082] - context_tracking: Sync up lockdep and cpu irqs state to prevent false warnings (Waiman Long) [2098074] - platform/x86: ISST: Fix possible circular locking dependency detected (Prarit Bhargava) [2072659] - platform/x86: ISST: use semi-colons instead of commas (Prarit Bhargava) [2072659] - platform/x86: intel_speed_select_if: Move to intel sub-directory (Prarit Bhargava) [2072659] - x86/sgx: Free backing memory after faulting the enclave page (Vladis Dronov) [2081351] - x86/sgx: Fix missing poison handling in reclaimer (Vladis Dronov) [2081351] - x86/sgx: Silence softlockup detection when releasing large enclaves (Vladis Dronov) [2081351] - selftests/sgx: Treat CC as one argument (Vladis Dronov) [2081351] - selftests/x86: Add validity check and allow field splitting (Vladis Dronov) [2081351] - selftests/sgx: Remove extra newlines in test output (Vladis Dronov) [2081351] - selftests/sgx: Ensure enclave data available during debug print (Vladis Dronov) [2081351] - selftests/sgx: Do not attempt enclave build without valid enclave (Vladis Dronov) [2081351] - selftests/sgx: Fix NULL-pointer-dereference upon early test failure (Vladis Dronov) [2081351] - x86/sgx: Remove .fixup usage (Vladis Dronov) [2081351] - x86/sgx: Fix NULL pointer dereference on non-SGX systems (Vladis Dronov) [2081351] - x86/sgx: Add an attribute for the amount of SGX memory in a NUMA node (Vladis Dronov) [2081351] - vmxnet3: disable overlay offloads if UPT device does not support (Kamal Heib) [2100226] - vmxnet3: update to version 7 (Kamal Heib) [2100226] - vmxnet3: use ext1 field to indicate encapsulated packet (Kamal Heib) [2100226] - vmxnet3: limit number of TXDs used for TSO packet (Kamal Heib) [2100226] - vmxnet3: add command to set ring buffer sizes (Kamal Heib) [2100226] - vmxnet3: add support for out of order rx completion (Kamal Heib) [2100226] - vmxnet3: add support for large passthrough BAR register (Kamal Heib) [2100226] - vmxnet3: add support for capability registers (Kamal Heib) [2100226] - vmxnet3: prepare for version 7 changes (Kamal Heib) [2100226] - net: vmxnet3: fix possible NULL pointer dereference in vmxnet3_rq_cleanup() (Kamal Heib) [2100226] - net: vmxnet3: fix possible use-after-free bugs in vmxnet3_rq_alloc_rx_buf() (Kamal Heib) [2100226]- iommu/amd: Enable swiotlb in all cases (Jerry Snitselaar) [2072179] - iommu/arm-smmu-v3-sva: Fix mm use-after-free (Jerry Snitselaar) [2072179] - dma-direct: don't over-decrypt memory (Jerry Snitselaar) [2072179] - dma-direct: always leak memory that can't be re-encrypted (Jerry Snitselaar) [2072179] - dma-direct: clean up the remapping checks in dma_direct_alloc (Jerry Snitselaar) [2072179] - dma-direct: don't call dma_set_decrypted for remapped allocations (Jerry Snitselaar) [2072179] - dma-direct: factor out dma_set_{de,en}crypted helpers (Jerry Snitselaar) [2072179] - swiotlb: max mapping size takes min align mask into account (Jerry Snitselaar) [2072179] - dma-debug: change allocation mode from GFP_NOWAIT to GFP_ATIOMIC (Jerry Snitselaar) [2072179] - dma-direct: don't fail on highmem CMA pages in dma_direct_alloc_pages (Jerry Snitselaar) [2072179] - dma-direct: factor out a helper for DMA_ATTR_NO_KERNEL_MAPPING allocations (Jerry Snitselaar) [2072179] - swiotlb: make swiotlb_exit a no-op if SWIOTLB_FORCE is set (Jerry Snitselaar) [2072179] - dma-direct: use is_swiotlb_active in dma_direct_map_page (Jerry Snitselaar) [2072179] - iommu/vt-d: Calculate mask for non-aligned flushes (Jerry Snitselaar) [2072179] - iommu/amd: Call memunmap in error path (Jerry Snitselaar) [2072179] - iommu/vt-d: Drop duplicate check in dma_pte_free_pagetable() (Jerry Snitselaar) [2072179] - iommu/vt-d: Use correctly sized arguments for bit field (Jerry Snitselaar) [2072179] - Revert "iommu/arm-smmu-v3: Decrease the queue size of evtq and priq" (Jerry Snitselaar) [2072179] - iommu: Fix potential use-after-free during probe (Jerry Snitselaar) [2072179] - dma-direct: avoid redundant memory sync for swiotlb (Jerry Snitselaar) [2072179] - iommu/iova: Fix race between FQ timeout and teardown (Jerry Snitselaar) [2072179] - iommu/io-pgtable-arm: Fix table descriptor paddr formatting (Jerry Snitselaar) [2072179] - iommu: Extend mutex lock scope in iommu_probe_device() (Jerry Snitselaar) [2072179] - iommu/amd: X2apic mode: mask/unmask interrupts on suspend/resume (Jerry Snitselaar) [2072179] - iommu/amd: X2apic mode: setup the INTX registers on mask/unmask (Jerry Snitselaar) [2072179] - iommu/amd: X2apic mode: re-enable after resume (Jerry Snitselaar) [2072179] - iommu/amd: Restore GA log/tail pointer on host resume (Jerry Snitselaar) [2072179] - iommu/amd: Clarify AMD IOMMUv2 initialization messages (Jerry Snitselaar) [2072179] - iommu/vt-d: Avoid duplicate removing in __domain_mapping() (Jerry Snitselaar) [2072179] - iommu/vt-d: Fix an unbalanced rcu_read_lock/rcu_read_unlock() (Jerry Snitselaar) [2072179] - iommu/vt-d: Check FL and SL capability sanity in scalable mode (Jerry Snitselaar) [2072179] - iommu/vt-d: Add present bit check in pasid entry setup helpers (Jerry Snitselaar) [2072179] - iommu/vt-d: Preset A/D bits for user space DMA usage (Jerry Snitselaar) [2072179] - iommu/vt-d: Remove unnecessary oom message (Jerry Snitselaar) [2072179] - iommu/vt-d: Enable ATS for the devices in SATC table (Jerry Snitselaar) [1893460] - iommu/vt-d: Parse SATC reporting structure (Jerry Snitselaar) [1893460] - iommu/vt-d: Dump DMAR translation structure when DMA fault occurs (Jerry Snitselaar) [1868826] - nvme: fix typos in nvme status code values (Gopal Tiwari) [2091824] - Adding CONFIG_NVME_VERBOSE_ERRORS to RHEL-8. (Gopal Tiwari) [2091824] - nvme: add missing status values to verbose logging (Gopal Tiwari) [2091824] - nvme: don't print verbose errors for internal passthrough requests (Gopal Tiwari) [2091824] - nvme: add verbose error logging (Gopal Tiwari) [2091824] - perf/x86/msr: Add Raptor Lake CPU support (Michael Petlan) [2094572] - perf/x86: Add Intel Raptor Lake support (Michael Petlan) [2094572] - perf/x86/cstate: Add SAPPHIRERAPIDS_X CPU support (Michael Petlan) [2094572] - perf/x86/cstate: Add Raptor Lake support (Michael Petlan) [2094572] - [s390] s390/lcs: fix variable dereferenced before check (Mete Durlu) [2043835] - [s390] s390/ctcm: fix potential memory leak (Mete Durlu) [2043835] - [s390] s390/ctcm: fix variable dereferenced before check (Mete Durlu) [2043835] - [s390] s390/net: sort out physical vs virtual pointers usage (Mete Durlu) [2043835] - [s390] s390/qeth: remove check for packing mode in qeth_check_outbound_queue() (Mete Durlu) [2043835] - [s390] s390/qeth: fine-tune .ndo_select_queue() (Mete Durlu) [2043835] - [s390] s390/qeth: don't offer .ndo_bridge_* ops for OSA devices (Mete Durlu) [2043835] - [s390] s390/qeth: split up L2 netdev_ops (Mete Durlu) [2043835] - [s390] s390/qeth: simplify qeth_receive_skb() (Mete Durlu) [2043835] - [s390] s390/lcs: add braces around empty function body (Mete Durlu) [2043835] - [s390] s390/ctcm: add __printf format attribute to ctcm_dbf_longtext (Mete Durlu) [2043835] - [s390] s390/ctcm: fix format string (Mete Durlu) [2043835] - [s390] s390/qeth: allocate RX queue at probe time (Mete Durlu) [2043835] - [s390] s390/qeth: update kerneldoc for qeth_add_hw_header() (Mete Durlu) [2043835] - [s390] s390/qeth: fix kernel doc comments (Mete Durlu) [2043835] - [s390] s390/qeth: add __printf format attribute to qeth_dbf_longtext (Mete Durlu) [2043835] - [s390] s390/qeth: fix various format strings (Mete Durlu) [2043835] - [s390] s390/qeth: don't keep track of Input Queue count (Mete Durlu) [2043835] - [s390] s390/qeth: clarify remaining dev_kfree_skb_any() users (Mete Durlu) [2043835] - [s390] s390/qeth: move qdio's QAOB cache into qeth (Mete Durlu) [2043835] - [s390] s390/qeth: improve trace entries for MAC address (un)registration (Mete Durlu) [2043835] - [s390] s390/netiucv: remove incorrect kernel doc indicators (Mete Durlu) [2043835] - [s390] s390/lcs: remove incorrect kernel doc indicators (Mete Durlu) [2043835] - [s390] s390/ctcm: remove incorrect kernel doc indicators (Mete Durlu) [2043835] - [s390] s390/qeth: clean up device_type management (Mete Durlu) [2043835] - [s390] s390/qeth: clean up QETH_PROT_* naming (Mete Durlu) [2043835] - mm/memcg: Free percpu stats memory of dying memcg's (Waiman Long) [2004037] - netfilter: flowtable: fix TCP flow teardown (Florian Westphal) [2088234] - netfilter: conntrack: annotate data-races around ct->timeout (Florian Westphal) [2088234] - netfilter: conntrack: initialize ct->timeout (Florian Westphal) [2088234] - NFSv4: Fix free of uninitialized nfs4_label on referral lookup. (Scott Mayhew) [2090994] - md: fix double free of io_acct_set bioset (Nigel Croxon) [2094076] - md: Don't set mddev private to NULL in raid0 pers->free (Nigel Croxon) [2094076] - md: protect md_unregister_thread from reentrancy (Nigel Croxon) [2094076] - md: don't unregister sync_thread with reconfig_mutex held (Nigel Croxon) [2094076] - raid5: don't set the discard_alignment queue limit (Nigel Croxon) [2094076] - md: Replace role magic numbers with defined constants (Nigel Croxon) [2094076] - md/raid0: Ignore RAID0 layout if the second zone has only one device (Nigel Croxon) [2094076] - md/raid5: Annotate functions that hold device_lock with __must_hold (Nigel Croxon) [2094076] - md/raid5-ppl: Annotate with rcu_dereference_protected() (Nigel Croxon) [2094076] - md/raid5: Annotate rdev/replacement access when mddev_lock is held (Nigel Croxon) [2094076] - md/raid5: Annotate rdev/replacement accesses when nr_pending is elevated (Nigel Croxon) [2094076] - md/raid5: Add __rcu annotation to struct disk_info (Nigel Croxon) [2094076] - md/raid5: Un-nest struct raid5_percpu definition (Nigel Croxon) [2094076] - md/raid5: Cleanup setup_conf() error returns (Nigel Croxon) [2094076] - md: replace deprecated strlcpy & remove duplicated line (Nigel Croxon) [2094076] - md/bitmap: don't set sb values if can't pass sanity check (Nigel Croxon) [2094076] - md: fix an incorrect NULL check in md_reload_sb (Nigel Croxon) [2094076] - md: fix an incorrect NULL check in does_sb_need_changing (Nigel Croxon) [2094076] - md: use msleep() in md_notify_reboot() (Nigel Croxon) [2094076] - ext4: force overhead calculation if the s_overhead_cluster makes no sense (Lukas Czerner) [2079886] - ext4: fix overhead calculation to account for the reserved gdt blocks (Lukas Czerner) [2079886] - ext4: limit length to bitmap_maxbytes - blocksize in punch_hole (Lukas Czerner) [2079886] - ext4: fix use-after-free in ext4_search_dir (Lukas Czerner) [2079886] - ext4: fix symlink file size not match to file content (Lukas Czerner) [2079886] - ext4: fix fallocate to use file_modified to update permissions consistently (Lukas Czerner) [2085623] - ext4: remove unused macro MPAGE_DA_EXTENT_TAIL (Lukas Czerner) [2079886] - ext4: add missing braces in ext4_ext_drop_refs() (Lukas Czerner) [2079886] - ext4: remove obsolete comment from ext4_can_extents_be_merged() (Lukas Czerner) [2079886] - ext4: make some functions static in extents.c (Lukas Czerner) [2079886] - ext4: remove redundant S_ISREG() checks from ext4_fallocate() (Lukas Czerner) [2079886] - ext4: clean up len and offset checks in ext4_fallocate() (Lukas Czerner) [2079886] - ext4: remove ext4_{ind,ext}_calc_metadata_amount() (Lukas Czerner) [2079886] - ext4: fix fs corruption when tring to remove a non-empty directory with IO error (Lukas Czerner) [2079886] - ext4: fix error handling in ext4_restore_inline_data() (Lukas Czerner) [2079886] - jbd2: export jbd2_journal_[grab|put]_journal_head (Lukas Czerner) [2079886] - ext4: don't use the orphan list when migrating an inode (Lukas Czerner) [2079886] - ext4: set csum seed in tmp inode while migrating to extents (Lukas Czerner) [2079886] - ext4: fix an use-after-free issue about data=journal writeback mode (Lukas Czerner) [2079886] - ext4: fix bh ref count on error paths (Lukas Czerner) [2079886] - ext4: fix a possible ABBA deadlock due to busy PA (Lukas Czerner) [2079886] - ext4: discard preallocations before releasing group lock (Lukas Czerner) [2079886] - ext4: make ext_debug() implementation to use pr_debug() (Lukas Czerner) [2079886] - ext4: mballoc: make mb_debug() implementation to use pr_debug() (Lukas Czerner) [2079886] - ext4: improve ext_debug() msg in case of block allocation failure (Lukas Czerner) [2079886] - ext4: use BIT() macro for BH_** state bits (Lukas Czerner) [2079886] - ext4: balloc: use task_pid_nr() helper (Lukas Czerner) [2079886] - ext4: mballoc: fix possible NULL ptr & remove BUG_ONs from DOUBLE_CHECK (Lukas Czerner) [2079886] - ext4: mballoc: refactor code inside DOUBLE_CHECK into separate function (Lukas Czerner) [2079886] - ext4: mballoc: make ext4_mb_use_preallocated() return type as bool (Lukas Czerner) [2079886] - ext4: mballoc: simplify error handling in ext4_init_mballoc() (Lukas Czerner) [2079886] - ext4: mballoc: fix few other format specifier in mb_debug() (Lukas Czerner) [2079886] - ext4: mballoc: correct the mb_debug() format specifier for pa_len var (Lukas Czerner) [2079886] - ext4: mballoc: add more mb_debug() msgs (Lukas Czerner) [2079886] - ext4: mballoc: refactor ext4_mb_show_ac() (Lukas Czerner) [2079886] - ext4: mballoc: print bb_free info even when it is 0 (Lukas Czerner) [2079886] - ext4: fix dead loop in ext4_mb_new_blocks (Lukas Czerner) [2079886] - ext4: mballoc: use lock for checking free blocks while retrying (Lukas Czerner) [2079886] - ext4: mballoc: refactor ext4_mb_good_group() (Lukas Czerner) [2079886] - ext4: mballoc: introduce pcpu seqcnt for freeing PA to improve ENOSPC handling (Lukas Czerner) [2079886] - ext4: mballoc: refactor ext4_mb_discard_preallocations() (Lukas Czerner) [2079886] - ext4: mballoc: add blocks to PA list under same spinlock after allocating blocks (Lukas Czerner) [2079886] - ext4: fix lazy initialization next schedule time computation in more granular unit (Lukas Czerner) [2079886] - ext4: fix avefreec in find_group_orlov (Lukas Czerner) [2079886] - ext4: allow the dax flag to be set and cleared on inline directories (Lukas Czerner) [2079886] - ext4: annotate data race in jbd2_journal_dirty_metadata() (Lukas Czerner) [2079886] - ext4: annotate data race in start_this_handle() (Lukas Czerner) [2079886] - ext4: fix superblock checksum failure when setting password salt (Lukas Czerner) [2079886] - ext4: correctly report "not supported" for {usr,grp}jquota when !CONFIG_QUOTA (Lukas Czerner) [2079886] - jbd2: fix ocfs2 corrupt when clearing block group bits (Lukas Czerner) [2079886] - ext4: fix ext4_empty_dir() for directories with holes (Lukas Czerner) [2079886] - ext4: allow directory holes (Lukas Czerner) [2079886] - net/af_packet: make sure to pull mac header (Hangbin Liu) [2066976] - rcu/nocb: Make rcu_core() callbacks acceleration preempt-safe (Waiman Long) [2097549] - redhat: drop expired testing secureboot signing key (Jarod Wilson) [2095199]- atlantic: Fix issue in the pm resume flow. (Igor Russkikh) [2002395] - atlantic: Fix driver resume flow. (Igor Russkikh) [2002395] - Build intel_sdsi with {tools_make} (Prarit Bhargava) [1971951] - redhat/kernel.spec.template: Add intel_sdsi tool (Prarit Bhargava) [1971951] - redhat/configs: Add CONFIG_INTEL_SDSI (Prarit Bhargava) [1971951] - selftests: sdsi: test sysfs setup (Prarit Bhargava) [1971951] - tools arch x86: Add Intel SDSi provisiong tool (Prarit Bhargava) [1971951] - platform/x86: Add Intel Software Defined Silicon driver (Prarit Bhargava) [1971951] - platform/x86/intel: Fix 'rmmod pmt_telemetry' panic (Prarit Bhargava) [2080426] - x86/cpu: Add new Alderlake and Raptorlake CPU model numbers (Prarit Bhargava) [2040019 2040059] - netfilter: nf_tables: sanitize nft_set_desc_concat_parse() (Florian Westphal) [2096403] {CVE-2022-2078} - mt76: mt7921: Fix the error handling path of mt7921_pci_probe() (Íñigo Huguet) [2096758] - Watchdog: sp5100_tco: Enable Family 17h+ CPUs (Sudheesh Mavila) [2031643] - Watchdog: sp5100_tco: Add initialization using EFCH MMIO (Sudheesh Mavila) [2031643] - kernel/resource: Introduce request_mem_region_muxed() (Sudheesh Mavila) [2031643] - Watchdog: sp5100_tco: Refactor MMIO base address initialization (Sudheesh Mavila) [2031643] - Watchdog: sp5100_tco: Move timer initialization into function (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: Add support for get_timeleft (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: Enable watchdog on Family 17h devices if disabled (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: drop warning after registering device (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: drop warning after calling watchdog_init_timeout (Sudheesh Mavila) [2031643] - Reinstate some of "swiotlb: rework "fix info leak with DMA_FROM_DEVICE"" (Chris von Recklinghausen) [2059701] {CVE-2022-0854} - swiotlb: fix info leak with DMA_FROM_DEVICE (Chris von Recklinghausen) [2059701] {CVE-2022-0854} - redhat/configs: Add CONFIG_S390_UV_UAPI (Claudio Imbrenda) [1984905] - [s390] s390/uv_uapi: depend on CONFIG_S390 (Claudio Imbrenda) [1984905] - [s390] drivers/s390/char: Add Ultravisor io device (Claudio Imbrenda) [1984905] - cpufreq: Specify default governor on command line (Prarit Bhargava) [2083766] - cpufreq: Fix locking issues with governors (Prarit Bhargava) [2083766] - cpufreq: Register governors at core_initcall (Prarit Bhargava) [2083766] - nvme: fix RCU hole that allowed for endless looping in multipath round robin (Gopal Tiwari) [2078806] - nvme-multipath: fix hang when disk goes live over reconnect (Gopal Tiwari) [2078806] - nvme-tcp: send H2CData PDUs based on MAXH2CDATA (Gopal Tiwari) [2078806] - nvme: also mark passthrough-only namespaces ready in nvme_update_ns_info (Gopal Tiwari) [2078806] - nvme: don't return an error from nvme_configure_metadata (Gopal Tiwari) [2078806] - nvme-tcp: fix bogus request completion when failing to send AER (Gopal Tiwari) [2078806] - nvme-fabrics: remove the unneeded ret variable in nvmf_dev_show (Gopal Tiwari) [2078806] - nvme-pci: add the IGNORE_DEV_SUBNQN quirk for Intel P4500/P4600 SSDs (Gopal Tiwari) [2078806] - nvme-fabrics: print out valid arguments when reading from /dev/nvme-fabrics (Gopal Tiwari) [2078806] - nvmet-tcp: fix possible list corruption for unexpected command failure (Gopal Tiwari) [2078806] - nvme: fix use after free when disconnecting a reconnecting ctrl (Gopal Tiwari) [2078806] - nvme-multipath: set ana_log_size to 0 after free ana_log_buf (Gopal Tiwari) [2078806] - nvme: disable namespace access for unsupported metadata (Gopal Tiwari) [2078806] - nvme: report write pointer for a full zone as zone start + zone len (Gopal Tiwari) [2078806] - nvme: show subsys nqn for duplicate cntlids (Gopal Tiwari) [2078806] - nvme-pci: add NO APST quirk for Kioxia device (Gopal Tiwari) [2078806] - nvme: fix write zeroes pi (Gopal Tiwari) [2078806] - nvmet: use flex_array_size and struct_size (Gopal Tiwari) [2078806] - nvme: drop scan_lock and always kick requeue list when removing namespaces (Gopal Tiwari) [2078806] - nvmet: use struct_size over open coded arithmetic (Gopal Tiwari) [2078806] - nvme-pci: clear shadow doorbell memory on resets (Gopal Tiwari) [2078806] - nvmet: use macro definitions for setting cmic value (Gopal Tiwari) [2078806] - nvme-rdma: fix error code in nvme_rdma_setup_ctrl (Gopal Tiwari) [2078806] - nvmet: use macro definition for setting nmic value (Gopal Tiwari) [2078806] - nvmet-rdma: implement get_max_queue_size controller op (Gopal Tiwari) [2078806] - nvmet: add get_max_queue_size op for controllers (Gopal Tiwari) [2078806] - nvme-rdma: limit the maximal queue size for RDMA controllers (Gopal Tiwari) [2078806] - nvme: paring quiesce/unquiesce (Gopal Tiwari) [2078806] - nvme: add APIs for stopping/starting admin queue (Gopal Tiwari) [2078806] - nvme: prepare for pairing quiescing and unquiescing (Gopal Tiwari) [2078806] - nvme: apply nvme API to quiesce/unquiesce admin queue (Gopal Tiwari) [2078806] - nvme: loop: clear NVME_CTRL_ADMIN_Q_STOPPED after admin queue is reallocated (Gopal Tiwari) [2078806] - nvme: remove the call to nvme_update_disk_info in nvme_ns_remove (Gopal Tiwari) [2078806] - nvme: remove the GENHD_FL_UP check in nvme_ns_remove (Gopal Tiwari) [2078806] - nvme-rdma: destroy cm id before destroy qp to avoid use after free (Gopal Tiwari) [2078806] - nvme: only call synchronize_srcu when clearing current path (Gopal Tiwari) [2078806] - nvme-multipath: revalidate paths during rescan (Gopal Tiwari) [2078806] - nvme: remove the unused NVME_NS_* enum (Gopal Tiwari) [2078806] - nvme: Have NVME_FABRICS select NVME_CORE instead of transport drivers (Gopal Tiwari) [2078806] - nvme-pci: disable hmb on idle suspend (Gopal Tiwari) [2078806] - nvme: allow user toggling hmb usage (Gopal Tiwari) [2078806] - nvme-fabrics: remove superfluous nvmf_host_put in nvmf_parse_options (Gopal Tiwari) [2078806] - nvme: add set feature tracing support (Gopal Tiwari) [2078806] - nvmet: add set feature tracing support (Gopal Tiwari) [2078806] - nvme-pci: cmb sysfs: one file, one value (Gopal Tiwari) [2078806] - nvme-pci: use attribute group for cmb sysfs (Gopal Tiwari) [2078806] - compiler.h: Introduce absolute_pointer macro (Gopal Tiwari) [2078806] - vdpa: Fix vdpa-vhost driver (Laurent Vivier) [2093851] - nl80211: fix locking in nl80211_set_tx_bitrate_mask() (Íñigo Huguet) [2059994] - mac80211_hwsim: call ieee80211_tx_prepare_skb under RCU protection (Íñigo Huguet) [2059994] - mac80211_hwsim: fix RCU protected chanctx access (Íñigo Huguet) [2059994] - mac80211: Reset MBSSID parameters upon connection (Íñigo Huguet) [2059994] - cfg80211: retrieve S1G operating channel number (Íñigo Huguet) [2059994] - nl80211: validate S1G channel width (Íñigo Huguet) [2059994] - mac80211: fix rx reordering with non explicit / psmp ack policy (Íñigo Huguet) [2059994] - ath11k: reduce the wait time of 11d scan and hw scan while add interface (Íñigo Huguet) [2059994] - iwlwifi: iwl-dbg: Use del_timer_sync() before freeing (Íñigo Huguet) [2059994] - bus: mhi: host: pci_generic: Flush recovery worker during freeze (Íñigo Huguet) [2059994] - bus: mhi: host: pci_generic: Add missing poweroff() PM callback (Íñigo Huguet) [2059994] - mac80211: fix ht_capa printout in debugfs (Íñigo Huguet) [2059994] - cfg80211: hold bss_lock while updating nontrans_list (Íñigo Huguet) [2059994] - nl80211: correctly check NL80211_ATTR_REG_ALPHA2 size (Íñigo Huguet) [2059994] - ath9k: Fix usage of driver-private space in tx_info (Íñigo Huguet) [2059994] - brcmfmac: sdio: Fix undefined behavior due to shift overflowing the constant (Íñigo Huguet) [2059994] - mt76: Fix undefined behavior due to shift overflowing the constant (Íñigo Huguet) [2059994] - Revert "ath11k: mesh: add support for 256 bitmap in blockack frames in 11ax" (Íñigo Huguet) [2059994] - ath9k: Properly clear TX status area before reporting to mac80211 (Íñigo Huguet) [2059994] - iwlwifi: mvm: Don't fail if PPAG isn't supported (Íñigo Huguet) [2059994] - bus: mhi: Make mhi_state_str[] array static inline and move to common.h (Íñigo Huguet) [2059994] - bus: mhi: Move common MHI definitions out of host directory (Íñigo Huguet) [2059994] - bus: mhi: host: Rename "struct mhi_tre" to "struct mhi_ring_element" (Íñigo Huguet) [2059994] - bus: mhi: Cleanup the register definitions used in headers (Íñigo Huguet) [2059994] - bus: mhi: Use bitfield operations for handling DWORDs of ring elements (Íñigo Huguet) [2059994] - bus: mhi: Use bitfield operations for register read and write (Íñigo Huguet) [2059994] - bus: mhi: Move host MHI code to "host" directory (Íñigo Huguet) [2059994] - bus: mhi: Fix MHI DMA structure endianness (Íñigo Huguet) [2059994] - bus: mhi: Fix pm_state conversion to string (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add mru_default for Quectel EM1xx series (Íñigo Huguet) [2059994] - rfkill: make new event layout opt-in (Íñigo Huguet) [2059994] - rtw89: implement stop and resume channels transmission v1 (Íñigo Huguet) [2059994] - rtw89: extend mac tx_en bits from 16 to 32 (Íñigo Huguet) [2059994] - rtw89: change value assignment style of rtw89_mac_cfg_gnt() (Íñigo Huguet) [2059994] - rtw89: 8852c: add mac_ctrl_path and mac_cfg_gnt APIs (Íñigo Huguet) [2059994] - rtw89: disable FW and H2C function if CPU disabled (Íñigo Huguet) [2059994] - rtw89: initialize preload window of D-MAC (Íñigo Huguet) [2059994] - rtw89: modify MAC enable functions (Íñigo Huguet) [2059994] - rtw89: add config_rf_reg_v1 to configure RF parameter tables (Íñigo Huguet) [2059994] - rtw89: 8852c: add read/write rf register function (Íñigo Huguet) [2059994] - rtw89: 8852c: add setting of TB UL TX power offset (Íñigo Huguet) [2059994] - rtw89: 8852c: add write/read crystal function in CFO tracking (Íñigo Huguet) [2059994] - rtw89: modify dcfo_comp to share with chips (Íñigo Huguet) [2059994] - rtw89: Fix spelling mistake "Mis-Match" -> "Mismatch" (Íñigo Huguet) [2059994] - brcmfmac: p2p: Fix spelling mistake "Comback" -> "Comeback" (Íñigo Huguet) [2059994] - iwlwifi: mei: fix building iwlmei (Íñigo Huguet) [2059994] - mt76: fix monitor rx FCS error in DFS channel (Íñigo Huguet) [2059994] - mt76: mt7921: don't enable beacon filter when IEEE80211_CONF_CHANGE_MONITOR is set (Íñigo Huguet) [2059994] - mt76: fix wrong HE data rate in sniffer tool (Íñigo Huguet) [2059994] - mt76: mt7915: introduce 802.11ax multi-bss support (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_init_hw in a dedicated work (Íñigo Huguet) [2059994] - mt76: mt7921: add mt7921u driver (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_usb_sdio_tx_status_data in mac common code. (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_usb_sdio_tx_complete_skb in common mac code. (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_usb_sdio_tx_prepare_skb in common mac code (Íñigo Huguet) [2059994] - mt76: mt7921: update mt7921_skb_add_usb_sdio_hdr to support usb (Íñigo Huguet) [2059994] - mt76: mt7921: disable runtime pm for usb (Íñigo Huguet) [2059994] - mt76: usb: introduce __mt76u_init utility routine (Íñigo Huguet) [2059994] - mt76: usb: add req_type to ___mt76u_wr signature (Íñigo Huguet) [2059994] - mt76: usb: add req_type to ___mt76u_rr signature (Íñigo Huguet) [2059994] - mt76: mt7915: fix typos in comments (Íñigo Huguet) [2059994] - mt76: mt7915: fix phy cap in mt7915_set_stream_he_txbf_caps() (Íñigo Huguet) [2059994] - mt76: mt7915: fix beamforming mib stats (Íñigo Huguet) [2059994] - mt76: mt7915: set band1 TGID field in tx descriptor (Íñigo Huguet) [2059994] - mt76: fix invalid rssi report (Íñigo Huguet) [2059994] - mt76: use le32/16_get_bits() whenever possible (Íñigo Huguet) [2059994] - mt76: connac: make read-only array ba_range static const (Íñigo Huguet) [2059994] - mt76: mt7915: check for devm_pinctrl_get() failure (Íñigo Huguet) [2059994] - mt76: mt7921: get rid of mt7921_wait_for_mcu_init declaration (Íñigo Huguet) [2059994] - mt76: mt7915: add txpower init for 6GHz (Íñigo Huguet) [2059994] - mt76: mt7915: fix eeprom fields of txpower init values (Íñigo Huguet) [2059994] - mt76: mt7915: add 6 GHz support (Íñigo Huguet) [2059994] - mt76: connac: add 6 GHz support for wtbl and starec configuration (Íñigo Huguet) [2059994] - mt76: mt7915: allow beaconing on all chains (Íñigo Huguet) [2059994] - mt76: fix monitor mode crash with sdio driver (Íñigo Huguet) [2059994] - mt76: mt7921: fix mt7921_queues_acq implementation (Íñigo Huguet) [2059994] - mt76: mt7921: fix xmit-queue dump for usb and sdio (Íñigo Huguet) [2059994] - mt76: mt7921: make mt7921_init_tx_queues static (Íñigo Huguet) [2059994] - mt76: split single ldpc cap bit into bits (Íñigo Huguet) [2059994] - mt76: mt7915: fix DFS no radar detection event (Íñigo Huguet) [2059994] - mt76: mt7921: use mt76_hw instead of open coding it (Íñigo Huguet) [2059994] - mt76: mt7921: fix up the monitor mode (Íñigo Huguet) [2059994] - mt76: mt7663u: introduce mt7663u_mcu_power_on routine (Íñigo Huguet) [2059994] - mt76: mt7615: honor ret from mt7615_mcu_restart in mt7663u_mcu_init (Íñigo Huguet) [2059994] - rtw89: fix uninitialized variable of rtw89_append_probe_req_ie() (Íñigo Huguet) [2059994] - rtlwifi: rtl8821ae: fix typos in comments (Íñigo Huguet) [2059994] - rtlwifi: rtl8192cu: Add On Networks N150 (Íñigo Huguet) [2059994] - mwifiex: make read-only array wmm_oui static const (Íñigo Huguet) [2059994] - mac80211: update bssid_indicator in ieee80211_assign_beacon (Íñigo Huguet) [2059994] - mac80211: MBSSID channel switch (Íñigo Huguet) [2059994] - mac80211: MBSSID beacon handling in AP mode (Íñigo Huguet) [2059994] - mac80211: always have ieee80211_sta_restart() (Íñigo Huguet) [2059994] - mac80211: Add support to trigger sta disconnect on hardware restart (Íñigo Huguet) [2059994] - mac80211: fix potential double free on mesh join (Íñigo Huguet) [2059994] - mac80211: correct legacy rates check in ieee80211_calc_rx_airtime (Íñigo Huguet) [2059994] - nl80211: fix typo of NL80211_IF_TYPE_OCB in documentation (Íñigo Huguet) [2059994] - mac80211: Use GFP_KERNEL instead of GFP_ATOMIC when possible (Íñigo Huguet) [2059994] - mac80211: replace DEFINE_SIMPLE_ATTRIBUTE with DEFINE_DEBUGFS_ATTRIBUTE (Íñigo Huguet) [2059994] - rtw89: 8852c: process logic efuse map (Íñigo Huguet) [2059994] - rtw89: 8852c: process efuse of phycap (Íñigo Huguet) [2059994] - rtw89: support DAV efuse reading operation (Íñigo Huguet) [2059994] - rtw89: 8852c: add chip::dle_mem (Íñigo Huguet) [2059994] - rtw89: add page_regs to handle v1 chips (Íñigo Huguet) [2059994] - rtw89: add chip_info::{h2c,c2h}_reg to support more chips (Íñigo Huguet) [2059994] - rtw89: add hci_func_en_addr to support variant generation (Íñigo Huguet) [2059994] - rtw89: add power_{on/off}_func (Íñigo Huguet) [2059994] - rtw89: read chip version depends on chip ID (Íñigo Huguet) [2059994] - rtw89: pci: use a struct to describe all registers address related to DMA channel (Íñigo Huguet) [2059994] - rtw89: pci: add V1 of PCI channel address (Íñigo Huguet) [2059994] - rtw89: pci: add struct rtw89_pci_info (Íñigo Huguet) [2059994] - rtw89: 8852c: add 8852c empty files (Íñigo Huguet) [2059994] - brcmfmac: make the read-only array pktflags static const (Íñigo Huguet) [2059994] - rtlwifi: rtl8192ce: remove duplicated function '_rtl92ce_phy_set_rf_sleep' (Íñigo Huguet) [2059994] - ath10k: Fix error handling in ath10k_setup_msa_resources (Íñigo Huguet) [2059994] - ath11k: remove unneeded flush_workqueue (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 72 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: acpi: move ppag code from mvm to fw/acpi (Íñigo Huguet) [2059994] - iwlwifi: dbg: check trigger data before access (Íñigo Huguet) [2059994] - iwlwifi: dbg: in sync mode don't call schedule (Íñigo Huguet) [2059994] - iwlwifi: use 4k queue size for Bz A-step (Íñigo Huguet) [2059994] - iwlwifi: pcie: fix SW error MSI-X mapping (Íñigo Huguet) [2059994] - iwlwifi: yoyo: dump IMR DRAM only for HW and FW error (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for IMR based on platform (Íñigo Huguet) [2059994] - iwlwifi: yoyo: disable IMR DRAM region if IMR is disabled (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove cipher scheme support (Íñigo Huguet) [2059994] - iwlwifi: Configure FW debug preset via module param. (Íñigo Huguet) [2059994] - iwlwifi: mvm: add a flag to reduce power command. (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 71 for AX devices (Íñigo Huguet) [2059994] - ath9k: make array voice_priority static const (Íñigo Huguet) [2059994] - rtw89: declare HE capabilities in 6G band (Íñigo Huguet) [2059994] - rtw89: fix HE PHY bandwidth capability (Íñigo Huguet) [2059994] - rtw89: add tx_wake notify for low ps mode (Íñigo Huguet) [2059994] - rtw89: 8852a: add ieee80211_ops::hw_scan (Íñigo Huguet) [2059994] - Revert "ath: add support for special 0x0 regulatory domain" (Íñigo Huguet) [2059994] - rtw89: get channel parameters of 160MHz bandwidth (Íñigo Huguet) [2059994] - mt76: fix dfs state issue with 160 MHz channels (Íñigo Huguet) [2059994] - mt76: mt7915: simplify conditional (Íñigo Huguet) [2059994] - mt76: mt7921: fix injected MPDU transmission to not use HW A-MSDU (Íñigo Huguet) [2059994] - mt76: mt7915e: Enable thermal management by default (Íñigo Huguet) [2059994] - mt76: mt7915e: Add a hwmon attribute to get the actual throttle state. (Íñigo Huguet) [2059994] - mt76: mt7915e: Fix degraded performance after temporary overheat (Íñigo Huguet) [2059994] - mt76: improve signal strength reporting (Íñigo Huguet) [2059994] - mt76: mt7915: use min_t() to make code cleaner (Íñigo Huguet) [2059994] - mt76: mt7915: fix the muru tlv issue (Íñigo Huguet) [2059994] - mt76: mt7915: check band idx for bcc event (Íñigo Huguet) [2059994] - mt76: mt7615: Fix assigning negative values to unsigned variable (Íñigo Huguet) [2059994] - mt76: connac: adjust wlan_idx size from u8 to u16 (Íñigo Huguet) [2059994] - mt76: mt7915: fix endianness warnings in mt7915_mac_tx_free() (Íñigo Huguet) [2059994] - mt76: mt7915: fix endianness warnings in mt7915_debugfs_rx_fw_monitor (Íñigo Huguet) [2059994] - mt76: mt7615: fix compiler warning on frame size (Íñigo Huguet) [2059994] - mt76: mt7915: initialize smps mode in mt7915_mcu_sta_rate_ctrl_tlv() (Íñigo Huguet) [2059994] - mt76: mt7915: introduce band_idx in mt7915_phy (Íñigo Huguet) [2059994] - mt76: mt7915: add support for MT7986 (Íñigo Huguet) [2059994] - ath10k: fix pointer arithmetic error in trace call (Íñigo Huguet) [2059994] - ath11k: add dbring debug support (Íñigo Huguet) [2059994] - ath11k: translate HE status to radiotap format (Íñigo Huguet) [2059994] - ath11k: decode HE status tlv (Íñigo Huguet) [2059994] - ath11k: switch to using ieee80211_tx_status_ext() (Íñigo Huguet) [2059994] - mt76: mt7921s: fix missing fc type/sub-type for 802.11 pkts (Íñigo Huguet) [2059994] - mt76: mt7915: fix potential memory leak of fw monitor packets (Íñigo Huguet) [2059994] - mt76: mt7915: Fix channel state update error issue (Íñigo Huguet) [2059994] - mt76: fix endianness errors in reverse_frag0_hdr_trans (Íñigo Huguet) [2059994] - mt76: mt7615: introduce SAR support (Íñigo Huguet) [2059994] - mt76: mt7915: fix injected MPDU transmission to not use HW A-MSDU (Íñigo Huguet) [2059994] - rtw88: change rtw_info() to proper message level (Íñigo Huguet) [2059994] - rtw89: Limit the CFO boundaries of x'tal value (Íñigo Huguet) [2059994] - rtw89: phy: handle txpwr lmt/lmt_ru of 160M bandwidth (Íñigo Huguet) [2059994] - rtw89: phy: handle txpwr lmt/lmt_ru of 6G band (Íñigo Huguet) [2059994] - ath11k: Fix frames flush failure caused by deadlock (Íñigo Huguet) [2059994] - ath11k: Handle failure in qmi firmware ready (Íñigo Huguet) [2059994] - ath11k: Invalidate cached reo ring entry before accessing it (Íñigo Huguet) [2059994] - ath: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2059994] - ath11k: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2059994] - ath10k: Replace zero-length array with flexible-array member (Íñigo Huguet) [2059994] - ath9k: use hw_random API instead of directly dumping into random.c (Íñigo Huguet) [2059994] - ath11k: configure RDDM size to mhi for recovery by firmware (Íñigo Huguet) [2059994] - ath11k: fix invalid m3 buffer address (Íñigo Huguet) [2059994] - ath11k: add ath11k_qmi_free_resource() for recovery (Íñigo Huguet) [2059994] - rtw89: core.h: Replace zero-length array with flexible-array member (Íñigo Huguet) [2059994] - brcmfmac: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2059994] - rtw89: fix RCU usage in rtw89_core_txq_push() (Íñigo Huguet) [2059994] - rtw88: coex: Update rtl8822c COEX version to 22020720 (Íñigo Huguet) [2059994] - rtw88: coex: Add C2H/H2C handshake with BT mailbox for asking HID Info (Íñigo Huguet) [2059994] - rtw88: coex: Add WLAN MIMO power saving for Bluetooth gaming controller (Íñigo Huguet) [2059994] - rtw88: coex: update BT PTA counter regularly (Íñigo Huguet) [2059994] - rtw88: coex: Improve WLAN throughput when HFP COEX (Íñigo Huguet) [2059994] - rtw88: 8822ce: add support for TX/RX 1ss mode (Íñigo Huguet) [2059994] - iwlwifi: dbg_ini: Split memcpy() to avoid multi-field write (Íñigo Huguet) [2059994] - iwlwifi: mvm: Fix an error code in iwl_mvm_up() (Íñigo Huguet) [2059994] - iwlwifi: Fix -EIO error code that is never returned (Íñigo Huguet) [2059994] - iwlwifi: mvm: rfi: use kmemdup() to replace kzalloc + memcpy (Íñigo Huguet) [2059994] - iwlwifi: Fix syntax errors in comments (Íñigo Huguet) [2059994] - iwlwifi: dvm: use struct_size over open coded arithmetic (Íñigo Huguet) [2059994] - iwlwifi/fw: use struct_size over open coded arithmetic (Íñigo Huguet) [2059994] - iwlwifi: Make use of the helper macro LIST_HEAD() (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix off by one in iwl_mvm_stat_iterator_all_macs() (Íñigo Huguet) [2059994] - iwlwifi: yoyo: send hcmd to fw after dump collection completes. (Íñigo Huguet) [2059994] - iwlwifi: mvm: move only to an enabled channel (Íñigo Huguet) [2059994] - iwlwifi: mvm: update BAID allocation command again (Íñigo Huguet) [2059994] - iwlwifi: api: remove ttl field from TX command (Íñigo Huguet) [2059994] - iwlwifi: support new queue allocation command (Íñigo Huguet) [2059994] - iwlwifi: yoyo: support dump policy for the dump size (Íñigo Huguet) [2059994] - iwlwifi: pcie: iwlwifi: fix device id 7F70 struct (Íñigo Huguet) [2059994] - iwlwifi: tlc: Add logs in rs_fw_rate_init func to print TLC configuration (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove iwl_mvm_disable_txq() flags argument (Íñigo Huguet) [2059994] - iwlwifi: remove command ID argument from queue allocation (Íñigo Huguet) [2059994] - iwlwifi: make iwl_txq_dyn_alloc_dma() return the txq (Íñigo Huguet) [2059994] - iwlwifi: fix small doc mistake for iwl_fw_ini_addr_val (Íñigo Huguet) [2059994] - iwlwifi: mvm: add additional info for boot info failures (Íñigo Huguet) [2059994] - iwlwifi: mvm: always remove the session protection after association (Íñigo Huguet) [2059994] - iwlwifi: mvm: make iwl_mvm_reconfig_scd() static (Íñigo Huguet) [2059994] - iwlwifi: mvm: refactor setting PPE thresholds in STA_HE_CTXT_CMD (Íñigo Huguet) [2059994] - iwlwifi: mvm: Disable WiFi bands selectively with BIOS (Íñigo Huguet) [2059994] - iwlwifi: mvm: add additional info for boot info failures (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't send BAID removal to the FW during hw_restart (Íñigo Huguet) [2059994] - iwlwifi: don't dump_stack() when we get an unexpected interrupt (Íñigo Huguet) [2059994] - iwlwifi: mvm: rfi: handle deactivation notification (Íñigo Huguet) [2059994] - iwlwifi: mvm: Consider P2P GO operation during scan (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 70 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: Unify the scan iteration functions (Íñigo Huguet) [2059994] - iwlwifi: mei: use C99 initializer for device IDs (Íñigo Huguet) [2059994] - iwlwifi: debugfs: remove useless double condition (Íñigo Huguet) [2059994] - iwlwifi: remove unused macros (Íñigo Huguet) [2059994] - iwlwifi: eeprom: clean up macros (Íñigo Huguet) [2059994] - iwlwifi: drv: load tlv debug data earlier (Íñigo Huguet) [2059994] - iwlwifi: pcie: Adapt rx queue write pointer for Bz family (Íñigo Huguet) [2059994] - iwlwifi: pcie: adjust to Bz completion descriptor (Íñigo Huguet) [2059994] - iwlwifi: mvm: Passively scan non PSC channels only when requested so (Íñigo Huguet) [2059994] - iwlwifi: scan: Modify return value of a function (Íñigo Huguet) [2059994] - iwlwifi: yoyo: Avoid using dram data if allocation failed (Íñigo Huguet) [2059994] - iwlwifi: mvm: Correctly set fragmented EBS (Íñigo Huguet) [2059994] - iwlwifi: nvm: Correct HE capability (Íñigo Huguet) [2059994] - iwlwifi: mei: avoid -Wpointer-arith and -Wcast-qual warnings (Íñigo Huguet) [2059994] - iwlwifi: make some functions friendly to sparse (Íñigo Huguet) [2059994] - iwlwifi: avoid variable shadowing (Íñigo Huguet) [2059994] - iwlwifi: remove unused DC2DC_CONFIG_CMD definitions (Íñigo Huguet) [2059994] - iwlwifi: dbg-tlv: clean up iwl_dbg_tlv_update_drams() (Íñigo Huguet) [2059994] - iwlwifi: fw: make dump_start callback void (Íñigo Huguet) [2059994] - iwlwifi: pcie: make sure iwl_rx_packet_payload_len() will not underflow (Íñigo Huguet) [2059994] - iwlwifi: mvm: use debug print instead of WARN_ON() (Íñigo Huguet) [2059994] - iwlwifi: read and print OTP minor version (Íñigo Huguet) [2059994] - iwlwifi: add support for BZ-U and BZ-L HW (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for CT-KILL notification version 2 (Íñigo Huguet) [2059994] - iwlwifi: yoyo: remove DBGI_SRAM address reset writing (Íñigo Huguet) [2059994] - iwlwifi: mvm: support v3 of station HE context command (Íñigo Huguet) [2059994] - iwlwifi: yoyo: add IMR DRAM dump support (Íñigo Huguet) [2059994] - iwlwifi: yoyo: fix DBGC allocation flow (Íñigo Huguet) [2059994] - iwlwifi: pcie: add support for MS devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: align locking in D3 test debugfs (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't iterate unadded vifs when handling FW SMPS req (Íñigo Huguet) [2059994] - iwlwifi: advertise support for HE - DCM BPSK RX/TX (Íñigo Huguet) [2059994] - iwlwifi: mvm: only enable HE DCM if we also support TX (Íñigo Huguet) [2059994] - iwlwifi: yoyo: fix DBGI_SRAM ini dump header. (Íñigo Huguet) [2059994] - iwlwifi: dbg: add infra for tracking free buffer size (Íñigo Huguet) [2059994] - iwlwifi: mvm: starting from 22000 we have 32 Rx AMPDU sessions (Íñigo Huguet) [2059994] - iwlwifi: mvm: support new BAID allocation command (Íñigo Huguet) [2059994] - iwlwifi: mvm: refactor iwl_mvm_sta_rx_agg() (Íñigo Huguet) [2059994] - iwlwifi: cfg: add support for 1K BA queue (Íñigo Huguet) [2059994] - iwlwifi: avoid void pointer arithmetic (Íñigo Huguet) [2059994] - iwlwifi: fix various more -Wcast-qual warnings (Íñigo Huguet) [2059994] - iwlwifi: propagate (const) type qualifier (Íñigo Huguet) [2059994] - iwlwifi: de-const properly where needed (Íñigo Huguet) [2059994] - iwlwifi: make iwl_fw_lookup_cmd_ver() take a cmd_id (Íñigo Huguet) [2059994] - iwlwifi: mvm: fw: clean up hcmd struct creation (Íñigo Huguet) [2059994] - iwlwifi: prefer WIDE_ID() over iwl_cmd_id() (Íñigo Huguet) [2059994] - iwlwifi: mvm: allow enabling UHB TAS in the USA via ACPI setting (Íñigo Huguet) [2059994] - iwlwifi: mvm: offload channel switch timing to FW (Íñigo Huguet) [2059994] - iwlwifi: mvm: Don't call iwl_mvm_sta_from_mac80211() with NULL sta (Íñigo Huguet) [2059994] - mac80211_hwsim: Advertise support for EHT capabilities (Íñigo Huguet) [2059994] - mac80211: parse AddBA request with extended AddBA element (Íñigo Huguet) [2059994] - mac80211: calculate max RX NSS for EHT mode (Íñigo Huguet) [2059994] - mac80211: Add support for storing station EHT capabilities (Íñigo Huguet) [2059994] - mac80211: Handle station association response with EHT (Íñigo Huguet) [2059994] - mac80211: Add EHT capabilities to association/probe request (Íñigo Huguet) [2059994] - mac80211: Add initial support for EHT and 320 MHz channels (Íñigo Huguet) [2059994] - mac80211: Support parsing EHT elements (Íñigo Huguet) [2059994] - cfg80211: Support configuration of station EHT capabilities (Íñigo Huguet) [2059994] - nl80211: fix NL80211_HE_MAX_CAPABILITY_LEN (Íñigo Huguet) [2059994] - cfg80211: add NO-EHT flag to regulatory (Íñigo Huguet) [2059994] - nl80211: add support for 320MHz channel limitation (Íñigo Huguet) [2059994] - nl80211: add EHT MCS support (Íñigo Huguet) [2059994] - cfg80211: Add support for EHT 320 MHz channel width (Íñigo Huguet) [2059994] - cfg80211: Add data structures to capture EHT capabilities (Íñigo Huguet) [2059994] - ieee80211: add EHT 1K aggregation definitions (Íñigo Huguet) [2059994] - ieee80211: Add EHT (802.11be) definitions (Íñigo Huguet) [2059994] - mac80211_hwsim: Add custom regulatory for 6GHz (Íñigo Huguet) [2059994] - mac80211_hwsim: don't shadow a global variable (Íñigo Huguet) [2059994] - mac80211_hwsim: check TX and STA bandwidth (Íñigo Huguet) [2059994] - nl80211: accept only HE capability elements with valid size (Íñigo Huguet) [2059994] - mac80211: parse only HE capability elements with valid size (Íñigo Huguet) [2059994] - ieee80211: add helper to check HE capability element size (Íñigo Huguet) [2059994] - nl80211: use RCU to read regdom in reg get/dump (Íñigo Huguet) [2059994] - mac80211_hwsim: Add debugfs to control rx status RSSI (Íñigo Huguet) [2059994] - ieee80211: use tab to indent struct ieee80211_neighbor_ap_info (Íñigo Huguet) [2059994] - rtw89: handle TX/RX 160M bandwidth (Íñigo Huguet) [2059994] - rtw89: declare if chip support 160M bandwidth (Íñigo Huguet) [2059994] - rtw89: add 6G support to rate adaptive mechanism (Íñigo Huguet) [2059994] - rtw89: extend subband for 6G band (Íñigo Huguet) [2059994] - rtw89: refine naming of rfk helpers with prefix (Íñigo Huguet) [2059994] - rtw89: make rfk helpers common across chips (Íñigo Huguet) [2059994] - brcmfmac: Add BCM43454/6 support (Íñigo Huguet) [2059994] - ath11k: fix destination monitor ring out of sync (Íñigo Huguet) [2059994] - ath11k: fix radar detection in 160 Mhz (Íñigo Huguet) [2059994] - ath11k: fix WARN_ON during ath11k_mac_update_vif_chan (Íñigo Huguet) [2059994] - ath11k: fix uninitialized rate_idx in ath11k_dp_tx_update_txcompl() (Íñigo Huguet) [2059994] - brcmfmac: of: remove redundant variable len (Íñigo Huguet) [2059994] - brcmfmac: p2p: Replace one-element arrays with flexible-array members (Íñigo Huguet) [2059994] - rtw89: coex: set EN bit to PLT register (Íñigo Huguet) [2059994] - rtw89: recover rates of rate adaptive mechanism (Íñigo Huguet) [2059994] - rtw88: recover rates of rate adaptive mechanism (Íñigo Huguet) [2059994] - rtw89: declare AP mode support (Íñigo Huguet) [2059994] - rtw89: debug: add stations entry to show ID assignment (Íñigo Huguet) [2059994] - rtw89: implement ieee80211_ops::start_ap and stop_ap (Íñigo Huguet) [2059994] - rtw89: maintain assoc/disassoc STA states of firmware and hardware (Íñigo Huguet) [2059994] - rtw89: only STA mode change vif_type mapping dynamically (Íñigo Huguet) [2059994] - rtw89: add addr_cam field to sta to support AP mode (Íñigo Huguet) [2059994] - rtw89: extend role_maintain to support AP mode (Íñigo Huguet) [2059994] - rtw88: fix use after free in rtw_hw_scan_update_probe_req() (Íñigo Huguet) [2059994] - mac80211: Remove redundent assignment channel_type (Íñigo Huguet) [2059994] - mac80211: remove useless ieee80211_vif_is_mesh() check (Íñigo Huguet) [2059994] - mac80211: fix struct ieee80211_tx_info size (Íñigo Huguet) [2059994] - mac80211: mlme: validate peer HE supported rates (Íñigo Huguet) [2059994] - mac80211: remove unused macros (Íñigo Huguet) [2059994] - cfg80211: pmsr: remove useless ifdef guards (Íñigo Huguet) [2059994] - mac80211: airtime: avoid variable shadowing (Íñigo Huguet) [2059994] - mac80211: mlme: add documentation from spec to code (Íñigo Huguet) [2059994] - mac80211: vht: use HE macros for parsing HE capabilities (Íñigo Huguet) [2059994] - ieee80211: radiotap: fix -Wcast-qual warnings (Íñigo Huguet) [2059994] - cfg80211: fix -Wcast-qual warnings (Íñigo Huguet) [2059994] - ieee80211: fix -Wcast-qual warnings (Íñigo Huguet) [2059994] - cfg80211: don't add non transmitted BSS to 6GHz scanned channels (Íñigo Huguet) [2059994] - ieee80211: fix HE SPR size calculation (Íñigo Huguet) [2059994] - cfg80211/mac80211: assume CHECKSUM_COMPLETE includes SNAP (Íñigo Huguet) [2059994] - mac80211: consider RX NSS in UHB connection (Íñigo Huguet) [2059994] - mac80211: limit bandwidth in HE capabilities (Íñigo Huguet) [2059994] - mt76: redefine mt76_for_each_q_rx to adapt mt7986 changes (Íñigo Huguet) [2059994] - mt76: dma: initialize skip_unmap in mt76_dma_rx_fill (Íñigo Huguet) [2059994] - mt76: do not always copy ethhdr in reverse_frag0_hdr_trans (Íñigo Huguet) [2059994] - mt76: mt76x02: use mt76_phy_dfs_state to determine radar detector state (Íñigo Huguet) [2059994] - mt76: mt7615: fix/rewrite the dfs state handling logic (Íñigo Huguet) [2059994] - mt76: mt7915: fix/rewrite the dfs state handling logic (Íñigo Huguet) [2059994] - mt76: mt76x02: improve tx hang detection (Íñigo Huguet) [2059994] - mt76x02: improve mac error check/reset reliability (Íñigo Huguet) [2059994] - mt76: mt7921s: run sleep mode by default (Íñigo Huguet) [2059994] - mt76: sdio: honor the largest Tx buffer the hardware can support (Íñigo Huguet) [2059994] - mt76: mt7915: fix the nss setting in bitrates (Íñigo Huguet) [2059994] - mt76: mt7915: update max_mpdu_size in mt7915_mcu_sta_amsdu_tlv() (Íñigo Huguet) [2059994] - mt76: mt7915: fix mcs_map in mt7915_mcu_set_sta_he_mcs() (Íñigo Huguet) [2059994] - mt76: mt7921s: fix a possible memory leak in mt7921_load_patch (Íñigo Huguet) [2059994] - mt76: mt7915: fix possible memory leak in mt7915_mcu_add_sta (Íñigo Huguet) [2059994] - mt76: stop the radar detector after leaving dfs channel (Íñigo Huguet) [2059994] - mt76: mt7615: check sta_rates pointer in mt7615_sta_rate_tbl_update (Íñigo Huguet) [2059994] - mt76: mt7603: check sta_rates pointer in mt7603_sta_rate_tbl_update (Íñigo Huguet) [2059994] - mt76: mt7663s: flush runtime-pm queue after waking up the device (Íñigo Huguet) [2059994] - mt76: mt7615: add support for LG LGSBWAC02 (MT7663BUN) (Íñigo Huguet) [2059994] - mt76: mt7921: remove duplicated code in mt7921_mac_decode_he_radiotap (Íñigo Huguet) [2059994] - mt76: mt7915: add missing DATA4_TB_SPTL_REUSE1 to mt7915_mac_decode_he_radiotap (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_lmac_mapping in mt76-connac module (Íñigo Huguet) [2059994] - mt76: mt7915: enable radar background detection (Íñigo Huguet) [2059994] - mt76: mt7915: report radar pattern if detected by rdd2 (Íñigo Huguet) [2059994] - mt76: mt7915: introduce rdd_monitor debugfs node (Íñigo Huguet) [2059994] - mt76: mt7915: enable radar trigger on rdd2 (Íñigo Huguet) [2059994] - mt76: mt7915: introduce mt7915_set_radar_background routine (Íñigo Huguet) [2059994] - mt76: mt7915: set bssinfo/starec command when adding interface (Íñigo Huguet) [2059994] - mt76: mt7921: toggle runtime-pm adding a monitor vif (Íñigo Huguet) [2059994] - mt76: mt7921: fix endianness issues in mt7921_mcu_set_tx() (Íñigo Huguet) [2059994] - mt76: sdio: disable interrupt in mt76s_sdio_irq (Íñigo Huguet) [2059994] - mt76: mt7921: fix crash when startup fails. (Íñigo Huguet) [2059994] - mt76: mt7921s: fix mt7921s_mcu_[fw|drv]_pmctrl (Íñigo Huguet) [2059994] - mt76: mt7921: fix ht mcs in mt7921_mac_add_txs_skb() (Íñigo Huguet) [2059994] - mt76: mt7915: fix ht mcs in mt7915_mac_add_txs_skb() (Íñigo Huguet) [2059994] - mt76: mt7615: fix a leftover race in runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7921: fix a leftover race in runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7921: do not always disable fw runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7915: add support for passing chip/firmware debug data to user space (Íñigo Huguet) [2059994] - mt76: mt7615e: process txfree and txstatus without allocating skbs (Íñigo Huguet) [2059994] - mt76: mt7915: update bss_info with cipher after setting the group key (Íñigo Huguet) [2059994] - mt76: mt7615: update bss_info with cipher after setting the group key (Íñigo Huguet) [2059994] - mt76: connac: add support for passing the cipher field in bss_info (Íñigo Huguet) [2059994] - mt76: mt7921e: process txfree and txstatus without allocating skbs (Íñigo Huguet) [2059994] - mt76: mt7615: fix a possible race enabling/disabling runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7921: set EDCA parameters with the MCU CE command (Íñigo Huguet) [2059994] - mt76: mt76_connac: fix MCU_CE_CMD_SET_ROC definition error (Íñigo Huguet) [2059994] - mt76: mt7921: forbid the doze mode when coredump is in progress (Íñigo Huguet) [2059994] - mt76: mt7921e: make dev->fw_assert usage consistent (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_rdd_cmd in mt76-connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_set_rts_thresh (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_gen_dl_mode in mt76-connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_init_download (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_patch_sem_ctrl/mt76_connac_mcu_start_patch (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_restart in common module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_start_firmware (Íñigo Huguet) [2059994] - mt76: mt7921: get rid of mt7921_mcu_get_eeprom (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_set_pm in connac module (Íñigo Huguet) [2059994] - mt76: connac: introduce is_connac_v1 utility routine (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_wtbl_update_hdr_trans in connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_hdr_trans_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_ht_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_smps_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_uapsd (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_basic_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_generic_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_ba (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_ba_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_ba_tlv (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_bss_basic_tlv in connac module (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_bss_ext_tlv in connac module (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_bss_omac_tlv in connac module (Íñigo Huguet) [2059994] - mt76: mt7915: remove duplicated defs in mcu.h (Íñigo Huguet) [2059994] - mt76: mt7915: move pci specific code back to pci.c (Íñigo Huguet) [2059994] - mt76: mt7921s: update mt7921s_wfsys_reset sequence (Íñigo Huguet) [2059994] - mt76: mt7921s: clear MT76_STATE_MCU_RUNNING immediately after reset (Íñigo Huguet) [2059994] - mt76: sdio: lock sdio when it is needed (Íñigo Huguet) [2059994] - mt76: mt7915: use proper aid value in mt7915_mcu_sta_basic_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: use proper aid value in mt7915_mcu_wtbl_generic_tlv in sta mode (Íñigo Huguet) [2059994] - mt76: make mt76_sar_capa static (Íñigo Huguet) [2059994] - mt76: mt7915: add device id for mt7916 (Íñigo Huguet) [2059994] - mt76: set wlan_idx_hi on mt7916 (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_add_key in connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_get_phy utilities (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_chan_bw in common code (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_get_cipher in common code (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_add_tlv routine (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_alloc_wtbl_req (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_alloc_sta_req (Íñigo Huguet) [2059994] - mt76: connac: fix sta_rec_wtbl tag len (Íñigo Huguet) [2059994] - mt76: mt7915: add mt7916 calibrated data support (Íñigo Huguet) [2059994] - mt76: mt7915: update mt7915_chan_mib_offs for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: update rx rate reporting for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: add txfree event v3 (Íñigo Huguet) [2059994] - mt76: mt7915: enlarge wcid size to 544 (Íñigo Huguet) [2059994] - mt76: mt7915: rework eeprom.c to adapt mt7916 changes (Íñigo Huguet) [2059994] - mt76: mt7915: add firmware support for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: rework dma.c to adapt mt7916 changes (Íñigo Huguet) [2059994] - mt76: add MT_RXQ_MAIN_WA for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: refine register definition (Íñigo Huguet) [2059994] - mt76: mt7915: add mt7915_mmio_probe() as a common probing function (Íñigo Huguet) [2059994] - mt76: mt7915: fix polling firmware-own status (Íñigo Huguet) [2059994] - brcmfmac: pcie: Read the console on init and shutdown (Íñigo Huguet) [2059994] - brcmfmac: fwil: Constify iovar name arguments (Íñigo Huguet) [2059994] - brcmfmac: of: Use devm_kstrdup for board_type & check for errors (Íñigo Huguet) [2059994] - brcmfmac: pcie: Fix crashes due to early IRQs (Íñigo Huguet) [2059994] - brcmfmac: pcie: Replace brcmf_pcie_copy_mem_todev with memcpy_toio (Íñigo Huguet) [2059994] - brcmfmac: pcie: Declare missing firmware files in pcie.c (Íñigo Huguet) [2059994] - brcmfmac: firmware: Allocate space for default boardrev in nvram (Íñigo Huguet) [2059994] - brcmfmac: pcie: Release firmwares in the brcmf_pcie_setup error path (Íñigo Huguet) [2059994] - rtlwifi: remove redundant initialization of variable ul_encalgo (Íñigo Huguet) [2059994] - ray_cs: Check ioremap return value (Íñigo Huguet) [2059994] - ath11k: add debugfs for TWT debug calls (Íñigo Huguet) [2059994] - ath11k: add WMI calls to manually add/del/pause/resume TWT dialogs (Íñigo Huguet) [2059994] - ath11k: Add debugfs interface to configure firmware debug log level (Íñigo Huguet) [2059994] - rtw88: rtw8821c: enable rfe 6 devices (Íñigo Huguet) [2059994] - rtw88: fix memory overrun and memory leak during hw_scan (Íñigo Huguet) [2059994] - rtw88: fix idle mode flow for hw scan (Íñigo Huguet) [2059994] - rtw88: check for validity before using a pointer (Íñigo Huguet) [2059994] - ath11k: mhi: use mhi_sync_power_up() (Íñigo Huguet) [2059994] - ath11k: pci: fix crash on suspend if board file is not found (Íñigo Huguet) [2059994] - ath11k: Fix missing rx_desc_get_ldpc_support in wcn6855_ops (Íñigo Huguet) [2059994] - ath11k: Fix uninitialized symbol 'rx_buf_sz' (Íñigo Huguet) [2059994] - ath11k: fix kernel panic during unload/load ath11k modules (Íñigo Huguet) [2059994] - ath11k: Rename ath11k_ahb_ext_irq_config (Íñigo Huguet) [2059994] - brcmfmac: add CYW43570 PCIE device (Íñigo Huguet) [2059994] - brcmfmac: use ISO3166 country code and 0 rev as fallback on some devices (Íñigo Huguet) [2059994] - rtw89: use pci_read/write_config instead of dbi read/write (Íñigo Huguet) [2059994] - rtw89: refine DIG feature to support 160M and CCK PD (Íñigo Huguet) [2059994] - rtw89: include subband type in channel params (Íñigo Huguet) [2059994] - rtw89: handle 6G band if supported by a chipset (Íñigo Huguet) [2059994] - rtw89: separate {init,deinit}_addr_cam functions (Íñigo Huguet) [2059994] - rtw89: set mac_id and port ID to TXWD (Íñigo Huguet) [2059994] - rtw89: send broadcast/multicast packets via HIQ if STAs are in sleep mode (Íñigo Huguet) [2059994] - rtw89: configure mac port HIQ registers (Íñigo Huguet) [2059994] - rtw89: rename vif_maintain to role_maintain (Íñigo Huguet) [2059994] - rtw89: extend firmware commands on states of sta_assoc and sta_disconnect (Íñigo Huguet) [2059994] - rtw89: allocate mac_id for each station in AP mode (Íñigo Huguet) [2059994] - rtw89: implement mac80211_ops::set_tim to indicate STA to receive packets (Íñigo Huguet) [2059994] - rtw89: add C2H handle of BCN_CNT (Íñigo Huguet) [2059994] - rtw89: download beacon content to firmware (Íñigo Huguet) [2059994] - rtw89: use hardware SSN to TX management frame (Íñigo Huguet) [2059994] - rtw89: configure rx_filter according to FIF_PROBE_REQ (Íñigo Huguet) [2059994] - rtw89: correct use of BA CAM (Íñigo Huguet) [2059994] - rtw89: encapsulate RX handlers to single function (Íñigo Huguet) [2059994] - rtw89: Add RX counters of VHT MCS-10/11 to debugfs (Íñigo Huguet) [2059994] - rtw89: remove duplicate definition of hardware port number (Íñigo Huguet) [2059994] - rtw89: extract modules by chipset (Íñigo Huguet) [2059994] - ath11k: avoid firmware crash when reg set for QCA6390/WCN6855 (Íñigo Huguet) [2059994] - ath11k: set WMI_PEER_40MHZ while peer assoc for 6 GHz (Íñigo Huguet) [2059994] - ath9k_htc: fix uninit value bugs (Íñigo Huguet) [2059994] - ath10k: abstract htt_rx_desc structure (Íñigo Huguet) [2059994] - ath9k: remove redundant status variable (Íñigo Huguet) [2059994] - ath11k: Reconfigure hardware rate for WCN6855 after vdev is started (Íñigo Huguet) [2059994] - ath: dfs_pattern_detector: Avoid open coded arithmetic in memory allocation (Íñigo Huguet) [2059994] - ath10k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2059994] - ath11k: fix error code in ath11k_qmi_assign_target_mem_chunk() (Íñigo Huguet) [2059994] - ath11k: move function ath11k_dp_rx_process_mon_status (Íñigo Huguet) [2059994] - ath11k: enable RX PPDU stats in monitor co-exist mode (Íñigo Huguet) [2059994] - ath11k: free peer for station when disconnect from AP for QCA6390/WCN6855 (Íñigo Huguet) [2059994] - ath11k: add LDPC FEC type in 802.11 radiotap header (Íñigo Huguet) [2059994] - ath11k: Refactor the fallback routine when peer create fails (Íñigo Huguet) [2059994] - ath11k: fix workqueue not getting destroyed after rmmod (Íñigo Huguet) [2059994] - ath10k: fix memory overwrite of the WoWLAN wakeup packet pattern (Íñigo Huguet) [2059994] - ath11k: add missing of_node_put() to avoid leak (Íñigo Huguet) [2059994] - rfkill: define rfill_soft_blocked() if !RFKILL (Íñigo Huguet) [2059994] - Revert "ath10k: drop beacon and probe response which leak from other channel" (Íñigo Huguet) [2059994] - iwlwifi: mvm: return value for request_ownership (Íñigo Huguet) [2059994] - nl80211: Update bss channel on channel switch for P2P_CLIENT (Íñigo Huguet) [2059994] - iwlwifi: fix build error for IWLMEI (Íñigo Huguet) [2059994] - mac80211: treat some SAE auth steps as final (Íñigo Huguet) [2059994] - nl80211: Handle nla_memdup failures in handle_nan_filter (Íñigo Huguet) [2059994] - iwlwifi: mvm: check debugfs_dir ptr before use (Íñigo Huguet) [2059994] - iwlwifi: don't advertise TWT support (Íñigo Huguet) [2059994] - mac80211: fix forwarded mesh frames AC & queue selection (Íñigo Huguet) [2059994] - mac80211: refuse aggregations sessions before authorized (Íñigo Huguet) [2059994] - mac80211: fix EAPoL rekey fail in 802.3 rx path (Íñigo Huguet) [2059994] - iwlwifi: fix use-after-free (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add mru_default for Cinterion MV31-W (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add mru_default for Foxconn SDX55 (Íñigo Huguet) [2059994] - cfg80211: fix race in netlink owner interface destruction (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't send SAR GEO command for 3160 devices (Íñigo Huguet) [2059994] - iwlwifi: remove deprecated broadcast filtering feature (Íñigo Huguet) [2059994] - iwlwifi: mei: report RFKILL upon register when needed (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't feed the hardware RFKILL into iwlmei (Íñigo Huguet) [2059994] - iwlwifi: mei: retry mapping the shared area (Íñigo Huguet) [2059994] - iwlwifi: mei: fix the pskb_may_pull check in ipv4 (Íñigo Huguet) [2059994] - iwlwifi: pcie: gen2: fix locking when "HW not ready" (Íñigo Huguet) [2059994] - iwlwifi: pcie: fix locking when "HW not ready" (Íñigo Huguet) [2059994] - iwlwifi: fix iwl_legacy_rate_to_fw_idx (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix condition which checks the version of rate_n_flags (Íñigo Huguet) [2059994] - mac80211_hwsim: initialize ieee80211_tx_info at hw_scan_work (Íñigo Huguet) [2059994] - mac80211_hwsim: report NOACK frames in tx_status (Íñigo Huguet) [2059994] - mac80211: mlme: check for null after calling kmemdup (Íñigo Huguet) [2059994] - brcmfmac: firmware: Fix crash in brcm_alt_fw_path (Íñigo Huguet) [2059994] - mac80211: use ieee80211_bss_get_elem() (Íñigo Huguet) [2059994] - nl80211: clarify comment for mesh PLINK_BLOCKED state (Íñigo Huguet) [2059994] - mac80211: Add stations iterator where the iterator function may sleep (Íñigo Huguet) [2059994] - mac80211: allow non-standard VHT MCS-10/11 (Íñigo Huguet) [2059994] - codel: remove unnecessary pkt_sched.h include (Íñigo Huguet) [2059994] - codel: remove unnecessary sock.h include (Íñigo Huguet) [2059994] - rtw88: don't consider deep PS mode when transmitting packet (Íñigo Huguet) [2059994] - ath11k: add support of firmware logging for WCN6855 (Íñigo Huguet) [2059994] - ath10k: replace strlcpy with strscpy (Íñigo Huguet) [2059994] - rtw88: support SAR via kernel common API (Íñigo Huguet) [2059994] - rtw88: 8822c: add ieee80211_ops::hw_scan (Íñigo Huguet) [2059994] - iwlwifi: mei: wait before mapping the shared area (Íñigo Huguet) [2059994] - iwlwifi: mei: clear the ownership when the driver goes down (Íñigo Huguet) [2059994] - iwlwifi: fw: fix some scan kernel-doc (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove card state notification code (Íñigo Huguet) [2059994] - iwlwifi: mvm: drop too short packets silently (Íñigo Huguet) [2059994] - iwlwifi: return op_mode only in case the failure is from MEI (Íñigo Huguet) [2059994] - iwlwifi: mvm: support Bz TX checksum offload (Íñigo Huguet) [2059994] - iwlwifi: mvm: add US/CA to TAS block list if OEM isn't allowed (Íñigo Huguet) [2059994] - iwlwifi: mvm: correctly set schedule scan profiles (Íñigo Huguet) [2059994] - iwlwifi: mvm: correctly set channel flags (Íñigo Huguet) [2059994] - iwlwifi: mvm: always store the PPAG table as the latest version. (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 69 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: yoyo: support TLV-based firmware reset (Íñigo Huguet) [2059994] - iwlwifi: mvm: change old-SN drop threshold (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't trust hardware queue number (Íñigo Huguet) [2059994] - iwlwifi: mvm: handle RX checksum on Bz devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: use a define for checksum flags mask (Íñigo Huguet) [2059994] - iwlwifi: remove module loading failure message (Íñigo Huguet) [2059994] - iwlwifi: mvm: isolate offload assist (checksum) calculation (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for OCE scan (Íñigo Huguet) [2059994] - iwlwifi: dump RCM error tables (Íñigo Huguet) [2059994] - iwlwifi: dump both TCM error tables if present (Íñigo Huguet) [2059994] - iwlwifi: dump CSR scratch from outer function (Íñigo Huguet) [2059994] - iwlwifi: parse error tables from debug TLVs (Íñigo Huguet) [2059994] - iwlwifi: recognize missing PNVM data and then log filename (Íñigo Huguet) [2059994] - iwlwifi: rs: add support for TLC config command ver 4 (Íñigo Huguet) [2059994] - iwlwifi: mvm: rfi: update rfi table (Íñigo Huguet) [2059994] - iwlwifi: mvm: Add list of OEMs allowed to use TAS (Íñigo Huguet) [2059994] - iwlwifi: mvm: support revision 1 of WTAS table (Íñigo Huguet) [2059994] - iwlwifi: fw: remove dead error log code (Íñigo Huguet) [2059994] - iwlwifi: do not use __unused as variable name (Íñigo Huguet) [2059994] - iwlwifi: iwl-eeprom-parse: mostly dvm only (Íñigo Huguet) [2059994] - iwlwifi: mvm: clean up indenting in iwl_mvm_tlc_update_notif() (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix a stray tab (Íñigo Huguet) [2059994] - ath11k: add regdb.bin download for regdb offload (Íñigo Huguet) [2059994] - rtl8xxxu: Improve the A-MPDU retransmission rate with RTS/CTS protection (Íñigo Huguet) [2059994] - rtw88: don't check CRC of VHT-SIG-B in 802.11ac signal (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix imbalanced locking in iwl_mvm_start_get_nvm() (Íñigo Huguet) [2059994] - iwlwifi: mvm: add dbg_time_point to debugfs (Íñigo Huguet) [2059994] - iwlwifi: mvm: add missing min_size to kernel-doc (Íñigo Huguet) [2059994] - iwlwifi: mei: fix W=1 warnings (Íñigo Huguet) [2059994] - ath11k: add support for hardware rfkill for QCA6390 (Íñigo Huguet) [2059994] - ath11k: report tx bitrate for iw wlan station dump (Íñigo Huguet) [2059994] - ath11k: fix warning of RCU usage for ath11k_mac_get_arvif_by_vdev_id() (Íñigo Huguet) [2059994] - ath11k: add signal report to mac80211 for QCA6390 and WCN6855 (Íñigo Huguet) [2059994] - ath11k: report rssi of each chain to mac80211 for QCA6390/WCN6855 (Íñigo Huguet) [2059994] - cfg80211: Enable regulatory enforcement checks for drivers supporting mesh iface (Íñigo Huguet) [2059994] - rfkill: allow to get the software rfkill state (Íñigo Huguet) [2059994] - cfg80211: refactor cfg80211_get_ies_channel_number() (Íñigo Huguet) [2059994] - nl82011: clarify interface combinations wrt. channels (Íñigo Huguet) [2059994] - nl80211: Add support to offload SA Query procedures for AP SME device (Íñigo Huguet) [2059994] - nl80211: Add support to set AP settings flags with single attribute (Íñigo Huguet) [2059994] - mac80211: add more HT/VHT/HE state logging (Íñigo Huguet) [2059994] - cfg80211: Use the HE operation IE to determine a 6GHz BSS channel (Íñigo Huguet) [2059994] - cfg80211: rename offchannel_chain structs to background_chain to avoid confusion with ETSI standard (Íñigo Huguet) [2059994] - mac80211: Notify cfg80211 about association comeback (Íñigo Huguet) [2059994] - cfg80211: Add support for notifying association comeback (Íñigo Huguet) [2059994] - mac80211: introduce channel switch disconnect function (Íñigo Huguet) [2059994] - cfg80211: Fix order of enum nl80211_band_iftype_attr documentation (Íñigo Huguet) [2059994] - cfg80211: simplify cfg80211_chandef_valid() (Íñigo Huguet) [2059994] - mac80211: Remove a couple of obsolete TODO (Íñigo Huguet) [2059994] - mac80211: use coarse boottime for airtime fairness code (Íñigo Huguet) [2059994] - mt76: mt7921s: fix cmd timeout in throughput test (Íñigo Huguet) [2059994] - mt76: mt7921s: fix suspend error with enlarging mcu timeout value (Íñigo Huguet) [2059994] - mt76: mt7921s: make pm->suspended usage consistent (Íñigo Huguet) [2059994] - mt76: mt7921: clear pm->suspended in mt7921_mac_reset_work (Íñigo Huguet) [2059994] - mt76: connac: rely on le16_add_cpu in mt76_connac_mcu_add_nested_tlv (Íñigo Huguet) [2059994] - mt76: mt7921: remove dead definitions (Íñigo Huguet) [2059994] - mt76: mt7915: add mu-mimo and ofdma debugfs knobs (Íñigo Huguet) [2059994] - mt76: mt7915: introduce mt76_vif in mt7915_vif (Íñigo Huguet) [2059994] - mt76: mt7921: reduce log severity levels for informative messages (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac definitions (Íñigo Huguet) [2059994] - mt76: connac: rely on MCU_CMD macro (Íñigo Huguet) [2059994] - mt76: connac: introduce MCU_CE_CMD macro (Íñigo Huguet) [2059994] - mt76: connac: introduce MCU_UNI_CMD macro (Íñigo Huguet) [2059994] - mt76: connac: remove MCU_FW_PREFIX bit (Íñigo Huguet) [2059994] - mt76: connac: align MCU_EXT definitions with 7915 driver (Íñigo Huguet) [2059994] - mt76: connac: introduce MCU_EXT macros (Íñigo Huguet) [2059994] - mt76: mt7615: in debugfs queue stats, skip wmm index 3 on mt7663 (Íñigo Huguet) [2059994] - mt76: mt7915: process txfree and txstatus without allocating skbs (Íñigo Huguet) [2059994] - mt76: allow drivers to drop rx packets early (Íñigo Huguet) [2059994] - mt76: mt7663: disable 4addr capability (Íñigo Huguet) [2059994] - mt76: only access ieee80211_hdr after mt76_insert_ccmp_hdr (Íñigo Huguet) [2059994] - mt76: move sar_capa configuration in common code (Íñigo Huguet) [2059994] - mt76: mt7921s: fix possible kernel crash due to invalid Rx count (Íñigo Huguet) [2059994] - mt76: mt7921s: fix bus hang with wrong privilege (Íñigo Huguet) [2059994] - mt76: eeprom: tolerate corrected bit-flips (Íñigo Huguet) [2059994] - mt76: mt7603: improve reliability of tx powersave filtering (Íñigo Huguet) [2059994] - mt76: clear sta powersave flag after notifying driver (Íñigo Huguet) [2059994] - mt76: mt7915: introduce SAR support (Íñigo Huguet) [2059994] - mt76: mt7603: introduce SAR support (Íñigo Huguet) [2059994] - mt76: mt7915: improve wmm index allocation (Íñigo Huguet) [2059994] - mt76: mt7615: improve wmm index allocation (Íñigo Huguet) [2059994] - mt76: mt7921s: fix the device cannot sleep deeply in suspend (Íñigo Huguet) [2059994] - mt76: mt7615: fix decap offload corner case with 4-addr VLAN frames (Íñigo Huguet) [2059994] - mt76: mt7915: fix decap offload corner case with 4-addr VLAN frames (Íñigo Huguet) [2059994] - mt76: mt76x02: introduce SAR support (Íñigo Huguet) [2059994] - mt76: move sar utilities to mt76-core module (Íñigo Huguet) [2059994] - mt76: mt7921: honor mt76_connac_mcu_set_rate_txpower return value in mt7921_config (Íñigo Huguet) [2059994] - mt76: do not pass the received frame with decryption error (Íñigo Huguet) [2059994] - mt76: connac: remove PHY_MODE_AX_6G configuration in mt76_connac_get_phy_mode (Íñigo Huguet) [2059994] - mt76: mt7615: remove dead code in get_omac_idx (Íñigo Huguet) [2059994] - mt76: mt7921: introduce 160 MHz channel bandwidth support (Íñigo Huguet) [2059994] - mt76: mt7921: add support for PCIe ID 0x0608/0x0616 (Íñigo Huguet) [2059994] - mt76: testmode: add support to set MAC (Íñigo Huguet) [2059994] - mt76: mt7915: add default calibrated data support (Íñigo Huguet) [2059994] - mt76: only set rx radiotap flag from within decoder functions (Íñigo Huguet) [2059994] - mt76: reverse the first fragmented frame to 802.11 (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Introduce Sierra EM919X support (Íñigo Huguet) [2059994] - bus: mhi: core: Add an API for auto queueing buffers for DL channel (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Simplify code and axe the use of a deprecated API (Íñigo Huguet) [2059994] - bus: mhi: core: Use macros for execution environment features (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add new device ID support for T99W175 (Íñigo Huguet) [2059994] - ath11k: Use reserved host DDR addresses from DT for PCI devices (Íñigo Huguet) [2059994] - ath11k: Change qcn9074 fw to operate in mode-2 (Íñigo Huguet) [2059994] - ath11k: add ab to TARGET_NUM_VDEVS & co (Íñigo Huguet) [2059994] - brcmfmac: Fix incorrect type assignments for keep-alive (Íñigo Huguet) [2059994] - ath11k: Avoid false DEADLOCK warning reported by lockdep (Íñigo Huguet) [2059994] - ath11k: set DTIM policy to stick mode for station interface (Íñigo Huguet) [2059994] - ath11k: support MAC address randomization in scan (Íñigo Huguet) [2059994] - ath10k: wmi: remove array of flexible structures (Íñigo Huguet) [2059994] - ath10k: htt: remove array of flexible structures (Íñigo Huguet) [2059994] - ath10k: drop beacon and probe response which leak from other channel (Íñigo Huguet) [2059994] - ath11k: Process full monitor mode rx support (Íñigo Huguet) [2059994] - ath11k: add software monitor ring descriptor for full monitor (Íñigo Huguet) [2059994] - ath11k: Add htt cmd to enable full monitor mode (Íñigo Huguet) [2059994] - ath11k: enable IEEE80211_HW_SINGLE_SCAN_ON_ALL_BANDS for WCN6855 (Íñigo Huguet) [2059994] - rtw88: refine tx_pwr_tbl debugfs to show channel and bandwidth (Íñigo Huguet) [2059994] - rtw88: add debugfs to fix tx rate (Íñigo Huguet) [2059994] - ath: regdom: extend South Korea regulatory domain support (Íñigo Huguet) [2059994] - ath11k: add wait operation for tx management packets for flush from mac80211 (Íñigo Huguet) [2059994] - ath11k: add 11d scan offload support (Íñigo Huguet) [2059994] - ath11k: add configure country code for QCA6390 and WCN6855 (Íñigo Huguet) [2059994] - ath11k: avoid deadlock by change ieee80211_queue_work for regd_update_work (Íñigo Huguet) [2059994] - iwlwifi: work around reverse dependency on MEI (Íñigo Huguet) [2059994] - iwlwifi: mvm: optionally suppress assert log (Íñigo Huguet) [2059994] - iwlwifi: fw: correctly detect HW-SMEM region subtype (Íñigo Huguet) [2059994] - iwlwifi: implement reset flow for Bz devices (Íñigo Huguet) [2059994] - iwlwifi: dbg: disable ini debug in 8000 family and below (Íñigo Huguet) [2059994] - iwlwifi: support SAR GEO Offset Mapping override via BIOS (Íñigo Huguet) [2059994] - iwlwifi: pcie: retake ownership after reset (Íñigo Huguet) [2059994] - iwlwifi: mvm: always use 4K RB size by default (Íñigo Huguet) [2059994] - iwlwifi: mvm/api: define system control command (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 68 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: add some missing command strings (Íñigo Huguet) [2059994] - iwlwifi: fw: add support for splitting region type bits (Íñigo Huguet) [2059994] - iwlwifi: swap 1650i and 1650s killer struct names (Íñigo Huguet) [2059994] - iwlwifi: yoyo: support for DBGC4 for dram (Íñigo Huguet) [2059994] - iwlwifi: mvm: update rate scale in moving back to assoc state (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for statistics update version 15 (Íñigo Huguet) [2059994] - iwlwifi: mvm: Add support for a new version of scan request command (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove session protection upon station removal (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for PHY context command v4 (Íñigo Huguet) [2059994] - iwlwifi: fw: api: add link to PHY context command struct v1 (Íñigo Huguet) [2059994] - iwlwifi: mvm: support RLC configuration command (Íñigo Huguet) [2059994] - iwlwifi: mvm: d3: support v12 wowlan status (Íñigo Huguet) [2059994] - iwlwifi: mvm: parse firmware alive message version 6 (Íñigo Huguet) [2059994] - iwlwifi: pcie: support Bz suspend/resume trigger (Íñigo Huguet) [2059994] - iwlwifi: mvm: d3: move GTK rekeys condition (Íñigo Huguet) [2059994] - ath11k: change to use dynamic memory for channel list of scan (Íñigo Huguet) [2059994] - ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [2059994] - ath9k: switch to rate table based lookup (Íñigo Huguet) [2059994] - iwlwifi: mvm: demote non-compliant kernel-doc header (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix a possible NULL pointer deference (Íñigo Huguet) [2059994] - iwlwifi: mei: Fix spelling mistake "req_ownserhip" -> "req_ownership" (Íñigo Huguet) [2059994] - iwlwifi: mei: don't rely on the size from the shared area (Íñigo Huguet) [2059994] - iwlwifi: mei: fix linking when tracing is not enabled (Íñigo Huguet) [2059994] - ath11k: Avoid NULL ptr access during mgmt tx cleanup (Íñigo Huguet) [2059994] - rtlwifi: rtl8192de: Style clean-ups (Íñigo Huguet) [2059994] - brcmfmac: Configure keep-alive packet on suspend (Íñigo Huguet) [2059994] - ieee80211: change HE nominal packet padding value defines (Íñigo Huguet) [2059994] - cfg80211: use ieee80211_bss_get_elem() instead of _get_ie() (Íñigo Huguet) [2059994] - iwlwifi: mvm: read the rfkill state and feed it to iwlmei (Íñigo Huguet) [2059994] - iwlwifi: mvm: add vendor commands needed for iwlmei (Íñigo Huguet) [2059994] - iwlwifi: integrate with iwlmei (Íñigo Huguet) [2059994] - iwlwifi: mei: add debugfs hooks (Íñigo Huguet) [2059994] - iwlwifi: mei: add the driver to allow cooperation with CSME (Íñigo Huguet) [2059994] - mwifiex: Ensure the version string from the firmware is 0-terminated (Íñigo Huguet) [2059994] - mwifiex: Add quirk to disable deep sleep with certain hardware revision (Íñigo Huguet) [2059994] - mwifiex: Use a define for firmware version string length (Íñigo Huguet) [2059994] - rtw88: add debugfs to force lowest basic rate (Íñigo Huguet) [2059994] - rtw88: follow the AP basic rates for tx mgmt frame (Íñigo Huguet) [2059994] - mac80211: Use memset_after() to clear tx status (Íñigo Huguet) [2059994] - mac80211: notify non-transmitting BSS of color changes (Íñigo Huguet) [2059994] - mac80211: minstrel_ht: remove unused SAMPLE_SWITCH_THR define (Íñigo Huguet) [2059994] - cfg80211: allow continuous radar monitoring on offchannel chain (Íñigo Huguet) [2059994] - cfg80211: schedule offchan_cac_abort_wk in cfg80211_radar_event (Íñigo Huguet) [2059994] - cfg80211: delete redundant free code (Íñigo Huguet) [2059994] - mac80211: Remove unused assignment statements (Íñigo Huguet) [2059994] - cfg80211: fix possible NULL pointer dereference in cfg80211_stop_offchan_radar_detection (Íñigo Huguet) [2059994] - ath11k: Use memset_startat() for clearing queue descriptors (Íñigo Huguet) [2059994] - ath11k: Fix spelling mistake "detetction" -> "detection" (Íñigo Huguet) [2059994] - Revert "ath11k: add read variant from SMBIOS for download board data" (Íñigo Huguet) [2059994] - ath11k: add read variant from SMBIOS for download board data (Íñigo Huguet) [2059994] - ath11k: calculate the correct NSS of peer for HE capabilities (Íñigo Huguet) [2059994] - ath11k: change to treat alpha code na as world wide regdomain (Íñigo Huguet) [2059994] - cfg80211: move offchan_cac_event to a dedicated work (Íñigo Huguet) [2059994] - mac80211_hwsim: Fix spelling mistake "Droping" -> "Dropping" (Íñigo Huguet) [2059994] - mac80211: introduce set_radar_offchan callback (Íñigo Huguet) [2059994] - cfg80211: implement APIs for dedicated radar detection HW (Íñigo Huguet) [2059994] - ath11k: add support for BSS color change (Íñigo Huguet) [2059994] - ath11k: add trace log support (Íñigo Huguet) [2059994] - ath11k: Add missing qmi_txn_cancel() (Íñigo Huguet) [2059994] - ath11k: Disabling credit flow for WMI path (Íñigo Huguet) [2059994] - ath11k: Increment pending_mgmt_tx count before tx send invoke (Íñigo Huguet) [2059994] - ath11k: send proper txpower and maxregpower values to firmware (Íñigo Huguet) [2059994] - ath11k: move peer delete after vdev stop of station for QCA6390 and WCN6855 (Íñigo Huguet) [2059994] - ath11k: remove return for empty tx bitrate in mac_op_sta_statistics (Íñigo Huguet) [2059994] - ath11k: enable IEEE80211_VHT_EXT_NSS_BW_CAPABLE if NSS ratio enabled (Íñigo Huguet) [2059994] - ath11k: avoid unnecessary lock contention in tx_completion path (Íñigo Huguet) [2059994] - ath11k: add branch predictors in dp_tx path (Íñigo Huguet) [2059994] - ath11k: avoid while loop in ring selection of tx completion interrupt (Íñigo Huguet) [2059994] - ath11k: remove mod operator in dst ring processing (Íñigo Huguet) [2059994] - ath11k: allocate HAL_WBM2SW_RELEASE ring from cacheable memory (Íñigo Huguet) [2059994] - ath11k: add branch predictors in process_rx (Íñigo Huguet) [2059994] - ath11k: remove usage quota while processing rx packets (Íñigo Huguet) [2059994] - ath11k: avoid active pdev check for each msdu (Íñigo Huguet) [2059994] - ath11k: avoid additional access to ath11k_hal_srng_dst_num_free (Íñigo Huguet) [2059994] - ath11k: modify dp_rx desc access wrapper calls inline (Íñigo Huguet) [2059994] - ath11k: allocate dst ring descriptors from cacheable memory (Íñigo Huguet) [2059994] - ath11k: disable unused CE8 interrupts for ipq8074 (Íñigo Huguet) [2059994] - ath11k: avoid unnecessary BH disable lock in STA kickout event (Íñigo Huguet) [2059994] - ath11k: enable 802.11 power save mode in station mode (Íñigo Huguet) [2059994] - ath11k: convert ath11k_wmi_pdev_set_ps_mode() to use enum wmi_sta_ps_mode (Íñigo Huguet) [2059994] - ath9k: use swap() to make code cleaner (Íñigo Huguet) [2059994] - ath10k: fetch (pre-)calibration data via nvmem subsystem (Íñigo Huguet) [2059994] - Revert "ath11k: add support for WCN6855 hw2.1" (Íñigo Huguet) [2059994] - iommu/vt-d: Make DMAR_UNITS_SUPPORTED a config setting (Jerry Snitselaar) [2095498] - scsi: mpi3mr: Fix kernel-doc (Tomas Henzl) [2091878] - scsi: mpi3mr: Rework mrioc->bsg_device model to fix warnings (Tomas Henzl) [2091878] - scsi: mpi3mr: Add target device related sysfs attributes (Tomas Henzl) [2091878] - scsi: mpi3mr: Add shost related sysfs attributes (Tomas Henzl) [2091878] - scsi: mpi3mr: Return error if dma_alloc_coherent() fails (Tomas Henzl) [2091878] - scsi: mpi3mr: Fix a NULL vs IS_ERR() bug in mpi3mr_bsg_init() (Tomas Henzl) [2091878] - scsi: mpi3mr: Return I/Os to an unrecoverable HBA with DID_ERROR (Tomas Henzl) [2091878] - scsi: mpi3mr: Hidden drives not removed during soft reset (Tomas Henzl) [2091878] - scsi: mpi3mr: Increase I/O timeout value to 60s (Tomas Henzl) [2091878] - scsi: mpi3mr: Update driver version to 8.0.0.69.0 (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for NVMe passthrough (Tomas Henzl) [2091878] - scsi: mpi3mr: Expose adapter state to sysfs (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for PEL commands (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for MPT commands (Tomas Henzl) [2091878] - scsi: mpi3mr: Move data structures/definitions from MPI headers to uapi header (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for driver commands (Tomas Henzl) [2091878] - scsi: mpi3mr: Add bsg device support (Tomas Henzl) [2091878] - selftests/powerpc: Add PPC_FEATURE2_ARCH_3_1 and PPC_FEATURE2_EBB bits (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc: Add helper to exit on failure (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add interface test for mmcra register fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr3_src fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr2_fcs_fch fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr2_l2l3 field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr1_comb field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_pmc56 using pmc5 (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_fc56 field using pmc1 (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_pmcjce field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_pmccext bit (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_cc56run field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0 exception bits (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macro to extract mmcr3 and mmcra fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macro to extract mmcr0/mmcr1 fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macros to extract mmcr fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add event_init_sampling function (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add utility functions to post process the mmap buffer (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macros to parse event codes (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add support for perf sampling tests (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc: Add a test of counting larx/stcx (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Include mmap_buffer field as part of struct event (Desnes A. Nunes do Rosario) [2071113] - [s390] net/smc: Fix af_ops of child socket pointing to released memory (Tobias Huschle) [2043832] - [s390] net/smc: Fix NULL pointer dereference in smc_pnet_find_ib() (Tobias Huschle) [2043832] - [s390] net/smc: use memcpy instead of snprintf to avoid out of bounds read (Tobias Huschle) [2043832] - [s390] net/smc: Call trace_smc_tx_sendmsg when data corked (Tobias Huschle) [2043832] - [s390] net/smc: Fix cleanup when register ULP fails (Tobias Huschle) [2043832] - [s390] net/smc: fix connection leak (Tobias Huschle) [2043832] - [s390] net/smc: Use a mutex for locking "struct smc_pnettable" (Tobias Huschle) [2043832] - [s390] net/smc: unlock on error paths in __smc_setsockopt() (Tobias Huschle) [2043832] - [s390] net/smc: return ETIMEDOUT when smc_connect_clc() timeout (Tobias Huschle) [2043832] - [s390] net/smc: Add comment for smc_tx_pending (Tobias Huschle) [2043832] - [s390] net/smc: Add global configure for handshake limitation by netlink (Tobias Huschle) [2043832] - [s390] net/smc: Dynamic control handshake limitation by socket options (Tobias Huschle) [2043832] - [s390] net/smc: Limit SMC visits when handshake workqueue congested (Tobias Huschle) [2043832] - [s390] net/smc: Limit backlog connections (Tobias Huschle) [2043832] - [s390] net/smc: Make smc_tcp_listen_work() independent (Tobias Huschle) [2043832] - [s390] net/smc: Avoid overwriting the copies of clcsock callback functions (Tobias Huschle) [2043832] - [s390] Partially revert "net/smc: Add netlink net namespace support" (Tobias Huschle) [2043832] - [s390] net/smc: Cork when sendpage with MSG_SENDPAGE_NOTLAST flag (Tobias Huschle) [2043832] - [s390] net/smc: Remove corked dealyed work (Tobias Huschle) [2043832] - [s390] net/smc: Send directly when TCP_CORK is cleared (Tobias Huschle) [2043832] - [s390] net/smc: Forward wakeup to smc socket waitqueue after fallback (Tobias Huschle) [2043832] - [s390] net/smc: Transitional solution for clcsock race issue (Tobias Huschle) [2043832] - [s390] net/smc: Fix hung_task when removing SMC-R devices (Tobias Huschle) [2043832] - [s390] net/smc: Remove unused function declaration (Tobias Huschle) [2043832] - [s390] net/smc: Resolve the race between SMC-R link access and clear (Tobias Huschle) [2043832] - [s390] net/smc: Introduce a new conn->lgr validity check helper (Tobias Huschle) [2043832] - [s390] net/smc: Resolve the race between link group access and termination (Tobias Huschle) [2043832] - [s390] net/smc: Reset conn->lgr when link group registration fails (Tobias Huschle) [2043832] - [s390] net/smc: add comments for smc_link_{usable|sendable} (Tobias Huschle) [2043832] - [s390] net/smc: remove redundant re-assignment of pointer link (Tobias Huschle) [2043832] - [s390] net/smc: Introduce TCP ULP support (Tobias Huschle) [2043832] - [s390] net/smc: Add net namespace for tracepoints (Tobias Huschle) [2043832] - [s390] net/smc: Print net namespace in log (Tobias Huschle) [2043832] - [s390] net/smc: Add netlink net namespace support (Tobias Huschle) [2043832] - [s390] net/smc: Introduce net namespace support for linkgroup (Tobias Huschle) [2043832] - [s390] net/smc: Use the bitmap API when applicable (Tobias Huschle) [2043832] - [s390] net/smc: fix kernel panic caused by race of smc_sock (Tobias Huschle) [2043832] - [s390] net/smc: don't send CDC/LLC message if link not ready (Tobias Huschle) [2043832] - [s390] net/smc: fix using of uninitialized completions (Tobias Huschle) [2043832] - [s390] net/smc: Prevent smc_release() from long blocking (Tobias Huschle) [2043832] - [s390] net/smc: Clear memory when release and reuse buffer (Tobias Huschle) [2043832] - [s390] net/smc: Keep smc_close_final rc during active close (Tobias Huschle) [2043832] - [s390] net/smc: fix wrong list_del in smc_lgr_cleanup_early (Tobias Huschle) [2043832] - [s390] net/smc: Don't call clcsock shutdown twice when smc shutdown (Tobias Huschle) [2043832] - [s390] net/smc: Fix loop in smc_listen (Tobias Huschle) [2043832] - [s390] net/smc: Fix NULL pointer dereferencing in smc_vlan_by_tcpsk() (Tobias Huschle) [2043832] - [s390] net/smc: Ensure the active closing peer first closes clcsock (Tobias Huschle) [2043832] - [s390] net/smc: Clean up local struct sock variables (Tobias Huschle) [2043832] - [s390] net/smc: Avoid warning of possible recursive locking (Tobias Huschle) [2043832] - [s390] net/smc: Make sure the link_id is unique (Tobias Huschle) [2043832] - [s390] net/smc: Transfer remaining wait queue entries during fallback (Tobias Huschle) [2043832] - [s390] net/smc: fix sk_refcnt underflow on linkdown and fallback (Tobias Huschle) [2043832] - [s390] net/smc: Print function name in smcr_link_down tracepoint (Tobias Huschle) [2043832] - [s390] net/smc: Introduce tracepoint for smcr link down (Tobias Huschle) [2043832] - [s390] net/smc: Introduce tracepoints for tx and rx msg (Tobias Huschle) [2043832] - [s390] net/smc: Introduce tracepoint for fallback (Tobias Huschle) [2043832] - [s390] net/smc: Correct spelling mistake to TCPF_SYN_RECV (Tobias Huschle) [2043832] - [s390] net/smc: Fix smc_link->llc_testlink_time overflow (Tobias Huschle) [2043832] - [s390] net/smc: stop links when their GID is removed (Tobias Huschle) [2043832] - [s390] net/smc: add netlink support for SMC-Rv2 (Tobias Huschle) [2043832] - [s390] net/smc: extend LLC layer for SMC-Rv2 (Tobias Huschle) [2043832] - [s390] net/smc: add v2 support to the work request layer (Tobias Huschle) [2043832] - [s390] net/smc: retrieve v2 gid from IB device (Tobias Huschle) [2043832] - [s390] net/smc: add v2 format of CLC decline message (Tobias Huschle) [2043832] - [s390] net/smc: add listen processing for SMC-Rv2 (Tobias Huschle) [2043832] - [s390] net/smc: add SMC-Rv2 connection establishment (Tobias Huschle) [2043832] - [s390] net/smc: prepare for SMC-Rv2 connection (Tobias Huschle) [2043832] - [s390] net/smc: save stack space and allocate smc_init_info (Tobias Huschle) [2043832] - [s390] net/smc: add generic netlink support for system EID (Tobias Huschle) [2043832] - [s390] net/smc: keep static copy of system EID (Tobias Huschle) [2043832] - [s390] net/smc: add support for user defined EIDs (Tobias Huschle) [2043832] - [s390] net/smc: Allow SMC-D 1MB DMB allocations (Tobias Huschle) [2043832] - [s390] net/smc: no need to flush smcd_dev's event_wq before destroying it (Tobias Huschle) [2043832] - [s390] net/smc: avoid possible duplicate dmb unregistration (Tobias Huschle) [2043832] - [s390] net/smc: remove device from smcd_dev_list after failed device_add() (Tobias Huschle) [2043832]- bnxt_en: parse and report result field when NVRAM package install fails (Ken Cox) [2043782] - bnxt_en: Fix unnecessary dropping of RX packets (Ken Cox) [2043782] - bnxt_en: Initiallize bp->ptp_lock first before using it (Ken Cox) [2043782] - bnxt_en: Fix possible bnxt_open() failure caused by wrong RFS flag (Ken Cox) [2043782] - bnxt_en: Prevent XDP redirect from running when stopping TX queue (Ken Cox) [2043782 1944997] - bnxt_en: reserve space inside receive page for skb_shared_info (Ken Cox) [2043782 1944997] - bnxt_en: Synchronize tx when xdp redirects happen on same ring (Ken Cox) [2043782 1944997] - net: bnxt_ptp: fix compilation error (Ken Cox) [2043782] - bnxt: revert hastily merged uAPI aberrations (Ken Cox) [2043782] - bnxt_en: add an nvm test for hw diagnose (Ken Cox) [2043782] - bnxt_en: implement hw health reporter (Ken Cox) [2043782] - bnxt_en: Do not destroy health reporters during reset (Ken Cox) [2043782] - bnxt_en: Eliminate unintended link toggle during FW reset (Ken Cox) [2043782] - bnxt_en: Properly report no pause support on some cards (Ken Cox) [2043782] - bnxt_en: introduce initial link state of unknown (Ken Cox) [2043782] - bnxt_en: parse result field when NVRAM package install fails (Ken Cox) [2043782] - bnxt_en: add more error checks to HWRM_NVM_INSTALL_UPDATE (Ken Cox) [2043782] - bnxt_en: refactor error handling of HWRM_NVM_INSTALL_UPDATE (Ken Cox) [2043782] - bnxt_en: Increase firmware message response DMA wait time (Ken Cox) [2043782] - bnxt_en: Fix incorrect multicast rx mask setting when not requested (Ken Cox) [2043782] - bnxt_en: Fix occasional ethtool -t loopback test failures (Ken Cox) [2043782] - bnxt_en: Fix offline ethtool selftest with RDMA enabled (Ken Cox) [2043782] - bnxt_en: Fix active FEC reporting to ethtool (Ken Cox) [2043782] - bnxt_en: Fix devlink fw_activate (Ken Cox) [2043782] - bnxt_en: Restore the resets_reliable flag in bnxt_open() (Ken Cox) [2043782] - bnxt_en: Handle async event when the PHC is updated in RTC mode (Ken Cox) [2043782] - bnxt_en: Implement .adjtime() for PTP RTC mode (Ken Cox) [2043782] - bnxt_en: Add driver support to use Real Time Counter for PTP (Ken Cox) [2043782] - bnxt_en: PTP: Refactor PTP initialization functions (Ken Cox) [2043782] - bnxt_en: Update firmware interface to 1.10.2.73 (Ken Cox) [2043782] - bnxt_en: improve firmware timeout messaging (Ken Cox) [2043782] - bnxt_en: use firmware provided max timeout for messages (Ken Cox) [2043782] - bnxt_en: improve VF error messages when PF is unavailable (Ken Cox) [2043782] - bnxt_en: add dynamic debug support for HWRM messages (Ken Cox) [2043782] - bnxt_en: Use page frag RX buffers for better software GRO performance (Ken Cox) [2043782] - bnxt_en: convert to xdp_do_flush (Ken Cox) [2043782] - bnxt_en: Support CQE coalescing mode in ethtool (Ken Cox) [2043782] - bnxt_en: Support configurable CQE coalescing mode (Ken Cox) [2043782] - bnxt_en: enable interrupt sampling on 5750X for DIM (Ken Cox) [2043782] - bnxt_en: Log error report for dropped doorbell (Ken Cox) [2043782] - bnxt_en: Add event handler for PAUSE Storm event (Ken Cox) [2043782] - flow_offload: reject to offload tc actions in offload drivers (Ken Cox) [2043782] - bnxt_en: Fix compile error regression when CONFIG_BNXT_SRIOV is not set (Ken Cox) [2043782] - bnxt_en: fix format specifier in live patch error message (Ken Cox) [2043782] - bnxt_en: extend RTNL to VF check in devlink driver_reinit (Ken Cox) [2043782] - bnxt_en: avoid newline at end of message in NL_SET_ERR_MSG_MOD (Ken Cox) [2043782] - bnxt_en: Remove not used other ULP define (Ken Cox) [2043782] - bnxt_en: Provide stored devlink "fw" version on older firmware (Ken Cox) [2043782] - bnxt_en: implement firmware live patching (Ken Cox) [2043782] - bnxt_en: Update firmware interface to 1.10.2.63 (Ken Cox) [2043782] - bnxt_en: implement dump callback for fw health reporter (Ken Cox) [2043782] - bnxt_en: extract coredump command line from current task (Ken Cox) [2043782] - bnxt_en: Retrieve coredump and crashdump size via FW command (Ken Cox) [2043782] - bnxt_en: Add compression flags information in coredump segment header (Ken Cox) [2043782] - bnxt_en: move coredump functions into dedicated file (Ken Cox) [2043782] - bnxt_en: Refactor coredump functions (Ken Cox) [2043782] - bnxt_en: improve fw diagnose devlink health messages (Ken Cox) [2043782] - bnxt_en: consolidate fw devlink health reporters (Ken Cox) [2043782] - bnxt_en: remove fw_reset devlink health reporter (Ken Cox) [2043782] - bnxt_en: improve error recovery information messages (Ken Cox) [2043782] - bnxt_en: add enable_remote_dev_reset devlink parameter (Ken Cox) [2043782] - bnxt_en: implement devlink dev reload fw_activate (Ken Cox) [2043782] - bnxt_en: implement devlink dev reload driver_reinit (Ken Cox) [2043782] - bnxt_en: refactor cancellation of resource reservations (Ken Cox) [2043782] - bnxt_en: refactor printing of device info (Ken Cox) [2043782] - bnxt: use netif_is_rxfh_configured instead of open code (Ken Cox) [2043782] - ethernet: use eth_hw_addr_set() (Ken Cox) [2043782] - bnxt_en: Fix TX timeout when TX ring size is set to the smallest (Ken Cox) [2043782] - net/{mlx5|nfp|bnxt}: Remove unnecessary RTNL lock assert (Ken Cox) [2043782] - bnxt_en: make bnxt_free_skbs() safe to call after bnxt_free_mem() (Ken Cox) [2043782] - netfilter: nat: really support inet nat without l3 address (Phil Sutter) [2092424] - netfilter: nf_tables: use kfree_rcu(ptr, rcu) to release hooks in clean_net path (Phil Sutter) [2094236] - netfilter: nf_tables: double hook unregistration in netns path (Phil Sutter) [2094236] - video: fbdev: hyperv_fb: Allow resolutions with size > 64 MB for Gen1 (Mohammed Gamal) [1948442] - cpufreq: intel_pstate: Use firmware default EPP (Steve Best) [2072671] - cpufreq: intel_pstate: Update cpuinfo.max_freq on HWP_CAP changes (Steve Best) [2072671] - cpufreq: intel_pstate: Update EPP for AlderLake mobile (Steve Best) [2072671] - cpufreq: intel_pstate: Drop redundant intel_pstate_get_hwp_cap() call (Steve Best) [2072671] - cpufreq: intel_pstate: ITMT support for overclocked system (Steve Best) [2072671] - cpufreq: intel_pstate: Fix active mode offline/online EPP handling (Steve Best) [2072671] - cpufreq: intel_pstate: Clear HWP Status during HWP Interrupt enable (Steve Best) [2072671] - cpufreq: intel_pstate: Fix unchecked MSR 0x773 access (Steve Best) [2072671] - cpufreq: intel_pstate: Clear HWP desired on suspend/shutdown and offline (Steve Best) [2072671] - cpufreq: intel_pstate: Process HWP Guaranteed change notification (Steve Best) [2072671] - cpufreq: intel_pstate: Override parameters if HWP forced by BIOS (Steve Best) [2072671] - Revert "cpufreq: intel_pstate: Process HWP Guaranteed change notification" (Steve Best) [2072671] - cpufreq: intel_pstate: Process HWP Guaranteed change notification (Steve Best) [2072671] - cpuidle: intel_idle: Drop redundant backslash at line end (Steve Best) [2072893] - intel_idle: add core C6 optimization for SPR (Steve Best) [2072893] - intel_idle: add 'preferred_cstates' module argument (Steve Best) [2072893] - intel_idle: add SPR support (Steve Best) [2072893] - intel_idle: enable interrupts before C1 on Xeons (Steve Best) [2072893]- [s390] s390/airq: use DMA memory for summary indicators (Tobias Huschle) [2043905] - [s390] s390/zcrypt: Provide target domain for EP11 cprbs to scheduling function (Tobias Huschle) [2043905] - [s390] s390/zcrypt: change reply buffer size offering (Tobias Huschle) [2043905] - [s390] s390/zcrypt: Support CPRB minor version T7 (Tobias Huschle) [2043905] - [s390] s390/zcrypt: handle checkstopped cards with new state (Tobias Huschle) [2043905] - [s390] s390/zcrypt: CEX8S exploitation support (Tobias Huschle) [2043905] - [s390] s390/ap/zcrypt: debug feature improvements (Tobias Huschle) [2043905] - [s390] s390/zcrypt: rework of debug feature messages (Tobias Huschle) [2043905] - powerpc/perf: Fix the threshold compare group constraint for power10 (Steve Best) [2090058] - arch/x86: Disable system wide bus lock rate limiting (Prarit Bhargava) [2028252] - rtnetlink: return ENODEV when IFLA_ALT_IFNAME is used in dellink (Xin Long) [2062780] - rtnetlink: enable alt_ifname for setlink/newlink (Xin Long) [2062780] - rtnetlink: return ENODEV when ifname does not exist and group is given (Xin Long) [2062780] - rtnetlink: Return correct error on changing device netns (Xin Long) [2062780] - net: remove the new_ifindex argument from dev_change_net_namespace (Xin Long) [2062780] - net: Allow to specify ifindex when device is moved to another namespace (Xin Long) [2062780] - net: rtnetlink: add possibility to use alternative names as message handle (Xin Long) [2062780] - net: rtnetlink: introduce helper to get net_device instance by ifname (Xin Long) [2062780] - net: rtnetlink: unify the code in __rtnl_newlink get dev with the rest (Xin Long) [2062780] - net: rtnetlink: put alternative names to getlink message (Xin Long) [2062780] - block-map: add __GFP_ZERO flag for alloc_page in function bio_copy_kern (Ewan D. Milne) [2049198] {CVE-2022-0494} - [s390] s390/dasd: prevent double format of tracks for ESE devices (Mete Durlu) [2094296] - [s390] s390/dasd: fix data corruption for ESE devices (Mete Durlu) [2094296] - [s390] s390/dasd: Fix read inconsistency for ESE DASD devices (Mete Durlu) [2094294] - [s390] s390/dasd: Fix read for ESE with blksize < 4k (Mete Durlu) [2094294] - xfs: validate inode fork size against fork format (Andrey Albershteyn) [2089447] - selftests/tc-testing: match any qdisc type (Petr Oros) [2021843] - tc-testing: Add control-plane selftests for sch_mq (Petr Oros) [2021843] - netdevsim: Zero-initialize memory for new map's value in function nsim_bpf_map_alloc (Petr Oros) [2021843] - netdevsim: don't overwrite read only ethtool parms (Petr Oros) [2021843] - netdevsim: fix uninit value in nsim_drv_configure_vfs() (Petr Oros) [2021843] - netdevsim: rename 'driver' entry points (Petr Oros) [2021843] - netdevsim: move max vf config to dev (Petr Oros) [2021843] - netdevsim: move details of vf config to dev (Petr Oros) [2021843] - netdevsim: move vfconfig to nsim_dev (Petr Oros) [2021843] - netdevsim: take rtnl_lock when assigning num_vfs (Petr Oros) [2021843] - netdevsim: Protect both reload_down and reload_up paths (Petr Oros) [2021843] - netdevsim: make array res_ids static const, makes object smaller (Petr Oros) [2021843] - netdevsim: Add multi-queue support (Petr Oros) [2021843] - net: netdevsim: use xso.real_dev instead of xso.dev in callback functions of struct xfrmdev_ops (Petr Oros) [2021843] - netdevsim: delete unnecessary debugfs checking (Petr Oros) [2021843] - netdevsim: switch to memdup_user_nul() (Petr Oros) [2021843] - netdevsim: init u64 stats for 32bit hardware (Petr Oros) [2021843] - dm: fix bio length of empty flush (Ming Lei) [2090940] - block: initialize the target bio in __bio_clone_fast (Ming Lei) [2090940] - dm: use bio_clone_fast in alloc_io/alloc_tio (Ming Lei) [2090940] - block: clone crypto and integrity data in __bio_clone_fast (Ming Lei) [2090940] - dm-cache: remove __remap_to_origin_clear_discard (Ming Lei) [2090940] - dm: simplify the single bio fast path in __send_duplicate_bios (Ming Lei) [2090940] - dm: retun the clone bio from alloc_tio (Ming Lei) [2090940] - dm: pass the bio instead of tio to __map_bio (Ming Lei) [2090940] - dm: move cloning the bio into alloc_tio (Ming Lei) [2090940] - dm: fold __send_duplicate_bios into __clone_and_map_simple_bio (Ming Lei) [2090940] - dm: fold clone_bio into __clone_and_map_data_bio (Ming Lei) [2090940] - dm: add a clone_to_tio helper (Ming Lei) [2090940] - block: make bio_crypt_clone() able to fail (Ming Lei) [2090940] - perf/x86/uncore: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86/uncore: Clean up uncore_pci_ids[] (Michael Petlan) [2088831] - perf/x86/uncore: Add Raptor Lake uncore support (Michael Petlan) [2088831] - perf/x86/cstate: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86/cstate: Add Raptor Lake support (Michael Petlan) [2088831] - perf/x86/msr: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86/msr: Add Raptor Lake CPU support (Michael Petlan) [2088831] - perf/x86: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86: Add Intel Raptor Lake support (Michael Petlan) [2088831] - x86/cpu: Add new Alderlake and Raptorlake CPU model numbers (Michael Petlan) [2088831] - x86/intel: Add common OPTDIFFs (Michael Petlan) [2088831] - x86/cpu: Explain Intel model naming convention (Michael Petlan) [2088831] - KVM: s390: vsie/gmap: reduce gmap_rmap overhead (Thomas Huth) [2072387] - KVM: s390x: fix SCK locking (Thomas Huth) [2072387] - s390/kvm: use union tod_clock (Thomas Huth) [2072387] - s390/time: introduce new store_tod_clock_ext() (Thomas Huth) [2072387] - s390/time: introduce union tod_clock (Thomas Huth) [2072387] - KVM: s390: Clarify SIGP orders versus STOP/RESTART (Thomas Huth) [2043868] - KVM: s390: Clear valid_wakeup in kvm_s390_handle_wait(), not in arch hook (Thomas Huth) [2072387] - KVM: s390: Ensure kvm_arch_no_poll() is read once when blocking vCPU (Thomas Huth) [2072387] - KVM: s390: Introduce kvm_s390_get_gfn_end() (Thomas Huth) [2072387] - KVM: Integrate gfn_to_memslot_approx() into search_memslots() (Thomas Huth) [2072387] - KVM: s390: Use kvm_get_vcpu() instead of open-coded access (Thomas Huth) [2072387] - KVM: s390: add debug statement for diag 318 CPNC data (Thomas Huth) [2072387] - KVM: s390: pv: properly handle page flags for protected guests (Thomas Huth) [2072387] - KVM: s390: Add a routine for setting userspace CPU state (Thomas Huth) [2072387] - net: sfc: ef10: fix memory leak in efx_ef10_mtd_probe() (Íñigo Huguet) [2042840] - net: sfc: fix memory leak due to ptp channel (Íñigo Huguet) [2042840] - net: sfc: fix using uninitialized xdp tx_queue (Íñigo Huguet) [2042840] - sfc: Do not free an empty page_ring (Íñigo Huguet) [2042840] - net: sfc: add missing xdp queue reinitialization (Íñigo Huguet) [2042840] - sfc: Avoid NULL pointer dereference on systems without numa awareness (Íñigo Huguet) [2042840] - sfc: extend the locking on mcdi->seqno (Íñigo Huguet) [2042840] - sfc: set affinity hints in local NUMA node only (Íñigo Huguet) [2042840] - sfc: default config to 1 channel/core in local NUMA node only (Íñigo Huguet) [2042840] - sfc: The size of the RX recycle ring should be more flexible (Íñigo Huguet) [2042840] - sfc: Use swap() instead of open coding it (Íñigo Huguet) [2042840] - ethernet/sfc: remove redundant rc variable (Íñigo Huguet) [2042840] - PCI/ACPI: Allow D3 only if Root Port can signal and wake from D3 (Myron Stowe) [2015785] - thunderbolt: Do not make DROM read success compulsory (Myron Stowe) [2015785] - thunderbolt: Do not resume routers if UID is not set (Myron Stowe) [2015785] - thunderbolt: Retry DROM reads for more failure scenarios (Myron Stowe) [2015785] - PCI/ACPI: Replace acpi_bus_get_device() with acpi_fetch_acpi_dev() (Myron Stowe) [2015785] - ACPI: scan: Introduce acpi_fetch_acpi_dev() (Myron Stowe) [2015785] - PCI: PM: Fix ordering of operations in pci_back_from_sleep() (Myron Stowe) [2015785] - PCI: PM: Do not call platform_pci_power_manageable() unnecessarily (Myron Stowe) [2015785] - PCI: PM: Make pci_choose_state() call pci_target_state() (Myron Stowe) [2015785] - PCI: PM: Rearrange pci_target_state() (Myron Stowe) [2015785] - PCI: PM: Simplify acpi_pci_power_manageable() (Myron Stowe) [2015785] - PCI: PM: Drop struct pci_platform_pm_ops (Myron Stowe) [2015785] - PCI: ACPI: PM: Do not use pci_platform_pm_ops for ACPI (Myron Stowe) [2015785] - PCI: PM: Do not use pci_platform_pm_ops for Intel MID PM (Myron Stowe) [2015785] - ACPI: glue: Look for ACPI bus type only if ACPI companion is not known (Myron Stowe) [2015785] - ACPI: glue: Drop cleanup callback from struct acpi_bus_type (Myron Stowe) [2015785] - PCI: ACPI: Drop acpi_pci_bus (Myron Stowe) [2015785] - PCI: ACPI: Check parent pointer in acpi_pci_find_companion() (Myron Stowe) [2015785] - PCI/ACPI: Don't reset a fwnode set by OF (Myron Stowe) [2015785] - PCI: VMD: ACPI: Make ACPI companion lookup work for VMD bus (Myron Stowe) [2015785] - PCI: Change the type of probe argument in reset functions (Myron Stowe) [2015785] - PCI: Add support for ACPI _RST reset method (Myron Stowe) [2015785] - PCI: Setup ACPI fwnode early and at the same time with OF (Myron Stowe) [2015785] - PCI: Use acpi_pci_power_manageable() (Myron Stowe) [2015785] - PCI: Add pci_set_acpi_fwnode() to set ACPI_COMPANION (Myron Stowe) [2015785] - PCI: Allow userspace to query and set device reset mechanism (Myron Stowe) [2015785] - PCI: Remove reset_fn field from pci_dev (Myron Stowe) [2015785] - PCI: Add array to track reset method ordering (Myron Stowe) [2015785] - PCI: Add pcie_reset_flr() with 'probe' argument (Myron Stowe) [2015785] - PCI: Cache PCIe Device Capabilities register (Myron Stowe) [2015785] - driver core: Split device_platform_notify() (Myron Stowe) [2015785] - software nodes: Split software_node_notify() (Myron Stowe) [2015785] - PCI: PM: Enable PME if it can be signaled from D3cold (Myron Stowe) [2015785] - PCI: PM: Avoid forcing PCI_D0 for wakeup reasons inconsistently (Myron Stowe) [2015785] - PCI: Use pci_update_current_state() in pci_enable_device_flags() (Myron Stowe) [2015785] - PCI: Add pci_reset_bus_function() Secondary Bus Reset interface (Myron Stowe) [2015785] - ACPI: scan: Rearrange code related to acpi_get_device_data() (Myron Stowe) [2015785] - PCI/ACPI: Whitelist hotplug ports for D3 if power managed by ACPI (Myron Stowe) [2015785] - crypto: cavium/nitrox - use pcie_flr instead of duplicating it (Myron Stowe) [2015785] - NFSv4 only print the label when its queried (Scott Mayhew) [2030827] - NFSv4.1 provide mount option to toggle trunking discovery (Scott Mayhew) [2030827] - NFSv4.1 test and add 4.1 trunking transport (Scott Mayhew) [2030827] - SUNRPC allow for unspecified transport time in rpc_clnt_add_xprt (Scott Mayhew) [2030827] - NFSv4 handle port presence in fs_location server string (Scott Mayhew) [2030827] - NFSv4 expose nfs_parse_server_name function (Scott Mayhew) [2030827] - NFSv4.1 query for fs_location attr on a new file system (Scott Mayhew) [2030827] - NFSv4 store server support for fs_location attribute (Scott Mayhew) [2030827] - NFSv4 remove zero number of fs_locations entries error check (Scott Mayhew) [2030827] - NFSv4.1 add network transport when session trunking is detected (Scott Mayhew) [2030827] - SUNRPC enforce creation of no more than max_connect xprts (Scott Mayhew) [2030827] - NFSv4 introduce max_connect mount options (Scott Mayhew) [2030827] - SUNRPC add xps_nunique_destaddr_xprts to xprt_switch_info in sysfs (Scott Mayhew) [2030827] - SUNRPC keep track of number of transports to unique addresses (Scott Mayhew) [2030827] - powerpc/papr_scm: Make 'perf_stats' invisible if perf-stats unavailable (Diego Domingos) [1986188] - powerpc/papr_scm: Fix warnings about undeclared variable (Diego Domingos) [1986188] - VMCI: Add support for ARM64 (Cathy Avery) [2080095] - VMCI: Release notification_bitmap in error path (Cathy Avery) [2080095] - VMCI: Check exclusive_vectors when freeing interrupt 1 (Cathy Avery) [2080095] - VMCI: Fix some error handling paths in vmci_guest_probe_device() (Cathy Avery) [2080095] - VMCI: No need to clear memory after a dma_alloc_coherent() call (Cathy Avery) [2080095] - VMCI: Fix the description of vmci_check_host_caps() (Cathy Avery) [2080095] - VMCI: dma dg: add support for DMA datagrams receive (Cathy Avery) [2080095] - VMCI: dma dg: add support for DMA datagrams sends (Cathy Avery) [2080095] - VMCI: dma dg: allocate send and receive buffers for DMA datagrams (Cathy Avery) [2080095] - VMCI: dma dg: register dummy IRQ handlers for DMA datagrams (Cathy Avery) [2080095] - VMCI: dma dg: set OS page size (Cathy Avery) [2080095] - VMCI: dma dg: whitespace formatting change for vmci register defines (Cathy Avery) [2080095] - VMCI: dma dg: detect DMA datagram capability (Cathy Avery) [2080095] - VMCI: Use BIT() macro for bit definitions (Cathy Avery) [2080095] - VMCI: dma dg: add MMIO access to registers (Cathy Avery) [2080095] - misc: vmw_vmci: Switch to kvfree_rcu() API (Cathy Avery) [2080095] - VMCI: fix NULL pointer dereference when unmapping queue pair (Cathy Avery) [2080095] - misc: vmci: remove redundant variable is_local (Cathy Avery) [2080095] - misc: vmw_vmci: return the correct errno code (Cathy Avery) [2080095] - misc: vmw_vmci: explicitly initialize vmci_datagram payload (Cathy Avery) [2080095] - misc: vmw_vmci: explicitly initialize vmci_notify_bm_set_msg struct (Cathy Avery) [2080095] - vmci_host: print unexpanded names of ioctl requests in debug messages (Cathy Avery) [2080095] - drivers/misc/vmw_vmci: restrict too big queue size in qp_host_alloc_queue (Cathy Avery) [2080095] - VMCI: Enforce queuepair max size for IOCTL_VMCI_QUEUEPAIR_ALLOC (Cathy Avery) [2080095] - VMCI: Use set_page_dirty_lock() when unregistering guest memory (Cathy Avery) [2080095] - misc/vmw_vmci: fix typo (Cathy Avery) [2080095] - misc: vmw_vmci: fix kernel info-leak by initializing dbells in vmci_ctx_get_chkpt_doorbells() (Cathy Avery) [2080095] - VMCI: check return value of get_user_pages_fast() for errors (Cathy Avery) [2080095] - vmci_host: get rid of pointless access_ok() (Cathy Avery) [2080095] - treewide: Add SPDX license identifier - Makefile/Kconfig (Cathy Avery) [2080095] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 321 (Cathy Avery) [2080095] - VMCI: Use memdup_user() rather than duplicating its implementation (Cathy Avery) [2080095] - VMCI: remove set but not used variable 'cid' (Cathy Avery) [2080095] - vmci: type promotion bug in qp_host_get_user_memory() (Cathy Avery) [2080095]- misc: pvpanic: introduce device capability (Emanuele Giuseppe Esposito) [2088457] - misc: pvpanic: add crash loaded event (Emanuele Giuseppe Esposito) [2088457] - misc: pvpanic: move bit definition to uapi header file (Emanuele Giuseppe Esposito) [2088457] - rfkill: make new event layout opt-in (Jose Ignacio Tornos Martinez) [2023175] - lib/sbitmap: fix sb->map leak (Ming Lei) [2093549] - openvswitch: fix OOB access in reserve_sfa_size() (Antoine Tenart) [2082023] - net: openvswitch: don't send internal clone attribute to the userspace. (Antoine Tenart) [2082023 2085509] - openvswitch: Add recirc_id to recirc warning (Antoine Tenart) [2082023] - openvswitch: Fixed nd target mask field in the flow dump. (Antoine Tenart) [2082023] - net: openvswitch: Remove redundant if statements (Antoine Tenart) [2082023] - netfilter: nf_tables: disallow non-stateful expression in sets earlier (Phil Sutter) [2092987] {CVE-2022-1966} - cachefiles: Drop superfluous readpages aops NULL check (Dave Wysochanski) [2083136] - audit: fix AUDIT_DISABLED undeclared error when AUDITSYSCALL unconfigured (Richard Guy Briggs) [2035123] - audit: log AUDIT_TIME_* records only from rules (Richard Guy Briggs) [2035123] - audit: improve audit queue handling when "audit=1" on cmdline (Richard Guy Briggs) [2035123] - audit: replace zero-length array with flexible-array member (Richard Guy Briggs) [2035123] - audit: use struct_size() helper in audit_[send|make]_reply() (Richard Guy Briggs) [2035123] - audit: ensure userspace is penalized the same as the kernel when under pressure (Richard Guy Briggs) [2035123] - audit: use struct_size() helper in kmalloc() (Richard Guy Briggs) [2035123] - audit: improve robustness of the audit queue handling (Richard Guy Briggs) [2035123] - audit: return early if the filter rule has a lower priority (Richard Guy Briggs) [2035123] - lsm_audit: avoid overloading the "key" audit field (Richard Guy Briggs) [2035123] - audit: Convert to SPDX identifier (Richard Guy Briggs) [2035123] - audit: rename struct node to struct audit_node to prevent future name collisions (Richard Guy Briggs) [2035123] - audit: prepare audit_context for use in calling contexts beyond syscalls (Richard Guy Briggs) [2035123] - audit: fix possible null-pointer dereference in audit_filter_rules (Richard Guy Briggs) [2035123] - audit: add header protection to kernel/audit.h (Richard Guy Briggs) [2035123] - audit: remove unnecessary 'ret' initialization (Richard Guy Briggs) [2035123] - audit: remove trailing spaces and tabs (Richard Guy Briggs) [2035123] - audit: Use list_move instead of list_del/list_add (Richard Guy Briggs) [2035123] - audit: Rename enum audit_state constants to avoid AUDIT_DISABLED redefinition (Richard Guy Briggs) [2035123] - selftests/bpf: Fix btf_dump test under new clang (Yauheni Kaliuta) [2087050] - perf: Fix sys_perf_event_open() race against self (Michael Petlan) [2087949] - scsi: fnic: Finish scsi_cmnd before dropping the spinlock (John Meneghini) [2062905] - [s390] s390/setup: Fix secure ipl message (Mete Durlu) [2058619] - perf evlist: Fix failed to use cpu list for uncore events (Michael Petlan) [2088835] - perf tools: Enable on a list of CPUs for hybrid (Michael Petlan) [2088835] - perf tools: Create hybrid flag in target (Michael Petlan) [2088835] - libperf: Add perf_cpu_map__default_new() (Michael Petlan) [2088835] - drm/i915: Stop force enabling pipe bottom color gammma/csc (Foggy Liu) [2054487] - blk-mq: fix blk_mq_flush_plug_list (Ming Lei) [2088397] - kernel/resource: move and rename IORESOURCE_MEM_DRIVER_MANAGED (Nico Pache) [2028988] - powerpc/numa: Handle partially initialized numa nodes (Nico Pache) [2028988] - mm: make free_area_init_node aware of memory less nodes (Nico Pache) [2028988] - mm, memory_hotplug: reorganize new pgdat initialization (Nico Pache) [2028988] - mm, memory_hotplug: drop arch_free_nodedata (Nico Pache) [2028988] - mm: handle uninitialized numa nodes gracefully (Nico Pache) [2028988] - mm, memory_hotplug: make arch_alloc_nodedata independent on CONFIG_MEMORY_HOTPLUG (Nico Pache) [2028988] - kexec_file: don't place kexec images on IORESOURCE_MEM_DRIVER_MANAGED (Nico Pache) [2028988] - mm/memory_hotplug: handle memblock_add_node() failures in add_memory_resource() (Nico Pache) [2028988] - mm/memory_hotplug: introduce add_memory_driver_managed() (Nico Pache) [2028988] - mm/memory_hotplug: handle memblocks only with CONFIG_ARCH_KEEP_MEMBLOCK (Nico Pache) [2028988] - mm/memory_hotplug: set node_start_pfn of hotadded pgdat to 0 (Nico Pache) [2028988] - mm/hotplug: reorder memblock_[free|remove]() calls in try_remove_memory() (Nico Pache) [2028988] - mm: memblock: make keeping memblock memory opt-in rather than opt-out (Nico Pache) [2028988] - [s390] s390/cpumf: add new extended counter set for IBM z16 (Mete Durlu) [2047728]- [s390] s390/qdio: clarify logical vs absolute in QIB's kerneldoc (Mete Durlu) [2043836] - [s390] s390/qdio: remove unneeded sanity check in qdio_do_sqbs() (Mete Durlu) [2043836] - [s390] s390/qdio: split do_QDIO() (Mete Durlu) [2043836] - [s390] s390/qdio: split qdio_inspect_queue() (Mete Durlu) [2043836] - [s390] s390/qdio: clarify handler logic for qdio_handle_activate_check() (Mete Durlu) [2043836] - [s390] s390/qdio: clean up access to queue in qdio_handle_activate_check() (Mete Durlu) [2043836] - [s390] s390/qdio: avoid allocating the qdio_irq with GFP_DMA (Mete Durlu) [2043836] - [s390] s390/qdio: improve handling of CIWs (Mete Durlu) [2043836] - [s390] s390/qdio: remove QDIO_SBAL_SIZE macro (Mete Durlu) [2043836] - [s390] scsi: zfcp: fix kernel doc comments (Mete Durlu) [2043836] - [s390] s390/qdio: remove unused support for SLIB parameters (Mete Durlu) [2043836] - [s390] s390/qdio: consolidate QIB code (Mete Durlu) [2043836] - [s390] s390/qdio: use dev_info() in qdio_print_subchannel_info() (Mete Durlu) [2043836] - [s390] s390/qdio: fine-tune the queue sync (Mete Durlu) [2043836] - [s390] s390/qdio: clean up SIGA capability tracking (Mete Durlu) [2043836] - [s390] s390/qdio: remove unused sync-after-IRQ infrastructure (Mete Durlu) [2043836] - [s390] s390/qdio: use absolute data address in ESTABLISH ccw (Mete Durlu) [2043836] - [s390] s390/qdio: remove unused macros (Mete Durlu) [2043836] - [s390] s390/qdio: clarify reporting of errors to the drivers (Mete Durlu) [2043836] - [s390] s390/qdio: remove unneeded siga-sync for Output Queue (Mete Durlu) [2043836] - [s390] s390/qdio: remove remaining tasklet & timer code (Mete Durlu) [2043836] - ice: clear stale Tx queue settings before configuring (Petr Oros) [2079926] - ice: fix crash when writing timestamp on RX rings (Petr Oros) [2079926] - ice: Fix race during aux device (un)plugging (Petr Oros) [2079926] - ice: fix PTP stale Tx timestamps cleanup (Petr Oros) [2079926] - ice: ice_sched: fix an incorrect NULL check on list iterator (Petr Oros) [2079926] - ice: fix use-after-free when deinitializing mailbox snapshot (Petr Oros) [2079926] - ice: wait 5 s for EMP reset after firmware flash (Petr Oros) [2079926] - ice: Protect vf_state check by cfg_lock in ice_vc_process_vf_msg() (Petr Oros) [2079926] - ice: Fix incorrect locking in ice_vc_process_vf_msg() (Petr Oros) [2079926] - ice: Fix memory leak in ice_get_orom_civd_data() (Petr Oros) [2079926] - ice: fix crash in switchdev mode (Petr Oros) [2079926] - Revert "iavf: Fix deadlock occurrence during resetting VF interface" (Petr Oros) [2079926] - ice: arfs: fix use-after-free when freeing @rx_cpu_rmap (Petr Oros) [2079926] - ice: clear cmd_type_offset_bsz for TX rings (Petr Oros) [2079926] - ice: xsk: fix VSI state check in ice_xsk_wakeup() (Petr Oros) [2079926] - ice: synchronize_rcu() when terminating rings (Petr Oros) [2079926] - ice: Do not skip not enabled queues in ice_vc_dis_qs_msg (Petr Oros) [2079926] - ice: Set txq_teid to ICE_INVAL_TEID on ring creation (Petr Oros) [2079926] - ice: Fix broken IFF_ALLMULTI handling (Petr Oros) [2079926] - ice: Fix MAC address setting (Petr Oros) [2079926] - redhat/configs: Remove CONFIG_MFD_INTEL_PMT (Prarit Bhargava) [2058805] - redhat/configs: Add CONFIG_INTEL_VSEC (Prarit Bhargava) [2058805] - platform/x86/intel: Move intel_pmt from MFD to Auxiliary Bus (Prarit Bhargava) [2058805] - PCI: Add #defines for accessing PCIe DVSEC fields (Prarit Bhargava) [2058805] - platform/x86: intel_pmt_telemetry: Ignore zero sized entries (Prarit Bhargava) [2058805] - platform/x86/intel: pmt: Use y instead of objs in Makefile (Prarit Bhargava) [2058805] - platform/x86/intel: Move Intel PMT drivers to new subfolder (Prarit Bhargava) [2058805] - dlm: fix plock invalid read (Alexander Aring) [2053095] - NFS: LOOKUP_DIRECTORY is also ok with symlinks (Scott Mayhew) [2059727] - NFSv4: nfs_atomic_open() can race when looking up a non-regular file (Scott Mayhew) [2059727] - NFSv4: Handle case where the lookup of a directory fails (Scott Mayhew) [2059727] - redhat: always tag non-maintainer builds with .gXXXX (Jarod Wilson) - mm, compaction: fast_find_migrateblock() should return pfn in the target zone (Rafael Aquini) [2067130] - [s390] s390/pci: expose a PCI device's UID as its index (Mete Durlu) [1939916] - [s390] s390/pci: expose UID uniqueness guarantee (Mete Durlu) [1939916] - [s390] s390/pci: Documentation for zPCI (Mete Durlu) [1939916] - powerpc/fadump: print start of preserved area (Diego Domingos) [2075092] - powerpc/fadump: align destination address to pagesize (Diego Domingos) [2075092] - powerpc/fadump: fix PT_LOAD segment for boot memory area (Diego Domingos) [2075092] - dmaengine: idxd: make idxd_wq_enable() return 0 if wq is already enabled (Jerry Snitselaar) [2083414] - dmaengine: idxd: Remove unnecessary synchronize_irq() before free_irq() (Jerry Snitselaar) [2083414] - dmaengine: idxd: add missing callback function to support DMA_INTERRUPT (Jerry Snitselaar) [2083414] - dmaengine: idxd: skip irq free when wq type is not kernel (Jerry Snitselaar) [2083414] - dmaengine: idxd: make idxd_register/unregister_dma_channel() static (Jerry Snitselaar) [2083414] - dmaengine: idxd: remove redudant idxd_wq_disable_cleanup() call (Jerry Snitselaar) [2083414] - dmaengine: idxd: free irq before wq type is reset (Jerry Snitselaar) [2083414] - dmaengine: idxd: fix lockdep warning on device driver removal (Jerry Snitselaar) [2083414] - dmaengine: idxd: Separate user and kernel pasid enabling (Jerry Snitselaar) [2083414] - dmaengine: idxd: refactor wq driver enable/disable operations (Jerry Snitselaar) [2083414] - dmaengine: idxd: move wq irq enabling to after device enable (Jerry Snitselaar) [2083414] - dmaengine: idxd: set max_xfer and max_batch for RO device (Jerry Snitselaar) [2083414] - dmaengine: idxd: Fix the error handling path in idxd_cdev_register() (Jerry Snitselaar) [2083414] - dmaengine: idxd: set DMA_INTERRUPT cap bit (Jerry Snitselaar) [2083414] - dmaengine: add verification of DMA_INTERRUPT capability for dmatest (Jerry Snitselaar) [2083414] - dmaengine: idxd: remove trailing white space on input str for wq name (Jerry Snitselaar) [2083414] - dmaengine: idxd: don't load pasid config until needed (Jerry Snitselaar) [2083414] - dmaengine: idxd: fix retry value to be constant for duration of function call (Jerry Snitselaar) [2075705] - dmaengine: idxd: match type for retries var in idxd_enqcmds() (Jerry Snitselaar) [2075705] - net: mana: Reuse XDP dropped page (Mohammed Gamal) [2086556] - net: mana: Add counter for XDP_TX (Mohammed Gamal) [2086556] - net: mana: Add counter for packet dropped by XDP (Mohammed Gamal) [2086556] - net: mana: Use struct_size() helper in mana_gd_create_dma_region() (Mohammed Gamal) [2086556] - SUNRPC release the transport of a relocated task with an assigned transport (Scott Mayhew) [2023840] - SUNRPC: Do not dereference non-socket transports in sysfs (Scott Mayhew) [2023840] - SUNRPC don't resend a task on an offlined transport (Scott Mayhew) [2023840] - SUNRPC: lock against ->sock changing during sysfs read (Scott Mayhew) [2023840] - SUNRPC: Check if the xprt is connected before handling sysfs reads (Scott Mayhew) [2023840] - SUNRPC: Add dst_port to the sysfs xprt info file (Scott Mayhew) [2023840] - SUNRPC: Add srcaddr as a file in sysfs (Scott Mayhew) [2023840] - sunrpc: Fix return value of get_srcport() (Scott Mayhew) [2023840] - sunrpc: remove an offlined xprt using sysfs (Scott Mayhew) [2023840] - sunrpc: display xprt's queuelen of assigned tasks via sysfs (Scott Mayhew) [2023840] - SUNRPC: take a xprt offline using sysfs (Scott Mayhew) [2023840] - SUNRPC for TCP display xprt's source port in sysfs xprt_info (Scott Mayhew) [2023840] - SUNRPC query transport's source port (Scott Mayhew) [2023840] - SUNRPC display xprt's main value in sysfs's xprt_info (Scott Mayhew) [2023840] - SUNRPC mark the first transport (Scott Mayhew) [2023840] - NFSv4.1 identify and mark RPC tasks that can move between transports (Scott Mayhew) [2023840] - sunrpc: provide showing transport's state info in the sysfs directory (Scott Mayhew) [2023840] - sunrpc: provide multipath info in the sysfs directory (Scott Mayhew) [2023840] - sunrpc: provide transport info in the sysfs directory (Scott Mayhew) [2023840] - sunrpc: add dst_attr attributes to the sysfs xprt directory (Scott Mayhew) [2023840] - sunrpc: add add sysfs directory per xprt under each xprt_switch (Scott Mayhew) [2023840] - sunrpc: add a symlink from rpc-client directory to the xprt_switch (Scott Mayhew) [2023840] - sunrpc: add xprt_switch direcotry to sunrpc's sysfs (Scott Mayhew) [2023840] - sunrpc: keep track of the xprt_class in rpc_xprt structure (Scott Mayhew) [2023840] - sunrpc: add IDs to multipath (Scott Mayhew) [2023840] - sunrpc: add xprt id (Scott Mayhew) [2023840] - sunrpc: Create per-rpc_clnt sysfs kobjects (Scott Mayhew) [2023840] - sunrpc: Create a client/ subdirectory in the sunrpc sysfs (Scott Mayhew) [2023840] - sunrpc: Create a sunrpc directory under /sys/kernel/ (Scott Mayhew) [2023840] - vfs: check fd has read access in kernel_read_file_from_fd() (Ian Kent) [2040615] - SUNRPC: Fix NFSD's request deferral on RDMA transports (Benjamin Coddington) [2090525] - vdpa/mlx5: Use consistent RQT size (Cindy Lu) [2063108] - vdpa/mlx5: add validation for VIRTIO_NET_CTRL_MQ_VQ_PAIRS_SET command (Cindy Lu) [2063108] - vdpa/mlx5: should verify CTRL_VQ feature exists for MQ (Cindy Lu) [2063108] - gfs2: Stop using glock holder auto-demotion for now (Andreas Gruenbacher) [2054855] - gfs2: buffered write prefaulting (Andreas Gruenbacher) [2054855] - gfs2: Align read and write chunks to the page cache (Andreas Gruenbacher) [2054855] - gfs2: Pull return value test out of should_fault_in_pages (Andreas Gruenbacher) [2054855] - gfs2: Clean up use of fault_in_iov_iter_{read,write}able (Andreas Gruenbacher) [2054855] - gfs2: Variable rename (Andreas Gruenbacher) [2054855] - gfs2: Fix filesystem block deallocation for short writes (Andreas Gruenbacher) [2054855] - iomap: iomap_write_end cleanup (Andreas Gruenbacher) [2054855] - iomap: iomap_write_failed fix (Andreas Gruenbacher) [2054855] - gfs2: Don't re-check for write past EOF unnecessarily (Andreas Gruenbacher) [2054855] - gfs2: No short reads or writes upon glock contention (Andreas Gruenbacher) [2054855] - fs/iomap: Fix buffered write page prefaulting (Andreas Gruenbacher) [2054855] - generic_perform_write()/iomap_write_actor(): saner logics for short copy (Andreas Gruenbacher) [2054855] - iomap: Convert iomap_write_end types (Andreas Gruenbacher) [2054855] - gfs2: Make sure not to return short direct writes (Andreas Gruenbacher) [2054855] - gfs2: Remove dead code in gfs2_file_read_iter (Andreas Gruenbacher) [2054855] - gfs2: Fix gfs2_file_buffered_write endless loop workaround (Andreas Gruenbacher) [2054855] - gfs2: Minor retry logic cleanup (Andreas Gruenbacher) [2054855] - gfs2: Disable page faults during lockless buffered reads (Andreas Gruenbacher) [2054855] - gfs2: Fix should_fault_in_pages() logic (Andreas Gruenbacher) [2054855] - mm: gup: make fault_in_safe_writeable() use fixup_user_fault() (Andreas Gruenbacher) [2054855] - gfs2: Initialize gh_error in gfs2_glock_nq (Andreas Gruenbacher) [2054855] - gfs2: Switch lock order of inode and iopen glock (Andreas Gruenbacher) [2054855] - gfs2: cancel timed-out glock requests (Andreas Gruenbacher) [2054855] - gfs2: Expect -EBUSY after canceling dlm locking requests (Andreas Gruenbacher) [2054855] - gfs2: gfs2_setattr_size error path fix (Andreas Gruenbacher) [2054855] - gfs2: assign rgrp glock before compute_bitstructs (Bob Peterson) [2054855] - gfs2: Fix gfs2_release for non-writers regression (Bob Peterson) [1955591] - gfs2: gfs2_create_inode rework (Andreas Gruenbacher) [1955591] - gfs2: gfs2_inode_lookup rework (Andreas Gruenbacher) [1955591] - gfs2: gfs2_inode_lookup cleanup (Andreas Gruenbacher) [1955591] - gfs2: Fix remote demote of weak glock holders (Andreas Gruenbacher) [1955591] - gfs2: Fix glock_hash_walk bugs (Andreas Gruenbacher) [1955591] - gfs2: Cancel remote delete work asynchronously (Bob Peterson) [1955591] - gfs2: set glock object after nq (Bob Peterson) [1955591] - gfs2: remove RDF_UPTODATE flag (Bob Peterson) [1955591] - gfs2: Eliminate GIF_INVALID flag (Bob Peterson) [1955591] - gfs2: Fix atomic bug in gfs2_instantiate (Andreas Gruenbacher) [1955591] - gfs2: fix GL_SKIP node_scope problems (Bob Peterson) [1955591] - gfs2: Add some flags missing from glock output (Bob Peterson) [1955591] - gfs2: split glock instantiation off from do_promote (Bob Peterson) [1955591] - gfs2: further simplify do_promote (Bob Peterson) [1955591] - gfs2: re-factor function do_promote (Bob Peterson) [1955591] - gfs2: Remove 'first' trace_gfs2_promote argument (Andreas Gruenbacher) [1955591] - gfs2: change go_lock to go_instantiate (Bob Peterson) [1955591] - gfs2: Switch some BUG_ON to GLOCK_BUG_ON for debug (Bob Peterson) [1955591] - gfs2: move GL_SKIP check from glops to do_promote (Bob Peterson) [1955591] - gfs2: Add GL_SKIP holder flag to dump_holder (Bob Peterson) [1955591] - gfs2: remove redundant check in gfs2_rgrp_go_lock (Bob Peterson) [1955591] - gfs2: Fix mmap + page fault deadlocks for direct I/O (Andreas Gruenbacher) [1955591] - iov_iter: Introduce ITER_IOVEC_FLAG_NOFAULT flag to disable page faults (Andreas Gruenbacher) [1955591] - gup: Introduce FOLL_NOFAULT flag to disable page faults (Andreas Gruenbacher) [1955591] - iomap: Add done_before argument to iomap_dio_rw (Andreas Gruenbacher) [1955591] - iomap: Support partial direct I/O on user copy failures (Andreas Gruenbacher) [1955591] - iomap: Fix iomap_dio_rw return value for user copies (Andreas Gruenbacher) [1955591] - iomap: support reading inline data from non-zero pos (Andreas Gruenbacher) [1955591] - gfs2: Only dereference i->iov when iter_is_iovec(i) (Andreas Gruenbacher) [1955591] - gfs2: Prevent endless loops in gfs2_file_buffered_write (Andreas Gruenbacher) [1955591] - gfs2: Fix mmap + page fault deadlocks for buffered I/O (Andreas Gruenbacher) [1955591] - gfs2: Eliminate ip->i_gh (Andreas Gruenbacher) [1955591] - gfs2: Move the inode glock locking to gfs2_file_buffered_write (Andreas Gruenbacher) [1955591] - gfs2: Fix "Introduce flag for glock holder auto-demotion" (Andreas Gruenbacher) [1955591] - gfs2: Introduce flag for glock holder auto-demotion (Bob Peterson) [1955591] - gfs2: fix scheduling while atomic bug in glocks (Bob Peterson) [1955591] - gfs2: Clean up function may_grant (Andreas Gruenbacher) [1955591] - gfs2: Add wrapper for iomap_file_buffered_write (Andreas Gruenbacher) [1955591] - iov_iter: Introduce fault_in_iov_iter_writeable (Andreas Gruenbacher) [1955591] - iov_iter: Turn iov_iter_fault_in_readable into fault_in_iov_iter_readable (Andreas Gruenbacher) [1955591] - gup: Turn fault_in_pages_{readable,writeable} into fault_in_{readable,writeable} (Andreas Gruenbacher) [1955591] - powerpc/signal64: Don't opencode page prefaulting (Andreas Gruenbacher) [1955591] - sanitize iov_iter_fault_in_readable() (Andreas Gruenbacher) [1955591] - [xarray] iov_iter_fault_in_readable() should do nothing in xarray case (Andreas Gruenbacher) [1955591] - powerpc/kvm: Fix kvm_use_magic_page (Andreas Gruenbacher) [1955591] - iov_iter: Fix iov_iter_get_pages{,_alloc} page fault return value (Andreas Gruenbacher) [1955591] - gfs2: Fix length of holes reported at end-of-file (Andreas Gruenbacher) [1955591] - gfs2: Remove redundant check from gfs2_glock_dq (Bob Peterson) [1955591] - gfs2: release iopen glock early in evict (Bob Peterson) [1955591] - mm: change fault_in_pages_* to have an unsigned size parameter (Andreas Gruenbacher) [1955591] - gfs2: Eliminate vestigial HIF_FIRST (Bob Peterson) [1955591] - iomap: remove the iomap arguments to ->page_{prepare,done} (Andreas Gruenbacher) [1955591] - net: sched: fix use-after-free in tc_new_tfilter() (Ivan Vecera) [2071704]- Bluetooth: virtio_bt: fix memory leak in virtbt_rx_handle() (Gopal Tiwari) [2076180] - powerpc/papr_scm: Fix buffer overflow issue with CONFIG_FORTIFY_SOURCE (Gustavo Walbon) [2069468] - powerpc/papr_scm: Fix build failure when (Gustavo Walbon) [2069468] - drivers/nvdimm: Fix build failure when CONFIG_PERF_EVENTS is not set (Gustavo Walbon) [2069468] - powerpc/papr_scm: Add perf interface support (Gustavo Walbon) [2069468] - drivers/nvdimm: Add perf interface to expose nvdimm performance stats (Gustavo Walbon) [2069468] - drivers/nvdimm: Add nvdimm pmu structure (Gustavo Walbon) [2069468] - mptcp: Fix crash due to tcp_tsorted_anchor was initialized before release skb (Davide Caratti) [2084048] - mptcp: Correctly set DATA_FIN timeout when number of retransmits is large (Davide Caratti) [2084048] - mptcp: add mibs counter for ignored incoming options (Davide Caratti) [2084048] - mptcp: fix race in incoming ADD_ADDR option processing (Davide Caratti) [2084048] - mptcp: netlink: process IPv6 addrs in creating listening sockets (Davide Caratti) [2084048] - mptcp: use delegate action to schedule 3rd ack retrans (Davide Caratti) [2084048] - mptcp: fix delack timer (Davide Caratti) [2084048] - powerpc/module_64: use module_init_section instead of patching names (Jan Stancek) [1985851] - module: check for exit sections in layout_sections() instead of module_init_section() (Jan Stancek) [1985851] - module: treat exit sections the same as init sections when !CONFIG_MODULE_UNLOAD (Jan Stancek) [1985851] - module: allow arch overrides for .exit section names (Jan Stancek) [1985851] - ARM: 8976/1: module: allow arch overrides for .init section names (Jan Stancek) [1985851] - KVM: s390: pv: make use of ultravisor AIV support (Thomas Huth) [2043870] - redhat: Enable VM kselftests (Nico Pache) [1978539] - selftests: vm: Makefile: rename TARGETS to VMTARGETS (Nico Pache) [1978539] - redhat: enable CONFIG_TEST_VMALLOC for vm selftests (Nico Pache) [1978539] - redhat: enable GUP TEST for kselftests (Nico Pache) [1978539] - redhat: Enable HMM test to be used by the kselftest test suite (Nico Pache) [1978539] - selftests/vm/pkeys: fix alloc_random_pkey() to make it really, really random (Nico Pache) [1978539] - selftests/vm: fix display of page size in map_hugetlb (Nico Pache) [1978539] - selftests/vm: fix building protection keys test (Nico Pache) [1978539] - lib/test_vmalloc.c: do not create cpumask_t variable on stack (Nico Pache) [1978539] - vmalloc: add test driver to analyse vmalloc allocator (Nico Pache) [1978539] - vmalloc: export __vmalloc_node_range for CONFIG_TEST_VMALLOC_MODULE (Nico Pache) [1978539] - selftests/vm: add protection_keys_32 / protection_keys_64 to gitignore (Nico Pache) [1978539] - selftests/vm: rename file run_vmtests to run_vmtests.sh (Nico Pache) [1978539] - mm/gup_benchmark: support threading (Nico Pache) [1978539] - selftests/vm: gup_test: test faulting in kernel, and verify pinnable pages (Nico Pache) [1978539] - selftests/vm: gup_test: fix test flag (Nico Pache) [1978539] - selftests/vm: fix out-of-tree build (Nico Pache) [1978539] - selftests/vm: 2x speedup for run_vmtests.sh (Nico Pache) [1978539] - selftests/vm: hmm-tests: remove the libhugetlbfs dependency (Nico Pache) [1978539] - selftests/vm: run_vmtests.sh: update and clean up gup_test invocation (Nico Pache) [1978539] - selftests/vm: gup_test: introduce the dump_pages() sub-test (Nico Pache) [1978539] - selftests/vm: only some gup_test items are really benchmarks (Nico Pache) [1978539] - selftests/vm: minor cleanup: Makefile and gup_test.c (Nico Pache) [1978539] - selftests/vm: rename run_vmtests --> run_vmtests.sh (Nico Pache) [1978539] - selftests/vm: use a common gup_test.h (Nico Pache) [1978539] - mm/gup_benchmark: rename to mm/gup_test (Nico Pache) [1978539] - tools/testing/selftests/vm: fix build error (Nico Pache) [1978539] - selftests: vm: add fragment CONFIG_GUP_BENCHMARK (Nico Pache) [1978539] - selftests/vm: 8x compaction_test speedup (Nico Pache) [1978539] - selftests/vm: fix incorrect gcc invocation in some cases (Nico Pache) [1978539] - selftests/vm: fix false build success on the second and later attempts (Nico Pache) [1978539] - mm/gup: don't permit users to call get_user_pages with FOLL_LONGTERM (Nico Pache) [1978539] - mm/gup_benchmark: use pin_user_pages for FOLL_LONGTERM flag (Nico Pache) [1978539] - mm/gup_benchmark: update the documentation in Kconfig (Nico Pache) [1978539] - khugepaged: selftests: fix timeout condition in wait_for_scan() (Nico Pache) [1978539] - selftests: vm: pkeys: fix multilib builds for x86 (Nico Pache) [1978539] - selftests: vm: pkeys: use the correct page size on powerpc (Nico Pache) [1978539] - selftests/vm/pkeys: override access right definitions on powerpc (Nico Pache) [1978539] - selftests/vm/pkeys: test correct behaviour of pkey-0 (Nico Pache) [1978539] - selftests/vm/pkeys: introduce a sub-page allocator (Nico Pache) [1978539] - selftests/vm/pkeys: detect write violation on a mapped access-denied-key page (Nico Pache) [1978539] - selftests/vm/pkeys: associate key on a mapped page and detect write violation (Nico Pache) [1978539] - selftests/vm/pkeys: associate key on a mapped page and detect access violation (Nico Pache) [1978539] - selftests/vm/pkeys: improve checks to determine pkey support (Nico Pache) [1978539] - selftests/vm/pkeys: fix assertion in test_pkey_alloc_exhaust() (Nico Pache) [1978539] - selftests/vm/pkeys: fix number of reserved powerpc pkeys (Nico Pache) [1978539] - selftests/vm/pkeys: introduce powerpc support (Nico Pache) [1978539] - selftests/vm/pkeys: introduce generic pkey abstractions (Nico Pache) [1978539] - selftests: vm: pkeys: use the correct huge page size (Nico Pache) [1978539] - selftests/vm/pkeys: fix alloc_random_pkey() to make it really random (Nico Pache) [1978539] - selftests/vm/pkeys: fix assertion in pkey_disable_set/clear() (Nico Pache) [1978539] - selftests/vm/pkeys: fix pkey_disable_clear() (Nico Pache) [1978539] - selftests: vm: pkeys: add helpers for pkey bits (Nico Pache) [1978539] - selftests: vm: pkeys: Use sane types for pkey register (Nico Pache) [1978539] - selftests/vm/pkeys: make gcc check arguments of sigsafe_printf() (Nico Pache) [1978539] - selftests/vm/pkeys: move some definitions to arch-specific header (Nico Pache) [1978539] - selftests/vm/pkeys: move generic definitions to header file (Nico Pache) [1978539] - selftests/vm/pkeys: rename all references to pkru to a generic name (Nico Pache) [1978539] - selftests/x86/pkeys: move selftests to arch-neutral directory (Nico Pache) [1978539] - selftests/vm: 10x speedup for hmm-tests (Nico Pache) [1978539] - mm/migrate: add migrate-shared test for migrate_vma_*() (Nico Pache) [1978539] - mm/migrate: optimize migrate_vma_setup() for holes (Nico Pache) [1978539] - lib/test_hmm: use vma_lookup() in dmirror_migrate() (Nico Pache) [1978539] - lib/test_hmm.c: fix an error code in dmirror_allocate_chunk() (Nico Pache) [1978539] - lib/test_hmm.c: remove unused dmirror_zero_page (Nico Pache) [1978539] - mm/memremap_pages: support multiple ranges per invocation (Nico Pache) [1978539] - mm/memremap_pages: convert to 'struct range' (Nico Pache) [1978539] - tools/testing/selftests/vm/hmm-tests.c: use the new SKIP() macro (Nico Pache) [1978539] - mm/hmm/test: use the new migration invalidation (Nico Pache) [1978539] - lib/test_hmm.c: add a flag parameter to migrate_vma (Nico Pache) [1978539] - mm/hmm: add tests for hmm_pfn_to_map_order() (Nico Pache) [1978539] - lib: fix test_hmm.c reference after free (Nico Pache) [1978539] - mm/hmm/test: add selftests for HMM (Nico Pache) [1978539] - mm/hmm/test: add selftest driver for HMM (Nico Pache) [1978539] - mm: convert insert_pfn() to vm_fault_t (Nico Pache) [1978539] - selftests/vm/.gitignore: add mremap_dontunmap (Nico Pache) [1978539] - selftests: vm: Fix 64-bit test builds for powerpc64le (Nico Pache) [1978539] - selftests: vm: Do not override definition of ARCH (Nico Pache) [1978539] - selftests/vm: fix map_hugetlb length used for testing read and write (Nico Pache) [1978539] - selftests/vm: add missed tests in run_vmtests (Nico Pache) [1978539] - selftests: vm: add fragment CONFIG_TEST_VMALLOC (Nico Pache) [1978539] - selftests: vm: Build/Run 64bit tests only on 64bit arch (Nico Pache) [1978539] - selftests: vm: Fix test build failure when built by itself (Nico Pache) [1978539] - selftests: vm: install test_vmalloc.sh for run_vmtests (Nico Pache) [1978539] - tools: mark 'test_vmalloc.sh' executable (Nico Pache) [1978539] - tools/selftest/vm: allow choosing mem size and page size in map_hugetlb (Nico Pache) [1978539] - selftests/vm: add script helper for CONFIG_TEST_VMALLOC_MODULE (Nico Pache) [1978539] - tools/testing/selftests/vm/map_fixed_noreplace.c: add test for MAP_FIXED_NOREPLACE (Nico Pache) [1978539] - tools/testing/selftests/vm/: add MAP_POPULATE test (Nico Pache) [1978539] - xfs: return errors in xfs_fs_sync_fs (Andrey Albershteyn) [2087991] - vfs: make sync_filesystem return errors from ->sync_fs (Andrey Albershteyn) [2087991] - PCI: hv: Remove unused hv_set_msi_entry_from_desc() (Mohammed Gamal) [2086560] - PCI: hv: Avoid the retarget interrupt hypercall in irq_unmask() on ARM64 (Mohammed Gamal) [2086560] - PCI: hv: Fix NUMA node assignment when kernel boots with custom NUMA topology (Mohammed Gamal) [2086560] - PCI: hv: Use PCI_ERROR_RESPONSE to identify config read errors (Mohammed Gamal) [2086560] - vdpa: clean up get_config_size ret value handling (Cindy Lu) [2059841] - vdpa: mlx5: synchronize driver status with CVQ (Jason Wang) [2048009] - vdpa: mlx5: prevent cvq work from hogging CPU (Jason Wang) [2048009] - vdpa/mlx5: Avoid processing works if workqueue was destroyed (Cindy Lu) [2048009] - cpufreq: Cancel policy update work scheduled before freeing (Prarit Bhargava) [2083728] - tcp: fix potential xmit stalls caused by TCP_NOTSENT_LOWAT (Paolo Abeni) [2081411] - tcp: ensure to use the most recently sent skb when filling the rate sample (Paolo Abeni) [2081411] - tcp: make sure treq->af_specific is initialized (Paolo Abeni) [2081411] - tcp: md5: incorrect tcp_header_len for incoming connections (Paolo Abeni) [2081411] - tcp: ensure PMTU updates are processed during fastopen (Paolo Abeni) [2081411] - tcp: add missing tcp_skb_can_collapse() test in tcp_shift_skb_data() (Paolo Abeni) [2081411] - inet: fully convert sk->sk_rx_dst to RCU rules (Paolo Abeni) [2081411] - tcp_cubic: fix spurious Hystart ACK train detections for not-cwnd-limited flows (Paolo Abeni) [2081411]- selftests/bpf/test_xdp_redirect_multi: use temp netns for testing (Felix Maurer) [2017875] - selftests/bpf/xdp_redirect_multi: Limit the tests in netns (Jiri Benc) [2017875] - selftests/bpf/xdp_redirect_multi: Give tcpdump a chance to terminate cleanly (Jiri Benc) [2017875] - selftests/bpf/xdp_redirect_multi: Use arping to accurate the arp number (Jiri Benc) [2017875] - selftests/bpf/xdp_redirect_multi: Put the logs to tmp folder (Jiri Benc) [2017875] - bpf, sockmap: Zap ingress queues after stopping strparser (Jiri Benc) [2017875] - xdp, net: Fix use-after-free in bpf_xdp_link_release (Jiri Benc) [2017875] - doc, af_xdp: Fix bind flags option typo (Jiri Benc) [2017875] - bpf, devmap: Convert remaining READ_ONCE() to rcu_dereference_check() (Jiri Benc) [2017875] - xdp: Move the rxq_info.mem clearing to unreg_mem_model() (Jiri Benc) [2017875] - bpf, sched: Remove unneeded rcu_read_lock() around BPF program invocation (Jiri Benc) [2017875] - xdp: Add proper __rcu annotations to redirect map entries (Jiri Benc) [2017875] - doc: Give XDP as example of non-obvious RCU reader/updater pairing (Jiri Benc) [2017875] - doc: Clarify and expand RCU updaters and corresponding readers (Jiri Benc) [2017875] - bpfilter: Specify the log level for the kmsg message (Jiri Benc) [2017875] - docs, af_xdp: Consistent indentation in examples (Jiri Benc) [2017875] - xsk: Fix missing validation for skb and unaligned mode (Jiri Benc) [2017875] - bpf: Support all gso types in bpf_skb_change_proto() (Jiri Benc) [2017875] - bpf: Do not change gso_size during bpf_skb_change_proto() (Jiri Benc) [2017875] - Revert "bpf: Check for BPF_F_ADJ_ROOM_FIXED_GSO when bpf_skb_change_proto" (Jiri Benc) [2017875] - selftests/bpf: Add xdp_redirect_multi into .gitignore (Jiri Benc) [2017875] - bpf, devmap: Remove drops variable from bq_xmit_all() (Jiri Benc) [2017875] - locking/atomic: net: use linux/atomic.h for xchg & cmpxchg (Jiri Benc) [2017875] - xsk: Use kvcalloc to support large umems (Jiri Benc) [2017875] - selftests/bpf: Add xdp_redirect_multi test (Jiri Benc) [2017875] - sample/bpf: Add xdp_redirect_map_multi for redirect_map broadcast test (Jiri Benc) [2017875] - xdp: Extend xdp_redirect_map with broadcast support (Jiri Benc) [2017875] - bpf: Let bpf_warn_invalid_xdp_action() report more info (Felix Maurer) [2017875] - bpf: Run devmap xdp_prog on flush instead of bulk enqueue (Jiri Benc) [2017875] - skmsg: Remove unused parameters of sk_msg_wait_data() (Jiri Benc) [2017875] - bpf: Use struct_size() in kzalloc() (Jiri Benc) [2017875] - bpf: Check for BPF_F_ADJ_ROOM_FIXED_GSO when bpf_skb_change_proto (Jiri Benc) [2017875] - treewide: Replace zero-length arrays with flexible-array members (Tomas Henzl) [2049660] - scsi: mpi3mr: Bump driver version to 8.0.0.68.0 (Tomas Henzl) [2049660] - scsi: mpi3mr: Update the copyright year (Tomas Henzl) [2049660] - scsi: mpi3mr: Update MPI3 headers (Tomas Henzl) [2049660] - scsi: mpi3mr: Fix formatting problems in some kernel-doc comments (Tomas Henzl) [2049660] - scsi: mpi3mr: Fix some spelling mistakes (Tomas Henzl) [2049660] - scsi: mpi3mr: Bump driver version to 8.0.0.61.0 (Tomas Henzl) [2049660] - scsi: mpi3mr: Add io_uring interface support in I/O-polled mode (Tomas Henzl) [2049660] - scsi: mpi3mr: Print cable mngnt and temp threshold events (Tomas Henzl) [2049660] - scsi: mpi3mr: Support Prepare for Reset event (Tomas Henzl) [2049660] - scsi: mpi3mr: Add Event acknowledgment logic (Tomas Henzl) [2049660] - scsi: mpi3mr: Gracefully handle online FW update operation (Tomas Henzl) [2049660] - scsi: mpi3mr: Detect async reset that occurred in firmware (Tomas Henzl) [2049660] - scsi: mpi3mr: Add IOC reinit function (Tomas Henzl) [2049660] - scsi: mpi3mr: Handle offline FW activation in graceful manner (Tomas Henzl) [2049660] - scsi: mpi3mr: Code refactor of IOC init - part2 (Tomas Henzl) [2049660] - scsi: mpi3mr: Code refactor of IOC init - part1 (Tomas Henzl) [2049660] - scsi: mpi3mr: Fault IOC when internal command gets timeout (Tomas Henzl) [2049660] - scsi: mpi3mr: Display IOC firmware package version (Tomas Henzl) [2049660] - scsi: mpi3mr: Handle unaligned PLL in unmap cmnds (Tomas Henzl) [2049660] - scsi: mpi3mr: Add support for PCIe Managed Switch SES device (Tomas Henzl) [2049660] - [s390] s390/cio: verify the driver availability for path_event call (Mete Durlu) [2058620] - selinux: fix bad cleanup on error in hashtab_duplicate() (Ondrej Mosnacek) [2005890] - selinux: fix race between old and new sidtab (Ondrej Mosnacek) [2005890] - selinux: fix cond_list corruption when changing booleans (Ondrej Mosnacek) [2005890] - selinux: make nslot handling in avtab more robust (Ondrej Mosnacek) [2005890] - selinuxfs: unify policy load error reporting (Ondrej Mosnacek) [2005890] - selinux: fix variable scope issue in live sidtab conversion (Ondrej Mosnacek) [2005890] - selinux: don't log MAC_POLICY_LOAD record on failed policy load (Ondrej Mosnacek) [2005890] - selinux: simplify away security_policydb_len() (Ondrej Mosnacek) [2005890] - selinux: move policy mutex to selinux_state, use in lockdep checks (Ondrej Mosnacek) [2005890] - selinux: fix error handling bugs in security_load_policy() (Ondrej Mosnacek) [2005890] - selinux: convert policy read-write lock to RCU (Ondrej Mosnacek) [2005890] - selinux: Create new booleans and class dirs out of tree (Ondrej Mosnacek) [2005890] - selinux: Standardize string literal usage for selinuxfs directory names (Ondrej Mosnacek) [2005890] - selinux: Refactor selinuxfs directory populating functions (Ondrej Mosnacek) [2005890] - selinux: Create function for selinuxfs directory cleanup (Ondrej Mosnacek) [2005890] - selinux: fix memdup.cocci warnings (Ondrej Mosnacek) [2005890] - selinux: avoid dereferencing the policy prior to initialization (Ondrej Mosnacek) [2005890] - selinux: fix allocation failure check on newpolicy->sidtab (Ondrej Mosnacek) [2005890] - selinux: refactor changing booleans (Ondrej Mosnacek) [2005890] - selinux: move policy commit after updating selinuxfs (Ondrej Mosnacek) [2005890] - selinux: encapsulate policy state, refactor policy load (Ondrej Mosnacek) [2005890] - Revert "selinux: fix deadlock in security_set_bools()" (Ondrej Mosnacek) [2005890] - thunderx nic: mark device as deprecated (Íñigo Huguet) [2060286] - cpufreq: intel_pstate: Add Ice Lake server to out-of-band IDs (Vitaly Kuznetsov) [2091523] - [s390] s390/hypfs: include z/VM guests with access control group set (Mete Durlu) [2058621] - scsi: mpt3sas: Fix a few kernel-doc issues (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix a typo (Tomas Henzl) [2049623] - scsi: mpt3sas: Update driver version to 42.100.00.00 (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix junk chars displayed while printing ChipName (Tomas Henzl) [2049623] - scsi: mpt3sas: Use cached ATA Information VPD page (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix adapter replyPostRegisterIndex declaration (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix event callback log_code value handling (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix ioc->base_readl() use (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix writel() use (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix _ctl_set_task_mid() TaskMID check (Tomas Henzl) [2049623] - scsi: mpt3sas: Fail reset operation if config request timed out (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix use after free in _scsih_expander_node_remove() (Tomas Henzl) [2049623] - scsi: mpt3sas: Page fault in reply q processing (Tomas Henzl) [2049623] - scsi: mpt3sas: Convert to flexible arrays (Tomas Henzl) [2049623] - scsi: mpt3sas: Update persistent trigger pages from sysfs interface (Tomas Henzl) [2049623] - Revert "netfilter: conntrack: tag conntracks picked up in local out hook" (Florian Westphal) [2062870] - Revert "netfilter: nat: force port remap to prevent shadowing well-known ports" (Florian Westphal) [2062870] - drm/amdgpu: vi: disable ASPM on Intel Alder Lake based systems (Michel Dänzer) [2066918] - drm/amd: Use amdgpu_device_should_use_aspm on navi umd pstate switching (Michel Dänzer) [2066918] - drm/amd: Refactor `amdgpu_aspm` to be evaluated per device (Michel Dänzer) [2066918] - drm/amd: Check if ASPM is enabled from PCIe subsystem (Michel Dänzer) [2066918] - [s390] s390/tape: fix timer initialization in tape_std_assign() (Mete Durlu) [2085420] - powerpc/pseries/vas: Use QoS credits from the userspace (Steve Best) [2075174] - thermal: don't make THERMAL_NETLINK 'default y' (Prarit Bhargava) [2040062] - redhat/configs: Add CONFIG_INTEL_HFI_THERMAL (Prarit Bhargava) [2040062] - thermal/drivers/core: Remove module unload code (Prarit Bhargava) [2040062] - thermal: core: Fix TZ_GET_TRIP NULL pointer dereference (Prarit Bhargava) [2040062] - thermal: intel: hfi: INTEL_HFI_THERMAL depends on NET (Prarit Bhargava) [2040062] - thermal: netlink: Fix parameter type of thermal_genl_cpu_capability_event() stub (Prarit Bhargava) [2040062] - thermal: intel: hfi: Notify user space for HFI events (Prarit Bhargava) [2040062] - thermal: netlink: Add a new event to notify CPU capabilities change (Prarit Bhargava) [2040062] - thermal: intel: hfi: Enable notification interrupt (Prarit Bhargava) [2040062] - thermal: intel: hfi: Handle CPU hotplug events (Prarit Bhargava) [2040062] - thermal: intel: hfi: Minimally initialize the Hardware Feedback Interface (Prarit Bhargava) [2040062] - x86/cpu: Add definitions for the Intel Hardware Feedback Interface (Prarit Bhargava) [2040062] - x86/Documentation: Describe the Intel Hardware Feedback Interface (Prarit Bhargava) [2040062] - thermal: intel: Allow processing of HWP interrupt (Prarit Bhargava) [2040062] - x86/thermal: Fix LVT thermal setup for SMI delivery mode (Prarit Bhargava) [2040062] - thermal: Move therm_throt there from x86/mce (Prarit Bhargava) [2040062] - thermal: core: Adding missing nlmsg_free() in thermal_genl_sampling_temp() (Prarit Bhargava) [2040062] - thermal: move to smaller ops wherever possible (Prarit Bhargava) [2040062] - thermal: add small version of ops (Prarit Bhargava) [2040062] - thermal: netlink: Improve the initcall ordering (Prarit Bhargava) [2040062] - thermal: core: remove redundant initialization of variable ret (Prarit Bhargava) [2040062] - thermal: netlink: Fix compilation error when CONFIG_NET=n (Prarit Bhargava) [2040062] - thermal: core: Fix thermal zone lookup by ID (Prarit Bhargava) [2040062] - thermal: core: Get thermal zone by id (Prarit Bhargava) [2040062] - thermal: core: Add helpers to browse the cdev, tz and governor list (Prarit Bhargava) [2040062] - thermal: Remove netlink support (Prarit Bhargava) [2040062] - thermal: core: genetlink support for events/cmd/sampling (Prarit Bhargava) [2040062]- mailbox: pcc: Handle all PCC subtypes correctly in pcc_mbox_irq (Mark Langsdorf) [1997698] - i2c: xgene-slimpro: Fix wrong pointer passed to PTR_ERR() (Mark Langsdorf) [1997698] - ACPI: Make acpi_node_get_parent() local (Mark Langsdorf) [1997698] - ACPI: Get acpi_device's parent from the parent field (Mark Langsdorf) [1997698] - ACPI: PM: Fix device wakeup power reference counting error (Mark Langsdorf) [1997698] - ACPI: video: use platform backlight driver on Xiaomi Mi Pad 2 (Mark Langsdorf) [1997698] - ACPI: video: Drop dmi_system_id.ident settings from video_detect_dmi_table[] (Mark Langsdorf) [1997698] - ACPI: PMIC: Fix intel_pmic_regs_handler() read accesses (Mark Langsdorf) [1997698] - ACPI: EC: Use ec_no_wakeup on HP ZHAN 66 Pro (Mark Langsdorf) [1997698] - ACPI: Add a convenience function to tell a device is in D0 state (Mark Langsdorf) [1997698] - ACPI: scan: Obtain device's desired enumeration power state (Mark Langsdorf) [1997698] - perf: qcom_l2_pmu: ACPI: Use ACPI_COMPANION() directly (Mark Langsdorf) [1997698] - ACPI/PCC: Add maintainer for PCC mailbox driver (Mark Langsdorf) [1997698] - mailbox: pcc: Add support for PCCT extended PCC subspaces(type 3/4) (Mark Langsdorf) [1997698] - mailbox: pcc: Drop handling invalid bit-width in {read,write}_register (Mark Langsdorf) [1997698] - mailbox: pcc: Avoid accessing PCCT table in pcc_send_data and pcc_mbox_irq (Mark Langsdorf) [1997698] - mailbox: pcc: Add PCC register bundle and associated accessor functions (Mark Langsdorf) [1997698] - mailbox: pcc: Rename doorbell ack to platform interrupt ack register (Mark Langsdorf) [1997698] - mailbox: pcc: Use PCC mailbox channel pointer instead of standard (Mark Langsdorf) [1997698] - mailbox: pcc: Add pcc_mbox_chan structure to hold shared memory region info (Mark Langsdorf) [1997698] - mailbox: pcc: Consolidate subspace doorbell register parsing (Mark Langsdorf) [1997698] - mailbox: pcc: Consolidate subspace interrupt information parsing (Mark Langsdorf) [1997698] - mailbox: pcc: Refactor all PCC channel information into a structure (Mark Langsdorf) [1997698] - mailbox: pcc: Fix kernel doc warnings (Mark Langsdorf) [1997698] - ACPI: glue: Use acpi_device_adr() in acpi_find_child_device() (Mark Langsdorf) [1997698] - ACPI: APEI: mark apei_hest_parse() static (Mark Langsdorf) [1997698] - ACPI: APEI: EINJ: Relax platform response timeout to 1 second (Mark Langsdorf) [1997698] - ACPI: resources: Add one more Medion model in IRQ override quirk (Mark Langsdorf) [1997698] - ACPI: AC: Quirk GK45 to skip reading _PSR (Mark Langsdorf) [1997698] - ACPI: PM: sleep: Do not set suspend_ops unnecessarily (Mark Langsdorf) [1997698] - ACPI: PRM: Handle memory allocation and memory remap failure (Mark Langsdorf) [1997698] - ACPI: PRM: Remove unnecessary blank lines (Mark Langsdorf) [1997698] - ACPI: PM: Turn off wakeup power resources on _DSW/_PSW errors (Mark Langsdorf) [1997698] - ACPI: PM: Fix sharing of wakeup power resources (Mark Langsdorf) [1997698] - ACPI: PM: Turn off unused wakeup power resources (Mark Langsdorf) [1997698] - ACPI: PM: Check states of power resources during initialization (Mark Langsdorf) [1997698] - hwmon: (acpi_power_meter) Use acpi_bus_get_acpi_device() (Mark Langsdorf) [1997698] - ACPI: replace snprintf() in "show" functions with sysfs_emit() (Mark Langsdorf) [1997698] - ACPI: LPSS: Use ACPI_COMPANION() directly (Mark Langsdorf) [1997698] - ACPI: battery: Accept charges over the design capacity as full (Mark Langsdorf) [1997698] - ACPICA: Update version to 20210930 (Mark Langsdorf) [1997698] - ACPICA: iASL table disassembler: Added disassembly support for the NHLT ACPI table (Mark Langsdorf) [1997698] - ACPICA: ACPI 6.4 SRAT: add Generic Port Affinity type (Mark Langsdorf) [1997698] - ACPICA: Add support for Windows 2020 _OSI string (Mark Langsdorf) [1997698] - ACPICA: Avoid evaluating methods too early during system resume (Mark Langsdorf) [1997698] - ACPI: processor: idle: fix lockup regression on 32-bit ThinkPad T40 (Mark Langsdorf) [1997698] - ACPI: processor idle: Allow playing dead in C3 state (Mark Langsdorf) [1997698] - ACPI: Kconfig: Fix a typo in Kconfig (Mark Langsdorf) [1997698] - ACPI: PNP: remove duplicated BRI0A49 and BDP3336 entries (Mark Langsdorf) [1997698] - ACPI: resources: Add DMI-based legacy IRQ override quirk (Mark Langsdorf) [1997698] - ACPICA: Add support for MADT online enabled bit (Mark Langsdorf) [1997698] - acpi/arm64: fix next_platform_timer() section mismatch error (Mark Langsdorf) [1997697] - ACPI: PM: Include alternate AMDI0005 id in special behaviour (Mark Langsdorf) [1997697] - MAINTAINERS: Change Rafael's e-mail address (Mark Langsdorf) [1997697] - ACPI: scan: Remove unneeded header linux/nls.h (Mark Langsdorf) [1997697] - ACPI: PM: s2idle: Run both AMD and Microsoft methods if both are supported (Mark Langsdorf) [1997697] - ACPI: power: Drop name from struct acpi_power_resource (Mark Langsdorf) [1997697] - ACPI: power: Use acpi_handle_debug() to print debug messages (Mark Langsdorf) [1997697] - ACPI: button: Add DMI quirk for Lenovo Yoga 9 (14INTL5) (Mark Langsdorf) [1997697] - ACPI: SPCR: Add support for the new 16550-compatible Serial Port Subtype (Mark Langsdorf) [1997697] - ACPI: platform-profile: call sysfs_notify() from platform_profile_store() (Mark Langsdorf) [1997697] - ACPICA: Update version to 20210730 (Mark Langsdorf) [1997697] - ACPICA: Add method name "_DIS" For use with aslmethod.c (Mark Langsdorf) [1997697] - ACPICA: iASL: Fix for WPBT table with no command-line arguments (Mark Langsdorf) [1997697] - ACPICA: Headers: Add new DBG2 Serial Port Subtypes (Mark Langsdorf) [1997697] - ACPICA: Macros should not use a trailing semicolon (Mark Langsdorf) [1997697] - ACPICA: Fix an if statement (add parens) (Mark Langsdorf) [1997697] - ACPICA: iASL: Add support for the AEST table (data compiler) (Mark Langsdorf) [1997697] - clk: fractional-divider: Introduce POWER_OF_TWO_PS flag (Mark Langsdorf) [1997697] - clk: fractional-divider: add explicit big endian support (Mark Langsdorf) [1997697] - clk: gate: add explicit big endian support (Mark Langsdorf) [1997697] - clk: fractional-divider: add CLK_FRAC_DIVIDER_ZERO_BASED flag support (Mark Langsdorf) [1997697] - ACPI: processor: Replace deprecated CPU-hotplug functions (Mark Langsdorf) [1997697] - ABI: sysfs-platform-dptf: Add tables markup to a table (Mark Langsdorf) [1997697] - ACPI: DPTF: Add new PCH FIVR methods (Mark Langsdorf) [1997697] - clk: x86: Rename clk-lpt to more specific clk-lpss-atom (Mark Langsdorf) [1997697] - ACPI: configfs: Make get_header() to return error pointer (Mark Langsdorf) [1997697] - ACPI: configfs: Use sysfs_emit() in "show" functions (Mark Langsdorf) [1997697] - ACPI: glue: Eliminate acpi_platform_notify() (Mark Langsdorf) [1997697] - ACPI: bus: Rename functions to avoid name collision (Mark Langsdorf) [1997697] - ACPI: glue: Change return type of two functions to void (Mark Langsdorf) [1997697] - ACPI: glue: Rearrange acpi_device_notify() (Mark Langsdorf) [1997697] - ACPI: Add LoongArch support for ACPI_PROCESSOR/ACPI_NUMA (Mark Langsdorf) [1997697] - ACPI / PMIC: XPower: optimize MIPI PMIQ sequence I2C-bus accesses (Mark Langsdorf) [1997697] - ACPI / PMIC: XPower: optimize I2C-bus accesses (Mark Langsdorf) [1997697] - stddef: Introduce DECLARE_FLEX_ARRAY() helper (Josef Oskera) [2062594] - Revert "iavf: Fix deadlock occurrence during resetting VF interface" (Ivan Vecera) [2066693] - scsi: core: Fix sbitmap depth in scsi_realloc_sdev_budget_map() (Ewan D. Milne) [2071831] - lib/sbitmap: allocate sb->map via kvzalloc_node (Ewan D. Milne) [2071831] - mm: move kvmalloc-related functions to slab.h (Ewan D. Milne) [2071831] - scsi: core: sd: Add silence_suspend flag to suppress some PM messages (Ewan D. Milne) [2071831] - scsi: scsi_transport_fc: Fix FPIN Link Integrity statistics counters (Ewan D. Milne) [2071831] - sd: call sd_zbc_release_disk before releasing the scsi_device reference (Ewan D. Milne) [2071831] - scsi: core: Reallocate device's budget map on queue depth change (Ewan D. Milne) [2071831] - scsi: sr: Don't use GFP_DMA (Ewan D. Milne) [2071831] - scsi: core: Fix scsi_device_max_queue_depth() (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix buffer size of REPORT ZONES command (Ewan D. Milne) [2071831] - scsi: sd_zbc: Clean up sd_zbc_parse_report() setting of wp (Ewan D. Milne) [2071831] - scsi: sd_zbc: Simplify zone full condition check (Ewan D. Milne) [2071831] - scsi: core: Show SCMD_LAST in text form (Ewan D. Milne) [2071831] - scsi: scsi_debug: Zero clear zones at reset write pointer (Ewan D. Milne) [2071831] - scsi: core: sysfs: Fix setting device state to SDEV_RUNNING (Ewan D. Milne) [2071831] - scsi: scsi_debug: Sanity check block descriptor length in resp_mode_select() (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix type in min_t to avoid stack OOB (Ewan D. Milne) [2071831] - scsi: core: Simplify control flow in scmd_eh_abort_handler() (Ewan D. Milne) [2071831] - scsi: core: sysfs: Fix hang when device state is set via sysfs (Ewan D. Milne) [2071831] - scsi: scsi_debug: Don't call kcalloc() if size arg is zero (Ewan D. Milne) [2071831] - scsi: sr: Remove duplicate assignment (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix out-of-bound read in resp_report_tgtpgs() (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix out-of-bound read in resp_readcap16() (Ewan D. Milne) [2071831] - scsi: sd: Print write through due to no caching mode page as warning (Ewan D. Milne) [2071831] - scsi: sd: Fix crashes in sd_resume_runtime() (Ewan D. Milne) [2071831] - scsi: core: Fix shost->cmd_per_lun calculation in scsi_add_host_with_dma() (Ewan D. Milne) [2071831] - scsi: core: Fix spelling in a source code comment (Ewan D. Milne) [2071831] - scsi: sd: Fix sd_do_mode_sense() buffer length handling (Ewan D. Milne) [2071831] - scsi: core: Fix scsi_mode_select() buffer length handling (Ewan D. Milne) [2071831] - scsi: core: Fix scsi_mode_sense() buffer length handling (Ewan D. Milne) [2071831] - scsi: core: Remove include from scsi_cmnd.h (Ewan D. Milne) [2071831] - scsi: sd_zbc: Support disks with more than 2**32 logical blocks (Ewan D. Milne) [2071831] - scsi: sd: Make sd_spinup_disk() less noisy (Ewan D. Milne) [2071831] - scsi: sr: Fix spelling mistake "does'nt" -> "doesn't" (Ewan D. Milne) [2071831] - scsi: sd_zbc: Ensure buffer size is aligned to SECTOR_SIZE (Ewan D. Milne) [2071831] - scsi: sd: Do not exit sd_spinup_disk() quietly (Ewan D. Milne) [2071831] - scsi: core: Add helper to return number of logical blocks in a request (Ewan D. Milne) [2071831] - scsi: scsi_debug: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: scsi_transport_spi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: scsi_transport_fc: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: sr: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: sd: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: core: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: core: Introduce the scsi_cmd_to_rq() function (Ewan D. Milne) [2071831] - scsi: core: Add BLIST_IGN_MEDIA_CHANGE for Ultra HS-SD/MMC USB card readers (Ewan D. Milne) [2071831] - scsi: sd: REQUEST SENSE for BLIST_IGN_MEDIA_CHANGE devices in runtime_resume() (Ewan D. Milne) [2071831] - scsi: core: Add new flag BLIST_IGN_MEDIA_CHANGE (Ewan D. Milne) [2071831] - scsi: scsi_debug: Improve RDPROTECT/WRPROTECT handling (Ewan D. Milne) [2071831] - scsi: scsi_debug: Remove dump_sector() (Ewan D. Milne) [2071831] - scsi: core: Add scsi_prot_ref_tag() helper (Ewan D. Milne) [2071831] - scsi: core: Add scsi_msg_to_host_byte() (Ewan D. Milne) [2071831] - scsi: core: Add get_{status,host}_byte() accessor functions (Ewan D. Milne) [2071831] - scsi: core: Cap scsi_host cmd_per_lun at can_queue (Ewan D. Milne) [2071831] - scsi: Fix spelling mistakes in header files (Ewan D. Milne) [2071831] - scsi: core: Treat device offline as a failure (Ewan D. Milne) [2071831] - sched/topology: Skip updating masks for non-online nodes (Diego Domingos) [1946251] - powerpc/numa: Update cpu_cpu_map on CPU online/offline (Diego Domingos) [1946251] - powerpc/numa: Print debug statements only when required (Diego Domingos) [1946251] - powerpc/numa: convert printk to pr_xxx (Diego Domingos) [1946251] - powerpc/numa: Drop dbg in favour of pr_debug (Diego Domingos) [1946251] - livepatch: Fix missing unlock on error in klp_enable_patch() (Julia Denham) [2069340] - livepatch: Fix kobject refcount bug on klp_init_patch_early failure path (Julia Denham) [2069340] - Documentation: livepatch: Add livepatch API page (Julia Denham) [2069340] - scsi: megaraid_sas: Remove unnecessary memset (Tomas Henzl) [2049686] - scsi: megaraid_sas: Target with invalid LUN ID is deleted during scan (Tomas Henzl) [2049686] - scsi: megasas: Clean up some inconsistent indenting (Tomas Henzl) [2049686] - scsi: megasas: Stop using the SCSI pointer (Tomas Henzl) [2049686] - aarch64: enable memory hotplug (Baoquan He) [1818517] - mm/memory_hotplug: introduce default dummy memory_add_physaddr_to_nid() (Baoquan He) [1818517] - arm64/mm: Add one hunk back missed in earlier back porting (Baoquan He) [1818517] - arm64/mm: Hold memory hotplug lock while walking for kernel page table dump (Baoquan He) [1818517] - ARM64: dump: Convert to use DEFINE_SHOW_ATTRIBUTE macro (Baoquan He) [1818517] - net/mlx5: DR, Ignore modify TTL on RX if device doesn't support it (Amir Tzin) [2072934] - net: bridge: switchdev: check br_vlan_group() return value (Ivan Vecera) [2080332] - net: bridge: mst: Restrict info size queries to bridge ports (Ivan Vecera) [2080332] - net: bridge: mst: prevent NULL deref in br_mst_info_size() (Ivan Vecera) [2080332] - selftests: forwarding: Use same VRF for port and VLAN upper (Ivan Vecera) [2080332] - selftests: forwarding: Disable learning before link up (Ivan Vecera) [2080332] - net: bridge: mst: Add helper to query a port's MST state (Ivan Vecera) [2080332] - net: bridge: mst: Add helper to check if MST is enabled (Ivan Vecera) [2080332] - net: bridge: mst: Add helper to map an MSTI to a VID set (Ivan Vecera) [2080332] - net: bridge: mst: Notify switchdev drivers of MST state changes (Ivan Vecera) [2080332] - net: bridge: mst: Notify switchdev drivers of VLAN MSTI migrations (Ivan Vecera) [2080332] - net: bridge: mst: Notify switchdev drivers of MST mode changes (Ivan Vecera) [2080332] - net: bridge: mst: Support setting and reporting MST port states (Ivan Vecera) [2080332] - net: bridge: mst: Allow changing a VLAN's MSTI (Ivan Vecera) [2080332] - net: bridge: mst: Multiple Spanning Tree (MST) mode (Ivan Vecera) [2080332] - net: switchdev: remove lag_mod_cb from switchdev_handle_fdb_event_to_device (Ivan Vecera) [2080332] - selftests: forwarding: tests of locked port feature (Ivan Vecera) [2080332] - net: bridge: Add support for offloading of locked port flag (Ivan Vecera) [2080332] - net: bridge: Add support for bridge port in locked mode (Ivan Vecera) [2080332] - net: switchdev: avoid infinite recursion from LAG to bridge with port object handler (Ivan Vecera) [2080332] - bridge: switch br_net_exit to batch mode (Ivan Vecera) [2080332] - net: bridge: multicast: notify switchdev driver whenever MC processing gets disabled (Ivan Vecera) [2080332] - net: switchdev: introduce switchdev_handle_port_obj_{add,del} for foreign interfaces (Ivan Vecera) [2080332] - net: switchdev: rename switchdev_lower_dev_find to switchdev_lower_dev_find_rcu (Ivan Vecera) [2080332] - net: bridge: switchdev: replay all VLAN groups (Ivan Vecera) [2080332] - net: bridge: make nbp_switchdev_unsync_objs() follow reverse order of sync() (Ivan Vecera) [2080332] - net: bridge: switchdev: differentiate new VLANs from changed ones (Ivan Vecera) [2080332] - net: bridge: vlan: notify switchdev only when something changed (Ivan Vecera) [2080332] - net: bridge: vlan: make __vlan_add_flags react only to PVID and UNTAGGED (Ivan Vecera) [2080332] - net: bridge: vlan: don't notify to switchdev master VLANs without BRENTRY flag (Ivan Vecera) [2080332] - net: bridge: vlan: check early for lack of BRENTRY flag in br_vlan_add_existing (Ivan Vecera) [2080332] - net: bridge: vlan: check for errors from __vlan_del in __vlan_flush (Ivan Vecera) [2080332] - net/switchdev: use struct_size over open coded arithmetic (Ivan Vecera) [2080332] - net: bridge: vlan: fix single net device option dumping (Ivan Vecera) [2080332] - net: bridge: mcast: fix br_multicast_ctx_vlan_global_disabled helper (Ivan Vecera) [2080332] - net: bridge: mcast: add and enforce startup query interval minimum (Ivan Vecera) [2080332] - net: bridge: mcast: add and enforce query interval minimum (Ivan Vecera) [2080332] - netfilter: bridge: add support for pppoe filtering (Ivan Vecera) [2080332] - bridge: use __set_bit in __br_vlan_set_default_pvid (Ivan Vecera) [2080332] - net: bridge: Allow base 16 inputs in sysfs (Ivan Vecera) [2080332] - net/bridge: replace simple_strtoul to kstrtol (Ivan Vecera) [2080332] - net: bridge: Slightly optimize 'find_portno()' (Ivan Vecera) [2080332] - net: bridge: switchdev: fix shim definition for br_switchdev_mdb_notify (Ivan Vecera) [2080332] - net: bridge: switchdev: consistent function naming (Ivan Vecera) [2080332] - net: bridge: mdb: move all switchdev logic to br_switchdev.c (Ivan Vecera) [2080332] - net: bridge: split out the switchdev portion of br_mdb_notify (Ivan Vecera) [2080332] - net: bridge: move br_vlan_replay to br_switchdev.c (Ivan Vecera) [2080332] - net: bridge: provide shim definition for br_vlan_flags (Ivan Vecera) [2080332] - net: switchdev: merge switchdev_handle_fdb_{add,del}_to_device (Ivan Vecera) [2080332] - net: bridge: create a common function for populating switchdev FDB entries (Ivan Vecera) [2080332] - net: bridge: move br_fdb_replay inside br_switchdev.c (Ivan Vecera) [2080332] - net: bridge: reduce indentation level in fdb_create (Ivan Vecera) [2080332] - net: bridge: rename br_fdb_insert to br_fdb_add_local (Ivan Vecera) [2080332] - net: bridge: rename fdb_insert to fdb_add_local (Ivan Vecera) [2080332] - net: bridge: remove fdb_insert forward declaration (Ivan Vecera) [2080332] - net: bridge: remove fdb_notify forward declaration (Ivan Vecera) [2080332] - net: make use of helper netif_is_bridge_master() (Ivan Vecera) [2080332] - net: use eth_hw_addr_set() (Ivan Vecera) [2080332] - net: bridge: Use array_size() helper in copy_to_user() (Ivan Vecera) [2080332] - net/mlx5: DR, Fix missing flow_source when creating multi-destination FW table (Amir Tzin) [2072920] - net/mlx5: DR, Fix slab-out-of-bounds in mlx5_cmd_dr_create_fte (Amir Tzin) [2072920] - ixgbevf: Require large buffers for build_skb on 82599VF (Ken Cox) [2037956] - ixgbevf: Remove useless DMA-32 fallback configuration (Ken Cox) [2037956] - ixgbevf: switch to napi_build_skb() (Ken Cox) [2037956] - ixgbevf: Add support for new mailbox communication between PF and VF (Ken Cox) [2037956] - ixgbevf: Mailbox improvements (Ken Cox) [2037956] - ixgbevf: Add legacy suffix to old API mailbox functions (Ken Cox) [2037956] - ixgbevf: Improve error handling in mailbox (Ken Cox) [2037956] - ixgbevf: Rename MSGTYPE to SUCCESS and FAILURE (Ken Cox) [2037956] - net: ixgbevf: Remove redundant initialization of variable ret_val (Ken Cox) [2037956] - selftests: mptcp: fix diag instability (Hangbin Liu) [2077358] - selftests: mptcp: fix ipv6 routing setup (Hangbin Liu) [2077358] - selftests: mptcp: clean tmp files in simult_flows (Hangbin Liu) [2077358] - selftests: netfilter: fix exit value for nft_concat_range (Hangbin Liu) [2077358] - selftests: netfilter: remove stray bash debug line (Hangbin Liu) [2077358] - selftests: Fix IPv6 address bind tests (Hangbin Liu) [2077358] - selftests: Fix raw socket bind tests with VRF (Hangbin Liu) [2077358] - selftests: net: Correct case name (Hangbin Liu) [2077358] - selftests: pmtu.sh: Kill nettest processes launched in subshell. (Hangbin Liu) [2077358] - selftests: pmtu.sh: Kill tcpdump processes launched by subshell. (Hangbin Liu) [2077358] - selftests: net: Fix a typo in udpgro_fwd.sh (Hangbin Liu) [2077358] - selftests/net: udpgso_bench_tx: fix dst ip argument (Hangbin Liu) [2077358] - selftests/net: udpgso_bench_rx: fix port argument (Hangbin Liu) [2077358] - selftests: net: tls: remove unused variable and code (Hangbin Liu) [2077358] - selftest: net: fix typo in altname test (Hangbin Liu) [2077358]- net/mlx5: DR, Fix the threshold that defines when pool sync is initiated (Amir Tzin) [2062715] - net/mlx5: DR, Cache STE shadow memory (Amir Tzin) [2062715] - perf/x86/intel/lbr: Add static_branch for LBR INFO flags (Michael Petlan) [2039998] - perf/x86/intel/lbr: Support LBR format V7 (Michael Petlan) [2039998] - net/mlx5e: TC, fix decap fallback to uplink when int port not supported (Amir Tzin) [2077048] - net/mlx5e: Fix wrong source vport matching on tunnel rule (Amir Tzin) [2064589] - hv_balloon: rate-limit "Unhandled message" warning (Vitaly Kuznetsov) [2087270] - tcp: drop the hash_32() part from the index calculation (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: increase source port perturb table to 2^16 (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: dynamically allocate the perturb table used by source ports (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: add small random increments to the source port (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: resalt the secret every 10 seconds (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: use different parts of the port_offset for index and offset (Guillaume Nault) [2064876] {CVE-2022-1012} - secure_seq: use the 64 bits of the siphash for port offset calculation (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: add some entropy in __inet_hash_connect() (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: change source port randomizarion at connect() time (Guillaume Nault) [2064876] {CVE-2022-1012} - net/mlx5e: TC, Skip redundant ct clear actions (Amir Tzin) [2055590] - spi: pxa2xx: Add support for Intel Raptor Lake PCH-S (Prarit Bhargava) [2040031] - mfd: intel-lpss: Add Intel Raptor Lake PCH-S PCI IDs (Prarit Bhargava) [2040031] - pinctrl: alderlake: Add Raptor Lake-S ACPI ID (Prarit Bhargava) [2040033] - i2c: i801: Add support for Intel Raptor Lake PCH-S (Prarit Bhargava) [2040027 2040029] - redhat/configs: Add CONFIG_INTEL_IDXD_PERFMON (Jerry Snitselaar) [1921296] - x86/fpu/xstate: Consolidate size calculations (Jerry Snitselaar) [2071461] - x86/fpu/xstate: Handle supervisor states in XSTATE permissions (Jerry Snitselaar) [2071461] - x86/fpu/xsave: Handle compacted offsets correctly with supervisor states (Jerry Snitselaar) [2071461] - x86/fpu: Cache xfeature flags from CPUID (Jerry Snitselaar) [2071461] - x86/fpu/xsave: Initialize offset/size cache early (Jerry Snitselaar) [2071461] - x86/fpu: Remove unused supervisor only offsets (Jerry Snitselaar) [2071461] - dmaengine: idxd: Change license on idxd.h to LGPL (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix delta_rec and crc size field for completion record (Jerry Snitselaar) [1971892] - dmaengine: idxd: Remove useless DMA-32 fallback configuration (Jerry Snitselaar) [2072156] - dmaengine: idxd: restore traffic class defaults after wq reset (Jerry Snitselaar) [2046469] - dmaengine: idxd: deprecate token sysfs attributes for read buffers (Jerry Snitselaar) [2040042] - dmaengine: idxd: change bandwidth token to read buffers (Jerry Snitselaar) [2040042] - dmaengine: idxd: fix wq settings post wq disable (Jerry Snitselaar) [2040045] - dmaengine: idxd: change MSIX allocation based on per wq activation (Jerry Snitselaar) [2040495] - edmaengine: idxd: fix descriptor flushing locking (Jerry Snitselaar) [2040495] - dmaengine: idxd: embed irq_entry in idxd_wq struct (Jerry Snitselaar) [2040495] - dmaengine: idxd: fix calling wq quiesce inside spinlock (Jerry Snitselaar) [2040040] - dmaengine: idxd: add knob for enqcmds retries (Jerry Snitselaar) [2040047] - dmaengine: idxd: set defaults for wq configs (Jerry Snitselaar) [2040047] - dmaengine: idxd: handle interrupt handle revoked event (Jerry Snitselaar) [2040051] - dmaengine: idxd: handle invalid interrupt handle descriptors (Jerry Snitselaar) [2040051] - dmaengine: idxd: create locked version of idxd_quiesce() call (Jerry Snitselaar) [2040051] - dmaengine: idxd: add helper for per interrupt handle drain (Jerry Snitselaar) [2040051] - dmaengine: idxd: move interrupt handle assignment (Jerry Snitselaar) [2040051] - dmaengine: idxd: int handle management refactoring (Jerry Snitselaar) [2040051] - dmaengine: idxd: rework descriptor free path on failure (Jerry Snitselaar) [2040051] - dmaengine: idxd: fix missed completion on abort path (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix resource leak on dmaengine driver disable (Jerry Snitselaar) [2040040] - dmaengine: idxd: cleanup completion record allocation (Jerry Snitselaar) [2040040] - dmaengine: idxd: reconfig device after device reset command (Jerry Snitselaar) [2072156] - dmaengine: idxd: add halt interrupt support (Jerry Snitselaar) [2040047] - dmaengine: idxd: Use list_move_tail instead of list_del/list_add_tail (Jerry Snitselaar) [2072156] - dmanegine: idxd: fix resource free ordering on driver removal (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove kernel wq type set when load configuration (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove gen cap field per spec 1.2 update (Jerry Snitselaar) [2040040] - dmaengine: idxd: check GENCAP config support for gencfg register (Jerry Snitselaar) [2040040] - dmaengine: idxd: move out percpu_ref_exit() to ensure it's outside submission (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove interrupt disable for dev_lock (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove interrupt disable for cmd_lock (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix setting up priv mode for dwq (Jerry Snitselaar) [2040040] - dmaengine: idxd: set descriptor allocation size to threshold for swq (Jerry Snitselaar) [2040040] - dmaengine: idxd: make submit failure path consistent on desc freeing (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove interrupt flag for completion list spinlock (Jerry Snitselaar) [2040040] - dmaengine: idxd: make I/O interrupt handler one shot (Jerry Snitselaar) [2040040] - dmaengine: idxd: clear block on fault flag when clear wq (Jerry Snitselaar) [2040040] - dmaengine: idxd: add capability check for 'block on fault' attribute (Jerry Snitselaar) [2040040] - dmaengine: idxd: Remove unused status variable in irq_process_work_list() (Jerry Snitselaar) [2072156] - dmaengine: idxd: Fix a possible NULL pointer dereference (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix abort status check (Jerry Snitselaar) [2040040] - dmanegine: idxd: add software command status (Jerry Snitselaar) [2040047] - dmaengine: idxd: rotate portal address for better performance (Jerry Snitselaar) [2040047] - dmaengine: idxd: fix wq slot allocation index check (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix uninit var for alt_drv (Jerry Snitselaar) [2072156] - dmaengine: idxd: Set defaults for GRPCFG traffic class (Jerry Snitselaar) [2040047] - dmaengine: idxd: remove fault processing code (Jerry Snitselaar) [2040040] - dmaengine: idxd: move dsa_drv support to compatible mode (Jerry Snitselaar) [1971961] - dmaengine: dsa: move dsa_bus_type out of idxd driver to standalone (Jerry Snitselaar) [1971961] - dmaengine: idxd: create user driver for wq 'device' (Jerry Snitselaar) [1971961] - dmaengine: idxd: create dmaengine driver for wq 'device' (Jerry Snitselaar) [1971961] - dmaengine: idxd: create idxd_device sub-driver (Jerry Snitselaar) [1971961] - dmaengine: idxd: add type to driver in order to allow device matching (Jerry Snitselaar) [1971961] - dmanegine: idxd: open code the dsa_drv registration (Jerry Snitselaar) [1971961] - dmaengine: idxd: idxd: move remove() bits for idxd 'struct device' to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: move probe() bits for idxd 'struct device' to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: fix bus_probe() and bus_remove() for dsa_bus (Jerry Snitselaar) [1971961] - dmaengine: idxd: remove iax_bus_type prototype (Jerry Snitselaar) [1971961] - dmaengine: idxd: remove bus shutdown (Jerry Snitselaar) [1971961] - dmaengine: idxd: move wq_disable() to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: move wq_enable() to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: remove IDXD_DEV_CONF_READY (Jerry Snitselaar) [1971961] - dmaengine: idxd: add 'struct idxd_dev' as wrapper for conf_dev (Jerry Snitselaar) [1971961] - dmaengine: idxd: add driver name (Jerry Snitselaar) [1971961] - dmaengine: idxd: add driver register helper (Jerry Snitselaar) [1971961] - dmaengine: idxd: depends on !UML (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix PCI_MSI build errors (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix submission race window (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix sequence for pci driver remove() and shutdown() (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix setup sequence for MSIXPERM table (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix array index when int_handles are being used (Jerry Snitselaar) [2040040] - dmaengine: idxd: assign MSIX vectors to each WQ rather than roundrobin (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix desc->vector that isn't being updated (Jerry Snitselaar) [2040040] - dmaengine: idxd: add missing percpu ref put on failure (Jerry Snitselaar) [2072156] - dmaengine: idxd: have command status always set (Jerry Snitselaar) [1973882] - dmanegine: idxd: cleanup all device related bits after disabling device (Jerry Snitselaar) [2072156] - dmaengine: idxd: Simplify code and axe the use of a deprecated API (Jerry Snitselaar) [2072156] - dmaengine: idxd: remove devm allocation for idxd->int_handles (Jerry Snitselaar) [2072156] - dmaengine: idxd: Remove redundant variable cdev_ctx (Jerry Snitselaar) [2072156] - dmaengine: idxd: Add missing cleanup for early error out in probe call (Jerry Snitselaar) [1971892] - dmaengine: idxd: Enable IDXD performance monitor support (Jerry Snitselaar) [1921296] - dmaengine: idxd: Add IDXD performance monitor support (Jerry Snitselaar) [1921296] - dmaengine: idxd: device cmd should use dedicated lock (Jerry Snitselaar) [1971892] - dmaengine: idxd: support reporting of halt interrupt (Jerry Snitselaar) [1971890] - dmaengine: idxd: convert sprintf() to sysfs_emit() for all usages (Jerry Snitselaar) [1971890] - dmaengine: idxd: add interrupt handle request and release support (Jerry Snitselaar) [1971890] - dmaengine: idxd: add support for readonly config mode (Jerry Snitselaar) [1971890] - dmaengine: idxd: add percpu_ref to descriptor submission path (Jerry Snitselaar) [1971949] - dmaengine: idxd: remove detection of device type (Jerry Snitselaar) [1971963] - Documentation/x86: Update documentation for SVA (Shared Virtual Addressing) (Jerry Snitselaar) [2071461] - tools/objtool: Check for use of the ENQCMD instruction in the kernel (Jerry Snitselaar) [2071461] - x86/cpufeatures: Re-enable ENQCMD (Jerry Snitselaar) [2071461] - x86/traps: Demand-populate PASID MSR via #GP (Jerry Snitselaar) [2071461] - sched: Define and initialize a flag to identify valid PASID in the task (Jerry Snitselaar) [2071461] - x86/fpu: Clear PASID when copying fpstate (Jerry Snitselaar) [2071461] - iommu/sva: Assign a PASID to mm on PASID allocation and free it on mm exit (Jerry Snitselaar) [2071461] - iommu/ioasid: Introduce a helper to check for valid PASIDs (Jerry Snitselaar) [2071461] - kernel/fork: Initialize mm's PASID (Jerry Snitselaar) [2071461] - mm: Change CONFIG option for mm->pasid field (Jerry Snitselaar) [2071461] - mm/fork: clear PASID for new mm (Jerry Snitselaar) [2071461] - iommu/sva: Rename CONFIG_IOMMU_SVA_LIB to CONFIG_IOMMU_SVA (Jerry Snitselaar) [2071461] - turbostat: fix PC6 displaying on some systems (Steve Best) [2040078]- quota: make dquot_quota_sync return errors from ->sync_fs (Lukas Czerner) [2083057] - redhat: disable more noisy rpminspect tests (Jarod Wilson) - mm: thp: replace the page lock with the seqlock for the THP mapcount (Andrea Arcangeli) [1958020] - mm: do_wp_page: deduplicate smart_lock_page (Andrea Arcangeli) [1958020] - mm: hugetlbfs: gup_must_unshare() cleanup (Andrea Arcangeli) [1958020] - mm: GUP: cleanup FOLL_UNSHARE (Andrea Arcangeli) [1958020] - mm: COW: skip the page lock in the COW copy path (Andrea Arcangeli) [1958020] - mm: gup: gup_must_unshare() use can_read_pin_swap_page() (Andrea Arcangeli) [1958020] - mm: hugetlbfs: gup: gup_must_unshare(): enable hugetlbfs (Andrea Arcangeli) [1958020] - mm: hugetlbfs: FOLL_FAULT_UNSHARE (Andrea Arcangeli) [1958020] - mm: hugetlbfs: COR: copy-on-read fault (Andrea Arcangeli) [1958020] - mm: gup: FOLL_UNSHARE RHEL (Andrea Arcangeli) [1958020] - mm: gup: FOLL_NOUNSHARE: optimize follow_page (Andrea Arcangeli) [1958020] - mm: gup: FOLL_UNSHARE (Andrea Arcangeli) [1958020] - mm: gup: gup_must_unshare() (Andrea Arcangeli) [1958020] - mm: gup: COR: copy-on-read fault (Andrea Arcangeli) [1958020] - mm: thp: introduce page_trans_huge_anon_shared (Andrea Arcangeli) [1958020] - mm: thp: stabilize the THP mapcount in page_remove_anon_compound_rmap (Andrea Arcangeli) [1958020] - mm: thp: make the THP mapcount atomic with a seqlock (Andrea Arcangeli) [1958020] - mm: thp: consolidate mapcount logic on THP split (David Hildenbrand) [1958020] - vmxnet3: Remove useless DMA-32 fallback configuration (Kamal Heib) [2083561] - vmxnet3: fix minimum vectors alloc issue (Kamal Heib) [2083561] - net: vmxnet3: remove multiple false checks in vmxnet3_ethtool.c (Kamal Heib) [2083561] - vmxnet3: do not stop tx queues after netif_device_detach() (Kamal Heib) [2083561] - block: limit request dispatch loop duration (Ming Lei) [2005082] - esp: limit skb_page_frag_refill use to a single page (Sabrina Dubroca) [2062115] {CVE-2022-27666} - esp: Fix possible buffer overflow in ESP transformation (Sabrina Dubroca) [2062115] {CVE-2022-27666} - can: ems_usb: ems_usb_start_xmit(): fix double dev_kfree_skb() in error path (Chris von Recklinghausen) [2080376] {CVE-2022-28390} - NFSD: Deprecate NFS_OFFSET_MAX (Scott Mayhew) [2064216] - NFSD: Fix offset type in I/O trace points (Scott Mayhew) [2064216] - NFSD: COMMIT operations must not return NFS?ERR_INVAL (Scott Mayhew) [2064216] - NFSD: Clamp WRITE offsets (Scott Mayhew) [2064216] - NFSD: Fix NFSv3 SETATTR/CREATE's handling of large file sizes (Scott Mayhew) [2064216] - NFSD: Fix ia_size underflow (Scott Mayhew) [2064216] - NFSD: Fix the behavior of READ near OFFSET_MAX (Scott Mayhew) [2064216] - NFSD: Fix READDIR buffer overflow (Scott Mayhew) [2064216] - nfsd: Fix nsfd startup race (again) (Scott Mayhew) [2064216] - NFS: Add a tracepoint to show the results of nfs_set_cache_invalid() (Scott Mayhew) [2064216] - NFSv42: Don't fail clone() unless the OP_CLONE operation failed (Scott Mayhew) [2064216] - NFSD: Fix exposure in nfsd4_decode_bitmap() (Scott Mayhew) [2064216] - NFSv4: Sanity check the parameters in nfs41_update_target_slotid() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from decode_getattr_*() functions (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_setsecurity (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_fhget() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_add_or_obtain() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_instantiate() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs_setattrres (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_getattr_res (Scott Mayhew) [2064216] - NFS: Remove the f_label from the nfs4_opendata and nfs_openres (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_lookupp_res struct (Scott Mayhew) [2064216] - NFS: Remove the label from the nfs4_lookup_res struct (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_link_res struct (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_create_res struct (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs_entry struct (Scott Mayhew) [2064216] - NFS: Create a new nfs_alloc_fattr_with_label() function (Scott Mayhew) [2064216] - NFS: Always initialise fattr->label in nfs_fattr_alloc() (Scott Mayhew) [2064216] - NFSv4: Remove unnecessary 'minor version' check (Scott Mayhew) [2064216] - NFSv4: Fix potential Oops in decode_op_map() (Scott Mayhew) [2064216] - NFSv4: Ensure decode_compound_hdr() sanity checks the tag (Scott Mayhew) [2064216] - NFS: Don't trace an uninitialised value (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to OFFLOAD_CANCEL (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to CB_OFFLOAD (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to CLONE (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to COPY (Scott Mayhew) [2064216] - NFSv4.2 add tracepoints to FALLOCATE and DEALLOCATE (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to SEEK (Scott Mayhew) [2064216] - nfs4: take a reference on the nfs_client when running FREE_STATEID (Scott Mayhew) [2064216] - NFS: Move NFS protocol display macros to global header (Scott Mayhew) [2064216] - NFS: Move generic FS show macros to global header (Scott Mayhew) [2064216] - SUNRPC: Clean up xs_tcp_setup_sock() (Scott Mayhew) [2064216] - NFSv4: Fix a regression in nfs_set_open_stateid_locked() (Scott Mayhew) [2064216] - NFS: Remove redundant call to __set_page_dirty_nobuffers (Scott Mayhew) [2064216] - NFS: Unexport nfs_probe_fsinfo() (Scott Mayhew) [2064216] - NFS: Call nfs_probe_server() during a fscontext-reconfigure event (Scott Mayhew) [2064216] - NFS: Replace calls to nfs_probe_fsinfo() with nfs_probe_server() (Scott Mayhew) [2064216] - NFS: Move nfs_probe_destination() into the generic client (Scott Mayhew) [2064216] - NFS: Create an nfs4_server_set_init_caps() function (Scott Mayhew) [2064216] - NFS: Remove --> and <-- dprintk call sites (Scott Mayhew) [2064216] - SUNRPC: Trace calls to .rpc_call_done (Scott Mayhew) [2064216] - NFS: Replace dprintk callsites in nfs_readpage(s) (Scott Mayhew) [2064216] - SUNRPC: Use BIT() macro in rpc_show_xprt_state() (Scott Mayhew) [2064216] - SUNRPC: Tracepoints should display tk_pid and cl_clid as a fixed-size field (Scott Mayhew) [2064216] - xprtrdma: Remove rpcrdma_ep::re_implicit_roundup (Scott Mayhew) [2064216] - xprtrdma: Provide a buffer to pad Write chunks of unaligned length (Scott Mayhew) [2064216] - Fix user namespace leak (Scott Mayhew) [2064216] - NFS: Save some space in the inode (Scott Mayhew) [2064216] - NFS: Fix WARN_ON due to unionization of nfs_inode.nrequests (Scott Mayhew) [2064216] - NFSv4: Fixes for nfs4_inode_return_delegation() (Scott Mayhew) [2064216] - NFS: Fix an Oops in pnfs_mark_request_commit() (Scott Mayhew) [2064216] - NFS: Fix up commit deadlocks (Scott Mayhew) [2064216] - NFSD:fix boolreturn.cocci warning (Scott Mayhew) [2064216] - nfsd: update create verifier comment (Scott Mayhew) [2064216] - SUNRPC: Change return value type of .pc_encode (Scott Mayhew) [2064216] - SUNRPC: Replace the "__be32 *p" parameter to .pc_encode (Scott Mayhew) [2064216] - NFSD: Save location of NFSv4 COMPOUND status (Scott Mayhew) [2064216] - SUNRPC: Change return value type of .pc_decode (Scott Mayhew) [2064216] - SUNRPC: Replace the "__be32 *p" parameter to .pc_decode (Scott Mayhew) [2064216] - SUNRPC: De-duplicate .pc_release() call sites (Scott Mayhew) [2064216] - SUNRPC: Simplify the SVC dispatch code path (Scott Mayhew) [2064216] - NFS: Fix deadlocks in nfs_scan_commit_list() (Scott Mayhew) [2064216] - NFS: Instrument i_size_write() (Scott Mayhew) [2064216] - SUNRPC: Per-rpc_clnt task PIDs (Scott Mayhew) [2064216] - NFS: Remove unnecessary TRACE_DEFINE_ENUM()s (Scott Mayhew) [2064216] - SUNRPC: Capture value of xdr_buf::page_base (Scott Mayhew) [2064216] - svcrdma: Split svcrmda_wc_{read,write} tracepoints (Scott Mayhew) [2064216] - svcrdma: Split the svcrdma_wc_send() tracepoint (Scott Mayhew) [2064216] - svcrdma: Split the svcrdma_wc_receive() tracepoint (Scott Mayhew) [2064216] - pnfs/flexfiles: Fix misplaced barrier in nfs4_ff_layout_prepare_ds (Scott Mayhew) [2064216] - NFS: Remove unnecessary page cache invalidations (Scott Mayhew) [2064216] - NFS: Fix dentry verifier races (Scott Mayhew) [2064216] - NFS: Further optimisations for 'ls -l' (Scott Mayhew) [2064216] - NFS: Fix up nfs_readdir_inode_mapping_valid() (Scott Mayhew) [2064216] - NFS: Ignore the directory size when marking for revalidation (Scott Mayhew) [2064216] - NFS: Don't set NFS_INO_DATA_INVAL_DEFER and NFS_INO_INVALID_DATA (Scott Mayhew) [2064216] - NFS: Default change_attr_type to NFS4_CHANGE_TYPE_IS_UNDEFINED (Scott Mayhew) [2064216] - NFSv4: Retrieve ACCESS on open if we're not using NFS4_CREATE_EXCLUSIVE (Scott Mayhew) [2064216] - NFS: Fix a few more clear_bit() instances that need release semantics (Scott Mayhew) [2064216] - SUNRPC: xprt_clear_locked() only needs release memory semantics (Scott Mayhew) [2064216] - SUNRPC: Remove unnecessary memory barriers (Scott Mayhew) [2064216] - SUNRPC: Remove WQ_HIGHPRI from xprtiod (Scott Mayhew) [2064216] - SUNRPC: Add cond_resched() at the appropriate point in __rpc_execute() (Scott Mayhew) [2064216] - SUNRPC: Partial revert of commit 6f9f17287e78 (Scott Mayhew) [2064216] - NFS: Fix up nfs_ctx_key_to_expire() (Scott Mayhew) [2064216] - NFS: Label the dentry with a verifier in nfs_rmdir() and nfs_unlink() (Scott Mayhew) [2064216] - NFS: Label the dentry with a verifier in nfs_link(), nfs_symlink() (Scott Mayhew) [2064216] - NFSD: Have legacy NFSD WRITE decoders use xdr_stream_subsegment() (Scott Mayhew) [2064216] - SUNRPC: xdr_stream_subsegment() must handle non-zero page_bases (Scott Mayhew) [2064216] - NFSD: simplify struct nfsfh (Scott Mayhew) [2064216] - NFSD: drop support for ancient filehandles (Scott Mayhew) [2064216] - NFSD: move filehandle format declarations out of "uapi". (Scott Mayhew) [2064216] - UNRPC: Return specific error code on kmalloc failure (Scott Mayhew) [2064216] - NFSD: Optimize DRC bucket pruning (Scott Mayhew) [2064216] - nfsd: don't alloc under spinlock in rpc_parse_scope_id (Scott Mayhew) [2064216] - NFSD: Keep existing listeners on portlist error (Scott Mayhew) [2064216] - nfs: Fix kerneldoc warning shown up by W=1 (Scott Mayhew) [2064216] - nfsd: back channel stuck in SEQ4_STATUS_CB_PATH_DOWN (Scott Mayhew) [2064216] - NLM: Fix svcxdr_encode_owner() (Scott Mayhew) [2064216] - SUNRPC: improve error response to over-size gss credential (Scott Mayhew) [2064216] - NFS: Always provide aligned buffers to the RPC read layers (Scott Mayhew) [2064216] - NFSv3: Delete duplicate judgement in nfs3_async_handle_jukebox (Scott Mayhew) [2064216] - SUNRPC: Tweak TCP socket shutdown in the RPC client (Scott Mayhew) [2064216] - svcrdma: xpt_bc_xprt is already clear in __svc_rdma_free() (Scott Mayhew) [2064216] - rpc: fix gss_svc_init cleanup on failure (Scott Mayhew) [2064216] - SUNRPC: Add RPC_AUTH_TLS protocol numbers (Scott Mayhew) [2064216] - NFSD: remove vanity comments (Scott Mayhew) [2064216] - svcrdma: Convert rdma->sc_rw_ctxts to llist (Scott Mayhew) [2064216] - svcrdma: Relieve contention on sc_send_lock. (Scott Mayhew) [2064216] - svcrdma: Fewer calls to wake_up() in Send completion handler (Scott Mayhew) [2064216] - NFSD: Use new __string_len C macros for nfsd_clid_class (Scott Mayhew) [2064216] - NFSD: Use new __string_len C macros for the nfs_dirent tracepoint (Scott Mayhew) [2064216] - tracing: Add trace_event helper macros __string_len() and __assign_str_len() (Scott Mayhew) [2064216] - NFSD: Clean up splice actor (Scott Mayhew) [2064216] - NFS: Clean up the synopsis of callback process_op() (Scott Mayhew) [2064216] - NFS: Extract the xdr_init_encode/decode() calls from decode_compound (Scott Mayhew) [2064216] - NFS: Remove unused callback void decoder (Scott Mayhew) [2064216] - NFS: Add a private local dispatcher for NFSv4 callback operations (Scott Mayhew) [2064216] - SUNRPC: Eliminate the RQ_AUTHERR flag (Scott Mayhew) [2064216] - SUNRPC: Set rq_auth_stat in the pg_authenticate() callout (Scott Mayhew) [2064216] - SUNRPC: Add svc_rqst::rq_auth_stat (Scott Mayhew) [2064216] - NFSv4/pNFS: Remove dead code (Scott Mayhew) [2064216] - SUNRPC: Convert rpc_client refcount to use refcount_t (Scott Mayhew) [2064216] - xprtrdma: Eliminate rpcrdma_post_sends() (Scott Mayhew) [2064216] - xprtrdma: Add an xprtrdma_post_send_err tracepoint (Scott Mayhew) [2064216] - xprtrdma: Add xprtrdma_post_recvs_err() tracepoint (Scott Mayhew) [2064216] - xprtrdma: Add an rpcrdma_mr_completion_class (Scott Mayhew) [2064216] - xprtrdma: Don't display r_xprt memory addresses in tracepoints (Scott Mayhew) [2064216] - xprtrdma: Disconnect after an ib_post_send() immediate error (Scott Mayhew) [2064216] - SUNRPC: Record timeout value in xprt_retransmit tracepoint (Scott Mayhew) [2064216] - SUNRPC: xprt_retransmit() displays the the NULL procedure incorrectly (Scott Mayhew) [2064216] - treewide: Add missing semicolons to __assign_str uses (Scott Mayhew) [2064216] - SUNRPC: Remove unneeded TRACE_DEFINE_ENUMs (Scott Mayhew) [2064216] - SUNRPC: Unset RPC_TASK_NO_RETRANS_TIMEOUT for NULL RPCs (Scott Mayhew) [2064216] - SUNRPC: Refactor rpc_ping() (Scott Mayhew) [2064216] - nfsd: fix NULL dereference in nfs3svc_encode_getaclres (Scott Mayhew) [2064216] - lockd: Update the NLMv4 SHARE results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 nlm_res results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 TEST results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 void results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 FREE_ALL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 SHARE arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 SM_NOTIFY arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 nlm_res arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 UNLOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 CANCEL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 LOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 TEST arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 void arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 SHARE results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 nlm_res results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 TEST results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 void results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 FREE_ALL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 SHARE arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 SM_NOTIFY arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 nlm_res arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 UNLOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 CANCEL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 LOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 TEST arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 void argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Common NLM XDR helpers (Scott Mayhew) [2064216] - lockd: Create a simplified .vs_dispatch method for NLM requests (Scott Mayhew) [2064216] - lockd: Remove stale comments (Scott Mayhew) [2064216] - nfsd: rpc_peeraddr2str needs rcu lock (Scott Mayhew) [2064216] - rpc: remove redundant initialization of variable status (Scott Mayhew) [2064216] - NFSv4: setlease should return EAGAIN if locks are not available (Scott Mayhew) [2064216] - NFS: Avoid duplicate resets of attribute cache timeouts (Scott Mayhew) [2064216] - NFSv4: Fix handling of non-atomic change attrbute updates (Scott Mayhew) [2064216] - NFS: Fix up inode attribute revalidation timeouts (Scott Mayhew) [2064216] - NFSv4: Add support for application leases underpinned by a delegation (Scott Mayhew) [2064216] - NFSv4: Add lease breakpoints in case of a delegation recall or return (Scott Mayhew) [2064216] - NFSv4: Fix delegation return in cases where we have to retry (Scott Mayhew) [2064216] - nfsd: move some commit_metadata()s outside the inode lock (Scott Mayhew) [2064216] - NFSD: Update nfsd_cb_args tracepoint (Scott Mayhew) [2064216] - NFSD: Remove the nfsd_cb_work and nfsd_cb_done tracepoints (Scott Mayhew) [2064216] - NFSD: Add an nfsd_cb_probe tracepoint (Scott Mayhew) [2064216] - NFSD: Replace the nfsd_deleg_break tracepoint (Scott Mayhew) [2064216] - NFSD: Add an nfsd_cb_offload tracepoint (Scott Mayhew) [2064216] - NFSD: Add an nfsd_cb_lm_notify tracepoint (Scott Mayhew) [2064216] - NFSD: Enhance the nfsd_cb_setup tracepoint (Scott Mayhew) [2064216] - NFSD: Remove spurious cb_setup_err tracepoint (Scott Mayhew) [2064216] - NFSD: Adjust cb_shutdown tracepoint (Scott Mayhew) [2064216] - NFSD: Add cb_lost tracepoint (Scott Mayhew) [2064216] - NFSD: Drop TRACE_DEFINE_ENUM for NFSD4_CB_ macros (Scott Mayhew) [2064216] - NFSD: Capture every CB state transition (Scott Mayhew) [2064216] - NFSD: Constify @fh argument of knfsd_fh_hash() (Scott Mayhew) [2064216] - NFSD: Add tracepoints for EXCHANGEID edge cases (Scott Mayhew) [2064216] - NFSD: Add tracepoints for SETCLIENTID edge cases (Scott Mayhew) [2064216] - NFSD: Add a couple more nfsd_clid_expired call sites (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_destroyed tracepoint (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_reclaim_complete tracepoint (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_confirmed tracepoint (Scott Mayhew) [2064216] - NFSD: Remove trace_nfsd_clid_inuse_err (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_verf_mismatch tracepoint (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_cred_mismatch tracepoint (Scott Mayhew) [2064216] - NFSD: Add an RPC authflavor tracepoint display helper (Scott Mayhew) [2064216] - NFS: Ensure the NFS_CAP_SECURITY_LABEL capability is set when appropriate (Scott Mayhew) [2064216] - NFS: Split attribute support out from the server capabilities (Scott Mayhew) [2064216] - NFS: Don't store NFS_INO_REVAL_FORCED (Scott Mayhew) [2064216] - NFSv4: link must update the inode nlink. (Scott Mayhew) [2064216] - NFSv4: nfs4_inc/dec_nlink_locked should also invalidate ctime (Scott Mayhew) [2064216] - NFS: Another inode revalidation improvement (Scott Mayhew) [2064216] - NFS: Use information about the change attribute to optimise updates (Scott Mayhew) [2064216] - NFSv4: Add support for the NFSv4.2 "change_attr_type" attribute (Scott Mayhew) [2064216] - NFS: Simplify cache consistency in nfs_check_inode_attributes() (Scott Mayhew) [2064216] - NFS: Remove a line of code that has no effect in nfs_update_inode() (Scott Mayhew) [2064216] - NFS: Fix up handling of outstanding layoutcommit in nfs_update_inode() (Scott Mayhew) [2064216] - NFS: Separate tracking of file mode cache validity from the uid/gid (Scott Mayhew) [2064216] - NFS: Separate tracking of file nlinks cache validity from the mode/uid/gid (Scott Mayhew) [2064216] - NFSv4: Fix nfs4_bitmap_copy_adjust() (Scott Mayhew) [2064216] - NFS: Don't set NFS_INO_REVAL_PAGECACHE in the inode cache validity (Scott Mayhew) [2064216] - NFS: Replace use of NFS_INO_REVAL_PAGECACHE when checking cache validity (Scott Mayhew) [2064216] - NFS: Add a cache validity flag argument to nfs_revalidate_inode() (Scott Mayhew) [2064216] - NFS: nfs_setattr_update_inode() should clear the suid/sgid bits (Scott Mayhew) [2064216] - NFS: Fix up statx() results (Scott Mayhew) [2064216] - NFS: Don't revalidate attributes that are not being asked for (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv3 ACL encoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 SETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 GETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv2 ACL encoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL ACCESS result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL GETATTR result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 GETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add an xdr_stream-based encoder for NFSv2/3 ACLs (Scott Mayhew) [2064216] - NFSD: Remove unused NFSv2 directory entry encoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READDIR entry encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READDIR result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Count bytes instead of pages in the NFSv2 READDIR encoder (Scott Mayhew) [2064216] - NFSD: Add a helper that encodes NFSv3 directory offset cookies (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 STATFS result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READ result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READLINK result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 diropres encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 attrstat encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 stat encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Reduce svc_rqst::rq_pages churn during READDIR operations (Scott Mayhew) [2064216] - NFSD: Remove unused NFSv3 directory entry encoders (Scott Mayhew) [2064216] - NFSD: Update NFSv3 READDIR entry encoders to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 READDIR3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Count bytes instead of pages in the NFSv3 READDIR encoder (Scott Mayhew) [2064216] - NFSD: Add a helper that encodes NFSv3 directory offset cookies (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 COMMIT3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 PATHCONF3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 FSINFO3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 FSSTAT3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 LINK3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 RENAMEv3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 CREATE family of encoders to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 WRITE3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 READ3res encode to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 READLINK3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 wccstat result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 LOOKUP3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 ACCESS3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the GETATTR3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Extract the svcxdr_init_encode() helper (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv3 ACL decoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 GETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv2 ACL decoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL ACCESS argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL GETATTR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add an xdr_stream-based decoder for NFSv2/3 ACLs (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 GETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Remove argument length checking in nfsd_dispatch() (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SYMLINK argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 CREATE argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETATTR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 LINK argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 RENAME argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update NFSv2 diropargs decoding to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READDIR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add helper to set up the pages where the dirlist is encoded (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READLINK argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 WRITE argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READ argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 GETATTR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the MKNOD3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the SYMLINK3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the MKDIR3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the CREATE3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the SETATTR3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the LINK3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the RENAME3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 DIROPargs decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update COMMIT3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update READDIR3args decoders to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add helper to set up the pages where the dirlist is encoded (Scott Mayhew) [2064216] - NFSD: Fix returned READDIR offset cookie (Scott Mayhew) [2064216] - NFSD: Update READLINK3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update WRITE3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update READ3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update ACCESS3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update GETATTR3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - SUNRPC: Move definition of XDR_UNIT (Scott Mayhew) [2064216] - rpcrdma: Capture bytes received in Receive completion tracepoints (Scott Mayhew) [2064216] - NFSD: Restore NFSv4 decoding's SAVEMEM functionality (Scott Mayhew) [2064216] - NFSD: Remove macros that are no longer used (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_compound() (Scott Mayhew) [2064216] - NFSD: Make nfsd4_ops::opnum a u32 (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_listxattrs() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setxattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_xattr_name() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_clone() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_seek() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_offload_status() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_copy() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_fallocate() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_reclaim_complete() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_destroy_clientid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_test_stateid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_sequence() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_secinfo_no_name() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_layoutreturn() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_layoutget() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_layoutcommit() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_getdeviceinfo() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_free_stateid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_destroy_session() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_create_session() (Scott Mayhew) [2064216] - NFSD: Add a helper to decode channel_attrs4 (Scott Mayhew) [2064216] - NFSD: Add a helper to decode nfs_impl_id4 (Scott Mayhew) [2064216] - NFSD: Add a helper to decode state_protect4_a (Scott Mayhew) [2064216] - NFSD: Add a separate decoder for ssv_sp_parms (Scott Mayhew) [2064216] - NFSD: Add a separate decoder to handle state_protect_ops (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_bind_conn_to_session() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_backchannel_ctl() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_cb_sec() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_release_lockowner() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_write() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_verify() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setclientid_confirm() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setclientid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_secinfo() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_renew() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_rename() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_remove() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_readdir() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_read() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_putfh() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_open_downgrade() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_open_confirm() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_open() (Scott Mayhew) [2064216] - NFSD: Add helper to decode OPEN's open_claim4 argument (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_share_deny() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_share_access() (Scott Mayhew) [2064216] - NFSD: Add helper to decode OPEN's openflag4 argument (Scott Mayhew) [2064216] - NFSD: Add helper to decode OPEN's createhow4 argument (Scott Mayhew) [2064216] - NFSD: Add helper to decode NFSv4 verifiers (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_lookup() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_locku() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_lockt() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_lock() (Scott Mayhew) [2064216] - NFSD: Add helper for decoding locker4 (Scott Mayhew) [2064216] - NFSD: Add helpers to decode a clientid4 and an NFSv4 state owner (Scott Mayhew) [2064216] - NFSD: Relocate nfsd4_decode_opaque() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_link() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_getattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_delegreturn() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_create() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_fattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 umask attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 security label attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 time_set attributes (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 owner_group attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 owner attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 mode attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 acl attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 size attribute (Scott Mayhew) [2064216] - NFSD: Change the way the expected length of a fattr4 is checked (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_commit() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_close() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_access() (Scott Mayhew) [2064216] - NFSD: Replace the internals of the READ_BUF() macro (Scott Mayhew) [2064216] - nfsd/nfs3: remove unused macro nfsd3_fhandleres (Scott Mayhew) [2064216] - vt: vt_ioctl: fix race in VT_RESIZEX (Čestmír Kalina) [2068338] - net/mlx5: Bridge, Fix devlink deadlock on net namespace deletion (Amir Tzin) [2055580] - openvswitch: Fix setting ipv6 fields causing hw csum failure (Eelco Chaudron) [1974356]- Fix up versioning for maintainer builds (Jarod Wilson) - powerpc/iommu: Enable remaining IOMMU Pagesizes present in LoPAR (Gustavo Walbon) [1987109] - sizes.h: add SZ_8G/SZ_16G/SZ_32G macros (Gustavo Walbon) [1987109] - x86/cpu: Add Xeon Icelake-D to list of CPUs that support PPIN (Puneet Sethi) [2040336] - dm integrity: fix memory corruption when tag_size is less than digest size (Benjamin Marzinski) [2081775] - sctp: check asoc strreset_chunk in sctp_generate_reconf_event (Xin Long) [2079980] - sctp: Initialize daddr on peeled off socket (Xin Long) [2079980] - sctp: fix kernel-infoleak for SCTP sockets (Xin Long) [2079980] - sctp: do not update transport pathmtu if SPP_PMTUD_ENABLE is not set (Xin Long) [2079980] - dm crypt: fix copy and paste bug in crypt_alloc_req_aead (Benjamin Marzinski) [2073431] - dm crypt: defer decryption to a tasklet if interrupts disabled (Benjamin Marzinski) [2073431] - dm crypt: do not call bio_endio() from the dm-crypt tasklet (Benjamin Marzinski) [2073431] - dm crypt: use GFP_ATOMIC when allocating crypto requests from softirq (Benjamin Marzinski) [2073431] - dm crypt: do not wait for backlogged crypto request completion in softirq (Benjamin Marzinski) [2073431] - dm crypt: document new no_workqueue flags (Benjamin Marzinski) [2073431] - dm crypt: add flags to optionally bypass kcryptd workqueues (Benjamin Marzinski) [2073431] - tracing/osnoise: Force quiescent states while tracing (Jerome Marchand) [2069710] - tracing/osnoise: Do not unregister events twice (Jerome Marchand) [2069710] - tracing/osnoise: Make osnoise_main to sleep for microseconds (Jerome Marchand) [2069710] - tracing/osnoise: Properly unhook events if start_per_cpu_kthreads() fails (Jerome Marchand) [2069710] - tracing/osnoise: Make osnoise_instances static (Jerome Marchand) [2069710] - tracing/osnoise: Remove PREEMPT_RT ifdefs from inside functions (Jerome Marchand) [2069710] - tracing/osnoise: Remove STACKTRACE ifdefs from inside functions (Jerome Marchand) [2069710] - tracing/osnoise: Allow multiple instances of the same tracer (Jerome Marchand) [2069710] - tracing/osnoise: Remove TIMERLAT ifdefs from inside functions (Jerome Marchand) [2069710] - tracing/osnoise: Support a list of trace_array *tr (Jerome Marchand) [2069710] - tracing/osnoise: Use start/stop_per_cpu_kthreads() on osnoise_cpus_write() (Jerome Marchand) [2069710] - tracing/osnoise: Split workload start from the tracer start (Jerome Marchand) [2069710] - tracing/osnoise: Improve comments about barrier need for NMI callbacks (Jerome Marchand) [2069710] - tracing/osnoise: Do not follow tracing_cpumask (Jerome Marchand) [2069710] - trace/timerlat: Add migrate-disabled field to the timerlat header (Jerome Marchand) [2069710] - trace/osnoise: Add migrate-disabled field to the osnoise header (Jerome Marchand) [2069710] - tracing/doc: Fix typos on the timerlat tracer documentation (Jerome Marchand) [2069710] - trace/osnoise: Fix an ifdef comment (Jerome Marchand) [2069710] - redhat: indicate HEAD state in tarball/rpm name (Jarod Wilson) - selftest: net: Test IPv4 PMTU exceptions with DSCP and ECN (Guillaume Nault) [2081453] - ipv4: Fix route lookups when handling ICMP redirects and PMTU updates (Guillaume Nault) [2081453] - ipv4: tcp: send zero IPID in SYNACK messages (Guillaume Nault) [2081453] - ipv4: raw: lock the socket in raw_bind() (Guillaume Nault) [2081453] - net/af_packet: add VLAN support for AF_PACKET SOCK_RAW GSO (Hangbin Liu) [2066976] - net/packet: fix packet_sock xmit return value checking (Hangbin Liu) [2066976] - doc/ip-sysctl: add bc_forwarding (Xin Long) [2080486] - net/packet: fix packet_sock xmit return value checking (Xin Long) [2080486] - net: handle ARPHRD_PIMREG in dev_is_mac_header_xmit() (Xin Long) [2080486] - net/packet: fix slab-out-of-bounds access in packet_recvmsg() (Xin Long) [2080486] - veth: fix races around rq->rx_notify_masked (Xin Long) [2080486] - af_packet: fix data-race in packet_setsockopt / packet_setsockopt (Xin Long) [2080486] - ipv4: remove sparse error in ip_neigh_gw4() (Xin Long) [2080486] - af_unix: annote lockless accesses to unix_tot_inflight & gc_in_progress (Xin Long) [2080486] - veth: Do not record rx queue hint in veth_xmit (Xin Long) [2080486] - veth: ensure skb entering GRO are not cloned. (Xin Long) [2080486] - ethtool: Fix link extended state for big endian (Xin Long) [2080486] - ethtool: do not perform operations on net devices being unregistered (Xin Long) [2080486] - ethtool: Add transceiver module extended state (Xin Long) [2080486] - ethtool: runtime-resume netdev parent in ethnl_ops_begin (Xin Long) [2080486] - ethtool: move netif_device_present check from ethnl_parse_header_dev_get to ethnl_ops_begin (Xin Long) [2080486] - ethtool: move implementation of ethnl_ops_begin/complete to netlink.c (Xin Long) [2080486] - net: validate lwtstate->data before returning from skb_tunnel_info() (Xin Long) [2080486]- bnx2x: fix napi API usage sequence (Manish Chopra) [2080659] - netfilter: fix use-after-free in __nf_register_net_hook() (Florian Westphal) [2080272] - netfilter: nf_tables: unregister flowtable hooks on netns exit (Florian Westphal) [2080272] - netfilter: nftables: add helper function to release hooks of one single table (Florian Westphal) [2080272] - netfilter: nft_socket: only do sk lookups when indev is available (Florian Westphal) [2080272] - netfilter: nf_conntrack_tcp: re-init for syn packets only (Florian Westphal) [2080272] - netfilter: nft_set_rbtree: overlap detection with element re-addition after deletion (Florian Westphal) [2080272] - netfilter: nf_tables: fix memory leak during stateful obj update (Florian Westphal) [2080272] - netfilter: nf_conntrack_tcp: preserve liberal flag in tcp options (Florian Westphal) [2080272] - netfilter: ctnetlink: disable helper autoassign (Florian Westphal) [2080272] - netfilter: nft_payload: don't allow th access for fragments (Florian Westphal) [2080272] - netfilter: nft_payload: simplify vlan header handling (Florian Westphal) [2080272] - RDMA/rxe: Change mcg_lock to a _bh lock (Kamal Heib) [2056500] - RDMA/rxe: Do not call dev_mc_add/del() under a spinlock (Kamal Heib) [2056500] - RDMA/rxe: Recheck the MR in when generating a READ reply (Kamal Heib) [2056500] - RDMA/rxe: Fix "Replace mr by rkey in responder resources" (Kamal Heib) [2056500] - RDMA/siw: Fix a condition race issue in MPA request processing (Kamal Heib) [2056500] - RDMA/irdma: Fix possible crash due to NULL netdev in notifier (Kamal Heib) [2056500] - RDMA/irdma: Reduce iWARP QP destroy time (Kamal Heib) [2056500] - RDMA/irdma: Flush iWARP QP if modified to ERR from RTR state (Kamal Heib) [2056500] - RDMA/irdma: Fix deadlock in irdma_cleanup_cm_core() (Kamal Heib) [2056500] - RDMA/hfi1: Fix use-after-free bug for mm struct (Kamal Heib) [2056500] - IB/rdmavt: add lock to call to rvt_error_qp to prevent a race condition (Kamal Heib) [2056500] - IB/cm: Cancel mad on the DREQ event when the state is MRA_REP_RCVD (Kamal Heib) [2056500] - RDMA/nldev: Prevent underflow in nldev_stat_set_counter_dynamic_doit() (Kamal Heib) [2056500] - IB/iser: Fix error flow in case of registration failure (Kamal Heib) [2056500] - IB/iser: Generalize map/unmap dma tasks (Kamal Heib) [2056500] - IB/iser: Use iser_fr_desc as registration context (Kamal Heib) [2056500] - IB/iser: Remove iser_reg_data_sg helper function (Kamal Heib) [2056500] - RDMA/rxe: Use standard names for ref counting (Kamal Heib) [2056500] - RDMA/rxe: Replace red-black trees by xarrays (Kamal Heib) [2056500] - RDMA/rxe: Shorten pool names in rxe_pool.c (Kamal Heib) [2056500] - RDMA/rxe: Move max_elem into rxe_type_info (Kamal Heib) [2056500] - RDMA/rxe: Replace obj by elem in declaration (Kamal Heib) [2056500] - RDMA/rxe: Delete _locked() APIs for pool objects (Kamal Heib) [2056500] - RDMA/rxe: Reverse the sense of RXE_POOL_NO_ALLOC (Kamal Heib) [2056500] - RDMA/rxe: Replace mr by rkey in responder resources (Kamal Heib) [2056500] - RDMA/rxe: Fix ref error in rxe_av.c (Kamal Heib) [2056500] - RDMA/irdma: Add support for address handle re-use (Kamal Heib) [2056500] - Revert "RDMA/core: Fix ib_qp_usecnt_dec() called when error" (Kamal Heib) [2056500] - RDMA/rxe: Remove useless argument for update_state() (Kamal Heib) [2056500] - RDMA/rxe: Change variable and function argument to proper type (Kamal Heib) [2056500] - RDMA/irdma: Prevent some integer underflows (Kamal Heib) [2056500] - RDMA/core: Fix ib_qp_usecnt_dec() called when error (Kamal Heib) [2056500] - IB/hfi1: Allow larger MTU without AIP (Kamal Heib) [2056500] - RDMA/core: Remove unnecessary statements (Kamal Heib) [2056500] - RDMA/irdma: Remove incorrect masking of PD (Kamal Heib) [2056500] - RDMA/irdma: Fix Passthrough mode in VM (Kamal Heib) [2056500] - RDMA/irdma: Fix netdev notifications for vlan's (Kamal Heib) [2056500] - RDMA/irdma: Make irdma_create_mg_ctx return a void (Kamal Heib) [2056500] - RDMA/irdma: Move union irdma_sockaddr to header file (Kamal Heib) [2056500] - RDMA/irdma: Remove the unnecessary variable saddr (Kamal Heib) [2056500] - RDMA/irdma: Use net_type to check network type (Kamal Heib) [2056500] - RDMA/rxe: Cleanup rxe_mcast.c (Kamal Heib) [2056500] - RDMA/rxe: Collect cleanup mca code in a subroutine (Kamal Heib) [2056500] - RDMA/rxe: Collect mca init code in a subroutine (Kamal Heib) [2056500] - RDMA/rxe: Warn if mcast memory is not freed (Kamal Heib) [2056500] - RDMA/irdma: Remove excess error variables (Kamal Heib) [2056500] - RDMA/irdma: Propagate error codes (Kamal Heib) [2056500] - RDMA/irdma: Remove enum irdma_status_code (Kamal Heib) [2056500] - RDMA/ib_srp: Add more documentation (Kamal Heib) [2056500] - IB/cma: Allow XRC INI QPs to set their local ACK timeout (Kamal Heib) [2056500] - RDMA/rxe: Remove mcg from rxe pools (Kamal Heib) [2056500] - RDMA/rxe: Remove key'ed object support (Kamal Heib) [2056500] - RDMA/rxe: Replace pool key by rxe->mcg_tree (Kamal Heib) [2056500] - RDMA/rxe: Replace int num_qp by atomic_t qp_num (Kamal Heib) [2056500] - RDMA/rxe: Replace grp by mcg, mce by mca (Kamal Heib) [2056500] - RDMA/rxe: Use kzmalloc/kfree for mca (Kamal Heib) [2056500] - RDMA/rxe: Move mcg_lock to rxe (Kamal Heib) [2056500] - RDMA/hfi: Replace cpumask_weight with cpumask_empty where appropriate (Kamal Heib) [2056500] - RDMA/irdma: Refactor DCB bits in prep for DSCP support (Kamal Heib) [2056500] - RDMA/opa: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/iser: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/ipoib: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/rxe: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/usnic: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/hfi1: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/core: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/core: Set MR type in ib_reg_user_mr (Kamal Heib) [2056500] - md: Set MD_BROKEN for RAID1 and RAID10 (Nigel Croxon) [2042729] - raid5: introduce MD_BROKEN (Nigel Croxon) [2042729] - RHEL only Changes to support block changes not picked up (Nigel Croxon) [2042729] - md: fix NULL pointer deref with nowait but no mddev->queue (Nigel Croxon) [2042729] - md: use default_groups in kobj_type (Nigel Croxon) [2042729] - md: Move alloc/free acct bioset in to personality (Nigel Croxon) [2042729] - md: fix spelling of "its" (Nigel Croxon) [2042729] - md: raid456 add nowait support (Nigel Croxon) [2042729] - md: raid10 add nowait support (Nigel Croxon) [2042729] - md: raid1 add nowait support (Nigel Croxon) [2042729] - md: add support for REQ_NOWAIT (Nigel Croxon) [2042729] - md/raid5: play nice with PREEMPT_RT (Nigel Croxon) [2042729] - md/raid1: fix missing bitmap update w/o WriteMostly devices (Nigel Croxon) [2042729] - md: fix double free of mddev->private in autorun_array() (Nigel Croxon) [2042729] - md: fix update super 1.0 on rdev size change (Nigel Croxon) [2042729] - raid5-ppl: use swap() to make code cleaner (Nigel Croxon) [2042729] - md/bitmap: don't set max_write_behind if there is no write mostly device (Nigel Croxon) [2042729] - md: update superblock after changing rdev flags in state_store (Nigel Croxon) [2042729] - md: remove unused argument from md_new_event (Nigel Croxon) [2042729] - md/raid5: call roundup_pow_of_two in raid5_run (Nigel Croxon) [2042729] - md/raid1: use rdev in raid1_write_request directly (Nigel Croxon) [2042729] - md/raid1: only allocate write behind bio for WriteMostly device (Nigel Croxon) [2042729] - md: properly unwind when failing to add the kobject in md_alloc (Nigel Croxon) [2042729] - md: extend disks_mutex coverage (Nigel Croxon) [2042729] - md: add the bitmap group to the default groups for the md kobject (Nigel Croxon) [2042729] - md: add error handling support for add_disk() (Nigel Croxon) [2042729] - md: fix a lock order reversal in md_alloc (Nigel Croxon) [2042729] - scsi: qedf: Stop using the SCSI pointer (Nilesh Javali) [2044843] - scsi: qedf: Change context reset messages to ratelimited (Nilesh Javali) [2044843] - scsi: qedf: Fix refcount issue when LOGO is received during TMF (Nilesh Javali) [2044843] - scsi: qedf: Add stag_work to all the vports (Nilesh Javali) [2044843] - scsi: qedf: Fix potential dereference of NULL pointer (Nilesh Javali) [2044843] - eth: fwnode: remove the addr len from mac helpers (Íñigo Huguet) [2069565] - eth: fwnode: change the return type of mac address helpers (Íñigo Huguet) [2069565] - device property: move mac addr helpers to eth.c (Íñigo Huguet) [2069565] - net: thunderx: Use fwnode_get_mac_address() (Íñigo Huguet) [2069565] - qede: confirm skb is allocated before using (Manish Chopra) [2040267] - qed: fix ethtool register dump (Manish Chopra) [2040267] - qed: remove unnecessary memset in qed_init_fw_funcs (Manish Chopra) [2040267] - qed: return status of qed_iov_get_link (Manish Chopra) [2040267] - net: qlogic: check the return value of dma_alloc_coherent() in qed_vf_hw_prepare() (Manish Chopra) [2040267] - qed: validate and restrict untrusted VFs vlan promisc mode (Manish Chopra) [2040267] - qed: display VF trust config (Manish Chopra) [2040267] - qed: prevent a fw assert during device shutdown (Manish Chopra) [2040267] - qed: use msleep() in qed_mcp_cmd() and add qed_mcp_cmd_nosleep() for udelay. (Manish Chopra) [2040267] - qed: Use dma_set_mask_and_coherent() and simplify code (Manish Chopra) [2040267] - qed*: esl priv flag support through ethtool (Manish Chopra) [2040267] - qed*: enhance tx timeout debug info (Manish Chopra) [2040267] - qede: validate non LSO skb length (Manish Chopra) [2040267] - qed: Enhance rammod debug prints to provide pretty details (Manish Chopra) [2040267] - net: qed: fix the array may be out of bound (Manish Chopra) [2040267] - qed: Use the bitmap API to simplify some functions (Manish Chopra) [2040267] - RDMA/qed: Use helper function to set GUIDs (Manish Chopra) [2040267] - net: qed_dev: fix check of true !rc expression (Manish Chopra) [2040267] - net: qed_ptp: fix check of true !rc expression (Manish Chopra) [2040267] - RDMA/qedr: Remove unsupported qedr_resize_cq callback (Manish Chopra) [2040267] - qed: Change the TCP common variable - "iscsi_ooo" (Manish Chopra) [2040267] - qed: Optimize the ll2 ooo flow (Manish Chopra) [2040267] - net: qed_debug: fix check of false (grc_param < 0) expression (Manish Chopra) [2040267] - qed: Fix missing error code in qed_slowpath_start() (Manish Chopra) [2040267] - qed: Fix compilation for CONFIG_QED_SRIOV undefined scenario (Manish Chopra) [2040267] - qed: Initialize debug string array (Manish Chopra) [2040267] - qed: Fix spelling mistake "ctx_bsaed" -> "ctx_based" (Manish Chopra) [2040267] - qed: fix ll2 establishment during load of RDMA driver (Manish Chopra) [2040267] - qed: Update the TCP active termination 2 MSL timer ("TIME_WAIT") (Manish Chopra) [2040267] - qed: Update TCP silly-window-syndrome timeout for iwarp, scsi (Manish Chopra) [2040267] - qed: Update debug related changes (Manish Chopra) [2040267] - qed: Add '_GTT' suffix to the IRO RAM macros (Manish Chopra) [2040267] - qed: Update FW init functions to support FW 8.59.1.0 (Manish Chopra) [2040267] - qed: Use enum as per FW 8.59.1.0 in qed_iro_hsi.h (Manish Chopra) [2040267] - qed: Update qed_hsi.h for fw 8.59.1.0 (Manish Chopra) [2040267] - qed: Update qed_mfw_hsi.h for FW ver 8.59.1.0 (Manish Chopra) [2040267] - qed: Update common_hsi for FW ver 8.59.1.0 (Manish Chopra) [2040267] - qed: Split huge qed_hsi.h header file (Manish Chopra) [2040267] - qed: Remove e4_ and _e4 from FW HSI (Manish Chopra) [2040267] - qed: Fix kernel-doc warnings (Manish Chopra) [2040267] - qed: Don't ignore devlink allocation failures (Manish Chopra) [2040267] - qed: Improve the stack space of filter_config() (Manish Chopra) [2040267] - RDMA/qedr: Move variables reset to qedr_set_common_qp_params() (Manish Chopra) [2040267] - ip_gre, ip6_gre: Fix race condition on o_seqno in collect_md mode (Guillaume Nault) [2081030] - ip6_gre: Make o_seqno start from 0 in native mode (Guillaume Nault) [2081030] - ip_gre: Make o_seqno start from 0 in native mode (Guillaume Nault) [2081030] - ip6_gre: Fix skb_under_panic in __gre6_xmit() (Guillaume Nault) [2081030] - ip6_gre: Avoid updating tunnel->tun_hlen in __gre6_xmit() (Guillaume Nault) [2081030] - ipv6_tunnel: Rate limit warning messages (Guillaume Nault) [2081030] - net: fix up skbs delta_truesize in UDP GRO frag_list (Hangbin Liu) [2082388] - drop_monitor: fix data-race in dropmon_net_event / trace_napi_poll_hit (Hangbin Liu) [2082388] - rtnetlink: make sure to refresh master_dev/m_ops in __rtnl_newlink() (Hangbin Liu) [2082388] - netns: add schedule point in ops_exit_list() (Hangbin Liu) [2082388] - lwtunnel: Validate RTA_ENCAP_TYPE attribute length (Hangbin Liu) [2082388] - net, neigh: clear whole pneigh_entry at alloc time (Hangbin Liu) [2082388] - net: annotate data-races on txq->xmit_lock_owner (Hangbin Liu) [2082388] - sock: fix /proc/net/sockstat underflow in sk_clone_lock() (Hangbin Liu) [2082388] - net: stream: don't purge sk_error_queue in sk_stream_kill_queues() (Hangbin Liu) [2082388] - rtnetlink: fix if_nlmsg_stats_size() under estimation (Hangbin Liu) [2082388] - net: watchdog: hold device global xmit lock during tx disable (Hangbin Liu) [2082388] - torture: Fix incorrectly redirected "exit" in kvm-remote.sh (Waiman Long) [2065993] - rcu: Allow rcu_irq_enter_check_tick() from NMI (Waiman Long) [2065993] - srcu: Early test SRCU polling start (Waiman Long) [2065993] - rcu/nocb: Unify timers (Waiman Long) [2065993] - rcu/nocb: Prepare for fine-grained deferred wakeup (Waiman Long) [2065993] - rcu/nocb: Only cancel nocb timer if not polling (Waiman Long) [2065993] - rcu/nocb: Delete bypass_timer upon nocb_gp wakeup (Waiman Long) [2065993] - rcu/nocb: Cancel nocb_timer upon nocb_gp wakeup (Waiman Long) [2065993] - rcu/nocb: Allow de-offloading rdp leader (Waiman Long) [2065993] - rcu/nocb: Directly call __wake_nocb_gp() from bypass timer (Waiman Long) [2065993] - refscale: Avoid false-positive warnings in ref_scale_reader() (Waiman Long) [2065993] - scftorture: Avoid false-positive warnings in scftorture_invoker() (Waiman Long) [2065993] - rcu-tasks: Don't delete holdouts within trc_wait_for_one_reader() (Waiman Long) [2065993] - rcu-tasks: Don't delete holdouts within trc_inspect_reader() (Waiman Long) [2065993] - rcutorture: Move mem_dump_obj() tests into separate function (Waiman Long) [2065993] - rcu: Remove obsolete rcu_read_unlock() deadlock commentary (Waiman Long) [2065993] - rcu: Improve comments describing RCU read-side critical sections (Waiman Long) [2065993] - rcu: Add missing __releases() annotation (Waiman Long) [2065993] - kvfree_rcu: Fix comments according to current code (Waiman Long) [2065993] - torture: Don't cap remote runs by build-system number of CPUs (Waiman Long) [2065993] - torture: Make kvm-remote.sh account for network failure in pathname checks (Waiman Long) [2065993] - rcu: Create an unrcu_pointer() to remove __rcu from a pointer (Waiman Long) [2065993] - kvfree_rcu: Refactor kfree_rcu_monitor() (Waiman Long) [2065993] - srcu: Fix broken node geometry after early ssp init (Waiman Long) [2065993] - rcu: Point to documentation of ordering guarantees (Waiman Long) [2065993] - rcu: Don't penalize priority boosting when there is nothing to boost (Waiman Long) [2065993] - kvfree_rcu: Use kfree_rcu_monitor() instead of open-coded variant (Waiman Long) [2065993] - kvfree_rcu: Update "monitor_todo" once a batch is started (Waiman Long) [2065993] - kvfree_rcu: Add a bulk-list check when a scheduler is run (Waiman Long) [2065993] - kvfree_rcu: Use [READ/WRITE]_ONCE() macros to access to nr_bkv_objs (Waiman Long) [2065993] - kvfree_rcu: Release a page cache under memory pressure (Waiman Long) [2065993] - rcu: Shrink each possible cpu krcp (Waiman Long) [2065993] - rcu/segcblist: Prevent useless GP start if no CBs to accelerate (Waiman Long) [2065993] - rcutorture: Don't count CPU-stalled time against priority boosting (Waiman Long) [2065993] - rcu: Make rcu_gp_cleanup() be noinline for tracing (Waiman Long) [2065993] - rcutorture: Add BUSTED-BOOST to test RCU priority boosting tests (Waiman Long) [2065993] - srcu: Initialize SRCU after timers (Waiman Long) [2065993] - srcu: Unconditionally embed struct lockdep_map (Waiman Long) [2065993] - rcutorture: Forgive RCU boost failures when CPUs don't pass through QS (Waiman Long) [2065993] - rcutorture: Test start_poll_synchronize_rcu() and poll_state_synchronize_rcu() (Waiman Long) [2065993] - rcu: Provide polling interfaces for Tree RCU grace periods (Waiman Long) [2065993] - rcutorture: Make rcu_torture_boost_failed() check for GP end (Waiman Long) [2065993] - rcutorture: Consolidate rcu_torture_boost() timing and statistics (Waiman Long) [2065993] - rcutorture: Delay-based false positives for RCU priority boosting tests (Waiman Long) [2065993] - rcu: Restrict RCU_STRICT_GRACE_PERIOD to at most four CPUs (Waiman Long) [2065993] - rcu: Make show_rcu_gp_kthreads() dump rcu_node structures blocking GP (Waiman Long) [2065993] - rcu: Add quiescent states and boost states to show_rcu_gp_kthreads() output (Waiman Long) [2065993] - rcu: Make RCU priority boosting work on single-CPU rcu_node structures (Waiman Long) [2065993] - rcu: Reject RCU_LOCKDEP_WARN() false positives (Waiman Long) [2065993] - lockdep: Explicitly flag likely false-positive report (Waiman Long) [2065993] - rcu: Add ->gp_max to show_rcu_gp_kthreads() output (Waiman Long) [2065993] - rcu: Add ->rt_priority and ->gp_start to show_rcu_gp_kthreads() output (Waiman Long) [2065993] - srcu: Remove superfluous sdp->srcu_lock_count zero filling (Waiman Long) [2065993] - srcu: Remove superfluous ssp initialization for early callbacks (Waiman Long) [2065993] - torture: Set kvm.sh language to English (Waiman Long) [2065993] - torture: Correctly fetch number of CPUs for non-English languages (Waiman Long) [2065993] - rcu: Invoke rcu_spawn_core_kthreads() from rcu_spawn_gp_kthread() (Waiman Long) [2065993] - rcutorture: Judge RCU priority boosting on grace periods, not callbacks (Waiman Long) [2065993] - sched,rcutorture: Convert to sched_set_fifo_low() (Waiman Long) [2065993] - rcu: Improve tree.c comments and add code cleanups (Waiman Long) [2065993] - rcu: Abstract out rcu_irq_enter_check_tick() from rcu_nmi_enter() (Waiman Long) [2065993] - rcu: Remove the unused rcu_irq_exit_preempt() function (Waiman Long) [2065993] - torture: Make kvm-find-errors.sh account for kvm-remote.sh (Waiman Long) [2065993] - torture: Make the build machine control N in "make -jN" (Waiman Long) [2065993] - torture: Make kvm.sh use abstracted kvm-end-run-stats.sh (Waiman Long) [2065993] - torture: Abstract end-of-run summary (Waiman Long) [2065993] - rcu: Fix typo in comment: kthead -> kthread (Waiman Long) [2065993] - rcutorture: Abstract read-lock-held checks (Waiman Long) [2065993] - refscale: Add acqrel, lock, and lock-irq (Waiman Long) [2065993] - torture: Add kvm-remote.sh script for distributed rcutorture test runs (Waiman Long) [2065993] - refscale: Allow CPU hotplug to be enabled (Waiman Long) [2065993] - torture: Make kvm-again.sh use "scenarios" rather than "batches" file (Waiman Long) [2065993] - torture: Add "scenarios" option to kvm.sh --dryrun parameter (Waiman Long) [2065993] - rcu-tasks: Add block comment laying out RCU Rude design (Waiman Long) [2065993] - torture: Fix remaining erroneous torture.sh instance of $* (Waiman Long) [2065993] - rcu/tree: Add a trace event for RCU CPU stall warnings (Waiman Long) [2065993] - torture: Fix kvm.sh --datestamp regex check (Waiman Long) [2065993] - rcu: Add explicit barrier() to __rcu_read_unlock() (Waiman Long) [2065993] - rcu-tasks: Add block comment laying out RCU Tasks Trace design (Waiman Long) [2065993] - rcu: Make nocb_nobypass_lim_per_jiffy static (Waiman Long) [2065993] - torture: Consolidate qemu-cmd duration editing into kvm-transform.sh (Waiman Long) [2065993] - torture: Print proper vmlinux path for kvm-again.sh runs (Waiman Long) [2065993] - torture: Make TORTURE_TRUST_MAKE available in kvm-again.sh environment (Waiman Long) [2065993] - docs: Correctly spell Stephen Hemminger's name (Waiman Long) [2065993] - rcu/nocb: Use the rcuog CPU's ->nocb_timer (Waiman Long) [2065993] - rcu/nocb: Move trace_rcu_nocb_wake() calls outside nocb_lock when possible (Waiman Long) [2065993] - rcu/nocb: Remove stale comment above rcu_segcblist_offload() (Waiman Long) [2065993] - rcu/nocb: Disable bypass when CPU isn't completely offloaded (Waiman Long) [2065993] - rcu/nocb: Fix missed nocb_timer requeue (Waiman Long) [2065993] - rcu/nocb: Trigger self-IPI on late deferred wake up before user resume (Waiman Long) [2065993] - torture: Make kvm-transform.sh update jitter commands (Waiman Long) [2065993] - torture: Add --duration argument to kvm-again.sh (Waiman Long) [2065993] - rcu: deprecate "all" option to rcu_nocbs= (Waiman Long) [2065993] - torture: Rename SRCU-t and SRCU-u to avoid lowercase characters (Waiman Long) [2065993] - torture: Add kvm-again.sh to rerun a previous torture-test (Waiman Long) [2065993] - torture: Create a "batches" file for build reuse (Waiman Long) [2065993] - torture: De-capitalize TORTURE_SUITE (Waiman Long) [2065993] - rcuscale: Add kfree_rcu() single-argument scale test (Waiman Long) [2065993] - torture: Make upper-case-only no-dot no-slash scenario names official (Waiman Long) [2065993] - torture: Remove no-mpstat error message (Waiman Long) [2065993] - torture: Record kvm-test-1-run.sh and kvm-test-1-run-qemu.sh PIDs (Waiman Long) [2065993] - torture: Record jitter start/stop commands (Waiman Long) [2065993] - softirq: Don't try waking ksoftirqd before it has been spawned (Waiman Long) [2065993] - torture: Extract kvm-test-1-run-qemu.sh from kvm-test-1-run.sh (Waiman Long) [2065993] - torture: Record TORTURE_KCONFIG_GDB_ARG in qemu-cmd (Waiman Long) [2065993] - torture: Abstract jitter.sh start/stop into scripts (Waiman Long) [2065993] - torture: Reverse jittering and duration parameters for jitter.sh (Waiman Long) [2065993] - torture: Eliminate jitter_pids file (Waiman Long) [2065993] - torture: Use "jittering" file to control jitter.sh execution (Waiman Long) [2065993] - torture: Use file-based protocol to mark batch's runs complete (Waiman Long) [2065993] - torture: Move build/run synchronization files into scenario directories (Waiman Long) [2065993] - torture: Make jitter.sh handle large systems (Waiman Long) [2065993] - torture: Improve readability of the testid.txt file (Waiman Long) [2065993] - torture: Provide bare-metal modprobe-based advice (Waiman Long) [2065993] - kvfree_rcu: Use same set of GFP flags as does single-argument (Waiman Long) [2065993] - kvfree_rcu: Replace __GFP_RETRY_MAYFAIL by __GFP_NORETRY (Waiman Long) [2065993] - torture: Allow 1G of memory for torture.sh kvfree testing (Waiman Long) [2065993] - torture: Do Kconfig analysis only once per scenario (Waiman Long) [2065993] - torture: Compress KASAN vmlinux files (Waiman Long) [2065993] - torture: Add --kcsan-kmake-arg to torture.sh for KCSAN (Waiman Long) [2065993] - torture: Add command and results directory to torture.sh log (Waiman Long) [2065993] - torture: Allow scenarios to be specified to torture.sh (Waiman Long) [2065993] - torture: Drop log.long generation from torture.sh (Waiman Long) [2065993] - torture: Make torture.sh refuse to do zero-length runs (Waiman Long) [2065993] - torture: Make torture.sh throttle VERBOSE_TOROUT_*() for refscale (Waiman Long) [2065993] - torture: Make torture.sh allmodconfig retain and label output (Waiman Long) [2065993] - torture: Create doyesno helper function for torture.sh (Waiman Long) [2065993] - torture: Make torture.sh refscale runs use verbose_batched module parameter (Waiman Long) [2065993] - torture: Make torture.sh rcuscale and refscale deal with allmodconfig (Waiman Long) [2065993] - torture: Enable torture.sh argument checking (Waiman Long) [2065993] - torture: Auto-size SCF and scaling runs based on number of CPUs (Waiman Long) [2065993] - torture: Add "make allmodconfig" to torture.sh (Waiman Long) [2065993] - torture: Remove use of "eval" in torture.sh (Waiman Long) [2065993] - torture: Make torture.sh use common time-duration bash functions (Waiman Long) [2065993] - torture: Add torture.sh torture-everything script (Waiman Long) [2065993] - refscale: Disable verbose torture-test output (Waiman Long) [2065993] - rcuscale: Disable verbose torture-test output (Waiman Long) [2065993] - rcu/nocb: Rename nocb_gp_update_state to nocb_gp_update_state_deoffloading (Waiman Long) [2065993] - rcu/nocb: Avoid confusing double write of rdp->nocb_cb_sleep (Waiman Long) [2065993] - rcu/nocb: Only (re-)initialize segcblist when needed on CPU up (Waiman Long) [2065993] - rcu/nocb: Forbid NOCB toggling on offline CPUs (Waiman Long) [2065993] - rcu/nocb: Comment the reason behind BH disablement on batch processing (Waiman Long) [2065993] - rcu: Make rcu_read_unlock_special() expedite strict grace periods (Waiman Long) [2065993] - rcu-tasks: Rectify kernel-doc for struct rcu_tasks (Waiman Long) [2065993] - rcutorture: Replace rcu_torture_stall string with s (Waiman Long) [2065993] - torture: Replace torture_init_begin string with s (Waiman Long) [2065993] - rcutorture: Use "all" and "N" in "nohz_full" and "rcu_nocbs" (Waiman Long) [2065993] - kvfree_rcu: Make krc_this_cpu_unlock() use raw_spin_unlock_irqrestore() (Waiman Long) [2065993] - kvfree_rcu: Use __GFP_NOMEMALLOC for single-argument kvfree_rcu() (Waiman Long) [2065993] - kvfree_rcu: Directly allocate page for single-argument case (Waiman Long) [2065993] - rcutorture: Fix testing of RCU priority boosting (Waiman Long) [2065993] - rculist: Replace reference to atomic_ops.rst (Waiman Long) [2065993] - rcutorture: Make TREE03 use real-time tree.use_softirq setting (Waiman Long) [2065993] - rcu: Expedite deboost in case of deferred quiescent state (Waiman Long) [2065993] - rcu: Fix CPU-offline trace in rcutree_dying_cpu (Waiman Long) [2065993] - rcu: Remove superfluous rdp fetch (Waiman Long) [2065993] - torturescript: Don't rerun failed rcutorture builds (Waiman Long) [2065993] - rcutorture: Add crude tests for mem_dump_obj() (Waiman Long) [2065993] - mm: Don't build mm_dump_obj() on CONFIG_PRINTK=n kernels (Waiman Long) [2065993] - rcu/nocb: Detect unsafe checks for offloaded rdp (Waiman Long) [2065993] - sched/pelt: Fix attach_entity_load_avg() corner case (Phil Auld) [2056383] - devlink: Clarifies max_macs generic devlink param (Petr Oros) [2076586] - devlink: Add new "event_eq_size" generic device param (Petr Oros) [2076586] - devlink: Add new "io_eq_size" generic device param (Petr Oros) [2076586] - devlink: fix netns refcount leak in devlink_nl_cmd_reload() (Petr Oros) [2076586] - devlink: Simplify devlink resources unregister call (Petr Oros) [2076586] - devlink: Remove misleading internal_flags from health reporter dump (Petr Oros) [2076586] - devlink: Don't throw an error if flash notification sent before devlink visible (Petr Oros) [2076586] - devlink: fix flexible_array.cocci warning (Petr Oros) [2076586] - devlink: expose get/put functions (Petr Oros) [2076586] - devlink: make all symbols GPL-only (Petr Oros) [2076586] - devlink: Simplify internal devlink params implementation (Petr Oros) [2076586] - devlink: Clean not-executed param notifications (Petr Oros) [2076586] - devlink: Delete obsolete parameters publish API (Petr Oros) [2076586] - devlink: Remove extra device_lock assert checks (Petr Oros) [2076586] - devlink: Delete reload enable/disable interface (Petr Oros) [2076586] - devlink: Allow control devlink ops behavior through feature mask (Petr Oros) [2076586] - devlink: Annotate devlink API calls (Petr Oros) [2076586] - devlink: Move netdev_to_devlink helpers to devlink.c (Petr Oros) [2076586] - devlink: Reduce struct devlink exposure (Petr Oros) [2076586] - devlink: report maximum number of snapshots with regions (Petr Oros) [2076586] - devlink: Add missed notifications iterators (Petr Oros) [2076586] - netdevsim: Move devlink registration to be last devlink command (Petr Oros) [2076586] - qed: Move devlink registration to be last devlink command (Petr Oros) [2076586] - ionic: Move devlink registration to be last devlink command (Petr Oros) [2076586] - nfp: Move delink_register to be last command (Petr Oros) [2076586] - mlxsw: core: Register devlink instance last (Petr Oros) [2076586] - net/mlx5: Accept devlink user input after driver initialization complete (Petr Oros) [2076586] - net/mlx4: Move devlink_register to be the last initialization command (Petr Oros) [2076586] - ice: Open devlink when device is ready (Petr Oros) [2076586] - liquidio: Overcome missing device lock protection in init/remove flows (Petr Oros) [2076586] - bnxt_en: Register devlink instance at the end devlink configuration (Petr Oros) [2076586] - devlink: Notify users when objects are accessible (Petr Oros) [2076586] - devlink: Remove single line function obfuscations (Petr Oros) [2076586] - devlink: Delete not used port parameters APIs (Petr Oros) [2076586] - bnxt_en: Properly remove port parameter support (Petr Oros) [2076586] - bnxt_en: Check devlink allocation and registration status (Petr Oros) [2076586] - devlink: Make devlink_register to be void (Petr Oros) [2076586] - devlink: Delete not-used devlink APIs (Petr Oros) [2076586] - devlink: Delete not-used single parameter notification APIs (Petr Oros) [2076586] - devlink: Use xarray to store devlink instances (Petr Oros) [2076586] - devlink: Count struct devlink consumers (Petr Oros) [2076586] - devlink: Remove check of always valid devlink pointer (Petr Oros) [2076586] - devlink: Simplify devlink_pernet_pre_exit call (Petr Oros) [2076586] - devlink: Add APIs to publish, unpublish individual parameter (Petr Oros) [2076586] - devlink: Add API to register and unregister single parameter (Petr Oros) [2076586] - devlink: Create a helper function for one parameter registration (Petr Oros) [2076586] - devlink: Fix port_type_set function pointer check (Petr Oros) [2076586] - devlink: Set device as early as possible (Petr Oros) [2076586] - devlink: Simplify devlink port API calls (Petr Oros) [2076586] - devlink: Allocate devlink directly in requested net namespace (Petr Oros) [2076586] - devlink: Break parameter notification sequence to be before/after unload/load driver (Petr Oros) [2076586] - devlink: Remove duplicated registration check (Petr Oros) [2076586] - net/mlx5: Don't rely on always true registered field (Petr Oros) [2076586] - devlink: Unlock on error in dumpit() (Petr Oros) [2076586] - devlink: Fix some error codes (Petr Oros) [2076586] - net: devlink: Add support for port regions (Petr Oros) [2076586] - netdevsim: Forbid devlink reload when adding or deleting ports (Petr Oros) [2076586] - netdevsim: dev: Initialize FIB module after debugfs (Petr Oros) [2076586] - pidfd: fix a poll race when setting exit_state (Oleg Nesterov) [2044587] - fork: fix pidfd_poll()'s return type (Oleg Nesterov) [2044587] - pidfd: add polling support (Oleg Nesterov) [2044587] - kabi: introduce the kabi_aux_*() helpers (Oleg Nesterov) [2044587] - tg3: Remove redundant assignments (Ken Cox) [2043792] - ethernet: Remove redundant statement (Ken Cox) [2043792] - ethernet: tg3: remove direct netdev->dev_addr writes (Ken Cox) [2043792] - net: tg3: fix redundant check of true expression (Ken Cox) [2043792] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2043792] - net: ethernet: Use existing define with polynomial (Ken Cox) [2043792]- scsi: mpt3sas: Fix mpt3sas_check_same_4gb_region() kdoc comment (Tomas Henzl) [2068045] - scsi: mpt3sas: Fix incorrect 4GB boundary check (Tomas Henzl) [2068045] - genirq/affinity: Consider that CPUs on nodes can be unbalanced (Ming Lei) [2074317] - scsi: target: pscsi: Set SCF_TREAT_READ_AS_NORMAL flag only if there is valid data (Maurizio Lombardi) [2074246] - audit: don't deref the syscall args when checking the openat2 open_how::flags (Carlos Maiolino) [2026590] - audit: add OPENAT2 record to list "how" info (Carlos Maiolino) [2026590] - audit: add support for the openat2 syscall (Carlos Maiolino) [2026590] - audit: replace magic audit syscall class numbers with macros (Carlos Maiolino) [2026590] - tools include UAPI: Sync x86's syscalls_64.tbl, generic unistd.h and fcntl.h to pick up openat2 and pidfd_getfd (Carlos Maiolino) [2026590] - open: don't silently ignore unknown O-flags in openat2() (Carlos Maiolino) [2026590] - openat2: reject RESOLVE_BENEATH|RESOLVE_IN_ROOT (Carlos Maiolino) [2026590] - open: introduce openat2(2) syscall (Carlos Maiolino) [2026590] - namei: LOOKUP_{IN_ROOT,BENEATH}: permit limited ".." resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_IN_ROOT: chroot-like scoped resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_BENEATH: O_BENEATH-like scoped resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_NO_XDEV: block mountpoint crossing (Carlos Maiolino) [2026590] - namei: LOOKUP_NO_MAGICLINKS: block magic-link resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_NO_SYMLINKS: block symlink resolution (Carlos Maiolino) [2026590] - namei: allow set_root() to produce errors (Carlos Maiolino) [2026590] - namei: allow nd_jump_link() to produce errors (Carlos Maiolino) [2026590] - nsfs: clean-up ns_get_path() signature to return int (Carlos Maiolino) [2026590] - namei: only return -ECHILD from follow_dotdot_rcu() (Carlos Maiolino) [2026590] - make path_init() unconditionally paired with terminate_walk() (Carlos Maiolino) [2026590] - nsfs: unobfuscate (Carlos Maiolino) [2026590] - ASoC: Intel: soc-acpi: add entries in ADL match table (Jaroslav Kysela) [2052011] - nvme-fc: add support for ->map_queues (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix typos in comments (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.400-k (Nilesh Javali) [2044833] - scsi: qla2xxx: Increase max limit of ql2xnvme_queues (Nilesh Javali) [2044833] - scsi: qla2xxx: Use correct feature type field during RFF_ID processing (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix stuck session of PRLI reject (Nilesh Javali) [2044833] - scsi: qla2xxx: Reduce false trigger to login (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix laggy FC remote port session recovery (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix hang due to session stuck (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix N2N inconsistent PLOGI (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix crash during module load unload test (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix missed DMA unmap for NVMe ls requests (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix loss of NVMe namespaces after driver reload test (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix incorrect reporting of task management failure (Nilesh Javali) [2044833] - scsi: qla2xxx: Use named initializers for q_dev_state (Nilesh Javali) [2044833] - scsi: qla2xxx: Use named initializers for port_[d]state_str (Nilesh Javali) [2044833] - scsi: qla2xxx: Stop using the SCSI pointer (Nilesh Javali) [2044833] - scsi: qla2xxx: Remove unused qla_sess_op_cmd_list from scsi_qla_host_t (Nilesh Javali) [2044833] - scsi: qla2xxx: Add qla2x00_async_done() for async routines (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.300-k (Nilesh Javali) [2044833] - scsi: qla2xxx: Check for firmware dump already collected (Nilesh Javali) [2044833] - scsi: qla2xxx: Add devids and conditionals for 28xx (Nilesh Javali) [2044833] - scsi: qla2xxx: Suppress a kernel complaint in qla_create_qpair() (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix T10 PI tag escape and IP guard options for 28XX adapters (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix clang warning (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix warning for missing error code (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix device reconnect in loop topology (Nilesh Javali) [2044833] - scsi: qla2xxx: Add ql2xnvme_queues module param to configure number of NVMe queues (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix wrong FDMI data for 64G adapter (Nilesh Javali) [2044833] - scsi: qla2xxx: Add retry for exec firmware (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix scheduling while atomic (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix premature hw access after PCI error (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix warning message due to adisc being flushed (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix stuck session in gpdb (Nilesh Javali) [2044833] - scsi: qla2xxx: Implement ref count for SRB (Nilesh Javali) [2044833] - scsi: qla2xxx: Refactor asynchronous command initialization (Nilesh Javali) [2044833] - scsi: qla2xxx: Synchronize rport dev_loss_tmo setting (Nilesh Javali) [2044833] - scsi: qla2xxx: Format log strings only if needed (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix off by one bug in qla_edif_app_getfcinfo() (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix mailbox direction flags in qla2xxx_get_adapter_id() (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.200-k (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix EDIF bsg (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix inconsistent check of db_flags (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Increase ELS payload (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Reduce connection thrash (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Tweak trace message (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Replace list_for_each_safe with list_for_each_entry_safe (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Flush stale events and msgs on session down (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix app start delay (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix app start fail (Nilesh Javali) [2044833] - scsi: qla2xxx: Turn off target reset during issue_lip (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix gnl list corruption (Nilesh Javali) [2044833] - scsi: qla2xxx: Relogin during fabric disturbance (Nilesh Javali) [2044833] - qla2xxx: add ->map_queues support for nvme (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix unmap of already freed sgl (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix a memory leak in an error path of qla2x00_process_els() (Nilesh Javali) [2044833] - scsi: qla2xxx: Return -ENOMEM if kzalloc() fails (Nilesh Javali) [2044833] - scsi: qla2xxx: Remove a declaration (Nilesh Javali) [2044833] - scsi: target: qla2xxx: Replace enable attr with ops.enable (Nilesh Javali) [2044833] - scsi: qla2xxx: Restore initiator in dual mode (Nilesh Javali) [2044833] - scsi: qla2xxx: Remove redundant initialization of pointer req (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.100-k (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix use after free in eh_abort path (Nilesh Javali) [2044833] - scsi: qla2xxx: Move heartbeat handling from DPC thread to workqueue (Nilesh Javali) [2044833] - scsi: qla2xxx: Call process_response_queue() in Tx path (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Use link event to wake up app (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix crash in NVMe abort path (Nilesh Javali) [2044833] - scsi: qla2xxx: Check for firmware capability before creating QPair (Nilesh Javali) [2044833] - scsi: qla2xxx: Display 16G only as supported speeds for 3830c card (Nilesh Javali) [2044833] - scsi: qla2xxx: Indicate correct supported speeds for Mezz card (Nilesh Javali) [2044833] - scsi: qla2xxx: Add support for mailbox passthru (Nilesh Javali) [2044833] - scsi: qla2xxx: Open-code qla2xxx_eh_device_reset() (Nilesh Javali) [2044833] - scsi: qla2xxx: Open-code qla2xxx_eh_target_reset() (Nilesh Javali) [2044833] - scsi: qla2xxx: Do not call fc_block_scsi_eh() during bus reset (Nilesh Javali) [2044833] - sctp: count singleton chunks in assoc user stats (Jamie Bainbridge) [2073913] - hrtimer: Unbreak hrtimer_force_reprogram() (Fernando Pacheco) [2071776] - hrtimer: Use raw_cpu_ptr() in clock_was_set() (Fernando Pacheco) [2071776] - hrtimer: Avoid more SMP function calls in clock_was_set() (Fernando Pacheco) [2071776] - hrtimer: Avoid unnecessary SMP function calls in clock_was_set() (Fernando Pacheco) [2071776] - hrtimer: Add bases argument to clock_was_set() (Fernando Pacheco) [2071776] - time/timekeeping: Avoid invoking clock_was_set() twice (Fernando Pacheco) [2071776] - timekeeping: Distangle resume and clock-was-set events (Fernando Pacheco) [2071776] - timerfd: Provide timerfd_resume() (Fernando Pacheco) [2071776] - hrtimer: Force clock_was_set() handling for the HIGHRES=n, NOHZ=y case (Fernando Pacheco) [2071776] - hrtimer: Ensure timerfd notification for HIGHRES=n (Fernando Pacheco) [2071776] - hrtimer: Consolidate reprogramming code (Fernando Pacheco) [2071776] - hrtimer: Avoid double reprogramming in __hrtimer_start_range_ns() (Fernando Pacheco) [2071776] - hrtimer: Update softirq_expires_next correctly after __hrtimer_get_next_event() (Fernando Pacheco) [2071776] - hrtimer: Annotate lockless access to timer->state (Fernando Pacheco) [2071776] - drm/i915/display: Remove check for low voltage sku for max dp source rate (Jocelyn Falempe) [2063931] - s390/kexec: handle R_390_PLT32DBL rela in arch_kexec_apply_relocations_add() (Philipp Rudo) [2039278] - s390/kexec_file: fix error handling when applying relocations (Philipp Rudo) [2039278] - s390/kexec_file: print some more error messages (Philipp Rudo) [2039278] - ixgbe: respect metadata on XSK Rx to skb (Ken Cox) [2037952] - ixgbe: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Ken Cox) [2037952] - ixgbe: pass bi->xdp to ixgbe_construct_skb_zc() directly (Ken Cox) [2037952] - ixgbe: Remove useless DMA-32 fallback configuration (Ken Cox) [2037952] - ixgbe: switch to napi_build_skb() (Ken Cox) [2037952] - ixgbe: set X550 MDIO speed before talking to PHY (Ken Cox) [2037952] - ixgbe: Document how to enable NBASE-T support (Ken Cox) [2037952] - xsk: Wipe out dead zero_copy_allocator declarations (Ken Cox) [2037952] - ixgbe: let the xdpdrv work with more than 64 cpus (Ken Cox) [2037952] - scsi: fcoe: Fix I/O path allocation (Ken Cox) [2037952] - ixgbe: extend PTP gettime function to read system clock (Ken Cox) [2037952] - ixgbe: Replace GFP_ATOMIC with GFP_KERNEL (Ken Cox) [2037952] - net: mpls: Fix notifications when deleting a device (Guillaume Nault) [2081757]- sched/cputime, proc/stat: Fix incorrect guest nice cpustat value (Waiman Long) [2017382] - procfs: Use all-in-one vtime aware kcpustat accessor (Waiman Long) [2017382] - procfs: Use vtime aware kcpustat accessor to fetch CPUTIME_SYSTEM (Waiman Long) [2017382] - proc: read kernel cpu stat pointer once (Waiman Long) [2017382] - proc: use "unsigned int" in /proc/stat hook (Waiman Long) [2017382] - sched/cputime: Support other fields on kcpustat_field() (Waiman Long) [2017382] - sched/cputime: Add vtime guest task state (Waiman Long) [2017382] - sched/cputime: Add vtime idle task state (Waiman Long) [2017382] - sched/cputime: Spare a seqcount lock/unlock cycle on context switch (Waiman Long) [2017382] - sched/vtime: Move task_struct_rh->vtime_cpu back to vtime structure (Waiman Long) [2017382] - usb: xhci-plat: fix crash when suspend if remote wake enable (Mark Langsdorf) [2065730] - PM: domains: Improve runtime PM performance state handling (Mark Langsdorf) [2065730] - firmware_loader: fix use-after-free in firmware_fallback_sysfs (Mark Langsdorf) [2065730] - firmware_loader: use -ETIMEDOUT instead of -EAGAIN in fw_load_sysfs_fallback (Mark Langsdorf) [2065730] - driver core: Prevent warning when removing a device link from unregistered consumer (Mark Langsdorf) [2065730] - PM: domains: Shrink locking area of the gpd_list_lock (Mark Langsdorf) [2065730] - PM: sleep: Use ktime_us_delta() in initcall_debug_report() (Mark Langsdorf) [2065730] - driver core: Export device_driver_attach() (Mark Langsdorf) [2065730] - driver core: Don't return EPROBE_DEFER to userspace during sysfs bind (Mark Langsdorf) [2065730] - driver core: Flow the return code from ->probe() through to sysfs bind (Mark Langsdorf) [2065730] - driver core: Better distinguish probe errors in really_probe (Mark Langsdorf) [2065730] - driver core: Pull required checks into driver_probe_device() (Mark Langsdorf) [2065730] - driver core: add a helper to setup both the of_node and fwnode of a device (Mark Langsdorf) [2065730] - devres: Enable trace events (Mark Langsdorf) [2065730] - devres: No need to call remove_nodes() when there none present (Mark Langsdorf) [2065730] - devres: Use list_for_each_safe_from() in remove_nodes() (Mark Langsdorf) [2065730] - devres: Make locking straight forward in release_nodes() (Mark Langsdorf) [2065730] - regmap: mdio: Reject invalid addresses (Mark Langsdorf) [2065730] - regmap: mdio: Fix regmap_bus pointer constness (Mark Langsdorf) [2065730] - PM: runtime: Allow unassigned ->runtime_suspend|resume callbacks (Mark Langsdorf) [2065730] - PM: runtime: Improve path in rpm_idle() when no callback (Mark Langsdorf) [2065730] - PM: domains: Drop/restore performance state votes for devices at runtime PM (Mark Langsdorf) [2065730] - PM: domains: Return early if perf state is already set for the device (Mark Langsdorf) [2065730] - PM: domains: Split code in dev_pm_genpd_set_performance_state() (Mark Langsdorf) [2065730] - PM: domains: fix some kernel-doc issues (Mark Langsdorf) [2065730] - regmap: mdio: Add clause-45 support (Mark Langsdorf) [2065730] - regmap: mdio: Clean up invalid clause-22 addresses (Mark Langsdorf) [2065730] - regmap-irq: Introduce inverted status registers support (Mark Langsdorf) [2065730] - ACPI: property: Constify stubs for CONFIG_ACPI=n case (Mark Langsdorf) [2065730] - device property: Unify access to of_node (Mark Langsdorf) [2065730] - drivers/base: Constify static attribute_group structs (Mark Langsdorf) [2065730] - devcoredump: remove contact information (Mark Langsdorf) [2065730] - component: Rename 'dev' to 'parent' (Mark Langsdorf) [2065730] - component: Drop 'dev' argument to component_match_realloc() (Mark Langsdorf) [2065730] - device property: Don't check for NULL twice in the loops (Mark Langsdorf) [2065730] - regmap: add support for 7/17 register formating (Mark Langsdorf) [2065730] - PM: wakeirq: Set IRQF_NO_AUTOEN when requesting the IRQ (Mark Langsdorf) [2065730] - drivers/base/node.c: make CACHE_ATTR define static DEVICE_ATTR_RO (Mark Langsdorf) [2065730] - regmap: mdio: Don't modify output if error happened (Mark Langsdorf) [2065730] - regmap: Add MDIO bus support (Mark Langsdorf) [2065730] - regmap-i2c: Set regmap max raw r/w from quirks (Mark Langsdorf) [2065730] - driver core: attribute_container: fix W=1 warnings (Mark Langsdorf) [2065730] - driver core: replace open-coded device_lock_assert() (Mark Langsdorf) [2065730] - device property: Retrieve fwnode from of_node via accessor (Mark Langsdorf) [2065730] - cpufreq: Kconfig: fix documentation links (Mark Langsdorf) [2065730] - PM: wakeup: remove redundant assignment to variable retval (Mark Langsdorf) [2065730] - PM / wakeup: use dev_set_name() directly (Mark Langsdorf) [2065730] - PM: clk: remove kernel-doc warning (Mark Langsdorf) [2065730] - PM: wakeup: fix kernel-doc warnings and fix typos (Mark Langsdorf) [2065730] - PM: runtime: remove kernel-doc warnings (Mark Langsdorf) [2065730] - software node: Introduce SOFTWARE_NODE_REFERENCE() helper macro (Mark Langsdorf) [2065730] - software node: Imply kobj_to_swnode() to be no-op (Mark Langsdorf) [2065730] - software node: Deduplicate code in fwnode_create_software_node() (Mark Langsdorf) [2065730] - software node: Introduce software_node_alloc()/software_node_free() (Mark Langsdorf) [2065730] - software node: Free resources explicitly when swnode_register() fails (Mark Langsdorf) [2065730] - driver core: add helper for deferred probe reason setting (Mark Langsdorf) [2065730] - driver core: Improve fw_devlink & deferred_probe_timeout interaction (Mark Langsdorf) [2065730] - driver core: Replace printf() specifier and drop unneeded casting (Mark Langsdorf) [2065730] - driver core: Cast to (void *) with __force for __percpu pointer (Mark Langsdorf) [2065730] - devcoredump: fix kernel-doc warning (Mark Langsdorf) [2065730] - platform-msi: fix kernel-doc warnings (Mark Langsdorf) [2065730] - driver core: attribute_container: remove kernel-doc warnings (Mark Langsdorf) [2065730] - driver core: remove kernel-doc warnings (Mark Langsdorf) [2065730] - base: dd: fix error return code of driver_sysfs_add() (Mark Langsdorf) [2065730] - driver core: Use unbound workqueue for deferred probes (Mark Langsdorf) [2065730] - devcoredump: avoid -Wempty-body warnings (Mark Langsdorf) [2065730] - device property: Add test cases for fwnode_property_count_*() APIs (Mark Langsdorf) [2065730] - device property: Sync descriptions of swnode array and group APIs (Mark Langsdorf) [2065730] - driver core: Update device link status properly for device_bind_driver() (Mark Langsdorf) [2065730] - driver core: Avoid pointless deferred probe attempts (Mark Langsdorf) [2065730] - drivers/base/cpu: remove redundant assignment of variable retval (Mark Langsdorf) [2065730] - driver core: dd: remove deferred_devices variable (Mark Langsdorf) [2065730] - driver core: component: remove dentry pointer in "struct master" (Mark Langsdorf) [2065730] - driver core: auxiliary bus: Remove unneeded module bits (Mark Langsdorf) [2065730] - PM: domains: Don't runtime resume devices at genpd_prepare() (Mark Langsdorf) [2065730] - redhat/configs: Add CONFIG_X86_AMD_PSTATE (Prarit Bhargava) - ACPI: CPPC: Drop redundant local variable from cpc_read() (Prarit Bhargava) [1961726] - ACPI: CPPC: Fix up I/O port access in cpc_read() (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Fix Kconfig dependencies for AMD P-State (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Fix struct amd_cpudata kernel-doc comment (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add AMD P-State performance attributes (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add AMD P-State frequencies attributes (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add boost mode support for AMD P-State (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add trace for AMD P-State module (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Introduce the support for the processors with shared memory solution (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add fast switch function for AMD P-State (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Introduce a new AMD P-State driver to support future processors (Prarit Bhargava) [1961726] - ACPI: CPPC: Add CPPC enable register function (Prarit Bhargava) [1961726] - ACPI: CPPC: Check present CPUs for determining _CPC is valid (Prarit Bhargava) [1961726] - ACPI: CPPC: Implement support for SystemIO registers (Prarit Bhargava) [1961726] - x86/msr: Add AMD CPPC MSR definitions (Prarit Bhargava) [1961726] - x86/cpufeatures: Add AMD Collaborative Processor Performance Control feature flag (Prarit Bhargava) [1961726] - cpufreq: remove useless INIT_LIST_HEAD() (Prarit Bhargava) [1961726] - cpufreq: CPPC: Pass structure instance by reference (Prarit Bhargava) [1961726] - cpufreq: CPPC: Fix potential memleak in cppc_cpufreq_cpu_init (Prarit Bhargava) [1961726] - cpufreq: CPPC: Migrate to ->exit() callback instead of ->stop_cpu() (Prarit Bhargava) [1961726] - cpufreq: cppc: simplify default delay_us setting (Prarit Bhargava) [1961726] - cppc_cpufreq: replace per-cpu data array with a list (Prarit Bhargava) [1961726] - cppc_cpufreq: expose information on frequency domains (Prarit Bhargava) [1961726] - cppc_cpufreq: clarify support for coordination types (Prarit Bhargava) [1961726] - cppc_cpufreq: use policy->cpu as driver of frequency setting (Prarit Bhargava) [1961726] - cppc_cpufreq: simplify use of performance capabilities (Prarit Bhargava) [1961726] - cppc_cpufreq: clean up cpu, cpu_num and cpunum variable use (Prarit Bhargava) [1961726] - cppc_cpufreq: fix misspelling, code style and readability issues (Prarit Bhargava) [1961726] - cpufreq: CPPC: Reuse caps variable in few routines (Prarit Bhargava) [1961726] - cpufreq: cppc: Reorder code and remove apply_hisi_workaround variable (Prarit Bhargava) [1961726] - cpufreq: CPPC: add SW BOOST support (Prarit Bhargava) [1961726] - net/sched: act_ct: fix ref leak when switching zones (Marcelo Ricardo Leitner) [2014027] - net/sched: act_ct: Fix flow table lookup after ct clear or switching zones (Marcelo Ricardo Leitner) [2014027] - genirq: Provide new interfaces for affinity hints (Ivan Vecera) [2070044] - af_key: add __GFP_ZERO flag for compose_sadb_supported in function pfkey_register (Xin Long) [2075181] - ipv6: make ip6_rt_gc_expire an atomic_t (Hangbin Liu) [2077365] - ipv6: fix panic when forwarding a pkt with no in6 dev (Hangbin Liu) [2077365] - net: ipv6: ensure we call ipv6_mc_down() at most once (Hangbin Liu) [2077365] - ipv6/addrconf: use a boolean to choose between UNREGISTER/DOWN (Hangbin Liu) [2077365] - ipv6/addrconf: call addrconf_ifdown with consistent values (Hangbin Liu) [2077365] - ipmr,ip6mr: acquire RTNL before calling ip[6]mr_free_table() on failure path (Hangbin Liu) [2077365] - ipv6: annotate accesses to fn->fn_sernum (Hangbin Liu) [2077365] - ipv6: correct comments about fib6_node sernum (Hangbin Liu) [2077365] - ipv6: fix typos in __ip6_finish_output() (Hangbin Liu) [2077365] - oom_kill.c: futex: delay the OOM reaper to allow time for proper futex cleanup (Nico Pache) [1778048] - KVM: PPC: Fix TCE handling for VFIO (Daniel Henrique Barboza) [2062687] - udf: Restore i_lenAlloc when inode expansion fails (Carlos Maiolino) [2054653] {CVE-2022-0617} - udf: Fix NULL ptr deref when converting from inline format (Carlos Maiolino) [2054653] {CVE-2022-0617} - net/tls: fix slab-out-of-bounds bug in decrypt_internal (Sabrina Dubroca) [2080344] - tls: fix replacing proto_ops (Sabrina Dubroca) [2080344] - net/tls: use semicolons rather than commas to separate statements (Sabrina Dubroca) [2080344] - redhat: further rpminspect tuning (Jarod Wilson)- tun: annotate access to queue->trans_start (Ivan Vecera) [2069673] - net: annotate accesses to queue->trans_start (Ivan Vecera) [2069673] - ntb_hw_amd: Add NTB PCI ID for new gen CPU (Sudheesh Mavila) [2037287] - ipmi: initialize len variable (Tony Camuso) [2069839] - ipmi: kcs: aspeed: Remove old bindings support (Tony Camuso) [2069839] - ipmi:ipmb: Add the ability to have a separate slave and master device (Tony Camuso) [2069839] - ipmi:ipmi_ipmb: Unregister the SMI on remove (Tony Camuso) [2069839] - ipmi: kcs: aspeed: Add AST2600 compatible string (Tony Camuso) [2069839] - ipmi: ssif: replace strlcpy with strscpy (Tony Camuso) [2069839] - ipmi/watchdog: Constify ident (Tony Camuso) [2069839] - ipmi: Fix UAF when uninstall ipmi_si and ipmi_msghandler module (Tony Camuso) [2069839] - ipmi: fix initialization when workqueue allocation fails (Tony Camuso) [2069839] - ipmi: bail out if init_srcu_struct fails (Tony Camuso) [2069839] - ipmi: ssif: initialize ssif_info->client early (Tony Camuso) [2069839] - ipmi: msghandler: Make symbol 'remove_work_wq' static (Tony Camuso) [2069839] - ipmi: Move remove_work to dedicated workqueue (Tony Camuso) [2069839] - ipmi: kcs_bmc: Fix a memory leak in the error handling path of 'kcs_bmc_serio_add_device()' (Tony Camuso) [2069839] - char: ipmi: replace snprintf in show functions with sysfs_emit (Tony Camuso) [2069839] - ipmi: ipmb: fix dependencies to eliminate build error (Tony Camuso) [2069839] - ipmi:ipmb: Add OF support (Tony Camuso) [2069839] - ipmi: bt: Add ast2600 compatible string (Tony Camuso) [2069839] - ipmi: bt-bmc: Use registers directly (Tony Camuso) [2069839] - ipmi: ipmb: Fix off-by-one size check on rcvlen (Tony Camuso) [2069839] - ipmi:ssif: Use depends on, not select, for I2C (Tony Camuso) [2069839] - ipmi:ipmb: Add initial support for IPMI over IPMB (Tony Camuso) [2069839] - ipmi: Export ipmb_checksum() (Tony Camuso) [2069839] - ipmi: Check error code before processing BMC response (Tony Camuso) [2069839] - ipmi:devintf: Return a proper error when recv buffer too small (Tony Camuso) [2069839] - ipmi: Disable some operations during a panic (Tony Camuso) [2069839] - ipmi:watchdog: Set panic count to proper value on a panic (Tony Camuso) [2069839] - char: ipmi: use DEVICE_ATTR helper macro (Tony Camuso) [2069839] - ipmi: rate limit ipmi smi_event failure message (Tony Camuso) [2069839] - cifs: fix NULL ptr dereference in smb2_ioctl_query_info() (Ronnie Sahlberg) [2074316] - cifs: prevent bad output lengths in smb2_ioctl_query_info() (Ronnie Sahlberg) [2074316] - net: tcp better handling of reordering then loss cases (Marcelo Ricardo Leitner) [2074566] - tcp: tcp_mark_head_lost is only valid for sack-tcp (Marcelo Ricardo Leitner) [2074566] - udp6: allow SO_MARK ctrl msg to affect routing (Xin Long) [2066598] - ip: Fix SO_MARK in RST, ACK and ICMP packets (Xin Long) [2066598] - ip: support SO_MARK cmsg (Xin Long) [2066598] - ip: unconditionally set cork gso_size (Xin Long) [2066598] - ip: remove tx_flags from ipcm_cookie and use same logic for v4 and v6 (Xin Long) [2066598] - ipv6: fold sockcm_cookie into ipcm6_cookie (Xin Long) [2066598] - sock: sockc cookie initializer (Xin Long) [2066598] - ipv6: ipcm6_cookie initializer (Xin Long) [2066598] - ipv4: ipcm_cookie initializers (Xin Long) [2066598] - s390/kexec: fix memory leak of ipl report buffer (Lichen Liu) [2001758] - s390/kexec: fix return code handling (Lichen Liu) [2001758] - block: don't try to throttle split bio if iops limit isn't set (Ming Lei) [2027241] - block: throttle split bio in case of iops limit (Ming Lei) [2027241] - block: don't check bio in blk_throtl_dispatch_work_fn (Ming Lei) [2027241] - x86/apic/vector: Fix ordering in vector assignment (Frank Ramsay) [2076607] - mt76: mt7921e: fix possible probe failure after reboot (Íñigo Huguet) [2078877] - veth: Ensure eth header is in skb's linear part (Guillaume Nault) [1966887] - net: annotate accesses to dev->gso_max_segs (Ivan Vecera) [2080317] - net: annotate accesses to dev->gso_max_size (Ivan Vecera) [2080317] - NFS: Don't loop forever in nfs_do_recoalesce() (Scott Mayhew) [2080467] - tipc: fix the timer expires after interval 100ms (Xin Long) [2080369] - tipc: Fix end of loop tests for list_for_each_entry() (Xin Long) [2080369] - tipc: fix a bit overflow in tipc_crypto_key_rcv() (Xin Long) [2080369] - tipc: rate limit warning for received illegal binding update (Xin Long) [2080369] - net: tipc: remove unused static inlines (Xin Long) [2080369] - tipc: fix unique bearer names sanity check (Xin Long) [2080369] - net/tipc: fix missing destroy_workqueue() on error in tipc_crypto_start() (Xin Long) [2080369] - tipc: add extack messages for bearer/media failure (Xin Long) [2080369] - scsi: smartpqi: Fix unused variable pqi_pm_ops for clang (Don Brace) [2012227] - scsi: smartpqi: Update version to 2.1.14-035 (Don Brace) [2012227] - scsi: smartpqi: Fix lsscsi -t SAS addresses (Don Brace) [2012227] - scsi: smartpqi: Fix hibernate and suspend (Don Brace) [2012227] - scsi: smartpqi: Fix BUILD_BUG_ON() statements (Don Brace) [2012227] - scsi: smartpqi: Fix NUMA node not updated during init (Don Brace) [2012227] - scsi: smartpqi: Expose SAS address for SATA drives (Don Brace) [2012227] - scsi: smartpqi: Speed up RAID 10 sequential reads (Don Brace) [2012227] - scsi: smartpqi: Fix kdump issue when controller is locked up (Don Brace) [2012227] - scsi: smartpqi: Update volume size after expansion (Don Brace) [2012227] - scsi: smartpqi: Avoid drive spin-down during suspend (Don Brace) [2012227] - scsi: smartpqi: Resolve delay issue with PQI_HZ value (Don Brace) [2012227] - scsi: smartpqi: Fix a typo in func pqi_aio_submit_io() (Don Brace) [2012227] - scsi: smartpqi: Fix a name typo and cleanup code (Don Brace) [2012227] - scsi: smartpqi: Quickly propagate path failures to SCSI midlayer (Don Brace) [2012227] - scsi: smartpqi: Eliminate drive spin down on warm boot (Don Brace) [2012227] - scsi: smartpqi: Enable SATA NCQ priority in sysfs (Don Brace) [2012227] - scsi: smartpqi: Add PCI IDs (Don Brace) [2012227] - scsi: smartpqi: Fix rmmod stack trace (Don Brace) [2012227] - ibmvnic: fix race between xmit and reset (Diego Domingos) [2051354] - ibmvnic: Allow queueing resets during probe (Diego Domingos) [2051354] - ibmvnic: clear fop when retrying probe (Diego Domingos) [2051354] - ibmvnic: init init_done_rc earlier (Diego Domingos) [2051354] - ibmvnic: register netdev after init of adapter (Diego Domingos) [2051354] - ibmvnic: complete init_done on transport events (Diego Domingos) [2051354] - ibmvnic: define flush_reset_queue helper (Diego Domingos) [2051354] - ibmvnic: initialize rc before completing wait (Diego Domingos) [2051354] - ibmvnic: free reset-work-item when flushing (Diego Domingos) [2051354] - ibmvnic: schedule failover only if vioctl fails (Diego Domingos) [2051354] - net/ibmvnic: Cleanup workaround doing an EOI after partition migration (Diego Domingos) [2051354]- xfs: don't expose misaligned extszinherit hints to userspace (Brian Foster) [2072552] - xfs: correct the narrative around misaligned rtinherit/extszinherit dirs (Brian Foster) [2072552] - xfs: fix endianness issue in xfs_ag_shrink_space (Brian Foster) [2072552] - xfs: bunmapi has unnecessary AG lock ordering issues (Brian Foster) [2072552] - xfs: btree format inode forks can have zero extents (Brian Foster) [2072552] - xfs: validate extsz hints against rt extent size when rtinherit is set (Brian Foster) [2072552] - xfs: standardize extent size hint validation (Brian Foster) [2072552] - xfs: check free AG space when making per-AG reservations (Brian Foster) [2072552] - xfs: retry allocations when locality-based search fails (Brian Foster) [2072552] - xfs: adjust rt allocation minlen when extszhint > rtextsize (Brian Foster) [2072552] - iomap: remove unused private field from ioend (Brian Foster) [2072552] - xfs: don't allow log writes if the data device is readonly (Brian Foster) [2072552] - xfs: count free space btree blocks when scrubbing pre-lazysbcount fses (Brian Foster) [2072552] - xfs: update superblock counters correctly for !lazysbcount (Brian Foster) [2072552] - xfs: don't check agf_btreeblks on pre-lazysbcount filesystems (Brian Foster) [2072552] - xfs: rename struct xfs_legacy_ictimestamp (Brian Foster) [2072552] - xfs: rename xfs_ictimestamp_t (Brian Foster) [2072552] - xfs: remove xfs_quiesce_attr declaration (Brian Foster) [2072552] - xfs: remove XFS_IFEXTENTS (Brian Foster) [2072552] - xfs: remove XFS_IFINLINE (Brian Foster) [2072552] - xfs: remove XFS_IFBROOT (Brian Foster) [2072552] - xfs: only look at the fork format in xfs_idestroy_fork (Brian Foster) [2072552] - xfs: simplify xfs_attr_remove_args (Brian Foster) [2072552] - xfs: rename and simplify xfs_bmap_one_block (Brian Foster) [2072552] - xfs: move the XFS_IFEXTENTS check into xfs_iread_extents (Brian Foster) [2072552] - xfs: get rid of the ip parameter to xchk_setup_* (Brian Foster) [2072552] - xfs: move the check for post-EOF mappings into xfs_can_free_eofblocks (Brian Foster) [2072552] - xfs: move the xfs_can_free_eofblocks call under the IOLOCK (Brian Foster) [2072552] - xfs: precalculate default inode attribute offset (Brian Foster) [2072552] - xfs: default attr fork size does not handle device inodes (Brian Foster) [2072552] - xfs: inode fork allocation depends on XFS_IFEXTENT flag (Brian Foster) [2072552] - xfs: eager inode attr fork init needs attr feature awareness (Brian Foster) [2072552] - xfs: scrub: Disable check for unoptimized data fork bmbt node (Brian Foster) [2072552] - xfs: Use struct xfs_bmdr_block instead of struct xfs_btree_block to calculate root node size (Brian Foster) [2072552] - xfs: merge _xfs_dic2xflags into xfs_ip2xflags (Brian Foster) [2072552] - xfs: move the di_crtime field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_flags2 field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_flags field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_forkoff field to struct xfs_inode (Brian Foster) [2072552] - xfs: use a union for i_cowextsize and i_flushiter (Brian Foster) [2072552] - xfs: use XFS_B_TO_FSB in xfs_ioctl_setattr (Brian Foster) [2072552] - xfs: cleanup xfs_fill_fsxattr (Brian Foster) [2072552] - xfs: move the di_flushiter field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_cowextsize field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_extsize field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_nblocks field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_size field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_projid field to struct xfs_inode (Brian Foster) [2072552] - xfs: don't clear the "dinode core" in xfs_inode_alloc (Brian Foster) [2072552] - xfs: remove the di_dmevmask and di_dmstate fields from struct xfs_icdinode (Brian Foster) [2072552] - xfs: remove the unused xfs_icdinode_has_bigtime helper (Brian Foster) [2072552] - xfs: handle crtime more carefully in xfs_bulkstat_one_int (Brian Foster) [2072552] - xfs: consistently initialize di_flags2 (Brian Foster) [2072552] - xfs: split xfs_imap_to_bp (Brian Foster) [2072552] - xfs: scrub: Remove incorrect check executed on block format directories (Brian Foster) [2072552] - xfs: add error injection for per-AG resv failure (Brian Foster) [2072552] - xfs: support shrinking unused space in the last AG (Brian Foster) [2072552] - xfs: introduce xfs_ag_shrink_space() (Brian Foster) [2072552] - xfs: hoist out xfs_resizefs_init_new_ags() (Brian Foster) [2072552] - xfs: update lazy sb counters immediately for resizefs (Brian Foster) [2072552] - xfs: __percpu_counter_compare() inode count debug too expensive (Brian Foster) [2072552] - xfs: reduce debug overhead of dir leaf/node checks (Brian Foster) [2072552] - xfs: No need for inode number error injection in __xfs_dir3_data_check (Brian Foster) [2072552] - xfs: type verification is expensive (Brian Foster) [2072552] - xfs: optimise xfs_buf_item_size/format for contiguous regions (Brian Foster) [2072552] - xfs: xfs_buf_item_size_segment() needs to pass segment offset (Brian Foster) [2072552] - xfs: reduce buffer log item shadow allocations (Brian Foster) [2072552] - xfs: initialise attr fork on inode create (Brian Foster) [2072552] - xfs: ensure xfs_errortag_random_default matches XFS_ERRTAG_MAX (Brian Foster) [2072552] - xfs: rename variable mp to parsing_mp (Brian Foster) [2072552] - xfs: rename the blockgc workqueue (Brian Foster) [2072552] - xfs: validate ag btree levels using the precomputed values (Brian Foster) [2072552] - xfs: remove return value from xchk_ag_btcur_init (Brian Foster) [2072552] - xfs: set the scrub AG number in xchk_ag_read_headers (Brian Foster) [2072552] - xfs: bail out of scrub immediately if scan incomplete (Brian Foster) [2072552] - xfs: drop freeze protection when running GETFSMAP (Brian Foster) [2072552] - selftest/powerpc: Add PAPR sysfs attributes sniff test (Steve Best) [1986183] - powerpc/pseries: Interface to represent PAPR firmware attributes (Steve Best) [1986183] - net: mana: Remove unnecessary check of cqe_type in mana_process_rx_cqe() (Mohammed Gamal) [2051719] - net: mana: Add handling of CQE_RX_TRUNCATED (Mohammed Gamal) [2051719] - RDMA/rxe: Revert changes from irqsave to bh locks (Kamal Heib) [2056499] - RDMA/rxe: Check the last packet by RXE_END_MASK (Kamal Heib) [2056499] - RDMA/rxe: Remove qp->grp_lock and qp->grp_list (Kamal Heib) [2056499] - RDMA/rxe: Remove rxe_drop_all_macst_groups (Kamal Heib) [2056499] - RDMA/rxe: Enforce IBA o10-2.2.3 (Kamal Heib) [2056499] - RDMA/rxe: Rename rxe_mc_grp and rxe_mc_elem (Kamal Heib) [2056499] - RDMA/rxe: Move rxe_mcast_attach/detach to rxe_mcast.c (Kamal Heib) [2056499] - RDMA/rxe: Move rxe_mcast_add/delete to rxe_mcast.c (Kamal Heib) [2056499] - RDMA/cma: Do not change route.addr.src_addr outside state checks (Kamal Heib) [2056499] - RDMA/ib_srp: Fix a deadlock (Kamal Heib) [2056499] - RDMA/siw: Fix broken RDMA Read Fence/Resume logic. (Kamal Heib) [2056499] - IB/cm: Release previously acquired reference counter in the cm_id_priv (Kamal Heib) [2056499] - RDMA/siw: Fix refcounting leak in siw_create_qp() (Kamal Heib) [2056499] - RDMA/ucma: Protect mc during concurrent multicast leaves (Kamal Heib) [2056499] - RDMA/cma: Use correct address when leaving multicast group (Kamal Heib) [2056499] - IB/hfi1: Fix tstats alloc and dealloc (Kamal Heib) [2056499 2049845] - IB/hfi1: Fix AIP early init panic (Kamal Heib) [2056499 2049845] - IB/hfi1: Fix alloc failure with larger txqueuelen (Kamal Heib) [2056499 2049845] - IB/hfi1: Fix panic with larger ipoib send_queue_size (Kamal Heib) [2056499 2049845] - all: replace find_next{,_zero}_bit with find_first{,_zero}_bit where appropriate (Kamal Heib) [2056499] - RDMA/irdma: Remove the redundant return (Kamal Heib) [2056499 2037972] - RDMA/rxe: Use the standard method to produce udp source port (Kamal Heib) [2056499] - RDMA/irdma: Make the source udp port vary (Kamal Heib) [2056499 2037972] - RDMA/core: Calculate UDP source port based on flow label or lqpn/rqpn (Kamal Heib) [2056499] - IB/iser: Align coding style across driver (Kamal Heib) [2056499] - IB/iser: Remove un-needed casting to/from void pointer (Kamal Heib) [2056499] - IB/iser: Don't suppress send completions (Kamal Heib) [2056499] - IB/iser: Rename ib_ret local variable (Kamal Heib) [2056499] - IB/iser: Fix RNR errors (Kamal Heib) [2056499] - IB/iser: Remove deprecated pi_guard module param (Kamal Heib) [2056499] - IB/mlx5: Expose NDR speed through MAD (Kamal Heib) [2056499] - RDMA/rxe: Delete deprecated module parameters interface (Kamal Heib) [2056499] - RDMA/mad: Delete duplicated init_query_mad functions (Kamal Heib) [2056499] - RDMA/rxe: Fix indentations and operators sytle (Kamal Heib) [2056499] - RDMA: Use default_groups in kobj_type (Kamal Heib) [2056499] - RDMA/rxe: Fix a typo in opcode name (Kamal Heib) [2056499] - RDMA/rxe: Remove the unused xmit_errors member (Kamal Heib) [2056499] - RDMA/rxe: Remove redundant err variable (Kamal Heib) [2056499] - RDMA/irdma: Use auxiliary_device driver data helpers (Kamal Heib) [2056499 2037972] - driver core: auxiliary bus: Add driver data helpers (Kamal Heib) [2056499] - RDMA/cma: Let cma_resolve_ib_dev() continue search even after empty entry (Kamal Heib) [2056499] - RDMA/core: Let ib_find_gid() continue search even after empty entry (Kamal Heib) [2056499] - RDMA/core: Modify rdma_query_gid() to return accurate error codes (Kamal Heib) [2056499] - RDMA/rxe: Remove the unnecessary variable (Kamal Heib) [2056499] - RDMA/irdma: Fix the type used to declare a bitmap (Kamal Heib) [2056499 2037972] - RDMA/uverbs: Remove the unnecessary assignment (Kamal Heib) [2056499] - RDMA/siw: Use max() instead of doing it manually (Kamal Heib) [2056499] - RDMA/pvrdma: Use non-atomic bitmap functions when possible (Kamal Heib) [2056499] - RDMA/pvrdma: Use bitmap_zalloc() when applicable (Kamal Heib) [2056499] - IB/hfi1: Use bitmap_zalloc() when applicable (Kamal Heib) [2056499 2049845] - RDMA/siw: Use helper function to set sys_image_guid (Kamal Heib) [2056499] - RDMA/cma: Remove open coding of overflow checking for private_data_len (Kamal Heib) [2056499] - RDMA/rxe: Remove some #defines from rxe_pool.h (Kamal Heib) [2056499] - RDMA/rxe: Remove #include "rxe_loc.h" from rxe_pool.c (Kamal Heib) [2056499] - RDMA/rxe: Save object pointer in pool element (Kamal Heib) [2056499] - RDMA/rxe: Copy setup parameters into rxe_pool (Kamal Heib) [2056499] - RDMA/rxe: Cleanup rxe_pool_entry (Kamal Heib) [2056499] - RDMA/rxe: Replace irqsave locks with bh locks (Kamal Heib) [2056499] - RDMA/usnic: Clean up usnic_ib_alloc_pd() (Kamal Heib) [2056499] - RDMA/irdma: Use helper function to set GUIDs (Kamal Heib) [2056499 2037972] - RDMA/rxe: Prevent double freeing rxe_map_set() (Kamal Heib) [2056498] - IB/hfi1: Fix leak of rcvhdrtail_dummy_kvaddr (Kamal Heib) [2056498 2049845] - IB/hfi1: Fix early init panic (Kamal Heib) [2056498 2049845] - IB/hfi1: Insure use of smp_processor_id() is preempt disabled (Kamal Heib) [2056498 2049845] - IB/hfi1: Correct guard on eager buffer deallocation (Kamal Heib) [2056498 2049845] - RDMA: Fix use-after-free in rxe_queue_cleanup (Kamal Heib) [2056498] - RDMA/nldev: Check stat attribute before accessing it (Kamal Heib) [2056498] - IB/hfi1: Properly allocate rdma counter desc memory (Kamal Heib) [2056498 2049845] - RDMA/core: Set send and receive CQ before forwarding to the driver (Kamal Heib) [2056498] - RDMA/netlink: Add __maybe_unused to static inline in C file (Kamal Heib) [2056498] - RDMA/core: Require the driver to set the IOVA correctly during rereg_mr (Kamal Heib) [2056498] - RDMA/irdma: optimize rx path by removing unnecessary copy (Kamal Heib) [2056498 2037972] - IB/opa_vnic: Rebranding of OPA VNIC driver to Cornelis Networks (Kamal Heib) [2056498] - IB/hfi1: Rebranding of hfi1 driver to Cornelis Networks (Kamal Heib) [2056498 2049845] - RDMA/rxe: Make rxe_type_info static const (Kamal Heib) [2056498] - RDMA/rxe: Use 'bitmap_zalloc()' when applicable (Kamal Heib) [2056498] - RDMA/rxe: Save a few bytes from struct rxe_pool (Kamal Heib) [2056498] - RDMA/irdma: Remove the unused variable local_qp (Kamal Heib) [2056498 2037972] - RDMA/core: Fix missed initialization of rdma_hw_stats::lock (Kamal Heib) [2056498] - RDMA/irdma: Remove the unused spin lock in struct irdma_qp_uk (Kamal Heib) [2056498 2037972] - RDMA: Constify netdev->dev_addr accesses (Kamal Heib) [2056498] - RDMA/ipoib: Use dev_addr_mod() (Kamal Heib) [2056498] - RDMA/core: Use kvzalloc when allocating the struct ib_port (Kamal Heib) [2056498] - RDMA/irdma: Make irdma_uk_cq_init() return a void (Kamal Heib) [2056498 2037972] - RDMA/rxe: Convert kernel UD post send to use ah_num (Kamal Heib) [2056498] - RDMA/rxe: Lookup kernel AH from ah index in UD WQEs (Kamal Heib) [2056498] - RDMA/rxe: Replace ah->pd by ah->ibah.pd (Kamal Heib) [2056498] - RDMA/rxe: Create AH index and return to user space (Kamal Heib) [2056498] - RDMA/rxe: Change AH objects to indexed (Kamal Heib) [2056498] - RDMA/rxe: Move AV from rxe_send_wqe to rxe_send_wr (Kamal Heib) [2056498] - RDMA/irdma: Remove irdma_cqp_up_map_cmd() (Kamal Heib) [2056498 2037972] - RDMA/irdma: Remove irdma_get_hw_addr() (Kamal Heib) [2056498 2037972] - RDMA/irdma: Remove irdma_sc_send_lsmm_nostag() (Kamal Heib) [2056498 2037972] - RDMA/irdma: Remove irdma_uk_mw_bind() (Kamal Heib) [2056498 2037972] - RDMA: Remove redundant 'flush_workqueue()' calls (Kamal Heib) [2056498] - RDMA/iwpm: Remove redundant initialization of pointer err_str (Kamal Heib) [2056498] - RDMA/nldev: Allow optional-counter status configuration through RDMA netlink (Kamal Heib) [2056498] - RDMA/nldev: Split nldev_stat_set_mode_doit out of nldev_stat_set_doit (Kamal Heib) [2056498] - RDMA/nldev: Add support to get status of all counters (Kamal Heib) [2056498] - RDMA/counter: Add optional counter support (Kamal Heib) [2056498] - RDMA/counter: Add an is_disabled field in struct rdma_hw_stats (Kamal Heib) [2056498] - RDMA/core: Add a helper API rdma_free_hw_stats_struct (Kamal Heib) [2056498] - RDMA/bnxt_re: Fix kernel panic when trying to access bnxt_re_stat_descs (Kamal Heib) [2056499] - RDMA/counter: Add a descriptor in struct rdma_hw_stats (Kamal Heib) [2056498] - RDMA/bnxt_re: Update statistics counter name (Kamal Heib) [2056498] - RDMA/bnxt_re: Add extended statistics counters (Kamal Heib) [2056498] - RDMA/efa: CQ notifications (Kamal Heib) [2056498] - RDMA/rxe: Remove duplicate settings (Kamal Heib) [2056498] - RDMA/rxe: Set partial attributes when completion status != IBV_WC_SUCCESS (Kamal Heib) [2056498] - RDMA/rxe: Change the is_user member of struct rxe_cq to bool (Kamal Heib) [2056498] - RDMA/rxe: Remove the is_user members of struct rxe_sq/rxe_rq/rxe_srq (Kamal Heib) [2056498] - RDMA/irdma: Delete unused struct irdma_bth (Kamal Heib) [2056498 2037972] - IB/hf1: Use string_upper() instead of an open coded variant (Kamal Heib) [2056498] - RDMA/cma: Split apart the multiple uses of the same list heads (Kamal Heib) [2056498] - RDMA/rxe: Remove unused WR_READ_WRITE_OR_SEND_MASK (Kamal Heib) [2056498] - RDMA/rxe: Add MASK suffix for RXE_READ_OR_ATOMIC and RXE_WRITE_OR_SEND (Kamal Heib) [2056498] - RDMA/rxe: Add new RXE_READ_OR_WRITE_MASK (Kamal Heib) [2056498] - RDMA/hfi1: Use struct_size() and flex_array_size() helpers (Kamal Heib) [2056498 2049845] - IB/hfi1: Add ring consumer and producers traces (Kamal Heib) [2056498 2049845] - IB/hfi1: Remove atomic completion count (Kamal Heib) [2056498 2049845] - IB/hfi1: Tune netdev xmit cachelines (Kamal Heib) [2056498 2049845] - IB/hfi1: Get rid of tx priv backpointer (Kamal Heib) [2056498 2049845] - IB/hfi1: Get rid of hot path divide (Kamal Heib) [2056498 2049845] - IB/hfi1: Remove cache and embed txreq in ring (Kamal Heib) [2056498 2049845] - RDMA/rxe: Only allow invalidate for appropriate MRs (Kamal Heib) [2056498] - RDMA/rxe: Create duplicate mapping tables for FMRs (Kamal Heib) [2056498] - RDMA/rxe: Separate HW and SW l/rkeys (Kamal Heib) [2056498] - RDMA/rxe: Cleanup MR status and type enums (Kamal Heib) [2056498] - RDMA/rxe: Add memory barriers to kernel queues (Kamal Heib) [2056498] - RDMA/rxe: remove the unnecessary variable (Kamal Heib) [2056498] - RDMA/rxe: remove the redundant variable (Kamal Heib) [2056498] - RDMA/rxe: Fix wrong port_cap_flags (Kamal Heib) [2056498] - RDMA/rdmavt: Fix error code in rvt_create_qp() (Kamal Heib) [2056497 2049845] - IB/hfi1: Fix abba locking issue with sc_disable() (Kamal Heib) [2056497 2049845] - RDMA/hfi1: Fix kernel pointer leak (Kamal Heib) [2056497 2049845] - RDMA/usnic: Lock VF with mutex instead of spinlock (Kamal Heib) [2056497] - RDMA/cma: Do not change route.addr.src_addr.ss_family (Kamal Heib) [2056497] - IB/hfi1: make hist static (Kamal Heib) [2056497 2049845] - RDMA/hfi1: Convert to SPDX identifier (Kamal Heib) [2056497 2049845] - IB/rdmavt: Convert to SPDX identifier (Kamal Heib) [2056497 2049845] - RDMA/core/sa_query: Retry SA queries (Kamal Heib) [2056497] - IB/core: Remove deprecated current_seq comments (Kamal Heib) [2056497] - RDMA/efa: Rename vector field in efa_irq struct to irqn (Kamal Heib) [2056497] - RDMA/efa: Remove unused cpu field from irq struct (Kamal Heib) [2056497] - RDMA/core/sa_query: Remove unused function (Kamal Heib) [2056497] - RDMA/hfi1: Stop using seq_get_buf in _driver_stats_seq_show (Kamal Heib) [2056497 2049845] - RDMA/core: Create clean QP creations interface for uverbs (Kamal Heib) [2056497] - RDMA/core: Properly increment and decrement QP usecnts (Kamal Heib) [2056497] - RDMA/core: Configure selinux QP during creation (Kamal Heib) [2056497] - RDMA/core: Reorganize create QP low-level functions (Kamal Heib) [2056497] - RDMA/core: Remove protection from wrong in-kernel API usage (Kamal Heib) [2056497] - RDMA/core: Delete duplicated and unreachable code (Kamal Heib) [2056497] - rdma/qedr: Fix crash due to redundant release of device's qp memory (Kamal Heib) [2056497] - RDMA: Globally allocate and release QP memory (Kamal Heib) [2056497] - RDMA/mlx5: Rework custom driver QP type creation (Kamal Heib) [2056497] - RDMA/usnic: Fix memleak in find_free_vf_and_create_qp_grp (Kamal Heib) [2056497] - RDMA/rdmavt: Decouple QP and SGE lists allocations (Kamal Heib) [2056497 2049845] - RDMA/efa: Remove double QP type assignment (Kamal Heib) [2056497] - RDMA/hfi1: Fix typo in comments (Kamal Heib) [2056497 2049845] - RDMA/iwpm: Rely on the rdma_nl_[un]register() to ensure that requests are valid (Kamal Heib) [2056497] - RDMA/iwpm: Remove not-needed reference counting (Kamal Heib) [2056497] - RDMA/hfi1: Convert from atomic_t to refcount_t on hfi1_devdata->user_refcount (Kamal Heib) [2056497 2049845] - IB/hfi1: Adjust pkey entry in index 0 (Kamal Heib) [2056497 2049845] - IB/hfi1: Indicate DMA wait when txq is queued for wakeup (Kamal Heib) [2056497 2049845] - RDMA/rxe: Fix types in rxe_icrc.c (Kamal Heib) [2056497] - RDMA/rxe: Add kernel-doc comments to rxe_icrc.c (Kamal Heib) [2056497] - RDMA/rxe: Move crc32 init code to rxe_icrc.c (Kamal Heib) [2056497] - RDMA/rxe: Fixup rxe_icrc_hdr (Kamal Heib) [2056497] - RDMA/rxe: Move rxe_crc32 to a subroutine (Kamal Heib) [2056497] - RDMA/rxe: Move ICRC generation to a subroutine (Kamal Heib) [2056497] - RDMA/rxe: Fixup rxe_send and rxe_loopback (Kamal Heib) [2056497] - RDMA/rxe: Move rxe_xmit_packet to a subroutine (Kamal Heib) [2056497] - RDMA/rxe: Move ICRC checking to a subroutine (Kamal Heib) [2056497] - IB/core: Read subnet_prefix in ib_query_port via cache. (Kamal Heib) [2056497] - IB/core: Shifting initialization of device->cache_lock (Kamal Heib) [2056497] - IB/core: Updating cache for subnet_prefix in config_non_roce_gid_cache() (Kamal Heib) [2056497] - RDMA/efa: Split hardware stats to device and port stats (Kamal Heib) [2056497] - RDMA/rxe: Remove the repeated 'mr->umem = umem' (Kamal Heib) [2056497] - RDMA/siw: Convert siw_tx_hdt() to kmap_local_page() (Kamal Heib) [2056497] - RDMA/siw: Remove kmap() (Kamal Heib) [2056497] - treewide: Add missing semicolons to __assign_str uses (Kamal Heib) [2056497] - RDMA/hfi1: Remove use of kmap() (Kamal Heib) [2056497 2049845] - RDMA: Delete not-used static inline functions (Kamal Heib) [2056497] - mm/page_owner.c: record tgid (Waiman Long) [2069294] - mm/page_owner: record task command name (Waiman Long) [2069294] - mm/page_owner: print memcg information (Waiman Long) [2069294] - mm/page_owner: use scnprintf() to avoid excessive buffer overrun check (Waiman Long) [2069294] - lib/vsprintf: avoid redundant work with 0 size (Waiman Long) [2069294] - lib, stackdepot: add helper to print stack entries into buffer (Waiman Long) [2069294] - lib, stackdepot: add helper to print stack entries (Waiman Long) [2069294] - lib, stackdepot: check stackdepot handle before accessing slabs (Waiman Long) [2069294] - stacktrace: move filter_irq_stacks() to kernel/stacktrace.c (Waiman Long) [2069294] - lib/stackdepot: introduce __stack_depot_save() (Waiman Long) [2069294] - mm: introduce PAGEFLAGS_MASK to replace ((1UL << NR_PAGEFLAGS) - 1) (Waiman Long) [2069294] - mm/page_owner: constify dump_page_owner (Waiman Long) [2069294] - mm: page_owner: detect page_owner recursion via task_struct (Waiman Long) [2069294] - mm: page_owner: use kstrtobool() to parse bool option (Waiman Long) [2069294] - mm: page_owner: fetch backtrace only for tracked pages (Waiman Long) [2069294] - mm, page_owner: remove unused parameter in __set_page_owner_handle (Waiman Long) [2069294] - mm/page_owner: record the timestamp of all pages during free (Waiman Long) [2069294] - mm/page_owner: use helper function zone_end_pfn() to get end_pfn (Waiman Long) [2069294] - mm/page_owner: record timestamp and pid (Waiman Long) [2069294] - x86/platform/uv: Log gap hole end size (Frank Ramsay) [2074098] - x86/platform/uv: Update TSC sync state for UV5 (Frank Ramsay) [2074098] - x86/platform/uv: Update NMI Handler for UV5 (Frank Ramsay) [2074098] - x86/platform/uv: Remove unused variable in UV5 NMI handler (Frank Ramsay) [2074098] - timekeeping: Boot should be boottime for coarse ns accessor (Ivan Vecera) [2076879]- net_tstamp: define new flag HWTSTAMP_FLAG_BONDED_PHC_INDEX (Petr Oros) [2070041] - net_tstamp: add new flag HWTSTAMP_FLAG_BONDED_PHC_INDEX (Petr Oros) [2070041] - net: fix NULL pointer reference in cipso_v4_doi_free (Guillaume Nault) [2074597] - partitions/efi: Fix partition name parsing in GUID partition entry (Ming Lei) [2075085] - psi: Fix uaf issue when psi trigger is destroyed while being polled (Waiman Long) [2046396] - cgroup/cpuset: Make child cpusets restrict parents on v1 hierarchy (Waiman Long) [2046396] - cgroup/cpuset: Don't let child cpusets restrict parent in default hierarchy (Waiman Long) [2046396] - mm/page_alloc: detect allocation forbidden by cpuset and bail out early (Waiman Long) [2046396] - cgroup: Fix rootcg cpu.stat guest double counting (Waiman Long) [2046396] - cgroup: no need for cgroup_mutex for /proc/cgroups (Waiman Long) [2046396] - cgroup: remove cgroup_mutex from cgroupstats_build (Waiman Long) [2046396] - cgroup: Fix memory leak caused by missing cgroup_bpf_offline (Waiman Long) [2046396] - cgroup: cgroup-v1: do not exclude cgrp_dfl_root (Waiman Long) [2046396] - bpf, test, cgroup: Use sk_{alloc,free} for test cases (Waiman Long) [2046396] - bpf, cgroup: Assign cgroup in cgroup_sk_alloc when called from interrupt (Waiman Long) [2046396] - bpf, cgroups: Fix cgroup v2 fallback on v1/v2 mixed mode (Waiman Long) [2046396] - cgroup/cpuset: Change references of cpuset_mutex to cpuset_rwsem (Waiman Long) [2046396] - cgroup: Replace deprecated CPU-hotplug functions. (Waiman Long) [2046396] - cgroup/cpuset: Fix a partition bug with hotplug (Waiman Long) [2046396] - cgroup/cpuset: Miscellaneous code cleanup (Waiman Long) [2046396] - cgroup/cpuset: fix typos in comments (Waiman Long) [2046396] - enable DAMON configs (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/reclaim: document statistics parameters (Chris von Recklinghausen) [2004233] - mm/damon: hide kernel pointer from tracepoint event (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: hide kernel pointer from damon_va_three_regions() failure log (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: use pr_debug() for damon_va_three_regions() failure logging (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: remove an unnecessary variable (Chris von Recklinghausen) [2004233] - mm/damon: move the implementation of damon_insert_region to damon.h (Chris von Recklinghausen) [2004233] - mm/damon: add access checking for hugetlb pages (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: update for schemes statistics (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support all DAMOS stats (Chris von Recklinghausen) [2004233] - mm/damon/reclaim: provide reclamation statistics (Chris von Recklinghausen) [2004233] - mm/damon/schemes: account how many times quota limit has exceeded (Chris von Recklinghausen) [2004233] - mm/damon/schemes: account scheme actions that successfully applied (Chris von Recklinghausen) [2004233] - mm/damon: remove a mistakenly added comment for a future feature (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: update for kdamond_pid and (mk|rm)_contexts (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: mention tracepoint at the beginning (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: remove redundant information (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: update for scheme quotas and watermarks (Chris von Recklinghausen) [2004233] - mm/damon: convert macro functions to static inline functions (Chris von Recklinghausen) [2004233] - mm/damon: modify damon_rand() macro to static inline function (Chris von Recklinghausen) [2004233] - mm/damon: move damon_rand() definition into damon.h (Chris von Recklinghausen) [2004233] - mm/damon/schemes: add the validity judgment of thresholds (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: remove swap_ranges() and replace it with swap() (Chris von Recklinghausen) [2004233] - mm/damon: remove some unneeded function definitions in damon.h (Chris von Recklinghausen) [2004233] - mm/damon/core: use abs() instead of diff_of() (Chris von Recklinghausen) [2004233] - mm/damon: unified access_check function naming rules (Chris von Recklinghausen) [2004233] - mm/damon: add 'age' of region tracepoint support (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: fix 'struct pid' leaks in 'dbgfs_target_ids_write()' (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: protect targets destructions with kdamond_lock (Chris von Recklinghausen) [2004233] - selftests/damon: split test cases (Chris von Recklinghausen) [2004233] - selftests/damon: test debugfs file reads/writes with huge count (Chris von Recklinghausen) [2004233] - selftests/damon: test wrong DAMOS condition ranges input (Chris von Recklinghausen) [2004233] - selftests/damon: test DAMON enabling with empty target_ids case (Chris von Recklinghausen) [2004233] - selftests/damon: skip test if DAMON is running (Chris von Recklinghausen) [2004233] - mm/damon/vaddr-test: remove unnecessary variables (Chris von Recklinghausen) [2004233] - mm/damon/vaddr-test: split a test function having >1024 bytes frame size (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: remove an unnecessary warning message (Chris von Recklinghausen) [2004233] - mm/damon/core: remove unnecessary error messages (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: remove an unnecessary error message (Chris von Recklinghausen) [2004233] - mm/damon/core: use better timer mechanisms selection threshold (Chris von Recklinghausen) [2004233] - mm/damon/core: fix fake load reports due to uninterruptible sleeps (Chris von Recklinghausen) [2004233] - timers: implement usleep_idle_range() (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: fix missed use of damon_dbgfs_lock (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: use '__GFP_NOWARN' for user-specified size buffer allocation (Chris von Recklinghausen) [2004233] - mm/damon: remove return value from before_terminate callback (Chris von Recklinghausen) [2004233] - mm/damon: fix a few spelling mistakes in comments and a pr_debug message (Chris von Recklinghausen) [2004233] - mm/damon: simplify stop mechanism (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/start: simplify the content (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/start: fix a wrong link (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/start: fix wrong example commands (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: add adaptive_targets list check before enable monitor_on (Chris von Recklinghausen) [2004233] - mm/damon: remove unnecessary variable initialization (Chris von Recklinghausen) [2004233] - Documentation/admin-guide/mm/damon: add a document for DAMON_RECLAIM (Chris von Recklinghausen) [2004233] - mm/damon: introduce DAMON-based Reclamation (DAMON_RECLAIM) (Chris von Recklinghausen) [2004233] - selftests/damon: support watermarks (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support watermarks (Chris von Recklinghausen) [2004233] - mm/damon/schemes: activate schemes based on a watermarks mechanism (Chris von Recklinghausen) [2004233] - tools/selftests/damon: update for regions prioritization of schemes (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support prioritization weights (Chris von Recklinghausen) [2004233] - mm/damon/vaddr,paddr: support pageout prioritization (Chris von Recklinghausen) [2004233] - mm/damon/schemes: prioritize regions within the quotas (Chris von Recklinghausen) [2004233] - mm/damon/selftests: support schemes quotas (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support quotas of schemes (Chris von Recklinghausen) [2004233] - mm/damon/schemes: implement time quota (Chris von Recklinghausen) [2004233] - mm/damon/schemes: skip already charged targets and regions (Chris von Recklinghausen) [2004233] - mm/damon/schemes: implement size quota for schemes application speed control (Chris von Recklinghausen) [2004233] - mm/damon/paddr: support the pageout scheme (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: remove unnecessary variables (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: constify static mm_walk_ops (Chris von Recklinghausen) [2004233] - Docs/DAMON: document physical memory monitoring support (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support physical memory monitoring (Chris von Recklinghausen) [2004233] - mm/damon: implement primitives for physical address space monitoring (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: separate commonly usable functions (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs-test: add a unit test case for 'init_regions' (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon: document 'init_regions' feature (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon: document DAMON-based Operation Schemes (Chris von Recklinghausen) [2004233] - docs/vm/damon: remove broken reference (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: allow users to set initial monitoring target regions (Chris von Recklinghausen) [2004233] - selftests/damon: add 'schemes' debugfs tests (Chris von Recklinghausen) [2004233] - mm/damon/schemes: implement statistics feature (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support DAMON-based Operation Schemes (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: support DAMON-based Operation Schemes (Chris von Recklinghausen) [2004233] - mm/damon/core: implement DAMON-based Operation Schemes (DAMOS) (Chris von Recklinghausen) [2004233] - mm/damon/core: account age of target regions (Chris von Recklinghausen) [2004233] - mm/damon/core: nullify pointer ctx->kdamond with a NULL (Chris von Recklinghausen) [2004233] - mm/damon: needn't hold kdamond_lock to print pid of kdamond (Chris von Recklinghausen) [2004233] - mm/damon: remove unnecessary do_exit() from kdamond (Chris von Recklinghausen) [2004233] - mm/damon/core: print kdamond start log in debug mode only (Chris von Recklinghausen) [2004233] - mm/damon: grammar s/works/work/ (Chris von Recklinghausen) [2004233] - mm/damon/core-test: fix wrong expectations for 'damon_split_regions_of()' (Chris von Recklinghausen) [2004233] - mm/damon: don't use strnlen() with known-bogus source length (Chris von Recklinghausen) [2004233] - mm/damon: add kunit tests (Chris von Recklinghausen) [2004233] - Documentation: add documents for DAMON (Chris von Recklinghausen) [2004233] - mm/damon: add user space selftests (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support multiple contexts (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: export kdamond pid to the user space (Chris von Recklinghausen) [2004233] - mm/damon: implement a debugfs-based user space interface (Chris von Recklinghausen) [2004233] - mm/damon: add a tracepoint (Chris von Recklinghausen) [2004233] - mm/damon: implement primitives for the virtual memory address spaces (Chris von Recklinghausen) [2004233] - mm/damon: adaptively adjust regions (Chris von Recklinghausen) [2004233] - mm/damon/core: implement region-based sampling (Chris von Recklinghausen) [2004233] - mm: introduce Data Access MONitor (DAMON) (Chris von Recklinghausen) [2004233] - khugepaged: use helper khugepaged_test_exit() in __khugepaged_enter() (Chris von Recklinghausen) [2004233] - mm/madvise: pass mm to do_madvise (Chris von Recklinghausen) [2004233] - ceph: fix possible NULL pointer dereference for req->r_session (Xiubo Li) [2076165] - thermal: int340x: Fix VCoRefLow MMIO bit offset for TGL (Prarit Bhargava) [2039994] - MAINTAINERS: sort field names for all entries (Joel Savitz) [2064843] - parse-maintainers: Do not sort section content by default (Joel Savitz) [2064843] - parse-maintainers: Mark as executable (Joel Savitz) [2064843] - KVM: x86: Use ERR_PTR_USR() to return -EFAULT as a __user pointer (Paul Lai) [2074679] - KVM: x86: add system attribute to retrieve full set of supported xsave states (Paul Lai) [2074679] - KVM: x86: Add a helper to retrieve userspace address from kvm_device_attr (Paul Lai) [2074679] - tools: arch: x86: pull in pvclock headers (Paul Lai) [2074679] - KVM: x86: Expose TSC offset controls to userspace (Paul Lai) [2074679] - KVM: x86: Refactor tsc synchronization code (Paul Lai) [2074679] - selftests: kvm: move vm_xsave_req_perm call to amx_test (Paul Lai) [2074679] - powerpc/pseries/vas: Add VAS migration handler (Steve Best) [2028678] - powerpc/pseries/vas: Modify reconfig open/close functions for migration (Steve Best) [2028678] - powerpc/pseries/vas: Define global hv_cop_caps struct (Steve Best) [2028678] - powerpc/pseries/vas: Add 'update_total_credits' entry for QoS capabilities (Steve Best) [2028678] - powerpc/pseries/vas: sysfs interface to export capabilities (Steve Best) [2028678] - powerpc/pseries/vas: Reopen windows with DLPAR core add (Steve Best) [2028678] - powerpc/pseries/vas: Close windows with DLPAR core removal (Steve Best) [2028678] - powerpc/vas: Map paste address only if window is active (Steve Best) [2028678] - powerpc/vas: Return paste instruction failure if no active window (Steve Best) [2028678] - powerpc/vas: Add paste address mmap fault handler (Steve Best) [2028678] - powerpc/pseries/vas: Save PID in pseries_vas_window struct (Steve Best) [2028678] - powerpc/pseries/vas: Use common names in VAS capability structure (Steve Best) [2028678] - perf powerpc: Update global/local variants for p_stage_cyc (Desnes A. Nunes do Rosario) [2051358] - perf sort: Include global and local variants for p_stage_cyc sort key (Desnes A. Nunes do Rosario) [2051358] - perf sort: Fix the 'p_stage_cyc' sort key behavior (Desnes A. Nunes do Rosario) [2051358] - perf sort: Fix the 'ins_lat' sort key behavior (Desnes A. Nunes do Rosario) [2051358] - perf sort: Fix the 'weight' sort key behavior (Desnes A. Nunes do Rosario) [2051358] - block: loop:use kstatfs.f_bsize of backing file to set discard granularity (Ming Lei) [2069472] - blk-cgroup: set blkg iostat after percpu stat aggregation (Ming Lei) [2069472] - block: update io_ticks when io hang (Ming Lei) [2069472] - block: don't delete queue kobject before its children (Ming Lei) [2069472] - block/wbt: fix negative inflight counter when remove scsi device (Ming Lei) [2069472] - block: bio-integrity: Advance seed correctly for larger interval sizes (Ming Lei) [2069472] - block: fix async_depth sysfs interface for mq-deadline (Ming Lei) [2069472] - bfq: Do not let waker requests skip proper accounting (Ming Lei) [2069472] - block: Fix fsync always failed if once failed (Ming Lei) [2069472] - blktrace: fix use after free for struct blk_trace (Ming Lei) [2069472] - block: Check ADMIN before NICE for IOPRIO_CLASS_RT (Ming Lei) [2069472] - blk-cgroup: fix missing put device in error path from blkg_conf_pref() (Ming Lei) [2069472] - blkcg: Remove extra blkcg_bio_issue_init (Ming Lei) [2069472] - nbd: Fix use-after-free in pid_show (Ming Lei) [2069472] - block/mq-deadline: Improve request accounting further (Ming Lei) [2069472] - block, bfq: fix UAF problem in bfqg_stats_init() (Ming Lei) [2069472] - blk-cgroup: synchronize blkg creation against policy deactivation (Ming Lei) [2069472] - block, bfq: reset last_bfqq_created on group change (Ming Lei) [2069472] - block: bfq: fix bfq_set_next_ioprio_data() (Ming Lei) [2069472] - sched/topology: Remove redundant variable and fix incorrect type in build_sched_domains (Phil Auld) [2065200] - sched/fair: Adjust the allowed NUMA imbalance when SD_NUMA spans multiple LLCs (Phil Auld) [2065200] - sched/fair: Improve consistency of allowed NUMA balance calculations (Phil Auld) [2065200] - Revert: sched: Disable allowing small imbalance to preserve RHEL performance (Phil Auld) [2065200] - NFSv4.1: handle NFS4ERR_NOSPC by CREATE_SESSION (Steve Dickson) [2023844] - SUNRPC: use different lock keys for INET6 and LOCAL (Guillaume Nault) [2061651] - arm64: Restore forced disabling of KPTI on ThunderX (Mark Salter) [1999157] - arm64: mte: initialize RGSR_EL1.SEED in __cpu_setup (Mark Salter) [1999157] - arm64: Remove exporting cpu_logical_map symbol (Mark Salter) [1999157] - arm64: tlb: fix the TTL value of tlb_get_level (Mark Salter) [1999157] - arm64: Validate tagged addresses in access_ok() called from kernel threads (Mark Salter) [1999157] - arm64: ptrace: Fix seccomp of traced syscall -1 (NO_SYSCALL) (Mark Salter) [1999157] - arm64: ptrace: Use NO_SYSCALL instead of -1 in syscall_trace_enter() (Mark Salter) [1999157] - arm64: mm: Fix TLBI vs ASID rollover (Mark Salter) [1999157] - arm64: errata: Fix exec handling in erratum 1418040 workaround (Mark Salter) [1999157] - arm64: Generate cpucaps.h (Mark Salter) [1999157] - arm64/sve: Skip flushing Z registers with 128 bit vectors (Mark Salter) [1999157] - arm64/sve: Rework SVE access trap to convert state in registers (Mark Salter) [1999157] - arm64/sve: Use the sve_flush macros in sve_load_from_fpsimd_state() (Mark Salter) [1999157] - arm64/sve: Split _sve_flush macro into separate Z and predicate flushes (Mark Salter) [1999157] - arm64: fix inline asm in load_unaligned_zeropad() (Mark Salter) [1999157] - arm64: Extend workaround for erratum 1024718 to all versions of Cortex-A55 (Mark Salter) [1999157] - arm64/fpsimd: add to to fix fpsimd build (Mark Salter) [1999157] - arm64: cpu_errata: Apply Erratum 845719 to KRYO2XX Silver (Mark Salter) [1999157] - arm64: kpti: Add KRYO2XX gold/silver CPU cores to kpti safelist (Mark Salter) [1999157] - arm64: Add MIDR value for KRYO2XX gold/silver CPU cores (Mark Salter) [1999157] - arm64: errata: Fix handling of 1418040 with late CPU onlining (Mark Salter) [1999157] - arm64: cpufeature: upgrade hyp caps to final (Mark Salter) [1999157] - arm64: cpufeature: reorder cpus_have_{const, final}_cap() (Mark Salter) [1999157] - arm64: Add workaround for Arm Cortex-A77 erratum 1508412 (Mark Salter) [1999157] - arm64: Add part number for Arm Cortex-A77 (Mark Salter) [1999157] - arm64: reject prctl(PR_PAC_RESET_KEYS) on compat tasks (Mark Salter) [1999157] - arm64: Treat SSBS as a non-strict system feature (Mark Salter) [1999157] - arm64: Group start_thread() functions together (Mark Salter) [1999157] - arm64: Remove Spectre-related CONFIG_* options (Mark Salter) [1999157] - arm64: Run ARCH_WORKAROUND_2 enabling code on all CPUs (Mark Salter) [1999157] - arm64: Run ARCH_WORKAROUND_1 enabling code on all CPUs (Mark Salter) [1999157] - arm64: mte: CPU feature detection and initial sysreg configuration (Mark Salter) [1999157] - arm64: cpufeature: Export symbol read_sanitised_ftr_reg() (Mark Salter) [1999157] - arm64/fpsimd: Fix missing-prototypes in fpsimd.c (Mark Salter) [1999157] - arm64: traps: Add str of description to panic() in die() (Mark Salter) [1999157] - arm64/sve: Implement a helper to load SVE registers from FPSIMD state (Mark Salter) [1999157] - arm64/sve: Implement a helper to flush SVE registers (Mark Salter) [1999157] - arm64/fpsimdmacros: Allow the macro "for" to be used in more cases (Mark Salter) [1999157] - arm64/fpsimdmacros: Introduce a macro to update ZCR_EL1.LEN (Mark Salter) [1999157] - arm64/signal: Update the comment in preserve_sve_context (Mark Salter) [1999157] - arm64/fpsimd: Update documentation of do_sve_acc (Mark Salter) [1999157] - arm64: cpufeature: Modify address authentication cpufeature to exact (Mark Salter) [1999157] - arm64: ptrauth: Introduce Armv8.3 pointer authentication enhancements (Mark Salter) [1999157] - arm64: traps: Allow force_signal_inject to pass esr error code (Mark Salter) [1999157] - arm64/cpuinfo: Define HWCAP name arrays per their actual bit definitions (Mark Salter) [1999157] - arm64: Reserve HWCAP2_MTE as (1 << 18) (Mark Salter) [1999157] - arm64: Allow CPUs unffected by ARM erratum 1418040 to come in late (Mark Salter) [1999157] - arm64: Allow booting of late CPUs affected by erratum 1418040 (Mark Salter) [1999157] - arm64: Drop unnecessary include from asm/smp.h (Mark Salter) [1999157] - arm64: Move handling of erratum 1418040 into C code (Mark Salter) [1999157] - arm64: Fix __cpu_logical_map undefined issue (Mark Salter) [1999157] - arm64: tlb: don't set the ttl value in flush_tlb_page_nosync (Mark Salter) [1999157] - arm64: Shift the __tlbi_level() indentation left (Mark Salter) [1999157] - arm64: tlb: Set the TTL field in flush_*_tlb_range (Mark Salter) [1999157] - arm64: tlb: Set the TTL field in flush_tlb_range (Mark Salter) [1999157] - arm64: Add tlbi_user_level TLB invalidation helper (Mark Salter) [1999157] - arm64: Add level-hinted TLB invalidation helper (Mark Salter) [1999157] - arm64: Document SW reserved PTE/PMD bits in Stage-2 descriptors (Mark Salter) [1999157] - arm64/cpufeature: Validate feature bits spacing in arm64_ftr_regs[] (Mark Salter) [1999157] - arm64/cpufeature: Replace all open bits shift encodings with macros (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64MMFR2 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64MMFR1 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64MMFR0 register (Mark Salter) [1999157] - arm64: csum: Fix handling of bad packets (Mark Salter) [1999157] - arm64: Add missing sentinel to erratum_1463225 (Mark Salter) [1999157] - arm64: Documentation: Fix broken table in generated HTML (Mark Salter) [1999157] - arm64: kgdb: Fix single-step exception handling oops (Mark Salter) [1999157] - arm64: entry: Tidy up block comments and label numbers (Mark Salter) [1999157] - arm64: Rework ARM_ERRATUM_1414080 handling (Mark Salter) [1999157] - arm64: entry: Fix the typo in the comment of el1_dbg() (Mark Salter) [1999157] - arm64: Add KRYO4XX silver CPU cores to erratum list 1530923 and 1024718 (Mark Salter) [1999157] - arm64: Add KRYO4XX gold CPU cores to erratum list 1463225 and 1418040 (Mark Salter) [1999157] - arm64: Add MIDR value for KRYO4XX gold CPU cores (Mark Salter) [1999157] - arm64: Add KRYO{3,4}XX silver CPU cores to SSB safelist (Mark Salter) [1999157] - arm64: kpti: Add KRYO{3, 4}XX silver CPU cores to kpti safelist (Mark Salter) [1999157] - arm64: sve: Fix build failure when ARM64_SVE=y and SYSCTL=n (Mark Salter) [1999157] - arm64: mm: reset address tag set by kasan sw tagging (Mark Salter) [1999157] - arm64: traps: Dump registers prior to panic() in bad_mode() (Mark Salter) [1999157] - arm64/sve: Eliminate data races on sve_default_vl (Mark Salter) [1999157] - arm64: csum: Disable KASAN for do_csum() (Mark Salter) [1999157] - arm64/cpufeature: Add get_arm64_ftr_reg_nowarn() (Mark Salter) [1999157] - arm64/cpuinfo: Add ID_MMFR4_EL1 into the cpuinfo_arm64 context (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64PFR0 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_MMFR4 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_PFR0 register (Mark Salter) [1999157] - arm64/cpufeature: Introduce ID_MMFR5 CPU register (Mark Salter) [1999157] - arm64/cpufeature: Introduce ID_DFR1 CPU register (Mark Salter) [1999157] - arm64/cpufeature: Introduce ID_PFR2 CPU register (Mark Salter) [1999157] - arm64/cpufeature: Make doublelock a signed feature in ID_AA64DFR0 (Mark Salter) [1999157] - arm64/cpufeature: Drop TraceFilt feature exposure from ID_DFR0 register (Mark Salter) [1999157] - arm64/cpufeature: Add explicit ftr_id_isar0[] for ID_ISAR0 register (Mark Salter) [1999157] - arm64: cpufeature: Group indexed system register definitions by name (Mark Salter) [1999157] - arm64: cpufeature: Extend comment to describe absence of field info (Mark Salter) [1999157] - arm64: drop duplicate definitions of ID_AA64MMFR0_TGRAN constants (Mark Salter) [1999157] - arm64: cpufeature: Add an overview comment for the cpufeature framework (Mark Salter) [1999157] - arm64: cpufeature: Relax checks for AArch32 support at EL[0-2] (Mark Salter) [1999157] - arm64: cpufeature: Relax AArch32 system checks if EL1 is 64-bit only (Mark Salter) [1999157] - arm64: cpufeature: Factor out checking of AArch32 features (Mark Salter) [1999157] - arm64: cpufeature: Remove redundant call to id_aa64pfr0_32bit_el0() (Mark Salter) [1999157] - arm64: cpufeature: Spell out register fields for ID_ISAR4 and ID_PFR1 (Mark Salter) [1999157] - arm64: cpufeature: Relax check for IESB support (Mark Salter) [1999157] - arm64: mm: Add asid_gen_match() helper (Mark Salter) [1999157] - arm64: Call debug_traps_init() from trap_init() to help early kgdb (Mark Salter) [1999157] - arm64: cacheflush: Fix KGDB trap detection (Mark Salter) [1999157] - arm64/cpuinfo: Move device_initcall() near cpuinfo_regs_init() (Mark Salter) [1999157] - arm64: kexec_file: print appropriate variable (Mark Salter) [1999157] - arm: mm: use __pfn_to_section() to get mem_section (Mark Salter) [1999157] - arm64: Reorder the macro arguments in the copy routines (Mark Salter) [1999157] - KVM: arm64: Drop PTE_S2_MEMATTR_MASK (Mark Salter) [1999157] - arm64/kernel: Fix range on invalidating dcache for boot page tables (Mark Salter) [1999157] - arm64: set TEXT_OFFSET to 0x0 in preparation for removing it entirely (Mark Salter) [1999157] - arm64/mm: Use phys_to_page() to access pgtable memory (Mark Salter) [1999157] - arm64: smp: Make cpus_stuck_in_kernel static (Mark Salter) [1999157] - arm64: entry: remove unneeded semicolon in el1_sync_handler() (Mark Salter) [1999157] - arm64: cpufeature: Add "or" to mitigations for multiple errata (Mark Salter) [1999157] - arm64: Sort vendor-specific errata (Mark Salter) [1999157] - arm64: simplify ptrauth initialization (Mark Salter) [1999157] - arm64: remove ptrauth_keys_install_kernel sync arg (Mark Salter) [1999157] - arm64: insn: Provide a better name for aarch64_insn_is_nop() (Mark Salter) [1999157] - arm64: kernel: Convert to modern annotations for assembly functions (Mark Salter) [1999157] - arm64: entry: Refactor and modernise annotation for ret_to_user (Mark Salter) [1999157] - arm64: BTI: Reset BTYPE when skipping emulated instructions (Mark Salter) [1999157] - arm64: traps: Shuffle code to eliminate forward declarations (Mark Salter) [1999157] - arm64: unify native/compat instruction skipping (Mark Salter) [1999157] - arm64: BTI: Decode BYTPE bits when printing PSTATE (Mark Salter) [1999157] - arm64: Basic Branch Target Identification support (Mark Salter) [1999157] - arm64/kernel: Fix return value when cpu_online() fails in __cpu_up() (Mark Salter) [1999157] - arm64: Add get_user() type annotation on the !access_ok() path (Mark Salter) [1999157] - arm64: Fix PTRACE_SYSEMU semantics (Mark Salter) [1999157] - arm64: fix the flush_icache_range arguments in machine_kexec (Mark Salter) [1999157] - Documentation: arm64: fix amu.rst doc warnings (Mark Salter) [1999157] - arm64: sync kernel APIAKey when installing (Mark Salter) [1999157] - arm64: Delete the space separator in __emit_inst (Mark Salter) [1999157] - arm64: remove CONFIG_DEBUG_ALIGN_RODATA feature (Mark Salter) [1999157] - arm64: head: Convert install_el2_stub to SYM_INNER_LABEL (Mark Salter) [1999157] - arm64: Introduce get_cpu_ops() helper function (Mark Salter) [1999157] - arm64: Rename cpu_read_ops() to init_cpu_ops() (Mark Salter) [1999157] - arm64: Declare ACPI parking protocol CPU operation if needed (Mark Salter) [1999157] - arm64: move kimage_vaddr to .rodata (Mark Salter) [1999157] - arm64: sdei: Annotate SDEI entry points using new style annotations (Mark Salter) [1999157] - arm64: kernel: Convert to modern annotations for assembly data (Mark Salter) [1999157] - arm64: head: Annotate stext and preserve_boot_args as code (Mark Salter) [1999157] - arm64: head.S: Convert to modern annotations for assembly functions (Mark Salter) [1999157] - arm64: entry: Additional annotation conversions for entry.S (Mark Salter) [1999157] - arm64: entry: Annotate ret_from_fork as code (Mark Salter) [1999157] - arm64: entry: Annotate vector table and handlers as code (Mark Salter) [1999157] - kconfig: Add support for 'as-option' (Mark Salter) [1999157] - arm64: suspend: restore the kernel ptrauth keys (Mark Salter) [1999157] - arm64: __show_regs: strip PAC from lr in printk (Mark Salter) [1999157] - arm64: unwind: strip PAC from kernel addresses (Mark Salter) [1999157] - arm64/crash_core: Export KERNELPACMASK in vmcoreinfo (Mark Salter) [1999157] - arm64: mask PAC bits of __builtin_return_address (Mark Salter) [1999157] - compiler.h: Allow arch-specific asm/compiler.h (Mark Salter) [1999157] - arm64: initialize ptrauth keys for kernel booting task (Mark Salter) [1999157] - arm64: initialize and switch ptrauth kernel keys (Mark Salter) [1999157] - arm64: enable ptrauth earlier (Mark Salter) [1999157] - arm64: cpufeature: handle conflicts based on capability (Mark Salter) [1999157] - arm64: cpufeature: Move cpu capability helpers inside C file (Mark Salter) [1999157] - arm64: ptrauth: Add bootup/runtime flags for __cpu_setup (Mark Salter) [1999157] - arm64: install user ptrauth keys at kernel exit time (Mark Salter) [1999157] - arm64: rename ptrauth key structures to be user-specific (Mark Salter) [1999157] - arm64: cpufeature: add pointer auth meta-capabilities (Mark Salter) [1999157] - arm64: cpufeature: Fix meta-capability cpufeature check (Mark Salter) [1999157] - arm64: define __alloc_zeroed_user_highpage (Mark Salter) [1999157] - arm64/kernel: Simplify __cpu_up() by bailing out early (Mark Salter) [1999157] - arm64: smp: Mark expected switch fall-through (Mark Salter) [1999157] - arm64: remove redundant blank for '=' operator (Mark Salter) [1999157] - arm64: kexec_file: Fixed code style. (Mark Salter) [1999157] - arm64: add blank after 'if' (Mark Salter) [1999157] - arm64: fix spelling mistake "ca not" -> "cannot" (Mark Salter) [1999157] - arm64: entry: unmask IRQ in el0_sp() (Mark Salter) [1999157] - arm64: efi: add efi-entry.o to targets instead of extra-$(CONFIG_EFI) (Mark Salter) [1999157] - arm64: csum: Optimise IPv6 header checksum (Mark Salter) [1999157] - arch/arm64: fix typo in a comment (Mark Salter) [1999157] - arm64: remove gratuitious/stray .ltorg stanzas (Mark Salter) [1999157] - arm64: Update comment for ASID() macro (Mark Salter) [1999157] - arm64: mm: convert cpu_do_switch_mm() to C (Mark Salter) [1999157] - Documentation: arm64: document support for the AMU extension (Mark Salter) [1999157] - arm64: trap to EL1 accesses to AMU counters from EL0 (Mark Salter) [1999157] - arm64: add support for the AMU extension v1 (Mark Salter) [1999157] - arm64: smp: fix crash_smp_send_stop() behaviour (Mark Salter) [1999157] - arm64: smp: fix smp_send_stop() behaviour (Mark Salter) [1999157] - arm64: context: Fix ASID limit in boot messages (Mark Salter) [1999157] - docs: arm64: fix trivial spelling enought to enough in memory.rst (Mark Salter) [1999157] - arm64: time: Replace by (Mark Salter) [1999157] - arm64: ssbs: Fix context-switch when SSBS is present on all CPUs (Mark Salter) [1999157] - arm64: use shared sysctl constants (Mark Salter) [1999157] - arm64: Drop do_el0_ia_bp_hardening() & do_sp_pc_abort() declarations (Mark Salter) [1999157] - arm64: entry: Avoid empty alternatives entries (Mark Salter) [1999157] - arm64: Kconfig: select HAVE_FUTEX_CMPXCHG (Mark Salter) [1999157] - arm64: Use macros instead of hard-coded constants for MAIR_EL1 (Mark Salter) [1999157] - arm64: Add KRYO{3,4}XX CPU cores to spectre-v2 safe list (Mark Salter) [1999157] - arm64: context: Free up kernel ASIDs if KPTI is not in use (Mark Salter) [1999157] - arm64: Remove __exception_text_start and __exception_text_end from asm/section.h (Mark Salter) [1999157] - arm64: armv8_deprecated: update the comments of armv8_deprecated_init() (Mark Salter) [1999157] - arm64: kpti: Add Broadcom Brahma-B53 core to the KPTI whitelist (Mark Salter) [1999157] - arm64: csum: Fix pathological zero-length calls (Mark Salter) [1999157] - arm64: Implement optimised checksum routine (Mark Salter) [1999157] - arm64: entry: cleanup sp_el0 manipulation (Mark Salter) [1999157] - arm64: entry: cleanup el0 svc handler naming (Mark Salter) [1999157] - arm64: entry: mark all entry code as notrace (Mark Salter) [1999157] - arm64: assembler: remove smp_dmb macro (Mark Salter) [1999157] - arm64: assembler: remove inherit_daif macro (Mark Salter) [1999157] - arm64: signal: nofpsimd: Handle fp/simd context for signal frames (Mark Salter) [1999157] - arm64: ptrace: nofpsimd: Fail FP/SIMD regset operations (Mark Salter) [1999157] - arm64: cpufeature: Set the FP/SIMD compat HWCAP bits properly (Mark Salter) [1999157] - arm64: cpufeature: Fix the type of no FP/SIMD capability (Mark Salter) [1999157] - arm64: fpsimd: Make sure SVE setup is complete before SIMD is used (Mark Salter) [1999157] - arm64: kernel: Correct annotation of end of el0_sync (Mark Salter) [1999157] - arm64: asm: Remove ENDPIPROC() (Mark Salter) [1999157] - arm64: mm: Use modern annotations for assembly functions (Mark Salter) [1999157] - arm64: lib: Use modern annotations for assembly functions (Mark Salter) [1999157] - arm64: asm: Add new-style position independent function annotations (Mark Salter) [1999157] - arm64: kernel: avoid x18 in __cpu_soft_restart (Mark Salter) [1999157] - arm64/lib: copy_page: avoid x18 register in assembler code (Mark Salter) [1999157] - arm64: mm: avoid x18 in idmap_kpti_install_ng_mappings (Mark Salter) [1999157] - arm64: cpu_errata: Add Hisilicon TSV110 to spectre-v2 safe list (Mark Salter) [1999157] - arm64: entry: refine comment of stack overflow check (Mark Salter) [1999157] - arm64: kpti: Add NVIDIA's Carmel core to the KPTI whitelist (Mark Salter) [1999157] - arm64: mm: simplify the page end calculation in __create_pgd_mapping() (Mark Salter) [1999157] - arm64: print additional fault message when executing non-exec memory (Mark Salter) [1999157] - arm64: pgtable: Correct typo in comment (Mark Salter) [1999157] - arm64: cpufeature: Fix typos in comment (Mark Salter) [1999157] - arm64: entry-common: don't touch daif before bp-hardening (Mark Salter) [1999157] - arm64: Remove asmlinkage from updated functions (Mark Salter) [1999157] - arm64: entry: convert el0_sync to C (Mark Salter) [1999157] - arm64: entry: convert el1_sync to C (Mark Salter) [1999157] - arm64: Add prototypes for functions called by entry.S (Mark Salter) [1999157] - arm64: remove __exception annotations (Mark Salter) [1999157] - arm64: kprobes: Move exception_text check in blacklist (Mark Salter) [1999157] - arm64: kprobes: Remove unneeded RODATA check (Mark Salter) [1999157] - arm64: kprobes: Move extable address check into arch_prepare_kprobe() (Mark Salter) [1999157] - arm64: cpufeature: introduce helper cpu_has_hw_af() (Mark Salter) [1999157] - arm64: Document ICC_CTLR_EL3.PMHE setting requirements (Mark Salter) [1999157] - firmware: arm_sdei: use common SMCCC_CONDUIT_* (Mark Salter) [1999157] - arm64: uaccess: Remove uaccess_*_not_uao asm macros (Mark Salter) [1999157] - arm64: uaccess: Ensure PAN is re-enabled after unhandled uaccess fault (Mark Salter) [1999157] - arm64: Do not mask out PTE_RDONLY in pte_same() (Mark Salter) [1999157] - arm64: apply ARM64_ERRATUM_843419 workaround for Brahma-B53 core (Mark Salter) [1999157] - arm64: Brahma-B53 is SSB and spectre v2 safe (Mark Salter) [1999157] - arm64: apply ARM64_ERRATUM_845719 workaround for Brahma-B53 core (Mark Salter) [1999157] - arm64: cpufeature: Enable Qualcomm Falkor errata 1009 for Kryo (Mark Salter) [1999157] - arm64: cpufeature: Enable Qualcomm Falkor/Kryo errata 1003 (Mark Salter) [1999157] - arm64: Ensure VM_WRITE|VM_SHARED ptes are clean by default (Mark Salter) [1999157] - arm64: mm: fix inverted PAR_EL1.F check (Mark Salter) [1999157] - arm64: hibernate: check pgd table allocation (Mark Salter) [1999157] - arm64: armv8_deprecated: Checking return value for memory allocation (Mark Salter) [1999157] - arm64: mm: fix spurious fault detection (Mark Salter) [1999157] - arm64: ftrace: Ensure synchronisation in PLT setup for Neoverse-N1 #1542419 (Mark Salter) [1999157] - arm64: mm: avoid virt_to_phys(init_mm.pgd) (Mark Salter) [1999157] - docs: arm64: Fix indentation and doc formatting (Mark Salter) [1999157] - arm64: errata: Update stale comment (Mark Salter) [1999157] - arm64: consider stack randomization for mmap base only when necessary (Mark Salter) [1999157] - arm64: make use of is_compat_task instead of hardcoding this test (Mark Salter) [1999157] - arm64: kpti: ensure patched kernel text is fetched from PoU (Mark Salter) [1999157] - arm64: Clarify when cpu_enable() is called (Mark Salter) [1999157] - arm64: constify sys64_hook instances (Mark Salter) [1999157] - arm64: constify aarch64_insn_encoding_class[] (Mark Salter) [1999157] - arm64: constify icache_policy_str[] (Mark Salter) [1999157] - arm64: prefer __section from compiler_attributes.h (Mark Salter) [1999157] - arm64/ptrace: Fix typoes in sve_set() comment (Mark Salter) [1999157] - arm64: mm: print hexadecimal EC value in mem_abort_decode() (Mark Salter) [1999157] - ahci: thunderx2: Fix workaround to use new inline function (Mark Salter) [1999157] - arm64/prefetch: fix a -Wtype-limits warning (Mark Salter) [1999157] - arm64: Move TIF_* documentation to individual definitions (Mark Salter) [1999157] - arm64: mm: free the initrd reserved memblock in a aligned manner (Mark Salter) [1999157] - arm64: io: Relax implicit barriers in default I/O accessors (Mark Salter) [1999157] - arm64: Remove unused cpucap_multi_entry_cap_cpu_enable() (Mark Salter) [1999157] - arm64: sysreg: Remove unused and rotting SCTLR_ELx field definitions (Mark Salter) [1999157] - arm64: esr: Add ESR exception class encoding for trapped ERET (Mark Salter) [1999157] - arm64/kexec: Use consistent convention of initializing 'kxec_buf.mem' with KEXEC_BUF_MEM_UNKNOWN (Mark Salter) [1999157] - arm64: remove pointless __KERNEL__ guards (Mark Salter) [1999157] - arm64: Remove unused assembly macro (Mark Salter) [1999157] - arm64: memory: Cosmetic cleanups (Mark Salter) [1999157] - arm64: memory: Add comments to end of non-trivial #ifdef blocks (Mark Salter) [1999157] - arm64: memory: Simplify virt_to_page() implementation (Mark Salter) [1999157] - arm64: memory: Rewrite default page_to_virt()/virt_to_page() (Mark Salter) [1999157] - arm64: mm: Ignore spurious translation faults taken from the kernel (Mark Salter) [1999157] - arm64: mm: Add ISB instruction to set_pgd() (Mark Salter) [1999157] - arm64: tlb: Ensure we execute an ISB following walk cache invalidation (Mark Salter) [1999157] - Revert "arm64: Remove unnecessary ISBs from set_{pte,pmd,pud}" (Mark Salter) [1999157] - arm64: pgtable: Implement p[mu]d_valid() and check in set_p[mu]d() (Mark Salter) [1999157] - arm64: Change the tagged_addr sysctl control semantics to only prevent the opt-in (Mark Salter) [1999157] - redhat/configs: Add CONFIG_ARM64_TAGGED_ADDR_ABI (Mark Salter) [1999157] - arm64: Introduce prctl() options to control the tagged user addresses ABI (Mark Salter) [1999157] - arm64: smp: Treat unknown boot failures as being 'stuck in kernel' (Mark Salter) [1999157] - arm64: smp: Don't enter kernel with NULL stack pointer or task struct (Mark Salter) [1999157] - arm64: map FDT as RW for early_init_dt_scan() (Mark Salter) [1999157] - arm64: ftrace: Ensure module ftrace trampoline is coherent with I-side (Mark Salter) [1999157] - arch: replace _BITUL() in kernel-space headers with BIT() (Mark Salter) [1999157] - arm64: move jump_label_init() before parse_early_param() (Mark Salter) [1999157] - arm64: don't use asm-generic/ptrace.h (Mark Salter) [1999157] - arm64: rename dump_instr as dump_kernel_instr (Mark Salter) [1999157] - arm64/mm: Drop [PTE|PMD]_TYPE_FAULT (Mark Salter) [1999157] - arm64: module: create module allocations without exec permissions (Mark Salter) [1999157] - acpi/arm64: ignore 5.1 FADTs that are reported as 5.0 (Mark Salter) [1999157] - arm64: remove redundant 'default n' from Kconfig (Mark Salter) [1999157] - arm64: mm: avoid redundant READ_ONCE(*ptep) (Mark Salter) [1999157] - arm64/mm: Document write abort detection from ESR (Mark Salter) [1999157] - arm64: Fix comment after #endif (Mark Salter) [1999157] - arm64: ptrace: add support for syscall emulation (Mark Salter) [1999157] - arm64: add PTRACE_SYSEMU{,SINGLESTEP} definations to uapi headers (Mark Salter) [1999157] - arm64/mm: Identify user instruction aborts (Mark Salter) [1999157] - arm64/mm: Change BUG_ON() to VM_BUG_ON() in [pmd|pud]_set_huge() (Mark Salter) [1999157] - arm64: kernel: use aff3 instead of aff2 in comment (Mark Salter) [1999157] - arm64/mm: Simplify protection flag creation for kernel huge mappings (Mark Salter) [1999157] - arm64/mm: Move PTE_VALID from SW defined to HW page table entry definitions (Mark Salter) [1999157] - arm64/sve: should not depend on (Mark Salter) [1999157] - arm64: ssbd: explicitly depend on (Mark Salter) [1999157] - ARM64: trivial: s/TIF_SECOMP/TIF_SECCOMP/ comment typo fix (Mark Salter) [1999157] - arm64: smp: Moved cpu_logical_map[] to smp.h (Mark Salter) [1999157] - arm64: use the correct function type for __arm64_sys_ni_syscall (Mark Salter) [1999157] - arm64: use the correct function type in SYSCALL_DEFINE0 (Mark Salter) [1999157] - arm64: fix syscall_fn_t type (Mark Salter) [1999157] - signal/arm64: Use force_sig not force_sig_fault for SIGKILL (Mark Salter) [1999157] - arm64: Fix the arm64_personality() syscall wrapper redirection (Mark Salter) [1999157] - arm64: Remove useless message during oops (Mark Salter) [1999157] - arm64: don't trash config with compat symbol if COMPAT is disabled (Mark Salter) [1999157] - arm64: assembler: Update comment above cond_yield_neon() macro (Mark Salter) [1999157] - arm64: Fix size of __early_cpu_boot_status (Mark Salter) [1999157] - arm64: mm: Remove pte_unmap_nested() (Mark Salter) [1999157] - arm64: Fix compiler warning from pte_unmap() with -Wunused-but-set-variable (Mark Salter) [1999157] - arm64: compat: Reduce address limit for 64K pages (Mark Salter) [1999157] - arm64: mmap: Ensure file offset is treated as unsigned (Mark Salter) [1999157] - arm64: instrument smp_{load_acquire,store_release} (Mark Salter) [1999157] - arm64: mm: check virtual addr in virt_to_page() if CONFIG_DEBUG_VIRTUAL=y (Mark Salter) [1999157] - arm64: ptrace: Add function argument access API (Mark Salter) [1999157] - arm64: compat: Reduce address limit (Mark Salter) [1999157] - arm64: Save and restore OSDLR_EL1 across suspend/resume (Mark Salter) [1999157] - arm64: Clear OSDLR_EL1 on CPU boot (Mark Salter) [1999157] - arm64: debug: Separate debug hooks based on target exception level (Mark Salter) [1999157] - arm64: debug: Remove meaningless comment (Mark Salter) [1999157] - arm64: debug: Rename addr parameter for non-watchpoint exception hooks (Mark Salter) [1999157] - arm64: Use defines instead of magic numbers (Mark Salter) [1999157] - arm64: cpu_ops: fix a leaked reference by adding missing of_node_put (Mark Salter) [1999157] - arm64: mm: Make show_pte() a static function (Mark Salter) [1999157] - arm64: setup min_low_pfn (Mark Salter) [1999157] - arm64: mm: fix incorrect assignment of 'max_mapnr' (Mark Salter) [1999157] - arm64: perf_event: Remove wrongfully used inline (Mark Salter) [1999157] - arm64: backtrace: Don't bother trying to unwind the userspace stack (Mark Salter) [1999157] - arm64: replace memblock_alloc_low with memblock_alloc (Mark Salter) [1999157] - arm64: kdump: no need to mark crashkernel pages manually PG_reserved (Mark Salter) [1999157] - arm64: kexec: no need to ClearPageReserved() (Mark Salter) [1999157] - arm64: mmu: drop paging_init comments (Mark Salter) [1999157] - arm64: debug: Ensure debug handlers check triggering exception level (Mark Salter) [1999157] - arm64: io: Hook up __io_par() for inX() ordering (Mark Salter) [1999157] - arm64: Rename get_thread_info() (Mark Salter) [1999157] - arm64: Remove documentation about TIF_USEDFPU (Mark Salter) [1999157] - arm64: uaccess: Cleanup get/put_user() (Mark Salter) [1999157] - arm64: Remove asm/memblock.h (Mark Salter) [1999157] - arm64: default NR_CPUS to 256 (Mark Salter) [1999157] - arm64: perf: remove misleading comment (Mark Salter) [1999157] - arm64: Relax GIC version check during early boot (Mark Salter) [1999157] - arm64, mm, efi: Account for GICv3 LPI tables in static memblock reserve table (Mark Salter) [1999157] - arm64: hibernate: Clean the __hyp_text to PoC after resume (Mark Salter) [1999157] - arm64: hyp-stub: Forbid kprobing of the hyp-stub (Mark Salter) [1999157] - arm64: kprobe: Always blacklist the KVM world-switch code (Mark Salter) [1999157] - kasan, arm64: remove redundant ARCH_SLAB_MINALIGN define (Mark Salter) [1999157] - arm64: asm-prototypes: Fix fat-fingered typo in comment (Mark Salter) [1999157] - arm64: compat: Hook up io_pgetevents() for 32-bit tasks (Mark Salter) [1999157] - arm64: compat: Don't pull syscall number from regs in arm_compat_syscall (Mark Salter) [1999157] - arm64: compat: Avoid sending SIGILL for unallocated syscall numbers (Mark Salter) [1999157] - arm64: kaslr: Reserve size of ARM64_MEMSTART_ALIGN in linear region (Mark Salter) [1999157] - arm64: smp: Fix compilation error (Mark Salter) [1999157] - arm64: select ACPI PCI code only when both features are enabled (Mark Salter) [1999157] - arm64: kaslr: print PHYS_OFFSET in dump_kernel_offset() (Mark Salter) [1999157] - arm64: sysreg: Use _BITUL() when defining register bits (Mark Salter) [1999157] - arm64: perf: Treat EXCLUDE_EL* bit definitions as unsigned (Mark Salter) [1999157] - arm64: percpu: Fix LSE implementation of value-returning pcpu atomics (Mark Salter) [1999157] - arm64: smp: Handle errors reported by the firmware (Mark Salter) [1999157] - arm64: smp: Rework early feature mismatched detection (Mark Salter) [1999157] - arm64: percpu: Rewrite per-cpu ops to allow use of LSE atomics (Mark Salter) [1999157] - arm64: crypto: add NEON accelerated XOR implementation (Mark Salter) [1999157] - arm64/neon: add workaround for ambiguous C99 stdint.h types (Mark Salter) [1999157] - arm64: ftrace: always pass instrumented pc in x0 (Mark Salter) [1999157] - arm64: ftrace: use GLOBAL() (Mark Salter) [1999157] - arm64: io: Ensure value passed to __iormb() is held in a 64-bit register (Mark Salter) [1999157] - arm64: acpi: Prepare for longer MADTs (Mark Salter) [1999157] - arm64: io: Ensure calls to delay routines are ordered against prior readX() (Mark Salter) [1999157] - arm64: perf: Fix typos in comment (Mark Salter) [1999157] - arm64: function_graph: Simplify with function_graph_enter() (Mark Salter) [1999157] - arm64: sysreg: fix sparse warnings (Mark Salter) [1999157] - arm64: mm: define NET_IP_ALIGN to 0 (Mark Salter) [1999157] - arm64: kprobe: make page to RO mode when allocate it (Mark Salter) [1999157] - arm64: kdump: fix small typo (Mark Salter) [1999157] - arm64: mm: Use #ifdef for the __PAGETABLE_P?D_FOLDED defines (Mark Salter) [1999157] - arm64: Trap WFI executed in userspace (Mark Salter) [1999157] - arm64/mm: Use ESR_ELx_FSC macro while decoding fault exception (Mark Salter) [1999157] - arm64: compat: Add CNTFRQ trap handler (Mark Salter) [1999157] - arm64: compat: Add CNTVCT trap handler (Mark Salter) [1999157] - arm64: compat: Add cp15_32 and cp15_64 handler arrays (Mark Salter) [1999157] - arm64: compat: Add condition code checks and IT advance (Mark Salter) [1999157] - arm64: Add decoding macros for CP15_32 and CP15_64 traps (Mark Salter) [1999157] - arm64: Remove unused VGA console support (Mark Salter) [1999157] - arm64: Kconfig: Remove ARCH_HAS_HOLES_MEMORYMODEL (Mark Salter) [1999157] - arm64/cpufeatures: Emulate MRS instructions by parsing ESR_ELx.ISS (Mark Salter) [1999157] - arm64/cpufeatures: Factorize emulate_mrs() (Mark Salter) [1999157] - arm64: fix for bad_mode() handler to always result in panic (Mark Salter) [1999157] - arm64: force_signal_inject: WARN if called from kernel context (Mark Salter) [1999157] - arm64: tlb: Adjust stride and type of TLBI according to mmu_gather (Mark Salter) [1999157] - arm64: percpu: Initialize ret in the default case (Mark Salter) [1999157] - arm64: mm: always enable CONFIG_HOLES_IN_ZONE (Mark Salter) [1999157] - arm64: Avoid calling stop_machine() when patching jump labels (Mark Salter) [1999157] - arm64: Drop asmlinkage qualifier from syscall_trace_{enter,exit} (Mark Salter) [1999157] - arm64: zero GPRs upon entry from EL0 (Mark Salter) [1999157] - arm64: don't reload GPRs after apply_ssbd (Mark Salter) [1999157] - arm64: consistently use unsigned long for thread flags (Mark Salter) [1999157] - arm64: insn: Don't fallback on nosync path for general insn patching (Mark Salter) [1999157] - arm64: remove unused COMPAT_PSR definitions (Mark Salter) [1999157] - kvm/arm: use PSR_AA32 definitions (Mark Salter) [1999157] - arm64: use PSR_AA32 definitions (Mark Salter) [1999157] - arm64: compat: map SPSR_ELx<->PSR for signals (Mark Salter) [1999157]- RDMA/qedr: Fix reporting max_{send/recv}_wr attrs (Kamal Heib) [2051524] - thermal/drivers/int340x: Fix RFIM mailbox write commands (Prarit Bhargava) [2040065] - thermal: int340x: Limit Kconfig to 64-bit (Prarit Bhargava) [2040065] - thermal: int340x: fix build on 32-bit targets (Prarit Bhargava) [2040065] - thermal/drivers/int340x: processor_thermal: Suppot 64 bit RFIM responses (Prarit Bhargava) [2040065] - PCI/MSI: Clear PCI_MSIX_FLAGS_MASKALL on error (Myron Stowe) [1911591] - PCI/MSI: Skip masking MSI-X on Xen PV (Myron Stowe) [1911591] - PCI/MSI: Mask all unused MSI-X entries (Myron Stowe) [1911591] - PCI/MSI: Enable and mask MSI-X early (Myron Stowe) [1911591] - genirq: Use rcu in kstat_irqs_usr() (Waiman Long) [2068445] - scsi: target: Allow changing dbroot if there are no registered devices (Maurizio Lombardi) [2073435] - powerpc/pseries: Fix use after free in remove_phb_dynamic() (Steve Best) [2073707] - sctp: use the correct skb for security_sctp_assoc_request (Xin Long) [2070915] - s390/mm: check 2KB-fragment page on release (Rafael Aquini) [2026578] - s390/mm: better annotate 2KB pagetable fragments handling (Rafael Aquini) [2026578] - s390/mm: fix 2KB pgtable release race (Rafael Aquini) [2026578] - s390/mm: fix phys vs virt confusion in pgtable allocation routines (Rafael Aquini) [2026578] - net: openvswitch: fix leak of nested actions (Eelco Chaudron) [2073538] - bpf: Let bpf_warn_invalid_xdp_action() report more info (Petr Oros) [2069671] - bpf: Do not WARN in bpf_warn_invalid_xdp_action() (Petr Oros) [2069671]- scsi: qedi: Fix failed disconnect handling (Chris Leech) [2071519] - scsi: iscsi: Fix unbound endpoint error handling (Chris Leech) [2071519] - scsi: iscsi: Fix conn cleanup and stop race during iscsid restart (Chris Leech) [2071519] - scsi: iscsi: Fix endpoint reuse regression (Chris Leech) [2071519] - scsi: iscsi: Release endpoint ID when its freed (Chris Leech) [2071519] - scsi: iscsi: Fix offload conn cleanup when iscsid restarts (Chris Leech) [2071519] - Revert "scsi: iscsi: Fix offload conn cleanup when iscsid restarts" (Chris Leech) [2071519] - scsi: iscsi: Speed up session unblocking and removal (Chris Leech) [2071519] - scsi: iscsi: Fix recovery and unblocking race (Chris Leech) [2071519] - scsi: iscsi: Unblock session then wake up error handler (Chris Leech) [2071519] - bnxt_en: make hw-tc-offload default to off (Ken Cox) [2005101] - bnxt_en: reject indirect blk offload when hw-tc-offload is off (Ken Cox) [2005101]- bpf, test_offload.py: Skip base maps without names (Yauheni Kaliuta) [2025787] - bnx2x: truncate value to original sizing (Manish Chopra) [2040271] - bnx2x: use correct format characters (Manish Chopra) [2040271] - bnx2x: fix built-in kernel driver load failure (Manish Chopra) [2040271] - bnx2x: fix driver load from initrd (Manish Chopra) [2040271] - bnx2x: Replace one-element array with flexible-array member (Manish Chopra) [2040271] - bnx2x: Remove useless DMA-32 fallback configuration (Manish Chopra) [2040271] - bnx2x: Invalidate fastpath HSI version for VFs (Manish Chopra) [2040271] - bnx2x: Utilize firmware 7.13.21.0 (Manish Chopra) [2040271] - bnx2x: constify static inline stub for dev_addr (Manish Chopra) [2040271] - net: bnx2x: fix variable dereferenced before check (Manish Chopra) [2040271] - ethernet: bnx2x: use eth_hw_addr_set() (Manish Chopra) [2040271] - bnx2x: Fix enabling network interfaces without VFs (Manish Chopra) [2040271] - bnx2x: fix an error code in bnx2x_nic_load() (Manish Chopra) [2040271] - bnx2x: remove unused variable 'cur_data_offset' (Manish Chopra) [2040271] - bnx2x: Remove the repeated declaration (Manish Chopra) [2040271] - bnx2x: Fix missing error code in bnx2x_iov_init_one() (Manish Chopra) [2040271] - net: broadcom: bnx2x: Fix wrong function name in comments (Manish Chopra) [2040271] - bnx2x: Remove redundant assignment to err (Manish Chopra) [2040271] - bnx2x: Use fallthrough pseudo-keyword (Manish Chopra) [2040271] - bnx2x: use true,false for bool variables (Manish Chopra) [2040271] - bnx2x: Fix some kernel-doc warnings (Manish Chopra) [2040271] - bnx2x: convert to new udp_tunnel_nic infra (Manish Chopra) [2040271] - bnx2x: Remove hw_reset_t function casts (Manish Chopra) [2040271] - bnx2x: Remove format_fw_ver_t function casts (Manish Chopra) [2040271] - bnx2x: Remove config_init_t function casts (Manish Chopra) [2040271] - bnx2x: Remove read_status_t function casts (Manish Chopra) [2040271] - bnx2x: Drop redundant callback function casts (Manish Chopra) [2040271] - bnx2x: Use napi_alloc_frag() (Manish Chopra) [2040271] - HID: intel-ish-hid: fix module device-id handling (Tony Camuso) [1921300] - mod_devicetable: fix kdocs for ishtp_device_id (Tony Camuso) [1921300] - HID: intel-ish-hid: add support for MODULE_DEVICE_TABLE() (Tony Camuso) [1921300] - platform/x86: isthp_eclite: only load for matching devices (Tony Camuso) [1921300] - platform/x86: Add Intel ishtp eclite driver (Tony Camuso) [1921300] - platform/x86: Add config file for Intel ishtp eclite driver (Tony Camuso) [1921300] - modpost: add guid_t type definition (Tony Camuso) [1921300] - squashfs: provide backing_dev_info in order to disable read-ahead (Brian Foster) [2025351] - mm: fix readahead_page_batch for retry entries (Brian Foster) [2025351] - iomap: convert from readpages to readahead (Brian Foster) [2025351] - fs: convert mpage_readpages to mpage_readahead (Brian Foster) [2025351] - mm: use memalloc_nofs_save in readahead path (Brian Foster) [2025351] - mm: document why we don't set PageReadahead (Brian Foster) [2025351] - mm: add page_cache_readahead_unbounded (Brian Foster) [2025351] - mm: move end_index check out of readahead loop (Brian Foster) [2025351] - mm: add readahead address space operation (Brian Foster) [2025351] - mm: put readahead pages in cache earlier (Brian Foster) [2025351] - mm: remove 'page_offset' from readahead loop (Brian Foster) [2025351] - mm: rename readahead loop variable to 'i' (Brian Foster) [2025351] - mm: rename various 'offset' parameters to 'index' (Brian Foster) [2025351] - mm: use readahead_control to pass arguments (Brian Foster) [2025351] - mm: add new readahead_control API (Brian Foster) [2025351] - mm: move readahead nr_pages check into read_pages (Brian Foster) [2025351] - mm: ignore return value of ->readpages (Brian Foster) [2025351] - mm: return void from various readahead functions (Brian Foster) [2025351] - mm: move readahead prototypes from mm.h (Brian Foster) [2025351] - mpage: mpage_readpages() should submit IO as read-ahead (Brian Foster) [2025351] - mpage: add argument structure for do_mpage_readpage() (Brian Foster) [2025351] - redhat/configs: enable CONFIG_AMD_PTDMA for x86_64 (Sudheesh Mavila) [2027231] - dmaengine: ptdma: handle the cases based on DMA is complete (Sudheesh Mavila) [2027231] - dmaengine: ptdma: fix concurrency issue with multiple dma transfer (Sudheesh Mavila) [2027231] - dmaengine: ptdma: Fix the error handling path in pt_core_init() (Sudheesh Mavila) [2027231] - MAINTAINERS: Fix AMD PTDMA DRIVER entry (Sudheesh Mavila) [2027231] - dmaengine: ptdma: remove PT_OFFSET to avoid redefnition (Sudheesh Mavila) [2027231] - dmaengine: ptdma: Add debugfs entries for PTDMA (Sudheesh Mavila) [2027231] - dmaengine: ptdma: register PTDMA controller as a DMA resource (Sudheesh Mavila) [2027231] - dmaengine: ptdma: Initial driver for the AMD PTDMA (Sudheesh Mavila) [2027231] - isert: support for unsolicited NOPIN with no response (Maurizio Lombardi) [2035915] - iscsit: increment max_cmd_sn for isert on command release (Maurizio Lombardi) [2035915] - sched/debug: Remove mpol_get/put and task_lock/unlock from sched_show_numa (Phil Auld) [2062841] - sched/numa: initialize numa statistics when forking new task (Phil Auld) [2062841] - cgroup: Fix suspicious rcu_dereference_check() usage warning (Phil Auld) [2062841] - sched/cpuacct: Remove redundant RCU read lock (Phil Auld) [2062841] - sched/cpuacct: Optimize away RCU read lock (Phil Auld) [2062841] - sched/cpuacct: Fix charge percpu cpuusage (Phil Auld) [2062841] - sched: replace cpumask_weight with cpumask_empty where appropriate (Phil Auld) [2062841] - sched/rt: Plug rt_mutex_setprio() vs push_rt_task() race (Phil Auld) [2062841] - psi: fix possible trigger missing in the window (Phil Auld) [2062841] - sched: Avoid double preemption in __cond_resched_*lock*() (Phil Auld) [2062841] - sched/fair: Fix all kernel-doc warnings (Phil Auld) [2062841] - sched/rt: Try to restart rt period timer when rt runtime exceeded (Phil Auld) [2062841] - sched/fair: Fix detection of per-CPU kthreads waking a task (Phil Auld) [2062841] - locking: Remove rt_rwlock_is_contended(). (Phil Auld) [2062841] - sched: Trigger warning if ->migration_disabled counter underflows. (Phil Auld) [2062841] - sched/cpuacct: Make user/system times in cpuacct.stat more precise (Phil Auld) [2062841] - sched/cpuacct: Fix user/system in shown cpuacct.usage* (Phil Auld) [2062841] - cpuacct: Convert BUG_ON() to WARN_ON_ONCE() (Phil Auld) [2062841] - cputime, cpuacct: Include guest time in user time in cpuacct.stat (Phil Auld) [2062841] - sched/fair: Document the slow path and fast path in select_task_rq_fair (Phil Auld) [2062841] - drm/i915/ehl: Remove require_force_probe protection (Michel Dänzer) [2048674] - net/sched: fix initialization order when updating chain 0 head (Marcelo Ricardo Leitner) [2044711] - smp: Process pending softirqs in flush_smp_call_function_from_idle() (Waiman Long) [2066087] - irq_work: Optimize irq_work_single() (Waiman Long) [2066087] - irq_work: Cleanup (Waiman Long) [2066087] - smp, irq_work: Continue smp_call_function*() and irq_work*() integration (Waiman Long) [2066087] - irq_work: Define irq_work_single() on !CONFIG_IRQ_WORK too (Waiman Long) [2066087] - sched/headers: Split out open-coded prototypes into kernel/sched/smp.h (Waiman Long) [2066087] - sched: Replace rq::wake_list (Waiman Long) [2066087] - sched: Add rq::ttwu_pending (Waiman Long) [2066087] - irq_work, smp: Allow irq_work on call_single_queue (Waiman Long) [2066087] - smp: Optimize send_call_function_single_ipi() (Waiman Long) [2066087] - smp: Move irq_work_run() out of flush_smp_call_function_queue() (Waiman Long) [2066087] - smp: Optimize flush_smp_call_function_queue() (Waiman Long) [2066087] - sched: Fix smp_call_function_single_async() usage for ILB (Waiman Long) [2066087] - sched: Make scheduler_ipi inline (Waiman Long) [2066087] - sched: Clean up scheduler_ipi() (Waiman Long) [2066087] - sched/core: Remove rq.hrtick_csd_pending (Waiman Long) [2066087] - sched/fair: Clean up comment in nohz_idle_balance() (Waiman Long) [2066087] - context_tracking: Rename context_tracking_is_enabled() => context_tracking_enabled() (Waiman Long) [2066087] - context_tracking: Remove context_tracking_active() (Waiman Long) [2066087] - redhat: configs: Disable CONFIG_MPLS for s390x/zfcpdump (Guillaume Nault) [2051659] - KVM: PPC: Book3S HV: Add infrastructure to support 2nd DAWR (Laurent Vivier) [2059318] - KVM: PPC: Book3S HV: Rename current DAWR macros and variables (Laurent Vivier) [2059318] - uapi/linux/stddef.h: Add include guards (Michel Dänzer) [2072125] - stddef: Introduce struct_group() helper macro (Michel Dänzer) [2072125] - component: Add common helper for compare/release functions (Michel Dänzer) [2072125] - PCI/VGA: Move vgaarb to drivers/pci (Michel Dänzer) [2072125] - vgaarb: don't pass a cookie to vga_client_register (Michel Dänzer) [2072125] - vgaarb: remove the unused irq_set_state argument to vga_client_register (Michel Dänzer) [2072125] - vgaarb: provide a vga_client_unregister wrapper (Michel Dänzer) [2072125] - vgaarb: cleanup vgaarb.h (Michel Dänzer) [2072125] - vgaarb: move the kerneldoc for vga_set_legacy_decoding to vgaarb.c (Michel Dänzer) [2072125] - vgaarb: remove vga_conflicts (Michel Dänzer) [2072125] - vgaarb: remove VGA_DEFAULT_DEVICE (Michel Dänzer) [2072125] - lib/string_helpers: Consolidate string helpers implementation (Michel Dänzer) [2072125] - include/linux/string_helpers.h: add linux/string.h for strlen() (Michel Dänzer) [2072125] - kernel.h: split out container_of() and typeof_member() macros (Michel Dänzer) [2072125] - mm/vmscan: add sync_shrinkers function v3 (Michel Dänzer) [2072125] - lib: devres: Add managed arch_io_reserve_memtype_wc() (Michel Dänzer) [2072125] - lib: devres: Add managed arch_phys_wc_add() (Michel Dänzer) [2072125] - kernel/locking: Use a pointer in ww_mutex_trylock(). (Michel Dänzer) [2072125] - locking/ww-mutex: Fix uninitialized use of ret in test_aa() (Michel Dänzer) [2072125] - kernel/locking: Add context to ww_mutex_trylock() (Michel Dänzer) [2072125] - locking/lockdep: Provide lockdep_assert{,_once}() helpers (Michel Dänzer) [2072125] - mm: gup: pack has_pinned in MMF_HAS_PINNED (Chris von Recklinghausen) [2073217] - mm: gup: allow FOLL_PIN to scale in SMP (Chris von Recklinghausen) [2073217] - CI: Drop baseline runs (Veronika Kabatova)- powerpc/xive: Export XIVE IPI information for online-only processors. (Steve Best) [2038448] - netfilter: conntrack: fix reading nf_conntrack_buckets (Phil Sutter) [2053628] - netfilter: nf_tables: initialize registers in nft_do_chain() (Florian Westphal) [2067966] {CVE-2022-1016} - x86/sev-es: Use __put_user()/__get_user() for data accesses (Vitaly Kuznetsov) [2063719] - x86/sev-es: Handle string port IO to kernel memory properly (Vitaly Kuznetsov) [2063719] - x86/sev: Return an error on a returned non-zero SW_EXITINFO1[31:0] (Vitaly Kuznetsov) [2063719] - x86/sev-es: Use __copy_from_user_inatomic() (Vitaly Kuznetsov) [2063719] - x86/sev-es: Check regs->sp is trusted before adjusting #VC IST stack (Vitaly Kuznetsov) [2063719] - x86/sev-es: Introduce ip_within_syscall_gap() helper (Vitaly Kuznetsov) [2063719] - x86/sev-es: Forward page-faults which happen during emulation (Vitaly Kuznetsov) [2063719] - x86/sev-es: Don't return NULL from sev_es_get_ghcb() (Vitaly Kuznetsov) [2063719] - x86/sev-es: Invalidate the GHCB after completing VMGEXIT (Vitaly Kuznetsov) [2063719] - x86/sev-es: Move sev_es_put_ghcb() in prep for follow on patch (Vitaly Kuznetsov) [2063719] - x86/sev: Fix stack type check in vc_switch_off_ist() (Vitaly Kuznetsov) [2063719] - x86/sev: Allow #VC exceptions on the VC2 stack (Vitaly Kuznetsov) [2063719] - x86/sev-es: Enable #VC specific entry point for real (Vitaly Kuznetsov) [2063719] - x86/cpu: Use pinning mask for CR4 bits needing to be 0 (Vitaly Kuznetsov) [2063719] - x86/asm: Move native_write_cr0/4() out of line (Vitaly Kuznetsov) [2063719] - x86/asm: Pin sensitive CR4 bits (Vitaly Kuznetsov) [2063719] - x86/asm: Pin sensitive CR0 bits (Vitaly Kuznetsov) [2063719] - powerpc/mce: Modify the real address error logging messages (Desnes A. Nunes do Rosario) [2068761] - selftests/powerpc: Add test for real address error handling (Desnes A. Nunes do Rosario) [2068761] - powerpc/pseries: Parse control memory access error (Desnes A. Nunes do Rosario) [2068761] - powerpc/pseries/mce: Fix a typo in error type assignment (Desnes A. Nunes do Rosario) [2068761] - netfilter: nf_tables: validate registers coming from userspace. (Florian Westphal) [2065357] {CVE-2022-1015} - PCI: hv: Propagate coherence from VMbus device to PCI device (Vitaly Kuznetsov) [2068429] - Drivers: hv: vmbus: Propagate VMbus coherence to each VMbus device (Vitaly Kuznetsov) [2068429] - Revert "xfs: actually bump warning counts when we send warnings" (Carlos Maiolino) [2059262] - perf/x86/intel: Add a quirk for the calculation of the number of counters on Alder Lake (Michael Petlan) [2039996] - perf stat: Support --cputype option for hybrid events (Michael Petlan) [1971941] - perf/x86/intel/uncore: Add IMC uncore support for ADL (Michael Petlan) [2042217] - tipc: fix kernel panic when enabling bearer (Xin Long) [2061233] - media: v4l: ioctl: Fix memory leak in video_usercopy (Jarod Wilson) [1954604] {CVE-2021-30002}- esp6: fix check on ipv6_skip_exthdr's return value (Sabrina Dubroca) [2054075] - scsi: iscsi: Fix nop handling during conn recovery (Chris Leech) [2069969] - scsi: iscsi: Merge suspend fields (Chris Leech) [2069969] - scsi: iscsi: Fix offload conn cleanup when iscsid restarts (Chris Leech) [2069969] - scsi: iscsi: Move iscsi_ep_disconnect (Chris Leech) [2069969] - CI: Remove deprecated option (Veronika Kabatova)- redhat: add new KUNIT tests to mod-internal.list (Nico Pache) [2065444] - kasan: test: prevent cache merging in kmem_cache_double_destroy (Nico Pache) [2065444] - kasan: test: fix compatibility with FORTIFY_SOURCE (Nico Pache) [2065444] - kasan: test: add test case for double-kmem_cache_destroy() (Nico Pache) [2065444] - kasan: add ability to detect double-kmem_cache_destroy() (Nico Pache) [2065444] - kasan: test: add globals left-out-of-bounds test (Nico Pache) [2065444] - kasan: test: silence intentional read overflow warnings (Nico Pache) [2065444] - kasan: test: bypass __alloc_size checks (Nico Pache) [2065444] - kasan: test: add memcpy test that avoids out-of-bounds write (Nico Pache) [2065444] - kasan: test: clean up ksize_uaf (Nico Pache) [2065444] - kasan: test: disable kmalloc_memmove_invalid_size for HW_TAGS (Nico Pache) [2065444] - kasan: test: only do kmalloc_uaf_memset for generic mode (Nico Pache) [2065444] - kasan: test: avoid corrupting memory via memset (Nico Pache) [2065444] - kasan: test: avoid writing invalid memory (Nico Pache) [2065444] - kasan: test: rework kmalloc_oob_right (Nico Pache) [2065444] - Documentation: kunit: remove claims that kunit is a mocking framework (Nico Pache) [2065444] - kunit: Reset suite count after running tests (Nico Pache) [2065444] - kunit: drop assumption in kunit-log-test about current suite (Nico Pache) [2065444] - string.h: Introduce memset_startat() for wiping trailing members and padding (Nico Pache) [2065444] - string.h: Introduce memset_after() for wiping trailing members/padding (Nico Pache) [2065444] - lib: Introduce CONFIG_MEMCPY_KUNIT_TEST (Nico Pache) [2065444] - kunit: fix kernel-doc warnings due to mismatched arg names (Nico Pache) [2065444] - kunit: fix reference count leak in kfree_at_end (Nico Pache) [2065444] - kunit: Print test statistics on failure (Nico Pache) [2065444] - fat: Add KUnit tests for checksums and timestamps (Nico Pache) [2065444] - kunit: add unit test for filtering suites by names (Nico Pache) [2065444] - kunit: test: Add example tests which are always skipped (Nico Pache) [2065444] - kunit: Support skipped tests (Nico Pache) [2065444] - redhat: remove TEST_LIST_SORT config definitions (Nico Pache) [2065444] - lib/test: convert test_sort.c to use KUnit (Nico Pache) [2065444] - lib/test: convert lib/test_list_sort.c to use KUnit (Nico Pache) [2065444] - kunit: introduce kunit_kmalloc_array/kunit_kcalloc() helpers (Nico Pache) [2065444] - kunit: Add gnu_printf specifiers (Nico Pache) [2065444] - lib/cmdline_kunit: Remove a cast which are no-longer required (Nico Pache) [2065444] - kernel/sysctl-test: Remove some casts which are no-longer required (Nico Pache) [2065444] - device property: Remove some casts in property-entry-test (Nico Pache) [2065444] - Documentation: kunit: Clean up some string casts in examples (Nico Pache) [2065444] - kunit: Assign strings to 'const char*' in STREQ assertions (Nico Pache) [2065444] - kunit: Do not typecheck binary assertions (Nico Pache) [2065444] - Documentation: kunit: document support for QEMU in kunit_tool (Nico Pache) [2065444] - kunit: Add 'kunit_shutdown' option (Nico Pache) [2065444] - Documentation: kunit: Update kunit_tool page (Nico Pache) [2065444] - Documentation: kunit: add tips for running KUnit (Nico Pache) [2065444] - slub: remove resiliency_test() function (Nico Pache) [2065444] - mm/slub, kunit: add a KUnit test for SLUB debugging functionality (Nico Pache) [2065444] - kunit: make test->lock irq safe (Nico Pache) [2065444] - docs: dev-tools: kunit: avoid using ReST :doc:`foo` markup (Nico Pache) [2065444] - docs: dev-tools: kunit: don't use a table for docs name (Nico Pache) [2065444] - kunit: make KUNIT_EXPECT_STREQ() quote values, don't print literals (Nico Pache) [2065444] - kunit: Match parenthesis alignment to improve code readability (Nico Pache) [2065444] - openvswitch: always update flow key after nat (Aaron Conole) [2066885] - md: initialize percpu refcounters using PERCU_REF_ALLOW_REINIT (Nigel Croxon) [2032272] - net: fix a memleak when uncloning an skb dst and its metadata (Hangbin Liu) [2068355] - net: do not keep the dst cache when uncloning an skb dst and its metadata (Hangbin Liu) [2068355] - net: phy: at803x: move page selection fix to config_init (Petr Oros) [2021822] - net: phylink: rejig SFP interface selection in ksettings_set() (Petr Oros) [2021822] - ptp: dp83640: don't define PAGE0 (Petr Oros) [2021822] - net: phylink: Update SFP selected interface on advertising changes (Petr Oros) [2021822] - net: phy: marvell10g: fix broken PHY interrupts for anyone after us in the driver probe list (Petr Oros) [2021822] - net: phy: marvell: Add WAKE_PHY support to WOL event (Petr Oros) [2021822] - net: phy: micrel: Fix link detection on ksz87xx switch" (Petr Oros) [2021822] - net: phy: micrel: Fix detection of ksz87xx switch (Petr Oros) [2021822] - net: phy: broadcom: re-add check for PHY_BRCM_DIS_TXCRXC_NOENRGY on the BCM54811 PHY (Petr Oros) [2021822] - net: phy: at803x: simplify custom phy id matching (Petr Oros) [2021822] - net: phy: intel-xway: Add RGMII internal delay configuration (Petr Oros) [2021822] - net: phylink: cleanup ksettings_set (Petr Oros) [2021822] - net: phylink: add phy change pause mode debug (Petr Oros) [2021822] - net: phy: add API to read 802.3-c45 IDs (Petr Oros) [2021822] - net: phy: Fix data type in DP83822 dp8382x_disable_wol() (Petr Oros) [2021822] - net: phy: marvell10g: enable WoL for 88X3310 and 88E2110 (Petr Oros) [2021822] - net: phy: marvell10g: fix differentiation of 88X3310 from 88X3340 (Petr Oros) [2021822] - net: phy: replace if-else statements with switch (Petr Oros) [2021822] - net: phy: remove unnecessary line continuation (Petr Oros) [2021822] - net: phy: print the function name by __func__ instead of an fixed string (Petr Oros) [2021822] - net: phy: fix formatting issues with braces (Petr Oros) [2021822] - net: phy: fix space alignment issues (Petr Oros) [2021822] - net: phy: delete repeated words of comments (Petr Oros) [2021822] - net: phy: correct format of block comments (Petr Oros) [2021822] - net: phy: change format of some declarations (Petr Oros) [2021822] - net: phy: micrel: remove redundant assignment to pointer of_node (Petr Oros) [2021822] - net: phy: dp83867: perform soft reset and retain established link (Petr Oros) [2021822] - net: phy: do not print dump stack if device was removed (Petr Oros) [2021822] - net: phy: probe for C45 PHYs that return PHY ID of zero in C22 space (Petr Oros) [2021822] - net: phy: marvell: use phy_modify_changed() for marvell_set_polarity() (Petr Oros) [2021822] - net: phy: Fix inconsistent indenting (Petr Oros) [2021822] - net: mdiobus: get rid of a BUG_ON() (Petr Oros) [2021822] - net: phy: marvell: enable downshift by default (Petr Oros) [2021822] - net: phy: marvell: add downshift support for M88E1240 (Petr Oros) [2021822] - net: phy: marvell: fix m88e1111_set_downshift (Petr Oros) [2021822] - net: phy: marvell: fix m88e1011_set_downshift (Petr Oros) [2021822] - net: phy: marvell: don't use empty switch default case (Petr Oros) [2021822] - net: phy: intel-xway: enable integrated led functions (Petr Oros) [2021822] - net: phy: at803x: fix probe error if copper page is selected (Petr Oros) [2021822] - net: phy: marvell: add support for Amethyst internal PHY (Petr Oros) [2021822] - net: dsa: mv88e6xxx: simulate Amethyst PHY model number (Petr Oros) [2021822] - net: phy: marvell: use assignment by bitwise AND operator (Petr Oros) [2021822] - net: phy: marvell: fix HWMON enable register for 6390 (Petr Oros) [2021822] - net: phy: marvell: refactor HWMON OOP style (Petr Oros) [2021822] - net: phy: at803x: select correct page on config init (Petr Oros) [2021822] - net: phy: marvell: fix detection of PHY on Topaz switches (Petr Oros) [2021822] - net: phy: marvell10g: change module description (Petr Oros) [2021822] - net: phy: marvell10g: differentiate 88E2110 vs 88E2111 (Petr Oros) [2021822] - net: phy: add constants for 2.5G and 5G speed in PCS speed register (Petr Oros) [2021822] - net: phy: marvell10g: fix driver name for mv88e2110 (Petr Oros) [2021822] - net: phy: marvell10g: add separate structure for 88X3340 (Petr Oros) [2021822] - net: phy: marvell10g: support other MACTYPEs (Petr Oros) [2021822] - net: phy: marvell10g: store temperature read method in chip strucutre (Petr Oros) [2021822] - net: phy: marvell10g: check for correct supported interface mode (Petr Oros) [2021822] - net: phy: marvell10g: support all rate matching modes (Petr Oros) [2021822] - net: phy: marvell10g: add MACTYPE definitions for 88E21xx (Petr Oros) [2021822] - net: phy: marvell10g: add all MACTYPE definitions for 88X33x0 (Petr Oros) [2021822] - net: phy: marvell10g: indicate 88X33x0 only port control registers (Petr Oros) [2021822] - net: phy: marvell10g: allow 5gbase-r and usxgmii (Petr Oros) [2021822] - net: phy: marvell10g: fix typo (Petr Oros) [2021822] - net: phy: marvell10g: rename register (Petr Oros) [2021822] - net: fec: use mac-managed PHY PM (Petr Oros) [2021822] - net: phy: broadcom: Add statistics for all Gigabit PHYs (Petr Oros) [2021822] - net: phy: broadcom: Only advertise EEE for supported modes (Petr Oros) [2021822] - net: phy: remove repeated word (Petr Oros) [2021822] - net: phy: Correct function name mdiobus_register_board_info() in comment (Petr Oros) [2021822] - net: phy: lan87xx: fix access to wrong register of LAN87xx (Petr Oros) [2021822] - net: phy: at803x: remove at803x_aneg_done() (Petr Oros) [2021822] - net: phy: broadcom: Fix RGMII delays for BCM50160 and BCM50610M (Petr Oros) [2021822] - docs: networking: phy: Improve placement of parenthesis (Petr Oros) [2021822] - net: phy: broadcom: Add power down exit reset state delay (Petr Oros) [2021822] - net: phy: make mdio_bus_phy_suspend/resume as __maybe_unused (Petr Oros) [2021822] - net: mdio: Remove of_phy_attach() (Petr Oros) [2021822] - net: phy: broadcom: Do not modify LED configuration for SFP module PHYs (Petr Oros) [2021822] - net: phy: Add is_on_sfp_module flag and phy_on_sfp helper (Petr Oros) [2021822] - net: phy: broadcom: Set proper 1000BaseX/SGMII interface mode for BCM54616S (Petr Oros) [2021822] - net: phy: marvell: Ensure SGMII auto-negotiation is enabled for 88E1111 (Petr Oros) [2021822] - net: phylink: Add 5gbase-r support (Petr Oros) [2021822] - net: phy: Add 5GBASER interface mode (Petr Oros) [2021822] - net: phy: rename PHY_IGNORE_INTERRUPT to PHY_MAC_INTERRUPT (Petr Oros) [2021822] - net: phy: at803x: add MDIX support to AR8031/33 (Petr Oros) [2021822] - net: phy: broadcom: Allow BCM54210E to configure APD (Petr Oros) [2021822] - net: phy: broadcom: Remove unused flags (Petr Oros) [2021822] - net: phy: broadcom: Avoid forward for bcm54xx_config_clock_delay() (Petr Oros) [2021822] - net: phy: consider that suspend2ram may cut off PHY power (Petr Oros) [2021822] - net: phy: bcm7xxx: Add an entry for BCM72116 (Petr Oros) [2021822] - net: mdiobus: Remove WARN_ON_ONCE(in_interrupt()) (Petr Oros) [2021822] - net: Use kobj_to_dev() API (Petr Oros) [2021822] - net: phy: Fixup kernel doc (Petr Oros) [2021822] - net: phy: bcm7xxx: Add an entry for BCM72113 (Petr Oros) [2021822] - net: phy: mchp: Add support for LAN8814 QUAD PHY (Petr Oros) [2021822] - net: dp83867: Fix WoL SecureOn password (Petr Oros) [2021822] - net: phy: at803x: constify static regulator_ops (Petr Oros) [2021822] - net: phy: marvell10g: support XFI rate matching mode (Petr Oros) [2021822] - net: switch to using PHY_INTERFACE_MODE_10GBASER rather than 10GKR (Petr Oros) [2021822] - netfilter: conntrack: Add and use nf_ct_set_auto_assign_helper_warned() (Phil Sutter) [1896241] - net: do not reuse skbuff allocated from skbuff_fclone_cache in the skb cache (Ivan Vecera) [2069781] - skbuff: queue NAPI_MERGED_FREE skbs into NAPI cache instead of freeing (Ivan Vecera) [2069781] - skbuff: allow to use NAPI cache from __napi_alloc_skb() (Ivan Vecera) [2069781] - skbuff: allow to optionally use NAPI cache from __alloc_skb() (Ivan Vecera) [2069781] - skbuff: introduce {,__}napi_build_skb() which reuses NAPI cache heads (Ivan Vecera) [2069781] - skbuff: move NAPI cache declarations upper in the file (Ivan Vecera) [2069781] - skbuff: remove __kfree_skb_flush() (Ivan Vecera) [2069781] - skbuff: use __build_skb_around() in __alloc_skb() (Ivan Vecera) [2069781] - skbuff: simplify __alloc_skb() a bit (Ivan Vecera) [2069781] - skbuff: make __build_skb_around() return void (Ivan Vecera) [2069781] - skbuff: simplify kmalloc_reserve() (Ivan Vecera) [2069781] - skbuff: move __alloc_skb() next to the other skb allocation functions (Ivan Vecera) [2069781] - net: Introduce {netdev,napi}_alloc_frag_align() (Ivan Vecera) [2069781] - mm: page_frag: Introduce page_frag_alloc_align() (Ivan Vecera) [2069781] - perf tests attr: Add missing topdown metrics events (Michael Petlan) [1986275] - cifs: Return correct error code from smb2_get_enc_key (Ronnie Sahlberg) [2058369] - ipv4: avoid using shared IP generator for connected sockets (Paolo Abeni) [2062427] {CVE-2020-36516} - crypto: cryptd - Fix skcipher instance memory leak (Vladis Dronov) [2004344] - EVM: fix the evm= __setup handler return value (Bruno Meneguele) [2063900] - integrity: include keyring name for unknown key request (Bruno Meneguele) [2063900] - ima: limit secure boot feedback scope for appraise (Bruno Meneguele) [2063900] - integrity: invalid kernel parameters feedback (Bruno Meneguele) [2063900] - ima: add check for enforced appraise option (Bruno Meneguele) [2063900] - ima: Allow template selection with ima_template[_fmt]= after ima_hash= (Bruno Meneguele) [2063900] - ima: Remove ima_policy file before directory (Bruno Meneguele) [2063900] - integrity: check the return value of audit_log_start() (Bruno Meneguele) [2063900] - ima: fix deadlock when traversing "ima_default_rules". (Bruno Meneguele) [2063900] - evm: Introduce evm_revalidate_status() (Bruno Meneguele) [2063900] - evm: Refuse EVM_ALLOW_METADATA_WRITES only if an HMAC key is loaded (Bruno Meneguele) [2063900] - evm: Load EVM key in ima_load_x509() to avoid appraisal (Bruno Meneguele) [2063900] - evm: Execute evm_inode_init_security() only when an HMAC key is loaded (Bruno Meneguele) [2063900] - fs/kernel_read_file: Remove FIRMWARE_PREALLOC_BUFFER enum (Bruno Meneguele) [2063900] - RHEL-only: KVM: selftests: Fix AArch64 compilation (Andrew Jones) [2071997] - tools arch x86: Sync the msr-index.h copy with the kernel sources (Andrew Jones) [2071997] - RHEL-only: KVM: selftests: Remove unused modes (Andrew Jones) [2071997]- netfilter: nf_tables_offload: incorrect flow offload action array size (Florian Westphal) [2056728] {CVE-2022-25636} - netfilter: nftables_offload: KASAN slab-out-of-bounds Read in nft_flow_rule_create (Florian Westphal) [2056728] - KVM: SVM: Allow AVIC support on system w/ physical APIC ID > 255 (Bandan Das) [2033068] - PCI/ACPI: Fix acpi_pci_osc_control_set() kernel-doc comment (Mark Langsdorf) [2049209] - PCI/ACPI: Check for _OSC support in acpi_pci_osc_control_set() (Mark Langsdorf) [2049209] - PCI/ACPI: Move _OSC query checks to separate function (Mark Langsdorf) [2049209] - PCI/ACPI: Move supported and control calculations to separate functions (Mark Langsdorf) [2049209] - PCI/ACPI: Remove OSC_PCI_SUPPORT_MASKS and OSC_PCI_CONTROL_MASKS (Mark Langsdorf) [2049209] - kabi: Adding symbol blkdev_get_by_dev (fs/block_dev.c) (Čestmír Kalina) [2010296] - kabi: Adding symbol thaw_bdev (fs/block_dev.c) (Čestmír Kalina) [2010296] - kabi: Adding symbol freeze_bdev (fs/block_dev.c) (Čestmír Kalina) [2010296] - s390/cio: make ccw_device_dma_* more robust (Thomas Huth) [2066709] - perf/x86/intel/uncore: Make uncore_discovery clean for 64 bit addresses (Michael Petlan) [2069237] - redhat: switch secureboot kernel image signing to release keys (Augusto Caringi) - ice: xsk: Stop Rx processing when ntc catches ntu (Ivan Vecera) [2069082] - ice: xsk: Fix indexing in ice_tx_xsk_pool() (Ivan Vecera) [2069082] - ice: Fix kernel crash in XDP scenario (Ivan Vecera) [2069082]- do_wait: make PIDTYPE_PID case O(1) instead of O(n) (Nico Pache) [2055973] - n_tty: wake up poll(POLLRDNORM) on receiving data (Rafael Aquini) [2033338] - powerpc/papr_scm: Implement initial support for injecting smart errors (Steve Best) [1987103] - mm: memcg: synchronize objcg lists with a dedicated spinlock (Rafael Aquini) [2064847] - kasan: fix quarantine conflicting with init_on_free (Rafael Aquini) [2064847] - mm/hwpoison: clear MF_COUNT_INCREASED before retrying get_any_page() (Rafael Aquini) [2064847] - mm/memcg: relocate mod_objcg_mlstate(), get_obj_stock() and put_obj_stock() (Rafael Aquini) [2064847] - mm: move node_reclaim_distance to fix NUMA without SMP (Rafael Aquini) [2064847] - vmalloc: choose a better start address in vm_area_register_early() (Rafael Aquini) [2064847] - mm/vmalloc: check various alignments when debugging (Rafael Aquini) [2064847] - mm/vmalloc: don't allow VM_NO_GUARD on vmap() (Rafael Aquini) [2064847] - mm, thp: bail out early in collapse_file for writeback page (Rafael Aquini) [2064847] - mm/sparse: set SECTION_NID_SHIFT to 6 (Rafael Aquini) [2064847] - mm/memory_hotplug: fix kerneldoc comment for __remove_memory (Rafael Aquini) [2064847] - mm: fix memory_failure() handling of dax-namespace metadata (Rafael Aquini) [2064847] - mm: teach pfn_to_online_page() about ZONE_DEVICE section collisions (Rafael Aquini) [2064847] - mm: teach pfn_to_online_page() to consider subsection validity (Rafael Aquini) [2064847] - mm: move pfn_to_online_page() out of line (Rafael Aquini) [2064847] - Revert "mm: use early_pfn_to_nid in page_ext_init" (Rafael Aquini) [2064847] - x86/mm: Fix kern_addr_valid() to cope with existing but not present entries (Rafael Aquini) [2064847] - powerpc/book3s64: Fix error handling in mm_iommu_do_alloc() (Rafael Aquini) [2064847] - powerpc/pkeys: remove unused pkey_allows_readwrite (Rafael Aquini) [2064847] - x86/hyperv: Output host build info as normal Windows version number (Vitaly Kuznetsov) [2060700] - powerpc/smp: Update cpu_core_map on all PowerPc systems (Diego Domingos) [2064104] - crypto: ccp - ccp_dmaengine_unregister release dma channels (Vladis Dronov) [2015374] - crypto: ccp - remove redundant ret variable (Vladis Dronov) [2015374] - crypto: ccp - Ensure psp_ret is always init'd in __sev_platform_init_locked() (Vladis Dronov) [2015374] - crypto: ccp - remove unneeded semicolon (Vladis Dronov) [2015374] - crypto: ccp - Add SEV_INIT_EX support (Vladis Dronov) [2015374] - crypto: ccp - Add psp_init_on_probe module parameter (Vladis Dronov) [2015374] - crypto: ccp - Refactor out sev_fw_alloc() (Vladis Dronov) [2015374] - crypto: ccp - Move SEV_INIT retry for corrupted data (Vladis Dronov) [2015374] - crypto: ccp - Add SEV_INIT rc error logging on init (Vladis Dronov) [2015374] - crypto: ccp - no need to initialise statics to 0 (Vladis Dronov) [2015374] - ccp: ccp - add support for Green Sardine (Vladis Dronov) [2015374] - crypto: ccp - fix command queuing to TEE ring buffer (Vladis Dronov) [2015374] - crypto: ccp - reduce tee command status polling interval from 5ms to 1ms (Vladis Dronov) [2015374] - crypto: ccp - provide in-kernel API to submit TEE commands (Vladis Dronov) [2015374] - crypto: ccp - add TEE support for Raven Ridge (Vladis Dronov) [2015374] - crypto: ccp - check whether PSP supports SEV or TEE before initialization (Vladis Dronov) [2015374] - ice: Allow to pass VLAN tagged packets to VF when port VLAN is configured (Ivan Vecera) [2071027] - tools headers UAPI: Sync linux/perf_event.h with the kernel sources (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix power_pmu_disable to call clear_pmi_irq_pending only if PMI is pending (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Only define power_pmu_wants_prompt_pmi() for CONFIG_PPC64 (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Add data source encodings for power10 platform (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Add encodings to represent data based on newer composite PERF_MEM_LVLNUM* fields (Desnes A. Nunes do Rosario) [1992813] - perf: Add new macros for mem_hops field (Desnes A. Nunes do Rosario) [1992813] - tools headers UAPI: Add new macros for mem_hops field to perf_event.h (Desnes A. Nunes do Rosario) [1992813] - bpf: Remove config check to enable bpf support for branch records (Desnes A. Nunes do Rosario) [1992813] - perf powerpc: Update global/local variants for p_stage_cyc (Desnes A. Nunes do Rosario) [1992813] - perf sort: Include global and local variants for p_stage_cyc sort key (Desnes A. Nunes do Rosario) [1992813] - perf sort: Fix the 'p_stage_cyc' sort key behavior (Desnes A. Nunes do Rosario) [1992813] - perf sort: Fix the 'ins_lat' sort key behavior (Desnes A. Nunes do Rosario) [1992813] - perf sort: Fix the 'weight' sort key behavior (Desnes A. Nunes do Rosario) [1992813] - perf vendor events power10: Add metric events JSON file for power10 platform (Desnes A. Nunes do Rosario) [1992813] - perf powerpc: Add support to expose instruction and data address registers as part of extended regs (Desnes A. Nunes do Rosario) [1992813] - perf powerpc: Refactor the code definition of perf reg extended mask in tools side header file (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Expose instruction and data address registers as part of extended regs (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Refactor the code definition of perf reg extended mask (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix data source encodings for L2.1 and L3.1 accesses (Desnes A. Nunes do Rosario) [1992813] - tools/perf: Add mem_hops field in perf_mem_data_src structure (Desnes A. Nunes do Rosario) [1992813] - perf: Add mem_hops field in perf_mem_data_src structure (Desnes A. Nunes do Rosario) [1992813] - perf: Add comment about current state of PERF_MEM_LVL_* namespace and remove an extra line (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix the check for SIAR value (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Drop the case of returning 0 as instruction pointer (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Use stack siar instead of mfspr (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf/hv-gpci: Fix counter value parsing (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix PMU callbacks to clear pending PMI before resetting an overflown PMC (Desnes A. Nunes do Rosario) [1992813] - CI: Remove deprecated option (Veronika Kabatova)- bareudp: use ipv6_mod_enabled to check if IPv6 enabled (Hangbin Liu) [2063813] - powerpc/mm/numa: skip NUMA_NO_NODE onlining in parse_numa_properties() (Diego Domingos) [2048218] - redhat: copy rpminspect to dist-git repo (Jarod Wilson) - configs: enable CONFIG_RMI4_F3A (Benjamin Tissoires) [2067219] - Input: synaptics-rmi4 - add support for F3A (Benjamin Tissoires) [2067219] - RDMA/cma: Do not change route.addr.src_addr.ss_family (Kamal Heib) [2032074] {CVE-2021-4028} - drm/i915/adl_s: Remove require_force_probe protection (Michel Dänzer) [2025896] - drm/i915/adl_s: Update ADL-S PCI IDs (Michel Dänzer) [2025896] - drm/i915: Limit Wa_22010178259 to affected platforms (Michel Dänzer) [2025896] - drm/i915/adl_s: Fix dma_mask_size to 39 bit (Michel Dänzer) [2025896] - drm/i915/dmc: Update DMC to v2.14 on ADL-P (Michel Dänzer) [2060051] - drm/i915: Update memory bandwidth formulae (Michel Dänzer) [2060051] - drm/i915/fb: Fold modifier CCS type/tiling attribute to plane caps (Michel Dänzer) [2060051] - drm/i915/fb: Don't store bitmasks in the intel_plane_caps enum (Michel Dänzer) [2060051] - drm/i915/adl_p: Add ddc pin mapping (Michel Dänzer) [2060051] - iommu/amd: Fix I/O page table memory leak (Jerry Snitselaar) [2053210] - iommu/amd: Recover from event log overflow (Jerry Snitselaar) [2053210]- redhat: tune rpminspect w/additions from rhel9 branch (Jarod Wilson) - powerpc/pseries/ddw: Revert "Extend upper limit for huge DMA window for persistent memory" (Steve Best) [2056080] - x86/tsc: Disable clocksource watchdog for TSC on qualified platorms (Prarit Bhargava) [1971939] - x86/tsc: Add a timer to make sure TSC_adjust is always checked (Prarit Bhargava) [1971939] - x86/hpet: Use another crystalball to evaluate HPET usability (Prarit Bhargava) [1971939] - x86/tsc: Respect tsc command line paraemeter for clocksource_tsc_early (Prarit Bhargava) [1971939] - [s390] s390/pci: fix zpci_zdev_put() on reserve (Claudio Imbrenda) [2039185] - [s390] s390/pci: fix use after free of zpci_dev (Claudio Imbrenda) [2039185] - [s390] s390/cio: make ccw_device_dma_* more robust (Claudio Imbrenda) [2039186] - [s390] s390/pci: add s390_iommu_aperture kernel parameter (Claudio Imbrenda) [2039181] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Paul Lai) [1918929] - kvm: selftests: sync uapi/linux/kvm.h with Linux header (Paul Lai) [1918929] - kvm: selftests: conditionally build vm_xsave_req_perm() (Paul Lai) [1918929] - x86/kvm/fpu: Remove kvm_vcpu_arch.guest_supported_xcr0 (Paul Lai) [1918929] - x86/kvm/fpu: Limit guest user_xfeatures to supported bits of XCR0 (Paul Lai) [1918929] - KVM: x86/cpuid: Exclude unpermitted xfeatures sizes at KVM_GET_SUPPORTED_CPUID (Paul Lai) [1918929] - KVM: x86: Move CPUID.(EAX=0x12,ECX=1) mangling to __kvm_update_cpuid_runtime() (Paul Lai) [1918929] - KVM: x86/cpuid: Clear XFD for component i if the base feature is missing (Paul Lai) [1918929] - KVM: x86: Do runtime CPUID update before updating vcpu->arch.cpuid_entries (Paul Lai) [1918929] - x86/fpu: Fix inline prefix warnings (Paul Lai) [1918929] - selftest: kvm: Add amx selftest (Paul Lai) [1918929] - selftest: kvm: Move struct kvm_x86_state to header (Paul Lai) [1918929] - selftest: kvm: Reorder vcpu_load_state steps for AMX (Paul Lai) [1918929] - kvm: x86: Disable interception for IA32_XFD on demand (Paul Lai) [1918929] - x86/fpu: Provide fpu_sync_guest_vmexit_xfd_state() (Paul Lai) [1918929] - kvm: selftests: Add support for KVM_CAP_XSAVE2 (Paul Lai) [1918929] - kvm: x86: Add support for getting/setting expanded xstate buffer (Paul Lai) [1918929] - x86/fpu: Add uabi_size to guest_fpu (Paul Lai) [1918929] - kvm: x86: Add CPUID support for Intel AMX (Paul Lai) [1918929] - kvm: x86: Add XCR0 support for Intel AMX (Paul Lai) [1918929] - kvm: x86: Disable RDMSR interception of IA32_XFD_ERR (Paul Lai) [1918929] - kvm: x86: Emulate IA32_XFD_ERR for guest (Paul Lai) [1918929] - kvm: x86: Intercept #NM for saving IA32_XFD_ERR (Paul Lai) [1918929] - x86/fpu: Prepare xfd_err in struct fpu_guest (Paul Lai) [1918929] - kvm: x86: Add emulation for IA32_XFD (Paul Lai) [1918929] - x86/fpu: Provide fpu_update_guest_xfd() for IA32_XFD emulation (Paul Lai) [1918929] - kvm: x86: Enable dynamic xfeatures at KVM_SET_CPUID2 (Paul Lai) [1918929] - x86/fpu: Provide fpu_enable_guest_xfd_features() for KVM (Paul Lai) [1918929] - x86/fpu: Add guest support to xfd_enable_feature() (Paul Lai) [1918929] - x86/fpu: Make XFD initialization in __fpstate_reset() a function argument (Paul Lai) [1918929] - kvm: x86: Exclude unpermitted xfeatures at KVM_GET_SUPPORTED_CPUID (Paul Lai) [1918929] - kvm: x86: Fix xstate_required_size() to follow XSTATE alignment rule (Paul Lai) [1918929] - x86/fpu: Prepare guest FPU for dynamically enabled FPU features (Paul Lai) [1918929] - x86/fpu: Extend fpu_xstate_prctl() with guest permissions (Paul Lai) [1918929] - kvm: selftests: move ucall declarations into ucall_common.h (Paul Lai) [1918929] - kvm: selftests: move base kvm_util.h declarations to kvm_util_base.h (Paul Lai) [1918929] - cpuid: kvm_find_kvm_cpuid_features() should be declared 'static' (Paul Lai) [1918929] - KVM: x86: Make sure KVM_CPUID_FEATURES really are KVM_CPUID_FEATURES (Paul Lai) [1918929] - KVM: x86: Add helper to consolidate core logic of SET_CPUID{2} flows (Paul Lai) [1918929]- scsi: mpi3mr: Fix flushing !WQ_MEM_RECLAIM events warning (Tomas Henzl) [2052278] - scsi: mpi3mr: Fix memory leaks (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix reporting of actual data transfer size (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix cmnd getting marked as in use forever (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix hibernation issue (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix printing of pending I/O count (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix deadlock while canceling the fw event (Tomas Henzl) [2054814] - scsi: mpi3mr: Fixes around reply request queues (Tomas Henzl) [2054814] - scsi: mpi3mr: Enhanced Task Management Support Reply handling (Tomas Henzl) [2054814] - scsi: mpi3mr: Use TM response codes from MPI3 headers (Tomas Henzl) [2054814] - scsi: mpi3mr: Increase internal cmnds timeout to 60s (Tomas Henzl) [2054814] - scsi: mpi3mr: Do access status validation before adding devices (Tomas Henzl) [2054814] - scsi: mpi3mr: Update MPI3 headers - part2 (Tomas Henzl) [2054814] - scsi: mpi3mr: Update MPI3 headers - part1 (Tomas Henzl) [2054814] - scsi: mpi3mr: Don't reset IOC if cmnds flush with reset status (Tomas Henzl) [2054814] - scsi: mpi3mr: Replace spin_lock() with spin_lock_irqsave() (Tomas Henzl) [2054814] - scsi: mpi3mr: Add debug APIs based on logging_level bits (Tomas Henzl) [2054814] - scsi: mpt3sas: Remove scsi_dma_map() error messages (Tomas Henzl) [2057021] - net/mlx5: Fix wrong limitation of metadata match on ecpf (Amir Tzin) [2049094] - nfsd: fix use-after-free due to delegation race (Thiago Becker) [2053262] - dma-buf: cma_heap: Fix mutex locking section (Michel Dänzer) [2044440] - drm/amdkfd: Check for null pointer after calling kmemdup (Michel Dänzer) [2044440] - drm/atomic: Check new_crtc_state->active to determine if CRTC needs disable in self refresh mode (Michel Dänzer) [2044440] - drm/amd: avoid suspend on dGPUs w/ s2idle support when runtime PM enabled (Michel Dänzer) [2044440] - drm/i915/overlay: Prevent divide by zero bugs in scaling (Michel Dänzer) [2044440] - dma-buf: heaps: Fix potential spectre v1 gadget (Michel Dänzer) [2044440] - drm/amd/display: Force link_rate as LINK_RATE_RBR2 for 2018 15" Apple Retina panels (Michel Dänzer) [2044440] - drm/amd/display: watermark latencies is not enough on DCN31 (Michel Dänzer) [2044440] - drm/amd/pm: correct the MGpuFanBoost support for Beige Goby (Michel Dänzer) [2044440] - drm/i915/adlp: Fix TypeC PHY-ready status readout (Michel Dänzer) [2044440] - drm/nouveau: fix off by one in BIOS boundary checking (Michel Dänzer) [2044440] - drm/i915: Disable DSB usage for now (Michel Dänzer) [2044440] - Revert "drm/ast: Support 1600x900 with 108MHz PCLK" (Michel Dänzer) [2044440] - drm/amd/display: Fix FP start/end for dcn30_internal_validate_bw. (Michel Dänzer) [2044440] - drm/atomic: Add the crtc to affected crtc only if uapi.enable = true (Michel Dänzer) [2044440] - drm/amdgpu: Use correct VIEWPORT_DIMENSION for DCN2 (Michel Dänzer) [2044440] - drm/amd/display: reset dcn31 SMU mailbox on failures (Michel Dänzer) [2044440] - drm/vmwgfx: Remove explicit transparent hugepages support (Michel Dänzer) [2044440] - drm/radeon: fix error handling in radeon_driver_open_kms (Michel Dänzer) [2044440] - drm/i915/display/ehl: Update voltage swing table (Michel Dänzer) [2044440] - drm/nouveau/kms/nv04: use vzalloc for nv04_display (Michel Dänzer) [2044440] - drm/amd/display: Fix the uninitialized variable in enable_stream_features() (Michel Dänzer) [2044440] - amdgpu/pm: Make sysfs pm attributes as read-only for VFs (Michel Dänzer) [2044440] - drm/amdgpu: fixup bad vram size on gmc v8 (Michel Dänzer) [2044440] - drm/amd/amdgpu: fix gmc bo pin count leak in SRIOV (Michel Dänzer) [2044440] - drm/amd/amdgpu: fix psp tmr bo pin count leak in SRIOV (Michel Dänzer) [2044440] - drm/amdkfd: Fix error handling in svm_range_add (Michel Dänzer) [2044440] - drm/vmwgfx: Introduce a new placement for MOB page tables (Michel Dänzer) [2044440] - drm/vmwgfx: Release ttm memory if probe fails (Michel Dänzer) [2044440] - drm/amd/display: add else to avoid double destroy clk_mgr (Michel Dänzer) [2044440] - drm/amdgpu/display: set vblank_disable_immediate for DC (Michel Dänzer) [2044440] - drm/amd/display: check top_pipe_to_program pointer (Michel Dänzer) [2044440] - drm: panel-orientation-quirks: Add quirk for the Lenovo Yoga Book X91F/L (Michel Dänzer) [2044440] - drm/amd/display: Fix out of bounds access on DNC31 stream encoder regs (Michel Dänzer) [2044440] - drm/amd/display: Fix bug in debugfs crc_win_update entry (Michel Dänzer) [2044440] - drm/radeon/radeon_kms: Fix a NULL pointer dereference in radeon_driver_open_kms() (Michel Dänzer) [2044440] - drm/amdgpu: Fix a NULL pointer dereference in amdgpu_connector_lcd_native_mode() (Michel Dänzer) [2044440] - drm/vmwgfx: Fail to initialize on broken configs (Michel Dänzer) [2044440] - drm/vmwgfx: Remove the deprecated lower mem limit (Michel Dänzer) [2044440] - drm/vboxvideo: fix a NULL vs IS_ERR() check (Michel Dänzer) [2044440] - drm: fix null-ptr-deref in drm_dev_init_release() (Michel Dänzer) [2044440] - drm/ttm: Put BO in its memory manager's lru list (Michel Dänzer) [2044440] - dma_fence_array: Fix PENDING_ERROR leak in dma_fence_array_signaled() (Michel Dänzer) [2044440] - drm/amd/display: explicitly set is_dsc_supported to false before use (Michel Dänzer) [2044440] - drm/i915: Avoid bitwise vs logical OR warning in snb_wm_latency_quirk() (Michel Dänzer) [2044440] - drm/amd/pm: keep the BACO feature enabled for suspend (Michel Dänzer) [2044440] - Revert "drm/amdgpu: stop scheduler when calling hw_fini (v2)" (Michel Dänzer) [2044440] - drm/amd/display: Added power down for DCN10 (Michel Dänzer) [2044440] - drm/amd/display: fix B0 TMDS deepcolor no dislay issue (Michel Dänzer) [2044440] - drm/amdgpu: put SMU into proper state on runpm suspending for BOCO capable platform (Michel Dänzer) [2044440] - drm/amd/pm: skip setting gfx cgpg in the s0ix suspend-resume (Michel Dänzer) [2044440] - drm/amd/pm: Fix xgmi link control on aldebaran (Michel Dänzer) [2044440] - drm/amdgpu: fix dropped backing store handling in amdgpu_dma_buf_move_notify (Michel Dänzer) [2044440] - drm/amd/display: Changed pipe split policy to allow for multi-display pipe split (Michel Dänzer) [2044440] - drm/amdgpu: add support for IP discovery gc_info table v2 (Michel Dänzer) [2044440] - drm/amdgpu: When the VCN(1.0) block is suspended, powergating is explicitly enabled (Michel Dänzer) [2044440] - drm/nouveau: wait for the exclusive fence after the shared ones v2 (Michel Dänzer) [2044440] - drm/nouveau: always wait for the exclusive fence (Michel Dänzer) [2044440] - drm/amd/display: Set optimize_pwr_state for DCN31 (Michel Dänzer) [2044440] - drm/amd/display: Send s0i2_rdy in stream_count == 0 optimization (Michel Dänzer) [2044440] - drm/amd/pm: fix reading SMU FW version from amdgpu_firmware_info on YC (Michel Dänzer) [2044440] - drm/amdgpu: don't override default ECO_BITs setting (Michel Dänzer) [2044440] - drm/amdgpu: correct register access for RLC_JUMP_TABLE_RESTORE (Michel Dänzer) [2044440] - drm/amd/pm: fix a potential gpu_metrics_table memory leak (Michel Dänzer) [2044440] - drm/amd/display: Set exit_optimized_pwr_state for DCN31 (Michel Dänzer) [2044440] - drm/i915/display: Fix an unsigned subtraction which can never be negative. (Michel Dänzer) [2044440] - drm/ast: potential dereference of null pointer (Michel Dänzer) [2044440] - drm: simpledrm: fix wrong unit with pixel clock (Michel Dänzer) [2044440] - Revert "drm/fb-helper: improve DRM fbdev emulation device names" (Michel Dänzer) [2044440] - drm/i915/hdmi: Turn DP++ TMDS output buffers back on in encoder->shutdown() (Michel Dänzer) [2044440] - drm/i915/hdmi: convert intel_hdmi_to_dev to intel_hdmi_to_i915 (Michel Dänzer) [2044440] - drm/amdkfd: process_info lock not needed for svm (Michel Dänzer) [2044440] - drm/amd/display: add connector type check for CRC source set (Michel Dänzer) [2044440] - drm/amdkfd: fix double free mem structure (Michel Dänzer) [2044440] - drm/amd/display: Fix for the no Audio bug with Tiled Displays (Michel Dänzer) [2044440] - drm/amdgpu: check atomic flag to differeniate with legacy path (Michel Dänzer) [2044440] - drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset (Michel Dänzer) [2044440] - drm/syncobj: Deal with signalled fences in drm_syncobj_find_fence. (Michel Dänzer) [2044440] - drm/i915/dp: Perform 30ms delay after source OUI write (Michel Dänzer) [2044440] - drm/amd/display: Allow DSC on supported MST branch devices (Michel Dänzer) [2044440] - dma-buf: system_heap: Use 'for_each_sgtable_sg' in pages free flow (Michel Dänzer) [2044440] - drm/amd/amdgpu: fix potential memleak (Michel Dänzer) [2044440] - drm/amd/amdkfd: Fix kernel panic when reset failed and been triggered again (Michel Dänzer) [2044440] - drm/amd/pm: Remove artificial freq level on Navi1x (Michel Dänzer) [2044440] - drm/amdgpu/gfx9: switch to golden tsc registers for renoir+ (Michel Dänzer) [2044440] - drm/amd/display: Set plane update flags for all planes in reset (Michel Dänzer) [2044440] - drm/amd/display: Fix DPIA outbox timeout after GPU reset (Michel Dänzer) [2044440] - drm/aspeed: Fix vga_pw sysfs output (Michel Dänzer) [2044440] - drm/nouveau/acr: fix a couple NULL vs IS_ERR() checks (Michel Dänzer) [2044440] - drm/amd/display: Fix OLED brightness control on eDP (Michel Dänzer) [2044440] - drm/amdgpu: IH process reset count when restart (Michel Dänzer) [2044440] - drm/amd/pm: avoid duplicate powergate/ungate setting (Michel Dänzer) [2044440] - drm/amdgpu: fix set scaling mode Full/Full aspect/Center not works on vga and dvi connectors (Michel Dänzer) [2044440] - drm/i915: Fix type1 DVI DP dual mode adapter heuristic for modern platforms (Michel Dänzer) [2044440] - drm/i915/dp: Ensure max link params are always valid (Michel Dänzer) [2044440] - drm/i915/dp: Ensure sink rate values are always valid (Michel Dänzer) [2044440] - drm/prime: Fix use after free in mmap with drm_gem_ttm_mmap (Michel Dänzer) [2044440] - drm/udl: fix control-message timeout (Michel Dänzer) [2044440] - drm/amd/display: Limit max DSC target bpp for specific monitors (Michel Dänzer) [2044440] - drm/amd/display: Update swizzle mode enums (Michel Dänzer) [2044440] - drm/cma-helper: Release non-coherent memory with dma_free_noncoherent() (Michel Dänzer) [2044440] - Revert "drm/i915/tgl/dsi: Gate the ddi clocks after pll mapping" (Michel Dänzer) [2044440] - drm/nouveau: hdmigv100.c: fix corrupted HDMI Vendor InfoFrame (Michel Dänzer) [2044440] - x86/speculation: Check CPU capability before applying IBRS spectre v2 mitigation (Waiman Long) [2062156 2062166] {CVE-2022-0001 CVE-2022-0002 CVE-2021-26401} - x86/speculation: Warn about eIBRS + LFENCE + Unprivileged eBPF + SMT (Waiman Long) [2062156 2062166] {CVE-2022-0001 CVE-2022-0002 CVE-2021-26401} - x86/speculation: Warn about Spectre v2 LFENCE mitigation (Waiman Long) [2062156 2062166] {CVE-2022-0001 CVE-2022-0002 CVE-2021-26401} - x86/speculation: Update link to AMD speculation whitepaper (Waiman Long) [2062166] {CVE-2021-26401} - x86/speculation: Use generic retpoline by default on AMD (Waiman Long) [2062166] {CVE-2021-26401} - x86/speculation: Include unprivileged eBPF status in Spectre v2 mitigation reporting (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - Documentation/hw-vuln: Update spectre doc (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86/speculation: Add eIBRS + Retpoline options (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86/speculation: Rename RETPOLINE_AMD to RETPOLINE_LFENCE (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86,bugs: Unconditionally allow spectre_v2=retpoline,amd (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86: deduplicate the spectre_v2_user documentation (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - fuse: fix pipe buffer lifetime for direct_io (Miklos Szeredi) [2064863] {CVE-2022-1011} - ice: Do not enable VLAN pruning when spoofchk is enabled (Ivan Vecera) [2062343] - ice: don't allow to run ice_send_event_to_aux() in atomic ctx (Ivan Vecera) [2062343] - ice: fix 'scheduling while atomic' on aux critical err interrupt (Ivan Vecera) [2062343] - ice: Fix MAC address setting (Ivan Vecera) [2062343] - ice: Clear default forwarding VSI during release (Ivan Vecera) [2062343] - ice: Fix broken IFF_ALLMULTI handling (Ivan Vecera) [2062343] - iavf: Fix hang during reboot/shutdown (Ivan Vecera) [2062343] - iavf: Fix double free in iavf_reset_task (Ivan Vecera) [2062343] - ice: destroy flow director filter mutex after releasing VSIs (Ivan Vecera) [2062343] - ice: fix NULL pointer dereference in ice_update_vsi_tx_ring_stats() (Ivan Vecera) [2062343] - iavf: Fix adopting new combined setting (Ivan Vecera) [2062343] - iavf: Fix handling of vlan strip virtual channel messages (Ivan Vecera) [2062343] - iavf: Fix __IAVF_RESETTING state usage (Ivan Vecera) [2062343] - iavf: Fix missing check for running netdev (Ivan Vecera) [2062343] - iavf: Fix deadlock in iavf_reset_task (Ivan Vecera) [2062343] - iavf: Fix race in init state (Ivan Vecera) [2062343] - iavf: Fix locking for VIRTCHNL_OP_GET_OFFLOAD_VLAN_V2_CAPS (Ivan Vecera) [2062343] - iavf: Fix init state closure on remove (Ivan Vecera) [2062343] - iavf: Add waiting so the port is initialized in remove (Ivan Vecera) [2062343] - iavf: Rework mutexes for better synchronisation (Ivan Vecera) [2062343] - iavf: remove an unneeded variable (Ivan Vecera) [2062343] - iavf: Fix limit of total number of queues to active queues of VF (Ivan Vecera) [2062343] - iavf: Restrict maximum VLAN filters for VIRTCHNL_VF_OFFLOAD_VLAN_V2 (Ivan Vecera) [2062343] - iavf: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 offload enable/disable (Ivan Vecera) [2062343] - iavf: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 hotpath (Ivan Vecera) [2062343] - iavf: Add support VIRTCHNL_VF_OFFLOAD_VLAN_V2 during netdev config (Ivan Vecera) [2062343] - iavf: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 negotiation (Ivan Vecera) [2062343] - virtchnl: Add support for new VLAN capabilities (Ivan Vecera) [2062343] - virtchnl: Use the BIT() macro for capability/offload flags (Ivan Vecera) [2062343] - virtchnl: Remove unused VIRTCHNL_VF_OFFLOAD_RSVD define (Ivan Vecera) [2062343] - virtchnl: Add missing padding to virtchnl_proto_hdrs (Ivan Vecera) [2062343] - ice: Fix race condition during interface enslave (Ivan Vecera) [2062343] - ice: Fix curr_link_speed advertised speed (Ivan Vecera) [2062343] - ice: Don't use GFP_KERNEL in atomic context (Ivan Vecera) [2062343] - ice: Fix error with handling of bonding MTU (Ivan Vecera) [2062343] - ice: stop disabling VFs due to PF error responses (Ivan Vecera) [2062343] - ice: initialize local variable 'tlv' (Ivan Vecera) [2062343] - ice: check the return of ice_ptp_gettimex64 (Ivan Vecera) [2062343] - ice: fix concurrent reset and removal of VFs (Ivan Vecera) [2062343] - ice: fix setting l4 port flag when adding filter (Ivan Vecera) [2062343] - ice: Match on all profiles in slow-path (Ivan Vecera) [2062343] - ice: enable parsing IPSEC SPI headers for RSS (Ivan Vecera) [2062343] - ice: Avoid RTNL lock when re-creating auxiliary device (Ivan Vecera) [2062343] - ice: Fix KASAN error in LAG NETDEV_UNREGISTER handler (Ivan Vecera) [2062343] - ice: fix IPIP and SIT TSO offload (Ivan Vecera) [2062343] - ice: fix an error code in ice_cfg_phy_fec() (Ivan Vecera) [2062343] - ice: Use bitmap_free() to free bitmap (Ivan Vecera) [2062343] - ice: Optimize a few bitmap operations (Ivan Vecera) [2062343] - ice: Slightly simply ice_find_free_recp_res_idx (Ivan Vecera) [2062343] - ice: improve switchdev's slow-path (Ivan Vecera) [2062343] - ice: replay advanced rules after reset (Ivan Vecera) [2062343] - ice: Add flow director support for channel mode (Ivan Vecera) [2062343] - ice: trivial: fix odd indenting (Ivan Vecera) [2062343] - ice: support crosstimestamping on E822 devices if supported (Ivan Vecera) [2062343] - ice: exit bypass mode once hardware finishes timestamp calibration (Ivan Vecera) [2062343] - ice: ensure the hardware Clock Generation Unit is configured (Ivan Vecera) [2062343] - ice: implement basic E822 PTP support (Ivan Vecera) [2062343] - ice: convert clk_freq capability into time_ref (Ivan Vecera) [2062343] - ice: introduce ice_ptp_init_phc function (Ivan Vecera) [2062343] - ice: use 'int err' instead of 'int status' in ice_ptp_hw.c (Ivan Vecera) [2062343] - ice: PTP: move setting of tstamp_config (Ivan Vecera) [2062343] - ice: introduce ice_base_incval function (Ivan Vecera) [2062343] - ice: xsk: fix cleaned_count setting (Ivan Vecera) [2062343] - ice: xsk: allow empty Rx descriptors on XSK ZC data path (Ivan Vecera) [2062343] - ice: xsk: allocate separate memory for XDP SW ring (Ivan Vecera) [2062343] - ice: xsk: return xsk buffers back to pool when cleaning the ring (Ivan Vecera) [2062343] - ice: use modern kernel API for kick (Ivan Vecera) [2062343] - ice: tighter control over VSI_DOWN state (Ivan Vecera) [2062343] - ice: use prefetch methods (Ivan Vecera) [2062343] - ice: update to newer kernel API (Ivan Vecera) [2062343] - ice: support immediate firmware activation via devlink reload (Ivan Vecera) [2062343] - ice: reduce time to read Option ROM CIVD data (Ivan Vecera) [2062343] - ice: move ice_devlink_flash_update and merge with ice_flash_pldm_image (Ivan Vecera) [2062343] - ice: move and rename ice_check_for_pending_update (Ivan Vecera) [2062343] - ice: devlink: add shadow-ram region to snapshot Shadow RAM (Ivan Vecera) [2062343] - ice: Remove unused ICE_FLOW_SEG_HDRS_L2_MASK (Ivan Vecera) [2062343] - ice: Remove unnecessary casts (Ivan Vecera) [2062343] - ice: Propagate error codes (Ivan Vecera) [2062343] - ice: Remove excess error variables (Ivan Vecera) [2062343] - ice: Cleanup after ice_status removal (Ivan Vecera) [2062343] - ice: Remove enum ice_status (Ivan Vecera) [2062343] - ice: Use int for ice_status (Ivan Vecera) [2062343] - ice: Remove string printing for ice_status (Ivan Vecera) [2062343] - ice: Refactor status flow for DDP load (Ivan Vecera) [2062343] - ice: Refactor promiscuous functions (Ivan Vecera) [2062343] - ice: refactor PTYPE validating (Ivan Vecera) [2062343] - ice: Add package PTYPE enable information (Ivan Vecera) [2062343] - ice: safer stats processing (Ivan Vecera) [2062343] - ice: fix adding different tunnels (Ivan Vecera) [2062343] - ice: fix choosing UDP header type (Ivan Vecera) [2062343] - ice: ignore dropped packets during init (Ivan Vecera) [2062343] - ice: rearm other interrupt cause register after enabling VFs (Ivan Vecera) [2062343] - net/ice: Remove unused enum (Ivan Vecera) [2062343] - net/ice: Fix boolean assignment (Ivan Vecera) [2062343] - net/ice: Add support for enable_iwarp and enable_roce devlink param (Ivan Vecera) [2062343] - ice: avoid bpf_prog refcount underflow (Ivan Vecera) [2062343] - ice: fix vsi->txq_map sizing (Ivan Vecera) [2062343] - ice: Hide bus-info in ethtool for PRs in switchdev mode (Ivan Vecera) [2062343] - ice: Clear synchronized addrs when adding VFs in switchdev mode (Ivan Vecera) [2062343] - ice: fix error return code in ice_get_recp_frm_fw() (Ivan Vecera) [2062343] - ice: Fix clang -Wimplicit-fallthrough in ice_pull_qvec_from_rc() (Ivan Vecera) [2062343] - ice: Add support to print error on PHY FW load failure (Ivan Vecera) [2062343] - ice: Add support for changing MTU on PR in switchdev mode (Ivan Vecera) [2062343] - ice: send correct vc status in switchdev (Ivan Vecera) [2062343] - ice: support for GRE in eswitch (Ivan Vecera) [2062343] - ice: low level support for tunnels (Ivan Vecera) [2062343] - ice: VXLAN and Geneve TC support (Ivan Vecera) [2062343] - ice: support for indirect notification (Ivan Vecera) [2062343] - ice: Add tc-flower filter support for channel (Ivan Vecera) [2062343] - ice: enable ndo_setup_tc support for mqprio_qdisc (Ivan Vecera) [2062343] - ice: Add infrastructure for mqprio support via ndo_setup_tc (Ivan Vecera) [2062343] - ice: fix an error code in ice_ena_vfs() (Ivan Vecera) [2062343] - ice: use devm_kcalloc() instead of devm_kzalloc() (Ivan Vecera) [2062343] - ice: Make use of the helper function devm_add_action_or_reset() (Ivan Vecera) [2062343] - ice: Refactor PR ethtool ops (Ivan Vecera) [2062343] - ice: Forbid trusted VFs in switchdev mode (Ivan Vecera) [2062343] - ice: Manage act flags for switchdev offloads (Ivan Vecera) [2062343] - ice: introduce XDP_TX fallback path (Ivan Vecera) [2062343] - ice: optimize XDP_TX workloads (Ivan Vecera) [2062343] - ice: propagate xdp_ring onto rx_ring (Ivan Vecera) [2062343] - ice: do not create xdp_frame on XDP_TX (Ivan Vecera) [2062343] - ice: unify xdp_rings accesses (Ivan Vecera) [2062343] - ice: ndo_setup_tc implementation for PR (Ivan Vecera) [2062343] - ice: ndo_setup_tc implementation for PF (Ivan Vecera) [2062343] - ice: Allow changing lan_en and lb_en on all kinds of filters (Ivan Vecera) [2062343] - ice: cleanup rules info (Ivan Vecera) [2062343] - ice: allow deleting advanced rules (Ivan Vecera) [2062343] - ice: allow adding advanced rules (Ivan Vecera) [2062343] - ice: create advanced switch recipe (Ivan Vecera) [2062343] - ice: manage profiles and field vectors (Ivan Vecera) [2062343] - ice: implement low level recipes functions (Ivan Vecera) [2062343] - ice: add port representor ethtool ops and stats (Ivan Vecera) [2062343] - ice: switchdev slow path (Ivan Vecera) [2062343] - ice: rebuild switchdev when resetting all VFs (Ivan Vecera) [2062343] - ice: enable/disable switchdev when managing VFs (Ivan Vecera) [2062343] - ice: introduce new type of VSI for switchdev (Ivan Vecera) [2062343] - ice: set and release switchdev environment (Ivan Vecera) [2062343] - net: export metadata_dst_free() (Ivan Vecera) [2062343] - ice: allow changing lan_en and lb_en on dflt rules (Ivan Vecera) [2062343] - ice: manage VSI antispoof and destination override (Ivan Vecera) [2062343] - ice: allow process VF opcodes in different ways (Ivan Vecera) [2062343] - ice: introduce VF port representor (Ivan Vecera) [2062343] - ice: Move devlink port to PF/VF struct (Ivan Vecera) [2062343] - ice: support basic E-Switch mode control (Ivan Vecera) [2062343] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ivan Vecera) [2062343] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Ivan Vecera) [2062343] - ice: Use xdp_buf instead of rx_buf for xsk zero-copy (Ivan Vecera) [2062343] - ice: fix FDIR init missing when reset VF (Ivan Vecera) [2062343] - intel: Remove rcu_read_lock() around XDP program invocation (Ivan Vecera) [2062343] - intel: Update drivers to use ethtool_sprintf (Ivan Vecera) [2062343] - ice: fix conversion to new udp_tunnel infrastructure (Ivan Vecera) [2062343] - intel-ethernet: clean up W=1 warnings in kdoc (Ivan Vecera) [2062343] - PCI: Use 'pci_channel_state_t' instead of 'enum pci_channel_state' (Ivan Vecera) [2062343] - treewide: Use sizeof_field() macro (Ivan Vecera) [2062343] - devlink: Add 'enable_iwarp' generic device param (Ivan Vecera) [2062343] - devlink: Add new "enable_vnet" generic device param (Ivan Vecera) [2062343] - devlink: Add new "enable_rdma" generic device param (Ivan Vecera) [2062343] - devlink: Add new "enable_eth" generic device param (Ivan Vecera) [2062343] - gfs2: dequeue iopen holder in gfs2_inode_lookup error (Bob Peterson) [2061665] - redhat/configs: Increase CONFIG_LOCKDEP_CHAINS_BITS from 16 to 17 (Waiman Long) [2057339] - redhat: spec: trigger dracut when modules are installed separately (Jan Stancek) [2060237 2016948]- makefile: Add dist-* targets (Prarit Bhargava) - Fonts: Replace discarded const qualifier (Nico Pache) [1904374] - Fonts: Support FONT_EXTRA_WORDS macros for built-in fonts (Nico Pache) [1904374] - fbdev, newport_con: Move FONT_EXTRA_WORDS macros into linux/font.h (Nico Pache) [1904374] - x86/cpu: Drop spurious underscore from RAPTOR_LAKE #define (Prarit Bhargava) [2040021] - x86/cpu: Add Raptor Lake to Intel family (Prarit Bhargava) [2040021] - powerpc/64: Move paca allocation later in boot (Desnes A. Nunes do Rosario) [2016335] - powerpc/prom: fix early DEBUG messages (Desnes A. Nunes do Rosario) [2016335] - powerpc: Set crashkernel offset to mid of RMA region (Desnes A. Nunes do Rosario) [2016335] - KVM: x86/mmu: Don't advance iterator after restart due to yielding (Nico Pache) [2058907] - igb: refactor XDP registration (Corinna Vinschen) [2040171] - igc: avoid kernel warning when changing RX ring parameters (Corinna Vinschen) [2040171] - scsi: qedi: Fix cmd_cleanup_cmpl counter mismatch issue (Nilesh Javali) [2054565] - EDAC/amd64: Save max number of controllers for F19 M70 (Aristeu Rozanski) [2064285] - CI: Use 8.6-rt branch for rhel8 realtime_check (Chris White) - blk-mq: avoid extending delays of active hctx from blk_mq_delay_run_hw_queues (Ming Lei) [2046525] - tipc: fix incorrect order of state message data sanity check (Xin Long) [2048971] - tipc: improve size validations for received domain records (Xin Long) [2048971] {CVE-2022-0435} - efi/x86: Call efi_parse_options() from efi_main() (Lenny Szubowicz) [2049233]- net/mlx5e: TC, Remove redundant error logging (Amir Tzin) [2023907] - net/mlx5: DR, Warn on failure to destroy objects due to refcount (Amir Tzin) [2022325] - net/mlx5: DR, Add support for dumping steering info (Amir Tzin) [2022325] - net/mlx5: DR, Add missing reserved fields to dr_match_param (Amir Tzin) [2022325] - net/mlx5: DR, Add check for flex parser ID value (Amir Tzin) [2022325] - net/mlx5: DR, Rename list field in matcher struct to list_node (Amir Tzin) [2022325] - net/mlx5: DR, Remove unused struct member in matcher (Amir Tzin) [2022325] - net/mlx5: DR, Fix error flow in creating matcher (Amir Tzin) [2022325] - net/mlx5e: Avoid implicit modify hdr for decap drop rule (Amir Tzin) [2015434] - net/mlx5e: TC, Fix memory leak with rules with internal port (Amir Tzin) [2015434] - net/mlx5e: Fix skb memory leak when TC classifier action offloads are disabled (Amir Tzin) [2015434] - net/mlx5: Fix some error handling paths in 'mlx5e_tc_add_fdb_flow()' (Amir Tzin) [2015434] - net/mlx5: E-Switch, Check group pointer before reading bw_share value (Amir Tzin) [2015434] - net/mlx5: E-Switch, fix single FDB creation on BlueField (Amir Tzin) [2015434] - net/mlx5: E-switch, Respect BW share of the new group (Amir Tzin) [2015434] - net/mlx5: DR, Fix check for unsupported fields in match param (Amir Tzin) [2015434] - net/mlx5: E-Switch, rebuild lag only when needed (Amir Tzin) [2015434] - net/mlx5e: Delete forward rule for ct or sample action (Amir Tzin) [2015434] - net/mlx5: E-Switch, Use indirect table only if all destinations support it (Amir Tzin) [2015434] - net/mlx5: Support internal port as decap route device (Amir Tzin) [2015434] - net/mlx5e: Term table handling of internal port rules (Amir Tzin) [2015434] - net/mlx5e: Add indirect tc offload of ovs internal port (Amir Tzin) [2015434] - net/{mlx5|nfp|bnxt}: Remove unnecessary RTNL lock assert (Amir Tzin) [2015434] - net/mlx5e: Offload internal port as encap route device (Amir Tzin) [2015434] - net/mlx5e: Offload tc rules that redirect to ovs internal port (Amir Tzin) [2015434] - net/mlx5e: Accept action skbedit in the tc actions list (Amir Tzin) [2015434] - net/mlx5: E-Switch, Add ovs internal port mapping to metadata support (Amir Tzin) [2015434] - net/mlx5e: Use generic name for the forwarding dev pointer (Amir Tzin) [2015434] - net/mlx5e: Refactor rx handler of represetor device (Amir Tzin) [2015434] - net/mlx5: DR, Add check for unsupported fields in match param (Amir Tzin) [2015434] - net/mlx5: Allow skipping counter refresh on creation (Amir Tzin) [2015434] - net/mlx5e: IPsec: Refactor checksum code in tx data path (Amir Tzin) [2015434] - net/mlx5: CT: Remove warning of ignore_flow_level support for VFs (Amir Tzin) [2015434] - net/mlx5: Add esw assignment back in mlx5e_tc_sample_unoffload() (Amir Tzin) [2015434] - net/mlx5: Bridge, fix uninitialized variable usage (Amir Tzin) [2015434] - net/mlx5: Lag, don't update lag if lag isn't supported (Amir Tzin) [2015434] - net/mlx5: E-switch, Return correct error code on group creation failure (Amir Tzin) [2015434] - net/mlx5: Bridge, support LAG (Amir Tzin) [2015434] - net/mlx5: Bridge, allow merged eswitch connectivity (Amir Tzin) [2015434] - net/mlx5: Bridge, extract FDB delete notification to function (Amir Tzin) [2015434] - net/mlx5: Bridge, identify port by vport_num+esw_owner_vhca_id pair (Amir Tzin) [2015434] - net/mlx5: Bridge, obtain core device from eswitch instead of priv (Amir Tzin) [2015434] - net/mlx5: Bridge, release bridge in same function where it is taken (Amir Tzin) [2015434] - net/mlx5: Lag, Create shared FDB when in switchdev mode (Amir Tzin) [2015434] - net/mlx5: E-Switch, add logic to enable shared FDB (Amir Tzin) [2015434] - net/mlx5: Lag, properly lock eswitch if needed (Amir Tzin) [2015434] - net/mlx5: Add send to vport rules on paired device (Amir Tzin) [2015434] - net/mlx5: E-Switch, Add event callback for representors (Amir Tzin) [2015434] - net/mlx5e: Use shared mappings for restoring from metadata (Amir Tzin) [2015434] - net/mlx5e: Add an option to create a shared mapping (Amir Tzin) [2015434] - net/mlx5: E-Switch, set flow source for send to uplink rule (Amir Tzin) [2015434] - RDMA/mlx5: Add shared FDB support (Amir Tzin) [2015434] - {net, RDMA}/mlx5: Extend send to vport rules (Amir Tzin) [2015434] - RDMA/mlx5: Fill port info based on the relevant eswitch (Amir Tzin) [2015434] - net/mlx5: Lag, add initial logic for shared FDB (Amir Tzin) [2015434] - net/mlx5: Return mdev from eswitch (Amir Tzin) [2015434] - net/mlx5: E-switch, Add QoS tracepoints (Amir Tzin) [2015434] - net/mlx5: E-switch, Allow to add vports to rate groups (Amir Tzin) [2015434] - net/mlx5: E-switch, Allow setting share/max tx rate limits of rate groups (Amir Tzin) [2015434] - net/mlx5: E-switch, Introduce rate limiting groups API (Amir Tzin) [2015434] - net/mlx5: E-switch, Enable devlink port tx_{share|max} rate control (Amir Tzin) [2015434] - net/mlx5: E-switch, Move QoS related code to dedicated file (Amir Tzin) [2015434] - net/mlx5e: TC, Support sample offload action for tunneled traffic (Amir Tzin) [2015434] - net/mlx5e: TC, Restore tunnel info for sample offload (Amir Tzin) [2015434] - net/mlx5e: TC, Remove CONFIG_NET_TC_SKB_EXT dependency when restoring tunnel (Amir Tzin) [2015434] - net/mlx5e: Refactor ct to use post action infrastructure (Amir Tzin) [2015434] - net/mlx5e: Introduce post action infrastructure (Amir Tzin) [2015434] - net/mlx5e: CT, Use xarray to manage fte ids (Amir Tzin) [2015434] - net/mlx5e: Move sample attribute to flow attribute (Amir Tzin) [2015434] - net/mlx5e: Move esw/sample to en/tc/sample (Amir Tzin) [2015434] - net/mlx5e: Remove mlx5e dependency from E-Switch sample (Amir Tzin) [2015434] - net/mlx5: DR, Fix querying eswitch manager vport for ECPF (Amir Tzin) [2018097] - net/mlx5: DR, Handle eswitch manager and uplink vports separately (Amir Tzin) [2018097] - net/mlx5: DR, Add missing string for action type SAMPLER (Amir Tzin) [2018097] - net/mlx5: DR, init_next_match only if needed (Amir Tzin) [2018097] - net/mlx5: DR, Increase supported num of actions to 32 (Amir Tzin) [2018097] - net/mlx5: DR, Add support for SF vports (Amir Tzin) [2018097] - net/mlx5: DR, Support csum recalculation flow table on SFs (Amir Tzin) [2018097] - net/mlx5: DR, Align error messages for failure to obtain vport caps (Amir Tzin) [2018097] - net/mlx5: DR, Add missing query for vport 0 (Amir Tzin) [2018097] - net/mlx5: DR, Replace local WIRE_PORT macro with the existing MLX5_VPORT_UPLINK (Amir Tzin) [2018097] - scsi: lpfc: Fix pt2pt NVMe PRLI reject LOGO loop (Dick Kennedy) [1943202] - nvme-tcp: change target from tech-preview to unmaintained (John Meneghini) [2061577] - drm/amd/display: Don't reinitialize DMCUB on s0ix resume (Karol Herbst) [2059680] - tcp: Add snd_wnd to TCP_INFO (Davide Caratti) [2056608] - tcp: Add TCP_INFO counter for packets received out-of-order (Davide Caratti) [2056608] - net/mlx5: Move MODIFY_RQT command to ignore list in internal error state (Amir Tzin) [1982236] - net/mlx5e: Add TX max rate support for MQPRIO channel mode (Amir Tzin) [1982236] - net/mlx5e: Specify SQ stats struct for mlx5e_open_txqsq() (Amir Tzin) [1982236] - net/mlx5e: Allow only complete TXQs partition in MQPRIO channel mode (Amir Tzin) [1982236] - net/mlx5e: Mutually exclude setting of TX-port-TS and MQPRIO in channel mode (Amir Tzin) [1982236] - net/mlx5e: Fix condition when retrieving PTP-rqn (Amir Tzin) [1982236] - net/mlx5: Fix inner TTC table creation (Amir Tzin) [1982236] - net/mlx5e: Fix division by 0 in mlx5e_select_queue for representors (Amir Tzin) [1982236] - net/mlx5e: Improve MQPRIO resiliency (Amir Tzin) [1982236] - net/mlx5e: Support MQPRIO channel mode (Amir Tzin) [1982236] - net/mlx5e: Handle errors of netdev_set_num_tc() (Amir Tzin) [1982236] - net/mlx5e: Maintain MQPRIO mode parameter (Amir Tzin) [1982236] - net/mlx5e: Abstract MQPRIO params (Amir Tzin) [1982236] - net/mlx5e: Support flow classification into RSS contexts (Amir Tzin) [1982236] - net/mlx5e: Support multiple RSS contexts (Amir Tzin) [1982236] - net/mlx5e: Dynamically allocate TIRs in RSS contexts (Amir Tzin) [1982236] - net/mlx5e: Convert RSS to a dedicated object (Amir Tzin) [1982236] - net/mlx5e: Introduce abstraction of RSS context (Amir Tzin) [1982236] - net/mlx5e: Introduce TIR create/destroy API in rx_res (Amir Tzin) [1982236] - net/mlx5e: Do not try enable RSS when resetting indir table (Amir Tzin) [1982236] - net/mlx5: Embed mlx5_ttc_table (Amir Tzin) [1982236] - net/mlx5: Move TTC logic to fs_ttc (Amir Tzin) [1982236] - net/mlx5e: Decouple TTC logic from mlx5e (Amir Tzin) [1982236] - net/mlx5e: Rename some related TTC args and functions (Amir Tzin) [1982236] - net/mlx5e: Rename traffic type enums (Amir Tzin) [1982236] - net/mlx5e: Allocate the array of channels according to the real max_nch (Amir Tzin) [1982236] - net/mlx5e: Hide all implementation details of mlx5e_rx_res (Amir Tzin) [1982236] - net/mlx5e: Introduce mlx5e_channels API to get RQNs (Amir Tzin) [1982236] - net/mlx5e: Use a new initializer to build uniform indir table (Amir Tzin) [1982236] - net/mlx5e: Use the new TIR API for kTLS (Amir Tzin) [1982236] - net/mlx5e: Move management of indir traffic types to rx_res (Amir Tzin) [1982236] - net/mlx5e: Convert TIR to a dedicated object (Amir Tzin) [1982236] - net/mlx5e: Create struct mlx5e_rss_params_hash (Amir Tzin) [1982236] - net/mlx5e: Remove mdev from mlx5e_build_indir_tir_ctx_common() (Amir Tzin) [1982236] - net/mlx5e: Remove lro_param from mlx5e_build_indir_tir_ctx_common() (Amir Tzin) [1982236] - net/mlx5e: Remove mlx5e_priv usage from mlx5e_build_*tir_ctx*() (Amir Tzin) [1982236] - net/mlx5e: Use mlx5e_rqt_get_rqtn to access RQT hardware id (Amir Tzin) [1982236] - net/mlx5e: Take RQT out of TIR and group RX resources (Amir Tzin) [1982236] - net/mlx5e: Move RX resources to a separate struct (Amir Tzin) [1982236] - net/mlx5e: Move mlx5e_build_rss_params() call to init_rx (Amir Tzin) [1982236] - net/mlx5e: Convert RQT to a dedicated object (Amir Tzin) [1982236] - net/mlx5e: Check if inner FT is supported outside of create/destroy functions (Amir Tzin) [1982236] - net/mlx5: Take TIR destruction out of the TIR list lock (Amir Tzin) [1982236] - PCI: pciehp: Ignore Link Down/Up caused by error-induced Hot Reset (Myron Stowe) [2060122] - PCI/portdrv: Rename pm_iter() to pcie_port_device_iter() (Myron Stowe) [2060122] - iommu/vt-d: Fix double list_add when enabling VMD in scalable mode (Jerry Snitselaar) [2062094] - redhat/configs: Disable CONFIG_SENSORS_NCT6683 in RHEL for arm/aarch64 (Dean Nelson) [2059695] - redhat: drop the -sha512 suffix from default rhpkg invocation (Jarod Wilson) - sysctl: return -EINVAL if val violates minmax (Rafael Aquini) [2062571] - kernel/sysctl.c: switch to bitmap_zalloc() (Rafael Aquini) [2062571] - netlabel: remove unused parameter in netlbl_netlink_auditinfo() (William Zhao) [1985319] - netlabel: Fix memory leak in netlbl_mgmt_add_common (William Zhao) [1985319] - bpftool: Fix indent in option lists in the documentation (Yauheni Kaliuta) [2014861] - libbpf: Fix memleak in libbpf_netlink_recv() (Yauheni Kaliuta) [2014861] - libbpf: Use dynamically allocated buffer when receiving netlink messages (Yauheni Kaliuta) [2014861] - libbpf: Clean gen_loader's attach kind. (Yauheni Kaliuta) [2014861] - powerpc/bpf: Use bctrl for making function calls (Jiri Olsa) [2014861] - powerpc/signal: Use PPC_RAW_xx() macros (Jiri Olsa) [2014861] - powerpc/ebpf64: Use PPC_RAW_MFLR() (Jiri Olsa) [2014861] - powerpc/opcodes: Add shorter macros for registers for use with PPC_RAW_xx() (Jiri Olsa) [2014861] - lib/test: fix spelling mistakes (Jiri Olsa) [2014861] - tracepoint: Add tracepoint_probe_register_may_exist() for BPF tracing (Jiri Olsa) [2014861] - bpf: Allow bpf_get_current_ancestor_cgroup_id for tracing (Jiri Olsa) [2014861] - docs: bpf: bpf_lsm.rst: avoid using ReST :doc:`foo` markup (Jiri Olsa) [2014861] - bpf, docs: Add llvm_reloc.rst to explain llvm bpf relocations (Jiri Olsa) [2014861] - bpf, arm64: Remove redundant switch case about BPF_DIV and BPF_MOD (Jiri Olsa) [2014861] - bpf, arm64: Replace STACK_ALIGN() with round_up() to align stack size (Jiri Olsa) [2014861] - selftests, bpf: Test that dead ldx_w insns are accepted (Jiri Olsa) [2014861] - bpf, selftests: Add test cases for pointer alu from multiple paths (Jiri Olsa) [2014861] - bpf: Selftest to verify mixing bpf2bpf calls and tailcalls with insn patch (Jiri Olsa) [2014861] - selftests/bpf: Fix ringbuf test fetching map FD (Jiri Olsa) [2014861] - selftests/bpf: Whitelist test_progs.h from .gitignore (Jiri Olsa) [2014861] - selftests, bpf: Make docs tests fail more reliably (Jiri Olsa) [2014861] - selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks (Jiri Olsa) [2014861] - selftests/bpf: Add bpf_lookup_and_delete_elem tests (Jiri Olsa) [2014861] - selftests/bpf: Convert test trace_printk to lskel. (Jiri Olsa) [2014861] - selftests/bpf: Convert test printk to use rodata. (Jiri Olsa) [2014861] - selftests/bpf: Convert atomics test to light skeleton. (Yauheni Kaliuta) [2014861] - selftests/bpf: Convert few tests to light skeleton. (Jiri Olsa) [2014861] - selftests/bpf: Test for btf_load command. (Jiri Olsa) [2014861] - selftests/bpf: Test for syscall program type (Jiri Olsa) [2014861] - libbpf: Add selftests for TC-BPF management API (Jiri Olsa) [2014861] - selftests/bpf: Validate skeleton gen handles skipped fields (Jiri Olsa) [2014861] - selftests/bpf: Stop using static variables for passing data to/from user-space (Jiri Olsa) [2014861] - tools: bpftool: Document and add bash completion for -L, -B options (Jiri Olsa) [2014861] - tools: bpftool: Update and synchronise option list in doc and help msg (Jiri Olsa) [2014861] - bpftool: Remove unused includes to (Jiri Olsa) [2014861] - powerpc/bpf: Fix write protecting JIT code (Jiri Olsa) [2014861] - libbpf: Fix lookup_and_delete_elem_flags error reporting (Jiri Olsa) [2014861] - bpftool: Check malloc return value in mount_bpffs_for_pin (Jiri Olsa) [2014861] - tools: bpf: Fix error in 'make -C tools/ bpf_install' (Jiri Olsa) [2014861] - bpftool: Properly close va_list 'ap' by va_end() on error (Jiri Olsa) [2014861] - bpf: Fix libelf endian handling in resolv_btfids (Jiri Olsa) [2014861] - tools/bpftool: Fix error return code in do_batch() (Jiri Olsa) [2014861] - tools/bpftool: Fix cross-build (Jiri Olsa) [2014861] - bpftool: Set errno on skeleton failures and propagate errors (Jiri Olsa) [2014861] - bpftool: Use syscall/loader program in "prog load" and "gen skeleton" command. (Jiri Olsa) [2014861] - bpftool: Stop emitting static variables in BPF skeleton (Jiri Olsa) [2014861] - bpftool: Strip const/volatile/restrict modifiers from .bss and .data vars (Jiri Olsa) [2014861] - bpf: Add missing bpf_read_[un]lock_trace() for syscall program (Jiri Olsa) [2014861] - libbpf: Fix skel_internal.h to set errno on loader retval < 0 (Jiri Olsa) [2014861] - libbpf: Fix segfault in light skeleton for objects without BTF (Jiri Olsa) [2014861] - libbpf: Return non-null error on failures in libbpf_find_prog_btf_id() (Jiri Olsa) [2014861] - libbpf, doc: Eliminate warnings in libbpf_naming_convention (Jiri Olsa) [2014861] - net, core: Allow netdev_lower_get_next_private_rcu in bh context (Jiri Olsa) [2014861] - samples/bpf: Fix the error return code of xdp_redirect's main() (Jiri Olsa) [2014861] - samples/bpf: Fix Segmentation fault for xdp_redirect command (Jiri Olsa) [2014861] - samples/bpf: Add missing option to xdp_sample_pkts usage (Jiri Olsa) [2014861] - samples/bpf: Add missing option to xdp_fwd usage (Jiri Olsa) [2014861] - samples, bpf: Suppress compiler warning (Jiri Olsa) [2014861] - file: Rename __close_fd to close_fd and remove the files parameter (Jiri Olsa) [2014861] - bpf: Fix ringbuf helper function compatibility (Jiri Olsa) [2014861] - bpf: Clear zext_dst of dead insns (Jiri Olsa) [2014861] - bpf: Add rcu_read_lock in bpf_get_current_[ancestor_]cgroup_id() helpers (Jiri Olsa) [2014861] - bpf, core: Fix kernel-doc notation (Jiri Olsa) [2014861] - libbpf: Do not close un-owned FD 0 on errors (Jiri Olsa) [2014861] - libbpf: Fix probe for BPF_PROG_TYPE_CGROUP_SOCKOPT (Jiri Olsa) [2014861] - s390/bpf: Perform r1 range checking before accessing jit->seen_reg[r1] (Jiri Olsa) [2014861] - libbpf: Restore errno return for functions that were already returning it (Jiri Olsa) [2014861] - powerpc/bpf: Write protect JIT code (Jiri Olsa) [2014861] - powerpc/bpf: Remove bpf_jit_free() (Jiri Olsa) [2014861] - bpf: Fix integer overflow in argument calculation for bpf_map_area_alloc (Jiri Olsa) [2014861] - bpf: Fix false positive kmemleak report in bpf_ringbuf_area_alloc() (Jiri Olsa) [2014861] - bpf: Allow RCU-protected lookups to happen from bh context (Jiri Olsa) [2014861] - bpf, x86: Remove unused cnt increase from EMIT macro (Jiri Olsa) [2014861] - libbpf: Switch to void * casting in netlink helpers (Jiri Olsa) [2014861] - libbpf: Add request buffer type for netlink messages (Jiri Olsa) [2014861] - libbpf: Add extra BPF_PROG_TYPE check to bpf_object__probe_loading (Jiri Olsa) [2014861] - bpf: Add documentation for libbpf including API autogen (Jiri Olsa) [2014861] - bpf: Fix up register-based shifts in interpreter to silence KUBSAN (Jiri Olsa) [2014861] - libbpf: Fail compilation if target arch is missing (Jiri Olsa) [2014861] - bpf: Fix typo in kernel/bpf/bpf_lsm.c (Jiri Olsa) [2014861] - bpf: Support BPF_FUNC_get_socket_cookie() for BPF_PROG_TYPE_SK_REUSEPORT. (Jiri Olsa) [2014861] - libbpf: Set NLM_F_EXCL when creating qdisc (Jiri Olsa) [2014861] - libbpf: Remove unneeded check for flags during tc detach (Jiri Olsa) [2014861] - libbpf: Simplify the return expression of bpf_object__init_maps function (Jiri Olsa) [2014861] - libbpf: Fix pr_warn type warnings on 32bit (Jiri Olsa) [2014861] - libbpf: Install skel_internal.h header used from light skeletons (Jiri Olsa) [2014861] - libbpf: Refactor header installation portions of Makefile (Jiri Olsa) [2014861] - libbpf: Move few APIs from 0.4 to 0.5 version (Jiri Olsa) [2014861] - bpf, tnums: Provably sound, faster, and more precise algorithm for tnum_mul (Jiri Olsa) [2014861] - libbpf: Move BPF_SEQ_PRINTF and BPF_SNPRINTF to bpf_helpers.h (Jiri Olsa) [2014861] - libbpf: Streamline error reporting for high-level APIs (Jiri Olsa) [2014861] - libbpf: Streamline error reporting for low-level APIs (Jiri Olsa) [2014861] - libbpf: Add libbpf_set_strict_mode() API to turn on libbpf 1.0 behaviors (Jiri Olsa) [2014861] - bpf: Fix spelling mistakes (Jiri Olsa) [2014861] - bpf: Extend libbpf with bpf_map_lookup_and_delete_elem_flags (Jiri Olsa) [2014861] - bpf: Add lookup_and_delete_elem support to hashtab (Jiri Olsa) [2014861] - libbpf: Skip bpf_object__probe_loading for light skeleton (Jiri Olsa) [2014861] - bpf: Make some symbols static (Jiri Olsa) [2014861] - bpf: Add cmd alias BPF_PROG_RUN (Jiri Olsa) [2014861] - libbpf: Introduce bpf_map__initial_value(). (Jiri Olsa) [2014861] - libbpf: Cleanup temp FDs when intermediate sys_bpf fails. (Jiri Olsa) [2014861] - libbpf: Generate loader program out of BPF ELF file. (Jiri Olsa) [2014861] - libbpf: Preliminary support for fd_idx (Jiri Olsa) [2014861] - libbpf: Add bpf_object pointer to kernel_supports(). (Jiri Olsa) [2014861] - libbpf: Change the order of data and text relocations. (Jiri Olsa) [2014861] - bpf: Add bpf_sys_close() helper. (Jiri Olsa) [2014861] - bpf: Add bpf_btf_find_by_name_kind() helper. (Jiri Olsa) [2014861] - bpf: Introduce fd_idx (Jiri Olsa) [2014861] - bpf: Make btf_load command to be bpfptr_t compatible. (Jiri Olsa) [2014861] - libbpf: Support for syscall program type (Jiri Olsa) [2014861] - bpf: Prepare bpf syscall to be used from kernel and user space. (Jiri Olsa) [2014861] - bpf: Introduce bpfptr_t user/kernel pointer. (Jiri Olsa) [2014861] - bpf: Introduce bpf_sys_bpf() helper and program type. (Jiri Olsa) [2014861] - libbpf: Add low level TC-BPF management API (Jiri Olsa) [2014861] - libbpf: Add various netlink helpers (Jiri Olsa) [2014861] - libbpf: Reject static entry-point BPF programs (Jiri Olsa) [2014861] - libbpf: Reject static maps (Jiri Olsa) [2014861] - libbpf: Treat STV_INTERNAL same as STV_HIDDEN for functions (Jiri Olsa) [2014861] - libbpf: Add per-file linker opts (Jiri Olsa) [2014861] - bpf: verifier: Use copy_array for jmp_history (Jiri Olsa) [2014861] - bpf: verifier: Improve function state reallocation (Jiri Olsa) [2014861]- ice: fix getting UDP tunnel entry (Jonathan Toppins) [2015409] - ice: convert to new udp_tunnel infrastructure (Jonathan Toppins) [2015409] - selftests: kvm: Check whether SIDA memop fails for normal guests (Thomas Huth) [2050807] - KVM: s390: Return error on SIDA memop on normal guest (Thomas Huth) [2050807] {CVE-2022-0516} - lib/iov_iter: initialize "flags" in new pipe_buffer (Jan Stancek) [2060875] {CVE-2022-0847} - fget: clarify and improve __fget_files() implementation (Patrick Talbert) [2032303] - fget: check that the fd still exists after getting a ref to it (Patrick Talbert) [2032303] {CVE-2021-4083} - drm/ast: Create threshold values for AST2600 (Jocelyn Falempe) [2053358] - cgroup-v1: Correct privileges check in release_agent writes (Waiman Long) [2052167] - cgroup-v1: Require capabilities to set release_agent (Waiman Long) [2052167] {CVE-2022-0492} - spec: Fix separate tools build (Yauheni Kaliuta) [2056301] - net/mlx5: DR, Add support for update FTE (Amir Tzin) [2047231] - net/mlx5: DR, Improve rule tracking memory consumption (Amir Tzin) [2047231] - net/mlx5: DR, Remove rehash ctrl struct from dr_htbl (Amir Tzin) [2047231] - net/mlx5: DR, Remove HW specific STE type from nic domain (Amir Tzin) [2047231] - net/mlx5: DR, Merge DR_STE_SIZE enums (Amir Tzin) [2047231] - net/mlx5: DR, Skip source port matching on FDB RX domain (Amir Tzin) [2047231] - net/mlx5: DR, Add ignore_flow_level support for multi-dest flow tables (Amir Tzin) [2047231] - net/mlx5: DR, replace uintN_t with kernel-style types (Amir Tzin) [2047231] - net/mlx5: DR, Support IPv6 matching on flow label for STEv0 (Amir Tzin) [2047231] - net/mlx5: DR, Reduce print level for FT chaining level check (Amir Tzin) [2047231] - net/mlx5: DR, Warn and ignore SW steering rule insertion on QP err (Amir Tzin) [2047231] - net/mlx5: DR, Improve error flow in actions_build_ste_arr (Amir Tzin) [2047231] - net/mlx5: DR, Enable QP retransmission (Amir Tzin) [2047231] - net/mlx5: DR, Enable VLAN pop on TX and VLAN push on RX (Amir Tzin) [2047231] - net/mlx5: DR, Split modify VLAN state to separate pop/push states (Amir Tzin) [2047231] - net/mlx5: DR, Added support for REMOVE_HEADER packet reformat (Amir Tzin) [2047231] - net/mlx4_en: Resolve bad operstate value (Amir Tzin) [1982190] - net/mlx4_en: Fix an use-after-free bug in mlx4_en_try_alloc_resources() (Amir Tzin) [1982190] - RDMA/mlx4: Do not fail the registration on port stats (Amir Tzin) [1982190] - RDMA/mlx4: Return missed an error if device doesn't support steering (Amir Tzin) [1982190] - net/mlx4_en: Don't allow aRFS for encapsulated packets (Amir Tzin) [1982190] - mlx4: Fix missing error code in mlx4_load_one() (Amir Tzin) [1982190] - net/mlx4: Fix fall-through warning for Clang (Amir Tzin) [1982190] - mlx4: Remove rcu_read_lock() around XDP program invocation (Amir Tzin) [1982190] - IB/mlx4: Avoid field-overflowing memcpy() (Amir Tzin) [1982190] - RDMA/mlx4: Do not map the core_clock page to user space unless enabled (Amir Tzin) [1982190] - net/mlx4: Treat VFs fair when handling comm_channel_events (Amir Tzin) [1982190] - RDMA/mlx4: Remove an unused variable (Amir Tzin) [1982190] - megaraid_sas: Add new messaging - a fix (Tomas Henzl) [2055248] - HID: amd_sfh: Add interrupt handler to process interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add functionality to clear interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Disable the interrupt for all command (Benjamin Tissoires) [2054929] - HID: amd_sfh: Correct the structure field name (Benjamin Tissoires) [2054929] - HID: amd_sfh: Handle amd_sfh work buffer in PM ops (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add illuminance mask to limit ALS max value (Benjamin Tissoires) [2054929] - HID: amd_sfh: Increase sensor command timeout (Benjamin Tissoires) [2054929] - HID: amd_sfh: Update Copyright details (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dev_' API (Benjamin Tissoires) [2054929] - HID: amd_sfh: Use dma_set_mask_and_coherent() (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dma_' API (Benjamin Tissoires) [2054929] - dm stats: fix too short end duration_ns when using precise_timestamps (Benjamin Marzinski) [2057166] - dm: fix double accounting of flush with data (Benjamin Marzinski) [2057166] - dm: interlock pending dm_io and dm_wait_for_bios_completion (Benjamin Marzinski) [2057166] - x86/MCE/AMD, EDAC/mce_amd: Support non-uniform MCA bank type enumeration (Aristeu Rozanski) [2050410 2048786 2050412] - x86/MCE/AMD, EDAC/mce_amd: Add new SMCA bank types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC: Add RDDR5 and LRDDR5 memory types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Handle three rank interleaving mode (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Set proper family type for Family 19h Models 20h-2Fh (Aristeu Rozanski) [2050410 2048786 2050412] - netfilter: nf_queue: handle socket prefetch (Florian Westphal) [2009786] - netfilter: nf_queue: fix possible use-after-free (Florian Westphal) [2009786] - selftests: netfilter: add nfqueue TCP_NEW_SYN_RECV socket race test (Florian Westphal) [2009786] - netfilter: nf_queue: don't assume sk is full socket (Florian Westphal) [2009786] - Enable HSA_AMD_SVM config (Donald Dutile) [2025123] - mm/memremap_pages: support multiple ranges per invocation (Donald Dutile) [2025123] - mm/memremap_pages: convert to 'struct range' (Donald Dutile) [2025123] - device-dax: add an allocation interface for device-dax instances (Donald Dutile) [2025123] - device-dax: make pgmap optional for instance creation (Donald Dutile) [2025123] - device-dax: move instance creation parameters to 'struct dev_dax_data' (Donald Dutile) [2025123] - device-dax: drop the dax_region.pfn_flags attribute (Donald Dutile) [2025123] - memremap: rename MEMORY_DEVICE_DEVDAX to MEMORY_DEVICE_GENERIC (Donald Dutile) [2025123] - PCI/P2PDMA: Introduce private pagemap structure (Donald Dutile) [2025123] - security: implement sctp_assoc_established hook in selinux (Ondrej Mosnacek) [2015525 2048251] - security: add sctp_assoc_established hook (Ondrej Mosnacek) [2015525 2048251] - security: call security_sctp_assoc_request in sctp_sf_do_5_1D_ce (Ondrej Mosnacek) [2015525 2048251] - security: pass asoc to sctp_assoc_request and sctp_sk_clone (Ondrej Mosnacek) [2015525 2048251] - net: sctp: Fix some typos (Ondrej Mosnacek) [2015525 2048251] - iwlwifi: mvm: read 6E enablement flags from DSM and pass to FW (Íñigo Huguet) [1923170 1936001] - net/mlx5: Lag, Make mlx5_lag_is_multipath() be static inline (Amir Tzin) [1982193] - net/mlx5e: nullify cq->dbg pointer in mlx5_debug_cq_remove() (Amir Tzin) [1982193] - net/mlx5: DR, Ignore modify TTL if device doesn't support it (Amir Tzin) [1982193 2028504] - net/mlx5: Warn for devlink reload when there are VFs alive (Amir Tzin) [1982193] - net/mlx5: DR, Fix lower case macro prefix "mlx5_" to "MLX5_" (Amir Tzin) [1982193] - net/mlx5e: Fix wrong features assignment in case of error (Amir Tzin) [1982193] - net/mlx5e: Fix ICOSQ recovery flow for XSK (Amir Tzin) [1982193] - net/mlx5e: Fix interoperability between XSK and ICOSQ recovery flow (Amir Tzin) [1982193] - net/mlx5e: Wrap the tx reporter dump callback to extract the sq (Amir Tzin) [1982193] - net/mlx5: Fix tc max supported prio for nic mode (Amir Tzin) [1982193] - net/mlx5: Fix SF health recovery flow (Amir Tzin) [1982193] - net/mlx5: Fix error print in case of IRQ request failed (Amir Tzin) [1982193] - net/mlx5: DR, Fix NULL vs IS_ERR checking in dr_domain_init_resources (Amir Tzin) [1982193] - mlx5: fix mlx5i_grp_sw_update_stats() stack usage (Amir Tzin) [1982193] - mlx5: fix psample_sample_packet link error (Amir Tzin) [1982193] - net/mlx5: Fix format-security build warnings (Amir Tzin) [1982193] - net/mlx5e: Fix missing IPsec statistics on uplink representor (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix Software parser inner l3 type setting in case of encapsulation (Amir Tzin) [1982193] - net/mlx5: E-Switch, return error if encap isn't supported (Amir Tzin) [1982193] - net/mlx5: Lag, update tracker when state change event received (Amir Tzin) [1982193] - net/mlx5e: CT, Fix multiple allocations and memleak of mod acts (Amir Tzin) [1982193 2017675] - net/mlx5: Update error handler for UCTX and UMEM (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix resetting of encap mode when entering switchdev (Amir Tzin) [1982193] - net/mlx5e: Wait for concurrent flow deletion during neigh/fib events (Amir Tzin) [1982193] - net/mlx5e: kTLS, Fix crash in RX resync flow (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix work queue entry ethernet segment checksum flags (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix a misuse of the software parser's fields (Amir Tzin) [1982193] - net/mlx5e: Fix vlan data lost during suspend flow (Amir Tzin) [1982193] - net/mlx5: Lag, change multipath and bonding to be mutually exclusive (Amir Tzin) [1982193] - net/mlx5: Lag, move lag destruction to a workqueue (Amir Tzin) [1982193] - RDMA/mlx5: Initialize the ODP xarray when creating an ODP MR (Amir Tzin) [1982193] - net/mlx5e: Mutually exclude RX-FCS and RX-port-timestamp (Amir Tzin) [1982193] - net/mlx5e: Switchdev representors are not vlan challenged (Amir Tzin) [1982193] - net/mlx5e: Fix memory leak in mlx5_core_destroy_cq() error path (Amir Tzin) [1982193] - net/mlx5: Fix cleanup of bridge delayed work (Amir Tzin) [1982193] - RDMA/mlx5: Set user priority for DCT (Amir Tzin) [1982193] - net/mlx5: DR, Fix typo 'offeset' to 'offset' (Amir Tzin) [1982193] - net/mlx5: DR, Fix vport number data type to u16 (Amir Tzin) [1982193] - net/mlx5e: Fix the presented RQ index in PTP stats (Amir Tzin) [1982193] - net/mlx5: Fix setting number of EQs of SFs (Amir Tzin) [1982193] - net/mlx5: Fix length of irq_index in chars (Amir Tzin) [1982193] - net/mlx5: Avoid generating event after PPS out in Real time mode (Amir Tzin) [1982193] - net/mlx5: Force round second at 1PPS out start time (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix double allocation of acl flow counter (Amir Tzin) [1982193] - net/mlx5e: Keep the value for maximum number of channels in-sync (Amir Tzin) [1982193] - net/mlx5e: IPSEC RX, enable checksum complete (Amir Tzin) [1982193] - net/mlx5: DR, Fix code indentation in dr_ste_v1 (Amir Tzin) [1982193] - RDMA/mlx5: Fix xlt_chunk_align calculation (Amir Tzin) [1982193] - RDMA/mlx5: Fix number of allocated XLT entries (Amir Tzin) [1982193] - net/mlx5e: Fix mutual exclusion between CQE compression and HW TS (Amir Tzin) [1982193] - net/mlx5: Fix potential sleeping in atomic context (Amir Tzin) [1982193] - net/mlx5: FWTrace, cancel work on alloc pd error flow (Amir Tzin) [1982193] - net/mlx5: DR, fix a potential use-after-free bug (Amir Tzin) [1982193] - net/mlx5e: Use correct eswitch for stack devices with lag (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set vhca id valid flag when creating indir fwd group (Amir Tzin) [1982193] - net/mlx5: Remove all auxiliary devices at the unregister event (Amir Tzin) [1982193] - net/mlx5: Lag, fix multipath lag activation (Amir Tzin) [1982193] - net/mlx5: Fix variable type to match 64bit (Amir Tzin) [1982193] - net/mlx5: Fix typo in comments (Amir Tzin) [1982193] - net/mlx5e: Remove Duplicated hunk in function __parse_cls_flower() (Amir Tzin) [1982193] - net/mlx5: Fix unpublish devlink parameters (Amir Tzin) [1982193] - RDMA/mlx5: Delete not-available udata check (Amir Tzin) [1982193] - net/mlx5: Fix missing return value in mlx5_devlink_eswitch_inline_mode_set() (Amir Tzin) [1982193] - net/mlx5e: Block LRO if firmware asks for tunneled LRO (Amir Tzin) [1982193] - net/mlx5e: Prohibit inner indir TIRs in IPoIB (Amir Tzin) [1982193] - net: switchdev: zero-initialize struct switchdev_notifier_fdb_info emitted by drivers towards the bridge (Amir Tzin) [1982193] - net/mlx5: Fix return value from tracer initialization (Amir Tzin) [1982193] - net/mlx5: Synchronize correct IRQ when destroying CQ (Amir Tzin) [1982193 1982219] - net/mlx5e: TC, Fix error handling memory leak (Amir Tzin) [1982193] - net/mlx5: Destroy pool->mutex (Amir Tzin) [1982193] - net/mlx5: Set all field of mlx5_irq before inserting it to the xarray (Amir Tzin) [1982193] - net/mlx5: Fix order of functions in mlx5_irq_detach_nb() (Amir Tzin) [1982193] - net/mlx5: Block switchdev mode while devlink traps are active (Amir Tzin) [1982193] - net/mlx5e: Destroy page pool after XDP SQ to fix use-after-free (Amir Tzin) [1982193] - net/mlx5: Bridge, fix ageing time (Amir Tzin) [1982193] - net/mlx5e: Avoid creating tunnel headers for local route (Amir Tzin) [1982193] - net/mlx5: DR, Add fail on error check on decap (Amir Tzin) [1982193] - net/mlx5: Don't skip subfunction cleanup in case of error in module init (Amir Tzin) [1982193] - RDMA/mlx5: Delay emptying a cache entry when a new MR is added to it recently (Amir Tzin) [1982193] - net/mlx5: Fix mlx5_vport_tbl_attr chain from u16 to u32 (Amir Tzin) [1982193] - net/mlx5e: Fix nullptr in mlx5e_hairpin_get_mdev() (Amir Tzin) [1982193] - net/mlx5: Unload device upon firmware fatal error (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for ptp-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for trap-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Consider PTP-RQ when setting RX VLAN stripping (Amir Tzin) [1982193] - net/mlx5e: Add NETIF_F_HW_TC to hw_features when HTB offload is available (Amir Tzin) [1982193] - net/mlx5e: RX, Avoid possible data corruption when relaxed ordering and LRO combined (Amir Tzin) [1982193] - net/mlx5: E-Switch, handle devcom events only for ports on the same device (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set destination vport vhca id only when merged eswitch is supported (Amir Tzin) [1982193] - net/mlx5e: Disable Rx ntuple offload for uplink representor (Amir Tzin) [1982193] - net/mlx5e: kTLS, Add stats for number of deleted kTLS TX offloaded connections (Amir Tzin) [1982193] - net/mlx5: SF, Improve performance in SF allocation (Amir Tzin) [1982193] - net/mlx5: Increase hairpin buffer size (Amir Tzin) [1982193] - net/mlx5: DR, Add support for flow sampler offload (Amir Tzin) [1982193] - net/mlx5: Compare sampler flow destination ID in fs_core (Amir Tzin) [1982193] - net/mlx5: remove "default n" from Kconfig (Amir Tzin) [1982193] - net/mlx5: Fix spelling mistake "enught" -> "enough" (Amir Tzin) [1982193] - net/mlx5: Use cpumask_available() in mlx5_eq_create_generic() (Amir Tzin) [1982193] - net/mlx5: Fix missing error code in mlx5_init_fs() (Amir Tzin) [1982193] - RDMA/mlx5: Support real-time timestamp directly from the device (Amir Tzin) [1982193] - RDMA/mlx5: Refactor get_ts_format functions to simplify code (Amir Tzin) [1982193] - RDMA/mlx5: Enable Relaxed Ordering by default for kernel ULPs (Amir Tzin) [1982193] - net/mlx5: Round-Robin EQs over IRQs (Amir Tzin) [1982193] - net/mlx5: Separate between public and private API of sf.h (Amir Tzin) [1982193] - net/mlx5: Enlarge interrupt field in CREATE_EQ (Amir Tzin) [1982193] - net/mlx5: Allocating a pool of MSI-X vectors for SFs (Amir Tzin) [1982193] - net/mlx5: Change IRQ storage logic from static to dynamic (Amir Tzin) [1982193] - net/mlx5: Moving rmap logic to EQs (Amir Tzin) [1982193] - net/mlx5: Extend mlx5_irq_request to request IRQ from the kernel (Amir Tzin) [1982193] - net/mlx5: Removing rmap per IRQ (Amir Tzin) [1982193] - net/mlx5: Clean license text in eq.[c|h] files (Amir Tzin) [1982193] - net/mlx5: Provide cpumask at EQ creation phase (Amir Tzin) [1982193] - net/mlx5: Introduce API for request and release IRQs (Amir Tzin) [1982193] - net/mlx5: Delay IRQ destruction till all users are gone (Amir Tzin) [1982193] - net/mlx5: Change ownership model for lag (Amir Tzin) [1982193] - net/mlx5: Lag, Don't rescan if the device is going down (Amir Tzin) [1982193] - net/mlx5: Lag, refactor disable flow (Amir Tzin) [1982193] - net/mlx5: Bridge, add tracepoints (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, filter tagged packets that didn't match tagged fg (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, support pvid and untagged vlan configurations (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, match FDB entry vlan tag (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, implement infrastructure for vlans (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, dynamic entry ageing (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, handle FDB events (Amir Tzin) [1982193 1982234] - docs: networking: Add missing mlx5 documentation (Amir Tzin) [1982193] - net/mlx5: Bridge, add offload infrastructure (Amir Tzin) [1982193 1982234] - net/mlx5e: Refactor mlx5e_eswitch_{*}rep() helpers (Amir Tzin) [1982193 1982234] - net/mlx5: Create TC-miss priority and table (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Support EMD tag in modify header for STEv1 (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Added support for INSERT_HEADER reformat type (Amir Tzin) [1982193 1982234] - net/mlx5: Added new parameters to reformat context (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Allow encap action for RX for supporting devices (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Split reformat state to Encap and Decap (Amir Tzin) [1982193 1982234] - net/mlx5: mlx5_ifc support for header insert/remove (Amir Tzin) [1982193 1982234] - net/mlx5e: Remove unreachable code in mlx5e_xmit() (Amir Tzin) [1982193] - net/mlx5e: RX, Re-place page pool numa node change logic (Amir Tzin) [1982193] - net/mlx5e: Zero-init DIM structures (Amir Tzin) [1982193] - net/mlx5e: IPoIB, Add support for NDR speed (Amir Tzin) [1982193] - net/mlx5e: Remove the repeated declaration (Amir Tzin) [1982193] - net/mlx5: check for allocation failure in mlx5_ft_pool_init() (Amir Tzin) [1982193] - mlx5: count all link events (Amir Tzin) [1982193] - net/mlx5: Expose FW version over defined keyword (Amir Tzin) [1982193] - net/mlx5: Use boolean arithmetic to evaluate roce_lag (Amir Tzin) [1982193] - net/mlx5: Remove unnecessary spin lock protection (Amir Tzin) [1982193] - net/mlx5: Cap the maximum flow group size to 16M entries (Amir Tzin) [1982193] - net/mlx5: DR, Set max table size to 2G entries (Amir Tzin) [1982193] - net/mlx5: Move chains ft pool to be used by all firmware steering (Amir Tzin) [1982193] - net/mlx5: Move table size calculation to steering cmd layer (Amir Tzin) [1982193] - net/mlx5: Add case for FS_FT_NIC_TX FT in MLX5_CAP_FLOWTABLE_TYPE (Amir Tzin) [1982193] - net/mlx5: DR, Remove unused field of send_ring struct (Amir Tzin) [1982193] - net/mlx5e: RX, Remove unnecessary check in RX CQE compression handling (Amir Tzin) [1982193] - net/mlx5: CT: Avoid reusing modify header context for natted entries (Amir Tzin) [1982193] - net/mlx5e: CT, Remove newline from ct_dbg call (Amir Tzin) [1982193] - RDMA/mlx5: Take qp type from mlx5_ib_qp (Amir Tzin) [1982193] - RDMA/mlx5: Add SQD2RTS bit to the alloc ucontext response (Amir Tzin) [1982193] - RDMA/mlx5: Support SQD2RTS for modify QP (Amir Tzin) [1982193] - RDMA/mlx5: Remove redundant assignment to ret (Amir Tzin) [1982193] - firewire: fix support status (Tomas Henzl) [2055319] - dlci: fix support status (Tomas Henzl) [2055319] - dlink: fix support status (Tomas Henzl) [2055319] - rxe: fix support status (Tomas Henzl) [2055319] - qic: fix support status (Tomas Henzl) [2055319] - Revert "ceph: enable async dirops by default" (Jeffrey Layton) [2052542] - libceph: optionally use bounce buffer on recv path in crc mode (Jeffrey Layton) [2024725] - libceph: make recv path in secure mode work the same as send path (Jeffrey Layton) [2024725] - mm: use kmap_local_page in memzero_page (Jeffrey Layton) [2024725] - mm: call flush_dcache_page() in memcpy_to_page() and memzero_page() (Jeffrey Layton) [2024725] - iov_iter: lift memzero_page() to highmem.h (Jeffrey Layton) [2024725] - mm/highmem: Convert memcpy_[to|from]_page() to kmap_local_page() (Jeffrey Layton) [2024725] - mm/highmem: Lift memcpy_[to|from]_page to core (Jeffrey Layton) [2024725] - ceph: set pool_ns in new inode layout for async creates (Jeffrey Layton) [2046021] - ceph: properly put ceph_string reference after async create attempt (Jeffrey Layton) [2046021] - ceph: put the requests/sessions when it fails to alloc memory (Jeffrey Layton) [2046021] - ceph: remove redundant Lsx caps check (Jeffrey Layton) [2046021] - ceph: don't check for quotas on MDS stray dirs (Jeffrey Layton) [2046021] - ceph: drop send metrics debug message (Jeffrey Layton) [2046021] - ceph: Fix incorrect statfs report for small quota (Jeffrey Layton) [2011104] - scsi: qla2xxx: stop timer in shutdown path (Nilesh Javali) [2056055] - Revert "PCI: Add support for dev_groups to struct pci_driver" (Michel Dänzer) [2054595] - drm/amdgpu: Assign amdgpu_sysfs_groups to struct device_driver directly (Michel Dänzer) [2054595] - EDAC/i10nm: Retrieve and print retry_rd_err_log registers (Aristeu Rozanski) [1998359] - redhat: enable zstream release numbering for rhel 8.6 (Augusto Caringi) - redhat: generate distgit changelog in genspec.sh as well (Jan Stancek) - redhat: always upload kabi tarballs (Jan Stancek) - redhat: make genspec prefer metadata from git notes (Jan Stancek) - internal: update RHEL_MINOR for the start of RHEL-8.7 development (Jarod Wilson)- ice: fix getting UDP tunnel entry (Jonathan Toppins) [2015409] - ice: convert to new udp_tunnel infrastructure (Jonathan Toppins) [2015409] - selftests: kvm: Check whether SIDA memop fails for normal guests (Thomas Huth) [2050807] - KVM: s390: Return error on SIDA memop on normal guest (Thomas Huth) [2050807] {CVE-2022-0516} - lib/iov_iter: initialize "flags" in new pipe_buffer (Jan Stancek) [2060875] {CVE-2022-0847} - fget: clarify and improve __fget_files() implementation (Patrick Talbert) [2032303] - fget: check that the fd still exists after getting a ref to it (Patrick Talbert) [2032303] {CVE-2021-4083} - drm/ast: Create threshold values for AST2600 (Jocelyn Falempe) [2053358] - cgroup-v1: Correct privileges check in release_agent writes (Waiman Long) [2052167] - cgroup-v1: Require capabilities to set release_agent (Waiman Long) [2052167] {CVE-2022-0492} - spec: Fix separate tools build (Yauheni Kaliuta) [2056301] - net/mlx5: DR, Add support for update FTE (Amir Tzin) [2047231] - net/mlx5: DR, Improve rule tracking memory consumption (Amir Tzin) [2047231] - net/mlx5: DR, Remove rehash ctrl struct from dr_htbl (Amir Tzin) [2047231] - net/mlx5: DR, Remove HW specific STE type from nic domain (Amir Tzin) [2047231] - net/mlx5: DR, Merge DR_STE_SIZE enums (Amir Tzin) [2047231] - net/mlx5: DR, Skip source port matching on FDB RX domain (Amir Tzin) [2047231] - net/mlx5: DR, Add ignore_flow_level support for multi-dest flow tables (Amir Tzin) [2047231] - net/mlx5: DR, replace uintN_t with kernel-style types (Amir Tzin) [2047231] - net/mlx5: DR, Support IPv6 matching on flow label for STEv0 (Amir Tzin) [2047231] - net/mlx5: DR, Reduce print level for FT chaining level check (Amir Tzin) [2047231] - net/mlx5: DR, Warn and ignore SW steering rule insertion on QP err (Amir Tzin) [2047231] - net/mlx5: DR, Improve error flow in actions_build_ste_arr (Amir Tzin) [2047231] - net/mlx5: DR, Enable QP retransmission (Amir Tzin) [2047231] - net/mlx5: DR, Enable VLAN pop on TX and VLAN push on RX (Amir Tzin) [2047231] - net/mlx5: DR, Split modify VLAN state to separate pop/push states (Amir Tzin) [2047231] - net/mlx5: DR, Added support for REMOVE_HEADER packet reformat (Amir Tzin) [2047231] - net/mlx4_en: Resolve bad operstate value (Amir Tzin) [1982190] - net/mlx4_en: Fix an use-after-free bug in mlx4_en_try_alloc_resources() (Amir Tzin) [1982190] - RDMA/mlx4: Do not fail the registration on port stats (Amir Tzin) [1982190] - RDMA/mlx4: Return missed an error if device doesn't support steering (Amir Tzin) [1982190] - net/mlx4_en: Don't allow aRFS for encapsulated packets (Amir Tzin) [1982190] - mlx4: Fix missing error code in mlx4_load_one() (Amir Tzin) [1982190] - net/mlx4: Fix fall-through warning for Clang (Amir Tzin) [1982190] - mlx4: Remove rcu_read_lock() around XDP program invocation (Amir Tzin) [1982190] - IB/mlx4: Avoid field-overflowing memcpy() (Amir Tzin) [1982190] - RDMA/mlx4: Do not map the core_clock page to user space unless enabled (Amir Tzin) [1982190] - net/mlx4: Treat VFs fair when handling comm_channel_events (Amir Tzin) [1982190] - RDMA/mlx4: Remove an unused variable (Amir Tzin) [1982190]- megaraid_sas: Add new messaging - a fix (Tomas Henzl) [2055248] - HID: amd_sfh: Add interrupt handler to process interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add functionality to clear interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Disable the interrupt for all command (Benjamin Tissoires) [2054929] - HID: amd_sfh: Correct the structure field name (Benjamin Tissoires) [2054929] - HID: amd_sfh: Handle amd_sfh work buffer in PM ops (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add illuminance mask to limit ALS max value (Benjamin Tissoires) [2054929] - HID: amd_sfh: Increase sensor command timeout (Benjamin Tissoires) [2054929] - HID: amd_sfh: Update Copyright details (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dev_' API (Benjamin Tissoires) [2054929] - HID: amd_sfh: Use dma_set_mask_and_coherent() (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dma_' API (Benjamin Tissoires) [2054929] - dm stats: fix too short end duration_ns when using precise_timestamps (Benjamin Marzinski) [2057166] - dm: fix double accounting of flush with data (Benjamin Marzinski) [2057166] - dm: interlock pending dm_io and dm_wait_for_bios_completion (Benjamin Marzinski) [2057166] - x86/MCE/AMD, EDAC/mce_amd: Support non-uniform MCA bank type enumeration (Aristeu Rozanski) [2050410 2048786 2050412] - x86/MCE/AMD, EDAC/mce_amd: Add new SMCA bank types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC: Add RDDR5 and LRDDR5 memory types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Handle three rank interleaving mode (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Set proper family type for Family 19h Models 20h-2Fh (Aristeu Rozanski) [2050410 2048786 2050412] - netfilter: nf_queue: handle socket prefetch (Florian Westphal) [2009786] - netfilter: nf_queue: fix possible use-after-free (Florian Westphal) [2009786] - selftests: netfilter: add nfqueue TCP_NEW_SYN_RECV socket race test (Florian Westphal) [2009786] - netfilter: nf_queue: don't assume sk is full socket (Florian Westphal) [2009786] - Enable HSA_AMD_SVM config (Donald Dutile) [2025123] - mm/memremap_pages: support multiple ranges per invocation (Donald Dutile) [2025123] - mm/memremap_pages: convert to 'struct range' (Donald Dutile) [2025123] - device-dax: add an allocation interface for device-dax instances (Donald Dutile) [2025123] - device-dax: make pgmap optional for instance creation (Donald Dutile) [2025123] - device-dax: move instance creation parameters to 'struct dev_dax_data' (Donald Dutile) [2025123] - device-dax: drop the dax_region.pfn_flags attribute (Donald Dutile) [2025123] - memremap: rename MEMORY_DEVICE_DEVDAX to MEMORY_DEVICE_GENERIC (Donald Dutile) [2025123] - PCI/P2PDMA: Introduce private pagemap structure (Donald Dutile) [2025123] - security: implement sctp_assoc_established hook in selinux (Ondrej Mosnacek) [2015525 2048251] - security: add sctp_assoc_established hook (Ondrej Mosnacek) [2015525 2048251] - security: call security_sctp_assoc_request in sctp_sf_do_5_1D_ce (Ondrej Mosnacek) [2015525 2048251] - security: pass asoc to sctp_assoc_request and sctp_sk_clone (Ondrej Mosnacek) [2015525 2048251] - net: sctp: Fix some typos (Ondrej Mosnacek) [2015525 2048251] - iwlwifi: mvm: read 6E enablement flags from DSM and pass to FW (Íñigo Huguet) [1923170 1936001] - net/mlx5: Lag, Make mlx5_lag_is_multipath() be static inline (Amir Tzin) [1982193] - net/mlx5e: nullify cq->dbg pointer in mlx5_debug_cq_remove() (Amir Tzin) [1982193] - net/mlx5: DR, Ignore modify TTL if device doesn't support it (Amir Tzin) [1982193 2028504] - net/mlx5: Warn for devlink reload when there are VFs alive (Amir Tzin) [1982193] - net/mlx5: DR, Fix lower case macro prefix "mlx5_" to "MLX5_" (Amir Tzin) [1982193] - net/mlx5e: Fix wrong features assignment in case of error (Amir Tzin) [1982193] - net/mlx5e: Fix ICOSQ recovery flow for XSK (Amir Tzin) [1982193] - net/mlx5e: Fix interoperability between XSK and ICOSQ recovery flow (Amir Tzin) [1982193] - net/mlx5e: Wrap the tx reporter dump callback to extract the sq (Amir Tzin) [1982193] - net/mlx5: Fix tc max supported prio for nic mode (Amir Tzin) [1982193] - net/mlx5: Fix SF health recovery flow (Amir Tzin) [1982193] - net/mlx5: Fix error print in case of IRQ request failed (Amir Tzin) [1982193] - net/mlx5: DR, Fix NULL vs IS_ERR checking in dr_domain_init_resources (Amir Tzin) [1982193] - mlx5: fix mlx5i_grp_sw_update_stats() stack usage (Amir Tzin) [1982193] - mlx5: fix psample_sample_packet link error (Amir Tzin) [1982193] - net/mlx5: Fix format-security build warnings (Amir Tzin) [1982193] - net/mlx5e: Fix missing IPsec statistics on uplink representor (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix Software parser inner l3 type setting in case of encapsulation (Amir Tzin) [1982193] - net/mlx5: E-Switch, return error if encap isn't supported (Amir Tzin) [1982193] - net/mlx5: Lag, update tracker when state change event received (Amir Tzin) [1982193] - net/mlx5e: CT, Fix multiple allocations and memleak of mod acts (Amir Tzin) [1982193 2017675] - net/mlx5: Update error handler for UCTX and UMEM (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix resetting of encap mode when entering switchdev (Amir Tzin) [1982193] - net/mlx5e: Wait for concurrent flow deletion during neigh/fib events (Amir Tzin) [1982193] - net/mlx5e: kTLS, Fix crash in RX resync flow (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix work queue entry ethernet segment checksum flags (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix a misuse of the software parser's fields (Amir Tzin) [1982193] - net/mlx5e: Fix vlan data lost during suspend flow (Amir Tzin) [1982193] - net/mlx5: Lag, change multipath and bonding to be mutually exclusive (Amir Tzin) [1982193] - net/mlx5: Lag, move lag destruction to a workqueue (Amir Tzin) [1982193] - RDMA/mlx5: Initialize the ODP xarray when creating an ODP MR (Amir Tzin) [1982193] - net/mlx5e: Mutually exclude RX-FCS and RX-port-timestamp (Amir Tzin) [1982193] - net/mlx5e: Switchdev representors are not vlan challenged (Amir Tzin) [1982193] - net/mlx5e: Fix memory leak in mlx5_core_destroy_cq() error path (Amir Tzin) [1982193] - net/mlx5: Fix cleanup of bridge delayed work (Amir Tzin) [1982193] - RDMA/mlx5: Set user priority for DCT (Amir Tzin) [1982193] - net/mlx5: DR, Fix typo 'offeset' to 'offset' (Amir Tzin) [1982193] - net/mlx5: DR, Fix vport number data type to u16 (Amir Tzin) [1982193] - net/mlx5e: Fix the presented RQ index in PTP stats (Amir Tzin) [1982193] - net/mlx5: Fix setting number of EQs of SFs (Amir Tzin) [1982193] - net/mlx5: Fix length of irq_index in chars (Amir Tzin) [1982193] - net/mlx5: Avoid generating event after PPS out in Real time mode (Amir Tzin) [1982193] - net/mlx5: Force round second at 1PPS out start time (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix double allocation of acl flow counter (Amir Tzin) [1982193] - net/mlx5e: Keep the value for maximum number of channels in-sync (Amir Tzin) [1982193] - net/mlx5e: IPSEC RX, enable checksum complete (Amir Tzin) [1982193] - net/mlx5: DR, Fix code indentation in dr_ste_v1 (Amir Tzin) [1982193] - RDMA/mlx5: Fix xlt_chunk_align calculation (Amir Tzin) [1982193] - RDMA/mlx5: Fix number of allocated XLT entries (Amir Tzin) [1982193] - net/mlx5e: Fix mutual exclusion between CQE compression and HW TS (Amir Tzin) [1982193] - net/mlx5: Fix potential sleeping in atomic context (Amir Tzin) [1982193] - net/mlx5: FWTrace, cancel work on alloc pd error flow (Amir Tzin) [1982193] - net/mlx5: DR, fix a potential use-after-free bug (Amir Tzin) [1982193] - net/mlx5e: Use correct eswitch for stack devices with lag (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set vhca id valid flag when creating indir fwd group (Amir Tzin) [1982193] - net/mlx5: Remove all auxiliary devices at the unregister event (Amir Tzin) [1982193] - net/mlx5: Lag, fix multipath lag activation (Amir Tzin) [1982193] - net/mlx5: Fix variable type to match 64bit (Amir Tzin) [1982193] - net/mlx5: Fix typo in comments (Amir Tzin) [1982193] - net/mlx5e: Remove Duplicated hunk in function __parse_cls_flower() (Amir Tzin) [1982193] - net/mlx5: Fix unpublish devlink parameters (Amir Tzin) [1982193] - RDMA/mlx5: Delete not-available udata check (Amir Tzin) [1982193] - net/mlx5: Fix missing return value in mlx5_devlink_eswitch_inline_mode_set() (Amir Tzin) [1982193] - net/mlx5e: Block LRO if firmware asks for tunneled LRO (Amir Tzin) [1982193] - net/mlx5e: Prohibit inner indir TIRs in IPoIB (Amir Tzin) [1982193] - net: switchdev: zero-initialize struct switchdev_notifier_fdb_info emitted by drivers towards the bridge (Amir Tzin) [1982193] - net/mlx5: Fix return value from tracer initialization (Amir Tzin) [1982193] - net/mlx5: Synchronize correct IRQ when destroying CQ (Amir Tzin) [1982193 1982219] - net/mlx5e: TC, Fix error handling memory leak (Amir Tzin) [1982193] - net/mlx5: Destroy pool->mutex (Amir Tzin) [1982193] - net/mlx5: Set all field of mlx5_irq before inserting it to the xarray (Amir Tzin) [1982193] - net/mlx5: Fix order of functions in mlx5_irq_detach_nb() (Amir Tzin) [1982193] - net/mlx5: Block switchdev mode while devlink traps are active (Amir Tzin) [1982193] - net/mlx5e: Destroy page pool after XDP SQ to fix use-after-free (Amir Tzin) [1982193] - net/mlx5: Bridge, fix ageing time (Amir Tzin) [1982193] - net/mlx5e: Avoid creating tunnel headers for local route (Amir Tzin) [1982193] - net/mlx5: DR, Add fail on error check on decap (Amir Tzin) [1982193] - net/mlx5: Don't skip subfunction cleanup in case of error in module init (Amir Tzin) [1982193] - RDMA/mlx5: Delay emptying a cache entry when a new MR is added to it recently (Amir Tzin) [1982193] - net/mlx5: Fix mlx5_vport_tbl_attr chain from u16 to u32 (Amir Tzin) [1982193] - net/mlx5e: Fix nullptr in mlx5e_hairpin_get_mdev() (Amir Tzin) [1982193] - net/mlx5: Unload device upon firmware fatal error (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for ptp-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for trap-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Consider PTP-RQ when setting RX VLAN stripping (Amir Tzin) [1982193] - net/mlx5e: Add NETIF_F_HW_TC to hw_features when HTB offload is available (Amir Tzin) [1982193] - net/mlx5e: RX, Avoid possible data corruption when relaxed ordering and LRO combined (Amir Tzin) [1982193] - net/mlx5: E-Switch, handle devcom events only for ports on the same device (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set destination vport vhca id only when merged eswitch is supported (Amir Tzin) [1982193] - net/mlx5e: Disable Rx ntuple offload for uplink representor (Amir Tzin) [1982193] - net/mlx5e: kTLS, Add stats for number of deleted kTLS TX offloaded connections (Amir Tzin) [1982193] - net/mlx5: SF, Improve performance in SF allocation (Amir Tzin) [1982193] - net/mlx5: Increase hairpin buffer size (Amir Tzin) [1982193] - net/mlx5: DR, Add support for flow sampler offload (Amir Tzin) [1982193] - net/mlx5: Compare sampler flow destination ID in fs_core (Amir Tzin) [1982193] - net/mlx5: remove "default n" from Kconfig (Amir Tzin) [1982193] - net/mlx5: Fix spelling mistake "enught" -> "enough" (Amir Tzin) [1982193] - net/mlx5: Use cpumask_available() in mlx5_eq_create_generic() (Amir Tzin) [1982193] - net/mlx5: Fix missing error code in mlx5_init_fs() (Amir Tzin) [1982193] - RDMA/mlx5: Support real-time timestamp directly from the device (Amir Tzin) [1982193] - RDMA/mlx5: Refactor get_ts_format functions to simplify code (Amir Tzin) [1982193] - RDMA/mlx5: Enable Relaxed Ordering by default for kernel ULPs (Amir Tzin) [1982193] - net/mlx5: Round-Robin EQs over IRQs (Amir Tzin) [1982193] - net/mlx5: Separate between public and private API of sf.h (Amir Tzin) [1982193] - net/mlx5: Enlarge interrupt field in CREATE_EQ (Amir Tzin) [1982193] - net/mlx5: Allocating a pool of MSI-X vectors for SFs (Amir Tzin) [1982193] - net/mlx5: Change IRQ storage logic from static to dynamic (Amir Tzin) [1982193] - net/mlx5: Moving rmap logic to EQs (Amir Tzin) [1982193] - net/mlx5: Extend mlx5_irq_request to request IRQ from the kernel (Amir Tzin) [1982193] - net/mlx5: Removing rmap per IRQ (Amir Tzin) [1982193] - net/mlx5: Clean license text in eq.[c|h] files (Amir Tzin) [1982193] - net/mlx5: Provide cpumask at EQ creation phase (Amir Tzin) [1982193] - net/mlx5: Introduce API for request and release IRQs (Amir Tzin) [1982193] - net/mlx5: Delay IRQ destruction till all users are gone (Amir Tzin) [1982193] - net/mlx5: Change ownership model for lag (Amir Tzin) [1982193] - net/mlx5: Lag, Don't rescan if the device is going down (Amir Tzin) [1982193] - net/mlx5: Lag, refactor disable flow (Amir Tzin) [1982193] - net/mlx5: Bridge, add tracepoints (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, filter tagged packets that didn't match tagged fg (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, support pvid and untagged vlan configurations (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, match FDB entry vlan tag (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, implement infrastructure for vlans (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, dynamic entry ageing (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, handle FDB events (Amir Tzin) [1982193 1982234] - docs: networking: Add missing mlx5 documentation (Amir Tzin) [1982193] - net/mlx5: Bridge, add offload infrastructure (Amir Tzin) [1982193 1982234] - net/mlx5e: Refactor mlx5e_eswitch_{*}rep() helpers (Amir Tzin) [1982193 1982234] - net/mlx5: Create TC-miss priority and table (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Support EMD tag in modify header for STEv1 (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Added support for INSERT_HEADER reformat type (Amir Tzin) [1982193 1982234] - net/mlx5: Added new parameters to reformat context (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Allow encap action for RX for supporting devices (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Split reformat state to Encap and Decap (Amir Tzin) [1982193 1982234] - net/mlx5: mlx5_ifc support for header insert/remove (Amir Tzin) [1982193 1982234] - net/mlx5e: Remove unreachable code in mlx5e_xmit() (Amir Tzin) [1982193] - net/mlx5e: RX, Re-place page pool numa node change logic (Amir Tzin) [1982193] - net/mlx5e: Zero-init DIM structures (Amir Tzin) [1982193] - net/mlx5e: IPoIB, Add support for NDR speed (Amir Tzin) [1982193] - net/mlx5e: Remove the repeated declaration (Amir Tzin) [1982193] - net/mlx5: check for allocation failure in mlx5_ft_pool_init() (Amir Tzin) [1982193] - mlx5: count all link events (Amir Tzin) [1982193] - net/mlx5: Expose FW version over defined keyword (Amir Tzin) [1982193] - net/mlx5: Use boolean arithmetic to evaluate roce_lag (Amir Tzin) [1982193] - net/mlx5: Remove unnecessary spin lock protection (Amir Tzin) [1982193] - net/mlx5: Cap the maximum flow group size to 16M entries (Amir Tzin) [1982193] - net/mlx5: DR, Set max table size to 2G entries (Amir Tzin) [1982193] - net/mlx5: Move chains ft pool to be used by all firmware steering (Amir Tzin) [1982193] - net/mlx5: Move table size calculation to steering cmd layer (Amir Tzin) [1982193] - net/mlx5: Add case for FS_FT_NIC_TX FT in MLX5_CAP_FLOWTABLE_TYPE (Amir Tzin) [1982193] - net/mlx5: DR, Remove unused field of send_ring struct (Amir Tzin) [1982193] - net/mlx5e: RX, Remove unnecessary check in RX CQE compression handling (Amir Tzin) [1982193] - net/mlx5: CT: Avoid reusing modify header context for natted entries (Amir Tzin) [1982193] - net/mlx5e: CT, Remove newline from ct_dbg call (Amir Tzin) [1982193] - RDMA/mlx5: Take qp type from mlx5_ib_qp (Amir Tzin) [1982193] - RDMA/mlx5: Add SQD2RTS bit to the alloc ucontext response (Amir Tzin) [1982193] - RDMA/mlx5: Support SQD2RTS for modify QP (Amir Tzin) [1982193] - RDMA/mlx5: Remove redundant assignment to ret (Amir Tzin) [1982193] - firewire: fix support status (Tomas Henzl) [2055319] - dlci: fix support status (Tomas Henzl) [2055319] - dlink: fix support status (Tomas Henzl) [2055319] - rxe: fix support status (Tomas Henzl) [2055319] - qic: fix support status (Tomas Henzl) [2055319] - Revert "ceph: enable async dirops by default" (Jeffrey Layton) [2052542] - libceph: optionally use bounce buffer on recv path in crc mode (Jeffrey Layton) [2024725] - libceph: make recv path in secure mode work the same as send path (Jeffrey Layton) [2024725] - mm: use kmap_local_page in memzero_page (Jeffrey Layton) [2024725] - mm: call flush_dcache_page() in memcpy_to_page() and memzero_page() (Jeffrey Layton) [2024725] - iov_iter: lift memzero_page() to highmem.h (Jeffrey Layton) [2024725] - mm/highmem: Convert memcpy_[to|from]_page() to kmap_local_page() (Jeffrey Layton) [2024725] - mm/highmem: Lift memcpy_[to|from]_page to core (Jeffrey Layton) [2024725] - ceph: set pool_ns in new inode layout for async creates (Jeffrey Layton) [2046021] - ceph: properly put ceph_string reference after async create attempt (Jeffrey Layton) [2046021] - ceph: put the requests/sessions when it fails to alloc memory (Jeffrey Layton) [2046021] - ceph: remove redundant Lsx caps check (Jeffrey Layton) [2046021] - ceph: don't check for quotas on MDS stray dirs (Jeffrey Layton) [2046021] - ceph: drop send metrics debug message (Jeffrey Layton) [2046021] - ceph: Fix incorrect statfs report for small quota (Jeffrey Layton) [2011104] - scsi: qla2xxx: stop timer in shutdown path (Nilesh Javali) [2056055] - Revert "PCI: Add support for dev_groups to struct pci_driver" (Michel Dänzer) [2054595] - drm/amdgpu: Assign amdgpu_sysfs_groups to struct device_driver directly (Michel Dänzer) [2054595] - EDAC/i10nm: Retrieve and print retry_rd_err_log registers (Aristeu Rozanski) [1998359] - redhat: enable zstream release numbering for rhel 8.6 (Augusto Caringi) - redhat: generate distgit changelog in genspec.sh as well (Jan Stancek) - redhat: always upload kabi tarballs (Jan Stancek) - redhat: make genspec prefer metadata from git notes (Jan Stancek)- xfs: don't generate selinux audit messages for capability testing (Brian Foster) [2059835]- ice: Implement support for SMA and U.FL on E810-T (Jonathan Toppins) [1975007] - ice: Add support for SMA control multiplexer (Jonathan Toppins) [1975007] - ice: Implement functions for reading and setting GPIO pins (Jonathan Toppins) [1975007] - ice: Refactor ice_aqc_link_topo_addr (Jonathan Toppins) [1975007] - xfs: restore speculative_cow_prealloc_lifetime sysctl (Bill O'Donnell) [2015621] - xfs: Fix the free logic of state in xfs_attr_node_hasname (Bill O'Donnell) [2015621 2037498] - xfs: punch out data fork delalloc blocks on COW writeback failure (Bill O'Donnell) [2015621 2012872] - xfs: use kmem_cache_free() for kmem_cache objects (Bill O'Donnell) [2015621] - xfs: logging the on disk inode LSN can make it go backwards (Bill O'Donnell) [2015621] - xfs: only reset incore inode health state flags when reclaiming an inode (Bill O'Donnell) [2015621] - xfs: remove obsolete AGF counter debugging (Bill O'Donnell) [2015621] - xfs: Initialize xfs_alloc_arg->total correctly when allocating minlen extents (Bill O'Donnell) [2015621] - xfs: Fix dax inode extent calculation when direct write is performed on an unwritten extent (Bill O'Donnell) [2015621] - xfs: mark a data structure sick if there are cross-referencing errors (Bill O'Donnell) [2015621] - xfs: fix maxlevels comparisons in the btree staging code (Bill O'Donnell) [2015621] - xfs: fix incorrect unit conversion in scrub tracepoint (Bill O'Donnell) [2015621] - xfs: fix log intent recovery ENOSPC shutdowns when inactivating inodes (Bill O'Donnell) [2015621] - xfs: fix radix tree tag signs (Bill O'Donnell) [2015621] - xfs: force log and push AIL to clear pinned inodes when aborting mount (Bill O'Donnell) [2015621] - xfs: use current->journal_info for detecting transaction recursion (Bill O'Donnell) [2015621] - xfs: don't nest transactions when scanning for eofblocks (Bill O'Donnell) [2015621] - xfs: fix boolreturn.cocci warnings (Bill O'Donnell) [2015621] - xfs: get rid of xfs_growfs_{data,log}_t (Bill O'Donnell) [2015621] - xfs: rename `new' to `delta' in xfs_growfs_data_private() (Bill O'Donnell) [2015621] - xfs: don't bounce the iolock between free_{eof,cow}blocks (Bill O'Donnell) [2015621] - xfs: expose the blockgc workqueue knobs publicly (Bill O'Donnell) [2015621] - xfs: parallelize block preallocation garbage collection (Bill O'Donnell) [2015621] - xfs: rename block gc start and stop functions (Bill O'Donnell) [2015621] - xfs: only walk the incore inode tree once per blockgc scan (Bill O'Donnell) [2015621] - xfs: consolidate the eofblocks and cowblocks workers (Bill O'Donnell) [2015621] - xfs: consolidate incore inode radix tree posteof/cowblocks tags (Bill O'Donnell) [2015621] - xfs: remove trivial eof/cowblocks functions (Bill O'Donnell) [2015621] - xfs: hide xfs_icache_free_cowblocks (Bill O'Donnell) [2015621] - xfs: hide xfs_icache_free_eofblocks (Bill O'Donnell) [2015621] - xfs: relocate the eofb/cowb workqueue functions (Bill O'Donnell) [2015621] - xfs: set WQ_SYSFS on all workqueues in debug mode (Bill O'Donnell) [2015621] - xfs: increase the default parallelism levels of pwork clients (Bill O'Donnell) [2015621] - xfs: flush speculative space allocations when we run out of space (Bill O'Donnell) [2015621] - xfs: refactor xfs_icache_free_{eof,cow}blocks call sites (Bill O'Donnell) [2015621] - xfs: add a tracepoint for blockgc scans (Bill O'Donnell) [2015621] - xfs: flush eof/cowblocks if we can't reserve quota for chown (Bill O'Donnell) [2015621] - xfs: flush eof/cowblocks if we can't reserve quota for inode creation (Bill O'Donnell) [2015621] - xfs: flush eof/cowblocks if we can't reserve quota for file blocks (Bill O'Donnell) [2015621] - xfs: try worst case space reservation upfront in xfs_reflink_remap_extent (Bill O'Donnell) [2015621] - xfs: pass flags and return gc errors from xfs_blockgc_free_quota (Bill O'Donnell) [2015621] - xfs: move and rename xfs_inode_free_quota_blocks to avoid conflicts (Bill O'Donnell) [2015621] - xfs: xfs_inode_free_quota_blocks should scan project quota (Bill O'Donnell) [2015621] - xfs: don't stall cowblocks scan if we can't take locks (Bill O'Donnell) [2015621] - xfs: trigger all block gc scans when low on quota space (Bill O'Donnell) [2015621] - xfs: shut down the filesystem if we screw up quota reservation (Bill O'Donnell) [2015621] - xfs: rename code to error in xfs_ioctl_setattr (Bill O'Donnell) [2015621] - xfs: remove xfs_qm_vop_chown_reserve (Bill O'Donnell) [2015621] - xfs: refactor inode ownership change transaction/inode/quota allocation idiom (Bill O'Donnell) [2015621] - xfs: refactor inode creation transaction/inode/quota allocation idiom (Bill O'Donnell) [2015621] - xfs: refactor reflink functions to use xfs_trans_alloc_inode (Bill O'Donnell) [2015621] - xfs: allow reservation of rtblocks with xfs_trans_alloc_inode (Bill O'Donnell) [2015621] - xfs: refactor common transaction/inode/quota allocation idiom (Bill O'Donnell) [2015621] - xfs: reserve data and rt quota at the same time (Bill O'Donnell) [2015621] - xfs: clean up icreate quota reservation calls (Bill O'Donnell) [2015621] - xfs: remove xfs_trans_unreserve_quota_nblks completely (Bill O'Donnell) [2015621] - xfs: create convenience wrappers for incore quota block reservations (Bill O'Donnell) [2015621] - xfs: clean up quota reservation callsites (Bill O'Donnell) [2015621] - xfs: reduce quota reservation when doing a dax unwritten extent conversion (Bill O'Donnell) [2015621] - xfs: reduce exclusive locking on unaligned dio (Bill O'Donnell) [2015621] - xfs: split the unaligned DIO write code out (Bill O'Donnell) [2015621] - xfs: improve the reflink_bounce_dio_write tracepoint (Bill O'Donnell) [2015621] - xfs: simplify the read/write tracepoints (Bill O'Donnell) [2015621] - xfs: remove the buffered I/O fallback assert (Bill O'Donnell) [2015621] - xfs: cleanup the read/write helper naming (Bill O'Donnell) [2015621] - xfs: make xfs_file_aio_write_checks IOCB_NOWAIT-aware (Bill O'Donnell) [2015621] - xfs: factor out a xfs_ilock_iocb helper (Bill O'Donnell) [2015621] - xfs: Fix 'set but not used' warning in xfs_bmap_compute_alignments() (Bill O'Donnell) [2015621] - xfs: fix unused log variable in xfs_log_cover() (Bill O'Donnell) [2015621] - iomap: add a IOMAP_DIO_OVERWRITE_ONLY flag (Bill O'Donnell) [2015621] - iomap: pass a flags argument to iomap_dio_rw (Bill O'Donnell) [2015621] - iomap: rename the flags variable in __iomap_dio_rw (Bill O'Donnell) [2015621] - iomap: Allow filesystem to call iomap_dio_complete without i_rwsem (Bill O'Donnell) [2015621] - xfs: reduce ilock acquisitions in xfs_file_fsync (Bill O'Donnell) [2015621] - xfs: refactor xfs_file_fsync (Bill O'Donnell) [2015621] - xfs: cover the log on freeze instead of cleaning it (Bill O'Donnell) [2015621] - xfs: remove xfs_quiesce_attr() (Bill O'Donnell) [2015621] - xfs: remove duplicate wq cancel and log force from attr quiesce (Bill O'Donnell) [2015621] - xfs: fold sbcount quiesce logging into log covering (Bill O'Donnell) [2015621] - xfs: don't reset log idle state on covering checkpoints (Bill O'Donnell) [2015621] - xfs: cover the log during log quiesce (Bill O'Donnell) [2015621] - xfs: separate log cleaning from log quiesce (Bill O'Donnell) [2015621] - xfs: lift writable fs check up into log worker task (Bill O'Donnell) [2015621] - xfs: set inode size after creating symlink (Bill O'Donnell) [2015621] - xfs: remove a stale comment from xfs_file_aio_write_checks() (Bill O'Donnell) [2015621] - xfs: Introduce error injection to allocate only minlen size extents for files (Bill O'Donnell) [2015621] - xfs: Process allocated extent in a separate function (Bill O'Donnell) [2015621] - xfs: Compute bmap extent alignments in a separate function (Bill O'Donnell) [2015621] - xfs: Remove duplicate assert statement in xfs_bmap_btalloc() (Bill O'Donnell) [2015621] - xfs: Introduce error injection to reduce maximum inode fork extent count (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when swapping extents (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when remapping an extent (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when moving extent from cow to data fork (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when writing to unwritten extent (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when adding/removing xattrs (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when renaming dir entries (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when removing dir entries (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when adding dir entries (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when punching a hole (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when trivally adding a new extent (Bill O'Donnell) [2015621] - xfs: Add helper for checking per-inode extent count overflow (Bill O'Donnell) [2015621] - iwlwifi: pcie: add killer devices to the driver (Íñigo Huguet) [2043453] - iwlwifi: add support for BNJ HW (Íñigo Huguet) [2043453] - iwlwifi: Fix FW name for gl (Íñigo Huguet) [2043453] - iwlwifi: Read the correct addresses when getting the crf id (Íñigo Huguet) [2043453] - iwlwifi: pcie: add jacket bit to device configuration parsing (Íñigo Huguet) [2043453] - iwlwifi: add new ax1650 killer device (Íñigo Huguet) [2043453] - iwlwifi: add new Qu-Hr device (Íñigo Huguet) [2043453] - iwlwifi: add missing entries for Gf4 with So and SoF (Íñigo Huguet) [2043453] - iwlwifi: remove unused iwlax210_2ax_cfg_so_hr_a0 structure (Íñigo Huguet) [2043453] - iwlwifi: add support for Bz-Z HW (Íñigo Huguet) [2043453] - iwlwifi: support 4-bits in MAC step value (Íñigo Huguet) [2043453] - iwlwifi: mvm: Increase the scan timeout guard to 30 seconds (Íñigo Huguet) [2043453] - iwlwifi: mvm: Use div_s64 instead of do_div in iwl_mvm_ftm_rtt_smoothing() (Íñigo Huguet) [2043453] - mt76: mt7921: fix a possible race enabling/disabling runtime-pm (Íñigo Huguet) [2043453] - ath11k: Fix unexpected return buffer manager error for QCA6390 (Íñigo Huguet) [2043453] - ath11k: Fix napi related hang (Íñigo Huguet) [2043453] - iwlwifi: yoyo: fix issue with new DBGI_SRAM region read. (Íñigo Huguet) [2043453] - iwlwifi: pcie: make sure prph_info is set when treating wakeup IRQ (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix AUX ROC removal (Íñigo Huguet) [2043453] - iwlwifi: mvm: set protected flag only for NDP ranging (Íñigo Huguet) [2043453] - iwlwifi: mvm: perform 6GHz passive scan after suspend (Íñigo Huguet) [2043453] - iwlwifi: mvm: Fix calculation of frame length (Íñigo Huguet) [2043453] - iwlwifi: mvm: test roc running status bits before removing the sta (Íñigo Huguet) [2043453] - iwlwifi: don't pass actual WGDS revision number in table_revision (Íñigo Huguet) [2043453] - iwlwifi: fix leaks/bad data after failed firmware load (Íñigo Huguet) [2043453] - iwlwifi: fix debug TLV parsing (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix 32-bit build in FTM (Íñigo Huguet) [2043453] - iwlwifi: fix Bz NMI behaviour (Íñigo Huguet) [2043453] - rtlwifi: rtl8192cu: Fix WARNING when calling local_irq_restore() with interrupts enabled (Íñigo Huguet) [2043453] - rtw88: 8822c: update rx settings to prevent potential hw deadlock (Íñigo Huguet) [2043453] - rtw88: Disable PCIe ASPM while doing NAPI poll on 8821CE (Íñigo Huguet) [2043453] - ath9k: Fix out-of-bound memcpy in ath9k_hif_usb_rx_stream (Íñigo Huguet) [2043453] - ath9k_htc: fix NULL pointer dereference at ath9k_htc_tx_get_packet() (Íñigo Huguet) [2043453] - ath9k_htc: fix NULL pointer dereference at ath9k_htc_rxep() (Íñigo Huguet) [2043453] - mac80211: fix FEC flag in radio tap header (Íñigo Huguet) [2043453] - mt76: mt7921: fix possible resume failure (Íñigo Huguet) [2043453] - mt76: mt7921: move mt76_connac_mcu_set_hif_suspend to bus-related files (Íñigo Huguet) [2043453] - mt76: mt7921: fix network buffer leak by txs missing (Íñigo Huguet) [2043453] - mt76: mt7615: clear mcu error interrupt status on mt7663 (Íñigo Huguet) [2043453] - mt76: connac: fix last_chan configuration in mt76_connac_mcu_rate_txpower_band (Íñigo Huguet) [2043453] - mt76: mt7921: use correct iftype data on 6GHz cap init (Íñigo Huguet) [2043453] - mt76: mt7921: fix boolreturn.cocci warning (Íñigo Huguet) [2043453] - mt76: mt7615: fix unused tx antenna mask in testmode (Íñigo Huguet) [2043453] - mt76: fix the wiphy's available antennas to the correct value (Íñigo Huguet) [2043453] - mt76: connac: fix a theoretical NULL pointer dereference in mt76_connac_get_phy_mode (Íñigo Huguet) [2043453] - mt76: mt7921: fix possible NULL pointer dereference in mt7921_mac_write_txwi (Íñigo Huguet) [2043453] - mt76: fix possible OOB issue in mt76_calculate_default_rate (Íñigo Huguet) [2043453] - mt76: debugfs: fix queue reporting for mt76-usb (Íñigo Huguet) [2043453] - mt76: mt7915: fix SMPS operation fail (Íñigo Huguet) [2043453] - mt76: mt7915: fix return condition in mt7915_tm_reg_backup_restore() (Íñigo Huguet) [2043453] - mt76: mt7921: fix MT7921E reset failure (Íñigo Huguet) [2043453] - mt76: mt7615: fix possible deadlock while mt7615_register_ext_phy() (Íñigo Huguet) [2043453] - mt76: mt7921: drop offload_flags overwritten (Íñigo Huguet) [2043453] - mt76: mt7915: get rid of mt7915_mcu_set_fixed_rate routine (Íñigo Huguet) [2043453] - bus: mhi: core: Use correctly sized arguments for bit field (Íñigo Huguet) [2043453] - bus: mhi: core: Fix race while handling SYS_ERR at power up (Íñigo Huguet) [2043453] - bus: mhi: core: Fix reading wake_capable channel configuration (Íñigo Huguet) [2043453] - bus: mhi: core: Minor style and comment fixes (Íñigo Huguet) [2043453] - bus: mhi: pci_generic: Graceful shutdown on freeze (Íñigo Huguet) [2043453] - ath11k: Fix a NULL pointer dereference in ath11k_mac_op_hw_scan() (Íñigo Huguet) [2043453] - mt76: remove variable set but not used (Íñigo Huguet) [2043453] - ath11k: Fix deleting uninitialized kernel timer during fragment cache flush (Íñigo Huguet) [2043453] - ath11k: add spectral/CFR buffer validation support (Íñigo Huguet) [2043453] - ath11k: Fix buffer overflow when scanning with extraie (Íñigo Huguet) [2043453] - mwifiex: Fix possible ABBA deadlock (Íñigo Huguet) [2043453] - ath10k: fix scan abort when duration is set for hw scan (Íñigo Huguet) [2043453] - ath10k: Fix tx hanging (Íñigo Huguet) [2043453] - iwlwifi: acpi: fix wgds rev 3 size (Íñigo Huguet) [2043453] - iwlwifi: mvm: avoid clearing a just saved session protection id (Íñigo Huguet) [2043453] - iwlwifi: mvm: Fix wrong documentation for scan request command (Íñigo Huguet) [2043453] - iwlwifi: mvm: synchronize with FW after multicast commands (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix delBA vs. NSSN queue sync race (Íñigo Huguet) [2043453] - ath11k: Fix QMI file type enum value (Íñigo Huguet) [2043453] - ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [2043453] - ath10k: Fix the MTU size on QCA9377 SDIO (Íñigo Huguet) [2043453] - wireless: iwlwifi: Fix a double free in iwl_txq_dyn_alloc_dma (Íñigo Huguet) [2043453] - mwifiex: Ignore BTCOEX events from the 88W8897 firmware (Íñigo Huguet) [2043453] - mwifiex: Fix skb_over_panic in mwifiex_usb_recv() (Íñigo Huguet) [2043453] - ath11k: Use host CE parameters for CE interrupts configuration (Íñigo Huguet) [2043453] - ath11k: Fix mon status ring rx tlv processing (Íñigo Huguet) [2043453] - ath11k: skip sending vdev down for channel switch (Íñigo Huguet) [2043453] - ath11k: fix read fail for htt_stats and htt_peer_stats for single pdev (Íñigo Huguet) [2043453] - ath11k: Set IRQ affinity to CPU0 in case of one MSI vector (Íñigo Huguet) [2043453] - ath11k: do not restore ASPM in case of single MSI vector (Íñigo Huguet) [2043453] - ath11k: add support one MSI vector (Íñigo Huguet) [2043453] - ath11k: refactor multiple MSI vector implementation (Íñigo Huguet) [2043453] - ath11k: use ATH11K_PCI_IRQ_DP_OFFSET for DP IRQ (Íñigo Huguet) [2043453] - ath11k: add CE and ext IRQ flag to indicate irq_handler (Íñigo Huguet) [2043453] - ath11k: get msi_data again after request_irq is called (Íñigo Huguet) [2043453] - ath9k: fix intr_txqs setting (Íñigo Huguet) [2043453] - ath11k: add hw_param for wakeup_mhi (Íñigo Huguet) [2043453] - ath11k: reset RSN/WPA present state for open BSS (Íñigo Huguet) [2043453] - ath11k: clear the keys properly via DISABLE_KEY (Íñigo Huguet) [2043453] - ath11k: Fix crash caused by uninitialized TX ring (Íñigo Huguet) [2043453] - ath11k: use cache line aligned buffers for dbring (Íñigo Huguet) [2043453] - ath11k: Fix ETSI regd with weather radar overlap (Íñigo Huguet) [2043453] - ath11k: fix FCS_ERR flag in radio tap header (Íñigo Huguet) [2043453] - ath11k: fix the value of msecs_to_jiffies in ath11k_debugfs_fw_stats_request (Íñigo Huguet) [2043453] - ath11k: fix firmware crash during channel switch (Íñigo Huguet) [2043453] - ath11k: Fix 'unused-but-set-parameter' error (Íñigo Huguet) [2043453] - ath11k: fix DMA memory free in CE pipe cleanup (Íñigo Huguet) [2043453] - ath11k: fix error routine when fallback of add interface fails (Íñigo Huguet) [2043453] - ath11k: fix fw crash due to peer get authorized before key install (Íñigo Huguet) [2043453] - ath11k: Clear auth flag only for actual association in security mode (Íñigo Huguet) [2043453] - ath11k: Send PPDU_STATS_CFG with proper pdev mask to firmware (Íñigo Huguet) [2043453] - ath11k: set correct NL80211_FEATURE_DYNAMIC_SMPS for WCN6855 (Íñigo Huguet) [2043453] - mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh (Íñigo Huguet) [2043453] - mac80211: initialize variable have_higher_than_11mbit (Íñigo Huguet) [2043453] - mac80211: fix locking in ieee80211_start_ap error path (Íñigo Huguet) [2043453] - mac80211: do drv_reconfig_complete() before restarting all (Íñigo Huguet) [2043453] - mac80211: mark TX-during-stop for TX in in_reconfig (Íñigo Huguet) [2043453] - mac80211: update channel context before station state (Íñigo Huguet) [2043453] - mac80211: Fix the size used for building probe request (Íñigo Huguet) [2043453] - mac80211: fix lookup when adding AddBA extension element (Íñigo Huguet) [2043453] - mac80211: validate extended element ID is present (Íñigo Huguet) [2043453] - cfg80211: Acquire wiphy mutex on regulatory work (Íñigo Huguet) [2043453] - mac80211: agg-tx: don't schedule_and_wake_txq() under sta->lock (Íñigo Huguet) [2043453] - nl80211: remove reload flag from regulatory_request (Íñigo Huguet) [2043453] - mac80211: send ADDBA requests using the tid/queue of the aggregation session (Íñigo Huguet) [2043453] - bus: mhi: core: Add support for forced PM resume (Íñigo Huguet) [2043453] - mt76: mt7921: fix build regression (Íñigo Huguet) [2043453] - brcmsmac: rework LED dependencies (Íñigo Huguet) [2043453] - iwlwifi: fix LED dependencies (Íñigo Huguet) [2043453] - iwlwifi: mvm: don't crash on invalid rate w/o STA (Íñigo Huguet) [2043453] - bus: mhi: pci_generic: Fix device recovery failed issue (Íñigo Huguet) [2043453] - mt76: fix key pointer overwrite in mt7921s_write_txwi/mt7663_usb_sdio_write_txwi (Íñigo Huguet) [2043453] - rt2x00: do not mark device gone on EPROTO errors during start (Íñigo Huguet) [2043453] - nl80211: reset regdom when reloading regdb (Íñigo Huguet) [2043453] - mac80211: add docs for ssn in struct tid_ampdu_tx (Íñigo Huguet) [2043453] - mac80211: fix a memory leak where sta_info is not freed (Íñigo Huguet) [2043453] - mac80211: set up the fwd_skb->dev for mesh forwarding (Íñigo Huguet) [2043453] - mac80211: fix regression in SSN handling of addba tx (Íñigo Huguet) [2043453] - mac80211: fix rate control for retransmitted frames (Íñigo Huguet) [2043453] - mac80211: track only QoS data frames for admission control (Íñigo Huguet) [2043453] - mac80211: fix TCP performance on mesh interface (Íñigo Huguet) [2043453] - mt76: fix possible pktid leak (Íñigo Huguet) [2043453] - mt76: fix timestamp check in tx_status (Íñigo Huguet) [2043453] - mt76: mt7915: fix NULL pointer dereference in mt7915_get_phy_mode (Íñigo Huguet) [2043453] - iwlwifi: Fix memory leaks in error handling path (Íñigo Huguet) [2043453] - iwlwifi: fix warnings produced by kernel debug options (Íñigo Huguet) [2043453] - iwlwifi: mvm: retry init flow if failed (Íñigo Huguet) [2043453] - iwlwifi: Fix missing error code in iwl_pci_probe() (Íñigo Huguet) [2043453] - iwlwifi: pcie: fix constant-conversion warning (Íñigo Huguet) [2043453] - mac80211: fix throughput LED trigger (Íñigo Huguet) [2043453] - mac80211: fix monitor_sdata RCU/locking assertions (Íñigo Huguet) [2043453] - mac80211: drop check for DONT_REORDER in __ieee80211_select_queue (Íñigo Huguet) [2043453] - mac80211: fix radiotap header generation (Íñigo Huguet) [2043453] - mac80211: do not access the IV when it was stripped (Íñigo Huguet) [2043453] - nl80211: fix radio statistics in survey dump (Íñigo Huguet) [2043453] - cfg80211: call cfg80211_stop_ap when switch from P2P_GO type (Íñigo Huguet) [2043453] - mwifiex: fix division by zero in fw download path (Íñigo Huguet) [2043453] - iwlwifi: bump FW API to 67 for AX devices (Íñigo Huguet) [2043453] - iwlwifi: mvm: extend session protection on association (Íñigo Huguet) [2043453] - iwlwifi: rename CHANNEL_SWITCH_NOA_NOTIF to CHANNEL_SWITCH_START_NOTIF (Íñigo Huguet) [2043453] - iwlwifi: mvm: remove session protection on disassoc (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix WGDS table print in iwl_mvm_chub_update_mcc() (Íñigo Huguet) [2043453] - iwlwifi: rename GEO_TX_POWER_LIMIT to PER_CHAIN_LIMIT_OFFSET_CMD (Íñigo Huguet) [2043453] - iwlwifi: mvm: d3: use internal data representation (Íñigo Huguet) [2043453] - iwlwifi: mvm: update RFI TLV (Íñigo Huguet) [2043453] - iwlwifi: mvm: don't get address of mvm->fwrt just to dereference as a pointer (Íñigo Huguet) [2043453] - iwlwifi: yoyo: support for ROM usniffer (Íñigo Huguet) [2043453] - iwlwifi: fw: uefi: add missing include guards (Íñigo Huguet) [2043453] - iwlwifi: dump host monitor data when NIC doesn't init (Íñigo Huguet) [2043453] - iwlwifi: pcie: simplify iwl_pci_find_dev_info() (Íñigo Huguet) [2043453] - iwlwifi: ACPI: support revision 3 WGDS tables (Íñigo Huguet) [2043453] - iwlwifi: pcie: update sw error interrupt for BZ family (Íñigo Huguet) [2043453] - iwlwifi: add new pci SoF with JF (Íñigo Huguet) [2043453] - iwlwifi: mvm: Use all Rx chains for roaming scan (Íñigo Huguet) [2043453] - iwlwifi: pcie: remove two duplicate PNJ device entries (Íñigo Huguet) [2043453] - iwlwifi: pcie: refactor dev_info lookup (Íñigo Huguet) [2043453] - iwlwifi: pcie: remove duplicate entry (Íñigo Huguet) [2043453] - iwlwifi: pcie: fix killer name matching for AX200 (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix some kerneldoc issues (Íñigo Huguet) [2043453] - ath10k: fix division by zero in send path (Íñigo Huguet) [2043453] - ath10k: fix control-message timeout (Íñigo Huguet) [2043453] - ath10k: fix module load regression with iram-recovery feature (Íñigo Huguet) [2043453] - ath10k: fix invalid dma_addr_t token assignment (Íñigo Huguet) [2043453] - ath11k: change return buffer manager for QCA6390 (Íñigo Huguet) [2043453] - mt76: connac: fix unresolved symbols when CONFIG_PM is unset (Íñigo Huguet) [2043453] - mt76: Make use of the helper macro kthread_run() (Íñigo Huguet) [2043453] - mt76: Print error message when reading EEPROM from mtd failed (Íñigo Huguet) [2043453] - mt76: mt7921: disable 4addr capability (Íñigo Huguet) [2043453] - mt76: mt7915: add debugfs knobs for MCU utilization (Íñigo Huguet) [2043453] - mt76: mt7915: add WA firmware log support (Íñigo Huguet) [2043453] - mt76: mt7915: fix endiannes warning mt7915_mcu_beacon_check_caps (Íñigo Huguet) [2043453] - mt76: mt7915: rework debugfs fixed-rate knob (Íñigo Huguet) [2043453] - mt76: mt7915: rework .set_bitrate_mask() to support more options (Íñigo Huguet) [2043453] - mt76: mt7915: remove mt7915_mcu_add_he() (Íñigo Huguet) [2043453] - mt76: mt7615: apply cached RF data for DBDC (Íñigo Huguet) [2043453] - mt76: mt7615: mt7622: fix ibss and meshpoint (Íñigo Huguet) [2043453] - mt76: mt7921: fix Wformat build warning (Íñigo Huguet) [2043453] - mt76: mt7921: fix mt7921s Kconfig (Íñigo Huguet) [2043453] - iwlwifi: pnvm: print out the version properly (Íñigo Huguet) [2043453] - iwlwifi: dbg: treat non active regions as unsupported regions (Íñigo Huguet) [2043453] - iwlwifi: mvm: Read acpi dsm to get channel activation bitmap (Íñigo Huguet) [2043453] - iwlwifi: add new device id 7F70 (Íñigo Huguet) [2043453] - iwlwifi: mvm: improve log when processing CSA (Íñigo Huguet) [2043453] - iwlwifi: mvm: set BT-coex high priority for 802.1X/4-way-HS (Íñigo Huguet) [2043453] - iwlwifi: dbg: treat dbgc allocation failure when tlv is missing (Íñigo Huguet) [2043453] - iwlwifi: add new killer devices to the driver (Íñigo Huguet) [2043453] - iwlwifi: mvm: set inactivity timeouts also for PS-poll (Íñigo Huguet) [2043453] - iwlwifi: pcie: try to grab NIC access early (Íñigo Huguet) [2043453] - iwlwifi: mvm: reduce WARN_ON() in TX status path (Íñigo Huguet) [2043453] - iwlwifi: allow rate-limited error messages (Íñigo Huguet) [2043453] - iwlwifi: mvm: remove session protection after auth/assoc (Íñigo Huguet) [2043453] - iwlwifi: remove redundant iwl_finish_nic_init() argument (Íñigo Huguet) [2043453] - iwlwifi: mvm: Add RTS and CTS flags to iwl_tx_cmd_flags. (Íñigo Huguet) [2043453] - iwlwifi: mvm: remove csi from iwl_mvm_pass_packet_to_mac80211() (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new rate_n_flags for REPLY_RX_MPDU_CMD and RX_NO_DATA_NOTIF (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new TX_RSP and COMPRESSED_BA_RES versions (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new version of BEACON_TEMPLATE_CMD. (Íñigo Huguet) [2043453] - iwlwifi: mvm: Add support for new rate_n_flags in tx_cmd. (Íñigo Huguet) [2043453] - iwlwifi: BZ Family SW reset support (Íñigo Huguet) [2043453] - iwlwifi: BZ Family BUS_MASTER_DISABLE_REQ code duplication (Íñigo Huguet) [2043453] - iwlwifi: yoyo: fw debug config from context info and preset (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new version of ranging response notification (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support version 3 of tlc_update_notif. (Íñigo Huguet) [2043453] - iwlwifi: mvm: convert old rate & flags to the new format. (Íñigo Huguet) [2043453] - iwlwifi: mvm: add definitions for new rate & flags (Íñigo Huguet) [2043453] - iwlwifi: mvm: update definitions due to new rate & flags (Íñigo Huguet) [2043453] - iwlwifi: mvm: scrub key material in firmware dumps (Íñigo Huguet) [2043453] - iwlwifi: parse debug exclude data from firmware file (Íñigo Huguet) [2043453] - iwlwifi: fw dump: add infrastructure for dump scrubbing (Íñigo Huguet) [2043453] - iwlwifi: mvm: correct sta-state logic for TDLS (Íñigo Huguet) [2043453] - iwlwifi: api: fix struct iwl_wowlan_status_v7 kernel-doc (Íñigo Huguet) [2043453] - iwlwifi: fix fw/img.c license statement (Íñigo Huguet) [2043453] - iwlwifi: remove contact information (Íñigo Huguet) [2043453] - iwlwifi: remove MODULE_AUTHOR() statements (Íñigo Huguet) [2043453] - iwlwifi: api: remove unused RX status bits (Íñigo Huguet) [2043453] - iwlwifi: add some missing kernel-doc in struct iwl_fw (Íñigo Huguet) [2043453] - iwlwifi: mvm: Remove antenna c references (Íñigo Huguet) [2043453] - iwlwifi: mvm: add support for 160Mhz in ranging measurements (Íñigo Huguet) [2043453] - iwlwifi: add vendor specific capabilities for some RFs (Íñigo Huguet) [2043453] - iwlwifi: mvm: add lmac/umac PC info in case of error (Íñigo Huguet) [2043453] - iwlwifi: mvm: disable RX-diversity in powersave (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix ieee80211_get_he_iftype_cap() iftype (Íñigo Huguet) [2043453] - iwlwifi: Start scratch debug register for Bz family (Íñigo Huguet) [2043453] - iwlwifi: Add support for more BZ HWs (Íñigo Huguet) [2043453] - iwlwifi: Add support for getting rf id with blank otp (Íñigo Huguet) [2043453] - cfg80211: fix kernel-doc for MBSSID EMA (Íñigo Huguet) [2043453] - mac80211: Prevent AP probing during suspend (Íñigo Huguet) [2043453] - nl80211: Add LC placeholder band definition to nl80211_band (Íñigo Huguet) [2043453] - mac80211: split beacon retrieval functions (Íñigo Huguet) [2043453] - cfg80211: separate get channel number from ies (Íñigo Huguet) [2043453] - mac80211: use ieee80211_bss_get_elem() in most places (Íñigo Huguet) [2043453] - cfg80211: scan: use element finding functions in easy cases (Íñigo Huguet) [2043453] - nl80211: use element finding functions (Íñigo Huguet) [2043453] - mac80211: fils: use cfg80211_find_ext_elem() (Íñigo Huguet) [2043453] - mac80211: fix memory leaks with element parsing (Íñigo Huguet) [2043453] - cfg80211: prepare for const netdev->dev_addr (Íñigo Huguet) [2043453] - mac80211: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - wireless: mac80211_hwsim: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - mac80211: debugfs: calculate free buffer size correctly (Íñigo Huguet) [2043453] - fq_codel: generalise ce_threshold marking for subset of traffic (Íñigo Huguet) [2043453] - wl3501_cs: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - ray_cs: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - brcmfmac: prepare for const netdev->dev_addr (Íñigo Huguet) [2043453] - wireless: use eth_hw_addr_set() instead of ether_addr_copy() (Íñigo Huguet) [2043453] - wireless: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - iwlwifi: cfg: set low-latency-xtal for some integrated So devices (Íñigo Huguet) [2043453] - iwlwifi: pnvm: read EFI data only if long enough (Íñigo Huguet) [2043453] - iwlwifi: pnvm: don't kmemdup() more than we have (Íñigo Huguet) [2043453] - iwlwifi: change all JnP to NO-160 configuration (Íñigo Huguet) [2043453] - iwlwifi: mvm: reset PM state on unsuccessful resume (Íñigo Huguet) [2043453] - mwifiex: Deactive host sleep using HSCFG after it was activated manually (Íñigo Huguet) [2043453] - mwifiex: Send DELBA requests according to spec (Íñigo Huguet) [2043453] - mwifiex: Fix an incorrect comment (Íñigo Huguet) [2043453] - mwifiex: Log an error on command failure during key-material upload (Íñigo Huguet) [2043453] - mwifiex: Don't log error on suspend if wake-on-wlan is disabled (Íñigo Huguet) [2043453] - mt76: mt7915: change max rx len limit of hw modules (Íñigo Huguet) [2043453] - mt76: mt7915: fix missing HE phy cap (Íñigo Huguet) [2043453] - mt76: mt7915: rework mt7915_mcu_sta_muru_tlv() (Íñigo Huguet) [2043453] - mt76: mt7915: enable HE UL MU-MIMO (Íñigo Huguet) [2043453] - mt76: mt7921: add per-vif counters in ethtool (Íñigo Huguet) [2043453] - mt76: mt7921: move tx amsdu stats in mib_stats (Íñigo Huguet) [2043453] - mt76: mt7921: add sta stats accounting in mt7921_mac_add_txs_skb (Íñigo Huguet) [2043453] - mt76: mt7921: introduce stats reporting through ethtool (Íñigo Huguet) [2043453] - mt76: mt7921: add some more MIB counters (Íñigo Huguet) [2043453] - mt76: do not reset MIB counters in get_stats callback (Íñigo Huguet) [2043453] - mt76: mt7915: move tx amsdu stats in mib_stats (Íñigo Huguet) [2043453] - mt76: mt7915: run mt7915_get_et_stats holding mt76 mutex (Íñigo Huguet) [2043453] - mt76: move mt76_ethtool_worker_info in mt76 module (Íñigo Huguet) [2043453] - mt76: move mt76_sta_stats in mt76.h (Íñigo Huguet) [2043453] - mt76: mt76x0: correct VHT MCS 8/9 tx power eeprom offset (Íñigo Huguet) [2043453] - mt76: mt7921s: add reset support (Íñigo Huguet) [2043453] - mt76: mt7921: introduce mt7921s support (Íñigo Huguet) [2043453] - mt76: mt7921: refactor mt7921_mcu_send_message (Íñigo Huguet) [2043453] - mt76: mt7921: rely on mcu_get_nic_capability (Íñigo Huguet) [2043453] - mt76: connac: extend mcu_get_nic_capability (Íñigo Huguet) [2043453] - mt76: sdio: extend sdio module to support CONNAC2 (Íñigo Huguet) [2043453] - mt76: sdio: introduce parse_irq callback (Íñigo Huguet) [2043453] - mt76: sdio: move common code in mt76_sdio module (Íñigo Huguet) [2043453] - mt76: mt7921: use physical addr to unify register access (Íñigo Huguet) [2043453] - mt76: mt7921: make all event parser reusable between mt7921s and mt7921e (Íñigo Huguet) [2043453] - mt76: mt7663s: rely on mcu reg access utility (Íñigo Huguet) [2043453] - mt76: connac: move mcu reg access utility routines in mt76_connac_lib module (Íñigo Huguet) [2043453] - mt76: mt7921: add MT7921_COMMON module (Íñigo Huguet) [2043453] - mt76: mt7921: refactor init.c to be bus independent (Íñigo Huguet) [2043453] - mt76: mt7921: refactor mcu.c to be bus independent (Íñigo Huguet) [2043453] - mt76: mt7921: refactor dma.c to be pcie specific (Íñigo Huguet) [2043453] - mt76: mt7921: refactor mac.c to be bus independent (Íñigo Huguet) [2043453] - mt76: mt7921: add MU EDCA cmd support (Íñigo Huguet) [2043453] - mt76: mt7915: remove dead code in debugfs code (Íñigo Huguet) [2043453] - mt76: sdio: export mt76s_alloc_rx_queue and mt76s_alloc_tx routines (Íñigo Huguet) [2043453] - mt76: mt7915: improve code readability for xmit-queue handler (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt76 debugfs sub-dir for ext-phy (Íñigo Huguet) [2043453] - mt76: rely on phy pointer in mt76_register_debugfs_fops routine signature (Íñigo Huguet) [2043453] - mt76: mt7915: set muru platform type (Íñigo Huguet) [2043453] - mt76: mt7915: set VTA bit in tx descriptor (Íñigo Huguet) [2043453] - mt76: mt7915: fix muar_idx in mt7915_mcu_alloc_sta_req() (Íñigo Huguet) [2043453] - mt76: mt7915: rework starec TLV tags (Íñigo Huguet) [2043453] - mt76: mt7915: fix sta_rec_wtbl tag len (Íñigo Huguet) [2043453] - mt76: mt7915: improve starec readability of txbf (Íñigo Huguet) [2043453] - mt76: mt7915: fix txbf starec TLV issues (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt7915_mcu_beacon_check_caps() (Íñigo Huguet) [2043453] - mt76: connac: fix possible NULL pointer dereference in mt76_connac_get_phy_mode_v2 (Íñigo Huguet) [2043453] - mt76: do not access 802.11 header in ccmp check for 802.3 rx skbs (Íñigo Huguet) [2043453] - mt76: use a separate CCMP PN receive counter for management frames (Íñigo Huguet) [2043453] - mt76: mt7921: add delay config for sched scan (Íñigo Huguet) [2043453] - mt76: mt7615: fix monitor mode tear down crash (Íñigo Huguet) [2043453] - mt76: debugfs: improve queue node readability (Íñigo Huguet) [2043453] - mt76: mt7915: add twt_stats knob in debugfs (Íñigo Huguet) [2043453] - mt76: mt7915: enable twt responder capability (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt7915_mac_add_twt_setup routine (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt7915_mcu_twt_agrt_update mcu command (Íñigo Huguet) [2043453] - mt76: mt7915: introduce __mt7915_get_tsf routine (Íñigo Huguet) [2043453] - mt76: drop MCU header size from buffer size in __mt76_mcu_send_firmware (Íñigo Huguet) [2043453] - mt76: introduce __mt76_mcu_send_firmware routine (Íñigo Huguet) [2043453] - mt76: support reading EEPROM data embedded in fdt (Íñigo Huguet) [2043453] - mt76: schedule status timeout at dma completion (Íñigo Huguet) [2043453] - mt76: substitute sk_buff_head status_list with spinlock_t status_lock (Íñigo Huguet) [2043453] - mt76: remove mt76_wcid pointer from mt76_tx_status_check signature (Íñigo Huguet) [2043453] - mt76: introduce packet_id idr (Íñigo Huguet) [2043453] - mt76: mt7921: add 6GHz support (Íñigo Huguet) [2043453] - mt76: add 6GHz support (Íñigo Huguet) [2043453] - mt76: connac: enable hw amsdu @ 6GHz (Íñigo Huguet) [2043453] - mt76: connac: add 6GHz support to mt76_connac_mcu_uni_add_bss (Íñigo Huguet) [2043453] - mt76: connac: add 6GHz support to mt76_connac_mcu_sta_tlv (Íñigo Huguet) [2043453] - mt76: connac: set 6G phymode in single-sku support (Íñigo Huguet) [2043453] - mt76: connac: add 6GHz support to mt76_connac_mcu_set_channel_domain (Íñigo Huguet) [2043453] - mt76: connac: enable 6GHz band for hw scan (Íñigo Huguet) [2043453] - mt76: connac: set 6G phymode in mt76_connac_get_phy_mode{,v2} (Íñigo Huguet) [2043453] - mt76: mt7915: add mib counters to ethtool stats (Íñigo Huguet) [2043453] - mt76: mt7915: add more MIB registers (Íñigo Huguet) [2043453] - mt76: mt7915: add tx mu/su counters to mib (Íñigo Huguet) [2043453] - mt76: mt7915: add some per-station tx stats to ethtool (Íñigo Huguet) [2043453] - mt76: mt7915: add tx stats gathered from tx-status callbacks (Íñigo Huguet) [2043453] - mt76: mt7915: add ethtool stats support (Íñigo Huguet) [2043453] - mt76: mt7921: fix retrying release semaphore without end (Íñigo Huguet) [2043453] - mt76: mt7921: robustify hardware initialization flow (Íñigo Huguet) [2043453] - mt76: mt7915: fix possible infinite loop release semaphore (Íñigo Huguet) [2043453] - mt76: mt7915: honor all possible error conditions in mt7915_mcu_init() (Íñigo Huguet) [2043453] - mt76: move spin_lock_bh to spin_lock in tasklet (Íñigo Huguet) [2043453] - mt76: mt7921: remove mt7921_sta_stats (Íñigo Huguet) [2043453] - mt76: mt7921: remove mcu rate reporting code (Íñigo Huguet) [2043453] - mt76: mt7921: report tx rate directly from tx status (Íñigo Huguet) [2043453] - mt76: mt7921: add support for tx status reporting (Íñigo Huguet) [2043453] - mt76: mt7921: start reworking tx rate reporting (Íñigo Huguet) [2043453] - mt76: mt7615: fix hwmon temp sensor mem use-after-free (Íñigo Huguet) [2043453] - mt76: mt7915: fix hwmon temp sensor mem use-after-free (Íñigo Huguet) [2043453] - mt76: mt7915: enable configured beacon tx rate (Íñigo Huguet) [2043453] - mt76: disable BH around napi_schedule() calls (Íñigo Huguet) [2043453] - mt76: fill boottime_ns in Rx path (Íñigo Huguet) [2043453] - mt76: switch from 'pci_' to 'dma_' API (Íñigo Huguet) [2043453] - mt76: fix boolreturn.cocci warnings (Íñigo Huguet) [2043453] - mt76: mt7921: update mib counters dumping phy stats (Íñigo Huguet) [2043453] - mt76: mt7921: always wake device if necessary in debugfs (Íñigo Huguet) [2043453] - mt76: mt7915: rename debugfs tx-queues (Íñigo Huguet) [2043453] - mt76: mt7915: rework debugfs queue info (Íñigo Huguet) [2043453] - mt76: mt7921: move mt7921_queue_rx_skb to mac.c (Íñigo Huguet) [2043453] - mt76: mt7915: fix WMM index on DBDC cards (Íñigo Huguet) [2043453] - mt76: mt7915: improve code readability in mt7915_mcu_sta_bfer_ht (Íñigo Huguet) [2043453] - mt76: mt7915: introduce bss coloring support (Íñigo Huguet) [2043453] - mt76: mt7915: add LED support (Íñigo Huguet) [2043453] - mt76: mt7915: fix potential NPE in TXS processing (Íñigo Huguet) [2043453] - mt76: mt7915: fix he_mcs capabilities for 160mhz (Íñigo Huguet) [2043453] - mt76: use IEEE80211_OFFLOAD_ENCAP_ENABLED instead of MT_DRV_AMSDU_OFFLOAD (Íñigo Huguet) [2043453] - mt76: mt7915: update mac timing settings (Íñigo Huguet) [2043453] - mt76: mt7921: fix endianness warnings in mt7921_mac_decode_he_mu_radiotap (Íñigo Huguet) [2043453] - mt76: mt7921: fix kernel warning from cfg80211_calculate_bitrate (Íñigo Huguet) [2043453] - mt76: mt7921: fix firmware usage of RA info using legacy rates (Íñigo Huguet) [2043453] - mt76: mt7915: add HE-LTF into fixed rate command (Íñigo Huguet) [2043453] - mt76: mt7921: report HE MU radiotap (Íñigo Huguet) [2043453] - mt76: mt7615: move mt7615_mcu_set_p2p_oppps in mt76_connac module (Íñigo Huguet) [2043453] - mt76: overwrite default reg_ops if necessary (Íñigo Huguet) [2043453] - mt76: mt7921: introduce mt7921_mcu_set_beacon_filter utility routine (Íñigo Huguet) [2043453] - mt76: mt7921: get rid of mt7921_mac_set_beacon_filter (Íñigo Huguet) [2043453] - mt76: mt7921: get rid of monitor_vif (Íñigo Huguet) [2043453] - mt76: connac: add support for limiting to maximum regulatory Tx power (Íñigo Huguet) [2043453] - mt76: connac: fix GTK rekey offload failure on WPA mixed mode (Íñigo Huguet) [2043453] - mt76: mt7921: fix dma hang in rmmod (Íñigo Huguet) [2043453] - mt76: add support for setting mcast rate (Íñigo Huguet) [2043453] - mt76: mt7915: fix bit fields for HT rate idx (Íñigo Huguet) [2043453] - mt76: mt7915: switch proper tx arbiter mode in testmode (Íñigo Huguet) [2043453] - mt76: mt7915: fix potential overflow of eeprom page index (Íñigo Huguet) [2043453] - mt76: mt7921: send EAPOL frames at lowest rate (Íñigo Huguet) [2043453] - mt76: mt7915: send EAPOL frames at lowest rate (Íñigo Huguet) [2043453] - mt76: mt7915: add control knobs for thermal throttling (Íñigo Huguet) [2043453] - mt76: mt7921: Add mt7922 support (Íñigo Huguet) [2043453] - mt76: mt7615: fix skb use-after-free on mac reset (Íñigo Huguet) [2043453] - mt76: mt7921: Fix out of order process by invalid event pkt (Íñigo Huguet) [2043453] - mt76: mt7915: fix mgmt frame using unexpected bitrate (Íñigo Huguet) [2043453] - mt76: mt7921: fix mgmt frame using unexpected bitrate (Íñigo Huguet) [2043453] - mt76: add mt76_default_basic_rate more devices can rely on (Íñigo Huguet) [2043453] - mt76: mt7921: introduce testmode support (Íñigo Huguet) [2043453] - mt76: mt7915: remove mt7915_sta_stats (Íñigo Huguet) [2043453] - mt76: mt7915: report tx rate directly from tx status (Íñigo Huguet) [2043453] - mt76: mt7915: cleanup -Wunused-but-set-variable (Íñigo Huguet) [2043453] - mt76: mt7915: take RCU read lock when calling ieee80211_bss_get_elem() (Íñigo Huguet) [2043453] - mt76: mt7915: fix an off-by-one bound check (Íñigo Huguet) [2043453] - mt76: mt7921: add .set_sar_specs support (Íñigo Huguet) [2043453] - mt76: mt7915: adapt new firmware to update BA winsize for Rx session (Íñigo Huguet) [2043453] - mt76: mt7915: report HE MU radiotap (Íñigo Huguet) [2043453] - mt76: mt76x02: fix endianness warnings in mt76x02_mac.c (Íñigo Huguet) [2043453] - mt76: mt7921: fix survey-dump reporting (Íñigo Huguet) [2043453] - mt76: fix build error implicit enumeration conversion (Íñigo Huguet) [2043453] - mt76: mt7921: enable aspm by default (Íñigo Huguet) [2043453] - mt76: connac: fix mt76_connac_gtk_rekey_tlv usage (Íñigo Huguet) [2043453] - mt76: mt7915: fix calling mt76_wcid_alloc with incorrect parameter (Íñigo Huguet) [2043453] - mt76: mt7915: fix info leak in mt7915_mcu_set_pre_cal() (Íñigo Huguet) [2043453] - mt76: mt7615: fix endianness warning in mt7615_mac_write_txwi (Íñigo Huguet) [2043453] - mt76: mt7921: fix endianness warning in mt7921_update_txs (Íñigo Huguet) [2043453] - mt76: mt7915: fix endianness warning in mt7915_mac_add_txs_skb (Íñigo Huguet) [2043453] - mt76: mt7921: avoid unnecessary spin_lock/spin_unlock in mt7921_mcu_tx_done_event (Íñigo Huguet) [2043453] - mt76: mt7921: fix endianness in mt7921_mcu_tx_done_event (Íñigo Huguet) [2043453] - mwifiex: Try waking the firmware until we get an interrupt (Íñigo Huguet) [2043453] - mwifiex: Read a PCI register after writing the TX ring write pointer (Íñigo Huguet) [2043453] - fq_codel: implement L4S style ce_threshold_ect1 marking (Íñigo Huguet) [2043453] - net: add skb_get_dsfield() helper (Íñigo Huguet) [2043453] - wireless: Remove redundant 'flush_workqueue()' calls (Íñigo Huguet) [2043453] - mt7601u: Remove redundant initialization of variable ret (Íñigo Huguet) [2043453] - rtlwifi: rtl8192ee: Remove redundant initialization of variable version (Íñigo Huguet) [2043453] - ath10k: fix max antenna gain unit (Íñigo Huguet) [2043453] - ath9k: fix an IS_ERR() vs NULL check (Íñigo Huguet) [2043453] - ath11k: Identify DFS channel when sending scan channel list command (Íñigo Huguet) [2043453] - ath9k: support DT ieee80211-freq-limit property to limit channels (Íñigo Huguet) [2043453] - ath11k: Change number of TCL rings to one for QCA6390 (Íñigo Huguet) [2043453] - ath11k: Handle MSI enablement during rmmod and SSR (Íñigo Huguet) [2043453] - ath: dfs_pattern_detector: Fix possible null-pointer dereference in channel_detector_create() (Íñigo Huguet) [2043453] - ath11k: Use kcalloc() instead of kzalloc() (Íñigo Huguet) [2043453] - ath11k: Remove redundant assignment to variable fw_size (Íñigo Huguet) [2043453] - ath11k: fix m68k and xtensa build failure in ath11k_peer_assoc_h_smps() (Íñigo Huguet) [2043453] - ath11k: Fix spelling mistake "incompaitiblity" -> "incompatibility" (Íñigo Huguet) [2043453] - ath11k: Remove unused variable in ath11k_dp_rx_mon_merg_msdus() (Íñigo Huguet) [2043453] - ath9k: Fix potential interrupt storm on queue reset (Íñigo Huguet) [2043453] - ath9k: add option to reset the wifi chip via debugfs (Íñigo Huguet) [2043453] - ath10k: Don't always treat modem stop events as crashes (Íñigo Huguet) [2043453] - rtl8xxxu: Use lower tx rates for the ack packet (Íñigo Huguet) [2043453] - brcmfmac: Add DMI nvram filename quirk for Cyberbook T116 tablet (Íñigo Huguet) [2043453] - rtw88: refine fw_crash debugfs to show non-zero while triggering (Íñigo Huguet) [2043453] - rtw88: fix RX clock gate setting while fifo dump (Íñigo Huguet) [2043453] - net: qrtr: combine nameservice into main module (Íñigo Huguet) [2043453] - ath10k: sdio: Add missing BH locking around napi_schdule() (Íñigo Huguet) [2043453] - ath10k: Fix missing frame timestamp for beacon/probe-resp (Íñigo Huguet) [2043453] - ath10k: high latency fixes for beacon buffer (Íñigo Huguet) [2043453] - ath11k: Change DMA_FROM_DEVICE to DMA_TO_DEVICE when map reinjected packets (Íñigo Huguet) [2043453] - ath11k: support SMPS configuration for 6 GHz (Íñigo Huguet) [2043453] - ath11k: add 6 GHz params in peer assoc command (Íñigo Huguet) [2043453] - ieee80211: Add new A-MPDU factor macro for HE 6 GHz peer caps (Íñigo Huguet) [2043453] - ath11k: indicate to mac80211 scan complete with aborted flag for ATH11K_SCAN_STARTING state (Íñigo Huguet) [2043453] - ath11k: indicate scan complete for scan canceled when scan running (Íñigo Huguet) [2043453] - ath11k: add handler for scan event WMI_SCAN_EVENT_DEQUEUED (Íñigo Huguet) [2043453] - ath11k: add HTT stats support for new stats (Íñigo Huguet) [2043453] - ath11k: Change masking and shifting in htt stats (Íñigo Huguet) [2043453] - ath11k: Remove htt stats fixed size array usage (Íñigo Huguet) [2043453] - ath11k: Replace HTT_DBG_OUT with scnprintf (Íñigo Huguet) [2043453] - ath11k: Rename macro ARRAY_TO_STRING to PRINT_ARRAY_TO_BUF (Íñigo Huguet) [2043453] - ath11k: Fix memory leak in ath11k_qmi_driver_event_work (Íñigo Huguet) [2043453] - ath11k: Fix inaccessible debug registers (Íñigo Huguet) [2043453] - ath11k: Drop MSDU with length error in DP rx path (Íñigo Huguet) [2043453] - ath11k: copy cap info of 6G band under WMI_HOST_WLAN_5G_CAP for WCN6855 (Íñigo Huguet) [2043453] - ath11k: enable 6G channels for WCN6855 (Íñigo Huguet) [2043453] - ath11k: re-enable ht_cap/vht_cap for 5G band for WCN6855 (Íñigo Huguet) [2043453] - ath11k: fix survey dump collection in 6 GHz (Íñigo Huguet) [2043453] - ath11k: fix packet drops due to incorrect 6 GHz freq value in rx status (Íñigo Huguet) [2043453] - ath11k: add channel 2 into 6 GHz channel list (Íñigo Huguet) [2043453] - mac80211: MBSSID support in interface handling (Íñigo Huguet) [2043453] - ath11k: Add wmi peer create conf event in wmi_tlv_event_id (Íñigo Huguet) [2043453] - ath11k: Avoid "No VIF found" warning message (Íñigo Huguet) [2043453] - ath11k: Fix crash during firmware recovery on reo cmd ring access (Íñigo Huguet) [2043453] - ath11k: Assign free_vdev_map value before ieee80211_register_hw (Íñigo Huguet) [2043453] - ath11k: Add vdev start flag to disable hardware encryption (Íñigo Huguet) [2043453] - ath11k: Avoid race during regd updates (Íñigo Huguet) [2043453] - ath11k: Avoid reg rules update during firmware recovery (Íñigo Huguet) [2043453] - ath11k: Update pdev tx and rx firmware stats (Íñigo Huguet) [2043453] - ath11k: Fix pktlog lite rx events (Íñigo Huguet) [2043453] - ath11k: Add support for RX decapsulation offload (Íñigo Huguet) [2043453] - ath11k: fix some sleeping in atomic bugs (Íñigo Huguet) [2043453] - ath11k: qmi: avoid error messages when dma allocation fails (Íñigo Huguet) [2043453] - ath11k: Replace one-element array with flexible-array member (Íñigo Huguet) [2043453] - ath11k: add caldata download support from EEPROM (Íñigo Huguet) [2043453] - ath11k: add caldata file for multiple radios (Íñigo Huguet) [2043453] - ath11k: clean up BDF download functions (Íñigo Huguet) [2043453] - ath11k: use hw_params to access board_size and cal_offset (Íñigo Huguet) [2043453] - ath11k: Wstringop-overread warning (Íñigo Huguet) [2043453] - ath11k: Add spectral scan support for QCN9074 (Íñigo Huguet) [2043453] - ath11k: Fix the spectral minimum FFT bin count (Íñigo Huguet) [2043453] - ath11k: Introduce spectral hw configurable param (Íñigo Huguet) [2043453] - ath11k: Refactor spectral FFT bin size (Íñigo Huguet) [2043453] - ath11k: add support for 80P80 and 160 MHz bandwidth (Íñigo Huguet) [2043453] - ath11k: add support for setting fixed HE rate/gi/ltf (Íñigo Huguet) [2043453] - nl80211: MBSSID and EMA support in AP mode (Íñigo Huguet) [2043453] - nl80211: don't kfree() ERR_PTR() value (Íñigo Huguet) [2043453] - cfg80211: always free wiphy specific regdomain (Íñigo Huguet) [2043453] - mac80211: save transmit power envelope element and power constraint (Íñigo Huguet) [2043453] - mac80211: add parse regulatory info in 6 GHz operation information (Íñigo Huguet) [2043453] - ieee80211: add power type definition for 6 GHz (Íñigo Huguet) [2043453] - mac80211: twt: don't use potentially unaligned pointer (Íñigo Huguet) [2043453] - cfg80211: AP mode driver offload for FILS association crypto (Íñigo Huguet) [2043453] - ath11k: monitor mode clean up to use separate APIs (Íñigo Huguet) [2043453] - ath11k: add separate APIs for monitor mode (Íñigo Huguet) [2043453] - ath11k: move static function ath11k_mac_vdev_setup_sync to top (Íñigo Huguet) [2043453] - rtw88: 8821c: correct 2.4G tx power for type 2/4 NIC (Íñigo Huguet) [2043453] - rtw88: 8821c: support RFE type4 wifi NIC (Íñigo Huguet) [2043453] - brcmfmac: Replace zero-length array with flexible array member (Íñigo Huguet) [2043453] - mac80211_hwsim: enable 6GHz channels (Íñigo Huguet) [2043453] - mac80211: use ieee802_11_parse_elems() in ieee80211_prep_channel() (Íñigo Huguet) [2043453] - nl80211: don't put struct cfg80211_ap_settings on stack (Íñigo Huguet) [2043453] - mac80211: always allocate struct ieee802_11_elems (Íñigo Huguet) [2043453] - mac80211: mlme: find auth challenge directly (Íñigo Huguet) [2043453] - mac80211: move CRC into struct ieee802_11_elems (Íñigo Huguet) [2043453] - mac80211: mesh: clean up rx_bcn_presp API (Íñigo Huguet) [2043453] - mac80211: reduce stack usage in debugfs (Íñigo Huguet) [2043453] - nl80211: prefer struct_size over open coded arithmetic (Íñigo Huguet) [2043453] - mac80211: check hostapd configuration parsing twt requests (Íñigo Huguet) [2043453] - cfg80211: honour V=1 in certificate code generation (Íñigo Huguet) [2043453] - rt2x00: remove duplicate USB device ID (Íñigo Huguet) [2043453] - mwifiex: Fix copy-paste mistake when creating virtual interface (Íñigo Huguet) [2043453] - mwifiex: Properly initialize private structure on interface type changes (Íñigo Huguet) [2043453] - mwifiex: Handle interface type changes from AP to STATION (Íñigo Huguet) [2043453] - mwifiex: Allow switching interface type from P2P_CLIENT to P2P_GO (Íñigo Huguet) [2043453] - mwifiex: Update virtual interface counters right after setting bss_type (Íñigo Huguet) [2043453] - mwifiex: Use helper function for counting interface types (Íñigo Huguet) [2043453] - mwifiex: Run SET_BSS_MODE when changing from P2P to STATION vif-type (Íñigo Huguet) [2043453] - mwifiex: Use function to check whether interface type change is allowed (Íñigo Huguet) [2043453] - mwifiex: Small cleanup for handling virtual interface type changes (Íñigo Huguet) [2043453] - rtw88: move adaptivity mechanism to firmware (Íñigo Huguet) [2043453] - rtw88: support adaptivity for ETSI/JP DFS region (Íñigo Huguet) [2043453] - rtw88: add regulatory strategy by chip type (Íñigo Huguet) [2043453] - rtw88: upgrade rtw_regulatory mechanism and mapping (Íñigo Huguet) [2043453] - brcmfmac: fix incorrect error prints (Íñigo Huguet) [2043453] - ath11k: Align bss_chan_info structure with firmware (Íñigo Huguet) [2043453] - ath11k: add support in survey dump with bss_chan_info (Íñigo Huguet) [2043453] - ath11k: Rename atf_config to flag1 in target_resource_config (Íñigo Huguet) [2043453] - ath11k: fix 4addr multicast packet tx (Íñigo Huguet) [2043453] - ath11k: fix 4-addr tx failure for AP and STA modes (Íñigo Huguet) [2043453] - ath9k: owl-loader: fetch pci init values through nvmem (Íñigo Huguet) [2043453] - ath9k: fetch calibration data via nvmem subsystem (Íñigo Huguet) [2043453] - ath9k: Use tasklet_disable_in_atomic() (Íñigo Huguet) [2043453] - mt76: fix wrong conflict resolution in previous backport (Íñigo Huguet) [2043453] - mac80211: Allow HE operation to be longer than expected. (Íñigo Huguet) [2043453] - revert ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [2043453] - RDMA/mlx5: Delete right entry from MR signature database (Amir Tzin) [1982191] - net/mlx5e: Fix select queue to consider SKBTX_HW_TSTAMP (Amir Tzin) [1982191] - net/mlx5e: Don't update netdev RQs with PTP-RQ (Amir Tzin) [1982191] - net/mlx5e: Fix an error code in mlx5e_arfs_create_tables() (Amir Tzin) [1982191] - net/mlx5e: Fix conflict with HW TS and CQE compression (Amir Tzin) [1982191] - net/mlx5e: Fix HW TS with CQE compression according to profile (Amir Tzin) [1982191] - mlx5e: add add missing BH locking around napi_schdule() (Amir Tzin) [1982191] - net/mlx5: Don't overwrite HCA capabilities when setting MSI-X count (Amir Tzin) [1982191] - net/mlx5: Fix err prints and return when creating termination table (Amir Tzin) [1982191] - RDMA/mlx5: Verify that DM operation is reasonable (Amir Tzin) [1982191] - RDMA/mlx5: Expose private query port (Amir Tzin) [1982191] - RDMA/mlx5: Fix type assignment for ICM DM (Amir Tzin) [1982191] - net/mlx5: DR, Add support for isolate_vl_tc QP (Amir Tzin) [1982191] - net/mlx5: DR, Add support for force-loopback QP (Amir Tzin) [1982191] - net/mlx5: DR, Add support for matching tunnel GTP-U (Amir Tzin) [1982191] - net/mlx5: DR, Set flex parser for TNL_MPLS dynamically (Amir Tzin) [1982191] - net/mlx5: DR, Add support for matching on geneve TLV option (Amir Tzin) [1982191] - net/mlx5: DR, Set STEv0 ICMP flex parser dynamically (Amir Tzin) [1982191] - net/mlx5: DR, Add support for dynamic flex parser (Amir Tzin) [1982191] - net/mlx5: DR, Remove protocol-specific flex_parser_3 definitions (Amir Tzin) [1982191] - net/mlx5: mlx5_ifc updates for flex parser (Amir Tzin) [1982191] - net/mlx5: E-Switch, Improve error messages in term table creation (Amir Tzin) [1982191] - net/mlx5: DR, Rename an argument in dr_rdma_segments (Amir Tzin) [1982191] - net/mlx5e: RX, Add checks for calculated Striding RQ attributes (Amir Tzin) [1982191] - net/mlx5e: Fix possible non-initialized struct usage (Amir Tzin) [1982191] - mlx5: implement ethtool standard stats (Amir Tzin) [1982191] - net/mlx5: Enhance diagnostics info for TX/RX reporters (Amir Tzin) [1982191] - net/mlx5: Add helper to initialize 1PPS (Amir Tzin) [1982191] - net/mlx5e: Add ethtool extended link state (Amir Tzin) [1982191 1982232] - net/mlx5: Add register layout to support extended link state (Amir Tzin) [1982191 1982232] - net/mlx5: Allocate FC bulk structs with kvzalloc() instead of kzalloc() (Amir Tzin) [1982191] - net/mlx5e: Cleanup safe switch channels API by passing params (Amir Tzin) [1982191] - net/mlx5e: Refactor on-the-fly configuration changes (Amir Tzin) [1982191] - net/mlx5e: Use mlx5e_safe_switch_channels when channels are closed (Amir Tzin) [1982191] - net/mlx5e: Allow mlx5e_safe_switch_channels to work with channels closed (Amir Tzin) [1982191] - mlx5: implement ethtool::get_fec_stats (Amir Tzin) [1982191] - net/mlx5e: Fix RQ creation flow for queues which doesn't support XDP (Amir Tzin) [1982191] - net/mlx5: Remove return statement exist at the end of void function (Amir Tzin) [1982191] - net/mlx5: Add a blank line after declarations (Amir Tzin) [1982191] - net/mlx5: DR, Alloc cmd buffer with kvzalloc() instead of kzalloc() (Amir Tzin) [1982191] - net/mlx5: DR, Use variably sized data structures for different actions (Amir Tzin) [1982191] - RDMA/mlx5: Expose UAPI to query DM (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Add support in MEMIC operations (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Add support to MODIFY_MEMIC command (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Re-organize the DM code (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Move all DM logic to separate file (Amir Tzin) [1982191 1926606 1926603] - net/mlx5: Add MEMIC operations related bits (Amir Tzin) [1982191 1926606 1926603] - net/mlx5: Add support for DSFP module EEPROM dumps (Amir Tzin) [1982191 1982233] - net/mlx5: Implement get_module_eeprom_by_page() (Amir Tzin) [1982191 1982233] - net/mlx5: Refactor module EEPROM query (Amir Tzin) [1982191 1982233] - IB/mlx5: Reduce max order of memory allocated for xlt update (Amir Tzin) [1982191] - net/mlx5: Implement sriov_get_vf_total_msix/count() callbacks (Amir Tzin) [1982191 1982230] - net/mlx5: Dynamically assign MSI-X vectors count (Amir Tzin) [1982191 1982230] - net/mlx5: Add dynamic MSI-X capabilities bits (Amir Tzin) [1982191 1982230] - net/mlx5e: Dynamic alloc vlan table for netdev when needed (Amir Tzin) [1982191] - net/mlx5e: Dynamic alloc arfs table for netdev when needed (Amir Tzin) [1982191] - net/mlx5: Use ida_alloc_range() instead of ida_simple_alloc() (Amir Tzin) [1982191] - net/mlx5e: Update ethtool setting of CQE compression (Amir Tzin) [1982191] - net/mlx5e: Allow coexistence of CQE compression and HW TS PTP (Amir Tzin) [1982191] - net/mlx5e: Add PTP Flow Steering support (Amir Tzin) [1982191] - net/mlx5e: Introduce Flow Steering ANY API (Amir Tzin) [1982191] - net/mlx5e: Introduce Flow Steering UDP API (Amir Tzin) [1982191] - net/mlx5e: Cleanup Flow Steering level (Amir Tzin) [1982191] - net/mlx5e: Add PTP RQ to RX reporter (Amir Tzin) [1982191] - net/mlx5e: Refactor RX reporter diagnostics (Amir Tzin) [1982191] - net:mlx5e: Add PTP-TIR and PTP-RQT (Amir Tzin) [1982191] - net/mlx5e: Add PTP-RX statistics (Amir Tzin) [1982191] - net/mlx5e: Add RQ to PTP channel (Amir Tzin) [1982191] - net/mlx5e: Add states to PTP channel (Amir Tzin) [1982191] - RDMA/mlx5: Set ODP caps only if device profile support ODP (Amir Tzin) [1982191] - net/mlx5e: Cleanup PTP (Amir Tzin) [1982191] - net/mlx5e: Generalize PTP implementation (Amir Tzin) [1982191] - net/mlx5e: Generalize direct-TIRs and direct-RQTs API (Amir Tzin) [1982191] - net/mlx5e: Generalize close RQ (Amir Tzin) [1982191] - net/mlx5e: Generalize RQ activation (Amir Tzin) [1982191] - net/mlx5e: Generalize open RQ (Amir Tzin) [1982191] - net/mlx5: Add helper to set time-stamp translator on a queue (Amir Tzin) [1982191] - net/mlx5e: Allow creating mpwqe info without channel (Amir Tzin) [1982191] - net/mlx5e: alloc the correct size for indirection_rqt (Amir Tzin) [1982191] - net: ethernet: indir_table.h is included twice (Amir Tzin) [1982191 1982195] - RDMA/mlx5: Create ODP EQ only when ODP MR is created (Amir Tzin) [1982191] - RDMA/mlx5: Add missing returned error check of mlx5_ib_dereg_mr (Amir Tzin) [1982191] - net/mlx5: Move devlink port from mlx5e priv to mlx5e resources (Amir Tzin) [1982191] - net/mlx5e: Allow to match on ICMP parameters (Amir Tzin) [1982191] - net/mlx5: Display the command index in command mailbox dump (Amir Tzin) [1982191] - net/mlx5e: allocate 'indirection_rqt' buffer dynamically (Amir Tzin) [1982191] - net/mlx5e: Dump ICOSQ WQE descriptor on CQE with error events (Amir Tzin) [1982191] - net/mlx5e: Use net_prefetchw instead of prefetchw in MPWQE TX datapath (Amir Tzin) [1982191] - net/mlx5e: Remove redundant newline in NL_SET_ERR_MSG_MOD (Amir Tzin) [1982191] - net/mlx5: Read congestion counters from all ports when lag is active (Amir Tzin) [1982191] - net/mlx5: remove unneeded semicolon (Amir Tzin) [1982191] - net/mlx5: DR, Remove unneeded rx_decap_l3 function for STEv1 (Amir Tzin) [1982191] - net/mlx5: Use order-0 allocations for EQs (Amir Tzin) [1982191] - net/mlx5: Add IFC bits needed for single FDB mode (Amir Tzin) [1982191] - net/mlx5: E-Switch, Refactor send to vport to be more generic (Amir Tzin) [1982191 1982195] - RDMA/mlx5: Use representor E-Switch when getting netdev and metadata (Amir Tzin) [1982191] - net/mlx5: E-Switch, Add eswitch pointer to each representor (Amir Tzin) [1982191 1982195] - net/mlx5: E-Switch, Add match on vhca id to default send rules (Amir Tzin) [1982191 1982195] - net/mlx5: Remove unused mlx5_core_health member recover_work (Amir Tzin) [1982191] - net/mlx5: simplify the return expression of mlx5_esw_offloads_pair() (Amir Tzin) [1982191 1982195] - net/mlx5: Cleanup prototype warning (Amir Tzin) [1982191] - RDMA/mlx5: Allow larger pages in DevX umem (Amir Tzin) [1982191] - RDMA/mlx5: Rename mlx5_mr_cache_invalidate() to revoke_mr() (Amir Tzin) [1982191] - RDMA/mlx5: Consolidate MR destruction to mlx5_ib_dereg_mr() (Amir Tzin) [1982191] - RDMA/mlx5: Use a union inside mlx5_ib_mr (Amir Tzin) [1982191] - platform/mellanox: mlxbf-tmfifo: Fix a memory barrier issue (Amir Tzin) [2018145] - mmc: dw_mmc-bluefield: : Fix the license information (Amir Tzin) [2018145] - mmc: dw_mmc-bluefield: simplify the probe() function (Amir Tzin) [2018145] - benet: mark device 0xe220 (Lancer) as deprecated (Michal Schmidt) [2054409] - myri10ge: mark as deprecated (Michal Schmidt) [2054409] - liquidio: mark as deprecated, not unmaintained (Michal Schmidt) [2054409] - netxen_nic: remove unmaintained mark, keep deprecated (Michal Schmidt) [2054409] - bnx2: mark as deprecated, not unmaintained (Michal Schmidt) [2054409] - SUNRPC: Don't dereference xprt->snd_task if it's a cookie (Dave Wysochanski) [2046545] - SUNRPC: Add source address/port to rpc_socket* traces (Dave Wysochanski) [2046545] - netfilter: conntrack: re-init state for retransmitted syn-ack (Florian Westphal) [2043093] - netfilter: conntrack: move synack init code to helper (Florian Westphal) [2043093]- ibmvnic: remove unused defines (Diego Domingos) [2047920] - ibmvnic: Update driver return codes (Diego Domingos) [2047920] - ARM: iop32x: disable N2100 PCI parity reporting (Josef Oskera) [2031880] - r8169: fix incorrect mac address assignment (Josef Oskera) [2031880] - r8169: Add device 10ec:8162 to driver r8169 (Josef Oskera) [2031880] - ethernet: r8169: use eth_hw_addr_set() (Josef Oskera) [2031880] - net: phy: realtek: add support for RTL8365MB-VC internal PHYs (Josef Oskera) [2031880] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Josef Oskera) [2031880] - r8169: enable ASPM L0s state (Josef Oskera) [2031880] - r8169: rename rtl_csi_access_enable to rtl_set_aspm_entry_latency (Josef Oskera) [2031880] - r8169: change the L0/L1 entrance latencies for RTL8106e (Josef Oskera) [2031880] - Revert "r8169: avoid link-up interrupt issue on RTL8106e if user enables ASPM" (Josef Oskera) [2031880] - r8169: Avoid duplicate sysfs entry creation error (Josef Oskera) [2031880] - r8169: Avoid memcpy() over-reading of ETH_SS_STATS (Josef Oskera) [2031880] - r8169: avoid link-up interrupt issue on RTL8106e if user enables ASPM (Josef Oskera) [2031880] - net: phy: realtek: net: Fix less than zero comparison of a u16 (Josef Oskera) [2031880] - net: phy: realtek: add delay to fix RXC generation issue (Josef Oskera) [2031880] - net: phy: realtek: add dt property to enable ALDPS mode (Josef Oskera) [2031880] - net: phy: realtek: add dt property to disable CLKOUT clock (Josef Oskera) [2031880] - r8169: Fix fall-through warning for Clang (Josef Oskera) [2031880] - r8169: use KBUILD_MODNAME instead of own module name definition (Josef Oskera) [2031880] - r8169: keep pause settings on interface down/up cycle (Josef Oskera) [2031880] - r8169: add support for pause ethtool ops (Josef Oskera) [2031880] - r8169: use mac-managed PHY PM (Josef Oskera) [2031880] - r8169: remove rtl_hw_start_8168c_3 (Josef Oskera) [2031880] - r8169: add support for ethtool get_ringparam (Josef Oskera) [2031880] - r8169: use lower_32_bits/upper_32_bits macros (Josef Oskera) [2031880] - net: phy: make PHY PM ops a no-op if MAC driver manages PHY PM (Josef Oskera) [2031880] - mm/gup: remove unused get_user_pages_locked() (Chris von Recklinghausen) [2048650] - mm: change lookup_node() to use get_user_pages_fast() (Chris von Recklinghausen) [2048650] - mm/gup: remove unused pin_user_pages_locked() (Chris von Recklinghausen) [2048650] - mm/gup: follow_pfn_pte(): -EEXIST cleanup (Chris von Recklinghausen) [2048650] - mm: fix invalid page pointer returned with FOLL_PIN gups (Chris von Recklinghausen) [2048650] - mm: fix typos in comments (Chris von Recklinghausen) [2048650] - vfio/iommu_type1: replace kfree with kvfree (Alex Williamson) [2046547] - vfio/pci: Fix error return code in vfio_ecap_init() (Alex Williamson) [2046547] - vfio/pci: Add missing range check in vfio_pci_mmap (Alex Williamson) [2046547] - vfio/mdev: Do not allow a mdev_type to have a NULL parent pointer (Alex Williamson) [2046547] - vfio/mdev: Make to_mdev_device() into a static inline (Alex Williamson) [2046547] - vfio/iommu_type1: Mantain a counter for non_pinned_groups (Alex Williamson) [2046547] - vfio/iommu_type1: Fix some sanity checks in detach group (Alex Williamson) [2046547] - vfio/iommu_type1: Populate full dirty when detach non-pinned group (Alex Williamson) [2046547] - vfio/pci: Move dummy_resources_list init in vfio_pci_probe() (Alex Williamson) [2046547] - vfio/virqfd: Drain events from eventfd in virqfd_wakeup() (Alex Williamson) [2046547] - ext4: fix direct I/O read error (Lukas Czerner) [1868258] - usb: xhci: Extend support for runtime power management for AMD's Yellow carp. (Renjith Pananchikkal) [2015775] - usb: xhci: Enable runtime-pm by default on AMD Yellow Carp platform (Renjith Pananchikkal) [2015775] - thunderbolt: Enable retry logic for intra-domain control packets (David Arcari) [2028287] - nvme-fabrics: fix state check in nvmf_ctlr_matches_baseopts() (Gopal Tiwari) [2043755] - smb3: do not error on fsync when readonly (Ronnie Sahlberg) [2037811] - cifs: serialize all mount attempts (Ronnie Sahlberg) [2008434] - ALSA: memalloc: Unify x86 SG-buffer handling (take#3) (Jaroslav Kysela) [2049437] - ALSA: usb-audio: add mapping for MSI MPG X570S Carbon Max Wifi. (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Drop CONFIG_PM ifdefs (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Fix dB level of Bose Revolve+ SoundLink (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Add minimal-mute notion in dB mapping table (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Use int for dB map values (Jaroslav Kysela) [2049437] - ALSA: hda/tegra: Fix Tegra194 HDA reset failure (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Use ALC285_FIXUP_HP_GPIO_LED on another HP laptop (Jaroslav Kysela) [2049437] - ALSA: hda: Add new AlderLake-P variant PCI ID (Jaroslav Kysela) [2049437] - ALSA: hda: Add AlderLake-N PCI ID (Jaroslav Kysela) [2049437] - ALSA: hda: use swap() to make code cleaner (Jaroslav Kysela) [2049437] - ALSA: Fix some typo (Jaroslav Kysela) [2049437] - ALSA: hda/hdmi: Consider ELD is invalid when no SAD is present (Jaroslav Kysela) [2049437] - ALSA: hda: Remove redundant runtime PM calls (Jaroslav Kysela) [2049437] - ALSA: hda: Do disconnect jacks at codec unbind (Jaroslav Kysela) [2049437] - ALSA: hda: intel: More comprehensive PM runtime setup for controller driver (Jaroslav Kysela) [2049437] - ASoC: SOF: Intel: fix build issue related to CODEC_PROBE_ENTRIES (Jaroslav Kysela) [2049437] - ASoC: cs42l42: Report initial jack state (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Re-order quirk entries for Lenovo (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Add quirk for Legion Y9000X 2020 (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Add speaker fixup for some Yoga 15ITL5 devices (Jaroslav Kysela) [2049437] - tools headers UAPI: Sync sound/asound.h with the kernel sources (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2049437] - ASoC: SOF: handle paused streams during system suspend (Jaroslav Kysela) [2049437] - ASoC: SOF: sof-audio: setup sched widgets during pipeline complete step (Jaroslav Kysela) [2049437] - ASoC: SOF: free widgets in sof_tear_down_pipelines() for static pipelines (Jaroslav Kysela) [2049437] - ALSA: hda/cs8409: Fix Jack detection after resume (Jaroslav Kysela) [2049437] - ALSA: hda/cs8409: Increase delay during jack detection (Jaroslav Kysela) [2049437] - ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Master after reboot from Windows (Jaroslav Kysela) [2049437] - ASoC: Intel: catpt: Test dmaengine_submit() result before moving on (Jaroslav Kysela) [2049437] - ASoC: amd: Fix dependency for SPI master (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Drop superfluous '0' in Presonus Studio 1810c's ID (Jaroslav Kysela) [2049437] - ALSA: oss: fix compile error when OSS_DEBUG is enabled (Jaroslav Kysela) [2049437] - ALSA: hda: Make proper use of timecounter (Jaroslav Kysela) [2049437] - ALSA: led: Use restricted type for iface assignment (Jaroslav Kysela) [2049437] - ALSA: hda: Fix potential deadlock at codec unbinding (Jaroslav Kysela) [2049437] - ALSA: hda: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2049437] - ALSA: PCM: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2049437] - ALSA: jack: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2049437] - ASoC: Intel: sof_sdw: fix jack detection on HP Spectre x360 convertible (Jaroslav Kysela) [2049437] - kernel: fork: properly initialize mm->mm_rh in dup_mm() and mm_alloc() (Rafael Aquini) [2047242] - vdpa/mlx5: Fix tracking of current number of VQs (Cindy Lu) [2052849] - vdpa/mlx5: Fix is_index_valid() to refer to features (Cindy Lu) [2052849] - vdpa: Protect vdpa reset with cf_mutex (Cindy Lu) [2052849] - vdpa: Avoid taking cf_mutex lock on get status (Cindy Lu) [2052849] - vdpa/vdpa_sim_net: Report max device capabilities (Cindy Lu) [2052849] - vdpa: Use BIT_ULL for bit operations (Cindy Lu) [2052849] - vdpa/vdpa_sim: Configure max supported virtqueues (Cindy Lu) [2052849] - vdpa/mlx5: Report max device capabilities (Cindy Lu) [2052849] - vdpa: Support reporting max device capabilities (Cindy Lu) [2052849] - vdpa/mlx5: Restore cur_num_vqs in case of failure in change_num_qps() (Cindy Lu) [2052849] - vdpa: Add support for returning device configuration information (Cindy Lu) [2052849] - vdpa/mlx5: Support configuring max data virtqueue (Cindy Lu) [2052849] - vdpa/mlx5: Fix config_attr_mask assignment (Cindy Lu) [2052849] - vdpa: Allow to configure max data virtqueues (Cindy Lu) [2052849] - vdpa: Read device configuration only if FEATURES_OK (Cindy Lu) [2052849] - vdpa: Sync calls set/get config/status with cf_mutex (Cindy Lu) [2052849] - vdpa/mlx5: Distribute RX virtqueues in RQT object (Cindy Lu) [2052849] - vdpa: Provide interface to read driver features (Cindy Lu) [2052849] - vdpa/mlx5: Fix wrong configuration of virtio_version_1_0 (Cindy Lu) [2052849] - vdpa: Mark vdpa_config_ops.get_vq_notification as optional (Cindy Lu) [2052849] - vdpa: Avoid duplicate call to vp_vdpa get_status (Cindy Lu) [2052849] - net/mlx5_vdpa: Offer VIRTIO_NET_F_MTU when setting MTU (Cindy Lu) [2052849] - vdpa: add driver_override support (Cindy Lu) [2052849] - docs: document sysfs ABI for vDPA bus (Cindy Lu) [2052849] - ifcvf/vDPA: fix misuse virtio-net device config size for blk dev (Cindy Lu) [2052849] - Revert "efi/libstub: arm64: Double check image alignment at entry" (Vitaly Kuznetsov) [2046303] - ethtool: ioctl: fix potential NULL deref in ethtool_set_coalesce() (William Zhao) [2046342] - cifs: Do not leak EDEADLK to dgetents64 for STATUS_USER_SESSION_DELETED (Ronnie Sahlberg) [1994393] - cifs: constify pathname arguments in a bunch of helpers (Ronnie Sahlberg) [1994393] - cgroup: Use open-time cgroup namespace for process migration perm checks (Chris von Recklinghausen) [2035766] - cgroup: Allocate cgroup_file_ctx for kernfs_open_file->priv (Chris von Recklinghausen) [2035766] - cgroup: Use open-time credentials for process migraton perm checks (Chris von Recklinghausen) [2035766] - cgroup: make per-cgroup pressure stall tracking configurable (Chris von Recklinghausen) [2035766] - powerpc/idle: Don't corrupt back chain when going idle (Laurent Vivier) [2052793] - powerpc64/idle: Fix SP offsets when saving GPRs (Laurent Vivier) [2052793] - sfc: ef10: implement ethtool::get_fec_stats (Íñigo Huguet) [2042798] - sfc: The RX page_ring is optional (Íñigo Huguet) [2042798] - sfc: Check null pointer of rx_queue->page_ring (Íñigo Huguet) [2042798] - sfc_ef100: potential dereference of null pointer (Íñigo Huguet) [2042798] - sfc: Don't use netif_info before net_device setup (Íñigo Huguet) [2042798] - sfc: Export fibre-specific supported link modes (Íñigo Huguet) [2042798] - sfc: Fix reading non-legacy supported link modes (Íñigo Huguet) [2042798] - ethernet: constify references to netdev->dev_addr in drivers (Íñigo Huguet) [2042798] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Íñigo Huguet) [2042798] - ethernet: use eth_hw_addr_set() (Íñigo Huguet) [2042798] - sfc: last resort fallback for lack of xdp tx queues (Íñigo Huguet) [2042798 1995444] - sfc: fallback for lack of xdp tx queues (Íñigo Huguet) [2042798 1995444] - ext4: fix potential uninitialized access to retval in kmmpd (Lukas Czerner) [2046355] - ext4: fix possible UAF when remounting r/o a mmp-protected file system (Lukas Czerner) [2046355] - ext4: fix memory leak in ext4_fill_super (Lukas Czerner) [2046355] - quota: check block number when reading the block in quota file (Lukas Czerner) [2046999] - quota: correct error number in free_dqentry() (Lukas Czerner) [2046999] - quota: Fix memory leak when handling corrupted quota file (Lukas Czerner) [2046999] - quota: Sanity-check quota file headers on load (Lukas Czerner) [2046999] - quota: clear padding in v2r1_mem2diskdqb() (Lukas Czerner) [2046999] - quota: Check that quota is not dirty before release (Lukas Czerner) [2046999] - quota: fix livelock in dquot_writeback_dquots (Lukas Czerner) [2046999] - ext4: fix e2fsprogs checksum failure for mounted filesystem (Lukas Czerner) [1937180] - ext4: prevent partial update of the extent blocks (Lukas Czerner) [2035877] - ext4: check for inconsistent extents between index and leaf block (Lukas Czerner) [2035877] - ext4: check for out-of-order index extents in ext4_valid_extent_entries() (Lukas Czerner) [2035877] - ext4: avoid trim error on fs with small groups (Lukas Czerner) [2046355] - ext4: fix null-ptr-deref in '__ext4_journal_ensure_credits' (Lukas Czerner) [2046355] - ext4: make sure to reset inode lockdep class when quota enabling fails (Lukas Czerner) [2046355] - ext4: make sure quota gets properly shutdown on error (Lukas Czerner) [2046355] - ext4: Fix BUG_ON in ext4_bread when write quota data (Lukas Czerner) [2046355] - ext4: refresh the ext4_ext_path struct after dropping i_data_sem. (Lukas Czerner) [2046355] - ext4: ensure enough credits in ext4_ext_shift_path_extents (Lukas Czerner) [2046355] - ext4: fix potential infinite loop in ext4_dx_readdir() (Lukas Czerner) [2046355] - ext4: fix loff_t overflow in ext4_max_bitmap_size() (Lukas Czerner) [2046355] - ext4: fix reserved space counter leakage (Lukas Czerner) [2046355] - ext4: fix race writing to an inline_data file while its xattrs are changing (Lukas Czerner) [2046355] - ext4: fix potential htree corruption when growing large_dir directories (Lukas Czerner) [2046355] - ext4: use ext4_grp_locked_error in mb_find_extent (Lukas Czerner) [2046355] - ext4: correct the cache_nr in tracepoint ext4_es_shrink_exit (Lukas Czerner) [2046355] - ext4: remove check for zero nr_to_scan in ext4_es_scan() (Lukas Czerner) [2046355] - ext4: return error code when ext4_fill_flex_info() fails (Lukas Czerner) [2046355] - ext4: cleanup in-core orphan list if ext4_truncate() failed to get a transaction handle (Lukas Czerner) [2046355] - ext4: fix kernel infoleak via ext4_extent_header (Lukas Czerner) [2046355] - ext4: fix memory leak in ext4_fill_super (Lukas Czerner) [2046355] - ext4: fix bug on in ext4_es_cache_extent as ext4_split_extent_at failed (Lukas Czerner) [2046355] - ext4: fix error code in ext4_commit_super (Lukas Czerner) [2046355] - crash_core, vmcoreinfo: append 'SECTION_SIZE_BITS' to vmcoreinfo (Pingfan Liu) [2046631] - arm64/crash_core: Export TCR_EL1.T1SZ in vmcoreinfo (Pingfan Liu) [2046631] - arm64: kernel: arch_crash_save_vmcoreinfo() should depend on CONFIG_CRASH_CORE (Mark Salter) [2046631] - Revert "[arm64] arm64, vmcoreinfo : Append 'MAX_PHYSMEM_BITS' to vmcoreinfo" (Pingfan Liu) [2046631] - crash_core, vmcoreinfo: Append 'MAX_PHYSMEM_BITS' to vmcoreinfo (Pingfan Liu) [2046631] - ibmvnic: don't release napi in __ibmvnic_open() (Gustavo Walbon) [2051793]- EDAC/igen6: Add Intel Alder Lake SoC support (Aristeu Rozanski) [1971965 1783145] - EDAC/igen6: Add Intel Tiger Lake SoC support (Aristeu Rozanski) [1971965 1783145] - EDAC/igen6: Add Intel ICL-NNPI SoC support (Aristeu Rozanski) [1971965 1783145] - EDAC/i10nm: Add support for high bandwidth memory (Aristeu Rozanski) [1971965 1783145] - EDAC/i10nm: Add detection of memory levels for ICX/SPR servers (Aristeu Rozanski) [1971965 1783145] - EDAC/skx_common: Add new ADXL components for 2-level memory (Aristeu Rozanski) [1971965 1783145] - EDAC, skx: Retrieve and print retry_rd_err_log registers (Aristeu Rozanski) [1971965 1783145] - EDAC, skx_common: Refactor so that we initialize "dev" in result of adxl decode. (Aristeu Rozanski) [1971965 1783145] - selinux: parse contexts for mount options early (Scott Mayhew) [1984355] - selinux: try to use preparsed sid before calling parse_sid() (Scott Mayhew) [1984355] - selinux: Fix selinux_sb_mnt_opts_compat() (Scott Mayhew) [1984355] - selinux: access superblock_security_struct in LSM blob way (Scott Mayhew) [1984355] - selinux: minor tweaks to selinux_add_opt() (Scott Mayhew) [1984355] - selinux: fix potential memleak in selinux_add_opt() (Scott Mayhew) [1984355] - selinux: fix sleeping function called from invalid context (Scott Mayhew) [1984355] - LSM: Infrastructure management of the superblock (Scott Mayhew) [1984355] - selinux: drop super_block backpointer from superblock_security_struct (Scott Mayhew) [1984355] - selinux: remove redundant allocation and helper functions (Scott Mayhew) [1984355] - ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [1970036 1988269] - ath11k: add string type to search board data in board-2.bin for WCN6855 (Íñigo Huguet) [1970036 1988269] - firmware: smccc: Fix check for ARCH_SOC_ID not implemented (Vitaly Kuznetsov) [2053450] - bpf, arm64: Use emit_addr_mov_i64() for BPF_PSEUDO_FUNC (Yauheni Kaliuta) [2051789] - bpf/selftests: disable a verifier test for powerpc (Viktor Malik) [2046032] - bpf/selftests: allow disabling verifier tests (Viktor Malik) [2046032] - vfs: check dentry is still valid in get_link() (Ian Kent) [2014846] - xfs: don't expose internal symlink metadata buffers to the vfs (Brian Foster) [2014846] - scsi: vmw_pvscsi: Set residual data length conditionally (Cathy Avery) [2052345] - scsi: mpt3sas: Fix incorrect system timestamp (Tomas Henzl) [2026212] - scsi: mpt3sas: Fix system going into read-only mode (Tomas Henzl) [2026212] - scsi: mpt3sas: Fix kernel panic during drive powercycle test (Tomas Henzl) [2026212] - scsi: mpt3sas: Clean up some inconsistent indenting (Tomas Henzl) [2026212] - scsi: scsi_transport_srp: Don't block target in SRP_PORT_LOST state (Ewan D. Milne) [2028290] - blktrace: switch trace spinlock to a raw spinlock (Wander Lairson Costa) [1905749] - blktrace: Fix uaf in blk_trace access after removing by sysfs (Wander Lairson Costa) [1905749] - blk-wbt: export internal state via debugfs (Ming Lei) [2047313] - platform/x86: ISST: Fix optimization with use of numa (Prarit Bhargava) [2023820] - platform/x86: ISST: Use numa node id for cpu pci dev mapping (Prarit Bhargava) [2023818] - platform/x86: ISST: Optimize CPU to PCI device mapping (Prarit Bhargava) [2023818] - efi/x86: drop task_lock() from efi_switch_mm() (Fernando Pacheco) [2035415] - configs: enable LOGITECH_FF (Benjamin Tissoires) [1945987] - Input: joydev - prevent use of not validated data in JSIOCSBTNMAP ioctl (Benjamin Tissoires) [1974089] - Input: joydev - prevent potential read overflow in ioctl (Benjamin Tissoires) [1974089] - xfs: Fix CIL throttle hang when CIL space used going backwards (Thiago Becker) [2040371] - netfilter: nf_conntrack_netbios_ns: fix helper module alias (Florian Westphal) [2038015] - selftests: nft_concat_range: add test for reload with no element add/del (Florian Westphal) [2046309] - netfilter: fix regression in looped (broad|multi)cast's MAC handling (Florian Westphal) [2046309] - selftests: netfilter: Add correctness test for mac,net set type (Florian Westphal) [2046309] - netfilter: flowtable: fix IPv6 tunnel addr match (Florian Westphal) [2046309] - netfilter: conntrack: don't increment invalid counter on NF_REPEAT (Florian Westphal) [2046309] - netfilter: nft_set_pipapo: allocate pcpu scratch maps on clone (Florian Westphal) [2046309] - netfilter: nft_payload: do not update layer 4 checksum when mangling fragments (Florian Westphal) [2046309] - netfilter: ipvs: Fix reuse connection if RS weight is 0 (Florian Westphal) [2046309] - netfilter: ctnetlink: do not erase error code with EINVAL (Florian Westphal) [2046309] - netfilter: ctnetlink: fix filtering with CTA_TUPLE_REPLY (Florian Westphal) [2046309] - netfilter: nfnetlink_queue: fix OOB when mac header was cleared (Florian Westphal) [2046309] - netfilter: nft_dynset: relax superfluous check on set updates (Florian Westphal) [2046309] - netfilter: use kvmalloc_array to allocate memory for hashtable (Phil Sutter) [2001762] - netfilter: nf_tables: skip netdev events generated on netns removal (Phil Sutter) [2053436] - xfrm: add state hashtable keyed by seq (Sabrina Dubroca) [1926538]- cgroup/cpuset: Fix "suspicious RCU usage" lockdep warning (Waiman Long) [2050418] - cpuset: Fix the bug that subpart_cpus updated wrongly in update_cpumask() (Waiman Long) [2050418] - IB/rdmavt: Validate remote_addr during loopback atomic tests (Kamal Heib) [2033480] - in wb_init, use gfp instead of GFP_KERNEL when allocating bw_dwork (Chris von Recklinghausen) [2046179] - scsi: bnx2fc: Make bnx2fc_recv_frame() mp safe (John Meneghini) [2051691] - scsi: bnx2fc: Flush destroy_work queue before calling bnx2fc_interface_put() (John Meneghini) [1973208] - nvme: drop unused variable ctrl in nvme_setup_cmd (John Meneghini) [2033384] - nvme: increment request genctr on completion (John Meneghini) [2033384] - nvme-pci: Fix abort command id (John Meneghini) [2033384] - nvme: add command id quirk for apple controllers (John Meneghini) [2033384] - nvme: move nvme_multi_css into nvme.h (John Meneghini) [2033384] - nvme: code command_id with a genctr for use-after-free validation (John Meneghini) [2033384] - nvme-pci: limit maximum queue depth to 4095 (John Meneghini) [2033384] - params: lift param_set_uint_minmax to common code (John Meneghini) [2033384] - CI: Enable baseline realtime checks (Veronika Kabatova) - CI: Rename pipelines to include release names (Veronika Kabatova) - sched/pelt: Relax the sync of load_sum with load_avg (Phil Auld) [2037123] - sched/pelt: Relax the sync of runnable_sum with runnable_avg (Phil Auld) [2037123] - sched/pelt: Continue to relax the sync of util_sum with util_avg (Phil Auld) [2037123] - sched/pelt: Relax the sync of util_sum with util_avg (Phil Auld) [2037123] - cifs: fix memory leak of smb3_fs_context_dup::server_hostname (Ronnie Sahlberg) [2044670] - cifs: To match file servers, make sure the server hostname matches (Ronnie Sahlberg) [2044670] - perf/x86/intel/uncore: Fix Intel SPR M3UPI event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Fix Intel SPR M2PCIE event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Fix Intel SPR IIO event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Fix Intel SPR CHA event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Support IMC free-running counters on Sapphire Rapids server (Michael Petlan) [1837402] - perf/x86/intel/uncore: Support IIO free-running counters on Sapphire Rapids server (Michael Petlan) [1837402] - perf/x86/intel/uncore: Factor out snr_uncore_mmio_map() (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add alias PMU name (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server MDF support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server M3UPI support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server UPI support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server M2M support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server IMC support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server PCU support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server M2PCIe support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server IRP support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server IIO support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server CHA support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server framework (Michael Petlan) [1837402] - ovl: fix deadlock in splice write (Miklos Szeredi) [2028998] - selinux: fix NULL-pointer dereference when hashtab allocation fails (Ondrej Mosnacek) [2021467] - selinux: fix double free of cond_list on error paths (Ondrej Mosnacek) [2043605] - ibmvnic: remove unused ->wait_capability (Diego Domingos) [2049368] - ibmvnic: don't spin in tasklet (Diego Domingos) [2049368] - ibmvnic: init ->running_cap_crqs early (Diego Domingos) [2049368] - ibmvnic: Allow extra failures before disabling (Diego Domingos) [2049368] - hpsa: add new messaging (Tomas Henzl) [1801777] - aacraid: add new messaging (Tomas Henzl) [2044365] - Revert "[scsi] Revert "[scsi] aacraid: add removed id table"" (Tomas Henzl) [2044365] - mpt3sas: Add new messaging (Tomas Henzl) [2044366] - Revert "[scsi] mpt*: remove certain deprecated pci-ids" (Tomas Henzl) [2044366] - mptsas: add new messaging (Tomas Henzl) [2044366] - sctp: hold endpoint before calling cb in sctp_transport_lookup_process (Xin Long) [2043822] - sctp: use call_rcu to free endpoint (Xin Long) [2043822] - sctp: move hlist_node and hashent out of sctp_ep_common (Xin Long) [2043822] - net: Use nlmsg_unicast() instead of netlink_unicast() (Xin Long) [2043822] - video: hyperv_fb: Fix validation of screen resolution (Mohammed Gamal) [1952821] - powerpc/pseries: extract host bridge from pci_bus prior to bus removal (Diego Domingos) [2051509] - dm: properly fix redundant bio-based IO accounting (Mike Snitzer) [2051803] - dm: revert partial fix for redundant bio-based IO accounting (Mike Snitzer) [2051803] - block: add bio_start_io_acct_time() to control start_time (Mike Snitzer) [2051803] - block: document iostat changes for disk busy time accounting (Mike Snitzer) [2051803]- tee: optee: Fix incorrect page free bug (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: handle lookup of shm with reference count 0 (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: smc_abi.c: add missing #include (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: isolate smc abi (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: refactor driver with internal callbacks (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: simplify optee_release() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Fix missing devices unregister during optee_remove (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee/optee/shm_pool: fix application of sizeof to pointer (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: Correct inappropriate usage of TEE_SHM_DMA_BUF flag (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: add tee_shm_alloc_kernel_buf() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Clear stale cache entries during initialization (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: fix tee out of memory failure seen during kexec reboot (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Refuse to load the driver under the kdump kernel (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Fix memory leak when failing to register shm pages (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: use export_uuid() to copy client UUID (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: do not check memref size on return from Secure World (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: fix build error caused by recent optee tracepoints feature (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add invoke_fn tracepoints (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: simplify i2c access (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: remove need_resched() before cond_resched() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: sync OP-TEE headers (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: replace might_sleep with cond_resched (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - drivers: optee: fix i2c build issue (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: convert get_user_pages() --> pin_user_pages() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - drivers: optee: allow op-tee to access devices on the i2c bus (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - driver: tee: Handle NULL pointer indication from client (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: enable support for multi-stage bus enumeration (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: use uuid for sysfs driver entry (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Add support for session login client UUID generation (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: enable support to register kernel memory (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove unnecessary NULL check in tee_shm_alloc() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: don't assign shm id for private shms (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove unused tee_shm_priv_alloc() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: tee_shm_op_mmap(): use TEE_SHM_USER_MAPPED (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove redundant teedev in struct tee_shm (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove linked list of struct tee_shm (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Fix multi page dynamic shm pool alloc (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: model OP-TEE as a platform device/driver (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: fix device enumeration error handling (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Fix dynamic shm pool allocations (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee/shm: untag user pointers in tee_shm_register (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add might_sleep for RPC requests (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: allow to work without static shared memory (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: update optee_msg.h and optee_smc.h to dual license (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add missing of_node_put after of_device_is_available (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Fix unsigned comparison with less than zero (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: fix possible error pointer ctx dereferencing (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Initialize some structs using memset instead of braces (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add TEE bus device enumeration support (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: add supp_nowait flag in tee_context struct (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: log message if dynamic shm is enabled (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: add kernel internal client interface (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: take DT status property into account (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: making OPTEE_SHM_NUM_PRIV_PAGES configurable via Kconfig (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - x86/mce: Add Xeon Sapphire Rapids to list of CPUs that support PPIN (David Arcari) [2035286] - regset: kill ->get() (Prarit Bhargava) [2032854] - arm64: switch to ->regset_get() (Prarit Bhargava) [2032854] - arm64: take fetching compat reg out of pt_regs into a new helper (Prarit Bhargava) [2032854] - powerpc: switch to ->regset_get() (Prarit Bhargava) [2032854] - s390: switch to ->regset_get() (Prarit Bhargava) [2032854] - introduction of regset ->get() wrappers, switching ELF coredumps to those (Prarit Bhargava) [2032854] - mm/page_alloc.c: do not warn allocation failure on zone DMA if no managed pages (Baoquan He) [2024011] - dma/pool: create dma atomic pool only if dma zone has managed pages (Baoquan He) [2024011] - mm_zone: add function to check if managed dma zone exists (Baoquan He) [2024011] - tipc: discard MSG_CRYPTO msgs when key_exchange_enabled is not set (Xin Long) [2043825] - tipc: delete the unlikely branch in tipc_aead_encrypt (Xin Long) [2043825] - tipc: check for null after calling kmemdup (Xin Long) [2043825] - tipc: only accept encrypted MSG_CRYPTO msgs (Xin Long) [2043825] - powerpc/pseries: use slab context cpumask allocation in CPU hotplug init (Waiman Long) [2048220] - powerpc/pseries: Fix build error when NUMA=n (Waiman Long) [2048220] - lpfc: Add new messaging (Ewan D. Milne) [1841323] - cpu/hotplug: Cure the cpusets trainwreck (Phil Auld) [1904593] - scsi: ses: Fix unsigned comparison with less than zero (Tomas Henzl) [1995086] - scsi: ses: Retry failed Send/Receive Diagnostic commands (Tomas Henzl) [1995086] - serial: exar: Fix GPIO configuration for Sealevel cards based on XR17V35X (John W. Linville) [2022906] - PCI: vmd: Add indirection layer to vmd irq lists (Scott Wood) [2048202] - redhat/configs: Enable CONFIG_PCI_HYPERV on Aarch64 (Vitaly Kuznetsov) [2024853] - PCI: hv: Add arm64 Hyper-V vPCI support (Vitaly Kuznetsov) [2024853] - PCI: hv: Make the code arch neutral by adding arch specific interfaces (Vitaly Kuznetsov) [2024853] - PCI: hv: Remove unnecessary use of hx (Vitaly Kuznetsov) [2024853] - nvme-rdma: fix possible use-after-free in transport error_recovery work (Chris Leech) [1988361] - nvme-tcp: fix possible use-after-free in transport error_recovery work (Chris Leech) [1988361] - nvme: fix a possible use-after-free in controller reset during load (Chris Leech) [1988361] - ipv6: check return value of ipv6_skip_exthdr (Sabrina Dubroca) [2046234] - selftests: Calculate udpgso segment count without header adjustment (Xin Long) [2044133] - udp: using datalen to cap ipv6 udp max gso segments (Xin Long) [2044133] - inet_diag: fix kernel-infoleak for UDP sockets (Xin Long) [2044133] - udp: using datalen to cap max gso segments (Xin Long) [2044133] - [s390] s390/cpumf: Support for CPU Measurement Facility CSVN 7 (Mete Durlu) [2048980] - [s390] s390/cpumf: Support for CPU Measurement Sampling Facility LS bit (Mete Durlu) [2048980] - tools/power/x86/intel-speed-select: v1.10 release (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Fix uncore memory frequency display (Prarit Bhargava) [2023909] - platform/x86: ISST: Account for increased timeout in some cases (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Add options to force online (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Drop __DATE__ and __TIME__ macros (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: v1.9 release (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Process mailbox read error for core-power (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Increase string size (Prarit Bhargava) [2023909] - qla2xxx: Add new messaging (Ewan D. Milne) [1900072]- platform/x86: amd-pmc: only use callbacks for suspend (David Arcari) [2016039] - platform/x86: amd-pmc: Add support for AMD Smart Trace Buffer (David Arcari) [2016039] - platform/x86: amd-pmc: Simplify error handling and store the pci_dev in amd_pmc_dev structure (David Arcari) [2016039] - platform/x86: amd-pmc: Fix s2idle failures on certain AMD laptops (David Arcari) [2016039] - platform/x86: amd-pmc: Make CONFIG_AMD_PMC depend on RTC_CLASS (David Arcari) [2016039] - platform/x86: amd-pmc: Drop check for valid alarm time (David Arcari) [2016039] - platform/x86: amd-pmc: Downgrade dev_info message to dev_dbg (David Arcari) [2016039] - platform/x86: amd-pmc: fix compilation without CONFIG_RTC_SYSTOHC_DEVICE (David Arcari) [2016039] - platform/x86: amd-pmc: Add special handling for timer based S0i3 wakeup (David Arcari) [2016039] - platform/x86: amd-pmc: adjust arguments for `amd_pmc_send_cmd` (David Arcari) [2016039] - platform/x86: amd-pmc: Add alternative acpi id for PMC controller (David Arcari) [2016039] - platform/x86: amd-pmc: Add a message to print resume time info (David Arcari) [2016039] - platform/x86: amd-pmc: Send command to dump data after clearing OS_HINT (David Arcari) [2016039] - platform/x86: amd-pmc: Fix compilation when CONFIG_DEBUGFS is disabled (David Arcari) [2016039] - platform/x86: amd-pmc: Export Idlemask values based on the APU (David Arcari) [2016039] - platform/x86: amd-pmc: Check s0i3 cycle status (David Arcari) [2016039] - scsi: lpfc: Fix non-recovery of remote ports following an unsolicited LOGO (Dick Kennedy) [2027558] - sch_api: Don't skip qdisc attach on ingress (Davide Caratti) [2044806] - sch_qfq: prevent shift-out-of-bounds in qfq_init_qdisc (Davide Caratti) [2044806] - flow_offload: return EOPNOTSUPP for the unsupported mpls action type (Davide Caratti) [2044806] - selftests: bpf: Less strict size check in sockopt_sk (Felix Maurer) [2025809] - net-zerocopy: Fast return if inq < PAGE_SIZE (Felix Maurer) [2025809] - tcp: Fix sign comparison bug in getsockopt(TCP_ZEROCOPY_RECEIVE) (Felix Maurer) [2025809] - tcp-zerocopy: Ensure excess getsockopt buffer is zeroed (Felix Maurer) [2025809] - tcp-zerocopy: Update returned getsockopt() optlen. (Felix Maurer) [2025809] - tcp-zerocopy: Fix getsockopt buffer size check (Felix Maurer) [2025809] - gre: Don't accidentally set RTO_ONLINK in gre_fill_metadata_dst() (Guillaume Nault) [2046339] - net: fix use-after-free in tw_timer_handler (Guillaume Nault) [2046339] - ALSA: core: Fix SSID quirk lookup for subvendor=0 (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Restore hardware state on runtime PM resume (Jaroslav Kysela) [2003613] - ALSA: RHEL - update kernel configs for RHEL 8.6 (Jaroslav Kysela) [2003613] - ASoC: remove module namespaces (Jaroslav Kysela) [2003613] - ASoC: codecs: rt5682(s): use the older clock API calls, but keep some modern (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Cleanup logging (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Use snd_soc_jack to report jack events (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: convert into a helper library for codec drivers (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Use arizona->dev for runtime-pm (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Move jack-detect variables to struct arizona_priv (Jaroslav Kysela) [2003613] - ASoC/extcon: arizona: Move arizona jack code to sound/soc/codecs/arizona-jack.c (Jaroslav Kysela) [2003613] - extcon: arizona: Always use pm_runtime_get_sync() when we need the device to be awake (Jaroslav Kysela) [2003613] - extcon: arizona: Fix flags parameter to the gpiod_get("wlf,micd-pol") call (Jaroslav Kysela) [2003613] - extcon: arizona: Fix various races on driver unbind (Jaroslav Kysela) [2003613] - extcon: arizona: Fix some issues when HPDET IRQ fires after the jack has been unplugged (Jaroslav Kysela) [2003613] - extcon: arizona: Fix runtime PM imbalance on error (Jaroslav Kysela) [2003613] - extcon: arizona: Factor out microphone and button detection (Jaroslav Kysela) [2003613] - extcon: arizona: Factor out microphone impedance into a function (Jaroslav Kysela) [2003613] - extcon: arizona: Invert logic of check in arizona_hpdet_do_id (Jaroslav Kysela) [2003613] - extcon: arizona: Remove excessive WARN_ON (Jaroslav Kysela) [2003613] - extcon: arizona: Remove unnecessary sets of ACCDET_MODE (Jaroslav Kysela) [2003613] - extcon: arizona: Tidy up transition from mic to headphone detect (Jaroslav Kysela) [2003613] - extcon: arizona: Clear jack status regardless of detection type (Jaroslav Kysela) [2003613] - extcon: arizona: Move pdata extraction to probe (Jaroslav Kysela) [2003613] - extcon: arizona: Make rev A register sequences atomic (Jaroslav Kysela) [2003613] - extcon: arizona: Correct clean up if arizona_identify_headphone fails (Jaroslav Kysela) [2003613] - extcon: arizona: Switch to use device_property_count_u32() (Jaroslav Kysela) [2003613] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Jaroslav Kysela) [2003613] - extcon: arizona: Correct error handling on regmap_update_bits_check (Jaroslav Kysela) [2003613] - extcon: arizona: Disable mic detect if running when driver is removed (Jaroslav Kysela) [2003613] - mfd: arizona: Fix rumtime PM imbalance on error (Jaroslav Kysela) [2003613] - mfd: arizona: Split of_match table into I2C and SPI versions (Jaroslav Kysela) [2003613] - mfd: arizona: Make some symbols static (Jaroslav Kysela) [2003613] - mfd: arizona: Add support for ACPI enumeration of WM5102 connected over SPI (Jaroslav Kysela) [2003613] - mfd: arizona: Add MODULE_SOFTDEP("pre: arizona_ldo1") (Jaroslav Kysela) [2003613] - mfd: arizona: Drop arizona-extcon cells (Jaroslav Kysela) [2003613] - mfd: arizona: Replace arizona_of_get_type() with device_get_match_data() (Jaroslav Kysela) [2003613] - mfd: arizona: Ensure 32k clock is put on driver unbind and error (Jaroslav Kysela) [2003613] - mfd: arizona: Remove BUG_ON usage (Jaroslav Kysela) [2003613] - mfd: arizona: Switch to using devm_gpiod_get() (Jaroslav Kysela) [2003613] - mfd: arizona: Fix undefined behavior (Jaroslav Kysela) [2003613] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jaroslav Kysela) [2003613] - mfd: arizona: Correct calling of runtime_put_sync (Jaroslav Kysela) [2003613] - mfd: arizona: Don't use regmap_read_poll_timeout (Jaroslav Kysela) [2003613] - clkdev: Hold clocks_mutex while iterating clocks list (Jaroslav Kysela) [2003613] - clkdev: add managed clkdev lookup registration (Jaroslav Kysela) [2003613] - genirq: Add IRQF_NO_AUTOEN for request_irq/nmi() (Jaroslav Kysela) [2003613] - ALSA: es1688: Avoid devres management for es1688 object creation (Jaroslav Kysela) [2003613] - ALSA: gus: Fix repeated probes of snd_gus_create() (Jaroslav Kysela) [2003613] - ALSA: x86: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: x86: simplify with sync_stop PCM ops (Jaroslav Kysela) [2003613] - ALSA: x86: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: virtio: Replace zero-length array with flexible-array member (Jaroslav Kysela) [2003613] - ALSA: emux: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: synth: missing check for possible NULL after the call to kstrdup (Jaroslav Kysela) [2003613] - ALSA: synth: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sparc: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ASoC: tegra: Set driver name explicitly (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Use devm_clk_get() (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Correct driver removal order (Jaroslav Kysela) [2003613] - ASoC: tegra20: spdif: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Use devm_clk_get() (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Add system level suspend-resume callbacks (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Add reset control (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Correct driver removal order (Jaroslav Kysela) [2003613] - ASoC: tegra: tegra20_das: align function prototypes (Jaroslav Kysela) [2003613] - ASoC: tegra: tegra20_das: clarify expression (Jaroslav Kysela) [2003613] - ASoC: tegra: remove unneeded semicolon (Jaroslav Kysela) [2003613] - ASoC: tegra: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [2003613] - ASoC: tegra20: ac97: Add reset control (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add support for SoundWire of TGL-H-RVP (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add mutual exclusion between PCH DMIC and RT715 (Jaroslav Kysela) [2003613] - ASoC: codecs: wsa881x: fix return values from kcontrol put (Jaroslav Kysela) [2003613] - ASoc: wm8731: Drop empty spi_driver remove callback (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: channel -> channels rename (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Fix TAS2505/TAS2521 channel count (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Disable irq on slave ports in the remove function (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Fix a double irq free in the remove function (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Fix a memory leak in the error handling path of the probe function (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: make array clocks static, makes object smaller (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Fix TAS2505/TAS2521 processing block selection (Jaroslav Kysela) [2003613] - ASoC: da7218: Drop CONFIG_OF ifdef (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Fix TAS2505 volume controls (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Make aic32x4_remove() return void (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: add support for TAS2505 (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: add type to device private data struct (Jaroslav Kysela) [2003613] - ASoC: tlv320aic31xx: fix reversed bclk/wclk master bits (Jaroslav Kysela) [2003613] - ASoC: tlv320aic31xx: Fix jack detection after suspend (Jaroslav Kysela) [2003613] - ASoC: tlv320aic31xx: Make regmap cache only on probe() (Jaroslav Kysela) [2003613] - ASoC: sigmadsp: Remove the repeated declaration (Jaroslav Kysela) [2003613] - ASoC: rt286: Remove redundant assignment to d_len_code (Jaroslav Kysela) [2003613] - ASoC: codecs: rt1019: clarify expression (Jaroslav Kysela) [2003613] - ASoC: rt1019: Add non_legacy_dai_naming config (Jaroslav Kysela) [2003613] - ASoC: rk3328: fix missing clk_disable_unprepare() on error in rk3328_platform_probe() (Jaroslav Kysela) [2003613] - ASoC: mediatek: mt6359: Fix unexpected error in bind/unbind flow (Jaroslav Kysela) [2003613] - ASoc: codecs: mt6359: remove useless initializations (Jaroslav Kysela) [2003613] - ASoC: mediatek: mt6359: convert to use module_platform_driver (Jaroslav Kysela) [2003613] - ASoC: ics43432: add CMM-4030D-261 support (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Fix return value in hdmi_codec_set_jack() (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Get ELD in before reporting plugged event (Jaroslav Kysela) [2003613] - ASoC: cs53l30: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs43130: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs42l52: Minor tidy up of error paths (Jaroslav Kysela) [2003613] - ASoC: cs42l73: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs4265: Minor tidy up of error paths (Jaroslav Kysela) [2003613] - ASoC: cs35l36: Remove unneeded variable initialisation (Jaroslav Kysela) [2003613] - ASoC: cs35l35: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs35l35: Correct errata handling (Jaroslav Kysela) [2003613] - ASoC: cs35l34: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs35l33: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cirrus: Add helper function for reading the device ID (Jaroslav Kysela) [2003613] - ASoC: cs35l32: Add missing regmap use_single config (Jaroslav Kysela) [2003613] - ASoC: cs35l32: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: adav80x: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: codecs: Fix fall-through warnings for Clang (Jaroslav Kysela) [2003613] - ASoC: codecs: Use fallthrough pseudo-keyword (Jaroslav Kysela) [2003613] - ASoC: ab8500: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: codecs: fix spelling mistake in Kconfig "comunicate" -> "communicate" (Jaroslav Kysela) [2003613] - ASoC: 88pm860x: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: amd: renoir: Remove redundant assignment to pdm_ctrl and pdm_enable and pdm_dma_enable (Jaroslav Kysela) [2003613] - ASoC: amd: add missing break (Jaroslav Kysela) [2003613] - ALSA: sh: Fix compile warning wrt const (Jaroslav Kysela) [2003613] - ALSA: sh: Fix unused variable warnings (Jaroslav Kysela) [2003613] - ALSA: sh: Constify snd_device_ops definitions (Jaroslav Kysela) [2003613] - ALSA: sh: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [2003613] - ALSA: sh: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ALSA: aica: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ALSA: sh: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [2003613] - ALSA: ps3: fix spelling typo of values (Jaroslav Kysela) [2003613] - ALSA: ppc: drop if block with always false condition (Jaroslav Kysela) [2003613] - ALSA: ppc: remove redundant checks in PS3 driver probe (Jaroslav Kysela) [2003613] - ALSA: ppc: fix error return code in snd_pmac_probe() (Jaroslav Kysela) [2003613] - ALSA: ppc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [2003613] - ALSA: ppc: Constify snd_device_ops definitions (Jaroslav Kysela) [2003613] - ALSA: ppc: keywest: remove outdated comment (Jaroslav Kysela) [2003613] - ALSA: poewrmac: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: pcmcia: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: pci: vx222: fix kernel-doc warning (Jaroslav Kysela) [2003613] - ALSA: Remove trailing semicolon in macros (Jaroslav Kysela) [2003613] - ALSA: hda: generic: Remove redundant assignment to dac (Jaroslav Kysela) [2003613] - ALSA: hda: Allow model option to specify PCI SSID alias (Jaroslav Kysela) [2003613] - ALSA: asihpi: fix comment syntax in file headers (Jaroslav Kysela) [2003613] - ALSA: harmony: Drop superfluous address setup (Jaroslav Kysela) [2003613] - ALSA: parisc: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: vx: fix kernel-doc warning (Jaroslav Kysela) [2003613] - ALSA: aloop: Constify ops structs (Jaroslav Kysela) [2003613] - ASoC: SOF: Drop resindex_dma_base, dma_engine, dma_size from sof_dev_desc (Jaroslav Kysela) [2003613] - ALSA: wavefront: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: wavefront: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sscape: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sc6000: Use explicit cast for __iomem pointer (Jaroslav Kysela) [2003613] - ALSA: sc6000: Assign vport directly on card's private_data (Jaroslav Kysela) [2003613] - ALSA: sc6000: Fix incorrect sizeof operator (Jaroslav Kysela) [2003613] - ALSA: sc6000: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sb: Fix fall-through warnings for Clang (Jaroslav Kysela) [2003613] - Revert "ALSA: sb: fix a missing check of snd_ctl_add" (Jaroslav Kysela) [2003613] - ALSA: sb: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sb8: Add a comment note regarding an unused pointer (Jaroslav Kysela) [2003613] - ALSA: sb: Fix potential ABBA deadlock in CSP driver (Jaroslav Kysela) [2003613] - ALSA: sb: Fix potential double-free of CSP mixer elements (Jaroslav Kysela) [2003613] - ALSA: sb: Minor coding style fixes (Jaroslav Kysela) [2003613] - ALSA: sb: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sb: Fix two use after free in snd_sb_qsound_build (Jaroslav Kysela) [2003613] - ALSA: emu8000: Fix a use after free in snd_emu8000_create_mixer (Jaroslav Kysela) [2003613] - ALSA: opti9xx: fix missing { } around an if block (Jaroslav Kysela) [2003613] - ALSA: opti9xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: opti9xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: opl3sa2: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: opl3sa2: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: msnd: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: msnd: Use proper mmap method (Jaroslav Kysela) [2003613] - ALSA: gus: Fix repeated probe for ISA interwave card (Jaroslav Kysela) [2003613] - Revert "ALSA: gus: add a check of the status of snd_ctl_add" (Jaroslav Kysela) [2003613] - ALSA: gus: fix null pointer dereference on pointer block (Jaroslav Kysela) [2003613] - ALSA: gus: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: gus: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: gus: Replace unsafe strcpy() with strscpy() (Jaroslav Kysela) [2003613] - ALSA: galaxy: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: Replace with fallthrough pseudo keyword in the remaining places (Jaroslav Kysela) [2003613] - ALSA: es18xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: es18xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: isa: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: es1688: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: wss: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs423x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs423x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - sound/oss/dmasound: Remove superfluous "break" (Jaroslav Kysela) [2003613] - sound/oss/dmasound: Remove superfluous "break" (Jaroslav Kysela) [2003613] - ALSA: cmi8330: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: isa: Fix error return code in snd_cmi8330_probe() (Jaroslav Kysela) [2003613] - ALSA: cmi8330: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cmi8328: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: azt2320: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: azt2320: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: als100: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: als100: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: adlib: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1848: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1816a: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1816a: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: i2c: tea6330t: Remove redundant initialization of variable err (Jaroslav Kysela) [2003613] - ALSA: i2c: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: hda: intel-sdw-acpi: add missing include files (Jaroslav Kysela) [2003613] - ALSA: Use fallthrough pseudo-keyword (Jaroslav Kysela) [2003613] - ALSA: aoa: remove unnecessary oom message (Jaroslav Kysela) [2003613] - ALSA: arm: Remove unnecessary variables (Jaroslav Kysela) [2003613] - ALSA: ac97: fix PM reference leak in ac97_bus_remove() (Jaroslav Kysela) [2003613] - ALSA: ac97: Constify static struct attribute_group (Jaroslav Kysela) [2003613] - ALSA: virtio: fix kernel-doc (Jaroslav Kysela) [2003613] - ALSA: virtio: use module_virtio_driver() to simplify the code (Jaroslav Kysela) [2003613] - ALSA: virtio: introduce device suspend/resume support (Jaroslav Kysela) [2003613] - ALSA: virtio: introduce PCM channel map support (Jaroslav Kysela) [2003613] - ALSA: virtio: introduce jack support (Jaroslav Kysela) [2003613] - ALSA: virtio: PCM substream operators (Jaroslav Kysela) [2003613] - ALSA: virtio: handling control and I/O messages for the PCM device (Jaroslav Kysela) [2003613] - ALSA: virtio: build PCM devices and substream hardware descriptors (Jaroslav Kysela) [2003613] - ALSA: virtio: handling control messages (Jaroslav Kysela) [2003613] - ALSA: virtio: add virtio sound driver (Jaroslav Kysela) [2003613] - uapi: virtio_ids: add a sound device type ID from OASIS spec (Jaroslav Kysela) [2003613] - ALSA: firewire: Fix C++ style comments in uapi header (Jaroslav Kysela) [2003613] - ALSA: uapi: Fix a C++ style comment in asound.h (Jaroslav Kysela) [2003613] - ASoC: topology: Fix stub for snd_soc_tplg_component_remove() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: indicate dai_fmt if exist (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: indicate missing CPU/Codec numbers for debug (Jaroslav Kysela) [2003613] - ASoC: SOF: dai-intel: add SOF_DAI_INTEL_SSP_CLKCTRL_MCLK/BCLK_ES bits (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: tidyup dev_dbg() to use 1 line (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: tidyup debug info for clock (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Increase maximum DAI links limit to 512 (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: add simple_props_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Use set_jack ops to set jack (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Codec2Codec sample (Multi) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Codec2Codec sample (Single) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add DPCM sample (Multi) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add DPCM sample (Single) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Sample DT for Normal (Nulti) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Sample DT for Normal (Single) (Jaroslav Kysela) [2003613] - ASoC: add Audio Graph Card2 Custom Sample (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2: add Codec2Codec support (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2: add DPCM support (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2: add Multi CPU/Codec support (Jaroslav Kysela) [2003613] - ASoC: add Audio Graph Card2 driver (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: add codec2codec support (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: add asoc_graph_is_ports0() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Fixup CPU endpoint hw_params in a BE<->BE link (Jaroslav Kysela) [2003613] - ASoC: audio-graph: respawn Platform Support (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Avoid over-allocating DLCs (Jaroslav Kysela) [2003613] - ASoC: audio-graph: tidyup graph_parse_node() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: tidyup graph_dai_link_of_dpcm() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_link_init() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_parse_node() (Jaroslav Kysela) [2003613] - ASoC: simple-card: Fix breakage on kontron-sl28-var3-ads2 (Jaroslav Kysela) [2003613] - ASoC: audio-graph: tidyup graph_dai_link_of_dpcm() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_link_init() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_parse_node() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: add graph_link_init() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: add graph_parse_node() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: remove Platform support (Jaroslav Kysela) [2003613] - ASoC: audio-graph: remove unused "node" from graph_parse_mclk_fs() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: remove "audio-graph-card, " preix support (Jaroslav Kysela) [2003613] - ASoC: audio-graph: check ports if exists (Jaroslav Kysela) [2003613] - ASoC: audio-graph: move audio_graph_remove() to simple-card-utils.c (Jaroslav Kysela) [2003613] - ASoC: tegra: Add driver remove() callback (Jaroslav Kysela) [2003613] - ASoC: audio-graph: move audio_graph_card_probe() to simple-card-utils.c (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Allocate link info structure on heap (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Increase maximum number of links to 128 (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Propagate errors on too many links (Jaroslav Kysela) [2003613] - ASoC: audio-graph: use simple_props_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: audio-graph: use asoc_link_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: simple-card: use simple_props_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: simple-card: use asoc_link_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: simple-card: remove unused variable from simple_parse_of() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: tidyup asoc_simple_parse_convert() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: multi support at asoc_simple_canonicalize_cpu/platform() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: care multi DAI at asoc_simple_clean_reference() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: remove asoc_simple_parse_xxx() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: use for_each_prop_xxx() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: remove li->dais/li->conf (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: setup dai_props cpu_dai/codec_dai at initial timing (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: share dummy DAI and reduce memory (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: enable flexible CPU/Codec/Platform (Jaroslav Kysela) [2003613] - ASoC: simple-card: fix possible uninitialized single_cpu local variable (Jaroslav Kysela) [2003613] - ASoC: simple-card: cleanup graph_for_each_link() (Jaroslav Kysela) [2003613] - ASoC: simple-card: count DAI / link numbers as in order (Jaroslav Kysela) [2003613] - ASoC: audio-graph: cleanup graph_for_each_link() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: count DAI / link numbers as in order (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: alloc dai_link information for CPU/Codec/Platform (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils.c: remove old comment (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Do not handle device clock (Jaroslav Kysela) [2003613] - ASoC: generic: simple-card-utils: remove useless assignment (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Fix device module clock (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Rename functions needed for export (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Expose helpers from audio graph (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Expose new members for asoc_simple_priv (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Support empty Codec endpoint (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Identify 'no_pcm' DAI links for DPCM (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Use of_node and DAI for DPCM DAI link names (Jaroslav Kysela) [2003613] - ALSA: memalloc: Drop superfluous snd_dma_buffer_sync() declaration (Jaroslav Kysela) [2003613] - ASoC: SOF: dai: include new flags for DAI_CONFIG (Jaroslav Kysela) [2003613] - ASoC: SOF: dai: mirror group_id definition added in firmware (Jaroslav Kysela) [2003613] - ALSA: core: Use READ_ONCE() / WRITE_ONCE() for power state change (Jaroslav Kysela) [2003613] - ALSA: hda_audio_ext: fix kernel-doc (Jaroslav Kysela) [2003613] - ALSA: make snd_kcontrol_new name a normal string (Jaroslav Kysela) [2003613] - ASoC: constify of_phandle_args in snd_soc_get_dai_name() (Jaroslav Kysela) [2003613] - ASoC: tas2770: Fix setting of high sample rates (Jaroslav Kysela) [2003613] - ASoC: rt5682: fix the wrong jack type detected (Jaroslav Kysela) [2003613] - ASoC: tegra: Restore headphones jack name on Nyan Big (Jaroslav Kysela) [2003613] - ASoC: tegra: Add DAPM switches for headphones and mic jack (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: pci-tgl: add new ADL-P variant (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: pci-tgl: add ADL-N support (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Retry codec probing if it fails (Jaroslav Kysela) [2003613] - ASoC: amd: fix uninitialized variable in snd_acp6x_probe() (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Fix crash due to out of scope stack vars (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix crash due to out of scope stack vars (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for ADX (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for AMX (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for Mixer (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for MVC (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for SFC (Jaroslav Kysela) [2003613] - ASoC: tegra: Balance runtime PM count (Jaroslav Kysela) [2003613] - ASoC: SOF: hda: reset DAI widget before reconfiguring it (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Set the max SPI speed for the whole device (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add entry for ESSX8336 on CML (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: Set mach->id field on comp_ids matches (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in Mixer (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in ADX (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in AMX (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in SFC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in MVC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in AHUB (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in DSPK (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in DMIC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in I2S (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in ADMAIF (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in MVC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in SFC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in DSPK (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in DMIC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in I2S (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in ADMAIF (Jaroslav Kysela) [2003613] - ASoC: topology: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2003613] - ASoC: SOF: build compression interface into snd_sof.ko (Jaroslav Kysela) [2003613] - ASoC: rt5682: Re-detect the combo jack after resuming (Jaroslav Kysela) [2003613] - ASoC: rt5682: Avoid the unexpected IRQ event during going to suspend (Jaroslav Kysela) [2003613] - ASoC: rt1011: revert 'I2S Reference' to SOC_ENUM_EXT (Jaroslav Kysela) [2003613] - ASoC: rt9120: Add the compatibility with rt9120s (Jaroslav Kysela) [2003613] - ASoC: rt9120: Fix clock auto sync issue when fs is the multiple of 48 (Jaroslav Kysela) [2003613] - ASoC: rt9120: Update internal ocp level to the correct value (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B12 product (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add SKU 0B29 SoundWire configuration (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B29 product (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add SKU 0B13 SoundWire configuration (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B13 product (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B11 product (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B00 and 0B01 products (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add SKU 0AF3 SoundWire configuration (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0AF3 product (Jaroslav Kysela) [2003613] - ASoC: DAPM: Cover regression by kctl change notification fix (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: fix hotplug when only codec is suspended (Jaroslav Kysela) [2003613] - ASoC: SOF:control: Fix variable type in snd_sof_refresh_control() (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Change monitor widgets to siggens (Jaroslav Kysela) [2003613] - ASoC: tlv320aic3x: Make aic3x_remove() return void (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: use const for all uses of snd_soc_acpi_codecs (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi-cht: shrink tables using compatible IDs (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi-byt: shrink tables using compatible IDs (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: use comp_ids to enumerate rt5682s (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: detect codec variant in probe function (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: add comp_ids field for machine driver matching (Jaroslav Kysela) [2003613] - ASoC: Stop dummy from overriding hwparams (Jaroslav Kysela) [2003613] - ASoC: topology: Change topology device to card device (Jaroslav Kysela) [2003613] - ASoC: topology: Use correct device for prints (Jaroslav Kysela) [2003613] - ASoC: topology: Check for dapm widget completeness (Jaroslav Kysela) [2003613] - ASoC: topology: Add header payload_size verification (Jaroslav Kysela) [2003613] - ASoC: core: Remove invalid snd_soc_component_set_jack call (Jaroslav Kysela) [2003613] - ASoC: amd: acp: select CONFIG_SND_SOC_ACPI (Jaroslav Kysela) [2003613] - ASoC: Intel: glk_rt5682_max98357a: support ALC5682I-VS codec (Jaroslav Kysela) [2003613] - ASoC: es8316: add support for ESSX8336 ACPI _HID (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct configuring of switch inversion from ts-inv (Jaroslav Kysela) [2003613] - ASoC: fix unmet dependencies on GPIOLIB for SND_SOC_DMIC (Jaroslav Kysela) [2003613] - ASoC: amd: acp: fix Kconfig dependencies (Jaroslav Kysela) [2003613] - ASoC: rt5682-i2c: Use devm_clk_get_optional for optional clock (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add entry for ESSX8336 on JSL (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Fix return value check in acp_machine_select() (Jaroslav Kysela) [2003613] - ASoC: max98520: add max98520 audio amplifier driver (Jaroslav Kysela) [2003613] - ASoC: nau8821: clarify out-of-bounds check (Jaroslav Kysela) [2003613] - ASoC: nau8821: fix kernel-doc (Jaroslav Kysela) [2003613] - ASoC: rt5682s: use 'static' qualifier (Jaroslav Kysela) [2003613] - ASoC: topology: handle endianness warning (Jaroslav Kysela) [2003613] - ASoC: amd: acp: SND_SOC_AMD_ACP_COMMON should depend on X86 && PCI (Jaroslav Kysela) [2003613] - ASoC: amd: acp: SND_SOC_AMD_{LEGACY_MACH,SOF_MACH} should depend on X86 && PCI && I2C (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Wrap AMD Audio ACP components in SND_SOC_AMD_ACP_COMMON (Jaroslav Kysela) [2003613] - ASoC: cs42l42: free_irq() before powering-down on probe() fail (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Reset and power-down on remove() and failed probe() (Jaroslav Kysela) [2003613] - ASoC: nau8825: add clock management for power saving (Jaroslav Kysela) [2003613] - ASoC: nau8825: add set_jack coponment support (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Prevent NULL pointer deref in interrupt handler (Jaroslav Kysela) [2003613] - ASoC: wm8962: Convert to devm_clk_get_optional() (Jaroslav Kysela) [2003613] - ASoC: fix unmet dependency on GPIOLIB for SND_SOC_MAX98357A (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Make cs35l41_remove() return void (Jaroslav Kysela) [2003613] - ASoC: tegra: Set default card name for Trimslice (Jaroslav Kysela) [2003613] - ASoC: tegra: Restore AC97 support (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add acp_machine struct for renoir platform. (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Downsizing the DAC volume scale (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Remove unused runtime_suspend/runtime_resume callbacks (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for ACPI table match entry (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Use device_property API instead of of_property (Jaroslav Kysela) [2003613] - ASoC: Intel: Move soc_intel_is_foo() helpers to a generic header (Jaroslav Kysela) [2003613] - ASoC: amd: enable Yellow Carp platform machine driver build (Jaroslav Kysela) [2003613] - ASoC: amd: add YC machine driver using dmic (Jaroslav Kysela) [2003613] - ASoC: amd: create platform device for acp6x machine driver (Jaroslav Kysela) [2003613] - ASoC: amd: enable Yellow carp acp6x drivers build (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pdm driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pci driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pdm driver dma ops (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x irq handler (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pdm platform driver (Jaroslav Kysela) [2003613] - ASoC: amd: add platform devices for acp6x pdm driver and dmic driver (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x init/de-init functions (Jaroslav Kysela) [2003613] - ASoC: amd: add Yellow Carp ACP PCI driver (Jaroslav Kysela) [2003613] - ASoC: amd: add Yellow Carp ACP6x IP register header (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add support for RT5682-VS codec (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add support for Maxim amplifier codec (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add SOF audio support on Chrome board (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add legacy sound card support for Chrome audio (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add generic machine driver support for ACP cards (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add callback for machine driver on ACP (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add I2S support on Renoir platform (Jaroslav Kysela) [2003613] - ASoC: amd: Add common framework to support I2S on ACP SOC (Jaroslav Kysela) [2003613] - ASoC: soc-core: tidyup empty function (Jaroslav Kysela) [2003613] - ASoC: soc-component: add snd_soc_component_is_codec() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: tidyup soc_pcm_hw_clean() - step2 (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: tidyup soc_pcm_hw_clean() - step1 (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Always enable TS_PLUG and TS_UNPLUG interrupts (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix WARN in remove() if running without an interrupt (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Mark OSC_SWITCH_STATUS register volatile (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Set correct SRC MCLK (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Allow time for HP/ADC to power-up after enable (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Use PLL for SCLK > 12.288MHz (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't claim to support 192k (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Defer probe if request_threaded_irq() returns EPROBE_DEFER (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't set defaults for volatile registers (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct some register default values (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Always configure both ASP TX channels (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't reconfigure the PLL while it is running (Jaroslav Kysela) [2003613] - ASoC: soc-component: improve error reporting for register access (Jaroslav Kysela) [2003613] - ASoC: amd: enable vangogh platform machine driver build (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh machine driver (Jaroslav Kysela) [2003613] - ASoc: amd: create platform device for VG machine driver (Jaroslav Kysela) [2003613] - ASoC: test-component: add Test Component for Sound debug/test (Jaroslav Kysela) [2003613] - ASoC: rt5682: fix a little pop while playback (Jaroslav Kysela) [2003613] - ASoC: rt1011: Fix 'I2S Reference' enum control (Jaroslav Kysela) [2003613] - ASoC: rt9120: Add rt9210 audio amplifier support (Jaroslav Kysela) [2003613] - ASoC: amd: vangogh: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [2003613] - ASoC: rt9120: Drop rt9210 audio amplifier support (Jaroslav Kysela) [2003613] - ASoC: rt1011: Fix 'I2S Reference' enum control caused error (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Ensure 0dB full scale volume is used for headsets (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: Utilize dev_err_probe() to avoid log saturation (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: use devm_clk_get_optional() for mclk (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: Use temporary variable for struct device (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: switch to using devm_fwnode_gpiod_get() (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: Get platform data via dev_get_platdata() (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Utilize dev_err_probe() to avoid log saturation (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: use devm_clk_get_optional() for mclk (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Use temporary variable for struct device (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Get platform data via dev_get_platdata() (Jaroslav Kysela) [2003613] - ASoC: amd: Kconfig: Select fch clock support with machine driver (Jaroslav Kysela) [2003613] - ASoC: soc-core: fix null-ptr-deref in snd_soc_del_component_unlocked() (Jaroslav Kysela) [2003613] - ASoC: SOF: prepare code to allocate IPC messages in fw_ready (Jaroslav Kysela) [2003613] - ASoC: rt9120: Add rt9210 audio amplifier support (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: restore mixer functionality (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Fix hp pop produced immediately after resuming (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce fragment elapsed notification API (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Use newly introduced generic IPC stream ops (Jaroslav Kysela) [2003613] - ASoC: SOF: Make Intel IPC stream ops generic (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce snd_sof_mailbox_read / snd_sof_mailbox_write callbacks (Jaroslav Kysela) [2003613] - ASoC: SOF: pipelines: Harmonize all functions to use struct snd_sof_dev (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: do not power down primary core during topology removal (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Dump registers and stack when SOF_DBG_DUMP_REGS is set (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-loader: Drop SOF_DBG_DUMP_REGS flag from dbg_dump calls (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Drop SOF_DBG_DUMP_REGS flag when firmware start fails (Jaroslav Kysela) [2003613] - ASoC: SOF: core: Clean up snd_sof_get_status() prints (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: hda: Drop 'error' prefix from error dump functions (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce macro to set the firmware state (Jaroslav Kysela) [2003613] - ASoC: SOF: ops: Force DSP panic dumps to be printed (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Re-enable dumps after successful IPC tx (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Print out the fw_state along with the DSP dump (Jaroslav Kysela) [2003613] - ASoC: SOF: Drop SOF_DBG_DUMP_FORCE_ERR_LEVEL and sof_dev_dbg_or_err (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: hda-loader: Use snd_sof_dsp_dbg_dump() for DSP dump (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Add SOF_DBG_DUMP_OPTIONAL flag for DSP dumping (Jaroslav Kysela) [2003613] - ASoC: SOF: debug/ops: Move the IPC and DSP dump functions out from the header (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: atom: No need to do a DSP dump in atom_run() (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Print the DSP dump if boot fails (Jaroslav Kysela) [2003613] - ASoC: SOF: Print the dbg_dump and ipc_dump once to reduce kernel log noise (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc and dsp dump: Add markers for better visibility (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Swap the dsp_dump and ipc_dump sequence for fw_exception (Jaroslav Kysela) [2003613] - ASoC: SOF: core: debug: force all processing on primary core (Jaroslav Kysela) [2003613] - ASoC: max98927: Handle reset gpio when probing i2c (Jaroslav Kysela) [2003613] - ASoC: DAPM: Fix missing kctl change notifications (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Utilize dev_err_probe() to avoid log saturation (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Switch to use gpiod_get_optional() (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Use temporary variable for struct device (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Get platform data via dev_get_platdata() (Jaroslav Kysela) [2003613] - ASoC: SOF: OF: Add fw_path and tplg_path parameters (Jaroslav Kysela) [2003613] - ASoC: amd: acp-rt5645: Constify static snd_soc_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: return error if sof_connect_dai_widget() fails (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: allow for dynamic pipelines override for debug (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: show clks_control value in dynamic debug (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-dai: improve SSP DAI handling for dynamic pipelines (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: add new flags for DAI_CONFIG (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add missing quirk for Dell SKU 0A45 (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add missing quirk for TGL SDCA single amp (Jaroslav Kysela) [2003613] - ASoC: Intel: add machine driver for SOF+ES8336 (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: apl/glk/tgl: add entry for devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ASoC: Intel: cht_bsw_nau8824: Set card.components string (Jaroslav Kysela) [2003613] - ASoC: nau8824: Add a nau8824_components() helper (Jaroslav Kysela) [2003613] - ASoC: nau8824: Add DMI quirk mechanism for active-high jack-detect (Jaroslav Kysela) [2003613] - ASoC: nau8824: Fix NAU8824_JACK_LOGIC define (Jaroslav Kysela) [2003613] - ASoC: rt5651: Use IRQF_NO_AUTOEN when requesting the IRQ (Jaroslav Kysela) [2003613] - ASoC: es8316: Use IRQF_NO_AUTOEN when requesting the IRQ (Jaroslav Kysela) [2003613] - ASoC: nau8821: new driver (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: Add kernel parameter for topology verification (Jaroslav Kysela) [2003613] - ASoC: SOF: Add support for dynamic pipelines (Jaroslav Kysela) [2003613] - treewide: Use fallthrough pseudo-keyword (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: make sure DAI widget is set up before IPC (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce widget use_count (Jaroslav Kysela) [2003613] - ASoC: SOF: Don't set up widgets during topology parsing (Jaroslav Kysela) [2003613] - ASoC: SOF: restore kcontrols for widget during set up (Jaroslav Kysela) [2003613] - ASoC: SOF: Add new fields to snd_sof_route (Jaroslav Kysela) [2003613] - AsoC: dapm: export a couple of functions (Jaroslav Kysela) [2003613] - ASoC: SOF: sof-audio: add helpers for widgets, kcontrols and dai config set up (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: Add new token for dynamic pipeline (Jaroslav Kysela) [2003613] - ASoC: SOF: control: Add access field in struct snd_sof_control (Jaroslav Kysela) [2003613] - ASoC: topology: change the complete op in snd_soc_tplg_ops to return int (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Fix HP noise caused by SAR mode switch when the system resumes (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Enable ASRC auto-disable to fix pop during jack plug-in while playback (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: Add support for max98360a speaker amp (Jaroslav Kysela) [2003613] - ASoC: tegra: Constify static snd_soc_ops (Jaroslav Kysela) [2003613] - ASoC: rt5682: move clk related code to rt5682_i2c_probe (Jaroslav Kysela) [2003613] - ASoC: rt5682: Use clk_hw based APIs for registration (Jaroslav Kysela) [2003613] - ASoC: rt5682: Drop usage of __clk_get_name() (Jaroslav Kysela) [2003613] - ASoC: SOF: Change SND_SOC_SOF_TOPLEVEL from config to menuconfig (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Revise the macro RT5682S_PLLB_SRC_MASK (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Use dev_dbg instead of pr_debug (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Remove the volatile SW reset register from reg_default (Jaroslav Kysela) [2003613] - ASoC: nau8824: Fix headphone vs headset, button-press detection no longer working (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: update platform device name for Maxim amplifier (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Make the error prints consistent in tx_wait_done() (Jaroslav Kysela) [2003613] - ASoC: SOF: prefix some terse and cryptic dev_dbg() with __func__ (Jaroslav Kysela) [2003613] - ASoC: SOF: add error handling to snd_sof_ipc_msg_data() (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: add header file for ops (Jaroslav Kysela) [2003613] - ASoC: SOF: pm: fix a stale comment (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-stream: Print stream name on STREAM_SD_OFFSET timeout (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-dai: fix potential locking issue (Jaroslav Kysela) [2003613] - ASoC: ak4458: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: ak5558: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: dwc-i2s: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ak4671: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: alc5623: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: bcm: Convert to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: cpcap: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: codecs: Fix spelling mistake "Unsupport" -> "Unsupported" (Jaroslav Kysela) [2003613] - ASoC: ad193x: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: tegra: Constify static snd_soc_dai_ops structs (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Use two thresholds and increased wait time for manual type detection (Jaroslav Kysela) [2003613] - ASoC: adau1977: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau17x1: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau1701: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau1373: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau1372: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ad1836: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ep93xx: Convert to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: samsung: add missing "fallthrough;" (Jaroslav Kysela) [2003613] - ASoC: ak4642: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Use correct version to initialize Class H (Jaroslav Kysela) [2003613] - ASoC: alc5632: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: ak4104: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ak4118: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: zl38060: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: cs4341: Add SPI device ID table (Jaroslav Kysela) [2003613] - ASoC: pcm179x: Add missing entries SPI to device ID table (Jaroslav Kysela) [2003613] - ASoC: pl1022_rdk: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: pl1022_ds: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: mpc8610_hpcd: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: imx-sgtl5000: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: imx-es8328: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: imx-audmix: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl_sai: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl-mqs: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl-esai: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl-audmix: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: eureka-tlv320: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: cros_ec_codec: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: pcm512x: Mend accesses to the I2S_1 and I2S_2 registers (Jaroslav Kysela) [2003613] - ASoC: codecs: max98390: simplify getting the adapter of a client (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: SOF: Remove struct sof_ops_table and sof_get_ops() macro (Jaroslav Kysela) [2003613] - ASoC: rt5682s: make rt5682s_aif2_dai_ops and rt5682s_soc_component_dev (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based Mixer driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based ADX driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based AMX driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based SFC driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based MVC driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add routes for few AHUB modules (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: Don't reconnect an already active BE (Jaroslav Kysela) [2003613] - ASoC: compress/component: Use module_get_when_open/put_when_close for cstream (Jaroslav Kysela) [2003613] - ASoC: soc-component: Convert the mark_module to void* (Jaroslav Kysela) [2003613] - ASoC: SOF: Rename sof_arch_ops to dsp_arch_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Remove redundant error check from sof_ipc_tx_message_unlocked (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Print 0x prefix for errors in ipc_trace/stream_message() (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Clarify the parameter name for ipc_trace_message() (Jaroslav Kysela) [2003613] - ASoC: SOF: trace: Omit error print when waking up trace sleepers (Jaroslav Kysela) [2003613] - misc: cs35l41: Remove unused pdn variable (Jaroslav Kysela) [2003613] - ASoC: SOF: imx8m: add SAI1 info (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Minor fix all errors reported by checkpatch.pl script (Jaroslav Kysela) [2003613] - ASoC: SOF: core: Move probe work related code under a single if () branch (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Implement Manual Type detection as fallback (Jaroslav Kysela) [2003613] - ASoC: SOF: sof-probes: Correct the function names used for snd_soc_cdai_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Rename hda-compress.c to hda-probes.c (Jaroslav Kysela) [2003613] - ASoC: SOF: probe: Merge and clean up the probe and compress files (Jaroslav Kysela) [2003613] - ASoC: SOF: compress: move and export sof_probe_compr_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: pcm: Remove non existent CONFIG_SND_SOC_SOF_COMPRESS reference (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Add probe message logging to ipc_log_header() (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Re-phrase the missing firmware error to avoid duplication (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: release_firmware() on load failure to avoid batching (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: No need to export the snd_sof_debugfs_io_item() (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Use the generic ops for region debugfs handling (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Provide debugfs_add_region_item ops for core (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Provide debugfs_add_region_item ops for core (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Add generic API and ops for DSP regions (Jaroslav Kysela) [2003613] - ASoC: SOF: core: Do not use 'bar' as parameter for block_read/write (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: No need to export snd_sof_fw_parse_ext_data() (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Do not initialize the snd_sof_dsp_ops.read64 (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Remove snd_sof_dsp_mailbox_init() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: bdw: Set the mailbox offset directly in bdw_probe (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: imx8m: Bar index is only valid for IRAM and SRAM types (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: imx8: Bar index is only valid for IRAM and SRAM types (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Fix a bunch of trivial code formating/style issues (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Fixup the error messages (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Don't overwrite returned error code (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Combine adjacent register writes (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Use regmap_read_poll_timeout to wait for OTP boot (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Fix use of an uninitialised variable (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: load_firmware callback is mandatory, treat it like that (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Relocate inline definitions from hda.h to hda.c for sdw (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Remove boot_firmware skl and iccmax_icl declarations (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-dsp: Declare locally used functions as static (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: Do no initialize resindex_dma_base (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: support jsl_rt5682s_mx98360a board (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: support jsl_rt5682s_rt1015 board (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: support jsl_rt5682s_rt1015p board (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: support ALC5682I-VS codec (Jaroslav Kysela) [2003613] - ASoC: SOF: Fix DSP oops stack dump output contents (Jaroslav Kysela) [2003613] - ASoC: pcm5102a: increase rate from 192k to 384k (Jaroslav Kysela) [2003613] - ASoC: rt1011: add i2s reference control for rt1011 (Jaroslav Kysela) [2003613] - ASoC: SOF: Handle control change notification from firmware (Jaroslav Kysela) [2003613] - ASoC: SOF: control: fix a typo in put operations for kcontrol (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Add driver for ALC5682I-VS codec (Jaroslav Kysela) [2003613] - ASoC: SOF: core: allow module parameter to override dma trace Kconfig (Jaroslav Kysela) [2003613] - ASoC: soc-topology: Move template info print soc_tplg_dapm_widget_create() (Jaroslav Kysela) [2003613] - ASoC: amd: acp: declare and add prefix to 'bt_uart_enable' symbol (Jaroslav Kysela) [2003613] - ASoC: cs35l41: CS35L41 Boosted Smart Amplifier (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: tag SoundWire BEs as non-atomic (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: Fix CONFIG_SND_SOC_SDW_MOCKUP select (Jaroslav Kysela) [2003613] - ASoC: rt5682: fix headset background noise when S3 state (Jaroslav Kysela) [2003613] - ASoC: Revert PCM trigger changes (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: test refcount before triggering (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: protect BE dailink state changes in trigger (Jaroslav Kysela) [2003613] - ASoC: dwc: Get IRQ optionally (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix the vol+ button detection issue (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Make rt5640_jack_gpio/rt5640_jack2_gpio static (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: remove duplicate include (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: move common ATOM stuff to module (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: byt: prepare split between Baytrail and Merrifield (Jaroslav Kysela) [2003613] - ASoC: rt1015: remove possible unused variable `bclk_ms' (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Mark hp_elitepad_1000g2_jack?_check functions static (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Select first entry for singular pipe config arrays (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Properly configure modules with generic extension (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Support modules with generic extension (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Support multiple format configs (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Simplify m_state for loadable modules (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Fix passing loadable flag for module (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Fix module configuration for KPB and MIXER (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Fix module resource and format selection (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Select proper format for NHLT blob (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Leave data as is when invoking TLV IPCs (Jaroslav Kysela) [2003613] - ASoC: Intel: kbl_da7219_max98927: Fix format selection for max98373 (Jaroslav Kysela) [2003613] - ASoC: intel: atom: Revert PCM buffer address setup workaround again (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add support for HP Elite Pad 1000G2 jack-detect (Jaroslav Kysela) [2003613] - ASoC: Intel: bytct_rt5640: Add a separate "Headset Mic 2" DAPM pin for the mic on the 2nd jack (Jaroslav Kysela) [2003613] - ASoC: rt5640: Add rt5640_set_ovcd_params() helper (Jaroslav Kysela) [2003613] - ASoC: rt5640: Add optional hp_det_gpio parameter to rt5640_detect_headset() (Jaroslav Kysela) [2003613] - ASoC: rt5640: Delay requesting IRQ until the machine-drv calls set_jack (Jaroslav Kysela) [2003613] - ASoC: rt5640: Move rt5640_disable_jack_detect() up in the rt5640.c file (Jaroslav Kysela) [2003613] - ASoC: intel: atom: Fix breakage for PCM buffer address setup (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Use cfg-lineout:2 in the components string (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Fix incorrect usage of of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Fix incorrect usage of of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Use of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Use of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: soc-ac97: cleanup cppcheck warning (Jaroslav Kysela) [2003613] - ASoC: soc-component: cleanup cppcheck warning at snd_soc_pcm_component_pm_runtime_get() (Jaroslav Kysela) [2003613] - ASoC: soc-jack: cleanup cppcheck warning for CONFIG_GPIOLIB (Jaroslav Kysela) [2003613] - ASoC: soc-jack: cleanup cppcheck warning at snd_soc_jack_report() (Jaroslav Kysela) [2003613] - ASoC: soc-dai: cleanup cppcheck warning at snd_soc_pcm_dai_new() (Jaroslav Kysela) [2003613] - ASoC: soc-dai: cleanup cppcheck warning at snd_soc_dai_link_set_capabilities() (Jaroslav Kysela) [2003613] - ASoC: soc-generic-dmaengine-pcm: cleanup cppcheck warning at dmaengine_copy_user() (Jaroslav Kysela) [2003613] - ASoC: soc-generic-dmaengine-pcm: cleanup cppcheck warning at dmaengine_pcm_new() (Jaroslav Kysela) [2003613] - ASoC: soc-generic-dmaengine-pcm: cleanup cppcheck warning at dmaengine_pcm_hw_params() (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw_rt711*: keep codec device reference until remove (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: pass card information to init/exit functions (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: get codec device with ACPI instead of bus search (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: handle errors with acpi_dev_get_first_match_dev() (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: harden codec property handling (Jaroslav Kysela) [2003613] - ASoC: rt5682: Remove unused variable in rt5682_i2c_remove() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: make DMI L1 selection more robust (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: simplify logic for DMI_L1 handling (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-stream: remove always true condition (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Kconfig: clarify DMI L1 option description (Jaroslav Kysela) [2003613] - ASoC: rt5682: Properly turn off regulators if wrong device ID (Jaroslav Kysela) [2003613] - ASoC: rt5682: Implement remove callback (Jaroslav Kysela) [2003613] - ASoC: rt5682: Disable irq on shutdown (Jaroslav Kysela) [2003613] - ASoC: rt5682: Adjust headset volume button threshold again (Jaroslav Kysela) [2003613] - ASoC: Intel: Fix platform ID matching (Jaroslav Kysela) [2003613] - ASoC: rt1015p: add new acpi id and comapatible id (Jaroslav Kysela) [2003613] - ASoC: max98390: Add support change dsm param name (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Update module authors (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Assume 24-bit samples are in 32-bit slots (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Validate dai_set_sysclk() frequency (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add PLL configuration for 44.1kHz/16-bit (Jaroslav Kysela) [2003613] - ASoC: rt5640: Silence warning message about missing interrupt (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix mono playback (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Constrain sample rate to prevent illegal SCLK (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix LRCLK frame start edge (Jaroslav Kysela) [2003613] - ASoC: cs42l42: PLL must be running when changing MCLK_SRC_SEL (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for set_jack calls (Jaroslav Kysela) [2003613] - ASoC: mt6359-accdet.c: remove useless assignments (Jaroslav Kysela) [2003613] - ASoC: max98090: remove duplicate status reads and useless assignmment (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at soc_dapm_dai_stream_event() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_new_controls() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_weak_routes() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_add_routes() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_del_route() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_seq_run() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_seq_check_event() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_new_dai_link() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_new_pga() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_set_mixer_path_status() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_connect_mux() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_wcache_lookup() (Jaroslav Kysela) [2003613] - ASoC: amd: vangogh: Drop superfluous mmap callback (Jaroslav Kysela) [2003613] - ASoC: sprd: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: qcom: qdsp6: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: mpc5200: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: fsl_dma: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: fsl_asrc_dma: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: tegra: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: fsl: imx-pcm-fiq: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: bcm: Use managed PCM buffer allocation (Jaroslav Kysela) [2003613] - ALSA: pxa2xx: Use managed PCM buffer allocation (Jaroslav Kysela) [2003613] - ASoC: rt5514: make array div static const, makes object smaller (Jaroslav Kysela) [2003613] - ASoC: codecs: ad193x: add support for 96kHz and 192kHz playback rates (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_put_xr_sx() (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_get_xr_sx() (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_limit_volume() (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_put_volsw_sx() (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw_max98373: remove useless inits (Jaroslav Kysela) [2003613] - ASoC: Intel: update sof_pcm512x quirks (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Use DMI string to search for adl_mx98373_rt5682 variant (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add quirk for Dell XPS 9710 (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Remove duplicate control for WNF filter frequency (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix inversion of ADC Notch Switch control (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-ipc: fix reply size checking (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Kconfig: fix SoundWire dependencies (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Fix HP ElitePad 1000 G2 quirk (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add support for a second headset mic input (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add support for a second headphones output (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add a byt_rt5640_get_codec_dai() helper (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add line-out support (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Move "Platform Clock" routes to the maps for the matching in-/output (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: add snd_sof_dsp_check_sdw_irq ops (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: move sof_intel_dsp_desc() forward (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: hda: remove HDA_DSP_REG_SNDW_WAKE_STS definition (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: add sdw_shim/alh_base to sof_intel_dsp_desc (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at snd_soc_find_dai_link() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_kcontrol_elems_load() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_dapm_widget_elems_load() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_dai_elems_load() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_process_headers() (Jaroslav Kysela) [2003613] - ASoC: amd: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - soundwire: add flag to ignore all command/control for mockup devices (Jaroslav Kysela) [2003613] - ASoC: nau8824: Fix open coded prefix handling (Jaroslav Kysela) [2003613] - ASoC: uniphier: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - ASoC: xilinx: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - ASoC: intel: atom: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - ASoC: intel: skylake: Drop superfluous mmap callback (Jaroslav Kysela) [2003613] - ASoC: amd: Drop superfluous mmap callbacks (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix bclk calculation for mono (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't allow SND_SOC_DAIFMT_LEFT_J (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct definition of ADC Volume control (Jaroslav Kysela) [2003613] - ASoC: v253_init: eliminate pointer to string (Jaroslav Kysela) [2003613] - ASoC: samsung: Constify static snd_soc_ops (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_of_parse_audio_routing() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_of_parse_audio_simple_widgets() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_add_controls() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_unregister_component() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_daifmt_parse_format() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_get_dai_name() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_set_dmi_name() (Jaroslav Kysela) [2003613] - ASoC: Intel: Fix spelling contraction "cant" -> "can't" (Jaroslav Kysela) [2003613] - ASoC: component: Remove misplaced prefix handling in pin control functions (Jaroslav Kysela) [2003613] - ASoC: amd: fix an IS_ERR() vs NULL bug in probe (Jaroslav Kysela) [2003613] - ASoC: rt5682: enable SAR ADC power saving mode during suspend (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at dpcm_runtime_setup_be_chan() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at dpcm_be_is_active() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at soc_get_playback_capture() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at soc_pcm_components_close() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at soc_pcm_apply_msb() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: enforce exclusion between HDaudio and SoundWire (Jaroslav Kysela) [2003613] - ASoC: topology: Select SND_DYNAMIC_MINORS (Jaroslav Kysela) [2003613] - ASoC: rt1015: Remove unnecessary flush work on rt1015 driver (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_da7219_mx98360a: fail to initialize soundcard (Jaroslav Kysela) [2003613] - ASoC: amd: Use dev_probe_err helper (Jaroslav Kysela) [2003613] - ASoC: amd: Don't show messages about deferred probing by default (Jaroslav Kysela) [2003613] - ASoC: amd: enable stop_dma_first flag for cz_dai_7219_98357 dai link (Jaroslav Kysela) [2003613] - ASoC: amd: enable vangogh acp5x driver build (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh i2s dma driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh pci driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh i2s dai driver ops (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh i2s controller driver (Jaroslav Kysela) [2003613] - ASoC: amd: add ACP5x pcm dma driver ops (Jaroslav Kysela) [2003613] - ASoC: amd: irq handler changes for ACP5x PCM dma driver (Jaroslav Kysela) [2003613] - ASoC: amd: add ACP5x PCM platform driver (Jaroslav Kysela) [2003613] - ASoC: amd: create acp5x platform devices (Jaroslav Kysela) [2003613] - ASoc: amd: add acp5x init/de-init functions (Jaroslav Kysela) [2003613] - ASoC: amd: add Vangogh ACP PCI driver (Jaroslav Kysela) [2003613] - ASoC: amd: add Vangogh ACP5x IP register header (Jaroslav Kysela) [2003613] - ASoC: amd: renoir: Run hibernation callbacks (Jaroslav Kysela) [2003613] - ASoC: rt5682: Adjust headset volume button threshold (Jaroslav Kysela) [2003613] - ASOC: Intel: sof_sdw: add quirk for Intel 'Bishop County' NUC M15 (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix the issue of garbled recording after powerd_dbus_suspend (Jaroslav Kysela) [2003613] - ASoC: amd: reverse stop sequence for stoneyridge platform (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: add a flag to reverse the stop sequence (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: sof_sdw: add SoundWire mockup codecs for tests (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: tgl: add table for SoundWire mockup devices (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: cnl: add table for SoundWire mockup devices (Jaroslav Kysela) [2003613] - ASoC: codecs: add SoundWire mockup device support (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: update quirk for jack detection in ADL RVP (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: include rt711.h for RT711 JD mode (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: extends SOF_RT711_JDSRC to 4 bits (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: code refactor for max98360a (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: code refactor for max98357a (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: Enable Bluetooth offload on tgl and adl (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: add support for jsl_cs4242_mx98360a (Jaroslav Kysela) [2003613] - ASoC: Intel: maxim-common: support max98360a (Jaroslav Kysela) [2003613] - ASoC: Intel: maxim-common: support max98357a (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: support arbitrary DAI link sequence (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Update ADL descriptor to use ACPI power states (Jaroslav Kysela) [2003613] - ASoC: rt5631: Fix regcache sync errors on resume (Jaroslav Kysela) [2003613] - ASoC: amd: fix spelling mistakes (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: use helper function to get bclk frequency (Jaroslav Kysela) [2003613] - ASoC: SOF: add a helper to get topology configured bclk (Jaroslav Kysela) [2003613] - ASoC: tegra: Use ADMAIF component for DMA allocations (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: fix xrun issue on platform with max98373 (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra: mark runtime-pm functions as __maybe_unused (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Correct suspend-resume callbacks (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Reset global variable (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Switch to use reset-bulk API (Jaroslav Kysela) [2003613] - ASoC: tegra: ahub: Reset hardware properly (Jaroslav Kysela) [2003613] - ASoC: tegra: ahub: Use clk_bulk helpers (Jaroslav Kysela) [2003613] - ASoC: tegra: ahub: Add missing resets (Jaroslav Kysela) [2003613] - ASoC: tegra: tegra210_admaif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra20: spdif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: simple-card: Fill in driver name (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Add missing of_node_put() in imx8_probe() (Jaroslav Kysela) [2003613] - ASoC: Intel: skl_hda_dsp_generic: Update Kconfig documentation (Jaroslav Kysela) [2003613] - ASoC: Intel: use MODULE_DEVICE_TABLE with platform_device_id tables (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add ull suffix for SoundWire _ADR values (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: fix signed/unsigned warning (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_da7219_max98373: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: kbl_da7219_max98357a: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: glk_rt5682_max98357a: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: shrink platform_id names below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: remove hdac-hdmi support (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: use mach data for ADL RVP DMIC count (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix a NULL vs IS_ERR() check (Jaroslav Kysela) [2003613] - ASoC: rt711: add two jack detection modes (Jaroslav Kysela) [2003613] - ASoC: samsung: s3c24xx-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: samsung: s3c2412-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: samsung: pcm: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: samsung: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: soc-core: remove snd_soc_of_parse_daifmt() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: switch to use snd_soc_daifmt_parse_format/clock_provider() (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_daifmt_parse_format/clock_provider() (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_daifmt_clock_provider_fliped() (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_daifmt_clock_provider_from_bitmap() (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: rt5682-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: rt711-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: rt700-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: fsi: fix spelling mistake (Jaroslav Kysela) [2003613] - ASoC: Intel: bdw-rt5677: remove unnecessary oom message (Jaroslav Kysela) [2003613] - ASoC: spear: spdif_out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: sprd: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: soc-core: Fix the error return code in snd_soc_of_parse_audio_routing() (Jaroslav Kysela) [2003613] - ASoC: sti: sti_uniperif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: stm32: spdifrx: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: stm32: sai: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: stm32: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: make hdmi_codec_controls static (Jaroslav Kysela) [2003613] - ASoC: rockchip: spdif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: rockchip: pdm: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: rockchip: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct definition of CS42L42_ADC_PDN_MASK (Jaroslav Kysela) [2003613] - ASoC: hisilicon: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: jz4740-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-spdif-out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-spdif-in: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-parallel-out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-i2s-out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-i2s-in: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: dwc: dwc-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra: Squash utils into common machine driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Specify components string for each card (Jaroslav Kysela) [2003613] - ASoC: tegra: Unify ASoC machine drivers (Jaroslav Kysela) [2003613] - ASoC: tegra: SND_SOC_TEGRA_AUDIO_GRAPH_CARD should depend on SND_SOC_TEGRA (Jaroslav Kysela) [2003613] - ASoC: tegra20-spdif: remove "default m" (Jaroslav Kysela) [2003613] - ASoC: tegra: Add audio graph based card driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Set driver_name=tegra for all machine drivers (Jaroslav Kysela) [2003613] - ASoC: rt5640: Make codec selectable (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Add a prepare hook (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Add iec958 controls (Jaroslav Kysela) [2003613] - ASoC: rt5645: Avoid upgrading static warnings to errors (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Rework to support more controls (Jaroslav Kysela) [2003613] - ASoC: soc-core: don't use discriminatory terms on snd_soc_runtime_get_dai_fmt() (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca: handle mbq_regmap in rt711_sdca_io_init (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca-sdw: add readable for SDW_SDCA_CTL() registers (Jaroslav Kysela) [2003613] - ASoC: rt5682-sdw: set regcache_cache_only false before reading RT5682_DEVICE_ID (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix a problem with error handling in the io init function of the soundwire (Jaroslav Kysela) [2003613] - ASoC: rt715-sdca: fix clock stop prepare timeout issue (Jaroslav Kysela) [2003613] - ASoC: rt715-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt715-sdca-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt711-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt700-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt5682-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt1316-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt1308-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: max98373-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: max98373-sdw: add missing memory allocation check (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: fsi: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: pcm3168a: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: ak4613: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_runtime_get_dai_fmt() (Jaroslav Kysela) [2003613] - ASoC: soc-core: move snd_soc_runtime_set_dai_fmt() to upside (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2003613] - mfd: arizona: Allow building arizona MFD-core as module (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: pci-tgl: add ADL-M support (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: don't print ROM status if cl_dsp_init() fails (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: clean up hda_dsp_dump() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Constify sof_probe_compressed_ops (Jaroslav Kysela) [2003613] - ASoC: wm5110: Constify static struct snd_compress_ops (Jaroslav Kysela) [2003613] - ASoC: wm5102: Constify static struct snd_compress_ops (Jaroslav Kysela) [2003613] - ASoC: cs47125: Constify static struct snd_compress_ops (Jaroslav Kysela) [2003613] - ASoC: cs42l52: use DEVICE_ATTR_WO macro (Jaroslav Kysela) [2003613] - ASoC: cs35l3x: Use neutral language in amp drivers (Jaroslav Kysela) [2003613] - ASoC: cs43130: Use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2003613] - ASoC: wm8962: Use DEVICE_ATTR_WO macro (Jaroslav Kysela) [2003613] - ASoC: cs42l56: use DEVICE_ATTR_WO macro (Jaroslav Kysela) [2003613] - ASoC: tlv320aic26: use DEVICE_ATTR_RW macro (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Check jack status before reporting button events (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for 2400000 Bit clock (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for 2304000 Bit clock (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix 1536000 Bit Clock instability (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add quirk support for Brya and BT-offload (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add SOF_RT715_DAI_ID_FIX for AlderLake (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: remove .nonatomic for BE dailinks (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add support for Bluetooth offload (Jaroslav Kysela) [2003613] - ASoC: Intel: common: Add entries for sdw codecs in ADL match table (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add entries for i2s machines in ADL match table (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Remove conditions against CONFIG_PCI (Jaroslav Kysela) [2003613] - ASoC: SOF: ops: don't return void value (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: fix assignment to use le32_to_cpu (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Use snd_sof_dsp_block_read() instead sof_block_read() (Jaroslav Kysela) [2003613] - ASoC: SOF: ops: print out the polling register (Jaroslav Kysela) [2003613] - ASoC: SOF: pci: No need to cast second time to save the desc (Jaroslav Kysela) [2003613] - ASoC: SOF: Check desc->ops directly in acpi/pci/of probe functions (Jaroslav Kysela) [2003613] - ASoC: topology: Fix using uninitialized pointer (Jaroslav Kysela) [2003613] - ASoC: soc-dai: fix up hw params only if it is needed (Jaroslav Kysela) [2003613] - ASoC: soc-core: use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2003613] - ASoC: topology: Add support for multiple kcontrol types to a widget (Jaroslav Kysela) [2003613] - ASoC: intel/boards: add missing MODULE_DEVICE_TABLE (Jaroslav Kysela) [2003613] - ASoC: cs43130: handle errors in cs43130_probe() properly (Jaroslav Kysela) [2003613] - Revert "ASoC: cs43130: fix a NULL pointer dereference" (Jaroslav Kysela) [2003613] - ASoC: cs42l42: make HSBIAS_SENSE_EN optional (Jaroslav Kysela) [2003613] - ASoC: wm2200: remove include of wmfw.h (Jaroslav Kysela) [2003613] - ASoC: wm_adsp: mark more data structures with the const qualifier (Jaroslav Kysela) [2003613] - ASoC: Intel: bxt_da7219_max98357a: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: shrink platform id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: add sof-cs42l42 machine driver (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: create sof-maxim-common module (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: handle hda-dsp-common as a module (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: add support for adl boards in sof-rt5682 (Jaroslav Kysela) [2003613] - ASoC: Intel: Boards: tgl_max98373: Add BT offload support (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: fix index used in inner loop (Jaroslav Kysela) [2003613] - ALSA: fireworks: add support for Loud Onyx 1200f quirk (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU Track 16 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU Traveler mk3 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: remove TODO for interaction with userspace about control message (Jaroslav Kysela) [2003613] - ALSA: oxfw: fix functional regression for Mackie Onyx 1640i in v5.14 or later (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: export meter information to userspace as float value (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: refine parser for meter information in register DSP models (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix null pointer dereference when polling hwdep character device (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: notify event for parameter change in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: queue event for parameter change in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add ioctl command to read cached parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for input parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for line input parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for output parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for mixer output parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for mixer source parameters in register-DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add ioctl command to read cached hardware meter (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add message parser for meter information in command DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add message parser to gather meter information in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix truncated bytes in message tracepoints (Jaroslav Kysela) [2003613] - ALSA: oxfw: fix transmission method for Loud models based on OXFW971 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU 896HD (Jaroslav Kysela) [2003613] - ALSA: oxfw: fix functioal regression for silence in Apogee Duet FireWire (Jaroslav Kysela) [2003613] - ALSA: bebob: correct duplicated entries with TerraTec OUI (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: Fix 'amdtp_domain_start()' when no AMDTP_OUT_STREAM stream is found (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix register handling for 896 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix register handling for 828 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: use macro instead of magic number for clock source in v3 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: code refactoring for source detection of sampling clock in v3 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: code refactoring for packet format detection in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: use macro instead of magic number for clock source in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for AES/EBU clock source in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: code refactoring for detection of clock source in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix detection for S/PDIF source on optical interface in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: bebob: add support for ToneWeal FW66 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix rx packet format at higher rate for MOTU 828 mk3 Hybrid (Jaroslav Kysela) [2003613] - ALSA: bebob: fix rx packet format for Yamaha GO44/GO46, Terratec Phase 24/x24 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix stream format for MOTU 8pre FireWire (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU 896 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU 828 (Jaroslav Kysela) [2003613] - ALSA: bebob: Fix bit flag quirk constants (Jaroslav Kysela) [2003613] - ALSA: firewire: fill Kconfig with entries for devices based on DICE ASICs (Jaroslav Kysela) [2003613] - ALSA: bebob: correct device entries for Phonic Helix Board and FireFly series (Jaroslav Kysela) [2003613] - ALSA: bebob: code refactoring for M-Audio models (Jaroslav Kysela) [2003613] - ALSA: bebob: correct device entry for Acoustic Reality eAR Master One, Eroica, Figaro, and Ciaccona (Jaroslav Kysela) [2003613] - ALSA: bebob: correct device entry for Mackie D.2 FireWire option card (Jaroslav Kysela) [2003613] - ALSA: fireworks: fulfil device entries (Jaroslav Kysela) [2003613] - ALSA: bebob: fulfil device entries (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: replace in_interrupt() with in_softirq() (Jaroslav Kysela) [2003613] - ALSA: bebob: code refactoring for model-dependent quirks (Jaroslav Kysela) [2003613] - ALSA: bebob: delete workaround for protocol version 3 (Jaroslav Kysela) [2003613] - ALSA: bebob: dismiss sleep after breaking connections (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: obsolete workqueue for period update (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: operate for period elapse event in process context (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: delete unused kernel API (Jaroslav Kysela) [2003613] - ALSA: fireface: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-tascam: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-digi00x: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: dice: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: oxfw: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: fireworks: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: bebob: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for hybrid model of MOTU Ultralite mk3 (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: remove useless operations for kernel preemption (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: fix error codes for allocation failure (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix error return code in snd_motu_stream_reserve_duplex() (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: sequence replay for source packet header (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: cache event ticks in source packet header per data block (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: use macro for magic numbers relevant to IEC 61883-1 (Jaroslav Kysela) [2003613] - ALSA: bebob: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: dice: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: dice: wait just for NOTIFY_CLOCK_ACCEPTED after GLOBAL_CLOCK_SELECT operation (Jaroslav Kysela) [2003613] - ALSA: fireface: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: firewire-tascam: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: firewire-digi00x: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: oxfw: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: fireworks: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: fireworks: delete SYTMATCH clock source (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: support NO_PERIOD_WAKEUP in ALSA PCM runtime (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: transfer rx packets on-the-fly when replaying (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: replay sequence of incoming packets for outgoing packets (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: add replay target to cache sequence of packet (Jaroslav Kysela) [2003613] - ALSA: bebob: distinguish M-Audio ProFire Lightbridge quirk (Jaroslav Kysela) [2003613] - ALSA: bebob: cancel switching connection order (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: obsolete callbacked member (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: drop initial NODATA or empty packet (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for transfer delay (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for generation of data block sequence (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for generation of syt sequence (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for generation of packet descriptors (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: pool sequence of packet in IT context independently (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: add flag to unaware of syt in CIP header (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: Fix uninitialized variable err issue (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: change waking up timing to process packets (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: start processing content of packet at the same cycle in several IT contexts (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring to start several IT/IR contexts (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: skip initial packets instead of scheduling IR context (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: start processing content of packet at the same cycle in several IR contexts (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for selection of IT context header length (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for calculation of context payload (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for size of CIP header (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: insert descriptor for skipped cycle (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: check cycle continuity (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for check of CIP header about payload size (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for parser of IR context header (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for helper function to compute OHCI 1394 cycle (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for sequence descriptor' (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: handle the case that empty isochronous packet payload for CIP (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring to refer the same frame count per period in domain structure (Jaroslav Kysela) [2003613] - ALSA: oxfw: add quirk flag for blocking transmission method (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring for wrong_dbs quirk (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for jumbo payload quirk (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring for jumbo-payload quirk in OXFW970 (Jaroslav Kysela) [2003613] - ALSA: oxfw: add comment for the type of ASICs (Jaroslav Kysela) [2003613] - ALSA: oxfw: add explicit device entry for Loud Technologies Mackie Onyx Sattelite (Jaroslav Kysela) [2003613] - ALSA: oxfw: add explicit device entry for Loud Technologies Tapco Link.FireWire 4x6 (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring to detect mackie models (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring for existent device entry with specifier_id and version (Jaroslav Kysela) [2003613] - ALSA: firewire-lib/motu: use int type for the value of bitwise OR with enumerator-constant (Jaroslav Kysela) [2003613] - Revert "ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro" (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix quirk for Clevo NJ51CU (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: Disable silent stream on GLK (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add new alc285-hp-amp-init model (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Amp init fixup for HP ZBook 15 G6 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - Add headset Mic support for Lenovo ALC897 platform (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix quirk for TongFang PHxTxX1 (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: fix HDA codec entry table order for ADL-P (Jaroslav Kysela) [2003613] - ALSA: hda: Add Intel DG2 PCI ID and HDMI codec vid (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Set PMSG_ON earlier inside cs8409 driver (Jaroslav Kysela) [2003613] - ALSA: ctxfi: Fix out-of-range access (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix LED on HP ProBook 435 G7 (Jaroslav Kysela) [2003613] - ALSA: cmipci: Drop stale variable assignment (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for ASRock NUC Box 1100 (Jaroslav Kysela) [2003613] - ALSA: hda: fix general protection fault in azx_runtime_idle (Jaroslav Kysela) [2003613] - ALSA: hda: Free card instance properly at probe errors (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for HP EliteBook 840 G7 mute LED (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for ASUS UX550VE (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add a quirk for Acer Spin SP513-54N (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Headset fixup for Clevo NH77HJQ (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for Clevo PC70HS (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add a quirk for HP OMEN 15 mute LED (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix mic mute LED for the HP Spectre x360 14 (Jaroslav Kysela) [2003613] - ALSA: ISA: not for M68K (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fixes HP Spectre x360 15-eb1xxx speakers (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for Clevo PC50HS (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix the mic type detection issue for ASUS G551JW (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix for quirk to enable speaker output on the Lenovo 13s Gen2 (Jaroslav Kysela) [2003613] - ALSA: hda: intel: Allow repeatedly probing on codec configuration errors (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for TongFang PHxTxX1 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - ALC236 headset MIC recording issue (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for Clevo X170KM-G (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Complete partial device name to avoid ambiguity (Jaroslav Kysela) [2003613] - ALSA: hda - Enable headphone mic on Dell Latitude laptops with ALC3254 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Enable 4-speaker output for Dell Precision 5560 laptop (Jaroslav Kysela) [2003613] - ALSA: hda: Use position buffer for SKL+ again (Jaroslav Kysela) [2003613] - ALSA: hda: Reduce udelay() at SKL+ position reporting (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Setup Dolphin Headset Mic as Phantom Jack (Jaroslav Kysela) [2003613] - ALSA: pcxhr: "fix" PCXHR_REG_TO_PORT definition (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Quirks to enable speaker output for Lenovo Legion 7i 15IMHG05, Yoga 7i 14ITL5/15ITL5, and 13s Gen2 laptops. (Jaroslav Kysela) [2003613] - Revert "ALSA: hda: Drop workaround for a hang at shutdown again" (Jaroslav Kysela) [2003613] - ALSA: vx222: fix null-ptr-deref (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Initialize Codec only in init fixup. (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Ensure Type Detection is only run on startup when necessary (Jaroslav Kysela) [2003613] - ALSA: hda: Disable runtime resume at shutdown (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup (Jaroslav Kysela) [2003613] - ALSA: hda: Code refactoring snd_hda_pick_fixup() (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Workaround for conflicting SSID on ASUS ROG Strix G17 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Limit mic boost on HP ProBook 445 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/analog - Sink ad198x_shutup() and shuffle CONFIG_PM guards (Jaroslav Kysela) [2003613] - ALSA: hda/sigmatel - Sink stac_shutup() into stac_suspend() (Jaroslav Kysela) [2003613] - ALSA: hda: Drop workaround for a hang at shutdown again (Jaroslav Kysela) [2003613] - ALSA: hda/via: Apply runtime PM workaround for ASUS B23E (Jaroslav Kysela) [2003613] - ALSA: hda: Fix hang during shutdown due to link reset (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Enable 4-speaker output for Dell XPS 15 9510 laptop (Jaroslav Kysela) [2003613] - ALSA: hda: Nuke unused reboot_notify callback (Jaroslav Kysela) [2003613] - ALSA: hda: Suspend codec at shutdown (Jaroslav Kysela) [2003613] - ALSA: hda: conexant: Turn off EAPD at suspend, too (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Prevent pops and clicks during suspend (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Unmute/Mute codec when stream starts/stops (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Follow correct CS42L42 power down sequence for suspend (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Remove unnecessary delays (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Use timeout rather than retries for I2C transaction waits (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Set fixed sample rate of 48kHz for CS42L42 (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Enable Full Scale Volume for Line Out Codec on Dolphin (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Add support for dolphin (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Add Support to disable jack type detection for CS42L42 (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Support multiple sub_codecs for Suspend/Resume/Unsol events (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Move codec properties to its own struct (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Separate CS8409, CS42L42 and project functions (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Support i2c bulk read/write functions (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Avoid re-setting the same page as the last access (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Avoid setting the same I2C address for every access (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Dont disable I2C clock between consecutive accesses (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Generalize volume controls (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Prevent I2C access during suspend time (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Simplify CS42L42 jack detect. (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Mask CS42L42 wake events (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Disable unsolicited response for the first boot (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Disable unsolicited responses during suspend (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Disable unnecessary Ring Sense for Cyborg/Warlock/Bullseye (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Reduce HS pops/clicks for Cyborg (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Mask all CS42L42 interrupts on initialization (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Use enums for register names and coefficients (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Move arrays of configuration to a new file (Jaroslav Kysela) [2003613] - ALSA: hda/cirrus: Move CS8409 HDA bridge to separate module (Jaroslav Kysela) [2003613] - ALSA: hda - fix the 'Capture Switch' value change notifications (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 650 G8 Notebook PC (Jaroslav Kysela) [2003613] - ALSA: pci: cs46xx: Fix set up buffer type properly (Jaroslav Kysela) [2003613] - ALSA: hda: Add quirk for ASUS Flow x13 (Jaroslav Kysela) [2003613] - ALSA: pci/korg1212: completely remove 'set but not used' warnings (Jaroslav Kysela) [2003613] - ALSA: pcxhr: use __func__ to get funcion's name in an output message (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: add mic quirk for Acer SF314-42 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix headset mic for Acer SWIFT SF314-56 (ALC256) (Jaroslav Kysela) [2003613] - ALSA: korg1212: Fix wrongly shuffled firmware loader code (Jaroslav Kysela) [2003613] - ALSA: als300: Fix missing chip initialization (Jaroslav Kysela) [2003613] - ALSA: cs4281: Fix missing chip initialization (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: Add quirk to force pin connectivity on NUC10 (Jaroslav Kysela) [2003613] - ALSA: nm256: Fix error return code in snd_nm256_create() (Jaroslav Kysela) [2003613] - ALSA: ymfpci: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: vx222: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: trident: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: pci: rme: Fix unaligned buffer addresses (Jaroslav Kysela) [2003613] - ALSA: pci: rme: Set up buffer type properly (Jaroslav Kysela) [2003613] - ALSA: rme9652: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: rme9652: don't disable if not enabled (Jaroslav Kysela) [2003613] - ALSA: hdspm: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: hdspm: don't disable if not enabled (Jaroslav Kysela) [2003613] - ALSA: hdspm: Fix fall-through warnings for Clang (Jaroslav Kysela) [2003613] - ALSA: hdsp: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: riptide: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: riptide: Replace tasklet with threaded irq (Jaroslav Kysela) [2003613] - ALSA: riptide: convert tasklets to use new tasklet_setup() API (Jaroslav Kysela) [2003613] - ALSA: oxygen: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: nm256: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: lx6464es: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: lola: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: korg1212: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ice1724: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ali5451: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ice1724: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ice1712: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: emu10k1x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: emu10k1: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: echoaudio: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs5535audio: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs46xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ca0106: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: aw2: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: au88x0: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ali5451: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: via82xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sonicvibes: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sis7019: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: rme96: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: rme32: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: maestro3: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: fm801: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: es1968: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: es1938: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ens137x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs5530: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs4281: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cmipci: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: bt87x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: azt3328: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: als4000: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: als300: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1889: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: hda: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: atiixp: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix pop noise and 2 Front Mic issues on a machine (Jaroslav Kysela) [2003613] - ALSA: hdmi: Expose all pins on MSI MS-7C94 board (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Skip ac97 clock measurement on VM (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: Add option to enable all pins forcibly (Jaroslav Kysela) [2003613] - ALSA: ice1724: Remove superfluous loop over model table (Jaroslav Kysela) [2003613] - ALSA: hda/ca0132: remove redundant initialization of variable status (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Fix breakage at ac97 clock measurement (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute led of the HP Pavilion 15-eh1xxx series (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 630 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 445 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 450 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - Add ALC285 HP init procedure (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - Add type for ALC287 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook 830 G8 Notebook PC (Jaroslav Kysela) [2003613] - ALSA: hda: Release codec display power during shutdown/reboot (Jaroslav Kysela) [2003613] - ALSA: hda: Release controller display power during shutdown/reboot (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Apply LED fixup for HP Dragonfly G1, too (Jaroslav Kysela) [2003613] - ALSA: hdsp: fix a test for copy_to_user() failure (Jaroslav Kysela) [2003613] - ALSA: hda: Add IRQ check for platform_get_irq() (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix bass speaker DAC mapping for Asus UM431D (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Improve fixup for HP Spectre x360 15-df0xxx (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add another ALC236 variant support (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook x360 830 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/tegra: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ALSA: trident: Fix build error (Jaroslav Kysela) [2003613] - ALSA: trident: Drop shadow TLB pointer table (Jaroslav Kysela) [2003613] - ALSA: ymfpci: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: vx222: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: trident: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: rme9652: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: hdsp: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: riptide: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: pcxhr: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: nm256: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: mixart: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: korg1212: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ice1712: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: emu10k1x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: emu10k1: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: echoaudio: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cs5535audio: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cs46xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ca0106: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: au88x0: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ac97: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: via82xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sonicvibes: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: rme96: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: rme32: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: maestro3: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: fm801: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: es1968: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: es1938: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ens137x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cs4281: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cmipci: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: bt87x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: azt3328: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: atiixp: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: als4000: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: als300: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ak4531: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ad1889: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Change device names for quirks to barebone names (Jaroslav Kysela) [2003613] - ALSA: hda/ca0132: Make a const array static, makes object smaller (Jaroslav Kysela) [2003613] - ALSA: pci: lx6464es: remove useless self-comparison (Jaroslav Kysela) [2003613] - ALSA: drivers: opl3: Fix incorrect use of vp->state (Jaroslav Kysela) [2003613] - ALSA: pcsp: Make hrtimer forwarding more robust (Jaroslav Kysela) [2003613] - ALSA: pcsp: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: dummy: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: aloop: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: mpu401: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: serial-u16550: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: mtpav: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: virmidi: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: vx: Manage vx_core object with devres (Jaroslav Kysela) [2003613] - ALSA: aloop: Fix spelling mistake "synchronization" -> "synchronization" (Jaroslav Kysela) [2003613] - ALSA: serial: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: opl3: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: vx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: mpu401: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: drivers: opl3: fix useless self-comparison (Jaroslav Kysela) [2003613] - ALSA: hda: intel-sdw-acpi: go through HDAS ACPI at max depth of 2 (Jaroslav Kysela) [2003613] - ALSA: hda: intel-sdw-acpi: harden detection of controller (Jaroslav Kysela) [2003613] - ALSA: intel-dsp-config: add quirk for CML devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ALSA: intel-dsp-config: add quirk for JSL devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ALSA: hda: avoid write to STATESTS if controller is in reset (Jaroslav Kysela) [2003613] - ALSA: intel-dsp-config: add quirk for APL/GLK/TGL devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ALSA: hda: hdac_ext_stream: fix potential locking issues (Jaroslav Kysela) [2003613] - ALSA: hda: hdac_stream: fix potential locking issue in snd_hdac_stream_assign() (Jaroslav Kysela) [2003613] - ALSA: hda: intel-dsp-cfg: add missing ElkhartLake PCI ID (Jaroslav Kysela) [2003613] - ALSA: usb-audio: usx2y - use GFP_NOIO flag (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Reorder snd_djm_devices[] entries (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Don't start stream for capture at prepare (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Switch back to non-latency mode at a later point (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add quirk for Audient iD14 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Line6 HX-Stomp XL USB_ID for 48k-fixed quirk (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum 400 (Jaroslav Kysela) [2003613] - ALSA: ua101: fix division by zero at probe (Jaroslav Kysela) [2003613] - ALSA: line6: fix control and interrupt message timeouts (Jaroslav Kysela) [2003613] - ALSA: 6fire: fix control and bulk message timeouts (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix null pointer dereference on pointer cs_desc (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix microphone sound on Jieli webcam. (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Provide quirk for Sennheiser GSP670 Headset (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Initialize every feature unit once at probe time (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Drop superfluous error message after disconnection (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Downgrade error message in get_ctl_value_v2() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: add Schiit Hel device to quirk table (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add quirk for VF0770 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Less restriction for low-latency playback mode (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add support for the Pioneer DJM 750MK2 Mixer/Soundcard (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Pass JOINT_DUPLEX info flag for implicit fb streams (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Enable rate validation for Scarlett devices (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix packet size calculation regression (Jaroslav Kysela) [2003613] - ALSA: usb-audio: disable implicit feedback sync for Behringer UFX1204 and UFX1604 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Avoid killing in-flight URBs during draining (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Improved lowlatency playback support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add spinlock to stop_urbs() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Check available frames for the next packet size (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Disable low-latency mode for implicit feedback sync (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Disable low-latency playback for free-wheel mode (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Rename early_playback_start flag with lowlatency_playback (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix possible race at sync of urb completions (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Restrict rates for the shared clocks (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix a missing error check in scarlett gen2 mixer (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix comment reference in __uac_clock_find_source (Jaroslav Kysela) [2003613] - ALSA: usx2y: Prefer struct_size over open coded arithmetic (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Unify mixer resume and reset_resume procedure (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum 800 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add lowlatency module option (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Work around for XRUN with low latency playback (Jaroslav Kysela) [2003613] - ASoC: dmaengine: Introduce module option prealloc_buffer_size_kbytes (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move set-interface-first workaround into common quirk (Jaroslav Kysela) [2003613] - ALSA: doc: Fix indentation warning (Jaroslav Kysela) [2003613] - ALSA: hda: Update documentation for aliasing via the model option (Jaroslav Kysela) [2003613] - ALSA: doc: Add the description of quirk_flags option for snd-usb-audio (Jaroslav Kysela) [2003613] - ALSA: doc: Fix reference to mixart.rst (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Update the documentation for the new delayed_register option (Jaroslav Kysela) [2003613] - ALSA: hda - Update descriptions about new position_fix values (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix regression on Sony WALKMAN NW-A45 DAC (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Input source control - digidesign mbox (Jaroslav Kysela) [2003613] - ALSA: usb-audio: make array static const, makes object smaller (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add quirk_flags module option (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move generic DSD raw detection into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move ignore_ctl_error check into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move autosuspend quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move rate validation quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move interface setup delay into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move control message delay quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move ITF-USB DSD quirk handling into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move clock setup quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move playback_first flag into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move tx_length quirk handling to quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move txfr_quirk handling to quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move media-controller API quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Introduce quirk_flags field (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Avoid unnecessary or invalid connector selection at resume (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum 600 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix superfluous autosuspend recovery (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix incorrect clock source setting (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix line out/speaker switching notifications (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Correct channel mute status after mute button pressed (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix Direct Monitor control name for 2i2 (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix Mute/Dim/MSD Mode control names (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum headsets (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add missing proc text entry for BESPOKEN type (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Reduce latency at playback start, take#2 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: usx2y: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix for loop increment in scarlett2_usb_get_config (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix scarlett2_*_ctl_put() return values again (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix pad count for 18i8 Gen 3 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add support for the talkback feature (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Update get_config to do endian conversion (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add speaker switching support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Update mux controls to allow updates (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add sw_hw_ctls and mux_ctls (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Split up sw_hw_enum_ctl_put() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Label 18i8 Gen 3 line outputs correctly (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add direct monitor support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add phantom power switch support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add "air" switch support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add support for Solo and 2i2 Gen 3 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Allow bit-level access to config (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Move get config above set config (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add Gen 3 MSD mode switch (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add support for "input-other" notify (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add Gen 3 mixer support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix wrong resume call (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix Level Meter control (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Split struct scarlett2_ports (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Allow arbitrary ordering of mux entries (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add mute support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add scarlett2_vol_ctl_write() helper (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove repeated device info comments (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Move info lookup out of init function (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Improve device info lookup (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Reformat scarlett2_config_items[] (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Merge common line in capture strings (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add "Sync Status" control (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Always enable interrupt polling (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix 6i6 Gen 2 line out descriptions (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Update initialisation sequence (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add usb_tx/rx functions (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix OOB access at proc output (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove hard-coded USB #defines (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Don't copy struct scarlett2_config (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix union usage in mixer control callbacks (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix scarlett2_*_ctl_put() return values (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix data_mutex lock (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add temp variable for consistency (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Rename struct scarlett2_mixer_data (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Rename buttons/interrupts/vol (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove redundant info->button_count (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove interrupt debug message (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove unused/useless code (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Coding style improvements (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix 18i8 Gen 2 PCM Input count (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove incorrect S/PDIF comment (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix rate on Ozone Z90 USB headset (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add support for Denon DN-X1600 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Read mux at init time (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Read mixer volumes at init time (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Factor out DSD bitrev copy function (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Refactoring delay account code (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Pre-calculate buffer byte size (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Make snd_usb_pcm_delay() static (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Remove the repeated declaration (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix uninitialized variable at __uac_clock_find_source() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Handle error for the current selector gracefully (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Refactoring UAC2/3 clock setup code (Jaroslav Kysela) [2003613] - ALSA: usx2y: Nuke pcm_list (Jaroslav Kysela) [2003613] - ALSA: usx2y: Cleanup probe and disconnect callbacks (Jaroslav Kysela) [2003613] - ALSA: usx2y: Don't call free_pages_exact() with NULL address (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix shmem initialization (Jaroslav Kysela) [2003613] - ALSA: usxy2: Fix potential doubly allocations (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix potential memory leaks (Jaroslav Kysela) [2003613] - ALSA: usx2y: Avoid self-killing (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix potential leaks of uninitialized memory (Jaroslav Kysela) [2003613] - ALSA: usx2y: Coding style fixes (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix spaces (Jaroslav Kysela) [2003613] - ALSA: usx2y: Avoid camelCase (Jaroslav Kysela) [2003613] - module: remove never implemented MODULE_SUPPORTED_DEVICE (Jaroslav Kysela) [2003613] - ALSA: pcm: Allow exact buffer preallocation (Jaroslav Kysela) [2003613] - ALSA: core: Add device-managed request_dma() (Jaroslav Kysela) [2003613] - ALSA: core: use DEVICE_ATTR_*() macro (Jaroslav Kysela) [2003613] - ALSA: core: Fix double calls of snd_card_free() via devres (Jaroslav Kysela) [2003613] - ALSA: core: Add managed card creation (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix mmap without buffer preallocation (Jaroslav Kysela) [2003613] - ALSA: pcm: Call substream ack() method upon compat mmap commit (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix mmap breakage without explicit buffer setup (Jaroslav Kysela) [2003613] - ALSA: pcm - fix mmap capability check for the snd-dummy driver (Jaroslav Kysela) [2003613] - ALSA: pcm: fix divide error in snd_pcm_lib_ioctl (Jaroslav Kysela) [2003613] - ALSA: memalloc: Catch call with NULL snd_dma_buffer pointer (Jaroslav Kysela) [2003613] - ALSA: memalloc: Remove a stale comment (Jaroslav Kysela) [2003613] - ALSA: memalloc: Use proper SG helpers for noncontig allocations (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix a typo in snd_dma_buffer_sync() description (Jaroslav Kysela) [2003613] - ALSA: PCM: Fix NULL dereference at mmap checks (Jaroslav Kysela) [2003613] - ALSA: pcm: Check mmap capability of runtime dma buffer at first (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix mmap capability check (Jaroslav Kysela) [2003613] - ALSA: pcm: use krealloc_array() (Jaroslav Kysela) [2003613] - ALSA: pcm: Add SNDRV_PCM_INFO_EXPLICIT_SYNC flag (Jaroslav Kysela) [2003613] - ALSA: pcm: Add more disconnection checks at file ops (Jaroslav Kysela) [2003613] - mm: don't include asm/pgtable.h if linux/mm.h is already included (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix mmap of SG-buffer with WC pages (Jaroslav Kysela) [2003613] - ALSA: memalloc: Support for non-coherent page allocation (Jaroslav Kysela) [2003613] - ALSA: memalloc: Support for non-contiguous page allocation (Jaroslav Kysela) [2003613] - ALSA: pcm: Unify snd_pcm_delay() and snd_pcm_hwsync() (Jaroslav Kysela) [2003613] - ALSA: core: Fix build error due to missing PAGE_SIZE (Jaroslav Kysela) [2003613] - ALSA: pcm: Workaround for a wrong offset in SYNC_PTR compat ioctl (Jaroslav Kysela) [2003613] - ALSA: memalloc: Count continuous pages in vmalloc buffer handler (Jaroslav Kysela) [2003613] - ALSA: memalloc: Store snd_dma_buffer.addr for continuous pages, too (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix pgprot for WC mmap on x86 (Jaroslav Kysela) [2003613] - ALSA: memalloc: Support WC allocation on all architectures (Jaroslav Kysela) [2003613] - ALSA: memalloc: Correctly name as WC (Jaroslav Kysela) [2003613] - ALSA: memalloc: Minor refactoring (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix regression with SNDRV_DMA_TYPE_CONTINUOUS (Jaroslav Kysela) [2003613] - ALSA: core: Add device-managed page allocator helper (Jaroslav Kysela) [2003613] - ALSA: core: Add continuous and vmalloc mmap ops (Jaroslav Kysela) [2003613] - ALSA: core: Move mmap handler into memalloc ops (Jaroslav Kysela) [2003613] - ALSA: core: Abstract memory alloc helpers (Jaroslav Kysela) [2003613] - ALSA: pcm: add snd_pcm_period_elapsed() variant without acquiring lock of PCM substream (Jaroslav Kysela) [2003613] - ALSA: pcm: Block the release until the system resume finishes (Jaroslav Kysela) [2003613] - ALSA: Drop superfluous argument from snd_power_wait() (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: core: Drop snd_sgbuf_get_ptr() (Jaroslav Kysela) [2003613] - ALSA: jack: Check the return value of kstrdup() (Jaroslav Kysela) [2003613] - ALSA: seq: oss: Fix error check at system port creation (Jaroslav Kysela) [2003613] - ALSA: seq: Fix comments of wrong client number for MIDI Passthrough (Jaroslav Kysela) [2003613] - ALSA: pcm: oss: Handle missing errors in snd_pcm_oss_change_params*() (Jaroslav Kysela) [2003613] - ALSA: pcm: oss: Limit the period size to 16MB (Jaroslav Kysela) [2003613] - ALSA: pcm: oss: Fix negative period/buffer sizes (Jaroslav Kysela) [2003613] - ALSA: iec958: Split status creation and fill (Jaroslav Kysela) [2003613] - ALSA: rawmidi - fix the uninitalized user_pversion (Jaroslav Kysela) [2003613] - ALSA: rawmidi: introduce SNDRV_RAWMIDI_IOCTL_USER_PVERSION (Jaroslav Kysela) [2003613] - ALSA: rawmidi: fix incorrect array bounds check on clock_names (Jaroslav Kysela) [2003613] - ALSA: rawmidi: Add framing mode (Jaroslav Kysela) [2003613] - ALSA: seq: Fix racy deletion of subscriber (Jaroslav Kysela) [2003613] - ALSA: seq: Fix a potential UAF by wrong private_free call order (Jaroslav Kysela) [2003613] - ALSA: seq: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: timer: Unconditionally unlink slave instances, too (Jaroslav Kysela) [2003613] - ALSA: timer: Fix use-after-free problem (Jaroslav Kysela) [2003613] - ALSA: mixer: fix deadlock in snd_mixer_oss_set_volume (Jaroslav Kysela) [2003613] - ALSA: mixer: oss: Fix racy access to slots (Jaroslav Kysela) [2003613] - ALSA: oss: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: core: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: core: control_led: use strscpy instead of strlcpy (Jaroslav Kysela) [2003613] - ALSA: control_led - use DEVICE_ATTR_*() macro (Jaroslav Kysela) [2003613] - ALSA: ctl: Fix copy of updated id with element read/write (Jaroslav Kysela) [2003613] - ALSA: compress: Initialize mutex in snd_compress_new() (Jaroslav Kysela) [2003613] - ALSA: control: Minor optimization for SNDRV_CTL_IOCTL_POWER_STATE (Jaroslav Kysela) [2003613] - ALSA: control: Drop superfluous snd_power_wait() calls (Jaroslav Kysela) [2003613] - ALSA: control: Track in-flight control read/write/tlv accesses (Jaroslav Kysela) [2003613] - ALSA: compress: Drop unused functions (Jaroslav Kysela) [2003613] - regmap: sdw-mbq: use MODULE_LICENSE("GPL") (Jaroslav Kysela) [2003613] - regmap: sdw: use no_pm routines for SoundWire 1.2 MBQ (Jaroslav Kysela) [2003613] - regmap: sdw: use _no_pm functions in regmap_read/write (Jaroslav Kysela) [2003613] - soundwire: stream: Fix test for DP prepare complete (Jaroslav Kysela) [2003613] - soundwire/ASoC: add leading zeroes in peripheral device name (Jaroslav Kysela) [2003613] - soundwire: bandwidth allocation: improve error messages (Jaroslav Kysela) [2003613] - soundwire: dmi-quirks: remove duplicate initialization (Jaroslav Kysela) [2003613] - soundwire: cadence: remove the repeated declaration (Jaroslav Kysela) [2003613] - soundwire: bus: stop dereferencing invalid slave pointer (Jaroslav Kysela) [2003613] - soundwire: bus: add missing \n in dynamic debug (Jaroslav Kysela) [2003613] - soundwire: bus: handle -ENODATA errors in clock stop/start sequences (Jaroslav Kysela) [2003613] - soundwire: qcom: add debugfs entry for soundwire register dump (Jaroslav Kysela) [2003613] - soundwire: debugfs: use controller id and link_id for debugfs (Jaroslav Kysela) [2003613] - soundwire: cadence: do not extend reset delay (Jaroslav Kysela) [2003613] - soundwire: intel: conditionally exit clock stop mode on system suspend (Jaroslav Kysela) [2003613] - soundwire: intel: skip suspend/resume/wake when link was not started (Jaroslav Kysela) [2003613] - soundwire: intel: fix potential race condition during power down (Jaroslav Kysela) [2003613] - soundwire: intel: introduce shim and alh base (Jaroslav Kysela) [2003613] - soundwire: move intel sdw register definitions to sdw_intel.h (Jaroslav Kysela) [2003613] - soundwire: cadence: override PDI configurations to create loopback (Jaroslav Kysela) [2003613] - soundwire: cadence: add debugfs interface for PDI loopbacks (Jaroslav Kysela) [2003613] - soundwire: stream: don't program mockup device ports (Jaroslav Kysela) [2003613] - soundwire: bus: squelch error returned by mockup devices (Jaroslav Kysela) [2003613] - soundwire: stream: don't abort bank switch on Command_Ignored/-ENODATA (Jaroslav Kysela) [2003613] - soundwire: cadence: add paranoid check on self-clearing bits (Jaroslav Kysela) [2003613] - soundwire: dmi-quirks: add quirk for Intel 'Bishop County' NUC M15 (Jaroslav Kysela) [2003613] - soundwire: bus: update Slave status in sdw_clear_slave_status (Jaroslav Kysela) [2003613] - soundwire: cadence: Remove ret variable from sdw_cdns_irq() (Jaroslav Kysela) [2003613] - soundwire: bus: filter out more -EDATA errors on clock stop (Jaroslav Kysela) [2003613] - soundwire: dmi-quirks: add ull suffix for SoundWire _ADR values (Jaroslav Kysela) [2003613] - soundwire: export sdw_update() and sdw_update_no_pm() (Jaroslav Kysela) [2003613] - soundwire: bus: Make sdw_nwrite() data pointer argument const (Jaroslav Kysela) [2003613] - soundwire: intel: move to auxiliary bus (Jaroslav Kysela) [2003613] - soundwire: add missing kernel-doc description (Jaroslav Kysela) [2003613] - soundwire: cadence_master: always set CMD_ACCEPT (Jaroslav Kysela) [2003613] - soundwire: bus: only use CLOCK_STOP_MODE0 and fix confusions (Jaroslav Kysela) [2003613] - software node: Handle software node injection to an existing device properly (Mark Langsdorf) [2032600] - software node: Allow node addition to already existing device (Mark Langsdorf) [2032600] - driver core: clear deferred probe reason on probe retry (Mark Langsdorf) [2032600] - driver core: add deferring probe reason to devices_deferred property (Mark Langsdorf) [2032600] - driver core: Fix locking bug in deferred_probe_timeout_work_func() (Mark Langsdorf) [2032600] - PM: runtime: Fix race getting/putting suppliers at probe (Mark Langsdorf) [2032600] - PM: runtime: Fix ordering in pm_runtime_get_suppliers() (Mark Langsdorf) [2032600] - PM: runtime: Defer suspending suppliers (Mark Langsdorf) [2032600] - software node: Fix device_add_software_node() (Mark Langsdorf) [2032600] - software node: Fix node registration (Mark Langsdorf) [2032600] - drivers/base/memory: don't store phys_device in memory blocks (Mark Langsdorf) [2032600] - arch_numa: fix common code printing of phys_addr_t (Mark Langsdorf) [2032600] - driver core: platform: Drop of_device_node_put() wrapper (Mark Langsdorf) [2032600] - regmap: sdw-mbq: use MODULE_LICENSE("GPL") (Mark Langsdorf) [2032600] - regmap: sdw: use no_pm routines for SoundWire 1.2 MBQ (Mark Langsdorf) [2032600] - regmap: sdw: use _no_pm functions in regmap_read/write (Mark Langsdorf) [2032600] - PM: domains: Mark fwnodes when their powerdomain is added/removed (Mark Langsdorf) [2032600] - driver core: fw_devlink: Handle suppliers that don't use driver core (Mark Langsdorf) [2032600] - driver core: Add fw_devlink.strict kernel param (Mark Langsdorf) [2032600] - driver core: platform: Emit a warning if a remove callback returned non-zero (Mark Langsdorf) [2032600] - PM: domains: Simplify the calculation of variables (Mark Langsdorf) [2032600] - PM: sleep: Use dev_printk() when possible (Mark Langsdorf) [2032600] - media: software_node: Add support for fwnode_graph*() family of functions (Mark Langsdorf) [2032600] - media: software_node: unregister software_nodes in reverse order (Mark Langsdorf) [2032600] - media: software_node: Enforce parent before child ordering of nodes arrays (Mark Langsdorf) [2032600] - media: device property: Call fwnode_graph_get_endpoint_by_id() for fwnode->secondary (Mark Langsdorf) [2032600] - media: device property: Return true in fwnode_device_is_available for NULL ops (Mark Langsdorf) [2032600] - media: software_node: Fix refcounts in software_node_get_next_child() (Mark Langsdorf) [2032600] - PM: domains: Add "performance" column to debug summary (Mark Langsdorf) [2032600] - PM: domains: Make of_genpd_add_subdomain() return -EPROBE_DEFER (Mark Langsdorf) [2032600] - PM: domains: Make set_performance_state() callback optional (Mark Langsdorf) [2032600] - PM: domains: use device's next wakeup to determine domain idle state (Mark Langsdorf) [2032600] - PM: domains: inform PM domain of a device's next wakeup (Mark Langsdorf) [2032600] - PM: runtime: Fix resposible -> responsible in runtime.c (Mark Langsdorf) [2032600] - PM: domains: Restore comment indentation for generic_pm_domain.child_links (Mark Langsdorf) [2032600] - PM: domains: Fix up terminology with parent/child (Mark Langsdorf) [2032600] - regmap: Assign boolean values to a bool variable (Mark Langsdorf) [2032600] - software node: Introduce device_add_software_node() (Mark Langsdorf) [2032600] - numa: Move numa implementation to common code (Mark Langsdorf) [2032600] - arm64, numa: Change the numa init functions name to be generic (Mark Langsdorf) [2032600] - driver core: fw_devlink_relax_cycle() can be static (Mark Langsdorf) [2032600] - driver core: Handle cycles in device links created by fw_devlink (Mark Langsdorf) [2032600] - driver core: Have fw_devlink use DL_FLAG_INFERRED (Mark Langsdorf) [2032600] - driver core: Add device link support for INFERRED flag (Mark Langsdorf) [2032600] - drivers: base: Kconfig: fix spelling mistake "heterogenous" -> "heterogeneous" (Mark Langsdorf) [2032600] - driver core: Add debug logs for device link related probe deferrals (Mark Langsdorf) [2032600] - drivers: base: remove unused function find_bus() (Mark Langsdorf) [2032600] - PM: runtime: Drop runtime PM references to supplier on link removal (Mark Langsdorf) [2032600] - dmaengine: idxd: Add wq occupancy information to sysfs attribute (Julia Denham) [1971887] - vdpa/mlx5: Forward only packets with allowed MAC address (Cindy Lu) [2031595] - vdpa/mlx5: Support configuration of MAC (Cindy Lu) [2031595] - vdpa/mlx5: Fix clearing of VIRTIO_NET_F_MAC feature bit (Cindy Lu) [2031595] - vdpa_sim_net: Enable user to set mac address and mtu (Cindy Lu) [2031595] - vdpa: Enable user to set mac and mtu of vdpa device (Cindy Lu) [2031595] - vdpa: Use kernel coding style for structure comments (Cindy Lu) [2031595] - vdpa: Introduce query of device config layout (Cindy Lu) [2031595] - vdpa: Introduce and use vdpa device get, set config helpers (Cindy Lu) [2031595] - vdpa/mlx5: Propagate link status from device to vdpa driver (Cindy Lu) [2031595] - vdpa/mlx5: Rename control VQ workqueue to vdpa wq (Cindy Lu) [2031595] - vdpa/mlx5: Remove mtu field from vdpa net device (Cindy Lu) [2031595] - eni_vdpa: add vDPA driver for Alibaba ENI (Cindy Lu) [2031595] - vdpa: add new attribute VDPA_ATTR_DEV_MIN_VQ_SIZE (Cindy Lu) [2031595] - virtio_vdpa: setup correct vq size with callbacks get_vq_num_{max,min} (Cindy Lu) [2031595] - vdpa: min vq num of vdpa device cannot be greater than max vq num (Cindy Lu) [2031595] - vdpa: add new callback get_vq_num_min in vdpa_config_ops (Cindy Lu) [2031595] - vp_vdpa: add vq irq offloading support (Cindy Lu) [2031595] - vdpa: fix typo (Cindy Lu) [2031595] - vhost-vdpa: Fix the wrong input in config_cb (Cindy Lu) [2031595] - vhost_vdpa: unset vq irq before freeing irq (Cindy Lu) [2031595] - vdpa: potential uninitialized return in vhost_vdpa_va_map() (Cindy Lu) [2031595] - vdpa/mlx5: Avoid executing set_vq_ready() if device is reset (Cindy Lu) [2031595] - vdpa/mlx5: Clear ready indication for control VQ (Cindy Lu) [2031595] - vdpa: Support transferring virtual addressing during DMA mapping (Cindy Lu) [2031595] - vdpa: factor out vhost_vdpa_pa_map() and vhost_vdpa_pa_unmap() (Cindy Lu) [2031595] - vdpa: Add an opaque pointer for vdpa_config_ops.dma_map() (Cindy Lu) [2031595] - vhost-iotlb: Add an opaque pointer for vhost IOTLB (Cindy Lu) [2031595] - vhost-vdpa: Handle the failure of vdpa_reset() (Cindy Lu) [2031595] - vdpa: Add reset callback in vdpa_config_ops (Cindy Lu) [2031595] - vdpa: Fix some coding style issues (Cindy Lu) [2031595] - vdpa: Make use of PFN_PHYS/PFN_UP/PFN_DOWN helper macro (Cindy Lu) [2031595] - vdpa_sim: Use iova_shift() for the size passed to alloc_iova() (Cindy Lu) [2031595] - vdpa/mlx5: Add multiqueue support (Cindy Lu) [2031595] - vdpa/mlx5: Add support for control VQ and MAC setting (Cindy Lu) [2031595] - vdpa/mlx5: Ensure valid indices are provided (Cindy Lu) [2031595] - vdpa/mlx5: Decouple virtqueue callback from struct mlx5_vdpa_virtqueue (Cindy Lu) [2031595] - vdpa/mlx5: function prototype modifications in preparation to control VQ (Cindy Lu) [2031595] - vdpa/mlx5: Remove redundant header file inclusion (Cindy Lu) [2031595] - vDPA/ifcvf: enable multiqueue and control vq (Cindy Lu) [2031595] - vDPA/ifcvf: detect and use the onboard number of queues directly (Cindy Lu) [2031595] - vDPA/ifcvf: implement management netlink framework for ifcvf (Cindy Lu) [2031595] - vDPA/ifcvf: introduce get_dev_type() which returns virtio dev id (Cindy Lu) [2031595] - vdpa/mlx5: Fix queue type selection logic (Cindy Lu) [2031595] - vdpa/mlx5: Avoid destroying MR on empty iotlb (Cindy Lu) [2031595] - virtio_vdpa: reject invalid vq indices (Cindy Lu) [2031595] - vdpa: Add documentation for vdpa_alloc_device() macro (Cindy Lu) [2031595] - vDPA/ifcvf: Fix return value check for vdpa_alloc_device() (Cindy Lu) [2031595] - vp_vdpa: Fix return value check for vdpa_alloc_device() (Cindy Lu) [2031595] - vdpa_sim: Fix return value check for vdpa_alloc_device() (Cindy Lu) [2031595] - vhost: Fix the calculation in vhost_overflow() (Cindy Lu) [2031595] - vhost-vdpa: Fix integer overflow in vhost_vdpa_process_iotlb_update() (Cindy Lu) [2031595] - iommu/vt-d: Fix unmap_pages support (Jerry Snitselaar) [2027765] - dm sysfs: use default_groups in kobj_type (Benjamin Marzinski) [2047358] - dm space map common: add bounds check to sm_ll_lookup_bitmap() (Benjamin Marzinski) [2047358] - dm btree: add a defensive bounds check to insert_at() (Benjamin Marzinski) [2047358] - dm btree remove: change a bunch of BUG_ON() calls to proper errors (Benjamin Marzinski) [2047358] - dm btree spine: eliminate duplicate le32_to_cpu() in node_check() (Benjamin Marzinski) [2047358] - dm btree spine: remove extra node_check function declaration (Benjamin Marzinski) [2047358] - selftests/bpf: Adding delay in socketmap_listen to reduce flakyness (Felix Maurer) [2026433] - net: openvswitch: Fix ct_state nat flags for conns arriving from tc (Marcelo Ricardo Leitner) [2040334] - net: openvswitch: Fix matching zone id for invalid conns arriving from tc (Marcelo Ricardo Leitner) [2040452] - net/sched: flow_dissector: Fix matching on zone id for invalid conns (Marcelo Ricardo Leitner) [2040452] - net/sched: Extend qdisc control block with tc control block (Marcelo Ricardo Leitner) [2040452] - mm: Fix an use-after-free error in mm_struct (Waiman Long) [2046161] - rh_flags: Rename rh_features to rh_flags (Prarit Bhargava) [2021700] - redhat: add initial rpminspect configuration (Augusto Caringi)- can: raw: raw_setsockopt(): fix raw_rcv panic for sock UAF (Balazs Nemeth) [2026692] - drm/vmwgfx: Fix stale file descriptors on failed usercopy (Dave Airlie) [2047602] {CVE-2022-22942} - drm/i915: Flush TLBs before releasing backing store (Dave Airlie) [2044329] {CVE-2022-0330} - [s390] s390/pci: move pseudo-MMIO to prevent MIO overlap (Mete Durlu) [2047757] - [s390] scsi: zfcp: Fix failed recovery on gone remote port with non-NPIV FCP devices (Mete Durlu) [2048919] - tun: fix bonding active backup with arp monitoring (Jonathan Toppins) [2024964] - x86/hyperv: Properly deal with empty cpumasks in hyperv_flush_tlb_multi() (Vitaly Kuznetsov) [2044237] - xfs: check sb_meta_uuid for dabuf buffer recovery (Bill O'Donnell) [2020764] - vfs: fs_context: fix up param length parsing in legacy_parse_param (Carlos Maiolino) [2040586] {CVE-2022-0185} - KVM: nVMX: Allow VMREAD when Enlightened VMCS is in use (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Implement evmcs_field_offset() suitable for handle_vmread() (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Rename vmcs_to_field_offset{,_table} (Vitaly Kuznetsov) [2012105] - KVM: nVMX: eVMCS: Filter out VM_EXIT_SAVE_VMX_PREEMPTION_TIMER (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Also filter MSR_IA32_VMX_TRUE_PINBASED_CTLS when eVMCS (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Use INVALID_GPA for pointers used in nVMX. (Vitaly Kuznetsov) [2012105] - x86/kvm: Always inline evmcs_write64() (Vitaly Kuznetsov) [2012105] - powerpc/powernv: Remove POWER9 PVR version check for entry and uaccess flushes (Diego Domingos) [2030954] - powerpc/pesries: Get STF barrier requirement from H_GET_CPU_CHARACTERISTICS (Diego Domingos) [2030954] - powerpc/security: Add a security feature for STF barrier (Diego Domingos) [2030954] - powerpc/pseries: Get entry and uaccess flush required bits from H_GET_CPU_CHARACTERISTICS (Diego Domingos) [2030954] - drm/nouveau/disp/dp: add support for eDP link rates (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: add support for hbr3 (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: add support for lttprs (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: fixup cr/eq delays for 1.4 (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: add support for tps4 (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: generate supported link rates table at detect time (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: explicitly control scrambling when setting pattern (Ben Skeggs) [2043523] - drm/nouveau/disp: remove some remnant of a rework (Ben Skeggs) [2043523] - drm/nouveau: recognise GA106 (Ben Skeggs) [2043523] - redhat/scripts: Update merge-subtrees.sh (Prarit Bhargava)- pinctrl: amd: Fix wakeups when IRQ is shared with SCI (Renjith Pananchikkal) [2039124] - bonding: fix ad_actor_system option setting to default (Jonathan Toppins) [2042564 1931881] - bonding: make tx_rebalance_counter an atomic (Jonathan Toppins) [2042564] - bonding: Fix a use-after-free problem when bond_sysfs_slave_add() failed (Jonathan Toppins) [2042564] - bonding: 3ad: pass parameter bond_params by reference (Jonathan Toppins) [2042564] - bonding: complain about missing route only once for A/B ARP probes (Jonathan Toppins) [2042564] - bonding: improve nl error msg when device can't be enslaved because of IFF_MASTER (Jonathan Toppins) [2042564] - bonding: combine netlink and console error messages (Jonathan Toppins) [2042564] - bonding: add new option lacp_active (Jonathan Toppins) [2042564] - bonding: 3ad: fix the concurrency between __bond_release_one() and bond_3ad_state_machine_handler() (Jonathan Toppins) [2042564] - bonding: fix build issue (Jonathan Toppins) [2042564] - bonding: fix incorrect return value of bond_ipsec_offload_ok() (Jonathan Toppins) [2042564] - bonding: fix suspicious RCU usage in bond_ipsec_offload_ok() (Jonathan Toppins) [2042564] - bonding: Add struct bond_ipesc to manage SA (Jonathan Toppins) [2042564] - bonding: disallow setting nested bonding + ipsec offload (Jonathan Toppins) [2042564] - bonding: fix suspicious RCU usage in bond_ipsec_del_sa() (Jonathan Toppins) [2042564] - bonding: fix null dereference in bond_ipsec_add_sa() (Jonathan Toppins) [2042564] - bonding: fix suspicious RCU usage in bond_ipsec_add_sa() (Jonathan Toppins) [2042564] - net: bonding: Use per-cpu rr_tx_counter (Jonathan Toppins) [2042564] - bonding: remove redundant initialization of variable ret (Jonathan Toppins) [2042564] - net: bonding: Use strscpy_pad() instead of manually-truncated strncpy() (Jonathan Toppins) [2042564] - bonding: init notify_work earlier to avoid uninitialized use (Jonathan Toppins) [2042564] - bonding: 3ad: Fix the conflict between bond_update_slave_arr and the state machine (Jonathan Toppins) [2042564] - scsi: lpfc: Update lpfc version to 14.0.0.4 (Dick Kennedy) [2034276] - scsi: lpfc: Add additional debugfs support for CMF (Dick Kennedy) [2034276] - scsi: lpfc: Cap CMF read bytes to MBPI (Dick Kennedy) [2034276] - scsi: lpfc: Adjust CMF total bytes and rxmonitor (Dick Kennedy) [2034276] - scsi: lpfc: Trigger SLI4 firmware dump before doing driver cleanup (Dick Kennedy) [2034276] - scsi: lpfc: Fix NPIV port deletion crash (Dick Kennedy) [2034276] - scsi: lpfc: Fix lpfc_force_rscn ndlp kref imbalance (Dick Kennedy) [2034276] - scsi: lpfc: Change return code on I/Os received during link bounce (Dick Kennedy) [2034276] - scsi: lpfc: Fix leaked lpfc_dmabuf mbox allocations with NPIV (Dick Kennedy) [2034276] - ppp: ensure minimum packet size in ppp_write() (Guillaume Nault) [2042937] - KVM: VMX: switch blocked_vcpu_on_cpu_lock to raw spinlock (Marcelo Tosatti) [2034126] - configs: Enable CONFIG_THINKPAD_LMI on x86_64 (Mark Pearson) [2030772] - platform/x86: think-lmi: Abort probe on analyze failure (Mark Pearson) [2030772] - platform/x86: think-lmi: add debug_cmd (Mark Pearson) [2030772] - platform/x86: think-lmi: Fix possible mem-leaks on tlmi_analyze() error-exit (Mark Pearson) [2030772] - platform/x86: think-lmi: Split kobject_init() and kobject_add() calls (Mark Pearson) [2030772] - platform/x86: think-lmi: Move pending_reboot_attr to the attributes sysfs dir (Mark Pearson) [2030772] - platform/x86: think-lmi: Add pending_reboot support (Mark Pearson) [2030772] - platform/x86: think-lmi: Move kfree(setting->possible_values) to tlmi_attr_setting_release() (Mark Pearson) [2030772] - platform/x86: think-lmi: Split current_value to reflect only the value (Mark Pearson) [2030772] - platform/x86: think-lmi: Fix issues with duplicate attributes (Mark Pearson) [2030772] - platform/x86: think-lmi: Return EINVAL when kbdlang gets set to a 0 length string (Mark Pearson) [2030772] - platform/x86: think-lmi: Add missing MODULE_DEVICE_TABLE (Mark Pearson) [2030772] - platform/x86: think-lmi: Avoid potential read before start of the buffer (Mark Pearson) [2030772] - platform/x86: think-lmi: Fix check for admin password being set (Mark Pearson) [2030772] - platform/x86: dell-wmi-sysman/think-lmi: Make fw_attr_class global static (Mark Pearson) [2030772] - platform/x86: thinkpad-lmi: Remove unused display_name member from struct tlmi_pwd_setting (Mark Pearson) [2030772] - platform/x86: think-lmi: Add WMI interface support on Lenovo platforms (Mark Pearson) [2030772] - platform/x86: dell-wmi-sysman: fw_attr_inuse can be static (Mark Pearson) [2030772] - platform/x86: dell-wmi-sysman: Use firmware_attributes_class helper (Mark Pearson) [2030772] - platform/x86: firmware_attributes_class: Create helper file for handling firmware-attributes class registration events (Mark Pearson) [2030772] - x86/apic: Handle missing global clockevent gracefully (Lenny Szubowicz) [2033197] - RDMA/core: Don't infoleak GRH fields (Kamal Heib) [2036597] - RDMA/uverbs: Check for null return of kmalloc_array (Kamal Heib) [2036597] - RDMA/sa_query: Use strscpy_pad instead of memcpy to copy a string (Kamal Heib) [2036597] - RDMA/rw: switch to dma_map_sgtable() (Kamal Heib) [2036597] - RDMA/cma: Ensure rdma_addr_cancel() happens before issuing more requests (Kamal Heib) [2036597] - RDMA/cma: Fix listener leak in rdma_cma_listen_on_all() failure (Kamal Heib) [2036597] - RDMA/iwcm: Release resources if iw_cm module initialization fails (Kamal Heib) [2036597] - net: Set true network header for ECN decapsulation (Antoine Tenart) [2045059] - powerpc/bpf: Update ldimm64 instructions during extra pass (Yauheni Kaliuta) [2035973] - selftests: bpf: Fix bind on used port (Felix Maurer) [2025795] - bpf/selftests: Fix namespace mount setup in tc_redirect (Jiri Olsa) [2036016] - selftests/bpf: Fix possible/online index mismatch in perf_buffer test (Yauheni Kaliuta) [2039602] - selftests/bpf: Fix perf_buffer test on system with offline cpus (Yauheni Kaliuta) [2039602] - tracing: Tag trace_percpu_buffer as a percpu pointer (Jerome Marchand) [2031604] - tracing: Fix check for trace_percpu_buffer validity in get_trace_buf() (Jerome Marchand) [2031604] - hwmon: (k10temp) Support up to 12 CCDs on AMD Family of processors (David Arcari) [2022539] - hwmon: (k10temp) Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh (David Arcari) [2022539] - hwmon: (k10temp) Remove unused definitions (David Arcari) [2022539] - x86/amd_nb: Add AMD Family 19h Models (10h-1Fh) and (A0h-AFh) PCI IDs (David Arcari) [2022539] - hwmon: (k10temp) Remove residues of current and voltage (David Arcari) [2022539] - hwmon: (k10temp) Update driver documentation (David Arcari) [2022539] - hwmon: (k10temp) Update documentation and add temp2_input info (David Arcari) [2022539] - docs: hwmon: k10temp: convert to ReST format (David Arcari) [2022539] - mptcp: fix deadlock in __mptcp_push_pending() (Davide Caratti) [2043598] - mptcp: clear 'kern' flag from fallback sockets (Davide Caratti) [2043598] - mptcp: remove tcp ulp setsockopt support (Davide Caratti) [2043598] - mptcp: never allow the PM to close a listener subflow (Davide Caratti) [2043598]- redhat: set LC_ALL=C before sorting config content (Frantisek Hrbata) - net: mana: Add RX fencing (Mohammed Gamal) [2030132] - net: mana: Add XDP support (Mohammed Gamal) [2030132] - net: mana: Fix memory leak in mana_hwc_create_wq (Mohammed Gamal) [2030132] - net: mana: Fix spelling mistake "calledd" -> "called" (Mohammed Gamal) [2030132] - net: mana: Support hibernation and kexec (Mohammed Gamal) [2030132] - net: mana: Improve the HWC error handling (Mohammed Gamal) [2030132] - net: mana: Report OS info to the PF driver (Mohammed Gamal) [2030132] - net: mana: Fix the netdev_err()'s vPort argument in mana_init_port() (Mohammed Gamal) [2030132] - net: mana: Allow setting the number of queues while the NIC is down (Mohammed Gamal) [2030132] - net: stmmac: Add GFP_DMA32 for rx buffers if no 64 capability (Mark Salter) [1989540] - net: stmmac: Fix potential integer overflow (Mark Salter) [1989540] - net: stmmac: fix issue where clk is being unprepared twice (Mark Salter) [1989540] - net: stmmac: fix kernel panic due to NULL pointer dereference of mdio_bus_data (Mark Salter) [1989540] - net: stmmac: fix system hang if change mac address after interface ifdown (Mark Salter) [1989540] - net: stmmac: correct clocks enabled in stmmac_vlan_rx_kill_vid() (Mark Salter) [1989540] - net: remove the mutex_acquire from __lock_sock_fast (Xin Long) [2026612] - net: core: Correct the sock::sk_lock.owned lockdep annotations (Xin Long) [2026612] - inet: use bigger hash table for IP ID generation (Xin Long) [2039969] {CVE-2021-45486} - net: revert "net: get rid of an signed integer overflow in ip_idents_reserve()" (Xin Long) [2039969] - net/mlx5: DR, Use FW API when updating FW-owned flow table (Michal Schmidt) [2042651] - ipv6: Continue processing multipath route even if gateway attribute is invalid (Hangbin Liu) [2041375] - ipv6: Check attribute length for RTA_GATEWAY when deleting multipath route (Hangbin Liu) [2041375] - ipv6: Do cleanup if attribute validation fails in multipath route (Hangbin Liu) [2041375] - ipv6: Check attribute length for RTA_GATEWAY in multipath route (Hangbin Liu) [2041375] - rtw89: fix maybe-uninitialized error (Íñigo Huguet) [2033291] - rtw89: enable driver and device RTL8852AE (Íñigo Huguet) [2033291] - rtw89: fix maybe-uninitialized error (RHEL only) (Íñigo Huguet) [2033291] - rtw89: 8852a: correct bit definition of dfs_en (Íñigo Huguet) [2033291] - rtw89: coex: Update COEX to 5.5.8 (Íñigo Huguet) [2033291] - rtw89: coex: Cancel PS leaving while C2H comes (Íñigo Huguet) [2033291] - rtw89: coex: Update BT counters while receiving report (Íñigo Huguet) [2033291] - rtw89: coex: Define LPS state for BTC using (Íñigo Huguet) [2033291] - rtw89: coex: Add MAC API to get BT polluted counter (Íñigo Huguet) [2033291] - rtw89: coex: Not to send H2C when WL not ready and count H2C (Íñigo Huguet) [2033291] - rtw89: coex: correct C2H header length (Íñigo Huguet) [2033291] - rtw89: don't kick off TX DMA if failed to write skb (Íñigo Huguet) [2033291] - rtw89: remove cch_by_bw which is not used (Íñigo Huguet) [2033291] - rtw89: fix sending wrong rtwsta->mac_id to firmware to fill address CAM (Íñigo Huguet) [2033291] - rtw89: fix incorrect channel info during scan (Íñigo Huguet) [2033291] - rtw89: update scan_mac_addr during scanning period (Íñigo Huguet) [2033291] - rtw89: use inline function instead macro to set H2C and CAM (Íñigo Huguet) [2033291] - rtw89: add const in the cast of le32_get_bits() (Íñigo Huguet) [2033291] - rtw89: add AXIDMA and TX FIFO dump in mac_mem_dump (Íñigo Huguet) [2033291] - rtw89: fix potentially access out of range of RF register array (Íñigo Huguet) [2033291] - rtw89: remove unneeded variable (Íñigo Huguet) [2033291] - rtw89: remove unnecessary conditional operators (Íñigo Huguet) [2033291] - rtw89: update rtw89_regulatory map to R58-R31 (Íñigo Huguet) [2033291] - rtw89: update tx power limit/limit_ru tables to R54 (Íñigo Huguet) [2033291] - rtw89: update rtw89 regulation definition to R58-R31 (Íñigo Huguet) [2033291] - rtw89: fill regd field of limit/limit_ru tables by enum (Íñigo Huguet) [2033291] - rtw89: update partition size of firmware header on skb->data (Íñigo Huguet) [2033291] - rtw89: Fix variable dereferenced before check 'sta' (Íñigo Huguet) [2033291] - rtw89: fix return value in hfc_pub_cfg_chk (Íñigo Huguet) [2033291] - rtw89: remove duplicate register definitions (Íñigo Huguet) [2033291] - rtw89: fix error function parameter (Íñigo Huguet) [2033291] - rtw89: remove unneeded semicolon (Íñigo Huguet) [2033291] - rtw89: fix return value check in rtw89_cam_send_sec_key_cmd() (Íñigo Huguet) [2033291] - rtw89: Remove redundant check of ret after call to rtw89_mac_enable_bb_rf (Íñigo Huguet) [2033291] - rtw89: Fix two spelling mistakes in debug messages (Íñigo Huguet) [2033291] - rtw89: add Realtek 802.11ax driver (Íñigo Huguet) [2033291] - powerpc/doc: Fix htmldocs errors (Diego Domingos) [2004798] - pseries/drmem: update LMBs after LPM (Diego Domingos) [2004798] - powerpc/pseries: Add support for FORM2 associativity (Diego Domingos) [2004798] - powerpc/pseries: Add a helper for form1 cpu distance (Diego Domingos) [2004798] - powerpc/pseries: Consolidate different NUMA distance update code paths (Diego Domingos) [2004798] - powerpc/pseries: Rename TYPE1_AFFINITY to FORM1_AFFINITY (Diego Domingos) [2004798] - powerpc/pseries: rename min_common_depth to primary_domain_index (Diego Domingos) [2004798] - powerpc/numa: Fix build when CONFIG_NUMA=n (Diego Domingos) [2004798] - pseries/hotplug-memory: hot-add: skip redundant LMB lookup (Diego Domingos) [2004798] - selftests: icmp_redirect: pass xfail=0 to log_test() (Hangbin Liu) [2041308] - selftests: net: Correct ping6 expected rc from 2 to 1 (Hangbin Liu) [2041308] - mt76: enable new device MT7921E (Íñigo Huguet) [2024056 1972045] - vrf: Reset IPCB/IP6CB when processing outbound pkts in vrf dev xmit (Antoine Tenart) [2044254] - SUNRPC: prevent port reuse on transports which don't request it. (Benjamin Coddington) [2016646] - SUNRPC: Fix races when closing the socket (Benjamin Coddington) [2016646] - SUNRPC: Prevent immediate close+reconnect (Benjamin Coddington) [2016646] - SUNRPC: Clean up scheduling of autoclose (Benjamin Coddington) [2016646] - SUNRPC: Fix potential memory corruption (Benjamin Coddington) [2016646] - sunrpc: remove unnecessary test in rpc_task_set_client() (Benjamin Coddington) [2016646] - SUNRPC: Replace use of socket sk_callback_lock with sock_lock (Benjamin Coddington) [2016646] - arm64: numa: simplify dummy_numa_init() (Vitaly Kuznetsov) [2029774] - ACPI: NUMA: Process hotpluggable memblocks when !CONFIG_MEMORY_HOTPLUG (Vitaly Kuznetsov) [2029774] - s390/sclp: fix Secure-IPL facility detection (Stefan Schulze Frielinghaus) [2039182] - powerpc/pseries/mobility: ignore ibm, platform-facilities updates (Diego Domingos) [2031827] - of: Fix property name in of_node_get_device_type (Diego Domingos) [2031827] - of: Add device_type access helper functions (Diego Domingos) [2031827] - powerpc/watchdog: help remote CPUs to flush NMI printk output (Diego Domingos) [2030259] - powerpc/watchdog: Fix wd_smp_last_reset_tb reporting (Diego Domingos) [2030259] - powerpc/watchdog: read TB close to where it is used (Diego Domingos) [2030259] - powerpc/watchdog: Avoid holding wd_smp_lock over printk and smp_send_nmi_ipi (Diego Domingos) [2030259] - powerpc/watchdog: tighten non-atomic read-modify-write access (Diego Domingos) [2030259] - powerpc/watchdog: Fix missed watchdog reset due to memory ordering race (Diego Domingos) [2030259] - selftests/sgx: Fix corrupted cpuid macro invocation (Vladis Dronov) [1920030] - x86/sgx: Fix minor documentation issues (Vladis Dronov) [1920030] - selftests/sgx: Add test for multiple TCS entry (Vladis Dronov) [1920030] - selftests/sgx: Enable multiple thread support (Vladis Dronov) [1920030] - selftests/sgx: Add page permission and exception test (Vladis Dronov) [1920030] - selftests/sgx: Rename test properties in preparation for more enclave tests (Vladis Dronov) [1920030] - selftests/sgx: Provide per-op parameter structs for the test enclave (Vladis Dronov) [1920030] - selftests/sgx: Add a new kselftest: Unclobbered_vdso_oversubscribed (Vladis Dronov) [1920030] - selftests/sgx: Move setup_test_encl() to each TEST_F() (Vladis Dronov) [1920030] - selftests/sgx: Encpsulate the test enclave creation (Vladis Dronov) [1920030] - selftests/sgx: Dump segments and /proc/self/maps only on failure (Vladis Dronov) [1920030] - selftests/sgx: Create a heap for the test enclave (Vladis Dronov) [1920030] - selftests/sgx: Make data measurement for an enclave segment optional (Vladis Dronov) [1920030] - selftests/sgx: Assign source for each segment (Vladis Dronov) [1920030] - selftests/sgx: Fix a benign linker warning (Vladis Dronov) [1920030] - x86/sgx: Fix free page accounting (Vladis Dronov) [1920030] - x86/sgx: Add check for SGX pages to ghes_do_memory_failure() (Vladis Dronov) [1920030] - x86/sgx: Add hook to error injection address validation (Vladis Dronov) [1920030] - x86/sgx: Hook arch_memory_failure() into mainline code (Vladis Dronov) [1920030] - x86/sgx: Add SGX infrastructure to recover from poison (Vladis Dronov) [1920030] - x86/sgx: Initial poison handling for dirty and free pages (Vladis Dronov) [1920030] - x86/sgx: Add infrastructure to identify SGX EPC pages (Vladis Dronov) [1920030] - x86/sgx: Add new sgx_epc_page flag bit to mark free pages (Vladis Dronov) [1920030] - selftests/sgx: Fix Q1 and Q2 calculation in sigstruct.c (Vladis Dronov) [1920030] - selftests/sgx: remove checks for file execute permissions (Vladis Dronov) [1920030] - selftests/sgx: Refine the test enclave to have storage (Vladis Dronov) [1920030] - selftests/sgx: Add EXPECT_EEXIT() macro (Vladis Dronov) [1920030] - selftests/sgx: Dump enclave memory map (Vladis Dronov) [1920030] - selftests/sgx: Migrate to kselftest harness (Vladis Dronov) [1920030] - selftests/sgx: Rename 'eenter' and 'sgx_call_vdso' (Vladis Dronov) [1920030] - x86/sgx: Add missing xa_destroy() when virtual EPC is destroyed (Vladis Dronov) [1920030] - x86/sgx: Correct kernel-doc's arg name in sgx_encl_release() (Vladis Dronov) [1920030] - x86: Fix leftover comment typos (Vladis Dronov) [1920030] - mm,hwpoison: return -EHWPOISON to denote that the page has already been poisoned (Vladis Dronov) [1920030] - mm/memory-failure: use a mutex to avoid memory_failure() races (Vladis Dronov) [1920030] - mm,hwpoison: take free pages off the buddy freelists (Vladis Dronov) [1920030] - sched/fair: Consider SMT in ASYM_PACKING load balance (Prarit Bhargava) [1971924] - sched/fair: Carve out logic to mark a group for asymmetric packing (Prarit Bhargava) [1971924] - sched/fair: Provide update_sg_lb_stats() with sched domain statistics (Prarit Bhargava) [1971924] - sched/fair: Optimize checking for group_asym_packing (Prarit Bhargava) [1971924] - sched/topology: Introduce sched_group::flags (Prarit Bhargava) [1971924] - x86/sched: Decrease further the priorities of SMT siblings (Prarit Bhargava) [1971924]- nvme-fc: remove freeze/unfreeze around update_nr_hw_queues (Ewan D. Milne) [1996109] - nvme-fc: avoid race between time out and tear down (Ewan D. Milne) [1996109] - nvme-fc: update hardware queues before using them (Ewan D. Milne) [1996109] - igbvf: Refactor trace (Corinna Vinschen) [2039886] - igbvf: fix double free in `igbvf_probe` (Corinna Vinschen) [2039886] - mm/memory_hotplug: remove is_mem_section_removable() (David Hildenbrand) [2008072] - powerpc/pseries/hotplug-memory: stop checking is_mem_section_removable() (David Hildenbrand) [2008072] - drivers/base/memory.c: indicate all memory blocks as removable (David Hildenbrand) [2008072] - drivers/base/memory.c: fixup documentation of removable/phys_index/block_size_bytes (David Hildenbrand) [2008072] - Revert "mpi3mr: mark as tech preview" (Tomas Henzl) [1989634] - scsi: core: Avoid printing an error if target_alloc() returns -ENXIO (Tomas Henzl) [1977833] - scsi: mpi3mr: Use scnprintf() instead of snprintf() (Tomas Henzl) [1998599] - scsi: mpi3mr: Fix duplicate device entries when scanning through sysfs (Tomas Henzl) [1998599] - scsi: mpi3mr: Clean up mpi3mr_print_ioc_info() (Tomas Henzl) [1989634] - scsi: mpi3mr: Set up IRQs in resume path (Tomas Henzl) [1991577] - Revert "scsi: lpfc: ls_rjt erroneus FLOGIs" (Dick Kennedy) [2032488] - pseries/eeh: Fix the kdump kernel crash during eeh_pseries_init (Steve Best) [2028253] - arm64: smp: Add missing prototype for some smp.c functions (Mark Salter) [1996738] - irqchip/gic-v3-its: Remove unnecessary oom message (Mark Salter) [1996738] - irqchip/gic-v2m: Remove unnecessary oom message (Mark Salter) [1996738] - irqchip/gic: Split vGIC probing information from the GIC code (Mark Salter) [1996738] - irqchip/gic-v3: Workaround inconsistent PMR setting on NMI entry (Mark Salter) [1996738] - irqchip/gic-v3: Do not enable irqs when handling spurious interrups (Mark Salter) [1996738] - irqchip/gic-v4.1: Disable vSGI upon (GIC CPUIF < v4.1) detection (Mark Salter) [1996738] - irqchip/gic-v3: Fix OF_BAD_ADDR error handling (Mark Salter) [1996738] - arm64: Move ICH_ sysreg bits from arm-gic-v3.h to sysreg.h (Mark Salter) [1996738] - irqchip/gic-v3-its: Drop the setting of PTZ altogether (Mark Salter) [1996738] - irqchip/gic-v3-its: Add a cache invalidation right after vPE unmapping (Mark Salter) [1996738] - irqchip/gic-v3: Fix typos in PMR/RPR SCR_EL3.FIQ handling explanation (Mark Salter) [1996738] - genirq/msi: Initialize msi_alloc_info before calling msi_domain_prepare_irqs() (Mark Salter) [1996738] - irqchip/gic: Spelling s/REturn/Return/ (Mark Salter) [1996738] - irqchip/gic-v3-its: Unconditionally save/restore the ITS state on suspend (Mark Salter) [1996738] - irq-chip/gic-v3-its: Fix crash if ITS is in a proximity domain without processor or memory (Mark Salter) [1996738] - irqchip/gic: Cleanup Franken-GIC handling (Mark Salter) [1996738] - arm64: Implement panic_smp_self_stop() (Mark Salter) [1996738] - arm64: Improve parking of stopped CPUs (Mark Salter) [1996738] - genirq: Allow interrupts to be excluded from /proc/interrupts (Mark Salter) [1996738] - irqchip/gic-v3: Support pseudo-NMIs when SCR_EL3.FIQ == 0 (Mark Salter) [1996738] - irqchip/gic-v3: Spell out when pseudo-NMIs are enabled (Mark Salter) [1996738] - irqchip/gic-v2, v3: Prevent SW resends entirely (Mark Salter) [1996738] - irqchip/git-v3-its: Implement irq_retrigger callback for device-triggered LPIs (Mark Salter) [1996738] - irqchip/gic-v2, v3: Implement irq_chip->irq_retrigger() (Mark Salter) [1996738] - irqchip/gic-v4.1: Use GFP_ATOMIC flag in allocate_vpe_l1_table() (Mark Salter) [1996738] - irqchip/gic-v4.1: Ensure accessing the correct RD when writing INVALLR (Mark Salter) [1996738] - irqchip/gic-v3: Remove unused register definition (Mark Salter) [1996738] - drivers/irqchip: Use new macro ACPI_DECLARE_SUBTABLE_PROBE_ENTRY (Mark Salter) [1996738] - drivers/acpi: Add new macro ACPI_DECLARE_SUBTABLE_PROBE_ENTRY (Mark Salter) [1996738] - KVM: arm64: vgic-v4: Plug race between non-residency and v4.1 doorbell (Mark Salter) [1996738] - irqchip/gic: Atomically update affinity (Mark Salter) [1996738] - irqchip/gic-v4.1: Use readx_poll_timeout_atomic() to fix sleep in atomic (Mark Salter) [1996738] - irqchip/gic-v2, v3: Drop extra IRQ_NOAUTOEN setting for (E)PPIs (Mark Salter) [1996738] - irqchip/gic-v3-its: Balance initial LPI affinity across CPUs (Mark Salter) [1996738] - irqchip/gic-v3-its: Track LPI distribution on a per CPU basis (Mark Salter) [1996738] - irqchip/gic-v3: Fix missing "__init" for gic_smp_init() (Mark Salter) [1996738] - selftests/bpf: Enlarge select() timeout for test_maps (Jiri Benc) [1869444] - PCI: Do not enable AtomicOps on VFs (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Fix stats counters (Selvin Xavier) [1987081 1984339 2001893] - RDMA/bnxt_re: Prefer kcalloc over open coded arithmetic (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Remove unpaired rtnl unlock in bnxt_re_dev_init() (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Add missing spin lock initialization (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Fix uninitialized struct bit field rsvd1 (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Update ABI to pass wqe-mode to user space (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Enable global atomic ops if platform supports (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Drop unnecessary NULL checks after container_of (Selvin Xavier) [1987081 1984339] - dm btree remove: fix use after free in rebalance_children() (Benjamin Marzinski) [2034424] - dm table: log table creation error code (Benjamin Marzinski) [2034424] - dm: make workqueue names device-specific (Benjamin Marzinski) [2034424] - dm writecache: Make use of the helper macro kthread_run() (Benjamin Marzinski) [2034424] - dm crypt: Make use of the helper macro kthread_run() (Benjamin Marzinski) [2034424] - dm: fix mempool NULL pointer race when completing IO (Benjamin Marzinski) [2034424] - dm rq: don't queue request to blk-mq during DM suspend (Benjamin Marzinski) [1891486] - dm verity: skip redundant verity_handle_err() on I/O errors (Benjamin Marzinski) [2034424] - dm writecache: add event counters (Benjamin Marzinski) [2034424] - dm writecache: report invalid return from writecache_map helpers (Benjamin Marzinski) [2034424] - dm writecache: further writecache_map() cleanup (Benjamin Marzinski) [2034424] - dm writecache: factor out writecache_map_remap_origin() (Benjamin Marzinski) [2034424] - dm writecache: split up writecache_map() to improve code readability (Benjamin Marzinski) [2034424] - dm btree remove: assign new_root only when removal succeeds (Benjamin Marzinski) [2034424] - dm ps io affinity: remove redundant continue statement (Benjamin Marzinski) [2034424] - dm: rearrange core declarations for extended use from dm-zone.c (Benjamin Marzinski) [2034424] - dm space map disk: cache a small number of index entries (Benjamin Marzinski) [2034424] - dm space maps: improve performance with inc/dec on ranges of blocks (Benjamin Marzinski) [2034424] - dm space maps: don't reset space map allocation cursor when committing (Benjamin Marzinski) [2034424] - dm btree: improve btree residency (Benjamin Marzinski) [2034424] - dm integrity: fix sparse warnings (Benjamin Marzinski) [2034424] - dm: replace dm_vcalloc() (Benjamin Marzinski) [2034424] - dm integrity: add the "reset_recalculate" feature flag (Benjamin Marzinski) [2034424] - dm cache: remove needless request_queue NULL pointer checks (Benjamin Marzinski) [2034424] - dm thin: remove needless request_queue NULL pointer check (Benjamin Marzinski) [2034424] - dm ioctl: replace device hash with red-black tree (Benjamin Marzinski) [2034424] - recordmcount.pl: fix typo in s390 mcount regex (Jerome Marchand) [2025890] - recordmcount.pl: look for jgnop instruction as well as bcrl on s390 (Jerome Marchand) [2025890] - KVM: x86: Wait for IPIs to be delivered when handling Hyper-V TLB flush hypercall (Vitaly Kuznetsov) [1868572] - HID: magicmouse: prevent division by 0 on scroll (Benjamin Tissoires) [2022814] - HID: input: set usage type to key on keycode remap (Benjamin Tissoires) [2022814] - HID: input: Fix parsing of HID_CP_CONSUMER_CONTROL fields (Benjamin Tissoires) [2022814] - HID: u2fzero: properly handle timeouts in usb_submit_urb (Benjamin Tissoires) [2022814] - HID: u2fzero: clarify error check and length calculations (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix potential NULL pointer dereference (Benjamin Tissoires) [2022814] - HID: u2fzero: ignore incomplete packets without data (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix potential NULL pointer dereference (Benjamin Tissoires) [2022814] - HID: wacom: Add new Intuos BT (CTL-4100WL/CTL-6100WL) device IDs (Benjamin Tissoires) [2022814] - HID: apple: Fix logical maximum and usage maximum of Magic Keyboard JIS (Benjamin Tissoires) [2022814] - HID: betop: fix slab-out-of-bounds Write in betop_probe (Benjamin Tissoires) [2022814] - HID: usbhid: Simplify code in hid_submit_ctrl() (Benjamin Tissoires) [2022814] - HID: usbhid: Fix warning caused by 0-length input reports (Benjamin Tissoires) [2022814] - HID: usbhid: Fix flood of "control queue full" messages (Benjamin Tissoires) [2022814] - HID: sony: Fix more ShanWan clone gamepads to not rumble when plugged in. (Benjamin Tissoires) [2022814] - HID: sony: support for the ghlive ps4 dongles (Benjamin Tissoires) [2022814] - HID: thrustmaster: clean up Makefile and adapt quirks (Benjamin Tissoires) [2022814] - HID: i2c-hid: Fix Elan touchpad regression (Benjamin Tissoires) [2022814] - HID: asus: Prevent Claymore sending suspend event (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add dyndbg prints for debugging (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add support for PM suspend and resume (Benjamin Tissoires) [2022814] - HID: amd_sfh: Move hid probe after sensor is enabled (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add command response to check command status (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix period data field to enable sensor (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: battery: provide CAPACITY property for newer devices (Benjamin Tissoires) [2022814] - HID: thrustmaster: Fix memory leak in thrustmaster_interrupts() (Benjamin Tissoires) [2022814] - HID: thrustmaster: Fix memory leak in remove (Benjamin Tissoires) [2022814] - HID: thrustmaster: Fix memory leaks in probe (Benjamin Tissoires) [2022814] - HID: elo: update the reference count of the usb device structure (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Use 'atomic_inc_return' instead of hand-writing it (Benjamin Tissoires) [2022814] - HID: ft260: fix device removal due to USB disconnect (Benjamin Tissoires) [2022814] - HID: apple: Add missing scan code event for keys handled by hid-apple (Benjamin Tissoires) [2022814] - HID: cmedia: add support for HS-100B mute button (Benjamin Tissoires) [2022814] - HID: i2c-hid: goodix: Use the devm variant of regulator_register_notifier() (Benjamin Tissoires) [2022814] - HID: wacom: Refactor touch input mute checks into a common function (Benjamin Tissoires) [2022814] - HID: wacom: Avoid sending empty sync events (Benjamin Tissoires) [2022814] - HID: wacom: Short-circuit processing of touch when it is disabled (Benjamin Tissoires) [2022814] - HID: wacom: set initial hardware touch switch state to 'off' (Benjamin Tissoires) [2022814] - HID: wacom: Skip processing of touches with negative slot values (Benjamin Tissoires) [2022814] - HID: wacom: Re-enable touch by default for Cintiq 24HDT / 27QHDT (Benjamin Tissoires) [2022814] - HID: Kconfig: Fix spelling mistake "Uninterruptable" -> "Uninterruptible" (Benjamin Tissoires) [2022814] - HID: apple: Add support for Keychron K1 wireless keyboard (Benjamin Tissoires) [2022814] - HID: usbhid: free raw_report buffers in usbhid_stop (Benjamin Tissoires) [2022814] - HID: fix typo in Kconfig (Benjamin Tissoires) [2022814] - HID: ft260: fix format type warning in ft260_word_show() (Benjamin Tissoires) [2022814] - HID: i2c-hid: goodix: Tie the reset line to true state of the regulator (Benjamin Tissoires) [2022814] - HID: amd_sfh: Use correct MMIO register for DMA address (Benjamin Tissoires) [2022814] - HID: magicmouse: high-resolution scroll threshold (Benjamin Tissoires) [2022814] - HID: magicmouse: enable high-resolution scroll (Benjamin Tissoires) [2022814] - HID: asus: Remove check for same LED brightness on set (Benjamin Tissoires) [2022814] - HID: input: do not report stylus battery state as "full" (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: use async resume function (Benjamin Tissoires) [2022814] - HID: thrustmaster: Switch to kmemdup() when allocate change_request (Benjamin Tissoires) [2022814] - HID: multitouch: Disable event reporting on suspend when the device is not a wakeup-source (Benjamin Tissoires) [2022814] - HID: logitech-dj: Implement may_wakeup ll-driver callback (Benjamin Tissoires) [2022814] - HID: usbhid: Implement may_wakeup ll-driver callback (Benjamin Tissoires) [2022814] - HID: core: Add hid_hw_may_wakeup() function (Benjamin Tissoires) [2022814] - HID: input: Add support for Programmable Buttons (Benjamin Tissoires) [2022814] - HID: wacom: Correct base usage for capacitive ExpressKey status bits (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add initial support for HPD sensor (Benjamin Tissoires) [2022814 1961759] - HID: amd_sfh: Extend ALS support for newer AMD platform (Benjamin Tissoires) [2022814 1961759] - HID: amd_sfh: Extend driver capabilities for multi-generation support (Benjamin Tissoires) [2022814 1961759] - HID: surface-hid: Fix get-report request (Benjamin Tissoires) [2022814] - HID: sony: fix freeze when inserting ghlive ps3/wii dongles (Benjamin Tissoires) [2022814] - HID: usbkbd: Avoid GFP_ATOMIC when GFP_KERNEL is possible (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Specify that EHL no cache snooping (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ishtp: Add dma_no_cache_snooping() callback (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Set ISH driver depends on x86 (Benjamin Tissoires) [2022814] - HID: hid-input: add Surface Go battery quirk (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Fix minor typos in comments (Benjamin Tissoires) [2022814] - HID: magicmouse: fix NULL-deref on disconnect (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Add Alder Lake device IDs (Benjamin Tissoires) [2022814] - HID: i2c-hid: fix format string mismatch (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix memory leak in amd_sfh_work (Benjamin Tissoires) [2022814] - HID: amd_sfh: Use devm_kzalloc() instead of kzalloc() (Benjamin Tissoires) [2022814] - HID: ft260: improve error handling of ft260_hid_feature_report_get() (Benjamin Tissoires) [2022814] - HID: asus: Cleanup Asus T101HA keyboard-dock handling (Benjamin Tissoires) [2022814] - HID: magicmouse: fix crash when disconnecting Magic Trackpad 2 (Benjamin Tissoires) [2022814] - HID: gt683r: add missing MODULE_DEVICE_TABLE (Benjamin Tissoires) [2022814] - HID: pidff: fix error return code in hid_pidff_init() (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: initialize level variable (Benjamin Tissoires) [2022814] - HID: multitouch: Disable event reporting on suspend on the Asus T101HA touchpad (Benjamin Tissoires) [2022814] - HID: core: Remove extraneous empty line before EXPORT_SYMBOL_GPL(hid_check_keys_pressed) (Benjamin Tissoires) [2022814] - HID: usbmouse: Avoid GFP_ATOMIC when GFP_KERNEL is possible (Benjamin Tissoires) [2022814] - HID: hid-sensor-custom: Process failure of sensor_hub_set_feature() (Benjamin Tissoires) [2022814] - HID: i2c-hid: Skip ELAN power-on command after reset (Benjamin Tissoires) [2022814] - HID: usbhid: fix info leak in hid_submit_ctrl (Benjamin Tissoires) [2022814] - HID: Add BUS_VIRTUAL to hid_connect logging (Benjamin Tissoires) [2022814] - HID: input: replace outdated HID numbers+comments with macros (Benjamin Tissoires) [2022814] - HID: multitouch: set Stylus suffix for Stylus-application devices, too (Benjamin Tissoires) [2022814] - HID: multitouch: require Finger field to mark Win8 reports as MT (Benjamin Tissoires) [2022814] - HID: remove the unnecessary redefinition of a macro (Benjamin Tissoires) [2022814] - HID: quirks: Add quirk for Lenovo optical mouse (Benjamin Tissoires) [2022814] - HID: asus: filter G713/G733 key event to prevent shutdown (Benjamin Tissoires) [2022814] - HID: lg-g15 + ite: Add MODULE_AUTHOR (Benjamin Tissoires) [2022814] - HID: lg-g15: Add support for the Logitech Z-10 speakers (Benjamin Tissoires) [2022814] - HID: lg-g15: Make the LED-name used by lg_g15_register_led() a parameter (Benjamin Tissoires) [2022814] - HID: lg-g15: Add a lg_g15_init_input_dev() helper function (Benjamin Tissoires) [2022814] - HID: lg-g15: Add a lg_g15_handle_lcd_menu_keys() helper function (Benjamin Tissoires) [2022814] - HID: lg-g15: Remove unused size argument from lg_*_event() functions (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Return error for hid_set_field() failure (Benjamin Tissoires) [2022814] - HID: ft260: check data size in ft260_smbus_write() (Benjamin Tissoires) [2022814] - HID: surface-hid: Fix integer endian conversion (Benjamin Tissoires) [2022814] - HID: hid-debug: recognize KEY_ASSISTANT and KEY_KBD_LAYOUT_NEXT (Benjamin Tissoires) [2022814] - HID: hid-input: add mapping for emoji picker key (Benjamin Tissoires) [2022814] - HID: a4tech: use A4_2WHEEL_MOUSE_HACK_B8 for A4TECH NB-95 (Benjamin Tissoires) [2022814] - HID: logitech-dj/hidpp: Add info/warn/err messages about 27 MHz keyboard encryption (Benjamin Tissoires) [2022814] - HID: quirks: Add HID_QUIRK_NO_INIT_REPORTS quirk for Dell K15A keyboard-dock (Benjamin Tissoires) [2022814] - HID: thrustmaster: fix return value check in thrustmaster_probe() (Benjamin Tissoires) [2022814] - HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for Saitek X65 (Benjamin Tissoires) [2022814] - HID: do not use down_interruptible() when unbinding devices (Benjamin Tissoires) [2022814] - HID: asus: Filter keyboard EC for old ROG keyboard (Benjamin Tissoires) [2022814] - HID: semitek: new driver for GK6X series keyboards (Benjamin Tissoires) [2022814] - HID: wacom: Setup pen input capabilities to the targeted tools (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Move 'hsdev' description to correct struct definition (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Remove unused struct member 'quirks' (Benjamin Tissoires) [2022814] - HID: wacom_sys: Demote kernel-doc abuse (Benjamin Tissoires) [2022814] - HID: hid-sensor-custom: Remove unused variable 'ret' (Benjamin Tissoires) [2022814] - HID: hid-uclogic-params: Ensure function names are present and correct in kernel-doc headers (Benjamin Tissoires) [2022814] - HID: hid-uclogic-rdesc: Kernel-doc is for functions and structs (Benjamin Tissoires) [2022814] - HID: hid-logitech-hidpp: Fix conformant kernel-doc header and demote abuses (Benjamin Tissoires) [2022814] - HID: hid-picolcd_core: Remove unused variable 'ret' (Benjamin Tissoires) [2022814] - HID: hid-kye: Fix incorrect function name for kye_tablet_enable() (Benjamin Tissoires) [2022814] - HID: hid-core: Fix incorrect function name in header (Benjamin Tissoires) [2022814] - HID: hid-alps: Correct struct misnaming (Benjamin Tissoires) [2022814] - HID: usbhid: hid-pidff: Demote a couple kernel-doc abuses (Benjamin Tissoires) [2022814] - HID: usbhid: Repair a formatting issue in a struct description (Benjamin Tissoires) [2022814] - HID: ishtp-hid-client: Fix 'suggest-attribute=format' compiler warning (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ishtp-fw-loader: Fix a bunch of formatting issues (Benjamin Tissoires) [2022814] - HID: ishtp-hid-client: Fix incorrect function name report_bad_packet() (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Correct fw_reset_work_fn() function name in header (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Fix potential copy/paste error (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Fix a little doc-rot (Benjamin Tissoires) [2022814] - HID: intel-ish: Fix a naming disparity and a formatting error (Benjamin Tissoires) [2022814] - HID: intel-ish: Supply some missing param descriptions (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: pci-ish: Remove unused variable 'ret' (Benjamin Tissoires) [2022814] - HID: ishtp-hid-client: Move variable to where it's actually used (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Remove unused variable 'err' (Benjamin Tissoires) [2022814] - HID: hid-thrustmaster: Demote a bunch of kernel-doc abuses (Benjamin Tissoires) [2022814] - HID: input: map battery capacity (00850065) (Benjamin Tissoires) [2022814] - HID: magicmouse: fix reconnection of Magic Mouse 2 (Benjamin Tissoires) [2022814] - HID: magicmouse: fix 3 button emulation of Mouse 2 (Benjamin Tissoires) [2022814] - HID: magicmouse: add Apple Magic Mouse 2 support (Benjamin Tissoires) [2022814] - HID: lenovo: Add support for Thinkpad X1 Tablet Thin keyboard (Benjamin Tissoires) [2022814] - HID: lenovo: Rework how the tp10ubkbd code decides which USB interface to use (Benjamin Tissoires) [2022814] - HID: lenovo: Set default_triggers for the mute and micmute LEDs (Benjamin Tissoires) [2022814] - HID: lenovo: Map mic-mute button to KEY_F20 instead of KEY_MICMUTE (Benjamin Tissoires) [2022814] - HID: lenovo: Set LEDs max_brightness value (Benjamin Tissoires) [2022814] - HID: lenovo: Remove lenovo_led_brightness_get() (Benjamin Tissoires) [2022814] - HID: lenovo: Check hid_get_drvdata() returns non NULL in lenovo_event() (Benjamin Tissoires) [2022814] - HID: lenovo: Fix lenovo_led_set_tp10ubkbd() error handling (Benjamin Tissoires) [2022814] - HID: lenovo: Use brightness_set_blocking callback for setting LEDs brightness (Benjamin Tissoires) [2022814] - HID: elan: Remove elan_mute_led_get_brigtness() (Benjamin Tissoires) [2022814] - HID: elan: Set default_trigger for the mute LED (Benjamin Tissoires) [2022814] - HID: elan: Silence mute LED errors being logged when the device is unplugged (Benjamin Tissoires) [2022814] - HID: fix memdup.cocci warnings (Benjamin Tissoires) [2022814] - HID: surface-hid: Add support for legacy keyboard interface (Benjamin Tissoires) [2022814] - HID: Add support for Surface Aggregator Module HID transport (Benjamin Tissoires) [2022814] - HID: thrustmaster: introduce proper USB dependency (Benjamin Tissoires) [2022814] - HID: intel_ish-hid: HBM: Use connected standby state bit during suspend/resume (Benjamin Tissoires) [2022814] - HID: ft260: fix an error message in ft260_i2c_write_read() (Benjamin Tissoires) [2022814] - HID: support for initialization of some Thrustmaster wheels (Benjamin Tissoires) [2022814] - HID: wacom: set EV_KEY and EV_ABS only for non-HID_GENERIC type of devices (Benjamin Tissoires) [2022814] - HID: ft260: add usb hid to i2c host bridge driver (Benjamin Tissoires) [2022814] - iio: Add relative sensitivity support (Benjamin Tissoires) [2022814] - iio: hid-sensors: Move get sensitivity attribute to hid-sensor-common (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Make remove callback return void (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Simplify logic in ishtp_cl_device_remove() (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Drop if block with an always false condition (Benjamin Tissoires) [2022814] - AMD_SFH: Add DMI quirk table for BIOS-es which don't set the activestatus bits (Benjamin Tissoires) [2022814] - AMD_SFH: Add sensor_mask module parameter (Benjamin Tissoires) [2022814] - AMD_SFH: Removed unused activecontrolstatus member from the amd_mp2_dev struct (Benjamin Tissoires) [2022814] - HID: wacom: Assign boolean values to a bool variable (Benjamin Tissoires) [2022814] - HID cp2112: fix support for multiple gpiochips (Benjamin Tissoires) [2022814] - HID: alps: fix error return code in alps_input_configured() (Benjamin Tissoires) [2022814] - HID: asus: Add support for 2021 ASUS N-Key keyboard (Benjamin Tissoires) [2022814] - HID: hiddev: Return specific error codes on connect failure (Benjamin Tissoires) [2022814] - HID: plantronics: Workaround for double volume key presses (Benjamin Tissoires) [2022814] - HID: logitech-dj: Handle newer quad/bt2.0 receivers in HID proxy mode (Benjamin Tissoires) [2022814] - HID: logitech-dj: Use hid-ids.h defines for USB device-ids for all supported devices (Benjamin Tissoires) [2022814] - HID: google: add don USB id (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Drop redundant ACPI_PTR() (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Move GUID out of function and described it (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Switch to new style i2c-driver probe function (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Get ACPI companion only once and reuse it (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense player LED support. (Benjamin Tissoires) [2022814] - HID: playstation: add microphone mute support for DualSense. (Benjamin Tissoires) [2022814] - HID: playstation: add initial DualSense lightbar support. (Benjamin Tissoires) [2022814] - HID: wacom: Ignore attempts to overwrite the touch_max value from HID (Benjamin Tissoires) [2022814] - HID: playstation: fix array size comparison (off-by-one) (Benjamin Tissoires) [2022814] - HID: playstation: fix unused variable in ps_battery_get_property. (Benjamin Tissoires) [2022814] - HID: playstation: report DualSense hardware and firmware version. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense classic rumble support. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense Bluetooth support. (Benjamin Tissoires) [2022814] - HID: playstation: track devices in list. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense accelerometer and gyroscope support. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense touchpad support. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense battery support. (Benjamin Tissoires) [2022814] - HID: playstation: use DualSense MAC address as unique identifier. (Benjamin Tissoires) [2022814] - HID: playstation: initial DualSense USB support. (Benjamin Tissoires) [2022814] - HID: ite: Enable QUIRK_TOUCHPAD_ON_OFF_REPORT on Acer Aspire Switch 10E (Benjamin Tissoires) [2022814] - HID: Ignore battery for Elan touchscreen on HP Spectre X360 15-df0xxx (Benjamin Tissoires) [2022814] - HID: logitech-dj: add support for the new lightspeed connection iteration (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Add Tiger Lake H PCI device ID (Benjamin Tissoires) [2022814] - HID: logitech-dj: add support for keyboard events in eQUAD step 4 Gaming (Benjamin Tissoires) [2022814] - HID: i2c-hid: Add I2C_HID_QUIRK_NO_IRQ_AFTER_RESET for ITE8568 EC on Voyo Winpad A15 (Benjamin Tissoires) [2022814] - HID: displays: convert sysfs sprintf/snprintf family to sysfs_emit (Benjamin Tissoires) [2022814] - HID: wacom: convert sysfs sprintf/snprintf family to sysfs_emit (Benjamin Tissoires) [2022814] - HID: lg-g15: make a const array static, makes object smaller (Benjamin Tissoires) [2022814] - HID: google: Get HID report on probe to confirm tablet switch state (Benjamin Tissoires) [2022814] - HID: hid-input: avoid splitting keyboard, system and consumer controls (Benjamin Tissoires) [2022814] - HID: correct kernel-doc notation in hid-quirks.c (Benjamin Tissoires) [2022814] - HID: correct kernel-doc notation in (Benjamin Tissoires) [2022814] - HID: wacom: Correct NULL dereference on AES pen proximity (Benjamin Tissoires) [2022814] - HID: multitouch: Set to high latency mode on suspend. (Benjamin Tissoires) [2022814] - HID: multitouch: Apply MT_QUIRK_CONFIDENCE quirk for multi-input devices (Benjamin Tissoires) [2022814] - HID: hid-sensor-custom: Add custom sensor iio support (Benjamin Tissoires) [2022814] - HID: i2c-hid: Introduce goodix-i2c-hid using i2c-hid core (Benjamin Tissoires) [2022814] - redhat: HID: enable I2C_HID_ACPI (Benjamin Tissoires) [2022814] - HID: i2c-hid: Reorganize so ACPI and OF are separate modules (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: add support for Unified Battery (1004) feature (Benjamin Tissoires) [2022814] - HID: sony: Add support for tilt on guitar hero guitars (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Add product ID for MX Ergo in Bluetooth mode (Benjamin Tissoires) [2022814] - HID: chicony: Add Wireless Radio Control feature for Chicony devices (Benjamin Tissoires) [2022814] - HID: Ignore battery for Elan touchscreen on ASUS UX550 (Benjamin Tissoires) [2022814] - HID: logitech-dj: add the G602 receiver (Benjamin Tissoires) [2022814] - HID: core: detect and skip invalid inputs to snto32() (Benjamin Tissoires) [2022814] - HID: uclogic: Improve support for Trust Panora (Benjamin Tissoires) [2022814] - HID: wiimote: remove h from printk format specifier (Benjamin Tissoires) [2022814] - HID: uclogic: remove h from printk format specifier (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Address EHL Sx resume issues (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: finish power flow for EHL OOB (Benjamin Tissoires) [2022814] - HID: sony: select CONFIG_CRC32 (Benjamin Tissoires) [2022814] - HID: sfh: fix address space confusion (Benjamin Tissoires) [2022814] - HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad device (Benjamin Tissoires) [2022814] - HID: wacom: Fix memory leakage caused by kfifo_alloc (Benjamin Tissoires) [2022814] - HID: i2c-hid: add Vero K147 to descriptor override (Benjamin Tissoires) [2022814] - HID: ite: Add support for Acer S1002 keyboard-dock (Benjamin Tissoires) [2022814] - HID: sony: support for ghlive ps3/wii u dongles (Benjamin Tissoires) [2022814] - HID: hidraw: Add additional hidraw input/output report ioctls. (Benjamin Tissoires) [2022814] - HID: Increase HID maximum report size to 16KB (Benjamin Tissoires) [2022814] - HID: elecom: drop stray comment (Benjamin Tissoires) [2022814] - HID: mf: add support for 0079:1846 Mayflash/Dragonrise USB Gamecube Adapter (Benjamin Tissoires) [2022814] - HID: elecom: add support for EX-G M-XGL20DLBK wireless mouse (Benjamin Tissoires) [2022814] - HID: elecom: rewrite report based on model specific parameters (Benjamin Tissoires) [2022814] - HID: wacom: Constify attribute_groups (Benjamin Tissoires) [2022814] - HID: input: Fix fall-through warnings for Clang (Benjamin Tissoires) [2022814] - HID: usbhid: Fix fall-through warnings for Clang (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Add hid_device_id for V470 bluetooth mouse (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Remove unnecessary assignment to variable rv (Benjamin Tissoires) [2022814] - HID: sony: Workaround for DS4 dongle hotplug kernel crash. (Benjamin Tissoires) [2022814] - HID: sony: Don't use fw_version/hw_version for sysfs cleanup. (Benjamin Tissoires) [2022814] - HID: sony: Report more accurate DS4 power status. (Benjamin Tissoires) [2022814] - SFH: fix error return check for -ERESTARTSYS (Benjamin Tissoires) [2022814] - HID: Add Logitech Dinovo Edge battery quirk (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Add HIDPP_CONSUMER_VENDOR_KEYS quirk for the Dinovo Edge (Benjamin Tissoires) [2022814] - HID: add HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE for Gamevice devices (Benjamin Tissoires) [2022814] - HID: mcp2221: Fix GPIO output handling (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Fix issue with devices with no report ID (Benjamin Tissoires) [2022814] - HID: hid-input: occasionally report stylus battery even if not changed (Benjamin Tissoires) [2022814] - timekeeping: Add missing _ns functions for coarse accessors (Benjamin Tissoires) [2022814] - HID: i2c-hid: show the error when failing to fetch the HID descriptor (Benjamin Tissoires) [2022814] - AMD_SFH: Fix for incorrect Sensor index (Benjamin Tissoires) [2022814] - HID: asus: Add support for ASUS N-Key keyboard (Benjamin Tissoires) [2022814] - HID: i2c-hid: Put ACPI enumerated devices in D3 on shutdown (Benjamin Tissoires) [2022814] - HID: add support for Sega Saturn (Benjamin Tissoires) [2022814] - HID: cypress: Support Varmilo Keyboards' media hotkeys (Benjamin Tissoires) [2022814] - HID: ite: Replace ABS_MISC 120/121 events with touchpad on/off keypresses (Benjamin Tissoires) [2022814] - SFH: Create HID report to Enable support of AMD sensor fusion Hub (SFH) (Benjamin Tissoires) [2022814] - SFH:Transport Driver to add support of AMD Sensor Fusion Hub (SFH) (Benjamin Tissoires) [2022814] - redhat: HID: enable AMD_SFH_HUB (Benjamin Tissoires) [1965674] - SFH: PCIe driver to add support of AMD sensor fusion hub (Benjamin Tissoires) [2022814] - HID: uclogic: Add ID for Trust Flex Design Tablet (Benjamin Tissoires) [2022814] - HID: i2c-hid: Enable wakeup capability from Suspend-to-Idle (Benjamin Tissoires) [2022814] - HID: add vivaldi HID driver (Benjamin Tissoires) [2022814] - HID: i2c-hid: fix kerneldoc warnings in i2c-hid-core.c (Benjamin Tissoires) [2022814] - HID: core: fix kerneldoc warnings in hid-core.c (Benjamin Tissoires) [2022814] - HID: multitouch: Lenovo X1 Tablet Gen2 trackpoint and buttons (Benjamin Tissoires) [2022814] - HID: alps: clean up indentation issue (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: simplify the return expression of ishtp_bus_remove_device() (Benjamin Tissoires) [2022814] - HID: hid-debug: fix nonblocking read semantics wrt EIO/ERESTARTSYS (Benjamin Tissoires) [2022814] - HID: i2c-hid: Prefer asynchronous probe (Benjamin Tissoires) [2022814] - HID: wiimote: narrow spinlock range in wiimote_hid_event() (Benjamin Tissoires) [2022814] - HID: wiimote: make handlers[] const (Benjamin Tissoires) [2022814] - HID: logitech-dj: Fix spelling in comment (Benjamin Tissoires) [2022814] - HID: apple: Add support for Matias wireless keyboard (Benjamin Tissoires) [2022814] - Input: elan_i2c - reduce the resume time for controller in Whitebox (Benjamin Tissoires) [2022814] - Input: parkbd - switch to use module_parport_driver() (Benjamin Tissoires) [2022814] - Input: i8042 - fix typos in comments (Benjamin Tissoires) [2022814] - Input: elantech - Prepare a complete software node for the device (Benjamin Tissoires) [2022814] - Input: apbps2 - remove useless variable (Benjamin Tissoires) [2022814] - Input: elan_i2c - fix a typo in parameter name (Benjamin Tissoires) [2022814] - Input: i8042 - fix Pegatron C15B ID entry (Benjamin Tissoires) [2022814] - Input: elan_i2c - reduce the resume time for new devices (Benjamin Tissoires) [2022814] - Input: i8042 - add ASUS Zenbook Flip to noselftest list (Benjamin Tissoires) [2022814] - Input: add missing dependencies on CONFIG_HAS_IOMEM (Benjamin Tissoires) [2022814] - ARM: 9048/1: sa1111: make sa1111 bus's remove callback return void (Benjamin Tissoires) [2022814] - Input: synaptics - replace NOOP with suitable commentary (Benjamin Tissoires) [2022814] - Input: i8042 - unbreak Pegatron C15B (Benjamin Tissoires) [2022814] - Input: parkbd - convert comma to semicolon (Benjamin Tissoires) [2022814] - Input: elantech - fix protocol errors for some trackpoints in SMBus mode (Benjamin Tissoires) [2022814] - Input: elan_i2c - add new trackpoint report type 0x5F (Benjamin Tissoires) [2022814] - Input: i8042 - add Acer laptops to the i8042 reset list (Benjamin Tissoires) [2022814] - Input: i8042 - add ByteSpeed touchpad to noloop table (Benjamin Tissoires) [2022814] - Input: i8042 - fix error return code in i8042_setup_aux() (Benjamin Tissoires) [2022814] - Input: libps2 - fix fall-through warnings for Clang (Benjamin Tissoires) [2022814] - Input: synaptics - demote non-conformant kernel-doc header (Benjamin Tissoires) [2022814] - Input: elan_i2c_core - move header inclusion inside (Benjamin Tissoires) [2022814] - Input: elan_i2c - fix firmware update on newer ICs (Benjamin Tissoires) [2022814] - Input: elantech - demote obvious abuse of kernel-doc header (Benjamin Tissoires) [2022814] - Input: i8042 - allow insmod to succeed on devices without an i8042 controller (Benjamin Tissoires) [2022814] - Input: synaptics - enable InterTouch for ThinkPad T14 Gen 1 (Benjamin Tissoires) [2022814] - Input: synaptics - enable InterTouch for ThinkPad P1/X1E gen 2 (Benjamin Tissoires) [2022814] - Input: synaptics-rmi4 - rename f30_data to gpio_data (Benjamin Tissoires) [2022814] - Input: sun4i-ps2 - fix handling of platform_get_irq() error (Benjamin Tissoires) [2022814] - Input: allocate keycode for Fn + right shift (Benjamin Tissoires) [2022814] - Input: allocate keycodes for notification-center, pickup-phone and hangup-phone (Benjamin Tissoires) [2022814] - HID: cp2112: Use irqchip template (Benjamin Tissoires) [2022814] - HID: mcp2221: Replace HTTP links with HTTPS ones (Benjamin Tissoires) [2022814] - treewide: replace '---help---' in Kconfig files with 'help' (Benjamin Tissoires) [2022814] - HID: asus: Add depends on USB_HID to HID_ASUS Kconfig option (Benjamin Tissoires) [2022814] - HID: asus: Fix mute and touchpad-toggle keys on Medion Akoya E1239T (Benjamin Tissoires) [2022814] - HID: asus: Add support for multi-touch touchpad on Medion Akoya E1239T (Benjamin Tissoires) [2022814] - HID: asus: Add report_size to struct asus_touchpad_info (Benjamin Tissoires) [2022814] - HID: asus: Add hid_is_using_ll_driver(usb_hid_driver) check (Benjamin Tissoires) [2022814] - HID: asus: Simplify skipping of mappings for Asus T100CHI keyboard-dock (Benjamin Tissoires) [2022814] - HID: asus: Only set EV_REP if we are adding a mapping (Benjamin Tissoires) [2022814] - HID: mcp2221: add gpiolib dependency (Benjamin Tissoires) [2022814] - HID: mcp2221: add GPIO functionality support (Benjamin Tissoires) [2022814] - HID: mcp2221: add usb to i2c-smbus host bridge (Benjamin Tissoires) [2022814] - HID: asus: Ignore Asus vendor-page usage-code 0xff events (Benjamin Tissoires) [2022814] - HID: sb0540: add support for Creative SB0540 IR receivers (Benjamin Tissoires) [2022814] - gpio: pass lookup and descriptor flags to request_own (Benjamin Tissoires) [2022814] - HID: hid-asus: select CONFIG_POWER_SUPPLY (Benjamin Tissoires) [2022814] - HID: hid-asus: Add BT keyboard dock battery monitoring support (Benjamin Tissoires) [2022814] - HID: hid-asus: Add Transbook T90CHI support (Benjamin Tissoires) [2022814] - HID: asus: Add support for the ASUS T101HA keyboard dock (Benjamin Tissoires) [2022814] - HID: asus: Add support for the ASUS FX503VD laptop (Benjamin Tissoires) [2022814] - HID: asus: Add event handler to catch unmapped Asus Vendor UsagePage codes (Benjamin Tissoires) [2022814] - af_unix: fix garbage collect vs MSG_PEEK (Patrick Talbert) [2031975] {CVE-2021-0920} - net: add kerneldoc comment for sk_peer_lock (Guillaume Nault) [2037782] - af_unix: fix races in sk_peer_pid and sk_peer_cred accesses (Guillaume Nault) [2037782] {CVE-2021-4203} - netfilter: nat: force port remap to prevent shadowing well-known ports (Florian Westphal) [2006167] {CVE-2021-3773} - netfilter: conntrack: tag conntracks picked up in local out hook (Florian Westphal) [2006167] - selftests: nft_nat: switch port shadow test cases to socat (Florian Westphal) [2006167] - selftests: nft_nat: Simplify port shadow notrack test (Florian Westphal) [2006167] - selftests: nft_nat: Improve port shadow test stability (Florian Westphal) [2006167] - selftests: nft_nat: add udp hole punch test case (Florian Westphal) [2006167] - ipv6: use prandom_u32() for ID generation (Hangbin Liu) [2040158] {CVE-2021-45485} - igc: fix tunnel offloading (Corinna Vinschen) [1910885] - virtio/vsock: fix the transport to work with VMADDR_CID_ANY (Stefano Garzarella) [2026442] - vhost/vsock: cleanup removing `len` variable (Stefano Garzarella) [2026442] - vhost/vsock: fix incorrect used length reported to the guest (Stefano Garzarella) [2026442] - vsock: prevent unnecessary refcnt inc for nonblocking connect (Stefano Garzarella) [2026442] - vsock/virtio: avoid potential deadlock when vsock device remove (Stefano Garzarella) [2026442] - VSOCK: handle VIRTIO_VSOCK_OP_CREDIT_REQUEST (Stefano Garzarella) [2026442] - vsock: notify server to shutdown when client has pending signal (Stefano Garzarella) [2026442] - virtio/vsock: simplify credit update function API (Stefano Garzarella) [2026442] - virtio/vsock: set packet's type in virtio_transport_send_pkt_info() (Stefano Garzarella) [2026442] - net: vlan: fix underflow for the real_dev refcnt (Balazs Nemeth) [2026375] - net: vlan: fix a UAF in vlan_dev_real_dev() (Balazs Nemeth) [2026375]- xfs: map unwritten blocks in XFS_IOC_{ALLOC,FREE}SP just like fallocate (Carlos Maiolino) [2034865] {CVE-2021-4155} - isdn: cpai: check ctr->cnr to avoid array index out of bound (Chris von Recklinghausen) [2016491] {CVE-2021-43389} - vt: keyboard: avoid signed integer overflow in k_ascii (Chris von Recklinghausen) [2017044] {CVE-2020-13974} - USB: serial: pl2303: fix GC type detection (Torez Smith) [1975985] - usb: dwc3: leave default DMA for PCI devices (Torez Smith) [1975985] - usb: xhci: tegra: Check padctrl interrupt presence in device tree (Torez Smith) [1975985] - usb: dwc3: core: Revise GHWPARAMS9 offset (Torez Smith) [1975985] - xhci: Fix USB 3.1 enumeration issues by increasing roothub power-on-good delay (Torez Smith) [1975985] - usb: typec: tipd: Remove dependency on "connector" child fwnode (Torez Smith) [1975985] - usb: xhci: tegra: mark PM functions as __maybe_unused (Torez Smith) [1975985] - media: ttusb-dec: avoid release of non-acquired mutex (Torez Smith) [1975985] - ABI: sysfs-devices-removable: make a table valid as ReST markup (Torez Smith) [1975985] - usb: dwc3: core: balance phy init and exit (Torez Smith) [1975985] - USB: serial: pl2303: fix GL type detection (Torez Smith) [1975985] - usb: xhci-mtk: Do not use xhci's virt_dev in drop_endpoint (Torez Smith) [1975985] - usb: xhci-mtk: fix issue of out-of-bounds array access (Torez Smith) [1975985] - usb: dwc3: Decouple USB 2.0 L1 & L2 events (Torez Smith) [1975985] - media: em28xx-input: fix refcount bug in em28xx_usb_disconnect (Torez Smith) [1975985] - media: dvb-usb: Fix error handling in dvb_usb_i2c_init (Torez Smith) [1975985] - power: supply: Fix build error when CONFIG_POWER_SUPPLY is not enabled. (Torez Smith) [1975985] - thunderbolt: test: split up test cases in tb_test_credit_alloc_all (Torez Smith) [1975985] - thunderbolt: Handle ring interrupt by reading interrupt status register (Torez Smith) [1975985] - thunderbolt: Add vendor specific NHI quirk for auto-clearing interrupt status (Torez Smith) [1975985] - thunderbolt: Fix port linking by checking all adapters (Torez Smith) [1975985] - thunderbolt: Do not read control adapter config space (Torez Smith) [1975985] - thunderbolt: Add authorized value to the KOBJ_CHANGE uevent (Torez Smith) [1975985] - usb: typec: tcpm: Raise vdm_sm_running flag only when VDM SM is running (Torez Smith) [1975985] - usb: dwc3: gadget: Stop EP0 transfers during pullup disable (Torez Smith) [1975985] - usb: dwc3: gadget: Fix dwc3_calc_trbs_left() (Torez Smith) [1975985] - Revert "USB: serial: ch341: fix character loss at high transfer rates" (Torez Smith) [1975985] - USB: serial: option: add new VID/PID to support Fibocom FG150 (Torez Smith) [1975985] - usb: typec: tcpm: Fix VDMs sometimes not being forwarded to alt-mode drivers (Torez Smith) [1975985] - Revert "usb: dwc3: gadget: Use list_replace_init() before traversing lists" (Torez Smith) [1975985] - usb: typec: tcpm: Keep other events when receiving FRS and Sourcing_vbus events (Torez Smith) [1975985] - usb: dwc3: gadget: Avoid runtime resume if disabling pullup (Torez Smith) [1975985] - usb: dwc3: gadget: Use list_replace_init() before traversing lists (Torez Smith) [1975985] - USB: serial: ftdi_sio: add device ID for Auto-M3 OP-COM v2 (Torez Smith) [1975985] - USB: serial: pl2303: fix GT type detection (Torez Smith) [1975985] - USB: serial: option: add Telit FD980 composition 0x1056 (Torez Smith) [1975985] - USB: serial: pl2303: fix HX type detection (Torez Smith) [1975985] - media: rtl28xxu: fix zero-length control request (Torez Smith) [1975985] - media: Revert "media: rtl28xxu: fix zero-length control request" (Torez Smith) [1975985] - USB: serial: ch341: fix character loss at high transfer rates (Torez Smith) [1975985] - usb: otg-fsm: Fix hrtimer list corruption (Torez Smith) [1975985] - USB: usbtmc: Fix RCU stall warning (Torez Smith) [1975985] - USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick (Torez Smith) [1975985] - Revert "USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem" (Torez Smith) [1975985] - usb: dwc2: gadget: Fix sending zero length packet in DDMA mode. (Torez Smith) [1975985] - usb: dwc2: Skip clock gating on Samsung SoCs (Torez Smith) [1975985] - usb: dwc2: gadget: Fix GOUTNAK flow for Slave mode. (Torez Smith) [1975985] - usb: xhci: avoid renesas_usb_fw.mem when it's unusable (Torez Smith) [1975985] - usb: dwc3: avoid NULL access of usb_gadget_driver (Torez Smith) [1975985] - usb: typec: stusb160x: Don't block probing of consumer of "connector" nodes (Torez Smith) [1975985] - usb: typec: stusb160x: register role switch before interrupt registration (Torez Smith) [1975985] - USB: usb-storage: Add LaCie Rugged USB3-FW to IGNORE_UAS (Torez Smith) [1975985] - usb: hub: Disable USB 3 device initiated lpm if exit latency is too high (Torez Smith) [1975985] - usb: hub: Fix link power management max exit latency (MEL) calculations (Torez Smith) [1975985] - usb: typec: tipd: Don't block probing of consumer of "connector" nodes (Torez Smith) [1975985] - xhci: Fix lost USB 2 remote wake (Torez Smith) [1975985] - USB: serial: cp210x: fix comments for GE CS1000 (Torez Smith) [1975985] - USB: core: Fix incorrect pipe calculation in do_proc_control() (Torez Smith) [1975985] - USB: serial: option: add support for u-blox LARA-R6 family (Torez Smith) [1975985] - thunderbolt: test: Reinstate a few casts of bitfields (Torez Smith) [1975985] - USB: cdc-acm: blacklist Heimann USB Appset device (Torez Smith) [1975985] - usb: xhci-mtk: allow multiple Start-Split in a microframe (Torez Smith) [1975985] - usb: ftdi-elan: remove redundant continue statement in a while-loop (Torez Smith) [1975985] - thunderbolt: test: Remove some casts which are no longer required (Torez Smith) [1975985] - xhci: remove redundant continue statement (Torez Smith) [1975985] - usb: dwc3: Fix debugfs creation flow (Torez Smith) [1975985] - docs: driver-api: usb: avoid using ReST :doc:`foo` markup (Torez Smith) [1975985] - xhci: solve a double free problem while doing s4 (Torez Smith) [1975985] - xhci: handle failed buffer copy to URB sg list and fix a W=1 copiler warning (Torez Smith) [1975985] - xhci: Add adaptive interrupt rate for isoch TRBs with XHCI_AVOID_BEI quirk (Torez Smith) [1975985] - xhci: Remove unused defines for ERST_SIZE and ERST_ENTRIES (Torez Smith) [1975985] - usb: typec: Add the missed altmode_id_remove() in typec_register_altmode() (Torez Smith) [1975985] - usb: typec: tcpm: Relax disconnect threshold during power negotiation (Torez Smith) [1975985] - usb: typec: tcpm: Ignore Vsafe0v in PR_SWAP_SNK_SRC_SOURCE_ON state (Torez Smith) [1975985] - usb: typec: tcpci: Fix up sink disconnect thresholds for PD (Torez Smith) [1975985] - usb: core: hub: Disable autosuspend for Cypress CY7C65632 (Torez Smith) [1975985] - usb: host: xhci-tegra: Use devm_platform_get_and_ioremap_resource() (Torez Smith) [1975985] - usb: host: xhci-tegra: Add missing of_node_put() in tegra_xusb_probe() (Torez Smith) [1975985] - usb: host: xhci-tegra: add missing put_device() in tegra_xusb_probe() (Torez Smith) [1975985] - media: usb: cpia2: Fixed Coding Style issues (Torez Smith) [1975985] - media: ttusb-dec: cleanup an error handling logic (Torez Smith) [1975985] - cypress_m8: switch data_bits to real character bits (Torez Smith) [1975985] - thunderbolt: Fix DROM handling for USB4 DROM (Torez Smith) [1975985] - usb: xhci: tegra: Enable ELPG for runtime/system PM (Torez Smith) [1975985] - usb: xhci: tegra: Unlink power domain devices (Torez Smith) [1975985] - thunderbolt: Bond lanes only when dual_link_port != NULL in alloc_dev_default() (Torez Smith) [1975985] - thunderbolt: No need to include in usb4_port.c (Torez Smith) [1975985] - thunderbolt: Poll 10ms for REG_FW_STS_NVM_AUTH_DONE to be set (Torez Smith) [1975985] - thunderbolt: Add device links only when software connection manager is used (Torez Smith) [1975985] - thunderbolt: Add support for Intel Alder Lake (Torez Smith) [1975985] - usb: typec: mux: Fix copy-paste mistake in typec_mux_match (Torez Smith) [1975985] - usb: typec: ucsi: Clear PPM capability data in ucsi_init() error path (Torez Smith) [1975985] - usb: typec: wcove: Use LE to CPU conversion when accessing msg->header (Torez Smith) [1975985] - usb: typec: ucsi: Fix a comment in ucsi_init() (Torez Smith) [1975985] - USB: dwc3: remove debugfs root dentry storage (Torez Smith) [1975985] - USB: serial: cp210x: fix CP2102N-A01 modem control (Torez Smith) [1975985] - USB: serial: cp210x: fix alternate function for CP2102N QFN20 (Torez Smith) [1975985] - usb: dwc2: Don't reset the core after setting turnaround time (Torez Smith) [1975985] - usb: dwc3: support 64 bit DMA in platform driver (Torez Smith) [1975985] - USB: core: Avoid WARNings for 0-length descriptor requests (Torez Smith) [1975985] - usb: dwc3: core: fix kernel panic when do reboot (Torez Smith) [1975985] - usb: dwc3: ep0: fix NULL pointer exception (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Put ACPI device using acpi_dev_put() (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Add missed error check for devm_ioremap_resource() (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Put fwnode in error case during ->probe() (Torez Smith) [1975985] - usb: typec: tcpm: Do not finish VDM AMS for retrying Responses (Torez Smith) [1975985] - media: cinergyt2: make properties const (Torez Smith) [1975985] - media: dvd_usb: memory leak in cinergyt2_fe_attach (Torez Smith) [1975985] - USB: serial: ftdi_sio: add NovaTech OrionMX product ID (Torez Smith) [1975985] - usb: typec: tcpm: cancel send discover hrtimer when unregister tcpm port (Torez Smith) [1975985] - usb: typec: tcpm: cancel frs hrtimer when unregister tcpm port (Torez Smith) [1975985] - usb: typec: tcpm: cancel vdm and state machine hrtimer when unregister tcpm port (Torez Smith) [1975985] - usb: typec: tcpm: Properly handle Alert and Status Messages (Torez Smith) [1975985] - usb: dwc3: meson-g12a: Disable the regulator in the error handling path of the probe (Torez Smith) [1975985] - usb: typec: tcpm: Fix misuses of AMS invocation (Torez Smith) [1975985] - usb: typec: tcpm: Introduce snk_vdo_v1 for SVDM version 1.0 (Torez Smith) [1975985] - dt-bindings: connector: Add PD rev 2.0 VDO definition (Torez Smith) [1975985] - usb: typec: tcpm: Correct the responses in SVDM Version 2.0 DFP (Torez Smith) [1975985] - Revert "usb: dwc3: core: Add shutdown callback for dwc3" (Torez Smith) [1975985] - dt-bindings: connector: Replace BIT macro with generic bit ops (Torez Smith) [1975985] - media: gspca: ov519: replace RIGHT SINGLE QUOTATION MARK (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Update IOM port status offset for AlderLake (Torez Smith) [1975985] - usb: pd: Set PD_T_SINK_WAIT_CAP to 310ms (Torez Smith) [1975985] - usb: dwc3: gadget: Bail from dwc3_gadget_exit() if dwc->gadget is NULL (Torez Smith) [1975985] - usb: dwc3: gadget: Disable gadget IRQ during pullup disable (Torez Smith) [1975985] - usb: dwc3: debugfs: Add and remove endpoint dirs dynamically (Torez Smith) [1975985] - Revert "usb: typec: mux: Remove requirement for the "orientation-switch" device property" (Torez Smith) [1975985] - media: rtl28xxu: fix zero-length control request (Torez Smith) [1975985] - media: gspca/sunplus: fix zero-length control requests (Torez Smith) [1975985] - media: gspca/gl860: fix zero-length control requests (Torez Smith) [1975985] - media: gspca/sq905: fix control-request direction (Torez Smith) [1975985] - media: dtv5100: fix control-request directions (Torez Smith) [1975985] - media: drivers/media/usb/gspca/cpia1.c : fix spelling typo (Torez Smith) [1975985] - media: drivers/media/usb/em28xx/em28xx-cards.c : fix typo issues (Torez Smith) [1975985] - media: zr364xx: fix memory leak in zr364xx_start_readpipe (Torez Smith) [1975985] - media: em28xx: Fix possible memory leak of em28xx struct (Torez Smith) [1975985] - thunderbolt: Check for NVM authentication status after the operation started (Torez Smith) [1975985] - thunderbolt: Add WRITE_ONLY and AUTHENTICATE_ONLY NVM operations for retimers (Torez Smith) [1975985] - thunderbolt: Allow router NVM authenticate separately (Torez Smith) [1975985] - thunderbolt: Move nvm_write_ops to tb.h (Torez Smith) [1975985] - thunderbolt: Log the link as TBT instead of TBT3 (Torez Smith) [1975985] - thunderbolt: Add support for retimer NVM upgrade when there is no link (Torez Smith) [1975985] - thunderbolt: Add additional USB4 port operations for retimer access (Torez Smith) [1975985] - thunderbolt: Add support for ACPI _DSM to power on/off retimers (Torez Smith) [1975985] - thunderbolt: Add USB4 port devices (Torez Smith) [1975985] - thunderbolt: Add KUnit tests for credit allocation (Torez Smith) [1975985] - thunderbolt: Allocate credits according to router preferences (Torez Smith) [1975985] - USB: core: Check buffer length matches wLength for control transfers (Torez Smith) [1975985] - usb: typec: ucsi: Fix copy/paste issue for 'ucsi_set_drvdata()' (Torez Smith) [1975985] - usb: dwc2: gadget: Repair 'dwc2_hsotg_core_init_disconnected()'s documentation (Torez Smith) [1975985] - usb: dwc2: pci: Fix possible copy/paste issue (Torez Smith) [1975985] - usb: dwc2: hcd_queue: Fix typeo in function name 'dwc2_hs_pmap_unschedule()' (Torez Smith) [1975985] - usb: dwc2: params: Fix naming of 'dwc2_get_hwparams()' in the docs (Torez Smith) [1975985] - usb: common: ulpi: Add leading underscores for function name '__ulpi_register_driver()' (Torez Smith) [1975985] - usb: dwc2: platform: Provide function name for 'dwc2_check_core_version()' (Torez Smith) [1975985] - driver core: Move the "removable" attribute from USB to core (Torez Smith) [1975985] - usb: dwc3: trace: Remove unused fields in dwc3_log_trb (Torez Smith) [1975985] - usb: typec: mux: Remove requirement for the "orientation-switch" device property (Torez Smith) [1975985] - usb: typec: mux: Use device type instead of device name for matching (Torez Smith) [1975985] - usb: common: usb-conn-gpio: use usb_role_string() to print role status (Torez Smith) [1975985] - usb: roles: add helper usb_role_string() (Torez Smith) [1975985] - USB: serial: omninet: update driver description (Torez Smith) [1975985] - USB: serial: omninet: add device id for Zyxel Omni 56K Plus (Torez Smith) [1975985] - USB: serial: quatech2: fix control-request directions (Torez Smith) [1975985] - usb: typec: tcpci: Make symbol 'tcpci_apply_rc' static (Torez Smith) [1975985] - USB: usbfs: remove double evaluation of usb_sndctrlpipe() (Torez Smith) [1975985] - usb: typec: tcpm: Respond Not_Supported if no snk_vdo (Torez Smith) [1975985] - usb: typec: tcpm: Properly interrupt VDM AMS (Torez Smith) [1975985] - media: lmedm04: delete lme2510_get_adapter_count() (Torez Smith) [1975985] - media: dvb-usb: fix wrong definition (Torez Smith) [1975985] - USB: core: WARN if pipe direction != setup packet direction (Torez Smith) [1975985] - USB: trancevibrator: fix control-request direction (Torez Smith) [1975985] - USB: dwc2: drop irq-flags initialisations (Torez Smith) [1975985] - usb: typec: tcpci: Implement callback for apply_rc (Torez Smith) [1975985] - usb: typec: tcpm: Move TCPC to APPLY_RC state during PR_SWAP (Torez Smith) [1975985] - usb: typec: tcpm: Refactor logic to enable/disable auto vbus dicharge (Torez Smith) [1975985] - usb: typec: tcpm: Fix up PR_SWAP when vsafe0v is signalled (Torez Smith) [1975985] - usb: atm: cxacru: Fix typo in comment (Torez Smith) [1975985] - usb: isp1760: remove platform data struct and code (Torez Smith) [1975985] - usb: fix spelling mistakes in header files (Torez Smith) [1975985] - USB: serial: digi_acceleport: add chars_in_buffer locking (Torez Smith) [1975985] - USB: serial: digi_acceleport: reduce chars_in_buffer over-reporting (Torez Smith) [1975985] - usb: Restore the usb_header label (Torez Smith) [1975985] - usb: typec: tcpm: Use LE to CPU conversion when accessing msg->header (Torez Smith) [1975985] - usb: typec: mux: Fix matching with typec_altmode_desc (Torez Smith) [1975985] - misc/uss720: fix memory leak in uss720_probe (Torez Smith) [1975985] - usb: dwc3: gadget: Properly track pending and queued SG (Torez Smith) [1975985] - USB: usbfs: Don't WARN about excessively large memory allocations (Torez Smith) [1975985] - usb: common: usb-conn-gpio: use dev_err_probe() to print log (Torez Smith) [1975985] - usb: common: usb-conn-gpio: fix NULL pointer dereference of charger (Torez Smith) [1975985] - Revert "USB: Add reset-resume quirk for WD19's Realtek Hub" (Torez Smith) [1975985] - USB: Verify the port status when timeout happens during port suspend (Torez Smith) [1975985] - usb: typec: wcove: Fx wrong kernel doc format (Torez Smith) [1975985] - media: pvrusb2: fix warning in pvr2_i2c_core_done (Torez Smith) [1975985] - media: rtl2832_sdr/vivid/airspy/hackrf/msi2500: drop memset of fmt.sdr.reserved (Torez Smith) [1975985] - media: cpia2: fix memory leak in cpia2_usb_probe (Torez Smith) [1975985] - media: s2255drv: remove redundant assignment to variable field (Torez Smith) [1975985] - media: gspca: properly check for errors in po1030_probe() (Torez Smith) [1975985] - Revert "media: gspca: Check the return value of write_bridge for timeout" (Torez Smith) [1975985] - media: gspca: mt9m111: Check write_bridge for timeout (Torez Smith) [1975985] - Revert "media: gspca: mt9m111: Check write_bridge for timeout" (Torez Smith) [1975985] - Revert "media: usb: gspca: add a missed check for goto_low_power" (Torez Smith) [1975985] - usb: core: hcd: use map_urb_for_dma for single step set feature urb (Torez Smith) [1975985] - usb: dwc3: pci: Fix DEFINE for Intel Elkhart Lake (Torez Smith) [1975985] - usb: core: hub: fix race condition about TRSMRCY of resume (Torez Smith) [1975985] - usb: typec: tcpm: Fix SINK_DISCOVERY current limit for Rp-default (Torez Smith) [1975985] - xhci: Add reset resume quirk for AMD xhci controller. (Torez Smith) [1975985] - usb: xhci: Increase timeout for HC halt (Torez Smith) [1975985] - xhci: Do not use GFP_KERNEL in (potentially) atomic context (Torez Smith) [1975985] - xhci: Fix giving back cancelled URBs even if halted endpoint can't reset (Torez Smith) [1975985] - xhci-pci: Allow host runtime PM as default for Intel Alder Lake xHCI (Torez Smith) [1975985] - usb: typec: tcpm: Don't block probing of consumers of "connector" nodes (Torez Smith) [1975985] - usb: xhci-mtk: use first-fit for LS/FS (Torez Smith) [1975985] - usb: xhci-mtk: remove unnecessary assignments in periodic TT scheduler (Torez Smith) [1975985] - usb: xhci-mtk: remove unnecessary setting of has_ippc (Torez Smith) [1975985] - usb: xhci-mtk: use bitfield instead of bool (Torez Smith) [1975985] - usb: typec: tcpm: Fix wrong handling for Not_Supported in VDM AMS (Torez Smith) [1975985] - usb: typec: tcpm: Send DISCOVER_IDENTITY from dedicated work (Torez Smith) [1975985] - usb: typec: ucsi: Retrieve all the PDOs instead of just the first 4 (Torez Smith) [1975985] - usb: dwc3: omap: improve extcon initialization (Torez Smith) [1975985] - usb: typec: ucsi: Put fwnode in any case during ->probe() (Torez Smith) [1975985] - usb: dwc2: Remove obsolete MODULE_ constants from platform.c (Torez Smith) [1975985] - usb: dwc3: imx8mp: fix error return code in dwc3_imx8mp_probe() (Torez Smith) [1975985] - usb: dwc3: imx8mp: detect dwc3 core node via compatible string (Torez Smith) [1975985] - usb: dwc3: gadget: Return success always for kick transfer in ep queue (Torez Smith) [1975985] - usb: dwc3: gadget: Free gadget structure only after freeing endpoints (Torez Smith) [1975985] - usb: dwc2: Fix gadget DMA unmap direction (Torez Smith) [1975985] - usb: dwc3: gadget: Rename EOPF event macros to Suspend (Torez Smith) [1975985] - usb: dwc3: gadget: Enable suspend events (Torez Smith) [1975985] - usb: Restore the reference to ch9.h (Torez Smith) [1975985] - usb: dwc3: core: Add missing GHWPARAMS9 doc (Torez Smith) [1975985] - usb: dwc3: pci: Enable usb2-gadget-lpm-disable for Intel Merrifield (Torez Smith) [1975985] - cdc-wdm: untangle a circular dependency between callback and softint (Torez Smith) [1975985] - usb: dwc3: remove repeated setting of current_dr_role (Torez Smith) [1975985] - USB: serial: pl2303: add device id for ADLINK ND-6530 GC (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: add startech.com device id (Torez Smith) [1975985] - USB: serial: option: add Telit LE910-S1 compositions 0x7010, 0x7011 (Torez Smith) [1975985] - USB: serial: ftdi_sio: add IDs for IDS GmbH Products (Torez Smith) [1975985] - usb: Fix up movement of USB core kerneldoc location (Torez Smith) [1975985] - usb: dwc3: gadget: Handle DEV_TXF_FLUSH_BYPASS capability (Torez Smith) [1975985] - usb: dwc3: Capture new capability register GHWPARAMS9 (Torez Smith) [1975985] - usb: dwc3: core: Do core softreset when switch mode (Torez Smith) [1975985] - usb: dwc2: Get rid of useless error checks in suspend interrupt (Torez Smith) [1975985] - usb: dwc2: Update dwc2_handle_usb_suspend_intr function. (Torez Smith) [1975985] - usb: dwc2: Add exit hibernation mode before removing drive (Torez Smith) [1975985] - usb: dwc2: Add hibernation exiting flow by system resume (Torez Smith) [1975985] - usb: dwc2: Add hibernation entering flow by system suspend (Torez Smith) [1975985] - usb: dwc2: Allow exit hibernation in urb enqueue (Torez Smith) [1975985] - usb: dwc2: Move exit hibernation to dwc2_port_resume() function (Torez Smith) [1975985] - usb: dwc2: Move enter hibernation to dwc2_port_suspend() function (Torez Smith) [1975985] - usb: dwc2: Clear GINTSTS_RESTOREDONE bit after restore is generated. (Torez Smith) [1975985] - usb: dwc2: Clear fifo_map when resetting core. (Torez Smith) [1975985] - usb: dwc2: Allow exiting hibernation from gpwrdn rst detect (Torez Smith) [1975985] - usb: dwc2: Fix hibernation between host and device modes. (Torez Smith) [1975985] - usb: dwc2: Fix host mode hibernation exit with remote wakeup flow. (Torez Smith) [1975985] - usb: dwc2: Reset DEVADDR after exiting gadget hibernation. (Torez Smith) [1975985] - usb: dwc2: Update exit hibernation when port reset is asserted (Torez Smith) [1975985] - usb: dwc3: gadget: Remove FS bInterval_m1 limitation (Torez Smith) [1975985] - usb: xhci-mtk: remove bus status check (Torez Smith) [1975985] - usb: dwc2: Enable RPi in ACPI mode (Torez Smith) [1975985] - USB: Add reset-resume quirk for WD19's Realtek Hub (Torez Smith) [1975985] - usb: storage: datafab: remove redundant assignment of variable result (Torez Smith) [1975985] - usb: misc: adutux: fix whitespace coding style issue (Torez Smith) [1975985] - usb: dwc3: gadget: Fix START_TRANSFER link state check (Torez Smith) [1975985] - usb: typec: tcpm: Fix error while calculating PPS out values (Torez Smith) [1975985] - usb: xhci-mtk: remove unused members (Torez Smith) [1975985] - usb: xhci-mtk: use clock bulk to get clocks (Torez Smith) [1975985] - usb: xhci-mtk: add support runtime PM (Torez Smith) [1975985] - usb: xhci-mtk: check return value in suspend/resume hooks (Torez Smith) [1975985] - usb: typec: tcpm: Allow slow charging loops to comply to pSnkStby (Torez Smith) [1975985] - usb: typec: tcpm: Honour pSnkStdby requirement during negotiation (Torez Smith) [1975985] - usb: dwc3: gadget: Check for disabled LPM quirk (Torez Smith) [1975985] - usb: dwc3: core: Add shutdown callback for dwc3 (Torez Smith) [1975985] - usb: dwc3: gadget: Ignore Packet Pending bit (Torez Smith) [1975985] - USB: Add LPM quirk for Lenovo ThinkPad USB-C Dock Gen2 Ethernet (Torez Smith) [1975985] - usb: typec: silence a static checker warning (Torez Smith) [1975985] - USB: cdc-acm: add more Maxlinear/Exar models to ignore list (Torez Smith) [1975985] - USB: serial: xr: add copyright notice (Torez Smith) [1975985] - USB: serial: xr: reset FIFOs on open (Torez Smith) [1975985] - USB: serial: xr: add support for XR22801, XR22802, XR22804 (Torez Smith) [1975985] - USB: serial: xr: add support for XR21B1411 (Torez Smith) [1975985] - USB: serial: xr: add support for XR21B1421, XR21B1422 and XR21B1424 (Torez Smith) [1975985] - USB: serial: xr: add type abstraction (Torez Smith) [1975985] - USB: serial: xr: drop type prefix from shared defines (Torez Smith) [1975985] - USB: serial: xr: move pin configuration to probe (Torez Smith) [1975985] - USB: serial: xr: rename GPIO-pin defines (Torez Smith) [1975985] - USB: serial: xr: rename GPIO-mode defines (Torez Smith) [1975985] - USB: serial: xr: add support for XR21V1412 and XR21V1414 (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: clean up termios CSIZE handling (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: use kernel types consistently (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: add port-command helpers (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: clean up vendor-request helpers (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: drop unnecessary packed attributes (Torez Smith) [1975985] - USB: serial: io_ti: drop unnecessary packed attributes (Torez Smith) [1975985] - USB: serial: io_ti: use kernel types consistently (Torez Smith) [1975985] - USB: serial: io_ti: add read-port-command helper (Torez Smith) [1975985] - USB: serial: io_ti: add send-port-command helper (Torez Smith) [1975985] - USB: serial: io_ti: clean up vendor-request helpers (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: drop drain delay for 3410 (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: reduce drain delay to one char (Torez Smith) [1975985] - USB: serial: io_ti: document reason for drain delay (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating before removing driver (Torez Smith) [1975985] - usb: dwc2: Add clock gating exiting flow by system resume (Torez Smith) [1975985] - usb: dwc2: Add clock gating entering flow by system suspend (Torez Smith) [1975985] - usb: dwc2: Allow exit clock gating in urb enqueue (Torez Smith) [1975985] - usb: dwc2: Update exit clock gating when port is resumed (Torez Smith) [1975985] - usb: dwc2: Update enter clock gating when port is suspended (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating when port reset is asserted (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating from session request interrupt (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating from wakeup interrupt (Torez Smith) [1975985] - usb: dwc2: Allow entering clock gating from USB_SUSPEND interrupt (Torez Smith) [1975985] - usb: dwc2: Add host clock gating support functions (Torez Smith) [1975985] - usb: dwc2: Add device clock gating support functions (Torez Smith) [1975985] - Revert "usb: Link the ports to the connectors they are attached to" (Torez Smith) [1975985] - USB: serial: cp210x: add gpio-configuration debug printk (Torez Smith) [1975985] - USB: serial: cp210x: provide gpio valid mask (Torez Smith) [1975985] - usb: dwc3: qcom: Detect DWC3 DT-nodes using compatible string (Torez Smith) [1975985] - usb: dwc3: qcom: Remove redundant dev_err call in dwc3_qcom_probe() (Torez Smith) [1975985] - usb: core: reduce power-on-good delay time of root hub (Torez Smith) [1975985] - USB:ehci:fix Kunpeng920 ehci hardware problem (Torez Smith) [1975985] - USB: serial: do not use tty class device for debugging (Torez Smith) [1975985] - USB: cdc-acm: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: cdc-acm: fix unprivileged TIOCCSERIAL (Torez Smith) [1975985] - Revert "USB: cdc-acm: fix rounding error in TIOCSSERIAL" (Torez Smith) [1975985] - usb: typec: tcpm: Add support for altmodes (Torez Smith) [1975985] - usb: typec: Add typec_port_register_altmodes() (Torez Smith) [1975985] - usb: roles: Call try_module_get() from usb_role_switch_find_by_fwnode() (Torez Smith) [1975985] - usb: dwc3: xilinx: Remove the extra freeing of clocks (Torez Smith) [1975985] - usb: dwc3: Resolve kernel-doc warning for Xilinx DWC3 driver (Torez Smith) [1975985] - usb: core: hub: Fix PM reference leak in usb_port_resume() (Torez Smith) [1975985] - usb: dwc3: pci: add support for the Intel Alder Lake-M (Torez Smith) [1975985] - usb: typec: Link all ports during connector registration (Torez Smith) [1975985] - usb: Iterator for ports (Torez Smith) [1975985] - usb: Link the ports to the connectors they are attached to (Torez Smith) [1975985] - usb: typec: Port mapping utility (Torez Smith) [1975985] - usb: typec: tcpm: update power supply once partner accepts (Torez Smith) [1975985] - usb: typec: tcpm: Address incorrect values of tcpm psy for pps supply (Torez Smith) [1975985] - usb: typec: tcpm: Address incorrect values of tcpm psy for fixed supply (Torez Smith) [1975985] - usb: dwc2: Add exit partial power down before removing driver (Torez Smith) [1975985] - usb: dwc2: Fix partial power down exiting by system resume (Torez Smith) [1975985] - usb: dwc2: Update partial power down entering by system suspend (Torez Smith) [1975985] - usb: dwc2: Fix session request interrupt handler (Torez Smith) [1975985] - usb: dwc2: Allow exit partial power down in urb enqueue (Torez Smith) [1975985] - usb: dwc2: Add part. power down exit from dwc2_conn_id_status_change(). (Torez Smith) [1975985] - usb: dwc2: Add exit partial power down when port reset is asserted (Torez Smith) [1975985] - usb: dwc2: Add exit partial power down when port is resumed (Torez Smith) [1975985] - usb: dwc2: Add enter partial power down when port is suspended (Torez Smith) [1975985] - usb: dwc2: Update port suspend/resume function definitions. (Torez Smith) [1975985] - usb: dwc2: Add partial power down exit flow in wakeup intr. (Torez Smith) [1975985] - usb: dwc2: Update enter and exit partial power down functions (Torez Smith) [1975985] - usb: dwc2: Add host partial power down functions (Torez Smith) [1975985] - usb: dwc2: Add device partial power down functions (Torez Smith) [1975985] - media: gscpa/stv06xx: fix memory leak (Torez Smith) [1975985] - media: gspca: Fix memory leak in probe (Torez Smith) [1975985] - media: dvb-usb: avoid -Wempty-body warnings (Torez Smith) [1975985] - media: flexcop: avoid -Wempty-body warning (Torez Smith) [1975985] - media: dvb-usb: fix memory leak in dvb_usb_adapter_init (Torez Smith) [1975985] - media: dvb-usb-remote: fix dvb_usb_nec_rc_key_to_event type mismatch (Torez Smith) [1975985] - thunderbolt: Add details to router uevent (Torez Smith) [1975985] - USB: serial: io_edgeport: drop unused definitions (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: switch to 30-second closing wait (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: drop closing_wait module parameter (Torez Smith) [1975985] - USB: serial: io_ti: switch to 30-second closing wait (Torez Smith) [1975985] - USB: serial: io_ti: drop closing_wait module parameter (Torez Smith) [1975985] - USB: serial: ftdi_sio: clean up TIOCSSERIAL (Torez Smith) [1975985] - USB: serial: ftdi_sio: simplify TIOCGSERIAL permission check (Torez Smith) [1975985] - USB: serial: ftdi_sio: ignore baud_base changes (Torez Smith) [1975985] - USB: serial: stop reporting legacy UART types (Torez Smith) [1975985] - USB: serial: add generic support for TIOCSSERIAL (Torez Smith) [1975985] - USB: serial: fix return value for unsupported ioctls (Torez Smith) [1975985] - USB: serial: whiteheat: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: usb_wwan: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: usb_wwan: fix unprivileged TIOCCSERIAL (Torez Smith) [1975985] - USB: serial: usb_wwan: fix TIOCSSERIAL jiffies conversions (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: fix TIOCSSERIAL permission check (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: ssu100: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: quatech2: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: pl2303: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: opticon: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: mos7840: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: mos7720: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: io_ti: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: io_edgeport: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: ftdi_sio: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: ark3116: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - media: em28xx/em28xx.h: Remove duplicate struct declaration (Torez Smith) [1975985] - media: cx231xx/cx231xx.h: Remove repeated struct declaration (Torez Smith) [1975985] - xhci: prevent double-fetch of transfer and transfer event TRBs (Torez Smith) [1975985] - xhci: fix potential array out of bounds with several interrupters (Torez Smith) [1975985] - xhci: check control context is valid before dereferencing it. (Torez Smith) [1975985] - xhci: check port array allocation was successful before dereferencing it (Torez Smith) [1975985] - media: em28xx: fix memory leak (Torez Smith) [1975985] - usb: typec: Declare the typec_class static (Torez Smith) [1975985] - usb: typec: Organize the private headers properly (Torez Smith) [1975985] - usb: xhci-mtk: support quirk to disable usb2 lpm (Torez Smith) [1975985] - usb: xhci-mtk: fix oops when unbind driver (Torez Smith) [1975985] - usb: xhci-mtk: fix wrong remainder of bandwidth budget (Torez Smith) [1975985] - usb: dwc2: delete duplicate word in the comment (Torez Smith) [1975985] - usb: dwc2: add parenthess and space around * (Torez Smith) [1975985] - usb: dwc3: add cancelled reasons for dwc3 requests (Torez Smith) [1975985] - usb: dwc3: fix incorrect kernel-doc comment syntax in files (Torez Smith) [1975985] - usb: dwc3: st: fix incorrect kernel-doc comment syntax in file (Torez Smith) [1975985] - usb: dwc3: imx8mp: fix incorrect kernel-doc comment syntax (Torez Smith) [1975985] - USB: serial: xr: claim both interfaces (Torez Smith) [1975985] - USB: serial: add support for multi-interface functions (Torez Smith) [1975985] - USB: serial: refactor endpoint classification (Torez Smith) [1975985] - USB: serial: drop unused suspending flag (Torez Smith) [1975985] - USB: serial: xr: fix CSIZE handling (Torez Smith) [1975985] - USB: serial: iuu_phoenix: remove redundant variable 'error' (Torez Smith) [1975985] - usb: dwc3: Create helper function getting MDWIDTH (Torez Smith) [1975985] - usb: xhci-mtk: remove MODULE_ALIAS (Torez Smith) [1975985] - usb: xhci-mtk: drop CONFIG_OF (Torez Smith) [1975985] - usb: misc: usbsevseg: update to use usb_control_msg_send() (Torez Smith) [1975985] - usb: misc: ezusb: update to use usb_control_msg_send() (Torez Smith) [1975985] - usb: dwc3: gadget: modify the scale in vbus_draw callback (Torez Smith) [1975985] - usb: xhci-mtk: add support ip-sleep wakeup for mT8192 (Torez Smith) [1975985] - usb: xhci-mtk: support ip-sleep wakeup for MT8183 (Torez Smith) [1975985] - usb: dwc3: trace: Print register read and write offset (Torez Smith) [1975985] - usb: typec: tcpci_maxim: Make symbol 'max_tcpci_tcpci_write_table' static (Torez Smith) [1975985] - usbip: tools: add usage of device mode in usbip_list.c (Torez Smith) [1975985] - usbip: tools: add options and examples in man page related to device mode (Torez Smith) [1975985] - tools: usbip: list.h: fix kernel-doc for list_del() (Torez Smith) [1975985] - xhci: Fix uninitialized errors (Torez Smith) [1975985] - usb: typec: Fix a typo (Torez Smith) [1975985] - usb: xhci: Remove unused function (Torez Smith) [1975985] - usb: xhci: Rewrite xhci_create_usb3_bos_desc() (Torez Smith) [1975985] - usb: xhci: Fix port minor revision (Torez Smith) [1975985] - usb: xhci: Init root hub SSP rate (Torez Smith) [1975985] - thunderbolt: Unlock on error path in tb_domain_add() (Torez Smith) [1975985] - usb: core: sysfs: Check for SSP rate in speed attr (Torez Smith) [1975985] - usb: core: hub: Print speed name based on ssp rate (Torez Smith) [1975985] - usb: core: hub: Remove port_speed_is_ssp() (Torez Smith) [1975985] - usb: core: Track SuperSpeed Plus GenXxY (Torez Smith) [1975985] - usb: dwc3: gadget: Avoid continuing preparing TRBs during teardown (Torez Smith) [1975985] - USB: xhci: drop workaround for forced irq threading (Torez Smith) [1975985] - usb: dwc3: Add driver for Xilinx platforms (Torez Smith) [1975985] - USB: core: rename usb_driver_claim_interface() data parameter (Torez Smith) [1975985] - USB: core: drop outdated interface-binding comment (Torez Smith) [1975985] - media: media/usb: fix kernel-doc header issues (Torez Smith) [1975985] - media: gspca/sq905.c: fix uninitialized variable (Torez Smith) [1975985] - media: media/usb/gspca/w996Xcf.c: /** -> /* (Torez Smith) [1975985] - media: flexcop-usb: delete unneeded return (Torez Smith) [1975985] - thunderbolt: Add KUnit tests for DMA tunnels (Torez Smith) [1975985] - thunderbolt: Add support for USB4 DROM (Torez Smith) [1975985] - thunderbolt: Check quirks in tb_switch_add() (Torez Smith) [1975985] - thunderbolt: Add KUnit tests for XDomain properties (Torez Smith) [1975985] - thunderbolt: Drop unused tb_port_set_initial_credits() (Torez Smith) [1975985] - thunderbolt: Use dedicated flow control for DMA tunnels (Torez Smith) [1975985] - thunderbolt: Allow multiple DMA tunnels over a single XDomain connection (Torez Smith) [1975985] - thunderbolt: Add support for maxhopid XDomain property (Torez Smith) [1975985] - thunderbolt: Add tb_property_copy_dir() (Torez Smith) [1975985] - thunderbolt: Align XDomain protocol timeouts with the spec (Torez Smith) [1975985] - thunderbolt: Use pseudo-random number as initial property block generation (Torez Smith) [1975985] - thunderbolt: Do not re-establish XDomain DMA paths automatically (Torez Smith) [1975985] - thunderbolt: Decrease control channel timeout for software connection manager (Torez Smith) [1975985] - thunderbolt: Disable retry logic for intra-domain control packets (Torez Smith) [1975985] - thunderbolt: Do not pass timeout for tb_cfg_reset() (Torez Smith) [1975985] - thunderbolt: Add more logging to XDomain connections (Torez Smith) [1975985] - usb: typec: tcpm: PD3.0 sinks can send Discover Identity even in device mode (Torez Smith) [1975985] - drivers: usb: Fix a typo in dwc3-qcom.c (Torez Smith) [1975985] - usb: webcam: Invalid size of Processing Unit Descriptor (Torez Smith) [1975985] - usb: typec: tcpci: Added few missing TCPCI register definitions (Torez Smith) [1975985] - USB: serial: pl2303: TA & TB alternate divider with non-standard baud rates (Torez Smith) [1975985] - USB: serial: pl2303: add device-type names (Torez Smith) [1975985] - USB: serial: pl2303: tighten type HXN (G) detection (Torez Smith) [1975985] - USB: serial: pl2303: rename legacy PL2303H type (Torez Smith) [1975985] - USB: serial: pl2303: amend and tighten type detection (Torez Smith) [1975985] - USB: serial: pl2303: clean up type detection (Torez Smith) [1975985] - USB: serial: io_edgeport: drop unneeded forward declarations (Torez Smith) [1975985] - USB: serial: keyspan: drop unneeded forward declarations (Torez Smith) [1975985] - usb: typec: tipd: Separate file for tracepoint creation (Torez Smith) [1975985] - usb: typec: tps6598x: Move the driver under its own subdirectory (Torez Smith) [1975985] - usb: typec: tps6598x: Fix tracepoint header file (Torez Smith) [1975985] - usb: typec: tcpci: Refactor tcpc_presenting_cc1_rd macro (Torez Smith) [1975985] - thunderbolt: debugfs: Show all accessible dwords (Torez Smith) [1975985] - media: fix incorrect kernel doc usages (Torez Smith) [1975985] - media: drivers/media/usb: fix memory leak in zr364xx_probe (Torez Smith) [1975985] - media: anysee: simplify the return expression of anysee_ci_* function (Torez Smith) [1975985] - media: media/usb:Remove superfluous "breaks" in the ttusb_dec.c (Torez Smith) [1975985] - media: media/usb:Remove superfluous "breaks" (Torez Smith) [1975985] - media: usbtv: constify static structs (Torez Smith) [1975985] - media: em28xx: Add pid for bulk revision of Hauppauge 461eV2 (Torez Smith) [1975985] - media: em28xx: Add pid for bulk revision of Hauppauge 461e (Torez Smith) [1975985] - media: dvb-usb: Fix use-after-free access (Torez Smith) [1975985] - media: dvb-usb: Fix memory leak at error in dvb_usb_device_init() (Torez Smith) [1975985] - media: dvb-usb: make dvb_usb_device_properties const (Torez Smith) [1975985] - usb: typec: tps6598x: Fix return value check in tps6598x_probe() (Torez Smith) [1975985] - usb: typec: stusb160x: fix return value check in stusb160x_probe() (Torez Smith) [1975985] - usb: typec: tcpm: turn tcpm_ams_finish into void function (Torez Smith) [1975985] - usb: typec: tcpci: Check ROLE_CONTROL while interpreting CC_STATUS (Torez Smith) [1975985] - usb: common: move function's kerneldoc next to its definition (Torez Smith) [1975985] - usb: xhci-mtk: print debug info of endpoint interval (Torez Smith) [1975985] - usb: common: add function to get interval expressed in us unit (Torez Smith) [1975985] - usb: xhci-mtk: support to build xhci-mtk-hcd.ko (Torez Smith) [1975985] - usb: xhci-mtk: remove declaration of xhci_mtk_setup() (Torez Smith) [1975985] - usb: xhci-mtk: add some schedule error number (Torez Smith) [1975985] - usb: xhci-mtk: rebuild the way to get bandwidth domain (Torez Smith) [1975985] - usb: xhci-mtk: use @tt_info to check the FS/LS device is under a HS hub (Torez Smith) [1975985] - usb: xhci-mtk: add a member @speed in mu3h_sch_ep_info struct (Torez Smith) [1975985] - usb: xhci-mtk: use clear type instead of void (Torez Smith) [1975985] - usb: xhci-mtk: remove unnecessary members of mu3h_sch_tt struct (Torez Smith) [1975985] - usb: xhci-mtk: add a function to get bandwidth boundary (Torez Smith) [1975985] - usb: xhci-mtk: add a function to (un)load bandwidth info (Torez Smith) [1975985] - usb: xhci-mtk: use @sch_tt to check whether need do TT schedule (Torez Smith) [1975985] - usb: xhci-mtk: add only one extra CS for FS/LS INTR (Torez Smith) [1975985] - usb: xhci-mtk: get the microframe boundary for ESIT (Torez Smith) [1975985] - usb: dwc3: Fix dereferencing of null dwc->usb_psy (Torez Smith) [1975985] - media: uvc: don't do DMA on stack (Torez Smith) [1975985] - usb: dwc3: document usb_psy in struct dwc3 (Torez Smith) [1975985] - media: uvcvideo: Fix pixel format change for Elgato Cam Link 4K (Torez Smith) [1975985] - USB: typec: tcpm: create debugfs subdir for the driver (Torez Smith) [1975985] - usb: dwc2: Add STM32 related debugfs entries (Torez Smith) [1975985] - media: uvcvideo: Support devices that report an OT as an entity source (Torez Smith) [1975985] - media: uvcvideo: Fix XU id print in forward scan (Torez Smith) [1975985] - USB: typec: fusb302: create debugfs subdir for the driver (Torez Smith) [1975985] - media: uvcvideo: Use dma_alloc_noncontiguous API (Torez Smith) [1975985] - USB: host: uhci: remove dentry pointer for debugfs (Torez Smith) [1975985] - media: uvc: strncpy -> strscpy (Torez Smith) [1975985] - media: uvcvideo: Rename debug functions (Torez Smith) [1975985] - media: uvcvideo: use dev_printk() for uvc_trace() (Torez Smith) [1975985] - media: uvcvideo: New macro uvc_trace_cont (Torez Smith) [1975985] - USB: core: no need to save usb_devices_root (Torez Smith) [1975985] - media: uvcvideo: Use dev_ printk aliases (Torez Smith) [1975985] - usb: dwc3: add an alternate path in vbus_draw callback (Torez Smith) [1975985] - media: uvcvideo: Add Privacy control based on EXT_GPIO (Torez Smith) [1975985] - usb: dwc3: add a power supply for current control (Torez Smith) [1975985] - media: uvcvideo: Implement UVC_EXT_GPIO_UNIT (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for data status (Torez Smith) [1975985] - media: uvcvideo: Allow entity-defined get_info and get_cur (Torez Smith) [1975985] - media: uvcvideo: Provide sync and async uvc_ctrl_status_event (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for power status register (Torez Smith) [1975985] - media: uvcvideo: Allow entities with no pads (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for status register (Torez Smith) [1975985] - media: uvcvideo: Allow extra entities (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for IRQ events (Torez Smith) [1975985] - tty: make everyone's write_room return >= 0 (Torez Smith) [1975985] - media: uvcvideo: Move guid to entity (Torez Smith) [1975985] - USB: serial: xr: fix NULL-deref on disconnect (Torez Smith) [1975985] - media: uvcvideo: Accept invalid bFormatIndex and bFrameIndex values (Torez Smith) [1975985] - thunderbolt: Drop unused functions tb_switch_is_[ice|tiger]_lake() (Torez Smith) [1975985] - media: uvcvideo: Force UVC version to 1.0a for 1bcf:0b40 (Torez Smith) [1975985] - thunderbolt: debugfs: Handle fail reading block (Torez Smith) [1975985] - media: uvcvideo: Use DIV_ROUND_CLOSEST directly to make it readable (Torez Smith) [1975985] - media: usb: uvc: no need to check return value of debugfs_create functions (Torez Smith) [1975985] - media: uvcvideo: Convey full colorspace information to V4L2 (Torez Smith) [1975985] - driver core: fw_devlink: Detect supplier devices that will never be added (Torez Smith) [1975985] - media: uvcvideo: Ensure all probed info is returned to v4l2 (Torez Smith) [1975985] - media: uvcvideo: Silence shift-out-of-bounds warning (Torez Smith) [1975985] - media: uvcvideo: Fix dereference of out-of-bound list iterator (Torez Smith) [1975985] - media: zr364xx: fix memory leaks in probe() (Torez Smith) [1975985] - media: uvcvideo: Cleanup uvc_ctrl_add_info() error handling (Torez Smith) [1975985] - USB: serial: xr: fix B0 handling (Torez Smith) [1975985] - media: uvcvideo: Fix uvc_ctrl_fixup_xu_info() not having any effect (Torez Smith) [1975985] - USB: serial: xr: fix pin configuration (Torez Smith) [1975985] - media: uvcvideo: Replace HTTP links with HTTPS ones (Torez Smith) [1975985] - USB: serial: xr: fix gpio-mode handling (Torez Smith) [1975985] - media: uvcvideo: Set media controller entity functions (Torez Smith) [1975985] - USB: serial: xr: simplify line-speed logic (Torez Smith) [1975985] - media: uvcvideo: Add mapping for HEVC payloads (Torez Smith) [1975985] - USB: serial: xr: clean up line-settings handling (Torez Smith) [1975985] - media: uvcvideo: Fix annotation for uvc_video_clock_update() (Torez Smith) [1975985] - USB: serial: xr: document vendor-request recipient (Torez Smith) [1975985] - USB: serial: xr: use termios flag helpers (Torez Smith) [1975985] - USB: serial: xr: use subsystem usb_device at probe (Torez Smith) [1975985] - media: media/usb: rename VFL_TYPE_GRABBER to _VIDEO (Torez Smith) [1975985] - USB: serial: xr: fix interface leak at disconnect (Torez Smith) [1975985] - media: rename VFL_TYPE_GRABBER to _VIDEO (Torez Smith) [1975985] - USB: serial: xr: fix NULL-deref at probe (Torez Smith) [1975985] - USB: cdc-acm: ignore Exar XR21V141X when serial driver is built (Torez Smith) [1975985] - media: uvcvideo: drop error check of debugfs_create_dir() (Torez Smith) [1975985] - USB: serial: add MaxLinear/Exar USB to Serial driver (Torez Smith) [1975985] - media: uvcvideo: Fix a typo in UVC_METATADA_BUF_SIZE (Torez Smith) [1975985] - media: uvcvideo: Fix error path in control parsing failure (Torez Smith) [1975985] - media: drivers/media: don't set pix->priv = 0 (Torez Smith) [1975985] - media: Bulk remove BUG_ON(in_interrupt()) (Torez Smith) [1975985] - media: zr364xx: propagate errors from zr364xx_start_readpipe() (Torez Smith) [1975985] - media: uvcvideo: Add a D4M camera description (Torez Smith) [1975985] - media: em28xx: Enable Hauppauge 461e rev2 (Torez Smith) [1975985] - crypto: qat - fix definition of ring reset results (Vladis Dronov) [1960307] - crypto: qat - add support for compression for 4xxx (Vladis Dronov) [1960307] - crypto: qat - allow detection of dc capabilities for 4xxx (Vladis Dronov) [1960307] - crypto: qat - add PFVF support to enable the reset of ring pairs (Vladis Dronov) [1960307] - crypto: qat - add PFVF support to the GEN4 host driver (Vladis Dronov) [1960307] - crypto: qat - config VFs based on ring-to-svc mapping (Vladis Dronov) [1960307] - crypto: qat - exchange ring-to-service mappings over PFVF (Vladis Dronov) [1960307] - crypto: qat - support fast ACKs in the PFVF protocol (Vladis Dronov) [1960307] - crypto: qat - exchange device capabilities over PFVF (Vladis Dronov) [1960307] - crypto: qat - introduce support for PFVF block messages (Vladis Dronov) [1960307] - crypto: qat - store the ring-to-service mapping (Vladis Dronov) [1960307] - crypto: qat - store the PFVF protocol version of the endpoints (Vladis Dronov) [1960307] - crypto: qat - improve the ACK timings in PFVF send (Vladis Dronov) [1960307] - crypto: qat - leverage read_poll_timeout in PFVF send (Vladis Dronov) [1960307] - crypto: qat - leverage bitfield.h utils for PFVF messages (Vladis Dronov) [1960307] - crypto: qat - abstract PFVF messages with struct pfvf_message (Vladis Dronov) [1960307] - crypto: qat - set PFVF_MSGORIGIN just before sending (Vladis Dronov) [1960307] - crypto: qat - make PFVF send and receive direction agnostic (Vladis Dronov) [1960307] - crypto: qat - make PFVF message construction direction agnostic (Vladis Dronov) [1960307] - crypto: qat - add the adf_get_pmisc_base() helper function (Vladis Dronov) [1960307] - crypto: qat - support the reset of ring pairs on PF (Vladis Dronov) [1960307] - crypto: qat - extend crypto capability detection for 4xxx (Vladis Dronov) [1960307] - crypto: qat - set COMPRESSION capability for QAT GEN2 (Vladis Dronov) [1960307] - crypto: qat - set CIPHER capability for QAT GEN2 (Vladis Dronov) [1960307] - crypto: qat - get compression extended capabilities (Vladis Dronov) [1960307] - crypto: qat - improve logging of PFVF messages (Vladis Dronov) [1960307] - crypto: qat - fix VF IDs in PFVF log messages (Vladis Dronov) [1960307] - crypto: qat - do not rely on min version (Vladis Dronov) [1960307] - crypto: qat - refactor pfvf version request messages (Vladis Dronov) [1960307] - crypto: qat - pass the PF2VF responses back to the callers (Vladis Dronov) [1960307] - crypto: qat - use enums for PFVF protocol codes (Vladis Dronov) [1960307] - crypto: qat - reorganize PFVF protocol definitions (Vladis Dronov) [1960307] - crypto: qat - reorganize PFVF code (Vladis Dronov) [1960307] - crypto: qat - abstract PFVF receive logic (Vladis Dronov) [1960307] - crypto: qat - abstract PFVF send function (Vladis Dronov) [1960307] - crypto: qat - differentiate between pf2vf and vf2pf offset (Vladis Dronov) [1960307] - crypto: qat - add pfvf_ops (Vladis Dronov) [1960307] - crypto: qat - relocate PFVF disabled function (Vladis Dronov) [1960307] - crypto: qat - relocate PFVF VF related logic (Vladis Dronov) [1960307] - crypto: qat - relocate PFVF PF related logic (Vladis Dronov) [1960307] - crypto: qat - handle retries due to collisions in adf_iov_putmsg() (Vladis Dronov) [1960307] - crypto: qat - split PFVF message decoding from handling (Vladis Dronov) [1960307] - crypto: qat - re-enable interrupts for legacy PFVF messages (Vladis Dronov) [1960307] - crypto: qat - change PFVF ACK behaviour (Vladis Dronov) [1960307] - crypto: qat - move interrupt code out of the PFVF handler (Vladis Dronov) [1960307] - crypto: qat - move VF message handler to adf_vf2pf_msg.c (Vladis Dronov) [1960307] - crypto: qat - move vf2pf interrupt helpers (Vladis Dronov) [1960307] - crypto: qat - refactor PF top half for PFVF (Vladis Dronov) [1960307] - crypto: qat - fix undetected PFVF timeout in ACK loop (Vladis Dronov) [1960307] - crypto: qat - do not handle PFVF sources for qat_4xxx (Vladis Dronov) [1960307] - crypto: qat - simplify adf_enable_aer() (Vladis Dronov) [1960307] - crypto: qat - share adf_enable_pf2vf_comms() from adf_pf2vf_msg.c (Vladis Dronov) [1960307] - crypto: qat - extract send and wait from adf_vf2pf_request_version() (Vladis Dronov) [1960307] - crypto: qat - add VF and PF wrappers to common send function (Vladis Dronov) [1960307] - crypto: qat - rename pfvf collision constants (Vladis Dronov) [1960307] - crypto: qat - move pfvf collision detection values (Vladis Dronov) [1960307] - crypto: qat - make pfvf send message direction agnostic (Vladis Dronov) [1960307] - crypto: qat - use hweight for bit counting (Vladis Dronov) [1960307] - crypto: qat - remove duplicated logic across GEN2 drivers (Vladis Dronov) [1960307] - crypto: qat - fix handling of VF to PF interrupts (Vladis Dronov) [1960307] - crypto: qat - remove unnecessary collision prevention step in PFVF (Vladis Dronov) [1960307] - crypto: qat - disregard spurious PFVF interrupts (Vladis Dronov) [1960307] - crypto: qat - detect PFVF collision after ACK (Vladis Dronov) [1960307] - crypto: qat - power up 4xxx device (Vladis Dronov) [1960307] - crypto: qat - remove unneeded packed attribute (Vladis Dronov) [1960307] - crypto: qat - free irq in case of failure (Vladis Dronov) [1960307] - crypto: qat - free irqs only if allocated (Vladis Dronov) [1960307] - crypto: qat - remove unmatched CPU affinity to cluster IRQ (Vladis Dronov) [1960307] - crypto: qat - replace deprecated MSI API (Vladis Dronov) [1960307] - crypto: qat - store vf.compatible flag (Vladis Dronov) [1960307] - crypto: qat - do not export adf_iov_putmsg() (Vladis Dronov) [1960307] - crypto: qat - flush vf workqueue at driver removal (Vladis Dronov) [1960307] - crypto: qat - remove the unnecessary get_vintmsk_offset() (Vladis Dronov) [1960307] - crypto: qat - fix naming of PF/VF enable functions (Vladis Dronov) [1960307] - crypto: qat - complete all the init steps before service notification (Vladis Dronov) [1960307] - crypto: qat - move IO virtualization functions (Vladis Dronov) [1960307] - crypto: qat - fix naming for init/shutdown VF to PF notifications (Vladis Dronov) [1960307] - crypto: qat - protect interrupt mask CSRs with a spinlock (Vladis Dronov) [1960307] - crypto: qat - move pf2vf interrupt [en|dis]able to adf_vf_isr.c (Vladis Dronov) [1960307] - crypto: qat - fix reuse of completion variable (Vladis Dronov) [1960307] - crypto: qat - remove intermediate tasklet for vf2pf (Vladis Dronov) [1960307] - crypto: qat - rename compatibility version definition (Vladis Dronov) [1960307] - crypto: qat - prevent spurious MSI interrupt in PF (Vladis Dronov) [1960307] - crypto: qat - prevent spurious MSI interrupt in VF (Vladis Dronov) [1960307] - crypto: qat - handle both source of interrupt in VF ISR (Vladis Dronov) [1960307] - crypto: qat - do not ignore errors from enable_vf2pf_comms() (Vladis Dronov) [1960307] - crypto: qat - enable interrupts only after ISR allocation (Vladis Dronov) [1960307] - crypto: qat - remove empty sriov_configure() (Vladis Dronov) [1960307] - crypto: qat - use proper type for vf_mask (Vladis Dronov) [1960307] - crypto: qat - fix a typo in a comment (Vladis Dronov) [1960307] - crypto: qat - disable AER if an error occurs in probe functions (Vladis Dronov) [1960307] - crypto: qat - set DMA mask to 48 bits for Gen2 (Vladis Dronov) [1960307] - crypto: qat - simplify code and axe the use of a deprecated API (Vladis Dronov) [1960307] - crypto: qat - ratelimit invalid ioctl message and print the invalid cmd (Vladis Dronov) [1960307] - lib: crc8: pointer to data block should be const (Vladis Dronov) [1960307] - redhat/configs: disable CONFIG_HYPERV_BALLOON on Aarch64 (Vitaly Kuznetsov) [2035292] - net/mlx5e: Fix possible use-after-free deleting fdb rule (Amir Tzin) [2000003] - e1000e: Fix packet loss on Tiger Lake and later (Ken Cox) [1952803] - e1000e: Separate TGP board type from SPT (Ken Cox) [1952803] - e1000e: Add support for the next LOM generation (Ken Cox) [1952803] - e1000e: Add support for Lunar Lake (Ken Cox) [1952803] - ACPI: tables: FPDT: Do not print FW_BUG message if record types are reserved (Mark Langsdorf) [1999906] - powerpc/xmon: Dump XIVE information for online-only processors. (Steve Best) [2037639] - of: net: pass the dst buffer to of_get_mac_address() (Petr Oros) [2026468] - net: ethernet: improve eth_platform_get_mac_address (Petr Oros) [2026468] - net: ethernet: fix similar warning reported by kbuild test robot (Petr Oros) [2026468] - net: ethernet: support of_get_mac_address new ERR_PTR error (Petr Oros) [2026468] - [s390] s390: add HWCAP_S390_PCI_MIO to ELF hwcaps (Mete Durlu) [2030641] - [s390] s390: make PCI mio support a machine flag (Mete Durlu) [2030641] - Allocate bw_dwork as a pointer and introduce a backpointer in the work struct (Nico Pache) [1990580] - writeback: use READ_ONCE for unlocked reads of writeback stats (Nico Pache) [1990580] - writeback: rename domain_update_bandwidth() (Nico Pache) [1990580] - writeback: fix bandwidth estimate for spiky workload (Nico Pache) [1990580] - writeback: reliably update bandwidth estimation (Nico Pache) [1990580] - writeback: track number of inodes under writeback (Nico Pache) [1990580] - bdi: replace BDI_CAP_NO_{WRITEBACK,ACCT_DIRTY} with a single flag (Nico Pache) [1990580] - bdi: invert BDI_CAP_NO_ACCT_WB (Nico Pache) [1990580] - bdi: replace BDI_CAP_STABLE_WRITES with a queue and a sb flag (Nico Pache) [1990580] - mm: use SWP_SYNCHRONOUS_IO more intelligently (Nico Pache) [1990580] - bdi: remove BDI_CAP_SYNCHRONOUS_IO (Nico Pache) [1990580] - bcache: inherit the optimal I/O size (Nico Pache) [1990580] - fs: remove the unused SB_I_MULTIROOT flag (Nico Pache) [1990580] - Revert "bdi: replace BDI_CAP_NO_{WRITEBACK,ACCT_DIRTY} with a single flag" (Nico Pache) [1990580] - mm/page_io.c: annotate refault stalls from swap_readpage (Nico Pache) [1990580] - mmc: mmc_spi: Enable stable writes (Nico Pache) [1990580] - virtio-blk: modernize sysfs attribute creation (Nico Pache) [1990580] - aoe: register default groups with device_add_disk() (Nico Pache) [1990580] - block: make QUEUE_SYSFS_BIT_FNS more useful (Nico Pache) [1990580] - block: add helper macros for queue sysfs entries (Nico Pache) [1990580] - cifs: sanitize multiple delimiters in prepath (Thiago Becker) [2031200] - igc: Fix typo in i225 LTR functions (Corinna Vinschen) [1970667] - igc: AF_XDP zero-copy metadata adjust breaks SKBs on XDP_PASS (Corinna Vinschen) [1970667] - igc: Change Device Reset to Port Reset (Corinna Vinschen) [1970667] - igc: Add new device ID (Corinna Vinschen) [1970667] - igc: Remove media type checking on the PHY initialization (Corinna Vinschen) [1970667] - igc: Update I226_K device ID (Corinna Vinschen) [1970667] - net: intel: igc_ptp: fix build for UML (Corinna Vinschen) [1970667] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Corinna Vinschen) [1970667] - igc: Add support for CBS offloading (Corinna Vinschen) [1970667] - igc: Simplify TSN flags handling (Corinna Vinschen) [1970667] - igc: Use default cycle 'start' and 'end' values for queues (Corinna Vinschen) [1970667] - igc: Add support for PTP getcrosststamp() (Corinna Vinschen) [1970667] - igc: Enable PCIe PTM (Corinna Vinschen) [1970667] - igc: Use num_tx_queues when iterating over tx_ring queue (Corinna Vinschen) [1970667] - igc: fix page fault when thunderbolt is unplugged (Corinna Vinschen) [1970667] - igc: Increase timeout value for Speed 100/1000/2500 (Corinna Vinschen) [1970667] - igc: Set QBVCYCLET_S to 0 for TSN Basic Scheduling (Corinna Vinschen) [1970667] - igc: Remove phy->type checking (Corinna Vinschen) [1970667] - igc: Remove _I_PHY_ID checking (Corinna Vinschen) [1970667] - igc: Check if num of q_vectors is smaller than max before array access (Corinna Vinschen) [1970667] - Revert "igc: Export LEDs" (Corinna Vinschen) [1970667] - igc: Export LEDs (Corinna Vinschen) [1970667] - igc: Make flex filter more flexible (Corinna Vinschen) [1970667] - igc: Allow for Flex Filters to be installed (Corinna Vinschen) [1970667] - igc: Integrate flex filter into ethtool ops (Corinna Vinschen) [1970667] - igc: Add possibility to add flex filter (Corinna Vinschen) [1970667] - igc: Fix an error handling path in 'igc_probe()' (Corinna Vinschen) [1970667] - igc: change default return of igc_read_phy_reg() (Corinna Vinschen) [1970667] - igc: Fix use-after-free error during reset (Corinna Vinschen) [1970667] - intel: Remove rcu_read_lock() around XDP program invocation (Corinna Vinschen) [1970667] - igc: Enable HW VLAN Insertion and HW VLAN Stripping (Corinna Vinschen) [1970667] - igc: Indentation fixes (Corinna Vinschen) [1970667] - igc: Remove unused MDICNFG register (Corinna Vinschen) [1970667] - igc: Remove unused asymmetric pause bit from igc defines (Corinna Vinschen) [1970667] - igc: Update driver to use ethtool_sprintf (Corinna Vinschen) [1970667] - igc: add correct exception tracing for XDP (Corinna Vinschen) [1970667] - igb/igc: use strongly typed pointer (Corinna Vinschen) [1970667] - intel: remove checker warning (Corinna Vinschen) [1970667] - igc: Enable TX via AF_XDP zero-copy (Corinna Vinschen) [1970667] - igc: Enable RX via AF_XDP zero-copy (Corinna Vinschen) [1970667] - igc: Replace IGC_TX_FLAGS_XDP flag by an enum (Corinna Vinschen) [1970667] - igc: Introduce igc_unmap_tx_buffer() helper (Corinna Vinschen) [1970667] - igc: Introduce TX/RX stats helpers (Corinna Vinschen) [1970667] - igc: Refactor XDP rxq info registration (Corinna Vinschen) [1970667] - igc: Refactor igc_clean_rx_ring() (Corinna Vinschen) [1970667] - igc: Refactor __igc_xdp_run_prog() (Corinna Vinschen) [1970667] - igc: Move igc_xdp_is_enabled() (Corinna Vinschen) [1970667] - igc: use XDP helpers (Corinna Vinschen) [1970667] - igc: Expose LPI counters (Corinna Vinschen) [1970667] - igc: enable auxiliary PHC functions for the i225 (Corinna Vinschen) [1970667] - igc: Enable internal i225 PPS (Corinna Vinschen) [1970667] - igc: Add support for XDP_REDIRECT action (Corinna Vinschen) [1970667] - igc: Add support for XDP_TX action (Corinna Vinschen) [1970667] - igc: Add initial XDP support (Corinna Vinschen) [1970667] - drivers: net: mhi: fix error path in mhi_net_newlink (Íñigo Huguet) [2004141] - cfg80211: correct bridge/4addr mode check (Íñigo Huguet) [2004141] - cfg80211: fix management registrations locking (Íñigo Huguet) [2004141] - cfg80211: scan: fix RCU in cfg80211_add_nontrans_list() (Íñigo Huguet) [2004141] - mac80211: mesh: fix HE operation element length check (Íñigo Huguet) [2004141] - mwifiex: avoid null-pointer-subtraction warning (Íñigo Huguet) [2004141] - Revert "brcmfmac: use ISO3166 country code and 0 rev as fallback" (Íñigo Huguet) [2004141] - iwlwifi: pcie: add configuration of a Wi-Fi adapter on Dell XPS 15 (Íñigo Huguet) [2004141] - mac80211: Fix Ptk0 rekey documentation (Íñigo Huguet) [2004141] - mac80211: check return value of rhashtable_init (Íñigo Huguet) [2004141] - mac80211: fix use-after-free in CCMP/GCMP RX (Íñigo Huguet) [2004141] - mac80211-hwsim: fix late beacon hrtimer handling (Íñigo Huguet) [2004141] - mac80211: mesh: fix potentially unaligned access (Íñigo Huguet) [2004141] - mac80211: limit injected vht mcs/nss in ieee80211_parse_tx_radiotap (Íñigo Huguet) [2004141] - mac80211: Drop frames from invalid MAC address in ad-hoc mode (Íñigo Huguet) [2004141] - mac80211: Fix ieee80211_amsdu_aggregate frag_tail bug (Íñigo Huguet) [2004141] - Revert "mac80211: do not use low data rates for data frames with no ack flag" (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: missing unlock in iwl_mvm_wowlan_program_keys() (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: Fix off by ones in iwl_mvm_wowlan_get_rsc_v5_data() (Íñigo Huguet) [2004141] - iwlwifi: mvm: Fix possible NULL dereference (Íñigo Huguet) [2004141] - iwlwifi: fix printk format warnings in uefi.c (Íñigo Huguet) [2004141] - iwlwifi: pnvm: Fix a memory leak in 'iwl_pnvm_get_from_fs()' (Íñigo Huguet) [2004141] - iwlwifi: bump FW API to 66 for AX devices (Íñigo Huguet) [2004141] - iwlwifi Add support for ax201 in Samsung Galaxy Book Flex2 Alpha (Íñigo Huguet) [2004141] - iwlwifi: mvm: add rtnl_lock() in iwl_mvm_start_get_nvm() (Íñigo Huguet) [2004141] - net: qrtr: revert check in qrtr_endpoint_post() (Íñigo Huguet) [2004141] - net: qrtr: make checks in qrtr_endpoint_post() stricter (Íñigo Huguet) [2004141] - intel: switch from 'pci_' to 'dma_' API (Íñigo Huguet) [2004141] - mwifiex: pcie: add reset_d3cold quirk for Surface gen4+ devices (Íñigo Huguet) [2004141] - mwifiex: pcie: add DMI-based quirk implementation for Surface devices (Íñigo Huguet) [2004141] - brcmfmac: pcie: fix oops on failure to resume and reprobe (Íñigo Huguet) [2004141] - brcmfmac: Add WPA3 Personal with FT to supported cipher suites (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: Fix initialization of place in _rtl92c_phy_get_rightchnlplace() (Íñigo Huguet) [2004141] - rtw88: add quirk to disable pci caps on HP Pavilion 14-ce0xxx (Íñigo Huguet) [2004141] - ath9k: fix sleeping in atomic context (Íñigo Huguet) [2004141] - ath9k: fix OOB read ar9300_eeprom_restore_internal (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't use FW key ID in beacon protection (Íñigo Huguet) [2004141] - iwlwifi: mvm: Fix scan channel flags settings (Íñigo Huguet) [2004141] - iwlwifi: mvm: support broadcast TWT alone (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_stored_beacon_notif_v3 (Íñigo Huguet) [2004141] - iwlwifi: move get pnvm file name to a separate function (Íñigo Huguet) [2004141] - iwlwifi: mvm: add support for responder config command version 9 (Íñigo Huguet) [2004141] - iwlwifi: mvm: add support for range request command version 13 (Íñigo Huguet) [2004141] - iwlwifi: allow debug init in RF-kill (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't schedule the roc_done_wk if it is already running (Íñigo Huguet) [2004141] - iwlwifi: yoyo: support for new DBGI_SRAM region (Íñigo Huguet) [2004141] - iwlwifi: add 'Rx control frame to MBSSID' HE capability (Íñigo Huguet) [2004141] - iwlwifi: fw: fix debug dump data declarations (Íñigo Huguet) [2004141] - iwlwifi: api: remove datamember from struct (Íñigo Huguet) [2004141] - iwlwifi: fix __percpu annotation (Íñigo Huguet) [2004141] - iwlwifi: pcie: avoid dma unmap/remap in crash dump (Íñigo Huguet) [2004141] - iwlwifi: acpi: fill in SAR tables with defaults (Íñigo Huguet) [2004141] - iwlwifi: acpi: fill in WGDS table with defaults (Íñigo Huguet) [2004141] - iwlwifi: bump FW API to 65 for AX devices (Íñigo Huguet) [2004141] - iwlwifi: acpi: support reading and storing WGDS revision 2 (Íñigo Huguet) [2004141] - iwlwifi: mvm: load regdomain at INIT stage (Íñigo Huguet) [2004141] - iwlwifi: mvm: Read the PPAG and SAR tables at INIT stage (Íñigo Huguet) [2004141] - iwlwifi: mvm: trigger WRT when no beacon heard (Íñigo Huguet) [2004141] - iwlwifi: fw: correctly limit to monitor dump (Íñigo Huguet) [2004141] - iwlwifi: skip first element in the WTAS ACPI table (Íñigo Huguet) [2004141] - iwlwifi: mvm: support version 11 of wowlan statuses notification (Íñigo Huguet) [2004141] - iwlwifi: convert flat GEO profile table to a struct version (Íñigo Huguet) [2004141] - iwlwifi: remove unused ACPI_WGDS_TABLE_SIZE definition (Íñigo Huguet) [2004141] - iwlwifi: support reading and storing EWRD revisions 1 and 2 (Íñigo Huguet) [2004141] - iwlwifi: acpi: support reading and storing WRDS revision 1 and 2 (Íñigo Huguet) [2004141] - iwlwifi: pass number of chains and sub-bands to iwl_sar_set_profile() (Íñigo Huguet) [2004141] - iwlwifi: remove ACPI_SAR_NUM_TABLES definition (Íñigo Huguet) [2004141] - iwlwifi: convert flat SAR profile table to a struct version (Íñigo Huguet) [2004141] - iwlwifi: rename ACPI_SAR_NUM_CHAIN_LIMITS to ACPI_SAR_NUM_CHAINS (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix access to BSS elements (Íñigo Huguet) [2004141] - iwlwifi: mvm: Refactor setting of SSIDs for 6GHz scan (Íñigo Huguet) [2004141] - iwlwifi: mvm: silently drop encrypted frames for unknown station (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: implement RSC command version 5 (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: make key reprogramming iteration optional (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: add separate key iteration for GTK type (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: refactor TSC/RSC configuration (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: remove fixed cmd_flags argument (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: separate TKIP data from key iteration (Íñigo Huguet) [2004141] - iwlwifi: mvm: simplify __iwl_mvm_set_sta_key() (Íñigo Huguet) [2004141] - iwlwifi: mvm: support new station key API (Íñigo Huguet) [2004141] - iwlwifi: mvm: Fix umac scan request probe parameters (Íñigo Huguet) [2004141] - iwlwifi: pcie: implement Bz reset flow (Íñigo Huguet) [2004141] - iwlwifi: implement Bz NMI behaviour (Íñigo Huguet) [2004141] - iwlwifi: pcie: implement Bz device startup (Íñigo Huguet) [2004141] - iwlwifi: read MAC address from correct place on Bz (Íñigo Huguet) [2004141] - iwlwifi: give Bz devices their own name (Íñigo Huguet) [2004141] - iwlwifi: split off Bz devices into their own family (Íñigo Huguet) [2004141] - iwlwifi: yoyo: cleanup internal buffer allocation in D3 (Íñigo Huguet) [2004141] - iwlwifi: mvm: treat MMPDUs in iwl_mvm_mac_tx() as bcast (Íñigo Huguet) [2004141] - iwlwifi: mvm: clean up number of HW queues (Íñigo Huguet) [2004141] - iwlwifi: mvm: avoid static queue number aliasing (Íñigo Huguet) [2004141] - iwlwifi: use DEFINE_MUTEX() for mutex lock (Íñigo Huguet) [2004141] - iwlwifi: remove trailing semicolon in macro definition (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix a memory leak in iwl_mvm_mac_ctxt_beacon_changed (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix old-style static const declaration (Íñigo Huguet) [2004141] - iwlwifi: mvm: remove check for vif in iwl_mvm_vif_from_mac80211() (Íñigo Huguet) [2004141] - iwlwifi: pcie: remove spaces from queue names (Íñigo Huguet) [2004141] - iwlwifi: mvm: restrict FW SMPS request (Íñigo Huguet) [2004141] - iwlwifi: mvm: set replay counter on key install (Íñigo Huguet) [2004141] - iwlwifi: mvm: remove trigger EAPOL time event (Íñigo Huguet) [2004141] - iwlwifi: iwl-dbg-tlv: add info about loading external dbg bin (Íñigo Huguet) [2004141] - iwlwifi: mvm: Add support for hidden network scan on 6GHz band (Íñigo Huguet) [2004141] - iwlwifi: mvm: Do not use full SSIDs in 6GHz scan (Íñigo Huguet) [2004141] - iwlwifi: print PNVM complete notification status in hexadecimal (Íñigo Huguet) [2004141] - iwlwifi: pcie: dump error on FW reset handshake failures (Íñigo Huguet) [2004141] - iwlwifi: prepare for synchronous error dumps (Íñigo Huguet) [2004141] - iwlwifi: pcie: free RBs during configure (Íñigo Huguet) [2004141] - iwlwifi: pcie: optimise struct iwl_rx_mem_buffer layout (Íñigo Huguet) [2004141] - iwlwifi: mvm: avoid FW restart while shutting down (Íñigo Huguet) [2004141] - iwlwifi: nvm: enable IEEE80211_HE_PHY_CAP10_HE_MU_M1RU_MAX_LTF (Íñigo Huguet) [2004141] - iwlwifi: mvm: set BROADCAST_TWT_SUPPORTED in MAC policy (Íñigo Huguet) [2004141] - iwlwifi: iwl-nvm-parse: set STBC flags for HE phy capabilities (Íñigo Huguet) [2004141] - cfg80211: use wiphy DFS domain if it is self-managed (Íñigo Huguet) [2004141] - mac80211: parse transmit power envelope element (Íñigo Huguet) [2004141] - ieee80211: add definition for transmit power envelope element (Íñigo Huguet) [2004141] - ieee80211: add definition of regulatory info in 6 GHz operation information (Íñigo Huguet) [2004141] - mac80211: introduce individual TWT support in AP mode (Íñigo Huguet) [2004141] - ieee80211: add TWT element definitions (Íñigo Huguet) [2004141] - brcmsmac: make array addr static const, makes object smaller (Íñigo Huguet) [2004141] - rtw88: Remove unnecessary check code (Íñigo Huguet) [2004141] - rtw88: wow: fix size access error of probe request (Íñigo Huguet) [2004141] - rtw88: wow: report wow reason through mac80211 api (Íñigo Huguet) [2004141] - rtw88: wow: build wow function only if CONFIG_PM is on (Íñigo Huguet) [2004141] - rtw88: refine the setting of rsvd pages for different firmware (Íñigo Huguet) [2004141] - rtw88: use read_poll_timeout instead of fixed sleep (Íñigo Huguet) [2004141] - rtw88: 8822ce: set CLKREQ# signal to low during suspend (Íñigo Huguet) [2004141] - rtw88: change beacon filter default mode (Íñigo Huguet) [2004141] - rtw88: 8822c: add tx stbc support under HT mode (Íñigo Huguet) [2004141] - rtw88: adjust the log level for failure of tx report (Íñigo Huguet) [2004141] - rtl8xxxu: Fix the handling of TX A-MPDU aggregation (Íñigo Huguet) [2004141] - rtl8xxxu: disable interrupt_in transfer for 8188cu and 8192cu (Íñigo Huguet) [2004141] - mwifiex: make arrays static const, makes object smaller (Íñigo Huguet) [2004141] - mwifiex: usb: Replace one-element array with flexible-array member (Íñigo Huguet) [2004141] - mwifiex: drop redundant null-pointer check in mwifiex_dnld_cmd_to_fw() (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: make arrays static const, makes object smaller (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: Remove redundant variable initializations (Íñigo Huguet) [2004141] - ray_cs: Split memcpy() to avoid bounds check warning (Íñigo Huguet) [2004141] - ray_cs: use *ph to print small buffer (Íñigo Huguet) [2004141] - brcmfmac: add 43752 SDIO ids and initialization (Íñigo Huguet) [2004141] - brcmfmac: Set SDIO workqueue as WQ_HIGHPRI (Íñigo Huguet) [2004141] - brcmfmac: use separate firmware for 43430 revision 2 (Íñigo Huguet) [2004141] - brcmfmac: support chipsets with different core enumeration space (Íñigo Huguet) [2004141] - brcmfmac: add xtlv support to firmware interface layer (Íñigo Huguet) [2004141] - brcmfmac: increase core revision column aligning core list (Íñigo Huguet) [2004141] - brcmfmac: use different error value for invalid ram base address (Íñigo Huguet) [2004141] - brcmfmac: firmware: Fix firmware loading (Íñigo Huguet) [2004141] - net: qrtr: fix another OOB Read in qrtr_endpoint_post (Íñigo Huguet) [2004141] - cfg80211: fix BSS color notify trace enum confusion (Íñigo Huguet) [2004141] - mac80211: fix locking in ieee80211_restart_work() (Íñigo Huguet) [2004141] - mac80211: Fix insufficient headroom issue for AMSDU (Íñigo Huguet) [2004141] - mac80211: add support for BSS color change (Íñigo Huguet) [2004141] - nl80211: add support for BSS coloring (Íñigo Huguet) [2004141] - mac80211: Use flex-array for radiotap header bitmap (Íñigo Huguet) [2004141] - mac80211: radiotap: Use BIT() instead of shifts (Íñigo Huguet) [2004141] - mac80211: Remove unnecessary variable and label (Íñigo Huguet) [2004141] - mac80211: include (Íñigo Huguet) [2004141] - mac80211: Fix monitor MTU limit so that A-MSDUs get through (Íñigo Huguet) [2004141] - mac80211: remove unnecessary NULL check in ieee80211_register_hw() (Íñigo Huguet) [2004141] - mac80211: Reject zero MAC address in sta_info_insert_check() (Íñigo Huguet) [2004141] - mt76: fix enum type mismatch (Íñigo Huguet) [2004141] - bus: mhi: core: Improve debug messages for power up (Íñigo Huguet) [2004141] - bus: mhi: core: Replace DMA allocation wrappers with original APIs (Íñigo Huguet) [2004141] - bus: mhi: core: Add range checks for BHI and BHIe (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Set register access length for MHI driver (Íñigo Huguet) [2004141] - ath11k: set register access length for MHI driver (Íñigo Huguet) [2004141] - bus: mhi: Add MMIO region length to controller structure (Íñigo Huguet) [2004141] - bus: mhi: core: Set BHI and BHIe pointers to NULL in clean-up (Íñigo Huguet) [2004141] - bus: mhi: core: Set BHI/BHIe offsets on power up preparation (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add Cinterion MV31-W PCIe to MHI (Íñigo Huguet) [2004141] - Revert "mhi: Fix networking tree build." (Íñigo Huguet) [2004141] - mhi: Fix networking tree build. (Íñigo Huguet) [2004141] - brcmfmac: firmware: Allow per-board firmware binaries (Íñigo Huguet) [2004141] - iwlwifi: add new so-jf devices (Íñigo Huguet) [2004141] - iwlwifi: add new SoF with JF devices (Íñigo Huguet) [2004141] - iwlwifi: pnvm: accept multiple HW-type TLVs (Íñigo Huguet) [2004141] - cfg80211: Fix possible memory leak in function cfg80211_bss_update (Íñigo Huguet) [2004141] - nl80211: limit band information in non-split data (Íñigo Huguet) [2004141] - mac80211: fix enabling 4-address mode on a sta vif after assoc (Íñigo Huguet) [2004141] - mac80211: fix starting aggregation sessions on mesh interfaces (Íñigo Huguet) [2004141] - mac80211: Do not strip skb headroom on monitor frames (Íñigo Huguet) [2004141] - net: mhi: Remove MBIM protocol (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Fix inbound IPCR channel (Íñigo Huguet) [2004141] - bus: mhi: core: Validate channel ID when processing command completions (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Apply no-op for wake using sideband wake boolean (Íñigo Huguet) [2004141] - net: mhi: Improve MBIM packet counting (Íñigo Huguet) [2004141] - bus: mhi: pci-generic: configurable network interface MRU (Íñigo Huguet) [2004141] - mt76: mt7921: Fix fall-through warning for Clang (Íñigo Huguet) [2004141] - mt76: mt7921: continue to probe driver when fw already downloaded (Íñigo Huguet) [2004141] - ath11k: Remove some duplicate code (Íñigo Huguet) [2004141] - ath: switch from 'pci_' to 'dma_' API (Íñigo Huguet) [2004141] - iwlwifi: acpi: remove unused function iwl_acpi_eval_dsm_func() (Íñigo Huguet) [2004141] - rtw88: fix c2h memory leak (Íñigo Huguet) [2004141] - brcmfmac: support parse country code map from DT (Íñigo Huguet) [2004141] - bus: mhi: pci-generic: Add missing 'pci_disable_pcie_error_reporting()' calls (Íñigo Huguet) [2004141] - bus: mhi: Wait for M2 state during system resume (Íñigo Huguet) [2004141] - bus: mhi: core: Fix power down latency (Íñigo Huguet) [2004141] - brcmfmac: Silence error messages about unsupported firmware features (Íñigo Huguet) [2004141] - cfg80211: Add wiphy_info_once() (Íñigo Huguet) [2004141] - mac80211: Switch to a virtual time-based airtime scheduler (Íñigo Huguet) [2004141] - Revert "mac80211: HE STA disassoc due to QOS NULL not sent" (Íñigo Huguet) [2004141] - mac80211: remove iwlwifi specific workaround NDPs of null_response (Íñigo Huguet) [2004141] - mac80211: fix NULL ptr dereference during mesh peer connection for non HE devices (Íñigo Huguet) [2004141] - mac80211: Enable power save after receiving NULL packet ACK (Íñigo Huguet) [2004141] - mac80211: add HE 6 GHz capability only if supported (Íñigo Huguet) [2004141] - mac80211: notify driver on mgd TX completion (Íñigo Huguet) [2004141] - mac80211: always include HE 6GHz capability in probe request (Íñigo Huguet) [2004141] - mac80211: add vendor-specific capabilities to assoc request (Íñigo Huguet) [2004141] - cfg80211: allow advertising vendor-specific capabilities (Íñigo Huguet) [2004141] - cfg80211: set custom regdomain after wiphy registration (Íñigo Huguet) [2004141] - cfg80211: Support hidden AP discovery over 6GHz band (Íñigo Huguet) [2004141] - mac80211: conditionally advertise HE in probe requests (Íñigo Huguet) [2004141] - cfg80211: add cfg80211_any_usable_channels() (Íñigo Huguet) [2004141] - cfg80211: reg: improve bad regulatory warning (Íñigo Huguet) [2004141] - nl80211: Fix typo pmsr->pmsr (Íñigo Huguet) [2004141] - mac80211: fix some spelling mistakes (Íñigo Huguet) [2004141] - cfg80211: remove ieee80211_get_he_sta_cap() (Íñigo Huguet) [2004141] - mac80211: remove use of ieee80211_get_he_sta_cap() (Íñigo Huguet) [2004141] - cfg80211: trace more information in assoc trace event (Íñigo Huguet) [2004141] - mac80211: improve AP disconnect message (Íñigo Huguet) [2004141] - mac80211: rearrange struct txq_info for fewer holes (Íñigo Huguet) [2004141] - ieee80211: add defines for HE PHY cap byte 10 (Íñigo Huguet) [2004141] - mac80211: Properly WARN on HW scan before restart (Íñigo Huguet) [2004141] - nl80211/cfg80211: add BSS color to NDP ranging parameters (Íñigo Huguet) [2004141] - mac80211: add to bss_conf if broadcast TWT is supported (Íñigo Huguet) [2004141] - mac80211: move SMPS mode setting after ieee80211_prep_connection (Íñigo Huguet) [2004141] - mac80211: free skb in WEP error case (Íñigo Huguet) [2004141] - mac80211: handle rate control (RC) racing with chanctx definition (Íñigo Huguet) [2004141] - ieee80211: define timing measurement in extended capabilities IE (Íñigo Huguet) [2004141] - mac80211_hwsim: record stats in non-netlink path (Íñigo Huguet) [2004141] - ieee80211: add the value for Category '6' in "rtw_ieee80211_category" (Íñigo Huguet) [2004141] - mac80211: remove iwlwifi specific workaround that broke sta NDP tx (Íñigo Huguet) [2004141] - mac80211: allow SMPS requests only in client mode (Íñigo Huguet) [2004141] - mac80211: check per vif offload_flags in Tx path (Íñigo Huguet) [2004141] - mac80211: add rate control support for encap offload (Íñigo Huguet) [2004141] - mac80211: call ieee80211_tx_h_rate_ctrl() when dequeue (Íñigo Huguet) [2004141] - mac80211: move A-MPDU session check from minstrel_ht to mac80211 (Íñigo Huguet) [2004141] - cfg80211: expose the rfkill device to the low level driver (Íñigo Huguet) [2004141] - wireless: add check of field VHT Extended NSS BW Capable for 160/80+80 MHz setting (Íñigo Huguet) [2004141] - mac80211_hwsim: add concurrent channels scanning support over virtio (Íñigo Huguet) [2004141] - mac80211: don't open-code LED manipulations (Íñigo Huguet) [2004141] - mac80211: consider per-CPU statistics if present (Íñigo Huguet) [2004141] - cfg80211: fix default HE tx bitrate mask in 2G band (Íñigo Huguet) [2004141] - mac80211: remove the repeated declaration (Íñigo Huguet) [2004141] - mac80211: refactor rc_no_data_or_no_ack_use_min function (Íñigo Huguet) [2004141] - mac80211: do not use low data rates for data frames with no ack flag (Íñigo Huguet) [2004141] - mac80211: add ieee80211_is_tx_data helper function (Íñigo Huguet) [2004141] - mac80211: simplify ieee80211_add_station() (Íñigo Huguet) [2004141] - mac80211: use sdata->skb_queue for TDLS (Íñigo Huguet) [2004141] - mac80211: refactor SKB queue processing a bit (Íñigo Huguet) [2004141] - mac80211: unify queueing SKB to iface (Íñigo Huguet) [2004141] - mac80211: minstrel_ht: ignore frame that was sent with noAck flag (Íñigo Huguet) [2004141] - cfg80211: clean up variable use in cfg80211_parse_colocated_ap() (Íñigo Huguet) [2004141] - cfg80211: remove CFG80211_MAX_NUM_DIFFERENT_CHANNELS (Íñigo Huguet) [2004141] - mac80211: Remove redundant assignment to ret (Íñigo Huguet) [2004141] - net: wireless: wext_compat.c: Remove redundant assignment to ps (Íñigo Huguet) [2004141] - wireless: wext-spy: Fix out-of-bounds warning (Íñigo Huguet) [2004141] - ath11k: Avoid memcpy() over-reading of he_cap (Íñigo Huguet) [2004141] - mt7601u: add USB device ID for some versions of XiaoDu WiFi Dongle. (Íñigo Huguet) [2004141] - mwifiex: Avoid memset() over-write of WEP key_material (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: Fully initialize curvecount_val (Íñigo Huguet) [2004141] - rtw88: coex: remove unnecessary variable and label (Íñigo Huguet) [2004141] - rtw88: add quirks to disable pci capabilities (Íñigo Huguet) [2004141] - rtw88: refine unwanted h2c command (Íñigo Huguet) [2004141] - rtw88: dump FW crash via devcoredump (Íñigo Huguet) [2004141] - rtw88: notify fw when driver in scan-period to avoid potential problem (Íñigo Huguet) [2004141] - rtw88: add rtw_fw_feature_check api (Íñigo Huguet) [2004141] - rtw88: 8822c: update RF parameter tables to v62 (Íñigo Huguet) [2004141] - rtw88: Remove duplicate include of coex.h (Íñigo Huguet) [2004141] - rtw88: 8822c: fix lc calibration timing (Íñigo Huguet) [2004141] - rtw88: add path diversity (Íñigo Huguet) [2004141] - rtw88: add beacon filter support (Íñigo Huguet) [2004141] - iwlwifi: bump FW API to 64 for AX devices (Íñigo Huguet) [2004141] - iwlwifi: fw: dump TCM error table if present (Íñigo Huguet) [2004141] - iwlwifi: add 9560 killer device (Íñigo Huguet) [2004141] - iwlwifi: move error dump to fw utils (Íñigo Huguet) [2004141] - iwlwifi: support loading the reduced power table from UEFI (Íñigo Huguet) [2004141] - iwlwifi: move UEFI code to a separate file (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_wowlan_get_status_cmd (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_wowlan_kek_kck_material_cmd_v4 (Íñigo Huguet) [2004141] - iwlwifi: mvm: update iwl_wowlan_patterns_cmd (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_proto_offload_cmd_v4 (Íñigo Huguet) [2004141] - iwlwifi: fix NUM_IWL_UCODE_TLV_* definitions to avoid sparse errors (Íñigo Huguet) [2004141] - iwlwifi: pcie: free some DMA memory earlier (Íñigo Huguet) [2004141] - iwlwifi: mvm: fill phy_data.d1 for no-data RX (Íñigo Huguet) [2004141] - iwlwifi: pcie: fix context info freeing (Íñigo Huguet) [2004141] - iwlwifi: pcie: free IML DMA memory allocation (Íñigo Huguet) [2004141] - iwlwifi: mvm: support LONG_GROUP for WOWLAN_GET_STATUSES version (Íñigo Huguet) [2004141] - iwlwifi: support ver 6 of WOWLAN_CONFIGURATION and ver 10 of WOWLAN_GET_STATUSES (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't request mac80211 to disable/enable sta's queues (Íñigo Huguet) [2004141] - iwlwifi: mvm: Explicitly stop session protection before unbinding (Íñigo Huguet) [2004141] - iwlwifi: pcie: remove TR/CR tail allocations (Íñigo Huguet) [2004141] - iwlwifi: mvm: Read acpi dsm to get unii4 enable/disable bitmap. (Íñigo Huguet) [2004141] - iwlwifi: pcie: fix some kernel-doc comments (Íñigo Huguet) [2004141] - iwlwifi: advertise broadcast TWT support (Íñigo Huguet) [2004141] - iwlwifi: mvm: support LMR feedback (Íñigo Huguet) [2004141] - iwlwifi: correct HE capabilities (Íñigo Huguet) [2004141] - iwlwifi: mvm: Call NMI instead of REPLY_ERROR (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix error print when session protection ends (Íñigo Huguet) [2004141] - iwlwifi: mvm: honour firmware SMPS requests (Íñigo Huguet) [2004141] - iwlwifi: mvm: apply RX diversity per PHY context (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't request SMPS in AP mode (Íñigo Huguet) [2004141] - iwlwifi: pcie: identify the RF module (Íñigo Huguet) [2004141] - iwlwifi: yoyo: support region TLV version 2 (Íñigo Huguet) [2004141] - iwlwifi: remove duplicate iwl_ax201_cfg_qu_hr declaration (Íñigo Huguet) [2004141] - iwlwifi: pcie: remove CSR_HW_RF_ID_TYPE_CHIP_ID (Íñigo Huguet) [2004141] - iwlwifi: pcie: print interrupt number, not index (Íñigo Huguet) [2004141] - iwlwifi: pcie: Add support for AX231 radio module with Ma devices (Íñigo Huguet) [2004141] - iwlwifi: increase PNVM load timeout (Íñigo Huguet) [2004141] - iwlwifi: pcie: handle pcim_iomap_table() failures better (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't change band on bound PHY contexts (Íñigo Huguet) [2004141] - iwlwifi: remove unused REMOTE_WAKE_CONFIG_CMD definitions (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix indentation in some scan functions (Íñigo Huguet) [2004141] - iwlwifi: mvm: pass the clock type to iwl_mvm_get_sync_time() (Íñigo Huguet) [2004141] - iwlwifi: mvm: support BIOS enable/disable for 11ax in Russia (Íñigo Huguet) [2004141] - ath11k: Enable QCN9074 device (Íñigo Huguet) [2004141] - ath10k: demote chan info without scan request warning (Íñigo Huguet) [2004141] - rtl8xxxu: avoid parsing short RX packet (Íñigo Huguet) [2004141] - rtl8xxxu: Fix device info for RTL8192EU devices (Íñigo Huguet) [2004141] - mt76: mt7921: allow chip reset during device restart (Íñigo Huguet) [2004141] - mt76: mt7615: set macwork timeout according to runtime-pm (Íñigo Huguet) [2004141] - mt76: mt7663s: enable runtime-pm (Íñigo Huguet) [2004141] - mt76: mt7663s: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path (Íñigo Huguet) [2004141] - mt76: mt7663s: rely on pm reference counting (Íñigo Huguet) [2004141] - mt76: sdio: do not run mt76_txq_schedule directly (Íñigo Huguet) [2004141] - mt76: mt7921: enable HE BFee capability (Íñigo Huguet) [2004141] - mt76: disable TWT capabilities for the moment (Íñigo Huguet) [2004141] - mt76: fix iv and CCMP header insertion (Íñigo Huguet) [2004141] - mt76: mt7921: fix the coredump is being truncated (Íñigo Huguet) [2004141] - mt76: mt7921: fix kernel warning when reset on vif is not sta (Íñigo Huguet) [2004141] - mt76: mt7921: introduce dedicated control for deep_sleep (Íñigo Huguet) [2004141] - mt76: mt7921: limit txpower according to userlevel power (Íñigo Huguet) [2004141] - mt76: mt7921: improve code readability for mt7921_update_txs (Íñigo Huguet) [2004141] - mt76: mt7915: fix IEEE80211_HE_PHY_CAP7_MAX_NC for station mode (Íñigo Huguet) [2004141] - mt76: use SPDX header file comment style (Íñigo Huguet) [2004141] - mt76: add a space between comment char and SPDX tag (Íñigo Huguet) [2004141] - mt76: mt7915: improve MU stability (Íñigo Huguet) [2004141] - mt76: mt7921: add deep sleep control to runtime-pm knob (Íñigo Huguet) [2004141] - mt76: mt7921: enable deep sleep at runtime (Íñigo Huguet) [2004141] - mt76: mt7915: introduce mt7915_mcu_set_txbf() (Íñigo Huguet) [2004141] - mt76: make mt76_update_survey() per phy (Íñigo Huguet) [2004141] - mt76: move mt76_get_next_pkt_id in mt76.h (Íñigo Huguet) [2004141] - mt76: reduce rx buffer size to 2048 (Íñigo Huguet) [2004141] - mt76: connac: fix the maximum interval schedule scan can support (Íñigo Huguet) [2004141] - mt76: mt7915: fix rx fcs error count in testmode (Íñigo Huguet) [2004141] - mt76: testmode: move chip-specific stats dump before common stats (Íñigo Huguet) [2004141] - mt76: connac: add mt76_connac_mcu_get_nic_capability utility routine (Íñigo Huguet) [2004141] - mt76: connac: check band caps in mt76_connac_mcu_set_rate_txpower (Íñigo Huguet) [2004141] - mt76: mt7915: drop the use of repeater entries for station interfaces (Íñigo Huguet) [2004141] - mt76: mt7921: enable VHT BFee capability (Íñigo Huguet) [2004141] - mt76: mt7921: make mt7921_set_channel static (Íñigo Huguet) [2004141] - mt76: mt7921: wake the device before dumping power table (Íñigo Huguet) [2004141] - mt76: connac: add mt76_connac_power_save_sched in mt76_connac_pm_unref (Íñigo Huguet) [2004141] - mt76: connac: fix UC entry is being overwritten (Íñigo Huguet) [2004141] - mt76: mt7615: update radar parameters (Íñigo Huguet) [2004141] - mt76: mt7915: setup drr group for peers (Íñigo Huguet) [2004141] - mt76: mt7921: enable random mac address during sched_scan (Íñigo Huguet) [2004141] - mt76: mt7921: remove mt7921_get_wtbl_info routine (Íñigo Huguet) [2004141] - mt76: mt7915: fix MT_EE_CAL_GROUP_SIZE (Íñigo Huguet) [2004141] - mt76: mt7915: improve error recovery reliability (Íñigo Huguet) [2004141] - mt76: mt7921: enable hw offloading for wep keys (Íñigo Huguet) [2004141] - mt76: mt7915: read all eeprom fields from fw in efuse mode (Íñigo Huguet) [2004141] - mt76: mt7921: set MT76_RESET during mac reset (Íñigo Huguet) [2004141] - mt76: mt7921: introduce mac tx done handling (Íñigo Huguet) [2004141] - mt76: allow hw driver code to overwrite wiphy interface_modes (Íñigo Huguet) [2004141] - mt76: mt7921: update statistic in active mode only (Íñigo Huguet) [2004141] - mt76: mt7915: use mt7915_mcu_get_mib_info() to get survey data (Íñigo Huguet) [2004141] - mt76: mt7615: fix potential overflow on large shift (Íñigo Huguet) [2004141] - mt76: testmode: remove undefined behaviour in mt76_testmode_alloc_skb (Íñigo Huguet) [2004141] - mt76: testmode: remove unnecessary function calls in mt76_testmode_free_skb (Íñigo Huguet) [2004141] - mt76: testmode: fix memory leak in mt76_testmode_alloc_skb (Íñigo Huguet) [2004141] - mt76: mt7615: remove useless if condition in mt7615_add_interface() (Íñigo Huguet) [2004141] - mt76: mt7915: use mt7915_mcu_get_txpower_sku() to get per-rate txpower (Íñigo Huguet) [2004141] - mt76: mt7615: add .offset_tsf callback (Íñigo Huguet) [2004141] - mt76: mt7915: add .offset_tsf callback (Íñigo Huguet) [2004141] - mt76: mt7921: reset wfsys during hw probe (Íñigo Huguet) [2004141] - mt76: mt7921: do not schedule hw reset if the device is not running (Íñigo Huguet) [2004141] - mt76: mt7921: return proper error value in mt7921_mac_init (Íñigo Huguet) [2004141] - mt76: mt7921: enable runtime pm by default (Íñigo Huguet) [2004141] - mt76: mt7921: fix OMAC idx usage (Íñigo Huguet) [2004141] - mt76: mt7921: fix invalid register access in wake_work (Íñigo Huguet) [2004141] - mt76: mt7921: avoid unnecessary consecutive WiFi resets (Íñigo Huguet) [2004141] - mt76: connac: update BA win size in Rx direction (Íñigo Huguet) [2004141] - mt76: connac: add bss color support for sta mode (Íñigo Huguet) [2004141] - mt76: mt7615: add thermal sensor device support (Íñigo Huguet) [2004141] - mt76: mt7915: add thermal cooling device support (Íñigo Huguet) [2004141] - mt76: mt7915: add thermal sensor device support (Íñigo Huguet) [2004141] - mt76: mt7921: fix reset under the deep sleep is enabled (Íñigo Huguet) [2004141] - mt76: mt7921: add back connection monitor support (Íñigo Huguet) [2004141] - mt76: mt7921: consider the invalid value for to_rssi (Íñigo Huguet) [2004141] - mt76: connac: fix WoW with disconnetion and bitmap pattern (Íñigo Huguet) [2004141] - mt76: connac: fw_own rely on all packet memory all being free (Íñigo Huguet) [2004141] - mt76: mt7921: Don't alter Rx path classifier (Íñigo Huguet) [2004141] - mt76: mt7921: fix mt7921_wfsys_reset sequence (Íñigo Huguet) [2004141] - mt76: mt7663: enable hw rx header translation (Íñigo Huguet) [2004141] - mt76: mt7615: free irq if mt7615_mmio_probe fails (Íñigo Huguet) [2004141] - mt76: mt76x0: use dev_debug instead of dev_err for hw_rf_ctrl (Íñigo Huguet) [2004141] - mt76: mt7921: enable rx csum offload (Íñigo Huguet) [2004141] - mt76: mt7921: enable rx header traslation offload (Íñigo Huguet) [2004141] - mt76: connac: add missing configuration in mt76_connac_mcu_wtbl_hdr_trans_tlv (Íñigo Huguet) [2004141] - mt76: mt7921: enable rx hw de-amsdu (Íñigo Huguet) [2004141] - mt76: mt7915: fix a signedness bug in mt7915_mcu_apply_tx_dpd() (Íñigo Huguet) [2004141] - mt76: mt7615: fix NULL pointer dereference in tx_prepare_skb() (Íñigo Huguet) [2004141] - mt76: fix possible NULL pointer dereference in mt76_tx (Íñigo Huguet) [2004141] - mt76: mt7915: add .set_bitrate_mask() callback (Íñigo Huguet) [2004141] - mt76: mt7915: cleanup mt7915_mcu_sta_rate_ctrl_tlv() (Íñigo Huguet) [2004141] - mt76: mt7915: fix tssi indication field of DBDC NICs (Íñigo Huguet) [2004141] - mt76: move mt76_rates in mt76 module (Íñigo Huguet) [2004141] - mac80211: reset profile_periodicity/ema_ap (Íñigo Huguet) [2004141] - mac80211: handle various extensible elements correctly (Íñigo Huguet) [2004141] - cfg80211: avoid double free of PMSR request (Íñigo Huguet) [2004141] - cfg80211: make certificate generation more robust (Íñigo Huguet) [2004141] - mac80211: minstrel_ht: fix sample time check (Íñigo Huguet) [2004141] - mt76: mt7915: add support for tx status reporting (Íñigo Huguet) [2004141] - mt76: mt7915: rework tx rate reporting (Íñigo Huguet) [2004141] - mt76: dma: use ieee80211_tx_status_ext to free packets when tx fails (Íñigo Huguet) [2004141] - mt76: improve tx status codepath (Íñigo Huguet) [2004141] - mt76: intialize tx queue entry wcid to 0xffff by default (Íñigo Huguet) [2004141] - mt76: mt7603: avoid use of ieee80211_tx_info_clear_status (Íñigo Huguet) [2004141] - mt76: mt7615: avoid use of ieee80211_tx_info_clear_status (Íñigo Huguet) [2004141] - mt76: mt7615: fix fixed-rate tx status reporting (Íñigo Huguet) [2004141] - mt76: mt7915: move mt7915_queue_rx_skb to mac.c (Íñigo Huguet) [2004141] - mt76: mt7915: disable ASPM (Íñigo Huguet) [2004141] - mt76: mt7915: add MSI support (Íñigo Huguet) [2004141] - ath11k: send beacon template after vdev_start/restart during csa (Íñigo Huguet) [2004141] - ath10k: Use devm_platform_get_and_ioremap_resource() (Íñigo Huguet) [2004141] - ath10k: remove the repeated declaration (Íñigo Huguet) [2004141] - ath10k: Fix an error code in ath10k_add_interface() (Íñigo Huguet) [2004141] - ath11k: Fix an error handling path in ath11k_core_fetch_board_data_api_n() (Íñigo Huguet) [2004141] - ath: Fix wrong function name in comments (Íñigo Huguet) [2004141] - rtlwifi: Fix spelling of 'download' (Íñigo Huguet) [2004141] - rtlwifi: Remove redundant assignments to ul_enc_algo (Íñigo Huguet) [2004141] - rtlwifi: rtl8723ae: remove redundant initialization of variable rtstatus (Íñigo Huguet) [2004141] - rtlwifi: btcoex: 21a 2ant: Delete several duplicate condition branch codes (Íñigo Huguet) [2004141] - rtlwifi: 8821a: btcoexist: add comments to explain why if-else branches are identical (Íñigo Huguet) [2004141] - rt2x00: do not set timestamp for injected frames (Íñigo Huguet) [2004141] - rndis_wlan: simplify is_associated() (Íñigo Huguet) [2004141] - rt2x00: remove leading spaces before tabs (Íñigo Huguet) [2004141] - rtlwifi: Fix wrong function name in comments (Íñigo Huguet) [2004141] - brcmsmac: Remove the repeated declaration (Íñigo Huguet) [2004141] - brcmsmac: mac80211_if: Fix a resource leak in an error handling path (Íñigo Huguet) [2004141] - brcmsmac: Drop unnecessary NULL check after container_of (Íñigo Huguet) [2004141] - brcmsmac: improve readability on addresses copy (Íñigo Huguet) [2004141] - brcmfmac: Add clm_blob firmware files to modinfo (Íñigo Huguet) [2004141] - brcmfmac: Delete second brcm folder hierarchy (Íñigo Huguet) [2004141] - brcmfmac: Fix a double-free in brcmf_sdio_bus_reset (Íñigo Huguet) [2004141] - brcmfmac: Demote non-compliant kernel-doc headers (Íñigo Huguet) [2004141] - brcmfmac: correctly report average RSSI in station info (Íñigo Huguet) [2004141] - brcmfmac: fix setting of station info chains bitmask (Íñigo Huguet) [2004141] - brcmfmac: use ISO3166 country code and 0 rev as fallback (Íñigo Huguet) [2004141] - ath10k: remove unused more_frags variable (Íñigo Huguet) [2004141] - ath10k: add missing error return code in ath10k_pci_probe() (Íñigo Huguet) [2004141] - ath10k: go to path err_unsupported when chip id is not supported (Íñigo Huguet) [2004141] - ath11k: don't call ath11k_pci_set_l1ss for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add support for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add support to get peer id for WCN6855 (Íñigo Huguet) [2004141] - ath11k: setup WBM_IDLE_LINK ring once again (Íñigo Huguet) [2004141] - ath11k: setup REO for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add dp support for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add hw reg support for WCN6855 (Íñigo Huguet) [2004141] - ath9k: Fix kernel NULL pointer dereference during ath_reset_internal() (Íñigo Huguet) [2004141] - mwifiex: bring down link before deleting interface (Íñigo Huguet) [2004141] - mt76: mt7615: Use devm_platform_get_and_ioremap_resource() (Íñigo Huguet) [2004141] - wwan: core: add WWAN common private data for netdev (Íñigo Huguet) [2004141] - wwan: core: support default netdev creation (Íñigo Huguet) [2004141] - wwan: core: no more hold netdev ops owning module (Íñigo Huguet) [2004141] - net: mhi_net: Update the transmit handler prototype (Íñigo Huguet) [2004141] - bus: mhi: pci-generic: Fix hibernation (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Fix possible use-after-free in mhi_pci_remove() (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: T99W175: update channel name from AT to DUN (Íñigo Huguet) [2004141] - mac80211: drop multicast fragments (Íñigo Huguet) [2004141] - mac80211: move interface shutdown out of wiphy lock (Íñigo Huguet) [2004141] - cfg80211: shut down interfaces on failed resume (Íñigo Huguet) [2004141] - cfg80211: fix phy80211 symlink creation (Íñigo Huguet) [2004141] - mac80211: fix 'reset' debugfs locking (Íñigo Huguet) [2004141] - mac80211: fix deadlock in AP/VLAN handling (Íñigo Huguet) [2004141] - mac80211: Fix NULL ptr deref for injected rate info (Íñigo Huguet) [2004141] - mac80211: fix skb length check in ieee80211_scan_rx() (Íñigo Huguet) [2004141] - mac80211: correct ieee80211_iterate_active_interfaces_mtx() locking comments (Íñigo Huguet) [2004141] - cfg80211: call cfg80211_leave_ocb when switching away from OCB (Íñigo Huguet) [2004141] - mac80211_hwsim: drop pending frames on stop (Íñigo Huguet) [2004141] - mac80211: remove warning in ieee80211_get_sband() (Íñigo Huguet) [2004141] - mt76: mt7921: remove leftover 80+80 HE capability (Íñigo Huguet) [2004141] - mt76: mt7615: do not set MT76_STATE_PM at bootstrap (Íñigo Huguet) [2004141] - ath9k: ar9003_mac: read STBC indicator from rx descriptor (Íñigo Huguet) [2004141] - ath10k/ath11k: fix spelling mistake "requed" -> "requeued" (Íñigo Huguet) [2004141] - mwifiex: re-fix for unaligned accesses (Íñigo Huguet) [2004141] - mt76: mt76x0e: fix device hang during suspend/resume (Íñigo Huguet) [2004141] - mt76: mt7921: fix max aggregation subframes setting (Íñigo Huguet) [2004141] - mt76: connac: fix HT A-MPDU setting field in STA_REC_PHY (Íñigo Huguet) [2004141] - mt76: connac: do not schedule mac_work if the device is not running (Íñigo Huguet) [2004141] - mt76: mt7921: fix possible AOOB issue in mt7921_mcu_tx_rate_report (Íñigo Huguet) [2004141] - brcmfmac: properly check for bus register errors (Íñigo Huguet) [2004141] - Revert "brcmfmac: add a check for the status of usb_register" (Íñigo Huguet) [2004141] - net: rtlwifi: properly check for alloc_workqueue() failure (Íñigo Huguet) [2004141] - Revert "rtlwifi: fix a potential NULL pointer dereference" (Íñigo Huguet) [2004141] - wl3501_cs: Fix out-of-bounds warnings in wl3501_mgmt_join (Íñigo Huguet) [2004141] - wl3501_cs: Fix out-of-bounds warnings in wl3501_send_pkt (Íñigo Huguet) [2004141] - iwlwifi: mvm: tt: Replace thermal_notify_framework (Íñigo Huguet) [2004141] - mt76: debugfs: introduce napi_threaded node (Íñigo Huguet) [2004141] - wl3501: fix typo of 'Networks' in comment (Íñigo Huguet) [2004141] - mt76: use threaded NAPI (Íñigo Huguet) [2004141] - net: mhi_net: make mhi_wwan_ops static (Íñigo Huguet) [2004141] - net: mhi_net: Register wwan_ops for link creation (Íñigo Huguet) [2004141] - net: mhi: remove pointless conditional before kfree_skb() (Íñigo Huguet) [2004141] - net: mhi: Allow decoupled MTU/MRU (Íñigo Huguet) [2004141] - net: mhi: Add support for non-linear MBIM skb processing (Íñigo Huguet) [2004141] - bus: mhi: fix typo in comments for struct mhi_channel_config (Íñigo Huguet) [2004141] - bus: mhi: core: Fix shadow declarations (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Constify mhi_controller_config struct definitions (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Introduce Foxconn T99W175 support (Íñigo Huguet) [2004141] - bus: mhi: core: Sanity check values from remote device before use (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add FIREHOSE channels (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Implement PCI shutdown callback (Íñigo Huguet) [2004141] - bus: mhi: Improve documentation on channel transfer setup APIs (Íñigo Huguet) [2004141] - bus: mhi: core: Remove __ prefix for MHI channel unprepare function (Íñigo Huguet) [2004141] - bus: mhi: core: Check channel execution environment before issuing reset (Íñigo Huguet) [2004141] - bus: mhi: core: Clear configuration from channel context during reset (Íñigo Huguet) [2004141] - bus: mhi: core: Hold device wake for channel update commands (Íñigo Huguet) [2004141] - bus: mhi: core: Update debug messages to use client device (Íñigo Huguet) [2004141] - bus: mhi: core: Improvements to the channel handling state machine (Íñigo Huguet) [2004141] - bus: mhi: core: Clear context for stopped channels from remove() (Íñigo Huguet) [2004141] - bus: mhi: core: Allow sending the STOP channel command (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add SDX65 based modem support (Íñigo Huguet) [2004141] - bus: mhi: core: Remove pre_init flag used for power purposes (Íñigo Huguet) [2004141] - bus: mhi: pm: reduce PM state change verbosity (Íñigo Huguet) [2004141] - bus: mhi: core: Fix MHI runtime_pm behavior (Íñigo Huguet) [2004141] - bus: mhi: core: Move to polling method to wait for MHI ready (Íñigo Huguet) [2004141] - bus: mhi: core: Introduce internal register poll helper function (Íñigo Huguet) [2004141] - bus: mhi: core: Improve state strings for debug messages (Íñigo Huguet) [2004141] - bus: mhi: core: Wait for MHI READY state in most scenarios (Íñigo Huguet) [2004141] - bus: mhi: core: Identify Flash Programmer as a mission mode use case (Íñigo Huguet) [2004141] - bus: mhi: core: Add support for Flash Programmer execution environment (Íñigo Huguet) [2004141] - bus: mhi: core: Handle EDL mode entry appropriately (Íñigo Huguet) [2004141] - bus: mhi: core: Wait for ready after an EDL firmware download (Íñigo Huguet) [2004141] - bus: mhi: core: Rely on accurate method to determine EDL mode (Íñigo Huguet) [2004141] - bus: mhi: core: Check state before processing power_down (Íñigo Huguet) [2004141] - bus: mhi: core: Return EAGAIN if MHI ring is full (Íñigo Huguet) [2004141] - net: export dev_set_threaded symbol (Íñigo Huguet) [2004141] - bus: mhi: core: remove redundant initialization of variables state and ee (Íñigo Huguet) [2004141] - bus: mhi: Make firmware image optional for controller (Íñigo Huguet) [2004141] - bus: mhi: core: Add missing checks for MMIO register entries (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add support for runtime PM (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Use generic PCI power management (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: No-Op for device_wake operations (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add SDX24 based modem support (Íñigo Huguet) [2004141] - bus: mhi: Early MHI resume failure in non M3 state (Íñigo Huguet) [2004141] - bus: mhi: core: Update debug prints to include local device state (Íñigo Huguet) [2004141] - bus: mhi: core: Process execution environment changes serially (Íñigo Huguet) [2004141] - bus: mhi: core: Download AMSS image from appropriate function (Íñigo Huguet) [2004141] - bus: mhi: core: Destroy SBL devices when moving to mission mode (Íñigo Huguet) [2004141] - bus: mhi: core: Rename debugfs directory name (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Introduce quectel EM1XXGR-L support (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Parametrable element count for events (Íñigo Huguet) [2004141] - ath10k: Detect conf_mutex held ath10k_drain_tx() calls (Íñigo Huguet) [2004141] - net: mhi: Add mbim proto (Íñigo Huguet) [2004141] - net: mhi: Add rx_length_errors stat (Íñigo Huguet) [2004141] - net: mhi: Create mhi.h (Íñigo Huguet) [2004141] - net: mhi: Add dedicated folder (Íñigo Huguet) [2004141] - net: mhi: Add protocol support (Íñigo Huguet) [2004141] - net: mhi-net: Add re-aggregation of fragmented packets (Íñigo Huguet) [2004141] - net: mhi: Get rid of local rx queue count (Íñigo Huguet) [2004141] - net: mhi: Get RX queue size from MHI core (Íñigo Huguet) [2004141] - net: mhi: Set wwan device type (Íñigo Huguet) [2004141] - net: mhi: Add raw IP mode support (Íñigo Huguet) [2004141] - net: mhi: Fix unexpected queue wake (Íñigo Huguet) [2004141] - net: Add mhi-net driver (Íñigo Huguet) [2004141] - ipv4: make exception cache less predictible (Antoine Tenart) [2015111] {CVE-2021-20322} - ipv4: use siphash instead of Jenkins in fnhe_hashfun() (Antoine Tenart) [2015111] {CVE-2021-20322} - iommu/dma: Account for min_align_mask w/swiotlb (Jerry Snitselaar) [2018601] - swiotlb: Support aligned swiotlb buffers (Jerry Snitselaar) [2018601] - iommu/dma: Check CONFIG_SWIOTLB more broadly (Jerry Snitselaar) [2018601] - iommu/dma: Fold _swiotlb helpers into callers (Jerry Snitselaar) [2018601] - iommu/dma: Skip extra sync during unmap w/swiotlb (Jerry Snitselaar) [2018601] - iommu/dma: Fix arch_sync_dma for map (Jerry Snitselaar) [2018601] - iommu/dma: Fix sync_sg with swiotlb (Jerry Snitselaar) [2018601] - redhat/configs: Add CONFIG_DMA_RESTRICTED_POOL (Jerry Snitselaar) [2018601] - swiotlb: use depends on for DMA_RESTRICTED_POOL (Jerry Snitselaar) [2018601] - powerpc/svm: Don't issue ultracalls if !mem_encrypt_active() (Jerry Snitselaar) [2018601] - s390/pv: fix the forcing of the swiotlb (Jerry Snitselaar) [2018601] - swiotlb: Free tbl memory in swiotlb_exit() (Jerry Snitselaar) [2018601] - swiotlb: Emit diagnostic in swiotlb_exit() (Jerry Snitselaar) [2018601] - swiotlb: Convert io_default_tlb_mem to static allocation (Jerry Snitselaar) [2018601] - swiotlb: fix implicit debugfs declarations (Jerry Snitselaar) [2018601] - swiotlb: Add restricted DMA pool initialization (Jerry Snitselaar) [2018601] - swiotlb: Add restricted DMA alloc/free support (Jerry Snitselaar) [2018601] - swiotlb: Refactor swiotlb_tbl_unmap_single (Jerry Snitselaar) [2018601] - swiotlb: Move alloc_size to swiotlb_find_slots (Jerry Snitselaar) [2018601] - swiotlb: Use is_swiotlb_force_bounce for swiotlb data bouncing (Jerry Snitselaar) [2018601] - swiotlb: Update is_swiotlb_active to add a struct device argument (Jerry Snitselaar) [2018601] - swiotlb: Update is_swiotlb_buffer to add a struct device argument (Jerry Snitselaar) [2018601] - swiotlb: Set dev->dma_io_tlb_mem to the swiotlb pool used (Jerry Snitselaar) [2018601] - swiotlb: Refactor swiotlb_create_debugfs (Jerry Snitselaar) [2018601] - swiotlb: Refactor swiotlb init functions (Jerry Snitselaar) [2018601] - of: Drop superfluous ULL suffix for ~0 (Jerry Snitselaar) [2018601] - dma-mapping: fix 32-bit overflow with CONFIG_ARM_LPAE=n (Jerry Snitselaar) [2018601] - of/device: Update dma_range_map only when dev has valid dma-ranges (Jerry Snitselaar) [2018601] - drivers core: Fix oops when driver probe fails (Jerry Snitselaar) [2018601] - drivers core: Free dma_range_map when driver probe failed (Jerry Snitselaar) [2018601] - driver core: Postpone DMA tear-down until after devres release for probe failure (Jerry Snitselaar) [2018601] - powerpc/pseries/iommu: Fix window size for direct mapping with pmem (Jerry Snitselaar) [2018601] - dma-mapping: add a dma_init_global_coherent helper (Jerry Snitselaar) [2018601] - dma-mapping: simplify dma_init_coherent_memory (Jerry Snitselaar) [2018601] - dma-debug: fix debugfs initialization order (Jerry Snitselaar) [2018601] - dma-debug: teach add_dma_entry() about DMA_ATTR_SKIP_CPU_SYNC (Jerry Snitselaar) [2018601] - dma-debug: fix sg checks in debug_dma_map_sg() (Jerry Snitselaar) [2018601] - swiotlb-xen: ensure to issue well-formed XENMEM_exchange requests (Jerry Snitselaar) [2018601] - dma-debug: prevent an error message from causing runtime problems (Jerry Snitselaar) [2018601] - swiotlb-xen: drop DEFAULT_NSLABS (Jerry Snitselaar) [2018601] - swiotlb-xen: arrange to have buffer info logged (Jerry Snitselaar) [2018601] - swiotlb-xen: drop leftover __ref (Jerry Snitselaar) [2018601] - swiotlb-xen: limit init retries (Jerry Snitselaar) [2018601] - swiotlb-xen: suppress certain init retries (Jerry Snitselaar) [2018601] - swiotlb-xen: maintain slab count properly (Jerry Snitselaar) [2018601] - swiotlb-xen: fix late init retry (Jerry Snitselaar) [2018601] - swiotlb-xen: avoid double free (Jerry Snitselaar) [2018601] - dma-mapping: handle vmalloc addresses in dma_common_{mmap,get_sgtable} (Jerry Snitselaar) [2018601] - dma-debug: report -EEXIST errors in add_dma_entry (Jerry Snitselaar) [2018601] - dma-mapping: remove a trailing space (Jerry Snitselaar) [2018601] - dma-mapping: add unlikely hint to error path in dma_mapping_error (Jerry Snitselaar) [2018601] - dma-mapping: remove a pointless empty line in dma_alloc_coherent (Jerry Snitselaar) [2018601] - swiotlb: Make SWIOTLB_NO_FORCE perform no allocation (Jerry Snitselaar) [2018601] - swiotlb: remove swiotlb_nr_tbl (Jerry Snitselaar) [2018601] - xen/swiotlb: check if the swiotlb has already been initialized (Jerry Snitselaar) [2018601] - swiotlb: add overflow checks to swiotlb_bounce (Jerry Snitselaar) [2002023] - swiotlb: don't override user specified size in swiotlb_adjust_size (Jerry Snitselaar) [2002023] - swiotlb: dynamically allocate io_tlb_default_mem (Jerry Snitselaar) [2002023] - swiotlb: move global variables into a new io_tlb_mem structure (Jerry Snitselaar) [2002023] - xen-swiotlb: remove the unused size argument from xen_swiotlb_fixup (Jerry Snitselaar) [2018601] - xen-swiotlb: split xen_swiotlb_init (Jerry Snitselaar) [2018601] - swiotlb: lift the double initialization protection from xen-swiotlb (Jerry Snitselaar) [2002023] - xen-swiotlb: remove xen_io_tlb_start and xen_io_tlb_nslabs (Jerry Snitselaar) [2018601] - xen-swiotlb: remove xen_set_nslabs (Jerry Snitselaar) [2018601] - xen-swiotlb: use io_tlb_end in xen_swiotlb_dma_supported (Jerry Snitselaar) [2018601] - xen-swiotlb: use is_swiotlb_buffer in is_xen_swiotlb_buffer (Jerry Snitselaar) [2018601] - swiotlb: split swiotlb_tbl_sync_single (Jerry Snitselaar) [2002023] - swiotlb: manipulate orig_addr when tlb_addr has offset (Jerry Snitselaar) [2002023] - swiotlb: move orig addr and size validation into swiotlb_bounce (Jerry Snitselaar) [2002023] - swiotlb: remove the alloc_size parameter to swiotlb_tbl_unmap_single (Jerry Snitselaar) [2002023] - swiotlb: Fix the type of index (Jerry Snitselaar) [2018601] - swiotlb: Validate bounce size in the sync/unmap path (Jerry Snitselaar) [2002023] - powerpc/svm: stop using io_tlb_start (Jerry Snitselaar) [2002023] - nvme-pci: set min_align_mask (Jerry Snitselaar) [2002023] - swiotlb: respect min_align_mask (Jerry Snitselaar) [2002023] - swiotlb: don't modify orig_addr in swiotlb_tbl_sync_single (Jerry Snitselaar) [2002023] - swiotlb: refactor swiotlb_tbl_map_single (Jerry Snitselaar) [2002023] - swiotlb: clean up swiotlb_tbl_unmap_single (Jerry Snitselaar) [2002023] - swiotlb: factor out a nr_slots helper (Jerry Snitselaar) [2002023] - swiotlb: factor out an io_tlb_offset helper (Jerry Snitselaar) [2002023] - swiotlb: add a IO_TLB_SIZE define (Jerry Snitselaar) [2002023] - driver core: add a min_align_mask field to struct device_dma_parameters (Jerry Snitselaar) [2002023] - sdhci: stop poking into swiotlb internals (Jerry Snitselaar) [2018601] - driver core: lift dma_default_coherent into common code (Jerry Snitselaar) [2018601] - dma-pool: no need to check return value of debugfs_create functions (Jerry Snitselaar) [2018601] - powerpc/dma: Fallback to dma_ops when persistent memory present (Jerry Snitselaar) [2018601] - dma-mapping: Allow mixing bypass and mapped DMA operation (Jerry Snitselaar) [2018601] - dma-mapping: remove the dma_direct_set_offset export (Jerry Snitselaar) [2018601] - dma-mapping: move more functions to dma-map-ops.h (Jerry Snitselaar) [2018601] - dma-mapping: merge into (Jerry Snitselaar) [2018601] - dma-mapping: move large parts of to kernel/dma (Jerry Snitselaar) [2018601] - dma-mapping: add (back) arch_dma_mark_clean for ia64 (Jerry Snitselaar) [2018601] - dma-mapping: move dma-debug.h to kernel/dma/ (Jerry Snitselaar) [2018601] - dma-mapping: split (Jerry Snitselaar) [2018601] - dma-mapping: introduce DMA range map, supplanting dma_pfn_offset (Jerry Snitselaar) [2018601] - of: Make of_dma_get_range() private (Jerry Snitselaar) [2018601] - swiotlb: fix comment on swiotlb_bounce() (Jerry Snitselaar) [2018601] - xen/arm: introduce phys/dma translations in xen_dma_sync_for_* (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_dma_sync_for_device (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_dma_sync_for_cpu (Jerry Snitselaar) [2018601] - swiotlb-xen: introduce phys_to_dma/dma_to_phys translations (Jerry Snitselaar) [2018601] - swiotlb-xen: remove XEN_PFN_PHYS (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to is_xen_swiotlb_buffer (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_bus_to_phys (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_phys_to_bus (Jerry Snitselaar) [2018601] - swiotlb-xen: use vmalloc_to_page on vmalloc virt addresses (Jerry Snitselaar) [2018601] - swiotlb-xen: Convert to use macro (Jerry Snitselaar) [2018601] - swiotlb-xen: merge xen_unmap_single into xen_swiotlb_unmap_page (Jerry Snitselaar) [2018601] - swiotlb-xen: remove xen_swiotlb_dma_mmap and xen_swiotlb_dma_get_sgtable (Jerry Snitselaar) [2018601] - xen/swiotlb: remember having called xen_create_contiguous_region() (Jerry Snitselaar) [2018601] - xen/swiotlb: simplify range_straddles_page_boundary() (Jerry Snitselaar) [2018601] - xen/swiotlb: fix condition for calling xen_destroy_contiguous_region() (Jerry Snitselaar) [2018601] - xen/swiotlb: don't initialize swiotlb twice on arm64 (Jerry Snitselaar) [2018601] - xen-swiotlb: use actually allocated size on check physical continuous (Jerry Snitselaar) [2018601] - igb: fix deadlock caused by taking RTNL in RPM resume path (Corinna Vinschen) [2039882] - igb: Fix removal of unicast MAC filters of VFs (Corinna Vinschen) [2039882] - net: ena: Fix error handling when calculating max IO queues number (Petr Oros) [2038158] - net: ena: Fix wrong rx request id by resetting device (Petr Oros) [2038158] - net: ena: Fix undefined state when tx request id is out of bounds (Petr Oros) [2038158] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Petr Oros) [2038158] - ena: Remove rcu_read_lock() around XDP program invocation (Petr Oros) [2038158] - net: ena: make symbol 'ena_alloc_map_page' static (Petr Oros) [2038158] - net: ena: fix DMA mapping function issues in XDP (Petr Oros) [2038158] - net: ena: re-organize code to improve readability (Petr Oros) [2038158] - net: ena: Use dev_alloc() in RX buffer allocation (Petr Oros) [2038158] - net: ena: aggregate doorbell common operations into a function (Petr Oros) [2038158] - net: ena: fix RST format in ENA documentation file (Petr Oros) [2038158] - net: ena: Remove module param and change message severity (Petr Oros) [2038158] - net: ena: add jiffies of last napi call to stats (Petr Oros) [2038158] - net: ena: use build_skb() in RX path (Petr Oros) [2038158] - net: ena: Improve error logging in driver (Petr Oros) [2038158] - net: ena: Remove unused code (Petr Oros) [2038158] - net: ena: optimize data access in fast-path code (Petr Oros) [2038158] - kasan, slub: reset tag when printing address (Nico Pache) [1954335] - kasan: fix Kconfig check of CC_HAS_WORKING_NOSANITIZE_ADDRESS (Nico Pache) [1954335] - Documentation: kunit: add tips for using current->kunit_test (Nico Pache) [1954335] - kunit: fix -Wunused-function warning for __kunit_fail_current_test (Nico Pache) [1954335] - kunit: support failure from dynamic analysis tools (Nico Pache) [1954335] - Add KASAN KUNIT Tests to Redhat kernel-modules-internal (Nico Pache) [1954335] - kasan, mm: fix resetting page_alloc tags for HW_TAGS (Nico Pache) [1954335] - kasan, mm: fix conflicts with init_on_alloc/free (Nico Pache) [1954335] - powerpc/uaccess: get rid of small constant size cases in raw_copy_{to,from}_user() (Nico Pache) [1954335] - kasan: remove redundant config option (Nico Pache) [1954335] - kasan: fix hwasan build for gcc (Nico Pache) [1954335] - lib/test_kasan_module.c: suppress unused var warning (Nico Pache) [1954335] - kasan: fix conflict with page poisoning (Nico Pache) [1954335] - kasan: fix per-page tags for non-page_alloc pages (Nico Pache) [1954335] - kasan: fix KASAN_STACK dependency for HW_TAGS (Nico Pache) [1954335] - kasan: clarify that only first bug is reported in HW_TAGS (Nico Pache) [1954335] - kasan: inline HW_TAGS helper functions (Nico Pache) [1954335] - kasan: ensure poisoning size alignment (Nico Pache) [1954335] - kasan, mm: optimize krealloc poisoning (Nico Pache) [1954335] - kasan, mm: fail krealloc on freed objects (Nico Pache) [1954335] - kasan: rework krealloc tests (Nico Pache) [1954335] - kasan: unify large kfree checks (Nico Pache) [1954335] - kasan: clean up setting free info in kasan_slab_free (Nico Pache) [1954335] - kasan: optimize large kmalloc poisoning (Nico Pache) [1954335] - kasan, mm: optimize kmalloc poisoning (Nico Pache) [1954335] - kasan, mm: don't save alloc stacks twice (Nico Pache) [1954335] - kasan: don't run tests when KASAN is not enabled (Nico Pache) [1954335] - kasan: add a test for kmem_cache_alloc/free_bulk (Nico Pache) [1954335] - kasan: add proper page allocator tests (Nico Pache) [1954335] - kasan: fix bug detection via ksize for HW_TAGS mode (Nico Pache) [1954335] - kasan: move _RET_IP_ to inline wrappers (Nico Pache) [1954335] - kasan: fix memory corruption in kasan_bitops_tags test (Nico Pache) [1954335] - kasan: rename CONFIG_TEST_KASAN_MODULE (Nico Pache) [1954335] - kasan: add match-all tag tests (Nico Pache) [1954335] - kasan: add macros to simplify checking test constraints (Nico Pache) [1954335] - kasan: clean up comments in tests (Nico Pache) [1954335] - kasan: clarify HW_TAGS impact on TBI (Nico Pache) [1954335] - kasan: prefix global functions with kasan_ (Nico Pache) [1954335] - kasan: fix stack traces dependency for HW_TAGS (Nico Pache) [1954335] - kasan: make addr_has_metadata() return true for valid addresses (Nico Pache) [1954335] - kasan: add explicit preconditions to kasan_report() (Nico Pache) [1954335] - kasan: fix HW_TAGS boot parameters (Nico Pache) [1954335] - kasan: fix null pointer dereference in kasan_record_aux_stack (Nico Pache) [1954335] - kasan: update documentation (Nico Pache) [1954335] - kasan, mm: allow cache merging with no metadata (Nico Pache) [1954335] - kasan: sanitize objects when metadata doesn't fit (Nico Pache) [1954335] - kasan: clarify comment in __kasan_kfree_large (Nico Pache) [1954335] - kasan: simplify assign_tag and set_tag calls (Nico Pache) [1954335] - kasan: don't round_up too much (Nico Pache) [1954335] - kasan, mm: rename kasan_poison_kfree (Nico Pache) [1954335] - kasan, mm: check kasan_enabled in annotations (Nico Pache) [1954335] - kasan: add and integrate kasan boot parameters (Nico Pache) [1954335] - kasan: inline (un)poison_range and check_invalid_free (Nico Pache) [1954335] - kasan: open-code kasan_unpoison_slab (Nico Pache) [1954335] - kasan: inline random_tag for HW_TAGS (Nico Pache) [1954335] - kasan: inline kasan_reset_tag for tag-based modes (Nico Pache) [1954335] - kasan: remove __kasan_unpoison_stack (Nico Pache) [1954335] - kasan: allow VMAP_STACK for HW_TAGS mode (Nico Pache) [1954335] - kasan, arm64: unpoison stack only with CONFIG_KASAN_STACK (Nico Pache) [1954335] - kasan: introduce set_alloc_info (Nico Pache) [1954335] - kasan: rename get_alloc/free_info (Nico Pache) [1954335] - kasan: simplify quarantine_put call site (Nico Pache) [1954335] - kasan: add documentation for hardware tag-based mode (Nico Pache) [1954335] - kasan, mm: reset tags when accessing metadata (Nico Pache) [1954335] - kasan, arm64: print report from tag fault handler (Nico Pache) [1954335] - kasan, arm64: implement HW_TAGS runtime (Nico Pache) [1954335] - kasan, arm64: expand CONFIG_KASAN checks (Nico Pache) [1954335] - string.h: fix incompatibility between FORTIFY_SOURCE and KASAN (Nico Pache) [1954335] - kasan, x86, s390: update undef CONFIG_KASAN (Nico Pache) [1954335] - kasan: define KASAN_GRANULE_SIZE for HW_TAGS (Nico Pache) [1954335] - arm64: kasan: add arch layer for memory tagging helpers (Nico Pache) [1954335] - kasan, mm: untag page address in free_reserved_area (Nico Pache) [1954335] - mm: Allow non-direct-map arguments to free_reserved_area() (Nico Pache) [1954335] - kasan: introduce CONFIG_KASAN_HW_TAGS (Nico Pache) [1954335] - kasan: separate metadata_fetch_row for each mode (Nico Pache) [1954335] - kasan: rename SHADOW layout macros to META (Nico Pache) [1954335] - kasan: rename print_shadow_for_address to print_memory_metadata (Nico Pache) [1954335] - kasan: rename addr_has_shadow to addr_has_metadata (Nico Pache) [1954335] - kasan, arm64: rename kasan_init_tags and mark as __init (Nico Pache) [1954335] - kasan, arm64: move initialization message (Nico Pache) [1954335] - kasan, arm64: only use kasan_depth for software modes (Nico Pache) [1954335] - kasan, arm64: only init shadow for software modes (Nico Pache) [1954335] - kasan: decode stack frame only with KASAN_STACK_ENABLE (Nico Pache) [1954335] - kasan: hide invalid free check implementation (Nico Pache) [1954335] - kasan: don't duplicate config dependencies (Nico Pache) [1954335] - kasan: rename report and tags files (Nico Pache) [1954335] - kasan: define KASAN_MEMORY_PER_SHADOW_PAGE (Nico Pache) [1954335] - kasan: split out shadow.c from common.c (Nico Pache) [1954335] - kasan: only build init.c for software modes (Nico Pache) [1954335] - kasan: rename KASAN_SHADOW_* to KASAN_GRANULE_* (Nico Pache) [1954335] - kasan: rename (un)poison_shadow to (un)poison_range (Nico Pache) [1954335] - fork: support VMAP_STACK with KASAN_VMALLOC (Nico Pache) [1954335] - kasan: shadow declarations only for software modes (Nico Pache) [1954335] - kasan: group vmalloc code (Nico Pache) [1954335] - kasan: KASAN_VMALLOC depends on KASAN_GENERIC (Nico Pache) [1954335] - kasan: drop unnecessary GPL text from comment headers (Nico Pache) [1954335] - kasan: update documentation for generic kasan (Nico Pache) [1954335] - kasan: print workqueue stack (Nico Pache) [1954335] - kasan: fix object remaining in offline per-cpu quarantine (Nico Pache) [1954335] - kasan: adopt KUNIT tests to SW_TAGS mode (Nico Pache) [1954335] - docs: kasan.rst: add two missing blank lines (Nico Pache) [1954335] - mm: kasan: do not panic if both panic_on_warn and kasan_multishot set (Nico Pache) [1954335] - KASAN: Testing Documentation (Nico Pache) [1954335] - KASAN: port KASAN Tests to KUnit (Nico Pache) [1954335] - KUnit: KASAN Integration (Nico Pache) [1954335] - kasan/kunit: add KUnit Struct to Current Task (Nico Pache) [1954335] - kasan: remove mentions of unsupported Clang versions (Nico Pache) [1954335] - kbuild: move CFLAGS_{KASAN,UBSAN,KCSAN} exports to relevant Makefiles (Nico Pache) [1954335] - s390/kasan: make shadow memory noexec (Nico Pache) [1954335] - kasan: adjust kasan_stack_oob for tag-based mode (Nico Pache) [1954335] - kasan: allow enabling stack tagging for tag-based mode (Nico Pache) [1954335] - kasan: don't tag stacks allocated with pagealloc (Nico Pache) [1954335] - lib/test_kasan.c: fix KASAN unit tests for tag-based KASAN (Nico Pache) [1954335] - kasan: remove kasan_unpoison_stack_above_sp_to() (Nico Pache) [1954335] - kasan: add tests for call_rcu stack recording (Nico Pache) [1954335] - kprobes: Remove show_registers() function prototype (Nico Pache) [1954335] - kasan: stop tests being eliminated as dead code with FORTIFY_SOURCE (Nico Pache) [1954335] - kasan: move kasan_report() into report.c (Nico Pache) [1954335] - kasan: stackdepot: move filter_irq_stacks() to stackdepot.c (Nico Pache) [1954335] - lib/stackdepot.c: check depot_index before accessing the stack slab (Nico Pache) [1954335] - lib/stackdepot: Remove obsolete functions (Nico Pache) [1954335] - kasan: add test for invalid size in memmove (Nico Pache) [1954335] - mm/memory-failure.c: use page_shift() in add_to_kill() (Nico Pache) [1954335] - x86: get rid of small constant size cases in raw_copy_{to,from}_user() (Nico Pache) [1954335] - s390/kasan: add KASAN_VMALLOC support (Nico Pache) [1954335] - s390: move vmalloc option parsing to startup code (Nico Pache) [1954335] - kasan: add test for vmalloc (Nico Pache) [1954335] - ehea: replace with page_shift() in ehea_is_hugepage() (Nico Pache) [1954335] - mm: introduce page_shift() (Nico Pache) [1954335] - lib/test_kasan.c: add roundtrip tests (Nico Pache) [1954335] - lib/test_kasan: Add test for double-kzfree detection (Nico Pache) [1954335] - lib/test_kasan: add bitops tests (Nico Pache) [1954335] - asm-generic, x86: add bitops instrumentation for KASAN (Nico Pache) [1954335] - x86: use static_cpu_has in uaccess region to avoid instrumentation (Nico Pache) [1954335] - x86/asm: Use stricter assembly constraints in bitops (Nico Pache) [1954335] - x86/asm: Remove dead __GNUC__ conditionals (Nico Pache) [1954335] - s390/kasan: adapt disabled_wait usage to avoid build error (Nico Pache) [1954335] - s390: simplify disabled_wait (Nico Pache) [1954335] - lib/test_kasan.c: add tests for several string/memory API functions (Nico Pache) [1954335] - arm64: Fix typo in a comment in arch/arm64/mm/kasan_init.c (Nico Pache) [1954335] - kprobes: Remove jprobe stub API (Nico Pache) [1954335] - Documentation/kprobes: Add how to change the execution path (Nico Pache) [1954335] - kprobes/x86: Do not disable preempt on int3 path (Nico Pache) [1954335] - bpf/error-inject/kprobes: Clear current_kprobe and enable preempt in kprobe (Nico Pache) [1954335] - s390/kprobes: Don't call the ->break_handler() in s390 kprobes code (Nico Pache) [1954335] - powerpc/kprobes: Don't call the ->break_handler() in powerpc kprobes code (Nico Pache) [1954335] - arm64/kprobes: Don't call the ->break_handler() in arm64 kprobes code (Nico Pache) [1954335] - kprobes/x86: Don't call the ->break_handler() in x86 kprobes (Nico Pache) [1954335] - kprobes: Don't check the ->break_handler() in generic kprobes code (Nico Pache) [1954335] - kprobes/x86: Remove jprobe implementation (Nico Pache) [1954335] - s390/kprobes: Remove jprobe implementation (Nico Pache) [1954335] - powerpc/kprobes: Remove jprobe powerpc implementation (Nico Pache) [1954335] - arm64/kprobes: Remove jprobe implementation (Nico Pache) [1954335] - kprobes: Remove jprobe API implementation (Nico Pache) [1954335] - Documentation/kprobes: Remove jprobes related leftover (Nico Pache) [1954335] - redhat: config: explicitly set CONFIG_ARM64_VA_BITS_48 for ARM64 (Nico Pache) [1954335] - arm64: mm: use a 48-bit ID map when possible on 52-bit VA builds (Nico Pache) [1954335] - arm64: mm: limit linear region to 51 bits for KVM in nVHE mode (Nico Pache) [1954335] - Documentation/arm64: fix RST layout of memory.rst (Nico Pache) [1954335] - arm64: mm: Remove MAX_USER_VA_BITS definition (Nico Pache) [1954335] - arm64: Use simpler arithmetics for the linear map macros (Nico Pache) [1954335] - arm64: mm: use single quantity to represent the PA to VA translation (Nico Pache) [1954335] - kasan/arm64: fix CONFIG_KASAN_SW_TAGS && KASAN_INLINE (Nico Pache) [1954335] - arm64: Do not pass tagged addresses to __is_lm_address() (Nico Pache) [1954335] - arm64: Fix kernel address detection of __is_lm_address() (Nico Pache) [1954335] - arm64: mm: extend linear region for 52-bit VA configurations (Nico Pache) [1954335] - arm64: Fix kcore macros after 52-bit virtual addressing fallout (Nico Pache) [1954335] - arm64: fix fixmap copy for 16K pages and 48-bit VA (Nico Pache) [1954335] - arm64: memory: rename VA_START to PAGE_END (Nico Pache) [1954335] - arm64: memory: Simplify _VA_START and _PAGE_OFFSET definitions (Nico Pache) [1954335] - arm64: memory: fix flipped VA space fallout (Nico Pache) [1954335] - arm64: memory: Fix virt_addr_valid() using __is_lm_address() (Nico Pache) [1954335] - arm64: memory: Ensure address tag is masked in conversion macros (Nico Pache) [1954335] - arm64: mm: Simplify definition of virt_addr_valid() (Nico Pache) [1954335] - docs: arm64: Add layout and 52-bit info to memory document (Nico Pache) [1954335] - arm64: mm: Remove vabits_user (Nico Pache) [1954335] - arm64: mm: Introduce 52-bit Kernel VAs (Nico Pache) [1954335] - arm64: mm: Modify calculation of VMEMMAP_SIZE (Nico Pache) [1954335] - arm64: mm: Separate out vmemmap (Nico Pache) [1954335] - arm64: mm: Logic to make offset_ttbr1 conditional (Nico Pache) [1954335] - arm64: mm: Introduce vabits_actual (Nico Pache) [1954335] - arm64: Print physical address of page table base in show_pte() (Nico Pache) [1954335] - arm64: mm: Introduce VA_BITS_MIN (Nico Pache) [1954335] - arm64: dump: De-constify VA_START and KASAN_SHADOW_START (Nico Pache) [1954335] - arm64: kasan: Switch to using KASAN_SHADOW_OFFSET (Nico Pache) [1954335] - arm64: mm: Flip kernel VA space (Nico Pache) [1954335] - arm64: mm: Remove bit-masking optimisations for PAGE_OFFSET and VMEMMAP_START (Nico Pache) [1954335] - arm64: dump: Use consistent capitalisation for page-table dumps (Nico Pache) [1954335] - kernel/rwsem: Use proper directories for rwsem_init.c (Scott Wood) [2040087] - redhat: Cleanup use of mark_hardware_removed (Prarit Bhargava) [2019378] - redhat: Cleanup use of mark_hardware_unsupported (Prarit Bhargava) [2019378] - redhat: clean up mark_hardware_deprecated() (Prarit Bhargava) [2019378] - nvme: Mark NVMe over FC Target support unmaintained (Prarit Bhargava) [2019378] - hdlc_fr: Mark driver unmaintained (Prarit Bhargava) [2019378] - sfc: Mark siena driver deprecated (Prarit Bhargava) [2019378] - qla3xxx: Mark driver unmaintained (Prarit Bhargava) [2019378] - netxen: Mark nic driver unmaintained (Prarit Bhargava) [2019378] - ethoc: Mark driver unmaintained (Prarit Bhargava) [2019378] - dnet: Mark driver unmaintained (Prarit Bhargava) [2019378] - drivers/pci/pci-driver.c: Fix if/ifdef typo (Prarit Bhargava) [2019378] - kernel/rh_taint.c: Update to new messaging (Prarit Bhargava) [2019378] - drm/i915/dmc: Change max DMC FW size on ADL-P (Michel Dänzer) [1988103] - drm/i915: Add workaround numbers to GEN7_COMMON_SLICE_CHICKEN1 whitelisting (Michel Dänzer) [1988103] - drm/i915: Fix Memory BW formulae for ADL-P (Michel Dänzer) [1988103] - drm/i915: Restore memory mapping for DPT FBs across system suspend/resume (Michel Dänzer) [1988103] - drm/i915: Factor out i915_ggtt_suspend_vm/i915_ggtt_resume_vm() (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Remove restriction on CCS AUX plane strides (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Remove restriction on semiplanar UV plane offset (Michel Dänzer) [1988103] - drm/i915/fb: Rename i915_color_plane_view::stride to mapping_stride (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Fix remapping of linear CCS AUX surfaces (Michel Dänzer) [1988103] - drm/i915/fb: Factor out functions to remap contiguous FB obj pages (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Prevent the mapping of redundant trailing padding NULL pages (Michel Dänzer) [1988103] - drm/i915: Add functions to check for RC CCS CC and MC CCS modifiers (Michel Dänzer) [1988103] - drm/i915: Move is_ccs_modifier() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: Add a platform independent way to check for CCS AUX planes (Michel Dänzer) [1988103] - drm/i915: Handle CCS CC planes separately from CCS AUX planes (Michel Dänzer) [1988103] - drm/i915: Add a platform independent way to get the RC CCS CC plane (Michel Dänzer) [1988103] - drm/i915: Move intel_format_info_is_yuv_semiplanar() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: Unexport is_semiplanar_uv_plane() (Michel Dänzer) [1988103] - drm/i915: Simplify the modifier check for interlaced scanout support (Michel Dänzer) [1988103] - drm/i915: Add tiling attribute to the modifier descriptor (Michel Dänzer) [1988103] - drm/i915: Move intel_get_format_info() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: Add a table with a descriptor for all i915 modifiers (Michel Dänzer) [1988103] - drm/i915/adlp: Implement workaround 16013190616 (Michel Dänzer) [1988103] - drm/i915/adlp: Extend PSR2 support in transcoder B (Michel Dänzer) [1988103] - drm/i915/display: Wait PSR2 get out of deep sleep to update pipe (Michel Dänzer) [1988103] - drm/i915/display/adlp: Allow PSR2 to be enabled (Michel Dänzer) [1988103] - drm/i915/display/adlp: Optimize PSR2 power-savings in corner cases (Michel Dänzer) [1988103] - drm/i915/display: Fix glitches when moving cursor with PSR2 selective fetch enabled (Michel Dänzer) [1988103] - drm/i915/display: Handle frontbuffer rendering when PSR2 selective fetch is enabled (Michel Dänzer) [1988103] - drm/i915/display: Drop unnecessary frontbuffer flushes (Michel Dänzer) [1988103] - drm/i915/display/psr: Do full fetch when handling multi-planar formats (Michel Dänzer) [1988103] - drm/i915/display/psr: Handle plane and pipe restrictions at every page flip (Michel Dänzer) [1988103] - drm/i915/display: Only keep PSR enabled if there is active planes (Michel Dänzer) [1988103] - drm/i915/display: Match PSR2 selective fetch sequences with specification (Michel Dänzer) [1988103] - drm/i915/display/dmc: Set DC_STATE_DEBUG_MASK_CORES after firmware load (Michel Dänzer) [1988103] - drm/i915: Nuke intel_prepare_shared_dpll() (Michel Dänzer) [1988103] - drm/i915: Fold ibx_pch_dpll_prepare() into ibx_pch_dpll_enable() (Michel Dänzer) [1988103] - drm/i915: Fold i9xx_set_pll_dividers() into i9xx_enable_pll() (Michel Dänzer) [1988103] - drm/i915: Reuse ilk_needs_fb_cb_tune() for the reduced clock as well (Michel Dänzer) [1988103] - drm/i915: Call {vlv,chv}_prepare_pll() from {vlv,chv}_enable_pll() (Michel Dänzer) [1988103] - drm/i915: Program DPLL P1 dividers consistently (Michel Dänzer) [1988103] - drm/i915: Remove the 'reg' local variable (Michel Dänzer) [1988103] - drm/i915: Clean up variable names in old dpll functions (Michel Dänzer) [1988103] - drm/i915: Clean dpll calling convention (Michel Dänzer) [1988103] - drm/i915: Constify struct dpll all over (Michel Dänzer) [1988103] - drm/i915: Extract ilk_update_pll_dividers() (Michel Dänzer) [1988103] - drm/i915: Clean up gen2 DPLL readout (Michel Dänzer) [1988103] - drm/i915: Set output_types to EDP for vlv/chv DPLL forcing (Michel Dänzer) [1988103] - drm/i915: Silence __iomem sparse warn (Michel Dänzer) [1988103] - drm/i915: split fdi link training from display vtable. (Michel Dänzer) [1988103] - drm/i915: split irq hotplug function from display vtable (Michel Dänzer) [1988103] - drm/i915: split cdclk functions from display vtable. (Michel Dänzer) [1988103] - drm/i915: split audio functions from display vtable (Michel Dänzer) [1988103] - drm/i915: split color functions from display vtable (Michel Dänzer) [1988103] - drm/i915: split watermark vfuncs from display vtable. (Michel Dänzer) [1988103] - drm/i915: split clock gating init from display vtable (Michel Dänzer) [1988103] - drm/i915/display: add intel_fdi_link_train wrapper. (Michel Dänzer) [1988103] - drm/i915: add wrappers around cdclk vtable funcs. (Michel Dänzer) [1988103] - drm/i915/wm: provide wrappers around watermark vfuncs calls (v3) (Michel Dänzer) [1988103] - drm/i915: make update_wm take a dev_priv. (Michel Dänzer) [1988103] - drm/i915/pm: drop get_fifo_size vfunc. (Michel Dänzer) [1988103] - drm/i915: Clean up pre-skl wm calling convention (Michel Dänzer) [1988103] - drm/i915/dmc: Update to DMC v2.12 (Michel Dänzer) [1988103] - drm/i915: Implement PSF GV point support (Michel Dänzer) [1988103] - drm/i915: Extend QGV point restrict mask to 0x3 (Michel Dänzer) [1988103] - drm/i915/display: Disable audio, DRRS and PSR before planes (Michel Dänzer) [1988103] - drm/i915: Make display workaround upper bounds exclusive (Michel Dänzer) [1988103] - drm/i915: Program DFR enable/disable as a GT workaround (Michel Dänzer) [1988103] - drm/i915/step: s/_revid_tbl/_revids (Michel Dänzer) [1988103] - drm/i915/display: Settle on "adl-x" in WA comments (Michel Dänzer) [1988103] - drm/i915: Settle on "adl-x" in WA comments (Michel Dänzer) [1988103] - drm/i915/display/adlp: Disable underrun recovery (Michel Dänzer) [1988103] - drm/i915/tc: Fix system hang on ADL-P during TypeC PHY disconnect (Michel Dänzer) [1988103] - drm/i915/tc: Drop extra TC cold blocking from intel_tc_port_connected() (Michel Dänzer) [1988103] - drm/i915/tc: Fix TypeC PHY connect/disconnect logic on ADL-P (Michel Dänzer) [1988103] - drm/i915/icl/tc: Remove the ICL special casing during TC-cold blocking (Michel Dänzer) [1988103] - drm/i915/tc: Avoid using legacy AUX PW in TBT mode (Michel Dänzer) [1988103] - drm/i915/tc: Refactor TC-cold block/unblock helpers (Michel Dänzer) [1988103] - drm/i915/tc: Add a mode for the TypeC PHY's disconnected state (Michel Dänzer) [1988103] - drm/i915/tc: Don't keep legacy TypeC ports in connected state w/o a sink (Michel Dänzer) [1988103] - drm/i915/tc: Add/use helpers to retrieve TypeC port properties (Michel Dänzer) [1988103] - drm/i915/tc: Check for DP-alt, legacy sinks before taking PHY ownership (Michel Dänzer) [1988103] - drm/i915/tc: Remove waiting for PHY complete during releasing ownership (Michel Dänzer) [1988103] - drm/i915/adlp/tc: Fix PHY connected check for Thunderbolt mode (Michel Dänzer) [1988103] - drm/i915: Force a TypeC PHY disconnect during suspend/shutdown (Michel Dänzer) [1988103] - drm/i915/adlp: Add support for remapping CCS FBs (Michel Dänzer) [1988103] - drm/i915: Follow a new->old platform check order in intel_fb_stride_alignment (Michel Dänzer) [1988103] - drm/i915/adlp: Assert that VMAs in DPT start at 0 (Michel Dänzer) [1988103] - drm/i915/adlp: Require always a power-of-two sized CCS surface stride (Michel Dänzer) [1988103] - drm/i915: Use tile block based dimensions for CCS origin x, y check (Michel Dänzer) [1988103] - drm/i915/fb: move user framebuffer stuff to intel_fb.c (Michel Dänzer) [1988103] - drm/i915/display: split out dpt out of intel_display.c (Michel Dänzer) [1988103] - drm/i915/fb: move intel_surf_alignment() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: add HAS_ASYNC_FLIPS feature macro (Michel Dänzer) [1988103] - drm/i915/fb: move intel_fb_align_height() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915/fb: move intel_tile_width_bytes() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915/display/adlp: Add new PSR2 workarounds (Michel Dänzer) [1988103] - drm/i915: Program chicken bit during DP MST sequence on TGL+ (Michel Dänzer) [1988103] - drm/i915/display: Workaround cursor left overs with PSR2 selective fetch enabled (Michel Dänzer) [1988103] - drm/i915/display/adlp: Fix PSR2_MAN_TRK_CTL_SU_REGION_END_ADDR calculation (Michel Dänzer) [1988103] - drm/i915: Update memory bandwidth parameters (Michel Dänzer) [1988103] - drm/i915/dp: fix for ADL_P/S dp/edp max source rates (Michel Dänzer) [1988103] - drm/i915/dp: fix DG1 and RKL max source rates (Michel Dänzer) [1988103] - drm/i915/dp: fix EHL/JSL max source rates calculation (Michel Dänzer) [1988103] - drm/i915/dp: fix TGL and ICL max source rates (Michel Dänzer) [1988103] - drm/i915/dp: Fix eDP max rate for display 11+ (Michel Dänzer) [1988103] - drm/i915/dp: fix DG2 max source rate check (Michel Dänzer) [1988103] - drm/i915/dg2: add DG2 UHBR source rates (Michel Dänzer) [1988103] - drm/i915/display: remove explicit CNL handling from intel_dp.c (Michel Dänzer) [1988103] - drm/i915/dsi/xelpd: Enable mipi dsi support. (Michel Dänzer) [1988103] - drm/i915/dsi/xelpd: Add WA to program LP to HS wakeup guardband (Michel Dänzer) [1988103] - drm/i915/display: Update small joiner ram size (Michel Dänzer) [1988103] - drm/i915/adl_p: Also disable underrun recovery with MSO (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Correctly program MBUS DBOX A credits (Michel Dänzer) [1988103] - drm/i915: Apply CMTG clock disabling WA while DPLL0 is enabled (Michel Dänzer) [1988103] - drm/i915/adl_p: Add ddi buf translation tables for combo PHY (Michel Dänzer) [1988103] - drm/i915/adl_s: Update ddi buf translation tables (Michel Dänzer) [1988103] - drm/i915: Add the missing adls vswing tables (Michel Dänzer) [1988103] - drm/i915/adlp: Add workaround to disable CMTG clock gating (Michel Dänzer) [1988103] - drm/i915/adl_p: Allow underrun recovery when possible (Michel Dänzer) [1988103] - drm/i915: Add dummy IS_DG2 definition (Michel Dänzer) [1988103] - drm/i915: Extend Wa_1406941453 to adl-p (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement PSR changes (Michel Dänzer) [1988103] - drm/i915/debugfs: DISPLAY_VER 13 lpsp capability (Michel Dänzer) [1988103] - drm/i915/adlp: Add ADL-P GuC/HuC firmware files (Michel Dänzer) [1988103] - drm/i915/huc: Update TGL and friends to HuC 7.9.3 (Michel Dänzer) [1988103] - drm/i915/guc: Update firmware to v62.0.0 (Michel Dänzer) [1988103] - drm/i915/guc: Introduce unified HXG messages (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement Wa_16011303918 (Michel Dänzer) [1988103] - drm/i915/xelpd: Handle PSR2 SDP indication in the prior scanline (Michel Dänzer) [1988103] - drm/i915/display/psr: Handle SU Y granularity (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement Wa_16011168373 (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement Wa_22012278275 (Michel Dänzer) [1988103] - drm/i915: Nuke buf_trans hdmi functions (Michel Dänzer) [1988103] - drm/i915: Clean up jsl/ehl buf trans functions (Michel Dänzer) [1988103] - drm/i915: Fix ehl edp hbr2 vswing table (Michel Dänzer) [1988103] - drm/i915: Deduplicate icl DP HBR2 vs. eDP HBR3 table (Michel Dänzer) [1988103] - drm/i915: Fix dg1 buf trans tables (Michel Dänzer) [1988103] - drm/i915: Introduce rkl_get_combo_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Clean up hsw/bdw/skl/kbl buf trans funcs (Michel Dänzer) [1988103] - drm/i915: Introduce encoder->get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Store the HDMI default entry in the bug trans struct (Michel Dänzer) [1988103] - drm/i915; Return the whole buf_trans struct from get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Introduce intel_get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Wrap the buf trans tables into a struct (Michel Dänzer) [1988103] - drm/i915: Rename dkl phy buf trans tables (Michel Dänzer) [1988103] - drm/i915: Wrap the platform specific buf trans structs into a union (Michel Dänzer) [1988103] - drm/i915: Introduce hsw_get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: s/intel/hsw/ for hsw/bdw/skl buf trans (Michel Dänzer) [1988103] - drm/i915/adl_p: Load DMC (Michel Dänzer) [1988103] - drm/i915/adl_p: Pipe B DMC Support (Michel Dänzer) [1988103] - drm/i915/xelpd: Pipe A DMC plugging (Michel Dänzer) [1988103] - drm/i915/dmc: Introduce DMC_FW_MAIN (Michel Dänzer) [1988103] - drm/i915/adl_p: Add initial ADL_P Workarounds (Michel Dänzer) [1988103] - drm/i915/xelpd: break feature inheritance (Michel Dänzer) [1988103] - backlight: backlight: Make of_find_backlight static (Jérôme Glisse) [1988103] - backlight: backlight: Drop backlight_put() (Jérôme Glisse) [1988103] - backlight: backlight: Introduce backlight_get_brightness() (Jérôme Glisse) [1988103] - backlight: backlight: Drop extern from prototypes (Jérôme Glisse) [1988103] - backlight: generic_bl: Remove this driver as it is unused (Michel Dänzer) [1988103] - backlight: backlight: Document enums in backlight.h (Jérôme Glisse) [1988103] - backlight: backlight: Document inline functions in backlight.h (Jérôme Glisse) [1988103] - backlight: backlight: Improve backlight_device documentation (Jérôme Glisse) [1988103] - backlight: backlight: Improve backlight_properties documentation (Jérôme Glisse) [1988103] - backlight: backlight: Improve backlight_ops documentation (Jérôme Glisse) [1988103] - backlight: backlight: Add backlight_is_blank() (Jérôme Glisse) [1988103] - backlight: Add backlight_device_get_by_name() (Jérôme Glisse) [1988103] - backlight: Expose brightness curve type through sysfs (Michel Dänzer) [1988103] - backlight: Remove obsolete comment for ->state (Jérôme Glisse) [1988103] - x86/gpu: add JasperLake to gen11 early quirks (Michel Dänzer) [1988103] - drm/i915/adl_p: ADL_P device info enabling (Michel Dänzer) [1988103] - redhat/configs: Disable CONFIG_DRM_VMWGFX on aarch64 (Michel Dänzer) [1988103] - drm/amd/display: Reduce stack size for dml31 UseMinimumDCFCLK (Michel Dänzer) [1988103] - drm/amd/display: Reduce stack size for dml31_ModeSupportAndSystemConfigurationFull (Michel Dänzer) [1988103] - drm/amdgpu: Initialize max/min_dpm_level (Michel Dänzer) [1988103] - redhat/configs: Disable CONFIG_HSA_AMD_SVM for now (Michel Dänzer) [1988103] - i915: Convert to older tasklet API (Michel Dänzer) [1988103] - drm/ttm: Include asm/pgtable.h (Michel Dänzer) [1988103] - Merge DRM changes from upstream v5.13..v5.14.21 (Michel Dänzer) [1988103] - PCI: Add support for dev_groups to struct pci_driver (Jérôme Glisse) [1988103] - drm: Initialize some local variables to avoid compiler warnings (Jérôme Glisse) [1988103] - drm: Use swiotlb_nr_tbl instead of is_swiotlb_active (Jérôme Glisse) [1988103] - i915: Use mdev_type_kobj_to_group_id instead of mtype_get_type_group_id (Jérôme Glisse) [1988103] - i915: Convert to older tasklet API (Jérôme Glisse) [1988103] - drm: Drop const from list_sort compare function prototypes (Jérôme Glisse) [1988103] - Merge DRM changes from upstream v5.12.14..v5.13 (Michel Dänzer) [1988103] - vfio/mdev: add helper to get index of mdev_type sysfs file (Jérôme Glisse) [1988103] - drm/syncobj: make lockdep complain on WAIT_FOR_SUBMIT v3 (Jérôme Glisse) [1988103] - Revert "drm/i915: Implement Wa_1508744258" (Michel Dänzer) [1988103] - Revert "drm/i915: Add the missing adls vswing tables" (Michel Dänzer) [1988103] - x86/gpu: Add Alderlake-S stolen memory support (Michel Dänzer) [1988103] - x86/gpu: add RKL stolen memory support (Michel Dänzer) [1988103] - x86/gpu: add TGL stolen memory support (Michel Dänzer) [1988103] - x86/gpu: add ElkhartLake to gen11 early quirks (Michel Dänzer) [1988103] - x86/gpu: reserve ICL's graphics stolen memory (Michel Dänzer) [1988103] - selftest/x86/signal: Include test cases for validating sigaltstack (Prarit Bhargava) [1837321] - x86/signal: Detect and prevent an alternate signal stack overflow (Prarit Bhargava) [1837321] - selftest/sigaltstack: Use the AT_MINSIGSTKSZ aux vector if available (Prarit Bhargava) [1837321] - x86/fpu: Additional cleanups (Prarit Bhargava) [1837321] - binfmt_elf: Respect error return from `regset->active' (Prarit Bhargava) [1837321] - x86/fpu: Optimize out sigframe xfeatures when in init state (Prarit Bhargava) [1837321] - Documentation/x86: Add documentation for using dynamic XSTATE features (Prarit Bhargava) [1837321] - selftests/x86/amx: Add context switch test (Prarit Bhargava) [1837321] - selftests/x86/amx: Add test cases for AMX state management (Prarit Bhargava) [1837321] - x86/fpu: Include vmalloc.h for vzalloc() (Prarit Bhargava) [1837321] - x86/fpu/amx: Enable the AMX feature in 64-bit mode (Prarit Bhargava) [1837321] - x86/fpu: Add XFD handling for dynamic states (Prarit Bhargava) [1837321] - x86/fpu: Calculate the default sizes independently (Prarit Bhargava) [1837321] - x86/fpu/amx: Define AMX state components and have it used for boot-time checks (Prarit Bhargava) [1837321] - x86/fpu/xstate: Prepare XSAVE feature table for gaps in state component numbers (Prarit Bhargava) [1837321] - x86/fpu/xstate: Add fpstate_realloc()/free() (Prarit Bhargava) [1837321] - x86/fpu/xstate: Add XFD #NM handler (Prarit Bhargava) [1837321] - x86/fpu: Update XFD state where required (Prarit Bhargava) [1837321] - x86/fpu: Add sanity checks for XFD (Prarit Bhargava) [1837321] - x86/fpu: Add XFD state to fpstate (Prarit Bhargava) [1837321] - x86/msr-index: Add MSRs for XFD (Prarit Bhargava) [1837321] - x86/cpufeatures: Add eXtended Feature Disabling (XFD) feature bit (Prarit Bhargava) [1837321] - x86/fpu: Reset permission and fpstate on exec() (Prarit Bhargava) [1837321] - x86/fpu: Prepare fpu_clone() for dynamically enabled features (Prarit Bhargava) [1837321] - x86/fpu/signal: Prepare for variable sigframe length (Prarit Bhargava) [1837321] - x86/signal: Use fpu::__state_user_size for sigalt stack validation (Prarit Bhargava) [1837321] - x86/fpu: Add basic helpers for dynamically enabled features (Prarit Bhargava) [1837321] - x86/arch_prctl: Add controls for dynamic XSTATE components (Prarit Bhargava) [1837321] - x86/fpu: Add fpu_state_config::legacy_features (Prarit Bhargava) [1837321] - x86/fpu: Add members to struct fpu to cache permission information (Prarit Bhargava) [1837321] - x86/fpu/xstate: Provide xstate_calculate_size() (Prarit Bhargava) [1837321] - x86/signal: Implement sigaltstack size validation (Prarit Bhargava) [1837321] - signal: Add an optional check for altstack size (Prarit Bhargava) [1837321] - x86/fpu: Remove old KVM FPU interface (Prarit Bhargava) [1837321] - x86/kvm: Convert FPU handling to a single swap buffer (Prarit Bhargava) [1837321] - x86/fpu: Provide infrastructure for KVM FPU cleanup (Prarit Bhargava) [1837321] - x86/fpu: Prepare for sanitizing KVM FPU code (Prarit Bhargava) [1837321] - x86/fpu/xstate: Move remaining xfeature helpers to core (Prarit Bhargava) [1837321] - x86/fpu: Rework restore_regs_from_fpstate() (Prarit Bhargava) [1837321] - x86/fpu: Mop up xfeatures_mask_uabi() (Prarit Bhargava) [1837321] - x86/fpu: Move xstate feature masks to fpu_*_cfg (Prarit Bhargava) [1837321] - x86/fpu: Move xstate size to fpu_*_cfg (Prarit Bhargava) [1837321] - x86/fpu/xstate: Cleanup size calculations (Prarit Bhargava) [1837321] - x86/fpu: Cleanup fpu__init_system_xstate_size_legacy() (Prarit Bhargava) [1837321] - x86/fpu: Provide struct fpu_config (Prarit Bhargava) [1837321] - x86/fpu/signal: Use fpstate for size and features (Prarit Bhargava) [1837321] - x86/fpu/xstate: Use fpstate for copy_uabi_to_xstate() (Prarit Bhargava) [1837321] - x86/fpu: Use fpstate in __copy_xstate_to_uabi_buf() (Prarit Bhargava) [1837321] - x86/fpu: Use fpstate in fpu_copy_kvm_uabi_to_fpstate() (Prarit Bhargava) [1837321] - x86/fpu/xstate: Use fpstate for xsave_to_user_sigframe() (Prarit Bhargava) [1837321] - x86/fpu/xstate: Use fpstate for os_xsave() (Prarit Bhargava) [1837321] - x86/fpu: Use fpstate::size (Prarit Bhargava) [1837321] - x86/fpu: Add size and mask information to fpstate (Prarit Bhargava) [1837321] - x86/process: Move arch_thread_struct_whitelist() out of line (Prarit Bhargava) [1837321] - x86/fpu: Do not leak fpstate pointer on fork (Prarit Bhargava) [1837321] - x86/fpu: Remove fpu::state (Prarit Bhargava) [1837321] - x86/math-emu: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu/core: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu/signal: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu/regset: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu: Convert tracing to fpstate (Prarit Bhargava) [1837321] - x86/KVM: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu: Replace KVMs xstate component clearing (Prarit Bhargava) [1837321] - x86/fpu: Convert restore_fpregs_from_fpstate() to struct fpstate (Prarit Bhargava) [1837321] - x86/fpu: Convert fpstate_init() to struct fpstate (Prarit Bhargava) [1837321] - fpu/types.h: KABI fix Part I (Prarit Bhargava) [1837321] - x86/fpu: Provide struct fpstate (Prarit Bhargava) [1837321] - x86/fpu: Replace KVMs home brewed FPU copy to user (Prarit Bhargava) [1837321] - x86/fpu: Provide a proper function for ex_handler_fprestore() (Prarit Bhargava) [1837321] - x86/fpu: Replace the includes of fpu/internal.h (Prarit Bhargava) [1837321] - x86/fpu: Mop up the internal.h leftovers (Prarit Bhargava) [1837321] - x86/sev: Include fpu/xcr.h (Prarit Bhargava) [1837321] - x86/fpu: Remove internal.h dependency from fpu/signal.h (Prarit Bhargava) [1837321] - x86/fpu: Move fpstate functions to api.h (Prarit Bhargava) [1837321] - x86/fpu: Move mxcsr related code to core (Prarit Bhargava) [1837321] - x86/fpu: Move fpregs_restore_userregs() to core (Prarit Bhargava) [1837321] - x86/fpu: Make WARN_ON_FPU() private (Prarit Bhargava) [1837321] - x86/fpu: Move legacy ASM wrappers to core (Prarit Bhargava) [1837321] - x86/fpu: Move os_xsave() and os_xrstor() to core (Prarit Bhargava) [1837321] - x86/fpu: Make os_xrstor_booting() private (Prarit Bhargava) [1837321] - x86/fpu: Clean up CPU feature tests (Prarit Bhargava) [1837321] - x86/fpu: Move context switch and exit to user inlines into sched.h (Prarit Bhargava) [1837321] - x86/fpu: Mark fpu__init_prepare_fx_sw_frame() as __init (Prarit Bhargava) [1837321] - x86/fpu: Rework copy_xstate_to_uabi_buf() (Prarit Bhargava) [1837321] - x86/fpu: Replace KVMs home brewed FPU copy from user (Prarit Bhargava) [1837321] - x86/fpu: Move KVMs FPU swapping to FPU core (Prarit Bhargava) [1837321] - x86/fpu/xstate: Mark all init only functions __init (Prarit Bhargava) [1837321] - x86/fpu/xstate: Provide and use for_each_xfeature() (Prarit Bhargava) [1837321] - x86/fpu: Cleanup xstate xcomp_bv initialization (Prarit Bhargava) [1837321] - x86/fpu: Do not inherit FPU context for kernel and IO worker threads (Prarit Bhargava) [1837321] - x86/process: Clone FPU in copy_thread() (Prarit Bhargava) [1837321] - x86/fpu: Remove pointless memset in fpu_clone() (Prarit Bhargava) [1837321] - x86/fpu: Cleanup the on_boot_cpu clutter (Prarit Bhargava) [1837321] - x86/fpu: Restrict xsaves()/xrstors() to independent states (Prarit Bhargava) [1837321] - x86/pkru: Remove useless include (Prarit Bhargava) [1837321] - x86/fpu: Update stale comments (Prarit Bhargava) [1837321] - x86/fpu: Remove pointless argument from switch_fpu_finish() (Prarit Bhargava) [1837321] - x86/fpu: Mask out the invalid MXCSR bits properly (Prarit Bhargava) [1837321] - x86/fpu: Restore the masking out of reserved MXCSR bits (Prarit Bhargava) [1837321] - x86/fpu/signal: Fix missed conversion to correct boolean retval in save_xstate_epilog() (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return code of restore_fpregs_from_user() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return code of check_xstate_in_sigframe() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of __fpu_restore_sig() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of fpu__restore_sig() to boolean (Prarit Bhargava) [1837321] - x86/signal: Change return type of restore_sigcontext() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of copy_fpregs_to_sigframe() helpers to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of copy_fpstate_to_sigframe() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Move xstate clearing out of copy_fpregs_to_sigframe() (Prarit Bhargava) [1837321] - x86/fpu/signal: Move header zeroing out of xsave_to_user_sigframe() (Prarit Bhargava) [1837321] - x86/fpu/signal: Clarify exception handling in restore_fpregs_from_user() (Prarit Bhargava) [1837321] - x86/elf: Support a new ELF aux vector AT_MINSIGSTKSZ (Prarit Bhargava) [1837321] - uapi/auxvec: Define the aux vector AT_MINSIGSTKSZ (Prarit Bhargava) [1837321] - x86: get rid of get_user_ex() in restore_sigcontext() (Prarit Bhargava) [1837321] - x86: get rid of get_user_ex() in ia32_restore_sigcontext() (Prarit Bhargava) [1837321] - x86: Remove force_iret() (Prarit Bhargava) [1837321] - x86/uaccess, signal: Fix AC=1 bloat (Prarit Bhargava) [1837321] - x86/ia32: Fix ia32_restore_sigcontext() AC leak (Prarit Bhargava) [1837321] - x86/tsc: Add tsc_early_khz command line parameter (Prarit Bhargava) [1957375] - x86/debug: Support negative polarity DR6 bits (Prarit Bhargava) [2017958]- KVM: SVM: Do not terminate SEV-ES guests on GHCB validation failure (Vitaly Kuznetsov) [2032931] - KVM: SEV: Fall back to vmalloc for SEV-ES scratch area if necessary (Vitaly Kuznetsov) [2032931] - KVM: SEV: Return appropriate error codes if SEV-ES scratch setup fails (Vitaly Kuznetsov) [2032931] - KVM: SEV: Refactor out sev_es_state struct (Vitaly Kuznetsov) [2032931] - s390: mm: Fix secure storage access exception handling (Thomas Huth) [1984910] - KVM: PPC: Book3S HV: Make idle_kvm_start_guest() return 0 if it went to guest (Jon Maloy) [2018960] {CVE-2021-43056} - KVM: PPC: Book3S HV: Fix stack handling in idle_kvm_start_guest() (Jon Maloy) [2018960] {CVE-2021-43056} - KVM: arm64: selftests: arch_timer: Support vCPU migration (Gavin Shan) [2024808] - KVM: arm64: selftests: Add arch_timer test (Gavin Shan) [2024808] - KVM: arm64: selftests: Add host support for vGIC (Gavin Shan) [2024808] - KVM: arm64: selftests: Add basic GICv3 support (Gavin Shan) [2024808] - KVM: arm64: selftests: Add light-weight spinlock support (Gavin Shan) [2024808] - KVM: arm64: selftests: Add guest support to get the vcpuid (Gavin Shan) [2024808] - KVM: arm64: selftests: Maintain consistency for vcpuid type (Gavin Shan) [2024808] - KVM: arm64: selftests: Add support to disable and enable local IRQs (Gavin Shan) [2024808] - KVM: arm64: selftests: Add basic support to generate delays (Gavin Shan) [2024808] - KVM: arm64: selftests: Add basic support for arch_timers (Gavin Shan) [2024808] - KVM: arm64: selftests: Add support for cpu_relax (Gavin Shan) [2024808] - KVM: arm64: selftests: Introduce ARM64_SYS_KVM_REG (Gavin Shan) [2024808] - tools: arm64: Import sysreg.h (Gavin Shan) [2024808] - KVM: arm64: selftests: Add MMIO readl/writel support (Gavin Shan) [2024808] - selftests: KVM: Introduce psci_cpu_on_test (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: actually enable pmu regs in pmu sublist (Gavin Shan) [2024808] - KVM: arm64: Update MAINTAINERS to include selftests (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Split base and pmu registers (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Remove get-reg-list-sve (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Provide config selection option (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Prepare to run multiple configs at once (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Introduce vcpu configs (Gavin Shan) [2024808] - sctp: make the raise timer more simple and accurate (Xin Long) [2020474] - Enable flowtable ipv4/ipv6 support (Phil Sutter) [1850324] - ip6_vti: initialize __ip6_tnl_parm struct in vti6_siocdevprivate (William Zhao) [1941928] - svcrdma: Fix a crash in svcrdma_counter_handler (Benjamin Coddington) [2037213] - fbcon: Fix global-out-of-bounds read in fbcon_get_font() (Lyude Paul) [1904374] - bnxt_en: Clean up completion ring page arrays completely (Ken Cox) [1987074] - bnxt_en: Fix error recovery regression (Ken Cox) [1987074] - bnxt_en: Fix possible unintended driver initiated error recovery (Ken Cox) [1987074] - bnxt_en: Fix UDP tunnel logic (Ken Cox) [1987074] - bnxt_en: Fix asic.rev in devlink dev info command (Ken Cox) [1987074] - bnxt_en: fix read of stored FW_PSID version on P5 devices (Ken Cox) [1987074] - bnxt_en: fix stored FW_PSID version masks (Ken Cox) [1987074] - bnxt_en: fix kernel doc warnings in bnxt_hwrm.c (Ken Cox) [1987074] - bnxt_en: Fix 64-bit doorbell operation on 32-bit kernels (Ken Cox) [1987074] - bnxt_en: support multiple HWRM commands in flight (Ken Cox) [1987074] - bnxt_en: remove legacy HWRM interface (Ken Cox) [1987074] - bnxt_en: update all firmware calls to use the new APIs (Ken Cox) [1987074] - bnxt_en: use link_lock instead of hwrm_cmd_lock to protect link_info (Ken Cox) [1987074] - bnxt_en: add support for HWRM request slices (Ken Cox) [1987074] - bnxt_en: add HWRM request assignment API (Ken Cox) [1987074] - bnxt_en: discard out of sequence HWRM responses (Ken Cox) [1987074] - bnxt_en: introduce new firmware message API based on DMA pools (Ken Cox) [1987074] - bnxt_en: move HWRM API implementation into separate file (Ken Cox) [1987074] - bnxt_en: Refactor the HWRM_VER_GET firmware calls (Ken Cox) [1987074] - bnxt_en: remove DMA mapping for KONG response (Ken Cox) [1987074] - bnxt: count discards due to memory allocation errors (Ken Cox) [1987074] - bnxt: count packets discarded because of netpoll (Ken Cox) [1987074] - net: broadcom: switch from 'pci_' to 'dma_' API (Ken Cox) [1987074] - bnxt_en: Add missing DMA memory barriers (Ken Cox) [1987074] - bnxt_en: Disable aRFS if running on 212 firmware (Ken Cox) [1987074] - bnxt: count Tx drops (Ken Cox) [1987074] - bnxt: make sure xmit_more + errors does not miss doorbells (Ken Cox) [1987074] - bnxt: disable napi before canceling DIM (Ken Cox) [1987074] - bnxt: don't lock the tx queue from napi poll (Ken Cox) [1987074] - bnxt_en: Use register window 6 instead of 5 to read the PHC (Ken Cox) [1987074] - bnxt_en: Update firmware call to retrieve TX PTP timestamp (Ken Cox) [1987074] - bnxt_en: Update firmware interface to 1.10.2.52 (Ken Cox) [1987074] - bnxt_en: Increase maximum RX ring size if jumbo ring is not used (Ken Cox) [1987074] - bnxt_en: Don't use static arrays for completion ring pages (Ken Cox) [1987074] - bnxt_en: Add missing periodic PHC overflow check (Ken Cox) [1987074] - bnxt_en: Log if an invalid signal detected on TSIO pin (Ken Cox) [1987074] - bnxt_en: Event handler for PPS events (Ken Cox) [1987074 1990156] - bnxt_en: 1PPS functions to configure TSIO pins (Ken Cox) [1987074 1990156] - bnxt_en: 1PPS support for 5750X family chips (Ken Cox) [1987074 1990156] - bnxt_en: Do not read the PTP PHC during chip reset (Ken Cox) [1987074 1990156] - bnxt_en: Move bnxt_ptp_init() from bnxt_open() back to bnxt_init_one() (Ken Cox) [1987074 1990156] - bnxt_en: Fix PTP capability discovery (Ken Cox) [1987074] - bnxt_en: Move bnxt_ptp_init() to bnxt_open() (Ken Cox) [1987074] - bnxt: Remove rcu_read_lock() around XDP program invocation (Ken Cox) [1987074] - bnxt_en: Enable hardware PTP support (Ken Cox) [1987074] - bnxt_en: Transmit and retrieve packet timestamps (Ken Cox) [1987074] - bnxt_en: Get the RX packet timestamp (Ken Cox) [1987074] - bnxt_en: Get the full 48-bit hardware timestamp periodically (Ken Cox) [1987074] - bnxt_en: Add PTP clock APIs, ioctls, and ethtool methods (Ken Cox) [1987074] - bnxt_en: Get PTP hardware capability from firmware (Ken Cox) [1987074] - bnxt_en: Update firmware interface to 1.10.2.47 (Ken Cox) [1987074] - bnxt_en: Fix fall-through warnings for Clang (Ken Cox) [1987074] - bnxt_en: Fix and improve .ndo_features_check(). (Ken Cox) [1987074] - bnxt_en: Implement .ndo_features_check(). (Ken Cox) [1987074] - bnxt_en: Support IFF_SUPP_NOFCS feature to transmit without ethernet FCS. (Ken Cox) [1987074] - bnxt_en: Call bnxt_approve_mac() after the PF gives up control of the VF MAC. (Ken Cox) [1987074] - bnxt_en: Move bnxt_approve_mac(). (Ken Cox) [1987074] - bnxt_en: allow VF config ops when PF is closed (Ken Cox) [1987074] - bnxt_en: Add support for fw managed link down feature. (Ken Cox) [1987074] - bnxt_en: Add a new phy_flags field to the main driver structure. (Ken Cox) [1987074] - bnxt_en: report signal mode in link up messages (Ken Cox) [1987074] - bnxt: add more ethtool standard stats (Ken Cox) [1987074] - bnxt: implement ethtool standard stats (Ken Cox) [1987074] - bnxt: implement ethtool::get_fec_stats (Ken Cox) [1987074] - bnxt_en: Free and allocate VF-Reps during error recovery. (Ken Cox) [1987074] - bnxt_en: Refactor __bnxt_vf_reps_destroy(). (Ken Cox) [1987074] - bnxt_en: Refactor bnxt_vf_reps_create(). (Ken Cox) [1987074] - bnxt_en: Invalidate health register mapping at the end of probe. (Ken Cox) [1987074] - bnxt_en: Treat health register value 0 as valid in bnxt_try_reover_fw(). (Ken Cox) [1987074] - bnxt_en: Enhance retry of the first message to the firmware. (Ken Cox) [1987074] - bnxt_en: Set BNXT_STATE_FW_RESET_DET flag earlier for the RDMA driver. (Ken Cox) [1987074] - bnxt_en: check return value of bnxt_hwrm_func_resc_qcaps (Ken Cox) [1987074] - bnxt_en: don't fake firmware response success when PCI is disabled (Ken Cox) [1987074] - bnxt_en: Improve wait for firmware commands completion (Ken Cox) [1987074] - bnxt_en: Improve the status_reliable flag in bp->fw_health. (Ken Cox) [1987074] - Bluetooth: fix use-after-free error in lock_sock_nested() (Gopal Tiwari) [2005689] - rpmspec: add release string to kernel doc directory name (Jan Stancek) [1824836] - cpufreq: intel_pstate: Fix cpu->pstate.turbo_freq initialization (Mark Langsdorf) [2031830] - ACPI: CPPC: Add NULL pointer check to cppc_get_perf() (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: Rework HWP calibration (Mark Langsdorf) [2031830] - ACPI: CPPC: Introduce cppc_get_nominal_perf() (Mark Langsdorf) [2031830] - cpufreq: Replace deprecated CPU-hotplug functions (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: Fix build with CONFIG_ACPI unset (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: CPU-specific scaling factor (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: Avoid exposing two global attributes (Mark Langsdorf) [2031830] - ASoC: amd: renoir: Run hibernation callbacks (Renjith Pananchikkal) [1987617] - hugetlb: fix hugetlb cgroup refcounting during vma split (Waiman Long) [2032811] - hugetlb_cgroup: fix imbalanced css_get and css_put pair for shared mappings (Waiman Long) [2032811] - mm/hugetlb: change hugetlb_reserve_pages() to type bool (Waiman Long) [2032811] - hugetlb: fix an error code in hugetlb_reserve_pages() (Waiman Long) [2032811] - hugetlb_cgroup: fix offline of hugetlb cgroup with reservations (Waiman Long) [2032811] - hugetlb_cgroup: fix reservation accounting (Waiman Long) [2032811] - mm/hugetlb: narrow the hugetlb_lock protection area during preparing huge page (Waiman Long) [2032811] - mm/hugetlb: a page from buddy is not on any list (Waiman Long) [2032811] - mm/hugetlb: not necessary to coalesce regions recursively (Waiman Long) [2032811] - selftests/vm/write_to_hugetlbfs.c: fix unused variable warning (Waiman Long) [2032811] - hugetlb_cgroup: add hugetlb_cgroup reservation tests (Waiman Long) [2032811] - hugetlb: support file_region coalescing again (Waiman Long) [2032811] - hugetlb_cgroup: support noreserve mappings (Waiman Long) [2032811] - hugetlb_cgroup: add accounting for shared mappings (Waiman Long) [2032811] - hugetlb: disable region_add file_region coalescing (Waiman Long) [2032811] - hugetlb_cgroup: add reservation accounting for private mappings (Waiman Long) [2032811] - mm/hugetlb_cgroup: fix hugetlb_cgroup migration (Waiman Long) [2032811] - hugetlb_cgroup: add interface for charge/uncharge hugetlb reservations (Waiman Long) [2032811] - hugetlb_cgroup: add hugetlb_cgroup reservation counter (Waiman Long) [2032811] - mm/vma: move VM_NO_KHUGEPAGED into generic header (Waiman Long) [2032811] - mm/cma.c: switch to bitmap_zalloc() for cma bitmap allocation (Waiman Long) [2032811] - hugetlb: remove duplicated code (Waiman Long) [2032811] - hugetlb: region_chg provides only cache entry (Waiman Long) [2032811] - arm64/mm: Refactor __do_page_fault() (Waiman Long) [2032811] - arm64/mm: Drop task_struct argument from __do_page_fault() (Waiman Long) [2032811] - hugetlbfs: always use address space in inode for resv_map pointer (Waiman Long) [2032811] - mm: remove redundant 'default n' from Kconfig-s (Waiman Long) [2032811] - hugetlbfs: fix potential over/underflow setting node specific nr_hugepages (Waiman Long) [2032811] - hugetlb: allow to free gigantic pages regardless of the configuration (Waiman Long) [2032811] - mm/cma.c: fix crash on CMA allocation if bitmap allocation fails (Waiman Long) [2032811] - mm/cma.c: fix the bitmap status to show failed allocation reason (Waiman Long) [2032811] - mm/cma_debug.c: fix the break condition in cma_maxchunk_get() (Waiman Long) [2032811] - mm: no need to check return value of debugfs_create functions (Waiman Long) [2032811] - x86/mm: Break out user address space handling (Waiman Long) [2032811] - fs: add vfs_parse_fs_param_source() helper (Waiman Long) [2034609] - cgroup: verify that source is a string (Waiman Long) [2034609] - ice: Fix E810 PTP reset flow (Jonathan Toppins) [2013478] - ice: Use div64_u64 instead of div_u64 in adjfine (Jonathan Toppins) [2013478] - ice: Don't put stale timestamps in the skb (Jonathan Toppins) [2013478] - ice: Fix problems with DSCP QoS implementation (Jonathan Toppins) [2030400] - ice: fix software generating extra interrupts (Jonathan Toppins) [2030400] - ice: fix rate limit update after coalesce change (Jonathan Toppins) [2030400] - ice: update dim usage and moderation (Jonathan Toppins) [2030400] - ice: make use of ice_for_each_* macros (Jonathan Toppins) [2030400] - ice: Remove boolean vlan_promisc flag from function (Jonathan Toppins) [2030400] - ice: check whether PTP is initialized in ice_ptp_release() (Jonathan Toppins) [2030400] - ice: devlink: Make devlink_register to be void (Jonathan Toppins) [2030400] - ice: split ice_ring onto Tx/Rx separate structs (Jonathan Toppins) [2030400] - ice: Prefer kcalloc over open coded arithmetic (Jonathan Toppins) [2030400] - ice: Fix macro name for IPv4 fragment flag (Jonathan Toppins) [2030400] - ice: refactor devlink getter/fallback functions to void (Jonathan Toppins) [2030400] - ice: Fix link mode handling (Jonathan Toppins) [2030400] - ice: Add feature bitmap, helpers and a check for DSCP (Jonathan Toppins) [2030400] - ice: Add DSCP support (Jonathan Toppins) [2030400]- fanotify: Make waits for fanotify events only killable (Miklos Szeredi) [1897416] - fanotify: Use interruptible wait when waiting for permission events (Miklos Szeredi) [1897416] - fanotify: Track permission event state (Miklos Szeredi) [1897416] - fanotify: Simplify cleaning of access_list (Miklos Szeredi) [1897416] - fsnotify: Create function to remove event from notification list (Miklos Szeredi) [1897416] - fanotify: Move locking inside get_one_event() (Miklos Szeredi) [1897416] - fanotify: Fold dequeue_event() into process_access_response() (Miklos Szeredi) [1897416] - fanotify: rename struct fanotify_{,perm_}event_info (Miklos Szeredi) [1897416] - RDMA/mlx5: Fix crash when unbind multiport slave (Amir Tzin) [1997386] - redhat: Fix mock.cfg cleanup in redhat/Makefile (Benjamin Coddington) - timekeeping: Use proper clock specifier names in functions (Josef Oskera) [2026471] - leds: ledtrig-activity: use ktime_get_boot_ns() (Josef Oskera) [2026471] - iio: use timespec64 based interfaces for iio_get_time_ns() (Josef Oskera) [2026471] - drivers: net: netdevsim: fix devlink_trap selftests failing (Petr Oros) [2021837] - netdevsim: remove max_vfs dentry (Petr Oros) [2021837] - netdevsim: Fix unsigned being compared to less than zero (Petr Oros) [2021837] - devlink: Protect rate list with lock while switching modes (Petr Oros) [2021837] - devlink: Remove eswitch mode check for mode set call (Petr Oros) [2021837] - devlink: Decrease refcnt of parent rate object on leaf destroy (Petr Oros) [2021837] - docs: networking: devlink: avoid using ReST :doc:`foo` markup (Petr Oros) [2021837] - testing: selftests: drivers: net: netdevsim: devlink: add test case for hard drop statistics (Petr Oros) [2021837] - drivers: net: netdevsim: add devlink trap_drop_counter_get implementation (Petr Oros) [2021837] - testing: selftests: net: forwarding: add devlink-required functionality to test (hard) dropped stats field (Petr Oros) [2021837] - net: core: devlink: add dropped stats traps field (Petr Oros) [2021837] - devlink: Fix error message in devlink_rate_set_ops_supported() (Petr Oros) [2021837] - Documentation: devlink rate objects (Petr Oros) [2021837] - selftest: netdevsim: Add devlink rate grouping test (Petr Oros) [2021837] - netdevsim: Allow setting parent node of rate objects (Petr Oros) [2021837] - devlink: Allow setting parent node of rate objects (Petr Oros) [2021837] - selftest: netdevsim: Add devlink rate nodes test (Petr Oros) [2021837] - netdevsim: Implement support for devlink rate nodes (Petr Oros) [2021837] - devlink: Introduce rate nodes (Petr Oros) [2021837] - selftest: netdevsim: Add devlink port shared/max tx rate test (Petr Oros) [2021837] - netdevsim: Implement devlink rate leafs tx rate support (Petr Oros) [2021837] - devlink: Allow setting tx rate for devlink rate leaf objects (Petr Oros) [2021837] - selftest: netdevsim: Add devlink rate test (Petr Oros) [2021837] - netdevsim: Register devlink rate leaf objects per VF (Petr Oros) [2021837] - devlink: Introduce rate object (Petr Oros) [2021837] - netdevsim: Implement legacy/switchdev mode for VFs (Petr Oros) [2021837] - netdevsim: Implement VFs (Petr Oros) [2021837] - netdevsim: Implement port types and indexing (Petr Oros) [2021837] - netdevsim: Disable VFs on nsim_dev_reload_destroy() call (Petr Oros) [2021837] - netdevsim: Add max_vfs to bus_dev (Petr Oros) [2021837] - devlink: append split port number to the port name (Petr Oros) [2021837] - devlink: Correct VIRTUAL port to not have phys_port attributes (Petr Oros) [2021837] - docs: net: add missing devlink health cmd - trigger (Petr Oros) [2021837] - docs: net: tweak devlink health documentation (Petr Oros) [2021837] - devlink: fix typo in documentation (Petr Oros) [2021837] - devlink: Extend devlink port documentation for subfunctions (Petr Oros) [2021837] - udp: Validate checksum in udp_read_sock() (Jiri Benc) [1947007] - bpf, sockmap: sk_skb data_end access incorrect when src_reg = dst_reg (Jiri Benc) [1947007] - bpf: sockmap, strparser, and tls are reusing qdisc_skb_cb and colliding (Jiri Benc) [1947007] - selftests, bpf: Add one test for sockmap with strparser (Jiri Benc) [1947007] - selftests, bpf: Fix test_txmsg_ingress_parser error (Jiri Benc) [1947007] - skmsg: Lose offset info in sk_psock_skb_ingress (Jiri Benc) [1947007] - bpf, sockmap: Fix potential memory leak on unlikely error case (Jiri Benc) [1947007] - tcp_bpf: Fix one concurrency problem in the tcp_bpf_send_verdict function (Jiri Benc) [1947007] - bpf, sockmap, tcp: sk_prot needs inuse_idx set for proc stats (Jiri Benc) [1947007] - bpf, sockmap: Fix memleak on ingress msg enqueue (Jiri Benc) [1947007] - bpf, sockmap: On cleanup we additionally need to remove cached skb (Jiri Benc) [1947007] - skmsg: Increase sk->sk_drops when dropping packets (Jiri Benc) [1947007] - skmsg: Pass source psock to sk_psock_skb_redirect() (Jiri Benc) [1947007] - skmsg: Teach sk_psock_verdict_apply() to return errors (Jiri Benc) [1947007] - skmsg: Fix a memory leak in sk_psock_verdict_apply() (Jiri Benc) [1947007] - skmsg: Clear skb redirect pointer before dropping it (Jiri Benc) [1947007] - udp: Fix a memory leak in udp_read_sock() (Jiri Benc) [1947007] - selftests/bpf: Retry for EAGAIN in udp_redir_to_connected() (Jiri Benc) [1947007] - skmsg: Improve udp_bpf_recvmsg() accuracy (Jiri Benc) [1947007] - bpf: Limit static tcp-cc functions in the .BTF_ids list to x86 (Jiri Benc) [1947007] - flow_dissector: Fix out-of-bounds warning in __skb_flow_bpf_to_target() (Jiri Benc) [1947007] - sock_map: Fix a potential use-after-free in sock_map_close() (Jiri Benc) [1947007] - skmsg: Pass psock pointer to ->psock_update_sk_prot() (Jiri Benc) [1947007] - bpf, udp: Remove some pointless comments (Jiri Benc) [1947007] - selftests/bpf: Add a test case for loading BPF_SK_SKB_VERDICT (Jiri Benc) [1947007] - selftests/bpf: Add a test case for udp sockmap (Jiri Benc) [1947007] - sock_map: Update sock type checks for UDP (Jiri Benc) [1947007] - udp: Implement udp_bpf_recvmsg() for sockmap (Jiri Benc) [1947007] - skmsg: Extract __tcp_bpf_recvmsg() and tcp_bpf_wait_data() (Jiri Benc) [1947007] - udp: Implement ->read_sock() for sockmap (Jiri Benc) [1947007] - sock: Introduce sk->sk_prot->psock_update_sk_prot() (Jiri Benc) [1947007] - sock_map: Introduce BPF_SK_SKB_VERDICT (Jiri Benc) [1947007] - sock_map: Kill sock_map_link_no_progs() (Jiri Benc) [1947007] - sock_map: Simplify sock_map_link() a bit (Jiri Benc) [1947007] - skmsg: Use GFP_KERNEL in sk_psock_create_ingress_msg() (Jiri Benc) [1947007] - skmsg: Use rcu work for destroying psock (Jiri Benc) [1947007] - skmsg: Avoid lock_sock() in sk_psock_backlog() (Jiri Benc) [1947007] - net: Introduce skb_send_sock() for sock_map (Jiri Benc) [1947007] - skmsg: Introduce a spinlock to protect ingress_msg (Jiri Benc) [1947007] - skmsg: Lock ingress_skb when purging (Jiri Benc) [1947007] - bpf: tcp: Limit calling some tcp cc functions to CONFIG_DYNAMIC_FTRACE (Jiri Benc) [1947007] - bpf: tcp: Fix an error in the bpf_tcp_ca_kfunc_ids list (Jiri Benc) [1947007] - bpf: tcp: Remove comma which is causing build error (Jiri Benc) [1947007] - bpf: tcp: Put some tcp cong functions in allowlist for bpf-tcp-cc (Jiri Benc) [1947007] - tcp: Rename bictcp function prefix to cubictcp (Jiri Benc) [1947007] - bpf: Add getter and setter for SO_REUSEPORT through bpf_{g,s}etsockopt (Jiri Benc) [1947007] - bpf, devmap: Move drop error path to devmap for XDP_REDIRECT (Jiri Benc) [1947007] - xsk: Update rings for load-acquire/store-release barriers (Jiri Benc) [1947007] - skmsg: Add function doc for skb->_sk_redir (Jiri Benc) [1947007] - skmsg: Remove unused sk_psock_stop() declaration (Jiri Benc) [1947007] - skmsg: Get rid of sk_psock_bpf_run() (Jiri Benc) [1947007] - skmsg: Make __sk_psock_purge_ingress_msg() static (Jiri Benc) [1947007] - sock_map: Make sock_map_prog_update() static (Jiri Benc) [1947007] - sock_map: Rename skb_parser and skb_verdict (Jiri Benc) [1947007] - skmsg: Move sk_redir from TCP_SKB_CB to skb (Jiri Benc) [1947007] - bpf: Compute data_end dynamically with JIT code (Jiri Benc) [1947007] - skmsg: Get rid of struct sk_psock_parser (Jiri Benc) [1947007] - bpf: Clean up sockmap related Kconfigs (Jiri Benc) [1947007] - xsk: Build skb by page (aka generic zerocopy xmit) (Jiri Benc) [1947007] - xsk: Respect device's headroom and tailroom on generic xmit path (Jiri Benc) [1947007] - virtio-net: Support IFF_TX_SKB_NO_LINEAR flag (Jiri Benc) [1947007] - net: Add priv_flags for allow tx skb without linear (Jiri Benc) [1947007] - netdevice: Add missing IFF_PHONY_HEADROOM self-definition (Jiri Benc) [1947007] - skmsg: Make sk_psock_destroy() static (Jiri Benc) [1947007] - skmsg: Use fallthrough pseudo-keyword (Jiri Benc) [1947007] - net: dev_is_mac_header_xmit() true for ARPHRD_RAWIP (Jiri Benc) [1947007] - virtio_net: Account for tx bytes and packets on sending xdp_frames (Jiri Benc) [1947007] - inet: udp{4|6}_lib_lookup_skb() skb argument is const (Jiri Benc) [1947007] - inet: constify inet_sdif() argument (Jiri Benc) [1947007] - udp: move gro declarations to net/udp.h (Jiri Benc) [1947007] - net: move tcp gro declarations to net/tcp.h (Jiri Benc) [1947007] - tcp: add declarations to avoid warnings (Jiri Benc) [1947007] - tcp: remove indirect calls for icsk->icsk_af_ops->send_check (Jiri Benc) [1947007] - tcp: remove indirect calls for icsk->icsk_af_ops->queue_xmit (Jiri Benc) [1947007] - net: remove unused skb_send_sock() (Jiri Benc) [1947007] - net: Use skb_frag_off accessors (Jiri Benc) [1947007] - net: Use skb accessors in network core (Jiri Benc) [1947007] - skbuff: fix compilation warnings in skb_dump() (Jiri Benc) [1947007] - skbuff: increase verbosity when dumping skb data (Jiri Benc) [1947007] - net: dump more useful information in netdev_rx_csum_fault() (Jiri Benc) [1947007] - net: avoid indirect calls in L4 checksum calculation (Jiri Benc) [1947007] - net/core: Allow the compiler to verify declaration and definition consistency (Jiri Benc) [1947007] - efi/arm64: Drop erroneous '__pure' attribute from set_nokaslr() (Vitaly Kuznetsov) [2026995] - drm/nouveau: clean up all clients on device removal (Karol Herbst) [1901903] {CVE-2020-27820} - drm/nouveau: Add a dedicated mutex for the clients list (Karol Herbst) [1901903] {CVE-2020-27820} - drm/nouveau: use drm_dev_unplug() during device removal (Karol Herbst) [1901903] {CVE-2020-27820} - block: avoid to quiesce queue in elevator_init_mq (Ming Lei) [2025759] - blk-mq: cancel blk-mq dispatch work in both blk_cleanup_queue and disk_release() (Ming Lei) [2021399] - PCI/portdrv: Enable Bandwidth Notification only if port supports it (Myron Stowe) [1981738] - cifs: keep referral server sessions alive (Ronnie Sahlberg) [2030880] - cifs: check pointer before freeing (Ronnie Sahlberg) [2030880] - cifs: constify path argument of ->make_node() (Ronnie Sahlberg) [2030880] - cifs: constify get_normalized_path() properly (Ronnie Sahlberg) [2030880] - cifs: don't cargo-cult strndup() (Ronnie Sahlberg) [2030880] - cifs: cleanup misc.c (Ronnie Sahlberg) [2030880] - cifs: get rid of @noreq param in __dfs_cache_find() (Ronnie Sahlberg) [2030880] - cifs: do not send tree disconnect to ipc shares (Ronnie Sahlberg) [2030880] - cifs: fix doc warnings in cifs_dfs_ref.c (Ronnie Sahlberg) [2030880] - cifs: introduce helper for finding referral server to improve DFS target resolution (Ronnie Sahlberg) [2030880] - cifs: check all path components in resolved dfs target (Ronnie Sahlberg) [2030880] - cifs: fix DFS failover (Ronnie Sahlberg) [2030880] - Enable CONFIG_SCHED_CLUSTER (Phil Auld) [1920645] - sched,x86: Don't use cluster topology for x86 hybrid CPUs (Phil Auld) [1920645] - arch_topology: Fix missing clear cluster_cpumask in remove_cpu_topology() (Phil Auld) [1920645] - x86/smp: Factor out parts of native_smp_prepare_cpus() (Phil Auld) [1920645] - sched,x86: Fix L2 cache mask (Phil Auld) [1920645] - sched: Add cluster scheduler level for x86 (Phil Auld) [1920645] - sched: Add cluster scheduler level in core and related Kconfig for ARM64 (Phil Auld) [1920645] - topology: Represent clusters of CPUs within a die (Phil Auld) [1920645] - cpumask: Omit terminating null byte in cpumap_print_{list,bitmask}_to_buf (Phil Auld) [1920645] - drivers/base/node.c: use bin_attribute to break the size limitation of cpumap ABI (Phil Auld) [1920645] - topology: use bin_attribute to break the size limitation of cpumap ABI (Phil Auld) [1920645] - cpumask: introduce cpumap_print_list/bitmask_to_buf to support large bitmask and list (Phil Auld) [1920645] - x86/cpu: Add get_llc_id() helper function (Phil Auld) [1920645] - x86/smp: Add a per-cpu view of SMT state (Phil Auld) [1920645] - ARM: 8943/1: Fix topology setup in case of CPU hotplug for CONFIG_SCHED_MC (Phil Auld) [1920645] - arm: Use common cpu_topology structure and functions. (Phil Auld) [1920645] - cpu-topology: Move cpu topology code to common code. (Phil Auld) [1920645] - netfilter: ctnetlink: allow to filter dump by status bits (Florian Westphal) [1991526] - netfilter: ctnetlink: add and use a helper for mark parsing (Florian Westphal) [1991526] - netfilter: ctnetlink: suspicious RCU usage in ctnetlink_dump_helpinfo (Florian Westphal) [1991526] - netfilter: ctnetlink: add timeout and protoinfo to destroy events (Florian Westphal) [1991526] - netfilter: ctnetlink: fix mark based dump filtering regression (Florian Westphal) [1991526] - netfilter: ctnetlink: memleak in filter initialization error path (Florian Westphal) [1991526] - netfilter: ctnetlink: add kernel side filtering for dump (Florian Westphal) [1991526] - netfilter: ctnetlink: don't dump ct extensions of unconfirmed conntracks (Florian Westphal) [1991526] - netfilter: ctnetlink: be more strict when NF_CONNTRACK_MARK is not set (Florian Westphal) [1991526] - netfilter: ctnetlink: Fix regression in conntrack entry deletion (Florian Westphal) [1991526] - netfilter: ctnetlink: Resolve conntrack L3-protocol flush regression (Florian Westphal) [1991526] - netfilter: ctnetlink: always honor CTA_MARK_MASK (Florian Westphal) [1991526] - netfilter: ctnetlink: must check mark attributes vs NULL (Florian Westphal) [1991526] - netfilter: ctnetlink: Support L3 protocol-filter on flush (Florian Westphal) [1991526] - netfilter: nftables: fix incorrect increment of loop counter (Phil Sutter) [1983635] - netfilter: nf_tables: initialize set before expression setup (Phil Sutter) [1983635] - netfilter: nftables: add set expression flags (Phil Sutter) [1983635] - netfilter: nft_dynset: report EOPNOTSUPP on missing set feature (Phil Sutter) [1983635] - netfilter: nft_dynset: dump expressions when set definition contains no expressions (Phil Sutter) [1983635] - netfilter: nft_dynset: honor stateful expressions in set definition (Phil Sutter) [1983635] - netfilter: nf_tables: do not leave dangling pointer in nf_tables_set_alloc_name (Phil Sutter) [1983635] - netfilter: nftables: clone set element expression template (Phil Sutter) [1983635] - netfilter: nftables: relax check for stateful expressions in set definition (Phil Sutter) [1983635] - netfilter: nftables: netlink support for several set element expressions (Phil Sutter) [1983635] - netfilter: nf_tables: skip set types that do not support for expressions (Phil Sutter) [1983635] - netfilter: nft_dynset: allow dynamic updates of non-anonymous set (Phil Sutter) [1983635] - netfilter: nftables: generalize set extension to support for several expressions (Phil Sutter) [1983635] - netfilter: nf_tables: do not update stateful expressions if lookup is inverted (Phil Sutter) [1983635] - netfilter: nftables: move nft_expr before nft_set (Phil Sutter) [1983635] - netfilter: nf_tables: Align nft_expr private data to 64-bit (Phil Sutter) [1983635] - netfilter: nftables: generalize set expressions support (Phil Sutter) [1983635] - netfilter: nft_dynset: validate set expression definition (Phil Sutter) [1983635] - netfilter: nf_tables: add nft_set_elem_expr_destroy() and use it (Phil Sutter) [1983635] - netfilter: nf_tables: fix double-free on set expression from the error path (Phil Sutter) [1983635] - netfilter: nf_tables: allow to specify stateful expression in set definition (Phil Sutter) [1983635] - netfilter: nf_tables: bogus EBUSY when deleting set after flush (Phil Sutter) [1983635] - netfilter: nf_tables: pass context to nft_set_destroy() (Phil Sutter) [1983635] - netfilter: nf_tables: move nft_expr_clone() to nf_tables_api.c (Phil Sutter) [1983635] - netfilter: nf_tables: relocate header content to consumer (Phil Sutter) [1983635] - netfilter: nft_lookup: update element stateful expression (Phil Sutter) [1983635] - netfilter: nf_tables: add nft_set_elem_update_expr() helper function (Phil Sutter) [1983635] - netfilter: nf_tables: add elements with stateful expressions (Phil Sutter) [1983635] - netfilter: nf_tables: statify nft_expr_init() (Phil Sutter) [1983635] - netfilter: nf_tables: add nft_set_elem_expr_alloc() (Phil Sutter) [1983635] - netfilter: nf_tables: enable set expiration time for set elements (Phil Sutter) [1983635] - hugetlbfs: flush TLBs correctly after huge_pmd_unshare (Rafael Aquini) [2026376] {CVE-2021-4002} - tlb: mmu_gather: add tlb_flush_*_range APIs (Rafael Aquini) [2026376] {CVE-2021-4002} - ACPI: PM: Do not turn off power resources in unknown state (Mark Langsdorf) [1997696] - ACPI: PRM: Find PRMT table before parsing it (Mark Langsdorf) [1997696] - ACPI: NFIT: Fix support for virtual SPA ranges (Mark Langsdorf) [1997696] - ACPI: DPTF: Fix reading of attributes (Mark Langsdorf) [1997696] - ACPI: PM: Add support for upcoming AMD uPEP HID AMDI007 (Mark Langsdorf) [1997696] - ACPI: Kconfig: Fix table override from built-in initrd (Mark Langsdorf) [1997696] - ACPI: video: Add quirk for the Dell Vostro 3350 (Mark Langsdorf) [1997696] - ACPI: AMBA: Fix resource name in /proc/iomem (Mark Langsdorf) [1997696] - ACPI: PM: postpone bringing devices to D0 unless we need them (Mark Langsdorf) [1997696] - ACPI: tables: Add custom DSDT file as makefile prerequisite (Mark Langsdorf) [1997696] - ACPI: bgrt: Use sysfs_emit (Mark Langsdorf) [1997696] - ACPI: bgrt: Fix CFI violation (Mark Langsdorf) [1997696] - ACPI: EC: trust DSDT GPE for certain HP laptop (Mark Langsdorf) [1997696] - ACPI: scan: Simplify acpi_table_events_fn() (Mark Langsdorf) [1997696] - ACPI: sysfs: Remove tailing return statement in void function (Mark Langsdorf) [1997696] - ACPI: sysfs: Use __ATTR_RO() and __ATTR_RW() macros (Mark Langsdorf) [1997696] - ACPI: sysfs: Sort headers alphabetically (Mark Langsdorf) [1997696] - ACPI: sysfs: Refactor param_get_trace_state() to drop dead code (Mark Langsdorf) [1997696] - ACPI: sysfs: Unify pattern of memory allocations (Mark Langsdorf) [1997696] - ACPI: sysfs: Allow bitmap list to be supplied to acpi_mask_gpe (Mark Langsdorf) [1997696] - ACPI: sysfs: Make sparse happy about address space in use (Mark Langsdorf) [1997696] - ACPI: scan: Fix race related to dropping dependencies (Mark Langsdorf) [1997696] - ACPI: scan: Reorganize acpi_device_add() (Mark Langsdorf) [1997696] - ACPI: scan: Fix device object rescan in acpi_scan_clear_dep() (Mark Langsdorf) [1997696] - ACPI: scan: Make acpi_walk_dep_device_list() (Mark Langsdorf) [1997696] - ACPI: scan: Rearrange acpi_dev_get_first_consumer_dev_cb() (Mark Langsdorf) [1997696] - ACPI: scan: Define acpi_bus_put_acpi_device() as static inline (Mark Langsdorf) [1997696] - ACPI: NVS: fix doc warnings in nvs.c (Mark Langsdorf) [1997696] - ACPI: sysfs: fix doc warnings in device_sysfs.c (Mark Langsdorf) [1997696] - ACPI: APEI: fix synchronous external aborts in user-mode (Mark Langsdorf) [1997696] - mfd: tps68470: Remove tps68470 MFD driver (Mark Langsdorf) [1997696] - ACPI: power: Use dev_dbg() to print some messages (Mark Langsdorf) [1997696] - ACPI: Add quirks for AMD Renoir/Lucienne CPUs to force the D3 hint (Mark Langsdorf) [1997696] - ACPI: processor_throttling: Fix several coding style issues (Mark Langsdorf) [1997696] - ACPI: sysfs: Drop four redundant return statements (Mark Langsdorf) [1997696] - ACPI: video: Drop three redundant return statements (Mark Langsdorf) [1997696] - ACPI: sleep: Fix acpi_pm_pre_suspend() kernel-doc (Mark Langsdorf) [1997696] - ACPI: processor_throttling: Remove redundant initialization of 'obj' (Mark Langsdorf) [1997696] - ACPI: utils: Introduce acpi_get_local_address() (Mark Langsdorf) [1997696] - ACPI: scan: initialize local variable to avoid garbage being returned (Mark Langsdorf) [1997696] - ACPI: Remove redundant clearing of context->ret.pointer from acpi_run_osc() (Mark Langsdorf) [1997696] - redhat/configs: Add Enable CONFIG_ACPI_PRMT (Mark Langsdorf) [1997696] - ACPI: PRM: Deal with table not present or no module found (Mark Langsdorf) [1997696] - ACPI: Do not singal PRM support if not enabled (Mark Langsdorf) [1997696] - ACPI: Kconfig: Provide help text for the ACPI_PRMT option (Mark Langsdorf) [1997696] - ACPI: PRM: make symbol 'prm_module_list' static (Mark Langsdorf) [1997696] - ACPI: Correct \_SB._OSC bit definition for PRM (Mark Langsdorf) [1997696] - ACPI: Add \_SB._OSC bit for PRM (Mark Langsdorf) [1997696] - ACPI: PRM: implement OperationRegion handler for the PlatformRtMechanism subtype (Mark Langsdorf) [1997696] - ACPICA: Add PRMT module header to facilitate parsing (Mark Langsdorf) [1997696] - ACPI: scan: Add function to fetch dependent of ACPI device (Mark Langsdorf) [1997696] - ACPI: scan: Extend acpi_walk_dep_device_list() (Mark Langsdorf) [1997696] - i2c: core: Restore acpi_walk_dep_device_list() getting called after registering the ACPI i2c devs (Mark Langsdorf) [1997696] - ACPI: NUMA: fix typo in a comment (Mark Langsdorf) [1997696] - ACPI: sysfs: Fix a buffer overrun problem with description_show() (Mark Langsdorf) [1997696] - ACPI: LPSS: Use kstrtol() instead of simple_strtol() (Mark Langsdorf) [1997696] - ACPI: tables: FPDT: Add missing acpi_put_table() in acpi_init_fpdt() (Mark Langsdorf) [1997696] - ACPI: tables: PPTT: Populate cache-id if provided by firmware (Mark Langsdorf) [1997696] - ACPI: OSL: Use DEFINE_RES_IO_NAMED() to simplify code (Mark Langsdorf) [1997696] - ACPI: bus: Call kobject_put() in acpi_init() error path (Mark Langsdorf) [1997696] - ACPI: bus: Remove unneeded assignment (Mark Langsdorf) [1997696] - ACPI: sleep: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: sbs: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: scan: Unify the log message printing (Mark Langsdorf) [1997696] - ACPI: sbshc: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: sysfs: Cleanup message printing (Mark Langsdorf) [1997696] - ACPI: reboot: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: processor_throttling: Cleanup the printing messages (Mark Langsdorf) [1997696] - ACPI: processor_perflib: Cleanup print messages (Mark Langsdorf) [1997696] - ACPI: processor_thermal: Remove unused PREFIX for printing (Mark Langsdorf) [1997696] - ACPI: pci_root: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: osl: Remove the duplicated PREFIX for message printing (Mark Langsdorf) [1997696] - ACPI: nvs: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: glue: Clean up the printing messages (Mark Langsdorf) [1997696] - ACPI: event: Use pr_*() macros to replace printk() (Mark Langsdorf) [1997696] - ACPI: bus: Use pr_*() macros to replace printk() (Mark Langsdorf) [1997696] - ACPI: blacklist: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: cmos_rtc: Using pr_fmt() and remove PREFIX (Mark Langsdorf) [1997696] - ACPI: scan: Constify acpi_dma_supported() helper function (Mark Langsdorf) [1997696] - ACPICA: Update version to 20210604 (Mark Langsdorf) [1997696] - ACPICA: Add support for PlatformRtMechanism OperationRegion handler (Mark Langsdorf) [1997696] - ACPICA: iASL: add disassembler support for PRMT (Mark Langsdorf) [1997696] - ACPICA: Add the CFMWS structure definition to the CEDT table (Mark Langsdorf) [1997696] - ACPICA: Add defines for the CXL Host Bridge Structure (CHBS) (Mark Langsdorf) [1997696] - ACPICA: iASL: Add support for the BDAT ACPI table (Mark Langsdorf) [1997696] - ACPICA: Add _PLD panel positions (Mark Langsdorf) [1997696] - ACPICA: Use ACPI_FALLTHROUGH (Mark Langsdorf) [1997696] - ACPICA: iASL Table Compiler: Add full support for RGRT ACPI table (Mark Langsdorf) [1997696] - ACPICA: iASL: Add support for the SVKL table (Mark Langsdorf) [1997696] - ACPICA: iASL: Finish support for the IVRS ACPI table (Mark Langsdorf) [1997696] - ACPICA: Add SVKL table headers (Mark Langsdorf) [1997696] - ACPICA: ACPI 6.4: MADT: add Multiprocessor Wakeup Mailbox Structure (Mark Langsdorf) [1997696] - ACPI: power: Rework turning off unused power resources (Mark Langsdorf) [1997696] - ACPI: power: Save the last known state of each power resource (Mark Langsdorf) [1997696] - ACPI: power: Use u8 as the power resource state data type (Mark Langsdorf) [1997696] - ACPI: configfs: Replace ACPI_INFO() with pr_debug() (Mark Langsdorf) [1997696] - ACPI: ipmi: Remove address space handler in error path (Mark Langsdorf) [1997696] - ACPI: EC: Make more Asus laptops use ECDT _GPE (Mark Langsdorf) [1997696] - ACPI: event: Remove redundant initialization of local variable (Mark Langsdorf) [1997696] - ACPI: sbshc: Fix fall-through warning for Clang (Mark Langsdorf) [1997696] - ACPI: PM / fan: Put fan device IDs into separate header file (Mark Langsdorf) [1997696] - ACPI: APEI: Don't warn if ACPI is disabled (Mark Langsdorf) [1997696] - ACPI: processor idle: Fix up C-state latency if not ordered (Mark Langsdorf) [1997696] - ACPI: scan: Rearrange dep_unmet initialization (Mark Langsdorf) [1997696] - ACPI: DPTF: Add battery participant for Intel SoCs (Mark Langsdorf) [1997696] - md/raid5: avoid device_lock in read_one_chunk() (Nigel Croxon) [1985919] - md: add comments in md_integrity_register (Nigel Croxon) [1985919] - md: check level before create and exit io_acct_set (Nigel Croxon) [1985919] - md/raid10: enable io accounting (Nigel Croxon) [1985919] - md/raid1: enable io accounting (Nigel Croxon) [1985919] - md/raid5: avoid redundant bio clone in raid5_read_one_chunk (Nigel Croxon) [1985919] - md/raid5: move checking badblock before clone bio in raid5_read_one_chunk (Nigel Croxon) [1985919] - md: add io accounting for raid0 and raid5 (Nigel Croxon) [1985919] - md: revert io stats accounting (Nigel Croxon) [1985919] - md/raid5: remove an incorrect assert in in_chunk_boundary (Nigel Croxon) [1985919] - md: use rdev_read_only in restart_array (Nigel Croxon) [1985919] - md/raid6: refactor raid5_read_one_chunk (Nigel Croxon) [1985919] - md: remove md_bio_alloc_sync (Nigel Croxon) [1985919] - md: simplify sync_page_io (Nigel Croxon) [1985919] - md: remove bio_alloc_mddev (Nigel Croxon) [1985919] - md: use part_[begin|end]_io_acct instead of disk_[begin|end]_io_acct (Nigel Croxon) [1985919] - md: improve io stats accounting (Nigel Croxon) [1985919]- ethernet: use eth_hw_addr_set() for dev->addr_len cases (Corinna Vinschen) [1970663] - igbvf: convert to strongly typed descriptors (Corinna Vinschen) [1970663] - intel: call csum functions with well formatted arguments (Corinna Vinschen) [1970663] - igb: handle vlan types with checker enabled (Corinna Vinschen) [1970663] - igb: fix netpoll exit with traffic (Corinna Vinschen) [1970662] - igb: unbreak I2C bit-banging on i350 (Corinna Vinschen) [1970662] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Corinna Vinschen) [1970662] - igb: Avoid memcpy() over-reading of ETH_SS_STATS (Corinna Vinschen) [1970662] - igb: Add counter to i21x doublecheck (Corinna Vinschen) [1970662] - igb: Fix position of assignment to *ring (Corinna Vinschen) [1970662] - igb: Check if num of q_vectors is smaller than max before array access (Corinna Vinschen) [1970662] - igb: Fix an error handling path in 'igb_probe()' (Corinna Vinschen) [1970662] - igb: Fix use-after-free error during reset (Corinna Vinschen) [1970662] - intel: Remove rcu_read_lock() around XDP program invocation (Corinna Vinschen) [1970662] - igb: add correct exception tracing for XDP (Corinna Vinschen) [1970662] - igb: Fix XDP with PTP enabled (Corinna Vinschen) [1970662] - igb: Fix -Wunused-const-variable warning (Corinna Vinschen) [1970662] - igb: override two checker warnings (Corinna Vinschen) [1970662] - igb: fix assignment on big endian machines (Corinna Vinschen) [1970662] - igb: handle vlan types with checker enabled (Corinna Vinschen) [1970662] - igb/igc: use strongly typed pointer (Corinna Vinschen) [1970662] - intel: remove checker warning (Corinna Vinschen) [1970662] - i40e: Fix NULL pointer dereference in i40e_dbg_dump_desc (Stefan Assmann) [1970651] - i40e: Fix pre-set max number of queues for VF (Stefan Assmann) [1970651] - i40e: Fix failed opcode appearing if handling messages from VF (Stefan Assmann) [1970651] - i40e: Fix display error code in dmesg (Stefan Assmann) [1970651] - i40e: Fix creation of first queue by omitting it if is not power of two (Stefan Assmann) [1970651] - i40e: Fix warning message and call stack during rmmod i40e driver (Stefan Assmann) [1970651] - i40e: Fix ping is lost after configuring ADq on VF (Stefan Assmann) [1970651] - i40e: Fix changing previously set num_queue_pairs for PFs (Stefan Assmann) [1970651] - i40e: Fix NULL ptr dereference on VSI filter sync (Stefan Assmann) [1970651] - i40e: Fix correct max_pkt_size on VF RX queue (Stefan Assmann) [1970651] - ethernet: constify references to netdev->dev_addr in drivers (Stefan Assmann) [1970651] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Stefan Assmann) [1970651] - i40e: Fix ATR queue selection (Stefan Assmann) [1970651] - i40e: Fix spelling mistake "dissable" -> "disable" (Stefan Assmann) [1970651] - iavf: do not override the adapter state in the watchdog task (again) (Stefan Assmann) [1970650] - iavf: missing unlocks in iavf_watchdog_task() (Stefan Assmann) [1970650] - iavf: Fix reporting when setting descriptor count (Stefan Assmann) [1970650] - iavf: restore MSI state on reset (Stefan Assmann) [1970650] - iavf: Fix displaying queue statistics shown by ethtool (Stefan Assmann) [1970650] - iavf: Refactor string format to avoid static analysis warnings (Stefan Assmann) [1970650] - iavf: Refactor text of informational message (Stefan Assmann) [1970650] - iavf: Fix static code analysis warning (Stefan Assmann) [1970650] - iavf: Refactor iavf_mac_filter struct memory usage (Stefan Assmann) [1970650] - iavf: Enable setting RSS hash key (Stefan Assmann) [1970650] - iavf: Add trace while removing device (Stefan Assmann) [1970650] - iavf: return errno code instead of status code (Stefan Assmann) [1970650] - iavf: Log info when VF is entering and leaving Allmulti mode (Stefan Assmann) [1970650] - iavf: Add change MTU message (Stefan Assmann) [1970650] - iavf: Fix VLAN feature flags after VFR (Stefan Assmann) [1970650] - iavf: Fix refreshing iavf adapter stats on ethtool request (Stefan Assmann) [1970650] - iavf: Fix deadlock occurrence during resetting VF interface (Stefan Assmann) [1970650] - iavf: Prevent changing static ITR values if adaptive moderation is on (Stefan Assmann) [1970650] - iavf: Restore VLAN filters after link down (Stefan Assmann) [1970650] - iavf: Fix for setting queues to 0 (Stefan Assmann) [1970650] - iavf: Fix for the false positive ASQ/ARQ errors while issuing VF reset (Stefan Assmann) [1970650] - iavf: validate pointers (Stefan Assmann) [1970650] - iavf: prevent accidental free of filter structure (Stefan Assmann) [1970650] - iavf: Fix failure to exit out from last all-multicast mode (Stefan Assmann) [1970650] - iavf: don't clear a lock we don't hold (Stefan Assmann) [1970650] - iavf: free q_vectors before queues in iavf_disable_vf (Stefan Assmann) [1970650] - iavf: check for null in iavf_fix_features (Stefan Assmann) [1970650] - iavf: Fix return of set the new channel count (Stefan Assmann) [1970650] - iavf: Fix kernel BUG in free_msi_irqs (Stefan Assmann) [1970650] - iavf: Add helper function to go from pci_dev to adapter (Stefan Assmann) [1970650] - iavf: Combine init and watchdog state machines (Stefan Assmann) [1970650] - iavf: Add __IAVF_INIT_FAILED state (Stefan Assmann) [1970650] - iavf: Refactor iavf state machine tracking (Stefan Assmann) [1970650] - iavf: fix double unlock of crit_lock (Stefan Assmann) [1970650] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Stefan Assmann) [1970650] - iavf: Fix ping is lost after untrusted VF had tried to change MAC (Stefan Assmann) [1970650] - iavf: use mutexes for locking of critical sections (Stefan Assmann) [1970650] - qed: rdma - don't wait for resources under hw error recovery flow (Manish Chopra) [1998195] - qed: Handle management FW error (Manish Chopra) [1998195] - qede: Fix memset corruption (Manish Chopra) [1998195] - qed: Enable automatic recovery on error condition. (Manish Chopra) [1998195] - qed: Fix the VF msix vectors flow (Manish Chopra) [1998195] - qed: Fix null-pointer dereference in qed_rdma_create_qp() (Manish Chopra) [1998195] - qed: qed ll2 race condition fixes (Manish Chopra) [1998195] - qed: Remove duplicated include of kernel.h (Manish Chopra) [1998195] - qed: Remove redundant prints from the iWARP SYN handling (Manish Chopra) [1998195] - qed: Skip DORQ attention handling during recovery (Manish Chopra) [1998195] - qed: Avoid db_recovery during recovery (Manish Chopra) [1998195] - qede: fix crash in rmmod qede while automatic debug collection (Manish Chopra) [1998195] - RDMA/qedr: Improve error logs for rdma_alloc_tid error return (Manish Chopra) [1998195] - RDMA/qed: Use accurate error num in qed_cxt_dynamic_ilt_alloc (Manish Chopra) [1998195] - net: qed: remove unneeded return variables (Manish Chopra) [1998195] - net: qede: Fix end of loop tests for list_for_each_entry (Manish Chopra) [1998195] - qede: Remove rcu_read_lock() around XDP program invocation (Manish Chopra) [1998195] - net: qed: Fix memcpy() overflow of qed_dcbx_params() (Manish Chopra) [1998195] - net: qede: Use list_for_each_entry() to simplify code (Manish Chopra) [1998195] - qed: Fix duplicate included linux/kernel.h (Manish Chopra) [1998195] - qed: Add IP services APIs support (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload IO Level FW Initializations (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload IO Level FW and HW HSI (Manish Chopra) [1998195] - qed: Add support of HW filter block (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload Connection Level FW and HW HSI (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload PF Level FW and HW HSI (Manish Chopra) [1998195] - qed: Add TCP_ULP FW resource layout (Manish Chopra) [1998195] - net: qed: remove redundant initialization of variable rc (Manish Chopra) [1998195] - net: qed: remove unused including (Manish Chopra) [1998195] - qede: remove unused including (Manish Chopra) [1998195] - linux/qed: Mundane spelling fixes throughout the file (Manish Chopra) [1998195] - qed: Fix fall-through warnings for Clang (Manish Chopra) [1998195] - RDMA/qedr: Use true and false for bool variable (Manish Chopra) [1998195] - qede: preserve per queue stats across up/down of interface (Manish Chopra) [1998195] - qede: add per queue coalesce support for qede driver (Manish Chopra) [1998195] - qede: add netpoll support for qede driver (Manish Chopra) [1998195] - RDMA/qedr: Remove in_irq() usage from debug output (Manish Chopra) [1998195] - linux/qed: fix spelling typo in qed_chain.h (Manish Chopra) [1998195] - qed: select CONFIG_CRC32 (Manish Chopra) [1998195] - IB/qedr: Fix fall-through warnings for Clang (Manish Chopra) [1998195] - RDMA/qedr: Endianness warnings cleanup (Manish Chopra) [1998195] - qed/qed_ll2: Replace one-element array with flexible-array member (Manish Chopra) [1998195] - net: qed: use true,false for bool variables (Manish Chopra) [1998195] - RDMA/qedr: Fix reported max_pkeys (Manish Chopra) [1998195] - qed: align adjacent indent (Manish Chopra) [1998195] - qed: fix kconfig help entries (Manish Chopra) [1998195] - sched/cputime: Fix getrusage(RUSAGE_THREAD) with nohz_full (Phil Auld) [1992387] - net: tg3: fix obsolete check of !err (Ken Cox) [1987082] - net: broadcom: switch from 'pci_' to 'dma_' API (Ken Cox) [1987082] - tg3: Remove unused PHY_BRCM flags (Ken Cox) [1987082] - net: check skb sec_path when re-initializing slow_gro in gro_list_prepare (Xin Long) [2030476] - e1000e: Fix the max snoop/no-snoop latency for 10M (Ken Cox) [1970665] - net/e1000e: Fix spelling mistake "The" -> "This" (Ken Cox) [1970665] - e1000e: Add space to the debug print (Ken Cox) [1970665] - e1000e: Additional PHY power saving in S0ix (Ken Cox) [1970665] - e1000e: Add polling mechanism to indicate CSME DPG exit (Ken Cox) [1970665] - e1000e: Add handshake with the CSME to support S0ix (Ken Cox) [1970665] - e1000e: Fix an error handling path in 'e1000_probe()' (Ken Cox) [1970665] - e1000e: Check the PCIm state (Ken Cox) [1970665] - net: e1000e: fix misspell word "retreived" (Ken Cox) [1970665] - net: e1000e: remove repeated word "slot" for netdev.c (Ken Cox) [1970665] - net: e1000e: remove repeated word "the" for ich8lan.c (Ken Cox) [1970665] - ppc64: Fix incorrect qrwlock use in debug kernel (Waiman Long) [2027200] - locking: Remove spin_lock_flags() etc (Waiman Long) [2027200] - Bluetooth: btusb: Add one more Bluetooth part for WCN6855 (Gopal Tiwari) [2007903] - Bluetooth: btusb: Add the new support IDs for WCN6855 (Gopal Tiwari) [2007903] - Bluetooth: btusb: re-definition for board_id in struct qca_version (Gopal Tiwari) [2007903] - Bluetooth: btusb: Add support using different nvm for variant WCN6855 controller (Gopal Tiwari) [2007903] - bpf/selftests: enable atomic_bounds test (Viktor Malik) [2030572] - Revert "bpf: Remove atomics tests from test_progs" (Viktor Malik) [2030572] - bpf/selftests: disable tests failing on RHEL 8.6 (Viktor Malik) [2025797 2025801 2025810 2025812 2025813] - bpf/selftests: allow disabling prog_tests (Viktor Malik) [2030572] - xfs: drop experimental warnings for bigtime and inobtcount (Bill O'Donnell) [2022903] - libxfs: expose inobtcount in xfs geometry (Bill O'Donnell) [2022903] - xfs: enable new inode btree counters feature (Bill O'Donnell) [2022903] - xfs: enable big timestamps (Bill O'Donnell) [2022903] - selftests: net: bridge: fix typo in vlan_filtering dependency test (Ivan Vecera) [2019055] - selftests: net: bridge: add test for vlan_filtering dependency (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_router tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast query and query response interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_querier_interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_membership_interval test (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_startup_query_count/interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_last_member_count/interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast igmp/mld version tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast querier test (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast snooping control test (Ivan Vecera) [2019055] - selftests: net: bridge: update IGMP/MLD membership interval value (Ivan Vecera) [2019055] - net: bridge: mcast: use multicast_membership_interval for IGMPv3 (Ivan Vecera) [2019055] - net: bridge: fix under estimation in br_get_linkxstats_size() (Ivan Vecera) [2019055] - net: bridge: use nla_total_size_64bit() in br_get_linkxstats_size() (Ivan Vecera) [2019055] - net: bridge: mcast: Associate the seqcount with its protecting lock. (Ivan Vecera) [2019055] - net: bridge: mcast: fix vlan port router deadlock (Ivan Vecera) [2019055] - net: bridge: use mld2r_ngrec instead of icmpv6_dataun (Ivan Vecera) [2019055] - net: bridge: change return type of br_handle_ingress_vlan_tunnel (Ivan Vecera) [2019055] - net: bridge: vlan: convert mcast router global option to per-vlan entry (Ivan Vecera) [2019055] - net: bridge: mcast: br_multicast_set_port_router takes multicast context as argument (Ivan Vecera) [2019055] - net: bridge: mcast: toggle also host vlan state in br_multicast_toggle_vlan (Ivan Vecera) [2019055] - net: bridge: mcast: use the correct vlan group helper (Ivan Vecera) [2019055] - net: bridge: vlan: account for router port lists when notifying (Ivan Vecera) [2019055] - net: bridge: vlan: enable mcast snooping for existing master vlans (Ivan Vecera) [2019055] - net: bridge: mcast: account for ipv6 size when dumping querier state (Ivan Vecera) [2019055] - net: bridge: mcast: drop sizeof for nest attribute's zero size (Ivan Vecera) [2019055] - net: bridge: mcast: don't dump querier state if snooping is disabled (Ivan Vecera) [2019055] - net: bridge: vlan: dump mcast ctx querier state (Ivan Vecera) [2019055] - net: bridge: mcast: dump ipv6 querier state (Ivan Vecera) [2019055] - net: bridge: mcast: dump ipv4 querier state (Ivan Vecera) [2019055] - net: bridge: mcast: consolidate querier selection for ipv4 and ipv6 (Ivan Vecera) [2019055] - net: bridge: mcast: make sure querier port/address updates are consistent (Ivan Vecera) [2019055] - net: bridge: mcast: record querier port device ifindex instead of pointer (Ivan Vecera) [2019055] - net: bridge: vlan: use br_rports_fill_info() to export mcast router ports (Ivan Vecera) [2019055] - net: bridge: mcast: use the proper multicast context when dumping router ports (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast router global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast querier global option (Ivan Vecera) [2019055] - net: bridge: mcast: querier and query state affect only current context type (Ivan Vecera) [2019055] - net: bridge: mcast: move querier state to the multicast context (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast startup query interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast query response interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast query interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast querier interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast membership interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast last member interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast startup query count global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast last member count global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast igmp/mld version global options (Ivan Vecera) [2019055] - net: switchdev: zero-initialize struct switchdev_notifier_fdb_info emitted by drivers towards the bridge (Ivan Vecera) [2019055] - net: bridge: fix flags interpretation for extern learn fdb entries (Ivan Vecera) [2019055] - net: bridge: vlan: fix global vlan option range dumping (Ivan Vecera) [2019055] - net: bridge: fix memleak in br_add_if() (Ivan Vecera) [2019055] - net: make switchdev_bridge_port_{,unoffload} loosely coupled with the bridge (Ivan Vecera) [2019055] - net: bridge: switchdev: fix incorrect use of FDB flags when picking the dst device (Ivan Vecera) [2019055] - net: bridge: validate the NUD_PERMANENT bit when adding an extern_learn FDB entry (Ivan Vecera) [2019055] - net: bridge: switchdev: treat local FDBs the same as entries towards the bridge (Ivan Vecera) [2019055] - net: bridge: switchdev: replay the entire FDB for each port (Ivan Vecera) [2019055] - net: bridge: add a helper for retrieving port VLANs from the data path (Ivan Vecera) [2019055] - net: bridge: update BROPT_VLAN_ENABLED before notifying switchdev in br_vlan_filter_toggle (Ivan Vecera) [2019055] - net: bridge: fix build when setting skb->offload_fwd_mark with CONFIG_NET_SWITCHDEV=n (Ivan Vecera) [2019055] - net: bridge: switchdev: allow the TX data plane forwarding to be offloaded (Ivan Vecera) [2019055] - net: switchdev: fix FDB entries towards foreign ports not getting propagated to us (Ivan Vecera) [2019055] - net: bridge: move the switchdev object replay helpers to "push" mode (Ivan Vecera) [2019055] - net: bridge: guard the switchdev replay helpers against a NULL notifier block (Ivan Vecera) [2019055] - net: bridge: switchdev: let drivers inform which bridge ports are offloaded (Ivan Vecera) [2019055] - net: bridge: switchdev: recycle unused hwdoms (Ivan Vecera) [2019055] - net: bridge: disambiguate offload_fwd_mark (Ivan Vecera) [2019055] - net: bridge: multicast: add context support for host-joined groups (Ivan Vecera) [2019055] - net: bridge: multicast: add mdb context support (Ivan Vecera) [2019055] - net: bridge: multicast: fix igmp/mld port context null pointer dereferences (Ivan Vecera) [2019055] - net: switchdev: recurse into __switchdev_handle_fdb_del_to_device (Ivan Vecera) [2019055] - net: switchdev: remove stray semicolon in switchdev_handle_fdb_del_to_device shim (Ivan Vecera) [2019055] - net: bridge: vlan: add mcast snooping control (Ivan Vecera) [2019055] - net: bridge: vlan: notify when global options change (Ivan Vecera) [2019055] - net: bridge: vlan: add support for dumping global vlan options (Ivan Vecera) [2019055] - net: bridge: vlan: add support for global options (Ivan Vecera) [2019055] - net: bridge: multicast: include router port vlan id in notifications (Ivan Vecera) [2019055] - net: bridge: multicast: add vlan querier and query support (Ivan Vecera) [2019055] - net: bridge: multicast: check if should use vlan mcast ctx (Ivan Vecera) [2019055] - net: bridge: multicast: use the port group to port context helper (Ivan Vecera) [2019055] - net: bridge: multicast: add helper to get port mcast context from port group (Ivan Vecera) [2019055] - net: bridge: add vlan mcast snooping knob (Ivan Vecera) [2019055] - net: bridge: multicast: add vlan state initialization and control (Ivan Vecera) [2019055] - net: bridge: vlan: add global and per-port multicast context (Ivan Vecera) [2019055] - net: bridge: multicast: use multicast contexts instead of bridge or port (Ivan Vecera) [2019055] - net: bridge: multicast: factor out bridge multicast context (Ivan Vecera) [2019055] - net: bridge: multicast: factor out port multicast context (Ivan Vecera) [2019055] - net: switchdev: introduce a fanout helper for SWITCHDEV_FDB_{ADD,DEL}_TO_DEVICE (Ivan Vecera) [2019055] - net: switchdev: introduce helper for checking dynamically learned FDB entries (Ivan Vecera) [2019055] - net: bridge: do not replay fdb entries pointing towards the bridge twice (Ivan Vecera) [2019055] - net: bridge: multicast: fix MRD advertisement router port marking race (Ivan Vecera) [2019055] - net: bridge: multicast: fix PIM hello router port marking race (Ivan Vecera) [2019055] - net: bridge: sync fdb to new unicast-filtering ports (Ivan Vecera) [2019055] - net: bridge: allow br_fdb_replay to be called for the bridge device (Ivan Vecera) [2019055] - net: bridge: switchdev: send FDB notifications for host addresses (Ivan Vecera) [2019055] - net: bridge: use READ_ONCE() and WRITE_ONCE() compiler barriers for fdb->dst (Ivan Vecera) [2019055] - net: bridge: allow the switchdev replay functions to be called for deletion (Ivan Vecera) [2019055] - net: bridge: constify variables in the replay helpers (Ivan Vecera) [2019055] - net: bridge: ignore switchdev events for LAG ports which didn't request replay (Ivan Vecera) [2019055] - net: switchdev: add a context void pointer to struct switchdev_notifier_info (Ivan Vecera) [2019055] - net: bridge: include the is_local bit in br_fdb_replay (Ivan Vecera) [2019055] - net: bridge: mrp: Update the Test frames for MRA (Ivan Vecera) [2019055] - bridge: cfm: remove redundant return (Ivan Vecera) [2019055] - net: bridge: remove redundant continue statement (Ivan Vecera) [2019055] - net: bridge: fix vlan tunnel dst refcnt when egressing (Ivan Vecera) [2019055] - net: bridge: fix vlan tunnel dst null pointer dereference (Ivan Vecera) [2019055] - net: bridge: mrp: Update ring transitions. (Ivan Vecera) [2019055] - net: bridge: remove redundant assignment (Ivan Vecera) [2019055] - net: bridge: fix br_multicast_is_router stub when igmp is disabled (Ivan Vecera) [2019055] - net: bridge: fix build when IPv6 is disabled (Ivan Vecera) [2019055] - net: bridge: mcast: export multicast router presence adjacent to a port (Ivan Vecera) [2019055] - net: bridge: mcast: add ip4+ip6 mcast router timers to mdb netlink (Ivan Vecera) [2019055] - net: bridge: mcast: split multicast router state for IPv4 and IPv6 (Ivan Vecera) [2019055] - net: bridge: mcast: split router port del+notify for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare add-router function for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare expiry functions for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare is-router function for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare query reception for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare mdb netlink for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: add wrappers for router node retrieval (Ivan Vecera) [2019055] - net: bridge: mcast: rename multicast router lists and timers (Ivan Vecera) [2019055] - bridge: Fix possible races between assigning rx_handler_data and setting IFF_BRIDGE_PORT bit (Ivan Vecera) [2019055] - net: bridge: mcast: fix broken length + header check for MRDv6 Adv. (Ivan Vecera) [2019055] - net: bridge: fix error in br_multicast_add_port when CONFIG_NET_SWITCHDEV=n (Ivan Vecera) [2019055] - net: bridge: propagate error code and extack from br_mc_disabled_update (Ivan Vecera) [2019055] - net: bridge: Fix missing return assignment from br_vlan_replay_one call (Ivan Vecera) [2019055] - bridge: mrp: Disable roles before deleting the MRP instance (Ivan Vecera) [2019055] - net: bridge: add helper to replay VLANs installed on port (Ivan Vecera) [2019055] - net: bridge: add helper to replay port and local fdb entries (Ivan Vecera) [2019055] - net: bridge: add helper to replay port and host-joined mdb entries (Ivan Vecera) [2019055] - net: bridge: add helper to retrieve the current ageing time (Ivan Vecera) [2019055] - net: bridge: add helper for retrieving the current bridge port STP state (Ivan Vecera) [2019055] - net: bridge: when suppression is enabled exclude RARP packets (Ivan Vecera) [2019055] - net: bridge: declare br_vlan_tunnel_lookup argument tunnel_id as __be64 (Ivan Vecera) [2019055] - Documentation: networking: switchdev: add missing "and" word (Ivan Vecera) [2019055] - Documentation: networking: switchdev: separate bulleted items with new line (Ivan Vecera) [2019055] - Documentation: networking: switchdev: fix command for static FDB entries (Ivan Vecera) [2019055] - Documentation: networking: switchdev: clarify device driver behavior (Ivan Vecera) [2019055] - net: bridge: mcast: factor out common allow/block EHT handling (Ivan Vecera) [2019055] - net: bridge: mcast: remove unreachable EHT code (Ivan Vecera) [2019055] - net: bridge: Fix fall-through warnings for Clang (Ivan Vecera) [2019055] - bridge: mrp: Update br_mrp to use new return values of br_mrp_switchdev (Ivan Vecera) [2019055] - bridge: mrp: Extend br_mrp_switchdev to detect better the errors (Ivan Vecera) [2019055] - bridge: mrp: Add 'enum br_mrp_hw_support' (Ivan Vecera) [2019055] - switchdev: mrp: Extend ring_role_mrp and in_role_mrp (Ivan Vecera) [2019055] - switchdev: mrp: Remove CONFIG_BRIDGE_MRP (Ivan Vecera) [2019055] - net: bridge: fix br_vlan_filter_toggle stub when CONFIG_BRIDGE_VLAN_FILTERING=n (Ivan Vecera) [2019055] - net: bridge: fix switchdev_port_attr_set stub when CONFIG_SWITCHDEV=n (Ivan Vecera) [2019055] - net: bridge: propagate extack through switchdev_port_attr_set (Ivan Vecera) [2019055] - net: bridge: propagate extack through store_bridge_parm (Ivan Vecera) [2019055] - net: bridge: remove __br_vlan_filter_toggle (Ivan Vecera) [2019055] - net: switchdev: pass flags and mask to both {PRE_,}BRIDGE_FLAGS attributes (Ivan Vecera) [2019055] - net: bridge: don't print in br_switchdev_set_port_flag (Ivan Vecera) [2019055] - net: bridge: offload all port flags at once in br_setport (Ivan Vecera) [2019055] - net: switchdev: propagate extack to port attributes (Ivan Vecera) [2019055] - switchdev: mrp: Remove SWITCHDEV_ATTR_ID_MRP_PORT_STAT (Ivan Vecera) [2019055] - bridge: mrp: Fix the usage of br_mrp_port_switchdev_set_state (Ivan Vecera) [2019055] - net: bridge: mcast: Use ERR_CAST instead of ERR_PTR(PTR_ERR()) (Ivan Vecera) [2019055] - net: bridge: add warning comments to avoid extending sysfs (Ivan Vecera) [2019055] - net: bridge: mcast: drop hosts limit sysfs support (Ivan Vecera) [2019055] - net: bridge: multicast: make tracked EHT hosts limit configurable (Ivan Vecera) [2019055] - net: bridge: multicast: add per-port EHT hosts limit (Ivan Vecera) [2019055] - net: switchdev: use obj-$(CONFIG_NET_SWITCHDEV) form in net/Makefile (Ivan Vecera) [2019055] - net: switchdev: don't set port_obj_info->handled true when -EOPNOTSUPP (Ivan Vecera) [2019055] - net: bridge: multicast: fix br_multicast_eht_set_entry_lookup indentation (Ivan Vecera) [2019055] - bridge: Use PTR_ERR_OR_ZERO instead if(IS_ERR(...)) + PTR_ERR (Ivan Vecera) [2019055] - net: mrp: move struct definitions out of uapi (Ivan Vecera) [2019055] - net: mrp: fix definitions of MRP test packets (Ivan Vecera) [2019055] - net: bridge: multicast: mark IGMPv3/MLDv2 fast-leave deletes (Ivan Vecera) [2019055] - net: bridge: multicast: handle block pg delete for all cases (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT host filter_mode handling (Ivan Vecera) [2019055] - net: bridge: multicast: optimize TO_INCLUDE EHT timeouts (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT include and exclude handling (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT allow/block handling (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT host delete function (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT source set handling functions (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT host handling functions (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT structures and definitions (Ivan Vecera) [2019055] - net: bridge: multicast: calculate idx position without changing ptr (Ivan Vecera) [2019055] - net: bridge: multicast: __grp_src_block_incl can modify pg (Ivan Vecera) [2019055] - net: bridge: multicast: pass host src address to IGMPv3/MLDv2 functions (Ivan Vecera) [2019055] - net: bridge: multicast: rename src_size to addr_size (Ivan Vecera) [2019055] - net: bridge: check vlan with eth_type_vlan() method (Ivan Vecera) [2019055] - net: switchdev: delete the transaction object (Ivan Vecera) [2019055] - mlxsw: spectrum_switchdev: remove transactional logic for VLAN objects (Ivan Vecera) [2019055] - net: switchdev: remove the transaction structure from port attributes (Ivan Vecera) [2019055] - net: switchdev: delete switchdev_port_obj_add_now (Ivan Vecera) [2019055] - net: switchdev: remove the transaction structure from port object notifiers (Ivan Vecera) [2019055] - net: switchdev: remove vid_begin -> vid_end range from VLAN objects (Ivan Vecera) [2019055] - net: bridge: fix misspellings using codespell tool (Ivan Vecera) [2019055] - net: bridge: notify switchdev of disappearance of old FDB entry upon migration (Ivan Vecera) [2019055] - bridge: Fix a deadlock when enabling multicast snooping (Ivan Vecera) [2019055] - bridge: mrp: Implement LC mode for MRP (Ivan Vecera) [2019055] - net: bridge: switch to net core statistics counters handling (Ivan Vecera) [2019055] - net: bridge: replace struct br_vlan_stats with pcpu_sw_netstats (Ivan Vecera) [2019055] - bridge: mrp: Use hlist_head instead of list_head for mrp (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 *,g auto-add (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exclude timeout (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> allow report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> allow report (Ivan Vecera) [2019055] - selftests: net: bridge: add initial MLDv2 include test (Ivan Vecera) [2019055] - selftests: net: bridge: factor out and rename sg state functions (Ivan Vecera) [2019055] - selftests: net: lib: add support for IPv6 mcast packet test (Ivan Vecera) [2019055] - selftests: net: bridge: factor out mcast_packet_test (Ivan Vecera) [2019055] - net: bridge: mcast: fix stub definition of br_multicast_querier_exists (Ivan Vecera) [2019055] - net: bridge: explicitly convert between mdb entry state and port group flags (Ivan Vecera) [2019055] - net: bridge: mcast: add support for raw L2 multicast groups (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 *,g auto-add (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exclude timeout (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> allow report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add tests for igmpv3 is_include and inc -> allow reports (Ivan Vecera) [2019055] - selftests: net: bridge: igmp: add IGMPv3 entries' state helpers (Ivan Vecera) [2019055] - selftests: net: bridge: igmp: check for specific udp ip protocol (Ivan Vecera) [2019055] - selftests: net: bridge: igmp: add support for packet source address (Ivan Vecera) [2019055] - selftests: net: bridge: rename current igmp tests to igmpv2 (Ivan Vecera) [2019055] - net: bridge: fix uninitialized variables when BRIDGE_CFM is disabled (Ivan Vecera) [2019055] - bridge: cfm: Netlink Notifications. (Ivan Vecera) [2019055] - bridge: cfm: Netlink GET status Interface. (Ivan Vecera) [2019055] - bridge: cfm: Netlink GET configuration Interface. (Ivan Vecera) [2019055] - bridge: cfm: Netlink SET configuration Interface. (Ivan Vecera) [2019055] - bridge: cfm: Kernel space implementation of CFM. CCM frame RX added. (Ivan Vecera) [2019055] - bridge: cfm: Kernel space implementation of CFM. CCM frame TX added. (Ivan Vecera) [2019055] - bridge: cfm: Kernel space implementation of CFM. MEP create/delete. (Ivan Vecera) [2019055] - bridge: uapi: cfm: Added EtherType used by the CFM protocol. (Ivan Vecera) [2019055] - bridge: cfm: Add BRIDGE_CFM to Kconfig. (Ivan Vecera) [2019055] - net: bridge: extend the process of special frames (Ivan Vecera) [2019055] - bridge: Netlink interface fix. (Ivan Vecera) [2019055] - net: bridge: mcast: remove only S,G port groups from sg_port hash (Ivan Vecera) [2019055] - net: switchdev: Fixed kerneldoc warning (Ivan Vecera) [2019055] - net: bridge: mcast: when forwarding handle filter mode and blocked flag (Ivan Vecera) [2019055] - net: bridge: mcast: handle host state (Ivan Vecera) [2019055] - net: bridge: mcast: add support for blocked port groups (Ivan Vecera) [2019055] - net: bridge: mcast: handle port group filter modes (Ivan Vecera) [2019055] - net: bridge: mcast: install S,G entries automatically based on reports (Ivan Vecera) [2019055] - net: bridge: mcast: add sg_port rhashtable (Ivan Vecera) [2019055] - net: bridge: mcast: add rt_protocol field to the port group struct (Ivan Vecera) [2019055] - net: bridge: mcast: when igmpv3/mldv2 are enabled lookup (S,G) first, then (*,G) (Ivan Vecera) [2019055] - net: bridge: mdb: add support for add/del/dump of entries with source (Ivan Vecera) [2019055] - net: bridge: mdb: add support to extend add/del commands (Ivan Vecera) [2019055] - net: bridge: mcast: rename br_ip's u member to dst (Ivan Vecera) [2019055] - net: bridge: mcast: use br_ip's src for src groups and querier address (Ivan Vecera) [2019055] - net: bridge: add src field to br_ip (Ivan Vecera) [2019055] - net: bridge: mdb: use extack in br_mdb_add() and br_mdb_add_group() (Ivan Vecera) [2019055] - net: bridge: mdb: move all port and bridge checks to br_mdb_add (Ivan Vecera) [2019055] - net: bridge: mdb: use extack in br_mdb_parse() (Ivan Vecera) [2019055] - net: bridge: delete duplicated words (Ivan Vecera) [2019055] - net: bridge: mcast: don't ignore return value of __grp_src_toex_excl (Ivan Vecera) [2019055] - __netif_receive_skb_core: don't untag vlan from skb on DSA master (Ivan Vecera) [2019055] - bridge: mcast: Fix incomplete MDB dump (Ivan Vecera) [2019055] - net: bridge: mcast: fix unused br var when lockdep isn't defined (Ivan Vecera) [2019055] - net: bridge: mcast: destroy all entries via gc (Ivan Vecera) [2019055] - net: bridge: mcast: improve IGMPv3/MLDv2 query processing (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPV3/MLDv2 BLOCK_OLD_SOURCES report (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPV3/MLDv2 CHANGE_TO_INCLUDE/EXCLUDE report (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPV3/MLDv2 MODE_IS_INCLUDE/EXCLUDE report (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPv3/MLDv2 ALLOW_NEW_SOURCES report (Ivan Vecera) [2019055] - net: bridge: mcast: delete expired port groups without srcs (Ivan Vecera) [2019055] - net: bridge: mdb: use mdb and port entries in notifications (Ivan Vecera) [2019055] - net: bridge: mdb: push notifications in __br_mdb_add/del (Ivan Vecera) [2019055] - net: bridge: mcast: add support for group query retransmit (Ivan Vecera) [2019055] - net: bridge: mcast: add support for group-and-source specific queries (Ivan Vecera) [2019055] - net: bridge: mcast: add support for src list and filter mode dumping (Ivan Vecera) [2019055] - net: bridge: mcast: add support for group source list (Ivan Vecera) [2019055] - net: bridge: mcast: factor out port group del (Ivan Vecera) [2019055] - net: bridge: mdb: arrange internal structs so fast-path fields are close (Ivan Vecera) [2019055] - netlink: consistently use NLA_POLICY_EXACT_LEN() (Ivan Vecera) [2019055] - net: bridge: Add port attribute IFLA_BRPORT_MRP_IN_OPEN (Ivan Vecera) [2019055] - bridge: mrp: Extend br_mrp_fill_info (Ivan Vecera) [2019055] - bridge: uapi: mrp: Extend MRP_INFO attributes for interconnect status (Ivan Vecera) [2019055] - bridge: mrp: Extend MRP netlink interface for configuring MRP interconnect (Ivan Vecera) [2019055] - bridge: mrp: Implement the MRP Interconnect API (Ivan Vecera) [2019055] - bridge: switchdev: mrp: Extend MRP API for switchdev for MRP Interconnect (Ivan Vecera) [2019055] - bridge: mrp: Add br_mrp_in_port_open function (Ivan Vecera) [2019055] - bridge: mrp: Rename br_mrp_port_open to br_mrp_ring_port_open (Ivan Vecera) [2019055] - bridge: mrp: Extend br_mrp for MRP interconnect (Ivan Vecera) [2019055] - bridge: mrp: Extend bridge interface (Ivan Vecera) [2019055] - bridge: uapi: mrp: Extend MRP attributes for MRP interconnect (Ivan Vecera) [2019055] - switchdev: mrp: Extend switchdev API for MRP Interconnect (Ivan Vecera) [2019055] - net: bridge: fix undefined br_vlan_can_enter_range in tunnel code (Ivan Vecera) [2019055] - net: switchdev: kerneldoc fixes (Ivan Vecera) [2019055] - net: bridge: notify on vlan tunnel changes done via the old api (Ivan Vecera) [2019055] - bridge: Extend br_fill_ifinfo to return MPR status (Ivan Vecera) [2019055] - bridge: mrp: Add br_mrp_fill_info (Ivan Vecera) [2019055] - bridge: uapi: mrp: Extend MRP attributes to get the status (Ivan Vecera) [2019055] - bridge: mrp: Fix endian conversion and some other warnings (Ivan Vecera) [2019055] - net: bridge: add a flag to avoid refreshing fdb when changing/adding (Ivan Vecera) [2019055] - net: bridge: add option to allow activity notifications for any fdb entries (Ivan Vecera) [2019055] - net: neighbor: add fdb extended attribute (Ivan Vecera) [2019055] - net: bridge: fdb_add_entry takes ndm as argument (Ivan Vecera) [2019055] - bridge: mrp: Validate when setting the port role (Ivan Vecera) [2019055] - bridge: uapi: mrp: Fix MRP_PORT_ROLE (Ivan Vecera) [2019055] - bridge: mrp: Add support for role MRA (Ivan Vecera) [2019055] - bridge: mrp: Set the priority of MRP instance (Ivan Vecera) [2019055] - bridge: mrp: Update MRP frame type (Ivan Vecera) [2019055] - bridge: multicast: work around clang bug (Ivan Vecera) [2019055] - bridge: mrp: Rework the MRP netlink interface (Ivan Vecera) [2019055] - bridge: mrp: Fix out-of-bounds read in br_mrp_parse (Ivan Vecera) [2019055] - bridge: mrp: Restore port state when deleting MRP instance (Ivan Vecera) [2019055] - switchdev: mrp: Remove the variable mrp_ring_state (Ivan Vecera) [2019055] - bridge: mrp: Add br_mrp_unique_ifindex function (Ivan Vecera) [2019055] - net: bridge: allow enslaving some DSA master network devices (Ivan Vecera) [2019055] - net: remove newlines in NL_SET_ERR_MSG_MOD (Ivan Vecera) [2019055] - net: bridge: return false in br_mrp_enabled() (Ivan Vecera) [2019055] - docs: networking: convert switchdev.txt to ReST (Ivan Vecera) [2019055] - net: bridge: Add checks for enabling the STP. (Ivan Vecera) [2019055] - bridge: mrp: Integrate MRP into the bridge (Ivan Vecera) [2019055] - bridge: mrp: Implement netlink interface to configure MRP (Ivan Vecera) [2019055] - bridge: mrp: Connect MRP API with the switchdev API (Ivan Vecera) [2019055] - bridge: switchdev: mrp: Implement MRP API for switchdev (Ivan Vecera) [2019055] - switchdev: mrp: Extend switchdev API to offload MRP (Ivan Vecera) [2019055] - bridge: mrp: Add MRP interface. (Ivan Vecera) [2019055] - net: bridge: Add port attribute IFLA_BRPORT_MRP_RING_OPEN (Ivan Vecera) [2019055] - bridge: mrp: Extend bridge interface (Ivan Vecera) [2019055] - bridge: mrp: Update Kconfig (Ivan Vecera) [2019055] - bridge: uapi: mrp: Add mrp attributes. (Ivan Vecera) [2019055] - net: bridge: vlan options: move the tunnel command to the nested attribute (Ivan Vecera) [2019055] - net: bridge: vlan options: nest the tunnel id into a tunnel info attribute (Ivan Vecera) [2019055] - net: bridge: vlan: include stats in dumps if requested (Ivan Vecera) [2019055] - net: bridge: vlan options: add support for tunnel mapping set/del (Ivan Vecera) [2019055] - net: bridge: vlan options: add support for tunnel id dumping (Ivan Vecera) [2019055] - net: bridge: vlan tunnel: constify bridge and port arguments (Ivan Vecera) [2019055] - net: bridge: vlan options: rename br_vlan_opts_eq to br_vlan_opts_eq_range (Ivan Vecera) [2019055] - net: switchdev: do not propagate bridge updates across bridges (Ivan Vecera) [2019055] - bridge: br_stp: Use built-in RCU list checking (Ivan Vecera) [2019055] - net: switchdev: Replace zero-length array with flexible-array member (Ivan Vecera) [2019055] - net: bridge: vlan: add per-vlan state (Ivan Vecera) [2019055] - net: bridge: vlan: add basic option setting support (Ivan Vecera) [2019055] - net: bridge: vlan: add basic option dumping support (Ivan Vecera) [2019055] - net: bridge: check port state before br_allowed_egress (Ivan Vecera) [2019055] - net: bridge: vlan: notify on vlan add/delete/change flags (Ivan Vecera) [2019055] - net: bridge: vlan: add rtnetlink group and notify support (Ivan Vecera) [2019055] - net: bridge: vlan: add rtm range support (Ivan Vecera) [2019055] - net: bridge: vlan: add del rtm message support (Ivan Vecera) [2019055] - net: bridge: vlan: add new rtm message support (Ivan Vecera) [2019055] - net: bridge: vlan: add rtm definitions and dump support (Ivan Vecera) [2019055] - net: bridge: netlink: add extack error messages when processing vlans (Ivan Vecera) [2019055] - net: bridge: vlan: add helpers to check for vlan id/range validity (Ivan Vecera) [2019055] - net: bridge: add STP xstats (Ivan Vecera) [2019055] - treewide: Use sizeof_field() macro (Ivan Vecera) [2019055] - bridge: implement get_link_ksettings ethtool method (Ivan Vecera) [2019055] - net: bridge: fdb: eliminate extra port state tests from fast-path (Ivan Vecera) [2019055] - net: bridge: fdb: restore unlikely() when taking over externally added entries (Ivan Vecera) [2019055] - net: bridge: fdb: avoid two atomic bitops in br_fdb_external_learn_add() (Ivan Vecera) [2019055] - net: bridge: fdb: br_fdb_update can take flags directly (Ivan Vecera) [2019055] - net: bridge: Populate the pvid flag in br_vlan_get_info (Ivan Vecera) [2019055] - net: fix __ip_mc_inc_group usage (Ivan Vecera) [2019055] - net: bridge: mdb: allow add/delete for host-joined groups (Ivan Vecera) [2019055] - net: bridge: mdb: dump host-joined entries as well (Ivan Vecera) [2019055] - net: bridge: mdb: factor out mdb filling (Ivan Vecera) [2019055] - net: bridge: mdb: move vlan comments (Ivan Vecera) [2019055] - net: bridge: mcast: add delete due to fast-leave mdb flag (Ivan Vecera) [2019055] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Ivan Vecera) [2019055] - treewide: Add SPDX license identifier for missed files (Ivan Vecera) [2019055] - treewide: Add SPDX license identifier - Makefile/Kconfig (Ivan Vecera) [2019055] - bridge: Fix error path for kobject_init_and_add() (Ivan Vecera) [2019055] - bridge: only include nf_queue.h if needed (Ivan Vecera) [2019055] - bridge: broute: make broute a real ebtables table (Ivan Vecera) [2019055] - bridge: netfilter: unroll NF_HOOK helper in bridge input path (Ivan Vecera) [2019055] - bridge: reduce size of input cb to 16 bytes (Ivan Vecera) [2019055] - net: bridge: update multicast stats from maybe_deliver() (Ivan Vecera) [2019055] - net: bridge: mcast: remove unused br_ip_equal function (Ivan Vecera) [2019055] - net: bridge: optimize backup_port fdb convergence (Ivan Vecera) [2019055] - net: bridge: use netif_is_bridge_port() (Ivan Vecera) [2019055] - net: bridge: use eth_broadcast_addr() to assign broadcast address (Ivan Vecera) [2019055] - tools headers uapi: Update linux/in.h copy (Ivan Vecera) [2019055] - switchdev: Remove unused transaction item queue (Ivan Vecera) [2019055] - bridge: remove redundant check on err in br_multicast_ipv4_rcv (Ivan Vecera) [2019055] - net: Fix ip_mc_{dec,inc}_group allocation context (Ivan Vecera) [2019055] - bridge: remove duplicated include from br_multicast.c (Ivan Vecera) [2019055] - bridge: Snoop Multicast Router Advertisements (Ivan Vecera) [2019055] - bridge: join all-snoopers multicast address (Ivan Vecera) [2019055] - bridge: simplify ip_mc_check_igmp() and ipv6_mc_check_mld() internals (Ivan Vecera) [2019055] - tools include uapi: Sync linux/if_link.h copy with the kernel sources (Ivan Vecera) [2019055] - net: bridge: fix a bug on using a neighbour cache entry without checking its state (Ivan Vecera) [2019055] - net: bridge: remove unneeded variable 'err' (Ivan Vecera) [2019055] - net: bridge: remove redundant checks for null p->dev and p->br (Ivan Vecera) [2019055] - net: bridge: export supported boolopts (Ivan Vecera) [2019055] - net: bridge: add no_linklocal_learn bool option (Ivan Vecera) [2019055] - net: bridge: add support for user-controlled bool options (Ivan Vecera) [2019055] - bridge: use __vlan_hwaccel helpers (Ivan Vecera) [2019055] - netfilter: bridge: define INT_MIN & INT_MAX in userspace (Ivan Vecera) [2019055] - docs: fix some broken documentation references (Ivan Vecera) [2019055] - bridge: Switch to bitmap_zalloc() (Ivan Vecera) [2019055] - netfilter: bridge: Expose nf_tables bridge hook priorities through uapi (Ivan Vecera) [2019055] - net: bridge: add support for backup port (Ivan Vecera) [2019055] - net: bridge: add support for raw sysfs port options (Ivan Vecera) [2019055] - docs: networking: Convert bridge.txt to rst (Ivan Vecera) [2019055] - net: switchdev: consolidate RH_KABI macros usage (Ivan Vecera) [2019055] - kcov: Remove kcov include from sched.h and move it to its users. (Josef Oskera) [2026467] - tasklets: Provide tasklet_disable_in_atomic() (Ivan Vecera) [2026475] - tasklets: Use static inlines for stub implementations (Ivan Vecera) [2026475] - net: sock: introduce sk_error_report (Ivan Vecera) [2026469] - redhat: Add CONFIG_RHEL_DIFFERENCES (Prarit Bhargava) [2021571]- serial: 8520_port: Fix function param documentation (Waiman Long) [1970241] - serial: 8250: Optimize irq enable after console write (Waiman Long) [1970241] - serial: 8250: Fix rs485 delay after console write (Waiman Long) [1970241] - serial: 8250: Support console on software emulated rs485 ports (Waiman Long) [1970241] - serial: 8250: Generalize rs485 software emulation (Waiman Long) [1970241] - serial: 8250: Deduplicate rs485 active_timer assignment (Waiman Long) [1970241] - serial: 8250: Sanitize rs485 config harder (Waiman Long) [1970241] - serial: 8250: Deduplicate ->rs485_config() callback (Waiman Long) [1970241] - serial: 8250: Support rs485 devicetree properties (Waiman Long) [1970241] - serial: 8250_port: Don't use power management for kernel console (Waiman Long) [1970241] - console: Introduce ->exit() callback (Waiman Long) [1970241] - console: Don't notify user space when unregister non-listed console (Waiman Long) [1970241] - tty: 8250_of: Use software emulated RS485 direction control (Waiman Long) [1970241] - serial: 8250: Add MSR/MCR TIOCM conversion wrapper functions (Waiman Long) [1970241] - serial: 8250_of: Use of_device_get_match_data() (Waiman Long) [1970241] - serial: 8250_of: Fix for lack of interrupt support (Waiman Long) [1970241] - serial: 8250: of: Defer probe on missing IRQ (Waiman Long) [1970241] - serial: 8250: of: Correct of_platform_serial_setup() error handling (Waiman Long) [1970241] - mm/vmstat: protect per cpu variables with preempt disable on RT (Scott Wood) [2011667] - mm, slub: convert kmem_cpu_slab protection to local_lock (Scott Wood) [2011667] - mm, slub: use migrate_disable() on PREEMPT_RT (Scott Wood) [2011667] - mm, slub: protect put_cpu_partial() with disabled irqs instead of cmpxchg (Scott Wood) [2011667] - mm, slub: make slab_lock() disable irqs with PREEMPT_RT (Scott Wood) [2011667] - mm: slub: make object_map_lock a raw_spinlock_t (Scott Wood) [2011667] - mm: slub: move flush_cpu_slab() invocations __free_slab() invocations out of IRQ context (Scott Wood) [2011667] - mm, slab: split out the cpu offline variant of flush_slab() (Scott Wood) [2011667] - mm, slub: don't disable irqs in slub_cpu_dead() (Scott Wood) [2011667] - mm, slub: only disable irq with spin_lock in __unfreeze_partials() (Scott Wood) [2011667] - mm, slub: separate detaching of partial list in unfreeze_partials() from unfreezing (Scott Wood) [2011667] - mm, slub: detach whole partial list at once in unfreeze_partials() (Scott Wood) [2011667] - mm, slub: discard slabs in unfreeze_partials() without irqs disabled (Scott Wood) [2011667] - mm, slub: move irq control into unfreeze_partials() (Scott Wood) [2011667] - mm, slub: call deactivate_slab() without disabling irqs (Scott Wood) [2011667] - mm, slub: make locking in deactivate_slab() irq-safe (Scott Wood) [2011667] - mm, slub: move reset of c->page and freelist out of deactivate_slab() (Scott Wood) [2011667] - mm, slub: stop disabling irqs around get_partial() (Scott Wood) [2011667] - mm, slub: check new pages with restored irqs (Scott Wood) [2011667] - mm, slub: validate slab from partial list or page allocator before making it cpu slab (Scott Wood) [2011667] - mm, slub: restore irqs around calling new_slab() (Scott Wood) [2011667] - mm, slub: move disabling irqs closer to get_partial() in ___slab_alloc() (Scott Wood) [2011667] - mm, slub: do initial checks in ___slab_alloc() with irqs enabled (Scott Wood) [2011667] - mm, slub: move disabling/enabling irqs to ___slab_alloc() (Scott Wood) [2011667] - mm, slub: simplify kmem_cache_cpu and tid setup (Scott Wood) [2011667] - mm, slub: restructure new page checks in ___slab_alloc() (Scott Wood) [2011667] - mm, slub: return slab page from get_partial() and set c->page afterwards (Scott Wood) [2011667] - mm, slub: dissolve new_slab_objects() into ___slab_alloc() (Scott Wood) [2011667] - mm, slub: extract get_partial() from new_slab_objects() (Scott Wood) [2011667] - mm, slub: remove redundant unfreeze_partials() from put_cpu_partial() (Scott Wood) [2011667] - mm, slub: don't disable irq for debug_check_no_locks_freed() (Scott Wood) [2011667] - mm, slub: allocate private object map for validate_slab_cache() (Scott Wood) [2011667] - mm, slub: allocate private object map for debugfs listings (Scott Wood) [2011667] - mm, slub: don't call flush_all() from slab_debug_trace_open() (Scott Wood) [2011667] - mm/slub.c: drop lockdep_assert_held() from put_map() (Scott Wood) [2011667] - mm/slub.c: replace cpu_slab->partial with wrapped APIs (Scott Wood) [2011667] - mm/slub.c: replace kmem_cache->cpu_partial with wrapped APIs (Scott Wood) [2011667] - sched/rt, mm: Use CONFIG_PREEMPTION (Scott Wood) [2011667] - tcp: fix page frag corruption on page fault (Paolo Abeni) [1996074] - net: fix sk_page_frag() recursion from memory reclaim (Paolo Abeni) [1996074] - net: udp6: replace __UDP_INC_STATS() with __UDP6_INC_STATS() (Xin Long) [2020407] - net: udp: annotate data race around udp_sk(sk)->corkflag (Xin Long) [2020407] - net/ipv4/udp_tunnel_core.c: remove superfluous header files from udp_tunnel_core.c (Xin Long) [2020407] - udp_tunnel: Fix udp_tunnel_nic work-queue type (Xin Long) [2020407] - net, gro: Set inner transport header offset in tcp/udp GRO hook (Xin Long) [2020407] - bareudp: Add extack support to bareudp_configure() (Guillaume Nault) [1946040] - bareudp: Move definition of struct bareudp_conf to bareudp.c (Guillaume Nault) [1946040] - bareudp: Remove bareudp_dev_create() (Guillaume Nault) [1946040] - net: bareudp: simplify error paths calling dellink (Guillaume Nault) [1946040] - mptcp: re-arm retransmit timer if data is pending (Paolo Abeni) [2019493] - mptcp: remove tx_pending_data (Paolo Abeni) [2019493] - mptcp: do not shrink snd_nxt when recovering (Paolo Abeni) [2019493] - mptcp: drop unused sk in mptcp_push_release (Paolo Abeni) [2019493] - selftests: mptcp: fix proto type in link_failure tests (Paolo Abeni) [2019493] - selftests: mptcp: add testcase for active-back (Paolo Abeni) [2019493] - mptcp: backup flag from incoming MPJ ack option (Paolo Abeni) [2019493] - mptcp: add mibs for stale subflows processing (Paolo Abeni) [2019493] - mptcp: faster active backup recovery (Paolo Abeni) [2019493] - mptcp: cleanup sysctl data and helpers (Paolo Abeni) [2019493] - mptcp: handle pending data on closed subflow (Paolo Abeni) [2019493] - mptcp: less aggressive retransmission strategy (Paolo Abeni) [2019493] - mptcp: more accurate timeout (Paolo Abeni) [2019493] - mptcp: stop relying on tcp_tx_skb_cache (Paolo Abeni) [2019493] - tcp: expose the tcp_mark_push() and tcp_skb_entail() helpers (Paolo Abeni) [2019493] - selftests: KVM: avoid failures due to reserved HyperTransport region (Vitaly Kuznetsov) [2009340] - KVM: X86: Fix when shadow_root_level=5 && guest root_level<4 (Vitaly Kuznetsov) [2009340] - KVM: x86: inhibit APICv when KVM_GUESTDBG_BLOCKIRQ active (Vitaly Kuznetsov) [2009340] - KVM: x86/xen: Fix get_attr of KVM_XEN_ATTR_TYPE_SHARED_INFO (Vitaly Kuznetsov) [2009340] - KVM: x86: Use rw_semaphore for APICv lock to allow vCPU parallelism (Vitaly Kuznetsov) [2009340] - KVM: selftests: test KVM_GUESTDBG_BLOCKIRQ (Vitaly Kuznetsov) [2009340] - x86/sgx/virt: implement SGX_IOC_VEPC_REMOVE ioctl (Vitaly Kuznetsov) [2009340] - x86/sgx/virt: extract sgx_vepc_remove_page (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Complete prefetch for trailing SPTEs for direct, legacy MMU (Vitaly Kuznetsov) [2009340] - KVM: x86: Do not mark all registers as avail/dirty during RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: SVM: don't set VMLOAD/VMSAVE intercepts on vCPU reset (Vitaly Kuznetsov) [2009340] - KVM: VMX: Unregister posted interrupt wakeup handler on hardware unsetup (Vitaly Kuznetsov) [2009340] - Revert "x86/kvm: fix vcpu-id indexed array sizes" (Vitaly Kuznetsov) [2009340] - KVM: X86: Cache CR3 in prev_roots when PCID is disabled (Vitaly Kuznetsov) [2009340] - KVM: X86: Fix tlb flush for tdp in kvm_invalidate_pcid() (Vitaly Kuznetsov) [2009340] - KVM: X86: Don't reset mmu context when toggling X86_CR4_PGE (Vitaly Kuznetsov) [2009340] - KVM: X86: Don't reset mmu context when X86_CR4_PCIDE 1->0 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: kvm_faultin_pfn has to return false if pfh is returned (Vitaly Kuznetsov) [2009340] - KVM: x86: Take srcu lock in post_kvm_run_save() (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: fix another issue with string I/O VMGEXITs (Vitaly Kuznetsov) [2009340] - KVM: x86/xen: Fix kvm_xen_has_interrupt() sleeping in kvm_vcpu_block() (Vitaly Kuznetsov) [2009340] - KVM: x86: switch pvclock_gtod_sync_lock to a raw spinlock (Vitaly Kuznetsov) [2009340] - KVM: selftests: Refactor help message for -s backing_src (Vitaly Kuznetsov) [2009340] - KVM: selftests: Change backing_src flag to -s in demand_paging_test (Vitaly Kuznetsov) [2009340] - tools headers UAPI: Sync x86's asm/kvm.h with the kernel sources (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: go over the sev_pio_data buffer in multiple passes if needed (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: keep INS functions together (Vitaly Kuznetsov) [2009340] - KVM: x86: remove unnecessary arguments from complete_emulator_pio_in (Vitaly Kuznetsov) [2009340] - KVM: x86: split the two parts of emulator_pio_in (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: clean up kvm_sev_es_ins/outs (Vitaly Kuznetsov) [2009340] - KVM: x86: leave vcpu->arch.pio.count alone in emulator_pio_in_out (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: rename guest_ins_data to sev_pio_data (Vitaly Kuznetsov) [2009340] - KVM: SEV: Flush cache on non-coherent systems before RECEIVE_UPDATE_DATA (Vitaly Kuznetsov) [2009340] - KVM: MMU: Reset mmu->pkru_mask to avoid stale data (Vitaly Kuznetsov) [2009340] - KVM: nVMX: promptly process interrupts delivered while in guest mode (Vitaly Kuznetsov) [2009340] - KVM: x86: check for interrupts before deciding whether to exit the fast path (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: reduce ghcb_sa_len to 32 bits (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove redundant handling of bus lock vmexit (Vitaly Kuznetsov) [2009340] - KVM: x86: WARN if APIC HW/SW disable static keys are non-zero on unload (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: fix length of string I/O (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: Set guest_state_protected after VMSA update (Vitaly Kuznetsov) [2009340] - KVM: kvm_stat: do not show halt_wait_ns (Vitaly Kuznetsov) [2009340] - Revert "KVM: x86: Open code necessary bits of kvm_lapic_set_base() at vCPU RESET" (Vitaly Kuznetsov) [2009340] - KVM: s390: restore old debugfs names (Vitaly Kuznetsov) [2009340] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Vitaly Kuznetsov) [2009340] - tools headers UAPI: Synch KVM's svm.h header with the kernel (Vitaly Kuznetsov) [2009340] - KVM: selftests: introduce P44V64 for z196 and EC12 (Vitaly Kuznetsov) [2009340] - KVM: selftests: introduce P47V64 for s390x (Vitaly Kuznetsov) [2009340] - x86/sev: Use "SEV: " prefix for messages from sev.c (Vitaly Kuznetsov) [2009340] - KVM: stats: remove dead stores (Vitaly Kuznetsov) [2009340] - kvm: x86: Add AMD PMU MSRs to msrs_to_save_all[] (Vitaly Kuznetsov) [2009340] - kvm: fix objtool relocation warning (Vitaly Kuznetsov) [2009340] - KVM: selftests: Ensure all migrations are performed when test is affined (Vitaly Kuznetsov) [2009340] - KVM: x86: Swap order of CPUID entry "index" vs. "significant flag" checks (Vitaly Kuznetsov) [2009340] - x86/kvmclock: Move this_cpu_pvti into kvmclock.h (Vitaly Kuznetsov) [2009340] - selftests: KVM: Don't clobber XMM register when read (Vitaly Kuznetsov) [2009340] - KVM: VMX: Fix a TSX_CTRL_CPUID_CLEAR field mask issue (Vitaly Kuznetsov) [2009340] - selftests: KVM: Explicitly use movq to read xmm registers (Vitaly Kuznetsov) [2009340] - selftests: KVM: Call ucall_init when setting up in rseq_test (Vitaly Kuznetsov) [2009340] - KVM: X86: Synchronize the shadow pagetable before link it (Vitaly Kuznetsov) [2009340] - KVM: X86: Fix missed remote tlb flush in rmap_write_protect() (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: don't copy virt_ext from vmcb12 (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: test eax for 4K alignment for GP errata workaround (Vitaly Kuznetsov) [2009340] - KVM: x86: selftests: test simultaneous uses of V_IRQ from L1 and L0 (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: restore int_vector in svm_clear_vintr (Vitaly Kuznetsov) [2009340] - KVM: x86: nVMX: re-evaluate emulation_required on nested VM exit (Vitaly Kuznetsov) [2009340] - KVM: x86: nVMX: don't fail nested VM entry on invalid guest state if !from_vmentry (Vitaly Kuznetsov) [2009340] - KVM: x86: VMX: synthesize invalid VM exit when emulating invalid guest state (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: refactor svm_leave_smm and smm_enter_smm (Vitaly Kuznetsov) [2009340] - KVM: x86: SVM: call KVM_REQ_GET_NESTED_STATE_PAGES on exit from SMM mode (Vitaly Kuznetsov) [2009340] - KVM: x86: reset pdptrs_from_userspace when exiting smm (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: restore the L1 host state prior to resuming nested guest on SMM exit (Vitaly Kuznetsov) [2009340] - KVM: KVM: Use cpumask_available() to check for NULL cpumask when kicking vCPUs (Vitaly Kuznetsov) [2009340] - KVM: Clean up benign vcpu->cpu data races when kicking vCPUs (Vitaly Kuznetsov) [2009340] - KVM: x86: Fix stack-out-of-bounds memory access from ioapic_write_indirect() (Vitaly Kuznetsov) [2009340] - KVM: selftests: Create a separate dirty bitmap per slot (Vitaly Kuznetsov) [2009340] - KVM: SEV: Allow some commands for mirror VM (Vitaly Kuznetsov) [2009340] - KVM: SEV: Update svm_vm_copy_asid_from for SEV-ES (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Fix nested bus lock VM exit (Vitaly Kuznetsov) [2009340] - KVM: x86: Identify vCPU0 by its vcpu_idx instead of its vCPUs array entry (Vitaly Kuznetsov) [2009340] - KVM: x86: Query vcpu->vcpu_idx directly and drop its accessor (Vitaly Kuznetsov) [2009340] - kvm: fix wrong exception emulation in check_rdtsc (Vitaly Kuznetsov) [2009340] - KVM: SEV: Pin guest memory for write for RECEIVE_UPDATE_DATA (Vitaly Kuznetsov) [2009340] - KVM: SVM: fix missing sev_decommission in sev_receive_start (Vitaly Kuznetsov) [2009340] - KVM: SEV: Acquire vcpu mutex when updating VMSA (Vitaly Kuznetsov) [2009340] - KVM: do not shrink halt_poll_ns below grow_start (Vitaly Kuznetsov) [2009340] - KVM: nVMX: fix comments of handle_vmon() (Vitaly Kuznetsov) [2009340] - KVM: x86: Handle SRCU initialization failure during page track init (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove defunct "nr_active_uret_msrs" field (Vitaly Kuznetsov) [2009340] - selftests: KVM: Align SMCCC call with the spec in steal_time (Vitaly Kuznetsov) [2009340] - selftests: KVM: Fix check for !POLLIN in demand_paging_test (Vitaly Kuznetsov) [2009340] - KVM: x86: Clear KVM's cached guest CR3 at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: Mark all registers as avail/dirty at vCPU creation (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add a test for KVM_RUN+rseq to detect task migration bugs (Vitaly Kuznetsov) [2009340] - tools: Move x86 syscall number fallbacks to .../uapi/ (Vitaly Kuznetsov) [2009340] - selftests: kvm: fix get_run_delay() ignoring fscanf() return warn (Vitaly Kuznetsov) [2009340] - selftests: kvm: move get_run_delay() into lib/test_util (Vitaly Kuznetsov) [2009340] - selftests:kvm: fix get_trans_hugepagesz() ignoring fscanf() return warn (Vitaly Kuznetsov) [2009340] - selftests:kvm: fix get_warnings_count() ignoring fscanf() return warn (Vitaly Kuznetsov) [2009340] - tools: rename bitmap_alloc() to bitmap_zalloc() (Vitaly Kuznetsov) [2009340] - KVM: Drop unused kvm_dirty_gfn_invalid() (Vitaly Kuznetsov) [2009340] - KVM: MMU: mark role_regs and role accessors as maybe unused (Vitaly Kuznetsov) [2009340] - x86/kvm: Don't enable IRQ when IRQ enabled in kvm_wait (Vitaly Kuznetsov) [2009340] - KVM: stats: Add VM stat for remote tlb flush requests (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Move lpage_disallowed_link further "down" in kvm_mmu_page (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Relocate kvm_mmu_page.tdp_mmu_page for better cache locality (Vitaly Kuznetsov) [2009340] - Revert "KVM: x86: mmu: Add guest physical address check in translate_gpa()" (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove unused field mmio_cached in struct kvm_mmu_page (Vitaly Kuznetsov) [2009340] - KVM: VMX: avoid running vmx_handle_exit_irqoff in case of emulation (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't freak out if pml5_root is NULL on 4-level host (Vitaly Kuznetsov) [2009340] - KVM: SVM: Add 5-level page table support for SVM (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Support shadowing NPT when 5-level paging is enabled in host (Vitaly Kuznetsov) [2009340] - KVM: x86: Allow CPU to force vendor-specific TDP level (Vitaly Kuznetsov) [2009340] - KVM: x86: clamp host mapping level to max_level in kvm_mmu_max_mapping_level (Vitaly Kuznetsov) [2009340] - KVM: x86: implement KVM_GUESTDBG_BLOCKIRQ (Vitaly Kuznetsov) [2009340] - KVM: SVM: split svm_handle_invalid_exit (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Avoid collision with !PRESENT SPTEs in TDP MMU lpage stats (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant spte present check in mmu_set_spte (Vitaly Kuznetsov) [2009340] - KVM: stats: Add halt polling related histogram stats (Vitaly Kuznetsov) [2009340] - KVM: stats: Add halt_wait_ns stats for all architectures (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add checks for histogram stats bucket_size field (Vitaly Kuznetsov) [2009340] - KVM: stats: Update doc for histogram statistics (Vitaly Kuznetsov) [2009340] - KVM: stats: Support linear and logarithmic histogram statistics (Vitaly Kuznetsov) [2009340] - KVM: SVM: AVIC: drop unsupported AVIC base relocation code (Vitaly Kuznetsov) [2009340] - KVM: SVM: call avic_vcpu_load/avic_vcpu_put when enabling/disabling AVIC (Vitaly Kuznetsov) [2009340] - KVM: SVM: move check for kvm_vcpu_apicv_active outside of avic_vcpu_{put|load} (Vitaly Kuznetsov) [2009340] - KVM: SVM: avoid refreshing avic if its state didn't change (Vitaly Kuznetsov) [2009340] - KVM: SVM: remove svm_toggle_avic_for_irq_window (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Deactivate APICv only when AutoEOI feature is in use (Vitaly Kuznetsov) [2009340] - KVM: SVM: add warning for mistmatch between AVIC vcpu state and AVIC inhibition (Vitaly Kuznetsov) [2009340] - KVM: x86: APICv: fix race in kvm_request_apicv_update on SVM (Vitaly Kuznetsov) [2009340] - KVM: x86: don't disable APICv memslot when inhibited (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: allow APICv memslot to be enabled but invisible (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: allow kvm_faultin_pfn to return page fault handling code (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: rename try_async_pf to kvm_faultin_pfn (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: add comment explaining arguments to kvm_zap_gfn_range (Vitaly Kuznetsov) [2009340] - KVM: Allow to have arch-specific per-vm debugfs files (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Unconditionally clear nested.pi_pending on nested VM-Enter (Vitaly Kuznetsov) [2009340] - KVM: x86: Clean up redundant ROL16(val, n) macro definition (Vitaly Kuznetsov) [2009340] - KVM: x86: Move declaration of kvm_spurious_fault() to x86.h (Vitaly Kuznetsov) [2009340] - KVM: x86: Kill off __ex() and __kvm_handle_fault_on_reboot() (Vitaly Kuznetsov) [2009340] - KVM: VMX: Hide VMCS control calculators in vmx.c (Vitaly Kuznetsov) [2009340] - KVM: VMX: Drop caching of KVM's desired sec exec controls for vmcs01 (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Pull KVM L0's desired controls directly from vmcs01 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Reset DR6 only when KVM_DEBUGREG_WONT_EXIT (Vitaly Kuznetsov) [2009340] - KVM: X86: Set host DR6 only on VMX and for KVM_DEBUGREG_WONT_EXIT (Vitaly Kuznetsov) [2009340] - KVM: X86: Remove unneeded KVM_DEBUGREG_RELOAD (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Use vmx_need_pf_intercept() when deciding if L0 wants a #PF (Vitaly Kuznetsov) [2009340] - kvm: vmx: Sync all matching EPTPs when injecting nested EPT fault (Vitaly Kuznetsov) [2009340] - KVM: x86: remove dead initialization (Vitaly Kuznetsov) [2009340] - KVM: x86: Allow guest to set EFER.NX=1 on non-PAE 32-bit kernels (Vitaly Kuznetsov) [2009340] - x86: Fix typo s/ECLR/ELCR/ for the PIC register (Vitaly Kuznetsov) [2009340] - KVM: VMX: Use current VMCS to query WAITPKG support for MSR emulation (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move vcpu_args_set into perf_test_util (Vitaly Kuznetsov) [2009340] - KVM: selftests: Support multiple slots in dirty_log_perf_test (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Leverage vcpu->last_used_slot for rmap_add and rmap_recycle (Vitaly Kuznetsov) [2009340] - KVM: Cache the last used slot index per vCPU (Vitaly Kuznetsov) [2009340] - KVM: Move last_used_slot logic out of search_memslots (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix per-cpu counter corruption on 32-bit builds (Vitaly Kuznetsov) [2009340] - KVM: xen: do not use struct gfn_to_hva_cache (Vitaly Kuznetsov) [2009340] - KVM: selftests: fix hyperv_clock test (Vitaly Kuznetsov) [2009340] - KVM: SVM: improve the code readability for ASID management (Vitaly Kuznetsov) [2009340] - KVM: SVM: Fix off-by-one indexing when nullifying last used SEV VMCB (Vitaly Kuznetsov) [2009340] - KVM: Do not leak memory for duplicate debugfs directories (Vitaly Kuznetsov) [2009340] - KVM: x86/pmu: Introduce pmc->is_paused to reduce the call time of perf interfaces (Vitaly Kuznetsov) [2009340] - KVM: X86: Optimize zapping rmap (Vitaly Kuznetsov) [2009340] - KVM: X86: Optimize pte_list_desc with per-array counter (Vitaly Kuznetsov) [2009340] - KVM: X86: MMU: Tune PTE_LIST_EXT to be bigger (Vitaly Kuznetsov) [2009340] - KVM: selftests: Test access to XMM fast hypercalls (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Check if guest is allowed to use XMM registers for hypercall input (Vitaly Kuznetsov) [2009340] - KVM: x86: Introduce trace_kvm_hv_hypercall_done() (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Check access to hypercall before reading XMM registers (Vitaly Kuznetsov) [2009340] - KVM: nSVM: remove useless kvm_clear_*_queue (Vitaly Kuznetsov) [2009340] - KVM: x86: Preserve guest's CR0.CD/NW on INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Drop redundant clearing of vcpu->arch.hflags at INIT/RESET (Vitaly Kuznetsov) [2009340] - KVM: SVM: Emulate #INIT in response to triple fault shutdown (Vitaly Kuznetsov) [2009340] - KVM: VMX: Move RESET-only VMWRITE sequences to init_vmcs() (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove redundant write to set vCPU as active at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Smush x2APIC MSR bitmap adjustments into single function (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove unnecessary initialization of msr_bitmap_mode (Vitaly Kuznetsov) [2009340] - KVM: VMX: Don't redo x2APIC MSR bitmaps when userspace filter is changed (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Remove obsolete MSR bitmap refresh at nested transitions (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove obsolete MSR bitmap refresh at vCPU RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: Move setting of sregs during vCPU RESET/INIT to common x86 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Don't _explicitly_ reconfigure user return MSRs on vCPU INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Refresh list of user return MSRs after setting guest CPUID (Vitaly Kuznetsov) [2009340] - KVM: VMX: Skip pointless MSR bitmap update when setting EFER (Vitaly Kuznetsov) [2009340] - KVM: SVM: Stuff save->dr6 at during VMSA sync, not at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Drop redundant writes to vmcb->save.cr4 at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Tweak order of cr0/cr4/efer writes at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Don't evaluate "emulation required" on nested VM-Exit (Vitaly Kuznetsov) [2009340] - KVM: VMX: Skip emulation required checks during pmode/rmode transitions (Vitaly Kuznetsov) [2009340] - KVM: VMX: Process CR0.PG side effects after setting CR0 assets (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Skip the permission_fault() check on MMIO if CR0.PG=0 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Pull GUEST_CR3 from the VMCS iff CR3 load exiting is disabled (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Do not clear CR3 load/store exiting bits if L1 wants 'em (Vitaly Kuznetsov) [2009340] - KVM: VMX: Fold ept_update_paging_mode_cr0() back into vmx_set_cr0() (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove direct write to vcpu->arch.cr0 during vCPU RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Invert handling of CR0.WP for EPT without unrestricted guest (Vitaly Kuznetsov) [2009340] - KVM: SVM: Don't bother writing vmcb->save.rip at vCPU RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: Move EDX initialization at vCPU RESET to common code (Vitaly Kuznetsov) [2009340] - KVM: x86: Consolidate APIC base RESET initialization code (Vitaly Kuznetsov) [2009340] - KVM: x86: Open code necessary bits of kvm_lapic_set_base() at vCPU RESET (Vitaly Kuznetsov) [2009340] - KVM: VMX: Stuff vcpu->arch.apic_base directly at vCPU RESET (Vitaly Kuznetsov) [2009340] - KVM: x86: Set BSP bit in reset BSP vCPU's APIC base by default (Vitaly Kuznetsov) [2009340] - KVM: x86: Don't force set BSP bit when local APIC is managed by userspace (Vitaly Kuznetsov) [2009340] - KVM: x86: Migrate the PIT only if vcpu0 is migrated, not any BSP (Vitaly Kuznetsov) [2009340] - KVM: x86: Remove defunct BSP "update" in local APIC reset (Vitaly Kuznetsov) [2009340] - KVM: x86: WARN if the APIC map is dirty without an in-kernel local APIC (Vitaly Kuznetsov) [2009340] - KVM: SVM: Drop explicit MMU reset at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove explicit MMU reset in enter_rmode() (Vitaly Kuznetsov) [2009340] - KVM: SVM: Fall back to KVM's hardcoded value for EDX at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Require exact CPUID.0x1 match when stuffing EDX at INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Set EDX at INIT with CPUID.0x1, Family-Model-Stepping (Vitaly Kuznetsov) [2009340] - KVM: SVM: Zero out GDTR.base and IDTR.base on INIT (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Set LDTR to its architecturally defined value on nested VM-Exit (Vitaly Kuznetsov) [2009340] - KVM: x86: Flush the guest's TLB on INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: APICv: drop immediate APICv disablement on current vCPU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: fast_page_fault support for the TDP MMU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Make walk_shadow_page_lockless_{begin,end} interoperate with the TDP MMU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix use of enums in trace_fast_page_fault (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Rename cr2_or_gpa to gpa in fast_page_fault (Vitaly Kuznetsov) [2009340] - KVM: Introduce kvm_get_kvm_safe() (Vitaly Kuznetsov) [2009340] - x86/kvm: remove non-x86 stuff from arch/x86/kvm/ioapic.h (Vitaly Kuznetsov) [2009340] - KVM: X86: Add per-vm stat for max rmap list size (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Return old SPTE from mmu_spte_clear_track_bits() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Refactor shadow walk in __direct_map() to reduce indentation (Vitaly Kuznetsov) [2009340] - KVM: x86: Hoist kvm_dirty_regs check out of sync_regs() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Mark VM as bugged if page fault returns RET_PF_INVALID (Vitaly Kuznetsov) [2009340] - KVM: x86: Use KVM_BUG/KVM_BUG_ON to handle bugs that are fatal to the VM (Vitaly Kuznetsov) [2009340] - KVM: Export kvm_make_all_cpus_request() for use in marking VMs as bugged (Vitaly Kuznetsov) [2009340] - KVM: Add infrastructure and macro to mark VM as bugged (Vitaly Kuznetsov) [2009340] - KVM: Get rid of kvm_get_pfn() (Vitaly Kuznetsov) [2009340] - KVM: arm64: Use get_page() instead of kvm_get_pfn() (Vitaly Kuznetsov) [2009340] - KVM: x86: accept userspace interrupt only if no event is injected (Vitaly Kuznetsov) [2009340] - KVM: add missing compat KVM_CLEAR_DIRTY_LOG (Vitaly Kuznetsov) [2009340] - KVM: use cpu_relax when halt polling (Vitaly Kuznetsov) [2009340] - KVM: SVM: use vmcb01 in svm_refresh_apicv_exec_ctrl (Vitaly Kuznetsov) [2009340] - KVM: SVM: tweak warning about enabled AVIC on nested entry (Vitaly Kuznetsov) [2009340] - KVM: SVM: svm_set_vintr don't warn if AVIC is active but is about to be deactivated (Vitaly Kuznetsov) [2009340] - KVM: SVM: delay svm_vcpu_init_msrpm after svm->vmcb is initialized (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce access_tracking_perf_test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix missing break in dirty_log_perf_test arg parsing (Vitaly Kuznetsov) [2009340] - x86/kvm: fix vcpu-id indexed array sizes (Vitaly Kuznetsov) [2009340] - KVM: x86: Check the right feature bit for MSR_KVM_ASYNC_PF_ACK access (Vitaly Kuznetsov) [2009340] - KVM: Documentation: Fix KVM_CAP_ENFORCE_PV_FEATURE_CPUID name (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Swap the parameter order for svm_copy_vmrun_state()/svm_copy_vmloadsave_state() (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Rename nested_svm_vmloadsave() to svm_copy_vmloadsave_state() (Vitaly Kuznetsov) [2009340] - docs: virt: kvm: api.rst: replace some characters (Vitaly Kuznetsov) [2009340] - docs: kvm: properly format code blocks and lists (Vitaly Kuznetsov) [2009340] - docs: kvm: fix build warnings (Vitaly Kuznetsov) [2009340] - KVM: selftests: Address extra memslot parameters in vm_vaddr_alloc (Vitaly Kuznetsov) [2009340] - kvm: debugfs: fix memory leak in kvm_create_vm_debugfs (Vitaly Kuznetsov) [2009340] - Revert "KVM: x86: WARN and reject loading KVM if NX is supported but not enabled" (Vitaly Kuznetsov) [2009340] - KVM: selftests: x86: Address missing vm_install_exception_handler conversions (Vitaly Kuznetsov) [2009340] - KVM: selftests: change pthread_yield to sched_yield (Vitaly Kuznetsov) [2009340] - KVM: x86: rename apic_access_page_done to apic_access_memslot_enabled (Vitaly Kuznetsov) [2009340] - kvm: x86: disable the narrow guest module parameter on unload (Vitaly Kuznetsov) [2009340] - selftests: kvm: Allows userspace to handle emulation errors. (Vitaly Kuznetsov) [2009340] - kvm: x86: Allow userspace to handle emulation errors (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Let guest use GBPAGES if supported in hardware and TDP is on (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Get CR4.SMEP from MMU, not vCPU, in shadow page fault (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Get CR0.WP from MMU, not vCPU, in shadow page fault (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop redundant rsvd bits reset for nested NPT (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Optimize and clean up so called "last nonleaf level" logic (Vitaly Kuznetsov) [2009340] - KVM: x86: Enhance comments for MMU roles and nested transition trickiness (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: WARN on any reserved SPTE value when making a valid SPTE (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add helpers to do full reserved SPTE checks w/ generic MMU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to determine PTTYPE (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Collapse 32-bit PAE and 64-bit statements for helpers (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add a helper to calculate root from role_regs (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add helper to update paging metadata (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't update nested guest's paging bitmasks if CR0.PG=0 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Consolidate reset_rsvds_bits_mask() calls (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU role_regs to get LA57, and drop vCPU LA57 helper (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Get nested MMU's root level from the MMU's role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop "nx" from MMU context now that there are no readers (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to get EFER.NX during MMU configuration (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role/role_regs to compute context's metadata (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to detect EFER.NX in guest page walk (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's roles to compute last non-leaf level (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to compute PKRU bitmask (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to compute permission bitmask (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop vCPU param from reserved bits calculator (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to get CR4.PSE for computing rsvd bits (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't grab CR4.PSE for calculating shadow reserved bits (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Always set new mmu_role immediately after checking old role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Set CR4.PKE/LA57 in MMU role iff long mode is active (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Do not set paging-related bits in MMU role if CR0.PG=0 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add accessors to query mmu_role bits (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Rename "nxe" role bit to "efer_nx" for macro shenanigans (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role_regs, not vCPU state, to compute mmu_role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Ignore CR0 and CR4 bits in nested EPT MMU role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Consolidate misc updates into shadow_mmu_init_context() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add struct and helpers to retrieve MMU role bits from regs (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Grab shadow root level from mmu_role for shadow MMUs (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Move nested NPT reserved bit calculation into MMU proper (Vitaly Kuznetsov) [2009340] - KVM: x86: Read and pass all CR0/CR4 role bits to shadow MMU helper (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop smep_andnot_wp check from "uses NX" for shadow MMUs (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Add a comment to document why nNPT uses vmcb01, not vCPU state (Vitaly Kuznetsov) [2009340] - KVM: x86: Fix sizes used to pass around CR0, CR4, and EFER (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Rename unsync helper and update related comments (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop the intermediate "transient" __kvm_sync_page() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: comment on kvm_mmu_get_page's syncing of pages (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: WARN and zap SP when sync'ing if MMU role mismatches (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU role to check for matching guest page sizes (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Unconditionally zap unsync SPs when creating >4k SP at GFN (Vitaly Kuznetsov) [2009340] - Revert "KVM: MMU: record maximum physical address width in kvm_mmu_extended_role" (Vitaly Kuznetsov) [2009340] - KVM: x86: Alert userspace that KVM_SET_CPUID{,2} after KVM_RUN is broken (Vitaly Kuznetsov) [2009340] - KVM: debugfs: Reuse binary stats descriptors (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add selftest for KVM statistics data binary interface (Vitaly Kuznetsov) [2009340] - KVM: stats: Add documentation for binary statistics interface (Vitaly Kuznetsov) [2009340] - KVM: stats: Support binary stats retrieval for a VCPU (Vitaly Kuznetsov) [2009340] - KVM: stats: Support binary stats retrieval for a VM (Vitaly Kuznetsov) [2009340] - KVM: stats: Add fd-based API to read binary stats data (Vitaly Kuznetsov) [2009340] - KVM: stats: Separate generic stats from architecture specific ones (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't WARN on a NULL shadow page in TDP MMU check (Vitaly Kuznetsov) [2009340] - KVM: sefltests: Add x86-64 test to verify MMU reacts to CPUID updates (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add hugepage support for x86-64 (Vitaly Kuznetsov) [2009340] - KVM: selftests: Genericize upper level page table entry struct (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add PTE helper for x86-64 in preparation for hugepages (Vitaly Kuznetsov) [2009340] - KVM: selftests: Rename x86's page table "address" to "pfn" (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add wrapper to allocate page table page (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally allocate EPT tables in memslot 0 (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot '0' for page table allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot 0 for vaddr allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use "standard" min virtual address for CPUID test alloc (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use alloc page helper for xAPIC IPI test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use alloc_page helper for x86-64's GDT/IDT/TSS allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Lower the min virtual address for misc page allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add helpers to allocate N pages of virtual memory (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use "standard" min virtual address for Hyper-V pages (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot 0 for x86's GDT/TSS setup (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot 0 when loading elf binary (Vitaly Kuznetsov) [2009340] - KVM: selftests: Zero out the correct page in the Hyper-V features test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Remove errant asm/barrier.h include to fix arm64 build (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix uninitialized boolean variable flush (Vitaly Kuznetsov) [2009340] - KVM: selftests: fix triple fault if ept=0 in dirty_log_test (Vitaly Kuznetsov) [2009340] - KVM: x86: Print CPU of last attempted VM-entry when dumping VMCS/VMCB (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Dynamically compute max VMCS index for vmcs12 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Skip #PF(RSVD) intercepts when emulating smaller maxphyaddr (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant root_hpa checks (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Refactor is_tdp_mmu_root into is_tdp_mmu (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant is_tdp_mmu_enabled check (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant is_tdp_mmu_root check (Vitaly Kuznetsov) [2009340] - KVM: x86: Stub out is_tdp_mmu_root on 32-bit hosts (Vitaly Kuznetsov) [2009340] - KVM: x86: WARN and reject loading KVM if NX is supported but not enabled (Vitaly Kuznetsov) [2009340] - KVM: SVM: Refuse to load kvm_amd if NX support is not available (Vitaly Kuznetsov) [2009340] - KVM: VMX: Refuse to load kvm_intel if EPT and NX are disabled (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix TDP MMU page table level (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix pf_fixed count in tdp_mmu_map_handle_target_level() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix return value in tdp_mmu_map_handle_target_level() (Vitaly Kuznetsov) [2009340] - KVM: LAPIC: Keep stored TMCCT register value 0 after KVM_SET_LAPIC (Vitaly Kuznetsov) [2009340] - KVM: X86: Introduce KVM_HC_MAP_GPA_RANGE hypercall (Vitaly Kuznetsov) [2009340] - KVM: switch per-VM stats to u64 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Grab nx_lpage_splits as an unsigned long before division (Vitaly Kuznetsov) [2009340] - KVM: x86: Check for pending interrupts when APICv is getting disabled (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Drop redundant checks on vmcs12 in EPTP switching emulation (Vitaly Kuznetsov) [2009340] - KVM: nVMX: WARN if subtly-impossible VMFUNC conditions occur (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop pointless @reset_roots from kvm_init_mmu() (Vitaly Kuznetsov) [2009340] - KVM: x86: Defer MMU sync on PCID invalidation (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Use fast PGD switch when emulating VMFUNC[EPTP_SWITCH] (Vitaly Kuznetsov) [2009340] - KVM: x86: Use KVM_REQ_TLB_FLUSH_GUEST to handle INVPCID(ALL) emulation (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Free only guest_mode (L2) roots on INVVPID w/o EPT (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Consolidate VM-Enter/VM-Exit TLB flush and MMU sync logic (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop skip MMU sync and TLB flush params from "new PGD" helpers (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Move TLB flushing logic (or lack thereof) to dedicated helper (Vitaly Kuznetsov) [2009340] - KVM: x86: Uncondtionally skip MMU sync/TLB flush in MOV CR3's PGD switch (Vitaly Kuznetsov) [2009340] - KVM: x86: Invalidate all PGDs for the current PCID on MOV CR3 w/ flush (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Don't clobber nested MMU's A/D status on EPTP switch (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Ensure 64-bit shift when checking VMFUNC bitmap (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Sync all PGDs on nested transition with shadow paging (Vitaly Kuznetsov) [2009340] - KVM: x86: avoid loading PDPTRs after migration when possible (Vitaly Kuznetsov) [2009340] - KVM: x86: Introduce KVM_GET_SREGS2 / KVM_SET_SREGS2 (Vitaly Kuznetsov) [2009340] - KVM: x86: introduce kvm_register_clear_available (Vitaly Kuznetsov) [2009340] - KVM: nVMX: delay loading of PDPTRs to KVM_REQ_GET_NESTED_STATE_PAGES (Vitaly Kuznetsov) [2009340] - KVM: nSVM: refactor the CR3 reload on migration (Vitaly Kuznetsov) [2009340] - KVM: x86: Always load PDPTRs on CR3 load for SVM w/o NPT and a PAE guest (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Drop pointless pdptrs_changed() check on nested transition (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Drop obsolete (and pointless) pdptrs_changed() check (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce hyperv_features test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move evmcs.h to x86_64/ (Vitaly Kuznetsov) [2009340] - KVM: selftests: move Hyper-V MSR definitions to hyperv.h (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_X64_EX_PROCESSOR_MASKS_RECOMMENDED bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_X64_CLUSTER_IPI_RECOMMENDED bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_X64_REMOTE_TLB_FLUSH_RECOMMENDED bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_DEBUGGING privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_SIGNAL_EVENTS privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_POST_MESSAGES privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Check access to HVCALL_NOTIFY_LONG_SPIN_WAIT hypercall (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Prepare to check access to Hyper-V hypercalls (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_STIMER_DIRECT_MODE_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Inverse the default in hv_check_msr_access() (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_FEATURE_DEBUG_MSRS_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_FEATURE_GUEST_CRASH_MSR_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_ACCESS_REENLIGHTENMENT privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_ACCESS_FREQUENCY_MSRS privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_APIC_ACCESS_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_SYNTIMER_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_SYNIC_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_REFERENCE_TSC_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_RESET_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_VP_INDEX_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_TIME_REF_COUNT_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_VP_RUNTIME_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_HYPERCALL_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Prepare to check access to Hyper-V MSRs (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Cache guest CPUID leaves determining features availability (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Introduce KVM_CAP_HYPERV_ENFORCE_CPUID (Vitaly Kuznetsov) [2009340] - asm-generic/hyperv: add HV_STATUS_ACCESS_DENIED definition (Vitaly Kuznetsov) [2009340] - KVM: SVM: hyper-v: Direct Virtual Flush support (Vitaly Kuznetsov) [2009340] - KVM: SVM: hyper-v: Enlightened MSR-Bitmap support (Vitaly Kuznetsov) [2009340] - KVM: SVM: hyper-v: Remote TLB flush for SVM (Vitaly Kuznetsov) [2009340] - KVM: SVM: Software reserved fields (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Move the remote TLB flush logic out of vmx (Vitaly Kuznetsov) [2009340] - KVM: nVMX: nSVM: Add a new VCPU statistic to show if VCPU is in guest mode (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop "pre_" from enter/leave_smm() helpers (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop .post_leave_smm(), i.e. the manual post-RSM MMU reset (Vitaly Kuznetsov) [2009340] - KVM: x86: Rename SMM tracepoint to make it reflect reality (Vitaly Kuznetsov) [2009340] - KVM: x86: Move "entering SMM" tracepoint into kvm_smm_changed() (Vitaly Kuznetsov) [2009340] - KVM: x86: Move (most) SMM hflags modifications into kvm_smm_changed() (Vitaly Kuznetsov) [2009340] - KVM: x86: Invoke kvm_smm_changed() immediately after clearing SMM flag (Vitaly Kuznetsov) [2009340] - KVM: x86: Replace .set_hflags() with dedicated .exiting_smm() helper (Vitaly Kuznetsov) [2009340] - KVM: x86: Emulate triple fault shutdown if RSM emulation fails (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop vendor specific functions for APICv/AVIC enablement (Vitaly Kuznetsov) [2009340] - KVM: x86: Use common 'enable_apicv' variable for both APICv and AVIC (Vitaly Kuznetsov) [2009340] - kvm: x86: implement KVM PM-notifier (Vitaly Kuznetsov) [2009340] - kvm: add PM-notifier (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce x2APIC register manipulation functions (Vitaly Kuznetsov) [2009340] - KVM: selftests: Hoist APIC functions out of individual tests (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move APIC definitions into a separate file (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Disable vmcs02 posted interrupts if vmcs12 PID isn't mappable (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Fail on MMIO completion for nested posted interrupts (Vitaly Kuznetsov) [2009340] - KVM: x86: Add a return code to kvm_apic_accept_events (Vitaly Kuznetsov) [2009340] - KVM: x86: Add a return code to inject_pending_event (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Add a return code to vmx_complete_nested_posted_interrupt (Vitaly Kuznetsov) [2009340] - KVM: x86: Remove guest mode check from kvm_check_nested_events (Vitaly Kuznetsov) [2009340] - KVM: selftests: x86: Add vmx_nested_tsc_scaling_test (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Enable nested TSC scaling (Vitaly Kuznetsov) [2009340] - KVM: X86: Add vendor callbacks for writing the TSC multiplier (Vitaly Kuznetsov) [2009340] - KVM: X86: Move write_l1_tsc_offset() logic to common code and rename it (Vitaly Kuznetsov) [2009340] - KVM: X86: Add functions that calculate the nested TSC fields (Vitaly Kuznetsov) [2009340] - KVM: X86: Add functions for retrieving L2 TSC fields from common code (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Add a TSC multiplier field in VMCS12 (Vitaly Kuznetsov) [2009340] - KVM: X86: Add a ratio parameter to kvm_scale_tsc() (Vitaly Kuznetsov) [2009340] - KVM: X86: Rename kvm_compute_tsc_offset() to kvm_compute_l1_tsc_offset() (Vitaly Kuznetsov) [2009340] - KVM: X86: Store L1's TSC scaling ratio in 'struct kvm_vcpu_arch' (Vitaly Kuznetsov) [2009340] - math64.h: Add mul_s64_u64_shr() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add a field to control memslot rmap allocation (Vitaly Kuznetsov) [2009340] - KVM: mmu: Add slots_arch_lock for memslot arch fields (Vitaly Kuznetsov) [2009340] - KVM: mmu: Refactor memslot copy (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Factor out allocating memslot rmap (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Deduplicate rmap freeing (Vitaly Kuznetsov) [2009340] - KVM: x86: Do not write protect huge page in initially-all-set mode (Vitaly Kuznetsov) [2009340] - KVM: x86: Support write protecting only large pages (Vitaly Kuznetsov) [2009340] - KVM: hyper-v: Advertise support for fast XMM hypercalls (Vitaly Kuznetsov) [2009340] - KVM: x86: kvm_hv_flush_tlb use inputs from XMM registers (Vitaly Kuznetsov) [2009340] - KVM: hyper-v: Collect hypercall params into struct (Vitaly Kuznetsov) [2009340] - KVM: x86: Move FPU register accessors into fpu.h (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Make is_nx_huge_page_enabled an inline function (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix kvm_check_cap() assertion (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add aarch64/debug-exceptions test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add exception handling support for aarch64 (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move GUEST_ASSERT_EQ to utils header (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce UCALL_UNHANDLED for unhandled vector reporting (Vitaly Kuznetsov) [2009340] - KVM: selftests: Complete x86_64/sync_regs_test ucall (Vitaly Kuznetsov) [2009340] - KVM: selftests: Rename vm_handle_exception (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix compiling errors when initializing the static structure (Vitaly Kuznetsov) [2009340] - selftests: kvm: Add support for customized slot0 memory size (Vitaly Kuznetsov) [2009340] - selftests: kvm: fix overlapping addresses in memslot_perf_test (Vitaly Kuznetsov) [2009340] - selftests: kvm: do only 1 memslot_perf_test run by default (Vitaly Kuznetsov) [2009340] - KVM: X86: Use _BITUL() macro in UAPI headers (Vitaly Kuznetsov) [2009340] - KVM: selftests: create alias mappings when using shared memory (Vitaly Kuznetsov) [2009340] - KVM: selftests: add shmem backing source type (Vitaly Kuznetsov) [2009340] - KVM: selftests: refactor vm_mem_backing_src_type flags (Vitaly Kuznetsov) [2009340] - KVM: selftests: allow different backing source types (Vitaly Kuznetsov) [2009340] - KVM: selftests: compute correct demand paging size (Vitaly Kuznetsov) [2009340] - KVM: selftests: simplify setup_demand_paging error handling (Vitaly Kuznetsov) [2009340] - KVM: selftests: Print a message if /dev/kvm is missing (Vitaly Kuznetsov) [2009340] - KVM: selftests: trivial comment/logging fixes (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix hang in hardware_disable_test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Ignore CPUID.0DH.1H in get_cpuid_test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix 32-bit truncation of vm_get_max_gfn() (Vitaly Kuznetsov) [2009340] - KVM: selftests: add a memslot-related performance benchmark (Vitaly Kuznetsov) [2009340] - KVM: selftests: Keep track of memslots more efficiently (Vitaly Kuznetsov) [2009340] - selftests: kvm: fix potential issue with ELF loading (Vitaly Kuznetsov) [2009340] - selftests: kvm: make allocation of extra memory take effect (Vitaly Kuznetsov) [2009340] - docs: virt: api.rst: fix a pointer to SGX documentation (Vitaly Kuznetsov) [2009340] - docs: vcpu-requests.rst: fix reference for atomic ops (Vitaly Kuznetsov) [2009340] - x86/msr: Rename MSR_K8_SYSCFG to MSR_AMD64_SYSCFG (Vitaly Kuznetsov) [2009340] - x86/sev: Move GHCB MSR protocol and NAE definitions in a common header (Vitaly Kuznetsov) [2009340] - x86/sev-es: Rename sev-es.{ch} to sev.{ch} (Vitaly Kuznetsov) [2009340] - x86/sev-es: Replace open-coded hlt-loops with sev_es_terminate() (Vitaly Kuznetsov) [2009340] - tools/kvm_stat: Fix documentation typo (Vitaly Kuznetsov) [2009340] - KVM: x86: Hide RDTSCP and RDPID if MSR_TSC_AUX probing failed (Vitaly Kuznetsov) [2009340] - KVM: x86: Tie Intel and AMD behavior for MSR_TSC_AUX to guest CPU model (Vitaly Kuznetsov) [2009340] - KVM: x86: Move uret MSR slot management to common x86 (Vitaly Kuznetsov) [2009340] - KVM: x86: Export the number of uret MSRs to vendor modules (Vitaly Kuznetsov) [2009340] - KVM: VMX: Disable loading of TSX_CTRL MSR the more conventional way (Vitaly Kuznetsov) [2009340] - KVM: VMX: Use common x86's uret MSR list as the one true list (Vitaly Kuznetsov) [2009340] - KVM: VMX: Use flag to indicate "active" uret MSRs instead of sorting list (Vitaly Kuznetsov) [2009340] - KVM: VMX: Configure list of user return MSRs at module init (Vitaly Kuznetsov) [2009340] - KVM: x86: Add support for RDPID without RDTSCP (Vitaly Kuznetsov) [2009340] - selftests: kvm: remove reassignment of non-absolute variables (Vitaly Kuznetsov) [2009340] - doc/kvm: Fix wrong entry for KVM_CAP_X86_MSR_FILTER (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix kdoc of __handle_changed_spte (Vitaly Kuznetsov) [2009340] - KVM: documentation: fix sphinx warnings (Vitaly Kuznetsov) [2009340] - KVM: x86: document behavior of measurement ioctls with len==0 (Vitaly Kuznetsov) [2009340] - documentation/kvm: additional explanations on KVM_SET_BOOT_CPU_ID (Vitaly Kuznetsov) [2009340] - docs: kvm: Fix a typo ("althought") (Vitaly Kuznetsov) [2009340] - KVM: move EXIT_FASTPATH_REENTER_GUEST to common code (Vitaly Kuznetsov) [2009340] - mm, kvm: account kvm_vcpu_mmap to kmemcg (Vitaly Kuznetsov) [2009340] - x86/kvm: Use msi_msg shadow structs (Vitaly Kuznetsov) [2009340] - ceph: fix up non-directory creation in SGID directories (Jeffrey Layton) [2017796] - ceph: initialize pathlen variable in reconnect_caps_cb (Jeffrey Layton) [2017796] - ceph: initialize i_size variable in ceph_sync_read (Jeffrey Layton) [2017796] - ceph: fix duplicate increment of opened_inodes metric (Jeffrey Layton) [2017796] - ceph: add a new metric to keep track of remote object copies (Jeffrey Layton) [2017796] - libceph, ceph: move ceph_osdc_copy_from() into cephfs code (Jeffrey Layton) [2017796] - ceph: clean-up metrics data structures to reduce code duplication (Jeffrey Layton) [2017796] - ceph: split 'metric' debugfs file into several files (Jeffrey Layton) [2017796] - ceph: return the real size read when it hits EOF (Jeffrey Layton) [2017796] - ceph: properly handle statfs on multifs setups (Jeffrey Layton) [2017796] - ceph: shut down mount on bad mdsmap or fsmap decode (Jeffrey Layton) [2017796] - ceph: fix mdsmap decode when there are MDS's beyond max_mds (Jeffrey Layton) [2017796] - ceph: ignore the truncate when size won't change with Fx caps issued (Jeffrey Layton) [2017796] - ceph: don't rely on error_string to validate blocklisted session. (Jeffrey Layton) [2017796] - ceph: just use ci->i_version for fscache aux info (Jeffrey Layton) [2017796] - ceph: shut down access to inode when async create fails (Jeffrey Layton) [2017796] - ceph: refactor remove_session_caps_cb (Jeffrey Layton) [2017796] - ceph: fix auth cap handling logic in remove_session_caps_cb (Jeffrey Layton) [2017796] - ceph: drop private list from remove_session_caps_cb (Jeffrey Layton) [2017796] - ceph: don't use -ESTALE as special return code in try_get_cap_refs (Jeffrey Layton) [2017796] - ceph: print inode numbers instead of pointer values (Jeffrey Layton) [2017796] - ceph: enable async dirops by default (Jeffrey Layton) [2017796] - libceph: drop ->monmap and err initialization (Jeffrey Layton) [2017796] - ceph: convert to noop_direct_IO (Jeffrey Layton) [2017796] - ceph: fix off by one bugs in unsafe_request_wait() (Jeffrey Layton) [2017796] - ceph: fix handling of "meta" errors (Jeffrey Layton) [2017796] - ceph: drop the mdsc_get_session/put_session dout messages (Jeffrey Layton) [2017796] - ceph: lockdep annotations for try_nonblocking_invalidate (Jeffrey Layton) [2017796] - ceph: don't WARN if we're forcibly removing the session caps (Jeffrey Layton) [2017796] - ceph: don't WARN if we're force umounting (Jeffrey Layton) [2017796] - ceph: remove the capsnaps when removing caps (Jeffrey Layton) [2017796] - ceph: request Fw caps before updating the mtime in ceph_write_iter (Jeffrey Layton) [2017796] - ceph: reconnect to the export targets on new mdsmaps (Jeffrey Layton) [2017796] - ceph: print more information when we can't find snaprealm (Jeffrey Layton) [2017796] - ceph: add ceph_change_snap_realm() helper (Jeffrey Layton) [2017796] - ceph: remove redundant initializations from mdsc and session (Jeffrey Layton) [2017796] - ceph: cancel delayed work instead of flushing on mdsc teardown (Jeffrey Layton) [2017796] - ceph: add a new vxattr to return auth mds for an inode (Jeffrey Layton) [2017796] - ceph: flush the mdlog before waiting on unsafe reqs (Jeffrey Layton) [2017796] - ceph: flush mdlog before umounting (Jeffrey Layton) [2017796] - ceph: make iterate_sessions a global symbol (Jeffrey Layton) [2017796] - ceph: make ceph_create_session_msg a global symbol (Jeffrey Layton) [2017796] - ceph: fix comment about short copies in ceph_write_end (Jeffrey Layton) [2017796] - ceph: fix memory leak on decode error in ceph_handle_caps (Jeffrey Layton) [2017796] - RDMA/irdma: Fix a potential memory allocation issue in 'irdma_prm_add_pble_mem()' (Kamal Heib) [1970672] - RDMA/irdma: Don't arm the CQ more than two times if no CE for this CQ (Kamal Heib) [1970672] - RDMA/irdma: Fix a user-after-free in add_pble_prm (Kamal Heib) [1970672] - RDMA/irdma: Report correct WC errors (Kamal Heib) [1970672] - RDMA/irdma: Do not hold qos mutex twice on QP resume (Kamal Heib) [1970672] - RDMA/irdma: Set VLAN in UD work completion correctly (Kamal Heib) [1970672] - RDMA/irdma: Process extended CQ entries correctly (Kamal Heib) [1970672] - RDMA/irdma: Report correct WC error when there are MW bind errors (Kamal Heib) [1970672] - RDMA/irdma: Report correct WC error when transport retry counter is exceeded (Kamal Heib) [1970672] - RDMA/irdma: Validate number of CQ entries on create CQ (Kamal Heib) [1970672] - RDMA/irdma: Skip CQP ring during a reset (Kamal Heib) [1970672] - RDMA/irdma: Remove the repeated declaration (Kamal Heib) [1970672] - RDMA/irdma: Use correct kconfig symbol for AUXILIARY_BUS (Kamal Heib) [1970672] - RDMA/irdma: Change returned type of irdma_setup_virt_qp to void (Kamal Heib) [1970672] - RDMA/irdma: Change the returned type of irdma_set_hw_rsrc to void (Kamal Heib) [1970672] - RDMA/irdma: change the returned type of irdma_sc_repost_aeq_entries to void (Kamal Heib) [1970672] - RDMA/irdma: Check vsi pointer before using it (Kamal Heib) [1970672] - RDMA/irdma: Change the returned type to void (Kamal Heib) [1970672] - RDMA/irdma: Make spdxcheck.py happy (Kamal Heib) [1970672] - RDMA/irdma: Fix unused variable total_size warning (Kamal Heib) [1970672] - RDMA/irdma: Fix potential overflow expression in irdma_prm_get_pbles (Kamal Heib) [1970672] - RDMA/irdma: Check contents of user-space irdma_mem_reg_req object (Kamal Heib) [1970672] - RDMA/irdma: Remove use of kmap() (Kamal Heib) [1970672] - RDMA/irdma: Use the queried port attributes (Kamal Heib) [1970672] - RDMA/irdma: Check return value from ib_umem_find_best_pgsz (Kamal Heib) [1970672] - RDMA: Split the alloc_hw_stats() ops to port and device variants (Kamal Heib) [1970672] - RDMA/irdma: Store PBL info address a pointer type (Kamal Heib) [1970672] - RDMA/irdma: Use list_last_entry/list_first_entry (Kamal Heib) [1970672] - RDMA/irdma: Use list_move instead of list_del/list_add (Kamal Heib) [1970672] - RDMA/irdma: Fix return error sign from irdma_modify_qp (Kamal Heib) [1970672] - RDMA/irdma: Fix spelling mistake "Allocal" -> "Allocate" (Kamal Heib) [1970672] - RDMA/irdma: remove redundant initialization of variable val (Kamal Heib) [1970672] - RDMA/irdma: remove extraneous indentation on a statement (Kamal Heib) [1970672] - RDMA/irdma: Fix issues with u8 left shift operation (Kamal Heib) [1970672] - RDMA/irdma: Add irdma Kconfig/Makefile and remove i40iw (Kamal Heib) [1970672] - RDMA/irdma: Add ABI definitions (Kamal Heib) [1970672] - RDMA/irdma: Add dynamic tracing for CM (Kamal Heib) [1970672] - RDMA/irdma: Add miscellaneous utility definitions (Kamal Heib) [1970672] - RDMA/irdma: Add user/kernel shared libraries (Kamal Heib) [1970672] - RDMA/irdma: Add RoCEv2 UD OP support (Kamal Heib) [1970672] - RDMA/irdma: Implement device supported verb APIs (Kamal Heib) [1970672] - RDMA/irdma: Add PBLE resource manager (Kamal Heib) [1970672] - RDMA/irdma: Add connection manager (Kamal Heib) [1970672] - RDMA/irdma: Add QoS definitions (Kamal Heib) [1970672] - RDMA/irdma: Add privileged UDA queue implementation (Kamal Heib) [1970672] - RDMA/irdma: Add HMC backing store setup functions (Kamal Heib) [1970672] - RDMA/irdma: Implement HW Admin Queue OPs (Kamal Heib) [1970672] - RDMA/irdma: Implement device initialization definitions (Kamal Heib) [1970672] - RDMA/irdma: Register auxiliary driver and implement private channel OPs (Kamal Heib) [1970672] - i40e: Register auxiliary devices to provide RDMA (Kamal Heib) [1970672] - i40e: Prep i40e header for aux bus conversion (Kamal Heib) [1970672] - i40e: Replace one-element array with flexible-array member (Kamal Heib) [1970672] - ibmvnic: drop bad optimization in reuse_tx_pools() (Gustavo Walbon) [2028722] - ibmvnic: drop bad optimization in reuse_rx_pools() (Gustavo Walbon) [2028722] - /proc//cmdline: add back the setproctitle() special case (Ian Kent) [1979446] - /proc//cmdline: remove all the special cases (Ian Kent) [1979446] - perf tests vmlinux-kallsyms: Ignore hidden symbols (Michael Petlan) [1903157] - net/sched: sch_ets: don't remove idle classes from the round-robin list (Davide Caratti) [2013073] - net/sched: sch_ets: don't peek at classes beyond 'nbands' (Davide Caratti) [2013073] - net/sched: sch_ets: properly init all active DRR list handles (Davide Caratti) [2013073] - serial: 8250: fix racy uartclk update (Puneet Sethi) [1784121] - serial: 8250: Skip uninitialized TTY port baud rate update (Puneet Sethi) [1784121] - serial: 8250: Discard RTS/DTS setting from clock update method (Puneet Sethi) [1784121] - serial: 8250: Add 8250 port clock update method (Puneet Sethi) [1784121] - serial: 8250_dw: drop bogus uartclk optimisation (Puneet Sethi) [1784121] - serial: 8250_lpss: Enable PSE UART Auto Flow Control (Puneet Sethi) [1784121] - serial: 8250_lpss: Extract dw8250_do_set_termios() for common use (Puneet Sethi) [1784121] - serial: 8250_dw: Fix the trivial typo in the comment (Puneet Sethi) [1784121] - serial: 8250_dw: Re-use temporary variable for of_node (Puneet Sethi) [1784121] - serial: 8250_dw: Drop wrong use of ACPI_PTR() (Puneet Sethi) [1784121] - serial: 8250_lpss: Enable DMA on Intel Elkhart Lake (Puneet Sethi) [1784121] - serial: 8250_dw: Add device HID for new AMD UART controller (Puneet Sethi) [1784121] - serial: 8250_dw: Fix clk-notifier/port suspend deadlock (Puneet Sethi) [1784121] - serial: 8250_dw: Fix common clocks usage race condition (Puneet Sethi) [1784121] - serial: 8250_dw: Pass the same rate to the clk round and set rate methods (Puneet Sethi) [1784121] - serial: 8250_dw: Simplify the ref clock rate setting procedure (Puneet Sethi) [1784121] - serial: 8250_dw: Use devm_clk_get_optional() to get the input clock (Puneet Sethi) [1784121] - serial: 8250_dw: Avoid double error messaging when IRQ absent (Puneet Sethi) [1784121] - serial: 8250_dw: switch to use 8250_dwlib library (Puneet Sethi) [1784121] - serial: 8250_dw: use pointer to uart local variable (Puneet Sethi) [1784121] - serial: 8250_dw: Use a unified new dev variable in remove (Puneet Sethi) [1784121] - serial: 8250_dw: always set baud rate in dw8250_set_termios (Puneet Sethi) [1784121] - serial: 8250_dw: add fractional divisor support (Puneet Sethi) [1784121] - serial: 8250_dw: Introduce IO accessors to extended registers (Puneet Sethi) [1784121] - dmaengine: dw: Program xBAR hardware for Elkhart Lake (Puneet Sethi) [1784121] - dmaengine: dw: Make it dependent to HAS_IOMEM (Puneet Sethi) [1784121] - dmaengine dw: Revert "dmaengine: dw: Enable runtime PM" (Puneet Sethi) [1784121] - dmaengine: dw: Enable runtime PM (Puneet Sethi) [1784121] - dmaengine: dw: Add DMA-channels mask cell support (Puneet Sethi) [1784121] - dmaengine: dw: Ignore burst setting for memory peripherals (Puneet Sethi) [1784121] - dmaengine: dw: Discard dlen from the dev-to-mem xfer width calculation (Puneet Sethi) [1784121] - dmaengine: dw: Activate FIFO-mode for memory peripherals only (Puneet Sethi) [1784121] - dmaengine: dw: Initialize max_sg_burst capability (Puneet Sethi) [1784121] - dmaengine: dw: Introduce max burst length hw config (Puneet Sethi) [1784121] - dmaengine: dw: Initialize min and max burst DMA device capability (Puneet Sethi) [1784121] - dmaengine: dw: Set DMA device max segment size parameter (Puneet Sethi) [1784121] - dmaengine: dw: Take HC_LLP flag into account for noLLP auto-config (Puneet Sethi) [1784121] - dmaengine: Introduce DMA-device device_caps callback (Puneet Sethi) [1784121] - dmaengine: Introduce max SG burst capability (Puneet Sethi) [1784121] - dmaengine: Introduce min burst length capability (Puneet Sethi) [1784121] - dmaengine: dw: Initialize channel before each transfer (Puneet Sethi) [1784121] - dmaengine: dw: Replace 'objs' by 'y' (Puneet Sethi) [1784121] - dmaengine: dw: Register ACPI DMA controller for PCI that has companion (Puneet Sethi) [1784121] - dmaengine: dw: platform: Mark 'hclk' clock optional (Puneet Sethi) [1784121] - dmaengine: dw: platform: Split OF helpers to separate module (Puneet Sethi) [1784121] - dmaengine: dw: platform: Split ACPI helpers to separate module (Puneet Sethi) [1784121] - dmaengine: dw: platform: Move handle check to dw_dma_acpi_controller_register() (Puneet Sethi) [1784121] - dmaengine: dw: platform: Switch to acpi_dma_controller_register() (Puneet Sethi) [1784121] - dmaengine: dw: platform: Use devm_platform_ioremap_resource() (Puneet Sethi) [1784121] - dmaengine: dw: platform: Enable iDMA 32-bit on Intel Elkhart Lake (Puneet Sethi) [1784121] - dmaengine: dw: platform: Use struct dw_dma_chip_pdata (Puneet Sethi) [1784121] - dmaengine: dw: Export struct dw_dma_chip_pdata for wider use (Puneet Sethi) [1784121] - dmaengine: dw: Update Intel Elkhart Lake Service Engine acronym (Puneet Sethi) [1784121] - dmaengine: dw: Enable iDMA 32-bit on Intel Elkhart Lake (Puneet Sethi) [1784121] - dmaengine: dw: Distinguish ->remove() between DW and iDMA 32-bit (Puneet Sethi) [1784121] - dmaengine: dw: convert to SPDX identifiers (Puneet Sethi) [1784121] - dmaengine: dw: Don't pollute CTL_LO on iDMA 32-bit (Puneet Sethi) [1784121] - dmaengine: dw: Reset DRAIN bit when resume the channel (Puneet Sethi) [1784121] - dmaengine: dw: Split DW and iDMA 32-bit operations (Puneet Sethi) [1784121] - dmaengine: dw: Remove unused internal property (Puneet Sethi) [1784121] - dmaengine: dw: Add missed multi-block support for iDMA 32-bit (Puneet Sethi) [1784121] - dmaengine: dw: drop useless LIST_HEAD (Puneet Sethi) [1784121] - dmaengine: dw: Fix FIFO size for Intel Merrifield (Puneet Sethi) [1784121] - dmaengine: dw-dmac: implement dma protection control setting (Puneet Sethi) [1784121] - dmaengine: dw: remove dma_slave_config direction usage (Puneet Sethi) [1784121] - dmaengine: dw: Add alternative ACPI HIDs for Cherry Trail DMA controllers (Puneet Sethi) [1784121] - perf/arm-cmn: Fix invalid pointer when access dtc object sharing the same IRQ number (Mark Langsdorf) [1997732] - drivers/perf: Simplify EVENT ATTR macro in SMMU PMU driver (Mark Langsdorf) [1997732] - perf/smmuv3: Don't trample existing events with global filter (Mark Langsdorf) [1997732] - perf: qcom: Remove redundant dev_err call in qcom_l3_cache_pmu_probe() (Mark Langsdorf) [1997732] - perf: arm_spe: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - perf: xgene_pmu: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - perf: qcom: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - perf: arm_pmu: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - drivers/perf: arm-cci: Fix checkpatch spacing error (Mark Langsdorf) [1997732] - drivers/perf: arm-cmn: Add space after ',' (Mark Langsdorf) [1997732] - drivers/perf: arm_pmu: Fix some coding style issues (Mark Langsdorf) [1997732] - drivers/perf: arm_spe_pmu: Fix some coding style issues (Mark Langsdorf) [1997732] - drivers/perf: Remove redundant dev_err call in tx2_uncore_pmu_init_dev() (Mark Langsdorf) [1997732] - perf/arm-smmuv3: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-dsu: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-dmc620: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-cmn: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-ccn: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-ccn: Clean up CPU hotplug handling (Mark Langsdorf) [1997732] - perf/arm-cci: Remove broken race mitigation (Mark Langsdorf) [1997732] - genirq: Export affinity setter for modules (Mark Langsdorf) [1997732] - perf/arm_pmu_platform: Clean up with dev_printk (Mark Langsdorf) [1997732] - perf/arm_pmu_platform: Fix error handling (Mark Langsdorf) [1997732] - perf/arm_pmu_platform: Use dev_err_probe() for IRQ errors (Mark Langsdorf) [1997732] - drivers/perf: Simplify the SMMUv3 PMU event attributes (Mark Langsdorf) [1997732] - perf: Constify static struct attribute_group (Mark Langsdorf) [1997732] - perf: qcom: Constify static struct attribute_group (Mark Langsdorf) [1997732] - drivers/perf: Add support for ARMv8.3-SPE (Mark Langsdorf) [1997732] - driver/perf: Remove ARM_SMMU_V3_PMU dependency on ARM_SMMU_V3 (Mark Langsdorf) [1997732] - perf/smmuv3: Support sysfs identifier file (Mark Langsdorf) [1997732] - perf: remove duplicate check on fwnode (Mark Langsdorf) [1997732] - redhat/configs: enable ARM_DMC620_PMU memory controller perf counters (Mark Langsdorf) [1997732] - perf/arm_dmc620_pmu: Fix error return code in dmc620_pmu_device_probe() (Mark Langsdorf) [1997732] - drivers/perf: Prevent forced unbinding of ARM_DMC620_PMU drivers (Mark Langsdorf) [1997732] - driver/perf: Add PMU driver for the ARM DMC-620 memory controller (Mark Langsdorf) [1997732] - drivers/perf: thunderx2_pmu: Fix memory resource error handling (Mark Langsdorf) [1997732] - drivers/perf: xgene_pmu: Fix uninitialized resource struct (Mark Langsdorf) [1997732] - perf: arm_dsu: Support DSU ACPI devices (Mark Langsdorf) [1997732] - perf/smmuv3: To simplify code for ioremap page in pmcg (Mark Langsdorf) [1997732] - drivers/perf: Prevent forced unbinding of PMU drivers (Mark Langsdorf) [1997732] - drivers/perf: Fix kernel panic when rmmod PMU modules during perf sampling (Mark Langsdorf) [1997732] - pmu/smmuv3: Clear IRQ affinity hint on device removal (Mark Langsdorf) [1997732] - drivers/perf: arm_spe_pmu: Avoid duplicate printouts (Mark Langsdorf) [1997732] - drivers/perf: arm_dsu_pmu: Avoid duplicate printouts (Mark Langsdorf) [1997732] - drivers/perf: Open access for CAP_PERFMON privileged process (Mark Langsdorf) [1997732] - perf/smmuv3: Remove the leftover put_cpu() in error path (Mark Langsdorf) [1997732] - perf: arm-ccn: Enable stats for CCN-512 interconnect (Mark Langsdorf) [1997732] - perf/smmuv3: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf/arm-cci: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf/arm-ccn: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf: xgene: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf/smmuv3: Validate groups for global filtering (Mark Langsdorf) [1997732] - perf/smmuv3: Validate group size (Mark Langsdorf) [1997732] - perf/smmuv3: Enable HiSilicon Erratum 162001800 quirk (Mark Langsdorf) [1997732] - perf/smmuv3: Add MSI irq support (Mark Langsdorf) [1997732] - perf/smmuv3: Add arm64 smmuv3 pmu driver (Mark Langsdorf) [1997732] - perf: xgene: Remove set but not used variable 'config' (Mark Langsdorf) [1997732] - perf/drivers: Strengthen exclusion checks with PERF_PMU_CAP_NO_EXCLUDE (Mark Langsdorf) [1997732] - For drivers that do not support context exclusion let's advertise the PERF_PMU_CAP_NO_EXCLUDE capability. This ensures that perf will prevent us from handling events where any exclusion flags are set. Let's also remove the now unnecessary check for exclusion flags. (Mark Langsdorf) [1997732] - perf/core, arch/arm: Use PERF_PMU_CAP_NO_EXCLUDE conditionally (Mark Langsdorf) [1997732] - drivers/perf: arm-ccn: Use devm_ioremap_resource() to map memory (Mark Langsdorf) [1997732] - drivers/perf: Initialise return value in armpmu_request_irqs() (Mark Langsdorf) [1997732] - perf/arm-cci: Remove VLA usage (Mark Langsdorf) [1997732] - tools/power turbostat: version 2021.05.04 (Prarit Bhargava) [2030472] - tools/power turbostat: Support "turbostat --hide idle" (Prarit Bhargava) [2030472] - tools/power turbostat: elevate priority of interval mode (Prarit Bhargava) [2030472] - tools/power turbostat: formatting (Prarit Bhargava) [2030472] - tools/power turbostat: rename tcc variables (Prarit Bhargava) [2030472] - tools/power turbostat: save original CPU model (Prarit Bhargava) [2030472] - tools/power turbostat: add TCC Offset support (Prarit Bhargava) [2030472] - tools/power turbostat: Fix Core C6 residency on Atom CPUs (Prarit Bhargava) [2030472] - tools/power turbostat: Print the C-state Pre-wake settings (Prarit Bhargava) [2030472] - tools/power turbostat: unmark non-kernel-doc comment (Prarit Bhargava) [2030472] - tools/power/turbostat: Remove Package C6 Retention on Ice Lake Server (Prarit Bhargava) [2030472] - tools/power turbostat: Fix offset overflow issue in index converting (Prarit Bhargava) [2030472] - tools/power/turbostat: Fix turbostat for AMD Zen CPUs (Prarit Bhargava) [2030472] - Revert "tools/power turbostat: adjust for temperature offset" (Prarit Bhargava) [2030472] - tools/power turbostat: Fix DRAM Energy Unit on SKX (Prarit Bhargava) [2030472] - tools/power turbostat: print microcode patch level (Prarit Bhargava) [2030472] - tools/power turbostat: add built-in-counter for IPC -- Instructions per Cycle (Prarit Bhargava) [2030472]- [s390] virtio: write back F_VERSION_1 before validate (Claudio Imbrenda) [2026234] - cpufreq: powernv: Fix init_chip_info initialization in numa=off (Steve Best) [2017665] - tcp: don't free a FIN sk_buff in tcp_remove_empty_skb() (Guillaume Nault) [2016210] - tipc: fix size validations for the MSG_CRYPTO type (Xin Long) [2020507] {CVE-2021-43267} - tipc: increase timeout in tipc_sk_enqueue() (Xin Long) [2020401] - Revert "tipc: Return the correct errno code" (Xin Long) [2020401] - tipc: fix an use-after-free issue in tipc_recvmsg (Xin Long) [2020401] - tipc: keep the skb in rcv queue until the whole data is read (Xin Long) [2020401] - powerpc/perf: Fix cycles/instructions as PM_CYC/PM_INST_CMPL in power10 (Steve Best) [2025400] - PCI: Increase D3 delay for AMD Renoir/Cezanne XHCI (Myron Stowe) [2028298] - media: uvcvideo: Avoid cyclic entity chains due to malformed USB descriptors (Dean Nelson) [1921871] {CVE-2020-0404} - sctp: fix transport encap_port update in sctp_vtag_verify (Xin Long) [2020393] - sctp: account stream padding length for reconf chunk (Xin Long) [2020393] - sctp: break out if skb_header_pointer returns NULL in sctp_rcv_ootb (Xin Long) [2020393] - net: cipso: fix warnings in netlbl_cipsov4_add_std (Balazs Nemeth) [2026691] - net/sched: act_ct: fix err check for nf_conntrack_confirm (Davide Caratti) [2018109] - net/sched: act_ct: Fix byte count on fragmented packets (Davide Caratti) [2018109] - mqprio: Correct stats in mqprio_dump_class_stats(). (Davide Caratti) [2018109] - net_sched: fix NULL deref in fifo_set_limit() (Davide Caratti) [2018109] - net: sched: flower: protect fl_walk() with rcu (Davide Caratti) [2018109] - fq_codel: reject silly quantum parameters (Davide Caratti) [2018109] - net: sched: Fix qdisc_rate_table refcount leak when get tcf_block failed (Davide Caratti) [2018109] - sch_htb: Fix inconsistency when leaf qdisc creation fails (Davide Caratti) [2018109] - net: sched: fix lockdep_set_class() typo error for sch->seqlock (Davide Caratti) [2018109] - net: sched: cls_api: Fix the the wrong parameter (Davide Caratti) [2018109] - net/sched: act_vlan: Fix modify to allow 0 (Davide Caratti) [2018109] - net-sysfs: initialize uid and gid before calling net_ns_get_ownership (Xin Long) [1979820] - net: fix sysfs permssions when device changes network namespace (Xin Long) [1979820] - net-sysfs: add queue_change_owner() (Xin Long) [1979820] - net-sysfs: add netdev_change_owner() (Xin Long) [1979820] - drivers/base/power: add dpm_sysfs_change_owner() (Xin Long) [1979820] - device: add device_change_owner() (Xin Long) [1979820] - sysfs: Fix regression when adding a file to an existing group (Xin Long) [1979820] - bridge: make sure objects belong to container's owner (Xin Long) [1979820] - net: create reusable function for getting ownership info of sysfs inodes (Xin Long) [1979820] - net-sysfs: make sure objects belong to container's owner (Xin Long) [1979820] - net-sysfs: require net admin in the init ns for setting tx_maxrate (Xin Long) [1979820] - driver core: set up ownership of class devices in sysfs (Xin Long) [1979820] - kobject: kset_create_and_add() - fetch ownership info from parent (Xin Long) [1979820] - sysfs, kobject: allow creating kobject belonging to arbitrary users (Xin Long) [1979820] - NFSv42: Fix pagecache invalidation after COPY/CLONE (Benjamin Coddington) [2017166] - SUNRPC: fix sign error causing rpcsec_gss drops (Benjamin Coddington) [2017166] - nfsd4: Handle the NFSv4 READDIR 'dircount' hint being zero (Benjamin Coddington) [2017166] - nfsd: fix error handling of register_pernet_subsys() in init_nfsd() (Benjamin Coddington) [2017166] - SUNRPC: Simplify socket shutdown when not reusing TCP ports (Benjamin Coddington) [2017166] - nfsd4: Fix forced-expiry locking (Benjamin Coddington) [2017166] - SUNRPC/xprtrdma: Fix reconnection locking (Benjamin Coddington) [2017166] - NFSv4/pnfs: The layout barrier indicate a minimal value for the seqid (Benjamin Coddington) [2017166] - NFSv4/pNFS: Always allow update of a zero valued layout barrier (Benjamin Coddington) [2017166] - NFSv4/pNFS: Fix a layoutget livelock loop (Benjamin Coddington) [2017166] - xprtrdma: Put rpcrdma_reps before waking the tear-down completion (Benjamin Coddington) [2017166] - NFSD: Fix TP_printk() format specifier in nfsd_clid_class (Benjamin Coddington) [2017166] - NFSv42: Copy offload should update the file size when appropriate (Benjamin Coddington) [2017166] - SUNRPC: Fix XPT_BUSY flag leakage in svc_handle_xprt()... (Benjamin Coddington) [2017166] - NFSv4/pNFS: Return an error if _nfs4_pnfs_v3_ds_connect can't load NFSv3 (Benjamin Coddington) [2017166] - NFSv4/pNFS: Don't call _nfs4_pnfs_v3_ds_connect multiple times (Benjamin Coddington) [2017166] - NFSv4/pnfs: Clean up layout get on open (Benjamin Coddington) [2017166] - NFSv4/pnfs: Fix layoutget behaviour after invalidation (Benjamin Coddington) [2017166] - NFSv4/pnfs: Fix the layout barrier update (Benjamin Coddington) [2017166] - NFSD: Prevent a possible oops in the nfs_dirent() tracepoint (Benjamin Coddington) [2017166] - nfsd: remove redundant assignment to pointer 'this' (Benjamin Coddington) [2017166] - nfs_common: fix doc warning (Benjamin Coddington) [2017166] - nfsd4: Expose the callback address and state of each NFS4 client (Benjamin Coddington) [2017166] - xprtrdma: Fix spelling mistakes (Benjamin Coddington) [2017166] - NFS: nfs_find_open_context() may only select open files (Benjamin Coddington) [2017166] - SUNRPC: Should wake up the privileged task firstly. (Benjamin Coddington) [2017166] - SUNRPC: Fix the batch tasks count wraparound. (Benjamin Coddington) [2017166] - nfs: update has_sec_mnt_opts after cloning lsm options from parent (Benjamin Coddington) [2017166] - nfs: fix acl memory leak of posix_acl_create() (Benjamin Coddington) [2017166] - rpc: remove redundant initialization of variable status (Benjamin Coddington) [2017166] - NFSv4: Initialise connection to the server in nfs4_alloc_client() (Benjamin Coddington) [2017166] - nfsd: Prevent truncation of an unlinked inode from blocking access to its directory (Benjamin Coddington) [2017166] - xprtrdma: Fix a maybe-uninitialized compiler warning (Benjamin Coddington) [2017166] - NFSv4: Fix second deadlock in nfs4_evict_inode() (Benjamin Coddington) [2017166] - NFSv4: Fix deadlock between nfs4_evict_inode() and nfs4_opendata_get_inode() (Benjamin Coddington) [2017166] - NFS: FMODE_READ and friends are C macros, not enum types (Benjamin Coddington) [2017166] - NFS: Fix a potential NULL dereference in nfs_get_client() (Benjamin Coddington) [2017166] - NFS: Fix use-after-free in nfs4_init_client() (Benjamin Coddington) [2017166] - NFSv4: nfs4_proc_set_acl needs to restore NFS_CAP_UIDGID_NOMAP on error. (Benjamin Coddington) [2017166] - nfs: Remove trailing semicolon in macros (Benjamin Coddington) [2017166] - NFSv4: Fix v4.0/v4.1 SEEK_DATA return -ENOTSUPP when set NFS_V4_2 config (Benjamin Coddington) [2017166] - NFS: Clean up reset of the mirror accounting variables (Benjamin Coddington) [2017166] - NFS: Don't corrupt the value of pg_bytes_written in nfs_do_recoalesce() (Benjamin Coddington) [2017166] - NFS: Fix an Oopsable condition in __nfs_pageio_add_request() (Benjamin Coddington) [2017166] - SUNRPC: More fixes for backlog congestion (Benjamin Coddington) [2017166] - SUNRPC: Fix Oops in xs_tcp_send_request() when transport is disconnected (Benjamin Coddington) [2017166] - NFSv4: Fix a NULL pointer dereference in pnfs_mark_matching_lsegs_return() (Benjamin Coddington) [2017166] - SUNRPC in case of backlog, hand free slots directly to waiting task (Benjamin Coddington) [2017166] - pNFS/NFSv4: Remove redundant initialization of 'rd_size' (Benjamin Coddington) [2017166] - NFS: fix an incorrect limit in filelayout_decode_layout() (Benjamin Coddington) [2017166] - fs/nfs: Use fatal_signal_pending instead of signal_pending (Benjamin Coddington) [2017166] - xprtrdma: Fix a NULL dereference in frwr_unmap_sync() (Benjamin Coddington) [2017166] - sunrpc: Fix misplaced barrier in call_decode (Benjamin Coddington) [2017166] - SUNRPC: set rq_page_end differently (Benjamin Coddington) [2017166] - xprtrdma: Move fr_mr field to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move the Work Request union to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move fr_linv_done field to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move cqe to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move fr_cid to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Remove the RPC/RDMA QP event handler (Benjamin Coddington) [2017166] - xprtrdma: Add tracepoints showing FastReg WRs and remote invalidation (Benjamin Coddington) [2017166] - xprtrdma: Avoid Send Queue wrapping (Benjamin Coddington) [2017166] - xprtrdma: Do not wake RPC consumer on a failed LocalInv (Benjamin Coddington) [2017166] - xprtrdma: Do not recycle MR after FastReg/LocalInv flushes (Benjamin Coddington) [2017166] - xprtrdma: Clarify use of barrier in frwr_wc_localinv_done() (Benjamin Coddington) [2017166] - xprtrdma: Rename frwr_release_mr() (Benjamin Coddington) [2017166] - xprtrdma: rpcrdma_mr_pop() already does list_del_init() (Benjamin Coddington) [2017166] - xprtrdma: Delete rpcrdma_recv_buffer_put() (Benjamin Coddington) [2017166] - xprtrdma: Fix cwnd update ordering (Benjamin Coddington) [2017166] - xprtrdma: Improve locking around rpcrdma_rep creation (Benjamin Coddington) [2017166] - xprtrdma: Improve commentary around rpcrdma_reps_unmap() (Benjamin Coddington) [2017166] - xprtrdma: Improve locking around rpcrdma_rep destruction (Benjamin Coddington) [2017166] - xprtrdma: Put flushed Receives on free list instead of destroying them (Benjamin Coddington) [2017166] - xprtrdma: Do not refresh Receive Queue while it is draining (Benjamin Coddington) [2017166] - xprtrdma: Avoid Receive Queue wrapping (Benjamin Coddington) [2017166] - SUNRPC: fix ternary sign expansion bug in tracing (Benjamin Coddington) [2017166] - nfsd: Fix fall-through warnings for Clang (Benjamin Coddington) [2017166] - nfsd: reshuffle some code (Benjamin Coddington) [2017166] - nfsd: track filehandle aliasing in nfs4_files (Benjamin Coddington) [2017166] - nfsd: hash nfs4_files by inode number (Benjamin Coddington) [2017166] - NFSv4.1: Simplify layout return in pnfs_layout_process() (Benjamin Coddington) [2017166] - NFSv4: Don't discard segments marked for return in _pnfs_return_layout() (Benjamin Coddington) [2017166] - nfsd: ensure new clients break delegations (Benjamin Coddington) [2017166] - NFS: Don't discard pNFS layout segments that are marked for return (Benjamin Coddington) [2017166] - NFSv4.x: Don't return NFS4ERR_NOMATCHING_LAYOUT if we're unmounting (Benjamin Coddington) [2017166] - nfsd: remove unused function (Benjamin Coddington) [2017166] - svcrdma: Pass a useful error code to the send_err tracepoint (Benjamin Coddington) [2017166] - svcrdma: Rename goto labels in svc_rdma_sendto() (Benjamin Coddington) [2017166] - svcrdma: Don't leak send_ctxt on Send errors (Benjamin Coddington) [2017166] - SUNRPC: Remove trace_xprt_transmit_queued (Benjamin Coddington) [2017166] - SUNRPC: Add tracepoint that fires when an RPC is retransmitted (Benjamin Coddington) [2017166] - SUNRPC: Move fault injection call sites (Benjamin Coddington) [2017166] - pNFS/flexfiles: fix incorrect size check in decode_nfs_fh() (Benjamin Coddington) [2017166] - NFSv4: Catch and trace server filehandle encoding errors (Benjamin Coddington) [2017166] - NFSv4: Convert nfs_xdr_status tracepoint to an event class (Benjamin Coddington) [2017166] - NFSv4: Add tracing for COMPOUND errors (Benjamin Coddington) [2017166] - NFSv4: Don't modify the change attribute cached in the inode (Benjamin Coddington) [2017166] - NFSv4: Fix value of decode_fsinfo_maxsz (Benjamin Coddington) [2017166] - NFS: Fix up revalidation of space used (Benjamin Coddington) [2017166] - NFS: NFS_INO_REVAL_PAGECACHE should mark the change attribute invalid (Benjamin Coddington) [2017166] - NFS: Mask out unsupported attributes in nfs_getattr() (Benjamin Coddington) [2017166] - NFS: Fix up inode cache tracing (Benjamin Coddington) [2017166] - NFS: Deal correctly with attribute generation counter overflow (Benjamin Coddington) [2017166] - NFSv4.2: Always flush out writes in nfs42_proc_fallocate() (Benjamin Coddington) [2017166] - NFS: Fix attribute bitmask in _nfs42_proc_fallocate() (Benjamin Coddington) [2017166] - NFS: nfs4_bitmask_adjust() must not change the server global bitmasks (Benjamin Coddington) [2017166] - NFSD: Use DEFINE_SPINLOCK() for spinlock (Benjamin Coddington) [2017166] - sunrpc: Remove unused function ip_map_lookup (Benjamin Coddington) [2017166] - NFS: Fix fscache invalidation in nfs_set_cache_invalid() (Benjamin Coddington) [2017166] - SUNRPC: Ensure the transport backchannel association (Benjamin Coddington) [2017166] - nfs: hornor timeo and retrans option when mounting NFSv3 (Benjamin Coddington) [2017166] - sunrpc: honor rpc_task's timeout value in rpcb_create() (Benjamin Coddington) [2017166] - nfs: Fix a typo in the file nfs42xattr.c (Benjamin Coddington) [2017166] - NFS: fs_context: validate UDP retrans to prevent shift out-of-bounds (Benjamin Coddington) [2017166] - NFS: Fix up incorrect documentation (Benjamin Coddington) [2017166] - NFSv4: Simplify nfs4_retry_setlk() (Benjamin Coddington) [2017166] - UAPI: nfsfh.h: Replace one-element array with flexible-array member (Benjamin Coddington) [2017166] - svcrdma: Clean up dto_q critical section in svc_rdma_recvfrom() (Benjamin Coddington) [2017166] - svcrdma: Remove svc_rdma_recv_ctxt::rc_pages and ::rc_arg (Benjamin Coddington) [2017166] - svcrdma: Remove sc_read_complete_q (Benjamin Coddington) [2017166] - svcrdma: Single-stage RDMA Read (Benjamin Coddington) [2017166] - SUNRPC: Move svc_xprt_received() call sites (Benjamin Coddington) [2017166] - SUNRPC: Export svc_xprt_received() (Benjamin Coddington) [2017166] - svcrdma: Retain the page backing rq_res.head[0].iov_base (Benjamin Coddington) [2017166] - svcrdma: Remove unused sc_pages field (Benjamin Coddington) [2017166] - svcrdma: Normalize Send page handling (Benjamin Coddington) [2017166] - svcrdma: Add a "deferred close" helper (Benjamin Coddington) [2017166] - svcrdma: Maintain a Receive water mark (Benjamin Coddington) [2017166] - svcrdma: Use svc_rdma_refresh_recvs() in wc_receive (Benjamin Coddington) [2017166] - svcrdma: Add a batch Receive posting mechanism (Benjamin Coddington) [2017166] - svcrdma: Remove stale comment for svc_rdma_wc_receive() (Benjamin Coddington) [2017166] - svcrdma: Provide an explanatory comment in CMA event handler (Benjamin Coddington) [2017166] - svcrdma: RPCDBG_FACILITY is no longer used (Benjamin Coddington) [2017166] - nfsd: don't ignore high bits of copy count (Benjamin Coddington) [2017166] - nfsd: COPY with length 0 should copy to end of file (Benjamin Coddington) [2017166] - nfsd: Fix typo "accesible" (Benjamin Coddington) [2017166] - nfsd: Ensure knfsd shuts down when the "nfsd" pseudofs is unmounted (Benjamin Coddington) [2017166] - nfsd: Log client tracking type log message as info instead of warning (Benjamin Coddington) [2017166] - nfsd: helper for laundromat expiry calculations (Benjamin Coddington) [2017166] - NFSD: Clean up NFSDDBG_FACILITY macro (Benjamin Coddington) [2017166] - NFSD: Add a tracepoint to record directory entry encoding (Benjamin Coddington) [2017166] - rpc: fix NULL dereference on kmalloc failure (Benjamin Coddington) [2017166] - sunrpc: fix refcount leak for rpc auth modules (Benjamin Coddington) [2017166] - NFSD: Repair misuse of sv_lock in 5.10.16-rt30. (Benjamin Coddington) [2017166] - svcrdma: disable timeouts on rdma backchannel (Benjamin Coddington) [2017166] - svcrdma: Hold private mutex while invoking rdma_accept() (Benjamin Coddington) [2017166] - NFS: Don't set NFS_INO_INVALID_XATTR if there is no xattr cache (Benjamin Coddington) [2017166] - NFS: Always clear an invalid mapping when attempting a buffered write (Benjamin Coddington) [2017166] - NFS: Optimise sparse writes past the end of file (Benjamin Coddington) [2017166] - NFS: Fix documenting comment for nfs_revalidate_file_size() (Benjamin Coddington) [2017166] - rpcrdma: Fix comments about reverse-direction operation (Benjamin Coddington) [2017166] - xprtrdma: Refactor invocations of offset_in_page() (Benjamin Coddington) [2017166] - xprtrdma: Simplify rpcrdma_convert_kvec() and frwr_map() (Benjamin Coddington) [2017166] - xprtrdma: Remove FMR support in rpcrdma_convert_iovs() (Benjamin Coddington) [2017166] - NFS: Fix fscache read from NFS after cache error (Benjamin Coddington) [2017166] - NFS: Ensure nfs_readpage returns promptly when internal error occurs (Benjamin Coddington) [2017166] - NFS: Remove unnecessary inode parameter from nfs_pageio_complete_read() (Benjamin Coddington) [2017166] - NFS: Add nfs_pageio_complete_read() and remove nfs_readpage_async() (Benjamin Coddington) [2017166] - NFS: Call readpage_async_filler() from nfs_readpage_async() (Benjamin Coddington) [2017166] - NFS: Refactor nfs_readpage() and nfs_readpage_async() to use nfs_readdesc (Benjamin Coddington) [2017166] - NFS: In nfs_readpage() only increment NFSIOS_READPAGES when read succeeds (Benjamin Coddington) [2017166] - NFS: Clean up nfs_readpage() and nfs_readpages() (Benjamin Coddington) [2017166] - nfs: Fix fall-through warnings for Clang (Benjamin Coddington) [2017166] - SUNRPC: Fix fall-through warnings for Clang (Benjamin Coddington) [2017166] - net: sunrpc: xprtsock.c: Corrected few spellings ,in comments (Benjamin Coddington) [2017166] - SUNRPC: correct error code comment in xs_tcp_setup_socket() (Benjamin Coddington) [2017166] - nfsd: cstate->session->se_client -> cstate->clp (Benjamin Coddington) [2017166] - nfsd: simplify nfsd4_check_open_reclaim (Benjamin Coddington) [2017166] - nfsd: remove unused set_client argument (Benjamin Coddington) [2017166] - nfs/blocklayout: remove cruft in bl_alloc_init_bio (Benjamin Coddington) [2017166] - nfsd: refactor set_client (Benjamin Coddington) [2017166] - nfsd: rename lookup_clientid->set_client (Benjamin Coddington) [2017166] - nfsd: simplify nfsd_renew (Benjamin Coddington) [2017166] - nfsd: simplify process_lock (Benjamin Coddington) [2017166] - nfsd4: simplify process_lookup1 (Benjamin Coddington) [2017166] - SUNRPC: Correct a comment (Benjamin Coddington) [2017166] - svcrdma: DMA-sync the receive buffer in svc_rdma_recvfrom() (Benjamin Coddington) [2017166] - svcrdma: Restore read and write stats (Benjamin Coddington) [2017166] - svcrdma: Convert rdma_stat_sq_starve to a per-CPU counter (Benjamin Coddington) [2017166] - svcrdma: Convert rdma_stat_recv to a per-CPU counter (Benjamin Coddington) [2017166] - svcrdma: Refactor svc_rdma_init() and svc_rdma_clean_up() (Benjamin Coddington) [2017166] - nfsd: remove fault injection code (Benjamin Coddington) [2017166] - SUNRPC: Fix a NULL pointer deref in trace_svc_stats_latency() (Benjamin Coddington) [2017166] - SUNRPC: Display RPC procedure names instead of proc numbers (Benjamin Coddington) [2017166] - SUNRPC: Make trace_svc_process() display the RPC procedure symbolically (Benjamin Coddington) [2017166] - EDAC/mce_amd: Do not load edac_mce_amd module on guests (Aristeu Rozanski) [2000776] - tracing: Map all PIDs to command lines (Jerome Marchand) [1913211] - mm/zsmalloc.c: close race window between zs_pool_dec_isolated() and zs_unregister_migration() (Rafael Aquini) [2016441] - mm: mark the OOM reaper thread as freezable (Rafael Aquini) [2016441] - mm/page_isolation: guard against possible putback unisolated page (Rafael Aquini) [2016441] - mm/page_isolation: fix potential missing call to unset_migratetype_isolate() (Rafael Aquini) [2016441] - mm/page_alloc: use accumulated load when building node fallback list (Rafael Aquini) [2016441] - mm/vmalloc: do not adjust the search size for alignment overhead (Rafael Aquini) [2016441] - mm/vmalloc: make sure to dump unpurged areas in /proc/vmallocinfo (Rafael Aquini) [2016441] - Revert "mm, slub: consider rest of partial list if acquire_slab() fails" (Rafael Aquini) [2016441] - mm, slub: consider rest of partial list if acquire_slab() fails (Rafael Aquini) [2016441] - mm, slub: fix incorrect memcg slab count for bulk free (Rafael Aquini) [2016441] - mm, slub: fix mismatch between reconstructed freelist depth and cnt (Rafael Aquini) [2016441] - slub: add back check for free nonslab objects (Rafael Aquini) [2016441] - slub: fix kmalloc_pagealloc_invalid_free unit test (Rafael Aquini) [2016441] - slub: fix unreclaimable slab stat for bulk free (Rafael Aquini) [2016441] - mm/slub: add taint after the errors are printed (Rafael Aquini) [2016441] - mm/slab.c: remove useless lines in enable_cpucache() (Rafael Aquini) [2016441] - kasan: fix tag for large allocations when using CONFIG_SLAB (Rafael Aquini) [2016441] - mm/hmm: bypass devmap pte when all pfn requested flags are fulfilled (Rafael Aquini) [2016441] - mm: memcontrol: set the correct memcg swappiness restriction (Rafael Aquini) [2016441] - memcg: replace in_interrupt() by !in_task() in active_memcg() (Rafael Aquini) [2016441] - huge tmpfs: fix split_huge_page() after FALLOC_FL_KEEP_SIZE (Rafael Aquini) [2016441] - huge tmpfs: fix fallocate(vanilla) advance over huge pages (Rafael Aquini) [2016441] - huge tmpfs: revert shmem's use of transhuge_vma_enabled() (Rafael Aquini) [2016441] - mm/huge_memory.c: remove unnecessary tlb_remove_page_size() for huge zero pmd (Rafael Aquini) [2016441] - mm/huge_memory.c: add missing read-only THP checking in transparent_hugepage_enabled() (Rafael Aquini) [2016441] - mm/huge_memory.c: use page->deferred_list (Rafael Aquini) [2016441] - mm/huge_memory.c: remove dedicated macro HPAGE_CACHE_INDEX_MASK (Rafael Aquini) [2016441] - mm/thp: decrease nr_thps in file's mapping on THP split (Rafael Aquini) [2016441] - mm/thp: fix page_address_in_vma() on file THP tails (Rafael Aquini) [2016441] - mm/thp: try_to_unmap() use TTU_SYNC for safe splitting (Rafael Aquini) [2016441] - mm/thp: make is_huge_zero_pmd() safe and quicker (Rafael Aquini) [2016441] - mm/thp: fix __split_huge_pmd_locked() on shmem migration entry (Rafael Aquini) [2016441] - mm/truncate: fix truncation for pages of arbitrary size (Rafael Aquini) [2016441] - mm/rmap: fix potential pte_unmap on an not mapped pte (Rafael Aquini) [2016441] - mm/rmap: correct obsolete comment of page_get_anon_vma() (Rafael Aquini) [2016441] - mm/rmap: use page_not_mapped in try_to_unmap() (Rafael Aquini) [2016441] - mm/rmap: fix obsolete comment in __page_check_anon_rmap() (Rafael Aquini) [2016441] - mm/rmap: remove unneeded semicolon in page_not_mapped() (Rafael Aquini) [2016441] - mm/rmap: correct some obsolete comments of anon_vma (Rafael Aquini) [2016441] - mm/pgtable-generic.c: optimize the VM_BUG_ON condition in pmdp_huge_clear_flush() (Rafael Aquini) [2016441] - mm/pgtable-generic.c: simplify the VM_BUG_ON condition in pmdp_huge_clear_flush() (Rafael Aquini) [2016441] - mm: prevent a warning when casting void* -> enum (Rafael Aquini) [2016441] - mm/hugeltb: simplify the return code of __vma_reservation_common() (Rafael Aquini) [2016441] - mm,thp,shmem: make khugepaged obey tmpfs mount flags (Rafael Aquini) [2016441] - mm/vma: make is_vma_temporary_stack() available for general use (Rafael Aquini) [2016441] - mm/vma: make vma_is_foreign() available for general use (Rafael Aquini) [2016441] - hugetlb: fix copy_huge_page_from_user contig page struct assumption (Rafael Aquini) [2016441] - mm/sparsemem: pfn_to_page is not valid yet on SPARSEMEM (Rafael Aquini) [2016441] - mm/sparse.c: use __nr_to_section(section_nr) to get mem_section (Rafael Aquini) [2016441] - mm/huge_memory.c: thp: fix conflict of above-47bit hint address and PMD alignment (Rafael Aquini) [2016441] - mm/huge_memory.c: make __thp_get_unmapped_area static (Rafael Aquini) [2016441] - mm/mempolicy.c: fix checking unmapped holes for mbind (Rafael Aquini) [2016441] - s390/mm: fix VMA and page table handling code in storage key handling functions (Rafael Aquini) [2016441] - s390/mm: validate VMA in PGSTE manipulation functions (Rafael Aquini) [2016441] - s390/gmap: don't unconditionally call pte_unmap_unlock() in __gmap_zap() (Rafael Aquini) [2016441] - s390/gmap: validate VMA in __gmap_zap() (Rafael Aquini) [2016441] - s390: mm: Fix secure storage access exception handling (Rafael Aquini) [2016441] - powerpc/numa: Consider the max NUMA node for migratable LPAR (Rafael Aquini) [2016441] - powerpc/64s: Fix pte update for kernel memory on radix (Rafael Aquini) [2016441] - powerpc/mm: sanity_check_fault() should work for all, not only BOOK3S (Rafael Aquini) [2016441] - powerpc/book3s64/pkeys: Use PVR check instead of cpu feature (Rafael Aquini) [2016441] - powerpc/mm: Fix reporting of kernel execute faults on the 8xx (Rafael Aquini) [2016441] - powerpc/mm/hash: Handle user access of kernel address gracefully (Rafael Aquini) [2016441] - powerpc/mm: Add missing tracepoint for tlbie (Rafael Aquini) [2016441] - arm64: hugetlb: avoid potential NULL dereference (Rafael Aquini) [2016441] - arm64/numa: Report correct memblock range for the dummy node (Rafael Aquini) [2016441] - x86/pat: Pass valid address to sanitize_phys() (Rafael Aquini) [2016441] - x86/mm: Check for pfn instead of page in vmalloc_sync_one() (Rafael Aquini) [2016441] - x86/mm/tlb: Revert "x86/mm: Align TLB invalidation info" (Rafael Aquini) [2016441] - x86/mm: Report which part of kernel image is freed (Rafael Aquini) [2016441] - mm: make free_reserved_area() return "const char *" (Rafael Aquini) [2016441] - x86/mm/init: Remove freed kernel image areas from alias mapping (Rafael Aquini) [2016441] - x86/mm/init: Add helper for freeing kernel image pages (Rafael Aquini) [2016441] - x86/mm/init: Pass unconverted symbol addresses to free_init_pages() (Rafael Aquini) [2016441] - x86/mm: Add TLB purge to free pmd/pte page interfaces (Rafael Aquini) [2016441] - mm/mmu_notifier: Make drm-backport/linux/mmu_notifier.h use RH_MMU_NOTIFIER_V2 (Waiman Long) [1946746] - mm/migrate: fix migrate_pgmap_owner w/o CONFIG_MMU_NOTIFIER (Waiman Long) [1946746] - mm/notifier: add migration invalidation type (Waiman Long) [1946746] - mm/migrate: add a flags parameter to migrate_vma (Waiman Long) [1946746] - mm/mmu_notifiers: ensure range_end() is paired with range_start() (Waiman Long) [1946746] - mm: track mmu notifiers in fs_reclaim_acquire/release (Waiman Long) [1946746] - mm: mmu_notifier: fix and extend kerneldoc (Waiman Long) [1946746] - mm/mmu_notifier: silence PROVE_RCU_LIST warnings (Waiman Long) [1946746] - mm/mmu_notifiers: Use 'interval_sub' as the variable for mmu_interval_notifier (Waiman Long) [1946746] - mm/mmu_notifiers: Use 'subscription' as the variable name for mmu_notifier (Waiman Long) [1946746] - mm/mmu_notifier: Rename struct mmu_notifier_mm to mmu_notifier_subscriptions (Waiman Long) [1946746] - mm, notifier: Catch sleeping/blocking for !blockable (Waiman Long) [1946746] - mm/mmu_notifiers: use the right return code for WARN_ON (Waiman Long) [1946746] - mm/mmu_notifiers: check if mmu notifier callbacks are allowed to fail (Waiman Long) [1946746] - mm/mmu_notifier: mmu_notifier_range_update_to_read_only() helper (Waiman Long) [1946746] - mm/mmu_notifier: pass down vma and reasons why mmu notifier is happening (Waiman Long) [1946746] - mm/mmu_notifier: use structure for invalidate_range_start/end callback (Waiman Long) [1946746] - Revert "mm, mmu_notifier: annotate mmu notifiers with blockable invalidate callbacks" (Waiman Long) [1946746] - mm, mmu_notifier: be explicit about range invalition non-blocking mode (Waiman Long) [1946746] - mm/oom_kill.c: clean up oom_reap_task_mm() (Waiman Long) [1946746] - mm, oom: distinguish blockable mode for mmu notifiers (Waiman Long) [1946746] - mm/mmu_notifier: helper to test if a range invalidation is blockable (Waiman Long) [1946746] - mm/mmu_notifier: Relocate mmu_notifier_put() (Waiman Long) [1946746] - mm/mmu_notifier: Add mmu_notifier versioning mechanism (Waiman Long) [1946746] - af_unix: Return errno instead of NULL in unix_create1(). (Balazs Nemeth) [2026690] - netfilter: nf_tables: fix audit memory leak in nf_tables_commit (Phil Sutter) [2028926] - ethtool: Validate module EEPROM offset as part of policy (Ivan Vecera) [2019090] - ethtool: Validate module EEPROM length as part of policy (Ivan Vecera) [2019090] - ethtool: Use kernel data types for internal EEPROM struct (Ivan Vecera) [2019090] - ethtool: Document behavior when module EEPROM bank attribute is omitted (Ivan Vecera) [2019090] - ethtool: Decrease size of module EEPROM get policy array (Ivan Vecera) [2019090] - ethtool: Document correct attribute type (Ivan Vecera) [2019090] - ethtool: Use correct command name in title (Ivan Vecera) [2019090] - net: fix mistake path for netdev_features_strings (Ivan Vecera) [2019089 2019090 2019092] - ethtool: add a stricter length check (Ivan Vecera) [2019089 2019090 2019092] - ethtool: Fix a typo (Ivan Vecera) [2019089 2019090 2019092] - net: ethtool: clear heap allocations for ethtool function (Ivan Vecera) [2019090] - ethtool: Fix NULL pointer dereference during module EEPROM dump (Ivan Vecera) [2019090] - ethtool: stats: Fix a copy-paste error (Ivan Vecera) [2019092] - ethtool: add missing EEPROM to list of messages (Ivan Vecera) [2019090] - ethtool: stats: clarify the initialization to ETHTOOL_STAT_NOT_SET (Ivan Vecera) [2019092] - ethtool: ioctl: Fix out-of-bounds warning in store_link_ksettings_for_user() (Ivan Vecera) [2019092] - ethtool: add interface to read RMON stats (Ivan Vecera) [2019092] - ethtool: add interface to read standard MAC Ctrl stats (Ivan Vecera) [2019092] - ethtool: add interface to read standard MAC stats (Ivan Vecera) [2019092] - ethtool: add a new command for reading standard stats (Ivan Vecera) [2019092] - docs: ethtool: document standard statistics (Ivan Vecera) [2019092] - docs: networking: extend the statistics documentation (Ivan Vecera) [2019092] - ethtool: add FEC statistics (Ivan Vecera) [2019089] - docs: net: statistics.rst: remove a duplicated kernel-doc (Ivan Vecera) [2019089] - ethtool: fec_prepare_data() - jump to error handling (Ivan Vecera) [2019089] - ethtool: move ethtool_stats_init (Ivan Vecera) [2019089] - ethtool: wire in generic SFP module access (Ivan Vecera) [2019090] - phy: sfp: add netlink SFP support to generic SFP code (Ivan Vecera) [2019090] - ethtool: Add fallback to get_module_eeprom from netlink command (Ivan Vecera) [2019090] - net: ethtool: Export helpers for getting EEPROM info (Ivan Vecera) [2019090] - ethtool: Allow network drivers to dump arbitrary EEPROM data (Ivan Vecera) [2019090] - docs: ethtool: correct quotes (Ivan Vecera) [2019090] - selftests: ethtool: add a netdevsim FEC test (Ivan Vecera) [2019089] - netdevsim: add FEC settings support (Ivan Vecera) [2019089] - ethtool: support FEC settings over netlink (Ivan Vecera) [2019089] - ethtool: document the enum values not defines (Ivan Vecera) [2019089] - ethtool: fec: fix FEC_NONE check (Ivan Vecera) [2019089] - ethtool: fec: add note about reuse of reserved (Ivan Vecera) [2019089] - ethtool: clarify the ethtool FEC interface (Ivan Vecera) [2019089] - ethtool: fec: sanitize ethtool_fecparam->fec (Ivan Vecera) [2019089] - ethtool: fec: sanitize ethtool_fecparam->active_fec (Ivan Vecera) [2019089] - ethtool: fec: sanitize ethtool_fecparam->reserved (Ivan Vecera) [2019089] - ethtool: fec: remove long structure description (Ivan Vecera) [2019089] - ethtool: fec: fix typo in kdoc (Ivan Vecera) [2019089] - net: Remove redundant if statements (Petr Oros) [2026472] - netdevice: add the case if dev is NULL (Petr Oros) [2026472] - nvmet: use IOCB_NOWAIT only if the filesystem supports it (Chris Leech) [2015563] - nvmet-tcp: fix incomplete data digest send (Chris Leech) [2015563] - nvmet-tcp: fix memory leak when performing a controller reset (Chris Leech) [2015563] - nvmet-tcp: add an helper to free the cmd buffers (Chris Leech) [2015563] - nvmet-tcp: fix a race condition between release_queue and io_work (Chris Leech) [2015563] - nvmet-tcp: fix use-after-free when a port is removed (Chris Leech) [2015563] - nvmet-rdma: fix use-after-free when a port is removed (Chris Leech) [2015563] - nvmet: fix use-after-free when a port is removed (Chris Leech) [2015563] - nvmet-tcp: fix header digest verification (Chris Leech) [2015563] - nvmet-tcp: fix data digest pointer calculation (Chris Leech) [2015563] - nvmet-tcp: fix a memory leak when releasing a queue (Chris Leech) [2015563] - nvmet: fix a width vs precision bug in nvmet_subsys_attr_serial_show() (Chris Leech) [2015563] - nvmet: fixup buffer overrun in nvmet_subsys_attr_serial() (Chris Leech) [2015563] - nvmet: return bool from nvmet_passthru_ctrl and nvmet_is_passthru_req (Chris Leech) [2015563] - nvmet: looks at the passthrough controller when initializing CAP (Chris Leech) [2015563] - nvmet: check that host sqsize does not exceed ctrl MQES (Chris Leech) [2015563] - nvmet: avoid duplicate qid in connect cmd (Chris Leech) [2015563] - nvmet: pass back cntlid on successful completion (Chris Leech) [2015563] - nvmet: remove redundant assignments of variable status (Chris Leech) [2015563] - nvme-fabrics: ignore invalid fast_io_fail_tmo values (Chris Leech) [2015563] - nvme-tcp: fix memory leak when freeing a queue (Chris Leech) [2015563] - nvme-tcp: validate R2T PDU in nvme_tcp_handle_r2t() (Chris Leech) [2015563] - nvme-tcp: fix data digest pointer calculation (Chris Leech) [2015563] - nvme-tcp: fix possible req->offset corruption (Chris Leech) [2015563] - nvme-tcp: fix H2CData PDU send accounting (again) (Chris Leech) [2015563] - nvme: keep ctrl->namespaces ordered (Chris Leech) [2015563] - nvme-tcp: fix incorrect h2cdata pdu offset accounting (Chris Leech) [2015563] - nvme-tcp: fix io_work priority inversion (Chris Leech) [2015563] - nvme-multipath: fix ANA state updates when a namespace is not present (Chris Leech) [2015563] - nvme: avoid race in shutdown namespace removal (Chris Leech) [2015563] - nvme: update keep alive interval when kato is modified (Chris Leech) [2015563] - nvme: use return value from blk_execute_rq() (Chris Leech) [2015563] - nvme-tcp: Do not reset transport on data digest errors (Chris Leech) [2015563] - nvme-rdma: don't update queue count when failing to set io queues (Chris Leech) [2015563] - nvme-tcp: don't update queue count when failing to set io queues (Chris Leech) [2015563] - nvme-tcp: pair send_mutex init with destroy (Chris Leech) [2015563] - nvme-tcp: don't check blk_mq_tag_to_rq when receiving pdu data (Chris Leech) [2015563] - RDMA/rxe: Bump up default maximum values used via uverbs (Kamal Heib) [2029675]- scsi: qedi: Fix error codes in qedi_alloc_global_queues() (Nilesh Javali) [1983905] - scsi: qedi: Add support for fastpath doorbell recovery (Nilesh Javali) [1983905] - scsi: qedi: Use DEVICE_ATTR_RO() macro (Nilesh Javali) [1983905] - scsi: qedi: Fix host removal with running sessions (Nilesh Javali) [1983905] - scsi: qedi: Wake up if cmd_cleanup_req is set (Nilesh Javali) [1983905] - scsi: qedi: Complete TMF works before disconnect (Nilesh Javali) [1983905] - scsi: qedi: Pass send_iscsi_tmf task to abort (Nilesh Javali) [1983905] - scsi: qedi: Fix cleanup session block/unblock use (Nilesh Javali) [1983905] - scsi: qedi: Fix TMF session block/unblock use (Nilesh Javali) [1983905] - scsi: qedi: Use GFP_NOIO for TMF allocation (Nilesh Javali) [1983905] - scsi: qedi: Fix TMF tid allocation (Nilesh Javali) [1983905] - scsi: qedi: Fix use after free during abort cleanup (Nilesh Javali) [1983905] - scsi: qedi: Fix race during abort timeouts (Nilesh Javali) [1983905] - scsi: qedi: Fix null ref during abort handling (Nilesh Javali) [1983905] - vrf: Fix fast path output packet handling with async Netfilter rules (Antoine Tenart) [2019333] - ipv6: do not drop vrf udp multicast packets (Antoine Tenart) [2019333] - ipv6: handling of multicast packets received in VRF (Antoine Tenart) [2019333] - vrf: Do not attempt to create IPv6 mcast rule if IPv6 is disabled (Antoine Tenart) [2019333] - ipv6: add vrf table handling code for ipv6 mcast (Antoine Tenart) [2019333] - ipv4: Allow sending multicast packets on specific i/f using VRF socket (Antoine Tenart) [2019333] - xfs: fix I_DONTCACHE (Carlos Maiolino) [2024969] - kernfs: don't create a negative dentry if inactive node exists (Ian Kent) [2001597] - kernfs: also call kernfs_set_rev() for positive dentry (Ian Kent) [2001597] - ixgbevf: use xso.real_dev instead of xso.dev in callback functions of struct xfrmdev_ops (Ken Cox) [1970656] - ixgbe: Fix NULL pointer dereference in ixgbe_xdp_setup (Ken Cox) [1970653] - ixgbe, xsk: clean up the resources in ixgbe_xsk_pool_enable error path (Ken Cox) [1970653] - powerpc/perf: Fix missing is_sier_aviable() during build (Gustavo Walbon) [2011687] - perf script: Fix PERF_SAMPLE_WEIGHT_STRUCT support (Michael Petlan) [2026390] - RDMA/core: Set sgtable nents when using ib_dma_virt_map_sg() (Kamal Heib) [2025496] - RDMA: Use the sg_table directly and remove the opencoded version from umem (Kamal Heib) [2025496] - ovs: clear skb->tstamp in forwarding path (Antoine Tenart) [2020160] - net: openvswitch: fix kernel-doc warnings in flow.c (Antoine Tenart) [2020160] - openvswitch: Optimize operation for key comparison (Antoine Tenart) [2020160] - net: openvswitch: Remove unnecessary skb_nfct() (Antoine Tenart) [2020160] - openvswitch: meter: fix race when getting now_ms. (Antoine Tenart) [2020160] - net: openvswitch: Use 'skb_push_rcsum()' instead of hand coding it (Antoine Tenart) [2020160] - openvswitch: Fix a typo (Antoine Tenart) [2020160] - openvswitch: Warn over-mtu packets only if iface is UP. (Antoine Tenart) [2020160] - openvswitch: meter: remove rate from the bucket size calculation (Antoine Tenart) [2020160] - net: openvswitch: use core API to update/provide stats (Antoine Tenart) [2020160] - net: openvswitch: use new function dev_fetch_sw_netstats (Antoine Tenart) [2020160] - net: openvswitch: use dev_sw_netstats_rx_add() (Antoine Tenart) [2020160] - net: openvswitch: Constify static struct genl_small_ops (Antoine Tenart) [2020160] - selftests: add a test case for mirred egress to ingress (Xin Long) [1983894] - net: sched: act_mirred: drop dst for the direction from egress to ingress (Xin Long) [1983894] - usb: hso: fix error handling code of hso_create_net_device (José Ignacio Tornos Martínez) [1986489] {CVE-2021-37159} - i40e: Fix freeing of uninitialized misc IRQ vector (Stefan Assmann) [1990683] - x86/topology: Make __max_die_per_package available unconditionally (Aristeu Rozanski) [1949284] - x86/cpu/amd: Set __max_die_per_package on AMD (Aristeu Rozanski) [1949284] - x86/topology: Set cpu_die_id only if DIE_TYPE found (Aristeu Rozanski) [1949284] - x86/mce: Drop AMD-specific "DEFERRED" case from Intel severity rule list (Aristeu Rozanski) [1949284] - EDAC/mce_amd: Add new error descriptions for existing types (Aristeu Rozanski) [1949284] - x86/mce/amd, edac: Remove report_gart_errors (Aristeu Rozanski) [1949284] - x86/mce/amd: Make threshold bank setting hotplug robust (Aristeu Rozanski) [1949284] - x86/mce/amd: Cleanup threshold device remove path (Aristeu Rozanski) [1949284] - x86/mce/amd: Straighten CPU hotplug path (Aristeu Rozanski) [1949284] - x86/mce/amd: Sanitize thresholding device creation hotplug path (Aristeu Rozanski) [1949284] - x86/mce/amd: Protect a not-fully initialized bank from the thresholding interrupt (Aristeu Rozanski) [1949284] - x86/mce/amd: Init thresholding machinery only on relevant vendors (Aristeu Rozanski) [1949284] - x86/mce/amd: Do proper cleanup on error paths (Aristeu Rozanski) [1949284] - x86/mce/amd: Fix kobject lifetime (Aristeu Rozanski) [1949284] - x86/mce/amd: Publish the bank pointer only after setup has succeeded (Aristeu Rozanski) [1949284] - x86/mce/amd: Make disable_err_thresholding() static (Aristeu Rozanski) [1949284] - x86/MCE: Determine MCA banks' init state properly (Aristeu Rozanski) [1949284] - x86/MCE: Group AMD function prototypes in (Aristeu Rozanski) [1949284] - x86/MCE: Switch to use the new generic UUID API (Aristeu Rozanski) [1949284] - ipv4: fix endianness issue in inet_rtm_getroute_build_skb() (Guillaume Nault) [2022057] - net: igmp: fix data-race in igmp_ifc_timer_expire() (Guillaume Nault) [2022057] - net/ipv4: swap flow ports when validating source (Guillaume Nault) [2022057] - tools headers UAPI: Sync linux/in.h copy with the kernel sources (Guillaume Nault) [2022057] - icmp: don't send out ICMP messages with a source address of 0.0.0.0 (Guillaume Nault) [2022057] - cipso: correct comments of cipso_v4_cache_invalidate() (Guillaume Nault) [2022057] - crypto: ccp - Make use of the helper macro kthread_run() (Vladis Dronov) [1997593] - crypto: ccp - Fix whitespace in sev_cmd_buffer_len() (Vladis Dronov) [1997593] - crypto: ccp - fix resource leaks in ccp_run_aes_gcm_cmd() (Vladis Dronov) [1997593] - crypto: jitter - consider 32 LSB for APT (Herbert Xu) [1994390] - rcu: Tighten rcu_advance_cbs_nowake() checks (Daniel Vacek) [2013408] - cxgb3: Remove seeprom_write and use VPD API (Myron Stowe) [2019086] - cxgb3: Use VPD API in t3_seeprom_wp() (Myron Stowe) [2019086] - cxgb3: Remove t3_seeprom_read and use VPD API (Myron Stowe) [2019086] - PCI/VPD: Use pci_read_vpd_any() in pci_vpd_size() (Myron Stowe) [2019086] - PCI/VPD: Add pci_read/write_vpd_any() (Myron Stowe) [2019086] - PCI/VPD: Defer VPD sizing until first access (Myron Stowe) [2019086] - PCI/VPD: Use unaligned access helpers (Myron Stowe) [2019086] - PCI/VPD: Clean up public VPD defines and inline functions (Myron Stowe) [2019086] - cxgb4: Use pci_vpd_find_id_string() to find VPD ID string (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_find_id_string() (Myron Stowe) [2019086] - PCI/VPD: Include post-processing in pci_vpd_find_tag() (Myron Stowe) [2019086] - PCI/VPD: Stop exporting pci_vpd_find_info_keyword() (Myron Stowe) [2019086] - PCI/VPD: Stop exporting pci_vpd_find_tag() (Myron Stowe) [2019086] - scsi: cxlflash: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - cxgb4: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - cxgb4: Remove unused vpd_param member ec (Myron Stowe) [2019086] - cxgb4: Validate VPD checksum with pci_vpd_check_csum() (Myron Stowe) [2019086] - bnxt: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - bnxt: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - bnx2x: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - bnx2x: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - bnx2: Replace open-coded byte swapping with swab32s() (Myron Stowe) [2019086] - bnx2: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - sfc: falcon: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - sfc: falcon: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - tg3: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - tg3: Validate VPD checksum with pci_vpd_check_csum() (Myron Stowe) [2019086] - tg3: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - sfc: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - sfc: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_check_csum() (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_alloc() (Myron Stowe) [2019086] - PCI/VPD: Treat invalid VPD like missing VPD capability (Myron Stowe) [2019086] - PCI/VPD: Determine VPD size in pci_vpd_init() (Myron Stowe) [2019086] - PCI/VPD: Embed struct pci_vpd in struct pci_dev (Myron Stowe) [2019086] - PCI/VPD: Remove struct pci_vpd.valid member (Myron Stowe) [2019086] - PCI/VPD: Remove struct pci_vpd_ops (Myron Stowe) [2019086] - PCI/VPD: Reorder pci_read_vpd(), pci_write_vpd() (Myron Stowe) [2019086] - PCI/VPD: Remove struct pci_vpd.flag (Myron Stowe) [2019086] - PCI/VPD: Make pci_vpd_wait() uninterruptible (Myron Stowe) [2019086] - PCI/VPD: Remove pci_vpd_size() old_size argument (Myron Stowe) [2019086] - PCI/VPD: Allow access to valid parts of VPD if some is invalid (Myron Stowe) [2019086] - PCI/VPD: Don't check Large Resource Item Names for validity (Myron Stowe) [2019086] - PCI/VPD: Reject resource tags with invalid size (Myron Stowe) [2019086] - PCI/VPD: Treat initial 0xff as missing EEPROM (Myron Stowe) [2019086] - PCI/VPD: Check Resource Item Names against those valid for type (Myron Stowe) [2019086] - PCI/VPD: Correct diagnostic for VPD read failure (Myron Stowe) [2019086] - net: create netdev->dev_addr assignment helpers (Josef Oskera) [2016478] - scsi: ibmvfc: Fix up duplicate response detection (Steve Best) [2015732] - scsi: core: Avoid leaving shost->last_reset with stale value if EH does not run (Ewan D. Milne) [2011330] - libbpf: Add support for new llvm bpf relocations (Yauheni Kaliuta) [1944799] - libbpf: Fix memory leak in strset (Yauheni Kaliuta) [1944799] - selftests: bpf: skip test_doc_build.sh (Yauheni Kaliuta) [1944799] - bpf: Stop caching subprog index in the bpf_pseudo_func insn (Yauheni Kaliuta) [1944799] - redhat/configs: enable CONFIG_BPF_UNPRIV_DEFAULT_OFF (Yauheni Kaliuta) [1944799] - kbuild: Quote OBJCOPY var to avoid a pahole call break the build (Yauheni Kaliuta) [1944799] - bpf: Fix BPF_JIT kconfig symbol dependency (Yauheni Kaliuta) [1944799] - bpf: Add kconfig knob for disabling unpriv bpf by default (Yauheni Kaliuta) [1944799] - bpf, kconfig: Add consolidated menu entry for bpf with core options (Yauheni Kaliuta) [1944799] - tools/resolve_btfids: Fix warnings (Yauheni Kaliuta) [1944799] - tools/runqslower: Allow substituting custom vmlinux.h for the build (Yauheni Kaliuta) [1944799] - lib/string.c: allow searching for NUL with strnchr (Yauheni Kaliuta) [1944799] - rpmspec: update manpages installation after 5.13 rebase (bpf-helpers, bpf-syscall) (Yauheni Kaliuta) [1944799] - libbpf: Fix segfault in static linker for objects without BTF (Yauheni Kaliuta) [1944799] - bpf: Avoid using ARRAY_SIZE on an uninitialized pointer (Yauheni Kaliuta) [1944799] - bpf: Remove superfluous aux sanitation on subprog rejection (Yauheni Kaliuta) [1944799] - bpf: Clarify a bpf_bprintf_prepare macro (Yauheni Kaliuta) [1944799] - bpf: Fix nested bpf_bprintf_prepare with more per-cpu buffers (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix the snprintf test (Yauheni Kaliuta) [1944799] - bpf: Implement formatted output helpers with bstr_printf (Yauheni Kaliuta) [1944799] - seq_file: Add a seq_bprintf function (Yauheni Kaliuta) [1944799] - bpf: Notify user if we ever hit a bpf_snprintf verifier bug (Yauheni Kaliuta) [1944799] - selftests/bpf: Add a series of tests for bpf_snprintf (Yauheni Kaliuta) [1944799] - bpf: Lock bpf_trace_printk's tmp buf before it is written to (Yauheni Kaliuta) [1944799] - bpf: Add a bpf_snprintf helper (Yauheni Kaliuta) [1944799] - bpf: Factorize bpf_trace_printk and bpf_seq_printf (Yauheni Kaliuta) [1944799] - Stop the ad-hoc games with -Wno-maybe-initialized (Yauheni Kaliuta) [1944799] - kbuild: compute false-positive -Wmaybe-uninitialized cases in Kconfig (Yauheni Kaliuta) [1944799] - bpf: Fix potentially incorrect results with bpf_get_local_storage() (Yauheni Kaliuta) [1944799] - bpf, samples: Fix xdpsock with '-M' parameter missing unload process (Yauheni Kaliuta) [1944799] - libbpf: Don't crash on object files with no symbol tables (Yauheni Kaliuta) [1944799] - libbpf: Fix ELF symbol visibility update logic (Yauheni Kaliuta) [1944799] - bpf, selftests: Adjust few selftest outcomes wrt unreachable code (Yauheni Kaliuta) [1944799] - bpf: Do not mark insn as seen under speculative path verification (Yauheni Kaliuta) [1944799] - bpf: Inherit expanded/patched seen count from old aux data (Yauheni Kaliuta) [1944799] - bpf, selftests: Adjust few selftest result_unpriv outcomes (Yauheni Kaliuta) [1944799] - bpf: Fix BPF_LSM kconfig symbol dependency (Yauheni Kaliuta) [1944799] - selftests/bpf: Add test for l3 use of bpf_redirect_peer (Yauheni Kaliuta) [1944799] - bpftool: Add sock_release help info for cgroup attach/prog load command (Yauheni Kaliuta) [1944799] - bpf, offload: Reorder offload callback 'prepare' in verifier (Yauheni Kaliuta) [1944799] - selftests/bpf: Test ringbuf mmap read-only and read-write restrictions (Yauheni Kaliuta) [1944799] - selftests/bpf: Convert static to global in tc_redirect progs (Yauheni Kaliuta) [1944799] - selftests/bpf: Rewrite test_tc_redirect.sh as prog_tests/tc_redirect.c (Yauheni Kaliuta) [1944799] - libbpf: Provide GELF_ST_VISIBILITY() define for older libelf (Yauheni Kaliuta) [1944799] - bpf: Add deny list of btf ids check for tracing programs (Yauheni Kaliuta) [1944799] - bpf: Forbid trampoline attach for functions with variable arguments (Yauheni Kaliuta) [1944799] - samples/bpf: Consider frame size in tx_only of xdpsock sample (Yauheni Kaliuta) [1944799] - libbpf: Add NULL check to add_dummy_ksym_var (Yauheni Kaliuta) [1944799] - libbpf: Fix signed overflow in ringbuf_process_ring (Yauheni Kaliuta) [1944799] - bpf, selftests: Update array map tests for per-cpu batched ops (Yauheni Kaliuta) [1944799] - bpf: Add batched ops support for percpu array (Yauheni Kaliuta) [1944799] - bpf, docs: Fix literal block for example code (Yauheni Kaliuta) [1944799] - bpf, cpumap: Bulk skb using netif_receive_skb_list (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix field existence CO-RE reloc tests (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix BPF_CORE_READ_BITFIELD() macro (Yauheni Kaliuta) [1944799] - selftests/bpf: Use ASSERT macros in lsm test (Yauheni Kaliuta) [1944799] - selftests/bpf: Test that module can't be unloaded with attached trampoline (Yauheni Kaliuta) [1944799] - selftests/bpf: Add re-attach test to lsm test (Yauheni Kaliuta) [1944799] - selftests/bpf: Add re-attach test to fexit_test (Yauheni Kaliuta) [1944799] - selftests/bpf: Add re-attach test to fentry_test (Yauheni Kaliuta) [1944799] - bpf: Allow trampoline re-attach for tracing and lsm programs (Yauheni Kaliuta) [1944799] - bpf: Document the pahole release info related to libbpf in bpf_devel_QA.rst (Yauheni Kaliuta) [1944799] - selftests/bpf: Document latest Clang fix expectations for linking tests (Yauheni Kaliuta) [1944799] - selftests/bpf: Add map linking selftest (Yauheni Kaliuta) [1944799] - selftests/bpf: Add global variables linking selftest (Yauheni Kaliuta) [1944799] - selftests/bpf: Add function linking selftest (Yauheni Kaliuta) [1944799] - selftests/bpf: Omit skeleton generation for multi-linked BPF object files (Yauheni Kaliuta) [1944799] - selftests/bpf: Use -O0 instead of -Og in selftests builds (Yauheni Kaliuta) [1944799] - libbpf: Support extern resolution for BTF-defined maps in .maps section (Yauheni Kaliuta) [1944799] - libbpf: Add linker extern resolution support for functions and global variables (Yauheni Kaliuta) [1944799] - libbpf: Tighten BTF type ID rewriting with error checking (Yauheni Kaliuta) [1944799] - libbpf: Extend sanity checking ELF symbols with externs validation (Yauheni Kaliuta) [1944799] - libbpf: Make few internal helpers available outside of libbpf.c (Yauheni Kaliuta) [1944799] - libbpf: Factor out symtab and relos sanity checks (Yauheni Kaliuta) [1944799] - libbpf: Refactor BTF map definition parsing (Yauheni Kaliuta) [1944799] - libbpf: Allow gaps in BPF program sections to support overriden weak functions (Yauheni Kaliuta) [1944799] - libbpf: Mark BPF subprogs with hidden visibility as static for BPF verifier (Yauheni Kaliuta) [1944799] - libbpf: Suppress compiler warning when using SEC() macro with externs (Yauheni Kaliuta) [1944799] - bpftool: Dump more info about DATASEC members (Yauheni Kaliuta) [1944799] - bpftool: Support dumping BTF VAR's "extern" linkage (Yauheni Kaliuta) [1944799] - bpf: Remove unnecessary map checks for ARG_PTR_TO_CONST_STR (Yauheni Kaliuta) [1944799] - xsk: Align XDP socket batch size with DPDK (Yauheni Kaliuta) [1944799] - bpf, doc: Fix some invalid links in bpf_devel_QA.rst (Yauheni Kaliuta) [1944799] - net, xdp: Update pkt_type if generic XDP changes unicast MAC (Yauheni Kaliuta) [1944799] - powerpc/ebpf32: Use standard function call for functions within 32M distance (Yauheni Kaliuta) [1944799] - selftests/bpf: Add docs target as all dependency (Yauheni Kaliuta) [1944799] - bpf/selftests: Add bpf_get_task_stack retval bounds test_prog (Yauheni Kaliuta) [1944799] - bpf/selftests: Add bpf_get_task_stack retval bounds verifier test (Yauheni Kaliuta) [1944799] - bpf: Refine retval for bpf_get_task_stack helper (Yauheni Kaliuta) [1944799] - samples/bpf: Fix broken tracex1 due to kprobe argument change (Yauheni Kaliuta) [1944799] - libbpf: Introduce a BPF_SNPRINTF helper macro (Yauheni Kaliuta) [1944799] - libbpf: Initialize the bpf_seq_printf parameters array field by field (Yauheni Kaliuta) [1944799] - bpf: Add a ARG_PTR_TO_CONST_STR argument type (Yauheni Kaliuta) [1944799] - bpftool: Fix a clang compilation warning (Yauheni Kaliuta) [1944799] - selftests/bpf: Silence clang compilation warnings (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix test_cpp compilation failure with clang (Yauheni Kaliuta) [1944799] - selftests: Set CC to clang in lib.mk if LLVM is set (Yauheni Kaliuta) [1944799] - libbpf: Remove unused field. (Yauheni Kaliuta) [1944799] - tools/testing: Remove unused variable (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix the ASSERT_ERR_PTR macro (Yauheni Kaliuta) [1944799] - selftests/bpf: Add tests for target information in bpf_link info queries (Yauheni Kaliuta) [1944799] - bpf: Return target info when a tracing bpf_link is queried (Yauheni Kaliuta) [1944799] - libbpf: Clarify flags in ringbuf helpers (Yauheni Kaliuta) [1944799] - bpf: Sync bpf headers in tooling infrastucture (Yauheni Kaliuta) [1944799] - bpf: Document PROG_TEST_RUN limitations (Yauheni Kaliuta) [1944799] - bpf, inode: Remove second initialization of the bpf_preload_lock (Yauheni Kaliuta) [1944799] - libbpf: Fix KERNEL_VERSION macro (Yauheni Kaliuta) [1944799] - bpf: selftests: Specify CONFIG_DYNAMIC_FTRACE in the testing config (Yauheni Kaliuta) [1944799] - powerpc/bpf: Reallocate BPF registers to volatile registers when possible on PPC32 (Yauheni Kaliuta) [1944799] - powerpc/bpf: Change values of SEEN_ flags (Yauheni Kaliuta) [1944799] - powerpc/bpf: Move common functions into bpf_jit_comp.c (Yauheni Kaliuta) [1944799] - powerpc/bpf: Remove classical BPF support for PPC32 (Yauheni Kaliuta) [1944799] - powerpc/bpf: Move common helpers into bpf_jit.h (Yauheni Kaliuta) [1944799] - powerpc/bpf: Change register numbering for bpf_set/is_seen_register() (Yauheni Kaliuta) [1944799] - libbpf: Remove redundant semi-colon (Yauheni Kaliuta) [1944799] - bpf: Remove repeated struct btf_type declaration (Yauheni Kaliuta) [1944799] - bpf, cgroup: Delete repeated struct bpf_prog declaration (Yauheni Kaliuta) [1944799] - bpf: Remove unused parameter from ___bpf_prog_run (Yauheni Kaliuta) [1944799] - bpf, selftests: test_maps generating unrecognized data section (Yauheni Kaliuta) [1944799] - selftests/bpf: Add an option for a debug shell in vmtest.sh (Yauheni Kaliuta) [1944799] - bpf: Remove redundant assignment of variable id (Yauheni Kaliuta) [1944799] - bpf: Remove unused bpf_load_pointer (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove unused defines (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove mutex and condition variable (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove thread attribute (Yauheni Kaliuta) [1944799] - selftests: xsk: Implement bpf_link test (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove sync_mutex_tx and atomic var (Yauheni Kaliuta) [1944799] - selftests: xsk: Refactor teardown/bidi test cases and testapp_validate (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove Tx synchronization resources (Yauheni Kaliuta) [1944799] - selftests: xsk: Split worker thread (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove thread for netns switch (Yauheni Kaliuta) [1944799] - samples: bpf: Do not unload prog within xdpsock (Yauheni Kaliuta) [1944799] - libbpf: xsk: Use bpf_link (Yauheni Kaliuta) [1944799] - selftests: xsk: Simplify frame traversal in dumping thread (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove inline keyword from source file (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove unused function (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove struct ifaceconfigobj (Yauheni Kaliuta) [1944799] - selftests: xsk: Don't call worker_pkt_dump() for stats test (Yauheni Kaliuta) [1944799] - libbpf: Fix memory leak when emitting final btf_ext (Yauheni Kaliuta) [1944799] - bpf: selftests: Update clang requirement in README.rst for testing kfunc call (Yauheni Kaliuta) [1944799] - bpf: Update bpf_design_QA.rst to clarify the kfunc call is not ABI (Yauheni Kaliuta) [1944799] - bpf: selftests: Add kfunc_call test (Yauheni Kaliuta) [1944799] - bpf: selftests: Bpf_cubic and bpf_dctcp calling kernel functions (Yauheni Kaliuta) [1944799] - bpf: selftests: Rename bictcp to bpf_cubic (Yauheni Kaliuta) [1944799] - libbpf: Support extern kernel function (Yauheni Kaliuta) [1944799] - libbpf: Record extern sym relocation first (Yauheni Kaliuta) [1944799] - libbpf: Rename RELO_EXTERN to RELO_EXTERN_VAR (Yauheni Kaliuta) [1944799] - libbpf: Refactor codes for finding btf id of a kernel symbol (Yauheni Kaliuta) [1944799] - libbpf: Refactor bpf_object__resolve_ksyms_btf_id (Yauheni Kaliuta) [1944799] - bpf: Support bpf program calling kernel function (Yauheni Kaliuta) [1944799] - bpf: Refactor btf_check_func_arg_match (Yauheni Kaliuta) [1944799] - bpf: Simplify freeing logic in linfo and jited_linfo (Yauheni Kaliuta) [1944799] - libbpf: Preserve empty DATASEC BTFs during static linking (Yauheni Kaliuta) [1944799] - bpf: struct sock is declared twice in bpf_sk_storage header (Yauheni Kaliuta) [1944799] - bpf: Remove unused headers (Yauheni Kaliuta) [1944799] - libbpf: Add bpf object kern_version attribute setter (Yauheni Kaliuta) [1944799] - bpf: selftests: Add tests for batched ops in LPM trie maps (Yauheni Kaliuta) [1944799] - bpf: Add support for batched ops in LPM trie maps (Yauheni Kaliuta) [1944799] - selftests/bpf: Better error messages for ima_setup.sh failures (Yauheni Kaliuta) [1944799] - bpf: Fix NULL pointer dereference in bpf_get_local_storage() helper (Yauheni Kaliuta) [1944799] - libbpf: Constify few bpf_program getters (Yauheni Kaliuta) [1944799] - bpf: Fix typo 'accesible' into 'accessible' (Yauheni Kaliuta) [1944799] - tracing: Fix various typos in comments (Yauheni Kaliuta) [1944799] - libbpf: Skip BTF fixup if object file has no BTF (Yauheni Kaliuta) [1944799] - bpf: Remove insn_buf[] declaration in inner block (Yauheni Kaliuta) [1944799] - selftests/bpf: Add multi-file statically linked BPF object file test (Yauheni Kaliuta) [1944799] - selftests/bpf: Pass all BPF .o's through BPF static linker (Yauheni Kaliuta) [1944799] - selftests/bpf: Re-generate vmlinux.h and BPF skeletons if bpftool changed (Yauheni Kaliuta) [1944799] - bpftool: Add `gen object` command to perform BPF static linking (Yauheni Kaliuta) [1944799] - bpftool: Add ability to specify custom skeleton object name (Yauheni Kaliuta) [1944799] - libbpf: Add BPF static linker BTF and BTF.ext support (Yauheni Kaliuta) [1944799] - libbpf: Add BPF static linker APIs (Yauheni Kaliuta) [1944799] - libbpf: Add generic BTF type shallow copy API (Yauheni Kaliuta) [1944799] - libbpf: Extract internal set-of-strings datastructure APIs (Yauheni Kaliuta) [1944799] - libbpf: Rename internal memory-management helpers (Yauheni Kaliuta) [1944799] - libbpf: Generalize BTF and BTF.ext type ID and strings iteration (Yauheni Kaliuta) [1944799] - libbpf: Expose btf_type_by_id() internally (Yauheni Kaliuta) [1944799] - x86: Fix various typos in comments (Yauheni Kaliuta) [1944799] - selftests/bpf: drop custom NULL #define in skb_pkt_end selftest (Yauheni Kaliuta) [1944799] - libbpf: provide NULL and KERNEL_VERSION macros in bpf_helpers.h (Yauheni Kaliuta) [1944799] - bpf: net: Emit anonymous enum with BPF_TCP_CLOSE value explicitly (Yauheni Kaliuta) [1944799] - selftests/bpf: Use nanosleep() syscall instead of sleep() in get_cgroup_id (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix warning comparing pointer to 0 (Yauheni Kaliuta) [1944799] - selftests/bpf: Build everything in debug mode (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix maybe-uninitialized warning in xdpxceiver test (Yauheni Kaliuta) [1944799] - bpftool: Fix maybe-uninitialized warnings (Yauheni Kaliuta) [1944799] - libbpf: Add explicit padding to bpf_xdp_set_link_opts (Yauheni Kaliuta) [1944799] - kernel/bpf/: Fix misspellings using codespell tool (Yauheni Kaliuta) [1944799] - s390/bpf: Implement new atomic ops (Yauheni Kaliuta) [1944799] - bpf: selftests: Remove unused 'nospace_err' in tests for batched ops in array maps (Yauheni Kaliuta) [1944799] - samples: bpf: Fix a spelling typo in do_hbm_test.sh (Yauheni Kaliuta) [1944799] - libbpf: Avoid inline hint definition from 'linux/stddef.h' (Yauheni Kaliuta) [1944799] - libbpf: xsk: Move barriers from libbpf_util.h to xsk.h (Yauheni Kaliuta) [1944799] - libbpf: xsk: Remove linux/compiler.h header (Yauheni Kaliuta) [1944799] - bpf: Fix warning comparing pointer to 0 (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix warning comparing pointer to 0 (Yauheni Kaliuta) [1944799] - bpf, xdp: Restructure redirect actions (Yauheni Kaliuta) [1944799] - bpf, xdp: Make bpf_redirect_map() a map operation (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix compiler warning in BPF_KPROBE definition in loop6.c (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix typo in Makefile (Yauheni Kaliuta) [1944799] - libbpf: Fix arm64 build (Yauheni Kaliuta) [1944799] - libbpf, xsk: Add libbpf_smp_store_release libbpf_smp_load_acquire (Yauheni Kaliuta) [1944799] - selftests, bpf: Extend test_tc_tunnel test with vxlan (Yauheni Kaliuta) [1944799] - bpf: Add bpf_skb_adjust_room flag BPF_F_ADJ_ROOM_ENCAP_L2_ETH (Yauheni Kaliuta) [1944799] - selftests/bpf: Simplify the calculation of variables (Yauheni Kaliuta) [1944799] - bpf: Simplify the calculation of variables (Yauheni Kaliuta) [1944799] - selftests: bpf: Don't run sk_lookup in verifier tests (Yauheni Kaliuta) [1944799] - selftests: bpf: Check that PROG_TEST_RUN repeats as requested (Yauheni Kaliuta) [1944799] - selftests: bpf: Convert sk_lookup ctx access tests to PROG_TEST_RUN (Yauheni Kaliuta) [1944799] - bpf: Add PROG_TEST_RUN support for sk_lookup programs (Yauheni Kaliuta) [1944799] - bpf: Consolidate shared test timing code (Yauheni Kaliuta) [1944799] - docs/bpf: Add bpf() syscall command reference (Yauheni Kaliuta) [1944799] - selftests/bpf: Test syscall command parsing (Yauheni Kaliuta) [1944799] - selftests/bpf: Templatize man page generation (Yauheni Kaliuta) [1944799] - tools/bpf: Remove bpf-helpers from bpftool docs (Yauheni Kaliuta) [1944799] - scripts/bpf: Add syscall commands printer (Yauheni Kaliuta) [1944799] - tools: Sync uapi bpf.h header with latest changes (Yauheni Kaliuta) [1944799] - scripts/bpf: Abstract eBPF API target parameter (Yauheni Kaliuta) [1944799] - bpf: Document BPF_MAP_*_BATCH syscall commands (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_QUERY syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_TEST_RUN syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_ATTACH syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_PIN syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_F_LOCK in syscall commands (Yauheni Kaliuta) [1944799] - bpf: Add minimal bpf() command documentation (Yauheni Kaliuta) [1944799] - bpf: Import syscall arg documentation (Yauheni Kaliuta) [1944799] - libbpf: Fix whitespace in btf_add_composite() comment (Yauheni Kaliuta) [1944799] - selftests/bpf: Add a verifier scale test with unknown bounded loop (Yauheni Kaliuta) [1944799] - tools, bpf_asm: Exit non-zero on errors (Yauheni Kaliuta) [1944799] - tools, bpf_asm: Hard error on out of range jumps (Yauheni Kaliuta) [1944799] - selftests/bpf: Add arraymap test for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - selftests/bpf: Add hashmap test for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpftool: Print subprog address properly (Yauheni Kaliuta) [1944799] - libbpf: Support subprog address relocation (Yauheni Kaliuta) [1944799] - libbpf: Move function is_ldimm64() earlier in libbpf.c (Yauheni Kaliuta) [1944799] - bpf: Add arraymap support for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpf: Add hashtab support for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpf: Add bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpf: Change return value of verifier function add_subprog() (Yauheni Kaliuta) [1944799] - bpf: Refactor check_func_call() to allow callback function (Yauheni Kaliuta) [1944799] - bpf: Factor out verbose_invalid_scalar() (Yauheni Kaliuta) [1944799] - bpf: Factor out visit_func_call_insn() in check_cfg() (Yauheni Kaliuta) [1944799] - selftests/bpf: Copy extras in out-of-srctree builds (Yauheni Kaliuta) [1944799] - selftests/bpf: Propagate error code of the command to vmtest.sh (Yauheni Kaliuta) [1944799] - selftests/bpf: Introduce xsk statistics tests (Yauheni Kaliuta) [1944799] - selftests/bpf: Restructure xsk selftests (Yauheni Kaliuta) [1944799] - selftests/bpf: Expose and rename debug argument (Yauheni Kaliuta) [1944799] - selftest/bpf: Make xsk tests less verbose (Yauheni Kaliuta) [1944799] - bpf: Rename fixup_bpf_calls and add some comments (Yauheni Kaliuta) [1944799] - bpf: Use MAX_BPF_FUNC_REG_ARGS macro (Yauheni Kaliuta) [1944799] - bpf: runqslower: Prefer using local vmlimux to generate vmlinux.h (Yauheni Kaliuta) [1944799] - bpf: Add kernel/modules BTF presence checks to bpftool feature command (Yauheni Kaliuta) [1944799]- netfilter: log: work around missing softdep backend module (Florian Westphal) [2017794] - netfilter: nft_ct: protect nft_ct_pcpu_template_refcnt with mutex (Florian Westphal) [2017794] - netfilter: Fix fall-through warnings for Clang (Florian Westphal) [2017794] - netfilter: nft_nat: allow to specify layer 4 protocol NAT only (Florian Westphal) [2017794] - netfilter: conntrack: adjust stop timestamp to real expiry value (Florian Westphal) [2017794] - netfilter: ipvs: make global sysctl readonly in non-init netns (Florian Westphal) [2017794] - ipvs: fix possible memory leak in ip_vs_control_net_init (Florian Westphal) [2017794] - ipvs: fix the connection sync failed in some cases (Florian Westphal) [2017794] - net: Fix offloading indirect devices dependency on qdisc order creation (Davide Caratti) [1997381] - net/core: Remove unused field from struct flow_indr_dev (Davide Caratti) [1997381] - Drivers: hv: balloon: Use VMBUS_RING_SIZE() wrapper for dm_ring_size (Vitaly Kuznetsov) [2019101] - hv_balloon: Remove redundant assignment to region_start (Vitaly Kuznetsov) [2019101] - hv_balloon: disable warning when floor reached (Vitaly Kuznetsov) [2019101] - net/tls: Fix flipped sign in async_wait.err assignment (Sabrina Dubroca) [2019176] - net/tls: Fix flipped sign in tls_err_abort() calls (Sabrina Dubroca) [2019176] - tls: prevent oversized sendfile() hangs by ignoring MSG_MORE (Sabrina Dubroca) [2019176] - tls splice: remove inappropriate flags checking for MSG_PEEK (Sabrina Dubroca) [2019176] - net/tls: Fix use-after-free after the TLS device goes down and up (Sabrina Dubroca) [2019176] - net/tls: Replace TLS_RX_SYNC_RUNNING with RCU (Sabrina Dubroca) [2019176] - tls splice: check SPLICE_F_NONBLOCK instead of MSG_DONTWAIT (Sabrina Dubroca) [2019176] - net/tls: Remove redundant initialization of record (Sabrina Dubroca) [2019176] - ibmvnic: don't stop queue in xmit (Diego Domingos) [2011995] - selftests: net: switch to socat in the GSO GRE test (Hangbin Liu) [2018059] - selftests: net: properly support IPv6 in GSO GRE test (Hangbin Liu) [2018059] - kselftests/net: add missed setup_loopback.sh/setup_veth.sh to Makefile (Hangbin Liu) [2018059] - selftests: add simple GSO GRE test (Hangbin Liu) [2018059] - selftests/net: allow GRO coalesce test on veth (Hangbin Liu) [2018059] - selftests/net: GRO coalesce test (Hangbin Liu) [2018059] - perf/x86: Reset destroy callback on event init failure (Michael Petlan) [2003982] - x86/msr: Define new bits in TSX_FORCE_ABORT MSR (Michael Petlan) [2003982] - perf script: Fix --list-dlfilters documentation (Michael Petlan) [2003982] - perf/x86/intel/uncore: Fix IIO cleanup mapping procedure for SNR/ICX (Michael Petlan) [2003982] - Revert "perf map: Fix dso->nsinfo refcounting" (Michael Petlan) [2003982] - perf pmu: Fix alias matching (Michael Petlan) [2003982] - perf cs-etm: Split --dump-raw-trace by AUX records (Michael Petlan) [2003982] - perf sched: Fix record failure when CONFIG_SCHEDSTATS is not set (Michael Petlan) [2003982] - perf probe: Fix add event failure when running 32-bit perf in a 64-bit kernel (Michael Petlan) [2003982] - perf data: Close all files in close_dir() (Michael Petlan) [2003982] - perf probe-file: Delete namelist in del_events() on the error path (Michael Petlan) [2003982] - perf test bpf: Free obj_buf (Michael Petlan) [2003982] - perf trace: Free strings in trace__parse_events_option() (Michael Petlan) [2003982] - perf trace: Free syscall tp fields in evsel->priv (Michael Petlan) [2003982] - perf trace: Free syscall->arg_fmt (Michael Petlan) [2003982] - perf trace: Free malloc'd trace fields on exit (Michael Petlan) [2003982] - perf lzma: Close lzma stream on exit (Michael Petlan) [2003982] - perf script: Fix memory 'threads' and 'cpus' leaks on exit (Michael Petlan) [2003982] - perf script: Release zstd data (Michael Petlan) [2003982] - perf session: Cleanup trace_event (Michael Petlan) [2003982] - perf inject: Close inject.output on exit (Michael Petlan) [2003982] - perf report: Free generated help strings for sort option (Michael Petlan) [2003982] - perf env: Fix memory leak of cpu_pmu_caps (Michael Petlan) [2003982] - perf test maps__merge_in: Fix memory leak of maps (Michael Petlan) [2003982] - perf dso: Fix memory leak in dso__new_map() (Michael Petlan) [2003982] - perf test event_update: Fix memory leak of unit (Michael Petlan) [2003982] - perf test event_update: Fix memory leak of evlist (Michael Petlan) [2003982] - perf test session_topology: Delete session->evlist (Michael Petlan) [2003982] - perf env: Fix sibling_dies memory leak (Michael Petlan) [2003982] - perf probe: Fix dso->nsinfo refcounting (Michael Petlan) [2003982] - perf map: Fix dso->nsinfo refcounting (Michael Petlan) [2003982] - perf inject: Fix dso->nsinfo refcounting (Michael Petlan) [2003982] - perf cs-etm: Split Coresight decode by aux records (Michael Petlan) [2003982] - perf sched: Cast PTHREAD_STACK_MIN to int as it may turn into sysconf(__SC_THREAD_STACK_MIN_VALUE) (Michael Petlan) [2003982] - libperf: Fix build error with LIBPFM4=1 (Michael Petlan) [2003982] - perf stat: Merge uncore events by default for hybrid platform (Michael Petlan) [2003982] - perf tests: Fix 'Convert perf time to TSC' on core-only system (Michael Petlan) [2003982] - perf tests: Fix 'Roundtrip evsel->name' on core-only system (Michael Petlan) [2003982] - perf tests: Fix 'Parse event definition strings' on core-only system (Michael Petlan) [2003982] - perf pmu: Skip invalid hybrid pmu (Michael Petlan) [2003982] - perf test: Add free() calls for scandir() returned dirent entries (Michael Petlan) [2003982] - libperf: Add tests for perf_evlist__set_leader() (Michael Petlan) [2003982] - libperf: Remove BUG_ON() from library code in get_group_fd() (Michael Petlan) [2003982] - libperf: Add group support to perf_evsel__open() (Michael Petlan) [2003982] - perf tools: Fix pattern matching for same substring in different PMU type (Michael Petlan) [2003982] - perf record: Add a dummy event on hybrid systems to collect metadata records (Michael Petlan) [2003982] - perf stat: Add Topdown metrics L2 events as default events (Michael Petlan) [2003982] - libperf: Adopt evlist__set_leader() from tools/perf as perf_evlist__set_leader() (Michael Petlan) [2003982] - libperf: Move 'nr_groups' from tools/perf to evlist::nr_groups (Michael Petlan) [2003982] - libperf: Move 'leader' from tools/perf to perf_evsel::leader (Michael Petlan) [2003982] - libperf: Move 'idx' from tools/perf to perf_evsel::idx (Michael Petlan) [2003982] - libperf: Change tests to single static and shared binaries (Michael Petlan) [2003982] - perf intel-pt: Add a config for max loops without consuming a packet (Michael Petlan) [2003982] - perf stat: Disable the NMI watchdog message on hybrid (Michael Petlan) [2003982] - perf trace: Fix the perf trace link location (Michael Petlan) [2003982] - perf top: Fix overflow in elf_sec__is_text() (Michael Petlan) [2003982] - perf annotate: Fix 's' on source line when disasm is empty (Michael Petlan) [2003982] - perf probe: Do not show @plt function by default (Michael Petlan) [2003982] - perf symbol-elf: Decode dynsym even if symtab exists (Michael Petlan) [2003982] - perf probe: Fix debuginfo__new() to enable build-id based debuginfo (Michael Petlan) [2003982] - perf stat: Enable BPF counter with --for-each-cgroup (Michael Petlan) [2003982] - perf report: Fix --task and --stat with pipe input (Michael Petlan) [2003982] - perf session: Add missing evlist__delete when deleting a session (Michael Petlan) [2003982] - perf annotate: Allow 's' on source code lines (Michael Petlan) [2003982] - perf dlfilter: Add object_code() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add attr() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add srcline() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add insn() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add resolve_address() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf build: Install perf_dlfilter.h (Michael Petlan) [2003982] - perf script: Add option to pass arguments to dlfilters (Michael Petlan) [2003982] - perf script: Add option to list dlfilters (Michael Petlan) [2003982] - perf script: Add dlfilter__filter_event_early() (Michael Petlan) [2003982] - perf script: Add API for filtering via dynamically loaded shared object (Michael Petlan) [2003982] - perf llvm: Return -ENOMEM when asprintf() fails (Michael Petlan) [2003982] - perf cs-etm: Delay decode of non-timeless data until cs_etm__flush_events() (Michael Petlan) [2003982] - perf arm-spe: Don't wait for PERF_RECORD_EXIT event (Michael Petlan) [2003982] - perf arm-spe: Bail out if the trace is later than perf event (Michael Petlan) [2003982] - perf arm-spe: Assign kernel time to synthesized event (Michael Petlan) [2003982] - perf arm-spe: Convert event kernel time to counter value (Michael Petlan) [2003982] - perf arm-spe: Save clock parameters from TIME_CONV event (Michael Petlan) [2003982] - perf cs-etm: Remove callback cs_etm_find_snapshot() (Michael Petlan) [2003982] - perf bpf_counter: Move common functions to bpf_counter.h (Michael Petlan) [2003982] - perf tools: Add cgroup_is_v2() helper (Michael Petlan) [2003982] - perf tools: Add read_cgroup_id() function (Michael Petlan) [2003982] - tools lib: Adopt bitmap_intersects() operation from the kernel sources (Michael Petlan) [2003982] - perf top: Add cgroup support for perf top (-G) (Michael Petlan) [2003982] - perf script: Share addr_al between functions (Michael Petlan) [2003982] - perf script: Move filtering before scripting (Michael Petlan) [2003982] - perf script: Move filter_cpu() earlier (Michael Petlan) [2003982] - perf test: Pass the verbose option to shell tests (Michael Petlan) [2003982] - perf probe: Add --bootconfig to output definition in bootconfig format (Michael Petlan) [2003982] - perf probe: Cleanup synthesize_probe_trace_command() (Michael Petlan) [2003982] - perf probe: Support probes on init functions for offline kernel (Michael Petlan) [2003982] - perf test: Make stat bpf counters test more robust (Michael Petlan) [2003982] - perf test: Add verbose skip output for bpf counters (Michael Petlan) [2003982] - perf annotate: Add itrace options support (Michael Petlan) [2003982] - perf mem-events: Remove duplicate #undef (Michael Petlan) [2003982] - perf evsel: Adjust hybrid event and global event mixed group (Michael Petlan) [2003982] - perf probe: Provide clearer message permission error for tracefs access (Michael Petlan) [2003982] - perf auxtrace: Change to use SMP memory barriers (Michael Petlan) [2003982] - perf srccode: Use list_move() instead of equivalent list_del() + list_add() sequence (Michael Petlan) [2003982] - perf probe: Report possible permission error for map__load() failure (Michael Petlan) [2003982] - perf probe: Add permission and sysctl notice to man page (Michael Petlan) [2003982] - perf c2c: Support record for hybrid platform (Michael Petlan) [2003982] - perf mem: Disable 'mem-loads-aux' group before reporting (Michael Petlan) [2003982] - perf mem: Fix wrong verbose output for recording events (Michael Petlan) [2003982] - perf mem: Support record for hybrid platform (Michael Petlan) [2003982] - perf tools: Check if mem_events is supported for hybrid platform (Michael Petlan) [2003982] - perf tools: Support pmu prefix for mem-store event (Michael Petlan) [2003982] - perf tools: Support pmu prefix for mem-load event (Michael Petlan) [2003982] - perf tools: Check mem-loads auxiliary event (Michael Petlan) [2003982] - perf scripting python: intel-pt-events.py: Add --insn-trace and --src-trace (Michael Petlan) [2003982] - perf scripting python: exported-sql-viewer.py: Factor out libxed.py (Michael Petlan) [2003982] - perf scripting python: Update documentation for srcline etc (Michael Petlan) [2003982] - perf scripting python: Add perf_sample_srcline() and perf_sample_srccode() (Michael Petlan) [2003982] - perf scripting python: Add perf_set_itrace_options() (Michael Petlan) [2003982] - perf auxtrace: Factor out itrace_do_parse_synth_opts() (Michael Petlan) [2003982] - perf scripting python: Add perf_sample_insn() (Michael Petlan) [2003982] - perf script: Factor out script_fetch_insn() (Michael Petlan) [2003982] - perf scripting python: Assign perf_script_context (Michael Petlan) [2003982] - perf scripting: Add perf_session to scripting_context (Michael Petlan) [2003982] - perf scripting: Add scripting_context__update() (Michael Petlan) [2003982] - perf scripting python: Simplify perf-trace-context module functions (Michael Petlan) [2003982] - perf scripting python: Remove unnecessary 'static' (Michael Petlan) [2003982] - perf test: Test 2 libpfm4 error cases (Michael Petlan) [2003982] - perf test: Iterate over shell tests in alphabetical order (Michael Petlan) [2003982] - perf probe: Provide more detail with relocation warning (Michael Petlan) [2003982] - perf parse-events: Add bison --file-prefix-map option (Michael Petlan) [2003982] - perf inject: Do not inject BUILD_ID record if MMAP2 has it (Michael Petlan) [2003982] - perf inject: Call dso__put() even if dso->hit is set (Michael Petlan) [2003982] - perf scripts python: intel-pt-events.py: Add branches to script (Michael Petlan) [2003982] - perf scripting python: Add auxtrace error (Michael Petlan) [2003982] - perf scripting python: Add context switch (Michael Petlan) [2003982] - perf scripting python: Add cpumode (Michael Petlan) [2003982] - perf scripting python: Add IPC (Michael Petlan) [2003982] - perf scripting python: Add sample flags (Michael Petlan) [2003982] - perf script: Factor out perf_sample__sprintf_flags() (Michael Petlan) [2003982] - perf scripting python: Add 'addr_location' for 'addr' (Michael Petlan) [2003982] - perf scripting python: Factor out set_sym_in_dict() (Michael Petlan) [2003982] - perf scripting python: Fix tuple_set_u64() (Michael Petlan) [2003982] - perf auxtrace: Make perf_event__process_auxtrace*() callable (Michael Petlan) [2003982] - perf script: Find script file relative to exec path (Michael Petlan) [2003982] - perf arm-spe: Remove redundant checking for "full_auxtrace" (Michael Petlan) [2003982] - perf arm-spe: Enable timestamp for per-cpu mode (Michael Petlan) [2003982] - perf arm-spe: Correct sample flags for dummy event (Michael Petlan) [2003982] - perf arm-spe: Correct sample flags for SPE event (Michael Petlan) [2003982] - perf vendor events intel: Update event list for Icelake Client (Michael Petlan) [2003982] - perf vendor events intel: Add uncore event list for Icelake Server (Michael Petlan) [2003982] - perf vendor events intel: Add core event list for Icelake Server (Michael Petlan) [2003982] - perf tests: Drop __maybe_unused on x86 test declarations (Michael Petlan) [2003982] - perf tests: Consolidate test__arch_unwind_sample declaration (Michael Petlan) [2003982] - perf build: Improve error message for old/missing clang (Michael Petlan) [2003982] - perf tools: Test build with libbpf/LIBBPF_DYNAMIC=1 (Michael Petlan) [2003982] - perf tools: Test build with libopencsd/CORESIGHT=1 (Michael Petlan) [2003982] - perf cs-etm: Prevent and warn on underflows during timestamp calculation. (Michael Petlan) [2003982] - perf cs-etm: Start reading 'Z' --itrace option (Michael Petlan) [2003982] - perf cs-etm: Move synth_opts initialisation (Michael Petlan) [2003982] - perf header: Support HYBRID_CPU_PMU_CAPS feature (Michael Petlan) [2003982] - perf header: Support HYBRID_TOPOLOGY feature (Michael Petlan) [2003982] - perf cs-etm: Set time on synthesised samples to preserve ordering (Michael Petlan) [2003982] - perf cs-etm: Refactor timestamp variable names (Michael Petlan) [2003982] - perf x86 kvm-stat: Support to analyze kvm MSR (Michael Petlan) [2003982] - perf stat: Use aggregated counts directly (Michael Petlan) [2003982] - perf record: Set timestamp boundary for AUX area events (Michael Petlan) [2003982] - perf intel-pt: Parse VM Time Correlation options and set up decoding (Michael Petlan) [2003982] - perf intel-pt: Add VM Time Correlation to decoder (Michael Petlan) [2003982] - perf intel-pt: Better 7-byte timestamp wraparound logic (Michael Petlan) [2003982] - perf intel-pt: Pass the first timestamp to the decoder (Michael Petlan) [2003982] - perf intel-pt: Add a tree for VMCS information (Michael Petlan) [2003982] - perf intel-pt: Let overlap detection handle VM timestamps (Michael Petlan) [2003982] - perf auxtrace: Allow buffers to be mapped read / write (Michael Petlan) [2003982] - perf inject: Add --vm-time-correlation option (Michael Petlan) [2003982] - perf inject: Add facility to do in place update (Michael Petlan) [2003982] - perf intel-pt: Support Z itrace option for timeless decoding (Michael Petlan) [2003982] - perf intel-pt: Move synth_opts initialization earlier (Michael Petlan) [2003982] - perf auxtrace: Add Z itrace option for timeless decoding (Michael Petlan) [2003982] - perf/x86/amd/power: Assign pmu.module (Michael Petlan) [2003982] - perf/x86/amd/ibs: Extend PERF_PMU_CAP_NO_EXCLUDE to IBS Op (Michael Petlan) [2003982] - perf/x86/amd/ibs: Work around erratum #1197 (Michael Petlan) [2003982] - perf/x86/intel/uncore: Fix integer overflow on 23 bit left shift of a u32 (Michael Petlan) [2003982] - perf/x86/intel/pt: Fix mask of num_address_ranges (Michael Petlan) [2003982] - perf/x86: Fix out of bound MSR access (Michael Petlan) [2003982] - perf/x86/cstate: Add ICELAKE_X and ICELAKE_D support (Michael Petlan) [2003982] - perf: MAP_EXECUTABLE does not indicate VM_MAYEXEC (Michael Petlan) [2003982] - arm64: perf: Simplify EVENT ATTR macro in perf_event.c (Michael Petlan) [2003982] - arm64: perf: Simplify the ARMv8 PMUv3 event attributes (Michael Petlan) [2003982] - arm64: perf: Remove unused macro (Michael Petlan) [2003982] - drivers/perf: Simplify EVENT ATTR macro in qcom_l2_pmu.c (Michael Petlan) [2003982] - drivers/perf: Simplify EVENT ATTR macro in qcom_l3_pmu.c (Michael Petlan) [2003982] - drivers/perf: Simplify EVENT ATTR macro in xgene_pmu.c (Michael Petlan) [2003982] - drivers/perf: convert sysfs sprintf family to sysfs_emit (Michael Petlan) [2003982] - drivers/perf: convert sysfs scnprintf family to sysfs_emit_at() and sysfs_emit() (Michael Petlan) [2003982] - perf: arm-ccn: Use scnprintf() for robustness (Michael Petlan) [2003982] - drivers/perf: convert sysfs snprintf family to sysfs_emit (Michael Petlan) [2003982] - perf: Add EVENT_ATTR_ID to simplify event attributes (Michael Petlan) [2003982] - perf/x86/intel: Fix instructions:ppp support in Sapphire Rapids (Michael Petlan) [2003982] - perf/x86/intel: Add more events requires FRONTEND MSR on Sapphire Rapids (Michael Petlan) [2003982] - perf/x86: Reset the dirty counter to prevent the leak for an RDPMC task (Michael Petlan) [2003982] - uprobes: Update uprobe_write_opcode() kernel-doc comment (Michael Petlan) [2003982] - perf/hw_breakpoint: Fix DocBook warnings in perf hw_breakpoint (Michael Petlan) [2003982] - perf/core: Fix DocBook warnings (Michael Petlan) [2003982] - perf/core: Make local function perf_pmu_snapshot_aux() static (Michael Petlan) [2003982] - perf/x86/intel/uncore: Enable I/O stacks to IIO PMON mapping on ICX (Michael Petlan) [2003982] - perf/x86/intel/uncore: Enable I/O stacks to IIO PMON mapping on SNR (Michael Petlan) [2003982] - perf/x86/intel/uncore: Generalize I/O stacks to PMON mapping procedure (Michael Petlan) [2003982] - perf/x86/intel/uncore: Drop unnecessary NULL checks after container_of() (Michael Petlan) [2003982] - x86/events/intel: Do not deploy TSX force abort workaround when TSX is deprecated (Michael Petlan) [2003982] - netpoll: don't require irqs disabled in rt kernels (Wander Lairson Costa) [1905440] - net/netif_receive_skb_core: Use migrate_disable() (Luis Claudio R. Goncalves) [2024168] - RDMA/qedr: Fix NULL deref for query_qp on the GSI QP (Kamal Heib) [2006260 1984280] - RDMA/core: Always release restrack object (Kamal Heib) [2006260] - RDMA/core: Fix incorrect print format specifier (Kamal Heib) [2006260] - RDMA: Remove rdma_set_device_sysfs_group() (Kamal Heib) [2006260] - RDMA/core: Allow port_groups to be used with namespaces (Kamal Heib) [2006260] - RDMA: Change ops->init_port to ops->port_groups (Kamal Heib) [2006260] - RDMA/hfi1: Use attributes for the port sysfs (Kamal Heib) [2006260 1989164] - RDMA/cm: Use an attribute_group on the ib_port_attribute intead of kobj's (Kamal Heib) [2006260] - RDMA/core: Expose the ib port sysfs attribute machinery (Kamal Heib) [2006260] - RDMA/core: Remove the kobject_uevent() NOP (Kamal Heib) [2006260] - RDMA/core: Create the device hw_counters through the normal groups mechanism (Kamal Heib) [2006260] - RDMA/core: Simplify how the port sysfs is created (Kamal Heib) [2006260] - RDMA/core: Simplify how the gid_attrs sysfs is created (Kamal Heib) [2006260] - RDMA/core: Split gid_attrs related sysfs from add_port() (Kamal Heib) [2006260] - RDMA/core: Split port and device counter sysfs attributes (Kamal Heib) [2006260] - RDMA/core: Replace the ib_port_data hw_stats pointers with a ib_port pointer (Kamal Heib) [2006260] - RDMA: Split the alloc_hw_stats() ops to port and device variants (Kamal Heib) [2006260] - RDMA/rxe: Zero out index member of struct rxe_queue (Kamal Heib) [2006260] - RDMA/efa: Free IRQ vectors on error flow (Kamal Heib) [2006260] - RDMA/rxe: Fix memory allocation while in a spin lock (Kamal Heib) [2006260] - IB/hfi1: Fix possible null-pointer dereference in _extend_sdma_tx_descs() (Kamal Heib) [2006260 1989164] - RDMA/rxe: Restore setting tot_len in the IPv4 header (Kamal Heib) [2006260] - RDMA/rxe: Use the correct size of wqe when processing SRQ (Kamal Heib) [2006260] - RDMA/cma: Revert INIT-INIT patch (Kamal Heib) [2006260] - RDMA/rxe: Fix memory leak in error path code (Kamal Heib) [2006260] - RDMA/rxe: Missing unlock on error in get_srq_wqe() (Kamal Heib) [2006260] - RDMA/cma: Fix rdma_resolve_route() memory leak (Kamal Heib) [2006260] - RDMA/core/sa_query: Remove unused argument (Kamal Heib) [2006260] - RDMA/cma: Fix incorrect Packet Lifetime calculation (Kamal Heib) [2006260] - RDMA/cma: Protect RMW with qp_mutex (Kamal Heib) [2006260] - RDMA/cma: Remove unnecessary INIT->INIT transition (Kamal Heib) [2006260] - RDMA/rxe: Fix redundant skb_put_zero (Kamal Heib) [2006260] - RDMA/rxe: Fix extra copy in prepare_ack_packet (Kamal Heib) [2006260] - RDMA/rxe: Fix over copying in get_srq_wqe (Kamal Heib) [2006260] - RDMA/rxe: Fix extra copies in build_rdma_network_hdr (Kamal Heib) [2006260] - RDMA/rxe: Fix redundant call to ip_send_check (Kamal Heib) [2006260] - RDMA/rxe: Fix useless copy in send_atomic_ack (Kamal Heib) [2006260] - RDMA/core: Use flexible array for mad data (Kamal Heib) [2006260] - RDMA/rxe: Don't overwrite errno from ib_umem_get() (Kamal Heib) [2006260] - IB/core: Shuffle locks in ib_port_data to save memory (Kamal Heib) [2006260] - IB/core: Removed port validity check from ib_get_cached_subnet_prefix (Kamal Heib) [2006260] - RDMA: Fix kernel-doc warnings about wrong comment (Kamal Heib) [2006260] - RDMA/rxe: Disallow MR dereg and invalidate when bound (Kamal Heib) [2006260] - RDMA/rxe: Implement memory access through MWs (Kamal Heib) [2006260] - RDMA/rxe: Implement invalidate MW operations (Kamal Heib) [2006260] - RDMA/rxe: Add support for bind MW work requests (Kamal Heib) [2006260] - RDMA/rxe: Move local ops to subroutine (Kamal Heib) [2006260] - RDMA/rxe: Replace WR_REG_MASK by WR_LOCAL_OP_MASK (Kamal Heib) [2006260] - RDMA/rxe: Add ib_alloc_mw and ib_dealloc_mw verbs (Kamal Heib) [2006260] - RDMA/rxe: Enable MW object pool (Kamal Heib) [2006260] - RDMA/rxe: Return errors for add index and key (Kamal Heib) [2006260] - RDMA/rxe: Add bind MW fields to rxe_send_wr (Kamal Heib) [2006260] - RDMA/rxe: Fix qp reference counting for atomic ops (Kamal Heib) [2006260] - IB/cm: Remove dgid from the cm_id_priv av (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of ib_uverbs_device (Kamal Heib) [2006260] - RDMA/ipoib: Use refcount_t instead of atomic_t for reference counting (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of mcast_port (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of mcast_member (Kamal Heib) [2006260] - RDMA/core: Remove refcount from struct ib_mad_snoop_private (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of iwpm_admin_data (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of iwcm_id_private (Kamal Heib) [2006260] - RDMA/rxe: Protext kernel index from user space (Kamal Heib) [2006260] - RDMA/rxe: Protect user space index loads/stores (Kamal Heib) [2006260] - RDMA/rxe: Add a type flag to rxe_queue structs (Kamal Heib) [2006260] - IB/cm: Protect cm_dev, cm_ports and mad_agent with kref and lock (Kamal Heib) [2006260] - IB/cm: Improve the calling of cm_init_av_for_lap and cm_init_av_by_path (Kamal Heib) [2006260] - IB/cm: Simplify ib_cancel_mad() and ib_modify_mad() calls (Kamal Heib) [2006260] - Revert "IB/cm: Mark stale CM id's whenever the mad agent was unregistered" (Kamal Heib) [2006260] - IB/cm: Tidy remaining cm_msg free paths (Kamal Heib) [2006260] - IB/cm: Call the correct message free functions in cm_send_handler() (Kamal Heib) [2006260] - IB/cm: Split cm_alloc_msg() (Kamal Heib) [2006260] - IB/cm: Pair cm_alloc_response_msg() with a cm_free_response_msg() (Kamal Heib) [2006260] - RDMA/core: Sanitize WQ state received from the userspace (Kamal Heib) [2006260] - RDMA/srp: Use DEVICE_ATTR_*() macros (Kamal Heib) [2006260] - RDMA/core: Use the DEVICE_ATTR_RO macro (Kamal Heib) [2006260] - IB/ipoib: Use DEVICE_ATTR_*() macros (Kamal Heib) [2006260] - IB/core: Only update PKEY and GID caches on respective events (Kamal Heib) [2006260] - RDMA/srp: Fix a recently introduced memory leak (Kamal Heib) [2006260] - RDMA/srp: Add more structure size checks (Kamal Heib) [2006260] - IB/hfi1: Move a function from a header file into a .c file (Kamal Heib) [2006260 1989164] - IB/hfi1: Remove the repeated declaration (Kamal Heib) [2006260 1989164] - IB/hfi1: Delete an unneeded bool conversion (Kamal Heib) [2006260 1989164] - RDMA: Remove unnecessary struct declaration (Kamal Heib) [2006260] - RDMA/core: Remove never used ib_modify_wq function call (Kamal Heib) [2006260] - IB/srpt: Remove redundant assignment to ret (Kamal Heib) [2006260] - RDMA/ucma: Cleanup to reduce duplicate code (Kamal Heib) [2006260] - RDMA/umem: batch page unpin in __ib_umem_release() (Kamal Heib) [2006259] - RDMA/rxe: Return CQE error if invalid lkey was supplied (Kamal Heib) [2006259] - RDMA/nldev: Add copy-on-fork attribute to get sys command (Kamal Heib) [2006259] - IB/hfi1: Remove redundant variable rcd (Kamal Heib) [2006259 1989164] - RDMA/nldev: Add QP numbers to SRQ information (Kamal Heib) [2006259] - RDMA/nldev: Return SRQ information (Kamal Heib) [2006259] - RDMA/restrack: Add support to get resource tracking for SRQ (Kamal Heib) [2006259] - RDMA/nldev: Return context information (Kamal Heib) [2006259] - RDMA/cma: Skip device which doesn't support CM (Kamal Heib) [2006259 1957239] - IB/ipoib: Remove unnecessary struct declaration (Kamal Heib) [2006259] - IB/ipoib: Improve latency in ipoib/cm connection formation (Kamal Heib) [2006259] - RDMA/ipoib: Print a message if only child interface is UP (Kamal Heib) [2006259] - RDMA/uverbs: Make UVERBS_OBJECT_METHODS to consider line number (Kamal Heib) [2006259] - IB/hfi1: Rework AIP and VNIC dummy netdev usage (Kamal Heib) [2006259 1989164] - IB/cma: Introduce rdma_set_min_rnr_timer() (Kamal Heib) [2006259] - RDMA/core: Correct format of block comments (Kamal Heib) [2006259] - RDMA/core: Correct format of braces (Kamal Heib) [2006259] - RDMA/core: Remove redundant spaces (Kamal Heib) [2006259] - RDMA/core: Add necessary spaces (Kamal Heib) [2006259] - RDMA/core: Remove the redundant return statements (Kamal Heib) [2006259] - RDMA/core: Print the function name by __func__ instead of an fixed string (Kamal Heib) [2006259] - RDMA/rxe: Fix missing acks from responder (Kamal Heib) [2006259] - RDMA/core: Make the wc status prompt message clearer (Kamal Heib) [2006259] - IB/hfi1: Remove indirect call to hfi1_ipoib_send_dma() (Kamal Heib) [2006259 1989164] - IB/hfi1: Use napi_schedule_irqoff() for tx napi (Kamal Heib) [2006259 1989164] - IB/hfi1: Correct oversized ring allocation (Kamal Heib) [2006259 1989164] - IB/{ipoib,hfi1}: Add a timeout handler for rdma_netdev (Kamal Heib) [2006259 1989164] - IB/hfi1: Add AIP tx traces (Kamal Heib) [2006259 1989164] - RDMA/uverbs: Fix -Wunused-function warning (Kamal Heib) [2006259] - RDMA/iser: struct iscsi_iser_task is declared twice (Kamal Heib) [2006259] - RDMA/rxe: Split MEM into MR and MW (Kamal Heib) [2006259] - RDMA/efa: Use strscpy instead of strlcpy (Kamal Heib) [2006259] - RDMA: Fix a typo (Kamal Heib) [2006259] - IB/hfi1: Fix a typo (Kamal Heib) [2006259 1989164] - RDMA/core: Correct misspellings of two words in comments (Kamal Heib) [2006259] - RDMA/uverbs: Refactor rdma_counter_set_auto_mode and __counter_set_mode (Kamal Heib) [2006259] - RDMA: Support more than 255 rdma ports (Kamal Heib) [2006259 1957239] - RDMA/include: Mundane typo fixes throughout the file (Kamal Heib) [2006259] - RDMA/cma: Remove unused leftovers in cma code (Kamal Heib) [2006259] - RDMA: Fix kernel-doc compilation warnings (Kamal Heib) [2006259] - RDMA/hw/i40iw/i40iw_virtchnl: Fix a bunch of kernel-doc issues (Kamal Heib) [2006259] - RDMA/hw/i40iw/i40iw_utils: Fix some misspellings and missing param descriptions (Kamal Heib) [2006259] - IB/core: Split uverbs_get_const/default to consider target type (Kamal Heib) [2006259] - IB/core: Drop WARN_ON() from ib_umem_find_best_pgsz() (Kamal Heib) [2006259] - RDMA/core: Remove unused req_ncomp_notif device operation (Kamal Heib) [2006259] - RDMA/iwcm: Allow AFONLY binding for IPv6 addresses (Kamal Heib) [2006259] - IB/hfi1: switch to core handling of rx/tx byte/packet counters (Kamal Heib) [2006259 1989164] - RDMA: Convert various random sprintf sysfs _show uses to sysfs_emit (Kamal Heib) [2006259] - RDMA: Manual changes for sysfs_emit and neatening (Kamal Heib) [2006259] - RDMA: Convert sysfs device * show functions to use sysfs_emit() (Kamal Heib) [2006259] - IB/hfi1: use new function dev_fetch_sw_netstats (Kamal Heib) [2006259 1989164] - RDMA/ipoib: Convert to use DEFINE_SEQ_ATTRIBUTE macro (Kamal Heib) [2006259] - include/linux/seq_file.h: introduce DEFINE_SEQ_ATTRIBUTE() helper macro (Kamal Heib) [2006259] - ibmvnic: delay complete() (Diego Domingos) [2019210] - ibmvnic: Process crqs after enabling interrupts (Diego Domingos) [2019210] - Documentation: sysrq: update description about sysrq crash (Chris von Recklinghausen) [2019943] - sysrq: Use panic() to force a crash (Chris von Recklinghausen) [2019943] - ethtool: extend coalesce setting uAPI with CQE mode (Ivan Vecera) [2006829] - ethtool: add two coalesce attributes for CQE mode (Ivan Vecera) [2006829] - ice: Add support for VF rate limiting (Jonathan Toppins) [1973187] - net: Prevent infinite while loop in skb_tx_hash() (Paolo Abeni) [2018437] - napi: fix race inside napi_enable (Paolo Abeni) [2018437] - net/af_unix: fix a data-race in unix_dgram_poll (Paolo Abeni) [2018437] - devlink: Clear whole devlink_flash_notify struct (Paolo Abeni) [2018437] - net: linkwatch: fix failure to restore device state across suspend/resume (Paolo Abeni) [2018437] - gro: fix napi_gro_frags() Fast GRO breakage due to IP alignment check (Paolo Abeni) [2018437] - gro: ensure frag0 meets IP header alignment (Paolo Abeni) [2018437] - net: core: allow fast GRO for skbs with Ethernet header in head (Paolo Abeni) [2018437] - udp: fix skb_copy_and_csum_datagram with odd segment sizes (Paolo Abeni) [2018437] - skbuff: back tiny skbs with kmalloc() in __netdev_alloc_skb() too (Paolo Abeni) [2018437] - selftests/net: remove min gso test in packet_snd (Paolo Abeni) [2018437] - net: be more gentle about silly gso requests coming from user (Paolo Abeni) [2018437] - virtio_net: Do not pull payload in skb->head (Paolo Abeni) [2018437] - net: check untrusted gso_size at kernel entry (Paolo Abeni) [2018437] - net: stricter validation of untrusted gso packets$ (Paolo Abeni) [2018437] - net: avoid 32 x truesize under-estimation for tiny skbs (Paolo Abeni) [2018437] - ionic: no devlink_unregister if not registered (Jonathan Toppins) [2016705] - ionic: tame the filter no space message (Jonathan Toppins) [2016705 1959512 2002943] - ionic: allow adminq requests to override default error message (Jonathan Toppins) [2016705 1959512 2002943] - ionic: handle vlan id overflow (Jonathan Toppins) [2016705 1959512 2002943] - ionic: generic filter delete (Jonathan Toppins) [2016705 1959512 2002943] - ionic: generic filter add (Jonathan Toppins) [2016705 1959512 2002943] - ionic: add generic filter search (Jonathan Toppins) [2016705 1959512 2002943] - ionic: remove mac overflow flags (Jonathan Toppins) [2016705 1959512 2002943] - ionic: move lif mac address functions (Jonathan Toppins) [2016705 1959512 2002943] - ionic: add filterlist to debugfs (Jonathan Toppins) [2016705 1959512 2002943] - ionic: don't remove netdev->dev_addr when syncing uc list (Jonathan Toppins) [2016705 2012030] - ionic: move filter sync_needed bit set (Jonathan Toppins) [2016705] - ionic: add lif param to ionic_qcq_disable (Jonathan Toppins) [2016705] - ionic: have ionic_qcq_disable decide on sending to hardware (Jonathan Toppins) [2016705] - ionic: add polling to adminq wait (Jonathan Toppins) [2016705] - ionic: widen queue_lock use around lif init and deinit (Jonathan Toppins) [2016705] - ionic: move lif mutex setup and delete (Jonathan Toppins) [2016705] - ionic: check for binary values in FW ver string (Jonathan Toppins) [2016705] - ionic: remove debug stats (Jonathan Toppins) [2016705] - ionic: fix gathering of debug stats (Jonathan Toppins) [2016705] - ionic: fix a sleeping in atomic bug (Jonathan Toppins) [2016705] - ionic: fix double use of queue-lock (Jonathan Toppins) [2016705] - ionic: recreate hwstamp queues on ifup (Jonathan Toppins) [2016705 1981590] - ionic: pull hwstamp queue_lock up a level (Jonathan Toppins) [2016705 1981590] - ionic: add queue lock around open and stop (Jonathan Toppins) [2016705 1981590] - ionic: fill mac addr earlier in add_addr (Jonathan Toppins) [2016705 1981590] - ionic: squelch unnecessary fw halted message (Jonathan Toppins) [2016705 1981590] - ionic: fire watchdog again after fw_down (Jonathan Toppins) [2016705 1981590] - ionic: handle mac filter overflow (Jonathan Toppins) [2016705 1981590] - ionic: refactor ionic_lif_addr to remove a layer (Jonathan Toppins) [2016705 1981590] - ionic: sync the filters in the work task (Jonathan Toppins) [2016705 1981590] - ionic: flatten calls to set-rx-mode (Jonathan Toppins) [2016705 1981590] - ionic: remove old work task types (Jonathan Toppins) [2016705 1981590] - ionic: add function tag to debug string (Jonathan Toppins) [2016705] - ionic: enable rxhash only with multiple queues (Jonathan Toppins) [2016705] - ionic: block some ethtool operations when fw in reset (Jonathan Toppins) [2016705] - ionic: remove unneeded comp union fields (Jonathan Toppins) [2016705] - ionic: increment num-vfs before configure (Jonathan Toppins) [2016705] - ionic: use fewer inits on the buf_info struct (Jonathan Toppins) [2016705] - ionic: init reconfig err to 0 (Jonathan Toppins) [2016705] - ionic: print firmware version on identify (Jonathan Toppins) [2016705] - ionic: monitor fw status generation (Jonathan Toppins) [2016705] - ionic: minimize resources when under kdump (Jonathan Toppins) [2016705] - ionic: cleanly release devlink instance (Jonathan Toppins) [2016705] - ionic: drop useless check of PCI driver data validity (Jonathan Toppins) [2016705] - ionic: Remove unused function pointer typedef ionic_reset_cb (Jonathan Toppins) [2016705] - ACPI: Use fwnode_init() to set up fwnode (Mark Langsdorf) [1982374] - device property: Add missed header in fwnode.h (Mark Langsdorf) [1982374] - regmap: set debugfs_name to NULL after it is freed (Mark Langsdorf) [1982374] - mfd: cpcap: Fix interrupt regression with regmap clear_ack (Mark Langsdorf) [1982374] - driver core: Fix device link device name collision (Mark Langsdorf) [1982374] - driver core: Extend device_is_dependent() (Mark Langsdorf) [1982374] - device property: add description of fwnode cases (Mark Langsdorf) [1982374] - Revert "device property: Keep secondary firmware node secondary by type" (Mark Langsdorf) [1982374] - regmap: debugfs: Fix a reversed if statement in regmap_debugfs_init() (Mark Langsdorf) [1982374] - regmap: debugfs: Fix a memory leak when calling regmap_attach_dev (Mark Langsdorf) [1982374] - driver core: platform: Add extra error check in devm_platform_get_irqs_affinity() (Mark Langsdorf) [1982374] - driver core: platform: don't oops in platform_shutdown() on unbound devices (Mark Langsdorf) [1982374] - PM: domains: create debugfs nodes when adding power domains (Mark Langsdorf) [1982374] - driver core: platform: Add devm_platform_get_irqs_affinity() (Mark Langsdorf) [1982374] - platform-msi: Track shared domain allocation (Mark Langsdorf) [1982374] - driver core: platform: Introduce platform_get_mem_or_io() (Mark Langsdorf) [1982374] - soc: fix comment for freeing soc_dev_attr (Mark Langsdorf) [1982374] - driver core: platform: use bus_type functions (Mark Langsdorf) [1982374] - driver core: platform: change logic implementing platform_driver_probe (Mark Langsdorf) [1982374] - driver core: platform: reorder functions (Mark Langsdorf) [1982374] - driver core: make driver_probe_device() static (Mark Langsdorf) [1982374] - driver core: Fix a couple of typos (Mark Langsdorf) [1982374] - driver core: Refactor fw_devlink feature (Mark Langsdorf) [1982374] - efi: Update implementation of add_links() to create fwnode links (Mark Langsdorf) [1982374] - of: property: Update implementation of add_links() to create fwnode links (Mark Langsdorf) [1982374] - driver core: Use device's fwnode to check if it is waiting for suppliers (Mark Langsdorf) [1982374] - driver core: Add fw_devlink_parse_fwtree() (Mark Langsdorf) [1982374] - driver core: Redefine the meaning of fwnode_operations.add_links() (Mark Langsdorf) [1982374] - device property: Add fwnode_is_ancestor_of() and fwnode_get_next_parent_dev() (Mark Langsdorf) [1982374] - driver core: Allow only unprobed consumers for SYNC_STATE_ONLY device links (Mark Langsdorf) [1982374] - driver core: Add fwnode link support (Mark Langsdorf) [1982374] - driver core: Add fwnode_init() (Mark Langsdorf) [1982374] - Revert "[base] driver core: fw_devlink: Add support for batching fwnode parsing" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Remove check in driver_deferred_probe_force_trigger()" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Don't do deferred probe in parallel with kernel_init thread" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Rename dev_links_info.defer_sync to defer_hook" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Avoid deferred probe due to fw_devlink_pause/resume()" (Mark Langsdorf) [1982374] - regmap: Remove duplicate `type` field from regmap `regcache_sync` trace event (Mark Langsdorf) [1982374] - PM: sleep: Add dev_wakeup_path() helper (Mark Langsdorf) [1982374] - regmap: Fix order of regmap write log (Mark Langsdorf) [1982374] - regmap: use less #ifdef for LOG_DEVICE (Mark Langsdorf) [1982374] - PM: domains: Enable dev_pm_genpd_suspend|resume() for suspend-to-idle (Mark Langsdorf) [1982374] - PM: domains: Rename pm_genpd_syscore_poweroff|poweron() (Mark Langsdorf) [1982374] - PM: sleep: Print driver flags for all devices during suspend/resume (Mark Langsdorf) [1982374] - driver core: Fix lockdep warning on wfs_lock (Mark Langsdorf) [1982374] - regmap: irq: Convert to use irq_domain_create_legacy() (Mark Langsdorf) [1982374] - irqdomain: Introduce irq_domain_create_legacy() API (Mark Langsdorf) [1982374] - irqdomain: Replace open coded of_node_to_fwnode() (Mark Langsdorf) [1982374] - irqdomain: Add forward declaration of fwnode_handle (Mark Langsdorf) [1982374] - irqdomain: Remove unused of_device_id forward declaration (Mark Langsdorf) [1982374] - regmap-irq: use fwnode instead of device node in add_irq_chip() (Mark Langsdorf) [1982374] - regmap: mmio: add config option to allow relaxed MMIO accesses (Mark Langsdorf) [1982374] - PM: sleep: remove unreachable break (Mark Langsdorf) [1982374] - PM: domains: enable domain idle state accounting (Mark Langsdorf) [1982374] - PM: domains: Add curly braces to delimit comment + statement block (Mark Langsdorf) [1982374] - PM: domains: Add support for PM domain on/off notifiers for genpd (Mark Langsdorf) [1982374] - PM / Domains: Simplify genpd_lookup_dev() (Mark Langsdorf) [1982374] - regmap: irq: Add support to clear ack registers (Mark Langsdorf) [1982374] - PM: domains: Allow to abort power off when no ->power_off() callback (Mark Langsdorf) [1982374] - PM: domains: Rename power state enums for genpd (Mark Langsdorf) [1982374] - regmap: debugfs: use semicolons rather than commas to separate statements (Mark Langsdorf) [1982374] - drivers core: node: Use a more typical macro definition style for ACCESS_ATTR (Mark Langsdorf) [1982374] - drivers core: Use sysfs_emit for shared_cpu_map_show and shared_cpu_list_show (Mark Langsdorf) [1982374] - efi: Rename arm-init to efi-init common for all arch (Mark Langsdorf) [1982374] - efi/arm: Defer probe of PCIe backed efifb on DT systems (Mark Langsdorf) [1982374] - net/smc: improved fix wait on already cleared link (Sumanth Korikkar) [1984991] - net/smc: fix 'workqueue leaked lock' in smc_conn_abort_work (Sumanth Korikkar) [1984991] - net/smc: add missing error check in smc_clc_prfx_set() (Sumanth Korikkar) [1984991] - net/smc: Correct smc link connection counter in case of smc client (Sumanth Korikkar) [1984991] - net/smc: fix wait on already cleared link (Sumanth Korikkar) [1984991] - KVM: s390: Fix handle_sske page fault handling (Thomas Huth) [2022731] - KVM: s390: Simplify SIGP Set Arch handling (Thomas Huth) [2022731] - KVM: s390: pv: avoid stalls when making pages secure (Thomas Huth) [2022731] - KVM: s390: pv: avoid stalls for kvm_s390_pv_init_vm (Thomas Huth) [2022731] - KVM: s390: pv: avoid double free of sida page (Thomas Huth) [2022731] - KVM: s390: pv: add macros for UVC CC values (Thomas Huth) [2022731] - s390/uv: fully validate the VMA before calling follow_page() (Thomas Huth) [2022731] - s390/gmap: don't unconditionally call pte_unmap_unlock() in __gmap_zap() (Thomas Huth) [2022731] - s390/gmap: validate VMA in __gmap_zap() (Thomas Huth) [2022731] - KVM: s390: preserve deliverable_mask in __airqs_kick_single_vcpu (Thomas Huth) [2022731] - KVM: s390: clear kicked_mask before sleeping again (Thomas Huth) [2022731] - KVM: s390: Function documentation fixes (Thomas Huth) [2022731] - s390/mm: fix kernel doc comments (Thomas Huth) [2022731] - KVM: s390: index kvm->arch.idle_mask by vcpu_idx (Thomas Huth) [2022731] - KVM: s390: generate kvm hypercall functions (Thomas Huth) [2022731] - KVM: Rename lru_slot to last_used_slot (Thomas Huth) [2022731] - s390: mm: Fix secure storage access exception handling (Thomas Huth) [2022731] - virtio/s390: get rid of open-coded kvm hypercall (Thomas Huth) [2022731] - KVM: s390: get rid of register asm usage (Thomas Huth) [2022731] - powerpc/vas: Fix potential NULL pointer dereference (Steve Best) [1907522] - powerpc/pseries/vas: Declare pseries_vas_fault_thread_fn() as static (Steve Best) [1907522] - crypto/nx: Register and unregister VAS interface on PowerVM (Steve Best) [1907522] - crypto/nx: Add sysfs interface to export NX capabilities (Steve Best) [1907522] - crypto/nx: Get NX capabilities for GZIP coprocessor type (Steve Best) [1907522] - crypto/nx: Rename nx-842-pseries file name to nx-common-pseries (Steve Best) [1907522] - powerpc/pseries/vas: Setup IRQ and fault handling (Steve Best) [1907522] - powerpc/pseries/vas: Integrate API with open/close windows (Steve Best) [1907522] - powerpc/pseries/vas: Implement getting capabilities from hypervisor (Steve Best) [1907522] - powerpc/pseries/vas: Add hcall wrappers for VAS handling (Steve Best) [1907522] - powerpc/vas: Define QoS credit flag to allocate window (Steve Best) [1907522] - powerpc/pseries/vas: Define VAS/NXGZIP hcalls and structs (Steve Best) [1907522] - powerpc/vas: Define and use common vas_window struct (Steve Best) [1907522] - powerpc/powernv: no need to check return value of debugfs_create functions (Steve Best) [1907522] - powerpc/vas: Move update_csb/dump_crb to common book3s platform (Steve Best) [1907522] - powerpc/vas: Create take/drop pid and mm reference functions (Steve Best) [1907522] - powerpc/vas: Add platform specific user window operations (Steve Best) [1907522] - powerpc/powernv/vas: Rename register/unregister functions (Steve Best) [1907522] - powerpc/vas: Move VAS API to book3s common platform (Steve Best) [1907522] - powerpc/powernv/vas: Release reference to tgid during window close (Steve Best) [1907522] - powerpc/pseries: Prevent free CPU ids being reused on another node (Desnes A. Nunes do Rosario) [2004808] - powerpc/numa: Consider the max NUMA node for migratable LPAR (Desnes A. Nunes do Rosario) [2004808]- zram: replace fsync_bdev with sync_blockdev (Ming Lei) [2015755] - zram: avoid race between zram_remove and disksize_store (Ming Lei) [2015755] - zram: don't fail to remove zram during unloading module (Ming Lei) [2015755] - zram: fix race between zram_reset_device() and disksize_store() (Ming Lei) [2015755] - zram: register default groups with device_add_disk() (Ming Lei) [2015755] - hyperv/vmbus: include linux/bitops.h (Mohammed Gamal) [2008565] - hv: vmbus: Avoid -Werror=maybe-uninitialized error (Mohammed Gamal) [2008565] - Drivers: hv: vmbus: Fix kernel crash upon unbinding a device from uio_hv_generic driver (Mohammed Gamal) [2008565] - Drivers: hv: vmbus: Fix duplicate CPU assignments within a device (Mohammed Gamal) [2008565] - drivers: hv: Fix missing error code in vmbus_connect() (Mohammed Gamal) [2008565] - hv_utils: Fix passing zero to 'PTR_ERR' warning (Mohammed Gamal) [2008565] - ice: Fix VF true promiscuous mode (Jonathan Toppins) [1970643] - ice: Remove toggling of antispoof for VF trusted promiscuous mode (Jonathan Toppins) [1970643] - ice: Fix replacing VF hardware MAC to existing MAC filter (Jonathan Toppins) [1970643] - ice: Fix not stopping Tx queues for VFs (Jonathan Toppins) [1970643] - ice: Fix race conditions between virtchnl handling and VF ndo ops (Jonathan Toppins) [1970643] - ice: move ice_container_type onto ice_ring_container (Jonathan Toppins) [1970643] - ice: remove ring_active from ice_ring (Jonathan Toppins) [1970643] - ice: Print the api_patch as part of the fw.mgmt.api (Jonathan Toppins) [1970643] - ice: Avoid crash from unnecessary IDA free (Jonathan Toppins) [1970643] - ice: Fix failure to re-add LAN/RDMA Tx queues (Jonathan Toppins) [1970643] - ice: Add missing E810 device ids (Jonathan Toppins) [1970643] - ice: fix locking for Tx timestamp tracking flush (Jonathan Toppins) [1970643] - ice: Delete always true check of PF pointer (Jonathan Toppins) [1970643] - ice: Correctly deal with PFs that do not support RDMA (Jonathan Toppins) [1970643] - ice: add lock around Tx timestamp tracker flush (Jonathan Toppins) [1970643] - ice: remove dead code for allocating pin_config (Jonathan Toppins) [1970643] - ice: do not abort devlink info if board identifier can't be found (Jonathan Toppins) [1970643] - ice: Fix a memory leak in an error handling path in 'ice_pf_dcb_cfg()' (Jonathan Toppins) [1970643] - ice: remove unnecessary VSI assignment (Jonathan Toppins) [1970643] - ice: remove the VSI info from previous agg (Jonathan Toppins) [1970643] - ice: add tracepoints (Jonathan Toppins) [1970643] - ice: report hash type such as L2/L3/L4 (Jonathan Toppins) [1970643] - ice: remove redundant continue statement in a for-loop (Jonathan Toppins) [1970643] - net: ice: ptp: fix compilation warning if PTP_1588_CLOCK is disabled (Jonathan Toppins) [1970643] - ice: remove unnecessary NULL checks before ptp_read_system_* (Jonathan Toppins) [1970643] - ice: Remove the repeated declaration (Jonathan Toppins) [1970643] - ice: remove local variable (Jonathan Toppins) [1970643] - ice: reduce scope of variables (Jonathan Toppins) [1970643] - ice: mark PTYPE 2 as reserved (Jonathan Toppins) [1970643] - ice: fix incorrect payload indicator on PTYPE (Jonathan Toppins) [1970643] - ice: parameterize functions responsible for Tx ring management (Jonathan Toppins) [1970643] - ice: add ndo_bpf callback for safe mode netdev ops (Jonathan Toppins) [1970643] - ice: fix clang warning regarding deadcode.DeadStores (Jonathan Toppins) [1970643] - ice: downgrade error print to debug print (Jonathan Toppins) [1970643] - ice: Detect and report unsupported module power levels (Jonathan Toppins) [1970643] - ice: (re)initialize NVM fields when rebuilding (Jonathan Toppins) [1970643] - ice: wait for reset before reporting devlink info (Jonathan Toppins) [1970643] - ice: add error message when pldmfw_flash_image fails (Jonathan Toppins) [1970643] - ice: add extack when unable to read device caps (Jonathan Toppins) [1970643] - ice: use static inline for dummy functions (Jonathan Toppins) [1970643] - ice: Re-organizes reqstd/avail {R, T}XQ check/code for efficiency (Jonathan Toppins) [1970643] - ice: set the value of global config lock timeout longer (Jonathan Toppins) [1970643] - ice: Refactor VIRTCHNL_OP_CONFIG_VSI_QUEUES handling (Jonathan Toppins) [1970643] - ice: Refactor ice_setup_rx_ctx (Jonathan Toppins) [1970643] - ice: Save VF's MAC across reboot (Jonathan Toppins) [1970643] - ice: Manage VF's MAC address for both legacy and new cases (Jonathan Toppins) [1970643] - ice: Register auxiliary device to provide RDMA (Jonathan Toppins) [1970643] - ice: Implement iidc operations (Jonathan Toppins) [1970643] - virtchnl: Use pad byte in virtchnl_ether_addr to specify MAC type (Jonathan Toppins) [1970643] - iidc: Introduce iidc.h (Jonathan Toppins) [1970643] - ice: Initialize RDMA support (Jonathan Toppins) [1970643] - ice: Respond to a NETDEV_UNREGISTER event for LAG (Jonathan Toppins) [1970643] - Revert "Revert "ice: Add initial support framework for LAG"" (Jonathan Toppins) [1970643] - ice: reduce scope of variable (Jonathan Toppins) [1970643] - ice: remove return variable (Jonathan Toppins) [1970643] - ice: suppress false cppcheck issues (Jonathan Toppins) [1970643] - ice: Set vsi->vf_id as ICE_INVAL_VFID for non VF VSI types (Jonathan Toppins) [1970643] - ice: remove unused struct member (Jonathan Toppins) [1970643] - ice: use local for consistency (Jonathan Toppins) [1970643] - ice: print name in /proc/iomem (Jonathan Toppins) [1970643] - ice: Reimplement module reads used by ethtool (Jonathan Toppins) [1970643] - ice: refactor ITR data structures (Jonathan Toppins) [1970643] - ice: manage interrupts during poll exit (Jonathan Toppins) [1970643] - ice: replace custom AIM algorithm with kernel's DIM library (Jonathan Toppins) [1970643] - ice: refactor interrupt moderation writes (Jonathan Toppins) [1970643] - ice: Add new VSI states to track netdev alloc/registration (Jonathan Toppins) [1970643] - ice: Drop leading underscores in enum ice_pf_state (Jonathan Toppins) [1970643] - ice: use kernel definitions for IANA protocol ports and ether-types (Jonathan Toppins) [1970643] - ice: Remove unnecessary blank line (Jonathan Toppins) [1970643] - ice: Remove unnecessary checks in add/kill_vid ndo ops (Jonathan Toppins) [1970643] - ice: Remove rx_gro_dropped stat (Jonathan Toppins) [1970643] - ice: Use local variable instead of pointer derefs (Jonathan Toppins) [1970643] - ice: Remove unnecessary variable (Jonathan Toppins) [1970643] - ice: Limit forced overrides based on FW version (Jonathan Toppins) [1970643] - ice: Use default configuration mode for PHY configuration (Jonathan Toppins) [1970643] - ice: Replace some memsets and memcpys with assignment (Jonathan Toppins) [1970643] - ice: Fix error return codes in ice_set_link_ksettings (Jonathan Toppins) [1970643] - ice: Rename a couple of variables (Jonathan Toppins) [1970643] - ice: Remove unnecessary checker loop (Jonathan Toppins) [1970643] - ice: Ignore EMODE return for opcode 0x0605 (Jonathan Toppins) [1970643] - ice: Align macro names to the specification (Jonathan Toppins) [1970643] - ice: Modify recursive way of adding nodes (Jonathan Toppins) [1970643] - ice: Re-send some AQ commands, as result of EBUSY AQ error (Jonathan Toppins) [1970643] - ice: Correct comment block style (Jonathan Toppins) [1970643] - ice: cleanup style issues (Jonathan Toppins) [1970643] - ice: rename ptype bitmap (Jonathan Toppins) [1970643] - ice: correct memory allocation call (Jonathan Toppins) [1970643] - ice: Check for bail out condition early (Jonathan Toppins) [1970643] - ice: remove unnecessary duplicated AQ command flag setting (Jonathan Toppins) [1970643] - ice: change link misconfiguration message (Jonathan Toppins) [1970643] - ice: Update to use package info from ice segment (Jonathan Toppins) [1970643] - ice: Delay netdev registration (Jonathan Toppins) [1970643] - ice: Add Support for XPS (Jonathan Toppins) [1970643] - ice: Fix fall-through warnings for Clang (Jonathan Toppins) [1970643] - ice: Fix prototype warnings (Jonathan Toppins) [1970643] - ice: move headroom initialization to ice_setup_rx_ctx (Jonathan Toppins) [1970643] - ice: store the result of ice_rx_offset() onto ice_ring (Jonathan Toppins) [1970643] - sched/core: Mitigate race cpus_share_cache()/update_top_cache_domain() (Phil Auld) [2011436] - sched/fair: Prevent dead task groups from regaining cfs_rq's (Phil Auld) [2011436] - sched/fair: Removed useless update of p->recent_used_cpu (Phil Auld) [2011436] - sched: Always inline is_percpu_thread() (Phil Auld) [2011436] - sched/fair: Add ancestors of unthrottled undecayed cfs_rq (Phil Auld) [2011436] - sched: Remove unused inline function __rq_clock_broken() (Phil Auld) [2011436] - sched: Prevent balance_push() on remote runqueues (Phil Auld) [2011436] - cpumask/hotplug: Fix cpu_dying() state tracking (Phil Auld) [2011436] - sched: Use cpu_dying() to fix balance_push vs hotplug-rollback (Phil Auld) [2011436] - cpumask: Introduce DYING mask (Phil Auld) [2011436] - cpumask: Make cpu_{online,possible,present,active}() inline (Phil Auld) [2011436] - cpu/hotplug: Cache number of online CPUs (Phil Auld) [2011436] - sched: Switch wait_task_inactive to HRTIMER_MODE_REL_HARD (Phil Auld) [2011436] - psi: Fix race between psi_trigger_create/destroy (Phil Auld) [2011436] - sctp: add vtag check in sctp_sf_ootb (Xin Long) [2001767] - sctp: add vtag check in sctp_sf_do_8_5_1_E_sa (Xin Long) [2001767] - sctp: add vtag check in sctp_sf_violation (Xin Long) [2001767] - sctp: fix the processing for COOKIE_ECHO chunk (Xin Long) [2001767] - sctp: fix the processing for INIT_ACK chunk (Xin Long) [2001767] - sctp: fix the processing for INIT chunk (Xin Long) [2001767] - sctp: use init_tag from inithdr for ABORT chunk (Xin Long) [2001767]- KVM: arm64: Extract ESR_ELx.EC only (Gavin Shan) [2008070] - KVM: arm64: vgic-v3: Align emulated cpuif LPI state machine with the pseudocode (Gavin Shan) [2008070] - KVM: arm64: vgic-v3: Don't advertise ICC_CTLR_EL1.SEIS (Gavin Shan) [2008070] - KVM: arm64: Fix reporting of endianess when the access originates at EL0 (Gavin Shan) [2008070] - KVM: arm64: Trim guest debug exception handling (Gavin Shan) [2008070] - KVM: arm64: Upgrade VMID accesses to {READ,WRITE}_ONCE (Gavin Shan) [2008070] - KVM: arm64: vgic: Drop WARN from vgic_get_irq (Gavin Shan) [2008070] - KVM: arm64: Enforce reserved bits for PSCI target affinities (Gavin Shan) [2008070] - KVM: arm64: Handle PSCI resets before userspace touches vCPU state (Gavin Shan) [2008070] - KVM: arm64: Fix read-side race on updates to vcpu reset state (Gavin Shan) [2008070] - KVM: arm64: Restore PMU configuration on first run (Gavin Shan) [2008070] - KVM: arm64: Don't zero the cycle count register when PMCR_EL0.P is set (Gavin Shan) [2008070] - KVM: arm64: Prevent mixed-width VM creation (Gavin Shan) [2008070] - KVM: arm64: Fix debug register indexing (Gavin Shan) [2008070] - KVM: arm64: Reject VM creation when the default IPA size is unsupported (Gavin Shan) [2008070] - KVM: arm64: Limit the debug architecture to ARMv8.0 (Gavin Shan) [2008070] - KVM: arm64: Handle SCXTNUM_ELx traps (Gavin Shan) [2008070] - arm64: kvm: mte: Hide the MTE CPUID information from the guests (Gavin Shan) [2008070] - arm64: mte: Fix typo in macro definition (Gavin Shan) [2008070] - arm64/cpufeature: Add remaining feature bits in ID_AA64PFR1 register (Gavin Shan) [2008070] - arm64: mte: system register definitions (Gavin Shan) [2008070] - arm64: sysreg: Clean up instructions for modifying PSTATE fields (Gavin Shan) [2008070] - KVM: arm64: Only reschedule if MMU_NOTIFIER_RANGE_BLOCKABLE is not set (Gavin Shan) [2008070] - arm64: kvm: Fix IDMAP overlap with HYP VA (Gavin Shan) [2008070] - packet: rework packet_pick_tx_queue() to use common code selection (Petr Oros) [2016477] - net: dev: rename queue selection helpers. (Petr Oros) [2016477] - Revert "cpuset: Make cpuset hotplug synchronous" (Waiman Long) [2023783] - tcp: fix TLP timer not set when CA_STATE changes from DISORDER to OPEN (Paolo Abeni) [2018546] - net: Only allow init netns to set default tcp cong to a restricted algo (Paolo Abeni) [2018546] - ipv6: tcp: drop silly ICMPv6 packet too big messages (Paolo Abeni) [2018546] - tcp: annotate data races around tp->mtu_info (Paolo Abeni) [2018546] - net: send SYNACK packet with accepted fwmark (Paolo Abeni) [2018546] - tcp: call sk_wmem_schedule before sk_mem_charge in zerocopy path (Paolo Abeni) [2018546] - net/tcp_fastopen: fix data races around tfo_active_disable_stamp (Paolo Abeni) [2018546] - net/tcp_fastopen: remove obsolete extern (Paolo Abeni) [2018546] - net, gro: Set inner transport header offset in tcp/udp GRO hook (Paolo Abeni) [2018546] - tcp_bbr: fix u32 wrap bug in round logic if bbr_init() called after 2B packets (Paolo Abeni) [2018546] - tcp: seq_file: Avoid skipping sk during tcp_seek_last_pos (Paolo Abeni) [2018546] - tcp: fix tp->undo_retrans accounting in tcp_sacktag_one() (Paolo Abeni) [2018546] - evm: mark evm_fixmode as __ro_after_init (Bruno Meneguele) [2017155] - IMA: remove -Wmissing-prototypes warning (Bruno Meneguele) [2017155] - ima: Set correct casting types (Bruno Meneguele) [2017155] - evm: Don't return an error in evm_write_xattrs() if audit is not enabled (Bruno Meneguele) [2017155] - evm: fix writing /evm overflow (Bruno Meneguele) [2017155] - ima: Fix function name error in comment. (Bruno Meneguele) [2017155] - ima: Fix the error code for restoring the PCR value (Bruno Meneguele) [2017155] - integrity: double check iint_cache was initialized (Bruno Meneguele) [2017155] - certs: Fix blacklist flag type confusion (Bruno Meneguele) [2017155] - integrity: Make function integrity_add_key() static (Bruno Meneguele) [2017155] - ima: Free IMA measurement buffer after kexec syscall (Bruno Meneguele) [2017155] - ima: Free IMA measurement buffer on error (Bruno Meneguele) [2017155] - evm: Fix memleak in init_desc (Bruno Meneguele) [2017155] - crypto: shash - remove shash_desc::flags (Bruno Meneguele) [2017155] - ima: Don't modify file descriptor mode on the fly (Bruno Meneguele) [2017155] - evm: Check size of security.evm before using it (Bruno Meneguele) [2017155] - ima: Remove semicolon at the end of ima_get_binary_runtime_size() (Bruno Meneguele) [2017155] - ima: Don't ignore errors from crypto_shash_update() (Bruno Meneguele) [2017155] - integrity: remove redundant initialization of variable ret (Bruno Meneguele) [2017155] - ima: Fail rule parsing when appraise_flag=blacklist is unsupportable (Bruno Meneguele) [2017155] - ima: Fail rule parsing when the KEXEC_CMDLINE hook is combined with an invalid cond (Bruno Meneguele) [2017155] - ima: Fail rule parsing when buffer hook functions have an invalid action (Bruno Meneguele) [2017155] - ima: Free the entire rule if it fails to parse (Bruno Meneguele) [2017155] - ima: Free the entire rule when deleting a list of rules (Bruno Meneguele) [2017155] - evm: Fix possible memory leak in evm_calc_hmac_or_hash() (Bruno Meneguele) [2017155] - ima: Fix ima digest hash table key calculation (Bruno Meneguele) [2017155] - ima: Fix return value of ima_write_policy() (Bruno Meneguele) [2017155] - evm: Fix a small race in init_desc() (Bruno Meneguele) [2017155] - crypto: drop mask=CRYPTO_ALG_ASYNC from 'shash' tfm allocations (Bruno Meneguele) [2017155] - evm: Don't deadlock if a crypto algorithm is unavailable (Bruno Meneguele) [2017155] - evm: Check also if *tfm is an error pointer in init_desc() (Bruno Meneguele) [2017155] - ima: avoid appraise error for hash calc interrupt (Bruno Meneguele) [2017155] - integrity: remove pointless subdir-$(CONFIG_...) (Bruno Meneguele) [2017155] - integrity: remove unneeded, broken attempt to add -fshort-wchar (Bruno Meneguele) [2017155] - x86/cpu: Fix migration safety with X86_BUG_NULL_SEL (Vitaly Kuznetsov) [2016961] - fs/xfs: convert comma to semicolon (Bill O'Donnell) [2009521] - xfs: remove xfs_buf_t typedef (Bill O'Donnell) [2009521] - xfs: open code updating i_mode in xfs_set_acl (Bill O'Donnell) [2009521] - xfs: remove xfs_vn_setattr_nonsize (Bill O'Donnell) [2009521] - xfs: remove unneeded return value check for *init_cursor() (Bill O'Donnell) [2009521] - xfs: introduce xfs_validate_stripe_geometry() (Bill O'Donnell) [2009521] - xfs: show the proper user quota options (Bill O'Donnell) [2009521] - xfs: remove the unused XFS_B_FSB_OFFSET macro (Bill O'Donnell) [2009521] - xfs: remove unnecessary null check in xfs_generic_create (Bill O'Donnell) [2009521] - xfs: directly return if the delta equal to zero (Bill O'Donnell) [2009521] - xfs: delete duplicated tp->t_dqinfo null check and allocation (Bill O'Donnell) [2009521] - xfs: rename xfs_fc_* back to xfs_fs_* (Bill O'Donnell) [2009521] - xfs: refactor file range validation (Bill O'Donnell) [2009521] - xfs: refactor realtime volume extent validation (Bill O'Donnell) [2009521] - xfs: refactor data device extent validation (Bill O'Donnell) [2009521] - xfs: scrub should mark a directory corrupt if any entries cannot be iget'd (Bill O'Donnell) [2009521] - xfs: detect overflows in bmbt records (Bill O'Donnell) [2009521] - xfs: trace log intent item recovery failures (Bill O'Donnell) [2009521] - xfs: validate feature support when recovering rmap/refcount intents (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered extent-free intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered extent-free intent checks out of xfs_efi_item_recover (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered refcount intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered refcount intent checks out of xfs_cui_item_recover (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered rmap intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered rmap intent checks out of xfs_rui_item_recover (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered bmap intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered bmap intent checks out of xfs_bui_item_recover (Bill O'Donnell) [2009521] - xfs: move kernel-specific superblock validation out of libxfs (Bill O'Donnell) [2009521] - platform/x86: amd-pmc: Increase the response register timeout (David Arcari) [2005064] - ARM: 9093/1: drivers: firmwapsci: Register with kernel restart handler (Mark Salter) [1996748] - arm64/kernel: Remove needless Call Frame Information annotations (Mark Salter) [1996748] - arm64: smccc: Add support for SMCCCv1.2 extended input/output registers (Mark Salter) [1996748] - psci: Remove unneeded semicolon (Mark Salter) [1996748] - firmware: smccc: Add SMCCC TRNG function call IDs (Mark Salter) [1996748] - arm64: Add support for SMCCC TRNG entropy source (Mark Salter) [1996748] - firmware: smccc: Introduce SMCCC TRNG framework (Mark Salter) [1996748] - arm64: random: Remove no longer needed prototypes (Mark Salter) [1996748] - arm64: kaslr: Use standard early random function (Mark Salter) [1996748] - random: random.h should include archrandom.h, not the other way around (Mark Salter) [1996748] - arm64: add credited/trusted RNG support (Mark Salter) [1996748] - arm64: Use v8.5-RNG entropy for KASLR seed (Mark Salter) [1996748] - arm64: kaslr: Check command line before looking for a seed (Mark Salter) [1996748] - arm64: kaslr: Announce KASLR status on boot (Mark Salter) [1996748] - psci: Add accessor for psci_0_1_function_ids (Mark Salter) [1996748] - psci: Replace psci_function_id array with a struct (Mark Salter) [1996748] - psci: Split functions to v0.1 and v0.2+ variants (Mark Salter) [1996748] - psci: Support psci_ops.get_version for v0.1 (Mark Salter) [1996748] - arm64: psci: Avoid printing in cpu_psci_cpu_die() (Mark Salter) [1996748] - firmware: psci: Extend psci_set_osi_mode() to allow reset to PC mode (Mark Salter) [1996748] - smccc: Use separate variables for args and results (Mark Salter) [1996748] - smccc: Define vendor hyp owned service call region (Mark Salter) [1996748] - firmware: smccc: Export both smccc functions (Mark Salter) [1996748] - sched,psci: Convert to sched_set_fifo*() (Mark Salter) [1996748] - firmware: smccc: Add ARCH_SOC_ID support (Mark Salter) [1996748] - base: soc: Add serial_number attribute to soc (Mark Salter) [1996748] - drivers/firmware/psci: Assign @err directly in hotplug_tests() (Mark Salter) [1996748] - drivers/firmware/psci: Fix memory leakage in alloc_init_cpu_groups() (Mark Salter) [1996748] - firmware: smccc: Fix missing prototype warning for arm_smccc_version_init (Mark Salter) [1996748] - firmware: smccc: Add function to fetch SMCCC version (Mark Salter) [1996748] - firmware: smccc: Refactor SMCCC specific bits into separate file (Mark Salter) [1996748] - firmware: smccc: Drop smccc_version enum and use ARM_SMCCC_VERSION_1_x instead (Mark Salter) [1996748] - firmware: smccc: Add HAVE_ARM_SMCCC_DISCOVERY to identify SMCCC v1.1 and above (Mark Salter) [1996748] - firmware: psci: Replace cpu_up/down() with add/remove_cpu() (Mark Salter) [1996748] - firmware: psci: Export functions to manage the OSI mode (Mark Salter) [1996748] - arm64: psci: Reduce the waiting time for cpu_psci_cpu_kill() (Mark Salter) [1996748] - firmware/psci: use common SMCCC_CONDUIT_* (Mark Salter) [1996748] - arm64: smp: disable hotplug on trusted OS resident CPU (Mark Salter) [1996748] - PSCI: cpuidle: Refactor CPU suspend power_state parameter handling (Mark Salter) [1996748] - ARM: psci: cpuidle: Enable PSCI CPUidle driver (Mark Salter) [1996748] - drivers: firmware: psci: Decouple checker from generic ARM CPUidle (Mark Salter) [1996748] - firmware/psci: psci_checker: Park kthreads before stopping them (Mark Salter) [1996748] - firmware/psci: add support for SYSTEM_RESET2 (Mark Salter) [1996748] - drivers: firmware: psci: Announce support for OS initiated suspend mode (Mark Salter) [1996748] - drivers: firmware: psci: Simplify error path of psci_dt_init() (Mark Salter) [1996748] - drivers: firmware: psci: Split psci_dt_cpu_init_idle() (Mark Salter) [1996748] - drivers: firmware: psci: Move psci to separate directory (Mark Salter) [1996748] - arm64: remove unused asm/compiler.h header file (Mark Salter) [1996748] - ppc64: Adding read_lock definition to nvme (Gopal Tiwari) [1990475] - nvme: fix per-namespace chardev deletion (Gopal Tiwari) [1990475] - nvme: set the PRACT bit when using Write Zeroes with T10 PI (Gopal Tiwari) [1990475] - nvme: fix nvme_setup_command metadata trace event (Gopal Tiwari) [1990475] - nvme-pci: don't WARN_ON in nvme_reset_work if ctrl.state is not RESETTING (Gopal Tiwari) [1990475] - nvme: fix refcounting imbalance when all paths are down (Gopal Tiwari) [1990475] - nvme-pci: do not call nvme_dev_remove_admin from nvme_remove (Gopal Tiwari) [1990475] - nvme-pci: fix multiple races in nvme_setup_io_queues (Gopal Tiwari) [1990475] - nvme-tcp: use __dev_get_by_name instead dev_get_by_name for OPT_HOST_IFACE (Gopal Tiwari) [1990475] - nvme-tcp: can't set sk_user_data without write_lock (Gopal Tiwari) [1990475] - nvme: use blk_execute_rq() for passthrough commands (Gopal Tiwari) [1990475] - nvmet: use NVMET_MAX_NAMESPACES to set nn value (Gopal Tiwari) [1990475] - nvme-pci: remove zeroout memset call for struct (Gopal Tiwari) [1990475] - nvme: remove zeroout memset call for struct (Gopal Tiwari) [1990475] - nvmet: add ZBD over ZNS backend support (Gopal Tiwari) [1990475] - nvmet: remove zeroout memset call for struct (Gopal Tiwari) [1990475] - nvmet: use req->cmd directly in file-ns fast path (Gopal Tiwari) [1990475] - nvmet: add Command Set Identifier support (Gopal Tiwari) [1990475] - nvmet: add nvmet_req_bio put helper for backends (Gopal Tiwari) [1990475] - nvmet: use nvme status value directly (Gopal Tiwari) [1990475] - nvmet: use u32 for nvmet_subsys max_nsid (Gopal Tiwari) [1990475] - nvmet: remove local variable (Gopal Tiwari) [1990475] - nvmet: add req cns error complete helper (Gopal Tiwari) [1990475] - nvmet: use req->cmd directly in bdev-ns fast path (Gopal Tiwari) [1990475] - nvmet: use u32 type for the local variable nsid (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in connect io q (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in nvmf_reg_write32() (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in connect admin q (Gopal Tiwari) [1990475] - nvmet: make ver stable once connection established (Gopal Tiwari) [1990475] - nvmet: make sn stable once connection was established (Gopal Tiwari) [1990475] - nvmet: change sn size and check validity (Gopal Tiwari) [1990475] - nvme-tcp: use ctrl sgl check helper (Gopal Tiwari) [1990475] - nvmet-fc: do not check for invalid target port in nvmet_fc_handle_fcp_rqst() (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in nvmf_reg_read64() (Gopal Tiwari) [1990475] - nvmet: allow mn change if subsys not discovered (Gopal Tiwari) [1990475] - nvme-fc: use ctrl sgl check helper (Gopal Tiwari) [1990475] - nvme-pci: fix var. type for increasing cq_head (Gopal Tiwari) [1990475] - nvme: add a helper to check ctrl sgl support (Gopal Tiwari) [1990475] - nvme: factor out a nvme_validate_passthru_nsid helper (Gopal Tiwari) [1990475] - nvme-tcp: fix error codes in nvme_tcp_setup_ctrl() (Gopal Tiwari) [1990475] - nvme: fix grammar in the CONFIG_NVME_MULTIPATH kconfig help text (Gopal Tiwari) [1990475] - nvme: verify MNAN value if ANA is enabled (Gopal Tiwari) [1990475] - ACPI: Check StorageD3Enable _DSD property in ACPI code (Gopal Tiwari) [1990475] - nvmet: move ka_work initialization to nvmet_alloc_ctrl (Gopal Tiwari) [1990475] - nvme: remove nvme_{get,put}_ns_from_disk (Gopal Tiwari) [1990475] - nvme: split nvme_report_zones (Gopal Tiwari) [1990475] - nvmet: remove a superfluous variable (Gopal Tiwari) [1990475] - nvme: open code nvme_put_ns_from_disk in nvme_ns_head_chr_ioctl (Gopal Tiwari) [1990475] - nvme: move the CSI sanity check into nvme_ns_report_zones (Gopal Tiwari) [1990475] - nvme-fabrics: remove extra braces (Gopal Tiwari) [1990475] - nvme: open code nvme_{get,put}_ns_from_disk in nvme_ns_head_ioctl (Gopal Tiwari) [1990475] - nvme: add a sparse annotation to nvme_ns_head_ctrl_ioctl (Gopal Tiwari) [1990475] - nvme-fabrics: remove an extra comment (Gopal Tiwari) [1990475] - nvme-fabrics: remove extra new lines in the switch (Gopal Tiwari) [1990475] - nvme: open code nvme_put_ns_from_disk in nvme_ns_head_ctrl_ioctl (Gopal Tiwari) [1990475] - nvme: extend and modify the APST configuration algorithm (Gopal Tiwari) [1990475] - nvme-tcp: allow selecting the network interface for connections (Gopal Tiwari) [1990475] - nvme-fabrics: fix the kerneldco comment for nvmf_log_connect_error() (Gopal Tiwari) [1990475] - nvme: remove redundant initialization of variable ret (Gopal Tiwari) [1990475] - nvmet: fix freeing unallocated p2pmem (Gopal Tiwari) [1990475] - nvme-loop: reset queue count to 1 in nvme_loop_destroy_io_queues() (Gopal Tiwari) [1990475] - nvme-loop: do not warn for deleted controllers during reset (Gopal Tiwari) [1990475] - nvme-loop: check for NVME_LOOP_Q_LIVE in nvme_loop_destroy_admin_queue() (Gopal Tiwari) [1990475] - nvme-loop: clear NVME_LOOP_Q_LIVE when nvme_loop_configure_admin_queue() fails (Gopal Tiwari) [1990475] - nvme-rdma: fix in-casule data send for chained sgls (Gopal Tiwari) [1990475] - nvmet: fix false keep-alive timeout when a controller is torn down (Gopal Tiwari) [1990475] - nvmet-tcp: fix inline data size comparison in nvmet_tcp_queue_response (Gopal Tiwari) [1990475] - nvme-tcp: remove incorrect Kconfig dep in BLK_DEV_NVME (Gopal Tiwari) [1990475] - nvme-fabrics: decode host pathing error for connect (Gopal Tiwari) [1990475] - nvme-fc: short-circuit reconnect retries (Gopal Tiwari) [1990475] - nvme: fix potential memory leaks in nvme_cdev_add (Gopal Tiwari) [1990475] - nvme-fc: clear q_live at beginning of association teardown (Gopal Tiwari) [1990475] - nvme-tcp: rerun io_work if req_list is not empty (Gopal Tiwari) [1990475] - nvme-tcp: fix possible use-after-completion (Gopal Tiwari) [1990475] - nvme-loop: fix memory leak in nvme_loop_create_ctrl() (Gopal Tiwari) [1990475] - nvmet: fix memory leak in nvmet_alloc_ctrl() (Gopal Tiwari) [1990475] - nvmet: seset ns->file when open fails (Gopal Tiwari) [1990475] - nvmet: demote fabrics cmd parse err msg to debug (Gopal Tiwari) [1990475] - nvmet: fix inline bio check for passthru (Gopal Tiwari) [1990475] - nvmet: fix inline bio check for bdev-ns (Gopal Tiwari) [1990475] - nvmet: use helper to remove the duplicate code (Gopal Tiwari) [1990475] - nvmet: demote discovery cmd parse err msg to debug (Gopal Tiwari) [1990475] - nvmet: remove unsupported command noise (Gopal Tiwari) [1990475] - nvme-pci: fix controller reset hang when racing with nvme_timeout (Gopal Tiwari) [1990475] - nvme: move the fabrics queue ready check routines to core (Gopal Tiwari) [1990475] - nvme: avoid memset for passthrough requests (Gopal Tiwari) [1990475] - nvme: add nvme_get_ns helper (Gopal Tiwari) [1990475] - nvme: fix controller ioctl through ns_head (Gopal Tiwari) [1990475] - nvme: introduce generic per-namespace chardev (Gopal Tiwari) [1990475] - nvme: cleanup nvme_configure_apst (Gopal Tiwari) [1990475] - nvme: do not try to reconfigure APST when the controller is not live (Gopal Tiwari) [1990475] - nvme: sanitize KATO setting (Gopal Tiwari) [1990475] - nvmet: avoid queuing keep-alive timer if it is disabled (Gopal Tiwari) [1990475] - nvme: fix NULL derefence in nvme_ctrl_fast_io_fail_tmo_show/store (Gopal Tiwari) [1990475] - nvme: let namespace probing continue for unsupported features (Gopal Tiwari) [1990475] - nvme: factor out nvme_ns_open and nvme_ns_release helpers (Gopal Tiwari) [1990475] - nvme: move nvme_ns_head_ops to multipath.c (Gopal Tiwari) [1990475] - nvme: factor out a nvme_tryget_ns_head helper (Gopal Tiwari) [1990475] - nvme: move the ioctl code to a separate file (Gopal Tiwari) [1990475] - nvme: don't bother to look up a namespace for controller ioctls (Gopal Tiwari) [1990475] - nvme: simplify block device ioctl handling for the !multipath case (Gopal Tiwari) [1990475] - nvme: simplify the compat ioctl handling (Gopal Tiwari) [1990475] - nvme-multipath: remove single trailing whitespace (Gopal Tiwari) [1990475] - nvme: pass a user pointer to nvme_nvm_ioctl (Gopal Tiwari) [1990475] - nvme: factor out a nvme_ns_ioctl helper (Gopal Tiwari) [1990475] - nvme: cleanup setting the disk name (Gopal Tiwari) [1990475] - nvme: remove single trailing whitespace (Gopal Tiwari) [1990475] - nvme-pci: remove single trailing whitespace (Gopal Tiwari) [1990475] - nvme: add a nvme_ns_head_multipath helper (Gopal Tiwari) [1990475] - nvmet: fix a spelling mistake "nubmer" -> "number" (Gopal Tiwari) [1990475] - nvmet-fc: simplify nvmet_fc_alloc_hostport (Gopal Tiwari) [1990475] - nvmet-tcp: fix a segmentation fault during io parsing error (Gopal Tiwari) [1990475] - lightnvm: use kobj_to_dev() (Gopal Tiwari) [1990475] - nvme: fix handling of large MDTS values (Gopal Tiwari) [1990475] - nvme: implement non-mdts command limits (Gopal Tiwari) [1990475] - nvme: disallow passthru cmd from targeting a nsid != nsid of the block dev (Gopal Tiwari) [1990475] - nvme: use sysfs_emit instead of sprintf (Gopal Tiwari) [1990475] - nvme-fc: check sgl supported by target (Gopal Tiwari) [1990475] - nvme: remove superfluous else in nvme_ctrl_loss_tmo_store (Gopal Tiwari) [1990475] - nvme: warn of unhandled effects only once (Gopal Tiwari) [1990475] - nvmet-tcp: enable optional queue idle period tracking (Gopal Tiwari) [1990475] - nvmet-tcp: fix incorrect locking in state_change sk callback (Gopal Tiwari) [1990475] - nvme-tcp: block BH in sk state_change sk callback (Gopal Tiwari) [1990475] - nvmet: return proper error code from discovery ctrl (Gopal Tiwari) [1990475] - nvme-tcp: check sgl supported by target (Gopal Tiwari) [1990475] - nvme: use driver pdu command for passthrough (Gopal Tiwari) [1990475] - nvmet: remove unnecessary ctrl parameter (Gopal Tiwari) [1990475] - nvmet-fc: update function documentation (Gopal Tiwari) [1990475] - nvme-pci: allocate nvme_command within driver pdu (Gopal Tiwari) [1990475] - nvmet: do not allow model_number exceed 40 bytes (Gopal Tiwari) [1990475] - nvme-fc: fix the function documentation comment (Gopal Tiwari) [1990475] - nvme: add new line after variable declatation (Gopal Tiwari) [1990475] - nvme: don't check nvme_req flags for new req (Gopal Tiwari) [1990475] - nvme: mark nvme_setup_passsthru() inline (Gopal Tiwari) [1990475] - nvme: split init identify into helper (Gopal Tiwari) [1990475] - nvme: rename nvme_init_identify() (Gopal Tiwari) [1990475] - nvme: reduce checks for zero command effects (Gopal Tiwari) [1990475] - nvmet: update error log page in nvmet_alloc_ctrl() (Gopal Tiwari) [1990475] - nvmet: remove an unnecessary function parameter to nvmet_check_ctrl_status (Gopal Tiwari) [1990475] - nvmet: remove a duplicate status assignment in nvmet_alloc_ctrl (Gopal Tiwari) [1990475] - nvmet: replace white spaces with tabs (Gopal Tiwari) [1990475] - nvme: use NVME_CTRL_CMIC_ANA macro (Gopal Tiwari) [1990475] - nvme-pci: cleanup nvme_irq() (Gopal Tiwari) [1990475] - nvme-pci: remove the barriers in nvme_irq() (Gopal Tiwari) [1990475] - nvmet-tcp: fix kmap leak when data digest in use (Gopal Tiwari) [1990475] - nvmet: don't check iosqes,iocqes for discovery controllers (Gopal Tiwari) [1990475] - nvme-tcp: fix a NULL deref when receiving a 0-length r2t PDU (Gopal Tiwari) [1990475] - nvme-rdma: fix possible hang when failing to set io queues (Gopal Tiwari) [1990475] - nvme-tcp: fix possible hang when failing to set io queues (Gopal Tiwari) [1990475] - nvme-fabrics: only reserve a single tag (Gopal Tiwari) [1990475] - nvme: allocate the keep alive request using BLK_MQ_REQ_NOWAIT (Gopal Tiwari) [1990475] - nvme: merge nvme_keep_alive into nvme_keep_alive_work (Gopal Tiwari) [1990475] - nvme-hwmon: Return error code when registration fails (Gopal Tiwari) [1990475] - nvme: update enumerations for status codes (Gopal Tiwari) [1990475]- scsi: mpt3sas: Fix incorrectly assigned error return and check (Tomas Henzl) [1990535] - scsi: mpt3sas: Introduce sas_ncq_prio_supported sysfs sttribute (Tomas Henzl) [1990535] - scsi: mpt3sas: Update driver version to 39.100.00.00 (Tomas Henzl) [1990535] - scsi: mpt3sas: Use firmware recommended queue depth (Tomas Henzl) [1990535] - scsi: mpt3sas: Bump driver version to 38.100.00.00 (Tomas Henzl) [1990535] - scsi: mpt3sas: Transition IOC to Ready state during shutdown (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix error return value in _scsih_expander_add() (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix Coverity reported issue (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix fall-through warnings for Clang (Tomas Henzl) [1990535] - scsi: mpt3sas: Handle firmware faults during second half of IOC init (Tomas Henzl) [1990535] - scsi: mpt3sas: Handle firmware faults during first half of IOC init (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix deadlock while cancelling the running firmware event (Tomas Henzl) [1990535] - scsi: mpt3sas: Documentation cleanup (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix two kernel-doc headers (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix out-of-bounds warnings in _ctl_addnl_diag_query (Tomas Henzl) [1990535] - scsi: megaraid_sas: Driver version update to 07.719.03.00-rc1 (Tomas Henzl) [1989643] - scsi: megaraid_sas: Add helper functions for irq_context (Tomas Henzl) [1989643] - scsi: megaraid: Clean up some inconsistent indenting (Tomas Henzl) [1989643] - scsi: megaraid: Fix Coccinelle warning (Tomas Henzl) [1989643] - IB/cma: Do not send IGMP leaves for sendonly Multicast groups (Kamal Heib) [2007269] - hv_netvsc: Add comment of netvsc_xdp_xmit() (Mohammed Gamal) [2008560] - hv_netvsc: use netif_is_bond_master() instead of open code (Mohammed Gamal) [2008560] - hv_netvsc: Avoid field-overflowing memcpy() (Mohammed Gamal) [2008560] - hv_netvsc: Set needed_headroom according to VF (Mohammed Gamal) [2008560] - netfilter: conntrack: fix error path in nf_conntrack_pernet_init() (Florian Westphal) [1922568] - netfilter: nf_conntrack: provide modparam to always register conntrack hooks (Florian Westphal) [1922568] - sctp: return true only for pathmtu update in sctp_transport_pl_toobig (Xin Long) [1890383] - sctp: subtract sctphdr len in sctp_transport_pl_hlen (Xin Long) [1890383] - sctp: reset probe_timer in sctp_transport_pl_update (Xin Long) [1890383] - sctp: allow IP fragmentation when PLPMTUD enters Error state (Xin Long) [1890383] - sctp: send pmtu probe only if packet loss in Search Complete state (Xin Long) [1890383] - sctp: improve the code for pmtu probe send and recv update (Xin Long) [1890383] - sctp: prevent info leak in sctp_make_heartbeat() (Xin Long) [1890383] - sctp: check pl.raise_count separately from its increment (Xin Long) [1890383] - sctp: send the next probe immediately once the last one is acked (Xin Long) [1890383] - sctp: do black hole detection in search complete state (Xin Long) [1890383] - sctp: process sctp over udp icmp err on sctp side (Xin Long) [1890383] - sctp: extract sctp_v4_err_handle function from sctp_v4_err (Xin Long) [1890383] - sctp: extract sctp_v6_err_handle function from sctp_v6_err (Xin Long) [1890383] - sctp: remove the unessessary hold for idev in sctp_v6_err (Xin Long) [1890383] - sctp: enable PLPMTUD when the transport is ready (Xin Long) [1890383] - sctp: do state transition when receiving an icmp TOOBIG packet (Xin Long) [1890383] - sctp: do state transition when a probe succeeds on HB ACK recv path (Xin Long) [1890383] - sctp: do state transition when PROBE_COUNT == MAX_PROBES on HB send path (Xin Long) [1890383] - sctp: do the basic send and recv for PLPMTUD probe (Xin Long) [1890383] - sctp: add the probe timer in transport for PLPMTUD (Xin Long) [1890383] - sctp: add the constants/variables and states and some APIs for transport (Xin Long) [1890383] - sctp: add SCTP_PLPMTUD_PROBE_INTERVAL sockopt for sock/asoc/transport (Xin Long) [1890383] - sctp: add probe_interval in sysctl and sock/asoc/transport (Xin Long) [1890383] - sctp: add pad chunk and its make function and event table (Xin Long) [1890383] - blk-mq: still set q->make_request_fn for blk-mq (Ming Lei) [1999728] - PCI: Add AMD RS690 quirk to enable 64-bit DMA (Myron Stowe) [1993279] - PCI: Add ACS quirk for Broadcom BCM57414 NIC (Myron Stowe) [1993279] - PCI: Mark some NVIDIA GPUs to avoid bus reset (Myron Stowe) [1993279] - PCI: of: Clear 64-bit flag for non-prefetchable memory below 4GB (Myron Stowe) [1993279] - x86/PCI: Remove unused alloc_pci_root_info() return value (Myron Stowe) [1993279] - PCI: Delay after FLR of Intel DC P4510 NVMe (Myron Stowe) [1993279] - PCI: Delay after FLR of Intel DC P3700 NVMe (Myron Stowe) [1993279] - PCI: Disable Samsung SM961/PM961 NVMe before FLR (Myron Stowe) [1993279] - PCI/sysfs: Use sysfs_emit() and sysfs_emit_at() in "show" functions (Myron Stowe) [1993279] - PCI/sysfs: Rearrange smbios_attr_group and acpi_attr_group (Myron Stowe) [1993279] - PCI/sysfs: Tidy SMBIOS & ACPI label attributes (Myron Stowe) [1993279] - PCI/sysfs: Convert "index", "acpi_index", "label" to static attributes (Myron Stowe) [1993279] - PCI/sysfs: Define SMBIOS label attributes with DEVICE_ATTR*() (Myron Stowe) [1993279] - PCI/sysfs: Define ACPI label attributes with DEVICE_ATTR*() (Myron Stowe) [1993279] - PCI/sysfs: Rename device_has_dsm() to device_has_acpi_name() (Myron Stowe) [1993279] - PCI/sysfs: Convert "vpd" to static attribute (Myron Stowe) [1993279] - PCI/sysfs: Rename "vpd" attribute accessors (Myron Stowe) [1993279] - PCI/sysfs: Convert "reset" to static attribute (Myron Stowe) [1993279] - PCI/sysfs: Convert "rom" to static attribute (Myron Stowe) [1993279] - PCI/sysfs: Convert "config" to static attribute (Myron Stowe) [1993279] - PCI: Allow VPD access for QLogic ISP2722 (Myron Stowe) [1993279] - PCI/VPD: Add helper pci_get_func0_dev() (Myron Stowe) [1993279] - PCI/VPD: Remove pci_vpd_find_tag() SRDT handling (Myron Stowe) [1993279] - PCI/VPD: Remove pci_vpd_find_tag() 'offset' argument (Myron Stowe) [1993279] - PCI/VPD: Change pci_vpd_init() return type to void (Myron Stowe) [1993279] - PCI/VPD: Make missing VPD message less alarming (Myron Stowe) [1993279] - PCI/VPD: Remove pci_set_vpd_size() (Myron Stowe) [1993279] - PCI/VPD: Remove sysfs accessor size checking dead code (Myron Stowe) [1993279] - PCI/VPD: Remove obsolete Broadcom NIC quirk (Myron Stowe) [1993279] - PCI/ACPI: Fix acpi_pci_set_power_state() debug message (Myron Stowe) [1993279] - PCI: acpiphp: Fix whitespace issue (Myron Stowe) [1993279] - PCI: shpchp: Remove unused shpc_writeb() (Myron Stowe) [1993279] - PCI: cpqphp: Use DEFINE_SPINLOCK() for int15_lock (Myron Stowe) [1993279] - ACPI / hotplug / PCI: Fix reference count leak in enable_slot() (Myron Stowe) [1993279] - PCI: Add pci_disable_parity() (Myron Stowe) [1993279] - PCI: Release OF node in pci_scan_device()'s error path (Myron Stowe) [1993279] - fs: dlm: fix check for multi-homed hosts (Alexander Aring) [1889887] - iommu: remove iommu_domain_{get,set}_attr (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: enable the liodn when attaching a device (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: replace DOMAIN_ATTR_FSL_PAMU_STASH with a direct call (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: remove ->domain_window_enable (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: remove support for multiple windows (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: remove fsl_pamu_get_domain_attr (Jerry Snitselaar) [2004349] - iommu: remove the unused domain_window_disable method (Jerry Snitselaar) [2004349] - iommu: Remove .domain_{get,set}_windows (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Decrease the queue size of evtq and priq (Jerry Snitselaar) [2004349] - iommu/vt-d: Use pasid_pte_is_present() helper function (Jerry Snitselaar) [2004349] - iommu/vt-d: Update the virtual command related registers (Jerry Snitselaar) [2004349] - ACPI: IORT: Handle device properties with software node API (Jerry Snitselaar) [2004349] - iommu: Update "iommu.strict" documentation (Jerry Snitselaar) [2004349] - iommu/dma: Remove redundant "!dev" checks (Jerry Snitselaar) [2004349] - iommu/virtio: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu/vt-d: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu/amd: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu: Pull IOVA cookie management into the core (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Stop pre-zeroing batch commands (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Extract reusable function __arm_smmu_cmdq_skip_err() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Add and use static helper function arm_smmu_get_cmdq() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Remove some unneeded init in arm_smmu_cmdq_issue_cmdlist() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Add and use static helper function arm_smmu_cmdq_issue_cmd_with_sync() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Use command queue batching helpers to improve performance (Jerry Snitselaar) [2004349] - iommu/amd: Use only natural aligned flushes in a VM (Jerry Snitselaar) [2004349] - iommu/amd: Sync once for scatter-gather operations (Jerry Snitselaar) [2004349] - iommu/amd: Tailored gather logic for AMD (Jerry Snitselaar) [2004349] - iommu: Factor iommu_iotlb_gather_is_disjoint() out (Jerry Snitselaar) [2004349] - iommu: Improve iommu_iotlb_gather helpers (Jerry Snitselaar) [2004349] - iommu/amd: Do not use flush-queue when NpCache is on (Jerry Snitselaar) [2004349] - iommu/amd: Selective flush on unmap (Jerry Snitselaar) [2004349] - iommu/amd: Convert from atomic_t to refcount_t on pasid_state->count (Jerry Snitselaar) [2004349] - iommu: Streamline iommu_iova_to_phys() (Jerry Snitselaar) [2004349] - iommu/vt-d: Allow devices to have more than 32 outstanding PRs (Jerry Snitselaar) [1920744] - iommu/vt-d: Drop "0x" prefix from PCI bus & device addresses (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix a deadlock in intel_svm_drain_prq() (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix PASID leak in intel_svm_unbind_mm() (Jerry Snitselaar) [2004349] - iommu/amd: Fix printing of IOMMU events when rate limiting kicks in (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix missing unlock on error in arm_smmu_device_group() (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix race condition during iommu_group creation (Jerry Snitselaar) [2004349] - iommu: Fix race condition during default domain allocation (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Implement the map_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/arm-smmu-v3: Implement the unmap_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/vt-d: Move clflush'es from iotlb_sync_map() to map_pages() (Jerry Snitselaar) [1971977] - iommu/vt-d: Implement map/unmap_pages() iommu_ops callback (Jerry Snitselaar) [1971977] - iommu/vt-d: Report real pgsize bitmap to iommu core (Jerry Snitselaar) [1971977] - iommu/arm-smmu: Implement the map_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/arm-smmu: Implement the unmap_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/io-pgtable-arm: Implement arm_lpae_map_pages() (Jerry Snitselaar) [1971977] - iommu/io-pgtable-arm: Implement arm_lpae_unmap_pages() (Jerry Snitselaar) [1971977] - iommu/io-pgtable-arm: Prepare PTE methods for handling multiple entries (Jerry Snitselaar) [1971977] - iommu: Add support for the map_pages() callback (Jerry Snitselaar) [1971977] - iommu: Hook up '->unmap_pages' driver callback (Jerry Snitselaar) [1971977] - iommu: Split 'addr_merge' argument to iommu_pgsize() into separate parts (Jerry Snitselaar) [1971977] - iommu: Use bitmap to calculate page size in iommu_pgsize() (Jerry Snitselaar) [1971977] - iommu: Add a map_pages() op for IOMMU drivers (Jerry Snitselaar) [1971977] - iommu/io-pgtable: Introduce map_pages() as a page table op (Jerry Snitselaar) [1971977] - iommu: Add an unmap_pages() op for IOMMU drivers (Jerry Snitselaar) [1971977] - iommu/io-pgtable: Introduce unmap_pages() as a page table op (Jerry Snitselaar) [1971977] - iommu/vt-d: Fix incomplete cache flush in intel_pasid_tear_down_entry() (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix PASID reference leak (Jerry Snitselaar) [2004349] - iommu: Check if group is NULL before remove device (Jerry Snitselaar) [2004349] - iommu/dma: Fix leak in non-contiguous API (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Fix fall-through warning for Clang (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix clearing real DMA device's scalable-mode context entries (Jerry Snitselaar) [2004349] - iommu/vt-d: Global devTLB flush when present context entry changed (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Use Tegra implementation on Tegra186 (Jerry Snitselaar) [2004349] - iommu: Delete a duplicate check in iommu_change_dev_def_domain() (Jerry Snitselaar) [2004349] - iommu/dma: Fix compile warning in 32-bit builds (Jerry Snitselaar) [2004349] - iommu: Drop unnecessary of_iommu.h includes (Jerry Snitselaar) [2004349] - iommu: Remove unused of_get_dma_window() (Jerry Snitselaar) [2004349] - iommu/iova: Put free_iova_mem() outside of spinlock iova_rbtree_lock (Jerry Snitselaar) [2004349] - iommu/dma: Fix IOVA reserve dma ranges (Jerry Snitselaar) [2004349] - iommu/virtio: Enable x86 support (Jerry Snitselaar) [2004349] - iommu/dma: Pass address limit rather than size to iommu_setup_dma_ops() (Jerry Snitselaar) [2004349] - iommu/amd: Fix section mismatch warning for detect_ivrs() (Jerry Snitselaar) [2004349] - iommu/amd: Add amd_iommu=force_enable option (Jerry Snitselaar) [2004349] - iommu/amd: Fix extended features logging (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix dereference of pointer info before it is null checked (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix linker error on 32-bit (Jerry Snitselaar) [2004349] - iommu/vt-d: No need to typecast (Jerry Snitselaar) [2004349] - iommu/vt-d: Define counter explicitly as unsigned int (Jerry Snitselaar) [2004349] - iommu/vt-d: Remove unnecessary braces (Jerry Snitselaar) [2004349] - iommu/vt-d: Removed unused iommu_count in dmar domain (Jerry Snitselaar) [2004349] - iommu/vt-d: Use bitfields for DMAR capabilities (Jerry Snitselaar) [2004349] - iommu/vt-d: Use DEVICE_ATTR_RO macro (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix out-bounds-warning in intel/svm.c (Jerry Snitselaar) [2004349] - iommu/vt-d: Add PRQ handling latency sampling (Jerry Snitselaar) [1971935] - iommu/vt-d: Add cache invalidation latency sampling (Jerry Snitselaar) [1971935] - iommu/vt-d: Expose latency monitor data through debugfs (Jerry Snitselaar) [1971935] - iommu/vt-d: Add common code for dmar latency performance monitors (Jerry Snitselaar) [1971935] - iommu/vt-d: Add prq_report trace event (Jerry Snitselaar) [1971973] - iommu/vt-d: Report prq to io-pgfault framework (Jerry Snitselaar) [1971971] - iommu/vt-d: Allocate/register iopf queue for sva devices (Jerry Snitselaar) [1971971] - iommu/vt-d: Refactor prq_event_thread() (Jerry Snitselaar) [1971971] - iommu/vt-d: Use common helper to lookup svm devices (Jerry Snitselaar) [1971971] - iommu/vt-d: Use iommu_sva_alloc(free)_pasid() helpers (Jerry Snitselaar) [1971971] - iommu/vt-d: Add pasid private data helpers (Jerry Snitselaar) [1971971] - iommu/vt-d: Support asynchronous IOMMU nested capabilities (Jerry Snitselaar) [2004349] - iommu/vt-d: Select PCI_ATS explicitly (Jerry Snitselaar) [2004349] - iommu/vt-d: Tweak the description of a DMA fault (Jerry Snitselaar) [1971975] - iommu/vt-d: Fix kernel-doc syntax in file header (Jerry Snitselaar) [2004349] - iommu/vt-d: Remove redundant assignment to variable agaw (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Check smmu->impl pointer before dereferencing (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Implement ->probe_finalize() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Remove unnecessary oom message (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix arm_smmu_device refcount leak in address translation (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix arm_smmu_device refcount leak when arm_smmu_rpm_get fails (Jerry Snitselaar) [2004349] - PM: runtime: Add documentation for pm_runtime_resume_and_get() (Jerry Snitselaar) [2004349] - PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter (Jerry Snitselaar) [2004349] - iommu/arm: Cleanup resources in case of probe error path (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Ratelimit event dump (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Add stall support for platform devices (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Change *array into *const array (Jerry Snitselaar) [2004349] - iommu/amd: Remove redundant assignment of err (Jerry Snitselaar) [2004349] - iommu/amd: Tidy up DMA ops init (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Add support for driver IOMMU fault handlers (Jerry Snitselaar) [2004349] - iommu/virtio: Add missing MODULE_DEVICE_TABLE (Jerry Snitselaar) [2004349] - iommu/amd: Fix wrong parentheses on page-specific invalidations (Jerry Snitselaar) [2004349] - iommu: Streamline registration interface (Jerry Snitselaar) [2004349] - iommu: Statically set module owner (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_IO_PGTABLE_CFG (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_DMA_USE_FLUSH_QUEUE (Jerry Snitselaar) [2004349] - iommu: remove iommu_set_cmd_line_dma_api and iommu_cmd_line_dma_api (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_NESTING (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_GEOMETRY (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_PAGING (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Maintain a SID->device structure (Jerry Snitselaar) [2004349] - iommu: Add a page fault handler (Jerry Snitselaar) [2004349] - iommu/vt-d: Support IOMMU_DEV_FEAT_IOPF (Jerry Snitselaar) [2004349] - iommu: Separate IOMMU_DEV_FEAT_IOPF from IOMMU_DEV_FEAT_SVA (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Use device properties for pasid-num-bits (Jerry Snitselaar) [2004349] - of/device: Add input id to of_dma_configure() (Jerry Snitselaar) [2004349] - of/iommu: Make of_map_rid() PCI agnostic (Jerry Snitselaar) [2004349] - iommu: Fix comment for struct iommu_fwspec (Jerry Snitselaar) [2004349] - iommu/amd: Remove duplicate check of devid (Jerry Snitselaar) [2004349] - iommu/amd: Page-specific invalidations for more than one page (Jerry Snitselaar) [2004349] - iommu/amd: Move a few prototypes to include/linux/amd-iommu.h (Jerry Snitselaar) [2004349] - iommu/amd: Remove a few unused exports (Jerry Snitselaar) [2004349] - iommu/amd: Remove the unused amd_iommu_get_v2_domain function (Jerry Snitselaar) [2004349] - iommu/amd: Remove the unused device errata code (Jerry Snitselaar) [2004349] - iommu/amd: Remove duplicate check of pasids (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix lockdep splat in intel_pasid_get_entry() (Jerry Snitselaar) [2004349] - iommu/amd: Remove iommu_init_ga() (Jerry Snitselaar) [1998265] - iommu/amd: Relocate GAMSup check to early_enable_iommus (Jerry Snitselaar) [1998265] - x86/Kconfig: Do not enable AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT automatically (Prarit Bhargava) [2021219] - hyper-v: Replace uuid.h with types.h (Mohammed Gamal) [2008563] - x86/hyperv: Avoid erroneously sending IPI to 'self' (Mohammed Gamal) [2008563] - asm-generic/hyperv: provide cpumask_to_vpset_noself (Mohammed Gamal) [2008563] - asm-generic/hyperv: Add missing function prototypes per -W1 warnings (Mohammed Gamal) [2008563] - hv: hyperv.h: Remove unused inline functions (Mohammed Gamal) [2008563] - hv: hyperv.h: a few mundane typo fixes (Mohammed Gamal) [2008563] - hv: hyperv.h: Replace one-element array with flexible-array in struct icmsg_negotiate (Mohammed Gamal) [2008563] - x86/hyperv: add comment describing TSC_INVARIANT_CONTROL MSR setting bit 0 (Mohammed Gamal) [2008563] - x86/hyperv: fix for unwanted manipulation of sched_clock when TSC marked unstable (Mohammed Gamal) [2008563] - hyperv: Detect Nested virtualization support for SVM (Mohammed Gamal) [2008563] - hyperv: SVM enlightened TLB flush support flag (Mohammed Gamal) [2008563] - x86/hyperv: remove on-stack cpumask from hv_send_ipi_mask_allbutself (Mohammed Gamal) [2008563] - drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status (Mohammed Gamal) [2008563] - x86/hyperv: remove unused linux/version.h header (Mohammed Gamal) [2008563] - x86/hyperv: Fix unused variable 'hi' warning in hv_apic_read (Mohammed Gamal) [2008563] - x86/hyperv: Fix unused variable 'msr_val' warning in hv_qlock_wait (Mohammed Gamal) [2008563] - PCI: hv: Fix sleep while in non-sleep context when removing child devices from the bus (Mohammed Gamal) [2008562] - PCI: hv: Add check for hyperv_initialized in init_hv_pci_drv() (Mohammed Gamal) [2008562] - PCI: hv: Drop msi_controller structure (Mohammed Gamal) [2008562] - PCI/IOV: Add sysfs MSI-X vector assignment interface (Myron Stowe) [2019087] - x86: ACPI: cstate: Optimize C3 entry on AMD CPUs (David Arcari) [1998529] - Bluetooth: Move shutdown callback before flushing tx and rx queue (Gopal Tiwari) [1990477] - Bluetooth: btusb: check conditions before enabling USB ALT 3 for WBS (Gopal Tiwari) [1990477] - Bluetooth: Fix VIRTIO_ID_BT assigned number (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Fix wrong opcode in the response for add_adv cmd (Gopal Tiwari) [1990477] - Bluetooth: defer cleanup of resources in hci_unregister_dev() (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: Fix handling of HCI_LE_Advertising_Set_Terminated event (Gopal Tiwari) [1990477] - Bluetooth: Fix Set Extended (Scan Response) Data (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language when filtering devices (Gopal Tiwari) [1990477] - Bluetooth: smp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in HCI role comments (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language when tracking connections (Gopal Tiwari) [1990477] - Bluetooth: sco: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: a2mp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: 6lowpan: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: amp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: cmtp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: bnep: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: hidp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in comments (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in SMP (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in HCI LE features (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language to describe CPB (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Fix slab-out-of-bounds in tlv_data_is_valid (Gopal Tiwari) [1990477] - Bluetooth: disable filter dup when scan for adv monitor (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Fix the command returns garbage parameter value (Gopal Tiwari) [1990477] - Bluetooth: RFCOMM: Use DEVICE_ATTR_RO macro (Gopal Tiwari) [1990477] - Bluetooth: Translate additional address type during le_conn_comp (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix invalid access on ECRED Connection response (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix invalid access if ECRED Reconfigure fails (Gopal Tiwari) [1990477] - Bluetooth: Remove spurious error message (Gopal Tiwari) [1990477] - Bluetooth: Shutdown controller after workqueues are flushed or cancelled (Gopal Tiwari) [1990477] - Bluetooth: Add ncmd=0 recovery handling (Gopal Tiwari) [1990477] - Bluetooth: 6lowpan: remove unused function (Gopal Tiwari) [1990477] - Bluetooth: Fix alt settings for incoming SCO with transparent coding format (Gopal Tiwari) [1990477] - Bluetooth: Fix the HCI to MGMT status conversion table (Gopal Tiwari) [1990477] - Bluetooth: cmtp: fix file refcount when cmtp_attach_device fails (Gopal Tiwari) [1990477] - Bluetooth: 6lowpan: delete unneeded variable initialization (Gopal Tiwari) [1990477] - Bluetooth: Return whether a connection is outbound (Gopal Tiwari) [1990477] - Bluetooth: SMP: Fix crash when receiving new connection when debug is enabled (Gopal Tiwari) [1990477] - Bluetooth: Fix spelling mistakes (Gopal Tiwari) [1990477] - Bluetooth: Set defaults for le_scan_{int,window}_adv_monitor (Gopal Tiwari) [1990477] - Bluetooth: Allow Microsoft extension to indicate curve validation (Gopal Tiwari) [1990477] - Bluetooth: Add support for reading AOSP vendor capabilities (Gopal Tiwari) [1990477] - Bluetooth: LL privacy allow RPA (Gopal Tiwari) [1990477] - Bluetooth: Handle own address type change with HCI_ENABLE_LL_PRIVACY (Gopal Tiwari) [1990477] - Bluetooth: Do not set cur_adv_instance in adv param MGMT request (Gopal Tiwari) [1990477] - Bluetooth: Use ext adv handle from requests in CCs (Gopal Tiwari) [1990477] - Bluetooth: use the correct print format for L2CAP debug statements (Gopal Tiwari) [1990477] - Bluetooth: SMP: Fix variable dereferenced before check 'conn' (Gopal Tiwari) [1990477] - Bluetooth: Check inquiry status before sending one (Gopal Tiwari) [1990477] - Bluetooth: Coding style fix (Gopal Tiwari) [1990477] - Bluetooth: Remove 'return' in void function (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: Move the advertisement monitor events to correct list (Gopal Tiwari) [1990477] - Bluetooth: Add missing entries for PHY configuration commands (Gopal Tiwari) [1990477] - Bluetooth: Fix mgmt status for LL Privacy experimental feature (Gopal Tiwari) [1990477] - Bluetooth: Fix wrong opcode error for read advertising features (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Rudimentary typo fixes (Gopal Tiwari) [1990477] - Bluetooth: Remove trailing semicolon in macros (Gopal Tiwari) [1990477] - Bluetooth: check for zapped sk before connecting (Gopal Tiwari) [1990477] - Bluetooth: fix set_ecdh_privkey() prototype (Gopal Tiwari) [1990477] - Bluetooth: initialize skb_queue_head at l2cap_chan_create() (Gopal Tiwari) [1990477] - Bluetooth: Set CONF_NOT_COMPLETE as l2cap_chan default (Gopal Tiwari) [1990477] - Bluetooth: Fix incorrect status handling in LE PHY UPDATE event (Gopal Tiwari) [1990477] - Bluetooth: avoid deadlock between hci_dev->lock and socket lock (Gopal Tiwari) [1990477] - Bluetooth: SMP: Convert BT_ERR/BT_DBG to bt_dev_err/bt_dev_dbg (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix not checking for maximum number of DCID (Gopal Tiwari) [1990477] - Bluetooth: Cancel le_scan_restart work when stopping discovery (Gopal Tiwari) [1990477] - Bluetooth: SMP: Fail if remote and local public keys are identical (Gopal Tiwari) [1990477] - Bluetooth: Allow scannable adv with extended MGMT APIs (Gopal Tiwari) [1990477] - Bluetooth: Remove unneeded commands for suspend (Gopal Tiwari) [1990477] - Bluetooth: Notify suspend on le conn failed (Gopal Tiwari) [1990477] - Bluetooth: hci_uart: Remove redundant assignment to fw_ptr (Gopal Tiwari) [1990477] - Bluetooth: btmrvl: remove redundant continue statement (Gopal Tiwari) [1990477] - Bluetooth: btusb: use default nvm if boardID is 0 for wcn6855. (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix bt fiwmare downloading failure issue for qca btsoc. (Gopal Tiwari) [1990477] - Bluetooth: btmtkuart: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Gopal Tiwari) [1990477] - Bluetooth: btrtl: rename USB fw for RTL8761 (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add 0x0b05:0x190e Realtek 8761BU (ASUS BT500) device. (Gopal Tiwari) [1990477] - Bluetooth: hci_h5: Add RTL8822CS capabilities (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add support USB ALT 3 for WBS (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add a new QCA_ROME device (0cf3:e500) (Gopal Tiwari) [1990477] - Bluetooth: btqca: Don't modify firmware contents in-place (Gopal Tiwari) [1990477] - Bluetooth: btbcm: Add entry for BCM43430B0 UART Bluetooth (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: fix potential GPF (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix memory leak (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fixed too many in-token issue for Mediatek Chip. (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add support for Lite-On Mediatek Chip (Gopal Tiwari) [1990477] - Bluetooth: virtio_bt: add missing null pointer check on alloc_skb call return (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix failing to init controllers with operation firmware (Gopal Tiwari) [1990477] - Bluetooth: Add a new USB ID for RTL8822CE (Gopal Tiwari) [1990477] - Bluetooth: btusb: Revert Fix the autosuspend enable and disable (Gopal Tiwari) [1990477] - Bluetooth: Add support for virtio transport driver (Gopal Tiwari) [1990477] - Bluetooth: btusb: Enable quirk boolean flag for Mediatek Chip. (Gopal Tiwari) [1990477] - Bluetooth: btintel: Skip reading firmware file version while in bootloader mode (Gopal Tiwari) [1990477] - Bluetooth: btintel: Collect tlv based active firmware build info in FW mode (Gopal Tiwari) [1990477] - Bluetooth: btintel: Reorganized bootloader mode tlv checks in intel_version_tlv parsing (Gopal Tiwari) [1990477] - Bluetooth: btusb: Consolidate code for waiting firmware to boot (Gopal Tiwari) [1990477] - Bluetooth: btusb: Consolidate code for waiting firmware download (Gopal Tiwari) [1990477] - Bluetooth: btintel: Consolidate intel_version parsing (Gopal Tiwari) [1990477] - Bluetooth: btintel: Consolidate intel_version_tlv parsing (Gopal Tiwari) [1990477] - Bluetooth: btintel: Move operational checks after version check (Gopal Tiwari) [1990477] - Bluetooth: btintel: Check firmware version before download (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Mundane typo fix (Gopal Tiwari) [1990477] - Bluetooth: btbcm: Add BCM4330 and BCM4334 compatibles (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Add device_may_wakeup support (Gopal Tiwari) [1990477] - Bluetooth: btintel: Fix offset calculation boot address parameter (Gopal Tiwari) [1990477] - Bluetooth: btusb: print firmware file name on error loading firmware (Gopal Tiwari) [1990477] - Bluetooth: btbcm: Obtain and handle reset GPIO (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix incorrect type in assignment and uninitialized symbol (Gopal Tiwari) [1990477] - Bluetooth: btusb: support 0cb5:c547 Realtek 8822CE device (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Fixed issue during suspend (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix excessive stack usage (Gopal Tiwari) [1990477] - Bluetooth: btusb: remove set but not used variable in btusb_mtk_setup_firmware_79xx (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix typo and correct the log print (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix memory leak in btusb_mtk_wmt_recv (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add protocol support for MediaTek MT7921U USB devices (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fine-tune mt7663 mechanism. (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: check for SSR triggered flag while suspend (Gopal Tiwari) [1990477] - Bluetooth: btrtl: Enable WBS for the specific Realtek devices (Gopal Tiwari) [1990477] - Bluetooth: hci_h5: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY for btrtl (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Wait for SSR completion during suspend (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Fix memleak in qca_controller_memdump (Gopal Tiwari) [1990477] - Bluetooth: hci_h5: Add support for binding RTL8723DS with device tree (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add support for GarfieldPeak controller (Gopal Tiwari) [1990477] - Bluetooth: btrtl: Add null check in setup (Gopal Tiwari) [1990477] - Bluetooth: btrtl: Enable central-peripheral role (Gopal Tiwari) [1990477] - Bluetooth: btusb: Remove duplicate newlines from logging (Gopal Tiwari) [1990477] - Bluetooth: btmtksdio: Fixed switch and case should be at the same indent (Gopal Tiwari) [1990477] - Revert "Bluetooth: btintel: Fix endianness issue for TLV version information" (Gopal Tiwari) [1990477] - Bluetooth: hci_bcm: Add support for ISO packets (Gopal Tiwari) [1990477] - Bluetooth: btusb: add shutdown function for wcn6855 (Gopal Tiwari) [1990477] - Bluetooth: hci_uart: Fix a race for write_work scheduling (Gopal Tiwari) [1990477] - Bluetooth: btqca: Add support to read FW build version for WCN3991 BTSoC (Gopal Tiwari) [1990477] - Bluetooth: btusb: Always fallback to alt 1 for WBS (Gopal Tiwari) [1990477] - Bluetooth: btqcomsmd: Fix a resource leak in error handling paths in the probe function (Gopal Tiwari) [1990477] - Bluetooth: Fix null pointer dereference in amp_read_loc_assoc_final_data (Gopal Tiwari) [1990477] - Bluetooth: Skip eSCO 2M params when not supported (Gopal Tiwari) [1990477] - Bluetooth: fix indentation and alignment reported by checkpatch (Gopal Tiwari) [1990477] - Bluetooth: fix coccicheck warnings debugfs (Gopal Tiwari) [1990477] - Bluetooth: Add new HCI_QUIRK_NO_SUSPEND_NOTIFIER quirk (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Try harder to accept device not knowing options (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix handling fragmented length (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix memory leak on suspend and resume (Gopal Tiwari) [1990477] - Bluetooth: Put HCI device if inquiry procedure interrupts (Gopal Tiwari) [1990477] - Bluetooth: drop HCI device reference before return (Gopal Tiwari) [1990477] - Bluetooth: avoid u128_xor() on potentially misaligned inputs (Gopal Tiwari) [1990477] - Bluetooth: Fix initializing response id after clearing struct (Gopal Tiwari) [1990477] - Bluetooth: Cancel Inquiry before Create Connection (Gopal Tiwari) [1990477] - Bluetooth: Pause service discovery for suspend (Gopal Tiwari) [1990477] - Bluetooth: Remove hci_req_le_suspend_config (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: Set missing suspend task bits (Gopal Tiwari) [1990477] - Bluetooth: Change MGMT security info CMD to be more generic (Gopal Tiwari) [1990477] - Bluetooth: Query LE tx power on startup (Gopal Tiwari) [1990477] - Bluetooth: Use intervals and tx power from mgmt cmds (Gopal Tiwari) [1990477] - Bluetooth: Break add adv into two mgmt commands (Gopal Tiwari) [1990477] - Bluetooth: Add helper to set adv data (Gopal Tiwari) [1990477] - Bluetooth: Add toggle to switch off interleave scan (Gopal Tiwari) [1990477] - Bluetooth: Refactor read default sys config for various types (Gopal Tiwari) [1990477] - Bluetooth: Handle active scan case (Gopal Tiwari) [1990477] - Bluetooth: Handle system suspend resume case (Gopal Tiwari) [1990477] - Bluetooth: Interleave with allowlist scan (Gopal Tiwari) [1990477] - Bluetooth: Fix attempting to set RPA timeout when unsupported (Gopal Tiwari) [1990477] - Bluetooth: Rename get_adv_instance_scan_rsp (Gopal Tiwari) [1990477] - Bluetooth: Fix not sending Set Extended Scan Response (Gopal Tiwari) [1990477] - Bluetooth: Fix for Bluetooth SIG test L2CAP/COS/CFD/BV-14-C (Gopal Tiwari) [1990477] - Bluetooth: sco: Fix crash when using BT_SNDMTU/BT_RCVMTU option (Gopal Tiwari) [1990477] - Bluetooth: Replace BT_DBG with bt_dev_dbg in HCI request (Gopal Tiwari) [1990477] - Bluetooth: consolidate error paths in hci_phy_link_complete_evt() (Gopal Tiwari) [1990477] - Bluetooth: Enforce key size of 16 bytes on FIPS level (Gopal Tiwari) [1990477] - Bluetooth: hidp: use correct wait queue when removing ctrl_wait (Gopal Tiwari) [1990477] - Bluetooth: Move force_bredr_smp debugfs into hci_debugfs_create_bredr (Gopal Tiwari) [1990477] - Bluetooth: Fix: LL PRivacy BLE device fails to connect (Gopal Tiwari) [1990477] - Bluetooth: Resume advertising after LE connection (Gopal Tiwari) [1990477] - Bluetooth: Fix slab-out-of-bounds read in hci_le_direct_adv_report_evt() (Gopal Tiwari) [1990477] - Bluetooth: Replace zero-length array with flexible-array member (Gopal Tiwari) [1990477] - Bluetooth: MGMT: Fix not checking if BT_HS is enabled (Gopal Tiwari) [1990477] - Bluetooth: Disable High Speed by default (Gopal Tiwari) [1990477] - Bluetooth: Fix update of own_addr_type if ll_privacy supported (Gopal Tiwari) [1990477] - Bluetooth: Fix auto-creation of hci_conn at Conn Complete event (Gopal Tiwari) [1990477] - Bluetooth: Set scan parameters for ADV Monitor (Gopal Tiwari) [1990477] - Bluetooth: Update Adv monitor count upon removal (Gopal Tiwari) [1990477] - net: bluetooth: delete duplicated words (Gopal Tiwari) [1990477] - Bluetooth: pause/resume advertising around suspend (Gopal Tiwari) [1990477] - Bluetooth: Emit controller suspend and resume events (Gopal Tiwari) [1990477] - Bluetooth: Add suspend reason for device disconnect (Gopal Tiwari) [1990477] - Bluetooth: Add mgmt suspend and resume events (Gopal Tiwari) [1990477] - Bluetooth: Set ext scan response only when it exists (Gopal Tiwari) [1990477] - Bluetooth: Only mark socket zapped after unlocking (Gopal Tiwari) [1990477] - Bluetooth: Add MGMT capability flags for tx power and ext advertising (Gopal Tiwari) [1990477] - Bluetooth: Report num supported adv instances for hw offloading (Gopal Tiwari) [1990477] - Bluetooth: sco: new getsockopt options BT_SNDMTU/BT_RCVMTU (Gopal Tiwari) [1990477] - Bluetooth: Re-order clearing suspend tasks (Gopal Tiwari) [1990477] - Bluetooth: Fix memory leak in read_adv_mon_features() (Gopal Tiwari) [1990477] - Bluetooth: Clear suspend tasks on unregister (Gopal Tiwari) [1990477] - Bluetooth: Remove CRYPTO_ALG_INTERNAL flag (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: use the proper scan params when conn is pending (Gopal Tiwari) [1990477] - Bluetooth: Enable controller RPA resolution using Experimental feature (Gopal Tiwari) [1990477] - Bluetooth: Let controller creates RPA during le create conn (Gopal Tiwari) [1990477] - Bluetooth: Translate additional address type during le_conn (Gopal Tiwari) [1990477] - Bluetooth: Enable RPA Timeout (Gopal Tiwari) [1990477] - Bluetooth: Enable/Disable address resolution during le create conn (Gopal Tiwari) [1990477] - Bluetooth: Configure controller address resolution if available (Gopal Tiwari) [1990477] - Bluetooth: Translate additional address type correctly (Gopal Tiwari) [1990477] - Bluetooth: Update resolving list when updating whitelist (Gopal Tiwari) [1990477] - Bluetooth: Fix suspend notifier race (Gopal Tiwari) [1990477] - Bluetooth: Return NOTIFY_DONE for hci_suspend_notifier (Gopal Tiwari) [1990477] - Bluetooth: Add per-instance adv disable/remove (Gopal Tiwari) [1990477] - Replace HTTP links with HTTPS ones: BLUETOOTH SUBSYSTEM (Gopal Tiwari) [1990477] - Bluetooth: RFCOMM: Use fallthrough pseudo-keyword (Gopal Tiwari) [1990477] - Bluetooth: core: Use fallthrough pseudo-keyword (Gopal Tiwari) [1990477] - Bluetooth: Use whitelist for scan policy when suspending (Gopal Tiwari) [1990477] - Bluetooth: le_simult_central_peripheral experimental feature (Gopal Tiwari) [1990477] - Bluetooth: Fix kernel oops triggered by hci_adv_monitors_clear() (Gopal Tiwari) [1990477] - Bluetooth: use configured default params for active scans (Gopal Tiwari) [1990477] - Bluetooth: Adding a configurable autoconnect timeout (Gopal Tiwari) [1990477] - Bluetooth: Don't restart scanning if paused (Gopal Tiwari) [1990477] - Bluetooth: add a mutex lock to avoid UAF in do_enale_set (Gopal Tiwari) [1990477] - Bluetooth: use configured params for ext adv (Gopal Tiwari) [1990477] - Bluetooth: Add hci_dev_lock to get/set device flags (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Use command complete on success for set system config (Gopal Tiwari) [1990477] - Bluetooth: Terminate the link if pairing is cancelled (Gopal Tiwari) [1990477] - Bluetooth: Update background scan and report device based on advertisement monitors (Gopal Tiwari) [1990477] - Bluetooth: Notify adv monitor removed event (Gopal Tiwari) [1990477] - Bluetooth: Notify adv monitor added event (Gopal Tiwari) [1990477] - Bluetooth: Add handler of MGMT_OP_REMOVE_ADV_MONITOR (Gopal Tiwari) [1990477] - Bluetooth: Add handler of MGMT_OP_ADD_ADV_PATTERNS_MONITOR (Gopal Tiwari) [1990477] - Bluetooth: Add handler of MGMT_OP_READ_ADV_MONITOR_FEATURES (Gopal Tiwari) [1990477] - Bluetooth: Add definitions for advertisement monitor features (Gopal Tiwari) [1990477] - Bluetooth: Add get/set device flags mgmt op (Gopal Tiwari) [1990477] - Bluetooth: Replace wakeable in hci_conn_params (Gopal Tiwari) [1990477] - Bluetooth: Replace wakeable list with flag (Gopal Tiwari) [1990477] - Bluetooth: Add bdaddr_list_with_flags for classic whitelist (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Add commands for runtime configuration (Gopal Tiwari) [1990477] - Bluetooth: implement read/set default system parameters mgmt (Gopal Tiwari) [1990477] - Bluetooth: mgmt: read/set system parameter definitions (Gopal Tiwari) [1990477] - Bluetooth: centralize default value initialization. (Gopal Tiwari) [1990477] - Bluetooth: Use only 8 bits for the HCI CMSG state flags (Gopal Tiwari) [1990477] - Bluetooth: Add support for BT_PKT_STATUS CMSG data for SCO connections (Gopal Tiwari) [1990477] - Bluetooth: Removing noisy dbg message (Gopal Tiwari) [1990477] - Bluetooth: Fix update of connection state in `hci_encrypt_cfm` (Gopal Tiwari) [1990477] - Bluetooth: Fix assuming EIR flags can result in SSP authentication (Gopal Tiwari) [1990477] - Bluetooth: Consolidate encryption handling in hci_encrypt_cfm (Gopal Tiwari) [1990477] - Bluetooth: Add SCO fallback for invalid LMP parameters error (Gopal Tiwari) [1990477] - Bluetooth: Fix for GAP/SEC/SEM/BI-10-C (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: add support for waiting disconnection resp (Gopal Tiwari) [1990477] - Bluetooth: Handle Inquiry Cancel error after Inquiry Complete (Gopal Tiwari) [1990477] - Bluetooth: Rename BT_SUSPEND_COMPLETE (Gopal Tiwari) [1990477] - Bluetooth: Introduce debug feature when dynamic debug is disabled (Gopal Tiwari) [1990477] - Bluetooth: Fix advertising handle is set to 0 (Gopal Tiwari) [1990477] - Bluetooth: Introduce HCI_MGMT_HDEV_OPTIONAL option (Gopal Tiwari) [1990477] - Bluetooth: Add support for experimental features configuration (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix errors during L2CAP_CREDIT_BASED_CONNECTION_REQ (0x17) (Gopal Tiwari) [1990477] - Bluetooth: Add MGMT_EV_PHY_CONFIGURATION_CHANGED to supported list (Gopal Tiwari) [1990477] - Bluetooth: use crypto_shash_tfm_digest() (Gopal Tiwari) [1990477] - Bluetooth: allow scatternet connections if supported. (Gopal Tiwari) [1990477] - Bluetooth: Enhanced Connection Complete event belongs to LL Privacy (Gopal Tiwari) [1990477] - Bluetooth: Enable LE Enhanced Connection Complete event. (Gopal Tiwari) [1990477] - Bluetooth: Use extra variable to make code more readable (Gopal Tiwari) [1990477] - Bluetooth: log advertisement packet length if it gets corrected (Gopal Tiwari) [1990477] - Bluetooth: Always request for user confirmation for Just Works (LE SC) (Gopal Tiwari) [1990477] - Bluetooth: Simplify / fix return values from tk_request (Gopal Tiwari) [1990477] - Bluetooth: debugfs option to unset MITM flag (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: replace zero-length array with flexible-array member (Gopal Tiwari) [1990477] - Bluetooth: Add support for reading security information (Gopal Tiwari) [1990477] - Bluetooth: Add support for Read Local Simple Pairing Options (Gopal Tiwari) [1990477] - Bluetooth: Add framework for Microsoft vendor extension (Gopal Tiwari) [1990477] - Bluetooth: Move debugfs configuration above the selftests (Gopal Tiwari) [1990477] - Bluetooth: fixing minor typo in comment (Gopal Tiwari) [1990477] - Bluetooth: Prioritize SCO traffic (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix handling LE modes by L2CAP_OPTIONS (Gopal Tiwari) [1990477] - Bluetooth: Always request for user confirmation for Just Works (Gopal Tiwari) [1990477] - Bluetooth: Add BT_MODE socket option (Gopal Tiwari) [1990477] - crypto: shash - remove shash_desc::flags (Gopal Tiwari) [1990477] - cifs: On cifs_reconnect, resolve the hostname again. (Ronnie Sahlberg) [2018046] - cifs: Handle witness client move notification (Ronnie Sahlberg) [2018046] - cifs: Send witness register messages to userspace daemon in echo task (Ronnie Sahlberg) [2018046] - cifs: Add witness information to debug data dump (Ronnie Sahlberg) [2018046] - cifs: Set witness notification handler for messages from userspace daemon (Ronnie Sahlberg) [2018046] - cifs: Send witness register and unregister commands to userspace daemon (Ronnie Sahlberg) [2018046] - cifs: Register generic netlink family (Ronnie Sahlberg) [2018046] - cifs: add witness mount option and data structs (Ronnie Sahlberg) [2018046] - cifs: Simplify reconnect code when dfs upcall is enabled (Ronnie Sahlberg) [2018046] - file: fix close_range() for unshare+cloexec (Pavel Reichl) [1950248] - scsi: lpfc: Update lpfc version to 14.0.0.3 (Dick Kennedy) [1989265] - scsi: lpfc: Allow fabric node recovery if recovery is in progress before devloss (Dick Kennedy) [1989265] - scsi: lpfc: Fix link down processing to address NULL pointer dereference (Dick Kennedy) [1989265] - scsi: lpfc: Allow PLOGI retry if previous PLOGI was aborted (Dick Kennedy) [1989265] - scsi: lpfc: Fix use-after-free in lpfc_unreg_rpi() routine (Dick Kennedy) [1989265] - scsi: lpfc: Correct sysfs reporting of loop support after SFP status change (Dick Kennedy) [1989265] - scsi: lpfc: Wait for successful restart of SLI3 adapter during host sg_reset (Dick Kennedy) [1989265] - scsi: lpfc: Revert LOG_TRACE_EVENT back to LOG_INIT prior to driver_resource_setup() (Dick Kennedy) [1989265] - scsi: lpfc: Fix memory overwrite during FC-GS I/O abort handling (Dick Kennedy) [1989265] - scsi: lpfc: Add support for optional PLDV handling (Dick Kennedy) [1989265] - scsi: lpfc: Return NULL rather than a plain 0 integer (Dick Kennedy) [1989265] - scsi: lpfc: Fix a function name in comments (Dick Kennedy) [1989265] - scsi: lpfc: Fix mailbox command failure during driver initialization (Dick Kennedy) [1989265] - scsi: lpfc: Fix gcc -Wstringop-overread warning, again (Dick Kennedy) [1989265] - scsi: lpfc: Use correct scnprintf() limit (Dick Kennedy) [1989265] - scsi: lpfc: Fix sprintf() overflow in lpfc_display_fpin_wwpn() (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 14.0.0.2 (Dick Kennedy) [1989265] - scsi: lpfc: Improve PBDE checks during SGL processing (Dick Kennedy) [1989265] - scsi: lpfc: Zero CGN stats only during initial driver load and stat reset (Dick Kennedy) [1989265] - scsi: lpfc: Fix I/O block after enabling managed congestion mode (Dick Kennedy) [1989265] - scsi: lpfc: Adjust bytes received vales during cmf timer interval (Dick Kennedy) [1989265] - scsi: fc: Add EDC ELS definition (Dick Kennedy) [1989265] - scsi: lpfc: Fix EEH support for NVMe I/O (Dick Kennedy) [1989265] - scsi: lpfc: Fix FCP I/O flush functionality for TMF routines (Dick Kennedy) [1989265] - scsi: lpfc: Fix NVMe I/O failover to non-optimized path (Dick Kennedy) [1989265] - scsi: lpfc: Don't remove ndlp on PRLI errors in P2P mode (Dick Kennedy) [1989265] - scsi: lpfc: Fix rediscovery of tape device after LIP (Dick Kennedy) [1989265] - scsi: lpfc: Fix hang on unload due to stuck fport node (Dick Kennedy) [1989265] - scsi: lpfc: Fix premature rpi release for unsolicited TPLS and LS_RJT (Dick Kennedy) [1989265] - scsi: lpfc: Don't release final kref on Fport node while ABTS outstanding (Dick Kennedy) [1989265] - scsi: lpfc: Fix list_add() corruption in lpfc_drain_txq() (Dick Kennedy) [1989265] - scsi: lpfc: Remove unneeded variable (Dick Kennedy) [1989265] - scsi: lpfc: Fix compilation errors on kernels with no CONFIG_DEBUG_FS (Dick Kennedy) [1989265] - scsi: lpfc: Fix CPU to/from endian warnings introduced by ELS processing (Dick Kennedy) [1989265] - scsi: lpfc: Copyright updates for 14.0.0.1 patches (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 14.0.0.1 (Dick Kennedy) [1989265] - scsi: lpfc: Add bsg support for retrieving adapter cmf data (Dick Kennedy) [1989265] - scsi: lpfc: Add cmf_info sysfs entry (Dick Kennedy) [1989265] - scsi: lpfc: Add debugfs support for cm framework buffers (Dick Kennedy) [1989265] - scsi: lpfc: Add support for maintaining the cm statistics buffer (Dick Kennedy) [1989265] - scsi: lpfc: Add rx monitoring statistics (Dick Kennedy) [1989265] - scsi: lpfc: Add support for the CM framework (Dick Kennedy) [1989265] - scsi: lpfc: Add cmfsync WQE support (Dick Kennedy) [1989265] - scsi: lpfc: Add support for cm enablement buffer (Dick Kennedy) [1989265] - scsi: lpfc: Add cm statistics buffer support (Dick Kennedy) [1989265] - scsi: lpfc: Add EDC ELS support (Dick Kennedy) [1989265] - scsi: lpfc: Expand FPIN and RDF receive logging (Dick Kennedy) [1989265] - scsi: lpfc: Add MIB feature enablement support (Dick Kennedy) [1989265] - scsi: lpfc: Add SET_HOST_DATA mbox cmd to pass date/time info to firmware (Dick Kennedy) [1989265] - scsi: lpfc: Fix possible ABBA deadlock in nvmet_xri_aborted() (Dick Kennedy) [1989265] - scsi: lpfc: Remove redundant assignment to pointer pcmd (Dick Kennedy) [1989265] - scsi: lpfc: Copyright updates for 14.0.0.0 patches (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 14.0.0.0 (Dick Kennedy) [1989265] - scsi: lpfc: Add 256 Gb link speed support (Dick Kennedy) [1989265] - scsi: lpfc: Revise Topology and RAS support checks for new adapters (Dick Kennedy) [1989265] - scsi: lpfc: Fix cq_id truncation in rq create (Dick Kennedy) [1989265] - scsi: lpfc: Add PCI ID support for LPe37000/LPe38000 series adapters (Dick Kennedy) [1989265] - scsi: lpfc: Copyright updates for 12.8.0.11 patches (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 12.8.0.11 (Dick Kennedy) [1989265] - scsi: lpfc: Skip issuing ADISC when node is in NPR state (Dick Kennedy) [1989265] - scsi: lpfc: Skip reg_vpi when link is down for SLI3 in ADISC cmpl path (Dick Kennedy) [1989265] - scsi: lpfc: Call discovery state machine when handling PLOGI/ADISC completions (Dick Kennedy) [1989265] - scsi: lpfc: Delay unregistering from transport until GIDFT or ADISC completes (Dick Kennedy) [1989265] - scsi: lpfc: Enable adisc discovery after RSCN by default (Dick Kennedy) [1989265] - scsi: lpfc: Use PBDE feature enabled bit to determine PBDE support (Dick Kennedy) [1989265] - scsi: lpfc: Clear outstanding active mailbox during PCI function reset (Dick Kennedy) [1989265] - scsi: lpfc: Fix KASAN slab-out-of-bounds in lpfc_unreg_rpi() routine (Dick Kennedy) [1989265] - scsi: lpfc: Remove REG_LOGIN check requirement to issue an ELS RDF (Dick Kennedy) [1989265] - scsi: lpfc: Fix NULL ptr dereference with NPIV ports for RDF handling (Dick Kennedy) [1989265] - scsi: lpfc: Fix target reset handler from falsely returning FAILURE (Dick Kennedy) [1989265] - scsi: lpfc: Discovery state machine fixes for LOGO handling (Dick Kennedy) [1989265] - scsi: lpfc: Fix function description comments for vmid routines (Dick Kennedy) [1989265] - scsi: lpfc: Improve firmware download logging (Dick Kennedy) [1989265] - scsi: lpfc: Remove use of kmalloc() in trace event logging (Dick Kennedy) [1989265] - scsi: lpfc: Fix NVMe support reporting in log message (Dick Kennedy) [1989265] - scsi: lpfc: Fix build error in lpfc_scsi.c (Dick Kennedy) [1989265] - scsi: lpfc: Use list_move_tail() instead of list_del()/list_add_tail() (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Introduce VMID in I/O path (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Add QFPA and VMID timeout check in worker thread (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Timeout implementation for VMID (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Append the VMID to the wqe before sending (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Implement CT commands for appid (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Functions to manage VMIDs (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Implement ELS commands for appid (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Add support for VMID in mailbox command (Dick Kennedy) [1989265] - scsi: lpfc: vmid: VMID parameter initialization (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Add datastructure for supporting VMID in lpfc (Dick Kennedy) [1989265] - redhat/config: Rename CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE to CONFIG_DEBUG_KMEMLEAK_MEM_POOL_SIZE (Waiman Long) [2018425] - kasan, kmemleak: reset tags when scanning block (Waiman Long) [2018425] - mm/kmemleak: rely on rcu for task stack scanning (Waiman Long) [2018425] - mm/kmemleak: silence KCSAN splats in checksum (Waiman Long) [2018425] - mm/kmemleak: turn kmemleak_lock and object->lock to raw_spinlock_t (Waiman Long) [2018425] - kmemleak: Do not corrupt the object_list during clean-up (Waiman Long) [2018425] - mm: kmemleak: use the memory pool for early allocations (Waiman Long) [2018425] - mm: kmemleak: simple memory allocation pool for kmemleak objects (Waiman Long) [2018425] - mm: kmemleak: make the tool tolerant to struct scan_area allocation failures (Waiman Long) [2018425] - kmemleak: increase DEBUG_KMEMLEAK_EARLY_LOG_SIZE default to 16K (Waiman Long) [2018425] - mm: kmemleak: disable early logging in case of error (Waiman Long) [2018425] - mm/kmemleak.c: fix unused-function warning (Waiman Long) [2018425] - kmemleak: powerpc: skip scanning holes in the .bss section (Waiman Long) [2018425] - mm: kmemleak: no need to check return value of debugfs_create functions (Waiman Long) [2018425]- powerpc/smp: Use existing L2 cache_map cpumask to find L3 cache siblings (Desnes A. Nunes do Rosario) [2013537] - powerpc/cacheinfo: Remove the redundant get_shared_cpu_map() (Desnes A. Nunes do Rosario) [2013537] - powerpc/cacheinfo: Lookup cache by dt node and thread-group id (Desnes A. Nunes do Rosario) [2013537] - Revert "thunderbolt: Hide authorized attribute if router does not support PCIe tunnels" (Torez Smith) [1969444] - thunderbolt: Add quirk for Intel Goshen Ridge DP credits (Torez Smith) [1969444] - thunderbolt: Update port credits after bonding is enabled/disabled (Torez Smith) [1969444] - thunderbolt: Wait for the lanes to actually bond (Torez Smith) [1969444] - thunderbolt: Read router preferred credit allocation information (Torez Smith) [1969444] - thunderbolt: Make tb_port_type() take const parameter (Torez Smith) [1969444] - thunderbolt: Move nfc_credits field to struct tb_path_hop (Torez Smith) [1969444] - thunderbolt: Align USB4 router wakes configuration with the CM guide (Torez Smith) [1969444] - thunderbolt: Add wake from DisplayPort (Torez Smith) [1969444] - thunderbolt: Use generic tb_nvm_[read|write]_data() for Thunderbolt 2/3 devices (Torez Smith) [1969444] - thunderbolt: Split NVM read/write generic functions out from usb4.c (Torez Smith) [1969444] - thunderbolt: Add self-authenticate support for new dock (Torez Smith) [1969444] - thunderbolt: usb4: Fix NVM read buffer bounds and offset issue (Torez Smith) [1969444] - thunderbolt: dma_port: Fix NVM read buffer bounds and offset issue (Torez Smith) [1969444] - thunderbolt: Hide authorized attribute if router does not support PCIe tunnels (Torez Smith) [1969444] - x86/mce: Avoid infinite loop for copy from user recovery (Prarit Bhargava) [1999550] - x86/mce: Rename kill_it to kill_current_task (Prarit Bhargava) [1999550] - x86/mce: Recover from poison found while copying from user space (Prarit Bhargava) [1999550] - x86/mce: Delay clearing IA32_MCG_STATUS to the end of do_machine_check() (Prarit Bhargava) [1999550] - x86/mce: Send #MC singal from task work (Prarit Bhargava) [1999550] - redhat/config: Enable Nitro Enclaves on aarch64 (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Add fixes for checkpatch match open parenthesis reports (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Update copyright statement to include 2021 (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Add fix for the kernel-doc report (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Enable Arm64 support (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Set Bus Master for the NE PCI device (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Fixup type and simplify logic of the poll mask setup (Vitaly Kuznetsov) [2001581] - mptcp: Make mptcp_pm_nl_mp_prio_send_ack() static (Davide Caratti) [2020198] - mptcp: fix possible stall on recvmsg() (Davide Caratti) [2020198] - mptcp: don't clear MPTCP_DATA_READY in sk_wait_event() (Davide Caratti) [2020198] - net: introduce and use lock_sock_fast_nested() (Davide Caratti) [2020198] - net: add annotation for sock_{lock,unlock}_fast (Davide Caratti) [2020198] - mptcp: allow changing the 'backup' bit when no sockets are open (Davide Caratti) [2020198] - mptcp: don't return sockets in foreign netns (Davide Caratti) [2020198] - mptcp: ensure tx skbs always have the MPTCP ext (Davide Caratti) [2020198] - mptcp: full fully established support after ADD_ADDR (Davide Caratti) [2020198] - redhat/configs: Move Hyper-V configs to 'generic' (Vitaly Kuznetsov) [1949614] - redhat/configs: enable CONFIG_INPUT_KEYBOARD on Aarch64 (Vitaly Kuznetsov) [1949614] - efi/libstub/random: Align allocate size to EFI_ALLOC_ALIGN (Vitaly Kuznetsov) [1949614] - efi/libstub: arm64: Double check image alignment at entry (Vitaly Kuznetsov) [1949614] - efi/arm64: Update debug prints to reflect other entropy sources (Vitaly Kuznetsov) [1949614] - efi/arm64: libstub: Deal gracefully with EFI_RNG_PROTOCOL failure (Vitaly Kuznetsov) [1949614] - Drivers: hv: Enable Hyper-V code to be built on ARM64 (Vitaly Kuznetsov) [1949614] - x86/Kconfig: Add new X86_HV_CALLBACK_VECTOR config symbol (Vitaly Kuznetsov) [1949614] - arm64: efi: Export screen_info (Vitaly Kuznetsov) [1949614] - arm64: hyperv: Initialize hypervisor on boot (Vitaly Kuznetsov) [1949614] - arm64: hyperv: Add panic handler (Vitaly Kuznetsov) [1949614] - arm64: hyperv: Add Hyper-V hypercall and register access utilities (Vitaly Kuznetsov) [1949614] - arm64: add arch/arm64/Kbuild (Vitaly Kuznetsov) [1949614] - PCI: hv: Turn on the host bridge probing on ARM64 (Vitaly Kuznetsov) [1949614] - PCI: hv: Set up MSI domain at bridge probing time (Vitaly Kuznetsov) [1949614] - PCI: hv: Set ->domain_nr of pci_host_bridge at probing time (Vitaly Kuznetsov) [1949614] - PCI: hv: Generify PCI probing (Vitaly Kuznetsov) [1949614] - arm64: PCI: Support root bridge preparation for Hyper-V (Vitaly Kuznetsov) [1949614] - arm64: PCI: Restructure pcibios_root_bridge_prepare() (Vitaly Kuznetsov) [1949614] - PCI: Support populating MSI domains of root buses via bridges (Vitaly Kuznetsov) [1949614] - PCI: Introduce domain_nr in pci_host_bridge (Vitaly Kuznetsov) [1949614] - drivers: hv: Decouple Hyper-V clock/timer code from VMbus drivers (Vitaly Kuznetsov) [1949614] - Drivers: hv: Move Hyper-V misc functionality to arch-neutral code (Vitaly Kuznetsov) [1949614] - x86/hyperv: handling hypercall page setup for root (Vitaly Kuznetsov) [1949614] - Drivers: hv: Add arch independent default functions for some Hyper-V handlers (Vitaly Kuznetsov) [1949614] - Drivers: hv: Make portions of Hyper-V init code be arch neutral (Vitaly Kuznetsov) [1949614] - asm-generic/hyperv: Add missing #include of nmi.h (Vitaly Kuznetsov) [1949614] - PCI: hv: Support for create interrupt v3 (Vitaly Kuznetsov) [1949614] - Drivers: hv: Move Hyper-V extended capability check to arch neutral code (Vitaly Kuznetsov) [1949614] - clocksource/drivers/hyper-v: Re-enable VDSO_CLOCKMODE_HVCLOCK on X86 (Vitaly Kuznetsov) [1949614] - clocksource/drivers/hyper-v: Handle vDSO differences inline (Vitaly Kuznetsov) [1949614] - arm64: smccc: Add support for SMCCCv1.2 extended input/output registers (Vitaly Kuznetsov) [1949614] - smccc: Define vendor hyp owned service call region (Vitaly Kuznetsov) [1949614] - scsi: smartpqi: Update version to 2.1.12-055 (Don Brace) [2018317] - scsi: smartpqi: Add 3252-8i PCI id (Don Brace) [2018317] - scsi: smartpqi: Fix duplicate device nodes for tape changers (Don Brace) [2018317] - scsi: smartpqi: Fix boot failure during LUN rebuild (Don Brace) [2018317] - scsi: smartpqi: Add extended report physical LUNs (Don Brace) [2018317] - scsi: smartpqi: Avoid failing I/Os for offline devices (Don Brace) [2018317] - scsi: smartpqi: Add TEST UNIT READY check for SANITIZE operation (Don Brace) [2018317] - scsi: smartpqi: Update LUN reset handler (Don Brace) [2018317] - scsi: smartpqi: Capture controller reason codes (Don Brace) [2018317] - scsi: smartpqi: Add controller handshake during kdump (Don Brace) [2018317] - scsi: smartpqi: Update device removal management (Don Brace) [2018317] - KVM: PPC: Tick accounting should defer vtime accounting 'til after IRQ handling (Laurent Vivier) [2009312] - vhost_net: fix OoB on sendmsg() failure. (Paolo Abeni) [1922828] - scsi: qla2xxx: Update version to 10.02.06.200-k (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Fix returnvar.cocci warnings (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NVMe session down detection (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NVMe retry (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix hang on NVMe command timeouts (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NVMe | FCP personality change (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Do secure PLOGI when auth app is present (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add N2N support for EDIF (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix hang during NVMe session tear down (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Fix EDIF enable flag (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Reject AUTH ELS on session down (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Fix stale session (Nilesh Javali) [1983874] - scsi: qla2xxx: Update version to 10.02.06.100-k (Nilesh Javali) [1983874] - scsi: qla2xxx: Sync queue idx with queue_pair_map idx (Nilesh Javali) [1983874] - scsi: qla2xxx: Changes to support kdump kernel for NVMe BFS (Nilesh Javali) [1983874] - scsi: qla2xxx: Changes to support kdump kernel (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NPIV create erroneous error (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix unsafe removal from linked list (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix port type info (Nilesh Javali) [1983874] - scsi: qla2xxx: Add debug print of 64G link speed (Nilesh Javali) [1983874] - scsi: qla2xxx: Show OS name and version in FDMI-1 (Nilesh Javali) [1983874] - scsi: qla2xxx: Changes to support FCP2 Target (Nilesh Javali) [1983874] - scsi: qla2xxx: Adjust request/response queue size for 28xx (Nilesh Javali) [1983874] - scsi: qla2xxx: Add host attribute to trigger MPI hang (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove redundant initialization of variable num_cnt (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix use after free in debug code (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix spelling mistakes "allloc" -> "alloc" (Nilesh Javali) [1983874] - scsi: qla2xxx: Update version to 10.02.00.107-k (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Increment command and completion counts (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add encryption to I/O path (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add doorbell notification for app (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add detection of secure device (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add authentication pass + fail bsgs (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add key update (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add extraction of auth_els from the wire (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add send, receive, and accept for auth_els (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add getfcinfo and statistic bsgs (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add start + stop bsgs (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove unused variable 'status' (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove redundant continue statement in a for-loop (Nilesh Javali) [1983874] - scsi: qla2xxx: Add heartbeat check (Nilesh Javali) [1983874] - scsi: qla2xxx: Use list_move_tail() instead of list_del()/list_add_tail() (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove duplicate declarations (Nilesh Javali) [1983874] - scsi: qla2xxx: Log PCI address in qla_nvme_unregister_remote_port() (Nilesh Javali) [1983874] - scsi: target: qla2xxx: Wait for stop_phase1 at WWN removal (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove redundant assignment to rval (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix error return code in qla82xx_write_flash_dword() (Nilesh Javali) [1983874] - scsi: qla2xxx: Prevent PRLI in target mode (Nilesh Javali) [1983874] - scsi: qla2xxx: Reuse existing error handling path (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove unneeded if-null-free check (Nilesh Javali) [1983874] - thermal/drivers/int340x: Do not set a wrong tcc offset on resume (David Arcari) [1997757] - thermal: core: Add new event for sending keep alive notifications (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Fix tcc setting (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Fix warning for return value (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Add PCI MMIO based thermal driver (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Split enumeration and processing part (David Arcari) [1997757] - thermal/drivers/int340x: processor_thermal: Export additional attributes (David Arcari) [1997757] - thermal/drivers/int340x: processor_thermal: Export mailbox interface (David Arcari) [1997757] - thermal/drivers/intel: Initialize RW trip to THERMAL_TEMP_INVALID (David Arcari) [1997757] - thermal: int340x: Fix unexpected shutdown at critical temperature (David Arcari) [1997757] - thermal: int340x: Support Alder Lake (David Arcari) [1997757] - thermal: int340x: processor_thermal: Correct workload type name (David Arcari) [1997757] - thermal: int340x: processor_thermal: Add mailbox driver (David Arcari) [1997757] - thermal: int340x: processor_thermal: Add RFIM driver (David Arcari) [1997757] - thermal: int340x: processor_thermal: Add AlderLake PCI device id (David Arcari) [1997757] - thermal: int340x: processor_thermal: Refactor MMIO interface (David Arcari) [1997757] - thermal: int340x: Add keep alive response method (David Arcari) [1997757] - thermal: int340x: Provide notification for OEM variable change (David Arcari) [1997757] - treewide: Add SPDX license identifier - Makefile/Kconfig (David Arcari) [1997757] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (David Arcari) [1997757] - intel_idle: Adjust the SKX C6 parameters if PC6 is disabled (David Arcari) [2003731] - intel_idle: update ICX C6 data (David Arcari) [2003731] - nbd: provide a way for userspace processes to identify device backends (Ming Lei) [1997338] - Revert "block, bfq: honor already-setup queue merges" (Ming Lei) [1997338] - blk-cgroup: fix UAF by grabbing blkcg lock before destroying blkg pd (Ming Lei) [1997338] - blkcg: fix memory leak in blk_iolatency_init (Ming Lei) [1997338] - blk-mq: avoid to iterate over stale request (Ming Lei) [1997338] - blk-mq: allow 4x BLK_MAX_REQUEST_COUNT at blk_plug for multiple_queues (Ming Lei) [1997338] - block, bfq: honor already-setup queue merges (Ming Lei) [1997338] - block/mq-deadline: Move dd_queued() to fix defined but not used warning (Ming Lei) [1997338] - cryptoloop: add a deprecation warning (Ming Lei) [1997338] - Revert "block/mq-deadline: Prioritize high-priority requests" (Ming Lei) [1997338] - mq-deadline: Fix request accounting (Ming Lei) [1997338] - nbd: Aovid double completion of a request (Ming Lei) [1997338] - blk-mq: clear active_queues before clearing BLK_MQ_F_TAG_QUEUE_SHARED (Ming Lei) [1997338] - Revert "block/mq-deadline: Add cgroup support" (Ming Lei) [1997338] - kyber: make trace_block_rq call consistent with documentation (Ming Lei) [1997338] - blk-iolatency: error out if blk_get_queue() failed in iolatency_set_limit() (Ming Lei) [1997338] - blk-mq-sched: Fix blk_mq_sched_alloc_tags() error handling (Ming Lei) [1997338] - loop: reintroduce global lock for safe loop_validate_file() traversal (Ming Lei) [1997338] - blk-cgroup: prevent rcu_sched detected stalls warnings while iterating blkgs (Ming Lei) [1997338] - block: fix the problem of io_ticks becoming smaller (Ming Lei) [1997338] - block: return errors from blk_execute_rq() (Ming Lei) [1997338] - block: support polling through blk_execute_rq (Ming Lei) [1997338] - loop: rewrite loop_exit using idr_for_each_entry (Ming Lei) [1997338] - loop: split loop_lookup (Ming Lei) [1997338] - loop: don't allow deleting an unspecified loop device (Ming Lei) [1997338] - loop: move loop_ctl_mutex locking into loop_add (Ming Lei) [1997338] - loop: split loop_control_ioctl (Ming Lei) [1997338] - loop: don't call loop_lookup before adding a loop device (Ming Lei) [1997338] - loop: remove the l argument to loop_add (Ming Lei) [1997338] - loop: reduce loop_ctl_mutex coverage in loop_exit (Ming Lei) [1997338] - loop: reorder loop_exit (Ming Lei) [1997338] - loop: Fix missing discard support when using LOOP_CONFIGURE (Ming Lei) [1997338] - block: export blk_next_bio() (Ming Lei) [1997338] - rsxx: Use struct_size() in vmalloc() (Ming Lei) [1997338] - block/mq-deadline: Remove a WARN_ON_ONCE() call (Ming Lei) [1997338] - blk: Fix lock inversion between ioc lock and bfqd lock (Ming Lei) [1997338] - bfq: Remove merged request already in bfq_requests_merged() (Ming Lei) [1997338] - block: fix trace completion for chained bio (Ming Lei) [1997338] - block/partitions/msdos: Fix typo inidicator -> indicator (Ming Lei) [1997338] - block, bfq: reset waker pointer with shared queues (Ming Lei) [1997338] - block, bfq: check waker only for queues with no in-flight I/O (Ming Lei) [1997338] - block, bfq: avoid delayed merge of async queues (Ming Lei) [1997338] - block, bfq: boost throughput by extending queue-merging times (Ming Lei) [1997338] - block, bfq: consider also creation time in delayed stable merge (Ming Lei) [1997338] - block, bfq: fix delayed stable merge check (Ming Lei) [1997338] - block, bfq: let also stably merged queues enjoy weight raising (Ming Lei) [1997338] - blk-wbt: make sure throttle is enabled properly (Ming Lei) [1997338] - blk-wbt: introduce a new disable state to prevent false positive by rwb_enabled() (Ming Lei) [1997338] - block/mq-deadline: Prioritize high-priority requests (Ming Lei) [1997338] - block/mq-deadline: Add cgroup support (Ming Lei) [1997338] - block/mq-deadline: Track I/O statistics (Ming Lei) [1997338] - block/mq-deadline: Add I/O priority support (Ming Lei) [1997338] - block/mq-deadline: Micro-optimize the batching algorithm (Ming Lei) [1997338] - block/mq-deadline: Reserve 25 of scheduler tags for synchronous requests (Ming Lei) [1997338] - block/mq-deadline: Improve the sysfs show and store macros (Ming Lei) [1997338] - block/mq-deadline: Improve compile-time argument checking (Ming Lei) [1997338] - block: mq-deadline: Fix queue restart handling (Ming Lei) [1997338] - block/mq-deadline: Rename dd_init_queue() and dd_exit_queue() (Ming Lei) [1997338] - block/mq-deadline: Remove two local variables (Ming Lei) [1997338] - block/mq-deadline: Add two lockdep_assert_held() statements (Ming Lei) [1997338] - block/mq-deadline: Add several comments (Ming Lei) [1997338] - block: Introduce the ioprio rq-qos policy (Ming Lei) [1997338] - block/blk-rq-qos: Move a function from a header file into a C file (Ming Lei) [1997338] - block/blk-cgroup: Swap the blk_throtl_init() and blk_iolatency_init() calls (Ming Lei) [1997338] - blkcg: fix memleak for iolatency (Ming Lei) [1997338] - blk-wbt: remove outdated comment (Ming Lei) [1997338] - block: Remove unnecessary elevator operation checks (Ming Lei) [1997338] - blk-mq: factor out a blk_mq_alloc_sq_tag_set helper (Ming Lei) [1997338] - block: Update blk_update_request() documentation (Ming Lei) [1997338] - blkcg: drop CLONE_IO check in blkcg_can_attach() (Ming Lei) [1997338] - aoe: remove unnecessary mutex_init() (Ming Lei) [1997338] - block: loop: fix deadlock between open and remove (Ming Lei) [1997338] - loop: scale loop device by introducing per device lock (Ming Lei) [1997338] - block/partitions/efi.c: Fix the efi_partition() kernel-doc header (Ming Lei) [1997338] - nbd: share nbd_put and return by goto put_nbd (Ming Lei) [1997338] - nbd: Fix NULL pointer in flush_workqueue (Ming Lei) [1997338] - blkdev.h: remove unused codes blk_account_rq (Ming Lei) [1997338] - block, bfq: avoid circular stable merges (Ming Lei) [1997338] - block: uapi: fix comment about block device ioctl (Ming Lei) [1997338] - block: reexpand iov_iter after read/write (Ming Lei) [1997338] - bfq/mq-deadline: remove redundant check for passthrough request (Ming Lei) [1997338] - blk-mq: bypass IO scheduler's limit_depth for passthrough request (Ming Lei) [1997338] - block: Fix sys_ioprio_set(.which=IOPRIO_WHO_PGRP) task iteration (Ming Lei) [1997338] - blk-mq: Always use blk_mq_is_sbitmap_shared (Ming Lei) [1997338] - block: add sysfs entry for virt boundary mask (Ming Lei) [1997338] - block, bfq: merge bursts of newly-created queues (Ming Lei) [1997338] - block, bfq: keep shared queues out of the waker mechanism (Ming Lei) [1997338] - block, bfq: fix weight-raising resume with !low_latency (Ming Lei) [1997338] - block, bfq: make shared queues inherit wakers (Ming Lei) [1997338] - block, bfq: put reqs of waker and woken in dispatch list (Ming Lei) [1997338] - block, bfq: always inject I/O of queues blocked by wakers (Ming Lei) [1997338] - blk-mq: Sentence reconstruct for better readability (Ming Lei) [1997338] - block: update a few comments in uapi/linux/blkpg.h (Ming Lei) [1997338] - block: don't ignore REQ_NOWAIT for direct IO (Ming Lei) [1997338] - block: clear GD_NEED_PART_SCAN later in bdev_disk_changed (Ming Lei) [1997338] - block: Discard page cache of zone reset target range (Ming Lei) [1997338] - block: Suppress uevent for hidden device when removed (Ming Lei) [1997338] - block: rsxx: fix error return code of rsxx_pci_probe() (Ming Lei) [1997338] - block: Fix REQ_OP_ZONE_RESET_ALL handling (Ming Lei) [1997338] - blk-cgroup: Fix the recursive blkg rwstat (Ming Lei) [1997338] - rsxx: Return -EFAULT if copy_to_user() fails (Ming Lei) [1997338] - block/bfq: update comments and default value in docs for fifo_expire (Ming Lei) [1997338] - block: Drop leftover references to RQF_SORTED (Ming Lei) [1997338] - blktrace: fix documentation for blk_fill_rw() (Ming Lei) [1997338] - blktrace: remove debugfs file dentries from struct blk_trace (Ming Lei) [1997338] - block: get rid of the trace rq insert wrapper (Ming Lei) [1997338] - blktrace: fix blk_rq_merge documentation (Ming Lei) [1997338] - blktrace: fix blk_rq_issue documentation (Ming Lei) [1997338] - blktrace: add blk_fill_rwbs documentation comment (Ming Lei) [1997338] - block: remove superfluous param in blk_fill_rwbs() (Ming Lei) [1997338] - block: Remove unused blk_pm_*() function definitions (Ming Lei) [1997338] - blk-mq: Use llist_head for blk_cpu_done (Ming Lei) [1997338] - blk-mq: Always complete remote completions requests in softirq (Ming Lei) [1997338] - block: use bi_max_vecs to find the bvec pool (Ming Lei) [1997338] - md/raid10: remove dead code in reshape_request (Ming Lei) [1997338] - block: remove the 1 and 4 vec bvec_slabs entries (Ming Lei) [1997338] - block: streamline bvec_alloc (Ming Lei) [1997338] - block: factor out a bvec_alloc_gfp helper (Ming Lei) [1997338] - block: move struct biovec_slab to bio.c (Ming Lei) [1997338] - block: reuse BIO_INLINE_VECS for integrity bvecs (Ming Lei) [1997338] - block: move three bvec helpers declaration into private helper (Ming Lei) [1997338] - blk-cgroup: Remove obsolete macro (Ming Lei) [1997338] - block: use an on-stack bio in blkdev_issue_flush (Ming Lei) [1997338] - blkcg: delete redundant get/put operations for queue (Ming Lei) [1997338] - block: unexport truncate_bdev_range (Ming Lei) [1997338] - blk: wbt: remove unused parameter from wbt_should_throttle (Ming Lei) [1997338] - bdev: Do not return EBUSY if bdev discard races with write (Ming Lei) [1997338] - bfq: don't duplicate code for different paths (Ming Lei) [1997338] - block: remove the request_queue to argument request based tracepoints (Ming Lei) [1997338] - virtio_net: disable cb aggressively (Stefan Hajnoczi) [1965914] - virtio: fix up virtio_disable_cb (Stefan Hajnoczi) [1965914] - virtio_net: move txq wakeups under tx q lock (Stefan Hajnoczi) [1965914] - virtio_net: move tx vq operation under tx queue lock (Stefan Hajnoczi) [1965914] - virtio_net: bulk free tx skbs (Stefan Hajnoczi) [1965914] - [s390] s390/qdio: propagate error when cancelling a ccw fails (Mete Durlu) [1984989] - [s390] s390/qdio: improve roll-back after error on ESTABLISH ccw (Mete Durlu) [1984989] - [s390] s390/qdio: cancel the ESTABLISH ccw after timeout (Mete Durlu) [1984989] - [s390] scsi: zfcp: Lift Request Queue tasklet & timer from qdio (Mete Durlu) [1984989] - [s390] scsi: zfcp: Move the position of put_device() (Mete Durlu) [1984989] - [s390] scsi: zfcp: Clean up sysfs code for SFP diagnostics (Mete Durlu) [1984989] - [s390] scsi: zfcp: Fix sysfs roll-back on error in zfcp_adapter_enqueue() (Mete Durlu) [1984989] - [s390] scsi: zfcp: Fix indentation coding style issue (Mete Durlu) [1984989] - [s390] scsi: zfcp: Remove unneeded INIT_LIST_HEAD() for FSF requests (Mete Durlu) [1984989] - x86/fpu/xstate: Clear xstate header in copy_xstate_to_uabi_buf() again (Prarit Bhargava) [1981448] - x86/fpu/signal: Let xrstor handle the features to init (Prarit Bhargava) [1981448] - x86/fpu/signal: Handle #PF in the direct restore path (Prarit Bhargava) [1981448] - x86/fpu: Return proper error codes from user access functions (Prarit Bhargava) [1981448] - x86/fpu/signal: Split out the direct restore code (Prarit Bhargava) [1981448] - x86/fpu/signal: Sanitize copy_user_to_fpregs_zeroing() (Prarit Bhargava) [1981448] - x86/fpu/signal: Sanitize the xstate check on sigframe (Prarit Bhargava) [1981448] - x86/fpu/signal: Remove the legacy alignment check (Prarit Bhargava) [1981448] - x86/fpu/signal: Move initial checks into fpu__restore_sig() (Prarit Bhargava) [1981448] - x86/fpu: Mark init_fpstate __ro_after_init (Prarit Bhargava) [1981448] - x86/pkru: Remove xstate fiddling from write_pkru() (Prarit Bhargava) [1981448] - x86/fpu: Don't store PKRU in xstate in fpu_reset_fpstate() (Prarit Bhargava) [1981448] - x86/fpu: Remove PKRU handling from switch_fpu_finish() (Prarit Bhargava) [1981448] - x86/fpu: Mask PKRU from kernel XRSTOR[S] operations (Prarit Bhargava) [1981448] - x86/fpu: Hook up PKRU into ptrace() (Prarit Bhargava) [1981448] - x86/fpu: Add PKRU storage outside of task XSAVE buffer (Prarit Bhargava) [1981448] - x86/fpu: Dont restore PKRU in fpregs_restore_userspace() (Prarit Bhargava) [1981448] - x86/fpu: Rename xfeatures_mask_user() to xfeatures_mask_uabi() (Prarit Bhargava) [1981448] - x86/fpu: Move FXSAVE_LEAK quirk info __copy_kernel_to_fpregs() (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_kernel_to_fpregs() to restore_fpregs_from_fpstate() (Prarit Bhargava) [1981448] - x86/fpu: Rename __fpregs_load_activate() to fpregs_restore_userregs() (Prarit Bhargava) [1981448] - x86/fpu: Clean up the fpu__clear() variants (Prarit Bhargava) [1981448] - x86/fpu: Rename fpu__clear_all() to fpu_flush_thread() (Prarit Bhargava) [1981448] - x86/fpu: Use pkru_write_default() in copy_init_fpstate_to_fpregs() (Prarit Bhargava) [1981448] - x86/cpu: Write the default PKRU value when enabling PKE (Prarit Bhargava) [1981448] - x86/pkru: Provide pkru_write_default() (Prarit Bhargava) [1981448] - x86/pkru: Provide pkru_get_init_value() (Prarit Bhargava) [1981448] - x86/cpu: Sanitize X86_FEATURE_OSPKE (Prarit Bhargava) [1981448] - x86/pkeys: Move read_pkru() and write_pkru() (Prarit Bhargava) [1981448] - x86/fpu: Rename and sanitize fpu__save/copy() (Prarit Bhargava) [1981448] - x86/fpu/xstate: Sanitize handling of independent features (Prarit Bhargava) [1981448] - x86/fpu: Rename "dynamic" XSTATEs to "independent" (Prarit Bhargava) [1981448] - x86/fpu: Rename initstate copy functions (Prarit Bhargava) [1981448] - x86/fpu: Get rid of the FNSAVE optimization (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_fpregs_to_fpstate() to save_fpregs_to_fpstate() (Prarit Bhargava) [1981448] - x86/fpu: Deduplicate copy_uabi_from_user/kernel_to_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Rename xstate copy functions which are related to UABI (Prarit Bhargava) [1981448] - x86/fpu: Rename fregs-related copy functions (Prarit Bhargava) [1981448] - x86/math-emu: Rename frstor() (Prarit Bhargava) [1981448] - x86/fpu: Rename fxregs-related copy functions (Prarit Bhargava) [1981448] - x86/fpu: Get rid of CONFIG_AS_FXSAVEQ (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_user_to_xregs() and copy_xregs_to_user() (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_xregs_to_kernel() and copy_kernel_to_xregs() (Prarit Bhargava) [1981448] - x86/fpu: Get rid of copy_supervisor_to_kernel() (Prarit Bhargava) [1981448] - x86/fpu: Cleanup arch_set_user_pkey_access() (Prarit Bhargava) [1981448] - x86/kvm: Avoid looking up PKRU in XSAVE buffer (Prarit Bhargava) [1981448] - x86/fpu: Get rid of using_compacted_format() (Prarit Bhargava) [1981448] - x86/fpu: Move fpu__write_begin() to regset (Prarit Bhargava) [1981448] - x86/fpu/regset: Move fpu__read_begin() into regset (Prarit Bhargava) [1981448] - x86/fpu: Remove fpstate_sanitize_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Use copy_xstate_to_uabi_buf() in fpregs_get() (Prarit Bhargava) [1981448] - x86/fpu: Use copy_xstate_to_uabi_buf() in xfpregs_get() (Prarit Bhargava) [1981448] - x86/fpu: Make copy_xstate_to_kernel() usable for [x]fpregs_get() (Prarit Bhargava) [1981448] - x86/fpu: Clean up fpregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Fail ptrace() requests that try to set invalid MXCSR values (Prarit Bhargava) [1981448] - x86/fpu: Rewrite xfpregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Simplify PTRACE_GETREGS code (Prarit Bhargava) [1981448] - x86/fpu: Reject invalid MXCSR values in copy_kernel_to_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Sanitize xstateregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Move inlines where they belong (Prarit Bhargava) [1981448] - x86/fpu: Get rid of fpu__get_supported_xfeatures_mask() (Prarit Bhargava) [1981448] - x86/fpu: Make xfeatures_mask_all __ro_after_init (Prarit Bhargava) [1981448] - x86/fpu: Mark various FPU state variables __ro_after_init (Prarit Bhargava) [1981448] - x86/pkeys: Revert a5eff7259790 ("x86/pkeys: Add PKRU value to init_fpstate") (Prarit Bhargava) [1981448] - x86/fpu: Fix copy_xstate_to_kernel() gap handling (Prarit Bhargava) [1981448] - x86/fpu: Limit xstate copy size in xstateregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Make init_fpstate correct with optimized XSAVE (Prarit Bhargava) [1981448] - x86/fpu: Preserve supervisor states in sanitize_restored_user_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Reset state for all signal restore failures (Prarit Bhargava) [1981448] - x86/signal: Introduce helpers to get the maximum signal frame size (Prarit Bhargava) [1981448] - x86/fpu: Fix various typos in comments (Prarit Bhargava) [1981448] - x86/fpu/xstate: Use sizeof() instead of a constant (Prarit Bhargava) [1981448] - x86/fpu: Handle FPU-related and clearcpuid command line arguments earlier (Prarit Bhargava) [1981448] - x86/fpu: Allow multiple bits in clearcpuid= parameter (Prarit Bhargava) [1981448] - x86: switch to ->regset_get() (Prarit Bhargava) [1981448] - regset: new method and helpers for it (Prarit Bhargava) [1981448] - copy_regset_to_user(): do all copyout at once. (Prarit Bhargava) [1981448] - introduction of regset ->get() wrappers, switching ELF coredumps to those (Prarit Bhargava) [1981448] - user_regset_copyout_zero(): use clear_user() (Prarit Bhargava) [1981448] - x86: kill dump_fpu() (Prarit Bhargava) [1981448] - x86: copy_fpstate_to_sigframe(): have fpregs_soft_get() use kernel buffer (Prarit Bhargava) [1981448] - x86/pkeys: Add check for pkey "overflow" (Prarit Bhargava) [1981448] - x86/fpu: Deactivate FPU state after failure during state load (Prarit Bhargava) [1981448] - x86/fpu: Use sizeof_field() macro (Prarit Bhargava) [1981448] - x86/fpu: Inline fpu__xstate_clear_all_cpu_caps() (Prarit Bhargava) [1981448] - x86/fpu: Make 'no387' and 'nofxsr' command line options useful (Prarit Bhargava) [1981448] - x86/fpu: Remove the fpu__save() export (Prarit Bhargava) [1981448] - x86/process: Add AVX-512 usage elapsed time to /proc/pid/arch_status (Prarit Bhargava) [1981448] - x86/fpu: Add SPDX license identifier - Makefile/Kconfig (Prarit Bhargava) [1981448] - x86/fpu: Add SPDX license identifier for missed files (Prarit Bhargava) [1981448] - x86/fpu: Fix __user annotations (Prarit Bhargava) [1981448] - x86/fpu: Move init_xstate_size() to __init section (Prarit Bhargava) [1981448] - x86/fpu: Update comment for __raw_xsave_addr() (Prarit Bhargava) [1981448] - scsi: qla2xxx: Fix kernel crash when accessing port_speed sysfs file (Nilesh Javali) [1981433] - scsi: core: Put LLD module refcnt after SCSI device is released (Ming Lei) [1996509] - scsi: iscsi: Fix set_param() handling (Chris Leech) [2011470] - scsi: iscsi: Fix iscsi_task use after free (Chris Leech) [2011470] - scsi: iscsi: Adjust iface sysfs attr detection (Chris Leech) [2011470] - scsi: iscsi: Fix iface sysfs attr detection (Chris Leech) [2011470] - scsi: iscsi: Move pool freeing (Chris Leech) [2011470] - scsi: iscsi: Hold task ref during TMF timeout handling (Chris Leech) [2011470] - scsi: iscsi: Flush block work before unblock (Chris Leech) [2011470] - scsi: iscsi: Fix completion check during abort races (Chris Leech) [2011470] - scsi: iscsi: Fix shost->max_id use (Chris Leech) [2011470] - scsi: iscsi: Fix conn use after free during resets (Chris Leech) [2011470] - scsi: iscsi: Get ref to conn during reset handling (Chris Leech) [2011470] - scsi: iscsi: Have abort handler get ref to conn (Chris Leech) [2011470] - scsi: iscsi: Add iscsi_cls_conn refcount helpers (Chris Leech) [2011470] - scsi: iscsi: iscsi_tcp: Start socket shutdown during conn stop (Chris Leech) [2011470] - scsi: iscsi: iscsi_tcp: Set no linger (Chris Leech) [2011470] - scsi: iscsi: Fix in-kernel conn failure handling (Chris Leech) [2011470] - scsi: iscsi: Rel ref after iscsi_lookup_endpoint() (Chris Leech) [2011470] - scsi: iscsi: Use system_unbound_wq for destroy_work (Chris Leech) [2011470] - scsi: iscsi: Force immediate failure during shutdown (Chris Leech) [2011470] - scsi: iscsi: Drop suspend calls from ep_disconnect (Chris Leech) [2011470] - scsi: iscsi: Stop queueing during ep_disconnect (Chris Leech) [2011470] - scsi: iscsi: Add task completion helper (Chris Leech) [2011470] - scsi: iscsi: Fix iSCSI cls conn state (Chris Leech) [2011470] - scsi: iscsi: Fix race condition between login and sync thread (Chris Leech) [2011470] - scsi: iscsi: Drop session lock in iscsi_session_chkready() (Chris Leech) [2011470] - scsi: libiscsi: Reset max/exp cmdsn during recovery (Chris Leech) [2011470] - scsi: iscsi_tcp: Fix shost can_queue initialization (Chris Leech) [2011470] - scsi: libiscsi: Add helper to calculate max SCSI cmds per session (Chris Leech) [2011470] - scsi: libiscsi: Fix iSCSI host workq destruction (Chris Leech) [2011470] - scsi: libiscsi: Fix iscsi_task use after free() (Chris Leech) [2011470] - scsi: libiscsi: Drop taskqueuelock (Chris Leech) [2011470] - scsi: libiscsi: Fix iscsi_prep_scsi_cmd_pdu() error handling (Chris Leech) [2011470] - scsi: iscsi: Fix inappropriate use of put_device() (Chris Leech) [2011470] - scsi: iscsi: Fail session and connection on transport registration failure (Chris Leech) [2011470] - scsi: drivers: base: Propagate errors through the transport component (Chris Leech) [2011470] - scsi: drivers: base: Support atomic version of attribute_container_device_trigger (Chris Leech) [2011470] - scsi: libiscsi: Fix NOP race condition (Chris Leech) [2011470] - scsi: libiscsi: use sendpage_ok() in iscsi_tcp_segment_map() (Chris Leech) [2011470] - scsi: iscsi: iscsi_tcp: Avoid holding spinlock while calling getpeername() (Chris Leech) [2011470] - scsi: iscsi: Do not put host in iscsi_set_flashnode_param() (Chris Leech) [2011470] - scsi: iscsi: Register sysfs for workqueue iscsi_destroy (Chris Leech) [2011470] - scsi: iscsi: Remove sessdestroylist (Chris Leech) [2011470] - scsi: iscsi: Optimize work queue flush use (Chris Leech) [2011470] - scsi: iscsi: Delay freeing target_id (Chris Leech) [2011470] - scsi: iscsi: Change iSCSI workqueue max_active back to 1 (Chris Leech) [2011470] - scsi: iscsi: Fix reference count leak in iscsi_boot_create_kobj (Chris Leech) [2011470]- scsi: qedf: Fix error codes in qedf_alloc_global_queues() (Nilesh Javali) [1983908] - scsi: qedf: Add check to synchronize abort and flush (Nilesh Javali) [1983908] - scsi: qedf: Use DEVICE_ATTR_RO() macro (Nilesh Javali) [1983908] - scsi: qedf: Use vzalloc() instead of vmalloc()/memset(0) (Nilesh Javali) [1983908] - scsi: qedf: Drop unnecessary NULL checks after container_of() (Nilesh Javali) [1983908] - scsi: qedf: Use devlink to report errors and recovery (Nilesh Javali) [1983908] - scsi: qedf: Enable devlink support (Nilesh Javali) [1983908] - scsi: qedf: Remove unused include of linux/version.h (Nilesh Javali) [1983908] - qed: implement devlink dump (Nilesh Javali) [1983908] - qed*: make use of devlink recovery infrastructure (Nilesh Javali) [1983908] - qed: use devlink logic to report errors (Nilesh Javali) [1983908] - qed: health reporter init deinit seq (Nilesh Javali) [1983908] - qed: implement devlink info request (Nilesh Javali) [1983908] - qed/qede: make devlink survive recovery (Nilesh Javali) [1983908] - qed: move out devlink logic into a new file (Nilesh Javali) [1983908] - i40e: fix endless loop under rtnl (Stefan Assmann) [1903921] - ovl: fix missing negative dentry check in ovl_rename() (Miklos Szeredi) [2010887] {CVE-2021-20321} - [RHEL8.6 BZ 1849234] cifs: report error instead of invalid when revalidating a dentry fails (Ronnie Sahlberg) [1849234] - mei: me: emmitsburg workstation DID (David Arcari) [2014195] - redhat/configs: Add CONFIG_INTEL_QEP (Prarit Bhargava) [1783559] - redhat/configs: Add CONFIG_COUNTER (Prarit Bhargava) [1783559] - counter: Rename counter_count_function to counter_function (Prarit Bhargava) [1783559] - counter: Rename counter_signal_value to counter_signal_level (Prarit Bhargava) [1783559] - counter: Standardize to ERANGE for limit exceeded errors (Prarit Bhargava) [1783559] - counter: intel-qep: Remove linux/bitops.h include (Prarit Bhargava) [1783559] - counter: intel-qep: Use to_pci_dev() helper (Prarit Bhargava) [1783559] - counter: intel-qep: Mark PM callbacks with __maybe_unused (Prarit Bhargava) [1783559] - counter: Add support for Intel Quadrature Encoder Peripheral (Prarit Bhargava) [1783559] - counter: Simplify the count_read and count_write callbacks (Prarit Bhargava) [1783559] - drivers/counter: Add SPDX license identifier - Makefile/Kconfig (Prarit Bhargava) [1783559] - counter: Introduce the Generic Counter interface (Prarit Bhargava) [1783559] - bpf: Fix integer overflow in prealloc_elems_and_freelist() (Yauheni Kaliuta) [2010492] {CVE-2021-41864} - audit: move put_tree() to avoid trim_trees refcount underflow and UAF (Richard Guy Briggs) [1978123] - tpm: ibmvtpm: Avoid error message when process gets signal while waiting (Štěpán Horáček) [1981473] - efi/tpm: Differentiate missing and invalid final event log table. (Štěpán Horáček) [1981473] - tpm: Replace WARN_ONCE() with dev_err_once() in tpm_tis_status() (Štěpán Horáček) [1981473] - tpm_tis: Use DEFINE_RES_MEM() to simplify code (Štěpán Horáček) [1981473] - tpm: fix some doc warnings in tpm1-cmd.c (Štěpán Horáček) [1981473] - tpm_tis_spi: add missing SPI device ID entries (Štěpán Horáček) [1981473] - tpm: add longer timeout for TPM2_CC_VERIFY_SIGNATURE (Štěpán Horáček) [1981473] - tpm_tis_spi: set default probe function if device id not match (Štěpán Horáček) [1981473] - tpm_crb: Use IOMEM_ERR_PTR when function returns iomem (Štěpán Horáček) [1981473] - tools/testing/scatterlist: Fix overflow of max segment size (Rafael Aquini) [2016426] - drm: Remove SCATTERLIST_MAX_SEGMENT (Rafael Aquini) [2016426] - lib/scatterlist: Fix wrong update of orig_nents (Rafael Aquini) [2016426] - lib/scatterlist: Provide a dedicated function to support table append (Rafael Aquini) [2016426] - tools/testing/scatterlist: Test dynamic __sg_alloc_table_from_pages (Rafael Aquini) [2016426] - tools/testing/scatterlist: Fix test to compile and run (Rafael Aquini) [2016426] - tools/testing/scatterlist: Show errors in human readable form (Rafael Aquini) [2016426] - tools/testing/scatterlist: Rejuvenate bit-rotten test (Rafael Aquini) [2016426] - Kconfig.debug: drop selecting non-existing HARDLOCKUP_DETECTOR_ARCH (Rafael Aquini) [2016426] - buildid: only consider GNU notes for build ID parsing (Rafael Aquini) [2016426] - lib/decompressors: remove set but not used variabled 'level' (Rafael Aquini) [2016426] - lib/math/rational.c: fix divide by zero (Rafael Aquini) [2016426] - lockdep/selftests: Fix selftests vs PROVE_RAW_LOCK_NESTING (Rafael Aquini) [2016426] - kunit: Fix result propagation for parameterised tests (Rafael Aquini) [2016426] - bug: Remove redundant condition check in report_bug (Rafael Aquini) [2016426] - zlib: move EXPORT_SYMBOL() and MODULE_LICENSE() out of dfltcc_syms.c (Rafael Aquini) [2016426] - zlib: export S390 symbols for zlib modules (Rafael Aquini) [2016426] - lib/crc32test: remove extra local_irq_disable/enable (Rafael Aquini) [2016426] - random32: add a selftest for the prandom32 code (Rafael Aquini) [2016426] - random32: add noise from network and scheduling activity (Rafael Aquini) [2016426] - random32: make prandom_u32() output unpredictable (Rafael Aquini) [2016426] - lib: Correct comment of prandom_seed (Rafael Aquini) [2016426] - lib/crc32.c: fix trivial typo in preprocessor condition (Rafael Aquini) [2016426] - lib/crc: Use consistent naming for CRC-32 polynomials (Rafael Aquini) [2016426] - lib/crc: Move polynomial definition to separate header (Rafael Aquini) [2016426] - kstrto*: do not describe simple_strto*() as obsolete/replaced (Rafael Aquini) [2016426] - kstrto*: correct documentation references to simple_strto*() (Rafael Aquini) [2016426] - kernel.h: update comment about simple_strto() functions (Rafael Aquini) [2016426] - lib/bitmap.c: fix bitmap_cut() for partial overlapping case (Rafael Aquini) [2016426] - devres: keep both device name and resource name in pretty name (Rafael Aquini) [2016426] - crc-t10dif: Fix potential crypto notify dead-lock (Rafael Aquini) [2016426] - vsprintf: don't obfuscate NULL and error pointers (Rafael Aquini) [2016426] - lib/stackdepot.c: fix global out-of-bounds in stack_slabs (Rafael Aquini) [2016426] - lib/scatterlist.c: adjust indentation in __sg_alloc_table (Rafael Aquini) [2016426] - lib/stackdepot: Fix outdated comments (Rafael Aquini) [2016426] - lib/test_kasan.c: fix memory leak in kmalloc_oob_krealloc_more() (Rafael Aquini) [2016426] - lib: Remove select of inexistant GENERIC_IO (Rafael Aquini) [2016426] - lib: test_user_copy: style cleanup (Rafael Aquini) [2016426] - usercopy: Add parentheses around assignment in test_copy_struct_from_user (Rafael Aquini) [2016426] - lib: textsearch: fix escapes in example code (Rafael Aquini) [2016426] - Partially revert "kfifo: fix kfifo_alloc() and kfifo_init()" (Rafael Aquini) [2016426] - lib: logic_pio: Fix RCU usage (Rafael Aquini) [2016426] - lib/test_overflow.c: avoid tainting the kernel and fix wrap size (Rafael Aquini) [2016426] - lib/test_string.c: avoid masking memset16/32/64 failures (Rafael Aquini) [2016426] - lib/scatterlist: Fix mapping iterator when sg->offset is greater than PAGE_SIZE (Rafael Aquini) [2016426] - lib/mpi: Fix karactx leak in mpi_powm (Rafael Aquini) [2016426] - sbitmap: fix improper use of smp_mb__before_atomic() (Rafael Aquini) [2016426] - kobject: Don't trigger kobject_uevent(KOBJ_REMOVE) twice. (Rafael Aquini) [2016426] - lib/div64.c: off by one in shift (Rafael Aquini) [2016426] - assoc_array: Fix shortcut creation (Rafael Aquini) [2016426] - lib/test_kmod.c: potential double free in error handling (Rafael Aquini) [2016426] - devres: always use dev_name() in devm_ioremap_resource() (Rafael Aquini) [2016426] - lib: fix build failure in CONFIG_DEBUG_VIRTUAL test (Rafael Aquini) [2016426] - test_firmware: fix error return getting clobbered (Rafael Aquini) [2016426] - lib: Fix ia64 bootloader linkage (Rafael Aquini) [2016426] - lib/test_hexdump.c: fix failure on big endian cpu (Rafael Aquini) [2016426] - hv_utils: Set the maximum packet size for VSS driver to the length of the receive buffer (Cathy Avery) [2012842] - scsi: storvsc: Log TEST_UNIT_READY errors as warnings (Cathy Avery) [2012842] - scsi: storvsc: Correctly handle multiple flags in srb_status (Cathy Avery) [2012842] - scsi: storvsc: Update error logging (Cathy Avery) [2012842] - scsi: storvsc: Miscellaneous code cleanups (Cathy Avery) [2012842] - scsi: storvsc: Use blk_mq_unique_tag() to generate requestIDs (Cathy Avery) [2012842] - Drivers: hv: vmbus: Copy packets sent by Hyper-V out of the ring buffer (Cathy Avery) [2012842] - scsi: core: Fix hang of freezing queue between blocking and running device (Ewan D. Milne) [2012323] - scsi: core: Fix capacity set to zero after offlinining device (Ewan D. Milne) [2012323] - scsi: sr: Return correct event when media event code is 3 (Ewan D. Milne) [2012323] - scsi: core: Avoid printing an error if target_alloc() returns -ENXIO (Ewan D. Milne) [2012323] - scsi: scsi_dh_rdac: Avoid crash during rdac_bus_attach() (Ewan D. Milne) [2012323] - scsi: core: Fix bad pointer dereference when ehandler kthread is invalid (Ewan D. Milne) [2012323] - scsi: core: Fix the documentation of the scsi_execute() time parameter (Ewan D. Milne) [2012323] - scsi: core: Retry I/O for Notify (Enable Spinup) Required error (Ewan D. Milne) [2012323] - scsi: sd: Call sd_revalidate_disk() for ioctl(BLKRRPART) (Ewan D. Milne) [2012323] - scsi: core: Inline scsi_mq_alloc_queue() (Ewan D. Milne) [2012323] - scsi: sr: Return appropriate error code when disk is ejected (Ewan D. Milne) [2012323] - scsi: core: Only put parent device if host state differs from SHOST_CREATED (Ewan D. Milne) [2012323] - scsi: core: Put .shost_dev in failure path if host state changes to RUNNING (Ewan D. Milne) [2012323] - scsi: core: Fix failure handling of scsi_add_host_with_dma() (Ewan D. Milne) [2012323] - scsi: core: Fix error handling of scsi_host_alloc() (Ewan D. Milne) [2012323] - scsi: st: Return error code in st_scsi_execute() (Ewan D. Milne) [2012323] - scsi: scsi_dh_alua: Retry RTPG on a different path after failure (Ewan D. Milne) [2012323] - scsi: scsi_transport_fc: Remove double FC_FPORT_DELETED in mask creation (Ewan D. Milne) [2012323] - scsi: core: Fix a comment in function scsi_host_dev_release() (Ewan D. Milne) [2012323] - scsi: scsi_debug: Drop if with an always false condition (Ewan D. Milne) [2012323] - scsi: scsi_debug: Fix cmd_per_lun, set to max_queue (Ewan D. Milne) [2012323] - scsi: sd: Introduce a new local variable in sd_check_events() (Ewan D. Milne) [2012323] - scsi: core: Modify the scsi_send_eh_cmnd() return value for the SDEV_BLOCK case (Ewan D. Milne) [2012323] - scsi: core: Rename scsi_softirq_done() into scsi_complete() (Ewan D. Milne) [2012323] - scsi: core: Remove an incorrect comment (Ewan D. Milne) [2012323] - scsi: core: Make the scsi_alloc_sgtables() documentation more accurate (Ewan D. Milne) [2012323] - scsi: scsi_dh_alua: Prevent duplicate pg info print in alua_rtpg() (Ewan D. Milne) [2012323] - scsi: core: scsi_host_cmd_pool is declared twice (Ewan D. Milne) [2012323] - scsi: core: Remove duplicate declarations (Ewan D. Milne) [2012323] - scsi: core: Fix comment typo (Ewan D. Milne) [2012323] - scsi: scsi_dh: Fix a typo (Ewan D. Milne) [2012323] - scsi: sd: Fix function name in header (Ewan D. Milne) [2012323] - scsi: sd_zbc: Place function name into header (Ewan D. Milne) [2012323] - scsi: sd_zbc: Update write pointer offset cache (Ewan D. Milne) [2012323] - scsi: st: Fix a use after free in st_open() (Ewan D. Milne) [2012323] - scsi: scsi_debug: Fix cmd duration calculation (Ewan D. Milne) [2012323] - scsi: core: Set shost as hctx driver_data (Ewan D. Milne) [2012323] - scsi: scsi_debug: Add new defer type for mq_poll (Ewan D. Milne) [2012323] - scsi: scsi_debug: mq_poll support (Ewan D. Milne) [2012323] - scsi: core: Add mq_poll support to SCSI layer (Ewan D. Milne) [2012323] - scsi: sd: Remove obsolete variable in sd_remove() (Ewan D. Milne) [2012323] - scsi: handle zone resources errors (Ewan D. Milne) [2012323] - scsi: scsi_debug: Fix scp is NULL errors (Ewan D. Milne) [2012323] - scsi: scsi_debug: Improve command duration calculation (Ewan D. Milne) [2012323] - x86/platform: Increase maximum GPIO number for X86_64 (David Arcari) [2016796] - pinctrl: pinconf-generic: Add function parameter description 'pctldev' (David Arcari) [2016796] - pinctrl: core: Remove duplicated word from devm_pinctrl_unregister() (David Arcari) [2016796] - pinctrl: tigerlake: Fix GPIO mapping for newer version of software (David Arcari) [2016796] - pinctrl: tigerlake: Add Alder Lake-M ACPI ID (David Arcari) [2016796] - docs: update pin-control.rst references (David Arcari) [2016796] - pinctrl: Keep enum pin_config_param ordered by name (part 2) (David Arcari) [2016796] - pinctrl: core: Show pin numbers for the controllers with base = 0 (David Arcari) [2016796] - pinctrl: Add PIN_CONFIG_MODE_PWM to enum pin_config_param (David Arcari) [2016796] - pinctrl: Introduce MODE group in enum pin_config_param (David Arcari) [2016796] - pinctrl: Keep enum pin_config_param ordered by name (David Arcari) [2016796] - pinctrl: core: Fix kernel doc string for pin_get_name() (David Arcari) [2016796] - pinctrl: intel: check REVID register value for device presence (David Arcari) [2016796] - pinctrl: intel: No need to disable IRQs in the handler (David Arcari) [2016796] - pinctrl: core: Set ret to 0 when group is skipped (David Arcari) [2016796] - pinctrl: core: Handling pinmux and pinconf separately (David Arcari) [2016796] - Documentation: rename pinctl to pin-control (David Arcari) [2016796] - pinctrl: pinmux: Add pinmux-select debugfs file (David Arcari) [2016796] - pinctrl: use to octal permissions for debugfs files (David Arcari) [2016796] - pinctrl: intel: Show the GPIO base calculation explicitly (David Arcari) [2016796] - pinctrl: pinmux: add function selector to pinmux-functions (David Arcari) [2016796] - pinctrl: intel: Convert capability list to features (David Arcari) [2016796] - pinctrl: intel: Drop unnecessary check for predefined features (David Arcari) [2016796] - pinctrl: intel: Split intel_pinctrl_add_padgroups() for better maintenance (David Arcari) [2016796] - pinctrl: remove empty lines in pinctrl subsystem (David Arcari) [2016796] - pinctrl: intel: Actually disable Tx and Rx buffers on GPIO request (David Arcari) [2016796] - pinctrl: Remove hole in pinctrl_gpio_range (David Arcari) [2016796] - pinctrl: core: Add missing #ifdef CONFIG_GPIOLIB (David Arcari) [2016796] - pinctrl: intel: Set default bias in case no particular value given (David Arcari) [2016796] - pinctrl: intel: Fix 2 kOhm bias which is 833 Ohm (David Arcari) [2016796] - pinctrl: core: print gpio in pins debugfs file (David Arcari) [2016796] - pinctrl: pinmux: Add some missing parameter descriptions (David Arcari) [2016796] - pinctrl: core: Fix a bunch of kerneldoc issues (David Arcari) [2016796] - pinctrl: Define of_pinctrl_get() dummy for !PINCTRL (David Arcari) [2016796] - pinctrl: core: Remove extra kref_get which blocks hogs being freed (David Arcari) [2016796] - pinctrl: Export some needed symbols at module load time (David Arcari) [2016796] - pinctrl: core: Add pinctrl_select_default_state() and export it (David Arcari) [2016796] - pinctrl: make pinconf.h self-contained (David Arcari) [2016796] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (David Arcari) [2016796] - pinctrl: remove pinctrl/machine.h inclusion from pinctrl/pinconf.h (David Arcari) [2016796] - pinctrl: Document pin_config_group_get() return codes like pin_config_get() (David Arcari) [2016796] - pinctrl: intel: Convert to use SPDX identifier (David Arcari) [2016796] - mm/swapfile: fix an integer overflow in swap_show() (Rafael Aquini) [2008812] - mm: swapfile: fix /proc/swaps heading and Size/Used/Priority alignment (Rafael Aquini) [2008812] - Makefile: update early devel phase flag (Augusto Caringi) [2000679] - KVM: s390: Enable specification exception interpretation (Thomas Huth) [1984894] - KVM: x86: Update vCPU's hv_clock before back to guest when tsc_offset is adjusted (Marcelo Tosatti) [2007928] - ibmvnic: Remove the proper scrq flush (Desnes A. Nunes do Rosario) [2014097] - selftests/net/ipsec: Add test for xfrm_spdattr_type_t (Hangbin Liu) [2018056] - selftest/net/ipsec.c: Remove unneeded semicolon (Hangbin Liu) [2018056] - selftest/net/xfrm: Add test for ipsec tunnel (Hangbin Liu) [2018056] - ipv6: add ip6_sock_set_v6only (Josef Oskera) [2008908] - ipv6: When forwarding count rx stats on the orig netdev (Hangbin Liu) [2017704] - ipv6: make exception cache less predictible (Hangbin Liu) [2017704] - ipv6: use siphash in rt6_exception_hash() (Hangbin Liu) [2017704] - ipv6: use jhash2() in rt6_exception_hash() (Hangbin Liu) [2017704] - net/l2tp: Fix reference count leak in l2tp_udp_recv_core (Guillaume Nault) [2020380] - netfilter: nft_flow_offload: fix underflow in flowtable reference counter (Phil Sutter) [2008551] - net: xfrm: Fix end of loop tests for list_for_each_entry (Sabrina Dubroca) [2019168] - xfrm: Fix error reporting in xfrm_state_construct. (Sabrina Dubroca) [2019168]- nvme-mpath: replace direct_make_request with generic_make_request (Gopal Tiwari) [2013505] - net-sysfs: try not to restart the syscall if it will fail eventually (Antoine Tenart) [2016005] - net: mana: Fix error handling in mana_create_rxq() (Mohammed Gamal) [2011886] - net: mana: Prefer struct_size over open coded arithmetic (Mohammed Gamal) [2011886] - net: mana: Add WARN_ON_ONCE in case of CQE read overflow (Mohammed Gamal) [2011886] - net: mana: Add support for EQ sharing (Mohammed Gamal) [2011886] - net: mana: Move NAPI from EQ to CQ (Mohammed Gamal) [2011886] - net: mana: Fix a memory leak in an error handling path in 'mana_create_txq()' (Mohammed Gamal) [2011886] - net: mana: Use struct_size() in kzalloc() (Mohammed Gamal) [2011886] - vmxnet3: switch from 'pci_' to 'dma_' API (Kamal Heib) [2013202] - vmxnet3: update to version 6 (Kamal Heib) [2013202] - vmxnet3: increase maximum configurable mtu to 9190 (Kamal Heib) [2013202] - vmxnet3: set correct hash type based on rss information (Kamal Heib) [2013202] - vmxnet3: add support for ESP IPv6 RSS (Kamal Heib) [2013202] - vmxnet3: remove power of 2 limitation on the queues (Kamal Heib) [2013202] - vmxnet3: add support for 32 Tx/Rx queues (Kamal Heib) [2013202] - vmxnet3: prepare for version 6 changes (Kamal Heib) [2013202] - vmxnet3: fix cksum offload issues for tunnels with non-default udp ports (Kamal Heib) [2013202] - treewide: Use fallthrough pseudo-keyword (Kamal Heib) [2013202] - net: Use skb_frag_off accessors (Kamal Heib) [2013202] - net: Use skb accessors in network drivers (Kamal Heib) [2013202] - vmxnet3: Remove call to memset after dma_alloc_coherent (Kamal Heib) [2013202] - cgroup/debug: Fix lockdep splat with "pK" format specifier (Waiman Long) [2007919] - configs: Enable FC_APPID (Ewan D. Milne) [1643346] - configs: Enable BLK_CGROUP_FC_APPID (Ewan D. Milne) [1643346] - scsi: nvme: Added a new sysfs attribute appid_store (Ewan D. Milne) [1643346] - scsi: blkcg: Add app identifier support for blkcg (Ewan D. Milne) [1643346] - scsi: cgroup: Add cgroup_get_from_id() (Ewan D. Milne) [1643346] - perf iostat: Fix Segmentation fault from NULL 'struct perf_counts_values *' (Michael Petlan) [2003981] - perf iostat: Use system-wide mode if the target cpu_list is unspecified (Michael Petlan) [2003981] - perf beauty: Update copy of linux/socket.h with the kernel sources (Michael Petlan) [2003981] - perf test: Fix non-bash issue with stat bpf counters (Michael Petlan) [2003981] - perf machine: Fix refcount usage when processing PERF_RECORD_KSYMBOL (Michael Petlan) [2003981] - perf metricgroup: Return error code from metricgroup__add_metric_sys_event_iter() (Michael Petlan) [2003981] - perf metricgroup: Fix find_evsel_group() event selector (Michael Petlan) [2003981] - perf session: Correct buffer copying when peeking events (Michael Petlan) [2003981] - perf env: Fix memory leak of bpf_prog_info_linear member (Michael Petlan) [2003981] - perf symbol-elf: Fix memory leak by freeing sdt_note.args (Michael Petlan) [2003981] - perf stat: Honor event config name on --no-merge (Michael Petlan) [2003981] - perf test: Test 17 fails with make LIBPFM4=1 on s390 z/VM (Michael Petlan) [2003981] - perf stat: Fix error return code in bperf__load() (Michael Petlan) [2003981] - perf record: Move probing cgroup sampling support (Michael Petlan) [2003981] - perf probe: Fix NULL pointer dereference in convert_variable_location() (Michael Petlan) [2003981] - perf tools: Copy uapi/asm/perf_regs.h from the kernel for MIPS (Michael Petlan) [2003981] - perf stat: Fix error check for bpf_program__attach (Michael Petlan) [2003981] - perf jevents: Fix getting maximum number of fds (Michael Petlan) [2003981] - perf stat: Skip evlist__[enable|disable] when all events uses BPF (Michael Petlan) [2003981] - perf script: Add missing PERF_IP_FLAG_CHARS for VM-Entry and VM-Exit (Michael Petlan) [2003981] - perf scripts python: exported-sql-viewer.py: Fix warning display (Michael Petlan) [2003981] - perf scripts python: exported-sql-viewer.py: Fix Array TypeError (Michael Petlan) [2003981] - perf scripts python: exported-sql-viewer.py: Fix copy to clipboard from Top Calls by elapsed Time report (Michael Petlan) [2003981] - perf parse-events: Check if the software events array slots are populated (Michael Petlan) [2003981] - perf tools: Add 'cgroup-switches' software event (Michael Petlan) [2003981] - perf intel-pt: Remove redundant setting of ptq->insn_len (Michael Petlan) [2003981] - perf intel-pt: Fix sample instruction bytes (Michael Petlan) [2003981] - perf intel-pt: Fix transaction abort handling (Michael Petlan) [2003981] - perf test: Fix libpfm4 support (63) test error for nested event groups (Michael Petlan) [2003981] - perf buildid-list: Initialize zstd_data (Michael Petlan) [2003981] - tools build: Fix quiet cmd indentation (Michael Petlan) [2003981] - perf tools: Fix a build error on arm64 with clang (Michael Petlan) [2003981] - perf tools: Fix dynamic libbpf link (Michael Petlan) [2003981] - perf session: Fix swapping of cpu_map and stat_config records (Michael Petlan) [2003981] - perf jevents: Silence warning for ArchStd files (Michael Petlan) [2003981] - perf build: Defer printing detected features to the end of all feature checks (Michael Petlan) [2003981] - tools build: Allow deferring printing the results of feature detection (Michael Petlan) [2003981] - perf build: Regenerate the FEATURE_DUMP file after extra feature checks (Michael Petlan) [2003981] - perf session: Dump PERF_RECORD_TIME_CONV event (Michael Petlan) [2003981] - perf session: Add swap operation for event TIME_CONV (Michael Petlan) [2003981] - perf jit: Let convert_timestamp() to be backwards-compatible (Michael Petlan) [2003981] - perf tools: Change fields type in perf_record_time_conv (Michael Petlan) [2003981] - perf tools: Enable libtraceevent dynamic linking (Michael Petlan) [2003981] - perf report: Print percentage of each event statistics (Michael Petlan) [2003981] - perf report: Make --skip-empty as default (Michael Petlan) [2003981] - perf report: Add --skip-empty option to suppress 0 event stat (Michael Petlan) [2003981] - perf report: Show event sample counts in --stat output (Michael Petlan) [2003981] - perf hists: Split hists_stats from events_stats (Michael Petlan) [2003981] - perf top: Use evlist->events_stat to count events (Michael Petlan) [2003981] - perf data: Add JSON export (Michael Petlan) [2003981] - perf stat: Introduce bpf_counter_ops->disable() (Michael Petlan) [2003981] - perf stat: Introduce ':b' modifier (Michael Petlan) [2003981] - perf stat: Introduce config stat.bpf-counter-events (Michael Petlan) [2003981] - perf bpf: check perf_attr_map is compatible with the perf binary (Michael Petlan) [2003981] - perf util: Move bpf_perf definitions to a libperf header (Michael Petlan) [2003981] - perf tools: Update topdown documentation to permit rdpmc calls (Michael Petlan) [2003981] - perf tools: Add a build-test variant to use in builds from a tarball (Michael Petlan) [2003981] - perf arm64: Fix off-by-one directory paths. (Michael Petlan) [2003981] - perf: Update .gitignore file (Michael Petlan) [2003981] - perf stat: Enable iostat mode for x86 platforms (Michael Petlan) [2003981] - perf stat: Helper functions for PCIe root ports list in iostat mode (Michael Petlan) [2003981] - perf stat: Basic support for iostat in perf (Michael Petlan) [2003981] - libperf xyarray: Add bounds checks to xyarray__entry() (Michael Petlan) [2003981] - libperf: Add support for user space counter access (Michael Petlan) [2003981] - libperf tests: Add support for verbose printing (Michael Petlan) [2003981] - libperf: Add evsel mmap support (Michael Petlan) [2003981] - tools include: Add an initial math64.h (Michael Petlan) [2003981] - perf beauty: Fix fsconfig generator (Michael Petlan) [2003981] - perf record: Improve 'Workload failed' message printing events + what was exec'ed (Michael Petlan) [2003981] - perf evlist: Add a method to return the list of evsels as a string (Michael Petlan) [2003981] - perf annotate: Fix sample events lost in stdio mode (Michael Petlan) [2003981] - perf vendor events amd: Add Zen3 events (Michael Petlan) [2003981] - perf vendor events amd: Use 0x02x format for event code and umask (Michael Petlan) [2003981] - perf vendor events amd: Use lowercases for all the eventcodes and umasks (Michael Petlan) [2003981] - perf vendor events amd: Fix broken L2 Cache Hits from L2 HWPF metric (Michael Petlan) [2003981] - perf vendor events arm64: Add Hisi hip08 L3 metrics (Michael Petlan) [2003981] - perf vendor events arm64: Add Hisi hip08 L2 metrics (Michael Petlan) [2003981] - perf vendor events arm64: Add Hisi hip08 L1 metrics (Michael Petlan) [2003981] - perf pmu: Add pmu_events_map__find() function to find the common PMU map for the system (Michael Petlan) [2003981] - perf test: Handle metric reuse in pmu-events parsing test (Michael Petlan) [2003981] - perf metricgroup: Make find_metric() public with name change (Michael Petlan) [2003981] - perf mem-events: Remove unnecessary 'struct mem_info' forward declaration (Michael Petlan) [2003981] - perf evsel: Remove duplicate 'struct target' forward declaration (Michael Petlan) [2003981] - perf annotate: Add --demangle and --demangle-kernel (Michael Petlan) [2003981] - perf tools: Preserve identifier id in OCaml demangler (Michael Petlan) [2003981] - perf daemon: Remove duplicate includes (Michael Petlan) [2003981] - perf tools: Remove duplicate struct forward declarations (Michael Petlan) [2003981] - perf test: Add CSV summary test (Michael Petlan) [2003981] - perf stat: Align CSV output for summary mode (Michael Petlan) [2003981] - perf test: Add a shell test for 'perf stat --bpf-counters' new option (Michael Petlan) [2003981] - perf stat: Measure 't0' and 'ref_time' after enable_counters() (Michael Petlan) [2003981] - perf stat: Introduce 'bperf' to share hardware PMCs with BPF (Michael Petlan) [2003981] - perf tools: Fix various typos in comments (Michael Petlan) [2003981] - perf test: Add 30s timeout for wait for daemon start. (Michael Petlan) [2003981] - perf test: Cleanup daemon if test is interrupted. (Michael Petlan) [2003981] - perf test: Remove unused argument (Michael Petlan) [2003981] - perf stat: Improve readability of shadow stats (Michael Petlan) [2003981] - perf stat: Elaborate use cases for the -n/--null command line option (Michael Petlan) [2003981] - perf evlist: Change the COMM when preparing the workload (Michael Petlan) [2003981] - perf machine: Assign boolean values to a bool variable (Michael Petlan) [2003981] - perf tools: use ARRAY_SIZE (Michael Petlan) [2003981] - perf stat: Fixup __perf_stat_evsel__is() prefix (Michael Petlan) [2003981] - perf script: Fixup 'struct evsel_script' method prefix (Michael Petlan) [2003981] - perf symbols: Fix dso__fprintf_symbols_by_name() to return the number of printed chars (Michael Petlan) [2003981] - tools include: Add __sum16 and __wsum definitions. (Michael Petlan) [2003981] - perf annotate: Show full source location with 'l' hotkey (Michael Petlan) [2003981] - perf bench: Fix misspellings using codespell (Michael Petlan) [2003981] - perf config: Add annotate.demangle{,_kernel} (Michael Petlan) [2003981] - perf bpf: Minor whitespace cleanup. (Michael Petlan) [2003981] - perf tools: Enable warnings when compiling BPF programs (Michael Petlan) [2003981] - perf skel: Remove some unused variables. (Michael Petlan) [2003981] - perf report: Create option to disable raw event ordering (Michael Petlan) [2003981] - perf metric: Remove unneeded semicolon (Michael Petlan) [2003981] - perf cs-etm: Detect pid in VMID for kernel running at EL2 (Michael Petlan) [2003981] - perf cs-etm: Add helper cs_etm__get_pid_fmt() (Michael Petlan) [2003981] - perf cs-etm: Support PID tracing in config (Michael Petlan) [2003981] - perf cs-etm: Fix bitmap for option (Michael Petlan) [2003981] - perf cs-etm: Update ETM metadata format (Michael Petlan) [2003981] - perf vendor events power9: Remove unsupported metrics (Michael Petlan) [2003981] - perf buildid-cache: Add test for PE executable (Michael Petlan) [2003981] - perf docs: Add man pages to see also (Michael Petlan) [2003981] - perf tools: Generate mips syscalls_n64.c syscall table (Michael Petlan) [2003981] - perf s390: Move syscall.tbl check into check-headers.sh (Michael Petlan) [2003981] - perf tools: Support MIPS unwinding and dwarf-regs (Michael Petlan) [2003981] - tools: do not include scripts/Kbuild.include (Michael Petlan) [2003981] - tools: Allow proper CC/CXX/... override with LLVM=1 in Makefile.include (Michael Petlan) [2003981] - perf intel-pt: Use aux_watermark (Michael Petlan) [2003981] - perf/x86/intel/uncore: Fix M2M event umask for Ice Lake server (Michael Petlan) [2003981] - perf/x86/intel/uncore: Fix a kernel WARNING triggered by maxcpus=1 (Michael Petlan) [2003981] - perf: Fix data race between pin_count increment/decrement (Michael Petlan) [2003981] - perf/x86: Avoid touching LBR_TOS MSR for Arch LBR (Michael Petlan) [2003981] - perf/x86: Allow for 8running into P4 specific code (Michael Petlan) [2003981] - perf: Add support for event removal on exec (Michael Petlan) [2003981] - perf: Support only inheriting events if cloned with CLONE_THREAD (Michael Petlan) [2003981] - perf: Apply PERF_EVENT_IOC_MODIFY_ATTRIBUTES to children (Michael Petlan) [2003981] - perf: Rework perf_event_exit_event() (Michael Petlan) [2003981] - perf: Cap allocation order at aux_watermark (Michael Petlan) [2003981] - perf/x86/intel/uncore: Enable IIO stacks to PMON mapping for multi-segment SKX (Michael Petlan) [2003981] - perf core: Allocate perf_event in the target node memory (Michael Petlan) [2003981] - perf core: Add a kmem_cache for struct perf_event (Michael Petlan) [2003981] - perf core: Allocate perf_buffer in the target node memory (Michael Petlan) [2003981] - x86: Remove unusual Unicode characters from comments (Michael Petlan) [2003981] - redhat/configs: Add CONFIG_TIMERLAT_TRACER (Jerome Marchand) [1979382] - redhat/configs: Add CONFIG_OSNOISE_TRACER (Jerome Marchand) [1979382] - tracing/osnoise: Fix missed cpus_read_unlock() in start_per_cpu_kthreads() (Jerome Marchand) [1979382] - tracing: Replace deprecated CPU-hotplug functions. (Jerome Marchand) [1979382] - trace/osnoise: Print a stop tracing message (Jerome Marchand) [1979382] - trace/timerlat: Add a header with PREEMPT_RT additional fields (Jerome Marchand) [1979382] - trace/osnoise: Add a header with PREEMPT_RT additional fields (Jerome Marchand) [1979382] - tracing: Quiet smp_processor_id() use in preemptable warning in hwlat (Jerome Marchand) [1979382] - trace/timerlat: Fix indentation on timerlat_main() (Jerome Marchand) [1979382] - trace/osnoise: Make 'noise' variable s64 in run_osnoise() (Jerome Marchand) [1979382] - tracing: Fix spelling in osnoise tracer "interferences" -> "interference" (Jerome Marchand) [1979382] - Documentation: Fix a typo on trace/osnoise-tracer (Jerome Marchand) [1979382] - trace/osnoise: Fix return value on osnoise_init_hotplug_support (Jerome Marchand) [1979382] - trace/osnoise: Make interval u64 on osnoise_main (Jerome Marchand) [1979382] - trace/osnoise: Fix 'no previous prototype' warnings (Jerome Marchand) [1979382] - tracing: Have osnoise_main() add a quiescent state for task rcu (Jerome Marchand) [1979382] - trace/osnoise: Support hotplug operations (Jerome Marchand) [1979382] - trace/hwlat: Support hotplug operations (Jerome Marchand) [1979382] - trace/hwlat: Protect kdata->kthread with get/put_online_cpus (Jerome Marchand) [1979382] - trace: Add timerlat tracer (Jerome Marchand) [1979382] - trace: Add osnoise tracer (Jerome Marchand) [1979382] - trace: Add __print_ns_to_secs() and __print_ns_without_secs() helpers (Jerome Marchand) [1979382] - trace/hwlat: Remove printk from sampling loop (Jerome Marchand) [1979382] - trace/hwlat: Use trace_min_max_param for width and window params (Jerome Marchand) [1979382] - trace: Add a generic function to read/write u64 values from tracefs (Jerome Marchand) [1979382] - trace/hwlat: Implement the per-cpu mode (Jerome Marchand) [1979382] - trace/hwlat: Switch disable_migrate to mode none (Jerome Marchand) [1979382] - trace/hwlat: Implement the mode config option (Jerome Marchand) [1979382] - uio_hv_generic: Fix another memory leak in error handling paths (Mohammed Gamal) [2008561] - uio_hv_generic: Fix a memory leak in error handling paths (Mohammed Gamal) [2008561] - mfd: intel-lpss: Add Intel Alder Lake-M PCI IDs (David Arcari) [1929498] - xfs: fix up non-directory creation in SGID directories (Brian Foster) [2004810] - xfs: kill ialloced in xfs_dialloc() (Brian Foster) [2004810] - xfs: spilt xfs_dialloc() into 2 functions (Brian Foster) [2004810] - xfs: move xfs_dialloc_roll() into xfs_dialloc() (Brian Foster) [2004810] - xfs: move on-disk inode allocation out of xfs_ialloc() (Brian Foster) [2004810] - xfs: introduce xfs_dialloc_roll() (Brian Foster) [2004810] - xfs: convert noroom, okalloc in xfs_dialloc() to bool (Brian Foster) [2004810] - xfs: check tp->t_dqinfo value instead of the XFS_TRANS_DQ_DIRTY flag (Brian Foster) [2004810] - scsi: vmw_pvscsi: Set correct residual data length (Cathy Avery) [2012237] - scsi: vmw_pvscsi: MAINTAINERS: Update maintainer (Cathy Avery) [2012237] - treewide: Use fallthrough pseudo-keyword (Cathy Avery) [2012237] - scsi: be2iscsi: Fix use-after-free during IP updates (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix some missing space in some messages (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix an error handling path in beiscsi_dev_probe() (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Remove redundant initialization (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Demote incomplete/non-conformant kernel-doc header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Ensure function follows directly after its header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix beiscsi_phys_port()'s name in header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Provide missing function name in header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix incorrect naming of beiscsi_iface_config_vlan() (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Mark beiscsi_attrs with static keyword (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Revert "Fix a theoretical leak in beiscsi_create_eqs()" (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix a theoretical leak in beiscsi_create_eqs() (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Correct misdocumentation of function param 'ep' (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Add missing function parameter description (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix misdocumentation of 'pcontext' (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix API/documentation slip (Maurizio Lombardi) [1984347] - powerpc/spinlock: Properly define pv_spinlocks_init() (Waiman Long) [2014363] - ACPI: Pass the same capabilities to the _OSC regardless of the query flag (Mark Langsdorf) [1982319] - Revert "[acpi] ACPI: sleep: Put the FACS table after using it" (Mark Langsdorf) [1982319] - ACPICA: Clean up context mutex during object deletion (Mark Langsdorf) [1982319] - ACPI: power: Refine turning off unused power resources (Mark Langsdorf) [1982319] - ACPI: NFIT: Fix support for variable 'SPA' structure size (Mark Langsdorf) [1982319] - ACPI: custom_method: fix a possible memory leak (Mark Langsdorf) [1982319] - ACPI: custom_method: fix potential use-after-free issue (Mark Langsdorf) [1982319] - ACPI: irq: Prevent unregistering of GIC SGIs (Mark Langsdorf) [1982319] - ACPI: GTDT: Don't corrupt interrupt mappings on watchdow probe failure (Mark Langsdorf) [1982319] - ACPI: video: use native backlight for GA401/GA502/GA503 (Mark Langsdorf) [1982319] - ACPI: APEI: remove redundant assignment to variable rc (Mark Langsdorf) [1982319] - ACPI: utils: Capitalize abbreviations in the comments (Mark Langsdorf) [1982319] - ACPI: utils: Document for_each_acpi_dev_match() macro (Mark Langsdorf) [1982319] - ACPI: bus: Introduce acpi_dev_get() and reuse it in ACPI code (Mark Langsdorf) [1982319] - ACPI: scan: Utilize match_string() API (Mark Langsdorf) [1982319] - ACPI: CPPC: Replace cppc_attr with kobj_attribute (Mark Langsdorf) [1982319] - ACPI: scan: Call acpi_get_object_info() from acpi_set_pnp_ids() (Mark Langsdorf) [1982319] - ACPI: scan: Drop sta argument from acpi_init_device_object() (Mark Langsdorf) [1982319] - ACPI: scan: Drop sta argument from acpi_add_single_object() (Mark Langsdorf) [1982319] - ACPI: scan: Rearrange checks in acpi_bus_check_add() (Mark Langsdorf) [1982319] - ACPI: scan: Fold acpi_bus_type_and_status() into its caller (Mark Langsdorf) [1982319] - ACPI: video: Check LCD flag on ACPI-reduced-hardware devices (Hans de Goede) [1982319] - ACPI: utils: Add acpi_reduced_hardware() helper (Mark Langsdorf) [1982319] - ACPI: dock: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: sysfs: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: PM: add a missed blank line after declarations (Mark Langsdorf) [1982319] - ACPI: custom_method: fix a coding style issue (Mark Langsdorf) [1982319] - ACPI: CPPC: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: button: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: battery: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: acpi_pad: add a missed blank line after declarations (Mark Langsdorf) [1982319] - ACPI: LPSS: add a missed blank line after declarations (Mark Langsdorf) [1982319] - ACPI: ipmi: remove useless return statement for void function (Mark Langsdorf) [1982319] - ACPI: processor: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: APD: fix a block comment align issue (Mark Langsdorf) [1982319] - ACPI: AC: fix some coding style issues (Mark Langsdorf) [1982319] - ACPICA: Update version to 20210331 (Mark Langsdorf) [1982319] - ACPICA: IORT: Updates for revision E.b (Mark Langsdorf) [1982319] - ACPICA: iASL: Decode subtable type field for VIOT (Mark Langsdorf) [1982319] - ACPICA: iASL: Add support for CEDT table (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add support for PHAT table (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add CSI2Bus resource template (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: PMTT: add new fields/structures (Mark Langsdorf) [1982319] - ACPICA: CXL 2.0: CEDT: Add new CEDT table (Mark Langsdorf) [1982319] - ACPICA: acpisrc: Add missing conversion for VIOT support (Mark Langsdorf) [1982319] - ACPICA: iASL: Add definitions for the VIOT table (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add SDEV secure access components (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: Add new flags in SRAT (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: HMAT: add new fields/flags (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: NFIT: add Location Cookie field (Mark Langsdorf) [1982319] - ACPICA: Tree-wide: fix various typos and spelling mistakes (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: PPTT: add new version of subtable type 1 (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: PCCT: add support for subtable type 5 (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: MADT: add Multiprocessor Wakeup Structure (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add CXL ACPI device ID and _CBR object (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add USB4 capabilities UUID (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: Add new predefined objects _BPC, _BPS, and _BPT (Mark Langsdorf) [1982319] - ACPICA: Add parsing for IVRS IVHD 40h and device entry F0h (Mark Langsdorf) [1982319] - ACPI: CPPC: Add emtpy stubs of functions for CONFIG_ACPI_CPPC_LIB unset (Mark Langsdorf) [1982319] - ACPI: scan: Turn off unused power resources during initialization (Mark Langsdorf) [1982319] - ACPI: power: Turn off unused power resources unconditionally (Mark Langsdorf) [1982319] - ACPI: fix various typos in comments (Mark Langsdorf) [1982319] - ACPI: utils: Introduce acpi_evaluation_failure_warn() (Mark Langsdorf) [1982319] - ACPI: processor: perflib: Eliminate redundant status check (Mark Langsdorf) [1982319] - ACPI: Drop unused ACPI_*_COMPONENT definitions and update documentation (Mark Langsdorf) [1982319] - ACPI: sysfs: Get rid of ACPICA message printing (Mark Langsdorf) [1982319] - ACPI: HED: Drop unused ACPI_MODULE_NAME() definition (Mark Langsdorf) [1982319] - ACPI: processor: Get rid of ACPICA message printing (Mark Langsdorf) [1982319] - ACPI: processor: idle: Drop extra prefix from pr_notice() (Mark Langsdorf) [1982319] - ACPI: processor: Remove initialization of static variable (Mark Langsdorf) [1982319] - ACPI: PCI: Replace direct printk() invocations in pci_link.c (Mark Langsdorf) [1982319] - ACPI: PCI: Drop ACPI_PCI_COMPONENT that is not used any more (Mark Langsdorf) [1982319] - ACPI: PCI: Replace ACPI_DEBUG_PRINT() and ACPI_EXCEPTION() (Mark Langsdorf) [1982319] - ACPI: PCI: IRQ: Consolidate printing diagnostic messages (Mark Langsdorf) [1982319] - arm64: compat: Poison the compat sigpage (C. Erastus Toe) [1983849] {CVE-2021-21781} - ARM: ensure the signal page contains defined contents (C. Erastus Toe) [1983849] {CVE-2021-21781} - powerpc/pseries: Fix update of LPAR security flavor after LPM (Steve Best) [1997294] - s390/qeth: Update MACs of LEARNING_SYNC device (Robin Dapp) [1919227] - s390/qeth: Switchdev event handler (Robin Dapp) [1919227] - s390/qeth: Register switchdev event handler (Robin Dapp) [1919227] - PCI: Add pcie_ptm_enabled() (Petr Oros) [2006834] - Revert "PCI: Make pci_enable_ptm() private" (Petr Oros) [2006834] - x86/cpufeatures: Force disable X86_FEATURE_ENQCMD and remove update_pasid() (Jerry Snitselaar) [2004577] - s390: report more CPU capabilities (Robin Dapp) [1984839] - s390/disassembler: add instructions (Robin Dapp) [1984839] - s390/opcodes: rename selhhhr to selfhr (Robin Dapp) [1984839] - s390/disassembler: update opcode table (Robin Dapp) [1984839] - s390/opcodes: add missing instructions to the disassembler (Robin Dapp) [1984839] - CI: Add template for baseline gcov build (Israel Santana Aleman) - futex: Remove unused variable 'vpid' in futex_proxy_trylock_atomic() (Waiman Long) [2000293] - futex: Prevent inconsistent state and exit race (Waiman Long) [2000293] - locking/ww_mutex: Initialize waiter.ww_ctx properly (Waiman Long) [2000293] - futex: Return error code instead of assigning it without effect (Waiman Long) [2000293] - Documentation: seqlock: s/LOCKTYPE/LOCKNAME/g (Waiman Long) [2000293] - lib/test_lockup.c: fix return value of test_lockup_init() (Waiman Long) [2000293] - locking/rwbase: Take care of ordering guarantee for fastpath reader (Waiman Long) [2000293] - locking/rwbase: Extract __rwbase_write_trylock() (Waiman Long) [2000293] - locking/rwbase: Properly match set_and_save_state() to restore_state() (Waiman Long) [2000293] - locking/rtmutex: Fix ww_mutex deadlock check (Waiman Long) [2000293] - locking/rwsem: Add missing __init_rwsem() for PREEMPT_RT (Waiman Long) [2000293] - locking/rtmutex: Return success on deadlock for ww_mutex waiters (Waiman Long) [2000293] - locking/rtmutex: Prevent spurious EDEADLK return caused by ww_mutexes (Waiman Long) [2000293] - locking/rtmutex: Dequeue waiter on ww_mutex deadlock (Waiman Long) [2000293] - locking/rtmutex: Dont dereference waiter lockless (Waiman Long) [2000293] - locking/local_lock: Add PREEMPT_RT support (Waiman Long) [2000293] - locking/spinlock/rt: Prepare for RT local_lock (Waiman Long) [2000293] - locking/rtmutex: Add adaptive spinwait mechanism (Waiman Long) [2000293] - locking/rtmutex: Implement equal priority lock stealing (Waiman Long) [2000293] - preempt: Adjust PREEMPT_LOCK_OFFSET for RT (Waiman Long) [2000293] - locking/rtmutex: Prevent lockdep false positive with PI futexes (Waiman Long) [2000293] - futex: Prevent requeue_pi() lock nesting issue on RT (Waiman Long) [2000293] - futex: Simplify handle_early_requeue_pi_wakeup() (Waiman Long) [2000293] - futex: Reorder sanity checks in futex_requeue() (Waiman Long) [2000293] - futex: Clarify comment in futex_requeue() (Waiman Long) [2000293] - futex: Restructure futex_requeue() (Waiman Long) [2000293] - futex: Correct the number of requeued waiters for PI (Waiman Long) [2000293] - futex: Remove bogus condition for requeue PI (Waiman Long) [2000293] - futex: Clarify futex_requeue() PI handling (Waiman Long) [2000293] - futex: Clean up stale comments (Waiman Long) [2000293] - futex: Validate waiter correctly in futex_proxy_trylock_atomic() (Waiman Long) [2000293] - lib/test_lockup: Adapt to changed variables (Waiman Long) [2000293] - locking/rtmutex: Add mutex variant for RT (Waiman Long) [2000293] - locking/ww_mutex: Implement rtmutex based ww_mutex API functions (Waiman Long) [2000293] - locking/rtmutex: Extend the rtmutex core to support ww_mutex (Waiman Long) [2000293] - locking/ww_mutex: Add rt_mutex based lock type and accessors (Waiman Long) [2000293] - locking/ww_mutex: Add RT priority to W/W order (Waiman Long) [2000293] - locking/ww_mutex: Implement rt_mutex accessors (Waiman Long) [2000293] - locking/ww_mutex: Abstract out internal lock accesses (Waiman Long) [2000293] - locking/ww_mutex: Abstract out mutex types (Waiman Long) [2000293] - locking/ww_mutex: Abstract out mutex accessors (Waiman Long) [2000293] - locking/ww_mutex: Abstract out waiter enqueueing (Waiman Long) [2000293] - locking/ww_mutex: Abstract out the waiter iteration (Waiman Long) [2000293] - locking/ww_mutex: Remove the __sched annotation from ww_mutex APIs (Waiman Long) [2000293] - locking/ww_mutex: Split out the W/W implementation logic into kernel/locking/ww_mutex.h (Waiman Long) [2000293] - locking/ww_mutex: Split up ww_mutex_unlock() (Waiman Long) [2000293] - locking/ww_mutex: Gather mutex_waiter initialization (Waiman Long) [2000293] - locking/ww_mutex: Simplify lockdep annotations (Waiman Long) [2000293] - locking/mutex: Make mutex::wait_lock raw (Waiman Long) [2000293] - locking/ww_mutex: Move the ww_mutex definitions from into (Waiman Long) [2000293] - locking/mutex: Move the 'struct mutex_waiter' definition from to the internal header (Waiman Long) [2000293] - locking/mutex: Consolidate core headers, remove kernel/locking/mutex-debug.h (Waiman Long) [2000293] - locking/rtmutex: Squash !RT tasks to DEFAULT_PRIO (Waiman Long) [2000293] - locking/rwlock: Provide RT variant (Waiman Long) [2000293] - locking/spinlock: Provide RT variant (Waiman Long) [2000293] - locking/rtmutex: Provide the spin/rwlock core lock function (Waiman Long) [2000293] - locking/spinlock: Provide RT variant header: (Waiman Long) [2000293] - locking/spinlock: Provide RT specific spinlock_t (Waiman Long) [2000293] - locking/rtmutex: Reduce header dependencies, only include (Waiman Long) [2000293] - rbtree: Split out the rbtree type definitions into (Waiman Long) [2000293] - locking/lockdep: Reduce header dependencies in (Waiman Long) [2000293] - locking/rtmutex: Prevent future include recursion hell (Waiman Long) [2000293] - locking/spinlock: Split the lock types header, and move the raw types into (Waiman Long) [2000293] - locking/rtmutex: Guard regular sleeping locks specific functions (Waiman Long) [2000293] - locking/rtmutex: Prepare RT rt_mutex_wake_q for RT locks (Waiman Long) [2000293] - locking/rtmutex: Use rt_mutex_wake_q_head (Waiman Long) [2000293] - locking/rtmutex: Provide rt_wake_q_head and helpers (Waiman Long) [2000293] - locking/rtmutex: Add wake_state to rt_mutex_waiter (Waiman Long) [2000293] - locking/rwsem: Add rtmutex based R/W semaphore implementation (Waiman Long) [2000293] - locking/rt: Add base code for RT rw_semaphore and rwlock (Waiman Long) [2000293] - locking/rtmutex: Provide rt_mutex_base_is_locked() (Waiman Long) [2000293] - locking/rtmutex: Provide rt_mutex_slowlock_locked() (Waiman Long) [2000293] - locking/rtmutex: Split out the inner parts of 'struct rtmutex' (Waiman Long) [2000293] - locking/rtmutex: Split API from implementation (Waiman Long) [2000293] - locking/rtmutex: Convert macros to inlines (Waiman Long) [2000293] - locking/rtmutex: Remove rt_mutex_is_locked() (Waiman Long) [2000293] - sched/wake_q: Provide WAKE_Q_HEAD_INITIALIZER() (Waiman Long) [2000293] - sched/core: Provide a scheduling point for RT locks (Waiman Long) [2000293] - sched/core: Rework the __schedule() preempt argument (Waiman Long) [2000293] - sched/wakeup: Prepare for RT sleeping spin/rwlocks (Waiman Long) [2000293] - sched/wakeup: Reorganize the current::__state helpers (Waiman Long) [2000293] - sched/wakeup: Introduce the TASK_RTLOCK_WAIT state bit (Waiman Long) [2000293] - sched/wakeup: Split out the wakeup ->__state check (Waiman Long) [2000293] - locking/rtmutex: Set proper wait context for lockdep (Waiman Long) [2000293] - locking/local_lock: Add missing owner initialization (Waiman Long) [2000293] - locking/rtmutex: Use the correct rtmutex debugging config option (Waiman Long) [2000293] - tools/runqslower: Use __state instead of state (Waiman Long) [2000293] - locking/rwsem: Remove an unused parameter of rwsem_wake() (Waiman Long) [2000293] - locking/mutex: Add MUTEX_WARN_ON (Waiman Long) [2000293] - locking/mutex: Introduce __mutex_trylock_or_handoff() (Waiman Long) [2000293] - locking/mutex: Fix HANDOFF condition (Waiman Long) [2000293] - locking/mutex: Use try_cmpxchg() (Waiman Long) [2000293] - sched: Change task_struct::state (Waiman Long) [2000293] - isdn/hisax: Use get_current_state() (Waiman Long) [2000293] - sched,timer: Use __set_current_state() (Waiman Long) [2000293] - sched: Add get_current_state() (Waiman Long) [2000293] - sched,perf,kvm: Fix preemption condition (Waiman Long) [2000293] - sched: Introduce task_is_running() (Waiman Long) [2000293] - sched: Unbreak wakeups (Waiman Long) [2000293] - seqlock: Remove trailing semicolon in macros (Waiman Long) [2000293] - locking/mutex: clear MUTEX_FLAGS if wait_list is empty due to signal (Waiman Long) [2000293] - ptrace: make ptrace() fail if the tracee changed its pid unexpectedly (Waiman Long) [2000293] - sched: Rename sched_info_{queued,dequeued} (Waiman Long) [2000293] - locking/rwsem: Fix comment typo (Waiman Long) [2000293] - bpf: runqslower: Use task local storage (Waiman Long) [2000293] - lib/test_lockup.c: minimum fix to get it compiled on PREEMPT_RT (Waiman Long) [2000293] - seqlock: kernel-doc: Specify when preemption is automatically altered (Waiman Long) [2000293] - seqlock: Prefix internal seqcount_t-only macros with a "do_" (Waiman Long) [2000293] - rcu: Check and report missed fqs timer wakeup on RCU stall (Waiman Long) [2000293] - softirq: Move related code into one section (Waiman Long) [2000293] - seqlock: Rename __seqprop() users (Waiman Long) [2000293] - seqlock: avoid -Wshadow warnings (Waiman Long) [2000293] - locking/seqlocks: Fix kernel-doc warnings (Waiman Long) [2000293] - locking/seqlock: Tweak DEFINE_SEQLOCK() kernel doc (Waiman Long) [2000293] - seqlock: Unbreak lockdep (Waiman Long) [2000293] - seqlock: PREEMPT_RT: Do not starve seqlock_t writers (Waiman Long) [2000293] - seqlock: seqcount_LOCKNAME_t: Introduce PREEMPT_RT support (Waiman Long) [2000293] - seqlock: seqcount_t: Implement all read APIs as statement expressions (Waiman Long) [2000293] - seqlock: Use unique prefix for seqcount_t property accessors (Waiman Long) [2000293] - seqlock: seqcount_LOCKNAME_t: Standardize naming convention (Waiman Long) [2000293] - seqlock: seqcount latch APIs: Only allow seqcount_latch_t (Waiman Long) [2000293] - rbtree_latch: Use seqcount_latch_t (Waiman Long) [2000293] - x86/tsc: Use seqcount_latch_t (Waiman Long) [2000293] - timekeeping: Use seqcount_latch_t (Waiman Long) [2000293] - time/sched_clock: Mark sched_clock_read_begin/retry() as notrace (Waiman Long) [2000293] - time/sched_clock: Use raw_read_seqcount_latch() (Waiman Long) [2000293] - time/sched_clock: Use raw_read_seqcount_latch() during suspend (Waiman Long) [2000293] - time/sched_clock: Use seqcount_latch_t (Waiman Long) [2000293] - sched_clock: Expose struct clock_read_data (Waiman Long) [2000293] - timers/sched_clock: Include local timekeeping.h for missing declarations (Waiman Long) [2000293] - sched/clock: Move sched clock initialization and merge with generic clock (Waiman Long) [2000293] - userfaultfd: simplify fault handling (Waiman Long) [2000293] - rwsem: fix commas in initialisation (Waiman Long) [2000293] - lib/test_lockup.c: make test_inode static (Waiman Long) [2000293] - genirq: Provide irq_enter/exit_rcu() (Waiman Long) [2000293] - lib/test_lockup.c: add parameters for locking generic vfs locks (Waiman Long) [2000293] - lib/test_lockup.c: fix spelling mistake "iteraions" -> "iterations" (Waiman Long) [2000293] - lib/test_lockup: test module to generate lockups (Waiman Long) [2000293] - x86/tsc: Move inline keyword to the beginning of function declarations (Waiman Long) [2000293] - softirq: Don't skip softirq execution when softirq thread is parking (Waiman Long) [2000293] - sched/core: Convert task_struct.stack_refcount to refcount_t (Waiman Long) [2000293] - kernel/hung_task.c: break RCU locks based on jiffies (Waiman Long) [2000293] - x86/process: Avoid unnecessary NULL check in get_wchan() (Waiman Long) [2000293] - kernel/rwsem: Remove ifdef __init_rwsem code from rwsem.c (Waiman Long) [2000293] - misc: hpilo: map iLO shared memory by PCI revision id (Joseph Szczypek) [1985076] - misc: hpilo: MAINTAINERS: add entry for hpilo (Joseph Szczypek) [1985076] - misc: hpilo: avoid a useless memset (Joseph Szczypek) [1985076] - misc: hpilo: switch from 'pci_' to 'dma_' API (Joseph Szczypek) [1985076] - hpilo: Replace one-element array with flexible-array member (Joseph Szczypek) [1985076] - perf flamegraph: flamegraph.py script improvements (Michael Petlan) [2010269]- ceph: skip existing superblocks that are blocklisted or shut down when mounting (Jeffrey Layton) [2011462] - cpufreq: intel_pstate: Combine ->stop_cpu() and ->offline() (David Arcari) [2003695] - cpufreq: intel_pstate: Add Cometlake support in no-HWP mode (David Arcari) [2003695] - cpufreq: intel_pstate: Add Icelake servers support in no-HWP mode (David Arcari) [2003695] - i2c: i801: Add support for Intel Alder Lake PCH-M (David Arcari) [1929497] - i2c: i801: Add Block Write-Block Read Process Call support (David Arcari) [1929497] - pinctrl: tigerlake: Add Alder Lake-M ACPI ID (David Arcari) [1929501] - x86/microcode: Check for offline CPUs before requesting new microcode (Puneet Sethi) [1971878] - x86/resctrl: Fix a maybe-uninitialized build warning treated as error (Terry Bowman) [1994090] - x86/resctrl: Fix default monitoring groups reporting (Terry Bowman) [1994090] - PCI: Remove WARN_ON(in_interrupt()) (Myron Stowe) [1993262] - PCI: Apply CONFIG_PCI_DEBUG to entire drivers/pci hierarchy (Myron Stowe) [1993262] - PCI: Add Silicom Denmark vendor ID (Myron Stowe) [1993262] - PCI: Align checking of syscall user config accessors (Myron Stowe) [1993262] - PCI: Decline to resize resources if boot config must be preserved (Myron Stowe) [1993262] - PCI/LINK: Remove bandwidth notification (Myron Stowe) [1993262] - PCI: acpiphp: Remove unused acpiphp_callback typedef (Myron Stowe) [1993262] - PCI: Fix pci_register_io_range() memory leak (Myron Stowe) [1993262] - EDAC/amd64: Add AMD family 17h model 60h PCI IDs (Aristeu Rozanski) [1930489] - EDAC/amd64: Add PCI device IDs for family 17h, model 70h (Aristeu Rozanski) [1930489] - scsi: bnx2fc: Remove meaningless bnx2fc_abts_cleanup() return value assignment (Nilesh Javali) [1983956] - scsi: bnx2fc: Return failure if io_req is already in ABTS processing (Nilesh Javali) [1983956] - scsi: target: ibmvscsi_tgt: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: Fix sense key for invalid EXTENDED COPY request (Maurizio Lombardi) [2004470] - scsi: target: Allows backend drivers to fail with specific sense codes (Maurizio Lombardi) [2004470] - scsi: target: pscsi: Fix possible null-pointer dereference in pscsi_complete_cmd() (Maurizio Lombardi) [2004470] - scsi: target: core: Drop unnecessary se_cmd ASC/ASCQ members (Maurizio Lombardi) [2004470] - scsi: target: sbp: Drop incorrect ASC/ASCQ usage (Maurizio Lombardi) [2004470] - scsi: target: core: Avoid using lun_tg_pt_gp after unlock (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Add new feature KEEP_BUF (Maurizio Lombardi) [2004470] - scsi: target: Remove redundant assignment to variable ret (Maurizio Lombardi) [2004470] - scsi: target: Fix NULL dereference on XCOPY completion (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove redundant continue statement (Maurizio Lombardi) [2004470] - scsi: target: Use standard SAM status types (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Fix boolreturn.cocci warnings (Maurizio Lombardi) [2004470] - scsi: target: core: Add the VERSION DESCRIPTOR fields to the INQUIRY data (Maurizio Lombardi) [2004470] - scsi: target: core: Bump INQUIRY VERSION to SPC-4 (Maurizio Lombardi) [2004470] - scsi: target: core: Add configurable IEEE Company ID attribute (Maurizio Lombardi) [2004470] - scsi: target: core: Unify NAA identifier generation (Maurizio Lombardi) [2004470] - scsi: target: sbp_target: Remove redundant assignment to pg_size (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Rename TCM_DEV_BIT_PLUGGED to TCMU_DEV_BIT_PLUGGED (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Drop unnecessary container_of() (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Switch to kmemdup_nul() (Maurizio Lombardi) [2004470] - scsi: target: iblock: Fix smp_processor_id() BUG messages (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Fix xarray RCU warning (Maurizio Lombardi) [2004470] - scsi: target: core: Avoid smp_processor_id() in preemptible code (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Return from tcmu_handle_completions() if cmd_id not found (Maurizio Lombardi) [2004470] - scsi: target: tcm_fc: Fix a kernel-doc header (Maurizio Lombardi) [2004470] - scsi: target: Shorten ALUA error messages (Maurizio Lombardi) [2004470] - scsi: target: Fix two format specifiers (Maurizio Lombardi) [2004470] - scsi: target: Compare explicitly with SAM_STAT_GOOD (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Make data_pages_per_blk changeable via configfs (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Replace block size definitions with new udev members (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Remove function tcmu_get_block_page() (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Support DATA_BLOCK_SIZE = N * PAGE_SIZE (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Prepare for PAGE_SIZE != DATA_BLOCK_SIZE (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Adjust names of variables and definitions (Maurizio Lombardi) [2004470] - scsi: target: Make the virtual LUN 0 device (Maurizio Lombardi) [2004470] - scsi: target: Add the DUMMY flag to rd_mcp (Maurizio Lombardi) [2004470] - scsi: target: Fix htmldocs warning in target_submit_prep() (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Adjust parameter in call to tcmu_blocks_release() (Maurizio Lombardi) [2004470] - scsi: target: core: file: Don't duplicate memset(0xff) (Maurizio Lombardi) [2004470] - scsi: target: core: pr: Initialize arrays at declaration time (Maurizio Lombardi) [2004470] - scsi: target: configfs: Initialize arrays at declaration time (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Initialize arrays at declaration time (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove unused macro PRINT_BUF (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove unused macro TEXT_LEN (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove unused macro ISCSI_INST_LAST_FAILURE_TYPE (Maurizio Lombardi) [2004470] - scsi: target: core: Remove unused macros NONE and ISPRINT (Maurizio Lombardi) [2004470] - scsi: target: core: Get rid of warning in compare_and_write_do_cmp() (Maurizio Lombardi) [2004470] - scsi: target: pscsi: Remove unused macro ISPRINT (Maurizio Lombardi) [2004470] - scsi: target: pscsi: Fix warning in pscsi_complete_cmd() (Maurizio Lombardi) [2004470] - scsi: target: iblock: Fix type of logs_per_phys (Maurizio Lombardi) [2004470] - scsi: target: iblock: Trim line longer than 80 characters (Maurizio Lombardi) [2004470] - scsi: target: iblock: Remove an extra argument (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Use GFP_NOIO while handling cmds or holding cmdr_lock (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Replace radix_tree with XArray (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Replace IDR by XArray (Maurizio Lombardi) [2004470] - scsi: target: core: Make completion affinity configurable (Maurizio Lombardi) [2004470] - scsi: target: core: Flush submission work during TMR processing (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Add backend plug/unplug callouts (Maurizio Lombardi) [2004470] - scsi: target: iblock: Add backend plug/unplug callouts (Maurizio Lombardi) [2004470] - scsi: target: core: Fix backend plugging (Maurizio Lombardi) [2004470] - scsi: target: tcm_loop: Use LIO wq cmd submission helper (Maurizio Lombardi) [2004470] - scsi: target: tcm_loop: Use block cmd allocator for se_cmds (Maurizio Lombardi) [2004470] - scsi: target: core: Add workqueue based cmd submission (Maurizio Lombardi) [2004470] - scsi: target: core: Add gfp_t arg to target_cmd_init_cdb() (Maurizio Lombardi) [2004470] - scsi: target: core: Remove target_submit_cmd_map_sgls() (Maurizio Lombardi) [2004470] - scsi: target: srpt: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: qla2xxx: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: tcm_qla2xxx: Remove BUG_ON(in_interrupt()) (Maurizio Lombardi) [2004470] - scsi: qla2xxx: Move sess cmd list/lock to driver (Maurizio Lombardi) [2004470] - scsi: qla2xxx: Drop TARGET_SCF_LOOKUP_LUN_FROM_TAG (Maurizio Lombardi) [2004470] - scsi: target: tcm_fc: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: sbp_target: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: tcm_loop: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: core: Break up target_submit_cmd_map_sgls() (Maurizio Lombardi) [2004470] - scsi: target: core: Rename transport_init_se_cmd() (Maurizio Lombardi) [2004470] - scsi: target: core: Drop kref_get_unless_zero() in target_get_sess_cmd() (Maurizio Lombardi) [2004470] - scsi: target: core: Move t_task_cdb initialization (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Fix zero tag inside a trace event (Maurizio Lombardi) [2004470] - nfsd: move fsnotify on client creation outside spinlock (Steve Dickson) [1719330] - nfsd: report client confirmation status in "info" file (Steve Dickson) [1719330] - nfsd: fsnotify on rmdir under nfsd/clients/ (Steve Dickson) [1719330]- mm: gup: fix potential pgmap refcnt leak in __gup_device_huge() (Waiman Long) [2009258] - mm/gup: check for isolation errors (Waiman Long) [2009258] - mm/gup: return an error on migration failure (Waiman Long) [2009258] - mm/gup: check every subpage of a compound page during isolation (Waiman Long) [2009258] - mm/gup: don't pin migrated cma pages in movable zone (Waiman Long) [2009258] - mm/gup: add a range variant of unpin_user_pages_dirty_lock() (Waiman Long) [2009258] - mm/gup: decrement head page once for group of subpages (Waiman Long) [2009258] - mm/gup: add compound page list iterator (Waiman Long) [2009258] - mm/gup: protect unpin_user_pages() against npages==-ERRNO (Waiman Long) [2009258] - mm, memcg: remove unused functions (Waiman Long) [2008341] - mm,vmscan: fix divide by zero in get_scan_count (Waiman Long) [2008341] - mm: memcontrol: fix occasional OOMs due to proportional memory.low reclaim (Waiman Long) [2008341] - mm/memcg: fix incorrect flushing of lruvec data in obj_stock (Waiman Long) [2008341] - mm/memcg: fix NULL pointer dereference in memcg_slab_free_hook() (Waiman Long) [2008341] - mm: memcontrol: fix blocking rstat function called from atomic cgroup1 thresholding code (Waiman Long) [2008341] - cgroup: rstat: fix A-A deadlock on 32bit around u64_stats_sync (Waiman Long) [2008341] - percpu: flush tlb in pcpu_reclaim_populated() (Waiman Long) [2008341] - mm/memcontrol.c: fix kerneldoc comment for mem_cgroup_calculate_protection (Waiman Long) [2008341] - memcontrol: use flexible-array member (Waiman Long) [2008341] - mm: vmscan: remove noinline_for_stack (Waiman Long) [2008341] - mm: memcontrol: move obj_cgroup_uncharge_pages() out of css_set_lock (Waiman Long) [2008341] - mm: memcontrol: simplify the logic of objcg pinning memcg (Waiman Long) [2008341] - mm: memcontrol: rename lruvec_holds_page_lru_lock to page_matches_lruvec (Waiman Long) [2008341] - mm: memcontrol: simplify lruvec_holds_page_lru_lock (Waiman Long) [2008341] - mm: memcontrol: remove the pgdata parameter of mem_cgroup_page_lruvec (Waiman Long) [2008341] - mm: memcontrol: bail out early when !mm in get_mem_cgroup_from_mm (Waiman Long) [2008341] - mm: memcontrol: fix page charging in page replacement (Waiman Long) [2008341] - percpu: optimize locking in pcpu_balance_workfn() (Waiman Long) [2008341] - percpu: initialize best_upa variable (Waiman Long) [2008341] - percpu: rework memcg accounting (Waiman Long) [2008341] - mm, memcg: introduce mem_cgroup_kmem_disabled() (Waiman Long) [2008341] - mm, memcg: mark cgroup_memory_nosocket, nokmem and noswap as __ro_after_init (Waiman Long) [2008341] - mm: vmscan: shrink deferred objects proportional to priority (Waiman Long) [2008341] - mm: memcontrol: reparent nr_deferred when memcg offline (Waiman Long) [2008341] - mm: vmscan: don't need allocate shrinker->nr_deferred for memcg aware shrinkers (Waiman Long) [2008341] - mm: vmscan: use per memcg nr_deferred of shrinker (Waiman Long) [2008341] - mm: vmscan: add per memcg shrinker nr_deferred (Waiman Long) [2008341] - mm: vmscan: use a new flag to indicate shrinker is registered (Waiman Long) [2008341] - mm: vmscan: add shrinker_info_protected() helper (Waiman Long) [2008341] - mm: memcontrol: rename shrinker_map to shrinker_info (Waiman Long) [2008341] - mm: vmscan: use kvfree_rcu instead of call_rcu (Waiman Long) [2008341] - mm: vmscan: remove memcg_shrinker_map_size (Waiman Long) [2008341] - mm: vmscan: use shrinker_rwsem to protect shrinker_maps allocation (Waiman Long) [2008341] - mm: vmscan: consolidate shrinker_maps handling code (Waiman Long) [2008341] - mm: vmscan: use nid from shrink_control for tracepoint (Waiman Long) [2008341] - linux/memcontrol.h: remove duplicate struct declaration (Waiman Long) [2008341] - memcg: charge before adding to swapcache on swapin (Waiman Long) [2008341] - kselftests: cgroup: update kmem test for new vmstat implementation (Waiman Long) [2008341] - mm: memcontrol: consolidate lruvec stat flushing (Waiman Long) [2008341] - mm: memcontrol: switch to rstat (Waiman Long) [2008341] - cgroup: rstat: punt root-level optimization to individual controllers (Waiman Long) [2008341] - cgroup: rstat: support cgroup1 (Waiman Long) [2008341] - mm: memcontrol: privatize memcg_page_state query functions (Waiman Long) [2008341] - mm: memcontrol: kill mem_cgroup_nodeinfo() (Waiman Long) [2008341] - memcg: enable memcg oom-kill for __GFP_NOFAIL (Waiman Long) [2008341] - memcg: cleanup root memcg checks (Waiman Long) [2008341] - mm: memcontrol: fix kernel stack account (Waiman Long) [2008341] - mm: page-writeback: simplify memcg handling in test_clear_page_writeback() (Waiman Long) [2008341] - percpu: implement partial chunk depopulation (Waiman Long) [2008341] - percpu: use pcpu_free_slot instead of pcpu_nr_slots - 1 (Waiman Long) [2008341] - percpu: factor out pcpu_check_block_hint() (Waiman Long) [2008341] - percpu: split __pcpu_balance_workfn() (Waiman Long) [2008341] - percpu: fix a comment about the chunks ordering (Waiman Long) [2008341] - mm/compaction: remove rcu_read_lock during page compaction (Waiman Long) [2008341] - mm/vmscan.c: make lruvec_lru_size() static (Waiman Long) [2008341] - include/linux/mm_inline.h: fold __update_lru_size() into its sole caller (Waiman Long) [2008341] - include/linux/mm_inline.h: fold page_lru_base_type() into its sole caller (Waiman Long) [2008341] - mm: VM_BUG_ON lru page flags (Waiman Long) [2008341] - mm: add __clear_page_lru_flags() to replace page_off_lru() (Waiman Long) [2008341] - mm/swap.c: don't pass "enum lru_list" to del_page_from_lru_list() (Waiman Long) [2008341] - mm/swap.c: don't pass "enum lru_list" to trace_mm_lru_insertion() (Waiman Long) [2008341] - mm: don't pass "enum lru_list" to lru list addition functions (Waiman Long) [2008341] - include/linux/mm_inline.h: shuffle lru list addition and deletion functions (Waiman Long) [2008341] - mm/vmscan.c: use add_page_to_lru_list() (Waiman Long) [2008341] - mm: fix VM_BUG_ON(PageTail) and BUG_ON(PageWriteback) (Waiman Long) [2008341] - mm: remove superfluous __ClearPageActive() (Waiman Long) [2008341] - mm, memcg: decouple e{low,min} state mutations from protection checks (Waiman Long) [2008341] - Revert "cgroup: Add memory barriers to plug cgroup_rstat_updated() race window" (Waiman Long) [2008341] - mm/memcontrol.c: allocate shrinker_map on appropriate NUMA node (Waiman Long) [2008341] - include/bitmap.h: add new functions to documentation (Waiman Long) [2008341] - include/bitmap.h: add missing parameter in docs (Waiman Long) [2008341] - bitmap: genericize percpu bitmap region iterators (Waiman Long) [2008341] - cgroup, rstat: Don't flush subtree root unless necessary (Waiman Long) [2008341] - mm/memcg: Move mem_cgroup kABI compatibility structure into rh_kabi_memcg.h (Waiman Long) [2008341] - mm/swap: consider max pages in iomap_swapfile_add_extent (Brian Foster) [1969326] - mm/slub: Fix backtrace of objects to handle redzone adjustment (Waiman Long) [2008340] - powerpc/powernv: Fix CPU idle to be called with IRQs disabled (Waiman Long) [2008340] - torture: Fix grace-period rate output (Waiman Long) [2008340] - rcu: Fix kfree_rcu() docbook errors (Waiman Long) [2008340] - rcu/nocb: Perform deferred wake up before last idle's need_resched() check (Waiman Long) [2008340] - rcu: Pull deferred rcuog wake up to rcu_eqs_enter() callers (Waiman Long) [2008340] - idle: Prevent late-arriving interrupts from disrupting offline (Waiman Long) [2008340] - torture: Maintain torture-specific set of CPUs-online books (Waiman Long) [2008340] - torture: Clean up after torture-test CPU hotplugging (Waiman Long) [2008340] - rcutorture: Make object_debug also double call_rcu() heap object (Waiman Long) [2008340] - torture: Throttle VERBOSE_TOROUT_*() output (Waiman Long) [2008340] - torture: Make refscale throttle high-rate printk()s (Waiman Long) [2008340] - rcutorture: Use hrtimers for reader and writer delays (Waiman Long) [2008340] - torture: Make stutter use torture_hrtimeout_*() functions (Waiman Long) [2008340] - rcutorture: Use torture_hrtimeout_jiffies() to avoid busy-waits (Waiman Long) [2008340] - torture: Add fuzzed hrtimer-based sleep functions (Waiman Long) [2008340] - rcutorture: Make rcu_torture_fakewriter() use blocking wait primitives (Waiman Long) [2008340] - rcutorture: Make synctype[] and nsynctype be static global (Waiman Long) [2008340] - rcutorture: Require entire stutter period be post-boot (Waiman Long) [2008340] - refscale: Allow summarization of verbose output (Waiman Long) [2008340] - torture: Allow standalone kvm-recheck.sh run detect --trust-make (Waiman Long) [2008340] - torture: Simplify exit-code plumbing for kvm-recheck.sh and kvm-find-errors.sh (Waiman Long) [2008340] - torture: s/STOP/STOP.1/ to avoid scenario collision (Waiman Long) [2008340] - torture: Add --dryrun batches to help schedule a distributed run (Waiman Long) [2008340] - torture: Stop hanging on panic (Waiman Long) [2008340] - torture: Add kvm.sh test summary to end of log file (Waiman Long) [2008340] - torture: Make kvm.sh include --kconfig arguments in CPU calculation (Waiman Long) [2008340] - torture: Make kvm.sh return failure upon build failure (Waiman Long) [2008340] - torture: Print run duration at end of kvm.sh execution (Waiman Long) [2008340] - torture: Make kvm.sh arguments accumulate (Waiman Long) [2008340] - torture: Make kvm.sh "Test Summary" date be end of test (Waiman Long) [2008340] - tools/rcutorture: Make identify_qemu_vcpus() independent of local language (Waiman Long) [2008340] - torture: Add config2csv.sh script to compare torture scenarios (Waiman Long) [2008340] - torture: Prepare for splitting qemu execution from kvm-test-1-run.sh (Waiman Long) [2008340] - torture: Allow kvm.sh --datestamp to specify subdirectories (Waiman Long) [2008340] - torture: Make kvm.sh "--dryrun sched" summarize number of builds (Waiman Long) [2008340] - torture: Make kvm.sh "--dryrun sched" summarize number of batches (Waiman Long) [2008340] - torture: Make --kcsan specify lockdep (Waiman Long) [2008340] - rcu: Do not NMI offline CPUs (Waiman Long) [2008340] - rcu: For RCU grace-period kthread starvation, dump last CPU it ran on (Waiman Long) [2008340] - rcu: Mark obtuse portion of stall warning as internal debug (Waiman Long) [2008340] - scftorture: Add debug output for wrong-CPU warning (Waiman Long) [2008340] - rcutorture: Add testing for RCU's global memory ordering (Waiman Long) [2008340] - rcutorture: Add reader-side tests of polling grace-period API (Waiman Long) [2008340] - rcutorture: Add writer-side tests of polling grace-period API (Waiman Long) [2008340] - rcutorture: Prepare for ->start_gp_poll and ->poll_gp_state (Waiman Long) [2008340] - srcu: Add comment explaining cookie overflow/wrap (Waiman Long) [2008340] - srcu: Document polling interfaces for Tree SRCU grace periods (Waiman Long) [2008340] - srcu: Provide polling interfaces for Tree SRCU grace periods (Waiman Long) [2008340] - srcu: Provide polling interfaces for Tiny SRCU grace periods (Waiman Long) [2008340] - srcu: Provide internal interface to start a Tree SRCU grace period (Waiman Long) [2008340] - srcu: Provide internal interface to start a Tiny SRCU grace period (Waiman Long) [2008340] - srcu: Make Tiny SRCU use multi-bit grace-period counter (Waiman Long) [2008340] - rcu: Enable rcu_normal_after_boot unconditionally for RT (Waiman Long) [2008340] - rcu: Unconditionally use rcuc threads on PREEMPT_RT (Waiman Long) [2008340] - rcu: Make RCU_BOOST default on CONFIG_PREEMPT_RT (Waiman Long) [2008340] - rcu: Eliminate the __kvfree_rcu() macro (Waiman Long) [2008340] - rcu: Introduce kfree_rcu() single-argument macro (Waiman Long) [2008340] - rcu: Record kvfree_call_rcu() call stack for KASAN (Waiman Long) [2008340] - rcu: Do any deferred nocb wakeups at CPU offline time (Waiman Long) [2008340] - rcu/nocb: Code-style nits in callback-offloading toggling (Waiman Long) [2008340] - rcu/nocb: Add nocb CB kthread list to show_rcu_nocb_state() output (Waiman Long) [2008340] - rcu/nocb: Add grace period and task state to show_rcu_nocb_state() output (Waiman Long) [2008340] - tools/rcutorture: Support nocb toggle in TREE01 (Waiman Long) [2008340] - rcutorture: Test runtime toggling of CPUs' callback offloading (Waiman Long) [2008340] - cpu/hotplug: Add lockdep_is_cpus_held() (Waiman Long) [2008340] - rcu/nocb: Locally accelerate callbacks as long as offloading isn't complete (Waiman Long) [2008340] - rcu/nocb: Process batch locally as long as offloading isn't complete (Waiman Long) [2008340] - rcu/nocb: Only cond_resched() from actual offloaded batch processing (Waiman Long) [2008340] - rcu/nocb: Set SEGCBLIST_SOFTIRQ_ONLY at the very last stage of de-offloading (Waiman Long) [2008340] - rcu/nocb: Flush bypass before setting SEGCBLIST_SOFTIRQ_ONLY (Waiman Long) [2008340] - rcu/nocb: Shutdown nocb timer on de-offloading (Waiman Long) [2008340] - rcu/nocb: Re-offload support (Waiman Long) [2008340] - rcu/nocb: De-offloading GP kthread (Waiman Long) [2008340] - rcu/nocb: Don't deoffload an offline CPU with pending work (Waiman Long) [2008340] - rcu/nocb: De-offloading CB kthread (Waiman Long) [2008340] - rcu/nocb: Always init segcblist on CPU up (Waiman Long) [2008340] - rcu/nocb: Provide basic callback offloading state machine bits (Waiman Long) [2008340] - rcu/nocb: Turn enabled/offload states into a common flag (Waiman Long) [2008340] - rcu/segcblist: Add debug checks for segment lengths (Waiman Long) [2008340] - rcu/trace: Add tracing for how segcb list changes (Waiman Long) [2008340] - rcu/tree: segcblist: Remove redundant smp_mb()s (Waiman Long) [2008340] - rcu/segcblist: Add counters to segcblist datastructure (Waiman Long) [2008340] - rcu/segcblist: Add additional comments to explain smp_mb() (Waiman Long) [2008340] - rcu/tree: Make rcu_do_batch count how many callbacks were executed (Waiman Long) [2008340] - rcu: Make call_rcu() print mem_dump_obj() info for double-freed callback (Waiman Long) [2008340] - mm: Make mem_obj_dump() vmalloc() dumps include start and length (Waiman Long) [2008340] - mm: Make mem_dump_obj() handle vmalloc() memory (Waiman Long) [2008340] - mm: Make mem_dump_obj() handle NULL and zero-sized pointers (Waiman Long) [2008340] - mm: Add mem_dump_obj() to print source of memory block (Waiman Long) [2008340] - rcu: Make TASKS_TRACE_RCU select IRQ_WORK (Waiman Long) [2008340] - rcu-tasks: Add RCU-tasks self tests (Waiman Long) [2008340] - rcu-tasks: Move RCU-tasks initialization to before early_initcall() (Waiman Long) [2008340] - rcu: Add lockdep_assert_irqs_disabled() to raw_spin_unlock_rcu_node() macros (Waiman Long) [2008340] - rcu: Add lockdep_assert_irqs_disabled() to rcu_sched_clock_irq() and callees (Waiman Long) [2008340] - rcutorture: Don't do need_resched() testing if ->sync is NULL (Waiman Long) [2008340] - scftorture: Add full-test stutter capability (Waiman Long) [2008340] - torture: Allow alternative forms of kvm.sh command-line arguments (Waiman Long) [2008340] - rcutorture: Small code cleanups (Waiman Long) [2008340] - torture: Accept time units on kvm.sh --duration argument (Waiman Long) [2008340] - rcutorture: Make stutter_wait() caller restore priority (Waiman Long) [2008340] - torture: Force weak-hashed pointers on console log (Waiman Long) [2008340] - rcutorture: Prevent hangs for invalid arguments (Waiman Long) [2008340] - torture: Prevent jitter processes from delaying failed run (Waiman Long) [2008340] - rcutorture: Adjust scenarios SRCU-t and SRCU-u to make kconfig happy (Waiman Long) [2008340] - refscale: Prevent hangs for invalid arguments (Waiman Long) [2008340] - rcuscale: Prevent hangs for invalid arguments (Waiman Long) [2008340] - torture: Exclude "NOHZ tick-stop error" from fatal errors (Waiman Long) [2008340] - rcuscale: Avoid divide by zero (Waiman Long) [2008340] - rcuscale: Add RCU Tasks Trace (Waiman Long) [2008340] - scftorture: Add an alternative IPI vector (Waiman Long) [2008340] - torture: Make torture_stutter() use hrtimer (Waiman Long) [2008340] - torture: Periodically pause in stutter_wait() (Waiman Long) [2008340] - torture: Don't kill gdb sessions (Waiman Long) [2008340] - refscale: Bounds-check module parameters (Waiman Long) [2008340] - rcu-tasks: Make the units of ->init_fract be jiffies (Waiman Long) [2008340] - rcutorture: Make grace-period kthread report match RCU flavor being tested (Waiman Long) [2008340] - rcu-tasks: Convert rcu_tasks_wait_gp() for-loop to while-loop (Waiman Long) [2008340] - rcutorture: Make preemptible TRACE02 enable lockdep (Waiman Long) [2008340] - srcu: Use a more appropriate lockdep helper (Waiman Long) [2008340] - srcu: Take early exit on memory-allocation failure (Waiman Long) [2008340] - rcu: Fix a typo in rcu_blocking_is_gp() header comment (Waiman Long) [2008340] - rcu: Prevent lockdep-RCU splats on lock acquisition/release (Waiman Long) [2008340] - rcu/tree: nocb: Avoid raising softirq for offloaded ready-to-execute CBs (Waiman Long) [2008340] - rcu/tree: Make struct kernel_param_ops definitions const (Waiman Long) [2008340] - rcu/tree: Add a warning if CPU being onlined did not report QS already (Waiman Long) [2008340] - rcu: Clarify nocb kthreads naming in RCU_NOCB_CPU config (Waiman Long) [2008340] - rcu: Fix single-CPU check in rcu_blocking_is_gp() (Waiman Long) [2008340] - rcu: Implement rcu_segcblist_is_offloaded() config dependent (Waiman Long) [2008340] - list.h: Update comment to explicitly note circular lists (Waiman Long) [2008340] - rcu: Panic after fixed number of stalls (Waiman Long) [2008340] - x86/smpboot: Move rcu_cpu_starting() earlier (Waiman Long) [2008340] - torture: Replace cpu_up/down() with add/remove_cpu() (Waiman Long) [2008340] - PCI/PTM: Remove error message at boot (Myron Stowe) [1993252] - PCI: Mark AMD Navi14 GPU ATS as broken (Myron Stowe) [1993252] - PCI: vmd: Update type of the __iomem pointers (Myron Stowe) [1993252] - PCI: Unify ECAM constants in native PCI Express drivers (Myron Stowe) [1993252] - PCI: Add function 1 DMA alias quirk for Marvell 9215 SATA controller (Myron Stowe) [1993252] - PCI: Mark AMD Raven iGPU ATS as broken in some platforms (Myron Stowe) [1993252] - PCI: Disable PTM during suspend to save power (Myron Stowe) [1993252] - PCI/PTM: Save/restore Precision Time Measurement Capability for suspend/resume (Myron Stowe) [1993252] - PCI: Add sysfs attribute for device power state (Myron Stowe) [1993252] - PCI/MSI: Set device flag indicating only 32-bit MSI support (Myron Stowe) [1993252] - PCI/MSI: Move MSI/MSI-X flags updaters to msi.c (Myron Stowe) [1993252] - PCI/MSI: Move MSI/MSI-X init to msi.c (Myron Stowe) [1993252] - PCI: Use predefined Pericom Vendor ID (Myron Stowe) [1993252] - PCI: Disable MSI for Pericom PCIe-USB adapter (Myron Stowe) [1993252] - PCI: Reduce pci_set_cacheline_size() message to debug level (Myron Stowe) [1993252] - PCI: Remove unused HAVE_PCI_SET_MWI (Myron Stowe) [1993252] - PCI: Fix overflow in command-line resource alignment requests (Myron Stowe) [1993252] - PCI: Bounds-check command-line resource alignment requests (Myron Stowe) [1993252] - PCI: Fix kernel-doc markup (Myron Stowe) [1993252] - PCI: ibmphp: Remove unneeded break (Myron Stowe) [1993252] - PCI/ACPI: Fix companion lookup for device 0 on the root bus (Myron Stowe) [1993252] - PCI: Keep both device and resource name for config space remaps (Myron Stowe) [1993252] - PCI: Return u16 from pci_find_ext_capability() and similar (Myron Stowe) [1993252] - PCI: Return u8 from pci_find_capability() and similar (Myron Stowe) [1993252] - PCI: Avoid duplicate IDs in driver dynamic IDs list (Myron Stowe) [1993252] - PCI: Move pci_match_device() ahead of new_id_store() (Myron Stowe) [1993252] - PCI: Decode PCIe 64 GT/s link speed (Myron Stowe) [1993252] - PCI: host-generic: Support building as modules (Myron Stowe) [1993252] - ata: sata_nv: Fix retrieving of active qcs (Tomas Henzl) [1921465] - ata: pata_ns87415.c: Document support on parisc with superio chip (Tomas Henzl) [1921465] - ata: fix some kernel-doc markups (Tomas Henzl) [1921465] - sata, highbank: simplify the return expression of ahci_highbank_suspend (Tomas Henzl) [1921465] - libata: implement ATA_HORKAGE_MAX_TRIM_128M and apply to Sandisks (Tomas Henzl) [1921465] - ata: ahci: use ata_link_info() instead of ata_link_printk() (Tomas Henzl) [1921465] - libata: Use per port sync for detach (Tomas Henzl) [1921465] - ata/libata: Fix usage of page address by page_address in ata_scsi_mode_select_xlat function (Tomas Henzl) [1921465] - sata_rcar: handle pm_runtime_get_sync failure cases (Tomas Henzl) [1921465] - ata: sata_inic162x fix a spelling issue (Tomas Henzl) [1921465] - ata: libata-core: fix a doc warning (Tomas Henzl) [1921465] - ata: ahci: Add sysfs attribute to show remapped NVMe device count (Tomas Henzl) [1921465] - ata: ahci-imx: remove redundant assignment to ret (Tomas Henzl) [1921465] - libata: Return correct status in sata_pmp_eh_recover_pm() when ATA_DFLAG_DETACH is set (Tomas Henzl) [1921465] - ata: move ata_eh_analyze_ncq_error() & co. to libata-sata.c (Tomas Henzl) [1921465] - ata: start separating SATA specific code from libata-eh.c (Tomas Henzl) [1921465] - ata: move ata_sas_*() to libata-sata.c (Tomas Henzl) [1921465] - ata: start separating SATA specific code from libata-scsi.c (Tomas Henzl) [1921465] - ata: move sata_deb_timing_*() to libata-sata.c (Tomas Henzl) [1921465] - ata: move ata_qc_complete_multiple() to libata-sata.c (Tomas Henzl) [1921465] - ata: move sata_link_hardreset() to libata-sata.c (Tomas Henzl) [1921465] - ata: move sata_link_{debounce,resume}() to libata-sata.c (Tomas Henzl) [1921465] - ata: move *sata_set_spd*() to libata-sata.c (Tomas Henzl) [1921465] - ata: move sata_scr_*() to libata-sata.c (Tomas Henzl) [1921465] - ata: start separating SATA specific code from libata-core.c (Tomas Henzl) [1921465] - ata: fix CodingStyle issues in PATA timings code (Tomas Henzl) [1921465] - ata: remove EXPORT_SYMBOL_GPL()s not used by modules (Tomas Henzl) [1921465] - ata: move EXPORT_SYMBOL_GPL()s close to exported code (Tomas Henzl) [1921465] - ata: optimize ata_scsi_rbuf[] size (Tomas Henzl) [1921465] - ata: optimize struct ata_force_param size (Tomas Henzl) [1921465] - ata: use COMMAND_LINE_SIZE for ata_force_param_buf[] size (Tomas Henzl) [1921465] - ata: simplify ata_scsiop_inq_89() (Tomas Henzl) [1921465] - sata_promise: use ata_cable_sata() (Tomas Henzl) [1921465] - ata: make SATA_PMP option selectable only if any SATA host driver is enabled (Tomas Henzl) [1921465] - ata: expose ncq_enable_prio sysfs attribute only on NCQ capable hosts (Tomas Henzl) [1921465] - ata: remove stale maintainership information from core code (Tomas Henzl) [1921465] - libata: Assign OF node to the SCSI device (Tomas Henzl) [1921465] - libata: Remove extra scsi_host_put() in ata_scsi_add_hosts() (Tomas Henzl) [1921465] - libata: transport: Use scnprintf() for avoiding potential buffer overflow (Tomas Henzl) [1921465] - ata/acard_ahci: remove unused variable n_elem (Tomas Henzl) [1921465] - ata: ahci_brcm: BCM7216 reset is self de-asserting (Tomas Henzl) [1921465] - ata: ahci_brcm: Perform reset after obtaining resources (Tomas Henzl) [1921465] - ata: brcm: fix reset controller API usage (Tomas Henzl) [1921465] - ata: brcm: mark PM functions as __maybe_unused (Tomas Henzl) [1921465] - ata: ahci_brcm: Support BCM7216 reset controller name (Tomas Henzl) [1921465] - ata: ahci_brcm: Add a shutdown callback (Tomas Henzl) [1921465] - ata: ahci_brcm: Manage reset line during suspend/resume (Tomas Henzl) [1921465] - ata: ahci_brcm: Add missing clock management during recovery (Tomas Henzl) [1921465] - ata: ahci_brcm: BCM7425 AHCI requires AHCI_HFLAG_DELAY_ENGINE (Tomas Henzl) [1921465] - ata: ahci_brcm: Fix AHCI resources management (Tomas Henzl) [1921465] - ata: libahci_platform: Export again ahci_platform_able_phys() (Tomas Henzl) [1921465] - libata: Fix retrieving of active qcs (Tomas Henzl) [1921465] - ata: pata_artop: make arrays static const, makes object smaller (Tomas Henzl) [1921465] - ata_piix: remove open-coded dmi_match(DMI_OEM_STRING) (Tomas Henzl) [1921465] - ata: sata_mv, avoid trigerrable BUG_ON (Tomas Henzl) [1921465] - ata: make qc_prep return ata_completion_errors (Tomas Henzl) [1921465] - ata: define AC_ERR_OK (Tomas Henzl) [1921465] - libata: Ensure ata_port probe has completed before detach (Tomas Henzl) [1921465] - ahci: tegra: use regulator_bulk_set_supply_names() (Tomas Henzl) [1921465] - ahci: Add support for Amazon's Annapurna Labs SATA controller (Tomas Henzl) [1921465] - ata: libahci_platform: Fix regulator_get_optional() misuse (Tomas Henzl) [1921465] - ata: ahci-imx: Covert to use GPIO descriptor (Tomas Henzl) [1921465] - libata/ahci: Fix PCS quirk application (Tomas Henzl) [1921465] - libata/ahci: Drop PCS quirk for Denverton and beyond (Tomas Henzl) [1921465] - libata: switch remaining drivers to use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_sil24: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_qstor: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_nv: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_mv: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - pdc_adma: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - ahci: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - acard_ahci: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - libata: add SG safety checks in SFF pio transfers (Tomas Henzl) [1921465] - libata: have ata_scsi_rw_xlat() fail invalid passthrough requests (Tomas Henzl) [1921465] - ata: rb532_cf: Fix unused variable warning in rb532_pata_driver_probe (Tomas Henzl) [1921465] - ata: libahci: do not complain in case of deferred probe (Tomas Henzl) [1921465] - libata: zpodd: Fix small read overflow in zpodd_get_mech_type() (Tomas Henzl) [1921465] - ata: libahci_platform: remove redundant dev_err message (Tomas Henzl) [1921465] - drivers: ata: ahci_sunxi: Increased SATA/AHCI DMA TX/RX FIFOs (Tomas Henzl) [1921465] - libata: Drop firmware version check from the ST1000LM024 quirk (Tomas Henzl) [1921465] - ata: sata_sil24: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata:sata_qstor: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: sata_nv: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: pdc_adma: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: libahci: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: acard-ahci: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - libata: don't request sense data on !ZAC ATA devices (Tomas Henzl) [1921465] - libata: Extend quirks for the ST1000LM024 drives with NOLPM quirk (Tomas Henzl) [1921465] - sata_rcar: Remove ata_host_alloc() error printing (Tomas Henzl) [1921465] - libata: fix using DMA buffers on stack (Tomas Henzl) [1921465] - ata: libahci: Only warn for AHCI_HFLAG_MULTI_MSI set when genuine custom irq handler implemented (Tomas Henzl) [1921465] - libata: fix a typo in comment (Tomas Henzl) [1921465] - sata_rcar: fix deferred probing (Tomas Henzl) [1921465] - ata: sata_highbank: Convert to use GPIO descriptors (Tomas Henzl) [1921465] - sata_rcar: convert to SPDX identifiers (Tomas Henzl) [1921465] - ata: ep93xx: Use proper enums for directions (Tomas Henzl) [1921465] - ata: ahci_brcm: Allow using driver or DSL SoCs (Tomas Henzl) [1921465] - ata: ahci_brcm: Match BCM63138 compatible strings (Tomas Henzl) [1921465] - ata: ahci_brcm: Allow optional reset controller to be used (Tomas Henzl) [1921465] - libata: mask swap internal and hardware tag (Tomas Henzl) [1921465] - pata_atiixp: Remove unnecessary parentheses (Tomas Henzl) [1921465] - ata: ahci_sunxi: add support for r40 (Tomas Henzl) [1921465] - ata: ahci_platform: add support for PHY controller regulator (Tomas Henzl) [1921465] - ata: ahci_platform: add support for AHCI controller regulator (Tomas Henzl) [1921465] - libata: Use SMART LBAM/LBAH password defines (Tomas Henzl) [1921465] - ata: ahci: Convert to using pOFn instead of device_node.name (Tomas Henzl) [1921465] - ata: ftide010: Add a quirk for SQ201 (Tomas Henzl) [1921465] - ata: ahci_platform: enable to get and control reset (Tomas Henzl) [1921465] - ata: libahci_platform: add reset control support (Tomas Henzl) [1921465] - ata: add an extra argument to ahci_platform_get_resources() (Tomas Henzl) [1921465] - ata: sata_rcar: exclude setting of PHY registers in Gen3 (Tomas Henzl) [1921465] - ata: sata_rcar: really mask all interrupts on Gen2 and later (Tomas Henzl) [1921465] - ata: libahci: Allow reconfigure of DEVSLP register (Tomas Henzl) [1921465] - ata: libahci: Correct setting of DEVSLP register (Tomas Henzl) [1921465] - ata: ahci: Enable DEVSLP by default on x86 with SLP_S0 (Tomas Henzl) [1921465] - ata: ahci: Support state with min power but Partial low power state (Tomas Henzl) [1921465] - Revert "ata: ahci_platform: convert kcalloc to devm_kcalloc" (Tomas Henzl) [1921465] - ata: sata_rcar: Add rudimentary Runtime PM support (Tomas Henzl) [1921465] - ata: sata_rcar: Provide a short-hand for &pdev->dev (Tomas Henzl) [1921465] - ata: Only output sg element mapped number in verbose debug (Tomas Henzl) [1921465] - ata: Guard ata_scsi_dump_cdb() by ATA_VERBOSE_DEBUG (Tomas Henzl) [1921465] - ata: ahci_platform: convert kcalloc to devm_kcalloc (Tomas Henzl) [1921465] - ata: ahci_platform: convert kzallloc to kcalloc (Tomas Henzl) [1921465] - ata: ahci_platform: correct parameter documentation for ahci_platform_shutdown (Tomas Henzl) [1921465] - libata: remove ata_sff_data_xfer_noirq() (Tomas Henzl) [1921465] - scsi: target: Fix the pgr/alua_support_store functions (Maurizio Lombardi) [1995935] - sched/deadline: Fix missing clock update in migrate_task_rq_dl() (Phil Auld) [1992254] - sched/fair: Avoid a second scan of target in select_idle_cpu (Phil Auld) [1992254] - sched/fair: Use prev instead of new target as recent_used_cpu (Phil Auld) [1992254] - sched: Replace deprecated CPU-hotplug functions. (Phil Auld) [1992254] - sched/deadline: Fix reset_on_fork reporting of DL tasks (Phil Auld) [1992254] - sched/numa: Fix is_core_idle() (Phil Auld) [1992254] - sched/fair: Sync load_sum with load_avg after dequeue (Phil Auld) [1992254] - sched/fair: Fix CFS bandwidth hrtimer expiry type (Phil Auld) [1992254] - sched/fair: Ensure _sum and _avg values stay consistent (Phil Auld) [1992254] - sched/fair: Ensure that the CFS parent is added after unthrottling (Phil Auld) [1992254] - sched/rt: Fix Deadline utilization tracking during policy change (Phil Auld) [1992254] - sched/rt: Fix RT utilization tracking during policy change (Phil Auld) [1992254] - sched/fair: Age the average idle time (Phil Auld) [1992254] - wait: use LIST_HEAD_INIT() to initialize wait_queue_head (Phil Auld) [1992254] - sched: Optimize housekeeping_cpumask() in for_each_cpu_and() (Phil Auld) [1992254] - sched/fair: Fix util_est UTIL_AVG_UNCHANGED handling (Phil Auld) [1992254] - sched/pelt: Check that *_avg are null when *_sum are (Phil Auld) [1992254] - sched/fair: Correctly insert cfs_rq's to list on unthrottle (Phil Auld) [1992254] - sched/pelt: Ensure that *_sum is always synced with *_avg (Phil Auld) [1992254] - sched/fair: Return early from update_tg_cfs_load() if delta == 0 (Phil Auld) [1992254] - sched/fair: Make sure to update tg contrib for blocked load (Phil Auld) [1992254] - sched/fair: Keep load_avg and load_sum synced (Phil Auld) [1992254] - sched: Stop PF_NO_SETAFFINITY from being inherited by various init system threads (Phil Auld) [1992254] - sched: Fix a stale comment in pick_next_task() (Phil Auld) [1992254] - sched/fair: Fix ascii art by relpacing tabs (Phil Auld) [1992254] - tick/nohz: Call tick_nohz_task_switch() with interrupts disabled (Phil Auld) [1992254] - sched/fair: Fix clearing of has_idle_cores flag in select_idle_cpu() (Phil Auld) [1992254] - sched/core: Remove the pointless BUG_ON(!task) from wake_up_q() (Phil Auld) [1992254] - sched: Make the idle task quack like a per-CPU kthread (Phil Auld) [1992254] - sched/fair: Fix unfairness caused by missing load decay (Phil Auld) [1992254] - sched: Make nr_iowait_cpu() return 32-bit value (Phil Auld) [1992254] - sched: Make nr_iowait() return 32-bit value (Phil Auld) [1992254] - sched: Make nr_running() return 32-bit value (Phil Auld) [1992254] - sched/isolation: Reconcile rcu_nocbs= and nohz_full= (Phil Auld) [1992254] - sched/fair: Introduce a CPU capacity comparison helper (Phil Auld) [1992254] - sched/fair: Clean up active balance nr_balance_failed trickery (Phil Auld) [1992254] - sched/fair: Move update_nohz_stats() to the CONFIG_NO_HZ_COMMON block to simplify the code & fix an unused function warning (Phil Auld) [1992254] - sched/fair: Bring back select_idle_smt(), but differently (Phil Auld) [1992254] - sched,fair: Alternative sched_slice() (Phil Auld) [1992254] - sched/topology: Remove redundant cpumask_and() in init_overlap_sched_group() (Phil Auld) [1992254] - sched/numa: Allow runtime enabling/disabling of NUMA balance without SCHED_DEBUG (Phil Auld) [1992254] - sched/fair: Optimize test_idle_cores() for !SMT (Phil Auld) [1992254] - sched: Fix various typos (Phil Auld) [1992254] - sched: Remove unnecessary variable from schedule_tail() (Phil Auld) [1992254] - sched: Optimize __calc_delta() (Phil Auld) [1992254] - sched: Provide raw_spin_rq_*lock*() helpers (Phil Auld) [1992254] - sched/pelt: Fix task util_est update filtering (Phil Auld) [1992254] - sched/fair: use lsub_positive in cpu_util_next() (Phil Auld) [1992254] - sched/fair: Reduce the window for duplicated update (Phil Auld) [1992254] - sched/fair: Reorder newidle_balance pulled_task tests (Phil Auld) [1992254] - sched/fair: Remove unused parameter of update_nohz_stats (Phil Auld) [1992254] - sched/fair: Remove unused return of _nohz_idle_balance (Phil Auld) [1992254] - sched/fair: Remove update of blocked load from newidle_balance (Phil Auld) [1992254] - sched/topology: fix the issue groups don't span domain->span for NUMA diameter > 2 (Phil Auld) [1992254] - sched/fair: Merge select_idle_core/cpu() (Phil Auld) [1992254] - sched/fair: Remove select_idle_smt() (Phil Auld) [1992254] - sched/fair: Move avg_scan_cost calculations under SIS_PROP (Phil Auld) [1992254] - sched/fair: Remove SIS_AVG_CPU (Phil Auld) [1992254] - sched/eas: Don't update misfit status if the task is pinned (Phil Auld) [1992254] - sched/fair: Avoid stale CPU util_est value for schedutil in task dequeue (Phil Auld) [1992254] - sched/fair: Add a few assertions (Phil Auld) [1992254] - cpufreq: schedutil: Simplify sugov_update_next_freq() (Phil Auld) [1992254] - sched/topology: Warn when NUMA diameter > 2 (Phil Auld) [1992254] - sched: Use task_current() instead of 'rq->curr == p' (Phil Auld) [1992254] - sched/core: Allow try_invoke_on_locked_down_task() with irqs disabled (Phil Auld) [1992254] - sched/fair: Exclude the current CPU from find_new_ilb() (Phil Auld) [1992254] - rbtree, sched/deadline: Use rb_add_cached() (Phil Auld) [1992254] - rbtree, sched/fair: Use rb_add_cached() (Phil Auld) [1992254] - sched/isolation: Prefer housekeeping CPU in local node (Phil Auld) [1992254] - sched: Fix various typos in comments (Phil Auld) [1992254] - s390/qeth: fix deadlock during failing recovery (Sumanth Korikkar) [1984990] - s390/qeth: Fix deadlock in remove_discipline (Sumanth Korikkar) [1984990] - s390/qeth: fix NULL deref in qeth_clear_working_pool_list() (Sumanth Korikkar) [1984990] - s390/qdio: fix roll-back after timeout on ESTABLISH ccw (Sumanth Korikkar) [1984990] - s390/qdio: get rid of register asm (Sumanth Korikkar) [1984990] - s390/netiuvc: get rid of forward declarations (Sumanth Korikkar) [1984990] - s390/qeth: Consider dependency on SWITCHDEV module (Sumanth Korikkar) [1984990] - s390/qeth: shrink TX buffer struct (Sumanth Korikkar) [1984990] - s390/qeth: remove TX buffer's pointer to its queue (Sumanth Korikkar) [1984990] - s390/qeth: remove QAOB's pointer to its TX buffer (Sumanth Korikkar) [1984990] - s390/qeth: consolidate completion of pending TX buffers (Sumanth Korikkar) [1984990] - s390/qeth: use ethtool_sprintf() (Sumanth Korikkar) [1984990] - s390/qeth: unify the tracking of active cmds on ccw device (Sumanth Korikkar) [1984990] - s390/qeth: also use TX NAPI for non-IQD devices (Sumanth Korikkar) [1984990] - s390/qeth: count TX completion interrupts (Sumanth Korikkar) [1984990] - powerpc/stacktrace: Include linux/delay.h (Steve Best) [2010674] - powerpc/stacktrace: Fix spurious "stale" traces in raise_backtrace_ipi() (Steve Best) [2010674] - powerpc/xmon: Reset RCU and soft lockup watchdogs (Steve Best) [2010674] - bpf, sockmap: Fix sk->prot unhash op reset (Jiri Benc) [1947006] - xdp: fix xdp_return_frame() kernel BUG throw for page_pool memory model (Jiri Benc) [1947006] - selftests/bpf: Tests using bpf_check_mtu BPF-helper input mtu_len param (Jiri Benc) [1947006] - bpf: BPF-helper for MTU checking add length input (Jiri Benc) [1947006] - xsk: Remove dangling function declaration from header file (Jiri Benc) [1947006] - bpf: Remove blank line in bpf helper description comment (Jiri Benc) [1947006] - libbpf: Use AF_LOCAL instead of AF_INET in xsk.c (Jiri Benc) [1947006] - selftests/bpf: Tests using bpf_check_mtu BPF-helper (Jiri Benc) [1947006] - selftests/bpf: Use bpf_check_mtu in selftest test_cls_redirect (Jiri Benc) [1947006] - bpf: Drop MTU check when doing TC-BPF redirect to ingress (Jiri Benc) [1947006] - bpf: Add BPF-helper for MTU checking (Jiri Benc) [1947006] - bpf: bpf_fib_lookup return MTU value as output when looked up (Jiri Benc) [1947006] - bpf: Fix bpf_fib_lookup helper MTU check for SKB ctx (Jiri Benc) [1947006] - bpf: Remove MTU check in __bpf_skb_max_len (Jiri Benc) [1947006] - net, veth: Alloc skb in bulk for ndo_xdp_xmit (Jiri Benc) [1947006] - bpf: Enable bpf_{g,s}etsockopt in BPF_CGROUP_UDP{4,6}_RECVMSG (Jiri Benc) [1947006] - selftests/bpf: Rewrite recvmsg{4,6} asm progs to c in test_sock_addr (Jiri Benc) [1947006] - bpf: Enable bpf_{g,s}etsockopt in BPF_CGROUP_INET{4,6}_GET{PEER,SOCK}NAME (Jiri Benc) [1947006] - bpf: Enable bpf_{g,s}etsockopt in BPF_CGROUP_UDP{4,6}_SENDMSG (Jiri Benc) [1947006] - selftests/bpf: Verify that rebinding to port < 1024 from BPF works (Jiri Benc) [1947006] - bpf: Allow rewriting to ports under ip_unprivileged_port_start (Jiri Benc) [1947006] - net: port < inet_prot_sock(net) --> inet_port_requires_bind_service(net, port) (Jiri Benc) [1947006] - net: inet_is_local_reserved_port() should return bool not int (Jiri Benc) [1947006] - libbpf, xsk: Select AF_XDP BPF program based on kernel version (Jiri Benc) [1947006] - xsk: Fold xp_assign_dev and __xp_assign_dev (Jiri Benc) [1947006] - xsk: Remove explicit_free parameter from __xsk_rcv() (Jiri Benc) [1947006] - bpf: Split cgroup_bpf_enabled per attach type (Jiri Benc) [1947006] - bpf: Remove extra lock_sock for TCP_ZEROCOPY_RECEIVE (Jiri Benc) [1947006] - net, xdp: Introduce xdp_build_skb_from_frame utility routine (Jiri Benc) [1947006] - net, xdp: Introduce __xdp_build_skb_from_frame utility routine (Jiri Benc) [1947006] - bpf: Extend bind v4/v6 selftests for mark/prio/bindtoifindex (Jiri Benc) [1947006] - bpf: Allow to retrieve sol_socket opts from sock_addr progs (Jiri Benc) [1947006] - bpf: Replace fput with sockfd_put in sock map (Jiri Benc) [1947006] - tools: bpf: add SO_BINDTOIFINDEX to socket.h in tools (Jiri Benc) [1947006] - media: firewire: firedtv-avc: fix a buffer overflow in avc_ca_pmt() (Lucas Zampieri) [1956472] {CVE-2021-3542}- mm/hmm: make HMM_MIRROR an implicit option (Rafael Aquini) [1998534] - mm/hmm: allow HMM_MIRROR on all architectures with MMU (Rafael Aquini) [1998534] - mm: don't select MIGRATE_VMA_HELPER from HMM_MIRROR (Rafael Aquini) [1998534] - mm: sort out the DEVICE_PRIVATE Kconfig mess (Rafael Aquini) [1998534] - s390/ap/zcrypt: notify userspace with online, config and mode info (Stefan Schulze Frielinghaus) [1984895] - docs: livepatch: Fix a typo and remove the unnecessary gaps in a sentence (C. Erastus Toe) [1995447] - Documentation: livepatch: document reliable stacktrace (C. Erastus Toe) [1995447] - Documentation: livepatch: Convert to automatically generated contents (C. Erastus Toe) [1995447] - scsi: ibmvfc: Reinitialize sub-CRQs and perform channel enquiry after LPM (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Store return code of H_FREE_SUB_CRQ during cleanup (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Treat H_CLOSED as success during sub-CRQ registration (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Fix invalid sub-CRQ handles after hard reset (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Simplify handling of sub-CRQ initialization (Desnes A. Nunes do Rosario) [1932217] - exec: Transform exec_update_mutex into a rw_semaphore (Chris von Recklinghausen) [1993665] - perf: Break deadlock involving exec_update_mutex (Chris von Recklinghausen) [1993665] - pidfd: Add missing sock updates for pidfd_getfd() (Chris von Recklinghausen) [1993665] - exec: Move the call of prepare_binprm into search_binary_handler (Chris von Recklinghausen) [1993665] - exec: Allow load_misc_binary to call prepare_binprm unconditionally (Chris von Recklinghausen) [1993665] - exec: Convert security_bprm_set_creds into security_bprm_repopulate_creds (Chris von Recklinghausen) [1993665] - exec: Factor security_bprm_creds_for_exec out of security_bprm_set_creds (Chris von Recklinghausen) [1993665] - exec: Move would_dump into flush_old_exec (Chris von Recklinghausen) [1993665] - exec: Rename flush_old_exec begin_new_exec (Chris von Recklinghausen) [1993665] - exec: Move most of setup_new_exec into flush_old_exec (Chris von Recklinghausen) [1993665] - exec: In setup_new_exec cache current in the local variable me (Chris von Recklinghausen) [1993665] - exec: Merge install_exec_creds into setup_new_exec (Chris von Recklinghausen) [1993665] - exec: Rename the flag called_exec_mmap point_of_no_return (Chris von Recklinghausen) [1993665] - exec: Make unlocking exec_update_mutex explict (Chris von Recklinghausen) [1993665] - binfmt: Move install_exec_creds after setup_new_exec to match binfmt_elf (Chris von Recklinghausen) [1993665] - pidfd: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - perf: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - proc: io_accounting: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - proc: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - kernel/kcmp.c: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - kernel: doc: remove outdated comment cred.c (Chris von Recklinghausen) [1993665] - mm: docs: Fix a comment in process_vm_rw_core (Chris von Recklinghausen) [1993665] - selftests/ptrace: add test cases for dead-locks (Chris von Recklinghausen) [1993665] - exec: Fix a deadlock in strace (Chris von Recklinghausen) [1993665] - exec: Add exec_update_mutex to replace cred_guard_mutex (Chris von Recklinghausen) [1993665] - exec: Move exec_mmap right after de_thread in flush_old_exec (Chris von Recklinghausen) [1993665] - exec: Move cleanup of posix timers on exec out of de_thread (Chris von Recklinghausen) [1993665] - exec: Factor unshare_sighand out of de_thread and call it separately (Chris von Recklinghausen) [1993665] - exec: Only compute current once in flush_old_exec (Chris von Recklinghausen) [1993665] - pid: Implement pidfd_getfd syscall (Chris von Recklinghausen) [1993665] - pidfd: add P_PIDFD to waitid() (Chris von Recklinghausen) [1993665] - fork: return proper negative error code (Chris von Recklinghausen) [1993665] - copy_process(): don't use ksys_close() on cleanups (Chris von Recklinghausen) [1993665] - fork: don't check parent_tidptr with CLONE_PIDFD (Chris von Recklinghausen) [1993665] - fs/exec.c: move ->recursion_depth out of critical sections (Chris von Recklinghausen) [1993665] - clone: add CLONE_PIDFD (Chris von Recklinghausen) [1993665] - signal: support CLONE_PIDFD with pidfd_send_signal (Chris von Recklinghausen) [1993665] - arch: add pidfd and io_uring syscalls everywhere (Chris von Recklinghausen) [1993665] - signal: don't silently convert SI_USER signals to non-current pidfd (Chris von Recklinghausen) [1993665] - signal: add pidfd_send_signal() syscall (Chris von Recklinghausen) [1993665] - sched/core: Convert signal_struct.sigcnt to refcount_t (Chris von Recklinghausen) [1993665] - sched/core: Convert sighand_struct.count to refcount_t (Chris von Recklinghausen) [1993665] - exec: make prepare_bprm_creds static (Chris von Recklinghausen) [1993665] - fork: don't copy inconsistent signal handler state to child (Chris von Recklinghausen) [1993665] - Revert "perf: Break deadlock involving exec_update_mutex" (Chris von Recklinghausen) [1993665] - powerpc/mm/highmem: use __set_pte_at() for kmap_local() (Nico Pache) [2001854] - mm: extract might_alloc() debug check (Nico Pache) [2001854] - mm/mempolicy: use vma_lookup() in __access_remote_vm() (Nico Pache) [2001854] - mm/memory.c: use vma_lookup() in __access_remote_vm() (Nico Pache) [2001854] - mm/mremap: use vma_lookup() in vma_to_resize() (Nico Pache) [2001854] - mm/migrate: use vma_lookup() in do_pages_stat_array() (Nico Pache) [2001854] - mm/ksm: use vma_lookup() in find_mergeable_vma() (Nico Pache) [2001854] - kernel/events/uprobes: use vma_lookup() in find_active_uprobe() (Nico Pache) [2001854] - misc/sgi-gru/grufault: use vma_lookup() in gru_find_vma() (Nico Pache) [2001854] - media: videobuf2: use vma_lookup() in get_vaddr_frames() (Nico Pache) [2001854] - drm/amdgpu: use vma_lookup() in amdgpu_ttm_tt_get_user_pages() (Nico Pache) [2001854] - net/ipv5/tcp: use vma_lookup() in tcp_zerocopy_receive() (Nico Pache) [2001854] - vfio: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - virt/kvm: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - x86/sgx: use vma_lookup() in sgx_encl_find() (Nico Pache) [2001854] - arch/powerpc/kvm/book3s: use vma_lookup() in kvmppc_hv_setup_htab_rma() (Nico Pache) [2001854] - arch/powerpc/kvm/book3s_hv_uvmem: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - arch/arm64/kvm: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - drm/i915/selftests: use vma_lookup() in __igt_mmap() (Nico Pache) [2001854] - mm: add vma_lookup(), update find_vma_intersection() comments (Nico Pache) [2001854] - i915_vma: Rename vma_lookup to i915_vma_lookup (Nico Pache) [2001854] - media: videobuf2: Move frame_vector into media subsystem (Nico Pache) [2001854] - mm/frame-vector: Use FOLL_LONGTERM (Nico Pache) [2001854] - vhost: convert get_user_pages() --> pin_user_pages() (Nico Pache) [2001854] - docs: mm/gup: pin_user_pages.rst: add a "case 5" (Nico Pache) [2001854] - mm/gup: documentation fix for pin_user_pages*() APIs (Nico Pache) [2001854] - mm/gup: frame_vector: convert get_user_pages() --> pin_user_pages() (Nico Pache) [2001854] - mm/gup: update pin_user_pages.rst for "case 3" (mmu notifiers) (Nico Pache) [2001854] - mm: untag user pointers in get_vaddr_frames (Nico Pache) [2001854] - media: videobuf2-vmalloc: get_userptr: buffers are always writable (Nico Pache) [2001854] - net: expand textsearch ts_state to fit skb_seq_state (Nico Pache) [2001854] - esp: avoid unneeded kmap_atomic call (Nico Pache) [2001854] - net: compound page support in skb_seq_read (Nico Pache) [2001854] - net: support kmap_local forced debugging in skb_frag_foreach (Nico Pache) [2001854] - mm/highmem: fix CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP (Nico Pache) [2001854] - x86/crashdump/32: Simplify copy_oldmem_page() (Nico Pache) [2001854] - io-mapping: Provide iomap_local variant (Nico Pache) [2001854] - mm/highmem: Provide kmap_local* (Nico Pache) [2001854] - sched: highmem: Store local kmaps in task struct (Nico Pache) [2001854] - x86: Support kmap_local() forced debugging (Nico Pache) [2001854] - mm/highmem: Provide CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP (Nico Pache) [2001854] - mm/highmem: Provide and use CONFIG_DEBUG_KMAP_LOCAL (Nico Pache) [2001854] - mm/highmem: Take kmap_high_get() properly into account (Nico Pache) [2001854] - highmem: High implementation details and document API (Nico Pache) [2001854] - Documentation/io-mapping: Remove outdated blurb (Nico Pache) [2001854] - io-mapping: Cleanup atomic iomap (Nico Pache) [2001854] - mm/highmem: Remove the old kmap_atomic cruft (Nico Pache) [2001854] - highmem: Get rid of kmap_types.h (Nico Pache) [2001854] - powerpc/mm/highmem: Switch to generic kmap atomic (Nico Pache) [2001854] - x86/mm/highmem: Use generic kmap atomic implementation (Nico Pache) [2001854] - highmem: Make DEBUG_HIGHMEM functional (Nico Pache) [2001854] - highmem: Provide generic variant of kmap_atomic* (Nico Pache) [2001854] - asm-generic: Provide kmap_size.h (Nico Pache) [2001854] - fs: Remove asm/kmap_types.h includes (Nico Pache) [2001854] - highmem: Remove unused functions (Nico Pache) [2001854] - mm/highmem: Un-EXPORT __kmap_atomic_idx() (Nico Pache) [2001854] - kmap: consolidate kmap_prot definitions (Nico Pache) [2001854] - parisc/kmap: remove duplicate kmap code (Nico Pache) [2001854] - arch/kmap: define kmap_atomic_prot() for all arch's (Nico Pache) [2001854] - arch/kmap: ensure kmap_prot visibility (Nico Pache) [2001854] - arch/kunmap_atomic: consolidate duplicate code (Nico Pache) [2001854] - arch/kmap_atomic: consolidate duplicate code (Nico Pache) [2001854] - {x86,powerpc,microblaze}/kmap: move preempt disable (Nico Pache) [2001854] - arch/kunmap: remove duplicate kunmap implementations (Nico Pache) [2001854] - arch/kmap: remove redundant arch specific kmaps (Nico Pache) [2001854] - arch/kmap: remove BUG_ON() (Nico Pache) [2001854] - ipc: remove memcg accounting for sops objects in do_semtimedop() (Rafael Aquini) [1999705] {CVE-2021-3759} - memcg: enable accounting of ipc resources (Rafael Aquini) [1999705] {CVE-2021-3759} - ipc: use kmalloc for msg_queue and shmid_kernel (Rafael Aquini) [1999705] {CVE-2021-3759} - ipc sem: use kvmalloc for sem_undo allocation (Rafael Aquini) [1999705] {CVE-2021-3759} - ipc/sem.c: replace kvmalloc/memset with kvzalloc and use struct_size (Rafael Aquini) [1999705] {CVE-2021-3759} - x86: sev-es: Restore SEV-ES-specific version of copy_from_kernel_nofault() (Vitaly Kuznetsov) [2010082] - perf machine: Initialize srcline string member in add_location struct (Michael Petlan) [1981880] - ipmi: kcs_bmc_aspeed: Fix less than zero comparison of a unsigned int (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Optionally apply status address (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Fix IBFIE typo from datasheet (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Implement KCS SerIRQ configuration (Tony Camuso) [2003186] - ipmi: kcs_bmc: Add serio adaptor (Tony Camuso) [2003186] - ipmi: kcs_bmc: Enable IBF on open (Tony Camuso) [2003186] - ipmi: kcs_bmc: Allow clients to control KCS IRQ state (Tony Camuso) [2003186] - ipmi: kcs_bmc: Decouple the IPMI chardev from the core (Tony Camuso) [2003186] - ipmi: kcs_bmc: Strip private client data from struct kcs_bmc (Tony Camuso) [2003186] - ipmi: kcs_bmc: Split headers into device and client (Tony Camuso) [2003186] - ipmi: kcs_bmc: Turn the driver data-structures inside-out (Tony Camuso) [2003186] - ipmi: kcs_bmc: Split out kcs_bmc_cdev_ipmi (Tony Camuso) [2003186] - ipmi: kcs_bmc: Rename {read,write}_{status,data}() functions (Tony Camuso) [2003186] - ipmi: kcs_bmc: Make status update atomic (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Use of match data to extract KCS properties (Tony Camuso) [2003186] - ipmi/watchdog: Stop watchdog timer when the current action is 'none' (Tony Camuso) [2003186] - ipmi: kcs: aspeed: Adapt to new LPC DTS layout (Tony Camuso) [2003186] - ipmi_si: Join string literals back (Tony Camuso) [2003186] - ipmi_si: Drop redundant check before calling put_device() (Tony Camuso) [2003186] - ipmi_si: Use strstrip() to remove surrounding spaces (Tony Camuso) [2003186] - ipmi_si: Get rid of ->addr_source_cleanup() (Tony Camuso) [2003186] - ipmi_si: Reuse si_to_str[] array in ipmi_hardcode_init_one() (Tony Camuso) [2003186] - ipmi_si: Introduce ipmi_panic_event_str[] array (Tony Camuso) [2003186] - ipmi_si: Use proper ACPI macros to check error code for failures (Tony Camuso) [2003186] - ipmi_si: Utilize temporary variable to hold device pointer (Tony Camuso) [2003186] - ipmi_si: Remove bogus err_free label (Tony Camuso) [2003186] - ipmi: Handle device properties with software node API (Tony Camuso) [2003186] - ipmi:ssif: make ssif_i2c_send() void (Tony Camuso) [2003186] - ipmi: Refine retry conditions for getting device id (Tony Camuso) [2003186] - redhat/configs: enable CONFIG_IMA_WRITE_POLICY (Bruno Meneguele) [2010530] - Disable CONFIG_CRYPTO_SM4 on aarch64 (Vladis Dronov) [2008943] - powerpc/iommu: Report the correct most efficient DMA mask for PCI devices (Steve Best) [2007425] - powerpc/dma: Fix dma_map_ops::get_required_mask (Steve Best) [2007425] - ibmvnic: Reuse tx pools when possible (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Reuse rx pools when possible (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Reuse LTB when possible (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use bitmap for LTB map_ids (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: init_tx_pools move loop-invariant code (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use/rename local vars in init_tx_pools (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use/rename local vars in init_rx_pools (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Fix up some comments and messages (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Consolidate code in replenish_rx_pool() (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: check failover_pending in login response (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: retry reset if there are no other resets (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: parenthesize a check (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: free tx_pool if tso_pool alloc fails (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: set ltb->buff to NULL after freeing (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: account for bufs already saved in indir_buf (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: clean pending indirect buffs during reset (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use strscpy() instead of strncpy() (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix send_request_map incompatible argument (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix kernel build warnings in build_hdr_descs_arr (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix kernel build warning (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix kernel build warning in strncpy (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Allow device probe if the device is not ready at boot (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use list_for_each_entry() to simplify code in ibmvnic.c (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: remove default label from to_string switch (Desnes A. Nunes do Rosario) [1998677] - intel_th: pci: Add Alder Lake-M support (Jiri Olsa) [1929502] - i2c: designware: Fix indentation in the header (David Arcari) [2004468] - i2c: designware: Use DIV_ROUND_CLOSEST() macro (David Arcari) [2004468] - math64: New DIV_S64_ROUND_CLOSEST helper (David Arcari) [2004468] - units: Add SI metric prefix definitions (David Arcari) [2004468] - i2c: busses: i2c-designware-master: Fix misnaming of 'i2c_dw_init_master()' (David Arcari) [2004468] - MAINTAINERS: adjust to removing i2c designware platform data (David Arcari) [2004468] - i2c: designware: Get rid of legacy platform data (David Arcari) [2004468] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (David Arcari) [2004468] - i2c: designware: Switch over to i2c_freq_mode_string() (David Arcari) [2004468] - i2c: core: add api to provide frequency mode strings (David Arcari) [2004468] - i2c: designware: Fix return value check in navi_amd_register_client() (David Arcari) [2004468] - i2c: drivers: Use generic definitions for bus frequencies (part 2) (David Arcari) [2004468] - i2c: designware: Add driver support for AMD NAVI GPU (David Arcari) [2004468] - i2c: designware: Adjust bus_freq_hz when refuse high speed mode set (David Arcari) [2004468] - i2c: designware: Get right data length (David Arcari) [2004468] - i2c: designware: Make register offsets all of the same width (David Arcari) [2004468] - i2c: designware: Switch header to use BIT() and GENMASK() (David Arcari) [2004468] - i2c: designware: slave should do WRITE_REQUESTED before WRITE_RECEIVED (David Arcari) [2004468] - i2c: designware: call i2c_dw_read_clear_intrbits_slave() once (David Arcari) [2004468] - i2c: busses: Use fallthrough pseudo-keyword (David Arcari) [2004468] - i2c: designware: platdrv: Set class based on DMI (David Arcari) [2004468] - i2c: designware: Adjust bus speed independently of ACPI (David Arcari) [2004468] - i2c: designware: Add Baikal-T1 System I2C support (David Arcari) [2004468] - i2c: designware: Move reg-space remapping into a dedicated function (David Arcari) [2004468] - i2c: designware: Retrieve quirk flags as early as possible (David Arcari) [2004468] - i2c: designware: Convert driver to using regmap API (David Arcari) [2004468] - i2c: designware: Discard Cherry Trail model flag (David Arcari) [2004468] - i2c: designware: Drop hard coded FIFO depth assignment (David Arcari) [2004468] - i2c: designware: Read counters from ACPI for PCI driver (David Arcari) [2004468] - i2c: designware: Move ACPI parts into common module (David Arcari) [2004468] - i2c: designware: Drop unneeded condition in i2c_dw_validate_speed() (David Arcari) [2004468] - i2c: designware: Move i2c_dw_validate_speed() helper to a common code (David Arcari) [2004468] - i2c: designware: Include proper headers in i2c-desingware-core.h (David Arcari) [2004468] - i2c: designware: Get rid of PCI driver specifics in common code (David Arcari) [2004468] - i2c: designware: Allow slave mode for PCI enumerated devices (David Arcari) [2004468] - i2c: designware: Rename i2c_dw_probe() to i2c_dw_probe_master() (David Arcari) [2004468] - i2c: designware: Switch PCI driver to use i2c_dw_configure_master() (David Arcari) [2004468] - i2c: designware: Move configuration routines to respective modules (David Arcari) [2004468] - i2c: designware: Use devm_platform_ioremap_resource() to simplify code (David Arcari) [2004468] - i2c: designware: Calculate SCL timing parameter for High Speed Mode (David Arcari) [2004468] - i2c: designware: Calculate SCL timing parameter for Fast Mode Plus (David Arcari) [2004468] - i2c: designware: platdrv: Remove DPM_FLAG_SMART_SUSPEND flag on BYT and CHT (David Arcari) [2004468] - i2c: drivers: Use generic definitions for bus frequencies (David Arcari) [2004468] - i2c: core: Provide generic definitions for bus frequencies (David Arcari) [2004468] - i2c: designware: Fix spelling typos in the comments (David Arcari) [2004468] - i2c: designware: Discard i2c_dw_read_comp_param() function (David Arcari) [2004468] - i2c: designware: Detect the FIFO size in the common code (David Arcari) [2004468] - i2c: designware: Add ACPI HID for Hisilicon Hip08-Lite I2C controller (David Arcari) [2004468] - i2c: designware: Fix optional reset error handling (David Arcari) [2004468] - i2c: designware: assert reset when error happen at ->probe() (David Arcari) [2004468] - i2c: designware: Synchronize IRQs when unregistering slave client (David Arcari) [2004468] - i2c: designware: Fix unused variable warning (David Arcari) [2004468] - i2c: designware: make use of devm_gpiod_get_optional (David Arcari) [2004468] - i2c: busses: Use dev_get_drvdata where possible (David Arcari) [2004468] - i2c: designware: ratelimit 'transfer when suspended' errors (David Arcari) [2004468] - i2c: designware: Add support for an interface clock (David Arcari) [2004468] - i2c: i2c-designware-platdrv: Always use a dynamic adapter number (David Arcari) [2004468] - i2c: i2c-designware-platdrv: Cleanup setting of the adapter number (David Arcari) [2004468] - i2c: designware: Do not allow i2c_dw_xfer() calls while suspended (David Arcari) [2004468] - i2c: designware: Cleanup bus lock handling (David Arcari) [2004468] - i2c: designware: Set IRQF_NO_SUSPEND flag for all BYT and CHT controllers (David Arcari) [2004468] - i2c: designware: Call i2c_dw_clk_rate() only when calculating timings (David Arcari) [2004468] - i2c: designware: Remove Cherry Trail PMIC I2C bus pm_disabled workaround (David Arcari) [2004468] - i2c: designware: add MSCC Ocelot support (David Arcari) [2004468] - i2c: designware: allow IP specific sda_hold_time (David Arcari) [2004468] - i2c: designware: move #ifdef CONFIG_OF to the top (David Arcari) [2004468] - i2c: designware: use generic table matching (David Arcari) [2004468] - i2c: designware: Add SPDX license tag (David Arcari) [2004468] - i2c: designware: Convert to use struct i2c_timings (David Arcari) [2004468] - i2c: designware-pcidrv: Mark expected switch fall-through (David Arcari) [2004468] - i2c: designware-master: use core to detect 'no zero length' quirk (David Arcari) [2004468] - i2c: designware: Add debug print for bus speed (David Arcari) [2004468] - i2c: designware: Add debug print for SDA hold time value (David Arcari) [2004468] - i2c: designware: Separate timing parameter setting from HW initalization (David Arcari) [2004468] - i2c: designware: Move SDA hold time configuration to common code (David Arcari) [2004468] - i2c: designware: Call i2c_dw_clk_rate() only once in i2c_dw_init_master() (David Arcari) [2004468] - i2c: designware: Don't use internal ___constant_swab32 (David Arcari) [2004468] - i2c: designware: Move register access detection to common code (David Arcari) [2004468] - i2c: designware: Remove needless variable from i2c_dw_init_slave() (David Arcari) [2004468]- x86/amd_nb: Add AMD family 17h model 60h PCI IDs (David Arcari) [1987067] - x86/amd_nb: Check vendor in AMD-only functions (David Arcari) [1987067] - hwmon: (k10temp) Add support for yellow carp (David Arcari) [1987067] - x86/amd_nb: Add AMD family 19h model 50h PCI ids (David Arcari) [1987067] - x86: Fix various typos in comments, take #2 (David Arcari) [1987067] - x86/amd_nb, char/amd64-agp: Use amd_nb_num() accessor (David Arcari) [1987067] - x86/amd_nb: Add PCI device IDs for family 17h, model 70h (David Arcari) [1987067] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 477 (David Arcari) [1987067] - x86/amd_nb: Make hygon_nb_misc_ids static (David Arcari) [1987067] - x86/pci, x86/amd_nb: Add Hygon Dhyana support to PCI and northbridge (David Arcari) [1987067] - x86/cpu: Create Hygon Dhyana architecture support file (David Arcari) [1987067] - hwmon: (k10temp) Rework the temperature offset calculation (David Arcari) [1987067] - hwmon: (k10temp) Don't show Tdie for all Zen/Zen2/Zen3 CPU/APU (David Arcari) [1987067] - hwmon: (k10temp) Add additional missing Zen2 and Zen3 APUs (David Arcari) [1987067] - hwmon: (k10temp) support Zen3 APUs (David Arcari) [1987067] - CI: Fix RT branch name (Veronika Kabatova) - platform/x86/intel: pmc/core: Add GBE Package C10 fix for Alder Lake PCH (David Arcari) [1962965] - platform/x86/intel: pmc/core: Add Alder Lake low power mode support for pmc core (David Arcari) [1962965] - platform/x86/intel: pmc/core: Add Latency Tolerance Reporting (LTR) support to Alder Lake (David Arcari) [1962965] - platform/x86/intel: pmc/core: Add Alderlake support to pmc core driver (David Arcari) [1962965] - redhat/configs: Add CONFIG_X86_PLATFORM_DRIVERS_INTEL (David Arcari) [1962965] - platform/x86: intel_pmc_core: Move to intel sub-directory (David Arcari) [1962965] - platform/x86: intel_skl_int3472: Move to intel/ subfolder (David Arcari) [1962965] - platform/x86: intel_pmc_core: Prevent possibile overflow (David Arcari) [1962965] - ipvs: check that ip_vs_conn_tab_bits is between 8 and 20 (Andrea Claudi) [1816769] - KVM: nVMX: Filter out all unsupported controls when eVMCS was activated (Vitaly Kuznetsov) [2001915] - pinctrl: amd: Handle wake-up interrupt (David Arcari) [2000228] - pinctrl: amd: Add irq field data (David Arcari) [2000228] - pinctrl: amd: Fix an issue with shutdown when system set to s0ix (David Arcari) [2000228] - pinctrl/amd: Add device HID for new AMD GPIO controller (David Arcari) [2000228] - pinctrl: amd: Implement irq_set_wake (David Arcari) [2000228] - genirq/PM: Introduce IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND flag (David Arcari) [2000228] - pinctrl: amd: remove debounce filter setting in IRQ type setting (David Arcari) [2000228] - pinctrl: amd: print debounce filter info in debugfs (David Arcari) [2000228] - pinctrl: amd: use higher precision for 512 RtcClk (David Arcari) [2000228] - pinctrl: amd: fix incorrect way to disable debounce filter (David Arcari) [2000228] - pinctrl: amd: Use irqchip template (David Arcari) [2000228] - pinctrl: pinctrl-amd: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (David Arcari) [2000228] - pinctrl: amd: Honor IRQ trigger type requested by the caller (David Arcari) [2000228] - pinctrl: Use new GPIO_LINE_DIRECTION (David Arcari) [2000228] - remove ioremap_nocache and devm_ioremap_nocache (David Arcari) [2000228] - pinctrl: amd: fix __iomem annotation in amd_gpio_irq_handler() (David Arcari) [2000228] - pinctrl: amd: disable spurious-firing GPIO IRQs (David Arcari) [2000228] - pinctrl: Remove dev_err() usage after platform_get_irq() (David Arcari) [2000228] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (David Arcari) [2000228] - pinctrl/amd: fix typo (David Arcari) [2000228] - pinctrl: pinctrl-amd: simplify getting .driver_data (David Arcari) [2000228] - pinctrl/amd: poll InterruptEnable bits in amd_gpio_irq_set_type (David Arcari) [2000228] - pinctrl: Include nothing else (David Arcari) [2000228] - pinctrl/amd: only handle irq if it is pending and unmasked (David Arcari) [2000228] - pinctrl/amd: fix gpio irq level in debugfs (David Arcari) [2000228] - smartpqi: Update version to 2.1.10-025 (Don Brace) [1980106] - scsi: smartpqi: Replace one-element array with flexible-array member (Don Brace) [1980106] - scsi: smartpqi: Fix an error code in pqi_get_raid_map() (Don Brace) [1980106] - scsi: smartpqi: Update version to 2.1.10-020 (Don Brace) [1980106] - scsi: smartpqi: Fix ISR accessing uninitialized data (Don Brace) [1980106] - scsi: smartpqi: Add PCI IDs for new ZTE controllers (Don Brace) [1980106] - scsi: smartpqi: Add PCI ID for new ntcom controller (Don Brace) [1980106] - scsi: smartpqi: Add SCSI cmd info for resets (Don Brace) [1980106] - scsi: smartpqi: Change Kconfig menu entry to Microchip (Don Brace) [1980106] - scsi: smartpqi: Change driver module macros to Microchip (Don Brace) [1980106] - scsi: smartpqi: Update copyright notices (Don Brace) [1980106] - scsi: smartpqi: Add PCI IDs for H3C P4408 controllers (Don Brace) [1980106]- lib/linear_ranges: fix repeated words & one typo (Nico Pache) [2006475] - lib: linear_ranges: Add missing MODULE_LICENSE() (Nico Pache) [2006475] - bpf: Fix regression on BPF_OBJ_GET with non-O_RDWR flags (Jiri Olsa) [1944798] - bpf, x86: Fix extable offset calculation (Jiri Olsa) [1944798] - bpftool: Add Makefile target bootstrap (Jiri Olsa) [1944798] - bpf: Avoid warning when re-casting __bpf_call_base into __bpf_call_base_args (Jiri Olsa) [1944798] - docs, bpf: Add minimal markup to address doc warning (Jiri Olsa) [1944798] - test_bpf: Remove EXPECTED_FAIL flag from bpf_fill_maxinsns11 (Jiri Olsa) [1944798] - trace: bpf: Allow bpf to attach to bare tracepoints (Jiri Olsa) [1944798] - docs: bpf: Clarify -mcpu=v3 requirement for atomic ops (Jiri Olsa) [1944798] - tools, headers: Sync struct bpf_perf_event_data (Jiri Olsa) [1944798] - selftests/bpf: Add missing cleanup in atomic_bounds test (Jiri Olsa) [1944798] - docs: bpf: Clarify BPF_CMPXCHG wording (Jiri Olsa) [1944798] - docs: bpf: Fixup atomics markup (Jiri Olsa) [1944798] - bpf: Document new atomic instructions (Jiri Olsa) [1944798] - kbuild: Do not clean resolve_btfids if the output does not exist (Jiri Olsa) [1944798] - kbuild: Add resolve_btfids clean to root clean target (Jiri Olsa) [1944798] - bpf: Introduce task_vma bpf_iter (Jiri Olsa) [1944798] - bpf: Allow bpf_d_path in bpf_iter program (Jiri Olsa) [1944798] - selftests/bpf: Add test for bpf_iter_task_vma (Jiri Olsa) [1944798] - bpf: Don't do bpf_cgroup_storage_set() for kuprobe/tp programs (Jiri Olsa) [1944798] - libbpf: Use SOCK_CLOEXEC when opening the netlink socket (Jiri Olsa) [1944798] - bpf: Update selftests to reflect new error states (Jiri Olsa) [1944798] - bpf, x86: Validate computation of branch displacements for x86-32 (Jiri Olsa) [1944798] - bpf, x86: Validate computation of branch displacements for x86-64 (Jiri Olsa) [1944798] - bpf: program: Refuse non-O_RDWR flags in BPF_OBJ_GET (Jiri Olsa) [1944798] - bpf: Take module reference for trampoline in module (Jiri Olsa) [1944798] - bpf/selftests: Test that kernel rejects a TCP CC with an invalid license (Jiri Olsa) [1944798] - bpf: Enforce that struct_ops programs be GPL-only (Jiri Olsa) [1944798] - libbpf: Fix bail out from 'ringbuf_process_ring()' on error (Jiri Olsa) [1944798] - selftests/bpf: Add selftest for pointer-to-array-of-struct BTF dump (Jiri Olsa) [1944798] - libbpf: Fix BTF dump of pointer-to-array-of-struct (Jiri Olsa) [1944798] - bpf, selftests: Fix up some test_verifier cases for unprivileged (Jiri Olsa) [1944798] - bpf, x86: Use kvmalloc_array instead kmalloc_array in bpf_jit_comp (Jiri Olsa) [1944798] - libbpf: Fix INSTALL flag order (Jiri Olsa) [1944798] - libbpf: Clear map_info before each bpf_obj_get_info_by_fd (Jiri Olsa) [1944798] - samples, bpf: Add missing munmap in xdpsock (Jiri Olsa) [1944798] - tools/resolve_btfids: Fix build error with older host toolchains (Jiri Olsa) [1944798] - selftests/bpf: Fix a compiler warning in global func test (Jiri Olsa) [1944798] - bpf: Drop imprecise log message (Jiri Olsa) [1944798] - bpf: Clear percpu pointers in bpf_prog_clone_free() (Jiri Olsa) [1944798] - bpf: Fix a warning message in mark_ptr_not_null_reg() (Jiri Olsa) [1944798] - selftests/bpf: Add unit tests for pointers in global functions (Jiri Olsa) [1944798] - bpf: Support pointers in global func args (Jiri Olsa) [1944798] - bpf: Extract nullable reg type conversion into a helper function (Jiri Olsa) [1944798] - bpf: Rename bpf_reg_state variables (Jiri Olsa) [1944798] - tools/resolve_btfids: Add /libbpf to .gitignore (Jiri Olsa) [1944798] - bpf: selftests: Add non function pointer test to struct_ops (Jiri Olsa) [1944798] - libbpf: Ignore non function pointer member in struct_ops (Jiri Olsa) [1944798] - bpf: Clear per_cpu pointers during bpf_prog_realloc (Jiri Olsa) [1944798] - selftests/bpf: Add a selftest for the tracing bpf_get_socket_cookie (Jiri Olsa) [1944798] - selftests/bpf: Use vmlinux.h in socket_cookie_prog.c (Jiri Olsa) [1944798] - selftests/bpf: Integrate the socket_cookie test to test_progs (Jiri Olsa) [1944798] - bpf: Expose bpf_get_socket_cookie to tracing programs (Jiri Olsa) [1944798] - selftests/bpf: Convert test_xdp_redirect.sh to bash (Jiri Olsa) [1944798] - selftests/bpf: Add a test for map-in-map and per-cpu maps in sleepable progs (Jiri Olsa) [1944798] - bpf: Allows per-cpu maps and map-in-map in sleepable programs (Jiri Olsa) [1944798] - selftests/bpf: Improve recursion selftest (Jiri Olsa) [1944798] - selftest/bpf: Add a recursion test (Jiri Olsa) [1944798] - bpf: Count the number of times recursion was prevented (Jiri Olsa) [1944798] - bpf: Add per-program recursion prevention mechanism (Jiri Olsa) [1944798] - bpf: Compute program stats for sleepable programs (Jiri Olsa) [1944798] - bpf: Run sleepable programs with migration disabled (Jiri Olsa) [1944798] - bpf: Optimize program stats (Jiri Olsa) [1944798] - selftests/bpf: Simplify the calculation of variables (Jiri Olsa) [1944798] - selftest/bpf: Add test for var-offset stack access (Jiri Olsa) [1944798] - tools/resolve_btfids: Set srctree variable unconditionally (Jiri Olsa) [1944798] - tools/resolve_btfids: Check objects before removing (Jiri Olsa) [1944798] - tools/resolve_btfids: Build libbpf and libsubcmd in separate directories (Jiri Olsa) [1944798] - bpf: Simplify bool comparison (Jiri Olsa) [1944798] - selftests/bpf: Remove unneeded semicolon (Jiri Olsa) [1944798] - bpf/benchs/bench_ringbufs: Remove unneeded semicolon (Jiri Olsa) [1944798] - bpf: Refactor BPF_PSEUDO_CALL checking as a helper function (Jiri Olsa) [1944798] - bpf/selftests: Update the IMA test to use BPF ring buffer (Jiri Olsa) [1944798] - bpf: Allow usage of BPF ringbuffer in sleepable programs (Jiri Olsa) [1944798] - bpf/selftests: Add a short note about vmtest.sh in README.rst (Jiri Olsa) [1944798] - bpf: Helper script for running BPF presubmit tests (Jiri Olsa) [1944798] - bpf: Emit explicit NULL pointer checks for PROBE_LDX instructions. (Jiri Olsa) [1944798] - libbpf: Stop using feature-detection Makefiles (Jiri Olsa) [1944798] - selftest/bpf: Testing for multiple logs on REJECT (Jiri Olsa) [1944798] - samples: bpf: Remove unneeded semicolon (Jiri Olsa) [1944798] - bpf: Propagate stack bounds to registers in atomics w/ BPF_FETCH (Jiri Olsa) [1944798] - samples/bpf: Add include dir for MIPS Loongson64 to fix build errors (Jiri Olsa) [1944798] - bpf: Simplify cases in bpf_base_func_proto (Jiri Olsa) [1944798] - samples/bpf: Set flag __SANE_USERSPACE_TYPES__ for MIPS to fix build warnings (Jiri Olsa) [1944798] - selftests/bpf: Avoid useless void *-casts (Jiri Olsa) [1944798] - selftests/bpf: Consistent malloc/calloc usage (Jiri Olsa) [1944798] - selftests/bpf: Avoid heap allocation (Jiri Olsa) [1944798] - selftests/bpf: Define local variables at the beginning of a block (Jiri Olsa) [1944798] - selftests/bpf: Change type from void * to struct generic_data * (Jiri Olsa) [1944798] - selftests/bpf: Change type from void * to struct ifaceconfigobj * (Jiri Olsa) [1944798] - selftests/bpf: Remove casting by introduce local variable (Jiri Olsa) [1944798] - selftests/bpf: Improve readability of xdpxceiver/worker_pkt_validate() (Jiri Olsa) [1944798] - selftests/bpf: Remove memory leak (Jiri Olsa) [1944798] - selftests/bpf: Fix style warnings (Jiri Olsa) [1944798] - selftests/bpf: Remove unused enums (Jiri Olsa) [1944798] - selftests/bpf: Remove a lot of ifobject casting (Jiri Olsa) [1944798] - samples/bpf: Add xdp program on egress for xdp_redirect_map (Jiri Olsa) [1944798] - bpf: Fix typo in scalar{,32}_min_max_rsh comments (Jiri Olsa) [1944798] - bpf, docs: Update build procedure for manually compiling LLVM and Clang (Jiri Olsa) [1944798] - selftest/bpf: Fix typo (Jiri Olsa) [1944798] - libbpf: Use string table index from index table if needed (Jiri Olsa) [1944798] - bpf: Try to avoid kzalloc in cgroup/{s,g}etsockopt (Jiri Olsa) [1944798] - bpf: Permit size-0 datasec (Jiri Olsa) [1944798] - selftests: bpf: Add a new test for bare tracepoints (Jiri Olsa) [1944798] - selftests/bpf: Add verifier tests for x64 jit jump padding (Jiri Olsa) [1944798] - bpf,x64: Pad NOPs to make images converge more easily (Jiri Olsa) [1944798] - tools/bpftool: Add -Wall when building BPF programs (Jiri Olsa) [1944798] - bpf: Declare __bpf_free_used_maps() unconditionally (Jiri Olsa) [1944798] - bpf: Add bpf_patch_call_args prototype to include/linux/bpf.h (Jiri Olsa) [1944798] - kernel.spec: Add support to use vmlinux.h (Jiri Olsa) [1989087] - spec: Add vmlinux.h to kernel-devel package (Jiri Olsa) [1989087] - lib/test_scanf: Handle n_bits == 0 in random tests (Chris von Recklinghausen) [1985062] - printk/console: Check consistent sequence number when handling race in console_unlock() (Chris von Recklinghausen) [1985062] - printk: fix cpu lock ordering (Chris von Recklinghausen) [1985062] - lib/dump_stack: move cpu lock to printk.c (Chris von Recklinghausen) [1985062] - random32: Fix implicit truncation warning in prandom_seed_state() (Chris von Recklinghausen) [1985062] - lib: test_scanf: Remove pointless use of type_min() with unsigned types (Chris von Recklinghausen) [1985062] - selftests: lib: Add wrapper script for test_scanf (Chris von Recklinghausen) [1985062] - lib: test_scanf: Add tests for sscanf number conversion (Chris von Recklinghausen) [1985062] - lib: vsprintf: Fix handling of number field widths in vsscanf (Chris von Recklinghausen) [1985062] - lib: vsprintf: scanf: Negative number must have field width > 1 (Chris von Recklinghausen) [1985062] - usb: host: xhci-tegra: Switch to use ptTs (Chris von Recklinghausen) [1985062] - nilfs2: Switch to use ptTs (Chris von Recklinghausen) [1985062] - kdb: Switch to use ptTs (Chris von Recklinghausen) [1985062] - lib/vsprintf: Allow to override ISO 8601 date and time separator (Chris von Recklinghausen) [1985062] - printk: Remove trailing semicolon in macros (Chris von Recklinghausen) [1985062] - printk: Move EXPORT_SYMBOL() closer to vprintk definition (Chris von Recklinghausen) [1985062] - kernel/printk.c: Fixed mundane typos (Chris von Recklinghausen) [1985062] - printk: rename vprintk_func to vprintk (Chris von Recklinghausen) [1985062] - printk: console: remove unnecessary safe buffer usage (Chris von Recklinghausen) [1985062] - printk: kmsg_dump: remove _nolock() variants (Chris von Recklinghausen) [1985062] - printk: remove logbuf_lock (Chris von Recklinghausen) [1985062] - printk: introduce a kmsg_dump iterator (Chris von Recklinghausen) [1985062] - printk: kmsg_dumper: remove @active field (Chris von Recklinghausen) [1985062] - printk: add syslog_lock (Chris von Recklinghausen) [1985062] - printk: use atomic64_t for devkmsg_user.seq (Chris von Recklinghausen) [1985062] - printk: use seqcount_latch for clear_seq (Chris von Recklinghausen) [1985062] - printk: introduce CONSOLE_LOG_MAX (Chris von Recklinghausen) [1985062] - printk: consolidate kmsg_dump_get_buffer/syslog_print_all code (Chris von Recklinghausen) [1985062] - printk: refactor kmsg_dump_get_buffer() (Chris von Recklinghausen) [1985062] - printk: kmsg_dump: remove unused fields (Chris von Recklinghausen) [1985062] - printk: limit second loop of syslog_print_all (Chris von Recklinghausen) [1985062] - mtd: mtdoops: synchronize kmsg_dumper (Chris von Recklinghausen) [1985062] - vsprintf: dump full information of page flags in pGp (Chris von Recklinghausen) [1985062] - mm, slub: don't combine pr_err with INFO (Chris von Recklinghausen) [1985062] - mm, slub: use pGp to print page flags (Chris von Recklinghausen) [1985062] - lib/vsprintf.c: remove leftover 'f' and 'F' cases from bstr_printf() (Chris von Recklinghausen) [1985062] - printk: clarify the documentation for plain pointer printing (Chris von Recklinghausen) [1985062] - lib/vsprintf: do not show no_hash_pointers message multiple times (Chris von Recklinghausen) [1985062] - kdb: Refactor env variables get/set code (Chris von Recklinghausen) [1985062] - kernel: debug: Ordinary typo fixes in the file gdbstub.c (Chris von Recklinghausen) [1985062] - kdb: Simplify kdb commands registration (Chris von Recklinghausen) [1985062] - seqlock,lockdep: Fix seqcount_latch_init() (Chris von Recklinghausen) [1985062] - printk: avoid prb_first_valid_seq() where possible (Chris von Recklinghausen) [1985062] - printk: rectify kernel-doc for prb_rec_init_wr() (Chris von Recklinghausen) [1985062] - lib/vsprintf: no_hash_pointers prints all addresses as unhashed (Chris von Recklinghausen) [1985062] - kselftest: add support for skipped tests (Chris von Recklinghausen) [1985062] - lib: use KSTM_MODULE_GLOBALS macro in kselftest drivers (Chris von Recklinghausen) [1985062] - printk: fix deadlock when kernel panic (Chris von Recklinghausen) [1985062] - torture: Remove "Failed to add ttynull console" false positive (Chris von Recklinghausen) [1985062] - printk: fix string termination for record_print_text() (Chris von Recklinghausen) [1985062] - printk: fix buffer overflow potential for print_text() (Chris von Recklinghausen) [1985062] - printk: fix kmsg_dump_get_buffer length calulations (Chris von Recklinghausen) [1985062] - printk: ringbuffer: fix line counting (Chris von Recklinghausen) [1985062] - Revert "init/console: Use ttynull as a fallback when there is no console" (Chris von Recklinghausen) [1985062] - printk: remove obsolete dead assignment (Chris von Recklinghausen) [1985062] - printk: ringbuffer: Reference text_data_ring directly in callees. (Chris von Recklinghausen) [1985062] - printk/console: Allow to disable console output by using console="" or console=null (Chris von Recklinghausen) [1985062] - init/console: Use ttynull as a fallback when there is no console (Chris von Recklinghausen) [1985062] - printk: remove logbuf_lock writer-protection of ringbuffer (Chris von Recklinghausen) [1985062] - printk: inline log_output(),log_store() in vprintk_store() (Chris von Recklinghausen) [1985062] - printk: remove unneeded dead-store assignment (Chris von Recklinghausen) [1985062] - printk: finalize records with trailing newlines (Chris von Recklinghausen) [1985062] - printk: ringbuffer: Wrong data pointer when appending small string (Chris von Recklinghausen) [1985062] - printk: reduce setup_text_buf size to LOG_LINE_MAX (Chris von Recklinghausen) [1985062] - printk: avoid and/or handle record truncation (Chris von Recklinghausen) [1985062] - printk: remove dict ring (Chris von Recklinghausen) [1985062] - printk: move dictionary keys to dev_printk_info (Chris von Recklinghausen) [1985062] - printk: move printk_info into separate array (Chris von Recklinghausen) [1985062] - printk: reimplement log_cont using record extension (Chris von Recklinghausen) [1985062] - printk: ringbuffer: add finalization/extension support (Chris von Recklinghausen) [1985062] - printk: ringbuffer: change representation of states (Chris von Recklinghausen) [1985062] - printk: ringbuffer: clear initial reserved fields (Chris von Recklinghausen) [1985062] - printk: ringbuffer: add BLK_DATALESS() macro (Chris von Recklinghausen) [1985062] - printk: ringbuffer: relocate get_data() (Chris von Recklinghausen) [1985062] - printk: ringbuffer: avoid memcpy() on state_var (Chris von Recklinghausen) [1985062] - printk: ringbuffer: fix setting state in desc_read() (Chris von Recklinghausen) [1985062] - seqlock: Introduce seqcount_latch_t (Chris von Recklinghausen) [1985062] - scripts/gdb: update for lockless printk ringbuffer (Chris von Recklinghausen) [1985062] - scripts/gdb: add utils.read_ulong() (Chris von Recklinghausen) [1985062] - printk: reduce LOG_BUF_SHIFT range for H8300 (Chris von Recklinghausen) [1985062] - printk: ringbuffer: support dataless records (Chris von Recklinghausen) [1985062] - MAINTAIERS: Add John Ogness as printk reviewer (Chris von Recklinghausen) [1985062] - printk: use the lockless ringbuffer (Chris von Recklinghausen) [1985062] - Revert "printk: lock/unlock console only for new logbuf entries" (Chris von Recklinghausen) [1985062] - printk: add lockless ringbuffer (Chris von Recklinghausen) [1985062] - crash: add VMCOREINFO macro to define offset in a struct declared by typedef (Chris von Recklinghausen) [1985062] - printk: Use fallthrough pseudo-keyword (Chris von Recklinghausen) [1985062] - kernel.h: Move oops_in_progress to printk.h (Chris von Recklinghausen) [1985062] - serial: 8250: change lock order in serial8250_do_startup() (Chris von Recklinghausen) [1985062] - kernel: printk: delete repeated words in comments (Chris von Recklinghausen) [1985062] - random32: Restore __latent_entropy attribute on net_rand_state (Chris von Recklinghausen) [1985062] - random32: add a tracepoint for prandom_u32() (Chris von Recklinghausen) [1985062] - init: open code setting up stdin/stdout/stderr (Chris von Recklinghausen) [1985062] - hvc: unify console setup naming (Chris von Recklinghausen) [1985062] - console: Fix trivia typo 'change' -> 'chance' (Chris von Recklinghausen) [1985062] - console: Propagate error code from console ->setup() (Chris von Recklinghausen) [1985062] - tty: hvc: Return proper error code from console ->setup() hook (Chris von Recklinghausen) [1985062] - lib/vsprintf: Force type of flags value for gfp_t (Chris von Recklinghausen) [1985062] - lib/vsprintf: Replace custom spec to print decimals with generic one (Chris von Recklinghausen) [1985062] - lib/vsprintf: Replace hidden BUILD_BUG_ON() with static_assert() (Chris von Recklinghausen) [1985062] - printk: Make linux/printk.h self-contained (Chris von Recklinghausen) [1985062] - doc:kmsg: explicitly state the return value in case of SEEK_CUR (Chris von Recklinghausen) [1985062] - Replace HTTP links with HTTPS ones: vsprintf (Chris von Recklinghausen) [1985062] - Revert "kernel/printk: add kmsg SEEK_CUR handling" (Chris von Recklinghausen) [1985062] - random32: move the pseudo-random 32-bit definitions to prandom.h (Chris von Recklinghausen) [1985062] - printk/kdb: Redirect printk messages into kdb in any context (Chris von Recklinghausen) [1985062] - usb: pulse8-cec: Switch to use ptT (Chris von Recklinghausen) [1985062] - lib/vsprintf: Print time64_t in human readable format (Chris von Recklinghausen) [1985062] - printk: Remove pr_cont_once() (Chris von Recklinghausen) [1985062] - printk: handle blank console arguments passed in. (Chris von Recklinghausen) [1985062] - kernel/printk: add kmsg SEEK_CUR handling (Chris von Recklinghausen) [1985062] - printk: Fix a typo in comment "interator"->"iterator" (Chris von Recklinghausen) [1985062] - printk: Correctly set CON_CONSDEV even when preferred console was not registered (Chris von Recklinghausen) [1985062] - printk: Fix preferred console selection with multiple matches (Chris von Recklinghausen) [1985062] - printk: Move console matching logic into a separate function (Chris von Recklinghausen) [1985062] - lib/vsprintf: update comment about simple_strto() functions (Chris von Recklinghausen) [1985062] - printk: Convert a use of sprintf to snprintf in console_unlock (Chris von Recklinghausen) [1985062] - lib/dynamic_debug.c: use address-of operator on section symbols (Chris von Recklinghausen) [1985062] - printk: fix exclusive_console replaying (Chris von Recklinghausen) [1985062] - Revert "fs: remove ksys_dup()" (Chris von Recklinghausen) [1985062] - early init: fix error handling when opening /dev/console (Chris von Recklinghausen) [1985062] - device.h: move dev_printk()-like functions to dev_printk.h (Chris von Recklinghausen) [1985062] - docs: printk-formats: add ptrdiff_t type to printk-formats (Chris von Recklinghausen) [1985062] - fs: remove ksys_dup() (Chris von Recklinghausen) [1985062] - MAINTAINERS: Add VSPRINTF (Chris von Recklinghausen) [1985062] - tools lib api: Renaming pr_warning to pr_warn (Chris von Recklinghausen) [1985062] - lib: cpu_rmap: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - trace: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - vgacon: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - scsi: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - platform/x86: intel_oaktrail: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - platform/x86: asus-laptop: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - platform/x86: eeepc-laptop: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - oprofile: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - of: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - macintosh: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - idsn: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - ide: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - crypto: n2: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - clocksource: samsung_pwm_timer: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - gdrom: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - drbd: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - x86: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - arm64: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - dump_stack: avoid the livelock of the dump_lock (Chris von Recklinghausen) [1985062] - lib/vsprintf: Add pfw conversion specifier for printing fwnode names (Chris von Recklinghausen) [1985062] - lib/vsprintf: Make use of fwnode API to obtain node names and separators (Chris von Recklinghausen) [1985062] - ABI: Update dev-kmsg documentation to match current kernel behaviour (Chris von Recklinghausen) [1985062] - printk: Replace strncmp() with str_has_prefix() (Chris von Recklinghausen) [1985062] - lib/test_printf: Remove obvious comments from pd and pD tests (Chris von Recklinghausen) [1985062] - lib/test_printf: Add test of null/invalid pointer dereference for dentry (Chris von Recklinghausen) [1985062] - vsprintf: Prevent crash when dereferencing invalid pointers for pD (Chris von Recklinghausen) [1985062] - printk: Do not lose last line in kmsg buffer dump (Chris von Recklinghausen) [1985062] - scripts/gdb: fix lx-dmesg when CONFIG_PRINTK_CALLER is set (Chris von Recklinghausen) [1985062] - lib/vsprintf: Remove support for pF and pf in favour of pS and ps (Chris von Recklinghausen) [1985062] - tracing: kdb: Allow ftdump to skip all but the last few entries (Chris von Recklinghausen) [1985062] - tracing: kdb: The skip_lines parameter should have been skip_entries (Chris von Recklinghausen) [1985062] - tracing: Add trace_total_entries() / trace_total_entries_cpu() (Chris von Recklinghausen) [1985062] - tty: Add NULL TTY driver (Chris von Recklinghausen) [1985062] - treewide: Switch printk users from pf and pF to ps and pS, respectively (Chris von Recklinghausen) [1985062] - iio: adc: fix warning in Qualcomm PM8xxx HK/XOADC driver (Chris von Recklinghausen) [1985062] - device.h: Add __cold to dev_ logging functions (Chris von Recklinghausen) [1985062] - dynamic_debug: move pr_err from module.c to ddebug_add_module (Chris von Recklinghausen) [1985062] - dynamic_debug: don't duplicate modname in ddebug_add_module (Chris von Recklinghausen) [1985062] - kdb: use bool for binary state indicators (Chris von Recklinghausen) [1985062] - panic: avoid deadlocks in re-entrant console drivers (Chris von Recklinghausen) [1985062] - x86/apic: Trivial coding style fixes (Chris von Recklinghausen) [1985062] - video/console/vgacon: Print big fat warning with nomodeset (Chris von Recklinghausen) [1985062] - device: Add #define dev_fmt similar to #define pr_fmt (Chris von Recklinghausen) [1985062] - bcache: replace 'pF' by 'pS' in seq_printf() (Chris von Recklinghausen) [1985062] - Revert "Merge: redhat: switch secureboot kernel image signing to release keys" (Augusto Caringi) - drm/nouveau/fifo/ga102: initialise chid on return from channel creation (Ben Skeggs) [1997878] - drm/nouveau/ga102-: support ttm buffer moves via copy engine (Ben Skeggs) [1997878] - drm/nouveau/kms/tu102-: delay enabling cursor until after assign_windows (Ben Skeggs) [1997878] - drm/nouveau/kms/nv50: workaround EFI GOP window channel format differences (Ben Skeggs) [1997878] - drm/nouveau/disp: power down unused DP links during init (Ben Skeggs) [1997878] - drm/nouveau: recognise GA107 (Ben Skeggs) [1997878] - PCI: Mark TI C667X to avoid bus reset (Alex Williamson) [1975768] - redhat: switch secureboot kernel image signing to release keys (Bruno Meneguele) - CI: handle RT branches in a single config (Veronika Kabatova) - CI: Fix RT check branch name (Veronika Kabatova) - CI: Drop private CI config (Veronika Kabatova) - CI: extend template use (Veronika Kabatova) - Revert "Merge: mt7921e: enable new Mediatek wireless hardware" (Bruno Meneguele) [2009501] - megaraid_sas: fix concurrent access to ISR between IRQ polling and real interrupt (Tomas Henzl) [2009022] - scsi: megaraid_sas: mq_poll support (Tomas Henzl) [2009022] - [PATCH v2] scsi: qla2xxx: Suppress unnecessary log messages during login (Nilesh Javali) [1982186] - scsi: qla2xxx: Fix excessive messages during device logout (Nilesh Javali) [1982186] - PCI: pciehp: Ignore Link Down/Up caused by DPC (Myron Stowe) [1981741] - arm64: kpti: Fix "kpti=off" when KASLR is enabled (Mark Salter) [1979731] - arm64: Fix CONFIG_ARCH_RANDOM=n build (Mark Salter) [1979731] - redhat/configs: aarch64: add CONFIG_ARCH_RANDOM (Mark Salter) [1979731] - arm64: Implement archrandom.h for ARMv8.5-RNG (Mark Salter) [1979731] - arm64: kconfig: Fix alignment of E0PD help text (Mark Salter) [1979731] - arm64: Use register field helper in kaslr_requires_kpti() (Mark Salter) [1979731] - arm64: Simplify early check for broken TX1 when KASLR is enabled (Mark Salter) [1979731] - arm64: Use a variable to store non-global mappings decision (Mark Salter) [1979731] - arm64: Don't use KPTI where we have E0PD (Mark Salter) [1979731] - arm64: Factor out checks for KASLR in KPTI code into separate function (Mark Salter) [1979731] - redhat/configs: Add CONFIG_ARM64_E0PD (Mark Salter) [1979731] - arm64: Add initial support for E0PD (Mark Salter) [1979731] - arm64: cpufeature: Export matrix and other features to userspace (Mark Salter) [1980098] - arm64: docs: cpu-feature-registers: Document ID_AA64PFR1_EL1 (Mark Salter) [1980098] - docs/arm64: cpu-feature-registers: Rewrite bitfields that don't follow [e, s] (Mark Salter) [1980098] - docs/arm64: cpu-feature-registers: Documents missing visible fields (Mark Salter) [1980098] - arm64: Introduce system_capabilities_finalized() marker (Mark Salter) [1980098] - arm64: entry.S: Do not preempt from IRQ before all cpufeatures are enabled (Mark Salter) [1980098] - docs/arm64: elf_hwcaps: Document HWCAP_SB (Mark Salter) [1980098] - docs/arm64: elf_hwcaps: sort the HWCAP{, 2} documentation by ascending value (Mark Salter) [1980098] - arm64: cpufeature: Treat ID_AA64ZFR0_EL1 as RAZ when SVE is not enabled (Mark Salter) [1980098] - arm64: cpufeature: Effectively expose FRINT capability to userspace (Mark Salter) [1980098] - arm64: cpufeature: Fix feature comparison for CTR_EL0.{CWG,ERG} (Mark Salter) [1980098] - arm64: Expose FRINT capabilities to userspace (Mark Salter) [1980098] - arm64: Expose ARMv8.5 CondM capability to userspace (Mark Salter) [1980098] - docs: arm64: convert perf.txt to ReST format (Mark Salter) [1980098] - docs: arm64: convert docs to ReST and rename to .rst (Mark Salter) [1980098] - Documentation/arm64: HugeTLB page implementation (Mark Salter) [1980098] - Documentation/arm64/sve: Couple of improvements and typos (Mark Salter) [1980098] - arm64: cpufeature: Fix missing ZFR0 in __read_sysreg_by_encoding() (Mark Salter) [1980098] - arm64: Expose SVE2 features for userspace (Mark Salter) [1980098] - arm64: Advertise ARM64_HAS_DCPODP cpu feature (Mark Salter) [1980098] - arm64: add CVADP support to the cache maintenance helper (Mark Salter) [1980098] - arm64: Fix minor issues with the dcache_by_line_op macro (Mark Salter) [1980098] - arm64: Expose DC CVADP to userspace (Mark Salter) [1980098] - arm64: Handle trapped DC CVADP (Mark Salter) [1980098] - arm64: HWCAP: encapsulate elf_hwcap (Mark Salter) [1980098] - arm64: HWCAP: add support for AT_HWCAP2 (Mark Salter) [1980098] - x86/MCE/AMD, EDAC/mce_amd: Add new SMCA bank types (Aristeu Rozanski) [1965331] - x86/MCE/AMD, EDAC/mce_amd: Remove struct smca_hwid.xec_bitmap (Aristeu Rozanski) [1965331] - EDAC, mce_amd: Print ExtErrorCode and description on a single line (Aristeu Rozanski) [1965331]- scsi: ibmvfc: Fix command state accounting and stale response detection (Steve Best) [1988157] - tasklist_lock, ppc64: Convert tasklist_lock to use qrwlock for ppc64 (Waiman Long) [1978377] - tasklist_lock, ppc64: Provide infrastructure to support specific use of qrwlock (Waiman Long) [1978377] - redhat/configs: Disable CONFIG_PPC_QUEUED_SPINLOCKS (Waiman Long) [1978377] - qspinlock: use signed temporaries for cmpxchg (Waiman Long) [1978377] - powerpc/qspinlock: Optimised atomic_try_cmpxchg_lock() that adds the lock hint (Waiman Long) [1978377] - powerpc/pseries: Implement paravirt qspinlocks for SPLPAR (Waiman Long) [1978377] - powerpc/64s: Implement queued spinlocks and rwlocks (Waiman Long) [1978377] - powerpc: Move spinlock implementation to simple_spinlock (Waiman Long) [1978377] - locking/spinlocks: Remove an instruction from spin and write locks (Waiman Long) [1978377] - net: Fix skb->csum update in inet_proto_csum_replace16(). (Balazs Nemeth) [1975193] - [s390] s390/dasd: fix use after free in dasd path handling (Claudio Imbrenda) [1996764] - powerpc/bpf: Fix detecting BPF atomic instructions (Viktor Malik) [1931483] - selftests/bpf: ringbuf_multi: Test bpf_map__set_inner_map_fd (Viktor Malik) [1931483] - selftests/bpf: ringbuf_multi: Use runtime page size (Viktor Malik) [1931483] - libbpf: Add bpf_map__inner_map API (Viktor Malik) [1931483] - selftests/bpf: ringbuf: Use runtime page size (Viktor Malik) [1931483] - selftests/bpf: mmap: Use runtime page size (Viktor Malik) [1931483] - selftests/bpf: Pass page size from userspace in map_ptr (Viktor Malik) [1931483] - selftests/bpf: Pass page size from userspace in sockopt_sk (Viktor Malik) [1931483] - selftests/bpf: test_progs/sockopt_sk: Convert to use BPF skeleton (Viktor Malik) [1931483] - selftests/bpf: test_progs/sockopt_sk: Remove version (Viktor Malik) [1931483] - powerpc/64s: Fix crashes when toggling entry flush barrier (Diego Domingos) [1894804] - powerpc/64s: flush L1D after user accesses (Diego Domingos) [1894804] - powerpc/uaccess: Evaluate macro arguments once, before user access is allowed (Diego Domingos) [1894804] - powerpc: Fix __clear_user() with KUAP enabled (Diego Domingos) [1894804] - powerpc: Implement user_access_begin and friends (Diego Domingos) [1894804] - powerpc: Add a framework for user access tracking (Diego Domingos) [1894804] - powerpc/64s: flush L1D on kernel entry (Diego Domingos) [1894804] - redhat: enable CONFIG_SLAB_FREELIST_HARDENED (Rafael Aquini) [1862283] - include/uapi/linux/swab.h: fix userspace breakage, use __BITS_PER_LONG for swap (Rafael Aquini) [1862283] - uapi: rename ext2_swab() to swab() and share globally in swab.h (Rafael Aquini) [1862283] - lib/timerqueue: Rely on rbtree semantics for next timer (Phil Auld) [1984798] - e1000e: Do not take care about recovery NVM checksum (Ken Cox) [1984558] - qrtr: disable CONFIG_QRTR for non x86_64 archs (Íñigo Huguet) [1999642] - ceph: fix possible null-pointer dereference in ceph_mdsmap_decode() (Jeff Layton) [1989999] - ceph: fix dereference of null pointer cf (Jeff Layton) [1989999] - ceph: correctly handle releasing an embedded cap flush (Jeff Layton) [1989999] - ceph: take snap_empty_lock atomically with snaprealm refcount change (Jeff Layton) [1989999] - ceph: don't WARN if we're still opening a session to an MDS (Jeff Layton) [1989999] - rbd: don't hold lock_rwsem while running_list is being drained (Jeff Layton) [1989999] - rbd: always kick acquire on "acquired" and "released" notifications (Jeff Layton) [1989999] - ceph: take reference to req->r_parent at point of assignment (Jeff Layton) [1989999] - ceph: eliminate ceph_async_iput() (Jeff Layton) [1989999] - ceph: don't take s_mutex in ceph_flush_snaps (Jeff Layton) [1989999] - ceph: don't take s_mutex in try_flush_caps (Jeff Layton) [1989999] - ceph: don't take s_mutex or snap_rwsem in ceph_check_caps (Jeff Layton) [1989999] - ceph: eliminate session->s_gen_ttl_lock (Jeff Layton) [1989999] - ceph: allow ceph_put_mds_session to take NULL or ERR_PTR (Jeff Layton) [1989999] - ceph: clean up locking annotation for ceph_get_snap_realm and __lookup_snap_realm (Jeff Layton) [1989999] - ceph: add some lockdep assertions around snaprealm handling (Jeff Layton) [1989999] - ceph: decoding error in ceph_update_snap_realm should return -EIO (Jeff Layton) [1989999] - ceph: add IO size metrics support (Jeff Layton) [1989999] - ceph: update and rename __update_latency helper to __update_stdev (Jeff Layton) [1989999] - ceph: simplify the metrics struct (Jeff Layton) [1989999] - libceph: fix doc warnings in cls_lock_client.c (Jeff Layton) [1989999] - libceph: remove unnecessary ret variable in ceph_auth_init() (Jeff Layton) [1989999] - libceph: kill ceph_none_authorizer::reply_buf (Jeff Layton) [1989999] - ceph: make ceph_queue_cap_snap static (Jeff Layton) [1989999] - ceph: remove bogus checks and WARN_ONs from ceph_set_page_dirty (Jeff Layton) [1989999] - libceph: set global_id as soon as we get an auth ticket (Jeff Layton) [1989999] - libceph: don't pass result into ac->ops->handle_reply() (Jeff Layton) [1989999] - ceph: fix error handling in ceph_atomic_open and ceph_lookup (Jeff Layton) [1989999] - ceph: must hold snap_rwsem when filling inode for async create (Jeff Layton) [1989999] - libceph: Fix spelling mistakes (Jeff Layton) [1989999] - libceph: don't set global_id until we get an auth ticket (Jeff Layton) [1989999] - libceph: bump CephXAuthenticate encoding version (Jeff Layton) [1989999] - ceph: don't allow access to MDS-private inodes (Jeff Layton) [1989999] - ceph: fix up some bare fetches of i_size (Jeff Layton) [1989999] - ceph: support getting ceph.dir.rsnaps vxattr (Jeff Layton) [1989999] - ceph: drop pinned_page parameter from ceph_get_caps (Jeff Layton) [1989999] - ceph: fix inode leak on getattr error in __fh_to_dentry (Jeff Layton) [1989999] - ceph: only check pool permissions for regular files (Jeff Layton) [1989999] - ceph: send opened files/pinned caps/opened inodes metrics to MDS daemon (Jeff Layton) [1989999] - ceph: avoid counting the same request twice or more (Jeff Layton) [1989999] - ceph: rename the metric helpers (Jeff Layton) [1989999] - ceph: fix kerneldoc copypasta over ceph_start_io_direct (Jeff Layton) [1989999] - ceph: don't use d_add in ceph_handle_snapdir (Jeff Layton) [1989999] - ceph: don't clobber i_snap_caps on non-I_NEW inode (Jeff Layton) [1989999] - ceph: fix fall-through warnings for Clang (Jeff Layton) [1989999] - net: ceph: Fix a typo in osdmap.c (Jeff Layton) [1989999] - ceph: don't allow type or device number to change on non-I_NEW inodes (Jeff Layton) [1989999] - ceph: defer flushing the capsnap if the Fb is used (Jeff Layton) [1989999] - ceph: allow queueing cap/snap handling after putting cap references (Jeff Layton) [1989999] - ceph: clean up inode work queueing (Jeff Layton) [1989999] - ceph: fix flush_snap logic after putting caps (Jeff Layton) [1989999] - libceph: fix "Boolean result is used in bitwise operation" warning (Jeff Layton) [1989999] - new helper: inode_wrong_type() (Jeff Layton) [1989999] - kabi: Adding symbol single_release (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol single_open (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol seq_read (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol seq_printf (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol seq_lseek (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol unregister_chrdev_region (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_init (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_del (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_alloc (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_add (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol alloc_chrdev_region (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol pcie_capability_read_word (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pcie_capability_read_dword (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pcie_capability_clear_and_set_word (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_write_config_dword (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_write_config_byte (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_set_power_state (drivers/pci/pci.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_read_config_dword (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_read_config_byte (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_irq_vector (drivers/pci/msi.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_get_device (drivers/pci/search.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_free_irq_vectors (drivers/pci/msi.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_alloc_irq_vectors_affinity (drivers/pci/msi.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol kexec_crash_loaded (kernel/kexec_core.c) (Čestmír Kalina) [1945491] - perf/x86/intel: Fix PEBS-via-PT reload base value for Extended PEBS (Michael Petlan) [1998051] - perf/x86/intel/uncore: Fix Add BW copypasta (Michael Petlan) [1998051] - perf/x86/intel/uncore: Add BW counters for GT, IA and IO breakdown (Michael Petlan) [1998051] - Revert "ice: Add initial support framework for LAG" (Michal Schmidt) [1999016] - net: re-initialize slow_gro flag at gro_list_prepare time (Paolo Abeni) [2002367] - cxgb4: dont touch blocked freelist bitmap after free (Rahul Lakkireddy) [1998148] - cxgb4vf: configure ports accessible by the VF (Rahul Lakkireddy) [1961329] - scsi: lpfc: Fix memory leaks in error paths while issuing ELS RDF/SCR request (Dick Kennedy) [1976332] - scsi: lpfc: Keep NDLP reference until after freeing the IOCB after ELS handling (Dick Kennedy) [1976332] - scsi: lpfc: Move initialization of phba->poll_list earlier to avoid crash (Dick Kennedy) [1976332]- md/raid10: properly indicate failure when ending a failed write request (Nigel Croxon) [1983859] - md: Constify attribute_group structs (Nigel Croxon) [1983859] - md: mark some personalities as deprecated (Nigel Croxon) [1983859] - md/raid1: rename print_msg with r1bio_existed (Nigel Croxon) [1983859] - async_xor: check src_offs is not NULL before updating it (Nigel Croxon) [1983859] - async_xor: increase src_offs when dropping destination page (Nigel Croxon) [1983859] - md/raid5: reallocate page array after setting new stripe_size (Nigel Croxon) [1983859] - md/raid5: resize stripe_head when reshape array (Nigel Croxon) [1983859] - md/raid5: let multiple devices of stripe_head share page (Nigel Croxon) [1983859] - md/raid6: let async recovery function support different page offset (Nigel Croxon) [1983859] - md/raid6: let syndrome computor support different page offset (Nigel Croxon) [1983859] - md/raid5: convert to new xor compution interface (Nigel Croxon) [1983859] - md/raid5: add new xor function to support different page offset (Nigel Croxon) [1983859] - md/raid5: make async_copy_data() to support different page offset (Nigel Croxon) [1983859] - md/raid5: add a new member of offset into r5dev (Nigel Croxon) [1983859] - x86/cpu: Update cached HLE state on write to TSX_CTRL_CPUID_CLEAR (Jay Shin) [1994421] - crypto: ccp - Add support for new CCP/PSP device ID (Vladis Dronov) [1987094] - crypto: ccp - shutdown SEV firmware on kexec (Vladis Dronov) [1987094] - crypto: ccp - Use list_move_tail instead of list_del/list_add_tail in ccp-dmaengine.c (Vladis Dronov) [1987094] - crypto: ccp: ccp-dev: Fix a little doc-rot (Vladis Dronov) [1987094] - crypto: ccp - Fix a resource leak in an error handling path (Vladis Dronov) [1987094] - crypto: ccp - Annotate SEV Firmware file names (Vladis Dronov) [1987094] - crypto: ccp - Make ccp_dev_suspend and ccp_dev_resume void functions (Vladis Dronov) [1987094] - crypto: ccp - Use DEFINE_SPINLOCK() for spinlock (Vladis Dronov) [1987094] - crypto: ccp - A value assigned to a variable is never used (Vladis Dronov) [1987094] - crypto: ccp - Don't initialize SEV support without the SEV feature (Vladis Dronov) [1987094] - crypto: ccp - fix error handling (Vladis Dronov) [1987094] - crypto: ccp - use generic power management (Vladis Dronov) [1987094] - crypto: drivers - set the flag CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1987094] - crypto: ahash - remove useless setting of type flags (Vladis Dronov) [1987094] - crypto: ccp - Silence strncpy warning (Vladis Dronov) [1987094] - crypto: ccp - permit asynchronous skcipher as fallback (Vladis Dronov) [1987094] - crypto: ccp - Fix sparse warnings (Vladis Dronov) [1987094] - crypto: ccp - Update CCP driver maintainer information (Vladis Dronov) [1987094] - crypto: ccp - Fix use of merged scatterlists (Vladis Dronov) [1987094] - crypto: ccp - remove redundant assignment to variable ret (Vladis Dronov) [1987094] - crypto: ccp - use crypto_shash_tfm_digest() (Vladis Dronov) [1987094] - crypto: hash - introduce crypto_shash_tfm_digest() (Vladis Dronov) [1987094] - crypto: ccp -- don't "select" CONFIG_DMADEVICES (Vladis Dronov) [1987094] - crypto: ccp - Update MAINTAINERS for CCP driver (Vladis Dronov) [1987094] - crypto: ccp - switch from ablkcipher to skcipher (Vladis Dronov) [1987094] - ipc: replace costly bailout check in sysvipc_find_ipc() (Rafael Aquini) [1980619 1987128] {CVE-2021-3669} - ipc/util.c: sysvipc_find_ipc() incorrectly updates position index (Rafael Aquini) [1980619 1987128] {CVE-2021-3669} - ipc/util.c: sysvipc_find_ipc() should increase position index (Rafael Aquini) [1980619 1987128] {CVE-2021-3669} - psi: Fix psi state corruption when schedule() races with cgroup move (Waiman Long) [2002025] - psi: Optimize task switch inside shared cgroups (Waiman Long) [2002025] - kthread: Fix PF_KTHREAD vs to_kthread() race (Waiman Long) [2002025] - sched/fair: Ignore percpu threads for imbalance pulls (Waiman Long) [2002025] - sched: Fix get_push_task() vs migrate_disable() (Waiman Long) [2002025] - sched: Don't defer CPU pick to migration_cpu_stop() (Waiman Long) [2002025] - sched: Simplify migration_cpu_stop() (Waiman Long) [2002025] - sched: Simplify set_affinity_pending refcounts (Waiman Long) [2002025] - sched: Fix affine_move_task() self-concurrency (Waiman Long) [2002025] - sched: Optimize migration_cpu_stop() (Waiman Long) [2002025] - sched: Collate affine_move_task() stoppers (Waiman Long) [2002025] - sched: Simplify migration_cpu_stop() (Waiman Long) [2002025] - sched: Fix migration_cpu_stop() requeueing (Waiman Long) [2002025] - sched: Relax the set_cpus_allowed_ptr() semantics (Waiman Long) [2002025] - sched: Fix CPU hotplug / tighten is_per_cpu_kthread() (Waiman Long) [2002025] - sched: Prepare to use balance_push in ttwu() (Waiman Long) [2002025] - workqueue: Restrict affinity change to rescuer (Waiman Long) [2002025] - workqueue: Tag bound workers with KTHREAD_IS_PER_CPU (Waiman Long) [2002025] - kthread: Extract KTHREAD_IS_PER_CPU (Waiman Long) [2002025] - sched: Don't run cpu-online with balance_push() enabled (Waiman Long) [2002025] - workqueue: Use cpu_possible_mask instead of cpu_active_mask to break affinity (Waiman Long) [2002025] - sched/core: Print out straggler tasks in sched_cpu_dying() (Waiman Long) [2002025] - sched: Optimize finish_lock_switch() (Waiman Long) [2002025] - sched: Fix migration_cpu_stop() WARN (Waiman Long) [2002025] - sched/core: Add missing completion for affine_move_task() waiters (Waiman Long) [2002025] - stop_machine, rcu: Mark functions as notrace (Waiman Long) [2002025] - sched: Comment affine_move_task() (Waiman Long) [2002025] - sched: Deny self-issued __set_cpus_allowed_ptr() when migrate_disable() (Waiman Long) [2002025] - sched/proc: Print accurate cpumask vs migrate_disable() (Waiman Long) [2002025] - sched: Make migrate_disable/enable() independent of RT (Waiman Long) [2002025] - sched: Fix migrate_disable() vs rt/dl balancing (Waiman Long) [2002025] - sched, lockdep: Annotate ->pi_lock recursion (Waiman Long) [2002025] - sched,rt: Use the full cpumask for balancing (Waiman Long) [2002025] - sched,rt: Use cpumask_any*_distribute() (Waiman Long) [2002025] - sched/core: Make migrate disable and CPU hotplug cooperative (Waiman Long) [2002025] - sched: Fix migrate_disable() vs set_cpus_allowed_ptr() (Waiman Long) [2002025] - sched: Add migrate_disable() (Waiman Long) [2002025] - sched: Massage set_cpus_allowed() (Waiman Long) [2002025] - sched: Fix hotplug vs CPU bandwidth control (Waiman Long) [2002025] - sched/hotplug: Consolidate task migration on CPU unplug (Waiman Long) [2002025] - workqueue: Manually break affinity on hotplug (Waiman Long) [2002025] - sched/core: Wait for tasks being pushed away on hotplug (Waiman Long) [2002025] - sched/hotplug: Ensure only per-cpu kthreads run during hotplug (Waiman Long) [2002025] - sched: Fix balance_callback() (Waiman Long) [2002025] - maccess: rename probe_kernel_{read,write} to copy_{from,to}_kernel_nofault (Waiman Long) [2002025] - s390/ftrace: fix potential crashes when switching tracers (Waiman Long) [2002025] - psi: Move PF_MEMSTALL out of task->flags (Waiman Long) [2002025] - psi: Optimize switching tasks inside shared cgroups (Waiman Long) [2002025] - psi: Fix cpu.pressure for cpu.max and competing cgroups (Waiman Long) [2002025] - stop_machine: Make stop_cpus() static (Waiman Long) [2002025] - stop_machine: remove try_stop_cpus helper (Waiman Long) [2002025] - kernel.h: Add non_block_start/end() (Waiman Long) [2002025] - processor: get rid of cpu_relax_yield (Waiman Long) [2002025] - processor: remove spin_cpu_yield (Waiman Long) [2002025] - s390: improve wait logic of stop_machine (Waiman Long) [2002025] - sched/core: Fix typo in comment (Waiman Long) [2002025] - ia64/tlb: Eradicate tlb_migrate_finish() callback (Waiman Long) [2002025] - sched/core: Remove unnecessary unlikely() in push_*_task() (Waiman Long) [2002025] - sched/fair: Reduce long-tail newly idle balance cost (Phil Auld) [1971918] - hwmon: (acpi_power_meter) Fix lockdep splat (Waiman Long) [1997807] - redhat: open the RHEL-8.6 development (Augusto Caringi) [2000679] - rcu: Avoid unneeded function call in rcu_read_unlock() (Waiman Long) [1997500] - mt76: connac: do not schedule mac_work if the device is not running (Íñigo Huguet) [1956419 1972045] - mt7921e: enable module in config (Íñigo Huguet) [1956419 1972045] - Revert tools/power/cpupower: Read energy_perf_bias from sysfs (Steve Best) [1999926] - libnvdimm/namespace: Differentiate between probe mapping and runtime mapping (Jeff Moyer) [1795719] - libnvdimm/pfn_dev: Don't clear device memmap area during generic namespace probe (Jeff Moyer) [1795719] - perf/x86/intel/uncore: Clean up error handling path of iio mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix for iio mapping on Skylake Server (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MMIO type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the PCI type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Rename uncore_notifier to uncore_pci_sub_notifier (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MSR type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Parse uncore discovery tables (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to IIO PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Wrap the max dies calculation into an accessor (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Validate MMIO address before accessing (Michael Petlan) [1837330] - perf/x86/intel/uncore: Record the size of mapped area (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix oops when counting IMC uncore events on some TGL (Michael Petlan) [1837330] - crypto: qat - remove unused macro in FW loader (Vladis Dronov) [1920086] - crypto: qat - check return code of qat_hal_rd_rel_reg() (Vladis Dronov) [1920086] - crypto: qat - report an error if MMP file size is too large (Vladis Dronov) [1920086] - crypto: qat - check MMP size before writing to the SRAM (Vladis Dronov) [1920086] - crypto: qat - return error when failing to map FW (Vladis Dronov) [1920086] - crypto: qat - enable detection of accelerators hang (Vladis Dronov) [1920086] - crypto: qat - Fix a double free in adf_create_ring (Vladis Dronov) [1920086] - crypto: qat - fix error path in adf_isr_resource_alloc() (Vladis Dronov) [1920086] - crypto: qat - ADF_STATUS_PF_RUNNING should be set after adf_dev_init (Vladis Dronov) [1920086] - crypto: qat - don't release uninitialized resources (Vladis Dronov) [1920086] - crypto: qat - fix use of 'dma_map_single' (Vladis Dronov) [1920086] - crypto: qat - fix unmap invalid dma address (Vladis Dronov) [1920086] - crypto: qat - fix spelling mistake: "messge" -> "message" (Vladis Dronov) [1920086] - crypto: qat - reduce size of mapped region (Vladis Dronov) [1920086] - crypto: qat - change format string and cast ring size (Vladis Dronov) [1920086] - crypto: qat - fix potential spectre issue (Vladis Dronov) [1920086] - crypto: qat - configure arbiter mapping based on engines enabled (Vladis Dronov) [1920086] - selftest: netfilter: add test case for unreplied tcp connections (Florian Westphal) [1991523] - netfilter: conntrack: do not renew entry stuck in tcp SYN_SENT state (Florian Westphal) [1991523] - net/sched: store the last executed chain also for clsact egress (Davide Caratti) [1980537] - ice: fix Tx queue iteration for Tx timestamp enablement (Ken Cox) [1999743] - perf evsel: Add missing cloning of evsel->use_config_name (Michael Petlan) [1838635] - perf Documentation: Document intel-hybrid support (Michael Petlan) [1838635] - perf tests: Skip 'perf stat metrics (shadow stat) test' for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Convert perf time to TSC' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Session topology' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Parse and process metrics' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Track with sched_switch' test for hybrid (Michael Petlan) [1838635] - perf tests: Skip 'Setup struct perf_event_attr' test for hybrid (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Roundtrip evsel->name' test (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Parse event definition strings' test (Michael Petlan) [1838635] - perf record: Uniquify hybrid event name (Michael Petlan) [1838635] - perf stat: Warn group events from different hybrid PMU (Michael Petlan) [1838635] - perf stat: Filter out unmatched aggregation for hybrid event (Michael Petlan) [1838635] - perf stat: Add default hybrid events (Michael Petlan) [1838635] - perf record: Create two hybrid 'cycles' events by default (Michael Petlan) [1838635] - perf parse-events: Support event inside hybrid pmu (Michael Petlan) [1838635] - perf parse-events: Compare with hybrid pmu name (Michael Petlan) [1838635] - perf parse-events: Create two hybrid raw events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid cache events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid hardware events (Michael Petlan) [1838635] - perf stat: Uniquify hybrid event name (Michael Petlan) [1838635] - perf pmu: Add hybrid helper functions (Michael Petlan) [1838635] - perf pmu: Save detected hybrid pmus to a global pmu list (Michael Petlan) [1838635] - perf pmu: Save pmu name (Michael Petlan) [1838635] - perf pmu: Simplify arguments of __perf_pmu__new_alias (Michael Petlan) [1838635] - perf jevents: Support unit value "cpu_core" and "cpu_atom" (Michael Petlan) [1838635] - tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1838635]- rcu: Avoid unneeded function call in rcu_read_unlock() (Waiman Long) [1997500] - mt76: connac: do not schedule mac_work if the device is not running (Íñigo Huguet) [1956419 1972045] - mt7921e: enable module in config (Íñigo Huguet) [1956419 1972045] - Revert tools/power/cpupower: Read energy_perf_bias from sysfs (Steve Best) [1999926] - libnvdimm/namespace: Differentiate between probe mapping and runtime mapping (Jeff Moyer) [1795719] - libnvdimm/pfn_dev: Don't clear device memmap area during generic namespace probe (Jeff Moyer) [1795719] - perf/x86/intel/uncore: Clean up error handling path of iio mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix for iio mapping on Skylake Server (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MMIO type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the PCI type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Rename uncore_notifier to uncore_pci_sub_notifier (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MSR type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Parse uncore discovery tables (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to IIO PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Wrap the max dies calculation into an accessor (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Validate MMIO address before accessing (Michael Petlan) [1837330] - perf/x86/intel/uncore: Record the size of mapped area (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix oops when counting IMC uncore events on some TGL (Michael Petlan) [1837330] - crypto: qat - remove unused macro in FW loader (Vladis Dronov) [1920086] - crypto: qat - check return code of qat_hal_rd_rel_reg() (Vladis Dronov) [1920086] - crypto: qat - report an error if MMP file size is too large (Vladis Dronov) [1920086] - crypto: qat - check MMP size before writing to the SRAM (Vladis Dronov) [1920086] - crypto: qat - return error when failing to map FW (Vladis Dronov) [1920086] - crypto: qat - enable detection of accelerators hang (Vladis Dronov) [1920086] - crypto: qat - Fix a double free in adf_create_ring (Vladis Dronov) [1920086] - crypto: qat - fix error path in adf_isr_resource_alloc() (Vladis Dronov) [1920086] - crypto: qat - ADF_STATUS_PF_RUNNING should be set after adf_dev_init (Vladis Dronov) [1920086] - crypto: qat - don't release uninitialized resources (Vladis Dronov) [1920086] - crypto: qat - fix use of 'dma_map_single' (Vladis Dronov) [1920086] - crypto: qat - fix unmap invalid dma address (Vladis Dronov) [1920086] - crypto: qat - fix spelling mistake: "messge" -> "message" (Vladis Dronov) [1920086] - crypto: qat - reduce size of mapped region (Vladis Dronov) [1920086] - crypto: qat - change format string and cast ring size (Vladis Dronov) [1920086] - crypto: qat - fix potential spectre issue (Vladis Dronov) [1920086] - crypto: qat - configure arbiter mapping based on engines enabled (Vladis Dronov) [1920086]- selftest: netfilter: add test case for unreplied tcp connections (Florian Westphal) [1991523] - netfilter: conntrack: do not renew entry stuck in tcp SYN_SENT state (Florian Westphal) [1991523] - net/sched: store the last executed chain also for clsact egress (Davide Caratti) [1980537] - ice: fix Tx queue iteration for Tx timestamp enablement (Ken Cox) [1999743] - perf evsel: Add missing cloning of evsel->use_config_name (Michael Petlan) [1838635] - perf Documentation: Document intel-hybrid support (Michael Petlan) [1838635] - perf tests: Skip 'perf stat metrics (shadow stat) test' for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Convert perf time to TSC' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Session topology' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Parse and process metrics' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Track with sched_switch' test for hybrid (Michael Petlan) [1838635] - perf tests: Skip 'Setup struct perf_event_attr' test for hybrid (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Roundtrip evsel->name' test (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Parse event definition strings' test (Michael Petlan) [1838635] - perf record: Uniquify hybrid event name (Michael Petlan) [1838635] - perf stat: Warn group events from different hybrid PMU (Michael Petlan) [1838635] - perf stat: Filter out unmatched aggregation for hybrid event (Michael Petlan) [1838635] - perf stat: Add default hybrid events (Michael Petlan) [1838635] - perf record: Create two hybrid 'cycles' events by default (Michael Petlan) [1838635] - perf parse-events: Support event inside hybrid pmu (Michael Petlan) [1838635] - perf parse-events: Compare with hybrid pmu name (Michael Petlan) [1838635] - perf parse-events: Create two hybrid raw events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid cache events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid hardware events (Michael Petlan) [1838635] - perf stat: Uniquify hybrid event name (Michael Petlan) [1838635] - perf pmu: Add hybrid helper functions (Michael Petlan) [1838635] - perf pmu: Save detected hybrid pmus to a global pmu list (Michael Petlan) [1838635] - perf pmu: Save pmu name (Michael Petlan) [1838635] - perf pmu: Simplify arguments of __perf_pmu__new_alias (Michael Petlan) [1838635] - perf jevents: Support unit value "cpu_core" and "cpu_atom" (Michael Petlan) [1838635] - tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1838635]- mptcp: Only send extra TCP acks in eligible socket states (Paolo Abeni) [1997178] - mptcp: fix possible divide by zero (Paolo Abeni) [1997178] - mptcp: drop tx skb cache (Paolo Abeni) [1997178] - mptcp: fix memory leak on address flush (Paolo Abeni) [1997178] - ice: Only lock to update netdev dev_addr (Michal Schmidt) [1995868] - ice: restart periodic outputs around time changes (Ken Cox) [1992750] - ice: Fix perout start time rounding (Ken Cox) [1992750] - net/sched: ets: fix crash when flipping from 'strict' to 'quantum' (Davide Caratti) [1981184] - ovl: prevent private clone if bind mount is not allowed (Miklos Szeredi) [1993131] {CVE-2021-3732} - gfs2: Don't call dlm after protocol is unmounted (Bob Peterson) [1997193] - gfs2: don't stop reads while withdraw in progress (Bob Peterson) [1997193] - gfs2: Mark journal inodes as "don't cache" (Bob Peterson) [1997193] - bpf: bpftool: Add -fno-asynchronous-unwind-tables to BPF Clang invocation (Yauheni Kaliuta) [1997124] - perf/x86/intel: Apply mid ACK for small core (Michael Petlan) [1838573] - perf/x86/intel/lbr: Zero the xstate buffer on allocation (Michael Petlan) [1838573] - perf: Fix task context PMU for Hetero (Michael Petlan) [1838573] - perf/x86/intel: Fix fixed counter check warning for some Alder Lake (Michael Petlan) [1838573] - perf/x86/lbr: Remove cpuc->lbr_xsave allocation from atomic context (Michael Petlan) [1838573] - x86/fpu/xstate: Fix an xstate size check warning with architectural LBRs (Michael Petlan) [1838573] - perf/x86/rapl: Add support for Intel Alder Lake (Michael Petlan) [1838573] - perf/x86/cstate: Add Alder Lake CPU support (Michael Petlan) [1838573] - perf/x86/msr: Add Alder Lake CPU support (Michael Petlan) [1838573] - perf/x86/intel/uncore: Add Alder Lake support (Michael Petlan) [1838573] - perf: Extend PERF_TYPE_HARDWARE and PERF_TYPE_HW_CACHE (Michael Petlan) [1838573] - perf/x86/intel: Add Alder Lake Hybrid support (Michael Petlan) [1838573] - perf/x86: Support filter_match callback (Michael Petlan) [1838573] - perf/x86/intel: Add attr_update for Hybrid PMUs (Michael Petlan) [1838573] - perf/x86: Add structures for the attributes of Hybrid PMUs (Michael Petlan) [1838573] - perf/x86: Register hybrid PMUs (Michael Petlan) [1838573] - perf/x86: Factor out x86_pmu_show_pmu_cap (Michael Petlan) [1838573] - perf/x86: Remove temporary pmu assignment in event_init (Michael Petlan) [1838573] - perf/x86/intel: Factor out intel_pmu_check_extra_regs (Michael Petlan) [1838573] - perf/x86/intel: Factor out intel_pmu_check_event_constraints (Michael Petlan) [1838573] - perf/x86/intel: Factor out intel_pmu_check_num_counters (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for extra_regs (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for event constraints (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for hardware cache event (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for unconstrained (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for counters (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for intel_ctrl (Michael Petlan) [1838573] - perf/x86/intel: Hybrid PMU support for perf capabilities (Michael Petlan) [1838573] - perf/x86: Track pmu in per-CPU cpu_hw_events (Michael Petlan) [1838573] - perf/x86/intel/lbr: Support XSAVES for arch LBR read (Michael Petlan) [1838573] - perf/x86/intel/lbr: Support XSAVES/XRSTORS for LBR context switch (Michael Petlan) [1838573] - x86/fpu/xstate: Add helpers for LBR dynamic supervisor feature (Michael Petlan) [1838573] - x86/fpu/xstate: Support dynamic supervisor feature for LBR (Michael Petlan) [1838573] - x86/fpu: Use proper mask to replace full instruction mask (Michael Petlan) [1838573] - x86/cpu: Add helper function to get the type of the current hybrid CPU (Michael Petlan) [1838573] - x86/cpufeatures: Enumerate Intel Hybrid Technology feature bit (Michael Petlan) [1838573] - HID: make arrays usage and value to be the same (Benjamin Tissoires) [1974942] - ACPI: PM: s2idle: Invert Microsoft UUID entry and exit (David Arcari) [1960440] - platform/x86: amd-pmc: Fix undefined reference to __udivdi3 (David Arcari) [1960440] - platform/x86: amd-pmc: Fix missing unlock on error in amd_pmc_send_cmd() (David Arcari) [1960440] - platform/x86: amd-pmc: Use return code on suspend (David Arcari) [1960440] - platform/x86: amd-pmc: Add new acpi id for future PMC controllers (David Arcari) [1960440] - platform/x86: amd-pmc: Add support for ACPI ID AMDI0006 (David Arcari) [1960440] - platform/x86: amd-pmc: Add support for logging s0ix counters (David Arcari) [1960440] - platform/x86: amd-pmc: Add support for logging SMU metrics (David Arcari) [1960440] - platform/x86: amd-pmc: call dump registers only once (David Arcari) [1960440] - platform/x86: amd-pmc: Fix SMU firmware reporting mechanism (David Arcari) [1960440] - platform/x86: amd-pmc: Fix command completion code (David Arcari) [1960440] - usb: pci-quirks: disable D3cold on xhci suspend for s2idle on AMD Renoir (David Arcari) [1960440] - ACPI: PM: Only mark EC GPE for wakeup on Intel systems (David Arcari) [1960440] - ACPI: PM: Adjust behavior for field problems on AMD systems (David Arcari) [1960440] - ACPI: PM: s2idle: Add support for new Microsoft UUID (David Arcari) [1960440] - ACPI: PM: s2idle: Add support for multiple func mask (David Arcari) [1960440] - ACPI: PM: s2idle: Refactor common code (David Arcari) [1960440] - ACPI: PM: s2idle: Use correct revision id (David Arcari) [1960440] - ACPI: PM: s2idle: Add missing LPS0 functions for AMD (David Arcari) [1960440] - lockd: Fix invalid lockowner cast after vfs_test_lock (Benjamin Coddington) [1986138]- blk-mq: fix is_flush_rq (Ming Lei) [1992700] - blk-mq: fix kernel panic during iterating over flush request (Ming Lei) [1992700]- smb2: fix use-after-free in smb2_ioctl_query_info() (Ronnie Sahlberg) [1952781] - dm crypt: Avoid percpu_counter spinlock contention in crypt_page_alloc() (Mike Snitzer) [1996854] - md/raid10: Remove rcu_dereference when it doesn't need rcu lock to protect (Nigel Croxon) [1978115] - scsi: csiostor: Mark known unused variable as __always_unused (Raju Rangoju) [1961333] - scsi: csiostor: Fix wrong return value in csio_hw_prep_fw() (Raju Rangoju) [1961333] - scsi: csiostor: Remove set but not used variable 'rln' (Raju Rangoju) [1961333] - scsi: csiostor: Return value not required for csio_dfs_destroy (Raju Rangoju) [1961333] - scsi: csiostor: Fix NULL check before debugfs_remove_recursive (Raju Rangoju) [1961333] - scsi: csiostor: Don't enable IRQs too early (Raju Rangoju) [1961333] - scsi: csiostor: Fix spelling typos (Raju Rangoju) [1961333] - scsi: csiostor: Prefer pcie_capability_read_word() (Raju Rangoju) [1961333] - scsi: target: cxgbit: Unmap DMA buffer before calling target_execute_cmd() (Raju Rangoju) [1961394] - net: Use skb_frag_off accessors (Raju Rangoju) [1961394] - net: Use skb accessors in network drivers (Raju Rangoju) [1961394] - cxgb4/chtls/cxgbit: Keeping the max ofld immediate data size same in cxgb4 and ulds (Raju Rangoju) [1961394] - scsi: libcxgbi: Fix a use after free in cxgbi_conn_xmit_pdu() (Raju Rangoju) [1961394] - scsi: libcxgbi: Use kvzalloc instead of opencoded kzalloc/vzalloc (Raju Rangoju) [1961394] - scsi: libcxgbi: Remove unnecessary NULL checks for 'tdata' pointer (Raju Rangoju) [1961394] - scsi: cxgb4i: Remove an unnecessary NULL check for 'cconn' pointer (Raju Rangoju) [1961394] - scsi: cxgb4i: Clean up a debug printk (Raju Rangoju) [1961394] - scsi: cxgb4i: Fix dereference of pointer tdata before it is null checked (Raju Rangoju) [1961394] - scsi: libcxgbi: fix NULL pointer dereference in cxgbi_device_destroy() (Raju Rangoju) [1961394] - scsi: libcxgbi: remove unused function to stop warning (Raju Rangoju) [1961394] - scsi: libcxgbi: add a check for NULL pointer in cxgbi_check_route() (Raju Rangoju) [1961394] - net/chelsio: Delete drive and module versions (Raju Rangoju) [1961394] - chelsio: Replace zero-length array with flexible-array member (Raju Rangoju) [1961394] - [netdrv] treewide: prefix header search paths with $(srctree)/ (Raju Rangoju) [1961394] - libcxgb: fix incorrect ppmax calculation (Raju Rangoju) [1961394] - scsi: cxgb4i: Fix TLS dependency (Raju Rangoju) [1961394] - [target] treewide: Use fallthrough pseudo-keyword (Raju Rangoju) [1961394] - scsi: cxgb4i: Add support for iSCSI segmentation offload (Raju Rangoju) [1961394] - [target] treewide: Use sizeof_field() macro (Raju Rangoju) [1961394] - [target] treewide: replace '---help---' in Kconfig files with 'help' (Raju Rangoju) [1961394] - scsi: cxgb4i: Remove superfluous null check (Raju Rangoju) [1961394]- KVM: nSVM: avoid picking up unsupported bits from L2 in int_ctl (CVE-2021-3653) (Jon Maloy) [1985413] {CVE-2021-3653} - KVM: nSVM: always intercept VMLOAD/VMSAVE when nested (CVE-2021-3656) (Jon Maloy) [1985430] {CVE-2021-3656} - drm/i915/rkl: Remove require_force_probe protection (Lyude Paul) [1985159] - drm/i915/display: support ddr5 mem types (Lyude Paul) [1992233] - drm/i915/adl_s: Update ddi buf translation tables (Lyude Paul) [1992233] - drm/i915/adl_s: Wa_14011765242 is also needed on A1 display stepping (Lyude Paul) [1992233] - drm/i915/adl_s: Extend Wa_1406941453 (Lyude Paul) [1992233] - drm/i915: Implement Wa_1508744258 (Lyude Paul) [1992233] - drm/i915/adl_s: Fix dma_mask_size to 39 bit (Lyude Paul) [1992233] - drm/i915: Add the missing adls vswing tables (Lyude Paul) [1992233] - drm/i915: Add Wa_14011060649 (Lyude Paul) [1992233] - drm/i915/adl_s: Add Interrupt Support (Lyude Paul) [1992233] - drm/amdgpu: add another Renoir DID (Lyude Paul) [1980900]- net/mlx5: Fix flow table chaining (Amir Tzin) [1987139] - openvswitch: fix sparse warning incorrect type (Mark Gray) [1992773] - openvswitch: fix alignment issues (Mark Gray) [1992773] - openvswitch: update kdoc OVS_DP_ATTR_PER_CPU_PIDS (Mark Gray) [1992773] - openvswitch: Introduce per-cpu upcall dispatch (Mark Gray) [1992773] - KVM: X86: Expose bus lock debug exception to guest (Paul Lai) [1842322] - KVM: X86: Add support for the emulation of DR6_BUS_LOCK bit (Paul Lai) [1842322] - scsi: libfc: Fix array index out of bound exception (Chris Leech) [1972643] - scsi: libfc: FDMI enhancements (Chris Leech) [1972643] - scsi: libfc: Add FDMI-2 attributes (Chris Leech) [1972643] - scsi: qedf: Add vendor identifier attribute (Chris Leech) [1972643] - scsi: libfc: Initialisation of RHBA and RPA attributes (Chris Leech) [1972643] - scsi: libfc: Correct the condition check and invalid argument passed (Chris Leech) [1972643] - scsi: libfc: Work around -Warray-bounds warning (Chris Leech) [1972643] - scsi: fc: FDMI enhancement (Chris Leech) [1972643] - scsi: libfc: Move scsi/fc_encode.h to libfc (Chris Leech) [1972643] - scsi: fc: Correct RHBA attributes length (Chris Leech) [1972643] - block: return ELEVATOR_DISCARD_MERGE if possible (Ming Lei) [1991976] - x86/fpu: Prevent state corruption in __fpu__restore_sig() (Terry Bowman) [1970086] - x86/fpu: Invalidate FPU state after a failed XRSTOR from a user buffer (Terry Bowman) [1970086] - x86/pkru: Write hardware init value to PKRU when xstate is init (Terry Bowman) [1970086] - x86/process: Check PF_KTHREAD and not current->mm for kernel threads (Terry Bowman) [1970086] - x86/fpu: Add address range checks to copy_user_to_xstate() (Terry Bowman) [1970086] - selftests/x86: Test signal frame XSTATE header corruption handling (Terry Bowman) [1970086] - Bump DRM backport version to 5.12.14 (Lyude Paul) [1944405] - drm/i915: Use the correct max source link rate for MST (Lyude Paul) [1944405 1966599] - drm/dp_mst: Use Extended Base Receiver Capability DPCD space (Lyude Paul) [1944405 1966599] - drm/i915/display: Defeature PSR2 for RKL and ADL-S (Lyude Paul) [1944405] - drm/i915/adl_s: ADL-S platform Update PCI ids for Mobile BGA (Lyude Paul) [1944405] - drm/amdgpu: wait for moving fence after pinning (Lyude Paul) [1944405] - drm/radeon: wait for moving fence after pinning (Lyude Paul) [1944405] - drm/nouveau: wait for moving fence after pinning v2 (Lyude Paul) [1944405] - radeon: use memcpy_to/fromio for UVD fw upload (Lyude Paul) [1944405] - drm/amd/amdgpu:save psp ring wptr to avoid attack (Lyude Paul) [1944405] - drm/amd/display: Fix potential memory leak in DMUB hw_init (Lyude Paul) [1944405] - drm/amdgpu: refine amdgpu_fru_get_product_info (Lyude Paul) [1944405] - drm/amd/display: Allow bandwidth validation for 0 streams. (Lyude Paul) [1944405] - drm: Lock pointer access in drm_master_release() (Lyude Paul) [1944405] - drm: Fix use-after-free read in drm_getunique() (Lyude Paul) [1944405] - drm/amdgpu: make sure we unpin the UVD BO (Lyude Paul) [1944405] - drm/amdgpu: Don't query CE and UE errors (Lyude Paul) [1944405] - drm/amdgpu/jpeg3: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/jpeg2.5: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/vcn3: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - amdgpu: fix GEM obj leak in amdgpu_display_user_framebuffer_create (Lyude Paul) [1944405] - drm/i915/selftests: Fix return value check in live_breadcrumbs_smoketest() (Lyude Paul) [1944405] - drm/amdgpu: stop touching sched.ready in the backend (Lyude Paul) [1944405] - drm/amd/amdgpu: fix a potential deadlock in gpu reset (Lyude Paul) [1944405] - drm/amdgpu: Fix a use-after-free (Lyude Paul) [1944405] - drm/amd/amdgpu: fix refcount leak (Lyude Paul) [1944405] - drm/amd/display: Disconnect non-DP with no EDID (Lyude Paul) [1944405] - drm/amdgpu/jpeg2.0: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/vcn2.5: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/vcn2.0: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdkfd: correct sienna_cichlid SDMA RLC register offset error (Lyude Paul) [1944405] - drm/amdgpu/vcn1: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amd/pm: correct MGpuFanBoost setting (Lyude Paul) [1944405] - drm/i915: Reenable LTTPR non-transparent LT mode for DPCD_REV<1.4 (Lyude Paul) [1944405] - drm/i915/gt: Disable HiZ Raw Stall Optimization on broken gen7 (Lyude Paul) [1944405] - dma-buf: fix unintended pin/unpin warnings (Lyude Paul) [1944405] - drm/amdgpu: update sdma golden setting for Navi12 (Lyude Paul) [1944405] - drm/amdgpu: update gc golden setting for Navi12 (Lyude Paul) [1944405] - drm/amdgpu: disable 3DCGCG on picasso/raven1 to avoid compute hang (Lyude Paul) [1944405] - drm/amdgpu: Fix GPU TLB update error when PAGE_SIZE > AMDGPU_PAGE_SIZE (Lyude Paul) [1944405] - drm/radeon: use the dummy page for GART if needed (Lyude Paul) [1944405] - drm/amd/display: Use the correct max downscaling value for DCN3.x family (Lyude Paul) [1944405] - drm/i915/gem: Pin the L-shape quirked object as unshrinkable (Lyude Paul) [1944405] - drm/ttm: Do not add non-system domain BO into swap list (Lyude Paul) [1944405] - drm/amd/display: Fix two cursor duplication when using overlay (Lyude Paul) [1944405] - amdgpu/pm: Prevent force of DCEFCLK on NAVI10 and SIENNA_CICHLID (Lyude Paul) [1944405] - drm/i915/display: fix compiler warning about array overrun (Lyude Paul) [1944405] - drm/i915: Fix crash in auto_retire (Lyude Paul) [1944405] - drm/i915/overlay: Fix active retire callback alignment (Lyude Paul) [1944405] - drm/i915: Read C0DRB3/C1DRB3 as 16 bits again (Lyude Paul) [1944405] - drm/i915/gt: Fix a double free in gen8_preallocate_top_level_pdp (Lyude Paul) [1944405] - drm/i915/dp: Use slow and wide link training for everything (Lyude Paul) [1944405] - drm/i915: Avoid div-by-zero on gen2 (Lyude Paul) [1944405] - drm/amd/display: Initialize attribute for hdcp_srm sysfs file (Lyude Paul) [1944405] - drm/radeon/dpm: Disable sclk switching on Oland when two 4K 60Hz monitors are connected (Lyude Paul) [1944405] - drm/radeon: Avoid power table parsing memory leaks (Lyude Paul) [1944405] - drm/radeon: Fix off-by-one power_state index heap overwrite (Lyude Paul) [1944405] - drm/amdgpu: Add mem sync flag for IB allocated by SA (Lyude Paul) [1944405] - drm/amd/display: add handling for hdcp2 rx id list validation (Lyude Paul) [1944405] - drm/amd/display: fixed divide by zero kernel crash during dsc enablement (Lyude Paul) [1944405] - drm/amd/display: Force vsync flip when reconfiguring MPCC (Lyude Paul) [1944405] - arm64: enable tlbi range instructions (Jeremy Linton) [1861872] - arm64: tlb: Use the TLBI RANGE feature in arm64 (Jeremy Linton) [1861872] - arm64: tlb: Detect the ARMv8.4 TLBI RANGE feature (Jeremy Linton) [1861872] - arm64/cpufeature: Add remaining feature bits in ID_AA64ISAR0 register (Jeremy Linton) [1861872] - arm64: tlbflush: Ensure start/end of address range are aligned to stride (Jeremy Linton) [1861872] - arm64: Detect the ARMv8.4 TTL feature (Jeremy Linton) [1861872] - arm64: tlbi: Set MAX_TLBI_OPS to PTRS_PER_PTE (Jeremy Linton) [1861872]- bpf: Fix integer overflow involving bucket_size (Jiri Olsa) [1992588] - bpf: Fix leakage due to insufficient speculative store bypass mitigation (Jiri Olsa) [1992588] - bpf: Introduce BPF nospec instruction for mitigating Spectre v4 (Jiri Olsa) [1992588] - bpf: Fix OOB read when printing XDP link fdinfo (Jiri Olsa) [1992588] - bpf, test: fix NULL pointer dereference on invalid expected_attach_type (Jiri Olsa) [1992588] - bpf: Fix tail_call_reachable rejection for interpreter when jit failed (Jiri Olsa) [1992588] - bpf: Track subprog poke descriptors correctly and fix use-after-free (Jiri Olsa) [1992588] - bpf: Fix null ptr deref with mixed tail calls and subprogs (Jiri Olsa) [1992588] - bpf: Fix leakage under speculation on mispredicted branches (Jiri Olsa) [1992588] - bpf: Set mac_len in bpf_skb_change_head (Jiri Olsa) [1992588] - bpf: Prevent writable memory-mapping of read-only ringbuf pages (Jiri Olsa) [1992588] - bpf: Fix alu32 const subreg bound tracking on bitwise operations (Jiri Olsa) [1992588] - xsk: Fix broken Tx ring validation (Jiri Olsa) [1992588] - xsk: Fix for xp_aligned_validate_desc() when len == chunk_size (Jiri Olsa) [1992588] - bpf: link: Refuse non-O_RDWR flags in BPF_OBJ_GET (Jiri Olsa) [1992588] - bpf: Refcount task stack in bpf_get_task_stack (Jiri Olsa) [1992588] - bpf: Use NOP_ATOMIC5 instead of emit_nops(&prog, 5) for BPF_TRAMP_F_CALL_ORIG (Jiri Olsa) [1992588] - selftest/bpf: Add a test to check trampoline freeing logic. (Jiri Olsa) [1992588] - bpf: Fix fexit trampoline. (Jiri Olsa) [1992588] - ftrace: Fix modify_ftrace_direct. (Jiri Olsa) [1992588] - ftrace: Add a helper function to modify_ftrace_direct() to allow arch optimization (Jiri Olsa) [1992588] - ftrace: Add helper find_direct_entry() to consolidate code (Jiri Olsa) [1992588] - bpf: Fix truncation handling for mod32 dst reg wrt zero (Jiri Olsa) [1992588] - bpf: Fix an unitialized value in bpf_iter (Jiri Olsa) [1992588] - bpf_lru_list: Read double-checked variable once without lock (Jiri Olsa) [1992588] - mt76: validate rx A-MSDU subframes (Íñigo Huguet) [1991459] {CVE-2020-24588 CVE-2020-26144} - ath11k: Drop multicast fragments (Íñigo Huguet) [1991459] {CVE-2020-26145} - ath11k: Clear the fragment cache during key install (Íñigo Huguet) [1991459] {CVE-2020-24587} - ath10k: Validate first subframe of A-MSDU before processing the list (Íñigo Huguet) [1991459] {CVE-2020-24588 CVE-2020-26144} - ath10k: Fix TKIP Michael MIC verification for PCIe (Íñigo Huguet) [1991459] {CVE-2020-26141} - ath10k: drop MPDU which has discard flag set by firmware for SDIO (Íñigo Huguet) [1991459] {CVE-2020-24588} - ath10k: drop fragments with multicast DA for SDIO (Íñigo Huguet) [1991459] {CVE-2020-26145} - ath10k: drop fragments with multicast DA for PCIe (Íñigo Huguet) [1991459] {CVE-2020-26145} - ath10k: add CCMP PN replay protection for fragmented frames for PCIe (Íñigo Huguet) [1991459] - mac80211: extend protection against mixed key and fragment cache attacks (Íñigo Huguet) [1991459] {CVE-2020-24586 CVE-2020-24587} - mac80211: do not accept/forward invalid EAPOL frames (Íñigo Huguet) [1991459] {CVE-2020-26139} - mac80211: prevent attacks on TKIP/WEP as well (Íñigo Huguet) [1991459] {CVE-2020-26141} - mac80211: check defrag PN against current frame (Íñigo Huguet) [1991459] - mac80211: add fragment cache to sta_info (Íñigo Huguet) [1991459] {CVE-2020-24586 CVE-2020-24587} - mac80211: drop A-MSDUs on old ciphers (Íñigo Huguet) [1991459] {CVE-2020-24588} - cfg80211: mitigate A-MSDU aggregation attacks (Íñigo Huguet) [1991459] {CVE-2020-24588 CVE-2020-26144} - mac80211: properly handle A-MSDUs that start with an RFC 1042 header (Íñigo Huguet) [1991459] - mac80211: prevent mixed key and fragment cache attacks (Íñigo Huguet) [1991459] {CVE-2020-24586 CVE-2020-24587} - mac80211: assure all fragments are encrypted (Íñigo Huguet) [1991459] {CVE-2020-26147} - tipc: call tipc_wait_for_connect only when dlen is not 0 (Xin Long) [1989361] - mptcp: remove tech preview warning (Florian Westphal) [1985120] - tcp: consistently disable header prediction for mptcp (Florian Westphal) [1985120] - selftests: mptcp: fix case multiple subflows limited by server (Florian Westphal) [1985120] - selftests: mptcp: turn rp_filter off on each NIC (Florian Westphal) [1985120] - selftests: mptcp: display proper reason to abort tests (Florian Westphal) [1985120] - mptcp: properly account bulk freed memory (Florian Westphal) [1985120] - mptcp: fix 'masking a bool' warning (Florian Westphal) [1985120] - mptcp: refine mptcp_cleanup_rbuf (Florian Westphal) [1985120] - mptcp: use fast lock for subflows when possible (Florian Westphal) [1985120] - mptcp: avoid processing packet if a subflow reset (Florian Westphal) [1985120] - mptcp: add sk parameter for mptcp_get_options (Florian Westphal) [1985120] - mptcp: fix syncookie process if mptcp can not_accept new subflow (Florian Westphal) [1985120] - mptcp: fix warning in __skb_flow_dissect() when do syn cookie for subflow join (Florian Westphal) [1985120] - mptcp: avoid race on msk state changes (Florian Westphal) [1985120] - mptcp: fix 32 bit DSN expansion (Florian Westphal) [1985120] - mptcp: fix bad handling of 32 bit ack wrap-around (Florian Westphal) [1985120] - tcp: parse mptcp options contained in reset packets (Florian Westphal) [1985120] - ionic: count csum_none when offload enabled (Jonathan Toppins) [1991646] - ionic: fix up dim accounting for tx and rx (Jonathan Toppins) [1991646] - ionic: remove intr coalesce update from napi (Jonathan Toppins) [1991646] - ionic: catch no ptp support earlier (Jonathan Toppins) [1991646] - ionic: make all rx_mode work threadsafe (Jonathan Toppins) [1991646] - dmaengine: idxd: Fix missing error code in idxd_cdev_open() (Jerry Snitselaar) [1990637] - dmaengine: idxd: add missing dsa driver unregister (Jerry Snitselaar) [1990637] - dmaengine: idxd: add engine 'struct device' missing bus type assignment (Jerry Snitselaar) [1990637] - dmaengine: idxd: remove MSIX masking for interrupt handlers (Jerry Snitselaar) [1990637] - dmaengine: idxd: Use cpu_feature_enabled() (Jerry Snitselaar) [1990637] - dmaengine: idxd: enable SVA feature for IOMMU (Jerry Snitselaar) [1990637] - dmagenine: idxd: Don't add portal offset in idxd_submit_desc (Jerry Snitselaar) [1990637] - ethtool: strset: fix message length calculation (Balazs Nemeth) [1989003] - net: add strict checks in netdev_name_node_alt_destroy() (Andrea Claudi) [1859038] - net: rtnetlink: fix bugs in rtnl_alt_ifname() (Andrea Claudi) [1859038] - net: rtnetlink: add linkprop commands to add and delete alternative ifnames (Andrea Claudi) [1859038] - net: check all name nodes in __dev_alloc_name (Andrea Claudi) [1859038] - net: fix a leak in register_netdevice() (Andrea Claudi) [1859038] - tun: fix memory leak in error path (Andrea Claudi) [1859038] - net: propagate errors correctly in register_netdevice() (Andrea Claudi) [1859038] - net: introduce name_node struct to be used in hashlist (Andrea Claudi) [1859038] - net: procfs: use index hashlist instead of name hashlist (Andrea Claudi) [1859038] - configs: Enable CONFIG_CHELSIO_INLINE_CRYPTO (Raju Rangoju) [1961368] - cxgb4/ch_ktls: Clear resources when pf4 device is removed (Raju Rangoju) [1961374] - ch_ktls: Remove redundant variable result (Raju Rangoju) [1961374] - ch_ktls: do not send snd_una update to TCB in middle (Raju Rangoju) [1961374] - ch_ktls: tcb close causes tls connection failure (Raju Rangoju) [1961374] - ch_ktls: fix device connection close (Raju Rangoju) [1961374] - ch_ktls: Fix kernel panic (Raju Rangoju) [1961374] - ch_ktls: fix enum-conversion warning (Raju Rangoju) [1961374] - net: ethernet: chelsio: inline_crypto: Mundane typos fixed throughout the file chcr_ktls.c (Raju Rangoju) [1961374] - ch_ipsec: Remove initialization of rxq related data (Raju Rangoju) [1961388] - ch_ktls: fix build warning for ipv4-only config (Raju Rangoju) [1961374] - ch_ktls: lock is not freed (Raju Rangoju) [1961374] - ch_ktls: stop the txq if reaches threshold (Raju Rangoju) [1961374] - ch_ktls: tcb update fails sometimes (Raju Rangoju) [1961374] - ch_ktls/cxgb4: handle partial tag alone SKBs (Raju Rangoju) [1961374] - ch_ktls: don't free skb before sending FIN (Raju Rangoju) [1961374] - ch_ktls: packet handling prior to start marker (Raju Rangoju) [1961374] - ch_ktls: Correction in middle record handling (Raju Rangoju) [1961374] - ch_ktls: missing handling of header alone (Raju Rangoju) [1961374] - ch_ktls: Correction in trimmed_len calculation (Raju Rangoju) [1961374] - cxgb4/ch_ktls: creating skbs causes panic (Raju Rangoju) [1961374] - ch_ktls: Update cheksum information (Raju Rangoju) [1961374] - ch_ktls: Correction in finding correct length (Raju Rangoju) [1961374] - cxgb4/ch_ktls: decrypted bit is not enough (Raju Rangoju) [1961374] - cxgb4/ch_ipsec: Replace the module name to ch_ipsec from chcr (Raju Rangoju) [1961388] - cxgb4/ch_ktls: ktls stats are added at port level (Raju Rangoju) [1961374] - ch_ktls: Issue if connection offload fails (Raju Rangoju) [1961374] - chelsio/chtls: Re-add dependencies on CHELSIO_T4 to fix modular CHELSIO_T4 (Raju Rangoju) [1961388] - chelsio/chtls: CHELSIO_INLINE_CRYPTO should depend on CHELSIO_T4 (Raju Rangoju) [1961388] - crypto: chelsio - fix minor indentation issue (Raju Rangoju) [1961368] - crypto/chcr: move nic TLS functionality to drivers/net (Raju Rangoju) [1961368] - cxgb4/ch_ipsec: Registering xfrmdev_ops with cxgb4 (Raju Rangoju) [1961388] - crypto/chcr: Moving chelsio's inline ipsec functionality to /drivers/net (Raju Rangoju) [1961368] - chelsio/chtls: separate chelsio tls driver from crypto driver (Raju Rangoju) [1961368] - crypto: chelsio - Fix some pr_xxx messages (Raju Rangoju) [1961368] - crypto: chelsio - Avoid some code duplication (Raju Rangoju) [1961368] - crypto: drivers - set the flag CRYPTO_ALG_ALLOCATES_MEMORY (Raju Rangoju) [1961368] - crypto: aead - remove useless setting of type flags (Raju Rangoju) [1961368] - crypto: Replace zero-length array with flexible-array (Raju Rangoju) [1961368] - [Crypto] treewide: replace '---help---' in Kconfig files with 'help' (Raju Rangoju) [1961368] - Crypto/chcr: Checking cra_refcnt before unregistering the algorithms (Raju Rangoju) [1961368] - Crypto/chcr: Calculate src and dst sg lengths separately for dma map (Raju Rangoju) [1961368] - Crypto/chcr: Fixes a coccinile check error (Raju Rangoju) [1961368] - Crypto/chcr: Fixes compilations warnings (Raju Rangoju) [1961368] - crypto/chcr: IPV6 code needs to be in CONFIG_IPV6 (Raju Rangoju) [1961368] - crypto: lib/sha1 - remove unnecessary includes of linux/cryptohash.h (Raju Rangoju) [1961368] - Crypto/chcr: fix for hmac(sha) test fails (Raju Rangoju) [1961368] - Crypto/chcr: fix for ccm(aes) failed test (Raju Rangoju) [1961368] - Crypto/chcr: fix ctr, cbc, xts and rfc3686-ctr failed tests (Raju Rangoju) [1961368] - crypto: chelsio - remove redundant assignment to variable error (Raju Rangoju) [1961368] - chcr: Fix CPU hard lockup (Raju Rangoju) [1961368] - crypto: remove CRYPTO_TFM_RES_BAD_KEY_LEN (Raju Rangoju) [1961368] - crypto: chelsio - switch to skcipher API (Raju Rangoju) [1961368] - crypto: chelsio - Remove VLA usage of skcipher (Raju Rangoju) [1961368]- tracing: Fix bug in rb_per_cpu_empty() that might cause deadloop. (Chris von Recklinghausen) [1989485] {CVE-2021-3679} - vmlinux.lds.h: Keep .ctors.* with .ctors (Jan Stancek) [1993208] - spi: pxa2xx: Add support for Intel Alder Lake PCH-P (Steve Best) [1978463] - bnxt_en: allow promiscuous mode for trusted VFs (Jonathan Toppins) [1730616] - arm64: memory: Add missing brackets to untagged_addr() macro (Chris von Recklinghausen) [1955809] - arm64: tags: Preserve tags for addresses translated via TTBR1 (Chris von Recklinghausen) [1955809] - arm64: entry: Move ct_user_exit before any other exception (Chris von Recklinghausen) [1955809] - arm64: memory: Implement __tag_set() as common function (Chris von Recklinghausen) [1955809] - arm64: mm: Really fix sparse warning in untagged_addr() (Chris von Recklinghausen) [1955809] - arm64: untag user pointers in access_ok and __uaccess_mask_ptr (Chris von Recklinghausen) [1955809] - arm64/mm: fix variable 'tag' set but not used (Chris von Recklinghausen) [1955809] - arm64: entry: SP Alignment Fault doesn't write to FAR_EL1 (Chris von Recklinghausen) [1955809] - arm64: compat: Add separate CP15 trapping hook (Chris von Recklinghausen) [1955809] - arm64: don't restore GPRs when context tracking (Chris von Recklinghausen) [1955809]- bareudp: Fix invalid read beyond skb's linear data (Guillaume Nault) [1990938] - perf/x86/amd: Don't touch the AMD64_EVENTSEL_HOSTONLY bit inside the guest (Michael Petlan) [1990695] - net: dcb: Accept RTM_GETDCB messages carrying set-like DCB commands (Balazs Nemeth) [1956825] - net: dcb: Validate netlink message in DCB handler (Balazs Nemeth) [1956825] - xfrm: Fix RCU vs hash_resize_mutex lock inversion (Sabrina Dubroca) [1988405] - Revert "xfrm: policy: Read seqcount outside of rcu-read side in xfrm_policy_lookup_bytype" (Sabrina Dubroca) [1988405] - xfrm: policy: Read seqcount outside of rcu-read side in xfrm_policy_lookup_bytype (Sabrina Dubroca) [1988405] - [s390] s390/AP: support new dynamic AP bus size limit (Claudio Imbrenda) [1974581] - net: sched: act_mirred: Reset ct info when mirror/redirect skb (Hangbin Liu) [1980532] - ucounts: Move max_time_namespace according to ucount_type (Alex Gladkov) [1982954] - perf vendor events power10: Adds 24x7 nest metric events for power10 platform (Diego Domingos) [1946650] - perf/core: fix backport of PERF_SAMPLE_WEIGHT_STRUCT (Diego Domingos) [1946650] - perf/core: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Diego Domingos) [1946650] - perf vendor events powerpc: Fix eventcode of power10 JSON events (Diego Domingos) [1946650] - perf vendor events: Initial JSON/events list for power10 platform (Diego Domingos) [1946650] - powerpc/perf: Fix sampled instruction type for larx/stcx (Diego Domingos) [1946650] - powerpc/perf: Fix the threshold event selection for memory events in power10 (Diego Domingos) [1946650] - perf sort: Display sort dimension p_stage_cyc only on supported archs (Diego Domingos) [1946650] - perf tools: Support pipeline stage cycles for powerpc (Diego Domingos) [1946650] - perf powerpc: Add support for PERF_SAMPLE_WEIGHT_STRUCT (Diego Domingos) [1946650] - perf sort: Add dynamic headers for perf report columns (Diego Domingos) [1946650] - powerpc/perf: Expose processor pipeline stage cycles using PERF_SAMPLE_WEIGHT_STRUCT (Diego Domingos) [1946650] - Documentation/admin-guide: kernel-parameters: fix "disable_ddw" wording (Diego Domingos) [1946650] - powerpc/perf: Support PERF_SAMPLE_DATA_PAGE_SIZE (Diego Domingos) [1946650] - perf/core: Add PERF_SAMPLE_DATA_PAGE_SIZE (Diego Domingos) [1946650] - powerpc/perf: Infrastructure to support checking of attr.config* (Diego Domingos) [1946650] - powerpc/perf: Add platform specific check_attr_config (Diego Domingos) [1946650] - ice: add support for auxiliary input/output pins (Jonathan Toppins) [1956913] - ice: enable transmit timestamps for E810 devices (Jonathan Toppins) [1944818] - ice: enable receive hardware timestamping (Jonathan Toppins) [1944818] - ice: report the PTP clock index in ethtool .get_ts_info (Jonathan Toppins) [1944818] - ice: register 1588 PTP clock device object for E810 devices (Jonathan Toppins) [1944818] - ice: add low level PTP clock access functions (Jonathan Toppins) [1944818] - ice: add support for set/get of driver-stored firmware parameters (Jonathan Toppins) [1944818] - ice: process 1588 PTP capabilities during initialization (Jonathan Toppins) [1944818] - ice: add support for sideband messages (Jonathan Toppins) [1944818]- bnxt_en: Fix static checker warning in bnxt_fw_reset_task() (Jonathan Toppins) [1989274] - bnxt_en: Check abort error state in bnxt_half_open_nic() (Jonathan Toppins) [1989274] - bnxt_en: fix error path of FW reset (Jonathan Toppins) [1989274] - bnxt_en: Add missing check for BNXT_STATE_ABORT_ERR in bnxt_fw_rset_task() (Jonathan Toppins) [1989274] - bnxt_en: Refresh RoCE capabilities in bnxt_ulp_probe() (Jonathan Toppins) [1989274] - bnxt_en: reject ETS settings that will starve a TC (Jonathan Toppins) [1989274] - bnxt_en: don't disable an already disabled PCI device (Jonathan Toppins) [1989274] - bnxt_en: Remove the read of BNXT_FW_RESET_INPROG_REG after firmware reset. (Jonathan Toppins) [1989274] - i40e: Fix log TC creation failure when max num of queues is exceeded (Stefan Assmann) [1920274] - i40e: Fix queue-to-TC mapping on Tx (Stefan Assmann) [1920274] - i40e: Add additional info to PHY type error (Stefan Assmann) [1920274] - i40e: Fix firmware LLDP agent related warning (Stefan Assmann) [1920274] - i40e: Fix logic of disabling queues (Stefan Assmann) [1920274] - i40e: add support for PTP external synchronization clock (Stefan Assmann) [1920274] - i40e: improve locking of mac_filter_hash (Stefan Assmann) [1920274] - i40e: Fix missing rtnl locking when setting up pf switch (Stefan Assmann) [1920274] - i40e: fix PTP on 5Gb links (Stefan Assmann) [1920274] - i40e: Fix autoneg disabling for non-10GBaseT links (Stefan Assmann) [1920274] - i40e: Fix error handling in i40e_vsi_open (Stefan Assmann) [1920274] - intel: Remove rcu_read_lock() around XDP program invocation (Stefan Assmann) [1920274] - i40e: clean up packet type lookup table (Stefan Assmann) [1920274] - i40e: add correct exception tracing for XDP (Stefan Assmann) [1920274] - i40e: Remove LLDP frame filters (Stefan Assmann) [1920274] - i40e: Fix PHY type identifiers for 2.5G and 5G adapters (Stefan Assmann) [1920274] - i40e: Fix use-after-free in i40e_client_subtask() (Stefan Assmann) [1920274] - i40e: fix broken XDP support (Stefan Assmann) [1920274] - i40e: refactor repeated link state reporting code (Stefan Assmann) [1920274] - i40e: optimize for XDP_REDIRECT in xsk path (Stefan Assmann) [1920274] - i40e: fix the panic when running bpf in xdpdrv mode (Stefan Assmann) [1920274] - i40e: Fix sparse warning: missing error code 'err' (Stefan Assmann) [1920274] - i40e: Fix sparse error: 'vsi->netdev' could be null (Stefan Assmann) [1920274] - i40e: Fix sparse error: uninitialized symbol 'ring' (Stefan Assmann) [1920274] - i40e: Fix sparse errors in i40e_txrx.c (Stefan Assmann) [1920274] - i40e: Fix display statistics for veb_tc (Stefan Assmann) [1920274] - i40e: fix receiving of single packets in xsk zero-copy mode (Stefan Assmann) [1920274] - i40e: Fix inconsistent indenting (Stefan Assmann) [1920274] - i40e: Fix oops at i40e_rebuild() (Stefan Assmann) [1920274] - i40e: Fix kernel oops when i40e driver removes VF's (Stefan Assmann) [1920274] - i40e: Added Asym_Pause to supported link modes (Stefan Assmann) [1920274] - net: i40e: remove repeated words (Stefan Assmann) [1920274] - bpf, devmap: Move drop error path to devmap for XDP_REDIRECT (Stefan Assmann) [1920274] - intel: clean up mismatched header comments (Stefan Assmann) [1920274] - intel: Update drivers to use ethtool_sprintf (Stefan Assmann) [1920274] - i40e: move headroom initialization to i40e_configure_rx_ring (Stefan Assmann) [1920274] - i40e: Fix endianness conversions (Stefan Assmann) [1920274] - i40e: Fix add TC filter for IPv6 (Stefan Assmann) [1920274] - i40e: Fix addition of RX filters after enabling FW LLDP agent (Stefan Assmann) [1920274] - i40e: Fix overwriting flow control settings during driver loading (Stefan Assmann) [1920274] - i40e: Add zero-initialization of AQ command structures (Stefan Assmann) [1920274] - i40e: Fix memory leak in i40e_probe (Stefan Assmann) [1920274] - i40e: Fix flow for IPv6 next header (extension header) (Stefan Assmann) [1920274] - i40e: Fix incorrect argument in call to ipv6_addr_any() (Stefan Assmann) [1920274] - i40e: store the result of i40e_rx_offset() onto i40e_ring (Stefan Assmann) [1920274] - i40e: Simplify the do-while allocation loop (Stefan Assmann) [1920274] - i40e: adjust i40e_is_non_eop (Stefan Assmann) [1920274] - i40e: drop misleading function comments (Stefan Assmann) [1920274] - i40e: drop redundant check when setting xdp prog (Stefan Assmann) [1920274] - i40e: remove the useless value assignment in i40e_clean_adminq_subtask (Stefan Assmann) [1920274] - i40e: VLAN field for flow director (Stefan Assmann) [1920274] - i40e: Add flow director support for IPv6 (Stefan Assmann) [1920274] - i40e: Add EEE status getting & setting implementation (Stefan Assmann) [1920274] - i40e: Fix uninitialized variable mfs_max (Stefan Assmann) [1920274] - i40e: Add netlink callbacks support for software based DCB (Stefan Assmann) [1920274] - i40e: Add init and default config of software based DCB (Stefan Assmann) [1920274] - i40e: Add hardware configuration for software based DCB (Stefan Assmann) [1920274] - i40e: Log error for oversized MTU on device (Stefan Assmann) [1920274] - i40e: consolidate handling of XDP program actions (Stefan Assmann) [1920274] - i40e: remove the redundant buffer info updates (Stefan Assmann) [1920274] - i40e: remove unnecessary cleaned_count updates (Stefan Assmann) [1920274] - i40e: remove unnecessary memory writes of the next to clean pointer (Stefan Assmann) [1920274] - i40e: Use batched xsk Tx interfaces to increase performance (Stefan Assmann) [1920274] - i40e: convert to new udp_tunnel infrastructure (Stefan Assmann) [1920274] - netfilter: nf_tables: skip module reference count bump on object updates (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: fix unexpected EOPNOTSUPP error (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: Fix an Oops in nf_tables_updobj() error handling (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: fix possible null-pointer dereference in object update (Fernando Fernandez Mancera) [1944487] - netfilter: nft_quota: add quota object update support (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: Introduce stateful object update operation (Fernando Fernandez Mancera) [1944487] - cifs: retry lookup and readdir when EAGAIN is returned. (Ronnie Sahlberg) [1972411] - netfilter: nf_tables: Fix dereference of null pointer flow (Florian Westphal) [1985087] - netfilter: nf_tables: memleak in hw offload abort path (Florian Westphal) [1985087] - netfilter: nft_tproxy: restrict support to TCP and UDP transport protocols (Florian Westphal) [1985087] - netfilter: synproxy: Fix out of bounds when parsing TCP options (Florian Westphal) [1985087] - netfilter: nfnetlink_cthelper: hit EBUSY on updates if size mismatches (Florian Westphal) [1985087] - ipvs: ignore IP_VS_SVC_F_HASHED flag when adding service (Florian Westphal) [1985087] - netfilter: nftables: avoid overflows in nft_hash_buckets() (Florian Westphal) [1985087] - netfilter: nfnetlink_osf: Fix a missing skb_header_pointer() NULL check (Florian Westphal) [1985087] - netfilter: nf_tables_offload: check FLOW_DISSECTOR_KEY_BASIC in VLAN transfer logic (Florian Westphal) [1985087] - netfilter: nftables_offload: special ethertype handling for VLAN (Florian Westphal) [1985087] - netfilter: nftables_offload: VLAN id needs host byteorder in flow dissector (Florian Westphal) [1985087] - netfilter: nft_payload: fix C-VLAN offload support (Florian Westphal) [1985087] - ipvs: allow connection reuse for unconfirmed conntrack (Florian Westphal) [1985087] - net: fix GRO skb truesize update (Paolo Abeni) [1987391] - sk_buff: avoid potentially clearing 'slow_gro' field (Paolo Abeni) [1987391] - veth: use skb_prepare_for_gro() (Paolo Abeni) [1987391] - skbuff: allow 'slow_gro' for skb carring sock reference (Paolo Abeni) [1987391] - net: optimize GRO for the common case. (Paolo Abeni) [1987391] - sk_buff: track extension status in slow_gro (Paolo Abeni) [1987391] - sk_buff: track dst status in slow_gro (Paolo Abeni) [1987391] - sk_buff: introduce 'slow_gro' flags (Paolo Abeni) [1987391] - skbuff: Fix build with SKB extensions disabled (Paolo Abeni) [1987391] - skbuff: Release nfct refcount on napi stolen or re-used skbs (Paolo Abeni) [1987391] - selftests: net: veth: add tests for set_channel (Paolo Abeni) [1987391] - veth: create by default nr_possible_cpus queues (Paolo Abeni) [1987391] - veth: implement support for set_channel ethtool op (Paolo Abeni) [1987391] - veth: factor out initialization helper (Paolo Abeni) [1987391] - veth: always report zero combined channels (Paolo Abeni) [1987391] - veth: Implement ethtool's get_channelis() callback (Paolo Abeni) [1987391] - net: add GSO UDP L4 and GSO fraglists to the list of software-backed types (Paolo Abeni) [1987391] - ice: Support RSS configure removal for AVF (Jonathan Toppins) [1946726] - ice: Enable RSS configure for AVF (Jonathan Toppins) [1946726] - ice: Add helper function to get the VF's VSI (Jonathan Toppins) [1946726] - ice: remove redundant assignment to pointer vsi (Jonathan Toppins) [1946726] - ice: Advertise virtchnl UDP segmentation offload capability (Jonathan Toppins) [1946726] - ice: Allow ignoring opcodes on specific VF (Jonathan Toppins) [1946726] - ice: warn about potentially malicious VFs (Jonathan Toppins) [1946726] - ice: Consolidate VSI state and flags (Jonathan Toppins) [1946726] - ice: Refactor ice_set/get_rss into LUT and key specific functions (Jonathan Toppins) [1946726] - ice: Refactor get/set RSS LUT to use struct parameter (Jonathan Toppins) [1946726] - ice: Change ice_vsi_setup_q_map() to not depend on RSS (Jonathan Toppins) [1946726] - ice: Check FDIR program status for AVF (Jonathan Toppins) [1946726] - ice: Add more FDIR filter type for AVF (Jonathan Toppins) [1946726] - ice: Add GTPU FDIR filter for AVF (Jonathan Toppins) [1946726] - ice: Add non-IP Layer2 protocol FDIR filter for AVF (Jonathan Toppins) [1946726] - ice: Add new actions support for VF FDIR (Jonathan Toppins) [1946726] - ice: Add FDIR pattern action parser for VF (Jonathan Toppins) [1946726] - ice: Enable FDIR Configure for AVF (Jonathan Toppins) [1946726] - ice: Add support for per VF ctrl VSI enabling (Jonathan Toppins) [1946726] - ice: Enhanced IPv4 and IPv6 flow filter (Jonathan Toppins) [1946726] - ice: Support to separate GTP-U uplink and downlink (Jonathan Toppins) [1946726] - ice: Add more advanced protocol support in flow filter (Jonathan Toppins) [1946726] - ice: Support non word aligned input set field (Jonathan Toppins) [1946726] - ice: Add more basic protocol support for flow filter (Jonathan Toppins) [1946726] - sctp: move the active_key update after sh_keys is added (Xin Long) [1986966] - sctp: fix return value check in __sctp_rcv_asconf_lookup (Xin Long) [1986966] - sctp: delete addr based on sin6_scope_id (Xin Long) [1986966] - sctp: update active_key for asoc when old key is being replaced (Xin Long) [1986966] - sctp: move 198 addresses from unusable to private scope (Xin Long) [1986966] - sctp: add param size validation for SCTP_PARAM_SET_PRIMARY (Xin Long) [1986966] - sctp: validate chunk size in __rcv_asconf_lookup (Xin Long) [1986966] - sctp: add size validation when walking chunks (Xin Long) [1986966] - sctp: validate from_addr_param return (Xin Long) [1986966] - sctp: fix the proc_handler for sysctl encap_port (Xin Long) [1986966] - sctp: add the missing setting for asoc encap_port (Xin Long) [1986966] - sctp: fix a SCTP_MIB_CURRESTAB leak in sctp_sf_do_dupcook_b (Xin Long) [1986966] - sctp: Fix out-of-bounds warning in sctp_process_asconf_param() (Xin Long) [1986966] - sctp: Fix COMM_LOST/CANT_STR_ASSOC err reporting on big-endian platforms (Xin Long) [1986966] - bonding: allow nesting of bonding device (Antoine Tenart) [1989099] - bonding: avoid adding slave device with IFF_MASTER flag (Antoine Tenart) [1989099] - ice: don't remove netdev->dev_addr from uc sync list (Ken Cox) [1873969 1961018] - ice: Stop processing VF messages during teardown (Ken Cox) [1986451] - ice: Prevent probing virtual functions (Ken Cox) [1952810] - ima: extend boot_aggregate with kernel measurements (Bruno Meneguele) [1977422] - selftest/bpf: Verifier tests for var-off access (Jiri Olsa) [1960944] {CVE-2021-29155} - selftest/bpf: Adjust expected verifier errors (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: No need to simulate speculative domain for immediates (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix mask direction swap upon off reg sign change (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Wrap aux data inside bpf_sanitize_info container (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix pointer arithmetic mask tightening under state pruning (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix leakage of uninitialized bpf stack under speculation (Jiri Olsa) [1960944 1958070] {CVE-2021-29155 CVE-2021-31829} - bpf: Fix masking negation logic upon negative dst register (Jiri Olsa) [1960944 1958070] {CVE-2021-29155 CVE-2021-31829} - bpf: verifier: Allocate idmap scratch in verifier env (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Tighten speculative pointer arithmetic mask (Jiri Olsa) [1960944 1972496] {CVE-2021-29155 CVE-2021-33200} - bpf: Move sanitize_val_alu out of op switch (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Refactor and streamline bounds check into helper (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Allow variable-offset stack access (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Improve verifier error messages for users (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Rework ptr_limit into alu_limit and add common error path (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Ensure off_reg has no mixed signed bounds for all types (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Move off_reg into sanitize_ptr_alu (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Use correct permission flag for mixed signed bounds arithmetic (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Add sanity check for upper ptr_limit (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Simplify alu_limit masking for pointer arithmetic (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix off-by-one for area size in creating mask to left (Jiri Olsa) [1960944] {CVE-2021-29155} - Documentation/x86: Add ratelimit in buslock.rst (Prarit Bhargava) [1948048] - Documentation/admin-guide: Add bus lock ratelimit (Prarit Bhargava) [1948048] - x86/bus_lock: Set rate limit for bus lock (Prarit Bhargava) [1948048] - Documentation/x86: Add buslock.rst (Prarit Bhargava) [1948048] - [s390] net/smc: Ensure correct state of the socket in send path (Claudio Imbrenda) [1731026] - [s390] net/smc: Fix ENODATA tests in smc_nl_get_fback_stats() (Claudio Imbrenda) [1731026] - [s390] net/smc: Make SMC statistics network namespace aware (Claudio Imbrenda) [1731026] - [s390] net/smc: Add netlink support for SMC fallback statistics (Claudio Imbrenda) [1731026] - [s390] net/smc: Add netlink support for SMC statistics (Claudio Imbrenda) [1731026] - [s390] net/smc: Add SMC statistics support (Claudio Imbrenda) [1731026] - [s390] s390/ap: Fix hanging ioctl caused by wrong msg counter (Claudio Imbrenda) [1984762] - KVM: PPC: Book3S: Fix H_RTAS rets buffer overflow (Jon Maloy) [1988226] {CVE-2021-37576} - NFSv4: Fix an Oops in pnfs_mark_request_commit() when doing O_DIRECT (Benjamin Coddington) [1983793] - selftests/powerpc: EBB selftest for MMCR0 control for PMU SPRs in ISA v3.1 (Desnes A. Nunes do Rosario) [1991753] - selftests/powerpc: Fix "no_handler" EBB selftest (Desnes A. Nunes do Rosario) [1991753] - powerpc/perf: Fix crash in perf_instruction_pointer() when ppmu is not set (Desnes A. Nunes do Rosario) [1991753] - powerpc/pmu: Make the generic compat PMU use the architected events (Desnes A. Nunes do Rosario) [1991753] - perf script python: Fix buffer size to report iregs in perf script (Desnes A. Nunes do Rosario) [1991753] - ceph: reduce contention in ceph_check_delayed_caps() (Jeff Layton) [1953430]- net: mac802154: Fix general protection fault (Chris von Recklinghausen) [1984571] {CVE-2021-3659} - Bluetooth: fix the erroneous flush_work() order (Chris von Recklinghausen) [1964559] {CVE-2021-3564} - Bluetooth: use correct lock to prevent UAF of hdev object (Chris von Recklinghausen) [1968214] {CVE-2021-3573} - usb: ehci: Prevent missed ehci interrupts with edge-triggered MSI (Torez Smith) [1972139] - usb: ehci: do not initialise static variables (Torez Smith) [1972139] - usb: host: move EH SINGLE_STEP_SET_FEATURE implementation to core (Torez Smith) [1972139] - USB: ehci: drop workaround for forced irq threading (Torez Smith) [1972139] - usb: ehci: add spurious flag to disable overcurrent checking (Torez Smith) [1972139] - perf test: Handle fd gaps in test__dso_data_reopen (Michael Petlan) [1871785] - tty: vt: always invoke vc->vc_sw->con_resize callback (Maxim Levitsky) [1957611] - iavf: fix locking of critical sections (Stefan Assmann) [1975245] - iavf: do not override the adapter state in the watchdog task (Stefan Assmann) [1975245] - ixgbe: Fix packet corruption due to missing DMA sync (Ken Cox) [1920269] - ixgbe: Fix an error handling path in 'ixgbe_probe()' (Ken Cox) [1920269] - intel: Remove rcu_read_lock() around XDP program invocation (Ken Cox) [1920269] - ixgbe: add correct exception tracing for XDP (Ken Cox) [1920269] - ixgbe: Fix out-bounds warning in ixgbe_host_interface_command() (Ken Cox) [1920269] - ixgbe: reduce checker warnings (Ken Cox) [1920269] - ixgbe: use checker safe conversions (Ken Cox) [1920269] - ixgbe: fix large MTU request from VF (Ken Cox) [1920269] - net: ethernet: intel: Fix a typo in the file ixgbe_dcb_nl.c (Ken Cox) [1920269] - net: intel: Remove unused function pointer typedef ixgbe_mc_addr_itr (Ken Cox) [1920269] - ixgbe: Support external GBE SerDes PHY BCM54616s (Ken Cox) [1920269] - ixgbe: fix unbalanced device enable/disable in suspend/resume (Ken Cox) [1920269] - ixgbe: Fix NULL pointer dereference in ethtool loopback test (Ken Cox) [1920269] - ixgbe: Fix fall-through warnings for Clang (Ken Cox) [1920269] - intel: clean up mismatched header comments (Ken Cox) [1920269] - bpf, devmap: Move drop error path to devmap for XDP_REDIRECT (Ken Cox) [1920269] - intel: Update drivers to use ethtool_sprintf (Ken Cox) [1920269] - ixgbe: optimize for XDP_REDIRECT in xsk path (Ken Cox) [1920269] - ixgbe: move headroom initialization to ixgbe_configure_rx_ring (Ken Cox) [1920269] - ixgbe: Fix memleak in ixgbe_configure_clsu32 (Ken Cox) [1920269] - ixgbe: fail to create xfrm offload of IPsec tunnel mode SA (Ken Cox) [1920269] - ixgbe: store the result of ixgbe_rx_offset() onto ixgbe_ring (Ken Cox) [1920269] - net: ixgbe: use skb_csum_is_sctp instead of protocol check (Ken Cox) [1920269] - ixgbe: avoid premature Rx buffer reuse (Ken Cox) [1920269] - net: remove unneeded break (Ken Cox) [1920269] - ixgbe: add pause frame stats (Ken Cox) [1920269] - iavf: Set RSS LUT and key in reset handle path (Ken Cox) [1910853] - [netdrv] chelsio: Replace zero-length array with flexible-array member (Raju Rangoju) [1955208] - cxgb4: avoid collecting SGE_QBASE regs during traffic (Raju Rangoju) [1955208] - cxgb4: collect serial config version from register (Raju Rangoju) [1955208] - cxgb4: remove unused vpd_cap_addr (Raju Rangoju) [1955208] - cxgb4: remove bogus CHELSIO_VPD_UNIQUE_ID constant (Raju Rangoju) [1955208] - cxgb4: Assign boolean values to a bool variable (Raju Rangoju) [1955208] - cxgb4: enable interrupt based Tx completions for T5 (Raju Rangoju) [1955208] - cxgb4: fix the panic caused by non smac rewrite (Raju Rangoju) [1955208] - cxgb4: Fix the -Wmisleading-indentation warning (Raju Rangoju) [1955208] - cxgb4: set up filter action after rewrites (Raju Rangoju) [1955208] - cxgb4: handle 4-tuple PEDIT to NAT mode translation (Raju Rangoju) [1955208] - [netdrv] net: rename flow_action_hw_stats_types* -> flow_action_hw_stats* (Raju Rangoju) [1955208] - net: cxbg4: Remove pointless in_interrupt() check (Raju Rangoju) [1955208] - cxgb4: Avoid log flood (Raju Rangoju) [1955208] - cxgb4: fix memory leak during module unload (Raju Rangoju) [1955208] - cxgb4: Fix offset when clearing filter byte counters (Raju Rangoju) [1955208] - cxgb4: add error handlers to LE intr_handler (Raju Rangoju) [1955208] - cxgb4: insert IPv6 filter rules in next free region (Raju Rangoju) [1955208] - cxgb4: Fix race between loopback and normal Tx path (Raju Rangoju) [1955208] - cxgb4: Fix work request size calculation for loopback test (Raju Rangoju) [1955208] - cxgb4: add TC-MATCHALL IPv6 support (Raju Rangoju) [1955208] - cxgb4: fix extracting IP addresses in TC-FLOWER rules (Raju Rangoju) [1955208] - cxgb4: fix check for running offline ethtool selftest (Raju Rangoju) [1955208] - cxgb4: add loopback ethtool self-test (Raju Rangoju) [1955208] - net: cxgb4: reject unsupported coalescing params (Raju Rangoju) [1955208] - cxgb4: use eth_zero_addr() to clear mac address (Raju Rangoju) [1955208] - cxgb4: add missing release on skb in uld_send() (Raju Rangoju) [1955208] - cxgb4: convert to new udp_tunnel_nic infra (Raju Rangoju) [1955208] - cxgb4: fix all-mask IP address comparison (Raju Rangoju) [1955208] - cxgb4: add main VI to mirror VI config replication (Raju Rangoju) [1955208] - cxgb4: add support for mirror Rxqs (Raju Rangoju) [1955208] - cxgb4: add mirror action to TC-MATCHALL offload (Raju Rangoju) [1955208] - net: cxgb4: fix return error value in t4_prep_fw (Raju Rangoju) [1955208] - cxgb4: move device dump arrays in header to C file (Raju Rangoju) [1955208] - cxgb4: always sync access when flashing PHY firmware (Raju Rangoju) [1955208] - cxgb4: update kernel-doc line comments (Raju Rangoju) [1955208] - cxgb4: fix set but unused variable when DCB is disabled (Raju Rangoju) [1955208] - cxgb4: move DCB version extern to header file (Raju Rangoju) [1955208] - cxgb4: remove cast when saving IPv4 partial checksum (Raju Rangoju) [1955208] - cxgb4: fix SGE queue dump destination buffer context (Raju Rangoju) [1955208] - cxgb4: use correct type for all-mask IP address comparison (Raju Rangoju) [1955208] - cxgb4: fix endian conversions for L4 ports in filters (Raju Rangoju) [1955208] - cxgb4: parse TC-U32 key values and masks natively (Raju Rangoju) [1955208] - cxgb4: use unaligned conversion for fetching timestamp (Raju Rangoju) [1955208] - cxgb4: move PTP lock and unlock to caller in Tx path (Raju Rangoju) [1955208] - cxgb4: move handling L2T ARP failures to caller (Raju Rangoju) [1955208] - cxgb4: Use struct_size() helper (Raju Rangoju) [1955208] - cxgb4: add action to steer flows to specific Rxq (Raju Rangoju) [1955208] - cxgb4: add support to fetch ethtool n-tuple filters (Raju Rangoju) [1955208] - cxgb4: add ethtool n-tuple filter deletion (Raju Rangoju) [1955208] - cxgb4: add ethtool n-tuple filter insertion (Raju Rangoju) [1955208] - [netdrv] flow_offload: check for basic action hw stats type (Raju Rangoju) [1955208] - cxgb4: add skeleton for ethtool n-tuple filters (Raju Rangoju) [1955208] - cxgb4: add support to read serial flash (Raju Rangoju) [1955208] - cxgb4: add support to flash boot cfg image (Raju Rangoju) [1955208] - cxgb4: add support to flash boot image (Raju Rangoju) [1955208] - cxgb4: add support to flash PHY image (Raju Rangoju) [1955208] - cxgb4: update set_flash to flash different images (Raju Rangoju) [1955208] - cxgb4: Use kfree() instead kvfree() where appropriate (Raju Rangoju) [1955208] - cxgb4: Use pM format specifier for MAC addresses (Raju Rangoju) [1955208] - net: sock: fix in-kernel mark setting (Alexander Aring) [1509204] - sock: Reset dst when changing sk_mark via setsockopt (Alexander Aring) [1509204] - fs: dlm: fix mark setting deadlock (Alexander Aring) [1509204] - fs: dlm: fix mark per nodeid setting (Alexander Aring) [1509204] - fs: dlm: remove lock dependency warning (Alexander Aring) [1509204] - fs: dlm: set skb mark per peer socket (Alexander Aring) [1509204] - fs: dlm: set skb mark for listen socket (Alexander Aring) [1509204] - net: sock: add sock_set_mark (Alexander Aring) [1509204] - Bluetooth: btusb: Add support for GarfieldPeak controller (Gopal Tiwari) [1959110] - can: gw: synchronize rcu operations before removing gw job entry (Balazs Nemeth) [1986334] - can: bcm: fix infoleak in struct bcm_msg_head (Balazs Nemeth) [1986334] - can: af_can: prevent potential access of uninitialized member in canfd_rcv() (Balazs Nemeth) [1956730] - can: af_can: prevent potential access of uninitialized member in can_rcv() (Balazs Nemeth) [1956730] - can: proc: can_remove_proc(): silence remove_proc_entry warning (Balazs Nemeth) [1956730] - cifs: add missing parsing of backupuid (Ronnie Sahlberg) [1987126] - cifs: use helpers when parsing uid/gid mount options and validate them (Ronnie Sahlberg) [1987126] - kernfs: dont call d_splice_alias() under kernfs node lock (Ian Kent) [1939133] - kernfs: use i_lock to protect concurrent inode updates (Ian Kent) [1939133] - kernfs: switch kernfs to use an rwsem (Ian Kent) [1939133] - kernfs: use VFS negative dentry caching (Ian Kent) [1939133] - kernfs: add a revision to identify directory node changes (Ian Kent) [1939133] - kernfs: move revalidate to be near lookup (Ian Kent) [1939133]- mlxsw: spectrum_mr: Update egress RIF list before route's action (Ivan Vecera) [1941938] - selftests: mlxsw: Fix mausezahn invocation in ERSPAN scale test (Ivan Vecera) [1941938] - selftests: mlxsw: Increase the tolerance of backlog buildup (Ivan Vecera) [1941938] - selftests: mlxsw: Return correct error code in resource scale tests (Ivan Vecera) [1941938] - selftests: mlxsw: Remove a redundant if statement in tc_flower_scale test (Ivan Vecera) [1941938] - selftests: mlxsw: Remove a redundant if statement in port_scale test (Ivan Vecera) [1941938] - selftests: mlxsw: sch_red_ets: Test proper counter cleaning in ETS (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Index future FIFOs by band number (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Allocate child qdiscs dynamically (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Guard all qdisc accesses with a lock (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Track children per qdisc (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Promote backlog reduction to mlxsw_sp_qdisc_destroy() (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Track tclass_num as int, not u8 (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Drop an always-true condition (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Simplify mlxsw_sp_qdisc_compare() (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Drop one argument from check_params callback (Ivan Vecera) [1941938] - mlxsw: core: Remove critical trip points from thermal zones (Ivan Vecera) [1941938] - selftests: mlxsw: Test vetoing of double sampling (Ivan Vecera) [1941938] - mlxsw: spectrum: Veto sampling if already enabled on port (Ivan Vecera) [1941938] - selftests: mlxsw: Test matchall failure with protocol match (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Perform priority checks earlier (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Convert if statements to a switch statement (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Perform protocol check earlier (Ivan Vecera) [1941938] - selftests: forwarding: vxlan_bridge_1d: Add more ECN decap test cases (Ivan Vecera) [1941938] - mlxsw: spectrum: Fix ECN marking in tunnel decapsulation (Ivan Vecera) [1941938] - selftests: net: forwarding: Fix a typo (Ivan Vecera) [1941938] - selftests: mlxsw: spectrum-2: Remove q_in_vni_veto test (Ivan Vecera) [1941938] - selftests: forwarding: Add test for dual VxLAN bridge (Ivan Vecera) [1941938] - mlxsw: Allow 802.1d and .1ad VxLAN bridges to coexist on Spectrum>=2 (Ivan Vecera) [1941938] - mlxsw: Add struct mlxsw_sp_switchdev_ops per ASIC (Ivan Vecera) [1941938] - mlxsw: spectrum: Add mlxsw_sp_port_egress_ethtype_set() (Ivan Vecera) [1941938] - mlxsw: reg: Add Switch Port Egress VLAN EtherType Register (Ivan Vecera) [1941938] - mlxsw: reg: Add egr_et_set field to SPVID (Ivan Vecera) [1941938] - selftests: mlxsw: Test egress sampling limitation on Spectrum-1 only (Ivan Vecera) [1941938] - selftests: mlxsw: Add tc sample tests for new triggers (Ivan Vecera) [1941938] - mlxsw: spectrum_acl: Offload FLOW_ACTION_SAMPLE (Ivan Vecera) [1941938] - mlxsw: core_acl_flex_actions: Add mirror sampler action (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Add support for egress sampling (Ivan Vecera) [1941938] - mlxsw: spectrum: Start using sampling triggers hash table (Ivan Vecera) [1941938] - mlxsw: spectrum: Track sampling triggers in a hash table (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Pass matchall entry to sampling operations (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Push sampling checks to per-ASIC operations (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Propagate extack further (Ivan Vecera) [1941938] - selftests: mlxsw: Add tc sample tests (Ivan Vecera) [1941938] - mlxsw: spectrum: Report extra metadata to psample module (Ivan Vecera) [1941938] - mlxsw: spectrum: Remove mlxsw_sp_sample_receive() (Ivan Vecera) [1941938] - mlxsw: spectrum: Remove unnecessary RCU read-side critical section (Ivan Vecera) [1941938] - mlxsw: pci: Set extra metadata in skb control block (Ivan Vecera) [1941938] - mlxsw: Create dedicated field for Rx metadata in skb control block (Ivan Vecera) [1941938] - mlxsw: pci: Add more metadata fields to CQEv2 (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Implement sampling using mirroring (Ivan Vecera) [1941938] - mlxsw: spectrum_trap: Split sampling traps between ASICs (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Split sampling support between ASICs (Ivan Vecera) [1941938] - mlxsw: spectrum_span: Add SPAN probability rate support (Ivan Vecera) [1941938] - mlxsw: reg: Extend mirroring registers with probability rate field (Ivan Vecera) [1941938] - mlxsw: spectrum_span: Add SPAN session identifier support (Ivan Vecera) [1941938] - mlxsw: Adjust some MFDE fields shift and size to fw implementation (Ivan Vecera) [1941938] - mlxsw: core: Expose MFDE.log_ip to devlink health (Ivan Vecera) [1941938] - mlxsw: reg: Extend MFDE register with new log_ip field (Ivan Vecera) [1941938] - mlxsw: spectrum: Bump minimum FW version to xx.2008.2406 (Ivan Vecera) [1941938] - mlxsw: reg: Fix comment about slot_index field in PMAOS register (Ivan Vecera) [1941938] - mlxsw: spectrum: Reword an error message for Q-in-Q veto (Ivan Vecera) [1941938] - mlxsw: spectrum_ethtool: Add an external speed to PTYS register (Ivan Vecera) [1941938] - mlxsw: spectrum_span: Do not overwrite policer configuration (Ivan Vecera) [1941938] - selftests: forwarding: Specify interface when invoking mausezahn (Ivan Vecera) [1941938] - selftests: mlxsw: Add a scale test for physical ports (Ivan Vecera) [1941938] - mlxsw: Register physical ports as a devlink resource (Ivan Vecera) [1941938] - mlxsw: pci: switch from 'pci_' to 'dma_' API (Ivan Vecera) [1941938] - mlxsw: core: Increase critical threshold for ASIC thermal zone (Ivan Vecera) [1941938] - mlxsw: core: Add validation of transceiver temperature thresholds (Ivan Vecera) [1941938] - selftests: mlxsw: Set headroom size of correct port (Ivan Vecera) [1941938] - net/mlxfw: Use kzalloc for allocating only one thing (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use eXtended mezzanine to offload IPv4 router (Ivan Vecera) [1941938] - mlxsw: spectrum: Set KVH XLT cache mode for Spectrum2/3 (Ivan Vecera) [1941938] - mlxsw: spectrum_router_xm: Introduce basic XM cache flushing (Ivan Vecera) [1941938] - mlxsw: reg: Add Router LPM Cache Enable Register (Ivan Vecera) [1941938] - mlxsw: reg: Add Router LPM Cache ML Delete Register (Ivan Vecera) [1941938] - mlxsw: spectrum_router_xm: Implement L-value tracking for M-index (Ivan Vecera) [1941938] - mlxsw: reg: Add XM Router M Table Register (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce per-ASIC XM initialization (Ivan Vecera) [1941938] - mlxsw: reg: Add XM Lookup Table Query Register (Ivan Vecera) [1941938] - mlxsw: reg: Add Router XLT M select Register (Ivan Vecera) [1941938] - mlxsw: Ignore ports that are connected to eXtended mezanine (Ivan Vecera) [1941938] - mlxsw: pci: Obtain info about ports used by eXtended mezanine (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce XM implementation of router low-level ops (Ivan Vecera) [1941938] - mlxsw: reg: Add Router XLT Enable Register (Ivan Vecera) [1941938] - mlxsw: reg: Add XM Direct Register (Ivan Vecera) [1941938] - selftests: mlxsw: Add Q-in-VNI veto tests (Ivan Vecera) [1941938] - selftests: forwarding: Add Q-in-VNI test (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Allow joining VxLAN to 802.1ad bridge (Ivan Vecera) [1941938] - mlxsw: Veto Q-in-VNI for Spectrum-1 ASIC (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Use ops->vxlan_join() when adding VLAN to VxLAN device (Ivan Vecera) [1941938] - mlxsw: spectrum_nve_vxlan: Add support for Q-in-VNI for Spectrum-2 ASIC (Ivan Vecera) [1941938] - mlxsw: spectrum: Publish mlxsw_sp_ethtype_to_sver_type() (Ivan Vecera) [1941938] - mlxsw: Save EtherType as part of mlxsw_sp_nve_config (Ivan Vecera) [1941938] - mlxsw: Save EtherType as part of mlxsw_sp_nve_params (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Create common function for joining VxLAN to VLAN-aware bridge (Ivan Vecera) [1941938] - mlxsw: reg: Add support for tunnel port in SPVID register (Ivan Vecera) [1941938] - mlxsw: reg: Add Switch Port VLAN Stacking Register (Ivan Vecera) [1941938] - mlxsw: Use one enum for all registers that contain tunnel_port field (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Reduce mlxsw_sp_ipip_fib_entry_op_gre4() (Ivan Vecera) [1941938] - mlxsw: spectrum: Bump minimum FW version to xx.2008.2018 (Ivan Vecera) [1941938] - mlxsw: core_acl: Use an array instead of a struct with a zero-length array (Ivan Vecera) [1941938] - mlxsw: spectrum_mr: Use flexible-array member instead of zero-length array (Ivan Vecera) [1941938] - mlxsw: core: Trace EMAD events (Ivan Vecera) [1941938] - selftests: mlxsw: Test RIF's reference count when joining a LAG (Ivan Vecera) [1941938] - mlxsw: spectrum: Apply RIF configuration when joining a LAG (Ivan Vecera) [1941938] - selftests: forwarding: Add QinQ veto testing (Ivan Vecera) [1941938] - mlxsw: Add QinQ configuration vetoes (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Add support of QinQ traffic (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Create common functions for VLAN-aware bridge (Ivan Vecera) [1941938] - mlxsw: Make EtherType configurable when pushing VLAN at ingress (Ivan Vecera) [1941938] - mlxsw: spectrum: Only treat 802.1q packets as tagged packets (Ivan Vecera) [1941938] - mlxsw: reg: Add et_vlan field to SPVID register (Ivan Vecera) [1941938] - mlxsw: reg: Add Switch Port VLAN Classification Register (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Update adjacency index more efficiently (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Track nexthop group virtual router membership (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Rollback virtual router adjacency pointer update (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass virtual router parameters directly instead of pointer (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Fix error handling issue (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Resolve RIF from nexthop struct instead of neighbour (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use loopback RIF for unresolved nexthops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use different trap identifier for unresolved nexthops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Create loopback RIF during initialization (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Allow returning errors from mlxsw_sp_nexthop_group_refresh() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Add an indication if a nexthop group can be destroyed (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Re-order mlxsw_sp_nexthop6_group_get() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Set FIB entry's type based on nexthop group (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Set FIB entry's type after creating nexthop group (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass ifindex to mlxsw_sp_ipip_entry_find_by_decap() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Set ifindex for IPv4 nexthops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Fix wrong kfree() in error path (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Remove outdated comment (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Consolidate mlxsw_sp_nexthop{4, 6}_type_fini() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Consolidate mlxsw_sp_nexthop{4, 6}_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Remove unused argument from mlxsw_sp_nexthop6_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass nexthop netdev to mlxsw_sp_nexthop4_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass nexthop netdev to mlxsw_sp_nexthop6_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_ipip: Remove overlay protocol from can_offload() callback (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Split nexthop group configuration to a different struct (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Move IPv4 FIB info into a union in nexthop group struct (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Remove unused field 'prio' from IPv4 FIB entry struct (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Store FIB info in route (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Associate neighbour table with nexthop instead of group (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use nexthop group type in hash table key (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Add nexthop group type field (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Compare key with correct object type (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce FIB entry update op (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Track FIB entry committed state and skip uncommitted on delete (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce fib_entry priv for low-level ops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Have FIB entry op context allocated for the instance (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Prepare work context for possible bulking (Ivan Vecera) [1941938] - mlxsw: spectrum: Push RALUE packing and writing into low-level router ops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use RALUE pack helper from abort function (Ivan Vecera) [1941938] - mlxsw: reg: Allow to pass NULL pointer to mlxsw_reg_ralue_pack4/6() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass destination IP as a pointer to mlxsw_reg_ralue_pack4() (Ivan Vecera) [1941938] - mlxsw: spectrum: Export RALUE pack helper and use it from IPIP (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Push out RALUE pack into separate helper (Ivan Vecera) [1941938] - mlxsw: spectrum: Propagate context from work handler containing RALUE payload (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce FIB event queue instead of separate works (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use RALUE-independent op arg (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass non-register proto enum to __mlxsw_sp_router_set_abort_trap() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce low-level ops and implement them for RALXX regs (Ivan Vecera) [1941938] - mlxsw: reg: Add XRALXX Registers (Ivan Vecera) [1941938] - hwmon: (mlxreg-fan) Add support for fan drawers capability and present registers (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Add callback to notify mux creation completion (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Extend supported mux number (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Extend driver to support word address space devices (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Get rid of adapter numbers enforcement (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Prepare mux selection infrastructure for two-byte support (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Convert driver to platform driver (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Move header file out of x86 realm (Ivan Vecera) [1941938] - platform/x86: mlxcpld: Update module license (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Update module license (Ivan Vecera) [1941938] - i2c: mlxcpld: Add support for I2C bus frequency setting (Ivan Vecera) [1941938] - i2c: mlxcpld: Decrease polling time for performance improvement (Ivan Vecera) [1941938] - i2c: mlxcpld: Update module license (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Fix item counter assignment for MSN2700/ComEx system (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Fix item counter assignment for MSN2700, MSN24xx systems (Ivan Vecera) [1941938] - platform/x86: mlx-platform: remove an unused variable (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Remove PSU EEPROM from MSN274x platform configuration (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Remove PSU EEPROM from default platform configuration (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Add capability field to platform FAN description (Ivan Vecera) [1941938] - platform_data/mlxreg: Extend core platform structure (Ivan Vecera) [1941938] - platform_data/mlxreg: Update module license (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Fix extended topology configuration for power supply units (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Remove PSU EEPROM configuration (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Extend FAN platform data description (Ivan Vecera) [1941938] - platform_data/mlxreg: Add presence register field for FAN devices (Ivan Vecera) [1941938] - Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-io: Add support for complex attributes (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Add more definitions for system attributes (Ivan Vecera) [1941938] - platform_data/mlxreg: Add support for complex attributes (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: Add environmental data to uevent (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: Use capability register for attribute creation (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: Modify module license (Ivan Vecera) [1941938] - lib/string_helpers: Introduce string_upper() and string_lower() helpers (Ivan Vecera) [1941938] - i2c: mlxcpld: check correct size of maximum RECV_LEN packet (Ivan Vecera) [1941938] - docs: watchdog: mlx-wdt: Add description of new watchdog type 3 (Ivan Vecera) [1941938] - watchdog: mlx-wdt: support new watchdog type with longer timeout period (Ivan Vecera) [1941938] - platform/x86: mlx-platform: support new watchdog type with longer timeout (Ivan Vecera) [1941938] - platform_data/mlxreg: support new watchdog type with longer timeout period (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: convert to use i2c_new_client_device() (Ivan Vecera) [1941938] - selftests: icmp_redirect: IPv6 PMTU info should be cleared after redirect (Hangbin Liu) [1986227] - selftests: icmp_redirect: remove from checking for IPv6 route get (Hangbin Liu) [1986227] - selftests: icmp_redirect: support expected failures (Hangbin Liu) [1986227] - selftests: disable rp_filter for icmp_redirect.sh (Hangbin Liu) [1986227] - selftests: icmp_redirect: Add support for routing via nexthop objects (Hangbin Liu) [1986227] - selftest: Fixes for icmp_redirect test (Hangbin Liu) [1986227] - selftests: Add redirect tests (Hangbin Liu) [1986227] - redhat: enable vdpa_sim_net vdpa_sim_block vp_vdpa (Cindy Lu) [1975173] - virtio/vdpa: clear the virtqueue state during probe (Cindy Lu) [1975173] - vp_vdpa: allow set vq state to initial state after reset (Cindy Lu) [1975173] - virtio-pci library: introduce vp_modern_get_driver_features() (Cindy Lu) [1975173] - vdpa: support packed virtqueue for set/get_vq_state() (Cindy Lu) [1975173] - vdpa/mlx5: Clear vq ready indication upon device reset (Cindy Lu) [1975173] - vdpa/mlx5: Add support for doorbell bypassing (Cindy Lu) [1975173] - vdpa/mlx5: Add support for running with virtio_vdpa (Cindy Lu) [1975173] - vdp/mlx5: Fix setting the correct dma_device (Cindy Lu) [1975173] - vdpa/mlx5: Support creating resources with uid == 0 (Cindy Lu) [1975173] - vdpa/mlx5: Fix possible failure in umem size calculation (Cindy Lu) [1975173] - vdpa/mlx5: Fix umem sizes assignments on VQ create (Cindy Lu) [1975173] - vp_vdpa: correct the return value when fail to map notification (Cindy Lu) [1975173] - virtio_net: Fix error handling in virtnet_restore() (Cindy Lu) [1975173] - virtio-blk: Fix memory leak among suspend/resume procedure (Cindy Lu) [1975173] - vDPA/ifcvf: reuse pre-defined macros for device ids and vendor ids (Cindy Lu) [1975173] - virtio: update virtio id table, add transitional ids (Cindy Lu) [1975173] - vDPA/ifcvf: implement doorbell mapping for ifcvf (Cindy Lu) [1975173] - vDPA/ifcvf: record virtio notify base (Cindy Lu) [1975173] - vdpa_sim_blk: remove duplicate include of linux/blkdev.h (Cindy Lu) [1975173] - {net,vdpa}/mlx5: Configure interface MAC into mpfs L2 table (Cindy Lu) [1975173] - virtio_pci_modern: correct sparse tags for notify (Cindy Lu) [1975173] - virtio_pci_modern: __force cast the notify mapping (Cindy Lu) [1975173] - vDPA/ifcvf: get_config_size should return dev specific config size (Cindy Lu) [1975173] - vDPA/ifcvf: enable Intel C5000X-PL virtio-block for vDPA (Cindy Lu) [1975173] - vDPA/ifcvf: deduce VIRTIO device ID when probe (Cindy Lu) [1975173] - vdpa_sim_blk: add support for vdpa management tool (Cindy Lu) [1975173] - vdpa_sim_blk: handle VIRTIO_BLK_T_GET_ID (Cindy Lu) [1975173] - vdpa_sim_blk: implement ramdisk behaviour (Cindy Lu) [1975173] - vdpa: add vdpa simulator for block device (Cindy Lu) [1975173] - vhost/vdpa: Remove the restriction that only supports virtio-net devices (Cindy Lu) [1975173] - vhost/vdpa: use get_config_size callback in vhost_vdpa_config_validate() (Cindy Lu) [1975173] - vdpa: add get_config_size callback in vdpa_config_ops (Cindy Lu) [1975173] - vdpa_sim: cleanup kiovs in vdpasim_free() (Cindy Lu) [1975173] - vringh: add vringh_kiov_length() helper (Cindy Lu) [1975173] - vringh: implement vringh_kiov_advance() (Cindy Lu) [1975173] - vringh: explain more about cleaning riov and wiov (Cindy Lu) [1975173] - vringh: reset kiov 'consumed' field in __vringh_iov() (Cindy Lu) [1975173] - vringh: add 'iotlb_lock' to synchronize iotlb accesses (Cindy Lu) [1975173] - vdpa_sim: use iova module to allocate IOVA addresses (Cindy Lu) [1975173] - vDPA/ifcvf: deduce VIRTIO device ID from pdev ids (Cindy Lu) [1975173] - vDPA/ifcvf: verify mandatory feature bits for vDPA (Cindy Lu) [1975173] - vDPA/ifcvf: fetch device feature bits when probe (Cindy Lu) [1975173] - vDPA/ifcvf: remove the version number string (Cindy Lu) [1975173] - vDPA/ifcvf: rename original IFCVF dev ids to N3000 ids (Cindy Lu) [1975173] - vDPA/ifcvf: enable Intel C5000X-PL virtio-net for vDPA (Cindy Lu) [1975173] - vDPA/ifcvf: get_vendor_id returns a device specific vendor id (Cindy Lu) [1975173] - vhost-vdpa: fix vm_flags for virtqueue doorbell mapping (Cindy Lu) [1975173] - vp_vdpa: report doorbell address (Cindy Lu) [1975173] - virtio-pci library: report resource address (Cindy Lu) [1975173] - virito_pci libray: hide vp_modern_map_capability() (Cindy Lu) [1975173] - virtio_pci_modern: hide vp_modern_get_queue_notify_off() (Cindy Lu) [1975173] - vp_vdpa: switch to use vp_modern_map_vq_notify() (Cindy Lu) [1975173] - virtio-pci library: switch to use vp_modern_map_vq_notify() (Cindy Lu) [1975173] - virtio_pci_modern: introduce helper to map vq notify area (Cindy Lu) [1975173] - virtio-net: don't allocate control_buf if not supported (Cindy Lu) [1975173] - vdpa: Follow kdoc comment style (Cindy Lu) [1975173] - vdpa: Follow kdoc comment style (Cindy Lu) [1975173] - vdpa/mlx5: Enable user to add/delete vdpa device (Cindy Lu) [1975173] - vdpa: introduce virtio pci driver (Cindy Lu) [1975173] - vdpa/mlx5: Set err = -ENOMEM in case dma_map_sg_attrs fails (Cindy Lu) [1975173] - vhost-vdpa: protect concurrent access to vhost device iotlb (Cindy Lu) [1975173] - vdpa/mlx5: Fix suspend/resume index restoration (Cindy Lu) [1975173] - vdpa/mlx5: Fix wrong use of bit numbers (Cindy Lu) [1975173] - vdpa/mlx5: should exclude header length and fcs from mtu (Cindy Lu) [1975173] - vhost-vdpa: set v->config_ctx to NULL if eventfd_ctx_fdget() fails (Cindy Lu) [1975173] - vhost-vdpa: fix use-after-free of v->config_ctx (Cindy Lu) [1975173] - vhost_vdpa: fix the missing irq_bypass_unregister_producer() invocation (Cindy Lu) [1975173] - vdpa_sim: Skip typecasting from void* (Cindy Lu) [1975173] - vdpa: set the virtqueue num during register (Cindy Lu) [1975173] - vdpa/mlx5: fix param validation in mlx5_vdpa_get_config() (Cindy Lu) [1975173] - virtio_vdpa: don't warn when fail to disable vq (Cindy Lu) [1975173] - virtio-pci: introduce modern device module (Cindy Lu) [1975173] - virito-pci-modern: rename map_capability() to vp_modern_map_capability() (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper to get notification offset (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper for getting queue nums (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper for setting/geting queue size (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper to set/get queue_enable (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_queue_address() (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_set_queue_vector() (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_generation() (Cindy Lu) [1975173] - virtio-pci-modern: introduce helpers for setting and getting features (Cindy Lu) [1975173] - virtio-pci-modern: introduce helpers for setting and getting status (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper to set config vector (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_remove() (Cindy Lu) [1975173] - virtio-pci-modern: factor out modern device initialization logic (Cindy Lu) [1975173] - virtio-pci: split out modern device (Cindy Lu) [1975173] - virtio-pci: do not access iomem via struct virtio_pci_device directly (Cindy Lu) [1975173] - vdpa_sim_net: Add support for user supported devices (Cindy Lu) [1975173] - vdpa: Enable user to query vdpa device info (Cindy Lu) [1975173] - vdpa: Enable a user to add and delete a vdpa device (Cindy Lu) [1975173] - vdpa: Define vdpa mgmt device, ops and a netlink interface (Cindy Lu) [1975173] - vdpa: Extend routine to accept vdpa device name (Cindy Lu) [1975173] - vdpa_sim_net: Make mac address array static (Cindy Lu) [1975173] - vdpa/mlx5: Restore the hardware used index after change map (Cindy Lu) [1975173] - vdpa/mlx5: Fix memory key MTT population (Cindy Lu) [1975173] - vdpa: Use simpler version of ida allocation (Cindy Lu) [1975173] - vdpa: Add missing comment for virtqueue count (Cindy Lu) [1975173] - vdpa: split vdpasim to core and net modules (Cindy Lu) [1975173] - vdpa_sim: split vdpasim_virtqueue's iov field in out_iov and in_iov (Cindy Lu) [1975173] - vdpa_sim: make vdpasim->buffer size configurable (Cindy Lu) [1975173] - vdpa_sim: use kvmalloc to allocate vdpasim->buffer (Cindy Lu) [1975173] - vdpa_sim: set vringh notify callback (Cindy Lu) [1975173] - vdpa_sim: add set_config callback in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add get_config callback in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: make 'config' generic and usable for any device type (Cindy Lu) [1975173] - vdpa_sim: store parsed MAC address in a buffer (Cindy Lu) [1975173] - vdpa_sim: add work_fn in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add supported_features field in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add device id field in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add struct vdpasim_dev_attr for device attributes (Cindy Lu) [1975173] - vdpa_sim: rename vdpasim_config_ops variables (Cindy Lu) [1975173] - vdpa_sim: make IOTLB entries limit configurable (Cindy Lu) [1975173] - vdpa_sim: remove hard-coded virtq count (Cindy Lu) [1975173] - vdpa_sim: remove unnecessary headers inclusion (Cindy Lu) [1975173] - vdpa: remove unnecessary 'default n' in Kconfig entries (Cindy Lu) [1975173] - vdpa: ifcvf: Use dma_set_mask_and_coherent to simplify code (Cindy Lu) [1975173] - vhost_vdpa: switch to vmemdup_user() (Cindy Lu) [1975173] - vhost: vringh: use krealloc_array() (Cindy Lu) [1975173] - vringh: fix vringh_iov_push_*() documentation (Cindy Lu) [1975173] - vringh: fix __vringh_iov() when riov and wiov are different (Cindy Lu) [1975173] - net: sched: fix memory leak in tcindex_partial_destroy_work (Davide Caratti) [1987042] - net/sched: act_ct: remove and free nf_table callbacks (Davide Caratti) [1987042] - net: sched: fix warning in tcindex_alloc_perfect_hash (Davide Caratti) [1987042] - pkt_sched: sch_qfq: fix qfq_change_class() error path (Davide Caratti) [1987042] - sch_htb: fix refcount leak in htb_parent_to_leaf_offload (Davide Caratti) [1987042] - sch_dsmark: fix a NULL deref in qdisc_reset() (Davide Caratti) [1987042] - sch_red: fix off-by-one checks in red_check_params() (Davide Caratti) [1987042] - ipv6: fix 'disable_policy' for fwd packets (Hangbin Liu) [1985837] - net: ipv6: fix return value of ip6_skb_dst_mtu (Hangbin Liu) [1985837] - ipv6: fix out-of-bound access in ip6_parse_tlv() (Hangbin Liu) [1985837] - ipv6: exthdrs: do not blindly use init_net (Hangbin Liu) [1985837] - ipv6: record frag_max_size in atomic fragments in input path (Hangbin Liu) [1985837] - selftests: net: devlink_port_split.py: skip the test if no devlink device (Hangbin Liu) [1985836] - selftests/net: bump timeout to 5 minutes (Hangbin Liu) [1985836] - selftests: net: forwarding: Fix a typo (Hangbin Liu) [1985836] - selftests/net: so_txtime: remove unneeded semicolon (Hangbin Liu) [1985836] - tools: selftests: add test for changing routes with PTMU exceptions (Hangbin Liu) [1985836] - selftests: fix the return value for UDP GRO test (Hangbin Liu) [1985836] - selftests: pmtu.sh: improve the test result processing (Hangbin Liu) [1985836] - selftests: pmtu.sh: use $ksft_skip for skipped return code (Hangbin Liu) [1985836] - selftests/net: timestamping: add ptp v2 support (Hangbin Liu) [1985836] - ixgbevf: add correct exception tracing for XDP (Ken Cox) [1920268] - intel: call csum functions with well formatted arguments (Ken Cox) [1920268] - net: intel: Remove unused function pointer typedef ixgbe_mc_addr_itr (Ken Cox) [1920268] - ixgbevf: Fix fall-through warnings for Clang (Ken Cox) [1920268] - intel: clean up mismatched header comments (Ken Cox) [1920268] - ixgbe: fail to create xfrm offload of IPsec tunnel mode SA (Ken Cox) [1920268] - net: ixgbevf: use skb_csum_is_sctp instead of protocol check (Ken Cox) [1920268] - treewide: Use sizeof_field() macro (Ken Cox) [1920268] - selftests: net: add ESP-in-UDP PMTU test (Xin Long) [1986599] - udp: check encap socket in __udp_lib_err (Xin Long) [1986599] - udp: fix possible user after free in error handler (Xin Long) [1986599] - udpv6: fix possible user after free in error handler (Xin Long) [1986599] - udp: Support for error handlers of tunnels with arbitrary destination port (Xin Long) [1986599] - bpf, sockmap, udp: sk_prot needs inuse_idx set for proc stats (Xin Long) [1986599] - udp: properly flush normal packet at GRO time (Xin Long) [1986599] - udp: annotate data races around unix_sk(sk)->gso_size (Xin Long) [1986599] - udp: fix race between close() and udp_abort() (Xin Long) [1986599] - netfilter: conntrack: remove offload_pickup sysctl again (Florian Westphal) [1987101] - bpf, samples: Add -fno-asynchronous-unwind-tables to BPF Clang invocation (Yauheni Kaliuta) [1977162] - net/af_unix: fix a data-race in unix_dgram_sendmsg / unix_release_sock (Balazs Nemeth) [1986845] - netfilter: nf_tables: fix flowtable list del corruption (Jay Shin) [1977137] - net: qrtr: fix memory leaks (Íñigo Huguet) [1981236] - net: qrtr: fix OOB Read in qrtr_endpoint_post (Íñigo Huguet) [1981236] - net: qrtr: ns: Fix error return code in qrtr_ns_init() (Íñigo Huguet) [1981236] - net: qrtr: Avoid potential use after free in MHI send (Íñigo Huguet) [1981236] - qrtr: Convert qrtr_ports from IDR to XArray (Íñigo Huguet) [1981236] - net: qrtr: Fix memory leak on qrtr_tx_wait failure (Íñigo Huguet) [1981236] - net: qrtr: fix a kernel-infoleak in qrtr_recvmsg() (Íñigo Huguet) [1981236] - net: qrtr: fix error return code of qrtr_sendmsg() (Íñigo Huguet) [1981236] - net/qrtr: fix __netdev_alloc_skb call (Íñigo Huguet) [1981236] - net: qrtr: Fix memory leak in qrtr_tun_open (Íñigo Huguet) [1981236] - net/qrtr: restrict user-controlled length in qrtr_tun_write_iter() (Íñigo Huguet) [1981236] - net: qrtr: fix null-ptr-deref in qrtr_ns_remove (Íñigo Huguet) [1981236] - net: qrtr: Unprepare MHI channels during remove (Íñigo Huguet) [1981236] - net: qrtr: Start MHI channels during init (Íñigo Huguet) [1981236] - net: qrtr: Release distant nodes along the bridge node (Íñigo Huguet) [1981236] - net: qrtr: Add GFP flags parameter to qrtr_alloc_ctrl_packet (Íñigo Huguet) [1981236] - net: qrtr: Allow non-immediate node routing (Íñigo Huguet) [1981236] - net: qrtr: Allow forwarded services (Íñigo Huguet) [1981236] - net: qrtr: Fix port ID for control messages (Íñigo Huguet) [1981236] - net: qrtr: ns: Fix the incorrect usage of rcu_read_lock() (Íñigo Huguet) [1981236] - net: qrtr: ns: Protect radix_tree_deref_slot() using rcu read locks (Íñigo Huguet) [1981236] - net: qrtr: check skb_put_padto() return value (Íñigo Huguet) [1981236] - net: qrtr: fix usage of idr in port assignment to socket (Íñigo Huguet) [1981236] - qrtr: orphan socket in qrtr_release() (Íñigo Huguet) [1981236] - net: qrtr: Fix an out of bounds read qrtr_endpoint_post() (Íñigo Huguet) [1981236] - net: qrtr: free flow in __qrtr_node_release (Íñigo Huguet) [1981236] - treewide: replace '---help---' in Kconfig files with 'help' (Íñigo Huguet) [1981236] - net: qrtr: Allocate workqueue before kernel_bind (Íñigo Huguet) [1981236] - net: qrtr: Fix passing invalid reference to qrtr_local_enqueue() (Íñigo Huguet) [1981236] - net: qrtr: Add MHI transport layer (Íñigo Huguet) [1981236] - net: qrtr: Add tracepoint support (Íñigo Huguet) [1981236] - net: qrtr: send msgs from local of same id as broadcast (Íñigo Huguet) [1981236] - net: qrtr: Fix FIXME related to qrtr_ns_init() (Íñigo Huguet) [1981236] - net: qrtr: Respond to HELLO message (Íñigo Huguet) [1981236] - net: qrtr: Fix error pointer vs NULL bugs (Íñigo Huguet) [1981236] - net: qrtr: fix spelling mistake "serivce" -> "service" (Íñigo Huguet) [1981236] - net: qrtr: Fix the local node ID as 1 (Íñigo Huguet) [1981236] - net: qrtr: Migrate nameservice to kernel from userspace (Íñigo Huguet) [1981236] - net: qrtr: Remove receive worker (Íñigo Huguet) [1981236] - net: qrtr: Make qrtr_port_lookup() use RCU (Íñigo Huguet) [1981236] - net: qrtr: Migrate node lookup tree to spinlock (Íñigo Huguet) [1981236] - net: qrtr: Implement outgoing flow control (Íñigo Huguet) [1981236] - net: qrtr: Move resume-tx transmission to recvmsg (Íñigo Huguet) [1981236] - net: qrtr: fix len of skb_put_padto in qrtr_node_enqueue (Íñigo Huguet) [1981236] - net: qrtr: Simplify 'qrtr_tun_release()' (Íñigo Huguet) [1981236] - net: qrtr: Stop rx_worker before freeing node (Íñigo Huguet) [1981236] - net: qrtr: fix memort leak in qrtr_tun_write_iter (Íñigo Huguet) [1981236] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 (Íñigo Huguet) [1981236] - treewide: Add SPDX license identifier - Makefile/Kconfig (Íñigo Huguet) [1981236] - net: qrtr: Fix message type of outgoing packets (Íñigo Huguet) [1981236] - net: qrtr: use protocol endiannes variable (Íñigo Huguet) [1981236] - net: fix hangup on napi_disable for threaded napi (Paolo Abeni) [1949546] - net: fix race between napi kthread mode and busy poll (Paolo Abeni) [1949546] - net: add sysfs attribute to control napi threaded mode (Paolo Abeni) [1949546] - net: implement threaded-able napi poll loop support (Paolo Abeni) [1949546] - net: extract napi poll functionality to __napi_poll() (Paolo Abeni) [1949546] - mfd: intel-lpss: Use devm_ioremap_uc for MMIO (Steve Best) [1986715] - lib: devres: add a helper function for ioremap_uc (Steve Best) [1986715] - sched/rt: Fix double enqueue caused by rt_effective_prio (Juri Lelli) [1990566] - x86/crash: Remove crash_reserve_low_1M() (Lianbo Jiang) [1904318] - x86/setup: Remove CONFIG_X86_RESERVE_LOW and reservelow= options (Lianbo Jiang) [1904318] - x86/setup: Always reserve the first 1M of RAM (Lianbo Jiang) [1904318] - powerpc/kexec: blacklist functions called in real mode for kprobe (Desnes A. Nunes do Rosario) [1987281] - [s390] scsi: zfcp: Report port fc_security as unknown early during remote cable pull (Claudio Imbrenda) [1989910] - x86/boot: Use common BUILD_BUG_ON (Prarit Bhargava) [1979940] - net: phy: icplus: call phy_restore_page() when phy_select_page() fails (Petr Oros) [1955165] - net: phy: ti: take into account all possible interrupt sources (Petr Oros) [1955165] - net: phy: smsc: add missed clk_disable_unprepare in smsc_phy_probe() (Petr Oros) [1955165] - net: phy: Expose phydev::dev_flags through sysfs (Petr Oros) [1955165] - net: phy: fix save wrong speed and duplex problem if autoneg is on (Petr Oros) [1955165] - net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8081 (Petr Oros) [1955165] - net: phy: icplus: add MDI/MDIX support for IP101A/G (Petr Oros) [1955165] - net: phy: icplus: add PHY counter for IP101G (Petr Oros) [1955165] - net: phy: icplus: fix paged register access (Petr Oros) [1955165] - net: phy: icplus: don't set APS_EN bit on IP101G (Petr Oros) [1955165] - net: phy: icplus: split IP101A/G driver (Petr Oros) [1955165] - net: phy: icplus: use the .soft_reset() of the phy-core (Petr Oros) [1955165] - net: phy: icplus: drop address operator for functions (Petr Oros) [1955165] - net: phy: icplus: use PHY_ID_MATCH_EXACT() for IP101A/G (Petr Oros) [1955165] - net: phy: icplus: use PHY_ID_MATCH_MODEL() macro (Petr Oros) [1955165] - net: phy: drop explicit genphy_read_status() op (Petr Oros) [1955165] - net: phy: broadcom: remove BCM5482 1000Base-BX support (Petr Oros) [1955165] - net: mdiobus: Prevent spike on MDIO bus reset signal (Petr Oros) [1955165] - net: phy: realtek: Add support for RTL9000AA/AN (Petr Oros) [1955165] - mdio, phy: fix -Wshadow warnings triggered by nested container_of() (Petr Oros) [1955165] - net: phy: national: remove definition of DEBUG (Petr Oros) [1955165] - net: phy: ar803x: disable extended next page bit (Petr Oros) [1955165] - net: phy: smsc: fix clk error handling (Petr Oros) [1955165] - net: phy: at803x: use phy_modify_mmd() (Petr Oros) [1955165] - net: phy: replace mutex_is_locked with lockdep_assert_held in phylib (Petr Oros) [1955165] - net: phy: micrel: Add KS8851 PHY support (Petr Oros) [1955165] - net: phy: marvell: replace phy_modify() (Petr Oros) [1955165] - net: phy: micrel: fix interrupt handling (Petr Oros) [1955165] - net: phy: remove the .did_interrupt() and .ack_interrupt() callback (Petr Oros) [1955165] - net: phy: qsemi: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: qsemi: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: ti: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: ti: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: national: remove the use of the .ack_interrupt() (Petr Oros) [1955165] - net: phy: national: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: micrel: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: micrel: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: icplus: remove the use .ack_interrupt() (Petr Oros) [1955165] - net: phy: icplus: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: intel-xway: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: intel-xway: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - mdio_bus: suppress err message for reset gpio EPROBE_DEFER (Petr Oros) [1955165] - net: phy: don't duplicate driver name in phy_attached_print (Petr Oros) [1955165] - net: phy: ste10Xp: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: ste10Xp: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: smsc: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: smsc: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: amd: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: amd: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: lxt: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: lxt: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: marvell: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: marvell: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: microchip: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: microchip: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: vitesse: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: vitesse: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: aquantia: do not return an error on clearing pending IRQs (Petr Oros) [1955165] - net: phy: microchip_t1: Don't set .config_aneg (Petr Oros) [1955165] - docs: networking: phy: s/2.5 times faster/2.5 times as fast/ (Petr Oros) [1955165] - net: phy: realtek: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: realtek: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: add genphy_handle_interrupt_no_ack() (Petr Oros) [1955165] - net: phy: davicom: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: davicom: implement generic .handle_interrupt() calback (Petr Oros) [1955165] - net: phy: cicada: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: cicada: implement the generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: broadcom: remove use of ack_interrupt() (Petr Oros) [1955165] - net: phy: broadcom: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: aquantia: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: aquantia: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: mscc: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: mscc: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: at803x: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: at803x: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: make .ack_interrupt() optional (Petr Oros) [1955165] - net: phy: add a shutdown procedure (Petr Oros) [1955165] - net: phy: export phy_error and phy_trigger_machine (Petr Oros) [1955165] - drivers: net: phy: Fix spelling in comment defalut to default (Petr Oros) [1955165] - net: phy: marvell: add special handling of Finisar modules with 88E1111 (Petr Oros) [1955165] - net: phylink: disable BMCR_ISOLATE in phylink_mii_c22_pcs_config (Petr Oros) [1955165] - gpiolib: Extract gpiod_not_found() helper (Petr Oros) [1955165] - net: phy: marvell: Use phy_read_paged() instead of open coding it (Petr Oros) [1955165] - net: phy: dp83869: fix unsigned comparisons against less than zero values (Petr Oros) [1955165] - net: phy: dp83869: Add speed optimization feature (Petr Oros) [1955165] - net: phy: dp83869: support Wake on LAN (Petr Oros) [1955165] - net: phy: dp83822: Update the fiber advertisement for speed (Petr Oros) [1955165] - net: dp83869: Add ability to advertise Fiber connection (Petr Oros) [1955165] - net: phy: Do not warn in phy_stop() on PHY_DOWN (Petr Oros) [1955165] - net: phy: Avoid NPD upon phy_detach() when driver is unbound (Petr Oros) [1955165] - net: phy: bcm7xxx: request and manage GPHY clock (Petr Oros) [1955165] - net: phy: smsc: LAN8710/20: add phy refclk in support (Petr Oros) [1955165] - net: phy: smsc: simplify config_init callback (Petr Oros) [1955165] - net: phy: smsc: skip ENERGYON interrupt if disabled (Petr Oros) [1955165] - net: phy: dp83867: Fix various styling and space issues (Petr Oros) [1955165] - net: mdiobus: add clause 45 mdiobus write accessor (Petr Oros) [1955165] - net: phylink: consider QSGMII interface mode in phylink_mii_c22_pcs_get_state (Petr Oros) [1955165] - net: phylink: add helper function to decode USXGMII word (Petr Oros) [1955165] - net: phy: DP83822: Add ability to advertise Fiber connection (Petr Oros) [1955165] - net: dp83869: Fix RGMII internal delay configuration (Petr Oros) [1955165] - net: mdio-mux-gpio: use devm_gpiod_get_array() (Petr Oros) [1955165] - net: phy: add USXGMII link partner ability constants (Petr Oros) [1955165] - net: phy: mdio-octeon: Cleanup module loading dependencies (Petr Oros) [1955165] - net: phy: cavium: Improve __iomem mess (Petr Oros) [1955165] - net: phy: Add a helper to return the index for of the internal delay (Petr Oros) [1955165] - dt-bindings: net: Add RGMII internal delay for DP83869 (Petr Oros) [1955165] - net: dp83869: Add RGMII internal delay configuration (Petr Oros) [1955165] - net: phy: DP83822: Add setting the fixed internal delay (Petr Oros) [1955165] - net: dp83869: Fix OF_MDIO config check (Petr Oros) [1955165] - net: dp83867: Fix OF_MDIO config check (Petr Oros) [1955165] - net: marvell: Fix OF_MDIO config check (Petr Oros) [1955165] - net: phy: mscc: use mdiobus_get_phy() (Petr Oros) [1955165] - net: phy: improve phy_driver callback handle_interrupt (Petr Oros) [1955165]- net/mlx5e: Add IPsec support to uplink representor (Alaa Hleihel) [1980171 1926098] - net/mlx5e: TC: Reserved bit 31 of REG_C1 for IPsec offload (Alaa Hleihel) [1980171 1926098] - net/mlx5e: TC: Use bit counts for register mapping (Alaa Hleihel) [1980171 1926098] - RDMA/mlx5: Don't access NULL-cleared mpi pointer (Alaa Hleihel) [1980171] - RDMA/mlx5: Split mlx5_ib_update_xlt() into ODP and non-ODP cases (Alaa Hleihel) [1980171] - ip6_tunnel: allow redirecting ip6gre and ipxip6 packets to eth devices (Guillaume Nault) [1921539] - gre: let mac_header point to outer header only when necessary (Guillaume Nault) [1921539] - sit: allow redirecting ip6ip, ipip and mplsip packets to eth devices (Guillaume Nault) [1921539] - ipip: allow redirecting ipip and mplsip packets to eth devices (Guillaume Nault) [1921539] - bareudp: allow redirecting bareudp packets to eth devices (Guillaume Nault) [1921539] - net: handle ARPHRD_IP6GRE in dev_is_mac_header_xmit() (Guillaume Nault) [1921539] - net: ipv4: fix memory leak in ip_mc_add1_src (Guillaume Nault) [1987605] - net: ipv4: fix memory leak in netlbl_cipsov4_add_std (Guillaume Nault) [1987605] - ixgbe: fix probing of multi-port devices with one MDIO (Ken Cox) [1968696] - [s390] s390/qdio: let driver manage the QAOB (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove RX VLAN filter stubs in L3 driver (Claudio Imbrenda) [1919250] - [s390] s390/qeth: enable napi_consume_skb() for pending TX buffers (Claudio Imbrenda) [1919250] - [s390] s390/qeth: allocate initial TX Buffer structs with GFP_KERNEL (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix notification for pending buffers during teardown (Claudio Imbrenda) [1919250] - [s390] s390/qeth: schedule TX NAPI on QAOB completion (Claudio Imbrenda) [1919250] - [s390] s390/qeth: improve completion of pending TX buffers (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix memory leak after failed TX Buffer allocation (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't fake a TX completion interrupt after TX error (Claudio Imbrenda) [1919250] - [s390] s390/qeth: make cast type selection for af_iucv skbs robust (Claudio Imbrenda) [1919250] - [s390] s390/qeth: pass proto to qeth_l3_get_cast_type() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove qeth_get_ip_version() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: clean up load/remove code for disciplines (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix L2 header access in qeth_l3_osa_features_check() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix locking for discipline setup / removal (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix deadlock during recovery (Claudio Imbrenda) [1919250] - [s390] s390/qeth: make qeth_qdio_handle_aob() more robust (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove QETH_QDIO_BUF_HANDLED_DELAYED state (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't replace a fully completed async TX buffer (Claudio Imbrenda) [1919250] - [s390] s390/qeth: use dev->groups for common sysfs attributes (Claudio Imbrenda) [1919250] - [s390] s390/ccwgroup: use bus->dev_groups for bus-based sysfs attributes (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't call INIT_LIST_HEAD() on iob's list entry (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix tear down of async TX buffers (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix af_iucv notification race (Claudio Imbrenda) [1919250] - [s390] s390/qeth: improve selection of ethtool link modes (Claudio Imbrenda) [1919250] - [s390] s390/qeth: use QUERY OAT for initial link info (Claudio Imbrenda) [1919250] - [s390] s390/qeth: clean up default cases for ethtool link mode (Claudio Imbrenda) [1919250] - [s390] s390/qeth: set static link info during initialization (Claudio Imbrenda) [1919250] - [s390] s390/qeth: improve QUERY CARD INFO processing (Claudio Imbrenda) [1919250] - [s390] s390/qeth: tolerate error when querying card info (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove useless if/else (Claudio Imbrenda) [1919250] - [s390] s390/qeth: reduce rtnl locking for switchdev events (Claudio Imbrenda) [1919250] - [s390] s390/qeth: static checker cleanups (Claudio Imbrenda) [1919250] - [s390] s390/qeth: use netdev_name() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: constify the disciplines (Claudio Imbrenda) [1919250] - [s390] s390/qeth: allow configuration of TX queues for OSA devices (Claudio Imbrenda) [1919250] - [s390] s390/qeth: de-magic the QIB parm area (Claudio Imbrenda) [1919250] - [s390] s390/qeth: keep track of wanted TX queues (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove forward declarations in L2 code (Claudio Imbrenda) [1919250] - [s390] s390/qeth: consolidate teardown code (Claudio Imbrenda) [1919250] - [s390] s390/qeth: consolidate online code (Claudio Imbrenda) [1919250] - [s390] s390/qeth: cancel cmds earlier during teardown (Claudio Imbrenda) [1919250] - [s390] s390/qeth: tighten ucast IP locking (Claudio Imbrenda) [1919250] - [s390] s390/qeth: replace deprecated simple_stroul() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: clean up string ops in qeth_l3_parse_ipatoe() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: relax locking for ipato config data (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't init refcount twice for mcast IPs (Claudio Imbrenda) [1919250] - mm, page_alloc: check for max order in hot path (Jay Shin) [1982466] - be2net: Fix an error handling path in 'be_probe()' (Petr Oros) [1980665] - net: emulex: benet: simplify the return expression of be_if_create() (Petr Oros) [1980665] - treewide: Use fallthrough pseudo-keyword (Petr Oros) [1980665] - be2net: convert to new udp_tunnel_nic infra (Petr Oros) [1980665] - benet: use generic power management (Petr Oros) [1980665] - treewide: replace '---help---' in Kconfig files with 'help' (Petr Oros) [1980665] - hwmon: (k10temp) Zen3 Ryzen Desktop CPUs support (David Arcari) [1980072] - hwmon: (k10temp) Remove support for displaying voltage and current on Zen CPUs (David Arcari) [1980072] - hwmon: (k10temp) Add support for Zen3 CPUs (David Arcari) [1980072] - hwmon: (k10temp) Take out debugfs code (David Arcari) [1980072] - hwmon: (k10temp) Define SVI telemetry and current factors for Zen2 CPUs (David Arcari) [1980072] - hwmon: (k10temp) Create common functions and macros for Zen CPU families (David Arcari) [1980072] - hwmon: (k10temp) Add AMD family 17h model 60h PCI match (David Arcari) [1980072] - hwmon: (k10temp) make some symbols static (David Arcari) [1980072] - hwmon: (k10temp) Reorganize and simplify temperature support detection (David Arcari) [1980072] - hwmon: (k10temp) Swap Tdie and Tctl on Family 17h CPUs (David Arcari) [1980072] - hwmon: (k10temp) Display up to eight sets of CCD temperatures (David Arcari) [1980072] - hwmon: (k10temp) Add debugfs support (David Arcari) [1980072] - hwmon: (k10temp) Don't show temperature limits on Ryzen (Zen) CPUs (David Arcari) [1980072] - hwmon: (k10temp) Show core and SoC current and voltages on Ryzen CPUs (David Arcari) [1980072] - hwmon: (k10temp) Report temperatures per CPU die (David Arcari) [1980072] - hmon: (k10temp) Convert to use devm_hwmon_device_register_with_info (David Arcari) [1980072] - hwmon: (k10temp) Use bitops (David Arcari) [1980072] - hwmon: (k10temp) Add support for AMD family 17h, model 70h CPUs (David Arcari) [1980072] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 56 (David Arcari) [1980072] - hwmon: (k10temp) Add Hygon Dhyana support (David Arcari) [1980072] - hwmon: (k10temp) Auto-convert to use SENSOR_DEVICE_ATTR_{RO, RW, WO} (David Arcari) [1980072] - hwmon: (k10temp) Support all Family 15h Model 6xh and Model 7xh processors (David Arcari) [1980072] - hwmon: k10temp: Support Threadripper 2920X, 2970WX; simplify offset table (David Arcari) [1980072] - hwmon: (k10temp) 27C Offset needed for Threadripper2 (David Arcari) [1980072] - x86/amd_nb: Add AMD family 17h model 60h PCI IDs (David Arcari) [1980072] - x86/amd_nb: Add PCI device IDs for family 17h, model 70h (David Arcari) [1980072] - x86/pci, x86/amd_nb: Add Hygon Dhyana support to PCI and northbridge (David Arcari) [1980072] - Revert "[hwmon] hwmon: (k10temp) Add support for Zen3 CPUs" (David Arcari) [1980072] - serial: 8250: Process sysrq at port unlock time (Prarit Bhargava) [1982016] - serial: core: Include console.h from serial_core.h (Prarit Bhargava) [1982016] - serial: core: Allow processing sysrq at port unlock time (Prarit Bhargava) [1982016] - [s390] s390/dasd: add missing discipline function (Claudio Imbrenda) [1981804] - bnxt_en: Validate vlan protocol ID on RX packets (Jonathan Toppins) [1960961] - KVM: do not allow mapping valid but non-reference-counted pages (Jon Maloy) [1975515] - gfs2: Fix error handling in init_statfs (Andreas Gruenbacher) [1872440] - gfs2: Fix underflow in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Pass glock holder to gfs2_file_direct_{read,write} (Andreas Gruenbacher) [1872440] - gfs2: Prevent direct-I/O write fallback errors from getting lost (Andreas Gruenbacher) [1872440] - gfs2: Improve mmap write vs. truncate consistency (Andreas Gruenbacher) [1872440] - iomap: Permit pages without an iop to enter writeback (Andreas Gruenbacher) [1872440] - iomap: Don't create iomap_page objects for inline files (Andreas Gruenbacher) [1872440] - gfs2: Clean up gfs2_unstuff_dinode (Andreas Gruenbacher) [1872440] - gfs2: Unstuff before locking page in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Clean up the error handling in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Fix end-of-file handling in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Use resource group glock sharing (Andreas Gruenbacher) [1442151] - gfs2: Allow node-wide exclusive glock sharing (Andreas Gruenbacher) [1442151] - gfs2: Add local resource group locking (Andreas Gruenbacher) [1442151] - gfs2: Add per-reservation reserved block accounting (Andreas Gruenbacher) [1442151] - gfs2: Rename rs_{free -> requested} and rd_{reserved -> requested} (Andreas Gruenbacher) [1442151] - gfs2: Check for active reservation in gfs2_release (Andreas Gruenbacher) [1442151] - gfs2: Don't search for unreserved space twice (Andreas Gruenbacher) [1442151] - gfs2: Only pass reservation down to gfs2_rbm_find (Andreas Gruenbacher) [1442151] - gfs2: Also reflect single-block allocations in rgd->rd_extfail_pt (Andreas Gruenbacher) [1442151] - gfs2: Set GBF_FULL flags when reading resource group (Andreas Gruenbacher) [1442151] - gfs2: Don't clear GBF_FULL flags in rs_deltree (Andreas Gruenbacher) [1442151] - Revert "gfs2: Don't reject a supposedly full bitmap if we have blocks reserved" (Andreas Gruenbacher) [1442151] - gfs2: Minor gfs2_inplace_reserve cleanup (Andreas Gruenbacher) [1442151] - gfs2: Get rid of unnecessary variable in gfs2_alloc_blocks (Andreas Gruenbacher) [1442151] - gfs2: Only use struct gfs2_rbm for bitmap manipulations (Andreas Gruenbacher) [1442151] - gfs2: Turn gfs2_rbm_incr into gfs2_rbm_add (Andreas Gruenbacher) [1872440] - gfs2: Replace gfs2_lblk_to_dblk with gfs2_get_extent (Andreas Gruenbacher) [1872440] - gfs2: Turn gfs2_extent_map into gfs2_{get,alloc}_extent (Andreas Gruenbacher) [1872440] - gfs2: Add new gfs2_iomap_get helper (Andreas Gruenbacher) [1872440] - gfs2: Make inode operations static (Andreas Gruenbacher) [1872440] - gfs2: use iomap for buffered I/O in ordered and writeback mode (Andreas Gruenbacher) [1872440] - gfs2: Never call gfs2_block_zero_range with an open transaction (Andreas Gruenbacher) [1872440] - gfs2: Upgrade shared glocks for atime updates (Andreas Gruenbacher) [1872440] - gfs2: Rework read and page fault locking (Andreas Gruenbacher) [1872440] - fs: Add IOCB_NOIO flag for generic_file_read_iter (Andreas Gruenbacher) [1872440] - gfs2: Remove duplicate call from gfs2_create_inode (Andreas Gruenbacher) [1872440] - gfs2: Multi-block allocations in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: implement gfs2_block_zero_range using iomap_zero_range (Andreas Gruenbacher) [1872440] - gfs2: Add support for IOMAP_ZERO (Andreas Gruenbacher) [1872440] - gfs2: gfs2_iomap_begin cleanup (Andreas Gruenbacher) [1872440] - gfs2: Remove unused gfs2_iomap_alloc argument (Andreas Gruenbacher) [1872440] - gfs2: don't use buffer_heads in gfs2_allocate_page_backing (Andreas Gruenbacher) [1872440] - gfs2: use iomap_bmap instead of generic_block_bmap (Andreas Gruenbacher) [1872440] - gfs2: mark stuffed_readpage static (Andreas Gruenbacher) [1872440] - gfs2: merge gfs2_writepage_common into gfs2_writepage (Andreas Gruenbacher) [1872440] - gfs2: merge gfs2_writeback_aops and gfs2_ordered_aops (Andreas Gruenbacher) [1872440] - gfs2: remove the unused gfs2_stuffed_write_end function (Andreas Gruenbacher) [1872440] - gfs2: use page_offset in gfs2_page_mkwrite (Andreas Gruenbacher) [1442151] - gfs2: Add new sysfs file for gfs2 status (Andreas Gruenbacher) [1442151] - gfs2: Per-revoke accounting in transactions (Andreas Gruenbacher) [1442151] - gfs2: Rework the log space allocation logic (Andreas Gruenbacher) [1442151] - gfs2: Minor calc_reserved cleanup (Andreas Gruenbacher) [1442151] - gfs2: Move function gfs2_ail_empty_tr (Andreas Gruenbacher) [1442151] - gfs2: Get rid of current_tail() (Andreas Gruenbacher) [1442151] - gfs2: Use a tighter bound in gfs2_trans_begin (Andreas Gruenbacher) [1442151] - gfs2: Clean up gfs2_log_reserve (Andreas Gruenbacher) [1442151] - gfs2: Don't wait for journal flush in clean_journal (Andreas Gruenbacher) [1442151] - gfs2: Move lock flush locking to gfs2_trans_{begin,end} (Andreas Gruenbacher) [1442151] - gfs2: Get rid of sd_reserving_log (Andreas Gruenbacher) [1442151] - gfs2: Clean up on-stack transactions (Andreas Gruenbacher) [1442151] - gfs2: Use sb_start_intwrite in gfs2_ail_empty_gl (Andreas Gruenbacher) [1442151] - gfs2: Clean up ail2_empty (Andreas Gruenbacher) [1442151] - gfs2: Rename gfs2_{write => flush}_revokes (Andreas Gruenbacher) [1442151] - gfs2: Minor debugging improvement (Andreas Gruenbacher) [1442151] - gfs2: Some documentation updates (Andreas Gruenbacher) [1442151] - gfs2: Minor gfs2_write_revokes cleanups (Andreas Gruenbacher) [1442151] - gfs2: Simplify the buf_limit and databuf_limit definitions (Andreas Gruenbacher) [1442151] - gfs2: Un-obfuscate function jdesc_find_i (Andreas Gruenbacher) [1442151] - gfs2: Fix fall-through warnings for Clang (Andreas Gruenbacher) [1442151] - gfs2: Make gfs2_setattr_simple static (Andreas Gruenbacher) [1442151] - gfs2: Turn gfs2_meta_indirect_buffer into gfs2_meta_buffer (Andreas Gruenbacher) [1442151] - gfs2: Remove unused variable sb_format (Andreas Gruenbacher) [1442151] - gfs2: Fix dir.c function parameter descriptions (Andreas Gruenbacher) [1442151] - gfs2: Eliminate gh parameter from go_xmote_bh func (Andreas Gruenbacher) [1442151] - gfs2: don't create empty buffers for NO_CREATE (Andreas Gruenbacher) [1442151] - gfs2: Flag a withdraw if init_threads() fails (Andreas Gruenbacher) [1442151] - gfs2: bypass log flush if the journal is not live (Andreas Gruenbacher) [1442151] - gfs2: bypass signal_our_withdraw if no journal (Andreas Gruenbacher) [1442151] - gfs2: fix use-after-free in trans_drain (Andreas Gruenbacher) [1442151] - gfs2: make function gfs2_make_fs_ro() to void type (Andreas Gruenbacher) [1442151] - whack-a-mole: don't open-code iminor/imajor (Andreas Gruenbacher) [1442151] - gfs2: amend SLAB_RECLAIM_ACCOUNT on gfs2 related slab cache (Andreas Gruenbacher) [1442151] - gfs2: Remove sb_start_write from gfs2_statfs_sync (Andreas Gruenbacher) [1442151] - gfs2: check for empty rgrp tree in gfs2_ri_update (Andreas Gruenbacher) [1442151] - gfs2: set lockdep subclass for iopen glocks (Andreas Gruenbacher) [1442151] - gfs2: Fix deadlock dumping resource group glocks (Andreas Gruenbacher) [1442151] - gfs2: Wake up when sd_glock_disposal becomes zero (Andreas Gruenbacher) [1442151] - gfs2: Split up gfs2_meta_sync into inode and rgrp versions (Andreas Gruenbacher) [1442151] - gfs2: Don't ignore inode write errors during inode_go_sync (Andreas Gruenbacher) [1442151] - gfs2: Ignore subsequent errors after withdraw in rgrp_go_sync (Andreas Gruenbacher) [1442151] - gfs2: Eliminate gl_vm (Andreas Gruenbacher) [1442151] - gfs2: Fix comments to glock_hash_walk (Andreas Gruenbacher) [1442151] - gfs2: eliminate GLF_QUEUED flag in favor of list_empty(gl_holders) (Andreas Gruenbacher) [1442151] - gfs2: Fix invalid block size message (Andreas Gruenbacher) [1442151] - gfs2: add validation checks for size of superblock (Andreas Gruenbacher) [1442151] - gfs2: use-after-free in sysfs deregistration (Andreas Gruenbacher) [1442151] - Revert "GFS2: Prevent delete work from occurring on glocks used for create" (Andreas Gruenbacher) [1442151] - gfs2: Don't skip dlm unlock if glock has an lvb (Andreas Gruenbacher) [1442151] - gfs2: Lock imbalance on error path in gfs2_recover_one (Andreas Gruenbacher) [1442151] - gfs2: keep bios separate for each journal (Bob Peterson) [1442151] - gfs2: change from write to read lock for sd_log_flush_lock in journal replay (Bob Peterson) [1442151] - gfs2: don't lock sd_log_flush_lock in try_rgrp_unlink (Bob Peterson) [1442151] - gfs2: fix glock confusion in function signal_our_withdraw (Bob Peterson) [1442151] - gfs2: Don't write log headers after file system withdraw (Andreas Gruenbacher) [1442151] - gfs2: make gfs2_log_write_page static (Andreas Gruenbacher) [1442151] - gfs2: fix possible reference leak in gfs2_check_blk_type (Andreas Gruenbacher) [1442151] - gfs2: Fix NULL pointer dereference in gfs2_rgrp_dump (Andreas Gruenbacher) [1442151] - gfs2: remove unused LBIT macros (Andreas Gruenbacher) [1925121] - gfs2: add missing log_blocks trace points in gfs2_write_revokes (Andreas Gruenbacher) [1925121] - gfs2: print details on transactions that aren't properly ended (Andreas Gruenbacher) [1925121] - gfs2: fix use-after-free on transaction ail lists (Andreas Gruenbacher) [1925121] - gfs2: new slab for transactions (Andreas Gruenbacher) [1925121] - gfs2: initialize transaction tr_ailX_lists earlier (Andreas Gruenbacher) [1925121] - gfs2: eliminate ssize parameter from gfs2_struct2blk (Andreas Gruenbacher) [1925121] - gfs2: Fix error path kobject memory leak (Andreas Gruenbacher) [1925121] - gfs2: Rename gfs2_trans_{add_unrevoke => remove_revoke} (Andreas Gruenbacher) [1925121] - gfs2: Remove unnecessary extern declarations (Andreas Gruenbacher) [1925121] - gfs2: Fix sign extension bug in gfs2_update_stats (Andreas Gruenbacher) [1925121] - gfs2: Fix an incorrect gfs2_assert() (Bob Peterson) [1925121] - gfs2: Remove vestigial bd_ops (Andreas Gruenbacher) [1925121] - gfs2: Fix the gfs2_invalidatepage description (Andreas Gruenbacher) [1925121] - gfs2: Clean up gfs2_is_{ordered,writeback} (Andreas Gruenbacher) [1925121] - gfs2: Pass resource group to rgblk_free (Andreas Gruenbacher) [1925121] - gfs2: Remove unnecessary gfs2_rlist_alloc parameter (Andreas Gruenbacher) [1925121] - gfs2: Fix some minor typos (Andreas Gruenbacher) [1925121] - gfs2: Remove unused RGRP_RSRV_MINBYTES definition (Andreas Gruenbacher) [1925121] - gfs2: Move rs_{sizehint, rgd_gh} fields into the inode (Andreas Gruenbacher) [1925121] - gfs2: Clean up out-of-bounds check in gfs2_rbm_from_block (Andreas Gruenbacher) [1925121] - gfs2: Always check the result of gfs2_rbm_from_block (Andreas Gruenbacher) [1925121] - gfs: no need to check return value of debugfs_create functions (Andreas Gruenbacher) [1925121] - serial_core: switch to ->[sg]et_serial() (Artem Savkov) [1952415]- tipc: fix sleeping in tipc accept routine (Xin Long) [1986549] - tipc: fix implicit-connect for SYN+ (Xin Long) [1986549] - net: tipc: fix FB_MTU eat two pages (Xin Long) [1986549] - tipc: Return the correct errno code (Xin Long) [1986549] - net/mlx5: Fix checksum issue of VXLAN and IPsec crypto offload (Alaa Hleihel) [1979901] - net/mlx5: Optimize mlx5e_feature_checks for non IPsec packet (Alaa Hleihel) [1979901] - bpf, selftests: Fold test_current_pid_tgid_new_ns into test_progs. (Jiri Olsa) [1869447] - libbpf: Support BTF_KIND_FLOAT during type compatibility checks in CO-RE (Jiri Olsa) [1984486] - bpf: Generate BTF_KIND_FLOAT when linking vmlinux (Jiri Olsa) [1984486] - selftests/bpf: Add BTF_KIND_FLOAT to btf_dump_test_case_syntax (Jiri Olsa) [1984486] - selftests/bpf: Add BTF_KIND_FLOAT to test_core_reloc_size (Jiri Olsa) [1984486] - bpf: Document BTF_KIND_FLOAT in btf.rst (Jiri Olsa) [1984486] - selftests/bpf: Add BTF_KIND_FLOAT to the existing deduplication tests (Jiri Olsa) [1984486] - selftest/bpf: Add BTF_KIND_FLOAT tests (Jiri Olsa) [1984486] - bpf: Add BTF_KIND_FLOAT support (Jiri Olsa) [1984486] - selftests/bpf: Use the 25th bit in the "invalid BTF_INFO" test (Jiri Olsa) [1984486] - tools/bpftool: Add BTF_KIND_FLOAT support (Jiri Olsa) [1984486] - libbpf: Add BTF_KIND_FLOAT support (Jiri Olsa) [1984486] - bpf: Add BTF_KIND_FLOAT to uapi (Jiri Olsa) [1984486] - libbpf: Add explicit padding to btf_dump_emit_type_decl_opts (Jiri Olsa) [1984486] - selftests/bpf: Fix test_attach_probe for powerpc uprobes (Jiri Olsa) [1931531] - selftests/bpf: Mask bpf_csum_diff() return value to 16 bits in test_verifier (Jiri Olsa) [1942513] - openvswitch: add trace points (Aaron Conole) [1979680] - vxlan: add missing rcu_read_lock() in neigh_reduce() (Guillaume Nault) [1987310] - net: ip6_tunnel: Unregister catch-all devices (Guillaume Nault) [1987310] - net: sit: Unregister catch-all devices (Guillaume Nault) [1987310] - cpuidle: pseries: Do not cap the CEDE0 latency in fixup_cede0_latency() (Diego Domingos) [1952809] - cpuidle: pseries: Fixup CEDE0 latency only for POWER10 onwards (Diego Domingos) [1952809] - mm/swap: fix for "mm: workingset: age nonresident information alongside anonymous pages" (Rafael Aquini) [1984173] - mm/thp: remap_page() is only needed on anonymous THP (Rafael Aquini) [1984173] - mm/compaction: fix 'limit' in fast_isolate_freepages (Rafael Aquini) [1984173] - mm/huge_memory.c: don't discard hugepage if other processes are mapping it (Rafael Aquini) [1984173] - slub: restore slub_debug=- behavior (Rafael Aquini) [1984173] - mm/gup: fix try_grab_compound_head() race with split_huge_page() (Rafael Aquini) [1984173] - mm, futex: fix shared futex pgoff on shmem huge page (Rafael Aquini) [1984173] - x86/mm: Avoid truncating memblocks for SGX memory (Rafael Aquini) [1984173] - mm/thp: fix vma_address() if virtual address below file offset (Rafael Aquini) [1984173] - mm, thp: use head page in __migration_entry_wait() (Rafael Aquini) [1984173] - mm/slub.c: include swab.h (Rafael Aquini) [1984173] - mm/memory-failure: make sure wait for page writeback in memory_failure (Rafael Aquini) [1984173] - mm/slub: fix redzoning for small allocations (Rafael Aquini) [1984173] - mm, hugetlb: fix simple resv_huge_pages underflow on UFFDIO_COPY (Rafael Aquini) [1984173] - mm/page_alloc: fix counting of free pages after take off from buddy (Rafael Aquini) [1984173] - userfaultfd: release page in error path to avoid BUG_ON (Rafael Aquini) [1984173] - ksm: fix potential missing rmap_item for stable_node (Rafael Aquini) [1984173] - mm/migrate.c: fix potential indeterminate pte entry in migrate_vma_insert_page() (Rafael Aquini) [1984173] - mm/hugeltb: handle the error case in hugetlb_fix_reserve_counts() (Rafael Aquini) [1984173] - khugepaged: fix wrong result value for trace_mm_collapse_huge_page_isolate() (Rafael Aquini) [1984173] - mm/memory-failure: unnecessary amount of unmapping (Rafael Aquini) [1984173] - mm: page_alloc: ignore init_on_free=1 for debug_pagealloc=1 (Rafael Aquini) [1984173] - mm/sparse: add the missing sparse_buffer_fini() in error branch (Rafael Aquini) [1984173] - mm: memcontrol: fix cpuhotplug statistics flushing (Rafael Aquini) [1984173] - x86/mem_encrypt: Correct physical address calculation in __set_clr_pte_enc() (Rafael Aquini) [1984173] - zsmalloc: account the number of compacted pages correctly (Rafael Aquini) [1984173] - mm/compaction: fix misbehaviors of fast_find_migrateblock() (Rafael Aquini) [1984173] - hugetlb: fix update_and_free_page contig page struct assumption (Rafael Aquini) [1984173] - mm/hugetlb: fix potential double free in hugetlb_register_node() error path (Rafael Aquini) [1984173] - mm/memory.c: fix potential pte_unmap_unlock pte error (Rafael Aquini) [1984173] - mm/memory.c: fix potential pte_unmap_unlock pte error (Rafael Aquini) [1984173] - mm/hugetlb: fix potential missing huge page size info (Rafael Aquini) [1984173] - x86/mm: Fix leak of pmd ptlock (Rafael Aquini) [1984173] - mm/zswap: fix passing zero to 'PTR_ERR' warning (Rafael Aquini) [1984173] - mm/page_isolation: do not isolate the max order page (Rafael Aquini) [1984173] - mm,memory_failure: always pin the page in madvise_inject_error (Rafael Aquini) [1984173] - mm/page_alloc: speed up the iteration of max_order (Rafael Aquini) [1984173] - x86/mm/mem_encrypt: Fix definition of PMD_FLAGS_DEC_WP (Rafael Aquini) [1984173] - x86/mm/ident_map: Check for errors from ident_pud_init() (Rafael Aquini) [1984173] - mm, oom_adj: don't loop through tasks in __set_oom_adj when not necessary (Rafael Aquini) [1984173] - mm/page_alloc.c: fix freeing non-compound pages (Rafael Aquini) [1984173] - mm: khugepaged: recalculate min_free_kbytes after memory hotplug as expected by khugepaged (Rafael Aquini) [1984173] - percpu: fix first chunk size calculation for populated bitmap (Rafael Aquini) [1984173] - x86, fakenuma: Fix invalid starting node ID (Rafael Aquini) [1984173] - mm: include CMA pages in lowmem_reserve at boot (Rafael Aquini) [1984173] - mm/rodata_test.c: fix missing function declaration (Rafael Aquini) [1984173] - mm/page_counter: fix various data races at memsw (Rafael Aquini) [1984173] - khugepaged: retract_page_tables() remember to test exit (Rafael Aquini) [1984173] - mm/page_counter.c: fix protection usage propagation (Rafael Aquini) [1984173] - x86/mm/numa: Remove uninitialized_var() usage (Rafael Aquini) [1984173] - shmem: fix possible deadlocks on shmlock_user_lock (Rafael Aquini) [1984173] - mm: swap: use smp_mb__after_atomic() to order LRU bit set (Rafael Aquini) [1984173] - cgroup: memcg: net: do not associate sock with unrelated cgroup (Rafael Aquini) [1984173] - mm: fix gup_pud_range (Rafael Aquini) [1984173] - x86/mm: Fix NX bit clearing issue in kernel_map_pages_in_pgd (Rafael Aquini) [1984173] - mm/shmem.c: thp, shmem: fix conflict of above-47bit hint address and PMD alignment (Rafael Aquini) [1984173] - mm: Implement no-MMU variant of vmalloc_user_node_flags (Rafael Aquini) [1984173] - usercopy: Avoid HIGHMEM pfn warning (Rafael Aquini) [1984173] - x86/mm: Don't exceed the valid physical address space (Rafael Aquini) [1984173] - x86/mm/mem_encrypt: Fix erroneous sizeof() (Rafael Aquini) [1984173] - s390/mm: fix addressing exception after suspend/resume (Rafael Aquini) [1984173] - blk-mq: fix use-after-free in blk_mq_exit_sched (Ming Lei) [1969726] - nvmet: use new ana_log_size instead the old one (Maurizio Lombardi) [1949777] - nvme-multipath: fix double initialization of ANA state (Maurizio Lombardi) [1949777] - configs: enable CONFIG_LEDS_BRIGHTNESS_HW_CHANGED (Benjamin Tissoires) [1922973]- Revert "xfs: enable new inode btree counters feature" (Bill O'Donnell) [1976969] - Revert "xfs: enable big timestamps" (Bill O'Donnell) [1976969] - Revert "xfs: remove kmem_realloc()" (Bill O'Donnell) [1976969] - xfs: prevent metadata files from being inactivated (Bill O'Donnell) [1976969] - quota: widen timestamps for the fs_disk_quota structure (Bill O'Donnell) [1976969] - cifs: fix fallocate when trying to allocate a hole. (Ronnie Sahlberg) [1866684] - cifs: only write 64kb at a time when fallocating a small region of a file (Ronnie Sahlberg) [1866684] - cifs: improve fallocate emulation (Ronnie Sahlberg) [1866684] - cifs: Do not use the original cruid when following DFS links for multiuser mounts (Ronnie Sahlberg) [1812436] - cifs: ignore relatime in smb3_fs_context_parse_monolithic() (Ronnie Sahlberg) [1812436] - cifs: fix regression when mounting shares with prefix paths (Ronnie Sahlberg) [1812436] - cifs: fix leak in cifs_smb3_do_mount() ctx (Ronnie Sahlberg) [1812436] - cifs: add fs_context param to parsing helpers (Ronnie Sahlberg) [1812436] - cifs: make fs_context error logging wrapper (Ronnie Sahlberg) [1812436] - cifs: warn and fail if trying to use rootfs without the config option (Ronnie Sahlberg) [1812436] - cifs: fix nodfs mount option (Ronnie Sahlberg) [1812436] - cifs: fix handling of escaped ',' in the password mount argument (Ronnie Sahlberg) [1812436] - cifs: Add new parameter "acregmax" for distinct file and directory metadata timeout (Ronnie Sahlberg) [1812436] - cifs: convert revalidate of directories to using directory metadata cache timeout (Ronnie Sahlberg) [1812436] - cifs: Add new mount parameter "acdirmax" to allow caching directory metadata (Ronnie Sahlberg) [1812436] - cifs: fix trivial typo (Ronnie Sahlberg) [1812436] - cifs: Set CIFS_MOUNT_USE_PREFIX_PATH flag on setting cifs_sb->prepath. (Ronnie Sahlberg) [1812436] - cifs: In the new mount api we get the full devname as source= (Ronnie Sahlberg) [1812436] - cifs: do not disable noperm if multiuser mount option is not provided (Ronnie Sahlberg) [1812436] - cifs: fix dfs-links (Ronnie Sahlberg) [1812436] - cifs: fix dfs domain referrals (Ronnie Sahlberg) [1812436] - cifs: returning mount parm processing errors correctly (Ronnie Sahlberg) [1812436] - cifs: fix mounts to subdirectories of target (Ronnie Sahlberg) [1812436] - cifs: ignore auto and noauto options if given (Ronnie Sahlberg) [1812436] - cifs: connect: style: Simplify bool comparison (Ronnie Sahlberg) [1812436] - fs: cifs: remove unneeded variable in smb3_fs_context_dup (Ronnie Sahlberg) [1812436] - cifs: Fix support for remount when not changing rsize/wsize (Ronnie Sahlberg) [1812436] - cifs: handle "guest" mount parameter (Ronnie Sahlberg) [1812436] - cifs: correct four aliased mount parms to allow use of previous names (Ronnie Sahlberg) [1812436] - cifs: fix use after free in cifs_smb3_do_mount() (Ronnie Sahlberg) [1812436] - cifs: fix rsize/wsize to be negotiated values (Ronnie Sahlberg) [1812436] - cifs: update super_operations to show_devname (Ronnie Sahlberg) [1812436] - cifs: fix uninitialized variable in smb3_fs_context_parse_param (Ronnie Sahlberg) [1812436] - cifs: update mnt_cifs_flags during reconfigure (Ronnie Sahlberg) [1812436] - cifs: move update of flags into a separate function (Ronnie Sahlberg) [1812436] - cifs: remove ctx argument from cifs_setup_cifs_sb (Ronnie Sahlberg) [1812436] - cifs: do not allow changing posix_paths during remount (Ronnie Sahlberg) [1812436] - cifs: uncomplicate printing the iocharset parameter (Ronnie Sahlberg) [1812436] - cifs: don't create a temp nls in cifs_setup_ipc (Ronnie Sahlberg) [1812436] - cifs: simplify handling of cifs_sb/ctx->local_nls (Ronnie Sahlberg) [1812436] - cifs: we do not allow changing username/password/unc/... during remount (Ronnie Sahlberg) [1812436] - cifs: add initial reconfigure support (Ronnie Sahlberg) [1812436] - cifs: move [brw]size from cifs_sb to cifs_sb->ctx (Ronnie Sahlberg) [1812436] - cifs: move cifs_cleanup_volume_info[_content] to fs_context.c (Ronnie Sahlberg) [1812436] - cifs: Add missing sentinel to smb3_fs_parameters (Ronnie Sahlberg) [1812436] - cifs: remove actimeo from cifs_sb (Ronnie Sahlberg) [1812436] - cifs: remove [gu]id/backup[gu]id/file_mode/dir_mode from cifs_sb (Ronnie Sahlberg) [1812436] - cifs: minor kernel style fixes for comments (Ronnie Sahlberg) [1812436] - linux/parser.h: add include guards (Ronnie Sahlberg) [1812436] - cifs: Make extract_sharename function public (Ronnie Sahlberg) [1812436] - cifs: Make extract_hostname function public (Ronnie Sahlberg) [1812436] - cifs: get rid of cifs_sb->mountdata (Ronnie Sahlberg) [1812436] - cifs: add an smb3_fs_context to cifs_sb (Ronnie Sahlberg) [1812436] - cifs: remove the devname argument to cifs_compose_mount_options (Ronnie Sahlberg) [1812436] - cifs: switch to new mount api (Ronnie Sahlberg) [1812436] - cifs: move cifs_parse_devname to fs_context.c (Ronnie Sahlberg) [1812436] - cifs: move the enum for cifs parameters into fs_context.h (Ronnie Sahlberg) [1812436] - cifs: rename dup_vol to smb3_fs_context_dup and move it into fs_context.c (Ronnie Sahlberg) [1812436] - cifs: rename smb_vol as smb3_fs_context and move it to fs_context.h (Ronnie Sahlberg) [1812436] - cifs: Fix fall-through warnings for Clang (Ronnie Sahlberg) [1812436] - cifs: refactor create_sd_buf() and and avoid corrupting the buffer (Ronnie Sahlberg) [1812436] - scsi: lpfc: Fix failure to transmit ABTS on FC link (Dick Kennedy) [1964670] - scsi: lpfc: Update lpfc version to 12.8.0.10 (Dick Kennedy) [1964670] - scsi: lpfc: Reregister FPIN types if ELS_RDF is received from fabric controller (Dick Kennedy) [1964670] - scsi: lpfc: Add a option to enable interlocked ABTS before job completion (Dick Kennedy) [1964670] - scsi: lpfc: Fix crash when lpfc_sli4_hba_setup() fails to initialize the SGLs (Dick Kennedy) [1964670] - scsi: lpfc: Ignore GID-FT response that may be received after a link flip (Dick Kennedy) [1964670] - scsi: lpfc: Fix node handling for Fabric Controller and Domain Controller (Dick Kennedy) [1964670] - scsi: lpfc: Fix Node recovery when driver is handling simultaneous PLOGIs (Dick Kennedy) [1964670] - scsi: lpfc: Add ndlp kref accounting for resume RPI path (Dick Kennedy) [1964670] - scsi: lpfc: Fix "Unexpected timeout" error in direct attach topology (Dick Kennedy) [1964670] - scsi: lpfc: Fix non-optimized ERSP handling (Dick Kennedy) [1964670] - scsi: lpfc: Fix unreleased RPIs when NPIV ports are created (Dick Kennedy) [1964670] - scsi: lpfc: Remove redundant assignment to pointer temp_hdr (Dick Kennedy) [1964670] - Documentation: add more details in tipc.rst (Xin Long) [1872308] - net/tipc: add TIPC chapter to networking Documentation (Xin Long) [1872308] - scsi: qla2xxx: Reserve extra IRQ vectors (Nilesh Javali) [1964834] - tracing/hwlat: Honor the tracing_cpumask (Jerome Marchand) [1920595] - tracing/hwlat: Drop the duplicate assignment in start_kthread() (Jerome Marchand) [1920595] - sfc: add logs explaining XDP_TX/REDIRECT is not available (Íñigo Huguet) [1976756] - sfc: ensure correct number of XDP queues (Íñigo Huguet) [1976756] - sfc: fix lack of XDP TX queues - error XDP TX failed (-22) (Íñigo Huguet) [1976756] - sfc: Remove rcu_read_lock() around XDP program invocation (Íñigo Huguet) [1976756] - sfc: use DEVICE_ATTR_*() macro (Íñigo Huguet) [1976756] - sfc: farch: fix compile warning in efx_farch_dimension_resources() (Íñigo Huguet) [1976756] - sfc: don't use netif_info et al before net_device is registered (Íñigo Huguet) [1976756] - net: stmmac: Do not enable RX FIFO overflow interrupts (Mark Salter) [1905243] - net: stmmac: Clear receive all(RA) bit when promiscuous mode is off (Mark Salter) [1905243] - net: stmmac: cleared __FPE_REMOVING bit in stmmac_fpe_start_wq() (Mark Salter) [1905243] - stmmac: intel: Enable HW descriptor prefetch by default (Mark Salter) [1905243] - net: stmmac: Add HW descriptor prefetch setting for DWMAC Core 5.20 onwards (Mark Salter) [1905243] - net: stmmac: fix TSO and TBS feature enabling during driver open (Mark Salter) [1905243] - stmmac: intel: set TSO/TBS TX Queues default settings (Mark Salter) [1905243] - stmmac: intel: unlock on error path in intel_crosststamp() (Mark Salter) [1905243] - net: stmmac: use __napi_schedule() for PREEMPT_RT (Mark Salter) [1905243] - stmmac: intel: Enable SERDES PHY rx clk for PSE (Mark Salter) [1905243] - stmmac: intel: Drop duplicate ID in the list of PCI device IDs (Mark Salter) [1905243] - stmmac: intel: add cross time-stamping freq difference adjustment (Mark Salter) [1905243] - net: stmmac: Add support for external trigger timestamping (Mark Salter) [1905243] - net: stmmac: fix dma physical address of descriptor when display ring (Mark Salter) [1905243] - net: stmmac: fix wrongly set buffer2 valid when sph unsupport (Mark Salter) [1905243] - net: stmmac: arrange Tx tail pointer update to stmmac_flush_tx_descriptors (Mark Salter) [1905243] - net: stmmac: make SPH enable/disable to be configurable (Mark Salter) [1905243] - net: stmmac: set IRQ affinity hint for multi MSI vectors (Mark Salter) [1905243] - net: stmmac: remove unnecessary pci_enable_msi() call (Mark Salter) [1905243] - stmmac: intel: use managed PCI function on probe and resume (Mark Salter) [1905243] - net: stmmac: enable MTL ECC Error Address Status Over-ride by default (Mark Salter) [1905243] - net: ethernet: stmicro: Remove duplicate struct declaration (Mark Salter) [1905243] - net: stmmac: fix missing unlock on error in stmmac_suspend() (Mark Salter) [1905243] - net: stmmac: Fix kernel panic due to NULL pointer dereference of fpe_cfg (Mark Salter) [1905243] - net: stmmac: use interrupt mode INTM=1 for multi-MSI (Mark Salter) [1905243] - stmmac: intel: add support for multi-vector msi and msi-x (Mark Salter) [1905243] - net: stmmac: introduce MSI Interrupt routines for mac, safety, RX & TX (Mark Salter) [1905243] - net: stmmac: make stmmac_interrupt() function more friendly to MSI (Mark Salter) [1905243] - net: stmmac: introduce DMA interrupt status masking per traffic direction (Mark Salter) [1905243] - net: phy: marvell10g: Add PHY loopback support (Mark Salter) [1905243] - net: phy: add genphy_c45_loopback (Mark Salter) [1905243] - net: phylink: Fix phylink_err() function name error in phylink_major_config (Mark Salter) [1905243] - net: stmmac: support FPE link partner hand-shaking procedure (Mark Salter) [1905243] - net: stmmac: Add hardware supported cross-timestamp (Mark Salter) [1905243] - net: stmmac: platform: fix build error with !CONFIG_PM_SLEEP (Mark Salter) [1905243] - stmmac: intel: Add PSE and PCH PTP clock source selection (Mark Salter) [1905243] - net: stmmac: Add EST errors into ethtool statistic (Mark Salter) [1905243] - net: stmmac: EST interrupts handling and error reporting (Mark Salter) [1905243] - net: stmmac: add RX frame steering based on VLAN priority in tc flower (Mark Salter) [1905243] - net: stmmac: restructure tc implementation for RX VLAN Priority steering (Mark Salter) [1905243] - net: stmmac: add per-queue TX & RX coalesce ethtool support (Mark Salter) [1905243] - net: stmmac: Use hrtimer for TX coalescing (Mark Salter) [1905243] - net: stmmac: add timestamp correction to rid CDC sync error (Mark Salter) [1905243] - net: stmmac: add platform level clocks management (Mark Salter) [1905243] - net: stmmac: add clocks management for gmac driver (Mark Salter) [1905243] - stmmac: intel: add pcs-xpcs for Intel mGbE controller (Mark Salter) [1905243] - net: stmmac: ensure phydev is attached to phylink for C37 AN (Mark Salter) [1905243] - net: stmmac: make in-band AN mode parsing is supported for non-DT (Mark Salter) [1905243] - net: phylink: make phylink_parse_mode() support non-DT platform (Mark Salter) [1905243] - net: pcs: add C37 SGMII AN support for intel mGbE controller (Mark Salter) [1905243] - net: pcs: rearrange C73 functions to prepare for C37 support later (Mark Salter) [1905243] - net: phy: leds: Deduplicate link LED trigger registration (Mark Salter) [1905243] - net: stmmac: Fix VLAN filter delete timeout issue in Intel mGBE SGMII (Mark Salter) [1905243] - net: stmmac: fix incorrect DMA channel intr enable setting of EQoS v4.10 (Mark Salter) [1905243] - net: stmmac: fix CBS idleslope and sendslope calculation (Mark Salter) [1905243] - net: stmmac: set TxQ mode back to DCB after disabling CBS (Mark Salter) [1905243] - net: stmmac: allow stmmac to probe for C45 PHY devices (Mark Salter) [1905243] - net: stmmac: Enable EEE HW LPI timer with auto SW/HW switching (Mark Salter) [1905243] - net: pcs-xpcs: depend on MDIO_BUS instead of selecting it (Mark Salter) [1905243] - net: pcs: Move XPCS into new PCS subdirectory (Mark Salter) [1905243] - net: stmmac: Add XLGMII support (Mark Salter) [1905243] - net: phy: xpcs: Add XLGMII support (Mark Salter) [1905243] - net: phy: xpcs: Restart AutoNeg if outcome was invalid (Mark Salter) [1905243] - net: phy: xpcs: Set Link down if AutoNeg is enabled and did not finish (Mark Salter) [1905243] - net: phy: xpcs: Reset XPCS upon probe (Mark Salter) [1905243] - net: phy: xpcs: Return error when 10GKR link errors are found (Mark Salter) [1905243] - stmmac/intel: mark driver as tech preview (Mark Salter) [1905243] - redhat/configs: Add CONFIG_DWMAC_INTEL (Mark Salter) [1905243] - stmmac: intel: Fixes clock registration error seen for multiple interfaces (Mark Salter) [1905243] - stmmac: intel: Fix mdio bus registration issue for TGL-H/ADL-S (Mark Salter) [1905243] - net: stmmac: Add PCI bus info to ethtool driver query output (Mark Salter) [1905243] - stmmac: intel: Add ADL-S 1Gbps PCI IDs (Mark Salter) [1905243] - stmmac: intel: Configure EHL PSE0 GbE and PSE1 GbE to 32 bits DMA addressing (Mark Salter) [1905243] - stmmac: intel: Add PCI IDs for TGL-H platform (Mark Salter) [1905243] - stmmac: intel: change all EHL/TGL to auto detect phy addr (Mark Salter) [1905243] - net: stmmac: overwrite the dma_cap.addr64 according to HW design (Mark Salter) [1905243] - stmmac: intel: Fix kernel panic on pci probe (Mark Salter) [1905243] - stmmac: intel: Adding ref clock 1us tic for LPI cntr (Mark Salter) [1905243] - net: stmmac: Add option for VLAN filter fail queue enable (Mark Salter) [1905243] - net: stmmac: Fix clock handling on remove path (Mark Salter) [1905243] - stmmac: intel: Place object in the Makefile according to the order (Mark Salter) [1905243] - stmmac: intel: Fix indentation to put on one line affected code (Mark Salter) [1905243] - stmmac: intel: Eliminate useless conditions and variables (Mark Salter) [1905243] - stmmac: intel: Convert to use pci_alloc_irq_vectors() API (Mark Salter) [1905243] - stmmac: intel: Remove unnecessary loop for PCI BARs (Mark Salter) [1905243] - stmmac: intel: Fix clock handling on error and remove paths (Mark Salter) [1905243] - net: stmmac: Enable SERDES power up/down sequence (Mark Salter) [1905243] - net: stmmac: add EHL 2.5Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: add EHL PSE0 & PSE1 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: create dwmac-intel.c to contain all Intel platform (Mark Salter) [1905243] - net: stmmac: Get rid of custom STMMAC_DEVICE() macro (Mark Salter) [1905243] - net: stmmac: update pci platform data to use phy_interface (Mark Salter) [1905243] - net: stmmac: pci: Enable TBS on GMAC5 IPK PCI entry (Mark Salter) [1905243] - net: stmmac: pci: remove the duplicate code of set phy_mask (Mark Salter) [1905243] - PCI: Add PCI_STD_NUM_BARS for the number of standard BARs (Mark Salter) [1905243] - net: stmmac: pci: Add HAPS support using GMAC5 (Mark Salter) [1905243] - net: stmmac: setup higher frequency clk support for EHL & TGL (Mark Salter) [1905243] - net: stmmac: add EHL RGMII 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: add TGL SGMII 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: add EHL SGMII 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: Make MDIO bus reset optional (Mark Salter) [1905243] - stmmac: pci: Use pci_dev_id() helper (Mark Salter) [1905243] - stmmac: pci: Fix typo in IOT2000 comment (Mark Salter) [1905243] - stmmac: pci: Adjust IOT2000 matching (Mark Salter) [1905243] - net: stmmac: Fix PCI module removal leak (Mark Salter) [1905243] - net: stmmac: mark PM functions as __maybe_unused (Mark Salter) [1905243] - ibmveth: Set CHECKSUM_PARTIAL if NULL TCP CSUM. (Diego Domingos) [1939996] - IB/core: Add missing pin_user_pages*() usage (Waiman Long) [1972078] - mm/gup/writeback: Fix incorrect inaccessible pages handling (Waiman Long) [1972078] - netfilter: nf_tables: bogus EBUSY when deleting flowtable after flush (Phil Sutter) [1983245] - ipv4: Fix device used for dst_alloc with local routes (Antoine Tenart) [1976789] - vrf: fix a comment about loopback device (Antoine Tenart) [1976789] - net: vrf: Fix operation not supported when set vrf mac (Antoine Tenart) [1976789] - vrf: prevent adding upper devices (Antoine Tenart) [1976789] - vrf: fix maximum MTU (Antoine Tenart) [1976789] - net: vrf: Fix ping failed when vrf mtu is set to 0 (Antoine Tenart) [1976789] - net: vrf: remove MTU limits for vrf device (Antoine Tenart) [1976789]- block: fix discard request merge (Ming Lei) [1970316] - blk-mq: update hctx->dispatch_busy in case of real scheduler (Ming Lei) [1976679] - block: Do not pull requests from the scheduler when we cannot dispatch them (Ming Lei) [1976679] - powerpc/pseries/mobility: handle premature return from H_JOIN (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: use struct for shared state (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: refactor node lookup during DT update (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: remove rtas_ibm_suspend_me_unsafe() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: dispatch partition migration requests to pseries (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: retry partition suspend after error (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: signal suspend cancellation to platform (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: use stop_machine for join/suspend (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: extract VASI session polling logic (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: use rtas_activate_firmware() on resume (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: error message improvements (Desnes A. Nunes do Rosario) [1979798] - powerpc/hvcall: add token and codes for H_VASI_SIGNAL (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: add rtas_activate_firmware() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: add rtas_ibm_suspend_me() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: rtas_ibm_suspend_me -> rtas_ibm_suspend_me_unsafe (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: complete ibm,suspend-me status codes (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: Add pr_debug() for device tree changes (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: Set pr_fmt() (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove obsolete memory hotplug DT notifier code (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove dlpar_cpu_readd() (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove memory "re-add" implementation (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove prrn special case from DT update path (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove arch_update_cpu_topology (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove prrn_is_enabled() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtasd: simplify handle_rtas_event(), emit message on events (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove start/stop_topology_update() (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove timed_topology_update() (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: Handle extra hcall_vphn error cases (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: Suppress "VPHN is not supported" messages (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: stub out numa_update_cpu_topology() (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove vphn_enabled and prrn_enabled internal flags (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove unreachable topology workqueue code (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove unreachable topology timer code (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: make vphn_enabled, prrn_enabled flags const (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove unreachable topology update code (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove ability to enable topology updates (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: don't online CPUs for partition suspend (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: Unexport rtas_online_cpus_mask, rtas_offline_cpus_mask (Desnes A. Nunes do Rosario) [1979798] - mm/page_alloc: bail out on fatal signal during reclaim/compaction retry attempt (Aaron Tomlin) [1919765] - RHEL: Revert "powerpc/kvm: Fix PR KVM with KUAP/MEM_KEYS enabled" (Paolo Bonzini) [1956950] - KVM: selftests: smm_test: Test SMM enter from L2 (Paolo Bonzini) [1956950] - KVM: nSVM: Restore nested control upon leaving SMM (Paolo Bonzini) [1956950] - KVM: nSVM: Fix L1 state corruption upon return from SMM (Paolo Bonzini) [1956950] - KVM: nSVM: Introduce svm_copy_vmrun_state() (Paolo Bonzini) [1956950] - KVM: nSVM: Check that VM_HSAVE_PA MSR was set before VMRUN (Paolo Bonzini) [1956950] - KVM: nVMX: nSVM: 'nested_run' should count guest-entry attempts that make it to guest code (Paolo Bonzini) [1956950] - KVM: nSVM: Check the value written to MSR_VM_HSAVE_PA (Paolo Bonzini) [1956950] - KVM: SVM: Fix sev_pin_memory() error checks in SEV migration utilities (Paolo Bonzini) [1956950] - KVM: SVM: Return -EFAULT if copy_to_user() for SEV mig packet header fails (Paolo Bonzini) [1956950] - KVM: SVM: add module param to control the #SMI interception (Paolo Bonzini) [1956950] - KVM: SVM: remove INIT intercept handler (Paolo Bonzini) [1956950] - KVM: SVM: #SMI interception must not skip the instruction (Paolo Bonzini) [1956950] - KVM: VMX: Remove vmx_msr_index from vmx.h (Paolo Bonzini) [1956950] - KVM: X86: Disable hardware breakpoints unconditionally before kvm_x86->run() (Paolo Bonzini) [1956950] - KVM: x86/pmu: Clear anythread deprecated bit when 0xa leaf is unsupported on the SVM (Paolo Bonzini) [1956950] - KVM: mmio: Fix use-after-free Read in kvm_vm_ioctl_unregister_coalesced_mmio (Paolo Bonzini) [1956950] - KVM: SVM: Revert clearing of C-bit on GPA in #NPF handler (Paolo Bonzini) [1956950] - KVM: x86/mmu: Do not apply HPA (memory encryption) mask to GPAs (Paolo Bonzini) [1956950] - KVM: x86: Use kernel's x86_phys_bits to handle reduced MAXPHYADDR (Paolo Bonzini) [1956950] - KVM: x86: Use guest MAXPHYADDR from CPUID.0x8000_0008 iff TDP is enabled (Paolo Bonzini) [1956950] - KVM: selftests: do not require 64GB in set_memory_region_test (Paolo Bonzini) [1956950] - KVM: selftests: Fix mapping length truncation in m{,un}map() (Paolo Bonzini) [1956950] - KVM: x86: Force all MMUs to reinitialize if guest CPUID is modified (Paolo Bonzini) [1956950] - Revert "KVM: x86/mmu: Drop kvm_mmu_extended_role.cr4_la57 hack" (Paolo Bonzini) [1956950] - KVM: x86/mmu: Use MMU's role to detect CR4.SMEP value in nested NPT walk (Paolo Bonzini) [1956950] - KVM: x86: Properly reset MMU context at vCPU RESET/INIT (Paolo Bonzini) [1956950] - KVM: x86/mmu: Treat NX as used (not reserved) for all !TDP shadow MMUs (Paolo Bonzini) [1956950] - KVM: x86/mmu: Remove broken WARN that fires on 32-bit KVM w/ nested EPT (Paolo Bonzini) [1956950] - KVM: nVMX: Handle split-lock #AC exceptions that happen in L2 (Paolo Bonzini) [1956950] - KVM: x86/mmu: Calculate and check "full" mmu_role for nested MMU (Paolo Bonzini) [1956950] - KVM: X86: Fix x86_emulator slab cache leak (Paolo Bonzini) [1956950] - KVM: SVM: Call SEV Guest Decommission if ASID binding fails (Paolo Bonzini) [1956950] - KVM: x86: Immediately reset the MMU context when the SMM flag is cleared (Paolo Bonzini) [1956950] - KVM: x86: Fix fall-through warnings for Clang (Paolo Bonzini) [1956950] - KVM: SVM: fix doc warnings (Paolo Bonzini) [1956950] - kvm: LAPIC: Restore guard to prevent illegal APIC register access (Paolo Bonzini) [1956950] - kvm: fix previous commit for 32-bit builds (Paolo Bonzini) [1956950] - kvm: avoid speculation-based attacks from out-of-range memslot accesses (Paolo Bonzini) [1956950] - KVM: x86: Ensure liveliness of nested VM-Enter fail tracepoint message (Paolo Bonzini) [1956950] - KVM: x86: Ensure PV TLB flush tracepoint reflects KVM behavior (Paolo Bonzini) [1956950] - KVM: X86: MMU: Use the correct inherited permissions to get shadow page (Paolo Bonzini) [1956950] - KVM: LAPIC: Write 0 to TMICT should also cancel vmx-preemption timer (Paolo Bonzini) [1956950] - KVM: SVM: Fix SEV SEND_START session length & SEND_UPDATE_DATA query length after commit 238eca821cee (Paolo Bonzini) [1956950] - KVM: X86: Kill off ctxt->ud (Paolo Bonzini) [1956950] - KVM: X86: Fix warning caused by stale emulation context (Paolo Bonzini) [1956950] - KVM: X86: Use kvm_get_linear_rip() in single-step and #DB/#BP interception (Paolo Bonzini) [1956950] - KVM: x86/mmu: Fix comment mentioning skip_4k (Paolo Bonzini) [1956950] - KVM: VMX: update vcpu posted-interrupt descriptor when assigning device (Paolo Bonzini) [1956950] - KVM: rename KVM_REQ_PENDING_TIMER to KVM_REQ_UNBLOCK (Paolo Bonzini) [1956950] - KVM: x86: add start_assignment hook to kvm_x86_ops (Paolo Bonzini) [1956950] - KVM: LAPIC: Narrow the timer latency between wait_lapic_expire and world switch (Paolo Bonzini) [1956950] - KVM: X86: Fix vCPU preempted state from guest's point of view (Paolo Bonzini) [1956950] - KVM: X86: Bail out of direct yield in case of under-committed scenarios (Paolo Bonzini) [1956950] - KVM: SVM: make the avic parameter a bool (Paolo Bonzini) [1956950] - KVM: VMX: Drop unneeded CONFIG_X86_LOCAL_APIC check (Paolo Bonzini) [1956950] - KVM: SVM: Drop unneeded CONFIG_X86_LOCAL_APIC check (Paolo Bonzini) [1956950] - KVM: SVM: Move GHCB unmapping to fix RCU warning (Paolo Bonzini) [1956950] - KVM: SVM: Invert user pointer casting in SEV {en,de}crypt helpers (Paolo Bonzini) [1956950] - kvm: Cap halt polling at kvm->max_halt_poll_ns (Paolo Bonzini) [1956950] - KVM: x86: Prevent deadlock against tk_core.seq (Paolo Bonzini) [1956950] - KVM: x86: Cancel pvclock_gtod_work on module removal (Paolo Bonzini) [1956950] - KVM: x86: Prevent KVM SVM from loading on kernels with 5-level paging (Paolo Bonzini) [1956950] - KVM: SVM: Probe and load MSR_TSC_AUX regardless of RDTSCP support in host (Paolo Bonzini) [1956950] - KVM: VMX: Disable preemption when probing user return MSRs (Paolo Bonzini) [1956950] - KVM: x86: Move RDPID emulation intercept to its own enum (Paolo Bonzini) [1956950] - KVM: SVM: Inject #UD on RDTSCP when it should be disabled in the guest (Paolo Bonzini) [1956950] - KVM: x86: Emulate RDPID only if RDTSCP is supported (Paolo Bonzini) [1956950] - KVM: VMX: Do not advertise RDPID if ENABLE_RDTSCP control is unsupported (Paolo Bonzini) [1956950] - KVM: nSVM: always restore the L1's GIF on migration (Paolo Bonzini) [1956950] - KVM: x86: Hoist input checks in kvm_add_msr_filter() (Paolo Bonzini) [1956950] - KVM: nVMX: Properly pad 'struct kvm_vmx_nested_state_hdr' (Paolo Bonzini) [1956950] - KVM/VMX: Invoke NMI non-IST entry instead of IST entry (Paolo Bonzini) [1956950] - KVM: x86: Fix potential fput on a null source_kvm_file (Paolo Bonzini) [1956950] - KVM: nSVM: leave the guest mode prior to loading a nested state (Paolo Bonzini) [1956950] - KVM: nSVM: fix few bugs in the vmcb02 caching logic (Paolo Bonzini) [1956950] - KVM: nSVM: fix a typo in svm_leave_nested (Paolo Bonzini) [1956950] - KVM: PPC: exit halt polling on need_resched() (Paolo Bonzini) [1956950] - kvm: exit halt polling on need_resched() as well (Paolo Bonzini) [1956950] - KVM: LAPIC: Accurately guarantee busy wait for timer to expire when using hv_timer (Paolo Bonzini) [1956950] - kvm/x86: Fix 'lpages' kvm stat for TDM MMU (Paolo Bonzini) [1956950] - KVM: x86/mmu: Avoid unnecessary page table allocation in kvm_tdp_mmu_map() (Paolo Bonzini) [1956950] - KVM: selftests: Speed up set_memory_region_test (Paolo Bonzini) [1956950] - selftests: kvm: Fix the check of return value (Paolo Bonzini) [1956950] - KVM: x86: Take advantage of kvm_arch_dy_has_pending_interrupt() (Paolo Bonzini) [1956950] - KVM: SVM: Skip SEV cache flush if no ASIDs have been used (Paolo Bonzini) [1956950] - KVM: SVM: Remove an unnecessary prototype declaration of sev_flush_asids() (Paolo Bonzini) [1956950] - KVM: SVM: Drop redundant svm_sev_enabled() helper (Paolo Bonzini) [1956950] - KVM: SVM: Move SEV VMCB tracking allocation to sev.c (Paolo Bonzini) [1956950] - KVM: SVM: Explicitly check max SEV ASID during sev_hardware_setup() (Paolo Bonzini) [1956950] - KVM: SVM: Unconditionally invoke sev_hardware_teardown() (Paolo Bonzini) [1956950] - KVM: SVM: Enable SEV/SEV-ES functionality by default (when supported) (Paolo Bonzini) [1956950] - KVM: SVM: Condition sev_enabled and sev_es_enabled on CONFIG_KVM_AMD_SEV=y (Paolo Bonzini) [1956950] - KVM: SVM: Append "_enabled" to module-scoped SEV/SEV-ES control variables (Paolo Bonzini) [1956950] - KVM: SEV: Mask CPUID[0x8000001F].eax according to supported features (Paolo Bonzini) [1956950] - KVM: SVM: Move SEV module params/variables to sev.c (Paolo Bonzini) [1956950] - svm/sev: Register SEV and SEV-ES ASIDs to the misc controller (Paolo Bonzini) [1956950] - KVM: SVM: Disable SEV/SEV-ES if NPT is disabled (Paolo Bonzini) [1956950] - KVM: SVM: Free sev_asid_bitmap during init if SEV setup fails (Paolo Bonzini) [1956950] - KVM: SVM: Zero out the VMCB array used to track SEV ASID association (Paolo Bonzini) [1956950] - KVM: x86: Move reverse CPUID helpers to separate header file (Paolo Bonzini) [1956950] - KVM: x86: Rename GPR accessors to make mode-aware variants the defaults (Paolo Bonzini) [1956950] - KVM: SVM: Use default rAX size for INVLPGA emulation (Paolo Bonzini) [1956950] - KVM: x86/xen: Drop RAX[63:32] when processing hypercall (Paolo Bonzini) [1956950] - KVM: nVMX: Truncate base/index GPR value on address calc in !64-bit (Paolo Bonzini) [1956950] - KVM: nVMX: Truncate bits 63:32 of VMCS field on nested check in !64-bit (Paolo Bonzini) [1956950] - KVM: VMX: Truncate GPR value for DR and CR reads in !64-bit mode (Paolo Bonzini) [1956950] - KVM: SVM: Truncate GPR value for DR and CR accesses in !64-bit mode (Paolo Bonzini) [1956950] - KVM: x86: Check CR3 GPA for validity regardless of vCPU mode (Paolo Bonzini) [1956950] - KVM: x86: Remove emulator's broken checks on CR0/CR3/CR4 loads (Paolo Bonzini) [1956950] - KVM: VMX: Intercept FS/GS_BASE MSR accesses for 32-bit KVM (Paolo Bonzini) [1956950] - KVM: SVM: Delay restoration of host MSR_TSC_AUX until return to userspace (Paolo Bonzini) [1956950] - KVM: SVM: Clear MSR_TSC_AUX[63:32] on write (Paolo Bonzini) [1956950] - KVM: SVM: Inject #GP on guest MSR_TSC_AUX accesses if RDTSCP unsupported (Paolo Bonzini) [1956950] - KVM: VMX: Invert the inlining of MSR interception helpers (Paolo Bonzini) [1956950] - KVM: X86: Fix failure to boost kernel lock holder candidate in SEV-ES guests (Paolo Bonzini) [1956950] - KVM: x86: Properly handle APF vs disabled LAPIC situation (Paolo Bonzini) [1956950] - KVM: VMX: use EPT_VIOLATION_GVA_TRANSLATED instead of 0x100 (Paolo Bonzini) [1956950] - KVM: x86: Support KVM VMs sharing SEV context (Paolo Bonzini) [1956950] - KVM: x86: Remove unused function declaration (Paolo Bonzini) [1956950] - KVM: x86/mmu: Drop trace_kvm_age_page() tracepoint (Paolo Bonzini) [1956950] - KVM: Move prototypes for MMU notifier callbacks to generic code (Paolo Bonzini) [1956950] - KVM: Pass MMU notifier range flags to kvm_unmap_hva_range() (Paolo Bonzini) [1956950] - KVM: x86/mmu: preserve pending TLB flush across calls to kvm_tdp_mmu_zap_sp (Paolo Bonzini) [1956950] - KVM: x86: disable interrupts while pvclock_gtod_sync_lock is taken (Paolo Bonzini) [1956950] - KVM: x86: reduce pvclock_gtod_sync_lock critical sections (Paolo Bonzini) [1956950] - kvm: x86: annotate RCU pointers (Paolo Bonzini) [1956950] - KVM: x86: remove misplaced comment on active_mmu_pages (Paolo Bonzini) [1956950] - x86/sev: Drop redundant and potentially misleading 'sev_enabled' (Paolo Bonzini) [1956950] - x86/cpufeatures: Assign dedicated feature word for CPUID_0x8000001F[EAX] (Paolo Bonzini) [1956950] - cgroup: Add misc cgroup controller (Paolo Bonzini) [1956950] - x86: Remove duplicate TSC DEADLINE MSR definitions (Paolo Bonzini) [1956950] - KVM: s390: allow facility 192 (vector-packed-decimal-enhancement facility 2) (Thomas Huth) [1977289] - KVM: s390: gen_facilities: allow facilities 165, 193, 194 and 196 (Thomas Huth) [1977289] - mpi3mr: mark as tech preview (Tomas Henzl) [1858804] - add the mpi3mr config (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix W=1 compilation warnings (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix warnings reported by smatch (Tomas Henzl) [1858804] - scsi: mpi3mr: Make some symbols static (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix error return code in mpi3mr_init_ioc() (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix missing unlock on error (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix error handling in mpi3mr_setup_isr() (Tomas Henzl) [1858804] - scsi: mpi3mr: Delete unnecessary NULL check (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix a double free (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix fall-through warning for Clang (Tomas Henzl) [1858804] - scsi: mpi3mr: Add event handling debug prints (Tomas Henzl) [1858804] - scsi: mpi3mr: Add EEDP DIF DIX support (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for DSN secure firmware check (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for PM suspend and resume (Tomas Henzl) [1858804] - scsi: mpi3mr: Wait for pending I/O completions upon detection of VD I/O timeout (Tomas Henzl) [1858804] - scsi: mpi3mr: Print pending host I/Os for debugging (Tomas Henzl) [1858804] - scsi: mpi3mr: Complete support for soft reset (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for threaded ISR (Tomas Henzl) [1858804] - scsi: mpi3mr: Hardware workaround for UNMAP commands to NVMe drives (Tomas Henzl) [1858804] - scsi: mpi3mr: Allow certain commands during pci-remove hook (Tomas Henzl) [1858804] - scsi: mpi3mr: Add change queue depth support (Tomas Henzl) [1858804] - scsi: mpi3mr: Implement SCSI error handler hooks (Tomas Henzl) [1858804] - scsi: mpi3mr: Add bios_param SCSI host template hook (Tomas Henzl) [1858804] - scsi: mpi3mr: Print IOC info for debugging (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for timestamp sync with firmware (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for recovering controller (Tomas Henzl) [1858804] - scsi: mpi3mr: Additional event handling (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for PCIe device event handling (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for device add/remove event handling (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for internal watchdog thread (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for queue command processing (Tomas Henzl) [1858804] - scsi: mpi3mr: Create operational request and reply queue pair (Tomas Henzl) [1858804] - scsi: mpi3mr: Base driver code (Tomas Henzl) [1858804] - scsi: mpi3mr: Add mpi30 Rev-R headers and Kconfig (Tomas Henzl) [1858804] - e1000e: Fix prototype warning (Ken Cox) [1920290] - e1000e: Mark e1000e_pm_prepare() as __maybe_unused (Ken Cox) [1920290] - e1000e: Fix duplicate include guard (Ken Cox) [1920290] - e1000e: Remove the runtime suspend restriction on CNP+ (Ken Cox) [1920290] - e1000e: Leverage direct_complete to speed up s2ram (Ken Cox) [1920290] - e1000e: Fix error handling in e1000_set_d0_lplu_state_82571 (Ken Cox) [1920290] - e1000e: add rtnl_lock() to e1000_reset_task (Ken Cox) [1920290] - e1000e: remove the redundant value assignment in e1000_update_nvm_checksum_spt (Ken Cox) [1920290] - e1000e: Export S0ix flags to ethtool (Ken Cox) [1920290] - e1000e: bump up timeout to wait when ME un-configures ULP mode (Ken Cox) [1920290] - e1000e: Only run S0ix flows if shutdown succeeded (Ken Cox) [1920290] - scsi: ipr: System crashes when seeing type 20 error (Desnes A. Nunes do Rosario) [1977532] - scsi: ipr: Use scnprintf() for avoiding potential buffer overflow (Desnes A. Nunes do Rosario) [1977532] - tipc: do not write skb_shinfo frags when doing decrytion (Xin Long) [1974627] - bnxt_en: Call bnxt_ethtool_free() in bnxt_init_one() error path (Jonathan Toppins) [1921449] - bnxt_en: Fix TQM fastpath ring backing store computation (Jonathan Toppins) [1921449] - bnxt_en: Rediscover PHY capabilities after firmware reset (Jonathan Toppins) [1921449] - bnxt_en: Fix context memory setup for 64K page size. (Jonathan Toppins) [1921449] - bnxt_en: Include new P5 HV definition in VF check. (Jonathan Toppins) [1921449] - bnxt_en: Add PCI IDs for Hyper-V VF devices. (Jonathan Toppins) [1921449] - bnxt_en: Fix RX consumer index logic in the error path. (Jonathan Toppins) [1921449] - bnxt_en: fix ternary sign extension bug in bnxt_show_temp() (Jonathan Toppins) [1921449] - bnxt_en: reliably allocate IRQ table on reset to avoid crash (Jonathan Toppins) [1921449] - bnxt_en: Fix race between firmware reset and driver remove. (Jonathan Toppins) [1921449] - bnxt_en: Improve logging of error recovery settings information. (Jonathan Toppins) [1921449] - bnxt_en: Reply to firmware's echo request async message. (Jonathan Toppins) [1921449] - bnxt_en: Initialize "context kind" field for context memory blocks. (Jonathan Toppins) [1921449] - bnxt_en: Add context memory initialization infrastructure. (Jonathan Toppins) [1921449] - bnxt_en: Implement faster recovery for firmware fatal error. (Jonathan Toppins) [1921449] - bnxt_en: selectively allocate context memories (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface spec to 1.10.2.16. (Jonathan Toppins) [1921449] - bnxt_en: Fix devlink info's stored fw.psid version format. (Jonathan Toppins) [1921449] - bnxt_en: reverse order of TX disable and carrier off (Jonathan Toppins) [1921449] - bnxt_en: Convert to use netif_level() helpers. (Jonathan Toppins) [1921449] - bnxt_en: Do not process completion entries after fatal condition detected. (Jonathan Toppins) [1921449] - bnxt_en: Consolidate firmware reset event logging. (Jonathan Toppins) [1921449] - bnxt_en: Improve firmware fatal error shutdown sequence. (Jonathan Toppins) [1921449] - bnxt_en: Modify bnxt_disable_int_sync() to be called more than once. (Jonathan Toppins) [1921449] - bnxt_en: Add a new BNXT_STATE_NAPI_DISABLED flag to keep track of NAPI state. (Jonathan Toppins) [1921449] - bnxt_en: Add bnxt_fw_reset_timeout() helper. (Jonathan Toppins) [1921449] - bnxt_en: Retry open if firmware is in reset. (Jonathan Toppins) [1921449] - bnxt_en: attempt to reinitialize after aborted reset (Jonathan Toppins) [1921449] - bnxt_en: log firmware debug notifications (Jonathan Toppins) [1921449] - bnxt_en: Add an upper bound for all firmware command timeouts. (Jonathan Toppins) [1921449] - bnxt_en: Move reading VPD info after successful handshake with fw. (Jonathan Toppins) [1921449] - bnxt_en: Retry sending the first message to firmware if it is under reset. (Jonathan Toppins) [1921449] - bnxt_en: handle CRASH_NO_MASTER during bnxt_open() (Jonathan Toppins) [1921449] - bnxt_en: Define macros for the various health register states. (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface to 1.10.2.11. (Jonathan Toppins) [1921449] - bnxt_en: Clear DEFRAG flag in firmware message when retry flashing. (Jonathan Toppins) [1921449] - bnxt_en: Improve stats context resource accounting with RDMA driver loaded. (Jonathan Toppins) [1921449] - bnxt_en: Use kzalloc for allocating only one thing (Jonathan Toppins) [1921449] - bnxt_en: Check TQM rings for maximum supported value. (Jonathan Toppins) [1921449] - bnxt_en: Fix AER recovery. (Jonathan Toppins) [1921449] - bnxt_en: Enable batch mode when using HWRM_NVM_MODIFY to flash packages. (Jonathan Toppins) [1921449] - bnxt_en: Retry installing FW package under NO_SPACE error condition. (Jonathan Toppins) [1921449] - bnxt_en: Restructure bnxt_flash_package_from_fw_obj() to execute in a loop. (Jonathan Toppins) [1921449] - bnxt_en: Rearrange the logic in bnxt_flash_package_from_fw_obj(). (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_flash_nvram. (Jonathan Toppins) [1921449] - bnxt_en: Release PCI regions when DMA mask setup fails during probe. (Jonathan Toppins) [1921449] - bnxt_en: fix error return code in bnxt_init_board() (Jonathan Toppins) [1921449] - bnxt_en: fix error return code in bnxt_init_one() (Jonathan Toppins) [1921449] - bnxt_en: Avoid unnecessary NVM_GET_DEV_INFO cmd error log on VFs. (Jonathan Toppins) [1921449] - bnxt_en: Fix counter overflow logic. (Jonathan Toppins) [1921449] - bnxt_en: Free port stats during firmware reset. (Jonathan Toppins) [1921449] - bnxt_en: read EEPROM A2h address using page 0 (Jonathan Toppins) [1921449] - bnxt_en: Send HWRM_FUNC_RESET fw command unconditionally. (Jonathan Toppins) [1921449] - bnxt_en: Check abort error state in bnxt_open_nic(). (Jonathan Toppins) [1921449] - bnxt_en: Re-write PCI BARs after PCI fatal error. (Jonathan Toppins) [1921449] - bnxt_en: Invoke cancel_delayed_work_sync() for PFs also. (Jonathan Toppins) [1921449] - bnxt_en: Fix regression in workqueue cleanup logic in bnxt_remove_one(). (Jonathan Toppins) [1921449] - bnxt_en: Add stored FW version info to devlink info_get cb. (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_dl_info_get(). (Jonathan Toppins) [1921449] - bnxt_en: Add bnxt_hwrm_nvm_get_dev_info() to query NVM info. (Jonathan Toppins) [1921449] - bnxt_en: Log unknown link speed appropriately. (Jonathan Toppins) [1921449] - bnxt_en: Log event_data1 and event_data2 when handling RESET_NOTIFY event. (Jonathan Toppins) [1921449] - bnxt_en: Simplify bnxt_async_event_process(). (Jonathan Toppins) [1921449] - bnxt_en: Set driver default message level. (Jonathan Toppins) [1921449] - bnxt_en: Enable online self tests for multi-host/NPAR mode. (Jonathan Toppins) [1921449] - bnxt_en: Return -EROFS to user space, if NVM writes are not permitted. (Jonathan Toppins) [1921449] - bnxt_en: Eliminate unnecessary RX resets. (Jonathan Toppins) [1921449] - bnxt_en: Reduce unnecessary message log during RX errors. (Jonathan Toppins) [1921449] - bnxt_en: Add a software counter for RX ring reset. (Jonathan Toppins) [1921449] - bnxt_en: Implement RX ring reset in response to buffer errors. (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_init_one_rx_ring(). (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_free_rx_skbs(). (Jonathan Toppins) [1921449] - bnxt_en: Log FW health status info, if reset is aborted. (Jonathan Toppins) [1921449] - bnxt_en: perform no master recovery during startup (Jonathan Toppins) [1921449] - bnxt_en: log firmware status on firmware init failure (Jonathan Toppins) [1921449] - bnxt_en: refactor bnxt_alloc_fw_health() (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface spec to 1.10.1.68. (Jonathan Toppins) [1921449] - bnxt_en: Improve preset max value for ethtool -l. (Jonathan Toppins) [1921449] - bnxt_en: Implement ethtool set_fec_param() method. (Jonathan Toppins) [1921449] - bnxt_en: Report Active FEC encoding during link up. (Jonathan Toppins) [1921449] - bnxt_en: Report FEC settings to ethtool. (Jonathan Toppins) [1921449] - bnxt_en: avoid link reset if speed is not changed (Jonathan Toppins) [1921449] - bnxt_en: Handle ethernet link being disabled by firmware. (Jonathan Toppins) [1921449] - bnxt_en: ethtool: support PAM4 link speeds up to 200G (Jonathan Toppins) [1921449] - bnxt_en: add basic infrastructure to support PAM4 link speeds (Jonathan Toppins) [1921449] - bnxt_en: refactor bnxt_get_fw_speed() (Jonathan Toppins) [1921449] - bnxt_en: refactor code to limit speed advertising (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface spec to 1.10.1.65. (Jonathan Toppins) [1921449] - bnxt: add pause frame stats (Jonathan Toppins) [1921449] - xfrm: Fix xfrm offload fallback fail case (Andrea Claudi) [1976424] - sctp: trim optlen when it's a huge value in sctp_setsockopt (Xin Long) [1983864] - netfilter: flowtable: Set offload timeouts according to proto values (Phil Sutter) [1979184] - netfilter: conntrack: Introduce udp offload timeout configuration (Phil Sutter) [1979184] - netfilter: conntrack: Introduce tcp offload timeout configuration (Phil Sutter) [1979184] - veth: check for NAPI instead of xdp_prog before xmit of XDP frame (Paolo Abeni) [1952835] - self-tests: add veth tests (Paolo Abeni) [1952835] - veth: refine napi usage (Paolo Abeni) [1952835] - veth: allow enabling NAPI even without XDP (Paolo Abeni) [1952835] - veth: use skb_orphan_partial instead of skb_orphan (Paolo Abeni) [1952835] - net: really orphan skbs tied to closing sk (Paolo Abeni) [1952835] - net: let skb_orphan_partial wake-up waiters. (Paolo Abeni) [1952835] - veth: Store queue_mapping independently of XDP prog presence (Paolo Abeni) [1952835] - net/xfrm: Add inner_ipproto into sec_path (Petr Oros) [1981429] - net, xdp: Introduce xdp_prepare_buff utility routine (Jiri Benc) [1983730] - net, xdp: Introduce xdp_init_buff utility routine (Jiri Benc) [1983730] - bridge: switchdev: Notify about VLAN protocol changes (Ivan Vecera) [1981461] - net: bridge: br_vlan_get_pvid_rcu() should dereference the VLAN group under RCU (Ivan Vecera) [1981461] - bridge: add br_vlan_get_proto() (Ivan Vecera) [1981461] - bridge: add br_vlan_get_pvid_rcu() (Ivan Vecera) [1981461] - RDMA/bnxt_re: Fix a double free in bnxt_qplib_alloc_res (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Get rid of custom module reference counting (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Create direct symbol link between bnxt modules (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Depend on bnxt ethernet driver and not blindly select it (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix Kconfig indentation (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix error return code in bnxt_qplib_cq_process_terminal() (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Move device to error state upon device crash (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Allow bigger MR creation (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Code refactor while populating user MRs (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix max_qp_wrs reported (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix entry size during SRQ create (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix sizeof mismatch for allocation of pbl_tbl. (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Use rdma_umem_for_each_dma_block() (Selvin Xavier) [1921454 1923026] - [s390] tools/kvm_stat: Exempt time-based counters (Claudio Imbrenda) [1981802] - Documentation/admin-guide: intel_pstate: drop doubled word (David Arcari) [1973225] - Documentation: fix multiple typos found in the admin-guide subdirectory (David Arcari) [1973225] - cpufreq: intel_pstate: Fix active mode setting from command line (David Arcari) [1973225] - cpufreq: intel_pstate: Use passive mode by default without HWP (David Arcari) [1973225] - cpufreq: intel_pstate: Use HWP if enabled by platform firmware (David Arcari) [1973225] - cpufreq: intel_pstate: Simplify intel_pstate_update_perf_limits() (David Arcari) [1973225] - cpufreq: intel_pstate: Clean up frequency computations (David Arcari) [1973225] - cpufreq/intel_pstate: Fix wrong macro conversion (David Arcari) [1973225] - cpufreq: Convert to new X86 CPU match macros (David Arcari) [1973225] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (David Arcari) [1973225] - selftests/fpu: Fix debugfs_simple_attr.cocci warning (Vitaly Kuznetsov) [1919182] - selftest/fpu: avoid clang warning (Vitaly Kuznetsov) [1919182] - redhat/configs: Add Enable CONFIG_TEST_FPU (Vitaly Kuznetsov) [1919182] - selftests/fpu: Add an FPU selftest (Vitaly Kuznetsov) [1919182] - x86/fpu/64: Don't FNINIT in kernel_fpu_begin() (Vitaly Kuznetsov) [1919182] - x86/fpu: Make the EFI FPU calling convention explicit (Vitaly Kuznetsov) [1919182] - x86/mmx: Use KFPU_387 for MMX string operations (Vitaly Kuznetsov) [1919182] - x86/fpu: Add kernel_fpu_begin_mask() to selectively initialize state (Vitaly Kuznetsov) [1919182] - x86/fpu: Simplify kernel_fpu_begin() (Vitaly Kuznetsov) [1919182] - x86/fpu: Simplify kernel_fpu_end() (Vitaly Kuznetsov) [1919182] - x86/fpu: Don't use current->mm to check for a kthread (Vitaly Kuznetsov) [1919182] - x86/fpu: Don't export __kernel_fpu_{begin,end}() (Vitaly Kuznetsov) [1919182] - intel_th: pci: Add Alder Lake-P support (Tony Camuso) [1929493 1929494]- can: bcm: delay release of struct bcm_op after synchronize_rcu() (Hangbin Liu) [1975059] {CVE-2021-3609} - seq_file: Disallow extremely large seq buffer allocations (Ian Kent) [1975182] - nvme-pci: look for StorageD3Enable on companion ACPI device instead (Gopal Tiwari) [1965660] - prctl: exe link permission error changed from -EINVAL to -EPERM (Adrian Reber) [1960708] - prctl: Allow local CAP_CHECKPOINT_RESTORE to change /proc/self/exe (Adrian Reber) [1960708] - prctl_set_mm: refactor checks from validate_prctl_map (Adrian Reber) [1960708] - proc: allow access in init userns for map_files with CAP_CHECKPOINT_RESTORE (Adrian Reber) [1960708] - pid_namespace: use checkpoint_restore_ns_capable() for ns_last_pid (Adrian Reber) [1960708] - capabilities: Introduce CAP_CHECKPOINT_RESTORE (Adrian Reber) [1960708] - scripts: skip empty CAP_* strings (Adrian Reber) [1960708] - VMCI: Release resource if the work is already queued (Cathy Avery) [1978518] - perf vendor events arm64: Add Fujitsu A64FX pmu event (Michael Petlan) [1908109] - perf vendor events arm64: Add more common and uarch events (Michael Petlan) [1908109] - sunrpc: Avoid a KASAN slab-out-of-bounds bug in xdr_set_page_base() (Benjamin Coddington) [1969751] - xfs: sync lazy sb accounting on quiesce of read-only mounts (Bill O'Donnell) [1917220] - drm/dp_mst: Avoid to mess up payload table by ports in stale topology (Lyude Paul) [1944404] - drm/dp_mst: Do not set proposed vcpi directly (Lyude Paul) [1944404] - drm/qxl: add lock asserts to qxl_bo_vmap_locked + qxl_bo_vunmap_locked (Lyude Paul) [1944404 1907341] - drm/qxl: rework cursor plane (Lyude Paul) [1944404 1907341] - drm/qxl: move shadow handling to new qxl_prepare_shadow() (Lyude Paul) [1944404 1907341] - drm/qxl: fix monitors object vmap (Lyude Paul) [1944404 1907341] - drm/qxl: fix prime vmap (Lyude Paul) [1944404 1907341] - drm/qxl: add qxl_bo_vmap/qxl_bo_vunmap (Lyude Paul) [1944404 1907341] - drm/qxl: rename qxl_bo_kmap -> qxl_bo_vmap_locked (Lyude Paul) [1944404 1907341] - drm/qxl: more fence wait rework (Lyude Paul) [1944404 1907341] - drm/qxl: properly handle device init failures (Lyude Paul) [1944404 1907341] - drm/qxl: allocate dumb buffers in ram (Lyude Paul) [1944404 1907341] - drm/qxl: simplify qxl_fence_wait (Lyude Paul) [1944404 1907341] - drm/qxl: properly free qxl releases (Lyude Paul) [1944404 1907341] - drm/qxl: handle shadow in primary destroy (Lyude Paul) [1944404 1907341] - drm/qxl: properly pin/unpin shadow (Lyude Paul) [1944404 1907341] - drm/qxl: use drmm_mode_config_init (Lyude Paul) [1944404 1907341] - drm/i915/icp+: Use icp_hpd_irq_setup() instead of spt_hpd_irq_setup() (Lyude Paul) [1944404] - drm/i915/gen9_bc: Add W/A for missing STRAP config on TGP PCH + CML combos (Lyude Paul) [1944404] - drm/i915/gen9_bc: Introduce HPD pin mappings for TGP PCH + CML combos (Lyude Paul) [1944404] - drm/i915/gen9_bc: Introduce TGP PCH DDC pin mappings (Lyude Paul) [1944404] - drm/i915/gen9_bc: Recognize TGP PCH + CML combos (Lyude Paul) [1944404] - drm/i915: rename i915_rev_steppings->intel_step_info (Lyude Paul) [1944404] - drm/i915: rename disp_stepping->display_step and gt_stepping->gt_step (Lyude Paul) [1944404] - drm/i915: rename DISP_STEPPING->DISPLAY_STEP and GT_STEPPING->GT_STEP (Lyude Paul) [1944404] - drm/i915: switch TGL and ADL to the new stepping scheme (Lyude Paul) [1944404] - drm/i915: switch KBL to the new stepping scheme (Lyude Paul) [1944404] - drm/i915: add new helpers for accessing stepping info (Lyude Paul) [1944404] - drm/i915: split out stepping info to a new file (Lyude Paul) [1944404] - drm/i915: Add DISPLAY_VER() and related macros (Lyude Paul) [1944404] - drm/i915/display: Do not allow DC3CO if PSR SF is enabled (Lyude Paul) [1944404] - drm/i915: s/dev_priv/i915/ for the remainder of DDI clock routing (Lyude Paul) [1944404] - drm/i915: Relocate icl_sanitize_encoder_pll_mapping() (Lyude Paul) [1944404] - drm/i915: Use .disable_clock() for pll sanitation (Lyude Paul) [1944404] - drm/i915: Split adl-s/rkl from icl_ddi_combo_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Extract _cnl_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Sprinkle WARN(!pll) into icl/dg1 .clock_enable() (Lyude Paul) [1944404] - drm/i915: Sprinkle a few missing locks around shared DDI clock registers (Lyude Paul) [1944404] - drm/i915: Use intel_de_rmw() for DDI clock routing (Lyude Paul) [1944404] - drm/i915: Extract icl+ .{enable,disable}_clock() vfuncs (Lyude Paul) [1944404] - drm/i915: Convert DG1 over to .{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i195: Extract cnl_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Extract skl_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Extract hsw_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Introduce .{enable,disable}_clock() encoder vfuncs (Lyude Paul) [1944404] - drm/i915: Use intel_ddi_clk_select() for FDI (Lyude Paul) [1944404] - drm/i915/adl_s: Add GT and CTX WAs for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Add display WAs for ADL-S (Lyude Paul) [1944404] - drm/i915/display: Add HAS_D12_PLANE_MINIMIZATION (Lyude Paul) [1944404] - drm/i915/adl_s: Re-use TGL GuC/HuC firmware (Lyude Paul) [1944404] - drm/i915/adl_s: Add power wells (Lyude Paul) [1944404] - drm/i915/adl_s: Update PHY_MISC programming (Lyude Paul) [1944404] - drm/i915/adl_s: Update combo PHY master/slave relationships (Lyude Paul) [1944404] - drm/i915/adl_s: Add vbt port and aux channel settings for adls (Lyude Paul) [1944404] - drm/i915/adl_s: Add adl-s ddc pin mapping (Lyude Paul) [1944404] - drm/i915/adl_s: Initialize display for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Configure Port clock registers for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Configure DPLL for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Add PHYs for Alderlake S (Lyude Paul) [1944404] - drm/i915/adl_s: Add PCH support (Lyude Paul) [1944404] - drm/i915/adl_s: Add ADL-S platform info and PCI ids (Lyude Paul) [1944404] - drm/i915/tgl: Use TGL stepping info for applying WAs (Lyude Paul) [1944404] - redhat/configs: Update CONFIG_HSA_AMD (Lyude Paul) - redhat/configs: Update CONFIG_DRM_AMDGPU_USERPTR (Lyude Paul) - DRM Backport v5.11 -> v5.12.4 (Lyude Paul) [1944404] - include/linux/kernel.h: add typeof_member() macro (Lyude Paul) [1944404] - drm: Use USB controller's DMA mask when importing dmabufs (Lyude Paul) [1944404] - PM: runtime: Add pm_runtime_get_if_active() (Lyude Paul) [1944404] - PCI: Add pci_rebar_bytes_to_size() (Lyude Paul) [1944404] - PCI: Export pci_rebar_get_possible_sizes() (Lyude Paul) [1944404] - DRM backport v5.10->v5.11 (Lyude Paul) [1944404] - dma-buf: Use struct dma_buf_map in dma_buf_vunmap() interfaces (Lyude Paul) [1944404] - dma-buf: Use struct dma_buf_map in dma_buf_vmap() interfaces (Lyude Paul) [1944404] - dma-buf: Add struct dma-buf-map for storing struct dma_buf.vaddr_ptr (Lyude Paul) [1944404] - PCI/PM: Do not generate wakeup event when runtime resuming device (Lyude Paul) [1944404] - PCI/PM: Rename pci_wakeup_bus() to pci_resume_bus() (Lyude Paul) [1944404] - blktrace: make relay callbacks const (Lyude Paul) [1944404] - drm/i915: make relay callbacks const (Lyude Paul) [1944404] - relay: allow the use of const callback structs (Lyude Paul) [1944404] - relay: make create_buf_file and remove_buf_file callbacks mandatory (Lyude Paul) [1944404] - relay: require non-NULL callbacks in relay_open() (Lyude Paul) [1944404] - relay: remove unused buf_mapped and buf_unmapped callbacks (Lyude Paul) [1944404] - drm/edid: fix objtool warning in drm_cvt_modes() (Lyude Paul) [1944404] - drm/edid: Fix uninitialized variable in drm_cvt_modes() (Lyude Paul) [1944404] - DRM backport v5.9.y -> v5.10 (Lyude Paul) [1944404] - time: Introduce jiffies64_to_msecs() (Lyude Paul) [1944404] - virtio: add dma-buf support for exported objects (Lyude Paul) [1944404] - objtool: Rename frame.h -> objtool.h (Lyude Paul) [1944404] - moduleparams: Add hexint type parameter (Lyude Paul) [1944404] - iommu/vt-d: Move intel_iommu_gfx_mapped to Intel IOMMU header (Lyude Paul) [1944404]- [s390] s390/zcrypt/pkey: introduce zcrypt_wait_api_operational() function (Claudio Imbrenda) [1881833] - [s390] s390/ap: ap bus userspace notifications for some bus conditions (Claudio Imbrenda) [1881833] - [s390] s390/pkey: fix paes selftest failure with paes and pkey static build (Claudio Imbrenda) [1881833] - KVM: nSVM: Avoid tainiting kernel by default (Vitaly Kuznetsov) [1982248] - KVM: s390x: implement KVM_CAP_SET_GUEST_DEBUG2 (Thomas Huth) [1945752] - KVM: s390: fix guarded storage control register handling (Thomas Huth) [1945752] - s390/protvirt: fix error return code in uv_info_init() (Thomas Huth) [1945752] - s390/uv: fix prot virt host indication compilation (Thomas Huth) [1945752] - KVM: s390: VSIE: fix MVPG handling for prefixing and MSO (Thomas Huth) [1945752] - KVM: s390: split kvm_s390_real_to_abs (Thomas Huth) [1945752] - KVM: s390: VSIE: correctly handle MVPG when in VSIE (Thomas Huth) [1945752] - KVM: s390: extend kvm_s390_shadow_fault to return entry pointer (Thomas Huth) [1945752] - s390/uv: add prot virt guest/host indication files (Thomas Huth) [1945752] - KVM: s390: split kvm_s390_logical_to_effective (Thomas Huth) [1945752] - KVM: s390: Fix comment spelling in kvm_s390_vcpu_start() (Thomas Huth) [1945752] - s390: uv: Fix sysfs max number of VCPUs reporting (Thomas Huth) [1945752] - KVM: s390: track synchronous pfault events in kvm_stat (Thomas Huth) [1945752] - s390/gmap: make gmap memcg aware (Thomas Huth) [1945752] - KVM: s390: Add memcg accounting to KVM allocations (Thomas Huth) [1945752] - s390/uv: handle destroy page legacy interface (Thomas Huth) [1945752] - KVM: s390: pv: Mark mm as protected after the set secure parameters and improve cleanup (Thomas Huth) [1945752] - virtio/s390: implement virtio-ccw revision 2 correctly (Thomas Huth) [1945752] - sfc: deprecate SFC9020 family (Siena) (Íñigo Huguet) [1926379] - NFS: Fix open coded versions of nfs_set_cache_invalid() in NFSv4 (Benjamin Coddington) [1936478] - NFS: Fix open coded versions of nfs_set_cache_invalid() (Benjamin Coddington) [1936478] - NFS: Clean up function nfs_mark_dir_for_revalidate() (Benjamin Coddington) [1936478] - NFSD: Mark exports of NFS as tech-preview (Benjamin Coddington) [1972229] - perf vendor events intel: Add missing skylake & icelake model numbers (Michael Petlan) [1971959] - tc-testing: add test for ct DNAT tuple collision (Marcelo Ricardo Leitner) [1964578] - tc-testing: add support for sending various scapy packets (Marcelo Ricardo Leitner) [1964578] - tc-testing: fix list handling (Marcelo Ricardo Leitner) [1964578] - net/sched: act_ct: handle DNAT tuple collision (Marcelo Ricardo Leitner) [1964578] - net/packet: remove data races in fanout operations (Balazs Nemeth) [1957270] - net/packet: remove locking from packet_rcv_has_room() (Balazs Nemeth) [1957270] - net: packetmmap: fix only tx timestamp on request (Balazs Nemeth) [1970404] - x86/sgx: Add TAINT_TECH_PREVIEW for virtual EPC (Bandan Das) [1977474] - cxgb4: fix thermal zone device registration (Raju Rangoju) [1954012] - powerpc/64s: Fix crashes when toggling stf barrier (Desnes A. Nunes do Rosario) [1964484] - iavf: Fix an error handling path in 'iavf_probe()' (Stefan Assmann) [1920276] - iavf: clean up packet type lookup table (Stefan Assmann) [1920276] - iavf: redefine the magic number for FDIR GTP-U header fields (Stefan Assmann) [1920276] - iavf: enhance the duplicated FDIR list scan handling (Stefan Assmann) [1920276] - iavf: change the flex-byte support number to macro definition (Stefan Assmann) [1920276] - iavf: remove duplicate free resources calls (Stefan Assmann) [1920276] - iavf: Support for modifying SCTP RSS flow hashing (Stefan Assmann) [1920276] - iavf: Support for modifying UDP RSS flow hashing (Stefan Assmann) [1920276] - iavf: Support for modifying TCP RSS flow hashing (Stefan Assmann) [1920276] - iavf: Add framework to enable ethtool RSS config (Stefan Assmann) [1920276] - iavf: add support for UDP Segmentation Offload (Stefan Assmann) [1920276] - intel: clean up mismatched header comments (Stefan Assmann) [1920276] - iavf: Enable flex-bytes support (Stefan Assmann) [1920276] - iavf: Support Ethernet Type Flow Director filters (Stefan Assmann) [1920276] - iavf: Support IPv6 Flow Director filters (Stefan Assmann) [1920276] - iavf: Support IPv4 Flow Director filters (Stefan Assmann) [1920276] - iavf: Add framework to enable ethtool ntuple filters (Stefan Assmann) [1920276] - net: intel: iavf: fix error return code of iavf_init_get_resources() (Stefan Assmann) [1920276] - workqueue: Move the position of debug_work_activate() in __queue_work() (Waiman Long) [1977537] - workqueue: remove useless unlock() and lock() in series (Waiman Long) [1977537] - workqueue: Convert the pool::lock and wq_mayday_lock to raw_spinlock_t (Waiman Long) [1977537] - workqueue: Use rcuwait for wq_manager_wait (Waiman Long) [1977537] - workqueue: Remove unnecessary kfree() call in rcu_free_wq() (Waiman Long) [1977537] - workqueue: Fix an use after free in init_rescuer() (Waiman Long) [1977537] - workqueue: Use IS_ERR and PTR_ERR instead of PTR_ERR_OR_ZERO. (Waiman Long) [1977537] - workqueue: don't use wq_select_unbound_cpu() for bound works (Waiman Long) [1977537] - workqueue: Use pr_warn instead of pr_warning (Waiman Long) [1977537] - workqueue: more destroy_workqueue() fixes (Waiman Long) [1977537] - workqueue: Minor follow-ups to the rescuer destruction change (Waiman Long) [1977537] - kernel/workqueue: Document wq_worker_last_func() argument (Waiman Long) [1977537] - workqueue: Only unregister a registered lockdep key (Waiman Long) [1977537] - kernel: workqueue: clarify wq_worker_last_func() caller requirements (Waiman Long) [1977537] - workqueue: Fix spelling in source code comments (Waiman Long) [1977537] - workqueue: fix typo in comment (Waiman Long) [1977537] - ice: add correct exception tracing for XDP (Jonathan Toppins) [1920278] - ice: optimize for XDP_REDIRECT in xsk path (Jonathan Toppins) [1920278] - ice: Allow all LLDP packets from PF to Tx (Jonathan Toppins) [1920278] - ice: report supported and advertised autoneg using PHY capabilities (Jonathan Toppins) [1920278] - ice: handle the VF VSI rebuild failure (Jonathan Toppins) [1920278] - ice: Fix VFR issues for AVF drivers that expect ATQLEN cleared (Jonathan Toppins) [1920278] - ice: Fix allowing VF to request more/less queues via virtchnl (Jonathan Toppins) [1920278] - ice: track AF_XDP ZC enabled queues in bitmap (Jonathan Toppins) [1920278] - ice: handle increasing Tx or Rx ring sizes (Jonathan Toppins) [1920278] - ice: Fix potential infinite loop when using u8 loop counter (Jonathan Toppins) [1920278] - ice: fix memory leak of aRFS after resuming from suspend (Jonathan Toppins) [1920278] - ice: Cleanup fltr list in case of allocation issues (Jonathan Toppins) [1920278] - ice: Use port number instead of PF ID for WoL (Jonathan Toppins) [1920278] - ice: Fix for dereference of NULL pointer (Jonathan Toppins) [1920278] - ice: remove DCBNL_DEVRESET bit from PF state (Jonathan Toppins) [1920278] - ice: fix memory allocation call (Jonathan Toppins) [1920278] - ice: prevent ice_open and ice_stop during reset (Jonathan Toppins) [1920278] - ice: Recognize 860 as iSCSI port in CEE mode (Jonathan Toppins) [1920278] - ice: Increase control queue timeout (Jonathan Toppins) [1920278] - ice: Continue probe on link/PHY errors (Jonathan Toppins) [1920278] - ice: fix napi work done reporting in xsk path (Jonathan Toppins) [1920278] - ice: update the number of available RSS queues (Jonathan Toppins) [1920278] - ice: Fix state bits on LLDP mode switch (Jonathan Toppins) [1920278] - ice: Account for port VLAN in VF max packet size calculation (Jonathan Toppins) [1920278] - ice: Set trusted VF as default VSI when setting allmulti on (Jonathan Toppins) [1920278] - ice: report correct max number of TCs (Jonathan Toppins) [1920278] - ice: skip NULL check against XDP prog in ZC path (Jonathan Toppins) [1920278] - ice: remove redundant checks in ice_change_mtu (Jonathan Toppins) [1920278] - ice: move skb pointer from rx_buf to rx_ring (Jonathan Toppins) [1920278] - ice: simplify ice_run_xdp (Jonathan Toppins) [1920278] - ice: Improve MSI-X fallback logic (Jonathan Toppins) [1920278] - ice: Fix trivial error message (Jonathan Toppins) [1920278] - ice: remove unnecessary casts (Jonathan Toppins) [1920278] - ice: Refactor DCB related variables out of the ice_port_info struct (Jonathan Toppins) [1920278] - ice: fix writeback enable logic (Jonathan Toppins) [1920278] - ice: Use PSM clock frequency to calculate RL profiles (Jonathan Toppins) [1920278] - ice: create scheduler aggregator node config and move VSIs (Jonathan Toppins) [1920278 1940527 1940535 1940542] {CVE-2020-24504 CVE-2020-24503 CVE-2020-24502} - ice: Add initial support framework for LAG (Jonathan Toppins) [1920278] - ice: Remove xsk_buff_pool from VSI structure (Jonathan Toppins) [1920278] - ice: implement new LLDP filter command (Jonathan Toppins) [1920278] - ice: log message when trusted VF goes in/out of promisc mode (Jonathan Toppins) [1920278] - ice: remove dead code (Jonathan Toppins) [1920278] - ice: use flex_array_size where possible (Jonathan Toppins) [1920278] - ice: Replace one-element array with flexible-array member (Jonathan Toppins) [1920278] - ice: display stored UNDI firmware version via devlink info (Jonathan Toppins) [1920278] - ice: display stored netlist versions via devlink info (Jonathan Toppins) [1920278] - ice: display some stored NVM versions via devlink info (Jonathan Toppins) [1920278] - ice: introduce function for reading from flash modules (Jonathan Toppins) [1920278] - ice: cache NVM module bank information (Jonathan Toppins) [1920278] - ice: introduce context struct for info report (Jonathan Toppins) [1920278] - ice: create flash_info structure and separate NVM version (Jonathan Toppins) [1920278] - ice: report timeout length for erasing during devlink flash (Jonathan Toppins) [1920278] - ice: Implement flow for IPv6 next header (extension header) (Jonathan Toppins) [1920278] - ice: fix FDir IPv6 flexbyte (Jonathan Toppins) [1920278] - ice: drop dead code in ice_receive_skb() (Jonathan Toppins) [1920278] - ice, xsk: Move Rx allocation out of while-loop (Jonathan Toppins) [1920278] - ice: avoid premature Rx buffer reuse (Jonathan Toppins) [1920278] - ice: Add space to unknown speed (Jonathan Toppins) [1920278] - ice: join format strings to same line as ice_debug (Jonathan Toppins) [1920278] - ice: silence static analysis warning (Jonathan Toppins) [1920278] - ice: cleanup misleading comment (Jonathan Toppins) [1920278] - ice: Remove vlan_ena from vsi structure (Jonathan Toppins) [1920278] - ice: Remove gate to OROM init (Jonathan Toppins) [1920278] - ice: Enable Support for FW Override (E82X) (Jonathan Toppins) [1920278] - ice: don't always return an error for Get PHY Abilities AQ command (Jonathan Toppins) [1920278] - ice: cleanup stack hog (Jonathan Toppins) [1920278] - mm: migrate: fix missing update page_private to hugetlb_page_subpool (Chris von Recklinghausen) [1981661] - mm,hugetlb: drop clearing of flag from prep_new_huge_page (Chris von Recklinghausen) [1981661] - hugetlb: fix uninitialized subpool pointer (Chris von Recklinghausen) [1981661] - include/linux/hugetlb.h: add synchronization information for new hugetlb specific flags (Chris von Recklinghausen) [1981661] - hugetlb: convert PageHugeFreed to HPageFreed flag (Chris von Recklinghausen) [1981661] - hugetlb: convert PageHugeTemporary() to HPageTemporary flag (Chris von Recklinghausen) [1981661] - mm: hugetlb: fix a race between freeing and dissolving the page (Chris von Recklinghausen) [1981661] - mm: don't let userspace spam allocations warnings (Xin Long) [1976699] - dm writecache: make writeback pause configurable (Mike Snitzer) [1978369] - dm writecache: pause writeback if cache full and origin being written directly (Mike Snitzer) [1978369] - dm io tracker: factor out IO tracker (Mike Snitzer) [1978369] - dm writecache: add optional "metadata_only" parameter (Mike Snitzer) [1978369] - dm writecache: add "cleaner" and "max_age" to Documentation (Mike Snitzer) [1978369] - dm writecache: write at least 4k when committing (Mike Snitzer) [1978369] - dm writecache: have ssd writeback wait if the kcopyd workqueue is busy (Mike Snitzer) [1978369] - dm writecache: use list_move instead of list_del_list_add in writecache_writeback() (Mike Snitzer) [1978369] - dm writecache: commit just one block, not a full page (Mike Snitzer) [1978369] - dm writecache: remove unused gfp_t argument from wc_add_block() (Mike Snitzer) [1978369] - dm writecache: interrupt writeback if suspended (Mike Snitzer) [1978369] - dm writecache: don't split bios when overwriting contiguous cache content (Mike Snitzer) [1978369] - dm kcopyd: avoid spin_lock_irqsave from process context (Mike Snitzer) [1978369] - dm kcopyd: avoid useless atomic operations (Mike Snitzer) [1978369] - x86/asm: Optimize memcpy_flushcache() (Mike Snitzer) [1978369] - IB/isert: Align target max I/O size to initiator size (Kamal Heib) [1930955] - IB/isert: set rdma cm afonly flag (Kamal Heib) [1930955]- xsk: Rollback reservation at NETDEV_TX_BUSY (Jiri Benc) [1882711] - xsk: Fix race in SKB mode transmit with shared cq (Jiri Benc) [1882711] - bpf: Only provide bpf_sock_from_file with CONFIG_NET (Jiri Benc) [1882711] - xsk: Validate socket state in xsk_recvmsg, prior touching socket members (Jiri Benc) [1882711] - samples/bpf: Fix spelling mistake "recieving" -> "receiving" (Jiri Benc) [1882711] - samples/bpf: Sample application for eBPF load and socket creation split (Jiri Benc) [1882711] - bpf: Adds support for setting window clamp (Jiri Benc) [1882711] - tcp: declare tcp_mmap() only when CONFIG_MMU is set (Jiri Benc) [1882711] - bpf: Remove trailing semicolon in macro definition (Jiri Benc) [1882711] - bpf: Allow bpf_{s,g}etsockopt from cgroup bind{4,6} hooks (Jiri Benc) [1882711] - bpf: Eliminate rlimit-based memory accounting infra for bpf maps (Jiri Benc) [1882711] - bpf: Eliminate rlimit-based memory accounting for xskmap maps (Jiri Benc) [1882711] - bpf: Eliminate rlimit-based memory accounting for sockmap and sockhash maps (Jiri Benc) [1882711] - bpf: Refine memcg-based memory accounting for xskmap maps (Jiri Benc) [1882711] - bpf: Refine memcg-based memory accounting for sockmap and sockhash maps (Jiri Benc) [1882711] - net, xdp, xsk: fix __sk_mark_napi_id_once napi_id error (Jiri Benc) [1882711] - samples/bpf: Add option to set the busy-poll budget (Jiri Benc) [1882711] - samples/bpf: Add busy-poll support to xdpsock (Jiri Benc) [1882711] - xsk: Propagate napi_id to XDP socket Rx path (Jiri Benc) [1882711] - xsk: Add busy-poll support for {recv,send}msg() (Jiri Benc) [1882711] - xsk: Check need wakeup flag in sendmsg() (Jiri Benc) [1882711] - xsk: Add support for recvmsg() (Jiri Benc) [1882711] - net: Add SO_BUSY_POLL_BUDGET socket option (Jiri Benc) [1882711] - net: Introduce preferred busy-polling (Jiri Benc) [1882711] - net: napi: use READ_ONCE()/WRITE_ONCE() (Jiri Benc) [1882711] - net: napi: add hard irqs deferral feature (Jiri Benc) [1882711] - fs/eventpoll.c: simply CONFIG_NET_RX_BUSY_POLL ifdefery (Jiri Benc) [1882711] - xdp: Remove the functions xsk_map_inc and xsk_map_put (Jiri Benc) [1882711] - xsk: Introduce batched Tx descriptor interfaces (Jiri Benc) [1882711] - xsk: Introduce padding between more ring pointers (Jiri Benc) [1882711] - net: page_pool: Add bulk support for ptr_ring (Jiri Benc) [1882711] - net: xdp: Introduce bulking for xdp tx return path (Jiri Benc) [1882711] - bpf: Rename some functions in bpf_sk_storage (Jiri Benc) [1882711] - bpf: Folding omem_charge() into sk_storage_charge() (Jiri Benc) [1882711] - net/smc: properly handle workqueue allocation failure (Andrea Claudi) [1955178] - Revert "net/smc: fix a NULL pointer dereference" (Andrea Claudi) [1955178] - KVM: selftests: evmcs_test: Test that KVM_STATE_NESTED_EVMCS is never lost (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Request to sync eVMCS from VMCS12 after migration (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Reset eVMCS clean fields data from prepare_vmcs02() (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Force enlightened VMCS sync from nested_vmx_failValid() (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Ignore 'hv_clean_fields' data when eVMCS data is copied in vmx_get_nested_state() (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Release enlightened VMCS on VMCLEAR (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Introduce 'EVMPTR_MAP_PENDING' post-migration state (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Make copy_vmcs12_to_enlightened()/copy_enlightened_to_vmcs12() return 'void' (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Release eVMCS when enlightened VMENTRY was disabled (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Don't set 'dirty_vmcs12' flag on enlightened VMPTRLD (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Use '-1' in 'hv_evmcs_vmptr' to indicate that eVMCS is not in use (Vitaly Kuznetsov) [1940837] - KVM: selftests: evmcs_test: Check that VMCS12 is alway properly synced to eVMCS after restore (Vitaly Kuznetsov) [1940837] - KVM: selftests: evmcs_test: Check that VMLAUNCH with bogus EVMPTR is causing #UD (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Always make an attempt to map eVMCS after migration (Vitaly Kuznetsov) [1940837] - Bluetooth: btusb: Some Qualcomm Bluetooth adapters stop working (Gopal Tiwari) [1973909] - KVM: x86: Unload MMU on guest TLB flush if TDP disabled to force MMU sync (Vitaly Kuznetsov) [1906634] - scsi: sbitmap: Silence a debug kernel warning triggered by sbitmap_put() (Ewan D. Milne) [1761937] - scsi: core: Replace sdev->device_busy with sbitmap (Ewan D. Milne) [1761937] - scsi: core: Make sure sdev->queue_depth is <= max(shost->can_queue, 1024) (Ewan D. Milne) [1761937] - scsi: core: Add scsi_device_busy() wrapper (Ewan D. Milne) [1761937] - scsi: blk-mq: Return budget token from .get_budget callback (Ewan D. Milne) [1761937] - scsi: blk-mq: Add callbacks for storing & retrieving budget token (Ewan D. Milne) [1761937] - scsi: sbitmap: Add sbitmap_calculate_shift() helper (Ewan D. Milne) [1761937] - scsi: sbitmap: Export sbitmap_weight (Ewan D. Milne) [1761937] - scsi: sbitmap: Move allocation hint into sbitmap (Ewan D. Milne) [1761937] - scsi: sbitmap: Add helpers for updating allocation hint (Ewan D. Milne) [1761937] - scsi: sbitmap: Maintain allocation round_robin in sbitmap (Ewan D. Milne) [1761937] - scsi: sbitmap: Remove sbitmap_clear_bit_unlock (Ewan D. Milne) [1761937] - blk-mq: pass request queue into get/put budget callback (Ewan D. Milne) [1761937] - dma-iommu: implement ->alloc_noncontiguous (Jerry Snitselaar) [1955767] - dma-iommu: refactor iommu_dma_alloc_remap (Jerry Snitselaar) [1955767] - dma-mapping: add a dma_alloc_noncontiguous API (Jerry Snitselaar) [1955767] - dma-mapping: refactor dma_{alloc,free}_pages (Jerry Snitselaar) [1955767] - dma-mapping: add a dma_mmap_pages helper (Jerry Snitselaar) [1955767] - dma-mapping: remove the {alloc,free}_noncoherent methods (Jerry Snitselaar) [1955767] - iommu/vt-d: Make unnecessarily global functions static (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove unused function declarations (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove SVM_FLAG_PRIVATE_PASID (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove svm_dev_ops (Jerry Snitselaar) [1955767] - iommu/vt-d: Use Real PCI DMA device for IRTE (Jerry Snitselaar) [1955767] - iommu/vt-d: Calculate and set flags for handle_mm_fault (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix build error of pasid_enable_wpe() with !X86 (Jerry Snitselaar) [1955767] - iommu/vt-d: Avoid unnecessary cache flush in pasid entry teardown (Jerry Snitselaar) [1955767] - iommu/vt-d: Enable write protect propagation from guest (Jerry Snitselaar) [1955767] - iommu/vt-d: Enable write protect for supervisor SVM (Jerry Snitselaar) [1955767] - iommu/vt-d: Report more information about invalidation errors (Jerry Snitselaar) [1955767] - iommu/vt-d: Disable SVM when ATS/PRI/PASID are not enabled in the device (Jerry Snitselaar) [1955767] - iommu: Stop exporting free_iova_fast() (Jerry Snitselaar) [1955767] - iommu: Delete iommu_dma_free_cpu_cached_iovas() (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove IOVA domain rcache flushing for CPU offlining (Jerry Snitselaar) [1955767] - iova: Add CPU hotplug handler to flush rcaches (Jerry Snitselaar) [1955767] - iommu/iova: Improve restart logic (Jerry Snitselaar) [1955767] - iommu/iova: Add rbtree entry helper (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Remove the unused fields for PREFETCH_CONFIG command (Jerry Snitselaar) [1955767] - iommu/vt-d: Use user privilege for RID2PASID translation (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix sysfs leak in alloc_iommu() (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add a check to avoid invalid iotlb sync (Jerry Snitselaar) [1955767] - x86/events/amd/iommu: Fix invalid Perf result due to IOMMU PMC power-gating (Jerry Snitselaar) [1955767] - iommu: Fix a boundary issue to avoid performance drop (Jerry Snitselaar) [1955767] - iommu/vt-d: Check for allocation failure in aux_detach_device() (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove unused dma map/unmap trace events (Jerry Snitselaar) [1955767] - iommu/amd: Clear DMA ops when switching domain (Jerry Snitselaar) [1955767] - iommu/amd: Remove performance counter pre-initialization test (Jerry Snitselaar) [1955767] - Revert "iommu/amd: Fix performance counter initialization" (Jerry Snitselaar) [1955767] - iommu/dma: Resurrect the "forcedac" option (Jerry Snitselaar) [1955767] - iommu: Check dev->iommu in iommu_dev_xxx functions (Jerry Snitselaar) [1955767] - iommu/amd: Put newline after closing bracket in warning (Jerry Snitselaar) [1955767] - iommu/vt-d: Force to flush iotlb before creating superpage (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix an error handling path in 'intel_prepare_irq_remapping()' (Jerry Snitselaar) [1955767] - iommu/vt-d: Invalidate PASID cache when root/context entry changed (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove WO permissions on second-level paging entries (Jerry Snitselaar) [1955767] - iommu/vt-d: Report the right page fault address (Jerry Snitselaar) [1955767] - iommu/vt-d: Report right snoop capability when using FL for IOVA (Jerry Snitselaar) [1955767] - iommu/vt-d: Don't set then clear private data in prq_event_thread() (Jerry Snitselaar) [1955767] - iommu/vt-d: Reject unsupported page request modes (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: add bit field SFM into GERROR_ERR_MASK (Jerry Snitselaar) [1955767] - iommu/amd: Keep track of amd_iommu_irq_remap state (Jerry Snitselaar) [1955767] - iommu/amd: Don't call early_amd_iommu_init() when AMD IOMMU is disabled (Jerry Snitselaar) [1955767] - iommu/amd: Move Stoney Ridge check to detect_ivrs() (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix status code for Allocate/Free PASID command (Jerry Snitselaar) [1955767] - iommu: Don't use lazy flush for untrusted device (Jerry Snitselaar) [1955767] - iommu/amd: Fix sleeping in atomic in increase_address_space() (Jerry Snitselaar) [1955767] - iommu: Delete iommu_dev_has_feature() (Jerry Snitselaar) [1955767] - iommu: Delete iommu_domain_window_disable() (Jerry Snitselaar) [1955767] - iommu: Stop exporting iommu_map_sg_atomic() (Jerry Snitselaar) [1955767] - iova: Stop exporting some more functions (Jerry Snitselaar) [1955767] - iova: Delete copy_reserved_iova() (Jerry Snitselaar) [1955767] - iova: Make has_iova_flush_queue() private (Jerry Snitselaar) [1955767] - iommu/vt-d: Add iotlb_sync_map callback (Jerry Snitselaar) [1955767] - iommu/vt-d: Move capability check code to cap_audit files (Jerry Snitselaar) [1921289] - iommu/vt-d: Audit IOMMU Capabilities and add helper functions (Jerry Snitselaar) [1921289] - iommu/vt-d: Fix 'physical' typos (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix compile error [-Werror=implicit-function-declaration] (Jerry Snitselaar) [1955767] - iommu/vt-d: Use INVALID response code instead of FAILURE (Jerry Snitselaar) [1920726] - iommu/vt-d: Clear PRQ overflow only when PRQ is empty (Jerry Snitselaar) [1955767] - iommu/vt-d: Preset Access/Dirty bits for IOVA over FL (Jerry Snitselaar) [1955767] - iommu/vt-d: Add qi_submit trace event (Jerry Snitselaar) [1955767] - iommu/vt-d: Consolidate duplicate cache invaliation code (Jerry Snitselaar) [1955767] - iommu/amd: Adopt IO page table framework for AMD IOMMU v1 page table (Jerry Snitselaar) [1955767] - iommu/amd: Introduce iommu_v1_map_page and iommu_v1_unmap_page (Jerry Snitselaar) [1955767] - iommu/amd: Introduce iommu_v1_iova_to_phys (Jerry Snitselaar) [1955767] - iommu/amd: Refactor fetch_pte to use struct amd_io_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Rename variables to be consistent with struct io_pgtable_ops (Jerry Snitselaar) [1955767] - iommu/amd: Remove amd_iommu_domain_get_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Restructure code for freeing page table (Jerry Snitselaar) [1955767] - iommu/amd: Move IO page table related functions (Jerry Snitselaar) [1955767] - iommu/amd: Declare functions as extern (Jerry Snitselaar) [1955767] - iommu/amd: Convert to using amd_io_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Move pt_root to struct amd_io_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Prepare for generic IO page table framework (Jerry Snitselaar) [1955767] - iommu/amd: Re-define amd_iommu_domain_encode_pgtable as inline (Jerry Snitselaar) [1955767] - iommu/amd: remove h from printk format specifier (Jerry Snitselaar) [1955767] - iommu/amd: Use DEFINE_SPINLOCK() for spinlock (Jerry Snitselaar) [1955767] - iommu/amd: Remove unnecessary assignment (Jerry Snitselaar) [1955767] - iommu: Properly pass gfp_t in _iommu_map() to avoid atomic sleeping (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm-v7s: Add cfg as a param in some macros (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm-v7s: Clarify LVL_SHIFT/BITS macro (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm-v7s: Use ias to check the valid iova in unmap (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Remove TLBI_ON_MAP quirk (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Allow io_pgtable_tlb ops optional (Jerry Snitselaar) [1955767] - iommu: Switch gather->end to the inclusive end (Jerry Snitselaar) [1955767] - iommu: Add iova and size as parameters in iotlb_sync_map (Jerry Snitselaar) [1955767] - iommu: Move iotlb_sync_map out from __iommu_map (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add support for VHE (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Make BTM optional for SVA (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Split arm_smmu_tlb_inv_range() (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Use DEFINE_RES_MEM() to simplify code (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Remove the page 1 fixup (Jerry Snitselaar) [1955767] - x86,swiotlb: Adjust SWIOTLB bounce buffer size for SEV guests (Jerry Snitselaar) [1955767] - iommu: Check dev->iommu in dev_iommu_priv_get() before dereferencing it (Jerry Snitselaar) [1955767] - iommu/vt-d: Do not use flush-queue when caching-mode is on (Jerry Snitselaar) [1955767] - iommu/vt-d: Correctly check addr alignment in qi_flush_dev_iotlb_pasid() (Jerry Snitselaar) [1955767] - iommu/amd: Use IVHD EFR for early initialization of IOMMU features (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix unaligned addresses for intel_flush_svm_range_dev() (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix ineffective devTLB invalidation for subdevices (Jerry Snitselaar) [1920750 1920749] - iommu/vt-d: Fix general protection fault in aux_detach_device() (Jerry Snitselaar) [1920748] - iommu/vt-d: Move intel_iommu info from struct intel_svm to struct intel_svm_dev (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix lockdep splat in sva bind()/unbind() (Jerry Snitselaar) [1955767] - Revert "iommu: Add quirk for Intel graphic devices in map_sg" (Jerry Snitselaar) [1955767] - iommu/intel: Fix memleak in intel_irq_remapping_alloc (Jerry Snitselaar) [1955767] - iommu/iova: fix 'domain' typos (Jerry Snitselaar) [1955767] - dma-iommu: remove __iommu_dma_mmap (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Remove tlb_flush_leaf (Jerry Snitselaar) [1955767] - iommu/vt-d: Avoid GFP_ATOMIC where it is not needed (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove set but not used variable (Jerry Snitselaar) [1955767] - iommu/vt-d: Cleanup after converting to dma-iommu ops (Jerry Snitselaar) [1955767] - iommu/vt-d: Convert intel iommu driver to the iommu ops (Jerry Snitselaar) [1955767] - iommu/vt-d: Don't clear GFP_DMA and GFP_DMA32 flags (Jerry Snitselaar) [1955767] - iommu/vt-d: Update domain geometry in iommu_ops.at(de)tach_dev (Jerry Snitselaar) [1955767] - iommu: Add quirk for Intel graphic devices in map_sg (Jerry Snitselaar) [1955767] - swiotlb: remove the tbl_dma_addr argument to swiotlb_tbl_map_single (Jerry Snitselaar) [1955767] - swiotlb-xen: remove start_dma_addr (Jerry Snitselaar) [1955767] - iommu: Allow the dma-iommu api to use bounce buffers (Jerry Snitselaar) [1955767] - iommu: Add iommu_dma_free_cpu_cached_iovas() (Jerry Snitselaar) [1955767] - iommu: Handle freelists when using deferred flushing in iommu drivers (Jerry Snitselaar) [1955767] - iommu/sva: Add PASID helpers (Jerry Snitselaar) [1955767] - iommu/ioasid: Add ioasid references (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Remove unused 'level' parameter from iopte_type() macro (Jerry Snitselaar) [1955767] - iommu: Defer the early return in arm_(v7s/lpae)_map (Jerry Snitselaar) [1955767] - iommu: Improve the performance for direct_mapping (Jerry Snitselaar) [1955767] - iommu: return error code when it can't get group (Jerry Snitselaar) [1955767] - iommu: Modify the description of iommu_sva_unbind_device (Jerry Snitselaar) [1955767] - iommu: Stop exporting free_iova_mem() (Jerry Snitselaar) [1955767] - iommu: Stop exporting alloc_iova_mem() (Jerry Snitselaar) [1955767] - iommu: Delete split_and_remove_iova() (Jerry Snitselaar) [1955767] - iommu: avoid taking iova_rbtree_lock twice (Jerry Snitselaar) [1955767] - iommu/iova: Free global iova rcache on iova alloc failure (Jerry Snitselaar) [1955767] - iommu/iova: Retry from last rb tree node if iova search fails (Jerry Snitselaar) [1955767] - iommu: Fix htmldocs warnings in sysfs-kernel-iommu_groups (Jerry Snitselaar) [1955767] - iommu: Document usage of "/sys/kernel/iommu_groups//type" file (Jerry Snitselaar) [1838589] - iommu: Take lock before reading iommu group default domain type (Jerry Snitselaar) [1838589] - iommu: Add support to change default domain of an iommu group (Jerry Snitselaar) [1838589] - iommu: Move def_domain type check for untrusted device into core (Jerry Snitselaar) [1838589] - iommu/arm-smmu-v3: Hook up ATC invalidation to mm ops (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Implement iommu_sva_bind/unbind() (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Move non-strict mode to use io_pgtable_domain_attr (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Add support for pagetable config domain attribute (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Assign boolean values to a bool variable (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Add support to use system cache (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Add a domain attribute for pagetable configuration (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Support coherency for Mali LPAE (Jerry Snitselaar) [1955767] - dma-mapping: document dma_{alloc,free}_pages (Jerry Snitselaar) [1955767] - dma-direct: simplify the DMA_ATTR_NO_KERNEL_MAPPING handling (Jerry Snitselaar) [1955767] - dma-direct: factor out a dma_direct_alloc_from_pool helper (Jerry Snitselaar) [1955767] - dma-direct check for highmem pages in dma_direct_alloc_pages (Jerry Snitselaar) [1955767] - firewire-ohci: use dma_alloc_pages (Jerry Snitselaar) [1955767] - dma-iommu: implement ->alloc_noncoherent (Jerry Snitselaar) [1955767] - dma-mapping: add new {alloc,free}_noncoherent dma_map_ops methods (Jerry Snitselaar) [1955767] - dma-mapping: add a new dma_alloc_pages API (Jerry Snitselaar) [1955767] - dma-mapping: add a new dma_alloc_noncoherent API (Jerry Snitselaar) [1955767] - drm/nouveau/gk20a: stop setting DMA_ATTR_NON_CONSISTENT (Jerry Snitselaar) [1955767] - mm: turn alloc_pages into an inline function (Jerry Snitselaar) [1955767] - dma-mapping: better document dma_addr_t and DMA_MAPPING_ERROR (Jerry Snitselaar) [1955767] - dma-mapping: move valid_dma_direction to dma-direction.h (Jerry Snitselaar) [1955767] - dma-debug: convert comma to semicolon (Jerry Snitselaar) [1955767] - dma-direct: Fix potential NULL pointer dereference (Jerry Snitselaar) [1955767] - dma-mapping: move the dma_declare_coherent_memory documentation (Jerry Snitselaar) [1955767] - dma-mapping: move dma_common_{mmap,get_sgtable} out of mapping.c (Jerry Snitselaar) [1955767] - dma-mapping: make support for dma ops optional (Jerry Snitselaar) [1955767] - dma-direct: rename and cleanup __phys_to_dma (Jerry Snitselaar) [1955767] - dma-direct: remove __dma_to_phys (Jerry Snitselaar) [1955767] - dma-direct: use phys_to_dma_direct in dma_direct_alloc (Jerry Snitselaar) [1955767] - dma-direct: lift gfp_t manipulation out of__dma_direct_alloc_pages (Jerry Snitselaar) [1955767] - dma-direct: remove dma_direct_{alloc,free}_pages (Jerry Snitselaar) [1955767] - dma-debug: remove most exports (Jerry Snitselaar) [1955767] - dma-mapping: remove the dma_dummy_ops export (Jerry Snitselaar) [1955767] - dma-mapping: set default segment_boundary_mask to ULONG_MAX (Jerry Snitselaar) [1955767] - dma-mapping: introduce dma_get_seg_boundary_nr_pages() (Jerry Snitselaar) [1955767] - swiotlb: using SIZE_MAX needs limits.h included (Jerry Snitselaar) [1955767] - swiotlb: fix "x86: Don't panic if can not alloc buffer for swiotlb" (Jerry Snitselaar) [1955767] - swiotlb: Mark max_segment with static keyword (Jerry Snitselaar) [1955767] - swiotlb: Declare swiotlb_late_init_with_default_size() in header (Jerry Snitselaar) [1955767] - swiotlb: Use pa to print phys_addr_t variables (Jerry Snitselaar) [1955767] - dma-debug: remove debug_dma_assert_idle() function (Jerry Snitselaar) [1955767] - dma-mapping: move debug configuration options to kernel/dma (Jerry Snitselaar) [1955767] - dma-debug: fix debug_dma_assert_idle(), use rcu_read_lock() (Jerry Snitselaar) [1955767] - iommu: Check return of __iommu_attach_device() (Jerry Snitselaar) [1955767] - iommu/amd: Enforce 4k mapping for certain IOMMU data structures (Jerry Snitselaar) [1955767] - iommu: Fix a check in iommu_check_bind_data() (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix a bug for PDP check in prq_event_thread (Jerry Snitselaar) [1955767] - iommu/vt-d: Check UAPI data processed by IOMMU core (Jerry Snitselaar) [1955767] - iommu/uapi: Handle data and argsz filled by users (Jerry Snitselaar) [1955767] - iommu/uapi: Rename uapi functions (Jerry Snitselaar) [1955767] - iommu/uapi: Use named union for user data (Jerry Snitselaar) [1955767] - iommu/uapi: Add argsz for user filled data (Jerry Snitselaar) [1955767] - docs: IOMMU user API (Jerry Snitselaar) [1955767] - iommu/dma: Handle init_iova_flush_queue() failure in dma-iommu path (Jerry Snitselaar) [1955767] - iommu/iova: Replace cmpxchg with xchg in queue_iova (Jerry Snitselaar) [1955767] - iommu/dma: Remove broken huge page handling (Jerry Snitselaar) [1955767] - iommu: Rename iommu_tlb_* functions to iommu_iotlb_* (Jerry Snitselaar) [1955767] - iommu/vt-d: Use device numa domain if RHSA is missing (Jerry Snitselaar) [1955767] - iommu/vt-d: Drop kerneldoc marker from regular comment (Jerry Snitselaar) [1955767] - iommu/amd: Re-purpose Exclusion range registers to support SNP CWWB (Jerry Snitselaar) [1955767] - iommu/amd: Add support for RMP_PAGE_FAULT and RMP_HW_ERR (Jerry Snitselaar) [1955767] - iommu/amd: Use 4K page for completion wait write-back semaphore (Jerry Snitselaar) [1955767] - iommu/amd: Add missing function prototypes to fix -Wmissing-prototypes (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add SVA device feature (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Check for SVA features (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Seize private ASID (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Share process page tables (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Move definitions to a header (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Move some definitions to a header (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Ensure queue is read after updating prod pointer (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Constify some helpers (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Prepare for the adreno-smmu implementation (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Add support for split pagetables (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Pass io-pgtable config to implementation specific function (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Fix endianness annotations (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: permit users to disable msi polling (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: replace module_param_named by module_param for disable_bypass (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: replace symbolic permissions by octal permissions for module parameter (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Fix l1 stream table size in the error message (Jerry Snitselaar) [1955767] - ACPI: Do not create new NUMA domains from ACPI static tables that are not SRAT (Jerry Snitselaar) [1955767] - iommu/amd: Prevent NULL pointer dereference (Jerry Snitselaar) [1955767] - treewide: Use fallthrough pseudo-keyword (Jerry Snitselaar) [1955767] - virtio-iommu: convert to LE accessors (Jerry Snitselaar) [1955767] - virtio_iommu: correct tags for config space fields (Jerry Snitselaar) [1955767] - mmap locking API: use coccinelle to convert mmap_sem rwsem call sites (Jerry Snitselaar) [1955767] - iommu/iova: Unify format of the printed messages (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Move Arm SMMU drivers into their own subdirectory (Jerry Snitselaar) [1955767] - iommu/arm-smmu: move TLB timeout and spin count macros (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Call configuration impl hook before consuming features (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Manage ASIDs with xarray (Jerry Snitselaar) [1955767] - redhat/configs: Add CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Break insecure users by disabling bypass by default (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Workaround for Marvell Armada-AP806 SoC erratum #582743 (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Allow client devices to select direct mapping (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Add global/context fault implementation hooks (Jerry Snitselaar) [1955767] - iommu/arm-smmu: add NVIDIA implementation for ARM MMU-500 usage (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Fix trivial typo (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Update impl quirks comment (Jerry Snitselaar) [1955767] - iommu: arm-smmu-impl: Convert to a generic reset implementation (Jerry Snitselaar) [1955767] - iommu: arm-smmu-impl: Add sdm845 implementation hook (Jerry Snitselaar) [1955767] - firmware/qcom_scm: Add scm call to handle smmu errata (Jerry Snitselaar) [1955767] - firmware: qcom_scm-64: Add atomic version of qcom_scm_call (Jerry Snitselaar) [1955767] - firmware: qcom: scm: Ensure 'a0' status code is treated as signed (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Batch context descriptor invalidation (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Write level-1 descriptors atomically (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add support for PCI PASID (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add second level of context descriptor table (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Prepare for handling arm_smmu_write_ctx_desc() failure (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Propagate ssid_bits (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add support for Substream IDs (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add context descriptor tables allocators (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Prepare arm_smmu_s1_cfg for SSID support (Jerry Snitselaar) [1955767] - dt-bindings: document PASID property for IOMMU masters (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Don't display an error when IRQ lines are missing (Jerry Snitselaar) [1955767] - selftests: net: add UDP GRO forwarding self-tests (Paolo Abeni) [1948493] - bareudp: allow UDP L4 GRO passthrou (Paolo Abeni) [1948493] - geneve: allow UDP L4 GRO passthrou (Paolo Abeni) [1948493] - vxlan: allow L4 GRO passthrough (Paolo Abeni) [1948493] - udp: never accept GSO_FRAGLIST packets (Paolo Abeni) [1948493] - udp: properly complete L4 GRO over UDP tunnel packet (Paolo Abeni) [1948493] - udp: skip L4 aggregation for UDP tunnel packets (Paolo Abeni) [1948493] - udp: fixup csum for GSO receive slow path (Paolo Abeni) [1948493] - udp: allow forwarding of plain (non-fraglisted) UDP GRO packets (Paolo Abeni) [1948493] - net: introduce a netdev feature for UDP GRO forwarding (Paolo Abeni) [1948493] - [s390] s390/pkey: support CCA and EP11 secure ECC private keys (Claudio Imbrenda) [1780669] - [s390] s390/zcrypt: Support for CCA APKA master keys (Claudio Imbrenda) [1780669] - [s390] s390/zcrypt: remove set_fs() invocation in zcrypt device driver (Claudio Imbrenda) [1780669] - [s390] s390/zcrypt: simplify cca_findcard2 loop code (Claudio Imbrenda) [1780669] - cxgb4: Add new T6 PCI device id 0x6092 (Rahul Lakkireddy) [1950186] - KVM: VMX: Don't use vcpu->run->internal.ndata as an array index (Jon Maloy) [1954219] {CVE-2021-3501} - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_with_rssi_evt() (Gopal Tiwari) [1978598] - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_evt() (Gopal Tiwari) [1978598] - Bluetooth: Fix slab-out-of-bounds read in hci_extended_inquiry_result_evt() (Gopal Tiwari) [1978598] - x86/cpu: Avoid cpuinfo-induced IPIing of idle CPUs (Waiman Long) [1970499] - x86/cpu: Avoid cpuinfo-induced IPI pileups (Waiman Long) [1970499] - x86/cpu: Disable frequency requests via aperfmperf IPI for nohz_full CPUs (Waiman Long) [1970499] - x86: Convert some slow-path static_cpu_has() callers to boot_cpu_has() (Waiman Long) [1970499] - x86/ldt: Enable LDT user-mapping for PAE (Waiman Long) [1970499] - fanotify: fix merging marks masks with FAN_ONDIR (Miklos Szeredi) [1832099] - sfc: avoid duplicated code in ef10_sriov (Íñigo Huguet) [1931779] - sfc: explain that "attached" VFs only refer to Xen (Íñigo Huguet) [1931779] - sfc: error code if SRIOV cannot be disabled (Íñigo Huguet) [1931779] - sfc: avoid double pci_remove of VFs (Íñigo Huguet) [1931779] - tpm: fix error return code in tpm2_get_cc_attrs_tbl() (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Reserve locality in tpm_tis_resume() (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Extend locality handling to TPM2 in tpm_tis_gen_interrupt() (Jerry Snitselaar) [1920812] - tpm: vtpm_proxy: Avoid reading host log when using a virtual device (Jerry Snitselaar) [1920812] - tpm: acpi: Check eventlog signature before using it (Jerry Snitselaar) [1920812] - tpm: efi: Use local variable for calculating final log size (Jerry Snitselaar) [1920812] - tpm: Remove unintentional dump_stack() call (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Decorate tpm_tis_gen_interrupt() with request_locality() (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Decorate tpm_get_timeouts() with request_locality() (Jerry Snitselaar) [1920812] - KEYS: trusted: Reserve TPM for seal and unseal operations (Jerry Snitselaar) [1920812] - tpm/ppi: Constify static struct attribute_group (Jerry Snitselaar) [1920812] - tpm: add sysfs exports for all banks of PCR registers (Jerry Snitselaar) [1920812] - tpm: Remove tpm_dev_wq_lock (Jerry Snitselaar) [1920812] - tpm: Fix fall-through warnings for Clang (Jerry Snitselaar) [1920812] - tpm_tis: Clean up locality release (Jerry Snitselaar) [1920812] - tpm_tis: Disable interrupts on ThinkPad T490s (Jerry Snitselaar) [1920812] - tpm_tis: Fix check_locality for correct locality acquisition (Jerry Snitselaar) [1920812] - fuse: invalidate attrs when page writeback completes (Vivek Goyal) [1966424] - net/sched: act_ct: remove rh_mark_used_feature mark (Marcelo Ricardo Leitner) [1973381] - selftests: netfilter: Pass family parameter "-f" to conntrack tool (Hangbin Liu) [1979203] - selftests: netfilter: remove unused cnt and simplify command testing (Hangbin Liu) [1979203] - selftests: netfilter: fix nft_meta.sh error reporting (Hangbin Liu) [1979203] - selftests: netfilter: add cpu counter check (Hangbin Liu) [1979203] - selftests: netfilter: add meta iif/oif match test (Hangbin Liu) [1979203] - NFS: Only change the cookie verifier if the directory page cache is empty (Benjamin Coddington) [1982825] - NFS: Fix handling of cookie verifier in uncached_readdir() (Benjamin Coddington) [1982825] - nfs: Subsequent READDIR calls should carry non-zero cookieverifier (Benjamin Coddington) [1982825] - Revert "[netdrv] net/mlx5e: Rx, Update page pool numa node when changed" (Alaa Hleihel) [1915308] - mlx5: net: zero-initialize tc skb extension on allocation (Alaa Hleihel) [1915308 1965418] - RDMA/mlx5: Don't add slave port to unaffiliated list (Alaa Hleihel) [1915308] - net/mlx5: Reset mkey index on creation (Alaa Hleihel) [1915308] - net/mlx5e: Don't create devices during unload flow (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix STEv1 incorrect L3 decapsulation padding (Alaa Hleihel) [1915308] - net/mlx5: SF_DEV, remove SF device on invalid state (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Allow setting GUID for host PF vport (Alaa Hleihel) [1915308 1967488] - net/mlx5: E-Switch, Read PF mac address (Alaa Hleihel) [1915308 1967488] - net/mlx5: Check that driver was probed prior attaching the device (Alaa Hleihel) [1915308] - net/mlx5: Fix error path for set HCA defaults (Alaa Hleihel) [1915308] - net/mlx5e: Disable TLS device offload in kdump mode (Alaa Hleihel) [1915308 1946647] - net/mlx5e: Disable TX MPWQE in kdump mode (Alaa Hleihel) [1915308 1946647] - net/mlx5e: kTLS, Add resiliency to RX resync failures (Alaa Hleihel) [1915308] - net/mlx5e: TX, Inline function mlx5e_tls_handle_tx_wqe() (Alaa Hleihel) [1915308] - net/mlx5e: TX, Inline TLS skb check (Alaa Hleihel) [1915308] - net/mlx5e: Cleanup unused function parameter (Alaa Hleihel) [1915308] - net/mlx5e: Remove non-essential TLS SQ state bit (Alaa Hleihel) [1915308] - net/mlx5e: Restrict usage of mlx5e_priv in params logic functions (Alaa Hleihel) [1915308] - net/mlx5e: Fix lost changes during code movements (Alaa Hleihel) [1915308] - net/mlx5e: Move params logic into its dedicated file (Alaa Hleihel) [1915308] - net/mlx5e: Pass q_counter indentifier as parameter to rq_param builders (Alaa Hleihel) [1915308] - net/mlx5e: Block offload of outer header csum for GRE tunnel (Alaa Hleihel) [1915308] - net/mlx5e: Block offload of outer header csum for UDP tunnels (Alaa Hleihel) [1915308] - Revert "net/mlx5: Arm only EQs with EQEs" (Alaa Hleihel) [1915308] - net/mlx5e: Verify dev is present in get devlink port ndo (Alaa Hleihel) [1915308] - net/mlx5: DR, Don't use SW steering when RoCE is not supported (Alaa Hleihel) [1915308] - net/mlx5: Consider RoCE cap before init RDMA resources (Alaa Hleihel) [1915308] - net/mlx5e: Fix page reclaim for dead peer hairpin (Alaa Hleihel) [1915308] - net/mlx5e: Remove dependency in IPsec initialization flows (Alaa Hleihel) [1915308] - net/mlx5e: Fix use-after-free of encap entry in neigh update handler (Alaa Hleihel) [1915308] - IB/mlx5: Fix initializing CQ fragments buffer (Alaa Hleihel) [1915308 1974263] - RDMA/mlx5: Block FDB rules when not in switchdev mode (Alaa Hleihel) [1915308] - RDMA/mlx5: Use different doorbell memory for different processes (Alaa Hleihel) [1915308] - net/mlx5: Fix duplicate included vhca_event.h (Alaa Hleihel) [1915308] - net/mlx5: Fix lag port remapping logic (Alaa Hleihel) [1915308] - net/mlx5e: IPsec/rep_tc: Fix rep_tc_update_skb drops IPsec packet (Alaa Hleihel) [1915308] - net/mlx5: DR, Create multi-destination flow table with level less than 64 (Alaa Hleihel) [1915308] - net/mlx5e: Fix adding encap rules to slow path (Alaa Hleihel) [1915308] - net/mlx5e: Check for needed capability for cvlan matching (Alaa Hleihel) [1915308] - net/mlx5: Check firmware sync reset requested is set before trying to abort it (Alaa Hleihel) [1915308] - net/mlx5e: Disable TLS offload for uplink representor (Alaa Hleihel) [1915308] - net/mlx5e: Fix incompatible casting (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix query DCT via DEVX (Alaa Hleihel) [1915308] - RDMA/mlx5: Recover from fatal event in dual port mode (Alaa Hleihel) [1915308] - net/mlx5: Set term table as an unmanaged flow table (Alaa Hleihel) [1915308] - net/mlx5e: Fix error path of updating netdev queues (Alaa Hleihel) [1915308] - net/mlx5e: Reject mirroring on source port change encap rules (Alaa Hleihel) [1915308] - net/mlx5e: Fix multipath lag activation (Alaa Hleihel) [1915308] - net/mlx5e: reset XPS on error flow if netdev isn't registered yet (Alaa Hleihel) [1915308] - net/mlx5e: Make sure fib dev exists in fib event (Alaa Hleihel) [1915308] - net/mlx5e: Fix null deref accessing lag dev (Alaa Hleihel) [1915308] - net/mlx5e: Fix nullptr in mlx5e_tc_add_fdb_flow() (Alaa Hleihel) [1915308] - net/mlx5: SF, Fix show state inactive when its inactivated (Alaa Hleihel) [1915308] - net/mlx5: Set reformat action when needed for termination rules (Alaa Hleihel) [1915308] - net/mlx5e: Fix nullptr in add_vlan_push_action() (Alaa Hleihel) [1915308] - {net, RDMA}/mlx5: Fix override of log_max_qp by other device (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix SQ/RQ in doorbell bitmask (Alaa Hleihel) [1915308] - net/mlx5: Fix bit-wise and with zero (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix drop packet rule in egress table (Alaa Hleihel) [1915308] - net/mlx5: Fix spelling mistakes in mlx5_core_info message (Alaa Hleihel) [1915308] - net/mlx5: DR, Fixed typo in STE v0 (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix mlx5 rates to IB rates map (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix query RoCE port (Alaa Hleihel) [1915308] - RDMA/mlx5: Zero out ODP related items in the mlx5_ib_mr (Alaa Hleihel) [1915308] - net/mlx5e: Alloc flow spec using kvzalloc instead of kzalloc (Alaa Hleihel) [1915308] - net/mlx5: Avoid unnecessary operation (Alaa Hleihel) [1915308] - net/mlx5e: rep: Improve reg_cX conditions (Alaa Hleihel) [1915308] - net/mlx5: SF, Fix return type (Alaa Hleihel) [1915308] - net/mlx5e: mlx5_tc_ct_init does not fail (Alaa Hleihel) [1915308] - net/mlx5: Fix indir stable stubs (Alaa Hleihel) [1915308] - net/mlx5e: Add missing include (Alaa Hleihel) [1915308] - net/mlx5e: fix mlx5e_tc_tun_update_header_ipv6 dummy definition (Alaa Hleihel) [1915308] - net/mlx5e: CT, Avoid false lock dependency warning (Alaa Hleihel) [1915308] - net/mlx5: Check returned value from health recover sequence (Alaa Hleihel) [1915308] - net/mlx5: Don't rely on interface state bit (Alaa Hleihel) [1915308] - net/mlx5: Remove second FW tracer check (Alaa Hleihel) [1915308] - net/mlx5: Separate probe vs. reload flows (Alaa Hleihel) [1915308] - net/mlx5: Remove impossible checks of interface state (Alaa Hleihel) [1915308] - net/mlx5: Don't skip vport check (Alaa Hleihel) [1915308] - net/mlx5e: Register nic devlink port for SF ports (Alaa Hleihel) [1915308] - vdpa/mlx5: Retrieve BAR address suitable any function (Alaa Hleihel) [1915308] - vdpa/mlx5: Use the correct dma device when registering memory (Alaa Hleihel) [1915308] - net/mlx5: SF, Extend SF table for additional SF id range (Alaa Hleihel) [1915308] - net/mlx5: SF, Split mlx5_sf_hw_table into two parts (Alaa Hleihel) [1915308] - net/mlx5: SF, Use helpers for allocation and free (Alaa Hleihel) [1915308] - net/mlx5: SF, Consider own vhca events of SF devices (Alaa Hleihel) [1915308] - net/mlx5: SF, Store and use start function id (Alaa Hleihel) [1915308] - net/mlx5: SF, Rely on hw table for SF devlink port allocation (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Consider SF ports of host PF (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Use xarray for vport number to vport and rep mapping (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Prepare to return total vports from eswitch struct (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Return eswitch max ports when eswitch is supported (Alaa Hleihel) [1915308] - net/mlx5: SF, Reuse stored hardware function id (Alaa Hleihel) [1915308] - net/mlx5: SF, Use device pointer directly (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Initialize eswitch acls ns when eswitch is enabled (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Move legacy code to a individual file (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Convert a macro to a helper routine (Alaa Hleihel) [1915308] - net/mlx5: E-Switch Make cleanup sequence mirror of init (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Make vport number u16 (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Skip querying SF enabled bits (Alaa Hleihel) [1915308] - IB/mlx5: Set right RoCE l3 type and roce version while deleting GID (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, move QoS specific fields to existing qos struct (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, cut down mlx5_vport_info structure size by 8 bytes (Alaa Hleihel) [1915308] - net/mlx5: Pair mutex_destory with mutex_init for rate limit table (Alaa Hleihel) [1915308] - net/mlx5: Allocate rate limit table when rate is configured (Alaa Hleihel) [1915308] - net/mlx5: Use helper to increment, decrement rate entry refcount (Alaa Hleihel) [1915308] - net/mlx5: Use helpers to allocate and free rl table entries (Alaa Hleihel) [1915308] - net/mlx5: Do not hold mutex while reading table constants (Alaa Hleihel) [1915308] - net/mlx5: Pack mlx5_rl_entry structure (Alaa Hleihel) [1915308] - net/mlx5: Use unsigned int for free_count (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, move QoS specific fields to existing qos struct (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, cut down mlx5_vport_info structure size by 8 bytes (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, let user to enable disable metadata (Alaa Hleihel) [1915308] - net/mlx5e: TC, Add support to offload sample action (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Handle sampled packets (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Refactor tc update skb function (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Add sampler restore handle API (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Add sampler object API (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Add sampler termination table API (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Parse sample action (Alaa Hleihel) [1915308 1919649] - net/mlx5: Instantiate separate mapping objects for FDB and NIC tables (Alaa Hleihel) [1915308 1919649] - net/mlx5: Map register values to restore objects (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Set per vport table default group number (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Generalize per vport table API (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Rename functions to follow naming convention. (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Move vport table functions to a new file (Alaa Hleihel) [1915308 1919649] - net/mlx5: CT: Add support for mirroring (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Protect changing mode while adding rules (Alaa Hleihel) [1915308 1790457] - net/mlx5: E-Switch, Change mode lock from mutex to rw semaphore (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Do not reload ethernet ports when changing eswitch mode (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Unregister eth-reps devices first (Alaa Hleihel) [1915308 1790457] - net/mlx5: Move mlx5e hw resources into a sub object (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Register nic devlink port with switch id (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Verify dev is present in some ndos (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Use nic mode netdev ndos and ethtool ops for uplink representor (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Add offload stats ndos to nic netdev ops (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Distinguish nic and esw offload in tc setup block cb (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Allow legacy vf ndos only if in legacy mode (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Same max num channels for both nic and uplink profiles (Alaa Hleihel) [1915308 1790457] - net/mlx5e: fix ingress_ifindex check in mlx5e_flower_parse_meta (Alaa Hleihel) [1915308] - net/mlx5e: Fix setting of RS FEC mode (Alaa Hleihel) [1915308] - net/mlx5: Fix setting of devlink traps in switchdev mode (Alaa Hleihel) [1915308] - net/mlx5: DR, Add missing vhca_id consume from STEv1 (Alaa Hleihel) [1915308] - net/mlx5: fix kfree mismatch in indir_table.c (Alaa Hleihel) [1915308] - net/mlx5: Fix PBMC register mapping (Alaa Hleihel) [1915308] - net/mlx5: Fix PPLM register mapping (Alaa Hleihel) [1915308] - net/mlx5: Fix placement of log_max_flow_counter (Alaa Hleihel) [1915308] - net/mlx5: Fix HW spec violation configuring uplink (Alaa Hleihel) [1915308] - net/mlx5e: Guarantee room for XSK wakeup NOP on async ICOSQ (Alaa Hleihel) [1915308] - net/mlx5e: Consider geneve_opts for encap contexts (Alaa Hleihel) [1915308] - net/mlx5: Don't request more than supported EQs (Alaa Hleihel) [1915308] - net/mlx5e: kTLS, Fix RX counters atomicity (Alaa Hleihel) [1915308] - net/mlx5e: kTLS, Fix TX counters atomicity (Alaa Hleihel) [1915308] - net/mlx5: E-switch, Create vport miss group only if src rewrite is supported (Alaa Hleihel) [1915308 1915310] - net/mlx5e: Fix ethtool indication of connector type (Alaa Hleihel) [1915308] - net/mlx5: Delete auxiliary bus driver eth-rep first (Alaa Hleihel) [1915308] - net/mlx5e: Fix mapping of ct_label zero (Alaa Hleihel) [1915308] - net/mlx5: SF, do not use ecpu bit for vhca state processing (Alaa Hleihel) [1915308] - net/mlx5e: Fix division by 0 in mlx5e_select_queue (Alaa Hleihel) [1915308] - net/mlx5e: Fix error path for ethtool set-priv-flag (Alaa Hleihel) [1915308] - net/mlx5e: Offload tuple rewrite for non-CT flows (Alaa Hleihel) [1915308] - net/mlx5e: Allow to match on MPLS parameters only for MPLS over UDP (Alaa Hleihel) [1915308] - net/mlx5: Add back multicast stats for uplink representor (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix typo in destroy_mkey inbox (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix potential shift wrapping of 32-bit value in STEv1 getter (Alaa Hleihel) [1915308] - net/mlx5: SF: Fix error flow of SFs allocation flow (Alaa Hleihel) [1915308] - net/mlx5: SF: Fix memory leak of work item (Alaa Hleihel) [1915308] - net/mlx5: SF, Correct vhca context size (Alaa Hleihel) [1915308] - net/mlx5e: E-switch, Fix rate calculation division (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix timestamp default mode (Alaa Hleihel) [1915308] - net/mlx5: Set QP timestamp mode to default (Alaa Hleihel) [1915308] - net/mlx5e: Fix error flow in change profile (Alaa Hleihel) [1915308] - net/mlx5: Disable VF tunnel TX offload if ignore_flow_level isn't supported (Alaa Hleihel) [1915308 1915310] - net/mlx5e: Check correct ip_version in decapsulation route resolution (Alaa Hleihel) [1915308] - net/mlx5: Fix turn-off PPS command (Alaa Hleihel) [1915308] - net/mlx5e: Don't match on Geneve options in case option masks are all zero (Alaa Hleihel) [1915308] - net/mlx5e: Revert parameters on errors when changing PTP state without reset (Alaa Hleihel) [1915308] - net/mlx5e: When changing XDP program without reset, take refs for XSK RQs (Alaa Hleihel) [1915308] - net/mlx5e: Set PTP channel pointer explicitly to NULL (Alaa Hleihel) [1915308] - net/mlx5e: Accumulate port PTP TX stats with other channels stats (Alaa Hleihel) [1915308] - net/mlx5e: RX, Mind the MPWQE gaps when calculating offsets (Alaa Hleihel) [1915308] - net/mlx5e: Enforce minimum value check for ICOSQ size (Alaa Hleihel) [1915308] - RDMA/mlx5: Set correct kernel-doc identifier (Alaa Hleihel) [1915308] - IB/mlx5: Add missing error code (Alaa Hleihel) [1915308] - configs: Enable mlx5 subfunction device support (Alaa Hleihel) [1915308 1851717] - net/mlx5: Add cyc2time HW translation mode support (Alaa Hleihel) [1915308 1919657] - net/mlx5: Move some PPS logic into helper functions (Alaa Hleihel) [1915308 1919657] - net/mlx5: Move all internal timer metadata into a dedicated struct (Alaa Hleihel) [1915308 1919657] - net/mlx5: Refactor init clock function (Alaa Hleihel) [1915308 1919657] - net/mlx5: Add register layout to support real-time time-stamp (Alaa Hleihel) [1915308 1919657] - RDMA/mlx5: Fail QP creation if the device can not support the CQE TS (Alaa Hleihel) [1915308] - RDMA/mlx5: Allow CQ creation without attached EQs (Alaa Hleihel) [1915308] - net/mlx5: Add new timestamp mode bits (Alaa Hleihel) [1915308 1919657] - net/mlx5: Remove TLS dependencies on XPS (Alaa Hleihel) [1915308] - net/mlx5: SF, Fix error return code in mlx5_sf_dev_probe() (Alaa Hleihel) [1915308 1851717] - net/mlx5e: Fix error return code in mlx5e_tc_esw_init() (Alaa Hleihel) [1915308 1919647] - net/mlx5: Fix a NULL vs IS_ERR() check (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Fix tc_tun.h to verify MLX5_ESWITCH config (Alaa Hleihel) [1915308 1919647] - net/mlx5: Assign boolean values to a bool variable (Alaa Hleihel) [1915308] - net/mlx5e: Fix spelling mistake "Unknouwn" -> "Unknown" (Alaa Hleihel) [1915308] - net/mlx5e: Fix spelling mistake "channles" -> "channels" (Alaa Hleihel) [1915308] - net/mlx5: Delete device list leftover (Alaa Hleihel) [1915308] - net/mlx5_core: remove unused including (Alaa Hleihel) [1915308] - net/mlx5: fix spelling mistake in Kconfig "accelaration" -> "acceleration" (Alaa Hleihel) [1915308] - RDMA/mlx5: Support 400Gbps IB rate in mlx5 driver (Alaa Hleihel) [1915308] - RDMA/mlx5: Cleanup the synchronize_srcu() from the ODP flow (Alaa Hleihel) [1915308] - net/mlx5e: Handle FIB events to update tunnel endpoint device (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Rename some encap-specific API to generic names (Alaa Hleihel) [1915308 1919647] - net/mlx5e: TC preparation refactoring for routing update event (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Refactor neigh update infrastructure (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Create route entry infrastructure (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Extract tc tunnel encap/decap code to dedicated file (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Match recirculated packet miss in slow table using reg_c1 (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Refactor reg_c1 usage (Alaa Hleihel) [1915308 1919647] - net/mlx5e: VF tunnel RX traffic offloading (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Remove redundant match on tunnel destination mac (Alaa Hleihel) [1915308 1919647] - net/mlx5: E-Switch, Indirect table infrastructure (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Refactor tun routing helpers (Alaa Hleihel) [1915308 1919647] - net/mlx5e: VF tunnel TX traffic offloading (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5: E-Switch, Refactor rule offload forward action processing (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Always set attr mdev pointer (Alaa Hleihel) [1915308 1919647] - net/mlx5e: E-Switch, Maintain vhca_id to vport_num mapping (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5: E-Switch, Refactor setting source port (Alaa Hleihel) [1915308 1915310 1919647] - IB/mlx5: Use rdma_for_each_port for port iteration (Alaa Hleihel) [1915308] - RDMA/core: Introduce and use API to read port immutable data (Alaa Hleihel) [1915308] - IB/mlx5: Improve query port for representor port (Alaa Hleihel) [1915308] - IB/mlx5: Avoid calling query device for reading pkey table length (Alaa Hleihel) [1915308] - IB/mlx5: Move mlx5_port_caps from mlx5_core_dev to mlx5_ib_dev (Alaa Hleihel) [1915308] - IB/mlx5: Support default partition key for representor port (Alaa Hleihel) [1915308] - net/mlx5: DR, Avoid unnecessary csum recalculation on supporting devices (Alaa Hleihel) [1915308] - net/mlx5e: CT: remove useless conversion to PTR_ERR then ERR_PTR (Alaa Hleihel) [1915308] - net/mlx5e: accel, remove redundant space (Alaa Hleihel) [1915308] - net/mlx5e: kTLS, Improve TLS RX workqueue scope (Alaa Hleihel) [1915308] - net/mlx5e: remove h from printk format specifier (Alaa Hleihel) [1915308] - net/mlx5e: Increase indirection RQ table size to 256 (Alaa Hleihel) [1915308] - net/mlx5e: Enable napi in channel's activation stage (Alaa Hleihel) [1915308] - net/mlx5e: Move representor neigh init into profile enable (Alaa Hleihel) [1915308] - net/mlx5e: Avoid false lock depenency warning on tc_ht (Alaa Hleihel) [1915308] - net/mlx5e: Move set vxlan nic info to profile init (Alaa Hleihel) [1915308] - net/mlx5e: Move netif_carrier_off() out of mlx5e_priv_init() (Alaa Hleihel) [1915308] - net/mlx5e: Refactor mlx5e_netdev_init/cleanup to mlx5e_priv_init/cleanup (Alaa Hleihel) [1915308] - net/mxl5e: Add change profile method (Alaa Hleihel) [1915308] - net/mlx5e: Separate between netdev objects and mlx5e profiles initialization (Alaa Hleihel) [1915308] - net/mlx5: DR, Allow SW steering for sw_owner_v2 devices (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Copy all 64B whenever replacing STE in the head of miss-list (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Use HW specific logic API when writing STE (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Use the right size when writing partial STE into HW (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add STEv1 modify header logic (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add STEv1 action apply logic (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add STEv1 setters and getters (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Allow native protocol support for HW STEv1 (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add HW STEv1 match logic (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add match STEv1 structs to ifc (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Fix potential shift wrapping of 32-bit value (Alaa Hleihel) [1915308 1851712] - net/mlx5e: Enable traps according to link state (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add listener to DMAC filter trap event (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add listener to trap event (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add trap entity to ETH driver (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Expose RX dma info helpers (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add flow steering DMAC trap rule (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add flow steering VLAN trap rule (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Optimize promiscuous mode (Alaa Hleihel) [1915308 1919652] - net/mlx5: Notify on trap action by blocking event (Alaa Hleihel) [1915308 1919652] - net/mlx5: Rename events notifier header (Alaa Hleihel) [1915308 1919652] - net/mlx5: Register to devlink DMAC filter trap (Alaa Hleihel) [1915308 1919652] - net/mlx5: Register to devlink ingress VLAN filter trap (Alaa Hleihel) [1915308 1919652] - net/mlx5: Add support for devlink traps in mlx5 core driver (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Support HTB offload (Alaa Hleihel) [1915308] - net/mlx5: SF, Port function state change support (Alaa Hleihel) [1915308 1851717] - net/mlx5: SF, Add port add delete functionality (Alaa Hleihel) [1915308 1851717] - net/mlx5: E-switch, Add eswitch helpers for SF vport (Alaa Hleihel) [1915308 1915310 1851717] - net/mlx5: E-switch, Prepare eswitch to handle SF vport (Alaa Hleihel) [1915308 1915310 1851717] - net/mlx5: SF, Add auxiliary device driver (Alaa Hleihel) [1915308 1851717] - net/mlx5: SF, Add auxiliary device support (Alaa Hleihel) [1915308 1851717] - net/mlx5: Introduce vhca state event notifier (Alaa Hleihel) [1915308 1851717] - RDMA/hw/mlx5/qp: Demote non-conformant kernel-doc header (Alaa Hleihel) [1915308] - RDMA/hw/mlx5/odp: Fix formatting and add missing descriptions in 'pagefault_data_segments()' (Alaa Hleihel) [1915308] - IB/mlx5: Make function static (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Remove unnecessary config flag usage (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Inline feature_check fast-path function (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Avoid unreachable return (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Enclose csum logic under ipsec config (Alaa Hleihel) [1915308] - net/mlx5e: CT: Remove redundant usage of zone mask (Alaa Hleihel) [1915308] - net/mlx5e: Remove redundant initialization to null (Alaa Hleihel) [1915308] - net/mlx5e: CT: Pass null instead of zero spec (Alaa Hleihel) [1915308] - net/mlx5e: E-Switch, Offload all chain 0 priorities when modify header and forward action is not supported (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, use new cap as condition for mpls over udp (Alaa Hleihel) [1915308] - net/mlx5e: Simplify condition on esw_vport_enable_qos() (Alaa Hleihel) [1915308] - net/mlx5: Add HW definition of reg_c_preserve (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 modify header logic (Alaa Hleihel) [1915308] - net/mlx5: DR, Add STE modify header actions per-device API (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 action apply logic (Alaa Hleihel) [1915308] - net/mlx5: DR, Add STE tx/rx actions per-device API (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 setters and getters (Alaa Hleihel) [1915308] - net/mlx5: DR, Add STE setters and getters per-device API (Alaa Hleihel) [1915308] - net/mlx5: DR, Move action apply logic to dr_ste (Alaa Hleihel) [1915308] - net/mlx5: DR, Refactor ICMP STE builder (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 look up types from mlx5_ifc_dr header (Alaa Hleihel) [1915308] - net/mlx5: DR, Merge similar DR STE SET macros (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix STEv0 source_eswitch_owner_vhca_id support (Alaa Hleihel) [1915308] - net/mlx5: DR, Remove unused macro definition from dr_ste (Alaa Hleihel) [1915308] - net/mlx5: DR, Move HW STEv0 match logic to a separate file (Alaa Hleihel) [1915308] - net/mlx5: DR, Use the new HW specific STE infrastructure (Alaa Hleihel) [1915308] - net/mlx5: DR, Move macros from dr_ste.c to header (Alaa Hleihel) [1915308] - net/mlx5: DR, Add infrastructure for supporting several steering formats (Alaa Hleihel) [1915308] - ext4: handle read only external journal device (Lukas Czerner) [1860929] - vfio/pci: Handle concurrent vma faults (Alex Williamson) [1976551] - vfio-pci: Use io_remap_pfn_range() for PCI IO memory (Alex Williamson) [1976551] - net: flow_dissector: Parse PTP L2 packet header (Ivan Vecera) [1971687] - net: vlan: Add parse protocol header ops (Ivan Vecera) [1971687] - PCI: hv: Remove bus device removal unused refcount/functions (Mohammed Gamal) [1982482] - PCI: hv: Fix a race condition when removing the device (Mohammed Gamal) [1982482] - RDMA/cxgb4: check for ipv6 address properly while destroying listener (Raju Rangoju) [1961313] - RDMA/cxgb4: Fix adapter LE hash errors while destroying ipv6 listening server (Raju Rangoju) [1961313] - RDMA: Convert sysfs device * show functions to use sysfs_emit() (Raju Rangoju) [1961313] - RDMA/iw_cxgb4: Disable delayed ack by default (Raju Rangoju) [1961313] - [infiniband] treewide: Remove uninitialized_var() usage (Raju Rangoju) [1961313] - RDMA/iw_cxgb4: cleanup device debugfs entries on ULD remove (Raju Rangoju) [1961313] - vfs: allow unprivileged whiteout creation (Miklos Szeredi) [1983608] - Documentation: kdump: update kdump guide (Baoquan He) [1938067] - docs: admin-guide: add kdump documentation into it (Baoquan He) [1938067] - docs: kdump: convert docs to ReST and rename to *.rst (Baoquan He) [1938067]- Revert "be2net: disable bh with spin_lock in be_process_mcc" (Petr Oros) [1973504] - nvmet-rdma: Fix NULL deref when SEND is completed with error (Gopal Tiwari) [1959856] - netfilter: nft_exthdr: Search chunks in SCTP packets only (Phil Sutter) [1868228] - netfilter: nft_exthdr: Fix for unsafe packet data read (Phil Sutter) [1868228] - netfilter: nft_exthdr: Support SCTP chunks (Phil Sutter) [1868228] - xfs: fix deadlock retry tracepoint arguments (Bill O'Donnell) [1937116] - xfs: fix xfs_reflink_unshare usage of filemap_write_and_wait_range (Bill O'Donnell) [1937116] - xfs: fix return of uninitialized value in variable error (Bill O'Donnell) [1937116] - xfs: fix scrub and remount-ro protection when running scrub (Bill O'Donnell) [1937116] - xfs: fix xfs_trans slab cache name (Bill O'Donnell) [1937116] - xfs: Fix a typo (Bill O'Donnell) [1937116] - xfs: Rudimentary spelling fix (Bill O'Donnell) [1937116] - xfs: Rudimentary typo fixes (Bill O'Donnell) [1937116] - xfs: fix dquot scrub loop cancellation (Bill O'Donnell) [1937116] - xfs: fix uninitialized variables in xrep_calc_ag_resblks (Bill O'Donnell) [1937116] - xfs: fix incorrect root dquot corruption error when switching group/project quota types (Bill O'Donnell) [1937116] - xfs: fix up build warnings when quotas are disabled (Bill O'Donnell) [1937116] - xfs: fix chown leaking delalloc quota blocks when fssetxattr fails (Bill O'Donnell) [1937116] - xfs: Fix assert failure in xfs_setattr_size() (Bill O'Donnell) [1937116] - xfs: fix an ABBA deadlock in xfs_rename (Bill O'Donnell) [1937116 1966609] - xfs: fix the forward progress assertion in xfs_iwalk_run_callbacks (Bill O'Donnell) [1937116] - xfs: fix parent pointer scrubber bailing out on unallocated inodes (Bill O'Donnell) [1937116] - xfs: revert "xfs: fix rmap key and record comparison functions" (Bill O'Donnell) [1937116] - xfs: don't allow NOWAIT DIO across extent boundaries (Bill O'Donnell) [1937116] - xfs: return corresponding errcode if xfs_initialize_perag() fail (Bill O'Donnell) [1937116] - xfs: ensure inobt record walks always make forward progress (Bill O'Donnell) [1937116] - xfs: fix forkoff miscalculation related to XFS_LITINO(mp) (Bill O'Donnell) [1937116] - xfs: directory scrub should check the null bestfree entries too (Bill O'Donnell) [1937116] - xfs: strengthen rmap record flags checking (Bill O'Donnell) [1937116] - xfs: fix the minrecs logic when dealing with inode root child blocks (Bill O'Donnell) [1937116] - xfs: fix a missing unlock on error in xfs_fs_map_blocks (Bill O'Donnell) [1937116] - xfs: fix brainos in the refcount scrubber's rmap fragment processor (Bill O'Donnell) [1937116] - xfs: fix rmap key and record comparison functions (Bill O'Donnell) [1937116] - xfs: set the unwritten bit in rmap lookup flags in xchk_bmap_get_rmapextents (Bill O'Donnell) [1937116] - xfs: fix flags argument to rmap lookup when converting shared file rmaps (Bill O'Donnell) [1937116] - xfs: only flush the unshared range in xfs_reflink_unshare (Bill O'Donnell) [1937116] - xfs: fix scrub flagging rtinherit even if there is no rt device (Bill O'Donnell) [1937116] - xfs: fix missing CoW blocks writeback conversion retry (Bill O'Donnell) [1937116] - xfs: set xefi_discard when creating a deferred agfl free log intent item (Bill O'Donnell) [1937116] - xfs: cancel intents immediately if process_intents fails (Bill O'Donnell) [1937116] - xfs: fix fallocate functions when rtextsize is larger than 1 (Bill O'Donnell) [1937116] - xfs: fix high key handling in the rt allocator's query_range function (Bill O'Donnell) [1937116] - xfs: annotate grabbing the realtime bitmap/summary locks in growfs (Bill O'Donnell) [1937116] - xfs: make xfs_growfs_rt update secondary superblocks (Bill O'Donnell) [1937116] - xfs: fix realtime bitmap/summary file truncation when growing rt volume (Bill O'Donnell) [1937116] - xfs: fix the indent in xfs_trans_mod_dquot (Bill O'Donnell) [1937116] - xfs: do the ASSERT for the arguments O_{u,g,p}dqpp (Bill O'Donnell) [1937116] - xfs: fix deadlock and streamline xfs_getfsmap performance (Bill O'Donnell) [1937116] - xfs: limit entries returned when counting fsmap records (Bill O'Donnell) [1937116] - xfs: only relog deferred intent items if free space in the log gets low (Bill O'Donnell) [1937116] - xfs: expose the log push threshold (Bill O'Donnell) [1937116] - xfs: periodically relog deferred intent items (Bill O'Donnell) [1937116] - xfs: change the order in which child and parent defer ops are finished (Bill O'Donnell) [1937116] - xfs: fix an incore inode UAF in xfs_bui_recover (Bill O'Donnell) [1937116] - xfs: clean up xfs_bui_item_recover iget/trans_alloc/ilock ordering (Bill O'Donnell) [1937116] - xfs: clean up bmap intent item recovery checking (Bill O'Donnell) [1937116] - xfs: xfs_defer_capture should absorb remaining transaction reservation (Bill O'Donnell) [1937116] - xfs: xfs_defer_capture should absorb remaining block reservations (Bill O'Donnell) [1937116] - xfs: proper replay of deferred ops queued during log recovery (Bill O'Donnell) [1937116] - xfs: remove XFS_LI_RECOVERED (Bill O'Donnell) [1937116] - xfs: remove xfs_defer_reset (Bill O'Donnell) [1937116] - xfs: fix finobt btree block recovery ordering (Bill O'Donnell) [1937116] - xfs: directly call xfs_generic_create() for ->create() and ->mkdir() (Bill O'Donnell) [1937116] - xfs: avoid shared rmap operations for attr fork extents (Bill O'Donnell) [1937116] - xfs: drop the obsolete comment on filestream locking (Bill O'Donnell) [1937116] - xfs: code cleanup in xfs_attr_leaf_entsize_{remote,local} (Bill O'Donnell) [1937116] - xfs: do the assert for all the log done items in xfs_trans_cancel (Bill O'Donnell) [1937116] - xfs: remove the unused parameter id from xfs_qm_dqattach_one (Bill O'Donnell) [1937116] - xfs: remove the redundant crc feature check in xfs_attr3_rmt_verify (Bill O'Donnell) [1937116] - xfs: fix some comments (Bill O'Donnell) [1937116] - xfs: remove the unnecessary xfs_dqid_t type cast (Bill O'Donnell) [1937116] - xfs: use the existing type definition for di_projid (Bill O'Donnell) [1937116] - xfs: remove the unused SYNCHRONIZE macro (Bill O'Donnell) [1937116] - xfs: clean up calculation of LR header blocks (Bill O'Donnell) [1937116] - xfs: avoid LR buffer overrun due to crafted h_len (Bill O'Donnell) [1937116] - xfs: don't release log intent items when recovery fails (Bill O'Donnell) [1937116] - xfs: attach inode to dquot in xfs_bui_item_recover (Bill O'Donnell) [1937116] - xfs: log new intent items created as part of finishing recovered intent items (Bill O'Donnell) [1937116] - xfs: check dabtree node hash values when loading child blocks (Bill O'Donnell) [1937116] - xfs: don't free rt blocks when we're doing a REMAP bunmapi call (Bill O'Donnell) [1937116] - xfs: Set xfs_buf's b_ops member when zeroing bitmap/summary files (Bill O'Donnell) [1937116] - xfs: Set xfs_buf type flag when growing summary/bitmap files (Bill O'Donnell) [1937116] - xfs: drop extra transaction roll from inode extent truncate (Bill O'Donnell) [1937116] - xfs: don't propagate RTINHERIT -> REALTIME when there is no rtdev (Bill O'Donnell) [1937116] - xfs: ensure that fpunch, fcollapse, and finsert operations are aligned to rt extent size (Bill O'Donnell) [1937116] - xfs: refactor inode flags propagation code (Bill O'Donnell) [1937116] - xfs: make sure the rt allocator doesn't run off the end (Bill O'Donnell) [1937116] - xfs: Remove unneeded semicolon (Bill O'Donnell) [1937116] - xfs: force the log after remapping a synchronous-writes file (Bill O'Donnell) [1937116] - xfs: Convert xfs_attr_sf macros to inline functions (Bill O'Donnell) [1937116] - xfs: Use variable-size array for nameval in xfs_attr_sf_entry (Bill O'Donnell) [1937116] - xfs: Remove typedef xfs_attr_shortform_t (Bill O'Donnell) [1937116] - xfs: remove typedef xfs_attr_sf_entry_t (Bill O'Donnell) [1937116] - xfs: Remove kmem_zalloc_large() (Bill O'Donnell) [1937116] - xfs: enable big timestamps (Bill O'Donnell) [1937116] - xfs: trace timestamp limits (Bill O'Donnell) [1937116] - xfs: widen ondisk quota expiration timestamps to handle y2038+ (Bill O'Donnell) [1937116] - xfs: widen ondisk inode timestamps to deal with y2038+ (Bill O'Donnell) [1937116] - xfs: redefine xfs_ictimestamp_t (Bill O'Donnell) [1937116] - xfs: redefine xfs_timestamp_t (Bill O'Donnell) [1937116] - xfs: move xfs_log_dinode_to_disk to the log recovery code (Bill O'Donnell) [1937116] - xfs: refactor quota timestamp coding (Bill O'Donnell) [1937116] - xfs: refactor default quota grace period setting code (Bill O'Donnell) [1937116] - xfs: refactor quota expiration timer modification (Bill O'Donnell) [1937116] - xfs: explicitly define inode timestamp range (Bill O'Donnell) [1937116] - xfs: enable new inode btree counters feature (Bill O'Donnell) [1937116] - xfs: support inode btree blockcounts in online repair (Bill O'Donnell) [1937116] - xfs: support inode btree blockcounts in online scrub (Bill O'Donnell) [1937116] - xfs: use the finobt block counts to speed up mount times (Bill O'Donnell) [1937116] - xfs: store inode btree block counts in AGI header (Bill O'Donnell) [1937116] - xfs: reuse _xfs_buf_read for re-reading the superblock (Bill O'Donnell) [1937116] - xfs: remove xfs_getsb (Bill O'Donnell) [1937116] - xfs: simplify xfs_trans_getsb (Bill O'Donnell) [1937116] - xfs: remove xlog_recover_iodone (Bill O'Donnell) [1937116] - xfs: clear the read/write flags later in xfs_buf_ioend (Bill O'Donnell) [1937116] - xfs: use xfs_buf_item_relse in xfs_buf_item_done (Bill O'Donnell) [1937116] - xfs: simplify the xfs_buf_ioend_disposition calling convention (Bill O'Donnell) [1937116] - xfs: lift the XBF_IOEND_FAIL handling into xfs_buf_ioend_disposition (Bill O'Donnell) [1937116] - xfs: remove xfs_buf_ioerror_retry (Bill O'Donnell) [1937116] - xfs: refactor xfs_buf_ioerror_fail_without_retry (Bill O'Donnell) [1937116] - xfs: fold xfs_buf_ioend_finish into xfs_ioend (Bill O'Donnell) [1937116] - xfs: move the buffer retry logic to xfs_buf.c (Bill O'Donnell) [1937116] - xfs: refactor xfs_buf_ioend (Bill O'Donnell) [1937116] - xfs: mark xfs_buf_ioend static (Bill O'Donnell) [1937116] - xfs: refactor the buf ioend disposition code (Bill O'Donnell) [1937116] - xfs: xfs_iflock is no longer a completion (Bill O'Donnell) [1937116] - xfs: remove kmem_realloc() (Bill O'Donnell) [1937116] - xfs: don't update mtime on COW faults (Bill O'Donnell) [1937116] - xfs: fix xfs_bmap_validate_extent_raw when checking attr fork of rt files (Bill O'Donnell) [1937116] - xfs: initialize the shortform attr header padding entry (Bill O'Donnell) [1937116] - xfs: fix off-by-one in inode alloc block reservation calculation (Bill O'Donnell) [1937116] - xfs: finish dfops on every insert range shift iteration (Bill O'Donnell) [1937116] - xfs: Fix UBSAN null-ptr-deref in xfs_sysfs_init (Bill O'Donnell) [1937116] - xfs: delete duplicated words + other fixes (Bill O'Donnell) [1937116] - xfs: Lift -ENOSPC handler from xfs_attr_leaf_addname (Bill O'Donnell) [1937116] - xfs: Simplify xfs_attr_node_addname (Bill O'Donnell) [1937116] - xfs: Simplify xfs_attr_leaf_addname (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_node_removename_rmt (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_node_removename_setup (Bill O'Donnell) [1937116] - xfs: Add remote block helper functions (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_leaf_mark_incomplete (Bill O'Donnell) [1937116] - xfs: Add helpers xfs_attr_is_shortform and xfs_attr_set_shortform (Bill O'Donnell) [1937116] - xfs: Remove xfs_trans_roll in xfs_attr_node_removename (Bill O'Donnell) [1937116] - xfs: Remove unneeded xfs_trans_roll_inode calls (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_node_shrink (Bill O'Donnell) [1937116] - xfs: Pull up xfs_attr_rmtval_invalidate (Bill O'Donnell) [1937116] - xfs: Refactor xfs_attr_rmtval_remove (Bill O'Donnell) [1937116] - xfs: Pull up trans roll in xfs_attr3_leaf_clearflag (Bill O'Donnell) [1937116] - xfs: Factor out xfs_attr_rmtval_invalidate (Bill O'Donnell) [1937116] - xfs: Pull up trans roll from xfs_attr3_leaf_setflag (Bill O'Donnell) [1937116] - xfs: Refactor xfs_attr_try_sf_addname (Bill O'Donnell) [1937116] - xfs: Split apart xfs_attr_leaf_addname (Bill O'Donnell) [1937116] - xfs: Pull up trans handling in xfs_attr3_leaf_flipflags (Bill O'Donnell) [1937116] - xfs: Factor out new helper functions xfs_attr_rmtval_set (Bill O'Donnell) [1937116] - xfs: Check for -ENOATTR or -EEXIST (Bill O'Donnell) [1937116] - xfs: Add xfs_has_attr and subroutines (Bill O'Donnell) [1937116] - xfs: Refactor xfs_da_state_alloc() helper (Bill O'Donnell) [1937116] - xfs: remove xfs_zone_{alloc,zalloc} helpers (Bill O'Donnell) [1937116] - xfs: Modify xlog_ticket_alloc() to use kernel's MM API (Bill O'Donnell) [1937116] - xfs: Remove kmem_zone_zalloc() usage (Bill O'Donnell) [1937116] - xfs: Remove kmem_zone_alloc() usage (Bill O'Donnell) [1937116] - xfs: xfs_btree_staging.h: delete duplicated words (Bill O'Donnell) [1937116] - xfs: rename the ondisk dquot d_flags to d_type (Bill O'Donnell) [1937116] - xfs: improve ondisk dquot flags checking (Bill O'Donnell) [1937116] - xfs: create xfs_dqtype_t to represent quota types (Bill O'Donnell) [1937116] - xfs: replace a few open-coded XFS_DQTYPE_REC_MASK uses (Bill O'Donnell) [1937116] - xfs: remove unnecessary quota type masking (Bill O'Donnell) [1937116] - xfs: always use xfs_dquot_type when extracting type from a dquot (Bill O'Donnell) [1937116] - xfs: refactor quota type testing (Bill O'Donnell) [1937116] - xfs: remove the XFS_QM_IS[UGP]DQ macros (Bill O'Donnell) [1937116] - xfs: refactor testing if a particular dquot is being enforced (Bill O'Donnell) [1937116] - xfs: rename XFS_DQ_{USER,GROUP,PROJ} to XFS_DQTYPE_* (Bill O'Donnell) [1937116] - xfs: drop the type parameter from xfs_dquot_verify (Bill O'Donnell) [1937116] - xfs: add more dquot tracepoints (Bill O'Donnell) [1937116] - xfs: actually bump warning counts when we send warnings (Bill O'Donnell) [1937116] - xfs: assume the default quota limits are always set in xfs_qm_adjust_dqlimits (Bill O'Donnell) [1937116] - xfs: refactor xfs_trans_apply_dquot_deltas (Bill O'Donnell) [1937116] - xfs: refactor xfs_trans_dqresv (Bill O'Donnell) [1937116] - xfs: refactor xfs_qm_scall_setqlim (Bill O'Donnell) [1937116] - xfs: refactor quota exceeded test (Bill O'Donnell) [1937116] - xfs: remove unnecessary arguments from quota adjust functions (Bill O'Donnell) [1937116] - xfs: refactor default quota limits by resource (Bill O'Donnell) [1937116] - xfs: remove qcore from incore dquots (Bill O'Donnell) [1937116] - xfs: stop using q_core timers in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core warning counters in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core counters in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core limits in the quota code (Bill O'Donnell) [1937116] - xfs: use a per-resource struct for incore dquot data (Bill O'Donnell) [1937116] - xfs: stop using q_core.d_id in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core.d_flags in the quota code (Bill O'Donnell) [1937116] - xfs: make XFS_DQUOT_CLUSTER_SIZE_FSB part of the ondisk format (Bill O'Donnell) [1937116] - xfs: rename dquot incore state flags (Bill O'Donnell) [1937116] - xfs: refactor quotacheck flags usage (Bill O'Donnell) [1937116] - xfs: move the flags argument of xfs_qm_scall_trunc_qfiles to XFS_QMOPT_* (Bill O'Donnell) [1937116] - xfs: validate ondisk/incore dquot flags (Bill O'Donnell) [1937116] - xfs: fix inode quota reservation checks (Bill O'Donnell) [1937116] - xfs: clear XFS_DQ_FREEING if we can't lock the dquot buffer to flush (Bill O'Donnell) [1937116] - xfs: drain the buf delwri queue before xfsaild idles (Bill O'Donnell) [1937116] - xfs: remove duplicated include from xfs_buf_item.c (Bill O'Donnell) [1937116] - xfs: remove SYNC_WAIT and SYNC_TRYLOCK (Bill O'Donnell) [1937116] - xfs: get rid of unnecessary xfs_perag_{get,put} pairs (Bill O'Donnell) [1937116] - xfs: rtbitmap scrubber should check inode size (Bill O'Donnell) [1937116] - xfs: rtbitmap scrubber should verify written extents (Bill O'Donnell) [1937116] - xfs: remove xfs_inobp_check() (Bill O'Donnell) [1937116] - xfs: factor xfs_iflush_done (Bill O'Donnell) [1937116] - xfs: rework xfs_iflush_cluster() dirty inode iteration (Bill O'Donnell) [1937116] - xfs: rename xfs_iflush_int() (Bill O'Donnell) [1937116] - xfs: xfs_iflush() is no longer necessary (Bill O'Donnell) [1937116] - xfs: attach inodes to the cluster buffer when dirtied (Bill O'Donnell) [1937116] - xfs: rework stale inodes in xfs_ifree_cluster (Bill O'Donnell) [1937116] - xfs: clean up inode reclaim comments (Bill O'Donnell) [1937116] - xfs: remove SYNC_WAIT from xfs_reclaim_inodes() (Bill O'Donnell) [1937116] - xfs: remove SYNC_TRYLOCK from inode reclaim (Bill O'Donnell) [1937116] - xfs: don't block inode reclaim on the ILOCK (Bill O'Donnell) [1937116] - xfs: allow multiple reclaimers per AG (Bill O'Donnell) [1937116] - xfs: remove IO submission from xfs_reclaim_inode() (Bill O'Donnell) [1937116] - xfs: make inode reclaim almost non-blocking (Bill O'Donnell) [1937116] - xfs: pin inode backing buffer to the inode log item (Bill O'Donnell) [1937116] - xfs: move xfs_clear_li_failed out of xfs_ail_delete_one() (Bill O'Donnell) [1937116] - xfs: unwind log item error flagging (Bill O'Donnell) [1937116] - xfs: handle buffer log item IO errors directly (Bill O'Donnell) [1937116] - xfs: get rid of log item callbacks (Bill O'Donnell) [1937116] - xfs: clean up the buffer iodone callback functions (Bill O'Donnell) [1937116] - xfs: use direct calls for dquot IO completion (Bill O'Donnell) [1937116] - xfs: make inode IO completion buffer centric (Bill O'Donnell) [1937116] - xfs: clean up whacky buffer log item list reinit (Bill O'Donnell) [1937116] - xfs: call xfs_buf_iodone directly (Bill O'Donnell) [1937116] - xfs: mark log recovery buffers for completion (Bill O'Donnell) [1937116] - xfs: mark dquot buffers in cache (Bill O'Donnell) [1937116] - xfs: mark inode buffers in cache (Bill O'Donnell) [1937116] - xfs: add an inode item lock (Bill O'Donnell) [1937116] - xfs: remove logged flag from inode log item (Bill O'Donnell) [1937116] - xfs: Don't allow logging of XFS_ISTALE inodes (Bill O'Donnell) [1937116] - xfs: remove useless definitions in xfs_linux.h (Bill O'Donnell) [1937116] - xfs: use MMAPLOCK around filemap_map_pages() (Bill O'Donnell) [1937116] - xfs: move helpers that lock and unlock two inodes against userspace IO (Bill O'Donnell) [1937116] - xfs: refactor locking and unlocking two inodes against userspace IO (Bill O'Donnell) [1937116] - xfs: fix xfs_reflink_remap_prep calling conventions (Bill O'Donnell) [1937116] - xfs: reflink can skip remap existing mappings (Bill O'Donnell) [1937116] - xfs: only reserve quota blocks if we're mapping into a hole (Bill O'Donnell) [1937116] - xfs: only reserve quota blocks for bmbt changes if we're changing the data fork (Bill O'Donnell) [1937116] - xfs: redesign the reflink remap loop to fix blkres depletion crash (Bill O'Donnell) [1937116] - xfs: rename xfs_bmap_is_real_extent to is_written_extent (Bill O'Donnell) [1937116] - xfs: Couple of typo fixes in comments (Bill O'Donnell) [1937116] - xfs: fix use-after-free on CIL context on shutdown (Bill O'Donnell) [1937116] - xfs: flag files as supporting buffered async reads (Bill O'Donnell) [1937116] - fs: add FMODE_BUF_RASYNC (Bill O'Donnell) [1937116] - xfs: more lockdep whackamole with kmem_alloc* (Bill O'Donnell) [1937116 1965923] - xfs: rearrange xfs_inode_walk_ag parameters (Bill O'Donnell) [1937116] - xfs: straighten out all the naming around incore inode tree walks (Bill O'Donnell) [1937116] - xfs: move xfs_inode_ag_iterator to be closer to the perag walking code (Bill O'Donnell) [1937116] - xfs: use bool for done in xfs_inode_ag_walk (Bill O'Donnell) [1937116] - xfs: fix inode ag walk predicate function return values (Bill O'Donnell) [1937116] - xfs: refactor eofb matching into a single helper (Bill O'Donnell) [1937116] - xfs: remove __xfs_icache_free_eofblocks (Bill O'Donnell) [1937116] - xfs: remove flags argument from xfs_inode_ag_walk (Bill O'Donnell) [1937116] - xfs: remove xfs_inode_ag_iterator_flags (Bill O'Donnell) [1937116] - xfs: remove unused xfs_inode_ag_iterator function (Bill O'Donnell) [1937116] - xfs: replace open-coded XFS_ICI_NO_TAG (Bill O'Donnell) [1937116] - xfs: move eofblocks conversion function to xfs_ioctl.c (Bill O'Donnell) [1937116] - xfs: remove the m_active_trans counter (Bill O'Donnell) [1937116] - xfs: separate read-only variables in struct xfs_mount (Bill O'Donnell) [1937116] - xfs: reduce free inode accounting overhead (Bill O'Donnell) [1937116] - xfs: gut error handling in xfs_trans_unreserve_and_mod_sb() (Bill O'Donnell) [1937116] - xfs: cleanup xfs_idestroy_fork (Bill O'Donnell) [1937116] - xfs: move the fork format fields into struct xfs_ifork (Bill O'Donnell) [1937116] - xfs: move the per-fork nextents fields into struct xfs_ifork (Bill O'Donnell) [1937116] - xfs: remove xfs_ifree_local_data (Bill O'Donnell) [1937116] - xfs: remove the XFS_DFORK_Q macro (Bill O'Donnell) [1937116] - xfs: clean up xchk_bmap_check_rmaps usage of XFS_IFORK_Q (Bill O'Donnell) [1937116] - xfs: remove the NULL fork handling in xfs_bmapi_read (Bill O'Donnell) [1937116] - xfs: remove the special COW fork handling in xfs_bmapi_read (Bill O'Donnell) [1937116] - xfs: improve local fork verification (Bill O'Donnell) [1937116] - xfs: refactor xfs_inode_verify_forks (Bill O'Donnell) [1937116] - xfs: remove xfs_ifork_ops (Bill O'Donnell) [1937116] - xfs: remove xfs_iread (Bill O'Donnell) [1937116] - xfs: don't reset i_delayed_blks in xfs_iread (Bill O'Donnell) [1937116] - xfs: call xfs_dinode_verify from xfs_inode_from_disk (Bill O'Donnell) [1937116] - xfs: handle unallocated inodes in xfs_inode_from_disk (Bill O'Donnell) [1937116] - xfs: split xfs_iformat_fork (Bill O'Donnell) [1937116] - xfs: call xfs_iformat_fork from xfs_inode_from_disk (Bill O'Donnell) [1937116] - xfs: xfs_bmapi_read doesn't take a fork id as the last argument (Bill O'Donnell) [1937116] - xfs: fix the warning message in xfs_validate_sb_common() (Bill O'Donnell) [1937116] - xfs: don't allow SWAPEXT if we'd screw up quota accounting (Bill O'Donnell) [1937116] - xfs: use ordered buffers to initialize dquot buffers during quotacheck (Bill O'Donnell) [1937116] - xfs: don't fail verifier on empty attr3 leaf block (Bill O'Donnell) [1937116] - xfs: Use the correct style for SPDX License Identifier (Bill O'Donnell) [1937116] - xfs: Replace zero-length array with flexible-array (Bill O'Donnell) [1937116] - xfs: ensure f_bfree returned by statfs() is non-negative (Bill O'Donnell) [1937116] - xfs: remove duplicate headers (Bill O'Donnell) [1937116] - xfs: fix unused variable warning in buffer completion on !DEBUG (Bill O'Donnell) [1937116] - xfs: remove unnecessary includes from xfs_log_recover.c (Bill O'Donnell) [1937116] - xfs: move log recovery buffer cancellation code to xfs_buf_item_recover.c (Bill O'Donnell) [1937116] - xfs: hoist setting of XFS_LI_RECOVERED to caller (Bill O'Donnell) [1937116] - xfs: refactor intent item iop_recover calls (Bill O'Donnell) [1937116] - xfs: refactor intent item RECOVERED flag into the log item (Bill O'Donnell) [1937116] - xfs: refactor adding recovered intent items to the log (Bill O'Donnell) [1937116] - xfs: refactor releasing finished intents during log recovery (Bill O'Donnell) [1937116] - xfs: refactor xlog_item_is_intent now that we're done converting (Bill O'Donnell) [1937116] - xfs: refactor recovered BUI log item playback (Bill O'Donnell) [1937116] - xfs: refactor recovered CUI log item playback (Bill O'Donnell) [1937116] - xfs: refactor recovered RUI log item playback (Bill O'Donnell) [1937116] - xfs: refactor recovered EFI log item playback (Bill O'Donnell) [1937116] - xfs: remove log recovery quotaoff item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery BUI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery CUI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery RUI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery EFI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery icreate item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery dquot item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery inode item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery buffer item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery item dispatch for pass1 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery item dispatch for pass2 readhead functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery item sorting into a generic dispatch structure (Bill O'Donnell) [1937116] - xfs: convert xfs_log_recover_item_t to struct xfs_log_recover_item (Bill O'Donnell) [1937116] - xfs: remove unused iget_flags param from xfs_imap_to_bp() (Bill O'Donnell) [1937116] - xfs: remove unused shutdown types (Bill O'Donnell) [1937116] - xfs: random buffer write failure errortag (Bill O'Donnell) [1937116] - xfs: remove unused iflush stale parameter (Bill O'Donnell) [1937116] - xfs: combine xfs_trans_ail_[remove|delete]() (Bill O'Donnell) [1937116] - xfs: drop unused shutdown parameter from xfs_trans_ail_remove() (Bill O'Donnell) [1937116] - xfs: use delete helper for items expected to be in AIL (Bill O'Donnell) [1937116] - xfs: acquire ->ail_lock from xfs_trans_ail_delete() (Bill O'Donnell) [1937116] - xfs: abort consistently on dquot flush failure (Bill O'Donnell) [1937116] - xfs: ratelimit unmount time per-buffer I/O error alert (Bill O'Donnell) [1937116] - xfs: refactor ratelimited buffer error messages into helper (Bill O'Donnell) [1937116] - xfs: reset buffer write failure state on successful completion (Bill O'Donnell) [1937116] - xfs: remove unnecessary shutdown check from xfs_iflush() (Bill O'Donnell) [1937116] - xfs: simplify inode flush error handling (Bill O'Donnell) [1937116] - xfs: factor out buffer I/O failure code (Bill O'Donnell) [1937116] - xfs: refactor failed buffer resubmission into xfsaild (Bill O'Donnell) [1937116] - xfs: spell out the parameter name for ->cancel_item (Bill O'Donnell) [1937116] - xfs: use a xfs_btree_cur for the ->finish_cleanup state (Bill O'Donnell) [1937116] - xfs: turn dfp_done into a xfs_log_item (Bill O'Donnell) [1937116] - xfs: refactor xfs_defer_finish_noroll (Bill O'Donnell) [1937116] - xfs: turn dfp_intent into a xfs_log_item (Bill O'Donnell) [1937116] - xfs: merge the ->diff_items defer op into ->create_intent (Bill O'Donnell) [1937116] - xfs: merge the ->log_item defer op into ->create_intent (Bill O'Donnell) [1937116] - xfs: factor out a xfs_defer_create_intent helper (Bill O'Donnell) [1937116] - xfs: remove the xfs_inode_log_item_t typedef (Bill O'Donnell) [1937116] - xfs: remove the xfs_efd_log_item_t typedef (Bill O'Donnell) [1937116] - xfs: remove the xfs_efi_log_item_t typedef (Bill O'Donnell) [1937116] - xfs: refactor xlog_recover_buffer_pass1 (Bill O'Donnell) [1937116] - xfs: simplify xlog_recover_inode_ra_pass2 (Bill O'Donnell) [1937116] - xfs: factor out a xlog_buf_readahead helper (Bill O'Donnell) [1937116] - xfs: rename inode_list xlog_recover_reorder_trans (Bill O'Donnell) [1937116] - xfs: refactor the buffer cancellation table helpers (Bill O'Donnell) [1937116] - xfs: define printk_once variants for xfs messages (Bill O'Donnell) [1937116] - xfs: stop CONFIG_XFS_DEBUG from changing compiler flags (Bill O'Donnell) [1937116] - xfs: remove unnecessary check of the variable resblks in xfs_symlink (Bill O'Donnell) [1937116] - xfs: simplify the flags setting in xfs_qm_scall_quotaon (Bill O'Donnell) [1937116] - xfs: remove unnecessary assertion from xfs_qm_vop_create_dqattach (Bill O'Donnell) [1937116] - xfs: remove unnecessary variable udqp from xfs_ioctl_setattr (Bill O'Donnell) [1937116] - xfs: reserve quota inode transaction space only when needed (Bill O'Donnell) [1937116] - xfs: combine two if statements with same condition (Bill O'Donnell) [1937116] - xfs: trace quota allocations for all quota types (Bill O'Donnell) [1937116] - xfs: report unrecognized log item type codes during recovery (Bill O'Donnell) [1937116] - xfs: move inode flush to the sync workqueue (Bill O'Donnell) [1937116] - xfs: fix partially uninitialized structure in xfs_reflink_remap_extent (Bill O'Donnell) [1937116] - xfs: fix inode number overflow in ifree cluster helper (Bill O'Donnell) [1937116] - xfs: remove redundant variable assignment in xfs_symlink() (Bill O'Donnell) [1937116] - xfs: ratelimit inode flush on buffered write ENOSPC (Bill O'Donnell) [1937116] - xfs: return locked status of inode buffer on xfsaild push (Bill O'Donnell) [1937116] - xfs: trylock underlying buffer on dquot flush (Bill O'Donnell) [1937116] - xfs: remove unnecessary ternary from xfs_create (Bill O'Donnell) [1937116] - xfs: don't write a corrupt unmount record to force summary counter recalc (Bill O'Donnell) [1937116] - xfs: factor inode lookup from xfs_ifree_cluster (Bill O'Donnell) [1937116] - xfs: tail updates only need to occur when LSN changes (Bill O'Donnell) [1937116] - xfs: factor common AIL item deletion code (Bill O'Donnell) [1937116] - xfs: correctly acount for reclaimable slabs (Bill O'Donnell) [1937116] - xfs: Improve metadata buffer reclaim accountability (Bill O'Donnell) [1937116] - xfs: don't allow log IO to be throttled (Bill O'Donnell) [1937116] - xfs: Throttle commits on delayed background CIL push (Bill O'Donnell) [1937116] - xfs: Lower CIL flush limit for large logs (Bill O'Donnell) [1937116] - xfs: remove some stale comments from the log code (Bill O'Donnell) [1937116] - xfs: refactor unmount record writing (Bill O'Donnell) [1937116] - xfs: merge xlog_commit_record with xlog_write_done (Bill O'Donnell) [1937116] - xfs: split xlog_ticket_done (Bill O'Donnell) [1937116] - xfs: kill XLOG_TIC_INITED (Bill O'Donnell) [1937116] - xfs: refactor and split xfs_log_done() (Bill O'Donnell) [1937116] - xfs: re-order initial space accounting checks in xlog_write (Bill O'Donnell) [1937116] - xfs: don't try to write a start record into every iclog (Bill O'Donnell) [1937116] - xfs: validate the realtime geometry in xfs_validate_sb_common (Bill O'Donnell) [1937116] - xfs: shutdown on failure to add page to log bio (Bill O'Donnell) [1937116] - xfs: directory bestfree check should release buffers (Bill O'Donnell) [1937116] - xfs: drop all altpath buffers at the end of the sibling check (Bill O'Donnell) [1937116] - xfs: remove xlog_state_want_sync (Bill O'Donnell) [1937116] - xfs: move the ioerror check out of xlog_state_clean_iclog (Bill O'Donnell) [1937116] - xfs: refactor xlog_state_clean_iclog (Bill O'Donnell) [1937116] - xfs: remove the aborted parameter to xlog_state_done_syncing (Bill O'Donnell) [1937116] - xfs: simplify log shutdown checking in xfs_log_release_iclog (Bill O'Donnell) [1937116] - xfs: simplify the xfs_log_release_iclog calling convention (Bill O'Donnell) [1937116] - xfs: factor out a xlog_wait_on_iclog helper (Bill O'Donnell) [1937116] - xfs: merge xlog_cil_push into xlog_cil_push_work (Bill O'Donnell) [1937116] - xfs: remove the di_version field from struct icdinode (Bill O'Donnell) [1937116] - xfs: simplify a check in xfs_ioctl_setattr_check_cowextsize (Bill O'Donnell) [1937116] - xfs: simplify di_flags2 inheritance in xfs_ialloc (Bill O'Donnell) [1937116] - xfs: only check the superblock version for dinode size calculation (Bill O'Donnell) [1937116] - xfs: add a new xfs_sb_version_has_v3inode helper (Bill O'Donnell) [1937116] - xfs: add support for rmap btree staging cursors (Bill O'Donnell) [1937116] - xfs: add support for refcount btree staging cursors (Bill O'Donnell) [1937116] - xfs: add support for inode btree staging cursors (Bill O'Donnell) [1937116] - xfs: add support for free space btree staging cursors (Bill O'Donnell) [1937116] - xfs: support bulk loading of staged btrees (Bill O'Donnell) [1937116] - xfs: introduce fake roots for inode-rooted btrees (Bill O'Donnell) [1937116] - xfs: introduce fake roots for ag-rooted btrees (Bill O'Donnell) [1937116] - xfs: replace open-coded bitmap weight logic (Bill O'Donnell) [1937116] - xfs: rename xfs_bitmap to xbitmap (Bill O'Donnell) [1937116] - xfs: xrep_reap_extents should not destroy the bitmap (Bill O'Donnell) [1937116] - xfs: cleanup xfs_log_unmount_write (Bill O'Donnell) [1937116] - xfs: remove dead code from xfs_log_unmount_write (Bill O'Donnell) [1937116] - xfs: remove the unused return value from xfs_log_unmount_write (Bill O'Donnell) [1937116] - xfs: remove the unused XLOG_UNMOUNT_REC_TYPE define (Bill O'Donnell) [1937116] - xfs: mark XLOG_FORCED_SHUTDOWN as unlikely (Bill O'Donnell) [1937116] - xfs: make the btree ag cursor private union anonymous (Bill O'Donnell) [1937116] - xfs: make the btree cursor union members named structure (Bill O'Donnell) [1937116] - xfs: make btree cursor private union anonymous (Bill O'Donnell) [1937116] - xfs: rename btree cursor private btree member flags (Bill O'Donnell) [1937116] - xfs: convert btree cursor inode-private member names (Bill O'Donnell) [1937116] - xfs: convert btree cursor ag-private member name (Bill O'Donnell) [1937116] - xfs: introduce new private btree cursor names (Bill O'Donnell) [1937116] - xfs: Use scnprintf() for avoiding potential buffer overflow (Bill O'Donnell) [1937116] - xfs: mark extended attr corrupt when lookup-by-hash fails (Bill O'Donnell) [1937116] - xfs: mark dir corrupt when lookup-by-hash fails (Bill O'Donnell) [1937116] - xfs: check owner of dir3 blocks (Bill O'Donnell) [1937116] - xfs: check owner of dir3 data blocks (Bill O'Donnell) [1937116] - xfs: check owner of dir3 free blocks (Bill O'Donnell) [1937116] - xfs: fix buffer corruption reporting when xfs_dir3_free_header_check fails (Bill O'Donnell) [1937116] - xfs: xfs_buf_corruption_error should take __this_address (Bill O'Donnell) [1937116] - xfs: add a function to deal with corrupt buffers post-verifiers (Bill O'Donnell) [1937116] - xfs: remove XFS_BUF_TO_SBP (Bill O'Donnell) [1937116] - xfs: remove XFS_BUF_TO_AGF (Bill O'Donnell) [1937116] - xfs: remove XFS_BUF_TO_AGI (Bill O'Donnell) [1937116] - xfs: remove the xfs_agfl_t typedef (Bill O'Donnell) [1937116] - xfs: remove the agfl_bno member from struct xfs_agfl (Bill O'Donnell) [1937116] - xfs: switch xfs_attrmulti_attr_get to lazy attr buffer allocation (Bill O'Donnell) [1937116] - xfs: only allocate the buffer size actually needed in __xfs_set_acl (Bill O'Donnell) [1937116] - xfs: clean up bufsize alignment in xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: embedded the attrlist cursor into struct xfs_attr_list_context (Bill O'Donnell) [1937116] - xfs: remove XFS_DA_OP_INCOMPLETE (Bill O'Donnell) [1937116] - xfs: clean up the attr flag confusion (Bill O'Donnell) [1937116] - xfs: clean up the ATTR_REPLACE checks (Bill O'Donnell) [1937116] - xfs: improve xfs_forget_acl (Bill O'Donnell) [1937116] - xfs: lift cursor copy in/out into xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: lift buffer allocation into xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: lift common checks into xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: rename xfs_attr_list_int to xfs_attr_list (Bill O'Donnell) [1937116] - xfs: move the legacy xfs_attr_list to xfs_ioctl.c (Bill O'Donnell) [1937116] - xfs: open code ATTR_ENTSIZE (Bill O'Donnell) [1937116] - xfs: remove the unused ATTR_ENTRY macro (Bill O'Donnell) [1937116] - xfs: cleanup struct xfs_attr_list_context (Bill O'Donnell) [1937116] - xfs: factor out a xfs_attr_match helper (Bill O'Donnell) [1937116] - xfs: replace ATTR_KERNOTIME with XFS_DA_OP_NOTIME (Bill O'Donnell) [1937116] - xfs: remove ATTR_ALLOC and XFS_DA_OP_ALLOCVAL (Bill O'Donnell) [1937116] - xfs: remove ATTR_KERNOVAL (Bill O'Donnell) [1937116] - xfs: remove the xfs_inode argument to xfs_attr_get_ilocked (Bill O'Donnell) [1937116] - xfs: pass an initialized xfs_da_args to xfs_attr_get (Bill O'Donnell) [1937116] - xfs: pass an initialized xfs_da_args structure to xfs_attr_set (Bill O'Donnell) [1937116] - xfs: turn xfs_da_args.value into a void pointer (Bill O'Donnell) [1937116] - xfs: remove the MAXNAMELEN check from xfs_attr_args_init (Bill O'Donnell) [1937116] - xfs: remove the name == NULL check from xfs_attr_args_init (Bill O'Donnell) [1937116] - xfs: factor out a helper for a single XFS_IOC_ATTRMULTI_BY_HANDLE op (Bill O'Donnell) [1937116] - xfs: use strndup_user in XFS_IOC_ATTRMULTI_BY_HANDLE (Bill O'Donnell) [1937116] - xfs: merge xfs_attrmulti_attr_remove into xfs_attrmulti_attr_set (Bill O'Donnell) [1937116] - xfs: merge xfs_attr_remove into xfs_attr_set (Bill O'Donnell) [1937116] - xfs: remove the ATTR_INCOMPLETE flag (Bill O'Donnell) [1937116] - xfs: reject invalid flags combinations in XFS_IOC_ATTRLIST_BY_HANDLE (Bill O'Donnell) [1937116] - xfs: rework collapse range into an atomic operation (Bill O'Donnell) [1937116] - xfs: rework insert range into an atomic operation (Bill O'Donnell) [1937116] - xfs: open code insert range extent split helper (Bill O'Donnell) [1937116] - xfs: Add missing annotation to xfs_ail_check() (Bill O'Donnell) [1937116] - xfs: fix an undefined behaviour in _da3_path_shift (Bill O'Donnell) [1937116] - xfs: ratelimit xfs_discard_page messages (Bill O'Donnell) [1937116] - xfs: ratelimit xfs_buf_ioerror_alert messages (Bill O'Donnell) [1937116] - xfs: remove the kuid/kgid conversion wrappers (Bill O'Donnell) [1937116] - xfs: remove the icdinode di_uid/di_gid members (Bill O'Donnell) [1937116] - xfs: ensure that the inode uid/gid match values match the icdinode ones (Bill O'Donnell) [1937116] - xfs: improve error message when we can't allocate memory for xfs_buf (Bill O'Donnell) [1937116] - ceph: fix test for whether we can skip read when writing beyond EOF (Jeff Layton) [1971101] - redhat/configs: Add CONFIG_X86_SGX_KVM (Bandan Das) [1494649] - KVM: x86: Fix implicit enum conversion goof in scattered reverse CPUID code (Bandan Das) [1494649] - KVM: x86: Add capability to grant VM access to privileged SGX attribute (Bandan Das) [1494649] - KVM: VMX: Enable SGX virtualization for SGX1, SGX2 and LC (Bandan Das) [1494649] - KVM: VMX: Add ENCLS[EINIT] handler to support SGX Launch Control (LC) (Bandan Das) [1494649] - KVM: VMX: Add emulation of SGX Launch Control LE hash MSRs (Bandan Das) [1494649] - KVM: VMX: Add SGX ENCLS[ECREATE] handler to enforce CPUID restrictions (Bandan Das) [1494649] - KVM: VMX: Frame in ENCLS handler for SGX virtualization (Bandan Das) [1494649] - KVM: VMX: Add basic handling of VM-Exit from SGX enclave (Bandan Das) [1494649] - KVM: x86: Add reverse-CPUID lookup support for scattered SGX features (Bandan Das) [1494649] - KVM: x86: Add support for reverse CPUID lookup of scattered features (Bandan Das) [1494649] - KVM: x86: Define new #PF SGX error code bit (Bandan Das) [1494649] - KVM: x86: Export kvm_mmu_gva_to_gpa_{read,write}() for SGX (VMX) (Bandan Das) [1494649] - x86/sgx: Mark sgx_vepc_vm_ops static (Bandan Das) [1494649] - x86/sgx: Do not update sgx_nr_free_pages in sgx_setup_epc_section() (Bandan Das) [1494649] - x86/sgx: Move provisioning device creation out of SGX driver (Bandan Das) [1494649] - x86/sgx: Add helpers to expose ECREATE and EINIT to KVM (Bandan Das) [1494649] - x86/sgx: Add helper to update SGX_LEPUBKEYHASHn MSRs (Bandan Das) [1494649] - x86/sgx: Add encls_faulted() helper (Bandan Das) [1494649] - x86/sgx: Add SGX2 ENCLS leaf definitions (EAUG, EMODPR and EMODT) (Bandan Das) [1494649] - x86/sgx: Move ENCLS leaf definitions to sgx.h (Bandan Das) [1494649] - x86/sgx: Expose SGX architectural definitions to the kernel (Bandan Das) [1494649] - x86/sgx: Initialize virtual EPC driver even when SGX driver is disabled (Bandan Das) [1494649] - x86/cpu/intel: Allow SGX virtualization without Launch Control support (Bandan Das) [1494649] - x86/sgx: Introduce virtual EPC for use by KVM guests (Bandan Das) [1494649] - x86/sgx: Add SGX_CHILD_PRESENT hardware error code (Bandan Das) [1494649] - x86/sgx: Wipe out EREMOVE from sgx_free_epc_page() (Bandan Das) [1494649] - x86/cpufeatures: Add SGX1 and SGX2 sub-features (Bandan Das) [1494649] - x86/cpufeatures: Make SGX_LC feature bit depend on SGX bit (Bandan Das) [1494649] - x86/sgx: Remove unnecessary kmap() from sgx_ioc_enclave_init() (Bandan Das) [1494649] - selftests/sgx: Use getauxval() to simplify test code (Bandan Das) [1494649] - selftests/sgx: Improve error detection and messages (Bandan Das) [1494649] - x86/sgx: Add a basic NUMA allocation scheme to sgx_alloc_epc_page() (Bandan Das) [1494649] - x86/sgx: Replace section->init_laundry_list with sgx_dirty_page_list (Bandan Das) [1494649] - x86/sgx: Maintain encl->refcount for each encl->mm_list entry (Bandan Das) [1494649] - MAINTAINERS: Add Dave Hansen as reviewer for INTEL SGX (Bandan Das) [1494649] - x86/NUMA: Provide a range-to-target_node lookup facility (Bandan Das) [1494649] - x86/mm: Introduce CONFIG_NUMA_KEEP_MEMINFO (Bandan Das) [1494649] - configs: Enable CONFIG_MLXBF_GIGE on aarch64 (Alaa Hleihel) [1803489] - Add Mellanox BlueField Gigabit Ethernet driver (Alaa Hleihel) [1803489] - integrity: Use current_uid() in integrity_audit_message() (Richard Guy Briggs) [1957052] - ima: AppArmor satisfies the audit rule requirements (Richard Guy Briggs) [1957052] - IMA: Add audit log for failure conditions (Richard Guy Briggs) [1957052] - integrity: Add errno field in audit message (Richard Guy Briggs) [1957052] - audit: add blank line after variable declarations (Richard Guy Briggs) [1957052] - audit: drop /proc/PID/loginuid documentation Format field (Richard Guy Briggs) [1957052] - audit: avoid -Wempty-body warning (Richard Guy Briggs) [1957052] - audit: document /proc/PID/sessionid (Richard Guy Briggs) [1957052] - audit: document /proc/PID/loginuid (Richard Guy Briggs) [1957052] - MAINTAINERS: update audit files (Richard Guy Briggs) [1957052] - audit: further cleanup of AUDIT_FILTER_ENTRY deprecation (Richard Guy Briggs) [1957052] - netfilter: nftables: fix a warning message in nf_tables_commit_audit_collect() (Richard Guy Briggs) [1957052] - audit: log nftables configuration change events once per table (Richard Guy Briggs) [1957052] - audit_alloc_mark(): don't open-code ERR_CAST() (Richard Guy Briggs) [1957052] - make dump_common_audit_data() safe to be called from RCU pathwalk (Richard Guy Briggs) [1957052] - new helper: d_find_alias_rcu() (Richard Guy Briggs) [1957052] - audit: Make audit_filter_syscall() return void (Richard Guy Briggs) [1957052] - audit: Remove leftover reference to the audit_tasklet (Richard Guy Briggs) [1957052] - kernel/audit: convert comma to semicolon (Richard Guy Briggs) [1957052] - dump_common_audit_data(): fix racy accesses to ->d_name (Richard Guy Briggs) [1957052] - audit: replace atomic_add_return() (Richard Guy Briggs) [1957052] - x86/audit: Fix a -Wmissing-prototypes warning for ia32_classify_syscall() (Richard Guy Briggs) [1957052] - ethtool: fix kdoc attr name (Ivan Vecera) [1967261] - ethtool: Remove link_mode param and derive link params from driver (Ivan Vecera) [1967261] - ethtool: Add lanes parameter for ETHTOOL_LINK_MODE_10000baseR_FEC_BIT (Ivan Vecera) [1967261] - ethtool: fix kdoc in headers (Ivan Vecera) [1967261] - ethtool: document reserved fields in the uAPI (Ivan Vecera) [1967261] - ethtool: un-kdocify extended link state (Ivan Vecera) [1967261] - ethtool: document PHY tunable callbacks (Ivan Vecera) [1967261] - docs: ethtool: fix some copy-paste errors (Ivan Vecera) [1967261] - ethtool: fix incorrect datatype in set_eee ops (Ivan Vecera) [1967261] - net: selftests: Add lanes setting test (Ivan Vecera) [1967261] - mlxsw: ethtool: Pass link mode in use to ethtool (Ivan Vecera) [1967261] - mlxsw: ethtool: Add support for setting lanes when autoneg is off (Ivan Vecera) [1967261] - mlxsw: ethtool: Remove max lanes filtering (Ivan Vecera) [1967261] - ethtool: Expose the number of lanes in use (Ivan Vecera) [1967261] - ethtool: Get link mode in use instead of speed and duplex parameters (Ivan Vecera) [1967261] - ethtool: prepare __ethtool_get_link_ksettings for subsequent changes (Ivan Vecera) [1967261] - ethtool: Extend link modes settings uAPI with lanes (Ivan Vecera) [1967261] - ethtool: Validate master slave configuration before rtnl_lock() (Ivan Vecera) [1967261] - ethtool: fix string set id check (Ivan Vecera) [1967261] - ethtool: fix stack overflow in ethnl_parse_bitset() (Ivan Vecera) [1967261] - selftests: add ring and coalesce selftests (Ivan Vecera) [1967261] - selftests: refactor get_netdev_name function (Ivan Vecera) [1967261] - selftests: extract common functions in ethtool-common.sh (Ivan Vecera) [1967261] - netdevsim: support ethtool ring and coalesce settings (Ivan Vecera) [1967261] - netdevsim: move ethtool pause params in separate struct (Ivan Vecera) [1967261] - ethtool: add ETHTOOL_COALESCE_ALL_PARAMS define (Ivan Vecera) [1967261] - ethtool: netlink: add missing netdev_features_change() call (Ivan Vecera) [1967261] - ethtool: remove unneeded semicolon (Ivan Vecera) [1967261] - ethtool: allow netdev driver to define phy tunables (Ivan Vecera) [1967261] - ethtool: mark netlink family as __ro_after_init (Ivan Vecera) [1967261] - ethtool: Add 100base-FX link mode entries (Ivan Vecera) [1967261] - ethtool: fix error handling in ethtool_phys_id (Ivan Vecera) [1967261] - ethtool: allow flow-type ether without IP protocol field (Ivan Vecera) [1967261] - net: phy: Uninline PHY ethtool statistics operations (Ivan Vecera) [1967261] - net: phy: Define PHY statistics ethtool_phy_ops (Ivan Vecera) [1967261] - net: ethtool: Remove PHYLIB direct dependency (Ivan Vecera) [1967261] - net: phy: Register ethtool PHY operations (Ivan Vecera) [1967261] - genksyms: Ignore module scoped _Static_assert() (Ivan Vecera) [1967261] - net: ethtool: Introduce ethtool_phy_ops (Ivan Vecera) [1967261] - Documentation: networking: fix ethtool-netlink table formats (Ivan Vecera) [1967261] - ethtool: ioctl: Use array_size() in copy_to_user() (Ivan Vecera) [1967261] - net: ethtool: cabletest: Make ethnl_act_cable_test_tdr_cfg static (Ivan Vecera) [1967261] - SUNRPC: Handle major timeout in xprt_adjust_timeout() (Scott Mayhew) [1979070] - gro_cells: reduce number of synchronize_net() calls (Ivan Vecera) [1959015] - net: make sure napi_list is safe for RCU traversal (Ivan Vecera) [1959015] - net: manage napi add/del idempotence explicitly (Ivan Vecera) [1959015] - net: remove napi_hash_del() from driver-facing API (Ivan Vecera) [1959015] - net: disable netpoll on fresh napis (Ivan Vecera) [1959015] - usb: dwc3-meson-g12a: fix usb2 PHY glue init when phy0 is disabled (Torez Smith) [1942772] - xhci: Fix 5.12 regression of missing xHC cache clearing command after a Stall (Torez Smith) [1942772] - xhci: fix giving back URB with incorrect status regression in 5.12 (Torez Smith) [1942772] - usb: typec: ucsi: Clear pending after acking connector change (Torez Smith) [1942772] - net: hso: check for allocation failure in hso_create_bulk_serial_device() (Torez Smith) [1942772] - usb: typec: tcpm: Fix wrong handling in GET_SINK_CAP (Torez Smith) [1942772] - net: hso: fix NULL-deref on disconnect regression (Torez Smith) [1942772] - USB: CDC-ACM: fix poison/unpoison imbalance (Torez Smith) [1942772] - usbip: vudc: fix missing unlock on error in usbip_sockfd_store() (Torez Smith) [1942772] - usb: xhci-mtk: improve bandwidth scheduling with TT (Torez Smith) [1942772] - usb: xhci-mtk: remove or operator for setting schedule parameters (Torez Smith) [1942772] - usb: typec: tcpm: Wait for vbus discharge to VSAFE0V before toggling (Torez Smith) [1942772] - software node: Provide replacement for device_add_properties() (Torez Smith) [1942772] - driver core: platform: Reimplement devm_platform_ioremap_resource (Torez Smith) [1942772] - USB: usblp: initialize newChannel (Torez Smith) [1942772] - net: hso: fix null-ptr-deref during tty device unregistration (Torez Smith) [1942772] - usbip: synchronize event handler with sysfs code paths (Torez Smith) [1942772] - usbip: vudc synchronize sysfs code paths (Torez Smith) [1942772] - usbip: stub-dev synchronize sysfs code paths (Torez Smith) [1942772] - usbip: add sysfs_lock to synchronize sysfs code paths (Torez Smith) [1942772] - drivers: net: fix memory leak in peak_usb_create_dev (Torez Smith) [1942772] - thunderbolt: Fix off by one in tb_port_find_retimer() (Torez Smith) [1942772] - thunderbolt: Fix a leak in tb_retimer_add() (Torez Smith) [1942772] - usb: dwc2: Prevent core suspend when port connection flag is 0 (Torez Smith) [1942772] - usb: dwc2: Fix HPRT0.PrtSusp bit setting for HiKey 960 board. (Torez Smith) [1942772] - usb: xhci-mtk: fix broken streams issue on 0.96 xHCI (Torez Smith) [1942772] - usbip: vhci_hcd fix shift out-of-bounds in vhci_hub_control() (Torez Smith) [1942772] - USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem (Torez Smith) [1942772] - USB: cdc-acm: do not log successful probe on later errors (Torez Smith) [1942772] - USB: cdc-acm: always claim data interface (Torez Smith) [1942772] - USB: cdc-acm: use negation for NULL checks (Torez Smith) [1942772] - USB: cdc-acm: clean up probe error labels (Torez Smith) [1942772] - USB: cdc-acm: drop redundant driver-data reset (Torez Smith) [1942772] - USB: cdc-acm: drop redundant driver-data assignment (Torez Smith) [1942772] - USB: cdc-acm: fix use-after-free after probe failure (Torez Smith) [1942772] - USB: cdc-acm: fix double free on probe failure (Torez Smith) [1942772] - USB: cdc-acm: downgrade message to debug (Torez Smith) [1942772] - USB: cdc-acm: untangle a circular dependency between callback and softint (Torez Smith) [1942772] - cdc-acm: fix BREAK rx code path adding necessary calls (Torez Smith) [1942772] - usb: dwc3: pci: Enable dis_uX_susphy_quirk for Intel Merrifield (Torez Smith) [1942772] - usb: dwc3: qcom: skip interconnect init for ACPI probe (Torez Smith) [1942772] - can: peak_usb: Revert "can: peak_usb: add forgotten supported devices" (Torez Smith) [1942772] - r8152: limit the RX buffer size of RTL8153A for USB 2.0 (Torez Smith) [1942772] - net: cdc-phonet: fix data-interface release on probe failure (Torez Smith) [1942772] - usb: typec: tcpm: Skip sink_cap query only when VDM sm is busy (Torez Smith) [1942772] - usb: typec: tcpm: Invoke power_supply_changed for tcpm-source-psy- (Torez Smith) [1942772] - usb: typec: Remove vdo[3] part of tps6598x_rx_identity_reg struct (Torez Smith) [1942772] - usb-storage: Add quirk to defeat Kindle's automatic unload (Torez Smith) [1942772] - usbip: Fix incorrect double assignment to udc->ud.tcp_rx (Torez Smith) [1942772] - can: kvaser_usb: Add support for USBcan Pro 4xHS (Torez Smith) [1942772] - can: peak_usb: add forgotten supported devices (Torez Smith) [1942772] - xhci: Fix repeated xhci wake after suspend due to uncleared internal wake state (Torez Smith) [1942772] - usb: xhci: Fix ASMedia ASM1042A and ASM3242 DMA addressing (Torez Smith) [1942772] - xhci: Improve detection of device initiated wake signal. (Torez Smith) [1942772] - usb: xhci: do not perform Soft Retry for some xHCI hosts (Torez Smith) [1942772] - usbip: fix vudc usbip_sockfd_store races leading to gpf (Torez Smith) [1942772] - usbip: fix vhci_hcd attach_store() races leading to gpf (Torez Smith) [1942772] - usbip: fix stub_dev usbip_sockfd_store() races leading to gpf (Torez Smith) [1942772] - usbip: fix vudc to check for stream socket (Torez Smith) [1942772] - usbip: fix vhci_hcd to check for stream socket (Torez Smith) [1942772] - usbip: fix stub_dev to check for stream socket (Torez Smith) [1942772] - USB: usblp: fix a hang in poll() if disconnected (Torez Smith) [1942772] - usb: dwc3: qcom: Add missing DWC3 OF node refcount decrement (Torez Smith) [1942772] - usb: dwc3: qcom: Honor wakeup enabled/disabled state (Torez Smith) [1942772] - usb: dwc3: qcom: add ACPI device id for sc8180x (Torez Smith) [1942772] - Goodix Fingerprint device is not a modem (Torez Smith) [1942772] - USB: serial: io_edgeport: fix memory leak in edge_startup (Torez Smith) [1942772] - USB: serial: ch341: add new Product ID (Torez Smith) [1942772] - USB: serial: cp210x: add some more GE USB IDs (Torez Smith) [1942772] - USB: serial: cp210x: add ID for Acuity Brands nLight Air Adapter (Torez Smith) [1942772] - net: usb: log errors to dmesg/syslog (Torez Smith) [1942772] - net: usb: cdc_ncm: emit dev_err on error paths (Torez Smith) [1942772] - thunderbolt: Increase runtime PM reference count on DP tunnel discovery (Torez Smith) [1942772] - thunderbolt: Initialize HopID IDAs in tb_switch_alloc() (Torez Smith) [1942772] - net: usb: qmi_wwan: allow qmimux add/del with master up (Torez Smith) [1942772] - Revert "r8152: adjust the settings about MAC clock speed down for RTL8153" (Torez Smith) [1942772] - net: usb: qmi_wwan: support ZTE P685M modem (Torez Smith) [1942772] - r8152: spilt rtl_set_eee_plus and r8153b_green_en (Torez Smith) [1942772] - r8152: replace netif_err with dev_err (Torez Smith) [1942772] - r8152: check if the pointer of the function exists (Torez Smith) [1942772] - r8152: enable U1/U2 for USB_SPEED_SUPER (Torez Smith) [1942772] - usb: misc: usb3503: Fix logic in usb3503_init() (Torez Smith) [1942772] - usb: Replace lkml.org links with lore (Torez Smith) [1942772] - usb: quirks: add quirk to start video capture on ELMO L-12F document camera reliable (Torez Smith) [1942772] - USB: quirks: sort quirk entries (Torez Smith) [1942772] - USB: serial: drop bogus to_usb_serial_port() checks (Torez Smith) [1942772] - USB: serial: drop if with an always false condition (Torez Smith) [1942772] - usb: typec: tcpm: Get Sink VDO from fwnode (Torez Smith) [1942772] - dt-bindings: connector: Add SVDM VDO properties (Torez Smith) [1942772] - usb: typec: displayport: Fill the negotiated SVDM Version in the header (Torez Smith) [1942772] - usb: typec: ucsi: Determine common SVDM Version (Torez Smith) [1942772] - usb: typec: tcpm: Determine common SVDM Version (Torez Smith) [1942772] - usb: pd: Make SVDM Version configurable in VDM header (Torez Smith) [1942772] - usb: typec: Manage SVDM version (Torez Smith) [1942772] - usb: dwc3: gadget: Fix dep->interval for fullspeed interrupt (Torez Smith) [1942772] - usb: dwc3: gadget: Fix setting of DEPCFG.bInterval_m1 (Torez Smith) [1942772] - USB: serial: option: update interface mapping for ZTE P685M (Torez Smith) [1942772] - usb: dwc3: gadget: Track connected SSP rate and lane count (Torez Smith) [1942772] - usb: dwc3: gadget: Implement setting of SSP rate (Torez Smith) [1942772] - usb: dwc3: core: Check maximum_speed SSP genXxY (Torez Smith) [1942772] - usb: common: Parse for USB SSP genXxY (Torez Smith) [1942772] - usb: dwc2: Fix endpoint direction check in ep_from_windex (Torez Smith) [1942772] - usb: dwc3: fix clock issue during resume in OTG mode (Torez Smith) [1942772] - xhci: ext-caps: Use software node API with the properties (Torez Smith) [1942772] - usb: dwc3: host: Use software node API with the properties (Torez Smith) [1942772] - r8152: replace several functions about phy patch request (Torez Smith) [1942772] - usb: dwc3: qcom: Constify the software node (Torez Smith) [1942772] - usb: dwc3: haps: Constify the software node (Torez Smith) [1942772] - usb: dwc2: pci: Drop the empty quirk function (Torez Smith) [1942772] - thunderbolt: Add support for native USB4 _OSC (Torez Smith) [1942772] - thunderbolt: Allow disabling XDomain protocol (Torez Smith) [1942772] - thunderbolt: Add support for PCIe tunneling disabled (SL5) (Torez Smith) [1942772] - thunderbolt: dma_test: Drop unnecessary include (Torez Smith) [1942772] - thunderbolt: Add clarifying comments about USB4 terms router and adapter (Torez Smith) [1942772] - thunderbolt: switch: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: nhi: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: path: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: eeprom: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: ctl: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - usb: pd: Reland VDO definitions of PD2.0 (Torez Smith) [1942772] - NET: usb: qmi_wwan: Adding support for Cinterion MV31 (Torez Smith) [1942772] - usb: pd: Update VDO definitions (Torez Smith) [1942772] - xhci: fix bounce buffer usage for non-sg list case (Torez Smith) [1942772] - usb: xhci-mtk: break loop when find the endpoint to drop (Torez Smith) [1942772] - usb: typec: Return void in typec_partner_set_pd_revision (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Enable data path when partner is USB Comm capable (Torez Smith) [1942772] - usb: typec: tcpci: Add Callback to Usb Communication capable partner (Torez Smith) [1942772] - usb: typec: tcpm: Add Callback to Usb Communication capable partner (Torez Smith) [1942772] - usb: typec: tcpm: Set in_ams flag when Source caps have been received (Torez Smith) [1942772] - usb: typec: tcpm: Handle vbus shutoff when in source mode (Torez Smith) [1942772] - usb: typec: Add typec_partner_set_pd_revision (Torez Smith) [1942772] - usb: typec: Provide PD Specification Revision for cable and partner (Torez Smith) [1942772] - usb: typec: Standardize PD Revision format with Type-C Revision (Torez Smith) [1942772] - usb: xhci-mtk: skip dropping bandwidth of unchecked endpoints (Torez Smith) [1942772] - USB: serial: ftdi_sio: restore divisor-encoding comments (Torez Smith) [1942772] - USB: serial: ftdi_sio: fix FTX sub-integer prescaler (Torez Smith) [1942772] - USB: serial: cp210x: clean up auto-RTS handling (Torez Smith) [1942772] - USB: serial: cp210x: fix RTS handling (Torez Smith) [1942772] - USB: serial: cp210x: clean up printk zero padding (Torez Smith) [1942772] - USB: serial: cp210x: clean up flow-control debug message (Torez Smith) [1942772] - USB: serial: cp210x: drop shift macros (Torez Smith) [1942772] - USB: serial: cp210x: fix modem-control handling (Torez Smith) [1942772] - USB: serial: cp210x: suppress modem-control errors (Torez Smith) [1942772] - xhci: handle halting transfer event properly after endpoint stop and halt raced. (Torez Smith) [1942772] - xhci: Check for pending reset endpoint command before queueing a new one. (Torez Smith) [1942772] - xhci: remove obsolete dequeue pointer moving code (Torez Smith) [1942772] - xhci: introduce a new move_dequeue_past_td() function to replace old code. (Torez Smith) [1942772] - xhci: handle stop endpoint command completion with endpoint in running state. (Torez Smith) [1942772] - xhci: Fix halted endpoint at stop endpoint command completion (Torez Smith) [1942772] - xhci: split handling halted endpoints into two steps (Torez Smith) [1942772] - xhci: move and rename xhci_cleanup_halted_endpoint() (Torez Smith) [1942772] - xhci: turn cancelled td cleanup to its own function (Torez Smith) [1942772] - xhci: store TD status in the td struct instead of passing it along (Torez Smith) [1942772] - xhci: use xhci_td_cleanup() helper when giving back cancelled URBs (Torez Smith) [1942772] - xhci: move xhci_td_cleanup so it can be called by more functions (Torez Smith) [1942772] - xhci: Add xhci_reset_halted_ep() helper function (Torez Smith) [1942772] - xhci: flush endpoint start to reduce race risk with stop endpoint command. (Torez Smith) [1942772] - xhci: Check link TRBs when updating ring enqueue and dequeue pointers. (Torez Smith) [1942772] - xhci: avoid DMA double fetch when reading event trb type. (Torez Smith) [1942772] - xhci: remove extra loop in interrupt context (Torez Smith) [1942772] - xhci: check slot_id is valid before gathering slot info (Torez Smith) [1942772] - xhci: prevent a theoretical endless loop while preparing rings. (Torez Smith) [1942772] - xhci: remove xhci_stream_id_to_ring() helper (Torez Smith) [1942772] - xhci: add xhci_virt_ep_to_ring() helper (Torez Smith) [1942772] - xhci: check virt_dev is valid before dereferencing it (Torez Smith) [1942772] - xhci: add xhci_get_virt_ep() helper (Torez Smith) [1942772] - xhci: remove unused event parameter from completion handlers (Torez Smith) [1942772] - xhci: adjust parameters passed to cleanup_halted_endpoint() (Torez Smith) [1942772] - xhci: get isochronous ring directly from endpoint structure (Torez Smith) [1942772] - xhci: Avoid parsing transfer events several times (Torez Smith) [1942772] - net: qmi_wwan: Add pass through mode (Torez Smith) [1942772] - net: usb: qmi_wwan: add qmap id sysfs file for qmimux interfaces (Torez Smith) [1942772] - net: usb: cdc_ether: added support for Thales Cinterion PLSx3 modem family. (Torez Smith) [1942772] - thunderbolt: Fix possible NULL pointer dereference in tb_acpi_add_link() (Torez Smith) [1942772] - thunderbolt: switch: Fix function name in the header (Torez Smith) [1942772] - thunderbolt: tunnel: Fix misspelling of 'receive_path' (Torez Smith) [1942772] - thunderbolt: icm: Fix a couple of formatting issues (Torez Smith) [1942772] - thunderbolt: switch: Demote a bunch of non-conformant kernel-doc headers (Torez Smith) [1942772] - thunderbolt: tb: Kernel-doc function headers should document their parameters (Torez Smith) [1942772] - thunderbolt: nhi: Demote some non-conformant kernel-doc headers (Torez Smith) [1942772] - thunderbolt: xdomain: Fix 'tb_unregister_service_driver()'s 'drv' param (Torez Smith) [1942772] - thunderbolt: eeprom: Demote non-conformant kernel-doc headers to standard comment blocks (Torez Smith) [1942772] - USB: serial: mos7720: fix error code in mos7720_write() (Torez Smith) [1942772] - thunderbolt: ctl: Demote non-conformant kernel-doc headers (Torez Smith) [1942772] - thunderbolt: cap: Fix kernel-doc formatting issue (Torez Smith) [1942772] - thunderbolt: dma_port: Check 'dma_port_flash_write_block()'s return value (Torez Smith) [1942772] - USB: serial: option: Adding support for Cinterion MV31 (Torez Smith) [1942772] - can: mcba_usb: remove h from printk format specifier (Torez Smith) [1942772] - usbnet: fix the indentation of one code snippet (Torez Smith) [1942772] - usb: usb251xb: Use of_device_get_match_data() (Torez Smith) [1942772] - usb: dwc2: Make "trimming xfer length" a debug message (Torez Smith) [1942772] - usb: dwc2: Abort transaction after errors with unknown reason (Torez Smith) [1942772] - usb: dwc2: Do not update data length if it is 0 on inbound transfers (Torez Smith) [1942772] - usb: xhci-mtk: fix unreleased bandwidth data (Torez Smith) [1942772] - USB: serial: mos7840: fix error code in mos7840_write() (Torez Smith) [1942772] - USB: usblp: don't call usb_set_interface if there's a single alt (Torez Smith) [1942772] - USB: serial: cp210x: add pid/vid for WSDA-200-USB (Torez Smith) [1942772] - usb: typec: tcpci_maxim: add terminating newlines to logging (Torez Smith) [1942772] - usb: typec: tcpci_maxim: remove redundant assignment (Torez Smith) [1942772] - usb: typec: tcpm: Create legacy PDOs for PD2 connection (Torez Smith) [1942772] - net: usb: qmi_wwan: added support for Thales Cinterion PLSx3 modem family (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Drop GPIO includes (Torez Smith) [1942772] - usb: typec: tcpm: Respond Wait if VDM state machine is running (Torez Smith) [1942772] - usb: typec: tcpm: Protocol Error handling (Torez Smith) [1942772] - usb: typec: tcpm: AMS and Collision Avoidance (Torez Smith) [1942772] - net: usb: cdc_ncm: don't spew notifications (Torez Smith) [1942772] - usb: typec: ucsi: Add conditional dependency on USB role switch (Torez Smith) [1942772] - usb: ch9: Add USB 3.2 SSP attributes (Torez Smith) [1942772] - USB: serial: f81232: drop short control-transfer checks (Torez Smith) [1942772] - USB: serial: io_ti: fix a debug-message copy-paste error (Torez Smith) [1942772] - USB: serial: io_ti: drop short control-transfer check (Torez Smith) [1942772] - USB: serial: upd78f0730: drop short control-transfer check (Torez Smith) [1942772] - USB: serial: cp210x: add copyright notice (Torez Smith) [1942772] - USB: serial: cp210x: drop unused includes (Torez Smith) [1942772] - USB: serial: cp210x: drop short control-transfer checks (Torez Smith) [1942772] - USB: serial: cp210x: update control-characters on every change (Torez Smith) [1942772] - USB: serial: cp210x: set IXOFF thresholds (Torez Smith) [1942772] - USB: serial: cp210x: add support for software flow control (Torez Smith) [1942772] - USB: serial: pl2303: fix line-speed handling on newer chips (Torez Smith) [1942772] - xhci: tegra: Delay for disabling LFPS detector (Torez Smith) [1942772] - xhci: make sure TRB is fully written before giving it to the controller (Torez Smith) [1942772] - usb: dwc3: qcom: add URS Host support for sdm845 ACPI boot (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Alder Lake-P (Torez Smith) [1942772] - usb: dwc3: pci: ID for Tiger Lake CPU (Torez Smith) [1942772] - usb: dwc3: pci: Register a software node for the dwc3 platform device (Torez Smith) [1942772] - thunderbolt: Add support for de-authorizing devices (Torez Smith) [1942772] - nt: usb: USB_RTL8153_ECM should not default to y (Torez Smith) [1942772] - USB: dwc3: document gadget_max_speed (Torez Smith) [1942772] - usb: dwc3: gadget: Disable Vendor Test LMP Received event (Torez Smith) [1942772] - USB: serial: cp210x: add new VID/PID for supporting Teraoka AD2000 (Torez Smith) [1942772] - r8153_ecm: Add Lenovo Powered USB-C Hub as a fallback of r8152 (Torez Smith) [1942772] - r8152: Add Lenovo Powered USB-C Travel Hub (Torez Smith) [1942772] - USB: ehci: fix an interrupt calltrace error (Torez Smith) [1942772] - ehci: fix EHCI host controller initialization sequence (Torez Smith) [1942772] - usb: typec: ucsi: Add support for USB role switch (Torez Smith) [1942772] - usb: dwc2: disable Link Power Management on STM32MP15 HS OTG (Torez Smith) [1942772] - usb: dwc2: enable FS/LS PHY clock select on STM32MP15 FS OTG (Torez Smith) [1942772] - usb: dwc2: set ahbcfg parameter for STM32MP15 OTG HS and FS (Torez Smith) [1942772] - usb: dwc3: Simplify with dev_err_probe() (Torez Smith) [1942772] - usb: dwc3: keystone: Simplify with dev_err_probe() (Torez Smith) [1942772] - usb: dwc3: core: Replace devm_reset_control_array_get() (Torez Smith) [1942772] - USB: serial: mos7720: improve OOM-handling in read_mos_reg() (Torez Smith) [1942772] - rndis_host: set proper input size for OID_GEN_PHYSICAL_MEDIUM request (Torez Smith) [1942772] - thunderbolt: Start lane initialization after sleep (Torez Smith) [1942772] - thunderbolt: Constify static attribute_group structs (Torez Smith) [1942772] - qmi_wwan: Increase headroom for QMAP SKBs (Torez Smith) [1942772] - usb: usbip: Use DEFINE_SPINLOCK() for spinlock (Torez Smith) [1942772] - usb: dwc3: gadget: Clear wait flag on dequeue (Torez Smith) [1942772] - usb: typec: Send uevent for num_altmodes update (Torez Smith) [1942772] - usb: typec: Fix copy paste error for NVIDIA alt-mode description (Torez Smith) [1942772] - kcov, usb: hide in_serving_softirq checks in __usb_hcd_giveback_urb (Torez Smith) [1942772] - thunderbolt: Drop duplicated 0x prefix from format string (Torez Smith) [1942772] - net: cdc_ncm: correct overhead in delayed_ndp_size (Torez Smith) [1942772] - net: usb: Use DEFINE_SPINLOCK() for spinlock (Torez Smith) [1942772] - usb: uas: Add PNY USB Portable SSD to unusual_uas (Torez Smith) [1942772] - net: usb: qmi_wwan: add Quectel EM160R-GL (Torez Smith) [1942772] - usb: usbip: vhci_hcd: protect shift size (Torez Smith) [1942772] - USB: usblp: fix DMA to stack (Torez Smith) [1942772] - usb: dwc3: gadget: Preserve UDC max speed setting (Torez Smith) [1942772] - usb: dwc3: gadget: Allow runtime suspend if UDC unbinded (Torez Smith) [1942772] - usb: dwc3: gadget: Introduce a DWC3 VBUS draw callback (Torez Smith) [1942772] - usb: dwc3: add imx8mp dwc3 glue layer driver (Torez Smith) [1942772] - USB: serial: iuu_phoenix: fix DMA from stack (Torez Smith) [1942772] - USB: serial: option: add LongSung M5710 module support (Torez Smith) [1942772] - USB: serial: option: add Quectel EM160R-GL (Torez Smith) [1942772] - CDC-NCM: remove "connected" log message (Torez Smith) [1942772] - usb: dwc3: ulpi: Fix USB2.0 HS/FS/LS PHY suspend regression (Torez Smith) [1942772] - usb: dwc3: ulpi: Replace CPU-based busyloop with Protocol-based one (Torez Smith) [1942772] - usb: dwc3: ulpi: Use VStsDone to detect PHY regs access completion (Torez Smith) [1942772] - usb: dwc3: drd: Improve dwc3_get_extcon() style (Torez Smith) [1942772] - usb: dwc3: drd: Avoid error when extcon is missing (Torez Smith) [1942772] - USB: usbtmc: Bump USBTMC_API_VERSION value (Torez Smith) [1942772] - USB: usbtmc: Add separate USBTMC_IOCTL_GET_SRQ_STB (Torez Smith) [1942772] - USB: usbtmc: Add USBTMC_IOCTL_GET_STB (Torez Smith) [1942772] - USB: usbtmc: Fix reading stale status byte (Torez Smith) [1942772] - kcov, usbip: collect coverage from vhci_rx_loop (Torez Smith) [1942772] - USB: yurex: fix control-URB timeout handling (Torez Smith) [1942772] - usb: dwc3: meson-g12a: disable clk on error handling path in probe (Torez Smith) [1942772] - USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Configure HPD first for HPD+IRQ request (Torez Smith) [1942772] - USB: cdc-wdm: Fix use after free in service_outstanding_interrupt(). (Torez Smith) [1942772] - USB: cdc-acm: blacklist another IR Droid device (Torez Smith) [1942772] - thunderbolt: Use kmemdup instead of kzalloc and memcpy (Torez Smith) [1942772] - usb: ucsi: convert comma to semicolon (Torez Smith) [1942772] - usb: typec: tcpm: convert comma to semicolon (Torez Smith) [1942772] - usb: typec: tcpm: Update vbus_vsafe0v on init (Torez Smith) [1942772] - usb: typec: tcpci: Enable bleed discharge when auto discharge is enabled (Torez Smith) [1942772] - usb: typec: Add class for plug alt mode device (Torez Smith) [1942772] - USB: typec: tcpci: Add Bleed discharge to POWER_CONTROL definition (Torez Smith) [1942772] - USB: typec: tcpm: Add a 30ms room for tPSSourceOn in PR_SWAP (Torez Smith) [1942772] - USB: typec: tcpm: Fix PR_SWAP error handling (Torez Smith) [1942772] - USB: typec: tcpm: Hard Reset after not receiving a Request (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Configure cable generation value for USB4 (Torez Smith) [1942772] - net: usb: convert comma to semicolon (Torez Smith) [1942772] - USB: UAS: introduce a quirk to set no_write_same (Torez Smith) [1942772] - USB: serial: ftdi_sio: log the CBUS GPIO validity (Torez Smith) [1942772] - USB: serial: ftdi_sio: drop GPIO line checking dead code (Torez Smith) [1942772] - USB: serial: ftdi_sio: report the valid GPIO lines to gpiolib (Torez Smith) [1942772] - drivers: usb: atm: use atm_info() instead of atm_printk(KERN_INFO ... (Torez Smith) [1942772] - drivers: usb: atm: reduce noise (Torez Smith) [1942772] - USB: serial: option: add interface-number sanity check to flag handling (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Enable VSAFE0V signalling (Torez Smith) [1942772] - usb: typec: tcpci: Add support to report vSafe0V (Torez Smith) [1942772] - usb: typec: tcpm: Introduce vsafe0v for vbus (Torez Smith) [1942772] - usb: typec: tcpm: Clear send_discover in tcpm_check_send_discover (Torez Smith) [1942772] - usb: typec: tcpm: Pass down negotiated rev to update retry count (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Use correct response message bits (Torez Smith) [1942772] - xhci: Give USB2 ports time to enter U3 in bus suspend (Torez Smith) [1942772] - xhci-pci: Allow host runtime PM as default for Intel Maple Ridge xHCI (Torez Smith) [1942772] - xhci-pci: Allow host runtime PM as default for Intel Alpine Ridge LP (Torez Smith) [1942772] - usb: xhci: Use temporary buffer to consolidate SG (Torez Smith) [1942772] - usb: xhci: Set quirk for XHCI_SG_TRB_CACHE_SIZE_QUIRK (Torez Smith) [1942772] - USB: legotower: fix logical error in recent commit (Torez Smith) [1942772] - USB: legousbtower: use usb_control_msg_recv() (Torez Smith) [1942772] - USB: add RESET_RESUME quirk for Snapscan 1212 (Torez Smith) [1942772] - usb: typec: tps6598x: Export some power supply properties (Torez Smith) [1942772] - usb: typec: tps6598x: Select USB_ROLE_SWITCH and REGMAP_I2C (Torez Smith) [1942772] - USB: core: drop pipe-type check from new control-message helpers (Torez Smith) [1942772] - USB: core: return -EREMOTEIO on short usb_control_msg_recv() (Torez Smith) [1942772] - USB: core: drop short-transfer check from usb_control_msg_send() (Torez Smith) [1942772] - USB: apple-mfi-fastcharge: Fix use after free in probe (Torez Smith) [1942772] - Revert "usb-storage: fix sdev->host->dma_dev" (Torez Smith) [1942772] - Revert "uas: fix sdev->host->dma_dev" (Torez Smith) [1942772] - Revert "uas: bump hw_max_sectors to 2048 blocks for SS or faster drives" (Torez Smith) [1942772] - USB: serial: cp210x: clean up dtr_rts() (Torez Smith) [1942772] - USB: serial: cp210x: refactor flow-control handling (Torez Smith) [1942772] - USB: serial: cp210x: drop flow-control debugging (Torez Smith) [1942772] - USB: serial: cp210x: set terminal settings on open (Torez Smith) [1942772] - USB: serial: cp210x: clean up line-control handling (Torez Smith) [1942772] - USB: serial: cp210x: return early on unchanged termios (Torez Smith) [1942772] - USB: serial: kl5kusb105: fix memleak on open (Torez Smith) [1942772] - USB: serial: ch341: sort device-id entries (Torez Smith) [1942772] - USB: serial: ch341: add new Product ID for CH341A (Torez Smith) [1942772] - USB: serial: option: fix Quectel BG96 matching (Torez Smith) [1942772] - can: pcan_usb_core: fix fall-through warnings for Clang (Torez Smith) [1942772] - usb: typec: stusb160x: fix power-opmode property with typec-power-opmode (Torez Smith) [1942772] - USB: serial: option: add support for Thales Cinterion EXS82 (Torez Smith) [1942772] - usb: typec: Add type sysfs attribute file for partners (Torez Smith) [1942772] - usb: common: ulpi: Constify static attribute_group struct (Torez Smith) [1942772] - usb: typec: Constify static attribute_group structs (Torez Smith) [1942772] - USB: core: Constify static attribute_group structs (Torez Smith) [1942772] - usb: typec: tcpm: Stay in SNK_TRY_WAIT_DEBOUNCE_CHECK_VBUS till Rp is seen (Torez Smith) [1942772] - usb: typec: tcpm: Disregard vbus off while in PR_SWAP_SNK_SRC_SOURCE_ON (Torez Smith) [1942772] - usb: typec: Expose Product Type VDOs via sysfs (Torez Smith) [1942772] - usb: pd: DFP product types (Torez Smith) [1942772] - usb: Fix fall-through warnings for Clang (Torez Smith) [1942772] - usbnet: ipheth: fix connectivity with iOS 14 (Torez Smith) [1942772] - USB: core: Change pK for __user pointers to px (Torez Smith) [1942772] - USB: core: Fix regression in Hercules audio card (Torez Smith) [1942772] - USB: quirks: Add USB_QUIRK_DISCONNECT_SUSPEND quirk for Lenovo A630Z TIO built-in usb-audio card (Torez Smith) [1942772] - can: kvaser_usb: Add new Kvaser hydra devices (Torez Smith) [1942772] - can: kvaser_usb: kvaser_usb_hydra: Add support for new device variant (Torez Smith) [1942772] - can: kvaser_usb: Add new Kvaser Leaf v2 devices (Torez Smith) [1942772] - can: kvaser_usb: Add USB_{LEAF,HYDRA}_PRODUCT_ID_END defines (Torez Smith) [1942772] - USB: serial: option: add Fibocom NL668 variants (Torez Smith) [1942772] - usb: typec: Fix num_altmodes kernel-doc error (Torez Smith) [1942772] - r8153_ecm: avoid to be prior to r8152 driver (Torez Smith) [1942772] - net: usb: qmi_wwan: Set DTR quirk for MR400 (Torez Smith) [1942772] - usb: typec: Add plug num_altmodes sysfs attr (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Fix the compatible string (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Fix uninitialized return variable (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Enable auto discharge disconnect (Torez Smith) [1942772] - usb: typec: tcpci: Implement Auto discharge disconnect callbacks (Torez Smith) [1942772] - usb: typec: tcpm: Implement enabling Auto Discharge disconnect support (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Fix vbus stuck on upon diconnecting sink (Torez Smith) [1942772] - usb: typec: tcpci: frs sourcing vbus callback (Torez Smith) [1942772] - usb: typec: tcpm: frs sourcing vbus callback (Torez Smith) [1942772] - usb: typec: tcpm: Refactor logic for new-source-frs-typec-current (Torez Smith) [1942772] - usb: typec: Add number of altmodes partner attr (Torez Smith) [1942772] - usb: pd: Add captive Type C cable type (Torez Smith) [1942772] - USB: apple-mfi-fastcharge: Fix kfree after failed kzalloc (Torez Smith) [1942772] - usb: typec: Remove one bit support for the Thunderbolt rounded/non-rounded cable (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Configure Thunderbolt cable generation bits (Torez Smith) [1942772] - usb: typec: Correct the bit values for the Thunderbolt rounded/non-rounded cable support (Torez Smith) [1942772] - can: kvaser_usb: kvaser_usb_hydra: Fix KCAN bittiming limits (Torez Smith) [1942772] - cx82310_eth: fix error return code in cx82310_bind() (Torez Smith) [1942772] - usb: typec: qcom-pmic-typec: fix builtin build errors (Torez Smith) [1942772] - can: peak_usb: fix potential integer overflow on shift of a int (Torez Smith) [1942772] - can: mcba_usb: mcba_usb_start_xmit(): first fill skb, then pass to can_put_echo_skb() (Torez Smith) [1942772] - usb: hcd.h: Remove RUN_CONTEXT (Torez Smith) [1942772] - USB: storage: avoid use of uninitialized values in error path (Torez Smith) [1942772] - usb: fix a few cases of -Wfallthrough (Torez Smith) [1942772] - usbnet: switch to core handling of rx/tx byte/packet counters (Torez Smith) [1942772] - qmi_wwan: switch to core handling of rx/tx byte/packet counters (Torez Smith) [1942772] - net: usb: fix spelling typo in cdc_ncm.c (Torez Smith) [1942772] - usb: typec: ucsi: Work around PPM losing change information (Torez Smith) [1942772] - usb: typec: ucsi: acpi: Always decode connector change information (Torez Smith) [1942772] - net/usb/r8153_ecm: support ECM mode for RTL8153 (Torez Smith) [1942772] - USB: serial: mos7720: fix parallel-port state restore (Torez Smith) [1942772] - USB: serial: remove write wait queue (Torez Smith) [1942772] - USB: serial: digi_acceleport: fix write-wakeup deadlocks (Torez Smith) [1942772] - USB: serial: keyspan_pda: drop redundant usb-serial pointer (Torez Smith) [1942772] - USB: serial: keyspan_pda: use BIT() macro (Torez Smith) [1942772] - USB: serial: keyspan_pda: add write-fifo support (Torez Smith) [1942772] - USB: serial: keyspan_pda: increase transmitter threshold (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write implementation (Torez Smith) [1942772] - USB: serial: keyspan_pda: refactor write-room handling (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write unthrottling (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix tx-unthrottle use-after-free (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write-wakeup use-after-free (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix stalled writes (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write deadlock (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix dropped unthrottle interrupts (Torez Smith) [1942772] - net: usb: r8152: Fix a couple of spelling errors in fw_phy_nc's docs (Torez Smith) [1942772] - net: usb: lan78xx: Remove lots of set but unused 'ret' variables (Torez Smith) [1942772] - net: usb: r8152: Provide missing documentation for some struct members (Torez Smith) [1942772] - can: peak_usb: peak_usb_get_ts_time(): fix timestamp wrapping (Torez Smith) [1942772] - can: peak_usb: add range checking in decode operations (Torez Smith) [1942772] - net: usb: qmi_wwan: add Telit LE910Cx 0x1230 composition (Torez Smith) [1942772] - kcov, usb: only collect coverage from __usb_hcd_giveback_urb in softirq (Torez Smith) [1942772] - dt-bindings: connector: Add property to set initial current cap for FRS (Torez Smith) [1942772] - usb: xhci: Remove in_interrupt() checks (Torez Smith) [1942772] - usbip: Remove in_interrupt() check (Torez Smith) [1942772] - usb: core: Replace in_interrupt() in comments (Torez Smith) [1942772] - usb: atm: Replace in_interrupt() usage in comment (Torez Smith) [1942772] - USB: sisusbvga: Make console support depend on BROKEN (Torez Smith) [1942772] - usb: host: xhci-mem: remove unneeded break (Torez Smith) [1942772] - usb: storage: freecom: remove unneeded break (Torez Smith) [1942772] - usb: misc: iowarrior: remove unneeded break (Torez Smith) [1942772] - usb: host: ehci-sched: add comment about find_tt() not returning error (Torez Smith) [1942772] - usb: dwc3: ep0: Fix delay status handling (Torez Smith) [1942772] - USB: serial: iuu_phoenix: remove unneeded break (Torez Smith) [1942772] - USB: serial: digi_acceleport: remove in_interrupt() usage (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Alder Lake-S (Torez Smith) [1942772] - net: usb: rtl8150: don't incorrectly assign random MAC addresses (Torez Smith) [1942772] - net: usbnet: use new function dev_fetch_sw_netstats (Torez Smith) [1942772] - net: usb: qmi_wwan: use new function dev_fetch_sw_netstats (Torez Smith) [1942772] - cx82310_eth: use netdev_err instead of dev_err (Torez Smith) [1942772] - cx82310_eth: re-enable ethernet mode after router reboot (Torez Smith) [1942772] - net: usbnet: remove driver version (Torez Smith) [1942772] - net: usb: qmi_wwan: add Cellient MPL200 card (Torez Smith) [1942772] - usbip: vhci_hcd: fix calling usb_hcd_giveback_urb() with irqs enabled (Torez Smith) [1942772] - net: usb: rtl8150: set random MAC address when set_ethernet_addr() fails (Torez Smith) [1942772] - usbnet: Use fallthrough pseudo-keyword (Torez Smith) [1942772] - net/smscx5xx: change to of_get_mac_address() eth_platform_get_mac_address() (Torez Smith) [1942772] - net: usb: pegasus: Proper error handing when setting pegasus' MAC address (Torez Smith) [1942772] - usb: dwc3: gadget: Support up to max stream id (Torez Smith) [1942772] - usb: dwc2: Fix INTR OUT transfers in DDMA mode. (Torez Smith) [1942772] - usb: dwc3: of-simple: Add compatible string for Intel Keem Bay platform (Torez Smith) [1942772] - net: rtl8150: Use the new usb control message API. (Torez Smith) [1942772] - net: pegasus: Use the new usb control message API. (Torez Smith) [1942772] - usb: dwc3: gadget: Return early if no TRB update (Torez Smith) [1942772] - usb: dwc3: gadget: Keep TRBs in request order (Torez Smith) [1942772] - usb: dwc3: gadget: Revise setting IOC when no TRB left (Torez Smith) [1942772] - usb: dwc3: gadget: Look ahead when setting IOC (Torez Smith) [1942772] - usb: dwc3: gadget: Allow restarting a transfer (Torez Smith) [1942772] - usb: dwc3: Stop active transfers before halting the controller (Torez Smith) [1942772] - usb: dwc3: gadget: Rename misleading function names (Torez Smith) [1942772] - usb: dwc3: Add splitdisable quirk for Hisilicon Kirin Soc (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor preparing last TRBs (Torez Smith) [1942772] - usb: dwc3: gadget: Set IOC if not enough for extra TRBs (Torez Smith) [1942772] - usb: dwc3: gadget: Check for number of TRBs prepared (Torez Smith) [1942772] - usb: dwc3: gadget: Return the number of prepared TRBs (Torez Smith) [1942772] - usb: dwc3: ep0: Fix ZLP for OUT ep0 requests (Torez Smith) [1942772] - usb: dwc3: gadget: Improve TRB ZLP setup (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor preparing extra TRB (Torez Smith) [1942772] - usb: dwc3: gadget: Reclaim extra TRBs after request completion (Torez Smith) [1942772] - usb: dwc3: gadget: Check MPS of the request length (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor ep command completion (Torez Smith) [1942772] - usb: dwc3: allocate gadget structure dynamically (Torez Smith) [1942772] - usb: dwc3: core: add phy cleanup for probe error handling (Torez Smith) [1942772] - usb: dwc3: core: don't trigger runtime pm when remove driver (Torez Smith) [1942772] - usb: dwc3: debugfs: do not queue work if try to change mode on non-drd (Torez Smith) [1942772] - usb: dwc3: pci: Allow Elkhart Lake to utilize DSM method for PM functionality (Torez Smith) [1942772] - usb: dwc2: add support for APM82181 USB OTG (Torez Smith) [1942772] - usb: dwc-meson-g12a: Add support for USB on AXG SoCs (Torez Smith) [1942772] - usb: dwc3: gadget: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: core: do not queue work if dr_mode is not USB_DR_MODE_OTG (Torez Smith) [1942772] - usb: dwc3: debugfs: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: qcom: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: ep0: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: core: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: debug: fix checkpatch warning (Torez Smith) [1942772] - usb: dwc3: trace: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: ulpi: fix checkpatch warning (Torez Smith) [1942772] - usb: dwc3: meson: fix checkpatch errors and warnings (Torez Smith) [1942772] - usb: dwc3: debug: fix sparse warning (Torez Smith) [1942772] - usb: dwc3: meson: fix coccinelle WARNING (Torez Smith) [1942772] - usb: dwc3: qcom: Add interconnect support in dwc3 driver (Torez Smith) [1942772] - net: usb: net1080: Remove in_interrupt() comment (Torez Smith) [1942772] - net: usb: kaweth: Remove last user of kaweth_control() (Torez Smith) [1942772] - net: usb: kaweth: Replace kaweth_control() with usb_control_msg() (Torez Smith) [1942772] - net: usb: ax88179_178a: add MCT usb 3.0 adapter (Torez Smith) [1942772] - net: usb: ax88179_178a: fix missing stop entry in driver_info (Torez Smith) [1942772] - net: usb: ax88179_178a: add Toshiba usb 3.0 adapter (Torez Smith) [1942772] - Revert "usbip: Implement a match function to fix usbip" (Torez Smith) [1942772] - usb: dwc2: Fix parameter type in function pointer prototype (Torez Smith) [1942772] - usb: dwc3: core: Print warning on unsupported speed (Torez Smith) [1942772] - usb: dwc3: core: Properly default unspecified speed (Torez Smith) [1942772] - usb: dwc2: Add missing cleanups when usb_add_gadget_udc() fails (Torez Smith) [1942772] - usb: dwc3: gadget: END_TRANSFER before CLEAR_STALL command (Torez Smith) [1942772] - usb: dwc3: gadget: Resume pending requests after CLEAR_STALL (Torez Smith) [1942772] - can: peak_usb: convert to use le32_add_cpu() (Torez Smith) [1942772] - can: pcan_usb: add support of rxerr/txerr counters (Torez Smith) [1942772] - can: pcan_usb: Document the commands sent to the device (Torez Smith) [1942772] - can: mcba_usb: remove redundant initialization of variable err (Torez Smith) [1942772] - usb: dwc2: Always disable regulators on driver teardown (Torez Smith) [1942772] - usbip: simplify the return expression of usbip_core_init() (Torez Smith) [1942772] - rndis_host: increase sleep time in the query-response loop (Torez Smith) [1942772] - Revert "usb: dwc3: meson-g12a: fix shared reset control use" (Torez Smith) [1942772] - net: usb: dm9601: Add USB ID of Keenetic Plus DSL (Torez Smith) [1942772] - smsc95xx: add phylib support (Torez Smith) [1942772] - smsc95xx: use usbnet->driver_priv (Torez Smith) [1942772] - smsc95xx: remove redundant function arguments (Torez Smith) [1942772] - net: usb: Fix uninit-was-stored issue in asix_read_phy_addr() (Torez Smith) [1942772] - net: cdc_ncm: Fix build error (Torez Smith) [1942772] - tools: usb: move to tools buildsystem (Torez Smith) [1942772] - usbip: Implement a match function to fix usbip (Torez Smith) [1942772] - usb: dwc3: gadget: Handle ZLP for sg requests (Torez Smith) [1942772] - usb: dwc3: gadget: Fix handling ZLP (Torez Smith) [1942772] - usb: dwc3: gadget: Don't setup more than requested (Torez Smith) [1942772] - r8152: Use MAC address from correct device tree node (Torez Smith) [1942772] - usb: hso: remove bogus check for EINPROGRESS (Torez Smith) [1942772] - usb: hso: no complaint about kmalloc failure (Torez Smith) [1942772] - hso: fix bailout in error case of probe (Torez Smith) [1942772] - usb: dwc3: convert to devm_platform_ioremap_resource_byname (Torez Smith) [1942772] - net: lan78xx: replace bogus endpoint lookup (Torez Smith) [1942772] - net: lan78xx: fix transfer-buffer memory leak (Torez Smith) [1942772] - net: lan78xx: add missing endpoint sanity check (Torez Smith) [1942772] - usb: hso: check for return value in hso_serial_common_create() (Torez Smith) [1942772] - Revert "usb: dwc2: override PHY input signals with usb role switch support" (Torez Smith) [1942772] - Revert "usb: dwc2: don't use ID/Vbus detection if usb-role-switch on STM32MP15 SoCs" (Torez Smith) [1942772] - usb: dwc3: gadget: when the started list is empty stop the active xfer (Torez Smith) [1942772] - usb: dwc3: gadget: make starting isoc transfers more robust (Torez Smith) [1942772] - usb: dwc3: gadget: add frame number mask (Torez Smith) [1942772] - usb: dwc2: Fix error path in gadget registration (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix shared reset control use (Torez Smith) [1942772] - usb: dwc2: don't use ID/Vbus detection if usb-role-switch on STM32MP15 SoCs (Torez Smith) [1942772] - usb: dwc2: override PHY input signals with usb role switch support (Torez Smith) [1942772] - net: cdc_ncm: hook into set_rx_mode to admit multicast traffic (Torez Smith) [1942772] - net: cdc_ncm: add .ndo_set_rx_mode to cdc_ncm_netdev_ops (Torez Smith) [1942772] - net: usbnet: export usbnet_set_rx_mode() (Torez Smith) [1942772] - net: cdc_ether: export usbnet_cdc_update_filter (Torez Smith) [1942772] - net: cdc_ether: use dev->intf to get interface information (Torez Smith) [1942772] - ax88172a: fix ax88172a_unbind() failures (Torez Smith) [1942772] - usb: dwc2: gadget: Avoid pointless read of EP control register (Torez Smith) [1942772] - usb: dwc2: gadget: Make use of GINTMSK2 (Torez Smith) [1942772] - usb: dwc3: Replace HTTP links with HTTPS ones (Torez Smith) [1942772] - tools: usb: usbip: Replace HTTP links with HTTPS ones (Torez Smith) [1942772] - usb: hso: Fix debug compile warning on sparc32 (Torez Smith) [1942772] - usbip: Use fallthrough pseudo-keyword (Torez Smith) [1942772] - Documentation/driver-api: usb/URB: drop doubled word (Torez Smith) [1942772] - usb: dwc3: dwc3-qcom: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Jasper Lake (Torez Smith) [1942772] - usb: dwc2: Fix shutdown callback in platform (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Tiger Lake PCH -H variant (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for Quectel EG95 LTE modem (Torez Smith) [1942772] - smsc95xx: avoid memory leak in smsc95xx_bind (Torez Smith) [1942772] - smsc95xx: check return value of smsc95xx_reset (Torez Smith) [1942772] - usb: dwc2: gadget: Remove assigned but never used 'maxsize' (Torez Smith) [1942772] - usb: dwc3: dwc3-of-simple: Function headers are not good candidates for kerneldoc (Torez Smith) [1942772] - usb: dwc3: dwc3-haps: Function headers are not suitable for kerneldoc (Torez Smith) [1942772] - usb: dwc3: dwc3-omap: Do not read DMA status (Torez Smith) [1942772] - usb: dwc3: ulpi: File headers are not doc headers (Torez Smith) [1942772] - usb: dwc3: drd: File headers are not doc headers (Torez Smith) [1942772] - usbnet: ipheth: fix ipheth_tx()'s return type (Torez Smith) [1942772] - usbip: tools: add in man page how to load the client's module (Torez Smith) [1942772] - usbip: tools: fix build error for multiple definition (Torez Smith) [1942772] - usbip: tools: fix module name in man page (Torez Smith) [1942772] - Revert "usb: dwc3: exynos: Add support for Exynos5422 suspend clk" (Torez Smith) [1942772] - usb: dwc3: pci: Fix reference count leak in dwc3_pci_resume_work (Torez Smith) [1942772] - media: USB: cdc-acm: blacklist IR Droid / IR Toy device (Torez Smith) [1942772] - usbnet: smsc95xx: Fix use-after-free after removal (Torez Smith) [1942772] - usb: dwc2: Postponed gadget registration to the udc class driver (Torez Smith) [1942772] - usb: dwc2: use well defined macros for power_down (Torez Smith) [1942772] - net: usb: ax88179_178a: fix packet alignment padding (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix USB2 PHY initialization on G12A and A1 SoCs (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix error path when fetching the reset line fails (Torez Smith) [1942772] - net: usb: qmi_wwan: add Telit LE910C1-EUX composition (Torez Smith) [1942772] - usb: dwc3: keystone: Turn on USB3 PHY before controller (Torez Smith) [1942772] - usb: dwc2: Update Core Reset programming flow. (Torez Smith) [1942772] - usb: dwc3: gadget: Check for prepared TRBs (Torez Smith) [1942772] - usb: dwc3: Increase timeout for CmdAct cleared by device controller (Torez Smith) [1942772] - usb: dwc3: gadget: Use SET_EP_PRIME for NoStream (Torez Smith) [1942772] - usb: dwc3: gadget: Handle stream transfers (Torez Smith) [1942772] - usb: dwc3: gadget: Don't prepare beyond a transfer (Torez Smith) [1942772] - usb: dwc3: gadget: Wait for transfer completion (Torez Smith) [1942772] - usb: dwc3: gadget: Handle XferComplete for streams (Torez Smith) [1942772] - usb: dwc3: gadget: Enable XferComplete event (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor TRB completion handler (Torez Smith) [1942772] - usb: dwc3: gadget: Check for in-progress END_TRANSFER (Torez Smith) [1942772] - usb: dwc3: Get MDWIDTH for DWC_usb32 (Torez Smith) [1942772] - usb: dwc3: Add support for DWC_usb32 IP (Torez Smith) [1942772] - usb: dwc3: use true,false for dwc->otg_restart_host (Torez Smith) [1942772] - usb: dwc2: gadget: move gadget resume after the core is in L0 state (Torez Smith) [1942772] - usb: dwc3: meson-g12a: add support for GXL and GXM SoCs (Torez Smith) [1942772] - usb: dwc3: meson-g12a: support the GXL/GXM DWC3 host phy disconnect (Torez Smith) [1942772] - usb: dwc3: meson-g12a: refactor usb init (Torez Smith) [1942772] - usb: dwc3: gadget: Continue to process pending requests (Torez Smith) [1942772] - r8152: support additional Microsoft Surface Ethernet Adapter variant (Torez Smith) [1942772] - r8152: Use MAC address from device tree if available (Torez Smith) [1942772] - net: usb: qmi_wwan: remove redundant assignment to variable status (Torez Smith) [1942772] - net: huawei_cdc_ncm: remove redundant assignment to variable ret (Torez Smith) [1942772] - net: usb: ax88179_178a: remove redundant assignment to variable ret (Torez Smith) [1942772] - usb: dwc3: select USB_ROLE_SWITCH (Torez Smith) [1942772] - usb: dwc3: pci: Enable extcon driver for Intel Merrifield (Torez Smith) [1942772] - dwc3: Remove check for HWO flag in dwc3_gadget_ep_reclaim_trb_sg() (Torez Smith) [1942772] - usb: hso: correct debug message (Torez Smith) [1942772] - net: sierra_net: Remove unused inline function (Torez Smith) [1942772] - usb: dwc3: gadget: WARN on no-resource status (Torez Smith) [1942772] - usb: dwc3: gadget: Issue END_TRANSFER to retry isoc transfer (Torez Smith) [1942772] - usb: dwc3: gadget: Store resource index of start cmd (Torez Smith) [1942772] - usb: dwc3: core: Use role-switch default dr_mode (Torez Smith) [1942772] - usb: dwc3: drd: Don't free non-existing irq (Torez Smith) [1942772] - usb: dwc3: gadget: Properly handle failed kick_transfer (Torez Smith) [1942772] - usb: dwc3: meson-g12a: refactor usb2 phy init (Torez Smith) [1942772] - usb: dwc3: meson-g12a: check return of dwc3_meson_g12a_usb_init (Torez Smith) [1942772] - usb: dwc3: meson-g12a: get the reset as shared (Torez Smith) [1942772] - usb: dwc3: meson-g12a: handle the phy and glue registers separately (Torez Smith) [1942772] - usb: dwc3: meson-g12a: specify phy names in soc data (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor dwc3_gadget_ep_dequeue (Torez Smith) [1942772] - usb: dwc3: gadget: Remove unnecessary checks (Torez Smith) [1942772] - usb: dwc3: gadget: Give back staled requests (Torez Smith) [1942772] - usb: dwc3: gadget: Properly handle ClearFeature(halt) (Torez Smith) [1942772] - usb: dwc3: support continuous runtime PM with dual role (Torez Smith) [1942772] - USB: dwc3: Use the correct style for SPDX License Identifier (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for DW5816e (Torez Smith) [1942772] - net: usb: ax88179_178a: Implement ethtool_ops set_eeprom (Torez Smith) [1942772] - usb: dwc3: gadget: Fix request completion check (Torez Smith) [1942772] - USB: dwc2: Use the correct style for SPDX License Identifier (Torez Smith) [1942772] - usb: dwc3: gadget: Do link recovery for SS and SSP (Torez Smith) [1942772] - usb: dwc3: gadget: Properly set maxpacket limit (Torez Smith) [1942772] - usb: dwc3: Fix GTXFIFOSIZ.TXFDEP macro name (Torez Smith) [1942772] - Documentation: driver-api/usb/writing_usb_driver.rst Updates documentation links (Torez Smith) [1942772] - pegasus: Remove pegasus' own workqueue (Torez Smith) [1942772] - usb: dwc2: convert to devm_platform_get_and_ioremap_resource (Torez Smith) [1942772] - usb: host: hisilicon: convert to devm_platform_get_and_ioremap_resource (Torez Smith) [1942772] - usb: host: xhci-plat: convert to devm_platform_get_and_ioremap_resource (Torez Smith) [1942772] - net: qmi_wwan: add support for ASKEY WWHC050 (Torez Smith) [1942772] - usb: dwc3: fix up for role switch API change (Torez Smith) [1942772] - usb: dwc2: Silence warning about supplies during deferred probe (Torez Smith) [1942772] - usb: dwc2: Implement set_selfpowered() (Torez Smith) [1942772] - usb: dwc3: core: don't do suspend for device mode if already suspended (Torez Smith) [1942772] - usb: dwc3: Rework resets initialization to be more flexible (Torez Smith) [1942772] - usb: dwc3: Rework clock initialization to be more flexible (Torez Smith) [1942772] - usb: dwc3: Add support for role-switch-default-mode binding (Torez Smith) [1942772] - usb: dwc3: Registering a role switch in the DRD code. (Torez Smith) [1942772] - usb: dwc3: core: add support for disabling SS instances in park mode (Torez Smith) [1942772] - usb: dwc3: gadget: Wrap around when skip TRBs (Torez Smith) [1942772] - usb: dwc3: gadget: Don't clear flags before transfer ended (Torez Smith) [1942772] - usb: dwc3: Remove kernel doc annotation where it's not needed (Torez Smith) [1942772] - usb: dwc3: Add ACPI support for xHCI ports (Torez Smith) [1942772] - usb: dwc3: exynos: Add support for Exynos5422 suspend clk (Torez Smith) [1942772] - usb: dwc3: meson-g12a: Don't use ret uninitialized in dwc3_meson_g12a_otg_init (Torez Smith) [1942772] - usb: dwc3: trace: print enqueue/dequeue pointers too (Torez Smith) [1942772] - usb: dwc2: add support for STM32MP15 SoCs USB OTG HS and FS (Torez Smith) [1942772] - usb: dwc3: Add Amlogic A1 DWC3 glue (Torez Smith) [1942772] - cdc_ncm: Fix the build warning (Torez Smith) [1942772] - cdc_ncm: Implement the 32-bit version of NCM Transfer Block (Torez Smith) [1942772] - r8152: reject unsupported coalescing params (Torez Smith) [1942772] - usb: dwc3: gadget: Update chain bit correctly when using sg list (Torez Smith) [1942772] - r8152: Replace zero-length array with flexible-array member (Torez Smith) [1942772] - r8152: check disconnect status after long sleep (Torez Smith) [1942772] - net: usb: qmi_wwan: restore mtu min/max values after raw_ip switch (Torez Smith) [1942772] - USB: Replace zero-length array with flexible-array member (Torez Smith) [1942772] - r8152: use new helper tcp_v6_gso_csum_prep (Torez Smith) [1942772] - net: usb: cdc-phonet: Replace zero-length array with flexible-array member (Torez Smith) [1942772] - usb: dwc3: qcom: Replace by (Torez Smith) [1942772] - usb: dwc3: gadget: Check for IOC/LST bit in TRB->ctrl fields (Torez Smith) [1942772] - usb: dwc2: Fix in ISOC request length checking (Torez Smith) [1942772] - usb: dwc2: Fix SET/CLEAR_FEATURE and GET_STATUS flows (Torez Smith) [1942772] - usb: dwc3: debug: fix string position formatting mixup with ret and len (Torez Smith) [1942772] - qmi_wwan: unconditionally reject 2 ep interfaces (Torez Smith) [1942772] - qmi_wwan: re-add DW5821e pre-production variant (Torez Smith) [1942772] - r8152: Add MAC passthrough support to new device (Torez Smith) [1942772] - r8152: disable DelayPhyPwrChg (Torez Smith) [1942772] - r8152: avoid the MCU to clear the lanwake (Torez Smith) [1942772] - r8152: don't enable U1U2 with USB_SPEED_HIGH for RTL8153B (Torez Smith) [1942772] - r8152: disable test IO for RTL8153B (Torez Smith) [1942772] - r8152: Disable PLA MCU clock speed down (Torez Smith) [1942772] - r8152: disable U2P3 for RTL8153B (Torez Smith) [1942772] - r8152: get default setting of WOL before initializing (Torez Smith) [1942772] - r8152: reset flow control patch when linking on for RTL8153B (Torez Smith) [1942772] - r8152: fix runtime resume for linking change (Torez Smith) [1942772] - usb: dwc3: pci: add ID for the Intel Comet Lake -V variant (Torez Smith) [1942772] - net: usb: lan78xx: Add .ndo_features_check (Torez Smith) [1942772] - usb: dwc2: Drop unlock/lock upon queueing a work item (Torez Smith) [1942772] - usb: dwc3: gadget: Remove END_TRANSFER delay (Torez Smith) [1942772] - usb: dwc3: gadget: Delay starting transfer (Torez Smith) [1942772] - usb: dwc3: gadget: Check END_TRANSFER completion (Torez Smith) [1942772] - usb: dwc3: turn off VBUS when leaving host mode (Torez Smith) [1942772] - usb: dwc2: fix debugfs FIFO count (Torez Smith) [1942772] - usb: dwc2: Fix IN FIFO allocation (Torez Smith) [1942772] - usb: dwc2: Fix Stalling a Non-Isochronous OUT EP (Torez Smith) [1942772] - usb: dwc3: gadget: Clear DCTL.ULSTCHNGREQ before set (Torez Smith) [1942772] - usb: dwc2: Fix NULL qh in dwc2_queue_transaction (Torez Smith) [1942772] - usb: dwc3: gadget: Set link state to RX_Detect on disconnect (Torez Smith) [1942772] - usb: dwc3: gadget: Don't send unintended link state change (Torez Smith) [1942772] - r8152: add missing endpoint sanity check (Torez Smith) [1942772] - net: usb: lan78xx: limit size of local TSO packets (Torez Smith) [1942772] - qmi_wwan: Add support for Quectel RM500Q (Torez Smith) [1942772] - usbip: Fix unsafe unaligned pointer usage (Torez Smith) [1942772] - usb: dwc3: use proper initializers for property entries (Torez Smith) [1942772] - net: r8152: use skb_list_walk_safe helper for gso segments (Torez Smith) [1942772] - net: usb: lan78xx: fix possible skb leak (Torez Smith) [1942772] - net: ch9200: remove unnecessary return (Torez Smith) [1942772] - net: ch9200: use __func__ in debug message (Torez Smith) [1942772] - tools: usb: usbip: Get rid of driver name printout in README (Torez Smith) [1942772] - can: gs_usb: gs_usb_probe(): use descriptors of current altsetting (Torez Smith) [1942772] - can: kvaser_usb: fix interface sanity check (Torez Smith) [1942772] - usb: dwc3: gadget: Fix request complete check (Torez Smith) [1942772] - thunderbolt: Update documentation with the USB4 information (Torez Smith) [1942772] - usbip: Fix error path of vhci_recv_ret_submit() (Torez Smith) [1942772] - usbip: Fix receive error in vhci-hcd when using scatter-gather (Torez Smith) [1942772] - net: usb: lan78xx: Fix error message format specifier (Torez Smith) [1942772] - net: usb: lan78xx: Fix suspend/resume PHY register access error (Torez Smith) [1942772] - usb: dwc3: pci: add ID for the Intel Comet Lake -H variant (Torez Smith) [1942772] - usb: dwc3: ep0: Clear started flag on completion (Torez Smith) [1942772] - usb: dwc3: gadget: Clear started flag for non-IOC (Torez Smith) [1942772] - usb: dwc3: gadget: Fix logical condition (Torez Smith) [1942772] - can: kvaser_usb: kvaser_usb_leaf: Fix some info-leaks to USB devices (Torez Smith) [1942772] - can: ucan: fix non-atomic allocation in completion handler (Torez Smith) [1942772] - net: usb: aqc111: Use the correct style for SPDX License Identifier (Torez Smith) [1942772] - net: usbnet: Fix -Wcast-function-type (Torez Smith) [1942772] - net: hso: Fix -Wcast-function-type (Torez Smith) [1942772] - ax88179_178a: add ethtool_op_get_ts_info() (Torez Smith) [1942772] - r8152: avoid to call napi_disable twice (Torez Smith) [1942772] - r8152: Re-order napi_disable in rtl8152_close (Torez Smith) [1942772] - ax88172a: fix information leak on short answers (Torez Smith) [1942772] - usb: dwc2: create debugfs directory under usb root (Torez Smith) [1942772] - usb: dwc3: create debugfs directory under usb root (Torez Smith) [1942772] - net: cdc_ncm: Signedness bug in cdc_ncm_set_dgram_size() (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for Foxconn T77W968 LTE modules (Torez Smith) [1942772] - usbip: Fix uninitialized symbol 'nents' in stub_recv_cmd_submit() (Torez Smith) [1942772] - USBIP: add config dependency for SGL_ALLOC (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for DW5821e with eSIM support (Torez Smith) [1942772] - CDC-NCM: handle incomplete transfer of MTU (Torez Smith) [1942772] - usbip: tools: fix fd leakage in the function of read_attr_usbip_status (Torez Smith) [1942772] - can: peak_usb: fix a potential out-of-sync while decoding packets (Torez Smith) [1942772] - can: usb_8dev: fix use-after-free on disconnect (Torez Smith) [1942772] - can: mcba_usb: fix use-after-free on disconnect (Torez Smith) [1942772] - can: peak_usb: report bus recovery as well (Torez Smith) [1942772] - can: gs_usb: gs_can_open(): prevent memory leak (Torez Smith) [1942772] - usb: Spelling s/enpoint/endpoint/ (Torez Smith) [1942772] - usb: dwc3: gadget: fix race when disabling ep with cancelled xfers (Torez Smith) [1942772] - usb: dwc3: of-simple: add a shutdown (Torez Smith) [1942772] - usbip: Fix free of unallocated memory in vhci tx (Torez Smith) [1942772] - usbip: tools: Fix read_usb_vudc_device() error path handling (Torez Smith) [1942772] - usb: dwc3: pci: prevent memory leak in dwc3_pci_probe (Torez Smith) [1942772] - usb: dwc3: remove the call trace of USBx_GFLADJ (Torez Smith) [1942772] - usb: dwc3: select CONFIG_REGMAP_MMIO (Torez Smith) [1942772] - r8152: check the pointer rtl_fw->fw before using it (Torez Smith) [1942772] - net: lan78xx: remove set but not used variable 'event' (Torez Smith) [1942772] - usb: dwc3: debug: Remove newline printout (Torez Smith) [1942772] - r8152: support firmware of PHY NC for RTL8153A (Torez Smith) [1942772] - r8152: move r8153_patch_request forward (Torez Smith) [1942772] - r8152: add checking fw_offset field of struct fw_mac (Torez Smith) [1942772] - r8152: rename fw_type_1 with fw_mac (Torez Smith) [1942772] - usb: dwc2: use a longer core rest timeout in dwc2_core_reset() (Torez Smith) [1942772] - usb: dwc3: Disable phy suspend after power-on reset (Torez Smith) [1942772] - r8152: add device id for Lenovo ThinkPad USB-C Dock Gen 2 (Torez Smith) [1942772] - net: usb: lan78xx: Connect PHY before registering MAC (Torez Smith) [1942772] - usb: hso: obey DMA rules in tiocmget (Torez Smith) [1942772] - r8152: support request_firmware for RTL8153 (Torez Smith) [1942772] - net: usb: sr9800: fix uninitialized local variable (Torez Smith) [1942772] - net: usb: ax88179_178a: write mac to hardware in get_mac_addr (Torez Smith) [1942772] - net: usb: qmi_wwan: add Telit 0x1050 composition (Torez Smith) [1942772] - usb: dwc3: Remove dev_err() on platform_get_irq() failure (Torez Smith) [1942772] - usb: dwc3: Switch to platform_get_irq_byname_optional() (Torez Smith) [1942772] - r8152: Set macpassthru in reset_resume callback (Torez Smith) [1942772] - qmi_wwan: add support for Cinterion CLS8 devices (Torez Smith) [1942772] - usbip: clean up an indentation issue (Torez Smith) [1942772] - usbip: vhci_hcd indicate failed message (Torez Smith) [1942772] - r8152: Add identifier names for function pointers (Torez Smith) [1942772] - r8152: Use guard clause and fix comment typos (Torez Smith) [1942772] - hso: fix NULL-deref on tty open (Torez Smith) [1942772] - net: usb: ax88179_178a: allow optionally getting mac address from device tree (Torez Smith) [1942772] - r8152: Factor out OOB link list waits (Torez Smith) [1942772] - usbnet: ignore endpoints with invalid wMaxPacketSize (Torez Smith) [1942772] - cdc_ncm: fix divide-by-zero caused by invalid wMaxPacketSize (Torez Smith) [1942772] - usbnet: sanity checking of packet sizes and device mtu (Torez Smith) [1942772] - r8152: adjust the settings of ups flags (Torez Smith) [1942772] - r8152: modify rtl8152_set_speed function (Torez Smith) [1942772] - usb: dwc3: remove generic PHY calibrate() calls (Torez Smith) [1942772] - usb: gadget: net2280: Move all "ll" registers in one structure (Torez Smith) [1942772] - usb: dwc3: gadget: Workaround Mirosoft's BESL check (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix suspend resume regulator unbalanced disables (Torez Smith) [1942772] - usb: gadget: composite: Set recommended BESL values (Torez Smith) [1942772] - usb: dwc3: gadget: Set BESL config parameter (Torez Smith) [1942772] - usb: dwc3: Separate field holding multiple properties (Torez Smith) [1942772] - usb: dwc3: don't set gadget->is_otg flag (Torez Smith) [1942772] - usb: dwc3: st: Add of_dev_put() in probe function (Torez Smith) [1942772] - usb: dwc3: st: Add of_node_put() before return in probe function (Torez Smith) [1942772] - r8152: add a helper function about setting EEE (Torez Smith) [1942772] - r8152: saving the settings of EEE (Torez Smith) [1942772] - net: usb: Delete unnecessary checks before the macro call “dev_kfree_skb” (Torez Smith) [1942772] - r8152: divide the tx and rx bottom functions (Torez Smith) [1942772] - r8152: fix accessing skb after napi_gro_receive (Torez Smith) [1942772] - r8152: change rx_copybreak and rx_pending through ethtool (Torez Smith) [1942772] - r8152: support skb_add_rx_frag (Torez Smith) [1942772] - r8152: use alloc_pages for rx buffer (Torez Smith) [1942772] - r8152: replace array with linking list for rx information (Torez Smith) [1942772] - r8152: separate the rx buffer size (Torez Smith) [1942772] - usb: dwc3: Use clk_bulk_prepare_enable() (Torez Smith) [1942772] - usb: dwc3: Use devres to get clocks (Torez Smith) [1942772] - usb: dwc3: remove generic PHYs forwarding for XHCI device (Torez Smith) [1942772] - USB: usbip: convert to use dev_groups (Torez Smith) [1942772] - usb: dwc3: Update soft-reset wait polling rate (Torez Smith) [1942772] - usb: dwc2: gadget: Fix kill_all_requests race (Torez Smith) [1942772] - usb: dwc3: omap: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1942772] - usb: dwc3: keystone: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1942772] - usb: dwc3: omap: squash include/linux/platform_data/dwc3-omap.h (Torez Smith) [1942772] - usb: dwc3: meson-g12a: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1942772] - usbip: tools: fix GCC8 warning for strncpy (Torez Smith) [1942772] - usb: dwc3: Switch to use device_property_count_u32() (Torez Smith) [1942772] - usb: dwc2: Switch to use device_property_count_u32() (Torez Smith) [1942772] - can: kvaser_usb: Use struct_size() in alloc_candev() (Torez Smith) [1942772] - net: usb: Merge cpu_to_le32s + memcpy to put_unaligned_le32 (Torez Smith) [1942772] - ax88179_178a: Merge memcpy + le32_to_cpus to get_unaligned_le32 (Torez Smith) [1942772] - usbnet: smsc75xx: Merge memcpy + le32_to_cpus to get_unaligned_le32 (Torez Smith) [1942772] - net: lan78xx: Merge memcpy + lexx_to_cpus to get_unaligned_lexx (Torez Smith) [1942772] - bluetooth: eliminate the potential race condition when removing the HCI controller (Gopal Tiwari) [1971488]- bareudp: add NETIF_F_FRAGLIST flag for dev features (Paolo Abeni) [1977850] - vxlan: add NETIF_F_FRAGLIST flag for dev features (Paolo Abeni) [1977850] - geneve: add NETIF_F_FRAGLIST flag for dev features (Paolo Abeni) [1977850] - RDMA/siw: Release xarray entry (Kamal Heib) [1971483] - RDMA/siw: Properly check send and receive CQ pointers (Kamal Heib) [1971483] - RDMA/siw: Fix a use after free in siw_alloc_mr (Kamal Heib) [1971483] - RDMA/rxe: Clear all QP fields if creation failed (Kamal Heib) [1971483] - RDMA/rxe: Fix a bug in rxe_fill_ip_info() (Kamal Heib) [1971483] - RDMA/rxe: Remove rxe_dma_device declaration (Kamal Heib) [1971483] - IB/hfi1: Fix error return code in parse_platform_config() (Kamal Heib) [1971483] - IB/hfi1: Remove unused function (Kamal Heib) [1971483] - RDMA/srpt: Fix error return code in srpt_cm_req_recv() (Kamal Heib) [1971483] - IB/isert: Fix a use after free in isert_connect_request (Kamal Heib) [1971483] - RDMA: Verify port when creating flow rule (Kamal Heib) [1971483] - RDMA/uverbs: Fix a NULL vs IS_ERR() bug (Kamal Heib) [1971483] - RDMA/core: Don't access cm_id after its destruction (Kamal Heib) [1971483] - RDMA/core: Prevent divide-by-zero error triggered by the user (Kamal Heib) [1971483] - RDMA/core: Add CM to restrack after successful attachment to a device (Kamal Heib) [1971483] - RDMA/core: Unify RoCE check and re-factor code (Kamal Heib) [1971483] - RDMA/core: Fix corrupted SL on passive side (Kamal Heib) [1971483] - mm: vmalloc: add cond_resched() in __vunmap() (Rafael Aquini) [1978469] - /proc/PID/smaps: Add PMD migration entry parsing (Nico Pache) [1977066] - s390: add 3f program exception handler (Nico Pache) [1977066] - x86/ioremap: Fix CONFIG_EFI=n build (Nico Pache) [1977066] - mm, slub: move slub_debug static key enabling outside slab_mutex (Nico Pache) [1977066] - mm, slub: enable slub_debug static key when creating cache with explicit debug flags (Nico Pache) [1977066] - locking/mutex: Remove repeated declaration (Nico Pache) [1977066] - percpu: make pcpu_nr_empty_pop_pages per chunk type (Nico Pache) [1977066] - mm/swap: don't SetPageWorkingset unconditionally during swapin (Nico Pache) [1977066] - s390/tlb: make cleared_pXs flags consistent with generic code (Nico Pache) [1977066] - mm, compaction: make fast_isolate_freepages() stay within zone (Nico Pache) [1977066] - mm/vmscan: restore zone_reclaim_mode ABI (Nico Pache) [1977066] - mm, compaction: move high_pfn to the for loop scope (Nico Pache) [1977066] - memblock: do not start bottom-up allocations with kernel_end (Nico Pache) [1977066] - mm, page_alloc: disable pcplists during memory offline (Nico Pache) [1977066] - mm, page_alloc: move draining pcplists to page isolation users (Nico Pache) [1977066] - mm, page_alloc: cache pageset high and batch in struct zone (Nico Pache) [1977066] - mm, page_alloc: simplify pageset_update() (Nico Pache) [1977066] - mm, page_alloc: fix core hung in free_pcppages_bulk() (Nico Pache) [1977066] - mm, page_alloc: remove setup_pageset() (Nico Pache) [1977066] - mm, page_alloc: calculate pageset high and batch once per zone (Nico Pache) [1977066] - mm, pcp: share common code between memory hotplug and percpu sysctl handler (Nico Pache) [1977066] - mm, page_alloc: clean up pageset high and batch update (Nico Pache) [1977066] - s390/uv: handle destroy page legacy interface (Nico Pache) [1977066] - mm/filemap: fix filemap_map_pages for THP (Nico Pache) [1977066] - mm: filemap: add missing FGP_ flags in kerneldoc comment for pagecache_get_page (Nico Pache) [1977066] - mm/filemap.c: rewrite pagecache_get_page documentation (Nico Pache) [1977066] - mm: filemap: clear idle flag for writes (Nico Pache) [1977066] - mm: document semantics of ZONE_MOVABLE (Nico Pache) [1977066] - mm/page_isolation: cleanup set_migratetype_isolate() (Nico Pache) [1977066] - mm/page_isolation: drop WARN_ON_ONCE() in set_migratetype_isolate() (Nico Pache) [1977066] - mm/page_isolation: exit early when pageblock is isolated in set_migratetype_isolate() (Nico Pache) [1977066] - mm/page_alloc: tweak comments in has_unmovable_pages() (Nico Pache) [1977066] - mm: reuse only-pte-mapped KSM page in do_wp_page() (Nico Pache) [1977066] - mm/memory.c: skip spurious TLB flush for retried page fault (Nico Pache) [1977066] - /proc/PID/smaps: consistent whitespace output format (Nico Pache) [1977066] - mm/memcontrol.c: prevent missed memory.low load tears (Nico Pache) [1977066] - mm, memcg: prevent mem_cgroup_protected store tearing (Nico Pache) [1977066] - mm, memcg: prevent memory.min load/store tearing (Nico Pache) [1977066] - mm, mempolicy: fix up gup usage in lookup_node (Nico Pache) [1977066] - mm/page_ext.c: drop pfn_present() check when onlining (Nico Pache) [1977066] - drivers/base/memory.c: drop pages_correctly_probed() (Nico Pache) [1977066] - drivers/base/memory.c: drop section_count (Nico Pache) [1977066] - include/linux/mm.h: remove dead code totalram_pages_set() (Nico Pache) [1977066] - tools headers uapi: Sync asm-generic/mman-common.h with the kernel (Nico Pache) [1977066] - mm/memcg: Relocate tcpmem to below memory in struct mem_cgroup (Waiman Long) [1959772] - mm/memcg: optimize user context object stock access (Waiman Long) [1959772] - mm/memcg: improve refill_obj_stock() performance (Waiman Long) [1959772] - mm/memcg: cache vmstat data in percpu memcg_stock_pcp (Waiman Long) [1959772] - mm/memcg: move mod_objcg_state() to memcontrol.c (Waiman Long) [1959772] - mm: memcontrol: move PageMemcgKmem to the scope of CONFIG_MEMCG_KMEM (Waiman Long) [1959772] - mm: memcontrol: inline __memcg_kmem_{un}charge() into obj_cgroup_{un}charge_pages() (Waiman Long) [1959772] - mm: memcontrol: use obj_cgroup APIs to charge kmem pages (Waiman Long) [1959772] - mm: memcontrol: change ug->dummy_page only if memcg changed (Waiman Long) [1959772] - mm: memcontrol: directly access page->memcg_data in mm/page_alloc.c (Waiman Long) [1959772] - mm: memcontrol: introduce obj_cgroup_{un}charge_pages (Waiman Long) [1959772] - mm: memcontrol: slab: fix obtain a reference to a freeing memcg (Waiman Long) [1959772] - mm: memmap defer init doesn't work as expected (Baoquan He) [1906271] - mm: check nr_initialised with PAGES_PER_SECTION directly in defer_init() (Baoquan He) [1906271] - mm/memory_hotplug: mark pageblocks MIGRATE_ISOLATE while onlining memory (Baoquan He) [1906271] - mm, memory_hotplug: update pcp lists everytime onlining a memory block (Baoquan He) [1906271] - mm: pass migratetype into memmap_init_zone() and move_pfn_range_to_zone() (Baoquan He) [1906271] - nfs: account for selinux security context when deciding to share superblock (Scott Mayhew) [1927027] - nfs: remove unneeded null check in nfs_fill_super() (Scott Mayhew) [1927027] - lsm,selinux: add new hook to compare new mount to an existing mount (Scott Mayhew) [1927027] - libceph: allow addrvecs with a single NONE/blank address (Jeff Layton) [1972278] - scsi: megaraid_sas: Update driver version to 07.717.02.00-rc1 (Tomas Henzl) [1968170] - scsi: megaraid_sas: Handle missing interrupts while re-enabling IRQs (Tomas Henzl) [1968170] - scsi: megaraid_sas: Early detection of VD deletion through RaidMap update (Tomas Henzl) [1968170] - scsi: megaraid_sas: Fix resource leak in case of probe failure (Tomas Henzl) [1968170] - scsi: megaraid_sas: Send all non-RW I/Os for TYPE_ENCLOSURE device through firmware (Tomas Henzl) [1968170] - scsi: megaraid_sas: Use DEFINE_SPINLOCK() for spinlock (Tomas Henzl) [1968170] - scsi: scsi_devinfo: Add blacklist entry for HPE OPEN-V (Ewan D. Milne) [1927508] - drivers: do not build devm_platform_get_and_ioremap_resource() for s390x (Jaroslav Kysela) [1917388] - redhat: update ALSA configs and add regmap-sdw-mbq to redhat/filter-modules.sh (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fix the return value in dpcm_apply_symmetry() (Jaroslav Kysela) [1917388] - alsa: control_led - fix initialization in the mode show callback (Jaroslav Kysela) [1917388] - ALSA: seq: Fix race of snd_seq_timer_open() (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ZBook Power G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: headphone and mic don't work on an Acer laptop (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix the context to call snd_pcm_stop_xrun() (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook 840 Aero G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP EliteBook x360 1040 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Elite Dragonfly G2 (Jaroslav Kysela) [1917388] - ASoC: rt5682: Fix the fast discharge for headset unplugging in soundwire mode (Jaroslav Kysela) [1917388] - ASoC: tas2562: Fix TDM_CFG0_SAMPRATE values (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir: Remove fix for DMI entry on Lenovo 2020 platforms (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI entry for Lenovo 2020 AMD platforms (Jaroslav Kysela) [1917388] - ASoC: SOF: reset enabled_cores state at suspend (Jaroslav Kysela) [1917388] - ASoC: fsl-asoc-card: Set .owner attribute when registering card. (Jaroslav Kysela) [1917388] - ASoC: topology: Fix spelling mistake "vesion" -> "version" (Jaroslav Kysela) [1917388] - ASoC: rt5659: Fix the lost powers for the HDA header (Jaroslav Kysela) [1917388] - ASoC: core: Fix Null-point-dereference in fmt_single_name() (Jaroslav Kysela) [1917388] - spi: pxa2xx: Drop useless comment in the pxa2xx_ssp.h (Jaroslav Kysela) [1917388] - spi: pxa2xx: Switch to use BIT() and GENMASK() in pxa2xx_ssp.h (Jaroslav Kysela) [1917388] - spi: pxa2xx: Update header block in pxa2xx_ssp.h (Jaroslav Kysela) [1917388] - spi: pxa2xx: Add SSC2 and SSPSP2 SSP registers (Jaroslav Kysela) [1917388] - ASoC: pxa: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: pxa: pxa-ssp: Remove redundant null check before clk_prepare_enable/clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: mmp-sspa: drop unneeded snd_soc_dai_set_drvdata (Jaroslav Kysela) [1917388] - ASoC: mmp-sspa: set phase two word length register (Jaroslav Kysela) [1917388] - ASoC: pxa: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: Fix 7/8 spaces indentation in Kconfig (Jaroslav Kysela) [1917388] - ASoC: jz4740-i2s: Remove manual DMA peripheral ID assignment (Jaroslav Kysela) [1917388] - ASoC: jz4740-i2s: add missed checks for clk_get() (Jaroslav Kysela) [1917388] - ASoC: Intel: fix error code cnl_set_dsp_D0() (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: Unassign ram_read and read_write ops (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove haswell solution (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove sst_dsp_get_thread_context (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove unused DSP interface fields (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: remove unneeded semicolon (Jaroslav Kysela) [1917388] - catpt: Switch to use list_entry_is_head() helper (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Optimize applying user settings (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Correct clock selection for dai trigger (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Skip position update for unprepared streams (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Relax clock selection conditions (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Fix compilation when CONFIG_MODULES is disabled (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Cleanup after power routines streamlining (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Replace open coded variant of resource_intersection() (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Streamline power routines across LPT and WPT (Jaroslav Kysela) [1917388] - ASoC: Intel: haswell: Add missing pm_ops (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_nau8824: Change SSP2-Codec DAI id to 0 (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_nau8824: Drop compress-cpu-dai bits (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5651: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: Intel: broadwell: add missing pm_ops (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-rt5677: add missing pm_ops (Jaroslav Kysela) [1917388] - ASoC: Intel: broadwell: set card and driver name dynamically (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-rt5650: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove rt5640 support for baytrail solution (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove max98090 support for baytrail solution (Jaroslav Kysela) [1917388] - ASoC: Intel: atom: use inclusive language for SSP bclk/fsync (Jaroslav Kysela) [1917388] - ASoC: Intel: Atom: add dynamic selection of DSP driver (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: select WANT_DEV_COREDUMP (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: add dynamic selection of DSP driver (Jaroslav Kysela) [1917388] - ASoC: intel: SND_SOC_INTEL_KEEMBAY should depend on ARCH_KEEMBAY (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Add explicit DMADEVICES kconfig dependency (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove baytrail solution (Jaroslav Kysela) [1917388] - ASoC: Intel: atom: Remove duplicate kconfigs (Jaroslav Kysela) [1917388] - ASoC: remove zte zx drivers (Jaroslav Kysela) [1917388] - ASoC: codecs: wsa881x: add missing stream rates and format (Jaroslav Kysela) [1917388] - ASoC: wm_adsp: Remove unused control callback structure (Jaroslav Kysela) [1917388] - ASoC: wm8994: Fix PM disable depth imbalance on error (Jaroslav Kysela) [1917388] - ASoC: wm8903: remove useless assignments (Jaroslav Kysela) [1917388] - ASoC: wm8523: Fix a typo in a comment (Jaroslav Kysela) [1917388] - ASoC: wm8350: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: wm5102: Use get_unaligned_be16() for dac_comp_coeff (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd934x: Set digital gain range correctly (Jaroslav Kysela) [1917388] - ASoC: wcd9335: Remove unnecessary conversion to bool (Jaroslav Kysela) [1917388] - ASoC: rt715: remove unused parameter (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: add the calibration functions (Jaroslav Kysela) [1917388] - ASoC: rt5682: clock driver must use the clock provider API (Jaroslav Kysela) [1917388] - ASoC: rt1015: enable BCLK detection after calibration (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Add support for more data formats (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Move format check into `set_fmt()` (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Rearrange operations in `hw_params()` (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Fix not setting word length if DAIFMT_CBS_CFS (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: Fix regulator_dev_lookup() fails for id "LDO_VAUD18" (Jaroslav Kysela) [1917388] - ASoC: Remove mt6359_platform_driver_remove (Jaroslav Kysela) [1917388] - ASoC: Fix vaud18 power leakage of mt6359 (Jaroslav Kysela) [1917388] - ASoC: es8316: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Fix Bitclock polarity inversion (Jaroslav Kysela) [1917388] - ASoC: cs35l33: fix an error code in probe() (Jaroslav Kysela) [1917388] - ASoC: cs35l34: Add missing regmap use_single config (Jaroslav Kysela) [1917388] - ASoC: wm8998: Fix PM disable depth imbalance on error (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd9335: Set digital gain range correctly (Jaroslav Kysela) [1917388] - ASoC: TSCS454: remove unneeded semicolon (Jaroslav Kysela) [1917388] - ASoC: TSCS42xx: remove unneeded semicolon (Jaroslav Kysela) [1917388] - ASoC: ts3a227e: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: tlv320: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: tas571x: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: tas*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: tas2562: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: remove remnants of sirf prima/atlas audio codec (Jaroslav Kysela) [1917388] - ASoC: rt5645: add error checking to rt5645_probe function (Jaroslav Kysela) [1917388] - Revert "ASoC: rt5645: fix a NULL pointer dereference" (Jaroslav Kysela) [1917388] - ASoC: rt1015: modify calibration sequence for better performance (Jaroslav Kysela) [1917388] - ASoC: rk3328: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: pcm179x: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: pcm1789: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: nau8315: revise the power event of EN_PIN dapm widget for symmetry (Jaroslav Kysela) [1917388] - ASoC: nau8315: add codec driver (Jaroslav Kysela) [1917388] - ASoC: gtm601: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: es8328: Remove redundant null check before clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: es7241: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: es7134: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: da9055: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: da7219: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Add DAPM widget to set HP out to cap-less mode (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Don't change cap-couple setting in HP PMU/PMD (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Adjust timeouts for cap-coupled outputs (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Reset interrupt flags in bias PREPARE (Jaroslav Kysela) [1917388] - ASoC: codecs/jz47xx: Use regmap_{set,clear}_bits (Jaroslav Kysela) [1917388] - treewide: Use fallthrough pseudo-keyword (Jaroslav Kysela) [1917388] - ASoC: inno_rk3036: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: hdac_hdmi: remove cancel_work_sync in runtime suspend (Jaroslav Kysela) [1917388] - ASoC: hdmi-codec: Add RX support (Jaroslav Kysela) [1917388] - ALSA: cx46xx: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Convert from cpu to data format (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Add KUnit tests passing topology with PCM to snd_soc_tplg_component_load (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Add KUnit tests passing empty topology with variants to snd_soc_tplg_component_load (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: tegra: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: tegra: Don't warn on probe deferral (Jaroslav Kysela) [1917388] - ASoC: tegra: tegra_rt5640: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ASoC: tegra: tegra_wm8753: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ASoC: tegra: trimslice.c: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ASoC: ti: davinci-evm: Remove redundant null check before clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: ti: davinci: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: ti: j721e-evm: Fix compiler warning when CONFIG_OF=n (Jaroslav Kysela) [1917388] - ASoC: ti: omap-abe-twl6040: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: ti: omap-mcsp: remove duplicate test (Jaroslav Kysela) [1917388] - ASoC: uniphier: Simplify the return expression of uniphier_aio_startup (Jaroslav Kysela) [1917388] - ASoC: uniphier: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: ux500: mop500: rename shadowing variable (Jaroslav Kysela) [1917388] - ASoC: ux500: mop500: align function prototype (Jaroslav Kysela) [1917388] - ALSA: x86: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: cx2072x: Fix doubly definitions of Playback and Capture streams (Jaroslav Kysela) [1917388] - ASoC: cs42l56: fix up error handling in probe (Jaroslav Kysela) [1917388] - ASoC: cs42l52: Minor tidy up of error paths (Jaroslav Kysela) [1917388] - ASoC: cs42l51: manage mclk shutdown delay (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Wait for PLL to lock before switching to it (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Only start PLL if it is needed (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Wait at least 150us after writing SCLK_PRESENT (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Use bclk from hw_params if set_sysclk was not called (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Report jack and button detection (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Add Capture Support (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Fix channel width support (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Always wait at least 3ms after reset (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Don't enable/disable regulator at Bias Level (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Fix mixer volume control (Jaroslav Kysela) [1917388] - ASoC: cs*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: bd28623: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: alc5632: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: ak4458: Add MODULE_DEVICE_TABLE (Jaroslav Kysela) [1917388] - ASoC: ak4118: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: alc5623: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: ak5558: Correct the dai name for ak5552 (Jaroslav Kysela) [1917388] - ASoC: ak5558: change function name to ak5558_reset (Jaroslav Kysela) [1917388] - ASoC: ak5558: Add support for ak5552 (Jaroslav Kysela) [1917388] - ASoC: ak5558: Add MODULE_DEVICE_TABLE (Jaroslav Kysela) [1917388] - ASoC: ak5558: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: adau1977: remove platform data and move micbias bindings include (Jaroslav Kysela) [1917388] - ASoC: adau17x1: Remove redundant null check before clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: adau*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: Add ADAU1372 audio CODEC support (Jaroslav Kysela) [1917388] - ASoC: amd: fix for pcm_read() error (Jaroslav Kysela) [1917388] - ASoC: amd: drop S24_LE format support (Jaroslav Kysela) [1917388] - ASoC: amd: Add support for ALC1015P codec in acp3x machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: renoir: acp3x-pdm-dma: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: amd: raven: acp3x-i2s: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: amd: renoir: acp3x-pdm-dma: remove unnecessary assignments (Jaroslav Kysela) [1917388] - ASoC: amd: fix acpi dependency kernel warning (Jaroslav Kysela) [1917388] - ASoC: amd: update spdx license for acp machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: Add support for RT5682 codec in machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: Adding DAI LINK for rt1015 codec (Jaroslav Kysela) [1917388] - ASoC: amd: Adding support for ALC1015 codec in machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: AMD RV RT5682 should depends on CROS_EC (Jaroslav Kysela) [1917388] - ASoC: amd: renoir: remove invalid kernel-doc comment (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - refine DMI entries for some Lenovo products (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI entry for Lenovo ThinkPad X395 (Jaroslav Kysela) [1917388] - ASoC: amd: Replacing MSI with Legacy IRQ model (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI entry for Lenovo ThinkPad E14 Gen 2 (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI table to avoid the ACP mic probe (broken BIOS) (Jaroslav Kysela) [1917388] - ASoC: AMD Raven/Renoir - fix the PCI probe (PCI revision) (Jaroslav Kysela) [1917388] - ASoC: amd: change clk_get() to devm_clk_get() and add missed checks (Jaroslav Kysela) [1917388] - ASoC: amd: Return -ENODEV for non-existing ACPI call (Jaroslav Kysela) [1917388] - ASoC: amd: support other audio modes for raven (Jaroslav Kysela) [1917388] - ASoC: topology: adhere to KUNIT formatting standard (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Add KUnit tests passing various arguments to snd_soc_tplg_component_load (Jaroslav Kysela) [1917388] - ALSA: trident: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: sonicvibes: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: sis7019: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: remove unneeded break (Jaroslav Kysela) [1917388] - ALSA: hdsp: don't disable if not enabled (Jaroslav Kysela) [1917388] - ALSA: hdsp: hardware output loopback (Jaroslav Kysela) [1917388] - ALSA: pci: mixart: fix kernel-doc warning (Jaroslav Kysela) [1917388] - ALSA: maestro: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: lola: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: intel8x0: Fix missing check in snd_intel8x0m_create (Jaroslav Kysela) [1917388] - ALSA: intel8x0: Don't update period unless prepared (Jaroslav Kysela) [1917388] - ALSA: hda: Avoid spurious unsol event handling during S3/S4 (Jaroslav Kysela) [1917388] - ALSA: ens1370: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: emu10k1: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: emu10k1: Use dma_set_mask_and_coherent to simplify code (Jaroslav Kysela) [1917388] - ALSA: ctxfi: fix comment syntax in file headers (Jaroslav Kysela) [1917388] - ALSA: ctxfi: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: ctxfi: cthw20k2: fix mask on conf to allow 4 bits (Jaroslav Kysela) [1917388] - ALSA: bt87x: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: azt3328: Assign boolean values to a bool variable (Jaroslav Kysela) [1917388] - ALSA: asihpi: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: dice: fix stream format for TC Electronic Konnekt Live at high sampling transfer frequency (Jaroslav Kysela) [1917388] - ALSA: dice: disable double_pcm_frames mode for M-Audio Profire 610, 2626 and Avid M-Box 3 Pro (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix amdtp_packet tracepoints event for packet_index field (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix calculation for size of IR context payload (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix check for the size of isochronous packet payload (Jaroslav Kysela) [1917388] - ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro (Jaroslav Kysela) [1917388] - ALSA: dice: fix stream format at middle sampling rate for Alesis iO 26 (Jaroslav Kysela) [1917388] - ALSA: bebob: enable to deliver MIDI messages for multiple ports (Jaroslav Kysela) [1917388] - ALSA: bebob: detect the number of available MIDI ports (Jaroslav Kysela) [1917388] - ALSA: bebob: code refactoring for stream format detection (Jaroslav Kysela) [1917388] - ALSA: dice: fix null pointer dereference when node is disconnected (Jaroslav Kysela) [1917388] - ALSA: fireface: fix to parse sync status register of latter protocol (Jaroslav Kysela) [1917388] - ALSA: bebob: remove an unnecessary condition in hwdep_read() (Jaroslav Kysela) [1917388] - ALSA: fireface: remove unnecessary condition in hwdep_read() (Jaroslav Kysela) [1917388] - ALSA: oxfw: remove an unnecessary condition in hwdep_read() (Jaroslav Kysela) [1917388] - ALSA: dice: add support for Lexicon I-ONIX FW810s (Jaroslav Kysela) [1917388] - ALSA: firewire-tascam: Fix integer overflow in midi_port_work() (Jaroslav Kysela) [1917388] - ALSA: fireface: Fix integer overflow in transmit_midi_msg() (Jaroslav Kysela) [1917388] - ALSA: firewire: Clean up a locking issue in copy_resp_to_buf() (Jaroslav Kysela) [1917388] - ALSA: firewire: fix comparison to bool warning (Jaroslav Kysela) [1917388] - ALSA: firewire: Replace tasklet with work (Jaroslav Kysela) [1917388] - ALSA: firewire: convert tasklets to use new tasklet_setup() API (Jaroslav Kysela) [1917388] - ALSA: vx: Use roundup() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: pcsp: Fix fall-through warnings for Clang (Jaroslav Kysela) [1917388] - ALSA: dummy: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: aloop: Fix initialization of controls (Jaroslav Kysela) [1917388] - ALSA: aloop: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: atmel: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1917388] - ASoC: SOF: ext_manifest: use explicit number for elem_type (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: allow for partial match in parent name (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: add helper to identify parent driver. (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: add new fields for mach_params (Jaroslav Kysela) [1917388] - ASoC: rt5682: Add a new property for the DMIC clock driving (Jaroslav Kysela) [1917388] - ALSA: hda: Change AZX_MAX_BUF_SIZE from 1GB to 4MB (Jaroslav Kysela) [1917388] - soundwire: sysfs: Constify static struct attribute_group (Jaroslav Kysela) [1917388] - ALSA: remove trailing semicolon in macro definition (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: don't send DAI_CONFIG IPC for older firmware (Jaroslav Kysela) [1917388] - ASoC: SOF: use current DAI config during resume (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: Update ADL P to use its own descriptor (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: add missing use_acpi_target_states for TGL platforms (Jaroslav Kysela) [1917388] - ASoC: SOF: topology: remove useless code (Jaroslav Kysela) [1917388] - ASoC: SOF: Kconfig: fix typo of SND_SOC_SOF_PCI (Jaroslav Kysela) [1917388] - ASOC: SOF: simplify nocodec mode (Jaroslav Kysela) [1917388] - ASoC: SOF: pcm: export snd_pcm_dai_link_fixup (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: update set_mach_params() (Jaroslav Kysela) [1917388] - ASoC: SOF: change signature of set_mach_params() callback (Jaroslav Kysela) [1917388] - ASoC: SOF: add Kconfig option for probe workqueues (Jaroslav Kysela) [1917388] - ASoC: SOF: Simplify sof_probe_complete handling for acpi/pci/of (Jaroslav Kysela) [1917388] - ASoC: SOF: core: Add missing error prints to device probe operation (Jaroslav Kysela) [1917388] - ASoC: SOF: match SSP config with pcm hw params (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: HDA: add hw params callback for SSP DAIs (Jaroslav Kysela) [1917388] - ASoC: SOF: parse multiple SSP DAI and hw configs (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: drop display power on/off in D0i3 flows (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: move ELH chip info (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: APL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: CNL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: ICL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: TGL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: TGL: fix EHL ops (Jaroslav Kysela) [1917388] - ASoC: SOF: core: harden shutdown helper (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: HDA: fix core status verification (Jaroslav Kysela) [1917388] - ASoC: SOF: add a helper to get topology configured mclk (Jaroslav Kysela) [1917388] - ASoC: SOF: only allocate debugfs cache buffers for IPC flood entries (Jaroslav Kysela) [1917388] - ASoC: SOF: fix debugfs initialisation error handling (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: enable async suspend (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: turn off display power in resume (Jaroslav Kysela) [1917388] - ASoC: SOF: intel: fix wrong poll bits in dsp power down (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: unregister DMIC device on probe error (Jaroslav Kysela) [1917388] - ALSA: hda: move Intel SoundWire ACPI scan to dedicated module (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: SoundWire: simplify Kconfig (Jaroslav Kysela) [1917388] - ASoC: SOF: pci: move DSP_CONFIG use to platform-specific drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: pci: split PCI into different drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: add sof_icl_ops for ICL platforms (Jaroslav Kysela) [1917388] - ASoC: SOF: ACPI: avoid reverse module dependency (Jaroslav Kysela) [1917388] - ASoC: SOF: relax ABI checks and avoid unnecessary warnings (Jaroslav Kysela) [1917388] - ASoC: SOF: fix runtime pm usage mismatch after probe errors (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: add dev_dbg() when DMIC number is overridden (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: HDA: don't keep a temporary variable (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: detect DMIC number in SoundWire mixed config (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: SoundWire: refine ACPI match (Jaroslav Kysela) [1917388] - ASoC: SOF: HDA: (cosmetic) simplify hda_dsp_d0i3_work() (Jaroslav Kysela) [1917388] - ASoC: SOF: remove unused functions (Jaroslav Kysela) [1917388] - ASoC: SOF: fix string format for errors (Jaroslav Kysela) [1917388] - ASoC: SOF: add missing pm debug (Jaroslav Kysela) [1917388] - ASoC: SOF: sof-pci-dev: add missing Up-Extreme quirk (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: release display power at link_power (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: use hdac_ext fine-grained link management (Jaroslav Kysela) [1917388] - ASoC: SOF: debug: Fix a potential issue on string buffer termination (Jaroslav Kysela) [1917388] - ASoC: SOF: add be_hw_params_fixup() for ALH (Jaroslav Kysela) [1917388] - ASoC: SOF: topology: Prevent NULL pointer dereference with no TLV (Jaroslav Kysela) [1917388] - ASoC: SOF: intel: hda-loader: use snd_sof_dsp_core_power_down/up APIs (Jaroslav Kysela) [1917388] - ASoC: SOF: Filter out unneeded core power up/downs (Jaroslav Kysela) [1917388] - ASoC: SOF: update dsp core power status in common APIs (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda-loader: keep init cores alive (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: use snd_sof_dsp_core_power_up/down API (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: cancel D0i3 work during runtime suspend (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Enable DMI L1 for trace (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: enable DMI L1 for D0i3-compatible streams (Jaroslav Kysela) [1917388] - ASoC: SOF: add a pointer to download repo in case FW request fails (Jaroslav Kysela) [1917388] - ASoC: SOF: SND_INTEL_DSP_CONFIG dependency (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: soundwire: fix select/depend unmet dependencies (Jaroslav Kysela) [1917388] - ASoC: SOF: intel: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: initial support to AlderLake-P (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: tgl: do thorough remove at .shutdown() callback (Jaroslav Kysela) [1917388] - ASoC: SOF: sof-pci-dev: add .shutdown() callback (Jaroslav Kysela) [1917388] - ASoC: SOF: add snd_sof_device_shutdown() helper for shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: add .shutdown() callback to snd_sof_dsp_ops (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Avoid checking jack on system suspend (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Modify existing helper to disable WAKEEN (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Resume codec to do jack detection (Jaroslav Kysela) [1917388] - ASoC: SOF: add mutex to protect the dsp_power_state access (Jaroslav Kysela) [1917388] - ASoC: SOF: Fix spelling mistake in Kconfig "ond" -> "and" (Jaroslav Kysela) [1917388] - ASoC: SOF: imx: update kernel-doc description (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: add SoundWire support for ADL-S (Jaroslav Kysela) [1917388] - ASoC: SOF: control: fix cppcheck warning in snd_sof_volume_info() (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: allow for coexistence between SOF and catpt drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: allow for coexistence between SOF and Atom/SST drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: acpi: add dynamic selection of DSP driver (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: initial support for Alderlake-S (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: fix Kconfig dependency for SND_INTEL_DSP_CONFIG (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: fix Kconfig punctuation and wording (Jaroslav Kysela) [1917388] - ASoC: SOF: Kconfig: fix Kconfig punctuation and wording (Jaroslav Kysela) [1917388] - ASoC: SOF: imx: fix Kconfig punctuation (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Lenovo Miix 3-830 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Glavey TM800A550L tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Fix random noise at the HDMI output (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add quirk for new ADL-P Rvp (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: add ADL jack-less SoundWire configurations (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: add ADL SoundWire base configurations (Jaroslav Kysela) [1917388] - ASoC: Intel: kbl_da7219_max98927: Fix kabylake_ssp_fixup function (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoc: Intel: board: add BE DAI link for WoV (Jaroslav Kysela) [1917388] - ASoC: Intel: kbl: Add MST route change to kbl machine drivers (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_rt5672: Set card.components string (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_rt5672: Add support for Bay Trail CR / SSP0 (Jaroslav Kysela) [1917388] - ASoC: Intel: Baytrail: Add quirk for the Dell Venue 10 Pro 5055 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: Unify the thinkpad10 and aegex10 byt-match quirks (Jaroslav Kysela) [1917388] - ASoC: Intel: Boards: cml_da7219_max98390: add capture stream for echo reference (Jaroslav Kysela) [1917388] - ASoC: Intel: Fix a typo (Jaroslav Kysela) [1917388] - ASoC: Intel: Fix a typo (Jaroslav Kysela) [1917388] - ASoC: Intel: Fix a typo (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Chuwi Hi8 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: add max98390 echo reference support (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_wm5102: Add jack detect support (Jaroslav Kysela) [1917388] - ASoC: intel: atom: Remove 44100 sample-rate from the media and deep-buffer DAI descriptions (Jaroslav Kysela) [1917388] - ASoC: intel: atom: Stop advertising non working S24LE support (Jaroslav Kysela) [1917388] - ASoC: intel: sof_rt5682: use the topology mclk (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_rt5682: Add ALC1015Q-VB speaker amp support (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: skl-topology: fix -frame-larger-than (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add used AIF to the components string (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Enable jack-detect support on Asus T100TAF (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_wm5102: remove unused static variable (Jaroslav Kysela) [1917388] - ASoC: Intel: atom: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: remove TGL RVP mixed SoundWire/TDM config (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: remove unused TGL table with rt5682 only (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: Compile when any configuration is selected (Jaroslav Kysela) [1917388] - ASoC: Intel: boards: sof-wm8804: add check for PLL setting (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 10-p0XX OVCD current threshold (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Acer One S1002 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5651: Add quirk for the Jumper EZpad 7 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Voyo Winpad A15 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Estar Beauty HD MID 7316R tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: add ACPI matching table for HP Spectre x360 (Jaroslav Kysela) [1917388] - ASoC: intel: sof_sdw: add trace for dai links (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: detect DMIC number based on mach params (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add mic:dmic and cfg-mics component strings (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add quirk for HP Spectre x360 convertible (Jaroslav Kysela) [1917388] - ASoC: Intel: sof-sdw: indent and add quirks consistently (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: reorganize quirks by generation (Jaroslav Kysela) [1917388] - ASoC: Intel: boards: max98373: get dapm from cpu_dai (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_wm5102: Add machine driver for BYT/WM5102 (Jaroslav Kysela) [1917388] - ASoC: Intel: Add DMI quirk table to soc_intel_is_byt_cr() (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Support IEC958 encoded PCM format (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A3E (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A32 (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A5E (Jaroslav Kysela) [1917388] - ASoC: Intel: remove unneeded semicolon (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Wake up device before configuring SSP port (Jaroslav Kysela) [1917388] - ASoC: Intel: remove duplicate MODULE_LICENSE/DESCRIPTION tags (Jaroslav Kysela) [1917388] - ASoC: Intel: adl: remove sof_fw_filename setting in ADL snd_soc_acpi_mach (Jaroslav Kysela) [1917388] - ASoC: Intel: common: add ACPI matching tables for Alder Lake (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: Zero snd_ctl_elem_value (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: skl-topology: Fix OOPs ib skl_tplg_complete (Jaroslav Kysela) [1917388] - ASoC: intel: skl: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_nau8824: Move snd_soc_dai_set_tdm_slot call to cht_codec_fixup (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Mele PCG03 Mini PC (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add new BYT_RT5640_NO_INTERNAL_MIC_MAP input-mapping (Jaroslav Kysela) [1917388] - ASoC: Intel: byt/cht: set pm ops dynamically (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove sst_pdata structure (Jaroslav Kysela) [1917388] - ASoC: Intel: Make atom components independent of sst-dsp (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove SST-legacy specific constants (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove unused DSP operations (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove SST firmware components (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove SST ACPI component (Jaroslav Kysela) [1917388] - ASoC: Intel: Select catpt and deprecate haswell (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-5677: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-5650: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: broadwell: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: haswell: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Simple sysfs attributes (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Event tracing (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Device driver lifecycle (Jaroslav Kysela) [1917388] - drivers: provide devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: PCM operations (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Firmware loading and context restore (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Define DSP operations (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Add IPC message handlers (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Implement IPC protocol (Jaroslav Kysela) [1917388] - ASoC: Intel: Add catpt base members (Jaroslav Kysela) [1917388] - resource: Introduce resource_intersection() for overlapping resources (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for ARCHOS Cesium 140 (Jaroslav Kysela) [1917388] - ASoC: Intel: boards: byt/cht: set card and driver name at run time (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add new BYT_RT5640_NO_SPEAKERS quirk-flag (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Enable DMA transfer mode (Jaroslav Kysela) [1917388] - ASoC: Intel: keembay: use inclusive language for bclk and fsync (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcht_es8316: Remove comment about SSP0 being untested (Jaroslav Kysela) [1917388] - ASoC: rt1015: remove bclk_ratio (Jaroslav Kysela) [1917388] - ASoC: cs42l73: Add missing regmap use_single config (Jaroslav Kysela) [1917388] - ASoC: cs53l30: Add missing regmap use_single config (Jaroslav Kysela) [1917388] - ASoC: sti-sas: add missing MODULE_DEVICE_TABLE (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Regmap must use_single_read/write (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: fix the function number of SDCA control for feature unit 0x1E (Jaroslav Kysela) [1917388] - ASoC: da7219: do not request a new clock consummer reference (Jaroslav Kysela) [1917388] - ASoC: max98088: fix ni clock divider calculation (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: add the notification when volume changed (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: change capture switch controls (Jaroslav Kysela) [1917388] - ASoC: da7219: properly get clk from the provider (Jaroslav Kysela) [1917388] - ASoC: wcd934x: use the clock provider API (Jaroslav Kysela) [1917388] - ASoC: adau17x1: Avoid overwriting CHPF (Jaroslav Kysela) [1917388] - ASoC: ak4458: enable daisy chain (Jaroslav Kysela) [1917388] - ASoC: rt1015p: add support on format S32_LE (Jaroslav Kysela) [1917388] - ASoC: rt286: Generalize support for ALC3263 codec (Jaroslav Kysela) [1917388] - ASoC: rt298: Configure combo jack for headphones (Jaroslav Kysela) [1917388] - ASoC: rt286: Configure combo jack for headphones (Jaroslav Kysela) [1917388] - ASoC: sigmadsp: Disable cache mechanism for readbacks (Jaroslav Kysela) [1917388] - ASoC: rt286: Make RT286_SET_GPIO_* readable and writable (Jaroslav Kysela) [1917388] - ASoC: rt286: Fix upper byte in DMIC2 configuration (Jaroslav Kysela) [1917388] - ASoC: ak4458: check reset control status (Jaroslav Kysela) [1917388] - ASoC: codecs: rt5682: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt715: remove kcontrols which no longer be used (Jaroslav Kysela) [1917388] - ASoC: rt715: add main capture switch and main capture volume (Jaroslav Kysela) [1917388] - ASoC: rt715: modification for code simplicity (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd934x: Fix missing IRQF_ONESHOT as only threaded handler (Jaroslav Kysela) [1917388] - ASoC: cs35l35: remove unused including (Jaroslav Kysela) [1917388] - ASoC: ak5558: correct reset polarity (Jaroslav Kysela) [1917388] - ASoC: cs35l36: Fix an error handling path in 'cs35l36_i2c_probe()' (Jaroslav Kysela) [1917388] - ASoC: cs35l35: Fix an error handling path in 'cs35l35_i2c_probe()' (Jaroslav Kysela) [1917388] - ASoC: wcd9335: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt1019: remove registers to sync with rt1019 datasheet (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: wcd934x: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: tas2770: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: cx2072x: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt1019: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: add AIC3106 (Jaroslav Kysela) [1917388] - ASoC: codecs: wsa881x: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: codecs: Fix runtime PM imbalance in tas2552_probe (Jaroslav Kysela) [1917388] - ASoC: rt1011: remove pack_id check in rt1011 (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: add SPI support (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: move I2C to separated file (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: rename probe function (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: move model definitions (Jaroslav Kysela) [1917388] - ASoC: max98390: Add support for tx slot configuration. (Jaroslav Kysela) [1917388] - ASoC: ak5558: Fix s/show/slow/ typo (Jaroslav Kysela) [1917388] - ASoC: tlv320aic32x4: Register clocks before registering component (Jaroslav Kysela) [1917388] - ASoC: tlv320aic32x4: Increase maximum register in regmap (Jaroslav Kysela) [1917388] - ASoC: rt5670: Add a rt5670_components() helper (Jaroslav Kysela) [1917388] - ASoC: rt5670: Add a quirk for the Dell Venue 10 Pro 5055 (Jaroslav Kysela) [1917388] - ASoC: da732x: simplify code (Jaroslav Kysela) [1917388] - ASoC: lm49453: fix useless assignment before return (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: Fix spelling mistake "reate" -> "create" (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: add MT6359 accdet jack driver (Jaroslav Kysela) [1917388] - ASoC: max98373: Added 30ms turn on/off time delay (Jaroslav Kysela) [1917388] - ASoC: max98373: Changed amp shutdown register as volatile (Jaroslav Kysela) [1917388] - ASoC: wm8960: Remove bitclk relax condition in wm8960_configure_sysclk (Jaroslav Kysela) [1917388] - ASoC: max98373: Added controls for autorestart config (Jaroslav Kysela) [1917388] - ASoC: rt1015: Add bclk detection and dc detection (Jaroslav Kysela) [1917388] - ASoC: wm8960: Fix wrong bclk and lrclk with pll enabled for some chips (Jaroslav Kysela) [1917388] - ASoC: rt1019: make symbol 'rt1019_i2c_driver' static (Jaroslav Kysela) [1917388] - ASoC: rt1019: add rt1019 amplifier driver (Jaroslav Kysela) [1917388] - ASoC: tscs454: remove useless test on PLL disable (Jaroslav Kysela) [1917388] - ASoC: tlv320dac33: clarify expression (Jaroslav Kysela) [1917388] - ASoC: tas2770: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: tas2562: remove warning on return value (Jaroslav Kysela) [1917388] - ASoC: tas2562: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: sti-sas: remove unused struct members (Jaroslav Kysela) [1917388] - ASoC: sigmadsp: align function prototype (Jaroslav Kysela) [1917388] - ASoC: pcm1681: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: nau8825: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: mt6359: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: mt6358: remove useless initializations (Jaroslav Kysela) [1917388] - ASoC: max98090: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: hdmi-codec: remove unused spk_mask member (Jaroslav Kysela) [1917388] - ASoC: hdmi-codec: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: hdac_hdmi: align function arguments (Jaroslav Kysela) [1917388] - ASoC: hdac_hdmi: remove useless initializations (Jaroslav Kysela) [1917388] - ASoC: da7219-aad: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: cx2070x: remove duplicate else branch (Jaroslav Kysela) [1917388] - ASoC: cx2070x: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: adau1977: remove useless return (Jaroslav Kysela) [1917388] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 (Jaroslav Kysela) [1917388] - ASoC: ad1836: remove useless return (Jaroslav Kysela) [1917388] - ASoC: ab8500-codec: remove useless structure (Jaroslav Kysela) [1917388] - ASoC: rt711: add snd_soc_component remove callback (Jaroslav Kysela) [1917388] - ASoC: rt5659: Update MCLK rate in set_sysclk() (Jaroslav Kysela) [1917388] - ASoC: rt5640: Rename 'Mono DAC Playback Volume' to 'DAC2 Playback Volume' (Jaroslav Kysela) [1917388] - ASoC: rt1015p: add acpi device id for rt1015p (Jaroslav Kysela) [1917388] - ASoC: wm_hubs: align function prototype (Jaroslav Kysela) [1917388] - ASoC: wm_adsp: simplify return value (Jaroslav Kysela) [1917388] - ASoC: wm8996: clarify expression (Jaroslav Kysela) [1917388] - ASoC: wm8994: align function prototype (Jaroslav Kysela) [1917388] - ASoC: wm8978: clarify expression (Jaroslav Kysela) [1917388] - ASoC: wm8958-dsp2: rename local 'control' arrays (Jaroslav Kysela) [1917388] - ASoC: arizona: fix function argument (Jaroslav Kysela) [1917388] - ASoC: wm2200: remove unused structure (Jaroslav Kysela) [1917388] - ASoC: rt5682: add delay time of workqueue to control next IRQ event (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Remove unused including (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Fix return value check in rt715_sdca_sdw_probe() (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Set clock source for both ways of stream (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Provide finer control on playback path (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Disable regulators if probe fails (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Remove power if the driver is being removed (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: Add RT711 SDCA vendor-specific driver (Jaroslav Kysela) [1917388] - ASoC: rt5645: The ALC3270 variant does not have a headset-mic pin (Jaroslav Kysela) [1917388] - ASoC: rt5645: Move rt5645_platform_data to sound/soc/codecs/rt5645.c (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Remove superfluous error message (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Add RT715 sdca vendor-specific driver (Jaroslav Kysela) [1917388] - ASoC: wm8962: Relax bit clock divider searching (Jaroslav Kysela) [1917388] - ASoC: rt1316: Fix return value check in rt1316_sdw_probe() (Jaroslav Kysela) [1917388] - ASoC: sgtl5000: Fix identation of .driver elements (Jaroslav Kysela) [1917388] - ASoC: codec: Omit superfluous error message in jz4760_codec_probe() (Jaroslav Kysela) [1917388] - ASoC: sigmadsp-regmap: fix kernel-doc warning (Jaroslav Kysela) [1917388] - ASoC: rt5631: fix kernel-doc warning (Jaroslav Kysela) [1917388] - ASoC: jz4760: fix set but not used warning (Jaroslav Kysela) [1917388] - ASoC: cs4270: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: rt5682: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: rt5682: remove useless assignments (Jaroslav Kysela) [1917388] - ASoC: rt5682: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5677: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: rt5677: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5670: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5668: remove useless assignments (Jaroslav Kysela) [1917388] - ASoC: rt5668: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5665: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5663: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5660: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5659: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5651: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: rt5651: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5645: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5645: use logical OR (Jaroslav Kysela) [1917388] - ASoC: rt5640: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1308: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1305: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1016: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1015: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1011: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1011: remove redundant test (Jaroslav Kysela) [1917388] - ASoC: rt1011: use logical OR (Jaroslav Kysela) [1917388] - ASoC: wm8524: Do not print probe defer error (Jaroslav Kysela) [1917388] - ASoC: codecs: nau8825: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: rt1316: Add RT1316 SDCA vendor-specific driver (Jaroslav Kysela) [1917388] - ASoc: rt5631: Constify static struct coeff_clk_div (Jaroslav Kysela) [1917388] - ASoC: rt*: Constify static struct acpi_device_id (Jaroslav Kysela) [1917388] - ASoC: rt*: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt*: Constify static struct sdw_slave_ops (Jaroslav Kysela) [1917388] - ASoC: wcd934x: remove useless return (Jaroslav Kysela) [1917388] - ASoC: wcd9335: clarify return value (Jaroslav Kysela) [1917388] - ASoC: wcd-clsh-v2: align function prototypes (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd934x: add a sanity check in set channel map (Jaroslav Kysela) [1917388] - ASoC: es8316: Simplify adc_pga_gain_tlv table (Jaroslav Kysela) [1917388] - ASoC: sgtl5000: set DAP_AVC_CTRL register to correct default value on probe (Jaroslav Kysela) [1917388] - ASoC: rt5651: Fix dac- and adc- vol-tlv values being off by a factor of 10 (Jaroslav Kysela) [1917388] - ASoC: rt5640: Fix dac- and adc- vol-tlv values being off by a factor of 10 (Jaroslav Kysela) [1917388] - ASoC: rt5670: Add emulated 'DAC1 Playback Switch' control (Jaroslav Kysela) [1917388] - ASoC: rt5670: Remove ADC vol-ctrl mute bits poking from Sto1 ADC mixer settings (Jaroslav Kysela) [1917388] - ASoC: rt5670: Remove 'HP Playback Switch' control (Jaroslav Kysela) [1917388] - ASoC: rt5670: Remove 'OUT Channel Switch' control (Jaroslav Kysela) [1917388] - ASoC: rt1015: fix i2c communication error (Jaroslav Kysela) [1917388] - ASoC: codec: Add driver for JZ4760 internal codec (Jaroslav Kysela) [1917388] - ASoC: codec/ingenic: Depend on MACH_INGENIC (Jaroslav Kysela) [1917388] - ASoC: codec: hdmi-codec: Support IEC958 encoded PCM format (Jaroslav Kysela) [1917388] - ASoC: rt5682: Fix panic in rt5682_jack_detect_handler happening during system shutdown (Jaroslav Kysela) [1917388] - ASoC: rt5682: do nothing in rt5682_suspend/resume in sdw mode (Jaroslav Kysela) [1917388] - ASoC: rt5682-sdw: cancel_work_sync() in .remove and .suspend (Jaroslav Kysela) [1917388] - ASoC: rt711-sdw: use cancel_work_sync() for .remove (Jaroslav Kysela) [1917388] - ASoC: rt700-sdw: use cancel_work_sync() in .remove as well as .suspend (Jaroslav Kysela) [1917388] - ASoC: mt6359: reduce log verbosity for optional DT properties (Jaroslav Kysela) [1917388] - ASoC: codecs: add missing max_register in regmap config (Jaroslav Kysela) [1917388] - ASoC: cpcap: fix microphone timeslot mask (Jaroslav Kysela) [1917388] - ASoC: rt5659: Add Kconfig prompt (Jaroslav Kysela) [1917388] - ASoC: max98373: Fixes a typo in max98373_feedback_get (Jaroslav Kysela) [1917388] - ASoC: ak4458: correct reset polarity (Jaroslav Kysela) [1917388] - ASoC: rt5682: remove connection with LDO2 in DAPM graph (Jaroslav Kysela) [1917388] - ASoC: ml26124: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: lm49453: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: inno_rk3036: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: cx2072x: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: alc5632: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: ab8500: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: lochnagar-sc: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: mt6660: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: mc13783: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: sgtl5000: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: ssm2602: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: zl38060: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: jz4740: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: ak*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: tscs*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: max*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: es*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: da*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: nau*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: rt*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: tlv*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: wm*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: remove sirf prima/atlas drivers (Jaroslav Kysela) [1917388] - ASoC: codecs: soundwire: increase resume timeout (Jaroslav Kysela) [1917388] - ASoC: es8316: Fix possible NULL pointer deref in es8316_disable_jack_detect() (Jaroslav Kysela) [1917388] - ASoC: rt5682: enable fast discharge for headset unplugging (Jaroslav Kysela) [1917388] - ASoC: rt5682: fix getting the wrong device id when the suspend_stress_test (Jaroslav Kysela) [1917388] - ASoC: rt5645: Enable internal microphone and JD on ECS EF20 (Jaroslav Kysela) [1917388] - ASoC: rt5645: add inv_hp_det flag (Jaroslav Kysela) [1917388] - ASoC: rt5645: Add ACPI-defined GPIO for ECS EF20 series (Jaroslav Kysela) [1917388] - ASoC: rt5645: Introduce mapping for ACPI-defined GPIO (Jaroslav Kysela) [1917388] - ASoC: rt1015: re-calibrate again when resuming (Jaroslav Kysela) [1917388] - ASoC: rt5645: Remove the redundant delay time (Jaroslav Kysela) [1917388] - ASoC: rt1015: remove unneeded variables in rt1015_priv (Jaroslav Kysela) [1917388] - ASoC: rt1015: refactor retry loop and rt1015_priv allocation (Jaroslav Kysela) [1917388] - ASoC: rt1015: return error if any when setting bypass_boost (Jaroslav Kysela) [1917388] - ASoC: rt1015: save boost_mode only if valid (Jaroslav Kysela) [1917388] - ASoC: rt1015: sort header inclusions (Jaroslav Kysela) [1917388] - ASoC: Intel: common: Fix some typos (Jaroslav Kysela) [1917388] - ASoC: soc.h: remove for_each_rtd_dais_rollback() (Jaroslav Kysela) [1917388] - ASoC: soc.h: return error if multi platform at snd_soc_fixup_dai_links_platform_name() (Jaroslav Kysela) [1917388] - ASoC: soc.h: fixup return timing for snd_soc_fixup_dai_links_platform_name() (Jaroslav Kysela) [1917388] - ASoC: soc.h: add asoc_link_to_cpu/codec/platform() macro (Jaroslav Kysela) [1917388] - ASoC: add soc-jack.h (Jaroslav Kysela) [1917388] - ASoC: soc-dai.h: Align the word of comment for SND_SOC_DAIFMT_CBC_CFC (Jaroslav Kysela) [1917388] - ASoC: soc-core: fix always-false condition (Jaroslav Kysela) [1917388] - ASoC: soc-core: fix signed/unsigned issue (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: ignore dummy-DAI at soc_pcm_params_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-utils: add snd_soc_component_is_dummy() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate DAI name if soc_pcm_params_symmetry() failed (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: don't use "name" on __soc_pcm_params_symmetry() macro (Jaroslav Kysela) [1917388] - ASoC: core: Don't set platform name when of_node is set (Jaroslav Kysela) [1917388] - ASoC: soc-compress: lock pcm_mutex to resolve lockdep error (Jaroslav Kysela) [1917388] - ASoC: soc-core: use device_unregister() if rtd allocation failed (Jaroslav Kysela) [1917388] - ASoC: soc-core: add comment for rtd freeing (Jaroslav Kysela) [1917388] - ASoC: soc-component: Add snd_soc_pcm_component_ack (Jaroslav Kysela) [1917388] - ASoC: don't indicate error message for snd_soc_[pcm_]component_xxx() (Jaroslav Kysela) [1917388] - ASoC: don't indicate error message for snd_soc_[pcm_]dai_xxx() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: don't indicate error message for dpcm_be_dai_hw_free() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: don't indicate error message for soc_pcm_hw_free() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_fe/be_dai_prepare() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_fe/be_dai_hw_params() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_fe/be_dai_startup() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_run_update_startup/shutdown() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_apply_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_be_dai_trigger() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_path_get() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at soc_pcm_prepare() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at soc_pcm_hw_params() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at soc_pcm_open() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: share DPCM BE DAI stop operation (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove unneeded !rtd->dai_link check (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fixup dpcm_be_dai_startup() user count (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_hw_sanity_check() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_update_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: direct copy at snd_soc_set_runtime_hwparams() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_cpu/codec_dai_name() macro (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: check DAI activity under soc_pcm_apply_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-core: fix DMI handling (Jaroslav Kysela) [1917388] - ASoC: soc-dai: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add error log (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove shadowing variable (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove redundant assignment (Jaroslav Kysela) [1917388] - ASoC: soc-ops: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: unpack dpcm_set_fe_runtime() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add dpcm_runtime_setup() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add dpcm_runtime_setup_fe() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: unpack dpcm_init_runtime_hw() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove strange format storing (Jaroslav Kysela) [1917388] - ASoC: soc-core: Prevent warning if no DMI table is present (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fix hw param limits calculation for multi-DAI (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fix hwparams min/max init for dpcm (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_update_format() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_update_chan() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_update_rate() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: change error message to debug message (Jaroslav Kysela) [1917388] - ASoC: dapm: use component prefix when checking widget names (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fixup snd_pcm_limit_hw_rates() timing (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: use snd_pcm_hardware at dpcm_runtime_merge_xxx() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_create_pcm() and simplify soc_new_pcm() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_get_playback_capture() and simplify soc_new_pcm() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: tidyup pcm setting (Jaroslav Kysela) [1917388] - ASoC: soc-component: fix undefined reference to __ffssi2 (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_read/write_field() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: cleanup soc_pcm_params_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: cleanup soc_pcm_apply_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-dai.h: remove symmetric_rates/samplebits (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_set_dai_params() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add dpcm_set_be_update_state() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: move dpcm_set_fe_update_state() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: Fix an uninitialized error code (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: return correct -ERRNO in failure path (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: disconnect BEs if the FE is not ready (Jaroslav Kysela) [1917388] - ASoC: dapm: remove widget from dirty list on free (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: care trigger rollback (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove dpcm_do_trigger() (Jaroslav Kysela) [1917388] - ASoC: pcm: send DAPM_STREAM_STOP event in dpcm_fe_dai_shutdown (Jaroslav Kysela) [1917388] - ASoC: soc-core: tidyup jack.h (Jaroslav Kysela) [1917388] - ASoC: soc-core: add soc_dapm_suspend_resume() (Jaroslav Kysela) [1917388] - ASoC: soc-core: add soc_playback_digital_mute() (Jaroslav Kysela) [1917388] - ASoC: soc-compress: add soc_compr_clean() and call it from soc_compr_open/free() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add mark for snd_soc_link_compr_startup/shutdown() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add mark for snd_soc_component_compr_open/free() (Jaroslav Kysela) [1917388] - ASoC: soc-dai: add mark for snd_soc_dai_compr_startup/shutdown() (Jaroslav Kysela) [1917388] - ASoC: soc-compress: move soc_compr_free() next to soc_compr_open() (Jaroslav Kysela) [1917388] - ASoC: pcm: call snd_soc_dapm_stream_stop() in soc_pcm_hw_clean (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_metadata() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_set_metadata() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_copy() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_pointer() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_ack() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_codec_caps() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_caps() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_params() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_set_params() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_trigger() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_free() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_open() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: Get all BEs along DAPM path (Jaroslav Kysela) [1917388] - ASoC: soc-core: Fix component name_prefix parsing (Jaroslav Kysela) [1917388] - ASoC: soc-compress: assume SNDRV_PCM_STREAM_xxx and SND_COMPRESS_xxx are same (Jaroslav Kysela) [1917388] - ASoC: soc-compress: tidyup STREAM vs COMPRESS (Jaroslav Kysela) [1917388] - ASoC: soc-topology: clarify expression (Jaroslav Kysela) [1917388] - ASoC: sync parameter naming : rate / sample_bits (Jaroslav Kysela) [1917388] - ASoC: topology: Check if ops is set before dereference (Jaroslav Kysela) [1917388] - ASoC: topology: Ensure that needed parameters are set (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_clean() and call it from soc_pcm_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-dai: add mark for snd_soc_dai_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add mark for snd_soc_pcm_component_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-link: add mark for snd_soc_link_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: move soc_pcm_hw_free() next to soc_pcm_hw_params() (Jaroslav Kysela) [1917388] - ASoC: dapm: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: dmaengine: Document support for TX only or RX only streams (Jaroslav Kysela) [1917388] - ASoC: soc-core: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ALSA: usb: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix control 'access overflow' errors from chmap (Jaroslav Kysela) [1917388] - ALSA: line6: Fix racy initialization of LINE6 MIDI (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Disable sample read check if firmware doesn't give back (Jaroslav Kysela) [1917388] - ALSA: usb-audio: scarlett2: snd_scarlett_gen2_controls_create() can be static (Jaroslav Kysela) [1917388] - ALSA: usb-audio: scarlett2: Improve driver startup messages (Jaroslav Kysela) [1917388] - ALSA: usb-audio: scarlett2: Fix device hang with ehci-pci (Jaroslav Kysela) [1917388] - ALSA: usb-audio: fix control-request direction (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix potential out-of-bounce access in MIDI EP parser (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Validate MS endpoint descriptors (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add dB range mapping for Sennheiser Communications Headset PC 8 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Remove redundant assignment to len (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix implicit sync clearance at stopping stream (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Generic application of implicit fb to Roland/BOSS devices (Jaroslav Kysela) [1917388] - Revert "ALSA: usb-audio: Add support for many Roland devices..." (Jaroslav Kysela) [1917388] - ALSA: usb: midi: don't return -ENOMEM when usb_urb_ep_type_check fails (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Re-apply implicit feedback mode to Pioneer devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: DJM-750: ensure format is set (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add support for many Roland devices' implicit feedback quirks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Apply implicit feedback mode for BOSS devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Explicitly set up the clock selector (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add MIDI quirk for Vox ToneLab EX (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Skip probe of UA-101 devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop implicit fb quirk entries dubbed for capture (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feeback support for the BOSS GT-1 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add error checks for usb_driver_claim_interface() calls (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Apply sample rate quirk to Logitech Connect (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Check connector value on resume (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Carve out connector value checking into a helper (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix unintentional sign extension issue (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Apply the control quirk to Plantronics headsets (Jaroslav Kysela) [1917388] - ALSA: usb: Add Plantronics C320-M USB ctrl msg delay quirk (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix "cannot get freq eq" errors on Dell AE515 sound bar (Jaroslav Kysela) [1917388] - ALSA: usb-audio: fix Pioneer DJM-850 control label info (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Configure Pioneer DJM-850 samplerate (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Declare Pioneer DJM-850 mixer controls (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add Pioneer DJM-850 to quirks-table (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix Pioneer DJM devices URB_CONTROL request direction to set samplerate (Jaroslav Kysela) [1917388] - ALSA: usb-audio: use Corsair Virtuoso mapping for Corsair Virtuoso SE (Jaroslav Kysela) [1917388] - ALSA: usb-audio: generate midi streaming substream names from jack names (Jaroslav Kysela) [1917388] - ALSA: usb-audio: use usb headers rather than define structs locally (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Allow modifying parameters with succeeding hw_params calls (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop bogus dB range in too low level (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't abort even if the clock rate differs (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit fb quirk for BOSS GP-10 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add quirk for RC-505 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't avoid stopping the stream at disconnection (Jaroslav Kysela) [1917388] - ALSA: usb-audio: More strict state change in EP (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Handle invalid running state at releasing EP (Jaroslav Kysela) [1917388] - ALSA: usb-audio: add mixer quirks for Pioneer DJM-900NXS2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add DJM750 to Pioneer mixer quirk (Jaroslav Kysela) [1917388] - ALSA: Convert strlcpy to strscpy when return value is unused (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix PCM buffer allocation in non-vmalloc mode (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Correct document for snd_usb_endpoint_free_all() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add DJM-450 to the quirks table (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add DJM450 to Pioneer format quirk (Jaroslav Kysela) [1917388] - ALSA: usb-audio: workaround for iface reset issue (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix "RANGE setting not yet supported" errors (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Skip the clock selector inquiry for single connections (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix hw constraints dependencies (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add support for Pioneer DJM-750 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Avoid implicit feedback on Pioneer devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Set sample rate for all sharing EPs on UAC1 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix UAC1 rate setup for secondary endpoints (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Convert the last strlcpy() usage (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Convert remaining strlcpy() to strscpy() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Always apply the hw constraints for implicit fb sync (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix implicit feedback sync setup for Pioneer devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Annotate the endpoint index in audioformat (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Avoid unnecessary interface re-setup (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Choose audioformat of a counter-part substream (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix the missing endpoints creations for quirks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add quirk for BOSS AD-10 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix UBSAN warnings for MIDI jacks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add alias entry for ASUS PRIME TRX40 PRO-S (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add VID to support native DSD reproduction on FiiO devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix potential out-of-bounds shift (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit fb support for Steinberg UR22 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add support for Pioneer DJ DDJ-RR controller (Jaroslav Kysela) [1917388] - ALSA: usb-audio: US16x08: fix value count for level meters (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix MOTU M-Series quirks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix quirks for other BOSS devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit_fb module option (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add generic implicit fb parsing (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Factor out the implicit feedback quirk code (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Quirk for BOSS GT-001 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Show sync endpoint information in proc outputs (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Use unsigned char for iface and altsettings fields (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Replace slave/master terms (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify rate_min/max and rates set up (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Unify the code for the next packet size calculation (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop unneeded snd_usb_substream fields (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Refactoring endpoint URB deactivation (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Use atomic_t for endpoint use_count (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Constify audioformat pointer references (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix possible stall of implicit fb packet ring-buffer (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Refactor endpoint management (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix EP matching for continuous rates (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Always set up the parameters after resume (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add quirk for Pioneer DJ DDJ-SR2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Set callbacks via snd_usb_endpoint_set_callback() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Stop both endpoints properly at error (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify snd_usb_init_pitch() arguments (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify snd_usb_init_sample_rate() arguments (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't set altsetting before initializing sample rate (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Pass snd_usb_audio object to quirk functions (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add snd_usb_get_host_interface() helper (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop keep_interface flag again (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Create endpoint objects at parsing phase (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Avoid doubly initialization for implicit fb (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop debug.h (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify hw_params rules (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add hw constraint for implicit fb sync (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Move snd_usb_autoresume() call out of setup_hw_info() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Track implicit fb sync endpoint in audioformat list (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Improve some debug prints (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Set and clear sync EP link properly (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add snd_usb_get_endpoint() helper (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Check implicit feedback EP generically for UAC2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Check valid altsetting at parsing rates for UAC2/3 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't call usb_set_interface() at trigger callback (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Handle discrete rates properly in hw constraints (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add delay quirk for all Logitech USB devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Use ALC1220-VB-DT mapping for ASUS ROG Strix TRX40 mobo (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feedback quirk for Qu-16 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feedback quirk for MODX (Jaroslav Kysela) [1917388] - ALSA: usb-audio: add usb vendor id as DSD-capable for Khadas devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feedback quirk for Zoom UAC-2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Line6 Pod Go interface requires static clock rate quirk (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add mixer support for Pioneer DJ DJM-250MK2 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: reset eapd coeff to default value for alc287 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: Cancel pending works before suspend (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: Fix compile warning without PCI (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: Move unsol callback setups to parser (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: make some const arrays static, makes object smaller (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add ZxR surround DAC setup. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add 8051 PLL write helper functions. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Remove now unnecessary DSP setup functions. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Ensure DSP is properly setup post-firmware download. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add 8051 exram helper functions. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add stream port remapping function. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Reset codec upon initialization. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Change Input Source enum strings. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Fix AE-5 rear headphone pincfg. (Jaroslav Kysela) [1917388] - ALSA: hda: Reinstate runtime_allow() for all hda controllers (Jaroslav Kysela) [1917388] - ACPI: Test for ACPI_SUCCESS rather than !ACPI_FAILURE (Jaroslav Kysela) [1917388] - ALSA: hda: Flush pending unsolicited events before suspend (Jaroslav Kysela) [1917388] - ALSA: hda: Re-add dropped snd_poewr_change_state() calls (Jaroslav Kysela) [1917388] - ALSA: hda: Add missing sanity checks in PM prepare/complete callbacks (Jaroslav Kysela) [1917388] - ALSA: hda: Separate runtime and system suspend (Jaroslav Kysela) [1917388] - ALSA: hda: update the power_state during the direct-complete (Jaroslav Kysela) [1917388] - ALSA: hda: Balance runtime/system PM if direct-complete is disabled (Jaroslav Kysela) [1917388] - ALSA: hda: Refactor codec PM to use direct-complete optimization (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Set Initial DMIC volume to -26 dB (Jaroslav Kysela) [1917388] - ALSA: hda: Fix a regression in Capture Switch mixer read (Jaroslav Kysela) [1917388] - ALSA: hda: Add AlderLake-M PCI ID (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook Fury 17 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook Fury 15 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 855 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Chain in pop reduction fixup for ThinkStation P340 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: the bass speaker can't output sound on Yoga 9i (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Headphone volume is controlled by Front mixer (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add some CLOVE SSIDs of ALC293 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add fixup for HP Spectre x360 15-df0xxx (Jaroslav Kysela) [1917388] - ALSA: hda: fixup headset for ASUS GU502 laptop (Jaroslav Kysela) [1917388] - ALSA: hda: Fix for mute key LED for HP Pavilion 15-CK0xx (Jaroslav Kysela) [1917388] - ALSA: hda: generic: change the DAC ctl name for LO+SPK or LO+HP (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add fixup for HP OMEN laptop (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Fix speaker amp on HP Envy AiO 32 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Fix silent headphone output on ASUS UX430UA (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: ALC285 Thinkpad jack pin quirk is unreachable (Jaroslav Kysela) [1917388] - ALSA: hda/conexant: Re-order CX5066 quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Remove redundant entry for ALC861 Haier/Uniwill devices (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC662 quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order remaining ALC269 quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Lenovo quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Sony quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 ASUS quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Dell quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Acer quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 HP quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC882 Clevo quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC882 Sony quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC882 Acer quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Intel Clevo PCx0Dx (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Use CS8409 filter to fix abnormal sounds on Bullseye (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Set Initial DMIC volume for Bullseye to -26 dB (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix static noise on ALC285 Lenovo laptops (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on EliteBook 845 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek - Headset Mic issue on HP platform (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: GA503 use same quirks as GA401 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: fix race in handling acomp ELD notification at resume (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 445 G7 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Lenovo Ideapad S740 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mic boost on Intel NUC 8 (Jaroslav Kysela) [1917388] - ALSA: HDA: Add access description in __snd_hda_add_vmaster (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Fix speaker amp setup on Acer Aspire E1 (Jaroslav Kysela) [1917388] - ALSA: hda/conexant: Apply quirk for another HP ZBook G5 model (Jaroslav Kysela) [1917388] - ALSA: HDA - remove the custom implementation for the audio LED trigger (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 640 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: fix max DP-MST dev_num for Intel TGL+ platforms (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: call alc_update_headset_mode() in hp_automute_hook (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix a determine_headset_type issue for a Dell AIO (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 850 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 440 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Make CS8409 driver more generic by using fixups. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Fix CS42L42 Headset Mic volume control name (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Cleanup patch_cirrus.c code. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add error handling into CS8409 I2C functions (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 840 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: apply pin quirk for XiaomiNotebook Pro (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Apply headset-mic quirks for Xiaomi Redmibook Air (Jaroslav Kysela) [1917388] - ALSA: hda: generic: Fix the micmute led init state (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: Add Sound BlasterX AE-5 Plus support (Jaroslav Kysela) [1917388] - ALSA: hda: Drop the BATCH workaround for AMD controllers (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add Headphone and Headset MIC Volume Control (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add jack detect interrupt support from CS42L42 companion codec. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add support for CS8409 HDA bridge and CS42L42 companion codec. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Increase AUTO_CFG_MAX_INS from 8 to 18 (Jaroslav Kysela) [1917388] - ALSA: hda/conexant: Add quirk for mute LED control on HP ZBook G5 (Jaroslav Kysela) [1917388] - ALSA: hda - bind headset buttons to the headphone jack (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Apply dual codec quirks for MSI Godlike X570 board (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Intel NUC 10 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: let new platforms assign the pcm slot dynamically (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Clevo NH55RZQ (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Enable headset mic of Acer SWIFT with ALC256 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup (Jaroslav Kysela) [1917388] - ALSA: hda: Add another CometLake-H PCI ID (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: Drop bogus check at closing a stream (Jaroslav Kysela) [1917388] - ALSA: hda: Drop power save deny list entry for Clevo W65_67SB (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: modify EAPD in the ALC886 (Jaroslav Kysela) [1917388] - ALSA: hda/via: Apply the workaround generically for Clevo machines (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: Remove unnecessary null-check from hda_tegra_runtime_resume() (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: Reset hardware (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: Use clk_bulk helpers (Jaroslav Kysela) [1917388] - ALSA: hda: Assign boolean values to a bool variable (Jaroslav Kysela) [1917388] - ALSA: hda: boolean values to a bool variable (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Enable headset of ASUS B1400CEPE with ALC256 (Jaroslav Kysela) [1917388] - ALSA: pci: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ALSA: hda/via: Add minimum mute flag (Jaroslav Kysela) [1917388] - ALSA: hda/realtek - Limit int mic boost on Acer Aspire E5-575T (Jaroslav Kysela) [1917388] - ALSA: hda: Add AlderLake-P PCI ID and HDMI codec vid (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi - enable runtime pm for CI AMD display audio (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: fix tegra-hda on tegra30 soc (Jaroslav Kysela) [1917388] - ALSA: hda: Revert "ALSA: hda: Allow setting preallocation again for x86" (Jaroslav Kysela) [1917388] - ALSA: hda: Fix spelling mistakes (Jaroslav Kysela) [1917388] - ALSA: hda: ignore invalid NHLT table (Jaroslav Kysela) [1917388] - ALSA: hda: intel-nhlt: verify config type (Jaroslav Kysela) [1917388] - ALSA: hda: fix kernel-doc warnings (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: add Alder Lake support (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: Add SND_INTEL_BYT_PREFER_SOF Kconfig option (Jaroslav Kysela) [1917388] - ALSA: hda: add link_power op to hdac_bus_ops (Jaroslav Kysela) [1917388] - ALSA: hda: Constify static attribute_group (Jaroslav Kysela) [1917388] - ALSA: hda: Use DIV_ROUND_UP()/roundup() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: ignore dsp_driver parameter for PCI legacy devices (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: add Broadwell ACPI DSP driver selection (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: add helper for ACPI DSP driver selection (Jaroslav Kysela) [1917388] - ALSA: pcm: Fix missing check of the new non-cached buffer type (Jaroslav Kysela) [1917388] - ALSA: pcm: use dma_can_mmap() to check if a device supports dma_mmap_* (Jaroslav Kysela) [1917388] - ALSA: timer: Fix master timer notification (Jaroslav Kysela) [1917388] - ALSA: control led: fix memory leak in snd_ctl_led_register (Jaroslav Kysela) [1917388] - ALSA: control: Fix racy management of user ctl memory size account (Jaroslav Kysela) [1917388] - ALSA: control_led - fix the stack usage (control element ops) (Jaroslav Kysela) [1917388] - ALSA: control - double free in snd_ctl_led_init() (Jaroslav Kysela) [1917388] - ALSA: control: Add memory consumption limit to user controls (Jaroslav Kysela) [1917388] - ALSA: control - off by one in store_mode() (Jaroslav Kysela) [1917388] - ALSA: control led - improve the set_led_id() parser (Jaroslav Kysela) [1917388] - ALSA: control - add the missing prev_lops2 initialization (Jaroslav Kysela) [1917388] - ALSA: led control - add sysfs kcontrol LED marking layer (Jaroslav Kysela) [1917388] - ALSA: control - add sysfs support to the LED trigger module (Jaroslav Kysela) [1917388] - ALSA: control - add generic LED trigger module as the new control layer (Jaroslav Kysela) [1917388] - ALSA: control - add layer registration routines (Jaroslav Kysela) [1917388] - ALSA: control - introduce snd_ctl_notify_one() helper (Jaroslav Kysela) [1917388] - ALSA: core: remove redundant spin_lock pair in snd_card_disconnect (Jaroslav Kysela) [1917388] - ALSA: pcm: Fix couple of typos (Jaroslav Kysela) [1917388] - ALSA: core: avoid -Wempty-body warnings (Jaroslav Kysela) [1917388] - ALSA: pcm: Add debug print on memory allocation failure (Jaroslav Kysela) [1917388] - ALSA: core - add missing compress device type to /proc/asound/devices (Jaroslav Kysela) [1917388] - ALSA: pcm: Use for_each_pcm_substream() macro (Jaroslav Kysela) [1917388] - ALSA: pcm: Don't call sync_stop if it hasn't been stopped (Jaroslav Kysela) [1917388] - ALSA: pcm: Assure sync with the pending stop operation at suspend (Jaroslav Kysela) [1917388] - ALSA: pcm: Call sync_stop at disconnection (Jaroslav Kysela) [1917388] - ASoC: dmaengine_pcm: add peripheral configuration (Jaroslav Kysela) [1917388] - ALSA: core: Fix the debugfs removal at snd_card_free() (Jaroslav Kysela) [1917388] - ALSA: jack: implement software jack injection via debugfs (Jaroslav Kysela) [1917388] - ALSA: pcm: One more dependency for hw constraints (Jaroslav Kysela) [1917388] - ALSA: seq: oss: Fix missing error check in snd_seq_oss_synth_make_info() (Jaroslav Kysela) [1917388] - ALSA: oss: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: core: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: core: Remove redundant comments (Jaroslav Kysela) [1917388] - ALSA: pcm: oss: Fix a few more UBSAN fixes (Jaroslav Kysela) [1917388] - ALSA: pcm: Clear the full allocated memory at hw_params (Jaroslav Kysela) [1917388] - ALSA: memalloc: Align buffer allocations in page size (Jaroslav Kysela) [1917388] - ALSA: pcm: Remove snd_pcm_lib_preallocate_dma_free() (Jaroslav Kysela) [1917388] - ALSA: core: memalloc: add page alignment for iram (Jaroslav Kysela) [1917388] - ALSA: pcm: oss: Fix potential out-of-bounds shift (Jaroslav Kysela) [1917388] - ALSA: rawmidi: Access runtime->avail always in spinlock (Jaroslav Kysela) [1917388] - ALSA: seq: Use bool for snd_seq_queue internal flags (Jaroslav Kysela) [1917388] - ALSA: compress: allow pause and resume during draining (Jaroslav Kysela) [1917388] - ALSA: ctl: fix error path at adding user-defined element set (Jaroslav Kysela) [1917388] - ALSA: seq: remove useless function (Jaroslav Kysela) [1917388] - ALSA: fix kernel-doc markups (Jaroslav Kysela) [1917388] - soundwire: SDCA: add helper macro to access controls (Jaroslav Kysela) [1917388] - soundwire: add static port mapping support (Jaroslav Kysela) [1917388] - soundwire: add definition for DPn BlockPackingMode (Jaroslav Kysela) [1917388] - soundwire: add master quirks for bus clash and parity (Jaroslav Kysela) [1917388] - soundwire: intel: don't return error when clock stop failed (Jaroslav Kysela) [1917388] - soundwire: intel: Use kzalloc for allocating only one thing (Jaroslav Kysela) [1917388] - soundwire: cadence: add status in dev_dbg 'State change' log (Jaroslav Kysela) [1917388] - soundwire: cadence: adjust verbosity in response handling (Jaroslav Kysela) [1917388] - soundwire: cadence: fix ACK/NAK handling (Jaroslav Kysela) [1917388] - soundwire: cadence: reduce timeout on transactions (Jaroslav Kysela) [1917388] - soundwire: bus: use consistent tests for return values (Jaroslav Kysela) [1917388] - soundwire: qcom: fix handling of qcom,ports-block-pack-mode (Jaroslav Kysela) [1917388] - soundwire: intel_init: test link->cdns (Jaroslav Kysela) [1917388] - soundwire: qcom: handle return correctly in qcom_swrm_transport_params (Jaroslav Kysela) [1917388] - soundwire: qcom: cleanup internal port config indexing (Jaroslav Kysela) [1917388] - soundwire: qcom: wait for fifo space to be available before read/write (Jaroslav Kysela) [1917388] - soundwire: qcom: add static port map support (Jaroslav Kysela) [1917388] - soundwire: qcom: update port map allocation bit mask (Jaroslav Kysela) [1917388] - soundwire: stream: fix memory leak in stream config error path (Jaroslav Kysela) [1917388] - soundwire: qcom: use signed variable for error return (Jaroslav Kysela) [1917388] - soundwire: qcom: wait for enumeration to be complete in probe (Jaroslav Kysela) [1917388] - soundwire: qcom: add auto enumeration support (Jaroslav Kysela) [1917388] - soundwire: export sdw_compare_devid, sdw_extract_slave_id and sdw_slave_add (Jaroslav Kysela) [1917388] - soundwire: qcom: add support to new interrupts (Jaroslav Kysela) [1917388] - soundwire: qcom: update register read/write routine (Jaroslav Kysela) [1917388] - soundwire: qcom: start the clock during initialization (Jaroslav Kysela) [1917388] - soundwire: qcom: set continue execution flag for ignored commands (Jaroslav Kysela) [1917388] - soundwire: qcom: add support to missing transport params (Jaroslav Kysela) [1917388] - soundwire: cadence: only prepare attached devices on clock stop (Jaroslav Kysela) [1917388] - soundwire: generic_allocation: fix confusion between group and packing (Jaroslav Kysela) [1917388] - soundwire: bus: Fix device found flag correctly (Jaroslav Kysela) [1917388] - soundwire: cadence_master: fix kernel-doc (Jaroslav Kysela) [1917388] - soundwire: stream: remove useless bus initializations (Jaroslav Kysela) [1917388] - soundwire: stream: remove useless initialization (Jaroslav Kysela) [1917388] - soundwire: qcom: check of_property_read status (Jaroslav Kysela) [1917388] - soundwire: intel: remove useless readl (Jaroslav Kysela) [1917388] - soundwire: generic_bandwidth_allocation: remove useless init (Jaroslav Kysela) [1917388] - soundwire: bus: remove useless initialization (Jaroslav Kysela) [1917388] - soundwire: bus: uniquify dev_err() for SCP_INT access (Jaroslav Kysela) [1917388] - soundwire: bus: demote clock stop prepare log to dev_dbg() (Jaroslav Kysela) [1917388] - soundwire: bus: clarify dev_err/dbg device references (Jaroslav Kysela) [1917388] - soundwire: bus: fix confusion on device used by pm_runtime (Jaroslav Kysela) [1917388] - soundwire: export sdw_write/read_no_pm functions (Jaroslav Kysela) [1917388] - soundwire: bus: use no_pm IO routines for all interrupt handling (Jaroslav Kysela) [1917388] - soundwire: bus: use sdw_write_no_pm when setting the bus scale registers (Jaroslav Kysela) [1917388] - soundwire: bus: use sdw_update_no_pm when initializing a device (Jaroslav Kysela) [1917388] - soundwire: return earlier if no slave is attached (Jaroslav Kysela) [1917388] - soundwire: bus: add better dev_dbg to track complete() calls (Jaroslav Kysela) [1917388] - soundwire: bus: add more details to track failed transfers (Jaroslav Kysela) [1917388] - soundwire: use consistent format for Slave devID logs (Jaroslav Kysela) [1917388] - soundwire: bus: test read status (Jaroslav Kysela) [1917388] - soundwire: bus: use correct driver name in error messages (Jaroslav Kysela) [1917388] - soundwire: qcom: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: stream: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: cadence: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: bandwidth_allocation: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: intel: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: intel: add master quirks for bus clash and parity (Jaroslav Kysela) [1917388] - soundwire: bus: handle master quirks for bus clash and parity (Jaroslav Kysela) [1917388] - soundwire: Intel: add DMI quirk for Dell SKU 0A3E (Jaroslav Kysela) [1917388] - soundwire: Intel: introduce DMI quirks for HP Spectre x360 Convertible (Jaroslav Kysela) [1917388] - soundwire: add override addr ops (Jaroslav Kysela) [1917388] - regmap/SoundWire: sdw: add support for SoundWire 1.2 MBQ (Jaroslav Kysela) [1917388] - tracing: Fix __print_hex_dump scope (Jaroslav Kysela) [1917388] - tracing: Use seq_buf_hex_dump() to dump buffers (Jaroslav Kysela) [1917388] - seq_buf: Add printing formatted hex dumps (Jaroslav Kysela) [1917388] - powerpc/64: Don't trace code that runs with the soft irq mask unreconciled (Desnes A. Nunes do Rosario) [1921631] - powerpc/64: Disable irq restore warning for now (Desnes A. Nunes do Rosario) [1921631] - powerpc/64s: make PACA_IRQ_HARD_DIS track MSR[EE] closely (Desnes A. Nunes do Rosario) [1921631]- watchdog/hpwdt: New PCI IDs (Joseph Szczypek) [1967765] - watchdog: hpwdt: Assign boolean values to a bool variable (Joseph Szczypek) [1967765] - scsi: libfc: Avoid invoking response handler twice if ep is already completed (Chris Leech) [1867301] - Bluetooth: SMP: Fail if remote and local public keys are identical (Gopal Tiwari) [1965083] - rq-qos: fix missed wake-ups in rq_qos_throttle try two (Ming Lei) [1972111] - mm: memcg/slab: disable cache merging for KMALLOC_NORMAL caches (Waiman Long) [1955561] - mm: memcg/slab: create a new set of kmalloc-cg- caches (Waiman Long) [1955561] - mm: memcg/slab: properly set up gfp flags for objcg pointer array (Waiman Long) [1955561] - mm/vmalloc.c:__vmalloc_area_node(): avoid 32-bit overflow (Rafael Aquini) [1970194] - mm: remove the filename in the top of file comment in vmalloc.c (Rafael Aquini) [1970194] - mm: cleanup the gfp_mask handling in __vmalloc_area_node (Rafael Aquini) [1970194] - mm/vmalloc.c: remove unnecessary highmem_mask from parameter of gfpflags_allow_blocking() (Rafael Aquini) [1970194] - mm/swap: fix pte_same_as_swp() not removing uffd-wp bit when compare (Chris von Recklinghausen) [1945442] - userfaultfd: hugetlbfs: fix new flag usage in error path (Chris von Recklinghausen) [1945442] - mm/hugetlb: fix cow where page writtable in child (Chris von Recklinghausen) [1945442] - ovl: fix reference counting in ovl_mmap error path (Chris von Recklinghausen) [1945442] - hugetlb: do early cow when page pinned on src mm (Chris von Recklinghausen) [1945442] - mm: introduce page_needs_cow_for_dma() for deciding whether cow (Chris von Recklinghausen) [1945442] - hugetlb: convert page_huge_active() HPageMigratable flag (Chris von Recklinghausen) [1945442] - hugetlb: use page.private for hugetlb specific page flags (Chris von Recklinghausen) [1945442] - x86/mm: Remove duplicate definition of _PAGE_PAT_LARGE (Chris von Recklinghausen) [1945442] - mm: hugetlbfs: fix cannot migrate the fallocated HugeTLB page (Chris von Recklinghausen) [1945442] - mm: hugetlb: fix a race between isolating and freeing page (Chris von Recklinghausen) [1945442] - mm: hugetlb: remove VM_BUG_ON_PAGE from page_huge_active (Chris von Recklinghausen) [1945442] - mm: introduce vma_set_file function v5 (Chris von Recklinghausen) [1945442] - mm: mmap: fix fput in error path v2 (Chris von Recklinghausen) [1945442] - mm/gup: prevent gup_fast from racing with COW during fork (Chris von Recklinghausen) [1945442] - mm/gup: reorganize internal_get_user_pages_fast() (Chris von Recklinghausen) [1945442] - mm: remove src/dst mm parameter in copy_page_range() (Chris von Recklinghausen) [1945442] - mm: avoid early COW write protect games during fork() (Chris von Recklinghausen) [1945442] - mm/thp: Split huge pmds/puds if they're pinned when fork() (Chris von Recklinghausen) [1945442] - mm: Do early cow for pinned pages during fork() for ptes (Chris von Recklinghausen) [1945442] - mm/fork: Pass new vma pointer into copy_page_range() (Chris von Recklinghausen) [1945442] - mm: move the copy_one_pte() pte_present check into the caller (Chris von Recklinghausen) [1945442] - mm: split out the non-present case from copy_one_pte() (Chris von Recklinghausen) [1945442] - mm/gup: Remove enfornced COW mechanism (Chris von Recklinghausen) [1945442] - mm/hmm.c: delete duplicated word (Chris von Recklinghausen) [1945442] - mm/hmm: provide the page mapping order in hmm_range_fault() (Chris von Recklinghausen) [1945442] - mmap locking API: add mmap_assert_locked() and mmap_assert_write_locked() (Chris von Recklinghausen) [1945442] - mm/gup: introduce pin_user_pages_locked() (Chris von Recklinghausen) [1945442] - mm/gup: introduce pin_user_pages_unlocked (Chris von Recklinghausen) [1945442] - mm: remove the prot argument from vm_map_ram (Chris von Recklinghausen) [1945442] - mm: remove unmap_vmap_area (Chris von Recklinghausen) [1945442] - mm: don't return the number of pages from map_kernel_range{,_noflush} (Chris von Recklinghausen) [1945442] - x86: fix vmap arguments in map_irq_stack (Chris von Recklinghausen) [1945442] - mm/memory: remove unnecessary pte_devmap case in copy_one_pte() (Chris von Recklinghausen) [1945442] - mm/hmm: remove the customizable pfn format from hmm_range_fault (Chris von Recklinghausen) [1945442] - mm/hmm: remove HMM_PFN_SPECIAL (Chris von Recklinghausen) [1945442] - mm/hmm: make hmm_range_fault return 0 or -1 (Chris von Recklinghausen) [1945442] - mm/hugetlb: fix build failure with HUGETLB_PAGE but not HUGEBTLBFS (Chris von Recklinghausen) [1945442] - mm/hmm: return error for non-vma snapshots (Chris von Recklinghausen) [1945442] - mm/hmm: do not set pfns when returning an error code (Chris von Recklinghausen) [1945442] - mm/hmm: do not unconditionally set pfns when returning EBUSY (Chris von Recklinghausen) [1945442] - mm/hmm: use device_private_entry_to_pfn() (Chris von Recklinghausen) [1945442] - mm/hmm: remove HMM_FAULT_SNAPSHOT (Chris von Recklinghausen) [1945442] - mm/hmm: remove unused code and tidy comments (Chris von Recklinghausen) [1945442] - mm/hmm: return the fault type from hmm_pte_need_fault() (Chris von Recklinghausen) [1945442] - mm/hmm: remove pgmap checking for devmap pages (Chris von Recklinghausen) [1945442] - mm/hmm: check the device private page owner in hmm_range_fault() (Chris von Recklinghausen) [1945442] - mm: simplify device private page handling in hmm_range_fault (Chris von Recklinghausen) [1945442] - mm: merge hmm_vma_do_fault into into hmm_vma_walk_hole_ (Chris von Recklinghausen) [1945442] - mm/hmm: don't handle the non-fault case in hmm_vma_walk_hole_() (Chris von Recklinghausen) [1945442] - mm/hmm: simplify hmm_vma_walk_hugetlb_entry() (Chris von Recklinghausen) [1945442] - mm/hmm: remove the unused HMM_FAULT_ALLOW_RETRY flag (Chris von Recklinghausen) [1945442] - mm/hmm: don't provide a stub for hmm_range_fault() (Chris von Recklinghausen) [1945442] - mm/hmm: do not check pmd_protnone twice in hmm_vma_handle_pmd() (Chris von Recklinghausen) [1945442] - mm/hmm: return -EFAULT when setting HMM_PFN_ERROR on requested valid pages (Chris von Recklinghausen) [1945442] - mm/hmm: reorganize how !pte_present is handled in hmm_vma_handle_pte() (Chris von Recklinghausen) [1945442] - mm/hmm: add missing call to hmm_range_need_fault() before returning EFAULT (Chris von Recklinghausen) [1945442] - mm/hmm: add missing pfns set to hmm_vma_walk_pmd() (Chris von Recklinghausen) [1945442] - mm/hmm: remove hmm_range_dma_map and hmm_range_dma_unmap (Chris von Recklinghausen) [1945442] - mm/hmm: make full use of walk_page_range() (Chris von Recklinghausen) [1945442] - mm/hmm: remove hmm_mirror and related (Chris von Recklinghausen) [1945442] - mm/hmm: define the pre-processor related parts of hmm.h even if disabled (Chris von Recklinghausen) [1945442] - mm/hmm: allow hmm_range to be used with a mmu_interval_notifier or hmm_mirror (Chris von Recklinghausen) [1945442] - mm/hmm: hmm_range_fault() infinite loop (Chris von Recklinghausen) [1945442] - mm/hmm: hmm_range_fault() NULL pointer bug (Chris von Recklinghausen) [1945442] - hmm: use mmu_notifier_get/put for 'struct hmm' (Chris von Recklinghausen) [1945442] - mm/hmm: cleanup the hmm_vma_handle_pmd stub (Chris von Recklinghausen) [1945442] - mm/hmm: only define hmm_vma_walk_pud if needed (Chris von Recklinghausen) [1945442] - mm/hmm: cleanup the hmm_vma_walk_hugetlb_entry stub (Chris von Recklinghausen) [1945442] - mm/hmm: don't abuse pte_index() in hmm_vma_handle_pmd (Chris von Recklinghausen) [1945442] - mm/hmm: comment on VM_FAULT_RETRY semantics in handle_mm_fault (Chris von Recklinghausen) [1945442] - mm/hmm: remove the legacy hmm_pfn_* APIs (Chris von Recklinghausen) [1945442] - mm/hmm: remove the mask variable in hmm_vma_walk_hugetlb_entry (Chris von Recklinghausen) [1945442] - mm/hmm: remove the page_shift member from struct hmm_range (Chris von Recklinghausen) [1945442] - mm/hmm: remove superfluous arguments from hmm_range_register (Chris von Recklinghausen) [1945442] - mm/hmm: remove the unused vma argument to hmm_range_dma_unmap (Chris von Recklinghausen) [1945442] - mm/hmm: remove hmm_range vma (Chris von Recklinghausen) [1945442] - mm/hmm: remove hugetlbfs check in hmm_vma_walk_pmd (Chris von Recklinghausen) [1945442] - mm/hmm: merge hmm_range_snapshot into hmm_range_fault (Chris von Recklinghausen) [1945442] - mm/hmm: replace the block argument to hmm_range_fault with a flags value (Chris von Recklinghausen) [1945442] - mm/large system hash: use vmalloc for size > MAX_ORDER when !hashdist (Chris von Recklinghausen) [1945442] - mm/hmm: update HMM documentation (Chris von Recklinghausen) [1945442] - mm: remove the HMM config option (Chris von Recklinghausen) [1945442] - hugetlbfs: on restore reserve error path retain subpool reservation (Chris von Recklinghausen) [1945442] - mm/vmalloc.c: fix potential memory leak (Chris von Recklinghausen) [1945442] - mm/vmalloc: separate put pages and flush VM flags (Chris von Recklinghausen) [1945442] - zsmalloc: switch from alloc_vm_area to get_vm_area (Chris von Recklinghausen) [1945442] - mm: allow a NULL fn callback in apply_to_page_range (Chris von Recklinghausen) [1945442] - mm: add a vmap_pfn function (Chris von Recklinghausen) [1945442] - mm: add a VM_MAP_PUT_PAGES flag for vmap (Chris von Recklinghausen) [1945442] - mm: update the documentation for vfree (Chris von Recklinghausen) [1945442] - mm, slub: use kmem_cache_debug_flags() in deactivate_slab() (Chris von Recklinghausen) [1945442] - mm, slab, slub: clear the slab_cache field when freeing page (Chris von Recklinghausen) [1945442] - mm: slab: provide krealloc_array() (Chris von Recklinghausen) [1945442] - mm: slab: clarify krealloc()'s behavior with __GFP_ZERO (Chris von Recklinghausen) [1945442] - mm/slab_common.c: use list_for_each_entry in dump_unreclaimable_slab() (Chris von Recklinghausen) [1945442] - mm/slub: make add_full() condition more explicit (Chris von Recklinghausen) [1945442] - mm/slub: fix missing ALLOC_SLOWPATH stat when bulk alloc (Chris von Recklinghausen) [1945442] - mm/slub.c: branch optimization in free slowpath (Chris von Recklinghausen) [1945442] - include/linux/slab.h: fix a typo error in comment (Chris von Recklinghausen) [1945442] - mm/vmalloc.c: fix a warning while make xmldocs (Chris von Recklinghausen) [1945442] - mm/userfaultfd: fix memory corruption due to writeprotect (Chris von Recklinghausen) [1945442] - mm/migrate: fixup setting UFFD_WP flag (Chris von Recklinghausen) [1945442] - mm/rmap: fixup copying of soft dirty and uffd ptes (Chris von Recklinghausen) [1945442] - mm/userfaultfd: disable userfaultfd-wp on x86_32 (Chris von Recklinghausen) [1945442] - userfaultfd: selftests: fix SIGSEGV if huge mmap fails (Chris von Recklinghausen) [1945442] - mm: do not rely on mm == current->mm in __get_user_pages_locked (Chris von Recklinghausen) [1945442] - mm: Introduce mm_struct.has_pinned (Chris von Recklinghausen) [1945442] - mm/gup: might_lock_read(mmap_sem) in get_user_pages_fast() (Chris von Recklinghausen) [1945442] - mm: enforce that vmap can't map pages executable (Chris von Recklinghausen) [1945442] - mm: remove map_vm_range (Chris von Recklinghausen) [1945442] - mm: rename vmap_page_range to map_kernel_range (Chris von Recklinghausen) [1945442] - mm: remove vmap_page_range_noflush and vunmap_page_range (Chris von Recklinghausen) [1945442] - mm: only allow page table mappings for built-in zsmalloc (Chris von Recklinghausen) [1945442] - mm: unexport unmap_kernel_range_noflush (Chris von Recklinghausen) [1945442] - userfaultfd: selftests: add write-protect test (Chris von Recklinghausen) [1945442] - userfaultfd: selftests: refactor statistics (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: fix compiler warning (Chris von Recklinghausen) [1945442] - hugetlbfs: call VM_BUG_ON_PAGE earlier in free_huge_page() (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: recycle lock threads first (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: generalize read and poll (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: cleanup help messages (Chris von Recklinghausen) [1945442] - userfaultfd: wp: declare _UFFDIO_WRITEPROTECT conditionally (Chris von Recklinghausen) [1945442] - userfaultfd: wp: UFFDIO_REGISTER_MODE_WP documentation update (Chris von Recklinghausen) [1945442] - userfaultfd: wp: don't wake up when doing write protect (Chris von Recklinghausen) [1945442] - userfaultfd: wp: enabled write protection in userfaultfd API (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add the writeprotect API to userfaultfd ioctl (Chris von Recklinghausen) [1945442] - userfaultfd: wp: support write protection for userfault vma range (Chris von Recklinghausen) [1945442] - khugepaged: skip collapse if uffd-wp detected (Chris von Recklinghausen) [1945442] - userfaultfd: wp: support swap and page migration (Chris von Recklinghausen) [1945442] - mm/mprotect.c: fix compilation warning because of unused 'mm' variable (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add pmd_swp_*uffd_wp() helpers (Chris von Recklinghausen) [1945442] - userfaultfd: wp: drop _PAGE_UFFD_WP properly when fork (Chris von Recklinghausen) [1945442] - userfaultfd: wp: apply _PAGE_UFFD_WP bit (Chris von Recklinghausen) [1945442] - mm: merge parameters for change_protection() (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add UFFDIO_COPY_MODE_WP (Chris von Recklinghausen) [1945442] - userfaultfd: wp: userfaultfd_pte/huge_pmd_wp() helpers (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add WP pagetable tracking to x86 (Chris von Recklinghausen) [1945442] - userfaultfd: wp: hook userfault handler to write protection fault (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add helper for writeprotect check (Chris von Recklinghausen) [1945442] - userfaultfd: untag user pointers (Chris von Recklinghausen) [1945442] - x86/mm/pat: Fix typo in the Kconfig help text (Chris von Recklinghausen) [1945442] - x86/mm/pat: Clean up externs (Chris von Recklinghausen) [1945442] - x86/mm/pat: Rename => (Chris von Recklinghausen) [1945442] - x86/mm/pat: Standardize on memtype_*() prefix for APIs (Chris von Recklinghausen) [1945442] - x86/mm/pat: Move the memtype related files to arch/x86/mm/pat/ (Chris von Recklinghausen) [1945442] - x86/mm/pat: Clean up PAT initialization flags (Chris von Recklinghausen) [1945442] - x86/mm/pat: Harmonize 'struct memtype *' local variable and function parameter use (Chris von Recklinghausen) [1945442] - x86/mm/pat: Simplify the free_memtype() control flow (Chris von Recklinghausen) [1945442] - x86/mm/pat: Create fixed width output in /sys/kernel/debug/x86/pat_memtype_list, similar to the E820 debug printouts (Chris von Recklinghausen) [1945442] - x86/mm/pat: Disambiguate PAT-disabled boot messages (Chris von Recklinghausen) [1945442] - x86/mm/pat: Update the comments in pat.c and pat_interval.c and refresh the code a bit (Chris von Recklinghausen) [1945442] - x86/mm/pat: Fix off-by-one bugs in interval tree search (Chris von Recklinghausen) [1945442] - x86/mm/pat: Rename pat_rbtree.c to pat_interval.c (Chris von Recklinghausen) [1945442] - x86/mm/pat: Drop the rbt_ prefix from external memtype calls (Chris von Recklinghausen) [1945442] - x86/mm/pat: Do not pass 'rb_root' down the memtype tree helper functions (Chris von Recklinghausen) [1945442] - x86/mm/pat: Convert the PAT tree to a generic interval tree (Chris von Recklinghausen) [1945442] - x86/mm: Tabulate the page table encoding definitions (Chris von Recklinghausen) [1945442] - x86/mm: Remove the unused set_memory_wt() function (Chris von Recklinghausen) [1945442] - x86/mm: Remove set_pages_x() and set_pages_nx() (Chris von Recklinghausen) [1945442] - x86/mm: Remove the unused set_memory_array_*() functions (Chris von Recklinghausen) [1945442] - x86/mm: Unexport set_memory_x() and set_memory_nx() (Chris von Recklinghausen) [1945442] - x86/Kconfig: Fix spelling mistake "effectivness" -> "effectiveness" (Chris von Recklinghausen) [1945442] - x86/mm: Remove unused variable 'old_pte' (Chris von Recklinghausen) [1945442] - Revert "x86/mm/pat: Rename pat_rbtree.c to pat_interval.c" (Chris von Recklinghausen) [1945442] - Revert "x86/mm/pat: Move the memtype related files to arch/x86/mm/pat/" (Chris von Recklinghausen) [1945442] - ipv6: Allow the l3mdev to be a loopback (Antoine Tenart) [1973229] - vrf: do not push non-ND strict packets with a source LLA through packet taps again (Antoine Tenart) [1965600] - vrf: packets with lladdr src needs dst at input with orig_iif when needs strict (Antoine Tenart) [1965600] - ipv6: Fix handling of LLA with VRF and sockets bound to VRF (Antoine Tenart) [1965600] - ipv6: allow ping to link-local address in VRF (Antoine Tenart) [1965600] - vrf: mark skb for multicast or link-local as enslaved to VRF (Antoine Tenart) [1965600] - net: allow traceroute with a specified interface in a vrf (Antoine Tenart) [1965600] - virtchnl: Enable RSS configure for AVF (Ivan Vecera) [1966954] - virtchnl: Advertise virtchnl UDP segmentation offload capability (Ivan Vecera) [1966954] - virtchnl: Allow ignoring opcodes on specific VF (Ivan Vecera) [1966954] - virtchnl: Fix layout of RSS structures (Ivan Vecera) [1966954] - virtchnl: Enable FDIR Configure for AVF (Ivan Vecera) [1966954] - virtchnl: Add missing explicit padding to structures (Ivan Vecera) [1966954] - virtchnl: use u8 type for a field in the virtchnl_filter struct (Ivan Vecera) [1966954] - tools headers uapi: Sync tools/include/uapi/linux/perf_event.h (Michael Petlan) [1944685] - tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1944685] - bpf: Add size arg to build_id_parse function (Michael Petlan) [1944685] - bpf: Move stack_map_get_build_id into lib (Michael Petlan) [1944685] - perf map: Fix error return code in maps__clone() (Michael Petlan) [1944685] - perf ftrace: Fix access to pid in array when setting a pid filter (Michael Petlan) [1944685] - perf auxtrace: Fix potential NULL pointer dereference (Michael Petlan) [1944685] - perf data: Fix error return code in perf_data__create_dir() (Michael Petlan) [1944685] - perf arm-spe: Avoid potential buffer overrun (Michael Petlan) [1944685] - perf report: Fix wrong LBR block sorting (Michael Petlan) [1944685] - perf inject: Fix repipe usage (Michael Petlan) [1944685] - perf test: Change to use bash for daemon test (Michael Petlan) [1944685] - perf record: Fix memory leak in vDSO found using ASAN (Michael Petlan) [1944685] - perf test: Remove now useless failing sub test "BPF relocation checker" (Michael Petlan) [1944685] - perf daemon: Return from kill functions (Michael Petlan) [1944685] - perf daemon: Force waipid for all session on SIGCHLD delivery (Michael Petlan) [1944685] - perf top: Fix BPF support related crash with perf_event_paranoid=3 + kptr_restrict (Michael Petlan) [1944685] - perf pmu: Validate raw event with sysfs exported format bits (Michael Petlan) [1944685] - perf synthetic events: Avoid write of uninitialized memory when generating PERF_RECORD_MMAP* records (Michael Petlan) [1944685] - perf synthetic-events: Fix uninitialized 'kernel_thread' variable (Michael Petlan) [1944685] - perf auxtrace: Fix auxtrace queue conflict (Michael Petlan) [1944685] - perf cs-etm: Fix bitmap for option (Michael Petlan) [1944685] - perf map: Tighten snprintf() string precision to pass gcc check on some 32-bit arches (Michael Petlan) [1944685] - perf report: Fix -F for branch & mem modes (Michael Petlan) [1944685] - perf tests x86: Move insn.h include to make sure it finds stddef.h (Michael Petlan) [1944685] - perf test: Support the ins_lat check in the X86 specific test (Michael Petlan) [1944685] - perf test: Fix sample-parsing failure on non-x86 platforms (Michael Petlan) [1944685] - perf archive: Fix filtering of empty build-ids (Michael Petlan) [1944685] - perf daemon: Fix compile error with Asan (Michael Petlan) [1944685] - perf stat: Fix use-after-free when -r option is used (Michael Petlan) [1944685] - libperf: Add perf_evlist__reset_id_hash() (Michael Petlan) [1944685] - perf stat: Fix wrong skipping for per-die aggregation (Michael Petlan) [1944685] - tools headers UAPI: Update tools' copy of linux/coresight-pmu.h (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in perf_time_to_tsc test (Michael Petlan) [1944685] - perf test: Fix cpu map leaks in cpu_map_print test (Michael Petlan) [1944685] - perf test: Fix a memory leak in thread_map_remove test (Michael Petlan) [1944685] - perf test: Fix a thread map leak in thread_map_synthesize test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in switch_tracking test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in keep_tracking test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in code_reading test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in sw_clock_freq test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in task_exit test (Michael Petlan) [1944685] - perf test: Fix a memory leak in attr test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in basic mmap test (Michael Petlan) [1944685] - perf tools: Fix event's PMU name parsing (Michael Petlan) [1944685] - perf daemon: Fix running test for non root user (Michael Petlan) [1944685] - perf daemon: Fix control fifo permissions (Michael Petlan) [1944685] - perf build: Fix ccache usage in $(CC) when generating arch errno table (Michael Petlan) [1944685] - perf tools: Fix documentation of verbose options (Michael Petlan) [1944685] - perf traceevent: Ensure read cmdlines are null terminated. (Michael Petlan) [1944685] - perf diff: Don't crash on freeing errno-session on the error path (Michael Petlan) [1944685] - perf tools: Clean 'generated' directory used for creating the syscall table on x86 (Michael Petlan) [1944685] - perf build: Move feature cleanup under tools/build (Michael Petlan) [1944685] - perf tools: Cast (struct timeval).tv_sec when printing (Michael Petlan) [1944685] - perf buildid-cache: Don't skip 16-byte build-ids (Michael Petlan) [1944685] - perf buildid-cache: Add test for 16-byte build-id (Michael Petlan) [1944685] - perf symbol: Remove redundant libbfd checks (Michael Petlan) [1944685] - perf test: Output the sub testing result in cs-etm (Michael Petlan) [1944685] - perf test: Suppress logs in cs-etm testing (Michael Petlan) [1944685] - perf tools: Fix arm64 build error with gcc-11 (Michael Petlan) [1944685] - perf intel-pt: Add documentation for tracing virtual machines (Michael Petlan) [1944685] - perf intel-pt: Split VM-Entry and VM-Exit branches (Michael Petlan) [1944685] - perf intel-pt: Adjust sample flags for VM-Exit (Michael Petlan) [1944685] - perf intel-pt: Allow for a guest kernel address filter (Michael Petlan) [1944685] - perf intel-pt: Support decoding of guest kernel (Michael Petlan) [1944685] - perf machine: Factor out machine__idle_thread() (Michael Petlan) [1944685] - perf machine: Factor out machines__find_guest() (Michael Petlan) [1944685] - perf intel-pt: Amend decoder to track the NR flag (Michael Petlan) [1944685] - perf intel-pt: Retain the last PIP packet payload as is (Michael Petlan) [1944685] - perf intel_pt: Add vmlaunch and vmresume as branches (Michael Petlan) [1944685] - perf script: Add branch types for VM-Entry and VM-Exit (Michael Petlan) [1944685] - perf auxtrace: Automatically group aux-output events (Michael Petlan) [1944685] - perf test: Fix unaligned access in sample parsing test (Michael Petlan) [1944685] - perf tools: Support arch specific PERF_SAMPLE_WEIGHT_STRUCT processing (Michael Petlan) [1944685] - perf intel-pt: Add PSB events (Michael Petlan) [1944685] - perf intel-pt: Fix IPC with CYC threshold (Michael Petlan) [1944685] - perf intel-pt: Fix premature IPC (Michael Petlan) [1944685] - perf intel-pt: Fix missing CYC processing in PSB (Michael Petlan) [1944685] - perf record: Fix continue profiling after draining the buffer (Michael Petlan) [1944685] - perf tools: Simplify the calculation of variables (Michael Petlan) [1944685] - perf vendor events arm64: Add JSON metrics for imx8mp DDR Perf (Michael Petlan) [1944685] - perf vendor events arm64: Add JSON metrics for imx8mq DDR Perf (Michael Petlan) [1944685] - perf vendor events arm64: Add JSON metrics for imx8mn DDR Perf (Michael Petlan) [1944685] - perf vendor events arm64: Fix indentation of brackets in imx8mm metrics (Michael Petlan) [1944685] - perf annotate: Do not jump after 'k' is pressed (Michael Petlan) [1944685] - perf metricgroup: Remove unneeded semicolon (Michael Petlan) [1944685] - perf tools: Add OCaml demangling (Michael Petlan) [1944685] - tools api fs: Cache cgroupfs mount point (Michael Petlan) [1944685] - tools api fs: Diet cgroupfs_find_mountpoint() (Michael Petlan) [1944685] - tools api fs: Prefer cgroup v1 path in cgroupfs_find_mountpoint() (Michael Petlan) [1944685] - perf symbols: Resolve symbols against debug file first (Michael Petlan) [1944685] - perf probe: Fix kretprobe issue caused by GCC bug (Michael Petlan) [1944685] - perf symbols: Fix return value when loading PE DSO (Michael Petlan) [1944685] - perf symbols: Make dso__load_bfd_symbols() load PE files from debug cache only (Michael Petlan) [1944685] - perf symbols: Use (long) for iterator for bfd symbols (Michael Petlan) [1944685] - perf annotate: Fix jump parsing for C++ code. (Michael Petlan) [1944685] - perf arm-spe: Set sample's data source field (Michael Petlan) [1944685] - perf arm-spe: Synthesize memory event (Michael Petlan) [1944685] - perf arm-spe: Fill address info for samples (Michael Petlan) [1944685] - perf arm-spe: Store operation type in packet (Michael Petlan) [1944685] - perf arm-spe: Store memory address in packet (Michael Petlan) [1944685] - perf arm-spe: Enable sample type PERF_SAMPLE_DATA_SRC (Michael Petlan) [1944685] - perf env: Remove unneeded internal/cpumap inclusions (Michael Petlan) [1944685] - perf tools: Remove unused xyarray.c as it was moved to tools/lib/perf (Michael Petlan) [1944685] - perf tools: Replace lkml.org links with lore (Michael Petlan) [1944685] - perf tests: Add daemon 'lock' test (Michael Petlan) [1944685] - perf tests: Add daemon 'ping' command test (Michael Petlan) [1944685] - perf tests: Add daemon 'signal' command test (Michael Petlan) [1944685] - perf tests: Add daemon 'stop' command test (Michael Petlan) [1944685] - perf tests: Add daemon reconfig test (Michael Petlan) [1944685] - perf tests: Add daemon 'list' command test (Michael Petlan) [1944685] - perf daemon: Add examples to man page (Michael Petlan) [1944685] - perf daemon: Add up time for daemon/session list (Michael Petlan) [1944685] - perf daemon: Use control to stop session (Michael Petlan) [1944685] - perf daemon: Add 'ping' command (Michael Petlan) [1944685] - perf daemon: Set control fifo for session (Michael Petlan) [1944685] - perf daemon: Allow only one daemon over base directory (Michael Petlan) [1944685] - perf daemon: Add 'stop' command (Michael Petlan) [1944685] - perf daemon: Add 'signal' command (Michael Petlan) [1944685] - perf daemon: Add 'list' command (Michael Petlan) [1944685] - perf daemon: Add signalfd support (Michael Petlan) [1944685] - perf daemon: Add background support (Michael Petlan) [1944685] - perf daemon: Add config file change check (Michael Petlan) [1944685] - perf daemon: Add config file support (Michael Petlan) [1944685] - perf daemon: Add client socket support (Michael Petlan) [1944685] - perf daemon: Add server socket support (Michael Petlan) [1944685] - perf daemon: Add base option (Michael Petlan) [1944685] - perf daemon: Add config option (Michael Petlan) [1944685] - perf daemon: Add daemon command (Michael Petlan) [1944685] - perf script: Simplify bool conversion (Michael Petlan) [1944685] - perf arm64/s390: Fix printf conversion specifier for IP addresses (Michael Petlan) [1944685] - perf script: Support filtering by hex address (Michael Petlan) [1944685] - perf intlist: Change 'struct intlist' int member to 'unsigned long' (Michael Petlan) [1944685] - perf tools: Update topdown documentation for Sapphire Rapids (Michael Petlan) [1944685] - perf stat: Support L2 Topdown events (Michael Petlan) [1944685] - perf test: Support PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [1944685] - perf report: Support instruction latency (Michael Petlan) [1944685] - perf tools: Support PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [1944685] - perf c2c: Support data block and addr block (Michael Petlan) [1944685] - perf tools: Support data block and addr block (Michael Petlan) [1944685] - perf tools: Support the auxiliary event (Michael Petlan) [1944685] - perf probe: Add protection to avoid endless loop (Michael Petlan) [1944685] - perf trace-event-info: Rename for_each_event. (Michael Petlan) [1944685] - perf inject jit: Add namespaces support (Michael Petlan) [1944685] - perf namespaces: Add 'in_pidns' to nsinfo struct (Michael Petlan) [1944685] - perf tools: Use scandir() to iterate threads when synthesizing PERF_RECORD_ events (Michael Petlan) [1944685] - perf tools: Skip PERF_RECORD_MMAP event synthesis for kernel threads (Michael Petlan) [1944685] - perf tools: Use /proc//task//status for PERF_RECORD_ event synthesis (Michael Petlan) [1944685] - perf vendor events arm64: Reference common and uarch events for A76 (Michael Petlan) [1944685] - perf vendor events arm64: Reference common and uarch events for Ampere eMag (Michael Petlan) [1944685] - perf vendor events arm64: Add common and uarch event JSON (Michael Petlan) [1944685] - perf vendor events arm64: Fix Ampere eMag event typo (Michael Petlan) [1944685] - perf script: Support DSO filter like in other perf tools (Michael Petlan) [1944685] - perf tools: Fix DSO filtering when not finding a map for a sampled address (Michael Petlan) [1944685] - perf stat: Add Topdown metrics events as default events (Michael Petlan) [1944685] - perf test: Add parse-metric memory bandwidth testcase (Michael Petlan) [1944685] - perf tools: Add 'ping' control command (Michael Petlan) [1944685] - perf tools: Add 'stop' control command (Michael Petlan) [1944685] - perf config: Make perf_config_global() global (Michael Petlan) [1944685] - perf config: Make perf_config_system() global (Michael Petlan) [1944685] - perf config: Add perf_home_perfconfig function (Michael Petlan) [1944685] - perf debug: Add debug_set_display_time function (Michael Petlan) [1944685] - perf config: Add config set interface (Michael Petlan) [1944685] - perf config: Make perf_config_from_file() static (Michael Petlan) [1944685] - perf test: Add test case for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf report: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf script: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf record: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf mem: Support data page size (Michael Petlan) [1944685] - perf mem: Clean up output format (Michael Petlan) [1944685] - perf cs-etm: Update ARM's CoreSight hardware tracing OpenCSD library to v1.0.0 (Michael Petlan) [1944685] - perf c2c: Add local variables for output metrics (Michael Petlan) [1944685] - perf c2c: Refactor node display (Michael Petlan) [1944685] - perf c2c: Fix argument type for percent() (Michael Petlan) [1944685] - perf c2c: Refactor display filter (Michael Petlan) [1944685] - perf c2c: Refactor hist entry validation (Michael Petlan) [1944685] - perf c2c: Rename for shared cache line stats (Michael Petlan) [1944685] - perf stat: Enable counting events for BPF programs (Michael Petlan) [1944685] - perf build: Support build BPF skeletons with perf (Michael Petlan) [1944685] - perf record: Tweak "Lowering..." warning in record_opts__config_freq (Michael Petlan) [1944685] - perf buildid-list: Add support for mmap2's buildid events (Michael Petlan) [1944685] - perf buildid-cache: Add --debuginfod option to specify a server to fetch debug files (Michael Petlan) [1944685] - perf tools: Add support to display build ids when available in PERF_RECORD_MMAP2 events (Michael Petlan) [1944685] - perf record: Add --buildid-mmap option to enable PERF_RECORD_MMAP2's build id (Michael Petlan) [1944685] - perf tools: Allow synthesizing the build id for kernel/modules/tasks in PERF_RECORD_MMAP2 (Michael Petlan) [1944685] - perf tools: Allow using PERF_RECORD_MMAP2 to synthesize the kernel modules maps (Michael Petlan) [1944685] - perf tools: Allow using PERF_RECORD_MMAP2 to synthesize the kernel map (Michael Petlan) [1944685] - perf tools: Store build id when available in PERF_RECORD_MMAP2 metadata events (Michael Petlan) [1944685] - perf tools: Do not swap mmap2 fields in case it contains build id (Michael Petlan) [1944685] - perf arm64: Add argument support for SDT (Michael Petlan) [1944685] - perf probe: Fixup Arm64 SDT arguments (Michael Petlan) [1944685] - perf/x86/kvm: Fix Broadwell Xeon stepping in isolation_ucodes[] (Michael Petlan) [1944685] - perf/x86/intel: Fix unchecked MSR access error caused by VLBR_EVENT (Michael Petlan) [1944685] - perf/x86/intel: Fix a crash caused by zero PEBS status (Michael Petlan) [1944685] - perf/x86/intel: Set PERF_ATTACH_SCHED_CB for large PEBS and LBR (Michael Petlan) [1944685] - perf/core: Flush PMU internal buffers for per-CPU events (Michael Petlan) [1944685] - perf/x86/rapl: Fix psys-energy event on Intel SPR platform (Michael Petlan) [1944685] - perf/x86/rapl: Only check lower 32bits for RAPL energy counters (Michael Petlan) [1944685] - perf/x86/rapl: Add msr mask support (Michael Petlan) [1944685] - perf/x86/kvm: Add Cascade Lake Xeon steppings to isolation_ucodes[] (Michael Petlan) [1944685] - perf/x86/intel: Support CPUID 10.ECX to disable fixed counters (Michael Petlan) [1944685] - perf/x86/intel: Add perf core PMU support for Sapphire Rapids (Michael Petlan) [1944685] - perf/x86/intel: Filter unsupported Topdown metrics event (Michael Petlan) [1944685] - perf/x86/intel: Factor out intel_update_topdown_event() (Michael Petlan) [1944685] - perf/core: Add PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [1944685] - perf/intel: Remove Perfmon-v4 counter_freezing support (Michael Petlan) [1944685] - perf: Add build id data in mmap2 event (Michael Petlan) [1944685] - bpf: Remove atomics tests from test_progs (Jiri Olsa) [1874007] - libbpf: Fixes incorrect rx_ring_setup_done (Jiri Olsa) [1874007] - error-injection: Consolidate override function definition (Jiri Olsa) [1874007] - selftests/bpf: Fix endianness issues in atomic tests (Jiri Olsa) [1874007] - bpf: Fix a spelling typo in bpf_atomic_alu_string disasm (Jiri Olsa) [1874007] - bpf, x86: Fix BPF_FETCH atomic and/or/xor with r0 as src (Jiri Olsa) [1874007] - bpf: Explicitly zero-extend R0 after 32-bit cmpxchg (Jiri Olsa) [1874007] - bpf: Account for BPF_FETCH in insn_has_def32() (Jiri Olsa) [1874007] - bpf: Fix subreg optimization for BPF_FETCH (Jiri Olsa) [1874007] - bpf: Fix the irq and nmi check in bpf_sk_storage for tracing usage (Jiri Olsa) [1874007] - selftests/bpf: Fix a compiler warning in local_storage test (Jiri Olsa) [1874007] - bpf: Change 'BPF_ADD' to 'BPF_AND' in print_bpf_insn() (Jiri Olsa) [1874007] - selftests/bpf: Don't exit on failed bpf_testmod unload (Jiri Olsa) [1874007] - bpf: Avoid old-style declaration warnings (Jiri Olsa) [1874007] - bpf: Dont allow vmlinux BTF to be used in map_create and prog_load. (Jiri Olsa) [1874007] - tools: Factor Clang, LLC and LLVM utils definitions (Jiri Olsa) [1874007] - tools/runqslower: Build bpftool using HOSTCC (Jiri Olsa) [1874007] - tools/runqslower: Enable out-of-tree build (Jiri Olsa) [1874007] - tools/runqslower: Use Makefile.include (Jiri Olsa) [1874007] - bpf: Expose bpf_sk_storage_* to iterator programs (Jiri Olsa) [1874007] - tools/resolve_btfids: Warn when having multiple IDs for single type (Jiri Olsa) [1874007] - tools/resolve_btfids: Fix some error messages (Jiri Olsa) [1874007] - samples/bpf: Add BPF_ATOMIC_OP macro for BPF samples (Jiri Olsa) [1874007] - samples/bpf: Fix possible hang in xdpsock with multiple threads (Jiri Olsa) [1874007] - bpf: samples: Do not touch RLIMIT_MEMLOCK (Jiri Olsa) [1874007] - samples/bpf: Use recvfrom() in xdpsock/l2fwd (Jiri Olsa) [1874007] - samples/bpf: Use recvfrom() in xdpsock/rxdrop (Jiri Olsa) [1874007] - samples: bpf: Remove bpf_load loader completely (Jiri Olsa) [1874007] - samples: bpf: Fix lwt_len_hist reusing previous BPF map (Jiri Olsa) [1874007] - samples: bpf: Refactor test_overhead program with libbpf (Jiri Olsa) [1874007] - samples: bpf: Refactor task_fd_query program with libbpf (Jiri Olsa) [1874007] - samples: bpf: Refactor test_cgrp2_sock2 program with libbpf (Jiri Olsa) [1874007] - samples: bpf: Refactor hbm program with libbpf (Jiri Olsa) [1874007] - samples/bpf: Increment Tx stats at sending (Jiri Olsa) [1874007] - samples/bpf: Remove unused test_ipip.sh (Jiri Olsa) [1874007] - samples/bpf: Remove duplicate include in hbm (Jiri Olsa) [1874007] - bpftool: Fix compilation failure for net.o with older glibc (Jiri Olsa) [1874007] - tools/bpftool: Auto-detect split BTFs in common cases (Jiri Olsa) [1874007] - tools/bpftool: Emit name for anonymous BTFs (Jiri Olsa) [1874007] - bpftool: Add {i,d}tlb_misses support for bpftool profile (Jiri Olsa) [1874007] - tools/bpf: Always run the *-clean recipes (Jiri Olsa) [1874007] - tools/bpf: Add bootstrap/ to .gitignore (Jiri Olsa) [1874007] - tools/bpftool: Fix cross-build (Jiri Olsa) [1874007] - tools/bpftool: Force clean of out-of-tree build (Jiri Olsa) [1874007] - tools/bpftool: Add support for in-kernel and named BTF in `btf show` (Jiri Olsa) [1874007] - bpftool: Add support for task local storage (Jiri Olsa) [1874007] - tools/bpftool: Add bpftool support for split BTF (Jiri Olsa) [1874007] - bpf: Unbreak BPF_PROG_TYPE_KPROBE when kprobe is called via do_int3 (Jiri Olsa) [1874007] - bpf: Fix bpf_put_raw_tracepoint()'s use of __module_address() (Jiri Olsa) [1874007] - bpf: Expose bpf_d_path helper to sleepable LSM hooks (Jiri Olsa) [1874007] - bpf: Allow using bpf_sk_storage in FENTRY/FEXIT/RAW_TP (Jiri Olsa) [1874007] - selftests/bpf: Add remaining ASSERT_xxx() variants (Jiri Olsa) [1874007] - libbpf: Fix potential NULL pointer dereference (Jiri Olsa) [1874007] - libbpf: Only create rx and tx XDP rings when necessary (Jiri Olsa) [1874007] - libbpf: Ensure umem pointer is non-NULL before dereferencing (Jiri Olsa) [1874007] - libbpf: Restore umem state after socket create failure (Jiri Olsa) [1874007] - selftests/bpf: Fix core_reloc test runner (Jiri Olsa) [1874007] - bpf: Fix umd memory leak in copy_process() (Jiri Olsa) [1874007] - libbpf: Fix error path in bpf_object__elf_init() (Jiri Olsa) [1874007] - bpf: Change inode_storage's lookup_elem return value from NULL to -EBADF (Jiri Olsa) [1874007] - bpf: Prohibit alu ops for pointer types not defining ptr_limit (Jiri Olsa) [1874007] - selftests/bpf: Use the last page in test_snprintf_btf on s390 (Jiri Olsa) [1874007] - bpf: Be less specific about socket cookies guarantees (Jiri Olsa) [1874007] - bpf: Fix 32 bit src register truncation on div/mod (Jiri Olsa) [1874007] - bpf: Fix verifier jmp32 pruning decision logic (Jiri Olsa) [1874007] - bpf: Fix verifier jsgt branch analysis on max bound (Jiri Olsa) [1874007] - bpf: Check for integer overflow when using roundup_pow_of_two() (Jiri Olsa) [1874007] - bpf, preload: Fix build when $(O) points to a relative path (Jiri Olsa) [1874007] - bpf: Drop disabled LSM hooks from the sleepable set (Jiri Olsa) [1874007] - bpf, cgroup: Fix problematic bounds check (Jiri Olsa) [1874007] - bpf, cgroup: Fix optlen WARN_ON_ONCE toctou (Jiri Olsa) [1874007] - bpf: Fix signed_{sub,add32}_overflows type handling (Jiri Olsa) [1874007] - bpf: Fix helper bpf_map_peek_elem_proto pointing to wrong callback (Jiri Olsa) [1874007] - selftests/bpf: Add verifier test for PTR_TO_MEM spill (Jiri Olsa) [1874007] - bpf: Support PTR_TO_MEM{,_OR_NULL} register spilling (Jiri Olsa) [1874007] - libbpf: Allow loading empty BTFs (Jiri Olsa) [1874007] - bpf: Allow empty module BTFs (Jiri Olsa) [1874007] - bpf: Don't leak memory in bpf getsockopt when optlen == 0 (Jiri Olsa) [1874007] - bpf: Update local storage test to check handling of null ptrs (Jiri Olsa) [1874007] - bpf: Fix typo in bpf_inode_storage.c (Jiri Olsa) [1874007] - bpf: Add size arg to build_id_parse function (Jiri Olsa) [1874007] - bpf: Move stack_map_get_build_id into lib (Jiri Olsa) [1874007] - bpf: Add tests for new BPF atomic operations (Jiri Olsa) [1874007] - bpf: Add bitwise atomic instructions (Jiri Olsa) [1874007] - bpf: Pull out a macro for interpreting atomic ALU operations (Jiri Olsa) [1874007] - bpf: Add instructions for atomic_[cmp]xchg (Jiri Olsa) [1874007] - bpf: Add BPF_FETCH field / create atomic_fetch_add instruction (Jiri Olsa) [1874007] - bpf: Move BPF_STX reserved field check into BPF_STX verifier code (Jiri Olsa) [1874007] - bpf: Rename BPF_XADD and prepare to encode other atomics in .imm (Jiri Olsa) [1874007] - bpf: x86: Factor out a lookup table for some ALU opcodes (Jiri Olsa) [1874007] - bpf: x86: Factor out emission of REX byte (Jiri Olsa) [1874007] - bpf: x86: Factor out emission of ModR/M for *(reg + off) (Jiri Olsa) [1874007] - bpf, libbpf: Avoid unused function warning on bpf_tail_call_static (Jiri Olsa) [1874007] - selftests/bpf: Install btf_dump test cases (Jiri Olsa) [1874007] - selftests/bpf: Fix installation of urandom_read (Jiri Olsa) [1874007] - selftests/bpf: Move generated test files to $(TEST_GEN_FILES) (Jiri Olsa) [1874007] - selftests/bpf: Fix out-of-tree build (Jiri Olsa) [1874007] - selftests/bpf: Enable cross-building (Jiri Olsa) [1874007] - selftests/bpf: Test kernel module ksym externs (Jiri Olsa) [1874007] - libbpf: Support kernel module ksym externs (Jiri Olsa) [1874007] - bpf: Support BPF ksym variables in kernel modules (Jiri Olsa) [1874007] - selftests/bpf: Sync RCU before unloading bpf_testmod (Jiri Olsa) [1874007] - bpf: Fix a verifier message for alloc size helper arg (Jiri Olsa) [1874007] - bpf: Clarify return value of probe str helpers (Jiri Olsa) [1874007] - libbpf: Clarify kernel type use with USER variants of CORE reading macros (Jiri Olsa) [1874007] - selftests/bpf: Remove duplicate include in test_lsm (Jiri Olsa) [1874007] - bpf: Remove unnecessary include from preload/iterators (Jiri Olsa) [1874007] - selftests/bpf: Add tests for user- and non-CO-RE BPF_CORE_READ() variants (Jiri Olsa) [1874007] - libbpf: Add non-CO-RE variants of BPF_CORE_READ() macro family (Jiri Olsa) [1874007] - selftests/bpf: Fix a compile error for BPF_F_BPRM_SECUREEXEC (Jiri Olsa) [1874007] - bpf: Use thread_group_leader() (Jiri Olsa) [1874007] - bpf: Save correct stopping point in file seq iteration (Jiri Olsa) [1874007] - selftests/bpf: Work-around EBUSY errors from hashmap update/delete (Jiri Olsa) [1874007] - bpf: Add schedule point in htab_init_buckets() (Jiri Olsa) [1874007] - bpf: Remove unused including (Jiri Olsa) [1874007] - selftests/bpf: Fix spelling mistake "tranmission" -> "transmission" (Jiri Olsa) [1874007] - selftests/bpf: Clarify build error if no vmlinux (Jiri Olsa) [1874007] - tweewide: Fix most Shebang lines (Jiri Olsa) [1874007] - bpf: In bpf_task_fd_query use fget_task (Jiri Olsa) [1874007] - selftests/bpf: Add a test for ptr_to_map_value on stack for helper access (Jiri Olsa) [1874007] - bpf: Permits pointers on stack for helper calls (Jiri Olsa) [1874007] - libbpf: Expose libbpf ring_buffer epoll_fd (Jiri Olsa) [1874007] - selftests/bpf: Add set_attach_target() API selftest for module target (Jiri Olsa) [1874007] - libbpf: Support modules in bpf_program__set_attach_target() API (Jiri Olsa) [1874007] - selftests/bpf: Silence ima_setup.sh when not running in verbose mode. (Jiri Olsa) [1874007] - selftests/bpf: Drop the need for LLVM's llc (Jiri Olsa) [1874007] - selftests/bpf: fix bpf_testmod.ko recompilation logic (Jiri Olsa) [1874007] - selftests/bpf: Make selftest compilation work on clang 11 (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - adding xdpxceiver to .gitignore (Jiri Olsa) [1874007] - selftests/bpf: Drop tcp-{client,server}.py from Makefile (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - Bi-directional Sockets - SKB, DRV (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - Socket Teardown - SKB, DRV (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - DRV POLL, NOPOLL (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - SKB POLL, NOPOLL (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests framework (Jiri Olsa) [1874007] - bpf: Return -ENOTSUPP when attaching to non-kernel BTF (Jiri Olsa) [1874007] - bpf: Propagate __user annotations properly (Jiri Olsa) [1874007] - bpf: Avoid overflows involving hash elem_size (Jiri Olsa) [1874007] - selftests/bpf: Test bpf_sk_storage_get in tcp iterators (Jiri Olsa) [1874007] - selftests/bpf: Add an iterator selftest for bpf_sk_storage_get (Jiri Olsa) [1874007] - selftests/bpf: Add an iterator selftest for bpf_sk_storage_delete (Jiri Olsa) [1874007] - bpf: Add a bpf_sock_from_file helper (Jiri Olsa) [1874007] - selftests/bpf: Avoid errno clobbering (Jiri Olsa) [1874007] - selftests/bpf: Print reason when a tester could not run a program (Jiri Olsa) [1874007] - selftests/bpf: Fix invalid use of strncat in test_sockmap (Jiri Olsa) [1874007] - libbpf: Use memcpy instead of strncpy to please GCC (Jiri Olsa) [1874007] - selftests/bpf: Add fentry/fexit/fmod_ret selftest for kernel module (Jiri Olsa) [1874007] - selftests/bpf: Add tp_btf CO-RE reloc test for modules (Jiri Olsa) [1874007] - libbpf: Support attachment of BPF tracing programs to kernel modules (Jiri Olsa) [1874007] - libbpf: Factor out low-level BPF program loading helper (Jiri Olsa) [1874007] - bpf: Allow to specify kernel module BTFs when attaching BPF programs (Jiri Olsa) [1874007] - bpf: Remove hard-coded btf_vmlinux assumption from BPF verifier (Jiri Olsa) [1874007] - selftests/bpf: Add CO-RE relocs selftest relying on kernel module BTF (Jiri Olsa) [1874007] - selftests/bpf: Add support for marking sub-tests as skipped (Jiri Olsa) [1874007] - selftests/bpf: Add bpf_testmod kernel module for testing (Jiri Olsa) [1874007] - libbpf: Add kernel module BTF support for CO-RE relocations (Jiri Olsa) [1874007] - libbpf: Refactor CO-RE relocs to not assume a single BTF object (Jiri Olsa) [1874007] - libbpf: Add internal helper to load BTF data by FD (Jiri Olsa) [1874007] - selftests/bpf: Add Userspace tests for TCP_WINDOW_CLAMP (Jiri Olsa) [1874007] - bpf: Fix cold build of test_progs-no_alu32 (Jiri Olsa) [1874007] - libbpf: Cap retries in sys_bpf_prog_load (Jiri Olsa) [1874007] - libbpf: Sanitise map names before pinning (Jiri Olsa) [1874007] - libbpf: Fail early when loading programs with unspecified type (Jiri Olsa) [1874007] - selftests/bpf: Indent ima_setup.sh with tabs. (Jiri Olsa) [1874007] - selftests/bpf: Add config dependency on BLK_DEV_LOOP (Jiri Olsa) [1874007] - selftests/bpf: Ensure securityfs mount before writing ima policy (Jiri Olsa) [1874007] - selftests/bpf: Update ima_setup.sh for busybox (Jiri Olsa) [1874007] - libbpf: Separate XDP program load with xsk socket creation (Jiri Olsa) [1874007] - selftests/bpf: Copy file using read/write in local storage test (Jiri Olsa) [1874007] - libbpf: Add base BTF accessor (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf progs (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf local storage maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for stackmap maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf ringbuffer (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for reuseport_array maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for queue_stack_maps maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for lpm_trie maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for hashtab maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for devmap maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for cgroup storage maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for cpumap maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf_struct_ops maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for arraymap maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf local storage maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf ringbuffer (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for lpm_trie maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for hashtab maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for devmap maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for cgroup storage maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for cpumap maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for arraymap maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf maps (Jiri Olsa) [1874007] - bpf: Prepare for memcg-based memory accounting for bpf maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf progs (Jiri Olsa) [1874007] - selftests/bpf: Extend bind{4,6} programs with a call to bpf_setsockopt (Jiri Olsa) [1874007] - selftests/bpf: Rewrite test_sock_addr bind bpf into C (Jiri Olsa) [1874007] - selftests/bpf: Fix flavored variants of test_ima (Jiri Olsa) [1874007] - libbpf: Replace size_t with __u32 in xsk interfaces (Jiri Olsa) [1874007] - bpf: Add a selftest for bpf_ima_inode_hash (Jiri Olsa) [1874007] - bpf: Add a BPF helper for getting the IMA hash of an inode (Jiri Olsa) [1874007] - libbpf: Add support for canceling cached_cons advance (Jiri Olsa) [1874007] - bpf: Refactor check_cfg to use a structured loop. (Jiri Olsa) [1874007] - selftest/bpf: Fix rst formatting in readme (Jiri Olsa) [1874007] - selftest/bpf: Fix link in readme (Jiri Olsa) [1874007] - bpf: Simplify task_file_seq_get_next() (Jiri Olsa) [1874007] - selftests/bpf: Mark tests that require unaligned memory access (Jiri Olsa) [1874007] - selftests/bpf: Avoid running unprivileged tests with alignment requirements (Jiri Olsa) [1874007] - selftests/bpf: Fix broken riscv build (Jiri Olsa) [1874007] - bpf: Add bpf_ktime_get_coarse_ns helper (Jiri Olsa) [1874007] - bpf: Add tests for bpf_bprm_opts_set helper (Jiri Olsa) [1874007] - bpf: Add bpf_bprm_opts_set helper (Jiri Olsa) [1874007] - libbpf: bpf__find_by_name[_kind] should use btf__get_nr_types() (Jiri Olsa) [1874007] - selftest/bpf: Fix IPV6FR handling in flow dissector (Jiri Olsa) [1874007] - bpf: Augment the set of sleepable LSM hooks (Jiri Olsa) [1874007] - bpf: selftest: Use bpf_sk_storage in FENTRY/FEXIT/RAW_TP (Jiri Olsa) [1874007] - selftests/bpf: Add asm tests for pkt vs pkt_end comparison. (Jiri Olsa) [1874007] - selftests/bpf: Add skb_pkt_end test (Jiri Olsa) [1874007] - bpf: Support for pointers beyond pkt_end. (Jiri Olsa) [1874007] - bpf: Compile out btf_parse_module() if module BTF is not enabled (Jiri Olsa) [1874007] - selftest/bpf: Add missed ip6ip6 test back (Jiri Olsa) [1874007] - bpf: Keep module's btf_data_size intact after load (Jiri Olsa) [1874007] - bpf: Sanitize BTF data pointer after module is loaded (Jiri Olsa) [1874007] - bpf: Load and verify kernel module BTFs (Jiri Olsa) [1874007] - bpf: Assign ID to vmlinux BTF and return extra info for BTF in GET_OBJ_INFO (Jiri Olsa) [1874007] - bpf: Add in-kernel split BTF support (Jiri Olsa) [1874007] - bpf, btf: Remove the duplicate btf_ids.h include (Jiri Olsa) [1874007] - selftests/bpf: Fix selftest build with old libc (Jiri Olsa) [1874007] - bpf: Exercise syscall operations for inode and sk storage (Jiri Olsa) [1874007] - bpf: Add tests for task_local_storage (Jiri Olsa) [1874007] - bpf: Update selftests for local_storage to use vmlinux.h (Jiri Olsa) [1874007] - bpf: Implement get_current_task_btf and RET_PTR_TO_BTF_ID (Jiri Olsa) [1874007] - libbpf: Add support for task local storage (Jiri Olsa) [1874007] - bpf: Implement task local storage (Jiri Olsa) [1874007] - bpf: Allow LSM programs to use bpf spin locks (Jiri Olsa) [1874007] - bpf: Lift hashtab key_size limit (Jiri Olsa) [1874007] - selftests/bpf: Add split BTF dedup selftests (Jiri Olsa) [1874007] - libbpf: Accomodate DWARF/compiler bug with duplicated identical arrays (Jiri Olsa) [1874007] - libbpf: Support BTF dedup of split BTFs (Jiri Olsa) [1874007] - libbpf: Fix BTF data layout checks and allow empty BTF (Jiri Olsa) [1874007] - selftests/bpf: Add checking of raw type dump in BTF writer APIs selftests (Jiri Olsa) [1874007] - selftests/bpf: Add split BTF basic test (Jiri Olsa) [1874007] - libbpf: Implement basic split BTF support (Jiri Olsa) [1874007] - libbpf: Unify and speed up BTF string deduplication (Jiri Olsa) [1874007] - selftest/bpf: Relax btf_dedup test checks (Jiri Olsa) [1874007] - libbpf: Factor out common operations in BTF writing APIs (Jiri Olsa) [1874007] - selftest/bpf: Use global variables instead of maps for test_tcpbpf_kern (Jiri Olsa) [1874007] - selftests/bpf: Migrate tcpbpf_user.c to use BPF skeleton (Jiri Olsa) [1874007] - selftests/bpf: Replace EXPECT_EQ with ASSERT_EQ and refactor verify_results (Jiri Olsa) [1874007] - selftests/bpf: Drop python client/server in favor of threads (Jiri Olsa) [1874007] - selftests/bpf: Move test_tcppbf_user into test_progs (Jiri Olsa) [1874007] - bpf: Fix error path in htab_map_alloc() (Jiri Olsa) [1874007] - bpf: Avoid hashtab deadlock with map_locked (Jiri Olsa) [1874007] - bpf: Use separate lockdep class for each hashtab (Jiri Olsa) [1874007] - fault-injection: handle EI_ETYPE_TRUE (Jiri Olsa) [1874007] - vfs, fdtable: Add fget_task helper (Jiri Olsa) [1874007] - [s390] vfio-pci/zdev: Add zPCI capabilities to VFIO_DEVICE_GET_INFO (Claudio Imbrenda) [1858844] - [s390] vfio: Introduce capability definitions for VFIO_DEVICE_GET_INFO (Claudio Imbrenda) [1858844] - [s390] s390/pci: track whether util_str is valid in the zpci_dev (Claudio Imbrenda) [1858844] - [s390] s390/pci: stash version in the zpci_dev (Claudio Imbrenda) [1858844]- Enable CRYPTO_SHA512 and _SSSE3 so these are available in FIPS mode (Vladis Dronov) [1973106] - crypto: drbg - self test for HMAC(SHA-512) (Vladis Dronov) [1973106] - xfrm: xfrm_state_mtu should return at least 1280 for ipv6 (Sabrina Dubroca) [1919786] - xfrm: remove get_mtu indirection from xfrm_type (Sabrina Dubroca) [1919786] - netfilter: move endif to correct location (Florian Westphal) [1971991] - netfilter: nft_compat: remove flush counter optimization (Florian Westphal) [1974323] - mptcp: fix soft lookup in subflow_error_report() (Florian Westphal) [1936368] - selftests: mptcp: enable syncookie only in absence of reorders (Florian Westphal) [1936368] - mptcp: do not warn on bad input from the network (Florian Westphal) [1936368] - mptcp: wake-up readers only for in sequence data (Florian Westphal) [1936368] - mptcp: try harder to borrow memory from subflow under pressure (Florian Westphal) [1936368] - mptcp: Fix out of bounds when parsing TCP options (Florian Westphal) [1936368] - selftests: mptcp_connect: add SO_TIMESTAMPNS cmsg support (Florian Westphal) [1936368] - mptcp: receive path cmsg support (Florian Westphal) [1936368] - tcp: export timestamp helpers for mptcp (Florian Westphal) [1936368] - mptcp: setsockopt: handle SOL_SOCKET in one place only (Florian Westphal) [1936368] - mptcp: sockopt: propagate timestamp request to subflows (Florian Westphal) [1936368] - sock: expose so_timestamping options for mptcp (Florian Westphal) [1936368] - mptcp: restrict values of 'enabled' sysctl (Florian Westphal) [1936368] - mptcp: support SYSCTL only if enabled (Florian Westphal) [1936368] - mptcp: make sure flag signal is set when add addr with port (Florian Westphal) [1936368] - mptcp: remove redundant initialization in pm_nl_init_net() (Florian Westphal) [1936368] - mptcp: generate subflow hmac after mptcp_finish_join() (Florian Westphal) [1936368] - mptcp: using TOKEN_MAX_RETRIES instead of magic number (Florian Westphal) [1936368] - mptcp: fix pr_debug in mptcp_token_new_connect (Florian Westphal) [1936368] - mptcp: update selftest for fallback due to OoO (Florian Westphal) [1936368] - mptcp: do not reset MP_CAPABLE subflow on mapping errors (Florian Westphal) [1936368] - mptcp: always parse mptcp options for MPC reqsk (Florian Westphal) [1936368] - mptcp: fix sk_forward_memory corruption on retransmission (Florian Westphal) [1936368] - mptcp: validate 'id' when stopping the ADD_ADDR retransmit timer (Florian Westphal) [1936368] - mptcp: avoid error message on infinite mapping (Florian Westphal) [1936368] - mptcp: drop unconditional pr_warn on bad opt (Florian Westphal) [1936368] - mptcp: avoid OOB access in setsockopt() (Florian Westphal) [1936368] - mptcp: fix data stream corruption (Florian Westphal) [1936368] - mptcp: fix splat when closing unaccepted socket (Florian Westphal) [1936368] - selftests: mptcp: add a test case for MSG_PEEK (Florian Westphal) [1936368] - mptcp: add MSG_PEEK support (Florian Westphal) [1936368] - mptcp: ignore unsupported msg flags (Florian Westphal) [1936368] - mptcp: implement MSG_TRUNC support (Florian Westphal) [1936368] - mptcp: implement dummy MSG_ERRQUEUE support (Florian Westphal) [1936368] - mptcp: Retransmit DATA_FIN (Florian Westphal) [1936368] - selftests: mptcp: add packet mark test case (Florian Westphal) [1936368] - selftests: mptcp: add the net device name testcase (Florian Westphal) [1936368] - selftests: mptcp: dump more info on mpjoin errors (Florian Westphal) [1936368] - selftests: mptcp: init nstat history (Florian Westphal) [1936368] - selftests: mptcp: launch mptcp_connect with timeout (Florian Westphal) [1936368] - selftests: mptcp: remove id 0 address testcases (Florian Westphal) [1936368] - selftests: mptcp: add addr argument for del_addr (Florian Westphal) [1936368] - selftests: mptcp: avoid calling pm_nl_ctl with bad IDs (Florian Westphal) [1936368] - selftests: mptcp: signal addresses testcases (Florian Westphal) [1936368] - selftests: mptcp: timeout testcases for multi addresses (Florian Westphal) [1936368] - selftests: mptcp: add cfg_do_w for cfg_remove (Florian Westphal) [1936368] - selftests: mptcp: Restore packet capture option in join tests (Florian Westphal) [1936368] - selftests: mptcp: add testcases for removing addrs (Florian Westphal) [1936368] - selftests: mptcp: set addr id for removing testcases (Florian Westphal) [1936368] - selftests: mptcp: add invert argument for chk_rm_nr (Florian Westphal) [1936368] - selftests: mptcp: fail if not enough SYN/3rd ACK (Florian Westphal) [1936368] - selftests: mptcp: display warnings on one line (Florian Westphal) [1936368] - selftests: mptcp: fix ACKRX debug message (Florian Westphal) [1936368] - selftests: mptcp: dump more info on errors (Florian Westphal) [1936368] - selftests: mptcp: add command line arguments for mptcp_join.sh (Florian Westphal) [1936368] - selftests: mptcp: add testcases for ADD_ADDR with port (Florian Westphal) [1936368] - selftests: mptcp: add port argument for pm_nl_ctl (Florian Westphal) [1936368] - selftests: mptcp: add testcases for newly added addresses (Florian Westphal) [1936368] - selftests: mptcp: use minus values for removing address numbers (Florian Westphal) [1936368] - selftests: increase timeout to 10 min (Florian Westphal) [1936368] - selftests: mptcp: add IPv4-mapped IPv6 testcases (Florian Westphal) [1936368] - mptcp: use mptcp_for_each_subflow in mptcp_close (Florian Westphal) [1936368] - mptcp: add tracepoint in subflow_check_data_avail (Florian Westphal) [1936368] - mptcp: add tracepoint in ack_update_msk (Florian Westphal) [1936368] - mptcp: add tracepoint in get_mapping_status (Florian Westphal) [1936368] - mptcp: add tracepoint in mptcp_subflow_get_send (Florian Westphal) [1936368] - mptcp: export mptcp_subflow_active (Florian Westphal) [1936368] - mptcp: fix format specifiers for unsigned int (Florian Westphal) [1936368] - mptcp: sockopt: add TCP_CONGESTION and TCP_INFO (Florian Westphal) [1936368] - mptcp: setsockopt: SO_DEBUG and no-op options (Florian Westphal) [1936368] - mptcp: setsockopt: add SO_INCOMING_CPU (Florian Westphal) [1936368] - mptcp: setsockopt: add SO_MARK support (Florian Westphal) [1936368] - mptcp: setsockopt: support SO_LINGER (Florian Westphal) [1936368] - mptcp: setsockopt: handle receive/send buffer and device bind (Florian Westphal) [1936368] - mptcp: setsockopt: handle SO_KEEPALIVE and SO_PRIORITY (Florian Westphal) [1936368] - mptcp: tag sequence_seq with socket state (Florian Westphal) [1936368] - mptcp: add skeleton to sync msk socket options to subflows (Florian Westphal) [1936368] - mptcp: only admit explicitly supported sockopt (Florian Westphal) [1936368] - mptcp: move sockopt function into a new file (Florian Westphal) [1936368] - mptcp: drop all sub-options except ADD_ADDR when the echo bit is set (Florian Westphal) [1936368] - mptcp: unify add_addr(6)_generate_hmac (Florian Westphal) [1936368] - mptcp: drop MPTCP_ADDR_IPVERSION_4/6 (Florian Westphal) [1936368] - mptcp: use mptcp_addr_info in mptcp_options_received (Florian Westphal) [1936368] - mptcp: drop OPTION_MPTCP_ADD_ADDR6 (Florian Westphal) [1936368] - mptcp: use mptcp_addr_info in mptcp_out_options (Florian Westphal) [1936368] - mptcp: move flags and ifindex out of mptcp_addr_info (Florian Westphal) [1936368] - mptcp: add mptcp reset option support (Florian Westphal) [1936368] - mptcp: remove unneeded check on first subflow (Florian Westphal) [1936368] - mptcp: add active MPC mibs (Florian Westphal) [1936368] - mptcp: add mib for token creation fallback (Florian Westphal) [1936368] - mptcp: remove id 0 address (Florian Westphal) [1936368] - mptcp: unify RM_ADDR and RM_SUBFLOW receiving (Florian Westphal) [1936368] - mptcp: remove all subflows involving id 0 address (Florian Westphal) [1936368] - mptcp: subflow.c: Fix a typo (Florian Westphal) [1936368] - mptcp: rename mptcp_pm_nl_add_addr_send_ack (Florian Westphal) [1936368] - mptcp: send ack for rm_addr (Florian Westphal) [1936368] - mptcp: drop useless addr_signal clear (Florian Westphal) [1936368] - mptcp: move to next addr when subflow creation fail (Florian Westphal) [1936368] - mptcp: export lookup_anno_list_by_saddr (Florian Westphal) [1936368] - mptcp: move to next addr when timeout (Florian Westphal) [1936368] - mptcp: drop unused subflow in mptcp_pm_subflow_established (Florian Westphal) [1936368] - mptcp: skip connecting the connected address (Florian Westphal) [1936368] - mptcp: drop argument port from mptcp_pm_announce_addr (Florian Westphal) [1936368] - mptcp: clean-up the rtx path (Florian Westphal) [1936368] - mptcp: fix ADD_ADDR HMAC in case port is specified (Florian Westphal) [1936368] - mptcp: remove a list of addrs when flushing (Florian Westphal) [1936368] - mptcp: remove multi addresses and subflows in PM (Florian Westphal) [1936368] - mptcp: remove multi subflows in PM (Florian Westphal) [1936368] - mptcp: remove multi addresses in PM (Florian Westphal) [1936368] - mptcp: add rm_list_rx in mptcp_pm_data (Florian Westphal) [1936368] - mptcp: add rm_list in mptcp_options_received (Florian Westphal) [1936368] - mptcp: add rm_list_tx in mptcp_pm_data (Florian Westphal) [1936368] - mptcp: add rm_list in mptcp_out_options (Florian Westphal) [1936368] - mptcp: fix bit MPTCP_PUSH_PENDING tests (Florian Westphal) [1936368] - mptcp: fix length of ADD_ADDR with port sub-option (Florian Westphal) [1936368] - mptcp: free resources when the port number is mismatched (Florian Westphal) [1936368] - mptcp: fix missing wakeup (Florian Westphal) [1936368] - mptcp: fix race in release_cb (Florian Westphal) [1936368] - mptcp: factor out __mptcp_retrans helper() (Florian Westphal) [1936368] - mptcp: reset 'first' and ack_hint on subflow close (Florian Westphal) [1936368] - mptcp: dispose initial struct socket when its subflow is closed (Florian Westphal) [1936368] - mptcp: fix memory accounting on allocation error (Florian Westphal) [1936368] - mptcp: put subflow sock on connect error (Florian Westphal) [1936368] - mptcp: reset last_snd on subflow close (Florian Westphal) [1936368] - mptcp: do not wakeup listener for MPJ subflows (Florian Westphal) [1936368] - mptcp: fix DATA_FIN generation on early shutdown (Florian Westphal) [1936368] - mptcp: fix DATA_FIN processing for orphaned sockets (Florian Westphal) [1936368] - mptcp: add local addr info in mptcp_info (Florian Westphal) [1936368] - mptcp: add netlink event support (Florian Westphal) [1936368] - mptcp: avoid lock_fast usage in accept path (Florian Westphal) [1936368] - netlink: don't call ->netlink_bind with table lock held (Florian Westphal) [1936368] - genetlink: restrict upcoming mptcp netlink events to CAP_NET_ADMIN (Florian Westphal) [1936368] - mptcp: pass subflow socket to a few helpers (Florian Westphal) [1936368] - mptcp: move subflow close loop after sk close check (Florian Westphal) [1936368] - mptcp: schedule worker when subflow is closed (Florian Westphal) [1936368] - mptcp: split __mptcp_close_ssk helper (Florian Westphal) [1936368] - mptcp: move pm netlink work into pm_netlink (Florian Westphal) [1936368] - mptcp: add a missing retransmission timer scheduling (Florian Westphal) [1936368] - mptcp: better msk receive window updates (Florian Westphal) [1936368] - mptcp: init mptcp request socket earlier (Florian Westphal) [1936368] - mptcp: fix spurious retransmissions (Florian Westphal) [1936368] - mptcp: fix poll after shutdown (Florian Westphal) [1936368] - mptcp: deliver ssk errors to msk (Florian Westphal) [1936368] - mptcp: pm: add lockdep assertions (Florian Westphal) [1936368] - mptcp: add the mibs for ADD_ADDR with port (Florian Westphal) [1936368] - mptcp: deal with MPTCP_PM_ADDR_ATTR_PORT in PM netlink (Florian Westphal) [1936368] - mptcp: enable use_port when invoke addresses_equal (Florian Westphal) [1936368] - mptcp: add port number check for MP_JOIN (Florian Westphal) [1936368] - mptcp: add a new helper subflow_req_create_thmac (Florian Westphal) [1936368] - mptcp: drop unused skb in subflow_token_join_request (Florian Westphal) [1936368] - mptcp: create the listening socket for new port (Florian Westphal) [1936368] - mptcp: create subflow or signal addr for newly added address (Florian Westphal) [1936368] - mptcp: drop *_max fields in mptcp_pm_data (Florian Westphal) [1936368] - mptcp: use WRITE_ONCE for the pernet *_max (Florian Westphal) [1936368] - mptcp: pm nl: reduce variable scope (Florian Westphal) [1936368] - mptcp: pm nl: support IPv4 mapped in v6 addresses (Florian Westphal) [1936368] - mptcp: support MPJoin with IPv4 mapped in v6 sk (Florian Westphal) [1936368] - mptcp: use sha256() instead of open coding (Florian Westphal) [1936368] - crypto: lib/sha256 - add sha256() function (Florian Westphal) [1936368] - mptcp: use SHA256_BLOCK_SIZE, not SHA_MESSAGE_BYTES (Florian Westphal) [1936368] - xprtrdma: Pad optimization, revisited (Steve Dickson) [1926957] - ibmvnic: remove set but not used variable 'netdev' (Diego Domingos) [1922193] - net/ibmvnic: Remove tests of member address (Diego Domingos) [1922193] - ibmvnic: remove duplicate napi_schedule call in do_reset function (Diego Domingos) [1922193] - ibmvnic: avoid calling napi_disable() twice (Diego Domingos) [1922193] - ibmvnic: queue reset work in system_long_wq (Diego Domingos) [1922193] - ibmvnic: correctly use dev_consume/free_skb_irq (Diego Domingos) [1922193] - ibmvnic: improve failover sysfs entry (Diego Domingos) [1922193] - ibmvnic: print adapter state as a string (Diego Domingos) [1922193] - ibmvnic: print reset reason as a string (Diego Domingos) [1922193] - ibmvnic: clean up the remaining debugfs data structures (Diego Domingos) [1922193] - ibmvnic: Use 'skb_frag_address()' instead of hand coding it (Diego Domingos) [1922193] - ibmvnic: remove excessive irqsave (Diego Domingos) [1922193] - ibmvnic: always store valid MAC address (Diego Domingos) [1922193] - ibmvnic: Fix possibly uninitialized old_num_tx_queues variable warning. (Diego Domingos) [1922193] - vio: make remove callback return void (Diego Domingos) [1922193] - tty: hvcs: Drop unnecessary if block (Diego Domingos) [1922193] - ibmvnic: serialize access to work queue on remove (Diego Domingos) [1922193] - ibmvnic: skip send_request_unmap for timeout reset (Diego Domingos) [1922193] - ibmvnic: add memory barrier to protect long term buffer (Diego Domingos) [1922193] - ibmvnic: substitute mb() with dma_wmb() for send_*crq* functions (Diego Domingos) [1922193] - ibmvnic: prefer strscpy over strlcpy (Diego Domingos) [1922193] - ibmvnic: remove unused spinlock_t stats_lock definition (Diego Domingos) [1922193] - ibmvnic: add comments for spinlock_t definitions (Diego Domingos) [1922193] - ibmvnic: fix miscellaneous checks (Diego Domingos) [1922193] - ibmvnic: avoid multiple line dereference (Diego Domingos) [1922193] - ibmvnic: fix braces (Diego Domingos) [1922193] - ibmvnic: fix block comments (Diego Domingos) [1922193] - ibmvnic: prefer 'unsigned long' over 'unsigned long int' (Diego Domingos) [1922193] - ibmvnic: remove unnecessary rmb() inside ibmvnic_poll (Diego Domingos) [1922193] - ibmvnic: rework to ensure SCRQ entry reads are properly ordered (Diego Domingos) [1922193] - ibmvnic: Ensure that CRQ entry read are correctly ordered (Diego Domingos) [1922193] - net: ethernet: ibm: ibmvnic: Fix some kernel-doc misdemeanours (Diego Domingos) [1922193] - powerpc/hmi: Fix kernel hang when TB is in error state. (Gustavo Walbon) [1924091] - powerpc/eeh: Fix EEH handling for hugepages in ioremap space. (Gustavo Walbon) [1924090] - powerpc/pseries: Only register vio drivers if vio bus exists (Gustavo Walbon) [1924090] - powerpc/pci: Remove unimplemented prototypes (Gustavo Walbon) [1924090] - powerpc/powernv/pci: Use kzalloc() for phb related allocations (Gustavo Walbon) [1924090] - powerpc/pasemi: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/mve5100: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/mpc7448: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/linkstation: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/holly: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/chrp: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/amigaone: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/83xx: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/82xx/*: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/mpc5200_simple: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/media5200: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/lite5200: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/efika: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/512x: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/pci: Move PHB discovery for PCI_DN using platforms (Gustavo Walbon) [1924090] - powerpc/maple: Fix declaration made after definition (Gustavo Walbon) [1924090] - powerpc/pci: Add ppc_md.discover_phbs() (Gustavo Walbon) [1924090] - powerpc/pci: Delete traverse_pci_dn() (Gustavo Walbon) [1924090] - powerpc/eeh: Rework pci_dev lookup in debugfs attributes (Gustavo Walbon) [1924090] - selftests/powerpc: Add VF recovery tests (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Make pseries_send_allow_unfreeze() static (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Make pseries_pcibios_bus_add_device() static (Gustavo Walbon) [1924090] - selftests/powerpc: Make the test check in eeh-basic.sh posix compliant (Gustavo Walbon) [1924090] - powernv/pci: Print an error when device enable is blocked (Gustavo Walbon) [1924090] - selftests/powerpc/eeh: disable kselftest timeout setting for eeh-basic (Gustavo Walbon) [1924090] - powerpc/eeh_cache: Fix a possible debugfs deadlock (Gustavo Walbon) [1924090] - powerpc/eeh: Fix eeh_dev_check_failure() for PE#0 (Gustavo Walbon) [1924090] - selftests/powerpc: Fix eeh-basic.sh exit codes (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Fix use of uninitialised variable (Gustavo Walbon) [1924090] - powerpc/eeh: Delete eeh_pe->config_addr (Gustavo Walbon) [1924090] - powerpc/eeh: Clean up PE addressing (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Allow zero to be a valid PE configuration address (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Rework device EEH PE determination (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Clean up pe_config_addr lookups (Gustavo Walbon) [1924090] - powerpc/eeh: Move EEH initialisation to an arch initcall (Gustavo Walbon) [1924090] - powerpc/eeh: Delete eeh_ops->init (Gustavo Walbon) [1924090] - powerpc/pseries: Stop using eeh_ops->init() (Gustavo Walbon) [1924090] - powerpc/powernv: Stop using eeh_ops->init() (Gustavo Walbon) [1924090] - powerpc/eeh: Rework EEH initialisation (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Fix dumb linebreaks (Gustavo Walbon) [1924090] - selftests/powerpc: Squash spurious errors due to device removal (Gustavo Walbon) [1924090] - powerpc/eeh: Move PE tree setup into the platform (Gustavo Walbon) [1924090] - powerpc/eeh: Drop pdn use in eeh_pe_tree_insert() (Gustavo Walbon) [1924090] - powerpc/eeh: Rename eeh_{add_to|remove_from}_parent_pe() (Gustavo Walbon) [1924090] - powerpc/eeh: Remove class code field from edev (Gustavo Walbon) [1924090] - powerpc/eeh: Remove spurious use of pci_dn in eeh_dump_dev_log (Gustavo Walbon) [1924090] - powerpc/eeh: Pass eeh_dev to eeh_ops->{read|write}_config() (Gustavo Walbon) [1924090] - powerpc/eeh: Pass eeh_dev to eeh_ops->resume_notify() (Gustavo Walbon) [1924090] - powerpc/eeh: Pass eeh_dev to eeh_ops->restore_config() (Gustavo Walbon) [1924090] - powerpc/eeh: Remove VF config space restoration (Gustavo Walbon) [1924090] - powerpc/eeh: Kill off eeh_ops->get_pe_addr() (Gustavo Walbon) [1924090] - powerpc/pseries: Stop using pdn->pe_number (Gustavo Walbon) [1924090] - powerpc/eeh: Move vf_index out of pci_dn and into eeh_dev (Gustavo Walbon) [1924090] - powerpc/eeh: Remove eeh_dev.c (Gustavo Walbon) [1924090] - powerpc/eeh: Remove eeh_dev_phb_init_dynamic() (Gustavo Walbon) [1924090] - powerpc/powernv: Make pnv_pci_sriov_enable() and friends static (Gustavo Walbon) [1924090] - powerpc/pseries: Make vio and ibmebus initcalls pseries specific (Gustavo Walbon) [1924090] - powerpc/eeh: Release EEH device state synchronously (Gustavo Walbon) [1924090] - powerpc/eeh: Rework eeh_ops->probe() (Gustavo Walbon) [1924090] - powerpc/eeh: Make early EEH init pseries specific (Gustavo Walbon) [1924090] - powerpc/eeh: Remove PHB check in probe (Gustavo Walbon) [1924090] - powerpc/eeh: Do early EEH init only when required (Gustavo Walbon) [1924090] - powerpc/eeh: Only dump stack once if an MMIO loop is detected (Gustavo Walbon) [1924090] - powernv/pci: Add a debugfs entry to dump PHB's IODA PE state (Gustavo Walbon) [1924090] - powernv/pci: Allow any write trigger the diag dump (Gustavo Walbon) [1924090] - powernv/pci: Use pnv_phb as the private data for debugfs entries (Gustavo Walbon) [1924090] - powerpc/powernv/npu: Fix debugfs_simple_attr.cocci warnings (Gustavo Walbon) [1924090] - powerpc/pcidn: Warn when sriov pci_dn management is used incorrectly (Gustavo Walbon) [1924090] - powerpc/pcidn: Make VF pci_dn management CONFIG_PCI_IOV specific (Gustavo Walbon) [1924090] - powerpc/sriov: Remove VF eeh_dev state when disabling SR-IOV (Gustavo Walbon) [1924090] - powerpc/eeh_sysfs: Make clearing EEH_DEV_SYSFS saner (Gustavo Walbon) [1924090] - powerpc/eeh_sysfs: Remove double pci_dn lookup. (Gustavo Walbon) [1924090] - powerpc/eeh_sysfs: ifdef pseries sr-iov sysfs properties (Gustavo Walbon) [1924090] - powerpc/eeh_cache: Don't use pci_dn when inserting new ranges (Gustavo Walbon) [1924090] - powerpc/eeh: differentiate duplicate detection message (Gustavo Walbon) [1924090] - powerpc/eeh: Handle hugepages in ioremap space (Gustavo Walbon) [1924090] - powerpc/powernv-eeh: Consisely desribe what this file does (Gustavo Walbon) [1924090] - powerpc/eeh_cache: fix a W=1 kernel-doc warning (Gustavo Walbon) [1924090] - powerpc/eeh_cache: Add a way to dump the EEH address cache (Gustavo Walbon) [1924090] - powerpc/powernv: Escalate reset when IODA reset fails (Gustavo Walbon) [1924090] - powerpc/powernv/eeh/npu: Fix uninitialized variables in opal_pci_eeh_freeze_status (Gustavo Walbon) [1924090] - powerpc: eeh_event: convert semaphore to completion (Gustavo Walbon) [1924090] - powerpc/eeh: Declare pci_ers_result_name() as static (Gustavo Walbon) [1924090] - Bluetooth: verify AMP hci_chan before amp_destroy (Gopal Tiwari) [1962546] {CVE-2021-33034} - NFSv4.2 fix handling of sr_eof in SEEK's reply (Steve Dickson) [1948015] - SUNRPC: Fix null pointer dereference in svc_rqst_free() (Benjamin Coddington) [1952008] - NFSv4: Use sequence counter with associated spinlock (Benjamin Coddington) [1952008] - NFSv4.2: fix return value of _nfs4_get_security_label() (Benjamin Coddington) [1952008] - NFSD: fix error handling in NFSv4.0 callbacks (Benjamin Coddington) [1952008] - NFS: Don't gratuitously clear the inode cache when lookup failed (Benjamin Coddington) [1952008] - NFS: Don't revalidate the directory permissions on a lookup failure (Benjamin Coddington) [1952008] - nfsd: register pernet ops last, unregister first (Benjamin Coddington) [1952008] - SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() (Benjamin Coddington) [1952008] - lockd: fix access beyond unterminated strings in prints (Benjamin Coddington) [1952008] - tty: Protect disc_data in n_tty_close and n_tty_flush_buffer (Rafael Aquini) [1879861] - hwmon: (amd_energy) Add AMD family 19h model 30h x86 match (Terry Bowman) [1949280]- redhat/configs: Re-enable dptf_power module (Prarit Bhargava) [1962349] - net/sched: act_ct: Offload connections with commit action (Marcelo Ricardo Leitner) [1965817] - netfilter: flowtable: Remove redundant hw refresh bit (Marcelo Ricardo Leitner) [1965817] - inet_diag: add support for tw_mark (Xin Long) [1972967] - mm: thp: fix MADV_REMOVE deadlock on shmem THP (Waiman Long) [1974659] {CVE-2020-29368} - mm: thp: make the THP mapcount atomic against __split_huge_pmd_locked() (Waiman Long) [1974659] {CVE-2020-29368} - mmap locking API: add mmap_lock_is_contended() (Waiman Long) [1970177] - mm: madvise: fix vma user-after-free (Waiman Long) [1970177] - khugepaged: collapse_pte_mapped_thp() protect the pmd lock (Waiman Long) [1970177] - khugepaged: collapse_pte_mapped_thp() flush the right range (Waiman Long) [1970177] - mm/mmap.c: close race between munmap() and expand_upwards()/downwards() (Waiman Long) [1970177] - mm: document warning in move_normal_pmd() and make it warn only once (Waiman Long) [1970177] - mmap locking API: convert mmap_sem comments (Waiman Long) [1970177] - mmap locking API: convert mmap_sem API comments (Waiman Long) [1970177] - mmap locking API: rename mmap_sem to mmap_lock (Waiman Long) [1970177] - mmap locking API: add mmap_assert_locked() and mmap_assert_write_locked() (Waiman Long) [1970177] - mmap locking API: add MMAP_LOCK_INITIALIZER (Waiman Long) [1970177] - mmap locking API: convert nested write lock sites (Waiman Long) [1970177] - mmap locking API: convert mmap_sem call sites missed by coccinelle (Waiman Long) [1970177] - mmap locking API: use coccinelle to convert mmap_sem rwsem call sites (Waiman Long) [1970177] - MMU notifier: use the new mmap locking API (Waiman Long) [1970177] - mm/gup.c: further document vma_permits_fault() (Waiman Long) [1970177] - mm/gup.c: update the documentation (Waiman Long) [1970177] - mm/ksm: fix NULL pointer dereference when KSM zero page is enabled (Waiman Long) [1970177] - proc: inline vma_stop into m_stop (Waiman Long) [1970177] - mm: remove CONFIG_TRANSPARENT_HUGE_PAGECACHE (Waiman Long) [1970177] - fs/io_uring: set FOLL_PIN via pin_user_pages() (Waiman Long) [1970177] - shmem: pin the file in shmem_fault() if mmap_sem is dropped (Waiman Long) [1970177] - mm/gup.c: fix comments of __get_user_pages() and get_user_pages_remote() (Waiman Long) [1970177] - mm/init-mm.c: include for vm_committed_as_batch (Waiman Long) [1970177] - lib/generic-radix-tree.c: add kmemleak annotations (Waiman Long) [1970177] - mm: Remove BUG_ON mmap_sem not held from xxx_trans_huge_lock() (Waiman Long) [1970177] - lib/generic-radix-tree.c: make 2 functions static inline (Waiman Long) [1970177] - x86/mm: Clean up the pmd_read_atomic() comments (Waiman Long) [1970177] - x86/mm: Fix function name typo in pmd_read_atomic() comment (Waiman Long) [1970177] - khugepaged: enable collapse pmd for pte-mapped THP (Waiman Long) [1970177] - mm: Handle MADV_WILLNEED through vfs_fadvise() (Waiman Long) [1970177] - pagewalk: use lockdep_assert_held for locking validation (Waiman Long) [1970177] - mm: use down_read_killable for locking mmap_sem in access_remote_vm (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/map_files (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/clear_refs (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/pagemap (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/smaps_rollup (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/maps (Waiman Long) [1970177] - mm/filemap.c: correct the comment about VM_FAULT_RETRY (Waiman Long) [1970177] - mm: mmu_gather: remove __tlb_reset_range() for force flush (Waiman Long) [1970177] - arm64/mm: Drop mmap_sem before calling __do_kernel_fault() (Waiman Long) [1970177] - docs/vm: Minor editorial changes in the THP and hugetlbfs (Waiman Long) [1970177] - x86/mpx, mm/core: Fix recursive munmap() corruption (Waiman Long) [1970177] - doc: mm: migration doesn't use FOLL_SPLIT anymore (Waiman Long) [1970177] - filemap: add a comment about FAULT_FLAG_RETRY_NOWAIT behavior (Waiman Long) [1970177] - proc: commit to genradix (Waiman Long) [1970177] - generic radix trees (Waiman Long) [1970177] - mm: swap: add comment for swap_vma_readahead (Waiman Long) [1970177] - x86/mm: Make set_pmd_at() paravirt aware (Waiman Long) [1970177] - mm: select HAVE_MOVE_PMD on x86 for faster mremap (Waiman Long) [1970177] - mm: speed up mremap by 20x on large regions (Waiman Long) [1970177] - mm/mmap.c: remove verify_mm_writelocked() (Waiman Long) [1970177] - x86/fault: Check user_mode(regs) when avoiding an mmap_sem deadlock (Waiman Long) [1970177] - mm: brk: downgrade mmap_sem to read when shrinking (Waiman Long) [1970177] - mm: mremap: downgrade mmap_sem to read when shrinking (Waiman Long) [1970177] - mm: unmap VM_PFNMAP mappings with optimized path (Waiman Long) [1970177] - mm: unmap VM_HUGETLB mappings with optimized path (Waiman Long) [1970177] - mm: mmap: zap pages with read mmap_sem in munmap (Waiman Long) [1970177] - x86/mm: Fix exception table comments (Waiman Long) [1970177] - ACPI: x86: Call acpi_boot_table_init() after acpi_table_upgrade() (Mark Langsdorf) [1946282] - acpi/drivers/thermal: Remove TRIPS_NONE cooling device binding (Mark Langsdorf) [1946282] - thermal/drivers/acpi: Use hot and critical ops (Mark Langsdorf) [1946282] - thermal/core: Add critical and hot ops (Mark Langsdorf) [1946282] - thermal/core: Emit a warning if the thermal zone is updated without ops (Mark Langsdorf) [1946282] - ACPI: scan: Fix _STA getting called on devices with unmet dependencies (Mark Langsdorf) [1946282] - ACPI: tables: x86: Reserve memory occupied by ACPI tables (Mark Langsdorf) [1946282] - ACPICA: Always create namespace nodes using acpi_ns_create_node() (Mark Langsdorf) [1946282] - ACPI: platform: Add balanced-performance platform profile (Mark Langsdorf) [1946282] - ACPI: platform: Hide ACPI_PLATFORM_PROFILE option (Mark Langsdorf) [1946282] - ACPICA: Remove some code duplication from acpi_ev_address_space_dispatch (Mark Langsdorf) [1946282] - ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region parameter handling (Mark Langsdorf) [1946282] - ACPI: property: Satisfy kernel doc validator (part 2) (Mark Langsdorf) [1946282] - ACPI: property: Satisfy kernel doc validator (part 1) (Mark Langsdorf) [1946282] - ACPI: property: Make acpi_node_prop_read() static (Mark Langsdorf) [1946282] - ACPI: property: Remove dead code (Mark Langsdorf) [1946282] - iommu/amd: Fix performance counter initialization (Mark Langsdorf) [1946282] - ACPI: property: Fix fwnode string properties matching (Mark Langsdorf) [1946282] - ACPI / NUMA: add a stub function for node_to_pxm() (Mark Langsdorf) [1946282] - ACPI: OSL: Rework acpi_check_resource_conflict() (Mark Langsdorf) [1946282] - ACPI: APEI: ERST: remove unneeded semicolon (Mark Langsdorf) [1946282] - iommu/vt-d: Add new enum value and structure for SATC (Mark Langsdorf) [1946282] - ACPI: Add support for native USB4 control _OSC (Mark Langsdorf) [1946282] - ACPI: Execute platform _OSC also with query bit clear (Mark Langsdorf) [1946282] - redhat/configs: Add CONFIG_ACPI_FPDT (Mark Langsdorf) [1946282] - ACPI: tables: introduce support for FPDT table (Mark Langsdorf) [1946282] - ACPI: APEI: Add is_generic_error() to identify GHES sources (Mark Langsdorf) [1946282] - ACPI: platform-profile: Fix possible deadlock in platform_profile_remove() (Mark Langsdorf) [1946282] - ACPI: platform-profile: Introduce object pointers to callbacks (Mark Langsdorf) [1946282] - PCI/ACPI: Clarify message about _OSC failure (Mark Langsdorf) [1946282] - PCI/ACPI: Remove unnecessary osc_lock (Mark Langsdorf) [1946282] - PCI/ACPI: Make acpi_pci_osc_control_set() static (Mark Langsdorf) [1946282] - media: ACPI / bus: Add acpi_dev_get_next_match_dev() and helper macro (Mark Langsdorf) [1946282] - ACPI: scan: Adjust white space in acpi_device_add() (Mark Langsdorf) [1946282] - ACPI: scan: Rearrange memory allocation in acpi_device_add() (Mark Langsdorf) [1946282] - ACPI: platform-profile: Drop const qualifier for cur_profile (Mark Langsdorf) [1946282] - ACPI: configfs: add missing check after configfs_register_default_group() (Mark Langsdorf) [1946282] - ACPI: CPPC: initialise vaddr pointers to NULL (Mark Langsdorf) [1946282] - ACPI: CPPC: add __iomem annotation to generic_comm_base pointer (Mark Langsdorf) [1946282] - ACPI: CPPC: remove __iomem annotation for cpc_reg's address (Mark Langsdorf) [1946282] - ACPI: Use DEVICE_ATTR_ macros (Mark Langsdorf) [1946282] - ACPICA: Update version to 20210105 (Mark Langsdorf) [1946282] - ACPICA: Updated all copyrights to 2021 (Mark Langsdorf) [1946282] - ACPICA: Remove the VRTC table (Mark Langsdorf) [1946282] - ACPICA: Remove the MTMR (Mid-Timer) table (Mark Langsdorf) [1946282] - ACPICA: Update version to 20201217 (Mark Langsdorf) [1946282] - ACPICA: add type casts for string functions (Mark Langsdorf) [1946282] - ACPICA: fix -Wfallthrough (Mark Langsdorf) [1946282] - ACPICA: Clean up exception code class checks (Mark Langsdorf) [1946282] - ACPICA: Fix exception code class checks (Mark Langsdorf) [1946282] - redhat/configs: Add CONFIG_ACPI_PLATFORM_PROFILE (Mark Langsdorf) [1946282] - ACPI: platform: Add platform profile support (Mark Langsdorf) [1946282] - NTB/msi: Use irq_has_action() (Myron Stowe) [1933153] - NTB: Use struct_size() helper in devm_kzalloc() (Myron Stowe) [1933153] - ntb: intel: Fix memleak in intel_ntb_pci_probe (Myron Stowe) [1933153] - NTB: hw: amd: fix an issue about leak system resources (Myron Stowe) [1933153] - ntb: hw: remove the code that sets the DMA mask (Myron Stowe) [1933153] - [s390] s390/qdio: remove 'merge_pending' mechanism (Claudio Imbrenda) [1919251] - [s390] s390/qdio: improve handling of PENDING buffers for QEBSM devices (Claudio Imbrenda) [1919251] - [s390] s390/qdio: rework q->qdio_error indication (Claudio Imbrenda) [1919251] - [s390] s390/qdio: inline qdio_kick_handler() (Claudio Imbrenda) [1919251] - [s390] s390/qdio: track time of last data IRQ for each device (Claudio Imbrenda) [1919251] - [s390] s390/qdio: make thinint registration symmetric (Claudio Imbrenda) [1919251] - [s390] s390/qdio: adopt new tasklet API (Claudio Imbrenda) [1919251] - [s390] s390/qdio: remove qdio_inbound_q_moved() wrapper (Claudio Imbrenda) [1919251] - [s390] s390/qdio: remove Input tasklet code (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Do not set COMMAND_COMPLETE (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Handle event-lost notification for Version Change events (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Process Version Change events (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Clarify & assert the stat_lock locking in zfcp_qdio_send() (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Remove orphaned function declarations (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Lift Input Queue tasklet from qdio (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Clarify access to erp_action in zfcp_fsf_req_complete() (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Use list_first_entry_or_null() in zfcp_erp_thread() (Claudio Imbrenda) [1919251] - [s390] s390/qdio: always use dev_name() for device name in QIB (Claudio Imbrenda) [1919251] - [s390] s390/qdio: clean up QDR setup (Claudio Imbrenda) [1919251] - [s390] s390/qdio: make qdio_handle_aobs() more robust (Claudio Imbrenda) [1919251] - [s390] s390/cpumf: disable preemption when accessing per-cpu variable (Claudio Imbrenda) [1925527] - [s390] s390/cpumf: rename header file to hwctrset.h (Claudio Imbrenda) [1925527] - [s390] s390/cpumf: remove 60 seconds read limit (Claudio Imbrenda) [1925527] - [s390] s390/cpumf: Add support for complete counter set extraction (Claudio Imbrenda) [1925527]- KVM: X86: hyper-v: Task srcu lock when accessing kvm_memslots() (Vitaly Kuznetsov) [1904570] - KVM: nSVM: remove a warning about vmcb01 VM exit reason (Vitaly Kuznetsov) [1904570] - KVM: x86: Consolidate guest enter/exit logic to common helpers (Vitaly Kuznetsov) [1904570] - KVM: x86: Defer vtime accounting 'til after IRQ handling (Vitaly Kuznetsov) [1904570] - context_tracking: Move guest exit vtime accounting to separate helpers (Vitaly Kuznetsov) [1904570] - context_tracking: Move guest exit context tracking to separate helpers (Vitaly Kuznetsov) [1904570] - context_tracking: Make guest_enter/exit() .noinstr ready (Vitaly Kuznetsov) [1904570] - sched/cputime: Rename vtime_account_system() to vtime_account_kernel() (Vitaly Kuznetsov) [1904570] - x86/kvm/svm: Move guest enter/exit into .noinstr.text (Vitaly Kuznetsov) [1904570] - x86/kvm/vmx: Move guest enter/exit into .noinstr.text (Vitaly Kuznetsov) [1904570] - x86/kvm/svm: Add hardirq tracing on guest enter/exit (Vitaly Kuznetsov) [1904570] - x86/kvm/vmx: Add hardirq tracing to guest enter/exit (Vitaly Kuznetsov) [1904570] - x86/kvm: Move context tracking where it belongs (Vitaly Kuznetsov) [1904570] - Move some more variables to kernel job templates (Michael Hofmann) - Use a different branch name for realtime pipelines (Michael Hofmann) - block: mark queue init done at the end of blk_register_queue (Ming Lei) [1963766] - block: fix race between adding/removing rq qos and normal IO (Ming Lei) [1963766] - netfilter: x_tables: Use correct memory barriers. (Phil Sutter) [1949090] - Revert "netfilter: x_tables: Switch synchronization to RCU" (Phil Sutter) [1949090] - vfio/pci/nvlink2: Do not attempt NPU2 setup on POWER8NVL NPU (Gustavo Walbon) [1891589] - powerpc/powernv/npu: Do not attempt NPU2 setup on POWER8NVL NPU (Gustavo Walbon) [1891589] - cpupower: Add cpuid cap flag for MSR_AMD_HWCR support (Steve Best) [1949161] - cpupower: Remove family arg to decode_pstates() (Steve Best) [1949161] - cpupower: Condense pstate enabled bit checks in decode_pstates() (Steve Best) [1949161] - cpupower: Update family checks when decoding HW pstates (Steve Best) [1949161] - cpupower: Remove unused pscur variable. (Steve Best) [1949161] - cpupower: Add CPUPOWER_CAP_AMD_HW_PSTATE cpuid caps flag (Steve Best) [1949161] - cpupower: Correct macro name for CPB caps flag (Steve Best) [1949161] - cpupower: Update msr_pstate union struct naming (Steve Best) [1949161] - cpupower: add Makefile dependencies for install targets (Steve Best) [1949161] - tools/power/cpupower: Read energy_perf_bias from sysfs (Steve Best) [1949161] - tools: Avoid comma separated statements (Steve Best) [1949161] - cpupower: speed up generating git version string (Steve Best) [1949161] - cpupowerutils: fix spelling mistake "dependant" -> "dependent" (Steve Best) [1949161] - ext4: fix ext4_error_err save negative errno into superblock (Lukas Czerner) [1964928] - ext4: do not set SB_ACTIVE in ext4_orphan_cleanup() (Lukas Czerner) [1964928] - ext4: fix check to prevent false positive report of incorrect used inodes (Lukas Czerner) [1964928] - ext4: fix potential error in ext4_do_update_inode (Lukas Czerner) [1964928] - ext4: do not try to set xattr into ea_inode if value is empty (Lukas Czerner) [1964928] - ext4: fix potential htree index checksum corruption (Lukas Czerner) [1964928] - ext4: don't leak old mountpoint samples (Lukas Czerner) [1964928] - ext4: don't remount read-only with errors=continue on reboot (Lukas Czerner) [1964928] - ext4: fix deadlock with fs freezing and EA inodes (Lukas Czerner) [1964928] - ext4: fix a memory leak of ext4_free_data (Lukas Czerner) [1964928] - ext4: find old entry again if failed to rename whiteout (Lukas Czerner) [1945503] - ext4: fix bug for rename with RENAME_WHITEOUT (Lukas Czerner) [1945503] - mount: fix mounting of detached mounts onto targets that reside on shared mounts (Carlos Maiolino) [1959172] - fs: fix lazytime expiration handling in __writeback_single_inode() (Carlos Maiolino) [1936260] - tty: Don't hold ldisc lock in tty_reopen() if ldisc present (Waiman Long) [1968271] - tty/ldsem: Add lockdep asserts for ldisc_sem (Waiman Long) [1968271] - tty: Simplify tty->count math in tty_reopen() (Waiman Long) [1968271] - tty: Don't block on IO when ldisc change is pending (Waiman Long) [1968271] - tty: Hold tty_ldisc_lock() during tty_reopen() (Waiman Long) [1968271] - tty: Drop tty->count on tty_reopen() failure (Waiman Long) [1968271] - net: udp: Add support for getsockopt(..., ..., UDP_GRO, ..., ...); (Xin Long) [1951679] - net: Fix gro aggregation for udp encaps with zero csum (Xin Long) [1951679] - udp: ipv4: manipulate network header of NATed UDP GRO fraglist (Xin Long) [1951679] - udp: not remove the CRC flag from dev features when need_csum is false (Xin Long) [1951679] - udp: mask TOS bits in udp_v4_early_demux() (Xin Long) [1951679] - net: fix use-after-free when UDP GRO with shared fraglist (Xin Long) [1951679] - x86, sched: Treat Intel SNC topology as default, COD as exception (David Arcari) [1920040] - dmaengine: idxd: iax bus removal (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix cdev setup and free device lifetime issues (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix group conf_dev lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix engine conf_dev lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix wq conf_dev 'struct device' lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix idxd conf_dev 'struct device' lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: use ida for device instance enumeration (Jerry Snitselaar) [1955744] - dmaengine: idxd: removal of pcim managed mmio mapping (Jerry Snitselaar) [1955744] - dmaengine: idxd: cleanup pci interrupt vector allocation management (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix dma device lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: Fix potential null dereference on pointer status (Jerry Snitselaar) [1927070] - dmaengine: idxd: fix wq cleanup of WQCFG registers (Jerry Snitselaar) [1955744] - dmaengine: idxd: clear MSIX permission entry on shutdown (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix wq size store permission state (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix opcap sysfs attribute output (Jerry Snitselaar) [1955744] - dmaengine: idxd: Fix clobbering of SWERR overflow bit on writeback (Jerry Snitselaar) [1955744] - dmaengine: idxd: add module parameter to force disable of SVA (Jerry Snitselaar) [1920734] - dmaengine: idxd: set DMA channel to be private (Jerry Snitselaar) [1920759] - dma: idxd: use DEFINE_MUTEX() for mutex lock (Jerry Snitselaar) [1955744] - dmaengine: idxd: check device state before issue command (Jerry Snitselaar) [1927070] - dmaengine: move channel device_node deletion to driver (Jerry Snitselaar) [1920721] - dmaengine: idxd: fix misc interrupt completion (Jerry Snitselaar) [1920757] - dmaengine: idxd: Fix list corruption in description completion (Jerry Snitselaar) [1920746] - dmaengine: idxd: add IAX configuration support in the IDXD driver (Jerry Snitselaar) [1837233] - dmaengine: idxd: add ATS disable knob for work queues (Jerry Snitselaar) [1921291] - dmaengine: idxd: define table offset multiplier (Jerry Snitselaar) [1921290] - dmaengine: idxd: Update calculation of group offset to be more readable (Jerry Snitselaar) [1955744]- redhat/config: Double MAX_LOCKDEP_ENTRIES (Waiman Long) [1945937] - dm writecache: flush origin device when writing and cache is full (Mike Snitzer) [1970513] - dm snapshot: properly fix a crash when an origin has no snapshots (Mike Snitzer) [1970513] - dm verity: fix require_signatures module_param permissions (Mike Snitzer) [1970513] - dm snapshot: fix crash with transient storage and zero chunk size (Mike Snitzer) [1970513] - dm rq: fix double free of blk_mq_tag_set in dev remove after table load fails (Mike Snitzer) [1970513] - dm integrity: increase RECALC_SECTORS to improve recalculate speed (Mike Snitzer) [1970513] - dm integrity: don't re-write metadata if discarding same blocks (Mike Snitzer) [1970513] - dm raid: fix inconclusive reshape layout on fast raid4/5/6 table reload sequences (Mike Snitzer) [1970513] - dm raid: fix fall-through warning in rs_check_takeover() for Clang (Mike Snitzer) [1970513] - dm integrity: fix missing goto in bitmap_flush_interval error handling (Mike Snitzer) [1970513] - dm space map common: fix division bug in sm_ll_find_free_block() (Mike Snitzer) [1970513] - dm persistent data: packed struct should have an aligned() attribute too (Mike Snitzer) [1970513] - dm btree spine: remove paranoid node_check call in node_prep_for_write() (Mike Snitzer) [1970513] - dm space map disk: remove redundant calls to sm_disk_get_nr_free() (Mike Snitzer) [1970513] - dm persistent data: remove unused return from exit_shadow_spine() (Mike Snitzer) [1970513] - dm verity: allow only one error handling mode (Mike Snitzer) [1970513] - dm: remove useless loop in __split_and_process_bio (Mike Snitzer) [1970513] - redhat/configs: Update CONFIG_PINCTRL_AMD (David Arcari) [1964588] - ionic: fix ptp support config breakage (Jonathan Toppins) [1951826] - ionic: return -EFAULT if copy_to_user() fails (Jonathan Toppins) [1951826] - ionic: git_ts_info bit shifters (Jonathan Toppins) [1951826] - ionic: extend ts_config set locking (Jonathan Toppins) [1951826] - ionic: add ts_config replay (Jonathan Toppins) [1951826] - ionic: ignore EBUSY on queue start (Jonathan Toppins) [1951826] - ionic: re-start ptp after queues up (Jonathan Toppins) [1951826] - ionic: add SKBTX_IN_PROGRESS (Jonathan Toppins) [1951826] - ionic: check for valid tx_mode on SKBTX_HW_TSTAMP xmit (Jonathan Toppins) [1951826] - ionic: remove unnecessary compat ifdef (Jonathan Toppins) [1951826] - ionic: fix up a couple of code style nits (Jonathan Toppins) [1951826] - ionic: advertise support for hardware timestamps (Jonathan Toppins) [1951826] - ionic: ethtool ptp stats (Jonathan Toppins) [1951826] - ionic: add ethtool support for PTP (Jonathan Toppins) [1951826] - ionic: add and enable tx and rx timestamp handling (Jonathan Toppins) [1951826] - ethtool: add timestamping related string sets (Jonathan Toppins) [1951826] - net: Introduce peer to peer one step PTP time stamping. (Jonathan Toppins) [1951826] - ionic: set up hw timestamp queues (Jonathan Toppins) [1951826] - ionic: add rx filtering for hw timestamp steering (Jonathan Toppins) [1951826] - ionic: link in the new hw timestamp code (Jonathan Toppins) [1951826] - ionic: add hw timestamp support files (Jonathan Toppins) [1951826] - ionic: split adminq post and wait calls (Jonathan Toppins) [1951826] - ionic: add hw timestamp structs to interface (Jonathan Toppins) [1951826] - ionic: add handling of larger descriptors (Jonathan Toppins) [1951826] - ionic: add new queue features to interface (Jonathan Toppins) [1951826] - ionic: pull per-q stats work out of queue loops (Jonathan Toppins) [1951826] - ionic: avoid races in ionic_heartbeat_check (Jonathan Toppins) [1951826] - ionic: fix sizeof usage (Jonathan Toppins) [1951826] - ionic: count dma errors (Jonathan Toppins) [1951826] - ionic: protect adminq from early destroy (Jonathan Toppins) [1951826] - ionic: stop watchdog when in broken state (Jonathan Toppins) [1951826] - ionic: block actions during fw reset (Jonathan Toppins) [1951826] - ionic: update ethtool support bits for BASET (Jonathan Toppins) [1951826] - ionic: fix unchecked reference (Jonathan Toppins) [1951826] - ionic: simplify the intr_index use in txq_init (Jonathan Toppins) [1951826] - ionic: code cleanup details (Jonathan Toppins) [1951826] - ionic: Update driver to use ethtool_sprintf (Jonathan Toppins) [1951826] - ionic: aggregate Tx byte counting calls (Jonathan Toppins) [1951826] - ionic: simplify tx clean (Jonathan Toppins) [1951826] - ionic: generic tx skb mapping (Jonathan Toppins) [1951826] - ionic: simplify TSO descriptor mapping (Jonathan Toppins) [1951826] - ionic: simplify use of completion types (Jonathan Toppins) [1951826] - ionic: rebuild debugfs on qcq swap (Jonathan Toppins) [1951826] - ionic: simplify rx skb alloc (Jonathan Toppins) [1951826] - ionic: optimize fastpath struct usage (Jonathan Toppins) [1951826] - ionic: implement Rx page reuse (Jonathan Toppins) [1951826] - ionic: move rx_page_alloc and free (Jonathan Toppins) [1951826] - drivers: net: ionic: simplify the return expression of ionic_set_rxfh() (Jonathan Toppins) [1951826] - ionic: change mtu after queues are stopped (Jonathan Toppins) [1951826] - ionic: remove some unnecessary oom messages (Jonathan Toppins) [1951826] - ionic: useful names for booleans (Jonathan Toppins) [1951826] - ionic: change set_rx_mode from_ndo to can_sleep (Jonathan Toppins) [1951826] - ionic: flatten calls to ionic_lif_rx_mode (Jonathan Toppins) [1951826] - ionic: batch rx buffer refilling (Jonathan Toppins) [1951826] - ionic: add lif quiesce (Jonathan Toppins) [1951826] - ionic: check for link after netdev registration (Jonathan Toppins) [1951826] - ionic: check port ptr before use (Jonathan Toppins) [1951826] - platform/x86: hp-wireless: add AMD's hardware id to the supported list (David Arcari) [1960472] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (David Arcari) [1960472] - net/bond: revert deletion of driver and module versions (Jarod Wilson) [1955702] - net:sfc: fix non-freed irq in legacy irq mode (Íñigo Huguet) [1906728] - devlink: Extend SF port attributes to have external attribute (Petr Oros) [1959002] - netfilter: xt_SECMARK: add new revision to fix structure layout (Phil Sutter) [1961714] - xfrm: ipcomp: remove unnecessary get_cpu() (Sabrina Dubroca) [1946885] - platform/x86: intel_pmc_core: Add support for Alder Lake PCH-P (David Arcari) [1838624] - scsi: qedf: Update the max_id value in host structure (Nilesh Javali) [1954876] - scsi: qedf: Add pointer checks in qedf_update_link_speed() (Nilesh Javali) [1871687] - [s390] s390/nvme: support firmware-assisted dump to NVMe disks (Claudio Imbrenda) [1847447] - [s390] s390: nvme dump support (Claudio Imbrenda) [1847447] - [s390] s390/boot: add build-id to decompressor (Philipp Rudo) [1897093] - genirq: Reduce irqdebug cacheline bouncing (Gustavo Walbon) [1957729]- CI: Merge MR, baseline and private configs (Michael Hofmann) - RDMA/rxe: Fix failure during driver load (Kamal Heib) [1930263] - xfrm: remove the fragment check for ipv6 beet mode (Xin Long) [1965185] - SUNRPC: Fix NFS READs that start at non-page-aligned offsets (Benjamin Coddington) [1950303] - pNFS/NFSv4: Improve rejection of out-of-order layouts (Benjamin Coddington) [1950303] - pNFS/NFSv4: Update the layout barrier when we schedule a layoutreturn (Benjamin Coddington) [1950303] - pNFS/NFSv4: Try to return invalid layout in pnfs_layout_process() (Benjamin Coddington) [1950303] - SUNRPC: Move the svc_xdr_recvfrom tracepoint again (Benjamin Coddington) [1950303] - nfsd4: readdirplus shouldn't return parent of export (Benjamin Coddington) [1950303] - NFS: nfs_igrab_and_active must first reference the superblock (Benjamin Coddington) [1950303] - NFS: nfs_delegation_find_inode_server must first reference the superblock (Benjamin Coddington) [1950303] - NFS/pNFS: Fix a leak of the layout 'plh_outstanding' counter (Benjamin Coddington) [1950303] - NFS/pNFS: Don't leak DS commits in pnfs_generic_retry_commit() (Benjamin Coddington) [1950303] - NFS/pNFS: Don't call pnfs_free_bucket_lseg() before removing the request (Benjamin Coddington) [1950303] - pNFS: Stricter ordering of layoutget and layoutreturn (Benjamin Coddington) [1950303] - pNFS: Clean up pnfs_layoutreturn_free_lsegs() (Benjamin Coddington) [1950303] - pNFS: We want return-on-close to complete when evicting the inode (Benjamin Coddington) [1950303] - pNFS: Mark layout for return if return-on-close was not sent (Benjamin Coddington) [1950303] - net: sunrpc: interpret the return value of kstrtou32 correctly (Benjamin Coddington) [1950303] - SUNRPC: Handle TCP socket sends with kernel_sendpage() again (Benjamin Coddington) [1950303] - NFS/pNFS: Fix a typo in ff_layout_resend_pnfs_read() (Benjamin Coddington) [1950303] - pNFS/flexfiles: Avoid spurious layout returns in ff_layout_choose_ds_for_read (Benjamin Coddington) [1950303] - NFSv4/pnfs: Add tracing for the deviceid cache (Benjamin Coddington) [1950303] - fs/lockd: convert comma to semicolon (Benjamin Coddington) [1950303] - SUNRPC: When expanding the buffer, we may need grow the sparse pages (Benjamin Coddington) [1950303] - SUNRPC: Cleanup - constify a number of xdr_buf helpers (Benjamin Coddington) [1950303] - SUNRPC: Clean up open coded setting of the xdr_stream 'nwords' field (Benjamin Coddington) [1950303] - SUNRPC: _copy_to/from_pages() now check for zero length (Benjamin Coddington) [1950303] - SUNRPC: Cleanup xdr_shrink_bufhead() (Benjamin Coddington) [1950303] - SUNRPC: Fix xdr_expand_hole() (Benjamin Coddington) [1950303] - SUNRPC: Fixes for xdr_align_data() (Benjamin Coddington) [1950303] - SUNRPC: _shift_data_left/right_pages should check the shift length (Benjamin Coddington) [1950303] - NFSv4.1: use BITS_PER_LONG macro in nfs4session.h (Benjamin Coddington) [1950303] - xprtrdma: Fix XDRBUF_SPARSE_PAGES support (Benjamin Coddington) [1950303] - sunrpc: fix xs_read_xdr_buf for partial pages receive (Benjamin Coddington) [1950303] - Revert "nfsd4: support change_attr_type attribute" (Benjamin Coddington) [1950303] - nfsd4: don't query change attribute in v2/v3 case (Benjamin Coddington) [1950303] - nfsd: minor nfsd4_change_attribute cleanup (Benjamin Coddington) [1950303] - nfsd: simplify nfsd4_change_info (Benjamin Coddington) [1950303] - nfsd: only call inode_query_iversion in the I_VERSION case (Benjamin Coddington) [1950303] - nfs_common: need lock during iterate through the list (Benjamin Coddington) [1950303] - nfsd: Fix message level for normal termination (Benjamin Coddington) [1950303] - NFS: switch nfsiod to be an UNBOUND workqueue. (Benjamin Coddington) [1950303] - lockd: don't use interval-based rebinding over TCP (Benjamin Coddington) [1950303] - net: sunrpc: Fix 'snprintf' return value check in 'do_xprt_debugfs' (Benjamin Coddington) [1950303] - NFSv4: Refactor to use user namespaces for nfs4idmap (Benjamin Coddington) [1950303] - NFS: NFSv2/NFSv3: Use cred from fs_context during mount (Benjamin Coddington) [1950303] - NFSv4: Fix a pNFS layout related use-after-free race when freeing the inode (Benjamin Coddington) [1950303] - SUNRPC: Fix up xdr_set_page() (Benjamin Coddington) [1950303] - SUNRPC: Fix open coded xdr_stream_remaining() (Benjamin Coddington) [1950303] - pNFS: Clean up open coded xdr string decoding (Benjamin Coddington) [1950303] - SUNRPC: Fix up open coded kmemdup_nul() (Benjamin Coddington) [1950303] - pNFS/flexfiles: Fix up layoutstats reporting for non-TCP transports (Benjamin Coddington) [1950303] - NFSv4/pNFS: Store the transport type in struct nfs4_pnfs_ds_addr (Benjamin Coddington) [1950303] - pNFS: Add helpers for allocation/free of struct nfs4_pnfs_ds_addr (Benjamin Coddington) [1950303] - NFSv4/pNFS: Use connections to a DS that are all of the same protocol family (Benjamin Coddington) [1950303] - SUNRPC: Remove unused function xprt_load_transport() (Benjamin Coddington) [1950303] - NFS: Switch mount code to use xprt_find_transport_ident() (Benjamin Coddington) [1950303] - SUNRPC: Add a helper to return the transport identifier given a netid (Benjamin Coddington) [1950303] - SUNRPC: Close a race with transport setup and module put (Benjamin Coddington) [1950303] - SUNRPC: xprt_load_transport() needs to support the netid "rdma6" (Benjamin Coddington) [1950303] - SUNRPC: rpc_wake_up() should wake up tasks in the correct order (Benjamin Coddington) [1950303] - NFSv4: Observe the NFS_MOUNT_SOFTREVAL flag in _nfs4_proc_lookupp (Benjamin Coddington) [1950303] - NFSv3: Add emulation of the lookupp() operation (Benjamin Coddington) [1950303] - NFSv3: Refactor nfs3_proc_lookup() to split out the dentry (Benjamin Coddington) [1950303] - SUNRPC: Remove XDRBUF_SPARSE_PAGES flag in gss_proxy upcall (Benjamin Coddington) [1950303] - NFSD: Add tracepoints in nfsd4_decode/encode_compound() (Benjamin Coddington) [1950303] - NFSD: Add tracepoints in nfsd_dispatch() (Benjamin Coddington) [1950303] - NFSD: Add common helpers to decode void args and encode void results (Benjamin Coddington) [1950303] - SUNRPC: Prepare for xdr_stream-style decoding on the server-side (Benjamin Coddington) [1950303] - SUNRPC: Add xdr_set_scratch_page() and xdr_reset_scratch_buffer() (Benjamin Coddington) [1950303] - NFSD: Add SPDX header for fs/nfsd/trace.c (Benjamin Coddington) [1950303] - SUNRPC: Move the svc_xdr_recvfrom() tracepoint (Benjamin Coddington) [1950303] - NFSD: Add SPDX header for fs/nfsd/trace.c (Benjamin Coddington) [1950303] - NFSD: A semicolon is not needed after a switch statement. (Benjamin Coddington) [1950303] - svcrdma: support multiple Read chunks per RPC (Benjamin Coddington) [1950303] - svcrdma: Use the new parsed chunk list when pulling Read chunks (Benjamin Coddington) [1950303] - svcrdma: Rename info::ri_chunklen (Benjamin Coddington) [1950303] - svcrdma: Clean up chunk tracepoints (Benjamin Coddington) [1950303] - svcrdma: Remove chunk list pointers (Benjamin Coddington) [1950303] - svcrdma: Support multiple Write chunks in svc_rdma_send_reply_chunk (Benjamin Coddington) [1950303] - svcrdma: Support multiple Write chunks in svc_rdma_map_reply_msg() (Benjamin Coddington) [1950303] - svcrdma: Support multiple write chunks when pulling up (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to encode Reply transport headers (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to construct RDMA Writes (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to detect reverse direction replies (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to derive the inv_rkey (Benjamin Coddington) [1950303] - svcrdma: Add a "parsed chunk list" data structure (Benjamin Coddington) [1950303] - svcrdma: Clean up svc_rdma_encode_reply_chunk() (Benjamin Coddington) [1950303] - svcrdma: Post RDMA Writes while XDR encoding replies (Benjamin Coddington) [1950303] - NFSD: Invoke svc_encode_result_payload() in "read" NFSD encoders (Benjamin Coddington) [1950303] - SUNRPC: Rename svc_encode_read_payload() (Benjamin Coddington) [1950303] - svcrdma: Refactor the RDMA Write path (Benjamin Coddington) [1950303] - svcrdma: Const-ify the xdr_buf arguments (Benjamin Coddington) [1950303] - SUNRPC: Adjust synopsis of xdr_buf_subsegment() (Benjamin Coddington) [1950303] - svcrdma: Catch another Reply chunk overflow case (Benjamin Coddington) [1950303] - xprtrdma: Micro-optimize MR DMA-unmapping (Benjamin Coddington) [1950303] - xprtrdma: Move rpcrdma_mr_put() (Benjamin Coddington) [1950303] - xprtrdma: Trace unmap_sync calls (Benjamin Coddington) [1950303] - xprtrdma: Display the task ID when reporting MR events (Benjamin Coddington) [1950303] - xprtrdma: Clean up trace_xprtrdma_nomrs() (Benjamin Coddington) [1950303] - xprtrdma: Clean up xprtrdma callback tracepoints (Benjamin Coddington) [1950303] - xprtrdma: Clean up tracepoints in the reply path (Benjamin Coddington) [1950303] - xprtrdma: Clean up reply parsing error tracepoints (Benjamin Coddington) [1950303] - xprtrdma: Clean up trace_xprtrdma_post_linv (Benjamin Coddington) [1950303] - xprtrdma: Introduce FRWR completion IDs (Benjamin Coddington) [1950303] - xprtrdma: Introduce Send completion IDs (Benjamin Coddington) [1950303] - xprtrdma: Introduce Receive completion IDs (Benjamin Coddington) [1950303] - xprtrdma: Replace dprintk call sites in ERR_CHUNK path (Benjamin Coddington) [1950303] - xprtrdma: Fix a BUG when tracing is enabled with NFSv4.1 on RDMA (Benjamin Coddington) [1950303] - drm: virtio: fix common struct sg_table related issues (Eric Auger) [1971821] - net/mlx5e: Release skb in case of failure in tc update skb (Alaa Hleihel) [1915307] - net/mlx5: Release devlink object if adev fails (Alaa Hleihel) [1915307] - net/mlx5: Fix compilation warning for 32-bit platform (Alaa Hleihel) [1915307] - net/mlx5: Use effective interrupt affinity (Alaa Hleihel) [1915307] - net/mlx5: Replace irq_to_desc() abuse (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove unneeded semicolon (Alaa Hleihel) [1915307] - net: mlx5: convert comma to semicolon (Alaa Hleihel) [1915307] - net/mlx5e: Fill mlx5e_create_cq_param in a function (Alaa Hleihel) [1915307] - net/mlx5e: Split between RX/TX tunnel FW support indication (Alaa Hleihel) [1915307] - net/mlx5: Arm only EQs with EQEs (Alaa Hleihel) [1915307] - net/mlx5e: Remove duplicated include (Alaa Hleihel) [1915307] - net/mlx5e: Add TX port timestamp support (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Add TX PTP port object support (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Move MLX5E_RX_ERR_CQE macro (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Split SW group counters update function (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Change skb fifo push/pop API to be used without SQ (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Allow SQ outside of channel context (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Allow RQ outside of channel context (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Allow CQ outside of channel context (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Free drop RQ in a dedicated function (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove IB representors dead code (Alaa Hleihel) [1915307] - net/mlx5: Simplify eswitch mode check (Alaa Hleihel) [1915307] - net/mlx5: Delete custom device management logic (Alaa Hleihel) [1915307] - RDMA/mlx5: Convert mlx5_ib to use auxiliary bus (Alaa Hleihel) [1915307] - net/mlx5e: Connect ethernet part to auxiliary bus (Alaa Hleihel) [1915307] - vdpa/mlx5: Connect mlx5_vdpa to auxiliary bus (Alaa Hleihel) [1915307] - net/mlx5: Register mlx5 devices to auxiliary virtual bus (Alaa Hleihel) [1915307] - vdpa/mlx5: Make hardware definitions visible to all mlx5 devices (Alaa Hleihel) [1915307] - net/mlx5_core: Clean driver version and name (Alaa Hleihel) [1915307] - net/mlx5: Treat host PF vport as other (non eswitch manager) vport (Alaa Hleihel) [1915307] - net/mlx5: Export steering related functions (Alaa Hleihel) [1915307] - net/mlx5: Expose other function ifc bits (Alaa Hleihel) [1915307] - net/mlx5: Expose IP-in-IP TX and RX capability bits (Alaa Hleihel) [1915307] - net/mlx5: Update the hardware interface definition for vhca state (Alaa Hleihel) [1915307] - net/mlx5: Avoid exposing driver internal command helpers (Alaa Hleihel) [1915307] - net/mlx5: Add ts_cqe_to_dest_cqn related bits (Alaa Hleihel) [1915307] - net/mlx5: Add misc4 to mlx5_ifc_fte_match_param_bits (Alaa Hleihel) [1915307] - net/mlx5: Check dr mask size against mlx5_match_param size (Alaa Hleihel) [1915307] - net/mlx5: Add sampler destination type (Alaa Hleihel) [1915307] - net/mlx5: Add sample offload hardware bits and structures (Alaa Hleihel) [1915307] - RDMA/mlx5: Use PCI device for dma mappings (Alaa Hleihel) [1915307] - RDMA/mlx5: Silence the overflow warning while building offset mask (Alaa Hleihel) [1915307] - RDMA/mlx5: Check for ERR_PTR from uverbs_zalloc() (Alaa Hleihel) [1915307] - RDMA/mlx5: Enable querying AH for XRC QP types (Alaa Hleihel) [1915307] - RDMA/mlx5: Lower setting the umem's PAS for SRQ (Alaa Hleihel) [1915307] - RDMA/mlx5: Use ib_umem_find_best_pgsz() for devx (Alaa Hleihel) [1915307] - RDMA/mlx5: mlx5_umem_find_best_quantized_pgoff() for CQ (Alaa Hleihel) [1915307] - RDMA/mlx5: Use mlx5_umem_find_best_quantized_pgoff() for QP (Alaa Hleihel) [1915307] - RDMA/mlx5: Directly compute the PAS list for raw QP RQ's (Alaa Hleihel) [1915307] - RDMA/mlx5: Use mlx5_umem_find_best_quantized_pgoff() for WQ (Alaa Hleihel) [1915307] - RDMA/mlx5: Use ib_umem_find_best_pgoff() for SRQ (Alaa Hleihel) [1915307] - net: mlx5: Replace in_irq() usage (Alaa Hleihel) [1915307] - net/mlx5: Cleanup kernel-doc warnings (Alaa Hleihel) [1915307] - net/mlx5e: Validate stop_room size upon user input (Alaa Hleihel) [1915307] - net/mlx5: DR, Free unused buddy ICM memory (Alaa Hleihel) [1915307] - net/mlx5: DR, ICM memory pools sync optimization (Alaa Hleihel) [1915307] - net/mlx5: DR, Sync chunks only during free (Alaa Hleihel) [1915307] - net/mlx5: DR, Handle ICM memory via buddy allocation instead of buckets (Alaa Hleihel) [1915307] - net/mlx5: DR, Add buddy allocator utilities (Alaa Hleihel) [1915307] - net/mlx5: DR, Rename matcher functions to be more HW agnostic (Alaa Hleihel) [1915307] - net/mlx5: DR, Rename builders HW specific names (Alaa Hleihel) [1915307] - net/mlx5: DR, Remove unused member of action struct (Alaa Hleihel) [1915307] - IB/mlx5: Add support for NDR link speed (Alaa Hleihel) [1915307 1926596] - RDMA/mlx5: Use ib_umem_find_best_pgsz() for mkc's (Alaa Hleihel) [1915307] - RDMA/mlx5: Split the WR setup out of mlx5_ib_update_xlt() (Alaa Hleihel) [1915307] - RDMA/mlx5: Move xlt_emergency_page_mutex into mr.c (Alaa Hleihel) [1915307] - RDMA/mlx5: Change mlx5_ib_populate_pas() to use rdma_for_each_block() (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove npages from mlx5_ib_cont_pages() (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove ncont from mlx5_ib_cont_pages() (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove order from mlx5_ib_cont_pages() (Alaa Hleihel) [1915307] - RDMA/mlx5: Move mlx5_ib_cont_pages() to the creation of the mlx5_ib_mr (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove mlx5_ib_mr->order (Alaa Hleihel) [1915307] - net/mlx5: fix error return code in mlx5e_tc_nic_init() (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Fix IPsec packet drop by mlx5e_tc_update_skb (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Use spin_lock_bh for async_icosq_lock (Alaa Hleihel) [1915306 1915307] - net/mlx5: Replace zero-length array with flexible-array member (Alaa Hleihel) [1915306 1915307] - net/mlx5: Fix uininitialized pointer read on pointer attr (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add support for devlink reload limit no reset (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add support for fw live patch event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add devlink param enable_remote_dev_reset support (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add support for devlink reload action fw activate (Alaa Hleihel) [1915306 1915307] - net/mlx5: Handle sync reset abort event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Handle sync reset now event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Handle sync reset request event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Set cap for pci sync for fw update event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add functions to set/query MFRL register (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Fix potential null pointer dereference (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Fix dereference on pointer attr after null check (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Use dma device access helper (Alaa Hleihel) [1915306 1915307] - mlx5: cross-tree: phase out dma_zalloc_coherent() (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-Switch, Support flow source for local vport (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Move devlink eswitch ports closer to eswitch (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Use helper function to load unload representor (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Add helper to check egress ACL need (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Use PF num in metadata reg c0 (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Add support for rule creation with flow source hint (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Call ste_builder directly with tag pointer (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Remove unneeded local variable (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Remove unneeded vlan check from L2 builder (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Remove unneeded check from source port builder (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Replace the check for valid STE entry (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Delete not needed GSI QP signal QP type (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Change GSI QP to have same creation flow like other QPs (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Reuse existing fields in parent QP storage object (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Embed GSI QP into general mlx5_ib QP (Alaa Hleihel) [1915306 1915307] - net/mlx5: remove unreachable return (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Use kfree() to free fd->g in accel_fs_tcp_create_groups() (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Keep direct reference to mlx5_core_dev in tc ct (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Support CT offload for tc nic flows (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: rework ct offload init messages (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Add tc chains offload support for nic flows (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Refactor tc flow attributes structure (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Split nic tc flow allocation and creation (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Tc nic flows to use mlx5_chains flow tables (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Allow ft level ignore for nic rx tables (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Refactor multi chains and prios support (Alaa Hleihel) [1915306 1915307 1919642] - RDMA/mlx5: Don't call to restrack recursively (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Expose TIR and QP ICM address for sw_owner_v2 devices (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Allow DM allocation for sw_owner_v2 enabled devices (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Add sw_owner_v2 bit capability (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Delete duplicated mlx5_ptys_width enum (Alaa Hleihel) [1915306 1915307] - net/mlx5: IPsec: make spdxcheck.py happy (Alaa Hleihel) [1915306 1915307] - mlx5: add pause frame stats (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Add CQE compression support for multi-strides packets (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Add support for tc trap (Alaa Hleihel) [1915306 1915307 1919643] - net/mlx5: E-Switch, Use vport metadata matching by default (Alaa Hleihel) [1915306 1915307] - net/mlx5: remove erroneous fallthrough (Alaa Hleihel) [1915306 1915307] - IB/mlx5: Add DCT RoCE LAG support (Alaa Hleihel) [1915306 1915307] - IB/mlx5: Add tx_affinity support for DCI QP (Alaa Hleihel) [1915306 1915307] - net/mlx5e: RX, Add a prefetch command for small L1_CACHE_BYTES (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Enable sniffer when device is in switchdev mode (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Add new IB rates support (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Replace open-coded offsetofend() macro (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Simplify multiple else-if cases with switch keyword (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Link non uplink representors to PCI device (Alaa Hleihel) [1915306 1915307 1959367] - perf stat: Use nftw() instead of ftw() (Michael Petlan) [1944684] - perf unwind: Set userdata for all __report_module() paths (Michael Petlan) [1944684] - perf debug: Move debug initialization earlier (Michael Petlan) [1944684] - perf script: Fix overrun issue for dynamically-allocated PMU type number (Michael Petlan) [1944684] - perf metricgroup: Fix system PMU metrics (Michael Petlan) [1944684] - perf metricgroup: Fix for metrics containing duration_time (Michael Petlan) [1944684] - perf evlist: Fix id index for heterogeneous systems (Michael Petlan) [1944684] - perf inject: Correct event attribute sizes (Michael Petlan) [1944684] - perf intel-pt: Fix 'CPU too large' error (Michael Petlan) [1944684] - perf stat: Take cgroups into account for shadow stats (Michael Petlan) [1944684] - perf stat: Introduce struct runtime_stat_data (Michael Petlan) [1944684] - libperf tests: Fail when failing to get a tracepoint id (Michael Petlan) [1944684] - libperf tests: If a test fails return non-zero (Michael Petlan) [1944684] - libperf tests: Avoid uninitialized variable warning (Michael Petlan) [1944684] - perf test: Fix shadow stat test for non-bash shells (Michael Petlan) [1944684] - perf bpf examples: Fix bpf.h header include directive in 5sec.c example (Michael Petlan) [1944684] - perf probe: Fix memory leak when synthesizing SDT probes (Michael Petlan) [1944684] - perf stat aggregation: Add separate thread member (Michael Petlan) [1944684] - perf stat aggregation: Add separate core member (Michael Petlan) [1944684] - perf stat aggregation: Add separate die member (Michael Petlan) [1944684] - perf stat aggregation: Add separate socket member (Michael Petlan) [1944684] - perf stat aggregation: Add separate node member (Michael Petlan) [1944684] - perf stat aggregation: Start using cpu_aggr_id in map (Michael Petlan) [1944684] - perf cpumap: Drop in cpu_aggr_map struct (Michael Petlan) [1944684] - perf cpumap: Add new map type for aggregation (Michael Petlan) [1944684] - perf stat: Replace aggregation ID with a struct (Michael Petlan) [1944684] - perf cpumap: Add new struct for cpu aggregation (Michael Petlan) [1944684] - perf cpumap: Use existing allocator to avoid using malloc (Michael Petlan) [1944684] - perf tests: Improve topology test to check all aggregation types (Michael Petlan) [1944684] - perf powerpc: Move syscall.tbl check to check-headers.sh (Michael Petlan) [1944684] - tools arch x86: Sync the msr-index.h copy with the kernel sources (Michael Petlan) [1944684] - perf mem: Factor out a function to generate sort order (Michael Petlan) [1944684] - perf sort: Add sort option for data page size (Michael Petlan) [1944684] - perf script: Support data page size (Michael Petlan) [1944684] - tools headers UAPI: Sync linux/stat.h with the kernel sources (Michael Petlan) [1944684] - tools: Factor HOSTCC, HOSTLD, HOSTAR definitions (Michael Petlan) [1944684] - perf config: Fix example command in manpage to conform to syntax specified in the SYNOPSIS section. (Michael Petlan) [1944684] - perf test: Make sample-parsing test aware of PERF_SAMPLE_{CODE,DATA}_PAGE_SIZE (Michael Petlan) [1944684] - perf tools: Add support to read build id from compressed elf (Michael Petlan) [1944684] - perf debug: Add debug_set_file function (Michael Petlan) [1944684] - perf evlist: Support pipe mode display (Michael Petlan) [1944684] - perf report: Support --header-only for pipe mode (Michael Petlan) [1944684] - perf vendor events: Add JSON metrics for imx8mm DDR Perf (Michael Petlan) [1944684] - perf metricgroup: Support adding metrics for system PMUs (Michael Petlan) [1944684] - perf metricgroup: Support printing metric groups for system PMUs (Michael Petlan) [1944684] - perf metricgroup: Split up metricgroup__print() (Michael Petlan) [1944684] - perf metricgroup: Fix metrics using aliases covering multiple PMUs (Michael Petlan) [1944684] - perf evlist: Change evlist__splice_list_tail() ordering (Michael Petlan) [1944684] - perf pmu: Add pmu_add_sys_aliases() (Michael Petlan) [1944684] - perf pmu: Add pmu_id() (Michael Petlan) [1944684] - perf jevents: Add support for system events tables (Michael Petlan) [1944684] - perf jevents: Add support for an extra directory level (Michael Petlan) [1944684] - perf evsel: Emit warning about kernel not supporting the data page size sample_type bit (Michael Petlan) [1944684] - perf record: Support new sample type for data page size (Michael Petlan) [1944684] - perf unwind: Fix separate debug info files when using elfutils' libdw's unwinder (Michael Petlan) [1944684] - perf record: Fix memory leak when using '--user-regs=?' to list registers (Michael Petlan) [1944684] - tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1944684] - tools build: Add missing libcap to test-all.bin target (Michael Petlan) [1944684] - perf test: Fix metric parsing test (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' record methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' diff methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' nr_threads method (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' deliver event method (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' header methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' raw samples methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' mmap pages parsing method (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' event attribute config methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for alternative 'struct evlist' constructors (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' event selection methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' event group methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' create maps methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' print methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' evsel list methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' pause/resume methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' id_pos methods (Michael Petlan) [1944684] - perf tools: Add aarch64 registers to --user-regs (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' tracking event methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' browser methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' sample id lookup methods (Michael Petlan) [1944684] - perf evlist: Ditch unused set/reset sample_bit methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' sample parsing methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' sideband thread methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' 'filter' methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' stats methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' 'workload' methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' methods: evlist__set_leader() (Michael Petlan) [1944684] - perf evsel: Convert last 'struct evsel' methods to the right evsel__ prefix (Michael Petlan) [1944684] - perf test: Add shadow stat test (Michael Petlan) [1944684] - perf build-id: Add build_id_cache__add function (Michael Petlan) [1944684] - perf build-id: Add __perf_session__cache_build_ids function (Michael Petlan) [1944684] - perf build-id: Use machine__for_each_dso in perf_session__cache_build_ids (Michael Petlan) [1944684] - perf data: Add is_perf_data function (Michael Petlan) [1944684] - perf symbols: Try to load vmlinux from buildid database (Michael Petlan) [1944684] - perf tools: Use struct extra_kernel_map in machine__process_kernel_mmap_event (Michael Petlan) [1944684] - perf build-id: Add check for existing link in buildid dir (Michael Petlan) [1944684] - perf tools: Add filename__decompress function (Michael Petlan) [1944684] - perf tools: Add build_id__is_defined function (Michael Petlan) [1944684] - tools lib: Adopt memchr_inv() from kernel (Michael Petlan) [1944684] - perf arm-spe: Add support for ARMv8.3-SPE (Michael Petlan) [1944684] - perf arm_spe: Decode memory tagging properties (Michael Petlan) [1944684] - perf arm-spe: Add more sub classes for operation packet (Michael Petlan) [1944684] - perf arm-spe: Refactor operation packet handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_op_type() (Michael Petlan) [1944684] - perf arm-spe: Remove size condition checking for events (Michael Petlan) [1944684] - perf arm-spe: Refactor event type handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_event() (Michael Petlan) [1944684] - perf arm-spe: Refactor counter packet handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_counter() (Michael Petlan) [1944684] - perf arm-spe: Refactor context packet handling (Michael Petlan) [1944684] - perf arm_spe: Fixup top byte for data virtual address (Michael Petlan) [1944684] - perf arm-spe: Refactor address packet handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_addr() (Michael Petlan) [1944684] - perf arm-spe: Refactor packet header parsing (Michael Petlan) [1944684] - perf arm-spe: Refactor printing string to buffer (Michael Petlan) [1944684] - perf expr: Force encapsulation on expr_id_data (Michael Petlan) [1944684] - perf vendor events: Update Skylake client events to v50 (Michael Petlan) [1944684] - perf data: Allow to use stdio functions for pipe mode (Michael Petlan) [1944684] - perf arm-spe: Fix packet length handling (Michael Petlan) [1944684] - perf arm-spe: Refactor arm_spe_get_events() (Michael Petlan) [1944684] - perf arm-spe: Refactor payload size calculation (Michael Petlan) [1944684] - perf arm-spe: Fix a typo in comment (Michael Petlan) [1944684] - perf arm-spe: Include bitops.h for BIT() macro (Michael Petlan) [1944684] - perf mem: Support ARM SPE events (Michael Petlan) [1944684] - perf c2c: Support AUX trace (Michael Petlan) [1944684] - perf mem: Support AUX trace (Michael Petlan) [1944684] - perf auxtrace: Add itrace option '-M' for memory events (Michael Petlan) [1944684] - perf mem: Only initialize memory event for recording (Michael Petlan) [1944684] - perf c2c: Support memory event PERF_MEM_EVENTS__LOAD_STORE (Michael Petlan) [1944684] - perf mem: Support new memory event PERF_MEM_EVENTS__LOAD_STORE (Michael Petlan) [1944684] - perf mem: Introduce weak function perf_mem_events__ptr() (Michael Petlan) [1944684] - perf mem: Search event name with more flexible path (Michael Petlan) [1944684] - perf jevents: Add test for arch std events (Michael Petlan) [1944684] - perf jevents: Tidy error handling (Michael Petlan) [1944684] - perf trace beauty: Allow header files in a different path (Michael Petlan) [1944684] - perf stat: Add --quiet option (Michael Petlan) [1944684] - perf stat: Support regex pattern in --for-each-cgroup (Michael Petlan) [1944684] - perf kvm: Add kvm-stat for arm64 (Michael Petlan) [1944684] - perf env: Conditionally compile BPF support code on having HAVE_LIBBPF_SUPPORT (Michael Petlan) [1944684] - perf annotate: Move bpf header inclusion to inside HAVE_LIBBPF_SUPPORT (Michael Petlan) [1944684] - perf tests: Skip the llvm and bpf tests if HAVE_LIBBPF_SUPPORT isn't defined (Michael Petlan) [1944684] - perf bpf: Enclose libbpf.h include within HAVE_LIBBPF_SUPPORT (Michael Petlan) [1944684] - perf test: Implement skip_reason callback for watchpoint tests (Michael Petlan) [1944684] - perf tests tsc: Add checking helper is_supported() (Michael Petlan) [1944684] - perf tests tsc: Make tsc testing as a common testing (Michael Petlan) [1944684] - perf mem2node: Improve warning if detected no memory nodes (Michael Petlan) [1944684] - perf version: Add a feature for libpfm4 (Michael Petlan) [1944684] - perf annotate mips: Add perf arch instructions annotate handlers (Michael Petlan) [1944684] - perf/x86/intel: Add Tremont Topdown support (Michael Petlan) [1944684] - perf/x86: Fix fall-through warnings for Clang (Michael Petlan) [1944684] - perf/x86/intel/lbr: Fix the return type of get_lbr_cycles() (Michael Petlan) [1944684] - perf/x86/intel: Fix rtm_abort_event encoding on Ice Lake (Michael Petlan) [1944684] - perf: Break deadlock involving exec_update_mutex (Michael Petlan) [1944684] - perf/x86/intel: Add event constraint for CYCLE_ACTIVITY.STALLS_MEM_ANY (Michael Petlan) [1944684] - perf/x86: Avoid TIF_IA32 when checking 64bit mode (Michael Petlan) [1944684] - bpf, ringbuf: Deny reserve of buffers larger than ringbuf (Wander Lairson Costa) [1968591] - bpf: Fix propagation of 32 bit unsigned bounds from 64 bit bounds (Wander Lairson Costa) [1965938] - tools/power turbostat: Support Alder Lake Mobile (Steve Best) [1962291] - ACPI: PM: Add ACPI ID of Alder Lake Fan (Steve Best) [1961617] - powercap/intel_rapl: add support for AlderLake Mobile (Steve Best) [1961816] - platform/x86: intel_pmc_core: Uninitialized data in pmc_core_lpm_latch_mode_write() (David Arcari) [1783557] - platform/x86: intel_pmc_core: add ACPI dependency (David Arcari) [1783557] - platform/x86: intel_pmc_core: Fix "unsigned 'ret' is never less than zero" smatch warning (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add LTR registers for Tiger Lake (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add option to set/clear LPM mode (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add requirements file to debugfs (David Arcari) [1783557] - platform/x86: intel_pmc_core: Get LPM requirements for Tiger Lake (David Arcari) [1783557] - platform/x86: intel_pmc_core: Show LPM residency in microseconds (David Arcari) [1783557] - platform/x86: intel_pmc_core: Handle sub-states generically (David Arcari) [1783557] - platform/x86: intel_pmc_core: Remove global struct pmc_dev (David Arcari) [1783557] - platform/x86: intel_pmc_core: Don't use global pmcdev in quirks (David Arcari) [1783557] - platform/x86: intel_pmc_core: export platform global reset bits via etr3 sysfs file (David Arcari) [1783557] - MAINTAINERS: Update maintainers for pmc_core driver (David Arcari) [1783557] - MAINTAINERS: intel_pmc_core: Update MAINTAINERS (David Arcari) [1783557] - platform/x86: intel_pmc_core: Ignore GBE LTR on Tiger Lake platforms (David Arcari) [1783557] - platform/x86: intel_pmc_core: Assign boolean values to a bool variable (David Arcari) [1783557] - platform/x86: intel_pmc_core: fix: Replace dev_dbg macro with dev_info() (David Arcari) [1783557] - platform/x86: intel_pmc_core: Clean up: Remove the duplicate comments and reorganize (David Arcari) [1783557] - platform/x86: intel_pmc_core: Fix the slp_s0 counter displayed value (David Arcari) [1783557] - platform/x86: intel_pmc_core: Fix TigerLake power gating status map (David Arcari) [1783557] - platform/x86: pmc_core: Use descriptive names for LPM registers (David Arcari) [1783557] - platform/x86: intel_pmc_core: Change Jasper Lake S0ix debug reg map back to ICL (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add Atom based Jasper Lake (JSL) platform support (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add Intel Elkhart Lake support (David Arcari) [1783557] - [s390] s390/ipl: support NVMe IPL kernel parameters (Claudio Imbrenda) [1963120] - [s390] net/smc: use memcpy instead of snprintf to avoid out of bounds read (Claudio Imbrenda) [1919249] - [s390] smc: fix out of bound access in smc_nl_get_sys_info() (Claudio Imbrenda) [1919249] - [s390] net/smc: fix access to parent of an ib device (Claudio Imbrenda) [1919249] - [s390] s390/vtime: fix increased steal time accounting (Claudio Imbrenda) [1963075] - [s390] tools/kvm_stat: Add restart delay (Claudio Imbrenda) [1963082] - [s390] s390/dasd: fix hanging IO request during DASD driver unbind (Claudio Imbrenda) [1963077] - [s390] s390/dasd: fix hanging DASD driver unbind (Claudio Imbrenda) [1963077]- Add New KUNIT Tests to Redhat kernel-modules-internal (Nico Pache) [1939309] - kunit: lib: adhear to KUNIT formatting standard (Nico Pache) [1939309] - kunit: mptcp: adhere to KUNIT formatting standard (Nico Pache) [1939309] - ASoC: topology: adhere to KUNIT formatting standard (Nico Pache) [1939309] - kunit: software node: adhear to KUNIT formatting standard (Nico Pache) [1939309] - resource: provide meaningful MODULE_LICENSE() in test suite (Nico Pache) [1939309] - resource: Add test cases for new resource API (Nico Pache) [1939309] - resource: Introduce resource_intersection() for overlapping resources (Nico Pache) [1939309] - resource: Introduce resource_union() for overlapping resources (Nico Pache) [1939309] - mm/resource: Use resource_overlaps() to simplify region_intersects() (Nico Pache) [1939309] - kernel.h: split out min()/max() et al. helpers (Nico Pache) [1939309] - lib/math/rational.c: fix possible incorrect result from rational fractions helper (Nico Pache) [1939309] - lib: Move mathematic helpers to separate folder (Nico Pache) [1939309] - lib/cmdline: remove an unneeded local variable in next_arg() (Nico Pache) [1939309] - lib/cmdline: Allow get_options() to take 0 to validate the input (Nico Pache) [1939309] - lib/cmdline: Update documentation to reflect behaviour (Nico Pache) [1939309] - lib/cmdline_kunit: add a new test case for get_options() (Nico Pache) [1939309] - ext4: add .kunitconfig fragment to enable ext4-specific tests (Nico Pache) [1939309] - ext: EXT4_KUNIT_TESTS should depend on EXT4_FS instead of selecting it (Nico Pache) [1939309] - kunit: tool: fix unintentional statefulness in run_kernel() (Nico Pache) [1939309] - kunit: tool: add support for filtering suites by glob (Nico Pache) [1939309] - kunit: add kunit.filter_glob cmdline option to filter suites (Nico Pache) [1939309] - kunit: don't show `1 == 1` in failed assertion messages (Nico Pache) [1939309] - kunit: make kunit_tool accept optional path to .kunitconfig fragment (Nico Pache) [1939309] - Documentation: kunit: add tips.rst for small examples (Nico Pache) [1939309] - KUnit: Docs: make start.rst example Kconfig follow style.rst (Nico Pache) [1939309] - kunit: tool: simplify kconfig is_subset_of() logic (Nico Pache) [1939309] - minor: kunit: tool: fix unit test so it can run from non-root dir (Nico Pache) [1939309] - kunit: tool: use `with open()` in unit test (Nico Pache) [1939309] - kunit: tool: stop using bare asserts in unit test (Nico Pache) [1939309] - kunit: tool: fix unit test cleanup handling (Nico Pache) [1939309] - ASoC: topology: KUnit: Convert from cpu to data format (Nico Pache) [1939309] - drivers/base: build kunit tests without structleak plugin (Nico Pache) [1939309] - ASoC: topology: KUnit: Add KUnit tests passing topology with PCM to snd_soc_tplg_component_load (Nico Pache) [1939309] - ASoC: topology: KUnit: Add KUnit tests passing empty topology with variants to snd_soc_tplg_component_load (Nico Pache) [1939309] - ASoC: topology: KUnit: Add KUnit tests passing various arguments to snd_soc_tplg_component_load (Nico Pache) [1939309] - ASoC: topology: Check if ops is set before dereference (Nico Pache) [1939309] - ASoC: topology: Ensure that needed parameters are set (Nico Pache) [1939309] - kunit: tool: move kunitconfig parsing into __init__, make it optional (Nico Pache) [1939309] - kunit: tool: fix minor typing issue with None status (Nico Pache) [1939309] - kunit: tool: surface and address more typing issues (Nico Pache) [1939309] - Documentation: kunit: include example of a parameterized test (Nico Pache) [1939309] - kunit: tool: Fix spelling of "diagnostic" in kunit_parser (Nico Pache) [1939309] - kunit: tool: Force the use of the 'tty' console for UML (Nico Pache) [1939309] - lib/cmdline_kunit: add a new test suite for cmdline API (Nico Pache) [1939309] - lib/cmdline: allow NULL to be an output for get_option() (Nico Pache) [1939309] - lib/cmdline: fix get_option() for strings starting with hyphen (Nico Pache) [1939309] - lib/cmdline.c: mark expected switch fall-throughs (Nico Pache) [1939309] - lib/test_bits.c: add tests of GENMASK (Nico Pache) [1939309] - linux/bits.h: add compile time sanity check of GENMASK inputs (Nico Pache) [1939309] - linux/build_bug.h: change type to int (Nico Pache) [1939309] - fs: ext4: Modify inode-test.c to use KUnit parameterized testing feature (Nico Pache) [1939309] - kunit: Support for Parameterized Testing (Nico Pache) [1939309] - kunit: kunit_tool: Correctly parse diagnostic messages (Nico Pache) [1939309] - Documentation: kunit: provide guidance for testing many inputs (Nico Pache) [1939309] - kunit: Introduce get_file_path() helper (Nico Pache) [1939309] - kunit: fix display of failed expectations for strings (Nico Pache) [1939309] - kunit: tool: fix extra trailing \n in raw + parsed test output (Nico Pache) [1939309] - kunit: tool: print out stderr from make (like build warnings) (Nico Pache) [1939309] - KUnit: Docs: usage: wording fixes (Nico Pache) [1939309] - KUnit: Docs: style: fix some Kconfig example issues (Nico Pache) [1939309] - KUnit: Docs: fix a wording typo (Nico Pache) [1939309] - kunit: Do not pollute source directory with generated files (test.log) (Nico Pache) [1939309] - kunit: Do not pollute source directory with generated files (.kunitconfig) (Nico Pache) [1939309] - kunit: tool: fix pre-existing python type annotation errors (Nico Pache) [1939309] - kunit: Fix kunit.py parse subcommand (use null build_dir) (Nico Pache) [1939309] - kunit: test: fix remaining kernel-doc warnings (Nico Pache) [1939309] - lib: kunit: Fix compilation test when using TEST_BIT_FIELD_COMPILE (Nico Pache) [1939309] - kunit: test.h: fix a bad kernel-doc markup (Nico Pache) [1939309] - kunit: test.h: solve kernel-doc warnings (Nico Pache) [1939309] - lib: kunit: add bitfield test conversion to KUnit (Nico Pache) [1939309] - Documentation: kunit: add a brief blurb about kunit_test_suite (Nico Pache) [1939309] - kunit: test: add test plan to KUnit TAP format (Nico Pache) [1939309] - init: main: add KUnit to kernel init (Nico Pache) [1939309] - init: unify opening /dev/console as stdin/stdout/stderr (Nico Pache) [1939309] - kunit: test: create a single centralized executor for all tests (Nico Pache) [1939309] - Documentation: test.h - fix warnings (Nico Pache) [1939309] - vmlinux.lds.h: add linker section for KUnit test suites (Nico Pache) [1939309] - Documentation: kunit: Add naming guidelines (Nico Pache) [1939309] - kunit: tool: fix display of make errors (Nico Pache) [1939309] - kunit: tool: handle when .kunit exists but .kunitconfig does not (Nico Pache) [1939309] - kunit: tool: fix --alltests flag (Nico Pache) [1939309] - kunit: tool: allow generating test results in JSON (Nico Pache) [1939309] - kunit: tool: fix running kunit_tool from outside kernel tree (Nico Pache) [1939309] - lib: add linear ranges helpers (Nico Pache) [1939309] - PCI/RCEC: Fix RCiEP device to RCEC association (Myron Stowe) [1895942] - PCI/portdrv: Report reset for frozen channel (Myron Stowe) [1895942] - PCI/AER: Specify the type of Port that was reset (Myron Stowe) [1895942] - PCI/ERR: Retain status from error notification (Myron Stowe) [1895942] - PCI/AER: Clear AER status from Root Port when resetting Downstream Port (Myron Stowe) [1895942] - PCI/ERR: Clear status of the reporting device (Myron Stowe) [1895942] - PCI/AER: Add RCEC AER error injection support (Myron Stowe) [1895942] - PCI/PME: Add pcie_walk_rcec() to RCEC PME handling (Myron Stowe) [1895942] - PCI/AER: Add pcie_walk_rcec() to RCEC AER handling (Myron Stowe) [1895942] - PCI/ERR: Recover from RCiEP AER errors (Myron Stowe) [1895942] - PCI/ERR: Add pcie_link_rcec() to associate RCiEPs (Myron Stowe) [1895942] - PCI/ERR: Recover from RCEC AER errors (Myron Stowe) [1895942] - PCI/ERR: Clear AER status only when we control AER (Myron Stowe) [1895942] - PCI/ERR: Add pci_walk_bridge() to pcie_do_recovery() (Myron Stowe) [1895942] - PCI/ERR: Avoid negated conditional for clarity (Myron Stowe) [1895942] - PCI/ERR: Use "bridge" for clarity in pcie_do_recovery() (Myron Stowe) [1895942] - PCI/ERR: Simplify by computing pci_pcie_type() once (Myron Stowe) [1895942] - PCI/ERR: Simplify by using pci_upstream_bridge() (Myron Stowe) [1895942] - PCI/ERR: Rename reset_link() to reset_subordinates() (Myron Stowe) [1895942] - PCI/ERR: Cache RCEC EA Capability offset in pci_init_capabilities() (Myron Stowe) [1895942] - PCI/ERR: Bind RCEC devices to the Root Port driver (Myron Stowe) [1895942] - PCI/AER: Write AER Capability only when we control it (Myron Stowe) [1895942] - PCI: Export pcie_has_flr() (Myron Stowe) [1895942] - xfs: don't reuse busy extents on extent trim (Brian Foster) [1960380] - nvme: add 'kato' sysfs attribute (Gopal Tiwari) [1970260] - scsi: qla2xxx: Update version to 10.02.00.106-k (Nilesh Javali) [1925465] - scsi: qla2xxx: Add marginal path handling support (Nilesh Javali) [1925465] - scsi: qla2xxx: Do logout even if fabric scan retries got exhausted (Nilesh Javali) [1925465] - scsi: qla2xxx: Update default AER debug mask (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix mailbox recovery during PCIe error (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix crash in PCIe error handling (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix RISC RESET completion polling (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix crash in qla2xxx_mqueuecommand() (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix use after free in bsg (Nilesh Javali) [1925465] - scsi: qla2xxx: Consolidate zio threshold setting for both FCP & NVMe (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix stuck session (Nilesh Javali) [1925465] - scsi: qla2xxx: Add H:C:T info in the log message for fc ports (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix IOPS drop seen in some adapters (Nilesh Javali) [1925465] - scsi: qla2xxx: Check kzalloc() return value (Nilesh Javali) [1925465] - scsi: qla2xxx: Always check the return value of qla24xx_get_isp_stats() (Nilesh Javali) [1925465] - scsi: qla2xxx: Simplify qla8044_minidump_process_control() (Nilesh Javali) [1925465] - scsi: qla2xxx: Suppress Coverity complaints about dseg_r* (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix endianness annotations (Nilesh Javali) [1925465] - scsi: qla2xxx: Constify struct qla_tgt_func_tmpl (Nilesh Javali) [1925465] - scsi: qla2xxx: Use dma_pool_zalloc() (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix a couple of misdocumented functions (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix incorrectly named function qla8044_check_temp() (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix a couple of misnamed functions (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix some incorrect formatting/spelling issues (Nilesh Javali) [1925465] - scsi: qla2xxx: Replace __qla2x00_marker()'s missing underscores (Nilesh Javali) [1925465] - scsi: Revert "qla2xxx: Make sure that aborted commands are freed" (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix broken #endif placement (Nilesh Javali) [1925465] - scsi: qla2xxx: Simplify if statement (Nilesh Javali) [1925465] - scsi: qla2xxx: Simplify the calculation of variables (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix some memory corruption (Nilesh Javali) [1925465] - scsi: qla2xxx: Remove redundant NULL check (Nilesh Javali) [1925465] - scsi: qla2xxx: Remove unnecessary NULL check (Nilesh Javali) [1925465] - scsi: qla2xxx: Assign boolean values to a bool variable (Nilesh Javali) [1925465] - scsi: qla2xxx: fc_remote_port_chkready() returns a SCSI result value (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix description for parameter ql2xenforce_iocb_limit (Nilesh Javali) [1925465] - scsi: qla2xxx: Update version to 10.02.00.105-k (Nilesh Javali) [1925465] - scsi: qla2xxx: Enable NVMe CONF (BIT_7) when enabling SLER (Nilesh Javali) [1925465] - scsi: qla2xxx: Wait for ABTS response on I/O timeouts for NVMe (Nilesh Javali) [1925465] - scsi: qla2xxx: Move some messages from debug to normal log level (Nilesh Javali) [1925465] - scsi: qla2xxx: Add error counters to debugfs node (Nilesh Javali) [1925465] - scsi: qla2xxx: Implementation to get and manage host, target stats and initiator port (Nilesh Javali) [1925465] - scsi: ibmvfc: Reinit target retries (Steve Best) [1965010] - scsi: ibmvfc: Avoid move login if fast fail is enabled (Steve Best) [1965010] - scsi: ibmvfc: Handle move login failure (Steve Best) [1965010] - scsi: ibmvfc: Fix invalid state machine BUG_ON() (Steve Best) [1965010] - scsi: qedf: Do not put host in qedf_vport_create() unconditionally (Nilesh Javali) [1899384] - scsi: storvsc: Enable scatterlist entry lengths > 4Kbytes (Cathy Avery) [1941664] - scsi: storvsc: Parameterize number hardware queues (Cathy Avery) [1941664] - scsi: storvsc: Return DID_ERROR for invalid commands (Cathy Avery) [1941664] - scsi: storvsc: Validate length of incoming packet in storvsc_on_channel_callback() (Cathy Avery) [1941664] - scsi: storvsc: Resolve data race in storvsc_probe() (Cathy Avery) [1941664] - scsi: storvsc: Fix max_outstanding_req_per_channel for Win8 and newer (Cathy Avery) [1941664] - scsi: storvsc: Use vmbus_requestor to generate transaction IDs for VMBus hardening (Cathy Avery) [1941664] - RDMA/ipoib: Fix warning caused by destroying non-initial netns (Kamal Heib) [1961815] - can: dev: Move device back to init netns on owning netns delete (Kamal Heib) [1961815] - net: ena: remove extra words from comments (Petr Oros) [1955155] - net: ena: fix inaccurate print type (Petr Oros) [1955155] - ena: Update driver to use ethtool_sprintf (Petr Oros) [1955155] - docs: net: ena: Fix ena_start_xmit() function name typo (Petr Oros) [1955155] - ethernet: amazon: ena: A typo fix in the file ena_com.h (Petr Oros) [1955155] - net: ena: Update XDP verdict upon failure (Petr Oros) [1955155] - net: ena: introduce ndo_xdp_xmit() function for XDP_REDIRECT (Petr Oros) [1955155] - net: ena: use xdp_return_frame() to free xdp frames (Petr Oros) [1955155] - net: ena: introduce XDP redirect implementation (Petr Oros) [1955155] - net: ena: use xdp_frame in XDP TX flow (Petr Oros) [1955155] - net: ena: aggregate stats increase into a function (Petr Oros) [1955155] - net: ena: fix coding style nits (Petr Oros) [1955155] - net: ena: store values in their appropriate variables types (Petr Oros) [1955155] - net: ena: add device distinct log prefix to files (Petr Oros) [1955155] - net: ena: use constant value for net_device allocation (Petr Oros) [1955155] - net: ena: set initial DMA width to avoid intel iommu issue (Petr Oros) [1955155] - net: ena: update ena documentation (Petr Oros) [1955155] - net: ena: Fix all static chekers' warnings (Petr Oros) [1955155] - net: ena: Change RSS related macros and variables names (Petr Oros) [1955155] - net: ena: Remove redundant print of placement policy (Petr Oros) [1955155] - net: ena: Capitalize all log strings and improve code readability (Petr Oros) [1955155] - net: ena: Change log message to netif/dev function (Petr Oros) [1955155] - net: ena: Change license into format to SPDX in all files (Petr Oros) [1955155] - net: ena: xdp: add queue counters for xdp actions (Petr Oros) [1955155] - net: ena: ethtool: add stats printing to XDP queues (Petr Oros) [1955155] - net: ena: ethtool: Add new device statistics (Petr Oros) [1955155] - net: ena: ethtool: convert stat_offset to 64 bit resolution (Petr Oros) [1955155] - net: ena: Make missed_tx stat incremental (Petr Oros) [1955155] - net: ena: Prevent reset after device destruction (Petr Oros) [1955155] - treewide: replace '---help---' in Kconfig files with 'help' (Petr Oros) [1955155] - treewide: Add SPDX license identifier - Makefile/Kconfig (Petr Oros) [1955155] - cross-tree: phase out dma_zalloc_coherent() (Petr Oros) [1955155] - net: ena: fix compilation error in xtensa architecture (Petr Oros) [1955155] - docs: networking: reorganize driver documentation again (Petr Oros) [1955155] - docs: networking: device drivers: convert amazon/ena.txt to ReST (Petr Oros) [1955155] - net: ena: documentation: update ena.txt (Petr Oros) [1955155] - net: documentation: build a directory structure for drivers (Petr Oros) [1955155] - xfrm: interface: fix ipv4 pmtu check to honor ip header df (Sabrina Dubroca) [1931942] - vti: fix ipv4 pmtu check to honor ip header df (Sabrina Dubroca) [1931942] - vti6: fix ipv4 pmtu check to honor ip header df (Sabrina Dubroca) [1931942] - net/sched: act_ct: Fix ct template allocation for zone 0 (Marcelo Ricardo Leitner) [1881824] - uio: Fix use-after-free in uio_unregister_device() (Myron Stowe) [1897285] - uio: free uio id after uio file node is freed (Myron Stowe) [1897285] - drivers: uio: remove redundant assignment to variable retval (Myron Stowe) [1897285] - driver: uio: fix possible use-after-free in __uio_register_device (Myron Stowe) [1897285] - driver: uio: fix possible memory leak in __uio_register_device (Myron Stowe) [1897285] - uio: remove redundant check (Myron Stowe) [1897285] - uio: fix potential memory leak in error case (Myron Stowe) [1897285] - uio: dismiss waiters on device unregistration (Myron Stowe) [1897285] - uio: Fix an Oops on load (Myron Stowe) [1897285] - uio: make symbol 'uio_class_registered' static (Myron Stowe) [1897285] - uio: convert to vm_fault_t (Myron Stowe) [1897285] - uio: ensure class is registered before devices (Myron Stowe) [1897285] - uio: potential double frees if __uio_register_device() fails (Myron Stowe) [1897285] - uio: fix possible circular locking dependency (Myron Stowe) [1897285] - uio: fix wrong return value from uio_mmap() (Myron Stowe) [1897285] - uio: add SPDX license tag (Myron Stowe) [1897285] - net: zero-initialize tc skb extension on allocation (Ivan Vecera) [1946986] - net: sched: fix tx action reschedule issue with stopped queue (Ivan Vecera) [1946986] - net: sched: fix tx action rescheduling issue during deactivation (Ivan Vecera) [1946986] - net: sched: fix packet stuck problem for lockless qdisc (Ivan Vecera) [1946986] - net/sched: act_ct: Remove redundant ct get and check (Ivan Vecera) [1946986] - net: sched: tapr: prevent cycle_time == 0 in parse_taprio_schedule (Ivan Vecera) [1946986] - tc-testing: add simple action test to verify batch change cleanup (Ivan Vecera) [1946986] - tc-testing: add simple action test to verify batch add cleanup (Ivan Vecera) [1946986] - tc-testing: add simple action change test (Ivan Vecera) [1946986] - selftests: forwarding: Add tc-police tests for packets per second (Ivan Vecera) [1946986] - selftests: tc-testing: add action police selftest for packets per second (Ivan Vecera) [1946986] - net: sched: Mundane typo fixes (Ivan Vecera) [1946986] - net/sched: cls_flower: use nla_get_be32 for TCA_FLOWER_KEY_FLAGS (Ivan Vecera) [1946986] - net/sched: cls_flower: use ntohs for struct flow_dissector_key_ports (Ivan Vecera) [1946986] - taprio: Handle short intervals and large packets (Ivan Vecera) [1946986] - net/sched: cls_flower: fix only mask bit check in the validate_ct_state (Ivan Vecera) [1946986] - treewide: Remove uninitialized_var() usage (Ivan Vecera) [1946986] - lockdep: Provide dummy forward declaration of *_is_held() helpers (Ivan Vecera) [1946986] - net: sched: Remove broken definitions and un-hide for !LOCKDEP (Ivan Vecera) [1946986] - net: sched: sch_teql: fix null-pointer dereference (Ivan Vecera) [1946986] - net: sched: fix err handler in tcf_action_init() (Ivan Vecera) [1946986] - net: sched: fix action overwrite reference counting (Ivan Vecera) [1946986] - Revert "net: sched: bump refcount for new action in ACT replace mode" (Ivan Vecera) [1946986] - net: cls_api: Fix uninitialised struct field bo->unlocked_driver_cb (Ivan Vecera) [1946986] - net: sched: bump refcount for new action in ACT replace mode (Ivan Vecera) [1946986] - net/sched: act_api: fix miss set post_ct for ovs after do conntrack in act_ct (Ivan Vecera) [1946986] - net/sched: act_police: add support for packet-per-second policing (Ivan Vecera) [1946986] - flow_offload: reject configuration of packet-per-second policing in offload drivers (Ivan Vecera) [1946986] - flow_offload: add support for packet-per-second policing (Ivan Vecera) [1946986] - net: sched: validate stab values (Ivan Vecera) [1946986] - net: add a helper to avoid issues with HW TX timestamping and SO_TXTIME (Ivan Vecera) [1946986] - sched: act_sample: Implement stats_update callback (Ivan Vecera) [1946986] - net: sched: avoid duplicates in classes dump (Ivan Vecera) [1946986] - net/sched: cls_flower: validate ct_state for invalid and reply flags (Ivan Vecera) [1946986] - net: sched: fix police ext initialization (Ivan Vecera) [1946986] - selftests: tc: Add generic mpls matching support for tc-flower (Ivan Vecera) [1946986] - selftests: tc: Add basic mpls_* matching support for tc-flower (Ivan Vecera) [1946986] - selftests: tc-testing: u32: Add tests covering sample option (Ivan Vecera) [1946986] - net: sched: Return the correct errno code (Ivan Vecera) [1946986] - net: sched: replaced invalid qdisc tree flush helper in qdisc_replace (Ivan Vecera) [1946986] - selftests: forwarding: Fix spelling mistake "succeded" -> "succeeded" (Ivan Vecera) [1946986] - taprio: boolean values to a bool variable (Ivan Vecera) [1946986] - net_sched: fix RTNL deadlock again caused by request_module() (Ivan Vecera) [1946986] - cls_flower: call nla_ok() before nla_next() (Ivan Vecera) [1946986] - net/sched: sch_taprio: ensure to reset/destroy all child qdiscs (Ivan Vecera) [1946986] - net/sched: sch_taprio: reset child qdiscs before freeing them (Ivan Vecera) [1946986] - net: sched: incorrect Kconfig dependencies on Netfilter modules (Ivan Vecera) [1946986] - treewide: replace '---help---' in Kconfig files with 'help' (Ivan Vecera) [1946986] - net/sched: cls_u32: simplify the return expression of u32_reoffload_knode() (Ivan Vecera) [1946986] - net: sched: fix spelling mistake in Kconfig "trys" -> "tries" (Ivan Vecera) [1946986] - net/sched: fq_pie: initialize timer earlier in fq_pie_init() (Ivan Vecera) [1946986] - net: sched: remove redundant 'rtnl_held' argument (Ivan Vecera) [1946986] - selftests: tc-testing: enable CONFIG_NET_SCH_RED as a module (Ivan Vecera) [1946986] - net: sched: alias action flags with TCA_ACT_ prefix (Ivan Vecera) [1946986] - treewide: rename nla_strlcpy to nla_strscpy. (Ivan Vecera) [1946986] - Modify return value of nla_strlcpy to match that of strscpy. (Ivan Vecera) [1946986] - Fix unefficient call to memset before memcpu in nla_strlcpy. (Ivan Vecera) [1946986] - net: sched: fix misspellings using misspell-fixer tool (Ivan Vecera) [1946986] - selftest: fix flower terse dump tests (Ivan Vecera) [1946986] - net: sched: implement action-specific terse dump (Ivan Vecera) [1946986] - net: cls_api: remove unneeded local variable in tc_dump_chain() (Ivan Vecera) [1946986] - openvswitch: fix send of uninitialized stack memory in ct limit reply (Antoine Tenart) [1950022] - net/sched: act_api: fix miss set post_ct for ovs after do conntrack in act_ct (Antoine Tenart) [1950022] - xsk: Clear pool even for inactive queues (Jiri Benc) [1882710] - xsk: Fix memory leak for failed bind (Jiri Benc) [1882710] - xsk: Return error code if force_zc is set (Jiri Benc) [1882710] - xsk: Change the tx writeable condition (Jiri Benc) [1882710] - xsk: Replace datagram_poll by sock_poll_wait (Jiri Benc) [1882710] - xdp: Handle MEM_TYPE_XSK_BUFF_POOL correctly in xdp_return_buff() (Jiri Benc) [1882710] - xsk: Fix incorrect netdev reference count (Jiri Benc) [1882710] - xsk: Fix umem cleanup bug at socket destruct (Jiri Benc) [1882710] - netdevsim: set .owner to THIS_MODULE (Jiri Benc) [1882710] - bpf: selftest: Use static globals in tcp_hdr_options and btf_skc_cls_ingress (Jiri Benc) [1882710] - xsk: Fix possible memory leak at socket close (Jiri Benc) [1882710] - samples/bpf: Set rlimit for memlock to infinity in all samples (Jiri Benc) [1882710] - bpf, selftests: Extend test_tc_redirect to use modified bpf_redirect_neigh() (Jiri Benc) [1882710] - bpf: Fix bpf_redirect_neigh helper api to support supplying nexthop (Jiri Benc) [1882710] - bpf, selftest: Fix flaky tcp_hdr_options test when adding addr to lo (Jiri Benc) [1882710] - bpf, selftests: Add redirect_peer selftest (Jiri Benc) [1882710] - bpf, selftests: Make redirect_neigh test more extensible (Jiri Benc) [1882710] - bpf: Add redirect_peer helper (Jiri Benc) [1882710] - bpf: Improve bpf_redirect_neigh helper description (Jiri Benc) [1882710] - bpf: Always return target ifindex in bpf_fib_lookup (Jiri Benc) [1882710] - xsk: Introduce padding between ring pointers (Jiri Benc) [1882710] - xsk: Remove internal DMA headers (Jiri Benc) [1882710] - bpf: selftest: Ensure the child sk inherited all bpf_sock_ops_cb_flags (Jiri Benc) [1882710] - bpf: tcp: Do not limit cb_flags when creating child sk from listen sk (Jiri Benc) [1882710] - bpf, selftests: Add redirect_neigh selftest (Jiri Benc) [1882710] - bpf: Add redirect_neigh helper as redirect drop-in (Jiri Benc) [1882710] - tools, bpf: Synchronise BPF UAPI header with tools (Jiri Benc) [1882710] - bpf: Fix formatting in documentation for BPF helpers (Jiri Benc) [1882710] - xsk: Fix a documentation mistake in xsk_queue.h (Jiri Benc) [1882710] - xsk: Fix possible crash in socket_release when out-of-memory (Jiri Benc) [1882710] - xsk: Fix refcount warning in xp_dma_map (Jiri Benc) [1882710] - tcp: Only init congestion control if not initialized already (Jiri Benc) [1882710] - xsk: Fix null check on error return path (Jiri Benc) [1882710] - xsk: Fix possible segfault at xskmap entry insertion (Jiri Benc) [1882710] - xsk: Fix possible segfault in xsk umem diagnostics (Jiri Benc) [1882710] - xsk: Fix use-after-free in failed shared_umem bind (Jiri Benc) [1882710] - xsk: Documentation for XDP_SHARED_UMEM between queues and netdevs (Jiri Benc) [1882710] - xsk: Add shared umem support between devices (Jiri Benc) [1882710] - xsk: Add shared umem support between queue ids (Jiri Benc) [1882710] - xsk: i40e: ice: ixgbe: mlx5: Test for dma_need_sync earlier for better performance (Jiri Benc) [1882710] - xsk: Rearrange internal structs for better performance (Jiri Benc) [1882710] - xsk: Enable sharing of dma mappings (Jiri Benc) [1882710] - xsk: Move addrs from buffer pool to umem (Jiri Benc) [1882710] - xsk: Move xsk_tx_list and its lock to buffer pool (Jiri Benc) [1882710] - xsk: Move queue_id, dev and need_wakeup to buffer pool (Jiri Benc) [1882710] - xsk: Move fill and completion rings to buffer pool (Jiri Benc) [1882710] - xsk: Create and free buffer pool independently from umem (Jiri Benc) [1882710] - xsk: i40e: ice: ixgbe: mlx5: Rename xsk zero-copy driver interfaces (Jiri Benc) [1882710] - xsk: i40e: ice: ixgbe: mlx5: Pass buffer pool to driver instead of umem (Jiri Benc) [1882710] - tcp: bpf: Optionally store mac header in TCP_SAVE_SYN (Jiri Benc) [1882710] - bpf: selftests: Tcp header options (Jiri Benc) [1882710] - bpf: selftests: Add fastopen_connect to network_helpers (Jiri Benc) [1882710] - bpf: tcp: Allow bpf prog to write and parse TCP header option (Jiri Benc) [1882710] - bpf: sock_ops: Change some members of sock_ops_kern from u32 to u8 (Jiri Benc) [1882710] - bpf: tcp: Add bpf_skops_hdr_opt_len() and bpf_skops_write_hdr_opt() (Jiri Benc) [1882710] - bpf: tcp: Add bpf_skops_parse_hdr() (Jiri Benc) [1882710] - bpf: tcp: Add bpf_skops_established() (Jiri Benc) [1882710] - tcp: Add saw_unknown to struct tcp_options_received (Jiri Benc) [1882710] - tcp: bpf: Add TCP_BPF_RTO_MIN for bpf_setsockopt (Jiri Benc) [1882710] - tcp: bpf: Add TCP_BPF_DELACK_MAX setsockopt (Jiri Benc) [1882710] - tcp: Use a struct to represent a saved_syn (Jiri Benc) [1882710] - tcp: tcp_init_buffer_space can be static (Jiri Benc) [1882710] - tcp: refactor setting the initial congestion window (Jiri Benc) [1882710] - tcp: fix code style in tcp_recvmsg() (Jiri Benc) [1882710] - tcp: duplicate clear of icsk_backoff (Jiri Benc) [1882710] - tcp: move rx_opt & syn_data_acked init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move tp->rack init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move app_limited init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move retrans_out, sacked_out, tlp_high_seq, last_oow_ack_time init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: do not clear urg_data in tcp_create_openreq_child (Jiri Benc) [1882710] - tcp: move snd_cwnd & snd_cwnd_cnt init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move mdev_us init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: do not clear srtt_us in tcp_create_openreq_child (Jiri Benc) [1882710] - tcp: do not clear packets_out in tcp_create_openreq_child() (Jiri Benc) [1882710] - tcp: move icsk_rto init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: do not set snd_ssthresh in tcp_create_openreq_child() (Jiri Benc) [1882710] - net-veth: Add type safety to veth_xdp_to_ptr() and veth_ptr_to_xdp() (Jiri Benc) [1882710] - net-tun: Eliminate two tun/xdp related function calls from vhost-net (Jiri Benc) [1882710] - net-tun: Add type safety to tun_xdp_to_ptr() and tun_ptr_to_xdp() (Jiri Benc) [1882710] - ipv4: Add helpers for neigh lookup for nexthop (Jiri Benc) [1882710] - net: bpf: remove XDP_QUERY_XSK_UMEM enumerator (Jiri Benc) [1882710] - tipc: better validate user input in tipc_nl_retrieve_key() (Xin Long) [1950093] - tipc: simplify the finalize work queue (Xin Long) [1958456] - tipc: wait and exit until all work queues are done (Xin Long) [1958456] - [s390] KVM: s390: diag9c (directed yield) forwarding (Claudio Imbrenda) [1874105] - kvm/svm: Reenable nesting (Dr. David Alan Gilbert) [1790949] - powerpc/papr_scm: Reduce error severity if nvdimm stats inaccessible (Steve Best) [1965193] - Revert "[redhat] redhat/configs: Update CONFIG_ARM64_CNP" (Mark Salter) [1949533] - arm64: kernel: disable CNP on Carmel (Mark Salter) [1949533]- redhat/configs: Enable CONFIG_MICROSOFT_MANA=m (Vitaly Kuznetsov) [1957820] - net: mana: Use int to check the return value of mana_gd_poll_cq() (Vitaly Kuznetsov) [1957820] - net: mana: fix PCI_HYPERV dependency (Vitaly Kuznetsov) [1957820] - net: mana: remove redundant initialization of variable err (Vitaly Kuznetsov) [1957820] - net: mana: Add a driver for Microsoft Azure Network Adapter (MANA) (Vitaly Kuznetsov) [1957820] - hv_netvsc: Make netvsc/VF binding check both MAC and serial number (Vitaly Kuznetsov) [1957820] - net: evaluate net.ipvX.conf.all.ignore_routes_with_linkdown (Balazs Nemeth) [1957223] - net: evaluate net.ipv4.conf.all.proxy_arp_pvlan (Balazs Nemeth) [1957223] - netfilter: nf_log_syslog: Unset bridge logger in pernet exit (Phil Sutter) [1938214] - netfilter: nft_log: perform module load from nf_tables (Phil Sutter) [1938214] - netfilter: nft_dynset: fix timeouts later than 23 days (Phil Sutter) [1938214] - netfilter: nft_compat: make sure xtables destructors have run (Phil Sutter) [1938214] - netfilter: nftables: Add __printf() attribute (Phil Sutter) [1938214] - netfilter: nf_log: add module softdeps (Phil Sutter) [1938214] - netfilter: nf_log_common: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_bridge: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_netdev: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_ipv6: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: move inline nf_ip6_ext_hdr() function to a more appropriate header. (Phil Sutter) [1938214] - ipv6: Use ipv6_authlen for len (Phil Sutter) [1938214] - netfilter: nf_log_arp: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_ipv4: rename to nf_log_syslog (Phil Sutter) [1938214] - net/sched: cls_api: increase max_reclassify_loop (Davide Caratti) [1955136] - vsock/vmci: Remove redundant assignment to err (Stefano Garzarella) [1956861] - vsock/virtio: free queued packets when closing socket (Stefano Garzarella) [1956861] - net: vsock: Fix a typo (Stefano Garzarella) [1956861] - selinux: vsock: Set SID for socket returned by accept() (Stefano Garzarella) [1956861] - af_vsock: Assign the vsock transport considering the vsock address flags (Stefano Garzarella) [1956861] - af_vsock: Set VMADDR_FLAG_TO_HOST flag on the receive path (Stefano Garzarella) [1956861] - vsock_addr: Check for supported flag values (Stefano Garzarella) [1956861] - vm_sockets: Add VMADDR_FLAG_TO_HOST vsock flag (Stefano Garzarella) [1956861] - vm_sockets: Add flags field in the vsock address data structure (Stefano Garzarella) [1956861] - hv_sock: Remove the accept port restriction (Stefano Garzarella) [1956861] - hv_sock: use HV_HYP_PAGE_SIZE for Hyper-V communication (Stefano Garzarella) [1956861] - net: add a helper to avoid issues with HW TX timestamping and SO_TXTIME (Corinna Vinschen) [1958988] - net: ensure mac header is set in virtio_net_hdr_to_skb() (Balazs Nemeth) [1955441] - devlink: Fix dmac_filter trap name, align to its documentation (Petr Oros) [1935701] - devlink: Add DMAC filter generic packet trap (Petr Oros) [1935701] - devlink: Add blackhole_nexthop trap (Petr Oros) [1935701] - stm class: Fix module init return on allocation failure (Jiri Olsa) [1907791] - stm class: ftrace: Use different channel accroding to CPU (Jiri Olsa) [1907791] - stm class: ftrace: Enable supported trace export flag (Jiri Olsa) [1907791] - stm class: ftrace: Change dependency to TRACING (Jiri Olsa) [1907791] - stm class: Replace zero-length array with flexible-array (Jiri Olsa) [1907791] - stm class: sys-t: Fix the use of time_after() (Jiri Olsa) [1907791] - stm class: Lose the protocol driver when dropping its reference (Jiri Olsa) [1907791] - stm class: Fix a double free of stm_source_device (Jiri Olsa) [1907791] - stm class: Fix channel bitmap on 32-bit systems (Jiri Olsa) [1907791] - stm class: Fix channel free in stm output free path (Jiri Olsa) [1907791] - stm class: Prevent division by zero (Jiri Olsa) [1907791] - stm class: Fix an endless loop in channel allocation (Jiri Olsa) [1907791] - stm class: Fix a module refcount leak in policy creation error path (Jiri Olsa) [1907791] - stm class: Use memcat_p() (Jiri Olsa) [1907791] - stm class: heartbeat: Fix whitespace (Jiri Olsa) [1907791] - stm class: p_sys-t: Add support for CLOCKSYNC packets (Jiri Olsa) [1907791] - stm class: Add MIPI SyS-T protocol support (Jiri Olsa) [1907791] - stm class: Switch over to the protocol driver (Jiri Olsa) [1907791] - stm class: Factor out default framing protocol (Jiri Olsa) [1907791] - stm class: Add a helper for writing data packets (Jiri Olsa) [1907791] - stm class: Introduce framing protocol drivers (Jiri Olsa) [1907791] - stm class: Clean up stp_configfs_init (Jiri Olsa) [1907791] - stm class: Clarify configfs root type/operations names (Jiri Olsa) [1907791] - stm class: Rework policy node fallback (Jiri Olsa) [1907791] - lib: Add memcat_p(): paste 2 pointer arrays together (Jiri Olsa) [1907791] - tracing: Add trace_export support for trace_marker (Jiri Olsa) [1907791] - tracing: Add trace_export support for event trace (Jiri Olsa) [1907791] - tracing: Add flag to control different traces (Jiri Olsa) [1907791] - tracing: Make function ‘ftrace_exports’ static (Jiri Olsa) [1907791] - tipc: increment the tmp aead refcnt before attaching it (Xin Long) [1931312] - tipc: skb_linearize the head skb when reassembling msgs (Xin Long) [1912376] - scsi: target: core: Fix warning on realtime kernels (Maurizio Lombardi) [1956416] - scsi: bnx2fc: Fix a typo (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix misnaming of bnx2fc_free_session_resc() (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix typo in bnx2fc_indicate_kcqe() (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix Kconfig warning & CNIC build errors (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix comparison to bool warning (Nilesh Javali) [1921617] - scsi: bnx2fc: Remove unneeded semicolon (Nilesh Javali) [1921617] - scsi: bnx2fc: Make a bunch of symbols static in bnx2fc_fcoe.c (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix spelling mistake "couldnt" -> "couldn't" (Nilesh Javali) [1921617] - scsi: bnx2fc: Demote obvious misuse of kerneldoc to standard comment blocks (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix a couple of bitrotted function documentation headers (Nilesh Javali) [1921617] - scsi: bnx2fc: Repair a range of kerneldoc issues (Nilesh Javali) [1921617] - scsi: bnx2fc: Removal of unused variables (Nilesh Javali) [1921617] - scsi: bnx2fc: Remove unneeded semicolon in bnx2fc_fcoe.c (Nilesh Javali) [1921617] - scsi: bnx2fc: Add missing annotation for bnx2fc_abts_cleanup() (Nilesh Javali) [1921617] - tools/power turbostat: Enable tsc_tweak for Elkhart Lake and Jasper Lake (Puneet Sethi) [1920704] - selinux: Allow context mounts for unpriviliged overlayfs (Miklos Szeredi) [1956486] - md-cluster: fix use-after-free issue when removing rdev (Nigel Croxon) [1956355] - md/bitmap: wait for external bitmap writes to complete during tear down (Nigel Croxon) [1956355] - md: do not return existing mddevs from mddev_find_or_alloc (Nigel Croxon) [1956355] - md: refactor mddev_find_or_alloc (Nigel Croxon) [1956355] - md: factor out a mddev_alloc_unit helper from mddev_find (Nigel Croxon) [1956355] - md: split mddev_find (Nigel Croxon) [1956355] - md: factor out a mddev_find_locked helper from mddev_find (Nigel Croxon) [1956355] - md: md_open returns -EBUSY when entering racing area (Nigel Croxon) [1956355] - md: Fix missing unused status line of /proc/mdstat (Nigel Croxon) [1956355] - md/raid10: improve discard request for far layout (Xiao Ni) [1956355] - md/raid10: improve raid10 discard request (Nigel Croxon) [1956355] - md/raid10: pull the code that wait for blocked dev into one function (Xiao Ni) [1956355] - md/raid10: extend r10bio devs to raid disks (Xiao Ni) [1956355] - md: add md_submit_discard_bio() for submitting discard bio (Nigel Croxon) [1956355] - leds: trigger: fix potential deadlock with libata (Waiman Long) [1963373] - x86/kvm: Unify kvm_pv_guest_cpu_reboot() with kvm_guest_cpu_offline() (Lenny Szubowicz) [1934273] - x86/kvm: Disable all PV features on crash (Lenny Szubowicz) [1934273] - x86/kvm: Disable kvmclock on all CPUs on shutdown (Lenny Szubowicz) [1934273] - x86/kvm: Teardown PV features on boot CPU as well (Lenny Szubowicz) [1934273] - x86/kvm: Fix pr_info() for async PF setup/teardown (Lenny Szubowicz) [1934273] - RDMA/qedr: Fix error return code in qedr_iw_connect() (Manish Chopra) [1914922] - qede: Use 'skb_add_rx_frag()' instead of hand coding it (Manish Chopra) [1914922] - qede: Remove a erroneous ++ in 'qede_rx_build_jumbo()' (Manish Chopra) [1914922] - qede: fix offload for IPIP tunnel packets (Manish Chopra) [1914922] - RDMA/qedr: iWARP invalid(zero) doorbell address fix (Manish Chopra) [1914922] - qed: fix ILT configuration of SRC block (Manish Chopra) [1914922] - qed: fix error return code in qed_iwarp_ll2_start() (Manish Chopra) [1914922] - RDMA/qedr: Fix resource leak in qedr_create_qp (Manish Chopra) [1914922] - qede: make driver reliable on unload after failures (Manish Chopra) [1914922] - net: qed: Remove unnecessary cast (Manish Chopra) [1914922] - nvme: fix NULL derefence in nvme_ctrl_fast_io_fail_tmo_show/store (Gopal Tiwari) [1935135] - nvme: export fast_io_fail_tmo to sysfs (Gopal Tiwari) [1935135] - EDAC: enable CONFIG_EDAC_IGEN6 (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/igen6: ecclog_llist can be static (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/i10nm: Add Intel Sapphire Rapids server support (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC: Add DDR5 new memory type (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/i10nm: Use readl() to access MMIO registers (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/igen6: Add debugfs interface for Intel client SoC EDAC driver (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/igen6: Add EDAC driver for Intel client SoCs using IBECC (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC: Add three new memory types (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC, {skx,i10nm}: Use CPU stepping macro to pass configurations (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/skx: Use the mcmtr register to retrieve close_pg/bank_xor_enable (Aristeu Rozanski) [1837389 1783539 1861479] - x86/cpu: Add a X86_MATCH_INTEL_FAM6_MODEL_STEPPINGS() macro (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC: Add missing MEM_LRDDR4 entry in edac_mem_types[] (Aristeu Rozanski) [1837389 1783539 1861479] - x86: export x86_match_cpu_v2 (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/amd64: Fix PCI component registration (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Use struct cpuinfo_x86.cpu_die_id for AMD NodeId (Aristeu Rozanski) [1918583] - x86/CPU/AMD: Remove amd_get_nb_id() (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Make fam_ops static global (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Allow Reserved types to be overwritten in smca_banks[] (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Do not use rdmsr_safe_on_cpu() in smca_configure() (Aristeu Rozanski) [1918583] - EDAC/amd64: Get rid of the ECC disabled long message (Aristeu Rozanski) [1918583] - EDAC/amd64: Check for memory before fully initializing an instance (Aristeu Rozanski) [1918583] - EDAC/amd64: Use cached data when checking for ECC (Aristeu Rozanski) [1918583] - x86/MCE: Make the number of MCA banks a per-CPU variable (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Don't cache block addresses on SMCA systems (Aristeu Rozanski) [1918583] - x86/MCE: Make mce_banks a per-CPU array (Aristeu Rozanski) [1918583] - x86/MCE: Make struct mce_banks[] static (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Don't report L1 BTB MCA errors on some family 17h models (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Decode MCA_STATUS in bit definition order (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Decode MCA_STATUS[Scrub] bit (Aristeu Rozanski) [1918583] - EDAC, mce_amd: Match error descriptions to latest documentation (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Carve out the MC4_MISC thresholding quirk (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Turn off MC4_MISC thresholding on all family 0x15 models (Aristeu Rozanski) [1918583] - powerpc/64s: Fix unrelocated interrupt trampoline address test (Waiman Long) [1966462] - intel_th: pci: Add Alder Lake CPU support (Jiri Olsa) [1840246] - intel_th: pci: Add Alder Lake-S support (Jiri Olsa) [1840246] - mfd: intel_pmt: Add support for DG1 (David Arcari) [1783144] - mfd: intel_pmt: Fix nuisance messages and handling of disabled capabilities (David Arcari) [1783144] - redhat/configs: Add CONFIG_INTEL_PMT_CRASHLOG (David Arcari) [1783144] - redhat/configs: Add CONFIG_INTEL_PMT_TELEMETRY (David Arcari) [1783144] - redhat/configs: Add CONFIG_MFD_INTEL_PMT (David Arcari) [1783144] - platform/x86: intel_pmt_crashlog: Add dependency on MFD_INTEL_PMT (David Arcari) [1783144] - platform/x86: intel_pmt_telemetry: Add dependency on MFD_INTEL_PMT (David Arcari) [1783144] - platform/x86: intel_pmt: Make INTEL_PMT_CLASS non-user-selectable (David Arcari) [1783144] - platform/x86: intel_pmt_crashlog: Fix incorrect macros (David Arcari) [1783144] - platform/x86: intel_pmt_class: Initial resource to 0 (David Arcari) [1783144] - mfd: Standardise MFD_CELL_* helper names (David Arcari) [1783144] - platform/x86: pmt: Fix a potential Oops on error in probe (David Arcari) [1783144] - platform/x86: Intel PMT Crashlog capability driver (David Arcari) [1783144] - platform/x86: Intel PMT Telemetry capability driver (David Arcari) [1783144] - platform/x86: Intel PMT class driver (David Arcari) [1783144] - mfd: Intel Platform Monitoring Technology support (David Arcari) [1783144] - mfd: mfd-core: Ensure disabled devices are ignored without error (David Arcari) [1783144] - mfd: core: Fix double-free in mfd_remove_devices_fn() (David Arcari) [1783144] - mfd: mfd-core: Add mechanism for removal of a subset of children (David Arcari) [1783144] - mfd: core: Add OF_MFD_CELL_REG() helper (David Arcari) [1783144] - mfd: core: Fix formatting of MFD helpers (David Arcari) [1783144] - mfd: core: Make a best effort attempt to match devices with the correct of_nodes (David Arcari) [1783144] - mfd: mfd-core: Complete kerneldoc header for devm_mfd_add_devices() (David Arcari) [1783144] - mfd: Constify properties in mfd_cell (David Arcari) [1783144] - mfd: mfd-core: Honour Device Tree's request to disable a child-device (David Arcari) [1783144] - mfd: mfd-core: Move pdev->mfd_cell creation back into mfd_add_device() (David Arcari) [1783144] - mfd: mfd-core: Remove usage counting for .{en,dis}able() call-backs (David Arcari) [1783144] - mfd: mfd-core: Protect against NULL call-back function pointer (David Arcari) [1783144] - mfd: mfd-core: Remove mfd_clone_cell() (David Arcari) [1783144] - mfd: Provide MACRO to declare commonly defined MFD cell attributes (David Arcari) [1783144] - mfd: core: Set fwnode for created devices (David Arcari) [1783144] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (David Arcari) [1783144] - mfd: mfd-core: Document mfd_add_devices() (David Arcari) [1783144] - PCI: Add defines for Designated Vendor-Specific Extended Capability (David Arcari) [1783144] - tick/nohz: Update idle_exittime on actual idle exit (Phil Auld) [1962632] - tick/nohz: Remove superflous check for CONFIG_VIRT_CPU_ACCOUNTING_NATIVE (Phil Auld) [1962632] - tick/nohz: Conditionally restart tick on idle exit (Phil Auld) [1962632] - x86, sched: Fix the AMD CPPC maximum performance value on certain AMD Ryzen generations (Phil Auld) [1960687] - pinctrl: devicetree: Avoid taking direct reference to device name string (Aristeu Rozanski) [1922904] {CVE-2020-0427} - redhat: ppc64: enable CONFIG_PPC_RTAS_FILTER (Aristeu Rozanski) [1906444] {CVE-2020-27777} - powerpc/rtas: Fix typo of ibm,open-errinjct in RTAS filter (Aristeu Rozanski) [1906444] {CVE-2020-27777} - powerpc/rtas: Restrict RTAS requests from userspace (Aristeu Rozanski) [1906444] {CVE-2020-27777}- docs: vxlan: add info about device features (Petr Oros) [1941739] - selftests: net: add a test for static UDP tunnel ports (Petr Oros) [1941739] - netdevsim: support the static IANA VXLAN port flag (Petr Oros) [1941739] - selftests: net: add a test for shared UDP tunnel info tables (Petr Oros) [1941739] - netdevsim: shared UDP tunnel port table support (Petr Oros) [1941739] - netdevsim: add warnings on unexpected UDP tunnel port errors (Petr Oros) [1941739] - udp_tunnel: add the ability to share port tables (Petr Oros) [1941739] - docs: networking: convert vxlan.txt to ReST (Petr Oros) [1941739] - net: Treat __napi_schedule_irqoff() as __napi_schedule() on PREEMPT_RT (Ivan Vecera) [1960528] - ethtool: fix incorrect datatype in set_eee ops (Balazs Nemeth) [1956698] - ethtool: fix missing NLM_F_MULTI flag when dumping (Antoine Tenart) [1953847] - y2038: remove CONFIG_64BIT_TIME (Waiman Long) [1965360] - net/mlx4: Fix EEPROM dump support (Alaa Hleihel) [1915305] - net/mlx4_en: update moderation when config reset (Alaa Hleihel) [1915305] - net/mlx4_core: Add missed mlx4_free_cmd_mailbox() (Alaa Hleihel) [1915305] - IB/mlx4: Use port iterator and validation APIs (Alaa Hleihel) [1915305] - net/mlx4: Use effective interrupt affinity (Alaa Hleihel) [1915302 1915305] - net/mlx4: Replace irq_to_desc() abuse (Alaa Hleihel) [1915302 1915305] - net/mlx4: simplify the return expression of mlx4_init_srq_table() (Alaa Hleihel) [1915302 1915305] - RDMA/mlx4: Remove bogus dev_base_lock usage (Alaa Hleihel) [1915302 1915305] - net/mlx4: simplify the return expression of mlx4_init_cq_table() (Alaa Hleihel) [1915302 1915305] - net/mlx4: Remove unused #define MAX_MSIX_P_PORT (Alaa Hleihel) [1915302 1915305] - RDMA/mlx4: Enable querying AH for XRC QP types (Alaa Hleihel) [1915302 1915305] - IB/mlx4: Fix fall-through warnings for Clang (Alaa Hleihel) [1915302 1915305] - net/mlx4_en: Remove unused performance counters (Alaa Hleihel) [1915302 1915305] - net/mlx4: Assign boolean values to a bool variable (Alaa Hleihel) [1915302 1915305] - net/mlx4: Cleanup kernel-doc warnings (Alaa Hleihel) [1915302 1915305] - net/mlx4_core : remove unneeded semicolon (Alaa Hleihel) [1915302 1915305] - net/mlx4_core: Fix init_hca fields offset (Alaa Hleihel) [1915301 1915305] - mlx4: handle non-napi callers to napi_poll (Alaa Hleihel) [1915301 1915305] - mlx4: drivers/net/ethernet: clean up unused assignments (Alaa Hleihel) [1915301 1915305] - mlx4: add pause frame stats (Alaa Hleihel) [1915301 1915305] - mlx4: make sure to always set the port type (Alaa Hleihel) [1915301 1915305] - net/mlx4_en: RX, Add a prefetch command for small L1_CACHE_BYTES (Alaa Hleihel) [1915301 1915305] - cnic: remove redundant assignment to variable ret (Nilesh Javali) [1921619] - net: cnic: fix spelling mistake "reserverd" -> "reserved" (Nilesh Javali) [1921619] - cnic: Explicitly initialize all reference counts to 0. (Nilesh Javali) [1921619] - cfg80211: fix locking in netlink owner interface destruction (Jarod Wilson) [1937053] - brcmfmac: Avoid GFP_ATOMIC when GFP_KERNEL is enough (Jarod Wilson) [1937053] - ath11k: fix warning in ath11k_mhi_config (Jarod Wilson) [1937053] - ath11k: qmi: Fix spelling mistake "requeqst" -> "request" (Jarod Wilson) [1937053] - ath10k: Fix ath10k_wmi_tlv_op_pull_peer_stats_info() unlock without lock (Jarod Wilson) [1937053] - ath10k: Fix a use after free in ath10k_htc_send_bundle (Jarod Wilson) [1937053] - ath9k: Fix error check in ath9k_hw_read_revisions() for PCI devices (Jarod Wilson) [1937053] - mt76: mt7921: reinit wpdma during drv_own if necessary (Jarod Wilson) [1937053] - mt76: move mt76_token_init in mt76_alloc_device (Jarod Wilson) [1937053] - mt76: mt7921: fix a precision vs width bug in printk (Jarod Wilson) [1937053] - mt76: mt7915: fix a precision vs width bug in printk (Jarod Wilson) [1937053] - mt76: mt7615: fix a precision vs width bug in printk (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_mcu_sta_add routine (Jarod Wilson) [1937053] - mt76: mt7921: mt7921_stop should put device in fw_own state (Jarod Wilson) [1937053] - mt76: connac: unschedule mac_work before going to sleep (Jarod Wilson) [1937053] - mt76: mt7663: add awake and doze time accounting (Jarod Wilson) [1937053] - mt76: mt7921: improve doze opportunity (Jarod Wilson) [1937053] - mt76: mt7921: get rid of mcu_reset function pointer (Jarod Wilson) [1937053] - mt76: mt7915: do not read rf value from efuse in flash mode (Jarod Wilson) [1937053] - mt76: move token utilities in mt76 common module (Jarod Wilson) [1937053] - mt76: move token_lock, token and token_count in mt76_dev (Jarod Wilson) [1937053] - mt76: mt7921: fix possible invalid register access (Jarod Wilson) [1937053] - mt76: mt7921: enable deep sleep when the device suspends (Jarod Wilson) [1937053] - mt76: connac: introduce mt76_connac_mcu_set_deep_sleep utility (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_wpdma_reinit_cond utility routine (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_dma_{enable,disable} utilities (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_wpdma_reset utility routine (Jarod Wilson) [1937053] - mt76: mt7921: move mt7921_dma_reset in dma.c (Jarod Wilson) [1937053] - mt76: mt7615: Fix a dereference of pointer sta before it is null checked (Jarod Wilson) [1937053] - mt76: mt7921: enable sw interrupts (Jarod Wilson) [1937053] - mt76: mt7921: add awake and doze time accounting (Jarod Wilson) [1937053] - mt76: remove MT76_STATE_PM in tx path (Jarod Wilson) [1937053] - mt76: connac: use waitqueue for runtime-pm (Jarod Wilson) [1937053] - mt76: connac: do not run mt76_txq_schedule_all directly (Jarod Wilson) [1937053] - mt76: mt7615: rely on pm refcounting in mt7615_led_set_config (Jarod Wilson) [1937053] - mt76: connac: alaways wake the device before scanning (Jarod Wilson) [1937053] - mt76: mt7921: get rid of useless MT76_STATE_PM in mt7921_mac_work (Jarod Wilson) [1937053] - mt76: connac: remove MT76_STATE_PM in mac_tx_free (Jarod Wilson) [1937053] - mt76: connac: check wake refcount in mcu_fw_pmctrl (Jarod Wilson) [1937053] - mt76: connac: unschedule ps_work in mt76_connac_pm_wake (Jarod Wilson) [1937053] - mt76: mt7663: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx/rx napi (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx/rx napi (Jarod Wilson) [1937053] - mt76: dma: add the capability to define a custom rx napi poll routine (Jarod Wilson) [1937053] - mt76: mt7663: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path (Jarod Wilson) [1937053] - mt76: connac: introduce wake counter for fw_pmctrl synchronization (Jarod Wilson) [1937053] - mt76: mt7663: fix a race between mt7615_mcu_drv_pmctrl and mt7615_mcu_fw_pmctrl (Jarod Wilson) [1937053] - mt76: mt7921: fix a race between mt7921_mcu_drv_pmctrl and mt7921_mcu_fw_pmctrl (Jarod Wilson) [1937053] - mt76: mt7921: remove leftover function declaration (Jarod Wilson) [1937053] - mt76: connac: move mcu_update_arp_filter in mt76_connac module (Jarod Wilson) [1937053] - mt76: mt7921: do not use 0 as NULL pointer (Jarod Wilson) [1937053] - mt76: mt7915: directly read per-rate tx power from registers (Jarod Wilson) [1937053] - mt76: mt7915: rework the flow of txpower setting (Jarod Wilson) [1937053] - mt76: mt7915: add support for DT rate power limits (Jarod Wilson) [1937053] - mt76: mt7921: abort uncompleted scan by wifi reset (Jarod Wilson) [1937053] - mt76: mt7921: add wifisys reset support in debugfs (Jarod Wilson) [1937053] - mt76: mt7921: run mt7921_mcu_fw_log_2_host holding mt76 mutex (Jarod Wilson) [1937053] - mt76: improve mcu error logging (Jarod Wilson) [1937053] - mt76: mt7921: move hw configuration in mt7921_register_device (Jarod Wilson) [1937053] - mt76: mt7915: add support for applying pre-calibration data (Jarod Wilson) [1937053] - mt76: mt7615: load ROM patch before checking patch semaphore status (Jarod Wilson) [1937053] - mt76: mt7615: fix entering driver-own state on mt7663 (Jarod Wilson) [1937053] - mt76: mt7615: fix hardware error recovery for mt7663 (Jarod Wilson) [1937053] - mt76: mt7921: add dumping Tx power table (Jarod Wilson) [1937053] - mt76: introduce single-sku support for mt7663/mt7921 (Jarod Wilson) [1937053] - mt76: mt7615: do not use mt7615 single-sku values for mt7663 (Jarod Wilson) [1937053] - mt76: mt7615: implement support for using DT rate power limits (Jarod Wilson) [1937053] - mt76: extend DT rate power limits to support 11ax devices (Jarod Wilson) [1937053] - mt76: add functions for parsing rate power limits from DT (Jarod Wilson) [1937053] - mt76: flush tx status queue on DMA reset (Jarod Wilson) [1937053] - mt76: mt7921: add mt7921_dma_cleanup in mt7921_unregister_device (Jarod Wilson) [1937053] - mt76: mt7615: use ieee80211_free_txskb() in mt7615_tx_token_put() (Jarod Wilson) [1937053] - mt76: mt7615: only free skbs after mt7615_dma_reset() when reset happens (Jarod Wilson) [1937053] - mt76: mt7915: only free skbs after mt7915_dma_reset() when reset happens (Jarod Wilson) [1937053] - mt76: mt7915: fix memleak when mt7915_unregister_device() (Jarod Wilson) [1937053] - mt76: mt7615: fix memleak when mt7615_unregister_device() (Jarod Wilson) [1937053] - mt76: mt7915: fix rate setting of tx descriptor in testmode (Jarod Wilson) [1937053] - mt76: mt7915: rework mt7915_tm_set_tx_len() (Jarod Wilson) [1937053] - mt76: testmode: add support to send larger packet (Jarod Wilson) [1937053] - rtlwifi: implement set_tim by update beacon content (Jarod Wilson) [1937053] - rtw88: refine napi deinit flow (Jarod Wilson) [1937053] - rtw88: Fix potential unrecoverable tx queue stop (Jarod Wilson) [1937053] - rtw88: 8821c: Don't set RX_FLAG_DECRYPTED if packet has no encryption (Jarod Wilson) [1937053] - rtw88: 8822c: debug: allow debugfs to enable/disable TXGAPK (Jarod Wilson) [1937053] - rtw88: 8822c: Add gap-k calibration to improve long range performance (Jarod Wilson) [1937053] - rtw88: 8822c: reorder macro position according to the register number (Jarod Wilson) [1937053] - iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_gen2_enqueue_hcmd() (Jarod Wilson) [1937053] - cfg80211: scan: drop entry from hidden_list on overflow (Jarod Wilson) [1937053] - wireless: fix spelling of A-MSDU in HE capabilities (Jarod Wilson) [1937053] - wireless: align HE capabilities A-MPDU Length Exponent Extension (Jarod Wilson) [1937053] - wireless: align some HE capabilities with the spec (Jarod Wilson) [1937053] - mac80211: drop the connection if firmware crashed while in CSA (Jarod Wilson) [1937053] - nl80211: Add new RSNXE related nl80211 extended features (Jarod Wilson) [1937053] - mac80211: properly drop the connection in case of invalid CSA IE (Jarod Wilson) [1937053] - mac80211: make ieee80211_vif_to_wdev work when the vif isn't in the driver (Jarod Wilson) [1937053] - nl80211/cfg80211: add a flag to negotiate for LMR feedback in NDP ranging (Jarod Wilson) [1937053] - ieee80211: add the values of ranging parameters max LTF total field (Jarod Wilson) [1937053] - mac80211: aes_cmac: check crypto_shash_setkey() return value (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove extraneous indentation on if statement (Jarod Wilson) [1937053] - mac80211: properly process TXQ management frames (Jarod Wilson) [1937053] - cfg80211: constify ieee80211_get_response_rate return (Jarod Wilson) [1937053] - cfg80211: fix a few kernel-doc warnings (Jarod Wilson) [1937053] - cfg80211: fix an htmldoc warning (Jarod Wilson) [1937053] - rtw88: 8822c: add CFO tracking (Jarod Wilson) [1937053] - iwlwifi: pcie: don't enable BHs with IRQs disabled (Jarod Wilson) [1937053] - rtw88: Fix array overrun in rtw_get_tx_power_params() (Jarod Wilson) [1937053] - brcmfmac: Remove duplicate struct declaration (Jarod Wilson) [1937053] - rtw88: update statistics to fw for fine-tuning performance (Jarod Wilson) [1937053] - brcmfmac: A typo fix (Jarod Wilson) [1937053] - rtl8xxxu: Simplify locking of a skb list accesses (Jarod Wilson) [1937053] - mwifiex: Remove unneeded variable: "ret" (Jarod Wilson) [1937053] - rtl8xxxu: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - mwifiex: don't print SSID to logs (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: Use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - rtlwifi: Simplify locking of a skb list accesses (Jarod Wilson) [1937053] - rtlwifi: remove rtl_get_tid_h (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: remove redundant assignment of variable rtlpriv->btcoexist.reg_bt_sco (Jarod Wilson) [1937053] - rtlwifi: remove redundant assignment to variable err (Jarod Wilson) [1937053] - rtlwifi: Few mundane typo fixes (Jarod Wilson) [1937053] - rtlwifi: 8821ae: upgrade PHY and RF parameters (Jarod Wilson) [1937053] - iwlwifi: dbg: disable ini debug in 9000 family and below (Jarod Wilson) [1937053] - iwlwifi: pcie: Change ma product string name (Jarod Wilson) [1937053] - iwlwifi: fw: print out trigger delay when collecting data (Jarod Wilson) [1937053] - iwlwifi: trans/pcie: defer transport initialisation (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 63 for AX devices (Jarod Wilson) [1937053] - iwlwifi: mvm: don't WARN if we can't remove a time event (Jarod Wilson) [1937053] - iwlwifi: mvm: don't disconnect immediately if we don't hear beacons after CSA (Jarod Wilson) [1937053] - iwlwifi: rs-fw: don't support stbc for HE 160 (Jarod Wilson) [1937053] - iwlwifi: warn on SKB free w/o op-mode (Jarod Wilson) [1937053] - iwlwifi: mvm: add support for version 3 of LARI_CONFIG_CHANGE command. (Jarod Wilson) [1937053] - iwlwifi: pcie: add ISR debug info for msix debug (Jarod Wilson) [1937053] - iwlwifi: pcie: merge napi_poll_msix functions (Jarod Wilson) [1937053] - iwlwifi: mvm: don't lock mutex in RCU critical section (Jarod Wilson) [1937053] - iwlwifi: mvm: remove PS from lower rates. (Jarod Wilson) [1937053] - iwlwifi: mvm: umac error table mismatch (Jarod Wilson) [1937053] - iwlwifi: queue: avoid memory leak in reset flow (Jarod Wilson) [1937053] - iwlwifi: don't warn if we can't wait for empty tx queues (Jarod Wilson) [1937053] - iwlwifi: remove remaining software checksum code (Jarod Wilson) [1937053] - iwlwifi: remove TCM events (Jarod Wilson) [1937053] - iwlwifi: mvm: Use IWL_INFO in fw_reset_handshake() (Jarod Wilson) [1937053] - iwlwifi: mvm: refactor ACPI DSM evaluation function (Jarod Wilson) [1937053] - iwlwifi: mvm: support BIOS enable/disable for 11ax in Ukraine (Jarod Wilson) [1937053] - iwlwifi: move iwl_configure_rxq to be used by other op_modes (Jarod Wilson) [1937053] - iwlwifi: add new so-gf device (Jarod Wilson) [1937053] - iwlwifi: mvm: enable PPAG in China (Jarod Wilson) [1937053] - iwlwifi: mvm: Add support for 6GHz passive scan (Jarod Wilson) [1937053] - iwlwifi: add ax201 killer device (Jarod Wilson) [1937053] - iwlwifi: mvm: when associated with PMF, use protected NDP ranging negotiation (Jarod Wilson) [1937053] - iwlwifi: mvm: clean up queue sync implementation (Jarod Wilson) [1937053] - iwlwifi: mvm: write queue_sync_state only for sync (Jarod Wilson) [1937053] - iwlwifi: mvm: responder: support responder config command version 8 (Jarod Wilson) [1937053] - iwlwifi: mvm: support range request command version 12 (Jarod Wilson) [1937053] - iwlwifi: pcie: make cfg vs. trans_cfg more robust (Jarod Wilson) [1937053] - iwlwifi: pcie: clear only FH bits handle in the interrupt (Jarod Wilson) [1937053] - iwlwifi: add 160Mhz to killer 1550 name (Jarod Wilson) [1937053] - iwlwifi: change name to AX 211 and 411 family (Jarod Wilson) [1937053] - iwlwifi: change step in so-gf struct (Jarod Wilson) [1937053] - iwlwifi: pcie: Add support for Bz Family (Jarod Wilson) [1937053] - iwlwifi: mvm: don't allow CSA if we haven't been fully associated (Jarod Wilson) [1937053] - iwlwifi: pcie: normally grab NIC access for inflight-hcmd (Jarod Wilson) [1937053] - iwlwifi: pcie: avoid unnecessarily taking spinlock (Jarod Wilson) [1937053] - iwlwifi: mvm: enable TX on new CSA channel before disconnecting (Jarod Wilson) [1937053] - mt76: mt7921: add rcu section in mt7921_mcu_tx_rate_report (Jarod Wilson) [1937053] - mt76: mt7921: introduce MCU_EVENT_LP_INFO event parsing (Jarod Wilson) [1937053] - mt76: mt7615: always add rx header translation tlv when adding stations (Jarod Wilson) [1937053] - mt76: mt7615: add missing SPDX tag in mmio.c (Jarod Wilson) [1937053] - mt76: mt7915: add mmio.c (Jarod Wilson) [1937053] - mt76: report Rx timestamp (Jarod Wilson) [1937053] - mt76: mt7921: remove 80+80 MHz support capabilities (Jarod Wilson) [1937053] - mt76: fix potential DMA mapping leak (Jarod Wilson) [1937053] - mt76: mt7921: reduce the data latency during hw scan (Jarod Wilson) [1937053] - mt76: mt7921: fix the insmod hangs (Jarod Wilson) [1937053] - mt76: mt7921: fix kernel crash when the firmware fails to download (Jarod Wilson) [1937053] - mt76: mt7921: fix the dwell time control (Jarod Wilson) [1937053] - mt76: mt7921: fix inappropriate WoW setup with the missing ARP informaiton (Jarod Wilson) [1937053] - mt76: mt7921: introduce MT_WFDMA_DUMMY_CR definition (Jarod Wilson) [1937053] - mt76: mt7915: add wifi subsystem reset (Jarod Wilson) [1937053] - mt76: mt7915: fix mt7915_mcu_add_beacon (Jarod Wilson) [1937053] - mt76: mt7615: fix .add_beacon_offload() (Jarod Wilson) [1937053] - mt76: mt7921: rework mt7921_mcu_debug_msg_event routine (Jarod Wilson) [1937053] - mt76: mt7921: always wake the device in mt7921_remove_interface (Jarod Wilson) [1937053] - mt76: mt7921: fix key set/delete issue (Jarod Wilson) [1937053] - mt76: mt7915: fix txpower init for TSSI off chips (Jarod Wilson) [1937053] - mt76: mt7915: limit firmware log message printk to buffer length (Jarod Wilson) [1937053] - mt76: mt7615: limit firmware log message printk to buffer length (Jarod Wilson) [1937053] - mt76: mt7615: fix chip reset on MT7622 and MT7663e (Jarod Wilson) [1937053] - mt76: mt7915: cleanup mcu tx queue in mt7915_dma_reset() (Jarod Wilson) [1937053] - mt76: mt7915: keep mcu_add_bss_info enabled till interface removal (Jarod Wilson) [1937053] - mt76: mt7615: keep mcu_add_bss_info enabled till interface removal (Jarod Wilson) [1937053] - mt76: mt7622: trigger hif interrupt for system reset (Jarod Wilson) [1937053] - mt76: mt7615: cleanup mcu tx queue in mt7615_dma_reset() (Jarod Wilson) [1937053] - mt76: mt7615: only enable DFS test knobs for mt7615 (Jarod Wilson) [1937053] - mt76: mt7921: properly configure rcpi adding a sta to the fw (Jarod Wilson) [1937053] - mt76: connac: introduce mt76_sta_cmd_info data structure (Jarod Wilson) [1937053] - mt76: mt7921: get rid of mt7921_mac_wtbl_lmac_addr (Jarod Wilson) [1937053] - mt76: mt7915: refresh repeater entry MAC address when setting BSSID (Jarod Wilson) [1937053] - mt76: mt7915: fix key set/delete issue (Jarod Wilson) [1937053] - mt76: mt7921: remove duplicated macros in mcu.h (Jarod Wilson) [1937053] - mt76: mt7921: remove redundant check on type (Jarod Wilson) [1937053] - mt76: mt7921: remove leftovers from dbdc configuration (Jarod Wilson) [1937053] - mt76: mt7921: add wifi reset support (Jarod Wilson) [1937053] - mt76: dma: export mt76_dma_rx_cleanup routine (Jarod Wilson) [1937053] - mt76: dma: introduce mt76_dma_queue_reset routine (Jarod Wilson) [1937053] - mt76: mt7921: introduce __mt7921_start utility routine (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_run_firmware utility routine. (Jarod Wilson) [1937053] - mt76: introduce mcu_reset function pointer in mt76_mcu_ops structure (Jarod Wilson) [1937053] - mt76: mt7921: reduce mcu timeouts for suspend, offload and hif_ctrl msg (Jarod Wilson) [1937053] - mt76: mt7915: fix possible deadlock while mt7915_register_ext_phy() (Jarod Wilson) [1937053] - mt76: mt7615: add missing capabilities for DBDC (Jarod Wilson) [1937053] - mt76: mt7663s: fix the possible device hang in high traffic (Jarod Wilson) [1937053] - mt76: mt7663s: make all of packets 4-bytes aligned in sdio tx aggregation (Jarod Wilson) [1937053] - mt76: mt7663: fix when beacon filter is being applied (Jarod Wilson) [1937053] - mt76: mt7615: check mcu returned values in mt7615_ops (Jarod Wilson) [1937053] - mt76: mt7915: check mcu returned values in mt7915_ops (Jarod Wilson) [1937053] - mt76: mt7915: fix txrate reporting (Jarod Wilson) [1937053] - mt76: mt7915: fix rxrate reporting (Jarod Wilson) [1937053] - mt76: mt76x0u: Add support for TP-Link T2UHP(UN) v1 (Jarod Wilson) [1937053] - mt76: mt7915: fix PHY mode for DBDC (Jarod Wilson) [1937053] - mt76: mt7915: stop ext_phy queue when mac reset happens (Jarod Wilson) [1937053] - mt76: mt7915: fix CSA notification for DBDC (Jarod Wilson) [1937053] - mt76: mt7615: stop ext_phy queue when mac reset happens (Jarod Wilson) [1937053] - mt76: mt7615: fix CSA notification for DBDC (Jarod Wilson) [1937053] - mt76: mt7915: add missing capabilities for DBDC (Jarod Wilson) [1937053] - mt76: mt7921: check mcu returned values in mt7921_start (Jarod Wilson) [1937053] - mt76: mt7921: fix the base of the dynamic remap (Jarod Wilson) [1937053] - mt76: mt7921: fix the base of PCIe interrupt (Jarod Wilson) [1937053] - mt76: mt7921: get rid of mt7921_sta_rc_update routine (Jarod Wilson) [1937053] - mt76: check return value of mt76_txq_send_burst in mt76_txq_schedule_list (Jarod Wilson) [1937053] - mt76: connac: fix kernel warning adding monitor interface (Jarod Wilson) [1937053] - mt76: mt7915: fix mib stats counter reporting to mac80211 (Jarod Wilson) [1937053] - mt76: mt7615: fix mib stats counter reporting to mac80211 (Jarod Wilson) [1937053] - mt76: mt7615: remove hdr->fw_ver check (Jarod Wilson) [1937053] - mt76: mt7615: fix TSF configuration (Jarod Wilson) [1937053] - mt76: mt7921: fix stats register definitions (Jarod Wilson) [1937053] - mt76: mt7921: remove unneeded semicolon (Jarod Wilson) [1937053] - mt76: mt7915: fix aggr len debugfs node (Jarod Wilson) [1937053] - mt76: mt7921: fix aggr length histogram (Jarod Wilson) [1937053] - mt76: mt7615: fix memory leak in mt7615_coredump_work (Jarod Wilson) [1937053] - mt76: mt7615: add support for rx decapsulation offload (Jarod Wilson) [1937053] - mt76: mt7615: add rx checksum offload support (Jarod Wilson) [1937053] - mt76: mt7615: enable hw rx-amsdu de-aggregation (Jarod Wilson) [1937053] - mt76: connac: update sched_scan cmd usage (Jarod Wilson) [1937053] - mt76: mt7921: add flush operation (Jarod Wilson) [1937053] - mt76: mt7921: fixup rx bitrate statistics (Jarod Wilson) [1937053] - mt76: connac: fix up the setting for ht40 mode in mt76_connac_mcu_uni_add_bss (Jarod Wilson) [1937053] - mt76: mt7921: switch to new api for hardware beacon filter (Jarod Wilson) [1937053] - mt76: mt7921: fix memory leak in mt7921_coredump_work (Jarod Wilson) [1937053] - mt76: mt7921: fix suspend/resume sequence (Jarod Wilson) [1937053] - mt76: use PCI_VENDOR_ID_MEDIATEK to avoid open coded (Jarod Wilson) [1937053] - mt76: mt7915: always check return value from mt7915_mcu_alloc_wtbl_req (Jarod Wilson) [1937053] - mt76: connac: always check return value from mt76_connac_mcu_alloc_wtbl_req (Jarod Wilson) [1937053] - mt76: mt76x0: disable GTK offloading (Jarod Wilson) [1937053] - mt76: always use WTBL_MAX_SIZE for tlv allocation (Jarod Wilson) [1937053] - mt76: mt7921: removed unused definitions in mcu.h (Jarod Wilson) [1937053] - mt76: mt7921: remove unnecessary variable (Jarod Wilson) [1937053] - mt76: mt7921: enable random mac addr during scanning (Jarod Wilson) [1937053] - mt76: mt7615: support loading EEPROM for MT7613BE (Jarod Wilson) [1937053] - mt76: mt7915: fix tx skb dma unmap (Jarod Wilson) [1937053] - mt76: mt7615: fix tx skb dma unmap (Jarod Wilson) [1937053] - mt76: mt7615: fix key set/delete issues (Jarod Wilson) [1937053] - mt76: mt7915: add support for rx decapsulation offload (Jarod Wilson) [1937053] - mt76: mt7915: add rx checksum offload support (Jarod Wilson) [1937053] - mt76: mt7915: enable hw rx-amsdu de-aggregation (Jarod Wilson) [1937053] - mt76: add support for 802.3 rx frames (Jarod Wilson) [1937053] - cfg80211: Remove wrong RNR IE validation check (Jarod Wilson) [1937053] - mac80211: bail out if cipher schemes are invalid (Jarod Wilson) [1937053] - mac80211: clear the beacon's CRC after channel switch (Jarod Wilson) [1937053] - mac80211: Set priority and queue mapping for injected frames (Jarod Wilson) [1937053] - mac80211: Allow concurrent monitor iface and ethernet rx decap (Jarod Wilson) [1937053] - nl80211: Add interface to indicate TDLS peer's HE capability (Jarod Wilson) [1937053] - cfg80211: allow specifying a reason for hw_rfkill (Jarod Wilson) [1937053] - nl80211: better document CMD_ROAM behavior (Jarod Wilson) [1937053] - mac80211: set sk_pacing_shift for 802.3 txpath (Jarod Wilson) [1937053] - mac80211: don't apply flow control on management frames (Jarod Wilson) [1937053] - nl80211: Add missing line in nl80211_fils_discovery_policy (Jarod Wilson) [1937053] - mac80211: remove redundant assignment of variable result (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove unused variable 'mg' in minstrel_ht_next_jump_rate() (Jarod Wilson) [1937053] - cfg80211: regulatory: use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - mac80211_hwsim: use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - rfkill: use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - mt7601u: enable TDLS support (Jarod Wilson) [1937053] - mt7601u: fix always true expression (Jarod Wilson) [1937053] - rtw88: Fix an error code in rtw_debugfs_set_rsvd_page() (Jarod Wilson) [1937053] - rtw88: coex: fix A2DP stutters while WL busy + WL scan (Jarod Wilson) [1937053] - rtw88: 8822c: add LC calibration for RTL8822C (Jarod Wilson) [1937053] - rtw88: 8822c: update tx power limit table to RF v40.1 (Jarod Wilson) [1937053] - rtw88: fix DIG min setting (Jarod Wilson) [1937053] - rtw88: add flush hci support (Jarod Wilson) [1937053] - rtw88: 8822c: support FW crash dump when FW crash (Jarod Wilson) [1937053] - rtw88: remove unnecessary variable (Jarod Wilson) [1937053] - rtw88: coex: add power off setting (Jarod Wilson) [1937053] - ath11k: Add support for STA to handle beacon miss (Jarod Wilson) [1937053] - ath11k: Update signal filled flag during sta_statistics drv op (Jarod Wilson) [1937053] - ath10k: skip the wait for completion to recovery in shutdown path (Jarod Wilson) [1937053] - ath11k: fix thermal temperature read (Jarod Wilson) [1937053] - ath11k: fix potential wmi_mgmt_tx_queue race condition (Jarod Wilson) [1937053] - ath11k: qmi: cosmetic changes to error messages (Jarod Wilson) [1937053] - ath11k: qmi: add more debug messages (Jarod Wilson) [1937053] - Revert "ath9k: fix ath_tx_process_buffer() potential null ptr dereference" (Jarod Wilson) [1937053] - ath11k: print hardware name and version during initialisation (Jarod Wilson) [1937053] - ath11k: Enable radar detection for 160MHz secondary segment (Jarod Wilson) [1937053] - ath11k: Fix sounding dimension config in HE cap (Jarod Wilson) [1937053] - ath11k: add qcn9074 pci device support (Jarod Wilson) [1937053] - ath11k: add extended interrupt support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add CE interrupt support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add data path support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add hal support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add static window support for register access (Jarod Wilson) [1937053] - ath11k: Add qcn9074 mhi controller config (Jarod Wilson) [1937053] - ath11k: Update memory segment count for qcn9074 (Jarod Wilson) [1937053] - ath11k: qmi: increase the number of fw segments (Jarod Wilson) [1937053] - ath11k: Move qmi service_ins_id to hw_params (Jarod Wilson) [1937053] - ath11k: Refactor ath11k_msi_config (Jarod Wilson) [1937053] - ath11k: debugfs: Fix spelling mistake "Opportunies" -> "Opportunities" (Jarod Wilson) [1937053] - ath9k: fix ath_tx_process_buffer() potential null ptr dereference (Jarod Wilson) [1937053] - nl80211: fix beacon head validation (Jarod Wilson) [1937053] - nl80211: fix potential leak of ACL params (Jarod Wilson) [1937053] - cfg80211: check S1G beacon compat element length (Jarod Wilson) [1937053] - cfg80211: remove WARN_ON() in cfg80211_sme_connect (Jarod Wilson) [1937053] - mac80211: fix time-is-after bug in mlme (Jarod Wilson) [1937053] - mac80211: fix TXQ AC confusion (Jarod Wilson) [1937053] - rfkill: revert back to old userspace API by default (Jarod Wilson) [1937053] - mac80211: clear sta->fast_rx when STA removed from 4-addr VLAN (Jarod Wilson) [1937053] - iwlwifi: mvm: fix beacon protection checks (Jarod Wilson) [1937053] - iwlwifi: mvm: rfi: don't lock mvm->mutex when sending config command (Jarod Wilson) [1937053] - iwlwifi: pcie: add support for So-F devices (Jarod Wilson) [1937053] - iwlwifi: fw: fix notification wait locking (Jarod Wilson) [1937053] - iwlwifi: add support for Qu with AX201 device (Jarod Wilson) [1937053] - iwlwifi: pcie: properly set LTR workarounds on 22000 devices (Jarod Wilson) [1937053] - iwlwifi: fix 11ax disabled bit in the regulatory capability flags (Jarod Wilson) [1937053] - brcmfmac: p2p: Fix recently introduced deadlock issue (Jarod Wilson) [1937053] - mt76: mt7921: fix airtime reporting (Jarod Wilson) [1937053] - iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_enqueue_hcmd() (Jarod Wilson) [1937053] - mt76: mt7615: remove redundant dev_err call in mt7622_wmac_probe() (Jarod Wilson) [1937053] - mt76: Convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1937053] - reg.c: Fix a spello (Jarod Wilson) [1937053] - mac80211: cfg.c: A typo fix (Jarod Wilson) [1937053] - wireless: remove never implemented MODULE_SUPPORTED_DEVICE (Jarod Wilson) [1937053] - wireless/nl80211: fix wdev_id may be used uninitialized (Jarod Wilson) [1937053] - nl80211: fix locking for wireless device netns change (Jarod Wilson) [1937053] - iwlwifi: don't call netif_napi_add() with rxq->lock held (was Re: Lockdep warning in iwl_pcie_rx_handle()) (Jarod Wilson) [1937053] - iwlwifi: fix ARCH=i386 compilation warnings (Jarod Wilson) [1937053] - iwlwifi: mvm: add terminate entry for dmi_system_id tables (Jarod Wilson) [1937053] - mt76: mt7915: fix unused 'mode' variable (Jarod Wilson) [1937053] - mt76: dma: do not report truncated frames to mac80211 (Jarod Wilson) [1937053] - mt76: mt7921: remove incorrect error handling (Jarod Wilson) [1937053] - iwlwifi: pcie: fix iwl_so_trans_cfg link error when CONFIG_IWLMVM is disabled (Jarod Wilson) [1937053] - ath11k: fix AP mode for QCA6390 (Jarod Wilson) [1937053] - ath11k: qmi: use pad to format dma_addr_t (Jarod Wilson) [1937053] - iwlwifi: avoid crash on unsupported debug collection (Jarod Wilson) [1937053] - mt76: mt7915: only modify tx buffer list after allocating tx token id (Jarod Wilson) [1937053] - mt76: fix tx skb error handling in mt76_dma_tx_queue_skb (Jarod Wilson) [1937053] - ath9k: fix transmitting to stations in dynamic SMPS mode (Jarod Wilson) [1937053] - redhat: Enable ath11k PCI device support (Jarod Wilson) [1937053] - soc: qcom: Do not depend on ARCH_QCOM for QMI helpers (Jarod Wilson) [1937053] - net: qrtr: Do not depend on ARCH_QCOM (Jarod Wilson) [1937053] - b43: N-PHY: Fix the update of coef for the PHY revision >= 3case (Jarod Wilson) [1937053] - nl80211: add documentation for HT/VHT/HE disable attributes (Jarod Wilson) [1937053] - cfg80211/mac80211: Support disabling HE mode (Jarod Wilson) [1937053] - mac80211: add STBC encoding to ieee80211_parse_tx_radiotap (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove sample rate switching code for constrained devices (Jarod Wilson) [1937053] - mac80211: minstrel_ht: show sampling rates in debugfs (Jarod Wilson) [1937053] - mac80211: minstrel_ht: significantly redesign the rate probing strategy (Jarod Wilson) [1937053] - mac80211: minstrel_ht: reduce the need to sample slower rates (Jarod Wilson) [1937053] - mac80211: minstrel_ht: update total packets counter in tx status path (Jarod Wilson) [1937053] - mac80211: minstrel_ht: use bitfields to encode rate indexes (Jarod Wilson) [1937053] - cfg80211: initialize reg_rule in __freq_reg_info() (Jarod Wilson) [1937053] - mac80211: fix potential overflow when multiplying to u32 integers (Jarod Wilson) [1937053] - mac80211: enable QoS support for nl80211 ctrl port (Jarod Wilson) [1937053] - cfg80211: remove unused callback (Jarod Wilson) [1937053] - rtw88: 8822c: update RF_B (2/2) parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: 8822c: update RF_B (1/2) parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: 8822c: update RF_A parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: 8822c: update MAC/BB parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: replace tx tasklet with work queue (Jarod Wilson) [1937053] - rtw88: add napi support (Jarod Wilson) [1937053] - rtw88: add rts condition (Jarod Wilson) [1937053] - rtw88: add dynamic rrsr configuration (Jarod Wilson) [1937053] - iwlwifi: remove incorrect comment in pnvm (Jarod Wilson) [1937053] - ath11k: qmi: add debug message for allocated memory segment addresses and sizes (Jarod Wilson) [1937053] - ath11k: pci: remove experimental warning (Jarod Wilson) [1937053] - ath10k: hold RCU lock when calling ieee80211_find_sta_by_ifaddr() (Jarod Wilson) [1937053] - ath10k: change ath10k_offchan_tx_work() peer present msg to a warn (Jarod Wilson) [1937053] - ath9k: fix data bus crash when setting nf_override via debugfs (Jarod Wilson) [1937053] - ath11k: add support to configure spatial reuse parameter set (Jarod Wilson) [1937053] - ath10k: restore tx sk_buff of htt header for SDIO (Jarod Wilson) [1937053] - brcmsmac: Fix the spelling configation to configuration in the file d11.h (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 62 for AX devices (Jarod Wilson) [1937053] - iwlwifi: pnvm: implement reading PNVM from UEFI (Jarod Wilson) [1937053] - iwlwifi: pnvm: move file loading code to a separate function (Jarod Wilson) [1937053] - iwlwifi: pnvm: increment the pointer before checking the TLV (Jarod Wilson) [1937053] - iwlwifi: pcie: define FW_RESET_TIMEOUT for clarity (Jarod Wilson) [1937053] - iwlwifi: pnvm: set the PNVM again if it was already loaded (Jarod Wilson) [1937053] - iwlwifi: mvm: global PM mode does not reset after FW crash (Jarod Wilson) [1937053] - iwlwifi: mvm: reduce the print severity of failing getting NIC temp (Jarod Wilson) [1937053] - iwlwifi: mvm: get NVM later in the mvm_start flow (Jarod Wilson) [1937053] - iwlmvm: set properly NIC_NOT_ACK_ENABLED flag (Jarod Wilson) [1937053] - iwlwifi: remove max_ht_ampdu_exponent config parameter (Jarod Wilson) [1937053] - iwlwifi: remove max_vht_ampdu_exponent config parameter (Jarod Wilson) [1937053] - iwlwifi: mvm: Check ret code for iwl_mvm_load_nvm_to_nic (Jarod Wilson) [1937053] - iwlwifi: mvm: don't check if CSA event is running before removing (Jarod Wilson) [1937053] - iwlwifi: mvm: Support SCAN_CFG_CMD version 5 (Jarod Wilson) [1937053] - iwlwifi: mvm: isolate the get nvm flow (Jarod Wilson) [1937053] - iwlwifi: mvm: simplify iwl_mvm_dbgfs_register (Jarod Wilson) [1937053] - iwlwifi: mvm: register to mac80211 last (Jarod Wilson) [1937053] - iwlwifi: acpi: add support for DSM RFI (Jarod Wilson) [1937053] - iwlwifi: mvm: add RFI-M support (Jarod Wilson) [1937053] - iwlwifi:mvm: Add support for version 2 of the LARI_CONFIG_CHANGE command. (Jarod Wilson) [1937053] - iwlwifi: pcie: don't crash when rx queues aren't allocated in interrupt (Jarod Wilson) [1937053] - iwlwifi: correction of group-id once sending REPLY_ERROR (Jarod Wilson) [1937053] - iwlwifi: pcie: add AX201 and AX211 radio modules for Ma devices (Jarod Wilson) [1937053] - iwlwifi: pcie: add CDB bit to the device configuration parsing (Jarod Wilson) [1937053] - iwlwifi: acpi: don't return valid pointer as an ERR_PTR (Jarod Wilson) [1937053] - iwlwifi: queue: add fake tx time point (Jarod Wilson) [1937053] - iwlwifi: remove flags argument for nic_access (Jarod Wilson) [1937053] - iwlwifi: declare support for triggered SU/MU beamforming feedback (Jarod Wilson) [1937053] - iwlwifi: dbg: add op_mode callback for collecting debug data. (Jarod Wilson) [1937053] - iwlwifi: api: clean up some documentation/bits (Jarod Wilson) [1937053] - iwlwifi: dbg: remove unsupported regions (Jarod Wilson) [1937053] - iwlwifi: pcie: Change Ma device ID (Jarod Wilson) [1937053] - iwlwifi: when HW has rate offload don't look at control field (Jarod Wilson) [1937053] - iwlwifi: pcie: NULLify pointers after free (Jarod Wilson) [1937053] - iwlwifi: mvm: assign SAR table revision to the command later (Jarod Wilson) [1937053] - iwlwifi: mvm: remove useless iwl_mvm_resume_d3() function (Jarod Wilson) [1937053] - iwlwifi: mvm: enhance a print in CSA flows (Jarod Wilson) [1937053] - iwlwifi: mvm: send stored PPAG command instead of local (Jarod Wilson) [1937053] - iwlwifi: mvm: store PPAG enabled/disabled flag properly (Jarod Wilson) [1937053] - iwlwifi: mvm: fix the type we use in the PPAG table validity checks (Jarod Wilson) [1937053] - iwlwifi: acpi: fix PPAG table sizes (Jarod Wilson) [1937053] - iwlwifi: pcie: don't disable interrupts for reg_lock (Jarod Wilson) [1937053] - iwlwifi: pcie: add a few missing entries for So with Hr (Jarod Wilson) [1937053] - iwlwifi: dbg: Mark ucode tlv data as const (Jarod Wilson) [1937053] - iwlwifi: add new cards for So and Qu family (Jarod Wilson) [1937053] - ath11k: fix a locking bug in ath11k_mac_op_start() (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: phy: Simplify bool comparison (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: Simplify bool comparison (Jarod Wilson) [1937053] - brcmfmac: add support for CQM RSSI notifications (Jarod Wilson) [1937053] - ath10k: Add new debug level for sta related logs (Jarod Wilson) [1937053] - ath11k: Update tx descriptor search index properly (Jarod Wilson) [1937053] - ath10k: Fix lockdep assertion warning in ath10k_sta_statistics (Jarod Wilson) [1937053] - ath10k: Fix suspicious RCU usage warning in ath10k_wmi_tlv_parse_peer_stats_info() (Jarod Wilson) [1937053] - wl3501: fix alignment constraints (Jarod Wilson) [1937053] - rt2800usb: add Sweex LW163V2 id's (Jarod Wilson) [1937053] - rt2x00: remove duplicate word and fix typo in comment (Jarod Wilson) [1937053] - mwifiex: Report connected BSS with cfg80211_connect_bss() (Jarod Wilson) [1937053] - rtl8xxxu: remove unused assignment value (Jarod Wilson) [1937053] - atmel: at76c50x: use DEFINE_MUTEX() for mutex lock (Jarod Wilson) [1937053] - brcmsmac: fix alignment constraints (Jarod Wilson) [1937053] - brcmfmac: Add DMI nvram filename quirk for Voyo winpad A15 tablet (Jarod Wilson) [1937053] - brcmfmac: Add DMI nvram filename quirk for Predia Basic tablet (Jarod Wilson) [1937053] - rtw88: 8821c: support RFE type2 wifi NIC (Jarod Wilson) [1937053] - rtw88: 8821c: Correct CCK RSSI (Jarod Wilson) [1937053] - rtw88: coex: 8821c: correct antenna switch function (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: remove redundant initialization of variable rtstatus (Jarod Wilson) [1937053] - iwlwifi: pcie: Disable softirqs during Rx queue init (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 61 for AX devices (Jarod Wilson) [1937053] - iwlwifi: mvm: add Asus to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: add Microsoft to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: add Samsung to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: add HP to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: implement approved list for the PPAG feature (Jarod Wilson) [1937053] - iwlwifi: mvm: set enabled in the PPAG command properly (Jarod Wilson) [1937053] - iwlwifi: mvm: add debugfs entry to trigger a dump as any time-point (Jarod Wilson) [1937053] - iwlwifi: mvm: add tx fail time point (Jarod Wilson) [1937053] - iwlwifi: fwrt: add suspend/resume time point (Jarod Wilson) [1937053] - iwlwifi: mvm: add triggers for MLME events (Jarod Wilson) [1937053] - iwlwifi: mvm: add IML/ROM information for other HW families (Jarod Wilson) [1937053] - iwlwifi: mvm: fix CSA AP side (Jarod Wilson) [1937053] - iwlwifi: mvm: make iwl_mvm_tt_temp_changed() static (Jarod Wilson) [1937053] - iwlwifi: mvm: cancel the scan delayed work when scan is aborted (Jarod Wilson) [1937053] - iwlwifi: pcie: add support for SnJ with Hr1 (Jarod Wilson) [1937053] - iwlwifi: mvm: move early time-point before nvm_init in non-unified (Jarod Wilson) [1937053] - iwlwifi: add support for SnJ with Jf devices (Jarod Wilson) [1937053] - iwlwifi: move SnJ and So rules to the new tables (Jarod Wilson) [1937053] - iwlwifi: mvm: slightly clean up rs_fw_set_supp_rates() (Jarod Wilson) [1937053] - iwlwifi: fw api: make hdr a zero-size array again (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 60 for AX devices (Jarod Wilson) [1937053] - iwlwifi: mvm: advertise BIGTK client support if available (Jarod Wilson) [1937053] - iwlwifi: always allow maximum A-MSDU on newer devices (Jarod Wilson) [1937053] - iwlwifi: mvm: debugfs: check length precisely in inject_packet (Jarod Wilson) [1937053] - iwlwifi: mvm: simplify TX power setting (Jarod Wilson) [1937053] - iwlwifi: tx: move handing sync/async host command to trans (Jarod Wilson) [1937053] - iwlwifi: mvm: add explicit check for non-data frames in get Tx rate (Jarod Wilson) [1937053] - iwlwifi: mvm: debugfs for phy-integration-ver (Jarod Wilson) [1937053] - iwlwifi: parse phy integration string from FW TLV (Jarod Wilson) [1937053] - iwlwifi: mvm: csa: do not abort CSA before disconnect (Jarod Wilson) [1937053] - iwlwifi: mvm: don't send commands during suspend\resume transition (Jarod Wilson) [1937053] - iwlwifi: mvm: don't check system_pm_mode without mutex held (Jarod Wilson) [1937053] - iwlwifi: remove TRANS_PM_OPS (Jarod Wilson) [1937053] - iwlwifi: dbg: dump paged memory from index 1 (Jarod Wilson) [1937053] - iwl-trans: iwlwifi: move sync NMI logic to trans (Jarod Wilson) [1937053] - iwlwifi: pcie: properly implement NAPI (Jarod Wilson) [1937053] - iwlwifi: mvm: add support for new flush queue response (Jarod Wilson) [1937053] - iwlwifi: mvm: handle CCA-EXT delay firmware notification (Jarod Wilson) [1937053] - iwlwifi: mvm: scan: fix scheduled scan restart handling (Jarod Wilson) [1937053] - iwlwifi: mvm: remove debugfs injection limitations (Jarod Wilson) [1937053] - iwlwifi: mvm: check more notification sizes (Jarod Wilson) [1937053] - iwlwifi: mvm: add notification size checks (Jarod Wilson) [1937053] - ath11k: remove h from printk format specifier (Jarod Wilson) [1937053] - ath10k: remove h from printk format specifier (Jarod Wilson) [1937053] - cfg80211: fix netdev registration deadlock (Jarod Wilson) [1937053] - mac80211: fix station rate table updates on assoc (Jarod Wilson) [1937053] - mt76: mt7663: introduce coredump support (Jarod Wilson) [1937053] - mt76: mt7921: add coredump support (Jarod Wilson) [1937053] - mt76: mt7921: enable MSI interrupts (Jarod Wilson) [1937053] - mt76: mt7921: introduce regdomain notifier support (Jarod Wilson) [1937053] - mt76: mt7921: introduce Runtime PM support (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_mcu module for suspend and WoW support (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_mcu module for sched_scan and hw_scan (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_mcu common library (Jarod Wilson) [1937053] - mt76: mt7921: introduce PM support (Jarod Wilson) [1937053] - mt76: mt7921: introduce beacon_loss mcu event (Jarod Wilson) [1937053] - mt76: mt7921: introduce support for hardware beacon filter (Jarod Wilson) [1937053] - mt76: mt7921: introduce 802.11 PS support in sta mode (Jarod Wilson) [1937053] - mt76: mt7921: introduce schedule scan support (Jarod Wilson) [1937053] - mt76: mt7921: add debugfs support (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921e support (Jarod Wilson) [1937053] - mt76: mt7921: add ieee80211_ops (Jarod Wilson) [1937053] - mt76: mt7921: add EEPROM support (Jarod Wilson) [1937053] - mt76: mt7921: add DMA support (Jarod Wilson) [1937053] - mt76: mt7921: add MCU support (Jarod Wilson) [1937053] - mt76: mt7921: add MAC support (Jarod Wilson) [1937053] - wireless: Fix "ordering" comment typos (Jarod Wilson) [1937053] - mt76: mt76_connac: move pm utility routines in mt76_connac_lib module (Jarod Wilson) [1937053] - mt76: mt76_connac: move pm data struct in mt76_connac.h (Jarod Wilson) [1937053] - mt76: mt76_connac: move WoW and suspend code in mt76_connac_mcu module (Jarod Wilson) [1937053] - mt76: mt76_connac: move hw_scan and sched_scan routine in mt76_connac_mcu module (Jarod Wilson) [1937053] - mt76: mt76_connac: create mcu library (Jarod Wilson) [1937053] - mt76: introduce mt76_vif data structure (Jarod Wilson) [1937053] - cfg80211: call cfg80211_destroy_ifaces() with wiphy lock held (Jarod Wilson) [1937053] - wext: call cfg80211_set_encryption() with wiphy lock held (Jarod Wilson) [1937053] - wext: call cfg80211_change_iface() with wiphy lock held (Jarod Wilson) [1937053] - nl80211: call cfg80211_dev_rename() under RTNL (Jarod Wilson) [1937053] - mt76: dma: fix a possible memory leak in mt76_add_fragment() (Jarod Wilson) [1937053] - ath9k: fix build error with LEDS_CLASS=m (Jarod Wilson) [1937053] - ath10k: fix wmi mgmt tx queue full due to race condition (Jarod Wilson) [1937053] - ath10k: pass the ssid info to get the correct bss entity (Jarod Wilson) [1937053] - ath10k: allow dynamic SAR power limits via common API (Jarod Wilson) [1937053] - mac80211: minstrel_ht: fix regression in the max_prob_rate fix (Jarod Wilson) [1937053] - mt76: mt7615: reduce VHT maximum MPDU length (Jarod Wilson) [1937053] - mt76: reduce q->lock hold time (Jarod Wilson) [1937053] - mt76: usb: process URBs with status EPROTO properly (Jarod Wilson) [1937053] - mt76: move vif_mask back from mt76_phy to mt76_dev (Jarod Wilson) [1937053] - mt76: mt7915: make vif index per adapter instead of per band (Jarod Wilson) [1937053] - mt76: mt7915: add support for using a secondary PCIe link for gen1 (Jarod Wilson) [1937053] - mt76: fix crash on tearing down ext phy (Jarod Wilson) [1937053] - mt76: mt7915: bring up the WA event rx queue for band1 (Jarod Wilson) [1937053] - mt76: mt7615: unify init work (Jarod Wilson) [1937053] - mt76: mt7915: support TxBF for DBDC (Jarod Wilson) [1937053] - mt76: mt7915: Remove unneeded semicolon (Jarod Wilson) [1937053] - mt76: mt7615: set mcu country code in mt7615_mcu_set_channel_domain() (Jarod Wilson) [1937053] - mt76: mt7915: fix eeprom DBDC band selection (Jarod Wilson) [1937053] - mt76: mt7915: fix eeprom parsing for DBDC (Jarod Wilson) [1937053] - iwlwifi: provide gso_type to GSO packets (Jarod Wilson) [1937053] - mt76: mt7915: disable RED support in the WA firmware (Jarod Wilson) [1937053] - mt76: mt7915: rework mcu API (Jarod Wilson) [1937053] - mt76: mt7915: do not set DRR group for stations (Jarod Wilson) [1937053] - mt76: mt7915: ensure that init work completes before starting the device (Jarod Wilson) [1937053] - mt76: mt7603: fix ED/CCA monitoring with single-stream devices (Jarod Wilson) [1937053] - mt76: mt7915: add implicit Tx beamforming support (Jarod Wilson) [1937053] - mt76: mt7915: simplify peer's TxBF capability check (Jarod Wilson) [1937053] - mt76: mt7615: mt7915: disable txpower sku when testmode enabled (Jarod Wilson) [1937053] - mt76: mt7915: add support for continuous tx in testmode (Jarod Wilson) [1937053] - mt76: mt7915: rework set state part in testmode (Jarod Wilson) [1937053] - mt76: testmode: add a new state for continuous tx (Jarod Wilson) [1937053] - mt76: mt7915: clean hw queue before starting new testmode tx (Jarod Wilson) [1937053] - mt76: mt7915: calculate new packet length when tx_time is set in testmode (Jarod Wilson) [1937053] - mt76: mt7915: add support for ipg in testmode (Jarod Wilson) [1937053] - mt76: mt7915: split edca update function (Jarod Wilson) [1937053] - mt76: testmode: make tx queued limit adjustable (Jarod Wilson) [1937053] - mt76: testmode: add attributes for ipg related parameters (Jarod Wilson) [1937053] - mt76: testmode: add support to set user-defined spe index (Jarod Wilson) [1937053] - mt76: mt7915: force ldpc for bw larger than 20MHz in testmode (Jarod Wilson) [1937053] - mt76: move chainmask in mt76_phy (Jarod Wilson) [1937053] - mt76: move mac_work in mt76_core module (Jarod Wilson) [1937053] - mt76: mt7615: move testmode data from dev to phy (Jarod Wilson) [1937053] - mt76: mt7915: move testmode data from dev to phy (Jarod Wilson) [1937053] - mt76: testmode: move mtd part to mt76_dev (Jarod Wilson) [1937053] - mt76: testmode: introduce dbdc support (Jarod Wilson) [1937053] - mt76: mt7915: add partial add_bss_info command on testmode init (Jarod Wilson) [1937053] - mt76: mt7915: drop zero-length packet to avoid Tx hang (Jarod Wilson) [1937053] - mt76: mt7915: simplify mt7915_mcu_send_message routine (Jarod Wilson) [1937053] - mt76: mt7915: fix endianness warning in mt7915_mcu_set_radar_th (Jarod Wilson) [1937053] - mt76: mt7915: add support for flash mode (Jarod Wilson) [1937053] - mt76: mt7915: run mt7915_configure_filter holding mt76 mutex (Jarod Wilson) [1937053] - mt76: mt7915: convert comma to semicolon (Jarod Wilson) [1937053] - mt76: mt7615: convert comma to semicolon (Jarod Wilson) [1937053] - mt76: mt7615: reset token when mac_reset happens (Jarod Wilson) [1937053] - mt76: mt7915: reset token when mac_reset happens (Jarod Wilson) [1937053] - mt76: mt7915: fix MT_CIPHER_BIP_CMAC_128 setkey (Jarod Wilson) [1937053] - mt76: mt7615: add vif check in mt7615_update_vif_beacon() (Jarod Wilson) [1937053] - mt76: mt7915: add vif check in mt7915_update_vif_beacon() (Jarod Wilson) [1937053] - ath11k: add ieee80211_unregister_hw to avoid kernel crash caused by NULL pointer (Jarod Wilson) [1937053] - mac80211: pause TX while changing interface type (Jarod Wilson) [1937053] - wext: fix NULL-ptr-dereference with cfg80211's lack of commit() (Jarod Wilson) [1937053] - cfg80211: avoid holding the RTNL when calling the driver (Jarod Wilson) [1937053] - iwl4965: do not process non-QOS frames on txq->sched_retry path (Jarod Wilson) [1937053] - mt7601u: process tx URBs with status EPROTO properly (Jarod Wilson) [1937053] - mt7601u: use ieee80211_rx_list to pass frames to the network stack as a batch (Jarod Wilson) [1937053] - rtw88: 8723de: adjust the LTR setting (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl8192c-common: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl_pci: fix bool comparison in expressions (Jarod Wilson) [1937053] - mt7601u: fix kernel crash unplugging the device (Jarod Wilson) [1937053] - iwlwifi: queue: bail out on invalid freeing (Jarod Wilson) [1937053] - iwlwifi: mvm: guard against device removal in reprobe (Jarod Wilson) [1937053] - iwlwifi: Fix IWL_SUBDEVICE_NO_160 macro to use the correct bit. (Jarod Wilson) [1937053] - iwlwifi: mvm: clear IN_D3 after wowlan status cmd (Jarod Wilson) [1937053] - iwlwifi: pcie: add rules to match Qu with Hr2 (Jarod Wilson) [1937053] - iwlwifi: mvm: invalidate IDs of internal stations at mvm start (Jarod Wilson) [1937053] - iwlwifi: mvm: fix the return type for DSM functions 1 and 2 (Jarod Wilson) [1937053] - iwlwifi: pcie: reschedule in long-running memory reads (Jarod Wilson) [1937053] - iwlwifi: pcie: use jiffies for memory read spin time limit (Jarod Wilson) [1937053] - iwlwifi: pcie: fix context info memory leak (Jarod Wilson) [1937053] - iwlwifi: pcie: add a NULL check in iwl_pcie_txq_unmap (Jarod Wilson) [1937053] - iwlwifi: pcie: set LTR on more devices (Jarod Wilson) [1937053] - iwlwifi: queue: don't crash if txq->entries is NULL (Jarod Wilson) [1937053] - iwlwifi: fix the NMI flow for old devices (Jarod Wilson) [1937053] - iwlwifi: pnvm: don't try to load after failures (Jarod Wilson) [1937053] - iwlwifi: pnvm: don't skip everything when not reloading (Jarod Wilson) [1937053] - iwlwifi: pcie: avoid potential PNVM leaks (Jarod Wilson) [1937053] - iwlwifi: mvm: take mutex for calling iwl_mvm_get_sync_time() (Jarod Wilson) [1937053] - iwlwifi: mvm: skip power command when unbinding vif during CSA (Jarod Wilson) [1937053] - cfg80211: change netdev registration/unregistration semantics (Jarod Wilson) [1937053] - mac80211: minstrel_ht: fix rounding error in throughput calculation (Jarod Wilson) [1937053] - mac80211: minstrel_ht: increase stats update interval (Jarod Wilson) [1937053] - mac80211: minstrel_ht: fix max probability rate selection (Jarod Wilson) [1937053] - mac80211: minstrel_ht: improve sample rate selection (Jarod Wilson) [1937053] - mac80211: minstrel_ht: improve ampdu length estimation (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove old ewma based rate average code (Jarod Wilson) [1937053] - mac80211: remove legacy minstrel rate control (Jarod Wilson) [1937053] - mac80211: minstrel_ht: add support for OFDM rates on non-HT clients (Jarod Wilson) [1937053] - mac80211: minstrel_ht: clean up CCK code (Jarod Wilson) [1937053] - mac80211: introduce aql_enable node in debugfs (Jarod Wilson) [1937053] - cfg80211: Add phyrate conversion support for extended MCS in 60GHz band (Jarod Wilson) [1937053] - cfg80211: add VHT rate entries for MCS-10 and MCS-11 (Jarod Wilson) [1937053] - mac80211: reduce peer HE MCS/NSS to own capabilities (Jarod Wilson) [1937053] - mac80211: remove NSS number of 160MHz if not support 160MHz for HE (Jarod Wilson) [1937053] - mac80211: 160MHz with extended NSS BW in CSA (Jarod Wilson) [1937053] - mac80211: add LDPC encoding to ieee80211_parse_tx_radiotap (Jarod Wilson) [1937053] - mac80211: add rx decapsulation offload support (Jarod Wilson) [1937053] - ath10k: remove unused struct ath10k::dev_type (Jarod Wilson) [1937053] - ath11k: remove duplicate function declaration (Jarod Wilson) [1937053] - ath10k: increase rx buffer size to 2048 (Jarod Wilson) [1937053] - ath10k: sanitity check for ep connectivity (Jarod Wilson) [1937053] - mt76: mt7663s: fix rx buffer refcounting (Jarod Wilson) [1937053] - mt7601u: fix rx buffer refcounting (Jarod Wilson) [1937053] - mac80211: check if atf has been disabled in __ieee80211_schedule_txq (Jarod Wilson) [1937053] - mac80211: do not drop tx nulldata packets on encrypted links (Jarod Wilson) [1937053] - mac80211: fix encryption key selection for 802.3 xmit (Jarod Wilson) [1937053] - mac80211: fix fast-rx encryption check (Jarod Wilson) [1937053] - mac80211: fix incorrect strlen of .write in debugfs (Jarod Wilson) [1937053] - cfg80211: fix a kerneldoc markup (Jarod Wilson) [1937053] - brcmfmac: clear EAP/association status bits on linkdown events (Jarod Wilson) [1937053] - brcmfmac: Delete useless kfree code (Jarod Wilson) [1937053] - mt7601u: check the status of device in calibration (Jarod Wilson) [1937053] - mt7601u: process URBs in status EPROTO properly (Jarod Wilson) [1937053] - brcmfmac: support BCM4365E with 43666 ChipCommon chip ID (Jarod Wilson) [1937053] - mwifiex: pcie: Drop bogus __refdata annotation (Jarod Wilson) [1937053] - rtw88: Simplify bool comparison (Jarod Wilson) [1937053] - rtw88: coex: set 4 slot TDMA for BT link and WL busy (Jarod Wilson) [1937053] - rtw88: 8821c: apply CCK PD level which calculates from dynamic mechanism (Jarod Wilson) [1937053] - rtw88: reduce the log level for failure of tx report (Jarod Wilson) [1937053] - rtw88: Delete useless kfree code (Jarod Wilson) [1937053] - iwlwifi: dbg: Don't touch the tlv data (Jarod Wilson) [1937053] - mt76: Fix queue ID variable types after mcu queue split (Jarod Wilson) [1937053] - cfg80211: Save the regulatory domain with a lock (Jarod Wilson) [1937053] - cfg80211/mac80211: fix kernel-doc for SAR APIs (Jarod Wilson) [1937053] - mt76: mt7915: fix MESH ifdef block (Jarod Wilson) [1937053] - mt76: mt76s: fix NULL pointer dereference in mt76s_process_tx_queue (Jarod Wilson) [1937053] - mt76: sdio: remove wake logic in mt76s_process_tx_queue (Jarod Wilson) [1937053] - mt76: usb: remove wake logic in mt76u_status_worker (Jarod Wilson) [1937053] - ath11k: dp: clean up a variable name (Jarod Wilson) [1937053] - ath11k: pci: remove unnecessary mask in ath11k_pci_enable_ltssm() (Jarod Wilson) [1937053] - ath11k: pci: disable ASPM L0sLs before downloading firmware (Jarod Wilson) [1937053] - ath11k: qmi: try to allocate a big block of DMA memory first (Jarod Wilson) [1937053] - rtlwifi: rise completion at the last step of firmware callback (Jarod Wilson) [1937053] - mt76: mt76u: fix NULL pointer dereference in mt76u_status_worker (Jarod Wilson) [1937053] - ath10k: prevent deinitializing NAPI twice (Jarod Wilson) [1937053] - ath9k: Postpone key cache entry deletion for TXQ frames reference it (Jarod Wilson) [1937053] - ath: Modify ath_key_delete() to not need full key entry (Jarod Wilson) [1937053] - ath: Export ath_hw_keysetmac() (Jarod Wilson) [1937053] - ath9k: Clear key cache explicitly on disabling hardware (Jarod Wilson) [1937053] - ath: Use safer key clearing with key cache entries (Jarod Wilson) [1937053] - ath10k: Remove voltage regulator votes during wifi disable (Jarod Wilson) [1937053] - ath10k: Fix error handling in case of CE pipe init failure (Jarod Wilson) [1937053] - ath11k: Fix ath11k_pci_fix_l1ss() (Jarod Wilson) [1937053] - ath11k: Fix error code in ath11k_core_suspend() (Jarod Wilson) [1937053] - ath11k: start vdev if a bss peer is already created (Jarod Wilson) [1937053] - ath11k: fix crash caused by NULL rx_channel (Jarod Wilson) [1937053] - ath11k: add missing null check on allocated skb (Jarod Wilson) [1937053] - ath9k: make relay callbacks const (Jarod Wilson) [1937053] - ath11k: make relay callbacks const (Jarod Wilson) [1937053] - ath10k: make relay callbacks const (Jarod Wilson) [1937053] - ath11k: implement suspend for QCA6390 PCI devices (Jarod Wilson) [1937053] - ath11k: hif: add ce irq enable and disable functions (Jarod Wilson) [1937053] - ath11k: implement WoW enable and wakeup commands (Jarod Wilson) [1937053] - ath11k: set credit_update flag for flow controlled ep only (Jarod Wilson) [1937053] - ath11k: dp: stop rx pktlog before suspend (Jarod Wilson) [1937053] - ath11k: htc: implement suspend handling (Jarod Wilson) [1937053] - ath11k: htc: remove unused struct ath11k_htc_ops (Jarod Wilson) [1937053] - ath11k: pci: read select_window register to ensure write is finished (Jarod Wilson) [1937053] - ath11k: hif: implement suspend and resume functions (Jarod Wilson) [1937053] - ath11k: mhi: hook suspend and resume (Jarod Wilson) [1937053] - ath11k: Fix incorrect tlvs in scan start command (Jarod Wilson) [1937053] - ath11k: pci: disable VDD4BLOW (Jarod Wilson) [1937053] - ath11k: pci: fix L1ss clock unstable problem (Jarod Wilson) [1937053] - ath11k: pci: fix hot reset stability issues (Jarod Wilson) [1937053] - ath11k: put hw to DBS using WMI_PDEV_SET_HW_MODE_CMDID (Jarod Wilson) [1937053] - ath11k: mhi: print a warning if firmware crashed (Jarod Wilson) [1937053] - ath11k: use MHI provided APIs to allocate and free MHI controller (Jarod Wilson) [1937053] - ath10k: add atomic protection for device recovery (Jarod Wilson) [1937053] - ath10k: add option for chip-id based BDF selection (Jarod Wilson) [1937053] - mt76: remove unused variable q (Jarod Wilson) [1937053] - mac80211: add ieee80211_set_sar_specs (Jarod Wilson) [1937053] - nl80211: add common API to configure SAR power limitations (Jarod Wilson) [1937053] - mac80211: fix a mistake check for rx_stats update (Jarod Wilson) [1937053] - mac80211: mlme: save ssid info to ieee80211_bss_conf while assoc (Jarod Wilson) [1937053] - mac80211: Update rate control on channel change (Jarod Wilson) [1937053] - mac80211: don't filter out beacons once we start CSA (Jarod Wilson) [1937053] - mac80211: Fix calculation of minimal channel width (Jarod Wilson) [1937053] - mac80211: ignore country element TX power on 6 GHz (Jarod Wilson) [1937053] - mac80211: use bitfield helpers for BA session action frames (Jarod Wilson) [1937053] - mac80211: support Rx timestamp calculation for all preamble types (Jarod Wilson) [1937053] - mac80211: don't set set TDLS STA bandwidth wider than possible (Jarod Wilson) [1937053] - mac80211: support driver-based disconnect with reconnect hint (Jarod Wilson) [1937053] - cfg80211: support immediate reconnect request hint (Jarod Wilson) [1937053] - mac80211: use struct assignment for he_obss_pd (Jarod Wilson) [1937053] - cfg80211: remove struct ieee80211_he_bss_color (Jarod Wilson) [1937053] - nl80211: validate key indexes for cfg80211_registered_device (Jarod Wilson) [1937053] - cfg80211: include block-tx flag in channel switch started event (Jarod Wilson) [1937053] - mac80211: disallow band-switch during CSA (Jarod Wilson) [1937053] - ieee80211: update reduced neighbor report TBTT info length (Jarod Wilson) [1937053] - cfg80211: Save the regulatory domain when setting custom regulatory (Jarod Wilson) [1937053] - nl80211: always accept scan request with the duration set (Jarod Wilson) [1937053] - cfg80211: Update TSF and TSF BSSID for multi BSS (Jarod Wilson) [1937053] - cfg80211: scan PSC channels in case of scan with wildcard SSID (Jarod Wilson) [1937053] - mac80211: Skip entries with SAE H2E only membership selector (Jarod Wilson) [1937053] - cfg80211: Parse SAE H2E only membership selector (Jarod Wilson) [1937053] - mac80211: support MIC error/replay detected counters driver update (Jarod Wilson) [1937053] - mac80211: he: remove non-bss-conf fields from bss_conf (Jarod Wilson) [1937053] - mac80211: remove trailing semicolon in macro definitions (Jarod Wilson) [1937053] - nl80211: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - mac80211: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - cfg80211: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - cfg80211: fix callback type mismatches in wext-compat (Jarod Wilson) [1937053] - net: wireless: make a const array static, makes object smaller (Jarod Wilson) [1937053] - net: mac80211: use core API for updating TX/RX stats (Jarod Wilson) [1937053] - rfkill: add a reason to the HW rfkill state (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: fix ofdm power compensation (Jarod Wilson) [1937053] - ath9k_htc: adhere to the DONT_REORDER transmit flag (Jarod Wilson) [1937053] - ath11k: mesh: add support for 256 bitmap in blockack frames in 11ax (Jarod Wilson) [1937053] - ath11k: support TXOP duration based RTS threshold (Jarod Wilson) [1937053] - ath11k: fix incorrect wmi param for configuring HE operation (Jarod Wilson) [1937053] - ath11k: unlock on error path in ath11k_mac_op_add_interface() (Jarod Wilson) [1937053] - ath11k: fix rmmod failure if qmi sequence fails (Jarod Wilson) [1937053] - rtw88: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - rt2x00: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - ath11k: pci: add MODULE_FIRMWARE macros (Jarod Wilson) [1937053] - rtw88: reduce polling time of IQ calibration (Jarod Wilson) [1937053] - rtw88: fix multiple definition of rtw_pm_ops (Jarod Wilson) [1937053] - brcmfmac: remove redundant assignment to pointer 'entry' (Jarod Wilson) [1937053] - rtw88: declare hw supports ch 144 (Jarod Wilson) [1937053] - rtw88: coex: fix missing unitialization of variable 'interval' (Jarod Wilson) [1937053] - mwifiex: change license text of Makefile and README from MARVELL to NXP (Jarod Wilson) [1937053] - rtw88: pci: Add prototypes for .probe, .remove and .shutdown (Jarod Wilson) [1937053] - ath9k: remove trailing semicolon in macro definition (Jarod Wilson) [1937053] - ath11k: Ignore resetting peer auth flag in peer assoc cmd (Jarod Wilson) [1937053] - ath11k: add 64bit check before reading msi high addr (Jarod Wilson) [1937053] - ath10k: fix a check patch warning returnNonBoolInBooleanFunction of sdio.c (Jarod Wilson) [1937053] - mac80211: mesh: fix mesh_pathtbl_init() error path (Jarod Wilson) [1937053] - mt76: mt7615: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - mt76: mt7915: fix ht mcs in mt7915_mcu_get_rx_rate() (Jarod Wilson) [1937053] - mt76: attempt to free up more room when filling the tx queue (Jarod Wilson) [1937053] - mt76: mt7915: stop queues when running out of tx tokens (Jarod Wilson) [1937053] - mt76: improve tx queue stop/wake (Jarod Wilson) [1937053] - mt76: mt7915: fix memory leak in mt7915_mcu_get_rx_rate() (Jarod Wilson) [1937053] - mt76: mt7615: fix rdd mcu cmd endianness (Jarod Wilson) [1937053] - mt76: mt7915: fix endian issues (Jarod Wilson) [1937053] - mt76: mt7915: get rid of dbdc debugfs knob (Jarod Wilson) [1937053] - mt76: mt7915: introduce dbdc support (Jarod Wilson) [1937053] - mt76: move hw mac_addr in mt76_phy (Jarod Wilson) [1937053] - mt76: move band allocation in mt76_register_phy (Jarod Wilson) [1937053] - mt76: rely on mt76_phy in mt76_init_sband_2g and mt76_init_sband_5g (Jarod Wilson) [1937053] - mt76: move band capabilities in mt76_phy (Jarod Wilson) [1937053] - mt76: move tx hw data queues in mt76_phy (Jarod Wilson) [1937053] - mt76: move mcu queues to mt76_dev q_mcu array (Jarod Wilson) [1937053] - mt76: rely on mt76_queue in tx_queue_skb_raw signature (Jarod Wilson) [1937053] - mt76: introduce mt76_init_mcu_queue utility routine (Jarod Wilson) [1937053] - mt76: rely on mt76_queue in tx_queue_skb signature (Jarod Wilson) [1937053] - mt76: dma: rely on mt76_queue in mt76_dma_tx_cleanup signature (Jarod Wilson) [1937053] - mt76: mt7663s: rely on mt76_queue in mt7663s_tx_run_queue signature (Jarod Wilson) [1937053] - mt76: sdio: rely on mt76_queue in mt76s_process_tx_queue signature (Jarod Wilson) [1937053] - mt76: sdio: introduce mt76s_alloc_tx_queue (Jarod Wilson) [1937053] - mt76: move mt76_init_tx_queue in common code (Jarod Wilson) [1937053] - mt76: mt7915: rely on eeprom definitions (Jarod Wilson) [1937053] - mt76: mt7615: refactor usb/sdio rate code (Jarod Wilson) [1937053] - mt76: mt7615: support 16 interfaces (Jarod Wilson) [1937053] - mt76: mt7915: remove unused mt7915_mcu_bss_sync_tlv() (Jarod Wilson) [1937053] - mt76: mt7915: use BIT_ULL for omac_idx (Jarod Wilson) [1937053] - mt76: mt7915: make mt7915_eeprom_read static (Jarod Wilson) [1937053] - mt76: mt7915: add support to set tx frequency offset in testmode (Jarod Wilson) [1937053] - mt76: mt7915: add support to set txpower in testmode (Jarod Wilson) [1937053] - mt76: mt7915: implement testmode rx support (Jarod Wilson) [1937053] - mt76: mt7915: implement testmode tx support (Jarod Wilson) [1937053] - mt76: testmode: add support for HE rate modes (Jarod Wilson) [1937053] - mt76: mt7915: fix tx rate related fields in tx descriptor (Jarod Wilson) [1937053] - mt76: testmode: add support for LTF and GI combinations for HE mode (Jarod Wilson) [1937053] - mt76: testmode: add tx_rate_stbc parameter (Jarod Wilson) [1937053] - mt76: testmode: add snr attribute in rx statistics (Jarod Wilson) [1937053] - mt76: testmode: switch ib and wb rssi to array type for per-antenna report (Jarod Wilson) [1937053] - mt76: mt76u: use dedicated thread for status work (Jarod Wilson) [1937053] - mt76: mt76u: rely on woker APIs for rx work (Jarod Wilson) [1937053] - mt76: mt7615: run key configuration in mt7615_set_key for usb/sdio devices (Jarod Wilson) [1937053] - mt76: fix tkip configuration for mt7615/7663 devices (Jarod Wilson) [1937053] - mt76: switch to wep sw crypto for mt7615/mt7915 (Jarod Wilson) [1937053] - mt76: mt7663s: introduce WoW support via GPIO (Jarod Wilson) [1937053] - mt76: move mt76_mcu_send_firmware in common module (Jarod Wilson) [1937053] - mt76: mt7603: add additional EEPROM chip ID (Jarod Wilson) [1937053] - mt76: fix memory leak if device probing fails (Jarod Wilson) [1937053] - mt76: mt7915: fix sparse warning cast from restricted __le16 (Jarod Wilson) [1937053] - mt76: dma: fix possible deadlock running mt76_dma_cleanup (Jarod Wilson) [1937053] - mt76: set fops_tx_stats.owner to THIS_MODULE (Jarod Wilson) [1937053] - mt76: mt7915: rename mt7915_mcu_get_rate_info to mt7915_mcu_get_tx_rate (Jarod Wilson) [1937053] - mt76: mt7915: update ppe threshold (Jarod Wilson) [1937053] - mt76: mt7915: set fops_sta_stats.owner to THIS_MODULE (Jarod Wilson) [1937053] - mt76: sdio: get rid of sched.lock (Jarod Wilson) [1937053] - mt76: mt7663s: fix a possible ple quota underflow (Jarod Wilson) [1937053] - mt76: mt7663s: get rid of mt7663s_sta_add (Jarod Wilson) [1937053] - mt76: mt7615: introduce quota debugfs node for mt7663s (Jarod Wilson) [1937053] - mt76: mt7615: enable beacon filtering by default for offload fw (Jarod Wilson) [1937053] - mt76: add back the SUPPORTS_REORDERING_BUFFER flag (Jarod Wilson) [1937053] - mt76: mt7915: query station rx rate from firmware (Jarod Wilson) [1937053] - mt76: mt7915: move eeprom parsing out of mt7915_mcu_parse_response (Jarod Wilson) [1937053] - mt76: implement functions to get the response skb for MCU calls (Jarod Wilson) [1937053] - mt76: mt7603: switch to .mcu_skb_send_msg (Jarod Wilson) [1937053] - mt76: make mcu_ops->mcu_send_msg optional (Jarod Wilson) [1937053] - mt76: move waiting and locking out of mcu_ops->mcu_skb_send_msg (Jarod Wilson) [1937053] - mt76: move mcu timeout handling to .mcu_parse_response (Jarod Wilson) [1937053] - mt76: implement .mcu_parse_response in struct mt76_mcu_ops (Jarod Wilson) [1937053] - mt76: rename __mt76_mcu_skb_send_msg to mt76_mcu_skb_send_msg (Jarod Wilson) [1937053] - mt76: rename __mt76_mcu_send_msg to mt76_mcu_send_msg (Jarod Wilson) [1937053] - mt76: mt7915: disable OFDMA/MU-MIMO UL (Jarod Wilson) [1937053] - mt76: mt7915: fix DRR sta bss group index (Jarod Wilson) [1937053] - mt76: mt7915: use napi_consume_skb to bulk-free tx skbs (Jarod Wilson) [1937053] - mt76: mt7915: fix processing txfree events (Jarod Wilson) [1937053] - mt76: mt7915: support 32 station interfaces (Jarod Wilson) [1937053] - mt76: do not set NEEDS_UNIQUE_STA_ADDR for 7615 and 7915 (Jarod Wilson) [1937053] - mt76: mt7615: add debugfs knob for setting extended local mac addresses (Jarod Wilson) [1937053] - mt76: use ieee80211_rx_list to pass frames to the network stack as a batch (Jarod Wilson) [1937053] - mt76: mt7915: add encap offload for 4-address mode stations (Jarod Wilson) [1937053] - mt76: mt7915: add 802.11 encap offload support (Jarod Wilson) [1937053] - mt76: sdio: convert {status/net}_work to mt76_worker (Jarod Wilson) [1937053] - mt76: mt7663s: disable interrupt during txrx_worker processing (Jarod Wilson) [1937053] - mt76: mt7663s: convert txrx_work to mt76_worker (Jarod Wilson) [1937053] - mt76: mt7663s: move tx/rx processing in the same txrx workqueue (Jarod Wilson) [1937053] - mt76: mt7615: retry if mt7615_mcu_init returns -EAGAIN (Jarod Wilson) [1937053] - mt76: mt7915: fix VHT LDPC capability (Jarod Wilson) [1937053] - mt76: mt7915: measure channel noise and report it via survey (Jarod Wilson) [1937053] - mac80211: set SDATA_STATE_RUNNING for monitor interfaces (Jarod Wilson) [1937053] - cfg80211: initialize rekey_data (Jarod Wilson) [1937053] - mac80211: fix return value of ieee80211_chandef_he_6ghz_oper (Jarod Wilson) [1937053] - rtw88: debug: Fix uninitialized memory in debugfs code (Jarod Wilson) [1937053] - brcmfmac: expose firmware config files through modinfo (Jarod Wilson) [1937053] - rtw88: coex: add feature to enhance HID coexistence performance (Jarod Wilson) [1937053] - rtw88: coex: upgrade coexistence A2DP mechanism (Jarod Wilson) [1937053] - rtw88: coex: add action for coexistence in hardware initial (Jarod Wilson) [1937053] - rtw88: coex: add function to avoid cck lock (Jarod Wilson) [1937053] - rtw88: coex: change the coexistence mechanism for WLAN connected (Jarod Wilson) [1937053] - rtw88: coex: change the coexistence mechanism for HID (Jarod Wilson) [1937053] - rtw88: coex: update AFH information while in free-run mode (Jarod Wilson) [1937053] - rtw88: coex: update the mechanism for A2DP + PAN (Jarod Wilson) [1937053] - rtw88: coex: add debug message (Jarod Wilson) [1937053] - rtw88: coex: run coexistence when WLAN entering/leaving LPS (Jarod Wilson) [1937053] - Revert "rtl8xxxu: Add Buffalo WI-U3-866D to list of supported devices" (Jarod Wilson) [1937053] - mt76: usb: fix crash on device removal (Jarod Wilson) [1937053] - ath11k: dp_rx: fix monitor status dma unmap direction (Jarod Wilson) [1937053] - ath10k: Constify static qmi structs (Jarod Wilson) [1937053] - ath10k: Release some resources in an error handling path (Jarod Wilson) [1937053] - ath10k: Fix an error handling path (Jarod Wilson) [1937053] - ath10k: Fix the parsing error in service available event (Jarod Wilson) [1937053] - ath11k: Fix an error handling path (Jarod Wilson) [1937053] - ath11k: Build check size of ath11k_skb_cb (Jarod Wilson) [1937053] - ath11k: Reset ath11k_skb_cb before setting new flags (Jarod Wilson) [1937053] - ath11k: Don't cast ath11k_skb_cb to ieee80211_tx_info.control (Jarod Wilson) [1937053] - ath11k: remove "ath11k_mac_get_ar_vdev_stop_status" references (Jarod Wilson) [1937053] - ath11k: peer delete synchronization with firmware (Jarod Wilson) [1937053] - ath11k: vdev delete synchronization with firmware (Jarod Wilson) [1937053] - mwifiex: Remove duplicated REG_PORT definition (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8192ce: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - mwifiex: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - brcmsmac: ampdu: Check BA window size before checking block ack (Jarod Wilson) [1937053] - brcmfmac: Fix incorrect type in assignment (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: remove the useless value assignment (Jarod Wilson) [1937053] - brcmfmac: fix error return code in brcmf_cfg80211_connect() (Jarod Wilson) [1937053] - rtw88: wow: print key type when failing (Jarod Wilson) [1937053] - rtw88: coex: change the decode method from firmware (Jarod Wilson) [1937053] - rtw88: coex: remove unnecessary WLAN slot extend (Jarod Wilson) [1937053] - rtw88: coex: remove write scan bit to scoreboard in scan and connect notify (Jarod Wilson) [1937053] - rtw88: coex: fix BT performance drop during initial/power-on step (Jarod Wilson) [1937053] - rtw88: coex: Change antenna setting to enhance free-run performance (Jarod Wilson) [1937053] - rtw88: coex: update the TDMA parameter when leave LPS (Jarod Wilson) [1937053] - rtw88: coex: add the mechanism for RF4CE (Jarod Wilson) [1937053] - rtw88: coex: Add force flag for coexistence table function (Jarod Wilson) [1937053] - rtw88: coex: add write scoreboard action when WLAN in critical procedure (Jarod Wilson) [1937053] - rtw88: coex: remove unnecessary feature/function (Jarod Wilson) [1937053] - rtw88: coex: update TDMA settings for different beacon interval (Jarod Wilson) [1937053] - rtw88: add CCK_PD debug log (Jarod Wilson) [1937053] - rtw88: 8723d: add cck pd seetings (Jarod Wilson) [1937053] - ath11k: Fix the rx_filter flag setting for peer rssi stats (Jarod Wilson) [1937053] - ath10k: add target IRAM recovery feature support (Jarod Wilson) [1937053] - ath11k: Fix beamformee STS in HE cap (Jarod Wilson) [1937053] - ath11k: add processor_id based ring_selector logic (Jarod Wilson) [1937053] - mac80211: free sta in sta_info_insert_finish() on errors (Jarod Wilson) [1937053] - mac80211: minstrel: fix tx status processing corner case (Jarod Wilson) [1937053] - mac80211: minstrel: remove deferred sampling code (Jarod Wilson) [1937053] - mac80211: fix memory leak on filtered powersave frames (Jarod Wilson) [1937053] - rfkill: Fix use-after-free in rfkill_resume() (Jarod Wilson) [1937053] - nl80211: fix kernel-doc warning in the new SAE attribute (Jarod Wilson) [1937053] - cfg80211: remove WDS code (Jarod Wilson) [1937053] - mac80211: remove WDS-related code (Jarod Wilson) [1937053] - rt2x00: remove WDS code (Jarod Wilson) [1937053] - b43: remove WDS code (Jarod Wilson) [1937053] - ath9k: remove WDS code (Jarod Wilson) [1937053] - rtw88: coex: simplify the setting and condition about WLAN TX limitation (Jarod Wilson) [1937053] - rtw88: coex: add debug message (Jarod Wilson) [1937053] - rtw88: coex: update WLAN 5G AFH parameter for 8822b (Jarod Wilson) [1937053] - rtw88: coex: change the parameter for A2DP when WLAN connecting (Jarod Wilson) [1937053] - rtw88: coex: modified for BT info notify (Jarod Wilson) [1937053] - rtw88: coex: add separate flag for manual control (Jarod Wilson) [1937053] - rtw88: coex: Modify the timing of set_ant_path/set_rf_para (Jarod Wilson) [1937053] - rtw88: coex: coding style adjustment (Jarod Wilson) [1937053] - rtw88: coex: reduce magic number (Jarod Wilson) [1937053] - rtw88: coex: update coex parameter to improve A2DP quality (Jarod Wilson) [1937053] - rtw88: coex: fixed some wrong register definition and setting (Jarod Wilson) [1937053] - rtlwifi: fix spelling typo of workaround (Jarod Wilson) [1937053] - mwifiex: pcie: skip cancel_work_sync() on reset failure path (Jarod Wilson) [1937053] - mwifiex: update comment for shutdown_sw()/reinit_sw() to reflect current state (Jarod Wilson) [1937053] - mwifiex: fix mwifiex_shutdown_sw() causing sw reset failure (Jarod Wilson) [1937053] - ath11k: Handle errors if peer creation fails (Jarod Wilson) [1937053] - ath9k: work around false-positive gcc warning (Jarod Wilson) [1937053] - wireless: remove CONFIG_WIRELESS_WDS (Jarod Wilson) [1937053] - brcmfmac: Fix memory leak for unpaired brcmf_{alloc/free} (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: Place braces around empty if() body (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: phy: Remove a couple of unused variables (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: Remove set but unused variable 'cck_highpwr' (Jarod Wilson) [1937053] - rtlwifi: halbtc8821a2ant: Remove a bunch of unused variables (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: Remove set but unused variable 'reg_ea4' (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: Remove set but unused variable 'lc_cal' (Jarod Wilson) [1937053] - rtlwifi: halbtc8821a1ant: Remove set but unused variable 'wifi_rssi_state' (Jarod Wilson) [1937053] - rtlwifi: phy: Remove set but unused variable 'bbvalue' (Jarod Wilson) [1937053] - rtlwifi: halbtc8723b2ant: Remove a bunch of set but unused variables (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: trx: Demote clear abuse of kernel-doc format (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: mac: Fix some missing/ill-documented function parameters (Jarod Wilson) [1937053] - rtw88: rtw8822c: Remove unused variable 'corr_val' (Jarod Wilson) [1937053] - mwifiex: pcie: Remove a couple of unchecked 'ret's (Jarod Wilson) [1937053] - wl1251: cmd: Rename 'len' to 'buf_len' in the documentation (Jarod Wilson) [1937053] - brcmfmac: fweh: Add missing description for 'gfp' (Jarod Wilson) [1937053] - brcmfmac: pcie: Provide description for missing function parameter 'devinfo' (Jarod Wilson) [1937053] - brcmfmac: bcmsdh: Fix description for function parameter 'pktlist' (Jarod Wilson) [1937053] - rt2x00: save survey for every channel visited (Jarod Wilson) [1937053] - rtlwifi: Remove in_interrupt() usage in halbtc_send_bt_mp_operation() (Jarod Wilson) [1937053] - rtlwifi: Remove in_interrupt() usage in is_any_client_connect_to_ap(). (Jarod Wilson) [1937053] - rtl8xxxu: Add Buffalo WI-U3-866D to list of supported devices (Jarod Wilson) [1937053] - rtw88: decide lps deep mode from firmware feature. (Jarod Wilson) [1937053] - rtw88: add C2H response for checking firmware leave lps (Jarod Wilson) [1937053] - rtw88: store firmware feature in firmware header (Jarod Wilson) [1937053] - rtw88: sync the power state between driver and firmware (Jarod Wilson) [1937053] - rtw88: coex: separate BLE HID profile from BLE profile (Jarod Wilson) [1937053] - rtlwifi: Fix non-canonical address access issues (Jarod Wilson) [1937053] - brcmfmac: fix SDIO access for big-endian host (Jarod Wilson) [1937053] - rtw88: remove extraneous 'const' qualifier (Jarod Wilson) [1937053] - rtlwifi: fix -Wpointer-sign warning (Jarod Wilson) [1937053] - ath11k: fix ZERO address in probe request (Jarod Wilson) [1937053] - ath9k: dynack: Demote non-compliant function header (Jarod Wilson) [1937053] - ath9k: ar5008_phy: Demote half completed function headers (Jarod Wilson) [1937053] - ath9k: ar9003_2p2_initvals: Remove unused const variables (Jarod Wilson) [1937053] - ath9k: ar9485_initvals: Remove unused const variable 'ar9485_fast_clock_1_1_baseband_postamble' (Jarod Wilson) [1937053] - ath9k: ar9340_initvals: Remove unused const variable 'ar9340Modes_ub124_tx_gain_table_1p0' (Jarod Wilson) [1937053] - ath9k: ar9330_1p1_initvals: Remove unused const variable 'ar9331_common_tx_gain_offset1_1' (Jarod Wilson) [1937053] - ath: dfs_pri_detector: Demote zero/half completed kernel-doc headers (Jarod Wilson) [1937053] - ath: dfs_pattern_detector: Fix some function kernel-doc headers (Jarod Wilson) [1937053] - ath: regd: Provide description for ath_reg_apply_ir_flags's 'reg' param (Jarod Wilson) [1937053] - ath11k: Add new dfs region name for JP (Jarod Wilson) [1937053] - ath11k: fix wmi init configuration (Jarod Wilson) [1937053] - ath11k: Fix the hal descriptor mask (Jarod Wilson) [1937053] - ath11k: Fix single phy hw mode (Jarod Wilson) [1937053] - ath11k: Fix number of rules in filtered ETSI regdomain (Jarod Wilson) [1937053] - ath11k: Remove unused param from wmi_mgmt_params (Jarod Wilson) [1937053] - ath11k: Initialize complete alpha2 for regulatory change (Jarod Wilson) [1937053] - ath11k: cold boot calibration support (Jarod Wilson) [1937053] - ath11k: search DT for qcom,ath11k-calibration-variant (Jarod Wilson) [1937053] - ath11k: Remove unnecessary data sync to cpu on monitor buffer (Jarod Wilson) [1937053] - ath10k: cancel rx worker in hif_stop for SDIO (Jarod Wilson) [1937053] - ath10k: Don't iterate over not-sdata-in-driver interfaces. (Jarod Wilson) [1937053] - ath10k: fix compilation warning (Jarod Wilson) [1937053] - mac80211: assure that certain drivers adhere to DONT_REORDER flag (Jarod Wilson) [1937053] - mac80211: don't overwrite QoS TID of injected frames (Jarod Wilson) [1937053] - mac80211: adhere to Tx control flag that prevents frame reordering (Jarod Wilson) [1937053] - mac80211: add radiotap flag to assure frames are not reordered (Jarod Wilson) [1937053] - mac80211: save HE oper info in BSS config for mesh (Jarod Wilson) [1937053] - cfg80211: add support to configure HE MCS for beacon rate (Jarod Wilson) [1937053] - nl80211: fix beacon tx rate mask validation (Jarod Wilson) [1937053] - cfg80211: Add support to calculate and report 4096-QAM HE rates (Jarod Wilson) [1937053] - cfg80211: Add support to configure SAE PWE value to drivers (Jarod Wilson) [1937053] - ieee80211: Add definition for WFA DPP (Jarod Wilson) [1937053] - mac80211: use semicolons rather than commas to separate statements (Jarod Wilson) [1937053] - ath11k: FILS discovery and unsolicited broadcast probe response support (Jarod Wilson) [1937053] - ath10k: sdio: remove redundant check in for loop (Jarod Wilson) [1937053] - mac80211: add KCOV remote annotations to incoming frame processing (Jarod Wilson) [1937053] - rtw88: fix fw_fifo_addr check (Jarod Wilson) [1937053] - mac80211: don't require VHT elements for HE on 2.4 GHz (Jarod Wilson) [1937053] - cfg80211: regulatory: Fix inconsistent format argument (Jarod Wilson) [1937053] - mac80211: fix kernel-doc markups (Jarod Wilson) [1937053] - mac80211: always wind down STA state (Jarod Wilson) [1937053] - cfg80211: initialize wdev data earlier (Jarod Wilson) [1937053] - mac80211: fix use of skb payload instead of header (Jarod Wilson) [1937053] - mac80211: fix regression where EAPOL frames were sent in plaintext (Jarod Wilson) [1937053] - ath11k: remove repeated words in comments and warnings (Jarod Wilson) [1937053] - ath10k: ath10k_pci_init_irq(): workaround for checkpatch fallthrough warning (Jarod Wilson) [1937053] - ath10k: remove repeated words in comments (Jarod Wilson) [1937053] - nl80211: docs: add a description for s1g_cap parameter (Jarod Wilson) [1937053] - mac80211: use new function dev_fetch_sw_netstats (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: remove duplicated legacy_httxpowerdiff (Jarod Wilson) [1937053] - ath11k: Fix memory leak on error path (Jarod Wilson) [1937053] - mac80211: copy configured beacon tx rate to driver (Jarod Wilson) [1937053] - cfg80211: only allow S1G channels on S1G band (Jarod Wilson) [1937053] - mac80211: initialize last_rate for S1G STAs (Jarod Wilson) [1937053] - mac80211: handle lack of sband->bitrates in rates (Jarod Wilson) [1937053] - mac80211: avoid processing non-S1G elements on S1G band (Jarod Wilson) [1937053] - nl80211: fix non-split wiphy information (Jarod Wilson) [1937053] - nl80211: reduce non-split wiphy dump size (Jarod Wilson) [1937053] - ath11k: remove unnecessary casts to u32 (Jarod Wilson) [1937053] - ath11k: enable idle power save mode (Jarod Wilson) [1937053] - ath11k: start a timer to update HP for CE pipe 4 (Jarod Wilson) [1937053] - ath11k: start a timer to update REO cmd ring (Jarod Wilson) [1937053] - ath11k: start a timer to update TCL HP (Jarod Wilson) [1937053] - ath11k: set WMI pipe credit to 1 for QCA6390 (Jarod Wilson) [1937053] - ath11k: enable shadow register configuration and access (Jarod Wilson) [1937053] - ath11k: read and write registers below unwindowed address (Jarod Wilson) [1937053] - ath11k: debugfs: fix crash during rmmod (Jarod Wilson) [1937053] - ath11k: fix warning caused by lockdep_assert_held (Jarod Wilson) [1937053] - ath11k: mac: remove unused conf_mutex to solve a deadlock (Jarod Wilson) [1937053] - ath11k: pci: fix rmmod crash (Jarod Wilson) [1937053] - ath11k: add packet log support for QCA6390 (Jarod Wilson) [1937053] - ath11k: Use GFP_ATOMIC instead of GFP_KERNEL in idr_alloc (Jarod Wilson) [1937053] - ath11k: Use GFP_ATOMIC instead of GFP_KERNEL in ath11k_dp_htt_get_ppdu_desc (Jarod Wilson) [1937053] - ath11k: change to disable softirqs for ath11k_regd_update to solve deadlock (Jarod Wilson) [1937053] - ath11k: disable monitor mode on QCA6390 (Jarod Wilson) [1937053] - ath11k: pci: check TCSR_SOC_HW_VERSION (Jarod Wilson) [1937053] - ath11k: add interface_modes to hw_params (Jarod Wilson) [1937053] - ath11k: fix AP mode for QCA6390 (Jarod Wilson) [1937053] - ath11k: support loading ELF board files (Jarod Wilson) [1937053] - ath11k: Correctly check errors for calls to debugfs_create_dir() (Jarod Wilson) [1937053] - ath11k: mac: fix parenthesis alignment (Jarod Wilson) [1937053] - rtw88: pci: Power cycle device during shutdown (Jarod Wilson) [1937053] - brcmfmac: Fix warning message after dongle setup failed (Jarod Wilson) [1937053] - brcmfmac: Fix warning when hitting FW crash with flow control feature (Jarod Wilson) [1937053] - net: rtlwifi: Replace in_interrupt() for context detection (Jarod Wilson) [1937053] - net: rtlwifi: Remove in_interrupt() from debug macro (Jarod Wilson) [1937053] - net: rtlwifi: Remove void* casts related to delayed work (Jarod Wilson) [1937053] - net: mwifiex: Use netif_rx_any_context(). (Jarod Wilson) [1937053] - net: iwlwifi: Remove in_interrupt() from tracing macro. (Jarod Wilson) [1937053] - net: ipw2x00,iwlegacy,iwlwifi: Remove in_interrupt() from debug macros (Jarod Wilson) [1937053] - net: brcmfmac: Convey allocation mode as argument (Jarod Wilson) [1937053] - net: brcmfmac: Convey execution context via argument to brcmf_netif_rx() (Jarod Wilson) [1937053] - net: brcmfmac: Replace in_interrupt() (Jarod Wilson) [1937053] - ath11k: Move non-fatal warn logs to dbg level (Jarod Wilson) [1937053] - ath9k: Remove set but not used variable (Jarod Wilson) [1937053] - rtw88: show current regulatory in tx power table (Jarod Wilson) [1937053] - rtw88: add dump fw crash log (Jarod Wilson) [1937053] - rtw88: add dump firmware fifo support (Jarod Wilson) [1937053] - rtw88: handle and recover when firmware crash (Jarod Wilson) [1937053] - rtw88: increse the size of rx buffer size (Jarod Wilson) [1937053] - nl80211: extend support to config spatial reuse parameter set (Jarod Wilson) [1937053] - mac80211: Support not iterating over not-sdata-in-driver ifaces (Jarod Wilson) [1937053] - mac80211: fix some more kernel-doc in mesh (Jarod Wilson) [1937053] - cfg80211: regulatory: remove a bogus initialization (Jarod Wilson) [1937053] - mac80211: fix regression in sta connection monitor (Jarod Wilson) [1937053] - nl80211: include frequency offset in survey info (Jarod Wilson) [1937053] - mac80211: support S1G association (Jarod Wilson) [1937053] - mac80211: receive and process S1G beacons (Jarod Wilson) [1937053] - mac80211: avoid rate init for S1G band (Jarod Wilson) [1937053] - mac80211: handle S1G low rates (Jarod Wilson) [1937053] - mac80211: don't calculate duration for S1G (Jarod Wilson) [1937053] - mac80211: encode listen interval for S1G (Jarod Wilson) [1937053] - cfg80211: handle Association Response from S1G STA (Jarod Wilson) [1937053] - mac80211: convert S1G beacon to scan results (Jarod Wilson) [1937053] - cfg80211: parse S1G Operation element for BSS channel (Jarod Wilson) [1937053] - cfg80211: convert S1G beacon to scan results (Jarod Wilson) [1937053] - mac80211: support S1G STA capabilities (Jarod Wilson) [1937053] - nl80211: support S1G capability overrides in assoc (Jarod Wilson) [1937053] - mac80211: s1g: choose scanning width based on frequency (Jarod Wilson) [1937053] - mac80211: get correct default channel width for S1G (Jarod Wilson) [1937053] - wireless: radiotap: fix some kernel-doc (Jarod Wilson) [1937053] - mac80211: fix some missing kernel-doc (Jarod Wilson) [1937053] - mac80211: Inform AP when returning operating channel (Jarod Wilson) [1937053] - ath11k: fix undefined reference to 'ath11k_debugfs_htt_ext_stats_handler' (Jarod Wilson) [1937053] - mt76: mt7663s: remove max_tx_fragments limitation (Jarod Wilson) [1937053] - mt76: Convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1937053] - mt76: mt7915: add offchannel condition in switch channel command (Jarod Wilson) [1937053] - mt76: mt7915: convert to use le16_add_cpu() (Jarod Wilson) [1937053] - mt76: Fix unsigned expressions compared with zero (Jarod Wilson) [1937053] - mt76: mt7915: fix possible memory leak in mt7915_mcu_add_beacon (Jarod Wilson) [1937053] - mt76: mt76x0: Move tables used only by init.c to their own header file (Jarod Wilson) [1937053] - mt76: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - mt76: mt7615: unlock dfs bands (Jarod Wilson) [1937053] - mt76: mt7663: check isr read return value in mt7663s_rx_work (Jarod Wilson) [1937053] - mt76: mt7663s: introduce sdio tx aggregation (Jarod Wilson) [1937053] - mt76: mt7663s: fix possible quota leak in mt7663s_refill_sched_quota (Jarod Wilson) [1937053] - mt76: move pad estimation out of mt76_skb_adjust_pad (Jarod Wilson) [1937053] - mt76: mt7663s: introduce __mt7663s_xmit_queue routine (Jarod Wilson) [1937053] - mt76: mt7663s: split mt7663s_tx_update_sched in mt7663s_tx_{pick,update}_quota (Jarod Wilson) [1937053] - mt76: mt7663s: do not use altx for ctl/mgmt traffic (Jarod Wilson) [1937053] - mt76: mt7622: fix fw hang on mt7622 (Jarod Wilson) [1937053] - mt76: mt7615: fix VHT LDPC capability (Jarod Wilson) [1937053] - mt76: mt7615: Remove set but unused variable 'index' (Jarod Wilson) [1937053] - mt76: remove retry_q from struct mt76_txq and related code (Jarod Wilson) [1937053] - mt76: move txwi handling code to dma.c, since it is mmio specific (Jarod Wilson) [1937053] - mt76: mt7915: fix queue/tid mapping for airtime reporting (Jarod Wilson) [1937053] - mt76: mt7915: simplify mt7915_lmac_mapping (Jarod Wilson) [1937053] - mt76: dma: cache dma map address/len in struct mt76_queue_entry (Jarod Wilson) [1937053] - mt76: mt7915: fix HE BSS info (Jarod Wilson) [1937053] - mt76: convert from tx tasklet to tx worker thread (Jarod Wilson) [1937053] - mt76: add utility functions for deferring work to a kernel thread (Jarod Wilson) [1937053] - mt76: testmode: add a limit for queued tx_frames packets (Jarod Wilson) [1937053] - mt76: mt7615: fix antenna selection for testmode tx_frames (Jarod Wilson) [1937053] - mt76: mt7615: fix MT_ANT_SWITCH_CON register definition (Jarod Wilson) [1937053] - mt76: mt7915: fix unexpected firmware mode (Jarod Wilson) [1937053] - mt76: mt76x02: tune tx ring size (Jarod Wilson) [1937053] - mt76: mt7603: tune tx ring size (Jarod Wilson) [1937053] - mt76: remove struct mt76_sw_queue (Jarod Wilson) [1937053] - mt76: rely on AQL for burst size limits on tx queueing (Jarod Wilson) [1937053] - mt76: remove swq from struct mt76_sw_queue (Jarod Wilson) [1937053] - mt76: remove qid argument to drv->tx_complete_skb (Jarod Wilson) [1937053] - mt76: unify queue tx cleanup code (Jarod Wilson) [1937053] - mt76: sdio: fix use of q->head and q->tail (Jarod Wilson) [1937053] - mt76: usb: fix use of q->head and q->tail (Jarod Wilson) [1937053] - mt76: mt7603: check for single-stream EEPROM configuration (Jarod Wilson) [1937053] - mt76: add memory barrier to DMA queue kick (Jarod Wilson) [1937053] - mt76: mt7915: add support for accessing mapped registers via bus ops (Jarod Wilson) [1937053] - mt76: mt7615: significantly reduce interrupt load (Jarod Wilson) [1937053] - mt76: mt7915: significantly reduce interrupt load (Jarod Wilson) [1937053] - mt76: mt7915: schedule tx tasklet in mt7915_mac_tx_free (Jarod Wilson) [1937053] - mt76: dma: update q->queued immediately on cleanup (Jarod Wilson) [1937053] - mt76: mt7915: optimize mt7915_mac_sta_poll (Jarod Wilson) [1937053] - mt76: mt7615: fix reading airtime statistics (Jarod Wilson) [1937053] - mt76: mt7663u: fix dma header initialization (Jarod Wilson) [1937053] - mt76: fix a possible NULL pointer dereference in mt76_testmode_dump (Jarod Wilson) [1937053] - mt76: mt7615: fix a possible NULL pointer dereference in mt7615_pm_wake_work (Jarod Wilson) [1937053] - mt76: mt7615: fix possible memory leak in mt7615_tm_set_tx_power (Jarod Wilson) [1937053] - mt76: mt7663s: fix unable to handle kernel paging request (Jarod Wilson) [1937053] - mt76: mt7663s: fix resume failure (Jarod Wilson) [1937053] - mt76: mt7663s: use NULL instead of 0 in sdio code (Jarod Wilson) [1937053] - mt76: mt7615: release mutex in mt7615_reset_test_set (Jarod Wilson) [1937053] - mt76: mt7915: add Tx A-MSDU offloading support (Jarod Wilson) [1937053] - mt76: mt7915: add missing flags in WMM parameter settings (Jarod Wilson) [1937053] - mt76: mt7915: simplify aggregation session check (Jarod Wilson) [1937053] - mt76: mt7615: remove mtxq->agg_ssn assignment (Jarod Wilson) [1937053] - mt76: move mt76_check_agg_ssn to driver tx_prepare calls (Jarod Wilson) [1937053] - mt76: mt7915: enable offloading of sequence number assignment (Jarod Wilson) [1937053] - mt76: mt7915: increase tx retry count (Jarod Wilson) [1937053] - mt76: mt7915: clean up station stats polling and rate control update (Jarod Wilson) [1937053] - mt76: mt7915: do not do any work in napi poll after calling napi_complete_done() (Jarod Wilson) [1937053] - mt76: mt7615: do not do any work in napi poll after calling napi_complete_done() (Jarod Wilson) [1937053] - mt76: mt76x02: clean up and fix interrupt masking in the irq handler (Jarod Wilson) [1937053] - mt76: mt7615: only clear unmasked interrupts in irq tasklet (Jarod Wilson) [1937053] - mt76: mt7915: clean up and fix interrupt masking in the irq handler (Jarod Wilson) [1937053] - mt76: set interrupt mask register to 0 before requesting irq (Jarod Wilson) [1937053] - mt76: fix double DMA unmap of the first buffer on 7615/7915 (Jarod Wilson) [1937053] - mt76: mt7915: fix crash on tx rate report for invalid stations (Jarod Wilson) [1937053] - mt76: mt7915: enable U-APSD on AP side (Jarod Wilson) [1937053] - mt76: mt76s: get rid of unused variable (Jarod Wilson) [1937053] - mt76: mt76s: move tx/rx processing in 2 separate works (Jarod Wilson) [1937053] - mt76: mt76s: move status processing in txrx wq (Jarod Wilson) [1937053] - mt76: mt7663s: move rx processing in txrx wq (Jarod Wilson) [1937053] - mt76: mt76s: move tx processing in a dedicated wq (Jarod Wilson) [1937053] - mt76: mt76s: fix oom in mt76s_tx_queue_skb_raw (Jarod Wilson) [1937053] - mt76: mt7615: reschedule runtime-pm receiving a tx interrupt (Jarod Wilson) [1937053] - mt76: do not inject packets if MT76_STATE_PM is set (Jarod Wilson) [1937053] - mt76: mt7615: hold mt76 lock queueing wd in mt7615_queue_key_update (Jarod Wilson) [1937053] - mt76: mt7663s: move drv_own/fw_own in mt7615_mcu_ops (Jarod Wilson) [1937053] - mt76: mt7615: move drv_own/fw_own in mt7615_mcu_ops (Jarod Wilson) [1937053] - mt76: mt7615: register ext_phy if DBDC is detected (Jarod Wilson) [1937053] - brcmfmac: check return value of driver_for_each_device() (Jarod Wilson) [1937053] - ath11k: Remove unused function ath11k_htc_restore_tx_skb() (Jarod Wilson) [1937053] - ath11k: remove redundant num_keep_alive_pattern assignment (Jarod Wilson) [1937053] - ath11k: wmi: remove redundant configuration values from init (Jarod Wilson) [1937053] - ath11k: Add support spectral scan for IPQ6018 (Jarod Wilson) [1937053] - ath11k: debugfs: move some function declarations to correct header files (Jarod Wilson) [1937053] - ath11k: rename debug_htt_stats.[c|h] to debugfs_htt_stats.[c|h] (Jarod Wilson) [1937053] - ath11k: debugfs: use ath11k_debugfs_ prefix (Jarod Wilson) [1937053] - ath11k: refactor debugfs code into debugfs.c (Jarod Wilson) [1937053] - ath10k: Use bdf calibration variant for snoc targets (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: use true,false for bool variable large_cfo_hit (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: use true,false for bool variable large_cfo_hit (Jarod Wilson) [1937053] - rtlwifi: rtl8192ee: use true,false for bool variable large_cfo_hit (Jarod Wilson) [1937053] - rtlwifi: Use ffs in _phy_calculate_bit_shift (Jarod Wilson) [1937053] - mt7601u: Convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1937053] - ath11k: Remove rproc references from common core layer (Jarod Wilson) [1937053] - ath9k: hif_usb: fix race condition between usb_get_urb() and usb_kill_anchored_urbs() (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192ce: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: fix comparison to bool warning in phy.c (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: fix comparison to bool warning in mac.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192c: fix comparison to bool warning in phy_common.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192ee: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - mac80211: fix some encapsulation offload kernel-doc (Jarod Wilson) [1937053] - cfg80211: add missing kernel-doc for S1G band capabilities (Jarod Wilson) [1937053] - mac80211: Unsolicited broadcast probe response support (Jarod Wilson) [1937053] - nl80211: Unsolicited broadcast probe response support (Jarod Wilson) [1937053] - mac80211: Add FILS discovery support (Jarod Wilson) [1937053] - nl80211: Add FILS discovery support (Jarod Wilson) [1937053] - mac80211: allow bigger A-MSDU sizes in VHT, even if HT is limited (Jarod Wilson) [1937053] - nl80211: support setting S1G channels (Jarod Wilson) [1937053] - nl80211: correctly validate S1G beacon head (Jarod Wilson) [1937053] - cfg80211: regulatory: handle S1G channels (Jarod Wilson) [1937053] - nl80211: advertise supported channel width in S1G (Jarod Wilson) [1937053] - ieee80211: redefine S1G bits with GENMASK (Jarod Wilson) [1937053] - mac80211: reorganize code to remove a forward declaration (Jarod Wilson) [1937053] - mac80211: extend ieee80211_tx_status_ext to support bulk free (Jarod Wilson) [1937053] - mac80211: support using ieee80211_tx_status_ext to free skbs without status info (Jarod Wilson) [1937053] - mac80211: unify 802.3 (offload) and 802.11 tx status codepath (Jarod Wilson) [1937053] - mac80211: optimize station connection monitor (Jarod Wilson) [1937053] - mac80211: notify the driver when a sta uses 4-address mode (Jarod Wilson) [1937053] - mac80211: swap NEED_TXPROCESSING and HW_80211_ENCAP tx flags (Jarod Wilson) [1937053] - mac80211: remove tx status call to ieee80211_sta_register_airtime (Jarod Wilson) [1937053] - mac80211: reduce duplication in tx status functions (Jarod Wilson) [1937053] - mac80211: rework tx encapsulation offload API (Jarod Wilson) [1937053] - mac80211: set info->control.hw_key for encap offload packets (Jarod Wilson) [1937053] - mac80211: skip encap offload for tx multicast/control packets (Jarod Wilson) [1937053] - mac80211: check and refresh aggregation session in encap offload tx (Jarod Wilson) [1937053] - mac80211: add missing queue/hash initialization to 802.3 xmit (Jarod Wilson) [1937053] - cfg80211: add more comments for ap_isolate in bss_parameters (Jarod Wilson) [1937053] - lib80211: Remove unused macro DRV_NAME (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: fix comparison pointer to bool warning in phy.c (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: fix comparison pointer to bool warning in trx.c (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: fix comparison pointer to bool warning in rf.c (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix comparison pointer to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix comparison pointer to bool warning in trx.c (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix comparison pointer to bool warning in phy.c (Jarod Wilson) [1937053] - rtw88: rtw8822c: eliminate code duplication, use native swap() function (Jarod Wilson) [1937053] - brcmsmac: main: Eliminate empty brcms_c_down_del_timer() (Jarod Wilson) [1937053] - brcmsmac: phy_lcn: Remove unused variable 'lcnphy_rx_iqcomp_table_rev0' (Jarod Wilson) [1937053] - brcmsmac: phytbl_lcn: Remove unused array 'dot11lcn_gain_tbl_rev1' (Jarod Wilson) [1937053] - brcmfmac: support SAE authentication offload in AP mode (Jarod Wilson) [1937053] - brcmfmac: support 4-way handshake offloading for WPA/WPA2-PSK in AP mode (Jarod Wilson) [1937053] - ath10k: Remove unused macro ATH10K_ROC_TIMEOUT_HZ (Jarod Wilson) [1937053] - ath11k: Remove unused inline function htt_htt_stats_debug_dump() (Jarod Wilson) [1937053] - ath11k: fix link error when CONFIG_REMOTEPROC is disabled (Jarod Wilson) [1937053] - ath11k: remove calling ath11k_init_hw_params() second time (Jarod Wilson) [1937053] - ath11k: add raw mode and software crypto support (Jarod Wilson) [1937053] - ath11k: add ipq6018 support (Jarod Wilson) [1937053] - ath11k: move target ce configs to hw_params (Jarod Wilson) [1937053] - net: wireless: drop bogus CRYPTO_xxx Kconfig selects (Jarod Wilson) [1937053] - rtlwifi: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - brcmsmac: fix memory leak in wlc_phy_attach_lcnphy (Jarod Wilson) [1937053] - rtl8xxxu: prevent potential memory leak (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: Delete a stray tab (Jarod Wilson) [1937053] - ath11k: Add peer max mpdu parameter in peer assoc command (Jarod Wilson) [1937053] - ath10k: Add support for chain1 regulator supply voting (Jarod Wilson) [1937053] - brcmfmac: set F2 SDIO block size to 128 bytes for BCM4329 (Jarod Wilson) [1937053] - brcmfmac: drop chip id from debug messages (Jarod Wilson) [1937053] - brcmfmac: increase F2 watermark for BCM4329 (Jarod Wilson) [1937053] - mwifiex: sdio: Fix -Wunused-const-variable warnings (Jarod Wilson) [1937053] - mwifiex: wmm: Fix -Wunused-const-variable warnings (Jarod Wilson) [1937053] - mt7601u: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rtlwifi: Remove temporary definition of RT_TRACE (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - brcmsmac: phytbl_n: Remove a few unused arrays (Jarod Wilson) [1937053] - brcmsmac: phytbl_lcn: Remove unused array 'dot11lcnphytbl_rx_gain_info_rev1' (Jarod Wilson) [1937053] - brcmsmac: phy_n: Remove a bunch of unused variables (Jarod Wilson) [1937053] - brcmsmac: phy_lcn: Remove a bunch of unused variables (Jarod Wilson) [1937053] - prism54: isl_ioctl: Remove unused variable 'j' (Jarod Wilson) [1937053] - rtw88: debug: Remove unused variables 'val' (Jarod Wilson) [1937053] - brcmfmac: fwsignal: Finish documenting 'brcmf_fws_mac_descriptor' (Jarod Wilson) [1937053] - brcmsmac: phy_cmn: Remove a unused variables 'vbat' and 'temp' (Jarod Wilson) [1937053] - brcmfmac: p2p: Fix a couple of function headers (Jarod Wilson) [1937053] - brcmsmac: ampdu: Remove a couple set but unused variables (Jarod Wilson) [1937053] - mwifiex: pcie: Move tables to the only place they're used (Jarod Wilson) [1937053] - ath10k: Get rid of "per_ce_irq" hw param (Jarod Wilson) [1937053] - ath10k: Keep track of which interrupts fired, don't poll them (Jarod Wilson) [1937053] - ath10k: Add interrupt summary based CE processing (Jarod Wilson) [1937053] - rtlwifi: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rtl818x_pci: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - p54: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8192c: phy_common: Remove unused variable 'bbvalue' (Jarod Wilson) [1937053] - brcmfmac: fwsignal: Remove unused variable 'brcmf_fws_prio2fifo' (Jarod Wilson) [1937053] - b43: phy_ht: Remove 9 year old TODO (Jarod Wilson) [1937053] - brcmfmac: btcoex: Update 'brcmf_btcoex_state' and demote others (Jarod Wilson) [1937053] - brcmfmac: firmware: Demote seemingly unintentional kernel-doc header (Jarod Wilson) [1937053] - brcmsmac: main: Remove a bunch of unused variables (Jarod Wilson) [1937053] - brcmfmac: p2p: Fix a bunch of function docs (Jarod Wilson) [1937053] - brcmsmac: ampdu: Remove a bunch of unused variables (Jarod Wilson) [1937053] - brcmfmac: p2p: Deal with set but unused variables (Jarod Wilson) [1937053] - mt7601u: phy: Fix misnaming when documented function parameter 'dac' (Jarod Wilson) [1937053] - rtlwifi: rtl8723-common: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8723be Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192se Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192ee: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192ce: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192-common: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: btcoexist: Replace RT_TRACE with rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: Replace RT_TRACE with rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: Start changing RT_TRACE into rtl_dbg (Jarod Wilson) [1937053] - ath10k: wmi: Use struct_size() helper in ath10k_wmi_alloc_skb() (Jarod Wilson) [1937053] - ath11k: fix missing error check on call to ath11k_pci_get_user_msi_assignment (Jarod Wilson) [1937053] - ath11k: fix spelling mistake "moniter" -> "monitor" (Jarod Wilson) [1937053] - nl80211: support SAE authentication offload in AP mode (Jarod Wilson) [1937053] - atmel: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - b43: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - brcmfmac: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rt2x00: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - b43: phy_n: Add empty braces around empty statements (Jarod Wilson) [1937053] - b43: phy_common: Demote non-conformant kerneldoc header (Jarod Wilson) [1937053] - brcmsmac: mac80211_if: Demote a few non-conformant kerneldoc headers (Jarod Wilson) [1937053] - brcmfmac: fweh: Fix docrot related function documentation issues (Jarod Wilson) [1937053] - brcmfmac: fweh: Remove set but unused variable 'err' (Jarod Wilson) [1937053] - b43: main: Add braces around empty statements (Jarod Wilson) [1937053] - atmel: Demote non-kerneldoc header to standard comment block (Jarod Wilson) [1937053] - nl80211: rename csa counter attributes countdown counters (Jarod Wilson) [1937053] - nl80211: add support for setting fixed HE rate/gi/ltf (Jarod Wilson) [1937053] - ath11k: return -ENOMEM on allocation failure (Jarod Wilson) [1937053] - ath11k: return error if firmware request fails (Jarod Wilson) [1937053] - ath9k: Do not select MAC80211_LEDS by default (Jarod Wilson) [1937053] - ath9k: ar5008_initvals: Move ar5416Bank{0,1,2,3,7} to where they are used (Jarod Wilson) [1937053] - ath9k: ar5008_initvals: Remove unused table entirely (Jarod Wilson) [1937053] - ath9k: ar9001_initvals: Remove unused array 'ar5416Bank6_9100' (Jarod Wilson) [1937053] - ath9k: ar9002_initvals: Remove unused array 'ar9280PciePhy_clkreq_off_L1_9280' (Jarod Wilson) [1937053] - ath9k_htc: Do not select MAC80211_LEDS by default (Jarod Wilson) [1937053] - rtw88: 8822c: update tx power limit tables to RF v20.1 (Jarod Wilson) [1937053] - rtw88: use read_poll_timeout_atomic() for poll loop (Jarod Wilson) [1937053] - rtw88: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rtw88: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - mwifiex: don't call del_timer_sync() on uninitialized timer (Jarod Wilson) [1937053] - mwifiex: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - mwifiex: Clean up some err and dbg messages (Jarod Wilson) [1937053] - mwifiex: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - nl80211: fix PORT_AUTHORIZED wording to reflect behavior (Jarod Wilson) [1937053] - cfg80211: add helper fn for adjacent rule channels (Jarod Wilson) [1937053] - cfg80211: add helper fn for single rule channels (Jarod Wilson) [1937053] - nl80211: use NLA_POLICY_RANGE(NLA_BINARY, ...) for a few attributes (Jarod Wilson) [1937053] - nl80211: clean up code/policy a bit (Jarod Wilson) [1937053] - net: wireless: wext_compat.c: delete duplicated word (Jarod Wilson) [1937053] - net: wireless: sme.c: delete duplicated word (Jarod Wilson) [1937053] - net: wireless: scan.c: delete or fix duplicated words (Jarod Wilson) [1937053] - net: wireless: reg.c: delete duplicated words + fix punctuation (Jarod Wilson) [1937053] - net: wireless: delete duplicated word + fix grammar (Jarod Wilson) [1937053] - net: mac80211: mesh.h: delete duplicated word (Jarod Wilson) [1937053] - net: mac80211: agg-rx.c: fix duplicated words (Jarod Wilson) [1937053] - net: ath11k: constify ath11k_thermal_ops (Jarod Wilson) [1937053] - ath10k: Add new api to support reset TID config (Jarod Wilson) [1937053] - ath10k: Add new api to support TID specific configuration (Jarod Wilson) [1937053] - ath10k: Move rate mask validation function up in the file (Jarod Wilson) [1937053] - ath10k: Add wmi command support for station specific TID config (Jarod Wilson) [1937053] - ath10k: sdio: add firmware coredump support (Jarod Wilson) [1937053] - ath10k: add bus type for each layout of coredump (Jarod Wilson) [1937053] - netlink/wireless: consistently use NLA_POLICY_MIN_LEN() (Jarod Wilson) [1937053] - netlink/wireless: consistently use NLA_POLICY_EXACT_LEN() (Jarod Wilson) [1937053] - rndis_wlan: tighten check of rndis_query_oid return (Jarod Wilson) [1937053] - rtw88: fix spelling mistake: "unsupport" -> "unsupported" (Jarod Wilson) [1937053] - brcmfmac: use *ph to print small buffer (Jarod Wilson) [1937053] - brcm80211: fix possible memleak in brcmf_proto_msgbuf_attach (Jarod Wilson) [1937053] - ath11k: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - ath10k: fix VHT NSS calculation when STBC is enabled (Jarod Wilson) [1937053] - ath10k: Register shutdown handler (Jarod Wilson) [1937053] - ath11k: reset MHI during power down and power up (Jarod Wilson) [1937053] - ath11k: use TCL_DATA_RING_0 for QCA6390 (Jarod Wilson) [1937053] - ath11k: process both lmac rings for QCA6390 (Jarod Wilson) [1937053] - ath11k: assign correct search flag and type for QCA6390 (Jarod Wilson) [1937053] - ath11k: delay vdev_start for QCA6390 (Jarod Wilson) [1937053] - ath11k: refine the phy_id check in ath11k_reg_chan_list_event (Jarod Wilson) [1937053] - ath11k: setup QCA6390 rings for both rxdmas (Jarod Wilson) [1937053] - ath11k: don't initialize rxdma1 related ring (Jarod Wilson) [1937053] - ath11k: enable DP interrupt setup for QCA6390 (Jarod Wilson) [1937053] - ath11k: dp: redefine peer_map and peer_unmap (Jarod Wilson) [1937053] - ath11k: wmi: put hardware to DBS mode (Jarod Wilson) [1937053] - ath11k: initialize wmi config based on hw_params (Jarod Wilson) [1937053] - ath11k: force single pdev only for QCA6390 (Jarod Wilson) [1937053] - ath11k: disable CE interrupt before hif start (Jarod Wilson) [1937053] - ath11k: ce: get msi_addr and msi_data before srng setup (Jarod Wilson) [1937053] - ath11k: hal: assign msi_addr and msi_data to srng (Jarod Wilson) [1937053] - ath11k: ce: remove CE_COUNT() macro (Jarod Wilson) [1937053] - ath11k: ce: remove host_ce_config_wlan macro (Jarod Wilson) [1937053] - ath11k: ce: support different CE configurations (Jarod Wilson) [1937053] - ath11k: hal: cleanup dynamic register macros (Jarod Wilson) [1937053] - ath11k: hal: create register values dynamically (Jarod Wilson) [1937053] - ath10k: move enable_pll_clk call to ath10k_core_start() (Jarod Wilson) [1937053] - ath10k: Fix the size used in a 'dma_free_coherent()' call in an error handling path (Jarod Wilson) [1937053] - ath10k: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - ath9k: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support (Jarod Wilson) [1937053] - ath11k: hal: create hw_srng_config dynamically (Jarod Wilson) [1937053] - ath11k: enable internal sleep clock (Jarod Wilson) [1937053] - ath11k: fix KASAN warning of ath11k_qmi_wlanfw_wlan_cfg_send (Jarod Wilson) [1937053] - ath11k: fix memory OOB access in qmi_decode (Jarod Wilson) [1937053] - ath11k: allocate smaller chunks of memory for firmware (Jarod Wilson) [1937053] - ath11k: setup ce tasklet for control path (Jarod Wilson) [1937053] - ath11k: configure copy engine msi address in CE srng (Jarod Wilson) [1937053] - ath11k: pci: add read32() and write32() hif operations (Jarod Wilson) [1937053] - ath11k: fill appropriate QMI service instance id for QCA6390 (Jarod Wilson) [1937053] - ath11k: add board file support for PCI devices (Jarod Wilson) [1937053] - ath11k: add support for m3 firmware (Jarod Wilson) [1937053] - ath11k: use remoteproc only with AHB devices (Jarod Wilson) [1937053] - ath11k: pci: add HAL, CE and core initialisation (Jarod Wilson) [1937053] - ath11k: register MHI controller device for QCA6390 (Jarod Wilson) [1937053] - ath11k: implement ath11k_core_pre_init() (Jarod Wilson) [1937053] - ath11k: pci: add MSI config initialisation (Jarod Wilson) [1937053] - ath11k: pci: setup resources (Jarod Wilson) [1937053] - ath11k: add simple PCI client driver for QCA6390 chipset (Jarod Wilson) [1937053] - ath11k: move ring mask definitions to hw_params (Jarod Wilson) [1937053] - ath11k: add hw_params entry for QCA6390 (Jarod Wilson) [1937053] - ath11k: do not depend on ARCH_QCOM for ath11k (Jarod Wilson) [1937053] - ath10k: correct the array index from mcs index for HT mode for QCA6174 (Jarod Wilson) [1937053] - ath10k: enable supports_peer_stats_info for QCA6174 PCI devices (Jarod Wilson) [1937053] - ath10k: remove return for NL80211_STA_INFO_TX_BITRATE (Jarod Wilson) [1937053] - ath10k: add wmi service peer stat info for wmi tlv (Jarod Wilson) [1937053] - ath10k: start recovery process when payload length exceeds max htc length for sdio (Jarod Wilson) [1937053] - ath: drop unnecessary list_empty (Jarod Wilson) [1937053] - ath9k: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - ath9k: Fix typo in function name (Jarod Wilson) [1937053] - ath9k: Replace HTTP links with HTTPS ones (Jarod Wilson) [1937053] - ath10k: check idx validity in __ath10k_htt_rx_ring_fill_n() (Jarod Wilson) [1937053] - ath9k: Check the return value of pcie_capability_read_*() (Jarod Wilson) [1937053] - ath11k: remove define ATH11K_QMI_DEFAULT_CAL_FILE_NAME (Jarod Wilson) [1937053] - ath11k: don't use defines in hw_params (Jarod Wilson) [1937053] - ath11k: qmi: cleanup info messages (Jarod Wilson) [1937053] - ath11k: remove useless info messages (Jarod Wilson) [1937053] - ath11k: change ath11k_core_fetch_board_data_api_n() to use ath11k_core_create_firmware_path() (Jarod Wilson) [1937053] - ath11k: don't use defines for hw specific firmware directories (Jarod Wilson) [1937053] - ath11k: create a common function to request all firmware files (Jarod Wilson) [1937053] - ath11k: Add bdf-addr in hw_params (Jarod Wilson) [1937053] - ath11k: add hw_ops for pdev id to hw_mac mapping (Jarod Wilson) [1937053] - ath11k: define max_radios in hw_params (Jarod Wilson) [1937053] - ath11k: convert ath11k_hw_params to an array (Jarod Wilson) [1937053] - ath11k: ahb: call ath11k_core_init() before irq configuration (Jarod Wilson) [1937053] - ath10k: pci: fix memcpy size of bmi response (Jarod Wilson) [1937053] - ath11k: rename default board file (Jarod Wilson) [1937053] - ath11k: update firmware files read path (Jarod Wilson) [1937053] - ath10k: provide survey info as accumulated data (Jarod Wilson) [1937053] - ath10k: fix retry packets update in station dump (Jarod Wilson) [1937053] - ath10k: Wait until copy complete is actually done before completing (Jarod Wilson) [1937053] - mac80211_hwsim: add 6GHz channels (Jarod Wilson) [1937053] - mac80211_hwsim: indicate support for S1G (Jarod Wilson) [1937053] - mac80211_hwsim: write TSF timestamp correctly to S1G beacon (Jarod Wilson) [1937053] - mac80211_hwsim: fix typo in kernel-doc (Jarod Wilson) [1937053] - mac80211: rename csa counters to countdown counters (Jarod Wilson) [1937053] - mac80211_hwsim: report the WIPHY_FLAG_SUPPORTS_5_10_MHZ capability (Jarod Wilson) [1937053] - mac80211_hwsim: Claim support for setting Beacon frame TX legacy rate (Jarod Wilson) [1937053] - mac80211_hwsim: Advertise support for multicast RX registration (Jarod Wilson) [1937053] - mac80211_hwsim: indicate in IBSS that we have transmitted beacons (Jarod Wilson) [1937053] - mac80211_hwsim: notify wmediumd of used MAC addresses (Jarod Wilson) [1937053] - mac80211_hwsim: use GFP_ATOMIC under spin lock (Jarod Wilson) [1937053] - mac80211_hwsim: Use kstrndup() in place of kasprintf() (Jarod Wilson) [1937053] - mac80211_hwsim: add frame transmission support over virtio (Jarod Wilson) [1937053] - mac80211_hwsim: enable Beacon protection (Jarod Wilson) [1937053] - mac80211_hwsim: add power save support (Jarod Wilson) [1937053] - mac80211_hwsim: remove maximum TX power (Jarod Wilson) [1937053] - mac80211_hwsim: use DEFINE_DEBUGFS_ATTRIBUTE to define debugfs fops (Jarod Wilson) [1937053] - mac80211_hwsim: add support for OCB (Jarod Wilson) [1937053] - mac80211_hwsim: add more 5GHz channels, 5/10 MHz support (Jarod Wilson) [1937053] - mac80211_hwsim: fix incorrect dev_alloc_name failure goto (Jarod Wilson) [1937053] - mac80211_hwsim: Register support for HE meshpoint (Jarod Wilson) [1937053] - mac80211_hwsim: fill boottime_ns in netlink RX path (Jarod Wilson) [1937053] - mac80211_hwsim: Fix possible null-pointer dereferences in hwsim_dump_radio_nl() (Jarod Wilson) [1937053] - mac80211_hwsim: Extended Key ID API update (Jarod Wilson) [1937053] - mac80211_hwsim: Fix a typo in the name of function 'mac80211_hswim_he_capab()' (Jarod Wilson) [1937053] - mac80211_hwsim: Extended Key ID support (Jarod Wilson) [1937053] - mac80211_hwsim: set p2p device interface support indication (Jarod Wilson) [1937053] - mac80211_hwsim: calculate if_combination.max_interfaces (Jarod Wilson) [1937053] - mac80211_hwsim: propagate genlmsg_reply return code (Jarod Wilson) [1937053] - mac80211_hwsim: Declare support for Multi-BSSID (Jarod Wilson) [1937053] - mac80211_hwsim: Support boottime in scan results (Jarod Wilson) [1937053] - mac80211_hwsim: check that n_limits makes sense (Jarod Wilson) [1937053] - mac80211_hwsim: fix overwriting of if_combination (Jarod Wilson) [1937053] - mac80211_hwsim: fixes kernel crash during mac80211_hwsim init (Jarod Wilson) [1937053] - mac80211_hwsim: allow configurable cipher types (Jarod Wilson) [1937053] - mac80211_hwsim: allow setting iftype support (Jarod Wilson) [1937053] - mac80211_hwsim: move HWSIM_ATTR_RADIO_NAME parsing last (Jarod Wilson) [1937053] - mac80211_hwsim: fix module init error paths for netlink (Jarod Wilson) [1937053] - mac80211_hwsim: drop now unused work-queue from hwsim (Jarod Wilson) [1937053] - mac80211_hwsim: do not omit multicast announce of first added radio (Jarod Wilson) [1937053] - mac80211_hwsim: fix race in radio destruction from netlink notifier (Jarod Wilson) [1937053] - mac80211_hwsim: fix locking when iterating radios during ns exit (Jarod Wilson) [1937053] - wireless: align to draft 11ax D3.0 (Jarod Wilson) [1937053] - mac80211_hwsim: correct use of IEEE80211_VHT_CAP_RXSTBC_X (Jarod Wilson) [1937053] - mac80211_hwsim: require at least one channel (Jarod Wilson) [1937053] - mac80211_hwsim: Add support for HE (Jarod Wilson) [1937053] - net/fq_impl: do not maintain a backlog-sorted list of flows (Jarod Wilson) [1937053] - net/fq_impl: drop get_default_func, move default flow to fq_tin (Jarod Wilson) [1937053] - net/fq_impl: bulk-free packets from a flow on overmemory (Jarod Wilson) [1937053] - net/fq_impl: use skb_get_hash instead of skb_get_hash_perturb (Jarod Wilson) [1937053] - net/fq_impl: Switch to kvmalloc() for memory allocation (Jarod Wilson) [1937053] - mac80211: set NETIF_F_LLTX when using intermediate tx queues (Jarod Wilson) [1937053] - mac80211: calculate hash for fq without holding fq->lock in itxq enqueue (Jarod Wilson) [1937053] - nvme-tcp: fix misuse of __smp_processor_id with preemption enabled (Gopal Tiwari) [1964227] - powerpc/smp: Cache CPU to chip lookup (Daniel Henrique Barboza) [1934421] - Revert "powerpc/topology: Update topology_core_cpumask" (Daniel Henrique Barboza) [1934421] - powerpc/smp: Reintroduce cpu_core_mask (Daniel Henrique Barboza) [1934421] - scsi: smartpqi: Remove unused functions (Don Brace) [1952154] - scsi: smartpqi: Fix device pointer variable reference static checker issue (Don Brace) [1952154] - scsi: smartpqi: Fix blocks_per_row static checker issue (Don Brace) [1952154] - scsi: smartpqi: Update version to 2.1.8-045 (Don Brace) [1952154] - scsi: smartpqi: Add new PCI IDs (Don Brace) [1952154] - scsi: smartpqi: Correct system hangs when resuming from hibernation (Don Brace) [1952154] - scsi: smartpqi: Update enclosure identifier in sysfs (Don Brace) [1952154] - scsi: smartpqi: Add additional logging for LUN resets (Don Brace) [1952154] - scsi: smartpqi: Update SAS initiator_port_protocols and target_port_protocols (Don Brace) [1952154] - scsi: smartpqi: Add phy ID support for the physical drives (Don Brace) [1952154] - scsi: smartpqi: Convert snprintf() to scnprintf() (Don Brace) [1952154] - scsi: smartpqi: Fix driver synchronization issues (Don Brace) [1952154] - scsi: smartpqi: Update device scan operations (Don Brace) [1952154] - scsi: smartpqi: Update OFA management (Don Brace) [1952154] - scsi: smartpqi: Update RAID bypass handling (Don Brace) [1952154] - scsi: smartpqi: Update suspend/resume and shutdown (Don Brace) [1952154] - scsi: smartpqi: Synchronize device resets with mutex (Don Brace) [1952154] - scsi: smartpqi: Update soft reset management for OFA (Don Brace) [1952154] - scsi: smartpqi: Update event handler (Don Brace) [1952154] - scsi: smartpqi: Add support for wwid (Don Brace) [1952154] - scsi: smartpqi: Remove timeouts from internal cmds (Don Brace) [1952154] - scsi: smartpqi: Disable WRITE SAME for HBA NVMe disks (Don Brace) [1952154] - scsi: smartpqi: Add host level stream detection enable (Don Brace) [1952154] - scsi: smartpqi: Add stream detection (Don Brace) [1952154] - scsi: smartpqi: Align code with oob driver (Don Brace) [1952154] - scsi: smartpqi: Add support for long firmware version (Don Brace) [1952154] - scsi: smartpqi: Add support for BMIC sense feature cmd and feature bits (Don Brace) [1952154] - scsi: smartpqi: Add support for RAID1 writes (Don Brace) [1952154] - scsi: smartpqi: Add support for RAID5 and RAID6 writes (Don Brace) [1952154] - scsi: smartpqi: Refactor scatterlist code (Don Brace) [1952154] - scsi: smartpqi: Refactor aio submission code (Don Brace) [1952154] - scsi: smartpqi: Add support for new product ids (Don Brace) [1952154] - scsi: smartpqi: Correct request leakage during reset operations (Don Brace) [1952154] - scsi: smartpqi: Use host-wide tag space (Don Brace) [1952154] - smartpqi: Use fallthrough pseudo-keyword (Don Brace) [1952154] - scsi: smartpqi: Support device deletion via sysfs (Don Brace) [1952154] - scsi: smartpqi: Use scnprintf() for avoiding potential buffer overflow (Don Brace) [1952154] - smartpqi: remove ioremap_nocache and devm_ioremap_nocache (Don Brace) [1952154] - smartpqi: Use sizeof_field() macro (Don Brace) [1952154] - smartpqi: phase out dma_zalloc_coherent() (Don Brace) [1952154] - scsi: smartpqi: add support for huawei controllers (Don Brace) [1952154] - block: only update parent bi_status when bio fail (Ming Lei) [1945457] - kbuild: trace functions in subdirectories of lib/ (Joe Lawrence) [1942601] - kbuild: introduce ccflags-remove-y and asflags-remove-y (Joe Lawrence) [1942601] - redhat/configs: Add CONFIG_AMD_PMC (David Arcari) [1961755] - platform/x86: amd-pmc: put device on error paths (David Arcari) [1961755] - platform/x86: amd-pmc: Fix CONFIG_DEBUG_FS check (David Arcari) [1961755] - platform/x86: amd-pmc: Add AMD platform support for S2Idle (David Arcari) [1961755] - crypto: DRBG - switch to HMAC SHA512 DRBG as default DRBG (Vladis Dronov) [1956808] - x86/asm: Annotate movdir64b()'s dst argument with __iomem (Jerry Snitselaar) [1920747] - x86/asm: Add a missing __iomem annotation in enqcmds() (Jerry Snitselaar) [1920747]- fm10k: amend removal of MODULE_VERSION (Vladis Dronov) [1955730] - hv_netvsc: Make netvsc/VF binding check both MAC and serial number (Mohammed Gamal) [1940927] - hv_netvsc: Add error handling while switching data path (Mohammed Gamal) [1940927] - netvsc: Update driver to use ethtool_sprintf (Mohammed Gamal) [1940927] - hv_netvsc: Add a comment clarifying batching logic (Mohammed Gamal) [1940927] - hv_netvsc: Fix validation in netvsc_linkstatus_callback() (Mohammed Gamal) [1940927] - hv_netvsc: Restrict configurations on isolated guests (Mohammed Gamal) [1940927] - hv_netvsc: Load and store the proper (NBL_HASH_INFO) per-packet info (Mohammed Gamal) [1940927] - hv_netvsc: Allocate the recv_buf buffers after NVSP_MSG1_TYPE_SEND_RECV_BUF (Mohammed Gamal) [1940927] - hv_netvsc: Reset the RSC count if NVSP_STAT_FAIL in netvsc_receive() (Mohammed Gamal) [1940927] - hv_netvsc: Copy packets sent by Hyper-V out of the receive buffer (Mohammed Gamal) [1940927] - net/hyperv: use skb_vlan_tag_*() helpers (Mohammed Gamal) [1940927] - net/vlan: introduce skb_vlan_tag_get_cfi() helper (Mohammed Gamal) [1940927] - hv_netvsc: Add (more) validation for untrusted Hyper-V values (Mohammed Gamal) [1940927] - hv_netvsc: Process NETDEV_GOING_DOWN on VF hot remove (Mohammed Gamal) [1940927] - hv_netvsc: Wait for completion on request SWITCH_DATA_PATH (Mohammed Gamal) [1940927] - hv_netvsc: Check VF datapath when sending traffic to VF (Mohammed Gamal) [1940927] - hv_netvsc: Validate number of allocated sub-channels (Mohammed Gamal) [1940927] - hv_netvsc: Use vmbus_requestor to generate transaction IDs for VMBus hardening (Mohammed Gamal) [1940927] - hv_netvsc: Use HV_HYP_PAGE_SIZE for Hyper-V communication (Mohammed Gamal) [1940927] - scsi: fnic: Use scsi_host_busy_iter() to traverse commands (Ewan D. Milne) [1949250] - scsi: fnic: Kill 'exclude_id' argument to fnic_cleanup_io() (Ewan D. Milne) [1949250] - net: vlan: Avoid using BUG() in vlan_proto_idx() (Davide Caratti) [1964456] - sch_htb: fix null pointer dereference on a null new_q (Ivan Vecera) [1935703] - sch_htb: Fix offload cleanup in htb_destroy on htb_init failure (Ivan Vecera) [1935703] - sch_htb: Fix select_queue for non-offload mode (Ivan Vecera) [1935703] - sch_htb: Stats for offloaded HTB (Ivan Vecera) [1935703] - sch_htb: Hierarchical QoS hardware offload (Ivan Vecera) [1935703] - net: sched: Add extack to Qdisc_class_ops.delete (Ivan Vecera) [1935703] - net: sched: Add multi-queue support to sch_tree_lock (Ivan Vecera) [1935703] - capabilities: require CAP_SETFCAP to map uid 0 (Alexey Gladkov) [1961202] - locking/qrwlock: Cleanup queued_write_lock_slowpath() (Waiman Long) [1954361] - locking/rtmutex: Clean up signal handling in __rt_mutex_slowlock() (Waiman Long) [1954361] - locking/rtmutex: Restrict the trylock WARN_ON() to debug (Waiman Long) [1954361] - locking/rtmutex: Fix misleading comment in rt_mutex_postunlock() (Waiman Long) [1954361] - locking/rtmutex: Consolidate the fast/slowpath invocation (Waiman Long) [1954361] - locking/rtmutex: Make text section and inlining consistent (Waiman Long) [1954361] - locking/rtmutex: Move debug functions as inlines into common header (Waiman Long) [1954361] - locking/rtmutex: Decrapify __rt_mutex_init() (Waiman Long) [1954361] - locking/rtmutex: Remove pointless CONFIG_RT_MUTEXES=n stubs (Waiman Long) [1954361] - locking/rtmutex: Inline chainwalk depth check (Waiman Long) [1954361] - locking/rtmutex: Move rt_mutex_debug_task_free() to rtmutex.c (Waiman Long) [1954361] - locking/rtmutex: Remove empty and unused debug stubs (Waiman Long) [1954361] - locking/rtmutex: Consolidate rt_mutex_init() (Waiman Long) [1954361] - locking/rtmutex: Remove output from deadlock detector (Waiman Long) [1954361] - locking/rtmutex: Remove rtmutex deadlock tester leftovers (Waiman Long) [1954361] - locking/rtmutex: Remove rt_mutex_timed_lock() (Waiman Long) [1954361] - kernel: delete repeated words in comments (Waiman Long) [1954361] - rbtree, rtmutex: Use rb_add_cached() (Waiman Long) [1954361] - rbtree: Add generic add and find helpers (Waiman Long) [1954361] - locking/rtmutex: Remove unused rt_mutex_cmpxchg_relaxed() (Waiman Long) [1954361] - lib/rbtree: avoid generating code twice for the cached versions (Waiman Long) [1954361] - locking/rtmutex: Fix the preprocessor logic with normal #ifdef #else #endif (Waiman Long) [1954361] - kernel/futex: Explicitly document pi_lock for pi_state owner fixup (Waiman Long) [1954361] - kernel/futex: Move hb unlock out of unqueue_me_pi() (Waiman Long) [1954361] - kernel/futex: Make futex_wait_requeue_pi() only call fixup_owner() (Waiman Long) [1954361] - kernel/futex: Kill rt_mutex_next_owner() (Waiman Long) [1954361] - futex: Remove unused empty compat_exit_robust_list() (Waiman Long) [1954361] - futex: Handle transient "ownerless" rtmutex state correctly (Waiman Long) [1954361] - futex: Convert to use the preferred 'fallthrough' macro (Waiman Long) [1954361] - futex: get rid of a kernel-docs build warning (Waiman Long) [1954361] - futex: arch_futex_atomic_op_inuser() calling conventions change (Waiman Long) [1954361] - s390: Use arch_local_irq_{save,restore}() in early boot code (Waiman Long) [1954361] - lockdep: Add a missing initialization hint to the "INFO: Trying to register non-static key" message (Waiman Long) [1954361] - locking: Fix typos in comments (Waiman Long) [1954361] - locking/lockdep: Update the comment for __lock_release() (Waiman Long) [1954361] - lockdep: Allow tuning tracing capacity constants. (Waiman Long) [1954361] - lockdep: Address clang -Wformat warning printing for hd (Waiman Long) [1954361] - lockdep: Add lockdep lock state defines (Waiman Long) [1954361] - lockdep: Add lockdep_assert_not_held() (Waiman Long) [1954361] - lockdep: Noinstr annotate warn_bogus_irq_restore() (Waiman Long) [1954361] - locking/lockdep: Avoid unmatched unlock (Waiman Long) [1954361] - locking/rwsem: Remove empty rwsem.h (Waiman Long) [1954361] - lockdep: report broken irq restoration (Waiman Long) [1954361] - locking/lockdep: Avoid noinstr warning for DEBUG_LOCKDEP (Waiman Long) [1954361] - locking/lockdep: Exclude local_lock_t from IRQ inversions (Waiman Long) [1954361] - locking/lockdep: Clean up check_redundant() a bit (Waiman Long) [1954361] - locking/lockdep: Add a skip() function to __bfs() (Waiman Long) [1954361] - locking/lockdep: Mark local_lock_t (Waiman Long) [1954361] - lockdep: Put graph lock/unlock under lock_recursion protection (Waiman Long) [1954361] - locking/rtmutex: Add missing kernel-doc markup (Waiman Long) [1954361] - lockdep: Avoid to modify chain keys in validate_chain() (Waiman Long) [1954361] - lockdep: Fix nr_unused_locks accounting (Waiman Long) [1954361] - lockdep: Optimize the memory usage of circular queue (Waiman Long) [1954361] - lockdep: Take read/write status in consideration when generate chainkey (Waiman Long) [1954361] - lockdep/selftest: Add a R-L/L-W test case specific to chain cache behavior (Waiman Long) [1954361] - lockdep: Add recursive read locks into dependency graph (Waiman Long) [1954361] - lockdep: Fix recursive read lock related safe->unsafe detection (Waiman Long) [1954361] - lockdep: Adjust check_redundant() for recursive read change (Waiman Long) [1954361] - lockdep: Support deadlock detection for recursive read locks in check_noncircular() (Waiman Long) [1954361] - lockdep: Make __bfs(.match) return bool (Waiman Long) [1954361] - lockdep: Extend __bfs() to work with multiple types of dependencies (Waiman Long) [1954361] - lockdep: Introduce lock_list::dep (Waiman Long) [1954361] - lockdep: Reduce the size of lock_list::distance (Waiman Long) [1954361] - lockdep: Make __bfs() visit every dependency until a match (Waiman Long) [1954361] - lockdep: Demagic the return value of BFS (Waiman Long) [1954361] - lockdep/Documention: Recursive read lock detection reasoning (Waiman Long) [1954361] - locking: More accurate annotations for read_lock() (Waiman Long) [1954361] - Documentation/locking/locktypes: Fix local_locks documentation (Waiman Long) [1954361] - treewide: Remove uninitialized_var() usage (Waiman Long) [1954361] - lockdep: Use this_cpu_ptr instead of get_cpu_var stats (Waiman Long) [1954361] - KVM: arm/arm64: Fix KVM_VGIC_V3_ADDR_TYPE_REDIST read (Gavin Shan) [1939323] - KVM: arm64: Don't advertise FEAT_SPE to guests (Gavin Shan) [1939323] - KVM: arm64: Don't print warning when trapping SPE registers (Gavin Shan) [1939323] - KVM: arm64: Fully zero the vcpu state on reset (Gavin Shan) [1939323] - KVM: arm64: Clarify vcpu reset behaviour (Gavin Shan) [1939323] - Documentation: KVM: Document KVM_GUESTDBG_USE_HW control flag for arm64 (Gavin Shan) [1939323] - KVM: arm64: Initialize VCPU mdcr_el2 before loading it (Gavin Shan) [1939323] - KVM: arm64: Handle access to TRFCR_EL1 (Gavin Shan) [1939323] - arm64: Add TRFCR_ELx definitions (Gavin Shan) [1939323] - KVM: arm64: Unify trap handlers injecting an UNDEF (Gavin Shan) [1939323] - KVM: arm64: Use find_vma_intersection() (Gavin Shan) [1939323] - KVM: arm64: Hide kvm_mmu_wp_memory_region() (Gavin Shan) [1939323] - KVM: selftests: vgic_init kvm selftests fixup (Gavin Shan) [1939323] - KVM: selftests: aarch64/vgic-v3 init sequence tests (Gavin Shan) [1939323] - KVM: arm64: vgic-v3: Expose GICR_TYPER.Last for userspace (Gavin Shan) [1939323] - kvm: arm64: vgic-v3: Introduce vgic_v3_free_redist_region() (Gavin Shan) [1939323] - KVM: arm64: Simplify argument passing to vgic_uaccess_[read|write] (Gavin Shan) [1939323] - docs: kvm: devices/arm-vgic-v3: enhance KVM_DEV_ARM_VGIC_CTRL_INIT doc (Gavin Shan) [1939323] - KVM: arm/arm64: vgic: Reset base address on kvm_vgic_dist_destroy() (Gavin Shan) [1939323] - KVM: arm64: vgic-v3: Fix error handling in vgic_v3_set_redist_base() (Gavin Shan) [1939323] - KVM: arm64: Fix KVM_VGIC_V3_ADDR_TYPE_REDIST_REGION read (Gavin Shan) [1939323] - KVM: arm64: vgic-v3: Fix some error codes when setting RDIST base (Gavin Shan) [1939323] - KVM: arm64: Disable guest access to trace filter controls (Gavin Shan) [1939323] - KVM: arm64: Fix CPU interface MMIO compatibility detection (Gavin Shan) [1939323] - KVM: arm64: Hide system instruction access to Trace registers (Gavin Shan) [1939323] - KVM: arm64: Fix exclusive limit for IPA size (Gavin Shan) [1939323] - KVM: arm64: Ensure I-cache isolation between vcpus of a same VM (Gavin Shan) [1939323] - KVM: arm64: nvhe: Save the SPE context early (Gavin Shan) [1939323] - KVM: arm64: Correct spelling of DBGDIDR register (Gavin Shan) [1939323] - KVM: arm64: Fix AArch32 PMUv3 capping (Gavin Shan) [1939323] - KVM: arm64: Fix missing RES1 in emulation of DBGBIDR (Gavin Shan) [1939323] - KVM: arm64: Remove spurious semicolon in reg_to_encoding() (Gavin Shan) [1939323] - KVM: arm64: Fix hyp_cpu_pm_{init,exit} __init annotation (Gavin Shan) [1939323] - KVM: arm64: Workaround firmware wrongly advertising GICv2-on-v3 compatibility (Gavin Shan) [1939323] - KVM: arm64: Rename __vgic_v3_get_ich_vtr_el2() to __vgic_v3_get_gic_config() (Gavin Shan) [1939323] - KVM: arm64: Some fixes of PV-time interface document (Gavin Shan) [1939323] - KVM: arm64: CSSELR_EL1 max is 13 (Gavin Shan) [1939323] - idr test suite: Improve reporting from idr_find_test_1 (Chris von Recklinghausen) [1946304] - idr test suite: Create anchor before launching throbber (Chris von Recklinghausen) [1946304] - idr test suite: Take RCU read lock in idr_find_test_1 (Chris von Recklinghausen) [1946304] - radix tree test suite: Register the main thread with the RCU library (Chris von Recklinghausen) [1946304] - radix tree test suite: Fix compilation (Chris von Recklinghausen) [1946304] - XArray: Add xa_limit_16b (Chris von Recklinghausen) [1946304] - XArray: Fix splitting to non-zero orders (Chris von Recklinghausen) [1946304] - XArray: Fix split documentation (Chris von Recklinghausen) [1946304] - PCI/P2PDMA: Drop double zeroing for sg_init_table() (Myron Stowe) [1955693] - PCI: Simplify bool comparisons (Myron Stowe) [1955693] - PCI: endpoint: Use "NULL" instead of "0" as a NULL pointer (Myron Stowe) [1955693] - PCI: Simplify pci_dev_reset_slot_function() (Myron Stowe) [1955693] - PCI: Update mmap-related #ifdef comments (Myron Stowe) [1955693] - PCI/LINK: Print IRQ number used by port (Myron Stowe) [1955693] - PCI/IOV: Simplify pci-pf-stub with module_pci_driver() (Myron Stowe) [1955693] - PCI: Use scnprintf(), not snprintf(), in sysfs "show" functions (Myron Stowe) [1955693] - x86/PCI: Fix intel_mid_pci.c build error when ACPI is not enabled (Myron Stowe) [1955693] - PCI: Remove unnecessary header includes (Myron Stowe) [1955693] - PCI/PM: Revert "PCI/PM: Apply D2 delay as milliseconds, not microseconds" (Myron Stowe) [1955693] - PCI/PM: Remove unused PCI_PM_BUS_WAIT (Myron Stowe) [1955693] - PCI: shpchp: Remove unused 'rc' assignment (Myron Stowe) [1955693] - PCI: pciehp: Reduce noisiness on hot removal (Myron Stowe) [1955693 1812902] - PCI: rpadlpar: Use for_each_child_of_node() and for_each_node_by_name() (Myron Stowe) [1955693] - PCI: Add Kconfig options for MPS/MRRS strategy (Myron Stowe) [1955693] - PCI: Add schedule point in pci_read_config() (Myron Stowe) [1955693] - PCI/ASPM: Remove struct pcie_link_state.l1ss (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_cap (Myron Stowe) [1955693] - PCI/ASPM: Pass L1SS Capabilities value, not struct aspm_register_info (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_ctl1 (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_ctl2 (unused) (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_cap_ptr (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.latency_encoding (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.enabled (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.support (Myron Stowe) [1955693] - PCI/ASPM: Use 'parent' and 'child' for readability (Myron Stowe) [1955693] - PCI/ASPM: Move LTR path check to where it's used (Myron Stowe) [1955693] - PCI/ASPM: Move pci_clear_and_set_dword() earlier (Myron Stowe) [1955693] - PCI/ACS: Enable Translation Blocking for external devices (Myron Stowe) [1955693] - scsi: qedi: Remove redundant assignment to variable err (Nilesh Javali) [1920855] - scsi: qedi: Fix error return code of qedi_alloc_global_queues() (Nilesh Javali) [1920855] - scsi: qedi: Fix missing destroy_workqueue() on error in __qedi_probe (Nilesh Javali) [1920855] - scsi: qedf: Simplify bool comparison (Nilesh Javali) [1921608] - bpf, sockmap: Fix incorrect fwd_alloc accounting (Yauheni Kaliuta) [1874006] - bpf: Local storage helpers should check nullness of owner ptr passed (Yauheni Kaliuta) [1874006] - bpf, inode_storage: Put file handler if no storage was found (Yauheni Kaliuta) [1874006] - kbuild: explicitly specify the build id style (Yauheni Kaliuta) [1874006] - bpf: Reject too big ctx_size_in for raw_tp test run (Yauheni Kaliuta) [1874006] - bpf: Fix enum names for bpf_this_cpu_ptr() and bpf_per_cpu_ptr() helpers (Yauheni Kaliuta) [1874006] - bpf: Don't rely on GCC __attribute__((optimize)) to disable GCSE (Jiri Benc) [1874006] - bpf: Fix tests for local_storage (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix "dubious pointer arithmetic" test (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix array access with signed variable test (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for signed 32-bit bound check bug (Yauheni Kaliuta) [1874006] - bpf: Fix propagation of 32-bit signed bounds from 64-bit bounds. (Yauheni Kaliuta) [1874006] - lwt_bpf: Replace preempt_disable() with migrate_disable() (Yauheni Kaliuta) [1874006] - lwt: Disable BH too in run_lwt_bpf() (Yauheni Kaliuta) [1874006] - selftests/bpf: Drain ringbuf samples at the end of test (Yauheni Kaliuta) [1874006] - libbpf: Fix ring_buffer__poll() to return number of consumed samples (Yauheni Kaliuta) [1874006] - bpf: Add MAINTAINERS entry for BPF LSM (Yauheni Kaliuta) [1874006] - bpftool: Fix error return value in build_btf_type_table (Yauheni Kaliuta) [1874006] - fail_function: Remove a redundant mutex unlock (Yauheni Kaliuta) [1874006] - selftest/bpf: Test bpf_probe_read_user_str() strips trailing bytes after NUL (Yauheni Kaliuta) [1874006] - lib/strncpy_from_user.c: Mask out bytes after NUL terminator. (Yauheni Kaliuta) [1874006] - bpf, sockmap: Avoid failures from skb_to_sgvec when skb has frag_list (Yauheni Kaliuta) [1874006] - bpf, sockmap: Handle memory acct if skb_verdict prog redirects to self (Yauheni Kaliuta) [1874006] - bpf, sockmap: Avoid returning unneeded EAGAIN when redirecting to self (Yauheni Kaliuta) [1874006] - bpf, sockmap: Use truesize with sk_rmem_schedule() (Yauheni Kaliuta) [1874006] - bpf, sockmap: Ensure SO_RCVBUF memory is observed on ingress redirect (Yauheni Kaliuta) [1874006] - bpf, sockmap: Fix partial copy_page_to_iter so progress can still be made (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix error return code in run_getsockopt_test() (Yauheni Kaliuta) [1874006] - bpf: Relax return code check for subprograms (Yauheni Kaliuta) [1874006] - tools, bpftool: Add missing close before bpftool net attach exit (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix unused attribute usage in subprogs_unused test (Yauheni Kaliuta) [1874006] - bpf: Fix unsigned 'datasec_id' compared with zero in check_pseudo_btf_id (Yauheni Kaliuta) [1874006] - bpf: Fix passing zero to PTR_ERR() in bpf_btf_printf_prepare (Yauheni Kaliuta) [1874006] - libbpf: Don't attempt to load unused subprog as an entry-point BPF program (Yauheni Kaliuta) [1874006] - bpf: Update verification logic for LSM programs (Yauheni Kaliuta) [1874006] - bpf: Zero-fill re-used per-cpu map element (Yauheni Kaliuta) [1874006] - bpf: BPF_PRELOAD depends on BPF_SYSCALL (Yauheni Kaliuta) [1874006] - libbpf: Fix possible use after free in xsk_socket__delete (Yauheni Kaliuta) [1874006] - libbpf: Fix null dereference in xsk_socket__delete (Yauheni Kaliuta) [1874006] - libbpf, hashmap: Fix undefined behavior in hash_bits (Yauheni Kaliuta) [1874006] - tools, bpftool: Remove two unused variables. (Yauheni Kaliuta) [1874006] - tools, bpftool: Avoid array index warnings. (Yauheni Kaliuta) [1874006] - bpf: Add struct bpf_redir_neigh forward declaration to BPF helper defs (Yauheni Kaliuta) [1874006] - bpf: Fix -Wshadow warnings (Yauheni Kaliuta) [1874006] - bpf, libbpf: Guard bpf inline asm from bpf_tail_call_static (Yauheni Kaliuta) [1874006] - bpf: selftest: Ensure the return value of the bpf_per_cpu_ptr() must be checked (Yauheni Kaliuta) [1874006] - bpf: selftest: Ensure the return value of bpf_skc_to helpers must be checked (Yauheni Kaliuta) [1874006] - bpf: Remove unneeded break (Yauheni Kaliuta) [1874006] - net, sockmap: Don't call bpf_prog_put() on NULL pointer (Yauheni Kaliuta) [1874006] - bpf, sockmap: Add locking annotations to iterator (Yauheni Kaliuta) [1874006] - bpf: Fix register equivalence tracking. (Yauheni Kaliuta) [1874006] - bpf, selftests: Add three new sockmap tests for verdict only programs (Yauheni Kaliuta) [1874006] - bpf, selftests: Add option to test_sockmap to omit adding parser program (Yauheni Kaliuta) [1874006] - bpf, sockmap: Allow skipping sk_skb parser program (Yauheni Kaliuta) [1874006] - bpf, sockmap: Check skb_verdict and skb_parser programs explicitly (Yauheni Kaliuta) [1874006] - bpf, sockmap: Add memory accounting so skbs on ingress lists are visible (Yauheni Kaliuta) [1874006] - bpf, sockmap: Remove skb_orphan and let normal skb_kfree do cleanup (Yauheni Kaliuta) [1874006] - bpf, sockmap: Remove dropped data on errors in redirect case (Yauheni Kaliuta) [1874006] - bpf, sockmap: Remove skb_set_owner_w wmem will be taken later from sendpage (Yauheni Kaliuta) [1874006] - bpf, sockmap: On receive programs try to fast track SK_PASS ingress (Yauheni Kaliuta) [1874006] - bpf, sockmap: Skb verdict SK_PASS to self already checked rmem limits (Yauheni Kaliuta) [1874006] - bpf: Migrate from patchwork.ozlabs.org to patchwork.kernel.org. (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor XDP kern program maps with BTF-defined map (Yauheni Kaliuta) [1874006] - samples: bpf: Replace attach_tracepoint() to attach() in xdp_redirect_cpu (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor xdp_monitor with libbpf (Yauheni Kaliuta) [1874006] - bpf, selftests: Add test for different array inner map size (Yauheni Kaliuta) [1874006] - bpf: Allow for map-in-map with dynamic inner array map entries (Yauheni Kaliuta) [1874006] - selftests/bpf: Asm tests for the verifier regalloc tracking. (Yauheni Kaliuta) [1874006] - bpf: Fix selftest compilation on clang 11 (Yauheni Kaliuta) [1874006] - selftest/bpf: Fix profiler test using CO-RE relocation for enums (Yauheni Kaliuta) [1874006] - selftests/bpf: Add profiler test (Yauheni Kaliuta) [1874006] - bpf: Track spill/fill of bounded scalars. (Yauheni Kaliuta) [1874006] - bpf: Propagate scalar ranges through register assignments. (Yauheni Kaliuta) [1874006] - bpf: Add tcp_notsent_lowat bpf setsockopt (Yauheni Kaliuta) [1874006] - selftests/bpf: Validate libbpf's auto-sizing of LD/ST/STX instructions (Yauheni Kaliuta) [1874006] - libbpf: Allow specifying both ELF and raw BTF for CO-RE BTF override (Yauheni Kaliuta) [1874006] - libbpf: Support safe subset of load/store instruction resizing with CO-RE (Yauheni Kaliuta) [1874006] - libbpf: Skip CO-RE relocations for not loaded BPF programs (Yauheni Kaliuta) [1874006] - libbpf: Fix compatibility problem in xsk_socket__create (Yauheni Kaliuta) [1874006] - bpf: Fix typo in uapi/linux/bpf.h (Yauheni Kaliuta) [1874006] - bpf: Fix build failure for kernel/trace/bpf_trace.c with CONFIG_NET=n (Yauheni Kaliuta) [1874006] - kernel/bpf/verifier: Fix build when NET is not enabled (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix test_verifier after introducing resolve_pseudo_ldimm64 (Yauheni Kaliuta) [1874006] - samples: bpf: Driver interrupt statistics in xdpsock (Yauheni Kaliuta) [1874006] - samples: bpf: Count syscalls in xdpsock (Yauheni Kaliuta) [1874006] - samples: bpf: Split xdpsock stats into new struct (Yauheni Kaliuta) [1874006] - samples/bpf: Fix a compilation error with fallthrough marking (Yauheni Kaliuta) [1874006] - samples/bpf: Change Makefile to cope with latest llvm (Yauheni Kaliuta) [1874006] - bpf, libbpf: Use valid btf in bpf_program__set_attach_target (Yauheni Kaliuta) [1874006] - selftest/bpf: Test pinning map with reused map fd (Yauheni Kaliuta) [1874006] - libbpf: Check if pin_path was set even map fd exist (Yauheni Kaliuta) [1874006] - libbpf: Close map fd if init map slots failed (Yauheni Kaliuta) [1874006] - bpf: Use raw_spin_trylock() for pcpu_freelist_push/pop in NMI (Yauheni Kaliuta) [1874006] - bpf, verifier: Use fallthrough pseudo-keyword (Yauheni Kaliuta) [1874006] - bpf: Deref map in BPF_PROG_BIND_MAP when it's already used (Yauheni Kaliuta) [1874006] - bpf, sockmap: Update selftests to use skb_adjust_room (Yauheni Kaliuta) [1874006] - bpf, sockmap: Add skb_adjust_room to pop bytes off ingress payload (Yauheni Kaliuta) [1874006] - bpf/selftests: Test for bpf_per_cpu_ptr() and bpf_this_cpu_ptr() (Yauheni Kaliuta) [1874006] - bpf: Introducte bpf_this_cpu_ptr() (Yauheni Kaliuta) [1874006] - bpf: Introduce bpf_per_cpu_ptr() (Yauheni Kaliuta) [1874006] - selftests/bpf: Ksyms_btf to test typed ksyms (Yauheni Kaliuta) [1874006] - bpf/libbpf: BTF support for typed ksyms (Yauheni Kaliuta) [1874006] - bpf: Introduce pseudo_btf_id (Yauheni Kaliuta) [1874006] - selftests/bpf: Properly initialize linfo in sockmap_basic (Yauheni Kaliuta) [1874006] - selftests/bpf: Initialize duration in xdp_noinline.c (Yauheni Kaliuta) [1874006] - selftests/bpf: Add tests for BPF_F_PRESERVE_ELEMS (Yauheni Kaliuta) [1874006] - bpf: Introduce BPF_F_PRESERVE_ELEMS for perf event array (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix alignment of .BTF_ids (Yauheni Kaliuta) [1874006] - selftests/bpf: Test "incremental" btf_dump in C format (Yauheni Kaliuta) [1874006] - libbpf: Make btf_dump work with modifiable BTF (Yauheni Kaliuta) [1874006] - bpf, selftests: Use bpf_tail_call_static where appropriate (Yauheni Kaliuta) [1874006] - bpf, libbpf: Add bpf_tail_call_static helper for bpf programs (Yauheni Kaliuta) [1874006] - bpf, net: Rework cookie generator as per-cpu one (Yauheni Kaliuta) [1874006] - bpf: Add classid helper only based on skb->sk (Yauheni Kaliuta) [1874006] - bpf: fix raw_tp test run in preempt kernel (Yauheni Kaliuta) [1874006] - libbpf: Compile in PIC mode only for shared library case (Yauheni Kaliuta) [1874006] - libbpf: Compile libbpf under -O2 level by default and catch extra warnings (Yauheni Kaliuta) [1874006] - bpf: x64: Do not emit sub/add 0, rsp when !stack_depth (Yauheni Kaliuta) [1874006] - bpf, x64: Drop "pop rcx" instruction on BPF JIT epilogue (Yauheni Kaliuta) [1874006] - bpf, selftests: Fix warning in snprintf_btf where system() call unchecked (Yauheni Kaliuta) [1874006] - selftests/bpf: Test BTF's handling of endianness (Yauheni Kaliuta) [1874006] - selftests/bpf: Move and extend ASSERT_xxx() testing macros (Yauheni Kaliuta) [1874006] - selftests: Make sure all 'skel' variables are declared static (Yauheni Kaliuta) [1874006] - selftests/bpf_iter: Don't fail test due to missing __builtin_btf_type_id (Yauheni Kaliuta) [1874006] - bpf/preload: Make sure Makefile cleans up after itself, and add .gitignore (Yauheni Kaliuta) [1874006] - selftests/bpf: Ensure snprintf_btf/bpf_iter tests compatibility with old vmlinux.h (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix unused-result warning in snprintf_btf.c (Yauheni Kaliuta) [1874006] - bpf, selftests: Fix cast to smaller integer type 'int' warning in raw_tp (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for bpf_seq_printf_btf helper (Yauheni Kaliuta) [1874006] - bpf: Add bpf_seq_printf_btf helper (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix overflow tests to reflect iter size increase (Yauheni Kaliuta) [1874006] - bpf: Bump iter seq size to support BTF representation of large data structures (Yauheni Kaliuta) [1874006] - selftests/bpf: Add bpf_snprintf_btf helper tests (Yauheni Kaliuta) [1874006] - bpf: Add bpf_snprintf_btf helper (Yauheni Kaliuta) [1874006] - bpf: Move to generic BTF show support, apply it to seq files/strings (Yauheni Kaliuta) [1874006] - bpf: Provide function to get vmlinux BTF information (Yauheni Kaliuta) [1874006] - selftest: bpf: Test copying a sockmap and sockhash (Yauheni Kaliuta) [1874006] - selftests: bpf: Remove shared header from sockmap iter test (Yauheni Kaliuta) [1874006] - selftests: bpf: Add helper to compare socket cookies (Yauheni Kaliuta) [1874006] - bpf: sockmap: Enable map_update_elem from bpf_iter (Yauheni Kaliuta) [1874006] - bpf, cpumap: Remove rcpu pointer from cpu_map_build_skb signature (Yauheni Kaliuta) [1874006] - selftests/bpf: Add raw_tp_test_run (Yauheni Kaliuta) [1874006] - libbpf: Support test run of raw tracepoint programs (Yauheni Kaliuta) [1874006] - bpf: Enable BPF_PROG_TEST_RUN for raw_tracepoint (Yauheni Kaliuta) [1874006] - bpf: Add comment to document BTF type PTR_TO_BTF_ID_OR_NULL (Yauheni Kaliuta) [1874006] - bpf: Add AND verifier test case where 32bit and 64bit bounds differ (Yauheni Kaliuta) [1874006] - bpf, verifier: Remove redundant var_off.value ops in scalar known reg cases (Yauheni Kaliuta) [1874006] - bpf: selftest: Add test_btf_skc_cls_ingress (Yauheni Kaliuta) [1874006] - bpf: selftest: Remove enum tcp_ca_state from bpf_tcp_helpers.h (Yauheni Kaliuta) [1874006] - bpf: selftest: Use bpf_skc_to_tcp_sock() in the sock_fields test (Yauheni Kaliuta) [1874006] - bpf: selftest: Use network_helpers in the sock_fields test (Yauheni Kaliuta) [1874006] - bpf: selftest: Adapt sock_fields test to use skel and global variables (Yauheni Kaliuta) [1874006] - bpf: selftest: Move sock_fields test into test_progs (Yauheni Kaliuta) [1874006] - bpf: selftest: Add ref_tracking verifier test for bpf_skc casting (Yauheni Kaliuta) [1874006] - bpf: Change bpf_sk_assign to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Change bpf_tcp_*_syncookie to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Change bpf_sk_storage_*() to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Change bpf_sk_release and bpf_sk_*cgroup_id to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Enable bpf_skc_to_* sock casting helper to networking prog type (Yauheni Kaliuta) [1874006] - bpf: Move the PTR_TO_BTF_ID check to check_reg_type() (Yauheni Kaliuta) [1874006] - Revert "bpf: Fix potential call bpf_link_free() in atomic context" (Yauheni Kaliuta) [1874006] - tools resolve_btfids: Always force HOSTARCH (Yauheni Kaliuta) [1874006] - bpf: Check CONFIG_BPF option for resolve_btfids (Yauheni Kaliuta) [1874006] - bpf: Explicitly size compatible_reg_types (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix stat probe in d_path test (Yauheni Kaliuta) [1874006] - bpf: Using rcu_read_lock for bpf_sk_storage_map iterator (Yauheni Kaliuta) [1874006] - bpf: Use a table to drive helper arg type checks (Yauheni Kaliuta) [1874006] - bpf: Hoist type checking for nullable arg types (Yauheni Kaliuta) [1874006] - bpf: Check ARG_PTR_TO_SPINLOCK register type in check_func_arg (Yauheni Kaliuta) [1874006] - bpf: Set meta->raw_mode for pointers close to use (Yauheni Kaliuta) [1874006] - bpf: Make context access check generic (Yauheni Kaliuta) [1874006] - bpf: Make reference tracking generic (Yauheni Kaliuta) [1874006] - bpf: Make BTF pointer type checking generic (Yauheni Kaliuta) [1874006] - bpf: Allow specifying a BTF ID per argument in function protos (Yauheni Kaliuta) [1874006] - btf: Add BTF_ID_LIST_SINGLE macro (Yauheni Kaliuta) [1874006] - bpf: Check scalar or invalid register in check_helper_mem_access (Yauheni Kaliuta) [1874006] - btf: Make btf_set_contains take a const pointer (Yauheni Kaliuta) [1874006] - bpf: Fix potential call bpf_link_free() in atomic context (Yauheni Kaliuta) [1874006] - bpf: Use hlist_add_head_rcu when linking to local_storage (Yauheni Kaliuta) [1874006] - samples/bpf: Fix test_map_in_map on s390 (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix endianness issue in test_sockopt_sk (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix endianness issue in sk_assign (Yauheni Kaliuta) [1874006] - selftests/bpf: Add tailcall_bpf2bpf tests (Yauheni Kaliuta) [1874006] - bpf: Add abnormal return checks. (Yauheni Kaliuta) [1874006] - bpf: allow for tailcalls in BPF subprograms for x64 JIT (Yauheni Kaliuta) [1874006] - bpf, x64: rework pro/epilogue and tailcall handling in JIT (Yauheni Kaliuta) [1874006] - bpf: Limit caller's stack depth 256 for subprogs with tailcalls (Yauheni Kaliuta) [1874006] - bpf: rename poke descriptor's 'ip' member to 'tailcall_target' (Yauheni Kaliuta) [1874006] - bpf: propagate poke descriptors to subprograms (Yauheni Kaliuta) [1874006] - bpf, x64: use rcx instead of rax for tail call retpolines (Yauheni Kaliuta) [1874006] - selftests/bpf: Merge most of test_btf into test_progs (Yauheni Kaliuta) [1874006] - selftests/bpf: Test load and dump metadata with btftool and skel (Yauheni Kaliuta) [1874006] - bpftool: Support dumping metadata (Yauheni Kaliuta) [1874006] - libbpf: Add BPF_PROG_BIND_MAP syscall and use it on .rodata section (Yauheni Kaliuta) [1874006] - bpf: Add BPF_PROG_BIND_MAP syscall (Yauheni Kaliuta) [1874006] - bpf: Mutex protect used_maps array and count (Yauheni Kaliuta) [1874006] - libbpf: Fix a compilation error with xsk.c for ubuntu 16.04 (Yauheni Kaliuta) [1874006] - samples/bpf: Add quiet option to xdpsock (Yauheni Kaliuta) [1874006] - samples: bpf: Add an option for printing extra statistics in xdpsock (Yauheni Kaliuta) [1874006] - samples/bpf: Fix possible deadlock in xdpsock (Yauheni Kaliuta) [1874006] - samples/bpf: Fix one packet sending in xdpsock (Yauheni Kaliuta) [1874006] - s390/bpf: Fix multiple tail calls (Yauheni Kaliuta) [1874006] - tcp: Simplify tcp_set_congestion_control() load=false case (Yauheni Kaliuta) [1874006] - tcp: simplify _bpf_setsockopt(): Remove flags argument (Yauheni Kaliuta) [1874006] - tcp: simplify tcp_set_congestion_control(): Always reinitialize (Yauheni Kaliuta) [1874006] - tcp: Simplify EBPF TCP_CONGESTION to always init CC (Yauheni Kaliuta) [1874006] - bpftool: Fix build failure (Yauheni Kaliuta) [1874006] - tools: bpftool: Automate generation for "SEE ALSO" sections in man pages (Yauheni Kaliuta) [1874006] - bpf: Fix comment for helper bpf_current_task_under_cgroup() (Yauheni Kaliuta) [1874006] - selftests/bpf: Define string const as global for test_sysctl_prog.c (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix test_ksyms on non-SMP kernels (Yauheni Kaliuta) [1874006] - tools: bpftool: Add "inner_map" to "bpftool map create" outer maps (Yauheni Kaliuta) [1874006] - tools: bpftool: Keep errors for map-of-map dumps if distinct from ENOENT (Yauheni Kaliuta) [1874006] - tools: bpftool: Clean up function to dump map entry (Yauheni Kaliuta) [1874006] - selftests: bpf: Test iterating a sockmap (Yauheni Kaliuta) [1874006] - net: Allow iterating sockmap and sockhash (Yauheni Kaliuta) [1874006] - net: sockmap: Remove unnecessary sk_fullsock checks (Yauheni Kaliuta) [1874006] - tools: bpftool: Include common options from separate file (Yauheni Kaliuta) [1874006] - tools: bpftool: Print optional built-in features along with version (Yauheni Kaliuta) [1874006] - selftests, bpftool: Add bpftool (and eBPF helpers) documentation build (Yauheni Kaliuta) [1874006] - tools: bpftool: Log info-level messages when building bpftool man pages (Yauheni Kaliuta) [1874006] - bpf: Remove duplicate headers (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix test_sysctl_loop{1, 2} failure due to clang change (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for map_ptr arithmetic (Yauheni Kaliuta) [1874006] - bpf: Permit map_ptr arithmetic with opcode add and offset 0 (Yauheni Kaliuta) [1874006] - tools, bpf: Synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1874006] - bpf: Fix formatting in documentation for BPF helpers (Yauheni Kaliuta) [1874006] - tools: bpftool: Fix formatting in bpftool-link documentation (Yauheni Kaliuta) [1874006] - samples, bpf: Add xsk_fwd test file to .gitignore (Yauheni Kaliuta) [1874006] - samples, bpf: Replace bpf_program__title() with bpf_program__section_name() (Yauheni Kaliuta) [1874006] - libbpf: Fix potential multiplication overflow (Yauheni Kaliuta) [1874006] - libbpf: Fix another __u64 cast in printf (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix check in global_data_init. (Yauheni Kaliuta) [1874006] - selftests/bpf: Add __noinline variant of cls_redirect selftest (Yauheni Kaliuta) [1874006] - selftests/bpf: Modernize xdp_noinline test w/ skeleton and __noinline (Yauheni Kaliuta) [1874006] - selftests/bpf: Add subprogs to pyperf, strobemeta, and l4lb_noinline tests (Yauheni Kaliuta) [1874006] - tools/bpftool: Replace bpf_program__title() with bpf_program__section_name() (Yauheni Kaliuta) [1874006] - selftests/bpf: Don't use deprecated libbpf APIs (Yauheni Kaliuta) [1874006] - libbpf: Deprecate notion of BPF program "title" in favor of "section name" (Yauheni Kaliuta) [1874006] - selftests/bpf: Add selftest for multi-prog sections and bpf-to-bpf calls (Yauheni Kaliuta) [1874006] - libbpf: Add multi-prog section support for struct_ops (Yauheni Kaliuta) [1874006] - libbpf: Implement generalized .BTF.ext func/line info adjustment (Yauheni Kaliuta) [1874006] - libbpf: Make RELO_CALL work for multi-prog sections and sub-program calls (Yauheni Kaliuta) [1874006] - libbpf: Support CO-RE relocations for multi-prog sections (Yauheni Kaliuta) [1874006] - libbpf: Parse multi-function sections into multiple BPF programs (Yauheni Kaliuta) [1874006] - libbpf: Ensure ELF symbols table is found before further ELF processing (Yauheni Kaliuta) [1874006] - selftests/bpf: Test task_file iterator without visiting pthreads (Yauheni Kaliuta) [1874006] - bpf: Avoid iterating duplicated files for task_file iterator (Yauheni Kaliuta) [1874006] - bpf: {cpu,dev}map: Change various functions return type from int to void (Yauheni Kaliuta) [1874006] - module: Fix up module_notifier return values (Yauheni Kaliuta) [1874006] - bpf: Remove bpf_lsm_file_mprotect from sleepable list. (Yauheni Kaliuta) [1874006] - samples/bpf: Fix to xdpsock to avoid recycling frames (Yauheni Kaliuta) [1874006] - samples/bpf: Optimize l2fwd performance in xdpsock (Yauheni Kaliuta) [1874006] - samples/bpf: Add new sample xsk_fwd.c (Yauheni Kaliuta) [1874006] - libbpf: Support shared umems between queues and devices (Yauheni Kaliuta) [1874006] - selftests/bpf: Add sleepable tests (Yauheni Kaliuta) [1874006] - libbpf: Support sleepable progs (Yauheni Kaliuta) [1874006] - bpf: Add bpf_copy_from_user() helper. (Yauheni Kaliuta) [1874006] - bpf: Fix build without BPF_LSM. (Yauheni Kaliuta) [1874006] - bpf: Introduce sleepable BPF programs (Yauheni Kaliuta) [1874006] - mm/error_inject: Fix allow_error_inject function signatures. (Yauheni Kaliuta) [1874006] - mm/filemap.c: enable error injection at add_to_page_cache() (Yauheni Kaliuta) [1874006] - mm/page_alloc.c: allow error injection (Yauheni Kaliuta) [1874006] - bpf: selftests: Add test for different inner map size (Yauheni Kaliuta) [1874006] - bpf: Relax max_entries check for most of the inner map types (Yauheni Kaliuta) [1874006] - bpf: Add map_meta_equal map ops (Yauheni Kaliuta) [1874006] - bpf: Make bpf_link_info.iter similar to bpf_iter_link_info (Yauheni Kaliuta) [1874006] - tools, bpf/build: Cleanup feature files on make clean (Yauheni Kaliuta) [1874006] - libbpf: Fix compilation warnings for 64-bit printf args (Yauheni Kaliuta) [1874006] - selftests/bpf: Add verifier tests for xor operation (Yauheni Kaliuta) [1874006] - libbpf: Fix unintentional success return code in bpf_object__load (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix spelling mistake "scoket" -> "socket" (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix open call in trigger_fstat_events (Yauheni Kaliuta) [1874006] - selftests/bpf: Add set test to resolve_btfids (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for d_path helper (Yauheni Kaliuta) [1874006] - selftests/bpf: Add verifier test for d_path helper (Yauheni Kaliuta) [1874006] - bpf: Update .BTF_ids section in btf.rst with sets info (Yauheni Kaliuta) [1874006] - bpf: Add d_path helper (Yauheni Kaliuta) [1874006] - bpf: Add BTF_SET_START/END macros (Yauheni Kaliuta) [1874006] - bpf: Add btf_struct_ids_match function (Yauheni Kaliuta) [1874006] - bpf: Factor btf_struct_access function (Yauheni Kaliuta) [1874006] - bpf: Remove recursion call in btf_struct_access (Yauheni Kaliuta) [1874006] - bpf: Add type_id pointer as argument to __btf_resolve_size (Yauheni Kaliuta) [1874006] - bpf: Add elem_id pointer as argument to __btf_resolve_size (Yauheni Kaliuta) [1874006] - bpf: Move btf_resolve_size into __btf_resolve_size (Yauheni Kaliuta) [1874006] - tools resolve_btfids: Add support for set symbols (Yauheni Kaliuta) [1874006] - tools resolve_btfids: Add size check to get_id function (Yauheni Kaliuta) [1874006] - bpf: Disallow BPF_PRELOAD in allmodconfig builds (Yauheni Kaliuta) [1874006] - bpf: Add selftests for local_storage (Yauheni Kaliuta) [1874006] - bpf: Allow local storage to be used from LSM programs (Yauheni Kaliuta) [1874006] - bpf: Implement bpf_local_storage for inodes (Yauheni Kaliuta) [1874006] - bpf: Split bpf_local_storage to bpf_sk_storage (Yauheni Kaliuta) [1874006] - bpf: Generalize bpf_sk_storage (Yauheni Kaliuta) [1874006] - bpf: Generalize caching for sk_storage. (Yauheni Kaliuta) [1874006] - bpf: Renames in preparation for bpf_local_storage (Yauheni Kaliuta) [1874006] - selftests/bpf: Enable tc verbose mode for test_sk_assign (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor tracepoint tracing programs with libbpf (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor kprobe tracing programs with libbpf (Yauheni Kaliuta) [1874006] - selftests: bpf: Fix sockmap update nits (Yauheni Kaliuta) [1874006] - libbpf: Fix type compatibility check copy-paste error (Yauheni Kaliuta) [1874006] - libbpf: Avoid false unuinitialized variable warning in bpf_core_apply_relo (Yauheni Kaliuta) [1874006] - bpf: sk_lookup: Add user documentation (Yauheni Kaliuta) [1874006] - docs: Correct subject prefix and update LLVM info (Yauheni Kaliuta) [1874006] - libbpf: Normalize and improve logging across few functions (Yauheni Kaliuta) [1874006] - libbpf: Skip well-known ELF sections when iterating ELF (Yauheni Kaliuta) [1874006] - libbpf: Add __noinline macro to bpf_helpers.h (Yauheni Kaliuta) [1874006] - libbpf: Factor out common ELF operations and improve logging (Yauheni Kaliuta) [1874006] - libbpf: Add perf_buffer APIs for better integration with outside epoll loop (Yauheni Kaliuta) [1874006] - bpftool: Implement link_query for bpf iterators (Yauheni Kaliuta) [1874006] - bpf: Implement link_query callbacks in map element iterators (Yauheni Kaliuta) [1874006] - bpf: Implement link_query for bpf iterators (Yauheni Kaliuta) [1874006] - selftests/bpf: List newest Clang built-ins needed for some CO-RE selftests (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix two minor compilation warnings reported by GCC 4.9 (Yauheni Kaliuta) [1874006] - libbpf: Fix libbpf build on compilers missing __builtin_mul_overflow (Yauheni Kaliuta) [1874006] - libbpf: Fix detection of BPF helper call instruction (Yauheni Kaliuta) [1874006] - selftests/bpf: Add bpffs preload test. (Yauheni Kaliuta) [1874006] - bpf: Add kernel module with user mode driver that populates bpffs. (Yauheni Kaliuta) [1874006] - bpf: Add BPF program and map iterators as built-in BPF programs. (Yauheni Kaliuta) [1874006] - bpf: Factor out bpf_link_by_id() helper. (Yauheni Kaliuta) [1874006] - libbpf: Simplify the return expression of build_map_pin_path() (Yauheni Kaliuta) [1874006] - selftests/bpf: Add tests for ENUMVAL_EXISTS/ENUMVAL_VALUE relocations (Yauheni Kaliuta) [1874006] - libbpf: Implement enum value-based CO-RE relocations (Yauheni Kaliuta) [1874006] - selftests/bpf: Add CO-RE relo test for TYPE_ID_LOCAL/TYPE_ID_TARGET (Yauheni Kaliuta) [1874006] - selftests/bpf: Test TYPE_EXISTS and TYPE_SIZE CO-RE relocations (Yauheni Kaliuta) [1874006] - libbpf: Implement type-based CO-RE relocations support (Yauheni Kaliuta) [1874006] - libbpf: Centralize poisoning and poison reallocarray() (Yauheni Kaliuta) [1874006] - tools/bpftool: Remove libbpf_internal.h usage in bpftool (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test validating failure on ambiguous relocation value (Yauheni Kaliuta) [1874006] - libbpf: Improve relocation ambiguity detection (Yauheni Kaliuta) [1874006] - libbpf: Detect minimal BTF support and skip BTF loading, if missing (Yauheni Kaliuta) [1874006] - libbpf: Sanitize BPF program code for bpf_probe_read_{kernel, user}[_str] (Yauheni Kaliuta) [1874006] - libbpf: Factor out common logic of testing and closing FD (Yauheni Kaliuta) [1874006] - libbpf: Make kernel feature probing lazy (Yauheni Kaliuta) [1874006] - libbpf: Disable -Wswitch-enum compiler warning (Yauheni Kaliuta) [1874006] - libbpf: Convert comma to semicolon (Yauheni Kaliuta) [1874006] - samples: bpf: Fix broken bpf programs due to removed symbol (Yauheni Kaliuta) [1874006] - bpf: Replace GPLv2 boilerplate/reference with SPDX - rule 206 (Jiri Benc) [1874006] - LSM: Make some functions static (Yauheni Kaliuta) [1874006] - LSM: Make lsm_early_cred() and lsm_early_task() local functions. (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the ipc security blob (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the task security (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the inode security (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the file security (Yauheni Kaliuta) [1874006] - Infrastructure management of the cred security blob (Yauheni Kaliuta) [1874006] - kernel: move CONFIG_TASKS_TRACE_RCU fields to task_struct_rh (Jiri Benc) [1874006] - kernel: store pointer to task_struct in task_struct_rh (Jiri Benc) [1874006]- igb: Add double-check MTA_REGISTER for i210 and i211 (Corinna Vinschen) [1920286] - igb: Redistribute memory for transmit packet buffers when in Qav mode (Corinna Vinschen) [1920286] - igb: Fix fall-through warnings for Clang (Corinna Vinschen) [1920286] - intel: clean up mismatched header comments (Corinna Vinschen) [1920286] - igb: check timestamp validity (Corinna Vinschen) [1920286] - igb: Fix duplicate include guard (Corinna Vinschen) [1920286] - intel: Update drivers to use ethtool_sprintf (Corinna Vinschen) [1920286] - net: ethernet: intel: igb: Typo fix in the file igb_main.c (Corinna Vinschen) [1920286] - igb: avoid premature Rx buffer reuse (Corinna Vinschen) [1920286] - igb: remove h from printk format specifier (Corinna Vinschen) [1920286] - igb: Enable RSS for Intel I211 Ethernet Controller (Corinna Vinschen) [1920286] - igb: fix TDBAL register show incorrect value (Corinna Vinschen) [1920286] - net: igb: use skb_csum_is_sctp instead of protocol check (Corinna Vinschen) [1920286] - igb: avoid transmit queue timeout in xdp path (Corinna Vinschen) [1920286] - igb: use xdp_do_flush (Corinna Vinschen) [1920286] - igb: skb add metasize for xdp (Corinna Vinschen) [1920286] - igb: XDP extack message on error (Corinna Vinschen) [1920286] - igb: take VLAN double header into account (Corinna Vinschen) [1920286] - igb: XDP xmit back fix error code (Corinna Vinschen) [1920286] - igb: add XDP support (Corinna Vinschen) [1920286] - r8169: don't advertise pause in jumbo mode (Josef Oskera) [1935346] - r8169: fix DMA being used after buffer free if WoL is enabled (Josef Oskera) [1935346] - r8169: fix r8168fp_adjust_ocp_cmd function (Josef Oskera) [1935346] - r8169: use macro pm_ptr (Josef Oskera) [1935346] - r8169: fix resuming from suspend on RTL8105e if machine runs on battery (Josef Oskera) [1935346] - r8169: handle tx before rx in napi poll (Josef Oskera) [1935346] - r8169: disable detection of bogus xid's 308/388 (Josef Oskera) [1935346] - r8169: re-configure WOL settings on resume from hibernation (Josef Oskera) [1935346] - r8169: don't try to disable interrupts if NAPI is scheduled already (Josef Oskera) [1935346] - r8169: Add support for another RTL8168FP (Josef Oskera) [1935346] - r8169: fix WoL on shutdown if CONFIG_DEBUG_SHIRQ is set (Josef Oskera) [1935346] - r8169: work around RTL8125 UDP hw bug (Josef Oskera) [1935346] - r8169: remove not needed call to rtl_wol_enable_rx from rtl_shutdown (Josef Oskera) [1935346] - r8169: improve DASH support (Josef Oskera) [1935346] - r8169: improve rtl8169_rx_csum (Josef Oskera) [1935346] - r8169: align rtl_wol_suspend_quirk with vendor driver and rename it (Josef Oskera) [1935346] - r8169: clean up rtl_pll_power_down/up functions (Josef Oskera) [1935346] - r8169: improve handling D3 PLL power-down (Josef Oskera) [1935346] - r8169: enable PLL power-down for chip versions 34, 35, 36, 42 (Josef Oskera) [1935346] - r8169: make use of the unaligned access helpers (Josef Oskera) [1935346] - r8169: tweak max read request size for newer chips also in jumbo mtu mode (Josef Oskera) [1935346] - r8169: align RTL8168e jumbo pcie read request size with vendor driver (Josef Oskera) [1935346] - r8169: don't wakeup-enable device on shutdown if WOL is disabled (Josef Oskera) [1935346] - r8169: improve rtl_ocp_reg_failure (Josef Oskera) [1935346] - r8169: replace BUG_ON with WARN in _rtl_eri_write (Josef Oskera) [1935346] - r8169: improve RTL8168g PHY suspend quirk (Josef Oskera) [1935346] - r8169: move ERI access functions to avoid forward declaration (Josef Oskera) [1935346] - r8169: work around power-saving bug on some chip versions (Josef Oskera) [1935346] - r8169: make NUM_RX_DESC a signed int (Josef Oskera) [1935346] - r8169: improve rtl_rx (Josef Oskera) [1935346] - r8169: set tc_offset only if tally counter reset isn't supported (Josef Oskera) [1935346] - net: phy: realtek: read actual speed on rtl8211f to detect downshift (Josef Oskera) [1935346] - r8169: use dev_err_probe in rtl_get_ether_clk (Josef Oskera) [1935346] - r8169: reduce number of workaround doorbell rings (Josef Oskera) [1935346] - r8169: remove not needed check in rtl8169_start_xmit (Josef Oskera) [1935346] - r8169: remove nr_frags argument from rtl_tx_slots_avail (Josef Oskera) [1935346] - r8169: improve rtl8169_start_xmit (Josef Oskera) [1935346] - r8169: improve rtl_tx (Josef Oskera) [1935346] - r8169: use READ_ONCE in rtl_tx_slots_avail (Josef Oskera) [1935346] - net: phy: realtek: support paged operations on RTL8201CP (Josef Oskera) [1935346] - r8169: disable hw csum for short packets on all chip versions (Josef Oskera) [1935346] - r8169: fix potential skb double free in an error path (Josef Oskera) [1935346] - r8169: work around short packet hw bug on RTL8125 (Josef Oskera) [1935346] - net: phy: realtek: Add support for RTL8221B-CG series (Josef Oskera) [1935346] - r8169: set IRQF_NO_THREAD if MSI(X) is enabled (Josef Oskera) [1935346] - r8169: align number of tx descriptors with vendor driver (Josef Oskera) [1935346] - r8169: use pm_runtime_put_sync in rtl_open error path (Josef Oskera) [1935346] - r8169: remove unneeded memory barrier in rtl_tx (Josef Oskera) [1935346] - r8169: remove no longer needed private rx/tx packet/byte counters (Josef Oskera) [1935346] - r8169: use struct pcpu_sw_netstats for rx/tx packet/byte counters (Josef Oskera) [1935346] - treewide: Use fallthrough pseudo-keyword (Josef Oskera) [1935346] - r8169: fix jumbo packet handling on RTL8168e (Josef Oskera) [1915314] - sctp: delay auto_asconf init until binding the first addr (Xin Long) [1952020] - netfilter: x_tables: fix compat match/target pad out-of-bound write (Florian Westphal) [1950014] - netfilter: arp_tables: add pre_exit hook for table unregister (Florian Westphal) [1950014] - netfilter: bridge: add pre_exit hooks for ebtable unregistration (Florian Westphal) [1950014] - netfilter: nft_limit: avoid possible divide error in nft_limit_init (Florian Westphal) [1950014] - netfilter: conntrack: do not print icmpv6 as unknown via /proc (Florian Westphal) [1950014] - netfilter: flowtable: fix NAT IPv6 offload mangling (Florian Westphal) [1950014] - netfilter: flowtable: Make sure GC works periodically in idle system (Florian Westphal) [1950014] - netfilter: nftables: report EOPNOTSUPP on unsupported flowtable flags (Florian Westphal) [1950014] - netfilter: ctnetlink: fix dump of the expect mask attribute (Florian Westphal) [1950014] - netfilter: x_tables: gpf inside xt_find_revision() (Florian Westphal) [1950014] - netfilter: conntrack: skip identical origin tuple in same zone only (Florian Westphal) [1950014] - flow_dissector: fix byteorder of dissected ICMP ID (Paolo Abeni) [1950288] - flow_dissector: fix TTL and TOS dissection on IPv4 fragments (Paolo Abeni) [1950288] - net: Disable NETIF_F_HW_TLS_RX when RXCSUM is disabled (Paolo Abeni) [1950288] - net: core: devlink: use right genl user_ptr when handling port param get/set (Paolo Abeni) [1950288] - net_sched: gen_estimator: support large ewma log (Paolo Abeni) [1950288] - net: Allow NETIF_F_HW_TLS_TX if IP_CSUM && IPV6_CSUM (Paolo Abeni) [1950288] - net: Disable NETIF_F_HW_TLS_TX when HW_CSUM is disabled (Paolo Abeni) [1950288] - devlink: Add devlink port documentation (Petr Oros) [1935708] - devlink: Support get and set state of port function (Petr Oros) [1935708] - devlink: Support add and delete devlink port (Petr Oros) [1935708] - devlink: Introduce PCI SF port flavour and port attribute (Petr Oros) [1935708] - devlink: Prepare code to fill multiple port function attributes (Petr Oros) [1935708] - net: core: devlink: simplify the return expression of devlink_nl_cmd_trap_set_doit() (Petr Oros) [1935708] - video: hyperv_fb: Add ratelimit on error message (Mohammed Gamal) [1957804] - ovl: allow upperdir inside lowerdir (Miklos Szeredi) [1903647] - i2c: i801: Add support for Intel Alder Lake PCH-P (Steve Best) [1929488] - pinctrl: tigerlake: Add Alder Lake-P ACPI ID (Steve Best) [1929492] - xfs: set aside allocation btree blocks from block reservation (Brian Foster) [1911738] - xfs: introduce in-core global counter of allocbt blocks (Brian Foster) [1911738] - xfs: unconditionally read all AGFs on mounts with perag reservation (Brian Foster) [1911738] - xfs: drop unnecessary setfilesize helper (Brian Foster) [1942348] - xfs: drop unused ioend private merge and setfilesize code (Brian Foster) [1942348] - xfs: open code ioend needs workqueue helper (Brian Foster) [1942348] - xfs: drop submit side trans alloc for append ioends (Brian Foster) [1942348] - blk-mq: Use request queue-wide tags for tagset-wide sbitmap (Ming Lei) [1932145] - blk-mq: Some tag allocation code refactoring (Ming Lei) [1932145] - blk-mq: Swap two calls in blk_mq_exit_queue() (Ming Lei) [1932145] - blk-mq: plug request for shared sbitmap (Ming Lei) [1932145] - blk-mq: set default elevator as deadline in case of hctx shared tagset (Ming Lei) [1932145] - powerpc/perf: Fix PMU constraint check for EBB events (Diego Domingos) [1926573] - s390/idle: fix suspicious RCU usage (Waiman Long) [1963142] - x86/cpu: Add another Alder Lake CPU to the Intel family (Steve Best) [1962033] - x86/split_lock: Don't write MSR_TEST_CTRL on CPUs that aren't whitelisted (Prarit Bhargava) [1837350] - Documentation/admin-guide: Change doc for split_lock_detect parameter (Prarit Bhargava) [1837350] - x86/traps: Handle #DB for bus lock (Prarit Bhargava) [1837350] - x86/cpufeatures: Enumerate #DB for bus lock detection (Prarit Bhargava) [1837350] - x86/split_lock: Enable the split lock feature on another Alder Lake CPU (Prarit Bhargava) [1925373] - x86/cpu: Add another Alder Lake CPU to the Intel family (Prarit Bhargava) [1925373] - x86/split_lock: Enable the split lock feature on Sapphire Rapids and Alder Lake CPUs (Prarit Bhargava) [1925373]- libbpf: Add user-space variants of BPF_CORE_READ() family of macros (Jiri Olsa) [1896362] - libbpf: Switch tracing and CO-RE helper macros to bpf_probe_read_kernel() (Jiri Olsa) [1896362] - selftests/bpf: Fix test_vmlinux test to use bpf_probe_read_user() (Jiri Olsa) [1896362] - samples/bpf, selftests/bpf: Use bpf_probe_read_kernel (Jiri Olsa) [1896362] - bpf: Restrict bpf_probe_read{, str}() only to archs where they work (Jiri Olsa) [1896362] - perf/x86/intel/uncore: Add Rocket Lake support (Michael Petlan) [1837502] - perf/x86/cstate: Add Rocket Lake CPU support (Michael Petlan) [1837497] - perf/x86/intel: Add Rocket Lake CPU support (Michael Petlan) [1837497] - perf/x86/msr: Add Rocket Lake CPU support (Michael Petlan) [1837497] - tick/nohz: Kick only _queued_ task whose tick dependency is updated (Waiman Long) [1922901] - tick/nohz: Change signal tick dependency to wake up CPUs of member tasks (Waiman Long) [1922901] - tick/nohz: Only wake up a single target cpu when kicking a task (Waiman Long) [1922901] - tick/nohz: Narrow down noise while setting current task's tick dependency (Waiman Long) [1922901] - sched/fair: Fix shift-out-of-bounds in load_balance() (Phil Auld) [1958730] - redhat/configs: Update torture test configs (Waiman Long) [1941211] - rcu: Do not report strict GPs for outgoing CPUs (Waiman Long) [1941211] - rcu,ftrace: Fix ftrace recursion (Waiman Long) [1941211] - arm64: smp: Tell RCU about CPUs that fail to come online (Waiman Long) [1941211] - rcu: Don't invoke try_invoke_on_locked_down_task() with irqs disabled (Waiman Long) [1941211] - rcu-tasks: Enclose task-list scan in rcu_read_lock() (Waiman Long) [1941211] - rcu-tasks: Fix low-probability task_struct leak (Waiman Long) [1941211] - rcu-tasks: Fix grace-period/unlock race in RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Shorten per-grace-period sleep for RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Selectively enable more RCU Tasks Trace IPIs (Waiman Long) [1941211] - rcu-tasks: Use more aggressive polling for RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Mark variables static (Waiman Long) [1941211] - rcu-tasks: Prevent complaints of unused show_rcu_tasks_classic_gp_kthread() (Waiman Long) [1941211] - rcu: Remove unused "cpu" parameter from rcu_report_qs_rdp() (Waiman Long) [1941211] - torture: Add gdb support (Waiman Long) [1941211] - rcuperf: Change rcuperf to rcuscale (Waiman Long) [1941211] - sched,rcuperf: Convert to sched_set_fifo_low() (Waiman Long) [1941211] - rcu/rcuperf: Convert to SPDX license identifier (Waiman Long) [1941211] - rcutorture: Allow pointer leaks to test diagnostic code (Waiman Long) [1941211] - rcu: Report QS for outermost PREEMPT=n rcu_read_unlock() for strict GPs (Waiman Long) [1941211] - rcu: locking and unlocking need to always be at least barriers (Waiman Long) [1941211] - rcu: Execute RCU reader shortly after rcu_core for strict GPs (Waiman Long) [1941211] - rcu: Provide optional RCU-reader exit delay for strict GPs (Waiman Long) [1941211] - rcu: Make FQS more aggressive in complaining about offline CPUs (Waiman Long) [1941211] - rcu: Clarify comments about FQS loop reporting quiescent states (Waiman Long) [1941211] - rcu: IPI all CPUs at GP end for strict GPs (Waiman Long) [1941211] - rcu: IPI all CPUs at GP start for strict GPs (Waiman Long) [1941211] - rcu: Attempt QS when CPU discovers GP for strict GPs (Waiman Long) [1941211] - rcu: Do full report for .need_qs for strict GPs (Waiman Long) [1941211] - rcu: Always set .need_qs from __rcu_read_lock() for strict GPs (Waiman Long) [1941211] - rcu: Force DEFAULT_RCU_BLIMIT to 1000 for strict RCU GPs (Waiman Long) [1941211] - rcu: Restrict default jiffies_till_first_fqs for strict RCU GPs (Waiman Long) [1941211] - rcu: Reduce leaf fanout for strict RCU grace periods (Waiman Long) [1941211] - rcu: Add Kconfig option for strict RCU grace periods (Waiman Long) [1941211] - rcu/nocb: Add a warning for non-GP kthread running GP code (Waiman Long) [1941211] - rcu: Move rcu_cpu_started per-CPU variable to rcu_data (Waiman Long) [1941211] - scftorture: Add cond_resched() to test loop (Waiman Long) [1941211] - rcutorture: Hoist OOM registry up one level (Waiman Long) [1941211] - rcutorture: Properly synchronize with OOM notifier (Waiman Long) [1941211] - rcutorture: Properly set rcu_fwds for OOM handling (Waiman Long) [1941211] - torture: Add kvm.sh --help and update help message (Waiman Long) [1941211] - refperf: Avoid null pointer dereference when buf fails to allocate (Waiman Long) [1941211] - rcutorture: Add CONFIG_PROVE_RCU_LIST to TREE05 (Waiman Long) [1941211] - torture: Update initrd documentation (Waiman Long) [1941211] - rcutorture: Replace HTTP links with HTTPS ones (Waiman Long) [1941211] - rcu: Fix kerneldoc comments in rcupdate.h (Waiman Long) [1941211] - scftorture: Adapt memory-ordering test to UP operation (Waiman Long) [1941211] - torture: document --allcpus argument added to the kvm.sh script (Waiman Long) [1941211] - scftorture: Block scftorture_invoker() kthreads for offline CPUs (Waiman Long) [1941211] - scftorture: Check unexpected "switch" statement value (Waiman Long) [1941211] - scftorture: Make symbol 'scf_torture_rand' static (Waiman Long) [1941211] - scftorture: Prevent compiler from reducing race probabilities (Waiman Long) [1941211] - scftorture: Flag errors in torture-compatible manner (Waiman Long) [1941211] - scftorture: Consolidate scftorture_invoke_one() scf_check initialization (Waiman Long) [1941211] - scftorture: Consolidate scftorture_invoke_one() check and kfree() (Waiman Long) [1941211] - scftorture: Add smp_call_function() memory-ordering checks (Waiman Long) [1941211] - scftorture: Add smp_call_function_many() memory-ordering checks (Waiman Long) [1941211] - scftorture: Add smp_call_function_single() memory-ordering checks (Waiman Long) [1941211] - scftorture: Summarize per-thread statistics (Waiman Long) [1941211] - torture: Declare parse-console.sh independence from rcutorture (Waiman Long) [1941211] - tick-sched: Clarify "NOHZ: local_softirq_pending" warning (Waiman Long) [1941211] - scftorture: Implement weighted primitive selection (Waiman Long) [1941211] - torture: Add scftorture to the rcutorture scripting (Waiman Long) [1941211] - scftorture: Add smp_call_function() torture test (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_cpu_stall_ftrace_dump (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_kick_kthreads (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_resched_ns (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_divisor (Waiman Long) [1941211] - nocb: Remove show_rcu_nocb_state() false positive printout (Waiman Long) [1941211] - rcu/tree: Remove CONFIG_PREMPT_RCU check in force_qs_rnp() (Waiman Long) [1941211] - nocb: Clarify RCU nocb CPU error message (Waiman Long) [1941211] - rcu/tree: Force quiescent state on callback overload (Waiman Long) [1941211] - rcu/trace: Use gp_seq_req in acceleration's rcu_grace_period tracepoint (Waiman Long) [1941211] - rcu/trace: Print negative GP numbers correctly (Waiman Long) [1941211] - rcutorture: Output number of elapsed grace periods (Waiman Long) [1941211] - rcu: Initialize at declaration time in rcu_exp_handler() (Waiman Long) [1941211] - rcu: Remove KCSAN stubs from update.c (Waiman Long) [1941211] - rcu: Remove KCSAN stubs (Waiman Long) [1941211] - srcu: Remove KCSAN stubs (Waiman Long) [1941211] - rcutorture: Remove KCSAN stubs (Waiman Long) [1941211] - refscale: Change --torture type from refperf to refscale (Waiman Long) [1941211] - refperf: Rename refperf.c to refscale.c and change internal names (Waiman Long) [1941211] - refperf: Rename RCU_REF_PERF_TEST to RCU_REF_SCALE_TEST (Waiman Long) [1941211] - torture: Remove obsolete "cd $KVM" (Waiman Long) [1941211] - torture: Avoid duplicate specification of qemu command (Waiman Long) [1941211] - torture: Dump ftrace at shutdown only if requested (Waiman Long) [1941211] - torture: Add kvm-tranform.sh script for qemu-cmd files (Waiman Long) [1941211] - torture: Add more tracing crib notes to kvm.sh (Waiman Long) [1941211] - torture: Improve diagnostic for KCSAN-incapable compilers (Waiman Long) [1941211] - torture: Correctly summarize build-only runs (Waiman Long) [1941211] - torture: Pass --kmake-arg to all make invocations (Waiman Long) [1941211] - kernel/rcu/tree.c: Fix kernel-doc warnings (Waiman Long) [1941211] - rcu-tasks: Fix synchronize_rcu_tasks_trace() header comment (Waiman Long) [1941211] - rcu: grpnum just records group number (Waiman Long) [1941211] - rcu: grplo/grphi just records CPU number (Waiman Long) [1941211] - rcu: gp_max is protected by root rcu_node's lock (Waiman Long) [1941211] - rcutorture: Check for unwatched readers (Waiman Long) [1941211] - torture: Abstract out console-log error detection (Waiman Long) [1941211] - torture: Add a stop-run capability (Waiman Long) [1941211] - rcu-tasks: Fix code-style issues (Waiman Long) [1941211] - torture: Create qemu-cmd in --buildonly runs (Waiman Long) [1941211] - rcu: Stop shrinker loop (Waiman Long) [1941211] - refperf: Add test for RCU Tasks readers (Waiman Long) [1941211] - refperf: Add test for RCU Tasks Trace readers. (Waiman Long) [1941211] - rcu: Replace 1 with true (Waiman Long) [1941211] - rcu/rcutorture: Replace 0 with false (Waiman Long) [1941211] - refperf: Change readdelay module parameter to nanoseconds (Waiman Long) [1941211] - refperf: Work around 64-bit division (Waiman Long) [1941211] - doc: Document rcuperf's module parameters (Waiman Long) [1941211] - refperf: Adjust refperf.loop default value (Waiman Long) [1941211] - rcu-tasks: Conditionally compile show_rcu_tasks_gp_kthreads() (Waiman Long) [1941211] - rcu-tasks: Add #include of rcupdate_trace.h to update.c (Waiman Long) [1941211] - rcu-tasks: Make rcu_tasks_postscan() be static (Waiman Long) [1941211] - refperf: Add read-side delay module parameter (Waiman Long) [1941211] - lockdep: Complain only once about RCU in extended quiescent state (Waiman Long) [1941211] - refperf: Simplify initialization-time wakeup protocol (Waiman Long) [1941211] - rcu: Allow for smp_call_function() running callbacks from idle (Waiman Long) [1941211] - refperf: Output per-experiment data points (Waiman Long) [1941211] - refperf: Label experiment-number column "Runs" (Waiman Long) [1941211] - refperf: Add warmup and cooldown processing phases (Waiman Long) [1941211] - refperf: More closely synchronize reader start times (Waiman Long) [1941211] - refperf: Convert reader_task structure's "start" field to int (Waiman Long) [1941211] - refperf: Tune reader measurement interval (Waiman Long) [1941211] - refperf: Make functions static (Waiman Long) [1941211] - srcu: Avoid local_irq_save() before acquiring spinlock_t (Waiman Long) [1941211] - refperf: Dynamically allocate thread-summary output buffer (Waiman Long) [1941211] - refperf: Dynamically allocate experiment-summary output buffer (Waiman Long) [1941211] - refperf: Provide module parameter to specify number of experiments (Waiman Long) [1941211] - refperf: Convert nreaders to a module parameter (Waiman Long) [1941211] - refperf: Allow decimal nanoseconds (Waiman Long) [1941211] - refperf: Hoist function-pointer calls out of the loop (Waiman Long) [1941211] - rcu: Introduce single argument kvfree_rcu() interface (Waiman Long) [1941211] - refperf: Add holdoff parameter to allow CPUs to come online (Waiman Long) [1941211] - torture: Add refperf to the rcutorture scripting (Waiman Long) [1941211] - rcuperf: Add comments explaining the high reader overhead (Waiman Long) [1941211] - refperf: Add a test to measure performance of read-side synchronization (Waiman Long) [1941211] - rcuperf: Remove useless while loops around wait_event (Waiman Long) [1941211] - rcu: Provide rcu_irq_exit_check_preempt() (Waiman Long) [1941211] - sched,rcu,tracing: Avoid tracing before in_nmi() is correct (Waiman Long) [1941211] - hardirq/nmi: Allow nested nmi_enter() (Waiman Long) [1941211] - powerpc/64s: Include header file to fix a warning (Waiman Long) [1941211] - powerpc/64s: system reset interrupt preserve HSRRs (Waiman Long) [1941211] - powerpc/64s: Fix HV NMI vs HV interrupt recoverability test (Waiman Long) [1941211] - powerpc/traps: fix recoverability of machine check handling on book3s/32 (Waiman Long) [1941211] - powerpc/traps: restore recoverability of machine_check interrupts (Waiman Long) [1941211] - rcu: Mark rcu_nmi_enter() call to rcu_cleanup_after_idle() noinstr (Waiman Long) [1941211] - rcu: Remove initialized but unused rnp from check_slow_task() (Waiman Long) [1941211] - rcu: Update comment from rsp->rcu_gp_seq to rsp->gp_seq (Waiman Long) [1941211] - rcu: Provide __rcu_is_watching() (Waiman Long) [1941211] - doc: Tasks RCU must protect instructions before trampoline (Waiman Long) [1941211] - fs/btrfs: Add cond_resched() for try_release_extent_mapping() stalls (Waiman Long) [1941211] - rcu-tasks: Convert sleeps to idle priority (Waiman Long) [1941211] - rcu: Expedited grace-period sleeps to idle priority (Waiman Long) [1941211] - rcu: No-CBs-related sleeps to idle priority (Waiman Long) [1941211] - rcu: Priority-boost-related sleeps to idle priority (Waiman Long) [1941211] - rcu: Grace-period-kthread related sleeps to idle priority (Waiman Long) [1941211] - torture: Add --allcpus argument to the kvm.sh script (Waiman Long) [1941211] - torture: Remove whitespace from identify_qemu_vcpus output (Waiman Long) [1941211] - torture: Add script to smoke-test commits in a branch (Waiman Long) [1941211] - trace: events: rcu: Change description of rcu_dyntick trace event (Waiman Long) [1941211] - rcu: Add comment documenting rcu_callback_map's purpose (Waiman Long) [1941211] - rcu: Provide rcu_irq_exit_preempt() (Waiman Long) [1941211] - rcu: Add callbacks-invoked counters (Waiman Long) [1941211] - doc: Timer problems can cause RCU CPU stall warnings (Waiman Long) [1941211] - torture: Remove qemu dependency on EFI firmware (Waiman Long) [1941211] - rcutorture: NULL rcu_torture_current earlier in cleanup code (Waiman Long) [1941211] - rcutorture: Handle non-statistic bang-string error messages (Waiman Long) [1941211] - torture: Set configfile variable to current scenario (Waiman Long) [1941211] - rcutorture: Add races with task-exit processing (Waiman Long) [1941211] - docs: RCU: Don't duplicate chapter names in rculist_nulls.rst (Waiman Long) [1941211] - docs: RCU: Convert stallwarn.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert rcuref.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert torture.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert rculist_nulls.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert lockdep.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert lockdep-splat.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert checklist.txt to ReST (Waiman Long) [1941211] - doc: Add rcutorture scripting to torture.txt (Waiman Long) [1941211] - doc: Fix typo "deference" to "dereference" (Waiman Long) [1941211] - docs: locking: convert docs to ReST and rename to *.rst (Waiman Long) [1941211] - doc/rcuref: Document real world examples in kernel (Waiman Long) [1941211] - Documentation/locking/lockdep: Drop last two chars of sample states (Waiman Long) [1941211] - doc: rcu: Suspicious RCU usage is a warning (Waiman Long) [1941211] - RCU/torture.txt: Remove section MODULE PARAMETERS (Waiman Long) [1941211] - Documentation/lockstat: Fix trivial typo (Waiman Long) [1941211] - rcu: Simplify the calculation of rcu_state.ncpus (Waiman Long) [1941211] - srcu: Fix a typo in comment "amoritized"->"amortized" (Waiman Long) [1941211] - rcuperf: Fix printk format warning (Waiman Long) [1941211] - mm/mmap.c: Add cond_resched() for exit_mmap() CPU stalls (Waiman Long) [1941211] - rcu: Initialize and destroy rcu_synchronize only when necessary (Waiman Long) [1941211] - rcu: Add KCSAN stubs to update.c (Waiman Long) [1941211] - rcu: Add KCSAN stubs (Waiman Long) [1941211] - srcu: Add KCSAN stubs (Waiman Long) [1941211] - rcutorture: Add KCSAN stubs (Waiman Long) [1941211] - rcu/rcutorture: Convert to SPDX license identifier (Waiman Long) [1941211] - rcu: Convert rcu_nohz_full_cpu() ULONG_CMP_LT() to time_before() (Waiman Long) [1941211] - rcu: Convert rcu_initiate_boost() ULONG_CMP_GE() to time_after() (Waiman Long) [1941211] - rcutorture: Convert ULONG_CMP_LT() to time_before() (Waiman Long) [1941211] - rcu: Convert ULONG_CMP_GE() to time_after() for jiffy comparison (Waiman Long) [1941211] - rcu: Add rcu_gp_might_be_stalled() (Waiman Long) [1941211] - torture: Add a --kasan argument (Waiman Long) [1941211] - torture: Save a few lines by using config_override_param initially (Waiman Long) [1941211] - torture: Allow scenario-specific Kconfig options to override CFcommon (Waiman Long) [1941211] - torture: Allow --kconfig options to override --kcsan defaults (Waiman Long) [1941211] - torture: Abstract application of additional Kconfig options (Waiman Long) [1941211] - torture: Eliminate duplicate #CHECK# from ConfigFragment (Waiman Long) [1941211] - torture: Make --kcsan argument also create a summary (Waiman Long) [1941211] - rcutorture: Make rcu_fwds and rcu_fwd_emergency_stop static (Waiman Long) [1941211] - torture: Add --kcsan argument to top-level kvm.sh script (Waiman Long) [1941211] - rcu-tasks: Allow standalone use of TASKS_{TRACE_,}RCU (Waiman Long) [1941211] - rcu: Remove self-stack-trace when all quiescent states seen (Waiman Long) [1941211] - ftrace: Use synchronize_rcu_tasks_rude() instead of ftrace_sync() (Waiman Long) [1941211] - ftrace: Protect ftrace_graph_hash with ftrace_sync (Waiman Long) [1941211] - ftrace: Add comment to why rcu_dereference_sched() is open coded (Waiman Long) [1941211] - tracing: Annotate ftrace_graph_notrace_hash pointer with __rcu (Waiman Long) [1941211] - tracing: Annotate ftrace_graph_hash pointer with __rcu (Waiman Long) [1941211] - tracing/fgraph: Fix set_graph_function from showing interrupts (Waiman Long) [1941211] - rcu: Allow rcutorture to starve grace-period kthread (Waiman Long) [1941211] - rcu: When GP kthread is starved, tag idle threads as false positives (Waiman Long) [1941211] - rcutorture: Right-size TREE10 CPU consumption (Waiman Long) [1941211] - rcu: Replace 1 by true (Waiman Long) [1941211] - rcutorture: Add test of holding scheduler locks across rcu_read_unlock() (Waiman Long) [1941211] - rcu: Replace assigned pointer ret value by corresponding boolean value (Waiman Long) [1941211] - rcu-tasks: Add IPI failure count to statistics (Waiman Long) [1941211] - rcutorture: Add TRACE02 scenario enabling RCU Tasks Trace IPIs (Waiman Long) [1941211] - rcu-tasks: Add count for idle tasks on offline CPUs (Waiman Long) [1941211] - rcu-tasks: Add rcu_dynticks_zero_in_eqs() effectiveness statistics (Waiman Long) [1941211] - rcu-tasks: Make RCU tasks trace also wait for idle tasks (Waiman Long) [1941211] - rcu-tasks: Handle the running-offline idle-task special case (Waiman Long) [1941211] - rcu-tasks: Disable CPU hotplug across RCU tasks trace scans (Waiman Long) [1941211] - rcu: Mark rcu_state.gp_seq to detect more concurrent writes (Waiman Long) [1941211] - rcu-tasks: Allow rcu_read_unlock_trace() under scheduler locks (Waiman Long) [1941211] - rcu-tasks: Avoid IPIing userspace/idle tasks if kernel is so built (Waiman Long) [1941211] - rcu-tasks: Add Kconfig option to mediate smp_mb() vs. IPI (Waiman Long) [1941211] - rcu-tasks: Add grace-period and IPI counts to statistics (Waiman Long) [1941211] - rcu-tasks: Split ->trc_reader_need_end (Waiman Long) [1941211] - rcu-tasks: Provide boot parameter to delay IPIs until late in grace period (Waiman Long) [1941211] - rcu-tasks: Add a grace-period start time for throttling and debug (Waiman Long) [1941211] - rcu: Get rid of some doc warnings in update.c (Waiman Long) [1941211] - rcu-tasks: Make RCU Tasks Trace make use of RCU scheduler hooks (Waiman Long) [1941211] - rcu-tasks: Use context-switch hook for PREEMPT=y kernels (Waiman Long) [1941211] - rcu-tasks: Make rcutorture writer stall output include GP state (Waiman Long) [1941211] - rcu-tasks: Add RCU tasks to rcutorture writer stall output (Waiman Long) [1941211] - rcuperf: Add ability to increase object allocation size (Waiman Long) [1941211] - rcu-tasks: Move #ifdef into tasks.h (Waiman Long) [1941211] - rcutorture: Add flag to produce non-busy-wait task stalls (Waiman Long) [1941211] - rcu: Add per-task state to RCU CPU stall warnings (Waiman Long) [1941211] - sched/core: Add function to sample state of locked-down task (Waiman Long) [1941211] - rcu-tasks: Add stall warnings for RCU Tasks Trace (Waiman Long) [1941211] - rcutorture: Add torture tests for RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Add an RCU Tasks Trace to simplify protection of tracing hooks (Waiman Long) [1941211] - rcutorture: Add a test for synchronize_rcu_mult() (Waiman Long) [1941211] - rcu: Reinstate synchronize_rcu_mult() (Waiman Long) [1941211] - rcu-tasks: Code movement to allow more Tasks RCU variants (Waiman Long) [1941211] - rcu: Fix the (t=0 jiffies) false positive (Waiman Long) [1941211] - rcu-tasks: Further refactor RCU-tasks to allow adding more variants (Waiman Long) [1941211] - rcu-tasks: Use unique names for RCU-Tasks kthreads and messages (Waiman Long) [1941211] - rcutorture: Add torture tests for RCU Tasks Rude (Waiman Long) [1941211] - rcu-tasks: Add an RCU-tasks rude variant (Waiman Long) [1941211] - rcu-tasks: Refactor RCU-tasks to allow variants to be added (Waiman Long) [1941211] - rcu-tasks: Create struct to hold state information (Waiman Long) [1941211] - rcu-tasks: Move Tasks RCU to its own file (Waiman Long) [1941211] - locktorture.c: Fix if-statement empty body warnings (Waiman Long) [1941211] - rcu: Expedite first two FQS scans under callback-overload conditions (Waiman Long) [1941211] - rcu: Mark rcu_state.gp_seq to detect concurrent writes (Waiman Long) [1941211] - rcutorture: Mark data-race potential for rcu_barrier() test statistics (Waiman Long) [1941211] - rcu: Don't use negative nesting depth in __rcu_read_unlock() (Waiman Long) [1941211] - rcu: Remove unused ->rcu_read_unlock_special.b.deferred_qs field (Waiman Long) [1941211] - rcu: Don't set nesting depth negative in rcu_preempt_deferred_qs() (Waiman Long) [1941211] - rcu: Make rcu_read_unlock_special() safe for rq/pi locks (Waiman Long) [1941211] - rcutorture: Make kvm-recheck-rcu.sh handle truncated lines (Waiman Long) [1941211] - rcu: Make RCU IRQ enter/exit functions rely on in_nmi() (Waiman Long) [1941211] - rcu/tree: Mark the idle relevant functions noinstr (Waiman Long) [1941211] - rcu: Add comments marking transitions between RCU watching and not (Waiman Long) [1941211] - rcu: Update __call_rcu() comments (Waiman Long) [1941211] - rcu: Mark rcu_state.ncpus to detect concurrent writes (Waiman Long) [1941211] - rcu: Use data_race() for RCU CPU stall-warning prints (Waiman Long) [1941211] - rcutorture: Manually clean up after rcu_barrier() failure (Waiman Long) [1941211] - rcutorture: Make rcu_torture_barrier_cbs() post from corresponding CPU (Waiman Long) [1941211] - rcu: Make nocb_gp_wait() double-check unexpected-callback warning (Waiman Long) [1941211] - rcu: Tighten rcu_lockdep_assert_cblist_protected() check (Waiman Long) [1941211] - rcu: Optimize and protect atomic_cmpxchg() loop (Waiman Long) [1941211] - rcu/nocb: Add missing annotation for rcu_nocb_bypass_unlock() (Waiman Long) [1941211] - rcu: Don't flag non-starting GPs before GP kthread is running (Waiman Long) [1941211] - rcu: Fix rcu_barrier_callback() race condition (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_state ->gp_start (Waiman Long) [1941211] - rcu: Add missing annotation for rcu_nocb_bypass_lock() (Waiman Long) [1941211] - rcu: Add missing annotation for exit_tasks_rcu_finish() (Waiman Long) [1941211] - rcu: Add missing annotation for exit_tasks_rcu_start() (Waiman Long) [1941211] - rculist: Add brackets around cond argument in __list_check_rcu macro (Waiman Long) [1941211] - rcu: Remove dead code from rcu_segcblist_insert_pend_cbs() (Waiman Long) [1941211] - rcutorture: Annotation lockless accesses to rcu_torture_current (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_data ->gpwrap (Waiman Long) [1941211] - rcu-tasks: *_ONCE() for rcu_tasks_cbs_head (Waiman Long) [1941211] - rcu: Add *_ONCE() for grace-period progress indicators (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_node ->boost_tasks (Waiman Long) [1941211] - srcu: Add data_race() to ->srcu_lock_count and ->srcu_unlock_count arrays (Waiman Long) [1941211] - rcutorture: Add READ_ONCE() to rcu_torture_count and rcu_torture_batch (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_segcblist ->tails[] (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_node ->qsmaskinitnext (Waiman Long) [1941211] - rcu: Add READ_ONCE and data_race() to rcu_node ->boost_tasks (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_state ->gp_req_activity (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_node ->gp_seq (Waiman Long) [1941211] - rcu: Add *_ONCE() and data_race() to rcu_node ->exp_tasks plus locking (Waiman Long) [1941211] - rcu: Add *_ONCE() to rcu_node ->boost_kthread_status (Waiman Long) [1941211] - rcu: Add WRITE_ONCE to rcu_node ->exp_seq_rq store (Waiman Long) [1941211] - srcu: Hold srcu_struct ->lock when updating ->srcu_gp_seq (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_node ->qsmask update (Waiman Long) [1941211] - rcu: Provide debug symbols and line numbers in KCSAN runs (Waiman Long) [1941211] - rcu: Fix exp_funnel_lock()/rcu_exp_wait_wake() datarace (Waiman Long) [1941211] - srcu: Fix process_srcu()/srcu_batches_completed() datarace (Waiman Long) [1941211] - srcu: Fix __call_srcu()/srcu_get_delay() datarace (Waiman Long) [1941211] - srcu: Fix __call_srcu()/process_srcu() datarace (Waiman Long) [1941211] - rcutorture: Fix stray access to rcu_fwd_cb_nodelay (Waiman Long) [1941211] - rcutorture: Fix rcu_torture_one_read()/rcu_torture_writer() data race (Waiman Long) [1941211] - rcutorture: Make kvm-find-errors.sh abort on bad directory (Waiman Long) [1941211] - rcutorture: Summarize summary of build and run results (Waiman Long) [1941211] - rcutorture: Add 100-CPU configuration (Waiman Long) [1941211] - rcu: Warn on for_each_leaf_node_cpu_mask() from non-leaf (Waiman Long) [1941211] - rcu: Fix spelling mistake "leval" -> "level" (Waiman Long) [1941211] - torture: Allow disabling of boottime CPU-hotplug torture operations (Waiman Long) [1941211] - rcutorture: Suppress boottime bad-sequence warnings (Waiman Long) [1941211] - rcutorture: Allow boottime stall warnings to be suppressed (Waiman Long) [1941211] - torture: Forgive -EBUSY from boottime CPU-hotplug operations (Waiman Long) [1941211] - rcutorture: Refrain from callback flooding during boot (Waiman Long) [1941211] - torture: Make results-directory date format completion-friendly (Waiman Long) [1941211] - rcutorture: Suppress forward-progress complaints during early boot (Waiman Long) [1941211] - timer: Use hlist_unhashed_lockless() in timer_pending() (Waiman Long) [1941211] - rcu: React to callback overload by boosting RCU readers (Waiman Long) [1941211] - rcu: React to callback overload by aggressively seeking quiescent states (Waiman Long) [1941211] - rcu: Add and update docbook header comments in list.h (Waiman Long) [1941211] - list: Add hlist_unhashed_lockless() (Waiman Long) [1941211] - list: Don't use WRITE_ONCE() in hlist_add_behind() (Waiman Long) [1941211] - kcsan: Introduce ASSERT_EXCLUSIVE_BITS(var, mask) (Waiman Long) [1941211] - kcsan: Add kcsan_set_access_mask() support (Waiman Long) [1941211] - kcsan: Introduce kcsan_value_change type (Waiman Long) [1941211] - kcsan: Move interfaces that affects checks to kcsan-checks.h (Waiman Long) [1941211] - kcsan: Fix misreporting if concurrent races on same address (Waiman Long) [1941211] - kcsan: Expose core configuration parameters as module params (Waiman Long) [1941211] - kcsan: Add test to generate conflicts via debugfs (Waiman Long) [1941211] - kcsan: Introduce ASSERT_EXCLUSIVE_*() macros (Waiman Long) [1941211] - kcsan: Introduce KCSAN_ACCESS_ASSERT access type (Waiman Long) [1941211] - kcsan: Fix 0-sized checks (Waiman Long) [1941211] - kcsan: Clean up the main KCSAN Kconfig option (Waiman Long) [1941211] - kcsan: Clarify Kconfig option KCSAN_IGNORE_ATOMICS (Waiman Long) [1941211] - kcsan: Add option to assume plain aligned writes up to word size are atomic (Waiman Long) [1941211] - kcsan: Add docbook header for data_race() (Waiman Long) [1941211] - kcsan: Address missing case with KCSAN_REPORT_VALUE_CHANGE_ONLY (Waiman Long) [1941211] - include/linux: Add instrumented.h infrastructure (Waiman Long) [1941211] - kcsan: Make KCSAN compatible with lockdep (Waiman Long) [1941211] - kcsan: Rate-limit reporting per data races (Waiman Long) [1941211] - kcsan: Show full access type in report (Waiman Long) [1941211] - kcsan: Prefer __always_inline for fast-path (Waiman Long) [1941211] - kcsan: Improve various small stylistic details (Waiman Long) [1941211] - x86, kcsan: Enable KCSAN for x86 (Waiman Long) [1941211] - build, kcsan: Add KCSAN build exceptions (Waiman Long) [1941211] - x86/uaccess, kcov: Disable stack protector (Waiman Long) [1941211] - doc: Convert to rcubarrier.txt to ReST (Waiman Long) [1941211] - doc: Convert to rcu_dereference.txt to rcu_dereference.rst (Waiman Long) [1941211] - doc: Convert whatisRCU.txt to .rst (Waiman Long) [1941211] - doc: Converted NMI-RCU.txt to NMI-RCU.rst. (Waiman Long) [1941211] - doc: Convert arrayRCU.txt to arrayRCU.rst (Waiman Long) [1941211] - doc: Update list_for_each_entry_rcu() documentation (Waiman Long) [1941211] - Restore docs "rcu: Restore barrier() to rcu_read_lock() and rcu_read_unlock()" (Waiman Long) [1941211] - Restore docs "treewide: Rename rcu_dereference_raw_notrace() to _check()" (Waiman Long) [1941211] - docs: rcu: Increase toctree to 3 (Waiman Long) [1941211] - docs: rcu: Correct links referring to titles (Waiman Long) [1941211] - docs: rcu: convert some articles from html to ReST (Waiman Long) [1941211] - Revert docs from "rcu: Restore barrier() to rcu_read_lock() and rcu_read_unlock()" (Waiman Long) [1941211] - Documentation: RCU: Add TOC tree hooks (Waiman Long) [1941211] - doc: Describe choice of rcu_dereference() APIs and __rcu usage (Waiman Long) [1941211] - doc: Remove obsolete RCU update functions from RCU documentation (Waiman Long) [1941211] - scsi: ibmvfc: Free channel_setup_buf during device tear down (Steve Best) [1938102] - blk-mq: clearing flush request reference in tags->rqs[] (Ming Lei) [1811030] - blk-mq: clear stale request in tags->rq[] before freeing one request pool (Ming Lei) [1811030] - blk-mq: grab rq->refcount before calling ->fn in blk_mq_tagset_busy_iter (Ming Lei) [1811030] - vsock/vmci: log once the failed queue pair allocation (Stefano Garzarella) [1958248] - VMCI: Stop log spew when qp allocation isn't possible (Stefano Garzarella) [1958248] - vsock/virtio: update credit only if socket is not closed (Stefano Garzarella) [1921694] - powerpc/security: Fix debugfs data leak on 32-bit (Steve Best) [1935661] - powerpc/security: Show powerpc_security_features in debugfs (Steve Best) [1935661] - redhat/configs: Add CONFIG_SYSTEM_REVOCATION_KEYS and CONFIG_SYSTEM_REVOCATION_LIST (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: add 'x509_revocation_list' to gitignore (Vladis Dronov) [1893793] {CVE-2020-26541} - integrity: Load mokx variables into the blacklist keyring (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: Add ability to preload revocation certs (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: Move load_system_certificate_list to a common function (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: Add EFI_CERT_X509_GUID support for dbx entries (Vladis Dronov) [1893793] {CVE-2020-26541} - pNFS/flexfiles: Fix array overflow when flexfiles mirroring is enabled (Benjamin Coddington) [1949575] - net/sunrpc: fix useless comparison in proc_do_xprt() (Benjamin Coddington) [1949575] - net/sunrpc: return 0 on attempt to write to "transports" (Benjamin Coddington) [1949575] - NFSD: MKNOD should return NFSERR_BADTYPE instead of NFSERR_INVAL (Benjamin Coddington) [1949575] - NFSD: NFSv3 PATHCONF Reply is improperly formed (Benjamin Coddington) [1949575] - nfsroot: Default mount option should ask for built-in NFS version (Benjamin Coddington) [1949575] - nfsd: remove unneeded break (Benjamin Coddington) [1949575] - net/sunrpc: Fix return value for sysctl sunrpc.transports (Benjamin Coddington) [1949575] - NFSv4.2: support EXCHGID4_FLAG_SUPP_FENCE_OPS 4.2 EXCHANGE_ID flag (Benjamin Coddington) [1949575] - NFSv4: Fix up RCU annotations for struct nfs_netns_client (Benjamin Coddington) [1949575] - NFS: Only reference user namespace from nfs4idmap struct instead of cred (Benjamin Coddington) [1949575] - NFSD: Hoist status code encoding into XDR encoder functions (Benjamin Coddington) [1949575] - NFSv4: Use the net namespace uniquifier if it is set (Benjamin Coddington) [1949575] - NFSv4: Clean up initialisation of uniquified client id strings (Benjamin Coddington) [1949575] - SUNRPC: Add an xdr_align_data() function (Benjamin Coddington) [1949575] - SUNRPC: Add the ability to expand holes in data pages (Benjamin Coddington) [1949575] - SUNRPC: Split out _shift_data_right_tail() (Benjamin Coddington) [1949575] - SUNRPC: Split out xdr_realign_pages() from xdr_align_pages() (Benjamin Coddington) [1949575] - NFS: Use xdr_page_pos() in NFSv4 decode_getacl() (Benjamin Coddington) [1949575] - SUNRPC: Implement a xdr_page_pos() function (Benjamin Coddington) [1949575] - NFS: fix nfs_path in case of a rename retry (Benjamin Coddington) [1949575] - NFSD: Map nfserr_wrongsec outside of nfsd_dispatch (Benjamin Coddington) [1949575] - NFSD: Remove the RETURN_STATUS() macro (Benjamin Coddington) [1949575] - NFSD: Call NFSv2 encoders on error returns (Benjamin Coddington) [1949575] - NFSD: Fix .pc_release method for NFSv2 (Benjamin Coddington) [1949575] - NFSD: Remove vestigial typedefs (Benjamin Coddington) [1949575] - NFSD: Refactor nfsd_dispatch() error paths (Benjamin Coddington) [1949575] - NFSD: Clean up nfsd_dispatch() variables (Benjamin Coddington) [1949575] - NFSD: Clean up stale comments in nfsd_dispatch() (Benjamin Coddington) [1949575] - NFSD: Clean up switch statement in nfsd_dispatch() (Benjamin Coddington) [1949575] - NFSD: Encoder and decoder functions are always present (Benjamin Coddington) [1949575] - NFSACL: Replace PROC() macro with open code (Benjamin Coddington) [1949575] - lockd: Replace PROC() macro with open code (Benjamin Coddington) [1949575] - NFSD: Add missing NFSv2 .pc_func methods (Benjamin Coddington) [1949575] - fs: nfs: return per memcg count for xattr shrinkers (Benjamin Coddington) [1949575] - nfs: remove incorrect fallthrough label (Benjamin Coddington) [1949575] - nfsd: rq_lease_breaker cleanup (Benjamin Coddington) [1949575] - sunrpc: simplify do_cache_clean (Benjamin Coddington) [1949575] - sunrpc: cache : Replace seq_printf with seq_puts (Benjamin Coddington) [1949575] - silence nfscache allocation warnings with kvzalloc (Benjamin Coddington) [1949575] - nfsd: fix comparison to bool warning (Benjamin Coddington) [1949575] - NFSD: Correct type annotations in user xattr XDR functions (Benjamin Coddington) [1949575] - NFSD: Correct type annotations in user xattr helpers (Benjamin Coddington) [1949575] - SUNRPC/NFSD: Implement xdr_reserve_space_vec() (Benjamin Coddington) [1949575] - nfsd: rename delegation related tracepoints to make them less confusing (Benjamin Coddington) [1949575] - nfsd: Remove unnecessary assignment in nfs4xdr.c (Benjamin Coddington) [1949575] - net: sunrpc: delete repeated words (Benjamin Coddington) [1949575] - nfsd: Fix typo in comment (Benjamin Coddington) [1949575] - nfsd: give up callbacks on revoked delegations (Benjamin Coddington) [1949575] - nfs: fix spellint typo in pnfs.c (Benjamin Coddington) [1949575] - fs,nfs: lift compat nfs4 mount data handling into the nfs code (Benjamin Coddington) [1949575] - nfs: simplify nfs4_parse_monolithic (Benjamin Coddington) [1949575] - xprtrdma: drop double zeroing (Benjamin Coddington) [1949575] - NFSv4.2: xattr cache: remove unused cache struct field (Benjamin Coddington) [1949575] - nfs: Convert to use the preferred fallthrough macro (Benjamin Coddington) [1949575] - NFS4: Fix oops when copy_file_range is attempted with NFS4.0 source (Benjamin Coddington) [1949575] - Replace HTTP links with HTTPS ones: NFS, SUNRPC, and LOCKD clients (Benjamin Coddington) [1949575] - sunrpc: fix duplicated word in (Benjamin Coddington) [1949575] - SUNRPC: Remove remaining dprintks from sched.c (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call sites in RPC queuing functions (Benjamin Coddington) [1949575] - SUNRPC: Clean up RPC scheduler tracepoints (Benjamin Coddington) [1949575] - SUNRPC: Replace rpcbind dprintk call sites with tracepoints (Benjamin Coddington) [1949575] - SUNRPC: Remove more dprintks in rpcb_clnt.c (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call sites in rpcbind XDR functions (Benjamin Coddington) [1949575] - SUNRPC: Hoist trace_xprtrdma_op_setport into generic code (Benjamin Coddington) [1949575] - SUNRPC: Remove rpcb_getport_async dprintk call sites (Benjamin Coddington) [1949575] - SUNRPC: Clean up call_bind_status() observability (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call site in call_decode (Benjamin Coddington) [1949575] - SUNRPC: Trace call_refresh events (Benjamin Coddington) [1949575] - SUNRPC: Add trace_rpc_timeout_status() (Benjamin Coddington) [1949575] - SUNRPC: Mitigate cond_resched() in xprt_transmit() (Benjamin Coddington) [1949575] - SUNRPC: Replace connect dprintk call sites with a tracepoint (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call site in call_start() (Benjamin Coddington) [1949575] - SUNRPC: Remove the dprint_status() macro (Benjamin Coddington) [1949575] - SUNRPC: Replace dprintk() call site in xs_nospace() (Benjamin Coddington) [1949575] - SUNRPC: Replace dprintk() call site in xprt_prepare_transmit (Benjamin Coddington) [1949575] - SUNRPC: Update debugging instrumentation in xprt_do_reserve() (Benjamin Coddington) [1949575] - SUNRPC: Remove debugging instrumentation from xprt_release (Benjamin Coddington) [1949575] - SUNRPC: Hoist trace_xprtrdma_op_allocate into generic code (Benjamin Coddington) [1949575] - SUNRPC: Remove trace_xprt_complete_rqst() (Benjamin Coddington) [1949575] - SUNRPC dont update timeout value on connection reset (Benjamin Coddington) [1949575] - nfs4: strengthen error check to avoid unexpected result (Benjamin Coddington) [1949575] - NFS: remove redundant pointer clnt (Benjamin Coddington) [1949575] - sunrpc: Avoid comma separated statements (Benjamin Coddington) [1949575]- Revert "sctp: Fix SHUTDOWN CTSN Ack in the peer restart case" (Xin Long) [1953839] - sctp: do asoc update earlier in sctp_sf_do_dupcook_b (Xin Long) [1953839] - sctp: do asoc update earlier in sctp_sf_do_dupcook_a (Xin Long) [1953839] - NFSv4: Fixes for nfs4_bitmask_adjust() (Steve Dickson) [1926961] - powerpc/paravirt: Use is_kvm_guest() in vcpu_is_preempted() (Desnes A. Nunes do Rosario) [1918720] - powerpc: Reintroduce is_kvm_guest() as a fast-path check (Desnes A. Nunes do Rosario) [1918720] - powerpc: Rename is_kvm_guest() to check_kvm_guest() (Desnes A. Nunes do Rosario) [1918720] - powerpc: Refactor is_kvm_guest() declaration to new header (Desnes A. Nunes do Rosario) [1918720] - powerpc/pseries: Move some PAPR paravirt functions to their own file (Desnes A. Nunes do Rosario) [1918720] - powerpc/shared: Use static key to detect shared processor (Desnes A. Nunes do Rosario) [1918720] - powerpc/spinlocks: Fix oops in __spin_yield() on bare metal (Desnes A. Nunes do Rosario) [1918720] - powerpc/spinlocks: Rename SPLPAR-only spinlocks (Desnes A. Nunes do Rosario) [1918720] - powerpc/spinlocks: Refactor SHARED_PROCESSOR (Desnes A. Nunes do Rosario) [1918720] - Revert "ACPICA: Interpreter: fix memory leak by using existing buffer" (Mark Langsdorf) [1935928] - x86/efi: Remove EFI PGD build time checks (Mark Langsdorf) [1935928] - ACPI: scan: Fix battery devices sometimes never binding (Mark Langsdorf) [1935928] - ACPI/IORT: Do not blindly trust DMA masks from firmware (Mark Langsdorf) [1935928] - ACPI: thermal: Do not call acpi_thermal_check() directly (Mark Langsdorf) [1935928] - ACPI: sysfs: Prefer "compatible" modalias (Mark Langsdorf) [1935928] - ACPI: scan: Make acpi_bus_get_device() clear return pointer on error (Mark Langsdorf) [1935928] - ACPI: scan: Harden acpi_device_add() against device ID overflows (Mark Langsdorf) [1935928] - ACPI: Update Kconfig help text for items that are no longer modular (Mark Langsdorf) [1935928] - ACPI: PM: s2idle: Drop unused local variables and related code (Mark Langsdorf) [1935928] - ACPI: PM: s2idle: Move x86-specific code to the x86 directory (Mark Langsdorf) [1935928] - ACPI: scan: Add Intel Baytrail Mailbox Device to acpi_ignore_dep_ids (Mark Langsdorf) [1935928] - ACPI: scan: Avoid unnecessary second pass in acpi_bus_scan() (Mark Langsdorf) [1935928] - ACPI: scan: Defer enumeration of devices with _DEP lists (Mark Langsdorf) [1935928] - ACPI: scan: Evaluate _DEP before adding the device (Mark Langsdorf) [1935928] - ACPI: PM: s2idle: Add AMD support to handle _DSM (Mark Langsdorf) [1935928] - ACPI: processor: fix NONE coordination for domain mapping failure (Mark Langsdorf) [1935928] - cpufreq: Fix cpufreq_online() return value on errors (Mark Langsdorf) [1935928] - opp: of: Allow empty opp-table with opp-shared (Mark Langsdorf) [1935928] - dt-bindings: opp: Allow empty OPP tables (Mark Langsdorf) [1935928] - ACPI: Drop acpi_dev_irqresource_disabled() (Mark Langsdorf) [1935928] - resource: Add irqresource_disabled() (Mark Langsdorf) [1935928] - genirq/affinity: Add irq_update_affinity_desc() (Mark Langsdorf) [1935928] - driver core: Add fwnode_init() (Mark Langsdorf) [1935928] - ACPI: scan: Fix up _DEP-related terminology with supplier/consumer (Mark Langsdorf) [1935928] - ACPI: scan: Drop INT3396 from acpi_ignore_dep_ids[] (Mark Langsdorf) [1935928] - Revert "ACPI / resources: Use AE_CTRL_TERMINATE to terminate resources walks" (Mark Langsdorf) [1935928] - ACPI: scan: Add PNP0D80 to the _DEP exceptions list (Mark Langsdorf) [1935928] - PM: ACPI: Refresh wakeup device power configuration every time (Mark Langsdorf) [1935928] - PM: ACPI: PCI: Drop acpi_pm_set_bridge_wakeup() (Mark Langsdorf) [1935928] - ACPI: scan: Call acpi_get_object_info() from acpi_add_single_object() (Mark Langsdorf) [1935928] - ACPI: scan: Add acpi_info_matches_hids() helper (Mark Langsdorf) [1935928] - ACPICA: Update version to 20201113 (Mark Langsdorf) [1935928] - ACPICA: Interpreter: fix memory leak by using existing buffer (Mark Langsdorf) [1935928] - ACPICA: Add function trace macros to improve debugging (Mark Langsdorf) [1935928] - ACPICA: Also handle "orphan" _REG methods for GPIO OpRegions (Mark Langsdorf) [1935928] - ACPICA: Remove extreaneous "the" in comments (Mark Langsdorf) [1935928] - ACPICA: Add 5 new UUIDs to the known UUID table (Mark Langsdorf) [1935928] - ACPI: processor: Drop duplicate setting of shared_cpu_map (Mark Langsdorf) [1935928] - ACPI: EC: Clean up status flags checks in advance_transaction() (Mark Langsdorf) [1935928] - ACPI: EC: Untangle error handling in advance_transaction() (Mark Langsdorf) [1935928] - ACPI: EC: Simplify error handling in advance_transaction() (Mark Langsdorf) [1935928] - ACPI: EC: Rename acpi_ec_is_gpe_raised() (Mark Langsdorf) [1935928] - ACPI: EC: Fold acpi_ec_clear_gpe() into its caller (Mark Langsdorf) [1935928] - ACPI: EC: Eliminate in_interrupt() usage (Mark Langsdorf) [1935928] - ACPI: acpi_drivers.h: Update the kernel doc (Mark Langsdorf) [1935928] - ACPI: acpi_drivers.h: Remove the leftover dead code (Mark Langsdorf) [1935928] - ACPI: tiny-power-button: Simplify the code using module_acpi_driver() (Mark Langsdorf) [1935928] - ACPI: SBS: Simplify the code using module_acpi_driver() (Mark Langsdorf) [1935928] - ACPI: SBS: Simplify the driver init code (Mark Langsdorf) [1935928] - ACPI: debug: Remove the not used function (Mark Langsdorf) [1935928] - ACPI: processor: Remove the duplicated ACPI_PROCESSOR_CLASS macro (Mark Langsdorf) [1935928] - ACPI: watchdog: Replace open coded variant of resource_union() (Mark Langsdorf) [1935928] - PCI/ACPI: Replace open coded variant of resource_union() (Mark Langsdorf) [1935928] - resource: Introduce resource_union() for overlapping resources (Mark Langsdorf) [1935928] - resource: Group resource_overlaps() with other inline helpers (Mark Langsdorf) [1935928] - resource: Simplify region_intersects() by reducing conditionals (Mark Langsdorf) [1935928] - ACPI, APEI: make apei_resources_all static (Mark Langsdorf) [1935928] - mm/mmu_notifier: allocate mmu_notifier_rh in __mmu_notifier_register() (Jeremy Cline) [1909072]- Amends commit ea6244cc248b to include a version string in module info. (Ken Cox) [1955726] - i40e: use minimal admin queue for kdump (Stefan Assmann) [1834962] - i40e: use minimal Rx and Tx ring buffers for kdump (Stefan Assmann) [1834962] - i40e: use minimal Tx and Rx pairs for kdump (Stefan Assmann) [1834962] - net/sched: sch_frag: fix stack OOB read while fragmenting IPv4 packets (Davide Caratti) [1924608] - openvswitch: fix stack OOB read while fragmenting IPv4 packets (Davide Caratti) [1924608] - net/sched: act_ct: fix wild memory access when clearing fragments (Davide Caratti) [1924608] - selinux: fall back to SECURITY_FS_USE_GENFS if no xattr support (Ondrej Mosnacek) [1934093 1915825] - selinux: mark some global variables __ro_after_init (Ondrej Mosnacek) [1934093] - selinux: make selinuxfs_mount static (Ondrej Mosnacek) [1934093] - selinux: drop the unnecessary aurule_callback variable (Ondrej Mosnacek) [1934093] - selinux: remove unused global variables (Ondrej Mosnacek) [1934093] - selinux: fix inconsistency between inode_getxattr and inode_listsecurity (Ondrej Mosnacek) [1934093] - selinux: Fix fall-through warnings for Clang (Ondrej Mosnacek) [1934093] - selinux: fix inode_doinit_with_dentry() LABEL_INVALID error handling (Ondrej Mosnacek) [1934093] - selinux: allow dontauditx and auditallowx rules to take effect without allowx (Ondrej Mosnacek) [1934093] - selinux: fix error initialization in inode_doinit_with_dentry() (Ondrej Mosnacek) [1934093] - selinux: Fix error return code in sel_ib_pkey_sid_slow() (Ondrej Mosnacek) [1934093] - selinux: access policycaps with READ_ONCE/WRITE_ONCE (Ondrej Mosnacek) [1934093] - selinux: delete repeated words in comments (Ondrej Mosnacek) [1934093] - selinux: add basic filtering for audit trace events (Ondrej Mosnacek) [1934093 1954024] - selinux: add tracepoint on audited events (Ondrej Mosnacek) [1934093 1954024] - selinux: permit removing security.selinux xattr before policy load (Ondrej Mosnacek) [1934093] - exec: Always set cap_ambient in cap_bprm_set_creds (Ondrej Mosnacek) [1934093] - security: remove duplicated include from security.h (Ondrej Mosnacek) [1934093] - security/commoncap: Use xattr security prefix len (Ondrej Mosnacek) [1934093] - LSM: switch to blocking policy update notifiers (Ondrej Mosnacek) [1934093] - security: Make capability_hooks static (Ondrej Mosnacek) [1934093] - securityfs: fix use-after-free on symlink traversal (Ondrej Mosnacek) [1934093] - LSM: Check for NULL cred-security on free (Ondrej Mosnacek) [1934093] - security: check for kstrdup() failure in lsm_append() (Ondrej Mosnacek) [1934093] - scsi: mpt3sas: Block PCI config access from userspace during reset (Tomas Henzl) [1954555] - scsi: mpt3sas: Fix endianness for ActiveCablePowerRequirement (Tomas Henzl) [1954555] - scsi: mpt3sas: Fix error return code of mpt3sas_base_attach() (Tomas Henzl) [1954555] - scsi: mpt3sas: Do not use GFP_KERNEL in atomic context (Tomas Henzl) [1954555] - scsi: mpt3sas: Only one vSES is present even when IOC has multi vSES (Tomas Henzl) [1953421] - scsi: bnx2i: Make bnx2i_process_iscsi_error() simpler and more robust (Nilesh Javali) [1921612] - scsi: bnx2i: Fix bnx2i_set_ccell_info()'s name in description (Nilesh Javali) [1921612] - scsi: bnx2i: Requires MMU (Nilesh Javali) [1921612] - scsi: bnx2i: Remove unnecessary mutex_init() (Nilesh Javali) [1921612] - scsi: bnx2i: Add parameter description and rename another (Nilesh Javali) [1921612] - scsi: bnx2i: Add, remove and edit some function parameter descriptions (Nilesh Javali) [1921612] - scsi: bnx2i: Fix a whole host of kerneldoc issues (Nilesh Javali) [1921612] - scsi: bnx2i: Add missing descriptions for 'attr' parameter (Nilesh Javali) [1921612] - scsi: bnx2i: Fix parameter misnaming in function header (Nilesh Javali) [1921612] - mfd: intel-lpss: Add Intel Alder Lake PCH-P PCI IDs (Steve Best) [1929489] - lib: list_sort.c: add a blank line to avoid kernel-doc warnings (Rafael Aquini) [1900774] - lib/list_sort: fix kerneldoc build error (Rafael Aquini) [1900774] - lib/list_sort: optimize number of calls to comparison function (Rafael Aquini) [1900774] - lib/list_sort: simplify and remove MAX_LIST_LENGTH_BITS (Rafael Aquini) [1900774] - perf bench numa: Fix the condition checks for max number of NUMA nodes (Steve Best) [1936333] - powerpc/perf: Record counter overflow always if SAMPLE_IP is unset (Gustavo Walbon) [1921684] - perf powerpc: Support exposing Performance Monitor Counter SPRs as part of extended regs (Gustavo Walbon) [1921684] - powerpc/perf: Expose Performance Monitor Counter SPR's as part of extended regs (Gustavo Walbon) [1921684] - powerpc/perf: Include PMCs as part of per-cpu cpuhw_events struct (Gustavo Walbon) [1921684] - powerpc/perf: Adds support for programming of Thresholding in P10 (Gustavo Walbon) [1921684] - x86/entry/64: Deduplicate multiple IBRS macros in paranoid_entry (Waiman Long) [1924364] - x86/speculation: Fix prctl() when spectre_v2_user={seccomp,prctl},ibpb (Waiman Long) [1924364] - x86/speculation: Allow IBPB to be conditionally enabled on CPUs with always-on STIBP (Waiman Long) [1924364] - x86/bugs/multihit: Fix mitigation reporting when VMX is not in use (Waiman Long) [1924364] - x86/speculation: Merge one test in spectre_v2_user_select_mitigation() (Waiman Long) [1924364] - x86/bugs: Move enum taa_mitigations to bugs.c (Waiman Long) [1924364] - mm/memcg: set memcg when splitting page (Waiman Long) [1937825] - mm/memcg: rename mem_cgroup_split_huge_fixup to split_page_memcg and add nr_pages argument (Waiman Long) [1937825] - mm, tracing: Fix kmem_cache_free trace event to not print stale pointers (Waiman Long) [1937825] - mm: memcontrol: fix get_active_memcg return value (Waiman Long) [1937825] - fs: buffer: use raw page_memcg() on locked page (Waiman Long) [1937825] - mm/list_lru.c: remove kvfree_rcu_local() (Waiman Long) [1937825] - mm: memcontrol: replace the loop with a list_for_each_entry() (Waiman Long) [1937825] - mm/memcontrol: remove redundant NULL check (Waiman Long) [1937825] - mm: page_counter: re-layout structure to reduce false sharing (Waiman Long) [1937825] - mm: kmem: make __memcg_kmem_(un)charge static (Waiman Long) [1937825] - mm: memcg: add swapcache stat for memcg v2 (Waiman Long) [1937825] - mm/memcg: remove rcu locking for lock_page_lruvec function series (Waiman Long) [1937825] - mm/memcg: revise the using condition of lock_page_lruvec function series (Waiman Long) [1937825] - mm: memcontrol: make the slab calculation consistent (Waiman Long) [1937825] - mm: memcontrol: convert NR_FILE_PMDMAPPED account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_SHMEM_PMDMAPPED account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_SHMEM_THPS account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_FILE_THPS account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_ANON_THPS account to pages (Waiman Long) [1937825] - mm: memcontrol: optimize per-lruvec stats counter memory usage (Waiman Long) [1937825] - mm: memcg/slab: pre-allocate obj_cgroups for slab caches with SLAB_ACCOUNT (Waiman Long) [1937825] - mm/slub: minor coding style tweaks (Waiman Long) [1937825] - mm, slub: remove slub_memcg_sysfs boot param and CONFIG_SLUB_MEMCG_SYSFS_ON (Waiman Long) [1937825] - mm, slub: splice cpu and page freelists in deactivate_slab() (Waiman Long) [1937825] - mm, slab, slub: stop taking cpu hotplug lock (Waiman Long) [1937825] - mm, slab, slub: stop taking memory hotplug lock (Waiman Long) [1937825] - mm, slub: stop freeing kmem_cache_node structures on node offline (Waiman Long) [1937825] - mm/slub: disable user tracing for kmemleak caches by default (Waiman Long) [1937825] - mm/slab: minor coding style tweaks (Waiman Long) [1937825] - mm/sl?b.c: remove ctor argument from kmem_cache_flags (Waiman Long) [1937825] - mm, tracing: record slab name for kmem_cache_free() (Waiman Long) [1937825] - mm: fix numa stats for thp migration (Waiman Long) [1937825] - mm: memcg: fix memcg file_dirty numa stat (Waiman Long) [1937825] - mm/memcontrol: fix warning in mem_cgroup_page_lruvec() (Waiman Long) [1937825] - mm: slub: call account_slab_page() after slab page initialization (Waiman Long) [1937825] - mm/hugetlb: fix deadlock in hugetlb_cow error path (Waiman Long) [1937825] - mm/memcontrol:rewrite mem_cgroup_page_lruvec() (Waiman Long) [1937825] - mm/memcg: remove unused definitions (Waiman Long) [1937825] - mm/memcg: warning on !memcg after readahead page charged (Waiman Long) [1937825] - mm/memcg: bail early from swap accounting if memcg disabled (Waiman Long) [1937825] - mm/lru: revise the comments of lru_lock (Waiman Long) [1937825] - mm/lru: introduce relock_page_lruvec() (Waiman Long) [1937825] - mm/lru: replace pgdat lru_lock with lruvec lock (Waiman Long) [1937825] - mm/lru: move lock into lru_note_cost (Waiman Long) [1937825] - mm/swap.c: serialize memcg changes in pagevec_lru_move_fn (Waiman Long) [1937825] - mm/compaction: do page isolation first in compaction (Waiman Long) [1937825] - mm/lru: introduce TestClearPageLRU() (Waiman Long) [1937825] - mm/mlock: remove __munlock_isolate_lru_page() (Waiman Long) [1937825] - mm/mlock: remove lru_lock on TestClearPageMlocked (Waiman Long) [1937825] - mm/vmscan: remove lruvec reget in move_pages_to_lru (Waiman Long) [1937825] - mm/swap.c: fold vm event PGROTATED into pagevec_move_tail_fn (Waiman Long) [1937825] - mm/memcg: add debug checking in lock_page_memcg (Waiman Long) [1937825] - mm: page_idle_get_page() does not need lru_lock (Waiman Long) [1937825] - mm/rmap: stop store reordering issue on page->mapping (Waiman Long) [1937825] - mm/vmscan: remove unnecessary lruvec adding (Waiman Long) [1937825] - mm/thp: narrow lru locking (Waiman Long) [1937825] - mm/thp: simplify lru_add_page_tail() (Waiman Long) [1937825] - mm/thp: use head for head page in lru_add_page_tail() (Waiman Long) [1937825] - mm/thp: move lru_add_page_tail() to huge_memory.c (Waiman Long) [1937825] - mm: slub: convert sysfs sprintf family to sysfs_emit/sysfs_emit_at (Waiman Long) [1937825] - mm: truncate_complete_page() does not exist any more (Waiman Long) [1937825] - mm/vmscan: drop unneeded assignment in kswapd() (Waiman Long) [1937825] - mm: memcontrol: account pagetables per node (Waiman Long) [1937825] - mm: move lruvec stats update functions to vmstat.h (Waiman Long) [1937825] - mm/memcg: remove incorrect comment (Waiman Long) [1937825] - mm: memcontrol: sssign boolean values to a bool variable (Waiman Long) [1937825] - mm: memcg/slab: rename *_lruvec_slab_state to *_lruvec_kmem_state (Waiman Long) [1937825] - mm: memcg: remove obsolete memcg_has_children() (Waiman Long) [1937825] - mm/page_counter: use page_counter_read in page_counter_set_max (Waiman Long) [1937825] - cgroup: remove obsoleted broken_hierarchy and warned_broken_hierarchy (Waiman Long) [1937825] - docs: cgroup-v1: reflect the deprecation of the non-hierarchical mode (Waiman Long) [1937825] - mm: memcg: deprecate the non-hierarchical mode (Waiman Long) [1937825] - mm: memcg: fix obsolete code comments (Waiman Long) [1937825] - mm/memcg: update page struct member in comments (Waiman Long) [1937825] - mm/rmap: always do TTU_IGNORE_ACCESS (Waiman Long) [1937825] - mm: memcontrol: eliminate redundant check in __mem_cgroup_insert_exceeded() (Waiman Long) [1937825] - mm: memcontrol: remove unused mod_memcg_obj_state() (Waiman Long) [1937825] - mm: memcontrol: add file_thp, shmem_thp to memory.stat (Waiman Long) [1937825] - mm/gup: combine put_compound_head() and unpin_user_page() (Waiman Long) [1937825] - mm: Convert page kmemcg type to a page memcg flag (Waiman Long) [1937825] - mm: Introduce page memcg flags (Waiman Long) [1937825] - mm: memcontrol/slab: Use helpers to access slab page's memcg_data (Waiman Long) [1937825] - mm: memcontrol: Use helpers to read page's memcg data (Waiman Long) [1937825] - hugetlbfs: fix anon huge page migration race (Waiman Long) [1937825] - mm: memcontrol: fix missing wakeup polling thread (Waiman Long) [1937825] - mm/gup: use unpin_user_pages() in __gup_longterm_locked() (Waiman Long) [1937825] - mm/vmscan: fix NR_ISOLATED_FILE corruption on 64-bit (Waiman Long) [1937825] - mm/compaction: stop isolation if too many pages are isolated and we have pages to migrate (Waiman Long) [1937825] - mm/compaction: count pages and stop correctly during page isolation (Waiman Long) [1937825] - mm: kmem: enable kernel memcg accounting from interrupt contexts (Waiman Long) [1937825] - mm: kmem: prepare remote memcg charging infra for interrupt contexts (Waiman Long) [1937825] - mm: kmem: remove redundant checks from get_obj_cgroup_from_current() (Waiman Long) [1937825] - mm, memcg: rework remote charging API to support nesting (Waiman Long) [1937825] - mm: use self-explanatory macros rather than "2" (Waiman Long) [1937825] - mm/vmscan: allow arbitrary sized pages to be paged out (Waiman Long) [1937825] - mm/rmap: fix assumptions of THP size (Waiman Long) [1937825] - mm/huge_memory: fix can_split_huge_page assumption of THP size (Waiman Long) [1937825] - mm/huge_memory: fix page_trans_huge_mapcount assumption of THP size (Waiman Long) [1937825] - mm/huge_memory: fix split assumption of page size (Waiman Long) [1937825] - mm/huge_memory: fix total_mapcount assumption of page size (Waiman Long) [1937825] - mm/page_owner: change split_page_owner to take a count (Waiman Long) [1937825] - mm/memory: remove page fault assumption of compound page size (Waiman Long) [1937825] - mm/filemap: fix page cache removal for arbitrary sized THPs (Waiman Long) [1937825] - mm/vmscan: fix comments for isolate_lru_page() (Waiman Long) [1937825] - mm/vmscan: fix infinite loop in drop_slab_node (Waiman Long) [1937825] - mm: move call to compound_head() in release_pages() (Waiman Long) [1937825] - mm: account PMD tables like PTE tables (Waiman Long) [1937825] - mm/memcg: fix device private memcg accounting (Waiman Long) [1937825] - mm: memcontrol: add the missing numa_stat interface for cgroup v2 (Waiman Long) [1937825] - mm: remove activate_page() from unuse_pte() (Waiman Long) [1937825] - bdi: replace BDI_CAP_NO_{WRITEBACK,ACCT_DIRTY} with a single flag (Waiman Long) [1937825] - mm/thp: fix __split_huge_pmd_locked() for migration PMD (Waiman Long) [1937825] - mm: fix check_move_unevictable_pages() on THP (Waiman Long) [1937825] - mm: migration of hugetlbfs page skip memcg (Waiman Long) [1937825] - mm: and drivers core: Convert hugetlb_report_node_meminfo to sysfs_emit (Waiman Long) [1937825] - drivers core: Miscellaneous changes for sysfs_emit (Waiman Long) [1937825] - drivers core: Reindent a couple uses around sysfs_emit (Waiman Long) [1937825] - drivers core: Remove strcat uses around sysfs_emit and neaten (Waiman Long) [1937825] - drivers core: Use sysfs_emit and sysfs_emit_at for show(device *...) functions (Waiman Long) [1937825] - sysfs: Add sysfs_emit and sysfs_emit_at to format sysfs output (Waiman Long) [1937825] - mm: fix pin vs. gup mismatch with gate pages (Waiman Long) [1937825] - mm/gup: use a standard migration target allocation callback (Waiman Long) [1937825] - mm/hugetlb: make hugetlb migration callback CMA aware (Waiman Long) [1937825] - mm/gup: restrict CMA region by using allocation scope API (Waiman Long) [1937825] - mm/page_alloc: remove a wrapper for alloc_migration_target() (Waiman Long) [1937825] - mm/mempolicy: use a standard migration target allocation callback (Waiman Long) [1937825] - mm/migrate: introduce a standard migration target allocation function (Waiman Long) [1937825] - mm/migrate: clear __GFP_RECLAIM to make the migration callback consistent with regular THP allocations (Waiman Long) [1937825] - mm/hugetlb: unify migration callbacks (Waiman Long) [1937825] - mm/migrate: move migration helper from .h to .c (Waiman Long) [1937825] - mm/page_isolation: prefer the node of the source page (Waiman Long) [1937825] - hugetlbfs: remove call to huge_pte_alloc without i_mmap_rwsem (Waiman Long) [1937825] - mm, oom: show process exiting information in __oom_kill_process() (Waiman Long) [1937825] - doc, mm: clarify /proc//oom_score value range (Waiman Long) [1937825] - doc, mm: sync up oom_score_adj documentation (Waiman Long) [1937825] - mm, oom: make the calculation of oom badness more accurate (Waiman Long) [1937825] - mm: vmscan: consistent update to pgrefill (Waiman Long) [1937825] - mm/vmscan.c: fix typo (Waiman Long) [1937825] - mm: memcontrol: account kernel stack per node (Waiman Long) [1937825] - mm/hugetlb.c: fix pages per hugetlb calculation (Waiman Long) [1937825] - doc: THP CoW fault no longer allocate THP (Waiman Long) [1937825] - driver core: platform: expose numa_node to users in sysfs (Waiman Long) [1937825] - nilfs2: fix null pointer dereference at nilfs_segctor_do_construct() (Waiman Long) [1937825] - mm, memcg: fix some typos in memcontrol.c (Waiman Long) [1937825] - mm/vmsan: fix some typos in comment (Waiman Long) [1937825] - mm: thp: don't need to drain lru cache when splitting and mlocking THP (Waiman Long) [1937825] - mm/vmscan: update the comment of should_continue_reclaim() (Waiman Long) [1937825] - mm/vmscan.c: change prototype for shrink_page_list (Waiman Long) [1937825] - mm/vmscan: count layzfree pages and fix nr_isolated_* mismatch (Waiman Long) [1937825] - mm/vmscan.c: use update_lru_size() in update_lru_sizes() (Waiman Long) [1937825] - mm: simplify calling a compound page destructor (Waiman Long) [1937825] - mm/page_alloc: integrate classzone_idx and high_zoneidx (Waiman Long) [1937825] - mm/page_alloc: use ac->high_zoneidx for classzone_idx (Waiman Long) [1937825] - mm/page_alloc.c: extract check_[new|free]_page_bad() common part to page_bad_reason() (Waiman Long) [1937825] - mm/page_alloc.c: rename free_pages_check() to check_free_page() (Waiman Long) [1937825] - mm/page_alloc.c: rename free_pages_check_bad() to check_free_page_bad() (Waiman Long) [1937825] - mm/page_alloc.c: bad_flags is not necessary for bad_page() (Waiman Long) [1937825] - mm/page_alloc.c: bad_[reason|flags] is not necessary when PageHWPoison (Waiman Long) [1937825] - scs: Report SCS usage in bytes rather than number of entries (Waiman Long) [1937825] - scs: Move accounting into alloc/free functions (Waiman Long) [1937825] - mm/vmscan: remove unnecessary argument description of isolate_lru_pages() (Waiman Long) [1937825] - scs: Add support for stack usage debugging (Waiman Long) [1937825] - scs: Add page accounting for shadow call stack allocations (Waiman Long) [1937825] - scs: Add support for Clang's Shadow Call Stack (SCS) (Waiman Long) [1937825] - mm/migrate.c: unify "not queued for migration" handling in do_pages_move() (Waiman Long) [1937825] - mm/migrate.c: check pagelist in move_pages_and_store_status() (Waiman Long) [1937825] - mm/migrate.c: wrap do_move_pages_to_node() and store_status() (Waiman Long) [1937825] - mm/migrate.c: no need to check for i > start in do_pages_move() (Waiman Long) [1937825] - mm/hugetlb: remove unnecessary memory fetch in PageHeadHuge() (Waiman Long) [1937825] - hugetlbfs: Use i_mmap_rwsem to address page fault/truncate race (Waiman Long) [1937825] - hugetlbfs: use i_mmap_rwsem for more pmd sharing synchronization (Waiman Long) [1937825] - mm,thp,compaction,cma: allow THP migration for CMA allocations (Waiman Long) [1937825] - mm,compaction,cma: add alloc_contig flag to compact_control (Waiman Long) [1937825] - mm/vmscan.c: do_try_to_free_pages(): clean code by removing unnecessary assignment (Waiman Long) [1937825] - mm/vmscan.c: make may_enter_fs bool in shrink_page_list() (Waiman Long) [1937825] - mm/vmscan.c: fix data races using kswapd_classzone_idx (Waiman Long) [1937825] - mm/vmscan.c: remove cpu online notification for now (Waiman Long) [1937825] - mm: vmscan: replace open codings to NUMA_NO_NODE (Waiman Long) [1937825] - mm: swap: make page_evictable() inline (Waiman Long) [1937825] - mm/swap.c: not necessary to export __pagevec_lru_add() (Waiman Long) [1937825] - mm/gup: fix omission of check on FOLL_LONGTERM in gup fast path (Waiman Long) [1937825] - mm: dump_page(): additional diagnostics for huge pinned pages (Waiman Long) [1937825] - mm: improve dump_page() for compound pages (Waiman Long) [1937825] - selftests/vm: run_vmtests: invoke gup_benchmark with basic FOLL_PIN coverage (Waiman Long) [1937825] - mm/gup_benchmark: support pin_user_pages() and related calls (Waiman Long) [1937825] - mm/gup: /proc/vmstat: pin_user_pages (FOLL_PIN) reporting (Waiman Long) [1937825] - mm/gup: page->hpage_pinned_refcount: exact pin counts for huge pages (Waiman Long) [1937825] - mm/gup: track FOLL_PIN pages (Waiman Long) [1937825] - mm/gup: pass gup flags to two more routines (Waiman Long) [1937825] - mm: introduce page_ref_sub_return() (Waiman Long) [1937825] - mm/gup: pass a flags arg to __gup_device_* functions (Waiman Long) [1937825] - mm/gup: split get_user_pages_remote() into two routines (Waiman Long) [1937825] - sysfs: fix static inline declaration of sysfs_groups_change_owner() (Waiman Long) [1937825] - drivers/base/cpu: Simplify s*nprintf() usages (Waiman Long) [1937825] - drivers/base/cpu: Use scnprintf() for avoiding potential buffer overflow (Waiman Long) [1937825] - sysfs: add sysfs_change_owner() (Waiman Long) [1937825] - sysfs: add sysfs_group{s}_change_owner() (Waiman Long) [1937825] - sysfs: add sysfs_link_change_owner() (Waiman Long) [1937825] - sysfs: add sysfs_file_change_owner() (Waiman Long) [1937825] - mm/huge_memory.c: reduce critical section protected by split_queue_lock (Waiman Long) [1937825] - mm/huge_memory.c: use head to emphasize the purpose of page (Waiman Long) [1937825] - mm/huge_memory.c: use head to check huge zero page (Waiman Long) [1937825] - mm/gup: move try_get_compound_head() to top, fix minor issues (Waiman Long) [1937825] - userfaultfd: wrap the common dst_vma check into an inlined function (Waiman Long) [1937825] - userfaultfd: remove unnecessary WARN_ON() in __mcopy_atomic_hugetlb() (Waiman Long) [1937825] - userfaultfd: use vma_pagesize for all huge page size calculation (Waiman Long) [1937825] - mm/hugetlb: avoid looping to the same hugepage if !pages and !vmas (Waiman Long) [1937825] - hugetlb: remove unused hstate in hugetlb_fault_mutex_hash() (Waiman Long) [1937825] - hugetlbfs: convert macros to static inline, fix sparse warning (Waiman Long) [1937825] - hugetlbfs: hugetlb_fault_mutex_hash() cleanup (Waiman Long) [1937825] - mm/gup.c: allow CMA migration to propagate errors back to caller (Waiman Long) [1937825] - mm/gup_benchmark: fix MAP_HUGETLB case (Waiman Long) [1937825] - mm/gup_benchmark: add a missing "w" to getopt string (Waiman Long) [1937825] - mm, page_owner: rename flag indicating that page is allocated (Waiman Long) [1937825] - mm, page_owner: decouple freeing stack trace from debug_pagealloc (Waiman Long) [1937825] - mm, page_owner: fix off-by-one error in __set_page_owner_handle() (Waiman Long) [1937825] - mm/filemap.c: don't initiate writeback if mapping has no dirty pages (Waiman Long) [1937825] - mm, page_owner, debug_pagealloc: save and dump freeing stack trace (Waiman Long) [1937825] - mm, page_owner: keep owner info when freeing the page (Waiman Long) [1937825] - mm, page_owner: record page owner for each subpage (Waiman Long) [1937825] - mm: introduce page_size() (Waiman Long) [1937825] - mm, tracing: Print symbol name for call_site in trace events (Waiman Long) [1937825] - mm/gup.c: mark undo_dev_pagemap as __maybe_unused (Waiman Long) [1937825] - mm, memcg: introduce memory.events.local (Waiman Long) [1937825] - memcg, fsnotify: no oom-kill for remote memcg charging (Waiman Long) [1937825] - mm/swap_state.c: simplify total_swapcache_pages() with get_swap_device() (Waiman Long) [1937825] - mm: make !CONFIG_HUGE_PAGE wrappers into static inlines (Waiman Long) [1937825] - include/linux/hugetlb.h: convert to use vm_fault_t (Waiman Long) [1937825] - mm/page_ext.c: fix an imbalance with kmemleak (Waiman Long) [1937825] - mm/hugetlb: add prot_modify_start/commit sequence for hugetlb update (Waiman Long) [1937825] - iov_iter: optimize page_copy_sane() (Waiman Long) [1937825] - mm: remove __hugepage_set_anon_rmap() (Waiman Long) [1937825] - mm: remove pte_lock_deinit() (Waiman Long) [1937825] - mm/debug.c: make "migrate_reason_names[]" const char * (Waiman Long) [1937825] - vmscan: return NODE_RECLAIM_NOSCAN in node_reclaim() when CONFIG_NUMA is n (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: add MAP_HUGETLB option (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: add MAP_SHARED option (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: allow user specified file (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: fix 'write' flag usage (Waiman Long) [1937825] - mm/page_ext.c: constify lookup_page_ext() argument (Waiman Long) [1937825] - mm, page_alloc: actually ignore mempolicies for high priority allocations (Waiman Long) [1937825] - thp: use mm_file_counter to determine update which rss counter (Waiman Long) [1937825]- RDMA/cxgb4: Fix the reported max_recv_sge value (Kamal Heib) [1931850 1918264] - RDMA/qedr: Fix kernel panic when trying to access recv_cq (Kamal Heib) [1931850] - RDMA/addr: Be strict with gid size (Kamal Heib) [1931850] - IB/hfi1: Fix probe time panic when AIP is enabled with a buggy BIOS (Kamal Heib) [1931850 1921704 1953593] - RDMA/rxe: Fix errant WARN_ONCE in rxe_completer() (Kamal Heib) [1931850] - RDMA/rxe: Fix extra deref in rxe_rcv_mcast_pkt() (Kamal Heib) [1931850] - RDMA/rxe: Fix FIXME in rxe_udp_encap_recv() (Kamal Heib) [1931850] - RDMA/rxe: Fix missed IB reference counting in loopback (Kamal Heib) [1931850] - RDMA/uverbs: Fix kernel-doc warning of _uverbs_alloc (Kamal Heib) [1931850] - RDMA/rxe: Fix missing kconfig dependency on CRYPTO (Kamal Heib) [1931850] - RDMA/cm: Fix IRQ restore in ib_send_cm_sidr_rep (Kamal Heib) [1931850] - RDMA/rxe: Remove unused pkt->offset (Kamal Heib) [1931850] - RDMA/ucma: Fix use-after-free bug in ucma_create_uevent (Kamal Heib) [1931850] - RDMA/core: Fix kernel doc warnings for ib_port_immutable_read() (Kamal Heib) [1931850] - RDMA/ipoib: Remove racy Subnet Manager sendonly join checks (Kamal Heib) [1931850] - RDMA/rxe: Cleanup init_send_wqe (Kamal Heib) [1931850] - RDMA/rxe: Fix minor coding style issues (Kamal Heib) [1931850] - RDMA/rxe: Correct skb on loopback path (Kamal Heib) [1931850] - RDMA/rxe: Fix coding error in rxe_rcv_mcast_pkt (Kamal Heib) [1931850] - RDMA/rxe: Remove useless code in rxe_recv.c (Kamal Heib) [1931850] - RDMA/rxe: Fix coding error in rxe_recv.c (Kamal Heib) [1931850] - RDMA/core: Introduce and use API to read port immutable data (Kamal Heib) [1931850] - RDMA/pvrdma: Replace spin_lock_irqsave with spin_lock in hard IRQ (Kamal Heib) [1931850] - IB/core: Use valid port number to check link layer (Kamal Heib) [1931850] - IB/cm: Avoid a loop when device has 255 ports (Kamal Heib) [1931850] - RDMA/efa: Remove unused syndrome enum values (Kamal Heib) [1931850] - RDMA/efa: Remove unused 'select' field from get/set feature command descriptor (Kamal Heib) [1931850] - RDMA/efa: Remove unnecessary indentation in defs comments (Kamal Heib) [1931850] - RDMA/efa: Remove duplication of upper/lower_32_bits (Kamal Heib) [1931850] - RDMA/efa: Remove redundant NULL pointer check of CQE (Kamal Heib) [1931850] - RDMA/hw/hfi1/rc: Demote incorrectly populated kernel-doc header (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/verbs: Demote non-conforming doc header and fix a misspelling (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/user_exp_rcv: Demote half-documented and kernel-doc abuses (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/ud: Fix a little more doc-rot (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/uc: Fix a little doc-rot (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/tid_rdma: Fix a plethora of kernel-doc issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/sdma: Fix misnaming of 'sdma_send_txlist()'s 'count_out' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/ruc: Fix a small formatting and description issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/qp: Fix some formatting issues and demote kernel-doc abuse (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/rc: Fix a few function documentation issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/pio_copy: Provide entry for 'pio_copy()'s 'dd' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/pcie: Demote kernel-doc abuses (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/netdev_rx: Fix misdocumentation of the 'start_id' param (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/qp: Fix kernel-doc formatting problem (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mad: Fix misspelling of 'rvt_process_mad()'s 'in_mad_size' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/msix: Add description for 'name' and remove superfluous param 'idx' (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/mad: Demote half-completed kernel-doc header fix another (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/iowait: Demote half-completed kernel-doc and fix formatting issue in another (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/srq: Fix a couple of kernel-doc issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/intr: Fix some kernel-doc formatting issues (Kamal Heib) [1931850 1921704] - RDMA/rxe: Replace missing rxe_pool_get_index_locked (Kamal Heib) [1931850] - RDMA/rxe: Remove unneeded pool->state (Kamal Heib) [1931850] - RDMA/rxe: Remove references to ib_device and pool (Kamal Heib) [1931850] - RDMA/rxe: Remove RXE_POOL_ATOMIC (Kamal Heib) [1931850] - RDMA/rxe: Fix misleading comments and names (Kamal Heib) [1931850] - RDMA/rxe: Fix bug in rxe_alloc() (Kamal Heib) [1931850] - IB/umad: Return EPOLLERR in case of when device disassociated (Kamal Heib) [1931850] - IB/umad: Return EIO in case of when device disassociated (Kamal Heib) [1931850] - RDMA/sw/rdmavt/qp: Fix a bunch of kernel-doc misdemeanours (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mr: Fix some issues related to formatting and missing descriptions (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/file_ops: Fix' manage_rcvq()'s 'arg' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/exp_rcv: Fix some kernel-doc formatting issues (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mcast: Demote incomplete kernel-doc header (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mad: Fix 'rvt_process_mad()'s documentation header (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/chip: Fix a bunch of kernel-doc formatting and spelling issues (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/cq: Demote hardly complete kernel-doc header (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/vt: Fix formatting issue and update description for 'context' (Kamal Heib) [1931850 1921704] - RDMA/hw/efa/efa_com: Stop using param description notation for non-params (Kamal Heib) [1931850] - RDMA/uverbs: Don't set rcq for a QP if qp_type is IB_QPT_XRC_INI (Kamal Heib) [1931850] - RDMA/core/iwpm_msg: Add proper descriptions for 'skb' param (Kamal Heib) [1931850] - RDMA/core/iwpm_util: Fix some param description misspellings (Kamal Heib) [1931850] - RDMA/core/counters: Demote non-conformant kernel-doc headers (Kamal Heib) [1931850] - RDMA/core/restrack: Fix kernel-doc formatting issue (Kamal Heib) [1931850] - RDMA/core/sa_query: Demote non-conformant kernel-doc header (Kamal Heib) [1931850] - RDMA/core/multicast: Provide description for 'ib_init_ah_from_mcmember()'s 'rec' param (Kamal Heib) [1931850] - RDMA/core/roce_gid_mgmt: Fix misnaming of 'rdma_roce_rescan_device()'s param 'ib_dev' (Kamal Heib) [1931850] - RDMA/core/cache: Fix some misspellings, missing and superfluous param descriptions (Kamal Heib) [1931850] - RDMA/core: device: Fix formatting in worthy kernel-doc header and demote another (Kamal Heib) [1931850] - IB/iser: Simplify prot_caps setting (Kamal Heib) [1931850] - IB/iser: Enforce iser_max_sectors to be greater than 0 (Kamal Heib) [1931850] - IB/iser: Protect iscsi_max_lun module param using callback (Kamal Heib) [1931850] - IB/iser: Remove unneeded semicolons (Kamal Heib) [1931850] - IB/isert: Simplify signature cap check (Kamal Heib) [1931850] - IB/isert: Remove unneeded semicolon (Kamal Heib) [1931850] - IB/isert: Remove unneeded new lines (Kamal Heib) [1931850] - RDMA/nldev: Return an error message on failure to turn auto mode (Kamal Heib) [1931850] - RDMA/rxe: Fix race in rxe_mcast.c (Kamal Heib) [1931850] - RDMA/rxe: Add unlocked versions of pool APIs (Kamal Heib) [1931850] - RDMA/rxe: Make add/drop key/index APIs type safe (Kamal Heib) [1931850] - RDMA/rxe: Make pool lookup and alloc APIs type safe (Kamal Heib) [1931850] - RDMA/rxe: Add elem_offset field to rxe_type_info (Kamal Heib) [1931850] - RDMA/rxe: Let pools support both keys and indices (Kamal Heib) [1931850] - RDMA/rxe: Remove unneeded RXE_POOL_ATOMIC flag (Kamal Heib) [1931850] - RDMA/rxe: Add check for supported QP types (Kamal Heib) [1931850] - RDMA: Use kzalloc for allocating only one thing (Kamal Heib) [1931850] - RDMA/cma: Delete useless kfree code (Kamal Heib) [1931850] - RDMA/hfi1: remove h from printk format specifier (Kamal Heib) [1931850 1921704] - RDMA: Convert comma to semicolon (Kamal Heib) [1931850] - net: devlink: Add unused port flavour (Petr Oros) [1943273] - devlink: add .trap_group_action_set() callback (Petr Oros) [1943273] - devlink: add parser error drop packet traps (Petr Oros) [1943273] - drop_monitor: Perform cleanup upon probe registration failure (Petr Oros) [1943273] - selftests: net: Add drop monitor test (Petr Oros) [1943273] - drop_monitor: Filter control packets in drop monitor (Petr Oros) [1943273] - drop_monitor: Remove duplicate struct (Petr Oros) [1943273] - drop_monitor: Remove no longer used functions (Petr Oros) [1943273] - drop_monitor: Convert to using devlink tracepoint (Petr Oros) [1943273] - drop_monitor: Prepare probe functions for devlink tracepoint (Petr Oros) [1943273] - devlink: Add a tracepoint for trap reports (Petr Oros) [1943273] - net: devlink: fix reporter dump dumpit (Petr Oros) [1943273] - devlink: have genetlink code to parse the attrs during dumpit (Petr Oros) [1943273] - netfilter: nf_tables: add direct calls for all builtin expressions (Florian Westphal) [1953320] - netfilter: nf_tables: handle meta/lookup with direct call (Florian Westphal) [1953320] - ionic: linearize tso skb with too many frags (Jonathan Toppins) [1940696] - i40e: fix the restart auto-negotiation after FEC modified (Stefan Assmann) [1725560] - ovl: skip getxattr of security labels (Miklos Szeredi) [1956340] - ovl: fix dentry leak in ovl_get_redirect (Miklos Szeredi) [1956340] - ovl: avoid deadlock on directory ioctl (Miklos Szeredi) [1956340] - cap: fix conversions on getxattr (Miklos Szeredi) [1956340] - ovl: perform vfs_getxattr() with mounter creds (Miklos Szeredi) [1956340] - ovl: add warning on user_ns mismatch (Miklos Szeredi) [1956340] - ovl: unprivieged mounts (Miklos Szeredi) [1956340] - ovl: do not get metacopy for userxattr (Miklos Szeredi) [1956340] - ovl: do not fail because of O_NOATIME (Miklos Szeredi) [1956340] - ovl: do not fail when setting origin xattr (Miklos Szeredi) [1956340] - ovl: user xattr (Miklos Szeredi) [1956340] - ovl: simplify file splice (Miklos Szeredi) [1956340] - ovl: make ioctl() safe (Miklos Szeredi) [1956340] - ovl: check privs before decoding file handle (Miklos Szeredi) [1956340] - vfs: verify source area in vfs_dedupe_file_range_one() (Miklos Szeredi) [1956340] - vfs: move cap_convert_nscap() call into vfs_setxattr() (Miklos Szeredi) [1956340] - ovl: fix incorrect extent info in metacopy case (Miklos Szeredi) [1956340] - ovl: expand warning in ovl_d_real() (Miklos Szeredi) [1956340] - ovl: document lower modification caveats (Miklos Szeredi) [1956340] - ovl: warn about orphan metacopy (Miklos Szeredi) [1956340] - ovl: doc clarification (Miklos Szeredi) [1956340] - ovl: introduce new "uuid=off" option for inodes index feature (Miklos Szeredi) [1956340] - ovl: propagate ovl_fs to ovl_decode_real_fh and ovl_encode_real_fh (Miklos Szeredi) [1956340] - ovl: use generic vfs_ioc_setflags_prepare() helper (Miklos Szeredi) [1956340] - ovl: support [S|G]ETFLAGS and FS[S|G]ETXATTR ioctls for directories (Miklos Szeredi) [1956340] - ovl: rearrange ovl_can_list() (Miklos Szeredi) [1956340] - ovl: enumerate private xattrs (Miklos Szeredi) [1956340] - ovl: pass ovl_fs down to functions accessing private xattrs (Miklos Szeredi) [1956340] - ovl: drop flags argument from ovl_do_setxattr() (Miklos Szeredi) [1956340] - ovl: adhere to the vfs_ vs. ovl_do_ conventions for xattrs (Miklos Szeredi) [1956340] - ovl: use ovl_do_getxattr() for private xattr (Miklos Szeredi) [1956340] - ovl: fold ovl_getxattr() into ovl_get_redirect_xattr() (Miklos Szeredi) [1956340] - ovl: clean up ovl_getxattr() in copy_up.c (Miklos Szeredi) [1956340] - duplicate ovl_getxattr() (Miklos Szeredi) [1956340] - ovl: provide a mount option "volatile" (Miklos Szeredi) [1956340 1928211] - ovl: check for incompatible features in work dir (Miklos Szeredi) [1956340 1928211] - ovl: fix lookup of indexed hardlinks with metacopy (Miklos Szeredi) [1956340] - ovl: fix unneeded call to ovl_change_flags() (Miklos Szeredi) [1956340] - ovl: fix mount option checks for nfs_export with no upperdir (Miklos Szeredi) [1956340] - ovl: force read-only sb on failure to create index dir (Miklos Szeredi) [1956340] - ovl: fix regression with re-formatted lower squashfs (Miklos Szeredi) [1956340] - ovl: fix oops in ovl_indexdir_cleanup() with nfs_export=on (Miklos Szeredi) [1956340] - ovl: relax WARN_ON() when decoding lower directory file handle (Miklos Szeredi) [1956340] - ovl: remove not used argument in ovl_check_origin (Miklos Szeredi) [1956340] - ovl: change ovl_copy_up_flags static (Miklos Szeredi) [1956340] - ovl: inode reference leak in ovl_is_inuse true case. (Miklos Szeredi) [1956340] - ovl: remove unnecessary lock check (Miklos Szeredi) [1956340] - ovl: make oip->index bool (Miklos Szeredi) [1956340] - ovl: only pass ->ki_flags to ovl_iocb_to_rwf() (Miklos Szeredi) [1956340] - ovl: make private mounts longterm (Miklos Szeredi) [1956340] - ovl: get rid of redundant members in struct ovl_fs (Miklos Szeredi) [1956340] - ovl: add accessor for ofs->upper_mnt (Miklos Szeredi) [1956340] - ovl: drop negative dentry in upper layer (Miklos Szeredi) [1956340] - ovl: check permission to open real file (Miklos Szeredi) [1956340] - ovl: call secutiry hook in ovl_real_ioctl() (Miklos Szeredi) [1956340] - ovl: verify permissions in ovl_path_open() (Miklos Szeredi) [1956340] - ovl: switch to mounter creds in readdir (Miklos Szeredi) [1956340] - ovl: pass correct flags for opening real directory (Miklos Szeredi) [1956340] - ovl: whiteout inode sharing (Miklos Szeredi) [1956340] - ovl: inherit SB_NOSEC flag from upperdir (Miklos Szeredi) [1956340] - ovl: skip overlayfs superblocks at global sync (Miklos Szeredi) [1956340] - ovl: index dir act as work dir (Miklos Szeredi) [1956340] - ovl: prepare to copy up without workdir (Miklos Szeredi) [1956340] - ovl: cleanup non-empty directories in ovl_indexdir_cleanup() (Miklos Szeredi) [1956340] - ocxl: Add new kernel traces (Steve Best) [1907530] - ocxl: Add mmu notifier (Steve Best) [1907530] - ocxl: Update the Process Element Entry (Steve Best) [1907530] - ocxl: Initiate a TLB invalidate command (Steve Best) [1907530] - ocxl: Assign a register set to a Logical Partition (Steve Best) [1907530] - powerpc/mce: Remove per cpu variables from MCE handlers (Gustavo Walbon) [1921683] - powerpc/mce: Reduce the size of event arrays (Gustavo Walbon) [1921683] - tools/power turbostat: Support Ice Lake D (Prarit Bhargava) [1943439] - PM: hibernate: x86: Use crc32 instead of md5 for hibernation e820 integrity check (Chris von Recklinghausen) [1944636] - vhost/vsock: add IOTLB API support (Stefano Garzarella) [1894101] - vhost: Fix vhost_vq_reset() (Laurent Vivier) [1919126] - perf trace: Fix race in signal handling (Michael Petlan) [1928380] - scsi: sd: sd_zbc: Don't pass GFP_NOIO to kvcalloc (Ewan D. Milne) [1953699] - sd_zbc: clear zone resources for non-zoned case (Ewan D. Milne) [1953699] - scsi: scsi_debug: Fix a memory leak (Ewan D. Milne) [1953699] - scsi: sd: Warn if unsupported ZBC device is probed (Ewan D. Milne) [1953699] - scsi: core: Add 'set_status_byte()' accessor (Ewan D. Milne) [1953699] - scsi: scsi_debug: Do not set COMMAND_COMPLETE (Ewan D. Milne) [1953699] - scsi: scsi_transport_srp: Don't block target in failfast state (Ewan D. Milne) [1953699] - scsi: scsi_debug: Fix memleak in scsi_debug_init() (Ewan D. Milne) [1953699] - scsi: core: Fix -Wformat for scsi_host (Ewan D. Milne) [1953699] - scsi: doc: Fix some kernel-doc markups (Ewan D. Milne) [1953699] - scsi: sr: Initialize ->cmd_len (Ewan D. Milne) [1953699] - scsi: core: Set sc_data_direction to DMA_NONE for no-transfer commands (Ewan D. Milne) [1953699] - scsi: core: Remove scsi_setup_cmnd() and scsi_setup_fs_cmnd() (Ewan D. Milne) [1953699] - scsi: core: Clean up allocation and freeing of sgtables (Ewan D. Milne) [1953699] - scsi: core: Rename scsi_mq_prep_fn() to scsi_prepare_cmd() (Ewan D. Milne) [1953699] - scsi: core: Rename scsi_prep_state_check() to scsi_device_state_check() (Ewan D. Milne) [1953699] - scsi: core: Use rq_dma_dir in scsi_setup_cmnd() (Ewan D. Milne) [1953699] - scsi: core: Remove scsi_init_cmd_errh (Ewan D. Milne) [1953699] - scsi: sd: Allow user to configure command retries (Ewan D. Milne) [1953699] - scsi: sd: sd_zbc: Fix handling of host-aware ZBC disks (Ewan D. Milne) [1953699] - scsi: sd_zbc: Improve zone revalidation (Ewan D. Milne) [1953699] - scsi: sd_zbc: Don't limit max_zone_append sectors to max_hw_sectors (Ewan D. Milne) [1953699] - scsi: sd_zbc: Remove unused inline functions (Ewan D. Milne) [1953699] - nvme: fix the nsid value to print in nvme_validate_or_alloc_ns (Gopal Tiwari) [1921591] - nvme-pci: add the DISABLE_WRITE_ZEROES quirk for a Samsung PM1725a (Gopal Tiwari) [1921591] - nvme-rdma: Fix a use after free in nvmet_rdma_write_data_done (Gopal Tiwari) [1921591] - nvme-core: check ctrl css before setting up zns (Gopal Tiwari) [1921591] - nvme-fc: fix racing controller reset and create association (Gopal Tiwari) [1921591] - nvme-fc: return NVME_SC_HOST_ABORTED_CMD when a command has been aborted (Gopal Tiwari) [1921591] - nvme-fc: set NVME_REQ_CANCELLED in nvme_fc_terminate_exchange() (Gopal Tiwari) [1921591] - nvme: add NVME_REQ_CANCELLED flag in nvme_cancel_request() (Gopal Tiwari) [1921591] - nvme: simplify error logic in nvme_validate_ns() (Gopal Tiwari) [1921591] - nvme: set max_zone_append_sectors nvme_revalidate_zones (Gopal Tiwari) [1921591] - nvmet: model_number must be immutable once set (Gopal Tiwari) [1921591] - nvme-fabrics: fix kato initialization (Gopal Tiwari) [1921591] - nvme-hwmon: Return error code when registration fails (Gopal Tiwari) [1921591] - nvme-pci: add quirks for Lexar 256GB SSD (Gopal Tiwari) [1921591] - nvme-pci: mark Kingston SKC2000 as not supporting the deepest power state (Gopal Tiwari) [1921591] - nvme-pci: mark Seagate Nytro XM1440 as QUIRK_NO_NS_DESC_LIST. (Gopal Tiwari) [1921591] - nvme-tcp: fix crash triggered with a dataless request submission (Gopal Tiwari) [1921591] - nvme-hwmon: rework to avoid devm allocation (Gopal Tiwari) [1921591] - nvme: add 48-bit DMA address quirk for Amazon NVMe controllers (Gopal Tiwari) [1921591] - nvmet: remove else at the end of the function (Gopal Tiwari) [1921591] - nvmet: add helper to report invalid opcode (Gopal Tiwari) [1921591] - nvmet: add nvmet_req_subsys() helper (Gopal Tiwari) [1921591] - nvmet: use invalid cmd opcode helper (Gopal Tiwari) [1921591] - nvmet: use invalid cmd opcode helper (Gopal Tiwari) [1921591] - nvmet-fc: add a missing __rcu annotation to nvmet_fc_tgt_assoc.queues (Gopal Tiwari) [1921591] - nvme-multipath: set nr_zones for zoned namespaces (Gopal Tiwari) [1921591] - nvmet: make nvmet_find_namespace() req based (Gopal Tiwari) [1921591] - nvmet: set status to 0 in case for invalid nsid (Gopal Tiwari) [1921591] - nvmet: return uniform error for invalid ns (Gopal Tiwari) [1921591] - nvmet: remove extra variable in id-ns handler (Gopal Tiwari) [1921591] - nvmet-tcp: fix receive data digest calculation for multiple h2cdata PDUs (Gopal Tiwari) [1921591] - nvme-fabrics: avoid double completions in nvmf_fail_nonready_command (Gopal Tiwari) [1921591] - nvme: introduce a nvme_host_path_error helper (Gopal Tiwari) [1921591] - blk-mq: introduce blk_mq_set_request_complete (Gopal Tiwari) [1921591] - nvme-rdma: handle nvme_rdma_post_send failures better (Gopal Tiwari) [1921591] - nvmet-tcp: fix potential race of tcp socket closing accept_work (Gopal Tiwari) [1921591] - nvme: cleanup zone information initialization (Gopal Tiwari) [1921591] - nvmet-tcp: fix out-of-bounds access when receiving multiple h2cdata PDUs (Gopal Tiwari) [1921591] - nvme-pci: ignore the subsysem NQN on Phison E16 (Gopal Tiwari) [1921591] - nvme-pci: avoid the deepest sleep state on Kingston A2000 SSDs (Gopal Tiwari) [1921591] - nvme-tcp: use cancel tagset helper for tear down (Gopal Tiwari) [1921591] - nvme-rdma: use cancel tagset helper for tear down (Gopal Tiwari) [1921591] - nvme-rdma: add clean action for failed reconnection (Gopal Tiwari) [1921591] - nvme-core: get rid of the extra space (Gopal Tiwari) [1921591] - nvme-tcp: add clean action for failed reconnection (Gopal Tiwari) [1921591] - nvme: add tracing of zns commands (Gopal Tiwari) [1921591] - nvme: parse format nvm command details when tracing (Gopal Tiwari) [1921591] - nvme-core: add cancel tagset helpers (Gopal Tiwari) [1921591] - nvme: refactor ns->ctrl by request (Gopal Tiwari) [1921591] - nvme-tcp: fix wrong setting of request iov_iter (Gopal Tiwari) [1921591] - nvmet: remove extra variable in smart log nsid (Gopal Tiwari) [1921591] - nvme-tcp: get rid of unused helper function (Gopal Tiwari) [1921591] - nvmet: remove extra variable in identify ns (Gopal Tiwari) [1921591] - nvmet: remove extra variable in id-desclist (Gopal Tiwari) [1921591] - nvmet: add lba to sect conversion helpers (Gopal Tiwari) [1921591] - nvme: support command retry delay for admin command (Gopal Tiwari) [1921591] - nvmet: Use nvmet_is_port_enabled helper for pi_enable (Gopal Tiwari) [1921591] - nvme: constify static attribute_group structs (Gopal Tiwari) [1921591] - nvmet-fc: use RCU proctection for assoc_list (Gopal Tiwari) [1921591] - nvmet: Fix nvmet_is_port_enabled indentation (Gopal Tiwari) [1921591] - nvme-pci: add the DISABLE_WRITE_ZEROES quirk for a SPCC device (Gopal Tiwari) [1921591] - nvme-core: use list_add_tail_rcu instead of list_add_tail for nvme_init_ns_head (Gopal Tiwari) [1921591] - nvme: allow revalidate to set a namespace read-only (Gopal Tiwari) [1921591] - nvmet: set right status on error in id-ns handler (Gopal Tiwari) [1921591] - nvme-tcp: avoid request double completion for concurrent nvme_tcp_timeout (Gopal Tiwari) [1921591] - nvme-rdma: avoid request double completion for concurrent nvme_rdma_timeout (Gopal Tiwari) [1921591] - nvme-pci: allow use of cmb on v1.4 controllers (Gopal Tiwari) [1921591] - nvme: check the PRINFO bit before deciding the host buffer length (Gopal Tiwari) [1921591] - nvme-tcp: fix possible data corruption with bio merges (Gopal Tiwari) [1921591] - nvme-tcp: Fix warning with CONFIG_DEBUG_PREEMPT (Gopal Tiwari) [1921591] - nvme: don't intialize hwmon for discovery controllers (Gopal Tiwari) [1921591] - nvmet-rdma: Fix NULL deref when setting pi_enable and traddr INADDR_ANY (Gopal Tiwari) [1921591] - nvmet-rdma: Fix list_del corruption on queue establishment failure (Gopal Tiwari) [1921591] - nvme: unexport functions with no external caller (Gopal Tiwari) [1921591] - nvme: avoid possible double fetch in handling CQE (Gopal Tiwari) [1921591] - nvme: remove the unused status argument from nvme_trace_bio_complete (Gopal Tiwari) [1921591] - nvme-tcp: Fix possible race of io_work and direct send (Gopal Tiwari) [1921591] - nvme-fcloop: Fix sscanf type and list_first_entry_or_null warnings (Gopal Tiwari) [1921591] - nvme-fc: avoid calling _nvme_fc_abort_outstanding_ios from interrupt context (Gopal Tiwari) [1921591] - nvme-loop: use blk_mq_hctx_set_fq_lock_class to set loop's lock class (Gopal Tiwari) [1921591] - nvme: rename controller base dev_t char device (Gopal Tiwari) [1921591] - nvme: remove unnecessary return values (Gopal Tiwari) [1921591] - nvme: rename bdev operations (Gopal Tiwari) [1921591] - nvme: export zoned namespaces without Zone Append support read-only (Gopal Tiwari) [1921591] - nvme: print a warning for when listing active namespaces fails (Gopal Tiwari) [1921591] - nvme: improve an error message on Identify failure (Gopal Tiwari) [1921591] - nvmet: fix a spelling mistake "incuding" -> "including" in Kconfig (Gopal Tiwari) [1921591] - nvme-fabrics: reject I/O to offline device (Gopal Tiwari) [1921591] - nvmet: make sure discovery change log event is protected (Gopal Tiwari) [1921591] - nvme-pci: don't allocate unused I/O queues (Gopal Tiwari) [1921591] - nvme-pci: drop min() from nr_io_queues assignment (Gopal Tiwari) [1921591] - nvmet: use inline bio for passthru fast path (Gopal Tiwari) [1921591] - nvmet: use blk_rq_bio_prep instead of blk_rq_append_bio (Gopal Tiwari) [1921591] - nvmet: remove unused ctrl->cqs (Gopal Tiwari) [1921591] - nvmet: remove op_flags for passthru commands (Gopal Tiwari) [1921591] - nvme: use consistent macro name for timeout (Gopal Tiwari) [1921591] - nvmet: add passthru io timeout value attr (Gopal Tiwari) [1921591] - nvmet: add passthru admin timeout value attr (Gopal Tiwari) [1921591] - nvme: split nvme_alloc_request() (Gopal Tiwari) [1921591] - nvme: centralize setting the timeout in nvme_alloc_request (Gopal Tiwari) [1921591] - nvme: simplify nvme_req_qid() (Gopal Tiwari) [1921591] - nvme-fcloop: add sysfs attribute to inject command drop (Gopal Tiwari) [1921591] - nvme: let set_capacity_revalidate_and_notify update the bdev size (Gopal Tiwari) [1921591] - nvme: directly cache command effects log (Gopal Tiwari) [1921591] - nvme: fix memory leak freeing command effects (Gopal Tiwari) [1921591] - nvme: free sq/cq dbbuf pointers when dbbuf set fails (Gopal Tiwari) [1921591] - nvme-rdma: Use ibdev_to_node instead of dereferencing ->dma_device (Gopal Tiwari) [1921591] - RDMA: Lift ibdev_to_node from rds to common code (Gopal Tiwari) [1921591] - nvme: fix incorrect behavior when BLKROSET is called by the user (Gopal Tiwari) [1921591] - Revert "nvme-pci: remove last_sq_tail" (Gopal Tiwari) [1921591] - nvmet: fix a NULL pointer dereference when tracing the flush command (Gopal Tiwari) [1921591] - nvme-fc: remove nvme_fc_terminate_io() (Gopal Tiwari) [1921591] - nvme-fc: eliminate terminate_io use by nvme_fc_error_recovery (Gopal Tiwari) [1921591] - nvme-fc: remove err_work work item (Gopal Tiwari) [1921591] - nvme-fc: track error_recovery while connecting (Gopal Tiwari) [1921591] - nvme-rdma: handle unexpected nvme completion data length (Gopal Tiwari) [1921591] - nvme: ignore zone validate errors on subsequent scans (Gopal Tiwari) [1921591] - nvme-fc: shorten reconnect delay if possible for FC (Gopal Tiwari) [1921591] - nvme-fc: wait for queues to freeze before calling update_hr_hw_queues (Gopal Tiwari) [1921591] - nvme-fc: fix error loop in create_hw_io_queues (Gopal Tiwari) [1921591] - nvme-fc: fix io timeout to abort I/O (Gopal Tiwari) [1921591] - nvmet: cleanup nvmet_passthru_map_sg() (Gopal Tiwari) [1921591] - nvmet: don't use BLK_MQ_REQ_NOWAIT for passthru (Gopal Tiwari) [1921591] - nvmet: limit passthru MTDS by BIO_MAX_PAGES (Gopal Tiwari) [1921591] - nvme-rdma: fix crash due to incorrect cqe (Gopal Tiwari) [1921591] - nvmet: fix uninitialized work for zero kato (Gopal Tiwari) [1921591] - nvme: use queuedata for nvme_req_qid (Gopal Tiwari) [1921591] - nvme-pci: disable Write Zeroes on Sandisk Skyhawk (Gopal Tiwari) [1921591] - nvme-rdma: fix crash when connect rejected (Gopal Tiwari) [1921591] - nvme: translate zone resource errors (Gopal Tiwari) [1921591] - block: add zone specific block statuses (Gopal Tiwari) [1921591] - nvme-core: remove extra condition for vwc (Gopal Tiwari) [1921591] - nvme-core: remove extra variable (Gopal Tiwari) [1921591] - nvme: remove nvme_identify_ns_list (Gopal Tiwari) [1921591] - nvme: refactor nvme_validate_ns (Gopal Tiwari) [1921591] - nvme: move nvme_validate_ns (Gopal Tiwari) [1921591] - nvme: remove nvme_update_formats (Gopal Tiwari) [1921591] - nvme: update the known admin effects (Gopal Tiwari) [1921591] - nvme: query namespace identifiers before adding the namespace (Gopal Tiwari) [1921591] - nvme: revalidate zone bitmaps in nvme_update_ns_info (Gopal Tiwari) [1921591] - nvme: call nvme_identify_ns as the first thing in nvme_alloc_ns_block (Gopal Tiwari) [1921591] - nvme: set the queue limits in nvme_update_ns_info (Gopal Tiwari) [1921591] - nvme: remove the 0 lba_shift check in nvme_update_ns_info (Gopal Tiwari) [1921591] - nvme: freeze the queue over ->lba_shift updates (Gopal Tiwari) [1921591] - nvme: factor out a nvme_configure_metadata helper (Gopal Tiwari) [1921591] - nvme: lift the check for an unallocated namespace into nvme_identify_ns (Gopal Tiwari) [1921591] - nvme: clean up the check for too large logic block sizes (Gopal Tiwari) [1921591] - nvme: remove the disk argument to nvme_update_zone_info (Gopal Tiwari) [1921591] - nvme: rename __nvme_revalidate_disk (Gopal Tiwari) [1921591] - nvme: rename _nvme_revalidate_disk (Gopal Tiwari) [1921591] - nvme: rename nvme_validate_ns to nvme_validate_or_alloc_ns (Gopal Tiwari) [1921591] - nvme: fix initialization of the zone bitmaps (Gopal Tiwari) [1921591] - nvme-loop: don't put ctrl on nvme_init_ctrl error (Gopal Tiwari) [1921591] - nvme-core: put ctrl ref when module ref get fail (Gopal Tiwari) [1921591] - nvme-tcp: check page by sendpage_ok() before calling kernel_sendpage() (Gopal Tiwari) [1921591] - nvmet-fc: fix missing check for no hostport struct (Gopal Tiwari) [1921591] - nvme: fix error handling in nvme_ns_report_zones (Gopal Tiwari) [1921591] - nvmet: add passthru ZNS support (Gopal Tiwari) [1921591] - nvmet: handle keep-alive timer when kato is modified by a set features cmd (Gopal Tiwari) [1921591] - nvme-pci: allocate separate interrupt for the reserved non-polled I/O queue (Gopal Tiwari) [1921591] - nvmet-tcp: have queue io_work context run on sock incoming cpu (Gopal Tiwari) [1921591] - nvme: lift the file open code from nvme_ctrl_get_by_path (Gopal Tiwari) [1921591] - nvme: use an xarray to lookup the Commands Supported and Effects log (Gopal Tiwari) [1921591] - nvme-pci: Move enumeration by class to be last in the table (Gopal Tiwari) [1921591] - nvme-core: don't use NVME_NSID_ALL for command effects and supported log (Gopal Tiwari) [1921591] - nvme-fc: fail new connections to a deleted host or remote port (Gopal Tiwari) [1921591] - nvme: return errors for hwmon init (Gopal Tiwari) [1921591] - nvme-pci: fix NULL req in completion handler (Gopal Tiwari) [1921591] - nvmet: get transport reference for passthru ctrl (Gopal Tiwari) [1921591] - nvme-core: get/put ctrl and transport module in nvme_dev_open/release() (Gopal Tiwari) [1921591] - nvme-tcp: fix kconfig dependency warning when !CRYPTO (Gopal Tiwari) [1921591] - nvme: use blk_mq_complete_request_remote to avoid an indirect function call (Gopal Tiwari) [1921591] - nvme-core: replace ctrl page size with a macro (Gopal Tiwari) [1921591] - nvme-pci: remove the inline scatterlist optimization (Gopal Tiwari) [1921591] - block: optimize blk_queue_zoned_model for !CONFIG_BLK_DEV_ZONED (Gopal Tiwari) [1921591] - nvme: support for zoned namespaces (Gopal Tiwari) [1921591] - null_blk: introduce zone capacity for zoned device (Gopal Tiwari) [1921591] - block: add capacity field to zone descriptors (Gopal Tiwari) [1921591]- vmxnet3: Set the default of vxlan overlay offload to disabled (Cathy Avery) [1941714] - vmxnet3: Update driver to use ethtool_sprintf (Cathy Avery) [1923796] - vmxnet3: Remove buf_info from device accessible structures (Cathy Avery) [1923796] - igc: Fix overwrites return value (Corinna Vinschen) [1920285] - igc: Add set/clear large buffer helpers (Corinna Vinschen) [1920285] - igc: Refactor Rx timestamp handling (Corinna Vinschen) [1920285] - igc: Introduce igc_get_rx_frame_truesize() helper (Corinna Vinschen) [1920285] - igc: Introduce igc_rx_buffer_flip() helper (Corinna Vinschen) [1920285] - igc: Remove unused argument from igc_tx_cmd_type() (Corinna Vinschen) [1920285] - igc: Fix prototype warning (Corinna Vinschen) [1920285] - igc: Assign boolean values to a bool variable (Corinna Vinschen) [1920285] - igc: Remove unused MII_CR_LOOPBACK (Corinna Vinschen) [1920285] - igc: Remove unused MII_CR_SPEED (Corinna Vinschen) [1920285] - igc: Remove unused MII_CR_RESET (Corinna Vinschen) [1920285] - igc: Fix igc_ptp_rx_pktstamp() (Corinna Vinschen) [1920285] - igc: Fix Supported Pause Frame Link Setting (Corinna Vinschen) [1920285] - igc: Fix Pause Frame Advertising (Corinna Vinschen) [1920285] - igc: reinit_locked() should be called with rtnl_lock (Corinna Vinschen) [1920285] - igc: Fix TDBAL register show incorrect value (Corinna Vinschen) [1920285] - igc: Remove unused FUNC_1 mask (Corinna Vinschen) [1920285] - igc: Remove unused local receiver mask (Corinna Vinschen) [1920285] - igc: Prefer strscpy over strlcpy (Corinna Vinschen) [1920285] - igc: Expose the gPHY firmware version (Corinna Vinschen) [1920285] - igc: Expose the NVM version (Corinna Vinschen) [1920285] - igc: Add Host Good Packets Transmitted Count (Corinna Vinschen) [1920285] - igc: Remove MULR mask define (Corinna Vinschen) [1920285] - igc: Remove igc_set_fw_version comment (Corinna Vinschen) [1920285] - igc: Clean up nvm_operations structure (Corinna Vinschen) [1920285] - igc: check return value of ret_val in igc_config_fc_after_link_up (Corinna Vinschen) [1920285] - igc: set the default return value to -IGC_ERR_NVM in igc_write_nvm_srwr (Corinna Vinschen) [1920285] - igc: Report speed and duplex as unknown when device is runtime suspended (Corinna Vinschen) [1920285] - net: igc: use skb_csum_is_sctp instead of protocol check (Corinna Vinschen) [1920285] - igc: Add new device ID (Corinna Vinschen) [1920285] - net: igbvf: use skb_csum_is_sctp instead of protocol check (Corinna Vinschen) [1920287] - igbvf: Refactor traces (Corinna Vinschen) [1920287] - igbvf: amend removal of MODULE_VERSION (Corinna Vinschen) [1955752] - netlink: add tracepoint at NL_SET_ERR_MSG (Marcelo Ricardo Leitner) [1956983] - xfrm: Provide private skb extensions for segmented and hw offloaded ESP packets (Sabrina Dubroca) [1935575] - xfrm: BEET mode doesn't support fragments for inner packets (Xin Long) [1870900] - xfrm: Fix NULL pointer dereference on policy lookup (Sabrina Dubroca) [1951965] - xfrm: use secpath_exist where applicable (Sabrina Dubroca) [1951965] - net: xfrm: Use sequence counter with associated spinlock (Sabrina Dubroca) [1951965] - net: xfrm: Localize sequence counter per network namespace (Sabrina Dubroca) [1951965] - xfrm: Return the correct errno code (Sabrina Dubroca) [1951965] - xfrm: Fix wraparound in xfrm_policy_addr_delta() (Sabrina Dubroca) [1951965] - xfrm: fix disable_xfrm sysctl when used on xfrm interfaces (Sabrina Dubroca) [1951965] - xfrm: Fix oops in xfrm_replay_advance_bmp (Sabrina Dubroca) [1951965] - ah6: fix error return code in ah6_input() (Sabrina Dubroca) [1951965] - net: xfrm: fix a race condition during allocing spi (Sabrina Dubroca) [1951965] - xfrm: policy: Use sequence counters with associated lock (Sabrina Dubroca) [1951965] - selftests: net: mirror_gre_vlan_bridge_1q: Make an FDB entry static (Ivan Vecera) [1952586] - net: bridge: switchdev: include local flag in FDB notifications (Ivan Vecera) [1952586] - net: bridge: switchdev: refactor br_switchdev_fdb_notify (Ivan Vecera) [1952586] - net: bridge: don't notify switchdev for local FDB addresses (Ivan Vecera) [1952586] - net: bridge: use switchdev for port flags set through sysfs too (Ivan Vecera) [1952586] - net: bridge: vlan: fix error return code in __vlan_add() (Ivan Vecera) [1952586] - net: bridge: add missing counters to ndo_get_stats64 callback (Ivan Vecera) [1952586] - net: bridge: use new function dev_fetch_sw_netstats (Ivan Vecera) [1952586] - net: bridge: fdb: don't flush ext_learn entries (Ivan Vecera) [1952586] - net: bridge: clear bridge's private skb space on xmit (Ivan Vecera) [1952586] - bridge: mcast: Fix MLD2 Report IPv6 payload length check (Ivan Vecera) [1952586] - net: bridge: enfore alignment for ethernet address (Ivan Vecera) [1952586] - netfilter: nft_reject_bridge: enable reject with bridge vlan (Ivan Vecera) [1952586] - net: bridge: vlan: Add a schedule point during VLAN processing (Ivan Vecera) [1952586] - netfilter: ebtables: compat: reject all padding in matches/watchers (Ivan Vecera) [1952586] - net: bridge: deny dev_set_mac_address() when unregistering (Ivan Vecera) [1952586] - net: bridge: fdb: set flags directly in fdb_create (Ivan Vecera) [1952586] - net: bridge: fdb: convert offloaded to use bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert added_by_external_learn to use bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert added_by_user to bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert is_sticky to bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert is_static to bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert is_local to bitops (Ivan Vecera) [1952586] - net: bridge: move default pvid init/deinit to NETDEV_REGISTER/UNREGISTER (Ivan Vecera) [1952586] - bridge: Fix possible use-after-free when deleting bridge port (Ivan Vecera) [1952586] - bridge: update vlan dev link state for bridge netdev changes (Ivan Vecera) [1952586] - bridge: update vlan dev state when port added to or deleted from vlan (Ivan Vecera) [1952586] - bridge: support binding vlan dev link state to vlan member bridge ports (Ivan Vecera) [1952586] - vlan: do not transfer link state in vlan bridge binding mode (Ivan Vecera) [1952586] - vlan: support binding link state to vlan member bridge ports (Ivan Vecera) [1952586] - ipv6: weaken the v4mapped source check (Paolo Abeni) [1950298] - tcp: relookup sock for RST+ACK packets handled by obsolete req sock (Paolo Abeni) [1950298] - inet_connection_sock: remove unused parameter of reqsk_queue_unlink func (Paolo Abeni) [1950298] - tcp: add sanity tests to TCP_QUEUE_SEQ (Paolo Abeni) [1950298] - tcp: fix SO_RCVLOWAT related hangs under mem pressure (Paolo Abeni) [1950298] - tcp: do not mess with cloned skbs in tcp_add_backlog() (Paolo Abeni) [1950298] - tcp: fix cwnd-limited bug for TSO deferral where we send nothing (Paolo Abeni) [1950298] - vfio-ccw: Wire in the request callback (Thomas Huth) [1940451] - vfio-mdev: Wire in a request handler for mdev parent (Thomas Huth) [1940451] - intel_idle: add Iclelake-D support (David Arcari) [1960287] - scsi: ibmvfc: Fix potential race in ibmvfc_wait_for_ops() (Steve Best) [1941180] - powerpc/sstep: Fix VSX instruction emulation (Steve Best) [1934187] - powerpc/pseries/hibernation: remove pseries_suspend_cpu() (Steve Best) [1932970] - powerpc/pseries: remove cede offline state for CPUs (Steve Best) [1932970] - powerpc/pseries: export LPAR security flavor in lparcfg (Steve Best) [1935660] - Makefile: update early devel phase flag (Bruno Meneguele) [1930504]- configs: Enable CONFIG_BPF_KPROBE_OVERRIDE (Jiri Olsa) [1920439] - powerpc/kvm: Fix build error when PPC_MEM_KEYS/PPC_PSERIES=n (Greg Kurz) [1945745] - powerpc/kvm: Fix PR KVM with KUAP/MEM_KEYS enabled (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ensure MSR[HV] is always clear in guest MSR (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ensure MSR[ME] is always set in guest MSR (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix CONFIG_SPAPR_TCE_IOMMU=n default hcalls (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: remove unused kvmppc_h_protect argument (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Remove redundant mtspr PSPB (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Prevent radix guests setting LPCR[TC] (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Disallow LPCR[AIL] to be set to 1 or 2 (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Add a function to filter guest LPCR bits (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Nested move LPCR sanitising to sanitise_hv_regs (Greg Kurz) [1945745] - KVM: PPC: Book3S HV P9: Restore host CTRL SPR after guest exit (Greg Kurz) [1945745] - KVM: PPC: Don't always report hash MMU capability for P9 < DD2.2 (Greg Kurz) [1945745] - powerpc/xive: Assign boolean values to a bool variable (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix host radix SLB optimisation with hash guests (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ensure radix guest has no SLB entries (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Save and restore FSCR in the P9 path (Greg Kurz) [1945745] - KVM: PPC: remove unneeded semicolon (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Use POWER9 SLBIA IH=6 variant to clear SLB (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: No need to clear radix host SLB before loading HPT guest (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix radix guest SLB side channel (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Remove support for running HPT guest on RPT host without mixed mode support (Greg Kurz) [1945745] - powerpc/mm: Update tlbiel loop on POWER10 (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Allow nested guest creation when L0 hv_guest_state > L1 (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Context tracking exit guest context before enabling irqs (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Include prototypes (Greg Kurz) [1945745] - KVM: PPC: Make the VMX instruction emulation routines static (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix mask size for emulated msgsndp (Greg Kurz) [1945745] - KVM: PPC: fix comparison to bool warning (Greg Kurz) [1945745] - KVM: PPC: Book3S: Assign boolean values to a bool variable (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: XIVE: Add a comment regarding VP numbering (Greg Kurz) [1945745] - powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_EOI_FW (Greg Kurz) [1945745] - powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_MASK_FW (Greg Kurz) [1945745] - powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_SHIFT_BUG (Greg Kurz) [1945745] - powerpc/xive: Add a debug_show handler to the XIVE irq_domain (Greg Kurz) [1945745] - powerpc/xive: Rename XIVE_IRQ_NO_EOI to show its a flag (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: XIVE: Show detailed configuration in debug output (Greg Kurz) [1945745] - powerpc/64s: Remove MSR[ISF] bit (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ratelimit machine check messages coming from guests (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Don't attempt to recover machine checks for FWNMI enabled guests (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: XIVE: Fix possible oops when accessing ESB page (Greg Kurz) [1945745] - clocksource/drivers/hyper-v: Move handling of STIMER0 interrupts (Mohammed Gamal) [1940901] - clocksource/drivers/hyper-v: Set clocksource rating based on Hyper-V feature (Mohammed Gamal) [1940901] - clocksource/drivers/hyper-v: Handle sched_clock differences inline (Mohammed Gamal) [1940901] - clocksource/hyperv: use MSR-based access if running as root (Mohammed Gamal) [1940901] - cifs: fix interrupted close commands (Ronnie Sahlberg) [1952263] - cifs: add NULL check for ses->tcon_ipc (Ronnie Sahlberg) [1952263] - smb3: set COMPOUND_FID to FileID field of subsequent compound request (Ronnie Sahlberg) [1952263] - cifs: fix potential use-after-free in cifs_echo_request() (Ronnie Sahlberg) [1952263] - cifs: allow syscalls to be restarted in __smb_send_rqst() (Ronnie Sahlberg) [1952263] - smb3: Handle error case during offload read path (Ronnie Sahlberg) [1952263] - smb3: Avoid Mid pending list corruption (Ronnie Sahlberg) [1952263] - smb3: Call cifs reconnect from demultiplex thread (Ronnie Sahlberg) [1952263] - cifs: fix a memleak with modefromsid (Ronnie Sahlberg) [1952263] - cifs: update internal module version number (Ronnie Sahlberg) [1952263] - smb3: add some missing definitions from MS-FSCC (Ronnie Sahlberg) [1952263] - smb3: remove two unused variables (Ronnie Sahlberg) [1952263] - smb3: add support for stat of WSL reparse points for special file types (Ronnie Sahlberg) [1952263] - SMB3: add support for recognizing WSL reparse tags (Ronnie Sahlberg) [1952263] - cifs: remove bogus debug code (Ronnie Sahlberg) [1952263] - smb3.1.1: fix typo in compression flag (Ronnie Sahlberg) [1952263] - cifs: move smb version mount options into fs_context.c (Ronnie Sahlberg) [1952263] - cifs: move cache mount options to fs_context.ch (Ronnie Sahlberg) [1952263] - cifs: move security mount options into fs_context.ch (Ronnie Sahlberg) [1952263] - cifs: add files to host new mount api (Ronnie Sahlberg) [1952263] - smb3: do not try to cache root directory if dir leases not supported (Ronnie Sahlberg) [1952263] - smb3: fix stat when special device file and mounted with modefromsid (Ronnie Sahlberg) [1952263] - cifs: Print the address and port we are connecting to in generic_ip_connect() (Ronnie Sahlberg) [1952263] - SMB3: Resolve data corruption of TCP server info fields (Ronnie Sahlberg) [1952263] - cifs: make const array static, makes object smaller (Ronnie Sahlberg) [1952263] - SMB3.1.1: Fix ids returned in POSIX query dir (Ronnie Sahlberg) [1952263] - smb3: add dynamic trace point to trace when credits obtained (Ronnie Sahlberg) [1952263] - smb3.1.1: do not fail if no encryption required but server doesn't support it (Ronnie Sahlberg) [1952263] - cifs: Return the error from crypt_message when enc/dec key not found. (Ronnie Sahlberg) [1952263] - smb3.1.1: set gcm256 when requested (Ronnie Sahlberg) [1952263] - smb3.1.1: rename nonces used for GCM and CCM encryption (Ronnie Sahlberg) [1952263] - smb3.1.1: print warning if server does not support requested encryption type (Ronnie Sahlberg) [1952263] - smb3.1.1: add new module load parm enable_gcm_256 (Ronnie Sahlberg) [1952263] - smb3.1.1: add new module load parm require_gcm_256 (Ronnie Sahlberg) [1952263] - cifs: map STATUS_ACCOUNT_LOCKED_OUT to -EACCES (Ronnie Sahlberg) [1952263] - SMB3.1.1: add defines for new signing negotiate context (Ronnie Sahlberg) [1952263] - Handle STATUS_IO_TIMEOUT gracefully (Ronnie Sahlberg) [1952263] - cifs: compute full_path already in cifs_readdir() (Ronnie Sahlberg) [1952263] - cifs: return cached_fid from open_shroot (Ronnie Sahlberg) [1952263] - update structure definitions from updated protocol documentation (Ronnie Sahlberg) [1952263] - smb3: add defines for new crypto algorithms (Ronnie Sahlberg) [1952263] - cifs: fix check of tcon dfs in smb1 (Ronnie Sahlberg) [1952263] - SMB3: Fix mkdir when idsfromsid configured on mount (Ronnie Sahlberg) [1952263] - cifs: Convert to use the fallthrough macro (Ronnie Sahlberg) [1952263] - cifs: Fix an error pointer dereference in cifs_mount() (Ronnie Sahlberg) [1952263] - cifs: document and cleanup dfs mount (Ronnie Sahlberg) [1952263] - cifs: only update prefix path of DFS links in cifs_tree_connect() (Ronnie Sahlberg) [1952263] - cifs: fix double free error on share and prefix (Ronnie Sahlberg) [1952263] - cifs: handle RESP_GET_DFS_REFERRAL.PathConsumed in reconnect (Ronnie Sahlberg) [1952263] - cifs: handle empty list of targets in cifs_reconnect() (Ronnie Sahlberg) [1952263] - cifs: rename reconn_inval_dfs_target() (Ronnie Sahlberg) [1952263] - cifs: reduce number of referral requests in DFS link lookups (Ronnie Sahlberg) [1952263] - cifs: merge __{cifs,smb2}_reconnect[_tcon]() into cifs_tree_connect() (Ronnie Sahlberg) [1952263] - cifs: convert to use be32_add_cpu() (Ronnie Sahlberg) [1952263] - cifs: delete duplicated words in header files (Ronnie Sahlberg) [1952263] - cifs: Remove the superfluous break (Ronnie Sahlberg) [1952263] - cifs: remove unused variable 'server' (Ronnie Sahlberg) [1952263] - smb3: warn on confusing error scenario with sec=krb5 (Ronnie Sahlberg) [1952263] - fuse: 32-bit user space ioctl compat for fuse device (Miklos Szeredi) [1949873] - virtiofs: Fail dax mount if device does not support it (Miklos Szeredi) [1949873] - fuse: fix live lock in fuse_iget() (Miklos Szeredi) [1949873] - mm/filemap: remove unused parameter and change to void type for replace_page_cache_page() (Miklos Szeredi) [1949873] - fuse: support SB_NOSEC flag to improve write performance (Miklos Szeredi) [1949873] - fuse: add a flag FUSE_OPEN_KILL_SUIDGID for open() request (Miklos Szeredi) [1949873] - fuse: don't send ATTR_MODE to kill suid/sgid for handle_killpriv_v2 (Miklos Szeredi) [1949873] - fuse: setattr should set FATTR_KILL_SUIDGID (Miklos Szeredi) [1949873] - fuse: set FUSE_WRITE_KILL_SUIDGID in cached write path (Miklos Szeredi) [1949873] - fuse: rename FUSE_WRITE_KILL_PRIV to FUSE_WRITE_KILL_SUIDGID (Miklos Szeredi) [1949873] - fuse: introduce the notion of FUSE_HANDLE_KILLPRIV_V2 (Miklos Szeredi) [1949873] - fuse: always revalidate if exclusive create (Miklos Szeredi) [1949873] - virtiofs: clean up error handling in virtio_fs_get_tree() (Miklos Szeredi) [1949873] - fuse: add fuse_sb_destroy() helper (Miklos Szeredi) [1949873] - fuse: simplify get_fuse_conn*() (Miklos Szeredi) [1949873] - fuse: get rid of fuse_mount refcount (Miklos Szeredi) [1949873] - virtiofs: simplify sb setup (Miklos Szeredi) [1949873] - virtiofs fix leak in setup (Miklos Szeredi) [1949873] - fuse: launder page should wait for page writeback (Miklos Szeredi) [1949873] - fuse: connection remove fix (Miklos Szeredi) [1949873] - fuse: implement crossmounts (Miklos Szeredi) [1949873] - fuse: Allow fuse_fill_super_common() for submounts (Miklos Szeredi) [1949873] - fuse: split fuse_mount off of fuse_conn (Miklos Szeredi) [1949873] - fuse: drop fuse_conn parameter where possible (Miklos Szeredi) [1949873] - fuse: store fuse_conn in fuse_req (Miklos Szeredi) [1949873] - fuse: add submount support to (Miklos Szeredi) [1949873] - fuse: fix page dereference after free (Miklos Szeredi) [1949873] - fuse: update project homepage (Miklos Szeredi) [1949873] - fuse: Fix parameter for FS_IOC_{GET,SET}FLAGS (Miklos Szeredi) [1949873] - fuse: don't ignore errors from fuse_writepages_fill() (Miklos Szeredi) [1949873] - fuse: clean up condition for writepage sending (Miklos Szeredi) [1949873] - fuse: fix warning in tree_insert() and clean up writepage insertion (Miklos Szeredi) [1949873] - fuse: move rb_erase() before tree_insert() (Miklos Szeredi) [1949873] - fuse: optimize writepages search (Miklos Szeredi) [1949873] - fuse: Update stale comment in queue_interrupt() (Miklos Szeredi) [1949873] - fuse: use true,false for bool variable (Miklos Szeredi) [1949873] - fuse: Add changelog entries for protocols 7.1 - 7.8 (Miklos Szeredi) [1949873] - fuse: reserve byteswapped init opcodes (Miklos Szeredi) [1949873] - convenience helper: get_tree_single() (finish backport) (Miklos Szeredi) [1949873] - fuse: Convert fusectl to use the new mount API (Miklos Szeredi) [1949873] - fuse: fix changelog entry for protocol 7.9 (Miklos Szeredi) [1949873] - fuse: fix changelog entry for protocol 7.12 (Miklos Szeredi) [1949873] - sfc: adjust efx->xdp_tx_queue_count with the real number of initialized queues (Íñigo Huguet) [1934254] - sfc: Remove duplicate argument (Íñigo Huguet) [1934254] - sfc: Use 'skb_add_rx_frag()' instead of hand coding it (Íñigo Huguet) [1934254] - sfc-falcon: Fix a typo (Íñigo Huguet) [1934254] - sfc: ef10: fix TX queue lookup in TX event handling (Íñigo Huguet) [1934254] - sfc: farch: fix TX queue lookup in TX event handling (Íñigo Huguet) [1934254] - sfc: farch: fix TX queue lookup in TX flush done handling (Íñigo Huguet) [1934254] - sfc: reduce the number of requested xdp ev queues (Íñigo Huguet) [1934254] - sfc: support GRE TSO on EF100 (Íñigo Huguet) [1934254] - sfc: correctly support non-partial GSO_UDP_TUNNEL_CSUM on EF100 (Íñigo Huguet) [1934254] - sfc: extend bitfield macros to 19 fields (Íñigo Huguet) [1934254] - sfc: advertise our vlan features (Íñigo Huguet) [1934254] - sfc: only use fixed-id if the skb asks for it (Íñigo Huguet) [1934254] - sfc: implement encap TSO on EF100 (Íñigo Huguet) [1934254] - sfc: extend bitfield macros to 17 fields (Íñigo Huguet) [1934254] - sfc: move initialisation of efx->filter_sem to efx_init_struct() (Íñigo Huguet) [1934254] - net: sfc: Use GFP_KERNEL in efx_ef10_try_update_nic_stats() (Íñigo Huguet) [1934254] - net: sfc: Replace in_interrupt() usage (Íñigo Huguet) [1934254] - sfc: clean up mis-targeted comments (Íñigo Huguet) [1934254] - sfc: fix kdoc warning (Íñigo Huguet) [1934254] - sfc: clean up unused assignments (Íñigo Huguet) [1934254] - sfc: advertise encapsulated offloads on EF10 (Íñigo Huguet) [1934254] - sfc: implement encapsulated TSO on EF10 (Íñigo Huguet) [1934254] - sfc: de-indirect TSO handling (Íñigo Huguet) [1934254] - sfc: select inner-csum-offload TX queues for skbs that need it (Íñigo Huguet) [1934254] - sfc: create inner-csum queues on EF10 if supported (Íñigo Huguet) [1934254] - sfc: define inner/outer csum offload TXQ types (Íñigo Huguet) [1934254] - sfc: decouple TXQ type from label (Íñigo Huguet) [1934254] - sfc: cleanups around efx_alloc_channel (Íñigo Huguet) [1934254] - sfc: remove spurious unreachable return statement (Íñigo Huguet) [1934254] - sfc: remove duplicate call to efx_init_channels from EF100 probe (Íñigo Huguet) [1934254] - sfc: coding style cleanups in mcdi_port_common.c (Íñigo Huguet) [1934254] - sfc: simplify DMA mask setting (Íñigo Huguet) [1934254] - sfc: remove EFX_DRIVER_VERSION (Íñigo Huguet) [1934254] - sfc: handle limited FEC support (Íñigo Huguet) [1934254] - sfc: add ethtool ops and miscellaneous ndos to EF100 (Íñigo Huguet) [1934254] - sfc: remove phy_op indirection (Íñigo Huguet) [1934254] - sfc: remove efx_tx_queue_partner (Íñigo Huguet) [1934254] - sfc: rewrite efx_tx_may_pio (Íñigo Huguet) [1934254] - sfc: use efx_channel_tx_[old_]fill_level() in Siena/EF10 TX datapath (Íñigo Huguet) [1934254] - sfc: use tx_queue->old_read_count in EF100 TX path (Íñigo Huguet) [1934254] - sfc: make ef100 xmit_more handling look more like ef10's (Íñigo Huguet) [1934254] - sfc: add and use efx_tx_send_pending in tx.c (Íñigo Huguet) [1934254] - sfc: return errors from efx_mcdi_set_id_led, and de-indirect (Íñigo Huguet) [1934254] - sfc: fix kernel-doc on struct efx_loopback_state (Íñigo Huguet) [1934254] - sfc: fix unused-but-set-variable warning in efx_farch_filter_remove_safe (Íñigo Huguet) [1934254] - sfc: fix W=1 warnings in efx_farch_handle_rx_not_ok (Íñigo Huguet) [1934254] - sfc: convert to new udp_tunnel infrastructure (Íñigo Huguet) [1934254] - net: don't warn in inet diag when IPV6 is disabled (Hangbin Liu) [1938639] - tcp: do not mess with cloned skbs in tcp_add_backlog() (Hangbin Liu) [1880432] - redhat: enable MHI bus driver support (Jarod Wilson) [1938030] - bus: mhi: core: Fix invalid error returning in mhi_queue (Jarod Wilson) [1938030] - bus: mhi: pci_generic: Remove WQ_MEM_RECLAIM flag from state workqueue (Jarod Wilson) [1938030] - bus: mhi: core: Fix check for syserr at power_up (Jarod Wilson) [1938030] - mhi: Fix double dma free (Jarod Wilson) [1938030] - bus: mhi: pci_generic: Increase num of elements in hw event ring (Jarod Wilson) [1938030] - mhi: pci_generic: Print warning in case of firmware crash (Jarod Wilson) [1938030] - bus: mhi: core: Add helper API to return number of free TREs (Jarod Wilson) [1938030] - mhi: core: Factorize mhi queuing (Jarod Wilson) [1938030] - mhi: use irq_flags if controller driver configures it (Jarod Wilson) [1938030] - mhi: pci_generic: Fix shared MSI vector support (Jarod Wilson) [1938030] - mhi: unconstify mhi_event_config (Jarod Wilson) [1938030] - bus: mhi: Ensure correct ring update ordering with memory barrier (Jarod Wilson) [1938030] - mhi: pci_generic: Set irq moderation value to 1ms for hw channels (Jarod Wilson) [1938030] - mhi: pci_generic: Add diag channels (Jarod Wilson) [1938030] - mhi: pci_generic: Increase controller timeout value (Jarod Wilson) [1938030] - mhi: pci_generic: Add health-check (Jarod Wilson) [1938030] - mhi: pci_generic: Add PCI error handlers (Jarod Wilson) [1938030] - mhi: pci_generic: Add suspend/resume/recovery procedure (Jarod Wilson) [1938030] - mhi: pci_generic: Add support for reset (Jarod Wilson) [1938030] - mhi: pci_generic: Enable burst mode for hardware channels (Jarod Wilson) [1938030] - mhi: pci-generic: Increase number of hardware events (Jarod Wilson) [1938030] - bus: mhi: core: Add device hardware reset support (Jarod Wilson) [1938030] - mhi: pci_generic: Fix implicit conversion warning (Jarod Wilson) [1938030] - bus: mhi: core: Fix error handling in mhi_register_controller() (Jarod Wilson) [1938030] - bus: mhi: core: Fix device hierarchy (Jarod Wilson) [1938030] - bus: mhi: core: Indexed MHI controller name (Jarod Wilson) [1938030] - bus: mhi: core: Remove MHI event ring IRQ handlers when powering down (Jarod Wilson) [1938030] - bus: mhi: core: Mark and maintain device states early on after power down (Jarod Wilson) [1938030] - bus: mhi: core: Separate system error and power down handling (Jarod Wilson) [1938030] - bus: mhi: core: Check for IRQ availability during registration (Jarod Wilson) [1938030] - bus: mhi: core: Move to an error state on mission mode failure (Jarod Wilson) [1938030] - bus: mhi: core: Use appropriate label in firmware load handler API (Jarod Wilson) [1938030] - bus: mhi: core: Move to an error state on any firmware load failure (Jarod Wilson) [1938030] - bus: mhi: core: Prevent sending multiple RDDM entry callbacks (Jarod Wilson) [1938030] - bus: mhi: core: Move to SYS_ERROR regardless of RDDM capability (Jarod Wilson) [1938030] - bus: mhi: core: Skip device wake in error or shutdown states (Jarod Wilson) [1938030] - bus: mhi: core: Move to using high priority workqueue (Jarod Wilson) [1938030] - bus: mhi: core: Use appropriate names for firmware load functions (Jarod Wilson) [1938030] - bus: mhi: core: Skip RDDM download for unknown execution environment (Jarod Wilson) [1938030] - bus: mhi: core: Rename RDDM download function to use proper words (Jarod Wilson) [1938030] - bus: mhi: core: Remove unused mhi_fw_load_worker() declaration (Jarod Wilson) [1938030] - bus: mhi: core: Expose mhi_get_exec_env() API for controllers (Jarod Wilson) [1938030] - bus: mhi: core: Add missing EXPORT_SYMBOL for mhi_get_mhi_state() (Jarod Wilson) [1938030] - bus: mhi: core: Remove unnecessary counter from mhi_firmware_copy() (Jarod Wilson) [1938030] - bus: mhi: Fix channel close issue on driver remove (Jarod Wilson) [1938030] - bus: mhi: core: Fix null pointer access when parsing MHI configuration (Jarod Wilson) [1938030] - bus: mhi: Add MHI PCI support for WWAN modems (Jarod Wilson) [1938030] - bus: mhi: core: fix potential operator-precedence with BHI macros (Jarod Wilson) [1938030] - bus: mhi: core: Remove double locking from mhi_driver_remove() (Jarod Wilson) [1938030] - bus: mhi: Remove auto-start option (Jarod Wilson) [1938030] - bus: mhi: Add mhi_queue_is_full function (Jarod Wilson) [1938030] - bus: mhi: debugfs: Print channel context read-pointer (Jarod Wilson) [1938030] - bus: mhi: core: Fix the building of MHI module (Jarod Wilson) [1938030] - bus: mhi: Remove unused nr_irqs_req variable (Jarod Wilson) [1938030] - bus: mhi: core: Allow shared IRQ for event rings (Jarod Wilson) [1938030] - bus: mhi: core: Introduce sysfs entries for MHI (Jarod Wilson) [1938030] - bus: mhi: core: Introduce debugfs entries for MHI (Jarod Wilson) [1938030] - bus: mhi: Fix entries based on Kconfig coding style (Jarod Wilson) [1938030] - bus: mhi: Remove include of rwlock_types.h (Jarod Wilson) [1938030] - bus: mhi: core: Add const qualifier to MHI config information (Jarod Wilson) [1938030] - bus: mhi: core: Introduce APIs to allocate and free the MHI controller (Jarod Wilson) [1938030] - bus: mhi: core: Read and save device hardware information from BHI (Jarod Wilson) [1938030] - bus: mhi: core: Introduce counters to track MHI device state transitions (Jarod Wilson) [1938030] - bus: mhi: core: Introduce helper function to check device state (Jarod Wilson) [1938030] - bus: mhi: core: Use generic name field for an MHI device (Jarod Wilson) [1938030] - bus: mhi: core: Trigger host resume if suspended during mhi_device_get() (Jarod Wilson) [1938030] - bus: mhi: core: Use helper API to trigger a non-blocking host resume (Jarod Wilson) [1938030] - bus: mhi: core: Abort suspends due to outgoing pending packets (Jarod Wilson) [1938030] - bus: mhi: core: Remove double occurrence for mhi_ctrl_ev_task() declaration (Jarod Wilson) [1938030] - bus: mhi: fix doubled words and struct image_info kernel-doc (Jarod Wilson) [1938030] - bus: mhi: core: Handle syserr during power_up (Jarod Wilson) [1938030] - bus: mhi: core: Handle write lock properly in mhi_pm_m0_transition (Jarod Wilson) [1938030] - bus: mhi: core: Do not process SYS_ERROR if RDDM is supported (Jarod Wilson) [1938030] - bus: mhi: core: Skip handling BHI irq if MHI reg access is not allowed (Jarod Wilson) [1938030] - bus: mhi: core: Handle disable transitions in state worker (Jarod Wilson) [1938030] - bus: mhi: core: Remove the system error worker thread (Jarod Wilson) [1938030] - bus: mhi: core: Ensure non-zero session or sequence ID values are used (Jarod Wilson) [1938030] - bus: mhi: core: Improve debug logs for loading firmware (Jarod Wilson) [1938030] - bus: mhi: core: Return appropriate error codes for AMSS load failure (Jarod Wilson) [1938030] - bus: mhi: core: Handle firmware load using state worker (Jarod Wilson) [1938030] - bus: mhi: core: Read transfer length from an event properly (Jarod Wilson) [1938030] - bus: mhi: core: Add range check for channel id received in event ring (Jarod Wilson) [1938030] - bus: mhi: core: Cache intmod from mhi event to mhi channel (Jarod Wilson) [1938030] - bus: mhi: core: Refactor mhi queue APIs (Jarod Wilson) [1938030] - bus: mhi: core: Fix some error return code (Jarod Wilson) [1938030] - bus: mhi: core: Fix channel device name conflict (Jarod Wilson) [1938030] - bus: mhi: core: Fix typo in comment (Jarod Wilson) [1938030] - bus: mhi: core: Offload register accesses to the controller (Jarod Wilson) [1938030] - bus: mhi: core: Remove link_status() callback (Jarod Wilson) [1938030] - bus: mhi: core: Make sure to powerdown if mhi_sync_power_up fails (Jarod Wilson) [1938030] - bus: mhi: Fix parsing of mhi_flags (Jarod Wilson) [1938030] - bus: mhi: core: Fix a NULL vs IS_ERR check in mhi_create_devices() (Jarod Wilson) [1938030] - bus: mhi: core: Add support for MHI suspend and resume (Jarod Wilson) [1938030] - bus: mhi: core: Drop the references to mhi_dev in mhi_destroy_device() (Jarod Wilson) [1938030] - bus: mhi: core: Initialize bhie field in mhi_cntrl for RDDM capture (Jarod Wilson) [1938030] - bus: mhi: core: Add support for reading MHI info from device (Jarod Wilson) [1938030] - bus: mhi: core: Pass module owner during client driver registration (Jarod Wilson) [1938030] - bus/mhi: fix printk format for size_t (Jarod Wilson) [1938030] - bus: mhi: core: Add uevent support for module autoloading (Jarod Wilson) [1938030] - bus: mhi: core: Add support for data transfer (Jarod Wilson) [1938030] - bus: mhi: core: Add support for processing events from client device (Jarod Wilson) [1938030] - bus: mhi: core: Add support for downloading RDDM image during panic (Jarod Wilson) [1938030] - bus: mhi: core: Add support for downloading firmware over BHIe (Jarod Wilson) [1938030] - bus: mhi: core: Add support for basic PM operations (Jarod Wilson) [1938030] - bus: mhi: core: Add support for PM state transitions (Jarod Wilson) [1938030] - bus: mhi: core: Add support for ringing channel/event ring doorbells (Jarod Wilson) [1938030] - bus: mhi: core: Add support for creating and destroying MHI devices (Jarod Wilson) [1938030] - bus: mhi: core: Add support for registering MHI client drivers (Jarod Wilson) [1938030] - bus: mhi: core: Add support for registering MHI controllers (Jarod Wilson) [1938030]- ipmi: remove open coded version of SMBus block write (Tony Camuso) [1947126] - char: ipmi: convert comma to semicolon (Tony Camuso) [1947126] - ipmi: msghandler: Suppress suspicious RCU usage warning (Tony Camuso) [1947126] - ipmi/watchdog: replace atomic_add() and atomic_sub() (Tony Camuso) [1947126] - char: ipmi: remove unneeded break (Tony Camuso) [1947126] - ipmi_si: Fix wrong return value in try_smi_init() (Tony Camuso) [1947126] - ipmi: msghandler: Fix a signedness bug (Tony Camuso) [1947126] - ipmi: add retry in try_get_dev_id() (Tony Camuso) [1947126] - ipmi: Clean up some printks (Tony Camuso) [1947126] - ipmi:msghandler: retry to get device id on an error (Tony Camuso) [1947126] - ipmi:sm: Print current state when the state is invalid (Tony Camuso) [1947126] - ipmi: Reset response handler when failing to send the command (Tony Camuso) [1947126] - ipmi: add a newline when printing parameter 'panic_op' by sysfs (Tony Camuso) [1947126] - cpuidle: Select polling interval based on a c-state with a longer target residency (Mark Langsdorf) [1922024] - cpuidle: big.LITTLE: enable driver only on Peach-Pit/Pi Chromebooks (Mark Langsdorf) [1922024] - cpuidle: record state entry rejection statistics (Mark Langsdorf) [1922024] - nitro_enclaves: Fix stale file descriptors on failed usercopy (Vitaly Kuznetsov) [1953717] - iavf: amend removal of MODULE_VERSION (Stefan Assmann) [1955738] - ixgbevf: Amend commit acf03026ec5a to include a version in module info. (Ken Cox) [1955764] - devlink: move flash end and begin to core devlink (Petr Oros) [1935671] - devlink: move request_firmware out of driver (Petr Oros) [1935671] - ice: add additional debug logging for firmware update (Petr Oros) [1935671] - ice: add support for flash update overwrite mask (Petr Oros) [1935671] - driver core: auxiliary bus: Fix calling stage for auxiliary bus init (Ivan Vecera) [1933820] - driver core: auxiliary bus: Fix auxiliary bus shutdown null auxdrv ptr (Ivan Vecera) [1933820] - driver core: auxiliary bus: minor coding style tweaks (Ivan Vecera) [1933820] - driver core: auxiliary bus: make remove function return void (Ivan Vecera) [1933820] - driver core: auxiliary bus: move slab.h from include file (Ivan Vecera) [1933820] - Add auxiliary bus support (Ivan Vecera) [1933820] - modpost: file2alias: go back to simple devtable lookup (Ivan Vecera) [1933820] - scsi: lpfc: Fix bad memory access during VPD DUMP mailbox command (Dick Kennedy) [1923762] - scsi: lpfc: Fix DMA virtual address ptr assignment in bsg (Dick Kennedy) [1923762] - scsi: lpfc: Fix illegal memory access on Abort IOCBs (Dick Kennedy) [1923762] - scsi: lpfc: Copyright updates for 12.8.0.9 patches (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.9 (Dick Kennedy) [1923762] - scsi: lpfc: Eliminate use of LPFC_DRIVER_NAME in lpfc_attr.c (Dick Kennedy) [1923762] - scsi: lpfc: Standardize discovery object logging format (Dick Kennedy) [1923762] - scsi: lpfc: Fix various trivial errors in comments and log messages (Dick Kennedy) [1923762] - scsi: lpfc: Remove unsupported mbox PORT_CAPABILITIES logic (Dick Kennedy) [1923762] - scsi: lpfc: Fix lpfc_hdw_queue attribute being ignored (Dick Kennedy) [1923762] - scsi: lpfc: Fix missing FDMI registrations after Mgmt Svc login (Dick Kennedy) [1923762] - scsi: lpfc: Fix silent memory allocation failure in lpfc_sli4_bsg_link_diag_test() (Dick Kennedy) [1923762] - scsi: lpfc: Fix use-after-free on unused nodes after port swap (Dick Kennedy) [1923762] - scsi: lpfc: Fix error handling for mailboxes completed in MBX_POLL mode (Dick Kennedy) [1923762] - scsi: lpfc: Fix lack of device removal on port swaps with PRLIs (Dick Kennedy) [1923762] - scsi: lpfc: Fix NMI crash during rmmod due to circular hbalock dependency (Dick Kennedy) [1923762] - scsi: lpfc: Fix reference counting errors in lpfc_cmpl_els_rsp() (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash when a REG_RPI mailbox fails triggering a LOGO response (Dick Kennedy) [1923762] - scsi: lpfc: Fix rmmod crash due to bad ring pointers to abort_iotag (Dick Kennedy) [1923762] - scsi: lpfc: Fix gcc -Wstringop-overread warning (Dick Kennedy) [1923762] - scsi: lpfc: Fix a typo (Dick Kennedy) [1923762] - scsi: lpfc: Fix a typo (Dick Kennedy) [1923762] - scsi: lpfc: Fix kernel-doc formatting issue (Dick Kennedy) [1923762] - scsi: lpfc: Fix a few incorrectly named functions (Dick Kennedy) [1923762] - scsi: lpfc: Fix incorrectly documented function lpfc_debugfs_commonxripools_data() (Dick Kennedy) [1923762] - scsi: lpfc: Fix a bunch of misnamed functions (Dick Kennedy) [1923762] - scsi: lpfc: Fix a bunch of kernel-doc misdemeanours (Dick Kennedy) [1923762] - scsi: lpfc: Fix incorrect naming of __lpfc_update_fcf_record() (Dick Kennedy) [1923762] - scsi: lpfc: Fix formatting and misspelling issues (Dick Kennedy) [1923762] - scsi: lpfc: Fix a bunch of kernel-doc issues (Dick Kennedy) [1923762] - scsi: lpfc: Update copyrights for 12.8.0.7 and 12.8.0.8 changes (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.8 (Dick Kennedy) [1923762] - scsi: lpfc: Correct function header comments related to ndlp reference counting (Dick Kennedy) [1923762] - scsi: lpfc: Reduce LOG_TRACE_EVENT logging for vports (Dick Kennedy) [1923762] - scsi: lpfc: Change wording of invalid pci reset log message (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash caused by switch reboot (Dick Kennedy) [1923762] - scsi: lpfc: Fix pt2pt state transition causing rmmod hang (Dick Kennedy) [1923762] - scsi: lpfc: Fix nodeinfo debugfs output (Dick Kennedy) [1923762] - scsi: lpfc: Fix ADISC handling that never frees nodes (Dick Kennedy) [1923762] - scsi: lpfc: Fix PLOGI ACC to be transmit after REG_LOGIN (Dick Kennedy) [1923762] - scsi: lpfc: Fix dropped FLOGI during pt2pt discovery recovery (Dick Kennedy) [1923762] - scsi: lpfc: Fix status returned in lpfc_els_retry() error exit path (Dick Kennedy) [1923762] - scsi: lpfc: Fix use after free in lpfc_els_free_iocb (Dick Kennedy) [1923762] - scsi: lpfc: Fix null pointer dereference in lpfc_prep_els_iocb() (Dick Kennedy) [1923762] - scsi: lpfc: Fix unnecessary null check in lpfc_release_scsi_buf (Dick Kennedy) [1923762] - scsi: lpfc: Fix pt2pt connection does not recover after LOGO (Dick Kennedy) [1923762] - scsi: lpfc: Fix lpfc_els_retry() possible null pointer dereference (Dick Kennedy) [1923762] - scsi: lpfc: Fix FLOGI failure due to accessing a freed node (Dick Kennedy) [1923762] - scsi: lpfc: Fix stale node accesses on stale RRQ request (Dick Kennedy) [1923762] - scsi: lpfc: Fix reftag generation sizing errors (Dick Kennedy) [1923762] - scsi: lpfc: Fix vport indices in lpfc_find_vport_by_vpid() (Dick Kennedy) [1923762] - scsi: lpfc: Fix incorrect dbde assignment when building target abts wqe (Dick Kennedy) [1923762] - scsi: lpfc: Fix 'physical' typos (Dick Kennedy) [1923762] - scsi: lpfc: Fix ancient double free (Dick Kennedy) [1923762] - scsi: lpfc: Fix kerneldoc inconsistency in lpfc_sli4_dump_page_a0() (Dick Kennedy) [1923762] - scsi: lpfc: Add support for eh_should_retry_cmd() (Dick Kennedy) [1923762] - scsi: lpfc: Simplify bool comparison (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.7 (Dick Kennedy) [1923762] - scsi: lpfc: Enhancements to LOG_TRACE_EVENT for better readability (Dick Kennedy) [1923762] - scsi: lpfc: Implement health checking when aborting I/O (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash when nvmet transport calls host_release (Dick Kennedy) [1923762] - scsi: lpfc: Fix vport create logging (Dick Kennedy) [1923762] - scsi: lpfc: Fix NVMe recovery after mailbox timeout (Dick Kennedy) [1923762] - scsi: lpfc: Fix target reset failing (Dick Kennedy) [1923762] - scsi: lpfc: Fix error log messages being logged following SCSI task mgnt (Dick Kennedy) [1923762] - scsi: lpfc: Fix FW reset action if I/Os are outstanding (Dick Kennedy) [1923762] - scsi: lpfc: Use the nvme-fc transport supplied timeout for LS requests (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash when a fabric node is released prematurely (Dick Kennedy) [1923762] - scsi: lpfc: Refresh ndlp when a new PRLI is received in the PRLI issue state (Dick Kennedy) [1923762] - scsi: lpfc: Fix auto sli_mode and its effect on CONFIG_PORT for SLI3 (Dick Kennedy) [1923762] - scsi: lpfc: Fix PLOGI S_ID of 0 on pt2pt config (Dick Kennedy) [1923762] - scsi: lpfc: Fix fall-through warnings for Clang (Dick Kennedy) [1923762] - scsi: lpfc: Correct null ndlp reference on routine exit (Dick Kennedy) [1923762] - scsi: lpfc: Use generic power management (Dick Kennedy) [1923762] - scsi: lpfc: Fix variable 'vport' set but not used in lpfc_sli4_abts_err_handler() (Dick Kennedy) [1923762] - scsi: lpfc: Fix missing prototype for lpfc_nvmet_prep_abort_wqe() (Dick Kennedy) [1923762] - scsi: lpfc: Fix set but unused variables in lpfc_dev_loss_tmo_handler() (Dick Kennedy) [1923762] - scsi: lpfc: Fix set but not used warnings from Rework remote port lock handling (Dick Kennedy) [1923762] - scsi: lpfc: Fix missing prototype warning for lpfc_fdmi_vendor_attr_mi() (Dick Kennedy) [1923762] - scsi: lpfc: Fix memory leak on lcb_context (Dick Kennedy) [1923762] - scsi: lpfc: Remove dead code on second !ndlp check (Dick Kennedy) [1923762] - scsi: lpfc: Fix pointer defereference before it is null checked issue (Dick Kennedy) [1923762] - scsi: lpfc: Update changed file copyrights for 2020 (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.6 (Dick Kennedy) [1923762] - scsi: lpfc: Convert abort handling to SLI-3 and SLI-4 handlers (Dick Kennedy) [1923762] - scsi: lpfc: Convert SCSI I/O completions to SLI-3 and SLI-4 handlers (Dick Kennedy) [1923762] - scsi: lpfc: Convert SCSI path to use common I/O submission path (Dick Kennedy) [1923762] - scsi: lpfc: Enable common send_io interface for SCSI and NVMe (Dick Kennedy) [1923762] - scsi: lpfc: Enable common wqe_template support for both SCSI and NVMe (Dick Kennedy) [1923762] - scsi: lpfc: Refactor WQE structure definitions for common use (Dick Kennedy) [1923762] - scsi: lpfc: Fix NPIV Fabric Node reference counting (Dick Kennedy) [1923762] - scsi: lpfc: Fix NPIV discovery and Fabric Node detection (Dick Kennedy) [1923762] - scsi: lpfc: Unsolicited ELS leaves node in incorrect state while dropping it (Dick Kennedy) [1923762] - scsi: lpfc: Remove ndlp when a PLOGI/ADISC/PRLI/REG_RPI ultimately fails (Dick Kennedy) [1923762] - scsi: lpfc: Rework remote port lock handling (Dick Kennedy) [1923762] - scsi: lpfc: Honor module parameter lpfc_use_adisc (Dick Kennedy) [1923762] - scsi: lpfc: Fix refcounting around SCSI and NVMe transport APIs (Dick Kennedy) [1923762] - scsi: lpfc: Fix removal of SCSI transport device get and put on dev structure (Dick Kennedy) [1923762] - scsi: lpfc: Rework locations of ndlp reference taking (Dick Kennedy) [1923762] - scsi: lpfc: Rework remote port ref counting and node freeing (Dick Kennedy) [1923762] - scsi: lpfc: remove ScsiResult macro (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_nvmet: Fix-up some formatting and doc-rot issues (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_nvme: Fix some kernel-doc related issues (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_nvme: Remove unused variable 'phba' (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_bsg: Provide correct documentation for a bunch of functions (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_debugfs: Fix a couple of function documentation issues (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_attr: Fix-up a bunch of kernel-doc misdemeanours (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_attr: Demote kernel-doc format for redefined functions (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_scsi: Fix a whole host of kernel-doc issues (Dick Kennedy) [1923762] - block: return -EBUSY when there are open partitions in blkdev_reread_part (Ming Lei) [1936800] - block: Try to handle busy underlying device on discard (Ming Lei) [1936800] - md: check for NULL ->meta_bdev before calling bdev_read_only (Ming Lei) [1936800] - blk-settings: align max_sectors on "logical_block_size" boundary (Ming Lei) [1936800] - nbd: handle device refs for DESTROY_ON_DISCONNECT properly (Ming Lei) [1936800] - kyber: introduce kyber_depth_updated() (Ming Lei) [1936800] - loop: fix I/O error on fsync() in detached loop devices (Ming Lei) [1936800] - block: fix potential IO hang when turning off io_poll (Ming Lei) [1936800] - bfq: Use only idle IO periods for think time calculations (Ming Lei) [1936800] - bfq: Use 'ttime' local variable (Ming Lei) [1936800] - bfq: Avoid false bfq queue merging (Ming Lei) [1936800] - bfq: bfq_check_waker() should be static (Ming Lei) [1936800] - block, bfq: make waker-queue detection more robust (Ming Lei) [1936800] - block, bfq: save also injection state on queue merging (Ming Lei) [1936800] - block, bfq: save also weight-raised service on queue merging (Ming Lei) [1936800] - block, bfq: fix switch back from soft-rt weitgh-raising (Ming Lei) [1936800] - block, bfq: re-evaluate convenience of I/O plugging on rq arrivals (Ming Lei) [1936800] - block, bfq: replace mechanism for evaluating I/O intensity (Ming Lei) [1936800] - block: set .bi_max_vecs as actual allocated vector number (Ming Lei) [1936800] - block: don't allocate inline bvecs if this bioset needn't bvecs (Ming Lei) [1936800] - block: don't pass BIOSET_NEED_BVECS for q->bio_split (Ming Lei) [1936800] - block: manage bio slab cache by xarray (Ming Lei) [1936800] - block, bfq: do not expire a queue when it is the only busy one (Ming Lei) [1936800] - block, bfq: avoid spurious switches to soft_rt of interactive queues (Ming Lei) [1936800] - block, bfq: do not raise non-default weights (Ming Lei) [1936800] - block, bfq: increase time window for waker detection (Ming Lei) [1936800] - block, bfq: use half slice_idle as a threshold to check short ttime (Ming Lei) [1936800] - brd: remove the end of device check in brd_do_bvec (Ming Lei) [1936800] - block: propagate BLKROSET on the whole device to all partitions (Ming Lei) [1936800] - block: add a hard-readonly flag to struct gendisk (Ming Lei) [1936800] - block: remove the NULL bdev check in bdev_read_only (Ming Lei) [1936800] - dm: use bdev_read_only to check if a device is read-only (Ming Lei) [1936800] - block: reopen the device in blkdev_reread_part (Ming Lei) [1936800] - block, bfq: set next_rq to waker_bfqq->next_rq in waker injection (Ming Lei) [1936800] - Revert "block: simplify set_init_blocksize" to regain lost performance (Ming Lei) [1936800] - bfq-iosched: Revert "bfq: Fix computation of shallow depth" (Ming Lei) [1936800] - blk-mq-debugfs: Add decode for BLK_MQ_F_TAG_HCTX_SHARED (Ming Lei) [1936800] - bfq: Fix computation of shallow depth (Ming Lei) [1936800] - block: rsxx: select CONFIG_CRC32 (Ming Lei) [1936800] - block: add debugfs stanza for QUEUE_FLAG_NOWAIT (Ming Lei) [1936800] - blk-mq: Don't complete on a remote CPU in force threaded mode (Ming Lei) [1936800] - blk-mq: Remove 'running from the wrong CPU' warning (Ming Lei) [1936800] - block: disable iopoll for split bio (Ming Lei) [1936800] - block: Improve blk_revalidate_disk_zones() checks (Ming Lei) [1936800] - sbitmap: replace CAS with atomic and (Ming Lei) [1936800] - sbitmap: remove swap_lock (Ming Lei) [1936800] - sbitmap: optimise sbitmap_deferred_clear() (Ming Lei) [1936800] - blk-mq: skip hybrid polling if iopoll doesn't spin (Ming Lei) [1936800] - blktrace: fix up a kerneldoc comment (Ming Lei) [1936800] - block: remove the unused block_sleeprq tracepoint (Ming Lei) [1936800] - blk-throttle: don't check whether or not lower limit is valid if CONFIG_BLK_DEV_THROTTLING_LOW is off (Ming Lei) [1936800] - block: fix inflight statistics of part0 (Ming Lei) [1936800] - block: optimise for_each_bvec() advance (Ming Lei) [1936800] - block: opencode devcgroup_inode_permission (Ming Lei) [1936800] - block: move bdput() to the callers of __blkdev_get (Ming Lei) [1936800] - block: refactor blkdev_get (Ming Lei) [1936800] - block: refactor __blkdev_put (Ming Lei) [1936800] - block: switch bdgrab to use igrab (Ming Lei) [1936800] - block: change the hash used for looking up block devices (Ming Lei) [1936800] - block: use put_device in put_disk (Ming Lei) [1936800] - block: use disk_part_iter_exit in disk_part_iter_next (Ming Lei) [1936800] - block: add a bdev_kobj helper (Ming Lei) [1936800] - block: remove a superflous check in blkpg_do_ioctl (Ming Lei) [1936800] - block: remove a duplicate __disk_get_part prototype (Ming Lei) [1936800] - loop: do not call set_blocksize (Ming Lei) [1936800] - zram: do not call set_blocksize (Ming Lei) [1936800] - block: wbt: Remove unnecessary invoking of wbt_update_limits in wbt_init (Ming Lei) [1936800] - virtio-blk: remove a spurious call to revalidate_disk_size (Ming Lei) [1936800] - md: remove a spurious call to revalidate_disk_size in update_size (Ming Lei) [1936800] - aoe: don't call set_capacity from irq context (Ming Lei) [1936800] - nbd: validate the block size in nbd_set_size (Ming Lei) [1936800] - nbd: refactor size updates (Ming Lei) [1936800] - nbd: move the task_recv check into nbd_size_update (Ming Lei) [1936800] - nbd: remove the call to set_blocksize (Ming Lei) [1936800] - loop: let set_capacity_revalidate_and_notify update the bdev size (Ming Lei) [1936800] - block: remove the call to __invalidate_device in check_disk_size_change (Ming Lei) [1936800] - block: fix the kerneldoc comment for __register_blkdev (Ming Lei) [1936800] - block: switch gendisk lookup to a simple xarray (Ming Lei) [1936800] - ide: switch to __register_blkdev for command set probing (Ming Lei) [1936800] - md: use __register_blkdev to allocate devices on demand (Ming Lei) [1936800] - loop: use __register_blkdev to allocate devices on demand (Ming Lei) [1936800] - brd: use __register_blkdev to allocate devices on demand (Ming Lei) [1936800] - sd: use __register_blkdev to avoid a modprobe for an unregistered dev_t (Ming Lei) [1936800] - swim: don't call blk_register_region (Ming Lei) [1936800] - ide: remove ide_{,un}register_region (Ming Lei) [1936800] - block: add an optional probe callback to major_names (Ming Lei) [1936800] - block: rework requesting modules for unclaimed devices (Ming Lei) [1936800] - block: split block_class_lock (Ming Lei) [1936800] - block: open code kobj_map into in block/genhd.c (Ming Lei) [1936800] - block: cleanup del_gendisk a bit (Ming Lei) [1936800] - loop: use set_disk_ro (Ming Lei) [1936800] - dasd: implement ->set_read_only to hook into BLKROSET processing (Ming Lei) [1936800] - md: implement ->set_read_only to hook into BLKROSET processing (Ming Lei) [1936800] - rbd: implement ->set_read_only to hook into BLKROSET processing (Ming Lei) [1936800] - block: add a new set_read_only method (Ming Lei) [1936800] - blk-cgroup: fix a hd_struct leak in blkcg_fill_root_iostats (Ming Lei) [1936800] - blk-cgroup: Pre-allocate tree node on blkg_conf_prep (Ming Lei) [1936800] - blk-cgroup: Fix memleak on error path (Ming Lei) [1936800] - blk-mq: remove the calling of local_memory_node() (Ming Lei) [1936800] - zram: Fix __zram_bvec_{read,write}() locking order (Ming Lei) [1936800] - skd_main: remove unused including (Ming Lei) [1936800] - sgl_alloc_order: fix memory leak (Ming Lei) [1936800] - block: fix uapi blkzoned.h comments (Ming Lei) [1936800] - blk-mq: move cancel of hctx->run_work to the front of blk_exit_queue (Ming Lei) [1936800] - blk-mq: get rid of the dead flush handle code path (Ming Lei) [1936800] - block: get rid of unnecessary local variable (Ming Lei) [1936800] - block: fix comment and add lockdep assert (Ming Lei) [1936800] - blk-mq: use helper function to test hw stopped (Ming Lei) [1936800] - block: use helper function to test queue register (Ming Lei) [1936800] - block: remove redundant mq check (Ming Lei) [1936800] - block: invoke blk_mq_exit_sched no matter whether have .exit_sched (Ming Lei) [1936800] - block: ratelimit handle_bad_sector() message (Ming Lei) [1936800] - blk-throttle: Re-use the throtl_set_slice_end() (Ming Lei) [1936800] - blk-throttle: Open code __throtl_de/enqueue_tg() (Ming Lei) [1936800] - blk-throttle: Move service tree validation out of the throtl_rb_first() (Ming Lei) [1936800] - blk-throttle: Move the list operation after list validation (Ming Lei) [1936800] - blk-throttle: Fix IO hang for a corner case (Ming Lei) [1936800] - blk-throttle: Avoid tracking latency if low limit is invalid (Ming Lei) [1936800] - blk-throttle: Avoid getting the current time if tg->last_finish_time is 0 (Ming Lei) [1936800] - blk-throttle: Remove a meaningless parameter for throtl_downgrade_state() (Ming Lei) [1936800] - block: Remove redundant 'return' statement (Ming Lei) [1936800] - block: Consider only dispatched requests for inflight statistic (Ming Lei) [1936800] - block: remove the unused blk_integrity_merge_bio export (Ming Lei) [1936800] - block: remove the unused blk_integrity_merge_rq export (Ming Lei) [1936800] - blk-mq: add cond_resched() in __blk_mq_alloc_rq_maps() (Ming Lei) [1936800] - vsprintf: use bd_partno in bdev_name (Ming Lei) [1936800] - block: use bd_partno in bdevname (Ming Lei) [1936800] - target/iblock: fix holder printing in iblock_show_configfs_dev_params (Ming Lei) [1936800] - drbd: don't set ->bd_contains (Ming Lei) [1936800] - drbd: don't detour through bd_contains for the gendisk (Ming Lei) [1936800] - block: add a bdev_is_partition helper (Ming Lei) [1936800] - bdi: remove BDI_CAP_CGROUP_WRITEBACK (Ming Lei) [1936800] - block: lift setting the readahead size into the block layer (Ming Lei) [1936800] - bdi: initialize ->ra_pages and ->io_pages in bdi_init (Ming Lei) [1936800] - block: ensure bdi->io_pages is always initialized (Ming Lei) [1936800] - aoe: set an optimal I/O size (Ming Lei) [1936800] - drbd: remove dead code in device_to_statistics (Ming Lei) [1936800] - raw: don't keep unopened block device around (Ming Lei) [1936800] - zram: cleanup backing_dev_store (Ming Lei) [1936800] - zram: fix double free backing device (Ming Lei) [1936800] - pktcdvd: use blkdev_get_by_dev instead of open coding it (Ming Lei) [1936800] - pktcdvd: remove the if 0'ed pkt_start_recovery function (Ming Lei) [1936800] - block: cleanup blkdev_bszset (Ming Lei) [1936800] - block: move the NEED_PART_SCAN flag to struct gendisk (Ming Lei) [1936800] - block: drop double zeroing (Ming Lei) [1936800] - blk-throttle: Avoid checking bps/iops limitation if bps or iops is unlimited (Ming Lei) [1936800] - blk-throttle: Avoid calculating bps/iops limitation repeatedly (Ming Lei) [1936800] - blk-throttle: Define readable macros instead of static variables (Ming Lei) [1936800] - blk-throttle: Use readable READ/WRITE macros (Ming Lei) [1936800] - blk-throttle: Fix some comments' typos (Ming Lei) [1936800] - block: introduce part_[begin|end]_io_acct (Ming Lei) [1936800] - blkcg: add plugging support for punt bio (Ming Lei) [1936800] - block: remove check_disk_change (Ming Lei) [1936800] - sr: simplify sr_block_revalidate_disk (Ming Lei) [1936800] - sr: use bdev_check_media_change (Ming Lei) [1936800] - sd: use bdev_check_media_change (Ming Lei) [1936800] - md: use bdev_check_media_change (Ming Lei) [1936800] - gdrom: use bdev_check_media_change (Ming Lei) [1936800] - paride/pcd: use bdev_check_media_change (Ming Lei) [1936800] - xsysace: simplify media change handling (Ming Lei) [1936800] - xsysace: use bdev_check_media_change (Ming Lei) [1936800] - swim3: use bdev_check_media_changed (Ming Lei) [1936800] - swim: simplify media change handling (Ming Lei) [1936800] - swim: use bdev_check_media_change (Ming Lei) [1936800] - ataflop: use bdev_check_media_change (Ming Lei) [1936800] - amiflop: use bdev_check_media_change (Ming Lei) [1936800] - block: add a bdev_check_media_change helper (Ming Lei) [1936800] - block: Remove unused blk_mq_sched_free_hctx_data() (Ming Lei) [1936800] - block: Do not discard buffers under a mounted filesystem (Ming Lei) [1936800] - fs: Don't invalidate page buffers in block_write_full_page() (Ming Lei) [1936800] - block: remove revalidate_disk() (Ming Lei) [1936800] - nvdimm: simplify revalidate_disk handling (Ming Lei) [1936800] - sd: open code revalidate_disk (Ming Lei) [1936800] - nvme: opencode revalidate_disk in nvme_validate_ns (Ming Lei) [1936800] - block: use revalidate_disk_size in set_capacity_revalidate_and_notify (Ming Lei) [1936800] - block: add a new revalidate_disk_size helper (Ming Lei) [1936800] - block: rename bd_invalidated (Ming Lei) [1936800] - block: don't clear bd_invalidated in check_disk_size_change (Ming Lei) [1936800] - block: better deal with the delayed not supported case in blk_cloned_rq_check_limits (Ming Lei) [1936800] - block: Return blk_status_t instead of errno codes (Ming Lei) [1936800] - block: grant IOPRIO_CLASS_RT to CAP_SYS_NICE (Ming Lei) [1936800] - block: remove the unused q argument to part_in_flight and part_in_flight_rw (Ming Lei) [1936800] - block: remove the disk argument to delete_partition (Ming Lei) [1936800] - block: move the devcgroup_inode_permission call to blkdev_get (Ming Lei) [1936800] - blk-mq: use BLK_MQ_NO_TAG for no tag (Ming Lei) [1936800] - block: Move blk_mq_bio_list_merge() into blk-merge.c (Ming Lei) [1936800] - block: Move bio merge related functions into blk-merge.c (Ming Lei) [1936800] - blk-wbt: Remove obsolete multiqueue I/O scheduling comment (Ming Lei) [1936800] - raw: deprecate the raw driver (Ming Lei) [1936800] - nvme: don't call revalidate_disk from nvme_set_queue_dying (Ming Lei) [1936800] - block: fix locking for struct block_device size updates (Ming Lei) [1936800] - block: replace bd_set_size with bd_set_nr_sectors (Ming Lei) [1936800] - block: Make request_queue.rpm_status an enum (Ming Lei) [1936800] - mmc: remove the call to check_disk_change (Ming Lei) [1936800] - block: integrate bd_start_claiming into __blkdev_get (Ming Lei) [1936800] - block: use bd_prepare_to_claim directly in the loop driver (Ming Lei) [1936800] - block: refactor bd_start_claiming (Ming Lei) [1936800] - block: simplify the restart case in __blkdev_get (Ming Lei) [1936800] - block: simplify set_init_blocksize (Ming Lei) [1936800] - block: remove flush_disk (Ming Lei) [1936800] - block: move block-related definitions out of fs.h (Ming Lei) [1936800] - xen-blkfront.c: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1936800]- redhat/configs: Add CONFIG_PINCTRL_EMMITSBURG (David Arcari) [1959506] - redhat/configs: Remove CONFIG_EMMITSBURG (David Arcari) [1959506] - fuse: fix write deadlock (Miklos Szeredi) [1904597] - sched/debug: Fix cgroup_path[] serialization (Waiman Long) [1954363] - KVM: x86/xen: Take srcu lock when accessing kvm_memslots() (Paolo Bonzini) [1945742] - KVM: SVM: Allocate SEV command structures on local stack (Paolo Bonzini) [1945742] - crypto: ccp: Use the stack and common buffer for INIT command (Paolo Bonzini) [1945742] - crypto: ccp: Use the stack and common buffer for status commands (Paolo Bonzini) [1945742] - crypto: ccp: Use the stack for small SEV command buffers (Paolo Bonzini) [1945742] - crypto: ccp: Play nice with vmalloc'd memory for SEV command structs (Paolo Bonzini) [1945742] - crypto: ccp: Reject SEV commands with mismatching command buffer (Paolo Bonzini) [1945742] - crypto: ccp: Detect and reject "invalid" addresses destined for PSP (Paolo Bonzini) [1945742] - crypto: ccp: Free SEV device if SEV init fails (Paolo Bonzini) [1945742] - crypto: ccp - Fix sparse warnings in sev-dev (Paolo Bonzini) [1945742] - drivers/crypto/ccp/sev-dev.c: get rid of pointless access_ok() (Paolo Bonzini) [1945742] - crypto: ccp - Add support for SEV-ES to the PSP driver (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV_RECEIVE_FINISH command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV_RECEIVE_UPDATE_DATA command (Paolo Bonzini) [1945742] - KVM: SVM: Add support for KVM_SEV_RECEIVE_START command (Paolo Bonzini) [1945742] - KVM: SVM: Add support for KVM_SEV_SEND_CANCEL command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV_SEND_FINISH command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEND_UPDATE_DATA command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV SEND_START command (Paolo Bonzini) [1945742] - KVM: Boost vCPU candidate in user mode which is delivering interrupt (Paolo Bonzini) [1945742] - nSVM: Check addresses of MSR and IO permission maps (Paolo Bonzini) [1945742] - KVM: SVM: Define actual size of IOPM and MSRPM tables (Paolo Bonzini) [1945742] - KVM: vmx: add mismatched size assertions in vmcs_check32() (Paolo Bonzini) [1945742] - KVM: Add proper lockdep assertion in I/O bus unregister (Paolo Bonzini) [1945742] - KVM: Stop looking for coalesced MMIO zones if the bus is destroyed (Paolo Bonzini) [1945742] - KVM: Destroy I/O bus devices on unregister failure _after_ sync'ing SRCU (Paolo Bonzini) [1945742] - KVM: SVM: Enhance and clean up the vmcb tracking comment in pre_svm_run() (Paolo Bonzini) [1945742] - KVM: SVM: Add a comment to clarify what vcpu_svm.vmcb points at (Paolo Bonzini) [1945742] - KVM: SVM: Drop vcpu_svm.vmcb_pa (Paolo Bonzini) [1945742] - KVM: SVM: Don't set current_vmcb->cpu when switching vmcb (Paolo Bonzini) [1945742] - KVM: SVM: Make sure GHCB is mapped before updating (Paolo Bonzini) [1945742] - KVM: X86: Do not yield to self (Paolo Bonzini) [1945742] - KVM: X86: Count attempted/successful directed yield (Paolo Bonzini) [1945742] - KVM: x86/mmu: Protect the tdp_mmu_roots list with RCU (Paolo Bonzini) [1945742] - KVM: x86/mmu: handle cmpxchg failure in kvm_tdp_mmu_get_root (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make TDP MMU root refcount atomic (Paolo Bonzini) [1945742] - KVM: x86: implement KVM_CAP_SET_GUEST_DEBUG2 (Paolo Bonzini) [1945742] - KVM: x86/mmu: Refactor yield safe root iterator (Paolo Bonzini) [1945742] - KVM: x86/mmu: Merge TDP MMU put and free root (Paolo Bonzini) [1945742] - KVM: x86/mmu: use tdp_mmu_free_sp to free roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move kvm_mmu_(get|put)_root to TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Re-add const qualifier in kvm_tdp_mmu_zap_collapsible_sptes (Paolo Bonzini) [1945742] - KVM: constify kvm_arch_flush_remote_tlbs_memslot (Paolo Bonzini) [1945742] - KVM: Explicitly use GFP_KERNEL_ACCOUNT for 'struct kvm_vcpu' allocations (Paolo Bonzini) [1945742] - KVM: MMU: protect TDP MMU pages only down to required level (Paolo Bonzini) [1945742] - KVM: introduce KVM_CAP_SET_GUEST_DEBUG2 (Paolo Bonzini) [1945742] - KVM: x86: pending exceptions must not be blocked by an injected event (Paolo Bonzini) [1945742] - KVM: nSVM: call nested_svm_load_cr3 on nested state load (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should include the autoload/autostore MSR lists (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should show the effective EFER (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should consider only the load controls of EFER/PAT (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should not conflate EFER and PAT presence in VMCS (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should not assume GUEST_IA32_EFER is valid (Paolo Bonzini) [1945742] - KVM: nSVM: improve SYSENTER emulation on AMD (Paolo Bonzini) [1945742] - KVM: x86: add guest_cpuid_is_intel (Paolo Bonzini) [1945742] - KVM: x86: Account a variety of miscellaneous allocations (Paolo Bonzini) [1945742] - KVM: SVM: Do not allow SEV/SEV-ES initialization after vCPUs are created (Paolo Bonzini) [1945742] - KVM: SVM: Do not set sev->es_active until KVM_SEV_ES_INIT completes (Paolo Bonzini) [1945742] - KVM: SVM: Use online_vcpus, not created_vcpus, to iterate over vCPUs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Simplify code for aging SPTEs in TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove spurious clearing of dirty bit from TDP MMU SPTE (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use leaf-only loop for walking TDP SPTEs when changing SPTE (Paolo Bonzini) [1945742] - KVM: x86/mmu: Pass address space ID to TDP MMU root walkers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Pass address space ID to __kvm_tdp_mmu_zap_gfn_range() (Paolo Bonzini) [1945742] - KVM: x86/mmu: Coalesce TLB flushes across address spaces for gfn range zap (Paolo Bonzini) [1945742] - KVM: x86/mmu: Coalesce TLB flushes when zapping collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move flushing for "slot" handlers to caller for legacy MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Coalesce TDP MMU TLB flushes when zapping collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86/vPMU: Forbid reading from MSR_F15H_PERF MSRs when guest doesn't have X86_FEATURE_PERFCTR_CORE (Paolo Bonzini) [1945742] - KVM: nSVM: If VMRUN is single-stepped, queue the #DB intercept in nested_svm_vmexit() (Paolo Bonzini) [1945742] - KVM: MMU: load PDPTRs outside mmu_lock (Paolo Bonzini) [1945742] - KVM: SVM: ensure that EFER.SVME is set when running nested guest or on nested vmexit (Paolo Bonzini) [1945742] - KVM: SVM: load control fields from VMCB12 before checking them (Paolo Bonzini) [1945742] - KVM: x86/mmu: Don't allow TDP MMU to yield when recovering NX pages (Paolo Bonzini) [1945742] - KVM: x86/mmu: Ensure TLBs are flushed for TDP MMU during NX zapping (Paolo Bonzini) [1945742] - KVM: x86/mmu: Ensure TLBs are flushed when yielding during GFN range zap (Paolo Bonzini) [1945742] - KVM: make: Fix out-of-source module builds (Paolo Bonzini) [1945742] - KVM: x86/vPMU: Forbid writing to MSR_F15H_PERF MSRs when guest doesn't have X86_FEATURE_PERFCTR_CORE (Paolo Bonzini) [1945742] - KVM: x86: remove unused declaration of kvm_write_tsc() (Paolo Bonzini) [1945742] - KVM: clean up the unused argument (Paolo Bonzini) [1945742] - x86/kvm: Fix broken irq restoration in kvm_wait (Paolo Bonzini) [1945742] - KVM: X86: Fix missing local pCPU when executing wbinvd on all dirty pCPUs (Paolo Bonzini) [1945742] - KVM: x86: Protect userspace MSR filter with SRCU, and set atomically-ish (Paolo Bonzini) [1945742] - KVM: x86/mmu: Store the address space ID in the TDP iterator (Paolo Bonzini) [1945742] - KVM: x86/mmu: Factor out tdp_iter_return_to_root (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix RCU usage when atomically zapping SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix RCU usage in handle_removed_tdp_mmu_page (Paolo Bonzini) [1945742] - KVM: x86/mmu: Mark the PAE roots as decrypted for shadow paging (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use '0' as the one and only value for an invalid PAE root (Paolo Bonzini) [1945742] - KVM: VMX: Track root HPA instead of EPTP for paravirt Hyper-V TLB flush (Paolo Bonzini) [1945742] - KVM: VMX: Skip additional Hyper-V TLB EPTP flushes if one fails (Paolo Bonzini) [1945742] - KVM: VMX: Define Hyper-V paravirt TLB flush fields iff Hyper-V is enabled (Paolo Bonzini) [1945742] - KVM: VMX: Explicitly check for hv_remote_flush_tlb when loading pgd (Paolo Bonzini) [1945742] - KVM: VMX: Don't invalidate hv_tlb_eptp if the new EPTP matches (Paolo Bonzini) [1945742] - KVM: VMX: Invalidate hv_tlb_eptp to denote an EPTP mismatch (Paolo Bonzini) [1945742] - KVM: VMX: Do Hyper-V TLB flush iff vCPU's EPTP hasn't been flushed (Paolo Bonzini) [1945742] - KVM: VMX: Fold Hyper-V EPTP checking into it's only caller (Paolo Bonzini) [1945742] - KVM: VMX: Stash kvm_vmx in a local variable for Hyper-V paravirt TLB flush (Paolo Bonzini) [1945742] - KVM: VMX: Track common EPTP for Hyper-V's paravirt TLB flush (Paolo Bonzini) [1945742] - KVM: x86: Get active PCID only when writing a CR3 value (Paolo Bonzini) [1945742] - KVM/SVM: Move vmenter.S exception fixups out of line (Paolo Bonzini) [1945742] - KVM: x86/mmu: Dump reserved bits if they're detected on non-MMIO SPTE (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use low available bits for removed SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use is_removed_spte() instead of open coded equivalents (Paolo Bonzini) [1945742] - KVM: x86/mmu: Tweak auditing WARN for A/D bits to !PRESENT (was MMIO) (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use a dedicated bit to track shadow/MMU-present SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use high bits for host/mmu writable masks for EPT SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make Host-writable and MMU-writable bit locations dynamic (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move logic for setting SPTE masks for EPT into the MMU proper (Paolo Bonzini) [1945742] - KVM: x86/mmu: Co-locate code for setting various SPTE masks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move initial kvm_mmu_set_mask_ptes() call into MMU proper (Paolo Bonzini) [1945742] - KVM: x86/mmu: Document dependency bewteen TDP A/D type and saved bits (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use MMIO SPTE bits 53 and 52 for the MMIO generation (Paolo Bonzini) [1945742] - KVM: x86/mmu: Rename and document A/D scheme for TDP SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add module param to disable MMIO caching (for testing) (Paolo Bonzini) [1945742] - KVM: x86/mmu: Stop using software available bits to denote MMIO SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Rename 'mask' to 'spte' in MMIO SPTE helpers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Drop redundant trace_kvm_mmu_set_spte() in the TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Handle MMIO SPTEs directly in mmu_set_spte() (Paolo Bonzini) [1945742] - KVM: x86/mmu: Don't install bogus MMIO SPTEs if MMIO caching is disabled (Paolo Bonzini) [1945742] - KVM: x86/mmu: Retry page faults that hit an invalid memslot (Paolo Bonzini) [1945742] - KVM: x86/mmu: Disable MMIO caching if MMIO value collides with L1TF (Paolo Bonzini) [1945742] - KVM: x86/mmu: Bail from fast_page_fault() if SPTE is not shadow-present (Paolo Bonzini) [1945742] - KVM: x86/mmu: Check for shadow-present SPTE before querying A/D status (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add convenience wrapper for acting on single hva in TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add typedefs for rmap/iter handlers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use 'end' param in TDP MMU's test_age_gfn() (Paolo Bonzini) [1945742] - KVM: x86/mmu: WARN if TDP MMU's set_tdp_spte() sees multiple GFNs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove spurious TLB flush from TDP MMU's change_pte() hook (Paolo Bonzini) [1945742] - KVM: x86: mmu: initialize fault.async_page_fault in walk_addr_generic (Paolo Bonzini) [1945742] - KVM: x86: determine if an exception has an error code only when injecting it. (Paolo Bonzini) [1945742] - KVM: nSVM: Optimize vmcb12 to vmcb02 save area copies (Paolo Bonzini) [1945742] - KVM: SVM: Add support for Virtual SPEC_CTRL (Paolo Bonzini) [1945742] - x86/cpufeatures: Add the Virtual SPEC_CTRL feature (Paolo Bonzini) [1945742] - KVM: nSVM: always use vmcb01 to for vmsave/vmload of guest state (Paolo Bonzini) [1945742] - KVM: SVM: move VMLOAD/VMSAVE to C code (Paolo Bonzini) [1945742] - KVM: SVM: Skip intercepted PAUSE instructions after emulation (Paolo Bonzini) [1945742] - KVM: SVM: Don't manually emulate RDPMC if nrips=0 (Paolo Bonzini) [1945742] - KVM: x86: Move RDPMC emulation to common code (Paolo Bonzini) [1945742] - KVM: x86: Move trivial instruction-based exit handlers to common code (Paolo Bonzini) [1945742] - KVM: x86: Move XSETBV emulation to common code (Paolo Bonzini) [1945742] - KVM: nSVM: Add VMLOAD/VMSAVE helper to deduplicate code (Paolo Bonzini) [1945742] - KVM: nSVM: Add helper to synthesize nested VM-Exit without collateral (Paolo Bonzini) [1945742] - KVM: x86: Handle triple fault in L2 without killing L1 (Paolo Bonzini) [1945742] - KVM: SVM: Pass struct kvm_vcpu to exit handlers (and many, many other places) (Paolo Bonzini) [1945742] - KVM: SVM: merge update_cr0_intercept into svm_set_cr0 (Paolo Bonzini) [1945742] - KVM: nSVM: Trace VM-Enter consistency check failures (Paolo Bonzini) [1945742] - KVM: x86: Move nVMX's consistency check macro to common code (Paolo Bonzini) [1945742] - KVM: nSVM: Add missing checks for reserved bits to svm_set_nested_state() (Paolo Bonzini) [1945742] - KVM: nSVM: only copy L1 non-VMLOAD/VMSAVE data in svm_set_nested_state() (Paolo Bonzini) [1945742] - KVM: nSVM: do not mark all VMCB02 fields dirty on nested vmexit (Paolo Bonzini) [1945742] - KVM: nSVM: do not mark all VMCB01 fields dirty on nested vmexit (Paolo Bonzini) [1945742] - KVM: nSVM: do not copy vmcb01->control blindly to vmcb02->control (Paolo Bonzini) [1945742] - KVM: nSVM: rename functions and variables according to vmcbXY nomenclature (Paolo Bonzini) [1945742] - KVM: nSVM: Track the ASID generation of the vmcb vmrun through the vmcb (Paolo Bonzini) [1945742] - KVM: nSVM: Track the physical cpu of the vmcb vmrun through the vmcb (Paolo Bonzini) [1945742] - KVM: SVM: Use a separate vmcb for the nested L2 guest (Paolo Bonzini) [1945742] - KVM: nSVM: Set the shadow root level to the TDP level for nested NPT (Paolo Bonzini) [1945742] - KVM: SVM: Don't strip the C-bit from CR2 on #PF interception (Paolo Bonzini) [1945742] - KVM: x86/mmu: WARN on NULL pae_root or lm_root, or bad shadow root level (Paolo Bonzini) [1945742] - KVM: x86/mmu: Sync roots after MMU load iff load as successful (Paolo Bonzini) [1945742] - KVM: x86/mmu: Unexport MMU load/unload functions (Paolo Bonzini) [1945742] - KVM: x86: Defer the MMU unload to the normal path on an global INVPCID (Paolo Bonzini) [1945742] - KVM: nVMX: Defer the MMU reload to the normal path on an EPTP switch (Paolo Bonzini) [1945742] - KVM: x86/mmu: Set the C-bit in the PDPTRs and LM pseudo-PDPTRs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix and unconditionally enable WARNs to detect PAE leaks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Check PDPTRs before allocating PAE roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Ensure MMU pages are available when allocating roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Allocate pae_root and lm_root pages in dedicated helper (Paolo Bonzini) [1945742] - KVM: x86/mmu: Allocate the lm_root before allocating PAE roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Capture 'mmu' in a local variable when allocating roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Alloc page for PDPTEs when shadowing 32-bit NPT with 64-bit (Paolo Bonzini) [1945742] - KVM: x86: to track if L1 is running L2 VM (Paolo Bonzini) [1945742] - KVM: LAPIC: Advancing the timer expiration on guest initiated write (Paolo Bonzini) [1945742] - KVM: x86/mmu: Skip !MMU-present SPTEs when removing SP in exclusive mode (Paolo Bonzini) [1945742] - KVM: kvmclock: Fix vCPUs > 64 can't be online/hotpluged (Paolo Bonzini) [1945742] - kvm: x86: use NULL instead of using plain integer as pointer (Paolo Bonzini) [1945742] - KVM: SVM: Connect 'npt' module param to KVM's internal 'npt_enabled' (Paolo Bonzini) [1945742] - KVM: x86: Ensure deadline timer has truly expired before posting its IRQ (Paolo Bonzini) [1945742] - KVM: x86/xen: Fix return code when clearing vcpu_info and vcpu_time_info (Paolo Bonzini) [1945742] - KVM: x86/mmu: Set SPTE_AD_WRPROT_ONLY_MASK if and only if PML is enabled (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Fix Hyper-V context null-ptr-deref (Paolo Bonzini) [1945742] - KVM: SVM: Fix nested VM-Exit on #GP interception handling (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Fix dummy check if lbr_desc->event is created (Paolo Bonzini) [1945742] - KVM: x86/mmu: Consider the hva in mmu_notifier retry (Paolo Bonzini) [1945742] - kernel.h: split out min()/max() et al. helpers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Skip mmu_notifier check when handling MMIO page fault (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove a variety of unnecessary exports (Paolo Bonzini) [1945742] - KVM: x86: Fold "write-protect large" use case into generic write-protect (Paolo Bonzini) [1945742] - KVM: x86/mmu: Don't set dirty bits when disabling dirty logging w/ PML (Paolo Bonzini) [1945742] - KVM: VMX: Dynamically enable/disable PML based on memslot dirty logging (Paolo Bonzini) [1945742] - KVM: x86: Further clarify the logic and comments for toggling log dirty (Paolo Bonzini) [1945742] - KVM: x86: Move MMU's PML logic to common code (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make dirty log size hook (PML) a value, not a function (Paolo Bonzini) [1945742] - KVM: x86/mmu: Expand on the comment in kvm_vcpu_ad_need_write_protect() (Paolo Bonzini) [1945742] - KVM: nVMX: Disable PML in hardware when running L2 (Paolo Bonzini) [1945742] - KVM: x86/mmu: Consult max mapping level when zapping collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Pass the memslot to the rmap callbacks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Split out max mapping level calculation to helper (Paolo Bonzini) [1945742] - KVM: nVMX: no need to undo inject_page_fault change on nested vmexit (Paolo Bonzini) [1945742] - KVM: nSVM: move nested vmrun tracepoint to enter_svm_guest_mode (Paolo Bonzini) [1945742] - KVM: VMX: read idt_vectoring_info a bit earlier (Paolo Bonzini) [1945742] - KVM: VMX: Allow INVPCID in guest without PCID (Paolo Bonzini) [1945742] - KVM: x86: Advertise INVPCID by default (Paolo Bonzini) [1945742] - KVM: SVM: Intercept INVPCID when it's disabled to inject #UD (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make HVA handler retpoline-friendly (Paolo Bonzini) [1945742] - KVM: x86: move kvm_inject_gp up from kvm_set_dr to callers (Paolo Bonzini) [1945742] - KVM: x86: reading DR cannot fail (Paolo Bonzini) [1945742] - KVM: SVM: Remove an unnecessary forward declaration (Paolo Bonzini) [1945742] - KVM: SVM: Move AVIC vCPU kicking snippet to helper function (Paolo Bonzini) [1945742] - KVM: x86: Restore all 64 bits of DR6 and DR7 during RSM on x86-64 (Paolo Bonzini) [1945742] - KVM: x86: Remove misleading DR6/DR7 adjustments from RSM emulation (Paolo Bonzini) [1945742] - KVM: x86/xen: Use hva_t for holding hypercall page address (Paolo Bonzini) [1945742] - KVM: x86/xen: Remove extra unlock in kvm_xen_hvm_set_attr() (Paolo Bonzini) [1945742] - KVM: Use kvm_pfn_t for local PFN variable in hva_to_pfn_remapped() (Paolo Bonzini) [1945742] - KVM: x86: Add helper to consolidate "raw" reserved GPA mask calculations (Paolo Bonzini) [1945742] - KVM: selftests: Always run vCPU thread with blocked SIG_IPI (Paolo Bonzini) [1945742] - KVM: selftests: Sync data verify of dirty logging with guest sync (Paolo Bonzini) [1945742] - KVM: selftests: Add a test for kvm page table code (Paolo Bonzini) [1945742] - KVM: selftests: Adapt vm_userspace_mem_region_add to new helpers (Paolo Bonzini) [1945742] - KVM: selftests: List all hugetlb src types specified with page sizes (Paolo Bonzini) [1945742] - tools/headers: sync headers of asm-generic/hugetlb_encode.h (Paolo Bonzini) [1945742] - tools include uapi: Update linux/mmap.h copy (Paolo Bonzini) [1945742] - tools UAPI: Update copy of linux/mman.h from the kernel sources (Paolo Bonzini) [1945742] - mm/hugetlb: add mmap() encodings for 32MB and 512MB page sizes (Paolo Bonzini) [1945742] - RHEL: Add #defines for 16k hugepages (Paolo Bonzini) [1945742] - KVM: selftests: Add a helper to get system default hugetlb page size (Paolo Bonzini) [1945742] - KVM: selftests: Add a helper to get system configured THP page size (Paolo Bonzini) [1945742] - KVM: selftests: Make a generic helper to get vm guest mode strings (Paolo Bonzini) [1945742] - KVM: selftests: Print the errno besides error-string in TEST_ASSERT (Paolo Bonzini) [1945742] - KVM: selftests: remove redundant semi-colon (Paolo Bonzini) [1945742] - selftests: kvm: Check that TSC page value is small after KVM_SET_CLOCK(0) (Paolo Bonzini) [1945742] - KVM: x86: Prevent 'hv_clock->system_time' from going negative in kvm_guest_time_update() (Paolo Bonzini) [1945742] - selftests: kvm: make hardware_disable_test less verbose (Paolo Bonzini) [1945742] - selftests: kvm: add set_boot_cpu_id test (Paolo Bonzini) [1945742] - selftests: kvm: add _vm_ioctl (Paolo Bonzini) [1945742] - selftests: kvm: add get_msr_index_features (Paolo Bonzini) [1945742] - KVM: x86/xen: Add support for vCPU runstate information (Paolo Bonzini) [1945742] - RHEL: configs: do not enable CONFIG_KVM_XEN (Paolo Bonzini) [1945742] - KVM: x86: allow compiling out the Xen hypercall interface (Paolo Bonzini) [1945742] - KVM: x86: compile out TDP MMU on 32-bit systems (Paolo Bonzini) [1945742] - KVM: xen: flush deferred static key before checking it (Paolo Bonzini) [1945742] - KVM: x86/xen: Explicitly pad struct compat_vcpu_info to 64 bytes (Paolo Bonzini) [1945742] - KVM: x86/xen: Allow reset of Xen attributes (Paolo Bonzini) [1945742] - KVM: Documentation: rectify rst markup in kvm_run->flags (Paolo Bonzini) [1945742] - Documentation: kvm: fix messy conversion from .txt to .rst (Paolo Bonzini) [1945742] - KVM: Documentation: rectify rst markup in KVM_GET_SUPPORTED_HV_CPUID (Paolo Bonzini) [1945742] - Documentation: kvm: fix warning (Paolo Bonzini) [1945742] - KVM: Add documentation for Xen hypercall and shared_info updates (Paolo Bonzini) [1945742] - KVM: X86: Add the Document for KVM_CAP_X86_BUS_LOCK_EXIT (Paolo Bonzini) [1945742] - KVM: Documentation: Fix documentation for nested. (Paolo Bonzini) [1945742] - KVM: Documentation: Add arm64 KVM_RUN error codes (Paolo Bonzini) [1945742] - KVM: Documentation: Update entry for KVM_CAP_ENFORCE_PV_CPUID (Paolo Bonzini) [1945742] - KVM: Documentation: Update entry for KVM_X86_SET_MSR_FILTER (Paolo Bonzini) [1945742] - docs: kvm: add documentation for KVM_CAP_S390_DIAG318 (Paolo Bonzini) [1945742] - selftests: kvm: Mmap the entire vcpu mmap area (Paolo Bonzini) [1945742] - selftests: kvm: avoid uninitialized variable warning (Paolo Bonzini) [1945742] - selftests: kvm: add hardware_disable test (Paolo Bonzini) [1945742] - KVM: selftests: Don't bother mapping GVA for Xen shinfo test (Paolo Bonzini) [1945742] - KVM: selftests: Fix hex vs. decimal snafu in Xen test (Paolo Bonzini) [1945742] - KVM: selftests: Fix size of memslots created by Xen tests (Paolo Bonzini) [1945742] - KVM: selftests: Ignore recently added Xen tests' build output (Paolo Bonzini) [1945742] - KVM: x86: declare Xen HVM shared info capability and add test case (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Drop hv_vcpu_to_vcpu() helper (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Allocate Hyper-V context lazily (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Make Hyper-V emulation enablement conditional (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Allocate 'struct kvm_vcpu_hv' dynamically (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Prepare to meet unallocated Hyper-V context (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Always use to_hv_vcpu() accessor to get to 'struct kvm_vcpu_hv' (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Stop shadowing global 'current_vcpu' variable (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Introduce to_kvm_hv() helper (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_hv_syndbg() to to_hv_syndbg() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_stimer()/stimer_to_vcpu() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_synic()/synic_to_vcpu() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_hv_vcpu() to to_hv_vcpu() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Drop unused kvm_hv_vapic_assist_page_enabled() (Paolo Bonzini) [1945742] - KVM: x86/xen: Add event channel interrupt vector upcall (Paolo Bonzini) [1945742] - KVM: x86/xen: register vcpu time info region (Paolo Bonzini) [1945742] - KVM: x86/xen: setup pvclock updates (Paolo Bonzini) [1945742] - KVM: x86/xen: register vcpu info (Paolo Bonzini) [1945742] - KVM: x86/xen: Add KVM_XEN_VCPU_SET_ATTR/KVM_XEN_VCPU_GET_ATTR (Paolo Bonzini) [1945742] - KVM: x86/xen: update wallclock region (Paolo Bonzini) [1945742] - xen: add wc_sec_hi to struct shared_info (Paolo Bonzini) [1945742] - KVM: x86/xen: register shared_info page (Paolo Bonzini) [1945742] - KVM: x86/xen: add definitions of compat_shared_info, compat_vcpu_info (Paolo Bonzini) [1945742] - KVM: x86/xen: latch long_mode when hypercall page is set up (Paolo Bonzini) [1945742] - KVM: x86/xen: add KVM_XEN_HVM_SET_ATTR/KVM_XEN_HVM_GET_ATTR (Paolo Bonzini) [1945742] - KVM: x86/xen: Add kvm_xen_enabled static key (Paolo Bonzini) [1945742] - KVM: x86/xen: Move KVM_XEN_HVM_CONFIG handling to xen.c (Paolo Bonzini) [1945742] - KVM: x86/xen: Fix coexistence of Xen and Hyper-V hypercalls (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add helper to generate mask of reserved HPA bits (Paolo Bonzini) [1945742] - KVM: x86: Use reserved_gpa_bits to calculate reserved PxE bits (Paolo Bonzini) [1945742] - KVM: x86: SEV: Treat C-bit as legal GPA bit regardless of vCPU mode (Paolo Bonzini) [1945742] - KVM: nSVM: Use common GPA helper to check for illegal CR3 (Paolo Bonzini) [1945742] - KVM: VMX: Use GPA legality helpers to replace open coded equivalents (Paolo Bonzini) [1945742] - KVM: x86: Add a helper to handle legal GPA with an alignment requirement (Paolo Bonzini) [1945742] - KVM: x86: Add a helper to check for a legal GPA (Paolo Bonzini) [1945742] - KVM: nSVM: Don't strip host's C-bit from guest's CR3 when reading PDPTRs (Paolo Bonzini) [1945742] - KVM: x86: Set so called 'reserved CR3 bits in LM mask' at vCPU reset (Paolo Bonzini) [1945742] - KVM: x86/xen: intercept xen hypercalls if enabled (Paolo Bonzini) [1945742] - KVM: selftests: Add missing header file needed by xAPIC IPI tests (Paolo Bonzini) [1945742] - KVM: selftests: Add operand to vmsave/vmload/vmrun in svm.c (Paolo Bonzini) [1945742] - selftests: kvm: Properly set Hyper-V CPUIDs in evmcs_test (Paolo Bonzini) [1945742] - selftests: kvm: Move kvm_get_supported_hv_cpuid() to common code (Paolo Bonzini) [1945742] - selftest: kvm: x86: test KVM_GET_CPUID2 and guest visible CPUIDs against KVM_GET_SUPPORTED_CPUID (Paolo Bonzini) [1945742] - selftests: kvm/x86: add test for pmu msr MSR_IA32_PERF_CAPABILITIES (Paolo Bonzini) [1945742] - KVM: selftests: Disable dirty logging with vCPUs running (Paolo Bonzini) [1945742] - KVM: selftests: Add backing src parameter to dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Add memslot modification stress test (Paolo Bonzini) [1945742] - KVM: selftests: Add option to overlap vCPU memory access (Paolo Bonzini) [1945742] - KVM: selftests: Fix population stage in dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Convert iterations to int in dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Avoid flooding debug log while populating memory (Paolo Bonzini) [1945742] - KVM: selftests: Rename timespec_diff_now to timespec_elapsed (Paolo Bonzini) [1945742] - KVM: selftests: Test IPI to halted vCPU in xAPIC while backing page moves (Paolo Bonzini) [1945742] - KVM: selftests: Implement perf_test_util more conventionally (Paolo Bonzini) [1945742] - KVM: selftests: Use vm_create_with_vcpus in create_vm (Paolo Bonzini) [1945742] - KVM: selftests: Factor out guest mode code (Paolo Bonzini) [1945742] - selftests: kvm: Merge user_msr_test into userspace_msr_exit_test (Paolo Bonzini) [1945742] - selftests: kvm: Test MSR exiting to userspace (Paolo Bonzini) [1945742] - KVM: selftests: sync_regs test for diag318 (Paolo Bonzini) [1945742] - KVM: selftests: x86: Set supported CPUIDs on default VM (Paolo Bonzini) [1945742] - KVM: selftests: Make test skipping consistent (Paolo Bonzini) [1945742] - KVM: selftests: Introduce vm_create_[default_]_with_vcpus (Paolo Bonzini) [1945742] - KVM: selftests: Make vm_create_default common (Paolo Bonzini) [1945742] - KVM: selftests: always use manual clear in dirty_log_perf_test (Paolo Bonzini) [1945742] - selftests: kvm: keep .gitignore add to date (Paolo Bonzini) [1945742] - KVM: selftests: Add "-c" parameter to dirty log test (Paolo Bonzini) [1945742] - KVM: selftests: Run dirty ring test asynchronously (Paolo Bonzini) [1945742] - KVM: selftests: Add dirty ring buffer test (Paolo Bonzini) [1945742] - KVM: selftests: Introduce after_vcpu_run hook for dirty log test (Paolo Bonzini) [1945742] - KVM: selftests: Verify supported CR4 bits can be set before KVM_SET_CPUID2 (Paolo Bonzini) [1945742] - KVM: selftests: allow two iterations of dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Introduce the dirty log perf test (Paolo Bonzini) [1945742] - KVM: selftests: Make the number of vcpus global (Paolo Bonzini) [1945742] - KVM: selftests: Make the per vcpu memory size global (Paolo Bonzini) [1945742] - KVM: selftests: Drop pointless vm_create wrapper (Paolo Bonzini) [1945742] - KVM: selftests: Add wrfract to common guest code (Paolo Bonzini) [1945742] - KVM: selftests: Simplify demand_paging_test with timespec_diff_now (Paolo Bonzini) [1945742] - KVM: selftests: Remove address rounding in guest code (Paolo Bonzini) [1945742] - KVM: selftests: Factor code out of demand_paging_test (Paolo Bonzini) [1945742] - KVM: selftests: Use a single binary for dirty/clear log test (Paolo Bonzini) [1945742] - KVM: selftests: Always clear dirty bitmap after iteration (Paolo Bonzini) [1945742] - selftests: kvm: test enforcement of paravirtual cpuid features (Paolo Bonzini) [1945742] - selftests: kvm: Add exception handling to selftests (Paolo Bonzini) [1945742] - selftests: kvm: Clear uc so UCALL_NONE is being properly reported (Paolo Bonzini) [1945742] - selftests: kvm: Fix the segment descriptor layout to match the actual layout (Paolo Bonzini) [1945742] - KVM: x86/xen: Fix __user pointer handling for hypercall page installation (Paolo Bonzini) [1945742] - KVM: x86/xen: fix Xen hypercall page msr handling (Paolo Bonzini) [1945742] - KVM: x86: move kvm_inject_gp up from kvm_set_xcr to callers (Paolo Bonzini) [1945742] - KVM: cleanup DR6/DR7 reserved bits checks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add '__func__' in rmap_printk() (Paolo Bonzini) [1945742] - KVM: SVM: Replace hard-coded value with #define (Paolo Bonzini) [1945742] - KVM: SVM: use .prepare_guest_switch() to handle CPU register save/setup (Paolo Bonzini) [1945742] - KVM: SVM: remove uneeded fields from host_save_users_msrs (Paolo Bonzini) [1945742] - KVM: SVM: use vmsave/vmload for saving/restoring additional host state (Paolo Bonzini) [1945742] - KVM: SVM: Use asm goto to handle unexpected #UD on SVM instructions (Paolo Bonzini) [1945742] - KVM: VMX: Use the kernel's version of VMXOFF (Paolo Bonzini) [1945742] - KVM: VMX: Move Intel PT shenanigans out of VMXON/VMXOFF flows (Paolo Bonzini) [1945742] - KVM/nVMX: Use __vmx_vcpu_run in nested_vmx_check_vmentry_hw (Paolo Bonzini) [1945742] - x86/virt: Mark flags and memory as clobbered by VMXOFF (Paolo Bonzini) [1945742] - x86/reboot: Force all cpus to exit VMX root if VMX is supported (Paolo Bonzini) [1945742] - x86/virt: Eat faults on VMXOFF in reboot flows (Paolo Bonzini) [1945742] - KVM: x86: use static calls to reduce kvm_x86_ops overhead (Paolo Bonzini) [1945742] - KVM: x86: introduce definitions to support static calls for kvm_x86_ops (Paolo Bonzini) [1945742] - KVM: RHEL: include linux/static_call.h (Paolo Bonzini) [1945742] - KVM: X86: prepend vmx/svm prefix to additional kvm_x86_ops functions (Paolo Bonzini) [1945742] - KVM: Stop using deprecated jump label APIs (Paolo Bonzini) [1945742] - locking/static_key: Add support for deferred static branches (Paolo Bonzini) [1945742] - KVM: X86: Rename DR6_INIT to DR6_ACTIVE_LOW (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Expose LBR_FMT in the MSR_IA32_PERF_CAPABILITIES (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Release guest LBR event via lazy release mechanism (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Emulate legacy freezing LBRs on virtual PMI (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Reduce the overhead of LBR pass-through or cancellation (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Pass-through LBR msrs when the guest LBR event is ACTIVE (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Create a guest LBR event when vcpu sets DEBUGCTLMSR_LBR (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Add PMU_CAP_LBR_FMT check when guest LBR is enabled (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Add PMU_CAP_LBR_FMT check when guest LBR is enabled (Paolo Bonzini) [1945742] - KVM: x86/pmu: preserve IA32_PERF_CAPABILITIES across CPUID refresh (Paolo Bonzini) [1945742] - KVM: x86/vmx: Make vmx_set_intercept_for_msr() non-static (Paolo Bonzini) [1945742] - KVM: VMX: read/write MSR_IA32_DEBUGCTLMSR from GUEST_IA32_DEBUGCTL (Paolo Bonzini) [1945742] - KVM: VMX: Use x2apic_mode to avoid RDMSR when querying PI state (Paolo Bonzini) [1945742] - x86/apic: Export x2apic_mode for use by KVM in "warm" path (Paolo Bonzini) [1945742] - KVM: VMX: Enable bus lock VM exit (Paolo Bonzini) [1945742] - KVM: X86: Reset the vcpu->run->flags at the beginning of vcpu_run (Paolo Bonzini) [1945742] - KVM: VMX: Convert vcpu_vmx.exit_reason to a union (Paolo Bonzini) [1945742] - KVM/SVM: add support for SEV attestation command (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove the defunct update_pte() paging hook (Paolo Bonzini) [1945742] - KVM: Expose AVX_VNNI instruction to guset (Paolo Bonzini) [1945742] - Enumerate AVX Vector Neural Network instructions (Paolo Bonzini) [1945742] - x86: kvm: style: Simplify bool comparison (Paolo Bonzini) [1945742] - KVM: x86: Zap the oldest MMU pages, not the newest (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use boolean returns for (S)PTE accessors (Paolo Bonzini) [1945742] - KVM: X86: use vzalloc() instead of vmalloc/memset (Paolo Bonzini) [1945742] - KVM: x86: Take KVM's SRCU lock only if steal time update is needed (Paolo Bonzini) [1945742] - KVM: x86: Remove obsolete disabling of page faults in kvm_arch_vcpu_put() (Paolo Bonzini) [1945742] - KVM: do not assume PTE is writable after follow_pfn (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix TDP MMU zap collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86: cleanup CR3 reserved bits checks (Paolo Bonzini) [1945742] - KVM: SVM: Treat SVM as unsupported when running as an SEV guest (Paolo Bonzini) [1945742] - KVM: x86: Update emulator context mode if SYSENTER xfers to 64-bit mode (Paolo Bonzini) [1945742] - KVM: x86: Supplement __cr4_reserved_bits() with X86_FEATURE_PCID check (Paolo Bonzini) [1945742] - KVM/x86: assign hva with the right value to vm_munmap the pages (Paolo Bonzini) [1945742] - Fix unsynchronized access to sev members through svm_register_enc_region (Paolo Bonzini) [1945742] - KVM: x86: Revert "KVM: x86: Mark GPRs dirty when written" (Paolo Bonzini) [1945742] - KVM: SVM: Unconditionally sync GPRs to GHCB on VMRUN of SEV-ES guest (Paolo Bonzini) [1945742] - KVM: x86: __kvm_vcpu_halt can be static (Paolo Bonzini) [1945742] - KVM: SVM: Add support for booting APs in an SEV-ES guest (Paolo Bonzini) [1945742] - KVM/SVM: Remove leftover __svm_vcpu_run prototype from svm.c (Paolo Bonzini) [1945742] - KVM: SVM: Add register operand to vmsave call in sev_es_vcpu_load (Paolo Bonzini) [1945742] - KVM: SVM: fix 32-bit compilation (Paolo Bonzini) [1945742] - KVM: SVM: Add AP_JUMP_TABLE support in prep for AP booting (Paolo Bonzini) [1945742] - KVM: SVM: Provide support to launch and run an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Provide an updated VMRUN invocation for SEV-ES guests (Paolo Bonzini) [1945742] - x86/kvm/svm: Use uninstrumented wrmsrl() to restore GS (Paolo Bonzini) [1945742] - KVM: SVM: Provide support for SEV-ES vCPU loading (Paolo Bonzini) [1945742] - KVM: SVM: Provide support for SEV-ES vCPU creation/loading (Paolo Bonzini) [1945742] - KVM: SVM: Update ASID allocation to support SEV-ES guests (Paolo Bonzini) [1945742] - KVM: SVM: Set the encryption mask for the SVM host save area (Paolo Bonzini) [1945742] - KVM: SVM: Add NMI support for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Guest FPU state save/restore not needed for SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Do not report support for SMM for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: x86: Update __get_sregs() / __set_sregs() to support SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Add support for CR8 write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Add support for CR4 write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Add support for CR0 write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Add support for EFER write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Support string IO operations for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Support MMIO for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Create trace events for VMGEXIT MSR protocol processing (Paolo Bonzini) [1945742] - KVM: SVM: Create trace events for VMGEXIT processing (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES GHCB MSR protocol function 0x100 (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES GHCB MSR protocol function 0x004 (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES GHCB MSR protocol function 0x002 (Paolo Bonzini) [1945742] - KVM: SVM: Add initial support for a VMGEXIT VMEXIT (Paolo Bonzini) [1945742] - KVM: SVM: Add GHCB accessor functions for retrieving fields (Paolo Bonzini) [1945742] - KVM: SVM: Prepare for SEV-ES exit handling in the sev.c file (Paolo Bonzini) [1945742] - KVM: SVM: Cannot re-initialize the VMCB after shutdown with SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Do not allow instruction emulation under SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Prevent debugging under SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Add required changes to support intercepts under SEV-ES (Paolo Bonzini) [1945742] - KVM: x86: introduce complete_emulated_msr callback (Paolo Bonzini) [1945742] - KVM: x86: Mark GPRs dirty when written (Paolo Bonzini) [1945742] - KVM: SVM: Add support for the SEV-ES VMSA (Paolo Bonzini) [1945742] - x86/cpu: Add VM page flush MSR availablility as a CPUID feature (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES capability in KVM (Paolo Bonzini) [1945742] - KVM/VMX/SVM: Move kvm_machine_check function to x86.h (Paolo Bonzini) [1945742] - KVM: Don't allocate dirty bitmap if dirty ring is enabled (Paolo Bonzini) [1945742] - KVM: Make dirty ring exclusive to dirty bitmap log (Paolo Bonzini) [1945742] - KVM: X86: Implement ring-based dirty memory tracking (Paolo Bonzini) [1945742] - KVM: Pass in kvm pointer into mark_page_dirty_in_slot() (Paolo Bonzini) [1945742] - kvm/eventfd: Drain events from eventfd in irqfd_wakeup() (Paolo Bonzini) [1945742] - eventfd: Export eventfd_ctx_do_read() (Paolo Bonzini) [1945742] - kvm/eventfd: Use priority waitqueue to catch events before userspace (Paolo Bonzini) [1945742] - sched/wait: Add add_wait_queue_priority() (Paolo Bonzini) [1945742] - cpuidle-haltpoll: fix error comments in arch_haltpoll_disable (Paolo Bonzini) [1945742] - kvm/eventfd: Use sequence counter with associated spinlock (Paolo Bonzini) [1945742] - x86/kvm/vmx: Use native read/write_cr2() (Paolo Bonzini) [1945742] - KVM: SVM: convert get_user_pages() --> pin_user_pages() (Paolo Bonzini) [1945742] - x86/asm: Change all ENTRY+ENDPROC to SYM_FUNC_* (Paolo Bonzini) [1945742] - x86/entry/64: Fix unwind hints in __switch_to_asm() (Paolo Bonzini) [1945742] - x86/asm/64: Change all ENTRY+END to SYM_CODE_* (Paolo Bonzini) [1945742] - x86/head/64: Annotate start_cpu0() as non-callable (Paolo Bonzini) [1945742] - x86/asm: Do not annotate functions with GLOBAL (Paolo Bonzini) [1945742] - kprobes/x86/xen: blacklist non-attachable xen interrupt functions (Paolo Bonzini) [1945742] - x86/asm/64: Add ENDs to some functions and relabel with SYM_CODE_* (Paolo Bonzini) [1945742] - x86/asm: Use SYM_INNER_LABEL instead of GLOBAL (Paolo Bonzini) [1945742] - x86/asm: Annotate aliases (Paolo Bonzini) [1945742] - x86/asm/crypto: Annotate local functions (Paolo Bonzini) [1945742] - static_call: Add static_call_cond() (Paolo Bonzini) [1945742] - static_call: Add basic static call infrastructure (Paolo Bonzini) [1945742] - devlink: use _BITUL() macro instead of BIT() in the UAPI header (Petr Oros) [1935646] - devlink: Fix reload stats structure (Petr Oros) [1935646] - devlink: Avoid overwriting port attributes of registered port (Petr Oros) [1935646] - devlink: Add Documentation/networking/devlink/devlink-reload.rst (Petr Oros) [1935646] - devlink: Add enable_remote_dev_reset generic parameter (Petr Oros) [1935646] - devlink: Add remote reload stats (Petr Oros) [1935646] - devlink: Add reload stats (Petr Oros) [1935646] - devlink: Add devlink reload limit option (Petr Oros) [1935646] - devlink: Add reload action option to devlink reload command (Petr Oros) [1935646] - devlink: Change devlink_reload_supported() param type (Petr Oros) [1935646]- CI: Rename KABI option (Veronika Kabatova) - CI: Disable result checking for realtime checks (Veronika Kabatova) - Revert "GFS2: Re-add a call to log_flush_wait when flushing the journal" (Bob Peterson) [1917930] - md/raid1: properly indicate failure when ending a failed write request (Nigel Croxon) [1954588] - Revert "uio: use request_threaded_irq instead" (Vitaly Kuznetsov) [1946644] - drm/ast: Set format registers in primary plane's update (Lyude Paul) [1923857] - drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status (Mohammed Gamal) [1940926] - x86/hyperv: Move hv_do_rep_hypercall to asm-generic (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Increase wait time for VMbus unload (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Initialize unload_event statically (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Check for pending channel interrupts before taking a CPU offline (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Drivers: hv: vmbus: Introduce CHANNELMSG_MODIFYCHANNEL_RESPONSE (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Introduce and negotiate VMBus protocol version 5.3 (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Use after free in __vmbus_open() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: remove unused function (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Remove unused linux/version.h header (Mohammed Gamal) [1940926] - x86/Hyper-V: Support for free page reporting (Mohammed Gamal) [1940926] - x86/hyper-v: Move hv_message_type to architecture neutral module (Mohammed Gamal) [1940926] - asm-generic/hyperv: import data structures for mapping device interrupts (Mohammed Gamal) [1940926] - asm-generic/hyperv: introduce hv_device_id and auxiliary structures (Mohammed Gamal) [1940926] - asm-generic/hyperv: update hv_interrupt_entry (Mohammed Gamal) [1940926] - asm-generic/hyperv: update hv_msi_entry (Mohammed Gamal) [1940926] - x86/hyperv: provide a bunch of helper functions (Mohammed Gamal) [1940926] - x86/hyperv: extract partition ID from Microsoft Hypervisor if necessary (Mohammed Gamal) [1940926] - asm-generic/hyperv: Add definitions for Get/SetVpRegister hypercalls (Mohammed Gamal) [1940926] - drivers: hv: Fix EXPORT_SYMBOL and tab spaces issue (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Drop error message when 'No request id available' (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Move handling of VMbus interrupts (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Handle auto EOI quirk inline (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Move hyperv_report_panic_msg to arch neutral code (Mohammed Gamal) [1940926] - Drivers: hv: Redo Hyper-V synthetic MSR get/set functions (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Move Hyper-V page allocator to arch neutral code (Mohammed Gamal) [1940926] - x86/hyperv: allocate output arg pages if required (Mohammed Gamal) [1940926] - drivers: hv: Fix whitespace errors (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: skip VMBus initialization if Linux is root (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Enforce 'VMBus version >= 5.2' on isolated guests (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Restrict vmbus_devices on isolated guests (Mohammed Gamal) [1940926] - hv_utils: Fix spelling mistake "Hearbeat" -> "Heartbeat" (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Add /sys/bus/vmbus/hibernation (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Resolve race condition in vmbus_onoffer_rescind() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Avoid use-after-free in vmbus_onoffer_rescind() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Copy the hv_message in vmbus_on_msg_dpc() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Reduce number of references to message in vmbus_on_msg_dpc() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Initialize memory to be sent to the host (Mohammed Gamal) [1940926] - hv_utils: Add validation for untrusted Hyper-V values (Mohammed Gamal) [1940926] - drivers/hv: remove obsolete TODO and fix misleading typo in comment (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Fix checkpatch SPLIT_STRING (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Fix call msleep using < 20ms (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Fix checkpatch LINE_SPACING (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Replace symbolic permissions by octal permissions (Mohammed Gamal) [1940926] - drivers: hv: Fix hyperv_record_panic_msg path on comment (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Add vmbus_requestor data structure for VMBus hardening (Mohammed Gamal) [1940926] - ena: revert removal of MODULE_VERSION from ena (Petr Oros) [1955712] - Revert "[netdrv] net/intel: remove driver versions from Intel drivers" (Jonathan Toppins) [1955745] - Revert "[netdrv] net/broadcom: Clean broadcom code from driver versions" (Jonathan Toppins) [1955721] - net: core: add dev_get_tstats64 as a ndo_get_stats64 implementation (Josef Oskera) [1939453]- igb: amend removal of MODULE_VERSION (Corinna Vinschen) [1955748] - igc: amend removal of MODULE_VERSION (Corinna Vinschen) [1955755] - i40e: amend removal of MODULE_VERSION (Stefan Assmann) [1955736] - ixgbe: Amend commit acf03026ec5a to include a version string in module info. (Ken Cox) [1955759] - i40e: Fix parameters in aq_get_phy_register() (Stefan Assmann) [1907852] - initramfs: panic with memory information (Coiby Xu) [1936031] - powercap/intel_rapl: add support for AlderLake (David Arcari) [1838605] - xfs: restore shutdown check in mapped write fault path (Brian Foster) [1926089] - xfs: consider shutdown in bmapbt cursor delete assert (Brian Foster) [1926077] - iomap: Fix negative assignment to unsigned sis->pages in iomap_swapfile_activate (Carlos Maiolino) [1938210] - scsi: scsi_dh_alua: Remove check for ASC 24h in alua_rtpg() (Ewan D. Milne) [1929878] - perf/arm-cmn: Move IRQs when migrating context (Jeremy Linton) [1816850] - perf/arm-cmn: Fix PMU instance naming (Jeremy Linton) [1816850] - perf: arm-cmn: Fix conversion specifiers for node type (Jeremy Linton) [1816850] - perf: arm-cmn: Fix unsigned comparison to less than zero (Jeremy Linton) [1816850] - perf: Add Arm CMN-600 PMU driver (Jeremy Linton) [1816850] - redhat/configs: Use CONFIG_VIRTIO_CONSOLE=m on s390x, too (Thomas Huth) [1954119] - s390/config: do not select VIRTIO_CONSOLE via Kconfig (Thomas Huth) [1954119] - x86/platform/uv: Fix an error code in uv_hubs_init() (Frank Ramsay) [1936605] - x86/platform/uv: Add more to secondary CPU kdump info (Frank Ramsay) [1936605] - x86/platform/uv: Use x2apic enabled bit as set by BIOS to indicate APIC mode (Frank Ramsay) [1936605] - redhat/configs: Add CONFIG_UV_SYSFS (Frank Ramsay) [1936605] - x86/platform/uv: Fix indentation warning in Documentation/ABI/testing/sysfs-firmware-sgi_uv (Frank Ramsay) [1936605] - x86/platform/uv: Set section block size for hubless architectures (Frank Ramsay) [1936605] - x86/platform/uv: Update sysfs documentation (Frank Ramsay) [1936605] - x86/platform/uv: Add deprecated messages to /proc info leaves (Frank Ramsay) [1936605] - x86/platform/uv: Add sysfs hubless leaves (Frank Ramsay) [1936605] - x86/platform/uv: Add sysfs leaves to replace those in procfs (Frank Ramsay) [1936605] - x86/platform/uv: Add kernel interfaces for obtaining system info (Frank Ramsay) [1936605] - x86/platform/uv: Update MAINTAINERS for uv_sysfs driver (Frank Ramsay) [1936605] - x86/platform/uv: Update ABI documentation of /sys/firmware/sgi_uv/ (Frank Ramsay) [1936605] - x86/platform/uv: Add new uv_sysfs platform driver (Frank Ramsay) [1936605] - x86/platform/uv: Add and export uv_bios_* functions (Frank Ramsay) [1936605] - x86/platform/uv: Remove existing /sys/firmware/sgi_uv/interface (Frank Ramsay) [1936605] - x86/platform/uv: Unexport symbols only used by x2apic_uv_x.c (Frank Ramsay) [1936605] - x86/platform/uv: Unexport sn_coherency_id (Frank Ramsay) [1936605] - x86/platform/uv: Mark uv_bios_call() and uv_bios_call_irqsave() static (Frank Ramsay) [1936605] - UV: Add SPDX license identifier - Makefile/Kconfig (Frank Ramsay) [1936605] - netdevsim: Only use sampling truncation length when valid (Ivan Vecera) [1955163] - selftests: netdevsim: Test psample functionality (Ivan Vecera) [1955163] - netdevsim: Add dummy psample implementation (Ivan Vecera) [1955163] - psample: Add additional metadata attributes (Ivan Vecera) [1955163] - psample: Encapsulate packet metadata in a struct (Ivan Vecera) [1955163] - net: psample: fix build error when CONFIG_INET is not enabled (Ivan Vecera) [1955163] - devlink: include for _BITUL (Petr Oros) [1935630] - netdevsim: add support for flash_update overwrite mask (Petr Oros) [1935630] - devlink: introduce flash update overwrite mask (Petr Oros) [1935630] - devlink: convert flash_update to use params structure (Petr Oros) [1935630] - devlink: check flash_update parameter support in net core (Petr Oros) [1935630] - devlink: Enhance policy to validate port type input value (Petr Oros) [1935630] - devlink: Enhance policy to validate eswitch mode value (Petr Oros) [1935630] - net: devlink: region: Pass the region ops to the snapshot function (Petr Oros) [1935630] - net: devlink: regions: Add a priv member to the regions ops struct (Petr Oros) [1935630]- Enumerate AVX Vector Neural Network instructions (Steve Best) [1838616] - net: fix skb use after free in netpoll (Ivan Vecera) [1913481] - cipso,calipso: resolve a number of problems with the DOI refcounts (Guillaume Nault) [1950996] - netfilter: rpfilter: mask ecn bits before fib lookup (Guillaume Nault) [1950996] - netfilter: Fix rpfilter dropping vrf packets by mistake (Guillaume Nault) [1950996] - redhat: enable CONFIG_DM_MULTIPATH_HST and CONFIG_DM_MULTIPATH_IOA (Mike Snitzer) [1949682] - dm ioctl: fix out of bounds array access when no devices (Mike Snitzer) [1949682] - dm table: Fix zoned model check and zone sectors check (Mike Snitzer) [1949682] - dm: simplify target code conditional on CONFIG_BLK_DEV_ZONED (Mike Snitzer) [1949682] - dm verity: fix DM_VERITY_OPTS_MAX value (Mike Snitzer) [1949682] - dm verity fec: fix misaligned RS roots IO (Mike Snitzer) [1949682] - dm verity: fix FEC for RS roots unaligned to block size (Mike Snitzer) [1949682] - dm bufio: subtract the number of initial sectors in dm_bufio_get_device_size (Mike Snitzer) [1949682] - dm: fix deadlock when swapping to encrypted device (Mike Snitzer) [1949682] - dm era: only resize metadata in preresume (Mike Snitzer) [1949682] - dm era: Use correct value size in equality function of writeset tree (Mike Snitzer) [1949682] - dm era: Fix bitset memory leaks (Mike Snitzer) [1949682] - dm era: Verify the data block size hasn't changed (Mike Snitzer) [1949682] - dm era: Reinitialize bitset cache before digesting a new writeset (Mike Snitzer) [1949682] - dm era: Update in-core bitset after committing the metadata (Mike Snitzer) [1949682] - dm era: Recover committed writeset after crash (Mike Snitzer) [1949682] - dm writecache: fix writing beyond end of underlying device when shrinking (Mike Snitzer) [1949682] - dm table: remove needless request_queue NULL pointer checks (Mike Snitzer) [1949682] - dm table: fix zoned iterate_devices based device capability checks (Mike Snitzer) [1949682] - dm writecache: return the exact table values that were set (Mike Snitzer) [1949682] - dm writecache: fix unnecessary NULL check warnings (Mike Snitzer) [1949682] - dm writecache: fix performance degradation in ssd mode (Mike Snitzer) [1949682] - dm integrity: introduce the "fix_hmac" argument (Mike Snitzer) [1949682] - dm persistent data: fix return type of shadow_root() (Mike Snitzer) [1949682] - dm: cleanup of front padding calculation (Mike Snitzer) [1949682] - dm integrity: fix spelling mistake "flusing" -> "flushing" (Mike Snitzer) [1949682] - dm crypt: Spelling s_cihper_cipher_ (Mike Snitzer) [1949682] - dm: avoid filesystem lookup in dm_get_dev_t() (Mike Snitzer) [1949682] - dm integrity: conditionally disable "recalculate" feature (Mike Snitzer) [1949682] - dm integrity: fix a crash if "recalculate" used without "internal_hash" (Mike Snitzer) [1949682] - dm integrity: fix the maximum number of arguments (Mike Snitzer) [1949682] - dm integrity: fix flush with external metadata device (Mike Snitzer) [1949682] - dm snapshot: flush merged data before committing metadata (Mike Snitzer) [1949682] - dm zoned: select CONFIG_CRC32 (Mike Snitzer) [1949682] - dm integrity: select CRYPTO_SKCIPHER (Mike Snitzer) [1949682] - dm cache: simplify the return expression of load_mapping() (Mike Snitzer) [1949682] - dm verity: skip verity work if I_O error when system is shutting down (Mike Snitzer) [1949682] - dm ioctl: fix error return code in target_message (Mike Snitzer) [1949682] - dm crypt: Constify static crypt_iv_operations (Mike Snitzer) [1949682] - dm: add support for REQ_NOWAIT to various targets (Mike Snitzer) [1949682] - dm: rename multipath path selector source files to have "dm-ps" prefix (Mike Snitzer) [1949682] - dm mpath: add IO affinity path selector (Mike Snitzer) [1949682] - dm verity: Add support for signature verification with 2nd keyring (Mike Snitzer) [1949682] - dm: remove unnecessary current->bio_list check when submitting split bio (Mike Snitzer) [1949682] - dm: remove invalid sparse __acquires and __releases annotations (Mike Snitzer) [1949682] - dm: fix double RCU unlock in dm_dax_zero_page_range() error path (Mike Snitzer) [1949682] - dm writecache: remove BUG() and fail gracefully instead (Mike Snitzer) [1949682] - dm table: Remove BUG_ON(in_interrupt()) (Mike Snitzer) [1949682] - dm: fix bug with RCU locking in dm_blk_report_zones (Mike Snitzer) [1949682] - Revert "dm cache: fix arm link errors with inline" (Mike Snitzer) [1949682] - vfs: remove lockdep bogosity in __sb_start_write (Brian Foster) [1926097] - nbd: freeze the queue while we're adding connections (Ming Lei) [1927246] - selftests/livepatch: Do not check order when using "comm" for dmesg checking (Joel Savitz) [1942056] - RDMA/siw,rxe: Make emulated devices virtual in the device tree (Kamal Heib) [1931849] - RDMA/core: remove use of dma_virt_ops (Kamal Heib) [1931849] - RDMA/umem: Use ib_dma_max_seg_size instead of dma_get_max_seg_size (Kamal Heib) [1931849] - RDMA/core: Fix ib_dma_max_seg_size() (Kamal Heib) [1931849] - RDMA/umem: Move to allocate SG table from pages (Kamal Heib) [1931849] - lib/scatterlist: Do not limit max_segment to PAGE_ALIGNED values (Kamal Heib) [1931849] - lib/scatterlist: Add support in dynamic allocation of SG table from pages (Kamal Heib) [1931846] - RDMA/srp: Increase max_segment_size (Kamal Heib) [1931849] - RDMA/uverbs: Allow drivers to create a new HW object during rereg_mr (Kamal Heib) [1931849] - RDMA/mlx5: Use ib_umem_find_best_pgoff() for SRQ (Kamal Heib) [1931849] - RDMA/vmw_pvrdma: Fix network_hdr_type reported in WC (Kamal Heib) [1931849] - RDMA/cma: Fix error flow in default_roce_mode_store (Kamal Heib) [1931849] - RDMA/umem: Avoid undefined behavior of rounddown_pow_of_two() (Kamal Heib) [1931849] - RDMA/restrack: Don't treat as an error allocation ID wrapping (Kamal Heib) [1931849] - RDMA/ucma: Do not miss ctx destruction steps in some cases (Kamal Heib) [1931849] - RDMA/cma: Don't overwrite sgid_attr after device is released (Kamal Heib) [1931849] - RDMA/rxe: Use acquire/release for memory ordering (Kamal Heib) [1931849] - RDMA/uverbs: Fix incorrect variable type (Kamal Heib) [1931849] - RDMA/core: Update kernel documentation for ib_create_named_qp() (Kamal Heib) [1931849] - RDMA/iser: Remove in_interrupt() usage (Kamal Heib) [1931849] - IB: Fix kernel-doc markups (Kamal Heib) [1931849] - RDMA/uverbs: Check ODP in ib_check_mr_access() as well (Kamal Heib) [1931849] - RDMA/uverbs: Tidy input validation of ib_uverbs_rereg_mr() (Kamal Heib) [1931849] - RDMA/efa: Use dma_set_mask_and_coherent() to simplify code (Kamal Heib) [1931849] - RDMA/restrack: Support all QP types (Kamal Heib) [1931849] - RDMA/core: Allow drivers to disable restrack DB (Kamal Heib) [1931849] - RDMA/core: Track device memory MRs (Kamal Heib) [1931849] - RDMA/cma: Fix deadlock on &lock in rdma_cma_listen_on_all() error unwind (Kamal Heib) [1931849] - IB/hfi1: Fix fall-through warnings for Clang (Kamal Heib) [1931849] - RDMA/ipoib: Distribute cq completion vector better (Kamal Heib) [1931849] - RDMA/efa: Remove .create_ah callback assignment (Kamal Heib) [1931849] - RDMA/cma: Add missing error handling of listen_id (Kamal Heib) [1931849] - RDMA/restrack: Store all special QPs in restrack DB (Kamal Heib) [1931849] - RDMA/counter: Combine allocation and bind logic (Kamal Heib) [1931849] - RDMA/core: Remove ib_dma_{alloc,free}_coherent (Kamal Heib) [1931849] - RDMA/core: Make FD destroy callback void (Kamal Heib) [1931849] - RDMA/core: Postpone uobject cleanup on failure till FD close (Kamal Heib) [1931849] - IB/isert: Do not excplicitly check == false for bool (Kamal Heib) [1931849] - IB/core: Add support for NDR link speed (Kamal Heib) [1931849] - RDMA/ipoib: Add 50Gb and 100Gb link speeds to ethtool (Kamal Heib) [1931849] - RDMA/rxe,siw: Restore uverbs_cmd_mask IB_USER_VERBS_CMD_POST_SEND (Kamal Heib) [1931849] - RDMA/siw: Fix typo of EAGAIN not -EAGAIN in siw_cm_work_handler() (Kamal Heib) [1931849] - RDMA/rxe: Compute PSN windows correctly (Kamal Heib) [1931849] - RDMA/core: Fix error return in _ib_modify_qp() (Kamal Heib) [1931849] - IB/verbs: avoid nested container_of() (Kamal Heib) [1931849] - RDMA/rxe: Remove unused RXE_MR_TYPE_FMR (Kamal Heib) [1931849] - RDMA: Remove AH from uverbs_cmd_mask (Kamal Heib) [1931849] - RDMA: Remove uverbs cmds from drivers that don't use them (Kamal Heib) [1931849] - RDMA/core Remove uverbs_ex_cmd_mask (Kamal Heib) [1931849] - RDMA: Check create_flags during create_qp (Kamal Heib) [1931849] - RDMA: Check flags during create_cq (Kamal Heib) [1931849] - RDMA: Check attr_mask during modify_qp (Kamal Heib) [1931849] - RDMA: Check srq_type during create_srq (Kamal Heib) [1931849] - RDMA: Move more uverbs_cmd_mask settings to the core (Kamal Heib) [1931849] - RDMA: Remove elements in uverbs_cmd_mask that all drivers set (Kamal Heib) [1931849] - RDMA: Remove uverbs_ex_cmd_mask values that are linked to functions (Kamal Heib) [1931849] - RDMA/cm: Fix an attempt to use non-valid pointer when cleaning timewait (Kamal Heib) [1931846] - RDMA/core: Fix empty gid table for non IB/RoCE devices (Kamal Heib) [1931846] - RDMA/efa: Use the correct current and new states in modify QP (Kamal Heib) [1931846] - RMDA/sw: Don't allow drivers using dma_virt_ops on highmem configs (Kamal Heib) [1931846] - RDMA/srpt: Fix typo in srpt_unregister_mad_agent docstring (Kamal Heib) [1931846] - RDMA/vmw_pvrdma: Fix the active_speed and phys_state value (Kamal Heib) [1931846] - RDMA: Fix software RDMA drivers for dma mapping error (Kamal Heib) [1931846] - IB/srpt: docs: add a description for cq_size member (Kamal Heib) [1931846] - RDMA: Add rdma_connect_locked() (Kamal Heib) [1931846] - RDMA/uverbs: Fix false error in query gid IOCTL (Kamal Heib) [1931846] - RDMA/rxe: Fix small problem in network_type patch (Kamal Heib) [1931846] - RDMA/ucma: Fix use after free in destroy id flow (Kamal Heib) [1931846] - RDMA/rxe: Move the definitions for rxe_av.network_type to uAPI (Kamal Heib) [1931846] - RDMA: Explicitly pass in the dma_device to ib_register_device (Kamal Heib) [1931846] - RDMA/usnic: Remove the query_pkey callback (Kamal Heib) [1931846] - RDMA/usnic: Fix spelling mistake "transistion" -> "transition" (Kamal Heib) [1931846] - RDMA/usnic: switch from 'pci_' to 'dma_' API (Kamal Heib) [1931846] - RDMA/usnic: Avoid overly large buffers on stack (Kamal Heib) [1931846] - IB/usnic: Use dev_get_drvdata (Kamal Heib) [1931846] - IB/usnic: Fix deadlock (Kamal Heib) [1931846] - Revert "[infiniband] usnic_verbs: fix deadlock" (Kamal Heib) [1931846] - RDMA/rxe: Remove duplicate entries in struct rxe_mr (Kamal Heib) [1931846] - RDMA/uverbs: Expose the new GID query API to user space (Kamal Heib) [1931846] - RDMA/core: Introduce new GID table query API (Kamal Heib) [1931846] - RDMA/core: Modify enum ib_gid_type and enum rdma_network_type (Kamal Heib) [1931846] - RDMA/core: Change rdma_get_gid_attr returned error code (Kamal Heib) [1931846] - RDMA/core: Constify struct attribute_group (Kamal Heib) [1931846] - RDMA/core: Remove ucontext->closing (Kamal Heib) [1931846] - RDMA/drivers: Remove udata check from special QP (Kamal Heib) [1931846] - RDMA/qedr: Add support for user mode XRC-SRQ's (Kamal Heib) [1931846] - RDMA/mlx4: Prepare QP allocation to remove from the driver (Kamal Heib) [1931846] - RDMA/mlx4: Embed GSI QP into general mlx4_ib QP (Kamal Heib) [1931846] - RDMA/core: Align write and ioctl checks of QP types (Kamal Heib) [1931846] - RDMA/efa: Drop double zeroing for sg_init_table() (Kamal Heib) [1931846] - RDMA/efa: Add messages and RDMA read work requests HW stats (Kamal Heib) [1931846] - RDMA/efa: Group keep alive received counter with other SW stats (Kamal Heib) [1931846] - RDMA/restrack: Improve readability in task name management (Kamal Heib) [1931846] - RDMA/restrack: Simplify restrack tracking in kernel flows (Kamal Heib) [1931846] - RDMA/restrack: Count references to the verbs objects (Kamal Heib) [1931846] - RDMA/cma: Delete from restrack DB after successful destroy (Kamal Heib) [1931846] - RDMA/ucma: Rework ucma_migrate_id() to avoid races with destroy (Kamal Heib) [1931846] - RDMA: Fix link active_speed size (Kamal Heib) [1931846] - net/mlx5: Refactor query port speed functions (Kamal Heib) [1931846] - RDMA: Convert RWQ table logic to ib_core allocation scheme (Kamal Heib) [1931846] - RDMA: Clean MW allocation and free flows (Kamal Heib) [1931846] - RDMA/cma: Fix use after free race in roce multicast join (Kamal Heib) [1931846] - RDMA/cma: Consolidate the destruction of a cma_multicast in one place (Kamal Heib) [1931846] - RDMA/cma: Remove dead code for kernel rdmacm multicast (Kamal Heib) [1931846] - RDMA/cma: Combine cma_ndev_work with cma_work (Kamal Heib) [1931846] - RDMA/cma: Remove cma_comp() (Kamal Heib) [1931846] - RDMA/cma: Fix locking for the RDMA_CM_LISTEN state (Kamal Heib) [1931846] - RDMA/cma: Make the locking for automatic state transition more clear (Kamal Heib) [1931846] - RDMA/cma: Fix locking for the RDMA_CM_CONNECT state (Kamal Heib) [1931846] - RDMA/core: Added missing WR and WC opcodes (Kamal Heib) [1931846] - RDMA/qedr: Remove fbo and zbva from the MR (Kamal Heib) [1931846] - RDMA/mlx4: Use ib_umem_num_dma_blocks() (Kamal Heib) [1931846] - RDMA/pvrdma: Use ib_umem_num_dma_blocks() instead of ib_umem_page_count() (Kamal Heib) [1931846] - RDMA/bnxt: Do not use ib_umem_page_count() or ib_umem_num_pages() (Kamal Heib) [1931846] - RDMA/qedr: Use ib_umem_num_dma_blocks() instead of ib_umem_page_count() (Kamal Heib) [1931846] - RDMA/qedr: Use rdma_umem_for_each_dma_block() instead of open-coding (Kamal Heib) [1931846] - RDMA/i40iw: Use ib_umem_num_dma_pages() (Kamal Heib) [1931846] - RDMA/efa: Use ib_umem_num_dma_pages() (Kamal Heib) [1931846] - RDMA/umem: Split ib_umem_num_pages() into ib_umem_num_dma_blocks() (Kamal Heib) [1931846] - RDMA/umem: Replace for_each_sg_dma_page with rdma_umem_for_each_dma_block (Kamal Heib) [1931846] - RDMA/umem: Add rdma_umem_for_each_dma_block() (Kamal Heib) [1931846] - RDMA/umem: Use simpler logic for ib_umem_find_best_pgsz() (Kamal Heib) [1931846] - RDMA/umem: Fix ib_umem_find_best_pgsz() for mappings that cross a page boundary (Kamal Heib) [1931846] - RDMA: Make counters destroy symmetrical (Kamal Heib) [1931846] - RDMA: Restore ability to return error for destroy WQ (Kamal Heib) [1931846] - RDMA: Change XRCD destroy return value (Kamal Heib) [1931846] - RDMA: Allow fail of destroy CQ (Kamal Heib) [1931846] - RDMA/core: Delete function indirection for alloc/free kernel CQ (Kamal Heib) [1931846] - RDMA: Restore ability to fail on SRQ destroy (Kamal Heib) [1931846] - RDMA/mlx5: Issue FW command to destroy SRQ on reentry (Kamal Heib) [1931846] - RDMA: Restore ability to fail on AH destroy (Kamal Heib) [1931846] - RDMA: Restore ability to fail on PD deallocate (Kamal Heib) [1931846] - RDMA/core: Change how failing destroy is handled during uobj abort (Kamal Heib) [1931846] - RDMA/ucma: Fix resource leak on error path (Kamal Heib) [1931846] - RDMA/rxe: Address an issue with hardened user copy (Kamal Heib) [1931846] - RDMA/rxe: Add SPDX hdrs to rxe source files (Kamal Heib) [1931846] - RDMA/core: Trigger a WARN_ON if the driver causes uobjects to become leaked (Kamal Heib) [1931846] - RDMA/rxe: Fix style warnings (Kamal Heib) [1931846] - RDMA/ucma: Remove closing and the close_wq (Kamal Heib) [1931846] - RDMA/ucma: Rework how new connections are passed through event delivery (Kamal Heib) [1931846] - RDMA/ucma: Narrow file->mut in ucma_event_handler() (Kamal Heib) [1931846] - RDMA/ucma: Change backlog into an atomic (Kamal Heib) [1931846] - RDMA/ucma: Add missing locking around rdma_leave_multicast() (Kamal Heib) [1931846] - RDMA/ucma: Fix locking for ctx->events_reported (Kamal Heib) [1931846] - RDMA/ucma: Fix the locking of ctx->file (Kamal Heib) [1931846] - RDMA/ucma: Do not use file->mut to lock destroying (Kamal Heib) [1931846] - RDMA/cma: Add missing locking to rdma_accept() (Kamal Heib) [1931846] - RDMA/ucma: Remove mc_list and rely on xarray (Kamal Heib) [1931846] - RDMA/ucma: Fix error cases around ucma_alloc_ctx() (Kamal Heib) [1931846] - RDMA/ucma: Consolidate the two destroy flows (Kamal Heib) [1931846] - RDMA/ucma: Remove unnecessary locking of file->ctx_list in close (Kamal Heib) [1931846] - RDMA/ucma: Fix refcount 0 incr in ucma_get_ctx() (Kamal Heib) [1931846] - RDMA/cm: Add tracepoints to track MAD send operations (Kamal Heib) [1931846] - RDMA/cm: Replace pr_debug() call sites with tracepoints (Kamal Heib) [1931846] - RDMA/core: Move the rdma_show_ib_cm_event() macro (Kamal Heib) [1931846] - RDMA/efa: Remove redundant udata check from alloc ucontext response (Kamal Heib) [1931846] - RDMA/vmw_pvrdma: Fix kernel-doc documentation (Kamal Heib) [1931846] - RDMA/rxe: prevent rxe creation on top of vlan interface (Kamal Heib) [1931846] - RDMA/cm: Remove unused cm_class (Kamal Heib) [1931846] - IB/isert: remove duplicated error prints (Kamal Heib) [1931846] - RDMA/efa: Introduce SRD RNR retry (Kamal Heib) [1931846] - RDMA/efa: Introduce SRD QP state machine (Kamal Heib) [1931846] - RDMA/efa: Be consistent with modify QP bitmask (Kamal Heib) [1931846] - RDMA/efa: Add a generic capability check helper (Kamal Heib) [1931846] - RDMA: Remove constant domain argument from flow creation call (Kamal Heib) [1931846] - RDMA/i40iw: Avoid typecast from void to pci_dev (Kamal Heib) [1931846] - sched/uclamp: Add CPU's clamp buckets refcounting (Kamal Heib) [1931846] - overflow: Include header file with SIZE_MAX declaration (Kamal Heib) [1931846] - treewide: Use fallthrough pseudo-keyword (Kamal Heib) [1931846] - IB/hfi1: Use fallthrough pseudo-keyword (Kamal Heib) [1931846] - treewide: replace '---help---' in Kconfig files with 'help' (Kamal Heib) [1931846] - remove ioremap_nocache and devm_ioremap_nocache (Kamal Heib) [1931846]- ethtool: pause: make sure we init driver stats (Ivan Vecera) [1935611] - ethtool: correct policy for ETHTOOL_MSG_CHANNELS_SET (Ivan Vecera) [1935611] - ethtool: strset: allow ETHTOOL_A_STRSET_COUNTS_ONLY attr (Ivan Vecera) [1935611] - ethtool: specify which header flags are supported per command (Ivan Vecera) [1935611] - ethtool: link up ethnl_header_policy as a nested policy (Ivan Vecera) [1935611] - ethtool: trim policy tables (Ivan Vecera) [1935611] - ethtool: wire up set policies to ops (Ivan Vecera) [1935611] - ethtool: wire up get policies to ops (Ivan Vecera) [1935611] - netdevsim: fix duplicated debugfs directory (Ivan Vecera) [1935611] - selftests: add a test for ethtool pause stats (Ivan Vecera) [1935611] - netdevsim: add pause frame stats (Ivan Vecera) [1935611] - docs: net: include the new ethtool pause stats in the stats doc (Ivan Vecera) [1935611] - ethtool: add standard pause stats (Ivan Vecera) [1935611] - net: tighten the definition of interface statistics (Ivan Vecera) [1935611]- PCI: hv: Fix typo (Mohammed Gamal) [1940924] - asm-generic/hyperv: change HV_CPU_POWER_MANAGEMENT to HV_CPU_MANAGEMENT (Mohammed Gamal) [1940925] - x86/hyperv: detect if Linux is the root partition (Mohammed Gamal) [1940925] - hyperv: hyperv.h: drop a duplicated word (Mohammed Gamal) [1940925] - hyper-v: Remove internal types from UAPI header (Mohammed Gamal) [1940925] - x86/hyperv: Load/save the Isolation Configuration leaf (Mohammed Gamal) [1940925] - x86/hyperv: Initialize clockevents after LAPIC is initialized (Mohammed Gamal) [1940925] - x86/hyperv: check cpu mask after interrupt has been disabled (Mohammed Gamal) [1940925] - x86/hyperv: Fix kexec panic/hang issues (Mohammed Gamal) [1940925] - video: hyperv_fb: Fix a double free in hvfb_probe (Mohammed Gamal) [1940922] - uio: uio_hv_generic: use devm_kzalloc() for private data alloc (Mohammed Gamal) [1940922] - Avoid macro redefinition in compiler-{clang,gcc}.h (Jerome Marchand) [1907271] - x86/split_lock: Add Icelake microserver and Tigerlake CPU models (Prarit Bhargava) [1847576] - tools/power/x86/intel-speed-select: Update version to 1.8 (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Add new command to get/set TRL (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Add new command turbo-mode (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Set higher of cpuinfo_max_freq or base_frequency (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Set scaling_max_freq to base_frequency (Prarit Bhargava) [1921801] - platform/x86: ISST: Mark mmio_range_devid_0 and mmio_range_devid_1 with static keyword (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Update version for v5.11 (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Account for missing sysfs for die_id (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Read TRL from mailbox (Prarit Bhargava) [1921801] - platform/x86: ISST: Change PCI device macros (Prarit Bhargava) [1921801] - platform/x86: ISST: Allow configurable offset range (Prarit Bhargava) [1921801] - platform/x86: ISST: Check for unaligned mmio address (Prarit Bhargava) [1921801] - tools/power/turbostat: Fallback to an MSR read for EPB (Prarit Bhargava) [1926913] - tools/power/turbostat: Read energy_perf_bias from sysfs (Prarit Bhargava) [1926913] - Bluetooth: btusb: Add workaround for remote-wakeup issues with Barrot 8041a02 fake CSR controllers (Gopal Tiwari) [1946951] - Bluetooth: btusb: Fix detection of some fake CSR controllers with a bcdDevice val of 0x0134 (Gopal Tiwari) [1946951] - Bluetooth: btusb: support download nvm with different board id for wcn6855 (Gopal Tiwari) [1946951] - Bluetooth: btmtksdio: Add the missed release_firmware() in mtk_setup_firmware() (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add the missed release_firmware() in btusb_mtk_setup_firmware() (Gopal Tiwari) [1946951] - Bluetooth: btusb: Support 0bda:c123 Realtek 8822CE device (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Add OBDA0623 ACPI HID (Gopal Tiwari) [1946951] - Bluetooth: revert: hci_h5: close serdev device and free hu in h5_close (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Wait for timeout during suspend (Gopal Tiwari) [1946951] - Bluetooth: btrtl: fix incorrect skb allocation failure check (Gopal Tiwari) [1946951] - Bluetooth: hci_ll: add a small delay for wl1271 enable bt_en (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add support for 1358:c123 Realtek 8822CE device (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: resolve various warnings (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Enhance retry logic in qca_setup (Gopal Tiwari) [1946951] - Bluetooth: btusb: btrtl: Add support for RTL8852A (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add support for 13d3:3560 MediaTek MT7615E device (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: fix memory leak in h5_close (Gopal Tiwari) [1946951] - Bluetooth: btrtl: Ask 8821C to drop old firmware (Gopal Tiwari) [1946951] - Bluetooth: btrtl: Refine the ic_id_table for clearer and more regular (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add the more support IDs for Realtek RTL8822CE (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: close serdev device and free hu in h5_close (Gopal Tiwari) [1946951] - Bluetooth: btintel: Replace zero-length array with flexible-array member (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add Qualcomm Bluetooth SoC WCN6855 support (Gopal Tiwari) [1946951] - Bluetooth: btusb: Enable wide band speech support for BTUSB_QCA_ROME (Gopal Tiwari) [1946951] - Bluetooth: hci_serdev: Close UART port if NON_PERSISTENT_SETUP is set (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Remove duplicate power off in proto close (Gopal Tiwari) [1946951] - Bluetooth: hci_intel: enable on new platform (Gopal Tiwari) [1946951] - Bluetooth: btmtksdio: use NULL instead of zero (Gopal Tiwari) [1946951] - Bluetooth: hci_intel: switch to list_for_each_entry() (Gopal Tiwari) [1946951] - Bluetooth: hci_intel: drop strange le16_to_cpu() against u8 values (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: remove redundant null check (Gopal Tiwari) [1946951] - Bluetooth: btusb: Fix memleak in btusb_mtk_submit_wmt_recv_urb (Gopal Tiwari) [1946951] - Bluetooth: hci_uart: Cancel init work before unregistering (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Remove ignored flag HCI_UART_RESET_ON_INIT (Gopal Tiwari) [1946951] - Bluetooth: btmrvl: eliminate duplicates introducing btmrvl_reg_89xx (Gopal Tiwari) [1946951] - Revert "Bluetooth: btusb: Disable runtime suspend on Realtek devices" (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Stop collecting memdump again for command timeout during SSR (Gopal Tiwari) [1946951] - Bluetooth: hci_serdev: Only unregister device if it was registered (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Set HCI_UART_RESET_ON_INIT to correct flags (Gopal Tiwari) [1946951] - Bluetooth: btusb: Fix and detect most of the Chinese Bluetooth controllers (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Bug fixes for SSR (Gopal Tiwari) [1946951] - Bluetooth: btusb: add Realtek 8822CE to usb_device_id table (Gopal Tiwari) [1946951] - Bluetooth: btusb: USB alternate setting 1 for WBS (Gopal Tiwari) [1946951] - Bluetooth: btusb: Comment on unbalanced pm reference (Gopal Tiwari) [1946951] - Bluetooth: btusb: BTUSB_WAKEUP_DISABLE prevents wake (Gopal Tiwari) [1946951] - Bluetooth: btusb: Reset port on cmd timeout (Gopal Tiwari) [1946951] - Bluetooth: btmtksdio: fix up firmware download sequence (Gopal Tiwari) [1946951] - Bluetooth: btusb: fix up firmware download sequence (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Disable SoC debug logging for WCN3991 (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Increase SoC idle timeout to 200ms (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Request Tx clock vote off only when Tx is pending (Gopal Tiwari) [1946951] - Bluetooth: btmrvl_sdio: Refactor irq wakeup (Gopal Tiwari) [1946951] - Bluetooth: btmrvl_sdio: Implement prevent_wake (Gopal Tiwari) [1946951] - Bluetooth: btmrvl_sdio: Set parent dev to hdev (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Bug fix during SSR timeout (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Refactor error handling in qca_suspend() (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Skip serdev wait when no transfer is pending (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Only remove TX clock vote after TX is completed (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Simplify determination of serial clock on/off state from votes (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix an error pointer dereference (Gopal Tiwari) [1946951] - btmrvl: Fix firmware filename for sd8977 chipset (Gopal Tiwari) [1946951] - btmrvl: Fix firmware filename for sd8997 chipset (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix QCA6390 memdump failure (Gopal Tiwari) [1946951] - Bluetooth: btmtkuart: Use serdev_device_write_buf() instead of serdev_device_write() (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Improve controller ID info log level (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix qca6390 enable failure after warm reboot (Gopal Tiwari) [1946951] - Bluetooth: btmtkuart: Improve exception handling in btmtuart_probe() (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix suspend/resume functionality failure (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Added 003.006.007, changed 001.003.015 (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix uninitialized access to hdev (Gopal Tiwari) [1946951] - Bluetooth: serdev: Constify serdev_device_ops (Gopal Tiwari) [1946951] - Bluetooth: Add hook for driver to prevent wake from suspend (Gopal Tiwari) [1946951] - Bluetooth: btusb: Implement hdev->prevent_wake (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Add support for binding RTL8723BS with device tree (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: allow max-speed to be set for QCA9377 devices (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: add compatible for QCA9377 (Gopal Tiwari) [1946951] - Bluetooth: btusb: Adding support for LE scatternet to Jfp and ThP (Gopal Tiwari) [1946951] - Bluetooth: Adding driver and quirk defs for multi-role LE (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Add 2 missing models to subver tables (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Move setting of USE_BDADDR_PROPERTY quirk to hci_bcm.c (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Try multiple Patch filenames when loading the Patch firmware (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Bail sooner from btbcm_initialize() when not loading fw (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Drop upper nibble version check from btbcm_initialize() (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Make btbcm_setup_patchram use btbcm_finalize (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Make btbcm_initialize() print local-name on re-init too (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Fold Patch loading + applying into btbcm_initialize() (Gopal Tiwari) [1946951] - Bluetooth: btrtl: Add support for RTL8761B (Gopal Tiwari) [1946951] - Bluetooth: btusb: check for NULL in btusb_find_altsetting() (Gopal Tiwari) [1946951] - Bluetooth: btusb: handle mSBC audio over USB Endpoints (Gopal Tiwari) [1946951] - Bluetooth: add support to notify using SCO air mode (Gopal Tiwari) [1946951] - Bluetooth: hci_bcm: respect IRQ polarity from DT (Gopal Tiwari) [1946951] - Bluetooth: hci_bcm: fix freeing not-requested IRQ (Gopal Tiwari) [1946951] - intel_idle: remove definition of DEBUG (David Arcari) [1926917] - intel_idle: Build fix (David Arcari) [1926917] - cpufreq: ACPI: Set cpuinfo.max_freq directly if max boost is known (Phil Auld) [1937103] - cpufreq: ACPI: Update arch scale-invariance max perf ratio if CPPC is not there (Phil Auld) [1937103] - cpufreq: ACPI: Extend frequency tables to cover boost frequencies (Phil Auld) [1937103] - sched/uclamp: Add CPU's clamp buckets refcounting (Phil Auld) [1937103] - x86: PM: Register syscore_ops for scale invariance (Phil Auld) [1937103] - sched/fair: Reduce cases for active balance (Phil Auld) [1937103] - sched/fair: Don't set LBF_ALL_PINNED unnecessarily (Phil Auld) [1937103] - sched/fair: Skip idle cfs_rq (Phil Auld) [1937103] - tick/sched: Make jiffies update quick check more robust (Phil Auld) [1937103] - sched/fair: Trivial correction of the newidle_balance() comment (Phil Auld) [1937103] - sched/fair: Clear SMT siblings after determining the core is not idle (Phil Auld) [1937103] - sched: Fix kernel-doc markup (Phil Auld) [1937103] - x86: Print ratio freq_max/freq_base used in frequency invariance calculations (Phil Auld) [1937103] - x86, sched: Use midpoint of max_boost and max_P for frequency invariance on AMD EPYC (Phil Auld) [1937103] - x86, sched: Calculate frequency invariance for AMD systems (Phil Auld) [1937103] - sched: Limit the amount of NUMA imbalance that can exist at fork time (Phil Auld) [1937103] - sched/numa: Allow a floating imbalance between NUMA nodes (Phil Auld) [1937103] - sched: Avoid unnecessary calculation of load imbalance at clone time (Phil Auld) [1937103] - sched/numa: Rename nr_running and break out the magic number (Phil Auld) [1937103] - sched/topology: Condition EAS enablement on FIE support (Phil Auld) [1937103] - sched/topology: Don't enable EAS on SMT systems (Phil Auld) [1937103] - sched/topology,schedutil: Wrap sched domains rebuild (Phil Auld) [1937103] - sched/core: Fix typos in comments (Phil Auld) [1937103] - sched: Fix rq->nr_iowait ordering (Phil Auld) [1937103] - sched: Fix data-race in wakeup (Phil Auld) [1937103] - sched/fair: Fix overutilized update in enqueue_task_fair() (Phil Auld) [1937103] - sched/fair: Dissociate wakeup decisions from SD flag value (Phil Auld) [1937103] - sched: Remove select_task_rq()'s sd_flag parameter (Phil Auld) [1937103] - sched: Add WF_TTWU, WF_EXEC wakeup flags (Phil Auld) [1937103] - sched/fair: Remove superfluous lock section in do_sched_cfs_slack_timer() (Phil Auld) [1937103] - sched/fair: Ensure tasks spreading in LLC during LB (Phil Auld) [1937103] - sched/fair: Reorder throttle_cfs_rq() path (Phil Auld) [1937103] - sched/fair: Check for idle core in wake_affine (Phil Auld) [1937103] - sched: Reenable interrupts in do_sched_yield() (Phil Auld) [1937103] - sched/fair: Improve the accuracy of sched_stat_wait statistics (Phil Auld) [1937103] - sched/fair: Tweak pick_next_entity() (Phil Auld) [1937103] - sched/debug: Add new tracepoint to track cpu_capacity (Phil Auld) [1937103] - sched/fair: Remove the force parameter of update_tg_load_avg() (Phil Auld) [1937103] - sched/rt: Disable RT_RUNTIME_SHARE by default (Phil Auld) [1937103] - sched: Cache task_struct::flags in sched_submit_work() (Phil Auld) [1937103] - sched/fair: Simplify the work when reweighting entity (Phil Auld) [1937103] - sched/fair: Fix wrong negative conversion in find_energy_efficient_cpu() (Phil Auld) [1937103] - sched/fair: Ignore cache hotness for SMT migration (Phil Auld) [1937103] - sched: Use __always_inline on is_idle_task() (Phil Auld) [1937103] - treewide: Use fallthrough pseudo-keyword (Phil Auld) [1937103] - sched/debug: Fix the alignment of the show-state debug output (Phil Auld) [1937103] - x86, sched: Bail out of frequency invariance if turbo_freq/base_freq gives 0 (Phil Auld) [1937103] - x86, sched: Bail out of frequency invariance if turbo frequency is unknown (Phil Auld) [1937103] - x86, sched: check for counters overflow in frequency invariant accounting (Phil Auld) [1937103] - exit: Move preemption fixup up, move blocking operations down (Phil Auld) [1937103] - net: bonding: remove repeated word (Jarod Wilson) [1936982] - net: bonding: Correct function name bond_change_active_slave() in comment (Jarod Wilson) [1936982] - bonding: Added -ENODEV interpret for slaves option (Jarod Wilson) [1936982] - bonding: 3ad: Print an error for unknown speeds (Jarod Wilson) [1936982] - bonding: 3ad: add support for 400G speed (Jarod Wilson) [1936982] - bonding: 3ad: add support for 200G speed (Jarod Wilson) [1936982] - net/bonding: Declare TLS RX device offload support (Jarod Wilson) [1936982] - net/bonding: Implement TLS TX device offload (Jarod Wilson) [1936982] - net/bonding: Take update_features call out of XFRM funciton (Jarod Wilson) [1936982] - net/bonding: Implement ndo_sk_get_lower_dev (Jarod Wilson) [1936982] - net/bonding: Take IP hash logic into a helper (Jarod Wilson) [1936982] - net: bonding: Notify ports about their initial state (Jarod Wilson) [1936982] - bonding: wait for sysfs kobject destruction before freeing struct slave (Jarod Wilson) [1936982] - bonding: advertise NETIF_F_GSO_SOFTWARE (Jarod Wilson) [1936982] - net/tls: Except bond interface from some TLS checks (Jarod Wilson) [1936982] - net/tls: Device offload to use lowest netdevice in chain (Jarod Wilson) [1936982] - ethtool: Add common function for filling out strings (Ivan Vecera) [1950987] - selftests: forwarding: vxlan_bridge_1d: Fix vxlan ecn decapsulate value (Hangbin Liu) [1949349] - selftests: forwarding: Fix race condition in mirror installation (Hangbin Liu) [1949349] - selftests: txtimestamp: fix compilation issue (Hangbin Liu) [1949349] - selftests: net: fib_tests: remove duplicate log test (Hangbin Liu) [1949349] - selftests: xfrm: fix test return value override issue in xfrm_policy.sh (Hangbin Liu) [1949349] - selftests: rtnetlink: load fou module for kci_test_encap_fou() test (Hangbin Liu) [1949349] - vxlan: move debug check after netdev unregister (Guillaume Nault) [1949167] - net: ip: always refragment ip defragmented packets (Guillaume Nault) [1949167] - net: fix pmtu check in nopmtudisc mode (Guillaume Nault) [1949167] - net: udp: make udp_tunnel_nic_info structure extensible (Ivan Vecera) [1948450] - macvlan: macvlan_count_rx() needs to be aware of preemption (Antoine Tenart) [1950012] - macvlan: remove redundant null check on data (Antoine Tenart) [1950012] - net: fix dev_ifsioc_locked() race condition (Antoine Tenart) [1950234] - ipv6: weaken the v4mapped source check (Hangbin Liu) [1949499] - ipv6: set multicast flag on the multicast route (Hangbin Liu) [1949499] - ipv6: create multicast route with RTPROT_KERNEL (Hangbin Liu) [1949499] - net: ipv6: Validate GSO SKB before finish IPv6 processing (Hangbin Liu) [1949499] - net: sit: unregister_netdevice on newlink's error path (Hangbin Liu) [1949499] - net: ip6_gre: fix moving ip6gre between namespaces (Hangbin Liu) [1949499] - gso: validate gso_type on ipip style tunnels (Hangbin Liu) [1949499] - net: page_pool: simplify page recycling condition tests (Ivan Vecera) [1935698] - net: use the new dev_page_is_reusable() instead of private versions (Ivan Vecera) [1935698] - net: introduce common dev_page_is_reusable() (Ivan Vecera) [1935698] - skbuff: constify skb_propagate_pfmemalloc() "page" argument (Ivan Vecera) [1935698] - mm: constify page_is_pfmemalloc() argument (Ivan Vecera) [1935698] - genetlink: allow dumping command-specific policy (Ivan Vecera) [1938919] - genetlink: properly support per-op policy dumping (Ivan Vecera) [1938919] - genetlink: factor skb preparation out of ctrl_dumppolicy() (Ivan Vecera) [1938919] - netlink: rework policy dump to support multiple policies (Ivan Vecera) [1938919] - netlink: compare policy more accurately (Ivan Vecera) [1938919] - genetlink: switch control commands to per-op policies (Ivan Vecera) [1938919] - genetlink: use parsed attrs in dumppolicy (Ivan Vecera) [1938919] - taskstats: move specifying netlink policy back to ops (Ivan Vecera) [1938919] - genetlink: bring back per op policy (Ivan Vecera) [1938919] - genetlink: use .start callback for dumppolicy (Ivan Vecera) [1938919] - genetlink: add a structure for dump state (Ivan Vecera) [1938919] - genetlink: move to smaller ops wherever possible (Ivan Vecera) [1938919] - genetlink: add small version of ops (Ivan Vecera) [1938919] - netlink: fix policy dump leak (Ivan Vecera) [1938919] - genetlink: get rid of family->attrbuf (Ivan Vecera) [1938919] - genetlink: clean up family attributes allocations (Ivan Vecera) [1938919] - genetlink: fix memory leaks in genl_family_rcv_msg_dumpit() (Ivan Vecera) [1938919] - net: genetlink: return the error code when attribute parsing fails. (Ivan Vecera) [1938919] - genetlink: do not parse attributes for families with zero maxattr (Ivan Vecera) [1938919] - net: tipc: prepare attrs in __tipc_nl_compat_dumpit() (Ivan Vecera) [1938919] - net: genetlink: always allocate separate attrs for dumpit ops (Ivan Vecera) [1938919] - net: genetlink: remove unused genl_family_attrbuf() (Ivan Vecera) [1938919] - net: tipc: allocate attrs locally instead of using genl_family_attrbuf in compat_dumpit() (Ivan Vecera) [1938919] - net: tipc: have genetlink code to parse the attrs during dumpit (Ivan Vecera) [1938919] - net: nfc: have genetlink code to parse the attrs during dumpit (Ivan Vecera) [1938919] - net: ieee802154: have genetlink code to parse the attrs during dumpit (Ivan Vecera) [1938919] - net: genetlink: parse attrs and store in contect info struct during dumpit (Ivan Vecera) [1938919] - net: genetlink: push attrbuf allocation and parsing to a separate function (Ivan Vecera) [1938919] - net: genetlink: introduce dump info struct to be available during dumpit op (Ivan Vecera) [1938919] - net: genetlink: push doit/dumpit code from genl_family_rcv_msg (Ivan Vecera) [1938919] - devlink: Use controller while building phys_port_name (Petr Oros) [1935615] - devlink: Introduce controller number (Petr Oros) [1935615] - devlink: Introduce external controller flag (Petr Oros) [1935615] - devlink: Move structure comments outside of structure (Petr Oros) [1935615] - devlink: Add comment block for missing port attributes (Petr Oros) [1935615] - net/mlx5: E-switch, Read controller number from device (Petr Oros) [1935615] - devlink: don't crash if netdev is NULL (Petr Oros) [1935615] - vdpa/mlx5: Use write memory barrier after updating CQ index (Jason Wang) [1877270] - vhost_vdpa: return -EFAULT if copy_to_user() fails (Jason Wang) [1877270] - vdpa: mlx5: fix vdpa/vhost dependencies (Jason Wang) [1877270] - vhost-vdpa: fix page pinning leakage in error path (rework) (Jason Wang) [1877270] - vdpasim: fix "mac_pton" undefined error (Jason Wang) [1877270] - vdpasim: allow to assign a MAC address (Jason Wang) [1877270] - vdpasim: fix MAC address configuration (Jason Wang) [1877270] - vdpa: handle irq bypass register failure case (Jason Wang) [1877270] - vdpa_sim: Fix DMA mask (Jason Wang) [1877270] - Revert "vhost-vdpa: fix page pinning leakage in error path" (Jason Wang) [1877270] - vdpa/mlx5: Fix error return in map_direct_mr() (Jason Wang) [1877270] - vhost_vdpa: Return -EFAULT if copy_from_user() fails (Jason Wang) [1877270] - vdpa_sim: implement get_iova_range() (Jason Wang) [1877270] - vhost: vdpa: report iova range (Jason Wang) [1877270] - vdpa: introduce config op to get valid iova range (Jason Wang) [1877270] - vhost_vdpa: remove unnecessary spin_lock in vhost_vring_call (Jason Wang) [1877270] - vdpa/mlx5: Setup driver only if VIRTIO_CONFIG_S_DRIVER_OK (Jason Wang) [1877270] - vhost_vdpa: Fix duplicate included kernel.h (Jason Wang) [1877270] - vdpa/mlx5: Fix failure to bring link up (Jason Wang) [1877270] - vdpa/mlx5: Make use of a specific 16 bit endianness API (Jason Wang) [1877270] - vdpa/mlx5: Fix dependency on MLX5_CORE (Jason Wang) [1877270] - vdpa/mlx5: should keep avail_index despite device status (Jason Wang) [1877270] - vhost-vdpa: fix page pinning leakage in error path (Jason Wang) [1877270] - vhost-vdpa: fix vhost_vdpa_map() on error condition (Jason Wang) [1877270] - vhost vdpa: fix vhost_vdpa_open error handling (Jason Wang) [1877270] - vhost-vdpa: fix backend feature ioctls (Jason Wang) [1877270] - vdpa/mlx5: Avoid warnings about shifts on 32-bit platforms (Jason Wang) [1877270] - vdpa: ifcvf: free config irq in ifcvf_free_irq() (Jason Wang) [1877270] - vdpa: ifcvf: return err when fail to request config irq (Jason Wang) [1877270] - vdpa/mlx5: fix up endian-ness for mtu (Jason Wang) [1877270] - vdpa: Fix pointer math bug in vdpasim_get_config() (Jason Wang) [1877270] - vdpa/mlx5: Fix pointer math in mlx5_vdpa_get_config() (Jason Wang) [1877270] - mlx5: vdpa: fix possible uninitialized var (Jason Wang) [1877270] - vdpa/mlx5: fix memory allocation failure checks (Jason Wang) [1877270] - vdpa/mlx5: Fix uninitialised variable in core/mr.c (Jason Wang) [1877270] - vdpa_sim: init iommu lock (Jason Wang) [1877270] - redhat: enable mlx5e vDPA driver (Jason Wang) [1877270] - vdpa/mlx5: Add VDPA driver for supported mlx5 devices (Jason Wang) [1877270] - vdpa/mlx5: Add shared memory registration code (Jason Wang) [1877270] - vdpa/mlx5: Add support library for mlx5 VDPA implementation (Jason Wang) [1877270] - vdpa/mlx5: Add hardware descriptive header file (Jason Wang) [1877270] - vdpa: Modify get_vq_state() to return error code (Jason Wang) [1877270] - net/vdpa: Use struct for set/get vq state (Jason Wang) [1877270] - vdpa: remove hard coded virtq num (Jason Wang) [1877270] - vdpasim: support batch updating (Jason Wang) [1877270] - vhost-vdpa: support IOTLB batching hints (Jason Wang) [1877270] - vhost-vdpa: support get/set backend features (Jason Wang) [1877270] - vhost: generialize backend features setting/getting (Jason Wang) [1877270] - vhost-vdpa: refine ioctl pre-processing (Jason Wang) [1877270] - vDPA: dont change vq irq after DRIVER_OK (Jason Wang) [1877270] - ifcvf: implement vdpa_config_ops.get_vq_irq() (Jason Wang) [1877270] - vhost_vdpa: implement IRQ offloading in vhost_vdpa (Jason Wang) [1877270] - vDPA: add get_vq_irq() in vdpa_config_ops (Jason Wang) [1877270] - vhost: introduce vhost_vring_call (Jason Wang) [1877270] - vdpasim: protect concurrent access to iommu iotlb (Jason Wang) [1877270] - vhost: vdpa: remove per device feature whitelist (Jason Wang) [1877270] - vdpa_sim: fix endian-ness of config space (Jason Wang) [1877270] - virtio_vdpa: legacy features handling (Jason Wang) [1877270] - vhost/vdpa: switch to new helpers (Jason Wang) [1877270] - vdpa: make sure set_features is invoked for legacy (Jason Wang) [1877270] - vhost_vdpa: Fix potential underflow in vhost_vdpa_mmap() (Jason Wang) [1877270] - vdpa: fix typos in the comments for __vdpa_alloc_device() (Jason Wang) [1877270] - ifcvf: implement config interrupt in IFCVF (Jason Wang) [1877270] - vhost: replace -1 with VHOST_FILE_UNBIND in ioctls (Jason Wang) [1877270] - vhost_vdpa: Support config interrupt in vdpa (Jason Wang) [1877270] - ifcvf: ignore continuous setting same status value (Jason Wang) [1877270] - vdpasim: Fix some coccinelle warnings (Jason Wang) [1877270] - ifcvf: move IRQ request/free to status change handlers (Jason Wang) [1877270] - vhost_vdpa: disable doorbell mapping for !MMU (Jason Wang) [1877270] - vhost_vdpa: support doorbell mapping via mmap (Jason Wang) [1877270] - vdpa: introduce get_vq_notification method (Jason Wang) [1877270] - vhost: use mmgrab() instead of mmget() for non worker device (Jason Wang) [1877270] - vhost: allow device that does not depend on vhost worker (Jason Wang) [1877270] - vhost: revert "vhost: disable for OABI" (Jason Wang) [1877270] - vdpasim: remove unused variable 'ret' (Jason Wang) [1877270] - vhost: remove set but not used variable 'status' (Jason Wang) [1877270] - vhost: vdpa: remove unnecessary null check (Jason Wang) [1877270] - virtio/test: fix up after IOTLB changes (Jason Wang) [1877270] - vhost/test: fix build for vhost test (Jason Wang) [1877270] - tools/virtio: option to build an out of tree module (Jason Wang) [1877270] - vhost/test: fix build for vhost test (Jason Wang) [1877270] - vhost: fix VHOST_GET_BACKEND_FEATURES ioctl request definition (Jason Wang) [1877270] - perf/x86/intel/uncore: Remove uncore extra PCI dev HSWEP_PCI_PCU_3 (Michael Petlan) [1950388]- redhat/configs/editconfig: Add support for a bugzilla entry (David Arcari) - tools/power turbostat: Revert "[tools] tools/power turbostat: Enable accumulate RAPL display" (Prarit Bhargava) [1944699] - mwifiex: Fix possible buffer overflows in mwifiex_cmd_802_11_ad_hoc_start (Jarod Wilson) [1914996] {CVE-2020-36158} - net/mlx5e: Allow to match on MPLS parameters only for MPLS over UDP (Alaa Hleihel) [1932839 1936742] - net/mlx5e: Reject tc rules which redirect from a VF to itself (Alaa Hleihel) [1932839] - net/mlx5: CT: Add support for matching on ct_state inv and rel flags (Alaa Hleihel) [1932839 1942681] - net: openvswitch: add log message for error case (Eelco Chaudron) [1937697] - net: openvswitch: conntrack: simplify the return expression of ovs_ct_limit_get_default_limit() (Eelco Chaudron) [1937697] - net: openvswitch: Be liberal in tcp conntrack. (Eelco Chaudron) [1937697] - netfilter: conntrack: tcp: only close if RST matches exact sequence (Eelco Chaudron) [1937697] - openvswitch: Use IS_ERR instead of IS_ERR_OR_NULL (Eelco Chaudron) [1937697] - net: openvswitch: Fix kerneldoc warnings (Eelco Chaudron) [1937697] - net: openvswitch: remove unnecessary ASSERT_OVSL in ovs_vport_del() (Eelco Chaudron) [1937697] - cifs: revalidate mapping when we open files for SMB1 POSIX (Ronnie Sahlberg) [1933527] - Revert "vfs: Allow userns root to call mknod on owned filesystems." (Alexey Gladkov) [1902543] - mfd: intel-lpss: Add Intel Alder Lake PCH-S PCI IDs (David Arcari) [1840244] - nvme: retrigger ANA log update if group descriptor isn't found (Gopal Tiwari) [1910493] - locking/qrwlock: Fix ordering in queued_write_lock_slowpath() (Waiman Long) [1950110] - PCI: switchtec: Add missing __iomem tag to fix sparse warnings (Myron Stowe) [1946645] - PCI: switchtec: Add missing __iomem and __user tags to fix sparse warnings (Myron Stowe) [1946645] - PCI: Release IVRS table in AMD ACS quirk (Myron Stowe) [1946645] - PCI/MSI: Forward MSI-X error code in pci_alloc_irq_vectors_affinity() (Myron Stowe) [1946645] - PCI: Remove unused pci_lost_interrupt() (Myron Stowe) [1946645] - PCI: Move PCI_VENDOR_ID_REDHAT definition to pci_ids.h (Myron Stowe) [1946645] - PCI: Fix error in panic message (Myron Stowe) [1946645] - PCI: Replace lkml.org, spinics, gmane with lore.kernel.org (Myron Stowe) [1946645] - PCI: Replace http:// links with https:// (Myron Stowe) [1946645] - PCI: exynos: Rename Exynos to lowercase (Myron Stowe) [1946645] - PCI: Align PCIe capability and PCI accessor return values (Myron Stowe) [1946645] - PCI: Convert PCIe capability PCIBIOS errors to errno (Myron Stowe) [1946645] - PCI: rpadlpar: Make functions static (Myron Stowe) [1946645] - PCI: Fix pci_slot_release() NULL pointer dereference (Myron Stowe) [1946645] - PCI: Fix pci_create_slot() reference count leak (Myron Stowe) [1946645] - PCI: Announce device after early fixups (Myron Stowe) [1946645] - PCI: Always enable ACS even if no ACS Capability (Myron Stowe) [1946645] - PCI: Cache ACS capability offset in device (Myron Stowe) [1946645] - PCI: Reorder pci_enable_acs() and dependencies (Myron Stowe) [1946645] - PCI: Add device even if driver attach failed (Myron Stowe) [1946645] - PCI: Fix pci_cfg_wait queue locking problem (Myron Stowe) [1946645] - PCI/ASPM: Add missing newline in sysfs 'policy' (Myron Stowe) [1946645]- gfs2: report "already frozen/thawed" errors (Bob Peterson) [1932236] - gfs2: move freeze glock outside the make_fs_rw and _ro functions (Bob Peterson) [1932236] - gfs2: Add common helper for holding and releasing the freeze glock (Bob Peterson) [1932236] - gfs2: in signal_our_withdraw wait for unfreeze of _this_ fs only (Bob Peterson) [1932236] - gfs2: Don't freeze the file system during unmount (Bob Peterson) [1932236] - gfs2: Fix regression in freeze_go_sync (Bob Peterson) [1932236] - gfs2: The freeze glock should never be frozen (Bob Peterson) [1932236] - gfs2: When freezing gfs2, use GL_EXACT and not GL_NOCACHE (Bob Peterson) [1932236] - gfs2: Abort gfs2_freeze if io error is seen (Bob Peterson) [1932236] - gfs2: read-only mounts should grab the sd_freeze_gl glock (Bob Peterson) [1932236] - gfs2: freeze should work on read-only mounts (Bob Peterson) [1932236] - bpf: Mark LSM link with rh_mark_used_feature call (Jiri Olsa) [1901039] - Revert "[tools] bpf: selftests: remove test_progs LSM test" (Ondrej Mosnacek) [1901039] - configs: enable BPF LSM (Ondrej Mosnacek) [1901039] - security: Fix hook iteration and default value for inode_copy_up_xattr (Ondrej Mosnacek) [1901039] - security: Fix hook iteration for secid_to_secctx (Ondrej Mosnacek) [1901039] - security: Fix the default value of secid_to_secctx hook (Ondrej Mosnacek) [1901039] - security: Fix the default value of fs_context_parse_param hook (Ondrej Mosnacek) [1901039] - bpf: lsm: Initialize the BPF LSM hooks (Ondrej Mosnacek) [1901039] - security: Refactor declaration of LSM hooks (Ondrej Mosnacek) [1901039] - LSM: fix documentation for the shm_* hooks (Ondrej Mosnacek) [1901039] - LSM: fix documentation for the sem_* hooks (Ondrej Mosnacek) [1901039] - LSM: fix documentation for the msg_queue_* hooks (Ondrej Mosnacek) [1901039] - LSM: Revive CONFIG_DEFAULT_SECURITY_* for "make oldconfig" (Ondrej Mosnacek) [1901039] - LSM: Ignore "security=" when "lsm=" is specified (Ondrej Mosnacek) [1901039] - LSM: Update function documentation for cap_capable (Ondrej Mosnacek) [1901039] - procfs: add smack subdir to attrs (Ondrej Mosnacek) [1901039] - capability: Initialize as LSM_ORDER_FIRST (Ondrej Mosnacek) [1901039] - LSM: Introduce enum lsm_order (Ondrej Mosnacek) [1901039] - Yama: Initialize as ordered LSM (Ondrej Mosnacek) [1901039] - LoadPin: Initialize as ordered LSM (Ondrej Mosnacek) [1901039] - LSM: Split LSM preparation from initialization (Ondrej Mosnacek) [1901039] - LSM: Add all exclusive LSMs to ordered initialization (Ondrej Mosnacek) [1901039] - LSM: Separate idea of "major" LSM from "exclusive" LSM (Ondrej Mosnacek) [1901039] - LSM: Refactor "security=" in terms of enable/disable (Ondrej Mosnacek) [1901039] - LSM: Prepare for reorganizing "security=" logic (Ondrej Mosnacek) [1901039] - LSM: Tie enabling logic to presence in ordered list (Ondrej Mosnacek) [1901039] - LSM: Introduce "lsm=" for boottime LSM selection (Ondrej Mosnacek) [1901039] - LSM: Introduce CONFIG_LSM (Ondrej Mosnacek) [1901039] - LSM: Build ordered list of LSMs to initialize (Ondrej Mosnacek) [1901039] - LSM: Lift LSM selection out of individual LSMs (Ondrej Mosnacek) [1901039] - LSM: Plumb visibility into optional "enabled" state (Ondrej Mosnacek) [1901039] - LSM: Provide separate ordered initialization (Ondrej Mosnacek) [1901039] - LSM: Introduce LSM_FLAG_LEGACY_MAJOR (Ondrej Mosnacek) [1901039] - LSM: Don't ignore initialization failures (Ondrej Mosnacek) [1901039] - LSM: Provide init debugging infrastructure (Ondrej Mosnacek) [1901039] - LSM: Record LSM name in struct lsm_info (Ondrej Mosnacek) [1901039] - LSM: Convert security_initcall() into DEFINE_LSM() (Ondrej Mosnacek) [1901039] - vmlinux.lds.h: Move LSM_TABLE into INIT_DATA (Ondrej Mosnacek) [1901039] - LSM: Convert from initcall to struct lsm_info (Ondrej Mosnacek) [1901039] - LSM: Remove initcall tracing (Ondrej Mosnacek) [1901039] - LSM: Rename .security_initcall section to .lsm_info (Ondrej Mosnacek) [1901039] - vmlinux.lds.h: Avoid copy/paste of security_init section (Ondrej Mosnacek) [1901039] - LSM: Correctly announce start of LSM initialization (Ondrej Mosnacek) [1901039] - proc: save 2 atomic ops on write to "/proc/*/attr/*" (Ondrej Mosnacek) [1901039] - ALSA: usb-audio: fix NULL ptr dereference in usb_audio_probe (Jaroslav Kysela) [1870724] - ALSA: usb-audio: fix use after free in usb_audio_disconnect (Jaroslav Kysela) [1870724] - ALSA: usb-audio: Disable USB autosuspend properly in setup_disable_autosuspend() (Jaroslav Kysela) [1870724] - Bluetooth: btusb: Fix the autosuspend enable and disable (Gopal Tiwari) [1927375] - flow_dissector: fix TTL and TOS dissection on IPv4 fragments (Davide Caratti) [1882607] - net: avoid infinite loop in mpls_gso_segment when mpls_hlen == 0 (Balazs Nemeth) [1922898] - net: check if protocol extracted by virtio_net_hdr_set_proto is correct (Balazs Nemeth) [1922898] - redhat/configs: Add CONFIG_PINCTRL_ALDERLAKE (David Arcari) [1840250] - pinctrl: intel: Add Intel Alder Lake-S pin controller support (David Arcari) [1840250] - cpufreq: intel_pstate: Remove repeated word (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Get per-CPU max freq via MSR_HWP_CAPABILITIES if available (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Rename two functions (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Change intel_pstate_get_hwp_max() argument (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Always read hwp_cap_cached with READ_ONCE() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: remove obsolete functions (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Use HWP capabilities in intel_cpufreq_adjust_perf() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Fix fast-switch fallback path (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Use most recent guaranteed performance values (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Implement the ->adjust_perf() callback (Puneet Sethi) [1926919] - cpufreq: Add special-purpose fast-switching callback for drivers (Puneet Sethi) [1926919] - cpufreq: schedutil: Add util to struct sg_cpu (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Simplify intel_cpufreq_update_pstate() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Take CPUFREQ_GOV_STRICT_TARGET into account (Puneet Sethi) [1926919] - cpufreq: Add strict_target to struct cpufreq_policy (Puneet Sethi) [1926919] - cpufreq: Introduce CPUFREQ_GOV_STRICT_TARGET (Puneet Sethi) [1926919] - cpufreq: Introduce governor flags (Puneet Sethi) [1926919] - cpufreq: schedutil: Don't skip freq update if need_freq_update is set (Puneet Sethi) [1926919] - cpufreq: schedutil: Always call driver if CPUFREQ_NEED_UPDATE_LIMITS is set (Puneet Sethi) [1926919] - cpufreq: Introduce cpufreq_driver_test_flags() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Avoid missing HWP max updates in passive mode (Puneet Sethi) [1926919] - cpufreq: schedutil: restore cached freq when next_f is not changed (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Delete intel_pstate sysfs if failed to register the driver (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Fix missing return statement (Puneet Sethi) [1926919] - cpufreq: Introduce CPUFREQ_NEED_UPDATE_LIMITS driver flag (Puneet Sethi) [1926919] - ACPI: processor: Fix build when CONFIG_ACPI_PROCESSOR=m (Vitaly Kuznetsov) [1929266] - ACPI: processor: Fix CPU0 wakeup in acpi_idle_play_dead() (Vitaly Kuznetsov) [1929266] - x86/ioapic: Ignore IRQ2 again (Vitaly Kuznetsov) [1929266]- selinux: fix deadlock in security_set_bools() (Ondrej Mosnacek) [1924230] - sctp: move sk_route_caps check and set into sctp_outq_flush_transports (Xin Long) [1946733] - sctp: bring inet(6)_skb_parm back to sctp_input_cb (Xin Long) [1946733] - sctp: enable udp tunneling socks (Xin Long) [1946733] - sctp: handle the init chunk matching an existing asoc (Xin Long) [1946733] - sctp: add the error cause for new encapsulation port restart (Xin Long) [1946733] - sctp: support for sending packet over udp6 sock (Xin Long) [1946733] - sctp: support for sending packet over udp4 sock (Xin Long) [1946733] - sctp: call sk_setup_caps in sctp_packet_transmit instead (Xin Long) [1946733] - sctp: add udphdr to overhead when udp_port is set (Xin Long) [1946733] - sctp: allow changing transport encap_port by peer packets (Xin Long) [1946733] - sctp: add SCTP_REMOTE_UDP_ENCAPS_PORT sockopt (Xin Long) [1946733] - sctp: add encap_port for netns sock asoc and transport (Xin Long) [1946733] - sctp: add encap_err_lookup for udp encap socks (Xin Long) [1946733] - sctp: create udp6 sock and set its encap_rcv (Xin Long) [1946733] - sctp: create udp4 sock and add its encap_rcv (Xin Long) [1946733] - udp: support sctp over udp in skb_udp_tunnel_segment (Xin Long) [1946733] - udp6: move the mss check after udp gso tunnel processing (Xin Long) [1946733] - udp: check udp sock encap_type in __udp_lib_err (Xin Long) [1946733] - sctp: copy the optval from user space in sctp_setsockopt (Xin Long) [1946733] - net: Convert protocol error handlers from void to int (Xin Long) [1946733] - Enable CONFIG_ENERGY_MODEL (Phil Auld) [1938339] - proc/sysctl: add shared variables for range check (Phil Auld) [1938339] - Enable CONFIG_CPU_FREQ_GOV_SCHEDUTIL for all architectures (Phil Auld) [1938339] - PM / hibernate: cast PAGE_SIZE to int when comparing with error code (Chris von Recklinghausen) [1934033] - mm: revert fix false-positive OVERCOMMIT_GUESS failures (Rafael Aquini) [1913045 1908668] - redhat/config: Enable CONFIG_PAGE_POISONING (Waiman Long) [1942149] - mm, page_poison: remove CONFIG_PAGE_POISONING_ZERO (Waiman Long) [1942149] - mm, page_poison: remove CONFIG_PAGE_POISONING_NO_SANITY (Waiman Long) [1942149] - kernel/power: allow hibernation with page_poison sanity checking (Waiman Long) [1942149] - mm, page_poison: use static key more efficiently (Waiman Long) [1942149] - mm, page_alloc: do not rely on the order of page_poison and init_on_alloc/free parameters (Waiman Long) [1942149] - mm/page_alloc: clear all pages in post_alloc_hook() with init_on_alloc=1 (Waiman Long) [1942149] - arch, mm: make kernel_page_present() always available (Waiman Long) [1942149] - arch, mm: restore dependency of __kernel_map_pages() on DEBUG_PAGEALLOC (Waiman Long) [1942149] - PM: hibernate: make direct map manipulations more explicit (Waiman Long) [1942149] - mm: introduce debug_pagealloc_{map,unmap}_pages() helpers (Waiman Long) [1942149] - mm: rename page_order() to buddy_order() (Waiman Long) [1942149] - mm/page_alloc: place pages to tail in __free_pages_core() (Waiman Long) [1942149] - mm/page_alloc: move pages to tail in move_to_free_list() (Waiman Long) [1942149] - mm/page_alloc: place pages to tail in __putback_isolated_page() (Waiman Long) [1942149] - mm/page_alloc: convert "report" flag of __free_one_page() to a proper flag (Waiman Long) [1942149] - mm/page_alloc: drop stale pageblock comment in memmap_init_zone*() (Waiman Long) [1942149] - mm/memory_hotplug: simplify page onlining (Waiman Long) [1942149] - mm/page_isolation: simplify return value of start_isolate_page_range() (Waiman Long) [1942149] - mm/memory_hotplug: drop nr_isolate_pageblock in offline_pages() (Waiman Long) [1942149] - mm/page_alloc: simplify __offline_isolated_pages() (Waiman Long) [1942149] - mm/memory_hotplug: simplify page offlining (Waiman Long) [1942149] - mm/memory_hotplug: enforce section granularity when onlining/offlining (Waiman Long) [1942149] - mm/memory_hotplug: inline __offline_pages() into offline_pages() (Waiman Long) [1942149] - mm/page_poison.c: replace bool variable with static key (Waiman Long) [1942149] - mm/page_alloc.c: fix early params garbage value accesses (Waiman Long) [1942149] - mm/memory_hotplug: document why shuffle_zone() is relevant (Waiman Long) [1942149] - mm: replace '---help---' in Kconfig files with 'help' (Waiman Long) [1942149] - mm/memory_hotplug: fix a typo in comment "recoreded"->"recorded" (Waiman Long) [1942149] - mm: Allow to offline unmovable PageOffline() pages via MEM_GOING_OFFLINE (Waiman Long) [1942149] - x86/mm/cpa: Flush direct map alias during cpa (Waiman Long) [1942149] - mm/page_alloc: simplify page_is_buddy() for better code readability (Waiman Long) [1942149] - mm/memory.c: add apply_to_existing_page_range() helper (Waiman Long) [1942149] - x86/mm/pat: Move the memtype related files to arch/x86/mm/pat/ (Waiman Long) [1942149] - x86/mm/pat: Rename pat_rbtree.c to pat_interval.c (Waiman Long) [1942149] - mm/memory_hotplug: online_pages cannot be 0 in online_pages() (Waiman Long) [1942149] - mm/memory_hotplug: make sure the pfn is aligned to the order when onlining (Waiman Long) [1942149] - mm/memory_hotplug: simplify online_pages_range() (Waiman Long) [1942149] - mm/memory_hotplug: drop PageReserved() check in online_pages_range() (Waiman Long) [1942149] - mm/memory_hotplug.c: use PFN_UP / PFN_DOWN in walk_system_ram_range() (Waiman Long) [1942149] - mm/page_poison.c: fix a typo in a comment (Waiman Long) [1942149] - mm/slab: Remove store_stackinfo() (Waiman Long) [1942149] - mm/resource: Let walk_system_ram_range() search child resources (Waiman Long) [1942149] - mm/page_alloc.c: use a single function to free page (Waiman Long) [1942149] - mm/page_alloc.c: free order-0 pages through PCP in page_frag_free() (Waiman Long) [1942149] - x86/mm/cpa: Fix set_mce_nospec() (Waiman Long) [1942149] - x86/mm/cpa: Rename @addrinarray to @numpages (Waiman Long) [1942149] - x86/mm/cpa: Better use CLFLUSHOPT (Waiman Long) [1942149] - x86/mm/cpa: Fold cpa_flush_range() and cpa_flush_array() into a single cpa_flush() function (Waiman Long) [1942149] - x86/mm/cpa: Make cpa_data::numpages invariant (Waiman Long) [1942149] - x86/mm/cpa: Optimize cpa_flush_array() TLB invalidation (Waiman Long) [1942149] - x86/mm/cpa: Simplify the code after making cpa->vaddr invariant (Waiman Long) [1942149] - x86/mm/cpa: Make cpa_data::vaddr invariant (Waiman Long) [1942149] - x86/mm/cpa: Add __cpa_addr() helper (Waiman Long) [1942149] - x86/mm/cpa: Add ARRAY and PAGES_ARRAY selftests (Waiman Long) [1942149] - resource/docs: Complete kernel-doc style function documentation (Waiman Long) [1942149] - resource/docs: Fix new kernel-doc warnings (Waiman Long) [1942149] - resource: Clean it up a bit (Waiman Long) [1942149] - mm: clarify CONFIG_PAGE_POISONING and usage (Waiman Long) [1942149] - selftests: kvm: Raise the default timeout to 120 seconds (Emanuele Giuseppe Esposito) [1894828] - KVM: Raise the maximum number of user memslots (Emanuele Giuseppe Esposito) [1894828] - block: recalculate segment count for multi-segment discards correctly (Ming Lei) [1922370] - i40e: Fix VFs not created (Stefan Assmann) [1875338] - vfs: fix page locking deadlocks when deduping files (Gao Xiang) [1916242]- tg3: improve PCI VPD access (Jonathan Toppins) [1921456] - scsi: target: pscsi: Clean up after failure in pscsi_map_sg() (Maurizio Lombardi) [1939458] - scsi: target: pscsi: Avoid OOM in pscsi_map_sg() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Fix memory leak caused by wrong uio usage (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Move some functions without code change (Maurizio Lombardi) [1939458] - scsi: target: core: Prevent underflow for service actions (Maurizio Lombardi) [1939458] - scsi: target: core: Add cmd length set before cmd complete (Maurizio Lombardi) [1939458] - scsi: target: sbp: Remove unneeded semicolon (Maurizio Lombardi) [1939458] - scsi: target: core: Change ASCQ for residual write (Maurizio Lombardi) [1939458] - scsi: target: core: Signal WRITE residuals (Maurizio Lombardi) [1939458] - scsi: target: core: Set residuals for 4Kn devices (Maurizio Lombardi) [1939458] - scsi: target: core: Remove in_interrupt() check in transport_handle_cdb_direct() (Maurizio Lombardi) [1939458] - scsi: target: core: Replace in_interrupt() usage in target_submit_cmd_map_sgls() (Maurizio Lombardi) [1939458] - scsi: target: alua: Remove in_interrupt() usage in core_alua_check_nonop_delay() (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Redo iscsit_check_session_usage_count() return code (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Avoid in_interrupt() usage in iscsit_check_session_usage_count() (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Avoid in_interrupt() usage in iscsit_close_session() (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Fix typo in comment (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Fix use-after-free of se_cmd->priv (Maurizio Lombardi) [1939458] - scsi: target: core: Fix fall-through warnings for Clang (Maurizio Lombardi) [1939458] - scsi: tcm_loop: Allow queues, can_queue and cmd_per_lun to be settable (Maurizio Lombardi) [1939458] - scsi: target: Make state_list per CPU (Maurizio Lombardi) [1939458] - scsi: target: Drop sess_cmd_lock from I/O path (Maurizio Lombardi) [1939458] - scsi: target: Remove TARGET_SCF_LOOKUP_LUN_FROM_TAG (Maurizio Lombardi) [1939458] - scsi: target: Fix cmd_count ref leak (Maurizio Lombardi) [1939458] - scsi: target: Fix LUN ref count handling (Maurizio Lombardi) [1939458] - scsi: target: Return COMPARE AND WRITE miscompare offsets (Maurizio Lombardi) [1939458] - scsi: target: Split out COMPARE AND WRITE memcmp into helper (Maurizio Lombardi) [1939458] - scsi: target: Rename cmd.bad_sector to cmd.sense_info (Maurizio Lombardi) [1939458] - scsi: target: Rename struct sense_info to sense_detail (Maurizio Lombardi) [1939458] - scsi: target: tcmu: scatter_/gather_data_area() rework (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Replace zero-length array with flexible-array member (Maurizio Lombardi) [1939458] - scsi: target: rd: Drop double zeroing (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Fix warning: 'page' may be used uninitialized (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Optimize scatter_data_area() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Optimize queue_cmd_ring() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Join tcmu_cmd_get_data_length() and tcmu_cmd_get_block_cnt() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Add missing newline when printing parameters (Maurizio Lombardi) [1939458] - scsi: target: Remove redundant assignment to variable 'ret' (Maurizio Lombardi) [1939458] - x86/resctrl: Fix AMD L3 QOS CDP enable/disable (Wei Huang) [1868984] - i2c: i801: Add support for Intel Alder Lake PCH-S (David Arcari) [1840242] - esp: delete NETIF_F_SCTP_CRC bit from features for esp offload (Xin Long) [1815560] - net/sched: act_ct: clear post_ct if doing ct_clear (Marcelo Ricardo Leitner) [1941889] - net: Change dev parameter to const in netif_device_present() (Josef Oskera) [1941728] - [x86] x86/mce: Increase maximum number of banks to 64 (Terry Bowman) [1931679]- scsi: megaraid_sas: Fix a bunch of misnamed functions in their headers (Tomas Henzl) [1924687] - scsi: megaraid_sas: Replace sdev_busy with local counter (Tomas Henzl) [1924687] - scsi: megaraid: Fix ifnullfree.cocci warnings (Tomas Henzl) [1924687] - scsi: megaraid_sas: Fix MEGASAS_IOC_FIRMWARE regression (Tomas Henzl) [1924687] - Revert "Revert "scsi: megaraid_sas: Added support for shared host tagset for cpuhotplug"" (Tomas Henzl) [1924687] - Revert "scsi: megaraid_sas: Added support for shared host tagset for cpuhotplug" (Tomas Henzl) [1924687] - scsi: megaraid_sas: Update function description (Tomas Henzl) [1924687] - scsi: megaraid_sas: Use generic power management (Tomas Henzl) [1924687] - megaraid_sas(treewide): Use fallthrough pseudo-keyword (Tomas Henzl) [1924687] - scsi: megaraid_sas: Drop PCI wakeup calls from .resume (Tomas Henzl) [1924687] - scsi: megaraid_sas: Check user-provided offsets (Tomas Henzl) [1924687] - scsi: mpt3sas: Update driver version to 37.101.00.00 (Tomas Henzl) [1922058] - scsi: mpt3sas: Force reply post array allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force reply post buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force reply buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force sense buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force chain buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force PCIe scatterlist allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Replace unnecessary dynamic allocation with a static one (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix some kernel-doc misnaming issues (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix a couple of misdocumented functions/params (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix a bunch of potential naming doc-rot (Tomas Henzl) [1922058] - scsi: mpt3sas: Move a little data from the stack onto the heap (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix misspelling of _base_put_smid_default_atomic() (Tomas Henzl) [1922058] - scsi: mpt3sas: Update driver version to 37.100.00.00 (Tomas Henzl) [1922058] - scsi: mpt3sas: Additional diagnostic buffer query interface (Tomas Henzl) [1922058] - scsi: mpt3sas: Add support for shared host tagset for CPU hotplug (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix ReplyPostFree pool allocation (Tomas Henzl) [1922058] - scsi: mpt3sas: Simplify bool comparison (Tomas Henzl) [1922058] - scsi: mpt3sas: Signedness bug in _base_get_diag_triggers() (Tomas Henzl) [1922058] - scsi: mpt3sas: Update driver version to 36.100.00.00 (Tomas Henzl) [1922058] - scsi: mpt3sas: Handle trigger page after firmware update (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent MPI trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent SCSI sense trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent Event trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent Master trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent trigger pages support (Tomas Henzl) [1922058] - scsi: mpt3sas: Sync time periodically between driver and firmware (Tomas Henzl) [1922058] - scsi: mpt3sas: Increase IOCInit request timeout to 30s (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix ioctl timeout (Tomas Henzl) [1922058] - scsi: mpt3sas: Remove in_interrupt() (Tomas Henzl) [1922058] - scsi: mpt3sas_scsih: Use generic power management (Tomas Henzl) [1922058] - scsi: mpt3sas_scsih: Drop PCI Wakeup calls from .resume (Tomas Henzl) [1922058] - scsi: mpt3sas: mpt3sas_scsih: Fix function documentation formatting (Tomas Henzl) [1922058] - mpt3sas: Use fallthrough pseudo-keyword (Tomas Henzl) [1922058] - net: add inline function skb_csum_is_sctp (Josef Oskera) [1939341] - psample: Fix user API breakage (Ivan Vecera) [1939499] - net: psample: Fix netlink skb length with tunnel info (Ivan Vecera) [1939499] - net: psample: Add tunnel support (Ivan Vecera) [1939499] - net: core: introduce struct netdev_nested_priv for nested interface infrastructure (Ivan Vecera) [1939402] - net: add function dev_fetch_sw_netstats for fetching pcpu_sw_netstats (Josef Oskera) [1935717] - net: core: add devm_netdev_alloc_pcpu_stats (Josef Oskera) [1935717] - net: core: add dev_sw_netstats_tx_add (Josef Oskera) [1935717] - net: netdevice.h: sw_netstats_rx_add helper (Josef Oskera) [1935717] - net: netdevice: Add operation ndo_sk_get_lower_dev (Josef Oskera) [1935709] - genirq: Provide irq_get_effective_affinity() (Josef Oskera) [1935670]- locking/locktorture: Fix incorrect use of ww_acquire_ctx in ww_mutex test (Waiman Long) [1871851] - locking/locktorture: Pass thread id to lock/unlock functions (Waiman Long) [1871851] - locking/ww_mutex: Remove DEFINE_WW_MUTEX() macro (Waiman Long) [1871851] - locking/locktorture: Fix false positive circular locking splat in ww_mutex test (Waiman Long) [1871851] - locking/ww_mutex: Fix acquire/release imbalance in ww_acquire_init()/ww_acquire_fini() (Waiman Long) [1871851] - locking/ww_mutex: Simplify use_ww_ctx & ww_ctx handling (Waiman Long) [1871851] - locking: Remove duplicate include of percpu-rwsem.h (Waiman Long) [1871851] - locktorture: Invoke percpu_free_rwsem() to do percpu-rwsem cleanup (Waiman Long) [1871851] - locktorture: Prevent hangs for invalid arguments (Waiman Long) [1871851] - locktorture: Ignore nreaders_stress if no readlock support (Waiman Long) [1871851] - locktorture: Track time of last ->writeunlock() (Waiman Long) [1871851] - locktorture: Make function torture_percpu_rwsem_init() static (Waiman Long) [1871851] - sched,locktorture: Convert to sched_set_fifo() (Waiman Long) [1871851] - locktorture: Use true and false to assign to bool variables (Waiman Long) [1871851] - locktorture: Print ratio of acquisitions, not failures (Waiman Long) [1871851] - locktorture: NULL cxt.lwsa and cxt.lrsa to allow bad-arg detection (Waiman Long) [1871851] - locking/locktorture: Convert to SPDX license identifier (Waiman Long) [1871851] - tty: Fix ->session locking (Chris von Recklinghausen) [1908059] {CVE-2020-29660} - net: skbext: fix secpath use-after-free with ip fragmentation (Sabrina Dubroca) [1901454]- nfs: we don't support removing system.nfs4_acl (Scott Mayhew) [1944659] - redhat/configs: Disable CONFIG_INFINIBAND_HNS* (Kamal Heib) [1941259] - mm: Revert "remove the account_page_dirtied export" (Waiman Long) [1941257] - Revert "[netdrv] net/broadcom: Clean broadcom code from driver versions" (Jonathan Toppins) [1940842]- geneve: do not modify the shared tunnel info when PMTU triggers an ICMP reply (Antoine Tenart) [1941753] - vxlan: do not modify the shared tunnel info when PMTU triggers an ICMP reply (Antoine Tenart) [1941753] - net: Add netif_rx_any_context() (Josef Oskera) [1939466] - bitfield.h: add FIELD_MAX() and field_max() (Ivan Vecera) [1939478] - md/raid5: cast chunk_sectors to sector_t value (Nigel Croxon) [1921468] - md: Set prev_flush_start and flush_bio in an atomic way (Nigel Croxon) [1921468] - md/cluster: fix deadlock when node is doing resync job (Nigel Croxon) [1921468] - md/cluster: block reshape with remote resync job (Nigel Croxon) [1921468] - md: use current request time as base for ktime comparisons (Nigel Croxon) [1921468] - md: add comments in md_flush_request() (Nigel Croxon) [1921468] - md: improve variable names in md_flush_request() (Nigel Croxon) [1921468] - md/raid10: initialize r10_bio->read_slot before use. (Nigel Croxon) [1921468] - md: fix a warning caused by a race between concurrent md_ioctl()s (Nigel Croxon) [1921468] - Revert "md: improve variable names in md_flush_request()" (Nigel Croxon) [1921468] - Revert "md: Set prev_flush_start and flush_bio in an atomic way" (Nigel Croxon) [1921468] - KVM: nSVM: fix running nested guests when npt=0 (Emanuele Giuseppe Esposito) [1799073] - fork: fix copy_process(CLONE_PARENT) race with the exiting ->real_parent (Julia Denham) [1908311] {CVE-2020-35508} - Revert "redhat: switch secureboot kernel image signing to release keys" (Bruno Meneguele) - redhat: switch secureboot kernel image signing to release keys (Jan Stancek) - Revert "[md] md/raid5: add a new member of offset into r5dev" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: make async_copy_data() to support different page offset" (Nigel Croxon) [1936903] - Revert "[crypto] md/raid5: add new xor function to support different page offset" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: convert to new xor compution interface" (Nigel Croxon) [1936903] - Revert "[crypto] md/raid6: let syndrome computor support different page offset" (Nigel Croxon) [1936903] - Revert "[crypto] md/raid6: let async recovery function support different page offset" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: let multiple devices of stripe_head share page" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: resize stripe_head when reshape array" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: reallocate page array after setting new stripe_size" (Nigel Croxon) [1936903] - ACPI: PNP: compare the string length in the matching_id() (Mark Langsdorf) [1933702] - ceph: add missing break when parsing "nowsync" mount option (Jeff Layton) [1932753] - get_maintainer.conf: Update with new location of RHMAINTAINERS (Prarit Bhargava) - redhat: make pathspec exclusion compatible with old git versions (Herton R. Krzesinski) - redhat/scripts: Update merge-subtrees.sh with new subtree location (Prarit Bhargava) - tree: Add RHMAINTAINERS soft link in 8.4 (Prarit Bhargava) - tree: remove existing redhat/rhdocs subtree in 8.4 (Prarit Bhargava)- ntp: Use freezable workqueue for RTC synchronization (Phil Auld) [1793880] - ntp: Fix RTC synchronization on 32-bit platforms (Phil Auld) [1793880] - ntp: Make the RTC synchronization more reliable (Phil Auld) [1793880] - PCI: rpadlpar: Fix potential drc_name corruption in store functions (Gustavo Luiz Duarte) [1938116] - selftests: kvm: Add basic Hyper-V clocksources tests (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Don't touch TSC page values when guest opted for re-enlightenment (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Track Hyper-V TSC page status (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Prevent using not-yet-updated TSC page by secondary CPUs (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Limit guest to writing zero to HV_X64_MSR_TSC_EMULATION_STATUS (Vitaly Kuznetsov) [1931782] - drm/i915/guc: Update to use firmware v49.0.1 (Dave Airlie) [1935281] {CVE-2020-12362} - time: Enable __kernel_timespec for 32-bit vdso build (Waiman Long) [1936282] - lib/idr.c: document calling context for IDA APIs mustn't use locks (Chris von Recklinghausen) [1917764] - ida: Free allocated bitmap in error path (Chris von Recklinghausen) [1917764] - radix tree test suite: Fix compilation (Chris von Recklinghausen) [1917764] - vmalloc: convert to XArray (Chris von Recklinghausen) [1917764] - mm: pass addr as unsigned long to vb_free (Chris von Recklinghausen) [1917764] - radix tree: Remove multiorder support (Chris von Recklinghausen) [1917764] - radix tree test: Convert multiorder tests to XArray (Chris von Recklinghausen) [1917764] - radix tree tests: Convert item_delete_rcu to XArray (Chris von Recklinghausen) [1917764] - radix tree tests: Convert item_kill_tree to XArray (Chris von Recklinghausen) [1917764] - radix tree tests: Move item_insert_order (Chris von Recklinghausen) [1917764] - radix tree test suite: Remove multiorder benchmarking (Chris von Recklinghausen) [1917764] - radix tree test suite: Remove __item_insert (Chris von Recklinghausen) [1917764] - radix tree: Remove radix_tree_clear_tags (Chris von Recklinghausen) [1917764] - radix tree: Remove split/join code (Chris von Recklinghausen) [1917764] - radix tree: Remove radix_tree_update_node_t (Chris von Recklinghausen) [1917764] - mm: Convert truncate to XArray (Chris von Recklinghausen) [1917764] - copy rh_kabi.h to tools/testing/radix-tree/linux (Chris von Recklinghausen) [1917764]- tick: Get rid of tick_period (Phil Auld) [1936504] - tick/sched: Release seqcount before invoking calc_load_global() (Phil Auld) [1936504] - tick/sched: Optimize tick_do_update_jiffies64() further (Phil Auld) [1936504] - tick/sched: Reduce seqcount held scope in tick_do_update_jiffies64() (Phil Auld) [1936504] - tick/sched: Use tick_next_period for lockless quick check (Phil Auld) [1936504] - tick: Document protections for tick related data (Phil Auld) [1936504] - tick/broadcast: Serialize access to tick_next_period (Phil Auld) [1936504] - timekeeping: Split jiffies seqlock (Phil Auld) [1936504] - tick/sched: Annotate lockless access to last_jiffies_update (Phil Auld) [1936504] - net, sctp, filter: remap copy_from_user failure error (Hangbin Liu) [1929476] {CVE-2021-20239} - tty: serial_core: Set port active bit in uart_port_activate (Artem Savkov) [1915177] - cgroup: fix psi monitor for root cgroup (Waiman Long) [1936868] - cgroup-v1: add disabled controller check in cgroup1_parse_param() (Waiman Long) [1936868] - cgroup: cgroup.{procs,threads} factor out common parts (Waiman Long) [1936868] - cpuset: fix typos in comments (Waiman Long) [1936868] - kernel: cgroup: Mundane spelling fixes throughout the file (Waiman Long) [1936868] - cgroup/cgroup.c: replace 'of->kn->priv' with of_cft() (Waiman Long) [1936868] - cgroup: Zero sized write should be no-op (Waiman Long) [1936868] - cgroup: remove redundant kernfs_activate in cgroup_setup_root() (Waiman Long) [1936868] - cgroup: Use generic ns_common::count (Waiman Long) [1936868] - ns: Add a common refcount into ns_common (Waiman Long) [1936868] - cgroup: add cpu.stat file to root cgroup (Waiman Long) [1936868] - cgroup: Remove stale comments (Waiman Long) [1936868] - cgroup: Restructure release_agent_path handling (Waiman Long) [1936868] - cgroup: add cgroup_may_write() helper (Waiman Long) [1936868] - cgroup: refactor fork helpers (Waiman Long) [1936868] - cgroup: add cgroup_get_from_file() helper (Waiman Long) [1936868] - cgroup: unify attach permission checking (Waiman Long) [1936868] - cpuset: Make cpuset hotplug synchronous (Waiman Long) [1936868] - cgroup: Clean up css_set task traversal (Waiman Long) [1936868] - cgroup.c: Use built-in RCU list checking (Waiman Long) [1936868] - fork: record start_time late (Waiman Long) [1936868] - sched/deadline: Reduce rq lock contention in dl_add_task_root_domain() (Phil Auld) [1936501] - sched/deadline: Fix sched_dl_global_validate() (Phil Auld) [1936501] - sched/deadline: Optimize sched_dl_global_validate() (Phil Auld) [1936501] - sched/deadline: Fix a typo in a comment (Phil Auld) [1936501] - sched/deadline: Implement fallback mechanism for !fit case (Phil Auld) [1936501] - sched/deadline: Make DL capacity-aware (Phil Auld) [1936501] - sched/deadline: Improve admission control for asymmetric CPU capacities (Phil Auld) [1936501] - sched/deadline: Add dl_bw_capacity() (Phil Auld) [1936501] - sched/deadline: Optimize dl_bw_cpus() (Phil Auld) [1936501] - sched/deadline: Impose global limits on sched_attr::sched_period (Phil Auld) [1936501] - ibmvnic: fix a race between open and reset (Diego Domingos) [1940042] - ibmvnic: Set to CLOSED state even on error (Diego Domingos) [1940042] - ibmvnic: device remove has higher precedence over reset (Diego Domingos) [1940042] - ibmvnic: merge do_change_param_reset into do_reset (Diego Domingos) [1940042] - ibmvfc: disable MQ channelization by default (Gustavo Luiz Duarte) [1939359] - pNFS/NFSv4: Fix a layout segment leak in pnfs_layout_process() (Steve Dickson) [1926945] - scsi: iscsi: Verify lengths on passthrough PDUs (Chris Leech) [1930833] {CVE-2021-27365} - scsi: iscsi: Ensure sysfs attributes are limited to PAGE_SIZE (Chris Leech) [1930856] {CVE-2021-27363} - scsi: iscsi: Restrict sessions and handles to admin capabilities (Chris Leech) [1930809] {CVE-2021-27364} - futex: Handle faults correctly for PI futexes (Waiman Long) [1924635] - futex: Simplify fixup_pi_state_owner() (Waiman Long) [1924635] - futex: Use pi_state_update_owner() in put_pi_state() (Waiman Long) [1924635] - rtmutex: Remove unused argument from rt_mutex_proxy_unlock() (Waiman Long) [1924635] - futex: Provide and use pi_state_update_owner() (Waiman Long) [1924635] - futex: Replace pointless printk in fixup_owner() (Waiman Long) [1924635] - futex: Ensure the correct return value from futex_lock_pi() (Waiman Long) [1924635] - futex: Don't enable IRQs unconditionally in put_pi_state() (Waiman Long) [1924635] - futex: Fix incorrect should_fail_futex() handling (Waiman Long) [1924635] - futex: Consistently use fshared as boolean (Waiman Long) [1924635] - futex: Remove needless goto's (Waiman Long) [1924635] - futex: Remove put_futex_key() (Waiman Long) [1924635] - NFS: Correct size calculation for create reply length (Benjamin Coddington) [1934903] - SUNRPC: Set memalloc_nofs_save() for sync tasks (Benjamin Coddington) [1934098] - net/mlx5: CT: Add support for matching on ct_state reply flag (Alaa Hleihel) [1919651] - net/mlx5e: CT: manage the lifetime of the ct entry object (Alaa Hleihel) [1919651] - net/mlx5e: CT: Use per flow counter when CT flow accounting is enabled (Alaa Hleihel) [1919651] - net/mlx5e: Fix a use after free on error in mlx5_tc_ct_shared_counter_get() (Alaa Hleihel) [1919651] - net/mlx5e: CT: Use the same counter for both directions (Alaa Hleihel) [1919651] - ethtool: fix the check logic of at least one channel for RX/TX (Ivan Vecera) [1907406]- [scsi] scsi: qedi: Correct max length of CHAP secret (Nilesh Javali) [1909180] - redhat: use tags from git notes for zstream to generate changelog (Frantisek Hrbata) - redhat: add CI file for kernel-private (Bruno Meneguele) - CI: Drop unused variable (Bruno Meneguele) - CI: Enable RT verification (Bruno Meneguele) - KVM: SVM: Clear the CR4 register on reset (Vitaly Kuznetsov) [1920788] - net: flow_offload: Add original direction flag to ct_metadata (Marcelo Ricardo Leitner) [1921946] - net/sched: cls_flower: Add match on the ct_state reply flag (Marcelo Ricardo Leitner) [1921946] - net/sched: cls_flower add CT_FLAGS_INVALID flag support (Marcelo Ricardo Leitner) [1921946] - net/sched: cls_flower: Reject invalid ct_state flags rules (Marcelo Ricardo Leitner) [1921946] - netlink: add mask validation (Marcelo Ricardo Leitner) [1921946] - netlink: create helpers for checking type is an int (Marcelo Ricardo Leitner) [1921946] - netlink: policy: correct validation type check (Marcelo Ricardo Leitner) [1921946] - netlink: make NLA_BINARY validation more flexible (Marcelo Ricardo Leitner) [1921946]- md: Set prev_flush_start and flush_bio in an atomic way (Xiao Ni) [1901598] - md: improve variable names in md_flush_request() (Xiao Ni) [1901598] - hpsa: fix regression issue for old controllers (Joseph Szczypek) [1925711] - scsi: hpsa: Correct dev cmds outstanding for retried cmds (Joseph Szczypek) [1925711] - vt: Disable KD_FONT_OP_COPY (Dave Airlie) [1903937] {CVE-2020-28974} - drm/i915/rkl: Remove require_force_probe protection (Lyude Paul) [1937558] - drm/i915/tgl/psr: Disable PSR on Tigerlake for now (Lyude Paul) [1924702] - dm raid: fix discard limits for raid0 and raid10 (Mike Snitzer) [1934274] - dm: fix __send_changing_extent_only to avoid duplicate dm_target_offset() (Mike Snitzer) [1934274] - mm/hugetlb.c: fix unnecessary address expansion of pmd sharing (Waiman Long) [1934212] - mm: memcontrol: fix slub memory accounting (Waiman Long) [1934212] - mm: memcontrol: fix swap undercounting in cgroup2 (Waiman Long) [1934212] - mm: memcontrol: fix NR_ANON_THPS accounting in charge moving (Waiman Long) [1934212] - mm, slub: better heuristic for number of cpus when calculating slab order (Waiman Long) [1934212] - Revert "mm: memcontrol: avoid workload stalls when lowering memory.high" (Waiman Long) [1934212] - selftests/bpf: Set gopt opt_class to 0 if get tunnel opt failed (Hangbin Liu) [1931732] - selftests/bpf: No need to drop the packet when there is no geneve opt (Hangbin Liu) [1931732]- drm/i915/gen11+: Only load DRAM information from pcode (Lyude Paul) [1934537] - drm/i915/dg1: Wait for pcode/uncore handshake at startup (Lyude Paul) [1934537] - powercap/intel_rapl: add support for TigerLake Desktop (David Arcari) [1932457] - powerpc/perf: Fix handling of privilege level checks in perf interrupt context (Gustavo Luiz Duarte) [1918411] - NFSv4.2: fix error return on memory allocation failure (Scott Mayhew) [1917689] - NFSv4.2: improve page handling for GETXATTR (Scott Mayhew) [1917689] - NFSv4.2: Fix up the get/listxattr calls to rpc_prepare_reply_pages() (Scott Mayhew) [1917689] - NFS: Fix rpcrdma_inline_fixup() crash with new LISTXATTRS operation (Scott Mayhew) [1917689] - SUNRPC: Fix up xdr_set_page() (Benjamin Coddington) [1917689] - NFSv4: Fix open coded xdr_stream_remaining() (Benjamin Coddington) [1917689] - SUNRPC: Clean up the handling of page padding in rpc_prepare_reply_pages() (Benjamin Coddington) [1917689] - SUNRPC: Fix up xdr_read_pages() to take arbitrary object lengths (Benjamin Coddington) [1917689] - SUNRPC: Clean up helpers xdr_set_iov() and xdr_set_page_base() (Benjamin Coddington) [1917689] - SUNRPC: Split out a function for setting current page (Benjamin Coddington) [1917689] - SUNRPC: Fix up typo in xdr_init_decode() (Benjamin Coddington) [1917689] - NFSv4: Fix the alignment of page data in the getdeviceinfo reply (Benjamin Coddington) [1917689] - net: fix pos incrementment in ipv6_route_seq_next (Lorenzo Bianconi) [1926608] - ipv6_route_seq_next should increase position index (Lorenzo Bianconi) [1926608] - bpf: Clear subreg_def for global function return values (Yauheni Kaliuta) [1934062] - igc: Fix returning wrong statistics (Corinna Vinschen) [1910873]- KVM: nSVM: prepare guest save area while is_guest_mode is true (Vitaly Kuznetsov) [1860223] - redhat: add CI file for kernel-private (Bruno Meneguele) - CI: Drop unused variable (Veronika Kabatova) - CI: Enable RT verification (Veronika Kabatova) - redhat: use tags from git notes for zstream to generate changelog (Frantisek Hrbata) - redhat: open the RHEL-8.5 development (Bruno Meneguele) [1930504]- KVM: SVM: Make symbol 'svm_gp_erratum_intercept' static (Paolo Bonzini) [1769283] - KVM: SVM: Fix #GP handling for doubly-nested virtualization (Paolo Bonzini) [1769283] - KVM: SVM: Add support for SVM instruction address check change (Paolo Bonzini) [1769283] - KVM: SVM: Add emulation support for #GP triggered by SVM instructions (Paolo Bonzini) [1769283] - KVM: x86: Factor out x86 instruction emulation with decoding (Paolo Bonzini) [1769283] - gfs2: In gfs2_ail1_start_one unplug the IO when needed (Bob Peterson) [1648446] - gfs2: Free rd_bits later in gfs2_clear-rgrpd to fix use-after-free (Bob Peterson) [1648446] - gfs2: Only access gl_delete for iopen glocks (Bob Peterson) [1648446] - gfs2: Fix case in which ail writes are done to jdata holes (Bob Peterson) [1648446] - gfs2: simplify gfs2_block_map (Bob Peterson) [1648446] - gfs2: Only set PageChecked if we have a transaction (Bob Peterson) [1648446] - gfs2: don't lock sd_ail_lock in gfs2_releasepage (Bob Peterson) [1648446] - gfs2: make gfs2_ail1_empty_one return the count of active items (Bob Peterson) [1648446] - gfs2: Wipe jdata and ail1 in gfs2_journal_wipe, formerly gfs2_meta_wipe (Bob Peterson) [1648446] - gfs2: enhance log_blocks trace point to show log blocks free (Bob Peterson) [1648446] - gfs2: rename gfs2_write_full_page to gfs2_write_jdata_page, remove parm (Bob Peterson) [1648446] - PM: hibernate: flush swap writer after marking (Lenny Szubowicz) [1898677] - cpufreq: Avoid cpufreq_suspend() deadlock on system shutdown (Lenny Szubowicz) [1898677] - PM / hibernate: memory_bm_find_bit(): Tighten node optimisation (Lenny Szubowicz) [1898677] - bpf, devmap: Use GFP_KERNEL for xdp bulk queue allocation (Jiri Benc) [1882215] - ice, xsk: clear the status bits for the next_to_use descriptor (Jiri Benc) [1906820] - net/mlx4_en: Handle TX error CQE (Alaa Hleihel) [1925690] - net/mlx4_en: Avoid scheduling restart task if it is already running (Alaa Hleihel) [1925690] - blk-mq: test QUEUE_FLAG_HCTX_ACTIVE for sbitmap_shared in hctx_may_queue (Ming Lei) [1922013] - blk-mq: Improve performance of non-mq IO schedulers with multiple HW queues (Ming Lei) [1922013] - Revert "blk-mq, elevator: Count requests per hctx to improve performance" (Ming Lei) [1922013] - bpftool: Disable CAP_BPF check for feature command (Jiri Olsa) [1921542] - RDMA/siw: Fix calculation of tx_valid_cpus size (Kamal Heib) [1919502] - net/mlx5e: Disable performance optimization for IPv4/IPv6 ethertype (Alaa Hleihel) [1928671 1919807] - IB/mlx5: Return appropriate error code instead of ENOMEM (Alaa Hleihel) [1928671] - net/mlx5: Disable devlink reload for lag devices (Alaa Hleihel) [1928671 1929166] - net/mlx5: Disable devlink reload for multi port slave device (Alaa Hleihel) [1928671 1929166] - net/mlx5: Disallow RoCE on lag device (Alaa Hleihel) [1928671 1929166] - net/mlx5: Disallow RoCE on multi port slave device (Alaa Hleihel) [1928671 1929166] - net/mlx5: Fix health error state handling (Alaa Hleihel) [1928671] - net/mlx5e: Change interrupt moderation channel params also when channels are closed (Alaa Hleihel) [1928671] - net/mlx5e: Don't change interrupt moderation params when DIM is enabled (Alaa Hleihel) [1928671] - net/mlx5e: E-switch, Fix rate calculation for overflow (Alaa Hleihel) [1928671] - net/mlx5e: Release skb in case of failure in tc update skb (Alaa Hleihel) [1928671 1929119] - net/mlx5e: Check tunnel offload is required before setting SWP (Alaa Hleihel) [1928671 1925439] - net/mlx5e: kTLS, Use refcounts to free kTLS RX priv context (Alaa Hleihel) [1928671 1928706] - net/mlx5e: Fix CQ params of ICOSQ and async ICOSQ (Alaa Hleihel) [1928671 1928706] - net/mlx5e: Replace synchronize_rcu with synchronize_net (Alaa Hleihel) [1928671 1913616] - net/mlx5e: Enable XDP for Connect-X IPsec capable devices (Alaa Hleihel) [1928671 1856795] - net/mlx5e: Enable striding RQ for Connect-X IPsec capable devices (Alaa Hleihel) [1928671 1926120] - fix regression in "epoll: Keep a reference on files added to the check list" (Carlos Maiolino) [1920776] {CVE-2020-0466} - do_epoll_ctl(): clean the failure exits up a bit (Carlos Maiolino) [1920776] {CVE-2020-0466} - epoll: Keep a reference on files added to the check list (Carlos Maiolino) [1920776] {CVE-2020-0466}- perf/x86/intel/uncore: With > 8 nodes, get pci bus die id from NUMA info (Prarit Bhargava) [1766743] - perf/x86/intel/uncore: Store the logical die id instead of the physical die id. (Prarit Bhargava) [1766743] - mm: fix page reference leak in soft_offline_page() (Aristeu Rozanski) [1768372] - mm,hwpoison: try to narrow window race for free pages (Aristeu Rozanski) [1768372] - mm,hwpoison: double-check page count in __get_any_page() (Aristeu Rozanski) [1768372] - mm,hwpoison: introduce MF_MSG_UNSPLIT_THP (Aristeu Rozanski) [1768372] - mm,hwpoison: return 0 if the page is already poisoned in soft-offline (Aristeu Rozanski) [1768372] - mm,hwpoison: refactor soft_offline_huge_page and __soft_offline_page (Aristeu Rozanski) [1768372] - mm,hwpoison: rework soft offline for in-use pages (Aristeu Rozanski) [1768372] - mm,hwpoison: rework soft offline for free pages (Aristeu Rozanski) [1768372] - mm,hwpoison: unify THP handling for hard and soft offline (Aristeu Rozanski) [1768372] - mm,hwpoison: kill put_hwpoison_page (Aristeu Rozanski) [1768372] - mm,hwpoison: refactor madvise_inject_error (Aristeu Rozanski) [1768372] - mm,hwpoison: unexport get_hwpoison_page and make it static (Aristeu Rozanski) [1768372] - mm,hwpoison-inject: don't pin for hwpoison_filter (Aristeu Rozanski) [1768372] - mm, hwpoison: remove recalculating hpage (Aristeu Rozanski) [1768372] - mm,hwpoison: cleanup unused PageHuge() check (Aristeu Rozanski) [1768372] - mm/madvise.c: replace with page_size() in madvise_inject_error() (Aristeu Rozanski) [1768372] - mm, soft-offline: convert parameter to pfn (Aristeu Rozanski) [1768372] - tick/nohz: Revert "Narrow down noise while setting current task's tick dependency" (Waiman Long) [1931004] - kvm: Add kvm_stat.service file and kvm_stat logrotate config to the tools (Thomas Huth) [1919930] - igc: fix link speed advertising (Corinna Vinschen) [1769701] - [crypto] crypto: qat - add capability detection logic in qat_4xxx (Vladis Dronov) [1833004] - [crypto] crypto: qat - add AES-XTS support for QAT GEN4 devices (Vladis Dronov) [1833004] - [crypto] crypto: qat - add AES-CTR support for QAT GEN4 devices (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix excluded_middle.cocci warnings (Vladis Dronov) [1833004] - [crypto] crypto: qat - add qat_4xxx driver (Vladis Dronov) [1833004] - [crypto] crypto: qat - add hook to initialize vector routing table (Vladis Dronov) [1833004] - [crypto] crypto: qat - target fw images to specific AEs (Vladis Dronov) [1833004] - [crypto] crypto: qat - add gen4 firmware loader (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for broadcasting mode (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for shared ustore (Vladis Dronov) [1833004] - [crypto] crypto: qat - allow to target specific AEs (Vladis Dronov) [1833004] - [crypto] crypto: qat - add FCU CSRs to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add CSS3K support (Vladis Dronov) [1833004] - [crypto] crypto: qat - use ae_mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - add check for null pointer (Vladis Dronov) [1833004] - [crypto] crypto: qat - add misc control CSR to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add wake up event to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add clock enable CSR to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add reset CSR and mask to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add local memory size to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for lm2 and lm3 (Vladis Dronov) [1833004] - [crypto] crypto: qat - add next neighbor to chip_info (Vladis Dronov) [1833004] - [crypto] crypto: qat - replace check based on DID (Vladis Dronov) [1833004] - [crypto] crypto: qat - introduce chip info structure (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor long expressions (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor qat_uclo_set_ae_mode() (Vladis Dronov) [1833004] - [crypto] crypto: qat - move defines to header files (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove global CSRs helpers (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor AE start (Vladis Dronov) [1833004] - [crypto] crypto: qat - change micro word data mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - change type for ctx_mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for relative FW ucode loading (Vladis Dronov) [1833004] - [crypto] crypto: qat - rename qat_uclo_del_uof_obj() (Vladis Dronov) [1833004] - [crypto] crypto: qat - introduce additional parenthesis (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unnecessary parenthesis (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix error message (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix CSR access (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix status check in qat_hal_put_rel_rd_xfer() (Vladis Dronov) [1833004] - [crypto] crypto: qat - support for mof format in fw loader (Vladis Dronov) [1833004] - [crypto] crypto: qat - replace pci with PCI in comments (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove cast for mailbox CSR (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unneeded semicolon (Vladis Dronov) [1833004] - [crypto] crypto: qat - extend ae_mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - allow for instances in different banks (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor qat_crypto_dev_config() (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor qat_crypto_create_instances() (Vladis Dronov) [1833004] - [crypto] crypto: qat - change return value in adf_cfg_key_val_get() (Vladis Dronov) [1833004] - [crypto] crypto: qat - change return value in adf_cfg_add_key_value_param() (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unnecessary void* casts (Vladis Dronov) [1833004] - [crypto] crypto: qat - call functions in adf_sriov if available (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove hardcoded bank irq clear flag mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract writes to arbiter enable (Vladis Dronov) [1833004] - [crypto] crypto: qat - use BIT_ULL() - 1 pattern for masks (Vladis Dronov) [1833004] - [crypto] crypto: qat - replace constant masks with GENMASK (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract build ring base (Vladis Dronov) [1833004] - [crypto] crypto: qat - enable ring after pair is programmed (Vladis Dronov) [1833004] - [crypto] crypto: qat - register crypto instances based on capability (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for capability detection (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract arbiter access (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unused macros in arbiter module (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove writes into WQCFG (Vladis Dronov) [1833004] - [crypto] crypto: qat - update constants table (Vladis Dronov) [1833004] - [crypto] crypto: qat - use admin mask to send fw constants (Vladis Dronov) [1833004] - [crypto] crypto: qat - change admin sequence (Vladis Dronov) [1833004] - [crypto] crypto: qat - rename ME in AE (Vladis Dronov) [1833004] - [crypto] crypto: qat - add packed to init admin structures (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract admin interface (Vladis Dronov) [1833004] - [crypto] crypto: qat - relocate GEN2 CSR access code (Vladis Dronov) [1833004] - [crypto] crypto: qat - split transport CSR access logic (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix configuration of iov threads (Vladis Dronov) [1833004] - [crypto] crypto: qat - num_rings_per_bank is device dependent (Vladis Dronov) [1833004] - [crypto] crypto: qat - mask device capabilities with soft straps (Vladis Dronov) [1833004] - [crypto] crypto: qat - update IV in software (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unused function (Vladis Dronov) [1833004]- mptcp: send ack for every add_addr (Davide Caratti) [1929280] - Revert "[net] tcp: change pingpong threshold to 3" (Davide Caratti) [1929280] - powerpc/pseries: Don't enforce MSI affinity with kdump (Greg Kurz) [1919427] - rtc: disallow update interrupts when time is invalid (Waiman Long) [1918288] - rtc: disable uie before setting time and enable after (Waiman Long) [1918288] - rtc: don't reference bogus function pointer in kdoc (Waiman Long) [1918288] - KVM: x86/mmu: Expand collapsible SPTE zap for TDP MMU to ZONE_DEVICE and HugeTLB pages (Paolo Bonzini) [1897366] - KVM: x86/mmu: Allow parallel page faults for the TDP MMU (Paolo Bonzini) [1897366] - KVM: x86/mmu: Mark SPTEs in disconnected pages as removed (Paolo Bonzini) [1897366] - KVM: x86/mmu: Flush TLBs after zap in TDP MMU PF handler (Paolo Bonzini) [1897366] - KVM: x86/mmu: Use atomic ops to set SPTEs in TDP MMU map (Paolo Bonzini) [1897366] - KVM: x86/mmu: Factor out functions to add/remove TDP MMU pages (Paolo Bonzini) [1897366] - i915: kvmgt: the KVM mmu_lock is now an rwlock (Paolo Bonzini) [1897366] - KVM: x86/mmu: Use an rwlock for the x86 MMU (Paolo Bonzini) [1897366] - KVM: x86/mmu: Protect TDP MMU page table memory with RCU (Paolo Bonzini) [1897366] - KVM: x86/mmu: Clear dirtied pages mask bit before early break (Paolo Bonzini) [1897366] - KVM: x86/mmu: Skip no-op changes in TDP MMU functions (Paolo Bonzini) [1897366] - KVM: x86/mmu: Yield in TDU MMU iter even if no SPTES changed (Paolo Bonzini) [1897366] - KVM: x86/mmu: Ensure forward progress when yielding in TDP MMU iter (Paolo Bonzini) [1897366] - KVM: x86/mmu: Rename goal_gfn to next_last_level_gfn (Paolo Bonzini) [1897366] - KVM: x86/mmu: Merge flush and non-flush tdp_mmu_iter_cond_resched (Paolo Bonzini) [1897366] - KVM: x86/mmu: Fix braces in kvm_recover_nx_lpages (Paolo Bonzini) [1897366] - KVM: x86/mmu: Factor out handling of removed page tables (Paolo Bonzini) [1897366] - KVM: x86/mmu: Don't redundantly clear TDP MMU pt memory (Paolo Bonzini) [1897366] - KVM: x86/mmu: Add lockdep when setting a TDP MMU SPTE (Paolo Bonzini) [1897366] - KVM: x86/mmu: Add comment on __tdp_mmu_set_spte (Paolo Bonzini) [1897366] - KVM: x86/mmu: change TDP MMU yield function returns to match cond_resched (Paolo Bonzini) [1897366] - locking/arch: Move qrwlock.h include after qspinlock.h (Paolo Bonzini) [1897366] - sched: Add cond_resched_rwlock (Paolo Bonzini) [1897366] - sched: Add needbreak for rwlocks (Paolo Bonzini) [1897366] - locking/rwlocks: Add contention detection for rwlocks (Paolo Bonzini) [1897366] - RDMA/srp: Fix support for unpopulated and unbalanced NUMA nodes (Kamal Heib) [1919395] - net/vmw_vsock: fix NULL pointer dereference (Jon Maloy) [1925600] {CVE-2021-26708} - net/vmw_vsock: improve locking in vsock_connect_timeout() (Jon Maloy) [1925600] {CVE-2021-26708} - vsock: fix locking in vsock_shutdown() (Jon Maloy) [1925600] {CVE-2021-26708} - vsock: fix the race conditions in multi-transport support (Jon Maloy) [1925600] {CVE-2021-26708} - ahci: Add missing Intel Emmitsburg PCH RAID PCI IDs (David Arcari) [1928789] - KVM: x86: Allow guests to see MSR_IA32_TSX_CTRL even if tsx=off (Paolo Bonzini) [1912448] - [sound] ALSA: hda/via: Fix runtime PM for Clevo W35xSS (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machines (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Enable mute and micmute LED on HP EliteBook 850 G7 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add two "Intel Reference board" SSID in the ALC256 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add mute LED quirk for more HP laptops (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Modify Dell platform name (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Fix speaker volume control on Lenovo C940 (Jaroslav Kysela) [1916102] - [sound] ALSA: ALSA/hda: apply jack fixup for the Acer Veriton N4640G/N6640G/N2510G (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Apply jack fixup for Quanta NL3 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add quirk for MSI-GP73 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Supported Dell fixed type headset (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Remove dummy lineout on Acer TravelMate P648/P658 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add supported for more Lenovo ALC285 Headset Button (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS Q524UQK with ALC255 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS X430UN with ALC256 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: make bass spk volume adjustable on a yoga laptop (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: Fix incorrect mutex unlock in silent_stream_disable() (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: packet buffer index must be set before reading value (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: always print pin NIDs as hexadecimal (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: fix silent stream for first playback to DP (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/conexant: add a new hda codec CX11970 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda: Fix regressions on clear and reconfig sysfs (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/proc - print DP-MST connections (Jaroslav Kysela) [1916102] - [sound] ALSA: hda - Fix the return value if cb func is already registered (Jaroslav Kysela) [1916102] - [sound] ALSA: mixart: Fix mutex deadlock (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add mute LED quirk to yet another HP x360 model (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Fix bass speaker DAC assignment on Asus Zephyrus G14 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add new codec supported for ALC897 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Enable headset of ASUS UX482EG & B9400CEA with ALC294 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Fixed Dell AIO wrong sound tone (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - HP Headset Mic can't detect after boot (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add supported mute Led for HP (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add some Clove SSID in the ALC293(ALC1220) (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add supported for Lenovo ThinkPad Headset Button (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Enable headphone for ASUS TM420 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Fixed HP headset Mic can't be detected (Jaroslav Kysela) [1916102] - [sound] ALSA: hda: Add Alderlake-S PCI ID and HDMI codec vid (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/generic: Add option to enforce preferred_dacs pairs (Jaroslav Kysela) [1916102] - [sound] ALSA: hda: prevent undefined shift in snd_hdac_ext_bus_get_link() (Jaroslav Kysela) [1916102] - [sound] ALSA: seq: oss: Avoid mutex lock for a long-time ioctl (Jaroslav Kysela) [1916102] - [fs] gfs2: Recursive gfs2_quota_hold in gfs2_iomap_end (Andreas Grunbacher) [1926852] - [net] netfilter: nf_tables: coalesce multiple notifications into one skbuff (Phil Sutter) [1855207] - [drm] drm/i915/rkl: new rkl ddc map for different PCH (Lyude Paul) [1910761] - [drm] drm/nouveau: fix dma syncing warning with debugging on (Lyude Paul) [1915548] - [drm] drm/i915: Update TGL and RKL HuC firmware versions (Lyude Paul) [1924209] - [drm] drm/i915/tgl, rkl: Make Wa_1606700617/22010271021 permanent (Lyude Paul) [1924209] - [drm] drm/i915: Update gen12 forcewake table (Lyude Paul) [1924209] - [drm] drm/i915: Rename FORCEWAKE_BLITTER to FORCEWAKE_GT (Lyude Paul) [1924209] - [drm] drm/i915/display/fbc: Implement WA 22010751166 (Lyude Paul) [1924209] - [drm] drm/i915: Tweaked Wa_14010685332 for PCHs used on gen11 platforms (Lyude Paul) [1924209] - [drm] drm/i915: Reorder hpd init vs. display resume (Lyude Paul) [1921868] - [drm] drm/i915/dp: Don't use DPCD backlights that need PWM enable/disable (Lyude Paul) [1885406] - [drm] drm/dp: Revert "drm/dp: Introduce EDID-based quirks" (Lyude Paul) [1885406] - [drm] drm/i915/dp: Allow forcing specific interfaces through enable_dpcd_backlight (Lyude Paul) [1885406] - [drm] drm/i915/dp: Enable Intel's HDR backlight interface (only SDR for now) (Lyude Paul) [1885406] - [drm] drm/i915: Keep track of pwm-related backlight hooks separately (Lyude Paul) [1885406] - [drm] drm/i915: Pass port to intel_panel_bl_funcs.get() (Lyude Paul) [1885406] - [drm] drm/i915/dp: Add register definitions for Intel HDR backlight interface (Lyude Paul) [1885406] - [drm] drm/i915/dp: Rename eDP VESA backlight interface functions (Lyude Paul) [1885406] - [drm] drm/i915: Pass down brightness values to enable/disable backlight callbacks (Lyude Paul) [1885406] - [drm] drm/i915: Rename pwm_* backlight callbacks to ext_pwm_* (Lyude Paul) [1885406] - [drm] drm/i915/dp: Program source OUI on eDP panels (Lyude Paul) [1885406] - [drm] drm/i915: refactor panel backlight control functions. (v2) (Lyude Paul) [1885406] - [drm] drm/i915/backlight: fix CPU mode backlight takeover on LPT (Lyude Paul) [1885406] - [drm] drm/i915/dpcd_bl: uncheck PWM_PIN_CAP when detect eDP backlight capabilities (Lyude Paul) [1885406] - [drm] drm/i915: panel: Add get_vbt_pwm_freq() helper (Lyude Paul) [1885406] - [drm] drm/i915/dp: Tweak initial dpcd backlight.enabled value (Lyude Paul) [1885406] - [drm] kms: handle mDP connectors (Lyude Paul) [1876992] - [drm] drm/i915/tgl: Fix Combo PHY DPLL fractional divider for 38.4MHz ref clock (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Add new cdclk table (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Handle HTI (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Add DPLL4 support (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Add initial workarounds (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Handle new DPCLKA_CFGCR0 layout (Lyude Paul) [1876992] - [drm] drm/i915: Update TGL and RKL DMC firmware versions (Lyude Paul) [1876992] - [drm] drm/i915/gt: Program mocs:63 for cache eviction on gen9 (Lyude Paul) [1876992] - [drm] drm/i915/gt: Limit frequency drop to RPe on parking (Lyude Paul) [1876992] - [drm] drm/i915/gt: Retain default context state across shrinking (Lyude Paul) [1876992] - [drm] drm/amdgpu/vcn3.0: remove old DPG workaround (Lyude Paul) [1876992] - [drm] drm/amdgpu/vcn3.0: stall DPG when WPTR/RPTR reset (Lyude Paul) [1876992] - [drm] drm/i915/gt: Fixup tgl mocs for PTE tracking (Lyude Paul) [1876992] - [drm] drm/amdgpu: add rlc iram and dram firmware support (Lyude Paul) [1876992] - [drm] drm/nouveau: fix relocations applying logic and a double-free (Lyude Paul) [1876992] - [drm] drm/amd/display: Avoid HDCP initialization in devices without output (Lyude Paul) [1876992] - [drm] drm/amd/amdgpu: fix null pointer in runtime pm (Lyude Paul) [1876992] - [drm] drm/amdgpu: update golden setting for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/amdgpu: fix a page fault (Lyude Paul) [1876992] - [drm] drm/amdgpu: fix SI UVD firmware validate resume fail (Lyude Paul) [1876992] - [drm] drm/i915/tgl: Fix Media power gate sequence (Lyude Paul) [1876992] - [drm] drm/i915: Handle max_bpc==16 (Lyude Paul) [1876992] - [drm] drm/amd/display: Add missing pflip irq for dcn2.0 (Lyude Paul) [1876992] - [drm] drm/gma500: Fix out-of-bounds access to struct drm_device.vblank (Lyude Paul) [1876992] - [drm] drm/i915: Correctly set SFC capability for video engines (Lyude Paul) [1876992] - [drm] drm/amd/display: Add missing pflip irq (Lyude Paul) [1876992] - [drm] drm/amd/pm: do not use ixFEATURE_STATUS for checking smc running (Lyude Paul) [1876992] - [drm] drm/amd/pm: perform SMC reset on suspend/hibernation (Lyude Paul) [1876992] - [drm] drm/amd/pm: correct the baco reset sequence for CI ASICs (Lyude Paul) [1876992] - [drm] drm/amdgpu: perform srbm soft reset always on SDMA resume (Lyude Paul) [1876992] - [drm] drm/i915/gem: Flush coherency domains on first set-domain-ioctl (Lyude Paul) [1876992] - [drm] drm/i915: Hold onto an explicit ref to i915_vma_work.pinned (Lyude Paul) [1876992] - [drm] drm/i915/gt: Use the local HWSP offset during submission (Lyude Paul) [1876992] - [drm] drm/i915: Fix encoder lookup during PSR atomic check (Lyude Paul) [1876992] - [drm] drm/nouveau/gem: fix "refcount_t: underflow; use-after-free" (Lyude Paul) [1876992] - [drm] drm/nouveau/nouveau: fix the start/end range for migration (Lyude Paul) [1876992] - [drm] drm/amd/display: adding ddc_gpio_vga_reg_list to ddc reg def'ns (Lyude Paul) [1876992] - [drm] drm/amd/display: Fixed panic during seamless boot (Lyude Paul) [1876992] - [drm] drm/amdgpu: add DID for navi10 blockchain SKU (Lyude Paul) [1876992] - [drm] drm/amdgpu: disable DCN and VCN for navi10 blockchain SKU(v3) (Lyude Paul) [1876992] - [drm] drm/amdgpu: resolved ASD loading issue on sienna (Lyude Paul) [1876992] - [drm] drm/amdgpu: update golden setting for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/nouveau/device: fix changing endianess code to work on older GPUs (Lyude Paul) [1876992] - [drm] drm/nouveau/kms/nv50-: Program notifier offset before requesting disp caps (Lyude Paul) [1876992] - [drm] drm/i915: Restore ILK-M RPS support (Lyude Paul) [1876992] - [drm] drm/i915: Reject 90/270 degree rotated initial fbs (Lyude Paul) [1876992] - [drm] drm/i915: Use the active reference on the vma while capturing (Lyude Paul) [1876992] - [drm] drm/i915: Mark ininitial fb obj as WT on eLLC machines to avoid rcu lockup during fbdev init (Lyude Paul) [1876992] - [drm] drm/i915: Exclude low pages (128KiB) of stolen from use (Lyude Paul) [1876992] - [drm] drm/i915: Drop runtime-pm assert from vgpu io accessors (Lyude Paul) [1876992] - [drm] drm/i915/gt: Delay execlist processing for tgl (Lyude Paul) [1876992] - [drm] drm/i915/gt: Undo forced context restores after trivial preemptions (Lyude Paul) [1876992] - [drm] drm/i915/gt: Initialize reserved and unspecified MOCS indices (Lyude Paul) [1876992] - [drm] drm/i915: Fix TGL DKL PHY DP vswing handling (Lyude Paul) [1876992] - [drm] drm/i915: Avoid mixing integer types during batch copies (Lyude Paul) [1876992] - [drm] drm/i915: Cancel outstanding work after disabling heartbeats on an engine (Lyude Paul) [1876992] - [drm] drm/i915: Break up error capture compression loops with cond_resched() (Lyude Paul) [1876992] - [drm] drm/i915/gt: Always send a pulse down the engine after disabling heartbeat (Lyude Paul) [1876992] - [drm] drm/i915/gem: Always test execution status on closing the context (Lyude Paul) [1876992] - [drm] drm/i915/gem: Prevent using pgprot_writecombine() if PAT is not supported (Lyude Paul) [1876992] - [drm] drm/i915/gem: Avoid implicit vmap for highmem on x86-32 (Lyude Paul) [1876992] - [drm] drm/amdgpu: correct the cu and rb info for sienna cichlid (Lyude Paul) [1876992] - [drm] drm/amd/psp: Fix sysfs: cannot create duplicate filename (Lyude Paul) [1876992] - [drm] drm/amd/swsmu: add missing feature map for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/amd/pm: fix pp_dpm_fclk (Lyude Paul) [1876992] - [drm] drm/amd/pm: increase mclk switch threshold to 200 us (Lyude Paul) [1876992] - [drm] drm/amdgpu/swsmu: drop smu i2c bus on navi1x (Lyude Paul) [1876992] - [drm] drm/ttm: fix eviction valuable range check (Lyude Paul) [1876992] - [drm] drm/amd/display: Fix kernel panic by dal_gpio_open() error (Lyude Paul) [1876992] - [drm] drm/amd/display: Don't invoke kgdb_breakpoint() unconditionally (Lyude Paul) [1876992] - [drm] drm/amdgpu: increase the reserved VM size to 2MB (Lyude Paul) [1876992] - [drm] drm/amdgpu: add function to program pbb mode for sienna cichlid (Lyude Paul) [1876992] - [drm] drm/amd/display: Avoid MST manager resource leak (Lyude Paul) [1876992] - [drm] drm/amdkfd: Use same SQ prefetch setting as amdgpu (Lyude Paul) [1876992] - [drm] drm/amdgpu: correct the gpu reset handling for job != NULL case (Lyude Paul) [1876992] - [drm] drm/amdgpu: update golden setting for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/amdgpu: vcn and jpeg ring synchronization (Lyude Paul) [1876992] - [drm] drm/amd/display: Increase timeout for DP Disable (Lyude Paul) [1876992] - [drm] drm/amd/display: Fix incorrect backlight register offset for DCN (Lyude Paul) [1876992] - [drm] drm/amdgpu: don't map BO in reserved region (Lyude Paul) [1876992] - [drm] drm/shme-helpers: Fix dma_buf_mmap forwarding bug (Lyude Paul) [1876992] - [drm] drm/i915: Force VT'd workarounds when running as a guest OS (Lyude Paul) [1876992] - [drm] drm/amd/display: Avoid set zero in the requested clk (Lyude Paul) [1876992] - [drm] drm/amd/display: HDMI remote sink need mode validation for Linux (Lyude Paul) [1876992] - [drm] drm/amdgpu: No sysfs, not an error condition (Lyude Paul) [1876992] - [drm] drm/amd/display: Check clock table return (Lyude Paul) [1876992] - [drm] drm/bridge/synopsys: dsi: add support for non-continuous HS clock (Lyude Paul) [1876992] - [drm] drm/vkms: avoid warning in vkms_get_vblank_timestamp (Lyude Paul) [1876992] - [drm] drm/bridge_connector: Set default status connected for eDP connectors (Lyude Paul) [1876992] - [drm] drm/scheduler: Scheduler priority fixes (v2) (Lyude Paul) [1876992] - [drm] drm/amdgpu: restore ras flags when user resets eeprom(v2) (Lyude Paul) [1876992] - [drm] drm/i915/gem: Serialise debugfs i915_gem_objects with ctx->mutex (Lyude Paul) [1876992] - [drm] drm/amd/display: Disconnect pipe separetely when disable pipe split (Lyude Paul) [1876992] - [drm] drm/hisilicon: Code refactoring for hibmc_drv_de (Lyude Paul) [1876992] - [drm] drm/amd/display: Screen corruption on dual displays (DP+USB-C) (Lyude Paul) [1876992] - [drm] drm: fix double free for gbo in drm_gem_vram_init and drm_gem_vram_create (Lyude Paul) [1876992] - [drm] drm/amdgpu: Fix invalid number of character '{' in amdgpu_acpi_init (Lyude Paul) [1876992] - [drm] drm/amdgpu: fix max_entries calculation v4 (Lyude Paul) [1876992] - [drm] drm/crc-debugfs: Fix memleak in crc_control_write (Lyude Paul) [1876992] - [drm] drm/gma500: fix error check (Lyude Paul) [1876992] - [drm] drm/amd/display: fix potential integer overflow when shifting 32 bit variable bl_pwm (Lyude Paul) [1876992] - [drm] drm/vkms: add missing platform_device_unregister() in vkms_init() (Lyude Paul) [1876992] - [drm] drm/vgem: add missing platform_device_unregister() in vgem_init() (Lyude Paul) [1876992] - [drm] drm/amd/display: Fix wrong return value in dm_update_plane_state() (Lyude Paul) [1876992] - [drm] drm/vkms: fix xrgb on compute crc (Lyude Paul) [1876992] - [iommu] iommu/amd: Set iommu->int_enabled consistently when interrupts are set up (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Fix IOMMU interrupt generation in X2APIC mode (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Fix union of bitfields in intcapxt support (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Fix kerneldoc comments (Vitaly Kuznetsov) [1915038] - [x86] x86/irq: Prepare consolidation of irq_alloc_info (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Use msi_msg shadow structs (Vitaly Kuznetsov) [1915038] - [iommu] x86_irq_Rename_X86_IRQ_ALLOC_TYPE_MSI_to_reflect_PCI_dependency (Vitaly Kuznetsov) [1915038] - [netdrv] Revert "e1000e: disable s0ix entry and exit flows for ME systems" (Ken Cox) [1872412] - [netdrv] e1000e: fix S0ix flow to allow S0i3.2 subset entry (Ken Cox) [1872412]- dm table: fix DAX iterate_devices based device capability checks (Mike Snitzer) [1905679] - dm table: fix various whitespace issues with recent DAX code (Mike Snitzer) [1905679] - dm table: fix dax_dev NULL dereference in device_synchronous() (Mike Snitzer) [1905679] - dm: enable synchronous dax (Mike Snitzer) [1905679] - dm table: fix iterate_devices based device capability checks (Mike Snitzer) [1905679] - dm: remove special-casing of bio-based immutable singleton target on NVMe (Mike Snitzer) [1905679] - [s390] s390/dasd: Fix inconsistent kobject removal (Philipp Rudo) [1928106] - [powerpc] powerpc/perf/hv-24x7: Dont create sysfs event files for dummy events (Steve Best) [1927730] - [powerpc] powerpc/pseries/dlpar: handle ibm, configure-connector delay status (Steve Best) [1927371] - [x86] x86/kvm: Increase KVM_MAX_VCPUS to 2048 (Eduardo Habkost) [1840923]- Unbreak mount_capable() (Scott Mayhew) [1903983]- [powerpc] powerpc: fix wrong backport on Kernel lockdown for power (Diego Domingos) [1928778] - [powerpc] powerpc/kexec_file: fix FDT size estimation for kdump kernel (Steve Best) [1928105] - [kernel] sched/features: Distinguish between NORMAL and DEADLINE hrtick (Juri Lelli) [1912118] - [kernel] sched/features: Fix hrtick reprogramming (Juri Lelli) [1912118] - [scsi] scsi: lpfc: Fix EEH encountering oops with NVMe traffic (Dick Kennedy) [1854776] - [scsi] scsi: lpfc: Prevent duplicate requests to unregister with cpuhp framework (Dick Kennedy) [1894960] - [target] scsi: target: iscsi: Fix cmd abort fabric stop race (Maurizio Lombardi) [1908215]- [net] netfilter: nft_dynset: add timeout extension to template (Florian Westphal) [1906915] - [net] netfilter: nftables: fix possible UAF over chains from packet path in netns (Florian Westphal) [1906915] - [net] netfilter: flowtable: fix tcp and udp header checksum update (Florian Westphal) [1906915] - [net] netfilter: xt_recent: Fix attempt to update deleted entry (Florian Westphal) [1906915] - [net] netfilter: conntrack: connection timeout after re-register (Florian Westphal) [1906915] - [netdrv] ice: Fix MSI-X vector fallback logic (Jonathan Toppins) [1896639 1877645] - [netdrv] ice: Don't allow more channels than LAN MSI-X available (Jonathan Toppins) [1896639 1877645] - [net] netfilter: nf_nat: Fix memleak in nf_nat_init (Florian Westphal) [1906915] - [net] netfilter: xt_RATEEST: reject non-null terminated string from userspace (Florian Westphal) [1906915] - [include] net: flow_dissector: Wrap unionized VLAN fields in a struct (Florian Westphal) [1906915] - [net] netfilter: x_tables: Switch synchronization to RCU (Florian Westphal) [1906915] - [net] netfilter: nftables_offload: build mask based from the matching bytes (Florian Westphal) [1906915] - [net] netfilter: nft_payload: add C-VLAN offload support (Florian Westphal) [1906915] - [net] netfilter: nft_payload: add VLAN offload support (Florian Westphal) [1906915] - [net] netfilter: nf_tables_offload: allow ethernet interface type only (Florian Westphal) [1906915] - [net] netfilter: nftables_offload: set address type in control dissector (Florian Westphal) [1906915] - [net] netfilter: nf_tables: avoid false-postive lockdep splat (Florian Westphal) [1906915] - [net] netfilter: nf_tables: missing validation from the abort path (Florian Westphal) [1906915] - [net] netfilter: nftables: fix netlink report logic in flowtable and genid (Florian Westphal) [1906915] - [include] netfilter: nf_tables: constify nft_reg_load{8, 16, 64}() (Florian Westphal) [1906915] - [net] netfilter: nf_tables: Introduce new 64-bit helper register functions (Florian Westphal) [1906915] - [include] netfilter: nf_tables: drop include of module.h from nf_tables.h (Florian Westphal) [1906915] - [net] netfilter: nf_fwd_netdev: clear timestamp in forwarding path (Florian Westphal) [1906915] - [net] netfilter: ipset: prevent uninit-value in hash_ip6_add (Florian Westphal) [1906915] - [net] netfilter: use actual socket sk rather than skb sk when routing harder (Florian Westphal) [1906915] - [net] netfilter: ipv4: remove useless export_symbol (Florian Westphal) [1906915] - [net] netfilter: conntrack: don't set related state for different outer address (Florian Westphal) [1906915] - [fs] xfs: don't catch dax+reflink inodes as corruption in verifier (Bill O'Donnell) [1915510]- [powerpc] powerpc: Don't enable FSCR_SCV in init_FSCR_power9() (Gustavo Duarte) [1928399] - [netdrv] ibmvnic: Clear failover_pending if unable to schedule (Steve Best) [1926365] - [netdrv] ibmvnic: change IBMVNIC_MAX_IND_DESCS to 16 (Steve Best) [1928243] - [tools] perf powerpc: Fix printf conversion specifier for IP addresses (Steve Best) [1928209] - [tools] perf powerpc: Fix gap between kernel end and module start (Steve Best) [1928209] - [netdrv] i40e: Revert "i40e: don't report link up for a VF who hasn't enabled queues" (Stefan Assmann) [1838733] - [netdrv] i40e: acquire VSI pointer only after VF is initialized (Stefan Assmann) [1838733] - [netdrv] i40e: fix potential NULL pointer dereferencing (Stefan Assmann) [1838733] - [netdrv] i40e: Fix Error I40E_AQ_RC_EINVAL when removing VFs (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: clear the status bits for the next_to_use descriptor (Stefan Assmann) [1838733] - [netdrv] i40e: avoid premature Rx buffer reuse (Stefan Assmann) [1838733] - [netdrv] i40e: Remove unnecessary sw_ring access from xsk Tx (Stefan Assmann) [1838733] - [netdrv] i40e: Fix removing driver while bare-metal VFs pass traffic (Stefan Assmann) [1838733] - [netdrv] i40e: report correct VF link speed when link state is set to enable (Stefan Assmann) [1838733] - [netdrv] i40e: remove redundant assignment (Stefan Assmann) [1838733] - [netdrv] i40e: Fix MAC address setting for a VF via Host/VM (Stefan Assmann) [1838733] - [netdrv] i40e: Allow changing FEC settings on X722 if supported by FW (Stefan Assmann) [1838733] - [netdrv] net: intel: Remove in_interrupt() warnings (Stefan Assmann) [1838733] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: uninitialized variable in i40e_clean_rx_irq_zc() (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: move buffer allocation out of the Rx processing loop (Stefan Assmann) [1838733] - [netdrv] i40e: use 16B HW descriptors instead of 32B (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: remove HW descriptor prefetch in AF_XDP path (Stefan Assmann) [1838733] - [netdrv] i40e: optimise prefetch page refcount (Stefan Assmann) [1838733] - [netdrv] i40e: not compute affinity_mask for IRQ (Stefan Assmann) [1838733] - [netdrv] i40e: Fix crash during removing i40e driver (Stefan Assmann) [1838733] - [netdrv] i40e: Set RX_ONLY mode for unicast promiscuous on VLAN (Stefan Assmann) [1838733] - [netdrv] PCI: Use 'pci_channel_state_t' instead of 'enum pci_channel_state' (Stefan Assmann) [1838733] - [netdrv] i40e: introduce new dump desc XDP command (Stefan Assmann) [1838733] - [netdrv] i40e: add XDP ring statistics to dump VSI debug output (Stefan Assmann) [1838733] - [netdrv] i40e: add XDP ring statistics to VSI stats (Stefan Assmann) [1838733] - [netdrv] i40e: move check of full Tx ring to outside of send loop (Stefan Assmann) [1838733] - [netdrv] i40e: eliminate division in napi_poll data path (Stefan Assmann) [1838733] - [netdrv] i40e: optimize AF_XDP Tx completion path (Stefan Assmann) [1838733] - [netdrv] i40e: Add support for a new feature Total Port Shutdown (Stefan Assmann) [1838733] - [netdrv] ethernet/intel: Convert fallthrough code comments (Stefan Assmann) [1838733] - [netdrv] i40e: Add support for 5Gbps cards (Stefan Assmann) [1838733] - [netdrv] net/intel: remove driver versions from Intel drivers (Stefan Assmann) [1838733] - [netdrv] i40e: Add a check to see if MFS is set (Stefan Assmann) [1838733] - [netdrv] i40e: detect and log info about pre-recovery mode (Stefan Assmann) [1838733] - [netdrv] i40e: make PF wait reset loop reliable (Stefan Assmann) [1838733] - [netdrv] i40e: remove unused defines (Stefan Assmann) [1838733] - [netdrv] i40e: Move client header location (Stefan Assmann) [1838733] - [netdrv] i40e: protect ring accesses with READ- and WRITE_ONCE (Stefan Assmann) [1838733] - [netdrv] i40e: Make i40e_shutdown_adminq() return void (Stefan Assmann) [1838733] - [netdrv] i40e: trivial fixup of comments in i40e_xsk.c (Stefan Assmann) [1838733] - [netdrv] i40e: Use scnprintf() for avoiding potential buffer overflow (Stefan Assmann) [1838733] - [netdrv] team: protect features update by RCU to avoid deadlock (Josef Oskera) [1909593] - [tools] bpf: selftests: remove test_progs LSM test (Yauheni Kaliuta) [1925911] - [net] bpf: Fix a verifier failure with xor (Yauheni Kaliuta) [1925911] - [tools] selftests: Remove fmod_ret from test_overhead (Jiri Olsa) [1925911] - [s390] s390/kdump: fix out-of-memory with PCI (Philipp Rudo) [1927744] - [x86] x86/intel_split_lock: Really Disable split lock detector by default in RHEL8 (Prarit Bhargava) [1924578] - [scsi] megaraid_sas: re-add certain pci-ids as unsupported (Tomas Henzl) [1761485] - [scsi] megaraid_sas: mark unsupported devices (Tomas Henzl) [1761485] - [pci] rh_taint: add support function (Tomas Henzl) [1761485] - [powerpc] powerpc/xmon: Restrict when kernel is locked down (Diego Domingos) [1853307] - [powerpc] powerpc/xmon: add read-only mode (Diego Domingos) [1853307] - [powerpc] powerpc: lock down kernel in secure boot mode (Diego Domingos) [1853307] - [net] fix iteration for sctp transport seq_files (Xin Long) [1916824] - [tools] x86: xen: insn: Decode Xen and KVM emulate-prefix signature (Michael Petlan) [1867733] - [tools] objtool: Ignore intentional differences for the x86 insn decoder (Michael Petlan) [1867733] - [x86] x86/insn: Add Control-flow Enforcement (CET) instructions to the opcode map (Michael Petlan) [1867733] - [x86] x86/decoder: Add TEST opcode to Group3-2 (Michael Petlan) [1867733] - [x86] x86/insn: Add some more Intel instructions to the opcode map (Michael Petlan) [1867733] - [x86] x86/insn: Add some Intel instructions to the opcode map (Michael Petlan) [1867733] - [net] udp: call udp_encap_enable for v6 sockets when enabling encap (Xin Long) [1907754] - [fs] close_range: unshare all fds for CLOSE_RANGE_UNSHARE | CLOSE_RANGE_CLOEXEC (Pavel Reichl) [1900674] - [fs] fs, close_range: add flag CLOSE_RANGE_CLOEXEC (Pavel Reichl) [1900674] - [tools] tests: close_range - Replace clone3 with clone (Pavel Reichl) [1900674] - [tools] selftests: core: use SKIP instead of XFAIL in close_range_test.c (Pavel Reichl) [1900674] - [tools] tools headers API: Update close_range affected files (Pavel Reichl) [1900674] - [tools] tests: add CLOSE_RANGE_UNSHARE tests (Pavel Reichl) [1900674] - [fs] close_range: add CLOSE_RANGE_UNSHARE (Pavel Reichl) [1900674] - [tools] tests: add close_range() tests (Pavel Reichl) [1900674] - [powerpc] arch: wire-up close_range() (Pavel Reichl) [1900674] - [fs] open: add close_range() (Pavel Reichl) [1900674] - [x86] x86/sgx: mark tech preview (Vladis Dronov) [1660337] - [tools] tools headers cpufeatures: Sync with the kernel sources (Vladis Dronov) [1660337] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Vladis Dronov) [1660337] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Vladis Dronov) [1660337] - [x86] x86/sgx: Drop racy follow_pfn() check (Vladis Dronov) [1660337] - [x86] x86/sgx: Fix the return type of sgx_init() (Vladis Dronov) [1660337] - [x86] x86/sgx: Return -EINVAL on a zero length buffer in sgx_ioc_enclave_add_pages() (Vladis Dronov) [1660337] - [x86] x86/sgx: Fix a typo in kernel-doc markup (Vladis Dronov) [1660337] - [x86] x86/sgx: Fix sgx_ioc_enclave_provision() kernel-doc comment (Vladis Dronov) [1660337] - [x86] x86/sgx: Return -ERESTARTSYS in sgx_ioc_enclave_add_pages() (Vladis Dronov) [1660337] - [tools] selftests/sgx: Use a statically generated 3072-bit RSA key (Vladis Dronov) [1660337] - [x86] x86/sgx: Clarify 'laundry_list' locking (Vladis Dronov) [1660337] - [documentation] Documentation/x86: Document SGX kernel architecture (Vladis Dronov) [1660337] - [x86] x86/sgx: Add ptrace() support for the SGX driver (Vladis Dronov) [1660337] - [x86] x86/sgx: Add a page reclaimer (Vladis Dronov) [1660337] - [tools] selftests/x86: Add a selftest for SGX (Vladis Dronov) [1660337] - [x86] x86/vdso: Implement a vDSO for Intel SGX enclave call (Vladis Dronov) [1660337] - [mm] x86/traps: Attempt to fixup exceptions in vDSO before signaling (Vladis Dronov) [1660337] - [mm] x86/fault: Add a helper function to sanitize error code (Vladis Dronov) [1660337] - [x86] x86/vdso: Add support for exception fixup in vDSO functions (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_PROVISION (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_INIT (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_ADD_PAGES (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_CREATE (Vladis Dronov) [1660337] - [x86] x86/sgx: Add an SGX misc driver interface (Vladis Dronov) [1660337] - [mm] mm: Add 'mprotect' hook to struct vm_operations_struct (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX page allocator functions (Vladis Dronov) [1660337] - [x86] x86/cpu/intel: Add a nosgx kernel parameter (Vladis Dronov) [1660337] - [x86] x86/cpu/intel: Detect SGX support (Vladis Dronov) [1660337] - [mm] x86/mm: Signal SIGSEGV with PF_SGX (Vladis Dronov) [1660337] - [x86] x86/sgx: Initialize metadata for Enclave Page Cache (EPC) sections (Vladis Dronov) [1660337] - [x86] x86/{cpufeatures, msr}: Add Intel SGX Launch Control hardware bits (Vladis Dronov) [1660337] - [x86] x86/cpufeatures: Add Intel SGX hardware bits (Vladis Dronov) [1660337] - [x86] x86/sgx: Add wrappers for ENCLS functions (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX architectural data structures (Vladis Dronov) [1660337] - [mm] x86/fault: Make error_code sanitization more robust (Vladis Dronov) [1660337] - [video] vgacon: remove software scrollback support (Chris von Recklinghausen) [1883596] - [tools] libbpf: fix backport of "libbpf: Remove any use of reallocarray() in libbpf" (Jiri Benc) [1924711] - [net] bpf: Prevent double bpf_prog_put call from bpf_tracing_prog_attach (Jiri Benc) [1924711] - [tools] selftests/bpf: Adding test for arg dereference in extension trace (Jiri Benc) [1924711] - [tools] selftests: Add selftest for disallowing modify_return attachment to freplace (Jiri Benc) [1924711] - [tools] selftests: Add test for multiple attachments of freplace program (Jiri Benc) [1924711] - [tools] selftests/bpf: Turn fexit_bpf2bpf into test with subtests (Jiri Benc) [1924711] - [tools] libbpf: Add support for freplace attachment in bpf_link_create (Jiri Benc) [1924711] - [net] bpf: Fix context type resolving for extension programs (Jiri Benc) [1924711] - [net] bpf: Support attaching freplace programs to multiple attach points (Jiri Benc) [1924711] - [net] bpf: Move prog->aux->linked_prog and trampoline into bpf_link on attach (Jiri Benc) [1924711] - [net] bpf: verifier: refactor check_attach_btf_id() (Jiri Benc) [1924711] - [net] bpf: change logging calls from verbose() to bpf_log() and use log pointer (Jiri Benc) [1924711] - [net] bpf: disallow attaching modify_return tracing functions to other BPF programs (Jiri Benc) [1924711] - [mm] kasan: fix incorrect arguments passing in kasan_add_zero_shadow (Waiman Long) [1921394] - [mm] kasan: fix unaligned address is unhandled in kasan_remove_zero_shadow (Waiman Long) [1921394] - [mm] mm: memcg/slab: optimize objcg stock draining (Waiman Long) [1921394] - [mm] mm: don't wake kswapd prematurely when watermark boosting is disabled (Waiman Long) [1921394] - [mm] mm/vmalloc.c: fix kasan shadow poisoning size (Waiman Long) [1921394] - [mm] mm/vmalloc: Fix unlock order in s_stop() (Waiman Long) [1921394] - [mm] mm/swapfile: do not sleep with a spin lock held (Waiman Long) [1921394] - [mm] mm: list_lru: set shrinker map bit when child nr_items is not zero (Waiman Long) [1921394] - [mm] mm: mempolicy: fix potential pte_unmap_unlock pte error (Waiman Long) [1921394] - [mm] mm/mmu_notifier: fix mmget() assert in __mmu_interval_notifier_insert (Waiman Long) [1921394] - [mm] mm/swapfile.c: fix potential memory leak in sys_swapon (Waiman Long) [1921394] - [mm] mm: validate pmd after splitting (Waiman Long) [1921394] - [mm] hugetlb_cgroup: convert comma to semicolon (Waiman Long) [1921394] - [mm] mm/memory_hotplug: fix unpaired mem_hotplug_begin/done (Waiman Long) [1921394] - [mm] khugepaged: adjust VM_BUG_ON_MM() in __khugepaged_enter() (Waiman Long) [1921394] - [mm] khugepaged: khugepaged_test_exit() check mmget_still_valid() (Waiman Long) [1921394] - [mm] mm/hugetlb: fix calculation of adjust_range_if_pmd_sharing_possible (Waiman Long) [1921394] - [mm] mm/hugetlb.c: clean code by removing unnecessary initialization (Waiman Long) [1921394] - [mm] mm/sparse: never partially remove memmap for early section (Waiman Long) [1921394] - [mm] mm/sparse: fix kernel crash with pfn_section_valid check (Waiman Long) [1921394] - [mm] mm/shuffle: don't move pages between zones and don't read garbage memmaps (Waiman Long) [1921394] - [mm] mm/sparse: rename pfn_present() to pfn_in_present_section() (Waiman Long) [1921394] - [powerpc] powerpc/pseries: Advance pfn if section is not present in lmb_is_removable() (Waiman Long) [1921394] - [powerpc] powerpc/pseries/hotplug-memory: Change rc variable to bool (Waiman Long) [1921394] - [mm] mm/gup: fix fixup_user_fault() on multiple retries (Waiman Long) [1921394] - [mm] mm/gup: Let __get_user_pages_locked() return -EINTR for fatal signal (Waiman Long) [1921394] - [mm] mm/mempolicy: Allow lookup_node() to handle fatal signal (Waiman Long) [1921394] - [include] include/linux/memremap.h: remove stale comments (Waiman Long) [1921394] - [mm] mm/sparsemem: get address to page struct instead of address to pfn (Waiman Long) [1921394] - [fs] hibernate: Allow uswsusp to write to swap (Waiman Long) [1921394] - [mm] mm/hotplug: fix hot remove failure in SPARSEMEM|!VMEMMAP case (Waiman Long) [1921394] - [mm] mm/hmm: add missing call to hmm_pte_need_fault in HMM_PFN_SPECIAL handling (Waiman Long) [1921394] - [mm] mm/hmm: add missing unmaps of the ptep during hmm_vma_handle_pte() (Waiman Long) [1921394] - [mm] mm/hmm: allow snapshot of the special zero page (Waiman Long) [1921394] - [mm] mm/hmm: a few more C style and comment clean ups (Waiman Long) [1921394] - [mm] mm/sparse.c: do not waste pre allocated memmap space (Waiman Long) [1921394] - [mm] mm/sparse: consistently do not zero memmap (Waiman Long) [1921394] - [mm] mm/gup: fix a misnamed "write" argument, and a related bug (Waiman Long) [1921394] - [powerpc] treewide: add checks for the return value of memblock_alloc*() (Waiman Long) [1921394] - [kvm] KVM: x86: Expose AVX512_FP16 for supported CPUID (Paul Lai) [1838734] - [x86] x86: Enumerate AVX512 FP16 CPUID feature flag (Paul Lai) [1838734] - [kvm] x86/kvm: Expose TSX Suspend Load Tracking feature (Paul Lai) [1838734] - [net] sched: act_ct: enable stats for HW offloaded entries (Marcelo Leitner) [1909257] - [scsi] scsi: fnic: Validate io_req before others (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Set scsi_set_resid() only for underflow (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Change shost_printk() to FNIC_MAIN_DBG() (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Avoid looping in TRANS ETH on unload (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Change shost_printk() to FNIC_FCS_DBG() (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Simplify the return expression of vnic_wq_copy_alloc() (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Fix inconsistent format argument type in fnic_debugfs.c (Govindarajulu Varadarajan) [1845720] - [x86] perf/x86/intel/uncore: Fix the scale of the IMC free-running events (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Reduce the number of CBOX counters (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Update Ice Lake uncore units (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Split the Ice Lake and Tiger Lake MSR uncore support (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Support PCIe3 unit on Snow Ridge (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Generic support for the PCI sub driver (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_pmu_unregister() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_pmu_register() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_find_dev_pmu() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_get_dev_die_info() (Michael Petlan) [1884818 1908305]- [mmc] mmc: sdhci-acpi: For amd device set driver type as MMC_SET_DRIVER_TYPE_A (David Arcari) [1906067] - [pinctrl] pinctrl: Added IRQF_SHARED flag for amd-pinctrl driver (David Arcari) [1906067] - [block] block: export blk_mq_make_request (Ming Lei) [1917913] - [platform] platform/x86: dell-wmi-sysman: fix a NULL pointer dereference (Perry Yuan) [1922587] - [platform] platform/x86: dell-wmi-sysman: work around for BIOS bug (Juan Martinez) [1504859] - [platform] platform/x86: dell-wmi-sysman: fix init_bios_attributes() error handling (Juan Martinez) [1504859] - [platform] platform/x86/dell-wmi-sysman: Make some symbols static (Juan Martinez) [1504859] - [platform] platform/x86/dell-wmi-sysman: Make wmi_sysman_kobj_sysfs_ops static (Juan Martinez) [1504859] - [documentation] docs: ABI: sysfs-class-firmware-attributes: solve some warnings (Juan Martinez) [1504859] - [platform] platform/x86: Use appropriate module alias macro for this kernel (Juan Martinez) [1504859] - [platform] platform/x86: Introduce support for Systems Management Driver over WMI for Dell Systems (Juan Martinez) [1504859] - [md] dm: eliminate potential source of excessive kernel log noise (Mike Snitzer) [1876840] - [scsi] scsi: sd: Suppress spurious errors when WRITE SAME is being disabled (Ewan Milne) [1871060] - [net] libceph, ceph: disambiguate ceph_connection_operations handlers (Jeff Layton) [1893177] - [net] libceph: zero out session key and connection secret (Jeff Layton) [1893177] - [include] libceph: add __maybe_unused to DEFINE_MSGR2_FEATURE (Jeff Layton) [1893177] - [net] libceph: align session_key and con_secret to 16 bytes (Jeff Layton) [1893177] - [net] libceph: fix auth_signature buffer allocation in secure mode (Jeff Layton) [1893177] - [fs] ceph: reencode gid_list when reconnecting (Jeff Layton) [1893177] - [net] libceph: drop ceph_auth_{create, update}_authorizer() (Jeff Layton) [1893177] - [fs] libceph, ceph: make use of __ceph_auth_get_authorizer() in msgr1 (Jeff Layton) [1893177] - [net] libceph, ceph: implement msgr2.1 protocol (crc and secure modes) (Jeff Layton) [1893177] - [net] libceph: introduce connection modes and ms_mode option (Jeff Layton) [1893177] - [block] libceph, rbd: ignore addr->type while comparing in some cases (Jeff Layton) [1893177] - [net] libceph, ceph: get and handle cluster maps with addrvecs (Jeff Layton) [1893177] - [net] libceph: factor out finish_auth() (Jeff Layton) [1893177] - [net] libceph: drop ac->ops->name field (Jeff Layton) [1893177] - [net] libceph: amend cephx init_protocol() and build_request() (Jeff Layton) [1893177] - [net] libceph, ceph: incorporate nautilus cephx changes (Jeff Layton) [1893177] - [net] libceph: safer en/decoding of cephx requests and replies (Jeff Layton) [1893177] - [net] libceph: more insight into ticket expiry and invalidation (Jeff Layton) [1893177] - [net] libceph: move msgr1 protocol specific fields to its own struct (Jeff Layton) [1893177] - [net] libceph: move msgr1 protocol implementation to its own file (Jeff Layton) [1893177] - [net] libceph: use sendpage_ok() in ceph_tcp_sendpage() (Jeff Layton) [1893177] - [net] net: introduce helper sendpage_ok() in include/linux/net.h (Jeff Layton) [1893177] - [net] libceph: separate msgr1 protocol implementation (Jeff Layton) [1893177] - [net] libceph: export remaining protocol independent infrastructure (Jeff Layton) [1893177] - [net] libceph: export zero_page (Jeff Layton) [1893177] - [net] libceph: rename and export con->flags bits (Jeff Layton) [1893177] - [net] libceph: rename and export con->state states (Jeff Layton) [1893177] - [net] libceph: make con->state an int (Jeff Layton) [1893177] - [net] libceph: don't export ceph_messenger_{init_fini}() to modules (Jeff Layton) [1893177] - [net] libceph: make sure our addr->port is zero and addr->nonce is non-zero (Jeff Layton) [1893177] - [net] libceph: factor out ceph_con_get_out_msg() (Jeff Layton) [1893177] - [net] libceph: change ceph_con_in_msg_alloc() to take hdr (Jeff Layton) [1893177] - [net] libceph: change ceph_msg_data_cursor_init() to take cursor (Jeff Layton) [1893177] - [net] libceph: handle discarding acked and requeued messages separately (Jeff Layton) [1893177] - [net] libceph: drop msg->ack_stamp field (Jeff Layton) [1893177] - [net] libceph: remove redundant session reset log message (Jeff Layton) [1893177] - [net] libceph: clear con->peer_global_seq on RESETSESSION (Jeff Layton) [1893177] - [net] libceph: rename reset_connection() to ceph_con_reset_session() (Jeff Layton) [1893177] - [net] libceph: split protocol reset bits out of reset_connection() (Jeff Layton) [1893177] - [net] libceph: don't call reset_connection() on version/feature mismatches (Jeff Layton) [1893177] - [net] libceph: lower exponential backoff delay (Jeff Layton) [1893177] - [net] libceph: include middle_len in process_message() dout (Jeff Layton) [1893177] - [fs] ceph: implement updated ceph_mds_request_head structure (Jeff Layton) [1893177] - [fs] ceph: clean up argument lists to __prepare_send_request and __send_request (Jeff Layton) [1893177] - [fs] ceph: take a cred reference instead of tracking individual uid/gid (Jeff Layton) [1893177] - [fs] ceph: don't reach into request header for readdir info (Jeff Layton) [1893177] - [fs] ceph: set osdmap epoch for setxattr (Jeff Layton) [1893177] - [fs] ceph: remove redundant assignment to variable i (Jeff Layton) [1893177] - [fs] ceph: add ceph.caps vxattr (Jeff Layton) [1893177] - [fs] ceph: when filling trace, call ceph_get_inode outside of mutexes (Jeff Layton) [1893177] - [fs] Revert "ceph: allow rename operation under different quota realms" (Jeff Layton) [1893177] - [fs] ceph: fix inode refcount leak when ceph_fill_inode on non-I_NEW inode fails (Jeff Layton) [1893177] - [fs] ceph: downgrade warning from mdsmap decode to debug (Jeff Layton) [1893177] - [fs] ceph: fix race in concurrent __ceph_remove_cap invocations (Jeff Layton) [1893177] - [fs] ceph: pass down the flags to grab_cache_page_write_begin (Jeff Layton) [1893177] - [fs] ceph: add ceph.{cluster_fsid/client_id} vxattrs (Jeff Layton) [1893177] - [fs] ceph: add status debugfs file (Jeff Layton) [1893177] - [include] libceph: remove unused port macros (Jeff Layton) [1893177] - [fs] ceph: ensure we have Fs caps when fetching dir link count (Jeff Layton) [1893177] - [fs] ceph: send dentry lease metrics to MDS daemon (Jeff Layton) [1893177] - [fs] ceph: acquire Fs caps when getting dir stats (Jeff Layton) [1893177] - [fs] ceph: fix up some warnings on W=1 builds (Jeff Layton) [1893177] - [fs] ceph: queue MDS requests to REJECTED sessions when CLEANRECOVER is set (Jeff Layton) [1893177] - [fs] ceph: remove timeout on allowing reconnect after blocklisting (Jeff Layton) [1893177] - [fs] ceph: add new RECOVER mount_state when recovering session (Jeff Layton) [1893177] - [fs] ceph: make fsc->mount_state an int (Jeff Layton) [1893177] - [fs] ceph: don't WARN when removing caps due to blocklisting (Jeff Layton) [1893177] - [fs] ceph: check session state after bumping session->s_seq (Jeff Layton) [1893177] - [net] libceph: clear con->out_msg on Policy::stateful_server faults (Jeff Layton) [1893177] - [net] libceph: format ceph_entity_addr nonces as unsigned (Jeff Layton) [1893177] - [include] libceph: fix ENTITY_NAME format suggestion (Jeff Layton) [1893177] - [net] libceph: move a dout in queue_con_delay() (Jeff Layton) [1893177] - [fs] ceph: comment cleanups and clarifications (Jeff Layton) [1893177] - [fs] ceph: break up send_cap_msg (Jeff Layton) [1893177] - [fs] ceph: drop separate mdsc argument from __send_cap (Jeff Layton) [1893177] - [fs] ceph: promote to unsigned long long before shifting (Jeff Layton) [1893177] - [fs] ceph: don't SetPageError on readpage errors (Jeff Layton) [1893177] - [fs] ceph: mark ceph_fmt_xattr() as printf-like for better type checking (Jeff Layton) [1893177] - [fs] ceph: fold ceph_update_writeable_page into ceph_write_begin (Jeff Layton) [1893177] - [fs] ceph: fold ceph_sync_writepages into writepage_nounlock (Jeff Layton) [1893177] - [fs] ceph: fold ceph_sync_readpages into ceph_readpage (Jeff Layton) [1893177] - [fs] ceph: don't call ceph_update_writeable_page from page_mkwrite (Jeff Layton) [1893177] - [fs] ceph: break out writeback of incompatible snap context to separate function (Jeff Layton) [1893177] - [fs] ceph: add a note explaining session reject error string (Jeff Layton) [1893177] - [net] libceph: switch to the new "osd blocklist add" command (Jeff Layton) [1893177] - [fs] libceph, rbd, ceph: "blacklist" -> "blocklist" (Jeff Layton) [1893177] - [fs] ceph: have ceph_writepages_start call pagevec_lookup_range_tag (Jeff Layton) [1893177] - [fs] ceph: use kill_anon_super helper (Jeff Layton) [1893177] - [fs] ceph: metrics for opened files, pinned caps and opened inodes (Jeff Layton) [1893177] - [fs] ceph: add ceph_sb_to_mdsc helper support to parse the mdsc (Jeff Layton) [1893177] - [fs] ceph: drop special-casing for ITER_PIPE in ceph_sync_read (Jeff Layton) [1893177] - [fs] ceph: add column 'mds' to show caps in more user friendly (Jeff Layton) [1893177] - [include] libceph: multiple workspaces for CRUSH computations (Jeff Layton) [1893177] - [fs] ceph: remove unnecessary return in switch statement (Jeff Layton) [1893177] - [fs] ceph: encode inodes' parent/d_name in cap reconnect message (Jeff Layton) [1893177] - [include] libceph: add __maybe_unused to DEFINE_CEPH_FEATURE (Jeff Layton) [1893177] - [fs] ceph: use frag's MDS in either mode (Jeff Layton) [1893177] - [fs] ceph: move sb->wb_pagevec_pool to be a global mempool (Jeff Layton) [1893177] - [fs] ceph: remove redundant initialization of variable mds (Jeff Layton) [1893177] - [fs] ceph: fix use-after-free for fsc->mdsc (Jeff Layton) [1893177] - [fs] ceph: remove unused variables in ceph_mdsmap_decode() (Jeff Layton) [1893177] - [fs] ceph: delete repeated words in fs/ceph/ (Jeff Layton) [1893177] - [fs] ceph: send client provided metric flags in client metadata (Jeff Layton) [1893177] - [fs] ceph: periodically send perf metrics to MDSes (Jeff Layton) [1893177] - [fs] ceph: check the sesion state and return false in case it is closed (Jeff Layton) [1893177] - [net] libceph: replace HTTP links with HTTPS ones (Jeff Layton) [1893177] - [fs] ceph: remove unnecessary cast in kfree() (Jeff Layton) [1893177] - [net] libceph: just have osd_req_op_init() return a pointer (Jeff Layton) [1893177] - [fs] ceph: do not access the kiocb after aio requests (Jeff Layton) [1893177] - [fs] ceph: clean up and optimize ceph_check_delayed_caps() (Jeff Layton) [1893177] - [fs] ceph: fix potential mdsc use-after-free crash (Jeff Layton) [1893177] - [fs] ceph: switch to WARN_ON_ONCE in encode_supported_features() (Jeff Layton) [1893177] - [fs] ceph: add global total_caps to count the mdsc's total caps number (Jeff Layton) [1893177] - [fs] ceph: add check_session_state() helper and make it global (Jeff Layton) [1893177] - [net] libceph: dump class and method names on method calls (Jeff Layton) [1893177] - [net] libceph: use target_copy() in send_linger() (Jeff Layton) [1893177] - [fs] ceph: add metadata perf metric support (Jeff Layton) [1893177] - [fs] ceph: add read/write latency metric support (Jeff Layton) [1893177] - [fs] ceph: add caps perf metric for each superblock (Jeff Layton) [1893177] - [fs] ceph: add dentry lease metric support (Jeff Layton) [1893177] - [include] math64: New DIV64_U64_ROUND_CLOSEST helper (Jeff Layton) [1893177] - [tty] tty: Fix ->pgrp locking in tiocspgrp() (Waiman Long) [1908197] {CVE-2020-29661}- [mm] Revert "powerpc: Ensure that swiotlb buffer is allocated from low memory" (Diego Domingos) [1907131] - [fs] xfs: use ENOTBLK for direct I/O to buffered I/O fallback (Carlos Maiolino) [1922953] - [nvme] nvme-multipath: Early exit if no path is available (Gopal Tiwari) [1880508] - [scsi] scsi: lpfc: Add support for eh_should_retry_cmd() (Ewan Milne) [1801585] - [scsi] scsi: scsi_transport_fc: Add store capability to rport port_state in sysfs (Ewan Milne) [1801585] - [scsi] scsi: scsi_transport_fc: Add a new rport state FC_PORTSTATE_MARGINAL (Ewan Milne) [1801585] - [scsi] scsi: core: No retries on abort success (Ewan Milne) [1801585] - [scsi] scsi: core: Add a new error code DID_TRANSPORT_MARGINAL in scsi.h (Ewan Milne) [1801585] - [scsi] scsi: core: Add limitless cmd retry support (Ewan Milne) [1801585] - [fs] gfs2: Fix deadlock between gfs2_{create_inode, inode_lookup} and delete_work_func (Andreas Grunbacher) [1903190] - [fs] gfs2: Don't call cancel_delayed_work_sync from within delete work function (Andreas Grunbacher) [1903190] - [cpufreq] acpi-cpufreq: Honor _PSD table setting on new AMD CPUs (Terry Bowman) [1886943] - [x86] x86/cpufeatures: Enumerate TSX suspend load address tracking instructions (Josh Poimboeuf) [1836980] - [powerpc] powerpc/pseries/svm: Allocate SWIOTLB buffer anywhere in memory (Diego Domingos) [1869184] - [mm] powerpc: Ensure that swiotlb buffer is allocated from low memory (Diego Domingos) [1869184] - [fs] debugfs: Fix module state check condition (Vladis Dronov) [1866285] - [fs] debugfs: Check module state before warning in {full/open}_proxy_open() (Vladis Dronov) [1866285]- [firmware] efi: Don't attempt to map RCI2 config table if it doesn't exist (Lenny Szubowicz) [1779590] - [firmware] efi: Make CONFIG_EFI_RCI2_TABLE selectable on x86 only (Lenny Szubowicz) [1779590] - [firmware] efi: Make unexported efi_rci2_sysfs_init() static (Lenny Szubowicz) [1779590] - [iommu] iommu: use the __iommu_attach_device() directly for deferred attach (Lianbo Jiang) [1904658] - [iommu] dma-iommu: use static-key to minimize the impact in the fast-path (Lianbo Jiang) [1904658] - [x86] x86/PCI: sta2x11: use default DMA address translation (Jerry Snitselaar) [1887546] - [powerpc] powerpc: use the generic dma_ops_bypass mode (Jerry Snitselaar) [1887546] - [dma] dmaengine: fix error codes in channel_register() (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: off by one in cleanup code (Jerry Snitselaar) [1837187] - [documentation] dmaengine: idxd: Add ABI documentation for shared wq (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: Clean up descriptors with fault error (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: Add shared workqueue support (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix mapping of portal size (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix wq config registers offset programming (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Allocate correct size for descriptor chunk (Jerry Snitselaar) [1837187] - [uapi] dmaengine: idxd: add missing invalid flags field to completion (Jerry Snitselaar) [1837187] - [uapi] dmaengine: idxd: fix hw descriptor fields for delta record (Jerry Snitselaar) [1837187] - [uapi] dmaengine: idxd: Merge definition of dsa_batch_desc into dsa_hw_desc (Jerry Snitselaar) [1838386 1837187] - [dma] dmaengine: dmatest: Return boolean result directly in filter() (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Check list for emptiness before access its last entry (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Make two symbols static (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Print error codes as signed value (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add command status to idxd sysfs attribute (Jerry Snitselaar) [1893465 1837187] - [dma] dmaengine: idxd: add support for configurable max wq batch size (Jerry Snitselaar) [1893468 1837187] - [dma] dmaengine: idxd: add support for configurable max wq xfer size (Jerry Snitselaar) [1893468 1837187] - [documentation] dmaengine: idxd: add leading / for sysfspath in ABI documentation (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: clear misc interrupt cause after read (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Prevent to run on misconfigured channel (Jerry Snitselaar) [1837187] - [dma] dmaengine: acpi: Put the CSRT table after using it (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: reset states after device disable or reset (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: move idxd interrupt handling to mask instead of ignore (Jerry Snitselaar) [1872374 1837187] - [dma] dmaengine: idxd: add work queue drain support (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: move submission to sbitmap_queue (Jerry Snitselaar) [1837187] - [dma] dmaengine: cookie bypass for out of order completion (Jerry Snitselaar) [1838893 1837187] - [dma] dmaengine: ioat setting ioat timeout as module parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: stop completed threads when running without set channel (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix misc interrupt handler thread unmasking (Jerry Snitselaar) [1877126 1837187] - [dma] dmaengine: idxd: cleanup workqueue config after disabling (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix cdev locking for open and release (Jerry Snitselaar) [1837187] - [dma] dmaengine: Replace zero-length array with flexible-array (Jerry Snitselaar) [1837187] - [dma] dmaengine: Fix doc strings to satisfy validation script (Jerry Snitselaar) [1837187] - [dma] dmaengine: Include dmaengine.h into dmaengine.c (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Describe members of struct dmatest_info (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Describe members of struct dmatest_params (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Allow negative timeout value to specify infinite wait (Jerry Snitselaar) [1837187] - [dma] Revert "dmaengine: dmatest: timeout value of -1 should specify infinite wait" (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: adding missed issue_pending to timeout handler (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: remove unnesesery double complition timer modification (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: removing duplicate code from timeout handler (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Decreasing allocation chunk size 2M->512K (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: fixing chunk sizing macros dependency (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: export hw version through sysfs (Jerry Snitselaar) [1838888 1837187] - [dma] dmaengine: dmatest: Restore default for channel (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix interrupt completion after unmasking (Jerry Snitselaar) [1838895 1837187] - [dma] dmaengine: dmatest: Fix process hang when reading 'wait' parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Fix iteration non-stop logic (Jerry Snitselaar) [1837187] - [dma] dmaengine: fix channel index enumeration (Jerry Snitselaar) [1838390 1837187] - [include] include/linux/dmaengine: Typos fixes in API documentation (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: remove global token limit check (Jerry Snitselaar) [1838385 1837187] - [dma] dmaengine: idxd: reflect shadow copy of traffic class programming (Jerry Snitselaar) [1838381 1837187] - [dma] dmaengine: Create debug directories for DMA devices (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add basic debugfs support (Jerry Snitselaar) [1837187] - [include] dmaengine: consistently return string literal from switch-case (Jerry Snitselaar) [1837187] - [include] dmaengine: Drop redundant 'else' keyword (Jerry Snitselaar) [1837187] - [include] dmaengine: Use negative condition for better readability (Jerry Snitselaar) [1837187] - [include] dmaengine: Refactor dmaengine_check_align() to be bit operations only (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: expose general capabilities register in sysfs (Jerry Snitselaar) [1837187 1836532] - [dma] dmaengine: idxd: check return result from check_vma() in cdev (Jerry Snitselaar) [1837187 1836530] - [dma] dmanegine: ioat/dca: Replace zero-length array with flexible-array member (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: remove set but not used variable 'idxd_cdev' (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: remove set but not used variable 'group' (Jerry Snitselaar) [1837187] - [documentation] dmaengine: idxd: add sysfs ABI for idxd driver (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix off by one on cdev dwq refcount (Jerry Snitselaar) [1838366 1837187] - [dma] dmaengine: idxd: wq size configuration needs to check global max size (Jerry Snitselaar) [1837187 1836579] - [dma] dmaengine: idxd: sysfs input of wq incorrect wq type should return error (Jerry Snitselaar) [1837187 1836585] - [dma] dmaengine: idxd: correct reserved token calculation (Jerry Snitselaar) [1837187 1836647] - [dma] dmaengine: idxd: Fix error handling in idxd_wq_cdev_dev_setup() (Jerry Snitselaar) [1838354 1837187] - [dma] dmaengine: idxd: fix runaway module ref count on device driver bind (Jerry Snitselaar) [1837187 1836649] - [dma] dmaengine: idxd: fix boolconv.cocci warnings (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add char driver to expose submission portal to userland (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: connect idxd to dmaengine subsystem (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add descriptor manipulation routines (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add configuration component of driver (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: Init and probe for Intel data accelerators (Jerry Snitselaar) [1837187] - [include] io-64-nonatomic: add io{read|write}64{_lo_hi|_hi_lo} macros (Jerry Snitselaar) [1837187] - [powerpc] iomap: introduce io{read|write}64_{lo_hi|hi_lo} (Jerry Snitselaar) [1837187] - [lib] iomap: Use non-raw io functions for io{read|write}XXbe (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: use vchan_vdesc_fini() to free descriptors (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Add missing locking around list operations (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Do not call desc_free() under a spin_lock (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: remove debug message (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Add missing locking (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Support in-use unbind (Jerry Snitselaar) [1837187] - [dma] dmaengine: move .device_release missing log warning to debug level (Jerry Snitselaar) [1837187] - [dma] dmaengine: Cleanups for the slave <-> channel symlink support (Jerry Snitselaar) [1837187] - [dma] dmaengine: fix null ptr check for __dma_async_device_channel_register() (Jerry Snitselaar) [1837187] - [dma] dmaengine: Fix return value for dma_request_chan() in case of failure (Jerry Snitselaar) [1837187] - [dma] dmaengine: Create symlinks between DMA channels and slaves (Jerry Snitselaar) [1837187] - [dma] dmaengine: add support to dynamic register/unregister of channels (Jerry Snitselaar) [1837187] - [dma] dmaengine: break out channel registration (Jerry Snitselaar) [1837187] - [x86] x86/asm: Carve out a generic movdir64b() helper for general usage (Jerry Snitselaar) [1837187] - [x86] x86/asm: add iosubmit_cmds512() based on MOVDIR64B CPU instruction (Jerry Snitselaar) [1837187] - [dma] dmaengine: Move dma_get_{, any_}slave_channel() to private dmaengine.h (Jerry Snitselaar) [1837187] - [include] dmaengine: Remove dma_request_slave_channel_compat() wrapper (Jerry Snitselaar) [1837187] - [dma] dmaengine: Remove dma_device_satisfies_mask() wrapper (Jerry Snitselaar) [1837187] - [include] dmaengine: Add helper function to convert direction value to text (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add support for reporting DMA cached data amount (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add metadata_ops for dma_async_tx_descriptor (Jerry Snitselaar) [1837187] - [dma] dmaengine: print more meaningful error message (Jerry Snitselaar) [1837187] - [dma] dmaengine: move module_/dma_device_put() after route free (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add reference counting to dma_device struct (Jerry Snitselaar) [1837187] - [dma] dmaengine: Move dma_channel_rebalance() infrastructure up in code (Jerry Snitselaar) [1837187] - [dma] dmaengine: Call module_put() after device_free_chan_resources() (Jerry Snitselaar) [1837187] - [dma] dmaengine: Store module owner in dma_device struct (Jerry Snitselaar) [1837187] - [include] dmaengine: Remove spaces before TABs (Jerry Snitselaar) [1837187] - [dma] ioat: ioat_alloc_ring() failure handling (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Fix access after free in vchan_complete() (Jerry Snitselaar) [1837187] - [include] dmaengine: Fix access to uninitialized dma_slave_caps (Jerry Snitselaar) [1837187] - [dma] dmanegine: ioat/dca: Use struct_size() helper (Jerry Snitselaar) [1837187] - [dma] dmaengine: acpi: Add kernel doc parameter descriptions (Jerry Snitselaar) [1837187] - [dma] dmaengine: acpi: Set up DMA mask based on CSRT (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add support for completion polling (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: store result on dma descriptor (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: timeout value of -1 should specify infinite wait (Jerry Snitselaar) [1837187] - [dma] dmaengine: Grammar s/the its/its/, s/need/needs/ (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 291 (Jerry Snitselaar) [1837187] - [dma] treewide: Add SPDX license identifier - Makefile/Kconfig (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 7 (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: move test data alloc & free into functions (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: add short-hand `buf_size` var in dmatest_func() (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: wrap src & dst data into a struct (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Abort test in case of mapping error (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add transfer_size parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add alignment parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Use fixed point div to calculate iops (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add support for multi channel testing (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: fix a small memory leak in dmatest_func() (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: move size checks earlier in function (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: use dmaengine_terminate_sync() instead (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: unmap data on a single code-path when xfer done (Jerry Snitselaar) [1837187] - [dma] dmaengine: idma64: replace spin_lock_irqsave with spin_lock (Jerry Snitselaar) [1837187] - [dma] dmaengine: idma: remove dma_slave_config direction usage (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: fix prototype of ioat_enumerate_channels (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioatdma: set the completion address register after channel reset (Jerry Snitselaar) [1837187] - [dma] dmaengine: idma64: Support dmaengine_terminate_sync() (Jerry Snitselaar) [1837187] - [dma] dmaengine: add a new helper dmaenginem_async_device_register (Jerry Snitselaar) [1837187] - [documentation] Documentation/x86: Add documentation for SVA (Shared Virtual Addressing) (Jerry Snitselaar) [1836777] - [iommu] iommu/vt-d: Change flags type to unsigned int in binding mm (Jerry Snitselaar) [1836777] - [drm] drm, iommu: Change type of pasid to u32 (Jerry Snitselaar) [1836777] - [x86] x86/asm: Add an enqcmds() wrapper for the ENQCMDS instruction (Jerry Snitselaar) [1837187] - [x86] x86/mmu: Allocate/free a PASID (Jerry Snitselaar) [1836777] - [x86] x86/cpufeatures: Mark ENQCMD as disabled when configured out (Jerry Snitselaar) [1836777] - [mm] mm: Add a pasid member to struct mm_struct (Jerry Snitselaar) [1836777] - [x86] x86/msr-index: Define an IA32_PASID MSR (Jerry Snitselaar) [1836777] - [x86] x86/fpu/xstate: Add supervisor PASID state for ENQCMD (Jerry Snitselaar) [1836777] - [x86] x86/cpufeatures: Enumerate ENQCMD and ENQCMDS instructions (Jerry Snitselaar) [1836777] - [x86] x86/fpu/xstate: Restore supervisor states for signal return (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Preserve supervisor states for the slow path in __fpu__restore_sig() (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Introduce copy_supervisor_to_kernel() (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Update copy_kernel_to_xregs_err() for supervisor states (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Update sanitize_restored_xstate() for supervisor xstates (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Define new functions for clearing fpregs and xstates (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Introduce XSAVES supervisor states (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Separate user and supervisor xfeatures mask (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Define new macros for supervisor and user xstates (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Rename validate_xstate_header() to validate_user_xstate_header() (Jerry Snitselaar) [1837178] - [x86] copy_xstate_to_kernel: Fix typo which caused GDB regression (Jerry Snitselaar) [1837178] - [x86] copy_xstate_to_kernel(): don't leave parts of destination uninitialized (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Warn when checking alignment of disabled xfeatures (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Fix XSAVES offsets in setup_xstate_comp() (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Fix last_good_offset in setup_xstate_features() (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Shrink space allocated for xstate_comp_offsets (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Make xfeature_is_supervisor()/xfeature_is_user() return bool (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Fix small issues (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Use XFEATURE_FP/SSE enum values instead of hardcoded numbers (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Use unsigned long long shift in xfeature_uncompacted_offset() (Jerry Snitselaar) [1837178] - [iommu] iommu/vt-d: Fix sid not set issue in intel_svm_bind_gpasid() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix kernel NULL pointer dereference in find_domain() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: include conditionally on CONFIG_INTEL_IOMMU_SVM (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix misuse of ALIGN in qi_flush_piotlb() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Don't read VCCAP register unless it exists (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Add SMMUv3.2 range invalidation support (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Batch ATC invalidation commands (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Add command queue batching helpers (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Add sanity check for interrupt remapping table length macros (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix lockdep splat in iommu_flush_dev_iotlb() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Restore IRTE.RemapEn bit for amd_iommu_activate_guest_mode (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Fix potential @entry null deref (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Handle 36bit addressing for x86-32 (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Do not use IOMMUv2 functionality when SME is active (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Do not force direct mapping when SME is active (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Use cmpxchg_double() when updating 128-bit IRTE (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Restore IRTE.RemapEn bit after programming IRTE (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix NULL pointer dereference in dev_iommu_priv_set() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Serialize IOMMU GCMD register modifications (Jerry Snitselaar) [1887546] - [dma] dma-pool: Fix an uninitialized variable bug in atomic_pool_expand() (Jerry Snitselaar) [1887546] - [dma] dma-pool: Only allocate from CMA when in same memory zone (Jerry Snitselaar) [1887546] - [dma] dma-pool: fix coherent pool allocations for IOMMU mappings (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Move Kconfig and Makefile bits down into amd directory (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Move Kconfig and Makefile bits down into intel directory (Jerry Snitselaar) [1887546] - [iommu] iommu: Add gfp parameter to io_pgtable_ops->map() (Jerry Snitselaar) [1887546] - [iommu] iommu: Mark __iommu_map_sg() as static (Jerry Snitselaar) [1887546] - [iommu] iommu: Tidy up Kconfig for SoC IOMMUs (Jerry Snitselaar) [1887546] - [iommu] iommu: Make some functions static (Jerry Snitselaar) [1887546] - [include] iommu: Move sg_table wrapper out of CONFIG_IOMMU_SUPPORT (Jerry Snitselaar) [1887546] - [powerpc] powerpc/dma: Remove dev->archdata.iommu_domain (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Remove double zero check (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Rename intel-pasid.h to pasid.h (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add page response ops support (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Report page request faults for guest SVA (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add a helper to get svm and sdev for pasid (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Refactor device_to_iommu() helper (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Disable multiple GPASID-dev bind (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Warn on out-of-range invalidation address (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix devTLB flush for vSVA (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Handle non-page aligned address (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix PASID devTLB invalidation (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove global page support in devTLB flush (Jerry Snitselaar) [1887546] - [include] iommu/vt-d: Enforce PASID devTLB field mask (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove unused IOMMU_SYS_CACHE_ONLY flag (Jerry Snitselaar) [1887546] - [iommu] PCI/ATS: Add pci_pri_supported() to check device or associated PF (Jerry Snitselaar) [1887546] - [pci] PCI: Treat "external-facing" devices themselves as internal (Jerry Snitselaar) [1887546] - [documentation] docs: fix references for DMA*.txt files (Jerry Snitselaar) [1887546] - [dma] dma-contiguous: cleanup dma_alloc_contiguous (Jerry Snitselaar) [1887546] - [dma] dma-debug: use named initializers for dir2name (Jerry Snitselaar) [1887546] - [dma] dma-mapping: add a dma_ops_bypass flag to struct device (Jerry Snitselaar) [1887546] - [dma] dma-mapping: inline the fast path dma-direct calls (Jerry Snitselaar) [1887546] - [dma] dma-mapping: move the remaining DMA API calls out of line (Jerry Snitselaar) [1887546] - [dma] dma-mapping: don't BUG when calling dma_map_resource on RAM (Jerry Snitselaar) [1887546] - [of] of: Allow the iommu-map property to omit untranslated devices (Jerry Snitselaar) [1887546] - [iommu] treewide: Remove uninitialized_var() usage (Jerry Snitselaar) [1887546] - [dma] dma-pool: do not allocate pool memory from CMA (Jerry Snitselaar) [1887546] - [dma] dma-pool: make sure atomic pool suits device (Jerry Snitselaar) [1887546] - [dma] dma-pool: introduce dma_guess_pool() (Jerry Snitselaar) [1887546] - [dma] dma-pool: get rid of dma_in_atomic_pool() (Jerry Snitselaar) [1887546] - [dma] dma-direct: provide function to check physical memory area validity (Jerry Snitselaar) [1887546] - [documentation] docs: move DMA kAPI to Documentation/core-api (Jerry Snitselaar) [1887546] - [dma] dma-mapping: remove dma_mark_declared_memory_occupied (Jerry Snitselaar) [1887546] - [documentation] docs: DMA-API-HOWTO.txt: fix an unmarked code block (Jerry Snitselaar) [1887546] - [documentation] Documentation: DMA-API: fix a function name of max_mapping_size (Jerry Snitselaar) [1887546] - [documentation] docs: DMA-API-HOWTO: add a missing "=" (Jerry Snitselaar) [1887546] - [documentation] Documentation/DMA-API-HOWTO: update dma_mask sections (Jerry Snitselaar) [1887546] - [documentation] Documentation/DMA-ISA-LPC: fix an incorrect reference (Jerry Snitselaar) [1887546] - [documentation] Documentation: DMA-API: fix two typos (Jerry Snitselaar) [1887546] - [dma] dma-mapping: warn when coherent pool is depleted (Jerry Snitselaar) [1887546] - [dma] dma-remap: align the size in dma_common_*_remap() (Jerry Snitselaar) [1887546] - [dma] dma-mapping: DMA_COHERENT_POOL should select GENERIC_ALLOCATOR (Jerry Snitselaar) [1887546] - [dma] dma-direct: add missing set_memory_decrypted() for coherent mapping (Jerry Snitselaar) [1887546] - [dma] dma-direct: check return value when encrypting or decrypting memory (Jerry Snitselaar) [1887546] - [dma] dma-direct: re-encrypt memory if dma_direct_alloc_pages() fails (Jerry Snitselaar) [1887546] - [dma] dma-direct: always align allocation size in dma_direct_alloc_pages() (Jerry Snitselaar) [1887546] - [dma] dma-direct: mark __dma_direct_alloc_pages static (Jerry Snitselaar) [1887546] - [dma] dma-direct: re-enable mmap for !CONFIG_MMU (Jerry Snitselaar) [1887546] - [dma] dma-pool: decouple DMA_REMAP from DMA_COHERENT_POOL (Jerry Snitselaar) [1887546] - [message] scsi: mptfusion: Don't use GFP_ATOMIC for larger DMA allocations (Jerry Snitselaar) [1887546] - [dma] dma-pool: fix too large DMA pools on medium memory size systems (Jerry Snitselaar) [1887546] - [iommu] treewide: replace '---help---' in Kconfig files with 'help' (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Make remove callback message more informative (Jerry Snitselaar) [1887546] - [include] iommu: add generic helper for mapping sgtable objects (Jerry Snitselaar) [1887546] - [dma] dma-contiguous: fix comment for dma_release_from_contiguous (Jerry Snitselaar) [1887546] - [dma] dma-pool: scale the default DMA coherent pool size with memory capacity (Jerry Snitselaar) [1887546] - [x86] x86/mm: unencrypted non-blocking DMA allocations use coherent pools (Jerry Snitselaar) [1887546] - [dma] dma-pool: add pool sizes to debugfs (Jerry Snitselaar) [1887546] - [dma] dma-direct: atomic allocations must come from atomic coherent pools (Jerry Snitselaar) [1887546] - [dma] dma-pool: dynamically expanding atomic pools (Jerry Snitselaar) [1887546] - [dma] dma-pool: add additional coherent pools to map to gfp mask (Jerry Snitselaar) [1887546] - [dma] dma-remap: separate DMA atomic pools from direct remap code (Jerry Snitselaar) [1887546] - [dma] dma-mapping: use vmap insted of reimplementing it (Jerry Snitselaar) [1887546] - [dma] dma-debug: make __dma_entry_alloc_check_leak() static (Jerry Snitselaar) [1887546] - [dma] dma: debug: no need to check return value of debugfs_create functions (Jerry Snitselaar) [1887546] - [dma] dma-debug: Batch dma_debug_entry allocation (Jerry Snitselaar) [1887546] - [dma] dma/debug: Remove dma_debug_resize_entries() (Jerry Snitselaar) [1887546] - [dma] dma-debug: Make leak-like behaviour apparent (Jerry Snitselaar) [1887546] - [dma] dma-debug: Dynamically expand the dma_debug_entry pool (Jerry Snitselaar) [1887546] - [dma] dma-debug: Use pr_fmt() (Jerry Snitselaar) [1887546] - [dma] dma-debug: Expose nr_total_entries in debugfs (Jerry Snitselaar) [1887546] - [dma] dma-debug: fix displaying of dma allocation type (Jerry Snitselaar) [1887546] - [dma] dma-direct: fix data truncation in dma_direct_get_required_mask() (Jerry Snitselaar) [1887546] - [dma] dma-direct: provide a arch_dma_clear_uncached hook (Jerry Snitselaar) [1887546] - [dma] dma-direct: make uncached_kernel_address more general (Jerry Snitselaar) [1887546] - [include] dma-direct: remove the cached_kernel_address hook (Jerry Snitselaar) [1887546] - [dma] dma-direct: consolidate the error handling in dma_direct_alloc_pages (Jerry Snitselaar) [1887546] - [dma] dma-coherent: fix integer overflow in the reserved-memory dma allocation (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix misuse of iommu_domain_identity_map() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Update scalable mode paging structure coherency (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Enable PCI ACS for platform opt in hint (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Set U/S bit in first level page table by default (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Make Intel SVM code 64-bit only (Jerry Snitselaar) [1887546] - [arm64] arm64: Remove dev->archdata.iommu pointer (Jerry Snitselaar) [1887546] - [x86] x86: Remove dev->archdata.iommu pointer (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use dev_iommu_priv_get/set() (Jerry Snitselaar) [1887546] - [iommu] iommu: Allow page responses without PASID (Jerry Snitselaar) [1887546] - [iommu] iommu/iova: Don't BUG on invalid PFNs (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Add helper functions to update domain->pt_root (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Print extended features in one line to fix divergent log levels (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Make amd_iommu_apply_ivrs_quirks() static inline (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Move Intel IOMMU driver into subdirectory (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Move AMD IOMMU driver into subdirectory (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Remove redundant devid checks (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Store dev_data as device iommu private data (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Merge private header files (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Remove PD_DMA_OPS_MASK (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Consolidate domain allocation/freeing (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Free page-table in protection_domain_free() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Allocate page-table in protection_domain_init() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Let free_pagetable() not rely on domain->pt_root (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Unexport get_dev_data() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Unify format of the printed messages (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove iommu_sva_ops::mm_exit() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use pci_ats_supported() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Use pci_ats_supported() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Use pci_ats_supported() (Jerry Snitselaar) [1887546] - [pci] PCI/ATS: Only enable ATS for trusted devices (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Implement iommu_ops->def_domain_type call-back (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Don't reserve implementation defined register space (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: remove set but not used variable 'smmu' (Jerry Snitselaar) [1887546] - [uapi] iommu/virtio: Fix sparse warning (Jerry Snitselaar) [1887546] - [pci] PCI/ATS: Export symbols of PASID functions (Jerry Snitselaar) [1887546] - [iommu] iommu/mediatek: Fix MTK_IOMMU dependencies (Jerry Snitselaar) [1887546] - [iommu] iommu: spapr_tce: Disable compile testing to fix build on book3s_32 config (Jerry Snitselaar) [1887546] - [iommu] iommu: Enable compile testing for some of drivers (Jerry Snitselaar) [1887546] - [x86] x86: Hide the archdata.iommu field behind generic IOMMU_API (Jerry Snitselaar) [1887546] - [iommu] iommu/hyper-v: Constify hyperv_ir_domain_ops (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix compile warning (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: fix a GCC warning (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix pointer cast warnings on 32 bit (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove IOVA handling code from the non-dma_ops path (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove duplicated check in intel_svm_bind_mm() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove redundant IOTLB flush (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add page request draining support (Jerry Snitselaar) [1887546 1847060] - [iommu] iommu/vt-d: Disable non-recoverable fault processing before unbind (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: debugfs: Add support to show inv queue internals (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Multiple descriptors per qi_submit_sync() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Replace intel SVM APIs with generic SVA APIs (Jerry Snitselaar) [1887546 1836578] - [include] iommu/vt-d: Fix compile warning from intel-svm.h (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Report SVA feature with generic flag (Jerry Snitselaar) [1887546 1836578] - [iommu] iommu/vt-d: Add custom allocator for IOASID (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Enlightened PASID allocation (Jerry Snitselaar) [1887546 1837167] - [iommu] iommu/vt-d: Add svm/sva invalidate function (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Support flushing more translation cache types (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add bind guest PASID support (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add nested translation helper function (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use a helper function to skip agaw for SL (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Move domain helper to header (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove functions that support private domain (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Unify format of the printed messages (Jerry Snitselaar) [1887546] - [iommu] iommu: Introduce guest PASID bind function (Jerry Snitselaar) [1887546] - [iommu] iommu: Introduce cache_invalidate API (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: debugfs: Add support to show page table internals (Jerry Snitselaar) [1887546 1835059] - [iommu] iommu/vt-d: Use iova over first level (Jerry Snitselaar) [1887546 1837160] - [iommu] iommu/vt-d: Update first level super page capability (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Make first level IOVA canonical (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Flush PASID-based iotlb for iova over first level (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Setup pasid entries for iova over first level (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add PASID_FLAG_FL5LP for first-level pasid setup (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add set domain DOMAIN_ATTR_NESTING attr (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Identify domains using first level page table (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Misc macro clean up for SVM (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add build dependency on IOASID (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Replace Intel specific PASID allocator with IOASID (Jerry Snitselaar) [1887546] - [iommu] iommu/ioasid: Add custom allocators (Jerry Snitselaar) [1887546] - [iommu] iommu: Add I/O ASID allocator (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use right Kconfig option name (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add Kconfig option to enable/disable scalable mode (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Reverse arguments to list_add (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Use accessor functions for iommu private data (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Reject IOMMU page granule larger than PAGE_SIZE (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Fix freeing of incomplete domains (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Build virtio-iommu as module (Jerry Snitselaar) [1887546] - [iommu] iommu: virtio: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Remove unused variable (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Update to most recent specification (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Add event queue (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Add probe request (Jerry Snitselaar) [1887546] - [iommu] iommu: Add virtio-iommu driver (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove duplicate error message (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Fix uninitilized variable warning (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rename IOMMU_QCOM_SYS_CACHE and improve doc (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Restore naming of driver parameter prefix (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Use WRITE_ONCE() when changing validity of an STE (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Improve SMR mask test (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Fix IOVA validation for 32-bit (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Prepare for TTBR1 usage (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise VTCR handling (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Rename public #defines under ARM_SMMU_ namespace (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise TCR handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Ensure ARM_64_LPAE_S2_TCR_RES1 is unsigned (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Improve attribute handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Support non-coherent stage-2 page tables (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Fix -Wunused-const-variable warning (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Remove useless of_match_ptr() (Jerry Snitselaar) [1887546] - [iommu] drivers/iommu: Initialise module 'owner' field in iommu_device_set_ops() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Update my email address in MODULE_AUTHOR() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Allow building as a module (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Unregister IOMMU and bus ops on device removal (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Allow building as a module (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Support SMMU module probing from the IORT (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Unregister IOMMU and bus ops on device removal (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Prevent forced unbinding of Arm SMMU drivers (Jerry Snitselaar) [1887546] - [iommu] Revert "iommu/arm-smmu: Make arm-smmu explicitly non-modular" (Jerry Snitselaar) [1887546] - [iommu] Revert "iommu/arm-smmu: Make arm-smmu-v3 explicitly non-modular" (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise TTBRn handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise MAIR handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify level indexing (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify PGD size handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify start level lookup (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify bounds checks (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise size check (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable: Make selftest gubbins consistently __init (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Avoid pathological RPM behaviour for unmaps (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable: Move some initialization data to .init.rodata (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Report USF more clearly (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove arm_smmu_flush_ops (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Move .tlb_sync method to implementation (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove "leaf" indirection (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove .tlb_inv_range indirection (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm-v7s: Use ias/oas to check the valid iova/pa (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm-v7s: Add paddr_to_iopte and iopte_to_paddr helpers (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Ensure 64-bit I/O accessors are available on 32-bit CPU (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Make private implementation details static (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add context init implementation hook (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add reset implementation hook (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add configuration implementation hook (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Move Secure access quirk to implementation (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: ioremap smmu mmio region before implementation init (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add implementation infrastructure (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Rename arm-smmu-regs.h (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Abstract GR0 accesses (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Abstract context bank accesses (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Abstract GR1 accesses (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Get rid of weird "atomic" write (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Split arm_smmu_tlb_inv_range_nosync() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Rework cb_base handling (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Convert context bank registers to bitfields (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Convert GR1 registers to bitfields (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Convert GR0 registers to bitfields (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove IOMMU_OF_DECLARE (Jerry Snitselaar) [1887546] - [iommu] iommu: Stop deferring probe at end of initcalls (Jerry Snitselaar) [1887546] - [iommu] iommu: Fix use-after-free in iommu_release_device (Jerry Snitselaar) [1887546] - [dma] dma-mapping: Fix dma_pgprot() for unencrypted coherent pages (Jerry Snitselaar) [1887546] - [x86] x86: Don't let pgprot_modify() change the page encryption bit (Jerry Snitselaar) [1887546] - [x86] x86/PCI: Remove X86_DEV_DMA_OPS (Jerry Snitselaar) [1887546] - [pci] PCI: vmd: Remove dma_map_ops overrides (Jerry Snitselaar) [1887546] - [pci] x86/pci: Clean up usage of X86_DEV_DMA_OPS (Jerry Snitselaar) [1887546] - [x86] x86/Kconfig: Remove the unused X86_DMA_REMAP KConfig symbol (Jerry Snitselaar) [1887546] - [dma] dma-direct: avoid a forward declaration for phys_to_dma (Jerry Snitselaar) [1887546] - [dma] dma-mapping: Add vmap checks to dma_map_single() (Jerry Snitselaar) [1887546] - [x86] x86/platform/uv: Fix UV4 hub revision adjustment (Frank Ramsay) [1908507] - [ata] ahci: Add Intel Rocket Lake PCH-H RAID PCI IDs (Steve Best) [1868308]- [mfd] mfd: intel-lpss: Fix Intel Elkhart Lake LPSS I2C input clock (Steve Best) [1783586] - [mfd] mfd: intel-lpss: Add Intel Elkhart Lake PCH PCI IDs (Steve Best) [1783586] - [i2c] i2c: i801: Add support for Intel Elkhart Lake (Steve Best) [1783586] - [fs] fuse: fix bad inode (Miklos Szeredi) [1906908] - [fs] virtiofs: calculate number of scatter-gather elements accurately (Vivek Goyal) [1783467] - [fs] virtiofs: add logic to free up a memory range (Vivek Goyal) [1783467] - [fs] virtiofs: maintain a list of busy elements (Vivek Goyal) [1783467] - [fs] virtiofs: serialize truncate/punch_hole and dax fault path (Vivek Goyal) [1783467] - [fs] virtiofs: define dax address space operations (Vivek Goyal) [1783467] - [fs] virtiofs: add DAX mmap support (Vivek Goyal) [1783467] - [fs] virtiofs: implement dax read/write operations (Vivek Goyal) [1783467] - [uapi] virtiofs: introduce setupmapping/removemapping commands (Vivek Goyal) [1783467] - [fs] virtiofs: implement FUSE_INIT map_alignment field (Vivek Goyal) [1783467] - [fs] virtiofs: keep a list of free dax memory ranges (Vivek Goyal) [1783467] - [fs] virtiofs: add a mount option to enable dax (Vivek Goyal) [1783467] - [fs] virtiofs: set up virtio_fs dax_device (Vivek Goyal) [1783467] - [fs] virtiofs: get rid of no_mount_options (Vivek Goyal) [1783467] - [fs] virtiofs: provide a helper function for virtqueue initialization (Vivek Goyal) [1783467] - [fs] dax: Create a range version of dax_layout_busy_page() (Vivek Goyal) [1783467] - [dax] dax: Modify bdev_dax_pgoff() to handle NULL bdev (Vivek Goyal) [1783467] - [virtio] virtio: Implement get_shm_region for MMIO transport (Vivek Goyal) [1783467] - [virtio] virtio: Implement get_shm_region for PCI transport (Vivek Goyal) [1783467] - [include] virtio: Add get_shm_region method (Vivek Goyal) [1783467] - [fs] virtiofs: do not use fuse_fill_super_common() for device installation (Vivek Goyal) [1783467] - [uapi] fuse: reserve values for mapping protocol (Vivek Goyal) [1783467] - [fs] virtiofs: Convert virtiofs to use new mount API (Vivek Goyal) [1783467] - [fs] fuse: reject options on reconfigure via fsconfig(2) (Vivek Goyal) [1783467] - [fs] fuse: ignore 'data' argument of mount(..., MS_REMOUNT) (Vivek Goyal) [1783467] - [fs] fuse: use ->reconfigure() instead of ->remount_fs() (Vivek Goyal) [1783467] - [fs] fuse: switch to use errorfc() et.al (Vivek Goyal) [1783467] - [fs] fs_parse: fold fs_parameter_desc/fs_parameter_spec (Vivek Goyal) [1783467] - [fs] fs_parser: remove fs_parameter_description name field (Vivek Goyal) [1783467] - [fs] vfs: subtype handling moved to fuse (Vivek Goyal) [1783467] - [fs] fuse: convert to use the new mount API (Vivek Goyal) [1783467] - [lib] lib/zlib: fix inflating zlib streams on s390 (Philipp Rudo) [1908011] - [scsi] scsi: ibmvfc: Set default timeout to avoid crash during migration (Diego Domingos) [1890710] - [net] Bluetooth: Fix null pointer dereference in hci_event_packet() (Gopal Tiwari) [1921475] - [tools] selftests: fix poll error in udpgro.sh (Hangbin Liu) [1922213] - [net] mptcp: fix length of MP_PRIO suboption (Davide Caratti) [1923156] - [powerpc] powerpc/sstep: Fix array out of bound warning (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/watchpoint: Workaround P10 DD1 issue with VSX-32 byte instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Add testcases for VSX vector paired load/store instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/ppc-opcode: Add encoding macros for VSX vector paired instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Support VSX vector paired storage access instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Cover new VSX instructions under CONFIG_VSX (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Emulate prefixed instructions only when CPU_FTR_ARCH_31 is set (Desnes Augusto Nunes do Rosario) [1908739] - [net] fix setsockopt(SO_REUSEADDR) for MPTCP sockets (Paolo Abeni) [1922500] - [net] net_sched: avoid shift-out-of-bounds in tcindex_set_parms() (Davide Caratti) [1917366] - [net] net_sched: reject silly cell_log in qdisc_get_rtab() (Davide Caratti) [1917366] - [net] sched: prevent invalid Scell_log shift count (Davide Caratti) [1917366] - [net] netem: fix zero division in tabledist (Davide Caratti) [1917366] - [net] protect tcf_block_unbind with block lock (Davide Caratti) [1917366] - [pinctrl] pinctrl: intel: Add Intel Elkhart Lake pin controller support (Steve Best) [1783600] - [fs] dlm: fix invalid cluster name warning (Alexander Aring) [1655771] - [mm] arm64: acpi: Make apei_claim_sea() synchronise with APEI's irq work (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Fix doc warnings in iort.c (Al Stone) [1865698 1851555] - [acpi] ACPI, APEI, Fix error return value in apei_map_generic_address() (Al Stone) [1865698 1851555] - [acpi] ACPI: fan: Initialize performance state sysfs attribute (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Support Alder Lake (Al Stone) [1865698 1851555] - [acpi] ACPI: button: Add DMI quirk for Medion Akoya E2228T (Al Stone) [1865698 1851555] - [acpi] ACPI: Fix whitespace inconsistencies (Al Stone) [1865698 1851555] - [acpi] ACPI: button: Drop no longer necessary Acer SW5-012 lid_init_state quirk (Al Stone) [1865698 1851555] - [acpi] ACPI: dock: fix enum-conversion warning (Al Stone) [1865698 1851555] - [acpi] ACPI: utils: remove unreachable breaks (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add missing type casts in GPE register access code (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add ACPI_DPTF Kconfig menu (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Fix participant driver names (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: remove comment regarding string _UID support (Al Stone) [1865698 1851555] - [acpi] ACPI: reboot: Avoid racing after writing to ACPI RESET_REG (Al Stone) [1865698 1851555] - [acpi] ACPI: debug: don't allow debugging when ACPI is disabled (Al Stone) [1865698 1851555] - [dax] ACPI: HMAT: refactor hmat_register_target_device to hmem_register_device (Al Stone) [1865698 1851555] - [acpi] x86/numa: add 'nohmat' option (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200925 Version 20200925 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Remove unnecessary semicolon (Al Stone) [1865698 1851555] - [acpi] ACPICA: Debugger: Add a new command: "ALL " (Al Stone) [1865698 1851555] - [acpi] ACPICA: iASL: Return exceptions for string-to-integer conversions (Al Stone) [1865698 1851555] - [acpi] ACPICA: acpi_help: Update UUID list (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add predefined names found in the SMBus sepcification (Al Stone) [1865698 1851555] - [acpi] ACPICA: Tree-wide: fix various typos and spelling mistakes (Al Stone) [1865698 1851555] - [acpi] ACPICA: Drop the repeated word "an" in a comment (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add support for 64 bit risc-v compilation (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: PM: Drop ec_no_wakeup check from acpi_ec_dispatch_gpe() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: PM: Flush EC work unconditionally after wakeup (Al Stone) [1865698 1851555] - [acpi] ACPI: button: fix handling lid state changes when input device closed (Al Stone) [1865698 1851555] - [acpi] ACPI: scan: Replace ACPI_DEBUG_PRINT() with pr_debug() (Al Stone) [1865698 1851555] - [acpi] ACPI: memhotplug: Remove 'state' from struct acpi_memory_device (Al Stone) [1865698 1851555] - [acpi] ACPI / extlog: Check for RDMSR failure (Al Stone) [1865698 1851555] - [acpi] node: Add access1 class to represent CPU to memory characteristics (Al Stone) [1865698 1851555] - [acpi] ACPI: HMAT: Fix handling of changes from ACPI 6.2 to ACPI 6.3 (Al Stone) [1865698 1851555] - [acpi] ACPI: Let ACPI know we support Generic Initiator Affinity Structures (Al Stone) [1865698 1851555] - [acpi] ACPI: Support Generic Initiator only domains (Al Stone) [1865698 1851555] - [acpi] ACPI / NUMA: Add stub function for pxm_to_node() (Al Stone) [1865698 1851555] - [acpi] virtio-mem: Allow to specify an ACPI PXM as nid (Al Stone) [1865698 1851555] - [acpi] ACPI: battery: include linux/power_supply.h (Al Stone) [1865698 1851555] - [acpi] ACPI: wakeup: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: video: Remove leftover ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: tiny-power-button: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: proc: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: PCI: Remove unused ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: event: Remove leftover ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: dock: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: debugfs: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: custom_method: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: container: Remove leftover ACPICA debug functionality (Al Stone) [1865698 1851555] - [acpi] ACPI: platform: Remove ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: memhotplug: Remove leftover ACPICA debug functionality (Al Stone) [1865698 1851555] - [acpi] ACPI: LPSS: Remove ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: cmos_rtc: Remove leftover ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: PCI: update kernel-doc line comments (Al Stone) [1865698 1851555] - [acpi] PNP: ACPI: Fix missing-prototypes in acpi_pnp.c (Al Stone) [1865698 1851555] - [acpi] ACPI: configfs: Add missing config_item_put() to fix refcount leak (Al Stone) [1865698 1851555] - [acpi] ACPI: video: use ACPI backlight for HP 635 Notebook (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Clean up header file include statements (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Remove unnecessary APD_ADDR() macro stub (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Remove ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Remove flags from struct apd_device_desc (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Add kerneldoc for properties in struct apd_device_desc (Al Stone) [1865698 1851555] - [acpi] ACPI: Remove side effect of partly creating a node in acpi_get_node() (Al Stone) [1865698 1851555] - [acpi] ACPI: Rename acpi_map_pxm_to_online_node() to pxm_to_online_node() (Al Stone) [1865698 1851555] - [acpi] ACPI: Do not create new NUMA domains from ACPI static tables that are not SRAT (Al Stone) [1865698 1851555] - [acpi] ACPI: Add out of bounds and numa_off protections to pxm_to_node() (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Print more information when acpi_processor_evaluate_cst() fails (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add PCH FIVR participant driver (Al Stone) [1865698 1851555] - [acpi] PCI/ACPI: Add Ampere Altra SOC MCFG quirk (Al Stone) [1865698 1851555] - [acpi] ACPI / APEI: Add a notifier chain for unknown (vendor) CPER records (Al Stone) [1865698 1851555] - [acpi] ACPI / PMIC: Move TPS68470 OpRegion driver to drivers/acpi/pmic/ (Al Stone) [1865698 1851555] - [acpi] ACPI / PMIC: Split out Kconfig and Makefile specific for ACPI PMIC (Al Stone) [1865698 1851555] - [acpi] PCI/ACPI: Tone down missing MCFG message (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Make ACPICA use logical addresses of GPE blocks (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Change the type of acpi_os_map_generic_address() return value (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add support for using logical addresses of GPE blocks (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Remove the unused inline functions (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Drop the unused @ops of iort_add_device_replay() (Al Stone) [1865698 1851555] - [acpi] ACPI / LPSS: Save Cherry Trail PWM ctx registers only once (at activation) (Al Stone) [1865698 1851555] - [acpi] ACPI / LPSS: Resume Cherry Trail PWM controller in no-irq phase (Al Stone) [1865698 1851555] - [acpi] ACPICA: Introduce special struct type for GPE register addresses (Al Stone) [1865698 1851555] - [acpi] ACPICA: Introduce acpi_hw_gpe_read() and acpi_hw_gpe_write() (Al Stone) [1865698 1851555] - [acpi] ACPICA: Validate GPE blocks at init time (Al Stone) [1865698 1851555] - [acpi] ACPI: Export acpi_get_first_physical_node() to modules (Al Stone) [1865698 1851555] - [kernel] rcu/tree: Export rcu_idle_{enter, exit} to modules (Al Stone) [1865698 1851555] - [acpi] ACPI: GED: fix -Wformat (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Fix build for ARCH_APICTIMER_STOPS_ON_C3 unset (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Take over RCU-idle for C3-BM idle (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Use CPUIDLE_FLAG_TLB_FLUSHED (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Use CPUIDLE_FLAG_TIMER_STOP (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Prevent acpi_release_memory() from returning too early (Al Stone) [1865698 1851555] - [acpi] ACPI: ioremap: avoid redundant rounding to OS page size (Al Stone) [1865698 1851555] - [acpi] ACPI: SoC: APD: Check return value of acpi_dev_get_property() (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Add a fmw property is_raven (Al Stone) [1865698 1851555] - [include] ACPI: APD: Change name from ST to FCH (Al Stone) [1865698 1851555] - [acpi] i2c: designware: Add device HID for Hygon I2C controller (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Add an input ID to acpi_dma_configure() (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Remove useless PCI bus walk (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Make iort_msi_map_rid() PCI agnostic (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Make iort_get_device_domain IRQ domain agnostic (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Make iort_match_node_callback walk the ACPI namespace for NC (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: remove redundant assignment to variable rc (Al Stone) [1865698 1851555] - [acpi] ACPI: NUMA: Remove the useless 'node >= MAX_NUMNODES' check (Al Stone) [1865698 1851555] - [acpi] ACPI: NUMA: Remove the useless sub table pointer check (Al Stone) [1865698 1851555] - [acpi] ACPI: tables: Remove the duplicated checks for acpi_parse_entries_array() (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200717 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Do not increment operation_region reference counts for field units (Al Stone) [1865698 1851555] - [acpi] ACPICA: Replace one-element array with flexible-array (Al Stone) [1865698 1851555] - [acpi] ACPI: acpi_pad: initialize preferred_cpu (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Clean up the removal of unused memory mappings (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Use deferred unmapping in acpi_os_unmap_iomem() (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Use deferred unmapping in acpi_os_unmap_generic_address() (Al Stone) [1865698 1851555] - [acpi] ACPICA: Preserve memory opregion mappings (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Implement deferred unmapping of ACPI memory (Al Stone) [1865698 1851555] - [acpi] ACPI: Use fallthrough pseudo-keyword (Al Stone) [1865698 1851555] - [acpi] acpi: thermal: Don't call thermal_zone_device_is_enabled() (Al Stone) [1865698 1851555] - [acpi] ACPI: fan: Fix Tiger Lake ACPI device ID (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add battery participant for TigerLake (Al Stone) [1865698 1851555] - [acpi] ACPI: tables: avoid relocations for table signature array (Al Stone) [1865698 1851555] - [acpi] ACPI: PAD: Eliminate usage of uninitialized_var() macro (Al Stone) [1865698 1851555] - [acpi] ACPI: sysfs: add newlines when printing module parameters (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: add newline when printing 'ec_event_clearing' module parameter (Al Stone) [1865698 1851555] - [acpi] ACPI: sysfs: Fix pm_profile_attr type (Al Stone) [1865698 1851555] - [acpi] ACPI: property: use cached name in acpi_fwnode_get_named_child_node() (Al Stone) [1865698 1851555] - [acpi] sched,acpi_pad: Convert to sched_set_fifo*() (Al Stone) [1865698 1851555] - [acpi] ACPI: PM: Avoid using power resources if there are none for D0 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200528 (Al Stone) [1865698 1851555] - [acpi] ACPICA: iASL: add new OperationRegion subtype keyword PlatformRtMechanism (Al Stone) [1865698 1851555] - [acpi] ACPI: CPPC: Fix reference count leak in acpi_cppc_processor_probe() (Al Stone) [1865698 1851555] - [acpi] ACPI: sysfs: Fix reference count leak in acpi_sysfs_add_hotplug_profile() (Al Stone) [1865698 1851555] - [acpi] ACPI: GED: use correct trigger type field in _Exx / _Lxx handling (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Remove the unused __get_pci_rid() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: PM: s2idle: Extend GPE dispatching debug message (Al Stone) [1865698 1851555] - [acpi] ACPI: PM: s2idle: Print type of wakeup debug messages (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add battery participant driver (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Additional sysfs attributes for power participant driver (Al Stone) [1865698 1851555] - [acpi] ACPI: video: Use native backlight on Acer TravelMate 5735Z (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Fix PMCG node single ID mapping handling (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Kick the memory_failure() queue for synchronous errors (Al Stone) [1865698 1851555] - [mm] mm/memory-failure: Add memory_failure_queue_kick() (Al Stone) [1865698 1851555] - [acpi] ACPI: IORT: Add comments for not calling acpi_put_table() (Al Stone) [1865698 1851555] - [acpi] ACPI: GTDT: Put GTDT table after parsing (Al Stone) [1865698 1851555] - [acpi] ACPI / PMIC: Add i2c address for thermal control (Al Stone) [1865698 1851555] - [acpi] ACPI: GED: add support for _Exx / _Lxx handler methods (Al Stone) [1865698 1851555] - [acpi] ACPI: Delete unused proc filename macros (Al Stone) [1865698 1851555] - [acpi] ACPI: IORT: Add extra message "applying workaround" for off-by-1 issue (Al Stone) [1865698 1851555] - [acpi] ACPI: utils: Add acpi_evaluate_reg() helper (Al Stone) [1865698 1851555] - [acpi] ACPI: debug: Make two functions static (Al Stone) [1865698 1851555] - [acpi] ACPI: sleep: Put the FACS table after using it (Al Stone) [1865698 1851555] - [acpi] ACPI: scan: Put SPCR and STAO table after using it (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Put the ACPI table after using it (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the HEST table for error path (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the error record serialization table for error path (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the error injection table for error path and module exit (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the boot error record table after parsing (Al Stone) [1865698 1851555] - [acpi] ACPI: watchdog: Put the watchdog action table after parsing (Al Stone) [1865698 1851555] - [acpi] ACPI: LPIT: Put the low power idle table after using it (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200430 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix required parameters for _NIG and _NIH (Al Stone) [1865698 1851555] - [acpi] ACPICA: Dispatcher: add status checks (Al Stone) [1865698 1851555] - [acpi] ACPICA: Disassembler: ignore AE_ALREADY_EXISTS status when parsing create operators (Al Stone) [1865698 1851555] - [acpi] ACPICA: Move acpi_gbl_next_cmd_num definition to acglobal.h (Al Stone) [1865698 1851555] - [acpi] ACPICA: Make acpi_protocol_lengths static (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: work around num_ids ambiguity (Al Stone) [1865698 1851555] - [acpi] Revert "ACPI/IORT: Fix 'Number of IDs' handling in iort_id_map()" (Al Stone) [1865698 1851555] - [pci] PCI: Constify struct pci_ecam_ops (Al Stone) [1865698 1851555] - [acpi] PM: ACPI: Output correct message on target power state (Al Stone) [1865698 1851555] - [acpi] ACPI: CPPC: Make some symbols static (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: idle: Allow probing on platforms with one ACPI C-state (Al Stone) [1865698 1851555] - [documentation] PM: sleep: core: Rename DPM_FLAG_LEAVE_SUSPENDED (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Rename dev_pm_smart_suspend_and_suspended() (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Rename dev_pm_may_skip_resume() (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Rework the power.may_skip_resume handling (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Do not skip callbacks in the resume phase (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Switch back to async_schedule_dev() (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Fold functions into their callers (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Simplify the SMART_SUSPEND flag handling (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Use built-in RCU list checking (Al Stone) [1865698 1851555] - [base] PM: core: Fix handling of devices deleted during system-wide resume (Al Stone) [1865698 1851555] - [base] PM: sleep: Drop dpm_noirq_begin() and dpm_noirq_end() (Al Stone) [1865698 1851555] - [kernel] PM: sleep: Integrate suspend-to-idle with generig suspend flow (Al Stone) [1865698 1851555] - [base] PM: sleep: Drop dev_pm_skip_next_resume_phases() (Al Stone) [1865698 1851555] - [acpi] ACPI: button: Drop no longer necessary Asus T200TA lid_init_state quirk (Al Stone) [1865698 1851555] - [acpi] ACPI/PCI: pci_link: use extended_irq union member when setting ext-irq shareable (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Fix up fast path check in acpi_ec_add() (Al Stone) [1865698 1851555] - [x86] ACPI, x86/boot: make acpi_nobgrt static (Al Stone) [1865698 1851555] - [x86] acpi/x86: add a kernel parameter to disable ACPI BGRT (Al Stone) [1865698 1851555] - [acpi] x86: ACPI: fix CPU hotplug deadlock (Al Stone) [1865698 1851555] - [x86] acpi/x86: ignore unspecified bit positions in the ACPI global lock field (Al Stone) [1865698 1851555] - [x86] x86/acpi: make "asmlinkage" part first thing in the function definition (Al Stone) [1865698 1851555] - [x86] x86/ACPI/sleep: Move acpi_get_wakeup_address() into sleep.c, remove from (Al Stone) [1865698 1851555] - [x86] x86/ACPI/sleep: Remove an unnecessary include of asm/realmode.h (Al Stone) [1865698 1851555] - [x86] x86/efi: Explicitly include realmode.h to handle RM trampoline quirk (Al Stone) [1865698 1851555] - [acpi] ACPI: video: Use native backlight on Acer Aspire 5783z (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version 20200326 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fixes for acpiExec namespace init file (Al Stone) [1865698 1851555] - [acpi] ACPICA: WSMT: Fix typo, no functional change (Al Stone) [1865698 1851555] - [acpi] ACPICA: utilities: fix sprintf() (Al Stone) [1865698 1851555] - [acpi] ACPICA: acpiexec: remove redeclaration of acpi_gbl_db_opt_no_region_support (Al Stone) [1865698 1851555] - [acpi] ACPICA: Change PlatformCommChannel ASL keyword to PCC (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix IVRS IVHD type 10h reserved field name (Al Stone) [1865698 1851555] - [acpi] ACPICA: Implement IVRS IVHD type 11h parsing (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix a typo in a comment field (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200214 (Al Stone) [1865698 1851555] - [acpi] ACPI: CPPC: clean up acpi_get_psd_map() (Al Stone) [1865698 1851555] - [acpi] ACPI: PCI: Use scnprintf() for avoiding potential buffer overflow (Al Stone) [1865698 1851555] - [acpi] ACPI: fan: Use scnprintf() for avoiding potential buffer overflow (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Eliminate EC_FLAGS_QUERY_HANDSHAKE (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Do not clear boot_ec_is_ecdt in acpi_ec_add() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Simplify acpi_ec_ecdt_start() and acpi_ec_init() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Consolidate event handler installation code (Al Stone) [1865698 1851555] - [acpi] ACPI: list_for_each_safe() -> list_for_each_entry_safe() (Al Stone) [1865698 1851555] - [acpi] ACPI: video: remove redundant assignments to variable result (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Add missing __acquires/__releases annotations (Al Stone) [1865698 1851555] - [acpi] ACPI / battery: Cleanup Lenovo Ideapad Miix 320 DMI table entry (Al Stone) [1865698 1851555] - [acpi] ACPI / AC: Cleanup DMI quirk table (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Use fast path in acpi_ec_add() for DSDT boot EC (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Simplify acpi_ec_add() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Drop AE_NOT_FOUND special case from ec_install_handlers() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Avoid passing redundant argument to functions (Al Stone) [1865698 1851555] - [include] ACPI: NUMA: Up-level "map to online node" functionality (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix a couple of typos (Al Stone) [1865698 1851555] - [acpi] ACPICA: use acpi_size instead of u32 for prefix_path_length (Al Stone) [1865698 1851555] - [acpi] ACPICA: cast length arguement to acpi_ns_build_normalized_path() as u32 (Al Stone) [1865698 1851555] - [acpi] ACPICA: cast the result of the pointer difference to u32 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Table Manager: Update comments in a function header (Al Stone) [1865698 1851555] - [acpi] ACPICA: Enable sleep button on ACPI legacy wake (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix a comment "enable" fixed events -> "disable" all fixed events (Al Stone) [1865698 1851555] - [acpi] ACPICA: ASL-ASL+ converter: make root file a parameter for cv_init_file_tree (Al Stone) [1865698 1851555] - [acpi] ACPICA: ASL-ASL+ converter: remove function parameters from cv_init_file_tree() (Al Stone) [1865698 1851555] - [acpi] ACPI: Add new tiny-power-button driver to directly signal init (Al Stone) [1865698 1851555] - [acpi] ACPI: button: move HIDs to acpi/button.h (Al Stone) [1865698 1851555] - [acpi] ACPI: treewide: remove redundant IS_ERR() before error code check (Al Stone) [1865698 1851555] - [dma] dmaengine: idma64: Use actual device for DMA transfers (Steve Best) [1784118] - [platform] platform/x86: dell-smbios-wmi: Correct a memory leak (David Arcari) [1898516] - [x86] x86/{mce,mm}: Unmap the entire page if the whole page is affected and poisoned (Aristeu Rozanski) [1850800]- [x86] kvm: x86: fix CPUID entries returned by KVM_GET_CPUID2 ioctl (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: use kvm_complete_insn_gp in emulating RDMSR/WRMSR (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: remove bogus #GP injection (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: de-allocate svm_cpu_data for all cpus in svm_cpu_uninit() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Fix split-irqchip vs interrupt injection window request (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: handle !lapic_in_kernel case in kvm_cpu_*_extint (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: fix error return code in svm_create_vcpu() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Fix offset computation bug in __sev_dbg_decrypt() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Use cpuid to determine max gfn (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: mmu: Fix SPTE encoding of MMIO generation upper half (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nvmx: Sync unsync'd vmcs02 state to vmcs12 on migration (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: tracing: Fix unmatched kvm_entry and kvm_exit events (Paolo Bonzini) [1904054 1906893 1904128] - [documentation] kvm: documentation: Update description of KVM_{GET, CLEAR}_DIRTY_LOG (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: get smi pending status correctly (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/pmu: Fix HW_REF_CPU_CYCLES event pseudo-encoding in intel_arch_events[] (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/pmu: Fix UBSAN shift-out-of-bounds warning in intel_pmu_refresh() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Add more protection against undefined behavior in rsvd_bits() (Paolo Bonzini) [1904054 1906893 1904128] - [documentation] kvm: documentation: Fix spec for KVM_CAP_ENABLE_CAP_VM (Paolo Bonzini) [1904054 1906893 1904128] - [documentation] kvm: Forbid the use of tagged userspace addresses for memslots (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: allow KVM_REQ_GET_NESTED_STATE_PAGES outside guest mode for VMX (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: cancel KVM_REQ_GET_NESTED_STATE_PAGES on nested vmexit (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: mark vmcb as dirty when forcingly leaving the guest mode (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: correctly restore nested_run_pending on migration (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Clarify TDP MMU page list invariants (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Ensure TDP MMU roots are freed after yield (Paolo Bonzini) [1904054 1906893 1904128] - [security] apparmor: remove duplicate macro list_entry_is_head() (Paolo Bonzini) [1904054 1906893 1904128] - [kernel] linux/list.h: add a macro to test if entry is pointing to the head (Paolo Bonzini) [1904054 1906893 1904128] - [virt] kvm: check tlbs_dirty directly (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: change in pv_eoi_get_pending() to make code more readable (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: fix shift out of bounds reported by UBSAN (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Optimize not-present/MMIO SPTE check in get_mmio_spte() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Use raw level to index into MMIO walks' sptes array (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Get root level from walkers when retrieving MMIO SPTE (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Use -1 to flag an undefined spte in get_mmio_spte() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Remove the call to sev_platform_status() during setup (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Don't flush cache if hardware enforces cache coherency across encryption domains (Paolo Bonzini) [1904054 1906893 1904128] - [x86] cpu: Add hardware-enforced cache coherency as a CPUID feature (Paolo Bonzini) [1904054 1906893 1904128] - [x86] Remove X86_FEATURE_MFENCE_RDTSC (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: reinstate vendor-agnostic check on SPEC_CTRL cpuid bits (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm/vmx: Use TEST REG, REG instead of CMP $0, REG in vmenter.S (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: ignore SIPIs that are received while not in wait-for-sipi state (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: set fixed bits by hand (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Add TDP MMU SPTE changed trace point (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Add existing trace points to TDP MMU (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: check CR4 changes against vcpu->arch (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: adjust SEV for commit 7e8e6eed75e (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Move asid to vcpu_svm (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: remove unused macro HV_CLOCK_SIZE (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Sink cpuid update into vendor-specific set_cr4 functions (Paolo Bonzini) [1904054 1906893 1904128] - [virt] kvm: remove kvm_clear_guest_page (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Don't track dirty for KVM_SET_[TSS_ADDR|IDENTITY_MAP_ADDR] (Paolo Bonzini) [1904054 1906893 1904128] - [tools] kvm: selftests: test KVM_GET_SUPPORTED_HV_CPUID as a system ioctl (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: hyper-v: allow KVM_GET_SUPPORTED_HV_CPUID as a system ioctl (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: emulate wait-for-SIPI and SIPI-VMExit (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: fix apic_accept_events vs check_nested_events (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Return bool instead of int for CR4 and SREGS validity checks (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Move vendor CR4 validity check to dedicated kvm_x86_ops hook (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Drop VMXE check from svm_set_cr4() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: vmx: Drop explicit 'nested' check from vmx_set_cr4() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: vmx: Drop guest CPUID check for VMXE in vmx_set_cr4() (Paolo Bonzini) [1904054 1906893 1904128] - [netdrv] net/mlx5e: Update max_opened_tc also when channels are closed (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Fix leak upon failure of rule creation (Alaa Hleihel) [1918379 1914766] - [netdrv] net/mlx5: Fix function calculation for page trees (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Allow creating all QPs even when non RDMA profile is used (Alaa Hleihel) [1918379] - [netdrv] mlx5: Mark BlueField-3 as unsupported device (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Update the list of the PCI supported devices (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Enable host PF HCA after eswitch is initialized (Alaa Hleihel) [1923760 1918379] - [netdrv] net/mlx5: Rename peer_pf to host_pf (Alaa Hleihel) [1923760 1918379] - [netdrv] net/mlx5: Make API mlx5_core_is_ecpf accept const pointer (Alaa Hleihel) [1923760 1918379] - [netdrv] net/mlx5: simplify the return expression of mlx5_ec_init() (Alaa Hleihel) [1918379] - [infiniband] IB/mlx5: Add mutex destroy call to cap_mask_mutex mutex (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Use strict get/set operations for obj_id (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Use the correct obj_id upon DEVX TIR creation (Alaa Hleihel) [1918379] - [include] net/mlx5: Expose ifc bits for query modify header (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: CT: Fix incorrect removal of tuple_nat_node from nat rhashtable (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Revert parameters on errors when changing MTU and LRO state without reset (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Revert parameters on errors when changing trust state without reset (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Correctly handle changing the number of queues when the interface is down (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Fix CT rule + encap slow path offload and deletion (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Disable hw-tc-offload when MLX5_CLS_ACT config is disabled (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Maintain separate page trees for ECPF and PF functions (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Fix IPSEC stats (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Reduce tc unsupported key print level (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: free page before return (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: E-switch, Fix rate calculation for overflow (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Fix memory leak on flow table creation error flow (Alaa Hleihel) [1918379] - [infiniband] Revert "RDMA/mlx5: Fix devlink deadlock on net namespace deletion" (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Fix wrong free of blue flame register on error (Alaa Hleihel) [1918379] - [infiniband] IB/mlx5: Fix error unwinding when set_has_smi_cap fails (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Add missing capability check for uplink follow (Alaa Hleihel) [1918379] - [netdrv] iavf: Use kzalloc for allocating only one thing (Stefan Assmann) [1838735] - [netdrv] iavf: fix double-release of rtnl_lock (Stefan Assmann) [1838735] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Stefan Assmann) [1838735] - [netdrv] iavf: Fix updating statistics (Stefan Assmann) [1838735] - [netdrv] iavf: fix error return code in iavf_init_get_resources() (Stefan Assmann) [1838735] - [netdrv] ethernet/intel: Convert fallthrough code comments (Stefan Assmann) [1838735] - [netdrv] net/intel: remove driver versions from Intel drivers (Stefan Assmann) [1838735] - [net] Bluetooth: Fix null pointer dereference in amp_read_loc_assoc_final_data (Gopal Tiwari) [1916057] - [fs] fs/fs-writeback.c: fix kernel-doc warning (Waiman Long) [1918047] - [include] memcg: only record foreign writebacks with dirty pages when memcg is not disabled (Waiman Long) [1918047] - [trace] writeback: don't access page->mapping directly in track_foreign_dirty TP (Waiman Long) [1918047] - [fs] writeback: add tracepoints for cgroup foreign writebacks (Waiman Long) [1918047] - [mm] writeback, memcg: Implement foreign dirty flushing (Waiman Long) [1918047] - [mm] mm: remove the account_page_dirtied export (Waiman Long) [1918047] - [fs] writeback, memcg: Implement cgroup_writeback_by_id() (Waiman Long) [1918047] - [mm] writeback: Separate out wb_get_lookup() from wb_get_create() (Waiman Long) [1918047] - [include] bdi: Add bdi->id (Waiman Long) [1918047] - [mm] mm/page-writeback: introduce tracepoint for wait_on_page_writeback() (Waiman Long) [1918047] - [fs] kernfs: fix barrier usage in __kernfs_new_node() (Waiman Long) [1918047] - [fs] kernfs: Allocating memory for kernfs_iattrs with kmem_cache (Waiman Long) [1918047] - [fs] fs: Convert writeback to XArray (Waiman Long) [1918047] - [mm] mm: Convert page-writeback to XArray (Waiman Long) [1918047] - [mm] mm/filemap: add missing mem_cgroup_uncharge() to __add_to_page_cache_locked() (Waiman Long) [1917681] - [mm] mm/slub: fix panic in slab_alloc_node() (Oleksandr Natalenko) [1921056] - [net] xfrm: interface: fix the priorities for ipip and ipv6 tunnels (Sabrina Dubroca) [1923269] - [net] netfilter: ipset: fix shift-out-of-bounds in htable_bits() (Antoine Tenart) [1918684] - [net] tcp: refine tcp_pacing_delay() for very low pacing rates (Antoine Tenart) [1905897] - [net] ensure correct skb->tstamp in various fragmenters (Antoine Tenart) [1905897] - [net] tcp: repaired skbs must init their tso_segs (Antoine Tenart) [1905897] - [net] tcp: address problems caused by EDT misshaps (Antoine Tenart) [1905897] - [net] net_sched: sch_fq: ensure maxrate fq parameter applies to EDT flows (Antoine Tenart) [1905897] - [net] tcp: refine tcp_tso_should_defer() after EDT adoption (Antoine Tenart) [1905897] - [net] tcp_bbr: update comments to reflect pacing_margin_percent (Antoine Tenart) [1905897] - [net] tcp: add tcp_reset_xmit_timer() helper (Antoine Tenart) [1905897] - [net] tcp: fix TCP_REPAIR xmit queue setup (Antoine Tenart) [1905897] - [net] tcp_bbr: adjust TCP BBR for departure time pacing (Antoine Tenart) [1905897] - [net] tcp_bbr: fix typo in bbr_pacing_margin_percent (Antoine Tenart) [1905897] - [net] tcp: optimize tcp internal pacing (Antoine Tenart) [1905897] - [net] net_sched: sch_fq: no longer use skb_is_tcp_pure_ack() (Antoine Tenart) [1905897] - [net] tcp: mitigate scheduling jitter in EDT pacing model (Antoine Tenart) [1905897] - [net] tcp: do not change tcp_wstamp_ns in tcp_mstamp_refresh (Antoine Tenart) [1905897] - [net] tcp/fq: move back to CLOCK_MONOTONIC (Antoine Tenart) [1905897] - [net] tcp: switch tcp_internal_pacing() to tcp_wstamp_ns (Antoine Tenart) [1905897] - [net] tcp: switch tcp and sch_fq to new earliest departure time model (Antoine Tenart) [1905897] - [net] tcp: switch internal pacing timer to CLOCK_TAI (Antoine Tenart) [1905897] - [net] tcp: provide earliest departure time in skb->tstamp (Antoine Tenart) [1905897] - [net] tcp: add tcp_wstamp_ns socket field (Antoine Tenart) [1905897] - [net] net_sched: sch_fq: switch to CLOCK_TAI (Antoine Tenart) [1905897] - [net] tcp: introduce tcp_skb_timestamp_us() helper (Antoine Tenart) [1905897] - [net] tcp: switch tcp_clock_ns() to CLOCK_TAI base (Antoine Tenart) [1905897] - [drm] drm/nouveau/disp/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/dmaobj/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/gpio/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/bar/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/mmu/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/timer/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/fb/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/imem/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/privring/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/mc/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/devinit/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/bios/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/pci/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/core: recognise GA10 (Ben Skeggs) [1916583] - [drm] drm/nouveau/kms/nv50-: fix case where notifier buffer is at offset 0 (Ben Skeggs) [1916583] - [drm] drm/nouveau/mmu: fix vram heap sizing (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/gk110-: disable hw-initiated dpcd reads (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/gk110: split out from i2c/gk104 (Ben Skeggs) [1916583] - [drm] drm/nouveau/privring: ack interrupts the same way as RM (Ben Skeggs) [1916583] - [drm] drm/nouveau/bios: fix issue shadowing expansion ROMs (Ben Skeggs) [1916583] - [netdrv] net/mlx5e: Fix memleak in mlx5e_create_l2_table_groups (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: Fix two double free cases (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: ethtool, Fix restriction of autoneg with 56G (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: In skb build skip setting mark in switchdev mode (Alaa Hleihel) [1899457] - [netdrv] net/mlx5: E-Switch, fix changing vf VLANID (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: Fix SWP offsets when vlan inserted by driver (Alaa Hleihel) [1899457 1819580] - [netdrv] net/mlx5: Use port_num 1 instead of 0 when delete a RoCE address (Alaa Hleihel) [1899457] - [netdrv] net/mlx5: Check if lag is supported before creating one (Alaa Hleihel) [1899457] - [infiniband] RDMA/mlx5: Fix MR cache memory leak (Alaa Hleihel) [1899457] - [netdrv] net/mlx5: Fix passing zero to 'PTR_ERR' (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: remove unnecessary memset (Alaa Hleihel) [1899457] - [infiniband] RDMA/mlx5: Assign dev to DM MR (Alaa Hleihel) [1899457] - [infiniband] RDMA/mlx5: Remove mlx5_ib_mr->npages (Alaa Hleihel) [1899457] - [documentation] scsi: fc: Update documentation of sysfs nodes for FPIN stats (Ewan Milne) [1859967] - [scsi] scsi: fc: Add mechanism to update FPIN signal statistics (Ewan Milne) [1859967] - [scsi] scsi: fc: Parse FPIN packets and update statistics (Ewan Milne) [1859967] - [scsi] scsi: fc: Add FPIN statistics to fc_host and fc_rport objects (Ewan Milne) [1859967] - [uapi] scsi: fc: Update formal FPIN descriptor definitions (Ewan Milne) [1859967] - [scsi] scsi: smartpqi: Update version to 1.2.16-012 (Don Brace) [1890727 1889844] - [scsi] scsi: smartpqi: Correct pqi_sas_smp_handler busy condition (Don Brace) [1890727 1889844] - [scsi] scsi: smartpqi: Correct driver removal with HBA disks (Don Brace) [1890727 1889844] - [target] scsi: target: Fix XCOPY NAA identifier lookup (Maurizio Lombardi) [1900463] {CVE-2020-28374} - [x86] perf/x86/intel/uncore: Add Comet Lake support (Michael Petlan) [1873271]- [net] bridge: Fix a warning when del bridge sysfs (Davide Caratti) [1917518] - [net] bridge: Avoid infinite loop when suppressing NS messages with invalid options (Davide Caratti) [1917518] - [net] bridge: fix stale eth hdr pointer in br_dev_xmit (Davide Caratti) [1917518] - [net] SUNRPC: Handle 0 length opaque XDR object data properly (Dave Wysochanski) [1906400] - [net] SUNRPC: Move simple_get_bytes and simple_get_netobj into private header (Dave Wysochanski) [1906400] - [block] nbd: make the config put is called before the notifying the waiter (Ming Lei) [1743857] - [block] nbd: restore default timeout when setting it to zero (Ming Lei) [1743857] - [kernel] rcu/tree: Defer kvfree_rcu() allocation to a clean context (Waiman Long) [1922453] - [kernel] cgroup: Fix memory leak when parsing multiple source parameters (Waiman Long) [1922453] - [kernel] cpuset: fix race between hotplug work and later CPU offline (Waiman Long) [1922453] - [kernel] cgroup: freezer: call cgroup_enter_frozen() with preemption disabled in ptrace_stop() (Waiman Long) [1922453] - [kernel] cgroup: freezer: fix frozen state inheritance (Waiman Long) [1922453] - [kernel] locking/lockdep: Cure noinstr fail (Waiman Long) [1922453] - [kernel] tick/nohz: Narrow down noise while setting current task's tick dependency (Waiman Long) [1922453] - [fs] fs: Kill DCACHE_DONTCACHE dentry even if DCACHE_REFERENCED is set (Eric Sandeen) [1921903] - [fs] fs: Handle I_DONTCACHE in iput_final() instead of generic_drop_inode() (Eric Sandeen) [1921903] - [netdrv] ice: update dev_addr in ice_set_mac_address even if HW filter exists (Jonathan Toppins) [1879318] - [tools] libbpf: Fix uninitialized variable in btf_parse_type_sec (Jiri Olsa) [1922197] - [tools] libbpf: Support BTF loading and raw data output in both endianness (Jiri Olsa) [1922197] - [tools] selftests/bpf: Test BTF writing APIs (Jiri Olsa) [1922197] - [tools] libbpf: Add btf__str_by_offset() as a more generic variant of name_by_offset (Jiri Olsa) [1922197] - [tools] libbpf: Add BTF writing APIs (Jiri Olsa) [1922197] - [tools] libbpf: Add btf__new_empty() to create an empty BTF object (Jiri Olsa) [1922197] - [tools] libbpf: Allow modification of BTF and add btf__add_str API (Jiri Olsa) [1922197] - [tools] libbpf: Extract generic string hashing function for reuse (Jiri Olsa) [1922197] - [tools] libbpf: Generalize common logic for managing dynamically-sized arrays (Jiri Olsa) [1922197] - [tools] libbpf: Remove assumption of single contiguous memory for BTF data (Jiri Olsa) [1922197] - [tools] libbpf: Refactor internals of BTF type index (Jiri Olsa) [1922197] - [tools] libbpf: Remove any use of reallocarray() in libbpf (Jiri Olsa) [1922197] - [tools] libbpf: Clean up and improve CO-RE reloc logging (Jiri Olsa) [1922197] - [tools] libbpf: Improve error logging for mismatched BTF kind cases (Jiri Olsa) [1922197] - [scsi] scsi: qla2xxx: Fix mailbox Ch erroneous error (Nilesh Javali) [1894578] - [sound] ALSA: ASoC: Intel: tgl: remove sof_fw_filename set for tgl_3_in_1_default (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: allow soundwire use desc->default_fw_filename (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: sof_sdw: set proper flags for Dell TGL-H SKU 0A5E (Jaroslav Kysela) [1783462] - [sound] ALSA: hda: intel-dsp-config: add PCI id for TGL-H (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Properly unregister DAI on removal (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Fix memory corruption in soc_tplg_denum_create_values() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Add missing size check (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Fix wrong size check (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Simplify remove_widget function (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Remove empty functions (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Change allocations to resource managed (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Unify all device references (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Remove unused functions from topology API (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98926: drop driver pm=NULL assignment (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98925: drop driver pm=NULL assignment (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98926: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98925: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max9867: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: codecs: max98373-sdw: align regmap use with other codecs (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98371: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98390: Fix error codes in max98390_dsm_init() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98371: drop driver pm=NULL assignment (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98095: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98373: don't access volatile registers in bias level off (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98090: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: pcm: DRAIN support reactivation (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt711: mutex between calibration and power state changes (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt711: remove warnings (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt5660: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: codecs: rt*.c: remove useless pointer cast (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015p: delay 300ms after SDB pulling high for calibration (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015p: move SDB control from trigger to DAPM (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: check the return value of regmap_read during i2c probe (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: modification for calibration to get better performance (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: support TDM slot configuration (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: qcom: Fix build failure when slimbus is module (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: Fix DEBUG_LOCKS_WARN_ON for uninitialized attribute (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: master: use pm_runtime_set_active() on add (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: intel: fix another unused-function warning (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: only clear valid DPN interrupts (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: only clear valid DP0 interrupts (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: registers: add definitions for clearable interrupt fields (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: reset slave_notify status at each loop (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: add comments to explain interrupt loop filter (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: SDCA: detect sdca_cascade interrupt (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: kbl_rt5663_max98927: Fix kabylake_ssp_fixup function (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: update TDM slot_width (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for tgl_rt1011_rt5682 (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: add dpcm_capture flag for speaker_smart_amp (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: intel: sof_rt5682: Add quirk for Dooly (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for cml_rt1015_rt5682 (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: sof_sdw: add quirk for new TigerLake-SDCA device (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: add hw specific PCM constraints (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: loader: do not warn about unknown firmware headers (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Remove multistep topology loading (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: sof-audio: remove goto used for force-nocodec support (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ops: modify the signature of stall op (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: topology: remove const in sizeof() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: use inclusive language for bclk and fsync (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: use inclusive language for bclk and fsync (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ops: add parse_platform_ext_manifest() op (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: relax PCM period and buffer size constraints (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: nocodec: modify DAI link definitions (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: trace: Add runtime trace filtering mechanism (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Add `memory_info` file to debugfs (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Change section comment for SOF_IPC_TEST_ (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Improve code alignment in header.h (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: IPC: fix implicit type overflow (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ext_manifest: Parse firmware config dictionary (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: hda: fix the condition passed to sof_dev_dbg_or_err (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: modify the SOF_DBG flags (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: hda: remove duplicated status dump (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ext_manifest: parse cavs extra config data elem (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: hda: define parse_platform_ext_manifest op (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: control: override volume info callback (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: control: remove const in sizeof() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Add .prepare/.complete callbacks (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Activate runtime PM with SOF OF device (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: add missing ret=0 at soc_pcm_open() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: ignore un-needed mutex_unlock() case on soc_pcm_open() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: remove unneeded dev_err() for snd_soc_component_module/open() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: remove unneeded dev_err() for snd_soc_dai_startup() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: add soc_pcm_clean() and call it from soc_pcm_open/close() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-link: add mark for snd_soc_link_startup/shutdown() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-dai: add mark for snd_soc_dai_startup/shutdown() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-component: add mark for snd_soc_pcm_component_pm_runtime_get/put() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-component: add mark for soc_pcm_components_open/close() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: KMB: Fix S24_LE configuration (Jaroslav Kysela) [1783462] - [sound] ALSA: ASOC: Intel: kbl_rt5663_rt5514_max98927: Do not try to disable disabled clock (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 Detachable quirks (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt5682: change SAR voltage threshold (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: increase the time to detect BCLK (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: add delay to fix pop noise from speaker (Jaroslav Kysela) [1783462] - [powerpc] powerpc/tm: Avoid machine crash on rt_sigreturn() (Gustavo Duarte) [1860550] - [net] udp: Prevent reuseport_select_sock from reading uninitialized socks (Guillaume Nault) [1917953] - [net] flow_offload: Fix memory leak for indirect flow block (Guillaume Nault) [1917953] - [net] sock: set sk_err to ee_errno on dequeue from errq (Guillaume Nault) [1917953] - [net] devlink: Make sure devlink instance and port are in same net namespace (Guillaume Nault) [1917953] - [net] devlink: Hold rtnl lock while reading netdev attributes (Guillaume Nault) [1917953] - [net] devlink: Add missing genlmsg_cancel() in devlink_nl_sb_port_pool_fill() (Guillaume Nault) [1917953] - [net] tipc: fix NULL deref in tipc_link_xmit() (Xin Long) [1918657] - [net] tipc: prevent possible null deref of link (Xin Long) [1918657] - [net] tipc: fix incompatible mtu of transmission (Xin Long) [1918657] - [net] tipc: fix memory leak in tipc_topsrv_start() (Xin Long) [1918657] - [net] tipc: add stricter control of reserved service types (Xin Long) [1918657] - [tools] selftests/bpf/test_offload.py: Filter bpftool internal map when counting maps (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Reset ethtool features after failed setting (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Fix expected case of extack messages (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Only check verifier log on verification fails (Jiri Benc) [1882709] - [netdrv] netdevsim: Add debugfs toggle to reject BPF programs in verifier (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Remove check for program load flags match (Jiri Benc) [1882709] - [net] xdp: Remove the xdp_attachment_flags_ok() callback (Jiri Benc) [1882709] - [net] net, xsk: Avoid taking multiple skbuff references (Jiri Benc) [1882709] - [net] increment xmit_recursion level in dev_direct_xmit() (Jiri Benc) [1882709] - [kernel] usermodehelper: reset umask to default before executing user process (Jiri Benc) [1882709] - [net] xsk: Do not discard packet when NETDEV_TX_BUSY (Jiri Benc) [1882709] - [net] xsk: Fix number of pinned pages/umem size discrepancy (Jiri Benc) [1882709] - [include] netdevice.h: fix xdp_state kernel-doc warning (Jiri Benc) [1882709] - [net] bpf: xdp: Fix XDP mode when no mode flags specified (Jiri Benc) [1882709] - [net] bpf: Fix XDP FD-based attach/detach logic around XDP_FLAGS_UPDATE_IF_NOEXIST (Jiri Benc) [1882709] - [kernel] add a kernel_wait helper (Jiri Benc) [1882709] - [tools] selftests/bpf: Add link detach tests for cgroup, netns, and xdp bpf_links (Jiri Benc) [1882709] - [net] bpf: Add support for forced LINK_DETACH command (Jiri Benc) [1882709] - [kernel] bpf: Fix build without CONFIG_NET when using BPF XDP link (Jiri Benc) [1882709] - [net] xdp: Prevent kernel-infoleak in xsk_getsockopt() (Jiri Benc) [1882709] - [net] udp, bpf: Ignore connections in reuseport group after BPF sk lookup (Jiri Benc) [1882709] - [net] Revert "net: optimize the sockptr_t for unified kernel/user address spaces" (Jiri Benc) [1882709] - [net] improve the user pointer check in init_user_sockptr (Jiri Benc) [1882709] - [include] net: remove sockptr_advance (Jiri Benc) [1882709] - [include] net: make sockptr_is_null strict aliasing safe (Jiri Benc) [1882709] - [net] optimize the sockptr_t for unified kernel/user address spaces (Jiri Benc) [1882709] - [net] bpfilter: switch bpfilter_ip_set_sockopt to sockptr_t (Jiri Benc) [1882709] - [net] switch copy_bpf_fprog_from_user to sockptr_t (Jiri Benc) [1882709] - [include] net: add a new sockptr_t type (Jiri Benc) [1882709] - [net] bpfilter: reject kernel addresses (Jiri Benc) [1882709] - [net] bpfilter: split __bpfilter_process_sockopt (Jiri Benc) [1882709] - [net] bpfilter: fix up a sparse annotation (Jiri Benc) [1882709] - [net] udp: Don't discard reuseport selection when group has connections (Jiri Benc) [1882709] - [net] bpf, xdp: Remove XDP_QUERY_PROG and XDP_QUERY_PROG_HW XDP commands (Jiri Benc) [1882709] - [tools] selftests/bpf: Add BPF XDP link selftests (Jiri Benc) [1882709] - [net] bpf: Implement BPF XDP link-specific introspection APIs (Jiri Benc) [1882709] - [net] bpf, xdp: Implement LINK_UPDATE for BPF XDP link (Jiri Benc) [1882709] - [net] bpf, xdp: Add bpf_link-based XDP attachment API (Jiri Benc) [1882709] - [net] bpf, xdp: Extract common XDP program attachment logic (Jiri Benc) [1882709] - [net] bpf, xdp: Maintain info on attached XDP BPF programs in net_device (Jiri Benc) [1882709] - [kernel] bpf, netns: Fix build without CONFIG_INET (Jiri Benc) [1882709] - [net] udp6: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] udp6: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] udp: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] udp: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] ipv6: remove unused arg exact_dif in compute_score (Jiri Benc) [1882709] - [net] ipv4: remove unused arg exact_dif in compute_score (Jiri Benc) [1882709] - [net] udp: Remove unused variable/function (exact_dif) (Jiri Benc) [1882709] - [net] udp: Remove unused parameter (exact_dif) (Jiri Benc) [1882709] - [net] udp: only choose unbound UDP socket for multicast when not in a VRF (Jiri Benc) [1882709] - [net] ensure unbound datagram socket to be chosen when not in a VRF (Jiri Benc) [1882709] - [net] ensure unbound stream socket to be chosen when not in a VRF (Jiri Benc) [1882709] - [net] allow binding socket in a VRF when there's an unbound socket (Jiri Benc) [1882709] - [net] udp6: drop unneeded likely() call around IS_ERR() (Jiri Benc) [1882709] - [net] udp: drop unneeded likely() call around IS_ERR() (Jiri Benc) [1882709] - [net] inet6: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] inet6: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] inet: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] inet: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] simplify cBPF setsockopt compat handling (Jiri Benc) [1882709] - [net] explicitly include in net/core/sock.c (Jiri Benc) [1882709] - [include] compat: provide compat_ptr() on all architectures (Jiri Benc) [1882709] - [net] socket: move compat timeout handling into sock.c (Jiri Benc) [1882709] - [include] xdp: introduce xdp_get_shared_info_from_{buff, frame} utility routines (Jiri Benc) [1882709] - [net] xsk: Add xdp statistics to xsk_diag (Jiri Benc) [1882709] - [net] xsk: Add new statistics (Jiri Benc) [1882709] - [net] bpfilter: Initialize pos variable (Jiri Benc) [1882709] - [kernel] umd: Stop using split_argv (Jiri Benc) [1882709] - [kernel] umd: Remove exit_umh (Jiri Benc) [1882709] - [net] bpfilter: Take advantage of the facilities of struct pid (Jiri Benc) [1882709] - [kernel] exit: Factor thread_group_exited out of pidfd_poll (Jiri Benc) [1882709] - [kernel] umd: Track user space drivers with struct pid (Jiri Benc) [1882709] - [net] bpfilter: Move bpfilter_umh back into init data (Jiri Benc) [1882709] - [fs] exec: Remove do_execve_file (Jiri Benc) [1882709] - [kernel] umh: Stop calling do_execve_file (Jiri Benc) [1882709] - [kernel] umd: Transform fork_usermode_blob into fork_usermode_driver (Jiri Benc) [1882709] - [kernel] umd: Rename umd_info.cmdline umd_info.driver_name (Jiri Benc) [1882709] - [kernel] umd: For clarity rename umh_info umd_info (Jiri Benc) [1882709] - [kernel] umh: Separate the user mode driver and the user mode helper support (Jiri Benc) [1882709] - [kernel] umh: Move setting PF_UMH into umh_pipe_setup (Jiri Benc) [1882709] - [kernel] umh: Remove call_usermodehelper_setup_file. (Jiri Benc) [1882709] - [kernel] umh: Rename the user mode driver helpers for clarity (Jiri Benc) [1882709] - [kernel] umh: Capture the pid in umh_pipe_setup (Jiri Benc) [1882709] - [net] bpf: Add SO_KEEPALIVE and related options to bpf_setsockopt (Jiri Benc) [1882709] - [net] tcp: Expose tcp_sock_set_keepidle_locked (Jiri Benc) [1882709] - [net] tcp: add tcp_sock_set_keepidle (Jiri Benc) [1882709] - [net] sock: Move sock_valbool_flag to header (Jiri Benc) [1882709] - [net] spread "enum sock_flags" (Jiri Benc) [1882709] - [tools] bpf: Use local copy of headers including uapi/linux/filter.h (Jiri Benc) [1882709] - [net] bpfilter: fix iptables failure if bpfilter_umh is disabled (Jiri Benc) [1882709] - [s390] s390/crypto: add arch_get_random_long() support (Vladis Dronov) [1904274] - [net] net/smc: Add support for obtaining SMCR device list (Philipp Rudo) [1868684] - [net] net/smc: Add support for obtaining SMCD device list (Philipp Rudo) [1868684] - [net] net/smc: Add SMC-D Linkgroup diagnostic support (Philipp Rudo) [1868684] - [net] net/smc: Introduce SMCR get link command (Philipp Rudo) [1868684] - [net] net/smc: Introduce SMCR get linkgroup command (Philipp Rudo) [1868684] - [net] net/smc: Add support for obtaining system information (Philipp Rudo) [1868684] - [net] net/smc: Introduce generic netlink interface for diagnostic purposes (Philipp Rudo) [1868684] - [net] net/smc: Refactor smc ism v2 capability handling (Philipp Rudo) [1868684] - [net] net/smc: Add diagnostic information to link structure (Philipp Rudo) [1868684] - [net] net/smc: Add diagnostic information to smc ib-device (Philipp Rudo) [1868684] - [net] net/smc: Add link counters for IB device ports (Philipp Rudo) [1868684] - [net] net/smc: Add connection counters for links (Philipp Rudo) [1868684] - [net] net/smc: Use active link of the connection (Philipp Rudo) [1868684] - [net] net/smc: use helper smc_conn_abort() in listen processing (Philipp Rudo) [1868684] - [net] sched: sch_frag: add generic packet fragment support. (Marcelo Leitner) [1909262] - [net] sched: act_mirred: refactor the handle of xmit (Marcelo Leitner) [1909262] - [net] sched: fix miss init the mru in qdisc_skb_cb (Marcelo Leitner) [1909262] - [net] openvswitch: using ip6_fragment in ipv6_stub (Marcelo Leitner) [1909262] - [net] ipv6: add ipv6_fragment hook in ipv6_stub (Marcelo Leitner) [1909262] - [x86] x86/resctrl: Fix spelling in user-visible warning messages (Puneet Sethi) [1717078] - [x86] x86/resctrl: Enable user to view thread or core throttling mode (Puneet Sethi) [1717078] - [x86] x86/resctrl: Enumerate per-thread MBA controls (Puneet Sethi) [1717078] - [x86] cacheinfo: Move resctrl's get_cache_id() to the cacheinfo header file (Puneet Sethi) [1717078] - [x86] x86/resctrl: Add struct rdt_cache::arch_has_{sparse, empty}_bitmaps (Puneet Sethi) [1717078] - [x86] x86/resctrl: Merge AMD/Intel parse_bw() calls (Puneet Sethi) [1717078] - [x86] x86/resctrl: Add struct rdt_membw::arch_needs_linear to explain AMD/Intel MBA difference (Puneet Sethi) [1717078] - [x86] x86/resctrl: Use is_closid_match() in more places (Puneet Sethi) [1717078] - [x86] x86/resctrl: Use container_of() in delayed_work handlers (Puneet Sethi) [1717078] - [x86] x86/resctrl: Fix stale comment (Puneet Sethi) [1717078] - [x86] x86/resctrl: Remove struct rdt_membw::max_delay (Puneet Sethi) [1717078] - [x86] x86/resctrl: Remove unused struct mbm_state::chunks_bw (Puneet Sethi) [1717078] - [x86] x86/resctrl: Fix memory bandwidth counter width for AMD (Puneet Sethi) [1845633 1717078] - [documentation] Documentation: x86: fix some typos (Puneet Sethi) [1717078] - [documentation] Documentation: x86: Clarify MBA takes MB as referring to mba_sc (Puneet Sethi) [1717078] - [documentation] Documentation: x86: Remove cdpl2 unspported statement and fix capitalisation (Puneet Sethi) [1717078] - [documentation] Documentation: x86: Contiguous cbm isn't all X86 (Puneet Sethi) [1717078] - [documentation] Documentation: x86: convert resctrl_ui.txt to reST (Puneet Sethi) [1717078] - [kernel] livepatch: Make klp_apply_object_relocs static (Yannick Cote) [1866433] - [kernel] livepatch: Prevent module-specific KLP rela sections from referencing vmlinux symbols (Yannick Cote) [1866433] - [x86] livepatch: Remove .klp.arch (Yannick Cote) [1866433] - [kernel] livepatch: Apply vmlinux-specific KLP relocations early (Yannick Cote) [1866433] - [kernel] livepatch: Disallow vmlinux.ko (Yannick Cote) [1866433]- [sound] ALSA: hda: Add Cometlake-R PCI ID (Jaroslav Kysela) [1915650] - [fs] xfs: don't drain buffer lru on freeze and read-only remount (Brian Foster) [1903387] - [fs] xfs: rename xfs_wait_buftarg() to xfs_buftarg_drain() (Brian Foster) [1903387] - [net] mptcp: implement delegated actions (Paolo Abeni) [1892375] - [net] mptcp: schedule work for better snd subflow selection (Paolo Abeni) [1892375] - [net] mptcp: do not queue excessive data on subflows (Paolo Abeni) [1892375] - [net] mptcp: re-enable sndbuf autotune (Paolo Abeni) [1892375] - [net] mptcp: always graft subflow socket to parent (Paolo Abeni) [1892375] - [include] lockdep: Introduce in_softirq lockdep assert (Paolo Abeni) [1892375] - [net] selinux: handle MPTCP consistently with TCP (Paolo Abeni) [1892375] - [net] mptcp: fix locking in mptcp_disconnect() (Paolo Abeni) [1892375] - [net] mptcp: better msk-level shutdown. (Paolo Abeni) [1892375] - [net] mptcp: more strict state checking for acks (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add the MP_PRIO testcases (Paolo Abeni) [1892375] - [net] mptcp: add the mibs for MP_PRIO (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add set_flags command in pm_nl_ctl (Paolo Abeni) [1892375] - [net] mptcp: add set_flags command in PM netlink (Paolo Abeni) [1892375] - [net] mptcp: add the incoming MP_PRIO support (Paolo Abeni) [1892375] - [net] mptcp: add the outgoing MP_PRIO support (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add testcases for setting the address ID (Paolo Abeni) [1892375] - [net] mptcp: add the address ID assignment bitmap (Paolo Abeni) [1892375] - [net] mptcp: cap forward allocation to 1M (Paolo Abeni) [1892375] - [net] mptcp: fix pending data accounting (Paolo Abeni) [1892375] - [net] mptcp: push pending frames when subflow has free space (Paolo Abeni) [1892375] - [net] mptcp: properly annotate nested lock (Paolo Abeni) [1892375] - [net] mptcp: fix security context on server socket (Paolo Abeni) [1892375] - [net] mptcp: clear use_ack and use_map when dropping other suboptions (Paolo Abeni) [1892375] - [net] mptcp: let MPTCP create max size skbs (Paolo Abeni) [1892375] - [net] mptcp: pm: simplify select_local_address() (Paolo Abeni) [1892375] - [net] mptcp: parse and act on incoming FASTCLOSE option (Paolo Abeni) [1892375] - [net] mptcp: hold mptcp socket before calling tcp_done (Paolo Abeni) [1892375] - [net] mptcp: use MPTCPOPT_HMAC_LEN macro (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add the flush addrs testcase (Paolo Abeni) [1892375] - [net] mptcp: remove address when netlink flushes addrs (Paolo Abeni) [1892375] - [net] mptcp: attach subflow socket to parent cgroup (Paolo Abeni) [1892375] - [net] mptcp: be careful on subflows shutdown (Paolo Abeni) [1892375] - [net] mptcp: plug subflow context memory leak (Paolo Abeni) [1892375] - [net] mptcp: link MPC subflow into msk only after accept (Paolo Abeni) [1892375] - [net] mptcp: use the variable sk instead of open-coding (Paolo Abeni) [1892375] - [net] mptcp: rename add_addr_signal and mptcp_add_addr_status (Paolo Abeni) [1892375] - [net] mptcp: drop rm_addr_signal flag (Paolo Abeni) [1892375] - [net] mptcp: print out port and ahmac when receiving ADD_ADDR (Paolo Abeni) [1892375] - [net] mptcp: add port parameter for mptcp_pm_announce_addr (Paolo Abeni) [1892375] - [net] mptcp: send out dedicated packet for ADD_ADDR using port (Paolo Abeni) [1892375] - [net] mptcp: add the outgoing ADD_ADDR port support (Paolo Abeni) [1892375] - [net] mptcp: use adding up size to get ADD_ADDR length (Paolo Abeni) [1892375] - [net] mptcp: add port support for ADD_ADDR suboption writing (Paolo Abeni) [1892375] - [net] mptcp: unify ADD_ADDR and ADD_ADDR6 suboptions writing (Paolo Abeni) [1892375] - [net] mptcp: unify ADD_ADDR and echo suboptions writing (Paolo Abeni) [1892375] - [net] mptcp: print new line in mptcp_seq_show() if mptcp isn't in use (Paolo Abeni) [1892375] - [net] mptcp: emit tcp reset when a join request fails (Paolo Abeni) [1892375] - [net] tcp: merge 'init_req' and 'route_req' functions (Paolo Abeni) [1892375] - [net] security: add const qualifier to struct sock in various places (Paolo Abeni) [1892375] - [net] mptcp: avoid potential infinite loop in mptcp_recvmsg() (Paolo Abeni) [1892375] - [net] mptcp: use mptcp release_cb for delayed tasks (Paolo Abeni) [1892375] - [net] mptcp: avoid a few atomic ops in the rx path (Paolo Abeni) [1892375] - [net] mptcp: allocate TX skbs in msk context (Paolo Abeni) [1892375] - [net] mptcp: protect the rx path with the msk socket spinlock (Paolo Abeni) [1892375] - [net] mptcp: implement wmem reservation (Paolo Abeni) [1892375] - [net] mptcp: open code mptcp variant for lock_sock (Paolo Abeni) [1892375] - [net] mptcp: fix NULL ptr dereference on bad MPJ (Paolo Abeni) [1892375] - [net] mptcp: be careful on MPTCP-level ack. (Paolo Abeni) [1892375] - [net] mptcp: put reference in mptcp timeout timer (Paolo Abeni) [1892375] - [net] mptcp: refine MPTCP-level ack scheduling (Paolo Abeni) [1892375] - [net] mptcp: track window announced to peer (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add ADD_ADDR IPv6 test cases (Paolo Abeni) [1892375] - [net] mptcp: send out dedicated ADD_ADDR packet (Paolo Abeni) [1892375] - [net] mptcp: change add_addr_signal type (Paolo Abeni) [1892375] - [net] mptcp: keep unaccepted MPC subflow into join list (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add link failure test case (Paolo Abeni) [1892375] - [net] mptcp: skip to next candidate if subflow has unacked data (Paolo Abeni) [1892375] - [net] mptcp: fix state tracking for fallback socket (Paolo Abeni) [1892375] - [net] mptcp: drop WORKER_RUNNING status bit (Paolo Abeni) [1892375] - [net] mptcp: update rtx timeout only if required. (Paolo Abeni) [1892375] - [net] mptcp: send explicit ack on delayed ack_seq incr (Paolo Abeni) [1892375] - [net] mptcp: keep track of advertised windows right edge (Paolo Abeni) [1892375] - [net] mptcp: rework poll+nospace handling (Paolo Abeni) [1892375] - [net] mptcp: try to push pending data on snd una updates (Paolo Abeni) [1892375] - [net] mptcp: move page frag allocation in mptcp_sendmsg() (Paolo Abeni) [1892375] - [net] mptcp: refactor shutdown and close (Paolo Abeni) [1892375] - [net] mptcp: introduce MPTCP snd_nxt (Paolo Abeni) [1892375] - [net] mptcp: add accounting for pending data (Paolo Abeni) [1892375] - [net] mptcp: reduce the arguments of mptcp_sendmsg_frag (Paolo Abeni) [1892375] - [net] mptcp: introduce mptcp_schedule_work (Paolo Abeni) [1892375] - [net] tcp: factor out __tcp_close() helper (Paolo Abeni) [1892375] - [net] mptcp: use tcp_build_frag() (Paolo Abeni) [1892375] - [net] tcp: factor out tcp_build_frag() (Paolo Abeni) [1892375] - [net] tcp: schedule EPOLLOUT after a partial sendmsg (Paolo Abeni) [1892375] - [net] tcp: annotate tp->write_seq lockless reads (Paolo Abeni) [1892375] - [net] mptcp: fix static checker warnings in mptcp_pm_add_timer (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add ADD_ADDR timeout test case (Paolo Abeni) [1892375] - [documentation] networking: mptcp: Add MPTCP sysctl entries (Paolo Abeni) [1892375] - [net] mptcp: add a new sysctl add_addr_timeout (Paolo Abeni) [1892375] - [net] mptcp: split mptcp_clean_una function (Paolo Abeni) [1892375] - [net] tcp: propagate MPTCP skb extensions on xmit splits (Paolo Abeni) [1892375] - [net] mptcp: use _fast lock version in __mptcp_move_skbs (Paolo Abeni) [1892375] - [net] mptcp: adjust mptcp receive buffer limit if subflow has larger one (Paolo Abeni) [1892375] - [net] tcp: fix compile error if !CONFIG_SYSCTL (Paolo Abeni) [1892375] - [net] tcp: add tcp_tx_skb_cache sysctl (Paolo Abeni) [1892375] - [net] tcp: do not recycle cloned skbs (Paolo Abeni) [1892375] - [net] tcp: properly reset skb->truesize for tx recycling (Paolo Abeni) [1892375] - [net] tcp: cleanup sk_tx_skb_cache before reuse (Paolo Abeni) [1892375] - [net] tcp: fix zerocopy and notsent_lowat issues (Paolo Abeni) [1892375] - [net] tcp: add one skb cache for tx (Paolo Abeni) [1892375] - [include] include: fpga: adi-axi-common.h: fixup whitespace tab -> space (Luis Goncalves) [1494702] - [include] include: fpga: adi-axi-common.h: add version helper macros (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: convert get_user_pages() --> pin_user_pages() (Luis Goncalves) [1494702] - [fpga] fpga: dfl: fix bug in port reset handshake (Luis Goncalves) [1494702] - [fpga] fpga: dfl: pci: reduce the scope of variable 'ret' (Luis Goncalves) [1494702] - [fpga] fpga: dfl: pci: add device id for Intel FPGA PAC N3000 (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: add AFU interrupt support (Luis Goncalves) [1494702] - [fpga] fpga: dfl: fme: add interrupt support for global error reporting (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: add interrupt support for port error reporting (Luis Goncalves) [1494702] - [fpga] fpga: dfl: introduce interrupt trigger setting API (Luis Goncalves) [1494702] - [fpga] fpga: dfl: pci: add irq info for feature devices enumeration (Luis Goncalves) [1494702] - [fpga] fpga: dfl: parse interrupt info for feature devices on enumeration (Luis Goncalves) [1494702] - [fpga] fpga manager: xilinx-spi: check INIT_B pin during write_init (Luis Goncalves) [1494702] - [fpga] fpga: Fix dead store in fpga-bridge.c (Luis Goncalves) [1494702] - [fpga] fpga: Fix dead store fpga-mgr.c (Luis Goncalves) [1494702] - [fpga] fpga: dfl: Use struct_size() in kzalloc() (Luis Goncalves) [1494702] - [fpga] fpga manager: xilinx-spi: remove unneeded, mistyped variables (Luis Goncalves) [1494702] - [fpga] fpga manager: xilinx-spi: valid for the 7 Series too (Luis Goncalves) [1494702] - [fpga] fpga: zynqmp: fix modular build (Luis Goncalves) [1494702] - [fpga] drivers/fpga/dfl-afu-dma-region.c: get rid of pointless access_ok() (Luis Goncalves) [1494702] - [fpga] drivers/fpga/dfl-fme-pr.c: get rid of pointless access_ok() (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: Corrected error handling levels (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: support debug access to memory-mapped afu regions (Luis Goncalves) [1494702] - [fpga] fpga: dfl.h: Replace zero-length array with flexible-array member (Luis Goncalves) [1494702] - [fpga] fpga: stratix10-soc: add compatible property value for intel agilex (Luis Goncalves) [1494702] - [fpga] fpga: machxo2-spi: Use new structure for SPI transfer delays (Luis Goncalves) [1494702] - [fpga] fpga: ice40-spi: Use new structure for SPI transfer delays (Luis Goncalves) [1494702] - [fpga] fpga: dfl: support multiple opens on feature device node (Luis Goncalves) [1494702] - [fpga] fpga: dfl: fme: add performance reporting support (Luis Goncalves) [1494702] - [firmware] firmware: fpga: replace the error codes with the standard ones (Luis Goncalves) [1494702] - [net] sched: act_mpls: ensure LSE is pullable before reading it (Guillaume Nault) [1917918] - [net] openvswitch: ensure LSE is pullable before reading it (Guillaume Nault) [1917918] - [net] skbuff: ensure LSE is pullable before decrementing the MPLS ttl (Guillaume Nault) [1917918] - [net] sched: act_mpls: Add softdep on mpls_gso.ko (Guillaume Nault) [1917918] - [net] mpls: load mpls_gso after mpls_iptunnel (Guillaume Nault) [1917918] - [net] netfilter: nf_tables: handle nft_object lookups via rhltable (Phil Sutter) [1848816] - [arm64] kvm: arm64: Remove PMU RAZ/WI handling (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Inject UNDEF on PMU access when no PMU configured (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Set ID_AA64DFR0_EL1.PMUVer to 0 when no PMU support (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Add kvm_vcpu_has_pmu() helper (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Refactor PMU attribute error handling (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Introduce handling of AArch32 TTBCR2 traps (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: pmu: Make overflow handler NMI safe (Auger Eric) [1890373 1907826] - [tools] kvm: selftests: Also build dirty_log_perf_test on AArch64 (Auger Eric) [1890373 1907826] - [tools] selftests: kvm/set_memory_region_test: Fix race in move region test (Auger Eric) [1890373 1907826] - [tools] kvm: arm64: selftests: Filter out DEMUX registers (Auger Eric) [1890373 1907826] - [tools] kvm: selftests: Add blessed SVE registers to get-reg-list (Auger Eric) [1890373 1907826] - [tools] kvm: selftests: Add aarch64 get-reg-list test (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Don't access PMCR_EL0 when no PMU is available (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: vgic-v3: Drop the reporting of GICR_TYPER.Last for userspace (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Don't hide ID registers from userspace (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Force PTE mapping on fault resulting in a device mapping (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Fix AArch32 handling of DBGD{CCINT, SCRext} and DBGVCR (Auger Eric) [1890373 1907826] - [kernel] kvm: arm64: ARM_SMCCC_ARCH_WORKAROUND_1 doesn't return SMCCC_RET_NOT_REQUIRED (Auger Eric) [1890373 1907826] - [kernel] smccc: Make constants available to assembly (Auger Eric) [1890373 1907826] - [kernel] firmware: smccc: Add the definition for SMCCCv1.2 version/error codes (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Ensure user_mem_abort() return value is initialised (Auger Eric) [1890373 1907826] - [] ASoC: SOF: Intel: fix page fault at probe if i915 init fails (Jaroslav Kysela) [1906665] - [include] powerpc: fix the backport macros of hv_24x7 and hv_gpci (Diego Domingos) [1915159] - [net] tcp: Prevent low rmem stalls with SO_RCVLOWAT. (Davide Caratti) [1917976] - [net] tcp: fix to update snd_wl1 in bulk receiver fast path (Davide Caratti) [1917976] - [net] tcp: md5: refine tcp_md5_do_add()/tcp_md5_hash_key() barriers (Davide Caratti) [1917976] - [net] tcp: md5: add missing memory barriers in tcp_md5_do_add()/tcp_md5_hash_key() (Davide Caratti) [1917976] - [net] sunrpc: clean-up cache downcall (J. Bruce Fields) [1887178] - [net] sunrpc: raise kernel RPC channel buffer size (J. Bruce Fields) [1887178] - [netdrv] mlx5: Remove the unsupported mark from ConnectX-6 Lx and BlueField-2 (Alaa Hleihel) [1802118 1790541] - [s390] s390/qeth: make af_iucv TX notification call more robust (Philipp Rudo) [1915919] - [s390] s390/dasd: fix list corruption of lcu list (Philipp Rudo) [1915918] - [s390] s390/dasd: fix list corruption of pavgroup group list (Philipp Rudo) [1915918] - [s390] s390/dasd: prevent inconsistent LCU device data (Philipp Rudo) [1915918] - [s390] s390/dasd: fix hanging device offline processing (Philipp Rudo) [1915918] - [block] Revert "block: Fix a lockdep complaint triggered by request queue flushing" (Ming Lei) [1897404] - [nvme] nvme-loop: use blk_mq_hctx_set_fq_lock_class to set loop's lock class (Ming Lei) [1897404] - [block] blk-mq: add new API of blk_mq_hctx_set_fq_lock_class (Ming Lei) [1897404] - [scsi] scsi: core: Fix race between handling STS_RESOURCE and completion (Ming Lei) [1897404]- [fs] inotify: Increase default inotify.max_user_watches limit to 1048576 (Waiman Long) [1888617] - [kernel] cgroup: fix psi_show() crash on 32bit ino archs (Waiman Long) [1920288] - [kernel] cgroup: fix incorrect WARN_ON_ONCE() in cgroup_setup_root() (Waiman Long) [1920288] - [netdrv] net: bareudp: add missing error handling for bareudp_link_config() (Guillaume Nault) [1920194] - [netdrv] bareudp: Fix use of incorrect min_headroom size (Guillaume Nault) [1920194] - [netdrv] bareudp: set NETIF_F_LLTX flag (Guillaume Nault) [1920194] - [netdrv] vxlan: fix error return code in __vxlan_dev_create() (Guillaume Nault) [1920194] - [netdrv] ip_tunnels: Set tunnel option flag when tunnel metadata is present (Guillaume Nault) [1920194] - [net] vsock/virtio: discard packets only when socket is really closed (Stefano Garzarella) [1920004] - [net] vsock: fix the error return when an invalid ioctl command is used (Stefano Garzarella) [1920004] - [net] vsock: remove ratelimit unknown ioctl message (Stefano Garzarella) [1920004] - [net] vsock: use ns_capable_noaudit() on socket create (Stefano Garzarella) [1920004] - [net] vsock: fix potential null pointer dereference in vsock_poll() (Stefano Garzarella) [1920004] - [net] vsock/vmci: make vmci_vsock_transport_cb() static (Stefano Garzarella) [1920004] - [block] block: add blk_queue_make_request declaration back (Ming Lei) [1919764] - [net] erspan: fix version 1 check in gre_parse_header() (Guillaume Nault) [1919388] - [net] ipv4: Ignore ECN bits for fib lookups in fib_compute_spec_dst() (Guillaume Nault) [1919388] - [net] ipv4: Fix tos mask in inet_rtm_getroute() (Guillaume Nault) [1919388] - [net] inet_diag: Fix error path to cancel the meseage in inet_req_diag_fill() (Guillaume Nault) [1919388] - [mm] usercopy: mark dma-kmalloc caches as usercopy caches (Waiman Long) [1660290] - [mm] mm, slab_common: use enum kmalloc_cache_type to iterate over kmalloc caches (Waiman Long) [1660290] - [mm] mm, slab: remove unused kmalloc_size() (Waiman Long) [1660290] - [mm] mm, slab: make kmalloc_infocontain all types of names (Waiman Long) [1660290] - [netdrv] net: stmmac: fix taprio configuration when base_time is in the past (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac-sunxi: Provide TX and RX fifo sizes (Mark Salter) [1870102] - [netdrv] net: stmmac: delete the eee_ctrl_timer after napi disabled (Mark Salter) [1870102] - [netdrv] net: stmmac: free tx skb buffer in stmmac_resume() (Mark Salter) [1870102] - [netdrv] net: stmmac: start phylink instance before stmmac_hw_setup() (Mark Salter) [1870102] - [netdrv] net: stmmac: increase the timeout for dma reset (Mark Salter) [1870102] - [netdrv] net: stmmac: fix incorrect merge of patch upstream (Mark Salter) [1870102] - [netdrv] net: stmmac: Use rtnl_lock/unlock on netif_set_real_num_rx_queues() call (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac_lib: enlarge dma reset timeout (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix channel lock initialization (Mark Salter) [1870102] - [netdrv] net: stmmac: Add option for VLAN filter fail queue enable (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support to Ethtool get/set ring parameters (Mark Salter) [1870102] - [netdrv] net: stmmac: use netif_tx_start|stop_all_queues() function (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix incorrect location to set real_num_rx|tx_queues (Mark Salter) [1870102] - [netdrv] net: stmmac: add ethtool support for get/set channels (Mark Salter) [1870102] - [netdrv] net: stmmac: set get_rx_header_len() as void for it didn't have any error code to return (Mark Salter) [1870102] - [netdrv] net: stmmac: remove redundant null check before clk_disable_unprepare() (Mark Salter) [1870102] - [netdrv] net: phylink: avoid oops during initialisation (Mark Salter) [1870102] - [netdrv] net: stmmac: Modify configuration method of EEE timers (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: provide multicast filter fallback (Mark Salter) [1870102] - [netdrv] net: stmmac: fix failed to suspend if phy based WOL is enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Speed down the PHY if WoL to save energy (Mark Salter) [1870102] - [netdrv] net: stmmac: Support WOL with phy (Mark Salter) [1870102] - [netdrv] net: stmmac: only call pmt() during suspend/resume if HW enables PMT (Mark Salter) [1870102] - [netdrv] net: stmmac: Move device_can_wakeup() check earlier in set_wol (Mark Salter) [1870102] - [netdrv] net: stmmac: Remove WAKE_MAGIC if HW shows no pmt_magic_frame (Mark Salter) [1870102] - [netdrv] net: stmmac: Remove unused inline function stmmac_rx_threshold_count (Mark Salter) [1870102] - [include] net: pylink.h: add kernel-doc descriptions for new fields at phylink_config (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN promiscuous mode (Mark Salter) [1870102] - [netdrv] net: stmmac: removed enabling eee in EEE set callback (Mark Salter) [1870102] - [documentation] net: phy: add PHY_INTERFACE_MODE_10GBASER (Mark Salter) [1870102] - [include] net: mii: convert mii_lpa_to_ethtool_lpa_x() to linkmode variant (Mark Salter) [1870102] - [base] driver core: platform: Add platform_get_irq_byname_optional() (Mark Salter) [1870102] - [netdrv] net: stmmac: enable timestamp snapshot for required PTP packets in dwmac v5.10a (Mark Salter) [1870102] - [netdrv] net: stmmac: don't attach interface until resume finishes (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac5+: fix potential integer overflow on 32 bit multiply (Mark Salter) [1870102] - [netdrv] stmmac: fix pointer check after utilization in stmmac_interrupt (Mark Salter) [1870102] - [netdrv] stmmac: intel: Fix kernel crash due to wrong error path (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable SERDES power up/down sequence (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix sub-second increment (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: fix out-of-bounds mac address reg setting (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix VLAN register handling (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix VLAN filtering when HW does not support it (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN Rx filtering (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac_lib: remove unnecessary checks in dwmac_dma_reset() (Mark Salter) [1870102] - [netdrv] net: rename flow_action_hw_stats_types* -> flow_action_hw_stats* (Mark Salter) [1870102] - [netdrv] net: stmmac: use readl_poll_timeout() function in dwmac4_dma_reset() (Mark Salter) [1870102] - [netdrv] net: stmmac: use readl_poll_timeout() function in init_systime() (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: convert to devm_platform_ioremap_resource (Mark Salter) [1870102] - [netdrv] net: stmmac: Integrate it with DesignWare XPCS (Mark Salter) [1870102] - [netdrv] net: phy: Add Synopsys DesignWare XPCS MDIO module (Mark Salter) [1870102] - [netdrv] net: stmmac: Use resolved link config in mac_link_up() (Mark Salter) [1870102] - [netdrv] net: stmmac: Fallback to dev_fwnode() if needed (Mark Salter) [1870102] - [netdrv] net: stmmac: Switch to linkmode_and()/linkmode_andnot() (Mark Salter) [1870102] - [netdrv] flow_offload: check for basic action hw stats type (Mark Salter) [1870102] - [netdrv] stmmac: let core reject the unsupported coalescing parameters (Mark Salter) [1870102] - [netdrv] net: phylink: propagate resolved link config via mac_link_up() (Mark Salter) [1870102] - [netdrv] net: ethernet: stmmac: demote warnings about missing optional clocks (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: Fix misleading interrupt error msg (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Disable ACS if enhanced descs are not used (Mark Salter) [1870102] - [netdrv] net: stmmac: fix notifier registration (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: fix missing IFF_MULTICAST checki in dwxgmac2_set_filter (Mark Salter) [1870102] - [netdrv] net: stmmac: fix missing IFF_MULTICAST check in dwmac4_set_filter (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: fix incorrect XGMAC_VLAN_TAG register writting (Mark Salter) [1870102] - [netdrv] net: stmmac: fix incorrect GMAC_VLAN_TAG register writting in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Delete txtimer in suspend() (Mark Salter) [1870102] - [netdrv] net: stmmac: modified pcs mode support for RGMII (Mark Salter) [1870102] - [netdrv] net: stmmac: Add missing information in DebugFS capabilities file (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Add TBS support (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add TBS support (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Add support for ETF Scheduler using TBS (Mark Salter) [1870102] - [netdrv] net: stmmac: Initial support for TBS (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac5+: Fix missing return (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix missing return (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Fix TAPRIO division operation (Mark Salter) [1870102] - [netdrv] net: stmmac: mmc: Add Frame Preemption counters on GMAC5+ cores (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac3+: Add support for Frame Preemption (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac5+: Add support for Frame Preemption (Mark Salter) [1870102] - [netdrv] net: stmmac: Add Frame Preemption support using TAPRIO API (Mark Salter) [1870102] - [netdrv] net: stmmac: Integrate EST with TAPRIO scheduler API (Mark Salter) [1870102] - [netdrv] net: stmmac: Add basic EST support for XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Add basic EST support for GMAC5+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Always use TX coalesce timer value when rescheduling (Mark Salter) [1870102] - [netdrv] net: stmmac: Let TX and RX interrupts be independently enabled/disabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Print more information in DebugFS DMA Capabilities file (Mark Salter) [1870102] - [netdrv] net: stmmac: dwc-qos: avoid clk and reset for acpi device (Mark Salter) [1870102] - [netdrv] net: stmmac: dwc-qos: use generic device api (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: fix probe for ACPI devices (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Do not setup flower filtering if RSS is enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Fixed link does not need MDIO Bus (Mark Salter) [1870102] - [netdrv] stmmac: debugfs entry name is not be changed when udev rename device name (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: Fix MDIO init for platforms without PHY (Mark Salter) [1870102] - [netdrv] net: stmmac: Always arm TX Timer at end of transmission start (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable 16KB buffer size (Mark Salter) [1870102] - [netdrv] net: stmmac: 16KB buffer must be 16 byte aligned (Mark Salter) [1870102] - [netdrv] net: stmmac: RX buffer size must be 16 byte aligned (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Clear previous RX buffer size (Mark Salter) [1870102] - [netdrv] net: stmmac: Only the last buffer has the FCS field (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not accept invalid MTU values (Mark Salter) [1870102] - [netdrv] net: stmmac: Determine earlier the size of RX buffer (Mark Salter) [1870102] - [netdrv] treewide: Use sizeof_field() macro (Mark Salter) [1870102] - [netdrv] net: stmmac: reset Tx desc base address before restarting Tx (Mark Salter) [1870102] - [netdrv] net: phylink: rename mac_link_state() op to mac_pcs_get_state() (Mark Salter) [1870102] - [netdrv] page_pool: do not release pool until inflight == 0 (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Do not enable TBU interrupt (Mark Salter) [1870102] - [netdrv] net: stmmac: Rework TX Coalesce logic (Mark Salter) [1870102] - [netdrv] net: stmmac: Tune-up default coalesce settings (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Remove uneeded computation for RFA/RFD (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Remove uneeded computation for RFA/RFD (Mark Salter) [1870102] - [netdrv] net: stmmac: Setup a default RX Coalesce value instead of the minimum (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not set RX IC bit if RX Coalesce is zero (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement UDP Segmentation Offload (Mark Salter) [1870102] - [netdrv] net: stmmac: Rework stmmac_rx() (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Remove the speed dependency (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add C45 PHY support in the MDIO callbacks (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Add Split Header support (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix sparse warning (Mark Salter) [1870102] - [netdrv] net: stmmac: Remove break after a return (Mark Salter) [1870102] - [netdrv] net: stmmac: add flexible PPS to dwmac 4.10a (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement L3/L4 Filters in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Fallback to VLAN Perfect filtering if HASH is not available (Mark Salter) [1870102] - [netdrv] net: stmmac: Support enhanced addressing mode for DWMAC 4.10 (Mark Salter) [1870102] - [netdrv] net: stmmac: Only enable enhanced addressing mode when needed (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the TX IOC in xmit path (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix TSO descriptor with Enhanced Addressing (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the packet count in stmmac_rx() (Mark Salter) [1870102] - ethernet: Delete unnecessary checks before the macro call “dev_kfree_skb” (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Disable MMC interrupts by default (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Disable Flow Control when 1 or more queues are in AV (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix AV Feature detection (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix TSA selection (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Only get SPH header len if available (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: bitrev32 returns u32 (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4: bitrev32 returns u32 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the problem of tso_xmit (Mark Salter) [1870102] - [netdrv] net: stmmac: fix argument to stmmac_pcs_ctrl_ane() (Mark Salter) [1870102] - [netdrv] net: stmmac: disable/enable ptp_ref_clk in suspend/resume flow (Mark Salter) [1870102] - [netdrv] net: stmmac: make tc_flow_parsers static (Mark Salter) [1870102] - [netdrv] net: stmmac: fix disabling flexible PPS output (Mark Salter) [1870102] - [netdrv] net: stmmac: fix length of PTP clock's name string (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Not all Unicast addresses may be available (Mark Salter) [1870102] - [netdrv] net: stmmac: Avoid deadlock on suspend/resume (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix RSS writing wrong keys (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix RSS not writing all Keys to HW (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Disable the Timestamp interrupt by default (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not stop PHY if WoL is enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Correctly take timestamp for PTPv2 (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: Always update the MAC Hash Filter (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Detect Hash Table size dinamically (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Not all Unicast addresses may be available (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix page pool size (Mark Salter) [1870102] - [netdrv] net: stmmac: selftest: avoid large stack usage (Mark Salter) [1870102] - [netdrv] net: stmmac: Hold rtnl lock in suspend/resume callbacks (Mark Salter) [1870102] - [netdrv] net: stmmac: implement support for passive mode converters via dt (Mark Salter) [1870102] - [netdrv] net: stmmac: ARP Offload for GMAC4+ Cores (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN Insertion Offload in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for SA Insertion/Replacement in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Reinitialize correctly a variable (Mark Salter) [1870102] - [netdrv] net: stmmac: Add VLAN HASH filtering support in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Prevent divide-by-zero (Mark Salter) [1870102] - [netdrv] net: stmmac: Limit max speeds of XGMAC if asked to (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: Enable RX Jumbo frame support (Mark Salter) [1870102] - [netdrv] stmmac: platform: adjust messages and move to dev level (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Enable RX Jumbo frame support (Mark Salter) [1870102] - [netdrv] net: stmmac: Correctly assing MAX MTU in XGMAC cores case (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Correct RAVSEL field interpretation (Mark Salter) [1870102] - [netdrv] net: stmmac: ethtool: Let user configure TX coalesce without RIWT (Mark Salter) [1870102] - [netdrv] net: stmmac: Only consider RX error when HW Timestamping is not enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement ARP Offload (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement L3/L4 Filters using TC Flower (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not return error code in TC Initialization (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add RBU handling in DMA interrupt (Mark Salter) [1870102] - [netdrv] net: stmmac: depend on COMMON_CLK (Mark Salter) [1870102] - [netdrv] net: stmmac: dwc-qos: use devm_platform_ioremap_resource() to simplify code (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN Insertion Offload (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add EEE support (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for SA Insertion/Replacement in XGMAC cores (Mark Salter) [1870102] - [netdrv] net: stmmac: Add ethtool register dump for XGMAC cores (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Add Flexible PPS support (Mark Salter) [1870102] - [netdrv] net: stmmac: Add a counter for Split Header packets (Mark Salter) [1870102] - [netdrv] net: page_pool: API cleanup and comments (Mark Salter) [1870102] - [netdrv] net: stmmac: Add Split Header support and enable it in XGMAC cores (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Correctly return that RX descriptor is not last one (Mark Salter) [1870102] - [netdrv] net: stmmac: Prepare to add Split Header support (Mark Salter) [1870102] - [netdrv] net: stmmac: Get correct timestamp values from XGMAC (Mark Salter) [1870102] - [netdrv] stmmac: no need to check return value of debugfs_create functions (Mark Salter) [1870102] - [netdrv] net: stmmac: Add Flexible RX Parser support in XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement Safety Features in XGMAC core (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement VLAN Hash Filtering in XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement RSS and enable it in XGMAC core (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement tx_queue_prio() (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement set_mtl_tx_queue_weight() (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement MMC counters (Mark Salter) [1870102] - [netdrv] net: Remove dev_err() usage after platform_get_irq() (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not request stmmaceth clock (Mark Salter) [1870102] - [netdrv] net: stmmac: Make MDIO bus reset optional (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Do not return a fragment entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix issues when number of Queues >= 4 (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix XGMAC selftests (Mark Salter) [1870102] - [netdrv] net: stmmac: manage errors returned by of_get_mac_address() (Mark Salter) [1870102] - [netdrv] net: stmmac: Use netif_tx_napi_add() for TX polling function (Mark Salter) [1870102] - [netdrv] net: stmmac: Sync RX Buffer upon allocation (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not cut down 1G modes (Mark Salter) [1870102] - [netdrv] net: stmmac: Use kcalloc() instead of kmalloc_array() (Mark Salter) [1870102] - [netdrv] net: stmmac: RX Descriptors need to be clean before setting buffers (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix misuses of GENMASK macro (Mark Salter) [1870102] - [netdrv] net: stmmac: add support for hash table size 128/256 in dwmac4 (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: mac address array boudary violation issue (Mark Salter) [1870102] - [netdrv] net: stmmac: Introducing support for Page Pool (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix descriptors address being in > 32 bits address space (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement RX Coalesce Frames setting (Mark Salter) [1870102] - [netdrv] net: stmmac: Re-work the queue selection for TSO packets (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable dwmac4 jumbo frame more than 8KiB (Mark Salter) [1870102] - [netdrv] net: stmmac: make "snps, reset-delays-us" optional again (Mark Salter) [1870102] - [netdrv] net: stmmac: Re-word Kconfig entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Update Kconfig entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Only disable interrupts if NAPI is scheduled (Mark Salter) [1870102] - [netdrv] net: stmmac: Update RX Tail Pointer to last free entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable support for > 32 Bits addressing in XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not disable interrupts when cleaning TX (Mark Salter) [1870102] - [netdrv] net: stmmac: Add the missing speeds that XGMAC supports (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Fix the undefined burst setting (Mark Salter) [1870102] - [netdrv] net: stmmac: Decrease default RX Watchdog value (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not try to enable PHY EEE if MAC does not support it (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Enable EDMA by default (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix case when PHY handle is not present (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix crash observed if PHY does not support EEE (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix possible deadlock when disabling EEE support (Mark Salter) [1870102] - [netdrv] net: stmmac: initialize the reset delay array (Mark Salter) [1870102] - [netdrv] net: stmmac: add sanity check to device_property_read_u32_array call (Mark Salter) [1870102] - [netdrv] net: stmmac: fix unused-variable warning (Mark Salter) [1870102] - [netdrv] net: stmmac: drop the phy_reset hook from struct stmmac_mdio_bus_data (Mark Salter) [1870102] - [netdrv] net: stmmac: drop the reset delays from struct stmmac_mdio_bus_data (Mark Salter) [1870102] - [netdrv] net: stmmac: drop the reset GPIO from struct stmmac_mdio_bus_data (Mark Salter) [1870102] - [netdrv] net: stmmac: use device_property_read_u32_array to read the reset delays (Mark Salter) [1870102] - [netdrv] net: stmmac: drop redundant check in stmmac_mdio_reset (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix wrapper drivers not detecting PHY (Mark Salter) [1870102] - [netdrv] net: stmmac: use GPIO descriptors in stmmac_mdio_reset (Mark Salter) [1870102] - [netdrv] net: stmmac: Convert to phylink and remove phylib logic (Mark Salter) [1870102] - [netdrv] net: stmmac: Start adding phylink support (Mark Salter) [1870102] - [netdrv] net: stmmac: Prepare to convert to phylink (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: fix flow control issue (Mark Salter) [1870102] - [netdrv] net: stmmac: modify default value of tx-frames (Mark Salter) [1870102] - [netdrv] net: stmmac: Switch to devm_alloc_etherdev_mqs (Mark Salter) [1870102] - [netdrv] net: stmmac: use dev_info() before netdev is registered (Mark Salter) [1870102] - [netdrv] net: stmmac: Prevent missing interrupts when running NAPI (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Clear unused address entries (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Do not disable whole RX in dma_stop_rx() (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Do not disable whole RX in dma_stop_rx() (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Fix Hash Filter (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Clear unused address entries (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Fix Hash Filter (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Also pass control frames while in promisc mode (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Also pass control frames while in promisc mode (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Also pass control frames while in promisc mode (Mark Salter) [1870102] - [netdrv] net: stmmac: Switch MMC functions to HWIF callbacks (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac100: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: Add MAC loopback callback to HWIF (Mark Salter) [1870102] - [netdrv] net: stmmac: set IC bit when transmitting frames with HW timestamp (Mark Salter) [1870102] - [netdrv] net: stmmac: fixed new system time seconds value calculation (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not output error on deferred probe (Mark Salter) [1870102] - [netdrv] net: stmmac: fix csr_clk can't be zero issue (Mark Salter) [1870102] - [netdrv] net: stmmac: update rx tail pointer register to fix rx dma hang issue (Mark Salter) [1870102] - [netdrv] net: stmmac: fix reset gpio free missing (Mark Salter) [1870102] - [netdrv] net: stmmac: dma channel control register need to be init first (Mark Salter) [1870102] - [netdrv] net: stmmac: fix ethtool flow control not able to get/set (Mark Salter) [1870102] - [netdrv] dwmac4_prog_mtl_tx_algorithms() missing write operation (Mark Salter) [1870102] - [netdrv] net: stmmac: Set Flow Control to automatic mode in the driver (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Finish the Flow Control implementation (Mark Salter) [1870102] - [netdrv] net: stmmac: move stmmac_check_ether_addr() to driver probe (Mark Salter) [1870102] - [netdrv] net: stmmac: Use bfsize1 in ndesc_init_rx_desc (Mark Salter) [1870102] - [netdrv] net: stmmac: don't log oversized frames (Mark Salter) [1870102] - [netdrv] net: stmmac: fix dropping of multi-descriptor RX frames (Mark Salter) [1870102] - [netdrv] net: stmmac: don't overwrite discard_frame status (Mark Salter) [1870102] - [netdrv] net: stmmac: don't stop NAPI processing when dropping a packet (Mark Salter) [1870102] - [netdrv] net: stmmac: ratelimit RX error logs (Mark Salter) [1870102] - [netdrv] net: stmmac: use correct DMA buffer size in the RX descriptor (Mark Salter) [1870102] - [netdrv] net: stmmac: fix memory corruption with large MTUs (Mark Salter) [1870102] - [netdrv] net: stmmac: fix jumbo frame sending with non-linear skbs (Mark Salter) [1870102] - [netdrv] net: stmmac: don't set own bit too early for jumbo frames (Mark Salter) [1870102] - [netdrv] net: stmmac: Avoid one more sometimes uninitialized Clang warning (Mark Salter) [1870102] - [netdrv] net: ethernet: stmmac: add management of clk_csr property (Mark Salter) [1870102] - [netdrv] net: stmmac: Avoid sometimes uninitialized Clang warnings (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Also use TBU interrupt to clean TX path (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: Also use TBU interrupt to clean TX path (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix NAPI poll in TX path when in multi-queue (Mark Salter) [1870102] - [netdrv] net: stmmac: use correct define to get rx timestamp on GMAC4 (Mark Salter) [1870102] - [netdrv] net: stmmac: fix ptp timestamping on Rx on gmac4 (Mark Salter) [1870102] - [netdrv] net: stmmac: implement the SIOCGHWTSTAMP ioctl (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix a race in EEE enable callback (Mark Salter) [1870102] - [netdrv] net: stmmac: handle endianness in dwmac4_get_timestamp (Mark Salter) [1870102] - [netdrv] net: stmmac: Disable EEE mode earlier in XMIT callback (Mark Salter) [1870102] - [netdrv] net: stmmac: Send TSO packets always from Queue 0 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fallback to Platform Data clock in Watchdog conversion (Mark Salter) [1870102] - [netdrv] net: stmmac: Prevent RX starvation in stmmac_napi_poll() (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the logic of checking if RX Watchdog must be enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Check if CBS is supported before configuring (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Only clear interrupts that are active (Mark Salter) [1870102] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Mark Salter) [1870102] - [netdrv] net: stmmac: convert to DEFINE_SHOW_ATTRIBUTE (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix an error code in probe() (Mark Salter) [1870102] - [netdrv] net: stmmac: Move debugfs init/exit to ->probe()/->remove() (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix RX packet size > 8191 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix stmmac_mdio_reset() when building stmmac as modules (Mark Salter) [1870102] - [netdrv] net: stmmac: Set OWN bit for jumbo frames (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable TC Ops for GMAC >= 4 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add CBS support in XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fixup the tail addr setting in xmit path (Mark Salter) [1870102] - [netdrv] stmmac: fix valid numbers of unicast filter entries (Mark Salter) [1870102] - [netdrv] net: stmmac: Rework coalesce timer and fix multi-queue races (Mark Salter) [1870102] - [netdrv] Revert "net: stmmac: Do not keep rearming the coalesce timer in stmmac_xmit" (Mark Salter) [1870102] - [netdrv] Revert "net: stmmac: fix build failure due to missing COMMON_CLK dependency" (Mark Salter) [1870102] - [netdrv] net: stmmac: Integrate XGMAC into main driver flow (Mark Salter) [1870102] - [netdrv] net: stmmac: Add PTP support for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add MDIO related functions for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add descriptor related callbacks for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add DMA related callbacks for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add MAC related callbacks for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add XGMAC 2.10 HWIF entry (Mark Salter) [1870102] - [netdrv] stmmac: fix signed 64-bit division (Mark Salter) [1870102] - [netdrv] net: stmmac_tc: use 64-bit arithmetic instead of 32-bit (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for CBS QDISC (Mark Salter) [1870102] - [tty] serial: 8250_tegra: Create Tegra specific 8250 driver (Mark Salter) [1870103] - [pci] PCI: Disable MSI for Tegra root ports (Mark Salter) [1870101] - [pci] PCI: Add MCFG quirks for Tegra194 host controllers (Mark Salter) [1870101] - [netdrv] tun: fix return value when the number of iovs exceeds MAX_SKB_FRAGS (Antoine Tenart) [1919364 1917563] {CVE-2021-0342} - [netdrv] tun: correct header offsets in napi frags mode (Antoine Tenart) [1919364 1917563] {CVE-2021-0342} - [netdrv] tun: Don't put_page() for all negative return values from XDP program (Antoine Tenart) [1919364] - [netdrv] tun: add mutex_unlock() call and napi.skb clearing in tun_get_user() (Antoine Tenart) [1919364] - [netdrv] tun: fix data-race in gro_normal_list() (Antoine Tenart) [1919364] - [netdrv] tun: fix use-after-free when register netdev failed (Antoine Tenart) [1919364] - [netdrv] tun: mark small packets as owned by the tap sock (Antoine Tenart) [1919364] - [netdrv] tun: use netdev_alloc_frag() in tun_napi_alloc_frags() (Antoine Tenart) [1919364] - [scsi] scsi: ibmvfc: Fix error return in ibmvfc_probe() (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Provide modules parameters for MQ settings (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Enable MQ and set reasonable defaults (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Purge SCSI channels after transport loss/reset (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Send Cancel MAD down each hw SCSI channel (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add cancel mad initialization helper (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Register Sub-CRQ handles with VIOS during channel setup (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Send commands down HW Sub-CRQ when channelized (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Set and track hw queue in ibmvfc_event struct (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Advertise client support for using hardware channels (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Implement channel enquiry and setup commands (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Map/request irq and register Sub-CRQ interrupt handler (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define Sub-CRQ interrupt handler routine (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add handlers to drain and complete Sub-CRQ responses (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add Sub-CRQ IRQ enable/disable routine (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add alloc/dealloc routines for SCSI Sub-CRQ Channels (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add Subordinate CRQ definitions (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define hcall wrapper for registering a Sub-CRQ (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add size parameter to ibmvfc_init_event_pool() (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Init/free event pool during queue allocation/free (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Move event pool init/free routines (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add vhost fields and defaults for MQ enablement (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Fix missing cast of ibmvfc_event pointer to u64 handle (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Relax locking around ibmvfc_queuecommand() (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Complete commands outside the host/queue lock (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define per-queue state/list locks (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Make command event pool queue specific (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define generic queue structure for CRQs (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Advertise client support for targetWWPN using v2 commands (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add support for target_wwpn field in v2 MADs and vfcFrame (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add FC payload retrieval routines for versioned vfcFrames (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add helper for testing capability flags (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add new fields for version 2 of several MADs (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Deduplicate common ibmvfc_cmd init code (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Use correlation token to tag commands (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Remove trailing semicolon (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Byte swap login_buf.resp values in attribute show functions (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Interface updates for future FPIN and MQ support (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Protect vhost->task_set increment by the host lock (Desnes Augusto Nunes do Rosario) [1868055] - [net] tcp: Fix potential use-after-free due to double kfree() (Florian Westphal) [1915164] - [nvdimm] libnvdimm/region: Enable MAP_SYNC for volatile regions (Steve Best) [1916650] - [net] bpf: Permit cond_resched for some iterators (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix PID fetching with a lot of results (Yauheni Kaliuta) [1874005] - [net] bpf: verifier: Use target program's type for access verifications (Yauheni Kaliuta) [1874005] - [tools] selftests: bpf: Test sockmap update from BPF (Yauheni Kaliuta) [1874005] - [net] bpf: sockmap: Allow update from BPF (Yauheni Kaliuta) [1874005] - [net] bpf: Override the meaning of ARG_PTR_TO_MAP_VALUE for sockmap and sockhash (Yauheni Kaliuta) [1874005] - [net] bpf: sockmap: Call sock_map_update_elem directly (Yauheni Kaliuta) [1874005] - [net] bpf: sockmap: Merge sockmap and sockhash update functions (Yauheni Kaliuta) [1874005] - [net] net: sk_msg: Simplify sk_psock initialization (Yauheni Kaliuta) [1874005] - [net] bpf: Enforce id generation for all may-be-null register type (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Cleanup bpf_load.o from Makefile (Yauheni Kaliuta) [1874005] - [include] bpf: Plug hole in struct bpf_sk_lookup_kern (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix endianness issues in sk_lookup/ctx_narrow_access (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix build slowdown (Yauheni Kaliuta) [1874005] - [net] bpf: Fix scalar32_min_max_or bounds tracking (Yauheni Kaliuta) [1874005] - [net] bpf: Fix "unresolved symbol" build error with resolve_btfids (Yauheni Kaliuta) [1874005] - [powerpc] bpf, powerpc: Fix misuse of fallthrough in bpf_jit_comp() (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix XDP program load regression for old kernels (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix native endian assumption when parsing BTF (Yauheni Kaliuta) [1874005] - [include] bpf: Prevent .BTF section elimination (Yauheni Kaliuta) [1874005] - [net] bpf: Fix sysfs export of empty BTF section (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Support passing BPFTOOL_VERSION to make (Yauheni Kaliuta) [1874005] - [net] bpf: Fix a rcu warning for bpffs map pretty-print (Yauheni Kaliuta) [1874005] - [net] bpf: Bpf_skc_to_* casting helpers require a NULL check on sk (Yauheni Kaliuta) [1874005] - [documentation] docs/bpf: Remove source code links (Yauheni Kaliuta) [1874005] - [documentation] docs/bpf: Fix ringbuf documentation (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix VERSIONED_SYM_COUNT number parsing (Yauheni Kaliuta) [1874005] - [tools] tools/libbpf: Avoid counting local symbols in ABI check (Yauheni Kaliuta) [1874005] - [net] bpf: Fix clobbering of r2 in bpf_gen_ld_abs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add bpf_{update, delete}_map_elem in hashmap iter program (Yauheni Kaliuta) [1874005] - [net] bpf: Do not use bucket_lock for hashmap iterator (Yauheni Kaliuta) [1874005] - [tools] libbpf: Remove arch-specific include path in Makefile (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: build: Make sure resolve_btfids cleans up after itself (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix build failure from uninitialized variable warning (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix massive output from test_maps (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix test_progs-flavor run getting number of tests (Yauheni Kaliuta) [1874005] - [net] bpf: Fix a buffer out-of-bound access when filling raw_tp link_info (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix two typos in uapi/linux/bpf.h (Yauheni Kaliuta) [1874005] - [tools] tools/resolve_btfids: Fix sections with wrong alignment (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix map index used in error message (Yauheni Kaliuta) [1874005] - [tools] bpftool: Handle EAGAIN error code properly in pids collection (Yauheni Kaliuta) [1874005] - [net] bpf: Avoid visit same object multiple times (Yauheni Kaliuta) [1874005] - [net] bpf: Fix a rcu_sched stall issue with bpf task/task_file iterator (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix build on ppc64le architecture (Yauheni Kaliuta) [1874005] - [net] bpf: Use get_file_rcu() instead of get_file() for task_file iterator (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Make test_varlen work with 32-bit user-space arch (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Generate data section struct with conservative alignment (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Correct various core_reloc 64-bit assumptions (Yauheni Kaliuta) [1874005] - [tools] libbpf: Enforce 64-bitness of BTF for BPF object files (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix btf_dump test cases on 32-bit arches (Yauheni Kaliuta) [1874005] - [tools] libbpf: Handle BTF pointer sizes more carefully (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix BTF-defined map-in-map initialization on 32-bit host arches (Yauheni Kaliuta) [1874005] - [tools] selftest/bpf: Fix compilation warnings in 32-bit mode (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix compilation warnings in 32-bit mode (Yauheni Kaliuta) [1874005] - [documentation] doc: Add link to bpf helpers man page (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Add tests to sock_ops for loading sk (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Add tests for sock_ops load with r9, r8.r7 registers (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Add tests for ctx access in sock_ops with single register (Yauheni Kaliuta) [1874005] - [net] bpf: sock_ops sk access may stomp registers when dst_reg = src_reg (Yauheni Kaliuta) [1874005] - [net] bpf: sock_ops ctx access may stomp registers in corner case (Yauheni Kaliuta) [1874005] - [net] net/core/filter.c: Use sizeof_field() macro (Yauheni Kaliuta) [1874005] - [tools] libbpf: Prevent overriding errno when logging errors (Yauheni Kaliuta) [1874005] - [net] bpf: Iterate through all PT_NOTE sections when looking for build id (Yauheni Kaliuta) [1874005] - [tools] libbpf: Handle GCC built-in types for Arm NEON (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Make skeleton code C++17-friendly by dropping typeof() (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix v4_to_v6 in sk_lookup (Yauheni Kaliuta) [1874005] - [tools] libbpf: Do not use __builtin_offsetof for offsetof (Yauheni Kaliuta) [1874005] - [net] bpf: Delete repeated words in comments (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix silent Makefile output (Yauheni Kaliuta) [1874005] - [documentation] bpf, doc: Remove references to warning message when using bpf_trace_printk() (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix compilation warning of selftests (Yauheni Kaliuta) [1874005] - [kernel] bpf: Remove inline from bpf_do_trace_printk (Yauheni Kaliuta) [1874005] - [tools] bpf: Add missing return to resolve_btfids (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: Support new uapi for map element bpf iterator (Yauheni Kaliuta) [1874005] - [net] bpf: Change uapi for bpf iterator map elements (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Prevent runqslower from racing on building bpftool (Yauheni Kaliuta) [1874005] - [net] bpf: Allow to specify ifindex for skb in bpf_prog_test_run_skb (Yauheni Kaliuta) [1874005] - [net] bpf: Setup socket family and addresses in bpf_prog_test_run_skb (Yauheni Kaliuta) [1874005] - [tools] tools/resolve_btfids: Use libbpf's btf__parse() API (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Use libbpf's btf__parse() API for parsing BTF from file (Yauheni Kaliuta) [1874005] - [tools] libbf: Fix uninitialized pointer at btf__parse_raw() (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add btf__parse_raw() and generic btf__parse() APIs (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Fix wrong return value in do_dump() (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix spurious test failures in core_retro selftest (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add documentation and bash-completion for `link detach` (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add `link detach` subcommand (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add bpf_link detach APIs (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Use single cgroup helpers for both test_sockmap/progs (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix register in PT_REGS MIPS macros (Yauheni Kaliuta) [1874005] - [tools] libbpf: Make destructors more robust by handling ERR_PTR(err) cases (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Omit nodad flag when adding addresses to loopback (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Don't destroy failed link (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add xdpdrv mode for test_xdp_redirect (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Verify socket storage in cgroup/sock_{create, release} (Yauheni Kaliuta) [1874005] - [net] bpf: Expose socket storage to BPF_PROG_TYPE_CGROUP_SOCK (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test bpf_iter buffer access with negative offset (Yauheni Kaliuta) [1874005] - [net] bpf: Add missing newline characters in verifier error messages (Yauheni Kaliuta) [1874005] - [arm64] bpf, arm64: Add BPF exception tables (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: use :: 1 for localhost in tcp_server.py (Yauheni Kaliuta) [1874005] - [net] bpf: Fix swapped arguments in calls to check_buffer_access (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add new bpf_iter context structs to fix build on old kernels (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix bpf_ringbuf_output() signature to return long (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Add LSM type to array of prog names (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Skip type probe if name is not found (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for BPF XDP link (Yauheni Kaliuta) [1874005] - [include] bpf: Make bpf_link API available indepently of CONFIG_BPF_SYSCALL (Yauheni Kaliuta) [1874005] - [net] bpf: Fix build on architectures with special bpf_user_pt_regs_t (Yauheni Kaliuta) [1874005] - [net] bpf/local_storage: Fix build without CONFIG_CGROUP (Yauheni Kaliuta) [1874005] - [documentation] Documentation/bpf: Document CGROUP_STORAGE map type (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test CGROUP_STORAGE behavior on shared egress + ingress (Yauheni Kaliuta) [1874005] - [net] bpf: Make cgroup storages shared between programs on the same cgroup (Yauheni Kaliuta) [1874005] - [net] cgroup: use cgrp->kn->id as the cgroup ID (Yauheni Kaliuta) [1874005] - [net] netprio: use css ID instead of cgroup ID (Yauheni Kaliuta) [1874005] - [fs] kernfs: convert kernfs_node->id from union kernfs_node_id to u64 (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add get_stackid_cannot_attach (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test CGROUP_STORAGE map can't be used by multiple progs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add callchain_stackid (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for CGROUP_STORAGE map on multiple attaches (Yauheni Kaliuta) [1874005] - [tools] libbpf: Print hint when PERF_EVENT_IOC_SET_BPF returns -EPROTO (Yauheni Kaliuta) [1874005] - [net] bpf: Fail PERF_EVENT_IOC_SET_BPF when bpf_get_cannot work (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add a test for out of bound rdonly buf access (Yauheni Kaliuta) [1874005] - [net] bpf: Separate bpf_get_for perf events BPF (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add a test for bpf sk_storage_map iterator (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for bpf array map iterators (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for bpf hash map iterators (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add bpftool support for bpf map element iterator (Yauheni Kaliuta) [1874005] - [tools] tools/libbpf: Add support for bpf map element iterator (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for sock local storage map (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for array maps (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for hash maps (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for map elements (Yauheni Kaliuta) [1874005] - [net] bpf: Fix pos computation for bpf_iter seq_ops->start() (Yauheni Kaliuta) [1874005] - [net] bpf: Support readonly/readwrite buffers in verifier (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test BPF socket lookup and reuseport with connections (Yauheni Kaliuta) [1874005] - [net] bpf: Refactor to provide aux info to bpf_iter_init_seq_priv_t (Yauheni Kaliuta) [1874005] - [net] bpf: Refactor bpf_iter_reg to have separate seq_info member (Yauheni Kaliuta) [1874005] - [net] bpf: Add bpf_prog iterator (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Strip BPF .o files before skeleton generation (Yauheni Kaliuta) [1874005] - [documentation] docs: bpf/bpf_devel_QA.rst: fix reference to nonexistent document (Yauheni Kaliuta) [1874005] - [documentation] docs: bpf/index.rst: Add ringbuf.rst (Yauheni Kaliuta) [1874005] - [tools] bpftool: Use only nftw for file tree parsing (Yauheni Kaliuta) [1874005] - [net] bpf: net: Use precomputed btf_id for bpf iterators (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix test_lwt_seg6local.sh hangs (Yauheni Kaliuta) [1874005] - [net] bpf: Make btf_sock_ids global (Yauheni Kaliuta) [1874005] - [tools] bpf: Add BTF_ID_LIST_GLOBAL in btf_ids.h (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: Sync btf_ids.h to tools (Yauheni Kaliuta) [1874005] - [net] bpf: Compute bpf_skc_to_*() helper socket btf ids at build time (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix error handing in do_skeleton() (Yauheni Kaliuta) [1874005] - [tools] libbpf bpf_helpers: Use __builtin_offsetof for offsetof (Yauheni Kaliuta) [1874005] - [s390] s390/bpf: Use bpf_skip() in bpf_jit_prologue() (Yauheni Kaliuta) [1874005] - [net] bpf: cpumap: Fix possible rcpu kthread hung (Yauheni Kaliuta) [1874005] - [s390] s390/bpf: implement BPF_PROBE_MEM (Yauheni Kaliuta) [1874005 1868273] - [s390] s390/kernel: expand exception table logic to allow new handling options (Yauheni Kaliuta) [1874005 1868273] - [s390] s390: fix __EMIT_BUG() macro (Yauheni Kaliuta) [1874005 1868273] - [s390] s390/bug: add entry size to the __bug_table section (Yauheni Kaliuta) [1874005 1868273] - [s390] s390/kernel: unify EX_TABLE* implementations (Yauheni Kaliuta) [1874005 1868273] - [tools] selftests/bpf: Tests for BPF_SK_LOOKUP attach point (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add verifier tests for bpf_sk_lookup context access (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add name mappings for SK_LOOKUP prog and attach type (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for SK_LOOKUP program type (Yauheni Kaliuta) [1874005] - [tools] bpf: Sync linux/bpf.h to tools/ (Yauheni Kaliuta) [1874005] - [include] bpf: Introduce SK_LOOKUP program type with a dedicated attach point (Yauheni Kaliuta) [1874005] - [net] bpf, netns: Handle multiple link attachments (Yauheni Kaliuta) [1874005] - [tools] bpf: Drop duplicated words in uapi helper comments (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix possible hang in sockopt_inherit (Yauheni Kaliuta) [1874005] - [tools] selftest: Add tests for XDP programs in CPUMAP entries (Yauheni Kaliuta) [1874005] - [samples] samples/bpf: xdp_redirect_cpu: Load a eBPF program on cpumap (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add SEC name for xdp programs attached to CPUMAP (Yauheni Kaliuta) [1874005] - [net] bpf: cpumap: Implement XDP_REDIRECT for eBPF programs attached to map entries (Yauheni Kaliuta) [1874005] - [net] bpf: cpumap: Add the possibility to attach an eBPF program to cpumap (Yauheni Kaliuta) [1874005] - [net] net: Refactor xdp_convert_buff_to_frame (Yauheni Kaliuta) [1874005] - [net] cpumap: Formalize map value as a named struct (Yauheni Kaliuta) [1874005] - [samples] samples/bpf: xdp_redirect_cpu_user: Do not update bpf maps in option loop (Yauheni Kaliuta) [1874005] - [net] cpumap: Use non-locked version __ptr_ring_consume_batched (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/ppc-opcode: Consolidate powerpc instructions from bpf_jit.h (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/bpf_jit: Reuse instruction macros from ppc-opcode.h (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/ppc-opcode: Move ppc instruction encoding from test_emulate_step (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/lib: Fix emulate_step() std test (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/ppc-opcode: Introduce PPC_RAW_* macros for base instruction encoding (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix cross build for CONFIG_DEBUG_INFO_BTF option (Yauheni Kaliuta) [1874005] - [include] bpf: Fix build for disabled CONFIG_DEBUG_INFO_BTF option (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Strip away modifiers from global variables (Yauheni Kaliuta) [1874005] - [tools] libbpf: Support stripping modifiers for btf_dump (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add selftests verifying bpf_trace_printk() behaviour (Yauheni Kaliuta) [1874005] - [kernel] bpf: Use dedicated bpf_trace_printk event instead of trace_printk() (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Remove warning about PID iterator support (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for resolve_btfids (Yauheni Kaliuta) [1874005] - [tools] tools headers: Adopt verbatim copy of btf_ids.h from kernel sources (Yauheni Kaliuta) [1874005] - [documentation] bpf: Add info about .BTF_ids section to btf.rst (Yauheni Kaliuta) [1874005] - [net] bpf: Use BTF_ID to resolve bpf_ctx_convert struct (Yauheni Kaliuta) [1874005] - [net] bpf: Remove btf_id helpers resolving (Yauheni Kaliuta) [1874005] - [net] bpf: Resolve BTF IDs in vmlinux image (Yauheni Kaliuta) [1874005] - [include] bpf: Add BTF_ID_LIST/BTF_ID/BTF_ID_UNUSED macros (Yauheni Kaliuta) [1874005] - [net] bpf: Support llvm-objcopy for vmlinux BTF (Yauheni Kaliuta) [1874005] - [powerpc] powerpc: Include .BTF section (Yauheni Kaliuta) [1874005] - [scripts] kbuild: Remove debug info from kallsyms linking (Yauheni Kaliuta) [1874005] - [scripts] kbuild: Parameterize kallsyms generation and correct reporting (Yauheni Kaliuta) [1874005] - [tools] bpf: Compile resolve_btfids tool at kernel compilation start (Yauheni Kaliuta) [1874005] - [kernel] tracing: Make struct ring_buffer less ambiguous (Yauheni Kaliuta) [1874005] - [kernel] tracing: Rename trace_buffer to array_buffer (Yauheni Kaliuta) [1874005] - [tools] tools headers: Synchronize linux/bits.h with the kernel sources (Yauheni Kaliuta) [1874005] - [tools] tools headers: Update linux/vdso.h and grab a copy of vdso/const.h (Yauheni Kaliuta) [1874005] - [tools] tools headers: Adopt verbatim copy of compiletime_assert() from kernel sources (Yauheni Kaliuta) [1874005] - [tools] objtool: Query pkg-config for libelf location (Yauheni Kaliuta) [1874005] - [tools] bpf: Add resolve_btfids tool to resolve BTF IDs in ELF object (Yauheni Kaliuta) [1874005] - [samples] bpf: Fix fds_example SIGSEGV error (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix memory leak and optimize BTF sanitization (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Switch perf_buffer test to tracepoint and skeleton (Yauheni Kaliuta) [1874005] - [tools] libbpf: Handle missing BPF_OBJ_GET_INFO_BY_FD gracefully in perf_buffer (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test relying only on CO-RE and no recent kernel features (Yauheni Kaliuta) [1874005] - [tools] libbpf: Improve BTF sanitization handling (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add btf__set_fd() for more control over loaded BTF FD (Yauheni Kaliuta) [1874005] - [tools] libbpf: Make BTF finalization strict (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: test_progs avoid minus shell exit codes (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: test_progs use another shell exit on non-actions (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix another bpftool segfault without skeleton code enabled (Yauheni Kaliuta) [1874005] - [tools] selftests: bpf: Remove unused bpf_map_def_legacy struct (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Refactor BPF map performance test with libbpf (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Refactor BPF map in map test with libbpf (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Fix bpf programs with kprobe/sys_connect event (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test BPF_CGROUP_INET_SOCK_RELEASE (Yauheni Kaliuta) [1874005] - [tools] bpftool: Add support for BPF_CGROUP_INET_SOCK_RELEASE (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for BPF_CGROUP_INET_SOCK_RELEASE (Yauheni Kaliuta) [1874005] - [net] bpf: Add BPF_CGROUP_INET_SOCK_RELEASE hook (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix compilation error of bpf_iter_task_stack.c (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix bpftool without skeleton code enabled (Yauheni Kaliuta) [1874005] - [net] bpf: Fix build without CONFIG_STACKTRACE (Yauheni Kaliuta) [1874005] - [tools] bpf: selftests: Restore netns after each test (Yauheni Kaliuta) [1874005] - [tools] bpf: selftests: A few improvements to network_helpers.c (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test_progs option for listing test names (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test_progs option for getting number of tests (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test_progs indicate to shell on non-actions (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Turn off -Wnested-externs warning (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Switch test_vmlinux to use hrtimer_range_start_ns (Yauheni Kaliuta) [1874005] - [net] bpf: Fix net/core/filter build errors when INET is not enabled (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add bpf_iter test with bpf_get_task_stack() (Yauheni Kaliuta) [1874005] - [kernel] bpf: Allow pB in bpf_seq_printf() and bpf_trace_printk() (Yauheni Kaliuta) [1874005] - [net] bpf: Introduce helper bpf_get_task_stack() (Yauheni Kaliuta) [1874005] - [net] bpf: Remove redundant synchronize_rcu (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add byte swapping selftest (Yauheni Kaliuta) [1874005] - [tools] libbpf: Make bpf_endian co-exist with vmlinux.h (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Allow substituting custom vmlinux.h for selftests build (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Allow substituting custom vmlinux.h for the build (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test auto-load disabling logic for BPF programs (Yauheni Kaliuta) [1874005] - [tools] libbpf: Support disabling auto-loading BPF programs (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Define attach_type_name array only once (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Define prog_type_name array only once (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add tcp/udp iterator programs to selftests (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Implement sample udp/udp6 bpf_iter programs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Implement sample tcp/tcp6 bpf_iter programs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add more common macros to bpf_tracing_net.h (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Refactor some net macros to bpf_tracing_net.h (Yauheni Kaliuta) [1874005] - [kernel] bpf: Add bpf_skc_to_udp6_sock() helper (Yauheni Kaliuta) [1874005] - [net] net: bpf: Implement bpf iterator for udp (Yauheni Kaliuta) [1874005] - [net] net: bpf: Add bpf_seq_afinfo in udp_iter_state (Yauheni Kaliuta) [1874005] - [kernel] bpf: Add bpf_skc_to_{tcp, tcp_timewait, tcp_request}_sock() helpers (Yauheni Kaliuta) [1874005] - [net] bpf: Add bpf_skc_to_tcp6_sock() helper (Yauheni Kaliuta) [1874005] - [kernel] bpf: Allow tracing programs to use bpf_jiffies64() helper (Yauheni Kaliuta) [1874005] - [kernel] bpf: Support 'X' in bpf_seq_printf() helper (Yauheni Kaliuta) [1874005] - [net] net: bpf: Implement bpf iterator for tcp (Yauheni Kaliuta) [1874005] - [net] net: bpf: Add bpf_seq_afinfo in tcp_iter_state (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Workaround for get_stack_rawtp test (Yauheni Kaliuta) [1874005] - [tools] libbpf: Prevent loading vmlinux BTF twice (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix spelling mistake "kallasyms" -> "kallsyms" (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Fix variable shadowing in emit_obj_refs_json() (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Correctly evaluate $(BUILD_BPF_SKELS) in Makefile (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add variable-length data concat pattern less than test (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add variable-length data concatenation pattern test (Yauheni Kaliuta) [1874005] - [tools] bpf: Switch most helper return values from 32-bit int to 64-bit long (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add documentation and sample output for process info (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Show info for processes holding BPF map/prog/link/btf FDs (Yauheni Kaliuta) [1874005] - [tools] libbpf: Wrap source argument of BPF_CORE_READ macro in parentheses (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Generalize BPF skeleton support and generate vmlinux.h (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Minimize bootstrap bpftool (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Move map/prog parsing logic into common (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add __ksym extern selftest (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for extracting kernel symbol addresses (Yauheni Kaliuta) [1874005] - [tools] libbpf: Generalize libbpf externs support (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add a bunch of attribute getters/setters for map definitions (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test access to bpf map pointer (Yauheni Kaliuta) [1874005] - [net] bpf: Set map_btf_{name, id} for all map types (Yauheni Kaliuta) [1874005] - [net] bpf: Support access to bpf map fields (Yauheni Kaliuta) [1874005] - [net] bpf: Rename bpf_htab to bpf_shtab in sock_map (Yauheni Kaliuta) [1874005] - [net] bpf: Switch btf_parse_vmlinux to btf_find_by_name_kind (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Relicense bpftool's BPF profiler prog as dual-license GPL/BSD (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: Add verifier tests for 32bit pointer/scalar arithmetic (Yauheni Kaliuta) [1874005] - [net] bpf: Avoid verifier failure for 32bit pointer arithmetic (Yauheni Kaliuta) [1874005] - [net] bpf: sk_storage: Prefer to get a free cache_idx (Yauheni Kaliuta) [1874005] - [tools] libbpf: Bump version to 0.1.0 (Yauheni Kaliuta) [1874005] - [s390] s390/pci: fix hot-plug of PCI function missing bus (Philipp Rudo) [1915916] - [net] tcp: fix race condition when creating child sockets from syncookies (Florian Westphal) [1915164] - [netdrv] bonding: set xfrm feature flags more sanely (Jarod Wilson) [1893979] - [netdrv] bonding: fix feature flag setting at init time (Jarod Wilson) [1893979]- [fs] cifs: handle -EINTR in cifs_setattr (Leif Sahlberg) [1848178] - [tty] serial: 8250: drop the printk from serial8250_interrupt() (Vitaly Kuznetsov) [1919745] - [fs] cifs: do not fail __smb_send_rqst if non-fatal signals are pending (Leif Sahlberg) [1848178] - [netdrv] ibmvnic: continue fatal error reset after passive init (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix: NULL pointer dereference (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix login buffer memory leak (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix rx buffer tracking and index management in replenish_rx_pool partial success (Diego Domingos) [1901513] - [netdrv] ibmvnic: add some debugs (Diego Domingos) [1901513] - [netdrv] ibmvnic: Fix TX completion error handling (Diego Domingos) [1901513] - [netdrv] ibmvnic: Ensure that SCRQ entry reads are correctly ordered (Diego Domingos) [1901513] - [netdrv] ibmvnic: reduce wait for completion time (Diego Domingos) [1901513] - [netdrv] ibmvnic: no reset timeout for 5 seconds after reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: send_login should check for crq errors (Diego Domingos) [1901513] - [netdrv] ibmvnic: track pending login (Diego Domingos) [1901513] - [netdrv] ibmvnic: delay next reset if hard reset fails (Diego Domingos) [1901513] - [netdrv] ibmvnic: restore adapter state on failed reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: avoid memset null scrq msgs (Diego Domingos) [1901513] - [netdrv] ibmvnic: stop free_all_rwi on failed reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: handle inconsistent login with reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: enhance resetting status check during module exit (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix NULL pointer dereference in ibmvic_reset_crq (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix NULL pointer dereference in reset_sub_crq_queues (Diego Domingos) [1901513] - [netdrv] ibmvnic: skip tx timeout reset while in resetting (Diego Domingos) [1901513] - [netdrv] ibmvnic: notify peers when failover and migration happen (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix call_netdevice_notifiers in do_reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: Do not replenish RX buffers after every polling loop (Diego Domingos) [1901513] - [netdrv] ibmvnic: Use netdev_alloc_skb instead of alloc_skb to replenish RX buffers (Diego Domingos) [1901513] - [netdrv] ibmvnic: Correctly re-enable interrupts in NAPI polling routine (Diego Domingos) [1901513] - [netdrv] ibmvnic: Ensure that device queue memory is cache-line aligned (Diego Domingos) [1901513] - [netdrv] ibmvnic: Remove send_subcrq function (Diego Domingos) [1901513] - [netdrv] ibmvnic: Clean up TX code and TX buffer data structure (Diego Domingos) [1901513] - [netdrv] ibmvnic: Introduce xmit_more support using batched subCRQ hcalls (Diego Domingos) [1901513] - [netdrv] ibmvnic: Introduce batched RX buffer descriptor transmission (Diego Domingos) [1901513] - [netdrv] ibmvnic: Introduce indirect subordinate Command Response Queue buffer (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix ibmvnic_set_mac (Diego Domingos) [1901513] - [netdrv] ibmvnic: save changed mac address to adapter->mac_addr (Diego Domingos) [1901513] - [netdrv] ibmvnic: create send_control_ip_offload (Diego Domingos) [1901513] - [netdrv] ibmvnic: create send_query_ip_offload (Diego Domingos) [1901513] - [netdrv] ibmvnic: rename send_map_query to send_query_map (Diego Domingos) [1901513] - [netdrv] ibmvnic: rename ibmvnic_send_req_caps to send_request_cap (Diego Domingos) [1901513] - [netdrv] ibmvnic: rename send_cap_queries to send_query_cap (Diego Domingos) [1901513] - [netdrv] ibmvnic: set up 200GBPS speed (Diego Domingos) [1901513] - [netdrv] Revert "ibmvnic: remove never executed if statement" (Diego Domingos) [1901513] - [netdrv] ibmvnic: Harden device Command Response Queue handshake (Diego Domingos) [1901513] - [netdrv] ibmvnic: Fix use-after-free of VNIC login response buffer (Diego Domingos) [1901513] - [netdrv] ibmvnic: merge ibmvnic_reset_init and ibmvnic_init (Diego Domingos) [1901513] - [netdrv] ibmvnic: remove never executed if statement (Diego Domingos) [1901513] - [netdrv] ibmvnic: improve ibmvnic_init and ibmvnic_reset_init (Diego Domingos) [1901513] - [netdrv] ibmvnic: compare adapter->init_done_rc with more readable ibmvnic_rc_codes (Diego Domingos) [1901513] - [netdrv] ibmvnic: store RX and TX subCRQ handle array in ibmvnic_adapter struct (Diego Domingos) [1901513] - [netdrv] net: ibm: fix return type of ndo_start_xmit function (Diego Domingos) [1901513] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (David Arcari) [1916478] - [x86] x86/cpu/amd: Call init_amd_zn() om Family 19h processors too (David Arcari) [1916478] - [ata] ahci: Add Intel Emmitsburg PCH RAID PCI IDs (David Arcari) [1894284] - [vfio] vfio iommu: Add dma available capability (Philipp Rudo) [1903970] - [x86] x86/entry/64: Do not include inst.h in calling.h (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Fix GS == 1, 2, and 3 tests (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test PTRACE_PEEKUSER for GSBASE with invalid LDT GS (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Reap a forgotten child (Scott Wood) [1490498] - [x86] x86/fsgsbase: Replace static_cpu_has() with boot_cpu_has() (Scott Wood) [1490498] - [x86] x86/entry/64: Correct the comment over SAVE_AND_SET_GSBASE (Scott Wood) [1490498] - [x86] x86/entry/64: Do not use RDPID in paranoid entry to accomodate KVM (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Fix NULL deref in 86_fsgsbase_read_task (Scott Wood) [1490498] - [x86] x86/fsgsbase: Fix Xen PV support (Scott Wood) [1490498] - [x86] x86/ptrace: Fix 32-bit PTRACE_SETREGS vs fsbase and gsbase (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Add a missing memory constraint (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Fix a comment in the ptrace_write_gsbase test (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test GS selector on ptracer-induced GS base write (Scott Wood) [1490498] - [documentation] Documentation/x86/64: Add documentation for GS/FS addressing mode (Scott Wood) [1490498] - [x86] x86/elf: Enumerate kernel FSGSBASE capability in AT_HWCAP2 (Scott Wood) [1490498] - [x86] x86/cpu: Enable FSGSBASE on 64bit by default and add a chicken bit (Scott Wood) [1490498] - [x86] x86/entry/64: Handle FSGSBASE enabled paranoid entry/exit (Scott Wood) [1490498] - [x86] x86/entry/64: Remove TRACE_IRQS_*_DEBUG (Scott Wood) [1490498] - [x86] x86/entry/64: Introduce the FIND_PERCPU_BASE macro (Scott Wood) [1490498] - [x86] x86/entry/64: Switch CR3 before SWAPGS in paranoid entry (Scott Wood) [1490498] - [x86] x86/speculation/swapgs: Check FSGSBASE in enabling SWAPGS mitigation (Scott Wood) [1490498] - [x86] x86/process/64: Use FSGSBASE instructions on thread copy and ptrace (Scott Wood) [1490498] - [x86] x86/process: Unify copy_thread_tls() (Scott Wood) [1490498] - [x86] x86/process/64: Use FSBSBASE in switch_to() if available (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Enable FSGSBASE instructions in helper functions (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Add intrinsics for FSGSBASE instructions (Scott Wood) [1490498] - [x86] x86/cpu: Add 'unsafe_fsgsbase' to enable CR4.FSGSBASE (Scott Wood) [1490498] - [x86] x86/ptrace: Prevent ptrace from clearing the FS/GS selector (Scott Wood) [1490498] - [x86] x86/ptrace: Document FSBASE and GSBASE ABI oddities (Scott Wood) [1490498] - [x86] Revert "x86/ptrace: Prevent ptrace from clearing the FS/GS selector" and fix the test (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Fix some test case bugs (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test ptracer-induced GSBASE write with FSGSBASE (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test RD/WRGSBASE (Scott Wood) [1490498] - [documentation] kbuild: Raise the minimum required binutils version to 2.21 (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test ptracer-induced GSBASE write (Scott Wood) [1490498] - [x86] x86/ptrace: Prevent ptrace from clearing the FS/GS selector (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Fix the base write helper functions (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Clean up various details (Scott Wood) [1490498] - [x86] x86/segments: Introduce the 'CPUNODE' naming to better document the segment limit CPU/node NR trick (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Factor out FS/GS segment loading from __switch_to() (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Convert the ELF core dump code to the new FSGSBASE helpers (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Make ptrace use the new FS/GS base helpers (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Introduce FS/GS base helper functions (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Fix ptrace() to read the FS/GS base accurately (Scott Wood) [1490498] - [net] esp: select CRYPTO_SEQIV (Vladis Dronov) [1905088] - [crypto] treewide: Use fallthrough pseudo-keyword (Vladis Dronov) [1905088] - [crypto] crypto: drbg - always try to free Jitter RNG instance (Vladis Dronov) [1905088] - [crypto] crypto: drbg - should select CTR (Vladis Dronov) [1905088] - [crypto] crypto: ctr - no longer needs CRYPTO_SEQIV (Vladis Dronov) [1905088] - [crypto] crypto: drbg - always seeded with SP800-90B compliant noise source (Vladis Dronov) [1905088] - [crypto] crypto: jitter - SP800-90B compliance (Vladis Dronov) [1905088] - [crypto] crypto: jitter - add header to fix buildwarnings (Vladis Dronov) [1905088] - [crypto] crypto: jitter - fix comments (Vladis Dronov) [1905088] - [crypto] crypto: jitter - update implementation to 2.1.2 (Vladis Dronov) [1905088] - [crypto] crypto: drbg - in-place cipher operation for CTR (Vladis Dronov) [1905088] - [crypto] crypto: drbg - eliminate constant reinitialization of SGL (Vladis Dronov) [1905088] - [vfio] vfio/pci: Implement ioeventfd thread handler for contended memory lock (Alex Williamson) [1861560] - [vfio] vfio iommu type1: Fix memory leak in vfio_iommu_type1_pin_pages (Alex Williamson) [1896568] - [vfio] vfio/pci: Clear token on bypass registration failure (Alex Williamson) [1896568] - [vfio] vfio/type1: fix dirty bitmap calculation in vfio_dma_rw (Alex Williamson) [1497898] - [vfio] vfio: fix a missed vfio group put in vfio_pin_pages (Alex Williamson) [1497898] - [vfio] vfio: add a singleton check for vfio_group_pin_pages (Alex Williamson) [1497898] - [vfio] vfio/pci: Don't regenerate vconfig for all BARs if !bardirty (Alex Williamson) [1896568] - [vfio] vfio/pci: Remove redundant declaration of vfio_pci_driver (Alex Williamson) [1896568] - [uapi] vfio: Fix typo of the device_state (Alex Williamson) [1497898] - [vfio] vfio/type1: Add proper error unwind for vfio_iommu_replay() (Alex Williamson) [1866141] - [vfio] vfio-pci: Avoid recursive read-lock usage (Alex Williamson) [1861560] - [vfio] vfio/type1: Refactor vfio_iommu_type1_ioctl() (Alex Williamson) [1896568] - [vfio] vfio/pci: Add QAT devices to denylist (Alex Williamson) [1896565] - [vfio] vfio/pci: Add device denylist (Alex Williamson) [1896565] - [vfio] vfio/pci: Hold igate across releasing eventfd contexts (Alex Williamson) [1896568] - [vfio] vfio/type1: Add conditional rescheduling after iommu map failed (Alex Williamson) [1896568] - [vfio] vfio/pci: Add Intel X550 to hidden INTx devices (Alex Williamson) [1896567] - [vfio] vfio: Cleanup allowed driver naming (Alex Williamson) [1896568] - [uapi] vfio/type1: Fix migration info capability ID (Alex Williamson) [1497898] - [vfio] vfio iommu: typecast corrections (Alex Williamson) [1497898] - [vfio] vfio iommu: Use shift operation for 64-bit integer division (Alex Williamson) [1497898] - [vfio] vfio/mdev: Fix reference count leak in add_mdev_supported_type (Alex Williamson) [1896568] - [vfio] vfio: Selective dirty page tracking if IOMMU backed device pins pages (Alex Williamson) [1497898] - [vfio] vfio iommu: Add migration capability to report supported features (Alex Williamson) [1497898] - [vfio] vfio iommu: Update UNMAP_DMA ioctl to get dirty bitmap before unmap (Alex Williamson) [1497898] - [vfio] vfio iommu: Implementation of ioctl for dirty pages tracking (Alex Williamson) [1497898] - [uapi] vfio iommu: Add ioctl definition for dirty pages tracking (Alex Williamson) [1497898] - [vfio] vfio iommu: Cache pgsize_bitmap in struct vfio_iommu (Alex Williamson) [1497898] - [vfio] vfio iommu: Remove atomicity of ref_count of pinned pages (Alex Williamson) [1497898] - [uapi] vfio: UAPI for migration interface for device state (Alex Williamson) [1497898] - [vfio] vfio/pci: Remove dev_fmt definition (Alex Williamson) [1896568] - [vfio] vfio: Use dev_printk() when possible (Alex Williamson) [1896568] - [drm] drm: allow limiting the scatter list size (Lyude Paul) [1876018 1851790] - [drm] drm/nouveau/kms/nv50-: Fix clock checking algorithm in nv50_dp_mode_valid() (Lyude Paul) [1876018] - [drm] drm/nouveau/kms/nv50-: Get rid of bogus nouveau_conn_mode_valid() (Lyude Paul) [1876018] - [drm] DRM Backport 5.8 -> 5.9 (Lyude Paul) [1876018] - [drm] drm/edid: Fix uninitialized variable in drm_cvt_modes() (Lyude Paul) [1876018] - [of] of_graph: add of_graph_is_present() (Lyude Paul) [1876018] - [drm] virtio: virtio_has_iommu_quirk -> virtio_has_dma_quirk (Lyude Paul) [1876018] - [vhost] virtio: VIRTIO_F_IOMMU_PLATFORM -> VIRTIO_F_ACCESS_PLATFORM (Lyude Paul) [1876018] - [include] virtio_config: LE config space accessors (Lyude Paul) [1876018] - [kernel] sched: Remove sched_set_*() return value (Lyude Paul) [1876018] - [include] scatterlist: protect parameters of the sg_table related macros (Lyude Paul) [1876018] - [include] scatterlist: add generic wrappers for iterating over sgtable objects (Lyude Paul) [1876018] - [dma] dma-mapping: add generic helpers for mapping sgtable objects (Lyude Paul) [1876018] - [drm] DRM Backport 5.7 -> 5.8 (Lyude Paul) [1876018] - [drm] drm/fb-helper: Fix vt restore (Lyude Paul) [1876018] - [tty] tty/sysrq: constify the the sysrq_key_op(s) (Lyude Paul) [1876018] - [tools] augmented rbtree: rework the RB_DECLARE_CALLBACKS macro definition (Lyude Paul) [1876018] - [mm] augmented rbtree: add new RB_DECLARE_CALLBACKS_MAX macro (Lyude Paul) [1876018] - [tools] augmented rbtree: add comments for RB_DECLARE_CALLBACKS macro (Lyude Paul) [1876018] - [tools] rbtree: avoid generating code twice for the cached versions (tools copy) (Lyude Paul) [1876018] - [tty] tty/sysrq: constify the sysrq API (Lyude Paul) [1876018] - [tty] tty/sysrq: alpha: export and use __sysrq_get_key_op() (Lyude Paul) [1876018] - [include] uaccess: Add user_read_access_begin/end and user_write_access_begin/end (Lyude Paul) [1876018] - [PATCH] [drm] DRM Backport 5.6 -> 5.7 (Lyude Paul) [1876018] - [vfio] vfio: avoid inefficient operations on VFIO group in vfio_pin/unpin_pages (Lyude Paul) [1876018] - [vfio] vfio: allow external user to get vfio group from device (Lyude Paul) [1876018] - [drm] drm/fbdev-helper: don't force restores (Lyude Paul) [1876018] - [include] vgaswitcheroo: call fbcon_remap_all directly (Lyude Paul) [1876018] - [video] fbcon: Do not takeover the console from atomic context (Lyude Paul) [1878805 1876018] - [video] fbcon: Only defer console takeover if the current console driver is the dummycon (Lyude Paul) [1878805 1876018] - [video] fbcon: Only allow FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER if fbdev is builtin (Lyude Paul) [1878805 1876018] - [video] console/fbcon: Add support for deferred console takeover (Lyude Paul) [1878805 1876018] - [video] fbcon: Call WARN_CONSOLE_UNLOCKED() where applicable (Lyude Paul) [1878805 1876018] - [mm] mm: Split huge pages on write-notify or COW (Chris von Recklinghausen) [1913692] - [mm] mm: Introduce vma_is_special_huge (Chris von Recklinghausen) [1913692]- [tools] kselftests: set rx/txtimestamp.sh to correct permission (Hangbin Liu) [1908269] - [tools] kselftests: set udpgro.sh, udpgro_bench.sh, reuseport_addr_any.sh to correct permission (Hangbin Liu) [1908269] - [net] DCB: Validate DCB_ATTR_DCB_BUFFER argument (Balazs Nemeth) [1891595] - [net] netlabel: remove unused param from audit_log_format() (Balazs Nemeth) [1891595] - [net] netlabel: fix problems with mapping removal (Balazs Nemeth) [1891595] - [net] af_key: pfkey_dump needs parameter validation (Balazs Nemeth) [1891595] - [tools] perf tools: Add 'evlist' control command (Jiri Olsa) [1844111] - [tools] perf tools: Allow to enable/disable events via control file (Jiri Olsa) [1844111] - [tools] perf tools: Add evlist__disable_evsel/evlist__enable_evsel (Jiri Olsa) [1844111] - [tools] perf tools: Reformat record's control fd man text (Jiri Olsa) [1844111] - [tools] perf evlist: Use the right prefix for 'struct evlist' 'find' methods (Jiri Olsa) [1844111] - [tools] perf evlist: Use the right prefix for 'struct evlist' enable event methods (Jiri Olsa) [1844111] - [tools] perf evlist: Use the right prefix for 'struct evlist' 'toggle' methods (Jiri Olsa) [1844111] - [x86] perf/amd/uncore: Inform the user how many counters each uncore PMU has (Michael Petlan) [1884816] - [powercap] powercap: RAPL: Add AMD Fam19h RAPL support (Michael Petlan) [1884816] - [powercap] powercap: Add AMD Fam17h RAPL support (Michael Petlan) [1884816] - [powercap] powercap/intel_rapl_msr: Convert rapl_msr_priv into pointer (Michael Petlan) [1884816] - [x86] x86/msr-index: sort AMD RAPL MSRs by address (Michael Petlan) [1884816] - [thunderbolt] thunderbolt: Add support for Intel Maple Ridge (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add USB4 router operation proxy for firmware connection manager (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Move constants for USB4 router operations to tb_regs.h (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add connection manager specific hooks for USB4 router operations (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Pass TX and RX data directly to usb4_switch_op() (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Pass metadata directly to usb4_switch_op() (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Perform USB4 router NVM upgrade in two phases (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Return -ENOTCONN when ERR_CONN is received (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Keep the parent runtime resumed for a while on device disconnect (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Log adapter numbers in decimal in path activation/deactivation (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Log which connection manager implementation is used (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Move max_boot_acl field to correct place in struct icm (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Fix use-after-free in remove_unplugged_switch() (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add DMA traffic test driver (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add support for end-to-end flow control (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Make it possible to allocate one directional DMA tunnel (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Create debugfs directory automatically for services (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add functions for enabling and disabling lane bonding on XDomain (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add link_speed and link_width to XDomain (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Create XDomain devices for loops back to the host (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Find XDomain by route instead of UUID (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Do not clear USB4 router protocol adapter IFC and ISE bits (Torez Smith) [1782721] - [net] ipv6: fib: flush exceptions when purging route (Hangbin Liu) [1916084] - [net] ipv6: addrlabel: fix possible memory leak in ip6addrlbl_net_init (Hangbin Liu) [1916084] - [net] ipv6: remove unused function ipv6_skb_idev() (Hangbin Liu) [1916084] - [net] ipv6: Fix error path to cancel the meseage (Hangbin Liu) [1916084] - [tools] selftests/net/fib_tests: update addr_metric_test for peer route testing (Hangbin Liu) [1916084] - [net] net/ipv6: remove the old peer route if change it to a new one (Hangbin Liu) [1916084] - [tools] selftests/net: remove not backported tests (Hangbin Liu) [1908340] - [netdrv] bonding: add a vlan+srcmac tx hashing option (Jarod Wilson) [1724795] - [security] selinux: mark selinux_xfrm_refcount as __read_mostly (Ondrej Mosnacek) [1904940] - [net] udp: fix integer overflow while computing available space in sk_rcvbuf (Xin Long) [1916997] - [fs] NFSv4: make cache consistency bitmask dynamic (Steve Dickson) [1881647] - [include] NFSv4: Save a few bytes in the nfs_pgio_args/res (Steve Dickson) [1881647] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1884818 1908305] - [tools] perf test: Use generic event for expand_libpfm_events() (Michael Petlan) [1884818 1908305] - [tools] perf probe: Change function definition check due to broken DWARF (Michael Petlan) [1884818 1908305] - [tools] perf probe: Fix to die_entrypc() returns error correctly (Michael Petlan) [1884818 1908305] - [tools] perf stat: Use proper cpu for shadow stats (Michael Petlan) [1884818 1908305] - [tools] perf record: Synthesize cgroup events only if needed (Michael Petlan) [1884818 1908305] - [tools] perf diff: Fix error return value in __cmd_diff() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Update copy of libbpf's hashmap.c (Michael Petlan) [1884818 1908305] - [tools] perf test: Avoid an msan warning in a copied stack (Michael Petlan) [1884818 1908305] - [tools] perf inject: Fix file corruption due to event deletion (Michael Petlan) [1884818 1908305] - [tools] perf test: Update branch sample pattern for cs-etm (Michael Petlan) [1884818 1908305] - [tools] perf test: Fix a typo in cs-etm testing (Michael Petlan) [1884818 1908305] - [tools] perf lock: Don't free "lock_seq_stat" if read_count isn't zero (Michael Petlan) [1884818 1908305] - [tools] perf lock: Correct field name "flags" (Michael Petlan) [1884818 1908305] - [tools] tools feature: Fixup fast path feature detection (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add missing swap for cgroup events (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add missing swap for ino_generation (Michael Petlan) [1884818 1908305] - [tools] perf tools: Initialize output buffer in build_id__sprintf (Michael Petlan) [1884818 1908305] - [tools] perf hists browser: Increase size of 'buf' in perf_evsel__hists_browse() (Michael Petlan) [1884818 1908305] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1884818 1908305] - [tools] perf scripting python: Avoid declaring function pointers with a visibility attribute (Michael Petlan) [1884818 1908305] - [tools] perf tools: Remove broken __no_tail_call attribute (Michael Petlan) [1884818 1908305] - [tools] perf vendor events: Fix DRAM_BW_Use 0 issue for CLX/SKX (Michael Petlan) [1884818 1908305] - [tools] perf trace: Fix segfault when trying to trace events by cgroup (Michael Petlan) [1884818 1908305] - [tools] perf tools: Fix crash with non-jited bpf progs (Michael Petlan) [1884818 1908305] - [tools] perf tools: Update copy of libbpf's hashmap.c (Michael Petlan) [1884818 1908305] - [tools] perf tools: Remove LTO compiler options when building perl support (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Update documentation for metrics reorganization (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Add metrics "RMT Load Hit" (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Correct LLC load hit metrics (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Change header for LLC local hit (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Use more explicit headers for HITM (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Change header from "LLC Load Hitm" to "Load Hitm" (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Organize metrics based on memory hierarchy (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Display "Total Stores" as a standalone metrics (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Display the total numbers continuously (Michael Petlan) [1884818 1908305] - [tools] perf bench: Use condition variables in numa (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Fix event code for events referencing std arch events (Michael Petlan) [1884818 1908305] - [tools] perf diff: Support hot streams comparison (Michael Petlan) [1884818 1908305] - [tools] perf streams: Report hot streams (Michael Petlan) [1884818 1908305] - [tools] perf streams: Calculate the sum of total streams hits (Michael Petlan) [1884818 1908305] - [tools] perf streams: Link stream pair (Michael Petlan) [1884818 1908305] - [tools] perf streams: Compare two streams (Michael Petlan) [1884818 1908305] - [tools] perf streams: Get the evsel_streams by evsel_idx (Michael Petlan) [1884818 1908305] - [tools] perf streams: Introduce branch history "streams" (Michael Petlan) [1884818 1908305] - [tools] perf intel-pt: Improve PT documentation slightly (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add support for exclusive groups/events (Michael Petlan) [1884818 1908305] - [tools] perf test: Add build id shell test (Michael Petlan) [1884818 1908305] - [tools] perf tools: Align buildid list output for short build ids (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add size to 'struct perf_record_header_build_id' (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to dso__build_id_equal() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to dso__set_build_id() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to build_id__sprintf() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build id object to sysfs__read_build_id() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to filename__read_build_id() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Use build_id object in dso (Michael Petlan) [1884818 1908305] - [tools] perf config: Export the perf_config_from_file() function (Michael Petlan) [1884818 1908305] - [tools] perf python: Autodetect python3 binary (Michael Petlan) [1884818 1908305] - [tools] perf tests: Show python test script in verbose mode (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Update usage for showing memory events (Michael Petlan) [1884818 1908305] - [tools] perf stat: Fix out of bounds CPU map access when handling armv8_pmu events (Michael Petlan) [1884818 1908305] - [tools] perf python scripting: Fix printable strings in python3 scripts (Michael Petlan) [1884818 1908305] - [tools] perf metricgroup: Fix uncore metric expressions (Michael Petlan) [1884818 1908305] - [tools] perf parse-event: Release cpu_map refcount if evsel alloc failed (Michael Petlan) [1884818 1908305] - [tools] perf parse-event: Fix cpu map refcounting (Michael Petlan) [1884818 1908305] - [tools] tools lib traceevent: Hide non API functions (Michael Petlan) [1884818 1908305] - [tools] perf sched: Show start of latency as well (Michael Petlan) [1884818 1908305] - [tools] perf vendor events: Fix typos in power8 PMU events (Michael Petlan) [1884818 1908305] - [tools] perf bench: Run inject-build-id with --buildid-all option too (Michael Petlan) [1884818 1908305] - [tools] perf inject: Add --buildid-all option (Michael Petlan) [1884818 1908305] - [tools] perf inject: Do not load map/dso when injecting build-id (Michael Petlan) [1884818 1908305] - [tools] perf inject: Enter namespace when reading build-id (Michael Petlan) [1884818 1908305] - [tools] perf inject: Add missing callbacks in perf_tool (Michael Petlan) [1884818 1908305] - [tools] perf bench: Add build-id injection benchmark (Michael Petlan) [1884818 1908305] - [tools] perf trace: Use the autogenerated mmap 'prot' string/id table (Michael Petlan) [1884818 1908305] - [tools] tools beauty: Add script to generate table of mmap's 'prot' argument (Michael Petlan) [1884818 1908305] - [tools] perf beauty mmap_flags: Conditionaly define the mmap flags (Michael Petlan) [1884818 1908305] - [tools] perf trace beauty: Add script to autogenerate mremap's flags args string/id table (Michael Petlan) [1884818 1908305] - [tools] perf tools: Separate the checking of headers only used to build beautification tables (Michael Petlan) [1884818 1908305] - [tools] perf parse-events: Reduce casts around bp_addr (Michael Petlan) [1884818 1908305] - [tools] perf test: Add expand cgroup event test (Michael Petlan) [1884818 1908305] - [tools] perf tools: Allow creation of cgroup without open (Michael Petlan) [1884818 1908305] - [tools] perf tools: Copy metric events properly when expand cgroups (Michael Petlan) [1884818 1908305] - [tools] perf stat: Add --for-each-cgroup option (Michael Petlan) [1884818 1908305] - [tools] perf evsel: Add evsel__clone() function (Michael Petlan) [1884818 1908305] - [tools] perf vendor events: Update SkylakeX events to v1.21 (Michael Petlan) [1884818 1908305] - [tools] perf vendor events intel: Update CascadelakeX events to v1.08 (Michael Petlan) [1884818 1908305] - [tools] perf script: Add min, max to futex-contention output, in addition to avg (Michael Petlan) [1884818 1908305] - [tools] perf script: Autopep8 futex-contention (Michael Petlan) [1884818 1908305] - [tools] perf stat: Skip duration_time in setup_system_wide (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Support cap_user_time_short for event TIME_CONV (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Calculate timestamp with cap_user_time_short (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Add rdtsc() for Arm64 (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Move out common functions from x86 (Michael Petlan) [1884818 1908305] - [tools] perf probe: Fall back to debuginfod query if debuginfo and source not found locally (Michael Petlan) [1884818 1908305] - [tools] perf probe: Fix to adjust symbol address with correct reloc_sym address (Michael Petlan) [1884818 1908305] - [tools] perf intel-pt: Fix "context_switch event has no tid" error (Michael Petlan) [1884818 1908305] - [tools] perf script: Display negative tid in non-sample events (Michael Petlan) [1884818 1908305] - [tools] perf docs: Improve help information in perf.txt (Michael Petlan) [1884818 1908305] - [tools] perf metric: Remove duplicate include (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add documentation for topdown metrics (Michael Petlan) [1884818 1908305] - [tools] perf stat: Support new per thread TopDown metrics (Michael Petlan) [1884818 1908305] - [tools] perf record: Support sample-read topdown metric group (Michael Petlan) [1884818 1908305] - [tools] perf tools: Rename group to topdown (Michael Petlan) [1884818 1908305] - [tools] perf machine: Add machine__for_each_dso() function (Michael Petlan) [1884818 1908305] - [tools] perf tests: Call test_attr__open() directly (Michael Petlan) [1884818 1908305] - [tools] perf vendor events power9: Add hv_24x7 core level metric events (Michael Petlan) [1884818 1908305] - [tools] perf metricgroup: Pass pmu_event structure as a parameter for arch_get_runtimeparam() (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Add support for parsing perchip/percore events (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Add new structure to pass json fields (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Make json_events() static and ditch jevents.h file (Michael Petlan) [1884818 1908305] - [tools] perf test: Introduce script for Arm CoreSight testing (Michael Petlan) [1884818 1908305] - [tools] perf metricgroup: Fix typo in comment (Michael Petlan) [1884818 1908305] - [tools] perf stat: Remove dead code: no need to set os.evsel twice (Michael Petlan) [1884818 1908305] - [tools] perf list: Do not print 'Metric Groups:' unnecessarily (Michael Petlan) [1884818 1908305] - [tools] perf list: Remove dead code in argument check (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add build test with GTK+ (Michael Petlan) [1884818 1908305] - [tools] tools feature: Add missing -lzstd to the fast path feature detection (Michael Petlan) [1884818 1908305] - [tools] perf tools: Make GTK2 support opt-in (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Enable Family 19h users by matching Zen2 events (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Add recommended events (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Add ITLB Instruction Fetch Hits event for zen1 (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Add L2 Prefetch events for zen1 (Michael Petlan) [1884818 1908305] - [tools] perf: ftrace: Add filter support for option -F/--funcs (Michael Petlan) [1884818 1908305] - [tools] perf tools: Consolidate close_control_option()'s into one function (Michael Petlan) [1884818 1908305] - [tools] perf intel-pt: Document snapshot control command (Michael Petlan) [1884818 1908305] - [tools] perf annotate: Add 'ret' (intel disasm style) as an alias for 'retq' (Michael Petlan) [1884818 1908305] - [tools] perf annotate: Allow configuring the 'disassembler_style' knob via 'perf config' (Michael Petlan) [1884818 1908305] - [tools] perf record: Add 'snapshot' control command (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add FIFO file names as alternative options to --control (Michael Petlan) [1884818 1908305] - [tools] perf tools: Use AsciiDoc formatting for --control option documentation (Michael Petlan) [1884818 1908305] - [tools] perf tools: Handle read errors from ctl_fd (Michael Petlan) [1884818 1908305] - [tools] perf tools: Consolidate --control option parsing into one function (Michael Petlan) [1884818 1908305] - [tools] perf tests: Add test for PE binary format support (Michael Petlan) [1884818 1908305] - [tools] perf symbols: Try reading the symbol table with libbfd (Michael Petlan) [1884818 1908305] - [tools] perf dso: Use libbfd to read build_id and .gnu_debuglink section (Michael Petlan) [1884818 1908305] - [tools] tools features: Add feature test to check if libbfd has buildid support (Michael Petlan) [1884818 1908305] - [tools] tools: Remove feature-libelf-mmap feature detection (Michael Petlan) [1884818 1908305] - [tools] perf build: Allow nested externs to enable BUILD_BUG() usage (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Check PEBS status correctly (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Fix a warning on x86_pmu_stop() with large PEBS (Michael Petlan) [1884818 1908305] - [x86] perf/x86: fix sysfs type mismatches (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Make anythread filter support conditional (Michael Petlan) [1884818 1908305] - [kernel] perf: Tweak perf_event_attr::exclusive semantics (Michael Petlan) [1884818 1908305] - [kernel] perf: Fix event multiplexing for exclusive groups (Michael Petlan) [1884818 1908305] - [kernel] perf: Simplify group_sched_in() (Michael Petlan) [1884818 1908305] - [kernel] perf: Simplify group_sched_out() (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Make dummy_iregs static (Michael Petlan) [1884818 1908305] - [include] perf/arch: Remove perf_sample_data::regs_user_copy (Michael Petlan) [1884818 1908305] - [kernel] perf: Optimize get_recursion_context() (Michael Petlan) [1884818 1908305] - [kernel] perf: Fix get_recursion_context() (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Reduce stack usage for x86_pmu::drain_pebs() (Michael Petlan) [1884818 1908305] - [kernel] perf: Reduce stack usage of perf_output_begin() (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Fix a memory leak in perf_event_parse_addr_filter() (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Fix n_metric for cancelled txn (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Fix n_pair for cancelled txn (Michael Petlan) [1884818 1908305] - [x86] x86/events/amd/iommu: Fix sizeof mismatch (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Check perf metrics feature for each CPU (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Fix Ice Lake event constraint table (Michael Petlan) [1884818 1908305] - [x86] perf/x86/msr: Add Jasper Lake support (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Add Jasper Lake support (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Allow F19h user coreid, threadmask, and sliceid specification (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Allow F17h user threadmask and slicemask specification (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Prepare to scale for more attributes that vary per family (Michael Petlan) [1884818 1908305] - [x86] arch/x86/amd/ibs: Fix re-arming IBS Fetch (Michael Petlan) [1884818 1908305] - [x86] perf/x86/rapl: Add AMD Fam19h RAPL support (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd/ibs: Support 27-bit extended Op/cycle counter (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd/ibs: Fix raw sample data accumulation (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd/ibs: Don't include randomized bits in get_ibs_op_count() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd: Fix sampling Large Increment per Cycle events (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Set all slices and threads to restore perf stat -a behaviour (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Pull pmu::sched_task() into perf_event_context_sched_out() (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Pull pmu::sched_task() into perf_event_context_sched_in() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/ds: Fix x86_pmu_stop warning for large PEBS (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Support per-thread RDPMC TopDown metrics (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Support TopDown metrics on Ice Lake (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Add a macro for RDPMC offset of fixed counters (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Generic support for hardware TopDown metrics (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Add a new PERF_EV_CAP_SIBLING event capability (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Use switch in intel_pmu_disable/enable_event (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Fix the name of perf METRICS (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Move BTS index to 47 (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Introduce the fourth fixed counter (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Name the global status bit in NMI handler (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Use event_base_rdpmc for the RDPMC userspace support (Michael Petlan) [1884818 1908305] - [powerpc] powerpc/cacheinfo: Print correct cache-sibling map/list for L2 cache (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Add support detecting thread-groups sharing L2 cache (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Rename init_thread_group_l1_cache_map() to make it generic (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Rename cpu_l1_cache_map as thread_group_l1_cache_map (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Parse ibm, thread-groups with multiple properties (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Use GFP_ATOMIC while allocating tmp mask (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Remove unnecessary variable (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Optimize update_coregroup_mask (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Move coregroup mask updation to a new function (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Optimize update_mask_by_l2 (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Check for duplicate topologies and consolidate (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Depend on cpu_l1_cache_map when adding CPUs (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Stop passing mask to update_mask_by_l2 (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Limit CPUs traversed to within a node (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Optimize remove_cpu_from_masks (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Remove get_physical_package_id (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Stop updating cpu_core_mask (Diego Domingos) [1906504] - [powerpc] powerpc/topology: Update topology_core_cpumask (Diego Domingos) [1906504] - [powerpc] powerpc/topology: Override cpu_smt_mask (Diego Domingos) [1906504] - [include] sched/topology: Allow archs to override cpu_smt_mask (Diego Domingos) [1906504] - [powerpc] powerpc/cacheinfo: Add per cpu per index shared_cpu_list (Diego Domingos) [1906504] - [powerpc] powerpc/cacheinfo: Make cpumap_show code reusable (Diego Domingos) [1906504] - [powerpc] powerpc/cacheinfo: Use cpumap_print to print cpumap (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Use IS_ENABLED() to avoid #ifdef (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Drop superfluous NULL check (Diego Domingos) [1906504] - [vfio] pci: Cleanup .probe() exit paths (Clark Williams) [1860192] - [vfio] pci: Add sriov_configure support (Clark Williams) [1860192] - [vfio] Introduce VFIO_DEVICE_FEATURE ioctl and first user (Clark Williams) [1860192] - [vfio] pci: Introduce VF token (Clark Williams) [1860192] - [vfio] pci: Implement match ops (Clark Williams) [1860192] - [vfio] Include optional device match in vfio_device_ops callbacks (Clark Williams) [1860192] - [infiniband] IB/hfi1: Ensure correct mm is used at all times (Kamal Heib) [1879586] {CVE-2020-27835} - [block] rbd: require global CAP_SYS_ADMIN for mapping and unmapping (Ming Lei) [1887327] {CVE-2020-25284}- [tools] kunit: tool: unmark test_data as binary blobs (Nico Pache) [1900119] - [tools] kunit: tools: fix kunit_tool tests for parsing test plans (Nico Pache) [1900119] - [documentation] Documentation: kunit: Update Kconfig parts for KUNIT's module support (Nico Pache) [1900119] - [tools] kunit: Don't fail test suites if one of them is empty (Nico Pache) [1900119] - [tools] kunit: Fix kunit.py --raw_output option (Nico Pache) [1900119] - [tools] kunit: tool: fix improper treatment of file location (Nico Pache) [1900119] - [tools] kunit: tool: fix broken default args in unit tests (Nico Pache) [1900119] - [tools] kunit: capture stderr on all make subprocess calls (Nico Pache) [1900119] - [documentation] Documentation: kunit: Remove references to --defconfig (Nico Pache) [1900119] - [kernel] kcsan: Add test suite (Nico Pache) [1900119] - [documentation] Documentation: kunit: Add some troubleshooting tips to the FAQ (Nico Pache) [1900119] - [tools] kunit: kunit_tool: Fix invalid result when build fails (Nico Pache) [1900119] - [tools] kunit: show error if kunit results are not present (Nico Pache) [1900119] - [tools] kunit: kunit_config: Fix parsing of CONFIG options with space (Nico Pache) [1900119] - [lib] kunit: add support for named resources (Nico Pache) [1900119] - [lib] kunit: generalize kunit_resource API beyond allocated resources (Nico Pache) [1900119] - [security] security: apparmor: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [fs] fs: ext4: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [base] drivers: base: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [lib] lib: Kconfig.debug: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [lib] kunit: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [lib] kunit: Kconfig: enable a KUNIT_ALL_TESTS fragment (Nico Pache) [1900119] - [tools] kunit: Fix TabError, remove defconfig code and handle when there is no kunitconfig (Nico Pache) [1900119] - [tools] kunit: use KUnit defconfig by default (Nico Pache) [1900119] - [tools] kunit: use --build_dir=.kunit as default (Nico Pache) [1900119] - [tools] kunit: kunit_tool: Separate out config/build/exec/parse (Nico Pache) [1900119] - [lib] lib/test_linear_ranges: add a test for the 'linear_ranges' (Nico Pache) [1900119] - [lib] kunit: Add missing newline in summary message (Nico Pache) [1900119] - [tools] kunit: tool: add missing test data file content (Nico Pache) [1900119] - [documentation] kunit: update documentation to describe debugfs representation (Nico Pache) [1900119] - [lib] kunit: subtests should be indented 4 spaces according to TAP (Nico Pache) [1900119] - [lib] kunit: add log test (Nico Pache) [1900119] - [lib] kunit: add debugfs /sys/kernel/debug/kunit//results display (Nico Pache) [1900119] - [documentation] Documentation: kunit: Make the KUnit documentation less UML-specific (Nico Pache) [1900119] - [lib] Fix linked-list KUnit test when run multiple times (Nico Pache) [1900119] - [tools] kunit: kunit_tool: Allow .kunitconfig to disable config items (Nico Pache) [1900119] - [lib] kunit: Always print actual pointer values in asserts (Nico Pache) [1900119] - [tools] kunit: add --make_options (Nico Pache) [1900119] - [tools] kunit: Run all KUnit tests through allyesconfig (Nico Pache) [1900119] - [tools] kunit: kunit_parser: make parser more robust (Nico Pache) [1900119] - [of] of: unittest: annotate warnings triggered by unittest (Nico Pache) [1900119] - [of] of: unittest: Disable interrupt node tests for old world MAC systems (Nico Pache) [1900119] - [of] of: unittest: add overlay gpio test to catch gpio hog problem (Nico Pache) [1900119] - [tools] kunit: run kunit_tool from any directory (Nico Pache) [1900119] - [tools] kunit: test: Improve error messages for kunit_tool when kunitconfig is invalid (Nico Pache) [1900119] - [documentation] Documentation: kunit: fixed sphinx error in code block (Nico Pache) [1900119] - [base] software node: introduce CONFIG_KUNIT_DRIVER_PE_TEST (Nico Pache) [1900119] - [base] kunit: building kunit as a module breaks allmodconfig (Nico Pache) [1900119] - [documentation] kunit: update documentation to describe module-based build (Nico Pache) [1900119] - [lib] kunit: allow kunit to be loaded as a module (Nico Pache) [1900119] - [lib] kunit: remove timeout dependence on sysctl_hung_task_timeout_seconds (Nico Pache) [1900119] - [lib] kunit: allow kunit tests to be loaded as a module (Nico Pache) [1900119] - [lib] kunit: hide unexported try-catch interface in try-catch-impl.h (Nico Pache) [1900119] - [lib] kunit: move string-stream.h to lib/kunit (Nico Pache) [1900119] - [security] apparmor: add AppArmor KUnit tests for policy unpack (Nico Pache) [1900119] - [tools] kunit/kunit_tool_test: Test '--build_dir' option run (Nico Pache) [1900119] - [tools] kunit: Rename 'kunitconfig' to '.kunitconfig' (Nico Pache) [1900119] - [tools] kunit: Place 'test.log' under the 'build_dir' (Nico Pache) [1900119] - [tools] kunit: Create default config in '--build_dir' (Nico Pache) [1900119] - [tools] kunit: Remove duplicated defconfig creation (Nico Pache) [1900119] - [documentation] docs/kunit/start: Use in-tree 'kunit_defconfig' (Nico Pache) [1900119] - [documentation] Documentation: kunit: add documentation for kunit_tool (Nico Pache) [1900119] - [documentation] Documentation: kunit: fix typos and gramatical errors (Nico Pache) [1900119] - [tools] kunit: testing kunit: Bug fix in test_run_timeout function (Nico Pache) [1900119] - [base] PM / QoS: Initial kunit test (Nico Pache) [1900119] - [lib] lib/list-test: add a test for the 'list' doubly linked list (Nico Pache) [1900119] - [fs] ext4: add kunit test for decoding extended timestamps (Nico Pache) [1900119] - [documentation] Documentation: kunit: Fix verification command (Nico Pache) [1900119] - [tools] kunit: Fix '--build_dir' option (Nico Pache) [1900119] - [lib] kunit: fix failure to build without printk (Nico Pache) [1900119] - [kernel] kernel/sysctl-test: Add null pointer test for sysctl.c:proc_dointvec() (Nico Pache) [1900119] - [documentation] Documentation: kunit: add documentation for KUnit (Nico Pache) [1900119] - [tools] kunit: defconfig: add defconfigs for building KUnit tests (Nico Pache) [1900119] - [tools] kunit: tool: add Python wrappers for running KUnit tests (Nico Pache) [1900119] - [lib] kunit: test: add tests for KUnit managed resources (Nico Pache) [1900119] - [lib] kunit: test: add the concept of assertions (Nico Pache) [1900119] - [lib] kunit: test: add tests for kunit test abort (Nico Pache) [1900119] - [lib] kunit: test: add support for test abort (Nico Pache) [1900119] - [tools] objtool: add kunit_try_catch_throw to the noreturn list (Nico Pache) [1900119] - [tools] objtool: Add rewind_stack_do_exit() to the noreturn list (Nico Pache) [1900119] - [lib] kunit: test: add initial tests (Nico Pache) [1900119] - [lib] lib: enable building KUnit in lib/ (Nico Pache) [1900119] - [lib] kunit: test: add the concept of expectations (Nico Pache) [1900119] - [lib] kunit: test: add assertion printing library (Nico Pache) [1900119] - [lib] kunit: test: add string_stream a std::stream like string builder (Nico Pache) [1900119] - [lib] kunit: test: add test resource management API (Nico Pache) [1900119] - [lib] kunit: test: add KUnit test runner core (Nico Pache) [1900119] - [watchdog] watchdog/hpwdt: Reflect changes (Joseph Szczypek) [1905293] - [watchdog] watchdog/hpwdt: Disable NMI in Crash Kernel (Joseph Szczypek) [1905293] - [idle] intel_idle: add SnowRidge C-state table (Steve Best) [1838554] - [mm] mm: memcg/slab: fix use after free in obj_cgroup_charge (Waiman Long) [1916962] - [mm] mm: memcg/slab: fix return of child memcg objcg for root memcg (Waiman Long) [1916962] - [mm] mm: memcg/slab: fix obj_cgroup_charge() return value handling (Waiman Long) [1916962] - [mm] mm: kmem: move memcg_kmem_bypass() calls to get_mem/obj_cgroup_from_current() (Waiman Long) [1916962] - [s390] s390/kexec_file: fix diag308 subcode when loading crash kernel (Philipp Rudo) [1897184] - [net] ethtool: fix error paths in ethnl_set_channels() (Ivan Vecera) [1906682] - [powerpc] powerpc/pci: Remove LSI mappings on device teardown (Diego Domingos) [1909722] - [powerpc] Revert "powerpc/pci: unmap legacy INTx interrupts of passthrough IO adapters" (Diego Domingos) [1909722] - [block] block: add blk_alloc_queue declaration back (Ming Lei) [1911343] - [net] tcp: only postpone PROBE_RTT if RTT is < current min_rtt estimate (Antoine Tenart) [1901863] - [net] tcp_bbr: improve arithmetic division in bbr_update_bw() (Antoine Tenart) [1901863] - [net] tcp_bbr: clarify that bbr_bdp() rounds up in comments (Antoine Tenart) [1901863] - [net] tcp_bbr: adapt cwnd based on ack aggregation estimation (Antoine Tenart) [1901863] - [net] tcp_bbr: fix bbr pacing rate for internal pacing (Antoine Tenart) [1901863]- [wireless] iwlwifi: fw: acpi: Demote non-conformant function headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: dbg: Fix misspelling of 'reg_data' in function header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-phy-db: Add missing struct member description for 'trans' (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-eeprom-parse: Fix 'struct iwl_eeprom_enhanced_txpwr's header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-eeprom-read: Demote one nonconformant function header (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: rs: Demote non-conformant function documentation headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-drv: Fix fall-through warnings for Clang (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: Fix fall-through warnings for Clang (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Fix fall-through warnings for Clang (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: validate notification size when waiting (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: purge the BSS table upon firmware load (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: check that statistics TLV version match struct version (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add size checks for range response notification (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: hook up missing RX handlers (Jarod Wilson) [1857772] - [wireless] iwlwifi: tighten RX MPDU bounds checks (Jarod Wilson) [1857772] - [wireless] iwlwifi: Add a new card for MA family (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: disconnect if channel switch delay is too long (Jarod Wilson) [1857772] - [wireless] iwlwifi: support firmware reset handshake (Jarod Wilson) [1857772] - [wireless] iwlwifi: add an extra firmware state in the transport (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix a race in CSA that caused assert 0x3420 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: validate firmware sync response size (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: clean up some rx code (Jarod Wilson) [1857772] - [wireless] iwlwifi: use SPDX tags (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg-tlv: fix old length in is_trig_data_contained() (Jarod Wilson) [1857772] - [wireless] iwlwifi: trans: consider firmware dead after errors (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: remove unnecessary setting of inta_mask (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: file: fix documentation for SAR flag (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: remove MSIX_HW_INT_CAUSES_REG_IML handling (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: clean up scan state on failure (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: do more useful queue sync accounting (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix 22000 series driver NMI (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: change 12k A-MSDU config to use 16k buffers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: move iwl_mvm_stop_device() out of line (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: clear up iwl_mvm_notify_rx_queue() argument type (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove sw_csum_tx (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: validate RX descriptor length (Jarod Wilson) [1857772] - [wireless] iwlwifi: validate MPDU length against notification length (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: iterate active stations when updating statistics (Jarod Wilson) [1857772] - [wireless] iwlwifi: sort out the NVM offsets (Jarod Wilson) [1857772] - [wireless] iwlwifi: fix typo in comment (Jarod Wilson) [1857772] - [wireless] iwlwifi: follow the new inclusive terminology (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove the read_nvm from iwl_run_unified_mvm_ucode (Jarod Wilson) [1857772] - [wireless] iwlwifi: avoid endless HW errors at assert time (Jarod Wilson) [1857772] - [wireless] iwlwifi: enable sending/setting debug host event (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for 6GHz (Jarod Wilson) [1857772] - [wireless] iwlwifi: copy iwl_he_capa for modifications (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: remove obsolete pre-release support code (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove the read_nvm from iwl_run_init_mvm_ucode (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Init error table memory to zero (Jarod Wilson) [1857772] - [wireless] iwlwifi: d3: do not send the WOWLAN_CONFIGURATION command for netdetect (Jarod Wilson) [1857772] - [wireless] iwlwifi: move reclaim flows to the queue file (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix sar profile printing issue (Jarod Wilson) [1857772] - [wireless] iwlwifi: yoyo: align the write pointer to DWs (Jarod Wilson) [1857772] - [wireless] iwlwifi: yoyo: add the ability to dump phy periphery (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove all queue resources before free (Jarod Wilson) [1857772] - [wireless] wireless: remove unneeded break (Jarod Wilson) [1857772] - [net] nl80211/cfg80211: fix potential infinite loop (Jarod Wilson) [1857772] - [net] cfg80211: select CONFIG_CRC32 (Jarod Wilson) [1857772] - [net] nl80211/cfg80211: support 6 GHz scanning (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: add some missing entries for AX210 (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: invert values of NO_160 device config entries (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: add one missing entry for AX210 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix kernel panic in case of assert during CSA (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: set LTR to avoid completion timeout (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: write queue_sync_state only for sync (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: properly cancel a session protection for P2P (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: use the HOT_SPOT_CMD to cancel an AUX ROC (Jarod Wilson) [1857772] - [wireless] iwlwifi: sta: set max HE max A-MPDU according to HE capa (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: limit memory read spin time (Jarod Wilson) [1857772] - [wireless] Revert "iwlwifi: remove wide_cmd_header field" (Jarod Wilson) [1857772] - [wireless] iwlwifi: bump FW API to 59 for AX devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: read and parse PNVM file (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: implement set_pnvm op (Jarod Wilson) [1857772] - [wireless] iwlwifi: add trans op to set PNVM (Jarod Wilson) [1857772] - [wireless] iwlwifi: move PNVM implementation to common code (Jarod Wilson) [1857772] - [wireless] iwlwifi: rs: align to new TLC config command API (Jarod Wilson) [1857772] - [wireless] iwlwifi: fix sar geo table initialization (Jarod Wilson) [1857772] - [wireless] iwlwifi: stats: add new api fields for statistics cmd/ntfy (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix suspicious rcu usage warnings (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove memset of kek_kck command (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: don't send a CSA command the firmware doesn't know (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: fix the xtal latency value for a few qu devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: fix xtal latency for 9560 devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: fix 0x271B and 0x271C trans cfg struct (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: avoid possible NULL pointer dereference (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: support ADD_STA_CMD_API_S ver 12 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add a get lmac id function (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: prepare roc_done_wk to work sync (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: re-enable TX after channel switch (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: don't send RFH_QUEUE_CONFIG_CMD with no queues (Jarod Wilson) [1857772] - [wireless] iwlwifi: support an additional Qu subsystem id (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: stop claiming NL80211_EXT_FEATURE_SET_SCAN_DWELL (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: ring the doorbell and wait for PNVM load completion (Jarod Wilson) [1857772] - [wireless] iwlwifi: update prph scratch structure to include PNVM data (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: read and parse SKU ID if available (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: get number of stations from TLV (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-drv: Provide descriptions debugfs dentries (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: devices: Fix function documentation formatting issues (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: tx: Demote misuse of kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: rxon: Demote non-conformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: scan: Demote a few nonconformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: utils: Fix some doc-rot (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: Demote a couple of nonconformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: ops: Remove unused static struct 'iwl_mvm_debug_names' (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: sta: Demote a bunch of nonconformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: calib: Demote seemingly unintentional kerneldoc header (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: lib: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: tx: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: rs: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: bump FW API to 57 for AX devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: yoyo: add support for internal buffer allocation in D3 (Jarod Wilson) [1857772] - [wireless] iwlwifi: api: fix u32 -> __le32 (Jarod Wilson) [1857772] - [wireless] iwlwifi: use correct group for alive notification (Jarod Wilson) [1857772] - [wireless] iwlwifi: support version 5 of the alive notification (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: ignore the scan duration parameter (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg: add debug host notification (DHN) time point (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: make iwl_pcie_txq_update_byte_cnt_tbl bus independent (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: clear all scan UIDs (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: d3: parse wowlan status version 11 (Jarod Wilson) [1857772] - [wireless] iwlwifi: align RX status flags with firmware (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove redundant log in iwl_mvm_tvqm_enable_txq() (Jarod Wilson) [1857772] - [wireless] iwlwifi: phy-ctxt: add new API VER 3 for phy context cmd (Jarod Wilson) [1857772] - [wireless] iwlwifi: thermal: support new temperature measurement API (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add d3 prints (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: d3: support GCMP ciphers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: support more GTK rekeying algorithms (Jarod Wilson) [1857772] - [wireless] iwlwifi: move all bus-independent TX functions to common code (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: initiator: add option for adding a PASN responder (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: responder: allow to set only the HLTK for an associated station (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: location: set the HLTK when PASN station is added (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Add FTM initiator RTT smoothing logic (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for responder dynamic config command version 3 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for range request command ver 11 (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove wide_cmd_header field (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: add default value for iwl_fw_lookup_cmd_ver (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: in non acpi compilations remove iwl_sar_geo_init (Jarod Wilson) [1857772] - [wireless] iwlwifi: rs: set RTS protection for all non legacy rates (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: support new KEK KCK api (Jarod Wilson) [1857772] - [wireless] iwlwifi: support version 3 of GEO_TX_POWER_LIMIT (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: rename geo structs to contain versioning (Jarod Wilson) [1857772] - [wireless] iwlwifi: support REDUCE_TX_POWER_CMD version 6 (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: prepare SAR profile selection code for multiple sizes (Jarod Wilson) [1857772] - [wireless] iwlwifi: add a common struct for all iwl_tx_power_cmd versions (Jarod Wilson) [1857772] - [wireless] iwlwifi: add new card for MA family (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: remove dummy definition of iwl_sar_set_profile() (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove iwl_validate_sar_geo_profile() export (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: use CHECKSUM_COMPLETE (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove redundant support_umac_log field (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for new WOWLAN_TSC_RSC_PARAM version (Jarod Wilson) [1857772] - [wireless] iwlwifi: don't export acpi functions unnecessarily (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: process ba-notifications also when sta rcu is invalid (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for new version of WOWLAN_TKIP_SETTING_API_S (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Don't install CMAC/GMAC key in AP mode (Jarod Wilson) [1857772] - [wireless] iwl-trans: move dev_cmd_offs, page_offs to a common trans header (Jarod Wilson) [1857772] - [wireless] iwlwifi: regulatory: regulatory capabilities api change (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg: add dumping special device memory (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg: remove IWL_FW_INI_TIME_POINT_WDG_TIMEOUT (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: support ppag table command v2 (Jarod Wilson) [1857772] - [wireless] iwlwifi: add new cards for MA family (Jarod Wilson) [1857772] - [wireless] iwlwifi: move bc_table_dword to a common trans header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-trans: move tfd to trans layer (Jarod Wilson) [1857772] - [wireless] iwlwifi: move bc_pool to a common trans header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-trans: move all txcmd init to trans alloc (Jarod Wilson) [1857772] - [wireless] iwlwifi: enable twt by default (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add an option to add PASN station (Jarod Wilson) [1857772] - [wireless] iwlwifi: add new cards for AX201 family (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: move assert descriptor parser to common code (Jarod Wilson) [1857772] - [wireless] iwlwifi: wowlan: adapt to wowlan status API version 10 (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: evaluate dsm to disable 5.8GHz channels (Jarod Wilson) [1857772] - [wireless] iwlwifi: msix: limit max RX queues for 9000 family (Jarod Wilson) [1857772] - [wireless] iwlwifi: sta: defer ADDBA transmit in case reclaimed SN != next SN (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: set PROTECTED_TWT feature if supported by firmware (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: set PROTECTED_TWT in MAC data policy (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add PROTECTED_TWT firmware API (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: rs-fw: handle VHT extended NSS capability (Jarod Wilson) [1857772] - [x86] sev-es: Use new for_each_insn_prefix() macro to loop over prefixes bytes (Vitaly Kuznetsov) [1915453] - [x86] insn-eval: Use new for_each_insn_prefix() macro to loop over prefixes bytes (Vitaly Kuznetsov) [1915453] - [tools] x86/uprobes: Do not use prefixes.nbytes when looping over prefixes.bytes (Vitaly Kuznetsov) [1915453] - [powercap] powercap/intel_rapl: add support for ElkhartLake (Steve Best) [1847054] - [char] tpm: efi: Don't create binary_bios_measurements file for an empty log (Jerry Snitselaar) [1887536 1855183] - [char] tpm_tis: Add a check for invalid status (Jerry Snitselaar) [1887536 1855183] - [char] tpm: use *ph to print small buffer (Jerry Snitselaar) [1887536 1855183] - [char] tpm: Add support for event log pointer found in TPM2 ACPI table (Jerry Snitselaar) [1887536 1855183] - [acpi] acpi: Extend TPM2 ACPI table with missing log fields (Jerry Snitselaar) [1887536] - [char] tpm: Unify the mismatching TPM space buffer sizes (Jerry Snitselaar) [1887536 1855183] - [include] tpm: Require that all digests are present in TCG_PCR_EVENT2 structures (Jerry Snitselaar) [1887536 1855183] - [char] tpm_tis_spi: Prefer async probe (Jerry Snitselaar) [1887536 1855183] - [char] tpm/st33zp24: fix spelling mistake "drescription" -> "description" (Jerry Snitselaar) [1887536] - [char] tpm_tis: extra chip->ops check on error path in tpm_tis_core_init (Jerry Snitselaar) [1887536 1855183] - [char] tpm_tis_spi: Don't send anything during flow control (Jerry Snitselaar) [1887536 1855183] - [include] efi/tpm: Verify event log header before parsing (Jerry Snitselaar) [1887536 1855183] - [char] tpm: eventlog: Replace zero-length array with flexible-array member (Jerry Snitselaar) [1887536 1855183] - [char] tpm: fix wrong return value in tpm_pcr_extend (Jerry Snitselaar) [1887536 1855183] - [include] tpm_eventlog.h: Replace zero-length array with flexible-array member (Jerry Snitselaar) [1887536 1855183] - [include] phylink: : fix function prototype kernel-doc warning (Petr Oros) [1878147] - [netdrv] net: phy: call phy_disable_interrupts() in phy_attach_direct() instead (Petr Oros) [1878147] - [net] net: ethtool: Handle missing cable test TDR parameters (Petr Oros) [1878147] - [documentation] docs: networking: fix extra spaces in ethtool-netlink (Petr Oros) [1878147] - [documentation] dt-bindings: net: mvusb: Fix example errors (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: fix null pointer dereference (Petr Oros) [1878147] - [netdrv] net: phy: fix memory leak in device-create error path (Petr Oros) [1878147] - [netdrv] net: mdio device: use flexible sleeping in reset function (Petr Oros) [1878147] - [netdrv] net: mdiobus: add reset-post-delay-us handling (Petr Oros) [1878147] - [netdrv] net: mdiobus: use flexible sleeping for reset-delay-us (Petr Oros) [1878147] - [netdrv] net: phylink: add interface to configure clause 22 PCS PHY (Petr Oros) [1878147] - [netdrv] net: phylink: add struct phylink_pcs (Petr Oros) [1878147] - [netdrv] net: phylink: re-implement interface configuration with PCS (Petr Oros) [1878147] - [netdrv] net: phylink: in-band pause mode advertisement update for PCS (Petr Oros) [1878147] - [netdrv] net: phylink: simplify fixed-link case for ksettings_set method (Petr Oros) [1878147] - [netdrv] net: phylink: use config.an_enabled in ksettings_set method (Petr Oros) [1878147] - [netdrv] net: phylink: simplify phy case for ksettings_set method (Petr Oros) [1878147] - [netdrv] net: phylink: simplify ksettings_set() implementation (Petr Oros) [1878147] - [netdrv] net: phylink: avoid mac_config calls (Petr Oros) [1878147] - [netdrv] net: phylink: update PCS when changing interface during resolution (Petr Oros) [1878147] - [netdrv] net: phylink: ensure link is down when changing interface (Petr Oros) [1878147] - [netdrv] net: phylink: rearrange resolve mac_config() call (Petr Oros) [1878147] - [netdrv] net: phylink: rejig link state tracking (Petr Oros) [1878147] - [netdrv] net: phylink: update ethtool reporting for fixed-link modes (Petr Oros) [1878147] - [netdrv] net: phy: fix check in get_phy_c45_ids (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add mdix configuration support for AR9331 and AR8035 (Petr Oros) [1878147] - [netdrv] net: dp83640: fix SIOCSHWTSTAMP to update the struct with actual configuration (Petr Oros) [1878147] - [netdrv] net: phy: continue searching for C45 MMDs even if first returned ffff:ffff (Petr Oros) [1878147] - [netdrv] net: phy: dp83640: Fixup cast to restricted __be16 warning (Petr Oros) [1878147] - [netdrv] net: phy: Make phy_10gbit_fec_features_array static (Petr Oros) [1878147] - [netdrv] net: phy: Properly define genphy_c45_driver (Petr Oros) [1878147] - [netdrv] net: phy: Fixup parameters in kerneldoc (Petr Oros) [1878147] - [netdrv] net: phy: at803x: Avoid comparison is always false warning (Petr Oros) [1878147] - [netdrv] net: phy: mdio: reset MDIO devices even if probe() is not implemented (Petr Oros) [1878147] - [netdrv] net: phy: reset the PHY even if probe() is not implemented (Petr Oros) [1878147] - [include] net: mdio: add a forward declaration for reset_control to mdio.h (Petr Oros) [1878147] - [netdrv] net: phy: arrange headers in phy_device.c alphabetically (Petr Oros) [1878147] - [netdrv] net: phy: arrange headers in mdio_device.c alphabetically (Petr Oros) [1878147] - [netdrv] net: phy: arrange headers in mdio_bus.c alphabetically (Petr Oros) [1878147] - [netdrv] net: phylink: only restart AN if the link mode is using in-band AN (Petr Oros) [1878147] - [netdrv] net: phylink: add phylink_speed_(up|down) interface (Petr Oros) [1878147] - [netdrv] net: phy: call phy_disable_interrupts() in phy_init_hw() (Petr Oros) [1878147] - [netdrv] net: phy: make phy_disable_interrupts() non-static (Petr Oros) [1878147] - [netdrv] net: phylink: ensure manual pause mode configuration takes effect (Petr Oros) [1878147] - [netdrv] net: phylink: fix ethtool -A with attached PHYs (Petr Oros) [1878147] - [include] net: phy: add support for a common probe between shared PHYs (Petr Oros) [1878147] - [netdrv] net: phy: Allow mdio buses to auto-probe c45 devices (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add Marvell 88E1548P support (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add Marvell 88E1340S support (Petr Oros) [1878147] - [netdrv] net: phy: marvell: use a single style for referencing functions (Petr Oros) [1878147] - [netdrv] net: phy: smsc: fix printing too many logs (Petr Oros) [1878147] - [netdrv] net: phy: Check harder for errors in get_phy_id() (Petr Oros) [1878147] - [of] of: of_mdio: Correct loop scanning logic (Petr Oros) [1878147] - [of] of: mdio: preserve phy dev_flags in of_phy_connect() (Petr Oros) [1878147] - [netdrv] net: phy: read MMD ID from all present MMDs (Petr Oros) [1878147] - [netdrv] net: phy: split devices_in_package (Petr Oros) [1878147] - [netdrv] net: phy: set devices_in_package only after validation (Petr Oros) [1878147] - [netdrv] net: phy: add support for probing MMDs >= 8 for devices-in-package (Petr Oros) [1878147] - [netdrv] net: phy: reword get_phy_device() kerneldoc (Petr Oros) [1878147] - [netdrv] net: phy: clean up get_phy_c22_id() invalid ID handling (Petr Oros) [1878147] - [netdrv] net: phy: clean up get_phy_c45_ids() failure handling (Petr Oros) [1878147] - [netdrv] net: phy: clean up PHY ID reading (Petr Oros) [1878147] - [netdrv] net: phy: clean up cortina workaround (Petr Oros) [1878147] - [netdrv] net: dp83869: Reset return variable if PHY strap is read (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: don't export RDB/legacy access methods (Petr Oros) [1878147] - [netdrv] net: phy: marvell: unlock after phy_select_page() failure (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add cable diagnostics support for ATH9331 and ATH8032 (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Configure TDR pulse based on measurement length (Petr Oros) [1878147] - [netdrv] net : phy: marvell: Speedup TDR data retrieval by only changing page once (Petr Oros) [1878147] - [netdrv] net: ethtool: Allow PHY cable test TDR data to configured (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add support for amplitude graph (Petr Oros) [1878147] - [net] net: ethtool: Add helpers for cable test TDR data (Petr Oros) [1878147] - [net] net: ethtool: Add generic parts of cable test TDR (Petr Oros) [1878147] - [uapi] net: ethtool: Add attributes for cable test TDR data (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: read poll when high resolution timers are disabled (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: improve waiting logic (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: remove redundant timeout check (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: use more reasonable delays (Petr Oros) [1878147] - [netdrv] net: mdiobus: add clause 45 mdiobus accessors (Petr Oros) [1878147] - [netdrv] net: phy: at803x: fix PHY ID masks (Petr Oros) [1878147] - [netdrv] net: phy: dp83869: Set opmode from straps (Petr Oros) [1878147] - [netdrv] net: phy: dp83869: Update port-mirroring to read straps (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add SQI support (Petr Oros) [1878147] - [netdrv] net: phy: simplify phy_link_change arguments (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: fix checkpatch complains about tabs (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add support for BCM54811 PHY (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: execute cable test on link up (Petr Oros) [1878147] - [netdrv] net: phy: mdio-moxart: remove unneeded include (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add cable diagnostics support (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: add cable diagnostics support (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add cable test support (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add bcm_phy_modify_exp() (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add exp register access methods without buslock (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add cable-test support (Petr Oros) [1878147] - [netdrv] net: phy: fix aneg restart in phy_ethtool_set_eee (Petr Oros) [1878147] - [net] net: phy: Send notifier when starting the cable test (Petr Oros) [1878147] - [netdrv] net: phy: Put interface into oper testing during cable test (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add cable test support (Petr Oros) [1878147] - [include] net: ethtool: Add helpers for reporting test results (Petr Oros) [1878147] - [include] net: ethtool: Add infrastructure for reporting cable test results (Petr Oros) [1878147] - [uapi] net: ethtool: Add attributes for cable test reports (Petr Oros) [1878147] - [net] net: ethtool: netlink: Add support for triggering a cable test (Petr Oros) [1878147] - [netdrv] net: phy: Add support for polling cable test (Petr Oros) [1878147] - [netdrv] net: phy: Add cable test support to state machine (Petr Oros) [1878147] - [net] net: ethtool: self_test: Mark interface in testing operative status (Petr Oros) [1878147] - [net] net: Add testing sysfs attribute (Petr Oros) [1878147] - [net] net: Add IF_OPER_TESTING (Petr Oros) [1878147] - [netdrv] net: phy: fix less than zero comparison with unsigned variable val (Petr Oros) [1878147] - [netdrv] net: phy: Make iproc_mdio_resume static (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: use phy_package_shared (Petr Oros) [1878147] - [netdrv] net: phy: add concept of shared storage for PHYs (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add support for master-slave configuration (Petr Oros) [1878147] - [uapi] ethtool: provide UAPI for PHY master/slave configuration (Petr Oros) [1878147] - [netdrv] dp83640: reverse arguments to list_add_tail (Petr Oros) [1878147] - [documentation] dt-bindings: add Qualcomm IPQ4019 MDIO bindings (Petr Oros) [1878147] - [netdrv] net: phy: mdio: add IPQ4019 MDIO driver (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: add second PHY ID (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: apply the workaround on b0 chips (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: fix phy_id_mask (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: use genphy_soft_reset() (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add downshift support (Petr Oros) [1878147] - [netdrv] net: phy: DP83TC811: Fix WoL in config init to be disabled (Petr Oros) [1878147] - [netdrv] net: phy: DP83822: Fix WoL in config init to be disabled (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: Make a bunch of functions static (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: fix temperature sensor on 2110 (Petr Oros) [1878147] - [gpio] gpiolib: Rename "chip" variables to "gc" in core header file (Petr Oros) [1878147] - [netdrv] net: phy: dp83867: Remove unneeded semicolon (Petr Oros) [1878147] - [netdrv] net: phy: clear phydev->suspended after soft reset (Petr Oros) [1878147] - [netdrv] net: phy: remove genphy_no_soft_reset (Petr Oros) [1878147] - [netdrv] net: phy: make phy_suspend a no-op if PHY is suspended already (Petr Oros) [1878147] - [netdrv] net: phylink, dsa: eliminate phylink_fixed_state_cb() (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: fix less than zero comparison on an unsigned (Petr Oros) [1878147] - [netdrv] net: phy: bcm84881: clear settings on link down (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add delayed registration of TJA1102 PHY1 (Petr Oros) [1878147] - [of] net: mdio: of: export part of of_mdiobus_register_phy() (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add initial TJA1102 support (Petr Oros) [1878147] - [documentation] dt-bindings: net: phy: Add support for NXP TJA11xx (Petr Oros) [1878147] - [netdrv] net: phy: Use IS_ERR() to check and simplify code (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: limit soft reset to 88x3310 (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: add hwmon support (Petr Oros) [1878147] - [netdrv] net: phy: add Broadcom BCM54140 support (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add helper to write/read RDB registers (Petr Oros) [1878147] - [netdrv] net: phy: microchip_t1: add lan87xx_phy_init to initialize the lan87xx phy (Petr Oros) [1878147] - [netdrv] net: phy: Propagate error from bus->reset (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Add support for BCM53125 internal PHYs (Petr Oros) [1878147] - [netdrv] net: phy: mdio-bcm-iproc: Do not show kernel pointer (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add support for AR8032 PHY (Petr Oros) [1878147] - [netdrv] net: marvell10g: soft-reset the PHY when coming out of low power (Petr Oros) [1878147] - [netdrv] net: marvell10g: report firmware version (Petr Oros) [1878147] - [netdrv] net: phy: micrel: use genphy_read_status for KSZ9131 (Petr Oros) [1878147] - [netdrv] net: phy: micrel: kszphy_resume(): add delay after genphy_resume() before accessing PHY registers (Petr Oros) [1878147] - [netdrv] net: phylink: add separate pcs operations structure (Petr Oros) [1878147] - [netdrv] net: phylink: rename 'ops' to 'mac_ops' (Petr Oros) [1878147] - [netdrv] net: phylink: change phylink_mii_c22_pcs_set_advertisement() prototype (Petr Oros) [1878147] - [ptp] ptp: Avoid deadlocks in the programmable pin code (Petr Oros) [1878147] - [netdrv] net: phy: probe PHY drivers synchronously (Petr Oros) [1878147] - [netdrv] net: phy: don't touch suspended flag if there's no suspend/resume callback (Petr Oros) [1878147] - [netdrv] net: phy: micrel.c: add rgmii interface delay possibility to ksz9131 (Petr Oros) [1878147] - [netdrv] net: phy: mdio-mux-bcm-iproc: use readl_poll_timeout() to simplify code (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: use phy_read_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: smsc: use phy_read_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: use phy_read_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: use phy_read_mmd_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: aquantia: use phy_read_mmd_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: bcm84881: use phy_read_mmd_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: add marvell usb to mdio controller (Petr Oros) [1878147] - [documentation] dt-bindings: net: add marvell usb to mdio bindings (Petr Oros) [1878147] - [netdrv] net: phy: aquantia: remove downshift warning now that phylib takes care (Petr Oros) [1878147] - [netdrv] net: phy: marvell: remove downshift warning now that phylib takes care (Petr Oros) [1878147] - [netdrv] net: phy: add and use phy_check_downshift (Petr Oros) [1878147] - [netdrv] net: phylink: pcs: add 802.3 clause 45 helpers (Petr Oros) [1878147] - [netdrv] net: phylink: pcs: add 802.3 clause 22 helpers (Petr Oros) [1878147] - [netdrv] net: mdiobus: add APIs for modifying a MDIO device register (Petr Oros) [1878147] - [netdrv] net: mdiobus: avoid BUG_ON() in mdiobus accessors (Petr Oros) [1878147] - [netdrv] net: phy: improve phy_driver callback handle_interrupt (Petr Oros) [1878147] - [netdrv] net: phylink: Add XLGMII support (Petr Oros) [1878147] - [include] net: phy: Add XLGMII interface define (Petr Oros) [1878147] - [netdrv] net: phylink: Test if MAC/PCS support Autoneg (Petr Oros) [1878147] - [netdrv] net: phylink: Add missing Backplane speeds (Petr Oros) [1878147] - [netdrv] net: mdio: add ipq8064 mdio driver (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: place in powersave mode at probe (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: add energy detect power down tunable (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: add mdix control (Petr Oros) [1878147] - [netdrv] net: phy: mscc: add constants for used interrupt mask bits (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: read copper results from CSSR1 (Petr Oros) [1878147] - [netdrv] net: phy: mscc: add missing shift for media operation mode selection (Petr Oros) [1878147] - [netdrv] net: phylink: propagate resolved link config via mac_link_up() (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Wire suspend/resume for BCM54810 (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Have bcm54xx_adjust_rxrefclk() check for flags (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Allow BCM54810 to use bcm54xx_adjust_rxrefclk() (Petr Oros) [1878147] - [netdrv] net: phy: dp83867: Add speed optimization feature (Petr Oros) [1878147] - [netdrv] net: phy: allow bcm84881 to be a module (Petr Oros) [1878147] - [include] net: phylink: clarify flow control settings in documentation (Petr Oros) [1878147] - [netdrv] net: phylink: improve initial mac configuration (Petr Oros) [1878147] - [netdrv] net: phylink: allow ethtool -A to change flow control advertisement (Petr Oros) [1878147] - [netdrv] net: phylink: resolve fixed link flow control (Petr Oros) [1878147] - [netdrv] net: phylink: use phylib resolved flow control modes (Petr Oros) [1878147] - [netdrv] net: phylink: ensure manual flow control is selected appropriately (Petr Oros) [1878147] - [netdrv] net: phylink: remove pause mode ethtool setting for fixed links (Petr Oros) [1878147] - [netdrv] net: add linkmode helper for setting flow control advertisement (Petr Oros) [1878147] - [netdrv] net: add helpers to resolve negotiated flow control (Petr Oros) [1878147] - [include] net: linkmode: make linkmode_test_bit() take const pointer (Petr Oros) [1878147] - [include] net: phylink: further documentation clarifications (Petr Oros) [1878147] - [include] net: phylink: further mac_config documentation improvements (Petr Oros) [1878147] - [netdrv] net: phylink: rename mac_link_state() op to mac_pcs_get_state() (Petr Oros) [1878147] - [md] md/raid5: fix oops during stripe resizing (Nigel Croxon) [1898617] - [md] md/bitmap: fix memory leak of temporary bitmap (Nigel Croxon) [1898617] - [md] md: fix the checking of wrong work queue (Nigel Croxon) [1898617] - [md] md/bitmap: md_bitmap_get_counter returns wrong blocks (Nigel Croxon) [1898617] - [md] md/bitmap: md_bitmap_read_sb uses wrong bitmap blocks (Nigel Croxon) [1898617] - [md] md/raid0: remove unused function is_io_in_chunk_boundary() (Nigel Croxon) [1898617] - [md] md: don't detour through bd_contains for the gendisk (Nigel Croxon) [1898617] - [md] md: compare bd_disk instead of bd_contains (Nigel Croxon) [1898617] - [md] md: Simplify code with existing definition RESYNC_SECTORS in raid10.c (Nigel Croxon) [1898617] - [md] md/raid5: reallocate page array after setting new stripe_size (Nigel Croxon) [1898617] - [md] md/raid5: resize stripe_head when reshape array (Nigel Croxon) [1898617] - [md] md/raid5: let multiple devices of stripe_head share page (Nigel Croxon) [1898617] - [crypto] md/raid6: let async recovery function support different page offset (Nigel Croxon) [1898617] - [crypto] md/raid6: let syndrome computor support different page offset (Nigel Croxon) [1898617] - [md] md/raid5: convert to new xor compution interface (Nigel Croxon) [1898617] - [crypto] md/raid5: add new xor function to support different page offset (Nigel Croxon) [1898617] - [md] md/raid5: make async_copy_data() to support different page offset (Nigel Croxon) [1898617] - [md] md/raid5: add a new member of offset into r5dev (Nigel Croxon) [1898617] - [md] md: only calculate blocksize once and use i_blocksize() (Nigel Croxon) [1898617] - [md] md: update the optimal I/O size on reshape (Nigel Croxon) [1898617] - [md] md/raid5: make sure stripe_size as power of two (Nigel Croxon) [1898617] - [md] md-cluster: Fix potential error pointer dereference in resize_bitmaps() (Nigel Croxon) [1898617] - [md] md: get sysfs entry after redundancy attr group create (Nigel Croxon) [1898617] - [kernel] lockdep: Fix preemption WARN for spurious IRQ-enable (Waiman Long) [1908640] - [powerpc] powerpc/smp: Call rcu_cpu_starting() earlier (Waiman Long) [1908640] - [include] seqlock: Fix multiple kernel-doc warnings (Waiman Long) [1908640] - [kernel] lockdep: Fix usage_traceoverflow (Waiman Long) [1908640] - [kernel] locking/lockdep: Remove more raw_cpu_read() usage (Waiman Long) [1908640] - [include] lockdep: Revert "lockdep: Use raw_cpu_*() for per-cpu variables" (Waiman Long) [1908640] - [kernel] lockdep: Fix lockdep recursion (Waiman Long) [1908640] - [kernel] lockdep,trace: Expose tracepoints (Waiman Long) [1908640] - [x86] locking/lockdep: Fix TRACE_IRQFLAGS vs. NMIs (Waiman Long) [1908640] - [s390] s390: don't trace preemption in percpu macros (Waiman Long) [1908640] - [fs] blkdev: avoid migration stalls for blkdev pages (Chris von Recklinghausen) [1876502] - [netdrv] ionic: account for vlan tag len in rx buffer len (Jonathan Toppins) [1908642] - [netdrv] net/mlx5e: Fix refcount leak on kTLS RX resync (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Avoid kzalloc(GFP_KERNEL) under spinlock (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Fix leak on resync error flow (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Add missing dma_unmap in RX resync (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Fix napi sync and possible use-after-free (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Improve rx handler function call (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Cleanup redundant capability check (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: Increase Async ICO SQ size (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Add kTLS RX stats (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Add kTLS RX resync support (Alaa Hleihel) [1866808] - [infiniband] RDMA/siw: Fix handling of zero-sized Read and Receive Queues (Kamal Heib) [1900985 1875703] - [fs] ext4: fix bogus warning in ext4_update_dx_flag() (Lukas Czerner) [1908714] - [fs] ext4: handle dax mount option collision (Lukas Czerner) [1908714] - [fs] jbd2: fix up sparse warnings in checkpoint code (Lukas Czerner) [1908714] - [fs] ext4: unlock xattr_sem properly in ext4_inline_data_truncate() (Lukas Czerner) [1908714] - [fs] ext4: do not use extent after put_bh (Lukas Czerner) [1908714] - [fs] ext4: fix invalid inode checksum (Lukas Czerner) [1908714] - [fs] ext4: clear buffer verified flag if read meta block from disk (Lukas Czerner) [1908714] - [fs] ext4: treat buffers contining write errors as valid in ext4_sb_bread() (Lukas Czerner) [1908714] - [fs] ext4: treat buffers with write errors as containing valid data (Lukas Czerner) [1908714] - [fs] ext4: limit entries returned when counting fsmap records (Lukas Czerner) [1908714] - [fs] ext4: fix error handling code in add_new_gdb (Lukas Czerner) [1908714] - [fs] ext4: fix leaking sysfs kobject after failed mount (Lukas Czerner) [1908714] - [fs] ext4: fix checking of directory entry validity for inline directories (Lukas Czerner) [1908714] - [fs] ext4: correctly restore system zone info when remount fails (Lukas Czerner) [1908714] - [fs] ext4: handle add_system_zone() failure in ext4_setup_system_zone() (Lukas Czerner) [1908714] - [fs] ext4: fold ext4_data_block_valid_rcu() into the caller (Lukas Czerner) [1908714] - [fs] ext4: check journal inode extents more carefully (Lukas Czerner) [1908714] - [fs] ext4: don't allow overlapping system zones (Lukas Czerner) [1908714] - [fs] ext4: handle error of ext4_setup_system_zone() on remount (Lukas Czerner) [1908714] - [fs] jbd2: add the missing unlock_buffer() in the error path of jbd2_write_superblock() (Lukas Czerner) [1908714] - [fs] ext4: fix mount failure with quota configured as module (Lukas Czerner) [1908714] - [fs] ext4: improve explanation of a mount failure caused by a misconfigured kernel (Lukas Czerner) [1908714] - [include] jbd2: fix kernel-doc notation warning (Lukas Czerner) [1908714] - [base] mm: don't panic when links can't be created in sysfs (Baoquan He) [1890171] - [base] mm: don't rely on system state to detect hot-plug operations (Baoquan He) [1890171] - [mm] mm: replace memmap_context by meminit_context (Baoquan He) [1890171] - [net] Update window_clamp if SOCK_RCVBUF is set (Balazs Nemeth) [1905985] - [cpufreq] cpufreq: acpi-cpufreq: Mark sometimes used ID structs as __maybe_unused (David Arcari) [1857102] - [cpufreq] cpufreq: acpi-cpufreq: Mark 'dummy' variable as __always_unused (David Arcari) [1857102] - [cpufreq] cpufreq: Replace HTTP links with HTTPS ones (David Arcari) [1857102] - [cpufreq] cpufreq: change '.set_boost' to act on one policy (David Arcari) [1857102] - [cpufreq] cpufreq: Fix up cpufreq_boost_set_sw() (David Arcari) [1857102] - [cpufreq] cpufreq: Convert to new X86 CPU match macros (David Arcari) [1857102] - [cpufreq] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (David Arcari) [1857102]- [platform] platform/x86: ISST: Add new PCI device ids (Prarit Bhargava) [1836722] - [net] net-sysfs: take the rtnl lock when accessing xps_rxqs_map and num_tc (Antoine Tenart) [1912253] - [net] net-sysfs: take the rtnl lock when storing xps_rxqs (Antoine Tenart) [1912253] - [net] net-sysfs: take the rtnl lock when accessing xps_cpus_map and num_tc (Antoine Tenart) [1912253] - [net] net-sysfs: take the rtnl lock when storing xps_cpus (Antoine Tenart) [1912253] - [fs] gfs2: Improve mmap write vs. punch_hole consistency (Andreas Grunbacher) [1872043] - [netdrv] bnx2x: fix spelling mistake "occurd" -> "occurred" (Manish Chopra) [1853224] - [netdrv] bnx2x: Perform Idlechk dump during the debug collection (Manish Chopra) [1853224] - [netdrv] bnx2x: Add support for idlechk tests (Manish Chopra) [1853224] - [netdrv] bnx2x: Add Idlechk related register definitions (Manish Chopra) [1853224] - [netdrv] bnx2x: use generic power management (Manish Chopra) [1853224] - [netdrv] bnx2x: allow bnx2x_bsc_read() to schedule (Manish Chopra) [1853224] - [netdrv] bnx2x: Remove unused inline function bnx2x_vf_vlan_credit (Manish Chopra) [1853224] - [netdrv] bnx2x: Remove Comparison to bool in bnx2x_dcb.c (Manish Chopra) [1853224] - [netdrv] bnx2x: correct a comment mistake in grammar (Manish Chopra) [1853224] - [netdrv] net: bnx2x: reject unsupported coalescing params (Manish Chopra) [1853224] - [net] tls: Implement getsockopt SOL_TLS TLS_RX (Sabrina Dubroca) [1889664] - [net] tls: Protect from calling tls_dev_del for TLS RX twice (Sabrina Dubroca) [1889664] - [net] tls: missing received data after fast remote close (Sabrina Dubroca) [1889664] - [net] tls: Fix wrong record sn in async mode of device resync (Sabrina Dubroca) [1889664] - [net] tls: fix corrupted data in recvmsg (Sabrina Dubroca) [1889664] - [net] tls: sendfile fails with ktls offload (Sabrina Dubroca) [1889664] - [net] tls: race causes kernel panic (Sabrina Dubroca) [1889664] - [net] tls: Fix kmap usage (Sabrina Dubroca) [1889664] - [net] tls: allow MSG_CMSG_COMPAT in sendmsg (Sabrina Dubroca) [1889664] - [net] tls: fix sign extension issue when left shifting u16 value (Sabrina Dubroca) [1889664] - [net] tls: Add asynchronous resync (Sabrina Dubroca) [1889664] - [net] revert "net/tls: Add force_resync for driver resync" (Sabrina Dubroca) [1889664] - [net] net/tls: Add force_resync for driver resync (Sabrina Dubroca) [1889664] - [net] tls: Avoid assigning 'const' pointer to non-const pointer (Sabrina Dubroca) [1889664] - [net] tls: move mark_tech_preview to tls_init (Sabrina Dubroca) [1907477] - [mm] mm/hmm: do not call hmm_vma_walk_hole() while holding a spinlock (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: add 'depth' parameter to pte_hole (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: don't lock PTEs for walk_page_range_novma() (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: allow walking without vma (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: add p4d_entry() and pgd_entry() (Chris von Recklinghausen) [1890943] - [x86] x86: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [s390] s390: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [powerpc] powerpc: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [arm64] arm64: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [mm] mm: add generic p?d_leaf() macros (Chris von Recklinghausen) [1890943] - [mm] mm: move_pages: report the number of non-attempted pages (Chris von Recklinghausen) [1890943] - [mm] autonuma: fix watermark checking in migrate_balanced_pgdat() (Chris von Recklinghausen) [1890943] - [mm] mm/migrate.c: handle freed page at the first place (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: Take the pagetable lock in walk_pte_range() (Chris von Recklinghausen) [1890943] - [mm] mm: untag user pointers passed to memory syscalls (Chris von Recklinghausen) [1890943] - [mm] mm: page cache: store only head pages in i_pages (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: fix reference check race between __find_get_block() and migration (Chris von Recklinghausen) [1890943] - [fs] mm: migrate: remove unused mode argument (Chris von Recklinghausen) [1890943] - [mm] powerpc/book3s: Use config independent helpers for page table walk (Chris von Recklinghausen) [1890943] - [mm] mm/mmu_notifier: use correct mmu_notifier events for each invalidation (Chris von Recklinghausen) [1890943] - [mm] mm/mmu_notifier: contextual information for event triggering invalidation (Chris von Recklinghausen) [1890943] - [mm] powerpc/mm: move __find_linux_pte() out of hugetlbpage.c (Chris von Recklinghausen) [1890943] - [mm] mm/filemap.c: remove redundant test from find_get_pages_contig (Chris von Recklinghausen) [1890943] - [mm] mm/hugetlb: distinguish between migratability and movability (Chris von Recklinghausen) [1890943] - [mm] numa: change get_mempolicy() to use nr_node_ids instead of MAX_NUMNODES (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: make buffer_migrate_page_norefs() actually succeed (Chris von Recklinghausen) [1890943] - [mm] mm: treewide: remove unused address argument from pte_alloc functions (Chris von Recklinghausen) [1890943] - [fs] mm: migrate: drop unused argument of migrate_page_move_mapping() (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: provide buffer_migrate_page_norefs() (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: move migrate_page_lock_buffers() (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: lock buffers before migrate_page_move_mapping() (Chris von Recklinghausen) [1890943] - [mm] mm: Convert huge_memory to XArray (Chris von Recklinghausen) [1890943] - [mm] mm: Convert page migration to XArray (Chris von Recklinghausen) [1890943] - [mm] powerpc/mm/book3s: Check for pmd_large instead of pmd_trans_huge (Chris von Recklinghausen) [1890943] - [x86] x86/pgtable: Move two more functions from pgtable_64.h to pgtable.h (Chris von Recklinghausen) [1890943] - [x86] x86/pgtable: Move pti_set_user_pgtbl() to pgtable.h (Chris von Recklinghausen) [1890943] - [x86] x86/pgtable: Move pgdp kernel/user conversion functions to pgtable.h (Chris von Recklinghausen) [1890943] - [mm] x86/pgtable: Rename pti_set_user_pgd() to pti_set_user_pgtbl() (Chris von Recklinghausen) [1890943] - [mm] mm: memcg/slab: fix root memcg vmstats (Waiman Long) [1877019] - [mm] mm/slub: let number of online CPUs determine the slub page order (Waiman Long) [1877019] - [mm] mm, debug_pagealloc: don't rely on static keys too early (Waiman Long) [1877019] - [mm] mm: memcg: link page counters to root if use_hierarchy is false (Waiman Long) [1877019] - [mm] mm/memcg: unify swap and memsw page counters (Waiman Long) [1877019] - [mm] mm: memcontrol: correct the NR_ANON_THPS counter of hierarchical memcg (Waiman Long) [1877019] - [mm] mlock: fix unevictable_pgs event counts on THP (Waiman Long) [1877019] - [mm] mm/filemap: fix storing to a THP shadow entry (Waiman Long) [1877019] - [lib] XArray: add xas_split (Waiman Long) [1877019] - [lib] XArray: add xa_get_order (Waiman Long) [1877019] - [lib] XArray: Add private interface for workingset node deletion (Waiman Long) [1877019] - [include] XArray: Fix xas_reload for multi-index entries (Waiman Long) [1877019] - [include] xarray.h: correct return code documentation for xa_store_{bh, irq}() (Waiman Long) [1877019] - [mm] mm: memcg/slab: uncharge during kmem_cache_free_bulk() (Waiman Long) [1877019] - [mm] mm: memcg/slab: fix racy access to page->mem_cgroup in mem_cgroup_from_obj() (Waiman Long) [1877019] - [mm] mm: memcontrol: fix missing suffix of workingset_restore (Waiman Long) [1877019] - [mm] mm: memcontrol: fix warning when allocating the root cgroup (Waiman Long) [1877019] - [mm] mm: replace hpage_nr_pages with thp_nr_pages (Waiman Long) [1877019] - [mm] mm: add thp_size (Waiman Long) [1877019] - [include] mm: add thp_order (Waiman Long) [1877019] - [include] include/linux/huge_mm.h: check PageTail in hpage_nr_pages even when !THP (Waiman Long) [1877019] - [mm] mm/page_vma_mapped.c: explicitly compare pfn for normal, hugetlbfs and THP page (Waiman Long) [1877019] - [mm] mm/vmscan: restore active/inactive ratio for anonymous LRU (Waiman Long) [1877019] - [mm] mm/swap: implement workingset detection for anonymous LRU (Waiman Long) [1877019] - [mm] mm/swapcache: support to handle the shadow entries (Waiman Long) [1877019] - [mm] mm: fix swap cache node allocation mask (Waiman Long) [1877019] - [include] include/linux/swap.h: delete meaningless __add_to_swap_cache() declaration (Waiman Long) [1877019] - [mm] mm/swap_state.c: use the same way to count page in_swap_cache (Waiman Long) [1877019] - [mm] mm: shmem: use proper gfp flags for shmem_writepage() (Waiman Long) [1877019] - [mm] mm/workingset: prepare the workingset detection infrastructure for anon LRU (Waiman Long) [1877019] - [mm] mm/vmscan: protect the workingset on anonymous LRU (Waiman Long) [1877019] - [mm] mm/vmscan: make active/inactive ratio as 1:1 for anon lru (Waiman Long) [1877019] - [tools] kselftests: cgroup: add perpcu memory accounting test (Waiman Long) [1877019] - [mm] mm: memcg: charge memcg percpu memory to the parent cgroup (Waiman Long) [1877019] - [mm] mm: memcg/percpu: per-memcg percpu memory statistics (Waiman Long) [1877019] - [mm] mm: memcg/percpu: account percpu memory to memory cgroups (Waiman Long) [1877019] - [mm] percpu: return number of released bytes from pcpu_free_area() (Waiman Long) [1877019] - [mm] percpu: make pcpu_alloc() aware of current gfp context (Waiman Long) [1877019] - [mm] mm/khugepaged: fix filemap page_to_pgoff(page) != offset (Waiman Long) [1877019] - [mm] mm, slub: restore initial kmem_cache flags (Waiman Long) [1877019] - [include] mm: memcg/slab: fix slab statistics in !SMP configuration (Waiman Long) [1877019] - [mm] mm: slab: fix potential double free in ___cache_free (Waiman Long) [1877019] - [mm] ksm: reinstate memcg charge on copied pages (Waiman Long) [1877019] - [mm] mm: slub: fix conversion of freelist_corrupted() (Waiman Long) [1877019] - [mm] memcg: fix use-after-free in uncharge_batch (Waiman Long) [1877019] - [mm] mm/memory: fix IO cost for anonymous page (Waiman Long) [1877019] - [mm] mm: workingset: age nonresident information alongside anonymous pages (Waiman Long) [1877019] - [mm] slub: cure list_slab_objects() from double fix (Waiman Long) [1877019] - [mm] mm: do_swap_page(): fix up the error code (Waiman Long) [1877019] - [misc] lkdtm/heap: Avoid edge and middle of slabs (Waiman Long) [1877019] - [mm] mm: slub: really fix slab walking for init_on_free (Waiman Long) [1877019] - [mm] mm/slab.c: fix kernel-doc warning for __ksize() (Waiman Long) [1877019] - [mm] mm: memcontrol: restore proper dirty throttling when memory.high changes (Waiman Long) [1877019] - [mm] memcg, oom: check memcg margin for parallel oom (Waiman Long) [1877019] - [mm] mm, memcg: avoid stale protection values when cgroup is above protection (Waiman Long) [1877019] - [mm] mm, memcg: unify reclaim retry limits with page allocator (Waiman Long) [1877019] - [mm] mm, memcg: reclaim more aggressively before high allocator throttling (Waiman Long) [1877019] - [mm] mm: memcontrol: avoid workload stalls when lowering memory.high (Waiman Long) [1877019] - [include] mm: kmem: switch to static_branch_likely() in memcg_kmem_enabled() (Waiman Long) [1877019] - [mm] mm: slab: rename (un)charge_slab_page() to (un)account_slab_page() (Waiman Long) [1877019] - [mm] mm: memcg/slab: remove unused argument by charge_slab_page() (Waiman Long) [1877019] - [tools] tools/cgroup: add memcg_slabinfo.py tool (Waiman Long) [1877019] - [tools] kselftests: cgroup: add kernel memory accounting tests (Waiman Long) [1877019] - [mm] mm: memcg/slab: use a single set of kmem_caches for all allocations (Waiman Long) [1877019] - [mm] mm: memcg/slab: remove redundant check in memcg_accumulate_slabinfo() (Waiman Long) [1877019] - [mm] mm: memcg/slab: deprecate slab_root_caches (Waiman Long) [1877019] - [mm] mm: memcg/slab: remove memcg_kmem_get_cache() (Waiman Long) [1877019] - [mm] mm: memcg/slab: simplify memcg cache creation (Waiman Long) [1877019] - [mm] mm: memcg/slab: use a single set of kmem_caches for all accounted allocations (Waiman Long) [1877019] - [mm] mm, slab_common: fix a typo in comment "eariler"->"earlier" (Waiman Long) [1877019] - [mm] mm: memcg/slab: fix memory leak at non-root kmem_cache destroy (Waiman Long) [1877019] - [mm] mm: memcg/slab: fix panic in __free_slab() caused by premature memcg pointer release (Waiman Long) [1877019] - [mm] mm: memcg/slab: move memcg_kmem_bypass() to memcontrol.h (Waiman Long) [1877019] - [mm] mm: memcg/slab: deprecate memory.kmem.slabinfo (Waiman Long) [1877019] - [mm] mm, memcg: fix build error around the usage of kmem_caches (Waiman Long) [1877019] - [mm] mm: memcg/slab: charge individual slab objects instead of pages (Waiman Long) [1877019] - [mm] mm: memcg/slab: save obj_cgroup for non-root slab objects (Waiman Long) [1877019] - [mm] mm: memcg/slab: allocate obj_cgroups for non-root slab pages (Waiman Long) [1877019] - [mm] mm: memcg/slab: obj_cgroup API (Waiman Long) [1877019] - [mm] mm: memcontrol: decouple reference counting from page accounting (Waiman Long) [1877019] - [mm] mm: slub: implement SLUB version of obj_to_index() (Waiman Long) [1877019] - [mm] mm: memcg: convert vmstat slab counters to bytes (Waiman Long) [1877019] - [mm] mm: memcg: prepare for byte-sized vmstat items (Waiman Long) [1877019] - [mm] mm: memcg: factor out memcg- and lruvec-level changes out of __mod_lruvec_state() (Waiman Long) [1877019] - [mm] mm: kmem: make memcg_kmem_enabled() irreversible (Waiman Long) [1877019] - [mm] mm, slab/slub: improve error reporting and overhead of cache_from_obj() (Waiman Long) [1877019] - [mm] mm, slab/slub: move and improve cache_from_obj() (Waiman Long) [1877019] - [mm] mm, slub: extend checks guarded by slub_debug static key (Waiman Long) [1877019] - [mm] mm, slub: introduce kmem_cache_debug_flags() (Waiman Long) [1877019] - [mm] mm, slub: introduce static key for slub_debug() (Waiman Long) [1877019] - [mm] mm, slub: make reclaim_account attribute read-only (Waiman Long) [1877019] - [mm] mm, slub: make remaining slub_debug related attributes read-only (Waiman Long) [1877019] - [mm] mm, slub: remove runtime allocation order changes (Waiman Long) [1877019] - [mm] mm, slub: make some slub_debug related attributes read-only (Waiman Long) [1877019] - [documentation] mm, slub: extend slub_debug syntax for multiple blocks (Waiman Long) [1877019] - [mm] mm/slab.c: update outdated kmem_list3 in a comment (Waiman Long) [1877019] - [mm] mm, slab: check GFP_SLAB_BUG_MASK before alloc_pages in kmalloc_order (Waiman Long) [1877019] - [mm] mm/slab: add naive detection of double free (Waiman Long) [1877019] - [init] mm/slab: expand CONFIG_SLAB_FREELIST_HARDENED to include SLAB (Waiman Long) [1877019] - [mm] mm: ksize() should silently accept a NULL pointer (Waiman Long) [1877019] - [include] include/linux/vmstat.h: remove unused page state adjustment macro (Waiman Long) [1877019] - [include] mm, memcg: fix inconsistent oom event behavior (Waiman Long) [1877019] - [mm] mm/memcg: fix refcount error while moving and swapping (Waiman Long) [1877019] - [mm] mm/memcontrol: fix OOPS inside mem_cgroup_get_nr_swap_pages() (Waiman Long) [1877019] - [mm] mm/memcontrol.c: add missed css_put() (Waiman Long) [1877019] - [mm] mm: memcontrol: handle div0 crash race condition in memory.low (Waiman Long) [1877019] - [kernel] mm: memcontrol: recursive memory.low protection (Waiman Long) [1877019] - [include] mm, memcg: consider subtrees in memory.events (Waiman Long) [1877019] - [net] mm, treewide: rename kzfree() to kfree_sensitive() (Waiman Long) [1877019] - [mm] mm/slab: use memzero_explicit() in kzfree() (Waiman Long) [1877019] - [mm] mm: swap: memcg: fix memcg stats for huge pages (Waiman Long) [1877019] - [mm] mm: swap: fix vmstats for huge pages (Waiman Long) [1877019] - [mm] mm: vmscan: limit the range of LRU type balancing (Waiman Long) [1877019] - [mm] mm: vmscan: reclaim writepage is IO cost (Waiman Long) [1877019] - [mm] mm: vmscan: determine anon/file pressure balance at the reclaim root (Waiman Long) [1877019] - [mm] mm: balance LRU lists based on relative thrashing (Waiman Long) [1877019] - [mm] mm: only count actual rotations as LRU reclaim cost (Waiman Long) [1877019] - [mm] mm: deactivations shouldn't bias the LRU balance (Waiman Long) [1877019] - [mm] mm: base LRU balancing on an explicit cost model (Waiman Long) [1877019] - [mm] mm: vmscan: drop unnecessary div0 avoidance rounding in get_scan_count() (Waiman Long) [1877019] - [mm] mm: remove use-once cache bias from LRU balancing (Waiman Long) [1877019] - [mm] mm: workingset: let cache workingset challenge anon (Waiman Long) [1877019] - [mm] mm: fold and remove lru_cache_add_anon() and lru_cache_add_file() (Waiman Long) [1877019] - [kernel] mm: allow swappiness that prefers reclaiming anon over the file workingset (Waiman Long) [1877019] - [mm] mm: keep separate anon and file statistics on page reclaim activity (Waiman Long) [1877019] - [mm] mm: fix LRU balancing effect of new transparent huge pages (Waiman Long) [1877019] - [mm] mm: replace list_move_tail() with add_page_to_lru_list_tail() (Waiman Long) [1877019] - [mm] mm: memcontrol: update page->mem_cgroup stability rules (Waiman Long) [1877019] - [mm] mm: memcontrol: delete unused lrucare handling (Waiman Long) [1877019] - [documentation] mm: memcontrol: document the new swap control behavior (Waiman Long) [1877019] - [mm] mm: memcontrol: charge swapin pages on instantiation (Waiman Long) [1877019] - [mm] mm: memcontrol: make swap tracking an integral part of memory control (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare swap controller setup for integration (Waiman Long) [1877019] - [mm] mm: memcontrol: drop unused try/commit/cancel charge API (Waiman Long) [1877019] - [mm] mm: memcontrol: convert anon and file-thp to new mem_cgroup_charge() API (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to native NR_ANON_THPS counter (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to native NR_ANON_MAPPED counter (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to native NR_FILE_PAGES and NR_SHMEM counters (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare cgroup vmstat infrastructure for native anon counters (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare move_account for removal of private page type counters (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare uncharging for removal of private page type counters (Waiman Long) [1877019] - [mm] mm: memcontrol: convert page cache to a new mem_cgroup_charge() API (Waiman Long) [1877019] - [mm] mm: memcontrol: move out cgroup swaprate throttling (Waiman Long) [1877019] - [mm] mm: shmem: remove rare optimization when swapin races with hole punching (Waiman Long) [1877019] - [mm] mm: memcontrol: drop @compound parameter from memcg charging API (Waiman Long) [1877019] - [mm] mm: memcontrol: fix stat-corrupting race in charge moving (Waiman Long) [1877019] - [mm] mm: fix NUMA node file count error in replace_page_cache() (Waiman Long) [1877019] - [mm] mm/slub: fix stack overruns with SLUB_STATS (Waiman Long) [1877019] - [mm] slub: remove kmalloc under list_lock from list_slab_objects() V2 (Waiman Long) [1877019] - [mm] slub: Remove userspace notifier for cache add/remove (Waiman Long) [1877019] - [mm] mm/slub.c: fix corrupted freechain in deactivate_slab() (Waiman Long) [1877019] - [mm] mm/slub: fix incorrect interpretation of s->offset (Waiman Long) [1877019] - [mm] slub: avoid redzone when choosing freepointer location (Waiman Long) [1877019] - [mm] slub: relocate freelist pointer to middle of object (Waiman Long) [1877019] - [mm] slub: improve bit diffusion for freelist ptr obfuscation (Waiman Long) [1877019] - [mm] mm, slb: improve memory accounting (Waiman Long) [1877019] - [mm] thp: change CoW semantics for anon-THP (Waiman Long) [1877019] - [mm] khugepaged: allow to collapse PTE-mapped compound pages (Waiman Long) [1877019] - [mm] khugepaged: allow to collapse a page shared across fork (Waiman Long) [1877019] - [mm] khugepaged: drain LRU add pagevec after swapin (Waiman Long) [1877019] - [mm] khugepaged: drain all LRU caches before scanning pages (Waiman Long) [1877019] - [mm] khugepaged: do not stop collapse if less than half PTEs are referenced (Waiman Long) [1877019] - [tools] khugepaged: add self test (Waiman Long) [1877019] - [mm] mm: code cleanup for MADV_FREE (Waiman Long) [1877019] - [mm] mm, thp: track fallbacks due to failed memcg charges separately (Waiman Long) [1877019] - [mm] mm, shmem: add vmstat for hugepage fallback (Waiman Long) [1877019] - [mm] autonuma: reduce cache footprint when scanning page tables (Waiman Long) [1877019] - [trace] mm/vmscan: simplify trace_reclaim_flags and trace_shrink_flags (Waiman Long) [1877019] - [mm] mm/memcg: optimize memory.numa_stat like memory.stat (Waiman Long) [1877019] - [mm] memcg: fix memcg_kmem_bypass() for remote memcg charging (Waiman Long) [1877019] - [mm] mm/memcg: automatically penalize tasks with high swap use (Waiman Long) [1877019] - [include] mm/memcg: move cgroup high memory limit setting into struct page_counter (Waiman Long) [1877019] - [mm] mm/memcg: move penalty delay clamping out of calculate_high_delay() (Waiman Long) [1877019] - [mm] mm/memcg: prepare for swap over-high accounting and penalty calculation (Waiman Long) [1877019] - [mm] memcg: expose root cgroup's memory.stat (Waiman Long) [1877019] - [mm] mm, memcg: add workingset_restore in memory.stat (Waiman Long) [1877019] - [documentation] doc: cgroup: improve formatting of mem stats (Waiman Long) [1877019] - [documentation] docs: cgroup: mm: Fix spelling of "list" (Waiman Long) [1877019] - [mm] mm, memcg: fix error return value of mem_cgroup_css_alloc() (Waiman Long) [1877019] - [include] memcontrol.h: Replace zero-length array with flexible-array member (Waiman Long) [1877019] - [mm] mm, memcg: bypass high reclaim iteration for cgroup hierarchy root (Waiman Long) [1877019] - [mm] mm: memcg: make memory.oom.group tolerable to task migration (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.swap.max load tearing (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.low load/store tearing (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.max load tearing (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.high load/store tearing (Waiman Long) [1877019] - [mm] mm/memcontrol.c: make mem_cgroup_id_get_many() __maybe_unused (Waiman Long) [1877019] - [mm] memcg: css_tryget_online cleanups (Waiman Long) [1877019] - [mm] mm/memcontrol.c: cleanup some useless code (Waiman Long) [1877019] - [mm] mm/memcontrol.c: fix a -Wunused-function warning (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to rcu protection in drain_all_stock() (Waiman Long) [1877019] - [mm] mm/khugepaged.c: fix khugepaged's request size in collapse_file (Waiman Long) [1877019] - [mm] khugepaged: fix null-pointer dereference due to race (Waiman Long) [1877019] - [mm] mm, thp: stop leaking unreleased file pages (Waiman Long) [1877019] - [trace] mm: khugepaged: add trace status description for SCAN_PAGE_HAS_PRIVATE (Waiman Long) [1877019] - [mm] mm, thp: recheck each page before collapsing file THP (Waiman Long) [1877019] - [mm] mm/thp: allow dropping THP from page cache (Waiman Long) [1877019] - [mm] mm/vmscan.c: support removing arbitrary sized pages from mapping (Waiman Long) [1877019] - [mm] mm/thp: fix node page state in split_huge_page_to_list() (Waiman Long) [1877019] - [fs] proc/meminfo: fix output alignment (Waiman Long) [1877019] - [mm] mm: shmem: disable interrupt when acquiring info->lock in userfaultfd_copy path (Waiman Long) [1877019] - [fs] mm, thp: avoid writes to file with THP in pagecache (Waiman Long) [1877019] - [mm] mm, thp: add read-only THP support for (non-shmem) FS (Waiman Long) [1877019] - [mm] khugepaged: rename collapse_shmem() and khugepaged_scan_shmem() (Waiman Long) [1877019] - [fs] mm,thp: stats for file backed THP (Waiman Long) [1877019] - [mm] filemap: update offset check in filemap_fault() (Waiman Long) [1877019] - [mm] filemap: check compound_head(page)->mapping in pagecache_get_page() (Waiman Long) [1877019] - [mm] filemap: check compound_head(page)->mapping in filemap_fault() (Waiman Long) [1877019] - [mm] mm: mempolicy: fix the wrong return value and potential pages leak of mbind (Waiman Long) [1877019] - [mm] mm: thp: fix false negative of shmem vma's THP eligibility (Waiman Long) [1877019] - [mm] mm: thp: make transhuge_vma_suitable available for anonymous THP (Waiman Long) [1877019] - [mm] mm, thp, proc: report THP eligibility for each vma (Waiman Long) [1877019] - [documentation] mm, proc: be more verbose about unstable VMA flags in /proc//smaps (Waiman Long) [1877019] - [mm] mm: thp: pass correct vm_flags to hugepage_vma_check() (Waiman Long) [1877019] - [fs] mm: /proc/pid/smaps_rollup: convert to single value seq_file (Waiman Long) [1877019] - [fs] mm: /proc/pid/smaps: factor out common stats printing (Waiman Long) [1877019] - [fs] mm: /proc/pid/smaps: factor out mem stats gathering (Waiman Long) [1877019] - [fs] mm: /proc/pid/*maps remove is_pid and related wrappers (Waiman Long) [1877019] - [mm] mm: workingset: fix vmstat counters for shadow nodes (Waiman Long) [1877019] - [mm] mm: workingset: add vmstat counter for shadow nodes (Waiman Long) [1877019] - [include] mm/memcg: Document access rule regarding mem_cgroup structure (Waiman Long) [1877019] - [mm] mm/page_alloc: silence a KASAN false positive (Waiman Long) [1877019] - [s390] s390/setup: init jump labels before command line parsing (Waiman Long) [1877019] - [mm] s390/maccess: add no DAT mode to kernel_write (Waiman Long) [1877019] - [mm] s390: Change s390_kernel_write() return type to match memcpy() (Waiman Long) [1877019] - [kernel] PM: hibernate: fix crashes with init_on_free=1 (Waiman Long) [1877019] - [mm] mm/slub.c: init_on_free=1 should wipe freelist ptr for bulk allocations (Waiman Long) [1877019] - [mm] mm/page_alloc.c: fix a crash in free_pages_prepare() (Waiman Long) [1877019] - [mm] mm: slub: Fix slab walking for init_on_free (Waiman Long) [1877019] - [mm] mm, slab: move memcg_cache_params structure to mm/slab.h (Waiman Long) [1877019] - [mm] mm, slab: extend slab/shrink to shrink all memcg caches (Waiman Long) [1877019] - [mm] mm: mempolicy: handle vma with unmovable pages mapped correctly in mbind (Waiman Long) [1877019] - [mm] mm: mempolicy: make the behavior consistent when MPOL_MF_MOVE* and MPOL_MF_STRICT were specified (Waiman Long) [1877019] - [init] init/Kconfig: fix neighboring typos (Waiman Long) [1877019] - [mm] mm: security: introduce init_on_alloc=1 and init_on_free=1 boot options (Waiman Long) [1877019] - [mm] memcg, oom: no oom-kill for __GFP_RETRY_MAYFAIL (Waiman Long) [1877019] - [mm] mm/kasan: add object validation in ksize() (Waiman Long) [1877019] - [mm] mm/slab: refactor common ksize KASAN logic into slab_common.c (Waiman Long) [1877019] - [mm] mm/slub.c: avoid double string traverse in kmem_cache_flags() (Waiman Long) [1877019] - [mm] mm/slab: sanity-check page type when looking up cache (Waiman Long) [1877019] - [mm] mm/slab: validate cache membership under freelist hardening (Waiman Long) [1877019] - [mm] mm/migrate: add stable check in migrate_vma_insert_page() (Waiman Long) [1877019] - [mm] mm/migrate: clean up some minor coding style (Waiman Long) [1877019] - [mm] mm/migrate: remove useless mask of start address (Waiman Long) [1877019] - [kernel] uprobe: use original page when all uprobes are removed (Waiman Long) [1877019] - [mm] mm: move memcmp_pages() and pages_identical() (Waiman Long) [1877019] - [mm] mm, thp: do not queue fully unmapped pages for deferred split (Waiman Long) [1877019] - [mm] mm/khugepaged: fix the xas_create_range() error path (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() do not crash on Compound (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() without freezing new_page (Waiman Long) [1877019] - [mm] mm/khugepaged: minor reorderings in collapse_shmem() (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() remember to clear holes (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() stop if punched or truncated (Waiman Long) [1877019] - [mm] mm: Convert khugepaged_scan_shmem to XArray (Waiman Long) [1877019] - [mm] mm: Convert collapse_shmem to XArray (Waiman Long) [1877019] - [mm] mm: thp: inc counter for collapsed shmem THP (Waiman Long) [1877019] - [mm] mm: thp: register mm for khugepaged when merging vma for shmem (Waiman Long) [1877019] - [mm] mm: swapoff: shmem_unuse() stop eviction without igrab() (Waiman Long) [1877019] - [mm] mm: swapoff: take notice of completion sooner (Waiman Long) [1877019] - [mm] mm: swapoff: remove too limiting SWAP_UNUSE_MAX_TRIES (Waiman Long) [1877019] - [mm] mm: swapoff: shmem_find_swap_entries() filter out other types (Waiman Long) [1877019] - [mm] mm: rid swapoff of quadratic complexity (Waiman Long) [1877019] - [mm] shmem: Comment fixups (Waiman Long) [1877019] - [mm] memfd: Convert memfd_tag_pins to XArray (Waiman Long) [1877019] - [mm] memfd: Convert memfd_wait_for_pins to XArray (Waiman Long) [1877019] - [mm] shmem: Convert shmem_partial_swap_usage to XArray (Waiman Long) [1877019] - [mm] shmem: Convert shmem_free_swap to XArray (Waiman Long) [1877019] - [lib] shmem: Convert shmem_alloc_hugepage to XArray (Waiman Long) [1877019] - [tools] shmem: Convert find_swap_entry to XArray (Waiman Long) [1877019] - [mm] shmem: Convert shmem_confirm_swap to XArray (Waiman Long) [1877019]- [infiniband] RDMA/core: Do not indicate device ready when device enablement fails (Kamal Heib) [1902144] - [infiniband] RDMA/core: Clean up cq pool mechanism (Kamal Heib) [1902144] - [pci] PCI/ASPM: Disable ASPM on ASMedia ASM1083/1085 PCIe-to-PCI bridge (Myron Stowe) [1897927] - [pci] PCI: Make pcie_find_root_port() work for Root Ports (Myron Stowe) [1897927] - [pci] PCI: Add ACS quirk for Intel Root Complex Integrated Endpoints (Myron Stowe) [1897927] - [pci] PCI: Avoid FLR for AMD Starship USB 3.0 (Myron Stowe) [1897927] - [pci] PCI: Avoid FLR for AMD Matisse HD Audio & USB 3.0 (Myron Stowe) [1897927] - [pci] PCI/switchtec: Correct bool variable type assignment (Myron Stowe) [1897927] - [pci] PCI: Allow pci_resize_resource() for devices on root bus (Myron Stowe) [1897927] - [pci] PCI/PM: Adjust pcie_wait_for_link_delay() for caller delay (Myron Stowe) [1897927] - [pci] PCI: Avoid Pericom USB controller OHCI/EHCI PME# defect (Myron Stowe) [1897927] - [tty] serial: 8250_pci: Move Pericom IDs to pci_ids.h (Myron Stowe) [1897927] - [pci] PCI/PM: Call .bridge_d3() hook only if non-NULL (Myron Stowe) [1897927] - [pci] PCI: Rename _DSM constants to align with spec (Myron Stowe) [1897927] - [pci] PCI/PME: Fix kernel-doc of pcie_pme_resume() and pcie_pme_remove() (Myron Stowe) [1897927] - [pci] PCI: Unify pcie_find_root_port() and pci_find_pcie_root_port() (Myron Stowe) [1897927] - [pci] PCI: Replace zero-length array with flexible-array (Myron Stowe) [1897927] - [pci] PCI: shpchp: Make shpchp_unconfigure_device() void (Myron Stowe) [1897927] - [pci] PCI: Use of_node_name_eq() for node name comparisons (Myron Stowe) [1897927] - [pci] PCI: pciehp: Remove unused EMI() and HP_SUPR_RM() macros (Myron Stowe) [1897927] - [pcmcia] pcmcia: Use CardBus window names (PCI_CB_BRIDGE_IO_0_WINDOW etc) when freeing (Myron Stowe) [1897927] - [pci] PCI: Use bridge window names (PCI_BRIDGE_IO_WINDOW etc) (Myron Stowe) [1897927] - [pci] PCI/PTM: Inherit Switch Downstream Port PTM settings from Upstream Port (Myron Stowe) [1897927] - [pci] PCI: Program MPS for RCiEP devices (Myron Stowe) [1897927] - [pci] PCI: Fix pci_host_bridge struct device release/free handling (Myron Stowe) [1897927] - [pci] PCI: Fix pci_register_host_bridge() device_register() error handling (Myron Stowe) [1897927] - [pci] PCI/ASPM: Allow ASPM on links to PCIe-to-PCI/PCI-X Bridges (Myron Stowe) [1897927] - [x86] x86/tboot: Don't disable swiotlb when iommu is forced on (Tony Camuso) [1883395] - [iommu] iommu/vt-d: Avoid panic if iommu init fails in tboot system (Tony Camuso) [1883395] - [pci] PCI/ERR: Clear PCIe Device Status errors only if OS owns AER (Myron Stowe) [1838358] - [pci] PCI/ERR: Rename pci_aer_clear_device_status() to pcie_clear_device_status() (Myron Stowe) [1838358] - [pci] PCI/AER: Log correctable errors as warning, not error (Myron Stowe) [1838358] - [pci] PCI/AER: Simplify __aer_print_error() (Myron Stowe) [1838358] - [misc] mei: hdcp: fix mei_hdcp_verify_mprime() input parameter (Tony Camuso) [1874577] - [misc] mei: add device kind to sysfs (Tony Camuso) [1874577] - [misc] mei: hw: don't use one element arrays (Tony Camuso) [1874577] - [misc] mei: hw: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: client: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: bus: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: ioctl: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: hbm: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] Revert "mei: Avoid the use of one-element arrays" (Tony Camuso) [1874577] - [misc] mei: Avoid the use of one-element arrays (Tony Camuso) [1874577] - [misc] mei: Replace HTTP links with HTTPS ones (Tony Camuso) [1874577] - [misc] mei: hdcp: Replace one-element array with flexible-array member (Tony Camuso) [1874577] - [misc] mei: bus: don't clean driver pointer (Tony Camuso) [1874577] - [misc] mei: me: add MEI device for KBP with ITPS capability (Tony Camuso) [1874577] - [misc] mei: me: add MEI device for SPT with ITPS capability (Tony Camuso) [1874577] - [misc] mei: me: add kdoc for mei_me_fw_type_nm() (Tony Camuso) [1874577] - [misc] mei: me: make mei_me_fw_sku_sps_4() less cryptic (Tony Camuso) [1874577] - [misc] mei: me: constify the device parameter to the probe quirk (Tony Camuso) [1874577] - [misc] mei: hdcp: Constify struct mei_cl_device_id (Tony Camuso) [1874577] - [misc] mei: me: add tiger lake point device ids for H platforms (Tony Camuso) [1874577] - [misc] mei: me: disable mei interface on Mehlow server platforms (Tony Camuso) [1874577] - [misc] mei: release me_cl object reference (Tony Camuso) [1874577] - [misc] mei: me: disable mei interface on LBG servers (Tony Camuso) [1874577] - [fs] NFS4: Fix use-after-free in trace_event_raw_event_nfs4_set_lock (Dave Wysochanski) [1906306] - [fs] NFS: Adjust fs_context error logging (Scott Mayhew) [1907711] - [mm] powerpc/book3s64/pkeys: Fix pkey_access_permitted() for execute disable pkey (Steve Best) [1912294] - [infiniband] IB/isert: add module param to set sg_tablesize for IO cmd (Kamal Heib) [1887359] - [infiniband] IB/isert: allocate RW ctxs according to max IO size (Kamal Heib) [1887359] - [net] sched: flower: Mark MPLS multilabel match as Tech Preview (Guillaume Nault) [1814836] - [net] sched: Fix dump of MPLS_OPT_LSE_LABEL attribute in cls_flower (Guillaume Nault) [1814836] - [net] cls_flower: remove mpls_opts_policy (Guillaume Nault) [1814836] - [net] flow_dissector: work around stack frame size warning (Guillaume Nault) [1814836] - [net] cls_flower: Support filtering on multiple MPLS Label Stack Entries (Guillaume Nault) [1814836] - [net] flow_dissector: Parse multiple MPLS Label Stack Entries (Guillaume Nault) [1814836] - [netdrv] net/mlx5e: Use generic API to build MPLS label (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Support pedit on mpls over UDP decap (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Add support for hw decapsulation of MPLS over UDP (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Allow to match on mpls parameters (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Add support for hw encapsulation of MPLS over UDP (Alaa Hleihel) [1790220]- [netdrv] net: intel: Remove in_interrupt() warnings (Ken Cox) [1838731] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Ken Cox) [1838731] - [netdrv] ixgbe: use eth_zero_addr() to clear mac address (Ken Cox) [1838731] - [netdrv] ixgbe: Remove unnecessary usages of memset (Ken Cox) [1838731] - [netdrv] ixgbe: use generic power management (Ken Cox) [1838731] - [netdrv] ixgbe: convert to new udp_tunnel_nic infra (Ken Cox) [1838731] - [netdrv] ixgbe: don't clear UDP tunnel ports when RXCSUM is disabled (Ken Cox) [1838731] - [netdrv] ixgbe: Cleanup unneeded delay in ethtool test (Ken Cox) [1838731] - [netdrv] ethernet/intel: Convert fallthrough code comments (Ken Cox) [1838731] - [netdrv] net: ethernet: ixgbe: don't call devm_mdiobus_free() (Ken Cox) [1838731] - [netdrv] net: ethernet: ixgbe: check the return value of ixgbe_mii_bus_init() (Ken Cox) [1838731] - [netdrv] net/intel: remove driver versions from Intel drivers (Ken Cox) [1838731] - [netdrv] ixgbe: protect ring accesses with READ- and WRITE_ONCE (Ken Cox) [1838731] - [netdrv] ixgbe: Remove unused inline function ixgbe_irq_disable_queues (Ken Cox) [1838731] - [netdrv] ixgbe: Use true, false for bool variable in __ixgbe_enable_sriov() (Ken Cox) [1838731] - [netdrv] ixgbe: Remove conversion to bool in ixgbe_device_supports_autoneg_fc() (Ken Cox) [1838731] - [netdrv] ixgbe: fix signed-integer-overflow warning (Ken Cox) [1838731] - [netdrv] ixgbe: Fix XDP redirect on archs with PAGE_SIZE above 4K (Ken Cox) [1838731] - [netdrv] ionic: use mc sync for multicast filters (Jonathan Toppins) [1909329] - [fs] xfs: always return -ENOSPC on project quota reservation failure (Carlos Maiolino) [1908612] - [fs] xfs: group quota should return EDQUOT when prj quota enabled (Carlos Maiolino) [1908612] - [pwm] pwm: Add DesignWare PWM Controller Driver (Steve Best) [1783562] - [pwm] pwm: Ensure pwm_apply_state() doesn't modify the state argument (Steve Best) [1783562] - [net] sched: Mark VLAN_ACT_{POP,PUSH}_ETH as Tech Preview (Guillaume Nault) [1909345] - [vfio] vfio/pci: Decouple PCI_COMMAND_MEMORY bit checks from is_virtfn (Claudio Imbrenda) [1903972] - [s390] s390/pci: Mark all VFs as not implementing PCI_COMMAND_MEMORY (Claudio Imbrenda) [1903972] - [pci] PCI/IOV: Mark VFs as not implementing PCI_COMMAND_MEMORY (Claudio Imbrenda) [1903972] - [iommu] s390/pci: adaptation of iommu to multifunction (Claudio Imbrenda) [1903972] - [s390] s390/pci: fix leak of DMA tables on hard unplug (Claudio Imbrenda) [1853312] - [s390] s390/pci: fix PF/VF linking on hot plug (Claudio Imbrenda) [1853312] - [s390] s390/pci: re-introduce zpci_remove_device() (Claudio Imbrenda) [1853312] - [s390] s390/pci: fix zpci_bus_link_virtfn() (Claudio Imbrenda) [1853312] - [s390] s390/pci: ignore stale configuration request event (Claudio Imbrenda) [1853312] - [s390] s390/pci: fix enabling a reserved PCI function (Claudio Imbrenda) [1853312] - [s390] s390/pci: create links between PFs and VFs (Claudio Imbrenda) [1853312] - [pci] PCI/IOV: Introduce pci_iov_sysfs_link() function (Claudio Imbrenda) [1853312] - [s390] s390/pci: removes wrong PCI multifunction assignment (Claudio Imbrenda) [1853312] - [s390] s390/pci: Handling multifunctions (Claudio Imbrenda) [1853312] - [s390] s390/pci: Adding bus resource (Claudio Imbrenda) [1853312] - [s390] s390/pci: adapt events for zbus (Claudio Imbrenda) [1853312] - [s390] s390/pci: create zPCI bus (Claudio Imbrenda) [1853312] - [s390] s390/pci: define RID and RID available (Claudio Imbrenda) [1853312] - [s390] s390/pci: define kernel parameters for PCI multifunction (Claudio Imbrenda) [1853312] - [pci] s390/pci: embedding hotplug_slot in zdev (Claudio Imbrenda) [1853312] - [s390] s390/pci: Expose new port attribute for PCIe functions (Claudio Imbrenda) [1853312] - [s390] s390/pci: Improve handling of unset UID (Claudio Imbrenda) [1853312] - [s390] s390/pci: Fix zpci_alloc_domain() over allocation (Claudio Imbrenda) [1853312] - [arm64] arm64: insn: Fix two bugs in encoding 32-bit logical immediates (Yauheni Kaliuta) [1900977] - [iommu] iommu/amd: Set DTEto represent 512 IRTEs (Jerry Snitselaar) [1897492 1894769] - [iommu] iommu/amd: Increase interrupt remapping table limit to 512 entries (Jerry Snitselaar) [1897492 1894769] - [tools] selftests: forwarding: Add MPLS L2VPN test (Guillaume Nault) [1861261] - [net] sched: act_mpls: Add action to push MPLS LSE before Ethernet header (Guillaume Nault) [1861261] - [net] sched: act_vlan: Add {POP,PUSH}_ETH actions (Guillaume Nault) [1861261] - [fs] cifs: Fix incomplete memory allocation on setxattr path (Leif Sahlberg) [1903883] - [fs] cifs: Fix leak when handling lease break for cached root fid (Leif Sahlberg) [1903883] - [fs] Revert "cifs: Fix the target file was deleted when rename failed." (Leif Sahlberg) [1903883] - [fs] cifs: update internal module version number (Leif Sahlberg) [1903883] - [fs] cifs: fix reference leak for tlink (Leif Sahlberg) [1903883] - [fs] smb3: fix unneeded error message on change notify (Leif Sahlberg) [1903883] - [fs] cifs: remove the retry in cifs_poxis_lock_set (Leif Sahlberg) [1903883] - [fs] smb3: fix access denied on change notify request to some servers (Leif Sahlberg) [1903883] - [fs] Replace HTTP links with HTTPS ones: CIFS (Leif Sahlberg) [1903883] - [fs] cifs: prevent truncation from long to int in wait_for_free_credits (Leif Sahlberg) [1903883] - [fs] cifs: Fix the target file was deleted when rename failed (Leif Sahlberg) [1903883] - [fs] SMB3: Honor 'posix' flag for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor 'handletimeout' flag for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor lease disabling for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor persistent/resilient handle flags for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor 'seal' flag for multiuser mounts (Leif Sahlberg) [1903883] - [fs] cifs: Display local UID details for SMB sessions in DebugData (Leif Sahlberg) [1903883] - [fs] cifs: misc: Use array_size() in if-statement controlling expression (Leif Sahlberg) [1903883] - [fs] cifs: update ctime and mtime during truncate (Leif Sahlberg) [1903883] - [fs] cifs/smb3: Fix data inconsistent when punch hole (Leif Sahlberg) [1903883] - [fs] cifs/smb3: Fix data inconsistent when zero file range (Leif Sahlberg) [1903883] - [fs] cifs: Fix double add page to memcg when cifs_readpages (Leif Sahlberg) [1903883] - [fs] cifs: Fix cached_fid refcnt leak in open_shroot (Leif Sahlberg) [1903883] - [fs] smb3: Add debug message for new file creation with idsfromsid mount option (Leif Sahlberg) [1903883] - [fs] cifs: fix chown and chgrp when idsfromsid mount option enabled (Leif Sahlberg) [1903883] - [fs] smb3: allow uid and gid owners to be set on create with idsfromsid mount option (Leif Sahlberg) [1903883] - [fs] smb311: Add tracepoints for new compound posix query info (Leif Sahlberg) [1903883] - [fs] smb311: add support for using info level for posix extensions query (Leif Sahlberg) [1903883] - [fs] smb311: Add support for lookup with posix extensions query info (Leif Sahlberg) [1903883] - [fs] smb311: Add support for SMB311 query info (non-compounded) (Leif Sahlberg) [1903883] - [fs] SMB311: Add support for query info using posix extensions (level 100) (Leif Sahlberg) [1903883] - [fs] smb3: add indatalen that can be a non-zero value to calculation of credit charge in smb2 ioctl (Leif Sahlberg) [1903883] - [fs] smb3: fix typo in mount options displayed in /proc/mounts (Leif Sahlberg) [1903883] - [fs] cifs: Add get_security_type_str function to return sec type (Leif Sahlberg) [1903883] - [fs] smb3: extend fscache mount volume coherency check (Leif Sahlberg) [1903883] - [fs] cifs: update internal module version number (Leif Sahlberg) [1903883] - [fs] smb3: fix incorrect number of credits when ioctl MaxOutputResponse > 64K (Leif Sahlberg) [1903883] - [fs] smb3: remove static checker warning (Leif Sahlberg) [1903883] - [fs] cifs: fix minor typos in comments and log messages (Leif Sahlberg) [1903883] - [fs] smb3: minor update to compression header definitions (Leif Sahlberg) [1903883] - [fs] cifs: minor fix to two debug messages (Leif Sahlberg) [1903883] - [fs] cifs: Standardize logging output (Leif Sahlberg) [1903883] - [fs] smb3: Add new parm "nodelete" (Leif Sahlberg) [1903883] - [fs] cifs: get rid of unused parameter in reconn_setup_dfs_targets() (Leif Sahlberg) [1903883] - [fs] cifs: handle hostnames that resolve to same ip in failover (Leif Sahlberg) [1903883] - [fs] cifs: set up next DFS target before generic_ip_connect() (Leif Sahlberg) [1903883] - [fs] cifs: remove redundant initialization of variable rc (Leif Sahlberg) [1903883] - [fs] cifs: handle "nolease" option for vers=1.0 (Leif Sahlberg) [1903883] - [fs] cifs: fix leaked reference on requeued write (Leif Sahlberg) [1903883] - [fs] cifs: Fix null pointer check in cifs_read (Leif Sahlberg) [1903883] - [fs] CIFS: Spelling s/EACCESS/EACCES/ (Leif Sahlberg) [1903883] - [fs] cifs: fix uninitialised lease_key in open_shroot() (Leif Sahlberg) [1903883] - [fs] cifs: ensure correct super block for DFS reconnect (Leif Sahlberg) [1903883] - [fs] cifs: do not share tcons with DFS (Leif Sahlberg) [1903883] - [fs] cifs: minor update to comments around the cifs_tcp_ses_lock mutex (Leif Sahlberg) [1903883] - [fs] cifs: protect updating server->dstaddr with a spinlock (Leif Sahlberg) [1903883] - [fs] smb3: remove overly noisy debug line in signing errors (Leif Sahlberg) [1903883] - [fs] cifs: improve read performance for page size 64KB & cache=strict & vers=2.1+ (Leif Sahlberg) [1903883] - [fs] cifs: dump the session id and keys also for SMB2 sessions (Leif Sahlberg) [1903883] - [fs] smb3: enable swap on SMB3 mounts (Leif Sahlberg) [1903883] - [fs] smb3: change noisy error message to FYI (Leif Sahlberg) [1903883] - [fs] cifs: update internal module version number (Leif Sahlberg) [1903883] - [fs] smb3: use SMB2_SIGNATURE_SIZE define (Leif Sahlberg) [1903883] - [fs] CIFS: Fix bug which the return value by asynchronous read is error (Leif Sahlberg) [1903883] - [fs] CIFS: check new file size when extending file by fallocate (Leif Sahlberg) [1903883] - [fs] SMB3: Minor cleanup of protocol definitions (Leif Sahlberg) [1903883] - [fs] SMB3: Additional compression structures (Leif Sahlberg) [1903883] - [fs] SMB3: Add new compression flags (Leif Sahlberg) [1903883] - [fs] cifs: smb2pdu.h: Replace zero-length array with flexible-array member (Leif Sahlberg) [1903883] - [fs] cifs: clear PF_MEMALLOC before exiting demultiplex thread (Leif Sahlberg) [1903883] - [fs] cifs: cifspdu.h: Replace zero-length array with flexible-array member (Leif Sahlberg) [1903883] - [fs] CIFS: Warn less noisily on default mount (Leif Sahlberg) [1903883] - [fs] fs/cifs: fix gcc warning in sid_to_id (Leif Sahlberg) [1903883] - [fs] cifs: allow unlock flock and OFD lock across fork (Leif Sahlberg) [1903883] - [fs] cifs: do d_move in rename (Leif Sahlberg) [1903883] - [fs] cifs: add SMB2_open() arg to return POSIX data (Leif Sahlberg) [1903883] - [fs] cifs: plumb smb2 POSIX dir enumeration (Leif Sahlberg) [1903883] - [fs] cifs: add smb2 POSIX info level (Leif Sahlberg) [1903883] - [fs] cifs: rename posix create rsp (Leif Sahlberg) [1903883] - [fs] cifs: print warning mounting with vers=1.0 (Leif Sahlberg) [1903883] - [fs] smb3: fix performance regression with setting mtime (Leif Sahlberg) [1903883] - [fs] cifs: make use of cap_unix(ses) in cifs_reconnect_tcon() (Leif Sahlberg) [1903883] - [fs] cifs: use mod_delayed_work() for &server->reconnect if already queued (Leif Sahlberg) [1903883] - [fs] cifs: call wake_up(&server->response_q) inside of cifs_reconnect() (Leif Sahlberg) [1903883] - [fs] cifs: do not ignore the SYNC flags in getattr (Leif Sahlberg) [1903883] - [tools] tools/power/x86/intel-speed-select: Update version for v5.10 (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Fix missing base-freq core IDs (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Update version for v5.9 (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Add retries for mail box commands (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Add option to delay mbox commands (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Ignore -o option processing on error (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Change path for caching topology info (Prarit Bhargava) [1896211] - [kernel] perf/core: Fix race in the perf_mmap_close() function (Michael Petlan) [1869925] {CVE-2020-14351} - [kernel] perf: Make struct ring_buffer less ambiguous (Michael Petlan) [1869925] {CVE-2020-14351} - [arm64] arm64: bpf: Fix branch offset in JIT (Yauheni Kaliuta) [1875342]- [hwmon] hwmon: (amd_energy) fix allocation of hwmon_channel_info config (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) Add AMD family 19h model 01h x86 match (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) modify the visibility of the counters (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) Improve the accumulation logic (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) optimize accumulation interval (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) Move label out of accumulation structure (David Arcari) [1911220] - [powerpc] powerpc/64s: Remove TM from Power10 features (Gustavo Duarte) [1892471] - [netdrv] ionic: start queues before announcing link up (Jonathan Toppins) [1906250] - [fs] NFSD: fix missing refcount in nfsd4_copy by nfsd4_do_async_copy (Benjamin Coddington) [1873897] - [bluetooth] Bluetooth: btusb: Map Typhoon peak controller to BTUSB_INTEL_NEWGEN (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Add support for Intel Bluetooth Device Typhoon Peak (8087:0032) (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Helper function to download firmware to Intel adapters (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Define a function to construct firmware filename (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Add *setup* function for new generation Intel controllers (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Fix endianness issue for TLV version information (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Functions to send firmware header / payload (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Add infrastructure to read controller information (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Refactor firmware download function (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Update boot parameter specific to SKU (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Refactor of firmware download flow for Intel conrollers (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Enable Intel events even if already in operational mode (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Configure Intel debug feature based on available support (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Add support to read Intel debug feature (Gopal Tiwari) [1900356] - [kernel] rcuwait: avoid lockdep splats from rcuwait_active() (Auger Eric) [1903095] - [net] udp: fix the proto value passed to ip_protocol_deliver_rcu for the segments (Xin Long) [1879403] - [net] udp: fix IP header access and skb lookup on Fast/frag0 UDP GRO (Xin Long) [1879403] - [net] udp: fix UDP header access on Fast/frag0 UDP GRO (Xin Long) [1879403] - [net] ethtool: add missing NETIF_F_GSO_FRAGLIST feature string (Xin Long) [1879403] - [net] fix fraglist segmentation reference count leak (Xin Long) [1879403] - [net] udp: initialize is_flist with 0 in udp_gro_receive (Xin Long) [1879403] - [include] udp: segment looped gso packets correctly (Xin Long) [1879403] - [net] udp: Support UDP fraglist GRO/GSO. (Xin Long) [1879403] - [net] Support GRO/GSO fraglist chaining. (Xin Long) [1879403] - [net] Add a netdev software feature set that defaults to off. (Xin Long) [1879403] - [net] Add fraglist GRO/GSO feature flags (Xin Long) [1879403] - [include] udp: Avoid post-GRO UDP checksum recalculation (Xin Long) [1879403] - [net] udp: fix GRO packet of death (Xin Long) [1879403] - [net] udp: fix GRO reception in case of length mismatch (Xin Long) [1879403] - [net] udp: cope with UDP GRO packet misdirection (Xin Long) [1879403] - [net] ipv6: factor out protocol delivery helper (Xin Long) [1879403] - [net] ip: factor out protocol delivery helper (Xin Long) [1879403] - [net] udp: add support for UDP_GRO cmsg (Xin Long) [1879403] - [net] udp: implement GRO for plain UDP sockets. (Xin Long) [1879403]- [powerpc] powerpc/perf: Fix Threshold Event Counter Multiplier width for P10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Exclude kernel samples while counting events in user space (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Invoke per-CPU variable access with disabled interrupts (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: MMCR0 control for PMU registers under PMCC=00 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/64s: Convert some cpu_setup() and cpu_restore() functions to C (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/64: Set up a kernel stack for secondaries before cpu_restore() (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc: Wire up memtest (Desnes Augusto Nunes do Rosario) [1906084] - [mm] powerpc/mm: Don't report hugepage tables as memory leaks when using kmemleak (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix to update cache events with l2l3 events in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix to update generic event codes for power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Add generic and cache event list for power10 DD1 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix the PMU group constraints for threshold events in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Update the PMU group constraints for l2l3 events in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix to update radix_scope_qual in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [nvme] nvme-pci: mark Samsung PM1725a as IGNORE_DEV_SUBNQN (Gopal Tiwari) [1903513] - [base] driver: core: Fix list corruption after device_del() (Torez Smith) [1900751] - [base] device property: Don't clear secondary pointer for shared primary firmware node (Torez Smith) [1900751] - [base] device property: Keep secondary firmware node secondary by type (Torez Smith) [1900751] - [of] of: property: Fix create device links for all child-supplier dependencies (Torez Smith) [1900751] - [base] drivers/base/test: fix global-out-of-bounds error (Torez Smith) [1900751] - [base] driver core: Fix use-after-free and double free on glue directory (Torez Smith) [1900751] - [thunderbolt] thunderbolt: Add uaccess dependency to debugfs interface (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use "if USB4" instead of "depends on" in Kconfig (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Allow KUnit tests to be built also when CONFIG_USB4=m (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: debugfs: Fix uninitialized return in counters_write() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add debugfs interface (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: cdc-acm: Add DISABLE_ECHO for Renesas USB Download mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Report power supply changes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: hisilicon: fix refercence leak in xhci_histb_probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for Intel Tiger Lake-H (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: apple-mfi-fastcharge: fix reference leak in apple_mfi_fc_set_property (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Only configure USB4 wake for lane 0 adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Fix memory leak if ida_simple_get() fails in enumerate_services() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit FN980 composition 0x1055 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add LE910Cx compositions 0x1203, 0x1230, 0x1231 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cyberjack: fix write-URB completion race (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Add NO_LPM quirk for Kingston flash drive (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Don't create stream debugfs files with spinlock held (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Workaround for S3 issue on AMD SNPS 3.0 xHC (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix sizeof() mismatch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: stusb160x: fix signedness comparison issue with enum variables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add missing MODULE_DEVICE_TABLE() to stusb160x (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore: Check both id_table and match() when both available (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: stusb160x: fix an IS_ERR() vs NULL check in probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: reset hard_reset_count for any disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: cdc-acm: fix cooldown mechanism (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: fix kernel-doc markups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: stusb160x: fix some signedness bugs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Quectel EC200T module support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add the missed ida_simple_remove() in ring_request_msix() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [documentation] usb: docs: document altmode register/unregister functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add QCOM PMIC typec detection driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Cellient MPL200 card (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci_maxim: Add support for Sink FRS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Implement callbacks for FRS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: tcpm: Add support for Sink Fast Role SWAP(FRS) (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci_maxim: Chip level TCPC driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add set_vbus tcpci callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add a getter method to retrieve tcpm_port reference (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: cdc-acm: add quirk to blacklist ETAS ES58X devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: use cur_altsetting for consistency (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: Add Telit FT980-KS composition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: remove polling for /sys/kernel/debug/usb/devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add support for STUSB160x Type-C controller family (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add typec_find_pwr_opmode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: Use OF graph API to get the connector fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-wdm: Make wdm_flush() interruptible and add wdm_fsync() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: displayport: Reduce noise from the driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Add Kconfig option to reduce number of port initialization retries (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Clean up use of port initialization schemes and retries (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: fix altsetting probing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: clean up jtag quirks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: pl2303: add device-id for HP GC device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: clean up no-union-descriptor handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: use common data-class define (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: handle broken union descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "cdc-acm: hardening against malicious devices" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore/driver: Accommodate usbip (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] PM: core: introduce pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [kernel] sched: Provide sched_set_fifo() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore/driver: Fix incorrect downcast (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore/driver: Fix specific driver selection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [sound] USB: correct API of usb_control_msg_send/recv in sound driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: correct API of usb_control_msg_send/recv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "USB: legousbtower: use usb_control_msg_recv()" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "USB: core: hub.c: use usb_control_msg_send() in a few places" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: pci-quirks: convert to readl_poll_timeout_atomic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: ehci-dbgp: convert to readl_poll_timeout_atomic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: convert to readl_poll_timeout_atomic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: appledisplay: use module_usb_driver to simplify the code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: add debugfs support for ep with stream (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: don't create endpoint debugfs entry before ring buffer is set (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Tune interrupt blocking for isochronous transfers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: omit duplicate actions when suspending a runtime suspended host (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: improve the comments for xhci_plat_suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add wakeup entry at sysfs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add priv quirk for skip PHY initialization (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: delete the unnecessary code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add .suspend_quirk for struct xhci_plat_priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add platform data support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: cleanup of data structures (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix debugging (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usblp: fix race between disconnect() and read() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: don't inherity DMA properties for USB devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ehci-hcd: Move include to keep CRC stable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Only stop control channel when entering freeze (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Capitalize comment on top of QUIRK_FORCE_POWER_LINK_CONTROLLER (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Correct tb_check_quirks() kernel-doc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Log correct zeroX entries in decode_error() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Handle ERR_LOCK notification (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Handle SCU IPC error conditions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: Add USB_QUIRK_IGNORE_REMOTE_WAKEUP quirk for BYD zhaoxin notebook (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: update ROLE_CONTROL for DRP (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add support when hidden tx registers are inaccessible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add register definitions to tcpci (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: UAS: use macro for reporting results (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Pass correct USB Type-C port number to SoC (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Add dependency on ACPI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: microtek: use set_host_byte() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: UAS: fix disconnect by unplugging a hub (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Prevent mode overrun (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: acpi: Increase command completion timeout value (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: use usb_control_msg_recv() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: hub.c: use usb_control_msg_send() in a few places (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: message.c: use usb_control_msg_send() in a few places (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb typec: mt6360: Add support for mt6360 Type-C driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ehci-sched: Remove ununsed function tt_start_uframe() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ohci: Make distrust_firmware param default to false (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ohci: Default to per-port over-current protection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Retry DROM read once if parsing fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Support for device role (UFP) (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Check the port status before connect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Do not configure SBU and HSL Orientation in Alternate modes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Do not configure Altmode HPD High (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] device connection: Remove struct device_connection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] uas: bump hw_max_sectors to 2048 blocks for SS or faster drives (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] uas: fix sdev->host->dma_dev (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: fix sdev->host->dma_dev (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/host: ehci-npcm7xx: Use pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/misc: usb3503: Use pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/misc: usb4604: Use pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: driver: fix stray tabs in error messages (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: acpi: Check the _DEP dependencies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: fix slab-out-of-bounds Read in read_descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Fix out of sync data toggle if a configured device is reconfigured (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Un-register the USB role switch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_switch_is_ice_lake() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_switch_is_tiger_lake() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Check for Intel vendor ID when identifying controller (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_port_is_nhi() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Create device links from ACPI description (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: No need to warn in TB_CFG_ERROR_INVALID_CONFIG_SPACE (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_switch_next_cap() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_port_next_cap() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Move struct tb_cap_any to tb_regs.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add runtime PM for Software CM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [pci] PCI / thunderbolt: Switch to use device links instead of PCI quirk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Enable wakes from system suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Tear down DP tunnels when suspending (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Disable lane 1 for XDomain connection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Configure port for XDomain (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Set port configured for both ends of the link (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Configure link after lane bonding is enabled (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Do not change default USB4 router notification timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Initialize TMU again on resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Send reset only to first generation routers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Do not program NFC buffers for USB4 router protocol adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Optimize NHI LC mailbox command processing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Optimize Force Power logic (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Software CM only should set force power in Tiger Lake (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use bit 31 to check if Firmware CM is running in Tiger Lake (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: No need to log an error if tb_switch_lane_bonding_enable() fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use kobj_to_dev() instead of container_of() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: support dynamic Quectel USB compositions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for SIM7070/SIM7080/SIM7090 modules (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Migrate workqueue to RT priority for processing events (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: pd: Fix formatting in pd.h header (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: During PR_SWAP, source caps should be sent only after tSwapSourceStart (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: Remove the superfluous break (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: storage: Add unusual_uas entry for Sony PSZ drives (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Ignore UAS for JMicron JMS567 ATA/ATAPI Bridge (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: Ignore duplicate endpoint on Sound Devices MixPre-D (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: atm: don't use snprintf() for sysfs attrs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Fix Fix source hard reset response for TDA 2.3.1.1 and TDA 2.3.1.2 failures (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use maximum USB3 link rate when reclaiming if link is not up (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add USB3 bandwidth management (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Disable ports that are not implemented (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add IDs for Xsens Mti USB converter (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Always restore EP_SOFT_CLEAR_TOGGLE even if ep reset failed (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Do warm-reset when both CAS and XDEV_RESUME are set (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: fix ep context print mismatch in debugfs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: uas: Add quirk for PNY Pro Elite (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Better name for __check_usb_generic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix device driver race (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Also match device drivers using the ->match vfunc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: fix tegra_xusb_get_phy() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: otg usb2/usb3 port init (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: pci-quirks: Bypass xHCI quirks for Raspberry Pi 4 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [firmware] Revert "USB: pci-quirks: Add Raspberry Pi 4 quirk" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-pci: Add support for reset controllers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Solve race condition in anchor cleanup functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Print error on failure to get VBUS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Make VBUS supply optional (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: remove needless check before usb_free_coherent() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: remove a duplicated entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: isd200: fix spelling mistake "removeable" -> "removable" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-mtk: Fix typo (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hcd: Fix use after free in usb_hcd_pci_remove() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Hold con->lock for the entire duration of ucsi_register_port() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Rework ppm_lock handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix 2 unlocked ucsi_run_command calls (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix AB BA lock inversion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: lvtest: return proper error code in probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: rework notification_buffer resizing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: Add no-lpm quirk for another Raydium touchscreen (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: Fix bad gfp argument (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: merge fix for kunix_resource changes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Register charger (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix ASMedia ASM1142 DMA addressing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: define IDs for various ASMedia host controllers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Simplify USB ID table match (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Add WARN_ON ensure we are not trying to send 2 VDM packets at the same time (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Fix AB BA lock inversion between tcpm code and the alt-mode drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Refactor tcpm_handle_vdm_request (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Refactor tcpm_handle_vdm_request payload handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Add tcpm_queue_vdm_unlocked() helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Move mod_delayed_work(&port->vdm_state_machine) call into tcpm_queue_vdm() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Make function xhci_dbc_ring_alloc() static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbgtty: Make some functions static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for pinctrl-0 through pinctrl-8 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for multiple DT bindings (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix up report size handling for some devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: remove tty specific port structure from struct xhci_dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbgcap: remove dbc dependency on dbctty specific flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Add a operations structure to access driver functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbctty: split dbc tty driver registration and unregistration functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: remove endpoint pointers from dbc_port structure (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: simplify dbc requests allocation and queueing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to dbc start and stop functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to dbc memory init and cleanup functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: don't use generic xhci ring allocation functions for dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use generic xhci context allocation for dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Use dbc structure in the request completion instead of xhci_hcd (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to get_in/out_ep() helper functions to get endpoints (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbgtty: Pass dbc pointer when registering a dbctty device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to dbc_handle_xfer_event() instead of xhci_hcd pointer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Change to pass dbc pointer to xhci_do_dbc_stop() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to endpoint init and exit functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Get the device pointer from dbc structure in dbc_ep_do_queue() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't pass the xhci pointer as a parameter to xhci_dbc_init_context() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use xhci_write_64() as it takes xhci as a parameter (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Use dev_info() and similar instead of xhci_info() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Add device pointer to dbc structure (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Remove dbc_dma_free_coherent() wrapper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Remove dbc_dma_alloc_coherent() wrapper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use generic xhci erst allocation and free functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Don't pass struct xhci_hcd pointer to xhci_link_seg() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use generic xhci inc_deq() function for dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Make debug message consistent with bus and port number (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: tegra: Fix allocation for the FPCI context (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: stop using compat_alloc_user_space (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix ASM2142/ASM3142 DMA addressing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-mtk: fix the failure of bandwidth allocation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: appledisplay: remove needless check before usb_free_coherent() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbtest: reduce stack usage in test_queue (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Stay in BIST mode till hardreset or unattached (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Support BIST test data mode for compliance (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Support bist test data mode for compliance (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Error handling for tcpm_register_partner_altmodes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Comment correction for typec_partner_register_altmode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Avoid connect request on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: fix quirks_param_set() writing to a const pointer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hcd: Try MSI interrupts on PCI devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: add EM7305 QDL product ID (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: iuu_phoenix: fix led-activity helpers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: iuu_phoenix: fix memory corruption (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: sisusbvga: Move static const tables out to different include file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: sisusbvga: sisusb_init: Remove genunine unused static const arrays (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: class: cdc-wdm: Provide description for usb_cdc_wdm_register()'s manage_power arg (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: linux/usb/serial.h: drop duplicated word in comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: linux/usb/pd_vdo.h: drop duplicated word in comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: linux/usb.h: drop duplicated word in comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Remove pci-dma-compat wrapper APIs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: sisusbvga: Fix a potential UB casued by left shifting a negative value (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ohci: Replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: Replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: sierra: clean up special-interface handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: use in-kernel types in port data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: drop unnecessary packed attributes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: add support for TIOCGICOUNT (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: add support for line-status events (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: disable interface on errors in open (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: OHCI: Use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: Use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: xhci-dbc: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: xhci-dbc: Supply missing 'xhci-dbgp.h' headerfile (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: ehci-dbgp: Remove set but never checked variable 'ret' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: ucsi: Staticify and stop export of ucsi_init() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: legousbtower: Demote function header which is clearly not kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: legousbtower: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: ldusb: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: iowarrior: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: iowarrior: Fix odd corruption issue in the file header (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: fusb302: Use 'gnu_printf' format notation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmodes: displayport: Supply missing displayport.h include file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmodes: displayport: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: storage: alauda: Remove set but unchecked variable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-debugfs: Use 'gnu_printf' format notation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-dbgtty: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-dbgcap: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-mem: Demote obvious misuse of kerneldoc to standard comment block (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: Demote obvious misuse of kerneldoc to standard comment block (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: adutux: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: atm: ueagle-atm: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: ledtrig-usbport: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: drop redundant transfer-buffer casts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] USB: serial: drop extern keyword from function declarations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] USB: serial: drop unnecessary sysrq include (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: add sysrq break-handler dummy (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: inline sysrq dummy function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: only process sysrq when enabled (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: only set sysrq timestamp for consoles (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: fix break and sysrq handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: clean up receive processing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: make process-packet buffer unsigned (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Quectel EG95 LTE modem (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: fix missing simulated-break margin (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: re-enable auto-RTS on open (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: enable usb generic throttle/unthrottle (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: simulate break condition if not supported (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: class: usbtmc: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ohci: Mark cc_to_error as __maybe_unused (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: ulpi: Fix a few kerneldoc related issues (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Demote comment block which is clearly not kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: debug: Demote comment blocks which are obviously not kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: pci-quirks: Demote function header from kerneldoc to comment block (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] USB: Fix up terminology in include files (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Fix old style declaration warning (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: console: add support for flow control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: quatech2: drop two stub functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: kobil_sct: log failure to update line settings (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: keyspan_pda: drop unused firmware reset status (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: iuu_phoenix: drop unused URB submission results (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: garmin_gps: don't compile unused packet definitions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Add support for USB4 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Definitions for response status bits (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add data structure for Enter_USB message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Combine the definitions for Accessory and USB modes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix up terminology (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: fix kernel-doc warnings and formatting in (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for authenticate on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for separating the flush to SPI and authenticate (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Ensure left shift of 512 does not overflow a 32 bit int (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: add min and max line-speed macros (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: name prescaler, divisor registers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Poll for U0 after disabling USB2 LPM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Return if xHCI doesn't support LPM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-mtk: avoid runtime suspend when removing hcd (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix enumeration issue when setting max packet size for FS devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix incorrect EP_STATE_MASK (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: add new Product ID for CH340 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add GosunCn GM500 series (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cypress_m8: enable Simply Automated UPB PIM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for on-board retimers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Implement USB4 port sideband operations for retimer access (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Split common NVM functionality into a separate file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Retry USB4 block read operation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Generalize usb4_switch_do__data() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add Intel USB-IF ID to the NVM upgrade supported list (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Increase DP DPRX wait timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make tb_port_get_link_speed() available to other files (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Handle incomplete PCIe/USB3 paths correctly in discovery (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Increase path length in discovery (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add KUnit tests for tunneling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add KUnit tests for path walking (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add DP IN resources for all routers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Report consumed bandwidth in both directions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make usb4_switch_map_pcie_down() also return enabled ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make usb4_switch_map_usb3_down() also return enabled ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Do not tunnel USB3 if link is not USB4 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Implement USB3 bandwidth negotiation routines (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Check that both ports are reachable when allocating path (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make tb_path_alloc() work with tree topologies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make tb_next_port_on_path() work with tree topologies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Fix path indices used in USB3 tunnel discovery (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [netdrv] thunderbolt: Get rid of E2E workaround (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: NHI can use HopIDs 1-7 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: No need to warn if NHI hop_count != 12 or hop_count != 32 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Build initial XDomain property block upon first connect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: OTG: rename product list of devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: scsi: fix up comment to be more specific (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: fix wording in error message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: sierra: unify quirk handling logic (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: fix up wording in a comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: OHCI: remove obsolete FIXME comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rename USB OTG hub configuration option (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rename USB quirk to USB_QUIRK_ENDPOINT_IGNORE (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [uapi] USB: replace hardcode maximum usb string length by definition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci_rt1711h: avoid screaming irq causing boot hangs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbtest: fix missing kfree(dev->buf) in usbtest_disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ehci: reopen solution for Synopsys HC bug (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: Add DISABLE_ECHO quirk for Microchip/SMSC chip (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: add USB_QUIRK_DELAY_INIT for Logitech C922 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel_pmc_mux: Fix DP alternate mode entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: sisusbvga: change char to u8 for sisusb_copy_memory (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: sisusb_con: Use array_size() helper in memcpy() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: tegra: Remove PLL power supplies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] drivers: usb: Fix trivial spelling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: additional Device Classes to debug/usb/devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Improve USB4 config symbol help text (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: kcov: collect coverage from usb complete callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: get rid of pointless access_ok() calls (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: fix lockup of devices with limited prescaler (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: add basis for quirk detection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] CDC-ACM: heed quirk also in error handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit LE910C1-EUX compositions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: add DW5816e QDL support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add trivial .shutdown (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Ensure USB_ROLE_SWITCH is set as a dependency for tps6598x (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: make symbols static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: usb_wwan: do not resubmit rx urb on fatal errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/xhci-plat: Set PM runtime as active on resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Add support for Renesas controller with memory (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: renesas-xhci: Add the renesas xhci driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hci: add hc_driver as argument for usb_hcd_pci_probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: limit HUB_QUIRK_DISABLE_AUTOSUSPEND to USB5534B (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbfs: fix mmap dma mismatch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: keep runtime active when removing host (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix NULL pointer dereference when enqueuing trbs from urb sg list (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Update Kconfig to allow building on other architectures (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel: Fix DP_HPD_LVL bit field (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ehci: Add new EHCI driver for Broadcom STB SoC's (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: xhci-plat: Add support for Broadcom STB SoC's (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Add USB role switching logic (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Add OF probe binding (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Switch on role-switch uevent reporting (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel_pmc_mux: Support for static SBU/HSL orientation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add typec_find_orientation() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usblp: poison URBs upon disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] sierra-ms: do not call scsi_get_host_dev() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [firmware] USB: pci-quirks: Add Raspberry Pi 4 quirk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] thunderbolt: Replace zero-length array with flexible-array (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: correct kernel->user page attribute mismatch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Fix the property names (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel: Handle alt mode HPD_HIGH (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Fix misleading driver bug report (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: Add DW5816e support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: uas: add quirk for LaCie 2Big Quadra (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Do not link to disabled devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Check return value of tb_sw_read() in usb4_switch_op() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: use true, false for bool variable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix the stub for ucsi_register_port_psy() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Convert the Intel PMC Mux driver to use new SCU IPC API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: register with power_supply class (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: save power data objects in PD mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Correct bit-mask for CCI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: replace magic numbers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Workaround for missed op_mode change (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: set USB data role when partner type is power cable/ufp (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Storage: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Replace an empty statement with a debug message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/early: remove unused including (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: pci-quirks: use true, false for bool variables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: typec: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: sisusbvga: Change port variable from signed to unsigned (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Add unusual_devs entry for JMicron JMS566 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Revert commit bd0e6c9614b9 ("usb: hub: try old enumeration scheme first for high speed devices") (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Fix handling of connect changes during sleep (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for Intel Tiger Lake (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmode: Fix typec_altmode_get_partner sometimes returning an invalid pointer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: garmin_gps: add sanity checking for data length (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Don't clear hub TT buffer on ep0 protocol stall (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: prevent bus suspend if a roothub port detected a over-current condition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix handling halted endpoint even if endpoint ring appears empty (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [gpio] usb: fusb302: Convert to use GPIO descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Add USB_QUIRK_DELAY_CTRL_MSG and USB_QUIRK_DELAY_INIT for Corsair K70 RGB RAPIDFIRE (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Ignore CC and vbus changes in PORT_RESET change (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: introduce a cool down (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: close race betrween suspend() and acm_softint (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] UAS: fix deadlock in error handling and PM flushing work (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] UAS: no use logging any details in case of ENODEV (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: pi3usb30532: Set switch_ / mux_desc name field to NULL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: early: Handle AMD's spec-compliant identifiers, too (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Fix free-while-in-use bug in the USB S-Glibrary (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: host: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: early: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] Revert "thunderbolt: Prevent crash if non-active NVMem file is read" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for extcon (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: restore capability check order (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Correct the documentation for typec_cable_put() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: fix slab-out-of-bounds read in edge_interrupt_callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Wistron Neweb D19Q1 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add BroadMobi BM806U (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for ASKEY WWHC050 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Add ACPI support for USB interface devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-tegra: Add OTG support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add control driver for F81534A (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: fix rounding error in TIOCSSERIAL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: fix close_delay and closing_wait units in TIOCSSERIAL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: quirks: add NO_LPM quirk for RTL8153 based ethernet adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-pci: Allow host runtime PM as default for Intel Tiger Lake xHCI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Finetune host initiated USB3 rootport link suspend and resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Wait until link state trainsits to U0 after setting USB_SS_PORT_LS_U0 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Tegra186/Tegra194 LPM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Enable LPM for VIA LABS VL805 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Show host status when watchdog triggers and host is assumed dead (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add a separate debug message for split transaction errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: bail out early if driver can't accress host in resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: pl2303: add device-id for HP LD381 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add ME910G1 ECM composition 0x110b (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: mon: Use scnprintf() for avoiding potential buffer overflow (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi_ccg: workaround for NVIDIA test device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add a shutdown (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: displayport: Fix a potential race during registration (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: displayport: Fix NULL pointer dereference (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Disable LPM on WD19's Realtek Hub (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use scnprintf() for avoiding potential buffer overflow (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: fix tty cleanup-op kernel-doc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: clean up carrier-detect helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: apply XHCI_SUSPEND_DELAY to AMD XHCI controller 1022:145c (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Delete of_devlink kernel commandline option (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: driver for Intel PMC mux control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add definitions for Thunderbolt 3 Alternate Mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Allow the role switches to be named (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Provide the switch drivers handle to the switch in the API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Leave the private driver data pointer to the drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Allow the mux handles to be requested with fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Add helpers for setting the mux state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Allow the muxes to be named (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: port: do error out if usb_autopm_get_interface() fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: do error out if usb_autopm_get_interface() fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: fix unhandled return by employing a void function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: storage: Add quirk for Samsung Fit flash (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: quirks: add NO_LPM quirk for Logitech Screen Share (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: fix regulator probe and error handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add sysfs node to show cc orientation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: move to SNK_UNATTACHED if sink removed for DRP (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for power-domains and hwlocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: set F81534A serial port with RS232 mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add F81534A support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: use devm_kzalloc for port data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add tx_empty function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: extract LSR handler (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: uhci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ohci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ehci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Use ACPI_SUCCESS() at appropriate places (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Make use of acpi_evaluate_object() status (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Use const to reduce object data size (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ucsi: ccg: disable runtime pm during fw flashing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: register DP only for NVIDIA DP VDO (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: iowarrior: add support for the 100 device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add missing annotation for xhci_enter_test_mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add missing annotation for xhci_set_port_power() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Do not open code __print_symbolic() in xhci trace events (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: use kobj_to_dev() API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add missing kernel-doc parameter descriptions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: set correct data role for non-DRD (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: icm: Replace zero-length array with flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: eeprom: Replace zero-length array with flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: apple-mfi-fastcharge: don't probe unhandled devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: apple-mfi-fastcharge: fix endianess issue in probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Add driver to control USB fast charge for iOS devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fallback to generic driver when specific driver fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Select better matching USB drivers when available (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Implement usb_device_match_id() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Make it possible to "subclass" usb_device_driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Export generic USB device driver functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: Replace zero-length array with flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Drop support for device name matching (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmode: Remove the notification chain (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Fix the description of struct typec_capability (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Allow power role swapping even without USB PD (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Hide the port_type attribute when it's not supported (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Make the attributes read-only when writing is not possible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: iowarrior: add support for the 28 and 28L devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: iowarrior: add support for 2 OEMed devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix novation SourceControl XL after suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix memory leak when caching protocol extended capability PSI tables - take 2 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "xhci: Fix memory leak when caching protocol extended capability PSI tables" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: remove redundant assignment to variable num (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: host: ehci-platform: add a quirk to avoid stuck (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: clean up endpoint-descriptor parsing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: blacklist duplicate ep on Sound Devices USBPre2 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: add endpoint-blacklist quirk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [uapi] usb: charger: assign specific number for enum value (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Don't record a connect-change event during reset-resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: uas: fix a plug & unplug racing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Fix the broken detection of USB3 device in SMSC hub (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: apply XHCI_PME_STUCK_QUIRK to Intel Comet Lake platforms (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: fix runtime pm enabling for quirky Intel hosts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix memory leak when caching protocol extended capability PSI tables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Force Maximum Packet size for Full-speed bulk devices to valid range (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: digi_acceleport: remove redundant assignment to pointer priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: relax unthrottle memory barrier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: fix receiver regression (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: Silence harmless uninitialized variable warning (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cyberjack: fix spelling mistake "To" -> "Too" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: simplify endpoint check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: make set_termios synchronous (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: fix IrLAP framing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: fix link-speed handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: add missing endpoint sanity check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: fix "op-sink-microwatt" default that was in mW (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: wcove: fix "op-sink-microwatt" default that was in mW (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: mask event interrupts when remove driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: set MODULE_FIRMWARE for tegra186 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbfs: Always unlink URBs in reverse order (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: quatech2: handle unbound ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: keyspan: handle unbound ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: add missing active-port sanity check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: handle unbound ports on URB completion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: handle unbound port at reset_resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: garmin_gps: Use flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: opticon: stop all I/O on close() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: opticon: add chars_in_buffer() implementation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: suppress driver bind attributes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for Quectel RM500Q in QDL mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: Improved device recognition on remote wakeup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: phy-generic: Delete unused platform data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: opticon: fix control-message timeouts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: Add support for Quectel RM500Q (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: simple: Add Motorola Solutions TETRA MTP3xxx and MTP85xx (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: ulpi: Add resource-managed variant of otg_ulpi_create() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Provide definitions for the USB modes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Give the mux drivers all the details regarding the port state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add definitions for the latest specification releases (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add the Product Type VDOs to struct usb_pd_identity (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: pd: Add definition for DFP and UFP1 VDOs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: pd: Add definitions for the Enter_USB message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: More API for cable handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add parameter for the VDO to typec_altmode_enter() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Block mode entry if the port has the mode disabled (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: fix spelling mistake "connetor" -> "connector" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: missing parentheses in USE_NEW_SCHEME (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix the notification bit offsets (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Actually enable all the interface notifications (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fix non-kernel-doc comments (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix: Don't skip endpoint descriptors with maxpacket=0 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB-PD tcpm: bad warning+size, PPS adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb3503: Convert to use GPIO descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: add support for separate DP altmode devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Store the notification mask (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: mtk-xhci: Do not explicitly set the DMA mask (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: fix check for duplicate endpoints (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add ZLP support for 0x1bc7/0x9010 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix build warning seen with CONFIG_PM=n (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Fix an undefined reference to 'extcon_get_state' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: EHCI: Do not return -EPIPE when hub is disconnected (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit ME910G1 0x110a composition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: make sure interrupts are restored to correct state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: handle some XHCI_TRUST_TX_LENGTH quirks cases as default behaviour (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Increase STS_HALT timeout in xhci_suspend() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: only set D3hot for pci device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: fix USB3 device initiated resume race with roothub autosuspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix memory leak in xhci_add_in_port() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix incorrect DMA allocations for local memory pool drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: fix interface sanity checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix interface sanity check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: ueagle-atm: add missing endpoint check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: fix epic endpoint lookup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: mon: Fix a deadlock in usbmon between mmap and read (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Don't log an error on probe deferral (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: urb: fix URB structure initialization function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fix use after free in typec_register_port() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: fix a potential use after free (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Implement basic ELPG support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Add XUSB controller context (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Add support for XUSB context save/restore (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Enable runtime PM as late as possible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Reuse stored register base address (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Extract firmware enable helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Use CNR as firmware ready indicator (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Avoid a fixed duration sleep (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Separate firmware request and load (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Fix "tega" -> "tegra" typo (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: drop comment about 2 uhci drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb, kcov: collect coverage from hub_event (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for interrupt-parent, dmas and -gpio(s) (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: serial: Fix Kconfig indentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: Fix Kconfig indentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for "iommu-map" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Fix the semantics of of_is_ancestor_of() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Disable UAS on JMicron SATA enclosure (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: uas: heed CAPACITY_HEURISTICS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: uas: honor flag to avoid CAPACITY16 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Correct phy enable sequence (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-serial: cp201x: support Mark-10 digital force gauge (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Remove tcpc_config configuration mechanism (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-pci: Allow host runtime PM as default also for Intel Ice Lake xHCI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: Support running urb giveback in tasklet context (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add tracing for xhci doorbell register writes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: update event ring dequeue pointer on purpose (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Fix documentation for out values (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add device IDs for U-Blox C099-F9P (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for Foxconn T77W968 LTE modules (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Clarify documentation for fwnode_operations.add_links() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop port open flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop read-urb check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop port driver data accessors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop serial struct accessor (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop paranoid serial checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop paranoid port checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop redundant urb context check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: rip out broken interrupt handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: fix probe error handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: document MCS7810 detection hack (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: clean up device-type handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: fix remote wakeup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7720: fix remote wakeup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: chaoskey: fix error case of a timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for DW5821e with eSIM support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] appledisplay: fix error handling in the scheduled work (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop superfluous newlines (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop superfluous brackets (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: clean up runaway white space (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant endianness comments (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop unnecessary packed attributes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: clean up pointer declarations in driver data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: remove tower_abort_transfers() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: stop interrupt-out URB unconditionally (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant interrupt-in running flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop noisy disconnect messages (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant open_count check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: zero driver data at allocation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant NULL check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant MODULE_LICENSE ifdef (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: clean up runaway white space (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: drop redundant open-count check from release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: simplify disconnect handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Allow USB device to be warm reset in suspended state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for iommus, mboxes and io-channels (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Make it easy to add device links from DT properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: add USB ID to support Moxa UPort 2210 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Optimise ucsi_unregister() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: New error codes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Remove all bit-fields (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Remove struct ucsi_control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Remove the old API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: ccg: Move to the new API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: acpi: Move to the new API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Simplified registration and I/O API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: Give the connector fwnode to the port device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Remove unused members from struct typec_capability (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Remove the callback members from struct typec_capability (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Separate the operations vector (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Introduce typec_get_drvdata() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Copy everything from struct typec_capability during registration (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: Add support for USB2422 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: Drop some unused defines (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Add usb_role_switch_find_by_fwnode() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: reimplement line-speed handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Remove redundant vmap checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: whiteheat: fix line-speed endianness (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: whiteheat: fix potential slab corruption (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] UAS: Revert commit 3ae62a42090f ("UAS: fix alignment of scatter/gather segments") (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Revert commit 747668dbc061 ("usb-storage: Set virt_boundary_mask to avoid SG overflows") (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: fix __le32/__le64 accessors in debugfs code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: fix Immediate Data Transfer endianness (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix use-after-free regression in xhci clear hub TT implementation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix control-message timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: use unsigned size format specifiers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix ring-buffer locking (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Skip endpoints with 0 maxpacket length (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: pl2303: add support for PL2303HXN (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix read info leaks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver: core: Improve documentation for fwnode_operations.add_links() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Minor code formatting/style clean ups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ti_usb_3410_5052: clean up serial data access (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ti_usb_3410_5052: fix port-close races (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: Suppress problematic bind and unbind uevents (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblp: fix use-after-free on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix a signedness bug in tower_probe() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix memleak on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix memleak on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fix an IS_ERR() vs NULL bug in hd3ss3220_probe() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] device property: Fix the description of struct fwnode_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: fix NULL-derefs on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: use pr_err() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: drop redundant iowarrior mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: drop redundant disconnect mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix use-after-free after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix use-after-free on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: chaoskey: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix NULL-derefs on driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: drop redundant in-urb check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: fix use-after-free after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: fix NULL-deref on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: remove duplicated include from hd3ss3220.c (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: drop OOM message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: devio.c: Fix assignment of 0/1 to bool variables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: hd3ss3220_probe() warn: passing zero to 'PTR_ERR' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hub: Check device descriptor before resusciation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add dependency for TYPEC_HD3SS3220 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Add Tegra194 XHCI support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: tegra: Parameterize mailbox register addresses (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: image: microtek.c: Remove unused variable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220_irq() can be static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] kcov: remote coverage support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Create device links for all child-supplier depencencies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add functional dependency link from DT bindings (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: fix runtime PM after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblp: fix runtime PM after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: fix runtime PM after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-ext-caps.c: Add missing platform_device_put() on error in xhci_create_intel_xhci_sw_pdev() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix NULL pointer dereference in xhci_clear_tt_buffer_complete() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Increase STS_SAVE timeout in xhci_suspend() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Prevent deadlock when xhci adapter breaks during init (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: wait for CNR controller not ready bit in xhci resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix USB 3.1 capability detection on early xHCI 1.1 spec based hosts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Check all endpoints for LPM timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Prevent device initiated U1/U2 link pm if exit latency is too long (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix false warning message about wrong bounce buffer write length (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: add pm_ops (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: simplify reset helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: add vdd supply support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: driver for TI HD3SS3220 USB Type-C DRP port controller (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: use regulator_bulk_set_supply_names() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ftdi-elan: move a couple of statements to next line (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Fix Kconfig indentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix open after failed reset request (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix potential NULL-deref on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix deadlock on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix slab info leak at probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: displayport: Fix for the mode entering routine (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: ccg: Remove run_isr flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: use pr_err() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: drop redundant lcd mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: drop redundant disconnect mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: fix I/O after disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: usb: typec: tcpm: Fix a signedness bug in tcpm_fw_get_caps() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix NULL-derefs on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix use-after-free on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: Don't retry on unexpected errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: microtek: fix info-leak at probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: keyspan: fix NULL-derefs on open() and write() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for Cinterion CLS8 devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: SCSI glue: use dev_err instead of printk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit FN980 compositions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add device IDs for Sienna and Echelon PL-20 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbcore: Fix slab-out-of-bounds bug during device reset (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rio500: Fix lockdep violation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rio500: simplify locking (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: add USB GPIO based connection detection driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: create Kconfig file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: get usb-role-switch from parent (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Add fwnode_usb_role_switch_get() function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: roles: Introduce stubs for the exiting functions in role.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbip: Implement SG support to vhci-hcd and stub driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: intel: Enable static DRD mode for role switch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-ext-caps.c: Add property to disable Intel SW switch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: phy: add support for PHY calibration (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-rcar: Add a helper macro to set xhci_plat_priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add quirks member into struct xhci_plat_priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: fix possible memleak on setup address fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: add TSP bitflag to TRB tracing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: dbc: Use GFP_KERNEL instead of GFP_ATOMIC in 'xhci_dbc_alloc_requests()' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: dbc: Simplify error handling in 'xhci_dbc_alloc_requests()' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Fix build error without CONFIG_REGMAP_I2C (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: remove commented out dma wrappers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: remove a stale comment in hcd_alloc_coherent (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: use hcd_uses_dma to check for DMA capabilities (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: Simplify usb_decode_get_set_descriptor function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: Patch simplify usb_decode_set_clear_feature function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: Separated decoding functions from dwc3 driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-mtk: add an optional xhci_ck clock (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add support for FT232H CBUS gpios (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] device property: Remove duplicate test for NULL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: intel_xhci: Supplying software node for the role mux (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [phy] phy: core: document phy_calibrate() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb-skeleton: make comment block in line with coding style (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: only account once for mmap()'ed usb memory usage (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Call fusb302_debugfs_init earlier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Use usb_debug_root as root for our debugfs entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Use usb_debug_root as root for our debugfs entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ohci-nxp: enable compile-testing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: isd200: remove redundant assignment to variable sendToTransport (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Always provide fwnode for the port (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Remove unused properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbfs: Add a capability flag for runtime suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: remove single-use define for debugging (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: Add definitions for the USB2.0 hub TT requests (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: remove ehci-w90x900 driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbfs: Add ioctls for runtime power management (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbsevseg: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: trancevibrator: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: cxacru: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: lvstest: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cytherm: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cypress_cy7c63: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbtmc: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblp: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ueagle-atm: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: typec: ucsi_ccg: convert i2c driver to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: add support for dev_groups to struct usb_device_driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: add support for dev_groups to struct usb_driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbip: convert platform driver to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Disable USB2 LPM at shutdown (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: Prevent an abnormally restrictive PHY init skipping (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Remove dev_err() usage after platform_get_irq() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-hub: fix extra endianness conversion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: Remove call to memset after dma_alloc_coherent (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Switch to use fwnode_property_count_uXX() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Switch to use fwnode_property_count_uXX() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: host: oxu210hp-hcd: remove include/linux/oxu210hp.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: hcd-pci: Use dev_get_drvdata where possible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: resume ccgx i2c client (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: add runtime pm support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: refactor master_xfer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Registering real device entries for the muxes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: implement break control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add high baud rate support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ark3116: drop redundant init_termios (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: Supply CCGx driver the fw build info (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [phy] phy: core: Invoke pm_runtime_get_*/pm_runtime_put_* before invoking reset callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Document that of_graph_get_endpoint_by_regs needs of_node_put (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [phy] phy: make phy-core explicitly non-modular (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] OF: properties: add missing of_node_put (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: xhci: fix 'broken_suspend' placement in struct xchi_hcd (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: mark resume function as __maybe_unused (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: Use of_node_name_eq for node name comparisons (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: limit reads also for combined messages (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: adhere to I2C fault codes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: make pm_ops static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: add i2c bus driver for NVIDIA GPU (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [tty] complete ->et_serial() switchover (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb_wwan: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] whiteheat: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ti_usb_3410_5052: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ssu100: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] quatech2: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] pl2303: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] opticon: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] mos7840: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] mos7720: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] io_ti: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] io_edgeport: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] fdti_sio: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] f81232: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ark3116: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-serial: begin switching to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [tty] tty_ioctl(): start taking TIOCSERIAL into separate methods (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Remove device_connection_add() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Remove device_connection_find() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix device_pm_lock() locking for device links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver code: print symbolic error code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Fix the secondary firmware node handling in set_primary_fwnode() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: add device probe log helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Change delimiter in devlink device's name to "--" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Avoid NULL pointer dereference in device_get_next_child_node() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix sleeping in invalid context during device link deletion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add waiting_for_supplier sysfs file for devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add state_synced sysfs file for devices that support it (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [documentation] driver core: Expose device link details in sysfs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Avoid deferred probe due to fw_devlink_pause/resume() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Rename dev_links_info.defer_sync to defer_hook (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Don't do deferred probe in parallel with kernel_init thread (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Use software_node_unregister() when unregistering group of nodes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device_is_dependent() to linux/device.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Update device link status correctly for SYNC_STATE_ONLY links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: implement software_node_unregister() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [lib] lib/test_printf: Add tests for pfw printk modifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove unnecessary is_fwnode_dev variable in device_add() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers property: When no children in primary, try secondary (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix handling of SYNC_STATE_ONLY + STATELESS device links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix SYNC_STATE_ONLY device link implementation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove check in driver_deferred_probe_force_trigger() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: fw_devlink: Add support for batching fwnode parsing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Look for waiting consumers only for a fwnode's primary device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Move code to the right part of the file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device links from fwnode only for the primary device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] Revert "Revert "driver core: Set fw_devlink to "permissive" behavior by default"" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix handling of fw_devlink=permissive (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: fw_devlink_flags can be static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add fw_devlink kernel commandline option (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Reevaluate dev->links.need_for_probe as suppliers are added (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Skip unnecessary work when device doesn't have sync_state() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Add dev_has_sync_state() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Call sync_state() even if supplier has no consumers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Allow device link operations inside sync_state() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add sync_state driver/bus callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device link support for SYNC_STATE_ONLY flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix creation of device links with PM-runtime flags (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove device link creation limitation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Add missing description of new struct device_link field (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device link flag DL_FLAG_AUTOPROBE_CONSUMER (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Make driver core own stateful device links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix adding device links to probing suppliers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: core: Remove glue dirs from sysfs earlier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove the link if there is no driver with AUTO flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: silence device link messages unless debugging (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] base: core: Remove WARN_ON from link dependencies check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: export set_secondary_fwnode() to modules (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Allow register and unregister software node groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Export fwnode_get_name() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] Revert "software node: Simplify software_node_release() function" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: add basic tests for property entries (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: remove separate handling of references (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: implement reference properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: allow embedding of small arrays into property_entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: replace is_array with is_inline (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: unify PROPERTY_ENTRY_XXX macros (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: simplify property_entry_read_string_array() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: remove property_entry_read_uNN_array functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: get rid of property_set_pointer() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [firmware] efi/apple-properties: use PROPERTY_ENTRY_U8_ARRAY_LEN (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: mark internal macros with double underscores (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: introduce PROPERTY_ENTRY_XXX_ARRAY_LEN() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: remove DEV_PROP_MAX (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: clean up property_copy_string_array() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Allow fwnode_operations.add_links to differentiate errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Allow a device to wait on optional suppliers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add a function to obtain a node's prefix (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add fwnode_get_name for returning the name of a node (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add functions for accessing node's parents (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Move fwnode_get_parent() up (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Make argument to to_software_node const (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Get reference to parent swnode in get_parent op (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Add support for linking devices during device addition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add fwnode_to_dev() to look up device from fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Initialize the return value in software_node_find_by_name() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Initialize the return value in software_node_to_swnode() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Add fwnode_connection_find_match() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Add software_node_find_by_name() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: Introduce device lookup variants by device type (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: Introduce device lookup variants by fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Find connections also by checking the references (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Introduce fwnode_find_reference() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Add software_node_get_reference_args() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Use kobject name when finding child nodes by name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Add support for static node descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Simplify software_node_release() function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Allow node creation without properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add fwnode_graph_get_endpoint_by_id() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: Make two functions static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Implement get_named_child_node fwnode callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Find device connections also from device graphs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Prepare support for firmware described connections (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: drop use of BUS_ATTR() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: bus: convert to use BUS_ATTR_WO and RW (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: check if swnode is NULL before dereferencing it (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: check if pointer p is NULL before dereferencing it (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] sysfs: Disable lockdep for driver bind/unbind files (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: fix fwnode_graph_get_next_endpoint() documentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: remove need for a temporary string for the node name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] kobject: return error code if writing /sys/.../uevent fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Remove struct property_set (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Move device_add_properties() to swnode.c (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: Introducing software nodes to the firmware node framework (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [mm] powerpc/64s/radix: Fix mm_cpumask trimming race vs kthread_use_mm (Chris von Recklinghausen) [1862347] - [powerpc] powerpc: select ARCH_WANT_IRQS_OFF_ACTIVATE_MM (Chris von Recklinghausen) [1862347] - [fs] mm: fix exec activate_mm vs TLB shootdown and lazy tlb switching race (Chris von Recklinghausen) [1862347] - [arm64] arm64: pgtable: Ensure dirty bit is preserved across pte_wrprotect() (Andrew Jones) [1908439] - [arm64] arm64: pgtable: Fix pte_accessible() (Andrew Jones) [1908439] - [kernel] kernel: fork: properly initialize task_struct->task_struct_rh (Rafael Aquini) [1895892] - [s390] s390/dasd: Process FCES path event notification (Philipp Rudo) [1723823] - [s390] s390/dasd: Prepare for additional path event handling (Philipp Rudo) [1723823] - [s390] s390/dasd: Display FC Endpoint Security information via sysfs (Philipp Rudo) [1723823] - [s390] s390/dasd: Fix operational path inconsistency (Philipp Rudo) [1723823] - [s390] s390/dasd: Store path configuration data during path handling (Philipp Rudo) [1723823] - [s390] s390/dasd: Move duplicate code to separate function (Philipp Rudo) [1723823] - [s390] s390/dasd: Remove unused parameter from dasd_generic_probe() (Philipp Rudo) [1723823] - [s390] s390/cio: Add support for FCES status notification (Philipp Rudo) [1723823] - [s390] s390/cio: Provide Endpoint-Security Mode per CU (Philipp Rudo) [1723823] - [s390] s390/cio: Export information about Endpoint-Security Capability (Philipp Rudo) [1723823] - [net] net/af_iucv: fix null pointer dereference on shutdown (Philipp Rudo) [1903966] - [s390] s390/dasd: fix null pointer dereference for ERP requests (Philipp Rudo) [1903965] - [tools] selftests: netfilter: add command usage (Hangbin Liu) [1899374] - [tools] selftests: netfilter: simplify command testing (Hangbin Liu) [1899374] - [tools] selftests: netfilter: remove unused variable in make_file() (Hangbin Liu) [1899374] - [tools] selftests: netfilter: exit on invalid parameters (Hangbin Liu) [1899374] - [tools] selftests: netfilter: fix header example (Hangbin Liu) [1899374] - [tools] selftests: netfilter: kill running process only (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add MTU arguments to flowtables (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add checktool function (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add test case for conntrack helper assignment (Hangbin Liu) [1899374] - [tools] selftests: netfilter: extend nfqueue test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add nfqueue test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add ipvs tunnel test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add ipvs nat test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add ipvs test script (Hangbin Liu) [1899374] - [tools] selftests: netfilter: check icmp pkttoobig errors are set as related (Hangbin Liu) [1899374] - [hwtracing] intel_th: pci: Add Emmitsburg PCH support (Jiri Olsa) [1838703] - [hwtracing] intel_th: pci: Add Tiger Lake PCH-H support (Jiri Olsa) [1783492 1782729] - [hwtracing] intel_th: pci: Add Jasper Lake CPU support (Jiri Olsa) [1783097] - [hwtracing] intel_th: pci: Add Elkhart Lake CPU support (Jiri Olsa) [1783596] - [hwtracing] intel_th: pci: Add Elkhart Lake SOC support (Jiri Olsa) [1783596] - [hwtracing] intel_th: pci: Add Ice Lake CPU support (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix a NULL dereference when hub driver is not loaded (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: msu: Make stopping the trace optional (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix user-visible error codes (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: msu: Fix the unexpected state warning (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Disallow multi mode on devices where it's broken (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: msu: Fix window switching without windows (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix freeing IRQs (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix a double put_device() in error path (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729]- [idle] intel_idle: Fix intel_idle() vs tracing (David Arcari) [1903307] - [idle] intel_idle: Fix max_cstate for processor models without C-state tables (David Arcari) [1903307] - [idle] intel_idle: Ignore _CST if control cannot be taken from the platform (David Arcari) [1903307] - [idle] intel_idle: mention assumption that WBINVD is not needed (David Arcari) [1903307] - [idle] intel_idle: Remove uninitialized_var() usage (David Arcari) [1903307] - [idle] intel_idle: cleanup code to address out of order commits (David Arcari) [1903307] - [s390] Revert "s390/qeth: phase out OSN support" (Philipp Rudo) [1903962] - [net] net/smc: fix matching of existing link groups (Philipp Rudo) [1903961] - [netdrv] mlxsw: core: Use variable timeout for EMAD retries (Ivan Vecera) [1857594] - [netdrv] mlxsw: Fix firmware flashing (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Fix use-after-free in mlxsw_emad_trans_finish() (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Fix memory leak on module removal (Ivan Vecera) [1857594] - [netdrv] mlxsw: Only advertise link modes supported by both driver and device (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add a PFC test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add headroom handling test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: qos_lib: Add a wrapper for running mlnx_qos (Ivan Vecera) [1857594] - [tools] selftests: forwarding: devlink_lib: Support port-less topologies (Ivan Vecera) [1857594] - [tools] selftests: forwarding: devlink_lib: Add devlink_cell_size_get() (Ivan Vecera) [1857594] - [tools] selftests: forwarding: devlink_lib: Split devlink_..._set() into save & set (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Expose transceiver_overheat counter (Ivan Vecera) [1857594] - [netdrv] mlxsw: Update module's settings when module is plugged in (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Initialize netdev's module overheat counter (Ivan Vecera) [1857594] - [netdrv] mlxsw: Enable temperature event for all supported port module sensors (Ivan Vecera) [1857594] - [netdrv] mlxsw: Update transceiver_overheat counter according to MTWE (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Add an infrastructure to track transceiver overheat counter (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Query MTMP before writing to set only relevant fields (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Ports Module Administrative and Operational Status Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Port Module Plug/Unplug Event Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Management Temperature Warning Event Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Fix mlxsw_sp_acl_tcam_group_add()'s error path (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: simplify the return expression of __mlxsw_sp_router_init() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_qdisc: Disable port buffer autoresize with qdiscs (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Implement dcbnl_setbuffer / getbuffer (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Support two headroom modes (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Manage internal buffer in the hdroom code (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Introduce shared buffer ops (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Convert mlxsw_sp_port_headroom_init() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Inline mlxsw_sp_sb_max_headroom_cells() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Move here the new headroom code (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Move here the three-step headroom configuration from DCB (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Convert mlxsw_sp_port_pg_prio_map() to hdroom code (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Convert ETS handler fully to mlxsw_sp_hdroom_configure() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Split headroom autoresize out of buffer configuration (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track buffer sizes in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track lossiness in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track priorities in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track MTU in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Unify delay handling between PFC and pause (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Add struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Introduce fw_fatal health reporter (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring FW General Debug Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring FW Debug Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: Move fw_load_policy devlink param into core.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Push code doing params register/unregister into separate helpers (Ivan Vecera) [1857594] - [netdrv] mlxsw: Move fw flashing code into core.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: Bump firmware version to XX.2008.1310 (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Derive SBIB from maximum port speed & MTU (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Keep maximum speed around (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Keep maximum MTU around (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Introduce ptys_max_speed callback (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Extract a helper to get Ethernet attributes (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Extend hwmon interface with critical and emergency alarms (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Calculate MLXSW_HWMON_ATTR_COUNT more accurately (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Split temperature querying from show functions (Ivan Vecera) [1857594] - [netdrv] treewide: Use fallthrough pseudo-keyword (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Remove internal speeds from PTYS register (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Reduce runtime of tc-police scale test (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Fix mausezahn delay parameter in mirror_test() (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Increase burst size for burst test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Increase burst size for rate test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Decrease required rate accuracy (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Adjust default policer burst size for Spectrum-{2, 3} (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ptp: Use generic helper function (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: RED: Test offload of trapping on RED qevents (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_qdisc: Offload action trap for qevents (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Add early_drop trap (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Allow for per-ASIC traps initialization (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Allow for per-ASIC trap groups initialization (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: On policer_id_base_ref_count, use dec_and_test (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Use 'size_t' for array sizes (Ivan Vecera) [1857594] - [netdrv] devlink: Pass extack when setting trap's action and group's parameters (Ivan Vecera) [1857594] - [net] devlink: Add early_drop trap (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_cnt: Use flex_array_size() helper in memcpy() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Fix use-after-free in router init / de-init (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Free EMAD transactions using kfree_rcu() (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Increase scope of RCU read-side critical section (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use different trap group for externally routed packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Allow programming link-local host routes (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Add support for temperature thresholds reading for QSFP-DD transceivers (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Add ethtool support for QSFP-DD transceivers (Ivan Vecera) [1857594] - [netdrv] mlxsw: destroy workqueue when trap_register in mlxsw_emad_init (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Fix wrong SFP EEPROM reading for upper pages 1-3 (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Test policers' occupancy (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add scale test for tc-police (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: tc_restrictions: Test tc-police restrictions (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Add tc-police tests (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Offload FLOW_ACTION_POLICE (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_acl_flex_actions: Add police action (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_acl_flex_actions: Work around hardware limitation (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_policer: Add devlink resource support (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_policer: Add policer core (Ivan Vecera) [1857594] - [netdrv] mlxsw: resources: Add resource identifier for global policers (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add policer bandwidth limits (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Use mirror reason during Rx listener lookup (Ivan Vecera) [1857594] - [netdrv] mlxsw: pci: Retrieve mirror reason from CQE during receive (Ivan Vecera) [1857594] - [netdrv] mlxsw: pci: Add mirror reason field to CQEv2 (Ivan Vecera) [1857594] - [netdrv] mlxsw: trap: Add trap identifiers for mirrored packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Increase trap identifier to 10 bits (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Allow setting policer on a SPAN agent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Allow passing parameters to SPAN agents (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add support for mirroring towards CPU port (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Do not dereference destination netdev (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add driver private info to parms_set() callback (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add per-ASIC SPAN agent operations (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: add mirroring_pid_base to MOGCR register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add session_id and pid to MPAT register (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: RED: Test offload of mirror on RED early_drop qevent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_qdisc: Offload mirroring on RED qevent early_drop (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flow: Promote binder-type dispatch to spectrum.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Publish matchall data structures (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flow: Drop an unused field (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flow: Convert a goto to a return (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to enable / disable global mirroring triggers (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add support for global mirroring triggers (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Prepare for global mirroring triggers (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Move SPAN operations out of global file (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring Port Analyzer Global Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring Mirror Trigger Enable Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: pci: Fix use-after-free in case of failed devlink reload (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Remove inappropriate usage of WARN_ON() (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Add tests for ethtool extended state (Ivan Vecera) [1857594] - [tools] selftests: forwarding: forwarding.config.sample: Add port with no cable connected (Ivan Vecera) [1857594] - [tools] selftests: forwarding: ethtool: Move different_speeds_get() to ethtool_lib (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Add link extended state (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Port Diagnostics Database Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Move mlxsw_sp_port_type_speed_ops structs (Ivan Vecera) [1857594] - [netdrv] mlxsw: Move ethtool_ops to spectrum_ethtool.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Rename mlxsw_sp_port_headroom_set() (Ivan Vecera) [1857594] - [netdrv] mlxsw: Enforce firmware version for Spectrum-3 (Ivan Vecera) [1857594] - [netdrv] mlxsw: Bump firmware version to XX.2007.1168 (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Fix a spelling typo in spectrum_dcb.c (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Add a test for pedit munge tcp, udp sport, dport (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Support FLOW_ACTION_MANGLE for TCP, UDP ports (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_acl_flex_actions: Add L4_PORT_ACTION (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Split handling of pedit mangle by chip type (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Do not rely on machine endianness (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Adjust headroom buffers for 8x ports (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Use different get_trend() callbacks for different thermal zones (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add test for control packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Register ACL control traps (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Register layer 3 control traps (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Register layer 2 control traps (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Factor out common Rx listener function (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Move layer 3 exceptions to exceptions trap group (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: remove redundant initialization of pointer br_dev (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Allow programming link-local prefix routes (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Add packet traps for BFD packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Treat IPv6 link-local SIP as an exception (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Share one group for all locally delivered packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Move all trap groups under the same enum (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Do not hard code "thin" policer identifier (Ivan Vecera) [1857594] - [netdrv] mlxsw: switchx2: Move SwitchX-2 trap groups out of main enum (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Reduce priority of locally delivered packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for local routes and link-local destination (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use separate trap group for FID miss (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for various IPv6 packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename IPv6 ND trap group (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same switch case for identical groups (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use dedicated trap group for ACL trap (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Fix spelling mistake in trap's name (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use dedicated trap group for sampled packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for IPv6 ND and ARP packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename ARP trap group (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Remove unnecessary field (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Align TC and trap priority (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Assign non-zero quotas to TC 0 of the CPU port (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Change default rate and priority of DHCP packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Trap IPv4 DHCP packets in router (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for MLD and IGMP packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename IGMP trap group (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Do not hard code trap group name (Ivan Vecera) [1857594] - [tools] selftests: devlink_lib: Remove double blank line (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Store all trap data in one array (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Store all trap group data in one array (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Store all trap policer data in one array (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Move struct definition out of header file (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: tc_restrictions: add couple of test for the correct matchall-flower ordering (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: tc_restrictions: add test to check sample action restrictions (Ivan Vecera) [1857594] - [] selftests: mlxsw: rename tc_flower_restrictions.sh to tc_restrictions.sh (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flower: Forbid to insert flower rules in collision with matchall rules (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Forbid to insert matchall rules in collision with flower rules (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Expose a function to get min and max rule priority (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Put matchall list into substruct of flow struct (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flower: Expose a function to get min and max rule priority (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Restrict sample action to be allowed only on ingress (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Remove old SPAN API (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Use new analyzed ports list during speed / MTU change (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Convert flower-based mirroring to new SPAN API (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Convert matchall-based mirroring to new SPAN API (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to bind / unbind a SPAN agent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Wrap buffer change in a function (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Rename function (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to get / put an analyzed port (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to get / put a SPAN agent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Move flow offload binding into spectrum_flow.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Process matchall events from the same cb as flower (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Avoid copying sample values and use RCU pointer direcly instead (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Push per-port rule add/del into separate functions (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Move ingress indication into mall_entry (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Pass mall_entry as arg to mlxsw_sp_mall_port_sample_add() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Pass mall_entry as arg to mlxsw_sp_mall_port_mirror_add() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Use block variable in mlxsw_sp_acl_rule_del() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Push matchall bits into a separate file (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Push flow_block related functions into a separate file (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename acl_block to flow_block (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Move block helpers into inline header functions (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Replace zero-length array with flexible-array member (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Use 'refcount_t' for reference counting (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Remove unnecessary debug prints (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Rename parms() to parms_set() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Reduce nesting in mlxsw_sp_span_entry_configure() (Ivan Vecera) [1857594] - [netdrv] net/mlxfw: Remove unneeded semicolon (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Increase register field length to 13 bits (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Re-increase scale of IPv6 nexthop groups (Ivan Vecera) [1857594] - [net] ipv6: Fix use of anycast address with loopback (Ivan Vecera) [1899591] - [net] ipv6: addrconf_f6i_alloc - fix non-null pointer check to !IS_ERR() (Ivan Vecera) [1899591] - [net] ipv6: fix excessive RTF_ADDRCONF flag on ::1/128 local route (and others) (Ivan Vecera) [1899591] - [net] ipv6: Change addrconf_f6i_alloc to use ip6_route_info_create (Ivan Vecera) [1899591] - [net] ipv6: Move setting default metric for routes (Ivan Vecera) [1899591] - [net] Add extack argument to ip_fib_metrics_init (Ivan Vecera) [1899591] - [net] ipv6: do not leave garbage in rt->fib6_metrics (Ivan Vecera) [1899591] - [net] Move free of dst_metrics to helper (Ivan Vecera) [1899591] - [net] common metrics init helper for dst_entry (Ivan Vecera) [1899591] - [net] Move free of fib_metrics to helper (Ivan Vecera) [1899591] - [net] common metrics init helper for FIB entries (Ivan Vecera) [1899591] - [net] rtmsg_to_fib6_config() - use new style struct initializer instead of memset (Ivan Vecera) [1899591] - [powercap] powercap/intel_rapl: enumerate Psys RAPL domain together with package RAPL domain (Puneet Sethi) [1893463] - [powercap] powercap/intel_rapl: Fix domain detection (Puneet Sethi) [1893463]- [net] openvswitch: fix TTL decrement exception action execution (Eelco Chaudron) [1902610] - [net] openvswitch: fix error return code in validate_and_copy_dec_ttl() (Eelco Chaudron) [1902610] - [net] openvswitch: fix TTL decrement action netlink message format (Eelco Chaudron) [1902610] - [x86] hyperv: Enable 15-bit APIC ID if the hypervisor supports it (Vitaly Kuznetsov) [1903823] - [x86] kvm: Enable 15-bit extension when KVM_FEATURE_MSI_EXT_DEST_ID detected (Vitaly Kuznetsov) [1903823] - [documentation] x86/kvm: Reserve KVM_FEATURE_MSI_EXT_DEST_ID (Vitaly Kuznetsov) [1903823] - [iommu] hyper-v: Disable IRQ pseudo-remapping if 15 bit APIC IDs are available (Vitaly Kuznetsov) [1903823] - [x86] apic: Support 15 bits of APIC ID in MSI where available (Vitaly Kuznetsov) [1903823] - [x86] msi: Provide msi message shadow structs (Vitaly Kuznetsov) [1903823] - [kernel] genirq/msi: allow shadow declarations of msi_msg:: $member (Vitaly Kuznetsov) [1903823] - [x86] ioapic: Handle Extended Destination ID field in RTE (Vitaly Kuznetsov) [1903823] - [x86] apic: Always provide irq_compose_msi_msg() method for vector domain (Vitaly Kuznetsov) [1903823] - [x86] apic: Cleanup delivery mode defines (Vitaly Kuznetsov) [1903823] - [x86] apic/uv: Fix inconsistent destination mode (Vitaly Kuznetsov) [1903823] - [x86] msi: Only use high bits of MSI address for DMAR unit (Vitaly Kuznetsov) [1903823] - [x86] msi: Move compose message callback where it belongs (Vitaly Kuznetsov) [1903823] - [kernel] genirq/chip: Use the first chip in irq_chip_compose_msi_msg() (Vitaly Kuznetsov) [1903823] - [x86] apic: Fix x2apic enablement without interrupt remapping (Vitaly Kuznetsov) [1903823] - [tools] perf test: Fix msan uninitialized use (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Fix the ratio comments of miss-events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Free formats for perf pmu parse test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Do not free metric when failed to resolve (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Free metric when it failed to resolve (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Release expr_parse_ctx after testing (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Fix memory leaks in parse-metric test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-event: Fix memory leak in evsel->unit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix cpu/thread map leak (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Fix some memory leaks - part 2 (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Fix some memory leaks (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Free aliases for PMU event map aliases test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf vendor events amd: Remove trailing commas (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Leader sampling shouldn't clear sample period (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Prevent override of attr->sample_period for libpfm4 events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Set PERF_RECORD_PERIOD if attr->freq is set (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Fix 2 memory sanitizer warnings (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Fix the "signal" test inline assembly (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record/stat: Explicitly call out event modifiers in the documentation (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fix build warning on 32-bit arches (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf jevents: Fix suspicious code in fixregex() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Use uintptr_t when casting numbers to pointers (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf report: Disable ordered_events for raw dump (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Correct SNOOPX field offset (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Fix corrupt data after perf inject from (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf cs-etm: Fix corrupt data after perf inject from (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Avoid an uninitialized read when using fake PMUs (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Fix out of bounds array access in the print_counters() evlist method (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Set NULL sentinel in pmu_events table in "Parse and process metrics" test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Set exclude_guest=1 for user-space counting (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Correct the help info of option "--no-bpf-event" (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Use zd for size_t printf formats on 32-bit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf: arm-spe: Fix check error when synthesizing events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf symbols: Add mwait_idle_with_hints.constprop.0 to the list of idle symbols (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf sched timehist: Fix use of CPU list with summary option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Fix basic bpf filtering test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Make option description initials all capital letters (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf build-ids: Fall back to debuginfod query if debuginfo not found (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Remove dead code in parse_nodes_opt() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Update POWER9 metrics to utilize other metrics (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add change log (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf: ftrace: Add set_tracing_options() to set all trace options (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option --tid to filter by thread id (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option -D/--delay to delay tracing (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf: ftrace: Allow set graph depth by '--graph-opts' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for trace option tracing_thresh (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option 'verbose' to show more info for graph tracer (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for tracing option 'irq-info' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for trace option funcgraph-irqs (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for trace option sleep-time (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for tracing option 'func_stack_trace' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add general function to parse sublevel options (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option '--inherit' to trace children processes (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Show trace column header (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option '-m/--buffer-size' to set per-cpu buffer size (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Factor out function write_tracing_file_int() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option '-F/--funcs' to list available functions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Select function/function_graph tracer automatically (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Use numa_node_to_cpus() to bind tasks to nodes (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Fix cpumask memory leak in node_has_cpus() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools build feature: Quote CC and CXX for their arguments (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Fix module symbol processing (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Rename 'enum dso_kernel_type' to 'enum dso_space_type' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Fix man page typos (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Allow multiple probes in record+script_probe_vfs_getname.sh (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench mem: Always memset source before memcpy (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf sched: Prefer sched_waking event when it exists (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Fix a couple of spelling mistakes in options text (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Fix benchmark names (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Fix number of processes in "2x3-convergence" test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf trace beauty: Use the autogenerated protocol family table (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf trace beauty: Add script to autogenerate socket families table (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Add 'tod' field to display time of day (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Change the 'enum perf_output_field' enumerators to be 64 bits (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf data: Add support to store time of day in CTF data conversion (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Move clockid_res_ns under clock struct (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf header: Store clock references for -k/--clockid option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add clockid_name function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf clockid: Move parse_clockid() to new clockid object (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Handle possible strdup() error in tep_add_plugin_path() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fixed description of tep_add_plugin_path() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fixed type in PRINT_FMT_STING (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fixed broken indentation in parse_ip4_print_args() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Improve error handling of tep_plugin_add_option() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fix typo in tep_plugin_add_option() description (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Handle strdup() error in parse_option_name() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Document tep_load_plugins_hook() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evsel: Extend message to mention CAP_SYS_PTRACE and perf security doc link (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Add support for decoding PSB+ only (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Add support for decoding FUP/TIP only (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add itrace 'q' option for quicker, less detailed decoding (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Time filter logged perf events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Use itrace debug log flags to suppress some messages (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add optional log flags to the itrace 'd' option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Use itrace error flags to suppress some errors (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add optional error flags to the itrace 'e' option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add missing itrace options to help text (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Improve aux_output not supported error (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Fix duplicate branch after CBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Fix FUP packet state (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Introduce --control fd:ctl-fdoptions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Implement control commands handling (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Extend -D, --delay option with -1 value (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Introduce --control fd:ctl-fdoptions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Add benchmark of find_next_bit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools build feature: Use CC and CXX from parent (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename group_list to metric_list (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename struct egroup to metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add metric group test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Make compute_single function more precise (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add recursion check when processing nested metrics (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add DCache_L2 to metric parse test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add cache_miss_cycles to metric parse test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add events for the current list (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Compute referenced metrics (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add referenced metrics to hash data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Collect referenced metrics in struct metric_expr (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Collect referenced metrics in struct metric_ref_node (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename __metricgroup__add_metric to __add_metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add add_metric function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add macros for iterating map events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add expr__del_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Change expr__get_id to return struct expr_id_data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add expr__add_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Fix memory leak in expr__add_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Ensure sample_period is set libpfm4 events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Fix term parsing for raw syntax (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Allow r0x event syntax (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: No need to cache the PMUs in ARM SPE auxtrace init routine (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Add basic syscall benchmark (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Implement control commands handling (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: extend -D, --delay option with -1 value (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Factor out event handling loop into dispatch_events() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Factor out body of event handling loop for fork case (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Move target check to loop control statement (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Factor out body of event handling loop for system wide (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Implement control command handling functions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Introduce control file descriptors (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Avoid counting of nonfilterable fdarray fds (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Add flags to fdarray fds objects (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Avoid internal moving of fdarray fds (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add 'struct expr_id_data' to keep expr value (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename expr__add_id() to expr__add_val() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Warn if the target function is a GNU indirect function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Fix memory leakage when the probe point is not found (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Fix wrong variable warning when the probe point is not found (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Avoid setting probes on the same address for the same event (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf kmem: Pass additional arguments to 'perf record' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Report BPF errors (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Show text poke address symbol (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Add option --show-text-poke-events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Add support for text poke events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add support for PERF_RECORD_TEXT_POKE (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf annotate: Fix non-null terminated buffer returned by readlink() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf inject jit: Remove //anon mmap events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf symbols: Add s390 idle functions 'psw_idle' and 'psw_idle_exit' to list of idle symbols (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Fix reporting of unknown SVM exit reasons (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Change to SPDX License format (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add builtin handler for trace_marker_raw (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Move kernel_stack event handler to "function" plugin (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add plugin for decoding syscalls/sys_enter_futex (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add offset option for function plugin (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add more SVM exit reasons (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add plugin for tlb_flush (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Optimize pretty_print() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add support for more printk format specifiers (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Introduced new traceevent API, for adding new plugins directories (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add interface for options to plugins (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add tep_load_plugins_hook() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Disable a subset of bison warnings (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Disable a subset of flex warnings (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Declare bison header file output (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf expr: Add missing headers noticed when building with NO_LIBBPF=1 (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Declare flex header file output (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Add flex debug build flag (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Add bison debug build flag (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Use automatic variable for yacc input (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Use automatic variable for flex input (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' branch_type methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' sample_id_all methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' sample_type methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' strerror methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' 'add' evsel methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Improve CPU core PMU HW event list ordering (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: List kernel supplied event aliases for arm64 (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf cs-etm: Allow no CoreSight sink to be specified on command line (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf expr: Add < and > operators (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf expr: Add d_ratio operation (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Fixup some evsel/evlist method names (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Add parse metric test for frontend metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Add parse metric test for ipc metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add test_generic_metric function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Release metric_events rblist (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Factor out prepare_metric function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add metricgroup__parse_groups_test function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add map to parse_groups() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add fake_pmu to parse_group() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse: Factor out parse_groups() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Add another metric parsing test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Add a perf_pmu__fake object to use with __parse_events() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse: Provide a way to pass a fake_pmu to parse_events() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Factor check_parse_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add fake pmu support (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf annotate: Remove unneeded conversion to bool (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools/: replace HTTP links with HTTPS ones (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools, build: Propagate build failures from tools/build/Makefile.build (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] x86/cpufeatures: Add Architectural LBRs feature bit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/rapl: Add support for Intel SPR platform (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/rapl: Support multiple RAPL unit quirks (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/rapl: Fix missing psys sysfs attributes (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf/core: Take over CAP_SYS_PTRACE creds to CAP_PERFMON capability (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf: Expose get/put_callchain_entry() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [include] perf: : drop a duplicated word (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Remove task_ctx_size (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Create kmem_cache for the LBR context data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf/core: Use kmem_cache to allocate the PMU specific data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf/core: Factor out functions to allocate/free the task_ctx_data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Support Architectural LBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Factor out intel_pmu_store_lbr (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Factor out rdlbr_all() and wrlbr_all() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Mark the {rd, wr}lbr_{to, from} wrappers __always_inline (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Unify the stored format of LBR information (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Support LBR_CTL (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] x86/msr-index: Add bunch of MSRs for Arch LBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Expose CPUID enumeration bits for arch LBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Use dynamic data structure for task_ctx (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Factor out a new struct for generic optimization (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Add the function pointers for LBR save and restore (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Add a function pointer for LBR read (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Add a function pointer for LBR reset (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Keep LBR records unchanged in host context for guest usage (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Add constraint to create guest LBR event without hw counter (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/lbr: Add interface to get LBR information (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Provide stubs of KVM helpers for non-Intel CPUs (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/core: Refactor hw->idx checks and cleanup (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Fix variable types for LBR registers (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf: Add perf text poke event (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [uapi] perf: Add perf_event_mmap_page::cap_user_time_short ABI (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] sev-es: Do not support MMIO to/from encrypted memory (Vitaly Kuznetsov) [1868080] - [x86] head/64: Check SEV encryption before switching to kernel page-table (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Sanity-check CPUID results in the early #VC handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Check SEV encryption in 64-bit boot-path (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Introduce sev_status (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Use GHCB accessor for setting the MMIO scratch buffer (Vitaly Kuznetsov) [1868080] - [x86] head/64: Disable stack protection for head$(BITS).o (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Check required CPU features for SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] efi: Add GHCB mappings when SEV-ES is active (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle NMI State (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Support CPU offline/online (Vitaly Kuznetsov) [1868080] - [x86] head/64: Don't call verify_cpu() on starting APs (Vitaly Kuznetsov) [1868080] - [x86] smpboot: Load TSS and getcpu GDT entry before loading IDT (Vitaly Kuznetsov) [1868080] - [x86] realmode: Setup AP jump table (Vitaly Kuznetsov) [1868080] - [x86] realmode: Add SEV-ES specific trampoline entry point (Vitaly Kuznetsov) [1868080] - [x86] vmware: Add VMware-specific handling for VMMCALL under SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] kvm: Add KVM-specific VMMCALL handling under SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] paravirt: Allow hypervisor-specific VMMCALL handling under SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle #DB Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle #AC Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle VMMCALL Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MWAIT/MWAITX Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MONITOR/MONITORX Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle INVD Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle RDPMC Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle RDTSC(P) Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle WBINVD Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle DR7 read/write events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MSR events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MMIO String Instructions (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MMIO events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle instruction fetches from user-space (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Wire up existing #VC exit-code handlers (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add a Runtime #VC Exception Handler (Vitaly Kuznetsov) [1868080] - [x86] entry/64: Add entry code for #VC handler (Vitaly Kuznetsov) [1868080] - [x86] dumpstack/64: Add noinstr version of get_stack_info() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Adjust #VC IST Stack on entering NMI handler (Vitaly Kuznetsov) [1868080] - [x86] boot/64: Explicitly map boot_params and command line (Vitaly Kuznetsov) [1868080] - [x86] boot/64: Initialize 5-level paging variables earlier (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Allocate and map an IST stack for #VC handler (Vitaly Kuznetsov) [1868080] - [x86] debug: Allow a single level of #DB recursion (Vitaly Kuznetsov) [1868080] - [x86] entry: Remove DBn stacks (Vitaly Kuznetsov) [1868080] - [x86] entry, nmi: Disable #DB (Vitaly Kuznetsov) [1868080] - [x86] nmi: Protect NMI entry against instrumentation (Vitaly Kuznetsov) [1868080] - [x86] entry: Introduce local_db_{save, restore}() (Vitaly Kuznetsov) [1868080] - [x86] db: Split out dr6/7 handling (Vitaly Kuznetsov) [1868080] - [x86] Replace ist_enter() with nmi_enter() (Vitaly Kuznetsov) [1868080] - [x86] traps: Stop using ist_enter/exit() in do_int3() (Vitaly Kuznetsov) [1868080] - [x86] entry: Get rid of ist_begin/end_non_atomic() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Setup per-CPU GHCBs for the runtime handler (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Setup GHCB-based boot #VC handler (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Setup an early #VC handler (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Compile early handler code into kernel image (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Print SEV-ES info into the kernel log (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add SEV-ES Feature Detection (Vitaly Kuznetsov) [1868080] - [x86] head/64: Move early exception dispatch to C code (Vitaly Kuznetsov) [1868080] - [x86] idt: Make IDT init functions static inlines (Vitaly Kuznetsov) [1868080] - [x86] head/64: Install a CPU bringup IDT (Vitaly Kuznetsov) [1868080] - [x86] head/64: Switch to initial stack earlier (Vitaly Kuznetsov) [1868080] - [x86] head/64: Load segment registers earlier (Vitaly Kuznetsov) [1868080] - [x86] irq/64: Update stale comment (Vitaly Kuznetsov) [1868080] - [x86] head/64: Load GDT after switch to virtual addresses (Vitaly Kuznetsov) [1868080] - [x86] head/64: Install startup GDT (Vitaly Kuznetsov) [1868080] - [x86] idt: Split idt_data setup out of set_intr_gate() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add CPUID handling to #VC handler (Vitaly Kuznetsov) [1868080] - [x86] fpu: Move xgetbv()/xsetbv() into a separate header (Vitaly Kuznetsov) [1868080] - [x86] cpu: Use XGETBV and XSETBV mnemonics in fpu/internal.h (Vitaly Kuznetsov) [1868080] - [x86] fpu: Reset MXCSR to default in kernel_fpu_begin() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add support for handling IOIO exceptions (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Unmap GHCB page before booting the kernel (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Setup a GHCB-based VC Exception handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add set_page_en/decrypted() helpers (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Check return value of kernel_ident_mapping_init() (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Call set_sev_encryption_mask() earlier (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add stage1 #VC handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Change add_identity_map() to take start and end (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Don't pre-map memory in KASLR code (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Always switch to own page table (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add page-fault handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Rename kaslr_64.c to ident_map_64.c (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add IDT Infrastructure (Vitaly Kuznetsov) [1868080] - [x86] traps: Split trap numbers out in a separate header (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Disable red-zone usage (Vitaly Kuznetsov) [1868080] - [x86] insn: Add insn_has_rep_prefix() helper (Vitaly Kuznetsov) [1868080] - [x86] insn: Add insn_get_modrm_reg_off() (Vitaly Kuznetsov) [1868080] - [x86] umip: Factor out instruction decoding (Vitaly Kuznetsov) [1868080] - [x86] umip: Factor out instruction fetch (Vitaly Kuznetsov) [1868080] - [tools] x86/insn: Make inat-tables.c suitable for pre-decompression code (Vitaly Kuznetsov) [1868080] - [x86] traps: Move pf error codes to (Vitaly Kuznetsov) [1868080] - [x86] cpufeatures: Add SEV-ES CPU feature (Vitaly Kuznetsov) [1868080] - [x86] kvm: svm: Use __packed shorthand (Vitaly Kuznetsov) [1868080] - [x86] kvm: svm: Add GHCB Accessor functions (Vitaly Kuznetsov) [1868080] - [x86] cpu: Unify cpu_init() (Vitaly Kuznetsov) [1868080] - [x86] insn-eval: Add support for 64-bit kernel mode (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Get rid of GOT fixup code (Vitaly Kuznetsov) [1868080] - [kernel] x86/boot/compressed: Force hidden visibility for all symbol references (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Move .got.plt entries out of the .got section (Vitaly Kuznetsov) [1868080] - [x86] boot: Correct relocation destination on old linkers (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Switch to __KERNEL_CS after GDT is loaded (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Fix reloading of GDTR post-relocation (Vitaly Kuznetsov) [1868080] - [x86] boot: Reload GDTR after copying to the end of the buffer (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Don't declare __force_order in kaslr_64.c (Vitaly Kuznetsov) [1868080] - [mm] mm/userfaultfd: do not access vma->vm_mm after calling handle_userfault() (Philipp Rudo) [1903968] - [s390] s390/ap: fix ap devices reference counting (Philipp Rudo) [1903967] - [infiniband] RDMA/cxgb4: Validate the number of CQEs (Kamal Heib) [1894720] - [net] treewide: Use fallthrough pseudo-keyword (Petr Oros) [1892748] - [net] devlink: Remove overzealous WARN_ON with snapshots (Petr Oros) [1892748] - [net] devlink: ignore -EOPNOTSUPP errors on dumpit (Petr Oros) [1892748] - [net] devlink: Always use user_ptr[0] for devlink and simplify post_doit (Petr Oros) [1892748] - [net] devlink: Constify devlink instance pointer (Petr Oros) [1892748] - [net] devlink: Add comment for devlink instance lock (Petr Oros) [1892748] - [net] devlink: Do not hold devlink mutex when initializing devlink fields (Petr Oros) [1892748] - [docs] ice: add documentation for device-caps region (Petr Oros) [1892748] - [net] devlink: remove new uninitialized_var() usage (Petr Oros) [1892748] - [docs] networking: convert sja1105's devlink info to RTS (Petr Oros) [1892748] - [net] devlink: refactor end checks in devlink_nl_cmd_region_read_dumpit (Petr Oros) [1892748] - [docs] ice: cleanup language in ice.rst for fw.app (Petr Oros) [1892748] - [docs] devlink: don't wrap commands in rST shell blocks (Petr Oros) [1892748] - [net] devlink: Protect devlink port list traversal (Petr Oros) [1895042] - [net] devlink: Fix per port reporter fields initialization (Petr Oros) [1895042] - [net] devlink: Fix use-after-free when destroying health reporters (Petr Oros) [1895042] - [net] devlink: introduce the health reporter test command (Petr Oros) [1895042] - [net] devlink: Add devlink health port reporters API (Petr Oros) [1895042] - [net] devlink: Implement devlink health reporters on per-port basis (Petr Oros) [1895042] - [net] devlink: Create generic devlink health reporter search function (Petr Oros) [1895042] - [net] devlink: Rework devlink health reporter destructor (Petr Oros) [1895042] - [net] devlink: Refactor devlink health reporter constructor (Petr Oros) [1895042]- [md] dm writecache: fix the maximum number of arguments (Mike Snitzer) [1895117] - [md] dm writecache: advance the number of arguments when reporting max_age (Mike Snitzer) [1895117] - [x86] x86/cpu/amd: Make erratum #1054 a legacy erratum (Michael Petlan) [1791459] - [x86] x86/cpu/amd: Enable the fixed Instructions Retired counter IRPERF (Michael Petlan) [1791459] - [s390] s390/early: improve machine detection (Claudio Imbrenda) [1896307] - [infiniband] IB/mlx5: Fix fall-through warnings for Clang (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix corruption of reg_pages in mlx5_ib_rereg_user_mr() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Properly convey driver version to firmware (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: DR, Proper handling of unsupported Connect-X6DX SW steering (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Enforce HW TX csum offload with kTLS (Alaa Hleihel) [1858561] - [netdrv] net: mlx5e: fix fs_tcp.c build when IPV6 is not enabled (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix wrong address reclaim when command interface is down (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Fail mlx5_esw_modify_vport_rate if qos disabled (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Disable QoS when min_rates on all VFs are zero (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Clear bw_share upon VF disable (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add handling of port type in rule deletion (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix check if netdev is bond slave (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Set IPsec WAs only in IP's non checksum partial case (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix incorrect access of RCU-protected xdp_prog (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix VXLAN synchronization after function reload (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Avoid extack error log for disabled vport (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix deletion of duplicate rules (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Protect encap route dev from concurrent release (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix modify header actions memory leak (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix devlink deadlock on net namespace deletion (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix type warning of sizeof in __mlx5_ib_alloc_counters() (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Clarify what the UMR is for when creating MRs (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Disable IB_DEVICE_MEM_MGT_EXTENSIONS if IB_WR_REG_MR can't work (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Make mkeys always owned by the kernel's PD when not enabled (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Use set_mkc_access_pd_addr_fields() in reg_create() (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Remove dead check for EAGAIN after alloc_mr_from_cache() (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix potential race between destroy and CQE poll (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: IPsec: Use kvfree() for memory allocated with kvzalloc() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: TC: Remove unused parameter from mlx5_tc_ct_add_no_trk_match() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Setup all vports' metadata to support peer miss rule (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Dedicated metadata for uplink vport (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Check and enable metadata support flag before using (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Don't call timecounter cyc2time directly from 1PPS flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Release clock lock before scheduling a PPS work (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Rename ptp clock info (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Always use container_of to find mdev pointer from clock struct (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix uninitialized variable warning (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: IPsec: Add Connect-X IPsec Tx data path offload (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: IPsec: Add TX steering rule per IPsec state (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: Add NIC TX domain namespace (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: Enhanced TX MPWQE for SKBs (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move TX code into functions to be used by MPWQE (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Rename xmit-related structs to generalize them (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Generalize TX MPWQE checks for full session (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Support multiple SKBs in a TX WQE (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move the TLS resync check out of the function (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Unify constants for WQE_EMPTY_DS_COUNT (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Small improvements for XDP TX MPWQE logic (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Refactor xmit functions (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move mlx5e_tx_wqe_inline_mode to en_tx.c (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use struct assignment to initialize mlx5e_tx_wqe_info (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Refactor inline header size calculation in the TX path (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add IPv6 traffic class (DSCP) header rewrite support (Alaa Hleihel) [1889981 1858561] - [netdrv] net/mlx5e: Add LAG warning if bond slave is not lag master (Alaa Hleihel) [1858561 1851709] - [netdrv] net/mlx5e: Add LAG warning for unsupported tx type (Alaa Hleihel) [1858561 1851709] - [netdrv] net/mlx5e: Return a valid errno if can't get lag device index (Alaa Hleihel) [1858561 1851709] - [netdrv] net/mlx5e: Fix race condition on nhe->n pointer in neigh update (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix VLAN create flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix VLAN cleanup flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix return status when setting unsupported FEC mode (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix driver's declaration to support GRE offload (Alaa Hleihel) [1858561 1819619] - [netdrv] net/mlx5e: CT, Fix coverity issue (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add resiliency in Striding RQ mode for packets larger than MTU (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix error path for RQ alloc (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix request_irqs error flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: cmdif, Avoid skipping reclaim pages if FW is not accessible (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add retry mechanism to the command entry index allocation (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: poll cmd EQ in case of command timeout (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Avoid possible free of command entry while timeout comp handler (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix a race when moving command interface to polling mode (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: mlx5e_fec_in_caps() returns a boolean (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: TLS, Do not expose FPGA TLS counter if not supported (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix using wrong stats_grps in mlx5e_update_ndo_stats() (Alaa Hleihel) [1870593 1858561] - [netdrv] net/mlx5e: Fix multicast counter not up-to-date in "ip -s" (Alaa Hleihel) [1858561 1693130] - [netdrv] net/mlx5e: Fix endianness when calculating pedit mask first bit (Alaa Hleihel) [1889981 1858561] - [netdrv] net/mlx5e: Enable adding peer miss rules only if merged eswitch is supported (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: CT: Fix freeing ct_label mapping (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix memory leak of tunnel info when rule under multipath not ready (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use synchronize_rcu to sync with NAPI (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use RCU to protect rq->xdp_prog (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix FTE cleanup (Alaa Hleihel) [1858561] - [infiniband] mlx5: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix flow destination setting for RDMA TX flow table (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Delete extra dump stack that gives nothing (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: convert to new udp_tunnel infrastructure (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: DR, Change push vlan action sequence (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enable users to change VF/PF representors carrier state (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Delete unreachable code (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: drop unnecessary list_empty (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: DR, Reduce print level for matcher print (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add support for PCI relaxed ordering (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use indirect call wrappers for RX post WQEs functions (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move exposure of datapath function to txrx header (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: RX, Re-work initializaiton of RX function pointers (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Use eswitch total_vports (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: E-switch, Reuse total_vports and avoid duplicate nvports (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: E-switch, Consider maximum vf vports for steering init (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: Add function ID to reclaim pages debug log (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Hold pages RB tree per VF (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Set mkey relaxed ordering by UMR with ConnectX-7 (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Use MLX5_SET macro instead of local structure (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add missing srcu_read_lock in ODP implicit flow (Alaa Hleihel) [1858561] - [include] RDMA/mlx5: ConnectX-7 new capabilities to set relaxed ordering by UMR (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Allow SQ modification (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Do not request completion on every single UMR WQE (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: RX, Avoid indirect call in representor CQE handling (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: XDP, Avoid indirect call in TX flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: IPsec: Add Connect-X IPsec ESN update offload support (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: IPsec: Add Connect-X IPsec Rx data path offload (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: IPsec: Add IPsec steering in local NIC RX (Alaa Hleihel) [1858561 1790222] - [include] net/mlx5: Add IPsec related Flow steering entry's fields (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: IPsec: Add HW crypto offload support (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: Accel, Add core IPsec support for the Connect-X family (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: E-switch, Reduce dependency on num_vfs during mode set (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: E-switch, Avoid function change handler for non ECPF (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Make MLX5_EN_TLS non-prompt (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Enable count action for rules with allow action (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add interface changes required for VDPA (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add VDPA interface type to supported enumerations (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Support setting access rights of dma addresses (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move devlink port register and unregister calls (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Remove unused to_mibmr function (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, When eswitch is unsupported, return -EOPNOTSUPP (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Added support for 100Gbps per lane link modes (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Delete one-time used functions (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Cleanup DEVX initialization flow (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Separate flow steering logic from main.c (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Separate counters from main.c (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Separate restrack callbacks initialization from main.c (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Limit the scope of mlx5_ib_enable_driver function (Alaa Hleihel) [1858561] - [infiniband] RDMA: Move XRCD to be under ib_core responsibility (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Introduce UAPI to query PD attributes (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Implement the query ucontext functionality (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Refactor mlx5_ib_alloc_ucontext() response (Alaa Hleihel) [1858561] - [infiniband] RDMA/core: Optimize XRC target lookup (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Get XRCD number directly for the internal use (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Enable QP number request when creating IPoIB underlay QP (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Introduce ODP prefetch counter (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enhance TX timeout recovery (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enhance ICOSQ data on RX reporter's diagnose (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add EQ info to TX/RX reporter's diagnose (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enhance CQ data on diagnose output (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Rename reporter's helpers (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add helper to get the RQ WQE counter (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add helper to get RQ WQE's head (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move RQ helpers to txrx.h (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Align RX/TX reporters diagnose output format (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Remove redundant RQ state query (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add a flush timeout define (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Change reporters create functions to return void (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: fix memory leak of tls (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix build break when CONFIG_XPS is not set (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Add kTLS RX HW offload support (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Use kernel API to extract private offload context (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Improve TLS feature modularity (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Accel, Expose flow steering API for rules add/del (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Receive flow steering framework for accelerated TCP flows (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: API to manipulate TTC rules destinations (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Refactor build channel params (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Turn XSK ICOSQ into a general asynchronous one (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: kTLS, Improve TLS params layout structures (Alaa Hleihel) [1858561] - [include] net/mlx5: Avoid RDMA file inclusion in core driver (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: vxlan: Return bool instead of opaque ptr in port_lookup() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move TC-specific function definitions into MLX5_CLS_ACT (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Use kfree(ft->g) in arfs_create_groups() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: FWTrace: Add missing space (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add support to get MR resource in RAW format (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add support to get CQ resource in RAW format (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add support to get QP resource in RAW format (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add support in query QP, CQ and MKEY segments (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Export resource dump interface (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Supporting setting devlink port function mac address (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Split mac address setting function for using state_lock (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Support querying port function mac address (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Move helper to eswitch layer (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Introduce and use eswitch support check helper (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: Constify mac address pointer (Alaa Hleihel) [1858561] - [tty] serial: 8250: export serial8250_do_set_divisor() (Steve Best) [1784119] - [tty] serial: 8250: introduce get_divisor() and set_divisor() hook (Steve Best) [1784119] - [tty] serial: 8250: let serial8250_get_divisor() get uart_port * as param (Steve Best) [1784119] - [tty] serial: 8250_lpss: Add ->setup() for Elkhart Lake ports (Steve Best) [1784119] - [tty] serial: 8250_lpss: Switch over to MSI interrupts (Steve Best) [1784119] - [tty] serial: 8250_lpss: Enable HS UART on Elkhart Lake (Steve Best) [1784119] - [tty] serial: 8250_lpss: Get rid of custom LPSS_DEVICE() macro (Steve Best) [1784119] - [tty] serial: 8250_lpss: register DMA IRQ and pool with instance ID (Steve Best) [1784119] - [tty] serial: 8250_lpss: add fractional divisor support (Steve Best) [1784119] - [tty] serial: 8250_lpss: switch to use 8250_dwlib library (Steve Best) [1784119] - [tty] tty: serial: Use the correct style for SPDX License Identifier (Steve Best) [1784119] - [tty] serial: 8250_dw: split Synopsys DesignWare 8250 common functions (Steve Best) [1784119] - [tty] 8250_lpss: check null return when calling pci_ioremap_bar (Steve Best) [1784119] - [dma] dmaengine: dw: Remove misleading is_private property (Steve Best) [1784119] - [tty] serial: 8250: fix null-ptr-deref in serial8250_start_tx() (John Linville) [1903272] {CVE-2020-15437} - [i2c] i2c: designware-pci: Fix BUG_ON during device removal (Steve Best) [1784122] - [i2c] i2c: designware-pci: Add support for Elkhart Lake PSE I2C (Steve Best) [1784122] - [i2c] i2c: designware-pci: Switch over to MSI interrupts (Steve Best) [1784122] - [mmc] mmc: sdhci: Add LTR support for some Intel BYT based controllers (Steve Best) [1906791] - [mmc] mmc: sdhci-pci: Add max-frequency device property for Intel controllers (Steve Best) [1906791] - [powerpc] powerpc/64s: Trim offlined CPUs from mm_cpumasks (Steve Best) [1905892] - [kernel] kernel/cpu: add arch override for clear_tasks_mm_cpumask() mm handling (Steve Best) [1905892] - [mm] powerpc/64s/pseries: Fix hash tlbiel_all_isa300 for guest kernels (Steve Best) [1905892] - [mm] powerpc/64s: Fix hash ISA v3.0 TLBIEL instruction generation (Steve Best) [1905892] - [mm] powerpc/64s: Add cp_abort after tlbiel to invalidate copy-buffer address (Steve Best) [1905892] - [powerpc] powerpc: untangle cputable mce include (Steve Best) [1905892] - [mmc] mmc: sdhci-pci: Add support for Intel EHL (Steve Best) [1783588] - [scsi] qla2xxx: Update version to 10.02.00.104-k (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix device loss on 4G and older HBAs (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: If fcport is undergoing deletion complete I/O with retry (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix the call trace for flush workqueue (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix flash update in 28XX adapters on big endian machines (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Handle aborts correctly for port undergoing deletion (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix N2N and NVMe connect retry failure (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix FW initialization error on big endian machines (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix crash during driver load on big endian machines (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix compilation issue in PPC systems (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Don't check for fw_started while posting NVMe command (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Tear down session if FW say it is down (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Limit interrupt vectors to number of CPUs (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Change post del message from debug level to log level (Nilesh Javali) [1905493] - [s390] s390/qeth: Remove pnso workaround (Philipp Rudo) [1903964] - [s390] s390/purgatory: do not build purgatory with kcov, kasan and friends (Philipp Rudo) [1900550] - [fs] iomap: Fix misplaced page flushing (Carlos Maiolino) [1868429] - [fs] iomap: Use round_down/round_up macros in __iomap_write_begin (Carlos Maiolino) [1868429] - [fs] iomap: Mark read blocks uptodate in write_begin (Carlos Maiolino) [1868429] - [fs] iomap: Clear page error before beginning a write (Carlos Maiolino) [1868429] - [fs] iomap: fix WARN_ON_ONCE() from unprivileged users (Carlos Maiolino) [1868429] - [fs] iomap: fall back to buffered writes for invalidation failures (Carlos Maiolino) [1868429] - [fs] iomap: Only invalidate page cache pages on direct IO writes (Carlos Maiolino) [1868429] - [fs] iomap: Make sure iomap_end is called after iomap_begin (Carlos Maiolino) [1868429] - [fs] iomap: Fix unsharing of an extent >2GB on a 32-bit machine (Carlos Maiolino) [1868429] - [fs] iomap: fix the iomap_fiemap prototype (Carlos Maiolino) [1868429] - [fs] iomap: remove lockdep_assert_held() (Carlos Maiolino) [1868429] - [mm] powerpc/numa: Fix a regression on memoryless node 0 (Steve Best) [1903613] - [mm] powerpc/numa: Offline memoryless cpuless node 0 (Steve Best) [1903613] - [mm] powerpc/numa: Prefer node id queried from vphn (Steve Best) [1903613] - [mm] powerpc/numa: Set numa_node for all possible cpus (Steve Best) [1903613] - [powerpc] powerpc/numa: Remove late request for home node associativity (Steve Best) [1903613] - [mm] powerpc/numa: Early request for home node associativity (Steve Best) [1903613] - [mm] powerpc/numa: Use cpu node map of first sibling thread (Steve Best) [1903613] - [x86] xen: don't unbind uninitialized lock_kicker_irq (Brian Masney) [1896786] - [net] Bluetooth: Acquire sk_lock.slock without disabling interrupts (Ivan Vecera) [1889859] - [wireless] mwifiex: fix double free (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: run init_cfg function once per driver load (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: remove no filter condition (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: split a print to avoid a WARNING in ROC (Jarod Wilson) [1860496] - [wireless] qtnfmac: fix resource leaks on unsupported iftype error return path (Jarod Wilson) [1860496] - [net] nl80211: fix OBSS PD min and max offset validation (Jarod Wilson) [1860496] - [wireless] rtw88: Fix potential probe error handling race with wow firmware loading (Jarod Wilson) [1860496] - [wireless] rtw88: Fix probe error handling race with firmware loading (Jarod Wilson) [1860496] - [wireless] ath6kl: wmi: prevent a shift wrapping bug in ath6kl_wmi_delete_pstream_cmd() (Jarod Wilson) [1860496] - [wireless] ath11k: Add checked value for ath11k_ahb_remove (Jarod Wilson) [1860496] - [wireless] mwifiex: remove function pointer check (Jarod Wilson) [1860496] - [wireless] ath11k: fix uninitialized return in ath11k_spectral_process_data() (Jarod Wilson) [1860496] - [wireless] ath11k: fix a double free and a memory leak (Jarod Wilson) [1860496] - [wireless] rtw88: fix compile warning: (Jarod Wilson) [1860496] - [wireless] mwifiex: Remove unnecessary braces from HostCmd_SET_SEQ_NO_BSS_INFO (Jarod Wilson) [1860496] - [wireless] rtw88: don't treat NULL pointer as an array (Jarod Wilson) [1860496] - [wireless] mwifiex: Do not use GFP_KERNEL in atomic context (Jarod Wilson) [1860496] - [wireless] brcmfmac: check ndev pointer (Jarod Wilson) [1860496] - [wireless] ath11k: Fix possible memleak in ath11k_qmi_init_service (Jarod Wilson) [1860496] - [wireless] ath10k: Fix the size used in a 'dma_free_coherent()' call in an error handling path (Jarod Wilson) [1860496] - [wireless] ath9k: Fix potential out of bounds in ath9k_htc_txcompletion_cb() (Jarod Wilson) [1860496] - [wireless] ath9k_htc: Use appropriate rs_datalen type (Jarod Wilson) [1860496] - [wireless] ath6kl: prevent potential array overflow in ath6kl_add_new_sta() (Jarod Wilson) [1860496] - [net] net: wireless: nl80211: fix out-of-bounds access in nl80211_del_key() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: reduce maximum VHT MPDU length to 7991 (Jarod Wilson) [1860496] - [net] mac80211: fix 80 MHz association to 160/80+80 AP on 6 GHz (Jarod Wilson) [1860496] - [net] mac80211: do not allow bigger VHT MPDUs than the hardware supports (Jarod Wilson) [1860496] - [net] cfg80211: fix 6 GHz channel conversion (Jarod Wilson) [1860496] - [net] mac80211: do not disable HE if HT is missing on 2.4 GHz (Jarod Wilson) [1860496] - [net] mac80211: Fix radiotap header channel flag for 6GHz band (Jarod Wilson) [1860496] - [net] lib80211: fix unmet direct dependendices config warning when !CRYPTO (Jarod Wilson) [1860496] - [net] mac80211: add AQL support for VHT160 tx rates (Jarod Wilson) [1860496] - [net] mac80211: extend AQL aggregation estimation to HE and fix unit mismatch (Jarod Wilson) [1860496] - [wireless] mwifiex: Increase AES key storage size to 256 bits (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: use ieee80211_free_txskb to free tx skbs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use v1 MCU API on MT7615 to fix issues with adding/removing stations (Jarod Wilson) [1860496] - [net] cfg80211: Adjust 6 GHz frequency to channel conversion (Jarod Wilson) [1860496] - [net] mac80211: reduce packet loss event false positives (Jarod Wilson) [1860496] - [net] cfg80211: regulatory: reject invalid hints (Jarod Wilson) [1860496] - [net] wireless: fix wrong 160/80+80 MHz setting (Jarod Wilson) [1860496] - [net] mac80211: improve AQL aggregation estimation for low data rates (Jarod Wilson) [1860496] - [net] mac80211: factor out code to look up the average packet length duration for a rate (Jarod Wilson) [1860496] - [net] mac80211: use rate provided via status->rate on ieee80211_tx_status_ext for AQL (Jarod Wilson) [1860496] - [net] nl80211: fix NL80211_ATTR_HE_6GHZ_CAPABILITY usage (Jarod Wilson) [1860496] - [wireless] brcmfmac: reserve tx credit only when txctl is ready to send (Jarod Wilson) [1860496] - [net] wireless: Use fallthrough pseudo-keyword (Jarod Wilson) [1860496] - [wireless] rtl818x: constify ioreadX() iomem argument (as in generic implementation) (Jarod Wilson) [1860496] - [net] mac80211: Do not report beacon loss if beacon filtering enabled (Jarod Wilson) [1860496] - [net] mac80211: fix misplaced while instead of if (Jarod Wilson) [1860496] - [net] nl80211: use eth_zero_addr() to clear mac address (Jarod Wilson) [1860496] - [net] mac80211: use eth_zero_addr() to clear mac address (Jarod Wilson) [1860496] - [net] mac8211: fix struct initialisation (Jarod Wilson) [1860496] - [net] mac80211: Handle special status codes in SAE commit (Jarod Wilson) [1860496] - [wireless] brcmfmac: Set timeout value when configuring power save (Jarod Wilson) [1860496] - [wireless] hostap: use generic power management (Jarod Wilson) [1860496] - [wireless] rt2x00: pci: use generic power management (Jarod Wilson) [1860496] - [wireless] mt7601u: add missing release on skb in mt7601u_mcu_msg_send (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: don't print failure if debug firmware is missing (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: coex: add functions and parameters (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: make symbol 'rtw8821c_rtw_pwr_track_tbl' static (Jarod Wilson) [1860496] - [wireless] rtw88: add h2c command in debugfs (Jarod Wilson) [1860496] - [wireless] rtw88: allows driver to enable/disable beacon (Jarod Wilson) [1860496] - [wireless] rtw88: add ieee80211_ops::change_interface (Jarod Wilson) [1860496] - [wireless] rtw88: coex: only skip coex triggered by BT info (Jarod Wilson) [1860496] - [wireless] rtw88: update tx descriptor of mgmt and reserved page packets (Jarod Wilson) [1860496] - [wireless] rtw88: fix short GI capability based on current bandwidth (Jarod Wilson) [1860496] - [wireless] rtw88: fix LDPC field for RA info (Jarod Wilson) [1860496] - [wireless] prism54: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1860496] - [wireless] prism54: islpci_hotplug: use generic power management (Jarod Wilson) [1860496] - [wireless] prism54: Replace HTTP links with HTTPS ones (Jarod Wilson) [1860496] - [wireless] p54: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1860496] - [wireless] mwifiex: 11n_rxreorder: Remove unnecessary cast in kfree() (Jarod Wilson) [1860496] - [wireless] rtlwifi: btcoex: use *ph to print small buffer (Jarod Wilson) [1860496] - [wireless] rtlwifi: btcoex: remove redundant initialization of variables ant_num and single_ant_path (Jarod Wilson) [1860496] - [net] mac80211: warn only once in check_sdata_in_driver() at each caller (Jarod Wilson) [1860496] - [net] nl80211: support 4-way handshake offloading for WPA/WPA2-PSK in AP mode (Jarod Wilson) [1860496] - [net] cfg80211: invert HE BSS color 'disabled' to 'enabled' (Jarod Wilson) [1860496] - [net] mac80211: add a function for running rx without passing skbs to the stack (Jarod Wilson) [1860496] - [net] mac80211: parse radiotap header when selecting Tx queue (Jarod Wilson) [1860496] - [net] mac80211: remove unused flags argument in transmit functions (Jarod Wilson) [1860496] - [net] mac80211: use same flag everywhere to avoid sequence number overwrite (Jarod Wilson) [1860496] - [net] mac80211: do not overwrite the sequence number if requested (Jarod Wilson) [1860496] - [net] mac80211: add radiotap flag to prevent sequence number overwrite (Jarod Wilson) [1860496] - [net] mac80211: never drop injected frames even if normally not allowed (Jarod Wilson) [1860496] - [uapi] cfg80211: Add support to advertize OCV support (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: avoid bss color setting in non-HE modes (Jarod Wilson) [1860496] - [net] mac80211: calculate skb hash early when using itxq (Jarod Wilson) [1860496] - [net] mac80211: improve AQL tx airtime estimation (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: add connected to auth server to station info (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: add connected to auth server to meshconf (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: add mesh_param "mesh_nolearn" to skip path discovery (Jarod Wilson) [1860496] - [net] cfg80211: allow the low level driver to flush the BSS table (Jarod Wilson) [1860496] - [net] mac80211: Use fallthrough pseudo-keyword (Jarod Wilson) [1860496] - [net] nl80211: Simplify error handling path in 'nl80211_trigger_scan()' (Jarod Wilson) [1860496] - [net] nl80211: Remove a misleading label in 'nl80211_trigger_scan()' (Jarod Wilson) [1860496] - [uapi] net/wireless: wireless.h: drop duplicate word in comments (Jarod Wilson) [1860496] - [uapi] net/wireless: nl80211.h: drop duplicate words in comments (Jarod Wilson) [1860496] - [net] cfg80211: allow vendor dumpit to terminate by returning 0 (Jarod Wilson) [1860496] - [net] mac80211: remove the need for variable rates_idx (Jarod Wilson) [1860496] - [net] nl80211: S1G band and channel definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add missing release on skb in __mt76x02u_mcu_send_msg (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix possible memory leak in mt7615_mcu_wtbl_sta_add (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix potential memory leak in mcu message handler (Jarod Wilson) [1860496] - [wireless] mt76: mt76s: move queue accounting in mt76s_tx_queue_skb (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663s support (Jarod Wilson) [1860496] - [wireless] mt76: introduce mt76_sdio module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663-usb-sdio-common module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: sdio code must access rate/key regs in preocess context (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76_skb_adjust_pad utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: take into account sdio bus configuring txwi (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add missing CONFIG_MAC80211_DEBUGFS (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: potential array overflow in mt7915_mcu_tx_rate_report() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix potential memory leak in mcu message handler (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: fix potential memory leak in mcu message handler (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: fix memory leak in set key (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: reschedule ps work according to last activity (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: avoid scheduling runtime-pm during hw scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: sync probe sampling with rate configuration (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: improve mt7615_driver_own reliability (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add idle-timeout knob in mt7615 debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable beacon hw filter for runtime-pm (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add runtime-pm knob in mt7615 debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not request {driver, fw}_own if already granted (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: check MT76_STATE_PM flag before accessing the device (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: run mt7615_pm_wake in mt7615_mac_sta_{add, remove} (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before pushing frames in mt7615_tx (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before pulling packets from mac80211 queues (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: run mt7615_mcu_set_roc holding mt76 mutex (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: run mt7615_mcu_set_wmm holding mt76 mutex (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing lock in mt7615_regd_notifier (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before performing freq scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: acquire driver_own before configuring device for suspend (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device in mt7615_update_channel before access regmap (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce pm_power_save delayed work (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before configuring hw keys (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before accessing regmap in debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mutex_{acquire, release} utilities (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7615_pm_wake utility routine (Jarod Wilson) [1860496] - [wireless] mt76: move mt76 workqueue in common code (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: avoid polling in fw_own for mt7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: avoid memcpy in rxv operation (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2u: enable HC-M7662BU1 (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: fix pci suspend/resume on mt7612e (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: update HE capabilities (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement testmode support (Jarod Wilson) [1860496] - [wireless] mt76: add API for testmode support (Jarod Wilson) [1860496] - [wireless] mt76: vif_mask to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use full on-chip memory address for WF_PHY registers (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for accessing RF registers via MCU (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for accessing mapped registers via bus ops (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: schedule tx tasklet and sta poll on mac tx free (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2e: rename routines in pci.c (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: overwrite qid for non-bufferable mgmt frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: use ieee80211_tx_queue_params to avoid open coded (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add MU-MIMO support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add a fixed AC queue mapping (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add .set_tsf callback (Jarod Wilson) [1860496] - [wireless] mt76: add U-APSD support on AP side (Jarod Wilson) [1860496] - [wireless] mt76: rely on register macros (Jarod Wilson) [1860496] - [wireless] mt76: fix include in pci.h (Jarod Wilson) [1860496] - [wireless] mt76: allow more channels, allowed in ETSI domain (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix up typo in Kconfig for MT7663U (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: introduce ARP filter offload (Jarod Wilson) [1860496] - [wireless] mt76: usb: rely on mt76_for_each_q_rx (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: re-enable offloading of sequence number assignment (Jarod Wilson) [1860496] - [wireless] wireless: Fix trivial spelling (Jarod Wilson) [1860496] - [wireless] rtlwifi: 8821ae: remove unused path B parameters from swing table (Jarod Wilson) [1860496] - [wireless] rtlwifi: Use const in 8188ee/8723be/8821ae swing_table declarations (Jarod Wilson) [1860496] - [wireless] rtl818x_pci: use generic power management (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Free ieee80211_hw if probing fails (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Prevent leaking urb (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Fix deadlock (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Remove uninitialized_var() usage (Jarod Wilson) [1860496] - [wireless] orinoco_usb: fix spelling mistake (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8188ee: Fix endian issue (Jarod Wilson) [1860496] - [wireless] rtlwifi: Fix endian issue in ps.c (Jarod Wilson) [1860496] - [wireless] broadcom: fix wiki website url (Jarod Wilson) [1860496] - [wireless] wireless: fix wiki website url in main Kconfig (Jarod Wilson) [1860496] - [wireless] rtw88: coex: Fix ACL Tx pause during BT inquiry/page (Jarod Wilson) [1860496] - [wireless] mwifiex: Prevent memory corruption handling keys (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix reporting 'operation not supported' error code (Jarod Wilson) [1860496] - [wireless] mwifiex: Use macro MWIFIEX_MAX_BSS_NUM for specifying limit of interfaces (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: add new RFE type 6 (Jarod Wilson) [1860496] - [wireless] rtw88: 8822ce: add support for device ID 0xc82f (Jarod Wilson) [1860496] - [wireless] rtw88: pci: disable aspm for platform inter-op with module parameter (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: Add 8821CE to Kconfig and Makefile (Jarod Wilson) [1860496] - [wireless] rtw88: single rf path chips don't support TX STBC (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add beamformee support (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add power tracking (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add cck pd settings (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add phy calibration (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add false alarm statistics (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add query rx desc support (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add set channel support (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add dig related settings (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add set tx power index (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add basic functions (Jarod Wilson) [1860496] - [wireless] brcm80211: brcmsmac: Move LEDs to GPIO descriptors (Jarod Wilson) [1860496] - [wireless] brcmfmac: Transform compatible string for FW loading (Jarod Wilson) [1860496] - [wireless] brcmfmac: set pacing shift before transmitting skb to bus (Jarod Wilson) [1860496] - [wireless] brcmfmac: set state of hanger slot to FREE when flushing PSQ (Jarod Wilson) [1860496] - [wireless] brcmfmac: reset SDIO bus on a firmware crash (Jarod Wilson) [1860496] - [wireless] brcmfmac: do not disconnect for disassoc frame from unconnected AP (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix for wrong disconnection event source information (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix for unable to return to visible SSID (Jarod Wilson) [1860496] - [wireless] brcmfmac: initialize the requested dwell time (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix throughput zero stalls on PM 1 mode due to credit map (Jarod Wilson) [1860496] - [wireless] brcmfmac: update tx status flags to sync with firmware (Jarod Wilson) [1860496] - [wireless] brcmfmac: reserve 2 credits for host tx control path (Jarod Wilson) [1860496] - [wireless] brcmfmac: increase message buffer size for control packets (Jarod Wilson) [1860496] - [wireless] brcmfmac: allow credit borrowing for all access categories (Jarod Wilson) [1860496] - [wireless] brcmfmac: To fix Bss Info flag definition Bug (Jarod Wilson) [1860496] - [wireless] brcmfmac: reduce maximum station interface from 2 to 1 in RSDB mode (Jarod Wilson) [1860496] - [wireless] brcmfmac: keep SDIO watchdog running when console_interval is non-zero (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix invalid permanent MAC address in wiphy (Jarod Wilson) [1860496] - [wireless] brcmfmac: To fix kernel crash on out of boundary access (Jarod Wilson) [1860496] - [net] net: wireless: kerneldoc fixes (Jarod Wilson) [1860496] - [net] net: mac80211: kerneldoc fixes (Jarod Wilson) [1860496] - [wireless] ath11k: fix wmi peer flags in peer assoc command (Jarod Wilson) [1860496] - [wireless] ath11k: Add support for ring backpressure stats (Jarod Wilson) [1860496] - [wireless] ath11k: Add dp tx err stats (Jarod Wilson) [1860496] - [wireless] ath11k: removing redundant reo unlock followed by immediate lock (Jarod Wilson) [1860496] - [wireless] ath11k: add support for spectral scan (Jarod Wilson) [1860496] - [wireless] ath11k: Add direct buffer ring support (Jarod Wilson) [1860496] - [wireless] ath11k: build HE 6 GHz capability (Jarod Wilson) [1860496] - [wireless] ath11k: Add support for 6g scan hint (Jarod Wilson) [1860496] - [wireless] ath11k: Send multiple scan_chan_list messages if required (Jarod Wilson) [1860496] - [wireless] ath11k: Add 6G scan dwell time parameter in scan request command (Jarod Wilson) [1860496] - [wireless] ath11k: set psc channel flag when sending channel list to firmware (Jarod Wilson) [1860496] - [wireless] ath11k: extend peer_assoc_cmd for 6GHz band (Jarod Wilson) [1860496] - [wireless] ath11k: Use freq instead of channel number in rx path (Jarod Wilson) [1860496] - [wireless] ath11k: add support for 6GHz radio in driver (Jarod Wilson) [1860496] - [wireless] ath11k: add 6G frequency list supported by driver (Jarod Wilson) [1860496] - [wireless] net: wireless: intel: fix wiki website url (Jarod Wilson) [1860496] - [wireless] iwlwifi: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: Remove unused inline function iwl_mvm_tid_to_ac_queue (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: fix gcc-10 zero-length-bounds warning (Jarod Wilson) [1860496] - [wireless] ath: fix wiki website url (Jarod Wilson) [1860496] - [wireless] ath10k: Acquire tx_lock in tx error paths (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: remove redundant assignment to variable ret (Jarod Wilson) [1860496] - [wireless] iwlwifi: fix config variable name in comment (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: Fix avg-power report (Jarod Wilson) [1860496] - [wireless] iwlwifi: Don't IWL_WARN on FW reconfiguration (Jarod Wilson) [1860496] - [wireless] iwlwifi: Extended Key ID support for mvm and dvm (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix firmware filename for sd8997 chipset (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix firmware filename for sd8977 chipset (Jarod Wilson) [1860496] - [net] mac80211: remove STA txq pending airtime underflow warning (Jarod Wilson) [1860496] - [net] mac80211: Fix bug in Tx ack status reporting in 802.3 xmit path (Jarod Wilson) [1860496] - [net] cfg80211: check vendor command doit pointer before use (Jarod Wilson) [1860496] - [net] mac80211: mesh: Free pending skb when destroying a mpath (Jarod Wilson) [1860496] - [net] mac80211: mesh: Free ie data when leaving mesh (Jarod Wilson) [1860496] - [net] mac80211: fix warning in 6 GHz IE addition in mesh mode (Jarod Wilson) [1860496] - [wireless] ath10k: Fix NULL pointer dereference in AHB device probe (Jarod Wilson) [1860496] - [wireless] iwlwifi: Make some Killer Wireless-AC 1550 cards work again (Jarod Wilson) [1860496] - [wireless] ath9k: Fix regression with Atheros 9271 (Jarod Wilson) [1860496] - [net] nl80211: fix memory leak when parsing NL80211_ATTR_HE_BSS_COLOR (Jarod Wilson) [1860496] - [net] nl80211: don't return err unconditionally in nl80211_start_ap() (Jarod Wilson) [1860496] - [net] mac80211: allow rx of mesh eapol frames with default rx key (Jarod Wilson) [1860496] - [net] mac80211: skip mpath lookup also for control port tx (Jarod Wilson) [1860496] - [net] mac80211: Fix dropping broadcast packets in 802.11 encap (Jarod Wilson) [1860496] - [net] mac80211: simplify mesh code (Jarod Wilson) [1860496] - [net] mac80211: fix control port tx status check (Jarod Wilson) [1860496] - [include] ieee80211: Add missing and new AKM suite selector definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix EEPROM buffer size (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: fix memory leaks in mt7663u_probe (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: do not access uninitialized NAPI structs (Jarod Wilson) [1860496] - [wireless] iwlwifi: fix crash in iwl_dbg_tlv_alloc_trigger (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: don't call iwl_mvm_free_inactive_queue() under RCU (Jarod Wilson) [1860496] - [wireless] wireless: replace '---help---' in Kconfig files with 'help' (Jarod Wilson) [1860496] - [net] net: fix wiki website url mac80211 and wireless files (Jarod Wilson) [1860496] - [uapi] include: fix wiki website url in netlink interface header (Jarod Wilson) [1860496] - [wireless] mt76: overwrite qid for non-bufferable mgmt frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix hw queue mapping (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix lmac queue debugsfs entry (Jarod Wilson) [1860496] - [wireless] mt76: add missing lock configuring coverage class (Jarod Wilson) [1860496] - [net] mac80211: initialize return flags in HE 6 GHz operation parsing (Jarod Wilson) [1860496] - [net] cfg80211: fix management registrations deadlock (Jarod Wilson) [1860496] - [net] cfg80211: support bigger kek/kck key length (Jarod Wilson) [1860496] - [net] mac80211: set short_slot for 6 GHz band (Jarod Wilson) [1860496] - [net] mac80211: Consider 6 GHz band when handling power constraint (Jarod Wilson) [1860496] - [net] mac80211: accept aggregation sessions on 6 GHz (Jarod Wilson) [1860496] - [net] cfg80211: require HE capabilities for 6 GHz band (Jarod Wilson) [1860496] - [net] cfg80211: reject HT/VHT capabilities on 6 GHz band (Jarod Wilson) [1860496] - [net] cfg80211: treat 6 GHz channels as valid regardless of capability (Jarod Wilson) [1860496] - [net] mac80211: Add HE 6GHz capabilities element to probe request (Jarod Wilson) [1860496] - [net] mac80211: use HE 6 GHz band capability and pass it to the driver (Jarod Wilson) [1860496] - [net] mac80211: check the correct bit for EMA AP (Jarod Wilson) [1860496] - [net] mac80211: determine chandef from HE 6 GHz operation (Jarod Wilson) [1860496] - [net] mac80211: avoid using ext NSS high BW if not supported (Jarod Wilson) [1860496] - [net] mac80211: do not allow HT/VHT IEs in 6 GHz mesh mode (Jarod Wilson) [1860496] - [net] mac80211: build HE operation with 6 GHz oper information (Jarod Wilson) [1860496] - [net] mac80211: add HE 6 GHz Band Capability element (Jarod Wilson) [1860496] - [net] cfg80211: add and expose HE 6 GHz band capabilities (Jarod Wilson) [1860496] - [net] mac80211: add HE 6 GHz Band Capabilities into parse extension (Jarod Wilson) [1860496] - [net] cfg80211: handle 6 GHz capability of new station (Jarod Wilson) [1860496] - [include] ieee80211: add HE ext EIDs and 6 GHz capability defines (Jarod Wilson) [1860496] - [include] ieee80211: add code to obtain and parse 6 GHz operation field (Jarod Wilson) [1860496] - [include] ieee80211: definitions for reduced neighbor reports (Jarod Wilson) [1860496] - [net] cfg80211: add a helper to identify 6 GHz PSCs (Jarod Wilson) [1860496] - [net] nl80211: really allow client-only BIGTK support (Jarod Wilson) [1860496] - [net] cfg80211: adapt to new channelization of the 6GHz band (Jarod Wilson) [1860496] - [net] cfg80211: fix 6 GHz frequencies to kHz (Jarod Wilson) [1860496] - [wireless] ath11k: clear DCM max constellation tx value (Jarod Wilson) [1860496] - [wireless] ath11k: reset trigger frame MAC padding duration (Jarod Wilson) [1860496] - [wireless] ath10k: Remove ath10k_qmi_register_service_notifier() declaration (Jarod Wilson) [1860496] - [wireless] ath9k_htc: Set RX filter based to allow broadcast Action frame RX (Jarod Wilson) [1860496] - [wireless] ath9k: Set RX filter based to allow broadcast Action frame RX (Jarod Wilson) [1860496] - [wireless] mwifiex: Add support for NL80211_ATTR_MAX_AP_ASSOC_STA (Jarod Wilson) [1860496] - [wireless] mwifiex: Parse all API_VER_ID properties (Jarod Wilson) [1860496] - [wireless] brcmfmac: 43012 Update MES Watermark (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix 43455 CRC error under SDIO 3.0 SDR104 mode (Jarod Wilson) [1860496] - [wireless] brcmfmac: set F2 blocksize and watermark for 4354/4356 SDIO (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix 4339 CRC error under SDIO 3.0 SDR104 mode (Jarod Wilson) [1860496] - [wireless] brcmfmac: set F2 blocksize for 4373 (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: remove CCK TX setting when switch channel (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: fix missing brace warning for old compilers (Jarod Wilson) [1860496] - [wireless] rtw88: fix EAPOL 4-way failure by finish IQK earlier (Jarod Wilson) [1860496] - [wireless] rtw88: coex: 8723d: handle BT inquiry cases (Jarod Wilson) [1860496] - [wireless] rtw88: coex: 8723d: set antanna control owner (Jarod Wilson) [1860496] - [wireless] Revert "rtw88: no need to set registers for SDIO" (Jarod Wilson) [1860496] - [wireless] rt2800: enable MFP support unconditionally (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Fix Cypress SDIO IDs macros in common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Move SDIO IDs from b43-sdio driver to common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Move SDIO IDs from ath10k driver to common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Move SDIO IDs from mwifiex driver to common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Change macro names for Marvell 8688 modules (Jarod Wilson) [1860496] - [mmc] mmc: sdio: Fix macro name for Marvell device with ID 0x9134 (Jarod Wilson) [1860496] - [wireless] iwlwifi: bump FW API to 56 for AX devices (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add support for range request version 10 (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: fix aux station leak (Jarod Wilson) [1860496] - [wireless] iwlwifi: move txq-specific from trans_pcie to common trans (Jarod Wilson) [1860496] - [wireless] iwlwifi: move iwl_txq and substructures to a common trans header (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: gen3: indicate 8k/12k RB size to device (Jarod Wilson) [1860496] - [wireless] iwlwifi: acpi: evaluate dsm to enable 5.2 bands in Indonesia (Jarod Wilson) [1860496] - [wireless] iwlwifi: acpi: support device specific method (DSM) (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: keep trans instead of trans_pcie in iwl_txq (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: don't count on the FW to set persistence mode (Jarod Wilson) [1860496] - [wireless] iwlwifi: set NO_HE if the regulatory domain forbids it (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: remove set but not used variable 'msta' (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: Use kmemdup in mt7615_queue_key_update() (Jarod Wilson) [1860496] - [wireless] mt76: only iterate over initialized rx queues (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for MT7611N (Jarod Wilson) [1860496] - [wireless] mt76: fix wcid allocation issues (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix possible NULL pointer dereference in mt7915_register_ext_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix hw_scan with ssid_type for specified SSID only (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix a handful of spelling mistakes (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: switch to per-vif power_save support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix some sparse warnings (Jarod Wilson) [1860496] - [wireless] mt76: fix per-driver wcid range checks after wcid array size bump (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix decoded radiotap HE flags (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix NULL pointer deref in mt7615_register_ext_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix sparse warnings: incorrect type initializer (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix some sparse warnings (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add spatial reuse support (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: remove check in mt76x02_mcu_msg_send (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce remain_on_channel support (Jarod Wilson) [1860496] - [net] mac80211: support control port TX status reporting (Jarod Wilson) [1860496] - [net] mac80211: fix HT-Control field reception for management frames (Jarod Wilson) [1860496] - [net] cfg80211: fix CFG82011_CRDA_SUPPORT still mentioning internal regdb (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific Tx rate configuration (Jarod Wilson) [1860496] - [net] mac80211: allow SA-QUERY processing in userspace (Jarod Wilson) [1860496] - [net] nl80211: add ability to report TX status for control port TX (Jarod Wilson) [1860496] - [net] mac80211: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [net] cfg80211: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [include] mac80211: Add new AMPDU factor macro for HE peer caps (Jarod Wilson) [1860496] - [include] ieee80211: S1G defines (Jarod Wilson) [1860496] - [net] nl80211: support scan frequencies in KHz (Jarod Wilson) [1860496] - [net] nl80211: add KHz frequency offset for most wifi commands (Jarod Wilson) [1860496] - [net] cfg80211: add KHz variants of frame RX API (Jarod Wilson) [1860496] - [net] nl80211: simplify peer specific TID configuration (Jarod Wilson) [1860496] - [net] cfg80211: add support for TID specific AMSDU configuration (Jarod Wilson) [1860496] - [net] mac80211: fix variable names in TID config methods (Jarod Wilson) [1860496] - [net] cfg80211: fix mask type in cfg80211_tid_cfg structure (Jarod Wilson) [1860496] - [net] cfg80211: fix debugfs rename crash (Jarod Wilson) [1860496] - [include] ieee80211: Fix incorrect mask for default PE duration (Jarod Wilson) [1860496] - [net] mac80211: mesh: fix discovery timer re-arming issue / crash (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: Fix build error (Jarod Wilson) [1860496] - [wireless] ath11k: Fix some resource leaks in error path in 'ath11k_thermal_register()' (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192ee: remove redundant for-loop (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix memory corruption in dump_station (Jarod Wilson) [1860496] - [wireless] rtw88: no need to set registers for SDIO (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: fix incorrect setting of ldo_pwr (Jarod Wilson) [1860496] - [wireless] rtw88: rename rtw88.ko/rtwpci.ko to rtw88_core.ko/rtw88_pci.ko (Jarod Wilson) [1860496] - [wireless] rtw88: extract: remove the unused after extracting (Jarod Wilson) [1860496] - [wireless] rtw88: extract: make 8723d an individual kernel module (Jarod Wilson) [1860496] - [wireless] rtw88: extract: make 8822b an individual kernel module (Jarod Wilson) [1860496] - [wireless] rtw88: extract: make 8822c an individual kernel module (Jarod Wilson) [1860496] - [wireless] rtw88: extract: export symbols about pci interface (Jarod Wilson) [1860496] - [wireless] rtw88: extract: export symbols used in chip functionalities (Jarod Wilson) [1860496] - [wireless] rtlwifi: Fix a double free in _rtl_usb_tx_urb_setup() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix typo defining ps work (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: configure bss info adding the interface (Jarod Wilson) [1860496] - [wireless] mt76: enable p2p support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: reduce hw scan timeout (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not report scan_complete twice to mac80211 (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix the usage WoW with net detect support (Jarod Wilson) [1860496] - [wireless] ath11k: fix htt stats module not handle multiple skbs (Jarod Wilson) [1860496] - [wireless] rtl8187: Remove unused variable rtl8225z2_tx_power_ofdm (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: fix sparse warnings for power tracking (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add 8723DE to Kconfig and Makefile (Jarod Wilson) [1860496] - [wireless] rtw88: fill zeros to words 0x06 and 0x07 of security cam entry (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add coex support (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: set ltecoex register address in chip_info (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: implement flush queue (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add shutdown callback to disable BT USB suspend (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add power tracking (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: add IQ calibration (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add LC calibration (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix WPA/WPA2-PSK 4-way handshake offload and SAE offload failures (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix possible deadlock in mt7915_stop (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: allocate proper size for tlv tags (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add debugfs to track TxBF status (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add TxBF capabilities (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add Tx beamformee support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add Tx beamformer support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: introduce mt7915_get_he_phy_cap (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: usb: cancel ps work stopping the vif (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: add missing register definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: copy key pointer in mt7663u_mac_write_txwi (Jarod Wilson) [1860496] - [wireless] mt76: set runtime stream caps by mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: enable firmware module debug support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add tsf related callbacks (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: set peer Tx fixed rate through debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add .sta_statistics support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add .sta_add_debugfs support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add Rx radiotap header support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add HE capabilities support for peers (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add HE bss_conf support for interfaces (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: register per-phy HE capabilities for each interface (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: implement HE per-rate tx power support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: enable Rx HE rate reporting (Jarod Wilson) [1860496] - [wireless] mt76: add mac80211 driver for MT7915 PCIe-based chipsets (Jarod Wilson) [1860496] - [wireless] mt76: add HE phy modes and hardware queue (Jarod Wilson) [1860496] - [wireless] mt76: adjust wcid size to support new 802.11ax generation (Jarod Wilson) [1860496] - [wireless] mt76: add Rx stats support for radiotap (Jarod Wilson) [1860496] - [wireless] mt76: add support for HE RX rate reporting (Jarod Wilson) [1860496] - [wireless] mt76: avoid rx reorder buffer overflow (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: scan all channels if not specified (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: add support to sched scan with randomise addr (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: introduce WoW with net detect support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix delta tx power for mt7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix target power parsing (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix ibss mode for mt7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: check return value of mt7615_eeprom_get_power_index (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: read tx streams from eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce beacon_loss mcu event (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add gtk rekey offload support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce PM support (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: introduce suspend/resume to mt7663u (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add WoW support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_set_hif_suspend mcu command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce support for hardware beacon filter (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: free pci_vector if mt7615_pci_probe fails (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add passive mode for hw scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not mark sched_scan disabled in mt7615_scan_work (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_check_offload_capability routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix ssid configuration in mt7615_mcu_hw_scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: remove duplicate error message (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix getting maximum tx power from eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: set spatial extension index (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: remove check in mt7663_load_n9 (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: add the possibility to load firmware v2 (Jarod Wilson) [1860496] - [wireless] mt76: mt76x0: enable MCS 8 and MCS9 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix event report in mt7615_mcu_bss_event (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add sta pointer to mt7615_mcu_add_bss_info signature (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix up BMC entry indicated to unicmd firmware (Jarod Wilson) [1860496] - [wireless] mt76: enable TDLS support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mcu bss upload before creating the sta (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: fix tx status rate index calculation (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix tx status rate index calculation (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not adjust MAC timings if the device is not running (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: adjust timing in mt7615_mac_set_timing to match fw/hw values (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: never use an 802.11b CF-End rate on 5GHz (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: never use an 802.11b CF-End rate on 5GHz (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use larger rx buffers if VHT is supported (Jarod Wilson) [1860496] - [wireless] mt76: fix A-MPDU density handling (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix sta ampdu factor for VHT (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: enable AirTimeFairness (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework mt7615_mac_sta_poll for usb code (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix aid configuration in mt7615_mcu_wtbl_generic_tlv (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix mt7615_driver_own routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix max wtbl size for 7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix mt7615_firmware_own for mt7663e (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: parse mcu return code for unified commands (Jarod Wilson) [1860496] - [wireless] mt76: add rx queues info to mt76 debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: make Kconfig entry obvious for MT7663E (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: introduce 802.11 PS support in sta mode (Jarod Wilson) [1860496] - [wireless] mt76: remove PS_NULLFUNC_STACK capability (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: provide aid info to the mcu (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable aspm by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable scs for mt7663 driver (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663u support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move core shared code in mt7615-common module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix possible deadlock in mt7615_stop (Jarod Wilson) [1860496] - [wireless] mt76: remove unnecessary annotations (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable MSI by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework IRQ handling to prepare for MSI support (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix DMA unmap length (Jarod Wilson) [1860496] - [wireless] mt76: mt7622: fix DMA unmap length (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: set hw scan limits only for firmware with offload support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable hw/sched scan ops for non-offload firmware (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix aggr range entry in debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix possible division by 0 in mt7615_mac_update_mib_stats (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: disable merge of OTP ROM data by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: disable merge of OTP ROM data by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for applying tx DPD calibration from EEPROM (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for applying DC offset calibration from EEPROM (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable merge of OTP ROM data by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: Delete an error message in mt7622_wmac_probe() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not always reset the dfs state setting the channel (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: correct the name of the rom patch (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add address parameter to mt7615_eeprom_init (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_wtbl_desc data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework wtbl key configuration (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: rely on mt7622 queue scheme for mt7663u (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mt7615_mac_wtbl_addr in mac.h (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce __mt7663_load_firmware routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mac_update_rate_desc routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663u support to mt7615_write_txwi (Jarod Wilson) [1860496] - [wireless] mt76: add headroom and tailroom to mt76_mcu_ops data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove unnecessary register operations (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce rlm tlv in bss_info mcu command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce BSS absence event (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce scheduled scan support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce hw scan support (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: keep Rx filters as the default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_set_channel_domain mcu command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add ethool support to mt7663 driver (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: disable RDD commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: make scs configurable per phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: enable nf estimation (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix mt7615_mac_cca_stats_reset routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add more useful Tx mib counters (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: cleanup mib related defines and structs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable aggr_stats for both phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: modify mt7615_ampdu_stat_read for each phy (Jarod Wilson) [1860496] - [wireless] mt76: mt76x0: pci: add mt7610 PCI ID (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2u: introduce Mercury UD13 support (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02u: Add support for newer versions of the XBox One wifi adapter (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: fix handling MCU timeouts during hw restart (Jarod Wilson) [1860496] - [wireless] rndis_wlan: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] mwl8k: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] rndis_wlan: Remove logically dead code (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove Comparison to bool in brcmf_p2p_send_action_frame() (Jarod Wilson) [1860496] - [wireless] brcmfmac: make non-global functions static (Jarod Wilson) [1860496] - [wireless] brcmfmac: Use seq/seq_len and set iv_initialize when plumbing of rxiv in (GTK) keys (Jarod Wilson) [1860496] - [wireless] brcmfmac: use actframe_abort to cancel ongoing action frame (Jarod Wilson) [1860496] - [wireless] brcmfmac: set security after reiniting interface (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix 802.1d priority to ac mapping for pcie dongles (Jarod Wilson) [1860496] - [wireless] brcmfmac: map 802.1d priority to precedence level based on AP WMM params (Jarod Wilson) [1860496] - [wireless] ath11k: convert to devm_platform_get_and_ioremap_resource (Jarod Wilson) [1860496] - [wireless] ath11k: remove redundant initialization of pointer info (Jarod Wilson) [1860496] - [wireless] ath10k: fix ath10k_pci struct layout (Jarod Wilson) [1860496] - [wireless] ath10k: fix gcc-10 zero-length-bounds warnings (Jarod Wilson) [1860496] - [wireless] ath10k: remove experimental tag from SDIO and SNOC busses in Kconfig (Jarod Wilson) [1860496] - [wireless] ath10k: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] ath11k: Remove bus layer includes from upper layer (Jarod Wilson) [1860496] - [wireless] ath11k: Add drv private for bus opaque struct (Jarod Wilson) [1860496] - [wireless] ath11k: Add support for multibus support (Jarod Wilson) [1860496] - [wireless] ath10k: fix __le32 warning in ath10k_wmi_tlv_op_gen_request_peer_stats_info() (Jarod Wilson) [1860496] - [wireless] ath10k: Remove msdu from idr when management pkt send fails (Jarod Wilson) [1860496] - [wireless] ath10k: Skip handling del_server during driver exit (Jarod Wilson) [1860496] - [wireless] ath11k: remove stale monitor status descriptor (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg_ini: differentiate ax210 hw with same hw type (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: skip fragmented receive buffers (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove outdated copyright print/module statement (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: don't transmit on unallocated queue (Jarod Wilson) [1860496] - [wireless] iwlwifi: tx: enable A-MSDU in low latency mode (Jarod Wilson) [1860496] - [wireless] iwlwifi: use longer queues for 256-BA (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: gen2: use DMA pool for byte-count tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove some dead code (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: mark a variable __maybe_unused (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: attempt to allocate smaller queues (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: allocate much smaller byte-count table (Jarod Wilson) [1860496] - [wireless] iwlwifi: dump api version in yaml format (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: convert all AX101 devices to the device tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove occurrences of 22000 in the FW name defines (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: convert QnJ with Hr to the device table (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove mangling for iwl_ax101_cfg_qu_hr (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove outdated comment about PCI RTPM reference (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add IML/ROM information to the assertion dumps (Jarod Wilson) [1860496] - [wireless] iwlwifi: move iwl_set_soc_latency to iwl-drv to be used by other op_modes (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: remove magic number (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: initialize iwl_dev_tx_power_cmd to zero (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: set debug descriptor to NULL outside of iwl_fw_free_dump_desc (Jarod Wilson) [1860496] - [wireless] iwlwifi: bump FW API to 55 for AX devices (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: add D3 resume timepoint (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: set properly station flags in STA_HE_CTXT_CMD (Jarod Wilson) [1860496] - [wireless] iwlwifi: avoid debug max amsdu config overwriting itself (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: remove iwlmvm's tfd_q_hang_detect module parameter (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: stop supporting swcrypto and bt_coex_active module parameters (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add support for range request command version 9 (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: don't access TLV before verifying len (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove antenna_coupling module parameter (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: use hweight_long instead of bit manipulating (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: add support for parsing SHARED_MEM_ALLOC version 4 (Jarod Wilson) [1860496] - [wireless] iwlwifi: fw api: fix PHY data 2/3 position (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8188ee: remove Comparison to bool in rf.c (Jarod Wilson) [1860496] - [wireless] mwifiex: avoid -Wstringop-overflow warning (Jarod Wilson) [1860496] - [wireless] rtlwifi: remove comparison of 0/1 to bool variable (Jarod Wilson) [1860496] - [wireless] brcmsmac: remove Comparison to bool in brcms_b_txstatus() (Jarod Wilson) [1860496] - [wireless] brcmfmac: Add P2P Action Frame retry delay to fix GAS Comeback Response failure issue (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix P2P Group Formation failure via Go-neg method (Jarod Wilson) [1860496] - [wireless] brcmfmac: support the second p2p connection (Jarod Wilson) [1860496] - [wireless] rtw88: fix an issue about leak system resources (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: add interface configurations table (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Set IG register for CCK rate (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add chip_ops::false_alarm_statistics (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: some chips don't support LDPC (Jarod Wilson) [1860496] - [wireless] rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add set_channel (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add query_rx_desc (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add DIG parameter (Jarod Wilson) [1860496] - [wireless] rtlwifi: use true, false for bool variable in rtl_init_rfkill() (Jarod Wilson) [1860496] - [wireless] rtw88: Use udelay instead of usleep in atomic context (Jarod Wilson) [1860496] - [wireless] ath11k: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] ath9k_htc: Silence undersized packet warnings (Jarod Wilson) [1860496] - [wireless] ath6kl: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] ath11k: fix kernel panic by freeing the msdu received with invalid length (Jarod Wilson) [1860496] - [wireless] ath11k: Add support to reset htt peer stats (Jarod Wilson) [1860496] - [wireless] ath11k: add tx hw 802.11 encapsulation offloading support (Jarod Wilson) [1860496] - [wireless] ath11k: fix resource unavailability for htt stats after peer stats display (Jarod Wilson) [1860496] - [wireless] ath11k: use true,false for bool variables (Jarod Wilson) [1860496] - [wireless] ath10k: Add support for targets without trustzone (Jarod Wilson) [1860496] - [wireless] ath10k: Setup the msa resources before qmi init (Jarod Wilson) [1860496] - [wireless] ath10k: remove the max_sched_scan_reqs value (Jarod Wilson) [1860496] - [wireless] ath10k: Avoid override CE5 configuration for QCA99X0 chipsets (Jarod Wilson) [1860496] - [wireless] brcmfmac: no need to check return value of debugfs_create functions (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove comparison to bool in brcmf_fws_attach() (Jarod Wilson) [1860496] - [wireless] brcmfmac: add vendor ie for association responses (Jarod Wilson) [1860496] - [wireless] brcmfmac: only generate random p2p address when needed (Jarod Wilson) [1860496] - [wireless] brcmfmac: p2p cert 6.1.9-support GOUT handling p2p presence request (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove arp_hostip_clear from brcmf_netdev_stop (Jarod Wilson) [1860496] - [wireless] brcmfmac: keep apsta enabled when AP starts with MCHAN feature (Jarod Wilson) [1860496] - [wireless] rtw88: fix spelling mistake "fimrware" -> "firmware" (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: update phy parameter tables to v50 (Jarod Wilson) [1860496] - [wireless] ath11k: add DBG_MAC prints to track vdev events (Jarod Wilson) [1860496] - [wireless] ath11k: fix mgmt_tx_wmi cmd sent to FW for deleted vdev (Jarod Wilson) [1860496] - [wireless] ath11k: fix error return code in ath11k_dp_alloc() (Jarod Wilson) [1860496] - [wireless] ath10k: fix possible memory leak in ath10k_bmi_lz_data_large() (Jarod Wilson) [1860496] - [wireless] mac80211: fix memory overlap due to variable length param (Jarod Wilson) [1860496] - [net] mac80211: TX legacy rate control for Beacon frames (Jarod Wilson) [1860496] - [wireless] ath11k: use GFP_ATOMIC under spin lock (Jarod Wilson) [1860496] - [wireless] ath10k: correct tx bitrate of iw for SDIO (Jarod Wilson) [1860496] - [wireless] ath10k: add bitrate parse for peer stats info (Jarod Wilson) [1860496] - [wireless] ath10k: add rx bitrate report for SDIO (Jarod Wilson) [1860496] - [wireless] ath10k: enable firmware peer stats info for wmi tlv (Jarod Wilson) [1860496] - [wireless] ath5k: remove conversion to bool in ath5k_ani_calibration() (Jarod Wilson) [1860496] - [wireless] ath9k: add calibration timeout for AR9002 (Jarod Wilson) [1860496] - [wireless] ath9k: invalidate all calibrations at once (Jarod Wilson) [1860496] - [wireless] ath9k: interleaved NF calibration on AR9002 (Jarod Wilson) [1860496] - [wireless] ath9k: do not miss longcal on AR9002 (Jarod Wilson) [1860496] - [wireless] ath9k: remove needless NFCAL_PENDING flag setting (Jarod Wilson) [1860496] - [wireless] ath9k: fix AR9002 ADC and NF calibrations (Jarod Wilson) [1860496] - [wireless] rtw88: fix sparse warnings for download firmware routine (Jarod Wilson) [1860496] - [wireless] ath10k: add statistics of tx retries and tx failed when tx complete disable (Jarod Wilson) [1860496] - [wireless] ath10k: enable rx duration report default for wmi tlv (Jarod Wilson) [1860496] - [wireless] ath11k: fix reo flush send (Jarod Wilson) [1860496] - [wireless] iwlwifi: debug: set NPK buffer in context info (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add new structs for So devices with long latency (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add new structure for Qu devices with medium latency (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: tell firmware about required LTR delay (Jarod Wilson) [1860496] - [wireless] iwlwifi: update few product names in AX family (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add cfgs for SoCs with device ID 0x4FD0 (Jarod Wilson) [1860496] - [wireless] iwlwifi: add new cards for AX family (Jarod Wilson) [1860496] - [wireless] iwlwifi: acpi: read TAS table from ACPI and send it to the FW (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove fw_monitor module parameter (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove deprecated and unused iwl_mvm_keyinfo struct (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add framework for specific phy configuration (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: move iwl_pcie_ctxt_info_alloc_dma() to user (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: support IWL_FW_INI_TIME_POINT_HOST_ALIVE_TIMEOUT time point (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add DCM flag to rate pretty-print (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: gen2: minor code cleanups in byte table update (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add n_window/ampdu to tx_queue debugfs (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: use seq_file for tx_queue debugfs file (Jarod Wilson) [1860496] - [wireless] iwlwifi: support version 9 of WOWLAN_GET_STATUS notification (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: support multiple dumps in legacy dump flow (Jarod Wilson) [1860496] - [wireless] iwlwifi: move API version lookup to common code (Jarod Wilson) [1860496] - [wireless] iwlwifi: nvm: use iwl_nl80211_band_from_channel_idx (Jarod Wilson) [1860496] - [net] mac80211: fix two missing documentation entries (Jarod Wilson) [1860496] - [net] cfg80211: reject channels/chandefs with KHz offset >= 1000 (Jarod Wilson) [1860496] - [net] mac80211: add freq_offset to RX status (Jarod Wilson) [1860496] - [net] mac80211: handle channel frequency offset (Jarod Wilson) [1860496] - [net] cfg80211: express channels with a KHz component (Jarod Wilson) [1860496] - [net] ieee80211: share 802.11 unit conversion helpers (Jarod Wilson) [1860496] - [net] mac80211: minstrel_ht_assign_best_tp_rates: remove redundant test (Jarod Wilson) [1860496] - [net] mac80211: Fail association when AP has no legacy rates (Jarod Wilson) [1860496] - [net] mac80211: agg-tx: add an option to defer ADDBA transmit (Jarod Wilson) [1860496] - [net] mac80211: agg-tx: refactor sending addba (Jarod Wilson) [1860496] - [net] mac80211: Skip entries with HE membership selector (Jarod Wilson) [1860496] - [net] cfg80211: Parse HE membership selector (Jarod Wilson) [1860496] - [net] mac80211: Don't destroy auth data in case of anti-clogging (Jarod Wilson) [1860496] - [net] mac80211: add twt_protected flag to the bss_conf structure (Jarod Wilson) [1860496] - [net] mac80211: implement Operating Mode Notification extended NSS support (Jarod Wilson) [1860496] - [net] mac80211: Process multicast RX registration for Action frames (Jarod Wilson) [1860496] - [net] nl80211: allow client-only BIGTK support (Jarod Wilson) [1860496] - [net] cfg80211: support multicast RX registration (Jarod Wilson) [1860496] - [net] cfg80211: change internal management frame registration API (Jarod Wilson) [1860496] - [net] mac80211: Report beacon protection failures to user space (Jarod Wilson) [1860496] - [net] cfg80211: Unprotected Beacon frame RX indication (Jarod Wilson) [1860496] - [wireless] iwlwifi: scan: remove support for fw scan api v13 (Jarod Wilson) [1860496] - [net] mac80211: fix drv_config_iface_filter() behaviour (Jarod Wilson) [1860496] - [net] mac80211: mlme: remove duplicate AID bookkeeping (Jarod Wilson) [1860496] - [wireless] ath10k: drop the TX packet which size exceed credit size for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: Fix the invalid tx/rx chainmask configuration (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: initialize mac/bb/rf basic functions (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Organize chip TX/RX FIFO (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: implement set_tx_power_index ops (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: 11N chips don't support H2C queue (Jarod Wilson) [1860496] - [wireless] rtw88: decompose while(1) loop of power sequence polling command (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add mac power-on/-off function (Jarod Wilson) [1860496] - [wireless] rtw88: no need to send additional information to legacy firmware (Jarod Wilson) [1860496] - [wireless] rtw88: add legacy firmware download for 8723D devices (Jarod Wilson) [1860496] - [wireless] ath10k: add flush tx packets for SDIO chip (Jarod Wilson) [1860496] - [wireless] ath10k: enable alt data of TX path for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: add htt TX bundle for sdio (Jarod Wilson) [1860496] - [wireless] ath11k: remove conversion to bool in ath11k_debug_fw_stats_process() (Jarod Wilson) [1860496] - [wireless] ath11k: remove conversion to bool in ath11k_dp_rxdesc_mpdu_valid() (Jarod Wilson) [1860496] - [wireless] rtw88: set power trim according to efuse PG values (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add read_efuse to recognize efuse info from map (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add new chip op efuse_grant() to control efuse access (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add cfg_ldo25 to control LDO25 (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add RF read/write ops (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add power sequence (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: add beamform wrapper functions (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add basic chip capabilities (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723ae: fix warning comparison to bool (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8821ae: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723be: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192ee: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723ae: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8188ee: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] ath10k: hif: make send_complete_check op optional (Jarod Wilson) [1860496] - [wireless] ath10k: sdio: remove _hif_ prefix from functions not part of hif interface (Jarod Wilson) [1860496] - [wireless] ath10k: improve power save performance for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: rename ath10k_hif_swap_mailbox() to ath10k_hif_start_post() (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove leading space (Jarod Wilson) [1860496] - [wireless] brcmsmac: make brcms_c_stf_ss_update() void (Jarod Wilson) [1860496] - [wireless] brcmsmac: Add missing annotation for brcms_down() (Jarod Wilson) [1860496] - [wireless] brcmsmac: Add missing annotation for brcms_rfkill_set_hw_state() (Jarod Wilson) [1860496] - [wireless] hostap: Add missing annotations for prism2_bss_list_proc_start() and prism2_bss_list_proc_stop (Jarod Wilson) [1860496] - [wireless] rtw88: add support for set/get antennas (Jarod Wilson) [1860496] - [wireless] rtw88: make rtw_chip_ops::set_antenna return int (Jarod Wilson) [1860496] - [wireless] ath11k: Add dynamic tcl ring selection logic with retry mechanism (Jarod Wilson) [1860496] - [wireless] ath11k: cleanup reo command error code overwritten (Jarod Wilson) [1860496] - [wireless] ath10k: Fix typo in warning messages (Jarod Wilson) [1860496] - [wireless] ath11k: Fix rx_filter flags setting for per peer rx_stats (Jarod Wilson) [1860496] - [wireless] ath11k: Fix fw assert by setting proper vht cap (Jarod Wilson) [1860496] - [wireless] ath11k: Cleanup in pdev destroy and mac register during crash on recovery (Jarod Wilson) [1860496] - [wireless] brcmsmac: make brcms_c_set_mac() void (Jarod Wilson) [1860496] - [wireless] rtw88: Add delay on polling h2c command status bit (Jarod Wilson) [1860496] - [wireless] brcm80211: remove redundant pointer 'address' (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723ae: fix spelling mistake "chang" -> "change" (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix wrong location to get firmware feature (Jarod Wilson) [1860496] - [wireless] rtw88: Make two functions static (Jarod Wilson) [1860496] - [net] cfg80211: fix kernel-doc notation (Jarod Wilson) [1860496] - [wireless] ath11k: rx path optimizations (Jarod Wilson) [1860496] - [wireless] ath11k: set IRQ_DISABLE_UNLAZY flag for DP interrupts (Jarod Wilson) [1860496] - [wireless] ath11k: Fix TWT radio count (Jarod Wilson) [1860496] - [wireless] ath11k: Modify the interrupt timer threshold (Jarod Wilson) [1860496] - [wireless] ath11k: fix duplication peer create on same radio (Jarod Wilson) [1860496] - [wireless] ath10k: change ATH10K_SDIO_BUS_REQUEST_MAX_NUM from 64 to 1024 (Jarod Wilson) [1860496] - [wireless] ath10k: disable TX complete indication of htt for sdio (Jarod Wilson) [1860496] - [wireless] ath9k: Fix general protection fault in ath9k_hif_usb_rx_cb (Jarod Wilson) [1860496] - [wireless] ath9x: Fix stack-out-of-bounds Write in ath9k_hif_usb_rx_cb (Jarod Wilson) [1860496] - [wireless] ath9k: Fix use-after-free Write in ath9k_htc_rx_msg (Jarod Wilson) [1860496] - [wireless] ath9k: Fix use-after-free Read in ath9k_wmi_ctrl_rx (Jarod Wilson) [1860496] - [wireless] ath9k: Fix use-after-free Read in htc_connect_service (Jarod Wilson) [1860496] - [wireless] ath10k: fix kernel null pointer dereference (Jarod Wilson) [1860496] - [wireless] ath10k: enable radar detection in secondary segment (Jarod Wilson) [1860496] - [wireless] ath10k: enable VHT160 and VHT80+80 modes (Jarod Wilson) [1860496] - [wireless] ath11k: Avoid mgmt tx count underflow (Jarod Wilson) [1860496] - [wireless] ath11k: Increase the tx completion ring size (Jarod Wilson) [1860496] - [wireless] ath11k: fix error message to correctly report the command that failed (Jarod Wilson) [1860496] - [wireless] ath11k: add pktlog checksum in trace events to support pktlog (Jarod Wilson) [1860496] - [wireless] ath10k: Fix the race condition in firmware dump work queue (Jarod Wilson) [1860496] - [wireless] ath11k: Add sta debugfs support to configure ADDBA and DELBA (Jarod Wilson) [1860496] - [wireless] ath11k: fix compiler warnings without CONFIG_THERMAL (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: remove newline from rs_pretty_print_rate() (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: make iwl_pcie_cmdq_reclaim static (Jarod Wilson) [1860496] - [wireless] iwlwifi: bump FW API to 53 for 22000 series (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove IWL_FW_DBG_DOMAIN macro (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: enable yoyo by default (Jarod Wilson) [1860496] - [wireless] iwlwifi: scan: support FW APIs with variable number of profiles (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: don't block dumping internal memory when not in SRAM mode (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove support for QnJ HR FPGA (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove support for QnJ Hr STEP A (Jarod Wilson) [1860496] - [wireless] iwlwifi: add trans_cfg for devices with long latency (Jarod Wilson) [1860496] - [wireless] iwlwifi: add support for version 2 of SOC_CONFIGURATION_CMD (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add support for non EDCA based measurements (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove unnecessary cfg mangling for Qu C and QuZ with Jf (Jarod Wilson) [1860496] - [wireless] iwlwifi: convert QnJ with Jf devices to new config table (Jarod Wilson) [1860496] - [wireless] iwlwifi: convert all Qu with Jf devices to the new config table (Jarod Wilson) [1860496] - [wireless] iwlwifi: add HW step to new cfg device table (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove some unused extern declarations from iwl-config.h (Jarod Wilson) [1860496] - [wireless] iwlwifi: move integrated, extra_phy and soc_latency to trans_cfg (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: enable SF also when we have HE (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove redundant iwl9560_2ac_cfg struct (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: rs-fw: fix some indentation (Jarod Wilson) [1860496] - [wireless] iwlwifi: scan: support scan req cmd ver 14 (Jarod Wilson) [1860496] - [wireless] iwlwifi: pass trans and NVM data to HE capability parsing (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: implement read_config32 (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: add PCI config space region type (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add soc latency support (Jarod Wilson) [1860496] - [wireless] hostap: convert to struct proc_ops (Jarod Wilson) [1860496] - [wireless] rtw88: fix non-increase management packet sequence number (Jarod Wilson) [1860496] - [wireless] brcmfmac: add USB autosuspend feature support (Jarod Wilson) [1860496] - [wireless] brcmfmac: increase max hanger slots from 1K to 3K in fws layer (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix the incorrect return value in brcmf_inform_single_bss() (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix double freeing in the fmac usb data path (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix driver crash on USB control transfer timeout (Jarod Wilson) [1860496] - [wireless] rtl8xxxu: Feed current txrate information for mac80211 (Jarod Wilson) [1860496] - [wireless] rtl8xxxu: add enumeration for channel bandwidth (Jarod Wilson) [1860496] - [wireless] rtw88: add a debugfs entry to enable/disable coex mechanism (Jarod Wilson) [1860496] - [wireless] rtw88: add a debugfs entry to dump coex's info (Jarod Wilson) [1860496] - [wireless] rtl8xxxu: Fix sparse warning: cast from restricted __le16 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing declaration in mt7615.h (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix endianness in unified command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix mt7663e firmware struct endianness (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: config RF table path B before path A (Jarod Wilson) [1860496] - [wireless] rtw88: kick off TX packets once for higher efficiency (Jarod Wilson) [1860496] - [wireless] rtw88: pci: define a mask for TX/RX BD indexes (Jarod Wilson) [1860496] - [wireless] rtw88: associate reserved pages with each vif (Jarod Wilson) [1860496] - [wireless] rtw88: extract alloc rsvd_page and h2c skb routines (Jarod Wilson) [1860496] - [wireless] brcmfmac: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] wireless: marvell: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] hostap: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] wireless: ti: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] wireless: realtek: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] ath10k: Fill GCMP MIC length for PMF (Jarod Wilson) [1860496] - [net] mac80211: driver can remain on channel if not using chan_ctx (Jarod Wilson) [1860496] - [net] nl80211: clarify code in nl80211_del_station() (Jarod Wilson) [1860496] - [net] cfg80211: Configure PMK lifetime and reauth threshold for PMKSA entries (Jarod Wilson) [1860496] - [net] mac80211: Read rx_stats with perCPU pointers (Jarod Wilson) [1860496] - [net] mac80211: Allow deleting stations in ibss mode to reset their state (Jarod Wilson) [1860496] - [net] cfg80211: Add support for userspace to reset stations in IBSS mode (Jarod Wilson) [1860496] - [net] mac80211: consider WLAN_EID_EXT_HE_OPERATION for parsing CRC (Jarod Wilson) [1860496] - [uapi] nl80211: add PROTECTED_TWT nl80211 extended feature (Jarod Wilson) [1860496] - [net] mac80211: HE: set missing bss_conf fields in AP mode (Jarod Wilson) [1860496] - [net] nl80211: pass HE operation element to the driver (Jarod Wilson) [1860496] - [net] nl80211/cfg80211: add support for non EDCA based ranging measurement (Jarod Wilson) [1860496] - [net] mac80211: don't leave skb->next/prev pointing to stack (Jarod Wilson) [1860496] - [net] mac80211: update documentation about tx power (Jarod Wilson) [1860496] - [net] mac80211: handle no-preauth flag for control port (Jarod Wilson) [1860496] - [net] nl80211: add no pre-auth attribute and ext. feature flag for ctrl. port (Jarod Wilson) [1860496] - [net] cfg80211: fix documentation format (Jarod Wilson) [1860496] - [wireless] ath11k: Perform per-msdu rx processing (Jarod Wilson) [1860496] - [wireless] ath11k: Configure hash based reo destination ring selection (Jarod Wilson) [1860496] - [wireless] ath11k: Adding proper validation before accessing tx_stats (Jarod Wilson) [1860496] - [wireless] ath11k: dump SRNG stats during FW assert (Jarod Wilson) [1860496] - [wireless] ath11k: fill channel info from rx channel (Jarod Wilson) [1860496] - [wireless] ath11k: Supporting RX ring backpressure HTT event and stats handling (Jarod Wilson) [1860496] - [wireless] iwlwifi: move AX200 devices to the new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove trans entries from COMMON 9260 macro (Jarod Wilson) [1860496] - [wireless] iwlwifi: move shared clock entries to new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: move pu devices to new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove 9260 devices with 0x1010 and 0x1210 subsytem IDs (Jarod Wilson) [1860496] - [wireless] iwlwifi: convert the 9260-1x1 device to use the new parameters (Jarod Wilson) [1860496] - [wireless] iwlwifi: move TH1 devices to the new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: map 9461 and 9462 using RF type and RF ID (Jarod Wilson) [1860496] - [wireless] iwlwifi: add Pu/PnJ/Th device values to differentiate them (Jarod Wilson) [1860496] - [wireless] iwlwifi: add GNSS differentiation to the device tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: add mac/rf types and 160MHz to the device tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: combine 9260 cfgs that only change names (Jarod Wilson) [1860496] - [wireless] iwlwifi: move the remaining 0x2526 configs to the new table (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663e support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: get rid of sta_rec_wtbl data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce set_ba uni command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add more uni mcu commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce set_bmc and st_sta for uni commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce uni cmd command types (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_init_mac_chain routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_eeprom_parse_hw_band_cap routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7663e support to mt7615_mcu_set_eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7663e support to mt7615_{driver, firmware}_own (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7663e support to mt7615_reg_map (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_register_map (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce MCU_FW_PREFIX for fw mcu commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move more mcu commands in mt7615_mcu_ops data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework mt7615_mcu_set_bss_info using skb APIs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rely on skb API for mt7615_mcu_set_eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mt7615_mcu_set_sta in mt7615_mcu_ops (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mt7615_mcu_set_bmc to mt7615_mcu_ops (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7615_mcu_ops data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_send_message routine (Jarod Wilson) [1860496] - [wireless] mt76: always init to 0 mcu messages (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_init_device routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: cleanup fw queue just for mmio devices (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_wait_response (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_fill_msg (Jarod Wilson) [1860496] - [wireless] mt76: remove variable 'val' set but not used (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove a stray if statement (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: reset MCU timeout counter earlier in watchdog reset (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix monitor injection of beacon frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: make dynamic sensitivity adjustment configurable via debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: add upper limit for dynamic sensitivity minimum receive power (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix antenna mask initialization in DBDC mode (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: rely only on data buffer for usb control messagges (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: fix a possible memory leak in mt76u_init (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: loop over all possible rx queues in mt76u_rx_tasklet (Jarod Wilson) [1860496] - [wireless] ath11k: add handling for BSS color (Jarod Wilson) [1860496] - [wireless] ath11k: add WMI calls required for handling BSS color (Jarod Wilson) [1860496] - [wireless] ath11k: set queue_len to 4096 (Jarod Wilson) [1860496] - [wireless] ath11k: enable PN offload (Jarod Wilson) [1860496] - [wireless] ath11k: handle RX fragments (Jarod Wilson) [1860496] - [wireless] rtw88: remove unused member of struct rtw_hal (Jarod Wilson) [1860496] - [wireless] ath5k: Use scnprintf() for avoiding potential buffer overflow (Jarod Wilson) [1860496] - [wireless] ath11k: Use scnprintf() for avoiding potential buffer overflow (Jarod Wilson) [1860496] - [wireless] ath10k: allow qca988x family to support ack rssi of tx data packets (Jarod Wilson) [1860496] - [wireless] ath5k: Add proper dependency for ATH5K_AHB (Jarod Wilson) [1860496] - [wireless] ath11k: add thermal sensor device support (Jarod Wilson) [1860496] - [wireless] ath11k: add thermal cooling device support (Jarod Wilson) [1860496] - [wireless] ath10k: fix not registering airtime of 11a station with WMM disable (Jarod Wilson) [1860496] - [wireless] ath11k: config reorder queue for all tids during peer setup (Jarod Wilson) [1860496] - [wireless] ath10k: fix unsupported chip reset debugs file write (Jarod Wilson) [1860496] - [wireless] ath10k: use kzalloc to read for ath10k_sdio_hif_diag_read (Jarod Wilson) [1860496] - [wireless] ath10k: start recovery process when read int status fail for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: add QCA9377 sdio hw_param item (Jarod Wilson) [1860496] - [wireless] ath10k: avoid consecutive OTP download to reduce boot time (Jarod Wilson) [1860496] - [net] mac80211: Add api to support configuring TID specific configuration (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific RTSCTS configuration (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific AMPDU configuration (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific retry configuration (Jarod Wilson) [1860496] - [net] nl80211: modify TID-config API (Jarod Wilson) [1860496] - [net] nl80211: Add NL command to support TID speicific configurations (Jarod Wilson) [1860496] - [net] mac80211: Beacon protection using the new BIGTK (STA) (Jarod Wilson) [1860496] - [net] mac80211: Beacon protection using the new BIGTK (AP) (Jarod Wilson) [1860496] - [net] mac80211: Update BIP to support Beacon frames (Jarod Wilson) [1860496] - [net] mac80211: Support BIGTK configuration for Beacon protection (Jarod Wilson) [1860496] - [net] cfg80211: Support key configuration for Beacon protection (BIGTK) (Jarod Wilson) [1860496] - [net] cfg80211: More error messages for key addition failures (Jarod Wilson) [1860496] - [net] cfg80211: fix indentation errors (Jarod Wilson) [1860496] - [net] cfg80211: merge documentations of field "dev" (Jarod Wilson) [1860496] - [net] cfg80211: merge documentations of field "debugfsdir" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "reg_notifier" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "perm_addr" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "_net" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "registered" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "privid" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "probe_resp_offload" (Jarod Wilson) [1860496] - [net] Revert "nl80211: add src and dst addr attributes for control port tx/rx" (Jarod Wilson) [1860496] - [net] Revert "mac80211: support NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211_MAC_ADDRS" (Jarod Wilson) [1860496] - [net] cfg80211: remove support for adjacent channel compensation (Jarod Wilson) [1860496] - [net] mac80211: check vif pointer before airtime calculation (Jarod Wilson) [1860496] - [net] cfg80211: Pass lockdep expression to RCU lists (Jarod Wilson) [1860496] - [wireless] mwifiex: change license text from MARVELL to NXP (Jarod Wilson) [1860496] - [wireless] mt76: Introduce mt76_mcu data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove rx_mask in mt7615_eeprom_parse_hw_cap (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: rename stat_wq in wq (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: extend RX scatter gather number (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rely on mt76_queues_read for mt7622 (Jarod Wilson) [1860496] - [wireless] mt76: do not set HOST_BROADCAST_PS_BUFFERING for mt7615 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework rx phy index handling (Jarod Wilson) [1860496] - [wireless] mt76: fix rounding issues on converting per-chain and combined txpower (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: avoid starting the MAC too early (Jarod Wilson) [1860496] - [wireless] mt76: avoid extra RCU synchronization on station removal (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix monitor mode on second PHY (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix adding active monitor interfaces (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: switch mt7615_mcu_set_rx_ba to v2 format (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: switch mt7615_mcu_set_tx_ba to v2 format (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use new tag sta_rec_wtbl (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add starec operating flow for firmware v2 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add a helper to encapsulate sta_rec operation (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: simplify mcu_set_sta flow (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: simplify mcu_set_bmc flow (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for testing hardware reset (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement hardware reset support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: report firmware log event messages (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix and rework tx power handling (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add Kconfig entry for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable DBDC on MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: decrease rx ring size for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement DMA support for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement probing and firmware loading on MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable 5 GHz on MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add calibration free support for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add eeprom support for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add dma and tx queue initialization for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix MT_INT_TX_DONE_ALL definition for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: store N9 firmware version instead of CR4 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: split up firmware loading functions (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mmio related code from pci.c to mmio.c (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add __aligned(4) to txp structs (Jarod Wilson) [1860496] - [wireless] mt76: enable Airtime Queue Limit support (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: increase dma mcu rx ring size (Jarod Wilson) [1860496] - [wireless] mt76: dma: do not write cpu_idx on rx queue reset until after refill (Jarod Wilson) [1860496] - [wireless] mt76: fix handling full tx queues in mt76_dma_tx_queue_skb_raw (Jarod Wilson) [1860496] - [wireless] mt76: set dma-done flag for flushed descriptors (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce MT_DRV_RX_DMA_HDR flag (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add endpoint to mt76u_bulk_msg signature (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce mt76u_skb_dma_info routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: take into account different queue mapping for 7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add {read/write}_extended utility routines (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce mt76u_alloc_mcu_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: resume all rx queue in mt76u_resume_rx (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add queue parameter to mt76u_rx_urb_alloc (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76u_alloc_rx_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: stop/free all possible rx queues (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce mt76u_free_rx_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: move mcu buffer allocation in mt76x02u drivers (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add queue id parameter to mt76u_submit_rx_buffers (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: use mt76_queue as mt76u_complete_rx context (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76_queue to mt76u_refill_rx signature (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76_queue to mt76u_get_next_rx_entry signature (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76u_process_rx_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: check tx_status_data pointer in mt76u_tx_tasklet (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02u: avoid overwrite max_tx_fragments (Jarod Wilson) [1860496] - [wireless] mt76: rely on mac80211 utility routines to compute airtime (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove leftover routine declaration (Jarod Wilson) [1860496] - [wireless] mt76: move WIPHY_FLAG_HAS_CHANNEL_SWITCH in mt76_phy_init (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix endianness in mt7615_mcu_set_eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: initialize radar specs from host driver (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: get rid of leftover target (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add tracing support (Jarod Wilson) [1860496] - [wireless] mt76: move mac_txdone tracepoint in mt76 module (Jarod Wilson) [1860496] - [wireless] mt76: move dev_irq tracepoint in mt76 module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add a get_stats() callback (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add per-phy mib statistics (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: report TSF information (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add set_antenna callback (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework set_channel function (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing settings for simultaneous dual-band support (Jarod Wilson) [1860496] - [wireless] mt76: fix compilation warning in mt76_eeprom_override() (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: simplify led reg definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: simplify led reg definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce LED support (Jarod Wilson) [1860496] - [wireless] mt76: clear skb pointers from rx aggregation reorder buffer during cleanup (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: fix input validation issues for powersave-filtered frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: increase MCU command timeout (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: measure channel noise and report it via survey (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix MT7615_CFEND_RATE_DEFAULT value (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: minor mt76x02_mac_set_beacon optimization (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02u: do not set NULL beacons (Jarod Wilson) [1860496] - [wireless] mt76: usb: use max packet length for m76u_copy (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: add channel switch support for usb interfaces (Jarod Wilson) [1860496] - [wireless] mt76: speed up usb bulk copy (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: remove a copy call for usb speedup (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: add check for invalid vif idx (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: split beaconing (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: omit beacon slot clearing (Jarod Wilson) [1860496] - [wireless] mt76: use AC specific reorder timeout (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add set_coverage class support (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: set 0 as min coverage_class value (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: report firmware version using ethtool (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: Fix build with older compilers (Jarod Wilson) [1860496] - [wireless] mt76: eeprom: add support for big endian eeprom partition (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: reset STA_CCA counter setting the channel (Jarod Wilson) [1860496] - [wireless] mt76: fix possible undetected invalid MAC address (Jarod Wilson) [1860496] - [wireless] mt76: disable bh in mt76_dma_rx_poll (Jarod Wilson) [1860496] - [wireless] mt76: fix rx dma ring descriptor state on reset (Jarod Wilson) [1860496] - [wireless] mt7615: replace sta_state callback with sta_add/sta_remove (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: defer mcu initialization via workqueue (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: update beacon contents on BSS_CHANGED_BEACON (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for registering a second wiphy via debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: select the correct tx queue for frames sent to the second phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move radio/mac initialization to .start/stop callbacks (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: initialize dbdc settings on interface add (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add multiple wiphy support to the rx path (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework chainmask handling (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add multiple wiphy support to the dfs support code (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove useless MT_HW_RDD0/1 enum (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing register init for dual-wiphy support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add multiple wiphy support for smart carrier sense (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add dual-phy support for mac80211 ops (Jarod Wilson) [1860496] - [wireless] mt76: do not overwrite max_tx_fragments if it has been set (Jarod Wilson) [1860496] - [wireless] mt76: move ampdu_ref from mt76_dev to driver struct (Jarod Wilson) [1860496] - [wireless] mt76: add ext_phy field to struct mt76_wcid (Jarod Wilson) [1860496] - [wireless] mt76: add function for allocating an extra wiphy (Jarod Wilson) [1860496] - [wireless] mt76: add priv pointer to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: add multiple wiphy support to mt76_get_min_avg_rssi (Jarod Wilson) [1860496] - [wireless] mt76: move txpower and antenna mask to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: move txpower_conf back to driver specific structs (Jarod Wilson) [1860496] - [wireless] mt76: move chainmask back to driver specific structs (Jarod Wilson) [1860496] - [wireless] mt76: move state from struct mt76_dev to mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: keep a set of software tx queues per phy (Jarod Wilson) [1860496] - [wireless] mt76: move channel state to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in mt76_sta_state() (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in the tx status path (Jarod Wilson) [1860496] - [net] mac80211: allow setting queue_len for drivers not using wake_tx_queue (Jarod Wilson) [1860496] - [include] ieee80211: add WPA3 OWE AKM suite selector (Jarod Wilson) [1860496] - [wireless] mac80211: Fix setting txpower to zero (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in the main tx path (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in the rx path (Jarod Wilson) [1860496] - [wireless] mt76: introduce struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: move initialization of some struct members to mt76_alloc_device (Jarod Wilson) [1860496] - [wireless] rtw88: Fix incorrect beamformee role setting (Jarod Wilson) [1860496] - [wireless] rtw88: 8822: Make tables const, reduce data object size (Jarod Wilson) [1860496] - [wireless] rtw88: disable TX-AMSDU on 2.4G band (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: modify rf protection setting (Jarod Wilson) [1860496] - [wireless] rtw88: Use secondary channel offset enumeration (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: update power sequence to v16 (Jarod Wilson) [1860496] - [wireless] rtw88: add ciphers to suppress error message (Jarod Wilson) [1860496] - [wireless] rtw88: avoid holding mutex for cancel_delayed_work_sync() (Jarod Wilson) [1860496] - [wireless] rtw88: move rtw_enter_ips() to the last when config (Jarod Wilson) [1860496] - [wireless] rtw88: pci: 8822c should set clock delay to zero (Jarod Wilson) [1860496] - [wireless] rtw88: add rtw_read8_mask and rtw_read16_mask (Jarod Wilson) [1860496] - [wireless] rtw88: remove unused parameter vif in rtw_lps_pg_info_get() (Jarod Wilson) [1860496] - [wireless] brcmfmac: add the BRCM 4364 found in MacBook Pro 15, 2 (Jarod Wilson) [1860496] - [wireless] ath11k: fix incorrect peer stats counters update (Jarod Wilson) [1860496] - [wireless] ath11k: Fixing dangling pointer issue upon peer delete failure (Jarod Wilson) [1860496] - [wireless] ath11k: fix parsing PPDU_CTRL type in pktlog (Jarod Wilson) [1860496] - [wireless] ath11k: fix warn-on in disassociation (Jarod Wilson) [1860496] - [wireless] ath11k: fix rcu lock protect in peer assoc confirmation (Jarod Wilson) [1860496] - [wireless] ath11k: add HE rate accounting to driver (Jarod Wilson) [1860496] - [wireless] ath11k: drop tx_info from ath11k_sta (Jarod Wilson) [1860496] - [wireless] ath10k: Add support to read btcoex related data from DT (Jarod Wilson) [1860496] - [wireless] ath10k: fix few checkpatch warnings (Jarod Wilson) [1860496] - [net] mac80211: support NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211_MAC_ADDRS (Jarod Wilson) [1860496] - [net] nl80211: add src and dst addr attributes for control port tx/rx (Jarod Wilson) [1860496] - [net] mac80211: parse also the RSNXE IE (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: Allow user space to register for station Rx authentication (Jarod Wilson) [1860496] - [include] ieee80211: fix 'the' doubling in comments (Jarod Wilson) [1860496] - [net] mac80211: Remove support for changing AP SMPS mode (Jarod Wilson) [1860496] - [net] mac80211: Handle SMPS mode changes only in AP mode (Jarod Wilson) [1860496] - [net] mac80211: Accept broadcast probe responses on 6GHz band (Jarod Wilson) [1860496] - [net] mac80211: HE: set RX NSS (Jarod Wilson) [1860496] - [net] mac80211: set station bandwidth from HE capability (Jarod Wilson) [1860496] - [net] mac80211: remove supported channels element in 6 GHz if ECSA support (Jarod Wilson) [1860496] - [net] mac80211: update condition for HE disablement (Jarod Wilson) [1860496] - [net] mac80211: make ieee80211_wep_init() return void (Jarod Wilson) [1860496] - [net] mac80211: allow changing TX-related netdev features (Jarod Wilson) [1860496] - [net] mac80211: check whether HE connection is allowed by the reg domain (Jarod Wilson) [1860496] - [net] mac80211: refactor extended element parsing (Jarod Wilson) [1860496] - [net] mac80211: simplify and improve HT/VHT/HE disable code (Jarod Wilson) [1860496] - [net] cfg80211: Enhance the AKM advertizement to support per interface (Jarod Wilson) [1860496] - [net] cfg80211: add no HE indication to the channel flag (Jarod Wilson) [1860496] - [net] mac80211: fix 11w when using encapsulation offloading (Jarod Wilson) [1860496] - [net] mac80211: fix tx status for no ack cases (Jarod Wilson) [1860496] - [net] mac80211: add handling for BSS color (Jarod Wilson) [1860496] - [net] nl80211: add handling for BSS color (Jarod Wilson) [1860496] - [net] mac80211: debugfs: improve airtime_flags handler readability (Jarod Wilson) [1860496] - [net] mac80211: Remove redundant assertion (Jarod Wilson) [1860496] - [net] mac80211: add 802.11 encapsulation offloading support (Jarod Wilson) [1860496] - [net] mac80211: Always show airtime debugfs file when TXQs are enabled (Jarod Wilson) [1860496] - [include] trivial: mac80211: fix indentation (Jarod Wilson) [1860496]- [fs] xfs: force writes to delalloc regions to unwritten (Carlos Maiolino) [1696580] - [fs] xfs: refactor xfs_iomap_prealloc_size (Carlos Maiolino) [1696580] - [fs] xfs: measure all contiguous previous extents for prealloc size (Carlos Maiolino) [1696580] - [fs] xfs: don't fail unwritten extent conversion on writeback due to edquot (Carlos Maiolino) [1696580] - [trace] SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() (Dave Wysochanski) [1906309] - [trace] Revert "SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow()" (Dave Wysochanski) [1906309] - [uapi] uapi: fix statx attribute value overlap for DAX & MOUNT_ROOT (Eric Sandeen) [1905205] - [trace] SUNRPC: Fix oops in the rpc_xdr_buf event class (Scott Mayhew) [1900157] - [fs] NFS: Fix listxattr receive buffer size (Scott Mayhew) [1900157] - [trace] SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() (Scott Mayhew) [1900157] - [net] SUNRPC: fix copying of multiple pages in gss_read_proxy_verf() (Scott Mayhew) [1900157] - [net] svcrdma: fix bounce buffers for unaligned offsets and multiple pages (Scott Mayhew) [1900157] - [pci] hv: Document missing hv_pci_protocol_negotiation() parameter (Mohammed Gamal) [1886102] - [pci] hv: Make some functions static (Mohammed Gamal) [1886102] - [pci] hv: Use struct_size() helper (Mohammed Gamal) [1886102] - [pci] hv: Prepare hv_compose_msi_msg() for the VMBus-channel-interrupt-to-vCPU reassignment functionality (Mohammed Gamal) [1886102] - [fs] xfs: allow individual quota grace period extension (Bill O'Donnell) [1827913] - [fs] xfs: per-type quota timers and warn limits (Bill O'Donnell) [1827913] - [fs] xfs: switch xfs_get_defquota to take explicit type (Bill O'Donnell) [1827913] - [fs] xfs: pass xfs_dquot to xfs_qm_adjust_dqtimers (Bill O'Donnell) [1827913] - [fs] xfs: fix up some whitespace in quota code (Bill O'Donnell) [1827913] - [fs] xfs: preserve default grace interval during quotacheck (Bill O'Donnell) [1827913] - [fs] quota: honor quota type in Q_XGETQSTATcalls (Bill O'Donnell) [1827913]- [fs] NFS: Do uncached readdir when we're seeking a cookie in an empty page cache (Dave Wysochanski) [1893882] - [fs] NFS: Reduce number of RPC calls when doing uncached readdir (Dave Wysochanski) [1893882] - [fs] NFS: Optimisations for monotonically increasing readdir cookies (Dave Wysochanski) [1893882] - [fs] NFS: Improve handling of directory verifiers (Dave Wysochanski) [1893882] - [fs] NFS: Handle NFS4ERR_NOT_SAME and NFSERR_BADCOOKIE from readdir calls (Dave Wysochanski) [1893882] - [fs] NFS: Allow the NFS generic code to pass in a verifier to readdir (Dave Wysochanski) [1893882] - [fs] NFS: Cleanup to remove nfs_readdir_descriptor_t typedef (Dave Wysochanski) [1893882] - [fs] NFS: Reduce readdir stack usage (Dave Wysochanski) [1893882] - [fs] NFS: nfs_do_filldir() does not return a value (Dave Wysochanski) [1893882] - [fs] NFS: More readdir cleanups (Dave Wysochanski) [1893882] - [fs] NFS: Support larger readdir buffers (Dave Wysochanski) [1893882] - [fs] NFS: Simplify struct nfs_cache_array_entry (Dave Wysochanski) [1893882] - [fs] NFS: Replace kmap() with kmap_atomic() in nfs_readdir_search_array() (Dave Wysochanski) [1893882] - [fs] NFS: Remove unnecessary kmap in nfs_readdir_xdr_to_array() (Dave Wysochanski) [1893882] - [fs] NFS: Don't discard readdir results (Dave Wysochanski) [1893882] - [fs] NFS: Clean up directory array handling (Dave Wysochanski) [1893882] - [fs] NFS: Clean up nfs_readdir_page_filler() (Dave Wysochanski) [1893882] - [fs] NFS: Clean up readdir struct nfs_cache_array (Dave Wysochanski) [1893882] - [fs] NFS: Ensure contents of struct nfs_open_dir_context are consistent (Dave Wysochanski) [1893882] - [fs] NFSv4.2: condition READDIR's mask for security label based on LSM state (Dave Wysochanski) [1893882] - [fs] NFS: Remove unnecessary inode lock in nfs_fsync_dir() (Dave Wysochanski) [1893882] - [fs] NFS: Remove unnecessary inode locking in nfs_llseek_dir() (Dave Wysochanski) [1893882] - [netdrv] net: intel: Remove in_interrupt() warnings (Ken Cox) [1838732] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Ken Cox) [1838732] - [netdrv] ixgbevf: use generic power management (Ken Cox) [1838732] - [netdrv] ethernet/intel: Convert fallthrough code comments (Ken Cox) [1838732] - [netdrv] net/intel: remove driver versions from Intel drivers (Ken Cox) [1838732] - [iommu] vt-d: Don't dereference iommu_device if IOMMU_API is not built (Vitaly Kuznetsov) [1887216] - [iommu] vt-d: Gracefully handle DMAR units with no supported address widths (Vitaly Kuznetsov) [1887216] - [iommu] vt-d: Skip TE disabling on quirky gfx dedicated iommu (Vitaly Kuznetsov) [1887216] - [netdrv] Revert "mark the intel igc driver as tech preview" (Corinna Vinschen) [1838742] - [netdrv] net: intel: Remove in_interrupt() warnings (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up nvm_info structure (Corinna Vinschen) [1838742] - [netdrv] igc: Reject schedules with a base_time in the future (Corinna Vinschen) [1838742] - [netdrv] igc: Export a way to read the PTP timer (Corinna Vinschen) [1838742] - [netdrv] igc: Remove reset disable flag (Corinna Vinschen) [1838742] - [netdrv] igc: Save PTP time before a reset (Corinna Vinschen) [1838742] - [netdrv] igc: Remove references to SYSTIMR register (Corinna Vinschen) [1838742] - [netdrv] igc: Expose LPI counters (Corinna Vinschen) [1838742] - [netdrv] igc: Clean RX descriptor error flags (Corinna Vinschen) [1838742] - [netdrv] igc: Remove timeout check from ptp_tx work (Corinna Vinschen) [1838742] - [netdrv] igc: Don't reschedule ptp_tx work (Corinna Vinschen) [1838742] - [netdrv] igc: Rename IGC_TSYNCTXCTL_VALID macro (Corinna Vinschen) [1838742] - [netdrv] igc: Add new device ID's (Corinna Vinschen) [1838742] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Corinna Vinschen) [1838742] - [netdrv] igc: Fix not considering the TX delay for timestamps (Corinna Vinschen) [1838742] - [netdrv] igc: Fix wrong timestamp latency numbers (Corinna Vinschen) [1838742] - [netdrv] igc: Fix PTP initialization (Corinna Vinschen) [1838742] - [netdrv] igc: Fix static checker warning (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up the hw_stats structure (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up the mac_info structure (Corinna Vinschen) [1838742] - [netdrv] igc: Remove ledctl_ fields from the mac_info structure (Corinna Vinschen) [1838742] - [netdrv] igc: Fix registers definition (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded ICTXQMTC register (Corinna Vinschen) [1838742] - [netdrv] igc: Add Receive Descriptor Minimum Threshold Count to clear HW counters (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded variable (Corinna Vinschen) [1838742] - [netdrv] ethernet/intel: Convert fallthrough code comments (Corinna Vinschen) [1838742] - [netdrv] igc: Remove checking media type during MAC initialization (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded check for copper media type (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor the igc_power_down_link() (Corinna Vinschen) [1838742] - [netdrv] igc: Remove TCP segmentation TX fail counter (Corinna Vinschen) [1838742] - [netdrv] igc: Add LPI counters (Corinna Vinschen) [1838742] - [netdrv] igc: Fix Rx timestamp disabling (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor igc_ptp_set_timestamp_mode() (Corinna Vinschen) [1838742] - [netdrv] igc: Remove UDP filter setup in PTP code (Corinna Vinschen) [1838742] - [netdrv] igc: Check __IGC_PTP_TX_IN_PROGRESS instead of ptp_tx_skb (Corinna Vinschen) [1838742] - [netdrv] igc: Remove duplicate code in Tx timestamp handling (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up Rx timestamping logic (Corinna Vinschen) [1838742] - [netdrv] igc: Add initial LTR support (Corinna Vinschen) [1838742] - [netdrv] igc: Add initial EEE support (Corinna Vinschen) [1838742] - [netdrv] net/intel: remove driver versions from Intel drivers (Corinna Vinschen) [1838742] - [netdrv] igc: Fix wrong register name (Corinna Vinschen) [1838742] - [netdrv] igc: Remove Sequence Error Counter (Corinna Vinschen) [1838742] - [netdrv] igc: Add Receive Error Counter (Corinna Vinschen) [1838742] - [netdrv] igc: Remove symbol error counter (Corinna Vinschen) [1838742] - [netdrv] igc: Fix IGC_MAX_RXNFC_RULES (Corinna Vinschen) [1838742] - [netdrv] igc: Reject NFC rules with multiple matches (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused flags (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused descriptor's flags (Corinna Vinschen) [1838742] - [netdrv] igc: Remove igc_nfc_rule_exit() (Corinna Vinschen) [1838742] - [netdrv] igc: Change adapter->nfc_rule_lock to mutex (Corinna Vinschen) [1838742] - [netdrv] igc: Change return type from igc_disable_nfc_rule() (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rule validation (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rules leak when driver is unloaded (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor igc_ethtool_update_nfc_rule() (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rules restoration (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rules with multicast addresses (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rule overwrite cases (Corinna Vinschen) [1838742] - [netdrv] igc: Fix locking issue when retrieving NFC rules (Corinna Vinschen) [1838742] - [netdrv] igc: Fix 'sw_idx' type in struct igc_nfc_rule (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor igc_ethtool_add_nfc_rule() (Corinna Vinschen) [1838742] - [netdrv] igc: Change byte order in struct igc_nfc_filter (Corinna Vinschen) [1838742] - [netdrv] igc: Align terms used in NFC support code (Corinna Vinschen) [1838742] - [netdrv] igc: Add 'igc_ethtool_' prefix to functions in igc_ethtool.c (Corinna Vinschen) [1838742] - [netdrv] igc: Early return in igc_get_ethtool_nfc_entry() (Corinna Vinschen) [1838742] - [netdrv] igc: Cleanup _get|set_rxnfc ethtool ops (Corinna Vinschen) [1838742] - [netdrv] igc: Get rid of igc_max_channels() (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused field from igc_nfc_filter (Corinna Vinschen) [1838742] - [netdrv] igc: Remove per queue good transmited counter register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove header redirection register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove obsolete circuit breaker registers (Corinna Vinschen) [1838742] - [netdrv] igc: Enable NFC rules based source MAC address (Corinna Vinschen) [1838742] - [netdrv] igc: Add support for source address filters in core (Corinna Vinschen) [1838742] - [netdrv] igc: Remove mac_table from igc_adapter (Corinna Vinschen) [1838742] - [netdrv] igc: Remove IGC_MAC_STATE_SRC_ADDR flag (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused registers (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused IGC_ICS_DRSTA define (Corinna Vinschen) [1838742] - [netdrv] igc: Dump ETQF registers (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor ethertype filtering code (Corinna Vinschen) [1838742] - [netdrv] igc: Fix MAX_ETYPE_FILTER value (Corinna Vinschen) [1838742] - [netdrv] igc: Remove ethertype filter in PTP code (Corinna Vinschen) [1838742] - [netdrv] igc: Remove duplicated IGC_RXPBS macro (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor VLAN priority filtering code (Corinna Vinschen) [1838742] - [netdrv] igc: Return -EOPNOTSUPP when VLAN mask doesn't match (Corinna Vinschen) [1838742] - [netdrv] igc: Dump VLANPQF register (Corinna Vinschen) [1838742] - [netdrv] igc: Rename IGC_VLAPQF macro (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up obsolete NVM defines (Corinna Vinschen) [1838742] - [netdrv] igc: remove IGC_REMOVED function (Corinna Vinschen) [1838742] - [netdrv] igc: Remove PCIe Control register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded definition (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_base.c (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_dump.c (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_ptp.c (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_ethtool.c (Corinna Vinschen) [1838742] - [netdrv] igc: add support to eeprom, registers and link self-tests (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_main.c (Corinna Vinschen) [1838742] - [netdrv] igc: Add ECN support for TSO (Corinna Vinschen) [1838742] - [netdrv] ionic: fix mem leak in rx_empty (Jonathan Toppins) [1892492 1887516] - [netdrv] ionic: no rx flush in deinit (Jonathan Toppins) [1892492 1887516] - [netdrv] ionic: clean up sparse complaints (Jonathan Toppins) [1892492 1887516] - [netdrv] ionic: add new bad firmware error code (Jonathan Toppins) [1887516] - [netdrv] ionic: use lif ident for filter count (Jonathan Toppins) [1887516] - [netdrv] ionic: refill lif identity after fw_up (Jonathan Toppins) [1887516] - [netdrv] ionic: disable all queue napi contexts on timeout (Jonathan Toppins) [1887516] - [netdrv] ionic: check qcq ptr in ionic_qcq_disable (Jonathan Toppins) [1887516] - [netdrv] ionic: clear linkcheck bit on alloc fail (Jonathan Toppins) [1887516] - [netdrv] ionic: drain the work queue (Jonathan Toppins) [1887516] - [netdrv] ionic: contiguous memory for notifyq (Jonathan Toppins) [1887516] - [netdrv] ionic: prevent early watchdog check (Jonathan Toppins) [1887516] - [netdrv] ionic: stop watchdog timer earlier on remove (Jonathan Toppins) [1887516 1887263] - [netdrv] net: ionic: Remove WARN_ON(in_interrupt()) (Jonathan Toppins) [1887516] - [netdrv] net: ionic: Replace in_interrupt() usage (Jonathan Toppins) [1887516] - [netdrv] ionic: add DIMLIB to Kconfig (Jonathan Toppins) [1861520] - [netdrv] ionic: add devlink firmware update (Jonathan Toppins) [1861520] - [netdrv] ionic: update the fw update api (Jonathan Toppins) [1861520] - [netdrv] ionic: dynamic interrupt moderation (Jonathan Toppins) [1861520] - [netdrv] ionic: fix up debugfs after queue swap (Jonathan Toppins) [1861520] - [netdrv] ionic: clarify boolean precedence (Jonathan Toppins) [1861520] - [netdrv] ionic: remove unused variable (Jonathan Toppins) [1861520] - [netdrv] ionic: clean adminq service routine (Jonathan Toppins) [1861520] - [netdrv] ionic: clean up desc_info and cq_info structs (Jonathan Toppins) [1861520] - [netdrv] ionic: struct reorder for faster access (Jonathan Toppins) [1861520] - [netdrv] ionic: clean up page handling code (Jonathan Toppins) [1861520] - [netdrv] ionic: fix txrx work accounting (Jonathan Toppins) [1861520] - [netdrv] ionic: pull reset_queues into tx_timeout handler (Jonathan Toppins) [1861520] - [netdrv] ionic: change queue count with no reset (Jonathan Toppins) [1861520] - [netdrv] ionic: change the descriptor ring length without full reset (Jonathan Toppins) [1861520] - [netdrv] ionic: change mtu without full queue rebuild (Jonathan Toppins) [1861520] - [netdrv] ionic: use index not pointer for queue tracking (Jonathan Toppins) [1861520] - [netdrv] ionic: reduce contiguous memory allocation requirement (Jonathan Toppins) [1861520] - [netdrv] ionic: clean up unnecessary non-static functions (Jonathan Toppins) [1861520] - [netdrv] ionic: rework and simplify handling of the queue stats block (Jonathan Toppins) [1861520] - [netdrv] ionic: remove lif list concept (Jonathan Toppins) [1861520] - [netdrv] ionic: use kcalloc for new arrays (Jonathan Toppins) [1861520] - [netdrv] ionic: fix up a couple of debug strings (Jonathan Toppins) [1861520] - [netdrv] ionic: set MTU floor at ETH_MIN_MTU (Jonathan Toppins) [1861520] - [netdrv] ionic_lif: Use devm_kcalloc() in ionic_qcq_alloc() (Jonathan Toppins) [1861520] - [netdrv] ionic: separate interrupt for Tx and Rx (Jonathan Toppins) [1861520] - [netdrv] ionic: tx separate servicing (Jonathan Toppins) [1861520] - [netdrv] ionic: use fewer firmware doorbells on rx fill (Jonathan Toppins) [1861520] - [netdrv] ionic: fix memory leak of object 'lid' (Jonathan Toppins) [1861520] - [netdrv] ionic: interface file updates (Jonathan Toppins) [1861520] - [netdrv] ionic: rearrange reset and bus-master control (Jonathan Toppins) [1861520] - [netdrv] ionic: update eid test for overflow (Jonathan Toppins) [1861520] - [netdrv] ionic: remove unused ionic_coal_hw_to_usec (Jonathan Toppins) [1861520] - [netdrv] ionic: set netdev default name (Jonathan Toppins) [1861520] - [netdrv] ionic: get MTU from lif identity (Jonathan Toppins) [1861520] - [netdrv] ionic: keep rss hash after fw update (Jonathan Toppins) [1861520] - [netdrv] ionic: update filter id after replay (Jonathan Toppins) [1861520] - [netdrv] ionic: fix up filter locks and debug msgs (Jonathan Toppins) [1861520] - [netdrv] ionic: use offset for ethtool regs data (Jonathan Toppins) [1861520] - [md] md/raid5: Allow degraded raid6 to do rmw (Nigel Croxon) [1856838] - [md] md/raid5: Fix Force reconstruct-write io stuck in degraded raid5 (Nigel Croxon) [1856838] - [md] raid5: don't duplicate code for different paths in handle_stripe (Nigel Croxon) [1856838] - [md] raid5-cache: hold spinlock instead of mutex in r5c_journal_mode_show (Nigel Croxon) [1856838] - [md] md: print errno in super_written (Nigel Croxon) [1856838] - [md] md/raid5: remove the redundant setting of STRIPE_HANDLE (Nigel Croxon) [1856838] - [md] md: register new md sysfs file 'uuid' read-only (Nigel Croxon) [1856838] - [md] md: fix max sectors calculation for super 1.0 (Nigel Croxon) [1856838] - [md] md/raid5: use do_div() for 64 bit divisions in raid5_sync_request (Nigel Croxon) [1856838] - [md] md/raid10: avoid deadlock on recovery (Nigel Croxon) [1856838] - [md] md-cluster: fix rmmod issue when md_cluster convert bitmap to none (Nigel Croxon) [1856838] - [md] md-cluster: fix safemode_delay value when converting to clustered bitmap (Nigel Croxon) [1856838] - [md] md/raid5: support config stripe_size by sysfs entry (Nigel Croxon) [1856838] - [md] md/raid5: set default stripe_size as 4096 (Nigel Croxon) [1856838] - [md] md/raid456: convert macro STRIPE_* to RAID5_STRIPE_* (Nigel Croxon) [1856838] - [md] raid5: remove the meaningless check in raid5_make_request (Nigel Croxon) [1856838] - [md] raid5: put the comment of clear_batch_ready to the right place (Nigel Croxon) [1856838] - [md] raid5: call clear_batch_ready before set STRIPE_ACTIVE (Nigel Croxon) [1856838] - [md] md: raid10: Fix compilation warning (Nigel Croxon) [1856838] - [md] md: raid5: Fix compilation warning (Nigel Croxon) [1856838] - [md] md: raid5-cache: Remove set but unused variable (Nigel Croxon) [1856838] - [md] md: Fix compilation warning (Nigel Croxon) [1856838] - [md] md-cluster: fix wild pointer of unlock_all_bitmaps() (Nigel Croxon) [1856838] - [md] md/raid5-cache: clear MD_SB_CHANGE_PENDING before flushing stripes (Nigel Croxon) [1856838] - [md] md: fix deadlock causing by sysfs_notify (Nigel Croxon) [1856838] - [md] md: raid0/linear: fix dereference before null check on pointer mddev (Nigel Croxon) [1856838] - [md] md/raid1: Replace zero-length array with flexible-array (Nigel Croxon) [1856838] - [md] md: add a newline when printing parameter 'start_ro' by sysfs (Nigel Croxon) [1856838] - [md] md: stop using ->queuedata (Nigel Croxon) [1856838] - [md] md/raid1: release pending accounting for an I/O only after write-behind is also finished (Nigel Croxon) [1856838] - [md] md: remove redundant memalloc scope API usage (Nigel Croxon) [1856838] - [md] raid5: update code comment of scribble_alloc() (Nigel Croxon) [1856838] - [md] raid5: remove gfp flags from scribble_alloc() (Nigel Croxon) [1856838] - [md] md: use memalloc scope APIs in mddev_suspend()/mddev_resume() (Nigel Croxon) [1856838] - [md] md: remove the extra line for ->hot_add_disk (Nigel Croxon) [1856838] - [md] md: flush md_rdev_misc_wq for HOT_ADD_DISK case (Nigel Croxon) [1856838] - [md] md: don't flush workqueue unconditionally in md_open (Nigel Croxon) [1856838] - [md] md: add new workqueue for delete rdev (Nigel Croxon) [1856838] - [md] md: add checkings before flush md_misc_wq (Nigel Croxon) [1856838] - [md] md: check arrays is suspended in mddev_detach before call quiesce operations (Nigel Croxon) [1856838]- [scsi] storvsc: Fix error return in storvsc_probe() (Cathy Avery) [1895026] - [scsi] storvsc: Support PAGE_SIZE larger than 4K (Cathy Avery) [1895026] - [kernel] hv: hyperv.h: Introduce some hvpfn helper functions (Cathy Avery) [1895026] - [scsi] storvsc: Add validation for untrusted Hyper-V values (Cathy Avery) [1895026] - [scsi] storvsc: Fix spelling mistake (Cathy Avery) [1895026] - [scsi] storvsc: Remove memset before memory freeing in storvsc_suspend() (Cathy Avery) [1895026] - [net] tipc: fix incorrect setting window for bcast link (Xin Long) [1893085] - [net] tipc: re-configure queue limit for broadcast link (Xin Long) [1893085] - [net] tipc: fix NULL pointer dereference in tipc_named_rcv (Xin Long) [1893085] - [net] tipc: Supply missing udp_media.h include file (Xin Long) [1893085] - [net] tipc: add automatic rekeying for encryption key (Xin Long) [1893085] - [net] tipc: add automatic session key exchange (Xin Long) [1893085] - [net] tipc: introduce encryption master key (Xin Long) [1893085] - [net] tipc: optimize key switching time and logic (Xin Long) [1893085] - [net] tipc: Fix memory leak in tipc_group_create_member() (Xin Long) [1893085] - [net] tipc: fix shutdown() of connection oriented socket (Xin Long) [1893085] - [net] tipc: fix a deadlock when flushing scheduled work (Xin Long) [1893085] - [net] tipc: fix shutdown() of connectionless socket (Xin Long) [1893085] - [net] tipc: fix using smp_processor_id() in preemptible (Xin Long) [1893085] - [net] tipc: fix use-after-free in tipc_bcast_get_mode (Xin Long) [1893085] - [net] tipc: call rcu_read_lock() in tipc_aead_encrypt_done() (Xin Long) [1893085] - [net] tipc: fix uninit skb->data in tipc_nl_compat_dumpit() (Xin Long) [1893085] - [net] tipc: update a binding service via broadcast (Xin Long) [1893085] - [hv] hv_balloon: do adjust_managed_page_count() when ballooning/un-ballooning (Vitaly Kuznetsov) [1894717] - [hv] hv_balloon: simplify math in alloc_balloon_pages() (Vitaly Kuznetsov) [1894717] - [md] dm integrity: don't use drivers that have CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [md] dm crypt: don't use drivers that have CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [crypto] crypto: drivers - set the flag CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [include] crypto: algapi - introduce the flag CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [fs] iomap: Set all uptodate bits for an Uptodate page (Brian Foster) [1654127] - [scsi] scsi: ibmvfc: Avoid link down on FS9100 canister reboot (Desnes Augusto Nunes do Rosario) [1882613] - [scsi] scsi: ibmvfc: Use compiler attribute defines instead of __attribute__() (Desnes Augusto Nunes do Rosario) [1882613] - [arm64] arm64: Enable PCI write-combine resources under sysfs (Petr Oros) [1872943] - [scsi] scsi: mpt3sas: Bump driver version to 35.101.00.00 (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Add module parameter multipath_on_hba (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Handle vSES vphy object during HBA reset (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Add bypass_dirty_port_flag parameter (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Handling HBA vSES device (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Set valid PhysicalPort in SMPPassThrough (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Update hba_port objects after host reset (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Get sas_device objects using device's rphy (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Rename transport_del_phy_from_an_existing_port() (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Get device objects using sas_address & portID (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Update hba_port's sas_address & phy_mask (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Rearrange _scsih_mark_responding_sas_device() (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Allocate memory for hba_port objects (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Define hba_port structure (Tomas Henzl) [1888543]- [netdrv] net: phy: realtek: Modify 2.5G PHY name to RTL8226 (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: enable ALDPS to save power for RTL8211F (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: fix rtl8211e rx/tx delay config (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: add support for RTL8125B-internal PHY (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: add delay to resume path of certain internal PHY's (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: read actual speed to detect downshift (Josef Oskera) [1889854] - [netdrv] r8169: fix issue with forced threading in combination with shared interrupts (Josef Oskera) [1889854] - [netdrv] r8169: fix operation under forced interrupt threading (Josef Oskera) [1889854] - [netdrv] r8169: factor out handling rtl8169_stats (Josef Oskera) [1889854] - [netdrv] r8169: consider that PHY reset may still be in progress after applying firmware (Josef Oskera) [1889854] - [netdrv] r8169: fix data corruption issue on RTL8402 (Josef Oskera) [1889854] - [netdrv] r8169: fix handling ether_clk (Josef Oskera) [1889854] - [netdrv] r8169: fix RTL8168f/RTL8411 EPHY config (Josef Oskera) [1889854] - [netdrv] r8169: remove member irq_enabled from struct rtl8169_private (Josef Oskera) [1889854] - [netdrv] r8169: use napi_complete_done return value (Josef Oskera) [1889854] - [netdrv] r8169: allow to enable ASPM on RTL8125A (Josef Oskera) [1889854] - [netdrv] r8169: add support for RTL8125B (Josef Oskera) [1889854] - [netdrv] r8169: sync support for RTL8401 with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: merge handling of RTL8101e and RTL8100e (Josef Oskera) [1889854] - [netdrv] r8169: rename RTL8125 to RTL8125A (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl8169_runtime_resume (Josef Oskera) [1889854] - [netdrv] r8169: remove driver-specific mutex (Josef Oskera) [1889854] - [netdrv] r8169: use RTNL to protect critical sections (Josef Oskera) [1889854] - [netdrv] r8169: add rtl8169_up (Josef Oskera) [1889854] - [netdrv] r8169: remove no longer needed checks for device being runtime-active (Josef Oskera) [1889854] - [netdrv] r8169: mark device as not present when in PCI D3 (Josef Oskera) [1889854] - [netdrv] r8169: allow setting irq coalescing if link is down (Josef Oskera) [1889854] - [netdrv] r8169: move switching optional clock on/off to pll power functions (Josef Oskera) [1889854] - [netdrv] r8169: move updating counters to rtl8169_down (Josef Oskera) [1889854] - [netdrv] r8169: move napi_disable call and rename rtl8169_hw_reset (Josef Oskera) [1889854] - [netdrv] r8169: replace synchronize_rcu with synchronize_net (Josef Oskera) [1889854] - [netdrv] r8169: improve setting WoL on runtime-resume (Josef Oskera) [1889854] - [netdrv] r8169: remove unused constant RsvdMask (Josef Oskera) [1889854] - [netdrv] r8169: add info for DASH being enabled (Josef Oskera) [1889854] - [netdrv] r8169: fix failing WoL (Josef Oskera) [1889854] - [netdrv] r8169: improve handling power management ops (Josef Oskera) [1889854] - [netdrv] r8169: make rtl8169_down central chip quiesce function (Josef Oskera) [1889854] - [netdrv] r8169: move some calls to rtl8169_hw_reset (Josef Oskera) [1889854] - [netdrv] r8169: don't reset tx ring indexes in rtl8169_tx_clear (Josef Oskera) [1889854] - [netdrv] r8169: enable WAKE_PHY as only WoL source when runtime-suspending (Josef Oskera) [1889854] - [netdrv] r8169: change driver data type (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_remove_one (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168f/RTL8411 hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168evl hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168h hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168g hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: remove mask argument from r8168ep_ocp_read (Josef Oskera) [1889854] - [netdrv] r8169: remove mask argument from r8168dp_ocp_read (Josef Oskera) [1889854] - [netdrv] r8169: remove mask argument from rtl_w0w1_eri (Josef Oskera) [1889854] - [netdrv] r8169: work around an irq coalescing related tx timeout (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl8169_mark_to_asic (Josef Oskera) [1889854] - [netdrv] r8169: make rtl_rx better readable (Josef Oskera) [1889854] - [netdrv] r8169: remove remaining call to mdiobus_unregister (Josef Oskera) [1889854] - [netdrv] r8169: don't include linux/moduleparam.h (Josef Oskera) [1889854] - [netdrv] r8169: remove not needed checks in rtl8169_set_eee (Josef Oskera) [1889854] - [netdrv] r8169: improve reset handling for chips from RTL8168g (Josef Oskera) [1889854] - [netdrv] r8169: add helper rtl_wait_txrx_fifo_empty (Josef Oskera) [1889854] - [netdrv] r8169: add helper rtl_enable_rxdvgate (Josef Oskera) [1889854] - [netdrv] r8169: add helper r8168g_wait_ll_share_fifo_ready (Josef Oskera) [1889854] - [netdrv] r8169: use fsleep in polling functions (Josef Oskera) [1889854] - [netdrv] r8169: use new helper eth_hw_addr_crc (Josef Oskera) [1889854] - [netdrv] r8169: switch from netif_xxx message functions to netdev_xxx (Josef Oskera) [1889854] - [netdrv] r8169: remove "out of memory" error message from rtl_request_firmware (Josef Oskera) [1889854] - [netdrv] r8169: simplify counter handling (Josef Oskera) [1889854] - [netdrv] r8169: remove redundant driver message when entering promiscuous mode (Josef Oskera) [1889854] - [netdrv] r8169: remove not needed parameter in rtl8169_set_magic_reg (Josef Oskera) [1889854] - [netdrv] r8169: configure PME_SIGNAL for RTL8125 too (Josef Oskera) [1889854] - [netdrv] r8169: improve max jumbo packet size definition (Josef Oskera) [1889854] - [netdrv] r8169: add check for invalid parameter combination in rtl_set_coalesce (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_set_coalesce (Josef Oskera) [1889854] - [netdrv] r8169: improve interrupt coalescing parameter handling (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_coalesce_choose_scale (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_get_coalesce (Josef Oskera) [1889854] - [netdrv] r8169: merge scale for tx and rx irq coalescing (Josef Oskera) [1889854] - [netdrv] r8169: don't pass net_device to irq coalescing sub-functions (Josef Oskera) [1889854] - [netdrv] r8169: improve error message if no dedicated PHY driver is found (Josef Oskera) [1889854] - [netdrv] r8169: improve configuring RxConfig register (Josef Oskera) [1889854] - [netdrv] r8169: improve handling CPCMD_MASK (Josef Oskera) [1889854] - [netdrv] r8169: use devm_mdiobus_register (Josef Oskera) [1889854] - [netdrv] r8169: change wmb to smb_wmb in rtl8169_start_xmit (Josef Oskera) [1889854] - [netdrv] r8169: inline rtl8169_make_unusable_by_asic (Josef Oskera) [1889854] - [netdrv] r8169: inline rtl8169_mark_as_last_descriptor (Josef Oskera) [1889854] - [netdrv] r8169: remove PHY resume delay that is handled in the PHY driver now (Josef Oskera) [1889854] - [netdrv] r8169: add workaround for RTL8168evl TSO hw issues (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl8169_tso_csum_v2 (Josef Oskera) [1889854] - [netdrv] r8169: use rtl8169_set_features in rtl8169_init_one (Josef Oskera) [1889854] - [netdrv] r8169: preserve VLAN setting on RTL8125 in rtl_init_rxcfg (Josef Oskera) [1889854] - [netdrv] r8169: remove NETIF_F_HIGHDMA from vlan_features (Josef Oskera) [1889854] - [netdrv] r8169: move setting OCP base to generic init code (Josef Oskera) [1889854] - [s390] sclp: provide extended sccb support (Thomas Huth) [1798484] - [s390] sclp: avoid copy of sclp_info_sccb (Thomas Huth) [1798484] - [s390] sclp: use memblock for early read cpu info (Thomas Huth) [1798484] - [include] ptp: add stub function for ptp_get_msgtype() (Ivan Vecera) [1899217] - [include] ptp: Add generic ptp message type function (Ivan Vecera) [1899217] - [net] ptp: Add generic ptp v2 header parsing function (Ivan Vecera) [1899217] - [video] hyperv_fb: Fix the cache type when mapping the VRAM (Mohammed Gamal) [1886106] - [video] hyperv_fb: include vmalloc.h (Mohammed Gamal) [1886106] - [video] hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs (Mohammed Gamal) [1886106] - [video] hyperv_fb: Fix hibernation for the deferred IO feature (Mohammed Gamal) [1886106] - [video] hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver (Mohammed Gamal) [1886106] - [uio] uio_hv_generic: add missed sysfs_remove_bin_file (Mohammed Gamal) [1886106] - [input] hyperv-keyboard: Use VMBUS_RING_SIZE() for ringbuffer sizes (Mohammed Gamal) [1886106] - [hid] hyperv: Use VMBUS_RING_SIZE() for ringbuffer sizes (Mohammed Gamal) [1886106] - [netdrv] hv_netvsc: Add validation for untrusted Hyper-V values (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Fix the queue_mapping in netvsc_vf_xmit() (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Remove "unlikely" from netvsc_select_queue (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: do not use VF device if link is down (Mohammed Gamal) [1886097] - [netdrv] hyperv: dump TX indirection table to ethtool regs (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: add support for vlans in AF_PACKET mode (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Fix netvsc_start_xmit's return type (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Remove unnecessary round_up for recv_completion_cnt (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: use new helper tcp_v6_gso_csum_prep (Mohammed Gamal) [1886097] - [tools] kvm_stat: add sample systemd unit file (Thomas Huth) [1851123] - [tools] kvm_stat: Add command line switch '-L' to log to file (Thomas Huth) [1851123] - [tools] kvm_stat: add command line switch '-z' to skip zero records (Thomas Huth) [1851123] - [mm] mm/gup: Mark lock taken only after a successful retake (Chris von Recklinghausen) [1885412] - [mm] mm/filemap.c: fix a data race in filemap_fault() (Chris von Recklinghausen) [1885412] - [mm] mm: fix kthread_use_mm() vs TLB invalidate (Chris von Recklinghausen) [1885412] - [fs] kernel: set USER_DS in kthread_use_mm (Chris von Recklinghausen) [1885412] - [drm] kernel: better document the use_mm/unuse_mm API contract (Chris von Recklinghausen) [1885412] - [kernel] kernel: move use_mm/unuse_mm to kthread.c (Chris von Recklinghausen) [1885412] - [drm] drm/i915: convert get_user_pages() --> pin_user_pages() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: introduce pin_user_pages_fast_only() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: refactor and de-duplicate gup_fast() code (Chris von Recklinghausen) [1885412] - [mm] mm/gup: move __get_user_pages_fast() down a few lines in gup.c (Chris von Recklinghausen) [1885412] - [mm] gup: document and work around "COW can break either way" issue (Chris von Recklinghausen) [1885412] - [vfio] vfio: checking of validity of user vaddr in vfio_dma_rw (Chris von Recklinghausen) [1885412] - [fs] mm/userfaultfd: honor FAULT_FLAG_KILLABLE in fault path (Chris von Recklinghausen) [1885412] - [mm] mm/gup: allow to react to fatal signals (Chris von Recklinghausen) [1885412] - [mm] mm/gup: allow VM_FAULT_RETRY for multiple times (Chris von Recklinghausen) [1885412] - [mm] mm: allow VM_FAULT_RETRY for multiple times (Chris von Recklinghausen) [1885412] - [fs] mm: introduce FAULT_FLAG_INTERRUPTIBLE (Chris von Recklinghausen) [1885412] - [mm] mm: introduce FAULT_FLAG_DEFAULT (Chris von Recklinghausen) [1885412] - [fs] userfaultfd: don't retake mmap_sem to emulate NOPAGE (Chris von Recklinghausen) [1885412] - [include] mm: return faster for non-fatal signals in user mode faults (Chris von Recklinghausen) [1885412] - [mm] powerpc/mm: use helper fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] arm64/mm: use helper fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] x86/mm: use helper fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] mm: introduce fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: fix __get_user_pages() on fault retry of hugetlb (Chris von Recklinghausen) [1885412] - [mm] mm/gup: rename "nonblocking" to "locked" where proper (Chris von Recklinghausen) [1885412] - [mm] mm/gup: rename nr as nr_pinned in get_user_pages_fast() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: require FOLL_GET for get_user_pages_fast() (Chris von Recklinghausen) [1885412] - [mm] mm/filemap.c: don't bother dropping mmap_sem for zero size readahead (Chris von Recklinghausen) [1885412] - [mm] mm/slb: export __kmalloc_track(_node)_caller (Chris von Recklinghausen) [1885412] - [mm] mm: Add vmf_insert_pfn_xxx_prot() for huge page-table entries (Chris von Recklinghausen) [1885412] - [vfio] vfio: introduce vfio_dma_rw to read/write a range of IOVAs (Chris von Recklinghausen) [1885412] - [infiniband] mm, tree-wide: rename put_user_page*() to unpin_user_page*() (Chris von Recklinghausen) [1885412] - [mm] mm/gup_benchmark: use proper FOLL_WRITE flags instead of hard-coding "1" (Chris von Recklinghausen) [1885412] - [mm] powerpc: book3s64: convert to pin_user_pages() and put_user_page() (Chris von Recklinghausen) [1885412] - [vfio] vfio, mm: pin_user_pages (FOLL_PIN) and put_user_page() conversion (Chris von Recklinghausen) [1885412] - [media] media/v4l2-core: pin_user_pages (FOLL_PIN) and put_user_page() conversion (Chris von Recklinghausen) [1885412] - [net] net/xdp: set FOLL_PIN via pin_user_pages() (Chris von Recklinghausen) [1885412] - [drm] drm/via: set FOLL_PIN via pin_user_pages_fast() (Chris von Recklinghausen) [1885412] - [mm] mm/process_vm_access: set FOLL_PIN via pin_user_pages_remote() (Chris von Recklinghausen) [1885412] - [infiniband] IB/{core, hw, umem}: set FOLL_PIN via pin_user_pages*(), fix up ODP (Chris von Recklinghausen) [1885412] - [documentation] mm/gup: introduce pin_user_pages*() and FOLL_PIN (Chris von Recklinghausen) [1885412] - [media] media/v4l2-core: set pages dirty upon releasing DMA buffers (Chris von Recklinghausen) [1885412] - [mm] mm/gup: allow FOLL_FORCE for get_user_pages_fast() (Chris von Recklinghausen) [1885412] - [vfio] vfio: fix FOLL_LONGTERM use, simplify get_user_pages_remote() call (Chris von Recklinghausen) [1885412] - [mm] mm: fix get_user_pages_remote()'s handling of FOLL_LONGTERM (Chris von Recklinghausen) [1885412] - [mm] mm/gup: factor out duplicate code from four routines (Chris von Recklinghausen) [1885412] - [mm] mm: drop mmap_sem before calling balance_dirty_pages() in write fault (Chris von Recklinghausen) [1885412] - [vfio] vfio/type1: untag user pointers in vaddr_get_pfn (Chris von Recklinghausen) [1885412] - [mm] mm: untag user pointers in mm/gup.c (Chris von Recklinghausen) [1885412] - [drm] drivers/gpu/drm/via: convert put_page() to put_user_page*() (Chris von Recklinghausen) [1885412] - [fs] fs/io_uring.c: convert put_page() to put_user_page*() (Chris von Recklinghausen) [1885412] - [mm] mm: mark the page referenced in gup_hugepte (Chris von Recklinghausen) [1885412] - [mm] mm: switch gup_hugepte to use try_get_compound_head (Chris von Recklinghausen) [1885412] - [mm] mm: move the powerpc hugepd code to mm/gup.c (Chris von Recklinghausen) [1885412] - [mm] mm: validate get_user_pages_fast flags (Chris von Recklinghausen) [1885412] - [mm] mm: consolidate the get_user_pages* implementations (Chris von Recklinghausen) [1885412] - [mm] mm: reorder code blocks in gup.c (Chris von Recklinghausen) [1885412] - [mm] mm: rename CONFIG_HAVE_GENERIC_GUP to CONFIG_HAVE_FAST_GUP (Chris von Recklinghausen) [1885412] - [x86] mm: lift the x86_32 PAE version of gup_get_pte to common code (Chris von Recklinghausen) [1885412] - [s390] mm: simplify gup_fast_permitted (Chris von Recklinghausen) [1885412] - [mm] mm: use untagged_addr() for get_user_pages_fast addresses (Chris von Recklinghausen) [1885412] - [mm] powerpc/mm: make gup_hugepte() static (Chris von Recklinghausen) [1885412] - [mm] filemap: drop the mmap_sem for all blocking operations (Chris von Recklinghausen) [1885412] - [mm] filemap: kill page_cache_read usage in filemap_fault (Chris von Recklinghausen) [1885412] - [mm] filemap: pass vm_fault to the mmap ra helpers (Chris von Recklinghausen) [1885412] - [mm] docs/core-api/mm: fix return value descriptions in mm/ (Chris von Recklinghausen) [1885412] - [mm] docs/mm: vmalloc: re-indent kernel-doc comemnts (Chris von Recklinghausen) [1885412] - [drm] drm/via: mark expected switch fall-throughs (Chris von Recklinghausen) [1885412] - [mm] x86/mm: Break out kernel address space handling (Chris von Recklinghausen) [1885412] - [kernel] locking/rwsem: Remove reader optimistic spinning (Waiman Long) [1895046] - [kernel] locking/rwsem: Enable reader optimistic lock stealing (Waiman Long) [1895046] - [kernel] locking/rwsem: Prevent potential lock starvation (Waiman Long) [1895046] - [kernel] locking/rwsem: Pass the current atomic count to rwsem_down_read_slowpath() (Waiman Long) [1895046] - [kernel] locking/rwsem: Fold __down_{read,write}*() (Waiman Long) [1895046] - [kernel] locking/rwsem: Introduce rwsem_write_trylock() (Waiman Long) [1895046] - [kernel] locking/rwsem: Better collate rwsem_read_trylock() (Waiman Long) [1895046] - [kernel] rwsem: Implement down_read_interruptible (Waiman Long) [1895046] - [kernel] rwsem: Implement down_read_killable_nested (Waiman Long) [1895046] - [powerpc] powerpc/perf: Fix crash with is_sier_available when pmu is not set (Steve Best) [1904225] - [powerpc] kvm: ppc: book3s hv: xive: Fix vCPU id sanity check (Greg Kurz) [1902709] - [net] ip6_gre: set dev->hard_header_len when using header_ops (Antoine Tenart) [1895789] - [fs] xfs: flush new eof page on truncate to avoid post-eof corruption (Brian Foster) [1878495] - [netdrv] bonding: set dev->needed_headroom in bond_setup_by_slave() (Antoine Tenart) [1903073] - [net] netfilter: bridge: reset skb->pkt_type after NF_INET_POST_ROUTING traversal (Antoine Tenart) [1901026] - [infiniband] RDMA/umem: Prevent small pages from being returned by ib_umem_find_best_pgsz() (Kamal Heib) [1857605] - [infiniband] IB/hfi1: Fix error return code in hfi1_init_dd() (Kamal Heib) [1857605] - [infiniband] RDMA/pvrdma: Fix missing kfree() in pvrdma_register_device() (Kamal Heib) [1857605] - [infiniband] RDMA/cm: Make the local_id_table xarray non-irq (Kamal Heib) [1857605] - [infiniband] IB/srpt: Fix memory leak in srpt_add_one (Kamal Heib) [1857605] - [infiniband] RDMA/bnxt_re: Set queue pair state when being queried (Kamal Heib) [1894681 1857605] - [infiniband] RDMA/rxe: Handle skb_clone() failure in rxe_recv.c (Kamal Heib) [1857605] - [infiniband] RDMA/rxe: Fix bug rejecting all multicast packets (Kamal Heib) [1857605] - [infiniband] RDMA/rxe: Fix skb lifetime in rxe_rcv_mcast_pkt() (Kamal Heib) [1857605] - [infiniband] IB/rdmavt: Fix sizeof mismatch (Kamal Heib) [1857605] - [infiniband] RDMA/ipoib: Set rtnl_link_ops for ipoib interfaces (Kamal Heib) [1883480 1883478 1857605] - [infiniband] RDMA/addr: Fix race with netevent_callback()/rdma_addr_cancel() (Kamal Heib) [1857605] - [rdma] RDMA/umem: Fix signature of stub ib_umem_find_best_pgsz() (Kamal Heib) [1857605] - [x86] kretprobe: Prevent triggering kretprobe from within kprobe_flush_task (Jerome Marchand) [1821265] - [netdrv] net: intel: Remove in_interrupt() warnings (Jonathan Toppins) [1891101] - [netdrv] ice: fix adding IP4 IP6 Flow Director rules (Jonathan Toppins) [1891101] - [netdrv] ice: Fix pointer cast warnings (Jonathan Toppins) [1891101] - [netdrv] ice: refactor devlink_port to be per-VSI (Jonathan Toppins) [1891101] - [netdrv] ice: add the DDP Track ID to devlink info (Jonathan Toppins) [1891101] - [netdrv] ice: Change ice_info_get_dsn to be void (Jonathan Toppins) [1891101] - [netdrv] ice: remove repeated words (Jonathan Toppins) [1891101] - [netdrv] ice: devlink: use *phD to print small buffer (Jonathan Toppins) [1891101] - [netdrv] ice: preserve NVM capabilities in safe mode (Jonathan Toppins) [1891101] - [netdrv] ice: increase maximum wait time for flash write commands (Jonathan Toppins) [1891101] - [netdrv] ice: remove unused args from ice_get_open_tunnel_port() (Jonathan Toppins) [1891101] - [netdrv] ice: fix memory leak in ice_vsi_setup (Jonathan Toppins) [1891101] - [netdrv] ice: fix memory leak if register_netdev_fails (Jonathan Toppins) [1891101] - [netdrv] ice: Fix call trace on suspend (Jonathan Toppins) [1891101] - [netdrv] ice: simplify the return expression of ice_finalize_update() (Jonathan Toppins) [1891101] - [netdrv] ice: Misc minor fixes (Jonathan Toppins) [1838737] - [netdrv] ice: adjust profile ID map locks (Jonathan Toppins) [1838737] - [netdrv] ice: update PTYPE lookup table (Jonathan Toppins) [1838737] - [netdrv] ice: Graceful error handling in HW table calloc failure (Jonathan Toppins) [1838737] - [netdrv] ice: port fix for chk_linearlize (Jonathan Toppins) [1838737] - [netdrv] ice: Allow 2 queue pairs per VF on SR-IOV initialization (Jonathan Toppins) [1838737] - [netdrv] ice: Clear and free XLT entries on reset (Jonathan Toppins) [1838737] - [netdrv] ice: add useful statistics (Jonathan Toppins) [1838737] - [netdrv] ice: remove page_reuse statistic (Jonathan Toppins) [1838737] - [netdrv] ice: Fix RSS profile locks (Jonathan Toppins) [1838737] - [netdrv] ice: fix the vsi_id mask to be 10 bit for set_rss_lut (Jonathan Toppins) [1838737] - [netdrv] ice: rename misleading grst_delay variable (Jonathan Toppins) [1838737] - [netdrv] ice: mark PM functions as __maybe_unused (Jonathan Toppins) [1838737] - [netdrv] ice: fix unused parameter warning (Jonathan Toppins) [1838737] - [netdrv] ice: disable no longer needed workaround for FW logging (Jonathan Toppins) [1838737] - [netdrv] ice: reduce scope of variable (Jonathan Toppins) [1838737] - [netdrv] ice: cleanup VSI on probe fail (Jonathan Toppins) [1838737] - [netdrv] ice: Allow all VLANs in safe mode (Jonathan Toppins) [1838737] - [netdrv] ice: need_wakeup flag might not be set for Tx (Jonathan Toppins) [1838737] - [netdrv] ice: distribute Tx queues evenly (Jonathan Toppins) [1838737] - [netdrv] ice: Adjust scheduler default BW weight (Jonathan Toppins) [1838737] - [netdrv] ice: Add RL profile bit mask check (Jonathan Toppins) [1838737] - [netdrv] ice: fix overwriting TX/RX descriptor values when rebuilding VSI (Jonathan Toppins) [1838737] - [netdrv] ice: return correct error code from ice_aq_sw_rules (Jonathan Toppins) [1838737] - [netdrv] ice: restore VF MSI-X state during PCI reset (Jonathan Toppins) [1838737] - [netdrv] ice: fix link event handling timing (Jonathan Toppins) [1838737] - [netdrv] ice: Fix link broken after GLOBR reset (Jonathan Toppins) [1838737] - [netdrv] ice: Implement LFC workaround (Jonathan Toppins) [1838737] - [netdrv] ice: implement device flash update via devlink (Jonathan Toppins) [1838737] - [netdrv] ice: add flags indicating pending update of firmware module (Jonathan Toppins) [1838737] - [netdrv] ice: Add AdminQ commands for FW update (Jonathan Toppins) [1838737] - [netdrv] ice: Add support for unified NVM update flow capability (Jonathan Toppins) [1838737] - [netdrv] ice: add 1G SGMII PHY type (Jonathan Toppins) [1838737] - [netdrv] ice: Report AOC PHY Types as Fiber (Jonathan Toppins) [1838737] - [netdrv] ice: add AQC get link topology handle support (Jonathan Toppins) [1838737] - [netdrv] ice: Rename low_power_ctrl (Jonathan Toppins) [1838737] - [netdrv] ice: update reporting of autoneg capabilities (Jonathan Toppins) [1838737] - [netdrv] ice: add ice_aq_get_phy_caps() debug logs (Jonathan Toppins) [1838737] - [netdrv] ice: support Total Port Shutdown on devices that support it (Jonathan Toppins) [1838737] - [netdrv] ice: add link lenient and default override support (Jonathan Toppins) [1838737] - [netdrv] ice: restore PHY settings on media insertion (Jonathan Toppins) [1838737] - [netdrv] ice: move auto FEC checks into ice_cfg_phy_fec() (Jonathan Toppins) [1838737] - [netdrv] ice: refactor FC functions (Jonathan Toppins) [1838737] - [netdrv] ice: Add advanced power mgmt for WoL (Jonathan Toppins) [1838737] - [netdrv] ice: split ice_discover_caps into two functions (Jonathan Toppins) [1838737] - [netdrv] ice: split ice_parse_caps into separate functions (Jonathan Toppins) [1838737] - [netdrv] ice: refactor ice_discover_caps to avoid need to retry (Jonathan Toppins) [1838737] - [netdrv] ice: replace single-element array used for C struct hack (Jonathan Toppins) [1838737] - [netdrv] ice: avoid unnecessary single-member variable-length structs (Jonathan Toppins) [1838737] - [netdrv] ice: implement snapshot for device capabilities (Jonathan Toppins) [1838737] - [netdrv] net/intel: remove driver versions from Intel drivers (Jonathan Toppins) [1838737] - [netdrv] ice: protect ring accesses with WRITE_ONCE (Jonathan Toppins) [1838737] - [netdrv] ice: Ignore EMODE when setting PHY config (Jonathan Toppins) [1838737] - [netdrv] ice: fix aRFS after flow director delete (Jonathan Toppins) [1838737] - [netdrv] ice: Use coalesce values from q_vector 0 when increasing q_vectors (Jonathan Toppins) [1838737] - [netdrv] ice: fix PCI device serial number to be lowercase values (Jonathan Toppins) [1838737] - [netdrv] ice: fix function signature style format (Jonathan Toppins) [1838737] - [netdrv] ice: Allow VF to request reset as soon as it's initialized (Jonathan Toppins) [1838737] - [netdrv] ice: Fix inability to set channels when down (Jonathan Toppins) [1838737] - [netdrv] ice: Always clear QRXFLXP_CNTXT before writing new value (Jonathan Toppins) [1838737] - [netdrv] ice: Reset VF for all port VLAN changes from host (Jonathan Toppins) [1838737] - [netdrv] ice: Update ICE_PHY_TYPE_HIGH_MAX_INDEX value (Jonathan Toppins) [1838737] - [netdrv] ice: Increase timeout after PFR (Jonathan Toppins) [1838737] - [netdrv] ice: Fix transmit for all software offloaded VLANs (Jonathan Toppins) [1838737] - [netdrv] ice: support adding 16 unicast/multicast filter on untrusted VF (Jonathan Toppins) [1838737] - [netdrv] ice: allow host to clear administratively set VF MAC (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor VF VSI release and setup functions (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor VF reset (Jonathan Toppins) [1838737] - [netdrv] ice: remove VM/VF disable command on CORER/GLOBR reset (Jonathan Toppins) [1838737] - [netdrv] ice: Add functions to rebuild host VLAN/MAC config for a VF (Jonathan Toppins) [1838737] - [netdrv] ice: Add function to set trust mode bit on reset (Jonathan Toppins) [1838737] - [netdrv] ice: Renaming and simplification in VF init path (Jonathan Toppins) [1838737] - [netdrv] ice: Separate VF VSI initialization/creation from reset flow (Jonathan Toppins) [1838737] - [netdrv] ice: Add helper function for clearing VPGEN_VFRTRIG (Jonathan Toppins) [1838737] - [netdrv] ice: Simplify ice_sriov_configure (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor ice_ena_vf_mappings to split MSIX and queue mappings (Jonathan Toppins) [1838737] - [netdrv] ice: Declare functions static (Jonathan Toppins) [1838737] - [netdrv] ice: fix kernel BUG if register_netdev fails (Jonathan Toppins) [1838737] - [netdrv] ice: fix potential double free in probe unrolling (Jonathan Toppins) [1838737] - [netdrv] ice: cleanup VSI context initialization (Jonathan Toppins) [1838737] - [netdrv] ice: Poll for reset completion when DDP load fails (Jonathan Toppins) [1838737] - [netdrv] ice: Check UMEM FQ size when allocating bufs (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor Rx checksum checks (Jonathan Toppins) [1838737] - [netdrv] ice: avoid undefined behavior (Jonathan Toppins) [1838737] - [netdrv] ice: Change number of XDP Tx queues to match number of Rx queues (Jonathan Toppins) [1838737] - [netdrv] ice: Add XDP Tx to VSI ring stats (Jonathan Toppins) [1838737] - [netdrv] ice: Change number of XDP TxQ to 0 when destroying rings (Jonathan Toppins) [1838737] - [netdrv] ice: Handle critical FW error during admin queue initialization (Jonathan Toppins) [1838737] - [netdrv] ice: Don't allow VLAN stripping change when pvid set (Jonathan Toppins) [1838737] - [netdrv] ice: Add more Rx errors to netdev's rx_error counter (Jonathan Toppins) [1838737] - [netdrv] ice: Fix for memory leaks and modify ICE_FREE_CQ_BUFS (Jonathan Toppins) [1838737] - [netdrv] ice: Fix memory leak (Jonathan Toppins) [1838737] - [netdrv] ice: fix MAC write command (Jonathan Toppins) [1838737] - [netdrv] ice: set VF default LAN address (Jonathan Toppins) [1838737] - [netdrv] ice: remove unused macro (Jonathan Toppins) [1838737] - [netdrv] ice: fix signed vs unsigned comparisons (Jonathan Toppins) [1838737] - [netdrv] ice: Fix error return code in ice_add_prof() (Jonathan Toppins) [1838737] - [netdrv] ice: replace "fallthrough" comments with fallthrough reserved word (Jonathan Toppins) [1838737]- [kernel] kernel/crash: reserve more memory for fadump (Pingfan Liu) [1891043] - [powerpc] pseries: Pass MSI affinity to irq_create_mapping() (Laurent Vivier) [1702939] - [kernel] genirq/irqdomain: Add an irq_create_mapping_affinity() function (Laurent Vivier) [1702939] - [powerpc] powerpc/perf: Use regs->nip when SIAR is zero (Steve Best) [1903731] - [powerpc] powerpc/perf: Use the address from SIAR register to set cpumode flags (Steve Best) [1903731] - [powerpc] powerpc/perf: Drop the check for SIAR_VALID (Steve Best) [1903731] - [powerpc] powerpc/perf: Add new power PMU flag "PPMU_P10_DD1" for power10 DD1 (Steve Best) [1903731] - [netdrv] net/mlx5e: fix bpf_prog reference count leaks in mlx5e_alloc_rq (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Initialize QP mutex for the debug kernels (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Allow providing extra scatter CQE QP flag (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Query PPS pin operational status before registering it (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix slab-out-of-bounds in mlx5e_rep_is_lag_netdev (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Verify Hardware supports requested ptp function on a given pin (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Fix a bug of using ptp channel index as pin index (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix missing cleanup of ethtool steering during rep rx cleanup (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix error path of device attach (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Fix forward to next namespace (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-switch, Destroy TSAR after reload interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-switch, Destroy TSAR when fail to enable the mode (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix prefetch memory leak if get_prefetchable_mr fails (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Prevent prefetch from racing with implicit destruction (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Use xa_lock_irq when access to SRQ table (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix usage of rcu-protected pointer (Alaa Hleihel) [1858560] - [netdrv] net/mxl5e: Verify that rpriv is not NULL (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Fix vlan or qos setting in legacy mode (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set PD pointers for the error flow unwind (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix legacy IPoIB QP initialization (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Protect from kernel crash if XRC_TGT doesn't have udata (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix integrity enabled QP creation (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove ECE limitation from the RAW_PACKET QPs (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix remote gid value in query QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Don't access ib_qp fields in internal destroy QP path (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Add missed RST2INIT and INIT2INIT steps during ECE handshake (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix -Wformat warning in check_ucmd_data() (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove duplicated assignment to resp.response_length (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Fix some error pointer dereferences (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return ECE DC support (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Don't rely on FW to set zeros in ECE response (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return an error if copy_to_user fails (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Make mlx5e_dcbnl_ops static (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: reduce stack usage in qp_read_field (Alaa Hleihel) [1858560] - [netdrv] mlx5: fix xdp data_meta setup in mlx5e_fill_xdp_buff (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Support TX port affinity for VF drivers in LAG mode (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Optimize performance for IPv4/IPv6 ethertype (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Helper function to set ethertype (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use change upper event to setup representors' bond_metadata (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Slave representors sharing unique metadata for match (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Alloc and free unique metadata for match (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Add bond_metadata and its slave entries (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Offload flow rules to active lower representor (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Support tc block sharing for representors (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use netdev events to set/del egress acl forward-to-vport rule (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Introduce APIs to enable egress acl forward-to-vport rule (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Refactor eswitch ingress acl codes (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Refactor eswitch egress acl codes (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return ECE data after modify QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set ECE options during modify QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Convert modify QP to use MLX5_SET macros (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove manually crafted QP context the query call (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Use direct modify QP implementation (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set ECE options during QP create (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Get ECE options from FW during create QP (Alaa Hleihel) [1858560] - [include] net/mlx5: Add ability to read and write ECE options (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use IS_ERR() to check and simplify code (Alaa Hleihel) [1858560] - [infiniband] net/mlx5: Add support for RDMA TX FT headers modifying (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Move iseg access helper routines close to mlx5_core driver (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Cleanup mlx5_ifc_fte_match_set_misc2_bits (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Update mlx5_ib driver name (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Calculate SQ stop room in a robust way (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Move internal timer read function to clock library (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Fix a bug of releasing wrong chunks on > 4K page size systems (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Dedicate fw page to the requesting function (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix query_srq_cmd() function (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Add support for drop action in DV steering (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Add support in steering default miss (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Refactor DV create flow (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add support in forward to namespace (Alaa Hleihel) [1858560] - [infiniband] {IB/net}/mlx5: Simplify don't trap code (Alaa Hleihel) [1858560] - [include] net/mlx5: Replace zero-length array with flexible-array (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Enhance ICOSQ WQE info fields (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Accel, Remove unnecessary header include (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use struct assignment for WQE info updates (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Take TX WQE info structures out of general EN header (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: kTLS, Do not fill edge for the DUMP WQEs in TX flow (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: kTLS, Fill work queue edge separately in TX flow (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Split TX acceleration offloads into two phases (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Update UDP fields of the SKB for GSO first (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Make TLS offload independent of wqe and pi (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Pass only eseg to IPSEC offload (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Return void from mlx5e_sq_xmit and mlx5i_sq_xmit (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Unify checks of TLS offloads (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Return bool from TLS and IPSEC offloads (Alaa Hleihel) [1858560] - [netdrv] net: remove newlines in NL_SET_ERR_MSG_MOD (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove duplicated assignment to variable rcqe_sz (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Allow only raw Ethernet QPs when RoCE isn't enabled (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Assign profile before calling stages (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Move all WR logic from qp.c to separate file (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Refactor mlx5_post_send() to improve readability (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Update mlx5_ib to use new cmd interface (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set UDP source port based on the grh.flow_label (Alaa Hleihel) [1858560 1851704] - [infiniband] RDMA/mlx5: Define RoCEv2 udp source port when set path (Alaa Hleihel) [1858560 1851704] - [infiniband] RDMA/mlx5: Set lag tx affinity according to slave (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Refactor affinity related code (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add support to get lag physical port (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Change lag mutex lock to spin lock (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Consolidate into special function all create QP calls (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove redundant destroy QP call (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Copy response to the user in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Handle udate outlen checks in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Promote RSS RAW QP flags check to higher level (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Group all create QP parameters to simplify in-kernel interfaces (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Reduce amount of duplication in QP destroy (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Separate to user/kernel create QP flows (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Separate XRC_TGT QP creation from common flow (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Globally parse DEVX UID (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete impossible inlen check (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Rely on existence of udata to separate kernel/user flows (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove second user copy in create_user_qp (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Combine copy of create QP command in RSS RAW QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Promote RSS RAW QP attribute check in higher level (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Store QP type in the vendor QP structure (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete unsupported QP types (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Unify reserving space for WQEs (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Rename ICOSQ WQE info struct and field (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fetch WQE: reuse code and enforce typing (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: XDP, Print the offending TX descriptor on error completion (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: TX, Generalise code and usage of error CQE dump (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use proper name field for the UMR key (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add support for release all pages event (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Rate limit page not found error messages (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add helper function to release fw page (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove unused field in EQ (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Remove unneeded semicolon (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: IPsec, Fix coverity issue (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Process all vendor flags in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return all configured create flags through query QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Change scatter CQE flag to be set like other vendor flags (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Use flags_en mechanism to mark QP created with WQE signature (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Process create QP flags in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete create QP flags obfuscation (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Initial separation of RAW_PACKET QP from common flow (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove second copy from user for non RSS RAW QPs (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Move DRIVER QP flags check into separate function (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Update all DRIVER QP places to use QP subtype (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Split scatter CQE configuration for DCT QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Separate create QP flows to be based on type (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set QP subtype immediately when it is known (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Avoid setting redundant NULL for XRC QPs (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Prepare QP allocation for future removal (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Perform check if QP creation flow is valid (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete impossible GSI port check (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Organize QP types checks in one place (Alaa Hleihel) [1858560] - [include] net/mlx5: TX WQE Add trailer insertion field (Alaa Hleihel) [1858560] - [include] net/mlx5: Add release all pages capability bit (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Introduce TLS RX offload hardware bits (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add structure and defines for pci sync for fw update event (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add structure layout and defines for MFRL register (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Use aligned variable while allocating ICM memory (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Introduce IPsec Connect-X offload hardware bits and structures (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update transobj.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update SW steering new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update port.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update rl.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update uar.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update pd.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update pagealloc.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update mr.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update mcg.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update main.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update vxlan.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update mpfs.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update gid.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update lag.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update fw.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update fs_core new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update FPGA to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update eswitch to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] ethernet: remove redundant memset (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update statistics to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update eq.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update ecpf.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update debugfs.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update cq.c to new cmd interface (Alaa Hleihel) [1858560] - [infiniband] net/mlx5: Update vport.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: improve some comments (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Read embedded cpu bit only once (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Handle errors from netif_set_real_num_{tx, rx}_queues (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: IPsec, Refactor SA handle creation and destruction (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: IPSec, Expose IPsec HW stat only for supporting HW (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Refactor mlx5_accel_esp_create_hw_context parameter list (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Use the correct IPsec capability function for FPGA ops (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Enable SW-defined RoCEv2 UDP source port (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Refactor HCA capability set flow (Alaa Hleihel) [1858560] - [infiniband] net/mlx5: Move QP logic to mlx5_ib (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Alphabetically sort build artifacts (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Delete not-used cmd header (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete Q counter allocations command (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove Q counter low level helper APIs (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Replace hand written QP context struct with automatic getters (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove extra indirection while storing QPN (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code modify QP in the IPoIB module (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code modify QP in the FPGA module (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code modify QP in steering module (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove empty QP and CQ events handlers (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code create and destroy QP calls (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Provide simplified command interfaces (Alaa Hleihel) [1858560] - [x86] kvm: x86/mmu: Fix get_mmio_spte() on CPUs supporting 5-level PT (Vitaly Kuznetsov) [1902184] - [net] netdevsim: devlink flash timeout message (Petr Oros) [1882019] - [net] devlink: collect flash notify params into a struct (Petr Oros) [1882019] - [net] devlink: add timeout information to status_notify (Petr Oros) [1882019] - [firmware] efi/esrt: Only call efi_mem_reserve() for boot services memory (Kairui Song) [1878024] - [firmware] efi: Drop type and attribute checks in efi_mem_desc_lookup() (Kairui Song) [1878024] - [fs] iomap: Fix direct I/O write consistency check (Andreas Grunbacher) [1875556] - [fs] gfs2: fix O_SYNC write handling (Andreas Grunbacher) [1871923] - [fs] gfs2: move setting current->backing_dev_info (Andreas Grunbacher) [1871923] - [fs] gfs2: Don't return NULL from gfs2_inode_lookup (Andreas Grunbacher) [1872061] - [fs] gfs2: If go_sync returns error, withdraw but skip invalidate (Robert S Peterson) [1875035] - [fs] gfs2: Close timing window with GLF_INVALIDATE_IN_PROGRESS (Robert S Peterson) [1875035] - [fs] gfs2: Fix refcount leak in gfs2_glock_poke (Robert S Peterson) [1875035] - [fs] gfs2: Add missing truncate_inode_pages_final for sd_aspace (Robert S Peterson) [1875035] - [fs] gfs2: call truncate_inode_pages_final for address space glocks (Robert S Peterson) [1875035] - [fs] gfs2: simplify the logic in gfs2_evict_inode (Robert S Peterson) [1875035] - [fs] gfs2: factor evict_linked_inode out of gfs2_evict_inode (Robert S Peterson) [1875035] - [fs] gfs2: further simplify gfs2_evict_inode with new func evict_should_delete (Robert S Peterson) [1875035] - [fs] gfs2: factor evict_unlinked_inode out of gfs2_evict_inode (Robert S Peterson) [1875035] - [fs] gfs2: rename variable error to ret in gfs2_evict_inode (Robert S Peterson) [1875035] - [net] ethtool: Add link extended state (Ivan Vecera) [1894545] - [documentation] networking: ethtool-netlink: Add link extended state (Ivan Vecera) [1894545] - [net] ethtool: fix error handling in linkstate_prepare_data() (Ivan Vecera) [1894545] - [net] ethtool: provide UAPI for PHY Signal Quality Index (SQI) (Ivan Vecera) [1894545]- [mm] mm/hugetlb: fix a race between hugetlb sysctl handlers (Julia Denham) [1886241] {CVE-2020-25285} - [kernel] audit: do not set FS_EVENT_ON_CHILD in audit marks mask (Richard Guy Briggs) [1896480] - [net] missing barriers in some of unix_sock ->addr and ->path accesses (Richard Guy Briggs) [1896480] - [kernel] audit: fix macros warnings (Richard Guy Briggs) [1896480] - [kernel] audit: trigger accompanying records when no rules present (Richard Guy Briggs) [1896480] - [kernel] audit: fix a kernel-doc markup (Richard Guy Briggs) [1896480] - [kernel] audit: Remove redundant null check (Richard Guy Briggs) [1896480] - [kernel] audit: uninitialize variable audit_sig_sid (Richard Guy Briggs) [1896480] - [kernel] audit: change unnecessary globals into statics (Richard Guy Briggs) [1896480] - [kernel] audit: report audit wait metric in audit status reply (Richard Guy Briggs) [1896480] - [security] audit: purge audit_log_string from the intra-kernel audit API (Richard Guy Briggs) [1896480] - [security] apparmor: Check buffer bounds when mapping permissions mask (Richard Guy Briggs) [1896480] - [kernel] audit: issue CWD record to accompany LSM_AUDIT_DATA_* records (Richard Guy Briggs) [1896480] - [net] audit: use the proper gfp flags in the audit_log_nfcfg() calls (Richard Guy Briggs) [1896480] - [include] audit: remove unused !CONFIG_AUDITSYSCALL __audit_inode* stubs (Richard Guy Briggs) [1896480] - [net] audit: add gfp parameter to audit_log_nfcfg (Richard Guy Briggs) [1896480] - [kernel] audit: log nftables configuration change events (Richard Guy Briggs) [1896480] - [kernel] audit: Use struct_size() helper in alloc_chunk (Richard Guy Briggs) [1896480] - [kernel] revert: 1320a4052ea1 ("audit: trigger accompanying records when no rules present") (Richard Guy Briggs) [1896480] - [include] audit: Replace zero-length array with flexible-array (Richard Guy Briggs) [1896480] - [netdrv] net: usb: lan78xx: Disable interrupts before calling generic_handle_irq() (Waiman Long) [1904213] - [mm] x86/mm/cpa: Prevent large page split when ftrace flips RW on kernel text (Waiman Long) [1904213] - [mm] x86/mm/cpa: Fix cpa_flush_array() TLB invalidation (Waiman Long) [1904213] - [net] netlabel: fix an uninitialized warning in netlbl_unlabel_staticlist() (Ondrej Mosnacek) [1901171] - [net] netlabel: fix our progress tracking in netlbl_unlabel_staticlist() (Ondrej Mosnacek) [1901171] - [netdrv] net: ena: fix packet's addresses for rx_offset feature (Petr Oros) [1861967] - [netdrv] net: ena: handle bad request id in ena_netdev (Petr Oros) [1861967] - [netdrv] net: ena: Change WARN_ON expression in ena_del_napi_in_range() (Petr Oros) [1861967] - [netdrv] net: ena: support new LLQ acceleration mode (Petr Oros) [1861967] - [netdrv] net: ena: move llq configuration from ena_probe to ena_device_init() (Petr Oros) [1861967] - [netdrv] net: ena: enable support of rss hash key and function changes (Petr Oros) [1861967] - [netdrv] net: ena: add support for traffic mirroring (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: change ena_com_stats_admin stats to u64 (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: satisfy gcc warning (Petr Oros) [1861967] - [netdrv] net: ena: add reserved PCI device ID (Petr Oros) [1861967] - [netdrv] net: ena: avoid unnecessary rearming of interrupt vector when busy-polling (Petr Oros) [1861967] - [netdrv] net: ena: Fix using plain integer as NULL pointer in ena_init_napi_in_range (Petr Oros) [1861967] - [netdrv] ena_netdev: use generic power management (Petr Oros) [1861967] - [netdrv] net: ena: xdp: update napi budget for DROP and ABORTED (Petr Oros) [1861967] - [netdrv] net: ena: xdp: XDP_TX: fix memory leak (Petr Oros) [1861967] - [netdrv] xdp: Rename convert_to_xdp_frame in xdp_convert_buff_to_frame (Petr Oros) [1861967] - [netdrv] net: ena: reduce driver load time (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: minor code changes (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: fix spacing issues (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: code reorderings (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: remove unnecessary code (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: fix line break issues (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: fix spelling and grammar mistakes in comments (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: set queue sizes to u32 for consistency (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: rename ena_update_tx/rx_rings_intr_moderation() (Petr Oros) [1861967] - [netdrv] net: ena: simplify ena_com_update_intr_delay_resolution() (Petr Oros) [1861967] - [netdrv] net: ena: fix ena_com_comp_status_to_errno() return value (Petr Oros) [1861967] - [netdrv] net: ena: use explicit variable size for clarity (Petr Oros) [1861967] - [netdrv] net: ena: rename ena_com_free_desc to make API more uniform (Petr Oros) [1861967] - [netdrv] net: ena: add support for the rx offset feature (Petr Oros) [1861967] - [netdrv] ena: Add XDP frame size to amazon NIC driver (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: extract code to ena_indirection_table_set() (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: remove unnecessary spaces and tabs in ena_com.h macros (Petr Oros) [1861967] - [netdrv] net: ena: use SHUTDOWN as reset reason when closing interface (Petr Oros) [1861967] - [netdrv] net: ena: drop superfluous prototype (Petr Oros) [1861967] - [netdrv] net: ena: add support for reporting of packet drops (Petr Oros) [1861967] - [netdrv] net: ena: add unmask interrupts statistics to ethtool (Petr Oros) [1861967] - [netdrv] net: ena: remove code that does nothing (Petr Oros) [1861967] - [netdrv] net: ena: changes to RSS hash key allocation (Petr Oros) [1861967] - [netdrv] net: ena: change default RSS hash function to Toeplitz (Petr Oros) [1861967] - [netdrv] net: ena: allow setting the hash function without changing the key (Petr Oros) [1861967] - [netdrv] net: ena: fix error returning in ena_com_get_hash_function() (Petr Oros) [1861967] - [netdrv] net: ena: avoid unnecessary admin command when RSS function set fails (Petr Oros) [1861967] - [netdrv] net/ena: Fix build warning in ena_xdp_set() (Petr Oros) [1861967] - [netdrv] net: ena: Make some functions static (Petr Oros) [1861967] - [netdrv] net: ena: fix continuous keep-alive resets (Petr Oros) [1861967] - [netdrv] net: ena: avoid memory access violation by validating req_id properly (Petr Oros) [1861967] - [netdrv] net: ena: fix request of incorrect number of IRQ vectors (Petr Oros) [1861967] - [netdrv] net: ena: fix incorrect setting of the number of msix vectors (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: clean up minor indentation issue (Petr Oros) [1861967] - [netdrv] net: ena: reject unsupported coalescing params (Petr Oros) [1861967] - [netdrv] net: ena: fix broken interface between ENA driver and FW (Petr Oros) [1861967] - [netdrv] net/amazon: Ensure that driver version is aligned to the linux kernel (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: remove redundant non-zero check on rc (Petr Oros) [1861967] - [netdrv] net: ena: remove set but not used variable 'hash_key' (Petr Oros) [1861967] - [netdrv] net: ena: ena-com.c: prevent NULL pointer dereference (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: use correct value for crc32 hash (Petr Oros) [1861967] - [netdrv] net: ena: make ena rxfh support ETH_RSS_HASH_NO_CHANGE (Petr Oros) [1861967] - [netdrv] net: ena: fix corruption of dev_idx_to_host_tbl (Petr Oros) [1861967] - [netdrv] net: ena: fix incorrectly saving queue numbers when setting RSS indirection table (Petr Oros) [1861967] - [netdrv] net: ena: rss: store hash function as values and not bits (Petr Oros) [1861967] - [netdrv] net: ena: rss: fix failure to get indirection table (Petr Oros) [1861967] - [netdrv] net: ena: rss: do not allocate key when not supported (Petr Oros) [1861967] - [netdrv] net: ena: fix incorrect default RSS key (Petr Oros) [1861967] - [netdrv] net: ena: add missing ethtool TX timestamping indication (Petr Oros) [1861967] - [netdrv] net: ena: fix uses of round_jiffies() (Petr Oros) [1861967] - [netdrv] net: ena: fix potential crash when rxfh key is NULL (Petr Oros) [1861967] - [netdrv] net: ena: remove set but not used variable 'rx_ring' (Petr Oros) [1861967] - [netdrv] net: ena: fix issues in setting interrupt moderation params in ethtool (Petr Oros) [1861967] - [netdrv] net: ena: fix default tx interrupt moderation interval (Petr Oros) [1861967] - [netdrv] net: ena: Add first_interrupt field to napi struct (Petr Oros) [1861967] - [netdrv] net: ena: Implement XDP_TX action (Petr Oros) [1861967] - [netdrv] net: ena: implement XDP drop support (Petr Oros) [1861967] - [netdrv] net: ena: fix napi handler misbehavior when the napi budget is zero (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: support set_channels callback (Petr Oros) [1861967] - [netdrv] net: ena: remove redundant print of number of queues (Petr Oros) [1861967] - [netdrv] net: ena: make ethtool -l show correct max number of queues (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: get_channels: use combined only (Petr Oros) [1861967] - [netdrv] net: ena: multiple queue creation related cleanups (Petr Oros) [1861967] - [netdrv] net: ena: change num_queues to num_io_queues for clarity and consistency (Petr Oros) [1861967] - [kernel] rcu/tree: docs: document bkvcache new members at struct kfree_rcu_cpu (Nico Pache) [1894223] - [mm] kasan: don't assume percpu shadow allocations will succeed (Nico Pache) [1894223] - [lib] kasan: update required compiler versions in documentation (Nico Pache) [1894223] - [lib] kasan: improve and simplify Kconfig.kasan (Nico Pache) [1894223] - [lib] kasan: Fix required compiler version (Nico Pache) [1894223] - [lib] kasan: Bump required compiler version (Nico Pache) [1894223] - [documentation] kasan: update documentation for generic kasan (Nico Pache) [1894223] - [mm] kasan: record and print the free track (Nico Pache) [1894223] - [mm] rcu: kasan: record and print call_rcu() call stack (Nico Pache) [1894223] - [kernel] rcu: Support reclaim for head-less object (Nico Pache) [1894223] - [kernel] rcu: Introduce 2 arg kvfree_rcu() interface (Nico Pache) [1894223] - [mm] mm/list_lru.c: Rename kvfree_rcu() to local variant (Nico Pache) [1894223] - [kernel] rcu: Rename *_kfree_callback/*_kfree_rcu_offset/kfree_call_* (Nico Pache) [1894223] - [kernel] rcu/tiny: support vmalloc in tiny-RCU (Nico Pache) [1894223] - [kernel] rcu/tree: Maintain separate array for vmalloc ptrs (Nico Pache) [1894223] - [kernel] rcu/tree: cache specified number of objects (Nico Pache) [1894223] - [kernel] rcu/tree: Use static initializer for krc.lock (Nico Pache) [1894223] - [kernel] rcu/tree: Move kfree_rcu_cpu locking/unlocking to separate functions (Nico Pache) [1894223] - [kernel] rcu/tree: Simplify KFREE_BULK_MAX_ENTR macro (Nico Pache) [1894223] - [kernel] rcu/tree: Make debug_objects logic independent of rcu_head (Nico Pache) [1894223] - [kernel] rcu/tree: Repeat the monitor if any free channel is busy (Nico Pache) [1894223] - [kernel] rcu/tree: Skip entry into the page allocator for PREEMPT_RT (Nico Pache) [1894223] - [kernel] rcu/tree: Keep kfree_rcu() awake during lock contention (Nico Pache) [1894223] - [kernel] rcu: Fix a kernel-doc warnings for "count" (Nico Pache) [1894223] - [kernel] rcu/tree: Count number of batched kfree_rcu() locklessly (Nico Pache) [1894223] - [kernel] rcu/tree: Add a shrinker to prevent OOM due to kfree_rcu() batching (Nico Pache) [1894223] - [kernel] rcuperf: Measure memory footprint during kfree_rcu() test (Nico Pache) [1894223] - [kernel] rcu: Add a trace event for kfree_rcu() use of kfree_bulk() (Nico Pache) [1894223] - [kernel] rcu: Support kfree_bulk() interface in kfree_rcu() (Nico Pache) [1894223] - [mm] kasan: fix clang compilation warning due to stack protector (Nico Pache) [1894223] - [mm] kasan: disable branch tracing for core runtime (Nico Pache) [1894223] - [mm] kasan: add missing functions declarations to kasan.h (Nico Pache) [1894223] - [mm] kasan: consistently disable debugging features (Nico Pache) [1894223] - [mm] kasan: unset panic_on_warn before calling panic() (Nico Pache) [1894223] - [mm] kasan: detect negative size in memory operation function (Nico Pache) [1894223] - [mm] kasan: No KASAN's memmove check if archs don't have it (Nico Pache) [1894223] - [mm] kasan: use apply_to_existing_page_range() for releasing vmalloc shadow (Nico Pache) [1894223] - [mm] kasan: fix crashes on access to memory mapped by vm_map_ram() (Nico Pache) [1894223] - [mm] mm/kasan/common.c: fix compile error (Nico Pache) [1894223] - [mm] kasan: support backing vmalloc space with real shadow memory (Nico Pache) [1894223] - [mm] mm/vmalloc: rework vmap_area_lock (Nico Pache) [1894223] - [mm] mm/vmalloc: remove preempt_disable/enable when doing preloading (Nico Pache) [1894223] - [mm] mm/vmalloc.c: switch to WARN_ON() and move it under unlink_va() (Nico Pache) [1894223] - [mm] mm/vmalloc.c: get rid of one single unlink_va() when merge (Nico Pache) [1894223] - [mm] mm/vmalloc.c: preload a CPU with one object for split purpose (Nico Pache) [1894223] - [mm] mm/vmalloc.c: remove "node" argument (Nico Pache) [1894223] - [mm] mm/vmalloc: modify struct vmap_area to reduce its size (Nico Pache) [1894223] - [mm] mm/vmalloc: do not keep unpurged areas in the busy tree (Nico Pache) [1894223] - [mm] mm/vmalloc.c: fix percpu free VM area search criteria (Nico Pache) [1894223] - [mm] mm/vmalloc.c: avoid bogus -Wmaybe-uninitialized warning (Nico Pache) [1894223] - [mm] mm/vmap: add DEBUG_AUGMENT_LOWEST_MATCH_CHECK macro (Nico Pache) [1894223] - [mm] mm/vmap: add DEBUG_AUGMENT_PROPAGATE_CHECK macro (Nico Pache) [1894223] - [mm] mm/vmalloc.c: keep track of free blocks for vmap allocation (Nico Pache) [1894223] - [mm] mm/vmalloc.c: convert vmap_lazy_nr to atomic_long_t (Nico Pache) [1894223] - [mm] mm/kasan: change kasan_check_{read, write} to return boolean (Nico Pache) [1894223] - [mm] mm/kasan: introduce __kasan_check_{read, write} (Nico Pache) [1894223] - [mm] kasan: fix coccinelle warnings in kasan_p*_table (Nico Pache) [1894223] - [mm] kasan: fix kasan_check_read/write definitions (Nico Pache) [1894223] - [lib] kasan: remove use after scope bugs detection (Nico Pache) [1894223] - [lib] kasan: remove clang version check for KASAN_STACK (Nico Pache) [1894223] - [lib] kasan: turn off asan-stack for clang-8 and earlier (Nico Pache) [1894223] - [block] nbd: fix a block_device refcount leak in nbd_release (Ming Lei) [1901400] - [tools] selftests: Set default protocol for raw sockets in nettest (Hangbin Liu) [1898813] - [tools] selftests/net: improve descriptions for XFAIL cases in psock_snd.sh (Hangbin Liu) [1898813] - [tools] selftests: rtnetlink: make kci_test_encap() return sub-test result (Hangbin Liu) [1898813] - [tools] selftests: net: ip_defrag: modprobe missing nf_defrag_ipv6 support (Hangbin Liu) [1898813] - [tools] selftests: use LDLIBS for libraries instead of LDFLAGS (Hangbin Liu) [1898813] - [tools] selftests: tls: run all tests for TLS 1.2 and TLS 1.3 (Hangbin Liu) [1898813] - [tools] selftests/net: add definition for SOL_DCCP to fix compilation errors for old libc (Hangbin Liu) [1898813] - [tools] selftests: net: reuseport_addr_any: silence clang warning (Hangbin Liu) [1898813] - [tools] selftests: net: refactor reuseport_addr_any test (Hangbin Liu) [1898813] - [tools] selftests: net: reuseport_addr_any: add DCCP (Hangbin Liu) [1898813] - [tools] selftests: net: test that listening sockets match on address properly (Hangbin Liu) [1898813] - [tools] selftests/net: make udpgso_bench skip unsupported testcases (Hangbin Liu) [1898813] - [tools] net/udpgso_bench.sh test fails on error (Hangbin Liu) [1898813] - [tools] net/udpgso_bench.sh add UDP GSO audit tests (Hangbin Liu) [1898813] - [tools] selftests: extend zerocopy tests to udp (Hangbin Liu) [1898813] - [tools] net/udpgso_bench_tx: options to exercise TX CMSG (Hangbin Liu) [1898813] - [tools] selftests: fixes for UDP GRO (Hangbin Liu) [1898813] - [tools] selftests/net: replace obsolete NFT_CHAIN configuration (Hangbin Liu) [1898813] - [tools] selftests: explicitly require kernel features needed by udpgro tests (Hangbin Liu) [1898813] - [tools] selftests: add explicit test for multiple concurrent GRO sockets (Hangbin Liu) [1898813] - [tools] selftests: add functionals test for UDP GRO (Hangbin Liu) [1898813] - [tools] selftests: add some benchmark for UDP GRO (Hangbin Liu) [1898813] - [tools] selftests: add GRO support to udp bench rx program (Hangbin Liu) [1898813] - [net] sctp: change to hold/put transport for proto_unreach_timer (Xin Long) [1897084] - [scsi] scsi: qedi: Add schedule_hw_err_handler callback for fan failure (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Add support for handling PCIe errors (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Add firmware error recovery invocation support (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Mark all connections for recovery on link down event (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Use snprintf instead of sprintf (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Protect active command list to avoid list corruption (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Fix list_del corruption while removing active I/O (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Skip firmware connection termination for PCI shutdown handler (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Use qed count from set_fp_int in msix allocation (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove redundant NULL check (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Staticify non-external function 'qedi_get_iscsi_error' (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Demote seemingly unintentional kerneldoc header (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove set but unused variable 'tmp' (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove 2 set but unused variables (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove unused variable udev & uctrl (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove comparison of 0/1 to bool variable (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Check for buffer overflow in qedi_set_path() (Nilesh Javali) [1854121] - [scsi] scsi: qedf: Remove redundant assignment to variable 'rc' (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Retry qed->probe during recovery (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Add schedule_hw_err_handler callback for fan failure (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Return SUCCESS if stale rport is encountered (Nilesh Javali) [1854122] - [scsi] scsi: qedf: FDMI attributes correction (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Use pci_get_dsn() (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Fix for the session's E_D_TOV value (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Correct the comment in qedf_initiate_els (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Change the debug parameter permission to read & write (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Fix null ptr reference in qedf_stag_change_work (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Fix race between ELS completion and flushing ELS request (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Don't process ELS completion if event is flushed or cleaned up (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Initiate cleanup for ELS commands as well (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Send cleanup even for RRQ on timeout (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Do not kill timeout work for original I/O on RRQ completion (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Check the validity of rjt frame before processing (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Check for port type and role before processing an event (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Demote obvious misuse of kerneldoc to standard comment blocks (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Remove a whole host of unused variables (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Remove set but not checked variable 'tmp' (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Demote obvious misuse of kerneldoc to standard comment blocks (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Remove redundant initialization of variable rc (Nilesh Javali) [1854122] - [infiniband] RDMA/qedr: Fix memory leak in iWARP CM (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix function prototype parameters alignment (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix inline size returned for iWARP (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix iWARP active mtu display (Manish Chopra) [1857857] - [netdrv] qede: Notify qedr when mtu has changed (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix return code if accept is called on a destroyed qp (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix use of uninitialized field (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix doorbell setting (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix qp structure memory leak (Manish Chopra) [1857857] - [netdrv] net: qed: RDMA personality shouldn't fail VF load (Manish Chopra) [1857857] - [netdrv] net: qede: Disable aRFS for NPAR and 100G (Manish Chopra) [1857857] - [netdrv] net: qed: Disable aRFS for NPAR and 100G (Manish Chopra) [1857857] - [netdrv] net: qed: use eth_zero_addr() to clear mac address (Manish Chopra) [1857857] - [netdrv] net: qede: use eth_zero_addr() to clear mac address (Manish Chopra) [1857857] - [netdrv] qede: Use pM format specifier for MAC addresses (Manish Chopra) [1857857] - [netdrv] qed: Use pM format specifier for MAC addresses (Manish Chopra) [1857857] - [infiniband] qed: fix assignment of n_rq_elems to incorrect params field (Manish Chopra) [1857857] - [netdrv] qed: fix the allocation of the chains with an external PBL (Manish Chopra) [1857857] - [netdrv] qede: add .ndo_xdp_xmit() and XDP_REDIRECT support (Manish Chopra) [1857857] - [netdrv] qede: refactor XDP Tx processing (Manish Chopra) [1857857] - [netdrv] qede: reformat net_device_ops declarations (Manish Chopra) [1857857] - [netdrv] qede: reformat several structures in "qede.h" (Manish Chopra) [1857857] - [include] qed: introduce qed_chain_get_elem_used{, u32}() (Manish Chopra) [1857857] - [include] qed: optimize common chain accessors (Manish Chopra) [1857857] - [infiniband] qed: add support for different page sizes for chains (Manish Chopra) [1857857] - [netdrv] qed: simplify chain allocation with init params struct (Manish Chopra) [1857857] - [netdrv] qed: simplify initialization of the chains with an external PBL (Manish Chopra) [1857857] - [netdrv] qed: move chain initialization inlines next to allocation functions (Manish Chopra) [1857857] - [netdrv] qed: sanitize PBL chains allocation (Manish Chopra) [1857857] - [netdrv] qed: prevent possible double-frees of the chains (Manish Chopra) [1857857] - [netdrv] qed: move chain methods to a separate file (Manish Chopra) [1857857] - [netdrv] qed: reformat Makefile (Manish Chopra) [1857857] - [include] qed: reformat "qed_chain.h" a bit (Manish Chopra) [1857857] - [netdrv] net: qed_hsi.h: Avoid the use of one-element array (Manish Chopra) [1857857] - [netdrv] net: qed: Remove unneeded cast from memory allocation (Manish Chopra) [1857857] - [netdrv] qed: suppress false-positives interrupt error messages on HW init (Manish Chopra) [1857857] - [netdrv] qed: suppress "don't support RoCE & iWARP" flooding on HW init (Manish Chopra) [1857857] - [netdrv] qed: Fix ILT and XRCD bitmap memory leaks (Manish Chopra) [1857857] - [netdrv] qed: add support for the extended speed and FEC modes (Manish Chopra) [1857857] - [netdrv] qed: populate supported link modes maps on module init (Manish Chopra) [1857857] - [netdrv] qed: add missing loopback modes (Manish Chopra) [1857857] - [netdrv] qed: add support for new port modes (Manish Chopra) [1857857] - [netdrv] qed: remove unused qed_hw_info::port_mode and QED_PORT_MODE (Manish Chopra) [1857857] - [netdrv] qed: reformat several structures a bit (Manish Chopra) [1857857] - [netdrv] qede: introduce support for FEC control (Manish Chopra) [1857857] - [netdrv] qede: format qede{,_vf}_ethtool_ops (Manish Chopra) [1857857] - [netdrv] qed: add support for Forward Error Correction (Manish Chopra) [1857857] - [netdrv] qed: reformat several structures a bit (Manish Chopra) [1857857] - [netdrv] qed: use transceiver data to fill link partner's advertising speeds (Manish Chopra) [1857857] - [netdrv] qed: add support for multi-rate transceivers (Manish Chopra) [1857857] - [netdrv] qed: reformat public_port::transceiver_data a bit (Manish Chopra) [1857857] - [netdrv] qede: populate supported link modes maps on module init (Manish Chopra) [1857857] - [netdrv] qed, qede, qedf: convert link mode from u32 to ETHTOOL_LINK_MODE (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Add EDPM max size to alloc ucontext response (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Add EDPM mode type for user-fw compatibility (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: SRQ's bug fixes (Manish Chopra) [1857857] - [include] net: qed: drop duplicate words in comments (Manish Chopra) [1857857] - [netdrv] qede: convert to new udp_tunnel_nic infra (Manish Chopra) [1857857] - [netdrv] qed: Disable "MFW indication via attention" SPAM every 5 minutes (Manish Chopra) [1857857] - [netdrv] qed: Populate nvm-file attributes while reading nvm config partition (Manish Chopra) [1857857] - [netdrv] net: qede: fix BE vs CPU comparison (Manish Chopra) [1857857] - [netdrv] net: qede: fix kernel-doc for qede_ptp_adjfreq() (Manish Chopra) [1857857] - [netdrv] net: qed: sanitize BE/LE data processing (Manish Chopra) [1857857] - [netdrv] net: qed: use ptr shortcuts to dedup field accessing in some parts (Manish Chopra) [1857857] - [netdrv] net: qed: improve indentation of some parts of code (Manish Chopra) [1857857] - [netdrv] net: qed: address kernel-doc warnings (Manish Chopra) [1857857] - [netdrv] net: qed: correct qed_hw_err_notify() prototype (Manish Chopra) [1857857] - [netdrv] net: qed: cleanup global structs declarations (Manish Chopra) [1857857] - [netdrv] net: qed: move static iro_arrout of header file (Manish Chopra) [1857857] - [netdrv] qed: Make symbol 'qed_hw_err_type_descr' static (Manish Chopra) [1857857] - [netdrv] net: qede: update copyright years (Manish Chopra) [1857857] - [netdrv] net: qede: convert to SPDX License Identifiers (Manish Chopra) [1857857] - [netdrv] net: qede: correct existing SPDX tags (Manish Chopra) [1857857] - [netdrv] net: qed: update copyright years (Manish Chopra) [1857857] - [netdrv] net: qed: convert to SPDX License Identifiers (Manish Chopra) [1857857] - [netdrv] net: qed: correct existing SPDX tags (Manish Chopra) [1857857] - [netdrv] qed: add missing error test for DBG_STATUS_NO_MATCHING_FRAMING_MODE (Manish Chopra) [1857857] - [netdrv] net: qed: fix "maybe uninitialized" warning (Manish Chopra) [1857857] - [netdrv] net: qed: reset ILT block sizes before recomputing to fix crashes (Manish Chopra) [1857857] - [netdrv] net: qede: fix use-after-free on recovery and AER handling (Manish Chopra) [1857857] - [netdrv] net: qede: fix PTP initialization on recovery (Manish Chopra) [1857857] - [netdrv] net: qed: fix excessive QM ILT lines consumption (Manish Chopra) [1857857] - [netdrv] net: qed: fix NVMe login fails over VFs (Manish Chopra) [1857857] - [netdrv] net: qede: stop adding events on an already destroyed workqueue (Manish Chopra) [1857857] - [netdrv] net: qed: fix async event callbacks unregistering (Manish Chopra) [1857857] - [include] net: qed: fix left elements count calculation (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix KASAN: use-after-free in ucma_event_handler+0x532 (Manish Chopra) [1857857] - [netdrv] qed: Add EDPM mode type for user-fw compatibility (Manish Chopra) [1857857] - [netdrv] qed: Add XRC to RoCE (Manish Chopra) [1857857] - [netdrv] qed: changes to ILT to support XRC (Manish Chopra) [1857857] - [include] net: qed: fix bad formatting (Manish Chopra) [1857857] - [netdrv] net: qed: introduce critical hardware error handler (Manish Chopra) [1857857] - [netdrv] net: qed: introduce critical fan failure handler (Manish Chopra) [1857857] - [netdrv] net: qede: Implement ndo_tx_timeout (Manish Chopra) [1857857] - [netdrv] net: qede: optional hw recovery procedure (Manish Chopra) [1857857] - [netdrv] net: qed: attention clearing properties (Manish Chopra) [1857857] - [netdrv] net: qed: cleanup debug related declarations (Manish Chopra) [1857857] - [netdrv] net: qed: critical err reporting to management firmware (Manish Chopra) [1857857] - [netdrv] net: qed: invoke err notify on critical areas (Manish Chopra) [1857857] - [netdrv] net: qede: add hw err scheduled handler (Manish Chopra) [1857857] - [netdrv] net: qed: adding hw_err states and handling (Manish Chopra) [1857857] - [netdrv] net: qede: Use true for bool variable in qede_init_fp() (Manish Chopra) [1857857] - [netdrv] qed: Make ll2_cbs static (Manish Chopra) [1857857] - [netdrv] qede: Add support for handling the pcie errors (Manish Chopra) [1857857] - [netdrv] qed: Enable device error reporting capability (Manish Chopra) [1857857] - [netdrv] qed: use true,false for bool variables (Manish Chopra) [1857857] - [netdrv] net: qed: Remove unneeded cast from memory allocation (Manish Chopra) [1857857] - [netdrv] net: qede: reject unsupported coalescing params (Manish Chopra) [1857857] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 440 (Manish Chopra) [1857857] - [scsi] treewide: Add SPDX license identifier - Makefile/Kconfig (Manish Chopra) [1857857] - [netdrv] sfc: don't double-down() filters in ef100_reset() (Jarod Wilson) [1856681] - [netdrv] sfc: Fix error code in probe (Jarod Wilson) [1856681] - [netdrv] sfc: fix boolreturn.cocci warning and rename function (Jarod Wilson) [1856681] - [netdrv] sfc: Use 'pci_channel_state_t' instead of 'enum pci_channel_state' (Jarod Wilson) [1856681] - [netdrv] sfc: Use fallthrough pseudo-keyword (Jarod Wilson) [1856681] - [netdrv] sfc: fix build warnings on 32-bit (Jarod Wilson) [1856681] - [netdrv] sfc: don't free_irq()s if they were never requested (Jarod Wilson) [1856681] - [netdrv] sfc: null out channel->rps_flow_id after freeing it (Jarod Wilson) [1856681] - [netdrv] sfc: take correct lock in ef100_reset() (Jarod Wilson) [1856681] - [netdrv] sfc: really check hash is valid before using it (Jarod Wilson) [1856681] - [netdrv] sfc: check hash is valid before using it (Jarod Wilson) [1856681] - [netdrv] sfc: fix ef100 design-param checking (Jarod Wilson) [1856681] - [netdrv] sfc: Fix build with CONFIG_RFS_ACCEL disabled (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: add nic-type for VFs, and bind to them (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read pf_index at probe time (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: functions for selftests (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: statistics gathering (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: plumb in fini_dmaq (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: RX path for EF100 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: RX filter table management and related gubbins (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: TX path for EF100 NICs (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read Design Parameters at probe time (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: fail the probe if NIC uses unsol_ev credits (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: check firmware version at start-of-day (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: remove duplicated include from ef100_netdev.c (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: implement ndo_get_phys_port_{id, name} (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read device MAC address at probe time (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: probe the PHY and configure the MAC (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: actually perform resets (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: extend ef100_check_caps to cover datapath_caps3 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read datapath caps, implement check_caps (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: process events for MCDI completions (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: implement ndo_open/close and EVQ probing (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: implement MCDI transport (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: don't call efx_reset_down()/up() on EF100 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: PHY probe stub (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: reset-handling stub (Jarod Wilson) [1856681] - [netdrv] sfc: skeleton EF100 PF driver (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: register accesses on EF100 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: add EF100 register definitions (Jarod Wilson) [1856681] - [netdrv] sfc: remove efx_ethtool_nway_reset() (Jarod Wilson) [1856681] - [netdrv] sfc: drop unnecessary list_empty (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: helper function to set default RSS table of given size (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: NVRAM selftest support code (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: populate BUFFER_SIZE_BYTES in INIT_RXQ (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: add EF100 to NIC-revision enumeration (Jarod Wilson) [1856681] - [netdrv] sfc: get drvinfo driver name from outside the common code (Jarod Wilson) [1856681] - [netdrv] sfc: initialise RSS context ID to 'no RSS context' in efx_init_struct() (Jarod Wilson) [1856681] - [netdrv] sfc: commonise efx_fini_dmaq (Jarod Wilson) [1856681] - [netdrv] sfc: factor out efx_mcdi_filter_table_down() from _remove() (Jarod Wilson) [1856681] - [netdrv] sfc: don't call tx_limit_len if NIC type doesn't have one (Jarod Wilson) [1856681] - [netdrv] sfc: assign TXQs without gaps (Jarod Wilson) [1856681] - [netdrv] sfc: commonise netif_set_real_numx_queues calls (Jarod Wilson) [1856681] - [netdrv] sfc: make tx_queues_per_channel variable at runtime (Jarod Wilson) [1856681] - [netdrv] sfc: move modparam 'rss_cpus' out of common channel code (Jarod Wilson) [1856681] - [netdrv] sfc: move modparam 'interrupt_mode' out of common channel code (Jarod Wilson) [1856681] - [netdrv] sfc: remove max_interrupt_mode (Jarod Wilson) [1856681] - [netdrv] sfc: support setting MTU even if not privileged to configure MAC fully (Jarod Wilson) [1856681] - [netdrv] sfc: don't call tx_remove if there isn't one (Jarod Wilson) [1856681] - [netdrv] sfc: commonise initialisation of efx->vport_id (Jarod Wilson) [1856681] - [netdrv] sfc: commonise efx->xq_entries initialisation (Jarod Wilson) [1856681] - [netdrv] sfc: initialise max_channels in efx_init_channels() (Jarod Wilson) [1856681] - [netdrv] sfc: move definition of EFX_MC_STATS_GENERATION_INVALID (Jarod Wilson) [1856681] - [netdrv] sfc: factor out efx_tx_tso_header_length() and understand encapsulation (Jarod Wilson) [1856681] - [netdrv] sfc: remove duplicate declaration of efx_enqueue_skb_tso() (Jarod Wilson) [1856681] - [netdrv] sfc: commonise TSO fallback code (Jarod Wilson) [1856681] - [netdrv] sfc: commonise efx_sync_rx_buffer() (Jarod Wilson) [1856681] - [netdrv] sfc: commonise some MAC configuration code (Jarod Wilson) [1856681] - [netdrv] sfc: commonise miscellaneous efx functions (Jarod Wilson) [1856681] - [netdrv] sfc: add missing licence info to mcdi_filters.c (Jarod Wilson) [1856681] - [netdrv] sfc: commonise MCDI MAC stats handling (Jarod Wilson) [1856681] - [netdrv] sfc: move NIC-specific mcdi_port declarations out of common header (Jarod Wilson) [1856681] - [netdrv] sfc: extend common GRO interface to support CHECKSUM_COMPLETE (Jarod Wilson) [1856681] - [netdrv] sfc: commonise ARFS handling (Jarod Wilson) [1856681] - [netdrv] sfc: commonise drain event handling (Jarod Wilson) [1856681] - [netdrv] sfc: commonise PCI error handlers (Jarod Wilson) [1856681] - [netdrv] sfc: track which BAR is mapped (Jarod Wilson) [1856681] - [netdrv] sfc: commonise FC advertising (Jarod Wilson) [1856681] - [netdrv] sfc: commonise other ethtool bits (Jarod Wilson) [1856681] - [netdrv] sfc: commonise ethtool NFC and RXFH/RSS functions (Jarod Wilson) [1856681] - [netdrv] sfc: commonise ethtool link handling functions (Jarod Wilson) [1856681] - [netdrv] sfc: split up nic.h (Jarod Wilson) [1856681] - [netdrv] sfc: refactor EF10 stats handling (Jarod Wilson) [1856681] - [netdrv] sfc: don't try to create more channels than we can have VIs (Jarod Wilson) [1856681] - [netdrv] sfc: extend bitfield macros up to POPULATE_DWORD_13 (Jarod Wilson) [1856681] - [netdrv] sfc: determine flag word automatically in efx_has_cap() (Jarod Wilson) [1856681] - [netdrv] sfc: update MCDI protocol headers (Jarod Wilson) [1856681] - [netdrv] sfc: replace '---help---' in Kconfig files with 'help' (Jarod Wilson) [1856681] - [netdrv] sfc: add missing annotation for efx_ef10_try_update_nic_stats_vf() (Jarod Wilson) [1856681] - [netdrv] sfc: avoid an unused-variable warning (Jarod Wilson) [1856681] - [netdrv] sfc: fix dereference of table before it is null checked (Jarod Wilson) [1856681] - [netdrv] sfc: siena_check_caps() can be static (Jarod Wilson) [1856681] - [netdrv] sfc: actually wire up siena_check_caps() (Jarod Wilson) [1856681] - [netdrv] sfc: make firmware-variant printing a nic_type function (Jarod Wilson) [1856681] - [netdrv] sfc: make filter table probe caller responsible for adding VLANs (Jarod Wilson) [1856681] - [netdrv] sfc: move rx_rss_context_exclusive into struct efx_mcdi_filter_table (Jarod Wilson) [1856681] - [netdrv] sfc: rework handling of (firmware) multicast chaining state (Jarod Wilson) [1856681] - [netdrv] sfc: move 'must restore' flags out of ef10-specific nic_data (Jarod Wilson) [1856681] - [netdrv] sfc: use efx_has_cap for capability checks outside of NIC-specific code (Jarod Wilson) [1856681] - [netdrv] sfc: make capability checking a nic_type function (Jarod Wilson) [1856681] - [netdrv] sfc: move vport_id to struct efx_nic (Jarod Wilson) [1856681] - [ntb] NTB: Revert "Add Hygon Device ID" (Myron Stowe) [1880468] - [tools] NTB: ntb_test: Fix bug when counting remote files (Myron Stowe) [1908031] - [ntb] NTB: perf: Fix race condition when run with ntb_test (Myron Stowe) [1908031] - [ntb] NTB: perf: Fix support for hardware that doesn't have port numbers (Myron Stowe) [1908031] - [ntb] NTB: perf: Don't require one more memory window than number of peers (Myron Stowe) [1908031] - [ntb] NTB: ntb_pingpong: Choose doorbells based on port number (Myron Stowe) [1908031] - [ntb] NTB: Fix the default port and peer numbers for legacy drivers (Myron Stowe) [1908031] - [ntb] NTB: Revert the change to use the NTB device dev for DMA allocations (Myron Stowe) [1908031] - [ntb] NTB: ntb_tool: reading the link file should not end in a NULL byte (Myron Stowe) [1908031] - [ntb] ntb_perf: avoid false dma unmap of destination address (Myron Stowe) [1908031] - [ntb] ntb_perf: increase sleep time from one milli sec to one sec (Myron Stowe) [1908031] - [ntb] ntb_tool: pass correct struct device to dma_alloc_coherent (Myron Stowe) [1908031] - [ntb] ntb_perf: pass correct struct device to dma_alloc_coherent (Myron Stowe) [1908031] - [include] NTB: correct ntb_peer_spad_addr and ntb_peer_spad_read comment typos (Myron Stowe) [1908031] - [ntb] ntb: intel: fix static declaration (Myron Stowe) [1908031] - [ntb] ntb: intel: add hw workaround for NTB BAR alignment (Myron Stowe) [1908031] - [ntb] ntb: intel: Add Icelake (gen4) support for Intel NTB (Myron Stowe) [1908031] - [ntb] NTB: Fix static check warning in perf_clear_test (Myron Stowe) [1908031] - [include] include/ntb: Fix typo in ntb_unregister_device description (Myron Stowe) [1908031] - [ntb] NTB: add pci shutdown handler for AMD NTB (Myron Stowe) [1908031] - [ntb] NTB: send DB event when driver is loaded or un-loaded (Myron Stowe) [1908031] - [ntb] NTB: remove redundant setting of DB valid mask (Myron Stowe) [1908031] - [ntb] NTB: return link up status correctly for PRI and SEC (Myron Stowe) [1908031] - [ntb] NTB: add helper functions to set and clear sideinfo (Myron Stowe) [1908031] - [ntb] NTB: move ntb_ctrl handling to init and deinit (Myron Stowe) [1908031] - [ntb] NTB: handle link up, D0 and D3 events correctly (Myron Stowe) [1908031] - [ntb] NTB: handle link down event correctly (Myron Stowe) [1908031] - [ntb] NTB: remove handling of peer_sta from amd_link_is_up (Myron Stowe) [1908031] - [ntb] NTB: set peer_sta within event handler itself (Myron Stowe) [1908031] - [ntb] NTB: return the side info status from amd_poll_link (Myron Stowe) [1908031] - [ntb] NTB: define a new function to get link status (Myron Stowe) [1908031] - [ntb] NTB: Enable link up and down event notification (Myron Stowe) [1908031] - [ntb] NTB: clear interrupt status register (Myron Stowe) [1908031] - [ntb] NTB: Fix access to link status and control register (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Use scnprintf() for avoiding potential buffer overflow (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Fix ntb_mw_clear_trans error if size == 0 (Myron Stowe) [1908031] - [ntb] ntb_tool: Fix printk format (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Fix address err in perf_copy_chunk (Myron Stowe) [1908031] - [ntb] NTB: Fix an error in get link status (Myron Stowe) [1908031] - [ntb] NTB: Add Hygon Device ID (Myron Stowe) [1908031] - [ntb] NTB: fix IDT Kconfig typos/spellos (Myron Stowe) [1908031] - [ntb] ntb_hw_amd: Add memory window support for new AMD hardware (Myron Stowe) [1908031] - [ntb] ntb_hw_amd: Add a new NTB PCI device ID (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: remove redundant assignment to rc (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: make ntb_mw_set_trans() work when addr == 0 (Myron Stowe) [1908031] - [ntb] ntb: point to right memory window index (Myron Stowe) [1908031] - [ntb] NTB/msi: remove incorrect MODULE defines (Myron Stowe) [1908031] - [documentation] NTB: Describe the ntb_msi_test client in the documentation (Myron Stowe) [1908031] - [ntb] NTB: Add MSI interrupt support to ntb_transport (Myron Stowe) [1908031] - [tools] NTB: Add ntb_msi_test support to ntb_test (Myron Stowe) [1908031] - [ntb] NTB: Introduce NTB MSI Test Client (Myron Stowe) [1908031] - [ntb] NTB: Introduce MSI library (Myron Stowe) [1908031] - [ntb] NTB: Rename ntb.c to support multiple source files in the module (Myron Stowe) [1908031] - [include] NTB: Introduce functions to calculate multi-port resource index (Myron Stowe) [1908031] - [include] NTB: Introduce helper functions to calculate logical port number (Myron Stowe) [1908031] - [pci] PCI/switchtec: Add module parameter to request more interrupts (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Fix setup MW with failure bug (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Skip unnecessary re-setup of shared memory window for crosslink case (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Remove redundant steps of switchtec_ntb_reinit_peer() function (Myron Stowe) [1908031] - [include] NTB: correct ntb_dev_ops and ntb_dev comment typos (Myron Stowe) [1908031] - [ntb] NTB: amd: Silence shift wrapping warning in amd_ntb_db_vector_mask() (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: potential shift wrapping bug in switchtec_ntb_init_sndev() (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Ensure qp->tx_mw_dma_addr is initaliazed (Myron Stowe) [1908031] - [ntb] NTB: ntb_hw_amd: set peer limit register (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Clear stale values in doorbell and command SPAD register (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Disable NTB link after clearing peer XLAT registers (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Increased the number of message retries to 1000 (Myron Stowe) [1908031] - [ntb] ntb: intel: Make intel_ntb3_peer_db_addr static (Myron Stowe) [1908031] - [ntb] NTB: add new parameter to peer_db_addr() db_bit and db_data (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Ensure the destination buffer is mapped for TX DMA (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Free MWs in ntb_transport_link_cleanup() (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Added support of >=4G memory windows (Myron Stowe) [1908031] - [include] ntb_hw_switchtec: NT req id mapping table register entry number should be 512 (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: debug print 64bit aligned crosslink BAR Numbers (Myron Stowe) [1908031] - [ntb] ntb: idt: Alter the driver info comments (Myron Stowe) [1908031] - [ntb] ntb: idt: Discard temperature sensor IRQ handler (Myron Stowe) [1908031] - [ntb] ntb: idt: Add basic hwmon sysfs interface (Myron Stowe) [1908031] - [ntb] ntb: idt: Alter temperature read method (Myron Stowe) [1908031] - [netdrv] ntb_netdev: Simplify remove with client device drvdata (Myron Stowe) [1908031] - [ntb] NTB: transport: Try harder to alloc an aligned MW buffer (Myron Stowe) [1908031] - [ntb] ntb: ntb_transport: Mark expected switch fall-throughs (Myron Stowe) [1908031] - [ntb] ntb: idt: Set PCIe bus address to BARLIMITx (Myron Stowe) [1908031] - [ntb] NTB: ntb_hw_idt: replace IS_ERR_OR_NULL with regular NULL checks (Myron Stowe) [1908031] - [ntb] ntb: intel: fix return value for ndev_vec_mask() (Myron Stowe) [1908031] - [netdrv] ntb_netdev: fix sleep time mismatch (Myron Stowe) [1908031]- [block] block: fix incorrect branching in blk_max_size_offset() (Mike Snitzer) [1903722] - [md] dm: fix IO splitting (Mike Snitzer) [1903722] - [block] block: fix get_max_io_size() (Mike Snitzer) [1903722] - [block] block: Improve physical block alignment of split bios (Mike Snitzer) [1903722] - [block] block: use gcd() to fix chunk_sectors limit stacking (Mike Snitzer) [1903722] - [kernel] sched/deadline: Fix priority inheritance with multiple scheduling classes (Phil Auld) [1780490] - [fs] Convert trailing spaces and periods in path components (Leif Sahlberg) [1882457] - [block] loop: Fix occasional uevent drop (Ming Lei) [1897401] - [block] block: add a return value to set_capacity_revalidate_and_notify (Ming Lei) [1897401] - [fs] fat: truncate inode timestamp updates in setattr (Pavel Reichl) [1533270] - [fs] fat: change timestamp updates to use fat_truncate_time (Pavel Reichl) [1533270] - [fs] fat: add functions to update and truncate timestamps appropriately (Pavel Reichl) [1533270] - [fs] fat: create a function to calculate the timezone offest (Pavel Reichl) [1533270] - [net] icmp: randomize the global rate limiter (Guillaume Nault) [1899137] - [net] ipv4: Restore flowi4_oif update before call to xfrm_lookup_route (Guillaume Nault) [1899137] - [net] ipv4: Update exception handling for multipath routes via same device (Guillaume Nault) [1899137] - [net] ip: fix tos reflection in ack and reset packets (Guillaume Nault) [1899137] - [net] initialize fastreuse on inet_inherit_port (Guillaume Nault) [1899137] - [net] refactor bind_bucket fastreuse into helper (Guillaume Nault) [1899137] - [infiniband] RDMA/bnxt_re: Remove set but not used variable 'qplib_ctx' (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Remove the qp from list only if the qp destroy succeeds (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Fix driver crash on unaligned PSN entry address (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Restrict the max_gids to 256 (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Static NQ depth allocation (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Fix the qp table indexing (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Do not report transparent vlan from QP1 (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Change wr posting logic to accommodate variable wqes (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Add helper data structures (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Pull psn buffer dynamically based on prod (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: introduce a function to allocate swq (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: introduce wqe mode to select execution path (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt: Delete 'nq_ptr' variable which is not used (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Remove dead code from rcfw (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Simplify obtaining queue entry from hw ring (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Update missing hsi data structures (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Reduce device page size detection code (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Remove unsupported modify_device callback (Selvin Xavier) [1861886] - [include] net: Add netif_is_bareudp() API to identify bareudp devices (Guillaume Nault) [1839788] - [net] Removed the device type check to add mpls support for devices (Guillaume Nault) [1839788] - [tools] selftests: set conf.all.rp_filter=0 in bareudp.sh (Guillaume Nault) [1839788] - [tools] selftests: disable rp_filter when testing bareudp (Guillaume Nault) [1839788] - [tools] selftests: add test script for bareudp tunnels (Guillaume Nault) [1839788] - [documentation] bareudp: Corrected description of bareudp module. (Guillaume Nault) [1839788] - [netdrv] bareudp: forbid mixing IP and MPLS in multiproto mode (Guillaume Nault) [1839788] - [netdrv] bareudp: Reverted support to enable & disable rx metadata collection (Guillaume Nault) [1839788] - [documentation] bareudp: update iproute2 sample commands (Guillaume Nault) [1839788] - [netdrv] bareudp: Added attribute to enable & disable rx metadata collection (Guillaume Nault) [1839788] - [netdrv] bareudp: Fixed multiproto mode configuration (Guillaume Nault) [1839788] - [netdrv] bareudp: Fixed configuration to avoid having garbage values (Guillaume Nault) [1839788] - [netdrv] net: bareudp: avoid uninitialized variable warning (Guillaume Nault) [1839788] - [netdrv] bareudp: Fixed bareudp receive handling (Guillaume Nault) [1839788] - [netdrv] bareudp: remove unnecessary udp_encap_enable() in bareudp_socket_create() (Guillaume Nault) [1839788] - [netdrv] bareudp: print error message when command fails (Guillaume Nault) [1839788] - [netdrv] bareudp: add module alias (Guillaume Nault) [1839788] - [netdrv] bareudp: Fix uninitialized variable warnings. (Guillaume Nault) [1839788] - [netdrv] Special handling for IP & MPLS. (Guillaume Nault) [1839788] - [net] UDP tunnel encapsulation module for tunnelling different protocols like MPLS, IP, NSH etc. (Guillaume Nault) [1839788] - [arm64] arm64: remove arm64ksyms.c (Mark Salter) [1883365] - [arm64] arm64: frace: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: string: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: uaccess: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: page: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: smccc: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: tishift: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: add EXPORT_SYMBOL_NOKASAN() (Mark Salter) [1883365] - [mm] arm64: move memstart_addr export inline (Mark Salter) [1883365] - [arm64] arm64: remove bitop exports (Mark Salter) [1883365] - [arm64] arm64: lib: use C string functions with KASAN enabled (Mark Salter) [1883365] - [arm64] arm64: add (Mark Salter) [1883365] - [arm64] locking/atomics/arm64, arm64/bitops: Include (Mark Salter) [1883365] - [arm64] locking/atomics/arm64: Replace our atomic/lock bitop implementations with asm-generic (Mark Salter) [1883365] - [include] locking/atomics, asm-generic/bitops/lock.h: Rewrite using atomic_fetch_*() (Mark Salter) [1883365] - [include] locking/atomics, asm-generic/bitops/atomic.h: Rewrite using atomic_*() APIs (Mark Salter) [1883365] - [thermal] thermal: rcar_thermal: Add missing braces to conditional statement (Ivan Vecera) [1894564] - [thermal] thermal: Rename set_mode() to change_mode() (Ivan Vecera) [1894564] - [thermal] thermal: Simplify or eliminate unnecessary set_mode() methods (Ivan Vecera) [1894564] - [thermal] thermal: core: Stop polling DISABLED thermal devices (Ivan Vecera) [1894564] - [thermal] thermal: Explicitly enable non-changing thermal zone devices (Ivan Vecera) [1894564] - [thermal] thermal: Use mode helpers in drivers (Ivan Vecera) [1894564] - [thermal] thermal: Add mode helpers (Ivan Vecera) [1894564] - [thermal] thermal: remove get_mode() operation of drivers (Ivan Vecera) [1894564] - [thermal] thermal: Store device mode in struct thermal_zone_device (Ivan Vecera) [1894564] - [include] thermal: Add current mode to thermal zone device (Ivan Vecera) [1894564] - [acpi] thermal: Store thermal mode in a dedicated enum (Ivan Vecera) [1894564] - [acpi] acpi: thermal: Fix error handling in the register function (Ivan Vecera) [1894564] - [thermal] thermal: core: skip update disabled thermal zones after suspend (Ivan Vecera) [1894564] - [thermal] Thermal: do not clear passive state during system sleep (Ivan Vecera) [1894564] - [thermal] thermal: of-thermal: disable passive polling when thermal zone is disabled (Ivan Vecera) [1894564] - [crypto] crypto: qat - drop input parameter from adf_enable_aer() (Vladis Dronov) [1855190] - [crypto] crypto: qat - fix function parameters descriptions (Vladis Dronov) [1855190] - [crypto] crypto: qat - remove unnecessary mutex_init() (Vladis Dronov) [1855190] - [crypto] crypto: qat - use PCI_VDEVICE (Vladis Dronov) [1855190] - [crypto] crypto: qat - replace device ids defines (Vladis Dronov) [1855190] - [crypto] crypto: qat - include domain in top level debugfs path (Vladis Dronov) [1855190] - [crypto] crypto: qat - check cipher length for aead AES-CBC-HMAC-SHA (Vladis Dronov) [1855190] - [crypto] crypto: qat - Use fallthrough pseudo-keyword (Vladis Dronov) [1855190] - [crypto] crypto: qat - add delay before polling mailbox (Vladis Dronov) [1855190] - [include] PCI: Add Intel QuickAssist device IDs (Vladis Dronov) [1855190] - [crypto] crypto: qat - fix double free in qat_uclo_create_batch_init_list (Vladis Dronov) [1855190] - [crypto] crypto: qat - fallback for xts with 192 bit keys (Vladis Dronov) [1855190] - [crypto] crypto: qat - remove unused field in skcipher ctx (Vladis Dronov) [1855190] - [crypto] crypto: qat - validate xts key (Vladis Dronov) [1855190] - [crypto] crypto: qat - allow xts requests not multiple of block (Vladis Dronov) [1855190] - [crypto] crypto: qat - update timeout logic in put admin msg (Vladis Dronov) [1855190] - [crypto] crypto: qat - send admin messages to set of AEs (Vladis Dronov) [1855190] - [crypto] crypto: qat - update fw init admin msg (Vladis Dronov) [1855190] - [crypto] crypto: qat - remove packed attribute in etr structs (Vladis Dronov) [1855190] - [crypto] crypto: qat - replace user types with kernel ABI __u types (Vladis Dronov) [1855190] - [crypto] crypto: qat - replace user types with kernel u types (Vladis Dronov) [1855190] - [crypto] crypto: qat - convert to SPDX License Identifiers (Vladis Dronov) [1855190] - [crypto] crypto: qat - simplify the qat_crypto function (Vladis Dronov) [1855190] - [crypto] crypto: qat - spelling s/Decrytp/Decrypt/ (Vladis Dronov) [1855190] - [crypto] crypto: qat/adf_aer - Replace GFP_ATOMIC with GFP_KERNEL in adf_dev_aer_schedule_reset() (Vladis Dronov) [1855190] - [thermal] thermal: int340x: processor_thermal: fix: update Jasper Lake PCI id (David Arcari) [1889331] - [thermal] thermal: int3403_thermal: Downgrade error message (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Prevent page fault on .set_mode() op (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Don't require IDSP to exist (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Export OEM vendor variables (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Export GDDV (David Arcari) [1889331] - [thermal] thermal: int3400_thermal: Statically initialize .get_mode()/.set_mode() ops (David Arcari) [1889331] - [thermal] thermal: int340x_thermal: fix: Update Tiger Lake ACPI device IDs (David Arcari) [1889331] - [thermal] thermal: int340x_thermal: Use scnprintf() for avoiding potential buffer overflow (David Arcari) [1889331] - [thermal] thermal: int340x: processor_thermal: Add Tiger Lake support (David Arcari) [1889331] - [platform] acpi: Remove header dependency (David Arcari) [1889331] - [thermal] thermal: int340x: switch to use helpers (David Arcari) [1889331] - [thermal] thermal: int340x: processor_thermal: Add Jasper Lake support (David Arcari) [1889331] - [thermal] thermal: int340x_thermal: Add Tiger Lake ACPI device IDs (David Arcari) [1889331] - [thermal] thermal: intel: int3403: replace printk(KERN_WARN...) with pr_warn(...) (David Arcari) [1889331] - [thermal] thermal: intel: int340x_thermal: Remove unnecessary acpi_has_method() uses (David Arcari) [1889331] - [thermal] thermal: int340x: processor_thermal: Add Ice Lake support (David Arcari) [1889331] - [thermal] drivers: thermal: processor_thermal_device: Export sysfs interface for TCC offset (David Arcari) [1889331] - [netdrv] net/mlx5e: Fix arch depending casting issue in FEC (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Kconfig: convert imply usage to weak dependency (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Fix condition for termination table cleanup (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Use a separate work queue for fib event handling (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Add support for RDMA TX flow table (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Add support for RDMA TX steering (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Move to fully dynamic UAR mode once user space supports it (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Limit the scope of struct mlx5_bfreg_info to mlx5_ib (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Extend QP creation to get uar page index from user space (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Extend CQ creation to get uar page index from user space (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Avoid group version scan when not necessary (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Avoid incrementing FTE version (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Simplify matching group searches (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Generally use the WC auto detection test result (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Avoid forwarding to other eswitch uplink (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Eswitch, enable forwarding back to uplink port (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5e: Add support for offloading traffic from uplink to uplink (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Don't use termination tables in slow path (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Avoid configuring eswitch QoS if not supported (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: DR, Add support for flow table id destination action (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Refactor unload all reps per rep type (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Update VF vports config when num of VFs changed (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Introduce per vport configuration for eswitch modes (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-switch, Make vport setup/cleanup sequence symmetric (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Prepare for vport enable/disable refactor (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Remove redundant warning when QoS enable failed (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Remove redundant check of eswitch manager cap (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Allow MRs to be created in the cache synchronously (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Revise how the hysteresis scheme works for cache filling (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Fix locking in MR cache work queue (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Lock access to ent->available_mrs/limit when doing queue_work (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Fix MR cache size and limit debugfs (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Always remove MRs from the cache before destroying them (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Simplify how the MR cache bucket is located (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Rename the tracking variables for the MR cache (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Replace spinlock protected write with atomic var (Alaa Hleihel) [1858559] - [infiniband] {IB, net}/mlx5: Move asynchronous mkey creation to mlx5_ib (Alaa Hleihel) [1858559] - [infiniband] {IB, net}/mlx5: Assign mkey variant in mlx5_ib only (Alaa Hleihel) [1858559] - [infiniband] {IB, net}/mlx5: Setup mkey variant before mr create command invocation (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Use offsetofend() instead of duplicated variant (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Remove duplicate definitions of SW_ICM macros (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-switch, make query inline mode a static function (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Allocate smaller size tables for ft offload (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Introduce TLS and IPSec objects enums (Alaa Hleihel) [1858559] - [include] net/mlx5: Introduce egress acl forward-to-vport capability (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Add np_min_time_between_cnps and rp_max_rate debug params (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Fix header guard in rsc_dump.h (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Replace zero-length array with flexible-array member (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Remove a useless 'drain_workqueue()' call in 'mlx5e_ipsec_cleanup()' (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Add support for FEC modes based on 50G per lane links (Alaa Hleihel) [1858559] - [netdrv] net/mlxe5: Separate between FEC and current speed (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Advertise globaly supported FEC modes (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Enforce setting of a single FEC mode (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Set FEC to auto when configured mode is not supported (Alaa Hleihel) [1858559] - [netdrv] mlx5: Use proper logging and tracing line terminations (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Support dump callback in RX reporter (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Support dump callback in TX reporter (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Gather reporters APIs together (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Add support for resource dump (Alaa Hleihel) [1858559] - [netdrv] bnxt_en: Fix wrong flag value passed to HWRM_PORT_QSTATS_EXT fw call (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix HWRM_FUNC_QSTATS_EXT firmware call (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Return -EOPNOTSUPP for ETHTOOL_GREGS on VFs (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Protect bnxt_set_eee() and bnxt_set_pauseparam() with mutex (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: return proper error codes in bnxt_show_temp (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Use memcpy to copy VPD field info (Jonathan Toppins) [1861885] - [netdrv] net: ethernet: broadcom: have drivers select DIMLIB as needed (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix NULL ptr dereference crash in bnxt_fw_reset_task() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Avoid sending firmware messages when AER error is detected (Jonathan Toppins) [1861885] - [netdrv] bnxt: don't enable NAPI until rings are ready (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Setup default RSS map in all scenarios (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: init RSS table for Minimal-Static VF reservation (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: fix HWRM error when querying VF temperature (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix possible crash in bnxt_fw_reset_task() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix PCI AER error recovery flow (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix ethtool -S statitics with XDP or TCs enabled (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Check for zero dir entries in NVRAM (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Don't query FW when netif_running() is false (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Remove superfluous memset() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add support for 'ethtool -d' (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Switch over to use the 64-bit software accumulated counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Accumulate all counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Retrieve hardware masks for port counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Retrieve hardware counter masks from firmware if available (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Allocate additional memory for all statistics blocks (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Refactor statistics code and structures (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Use macros to define port statistics size and offset (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Update firmware interface to 1.10.1.54 (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Remove PCIe non-counters from ethtool statistics (Jonathan Toppins) [1861885] - [netdrv] net: bnxt: don't complain if TC flower can't be supported (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix completion ring sizing with TPA enabled (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Init ethtool link settings after reading updated PHY configuration (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix race when modifying pause settings (Jonathan Toppins) [1861885] - [netdrv] bnxt: convert to new udp_tunnel_nic infra (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: allow firmware to disable VLAN offloads (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: clean up VLAN feature bit handling (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Implement ethtool -X to set indirection table (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Return correct RSS indirection table entries to ethtool -x (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fill HW RSS table from the RSS logical indirection table (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add helper function to return the number of RSS contexts (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add logical RSS indirection table structure (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix up bnxt_get_rxfh_indir_size() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Set up the chip specific RSS table size (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Read VPD info only for PFs (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix statistics counters issue during ifdown with older firmware (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Do not enable legacy TX push on older firmware (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Store the running firmware version code (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add board.serial_number field to info_get cb (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Return from timer if interface is not in open state (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix AER reset logic on 57500 chips (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Re-enable SRIOV during resume (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Simplify bnxt_resume() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: fix firmware message length endianness (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix return code to "flash_device" (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix accumulation of bp->net_stats_prev (Jonathan Toppins) [1861885] - [netdrv] net: bnxt: Remove Comparison to bool in bnxt_ethtool.c (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: show only relevant ethtool stats for a TX or RX ring (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Split HW ring statistics strings into RX and TX parts (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Refactor the software ring counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add doorbell information to bnxt_en_dev struct (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add support for L2 doorbell size (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Set the db_offset on 57500 chips for the RDMA MSIX entries (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Define the doorbell offsets on 57500 chips (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Improve kernel log messages related to ethtool reset (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: fix ethtool_reset_flags ABI violations (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: refactor ethtool firmware reset types (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: prepare to refactor ethtool reset types (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Do not include ETH_FCS_LEN in the max packet length sent to fw (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Improve TQM ring context memory sizing formulas (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Allocate TQM ring context memory according to fw specification (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Update firmware spec. to 1.10.1.33 (Jonathan Toppins) [1861885] - [fs] fs/namespace.c: fix mountpoint reference counter race (Pavel Reichl) [1852651] {CVE-2020-12114}- [powerpc] powerpc/64: Fix kernel stack 16-byte alignment (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/aout: Fix struct user definition to use user_pt_regs (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/uapi: Fix sigcontext definition to use user_pt_regs (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] bpf: powerpc: fix broken uapi for BPF_PROG_TYPE_PERF_EVENT (Desnes Augusto Nunes do Rosario) [1854528] - [tools] selftests/powerpc: Tests for kernel accessing user memory (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/ptrace: Introduce PPC_DEBUG_FEATURE_DATA_BP_ARCH_31 (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix exception handling for CONFIG_HAVE_HW_BREAKPOINT=N (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix length calculation for unaligned target (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Move DAWR detection logic outside of hw_breakpoint.c (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/ptrace: Fix SETHWDEBUG when CONFIG_HAVE_HW_BREAKPOINT=N (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix handling of vector instructions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix quadword instruction handling on p10 predecessors (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/hw_breakpoint.h: delete duplicated word (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Remove 512 byte boundary (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Return available watchpoints dynamically (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Guest support for 2nd DAWR hcall (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Set CPU_FTR_DAWR1 based on pa-features bit (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/dt_cpu_ftrs: Add feature for 2nd DAWR (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Enable watchpoint functionality on power10 guest (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix DAWR exception for CACHEOP (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix DAWR exception constraint (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix 512 byte boundary limit (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] hw-breakpoints: Fix build warnings with clang (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/xmon: Support 2nd DAWR (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/xmon: Don't allow breakpoint overwriting (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Don't allow concurrent perf and ptrace events (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Prepare handler to handle more than one watchpoint (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Use builtin ALIGN*() macros (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Introduce is_ptrace_bp() function (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Use loop for thread_struct->ptrace_bps (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Convert thread_struct->hw_brk to an array (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Disable all available watchpoints when !dawr_force_enable (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Get watchpoint count dynamically while disabling them (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Provide DAWR number to __set_breakpoint (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Provide DAWR number to set_dawr (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/ptrace: Return actual num of available watchpoints (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Introduce function to get nr watchpoints dynamically (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Add SPRN macros for second DAWR (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: move ptrace_triggered() into hw_breakpoint.c (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: create ppc_gethwdinfo() (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: create ptrace_get_debugreg() (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out ADV_DEBUG_REGS related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: move register viewing functions out of ptrace.c (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out TRANSACTIONAL_MEM related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out SPE related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out ALTIVEC related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out VSX related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: drop PARAMETER_SAVE_AREA_OFFSET (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: drop unnecessary #ifdefs CONFIG_PPC64 (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: remove unused header includes (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: Move ptrace into a subdirectory (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Don't call dar_within_range() for Book3S (Desnes Augusto Nunes do Rosario) [1854528] - [tools] selftests/powerpc: Enable range tests on 8xx in ptrace-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/hw_breakpoints: Rewrite 8xx breakpoints to allow any address range size (Desnes Augusto Nunes do Rosario) [1854528] - [tools] powerpc/watchpoint: Support for 8xx in ptrace-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [tools] powerpc/watchpoint: Add DAR outside test in perf-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [tools] selftests/powerpc: Rewrite ptrace-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: permanently include 8xx registers in reg.h (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: Simplify vr_get/set() to avoid GCC warning (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/64: Interrupts save PPR on stack rather than thread_struct (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: Use SWITCH_FRAME_SIZE for prom and rtas entry (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: Don't use sizeof(struct pt_regs) in ptrace code (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: Split user/kernel definitions of struct pt_regs (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: declare set_breakpoint() static (Desnes Augusto Nunes do Rosario) [1854528] - [tools] perf vendor events power9: Added nest imc metric events (Michael Petlan) [1780258] - [powerpc] powerpc/perf: Fix crashes with generic_compat_pmu & BHRB (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Exclude pmc5/6 from the irrelevant PMU group constraints (Michael Petlan) [1854525] - [powerpc] powerpc/powernv/idle: add a basic stop 0-3 driver for POWER10 (Michael Petlan) [1854525] - [powerpc] powerpc/kernel: Cleanup machine check function declarations (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Fix soft lockups due to missed interrupt accounting (Michael Petlan) [1854525] - [powerpc] powerpc: Add POWER10 raw mode cputable entry (Michael Petlan) [1854525] - [powerpc] powerpc/powernv: Machine check handler for POWER10 (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add extended regs support for power10 platform (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add support for outputting extended regs in perf intr_regs (Michael Petlan) [1854525] - [tools] perf tools powerpc: Add support for extended regs in power10 (Michael Petlan) [1854525] - [tools] perf tools powerpc: Add support for extended register capability (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Fix MMCRA_BHRB_DISABLE define for binutils < 2.28 (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Initialize power10 PMU registers in cpu setup routine (Michael Petlan) [1854525] - [powerpc] powerpc/perf: BHRB control to disable BHRB logic when not used (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add Power10 BHRB filter support for PERF_SAMPLE_BRANCH_IND_CALL/COND (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Ignore the BHRB kernel address filtering for P10 (Michael Petlan) [1854525] - [powerpc] powerpc/perf: power10 Performance Monitoring support (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add Power10 PMU feature to DT CPU features (Michael Petlan) [1854525] - [powerpc] powerpc/xmon: Add PowerISA v3.1 PMU SPRs (Michael Petlan) [1854525] - [powerpc] powerpc64: Break asm/percpu.h vs spinlock_types.h dependency (Greg Kurz) [1882796] - [powerpc] watchpoint: Rename current DAWR macros (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Make struct kernel_param_ops definition const (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: simplify kvm_cma_reserve() (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s: Fix symbol undeclared warnings (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s: Remove redundant initialization of variable ret (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: xive: Convert to DEFINE_SHOW_ATTRIBUTE (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Set LPCR[HDICE] before writing HDEC (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Do not allocate HPT for a nested guest (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Don't return -ENOTSUPP to userspace in ioctls (Greg Kurz) [1882796] - [powerpc] 64s: handle ISA v3.1 local copy-paste context switches (Greg Kurz) [1882796] - [powerpc] 64s: Move HMI IRQ stat from percpu variable to paca (Greg Kurz) [1882796] - [powerpc] kvm/cma: Improve kernel log during boot (Greg Kurz) [1882796] - [powerpc] kvm: Use correct CONFIG symbol in comment (Greg Kurz) [1882796] - [powerpc] watchpoint: Rename current H_SET_MODE DAWR macro (Greg Kurz) [1882796] - [tools] kvm: ppc: Fix typo on H_DISABLE_AND_GET hcall (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Clean up redundant kvm_run parameters in assembly (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Save/restore new PMU registers (Greg Kurz) [1882796] - [powerpc] perf: Add support for ISA3.1 PMU SPRs (Greg Kurz) [1882796] - [powerpc] perf: Update Power PMU cache_events to u64 type (Greg Kurz) [1882796] - [powerpc] perf: Update cpu_hw_event to use `struct` for storing MMCR registers (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Cleanup updates for kvm vcpu MMCR (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Protect kvm_vcpu_read_guest with srcu locks (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Increase KVMPPC_NR_LPIDS on POWER8 and POWER9 (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3shv: Enable support for ISA v3.1 guests (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s pr: Remove uninitialized_var() usage (Greg Kurz) [1882796] - [powerpc] kvm/book3s64: Fix kernel crash with nested kvm & DEBUG_VIRTUAL (Greg Kurz) [1882796] - [powerpc] book3s64/kvm: Fix secondary page table walk warning during migration (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s: Fix some RCU-list locks (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Ignore kmemleak false positives (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Clean up redundant 'kvm_run' parameters (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Remove redundant kvm_run from vcpu_arch (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Remove redundant NULL check (Greg Kurz) [1882796] - [powerpc] Fix compile issue with force DAWR (Greg Kurz) [1882796] - [powerpc] silence a -Wcast-function-type warning in dawr_write_file_bool (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Fix r3 corruption in h_set_dabr() (Greg Kurz) [1882796] - [powerpc] Add force enable of DAWR on P9 option (Greg Kurz) [1882796] - [documentation] powerpc: Document issues with the DAWR on POWER9 (Greg Kurz) [1882796] - [powerpc] Replace _ALIGN_UP() by ALIGN() (Greg Kurz) [1882796] - [powerpc] Replace _ALIGN_DOWN() by ALIGN_DOWN() (Greg Kurz) [1882796] - [netdrv] tg3: Fix soft lockup when tg3_reset_task() fails (Jonathan Toppins) [1899595] - [tools] tools/power turbostat: update version number (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: harden against cpu hotplug (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: adjust for temperature offset (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Build with _FILE_OFFSET_BITS=64 (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Support AMD Family 19h (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Remove empty columns for Jacobsville (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Add a new GFXAMHz column that exposes gt_act_freq_mhz (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Skip pc8, pc9, pc10 columns, if they are disabled (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix output formatting for ACPI CST enumeration (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Replace HTTP links with HTTPS ones: TURBOSTAT UTILITY (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Enable accumulate RAPL display (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Introduce functions to accumulate RAPL consumption (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Make the energy variable to be 64 bit (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Always print idle in the system configuration header (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Print /dev/cpu_dma_latency (Prarit Bhargava) [1857136] - [tools] turbostat/.gitignore: add SPDX License Identifier (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: update version (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Print cpuidle information (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix 32-bit capabilities warning (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix missing SYS_LPI counter on some Chromebooks (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix gcc build warnings (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Support Elkhart Lake (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Support Jasper Lake (Prarit Bhargava) [1857136] - [scsi] scsi: core: Return BLK_STS_AGAIN for ALUA transitioning (Ewan Milne) [1867264] - [scsi] scsi: scsi_dh_alua: Set 'transitioning' state on Unit Attention (Ewan Milne) [1867264] - [scsi] scsi: scsi_dh_alua: Return BLK_STS_AGAIN for ALUA transitioning state (Ewan Milne) [1867264] - [block] scsi: block: Return status code in blk_mq_end_request() (Ewan Milne) [1867264] - [scsi] scsi: scsi_dh_alua: Avoid crash during alua_bus_detach() (Ewan Milne) [1877156] - [fs] gfs2: check for live vs. read-only file system in gfs2_fitrim (Abhijith Das) [1335139] - [fs] gfs2: don't initialize statfs_change inodes in spectator mode (Abhijith Das) [1335139] - [fs] gfs2: init_journal's undo directive should also undo the statfs inodes (Abhijith Das) [1335139] - [fs] gfs2: Recover statfs info in journal head (Abhijith Das) [1335139] - [fs] gfs2: lookup local statfs inodes prior to journal recovery (Abhijith Das) [1335139] - [fs] gfs2: Add fields for statfs info in struct gfs2_log_header_host (Abhijith Das) [1335139] - [block] nbd: don't update block size after device is started (Ming Lei) [1891363] - [platform] platform/x86: thinkpad_acpi: lap or desk mode interface (David Arcari) [1889642] - [infiniband] IB/mlx4: Convert rej_tmout radix-tree to XArray (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Adjust delayed work when a dup is observed (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Add support for REJ due to timeout (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Fix starvation in paravirt mux/demux (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Separate tunnel and wire bufs parameters (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Add support for MRA (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Add and improve logging (Alaa Hleihel) [1858564] - [netdrv] net: ethernet: mlx4: Avoid assigning a value to ring_cons but not used it anymore in mlx4_en_xmit() (Alaa Hleihel) [1858564] - [netdrv] net: ethernet: mlx4: Fix memory allocation in mlx4_buddy_init() (Alaa Hleihel) [1858564] - [infiniband] treewide: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858564] - [netdrv] net/mlx4: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858564] - [netdrv] mlx4: convert to new udp_tunnel_nic infra (Alaa Hleihel) [1858564] - [netdrv] mlx4: Mark PM functions as __maybe_unused (Alaa Hleihel) [1858564] - [netdrv] mlx4: use generic power management (Alaa Hleihel) [1858564] - [netdrv] mlx4: disable device on shutdown (Alaa Hleihel) [1858564 1858563] - [include] IB/mlx4: Replace zero-length array with flexible-array (Alaa Hleihel) [1858564 1858563] - [netdrv] net: mlx4: remove unneeded variable "err" in mlx4_en_ethtool_add_mac_rule() (Alaa Hleihel) [1858564 1858563] - [netdrv] net: mlx4: remove unneeded variable "err" in mlx4_en_get_rxfh() (Alaa Hleihel) [1858564 1858563] - [netdrv] net/mlx4_en: use napi_complete_done() in TX completion (Alaa Hleihel) [1858564 1858563] - [netdrv] net/mlx4_en: avoid indirect call in TX completion (Alaa Hleihel) [1858564 1858562] - [infiniband] RDMA/mlx4: Delete duplicated offsetofend implementation (Alaa Hleihel) [1858564 1858562] - [netdrv] net: mlx4: reject unsupported coalescing params (Alaa Hleihel) [1858564 1858562] - [hwmon] hwmon: (amd_energy) match for supported models (David Arcari) [1860387] - [hwmon] hwmon: (amd_energy) Missing platform_driver_unregister() on error in amd_energy_init() (David Arcari) [1860387] - [hwmon] hwmon: Add amd_energy driver to report energy counters (David Arcari) [1860387] - [include] include/asm-generic/topology.h: guard cpumask_of_node() macro argument (David Arcari) [1860387]- [x86] x86/dumpstack: Fix misleading instruction pointer error message (Kenneth Yin) [1903506] - [powerpc] powerpc/powernv/opal-dump : Use IRQ_HANDLED instead of numbers in interrupt handler (Diego Domingos) [1891822] - [powerpc] powerpc/powernv/dump: Handle multiple writes to ack attribute (Diego Domingos) [1891822] - [powerpc] powerpc/powernv/dump: Fix race while processing OPAL dump (Diego Domingos) [1891822] - [powerpc] powerpc/opal_elog: Handle multiple writes to ack attribute (Diego Domingos) [1891822] - [powerpc] powerpc/powernv/elog: Fix race while processing OPAL error log event (Diego Domingos) [1891822] - [hid] HID: logitech-dj: Fix an error in mse_bluetooth_descriptor (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: Fix Dinovo Mini when paired with a MX5x00 receiver (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: Handle quad/bluetooth keyboards with a builtin trackpad (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Add PID for MX Anywhere 2 (Benjamin Tissoires) [1885560] - [hid] HID: wacom: Avoid entering wacom_wac_pen_report for pad / battery (Benjamin Tissoires) [1885560] - [hid] HID: ite: Add USB id match for Acer One S1003 keyboard dock (Benjamin Tissoires) [1885560] - [hid] HID: multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttons (Benjamin Tissoires) [1885560] - [hid] HID: hid-input: fix stylus battery reporting (Benjamin Tissoires) [1885560] - [hid] HID: roccat: add bounds checking in kone_sysfs_write_settings() (Benjamin Tissoires) [1885560] - [hid] HID: core: Sanitize event code and type when mapping input (Benjamin Tissoires) [1885560] - [hid] HID: core: Correctly handle ReportSize being zero (Benjamin Tissoires) [1885560] - [hid] HID: elan: Fix memleak in elan_input_configured (Benjamin Tissoires) [1885560] - [hid] HID: microsoft: Add rumble support for the 8bitdo SN30 Pro+ controller (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for all Saitek X52 devices (Benjamin Tissoires) [1885560] - [hid] Revert "HID: usbhid: do not sleep when opening device" (Benjamin Tissoires) [1885560] - [hid] HID: hiddev: Fix slab-out-of-bounds write in hiddev_ioctl_usage() (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Always poll three more Lenovo PixArt mice (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Always sleep 60ms after I2C_HID_PWR_ON commands (Benjamin Tissoires) [1885560] - [hid] HID: macally: Constify macally_id_table (Benjamin Tissoires) [1885560] - [hid] HID: cougar: Constify cougar_id_table (Benjamin Tissoires) [1885560] - [hid] HID: quirks: add NOGET quirk for Logitech GROUP (Benjamin Tissoires) [1885560] - [hid] HID: Replace HTTP links with HTTPS ones (Benjamin Tissoires) [1885560] - [hid] HID: udraw-ps3: Replace HTTP links with HTTPS ones (Benjamin Tissoires) [1885560] - [hid] HID: input: Fix devices that return multiple bytes in battery report (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Fix spurious F23 key press report during resume from suspend (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Add ThinkPad 10 Ultrabook Keyboard fn_lock support (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Add ThinkPad 10 Ultrabook Keyboard support (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Rename fn_lock sysfs attr handlers to make them generic (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Factor out generic parts of the LED code (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Merge tpkbd and cptkbd data structures (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: avoid repeated "multiplier = " log messages (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Use HIDPP_RECEIVER_INDEX instead of 0xff (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: Replace PCI_DEV_FLAGS_NO_D3 with pci_save_state (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Ignore Simply Automated UPB PIM (Benjamin Tissoires) [1885560] - [hid] HID: apple: Disable Fn-key key-re-mapping on clone keyboards (Benjamin Tissoires) [1885560] - [hid] HID: Wiimote: Treat the d-pad as an analogue stick (Benjamin Tissoires) [1885560] - [hid] HID: steam: fixes race in handling device list (Benjamin Tissoires) [1885560] - [hid] HID: magicmouse: do not set up autorepeat (Benjamin Tissoires) [1885560] - [hid] HID: alps: support devices with report id 2 (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Always poll Obins Anne Pro 2 keyboard (Benjamin Tissoires) [1885560] - [hid] HID: input: do not run GET_REPORT unless there's a Resolution Multiplier (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: add Mediacom FlexBook edge13 to descriptor override (Benjamin Tissoires) [1885560] - [hid] HID: usbhid: remove redundant assignment to variable retval (Benjamin Tissoires) [1885560] - [hid] HID: usbhid: do not sleep when opening device (Benjamin Tissoires) [1885560] - [hid] HID: multitouch: Remove MT_CLS_WIN_8_DUAL (Benjamin Tissoires) [1885560] - [hid] HID: sony: Fix for broken buttons on DS3 USB dongles (Benjamin Tissoires) [1885560] - [hid] HID: Add quirks for Trust Panora Graphic Tablet (Benjamin Tissoires) [1885560] - [hid] HID: apple: Swap the Fn and Left Control keys on Apple keyboards (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: add Schneider SCL142ALM to descriptor override (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: avoid bogus uninitialized-variable warning (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Add HID_QUIRK_NO_INIT_REPORTS quirk for Dell K12A keyboard-dock (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: reset Synaptics SYNA2393 on resume (Benjamin Tissoires) [1885560] - [hid] HID: usbhid: Fix race between usbhid_close() and usbhid_stop() (Benjamin Tissoires) [1885560] - [hid] HID: alps: ALPS_1657 is too specific; use U1_UNICORN_LEGACY instead (Benjamin Tissoires) [1885560] - [hid] HID: alps: Add AUI1657 device ID (Benjamin Tissoires) [1885560] - [hid] HID: fix typo in Kconfig (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Add support for Logitech G11 extra keys (Benjamin Tissoires) [1885560] - [hid] HID: multitouch: add eGalaxTouch P80H84 support (Benjamin Tissoires) [1885560] - [hid] HID: logitech: drop outdated references to unifying receivers (Benjamin Tissoires) [1885560] - [hid] HID: rmi: Simplify an error handling path in 'rmi_hid_read_block()' (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: hbm.h: Replace zero-length array with flexible-array member (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: ishtp-dev.h: Replace zero-length array with flexible-array member (Benjamin Tissoires) [1885560] - [hid] HID: Add driver fixing Glorious PC Gaming Race mouse report descriptor (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Do not fail the probe when we fail to disable F# emulation (Benjamin Tissoires) [1885560] - [hid] HID: fix Kconfig word ordering (Benjamin Tissoires) [1885560] - [hid] HID: add ALWAYS_POLL quirk to lenovo pixart mouse (Benjamin Tissoires) [1885560] - [hid] HID: google: add moonball USB id (Benjamin Tissoires) [1885560] - [hid] HID: appleir: Use devm_kzalloc() instead of kzalloc() (Benjamin Tissoires) [1885560] - [hid] HID: appleir: Remove unnecessary goto label (Benjamin Tissoires) [1885560] - [hid] HID: hid-sensor-custom: Use scnprintf() for avoiding potential buffer overflow (Benjamin Tissoires) [1885560] - [hid] HID: hid-picolcd_fb: Use scnprintf() for avoiding potential buffer overflow (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: add support for the static device in the Powerplay mat/receiver (Benjamin Tissoires) [1885560] - [hid] HID: hid-bigbenff: fix race condition for scheduled work during removal (Benjamin Tissoires) [1885560] - [hid] HID: hid-bigbenff: call hid_hw_stop() in case of error (Benjamin Tissoires) [1885560] - [hid] HID: hid-bigbenff: fix general protection fault caused by double kfree (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: add Trekstor Surfbook E11B to descriptor override (Benjamin Tissoires) [1885560] - [hid] HID: alps: Fix an error handling path in 'alps_input_configured()' (Benjamin Tissoires) [1885560] - [hid] HID: hiddev: Fix race in in hiddev_disconnect() (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: add debug msg when exporting a HID++ report descriptors (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Remove ITE 8595 entry from hid_have_special_driver (Benjamin Tissoires) [1885560] - [include] HID: core: increase HID report buffer size to 8KiB (Benjamin Tissoires) [1885560] - [hid] HID: core: fix off-by-one memset in hid_report_raw_event() (Benjamin Tissoires) [1885560] - [hid] HID: apple: Add support for recent firmware on Magic Keyboards (Benjamin Tissoires) [1885560] - [hid] HID: ite: Only bind to keyboard USB interface on Acer SW5-012 keyboard dock (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: BatteryVoltage: only read chargeStatus if extPower is active (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: avoid duplicate error handling code in 'hidpp_probe()' (Benjamin Tissoires) [1885560] - [hid] HID: hidraw, uhid: Always report EPOLLOUT (Benjamin Tissoires) [1885560] - [hid] HID: steam: Fix input device disappearing (Benjamin Tissoires) [1885560] - [hid] hid-logitech-hidpp: read battery voltage from newer devices (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Add MX Master 3 Mouse (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Support WirelessDeviceStatus connect events (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Support translations from short to long reports (Benjamin Tissoires) [1885560] - [hid] HID: hiddev: fix mess in hiddev_open() (Benjamin Tissoires) [1885560] - [hid] HID: hid-input: clear unmapped usages (Benjamin Tissoires) [1885560] - [hid] HID: Add quirk for incorrect input length on Lenovo Y720 (Benjamin Tissoires) [1885560] - [hid] HID: ite: Add USB id match for Acer SW5-012 keyboard dock (Benjamin Tissoires) [1885560] - [hid] HID: Add quirk for Xin-Mo Dual Controller (Benjamin Tissoires) [1885560] - [hid] HID: hidraw: add support uniq ioctl (Benjamin Tissoires) [1885560] - [hid] HID: Fix slab-out-of-bounds read in hid_field_extract (Benjamin Tissoires) [1885560] - [hid] HID: picoLCD: constify fb ops (Benjamin Tissoires) [1885560] - [hid] HID: uhid: Fix returning EPOLLOUT from uhid_char_poll (Benjamin Tissoires) [1885560] - [hid] HID: hidraw: Fix returning EPOLLOUT from hidraw_poll (Benjamin Tissoires) [1885560] - [hid] HID: rmi: Check that the RMI_STARTED bit is set before unregistering the RMI transport device (Benjamin Tissoires) [1885560] - [hid] HID: quirks: remove hid-led devices from hid_have_special_driver (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Reset ALPS touchpads on resume (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: fix no irq after reset on raydium 3118 (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Silence intermittent get_battery_capacity errors (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: remove orphaned member sleep_delay (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Add quirk for HP MSU1465 PIXART OEM mouse (Benjamin Tissoires) [1885560] - [hid] HID: core: check whether Usage Page item is after Usage ID items (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Send power-on command after reset (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Remove runtime power management (Benjamin Tissoires) [1885560] - [hid] HID: google: Detect base folded usage instead of hard-coding whiskers (Benjamin Tissoires) [1885560] - [hid] HID: google: add magnemite/masterball USB ids (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Add depends on LEDS_CLASS to Logitech Kconfig entry (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for the G510's M1-M3 and MR LEDs (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for controlling the G510's RGB backlight (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for the G510 keyboards' gaming keys (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for the M1-M3 and MR LEDs (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add keyboard and LCD backlight control (Benjamin Tissoires) [1885560] - [hid] HID: Add driver for Logitech gaming keyboards (G15, G15 v2) (Benjamin Tissoires) [1885560] - [hid] HID: hidraw: replace printk() with corresponding pr_xx() variant (Benjamin Tissoires) [1885560] - [hid] HID: prodikeys: make array keys static const, makes object smaller (Benjamin Tissoires) [1885560] - [hid] HID: google: whiskers: signal tablet mode on connect (Benjamin Tissoires) [1885560] - [hid] HID: google: whiskers: signal tablet mode switch on disconnect (Benjamin Tissoires) [1885560] - [hid] HID: google: whiskers: more robust tablet mode detection (Benjamin Tissoires) [1885560] - [hid] HID: core: fix dmesg flooding if report field larger than 32bit (Benjamin Tissoires) [1885560] - [include] HID: core: Add printk_once variants to hid_warn() etc (Benjamin Tissoires) [1885560] - [include] HID: core: reformat and reduce hid_printk macros (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: modify quirks for weida's devices (Benjamin Tissoires) [1885560] - [hid] hid-logitech-dj: add the new Lightspeed receiver (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: add support of the G700(s) receiver (Benjamin Tissoires) [1885560] - [hid] HID: do not call hid_set_drvdata(hdev, NULL) in drivers (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: extend consumer usages range (Benjamin Tissoires) [1885560] - [hid] hiddev: Return EPOLLOUT from hiddev_poll (Benjamin Tissoires) [1885560] - [hid] hidraw: Return EPOLLOUT from hidraw_poll (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add nopnp quirk for Acer Aspire 5 A515 (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add Entroware Proteus EL07R4 to nomux and reset lists (Benjamin Tissoires) [1885560] - [input] input: i8042 - Remove special Cayman handling (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - only increment wakeup count on touch (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add ic type 0x15 (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add support for high resolution reports (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - do not constantly re-query pattern ID (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add firmware update info for ICs 0x11, 0x13, 0x14 (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - handle firmware updated on newer ICs (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add support for different firmware page sizes (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - fix detecting IAP version on older controllers (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - handle devices with patterns above 1 (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - make fetching IC type of older controllers more robust (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - handle firmware not implementing "get pattern" command (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add Lenovo XiaoXin Air 12 to i8042 nomux list (Benjamin Tissoires) [1885560] - [input] Input: elantech - remove redundant assignments to variable error (Benjamin Tissoires) [1885560] - [input] Input: synaptics - enable InterTouch for ThinkPad X1E 1st gen (Benjamin Tissoires) [1885560] - [uapi] Input: add `SW_MACHINE_COVER` (Benjamin Tissoires) [1885560] - [input] input: i8042 - Remove special PowerPC handling (Benjamin Tissoires) [1885560] - [input] Input: synaptics - add a second working PNP_ID for Lenovo T470s (Benjamin Tissoires) [1885560] - [input] Input: introduce input_mt_report_slot_inactive() (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add ThinkPad S230u to i8042 reset list (Benjamin Tissoires) [1885560] - [input] Revert "Input: i8042 - add ThinkPad S230u to i8042 nomux list" (Benjamin Tissoires) [1885560] - [input] Input: i8042 - attach fwnode to serio i8042 kbd device (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add ThinkPad S230u to i8042 nomux list (Benjamin Tissoires) [1885560] - [uapi] Input: update SPDX tag for input-event-codes.h (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add Acer Aspire 5738z to nomux list (Benjamin Tissoires) [1885560] - [uapi] Input: move the new KEY_SELECTIVE_SCREENSHOT keycode (Benjamin Tissoires) [1885560] - [input] Input: synaptics - enable RMI on HP Envy 13-ad105ng (Benjamin Tissoires) [1885560] - [uapi] Input: allocate keycode for "Selective Screenshot" key (Benjamin Tissoires) [1885560] - [input] Input: synaptics - remove the LEN0049 dmi id from topbuttonpad list (Benjamin Tissoires) [1885560] - [input] Input: synaptics - enable SMBus on ThinkPad L470 (Benjamin Tissoires) [1885560] - [input] Input: synaptics - switch T470s to RMI4 by default (Benjamin Tissoires) [1885560] - [input] Input: input_event - fix struct padding on sparc64 (Benjamin Tissoires) [1885560] - [uapi] Input: add privacy screen toggle keycode (Benjamin Tissoires) [1885560] - [input] Input: synaptics - switch another X1 Carbon 6 to RMI/SMbus (Benjamin Tissoires) [1885560] - [uapi] Input: Add event-codes for macro keys found on various keyboards (Benjamin Tissoires) [1885560] - [input] Input: i8042 - enable wakeup on a stable struct device (Benjamin Tissoires) [1885560] - [input] Input: psmouse - drop all unneeded functions from mouse headers (Benjamin Tissoires) [1885560] - [input] Input: remove dev_err() usage after platform_get_irq() (Benjamin Tissoires) [1885560] - [input] Input: synaptics - fix a typo (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - switch to using devm_add_action_or_reset() (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - switch to using devm_device_add_groups() (Benjamin Tissoires) [1885560] - [power] power: supply: core: Add Standard, Adaptive, and Custom charge types (Benjamin Tissoires) [1885560] - [scsi] scsi: mpt3sas: Fix timeouts observed while reenabling IRQ (Tomas Henzl) [1880114] - [fs] ext4: handle option set by mount flags correctly (Pavel Reichl) [1848084] - [fs] xfs: preserve inode versioning across remounts (Pavel Reichl) [1848084] - [kernel] kheaders: explain why include/config/autoconf.h is excluded from md5sum (Jiri Olsa) [1899585] - [kernel] kheaders: remove the last bashism to allow sh to run it (Jiri Olsa) [1899585] - [kernel] kheaders: optimize header copy for in-tree builds (Jiri Olsa) [1899585] - [kernel] kheaders: optimize md5sum calculation for in-tree builds (Jiri Olsa) [1899585] - [kernel] kheaders: remove unneeded 'cat' command piped to 'head' / 'tail' (Jiri Olsa) [1899585] - [kernel] kheaders: substituting --sort in archive creation (Jiri Olsa) [1899585] - [kernel] kheaders: make headers archive reproducible (Jiri Olsa) [1899585] - [kernel] kheaders: include only headers into kheaders_data.tar.xz (Jiri Olsa) [1899585] - [kernel] kheaders: remove meaningless -R option of 'ls' (Jiri Olsa) [1899585] - [kernel] kheaders: Do not regenerate archive if config is not changed (Jiri Olsa) [1899585] - [kernel] kheaders: Move from proc to sysfs (Jiri Olsa) [1899585] - [kernel] kernel/Makefile: don't assume that kernel/gen_ikh_data.sh is executable (Jiri Olsa) [1899585] - [init] init/config: Do not select BUILD_BIN2C for IKCONFIG (Jiri Olsa) [1899585] - [kernel] Provide in-kernel headers to make extending kernel easier (Jiri Olsa) [1899585] - [tty] pty: do tty_flip_buffer_push without port->lock in pty_write (Artem Savkov) [1787975] - [virtio] virtio_balloon: fix sparse warning (Nico Pache) [1839055] - [virtio] virtio_balloon: fix up endian-ness for free cmd id (Nico Pache) [1839055] - [virtio] virtio-balloon: Document byte ordering of poison_val (Nico Pache) [1839055] - [virtio] virtio-mmio: Reject invalid IRQ 0 command line argument (Nico Pache) [1839055] - [virtio] virtio-balloon: Disable free page reporting if page poison reporting is not enabled (Nico Pache) [1839055] - [virtio] virtio-mmio: Delete an error message in vm_find_vqs() (Nico Pache) [1839055] - [virtio] virtio: add VIRTIO_RING_NO_LEGACY (Nico Pache) [1839055] - [virtio] virtio-balloon: Avoid using the word 'report' when referring to free page hinting (Nico Pache) [1839055] - [virtio] virtio-balloon: make virtballoon_free_page_report() static (Nico Pache) [1839055] - [virtio] virtio-balloon: switch back to OOM handler for VIRTIO_BALLOON_F_DEFLATE_ON_OOM (Nico Pache) [1839055] - [documentation] mm/page_reporting: add free page reporting documentation (Nico Pache) [1839055] - [mm] mm/page_reporting: add budget limit on how many pages can be reported per pass (Nico Pache) [1839055] - [mm] mm/page_reporting: rotate reported pages to the tail of the list (Nico Pache) [1839055] - [virtio] virtio-balloon: add support for providing free page reports to host (Nico Pache) [1839055] - [virtio] virtio-balloon: pull page poisoning config out of free page hinting (Nico Pache) [1839055] - [mm] mm: introduce Reported pages (Nico Pache) [1839055] - [mm] mm: add function __putback_isolated_page (Nico Pache) [1839055] - [mm] mm: use zone and order instead of free area in free_list manipulators (Nico Pache) [1839055] - [mm] mm: adjust shuffle code to allow for future coalescing (Nico Pache) [1839055] - [virtio] virtio_balloon: Adjust label in virtballoon_probe (Nico Pache) [1839055] - [virtio] virtio_ring: Fix mem leak with vring_new_virtqueue() (Nico Pache) [1839055] - [virtio] virtio_balloon: Fix memory leaks on errors in virtballoon_probe() (Nico Pache) [1839055] - [virtio] virtio-balloon: Fix memory leak when unloading while hinting is in progress (Nico Pache) [1839055] - [virtio] virtio_balloon: prevent pfn array overflow (Nico Pache) [1839055] - [virtio] virtio-pci: check name when counting MSI-X vectors (Nico Pache) [1839055] - [virtio] virtio-balloon: initialize all vq callbacks (Nico Pache) [1839055] - [virtio] virtio-mmio: convert to devm_platform_ioremap_resource (Nico Pache) [1839055] - [virtio] virtio_balloon: divide/multiply instead of shifts (Nico Pache) [1839055] - [virtio] virtio_balloon: name cleanups (Nico Pache) [1839055] - [virtio] virtio_balloon: fix shrinker count (Nico Pache) [1839055] - [virtio] virtio_balloon: fix shrinker scan number of pages (Nico Pache) [1839055] - [virtio] virtio-mmio: add error check for platform_get_irq (Nico Pache) [1839055] - [virtio] virtio: Fix indentation of VIRTIO_MMIO (Nico Pache) [1839055] - [virtio] virtio/virtio_ring: do some comment fixes (Nico Pache) [1839055] - [virtio] virtio_pci: fix a NULL pointer reference in vp_del_vqs (Nico Pache) [1839055] - [virtio] virtio: hint if callbacks surprisingly might sleep (Nico Pache) [1839055] - [virtio] virtio_balloon: remove the unnecessary 0-initialization (Nico Pache) [1839055] - [virtio] virtio-balloon: improve update_balloon_size_func (Nico Pache) [1839055] - [virtio] virtio-balloon: tweak config_changed implementation (Nico Pache) [1839055] - [misc] virtio: don't allocate vqs when names= NULL (Nico Pache) [1839055] - [virtio] virtio_pci: use queue idx instead of array idx to set up the vq (Nico Pache) [1839055] - [virtio] virtio: remove deprecated VIRTIO_PCI_CONFIG() (Nico Pache) [1839055] - [mm] mm/page_poison: expose page_poisoning_enabled to kernel modules (Nico Pache) [1839055] - [virtio] virtio-balloon: VIRTIO_BALLOON_F_PAGE_POISON (Nico Pache) [1839055] - [virtio] virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_HINT (Nico Pache) [1839055] - [virtio] virtio: pci-legacy: Validate queue pfn (Nico Pache) [1839055] - [virtio] virtio: mmio-v1: Validate queue PFN (Nico Pache) [1839055] - [virtio] virtio_balloon: replace oom notifier with shrinker (Nico Pache) [1839055] - [virtio] virtio-balloon: kzalloc the vb struct (Nico Pache) [1839055] - [virtio] virtio-balloon: remove BUG() in init_vqs (Nico Pache) [1839055] - [mm] mm, debug_pagealloc: use a page type instead of page_ext flag (Nico Pache) [1839055] - [mm] mm, page_alloc: more extensive free page checking with debug_pagealloc (Nico Pache) [1839055] - [mm] mm, debug_pagelloc: use static keys to enable debugging (Nico Pache) [1839055] - [include] include/linux/page_ext.h: drop definition of unused PAGE_EXT_DEBUG_POISON (Nico Pache) [1839055] - [tty] vt: vt_ioctl: fix use-after-free in vt_in_use() (Vladis Dronov) [1875585] - [tty] vt: vt_ioctl: fix VT_DISALLOCATE freeing in-use virtual console (Vladis Dronov) [1875585] - [tty] vt: ioctl, switch VT_IS_IN_USE and VT_BUSY to inlines (Vladis Dronov) [1875585] - [tty] vt: selection, introduce vc_is_sel (Vladis Dronov) [1875585] - [fs] gfs2: Don't sleep during glock hash walk (Andreas Grunbacher) [1871173]- [powerpc] powerpc/64s/hash: Fix hash_preload running with interrupts enabled (Diego Domingos) [1884152] - [powerpc] powerpc/pseries: Avoid using addr_to_pfn in real mode (Diego Domingos) [1822675] - [powerpc] powerpc/pseries: Handle UE event for memcpy_mcsafe (Diego Domingos) [1822675] - [powerpc] powerpc/pseries: Fix MCE handling on pseries (Diego Domingos) [1822675] - [powerpc] powerpc/64s/pseries: machine check convert to use common event code (Diego Domingos) [1822675] - [powerpc] powerpc/powernv/mce: Print additional information about MCE error (Diego Domingos) [1822675] - [powerpc] powerpc/powernv/mce: Print correct severity for MCE error (Diego Domingos) [1822675] - [powerpc] powerpc/64s: Report SLB multi-hit rather than parity error (Diego Domingos) [1822675] - [powerpc] powerpc/powernv/mce: Reduce MCE console logs to lesser lines (Diego Domingos) [1822675] - [powerpc] powerpc/pseries/mce: Improve array initialization (Diego Domingos) [1822675] - [powerpc] powerpc/pseries/mce: Fix misleading print for TLB mutlihit (Diego Domingos) [1822675] - [netdrv] i40e: fix crash when Rx descriptor count is changed (Jiri Benc) [1882708] - [netdrv] virtio_net: Fix out of bounds access of sq (Jiri Benc) [1882708] - [tools] tools/bpftool: Fix attaching flow dissector (Jiri Benc) [1882708] - [docs] bpf: Use valid and new links in index.rst (Jiri Benc) [1882708] - [netdrv] netdevsim: fix unbalaced locking in nsim_create() (Jiri Benc) [1882708] - [net] bpfilter: Allow to build bpfilter_umh as a module without static library (Jiri Benc) [1882708] - [net] bpf, netns: Fix use-after-free in pernet pre_exit callback (Jiri Benc) [1882708] - [net] xsk: Use dma_need_sync instead of reimplenting it (Jiri Benc) [1882708] - [net] xsk: Remove a double pool->dev assignment in xp_dma_map (Jiri Benc) [1882708] - [net] xsk: Replace the cheap_dma flag with a dma_need_sync flag (Jiri Benc) [1882708] - [net] dma-mapping: Add a new dma_need_sync API (Jiri Benc) [1882708] - [tools] selftests: bpf: Pass program to bpf_prog_detach in flow_dissector (Jiri Benc) [1882708] - [tools] selftests: bpf: Pass program and target_fd in flow_dissector_reattach (Jiri Benc) [1882708] - [net] bpf: flow_dissector: Check value of unused flags to BPF_PROG_DETACH (Jiri Benc) [1882708] - [net] bpf: flow_dissector: Check value of unused flags to BPF_PROG_ATTACH (Jiri Benc) [1882708] - [tools] libbpf: Adjust SEC short cut for expected attach type BPF_XDP_DEVMAP (Jiri Benc) [1882708] - [tools] selftests/bpf: Test updating flow_dissector link with same program (Jiri Benc) [1882708] - [net] bpf, netns: Keep a list of attached bpf_link's (Jiri Benc) [1882708] - [net] bpf, netns: Keep attached programs in bpf_prog_array (Jiri Benc) [1882708] - [net] flow_dissector: Pull BPF program assignment up to bpf-netns (Jiri Benc) [1882708] - [tools] libbpf: Fix CO-RE relocs against .text section (Jiri Benc) [1882708] - [tools] selftests/bpf: Move newer bpf_iter_* type redefining to a new header file (Jiri Benc) [1882708] - [net] xdp: Handle frame_sz in xdp_convert_zc_to_xdp_frame() (Jiri Benc) [1882708] - [net] xdp: Fix xsk_generic_xmit errno (Jiri Benc) [1882708] - [tools] bpf: Selftests and tools use struct bpf_devmap_val from uapi (Jiri Benc) [1882708] - [net] xdp: use shift instead of 64 bit division (Jiri Benc) [1882708] - [net] bpf: Fix unused-var without NETDEVICES (Jiri Benc) [1882708] - [net] seg6: fix seg6_validate_srh() to avoid slab-out-of-bounds (Jiri Benc) [1882708] - [net] seg6: fix SRH processing to comply with RFC8754 (Jiri Benc) [1882708] - [tools] selftests/bpf: Extend test_flow_dissector to cover link creation (Jiri Benc) [1882708] - [tools] selftests/bpf: Convert test_flow_dissector to use BPF skeleton (Jiri Benc) [1882708] - [tools] selftests/bpf, flow_dissector: Close TAP device FD after the test (Jiri Benc) [1882708] - [tools] selftests/bpf: Add tests for attaching bpf_link to netns (Jiri Benc) [1882708] - [tools] bpftool: Support link show for netns-attached links (Jiri Benc) [1882708] - [tools] bpftool: Extract helpers for showing link attach type (Jiri Benc) [1882708] - [tools] libbpf: Add support for bpf_link-based netns attachment (Jiri Benc) [1882708] - [net] bpf: Add link-based BPF program attachment to network namespace (Jiri Benc) [1882708] - [net] flow_dissector: Move out netns_bpf prog callbacks (Jiri Benc) [1882708] - [net] Introduce netns_bpf for BPF programs attached to netns (Jiri Benc) [1882708] - [net] flow_dissector: Pull locking up from prog attach callback (Jiri Benc) [1882708] - [net] bpf: Allow SO_BINDTODEVICE opt in bpf_setsockopt (Jiri Benc) [1882708] - [net] Make locking in sock_bindtoindex optional (Jiri Benc) [1882708] - [net] add sock_bindtoindex (Jiri Benc) [1882708] - [tools] selftest: Add tests for XDP programs in devmap entries (Jiri Benc) [1882708] - [net] xdp: Add xdp_txq_info to xdp_buff (Jiri Benc) [1882708] - [net] xdp: Introduce xdp_convert_frame_to_buff utility routine (Jiri Benc) [1882708] - [net] maintainers: Adjust entry in XDP SOCKETS to actual file name (Jiri Benc) [1882708] - [net] maintainers, xsk: Update AF_XDP section after moves/adds (Jiri Benc) [1882708] - [net] xsk: Explicitly inline functions and move definitions (Jiri Benc) [1882708] - [net] xdp: Simplify xdp_return_{frame, frame_rx_napi, buff} (Jiri Benc) [1882708] - [net] xsk: Remove MEM_TYPE_ZERO_COPY and corresponding code (Jiri Benc) [1882708] - [netdrv] mlx5, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] ixgbe, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] ice, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] i40e, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] i40e: Separate kernel allocated rx_bi rings from AF_XDP rings (Jiri Benc) [1882708] - [netdrv] i40e: Refactor rx_bi accesses (Jiri Benc) [1882708] - [net] xsk: Introduce AF_XDP buffer allocation API (Jiri Benc) [1867206 1882708] - [net] xsk: Move defines only used by AF_XDP internals to xsk.h (Jiri Benc) [1882708] - [net] xsk: Move driver interface to xdp_sock_drv.h (Jiri Benc) [1882708] - [net] xsk: Move xskmap.c to net/xdp/ (Jiri Benc) [1882708] - [net] xsk: Fix xsk_umem_xdp_frame_sz() (Jiri Benc) [1882708] - [tools] selftests/bpf: Convert bpf_iter_test_kern{3, 4}.c to define own bpf_iter_meta (Jiri Benc) [1882708] - [tools] selftest/bpf: Make bpf_iter selftest compilable against old vmlinux.h (Jiri Benc) [1882708] - [net] bpf: Fix too large copy from user in bpf_test_init (Jiri Benc) [1882708] - [tools] selftests/bpf: Xdp_adjust_tail add grow tail tests (Jiri Benc) [1882708] - [tools] selftests/bpf: Adjust BPF selftest for xdp_adjust_tail (Jiri Benc) [1882708] - [net] bpf: Add xdp.frame_sz in bpf_prog_test_run_xdp(). (Jiri Benc) [1882708] - [net] xdp: Clear grow memory in bpf_xdp_adjust_tail() (Jiri Benc) [1882708] - [net] xdp: Allow bpf_xdp_adjust_tail() to grow packet size (Jiri Benc) [1882708] - [netdrv] mlx5: Rx queue setup time determine frame_sz for XDP (Jiri Benc) [1882708] - [netdrv] xdp: For Intel AF_XDP drivers add XDP frame_sz (Jiri Benc) [1882708] - [netdrv] ice: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] i40e: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] ixgbevf: Add XDP frame size to VF driver (Jiri Benc) [1882708] - [netdrv] ixgbe: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] ixgbe: Fix XDP redirect on archs with PAGE_SIZE above 4K (Jiri Benc) [1882708] - [netdrv] virtio_net: Add XDP frame size in two code paths (Jiri Benc) [1882708] - [netdrv] vhost_net: Also populate XDP frame size (Jiri Benc) [1882708] - [netdrv] tun: Add XDP frame size (Jiri Benc) [1882708] - [netdrv] nfp: Add XDP frame size to netronome driver (Jiri Benc) [1882708] - [netdrv] net: thunderx: Add XDP frame size (Jiri Benc) [1882708] - [netdrv] mlx4: Add XDP frame size and adjust max XDP MTU (Jiri Benc) [1882708] - [netdrv] qlogic/qede: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] hv_netvsc: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] veth: Xdp using frame_sz in veth driver (Jiri Benc) [1882708] - [netdrv] veth: Adjust hard_start offset on redirect XDP frames (Jiri Benc) [1882708] - [net] xdp: Cpumap redirect use frame_sz and increase skb_tailroom (Jiri Benc) [1882708] - [net] xdp: Xdp_frame add member frame_sz and handle in convert_to_xdp_frame (Jiri Benc) [1882708] - [net] XDP-generic determining XDP frame size (Jiri Benc) [1882708] - [netdrv] sfc: Add XDP frame size (Jiri Benc) [1882708] - [netdrv] bnxt: Add XDP frame size to driver (Jiri Benc) [1882708] - [net] xdp: Add frame size to xdp_buff (Jiri Benc) [1867209 1882708] - [net] bpfilter: switch to kernel_write (Jiri Benc) [1882708] - [tools] bpf: selftests: Add bpf_iter selftests (Jiri Benc) [1882708] - [tools] bpf: selftests: Add iterator programs for ipv6_route and netlink (Jiri Benc) [1882708] - [net] bpf: Enable bpf_iter targets registering ctx argument types (Jiri Benc) [1882708] - [net] bpf: Change func bpf_iter_unreg_target() signature (Jiri Benc) [1882708] - [net] bpf: Refactor bpf_iter target registration (Jiri Benc) [1882708] - [net] bpf: Add netlink and ipv6_route bpf_iter targets (Jiri Benc) [1882708] - [net] bpfilter: check if $(CC) can link static libc in Kconfig (Jiri Benc) [1882708] - [net] bpfilter: document build requirements for bpfilter_umh (Jiri Benc) [1882708] - [net] xsk: Remove unnecessary member in xdp_umem (Jiri Benc) [1882708] - [net] xsk: Change two variable names for increased clarity (Jiri Benc) [1882708] - [net] bpfilter: match bit size of bpfilter_umh to that of the kernel (Jiri Benc) [1882708] - [docs] networking: convert filter.txt to ReST (Jiri Benc) [1882708] - [net] xsk: Fix typo in xsk_umem_consume_tx and xsk_generic_xmit comments (Jiri Benc) [1882708] - [net] introduce SO_BINDTOIFINDEX sockopt (Jiri Benc) [1882708] - [net] netlink: Use sizeof_field() macro (Jiri Benc) [1882708] - [net] xdp: Add SPDX license identifier - Makefile/Kconfig (Jiri Benc) [1882708] - [net] bpfilter: prefix header search paths with $(srctree)/ (Jiri Benc) [1882708] - [netdrv] virtio_net: Add XDP meta data support (Jiri Benc) [1882708] - [netdrv] virtio_net: Keep vnet header zeroed if XDP is loaded for small buffer (Jiri Benc) [1882708] - [netdrv] virtio-net: keep vnet header zeroed after processing XDP (Jiri Benc) [1882708] - [netdrv] virtio-net: get rid of unnecessary container of rq stats (Jiri Benc) [1882708] - [netdrv] virtio-net: correctly update XDP_TX counters (Jiri Benc) [1882708] - [netdrv] virtio_net: Add kick stats (Jiri Benc) [1882708] - [netdrv] virtio_net: Add XDP related stats (Jiri Benc) [1882708] - [netdrv] virtio_net: Factor out the logic to determine xdp sq (Jiri Benc) [1882708] - [netdrv] virtio_net: Make drop counter per-queue (Jiri Benc) [1882708] - [netdrv] virtio_net: Use temporary storage for accounting rx stats (Jiri Benc) [1882708] - [netdrv] bnx2: mark driver deprecated (Jonathan Toppins) [1878183] - [net] openvswitch: silence suspicious RCU usage warning (Eelco Chaudron) [1895862] - [net] openswitch: reuse the helper variable to improve the code readablity (Eelco Chaudron) [1895862] - [net] openvswitch: remove unused keep_flows (Eelco Chaudron) [1895862] - [net] openvswitch: refactor flow free function (Eelco Chaudron) [1895862] - [net] openvswitch: improve the coding style (Eelco Chaudron) [1895862] - [net] openvswitch: use skb_list_walk_safe helper for gso segments (Eelco Chaudron) [1895862] - [net] openvswitch: do not update max_headroom if new headroom is equal to old headroom (Eelco Chaudron) [1895862] - [net] openvswitch: drop unneeded likely() call around IS_ERR() (Eelco Chaudron) [1895862] - [net] openvswitch: convert to kvmalloc (Eelco Chaudron) [1895862] - [infiniband] RDMA/rxe: Mark Soft-RoCE driver as unsupported (Kamal Heib) [1878207] - [net] netfilter: nf_log: missing vlan offload tag and proto (Florian Westphal) [1889990] - [net] ipvs: clear skb->tstamp in forwarding path (Florian Westphal) [1889990] - [net] netfilter: nft_meta: use socket user_ns to retrieve skuid and skgid (Florian Westphal) [1889990] - [net] netfilter: ctnetlink: add a range check for l3/l4 protonum (Florian Westphal) [1889990] {CVE-2020-25211} - [net] netfilter: nfnetlink: nfnetlink_unicast() reports EAGAIN instead of ENOBUFS (Florian Westphal) [1889990] - [net] netfilter: nf_tables: fix destination register zeroing (Florian Westphal) [1889990] - [net] netfilter: nf_tables: add NFTA_SET_USERDATA if not null (Florian Westphal) [1889990] - [net] netfilter: flowtable: Set offload timeout when adding flow (Florian Westphal) [1889990] - [net] netfilter: conntrack: Move nf_ct_offload_timeout to header file (Florian Westphal) [1889990] - [net] netfilter: nft_set_rbtree: Handle outcomes of tree rotations in overlap detection (Florian Westphal) [1889990] - [net] netfilter: nf_tables: nft_exthdr: the presence return value should be little-endian (Florian Westphal) [1889990] - [net] netfilter: nft_set_pipapo: Drop useless assignment of scratch map index on insert (Florian Westphal) [1889990] - [net] netfilter: arp_tables: init netns pointer in xt_tgdtor_param struct (Florian Westphal) [1889990] - [net] netfilter: arp_tables: init netns pointer in xt_tgchk_param struct (Florian Westphal) [1889990] - [net] ipvs: do not schedule icmp errors from tunnels (Florian Westphal) [1889990] - [powercap] powercap: intel_rapl: add support for Sapphire Rapids (Steve Best) [1837373] - [powercap] powercap/intel_rapl: add support for RocketLake (Steve Best) [1782715] - [char] ipmi: Use fallthrough pseudo-keyword (Tony Camuso) [1877848] - [char] ipmi/watchdog: add missing newlines when printing parameters by sysfs (Tony Camuso) [1877848] - [char] ipmi: remve duplicate code in __ipmi_bmc_register() (Tony Camuso) [1877848] - [documentation] docs: ipmi: Replace HTTP links with HTTPS ones (Tony Camuso) [1877848] - [char] ipmi: ssif: Remove finished TODO comment about SMBus alert (Tony Camuso) [1877848] - [documentation] Doc: driver-api: ipmi: Add description of alerts_broken module param (Tony Camuso) [1877848] - [char] ipmi:ssif: Remove dynamic platform device handing (Tony Camuso) [1877848] - [char] Try to load acpi_ipmi when an SSIF ACPI IPMI interface is added (Tony Camuso) [1877848] - [char] ipmi_si: Load acpi_ipmi when ACPI IPMI interface added (Tony Camuso) [1877848] - [char] ipmi:bt-bmc: Fix error handling and status check (Tony Camuso) [1877848] - [char] ipmi: Replace guid_copy() with import_guid() where it makes sense (Tony Camuso) [1877848] - [char] ipmi: use vzalloc instead of kmalloc for user creation (Tony Camuso) [1877848] - [char] ipmi:bt-bmc: Fix some format issue of the code (Tony Camuso) [1877848] - [char] ipmi:bt-bmc: Avoid unnecessary check (Tony Camuso) [1877848] - [char] docs: fix references for ipmi.rst file (Tony Camuso) [1877848] - [documentation] docs: move IPMI.txt to the driver API book (Tony Camuso) [1877848]- [powerpc] pseries: Fix 64 bit logical memory block panic (Steve Best) [1894922] - [mm] powerpc/book3s64/radix: Make radix_mem_block_size 64bit (Steve Best) [1894922] - [powerpc] powerpc/64s/radix: Fix build failure with RADIX_MMU=n (Steve Best) [1894922] - [x86] kvm: mmu: fix is_tdp_mmu_check when the TDP MMU is not in use (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: svm: Update cr3_lm_rsvd_bits for AMD SEV guests (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: Introduce cr3_lm_rsvd_bits in kvm_vcpu_arch (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: clflushopt should be treated as a no-op by emulation (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: handle MSR_IA32_DEBUGCTLMSR with report_ignored_msrs (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: request masterclock update any time guest uses different msr (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: ensure pv_cpuid.features is initialized when enabling cap (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: reads of restricted pv msrs should also result in #GP (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: use positive error values for msr emulation that causes #GP (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86/mmu: fix counting of rmap entries in pte_list_add (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: bump KVM_MAX_CPUID_ENTRIES (Vitaly Kuznetsov) [1898914 1878097] - [x86] vmxfeatures: rename features for consistency with KVM and manual (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: vmx: Add VMX_FEATURE_USR_WAIT_PAUSE (Vitaly Kuznetsov) [1878097 1898914] - [x86] Expose SERIALIZE for supported cpuid (Vitaly Kuznetsov) [1878097 1898914] - [x86] kvm: x86: Expose fast short REP MOV for supported cpuid (Vitaly Kuznetsov) [1878097 1898914] - [x86] kvm: x86: Expose AVX512 VP2INTERSECT in cpuid for TGL (Vitaly Kuznetsov) [1878097 1898914] - [x86] kvm: Convert to new CPU match macros (Vitaly Kuznetsov) [1878097 1898914] - [documentation] docs: kvm: fix referenced ioctl symbol (Vitaly Kuznetsov) [1878097 1898914] - [documentation] docs: kvm: api.rst: add missing spaces (Vitaly Kuznetsov) [1878097 1898914] - [virt] kvm: use struct_size() and flex_array_size() helpers in kvm_io_bus_unregister_dev() (Vitaly Kuznetsov) [1878097 1898914] - [documentation] documentation: kvm: fix a typo (Vitaly Kuznetsov) [1878097 1898914] - [documentation] documentation: kvm: fix some typos in cpuid.rst (Vitaly Kuznetsov) [1878097 1898914] - [documentation] documentation: kvm: fix a typo (Vitaly Kuznetsov) [1878097 1898914] - [x86] x86/cpu: Fix typos and improve the comments in sync_core() (David Arcari) [1837457] - [x86] x86/cpu: Use SERIALIZE in sync_core() when available (David Arcari) [1837457] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (David Arcari) [1837457] - [x86] x86/cpufeatures: Add enumeration for SERIALIZE instruction (David Arcari) [1837457] - [x86] x86/cpu: Refactor sync_core() for readability (David Arcari) [1837457] - [x86] x86/cpu: Relocate sync_core() to sync_core.h (David Arcari) [1837457] - [arm64] kvm: arm64: Set HCR_EL2.PTW to prevent AT taking synchronous exception (Auger Eric) [1882794] - [arm64] kvm: arm64: Survive synchronous exceptions caused by AT instructions (Auger Eric) [1882794] - [arm64] kvm: arm64: Add kvm_extable for vaxorcism code (Auger Eric) [1882794] - [arm64] kvm: arm64: Print warning when cpu erratum can cause guests to deadlock (Auger Eric) [1882794] - [arm64] kvm: arm64: clean up redundant 'kvm_run' parameters (Auger Eric) [1882794] - [arm64] kvm: arm64: Use common KVM implementation of MMU memory caches (Auger Eric) [1882794] - [arm64] kvm: arm64: Use common code's approach for __GFP_ZERO with memory caches (Auger Eric) [1882794] - [arm64] kvm: arm64: Drop @max param from mmu_topup_memory_cache() (Auger Eric) [1882794] - [arm64] s/AMEVTYPE/AMEVTYPER (Auger Eric) [1882794] - [arm64] kvm: arm64: bti: Reset BTYPE when skipping emulated instructions (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove S1PTW check from kvm_vcpu_dabt_iswrite() (Auger Eric) [1882794] - [arm64] kvm: arm64: Assume write fault on S1PTW permission fault on instruction fetch (Auger Eric) [1882794] - [arm64] kvm: arm64: Update page shift if stage 2 block mapping not supported (Auger Eric) [1882794] - [arm64] kvm: arm64: Fix address truncation in traces (Auger Eric) [1882794] - [arm64] kvm: arm64: Do not try to map PUDs when they are folded into PMD (Auger Eric) [1882794] - [documentation] arm64/x86: kvm: Introduce steal-time cap (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: Fix stolen time accounting across migration (Auger Eric) [1882794] - [kernel] kvm: arm64: Drop type input from kvm_put_guest (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: Fix potential loss of stolen time (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: steal-time is only supported when configured (Auger Eric) [1882794] - [arm64] kvm: arm64: Move S1PTW S2 fault logic out of io_mem_abort() (Auger Eric) [1882794] - [arm64] kvm: arm64: Don't skip cache maintenance for read-only memslots (Auger Eric) [1882794] - [arm64] kvm: arm64: Handle data and instruction external aborts the same way (Auger Eric) [1882794] - [arm64] kvm: arm64: Rename kvm_vcpu_dabt_isextabt() (Auger Eric) [1882794] - [trace] kvm: arm: Add trace name for ARM_NISV (Auger Eric) [1882794] - [arm64] kvm: arm64: Ensure that all nVHE hyp code is in .hyp.text (Auger Eric) [1882794] - [arm64] kvm: arm64: Don't use has_vhe() for CHOOSE_HYP_SYM() (Auger Eric) [1882794] - [arm64] kvm: arm64: timers: Move timer registers to the sys_regs file (Auger Eric) [1882794] - [arm64] kvm: arm64: timers: Rename kvm_timer_sync_hwstate to kvm_timer_sync_user (Auger Eric) [1882794] - [arm64] kvm: arm64: Move SPSR_EL1 to the system register array (Auger Eric) [1882794] - [arm64] kvm: arm64: Disintegrate SPSR array (Auger Eric) [1882794] - [arm64] kvm: arm64: Move SP_EL1 to the system register array (Auger Eric) [1882794] - [arm64] kvm: arm64: Move ELR_EL1 to the system register array (Auger Eric) [1882794] - [arm64] kvm: arm64: Make struct kvm_regs userspace-only (Auger Eric) [1882794] - [arm64] kvm: arm64: debug: Drop useless vpcu parameter (Auger Eric) [1882794] - [arm64] kvm: arm64: pauth: Use ctxt_sys_reg() instead of raw sys_regs access (Auger Eric) [1882794] - [arm64] kvm: arm64: sve: Use __vcpu_sys_reg() instead of raw sys_regs access (Auger Eric) [1882794] - [arm64] kvm: arm64: hyp: Use ctxt_sys_reg/__vcpu_sys_reg instead of raw sys_regs access (Auger Eric) [1882794] - [arm64] kvm: arm64: Introduce accessor for ctxt->sys_reg (Auger Eric) [1882794] - [arm64] kvm: arm64: Rename HSR to ESR (Auger Eric) [1882794] - [arm64] kvm: arm64: Drop long gone function parameter documentation (Auger Eric) [1882794] - [arm64] kvm: arm64: vgic-its: Change default outer cacheability for {PEND, PROP}BASER (Auger Eric) [1882794] - [arm64] kvm: arm64: Lift instrumentation restrictions on VHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove __hyp_text macro, use build rules instead (Auger Eric) [1882794] - [arm64] kvm: arm64: Compile remaining hyp/ files for both VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Duplicate hyp/timer-sr.c for VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Split hyp/sysreg-sr.c to VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Split hyp/debug-sr.c to VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Split hyp/switch.c to VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Duplicate hyp/tlb.c for VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Move hyp-init.S to nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Build hyp-entry.S separately for VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Handle calls to prefixed hyp functions (Auger Eric) [1882794] - [arm64] kvm: arm64: Use build-time defines in has_vhe() (Auger Eric) [1882794] - [arm64] kvm: arm64: Add build rules for separate VHE/nVHE object files (Auger Eric) [1882794] - [arm64] kvm: arm64: Move __smccc_workaround_1_smc to .rodata (Auger Eric) [1882794] - [arm64] kvm: arm64: Fix symbol dependency in __hyp_call_panic_nvhe (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove the target table (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove target_table from exit handlers (Auger Eric) [1882794] - [arm64] kvm: arm64: Move ACTLR_EL1 emulation to the sys_reg_descs array (Auger Eric) [1882794] - [arm64] kvm: arm64: Tolerate an empty target_table list (Auger Eric) [1882794] - [arm64] kvm: arm64: Drop the target_table[] indirection (Auger Eric) [1882794] - [arm64] kvm: Remove kern_hyp_va from get_vcpu_ptr (Auger Eric) [1882794] - [arm64] kvm: arm64: Allow in-atomic injection of SPIs (Auger Eric) [1882794] - [arm64] kvm: arm64: Add emulation for 32bit guests accessing ACTLR2 (Auger Eric) [1882794] - [arm64] kvm: arm64: Use cpus_have_final_cap for has_vhe() (Auger Eric) [1882794] - [arm64] efi: Move variable assignments after SECTIONS (Auger Eric) [1882794] - [arm64] efi: Mark __efistub_stext_offset as an absolute symbol explicitly (Auger Eric) [1882794] - [arm64] drop linker script hack to hide __efistub_ symbols (Auger Eric) [1882794] - [arm64] kvm: arm64: Synchronize sysreg state on injecting an AArch32 exception (Auger Eric) [1882794] - [arm64] kvm: arm64: Make vcpu_cp1x() work on Big Endian hosts (Auger Eric) [1882794] - [arm64] kvm: arm64: Stop sparse from moaning at __hyp_this_cpu_ptr (Auger Eric) [1882794] - [arm64] kvm: arm64: Check advertised Stage-2 page size capability (Auger Eric) [1882794] - [arm64] cpufeature: Don't treat granule sizes as strict (Auger Eric) [1882794] - [arm64] cpufeature: Validate hypervisor capabilities during CPU hotplug (Auger Eric) [1882794] - [arm64] kvm: hyp: use cpus_have_final_cap() (Auger Eric) [1882794] - [arm64] cpufeature: add cpus_have_final_cap() (Auger Eric) [1882794] - [arm64] mark (__)cpus_have_const_cap as __always_inline (Auger Eric) [1882794] - [arm64] Mark call_smc_arch_workaround_1 as __maybe_unused (Auger Eric) [1882794] - [arm64] Make use of ARCH_WORKAROUND_1 even when KVM is not enabled (Auger Eric) [1882794] - [arm64] kvm: arm64: Delete duplicated label in invalid_vector (Auger Eric) [1882794] - [arm64] use mov_q instead of literal ldr (Auger Eric) [1882794] - [arm64] kvm: Modernize __smccc_workaround_1_smc_start annotations (Auger Eric) [1882794] - [arm64] kvm: Modernize annotation for __bp_harden_hyp_vecs (Auger Eric) [1882794] - [arm64] kvm: Annotate assembly using modern annoations (Auger Eric) [1882794] - [arm64] kvm: arm64: Prevent vcpu_has_ptrauth from generating OOL functions (Auger Eric) [1882794] - [arm64] kvm: disable access to AMU registers from kvm guests (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: Ensure task delay accounting is enabled (Auger Eric) [1882794] - [arm64] kvm: arm64: Stop writing aarch32's CSSELR into ACTLR (Auger Eric) [1882794] - [arm64] kvm: Annotate guest entry/exit as a single function (Auger Eric) [1882794] - [kernel] linkage: Introduce new macros for assembler symbols (Auger Eric) [1882794] - [s390] kvm: s390: remove diag318 reset code (Thomas Huth) [1899497] - [powerpc] powerpc/hv-gpci: Add sysfs files inside hv-gpci device to show cpumask (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-gpci: Add cpu hotplug support (Michael Petlan) [1844416] - [documentation] Documentation/ABI: Add ABI documentation for hv-gpci format (Michael Petlan) [1844416] - [documentation] Documentation/ABI: Add ABI documentation for hv-24x7 format (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-gpci: Fix starting index value (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-24x7: Move cpumask file to top folder of hv-24x7 driver (Michael Petlan) [1844416] - [powerpc] powerpc/hv-24x7: Add sysfs files inside hv-24x7 device to show cpumask (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-24x7: Add cpu hotplug support (Michael Petlan) [1844416] - [powerpc] powerpc/perf: Fix reading of MSRbits in trace-imc (Michael Petlan) [1854536] - [powerpc] powerpc/perf: Add kernel support for new MSRbits in trace-imc (Michael Petlan) [1854536] - [documentation] kdump: update kdump documentation due to change of crash URL (Lianbo Jiang) [1896236] - [pinctrl] pinctrl: intel: Add Intel Emmitsburg pin controller support (David Arcari) [1837409] - [x86] x86/platform/uv: Fix copied UV5 output archtype (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Drop last traces of uv_flush_tlb_others (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Recognize UV5 hubless system identifier (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove spaces from OEM IDs (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Fix missing OEM_TABLE_ID (Frank Ramsay) [1861439] - [misc] x86/platform/uv: Update Copyrights to conform to HPE standards (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update for UV5 NMI MMR changes (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update UV5 TSC checking (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update node present counting (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update UV5 MMR references in UV GRU (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Adjust GAM MMR references affected by UV5 updates (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update MMIOH references based on new UV5 MMRs (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Add and decode Arch Type in UVsystab (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Add UV5 direct references (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update UV MMRs for UV5 (Frank Ramsay) [1861439] - [misc] drivers/misc/sgi-xp: Adjust references in UV kernel modules (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove SCIR MMR references for UV systems (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove UV BAU TLB Shootdown Handler (Frank Ramsay) [1861439] - [x86] x86/kernel: Fix more -Wmissing-prototypes warnings (Frank Ramsay) [1861439] - [x86] x86/apic/uv: Avoid unused variable warning (Frank Ramsay) [1861439] - [misc] misc: sgi-xp: xp_main: Staticify local functions xp_init() and xp_exit() (Frank Ramsay) [1861439] - [misc] misc/sgi-xp: remove SGI SN2 support (Frank Ramsay) [1861439] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Frank Ramsay) [1861439] - [x86] efi/x86: Remove unreachable code in kexec_enter_virtual_mode() (Frank Ramsay) [1861439] - [x86] x86/efi: Remove unused EFI_UV1_MEMMAP code (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove uv bios and efi code related to EFI_UV1_MEMMAP (Frank Ramsay) [1861439] - [x86] x86/efi: Remove references to no-longer-used efi_have_uv1_memmap() (Frank Ramsay) [1861439] - [x86] x86/efi: Delete SGI UV1 detection (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove efi=old_map command line option (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove vestigial mention of UV1 platform from bios header (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for uv1 platform from uv_hub (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_bau (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_mmrs (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from x2apic_uv_x (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_tlb (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_time (Frank Ramsay) [1861439] - [x86] x86/apic/uv: Make x2apic_extra_bits static (Frank Ramsay) [1861439] - [s390] uv: add destroy page call (Thomas Huth) [1882800] - [s390] gmap: improve THP splitting (Thomas Huth) [1882800] - [s390] kvm: s390: clean up redundant 'kvm_run' parameters (Thomas Huth) [1882800] - [documentation] documentation: virt: kvm/s390-pv: drop doubled words (Thomas Huth) [1882800] - [s390] kvm: s390: reduce number of IO pins to 1 (Thomas Huth) [1882800] - [s390] protvirt: use scnprintf() instead of snprintf() (Thomas Huth) [1882800] - [s390] kvm: s390: remove unneeded semicolon in gisa_vcpu_kicker() (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: gmap_table_walk() simplifications (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: Move conditional reschedule (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: Fix possible race when shadowing region 3 tables (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: Fix region 1 ASCE sanity shadow address checks (Thomas Huth) [1882800] - [s390] kvm: s390: Use fallthrough; (Thomas Huth) [1882800] - [s390] mm: use refcount_t for refcount (Thomas Huth) [1882800] - [s390] mm: make gmap_test_and_clear_dirty_pmd static (Thomas Huth) [1882800] - [s390] mm: optimize locking without huge pages in gmap_pmd_op_walk() (Thomas Huth) [1882800] - [net] openvswitch: introduce common code for flushing flows (Eelco Chaudron) [1888576] - [net] openvswitch: silence suspicious RCU usage warning (Eelco Chaudron) [1888576] - [net] openvswitch: make masks cache size configurable (Eelco Chaudron) [1888576] - [net] openvswitch: add masks cache hit counter (Eelco Chaudron) [1888576] - [net] openvswitch: Prevent kernel-infoleak in ovs_ct_put_key() (Eelco Chaudron) [1888576] - [net] openvswitch: kerneldoc fixes (Eelco Chaudron) [1888576] - [net] openvswitch: use div_u64() for 64-by-32 divisions (Eelco Chaudron) [1888576] - [net] openvswitch: suitable access to the dp_meters (Eelco Chaudron) [1888576] - [net] openvswitch: use u64 for meter bucket (Eelco Chaudron) [1888576] - [net] openvswitch: make EINVAL return value more obvious (Eelco Chaudron) [1888576] - [net] openvswitch: remove the unnecessary check (Eelco Chaudron) [1888576] - [net] openvswitch: set max limitation to meters (Eelco Chaudron) [1888576] - [net] openvswitch: expand the meters supported number (Eelco Chaudron) [1888576] - [net] openvswitch: use hlist_for_each_entry_rcu instead of hlist_for_each_entry (Eelco Chaudron) [1888576] - [net] ovs: datapath: hide clang frame-overflow warnings (Eelco Chaudron) [1888576] - [net] openvswitch: use netif_ovs_is_port() instead of opencode (Eelco Chaudron) [1888576] - [platform] platform/x86: intel_pmc_core: avoid unused-function warnings (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: fix bound check in pmc_core_mphy_pg_show() (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: update TGL's LPM0 reg bit map name (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Make pmc_core_substate_res_show() generic (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Make pmc_core_lpm_display() generic for platforms that support sub-states (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add slp_s0_offset attribute back to tgl_reg_map (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Remove duplicate 'if' to create debugfs entry (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Relocate pmc_core_*_display() to outside of CONFIG_DEBUG_FS (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add debugfs support to access live status registers (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Dump low power status registers on an S0ix.y failure (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add an additional parameter to pmc_core_lpm_display() (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Remove slp_s0 attributes from tgl_reg_map (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Refactor the driver by removing redundant code (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add debugfs entry for low power mode status registers (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add debugfs entry to access sub-state residencies (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Fix spelling of MHz unit (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Fix indentation in function definitions (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Put more stuff under #ifdef DEBUG_FS (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Respect error code of kstrtou32_from_user() (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Make debugfs entry for pch_ip_power_gating_status conditional (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Remove unnecessary assignments (David Arcari) [1783140]- [net] mptcp: provide rmem[0] limit (Davide Caratti) [1874368] - [net] mptcp: add missing memory scheduling in the rx path (Davide Caratti) [1874368] - [net] mptcp: depends on IPV6 but not as a module (Davide Caratti) [1874368] - [tools] selftests: mptcp: depends on built-in IPv6 (Davide Caratti) [1874368] - [net] mptcp: MPTCP_IPV6 should depend on IPV6 instead of selecting it (Davide Caratti) [1874368] - [net] mptcp: subflows garbage collection (Davide Caratti) [1874368] - [net] mptcp: fix fallback for MP_JOIN subflows (Davide Caratti) [1874368] - [net] mptcp: make DACK4/DACK8 usage consistent among all subflows (Davide Caratti) [1874368] - [net] mptcp: fix infinite loop on recvmsg()/worker() race. (Davide Caratti) [1874368] - [net] mptcp: don't skip needed ack (Davide Caratti) [1874368] - [net] mptcp: more DATA FIN fixes (Davide Caratti) [1874368] - [net] mptcp: Constify mptcp_pm_ops (Davide Caratti) [1874368] - [net] mptcp: ADD_ADDRs with echo bit are smaller (Davide Caratti) [1874368] - [net] mptcp: Handle incoming 32-bit DATA_FIN values (Davide Caratti) [1874368] - [net] mptcp: Consistently use READ_ONCE/WRITE_ONCE with msk->ack_seq (Davide Caratti) [1874368] - [net] tcp: drop unused function argument from mptcp_incoming_options (Davide Caratti) [1874368] - [net] mptcp: retransmit ADD_ADDR when timeout (Davide Caratti) [1874368] - [net] mptcp: add sk_stop_timer_sync helper (Davide Caratti) [1874368] - [net] mptcp: add struct mptcp_pm_add_entry (Davide Caratti) [1874368] - [tools] selftests: mptcp: add remove addr and subflow test cases (Davide Caratti) [1874368] - [tools] selftests: mptcp: add remove cfg in mptcp_connect (Davide Caratti) [1874368] - [net] mptcp: add mptcp_destroy_common helper (Davide Caratti) [1874368] - [net] mptcp: add RM_ADDR related mibs (Davide Caratti) [1874368] - [net] mptcp: implement mptcp_pm_remove_subflow (Davide Caratti) [1874368] - [net] mptcp: remove addr and subflow in PM netlink (Davide Caratti) [1874368] - [net] mptcp: add accept_subflow re-check (Davide Caratti) [1874368] - [tools] selftests: mptcp: add ADD_ADDR mibs check function (Davide Caratti) [1874368] - [net] tcp: change pingpong threshold to 3 (Davide Caratti) [1874368] - [net] tcp: Refactor pingpong code (Davide Caratti) [1874368] - [net] mptcp: add ADD_ADDR related mibs (Davide Caratti) [1874368] - [net] mptcp: send out ADD_ADDR with echo flag (Davide Caratti) [1874368] - [net] mptcp: add the incoming RM_ADDR support (Davide Caratti) [1874368] - [net] mptcp: add the outgoing RM_ADDR support (Davide Caratti) [1874368] - [net] mptcp: rename addr_signal and the related functions (Davide Caratti) [1874368] - [net] mptcp: Wake up MPTCP worker when DATA_FIN found on a TCP FIN packet (Davide Caratti) [1874368] - [net] mptcp: fix integer overflow in mptcp_subflow_discard_data() (Davide Caratti) [1874368] - [net] mptcp: Fix unsigned 'max_seq' compared with zero in mptcp_data_queue_ofo (Davide Caratti) [1874368] - [tools] selftests: mptcp: interpret \n as a new line (Davide Caratti) [1874368] - [tools] selftests: mptcp: interpret \n as a new line (Davide Caratti) [1874368] - [tools] mptcp: simult flow self-tests (Davide Caratti) [1874368] - [net] mptcp: call tcp_cleanup_rbuf on subflows (Davide Caratti) [1874368] - [net] mptcp: allow picking different xmit subflows (Davide Caratti) [1874368] - [net] mptcp: allow creating non-backup subflows (Davide Caratti) [1874368] - [net] mptcp: move address attribute into mptcp_addr_info (Davide Caratti) [1874368] - [net] mptcp: add OoO related mibs (Davide Caratti) [1874368] - [net] mptcp: cleanup mptcp_subflow_discard_data() (Davide Caratti) [1874368] - [net] mptcp: move ooo skbs into msk out of order queue. (Davide Caratti) [1874368] - [net] mptcp: introduce and use mptcp_try_coalesce() (Davide Caratti) [1874368] - [net] mptcp: basic sndbuf autotuning (Davide Caratti) [1874368] - [net] mptcp: trigger msk processing even for OoO data (Davide Caratti) [1874368] - [net] mptcp: set data_ready status bit in subflow_check_data_avail() (Davide Caratti) [1874368] - [net] mptcp: rethink 'is writable' conditional (Davide Caratti) [1874368] - [net] tcp: reduce POLLOUT events caused by TCP_NOTSENT_LOWAT (Davide Caratti) [1874368] - [net] mptcp: fix kmalloc flag in mptcp_pm_nl_get_local_id (Davide Caratti) [1874368] - [net] mptcp: fix subflow's remote_id issues (Davide Caratti) [1874368] - [net] mptcp: fix subflow's local_id issues (Davide Caratti) [1874368] - [net] mptcp: Remove unused macro MPTCP_SAME_STATE (Davide Caratti) [1874368] - [net] treewide: Use fallthrough pseudo-keyword (Davide Caratti) [1874368] - [net] netlink: consistently use NLA_POLICY_EXACT_LEN() (Davide Caratti) [1874368] - [net] mptcp: free acked data before waiting for more memory (Davide Caratti) [1874368] - [net] mptcp: sendmsg: reset iter on error redux (Davide Caratti) [1874368] - [net] mptcp: sendmsg: reset iter on error (Davide Caratti) [1874368] - [net] mptcp: fix warn at shutdown time for unaccepted msk sockets (Davide Caratti) [1874368] - [net] mptcp: use mptcp_for_each_subflow in mptcp_stream_accept (Davide Caratti) [1874368] - [net] mptcp: fix syncookie build error on UP (Davide Caratti) [1874368] - [net] tcp: fix syn cookied MPTCP request socket leak (Davide Caratti) [1874368] - [net] tcp: fix build fong CONFIG_MPTCP=n (Davide Caratti) [1874368] - [tools] selftests: mptcp: add test cases for mptcp join tests with syn cookies (Davide Caratti) [1874368] - [tools] selftests: mptcp: make 2nd net namespace use tcp syn cookies unconditionally (Davide Caratti) [1874368] - [net] mptcp: enable JOIN requests even if cookies are in use (Davide Caratti) [1874368] - [net] tcp: free request sock directly upon TFO or syncookies error (Davide Caratti) [1874368] - [include] net: keep refcount warning in reqsk_free() (Davide Caratti) [1874368] - [net] tcp: syncookies: create mptcp request socket for ACK cookies with MPTCP option (Davide Caratti) [1874368] - [net] mptcp: subflow: add mptcp_subflow_init_cookie_req helper (Davide Caratti) [1874368] - [net] mptcp: rename and export mptcp_subflow_request_sock_ops (Davide Caratti) [1874368] - [net] mptcp: subflow: split subflow_init_req (Davide Caratti) [1874368] - [net] mptcp: token: move retry to caller (Davide Caratti) [1874368] - [net] tcp: rename request_sock cookie_ts bit to syncookie (Davide Caratti) [1874368] - [net] mptcp: Safely store sequence number when sending data (Davide Caratti) [1874368] - [net] mptcp: Safely read sequence number when lock isn't held (Davide Caratti) [1874368] - [net] mptcp: Skip unnecessary skb extension allocation for bare acks (Davide Caratti) [1874368] - [net] mptcp: Only use subflow EOF signaling on fallback connections (Davide Caratti) [1874368] - [net] mptcp: Use full MPTCP-level disconnect state machine (Davide Caratti) [1874368] - [net] mptcp: Add helper to process acks of DATA_FIN (Davide Caratti) [1874368] - [net] mptcp: Add mptcp_close_state() helper (Davide Caratti) [1874368] - [net] mptcp: Track received DATA_FIN sequence number and add related helpers (Davide Caratti) [1874368] - [net] mptcp: Use MPTCP-level flag for sending DATA_FIN (Davide Caratti) [1874368] - [net] mptcp: Remove outdated and incorrect comment (Davide Caratti) [1874368] - [net] mptcp: Return EPIPE if sending is shut down during a sendmsg (Davide Caratti) [1874368] - [net] mptcp: Allow DATA_FIN in headers without TCP FIN (Davide Caratti) [1874368] - [net] subflow: introduce and use mptcp_can_accept_new_subflow() (Davide Caratti) [1874368] - [net] subflow: use rsk_ops->send_reset() (Davide Caratti) [1874368] - [net] mptcp: cleanup subflow_finish_connect() (Davide Caratti) [1874368] - [net] mptcp: explicitly track the fully established status (Davide Caratti) [1874368] - [net] mptcp: mark as fallback even early ones (Davide Caratti) [1874368] - [net] mptcp: avoid data corruption on reinsert (Davide Caratti) [1874368] - [net] subflow: always init 'rel_write_seq' (Davide Caratti) [1874368] - [net] mptcp: zero token hash at creation time. (Davide Caratti) [1874368] - [net] mptcp: move helper to where its used (Davide Caratti) [1874368] - [tools] selftests/mptcp: Better delay & reordering configuration (Davide Caratti) [1874368] - [tools] selftests: mptcp: fix typo in mptcp_connect usage (Davide Caratti) [1874368] - [tools] mptcp: more stable diag self-tests (Davide Caratti) [1874368] - [tools] selftests: mptcp: fix dependecies (Davide Caratti) [1874368] - [net] inet_diag: validate INET_DIAG_REQ_PROTOCOL attribute (Davide Caratti) [1874368] - [tools] selftests/mptcp: add diag interface tests (Davide Caratti) [1874368] - [net] mptcp: add MPTCP socket diag interface (Davide Caratti) [1874368] - [net] mptcp: add msk interations helper (Davide Caratti) [1874368] - [net] inet_diag: support for wider protocol numbers (Davide Caratti) [1874368] - [net] mptcp: use mptcp worker for path management (Davide Caratti) [1874368] - [include] mptcp: Remove unused inline function mptcp_rcv_synsent() (Davide Caratti) [1874368] - [net] mptcp: support IPV6_V6ONLY setsockopt (Davide Caratti) [1874368] - [net] mptcp: add REUSEADDR/REUSEPORT support (Davide Caratti) [1874368] - [net] use mptcp setsockopt function for SOL_SOCKET on mptcp sockets (Davide Caratti) [1874368] - [net] mptcp: do nonce initialization at subflow creation time (Davide Caratti) [1874368] - [net] mptcp: close poll() races (Davide Caratti) [1874368] - [net] mptcp: __mptcp_tcp_fallback() returns a struct sock (Davide Caratti) [1874368] - [net] mptcp: create first subflow at msk creation time (Davide Caratti) [1874368] - [net] mptcp: check for plain TCP sock at accept time (Davide Caratti) [1874368] - [net] mptcp: move mptcp_options_received's port initialization (Davide Caratti) [1874368] - [net] mptcp: initialize mptcp_options_received's ahmac (Davide Caratti) [1874368] - [net] mptcp: MPTCP_KUNIT_TESTS should depend on MPTCP instead of selecting it (Davide Caratti) [1874368] - [net] mptcp: introduce token KUNIT self-tests (Davide Caratti) [1874368] - [net] mptcp: move crypto test to KUNIT (Davide Caratti) [1874368] - [net] mptcp: refactor token container (Davide Caratti) [1874368] - [net] mptcp: add __init annotation on setup functions (Davide Caratti) [1874368] - [net] tcp: move ipv4_specific to tcp include file (Davide Caratti) [1874368] - [net] tcp: move ipv6_specific declaration to remove a warning (Davide Caratti) [1874368] - [net] mptcp: use list_first_entry_or_null (Davide Caratti) [1874368] - [net] mptcp: attempt coalescing when moving skbs to mptcp rx queue (Davide Caratti) [1874368] - [net] allow __skb_ext_alloc to sleep (Davide Caratti) [1874368] - [net] mptcp: remove inner wait loop from mptcp_sendmsg_frag (Davide Caratti) [1874368] - [net] mptcp: fill skb page frag cache outside of mptcp_sendmsg_frag (Davide Caratti) [1874368] - [net] mptcp: fill skb extension cache outside of mptcp_sendmsg_frag (Davide Caratti) [1874368] - [net] mptcp: move common nospace-pattern to a helper (Davide Caratti) [1874368] - [net] mptcp: Use 32-bit DATA_ACK when possible (Davide Caratti) [1874368] - [s390] s390/qeth: implement ndo_bridge_setlink for learning_sync (Philipp Rudo) [1651745] - [s390] s390/qeth: implement ndo_bridge_getlink for learning_sync (Philipp Rudo) [1651745] - [s390] s390/qeth: Reset address notification in case of buffer overflow (Philipp Rudo) [1651745] - [net] bridge: Add SWITCHDEV_FDB_FLUSH_TO_BRIDGE notifier (Philipp Rudo) [1651745] - [s390] s390/qeth: Translate address events into switchdev notifiers (Philipp Rudo) [1651745] - [s390] s390/qeth: Detect PNSO OC3 capability (Philipp Rudo) [1651745] - [s390] s390/cio: Helper functions to read CSSID, IID, and CHID (Philipp Rudo) [1651745] - [s390] s390/cio: Add new Operation Code OC3 to PNSO (Philipp Rudo) [1651745] - [cpuidle] cpuidle: Drop misleading comments about RCU usage (David Arcari) [1888014] - [cpuidle] cpuidle: Allow cpuidle drivers to take over RCU-idle (David Arcari) [1888014] - [include] cpuidle: Make CPUIDLE_FLAG_TLB_FLUSHED generic (David Arcari) [1888014] - [cpuidle] sched, idle, rcu: Push rcu_idle deeper into the idle path (David Arcari) [1888014] - [cpuidle] cpuidle: Fixup IRQ state (David Arcari) [1888014] - [kernel] cpuidle: Add RH_KABI warnings (David Arcari) [1878232] - [acpi] cpuidle: ACPI: fix 'return' with no value build warning (David Arcari) [1878232] - [acpi] cpuidle: change enter_s2idle() prototype (David Arcari) [1878232] - [cpuidle] cpuidle/pseries: Make symbol 'pseries_idle_driver' static (David Arcari) [1878232] - [cpuidle] cpuidle/powernv : Remove dead code block (David Arcari) [1878232] - [cpuidle] cpuidle: Rearrange s2idle-specific idle state entry code (David Arcari) [1878232] - [cpuidle] PM: s2idle: Clear _TIF_POLLING_NRFLAG before suspend to idle (David Arcari) [1878232] - [cpuidle] cpuidle: Fix three reference count leaks (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Remove sysfs_switch and switch attributes (David Arcari) [1878232] - [cpuidle] cpuidle: Make cpuidle governor switchable to be the default behaviour (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Accept governor name with 15 characters (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Fix the overlap for showing available governors (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Minor coding style corrections (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Remove the unused define_one_r(o/w) macros (David Arcari) [1878232] - [cpuidle] cpuidle-haltpoll: Fix small typo (David Arcari) [1878232] - [idle] intel_idle: Customize IceLake server support (David Arcari) [1881620 1857129] - [idle] intel_idle: Eliminate redundant static variable (David Arcari) [1857129] - [idle] intel_idle: Update copyright notice, known limitations and version (David Arcari) [1857129] - [idle] intel_idle: Define CPUIDLE_FLAG_TLB_FLUSHED as BIT(16) (David Arcari) [1857129] - [idle] intel_idle: Clean up kerneldoc comments for multiple functions (David Arcari) [1857129] - [idle] intel_idle: Reorder declarations of static variables (David Arcari) [1857129] - [idle] intel_idle: Annotate init time data structures (David Arcari) [1857129] - [idle] intel_idle: Add __initdata annotations to init time variables (David Arcari) [1857129] - [idle] intel_idle: Relocate definitions of cpuidle callbacks (David Arcari) [1857129] - [idle] intel_idle: Clean up definitions of cpuidle callbacks (David Arcari) [1857129] - [idle] intel_idle: Simplify LAPIC timer reliability checks (David Arcari) [1857129] - [idle] intel_idle: Introduce 'states_off' module parameter (David Arcari) [1857129] - [idle] intel_idle: Clean up irtl_2_usec() (David Arcari) [1857129] - [idle] intel_idle: Move 3 functions closer to their callers (David Arcari) [1857129] - [idle] intel_idle: Annotate initialization code and data structures (David Arcari) [1857129] - [idle] intel_idle: Move and clean up intel_idle_cpuidle_devices_uninit() (David Arcari) [1857129] - [idle] intel_idle: Rearrange intel_idle_cpuidle_driver_init() (David Arcari) [1857129] - [idle] intel_idle: Clean up NULL pointer check in intel_idle_init() (David Arcari) [1857129] - [idle] intel_idle: Fold intel_idle_probe() into intel_idle_init() (David Arcari) [1857129] - [idle] intel_idle: Eliminate __setup_broadcast_timer() (David Arcari) [1857129] - [idle] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 335 (David Arcari) [1857129]- [hv] hv: vmbus: Allow cleanup of VMBUS_CONNECT_CPU if disconnected (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Add parsing of VMbus interrupt in ACPI DSDT (Mohammed Gamal) [1886096] - [hv] driver: hv: util: Use VMBUS_RING_SIZE() for ringbuffer sizes (Mohammed Gamal) [1886096] - [kernel] hv: vmbus: Move virt_to_hvpfn() to hyperv header (Mohammed Gamal) [1886096] - [hv] hv: Use HV_HYP_PAGE in hv_synic_enable_regs() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Introduce types of GPADL (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Move __vmbus_open() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Always use HV_HYP_PAGE_SIZE for gpadl (Mohammed Gamal) [1886096] - [hv] hv: remove cast from hyperv_die_event (Mohammed Gamal) [1886096] - [hv] hv: Change flag to write log level in panic msg to false (Mohammed Gamal) [1886096] - [kernel] hv: vmbus: Remove the lock field from the vmbus_channel struct (Mohammed Gamal) [1886096] - [scsi] storvsc: Introduce the per-storvsc_device spinlock (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove unnecessary channel->lock critical sections (sc_list updaters) (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Use channel_mutex in channel_vp_mapping_show() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove unnecessary channel->lock critical sections (sc_list readers) (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Replace cpumask_test_cpu(, cpu_online_mask) with cpu_online() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove the numa_node field from the vmbus_channel struct (Mohammed Gamal) [1886096] - [kernel] hv: vmbus: Remove the target_vp field from the vmbus_channel struct (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Resolve more races involving init_vp_index() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Resolve race between init_vp_index() and CPU hotplug (Mohammed Gamal) [1886096] - [hv] driver: hv: vmbus: drop a no long applicable comment (Mohammed Gamal) [1886096] - [hv] hyper-v: Replace open-coded variant of *phN specifier (Mohammed Gamal) [1886096] - [hv] hyper-v: Supply GUID pointer to printf() like functions (Mohammed Gamal) [1886096] - [hv] hyper-v: Use UUID API for exporting the GUID (part 2) (Mohammed Gamal) [1886096] - [hv] hv: remove redundant assignment to pointer primary_channel (Mohammed Gamal) [1886096] - [scsi] storvsc: Re-init stor_chns when a channel interrupt is re-assigned (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Introduce the CHANNELMSG_MODIFYCHANNEL message type (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Synchronize init_vp_index() vs. CPU hotplug (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove the unused HV_LOCALIZED channel affinity logic (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Use a spin lock for synchronizing channel scheduling vs. channel removal (Mohammed Gamal) [1886096] - [hv] hv_utils: Always execute the fcopy and vss callbacks in a tasklet (Mohammed Gamal) [1886096] - [netdrv] hv_netvsc: Disable NAPI before closing the VMBus channel (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Replace the per-CPU channel lists with a global array of channels (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Don't bind the offer&rescind works to a specific CPU (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Always handle the VMBus messages on CPU0 (Mohammed Gamal) [1886096] - [hv] hv: check VMBus messages lengths (Mohammed Gamal) [1886096] - [hv] hv: make sure that 'struct vmbus_channel_message_header' compiles correctly (Mohammed Gamal) [1886096] - [hv] hv: avoid passing opaque pointer to vmbus_onmessage() (Mohammed Gamal) [1886096] - [hv] hv: allocate the exact needed memory for messages (Mohammed Gamal) [1886096] - [hv] hv: copy from message page only what's needed (Mohammed Gamal) [1886096] - [x86] hyperv: Clarify comment on x2apic mode (Mohammed Gamal) [1886099] - [x86] hyperv: report value of misc_features (Mohammed Gamal) [1886099] - [x86] hyperv: Make hv_setup_sched_clock inline (Mohammed Gamal) [1886099] - [net] ipv6: reply ICMP error if the first fragment don't include all headers (Hangbin Liu) [1874734] - [net] icmpv6: Add ICMPv6 Parameter Problem, code 3 definition (Hangbin Liu) [1874734] - [powerpc] powerpc/process: Add missing include of stacktrace.h (Desnes Augusto Nunes do Rosario) [1883975] - [powerpc] powerpc/test_emulate_sstep: Fix build error (Desnes Augusto Nunes do Rosario) [1883975] - [nvdimm] powerpc/pmem: Initialize pmem device on newer hardware (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Avoid the barrier in flush routines (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Update ppc64 to use the new barrier instruction (Desnes Augusto Nunes do Rosario) [1878632] - [md] libnvdimm/nvdimm/flush: Allow architecture to override the flush barrier (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Add flush routines using new pmem store and sync instruction (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Add new instructions for persistent storage and sync (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Restrict papr_scm to P8 and above (Desnes Augusto Nunes do Rosario) [1878632] - [i2c] i2c: ismt: Add support for Intel Emmitsburg PCH (David Arcari) [1886162] - [include] timer: add fsleep for flexible sleeping (Josef Oskera) [1892674] - [scsi] qla2xxx: Update driver version to 10.02.00.103-k (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Return EBUSY on fcport deletion (Nilesh Javali) [1887427] - [trace] scsi: qla2xxx: Suppress two recently introduced compiler warnings (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix return of uninitialized value in rval (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Convert to DEFINE_SHOW_ATTRIBUTE (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Initialize variable in qla8044_poll_reg() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Do not consume srb greedily (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use constant when it is known (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix inconsistent format argument type in qla_dbg.c (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix inconsistent format argument type in qla_os.c (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix inconsistent format argument type in tcm_qla2xxx.c (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix point-to-point (N2N) device discovery issue (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix crash on session cleanup with unload (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix reset of MPI firmware (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix MPI reset needed message (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix buffer-buffer credit extraction error (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Correct the check for sscanf() return value (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add SLER and PI control support (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add IOCB resource tracking (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add rport fields in debugfs (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make tgt_port_database available in initiator mode (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix I/O errors during LIP reset tests (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Performance tweak (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix memory size truncation (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Reduce duplicate code in reporting speed (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Honor status qualifier in FCP_RSP per spec (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Allow dev_loss_tmo setting for FC-NVMe devices (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Setup debugfs entries for remote ports (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix I/O failures during remote port toggle testing (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove unneeded variable 'rval' (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Handle incorrect entry_type entries (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Log calling function name in qla2x00_get_sp_from_handle() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Simplify return value logic in qla2x00_get_sp_from_handle() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Warn if done() or free() are called on an already freed srb (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix the return value (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix wrong return value in qla_nvme_register_hba() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix wrong return value in qlt_chk_unresolv_exchg() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove redundant variable initialization (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix the size used in a 'dma_free_coherent()' call (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove pci-dma-compat wrapper API (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove superfluous memset() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix regression on sparc64 (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use MBX_TOV_SECONDS for mailbox command timeout values (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Address a set of sparse warnings (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: SAN congestion management implementation (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Change in PUREX to handle FPIN ELS requests (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Introduce a function for computing the debug message prefix (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qla2x00_restart_isp() easier to read (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix a Coverity complaint in qla2100_fw_dump() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make __qla2x00_alloc_iocbs() initialize 32 bits of request_t.handle (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove a superfluous cast (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Initialize 'n' before using it (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qla82xx_flash_wait_write_finish() easier to read (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove the __packed annotation from struct fcp_hdr and fcp_hdr_le (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Check the size of struct fcp_hdr at compile time (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix a condition in qla2x00_find_all_fabric_devs() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Set NVMe status code for failed NVMe FCP request (Nilesh Javali) [1887427] - [scsi] scsi: Fix trivial spelling (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove return value from qla_nvme_ls() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove an unused function (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix endianness annotations in source files (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix endianness annotations in header files (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use make_handle() instead of open-coding it (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Cast explicitly to uint16_t / uint32_t (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Change {RD, WRT}_REG_*() function names from upper case into lower case (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix the code that reads from mailbox registers (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use register names instead of register offsets (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Change two hardcoded constants into offsetof() / sizeof() expressions (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Increase the size of struct qla_fcp_prio_cfg to FCP_PRIO_CFG_SIZE (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make a gap in struct qla2xxx_offld_chain explicit (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add more BUILD_BUG_ON() statements (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Sort BUILD_BUG_ON() statements alphabetically (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Simplify the functions for dumping firmware (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix spelling of a variable name (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Do not log message when reading port speed via sysfs (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qlafx00_process_aen() return void (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use true, false for ha->fw_dumped (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use true, false for need_mpi_reset (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qla_set_ini_mode() return void (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix issue with adapter's stopping state (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix failure message in qlt_disable_vha() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix warning after FC target reset (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: check UNLOADING before posting async work (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: set UNLOADING before waiting for session deletion (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use ARRAY_SIZE() instead of open-coding it (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Split qla2x00_configure_local_loop() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix regression warnings (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove non functional code (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: add ring buffer for tracing debug logs (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix RDP respond data format (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: fix FW resource count values (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Improved secure flash support messages (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use FC generic update firmware options routine for ISP27xx (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Avoid setting firmware options twice in 24xx_update_fw_options (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Convert MAKE_HANDLE() from a define into an inline function (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix sparse warnings triggered by the PCI state checking code (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Suppress endianness complaints in qla2x00_configure_local_loop() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Simplify the code for aborting SCSI commands (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix sparse warning reported by kbuild bot (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Print portname for logging in qla24xx_logio_entry() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix qla2x00_echo_test() based on ISP type (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Correction to selection of loopback/echo test (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix RDP response size (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Handle cases for limiting RDP response payload length (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add deferred queue for processing ABTS and RDP (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Cleanup ELS/PUREX iocb fields (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Show correct port speed capabilities for RDP command (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Display message for FCE enabled (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add vendor extended FDMI commands (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add ql2xrdpenable module parameter for RDP (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add vendor extended RDP additions and amendments (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add changes in preparation for vendor extended FDMI/RDP (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix gnl.l memory leak on adapter init failure (Nilesh Javali) [1887427]- [kernel] PM: hibernate: Batch hibernate and resume IO requests (Lenny Szubowicz) [1868096] - [net] tunnels: Fix off-by-one in lower MTU bounds for ICMP/ICMPv6 replies (Antoine Tenart) [1895765] - [block] block: mark flush request as IDLE when it is really finished (Ming Lei) [1895913] - [net] vsock: forward all packets to the host when no H2G is registered (Vitaly Kuznetsov) [1893826] - [maintainers] maintainers: Add entry for the Nitro Enclaves driver (Vitaly Kuznetsov) [1893826] - [documentation] nitro_enclaves: Add overview documentation (Vitaly Kuznetsov) [1893826] - [samples] nitro_enclaves: Add sample for ioctl interface usage (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add Makefile for the Nitro Enclaves driver (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add Kconfig for the Nitro Enclaves driver (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for terminating an enclave (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for starting an enclave (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for setting an enclave memory region (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for getting the enclave image load info (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for setting an enclave vCPU (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for creating an enclave VM (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Init misc device providing the ioctl interface (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Handle out-of-band PCI device events (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Handle PCI device command requests (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Init PCI device driver (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Define enclave info for internal bookkeeping (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Define the PCI device interface (Vitaly Kuznetsov) [1893826] - [uapi] nitro_enclaves: Add ioctl interface definition (Vitaly Kuznetsov) [1893826] - [kernel] cpu/hotplug: Add new {add, remove}_cpu() functions (Vitaly Kuznetsov) [1893826] - [x86] x86/delay: Introduce TPAUSE delay (Prarit Bhargava) [1838636] - [x86] x86/delay: Refactor delay_mwaitx() for TPAUSE support (Prarit Bhargava) [1838636] - [x86] x86/delay: Preparatory code cleanup (Prarit Bhargava) [1838636] - [net] netfilter: ipset: Update byte and packet counters regardless of whether they match (Phil Sutter) [1806882] - [net] ethtool: add and use message type for tunnel info reply (Ivan Vecera) [1867211] - [infiniband] RDMA/hns: Mark hns_roce driver as unsupported (Kamal Heib) [1878211] - [net] tipc: fix memory leak caused by tipc_buf_append() (Xin Long) [1865774] - [net] tipc: fix the skb_unshare() in tipc_buf_append() (Xin Long) [1865774] - [net] tipc: use skb_unshare() instead in tipc_buf_append() (Xin Long) [1865774] - [netdrv] net: team: fix memory leak in __team_options_register (Hangbin Liu) [1892142] - [netdrv] team: set dev->needed_headroom in team_setup_by_port() (Hangbin Liu) [1892142] - [netdrv] team: use netif_is_team_port() (Hangbin Liu) [1892142] - [char] random: decouple random and urandom extrng fops (Vladis Dronov) [1890711] - [platform] platform/x86: intel_pmc_core: Add Intel RocketLake (RKL) support (Steve Best) [1782713] - [netdrv] fm10k: convert to new udp_tunnel_nic infra (Vladis Dronov) [1884254] - [netdrv] ethernet/intel: Convert fallthrough code comments (Vladis Dronov) [1884254] - [netdrv] docs: networking: reorganize driver documentation again (Vladis Dronov) [1884254] - [netdrv] net/intel: remove driver versions from Intel drivers (Vladis Dronov) [1884254] - [infiniband] RDMA/core: Fix ordering of CQ pool destruction (Kamal Heib) [1878969 1857603] - [infiniband] IB/isert: Fix unaligned immediate-data handling (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix reported speed and width (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix unsafe linked list traversal after failing to allocate CQ (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Fix panic when calling kmem_cache_create() (Kamal Heib) [1867296 1857603] - [infiniband] RDMA/rxe: Fix memleak in rxe_mem_init_user (Kamal Heib) [1857603] - [net] xprtrdma: Release in-flight MRs on disconnect (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Fix the parent sysfs read when the interface has 15 chars (Kamal Heib) [1870430 1857603] - [infiniband] RDMA/hfi1: Correct an interlock issue for TID RDMA WRITE request (Kamal Heib) [1870281 1857603] - [infiniband] RDMA/core: Fix spelling mistake "Could't" -> "Couldn't" (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Remove pkey table (Kamal Heib) [1857603] - [infiniband] RDMA/umem: Add a schedule point in ib_umem_get() (Kamal Heib) [1857603] - [infiniband] RDMA/netlink: Remove CAP_NET_RAW check when dump a raw QP (Kamal Heib) [1857603] - [rdma] RDMA/include: Replace license text with SPDX tags (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Execute rdma_cm destruction from a handler properly (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Remove unneeded locking for req paths (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Using the standard locking pattern when delivering the removal event (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Simplify DEVICE_REMOVAL for internal_id (Kamal Heib) [1857603] - [infiniband] RDMA/efa: Add EFA 0xefa1 PCI ID (Kamal Heib) [1857603] - [infiniband] RDMA/efa: User/kernel compatibility handshake mechanism (Kamal Heib) [1857603] - [infiniband] RDMA/efa: Expose minimum SQ size (Kamal Heib) [1857603] - [infiniband] RDMA/efa: Expose maximum TX doorbell batch (Kamal Heib) [1857603] - [infiniband] IB/srpt: use new shared CQ mechanism (Kamal Heib) [1857603] - [infiniband] IB/isert: use new shared CQ mechanism (Kamal Heib) [1857603] - [infiniband] IB/iser: use new shared CQ mechanism (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix return error value in _ib_modify_qp() to negative (Kamal Heib) [1857603] - [infiniband] RDMA/uverbs: Silence shiftTooManyBitsSigned warning (Kamal Heib) [1857603] - [infiniband] RDMA/core: Update write interface to use automatic object lifetime (Kamal Heib) [1857603] - [infiniband] RDMA/core: Align abort/commit object scheme for write() and ioctl() paths (Kamal Heib) [1857603] - [uapi] RDMA: rdma_user_ioctl.h: fix a duplicated word + clarify (Kamal Heib) [1857603] - [infiniband] RDMA/qedr: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/i40iw: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/cxgb4: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/siw: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/core: Remove query_pkey from the mandatory ops (Kamal Heib) [1857603] - [infiniband] RDMA/core: Allocate the pkey cache only if the pkey_tbl_len is set (Kamal Heib) [1857603] - [infiniband] RDMA/core: Expose pkeys sysfs files only if pkey_tbl_len is set (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Prevent access to wr->next ptr afrer wr is posted to send queue (Kamal Heib) [1857603] - [infiniband] IB/hfi1: Remove unnecessary fall-through markings (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Remove rxe_link_layer() (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Return void from rxe_mem_init_dma() (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Return void from rxe_init_port_param() (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Drop pointless checks in rxe_init_ports (Kamal Heib) [1857603] - [infiniband] RDMA/counter: Allow manually bind QPs with different pids to same counter (Kamal Heib) [1857603] - [infiniband] RDMA/counter: Only bind user QPs in auto mode (Kamal Heib) [1857603] - [infiniband] RDMA/counter: Add PID category support in auto mode (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Skip dgid check in loopback mode (Kamal Heib) [1857603] - [infiniband] RDMA/core: Create and destroy counters in the ib_core (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Expose UAPI to query MR (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Expose UAPI to query ucontext (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Set IOVA on IB MR in uverbs layer (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Enable CQ ioctl commands by default (Kamal Heib) [1857603] - [infiniband] RDMA/core: Clean ib_alloc_xrcd() and reuse it to allocate XRC domain (Kamal Heib) [1857603] - [infiniband] RDMA: Remove the udata parameter from alloc_mr callback (Kamal Heib) [1857603] - [infiniband] RDMA/core: Remove ib_alloc_mr_user function (Kamal Heib) [1857603] - [infiniband] RDMA/core: Check for error instead of success in alloc MR function (Kamal Heib) [1857603] - [infiniband] RDMA/core: Clean up tracepoint headers (Kamal Heib) [1857603] - [infiniband] RDMA/ipoib: Handle user-supplied address when creating child (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix bogus WARN_ON during ib_unregister_device_queued() (Kamal Heib) [1857603] - [infiniband] IB/hfi1: Convert PCIBIOS_* errors to generic -E* errors (Kamal Heib) [1857603] - [infiniband] RDMA/core: Delete not-used create RWQ table function (Kamal Heib) [1857603] - [infiniband] IB/mad: Delete RMPP_STATE_CANCELING state (Kamal Heib) [1857603] - [infiniband] IB/mad: Change atomics to refcount API (Kamal Heib) [1857603] - [infiniband] IB/mad: Issue complete whenever decrements agent refcount (Kamal Heib) [1857603] - [infiniband] RDMA: Add support to dump resource tracker in RAW format (Kamal Heib) [1857603] - [infiniband] RDMA: Add dedicated CM_ID resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA: Add dedicated QP resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA: Add a dedicated CQ resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA: Add dedicated MR resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA/core: Don't call fill_res_entry for PD (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Remove unused rxe_mem_map_pages (Kamal Heib) [1857603] - [infiniband] RDMA/hfi1: Remove hfi1_create_qp declaration (Kamal Heib) [1857603] - [infiniband] RDMA/ipoib: Return void from ipoib_mcast_stop_thread() (Kamal Heib) [1857603] - [infiniband] RDMA: Correct trivial kernel-doc inconsistencies (Kamal Heib) [1857603] - [infiniband] IB/srpt: Remove WARN_ON from srpt_cm_req_recv (Kamal Heib) [1857603] - [tools] tools/power turbostat: Support additional CPU model numbers (Steve Best) [1782718] - [net] udp_tunnel: add the ability to hard-code IANA VXLAN (Ivan Vecera) [1879204] - [tools] selftests: net: add a test for UDP tunnel info infra (Ivan Vecera) [1867211] - [netdrv] netdevsim: add UDP tunnel port offload support (Ivan Vecera) [1867211] - [net] ethtool: add tunnel info interface (Ivan Vecera) [1867211] - [net] ethtool: Make helpers public (Ivan Vecera) [1867211] - [net] udp_tunnel: add central NIC RX port offload infrastructure (Ivan Vecera) [1867211] - [net] udp_tunnel: re-number the offload tunnel types (Ivan Vecera) [1867211] - [fs] debugfs: make sure we can remove u32_array files cleanly (Ivan Vecera) [1867211] - [fs] debugfs: make debugfs_create_u32_array() return void (Ivan Vecera) [1867211] - [fs] debugfs: update documented return values of debugfs helpers (Ivan Vecera) [1867211]- [net] openvswitch: fix to make sure flow_lookup() is not preempted (Eelco Chaudron) [1888237] - [netdrv] powerpc/vnic: Extend "failover pending" window (Steve Best) [1897280] - [net] ipv6: Set SIT tunnel hard_header_len to zero (Davide Caratti) [1897244] - [net] ip_tunnel: fix over-mtu packet send fail without TUNNEL_DONT_FRAGMENT flags (Davide Caratti) [1897244] - [net] gre6: Fix reception with IP6_TNL_F_RCV_DSCP_COPY (Davide Caratti) [1897244] - [netdrv] vxlan: fix memleak of fdb (Davide Caratti) [1897244] - [net] vxlan: Ensure FDB dump is performed under RCU (Davide Caratti) [1897244] - [net] gre: refetch erspan header from skb->data after pskb_may_pull() (Davide Caratti) [1897244] - [net] erspan: fix the tun_info options_len check for erspan (Davide Caratti) [1897244] - [net] ip_gre: fix possible use-after-free in erspan_rcv (Davide Caratti) [1897244] - [net] erspan: fix error handling for erspan tunnel (Davide Caratti) [1897244] - [net] erspan: return PACKET_REJECT when the appropriate tunnel is not found (Davide Caratti) [1897244] - [netdrv] net: atlantic: fix build when object tree is separate (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Use readx_poll_timeout() for large timeout (Igor Russkikh) [1857861] - [netdrv] net: ethernet: aquantia: Fix wrong return value (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix PTP on AQC10X (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add hwmon getter for MAC temperature (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A0 ntuple filters (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use intermediate variable to improve readability a bit (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use U32_MAX in aq_hw_utils.c (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add support for 64-bit reads/writes (Igor Russkikh) [1857861] - [netdrv] net: atlantic: enable ipv6 support for TCP LSO and UDP GSO (Igor Russkikh) [1857861] - [netdrv] net: atlantic: PTP statistics (Igor Russkikh) [1857861] - [netdrv] net: atlantic: additional per-queue stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use u64_stats_update_* to protect access to 64-bit stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: split rx and tx per-queue stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make _get_sw_stats return count as return value (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use simple assignment in _get_stats and _get_sw_stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: move FRAC_PER_NS to aq_hw.h (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add support for FW 4.x (Igor Russkikh) [1857861] - [netdrv] net: atlantic: align return value of ver_match function with function name (Igor Russkikh) [1857861] - [netdrv] net: atlantic: disable PTP on AQC111, AQC112 (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix ip dst and ipv6 address filters (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix aq_ndev_start_xmit()'s return type (Igor Russkikh) [1857861] - [netdrv] net: atlantic: put ptp code under IS_REACHABLE check (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add alignment checks in hw_atl2_utils_fw.c (Igor Russkikh) [1857861] - [netdrv] net: atlantic: missing space in a comment in aq_nic.h (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix typo in aq_ring_tx_clean (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make aq_pci_func_init static (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Replace ENOTSUPP usage to EOPNOTSUPP (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix variable type in aq_ethtool_get_pauseparam (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: phy loopback support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: report link partner capabilities (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: flow control support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: EEE support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove baseX usage (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: half duplex support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: proper rss_ctrl1 (54c0) initialization (Igor Russkikh) [1857861] - [netdrv] net: atlantic: QoS implementation: min_rate (Igor Russkikh) [1857861] - [netdrv] net: atlantic: change the order of arguments for TC weight/credit setters (Igor Russkikh) [1857861] - [netdrv] net: atlantic: always use random TC-queue mapping for TX on A2 (Igor Russkikh) [1857861] - [netdrv] net: atlantic: automatically downgrade the number of queues if necessary (Igor Russkikh) [1857861] - [netdrv] net: atlantic: QoS implementation: max_rate (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make TCVEC2RING accept nic_cfg (Igor Russkikh) [1857861] - [netdrv] net: atlantic: per-TC queue statistics (Igor Russkikh) [1857861] - [netdrv] net: atlantic: QoS implementation: multi-TC support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: changes for multi-TC support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: move PTP TC initialization to a separate function (Igor Russkikh) [1857861] - [netdrv] net: atlantic: changes for multi-TC support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: unify MAC generation (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove check for boot code survivability before reset request (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove hw_atl_b0_hw_rss_set call from A2 code (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove TPO2 check from A0 code (Igor Russkikh) [1857861] - [netdrv] net: atlantic: rename AQ_NIC_RATE_2GS to AQ_NIC_RATE_2G5 (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use __packed instead of the full expansion (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2 ingress / egress hw configuration (Igor Russkikh) [1857861] - [netdrv] net: atlantic: basic A2 init/deinit hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: common functions needed for basic A2 init/deinit hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: HW bindings for basic A2 init/deinit hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add A2 RPF hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: HW bindings for A2 RFP (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2 hw_ops skeleton (Igor Russkikh) [1857861] - [netdrv] net: atlantic: minimal A2 fw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: minimal A2 HW bindings required for fw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2 driver-firmware interface (Igor Russkikh) [1857861] - [netdrv] net: atlantic: move IS_CHIP_FEATURE to aq_hw.h (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make hw_get_regs optional (Igor Russkikh) [1857861] - [netdrv] net: atlantic: simplify hw_get_fw_version() usage (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add hw_soft_reset, hw_prepare to hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add defines for 10M and EEE 100M link mode (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add A2 device IDs (Igor Russkikh) [1857861] - [netdrv] net: atlantic: update company name in the driver description (Igor Russkikh) [1857861] - [netdrv] aquantia: Fix the media type of AQC100 ethernet controller in the driver (Igor Russkikh) [1857861] - [netdrv] net: atlantic: MACSec offload statistics implementation (Igor Russkikh) [1857861] - [netdrv] net: aquantia: reject all unsupported coalescing params (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Replace zero-length array with flexible-array member (Igor Russkikh) [1857861] - [netdrv] net/aquantia: Delete module version (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix out of range usage of active_vlans array (Igor Russkikh) [1857861] - [netdrv] net: atlantic: possible fault in transition to hibernation (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix potential error handling (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix use after free kasan warn (Igor Russkikh) [1857861] - [netdrv] net: atlantic: better loopback mode handling (Igor Russkikh) [1857861] - [netdrv] net: atlantic: ptp gpio adjustments (Igor Russkikh) [1857861] - [netdrv] net: atlantic: check rpc result and wait for rpc address (Igor Russkikh) [1857861] - [netdrv] net: atlantic: checksum compat issue (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove duplicate entries (Igor Russkikh) [1857861] - [netdrv] net: atlantic: loopback configuration in improper place (Igor Russkikh) [1857861] - [netdrv] net: atlantic: broken link status on old fw (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Signedness bug in aq_vec_isr_legacy() (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make function 'aq_ethtool_get_priv_flags', 'aq_ethtool_set_priv_flags' static (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make symbol 'aq_pm_ops' static (Igor Russkikh) [1857861] - [netdrv] net: atlantic: change email domains to Marvell (Igor Russkikh) [1857861] - [netdrv] net: atlantic: implement UDP GSO offload (Igor Russkikh) [1857861] - [netdrv] net: atlantic: update flow control logic (Igor Russkikh) [1857861] - [netdrv] net: atlantic: stylistic renames (Igor Russkikh) [1857861] - [netdrv] net: atlantic: code style cleanup (Igor Russkikh) [1857861] - [netdrv] net: atlantic: loopback tests via private flags (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add fw configuration memory area (Igor Russkikh) [1857861] - [netdrv] net: atlantic: adding ethtool physical identification (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add msglevel configuration (Igor Russkikh) [1857861] - [netdrv] net: atlantic: refactoring pm logic (Igor Russkikh) [1857861] - [netdrv] net: atlantic: implement wake_phy feature (Igor Russkikh) [1857861] - [netdrv] net: atlantic: update firmware interface (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix return value check in aq_ptp_init() (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix error handling in aq_ptp_poll (Igor Russkikh) [1857861] - [netdrv] net: aquantia: remove unused including (Igor Russkikh) [1857861] - [netdrv] net: aquantia: make two symbols be static (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix unintention integer overflow on left shift (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix spelling mistake: tx_queus -> tx_queues (Igor Russkikh) [1857861] - [netdrv] net: aquantia: disable ptp object build if no config (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix warnings on endianness (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix var initialization warning (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add support for PIN funcs (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add support for Phy access (Igor Russkikh) [1857861] - [netdrv] net: aquantia: implement get_ts_info ethtool (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add support for ptp ioctls (Igor Russkikh) [1857861] - [netdrv] net: aquantia: rx filters for ptp (Igor Russkikh) [1857861] - [netdrv] net: aquantia: implement data PTP datapath (Igor Russkikh) [1857861] - [netdrv] net: aquantia: styling fixes on ptp related functions (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add PTP rings infrastructure (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add basic ptp_clock callbacks (Igor Russkikh) [1857861] - [netdrv] net: aquantia: unify styling of bit enums (Igor Russkikh) [1857861] - [netdrv] net: aquantia: PTP skeleton declarations and callbacks (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add an error handling in aq_nic_set_multicast_list (Igor Russkikh) [1857861] - [netdrv] net: aquantia: correctly handle macvlan and multicast coexistence (Igor Russkikh) [1857861] - [netdrv] net: aquantia: do not pass lro session with invalid tcp checksum (Igor Russkikh) [1857861] - [netdrv] net: aquantia: when cleaning hw cache it should be toggled (Igor Russkikh) [1857861] - [netdrv] net: aquantia: temperature retrieval fix (Igor Russkikh) [1857861] - [netdrv] net: aquantia: Fix aq_vec_isr_legacy() return value (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix out of memory condition on rx side (Igor Russkikh) [1857861] - [netdrv] net: aquantia: linkstate irq should be oneshot (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix limit of vlan filters (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix removal of vlan 0 (Igor Russkikh) [1857861] - [netdrv] net: aquantia: implement vlan offload configuration (Igor Russkikh) [1857861] - [netdrv] net: aquantia: vlan offloads logic in datapath (Igor Russkikh) [1857861] - [netdrv] net: aquantia: adding fields and device features for vlan offload (Igor Russkikh) [1857861] - [netdrv] net: aquantia: added vlan offload related macros and functions (Igor Russkikh) [1857861] - [netdrv] net: aquantia: make all files GPL-2.0-only (Igor Russkikh) [1857861] - [netdrv] net: aquantia: replace internal driver version code with uts (Igor Russkikh) [1857861] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (Igor Russkikh) [1857861] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 308 (Igor Russkikh) [1857861] - [include] net: phy: introduce phy_read_mmd_poll_timeout macro (Josef Oskera) [1892739] - [include] net: phy: introduce phy_read_poll_timeout macro (Josef Oskera) [1892739] - [netdrv] phy: add device-managed devm_mdiobus_register (Josef Oskera) [1892740] - [include] net: add helper eth_hw_addr_crc (Josef Oskera) [1892738] - [netdrv] LiquidIO: mark liquidio and liquidio_vf as deprecated in RHEL8 (Stefan Assmann) [1878178] - [net] tcp: remove SOCK_QUEUE_SHRUNK (Paolo Abeni) [1890058] - [net] tcp: fix receive window update in tcp_add_backlog() (Paolo Abeni) [1890058] - [net] tcp: md5: allow changing MD5 keys in all socket states (Paolo Abeni) [1890058] - [net] tcp: fix SO_RCVLOWAT possible hangs under high mem pressure (Paolo Abeni) [1890058] - [net] tcp: md5: do not send silly options in SYNCOOKIES (Paolo Abeni) [1890058] - [net] tcp: grow window for OOO packets only for SACK flows (Paolo Abeni) [1890058] - [net] tcp: fix error recovery in tcp_zerocopy_receive() (Paolo Abeni) [1890058] - [net] tcp: fix SO_RCVLOWAT hangs with fat skbs (Paolo Abeni) [1890058] - [net] tcp: fix rx timestamp behavior for tcp_recvmsg (Paolo Abeni) [1890058] - [fs] smb3: smbdirect support can be configured by default (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Do not schedule work to send immediate packet on every receive (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Properly process errors on ib_post_send (Leif Sahlberg) [1887940] - [fs] cifs: Allocate crypto structures on the fly for calculating signatures of incoming packets (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Update receive credits before sending and deal with credits roll back on failure before sending (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Check send queue size before posting a send (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Merge code to track pending packets (Leif Sahlberg) [1887940] - [fs] cifs: Allocate encryption header through kmalloc (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Check and extend sender credits in interrupt context (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Calculate the correct maximum packet size for segmented SMBDirect send/receive (Leif Sahlberg) [1887940] - [net] core: device_rename: Use rwsem instead of a seqcount (Patrick Talbert) [1883310]- [tools] perf tools: Add bpf image check to __map__is_kmodule (Michael Petlan) [1873270] - [tools] perf tools: Add support for PERF_RECORD_KSYMBOL_TYPE_OOL (Michael Petlan) [1873270] - [tools] perf record: Don't clear event's period if set by a term (Michael Petlan) [1873270] - [tools] perf bench: The do_run_multi_threaded() function must use IS_ERR(perf_session__new()) (Michael Petlan) [1873270] - [tools] perf top: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set (Michael Petlan) [1873270] - [tools] perf record: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set (Michael Petlan) [1873270] - [tools] perf evsel: Don't set sample_regs_intr/sample_regs_user for dummy event (Michael Petlan) [1873270] - [tools] perf stat: Turn off summary for interval mode by default (Michael Petlan) [1873270] - [tools] perf trace: Fix off by ones in memset() after realloc() in arches using libaudit (Michael Petlan) [1873270] - [tools] perf top/report: Fix infinite loop in the TUI for grouped events (Michael Petlan) [1873270] - [tools] redhat: use local hashmap library in perf (Michael Petlan) [1873270] - [tools] libtraceevent: Fix build with binutils 2.35 (Michael Petlan) [1873270] - [tools] perf tools: Fix record failure when mixed with ARM SPE event (Michael Petlan) [1873270] - [tools] perf tests: Fix test 68 zstd compression for s390 (Michael Petlan) [1873270] - [tools] tools lib traceevent: Fix memory leak in process_dynamic_array_len (Michael Petlan) [1873270] - [tools] perf tools: Sync hashmap.h with libbpf's (Michael Petlan) [1873270] - [tools] libsubcmd: Fix OPT_CALLBACK_SET() (Michael Petlan) [1873270] - [tools] perf report TUI: Remove needless 'dummy' event from menu (Michael Petlan) [1873270] - [tools] perf intel-pt: Fix PEBS sample for XMM registers (Michael Petlan) [1873270] - [tools] perf intel-pt: Fix displaying PEBS-via-PT with registers (Michael Petlan) [1873270] - [tools] perf intel-pt: Fix recording PEBS-via-PT with registers (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add proper KBUFFER_TYPE_TIME_STAMP handling (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add API to read time information from kbuffer (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix time chart call tree (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix zero id in call tree 'Find' result (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix zero id in call graph 'Find' result (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix unexpanded 'Find' result (Michael Petlan) [1873270] - [tools] perf record: Fix duplicated sideband events with Intel PT system wide tracing (Michael Petlan) [1873270] - [tools] perf scripts python: export-to-postgresql.py: Fix struct.pack() int argument (Michael Petlan) [1873270] - [tools] perf build: Fix error message when asking for -fsanitize=address without required libraries (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add handler for __builtin_expect() (Michael Petlan) [1873270] - [tools] tools lib traceevent: Handle __attribute__((user)) in field names (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add append() function helper for appending strings (Michael Petlan) [1873270] - [tools] perf script: Initialize zstd_data (Michael Petlan) [1873270] - [tools] perf pmu: Remove unused declaration (Michael Petlan) [1873270] - [tools] perf parse-events: Fix an old style declaration (Michael Petlan) [1873270] - [tools] perf parse-events: Fix an incompatible pointer (Michael Petlan) [1873270] - [tools] perf bpf: Fix bpf prologue generation (Michael Petlan) [1873270] - [tools] perf probe: Fix user attribute access in kprobes (Michael Petlan) [1873270] - [tools] perf stat: Fix NULL pointer dereference (Michael Petlan) [1873270] - [tools] perf report: Fix NULL pointer dereference in hists__fprintf_nr_sample_events() (Michael Petlan) [1873270] - [tools] perf tools: Remove some duplicated includes (Michael Petlan) [1873270] - [tools] perf symbols: Fix kernel maps for kcore and eBPF (Michael Petlan) [1873270] - [tools] perf stat: Ensure group is defined on top of the same cpu mask (Michael Petlan) [1873270] - [tools] perf libdw: Fix off-by 1 relative directory includes (Michael Petlan) [1873270] - [tools] perf arm-spe: Support synthetic events (Michael Petlan) [1873270] - [tools] perf auxtrace: Add four itrace options (Michael Petlan) [1873270] - [tools] perf tools: Move arm-spe-pkt-decoder.h/c to the new dir (Michael Petlan) [1873270] - [tools] perf test: Initialize memory in dwarf-unwind (Michael Petlan) [1873270] - [tools] perf tests: Don't tail call optimize in unwind test (Michael Petlan) [1873270] - [tools] tools compiler.h: Add attribute to disable tail calls (Michael Petlan) [1873270] - [tools] perf build: Add a LIBPFM4=1 build test entry (Michael Petlan) [1873270] - [tools] perf tools: Add optional support for libpfm4 (Michael Petlan) [1873270] - [tools] perf tools: Correct license on jsmn JSON parser (Michael Petlan) [1873270] - [tools] perf jit: Fix inaccurate DWARF line table (Michael Petlan) [1873270] - [tools] perf jvmti: Remove redundant jitdump line table entries (Michael Petlan) [1873270] - [tools] perf build: Add NO_SDT=1 to the default set of build tests (Michael Petlan) [1873270] - [tools] perf build: Add NO_LIBCRYPTO=1 to the default set of build tests (Michael Petlan) [1873270] - [tools] perf build: Add NO_SYSCALL_TABLE=1 to the build tests (Michael Petlan) [1873270] - [tools] perf build: Remove libaudit from the default feature checks (Michael Petlan) [1873270] - [tools] perf trace: Grow the syscall table as needed when using libaudit (Michael Petlan) [1873270] - [tools] perf trace: Use zalloc() to make sure all fields are zeroed in the syscalltbl constructor (Michael Petlan) [1873270] - [tools] perf trace: Remove union from syscalltbl, all the fields are needed (Michael Petlan) [1873270] - [tools] perf build: Allow explicitely disabling the NO_SYSCALL_TABLE variable (Michael Petlan) [1873270] - [tools] perf build: Group the NO_SYSCALL_TABLE logic (Michael Petlan) [1873270] - [tools] perf intel-pt: Refine kernel decoding only warning message (Michael Petlan) [1873270] - [tools] perf record: Respect --no-switch-events (Michael Petlan) [1873270] - [tools] perf script: Fix --call-trace for Intel PT (Michael Petlan) [1873270] - [tools] perf evlist: Disable 'immediate' events last (Michael Petlan) [1873270] - [tools] perf kcore_copy: Fix module map when there are no modules loaded (Michael Petlan) [1873270] - [tools] perf jvmti: Fix demangling Java symbols (Michael Petlan) [1873270] - [tools] perf tests: Add test for the java demangler (Michael Petlan) [1873270] - [tools] perf jvmti: Do not report error when missing debug information (Michael Petlan) [1873270] - [tools] perf jvmti: Fix jitdump for methods without debug info (Michael Petlan) [1873270] - [tools] perf symbols: Fix debuginfo search for Ubuntu (Michael Petlan) [1873270] - [tools] perf parse: Add 'struct parse_events_state' pointer to scanner (Michael Petlan) [1873270] - [tools] perf stat: Do not pass avg to generic_metric (Michael Petlan) [1873270] - [tools] perf tests: Consider subtests when searching for user specified tests (Michael Petlan) [1873270] - [tools] perf list: Add metrics to command line usage (Michael Petlan) [1873270] - [tools] perf script: Don't force less for non tty output with --xed (Michael Petlan) [1873270] - [tools] perf metricgroup: Remove unnecessary ', ' from events (Michael Petlan) [1873270] - [tools] perf metricgroup: Add options to not group or merge (Michael Petlan) [1873270] - [tools] perf metricgroup: Remove duped metric group events (Michael Petlan) [1873270] - [tools] perf metricgroup: Order event groups by size (Michael Petlan) [1873270] - [tools] perf metricgroup: Delay events string creation (Michael Petlan) [1873270] - [tools] perf metricgroup: Use early return in add_metric (Michael Petlan) [1873270] - [tools] perf metricgroup: Always place duration_time last (Michael Petlan) [1873270] - [tools] perf metricgroup: Free metric_events on error (Michael Petlan) [1873270] - [tools] perf util: Fix potential SEGFAULT in put_tracepoints_path error path (Michael Petlan) [1873270] - [tools] perf util: Fix memory leak of prefix_if_not_in (Michael Petlan) [1873270] - [tools] perf ftrace: Detect workload failure (Michael Petlan) [1873270] - [tools] perf ftrace: Trace system wide if no target is given (Michael Petlan) [1873270] - [tools] perf branch: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [tools] perf config: Add stat.big-num support (Michael Petlan) [1873270] - [tools] perf bpf-loader: Add missing '*' for key_scan_pos (Michael Petlan) [1873270] - [tools] perf stat: Report summary for interval mode (Michael Petlan) [1873270] - [tools] perf stat: Save aggr value to first member of prev_raw_counts (Michael Petlan) [1873270] - [tools] perf stat: Copy counts from prev_raw_counts to evsel->counts (Michael Petlan) [1873270] - [tools] perf counts: Reset prev_raw_counts counts (Michael Petlan) [1873270] - [tools] perf stat: Fix wrong per-thread runtime stat for interval mode (Michael Petlan) [1873270] - [tools] perf expr: Allow numbers to be followed by a dot (Michael Petlan) [1873270] - [tools] perf metricgroup: Make 'evlist_used' variable a bitmap instead of array of bools (Michael Petlan) [1873270] - [tools] perf stat: Fail on extra comma while parsing events (Michael Petlan) [1873270] - [tools] perf script: Better align register values in dump (Michael Petlan) [1873270] - [tools] perf stat: POWER9 metrics: expand "ICT" acronym (Michael Petlan) [1873270] - [tools] perf tools: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [tools] perf intel-pt: Use allocated branch stack for PEBS sample (Michael Petlan) [1873270] - [tools] perf docs: Introduce security.txt file to document related issues (Michael Petlan) [1873270] - [tools] perf tool: Make perf tool aware of SELinux access control (Michael Petlan) [1873270] - [tools] perf docs: Extend CAP_SYS_ADMIN with CAP_PERFMON where needed (Michael Petlan) [1873270] - [tools] perf expr: Migrate expr ids table to a hashmap (Michael Petlan) [1873270] - [tools] perf tools: Grab a copy of libbpf's hashmap (Michael Petlan) [1873270] - [tools] perf stat: Fix duration_time value for higher intervals (Michael Petlan) [1873270] - [tools] perf trace: Fix compilation error for make NO_LIBBPF=1 DEBUG=1 (Michael Petlan) [1873270] - [tools] perf beauty: Allow the CC used in the arch errno names script to acccept CFLAGS (Michael Petlan) [1873270] - [tools] perf trace: Fix the selection for architectures to generate the errno name tables (Michael Petlan) [1873270] - [tools] perf test: Improve pmu event metric testing (Michael Petlan) [1873270] - [tools] perf test: Provide a subtest callback to ask for the reason for skipping a subtest (Michael Petlan) [1873270] - [tools] perf parse-events: Make add PMU verbose output clearer (Michael Petlan) [1873270] - [tools] perf expr: Fix memory leaks in metric bison (Michael Petlan) [1873270] - [tools] perf expr: Test parsing of floating point numbers (Michael Petlan) [1873270] - [tools] perf record: Use an eventfd to wakeup when done (Michael Petlan) [1873270] - [tools] tools feature: Rename HAVE_EVENTFD to HAVE_EVENTFD_SUPPORT (Michael Petlan) [1873270] - [tools] perf evsel: Initialize evsel->per_pkg_mask to NULL in evsel__init() (Michael Petlan) [1873270] - [tools] perf evsel: Fix 2 memory leaks (Michael Petlan) [1873270] - [tools] perf parse-events: Fix incorrect conversion of 'if () free()' to 'zfree()' (Michael Petlan) [1873270] - [tools] perf tools: Fix is_bpf_image function logic (Michael Petlan) [1873270] - [tools] perf c2c: Fix 'perf c2c record -e list' to show the default events used (Michael Petlan) [1873270] - [tools] perf record: Add dummy event during system wide synthesis (Michael Petlan) [1873270] - [tools] perf evsel: Dummy events never triggers, no need to ask for PERF_SAMPLE_BRANCH_STACK (Michael Petlan) [1873270] - [tools] perf parse-events: Use strcmp() to compare the PMU name (Michael Petlan) [1873270] - [tools] perf expr: Print a debug message for division by zero (Michael Petlan) [1873270] - [tools] perf expr: Debug lex if debugging yacc (Michael Petlan) [1873270] - [tools] perf expr: Parse numbers as doubles (Michael Petlan) [1873270] - [tools] perf expr: Increase max other (Michael Petlan) [1873270] - [tools] perf expr: Allow ',' to be an other token (Michael Petlan) [1873270] - [tools] perf metrics: Fix parse errors in skylake metrics (Michael Petlan) [1873270] - [tools] perf metrics: Fix parse errors in cascade lake metrics (Michael Petlan) [1873270] - [tools] perf expr: Allow for unlimited escaped characters in a symbol (Michael Petlan) [1873270] - [tools] perf script: Enable IP fields for callchains (Michael Petlan) [1873270] - [tools] perf callchain: Setup callchain properly in pipe mode (Michael Petlan) [1873270] - [tools] perf session: Try to read pipe data from file (Michael Petlan) [1873270] - [tools] perf tools: Do not seek in pipe fd during tracing data processing (Michael Petlan) [1873270] - [tools] perf tools: Do not display extra info when there is nothing to build (Michael Petlan) [1873270] - [tools] perf probe: Do not show the skipped events (Michael Petlan) [1873270] - [tools] perf probe: Check address correctness by map instead of _etext (Michael Petlan) [1873270] - [tools] perf probe: Fix to check blacklist address correctly (Michael Petlan) [1873270] - [tools] perf probe: Accept the instance number of kretprobe event (Michael Petlan) [1873270] - [tools] perf counts: Rename perf_evsel__*counts() to evsel__*counts() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__w_cache* to evsel__w_cache* (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__new*() to evsel__new*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__get_config_term() & friends to evsel__env() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__fprintf() to evsel__fprintf() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__resort*() to evsel__resort*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__object_config() to evsel__object_config() (Michael Petlan) [1873270] - [tools] perf cs-etm: Move definition of 'traceid_list' global variable from header file (Michael Petlan) [1873270] - [tools] libsymbols kallsyms: Move hex2u64 out of header (Michael Petlan) [1873270] - [tools] libsymbols kallsyms: Parse using io api (Michael Petlan) [1873270] - [tools] perf bench: Add kallsyms parsing (Michael Petlan) [1873270] - [tools] perf: cs-etm: Update to build with latest opencsd version (Michael Petlan) [1873270] - [tools] perf symbol: Fix kernel symbol address display (Michael Petlan) [1873270] - [tools] perf inject: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf annotate: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf trace: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf script: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf sched: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf lock: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf kmem: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf stat: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__store_ids() to evsel__store_id() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__env() to evsel__env() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__group_idx() to evsel__group_idx() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__fallback() to evsel__fallback() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__has*() to evsel__has*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__{prev, next}() to evsel__{prev, next}() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__parse_sample*() to evsel__parse_sample*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__read*() to *evsel__read() (Michael Petlan) [1873270] - [tools] perf evsel: Ditch perf_evsel__cmp(), not used for quite a while (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__is_*() to evsel__is*() (Michael Petlan) [1873270] - [tools] perf pmu: Add perf_pmu__find_by_type helper (Michael Petlan) [1873270] - [tools] tools feature: Add support for detecting libpfm4 (Michael Petlan) [1873270] - [tools] perf doc: Pass ASCIIDOC_EXTRA as an argument (Michael Petlan) [1873270] - [tools] perf mem2node: Avoid double free related to realloc (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__{str, int}val() and other tracepoint field metehods to to evsel__*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__open_per_*() to evsel__open_per_*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__*filter*() to evsel__*filter*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__*set_sample_*() to *evsel__*set_sample_*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__group_desc() to evsel__group_desc() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__*name() to *evsel__*name() (Michael Petlan) [1873270] - [tools] perf evsel: Rename __perf_evsel__sample_size() to __evsel__sample_size() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__calc_id_pos() to evsel__calc_id_pos() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__config*() to evsel__config*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__exit() to evsel__exit() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__is_aux_event() to evsel__is_aux_event() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__find_pmu() to evsel__find_pmu() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__compute_deltas() to evsel__compute_deltas() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__nr_cpus() to evsel__nr_cpus() (Michael Petlan) [1873270] - [tools] perf evsel: Rename 'struct perf_evsel__sb_cb_t' to 'struct evsel__sb_cb_t' (Michael Petlan) [1873270] - [tools] perf intel-pt: Update documentation about using /proc/kcore (Michael Petlan) [1873270] - [tools] perf intel-pt: Update documentation about itrace G and L options (Michael Petlan) [1873270] - [tools] perf intel-pt: Add support for synthesizing branch stacks for regular events (Michael Petlan) [1873270] - [tools] perf thread-stack: Add thread_stack__br_sample_late() (Michael Petlan) [1873270] - [tools] perf evsel: Add support for synthesized branch stack sample type (Michael Petlan) [1873270] - [tools] perf auxtrace: Add option to synthesize branch stack for regular events (Michael Petlan) [1873270] - [tools] perf intel-pt: Change branch stack support to use thread-stacks (Michael Petlan) [1873270] - [tools] perf intel-pt: Consolidate thread-stack use condition (Michael Petlan) [1873270] - [tools] perf thread-stack: Add branch stack support (Michael Petlan) [1873270] - [tools] perf tools: Simplify checking if SMT is active (Michael Petlan) [1873270] - [tools] perf tools: Fix reading new topology attribute "core_cpus" (Michael Petlan) [1873270] - [tools] libperf evlist: Fix a refcount leak (Michael Petlan) [1873270] - [tools] perf parse-events: Fix another memory leaks found on parse_events() (Michael Petlan) [1873270] - [tools] perf parse-events: Fix memory leaks found on parse_events (Michael Petlan) [1873270] - [tools] perf parse-events: Fix memory leaks found on parse_events (Michael Petlan) [1873270] - [tools] libperf: Add NULL pointer check for cpu_map iteration and NULL assignment for all_cpus (Michael Petlan) [1873270] - [tools] perf record: Move side band evlist setup to separate routine (Michael Petlan) [1873270] - [tools] perf record: Introduce --switch-output-event (Michael Petlan) [1873270] - [tools] libsubcmd: Introduce OPT_CALLBACK_SET() (Michael Petlan) [1873270] - [tools] perf evlist: Allow reusing the side band thread for more purposes (Michael Petlan) [1873270] - [tools] perf evlist: Move the sideband thread routines to separate object (Michael Petlan) [1873270] - [tools] perf parse-events: Add parse_events_option() variant that creates evlist (Michael Petlan) [1873270] - [tools] perf bpf: Decouple creating the evlist from adding the SB event (Michael Petlan) [1873270] - [tools] perf top: Move sb_evlist to 'struct perf_top' (Michael Petlan) [1873270] - [tools] perf record: Move sb_evlist to 'struct record' (Michael Petlan) [1873270] - [tools] perf tools: Move routines that probe for perf API features to separate file (Michael Petlan) [1873270] - [tools] perf vendor events power9: Add hv_24x7 socket/chip level metric events (Michael Petlan) [1873270] - [tools] perf tools: Enable Hz/hz prinitg for --metric-only option (Michael Petlan) [1873270] - [tools] perf tests expr: Added test for runtime param in metric expression (Michael Petlan) [1873270] - [tools] perf metricgroups: Enhance JSON/metric infrastructure to handle "?" (Michael Petlan) [1873270] - [tools] perf pmu: Fix function name in comment, its get_cpuid_str(), not get_cpustr() (Michael Petlan) [1873270] - [tools] perf report: Fix warning assignment of 0/1 to bool variable (Michael Petlan) [1873270] - [tools] perf tools: Remove unneeded semicolons (Michael Petlan) [1873270] - [tools] perf c2c: Remove unneeded semicolon (Michael Petlan) [1873270] - [tools] libtraceevent: Remove unneeded semicolon (Michael Petlan) [1873270] - [tools] perf script: Remove extraneous newline in perf_sample__fprintf_regs() (Michael Petlan) [1873270] - [tools] perf synthetic events: Remove use of sscanf from /proc reading (Michael Petlan) [1873270] - [tools] tools api: Add a lightweight buffered reading api (Michael Petlan) [1873270] - [tools] perf bench: Add a multi-threaded synthesize benchmark (Michael Petlan) [1873270] - [tools] perf record: Add num-synthesize-threads option (Michael Petlan) [1873270] - [tools] perf test session topology: Fix data path (Michael Petlan) [1873270] - [tools] perf stat: Improve runtime stat for interval mode (Michael Petlan) [1873270] - [tools] perf stat: Zero all the 'ena' and 'run' array slot stats for interval mode (Michael Petlan) [1873270] - [tools] perf evlist: Remove duplicate headers (Michael Petlan) [1873270] - [tools] perf bench: Fix div-by-zero if runtime is zero (Michael Petlan) [1873270] - [tools] perf cgroup: Avoid needless closing of unopened fd (Michael Petlan) [1873270] - [tools] perf hist: Add fast path for duplicate entries check (Michael Petlan) [1873270] - [tools] perf c2c: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf top: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf script: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf report: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf callchain: Stitch LBR call stack (Michael Petlan) [1873270] - [tools] perf callchain: Save previous cursor nodes for LBR stitching approach (Michael Petlan) [1873270] - [tools] perf thread: Save previous sample for LBR stitching approach (Michael Petlan) [1873270] - [tools] perf thread: Add a knob for LBR stitch approach (Michael Petlan) [1873270] - [tools] perf machine: Factor out lbr_callchain_add_lbr_ip() (Michael Petlan) [1873270] - [tools] perf machine: Factor out lbr_callchain_add_kernel_ip() (Michael Petlan) [1873270] - [tools] perf machine: Refine the function for LBR call stack reconstruction (Michael Petlan) [1873270] - [tools] perf machine: Remove the indent in resolve_lbr_callchain_sample (Michael Petlan) [1873270] - [tools] perf header: Support CPU PMU capabilities (Michael Petlan) [1873270] - [tools] perf parser: Add support to specify rXXX event with pmu (Michael Petlan) [1873270] - [tools] perf doc: allow ASCIIDOC_EXTRA to be an argument (Michael Petlan) [1873270] - [tools] perf pmu: Add support for PMU capabilities (Michael Petlan) [1873270] - [tools] tools lib traceevent: Take care of return value of asprintf (Michael Petlan) [1873270] - [tools] perf stat: Force error in fallback on :k events (Michael Petlan) [1873270] - [tools] perf tools: Add support for leader-sampling with AUX area events (Michael Petlan) [1873270] - [tools] perf evlist: Allow multiple read formats (Michael Petlan) [1873270] - [tools] perf evsel: Rearrange perf_evsel__config_leader_sampling() (Michael Petlan) [1873270] - [tools] perf evlist: Move leader-sampling configuration (Michael Petlan) [1873270] - [tools] perf evsel: Move and globalize perf_evsel__find_pmu() and perf_evsel__is_aux_event() (Michael Petlan) [1873270] - [tools] perf intel-pt: Add support for synthesizing callchains for regular events (Michael Petlan) [1873270] - [tools] perf evsel: Add support for synthesized sample type (Michael Petlan) [1873270] - [tools] perf evsel: Be consistent when looking which evsel PERF_SAMPLE_ bits are set (Michael Petlan) [1873270] - [tools] perf thread-stack: Add thread_stack__sample_late() (Michael Petlan) [1873270] - [tools] perf auxtrace: Add an option to synthesize callchains for regular events (Michael Petlan) [1873270] - [tools] perf auxtrace: For reporting purposes, un-group AUX area event (Michael Petlan) [1873270] - [tools] perf s390-cpumsf: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf cs-etm: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf arm-spe: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf intel-bts: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf intel-pt: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf auxtrace: Add ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf metrictroup: Split the metricgroup__add_metric function (Michael Petlan) [1873270] - [tools] perf expr: Add expr_scanner_ctx object (Michael Petlan) [1873270] - [tools] perf expr: Add expr_ prefix for parse_ctx and parse_id (Michael Petlan) [1873270] - [tools] perf synthetic-events: save 4kb from 2 stack frames (Michael Petlan) [1873270] - [tools] tools api fs: Make xxx__mountpoint() more scalable (Michael Petlan) [1873270] - [tools] perf bench: Add event synthesis benchmark (Michael Petlan) [1873270] - [tools] perf script: Simplify auxiliary event printing functions (Michael Petlan) [1873270] - [tools] perf tools: Support CAP_PERFMON capability (Michael Petlan) [1873270] - [tools] perf annotate: Add basic support for bpf_image (Michael Petlan) [1873270] - [tools] perf machine: Set ksymbol dso as loaded on arrival (Michael Petlan) [1873270] - [tools] perf tools: Synthesize bpf_trampoline/dispatcher ksymbol event (Michael Petlan) [1873270] - [tools] perf stat: Honour --timeout for forked workloads (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Add hw_len wherever missing (Michael Petlan) [1873270] - [kernel] perf: Fix task_function_call() error handling (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Fix RAPL config variable bug (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Add AMD Fam17h RAPL support (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Make perf_probe_msr() more robust and flexible (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Flip logic on default events visibility (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Refactor to share the RAPL code between Intel and AMD CPUs (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Move RAPL support to common x86 code (Michael Petlan) [1873270] - [kernel] perf/core: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [x86] perf/x86: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [x86] perf/x86/intel: Add more available bits for OFFCORE_RESPONSE of Intel Tremont (Michael Petlan) [1873270] - [x86] perf/x86/intel/pt: Drop pointless NULL assignment (Michael Petlan) [1873270] - [kernel] perf: Add cond_resched() to task_function_call() (Michael Petlan) [1873270] - [powerpc] powerpc/perf: open access for CAP_PERFMON privileged process (Michael Petlan) [1873270] - [kernel] perf/core: open access to probes for CAP_PERFMON privileged process (Michael Petlan) [1873270] - [kernel] perf/core: Open access to the core for CAP_PERFMON privileged process (Michael Petlan) [1873270] - [include] perf/core: Fix !CONFIG_PERF_EVENTS build warnings and failures (Michael Petlan) [1873270] - [security] perf_event: Add support for LSM and SELinux checks (Michael Petlan) [1873270] - [powerpc] powerpc/perf/hv-24x7: Fix inconsistent output values incase multiple hv-24x7 events run (Michael Petlan) [1873270] - [powerpc] powerpc/hv-24x7: Add rtas call in hv-24x7 driver to get processor details (Michael Petlan) [1873270] - [powerpc] powerpc/hv-24x7: Add sysfs files inside hv-24x7 device to show processor details (Michael Petlan) [1873270] - [documentation] Documentation/ABI: Add ABI documentation for chips and sockets (Michael Petlan) [1873270] - [powerpc] powerpc/pseries: Update hv-24x7 information after migration (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Fix ptrace code that muck around with address/len (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Fix length calculation for unaligned target (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Introduce macros for watchpoint length (Michael Petlan) [1873270] - [powerpc] powerpc/perf: fix imc allocation failure handling (Michael Petlan) [1873270] - [powerpc] powerpc/perf/24x7: use rb_entry (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Fix MMCRA corruption by bhrb_filter (Michael Petlan) [1873270] - [powerpc] perf/core, arch/powerpc: use PERF_PMU_CAP_NO_EXCLUDE for exclusion incapable PMUs (Michael Petlan) [1873270] - [powerpc] Powerpc/perf: Wire up PMI throttling (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Remove l2 bus events from HW cache event array (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Add constraints for power9 l2/l3 bus events (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Fix unit_sel/cache_sel checks (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Cleanup cache_sel bits comment (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Fix thresholding counter data for unknown type (Michael Petlan) [1873270] - [fs] writeback: Drop I_DIRTY_TIME_EXPIRE (Waiman Long) [1860031] - [fs] writeback: Fix sync livelock due to b_dirty_time processing (Waiman Long) [1860031] - [fs] writeback: Avoid skipping inode writeback (Waiman Long) [1860031] - [fs] writeback: Protect inode->i_io_list with inode->i_lock (Waiman Long) [1860031] - [fs] dcache: sort the freeing-without-RCU-delay mess for good (Waiman Long) [1860031] - [net] udp: Improve load balancing for SO_REUSEPORT. (Davide Caratti) [1894075] - [net] udp: Fix wrong clean up for IS_UDPLITE macro (Davide Caratti) [1894075] - [fs] ext4: disallow modifying DAX inode flag if inline_data has been set (Eric Sandeen) [1838344] - [include] dax: Fix compilation for CONFIG_DAX && !CONFIG_FS_DAX (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Fix stack overflow when mounting fsdax pmem device (Eric Sandeen) [1838876 1854346 1838344] - [dax] dm: Call proper helper to determine dax support (Eric Sandeen) [1838876 1854346 1838344] - [md] dm/dax: Fix table reference counts (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: fix detection of dax support for non-persistent memory block devices (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: do not print error message for non-persistent memory block device (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: Fix incorrect argument passed to xas_set_err() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Support that ioctl(SETXFLAGS/GETXFLAGS) can set/get inode DAX on XFS (Eric Sandeen) [1838876 1854346 1838344] - [dax] drivers/dax: Expand lock scope to cover the use of addresses (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/dax: Remove unused size parameter (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: print error message by pr_info() in __generic_fsdax_supported() (Eric Sandeen) [1838876 1854346 1838344] - [fs] ext4: avoid race conditions when remounting with options that change dax (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Update xfs_ioctl_setattr_dax_invalidate() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Combine xfs_diflags_to_linux() and xfs_diflags_to_iflags() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Create function xfs_inode_should_enable_dax() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Make DAX mount option a tri-state (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Change XFS_MOUNT_DAX to XFS_MOUNT_DAX_ALWAYS (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Remove unnecessary initialization of i_rwsem (Eric Sandeen) [1838876 1854346 1838344] - [documentation] Documentation/dax: Update DAX enablement for ext4 (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Introduce DAX inode flag (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Remove jflag variable (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Make DAX mount option a tri-state (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Only change S_DAX on inode load (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Update ext4_should_use_dax() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Change EXT4_MOUNT_DAX to EXT4_MOUNT_DAX_ALWAYS (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Narrow scope of DAX check in setflags (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs: Introduce DCACHE_DONTCACHE (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs: Lift XFS_IDONTCACHE to the VFS layer (Eric Sandeen) [1838876 1854346 1838344] - [documentation] Documentation/dax: Update Usage section (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/stat: Define DAX statx attribute (Eric Sandeen) [1838876 1854346 1838344] - [block] fs: Remove unneeded IS_DAX() check in io_is_direct() (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Move mandatory ->zero_page_range() check in alloc_dax() (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax, iomap: Add helper dax_iomap_zero() to zero a range (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: Use new dax zero page method for zeroing a page (Eric Sandeen) [1838876 1854346 1838344] - [md] dm,dax: Add dax zero_page_range operation (Eric Sandeen) [1838876 1854346 1838344] - [s390] s390, dcssblk, dax: Add dax zero_page_range operation to dcssblk driver (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax, pmem: Add a dax operation zero_page_range (Eric Sandeen) [1838876 1854346 1838344] - [nvdimm] pmem: Add functions for reading/writing page to/from pmem (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs: Constify vma argument to vma_is_dax (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: pass NOWAIT flag to iomap_apply (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Get rid of fs_dax_get_by_host() helper (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: Pass dax_dev instead of bdev to dax_writeback_mapping_range() (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Fix alloc_dax_region() compile warning (Eric Sandeen) [1838876 1854346 1838344] - [fs] xfs: disable map_sync for async flush (Eric Sandeen) [1838876 1854346 1838344] - [fs] ext4: disable map_sync for async flush (Eric Sandeen) [1838876 1854346 1838344] - [include] dax: check synchronous mapping is supported (Eric Sandeen) [1838876 1854346 1838344] - [dax] libnvdimm: add dax_dev sync flag (Eric Sandeen) [1838876 1854346 1838344] - [nvdimm] libnvdimm: nd_region flush callback support (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: only allow FSSETXATTR to set DAX flag on files and dirs (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: teach vfs_ioc_fssetxattr_check to check extent size hints (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: teach vfs_ioc_fssetxattr_check to check project id info (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: create a generic checking function for FS_IOC_FSSETXATTR (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: create a generic checking and prep function for FS_IOC_SETFLAGS (Eric Sandeen) [1838876 1854346 1838344] - [dax] drivers/dax: Allow to include DEV_DAX_PMEM as builtin (Eric Sandeen) [1838876 1854346 1838344] - [netdrv] net: intel: Remove in_interrupt() warnings (Corinna Vinschen) [1838746] - [netdrv] igb: read PBA number from flash (Corinna Vinschen) [1838746] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Corinna Vinschen) [1838746] - [netdrv] treewide: Use fallthrough pseudo-keyword (Corinna Vinschen) [1838746] - [netdrv] igb: use eth_zero_addr() to clear mac address (Corinna Vinschen) [1838746] - [netdrv] igb: Remove unnecessary usages of memset (Corinna Vinschen) [1838746] - [netdrv] igb: reinit_locked() should be called with rtnl_lock (Corinna Vinschen) [1838746] - [netdrv] ethernet/intel: Convert fallthrough code comments (Corinna Vinschen) [1838746] - [netdrv] net/intel: remove driver versions from Intel drivers (Corinna Vinschen) [1838746] - [netdrv] igb: make igb_set_fc_watermarks() return void (Corinna Vinschen) [1838746] - [netdrv] igb: Report speed and duplex as unknown when device is runtime suspended (Corinna Vinschen) [1838746] - [netdrv] igb: convert to use i2c_new_client_device() (Corinna Vinschen) [1838746] - [net] Bluetooth: Allow suspend even when preparation has failed (Gopal Tiwari) [1881485] - [net] Bluetooth: Check scan state before disabling during suspend (Gopal Tiwari) [1881485] - [fs] fuse: fix the ->direct_IO() treatment of iov_iter (Miklos Szeredi) [1875608] - [net] openvswitch: handle DNAT tuple collision (Dumitru Ceara) [1877128] - [net] xdp: Rename convert_to_xdp_frame in xdp_convert_buff_to_frame (Petr Oros) [1867194]- [fs] NFSv4.2: fix failure to unregister shrinker (Scott Mayhew) [1897988] - [tools] cpupower: Provide online and offline CPU information (Diego Domingos) [1893779] - [net] net/smc: improve return codes for SMC-Dv2 (Claudio Imbrenda) [1731027] - [s390] s390/ism: fix incorrect system EID (Claudio Imbrenda) [1731027] - [net] net/smc: fix suppressed return code (Claudio Imbrenda) [1731027] - [net] net/smc: fix null pointer dereference in smc_listen_decline() (Claudio Imbrenda) [1731027] - [net] net/smc: fix invalid return code in smcd_new_buf_create() (Claudio Imbrenda) [1731027] - [net] net/smc: fix valid DMBE buffer sizes (Claudio Imbrenda) [1731027] - [net] net/smc: fix use-after-free of delayed events (Claudio Imbrenda) [1731027] - [net] net/smc: restore smcd_version when all ISM V2 devices failed to init (Claudio Imbrenda) [1731027] - [net] net/smc: cleanup buffer usage in smc_listen_work() (Claudio Imbrenda) [1731027] - [net] net/smc: consolidate unlocking in same function (Claudio Imbrenda) [1731027] - [net] net/smc: use an array to check fields in system EID (Claudio Imbrenda) [1731027] - [net] net/smc: send ISM devices with unique chid in CLC proposal (Claudio Imbrenda) [1731027] - [net] net/smc: CLC decline - V2 enhancements (Claudio Imbrenda) [1731027] - [net] net/smc: introduce CLC first contact extension (Claudio Imbrenda) [1731027] - [net] net/smc: CLC accept / confirm V2 (Claudio Imbrenda) [1731027] - [net] net/smc: determine accepted ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: build and send V2 CLC proposal (Claudio Imbrenda) [1731027] - [net] net/smc: determine proposed ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: introduce list of pnetids for Ethernet devices (Claudio Imbrenda) [1731027] - [net] net/smc: introduce CHID callback for ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: introduce System Enterprise ID (SEID) (Claudio Imbrenda) [1731027] - [net] net/smc: prepare for more proposed ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: split CLC confirm/accept data to be sent (Claudio Imbrenda) [1731027] - [net] net/smc: separate find device functions (Claudio Imbrenda) [1731027] - [net] net/smc: CLC header fields renaming (Claudio Imbrenda) [1731027] - [net] net/smc: remove constant and introduce helper to check for a pnet id (Claudio Imbrenda) [1731027] - [netdrv] vmxnet3: fix cksum offload issues for non-udp tunnels (Cathy Avery) [1868451] - [netdrv] vmxnet3: use correct tcp hdr length when packet is encapsulated (Cathy Avery) [1868451] - [scsi] scsi: vmw_pvscsi: Use true, false for adapter->use_msg (Cathy Avery) [1895014] - [scsi] scsi: vmw_pvscsi: Silence dma mapping errors (Cathy Avery) [1895014] - [scsi] scsi: vmw_pvscsi: Fix swiotlb operation (Cathy Avery) [1895014] - [scsi] scsi: vmw_pscsi: use sg helper to iterate over scatterlist (Cathy Avery) [1895014] - [scsi] Revert "vmw_pvscsi: Fixed to work with SG_CHAIN" (Cathy Avery) [1895014] - [scsi] scsi: vmw_pscsi: switch to generic DMA API (Cathy Avery) [1895014] - [netdrv] mdiobus: Disable preemption upon u64_stats update (Petr Oros) [1889849] - [net] u64_stats: Document writer non-preemptibility requirement (Petr Oros) [1889849] - [netdrv] phy: fixed_phy: Remove unused seqcount (Petr Oros) [1889849] - [net] net/smc: fix double kfree in smc_listen_work() (Claudio Imbrenda) [1847444] - [net] net/smc: check variable before dereferencing in smc_close.c (Claudio Imbrenda) [1847444] - [net] net/smc: use separate work queues for different worker types (Claudio Imbrenda) [1847444] - [net] net/smc: use the retry mechanism for netlink messages (Claudio Imbrenda) [1847444] - [net] net/smc: immediate freeing in smc_lgr_cleanup_early() (Claudio Imbrenda) [1847444] - [net] net/smc: reduce smc_listen_decline() calls (Claudio Imbrenda) [1847444] - [net] net/smc: improve server ISM device determination (Claudio Imbrenda) [1847444] - [net] net/smc: common routine for CLC accept and confirm (Claudio Imbrenda) [1847444] - [net] net/smc: dynamic allocation of CLC proposal buffer (Claudio Imbrenda) [1847444] - [net] net/smc: introduce better field names (Claudio Imbrenda) [1847444] - [net] net/smc: reduce active tcp_listen workers (Claudio Imbrenda) [1847444] - [net] net/smc: fix sock refcounting in case of termination (Claudio Imbrenda) [1847444] - [net] net/smc: reset sndbuf_desc if freed (Claudio Imbrenda) [1847444] - [net] net/smc: fix toleration of fake add_link messages (Claudio Imbrenda) [1847444] - [net] net/smc: Prevent kernel-infoleak in __smc_diag_dump() (Claudio Imbrenda) [1847444] - [s390] s390/ism: fix error return code in ism_probe() (Claudio Imbrenda) [1847444] - [s390] s390/zcrypt: Introduce Failure Injection feature (Philipp Rudo) [1851124] - [s390] s390/zcrypt: move ap_msg param one level up the call chain (Philipp Rudo) [1851124] - [s390] s390/ap/zcrypt: revisit ap and zcrypt error handling (Philipp Rudo) [1851124] - [s390] s390/ap: Support AP card SCLP config and deconfig operations (Philipp Rudo) [1851124] - [s390] s390/sclp: Add support for SCLP AP adapter config/deconfig (Philipp Rudo) [1851124] - [s390] s390/ap: add card/queue deconfig state (Philipp Rudo) [1851124] - [s390] s390/ap: add error response code field for ap queue devices (Philipp Rudo) [1851124] - [s390] s390/ap: split ap queue state machine state from device state (Philipp Rudo) [1851124] - [crypto] s390/zcrypt: New config switch CONFIG_ZCRYPT_DEBUG (Philipp Rudo) [1851124] - [s390] s390/zcrypt: introduce msg tracking in zcrypt functions (Philipp Rudo) [1851124] - [s390] s390/ap: rework crypto config info and default domain code (Philipp Rudo) [1851124] - [s390] s390/zcrypt: provide cex4 cca sysfs attributes for cex3 (Philipp Rudo) [1851124] - [s390] s390/ap: rename and clarify ap state machine related stuff (Philipp Rudo) [1851124] - [s390] s390/zcrypt: split ioctl function into smaller code units (Philipp Rudo) [1851124] - [s390] s390/zcrypt: code beautification and struct field renames (Philipp Rudo) [1851124] - [s390] s390/zcrypt: fix smatch warnings (Philipp Rudo) [1851124] - [s390] s390/ap: introduce new ap function ap_get_qdev() (Philipp Rudo) [1851124] - [s390] s390/zcrypt: replace snprintf/sprintf with scnprintf (Philipp Rudo) [1851124] - [s390] s390/zcrypt: Use scnprintf() for avoiding potential buffer overflow (Philipp Rudo) [1851124] - [s390] s390/zcrypt: Support for CCA protected key block version 2 (Philipp Rudo) [1851124] - [s390] s390/zcrypt: fix card and queue total counter wrap (Philipp Rudo) [1851124] - [s390] s390/zcrypt: move ap device reset from bus to driver code (Philipp Rudo) [1851124] - [s390] s390/zcrypt: Fix CCA cipher key gen with clear key value function (Philipp Rudo) [1851124] - [s390] s390/zcrypt: handle new reply code FILTERED_BY_HYPERVISOR (Philipp Rudo) [1851124] - [fs] NFSv4: Wait for stateid updates after CLOSE/OPEN_DOWNGRADE (Benjamin Coddington) [1888612] - [fs] NFSv4.x recover from pre-mature loss of openstateid (Benjamin Coddington) [1888612] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in CLOSE/OPEN_DOWNGRADE (Benjamin Coddington) [1888612] - [hv] hv: vmbus: Add timeout to vmbus_wait_for_unload (Mohammed Gamal) [1888980] - [net] sched: act_gate: Unlock ->tcfa_lock in tc_setup_flow_action() (Ivan Vecera) [1874071] - [net] sched: act_ct: Fix adding udp port mangle operation (Ivan Vecera) [1874071] - [net] sched: Fix suspicious RCU usage while accessing tcf_tunnel_info (Ivan Vecera) [1874071] - [net] sched: get rid of qdisc->padded (Ivan Vecera) [1874071] - [net] sched: check error pointer in tcf_dump_walker() (Ivan Vecera) [1874071] - [net] sched: remove a redundant goto chain check (Ivan Vecera) [1874071] - [net] sched: cls_u32: Replace one-element array with flexible-array member (Ivan Vecera) [1874071] - [net] sched: commit action insertions together (Ivan Vecera) [1874071] - [net] sched: defer tcf_idr_insert() in tcf_action_init_1() (Ivan Vecera) [1874071] - [net] sched: Remove unused function qdisc_queue_drop_head() (Ivan Vecera) [1874071] - [net] sched: taprio: Fix allowing too small intervals (Ivan Vecera) [1874071] - [net] sched: sch_generic: aviod concurrent reset and enqueue op for lockless qdisc (Ivan Vecera) [1874071] - [net] sched: skip an unnecessay check (Ivan Vecera) [1874071] - [net] sched: act_ife: load meta modules before tcf_idr_check_alloc() (Ivan Vecera) [1874071] - [net] sched: fix error path in red_init() (Ivan Vecera) [1874071] - [net] sched: taprio: Fix using wrong queues in gate mask (Ivan Vecera) [1874071] - [net] sched: Use fallthrough pseudo-keyword (Ivan Vecera) [1874071] - [net] netlink: consistently use NLA_POLICY_EXACT_LEN() (Ivan Vecera) [1874071] - [net] sched: act_ct: fix miss set mru for ovs after defrag in act_ct (Ivan Vecera) [1874071] - [net] sched: cls_u32: Use struct_size() helper (Ivan Vecera) [1874071] - [net] sched: act_pedit: Use flex_array_size() helper in memcpy() (Ivan Vecera) [1874071] - [net] sched: initialize timer earlier in red_init() (Ivan Vecera) [1874071] - [net] sched: cls_flower: Add hash info to flow classification (Ivan Vecera) [1874071] - [net] flow_dissector: add packet hash dissection (Ivan Vecera) [1874071] - [net] sched: sch_api: add missing rcu read lock to silence the warning (Ivan Vecera) [1874071] - [tools] tc-testing: Add tdc to kselftests (Ivan Vecera) [1874071] - [net] sched: Do not drop root lock in tcf_qevent_handle() (Ivan Vecera) [1874071] - [net] sched: kerneldoc fixes (Ivan Vecera) [1874071] - [net] sched: Pass qdisc reference in struct flow_block_offload (Ivan Vecera) [1874071] - [net] sched: Use fallthrough pseudo-keyword (Ivan Vecera) [1874071] - [net] sched: Allow changing default qdisc to FQ-PIE (Ivan Vecera) [1874071] - [net] qos: police action offloading parameter 'burst' change to the original value (Ivan Vecera) [1874071] - [tools] selftests: forwarding: Add a RED test for SW datapath (Ivan Vecera) [1874071] - [net] sched: sch_red: Add qevents "early_drop" and "mark" (Ivan Vecera) [1874071] - [net] sched: sch_red: Split init and change callbacks (Ivan Vecera) [1874071] - [net] sched: Introduce helpers for qevent blocks (Ivan Vecera) [1874071] - [net] sched: sch_cake: add RFC 8622 LE PHB support to CAKE diffserv handling (Ivan Vecera) [1874071] - [net] qos: police action add index for tc flower offloading (Ivan Vecera) [1874071] - [net] qos: add tc police offloading action with max frame size limit (Ivan Vecera) [1874071] - [net] sched: tcindex_change: Remove redundant null check (Ivan Vecera) [1874071] - [net] sched: Remove redundant skb null check (Ivan Vecera) [1874071] - [net] sched: Remove redundant condition in qdisc_graft (Ivan Vecera) [1874071] - [net] sched: cls_u32: Use struct_size() in kzalloc() (Ivan Vecera) [1874071] - [net] sched: taprio: Use struct_size() in kzalloc() (Ivan Vecera) [1874071] - [net] vlan: consolidate VLAN parsing code and limit max parsing depth (Ivan Vecera) [1874071] - [net] flow_offload: Move rhashtable inclusion to the source file (Ivan Vecera) [1874071] - [net] sched: act_ct: fix restore the qdisc_skb_cb after defrag (Ivan Vecera) [1874071] - [net] sched: fix a memory leak in atm_tc_init() (Ivan Vecera) [1874071] - [net] sched: act_ct: add miss tcf_lastuse_update. (Ivan Vecera) [1874071] - [net] sched: consistently handle layer3 header accesses in the presence of VLANs (Ivan Vecera) [1874071] - [net] tunnel: Propagate ECT(1) when decapsulating as recommended by RFC6040 (Ivan Vecera) [1874071] - [net] sched: sch_cake: fix a few style nits (Ivan Vecera) [1874071] - [net] sched: sch_cake: don't call diffserv parsing code when it is not needed (Ivan Vecera) [1874071] - [net] sched: sch_cake: don't try to reallocate or unshare skb unconditionally (Ivan Vecera) [1874071] - [tools] tc-testing: avoid action cookies with odd length. (Ivan Vecera) [1874071] - [net] sched: Add MODULE_DESCRIPTION entries to network modules (Ivan Vecera) [1874071] - [tools] tc-testing: update geneve options match in tunnel_key unit tests (Ivan Vecera) [1874071] - [net] flow_offload: fix flow_indr_dev_unregister path (Ivan Vecera) [1874071] - [net] flow_offload: use flow_indr_block_cb_alloc/remove function (Ivan Vecera) [1874071] - [net] flow_offload: add flow_indr_block_cb_alloc/remove function (Ivan Vecera) [1874071] - [net] sched: act_gate: fix configuration of the periodic timer (Ivan Vecera) [1874071] - [net] sched: act_gate: fix NULL dereference in tcf_gate_init() (Ivan Vecera) [1874071] - [net] flow_offload: remove indirect flow_block declarations leftover (Ivan Vecera) [1874071] - [net] sched: export __netdev_watchdog_up() (Ivan Vecera) [1874071] - [net] sched: act_ct: add nat mangle action only for NAT-conntrack (Ivan Vecera) [1874071] - [net] sched: sch_cake: Take advantage of skb->hash where appropriate (Ivan Vecera) [1874071] - [net] sched: fix a couple of splats in the error path of tfc_gate_init() (Ivan Vecera) [1874071] - [net] sched: get rid of unnecessary dev_qdisc_reset() (Ivan Vecera) [1874071] - [net] sched: avoid resetting active qdisc for multiple times (Ivan Vecera) [1874071] - [net] sched: add a tracepoint for qdisc creation (Ivan Vecera) [1874071] - [net] sched: add tracepoints for qdisc_reset() and qdisc_destroy() (Ivan Vecera) [1874071] - [net] sched: use qdisc_reset() in qdisc_destroy() (Ivan Vecera) [1874071] - [net] sched: fix infinite loop in sch_fq_pie (Ivan Vecera) [1874071] - [net] sched: fix reporting the first-time use timestamp (Ivan Vecera) [1874071] - [net] tracing: Fix header include guards in trace event headers (Ivan Vecera) [1874071] - [netdrv] ipvlan: fix device features (Davide Caratti) [1892621] - [netdrv] ipvlan: consolidate TSO flags using NETIF_F_ALL_TSO (Davide Caratti) [1892621] - [netdrv] ipvlan: set hw_enc_features like macvlan (Davide Caratti) [1892621] - [tools] ACPI: Use valid link to the ACPI specification (David Arcari) [1857138] - [tools] cpupower: Replace HTTP links with HTTPS ones (David Arcari) [1857138] - [tools] cpupower: Fix NULL but dereferenced coccicheck errors (David Arcari) [1857138] - [tools] cpupower: Fix comparing pointer to 0 coccicheck warns (David Arcari) [1857138] - [tools] cpupower: Remove unneeded semicolon (David Arcari) [1857138] - [tools] cpupower: .gitignore: add SPDX License Identifier (David Arcari) [1857138] - [tools] cpupower: avoid multiple definition with gcc -fno-common (David Arcari) [1857138] - [tools] cpupower: Revert library ABI changes from commit ae2917093fb60bdc1ed3e (David Arcari) [1857138] - [tools] cpupower: ToDo: Update ToDo with ideas for per_cpu_schedule handling (David Arcari) [1857138] - [tools] tools/power/cpupower: Fix initializer override in hsw_ext_cstates (David Arcari) [1857138] - [tools] cpupower: update German translation (David Arcari) [1857138] - [tools] tools/power/cpupower: fix 64bit detection when cross-compiling (David Arcari) [1857138] - [tools] cpupower: Add missing newline at end of file (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 285 (David Arcari) [1857138] - [tools] cpupower: correct spelling of interval (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 167 (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 166 (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (David Arcari) [1857138] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 155 (David Arcari) [1857138] - [tools] cpupower: Add SPDX license identifier for more missed files (David Arcari) [1857138] - [tools] tools/power/cpupower: Display boost frequency separately (David Arcari) [1857138] - [tools] cpupower : Auto-completion for cpupower tool (David Arcari) [1857138] - [tools] tools/power/cpupower: fix compilation with STATIC=true (David Arcari) [1857138] - [tools] cpupower: remove stringop-truncation waring (David Arcari) [1857138] - [tools] cpupower: convert ISO_8859-1 text comments to utf-8 (David Arcari) [1857138] - [x86] x86/resctrl: Support wider MBM counters (Puneet Sethi) [1834658] - [x86] x86/resctrl: Support CPUID enumeration of MBM counter width (Puneet Sethi) [1834658] - [x86] x86/resctrl: Maintain MBM counter width per resource (Puneet Sethi) [1834658] - [x86] x86/resctrl: Query LLC monitoring properties once during boot (Puneet Sethi) [1834658] - [x86] x86/resctrl: Remove unnecessary RMID checks (Puneet Sethi) [1834658] - [x86] x86/cpu: Move resctrl CPUID code to resctrl/ (Puneet Sethi) [1834658] - [x86] x86/resctrl: Rename asm/resctrl_sched.h to asm/resctrl.h (Puneet Sethi) [1834658] - [x86] x86/resctrl: Preserve CDP enable over CPU hotplug (Puneet Sethi) [1834658] - [net] af_packet: TPACKET_V3: fix fill status rwlock imbalance (Ivan Vecera) [1889829] - [net] packet: tpacket_rcv: do not increment ring index on drop (Ivan Vecera) [1889829] - [net] af_packet: TPACKET_V3: replace busy-wait loop (Ivan Vecera) [1889829] - [net] SUNRPC: Fix svc_flush_dcache() (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: Be consistent about mirror index types (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: Ensure we initialise the mirror bsizes correctly on read (Scott Mayhew) [1888214] - [fs] NFSv4.2: fix client's attribute cache management for copy_file_range (Scott Mayhew) [1888214] - [fs] nfs: Fix security label length not being reset (Scott Mayhew) [1888214] - [net] SUNRPC: stop printk reading past end of string (Scott Mayhew) [1888214] - [fs] NFS: Zero-stateid SETATTR should first return delegation (Scott Mayhew) [1888214] - [fs] NFSv4.1 handle ERR_DELAY error reclaiming locking state on delegation recall (Scott Mayhew) [1888214] - [net] SUNRPC: remove duplicate include (Scott Mayhew) [1888214] - [fs] nfsd: fix oops on mixed NFSv4/NFSv3 client access (Scott Mayhew) [1888214] - [fs] NFS: Fix flexfiles read failover (Scott Mayhew) [1888214] - [fs] fs: nfs: delete repeated words in comments (Scott Mayhew) [1888214] - [fs] rpc_pipefs: convert comma to semicolon (Scott Mayhew) [1888214] - [fs] NFS: Don't return layout segments that are in use (Scott Mayhew) [1888214] - [fs] NFS: Don't move layouts to plh_return_segs list while in use (Scott Mayhew) [1888214] - [fs] NFS: Add layout segment info to pnfs read/write/commit tracepoints (Scott Mayhew) [1888214] - [fs] NFS: Add tracepoints for layouterror and layoutstats (Scott Mayhew) [1888214] - [fs] NFS: Report the stateid + status in trace_nfs4_layoutreturn_on_close() (Scott Mayhew) [1888214] - [fs] NFSv4.2: xattr cache: get rid of cache discard work queue (Scott Mayhew) [1888214] - [fs] NFS: remove redundant initialization of variable result (Scott Mayhew) [1888214] - [net] svcrdma: CM event handler clean up (Scott Mayhew) [1888214] - [net] svcrdma: Remove transport reference counting (Scott Mayhew) [1888214] - [net] svcrdma: Fix another Receive buffer leak (Scott Mayhew) [1888214] - [trace] SUNRPC: Refresh the show_rqstp_flags() macro (Scott Mayhew) [1888214] - [fs] nfsd: netns.h: delete a duplicated word (Scott Mayhew) [1888214] - [net] sunrpc: destroy rpc_inode_cachep after unregister_filesystem (Scott Mayhew) [1888214] - [fs] freezer: Add unsafe version of freezable_schedule_timeout_interruptible() for NFS (Scott Mayhew) [1888214] - [fs] NFSv4.2: add client side xattr caching (Scott Mayhew) [1888214] - [fs] NFSv4.2: hook in the user extended attribute handlers (Scott Mayhew) [1888214] - [fs] NFSv4.2: add the extended attribute proc functions (Scott Mayhew) [1888214] - [fs] nfs: make the buf_to_pages_noslab function available to the nfs code (Scott Mayhew) [1888214] - [fs] nfs: define and use the NFS_INO_INVALID_XATTR flag (Scott Mayhew) [1888214] - [fs] NFS: Update symbolic flags displayed by trace events (Scott Mayhew) [1888214] - [fs] nfs: modify update_changeattr to deal with regular files (Scott Mayhew) [1888214] - [fs] NFSv4.2: query the extended attribute access bits (Scott Mayhew) [1888214] - [fs] nfs: define nfs_access_get_cached function (Scott Mayhew) [1888214] - [fs] NFSv4.2: add client side XDR handling for extended attributes (Scott Mayhew) [1888214] - [fs] NFSv4.2: query the server for extended attribute support (Scott Mayhew) [1888214] - [fs] NFSv4.2: define limits and sizes for user xattr handling (Scott Mayhew) [1888214] - [include] nfs: add client side only definitions for user xattrs (Scott Mayhew) [1888214] - [fs] nfsd: Use seq_putc() in two functions (Scott Mayhew) [1888214] - [net] svcrdma: Display chunk completion ID when posting a rw_ctxt (Scott Mayhew) [1888214] - [net] svcrdma: Record send_ctxt completion ID in trace_svcrdma_post_send() (Scott Mayhew) [1888214] - [net] svcrdma: Introduce Send completion IDs (Scott Mayhew) [1888214] - [net] svcrdma: Record Receive completion ID in svc_rdma_decode_rqst (Scott Mayhew) [1888214] - [net] svcrdma: Introduce Receive completion IDs (Scott Mayhew) [1888214] - [trace] svcrdma: Introduce infrastructure to support completion IDs (Scott Mayhew) [1888214] - [net] svcrdma: Add common XDR encoders for RDMA and Read segments (Scott Mayhew) [1888214] - [net] svcrdma: Add common XDR decoders for RDMA and Read segments (Scott Mayhew) [1888214] - [net] SUNRPC: Add helpers for decoding list discriminators symbolically (Scott Mayhew) [1888214] - [include] svcrdma: Remove declarations for functions long removed (Scott Mayhew) [1888214] - [net] svcrdma: Clean up trace_svcrdma_send_failed() tracepoint (Scott Mayhew) [1888214] - [net] svcrdma: Consolidate send_error helper functions (Scott Mayhew) [1888214] - [net] svcrdma: Make svc_rdma_send_error_msg() a global function (Scott Mayhew) [1888214] - [net] svcrdma: Eliminate return value for svc_rdma_send_error_msg() (Scott Mayhew) [1888214] - [net] svcrdma: Add a @status parameter to svc_rdma_send_error_msg() (Scott Mayhew) [1888214] - [net] svcrdma: Add @rctxt parameter to svc_rdma_send_error() functions (Scott Mayhew) [1888214] - [net] svcrdma: Remove save_io_pages() call from send_error_msg() (Scott Mayhew) [1888214] - [net] svcrdma: Fix page leak in svc_rdma_recv_read_chunk() (Scott Mayhew) [1888214] - [net] SUNRPC: Augment server-side rpcgss tracepoints (Scott Mayhew) [1888214] - [fs] nfsd: add fattr support for user extended attributes (Scott Mayhew) [1888214] - [fs] nfsd: implement the xattr functions and en/decode logic (Scott Mayhew) [1888214] - [fs] nfsd: add structure definitions for xattr requests / responses (Scott Mayhew) [1888214] - [fs] nfsd: take xattr bits into account for permission checks (Scott Mayhew) [1888214] - [fs] nfsd: define xattr functions to call into their vfs counterparts (Scott Mayhew) [1888214] - [fs] nfsd: add defines for NFSv4.2 extended attribute support (Scott Mayhew) [1888214] - [fs] nfsd: split off the write decode code into a separate function (Scott Mayhew) [1888214] - [fs] xattr: add a function to check if a namespace is supported (Scott Mayhew) [1888214] - [fs] xattr: break delegations in {set, remove}xattr (Scott Mayhew) [1888214] - [uapi] nfs, nfsd: NFSv4.2 extended attribute protocol definitions (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: The mirror count could depend on the layout segment range (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: Clean up redundant calls to pnfs_put_lseg() (Scott Mayhew) [1888214] - [fs] NFS: Allow applications to speed up readdir+statx() using AT_STATX_DONT_SYNC (Scott Mayhew) [1888214] - [include] NFS: Replace zero-length array with flexible-array (Scott Mayhew) [1888214] - [include] nfs4: Remove unneeded semicolon (Scott Mayhew) [1888214] - [tools] selftests/livepatch: adopt to newer sysctl error format (Yannick Cote) [1869880] - [tools] selftests/livepatch: Use "comm" instead of "diff" for dmesg (Yannick Cote) [1869880] - [tools] selftests/livepatch: add test delimiter to dmesg (Yannick Cote) [1869880] - [tools] selftests/livepatch: refine dmesg 'taints' in dmesg comparison (Yannick Cote) [1869880] - [tools] selftests/livepatch: Don't clear dmesg when running tests (Yannick Cote) [1869880] - [lib] selftests/livepatch: fix mem leaks in test-klp-shadow-vars (Yannick Cote) [1869880] - [lib] selftests/livepatch: more verification in test-klp-shadow-vars (Yannick Cote) [1869880] - [lib] selftests/livepatch: rework test-klp-shadow-vars (Yannick Cote) [1869880] - [lib] selftests/livepatch: simplify test-klp-callbacks busy target tests (Yannick Cote) [1869880] - [tools] selftests: Install settings files to fix TIMEOUT failures (Yannick Cote) [1869880] - [cpufreq] cpufreq: intel_pstate: Fix intel_pstate_get_hwp_max() for turbo disabled (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Free memory only when turning off (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Add ->offline and ->online callbacks (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Tweak the EPP sysfs interface (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Update cached EPP in the active mode (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Refuse to turn off with HWP enabled (Puneet Sethi) [1881199] - [documentation] Documentation: fix pm/intel_pstate build warning and wording (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Implement passive mode with HWP enabled (Puneet Sethi) [1881199] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Fix cpuinfo_max_freq when MSR_TURBO_RATIO_LIMIT is 0 (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Fix EPP setting via sysfs in active mode (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Rearrange the storing of new EPP values (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Avoid enabling HWP if EPP is not supported (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Clean up aperf_mperf_shift description (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Supply struct attribute description for get_aperf_mperf_shift() (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Fix static checker warning for epp variable (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Allow raw energy performance preference value (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Allow enable/disable energy efficiency (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Add one more OOB control bit (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Only mention the BIOS disabling turbo mode once (Puneet Sethi) [1881199] - [documentation] Documentation: intel_pstate: update links for references (Puneet Sethi) [1881199] - [documentation] Documentation: PM: Unify copyright notices (Puneet Sethi) [1881199] - [documentation] Documentation: PM: Add SPDX license tags to multiple files (Puneet Sethi) [1881199] - [documentation] cpufreq: intel_pstate: Documentation: Add references sections (Puneet Sethi) [1881199] - [documentation] Documentation: intel_pstate: Clarify coordination of P-State limits (Puneet Sethi) [1881199] - [documentation] Documentation: intel_pstate: Add base_frequency information (Puneet Sethi) [1881199] - [i2c] i2c: ismt: Remove call to memset after dmam_alloc_coherent (Tony Camuso) [1875395] - [i2c] i2c: ismt: Add support for Intel Cedar Fork (Tony Camuso) [1875395] - [documentation] docs: net: fm10k: add documentation for fm10k driver (Vladis Dronov) [1838728] - [netdrv] net: fm10k: reject unsupported coalescing params (Vladis Dronov) [1838728] - [netdrv] intel: Replace zero-length array with flexible-array member (Vladis Dronov) [1838728] - [netdrv] net: Use skb accessors in network drivers (Vladis Dronov) [1838728] - [netdrv] hdlc_ppp: add range checks in ppp_cp_parse_cr() (Guillaume Nault) [1882082] {CVE-2020-25643}- [pinctrl] pinctrl: sunrisepoint: Modify COMMUNITY macros to be consistent (David Arcari) [1783488] - [pinctrl] pinctrl: cannonlake: Modify COMMUNITY macros to be consistent (David Arcari) [1783488] - [pinctrl] pinctrl: tigerlake: Fix register offsets for TGL-H variant (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Update header block to reflect direct dependencies (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Switch to use intel_pinctrl_get_soc_data() (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Extract intel_pinctrl_get_soc_data() helper for wider use (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Use fallthrough pseudo-keyword (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Fix pin being driven low for a while on gpiod_get(..., GPIOD_OUT_HIGH) (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Drop no-op ACPI_PTR() call (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Make use of for_each_requested_gpio_in_range() (David Arcari) [1783488] - [include] gpiolib: Introduce for_each_requested_gpio_in_range() macro (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Protect IO in few call backs by lock (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Split intel_config_get() to three functions (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Drop the only label in the code for consistency (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Get rid of redundant 'else' in intel_config_set_debounce() (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Make use of IRQ_RETVAL() (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Reduce scope of the lock (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Disable input and output buffer when switching to GPIO (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Allow drivers to define ACPI address space ID (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Allow drivers to define total amount of IRQs per community (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Move npins closer to pin_base in struct intel_community (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Update description in struct intel_community (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Use platform_get_irq_optional() explicitly (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Introduce new flag to force GPIO base to be 0 (David Arcari) [1783488] - [pinctrl] pinctrl: tigerlake: Use generic flag for special GPIO base treatment (David Arcari) [1783488] - [pinctrl] pinctrl: icelake: Use generic flag for special GPIO base treatment (David Arcari) [1783488] - [pinctrl] pinctrl: cannonlake: Use generic flag for special GPIO base treatment (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Enable pin configuration setting for GPIO chip (David Arcari) [1783488] - [pinctrl] pinctrl: sunrisepoint: Fix PAD lock register offset for SPT-H (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Mark expected switch fall-throughs (David Arcari) [1783488] - [kernel] mm: disable proactive compaction by default (Rafael Aquini) [1848427] - [mm] mm: use unsigned types for fragmentation score (Rafael Aquini) [1848427] - [mm] mm: fix compile error due to COMPACTION_HPAGE_ORDER (Rafael Aquini) [1848427] - [mm] mm: proactive compaction (Rafael Aquini) [1848427] - [i2c] i2c: mlxbf: I2C_MLXBF should depend on MELLANOX_PLATFORM (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Update author and maintainer email info (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Update reference clock frequency (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Remove unecessary wrapper functions (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Fix resrticted cast warning of sparse (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Add CONFIG_ACPI to guard ACPI function call (Alaa Hleihel) [1655741 1655709] - [documentation] dt-bindings: i2c: I2C binding for Mellanox BlueField SoC (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: I2C SMBus driver for Mellanox BlueField SoC (Alaa Hleihel) [1655741 1655709] - [misc] misc: eeprom: ee1004: convert to i2c_new_dummy_device (Alaa Hleihel) [1655741] - [misc] eeprom: ee1004: Deal with nack on page selection (Alaa Hleihel) [1655741] - [misc] eeprom: ee1004: Move selected page detection to a separate function (Alaa Hleihel) [1655741] - [misc] eeprom: New ee1004 driver for DDR4 memory (Alaa Hleihel) [1655741] - [net] xfrm: Use correct address family in xfrm_state_find (Xin Long) [1892641] - [net] xfrm: clone whole liftime_cur structure in xfrm_do_migrate (Xin Long) [1892641] - [net] xfrm: clone XFRMA_SEC_CTX in xfrm_do_migrate (Xin Long) [1892641] - [net] xfrm: clone XFRMA_REPLAY_ESN_VAL in xfrm_do_migrate (Xin Long) [1892641] - [net] xfrm: clone XFRMA_SET_MARK in xfrm_do_migrate (Xin Long) [1892641] - [net] ip_vti: Fix unused variable warning (Xin Long) [1892641] - [net] xfrm: Make the policy hold queue work with VTI. (Xin Long) [1892641] - [s390] s390/qeth: delay draining the TX buffers (Philipp Rudo) [1847443] - [s390] s390/qeth: strictly order bridge address events (Philipp Rudo) [1847443] - [s390] s390/qeth: unify structs for bridge port state (Philipp Rudo) [1847443] - [s390] s390/qeth: copy less data from bridge state events (Philipp Rudo) [1847443] - [s390] s390/qeth: don't let HW override the configured port role (Philipp Rudo) [1847443] - [s390] s390/qeth: don't disable address events during initialization (Philipp Rudo) [1847443] - [s390] s390/qeth: make queue lock a proper spinlock (Philipp Rudo) [1847443] - [s390] s390/qeth: use to_delayed_work() (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up qeth_l3_send_setdelmc()'s declaration (Philipp Rudo) [1847443] - [s390] s390/qeth: use all configured RX buffers (Philipp Rudo) [1847443] - [s390] s390/qeth: don't process empty bridge port events (Philipp Rudo) [1847443] - [s390] s390/qeth: integrate RX refill worker with NAPI (Philipp Rudo) [1847443] - [s390] s390/qeth: tolerate pre-filled RX buffer (Philipp Rudo) [1847443] - [s390] s390/qdio: remove internal polling in non-thinint path (Philipp Rudo) [1847443] - [s390] s390/qdio: allow to scan all 128 Input SBALs (Philipp Rudo) [1847443] - [s390] s390/qdio: fix statistics for 128 SBALs (Philipp Rudo) [1847443] - [s390] s390/qeth: constify the MPC initialization data (Philipp Rudo) [1847443] - [s390] s390/qeth: unify RX-mode hashtables (Philipp Rudo) [1847443] - [s390] s390/qeth: cleanup OAT code (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up a magic number in the OAT callback (Philipp Rudo) [1847443] - [s390] s390/qeth: use u64_to_user_ptr() in the OAT code (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up error handling for isolation mode cmds (Philipp Rudo) [1847443] - [s390] s390/qeth: don't clear the configured isolation mode (Philipp Rudo) [1847443] - [s390] s390/qeth: only init the isolation mode when necessary (Philipp Rudo) [1847443] - [s390] s390/qeth: fine-tune errno when cmds are cancelled (Philipp Rudo) [1847443] - [s390] s390/qeth: reject unsupported link type earlier (Philipp Rudo) [1847443] - [s390] s390/qeth: let isolation mode override HW offload restrictions (Philipp Rudo) [1847443] - [s390] s390/qeth: fix error handling for isolation mode cmds (Philipp Rudo) [1847443] - [s390] s390/qdio: warn about unexpected SLSB states (Philipp Rudo) [1847443] - [s390] s390/qdio: clean up usage of qdio_data (Philipp Rudo) [1847443] - [s390] s390/qdio: reduce SLSB writes during Input Queue processing (Philipp Rudo) [1847443] - [s390] s390/qdio: fine-tune SLSB update (Philipp Rudo) [1847443] - [s390] s390/cio, s390/qeth: cleanup PNSO CHSC (Philipp Rudo) [1847443] - [s390] s390/qdio: remove q->first_to_kick (Philipp Rudo) [1847443] - [s390] s390/qdio: fix up qdio_start_irq() kerneldoc (Philipp Rudo) [1847443] - [s390] s390/qdio: add IRQ reduction for error SBALs (Philipp Rudo) [1847443] - [s390] s390/qdio: refactor ACK processing for primed SBALs (Philipp Rudo) [1847443] - [s390] s390/qdio: simplify overlap calculation on Input refill (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up Kconfig help text (Philipp Rudo) [1847443] - [s390] s390/qeth: return error when starting a reset fails (Philipp Rudo) [1847443] - [s390] s390/qeth: set TX IRQ marker on last buffer in a group (Philipp Rudo) [1847443] - [s390] s390/qeth: indicate contiguous TX buffer elements (Philipp Rudo) [1847443] - [s390] s390/qeth: merge TX skb mapping code (Philipp Rudo) [1847443] - [s390] s390/qeth: don't use restricted offloads for local traffic (Philipp Rudo) [1847443] - [s390] s390/qeth: extract helpers for next-hop lookup (Philipp Rudo) [1847443] - [s390] s390/qeth: add debugfs file for local IP addresses (Philipp Rudo) [1847443] - [s390] s390/qeth: process local address events (Philipp Rudo) [1847443] - [s390] s390/qeth: keep track of LP2LP capability for csum offload (Philipp Rudo) [1847443] - [s390] s390/qeth: fix cancelling of TX timer on dev_close() (Philipp Rudo) [1847443] - [s390] s390/qdio: remove always-true condition (Philipp Rudo) [1847443] - [s390] s390/qdio: de-duplicate tiqdio_inbound_processing() (Philipp Rudo) [1847443] - [s390] s390/qdio: keep track of allocated queue count (Philipp Rudo) [1847443] - [s390] s390/qdio: roll-back after queue allocation error (Philipp Rudo) [1847443] - [s390] s390/qdio: do more fine-grained allocation roll-back (Philipp Rudo) [1847443] - [s390] s390/qdio: consolidate thinint init/exit (Philipp Rudo) [1847443] - [s390] s390/qdio: put thinint indicator after early error (Philipp Rudo) [1847443] - [s390] s390/qdio: tear down thinint indicator after early error (Philipp Rudo) [1847443] - [s390] s390/qdio: consistently restore the IRQ handler (Philipp Rudo) [1847443] - [s390] s390/qdio: clear DSCI early for polling drivers (Philipp Rudo) [1847443] - [s390] s390/qdio: inline shared_ind() (Philipp Rudo) [1847443] - [s390] s390/qdio: remove cdev from init_data (Philipp Rudo) [1847443] - [s390] s390/qdio: allow for non-contiguous SBAL array in init_data (Philipp Rudo) [1847443] - [s390] zfcp: inline zfcp_qdio_setup_init_data() (Philipp Rudo) [1847443] - [s390] s390/qdio: cleanly split alloc and establish (Philipp Rudo) [1847443] - [s390] s390/qeth: phase out OSN support (Philipp Rudo) [1847443] - [s390] s390/qeth: make OSN / OSX support configurable (Philipp Rudo) [1847443] - [s390] s390/qeth: remove fake_broadcast attribute (Philipp Rudo) [1847443] - [s390] s390/qdio: set qdio_irq->cdev at allocation time (Philipp Rudo) [1847443] - [s390] s390/qdio: remove unused function declarations (Philipp Rudo) [1847443] - [s390] s390/qeth: modernize two list helpers (Philipp Rudo) [1847443] - [s390] s390/qeth: keep track of fixed prio-queue configuration (Philipp Rudo) [1847443] - [s390] s390/qeth: fine-tune MAC Address-related errnos (Philipp Rudo) [1847443] - [s390] s390/qeth: add TX IRQ coalescing support for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: collect more TX statistics (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up the mac_bits (Philipp Rudo) [1847443] - [s390] s390/qeth: simplify L3 dev_id logic (Philipp Rudo) [1847443] - [s390] s390/qdio: extend polling support to multiple queues (Philipp Rudo) [1847443] - [s390] s390/qeth: remove redundant if-clause in RX poll code (Philipp Rudo) [1847443] - [s390] s390/qeth: split out RX poll code (Philipp Rudo) [1847443] - [s390] s390/qeth: simplify RX buffer tracking (Philipp Rudo) [1847443] - [s390] s390/qdio: pass ISC as parameter to chsc_sadc() (Philipp Rudo) [1847443] - [s390] s390/qeth: use dev->reg_state (Philipp Rudo) [1847443] - [s390] s390/qeth: remove gratuitous NULL checks (Philipp Rudo) [1847443] - [s390] s390/qeth: add phys_to_virt() translation for AOB (Philipp Rudo) [1847443] - [s390] s390/qeth: don't report hard-coded driver version (Philipp Rudo) [1847443] - [s390] s390/qeth: add SW timestamping support for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: balance the TX queue selection for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: allow configuration of TX queues for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: allow configuration of TX queues for z/VM NICs (Philipp Rudo) [1847443] - [s390] s390/qeth: remove prio-queueing support for z/VM NICs (Philipp Rudo) [1847443] - [s390] s390/qeth: use memory reserves in TX slow path (Philipp Rudo) [1847443] - [s390] s390/qeth: use memory reserves to back RX buffers (Philipp Rudo) [1847443] - [s390] s390/qeth: remove VNICC callback parameter struct (Philipp Rudo) [1847443] - [s390] s390/qdio: add tighter controls for IRQ polling (Philipp Rudo) [1847443] - [s390] s390/qdio: export SSQD via debugfs (Philipp Rudo) [1847443] - [s390] s390/qeth: support configurable RX copybreak (Philipp Rudo) [1847443] - [s390] s390/qeth: don't check for IFF_UP when scheduling napi (Philipp Rudo) [1847443] - [s390] s390/qeth: don't re-start read cmd when IDX has terminated (Philipp Rudo) [1847443] - [s390] s390/qeth: reset seqnos on connection startup (Philipp Rudo) [1847443] - [s390] s390/qeth: remove unused cmd definitions (Philipp Rudo) [1847443] - [s390] s390/qeth: validate device-provided MAC address (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up CREATE_ADDR cmd code (Philipp Rudo) [1847443] - [s390] s390/qeth: remove dead code in qeth_l3_iqd_read_initial_mac() (Philipp Rudo) [1847443] - [s390] s390/qdio: simplify debugfs code (Philipp Rudo) [1847443] - [s390] s390/qdio: use QDIO_IRQ_STATE_INACTIVE instead of 0 (Philipp Rudo) [1847443] - [s390] s390/qeth: don't warn for napi with 0 budget (Philipp Rudo) [1847443] - [s390] s390/qdio: reduce access to cdev->private->qdio_data (Philipp Rudo) [1847443] - [s390] s390/qdio: clean up cdev access in qdio_setup_irq() (Philipp Rudo) [1847443] - [s390] s390/qdio: fill SL with absolute addresses (Philipp Rudo) [1847443] - [s390] s390/qdio: don't allocate *aob array with GFP_ATOMIC (Philipp Rudo) [1847443] - [s390] s390/qdio: simplify ACK tracking (Philipp Rudo) [1847443] - [s390] s390/qeth: remove HARDSETUP state (Philipp Rudo) [1847443] - [s390] s390/qeth: make cmd/reply matching more flexible (Philipp Rudo) [1847443] - [s390] s390/qeth: consolidate online/offline code (Philipp Rudo) [1847443] - [s390] s390/qeth: shift some bridgeport code around (Philipp Rudo) [1847443] - [s390] s390/qeth: remove QETH_RX_PULL_LEN (Philipp Rudo) [1847443] - [s390] s390/qeth: use napi_gro_frags() for SG skbs (Philipp Rudo) [1847443] - [s390] s390/qeth: consolidate RX code (Philipp Rudo) [1847443] - [s390] s390/qeth: make use of napi_schedule_irqoff() (Philipp Rudo) [1847443] - [s390] s390/qeth: consolidate helpers for capability checking (Philipp Rudo) [1847443] - [s390] s390/qeth: stop yielding the ip_lock during IPv4 registration (Philipp Rudo) [1847443] - [s390] s390/qeth: don't raise NETDEV_REBOOT event from L3 offline path (Philipp Rudo) [1847443] - [s390] s390/qeth: remove open-coded inet_make_mask() (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up L3 sysfs code (Philipp Rudo) [1847443] - [s390] s390/qeth: overhaul L3 IP address dump code (Philipp Rudo) [1847443] - [s390] s390/qeth: wake up all waiters from qeth_irq() (Philipp Rudo) [1847443] - [s390] s390/qeth: only handle IRQs while device is online (Philipp Rudo) [1847443] - [s390] s390: clean up qdio.h (Philipp Rudo) [1847443] - [s390] s390/cio: fix kdoc for tiqdio_thinint_handler (Philipp Rudo) [1847443] - [s390] s390/drivers: fix proc/debugfs file permissions (Philipp Rudo) [1847443] - [s390] s390: convert to DEFINE_SHOW_ATTRIBUTE (Philipp Rudo) [1847443] - [s390] scsi: zfcp: Avoid benign overflow of the Request Queue's free-level (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Replace open-coded list move (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Clean up zfcp_erp_action_ready() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Fix an outdated comment for zfcp_qdio_send() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Use prandom_u32_max() for backoff (Philipp Rudo) [1874100] - [s390] scsi: zfcp: fix wrong data and display format of SFP+ temperature (Philipp Rudo) [1874100] - [s390] scsi: zfcp: trace channel log even for FCP command responses (Philipp Rudo) [1874100] - [s390] scsi: zfcp: proper indentation to reduce confusion in zfcp_erp_required_act (Philipp Rudo) [1874100] - [s390] scsi: zfcp: move maximum age of diagnostic buffers into a per-adapter variable (Philipp Rudo) [1874100] - [s390] scsi: zfcp: implicitly refresh config-data diagnostics when reading sysfs (Philipp Rudo) [1874100] - [s390] scsi: zfcp: introduce sysfs interface to read the local B2B-Credit (Philipp Rudo) [1874100] - [s390] scsi: zfcp: implicitly refresh port-data diagnostics when reading sysfs (Philipp Rudo) [1874100] - [s390] scsi: zfcp: introduce sysfs interface for diagnostics of local SFP transceiver (Philipp Rudo) [1874100] - [s390] scsi: zfcp: support retrieval of SFP Data via Exchange Port Data (Philipp Rudo) [1874100] - [s390] scsi: zfcp: fix GCC compiler warning emitted with -Wmaybe-uninitialized (Philipp Rudo) [1874100] - [s390] scsi: zfcp: fix request object use-after-free in send path causing seqno errors (Philipp Rudo) [1874100] - [s390] scsi: s390: zfcp_fc: use sg helper to iterate over scatterlist (Philipp Rudo) [1874100] - [s390] scsi: zfcp: reduce flood of fcrscn1 trace records on multi-element RSCN (Philipp Rudo) [1874100] - [s390] scsi: zfcp: improve kdoc for return of zfcp_status_read_refill() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop old default switch case which might paper over missing case (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop default switch case which might paper over missing case (Philipp Rudo) [1874100] - [s390] scsi: zfcp: silence -Wimplicit-fallthrough in zfcp_erp_lun_strategy() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: silence remaining kdoc warnings in header files (Philipp Rudo) [1874100] - [s390] scsi: zfcp: silence all W=1 build warnings for existing kdoc (Philipp Rudo) [1874100] - [s390] scsi: zfcp: properly format LUN (and WWPN) for LUN sharing violation kmsg (Philipp Rudo) [1874100] - [s390] scsi: zfcp: use enum zfcp_erp_act_result for argument/return of affected functions (Philipp Rudo) [1874100] - [s390] scsi: zfcp: use enum zfcp_erp_steps for struct zfcp_erp_action.step (Philipp Rudo) [1874100] - [s390] scsi: zfcp: the action field of zfcp_erp_action is actually the type (Philipp Rudo) [1874100] - [s390] scsi: zfcp: clarify function argument name for trace tag string (Philipp Rudo) [1874100] - [s390] scsi: zfcp: ERP thread setup kdoc update (Philipp Rudo) [1874100] - [s390] scsi: zfcp: update kernel message for invalid FCP_CMND length, it's not the CDB (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop duplicate seq_no from zfcp_fsf_req which is also in QTCB header (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop duplicate fsf_command from zfcp_fsf_req which is also in QTCB header (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop unnecessary forward prototype for struct zfcp_fsf_req (Philipp Rudo) [1874100] - [s390] scsi: zfcp: group sort internal structure definitions for proximity (Philipp Rudo) [1874100] - [s390] scsi: zfcp: namespace prefix for internal latency data structures (Philipp Rudo) [1874100] - [s390] scsi: zfcp: update width in comment for ZFCP_COMMON_FLAGS mask (Philipp Rudo) [1874100] - [s390] scsi: zfcp: move scsi_eh & non-ERP timeout defines owned by and local to zfcp_fsf.c (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop unnecessary forward prototype for struct zfcp_reqlist (Philipp Rudo) [1874100] - [s390] scsi: zfcp: move SG table helper from aux to fc and make them static (Philipp Rudo) [1874100] - [s390] scsi: zfcp: remove unnecessary null pointer check before mempool_destroy (Philipp Rudo) [1874100] - [s390] s390/dasd, zfcp: fix gcc 8 stringop-truncation warnings (Philipp Rudo) [1874100] - [s390] s390/stp: unify stp_work_mutex and clock_sync_mutex (Philipp Rudo) [1856342] - [s390] s390/stp: add sysfs file to show scheduled leap seconds (Philipp Rudo) [1856342] - [s390] s390/stp: add support for leap seconds (Philipp Rudo) [1856342] - [s390] s390/stp: use u32 instead of unsigned int (Philipp Rudo) [1856342] - [s390] s390/stp: use __packed (Philipp Rudo) [1856342] - [s390] s390/stp: add locking to sysfs functions (Philipp Rudo) [1856342] - [s390] s390/stp: allow group and users to read stp sysfs files (Philipp Rudo) [1856342] - [s390] s390/ipl: add support to control memory clearing for nvme re-IPL (Philipp Rudo) [1851122] - [kernel] tick: broadcast-hrtimer: Fix a race in bc_set_next (Vladis Dronov) [1876567] - [fs] gfs2: Make sure we don't miss any delayed withdraws (Robert S Peterson) [1873565] - [fs] gfs2: add some much needed cleanup for log flushes that fail (Robert S Peterson) [1873565] - [fs] gfs2: fix trans slab error when withdraw occurs inside log_flush (Robert S Peterson) [1873565] - [block] blk-mq: mark flush request as IDLE in flush_end_io() (Gopal Tiwari) [1894347] - [nvme] nvme-tcp: avoid repeated request completion (Gopal Tiwari) [1894347] - [nvme] nvme-rdma: avoid repeated request completion (Gopal Tiwari) [1894347] - [nvme] nvme-tcp: avoid race between time out and tear down (Gopal Tiwari) [1894347] - [nvme] nvme-rdma: avoid race between time out and tear down (Gopal Tiwari) [1894347] - [nvme] nvme: introduce nvme_sync_io_queues (Gopal Tiwari) [1894347] - [documentation] kvm: x86: hyper-v: Mention SynDBG CPUID leaves in api.rst (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: remove unused variable (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: Don't require THP to run tests (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: evmcs: make evmcs_sanitize_exec_ctrls() work again (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: test behavior of unmapped L2 APIC-access address (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Fix NULL dereference at kvm_msr_ignored_check() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: replace static const variables with macros (Vitaly Kuznetsov) [1882793] - [x86] kvm: ioapic: break infinite recursion on lazy EOI (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: rename pi_init to avoid conflict with paride (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Avoid modulo operator on 64-bit value to fix i386 build (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: NX largepage recovery for TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Don't clear write flooding count for direct roots (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support MMIO in the TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support write protection for nesting in tdp MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support disabling dirty logging for the tdp MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support dirty logging for the TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support changed pte notifier in tdp MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add access tracking for tdp_mmu (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support invalidate range MMU notifier for TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Allocate struct kvm_mmu_pages for all pages in TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add TDP MMU PF handler (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Remove disallowed_hugepage_adjust shadow_walk_iterator arg (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support zapping SPTEs in the TDP MMU (Vitaly Kuznetsov) [1882793] - [virt] kvm: Cache as_id in kvm_memory_slot (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add functions to handle changed TDP SPTEs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Allocate and free TDP MMU roots (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Init / Uninit the TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Introduce tdp_iter (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: extract spte.h and spte.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: Separate updating a PTE from kvm_set_pte_rmapp (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Separate making SPTEs from set_spte (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: Separate making non-leaf sptes from link_shadow_page (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Let the guest own CR4.FSGSBASE (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Intercept guest reserved CR4 bits to inject #GP fault (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move call to update_exception_bitmap() into VMX code (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Invoke vendor's vcpu_after_set_cpuid() after all common updates (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Intercept LA57 to inject #GP fault when it's reserved (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Initialize prev_ga_tag before use (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: implement on demand allocation of the nested state (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: allow kvm_x86_ops.set_efer to return an error value (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: report negative values from wrmsr emulation to userspace (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: xen_hvm_config: cleanup return values (Vitaly Kuznetsov) [1882793] - [x86] kvm x86/mmu: Make struct kernel_param_ops definitions const (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: allocate vcpu->arch.cpuid_entries dynamically (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: disconnect kvm_check_cpuid() from vcpu->arch.cpuid_entries (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: only provide PV features if enabled in guest's CPUID (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: set wall_clock in kvm_write_wall_clock() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: encapsulate wrmsr(MSR_KVM_SYSTEM_TIME) emulation in helper fn (Vitaly Kuznetsov) [1882793] - [x86] kvm: hide KVM options from menuconfig when KVM is not compiled (Vitaly Kuznetsov) [1882793] - [documentation] kvm: vmx: Forbid userspace MSR filters for x2APIC (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Ignore userspace MSR filters for x2APIC (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Fix x2APIC MSR intercept handling on !APICV platforms (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: vmx_uret_msrs_list[] can be static (Vitaly Kuznetsov) [1882793] - [tools] kvm: x86: do not attempt TSC synchronization on guest writes (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: delay MSR permission processing to first nested VM run (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: rename KVM_REQ_GET_VMCS12_PAGES (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: Add test for user space MSR handling (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Introduce MSR filtering (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: vmx: Prevent MSR passthrough when MSR access is denied (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: svm: Prevent MSR passthrough when MSR access is denied (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Prepare MSR bitmaps for userspace tracked MSRs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add infrastructure for MSR filtering (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Allow deflecting unknown MSR accesses to user space (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Return -ENOENT on unimplemented MSRs (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vmx_uret_msr's "index" to "slot" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "vmx_msr_index" to "vmx_uret_msrs_list" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "vmx_set_guest_msr" to "vmx_set_guest_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "find_msr_entry" to "vmx_find_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add vmx_setup_uret_msr() to handle lookup and swap (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Move uret MSR lookup into update_transition_efer() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Check guest support for RDTSCP before processing MSR_TSC_AUX (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "__find_msr_index" to "__vmx_find_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vcpu_vmx's "guest_msrs_ready" to "guest_uret_msrs_loaded" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vcpu_vmx's "save_nmsrs" to "nr_active_uret_msrs" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vcpu_vmx's "nmsrs" to "nr_uret_msrs" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename the "shared_msr_entry" struct to "vmx_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "vmx_find_msr_index" to "vmx_find_loadstore_msr_slot" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Prepend "MAX_" to MSR array size defines (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename "shared_msrs" to "user_return_msrs" (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move individual kvm_mmu initialization into common helper (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Read EXIT_QUAL and INTR_INFO only when needed for nested exit (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Use common definition for kvm_nested_vmexit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add macro wrapper for defining kvm_exit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add intr/vectoring info and error code to kvm_exit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add a helper to test for a valid error code given an intr info (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Read guest RIP from within the kvm_nested_vmexit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add RIP to the kvm_entry, i.e. VM-Enter, tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: WARN on attempt to switch the currently loaded VMCS (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Drop redundant VMCS switch and free_nested() call (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Ensure vmcs01 is the loaded VMCS when freeing nested state (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Move free_nested() below vmx_switch_vmcs() (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Explicitly check for valid guest state for !unrestricted guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Reload vmcs01 if getting vmcs12's pages fails (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Reset the segment cache when stuffing guest segs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Track write/user faults using bools (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Hoist ITLB multi-hit workaround check up a level (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Rename 'hlevel' to 'level' in FNAME(fetch) (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Account NX huge page disallowed iff huge page was requested (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Capture requested page level before NX huge page workaround (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move "huge page disallowed" calculation into mapping helpers (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Refactor the zap loop for recovering NX lpages (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Commit zap of remaining invalid pages when recovering lpages (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename ops.h to vmx_ops.h (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Extract posted interrupt support to separate files (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Bail early from final #PF handling on spurious faults (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Return unique RET_PF_* values if the fault was fixed (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Invert RET_PF_* check when falling through to emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Return -EIO if page fault returns RET_PF_INVALID (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Recursively zap nested TDP SPs when zapping last/only parent (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move flush logic from mmu_page_zap_pte() to FNAME(invlpg) (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: hyper-v: disallow configuring SynIC timers with no SynIC (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Stash 'kvm' in a local variable in kvm_mmu_free_roots() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add a helper and macros to reduce boilerplate for sec exec ctls (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename RDTSCP secondary exec control name to insert "ENABLE" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use VMX_FEATURE_* flags to define VMCS control bits (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Unconditionally clear CPUID.INVPCID if !CPUID.PCID (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vmx_*_supported() helpers to cpu_has_vmx_*() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use "illegal GPA" helper for PT/RTIT output base check (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move illegal GPA helper out of the MMU code (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Replace MSR_IA32_RTIT_OUTPUT_BASE_MASK with helper function (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Unexport cpuid_query_maxphyaddr() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use precomputed MAXPHYADDR for RTIT base MSR check (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Do not perform emulation for INVD intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: sev: shorten comments around sev_clflush_pages (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Mark SEV launch secret pages as dirty (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Add VM-Enter failed tracepoints for super early checks (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: CR3 MBZ bits are only 63:52 (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: emulating RDPID failure shall return #UD rather than #GP (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Morph notification vector IRQ on nested VM-Enter to pending PI (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add tracepoint for cr_interception (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Analyze is_guest_mode() in svm_vcpu_run() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Invoke NMI handler via indirect call instead of INTn (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Move IRQ invocation to assembly subroutine (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add kvm_x86_ops hook to short circuit emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: use __GFP_ZERO instead of clear_page() (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: KVM needs to unset "unrestricted guest" VM-execution control in vmcs02 if vmcs12 doesn't set it (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Enable INVPCID feature on AMD (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move handling of INVPCID types to x86 (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename and move the function vmx_handle_memory_failure to x86.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Remove set_cr_intercept, clr_cr_intercept and is_cr_intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add new intercept word in vmcb_control_area (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Modify 64 bit intercept field to two 32 bit vectors (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Modify intercept_exceptions to generic intercepts (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Change intercept_dr to generic intercepts (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Change intercept_cr to generic intercepts (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Introduce vmcb_(set_intercept/clr_intercept/_is_intercept) (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Remove unused field (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: refactor exit labels in svm_create_vcpu (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: use __GFP_ZERO instead of clear_page (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: refactor msr permission bitmap allocation (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: rename nested vmcb to vmcb12 (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: rename a variable in the svm_create_vcpu (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Reduce world switch latency caused by timer_advance_ns (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Narrow down the kick target vCPU (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Guarantee the timer is in tsc-deadline mode when setting (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Return 0 when getting the tscdeadline timer if the lapic is hw disabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Fix updating DFR missing apic map recalculation (Vitaly Kuznetsov) [1882793] - [virt] kvm/eventfd: move wildcard calculation outside loop (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Simplify the initialization of nested_vmx_msrs (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Fix VMX controls MSRs setup when nested VMX enabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Avoid freeing uninitialized pointers in svm_set_nested_state() (Vitaly Kuznetsov) [1882793] - [x86] hyperv: Remove aliases with X64 in their name (Vitaly Kuznetsov) [1882793] - [x86] hyperv: Split hyperv-tlfs.h into arch dependent and independent files (Vitaly Kuznetsov) [1882793] - [x86] hyperv: Remove HV_PROCESSOR_POWER_STATE #defines (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add GHCB definitions (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: nested: Don't allocate VMCB structures on stack (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: page_track: Fix RCU list API usage (Vitaly Kuznetsov) [1882793] - [kernel] rculist: Introduce list/hlist_for_each_entry_srcu() macros (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: update PFEC_MASK/PFEC_MATCH together with PF intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add a dedicated INVD intercept routine (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Reset MMU context if guest toggles CR4.SMAP or CR4.PKE (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: fix MSR_IA32_TSC read for nested migration (Vitaly Kuznetsov) [1882793] - [tools] selftests: kvm: Fix assert failure in single-step test (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: vmx: Make smaller physical guest address space support user-configurable (Vitaly Kuznetsov) [1882793] - [x86] revert "kvm: Check the allocation of pv cpu mask" (Vitaly Kuznetsov) [1882793] - [x86] kvm: emulator: more strict rsm checks (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: more strict SMM checks when returning to nested guest (Vitaly Kuznetsov) [1882793] - [x86] svm: nsvm: setup nested msr permission bitmap on nested state load (Vitaly Kuznetsov) [1882793] - [x86] svm: nsvm: correctly restore GIF on vmexit from nesting after migration (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Don't freeze guest when event delivery causes an APIC-access exit (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: avoid emulation with stale next_rip (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: always allow writing '0' to MSR_KVM_ASYNC_PF_EN (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Periodically schedule when unregistering regions on destroy (Vitaly Kuznetsov) [1882793] - [x86] kvm x86/mmu: use KVM_REQ_MMU_SYNC to sync when needed (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Fix the update value of nested load IA32_PERF_GLOBAL_CTRL control (Vitaly Kuznetsov) [1882793] - [virt] kvm: fix memory leak in kvm_io_bus_unregister_dev() (Vitaly Kuznetsov) [1882793] - [x86] kvm: Check the allocation of pv cpu mask (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Update VMCS02 when L2 PAE PDPTE updates detected (Vitaly Kuznetsov) [1882793] - [documentation] kvm: documentation: Minor fixups (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Toggling CR4.PKE does not load PDPTEs in PAE mode (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Toggling CR4.SMAP does not load PDPTEs in PAE mode (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: fix access code passed to gva_to_gpa (Vitaly Kuznetsov) [1882793] - [tools] selftests: kvm: Use a shorter encoding to clear RAX (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: Synic default SCONTROL MSR needs to be enabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Don't attempt to load PDPTRs when 64-bit mode is enabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: detect assigned device via irqbypass manager (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Fix sev_pin_memory() error handling (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Set the TDCR settable bits (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Fix disable pause loop exit/pause filtering capability on SVM (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Prevent setting the tscdeadline timer if the lapic is hw disabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Specify max TDP level via kvm_configure_mmu() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Rename max_page_level to max_huge_page_level (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Dynamically calculate TDP level from max level and MAXPHYADDR (Vitaly Kuznetsov) [1882793] - [x86] kvm: vxm: Remove temporary WARN on expected vs. actual EPTP level mismatch (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Pull the PGD's level from the MMU instead of recalculating it (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Make vmx_load_mmu_pgd() static (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add separate helper for shadow NPT root page role calc (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Drop a duplicate declaration of construct_eptp() (Vitaly Kuznetsov) [1882793] - [x86] kvm: Using macros instead of magic values (Vitaly Kuznetsov) [1882793] - [tools] kvm: nvmx: check for invalid hdr.vmx.flags (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: check for required but missing VMCS12 in KVM_SET_NESTED_STATE (Vitaly Kuznetsov) [1882793] - [tools] selftests: kvm: do not set guest mode flag (Vitaly Kuznetsov) [1882793] - [documentation] documentation: virt/kvm/api: eliminate duplicated word (Vitaly Kuznetsov) [1882793] - [documentation] docs: kvm: Replace HTTP links with HTTPS ones (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: remove nonsensical EXITINFO1 adjustment on nested NPF (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add a capability for GUEST_MAXPHYADDR < HOST_MAXPHYADDR support (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: optimize #PF injection when MAXPHYADDR does not match (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add guest physical address check in EPT violation and misconfig (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: introduce vmx_need_pf_intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: update exception bitmap on CPUID changes (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: rename update_bp_intercept to update_exception_bitmap (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: mmu: Add guest physical address check in translate_gpa() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: mmu: Move translate_gpa() to mmu.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add helper functions for illegal GPA checking and page fault injection (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: move MSR_IA32_PERF_CAPABILITIES emulation to common x86 code (Vitaly Kuznetsov) [1882793] - [virt] kvm: Move x86's MMU memory cache helpers to common KVM code (Vitaly Kuznetsov) [1882793] - [kernel] kvm: Move x86's version of struct kvm_mmu_memory_cache to common code (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Prepend "kvm_" to memory cache helpers that will be global (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Skip filling the gfn cache for guaranteed direct MMU topups (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Zero allocate shadow pages (outside of mmu_lock) (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Make __GFP_ZERO a property of the memory cache (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Separate the memory caches for shadow pages and gfn arrays (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Clean up the gorilla math in mmu_topup_memory_caches() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Topup memory caches after walking GVA->GPA (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move fast_page_fault() call above mmu_topup_memory_caches() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Try to avoid crashing KVM if a MMU memory cache is empty (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Remove superfluous gotos from mmu_topup_memory_caches() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Use consistent "mc" name for kvm_mmu_memory_cache locals (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Consolidate "page" variant of memory cache helpers (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Track the associated kmem_cache in the MMU caches (Vitaly Kuznetsov) [1882793] - [x86] kvm/x86: pmu: Fix #GP condition check for RDPMC emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move kvm_x86_ops.vcpu_after_set_cpuid() into kvm_vcpu_after_set_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename cpuid_update() callback to vcpu_after_set_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename kvm_update_cpuid() to kvm_vcpu_after_set_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Extract kvm_update_cpuid_runtime() from kvm_update_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Introduce kvm_check_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move kvm_apic_set_version() to kvm_update_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Use guest_cpuid_has() in kvm_apic_set_version() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Go on updating other CPUID leaves when leaf 1 is absent (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Reset vcpu->arch.cpuid_nent to 0 if SET_CPUID* fails (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: limit the maximum number of vPMU fixed counters to 3 (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Check that MBZ bits in CR3 and CR4 are not set on vmrun of nested guests (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Make CR4.VMXE reserved for the guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Create mask for guest CR4 reserved bits in kvm_update_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Read PDPTEs on CR0.CD and CR0.NW changes (Vitaly Kuznetsov) [1882793] - [x86] kvm: Add "nopvspin" parameter to disable PV spinlocks (Vitaly Kuznetsov) [1882793] - [x86] kvm: Change print code to use pr_*() format (Vitaly Kuznetsov) [1882793] - [x86] revert "kvm: x86: Fix setup the virt_spin_lock_key before static key get initialized" (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Rename page_header() to to_shadow_page() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add sptep_to_sp() helper to wrap shadow page lookup (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Make kvm_mmu_page definition and accessor internal-only (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add MMU-internal header (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move kvm_mmu_available_pages() into mmu.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move mmu_audit.c and mmutrace.h into the mmu/ sub-directory (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Exit to userspace on make_mmu_pages_available() error (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Batch zap MMU pages when shrinking the slab (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Batch zap MMU pages when recycling oldest pages (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Don't put invalid SPs back on the list of active pages (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Optimize MMU page cache lookup for fully direct MMUs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Avoid multiple hash lookups in kvm_get_mmu_page() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Use VMCALL and VMMCALL mnemonics in kvm_para.h (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Rename svm_nested_virtualize_tpr() to nested_svm_virtualize_tpr() (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add svm_ prefix to set/clr/is_intercept() (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add vmcb_ prefix to mark_*() functions (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Rename struct nested_state to svm_nested_state (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Wrap VM-Fail valid path in generic VM-Fail helper (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Set last_vmentry_cpu in vcpu_enter_guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move last_cpu into kvm_vcpu_arch as last_vmentry_cpu (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add "last CPU" to some KVM_EXIT information (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add last_cpu to struct vcpu_vmx (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Always set svm->last_cpu on VMRUN (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Prefer vcpu->cpu to raw_smp_processor_id() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: report sev_pin_memory errors with PTR_ERR (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: fix svn_pin_memory()'s use of get_user_pages_fast() (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Check that DR6[63:32] and DR7[64:32] are not set on vmrun of nested guests (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move the check for upper 32 reserved bits of DR6 to separate function (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Do the same ignore_msrs check for feature msrs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move ignore_msrs handling upper the stack (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Make .write_log_dirty a nested operation (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: WARN if PML emulation helper is invoked outside of nested guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Drop kvm_arch_write_log_dirty() wrapper (Vitaly Kuznetsov) [1882793] - [s390] kvm: async_pf: change kvm_setup_async_pf()/kvm_arch_setup_async_pf() return type to bool (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: drop KVM_PV_REASON_PAGE_READY case from kvm_handle_page_fault() (Vitaly Kuznetsov) [1882793] - [documentation] documentation: virt: kvm/api: drop doubled words (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use KVM_POSSIBLE_CR*_GUEST_BITS to initialize guest/host masks (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Mark CR4.TSD as being possibly owned by the guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Inject #GP if guest attempts to toggle CR4.LA57 in 64-bit mode (Vitaly Kuznetsov) [1882793] - [virt] kvm: use more precise cast and do not drop __user (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: bit 8 of non-leaf PDPEs is not reserved (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Fix async pf caused null-ptr-deref (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Remove vcpu_vmx's defunct copy of host_pkru (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: allow TSC to differ by NTP correction bounds without TSC scaling (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Fix MSR range of APIC registers in X2APIC mode (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Stop context switching MSR_IA32_UMWAIT_CONTROL (Vitaly Kuznetsov) [1882793] - [x86] cpu: Move prototype for get_umwait_control_msr() to a global location (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Plumb L2 GPA through to PML emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Avoid mixing gpa_t with gfn_t in walk_addr_generic() (Vitaly Kuznetsov) [1882793] - [x86] process/64: Make save_fsgs_for_kvm() ready for FSGSBASE (Vitaly Kuznetsov) [1882793] - [kernel] kvm: Replace zero-length array with flexible-array (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add helpers to identify interrupt type from intr_info (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Switch KVM guest to using interrupts for page ready APF delivery (Vitaly Kuznetsov) [1882793] - [x86] kvm: Remove defunct KVM_DEBUG_FS Kconfig (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Always treat MSR_IA32_PERF_CAPABILITIES as a valid PMU MSR (Vitaly Kuznetsov) [1882793] - [x86] kvm_hv_set_msr(): use __put_user() instead of 32bit __clear_user() (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: update hyperv_cpuid with SynDBG tests (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: Add support for synthetic debugger via hypercalls (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: enable hypercalls regardless of hypercall page (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: Add support for synthetic debugger interface (Vitaly Kuznetsov) [1882793] - [x86] hyper-v: Add synthetic debugger definitions (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/pmu: Support full width counting (Vitaly Kuznetsov) [1882793] - [documentation] kvm: x86: announce KVM_FEATURE_ASYNC_PF_INT (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: acknowledgment mechanism for async pf page ready notifications (Vitaly Kuznetsov) [1882793] - [documentation] kvm: x86: interrupt based APF 'page ready' event delivery (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: extend struct kvm_vcpu_pv_apf_data with token info (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: hyperv: Remove duplicate definitions of Reference TSC Page (Vitaly Kuznetsov) [1882793] - [x86] kvm: Restrict ASYNC_PF to user space (Vitaly Kuznetsov) [1882793] - [x86] kvm: Sanitize kvm_async_pf_task_wait() (Vitaly Kuznetsov) [1882793] - [x86] kvm: Handle async page faults directly through do_page_fault() (Vitaly Kuznetsov) [1882793] - [virt] kvm: add halt-polling cpu usage stats (Vitaly Kuznetsov) [1882793] - [powerpc] kvm: Replace vcpu->swait with rcuwait (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Introduce rcuwait_active() (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Introduce prepare_to and finish_rcuwait (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Add @state argument to rcuwait_wait_event() (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Let rcuwait_wake_up() return whether or not a task was awoken (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Fix stale wake call name in comment (Vitaly Kuznetsov) [1882793] - [s390] kvm: s390: Use kvm_vcpu_wake_up in kvm_s390_vcpu_wakeup (Vitaly Kuznetsov) [1882793] - [documentation] docs/virt/kvm: Document configuring and running nested guests (Vitaly Kuznetsov) [1882793] - [tools] docs: fix broken references for ReST files that moved around (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Extend VMXs #AC interceptor to handle split lock #AC in guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Emulate split-lock access as a write in emulator (Vitaly Kuznetsov) [1882793] - [net] core: check length before updating Ethertype in skb_mpls_{push,pop} (Guillaume Nault) [1893886] - [net] pktgen: fix error message with wrong function name (Guillaume Nault) [1893886] - [net] handle the return value of pskb_carve_frag_list() correctly (Guillaume Nault) [1893886] - [net] Fix potential wrong skb->protocol in skb_vlan_untag() (Guillaume Nault) [1893886] - [net] make symbol 'flush_works' static (Guillaume Nault) [1893886] - [net] compat: Add missing sock updates for SCM_RIGHTS (Guillaume Nault) [1893886] - [net] mpls: drop skb's dst in mpls_forward() (Guillaume Nault) [1893886] - [include] net: Added pointer check for dst->ops->neigh_lookup in dst_neigh_lookup_skb (Guillaume Nault) [1893886] - [net] fix skb_panic to output real address (Guillaume Nault) [1893886] - [net] fix a potential recursive NETDEV_FEAT_CHANGE (Guillaume Nault) [1893886] - [net] neigh: send protocol value in neighbor create notification (Guillaume Nault) [1893886] - [net] revert default NAPI poll timeout to 2 jiffies (Guillaume Nault) [1893886] - [net] compat_ioctl: handle SIOCOUTQNSD (Guillaume Nault) [1893886] - [net] neigh: use long type to store jiffies delta (Guillaume Nault) [1893886] - [documentation] dev-tools: kselftest.rst: Update examples and paths (Hangbin Liu) [1876011] - [tools] selftests/run_kselftest.sh: Make each test individually selectable (Hangbin Liu) [1876011] - [tools] selftests: Extract run_kselftest.sh and generate stand-alone test list (Hangbin Liu) [1876011] - [tools] selftests/harness: Flush stdout before forking (Hangbin Liu) [1876011] - [tools] selftests: forwarding: Add missing 'rp_filter' configuration (Hangbin Liu) [1892298] - [tools] selftests/net: relax cpu affinity requirement in msg_zerocopy test (Hangbin Liu) [1892298] - [tools] selftests: ethtool: Fix test when only two speeds are supported (Hangbin Liu) [1892298] - [tools] selftests/net: tcp_mmap: fix clang warning for target arch PowerPC (Hangbin Liu) [1892298] - [tools] selftests/net: psock_fanout: fix clang issues for target arch PowerPC (Hangbin Liu) [1892298] - [netdrv] netxen: mark netxen_nic as deprecated in RHEL8 (Ivan Vecera) [1878188] - [net] linkmode: introduce linkmode_intersects() (Ivan Vecera) [1893193] - [net] ipv6: avoid lockdep issue in fib6_del() (Hangbin Liu) [1892196] - [net] ipv6: fix memory leaks on IPV6_ADDRFORM path (Hangbin Liu) [1892196] - [net] ila: remove unused inline function ila_addr_is_ila (Hangbin Liu) [1892196] - [net] ila: Fix uninitialised return value in ila_xlat_nl_cmd_flush (Hangbin Liu) [1892196] - [netdrv] i40e: always propagate error value in i40e_set_vsi_promisc() (Stefan Assmann) [1835705] - [netdrv] i40e: fix return of uninitialized aq_ret in i40e_set_vsi_promisc (Stefan Assmann) [1835705] - [netdrv] i40e: Remove scheduling while atomic possibility (Stefan Assmann) [1835705] - [pci] hv: Fix hibernation in case interrupts are not re-created (Mohammed Gamal) [1846838] - [powerpc] kvm: ppc: book3s hv: xics: Replace the 'destroy' method by a 'release' method (Greg Kurz) [1857527] - [security] selinux: complete the inlining of hashtab functions (Ondrej Mosnacek) [1878149] - [security] selinux: prepare for inlining of hashtab functions (Ondrej Mosnacek) [1878149] - [security] selinux: specialize symtab insert and search functions (Ondrej Mosnacek) [1878149] - [security] selinux: fixed a checkpatch warning with the sizeof macro (Ondrej Mosnacek) [1878149] - [security] selinux: log error messages on required process class / permissions (Ondrej Mosnacek) [1878149] - [security] selinux: fix undefined return of cond_evaluate_expr (Ondrej Mosnacek) [1878149] - [security] selinux: fix a double free in cond_read_node()/cond_read_list() (Ondrej Mosnacek) [1878149] - [security] selinux: fix double free (Ondrej Mosnacek) [1878149] - [security] selinux: netlabel: Remove unused inline function (Ondrej Mosnacek) [1878149] - [security] selinux: do not allocate hashtabs dynamically (Ondrej Mosnacek) [1878149] - [security] selinux: fix return value on error in policydb_read() (Ondrej Mosnacek) [1878149] - [security] selinux: simplify range_write() (Ondrej Mosnacek) [1878149] - [security] selinux: fix error return code in policydb_read() (Ondrej Mosnacek) [1878149] - [security] selinux: don't produce incorrect filename_trans_count (Ondrej Mosnacek) [1878149] - [security] selinux: implement new format of filename transitions (Ondrej Mosnacek) [1878149] - [security] selinux: move context hashing under sidtab (Ondrej Mosnacek) [1878149] - [security] selinux: hash context structure directly (Ondrej Mosnacek) [1878149] - [security] selinux: store role transitions in a hash table (Ondrej Mosnacek) [1878149] - [security] selinux: drop unnecessary smp_load_acquire() call (Ondrej Mosnacek) [1878149] - [security] selinux: fix warning Comparison to bool (Ondrej Mosnacek) [1878149] - [security] selinux: fix error return code in cond_read_list() (Ondrej Mosnacek) [1878149] - [security] selinux: free str on error in str_read() (Ondrej Mosnacek) [1878149] - [security] selinux: clean up indentation issue with assignment statement (Ondrej Mosnacek) [1878149] - [security] selinux: avtab_init() and cond_policydb_init() return void (Ondrej Mosnacek) [1878149] - [security] selinux: clean up error path in policydb_init() (Ondrej Mosnacek) [1878149] - [security] selinux: remove unused initial SIDs and improve handling (Ondrej Mosnacek) [1878149] - [security] selinux: reduce the use of hard-coded hash sizes (Ondrej Mosnacek) [1878149] - [security] selinux: Add xfs quota command types (Ondrej Mosnacek) [1878149] - [security] selinux: optimize storage of filename transitions (Ondrej Mosnacek) [1878149] - [security] selinux: factor out loop body from filename_trans_read() (Ondrej Mosnacek) [1878149] - [security] selinux: generalize evaluate_cond_node() (Ondrej Mosnacek) [1878149] - [security] selinux: convert cond_expr to array (Ondrej Mosnacek) [1878149] - [security] selinux: convert cond_av_list to array (Ondrej Mosnacek) [1878149] - [security] selinux: convert cond_list to array (Ondrej Mosnacek) [1878149] - [security] selinux: sel_avc_get_stat_idx should increase position index (Ondrej Mosnacek) [1878149] - [security] selinux: simplify evaluate_cond_node() (Ondrej Mosnacek) [1878149] - [security] selinux: move status variables out of selinux_ss (Ondrej Mosnacek) [1878149] - [scripts] selinux: use kernel linux/socket.h for genheaders and mdp (Ondrej Mosnacek) [1878149] - [scripts] genheaders: -s had been there since v6; -*s - since v7 (Ondrej Mosnacek) [1878149] - [scsi] scsi: megaraid_sas: Added support for shared host tagset for cpuhotplug (Ming Lei) [1876863] - [scsi] scsi: scsi_debug: Support host tagset (Ming Lei) [1876863] - [scsi] scsi: core: Show nr_hw_queues in sysfs (Ming Lei) [1876863] - [scsi] scsi: Add host and host template flag 'host_tagset' (Ming Lei) [1876863] - [block] null_blk: Support shared tag bitmap (Ming Lei) [1876863] - [block] blk-mq, elevator: Count requests per hctx to improve performance (Ming Lei) [1876863] - [block] blk-mq: Record active_queues_shared_sbitmap per tag_set for when using shared sbitmap (Ming Lei) [1876863] - [block] blk-mq: Record nr_active_requests per queue for when using shared sbitmap (Ming Lei) [1876863] - [block] blk-mq: Relocate hctx_may_queue() (Ming Lei) [1876863] - [block] blk-mq: Facilitate a shared sbitmap per tagset (Ming Lei) [1876863] - [block] blk-mq: Use pointers for blk_mq_tags bitmap tags (Ming Lei) [1876863] - [block] blk-mq: Pass flags for tag init/free (Ming Lei) [1876863] - [block] blk-mq: Free tags in blk_mq_init_tags() upon error (Ming Lei) [1876863] - [block] blk-mq: Rename blk_mq_update_tag_set_depth() (Ming Lei) [1876863] - [block] blk-mq: Rename BLK_MQ_F_TAG_SHARED as BLK_MQ_F_TAG_QUEUE_SHARED (Ming Lei) [1876863] - [block] block: fix double account of flush request's driver tag (Ming Lei) [1876863] - [block] blk-mq: centralise related handling into blk_mq_get_driver_tag (Ming Lei) [1876863] - [block] blk-mq: streamline handling of q->mq_ops->queue_rq result (Ming Lei) [1876863] - [block] blk-mq: remove pointless call of list_entry_rq() in hctx_show_busy_rq() (Ming Lei) [1876863] - [block] blk-mq: move blk_mq_get_driver_tag into blk-mq.c (Ming Lei) [1876863] - [block] blk-mq: support batching dispatch in case of io (Ming Lei) [1876863] - [block] blk-mq: pass obtained budget count to blk_mq_dispatch_rq_list (Ming Lei) [1876863] - [block] blk-mq: remove dead check from blk_mq_dispatch_rq_list (Ming Lei) [1876863] - [block] blk-mq: move getting driver tag and budget into one helper (Ming Lei) [1876863] - [block] blk-mq: pass hctx to blk_mq_dispatch_rq_list (Ming Lei) [1876863] - [block] blk-mq: remove the BLK_MQ_REQ_INTERNAL flag (Ming Lei) [1876863] - [net] netns: Constify exported functions (Guillaume Nault) [1806134] - [net] netns: protect netns ID lookups with RCU (Guillaume Nault) [1806134] - [net] netns: Remove __peernet2id_alloc() (Guillaume Nault) [1806134] - [net] netns: read NETNSA_NSID as s32 attribute in rtnl_net_getid() (Guillaume Nault) [1806134] - [tools] selftests: txtimestamp: add flag for timestamp validation tolerance. (Hangbin Liu) [1861175] - [tools] selftests/net: so_txtime: fix clang issues for target arch PowerPC (Hangbin Liu) [1861175] - [tools] selftests/net: rxtimestamp: fix clang issues for target arch PowerPC (Hangbin Liu) [1861175] - [tools] selftest: txtimestamp: fix net ns entry logic (Hangbin Liu) [1861175] - [tools] selftests/net: update initializer syntax to use c99 designators (Hangbin Liu) [1861175] - [tools] selftests/net: add ipv6 test coverage in rxtimestamp test (Hangbin Liu) [1861175] - [tools] selftests/net: plug rxtimestamp test into kselftest framework (Hangbin Liu) [1861175] - [tools] selftests/net: in rxtimestamp getopt_long needs terminating null entry (Hangbin Liu) [1861175] - [tools] selftests/net: in timestamping, strncpy needs to preserve null byte (Hangbin Liu) [1861175] - [tools] selftests: move timestamping selftests to net folder (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: print statistics for timestamp events. (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: add support for epoll(). (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: add new command-line flags. (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: allow printing latencies in nsec. (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: allow individual txtimestamp tests. (Hangbin Liu) [1861175] - [tools] selftests: timestamping: Fix SIOCGSTAMP undeclared build failure (Hangbin Liu) [1861175] - [tools] selftests: fix timestamping Makefile (Hangbin Liu) [1861175] - [tools] selftests: add missing include unistd (Hangbin Liu) [1861175] - [tools] selftests/txtimestamp: Fix an equals vs assign bug (Hangbin Liu) [1861175] - [tools] selftests: add txtimestamp kselftest (Hangbin Liu) [1861175] - [tools] selftests: expand txtimestamp with ipv6 dgram + raw and pf_packet (Hangbin Liu) [1861175] - [tools] selftests: expand txtimestamp with cmsg support (Hangbin Liu) [1861175] - [hwmon] hwmon: (k10temp) Add support for Zen3 CPUs (Wei Huang) [1846851] - [powerpc] vfs: add faccessat2 syscall (Miklos Szeredi) [1333764] - [fs] vfs: split out access_override_creds() (Miklos Szeredi) [1333764] - [md] Revert "dm writecache: set "Tech Preview" taint using mark_tech_preview()" (Mike Snitzer) [1859413] - [s390] mm: fix huge pte soft dirty copying (Cornelia Huck) [1700709] - [fs] proc/mounts: add cursor (Miklos Szeredi) [1759472]- [char] random: Add a poll handler to extrng_fops (Vladis Dronov) [1884857] - [platform] platform/mellanox: mlxbf-pmc: Add Mellanox BlueField PMC driver (Alaa Hleihel) [1655729] - [mm] mm/page_idle.c: skip offline pages (Chris von Recklinghausen) [1867490] - [powerpc] powerpc/pseries: Detect secure and trusted boot state of the system (Diego Domingos) [1853411] - [net] bpf: Check correct cred for CAP_SYSLOG in bpf_dump_raw_ok() (Yauheni Kaliuta) [1874003] - [kernel] kallsyms: Refactor kallsyms_show_value() to take cred (Yauheni Kaliuta) [1874003] - [kernel] kprobes: Show blacklist addresses as same as kallsyms does (Yauheni Kaliuta) [1874003] - [arm64] arm64: insn: Report PAC and BTI instructions as skippable (Yauheni Kaliuta) [1874003] - [arm64] arm64: insn: Don't assume unrecognized HINTs are skippable (Yauheni Kaliuta) [1874003] - [lib] usercopy: Avoid soft lockups in test_check_nonzero_user() (Yauheni Kaliuta) [1874003] - [security] selinux: map CAP_PERFMON and CAP_BPF to CAP_SYS_ADMIN (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: fix netdevsim trap_flow_action_cookie read (Yauheni Kaliuta) [1874003] - [net] net/bpfilter: Initialize pos in __bpfilter_process_sockopt (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Extend map-in-map selftest to detect memory leaks (Yauheni Kaliuta) [1874003] - [net] bpf: Fix map leak in HASH_OF_MAPS map (Yauheni Kaliuta) [1874003] - [net] bpf: Fix NULL pointer dereference in __btf_resolve_helper_id() (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix cgroup sockopt verifier test (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix libbpf hashmap on (I)LP32 architectures (Yauheni Kaliuta) [1874003] - [tools] selftests: bpf: Fix detach from sockmap tests (Yauheni Kaliuta) [1874003] - [net] bpf: net: Avoid incorrect bpf_sk_reuseport_detach call (Yauheni Kaliuta) [1874003] - [net] bpf: net: Avoid copying sk_user_data of reuseport_array during sk_clone (Yauheni Kaliuta) [1874003] - [tools] bpf: Add tests for PTR_TO_BTF_ID vs. null comparison (Yauheni Kaliuta) [1874003] - [net] bpf: Fix an incorrect branch elimination by verifier (Yauheni Kaliuta) [1874003] - [include] bpf: sockmap: Require attach_bpf_fd when detaching a program (Yauheni Kaliuta) [1874003] - [net] bpf: sockmap: Check value of unused args to BPF_PROG_ATTACH (Yauheni Kaliuta) [1874003] - [net] bpf: Enforce BPF ringbuf size to be the power of 2 (Yauheni Kaliuta) [1874003] - [tools] bpf, sockmap: Add ingres skb tests that utilize merge skbs (Yauheni Kaliuta) [1874003] - [net] bpf, sockmap: RCU dereferenced psock may be used outside RCU block (Yauheni Kaliuta) [1874003] - [net] bpf, sockmap: RCU splat with redirect and strparser error or TLS (Yauheni Kaliuta) [1874003] - [tools] bpf: tcp: bpf_cubic: fix spurious HYSTART_DELAY exit upon drop in min RTT (Yauheni Kaliuta) [1874003] - [net] bpf: Do not allow btf_ctx_access with __int128 types (Yauheni Kaliuta) [1874003] - [tools] bpf: Fix formatting in documentation for BPF helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Restore behaviour of CAP_SYS_ADMIN allowing the loading of networking bpf programs (Yauheni Kaliuta) [1874003] - [net] bpf: Set the number of exception entries properly for subprograms (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix CO-RE relocs against .text section (Yauheni Kaliuta) [1874003] - [tools] libbpf: Forward-declare bpf_stats_type for systems with outdated UAPI headers (Yauheni Kaliuta) [1874003] - [documentation] bpf: Document optval > PAGE_SIZE behavior for sockopt hooks (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Make sure optvals > PAGE_SIZE are bypassed (Yauheni Kaliuta) [1874003] - [net] bpf: Don't return EINVAL from {get, set}sockopt when optlen > PAGE_SIZE (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Add ringbuf map type to map command docs (Yauheni Kaliuta) [1874003] - [samples] bpf, xdp, samples: Fix null pointer dereference in *_user code (Yauheni Kaliuta) [1874003] - [tools] tools/bpftool: Add ringbuf map to a list of known map types (Yauheni Kaliuta) [1874003] - [tools] bpf: Fix definition of bpf_ringbuf_output() helper in UAPI comments (Yauheni Kaliuta) [1874003] - [net] bpf: Undo internal BPF_PROBE_MEM in BPF insns dump (Yauheni Kaliuta) [1874003] - [tools] libbpf: Support pre-initializing .bss global variables (Yauheni Kaliuta) [1874003] - [tools] tools/bpftool: Fix skeleton codegen (Yauheni Kaliuta) [1874003] - [net] bpf: Fix memlock accounting for sock_hash (Yauheni Kaliuta) [1874003] - [net] bpf: tcp: Recv() should return 0 when the peer socket is closed (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Exit on error in function codegen (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Fix memory leak in codegen error cases (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add cgroup_skb/egress test for load_bytes_relative (Yauheni Kaliuta) [1874003] - [net] net/filter: Permit reading NET in load_bytes_relative when MAC not set (Yauheni Kaliuta) [1874003] - [tools] tools, bpf: Do not force gcc as CC (Yauheni Kaliuta) [1874003] - [tools] libbpf: Define __WORDSIZE if not available (Yauheni Kaliuta) [1874003] - [net] bpf: Devmap adjust uapi for attach bpf program (Yauheni Kaliuta) [1874003] - [net] bpf: Reset data_meta before running programs attached to devmap entry (Yauheni Kaliuta) [1874003] - [scripts] scripts: Require pahole v1.16 when generating BTF (Yauheni Kaliuta) [1874003] - [net] bpf, sockhash: Synchronize delete from bucket list on map free (Yauheni Kaliuta) [1874003] - [net] bpf, sockhash: Fix memory leak when unlinking sockets in sock_hash_free (Yauheni Kaliuta) [1874003] - [net] bpf/sockmap: Fix kernel panic at __tcp_bpf_recvmsg (Yauheni Kaliuta) [1874003] - [kernel] bpf: rework the compat kernel probe handling (Yauheni Kaliuta) [1874003] - [kernel] bpf: handle the compat string in bpf_trace_copy_string better (Yauheni Kaliuta) [1874003] - [kernel] bpf: factor out a bpf_trace_copy_string helper (Yauheni Kaliuta) [1874003] - [net] mmap locking API: add mmap_read_trylock_non_owner() (Yauheni Kaliuta) [1874003] - [net] bpf: sockmap: use mmap locking API (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix ringbuf selftest sample counting undeterminism (Yauheni Kaliuta) [1874003] - [net] bpf: Fix an error code in check_btf_func() (Yauheni Kaliuta) [1874003] - [net] bpf: make bpf_check_uarg_tail_zero() use check_zeroed_user() (Yauheni Kaliuta) [1874003] - [lib] lib: introduce copy_struct_from_user() helper (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add a default $(CXX) value (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: Don't use $(COMPILE.c) (Yauheni Kaliuta) [1874003] - [s390] s390/bpf: Use bcr 0, 0 as tail call nop filler (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix verifier test (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix sample_cnt shared between two threads (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Adapt cls_redirect to call csum_level helper (Yauheni Kaliuta) [1874003] - [net] bpf: Add csum_level helper for fixing up csum levels (Yauheni Kaliuta) [1874003] - [net] bpf: Fix up bpf_skb_adjust_room helper's skb csum setting (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add _GNU_SOURCE for reallocarray to ringbuf.c (Yauheni Kaliuta) [1874003] - [net] bpf: Use tracing helpers for lsm programs (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add test for SO_BINDTODEVICE opt of bpf_setsockopt (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: sync bpf.h (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Add test for ktls with skb bpf ingress policy (Yauheni Kaliuta) [1874003] - [net] bpf: Fix running sk_skb program types with ktls (Yauheni Kaliuta) [1874003] - [net] bpf: Refactor sockmap redirect code so its easy to reuse (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add SEC name for xdp programs attached to device map (Yauheni Kaliuta) [1874003] - [net] bpf: Add support to attach bpf program to a devmap entry (Yauheni Kaliuta) [1874003] - [kernel] bpf: Use strncpy_from_unsafe_strict() in bpf_seq_printf() helper (Yauheni Kaliuta) [1874003] - [net] devmap: Formalize map value as a named struct (Yauheni Kaliuta) [1874003] - [net] bpf: Add rx_queue_mapping to bpf_sock (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add tests for write-only stacks/queues (Yauheni Kaliuta) [1874003] - [documentation] docs/bpf: Add BPF ring buffer design notes (Yauheni Kaliuta) [1874003] - [tools] bpf: Add BPF ringbuf and perf buffer benchmarks (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add BPF ringbuf selftests (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add BPF ring buffer support (Yauheni Kaliuta) [1874003] - [tools] bpf: Implement BPF ring buffer and verifier support for it (Yauheni Kaliuta) [1874003] - [net] bpf: Fix map permissions check (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Cleanup comments in test_maps (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Cleanup some file descriptors in test_maps (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix a typo in test_maps (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix perf_buffer__free() API for sparse allocs (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Test probe_* helpers from SCHED_CLS (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Add sk_msg helpers load and attach test (Yauheni Kaliuta) [1874003] - [net] bpf, sk_msg: Add get socket storage helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Extend bpf_base_func_proto helpers with probe_* and *current_task* (Yauheni Kaliuta) [1874003] - [net] bpf, sk_msg: Add some generic helpers that may be useful from sk_msg (Yauheni Kaliuta) [1874003] - [net] bpf: Fix spelling in comment explaining ARG1 in ___bpf_prog_run (Yauheni Kaliuta) [1874003] - [tools] libbpf: Install headers as part of make install (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add API to consume the perf ring buffer content (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Print correct error message when failing to load BTF (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Make capability check account for new BPF caps (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Clean subcommand help messages (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: CONFIG_LIRC required for test_lirc_mode2.sh (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: CONFIG_IPV6_SEG6_BPF required for test_seg6_loop.o (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add general instructions for test execution (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add printk to test_sk_lookup_kern to encode null ptr check (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, verifier case for non null pointer map value branch (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, verifier case for non null pointer check branch taken (Yauheni Kaliuta) [1874003] - [net] bpf: Verifier track null pointer branch_taken with JNE and JEQ (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: sync bpf.h (Yauheni Kaliuta) [1874003] - [tools] bpf, testing: Add get{peer, sock}name selftests to test_progs (Yauheni Kaliuta) [1874003] - [tools] bpf, bpftool: Enable get{peer, sock}name attach types (Yauheni Kaliuta) [1874003] - [tools] bpf, libbpf: Enable get{peer, sock}name attach types (Yauheni Kaliuta) [1874003] - [net] bpf: Add get{peer, sock}name attach types for sock_addr (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor kprobe, tail call kern progs map definition (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Add tracex7 test file to .gitignore (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor tail call user progs with libbpf (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor kprobe tracing user progs with libbpf (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor pointer error check with libbpf (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add ktls tests to test_sockmap (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add blacklist to test_sockmap (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add whitelist option to test_sockmap (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, provide verbose option for selftests execution (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, break down test_sockmap into subtests (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, improve test_sockmap total bytes counter (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, print error in test_sockmap error cases (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, sockmap test prog run without setting cgroup (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, remove prints from sockmap tests (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, move sockmap bpf prog header into progs (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Remove test_align leftovers (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Move test_align under test_progs (Yauheni Kaliuta) [1874003] - [tools] libbpf, hashmap: Fix signedness warnings (Yauheni Kaliuta) [1874003] - [tools] libbpf, hashmap: Remove unused #include (Yauheni Kaliuta) [1874003] - [net] bpf: Fix check_return_code to only allowin trace_iter progs (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Use CAP_BPF and CAP_PERFMON in tests (Yauheni Kaliuta) [1874003] - [net] bpf: Implement CAP_BPF (Yauheni Kaliuta) [1874003] - [security] bpf, capability: Introduce CAP_BPF (Yauheni Kaliuta) [1874003] - [security] capabilities: Introduce CAP_PERFMON to kernel and user space (Yauheni Kaliuta) [1874003] - [tools] bpf, bpftool: Allow probing for CONFIG_HZ from kernel config (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test for sk helpers in cgroup skb (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add connect_fd_to_fd, connect_wait net helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Introduce bpf_sk_{, ancestor_}cgroup_id helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Allow skb_ancestor_cgroup_id helper in cgroup skb (Yauheni Kaliuta) [1874003] - [net] bpf: Allow sk lookup helpers in cgroup skb (Yauheni Kaliuta) [1874003] - [tools] selftest/bpf: Fix spelling mistake "SIGALARM" -> "SIGALRM" (Yauheni Kaliuta) [1874003] - [net] bpf: Fix bpf_iter's task iterator logic (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test narrow loads for bpf_sock_addr.user_port (Yauheni Kaliuta) [1874003] - [net] bpf: Support narrow loads from bpf_sock_addr.user_port (Yauheni Kaliuta) [1874003] - [samples] samples/bpf: xdp_redirect_cpu: Set MAX_CPUS according to NR_CPUS (Yauheni Kaliuta) [1874003] - [samples] samples/bpf: Remove compiler warnings (Yauheni Kaliuta) [1874003] - [net] bpf: Enable bpf_iter targets registering ctx argument types (Yauheni Kaliuta) [1874003] - [net] bpf: Change func bpf_iter_unreg_target() signature (Yauheni Kaliuta) [1874003] - [net] bpf: net: Refactor bpf_iter target registration (Yauheni Kaliuta) [1874003] - [net] bpf: Add comments to interpret bpf_prog return values (Yauheni Kaliuta) [1874003] - [tools] bpf: Change btf_iter func proto prefix to "bpf_iter_" (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: selftests : Explain bpf_iter test failures with llvm 10.0.0 (Yauheni Kaliuta) [1874003] - [tools] selftest/bpf: Add BPF triggering benchmark (Yauheni Kaliuta) [1874003] - [tools] selftest/bpf: Fmod_ret prog and implement test_overhead as part of bench (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add benchmark runner infrastructure (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Extract parse_num_list into generic testing_helpers.c (Yauheni Kaliuta) [1874003] - [tools] tools, bpf: Synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1874003] - [scripts] bpf: Minor fixes to BPF helpers documentation (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Minor fixes for documentation (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Poison and replace kernel integer typedefs (Yauheni Kaliuta) [1874003] - [tools] bpf, libbpf: Replace zero-length array with flexible-array (Yauheni Kaliuta) [1874003] - [arm64] bpf, arm64: Optimize ADD, SUB, JMP BPF_K using arm64 add/sub immediates (Yauheni Kaliuta) [1874003] - [arm64] bpf, arm64: Optimize AND, OR, XOR, JSET BPF_K using arm64 logical immediates (Yauheni Kaliuta) [1874003] - [tools] bpf, runqslower: include proper uapi/bpf.h (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: selftests: Add iter progs for bpf_map/task/task_file (Yauheni Kaliuta) [1874003] - [tools] tools/bpftool: Add bpf_iter support for bptool (Yauheni Kaliuta) [1874003] - [tools] tools/libpf: Add offsetof/container_of macro in bpf_helpers.h (Yauheni Kaliuta) [1874003] - [tools] tools/libbpf: Add bpf_iter support (Yauheni Kaliuta) [1874003] - [net] bpf: Support variable length array in tracing programs (Yauheni Kaliuta) [1874003] - [net] bpf: Handle spilled PTR_TO_BTF_ID properly when checking stack_boundary (Yauheni Kaliuta) [1874003] - [kernel] bpf: Add bpf_seq_printf and bpf_seq_write helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Add PTR_TO_BTF_ID_OR_NULL support (Yauheni Kaliuta) [1874003] - [net] bpf: Add task and task/file iterator targets (Yauheni Kaliuta) [1874003] - [net] bpf: Add bpf_map iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Implement common macros/helpers for target iterators (Yauheni Kaliuta) [1874003] - [net] bpf: Create file bpf iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Create anonymous bpf iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Implement bpf_seq_read() for bpf iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Support bpf tracing/iter programs for BPF_LINK_UPDATE (Yauheni Kaliuta) [1874003] - [net] bpf: Support bpf tracing/iter programs for BPF_LINK_CREATE (Yauheni Kaliuta) [1874003] - [net] bpf: Allow loading of a bpf_iter program (Yauheni Kaliuta) [1874003] - [net] bpf: Implement an interface to register bpf_iter targets (Yauheni Kaliuta) [1874003] - [tools] bpf: Allow any port in bpf_bind helper (Yauheni Kaliuta) [1874003] - [net] net: Refactor arguments of inet{,6}_bind (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Move existing common networking parts into network_helpers (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Generalize helpers to control background listener (Yauheni Kaliuta) [1874003] - [net] crypto: lib/sha1 - rename "sha" to "sha1" (Yauheni Kaliuta) [1874003] - [arm64] arm64: bpf: Annotate JITed code for BTI (Yauheni Kaliuta) [1874003] - [arm64] arm64: insn: Add constants for new HINT instruction decode (Yauheni Kaliuta) [1874003] - [kernel] sysctl: Fix unused function warning (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Use reno instead of dctcp (Yauheni Kaliuta) [1874003] - [net] bpf: Fix use-after-free of bpf_link when priming half-fails (Yauheni Kaliuta) [1874003] - [tools] bpf: Bpf_{g, s}etsockopt for struct bpf_sock_addr (Yauheni Kaliuta) [1874003] - [tools] bpf: Add selftest for BPF_ENABLE_STATS (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add support for command BPF_ENABLE_STATS (Yauheni Kaliuta) [1874003] - [net] bpf: Sharing bpf runtime stats with BPF_ENABLE_STATS (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test allowed maps for bpf_sk_select_reuseport (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix false uninitialized variable warning (Yauheni Kaliuta) [1874003] - [net] bpf: Fix unused variable warning (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Use SOCKMAP for server sockets in bpf_sk_assign test (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test that lookup on SOCKMAP/SOCKHASH is allowed (Yauheni Kaliuta) [1874003] - [net] bpf: Allow bpf_map_lookup_elem for SOCKMAP and SOCKHASH (Yauheni Kaliuta) [1874003] - [tools] tools: bpftool: Make libcap dependency optional (Yauheni Kaliuta) [1874003] - [tools] tools: bpftool: Allow unprivileged users to probe features (Yauheni Kaliuta) [1874003] - [tools] tools: bpftool: For "feature probe" define "full_mode" bool as global (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Disable ASAN instrumentation for mmap()'ed memory read (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix invalid memory reads in core_relo selftest (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix memory leak in extract_build_id() (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix memory leak and possible double-free in hashmap__clear (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Convert test_hashmap into test_progs test (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add SAN_CFLAGS param to selftests build to allow sanitizers (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Ensure test flavors use correct skeletons (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add BTF-defined map-in-map support (Yauheni Kaliuta) [1874003] - [tools] libbpf: Refactor map creation logic and fix cleanup leak (Yauheni Kaliuta) [1874003] - [tools] libbpf: Refactor BTF-defined map definition parsing logic (Yauheni Kaliuta) [1874003] - [tools] bpftool: Add link bash completions (Yauheni Kaliuta) [1874003] - [tools] bpftool: Add bpftool-link manpage (Yauheni Kaliuta) [1874003] - [tools] bpftool: Add bpf_link show and pin support (Yauheni Kaliuta) [1874003] - [tools] bpftool: Expose attach_type-to-string array to non-cgroup code (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test bpf_link's get_next_id, get_fd_by_id, and get_obj_info (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add low-level APIs for new bpf_link commands (Yauheni Kaliuta) [1874003] - [net] bpf: Add support for BPF_OBJ_GET_INFO_BY_FD for bpf_link (Yauheni Kaliuta) [1874003] - [net] bpf: Support GET_FD_BY_ID and GET_NEXT_ID for bpf_link (Yauheni Kaliuta) [1874003] - [net] bpf: Allocate ID for bpf_link (Yauheni Kaliuta) [1874003] - [tools] libbpf: Remove unneeded semicolon in btf_dump_emit_type (Yauheni Kaliuta) [1874003] - [net] bpf, cgroup: Remove unused exports (Yauheni Kaliuta) [1874003] - [tools] libbpf: Return err if bpf_object__load failed (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add cls_redirect classifier (Yauheni Kaliuta) [1874003] - [net] bpf: Make verifier log more relevant by default (Yauheni Kaliuta) [1874003] - [net] bpf: add bpf_ktime_get_boot_ns() (Yauheni Kaliuta) [1874003] - [net] net: bpf: Make bpf_ktime_get_ns() available to non GPL programs (Yauheni Kaliuta) [1874003] - [net] net: bpf: Allow TC programs to call BPF_FUNC_skb_change_head (Yauheni Kaliuta) [1874003] - [net] bpf: Fix missing bpf_base_func_proto in cgroup_base_func_proto for CGROUP_NET=n (Yauheni Kaliuta) [1874003] - [tools] bpf_helpers.h: Add note for building with vmlinux.h or linux/types.h (Yauheni Kaliuta) [1874003] - [net] bpf: Enable more helpers for BPF_PROG_TYPE_CGROUP_{DEVICE, SYSCTL, SOCKOPT} (Yauheni Kaliuta) [1874003] - [tools] tools/bpf/bpftool: Remove duplicate headers (Yauheni Kaliuta) [1874003] - [net] bpf: Remove set but not used variable 'dst_known' (Yauheni Kaliuta) [1874003] - [net] xdp: export the DEV_MAP_BULK_SIZE macro (Yauheni Kaliuta) [1874003] - [kernel] trace/bpf_trace: Open access for CAP_PERFMON privileged process (Yauheni Kaliuta) [1874003] - [scsi] scsi: lpfc: Fix initial FLOGI failure due to BBSCN not supported (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.5 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Reject CT request for MIB commands (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add FDMI Vendor MIB support (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix duplicate wq_create_version check (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Removed unused macros in lpfc_attr.c (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Re-fix use after free in lpfc_rq_buf_free() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix scheduling call while in softirq context in lpfc_unreg_rpi (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix invalid sleeping context in lpfc_sli4_nvmet_alloc() (Dick Kennedy) [1887549] - [scsi] scsi: Remove unneeded break statements (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add dependency on CPU_FREQ (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Remove unneeded variable 'status' in lpfc_fcp_cpu_map_store() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Drop nodelist reference on error in lpfc_gen_req() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Remove set but not used 'qp' (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.4 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Extend the RDF FPIN Registration descriptor for additional events (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix FLOGI/PLOGI receive race condition in pt2pt discovery (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix setting IRQ affinity with an empty CPU mask (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix spelling mistake "Cant" -> "Can't" (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.3 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix validation of bsg reply lengths (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix retry of PRLI when status indicates its unsupported (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix oops when unloading driver while running mds diags (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix RSCN timeout due to incorrect gidft counter (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix no message shown for lpfc_hdw_queue out of range value (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix FCoE speed reporting (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add missing misc_deregister() for lpfc_init() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: nvmet: Avoid hang / use-after-free again when destroying targetport (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix typo in comment for ULP (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add description for lpfc_release_rpi()'s 'ndlpl param (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix a bunch of kerneldoc misdemeanors (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add and rename a whole bunch of function parameter descriptions (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Use __printf() format notation (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix kerneldoc parameter formatting/misnaming/missing issues (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix some function parameter descriptions (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Ensure variable has the same stipulations as code using it (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix-up formatting/docrot where appropriate (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Provide description for lpfc_mem_alloc()'s 'align' param (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix-up around 120 documentation issues (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Remove unused variable 'pg_addr' (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Correct some pretty obvious misdocumentation (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix less-than-zero comparison of unsigned value (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix interrupt assignments when multiple vectors are supported on same CPU (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix inconsistent indenting (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.2 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add an internal trace log buffer (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add blk_io_poll support for latency improvment (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add support to display if adapter dumps are available (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Allow applications to issue Common Set Features mailbox command (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix language in 0373 message to reflect non-error message (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix shost refcount mismatch when deleting vport (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix stack trace seen while setting rrq active (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix oops due to overrun when reading SLI3 data (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix missing MDS functionality (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix unused assignment in lpfc_sli4_bsg_link_diag_test (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Avoid another null dereference in lpfc_sli4_hba_unset() (Dick Kennedy) [1887549] - [scsi] lpfc_debugfs: get rid of pointless access_ok() (Dick Kennedy) [1887549] - [scsi] lpfc: add nvmet discovery_event op support (Dick Kennedy) [1887549] - [scsi] scsi: core: Don't start concurrent async scan on same host (Ming Lei) [1874501] - [crypto] crypto: bcm - Verify GCM/CCM key length in setkey (Vladis Dronov) [1887389] - [x86] x86/cpufeatures: Add support for fast short REP; MOVSB (Steve Best) [1838265] - [scsi] scsi: mpt3sas: A small correction in _base_process_reply_queue (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix sync irqs (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Detect tampered Aero and Sea adapters (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Don't call disable_irq from IRQ poll handler (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Remove pci-dma-compat wrapper API (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Remove superfluous memset() (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Update driver version to 35.100.00.00 (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Postprocessing of target and LUN reset (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Add functions to check if any cmd is outstanding on Target and LUN (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Rename and export interrupt mask/unmask functions (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Cancel the running work during host reset (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Dump system registers for debugging (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Memset config_cmds.reply buffer with zeros (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix kdoc comments format (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix set but unused variable (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix error returns in BRM_status_show (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix unlock imbalance (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix spelling mistake (Tomas Henzl) [1851440] - [s390] s390/zcrypt: Fix ZCRYPT_PERDEV_REQCNT ioctl (Claudio Imbrenda) [1885962] - [scsi] scsi: megaraid: Make smp_affinity_enable static (Tomas Henzl) [1860910] - [scsi] remove ioremap_nocache and devm_ioremap_nocache (Tomas Henzl) [1860910] - [scsi] scsi: megaraid: Remove set but unused variable (Tomas Henzl) [1860910] - [scsi] scsi: megaraid: Fix compilation warnings (Tomas Henzl) [1860910] - [scsi] scsi: megaraid: Fix kdoc comments format (Tomas Henzl) [1860910] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Tomas Henzl) [1860910] - [net] ethtool: Add support for 100Gbps per lane link modes (Ivan Vecera) [1879202]- [netdrv] ibmveth: Fix use of ibmveth in a bridge (Steve Best) [1893294] - [x86] ima: add a new CONFIG for loading arch-specific policies (Bruno Meneguele) [1869758] - [netdrv] e1000e: Add support for Meteor Lake (Ken Cox) [1838750] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Ken Cox) [1838750] - [netdrv] treewide: Use fallthrough pseudo-keyword (Ken Cox) [1838750] - [netdrv] e1000e: Remove unnecessary usages of memset (Ken Cox) [1838750] - [netdrv] e1000e: continue to init PHY even when failed to disable ULP (Ken Cox) [1838750] - [netdrv] ethernet/intel: Convert fallthrough code comments (Ken Cox) [1838750] - [netdrv] net/intel: remove driver versions from Intel drivers (Ken Cox) [1838750] - [netdrv] e1000e: fix unused-function warning (Ken Cox) [1838750] - [netdrv] e1000e: Do not wake up the system via WOL if device wakeup is disabled (Ken Cox) [1838750] - [netdrv] e1000e: Relax condition to trigger reset for ME workaround (Ken Cox) [1838750] - [netdrv] e1000e: disable s0ix entry and exit flows for ME systems (Ken Cox) [1838750] - [netdrv] e1000e: Disable TSO for buffer overrun workaround (Ken Cox) [1838750] - [netdrv] e1000e: Warn if disabling ULP failed (Ken Cox) [1838750] - [scsi] scsi: fnic: Do not call 'scsi_done()' for unhandled commands (Govindarajulu Varadarajan) [1870397] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Corinna Vinschen) [1838749] - [netdrv] igbvf: use generic power management (Corinna Vinschen) [1838749] - [netdrv] ethernet/intel: Convert fallthrough code comments (Corinna Vinschen) [1838749] - [netdrv] net/intel: remove driver versions from Intel drivers (Corinna Vinschen) [1838749] - [net] SUNRPC: Properly set the @subbuf parameter of xdr_buf_subsegment() (Steve Dickson) [1884361] - [net] SUNRPC: Fix ("SUNRPC: Add "@len" parameter to gss_unwrap()") (Steve Dickson) [1884361] - [net] netfilter: nf_queue: do not release refcouts until nf_reinject is done (Florian Westphal) [1886557] - [net] netfilter: nf_queue: place bridge physports into queue_entry struct (Florian Westphal) [1886557] - [net] netfilter: nf_queue: make nf_queue_entry_release_refs static (Florian Westphal) [1886557] - [firewire] firewire: Deprecate Firewire support in RHEL8 (Prarit Bhargava) [1871863] - [lib] Add pldmfw library for PLDM firmware update (Patrick Talbert) [1878278] - [lib] bitops: introduce the for_each_set_clump8 macro (Patrick Talbert) [1878278] - [mm] x86/ioremap: Map EFI runtime services data as encrypted for SEV (Lenny Szubowicz) [1883134] - [powerpc] Revert "powerpc/powernv/idle: Replace CPU feature check with PVR check" (Steve Best) [1882365] - [powerpc] powerpc/xive: Do not expose a debugfs file when XIVE is disabled (Steve Best) [1854526] - [kvm] powerpc/xive: Enforce load-after-store ordering when StoreEOI is active (Steve Best) [1854526] - [powerpc] powerpc/xive: Add a debugfs file to dump internal XIVE state (Steve Best) [1854526] - [net] openvswitch: add TTL decrement action (Eelco Chaudron) [1762450]- [kernel] futex: Adjust absolute futex timeouts with per time namespace offset (Waiman Long) [1548297] - [kernel] futex: Remove unused or redundant includes (Waiman Long) [1548297] - [include] vdso: Fix clocksource.h macro detection (Waiman Long) [1548297] - [x86] um: Fix header inclusion (Waiman Long) [1548297] - [arm64] arm64: vdso32: make vdso32 install conditional (Waiman Long) [1548297] - [arm64] ARM64: vdso32: Install vdso32 from vdso_install (Waiman Long) [1548297] - [arm64] vdso/treewide: Add vdso_data pointer argument to __arch_get_hw_counter() (Waiman Long) [1548297] - [kernel] timekeeping/vsyscall: Provide vdso_update_begin/end() (Waiman Long) [1548297] - [include] lib/vdso: Allow to add architecture-specific vdso data (Waiman Long) [1548297] - [arm64] arm64: enable time namespace support (Waiman Long) [1548297] - [arm64] arm64/vdso: Restrict splitting VVAR VMA (Waiman Long) [1548297] - [arm64] arm64/vdso: Handle faults on timens page (Waiman Long) [1548297] - [arm64] arm64/vdso: Add time namespace page (Waiman Long) [1548297] - [arm64] arm64/vdso: Zap vvar pages when switching to a time namespace (Waiman Long) [1548297] - [arm64] arm64/vdso: use the fault callback to map vvar pages (Waiman Long) [1548297] - [arm64] arm64: compat: Allow 32-bit vdso and sigpage to co-exist (Waiman Long) [1548297] - [x86] x86/vdso: Unbreak paravirt VDSO clocks (Waiman Long) [1548297] - [lib] lib/vdso: Provide sanity check for cycles (again) (Waiman Long) [1548297] - [kernel] clocksource: Remove obsolete ifdef (Waiman Long) [1548297] - [tools] selftests/timens: handle a case when alarm clocks are not supported (Waiman Long) [1548297] - [arm64] arm64: vdso: Add --eh-frame-hdr to ldflags (Waiman Long) [1548297] - [arm64] arm64: vdso: Add -fasynchronous-unwind-tables to cflags (Waiman Long) [1548297] - [arm64] arm64: vdso: use consistent 'map' nomenclature (Waiman Long) [1548297] - [arm64] arm64: vdso: use consistent 'abi' nomenclature (Waiman Long) [1548297] - [arm64] arm64: vdso: simplify arch_vdso_type ifdeffery (Waiman Long) [1548297] - [arm64] arm64: vdso: remove aarch32_vdso_pages (Waiman Long) [1548297] - [arm64] arm64: vdso: Add '-Bsymbolic' to ldflags (Waiman Long) [1548297] - [x86] x86/vdso/vdso2c: Convert iterators to unsigned (Waiman Long) [1548297] - [x86] x86/vdso/vdso2c: Correct error messages on file open (Waiman Long) [1548297] - [include] vdso/datapage: Use correct clock mode name in comment (Waiman Long) [1548297] - [arm64] arm64: vdso: don't free unallocated pages (Waiman Long) [1548297] - [fs] proc, time/namespace: Show clock symbolic names in /proc/pid/timens_offsets (Waiman Long) [1548297] - [kernel] time/namespace: Add max_time_namespaces ucount (Waiman Long) [1548297] - [kernel] time/namespace: Fix time_for_children symlink (Waiman Long) [1548297] - [arm64] arm64: compat: Fix syscall number of compat_clock_getres (Waiman Long) [1548297] - [tools] selftests/timens: Remove duplicated include (Waiman Long) [1548297] - [kernel] sys/sysinfo: Respect boottime inside time namespace (Waiman Long) [1548297] - [clocksource] clocksource/drivers/arm_arch_timer: Fix vDSO clockmode when vDSO disabled (Waiman Long) [1548297] - [lib] lib/vdso: Enable common headers (Waiman Long) [1548297] - [x86] x86/vdso: Enable x86 to use common headers (Waiman Long) [1548297] - [arm64] arm64: vdso32: Include common headers in the vdso library (Waiman Long) [1548297] - [arm64] arm64: vdso: Include common headers in the vdso library (Waiman Long) [1548297] - [arm64] arm64: Introduce asm/vdso/processor.h (Waiman Long) [1548297] - [arm64] arm64: vdso32: Code clean up (Waiman Long) [1548297] - [include] linux/elfnote.h: Replace elf.h with UAPI equivalent (Waiman Long) [1548297] - [include] common: Introduce processor.h (Waiman Long) [1548297] - [include] linux/ktime.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/jiffies.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/time64.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/time32.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/time.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/math64.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/clocksource.h: Extract common header for vDSO (Waiman Long) [1548297] - [arm64] arm64: Introduce asm/vdso/clocksource.h (Waiman Long) [1548297] - [x86] x86: Introduce asm/vdso/clocksource.h (Waiman Long) [1548297] - [include] linux/limits.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/bits.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/const.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/bits.h: make BIT(), GENMASK(), and friends available in assembly (Waiman Long) [1548297] - [lib] lib/vdso: Allow architectures to provide the vdso data pointer (Waiman Long) [1548297] - [lib] lib/vdso: Allow architectures to override the ns shift operation (Waiman Long) [1548297] - [lib] lib/vdso: Allow fixed clock mode (Waiman Long) [1548297] - [include] lib/vdso: Move VCLOCK_TIMENS to vdso_clock_modes (Waiman Long) [1548297] - [kernel] lib/vdso: Avoid highres update if clocksource is not VDSO capable (Waiman Long) [1548297] - [lib] lib/vdso: Cleanup clock mode storage leftovers (Waiman Long) [1548297] - [arm64] ARM/arm64: vdso: Use common vdso clock mode storage (Waiman Long) [1548297] - [x86] x86/vdso: Use generic VDSO clock mode storage (Waiman Long) [1548297] - [kernel] clocksource: Add common vdso clock mode storage (Waiman Long) [1548297] - [x86] x86/vdso: Move VDSO clocksource state tracking to callback (Waiman Long) [1548297] - [include] clocksource: Cleanup struct clocksource and documentation (Waiman Long) [1548297] - [lib] lib/vdso: Allow the high resolution parts to be compiled out (Waiman Long) [1548297] - [lib] lib/vdso: Only read hrtimer_res when needed in __cvdso_clock_getres() (Waiman Long) [1548297] - [x86] x86/vdso: Mark the TSC clocksource path likely (Waiman Long) [1548297] - [kernel] lib/vdso: Update coarse timekeeper unconditionally (Waiman Long) [1548297] - [kernel] lib/vdso: Make __arch_update_vdso_data() logic understandable (Waiman Long) [1548297] - [kernel] alarmtimer: Unregister wakeup source when module get fails (Waiman Long) [1548297] - [tools] selftests/timens: Check for right timens offsets after fork and exec (Waiman Long) [1548297] - [tools] selftests/timens: Add a simple perf test for clock_gettime() (Waiman Long) [1548297] - [tools] selftests/timens: Add timer offsets test (Waiman Long) [1548297] - [tools] selftests/timens: Add procfs selftest (Waiman Long) [1548297] - [tools] selftests/timens: Add a test for clock_nanosleep() (Waiman Long) [1548297] - [tools] selftests/timens: Add a test for timerfd (Waiman Long) [1548297] - [tools] selftests/timens: Add Time Namespace test for supported clocks (Waiman Long) [1548297] - [fs] fs/proc: Introduce /proc/pid/timens_offsets (Waiman Long) [1548297] - [x86] x86/vdso: Zap vvar pages when switching to a time namespace (Waiman Long) [1548297] - [x86] x86/vdso: On timens page fault prefault also VVAR page (Waiman Long) [1548297] - [x86] x86/vdso: Handle faults on timens page (Waiman Long) [1548297] - [kernel] time: Allocate per-timens vvar page (Waiman Long) [1548297] - [x86] x86/vdso: Add time napespace page (Waiman Long) [1548297] - [x86] x86/vdso: Provide vdso_data offset on vvar_page (Waiman Long) [1548297] - [lib] lib/vdso: Prepare for time namespace support (Waiman Long) [1548297] - [x86] x86/vdso: Restrict splitting VVAR VMA (Waiman Long) [1548297] - [fs] fs/proc: Respect boottime inside time namespace for /proc/uptime (Waiman Long) [1548297] - [kernel] posix-timers: Make clock_nanosleep() time namespace aware (Waiman Long) [1548297] - [kernel] hrtimers: Prepare hrtimer_nanosleep() for time namespaces (Waiman Long) [1548297] - [kernel] alarmtimer: Make nanosleep() time namespace aware (Waiman Long) [1548297] - [kernel] posix-timers: Make timer_settime() time namespace aware (Waiman Long) [1548297] - [fs] timerfd: Make timerfd_settime() time namespace aware (Waiman Long) [1548297] - [kernel] time: Add do_timens_ktime_to_host() helper (Waiman Long) [1548297] - [kernel] posix-clocks: Wire up clock_gettime() with timens offsets (Waiman Long) [1548297] - [kernel] posix-timers: Use clock_get_ktime() in common_timer_get() (Waiman Long) [1548297] - [kernel] posix-clocks: Introduce clock_get_ktime() callback (Waiman Long) [1548297] - [kernel] alarmtimer: Provide get_timespec() callback (Waiman Long) [1548297] - [kernel] alarmtimer: Rename gettime() callback to get_ktime() (Waiman Long) [1548297] - [kernel] posix-clocks: Rename .clock_get_timespec() callbacks accordingly (Waiman Long) [1548297] - [kernel] posix-clocks: Rename the clock_get() callback to clock_get_timespec() (Waiman Long) [1548297] - [kernel] time: Add timens_offsets to be used for tasks in time namespace (Waiman Long) [1548297] - [kernel] ns: Introduce Time Namespace (Waiman Long) [1548297] - [lib] lib/vdso: Mark do_hres() and do_coarse() as __always_inline (Waiman Long) [1548297] - [lib] lib/vdso: Avoid duplication in __cvdso_clock_getres() (Waiman Long) [1548297] - [lib] lib/vdso: Let do_coarse() return 0 to simplify the callsite (Waiman Long) [1548297] - [x86] x86/vdso: Remove unused VDSO_HAS_32BIT_FALLBACK (Waiman Long) [1548297] - [arm64] arm64: compat: vdso: Remove unused VDSO_HAS_32BIT_FALLBACK (Waiman Long) [1548297] - [lib] lib/vdso: Remove checks on return value for 32 bit vDSO (Waiman Long) [1548297] - [lib] lib/vdso: Remove VDSO_HAS_32BIT_FALLBACK (Waiman Long) [1548297] - [arm64] arm64: compat: vdso: Expose BUILD_VDSO32 (Waiman Long) [1548297] - [include] lib/vdso: Add unlikely() hint into vdso_read_begin() (Waiman Long) [1548297] - [x86] y2038: vdso: change time_t to __kernel_old_time_t (Waiman Long) [1548297] - [uapi] y2038: add __kernel_old_timespec and __kernel_old_time_t (Waiman Long) [1548297] - [arm64] timekeeping/vsyscall: Update VDSO data unconditionally (Waiman Long) [1548297] - [x86] um: Fix VDSO compiler warning (Waiman Long) [1548297] - [kernel] timekeeping/vsyscall: Prevent math overflow in BOOTTIME update (Waiman Long) [1548297] - [arm64] arm64: compat: vdso: Use legacy syscalls as fallback (Waiman Long) [1548297] - [x86] x86/vdso/32: Use 32bit syscall fallback (Waiman Long) [1548297] - [arm64] arm64: vdso: Cleanup Makefiles (Waiman Long) [1548297] - [arm64] arm64: vdso: fix flip/flop vdso build bug (Waiman Long) [1548297] - [x86] x86/vdso: Fix flip/flop vdso build bug (Waiman Long) [1548297] - [kernel] timekeeping/vsyscall: Use __iter_div_u64_rem() (Waiman Long) [1548297] - [arm64] arm64: compat: Fix __arch_get_hw_counter() implementation (Waiman Long) [1548297] - [arm64] arm64: Fix __arch_get_hw_counter() implementation (Waiman Long) [1548297] - [arm64] arm64: compat: No need for pre-ARMv7 barriers on an ARMv8 system (Waiman Long) [1548297] - [arm64] arm64: vdso: Remove unnecessary asm-offsets.c definitions (Waiman Long) [1548297] - [include] vdso: Remove superfluous #ifdef __KERNEL__ in vdso/datapage.h (Waiman Long) [1548297] - [arm64] arm64: vdso: Enable vDSO compat support (Waiman Long) [1548297] - [arm64] arm64: compat: Get sigreturn trampolines from vDSO (Waiman Long) [1548297] - [arm64] arm64: elf: VDSO code page discovery (Waiman Long) [1548297] - [arm64] arm64: compat: VDSO setup for compat layer (Waiman Long) [1548297] - [arm64] arm64: vdso: Refactor vDSO code (Waiman Long) [1548297] - [arm64] arm64: compat: Add vDSO (Waiman Long) [1548297] - [arm64] arm64: compat: Generate asm offsets for signals (Waiman Long) [1548297] - [arm64] arm64: compat: Expose signal related structures (Waiman Long) [1548297] - [arm64] arm64: compat: Add missing syscall numbers (Waiman Long) [1548297] - [arm64] arm64: vdso: Build vDSO with -ffixed-x18 (Waiman Long) [1548297] - [arm64] arm64: vdso: Substitute gettimeofday() with C implementation (Waiman Long) [1548297] - [lib] lib/vdso: Build 32 bit specific functions in the right context (Waiman Long) [1548297] - [lib] lib/vdso: Make __cvdso_clock_getres() static (Waiman Long) [1548297] - [lib] lib/vdso: Make clock_getres() POSIX compliant again (Waiman Long) [1548297] - [lib] lib/vdso/32: Provide legacy syscall fallbacks (Waiman Long) [1548297] - [lib] lib/vdso: Move fallback invocation to the callers (Waiman Long) [1548297] - [lib] lib/vdso/32: Remove inconsistent NULL pointer checks (Waiman Long) [1548297] - [x86] lib/vdso: Make delta calculation work correctly (Waiman Long) [1548297] - [x86] x86/vdso: Add clock_gettime64() entry point (Waiman Long) [1548297] - [x86] x86/vdso: Add clock_getres() entry point (Waiman Long) [1548297] - [x86] x86/vdso: Switch to generic vDSO implementation (Waiman Long) [1548297] - [x86] x86/vdso: Prevent segfaults due to hoisted vclock reads (Waiman Long) [1548297] - [kernel] timekeeping: Provide a generic update_vsyscall() implementation (Waiman Long) [1548297] - [lib] lib/vdso: Add compat support (Waiman Long) [1548297] - [lib] lib/vdso: Provide generic VDSO implementation (Waiman Long) [1548297] - [include] hrtimer: Split out hrtimer defines into separate header (Waiman Long) [1548297] - [include] vdso: Define standardized vdso_datapage (Waiman Long) [1548297] - [arm64] arm64: arch_timer: mark functions as __always_inline (Waiman Long) [1548297] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 223 (Waiman Long) [1548297] - [clocksource] clocksource/drivers/arm_arch_timer: Don't trace count reader functions (Waiman Long) [1548297] - [arm64] arm64: vdso: Explicitly add build-id option (Waiman Long) [1548297] - [x86] gcc-9: properly declare the {pv, hv}clock_page storage (Waiman Long) [1548297] - [arm64] arm64: vdso: Fix clock_getres() for CLOCK_REALTIME (Waiman Long) [1548297] - [arm64] arm64: compat: Refactor aarch32_alloc_vdso_pages() (Waiman Long) [1548297] - [arm64] arm64: compat: Split kuser32 (Waiman Long) [1548297] - [arm64] arm64: compat: Alloc separate pages for vectors and sigpage (Waiman Long) [1548297] - [arm64] arm64: arch_timer: Ensure counter register reads occur with seqlock held (Waiman Long) [1548297] - [clocksource] clocksource/arm_arch_timer: Use arch_timer_read_counter to access stable counters (Waiman Long) [1548297] - [clocksource] clocksource/arm_arch_timer: Remove use of workaround static key (Waiman Long) [1548297] - [arm64] clocksource/arm_arch_timer: Drop use of static key in arch_timer_reg_read_stable (Waiman Long) [1548297] - [clocksource] clocksource/arm_arch_timer: Direcly assign set_next_event workaround (Waiman Long) [1548297] - [arm64] arm64: Use arch_timer_read_counter instead of arch_counter_get_cntvct (Waiman Long) [1548297] - [watchdog] watchdog/sbsa: Use arch_timer_read_counter instead of arch_counter_get_cntvct (Waiman Long) [1548297] - [kernel] alarmtimer: Return correct remaining time (Waiman Long) [1548297] - [arm64] arm64: vdso: use $(LD) instead of $(CC) to link VDSO (Waiman Long) [1548297] - [arm64] arm64: vdso: fix and clean-up Makefile (Waiman Long) [1548297] - [x86] x86/vdso: Remove hpet_page from vDSO (Waiman Long) [1548297] - [scripts] checksyscalls: fix up mq_timedreceive and stat exceptions (Waiman Long) [1548297] - [uapi] time: Add time_types.h (Waiman Long) [1548297] - [uapi] socket: Add struct __kernel_sock_timeval (Waiman Long) [1548297] - [arm64] arm64: asm-offsets: remove unused offsets (Waiman Long) [1548297] - [arm64] y2038: add 64-bit time_t syscalls to all 32-bit architectures (Waiman Long) [1548297] - [arm64] arm64: replace arm64-obj-* in Makefile with obj-* (Waiman Long) [1548297] - [x86] x86/vdso: Remove obsolete "fake section table" reservation (Waiman Long) [1548297] - [x86] x86/vdso: Rename variable to fix -Wshadow warning (Waiman Long) [1548297] - [x86] x86/vdso: Rearrange do_hres() to improve code generation (Waiman Long) [1548297] - [x86] x86/vdso: Document vgtod_ts better (Waiman Long) [1548297] - [x86] x86/vdso: Remove "memory" clobbers in the vDSO syscall fallbacks (Waiman Long) [1548297] - [x86] x86/vdso: Initialize the CPU/node NR segment descriptor earlier (Waiman Long) [1548297] - [x86] x86/vdso: Introduce helper functions for CPU and node number (Waiman Long) [1548297] - [x86] x86/segments/64: Rename the GDT PER_CPU entry to CPU_NUMBER (Waiman Long) [1548297] - [x86] x66/vdso: Add CLOCK_TAI support (Waiman Long) [1548297] - [x86] x86/vdso: Move cycle_last handling into the caller (Waiman Long) [1548297] - [x86] x86/vdso: Simplify the invalid vclock case (Waiman Long) [1548297] - [x86] x86/vdso: Replace the clockid switch case (Waiman Long) [1548297] - [x86] x86/vdso: Collapse coarse functions (Waiman Long) [1548297] - [x86] x86/vdso: Collapse high resolution functions (Waiman Long) [1548297] - [x86] x86/vdso: Introduce and use vgtod_ts (Waiman Long) [1548297] - [x86] x86/vdso: Use unsigned int consistently for vsyscall_gtod_data:: Seq (Waiman Long) [1548297] - [x86] x86/vdso: Enforce 64bit clocksource (Waiman Long) [1548297] - [x86] x86/time: Implement clocksource_arch_init() (Waiman Long) [1548297] - [kernel] clocksource: Provide clocksource_arch_init() (Waiman Long) [1548297] - [fs] fs/proc/uptime.c: use ktime_get_boottime_ts64 (Waiman Long) [1548297] - [include] y2038: Provide aliases for compat helpers (Waiman Long) [1548297] - [fs] kernel: add kcompat_sys_{f,}statfs64() (Waiman Long) [1548297] - [kernel] sysinfo: Remove get_monotonic_boottime() (Waiman Long) [1548297] - [kernel] posix-timers: Use new ktime_get_*_ts64() helpers (Waiman Long) [1548297] - [kernel] time: Use ktime_get_real_seconds() in time syscall (Waiman Long) [1548297] - [include] time: Introduce struct __kernel_itimerspec (Waiman Long) [1548297] - [scripts] kconfig: improve the recursive dependency report (Bruno Meneguele) [1890578] - [scripts] kconfig: report recursive dependency involving 'imply' (Bruno Meneguele) [1890578] - [scripts] kconfig: error out when seeing recursive dependency (Bruno Meneguele) [1890578] - [scsi] scsi: hpsa: Update copyright (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Remove pci-dma-compat wrapper API (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Use fallthrough pseudo-keyword (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Correct ctrl queue depth (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Bump version (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Increase controller error handling timeout (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Increase queue depth for external LUNs (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Correct rare oob condition (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: hpsa_ioctl(): Tidy up a bit (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Get rid of compat_alloc_user_space() (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Don't bother with vmalloc for BIG_IOCTL_Command_struct (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Lift {BIG_, }IOCTL_Command_struct copy{in, out} into hpsa_ioctl() (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: remove ioremap_nocache and devm_ioremap_nocache (Joseph Szczypek) [1861541] - [tools] selftests/powerpc: Make alignment handler test P9N DD2.1 vector CI load workaround (Gustavo Duarte) [1887442] - [powerpc] powerpc: Fix undetected data corruption with P9N DD2.1 VSX CI load emulation (Gustavo Duarte) [1887442] - [scsi] scsi: smartpqi: Update copyright (Don Brace) [1861538] - [scsi] scsi: smartpqi: Bump version to 1.2.16-010 (Don Brace) [1861538] - [scsi] scsi: smartpqi: Add RAID bypass counter (Don Brace) [1861538] - [scsi] scsi: smartpqi: Avoid crashing kernel for controller issues (Don Brace) [1861538] - [scsi] scsi: smartpqi: Update logical volume size after expansion (Don Brace) [1861538] - [scsi] scsi: smartpqi: Add id support for SmartRAID 3152-8i (Don Brace) [1861538] - [scsi] scsi: smartpqi: Identify physical devices without issuing INQUIRY (Don Brace) [1861538] - [mm] mm: simplify find_min_pfn_with_active_regions() (Baoquan He) [1844157] - [mm] mm: clean up free_area_init_node() and its helpers (Baoquan He) [1844157] - [mm] mm: rename free_area_init_node() to free_area_init_memoryless_node() (Baoquan He) [1844157] - [mm] mm: free_area_init: allow defining max_zone_pfn in descending order (Baoquan He) [1844157] - [powerpc] mm: remove early_pfn_in_nid() and CONFIG_NODES_SPAN_OTHER_NODES (Baoquan He) [1844157] - [mm] mm: memmap_init: iterate over memblock regions rather that check each PFN (Baoquan He) [1844157] - [mm] arm64: simplify detection of memory zone boundaries for UMA configs (Baoquan He) [1844157] - [mm] mm: use free_area_init() instead of free_area_init_nodes() (Baoquan He) [1844157] - [mm] mm: free_area_init: use maximal zone PFNs rather than zone sizes (Baoquan He) [1844157] - [mm] mm: remove CONFIG_HAVE_MEMBLOCK_NODE_MAP option (Baoquan He) [1844157] - [mm] numa: make "nr_node_ids" unsigned int (Baoquan He) [1844157] - [mm] mm: make early_pfn_to_nid() and related defintions close to each other (Baoquan He) [1844157] - [mm] mm: memblock: replace dereferences of memblock_region.nid with API calls (Baoquan He) [1844157] - [mm] mm: factor out next_present_section_nr() (Baoquan He) [1844157] - [mm] mm/page_alloc: fix and rework pfn handling in memmap_init_zone() (Baoquan He) [1844157] - [mm] mm/page_alloc: skip non present sections on zone initialization (Baoquan He) [1844157] - [mm] mm: move mirrored memory specific code outside of memmap_init_zone (Baoquan He) [1844157] - [mm] mm: calculate deferred pages after skipping mirrored memory (Baoquan He) [1844157] - [mm] mm/memblock.c: fix a typo in __next_mem_pfn_range() comments (Baoquan He) [1844157] - [mm] memblock: remove memblock_{set, clear}_region_flags (Baoquan He) [1844157] - [mm] mm: replace all open encodings for NUMA_NO_NODE (Baoquan He) [1844157] - [powerpc] lockdep: Only trace IRQ edges (Waiman Long) [1885084] - [arm64] arm64: Implement arch_irqs_disabled() (Waiman Long) [1885084] - [include] locking/lockdep: Cleanup (Waiman Long) [1885084] - [include] lockdep: Use raw_cpu_*() for per-cpu variables (Waiman Long) [1885084] - [x86] locking/seqlock, headers: Untangle the spaghetti monster (Waiman Long) [1885084] - [misc] vmw_balloon: Explicitly include linux/io.h for virt_to_phys() (Waiman Long) [1885084] - [x86] x86: i8259: Add missing include file (Waiman Long) [1885084] - [include] seqcount: More consistent seqprop names (Waiman Long) [1885084] - [include] seqcount: Compress SEQCNT_LOCKNAME_ZERO() (Waiman Long) [1885084] - [include] seqlock: Fold seqcount_LOCKNAME_init() definition (Waiman Long) [1885084] - [include] seqlock: Fold seqcount_LOCKNAME_t definition (Waiman Long) [1885084] - [include] seqlock: s/__SEQ_LOCKDEP/__SEQ_LOCK/g (Waiman Long) [1885084] - [kernel] hrtimer: Use sequence counter with associated raw spinlock (Waiman Long) [1885084] - [kernel] timekeeping: Use sequence counter with associated raw spinlock (Waiman Long) [1885084] - [kernel] timekeeping: Use proper seqcount initializer (Waiman Long) [1885084] - [init] sched: tasks: Use sequence counter with associated spinlock (Waiman Long) [1885084] - [kernel] lockdep: Refactor IRQ trace events fields into struct (Waiman Long) [1885084] - [drm] dma-buf: Use sequence counter with associated wound/wait mutex (Waiman Long) [1885084] - [dma-buf] dma-buf: Remove custom seqcount lockdep class key (Waiman Long) [1885084] - [include] seqlock: Align multi-line macros newline escapes at 72 columns (Waiman Long) [1885084] - [documentation] seqlock: Extend seqcount API with associated locks (Waiman Long) [1885084] - [include] seqlock: lockdep assert non-preemptibility on seqcount_t write (Waiman Long) [1885084] - [lib] lockdep: Add preemption enabled/disabled assertion APIs (Waiman Long) [1885084] - [include] seqlock: Implement raw_seqcount_begin() in terms of raw_read_seqcount() (Waiman Long) [1885084] - [include] seqlock: Add kernel-doc for seqcount_t and seqlock_t APIs (Waiman Long) [1885084] - [include] seqlock: Reorder seqcount_t and seqlock_t API definitions (Waiman Long) [1885084] - [include] seqlock: seqcount_t latch: End read sections with read_seqcount_retry() (Waiman Long) [1885084] - [include] seqlock: Properly format kernel-doc code samples (Waiman Long) [1885084] - [documentation] Documentation: locking: Describe seqlock design and usage (Waiman Long) [1885084] - [include] seqlock: Require WRITE_ONCE surrounding raw_seqcount_barrier (Waiman Long) [1885084] - [include] seqlock, kcsan: Add annotations for KCSAN (Waiman Long) [1885084] - [include] include/linux/compiler.h: Introduce data_race(expr) macro (Waiman Long) [1885084] - [kernel] kcsan: Add Kernel Concurrency Sanitizer infrastructure (Waiman Long) [1885084] - [include] locking/qspinlock: Do not include atomic.h from qspinlock_types.h (Waiman Long) [1885084] - [include] locking/atomic: Move ATOMIC_INIT into linux/types.h (Waiman Long) [1885084] - [connector] connector/cn_proc: Protect send_msg() with a local lock (Waiman Long) [1885084] - [mm] mm/swap: Use local_lock for protection (Waiman Long) [1885084] - [include] radix-tree: Use local_lock for protection (Waiman Long) [1885084] - [include] locking: Introduce local_lock() (Waiman Long) [1885084] - [documentation] Documentation/locking/locktypes: Minor copy editor fixes (Waiman Long) [1885084] - [documentation] Documentation/locking/locktypes: Further clarifications and wordsmithing (Waiman Long) [1885084] - [documentation] Documentation: Add lock ordering and nesting documentation (Waiman Long) [1885084] - [mm] mm/swap.c: trivial mark_page_accessed() cleanup (Waiman Long) [1885084] - [lib] radix tree: Remove radix_tree_maybe_preload_order (Waiman Long) [1885084] - [kernel] locking/lockdep: Fix "USED" <- "IN-NMI" inversions (Waiman Long) [1885084] - [kernel] lockdep: Remove lockdep_hardirq{s_enabled, _context}() argument (Waiman Long) [1885084] - [kernel] lockdep: Change hardirq{s_enabled, _context} to per-cpu variables (Waiman Long) [1885084] - [kernel] x86/entry: Rename trace_hardirqs_off_prepare() (Waiman Long) [1885084] - [kernel] lockdep: Prepare for NMI IRQ state tracking (Waiman Long) [1885084] - [include] lockdep: Move list.h inclusion into lockdep.h (Waiman Long) [1885084] - [include] lockdep: Split header file into lockdep and lockdep_types (Waiman Long) [1885084] - [kernel] lockdep: __always_inline more for noinstr (Waiman Long) [1885084] - [kernel] lockdep: Prepare for noinstr sections (Waiman Long) [1885084] - [kernel] tracing: Provide lockdep less trace_hardirqs_on/off() variants (Waiman Long) [1885084] - [include] vmlinux.lds.h: Create section for protection against instrumentation (Waiman Long) [1885084] - [kernel] locking/lockdep: Replace zero-length array with flexible-array (Waiman Long) [1885084] - [kernel] hrtimer: Don't dereference the hrtimer pointer after the callback (Waiman Long) [1885084] - [kernel] hrtimer: Add missing sparse annotation for __run_timer() (Waiman Long) [1885084] - [kernel] lockdep: Always inline lockdep_{off,on}() (Waiman Long) [1885084] - [kernel] locking/lockdep: Improve 'invalid wait context' splat (Waiman Long) [1885084] - [kernel] lockdep: Rename trace_{hard, soft}{irq_context, irqs_enabled}() (Waiman Long) [1885084] - [kernel] lockdep: Rename trace_softirqs_{on,off}() (Waiman Long) [1885084] - [kernel] lockdep: Rename trace_hardirq_{enter, exit}() (Waiman Long) [1885084] - [kernel] completion: Use lockdep_assert_RT_in_threaded_ctx() in complete_all() (Waiman Long) [1885084] - [usb] completion: Use simple wait queues (Waiman Long) [1885084] - [kernel] sched/swait: Prepare usage in completions (Waiman Long) [1885084] - [kernel] lockdep: Add posixtimer context tracing bits (Waiman Long) [1885084] - [kernel] lockdep: Annotate irq_work (Waiman Long) [1885084] - [kernel] lockdep: Add hrtimer context tracing bits (Waiman Long) [1885084] - [include] lockdep: Introduce wait-type checks (Waiman Long) [1885084] - [kernel] lockdep: Teach lockdep about "USED" <- "IN-NMI" inversions (Waiman Long) [1885084] - [kernel] locking/lockdep: Rework lockdep_lock (Waiman Long) [1885084] - [kernel] locking/lockdep: Fix bad recursion pattern (Waiman Long) [1885084] - [s390] s390/ftrace: fix endless recursion in function_graph tracer (Waiman Long) [1885084] - [s390] s390/time: ensure get_clock_monotonic() returns monotonic values (Waiman Long) [1885084] - [kernel] irq_work: Fix IRQ_WORK_BUSY bit clearing (Waiman Long) [1885084] - [kernel] irq_work: Slightly simplify IRQ_WORK_PENDING clearing (Waiman Long) [1885084] - [kernel] irq_work: Fix irq_work_claim() memory ordering (Waiman Long) [1885084] - [kernel] irq_work: Convert flags to atomic_t (Waiman Long) [1885084] - [kernel] kprobes: Prohibit probing on lockdep functions (Waiman Long) [1885084] - [kernel] kprobes: Prohibit probing on hardirq tracers (Waiman Long) [1885084] - [lib] locking/lockdep: Make global debug_locks* variables read-mostly (Waiman Long) [1885084] - [kernel] locking/lockdep: Delete unnecessary #include (Waiman Long) [1885084] - [kernel] tracing: More reverting of "tracing: Centralize preemptirq tracepoints and unify their usage" (Waiman Long) [1885084] - [kernel] tracing/irqsoff: Handle preempt_count for different configs (Waiman Long) [1885084] - [kernel] tracing: Partial revert of "tracing: Centralize preemptirq tracepoints and unify their usage" (Waiman Long) [1885084] - [kernel] tracing: irqsoff: Account for additional preempt_disable (Waiman Long) [1885084] - [kernel] tracing: Centralize preemptirq tracepoints and unify their usage (Waiman Long) [1885084] - [kernel] tracing/irqsoff: Split reset into separate functions (Waiman Long) [1885084] - [kernel] sched/fair: Use dst group while checking imbalance for NUMA balancer (Phil Auld) [1877360] - [kernel] sched/fair: Reduce busy load balance interval (Phil Auld) [1877360] - [kernel] sched/fair: Reduce minimal imbalance threshold (Phil Auld) [1877360] - [kernel] sched/fair: Minimize concurrent LBs between domain level (Phil Auld) [1877360] - [kernel] sched/fair: Fix wrong cpu selecting from isolated domain (Phil Auld) [1877360] - [kernel] sched/fair: Relax constraint on task's load during load balance (Phil Auld) [1877360] - [kernel] sched/numa: Use runnable_avg to classify node (Phil Auld) [1877360] - [kernel] sched: Remove duplicated tick_nohz_full_enabled() check (Phil Auld) [1877360] - [kernel] sched: Warn if garbage is passed to default_wake_function() (Phil Auld) [1877360] - [kernel] sched: nohz: stop passing around unused "ticks" parameter (Phil Auld) [1877360] - [kernel] sched/fair: update_pick_idlest() Select group with lowest group_util when idle_cpus are equal (Phil Auld) [1877360] - [kernel] sched: Better document ttwu() (Phil Auld) [1877360] - [kernel] sched/fair: handle case of task_h_load() returning 0 (Phil Auld) [1877360] - [kernel] sched: Fix unreliable rseq cpu_id for new tasks (Phil Auld) [1877360] - [kernel] sched/core: s/WF_ON_RQ/WQ_ON_CPU/ (Phil Auld) [1877360] - [include] sched/core: Remove mmdrop() definition (Phil Auld) [1877360] - [kernel] sched/fair: Optimize dequeue_task_fair() (Phil Auld) [1877360] - [kernel] sched/pelt: Cleanup PELT divider (Phil Auld) [1877360] - [kernel] sched/fair: Fix NOHZ next idle balance (Phil Auld) [1877360] - [kernel] sched: correct SD_flags returned by tl->sd_flags() (Phil Auld) [1877360] - [kernel] sched/fair: Remove unused 'sd' parameter from scale_rt_capacity() (Phil Auld) [1877360] - [kernel] sched/idle, stop: Remove .get_rr_interval from sched_class (Phil Auld) [1877360] - [kernel] sched/core: Remove redundant 'preempt' param from sched_class->yield_to_task() (Phil Auld) [1877360] - [kernel] sched/pelt: Remove redundant cap_scale() definition (Phil Auld) [1877360] - [kernel] sched/pelt: Sync util/runnable_sum with PELT window when propagating (Phil Auld) [1877360] - [kernel] sched/cpuacct: Fix charge cpuacct.usage_sys (Phil Auld) [1877360] - [kernel] sched/cpuacct: Use __this_cpu_add() instead of this_cpu_ptr() (Phil Auld) [1877360] - [kernel] sched/fair: Fix unthrottle_cfs_rq() for leaf_cfs_rq list (Phil Auld) [1877360] - [kernel] sched/core: Simplify sched_init() (Phil Auld) [1877360] - [kernel] sched/fair: Mark sched_init_granularity __init (Phil Auld) [1877360] - [kernel] sched/core: Fix illegal RCU from offline CPUs (Phil Auld) [1877360] - [kernel] sched/fair: Use __this_cpu_read() in wake_wide() (Phil Auld) [1877360] - [kernel] sched: Extract the task putting code from pick_next_task() (Phil Auld) [1877360] - [kernel] sched: Make newidle_balance() static again (Phil Auld) [1877360] - [kernel] sched/fair: Remove distribute_running from CFS bandwidth (Phil Auld) [1877360] - [kernel] sched/fair: Simplify the code of should_we_balance() (Phil Auld) [1877360] - [kernel] sched/debug: Fix trival print_task() format (Phil Auld) [1877360] - [kernel] sched/debug: Factor out printing formats into common macros (Phil Auld) [1877360] - [kernel] sched/debug: Remove redundant macro define (Phil Auld) [1877360] - [kernel] sched/core: Remove unused rq::last_load_update_tick (Phil Auld) [1877360] - [kernel] sched/fair: Align rq->avg_idle and rq->avg_scan_cost (Phil Auld) [1877360] - [kernel] sched/fair: Improve spreading of utilization (Phil Auld) [1877360] - [kernel] sched/fair: Fix condition of avg_load calculation (Phil Auld) [1877360] - [kernel] kthread: Do not preempt current task if it is going to call schedule() (Phil Auld) [1877360] - [kernel] sched/core: Distribute tasks within affinity masks (Phil Auld) [1877360] - [kernel] time/sched_clock: Expire timer in hardirq context (Phil Auld) [1877360] - [kernel] sched/deadline: Make two functions static (Phil Auld) [1877360] - [mm] slab: store tagged freelist for off-slab slabmgmt (Waiman Long) [1887067] - [mm] mm/kasan: fix false positive invalid-free reports with CONFIG_KASAN_SW_TAGS=y (Waiman Long) [1887067] - [arm64] arm64: avoid clang warning about self-assignment (Waiman Long) [1887067] - [mm] kasan: add memory corruption identification for software tag-based mode (Waiman Long) [1887067] - [mm] mm/kasan: print frame description for stack bugs (Waiman Long) [1887067] - [mm] kasan: initialize tag to 0xff in __kasan_kmalloc (Waiman Long) [1887067] - [mm] kasan: Makefile: Replace -pg with CC_FLAGS_FTRACE (Waiman Long) [1887067] - [mm] x86/uaccess, kasan: Fix KASAN vs SMAP (Waiman Long) [1887067] - [mm] mm/kasan: Simplify stacktrace handling (Waiman Long) [1887067] - [mm] kasan: fix variable 'tag' set but not used warning (Waiman Long) [1887067] - [mm] slub: fix a crash with SLUB_DEBUG + KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan, slab: remove redundant kasan_slab_alloc hooks (Waiman Long) [1887067] - [mm] kasan, slab: make freelist stored without tags (Waiman Long) [1887067] - [mm] kasan, slab: fix conflicts with CONFIG_HARDENED_USERCOPY (Waiman Long) [1887067] - [mm] kasan: prevent tracing of tags.c (Waiman Long) [1887067] - [mm] kasan: fix random seed generation for tag-based mode (Waiman Long) [1887067] - [mm] slub: fix SLAB_CONSISTENCY_CHECKS + KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan, slub: fix more conflicts with CONFIG_SLAB_FREELIST_HARDENED (Waiman Long) [1887067] - [mm] kasan, slub: fix conflicts with CONFIG_SLAB_FREELIST_HARDENED (Waiman Long) [1887067] - [mm] kasan, slub: move kasan_poison_slab hook before page_address (Waiman Long) [1887067] - [mm] kmemleak: account for tagged pointers when calculating pointer range (Waiman Long) [1887067] - [mm] kasan, kmemleak: pass tagged pointers to kmemleak (Waiman Long) [1887067] - [mm] kasan: fix assigning tags twice (Waiman Long) [1887067] - [mm] kasan: mark file common so ftrace doesn't trace it (Waiman Long) [1887067] - [mm] kasan: fix krealloc handling for tag-based mode (Waiman Long) [1887067] - [mm] kasan: make tag based mode work with CONFIG_HARDENED_USERCOPY (Waiman Long) [1887067] - [arm64] kasan, arm64: use ARCH_SLAB_MINALIGN instead of manual aligning (Waiman Long) [1887067] - [mm] kasan: add SPDX-License-Identifier mark to source files (Waiman Long) [1887067] - [documentation] kasan: update documentation (Waiman Long) [1887067] - [arm64] kasan, arm64: select HAVE_ARCH_KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan: add __must_check annotations to kasan hooks (Waiman Long) [1887067] - [mm] kasan, mm, arm64: tag non slab memory allocated via pagealloc (Waiman Long) [1887067] - [arm64] kasan, arm64: add brk handler for inline instrumentation (Waiman Long) [1887067] - [mm] kasan: add hooks implementation for tag-based mode (Waiman Long) [1887067] - [mm] kasan: add bug reporting routines for tag-based mode (Waiman Long) [1887067] - [mm] kasan: split out generic_report.c from report.c (Waiman Long) [1887067] - [mm] kasan, mm: perform untagged pointers comparison in krealloc (Waiman Long) [1887067] - [mm] kasan, arm64: enable top byte ignore for the kernel (Waiman Long) [1887067] - [mm] kasan, arm64: fix up fault handling logic (Waiman Long) [1887067] - [mm] kasan: preassign tags to objects with ctors or SLAB_TYPESAFE_BY_RCU (Waiman Long) [1887067] - [arm64] kasan, arm64: untag address in _virt_addr_is_linear (Waiman Long) [1887067] - [arm64] kasan: add tag related helper functions (Waiman Long) [1887067] - [mm] kasan: initialize shadow to 0xff for tag-based mode (Waiman Long) [1887067] - [mm] kasan: rename kasan_zero_page to kasan_early_shadow_page (Waiman Long) [1887067] - [arm64] kasan, arm64: adjust shadow size for tag-based mode (Waiman Long) [1887067] - [mm] kasan: add CONFIG_KASAN_GENERIC and CONFIG_KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan: rename source files to reflect the new naming scheme (Waiman Long) [1887067] - [mm] kasan: move common generic and tag-based code to common.c (Waiman Long) [1887067] - [mm] kasan, slub: handle pointer tags in early_kmem_cache_node_alloc (Waiman Long) [1887067] - [mm] kasan, mm: change hooks signatures (Waiman Long) [1887067] - [arm64] arm64: kasan: Increase stack size for KASAN_EXTRA (Waiman Long) [1887067] - [s390] s390/cio: add cond_resched() in the slow_eval_known_fn() loop (Claudio Imbrenda) [1885961] - [s390] scsi: zfcp: fix missing erp_lock in port recovery trigger for point-to-point (Claudio Imbrenda) [1885876] - [tools] selftests/vm/gup_benchmark.c: match gup struct to kernel (Rafael Aquini) [1873952] - [uapi] redhat: Fix the number of KVM_CAP_S390_DIAG318 (Thomas Huth) [1659413] - [s390] setup: diag 318: refactor struct (Thomas Huth) [1659413] - [s390] kvm: diagnose 0x318 sync and reset (Thomas Huth) [1659413] - [mm] swap: reduce lock contention on swap cache from swap slots allocation (Nico Pache) [1839049] - [mm] mm/swapfile.c: use prandom_u32_max() (Nico Pache) [1839049] - [mm] swap: try to scan more free slots even when fragmented (Nico Pache) [1839049] - [mm] mm/swapfile.c: move inode_lock out of claim_swapfile (Nico Pache) [1839049] - [mm] vfs: don't allow writes to swap files (Nico Pache) [1839049] - [mm] mm: set S_SWAPFILE on blockdev swap devices (Nico Pache) [1839049] - [edac] EDAC/ie31200: Add Intel Coffee Lake CPU support (Aristeu Rozanski) [1847567]- [netdrv] macsec: avoid use-after-free in macsec_handle_frame() (Balazs Nemeth) [1890122] - [include] netlink: check for null extack in cookie helpers (Ivan Vecera) [1878274] - [net] ethtool: Don't omit the netlink reply if no features were changed (Ivan Vecera) [1878274] - [net] ethtool: Account for hw_features in netlink interface (Ivan Vecera) [1878274] - [net] ethtool: Fix preserving of wanted feature bits in netlink interface (Ivan Vecera) [1878274] - [net] ethtool: ethnl_set_linkmodes: remove redundant null check (Ivan Vecera) [1878274] - [net] ethtool: fix genlmsg_put() failure handling in ethnl_default_dumpit() (Ivan Vecera) [1878274] - [net] ethtool: add missing string for NETIF_F_GSO_TUNNEL_REMCSUM (Ivan Vecera) [1878274] - [net] ethtool: Fix check in ethtool_rx_flow_rule_create (Ivan Vecera) [1878274] - [net] ethtool: linkinfo: remove an unnecessary NULL check (Ivan Vecera) [1878274] - [net] ethtool: propagate get_coalesce return value (Ivan Vecera) [1878274] - [net] ethtool: don't call set_channels in drivers if config didn't change (Ivan Vecera) [1878274] - [net] ethtool: check if there is at least one channel for TX/RX in the core (Ivan Vecera) [1878274] - [net] drivers: Remove inclusion of vermagic header (Ivan Vecera) [1878274] - [net] ethtool: count header size in reply size estimate (Ivan Vecera) [1878274] - [net] ethtool: provide timestamping information with TSINFO_GET request (Ivan Vecera) [1878274] - [net] ethtool: add timestamping related string sets (Ivan Vecera) [1878274] - [net] ethtool: add EEE_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set EEE settings with EEE_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide EEE settings with EEE_GET request (Ivan Vecera) [1878274] - [net] ethtool: add PAUSE_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set pause parameters with PAUSE_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide pause parameters with PAUSE_GET request (Ivan Vecera) [1878274] - [net] ethtool: add COALESCE_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set coalescing parameters with COALESCE_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide coalescing parameters with COALESCE_GET request (Ivan Vecera) [1878274] - [net] ethtool: fix reference leak in ethnl_set_privflags() (Ivan Vecera) [1878274] - [net] ethtool: fix incorrect tx-checksumming settings reporting (Ivan Vecera) [1878274] - [include] ethtool.h: Replace zero-length array with flexible-array member (Ivan Vecera) [1878274] - [net] ethtool: fix reference leak in some *_SET handlers (Ivan Vecera) [1878274] - [net] ethtool: reject unrecognized request flags (Ivan Vecera) [1878274] - [include] netlink: add nl_set_extack_cookie_u32() (Ivan Vecera) [1878274] - [net] netlink: allow extack cookie also for error messages (Ivan Vecera) [1878274] - [net] ethtool: fix spelling mistake "exceeeds" -> "exceeds" (Ivan Vecera) [1878274] - [net] ethtool: add CHANNELS_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set device channel counts with CHANNELS_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide channel counts with CHANNELS_GET request (Ivan Vecera) [1878274] - [net] ethtool: add RINGS_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set device ring sizes with RINGS_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide ring sizes with RINGS_GET request (Ivan Vecera) [1878274] - [net] ethtool: add PRIVFLAGS_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set device private flags with PRIVFLAGS_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide private flags with PRIVFLAGS_GET request (Ivan Vecera) [1878274] - [net] ethtool: add FEATURES_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set netdev features with FEATURES_SET request (Ivan Vecera) [1878274] - [net] ethtool: add ethnl_parse_bitset() helper (Ivan Vecera) [1878274] - [net] ethtool: provide netdev features with FEATURES_GET request (Ivan Vecera) [1878274] - [net] ethtool: update mapping of features to legacy ioctl requests (Ivan Vecera) [1878274] - [net] ethtool: rename ethnl_parse_header() to ethnl_parse_header_dev_get() (Ivan Vecera) [1878274] - [include] hns: reject unsupported coalescing params (Ivan Vecera) [1878274] - [include] net: liquidio: reject unsupported coalescing params (Ivan Vecera) [1878274] - [net] ethtool: Factored out similar ethtool link settings for virtual devices to core (Ivan Vecera) [1878274] - [net] ethtool: limit bitset size (Ivan Vecera) [1878274] - [net] ethtool: fix application of verbose no_mask bitset (Ivan Vecera) [1878274] - [net] ethtool: Add support for low latency RS FEC (Ivan Vecera) [1878274] - [net] ethtool: add WOL_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set wake-on-lan settings with WOL_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide WoL settings with WOL_GET request (Ivan Vecera) [1878274] - [net] ethtool: add DEBUG_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set message mask with DEBUG_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide message mask with DEBUG_GET request (Ivan Vecera) [1878274] - [net] ethtool: fix kernel-doc descriptions (Ivan Vecera) [1878274] - [net] ethtool: potential NULL dereference in strset_prepare_data() (Ivan Vecera) [1878274] - [net] ethtool: fix ->reply_size() error handling (Ivan Vecera) [1878274] - [net] ethtool: fix a memory leak in ethnl_default_start() (Ivan Vecera) [1878274] - [net] ethtool: remove set but not used variable 'lsettings' (Ivan Vecera) [1878274] - [net] ethtool: provide link state with LINKSTATE_GET request (Ivan Vecera) [1878274] - [net] ethtool: add LINKMODES_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set link modes related data with LINKMODES_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide link mode information with LINKMODES_GET request (Ivan Vecera) [1878274] - [net] ethtool: add LINKINFO_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: add default notification handler (Ivan Vecera) [1878274] - [net] ethtool: set link settings with LINKINFO_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide link settings with LINKINFO_GET request (Ivan Vecera) [1878274] - [net] ethtool: provide string sets with STRSET_GET request (Ivan Vecera) [1878274] - [net] ethtool: default handlers for GET requests (Ivan Vecera) [1878274] - [net] ethtool: support for netlink notifications (Ivan Vecera) [1878274] - [net] ethtool: netlink bitset handling (Ivan Vecera) [1878274] - [net] ethtool: helper functions for netlink interface (Ivan Vecera) [1878274] - [net] ethtool: introduce ethtool netlink interface (Ivan Vecera) [1878274] - [net] ethtool: provide link mode names as a string set (Ivan Vecera) [1878274] - [net] ethtool: move string arrays into common file (Ivan Vecera) [1878274] - [net] ethtool: move RHEL specific stuff to separate header file (Ivan Vecera) [1878274] - [net] ethtool: move to its own directory (Ivan Vecera) [1878274] - [net] rtnetlink: provide permanent hardware address in RTM_NEWLINK (Ivan Vecera) [1878274] - [net] Zeroing the structure ethtool_wolinfo in ethtool_get_wol() (Ivan Vecera) [1878274] - [net] ethtool: Allow parsing ETHER_FLOW types when using flow_rule (Ivan Vecera) [1878274] - [net] ethtool: Allow matching on vlan DEI bit (Ivan Vecera) [1878274] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Ivan Vecera) [1878274] - [include] net: ethtool: Document get_rxfh_context and set_rxfh_context ethtool ops (Ivan Vecera) [1878274] - [include] ethtool: avoid signed-unsigned comparison in ethtool_validate_speed() (Ivan Vecera) [1878274] - [net] ethtool: not call vzalloc for zero sized memory request (Ivan Vecera) [1878274] - [net] ethtool: reduce stack usage with clang (Ivan Vecera) [1878274] - [net] ethtool: Use explicit designated initializers for .cmd (Ivan Vecera) [1878274] - [net] ethtool: remove unnecessary check in ethtool_get_regs() (Ivan Vecera) [1878274] - [include] uapi/ethtool: fix spelling errors (Ivan Vecera) [1878274] - [net] ethtool: fix a missing-check bug (Ivan Vecera) [1878274] - [include] ethtool: Remove trailing semicolon for static inline (Ivan Vecera) [1878274] - [net] ipv6: some fixes for ipv6_dev_find() (Xin Long) [1862458] - [net] tipc: not enable tipc when ipv6 works as a module (Xin Long) [1862458] - [net] tipc: set ub->ifindex for local ipv6 address (Xin Long) [1862458] - [net] ipv6: add ipv6_dev_find() (Xin Long) [1862458] - [powerpc] powerpc/pseries: explicitly reschedule during drmem_lmb list traversal (Steve Best) [1892377] - [scsi] scsi: ibmvscsi: Fix potential race after loss of transport (Steve Best) [1892316] - [mm] mm: fix a race during THP splitting (Rafael Aquini) [1865813 1739593] - [mm] mm, memcg: do not high throttle allocators based on wraparound (Waiman Long) [1873759] - [mm] mm, memcg: throttle allocators based on ancestral memory.high (Waiman Long) [1873759] - [mm] mm, memcg: fix corruption on 64-bit divisor in memory.high throttling (Waiman Long) [1873759] - [mm] mm, memcg: throttle allocators when failing reclaim over memory.high (Waiman Long) [1873759] - [mm] mm, oom: dump stack of victim when reaping failed (Waiman Long) [1873759] - [mm] mm/oom: fix pgtables units mismatch in Killed process message (Waiman Long) [1873759] - [mm] mm, oom: consider present pages for the node size (Waiman Long) [1873759] - [mm] mm/oom_kill.c: fix oom_cpuset_eligible() comment (Waiman Long) [1873759] - [mm] mm/oom: add oom_score_adj and pgtables to Killed process message (Waiman Long) [1873759] - [mm] mm/oom_kill.c: remove redundant OOM score normalization in select_bad_process() (Waiman Long) [1873759] - [fs] oom: decouple mems_allowed from oom_unkillable_task (Waiman Long) [1873759] - [mm] mm, oom: remove redundant task_in_mem_cgroup() check (Waiman Long) [1873759] - [mm] mm, oom: refactor dump_tasks for memcg OOMs (Waiman Long) [1873759] - [mm] mm, oom: describe task memory unit, larger PID pad (Waiman Long) [1873759] - [mm] mm, oom: remove oom_lock from oom_reaper (Waiman Long) [1873759] - [mm] mm/vmscan: remove unused RECLAIM_OFF/RECLAIM_ZONE (Waiman Long) [1873759] - [mm] mm/vmscan: remove prefetch_prev_lru_page (Waiman Long) [1873759] - [mm] mm/vmscan.c: remove unused return value of shrink_node (Waiman Long) [1873759] - [mm] mm/vmscan.c: clean code by removing unnecessary assignment (Waiman Long) [1873759] - [mm] mm: vmscan: protect shrinker idr replace with CONFIG_MEMCG (Waiman Long) [1873759] - [mm] mm/vmscan.c: fix typo in comment (Waiman Long) [1873759] - [mm] mm: vmscan: enforce inactive:active ratio at the reclaim root (Waiman Long) [1873759] - [mm] mm: vmscan: detect file thrashing at the reclaim root (Waiman Long) [1873759] - [mm] mm: vmscan: move file exhaustion detection to the node level (Waiman Long) [1873759] - [include] mm: vmscan: harmonize writeback congestion tracking for nodes & memcgs (Waiman Long) [1873759] - [mm] mm: vmscan: split shrink_node() into node part and memcgs part (Waiman Long) [1873759] - [mm] mm: vmscan: turn shrink_node_memcg() into shrink_lruvec() (Waiman Long) [1873759] - [mm] mm: vmscan: replace shrink_node() loop with a retry jump (Waiman Long) [1873759] - [mm] mm: vmscan: naming fixes: global_reclaim() and sane_reclaim() (Waiman Long) [1873759] - [mm] mm: vmscan: move inactive_list_is_low() swap check to the caller (Waiman Long) [1873759] - [mm] mm: vmscan: simplify lruvec_lru_size() (Waiman Long) [1873759] - [mm] mm/vmscan.c: remove unused scan_control parameter from pageout() (Waiman Long) [1873759] - [mm] mm/vmscan: remove unused lru_pages argument (Waiman Long) [1873759] - [mm] mm: do not allow MADV_PAGEOUT for CoW pages (Waiman Long) [1873759] - [mm] mm: fix trying to reclaim unevictable lru page when calling madvise_pageout (Waiman Long) [1873759] - [mm] mm: factor out common parts between MADV_COLD and MADV_PAGEOUT (Waiman Long) [1873759] - [mm] mm: introduce MADV_PAGEOUT (Waiman Long) [1873759] - [mm] mm: change PAGEREF_RECLAIM_CLEAN with PAGE_REFRECLAIM (Waiman Long) [1873759] - [mm] mm: introduce MADV_COLD (Waiman Long) [1873759] - [mm] mm: thp: don't need care deferred split queue in memcg charge move path (Waiman Long) [1873759] - [mm] mm: thp: make deferred split shrinker memcg aware (Waiman Long) [1873759] - [mm] mm: shrinker: make shrinker not depend on memcg kmem (Waiman Long) [1873759] - [mm] mm: move mem_cgroup_uncharge out of __page_cache_release() (Waiman Long) [1873759] - [mm] mm: thp: extract split_queue_* into a struct (Waiman Long) [1873759] - [mm] mm/page_alloc.c: move ifdefery out of free_area_init_core (Waiman Long) [1873759] - [mm] mm, memcg: do not set reclaim_state on soft limit reclaim (Waiman Long) [1873759] - [mm] mm, vmscan: do not special-case slab reclaim when watermarks are boosted (Waiman Long) [1873759] - [mm] mm/vmscan.c: add checks for incorrect handling of current->reclaim_state (Waiman Long) [1873759] - [mm] mm/vmscan.c: calculate reclaimed slab caches in all reclaim paths (Waiman Long) [1873759] - [mm] mm/vmscan.c: add a new member reclaim_state in struct shrink_control (Waiman Long) [1873759] - [mm] mm: vmscan: remove double slab pressure by inc'ing sc->nr_scanned (Waiman Long) [1873759] - [mm] mm: limit boost_watermark on small zones (Waiman Long) [1873759] - [mm] mm: do not boost watermarks to avoid fragmentation for the DISCONTIG memory model (Waiman Long) [1873759] - [mm] mm, page_alloc: fix a division by zero error when boosting watermarks v2 (Waiman Long) [1873759] - [mm] mm, page_alloc: do not wake kswapd with zone lock held (Waiman Long) [1873759] - [mm] mm/page_alloc.c: drop uneeded __meminit and __meminitdata (Waiman Long) [1873759] - [mm] mm/page_alloc.c: fix never set ALLOC_NOFRAGMENT flag (Waiman Long) [1873759] - [mm] mm/page_alloc.c: avoid potential NULL pointer dereference (Waiman Long) [1873759] - [mm] mm/vmscan.c: don't disable irq again when count pgrefill for memcg (Waiman Long) [1873759] - [mm] mm/vmscan: drop may_writepage and classzone_idx from direct reclaim begin template (Waiman Long) [1873759] - [mm] mm/vmscan: add tracepoints for node reclaim (Waiman Long) [1873759] - [mm] mm: generalize putback scan functions (Waiman Long) [1873759] - [mm] mm: remove pages_to_free argument of move_active_pages_to_lru() (Waiman Long) [1873759] - [mm] mm/workingset: remove unused @mapping argument in workingset_eviction() (Waiman Long) [1873759] - [mm] Revert "mm: slowly shrink slabs with a relatively small number of objects" (Waiman Long) [1873759] - [mm] mm: reclaim small amounts of memory when an external fragmentation event occurs (Waiman Long) [1873759] - [mm] mm: use alloc_flags to record if kswapd can wake (Waiman Long) [1873759] - [mm] mm: move zone watermark accesses behind an accessor (Waiman Long) [1873759] - [mm] mm, page_alloc: spread allocations across zones before introducing fragmentation (Waiman Long) [1873759] - [mm] mm: Convert delete_from_swap_cache to XArray (Waiman Long) [1873759] - [fs] mm: zero-seek shrinkers (Waiman Long) [1873759] - [mm] mm/vmscan.c: fix int overflow in callers of do_shrink_slab() (Waiman Long) [1873759] - [mm] mm: slowly shrink slabs with a relatively small number of objects (Waiman Long) [1873759] - [mm] mm: fix page_freeze_refs and page_unfreeze_refs in comments (Waiman Long) [1873759] - [mm] mm: check shrinker is memcg-aware in register_shrinker_prepared() (Waiman Long) [1873759] - [mm] mm: use special value SHRINKER_REGISTERING instead of list_empty() check (Waiman Long) [1873759] - [mm] mm/vmscan.c: move check for SHRINKER_NUMA_AWARE to do_shrink_slab() (Waiman Long) [1873759] - [mm] mm/vmscan.c: condense scan_control (Waiman Long) [1873759] - [arch] asm-generic/tlb: add missing CONFIG symbol (Waiman Long) [1873759] - [include] asm-gemeric/tlb: remove stray function declarations (Waiman Long) [1873759] - [x86] x86/ldt: Remove unused variable in map_ldt_struct() (Waiman Long) [1873759] - [x86] x86/ldt: Unmap PTEs for the slot before freeing LDT pages (Waiman Long) [1873759] - [x86] x86/mm/tlb: Add freed_tables argument to flush_tlb_mm_range (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove tlb_table_flush() (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove tlb_flush_mmu_free() (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove CONFIG_HAVE_GENERIC_MMU_GATHER (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove arch_tlb*_mmu() (Waiman Long) [1873759] - [s390] s390/tlb: Convert to generic mmu_gather (Waiman Long) [1873759] - [mm] asm-generic/tlb: Introduce CONFIG_HAVE_MMU_GATHER_NO_GATHER=y (Waiman Long) [1873759] - [include] asm-generic/tlb, ia64: Conditionally provide tlb_migrate_finish() (Waiman Long) [1873759] - [include] asm-generic/tlb: Provide generic tlb_flush() based on flush_tlb_mm() (Waiman Long) [1873759] - [arm64] asm-generic/tlb, arch: Provide generic tlb_flush() based on flush_tlb_range() (Waiman Long) [1873759] - [mm] asm-generic/tlb, arch: Provide CONFIG_HAVE_MMU_GATHER_PAGE_SIZE (Waiman Long) [1873759] - [include] asm-generic/tlb: Provide a comment (Waiman Long) [1873759] - [mm] mm/memory: Move mmu_gather and TLB invalidation code into its own file (Waiman Long) [1873759] - [x86] x86/mm: Page size aware flush_tlb_mm_range() (Waiman Long) [1873759] - [x86] x86/ldt: Split out sanity check in map_ldt_struct() (Waiman Long) [1873759] - [mm] asm-generic/tlb: Track which levels of the page tables have been cleared (Waiman Long) [1873759] - [include] asm-generic/tlb: Track freeing of page-table directories in struct mmu_gather (Waiman Long) [1873759] - [mm] mm/cow: don't bother write protecting already write-protected pages (Waiman Long) [1873759] - [powerpc] mm/mmu_gather: invalidate TLB correctly on batch allocation failure and flush (Diego Domingos) [1805031] - [powerpc] powerpc/mmu_gather: enable RCU_TABLE_FREE even for !SMP case (Diego Domingos) [1805031] - [fs] cifs: smb1: Try failing back to SetFileInfo if SetPathInfo fails (Leif Sahlberg) [1857038]- [scsi] scsi: libfc: Fix passing zero to 'PTR_ERR' warning (Chris Leech) [1849542] - [scsi] scsi: libfc: Fix for double free() (Chris Leech) [1849542] - [scsi] scsi: libfc: Free skb in fc_disc_gpn_id_resp() for valid cases (Chris Leech) [1849542] - [scsi] scsi: fcoe: Memory leak fix in fcoe_sysfs_fcf_del() (Chris Leech) [1849542] - [scsi] scsi: fcoe: Use eth_zero_addr() to clear mac address (Chris Leech) [1849542] - [scsi] scsi: libfc: Provide missing and repair existing function documentation (Chris Leech) [1849542] - [scsi] scsi: libfc: Fix a couple of misdocumented function parameters (Chris Leech) [1849542] - [scsi] scsi: libfc: Repair function parameter documentation (Chris Leech) [1849542] - [scsi] scsi: fcoe: Correct some kernel-doc issues (Chris Leech) [1849542] - [scsi] scsi: fcoe: Fix a myriad of documentation issues (Chris Leech) [1849542] - [scsi] scsi: fcoe: Fix various kernel-doc infringements (Chris Leech) [1849542] - [scsi] scsi: libfc: trivial: Fix spelling mistake of 'discovery' (Chris Leech) [1849542] - [scsi] scsi: libfc: Supply some missing kerneldoc struct/function attributes/params (Chris Leech) [1849542] - [scsi] scsi: libfc: fc_disc: Fix-up some incorrectly referenced function parameters (Chris Leech) [1849542] - [scsi] scsi: libfc: Skip additional kref updating work event (Chris Leech) [1849542] - [scsi] scsi: libfc: Handling of extra kref (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove unneeded semicolon in fcoe.c (Chris Leech) [1849542] - [scsi] scsi: libfc: rport state move to PLOGI if all PRLI retry exhausted (Chris Leech) [1849542] - [scsi] scsi: libfc: If PRLI rejected, move rport to PLOGI state (Chris Leech) [1849542] - [scsi] scsi: libfc: free response frame from GPN_ID (Chris Leech) [1849542] - [scsi] scsi: fcoe: fix null-ptr-deref Read in fc_release_transport (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove redundant call to skb_transport_header (Chris Leech) [1849542] - [scsi] scsi: fcoe: pass in fcoe_rport structure instead of fc_rport_priv (Chris Leech) [1849542] - [scsi] scsi: fcoe: Embed fc_rport_priv in fcoe_rport structure (Chris Leech) [1849542] - [scsi] scsi: libfc: Whitespace cleanup in libfc.h (Chris Leech) [1849542] - [scsi] scsi: fcoe: fix a typo (Chris Leech) [1849542] - [scsi] scsi: libfc: fix null pointer dereference on a null lport (Chris Leech) [1849542] - [scsi] scsi: libfcoe: switch to SPDX tags (Chris Leech) [1849542] - [scsi] scsi: libfc: switch to SPDX tags (Chris Leech) [1849542] - [scsi] scsi: fcoe: make use of fip_mode enum complete (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove unneeded fcoe_ctlr_destroy_store export (Chris Leech) [1849542] - [scsi] scsi: fcoe: convert to use BUS_ATTR_WO (Chris Leech) [1849542] - [scsi] scsi: libfc: free skb when receiving invalid flogi resp (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove set but not used variable 'port' (Chris Leech) [1849542] - [scsi] scsi: libfc: fc_rport: Mark expected switch fall-through (Chris Leech) [1849542] - [scsi] scsi: libfc: Remove set but not used variable 'disc' (Chris Leech) [1849542] - [scsi] scsi: libfc: remove set but not used variable 'rpriv' (Chris Leech) [1849542] - [scsi] scsi: libfc: remove unnecessary condition check (Chris Leech) [1849542] - [scsi] scsi: fcoe: hold disc_mutex when traversing rport lists (Chris Leech) [1849542] - [net] netfilter: nftables: allow re-computing sctp CRC-32C in 'payload' statements (Davide Caratti) [1741052] - [fs] nfsd4: fix NULL dereference in nfsd/clients display code (Scott Mayhew) [1872311] - [fs] nfsd: Fix old-style function definition (Scott Mayhew) [1872311] - [fs] nfsd: clients don't need to break their own delegations (Scott Mayhew) [1872311] - [kernel] kthread: save thread function (Scott Mayhew) [1872311] - [fs] locks: Add trace_leases_conflict (Scott Mayhew) [1872311] - [fs] SUNRPC reverting d03727b248d0 ("NFSv4 fix CLOSE not waiting for direct IO compeletion") (Scott Mayhew) [1872311] - [fs] NFS: Fix interrupted slots by sending a solo SEQUENCE operation (Scott Mayhew) [1872311] - [net] SUNRPC: Add missing definition of ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE (Scott Mayhew) [1872311] - [fs] NFSv4 fix CLOSE not waiting for direct IO compeletion (Scott Mayhew) [1872311] - [fs] nfs: Fix memory leak of export_path (Scott Mayhew) [1872311] - [net] sunrpc: fixed rollback in rpc_gssd_dummy_populate() (Scott Mayhew) [1872311] - [net] xprtrdma: Clean up disconnect (Scott Mayhew) [1872311] - [fs] nfsd: apply umask on fs without ACL support (Scott Mayhew) [1872311] - [fs] NFS: Fix direct WRITE throughput regression (Scott Mayhew) [1872311] - [trace] SUNRPC: rpc_xprt lifetime events should record xprt->state (Scott Mayhew) [1872311] - [fs] nfs: set invalid blocks after NFSv4 writes (Scott Mayhew) [1872311] - [fs] NFS: remove redundant initialization of variable result (Scott Mayhew) [1872311] - [fs] NFS: Add a tracepoint in nfs_set_pgio_error() (Scott Mayhew) [1872311] - [fs] NFS: Trace short NFS READs (Scott Mayhew) [1872311] - [fs] NFS: nfs_xdr_status should record the procedure name (Scott Mayhew) [1872311] - [net] SUNRPC: Set SOFTCONN when destroying GSS contexts (Scott Mayhew) [1872311] - [net] SUNRPC: rpc_call_null_helper() should set RPC_TASK_SOFT (Scott Mayhew) [1872311] - [net] SUNRPC: rpc_call_null_helper() already sets RPC_TASK_NULLCREDS (Scott Mayhew) [1872311] - [net] SUNRPC: trace RPC client lifetime events (Scott Mayhew) [1872311] - [net] SUNRPC: Trace transport lifetime events (Scott Mayhew) [1872311] - [net] SUNRPC: Split the xdr_buf event class (Scott Mayhew) [1872311] - [net] SUNRPC: Add tracepoint to rpc_call_rpcerror() (Scott Mayhew) [1872311] - [trace] SUNRPC: Update the RPC_SHOW_SOCKET() macro (Scott Mayhew) [1872311] - [trace] SUNRPC: Update the rpc_show_task_flags() macro (Scott Mayhew) [1872311] - [net] SUNRPC: Trace GSS context lifetimes (Scott Mayhew) [1872311] - [net] SUNRPC: receive buffer size estimation values almost never change (Scott Mayhew) [1872311] - [net] sunrpc: use kmemdup_nul() in gssp_stringify() (Scott Mayhew) [1872311] - [fs] nfsd: safer handling of corrupted c_type (Scott Mayhew) [1872311] - [fs] mm/writeback: discard NR_UNSTABLE_NFS, use NR_WRITEBACK instead (Scott Mayhew) [1872311] - [mm] mm/writeback: replace PF_LESS_THROTTLE with PF_LOCAL_THROTTLE (Scott Mayhew) [1872311] - [net] SUNRPC: Remove unreachable error condition in rpcb_getport_async() (Scott Mayhew) [1872311] - [fs] nfsd: Fix svc_xprt refcnt leak when setup callback client failed (Scott Mayhew) [1872311] - [net] sunrpc: check that domain table is empty at module unload (Scott Mayhew) [1872311] - [fs] NFS: remove duplicate headers (Scott Mayhew) [1872311] - [fs] NFSv4.1 fix rpc_call_done assignment for BIND_CONN_TO_SESSION (Scott Mayhew) [1872311] - [fs] NFS: Use the correct style for SPDX License Identifier (Scott Mayhew) [1872311] - [net] net: sunrpc: Fix off-by-one issues in 'rpc_ntop6' (Scott Mayhew) [1872311] - [fs] NFS: move dprintk after nfs_alloc_fattr in nfs3_proc_lookup (Scott Mayhew) [1872311] - [fs] NFSD: Fix improperly-formatted Doxygen comments (Scott Mayhew) [1872311] - [fs] NFSD: Squash an annoying compiler warning (Scott Mayhew) [1872311] - [net] SUNRPC: Clean up request deferral tracepoints (Scott Mayhew) [1872311] - [fs] NFSD: Add tracepoints for monitoring NFSD callbacks (Scott Mayhew) [1872311] - [fs] NFSD: Add tracepoints to the NFSD state management code (Scott Mayhew) [1872311] - [fs] NFSD: Add tracepoints to NFSD's duplicate reply cache (Scott Mayhew) [1872311] - [trace] SUNRPC: svc_show_status() macro should have enum definitions (Scott Mayhew) [1872311] - [net] SUNRPC: Restructure svc_udp_recvfrom() (Scott Mayhew) [1872311] - [net] SUNRPC: Refactor svc_recvfrom() (Scott Mayhew) [1872311] - [net] SUNRPC: Clean up svc_release_skb() functions (Scott Mayhew) [1872311] - [net] SUNRPC: Refactor recvfrom path dealing with incomplete TCP receives (Scott Mayhew) [1872311] - [net] SUNRPC: Replace dprintk() call sites in TCP receive path (Scott Mayhew) [1872311] - [net] SUNRPC: Restructure svc_tcp_recv_record() (Scott Mayhew) [1872311] - [net] SUNRPC: Rename svc_sock::sk_reclen (Scott Mayhew) [1872311] - [net] SUNRPC: Trace server-side rpcbind registration events (Scott Mayhew) [1872311] - [net] SUNRPC: Replace dprintk call sites in TCP state change callouts (Scott Mayhew) [1872311] - [net] SUNRPC: Add more svcsock tracepoints (Scott Mayhew) [1872311] - [net] SUNRPC: Remove "#include " (Scott Mayhew) [1872311] - [net] SUNRPC: Trace a few more generic svc_xprt events (Scott Mayhew) [1872311] - [net] SUNRPC: Tracepoint to record errors in svc_xpo_create() (Scott Mayhew) [1872311] - [trace] SUNRPC: Remove kernel memory address from svc_xprt tracepoints (Scott Mayhew) [1872311] - [net] svcrdma: Add tracepoints to report ->xpo_accept failures (Scott Mayhew) [1872311] - [net] svcrdma: Displayed remote IP address should match stored address (Scott Mayhew) [1872311] - [include] svcrdma: Remove the SVCRDMA_DEBUG macro (Scott Mayhew) [1872311] - [net] svcrdma: Rename tracepoints that record header decoding errors (Scott Mayhew) [1872311] - [net] svcrdma: Remove backchannel dprintk call sites (Scott Mayhew) [1872311] - [net] SUNRPC: Move xpt_mutex into socket xpo_sendto methods (Scott Mayhew) [1872311] - [net] sunrpc: add missing newline when printing parameter 'pool_mode' by sysfs (Scott Mayhew) [1872311] - [net] sunrpc: Remove unused function ip_map_update (Scott Mayhew) [1872311] - [fs] nfsd: handle repeated BIND_CONN_TO_SESSION (Scott Mayhew) [1872311] - [net] ip_tunnel_core: Fix build for archs without _HAVE_ARCH_IPV6_CSUM (Aaron Conole) [1849736] - [tools] selftests: pmtu.sh: Add tests for UDP tunnels handled by Open vSwitch (Aaron Conole) [1849736] - [tools] selftests: pmtu.sh: Add tests for bridged UDP tunnels (Aaron Conole) [1849736] - [net] geneve: Support for PMTU discovery on directly bridged links (Aaron Conole) [1849736] - [net] vxlan: Support for PMTU discovery on directly bridged links (Aaron Conole) [1849736] - [net] tunnels: PMTU discovery support for directly bridged IP packets (Aaron Conole) [1849736] - [net] ipv4: route: Ignore output interface in FIB lookup for PMTU route (Aaron Conole) [1849736] - [infiniband] RDMA/core: Free DIM memory in error unwind (Kamal Heib) [1857602] - [infiniband] RDMA/core: Stop DIM before destroying CQ (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Add min length checks to user structure copies (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Protect access to remote_sidr_table (Kamal Heib) [1857602] - [infiniband] RDMA/core: Fix race in rdma_alloc_commit_uobject() (Kamal Heib) [1857602] - [net] xprtrdma: fix incorrect header size calculations (Kamal Heib) [1857602] - [net] xprtrdma: Fix handling of connect errors (Kamal Heib) [1857602] - [net] xprtrdma: Fix return code from rpcrdma_xprt_connect() (Kamal Heib) [1857602] - [net] xprtrdma: Fix recursion into rpcrdma_xprt_disconnect() (Kamal Heib) [1857602] - [net] xprtrdma: Fix double-free in rpcrdma_ep_create() (Kamal Heib) [1857602] - [infiniband] RDMA/siw: Fix reporting vendor_part_id (Kamal Heib) [1857602] - [infiniband] IB/sa: Resolv use-after-free in ib_nl_make_request() (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add explicit cast OPA_MTU_8192 to 'enum ib_mtu' (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add atomic triggered sleep/wakeup (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Correct -EBUSY handling in tx code (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Restore kfree in dummy_netdev cleanup (Kamal Heib) [1857602] - [infiniband] IB/mad: Fix use after free when destroying MAD agent (Kamal Heib) [1857602] - [infiniband] RDMA/counter: Query a counter before release (Kamal Heib) [1857602] - [net] xprtrdma: Fix handling of RDMA_ERROR replies (Kamal Heib) [1857602] - [net] xprtrdma: Clean up synopsis of rpcrdma_flush_disconnect() (Kamal Heib) [1857602] - [net] xprtrdma: Use re_connect_status safely in rpcrdma_xprt_connect() (Kamal Heib) [1857602] - [net] xprtrdma: Prevent dereferencing r_xprt->rx_ep after it is freed (Kamal Heib) [1857602] - [infiniband] RDMA/mad: Fix possible memory leak in ib_mad_post_receive_mads() (Kamal Heib) [1857602] - [infiniband] RDMA/core: Check that type_attrs is not NULL prior access (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Protect bind_list and listen_list while finding matching cm id (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Set maximum pkeys device attribute (Kamal Heib) [1857602] - [infiniband] RDMA/rvt: Fix potential memory leak caused by rvt_alloc_rq (Kamal Heib) [1857602] - [infiniband] RDMA/core: Annotate CMA unlock helper routine (Kamal Heib) [1857602] - [infiniband] RDMA/siw: Fix pointer-to-int-cast warning in siw_rx_pbl() (Kamal Heib) [1857602] - [infiniband] RDMA/hfi1: Fix trivial mis-spelling of 'descriptor' (Kamal Heib) [1857602] - [net] xprtrdma: Make xprt_rdma_slot_table_entries static (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Spurious WARNING triggered in cm_destroy_id() (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Use free_netdev() in hfi1_netdev_free() (Kamal Heib) [1857602] - [infiniband] RDMA/core: Move and rename trace_cm_id_create() (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Fix hfi1_netdev_rx_init() error handling (Kamal Heib) [1857602] - [infiniband] RDMA: Remove 'max_map_per_fmr' (Kamal Heib) [1857602] - [infiniband] RDMA: Remove 'max_fmr' (Kamal Heib) [1857602] - [net] RDMA/rds: Remove FMR support for memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/core: Remove FMR device ops (Kamal Heib) [1857602] - [infiniband] RDMA/rdmavt: Remove FMR memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/mthca: Remove FMR support for memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/mlx4: Remove FMR support for memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/i40iw: Remove FMR leftovers (Kamal Heib) [1857602] - [infiniband] RDMA/bnxt_re: Remove FMR leftovers (Kamal Heib) [1857602] - [infiniband] RDMA/mlx5: Remove FMR leftovers (Kamal Heib) [1857602] - [infiniband] RDMA/core: Remove FMR pool API (Kamal Heib) [1857602] - [infiniband] RDMA/srp: Remove support for FMR memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/iser: Remove support for FMR memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/core: Fix several reference count leaks (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Fix spelling mistake "enought" -> "enough" (Kamal Heib) [1857602] - [rdma] RDMA/core: Use offsetofend() instead of open coding (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Increase max_send_sge (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Reduce max_recv_sge to 1 (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Make debug output more detailed (Kamal Heib) [1857602] - [infiniband] RDMA/srp: Make the channel count configurable per target (Kamal Heib) [1857602] - [infiniband] hfi1: get rid of pointless access_ok() (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Provide ECE reject reason (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Connect ECE to rdma_accept (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Send and receive ECE parameter over the wire (Kamal Heib) [1857602] - [infiniband] RDMA/ucma: Deliver ECE parameters through UCMA events (Kamal Heib) [1857602] - [infiniband] RDMA/ucma: Extend ucma_connect to receive ECE parameters (Kamal Heib) [1857602] - [rdma] RDMA/cm: Add Enhanced Connection Establishment (ECE) bits (Kamal Heib) [1857602] - [infiniband] RDMA/core: Use sizeof_field() helper (Kamal Heib) [1857602] - [infiniband] RDMA/ipoib: Remove can_sleep parameter from iboib_mcast_alloc (Kamal Heib) [1857602] - [infiniband] IB/cma: Fix ports memory leak in cma_configfs (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Introduce create/destroy QP commands over ioctl (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Introduce create/destroy WQ commands over ioctl (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Introduce create/destroy SRQ commands over ioctl (Kamal Heib) [1857602] - [rdma] IB/uverbs: Move QP, SRQ, WQ type and flags to UAPI (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Extend CQ to get its own asynchronous event FD (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Refactor related objects to use their own asynchronous event FD (Kamal Heib) [1857602] - [infiniband] RDMA/core: Allow the ioctl layer to abort a fully created uobject (Kamal Heib) [1857602] - [infiniband] IB/mlx5: Expose UAR object and its alloc/destroy commands (Kamal Heib) [1857602] - [infiniband] IB/mlx5: Fix a NULL vs IS_ERR() check (Kamal Heib) [1857602] - [infiniband] IB/mlx5: Introduce UAPIs to manage packet pacing (Kamal Heib) [1857602] - [netdrv] net/mlx5: Expose raw packet pacing APIs (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Enable the transmit side of the datagram ipoib netdev (Kamal Heib) [1857602] - [infiniband] IB/ipoib: Add capability to switch between datagram and connected mode (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add packet histogram trace event (Kamal Heib) [1857602] - [infiniband] IB/{hfi1, ipoib, rdma}: Broadcast ping sent packets which exceeded mtu size (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Activate the dummy netdev (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add rx functions for dummy netdev (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add interrupt handler functions for accelerated ipoib (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add functions to receive accelerated ipoib packets (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Rename num_vnic_contexts as num_netdev_contexts (Kamal Heib) [1857602] - [infiniband] IB/ipoib: Increase ipoib Datagram mode MTU's upper limit (Kamal Heib) [1857602] - [infiniband] IB/hfi1: RSM rules for AIP (Kamal Heib) [1857602] - [infiniband] IB/{rdmavt, hfi1}: Implement creation of accelerated UD QPs (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Remove module parameter for KDETH qpns (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add the transmit side of a datagram ipoib RDMA netdev (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add functions to transmit datagram ipoib packets (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add accelerated IP capability bit (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Report host information to the device (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Fix setting of wrong bit in get/set_feature commands (Kamal Heib) [1857602] - [infiniband] RDMA/siw: Replace one-element array and use struct_size() helper (Kamal Heib) [1857602] - [net] svcrdma: Fix backchannel return code (Kamal Heib) [1857602] - [net] svcrdma: trace undersized Write chunks (Kamal Heib) [1857602] - [net] svcrdma: Trace page overruns when constructing RDMA Reads (Kamal Heib) [1857602] - [net] svcrdma: Clean up handling of get_rw_ctx errors (Kamal Heib) [1857602] - [net] svcrdma: Clean up the tracing for rw_ctx_init errors (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Add a newline when printing parameter 'srpt_service_guid' by sysfs (Kamal Heib) [1857602] - [infiniband] RDMA/core: Consolidate ib_create_srq flows (Kamal Heib) [1857602] - [infiniband] RDMA/uverbs: Fix create WQ to use the given user handle (Kamal Heib) [1857602] - [infiniband] RDMA/uverbs: Cleanup wq/srq context usage from uverbs layer (Kamal Heib) [1857602] - [rdma] IB/rdmavt: Replace zero-length array with flexible-array (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Increment the refcount inside cm_find_listen() (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove needless cm_id variable (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove the cm_free_id() wrapper function (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Make find_remote_id() return a cm_id_private (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Add a note explaining how the timewait is eventually freed (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Pass the cm_id_private into cm_cleanup_timewait (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Pull duplicated code into cm_queue_work_unlock() (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove unused store to ret in cm_rej_handler (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove return code from add_cm_id_to_port_list (Kamal Heib) [1857602] - [infiniband] RDMA/addr: Mark addr_resolve as might_sleep() (Kamal Heib) [1857602] - [infiniband] RDMA/ucma: Return stable IB device index as identifier (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Initialize the flow label of CM's route path record (Kamal Heib) [1857602] - [infiniband] RDMA/core: Consider flow label when building skb (Kamal Heib) [1857602] - [rdma] RDMA/core: Add hash functions to calculate RoCEv2 flowlabel and UDP source port (Kamal Heib) [1857602] - [infiniband] RDMA: Allow ib_client's to fail when add() is called (Kamal Heib) [1857602] - [infiniband] RDMA/mad: Remove snoop interface (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Count admin commands errors (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Count mmap failures (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Report create CQ error counter (Kamal Heib) [1857602] - [infiniband] RDMA/core: Get xmit slave for LAG (Kamal Heib) [1857602] - [infiniband] RDMA/core: Add LAG functionality (Kamal Heib) [1857602] - [infiniband] RDMA: Group create AH arguments in struct (Kamal Heib) [1857602] - [infiniband] RDMA/rw: use DIV_ROUND_UP to calculate nr_ops (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Limit the scope of rdma_is_consumer_reject function (Kamal Heib) [1857602] - [infiniband] IB: Fix some documentation warnings (Kamal Heib) [1857602] - [infiniband] RDMA: Remove a few extra calls to ib_get_client_data() (Kamal Heib) [1857602] - [infiniband] RDMA/uverbs: Make the event_queue fds return POLLERR when disassociated (Kamal Heib) [1857602] - [infiniband] RDMA/rxe: Set default vendor ID (Kamal Heib) [1857602] - [netdrv] bonding: Use fallthrough pseudo-keyword (Jarod Wilson) [1860495] - [netdrv] bonding: fix active-backup failover for current ARP slave (Jarod Wilson) [1860495] - [netdrv] bonding: fix a potential double-unregister (Jarod Wilson) [1860495] - [netdrv] net: bonding: bond_alb: Describe alb_handle_addr_collision_on_attach()'s 'bond' and 'addr' params (Jarod Wilson) [1860495] - [netdrv] net: bonding: bond_main: Document 'proto' and rename 'new_active' parameters (Jarod Wilson) [1860495] - [netdrv] net: bonding: bond_3ad: Fix a bunch of kerneldoc parameter issues (Jarod Wilson) [1860495] - [netdrv] bonding: show saner speed for broadcast mode (Jarod Wilson) [1868265 1860495] - [netdrv] bonding: check return value of register_netdevice() in bond_newlink() (Jarod Wilson) [1860495] - [netdrv] bonding: check error value of register_netdevice() immediately (Jarod Wilson) [1860495] - [netdrv] bonding: don't need RTNL for ipsec helpers (Jarod Wilson) [1860495] - [netdrv] bonding: deal with xfrm state in all modes and add more error-checking (Jarod Wilson) [1860495] - [netdrv] bonding: allow xfrm offload setup post-module-load (Jarod Wilson) [1860495] - [netdrv] bonding: Remove extraneous parentheses in bond_setup (Jarod Wilson) [1860495] - [netdrv] bonding/xfrm: use real_dev instead of slave_dev (Jarod Wilson) [1860495] - [netdrv] bonding: support hardware encryption offload to slaves (Jarod Wilson) [1860495] - [netdrv] mlx5: become aware of when running as a bonding slave (Jarod Wilson) [1860495] - [netdrv] ixgbe_ipsec: become aware of when running as a bonding slave (Jarod Wilson) [1860495] - [net] xfrm: bail early on slave pass over skb (Jarod Wilson) [1860495] - [netdrv] bonding: Fix reference count leak in bond_sysfs_slave_add (Jarod Wilson) [1860495] - [netdrv] bonding: propagate transmit status (Jarod Wilson) [1860495] - [netdrv] bonding: remove useless stats_lock_key (Jarod Wilson) [1860495] - [netdrv] bonding: Implement ndo_get_xmit_slave (Jarod Wilson) [1860495] - [netdrv] bonding: Add array of all slaves (Jarod Wilson) [1860495] - [netdrv] bonding: Add function to get the xmit slave in active-backup mode (Jarod Wilson) [1860495] - [netdrv] bonding: Add helper function to get the xmit slave in rr mode (Jarod Wilson) [1860495] - [netdrv] bonding: Add helper function to get the xmit slave based on hash (Jarod Wilson) [1860495] - [netdrv] bonding/alb: Add helper functions to get the xmit slave (Jarod Wilson) [1860495] - [netdrv] bonding: Rename slave_arr to usable_slaves (Jarod Wilson) [1860495] - [netdrv] bonding: Export skip slave logic to function (Jarod Wilson) [1860495] - [netdrv] bonding: Remove inclusion of vermagic header (Jarod Wilson) [1860495] - [netdrv] net/bond: Delete driver and module versions (Jarod Wilson) [1860495]- [mm] powerpc/book3s64/radix: Fix boot failure with large amount of guest memory (Steve Best) [1854543] - [powerpc] powerpc/book3s64/radix: Add kernel command line option to disable radix GTSE (Steve Best) [1854543] - [powerpc] powerpc/prom: Enable Radix GTSE in cpu pa-features (Steve Best) [1854543] - [powerpc] powerpc/mm/book3s64/radix: Off-load TLB invalidations to host when !GTSE (Steve Best) [1854543] - [powerpc] powerpc/pseries: H_REGISTER_PROC_TBL should ask for GTSE only if enabled (Steve Best) [1854543] - [powerpc] powerpc/mm: Enable radix GTSE only if supported (Steve Best) [1854543] - [misc] powerpc/64s/radix: introduce options to disable use of the tlbie instruction (Steve Best) [1854543] - [mm] powerpc/64s: remove unnecessary translation cache flushes at boot (Steve Best) [1854543] - [mm] powerpc/64s/pseries: radix flush translations before MMU is enabled at boot (Steve Best) [1854543] - [mm] powerpc/64s: make mmu_partition_table_set_entry TLB flush optional (Steve Best) [1854543] - [mm] powerpc/64s/radix: tidy up TLB flushing code (Steve Best) [1854543] - [mm] powerpc/64s: remove register_process_table callback (Steve Best) [1854543] - [mm] powerpc/mm: Limit resize_hpt_for_hotplug() call to hash guests only (Steve Best) [1854543] - [powerpc] powerpc/mm/radix: Create separate mappings for hot-plugged memory (Steve Best) [1854543] - [mm] powerpc/mm/radix: Remove split_kernel_mapping() (Steve Best) [1854543] - [mm] powerpc/mm/radix: Free PUD table when freeing pagetable (Steve Best) [1854543] - [mm] powerpc/mm/radix: Fix PTE/PMD fragment count for early page table mappings (Steve Best) [1854543] - [mm] powerpc/64s: Fix page table fragment refcount race vs speculative references (Steve Best) [1854543] - [powerpc] powerpc/security: Fix link stack flush instruction (Gustavo Duarte) [1862103] - [powerpc] powerpc/pseries: add new branch prediction security bits for link stack (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: Allow for processors that flush the link stack using the special bcctr (Gustavo Duarte) [1862103] - [powerpc] powerpc/64s: Move branch cache flushing bcctr variant to ppc-ops.h (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: split branch cache flush toggle from code patching (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: make display of branch cache flush more consistent (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: change link stack flush state to the flush type enum (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: re-name count cache flush to branch cache flush (Gustavo Duarte) [1862103] - [kernel] smp: Remove superfluous cond_func check in smp_call_function_many_cond() (Prarit Bhargava) [1882551] - [kernel] smp: Remove allocation mask from on_each_cpu_cond.*() (Prarit Bhargava) [1882551] - [kernel] smp: Add a smp_cond_func_t argument to smp_call_function_many() (Prarit Bhargava) [1882551] - [kernel] smp: Use smp_cond_func_t as type for the conditional function (Prarit Bhargava) [1882551] - [kernel] smp, cpumask: introduce on_each_cpu_cond_mask (Prarit Bhargava) [1882551] - [kernel] smp: use __cpumask_set_cpu in on_each_cpu_cond (Prarit Bhargava) [1882551] - [pci] PCI: Add support for root bus sizing (Myron Stowe) [1886036] - [drm] PCI: Use ioremap(), not phys_to_virt() for platform ROM (Myron Stowe) [1886036] - [pci] PCI: Avoid ASMedia XHCI USB PME# from D0 defect (Myron Stowe) [1886036] - [pci] PCI/ACPI: Move pcie_to_hpx3_typefrom stack to static data (Myron Stowe) [1886036] - [documentation] Documentation: PCI: Add background on Boot Interrupts (Myron Stowe) [1886036] - [pci] PCI: Add boot interrupt quirk mechanism for Xeon chipsets (Myron Stowe) [1886036] - [pci] PCI: Add PCIE_LNKCAP2_SLS2SPEED() macro (Myron Stowe) [1886036] - [pci] PCI: Use pci_speed_string() for all PCI/PCI-X/PCIe strings (Myron Stowe) [1886036] - [pci] PCI: Add pci_speed_string() (Myron Stowe) [1886036] - [pci] PCI: Add 32 GT/s decoding in some macros (Myron Stowe) [1886036] - [powerpc] powerpc/test_emulate_step: Move extern declaration to sstep.h (Desnes Augusto Nunes do Rosario) [1854542] - [powerpc] powerpc/sstep: Introduce macros to retrieve Prefix instruction operands (Desnes Augusto Nunes do Rosario) [1854542] - [powerpc] powerpc/test_emulate_step: Add negative tests for prefixed addi (Desnes Augusto Nunes do Rosario) [1854542] - [powerpc] powerpc/test_emulate_step: Enhancement to test negative scenarios (Desnes Augusto Nunes do Rosario) [1854542] - [netdrv] drivers/net/ibmvnic: Update VNIC protocol version reporting (Steve Best) [1882269] - [s390] s390/zcrypt: fix kmalloc 256k failure (Claudio Imbrenda) [1885963] - [x86] crypto: x86/aesni-gcm - fix crash on empty plaintext (Herbert Xu) [1882868] - [x86] crypto: x86/aesni-gcm - make 'struct aesni_gcm_tfm_s' static const (Herbert Xu) [1882868] - [x86] crypto: aesni - Add scatter/gather avx stubs, and use them in C (Herbert Xu) [1882868] - [x86] crypto: aesni - Introduce partial block macro (Herbert Xu) [1882868] - [x86] crypto: aesni - Introduce READ_PARTIAL_BLOCK macro (Herbert Xu) [1882868] - [x86] crypto: aesni - Move ghash_mul to GCM_COMPLETE (Herbert Xu) [1882868] - [x86] crypto: aesni - Fill in new context data structures (Herbert Xu) [1882868] - [x86] crypto: aesni - Merge avx precompute functions (Herbert Xu) [1882868] - [x86] crypto: aesni - Split AAD hash calculation to separate macro (Herbert Xu) [1882868] - [x86] crypto: aesni - Add GCM_COMPLETE macro (Herbert Xu) [1882868] - [x86] crypto: aesni - support 256 byte keys in avx asm (Herbert Xu) [1882868] - [x86] crypto: aesni - Macro-ify func save/restore (Herbert Xu) [1882868] - [x86] crypto: aesni - Introduce gcm_context_data (Herbert Xu) [1882868] - [x86] crypto: aesni - Merge GCM_ENC_DEC (Herbert Xu) [1882868] - [pci] PCI: Add DMA alias quirk for PLX PEX NTB (Myron Stowe) [1884657] - [pci] PCI: Add nr_devfns parameter to pci_add_dma_alias() (Myron Stowe) [1884657] - [pci] PCI: Fix pci_add_dma_alias() bitmask size (Myron Stowe) [1884657] - [pci] PCI/IOV: Fix memory leak in pci_iov_add_virtfn() (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 device IDs (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 MRPC GAS access permission check (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 flash information interface support (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 system info register support (Myron Stowe) [1884657] - [pci] PCI/switchtec: Separate Gen3 register structures into unions (Myron Stowe) [1884657] - [pci] PCI/switchtec: Factor out Gen3 ioctl_flash_part_info() (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add 'generation' variable (Myron Stowe) [1884657] - [pci] PCI/switchtec: Rename generation-specific constants (Myron Stowe) [1884657] - [pci] PCI/switchtec: Move check event ID from mask_event() to switchtec_event_isr() (Myron Stowe) [1884657] - [pci] PCI/switchtec: Remove redundant valid PFF number count (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add support for Intercomm Notify and Upstream Error Containment (Myron Stowe) [1884657] - [pci] PCI/switchtec: Fix vep_vector_number ioread width (Myron Stowe) [1884657] - [pci] PCI/switchtec: Use dma_set_mask_and_coherent() (Myron Stowe) [1884657] - [pci] PCI: Allow adjust_bridge_window() to shrink resource if necessary (Myron Stowe) [1884657] - [pci] PCI: Set resource size directly in adjust_bridge_window() (Myron Stowe) [1884657] - [pci] PCI: Rename extend_bridge_window() to adjust_bridge_window() (Myron Stowe) [1884657] - [pci] PCI: Rename extend_bridge_window() parameter (Myron Stowe) [1884657] - [pci] PCI: Consider alignment of hot-added bridges when assigning resources (Myron Stowe) [1884657] - [pci] PCI: Remove local variable usage in pci_bus_distribute_available_resources() (Myron Stowe) [1884657] - [pci] PCI: Pass size + alignment to pci_bus_distribute_available_resources() (Myron Stowe) [1884657] - [pci] PCI: Rename variables (Myron Stowe) [1884657] - [pci] PCI: Remove unnecessary braces (Myron Stowe) [1884657] - [pci] PCI: Don't disable bridge BARs when assigning bus resources (Myron Stowe) [1884657] - [documentation] Documentation: PCI: Fix pci_alloc_irq_vectors() function name typo (Myron Stowe) [1884657] - [pci] PCI: Increase D3 delay for AMD Ryzen5/7 XHCI controllers (Myron Stowe) [1884657] - [pci] PCI: Add generic quirk for increasing D3hot delay (Myron Stowe) [1884657] - [edac] x86/mce, EDAC/mce_amd: Print PPIN in machine check records (Prarit Bhargava) [1860381]- [netdrv] geneve: add transport ports in route lookup for geneve (Mark Gray) [1884481] {CVE-2020-25645} - [drm] PM: sleep: core: Rename DPM_FLAG_NEVER_SKIP (Ivan Vecera) [1867164] - [base] PM: sleep: core: Drop racy and redundant checks from device_prepare() (Ivan Vecera) [1867164] - [mm] mm/page_isolation: fix potential warning from user (Waiman Long) [1811009] - [mm] mm/hotplug: silence a lockdep splat with printk() (Waiman Long) [1811009] - [mm] mm/debug.c: always print flags in dump_page() (Waiman Long) [1811009] - [mm] mm/debug.c: PageAnon() is true for PageKsm() pages (Waiman Long) [1811009] - [mm] mm/debug.c: __dump_page() prints an extra line (Waiman Long) [1811009] - [mm] mm: fix some typos in mm directory (Waiman Long) [1811009] - [mm] mm, fault_around: do not take a reference to a locked page (Waiman Long) [1811009] - [mm] mm: remove the exporting of totalram_pages (Waiman Long) [1880090] - [mm] mm: remove managed_page_count_lock spinlock (Waiman Long) [1880090] - [mm] mm: convert totalram_pages and totalhigh_pages variables to atomic (Waiman Long) [1880090] - [mm] mm: convert zone->managed_pages to atomic variable (Waiman Long) [1880090] - [net] mm: reference totalram_pages and managed_pages once per function (Waiman Long) [1880090] - [mm] mm/page_alloc: Introduce free_area_init_core_hotplug (Waiman Long) [1880090] - [mm] mm/page_alloc: inline function to handle CONFIG_DEFERRED_STRUCT_PAGE_INIT (Waiman Long) [1880090] - [mm] mm: remove __paginginit (Waiman Long) [1880090] - [mm] mm: access zone->node via zone_to_nid() and zone_set_nid() (Waiman Long) [1880090] - [mm] mm, page_alloc: double zone's batchsize (Waiman Long) [1880090] - [powerpc] powerpc/pseries/cmm: fix managed page counts when migrating pages between zones (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: drain per-cpu pages again during memory offline (Chris von Recklinghausen) [1754739] - [mm] mm: move nr_deactivate accounting to shrink_active_list() (Chris von Recklinghausen) [1754739] - [mm] sh: fix build error in mm/init.c (Chris von Recklinghausen) [1754739] - [mm] mm/memremap: set caching mode for PCI P2PDMA memory to WC (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: add pgprot_t to mhp_params (Chris von Recklinghausen) [1754739] - [mm] powerpc/mm: thread pgprot_t through create_section_mapping() (Chris von Recklinghausen) [1754739] - [mm] x86/mm: thread pgprot_t through init_memory_mapping() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: rename mhp_restrictions to mhp_params (Chris von Recklinghausen) [1754739] - [include] mm/memory_hotplug: drop the flags field from struct mhp_restrictions (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: cleanup __add_pages() (Chris von Recklinghausen) [1754739] - [mm] mm, hotplug: fix page online with DEBUG_PAGEALLOC compiled but not enabled (Chris von Recklinghausen) [1754739] - [mm] arm64/mm: Enable memory hot remove (Chris von Recklinghausen) [1754739] - [firmware] arm/efi: EFI soft reservation to memblock (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: convert mm/dump.c to use walk_page_range() (Chris von Recklinghausen) [1754739] - [base] mm/memory_hotplug: drop valid_start/valid_end from test_pages_in_a_zone() (Chris von Recklinghausen) [1754739] - [base] mm/memory_hotplug: pass in nid to online_pages() (Chris von Recklinghausen) [1754739] - [mm] mm: remove "count" parameter from has_unmovable_pages() (Chris von Recklinghausen) [1754739] - [base] mm: remove the memory isolate notifier (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Disable instrumentation in the EFI runtime handling code (Chris von Recklinghausen) [1754739] - [x86] efi/x86: avoid KASAN false positives when accessing the 1: 1 mapping (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Limit EFI old memory map to SGI UV machines (Chris von Recklinghausen) [1754739] - [x86] efi/libstub/x86: Fix unused-variable warning (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Simplify mixed mode call wrapper (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Simplify 64-bit EFI firmware call wrapper (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Split SetVirtualAddresMap() wrappers into 32 and 64 bit versions (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Split off some old memmap handling into separate routines (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Re-disable RT services for 32-bit kernels running on 64-bit EFI (Chris von Recklinghausen) [1754739] - [x86] efi/libstub: Distinguish between native/mixed not 32/64 bit (Chris von Recklinghausen) [1754739] - [firmware] efi/libstub: Extend native protocol definitions with mixed_mode aliases (Chris von Recklinghausen) [1754739] - [firmware] efi/libstub: Use a helper to iterate over a EFI handle array (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Rename efi_is_native() to efi_is_mixed() (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Unify 32/64-bit functions (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Convert GOP structures to typedef and clean up some types (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Remove unused typedef (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Remove bogus packed attribute from GOP structures (Chris von Recklinghausen) [1754739] - [firmware] efi/libstub/random: Initialize pointer variables to zero for mixed mode (Chris von Recklinghausen) [1754739] - [firmware] efi: Fix efi_loaded_image_t::unload type (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Fix memory leak in __gop_query32/64() (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Return EFI_SUCCESS if a usable GOP was found (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Return EFI_NOT_FOUND if there are no usable GOPs (Chris von Recklinghausen) [1754739] - [hv] mm/memory_hotplug.c: remove __online_page_set_limits() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: don't allow to online/offline memory blocks with holes (Chris von Recklinghausen) [1754739] - [mm] mm/page_isolation.c: convert SKIP_HWPOISON to MEMORY_OFFLINE (Chris von Recklinghausen) [1754739] - [mm] mm/page_alloc.c: don't set pages PageReserved() when offlining (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: remove __online_page_free() and __online_page_increment_counters() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: add a bounds check to __add_pages() (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Fix NMI vs ESPFIX (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Unwind the ESPFIX stack earlier on exception entry (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Move FIXUP_FRAME after pushing fs in SAVE_ALL (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Simplify common_exception (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Use ss segment where required (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Fix IRET exception (Chris von Recklinghausen) [1754739] - [x86] x86/xen/32: Make xen_iret_crit_fixup() independent of frame layout (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe/32: Repair 32-bit Xen PV (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe/32: Allow int3_emulate_push() (Chris von Recklinghausen) [1754739] - [x86] x86: Hide the int3_emulate_call/jmp functions from UML (Chris von Recklinghausen) [1754739] - [x86] ftrace/x86_64: Emulate call function while updating in breakpoint handler (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe/32: Provide consistent pt_regs (Chris von Recklinghausen) [1754739] - [x86] kprobes, x86/ptrace.h: Make regs_get_kernel_stack_nth() not fault on bad stack (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe, x86/ftrace: Add pt_regs frame annotations (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe, x86/kprobes: Fix frame pointer annotations (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe: Move ENCODE_FRAME_POINTER to asm/frame.h (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Clean up return from interrupt preemption path (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Simulation mode (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Switch to balloon_page_alloc() (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Implement balloon compaction (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Convert loaned_pages to an atomic_long_t (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Rip out memory isolate notifier (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Use adjust_managed_page_count() insted of totalram_pages_* (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Drop page array (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Cleanup rc handling in cmm_init() (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Report errors when registering notifiers fails (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Implement release() function for sysfs device (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Push EFI_MEMMAP check into leaf routines (Chris von Recklinghausen) [1754739] - [mm] powerpc: Don't flush caches when adding memory (Chris von Recklinghausen) [1754739] - [firmware] efi/random: use arch-independent efi_call_proto() (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack/64: Don't evaluate exception stacks before setup (Chris von Recklinghausen) [1754739] - [xen] xen/balloon: Mark pages PG_offline in balloon_append() (Chris von Recklinghausen) [1754739] - [xen] xen/balloon: Drop __balloon_append() (Chris von Recklinghausen) [1754739] - [xen] xen/balloon: Set pages PageOffline() in balloon_add_region() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: prevent memory leak when reusing pgdat (Chris von Recklinghausen) [1754739] - [base] drivers/base/memory.c: don't store end_section_nr in memory blocks (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: remove move_pfn_range() (Chris von Recklinghausen) [1754739] - [mm] mm: introduce compound_nr() (Chris von Recklinghausen) [1754739] - [x86] x86/asm: Make some functions local labels (Chris von Recklinghausen) [1754739] - [firmware] efi-stub: Fix get_efi_config_table on mixed-mode setups (Chris von Recklinghausen) [1754739] - [x86] efi/x86: move UV_SYSTAB handling into arch/x86 (Chris von Recklinghausen) [1754739] - [x86] efi: x86: move efi_is_table_address() into arch/x86 (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: remove unneeded return for void function (Chris von Recklinghausen) [1754739] - [x86] x86/uaccess: Remove redundant CLACs in getuser/putuser error paths (Chris von Recklinghausen) [1754739] - [x86] x86/uaccess: Remove ELF function annotation from copy_user_handle_tail() (Chris von Recklinghausen) [1754739] - [x86] x86/entry: Fix thunk function ELF sizes (Chris von Recklinghausen) [1754739] - [x86] x86/entry/64: Simplify idtentry a little (Chris von Recklinghausen) [1754739] - [mm] mm: vmscan: correct some vmscan counters for THP swapout (Chris von Recklinghausen) [1754739] - [mm] mm/gup: speed up check_and_migrate_cma_pages() on huge page (Chris von Recklinghausen) [1754739] - [x86] x86/ldt: Initialize the context lock for init_mm (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries: avoid blocking in irq when queuing hotplug events (Chris von Recklinghausen) [1754739] - [arm64] arm64/mm: don't initialize pgd_cache twice (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: fix recent_rotated history (Chris von Recklinghausen) [1754739] - [x86] efi/x86/Add missing error handling to old_memmap 1:1 mapping code (Chris von Recklinghausen) [1754739] - [mm] arm64/mm: Inhibit huge-vmap with ptdump (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: simplify shrink_inactive_list() (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: cleanup memory offline path (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: fix the wrong usage of N_HIGH_MEMORY (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: drop redundant hugepage_migration_supported check (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: unlock 1GB-hugetlb on x86_64 (Chris von Recklinghausen) [1754739] - [mm] mm: move recent_rotated pages calculation to shrink_inactive_list() (Chris von Recklinghausen) [1754739] - [mm] x86/mm: Initialize PGD cache during mm initialization (Chris von Recklinghausen) [1754739] - [x86] x86/alternatives: Initialize temporary mm for patching (Chris von Recklinghausen) [1754739] - [mm] x86/mm: Fix a crash with kmemleak_scan() (Chris von Recklinghausen) [1754739] - [x86] x86/irq: Fix outdated comments (Chris von Recklinghausen) [1754739] - [mm] mm/hotplug: treat CMA pages as unmovable (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Remove stack overflow debug code (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Remap the IRQ stack with guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Split the IRQ stack into its own pages (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Init hardirq_stack_ptr during CPU hotplug (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Handle irq stack allocation failure proper (Chris von Recklinghausen) [1754739] - [xen] x86/irq/32: Invoke irq_ctx_init() from init_IRQ() (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Rename irq_stack_ptr to hardirq_stack_ptr (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Rename hard/softirq_stack to hard/softirq_stack_ptr (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Make irq stack a character array (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Define IRQ_STACK_SIZE (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack/64: Speedup in_exception_stack() (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Split debug IST stack (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Enable IST guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Disconnect IST index and stack order (Chris von Recklinghausen) [1754739] - [x86] x86/cpu: Remove orig_ist array (Chris von Recklinghausen) [1754739] - [x86] x86/cpu: Prepare TSS.IST setup for guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack/64: Use cpu_entry_area instead of orig_ist (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Use cpu entry area instead of orig_ist (Chris von Recklinghausen) [1754739] - [mm] x86/traps: Use cpu_entry_area instead of orig_ist (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Provide exception stack accessor (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Prepare for IST guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Add structs for exception stacks (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Cleanup setup functions (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Make IST index zero based (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Remove unused stack defines on 32bit (Chris von Recklinghausen) [1754739] - [x86] x86/64: Remove stale CURRENT_MASK (Chris von Recklinghausen) [1754739] - [x86] x86/idt: Remove unused macro SISTG (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Sanitize the top/bottom confusion (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Remove a hardcoded irq_stack_union access (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack: Fix off-by-one errors in stack identification (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Limit IST stack overflow check to #DB stack (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: Consolidate early page table allocation (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: don't call page table ctors for init_mm (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: use appropriate ctors for page tables (Chris von Recklinghausen) [1754739] - [x86] x86/uaccess: Move copy_user_handle_tail() into asm (Chris von Recklinghausen) [1754739] - [mm] mm/page_isolation.c: fix a wrong flag in set_migratetype_isolate() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: fix notification in offline error path (Chris von Recklinghausen) [1754739] - [mm] mm/hotplug: fix an imbalance with DEBUG_PAGEALLOC (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: explicitly pass the head to isolate_huge_page (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: do not allocate duplicate stack variables in shrink_page_list() (Chris von Recklinghausen) [1754739] - [mm] mm: refactor swap-in logic out of shmem_getpage_gfp (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: remove 7th argument of isolate_lru_pages() (Chris von Recklinghausen) [1754739] - [mm] mm: remove extra drain pages on pcp list (Chris von Recklinghausen) [1754739] - [mm] mm/memory-hotplug: Allow memory resources to be children (Chris von Recklinghausen) [1754739] - [kernel] mm/resource: Move HMM pr_debug() deeper into resource code (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: fix off-by-one in is_pageblock_removable (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Move percpu_setup_debug_store() to __init section (Chris von Recklinghausen) [1754739] - [mm] arm64: ptdump: Don't iterate kernel page tables using PTRS_PER_PXX (Chris von Recklinghausen) [1754739] - [firmware] efi: Use 32-bit alignment for efi_guid_t (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: __offline_pages fix wrong locking (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: test_pages_in_a_zone do not pass the end of zone (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: is_mem_section_removable do not pass the end of a zone (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: don't bail out in do_migrate_range() prematurely (Chris von Recklinghausen) [1754739] - [mm] arm64: dump: no need to check return value of debugfs_create functions (Chris von Recklinghausen) [1754739] - [x86] x86/asm/suspend: Drop ENTRY from local data (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: deobfuscate migration part of offlining (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: try to migrate full pfn range (Chris von Recklinghausen) [1754739] - [mm] mm, hotplug: move init_currently_empty_zone() under zone_span_lock protection (Chris von Recklinghausen) [1754739] - [mm] mm: only report isolation failures when offlining memory (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: be more verbose for memory offline failures (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: print reason for the offlining failure (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: drop pointless block alignment checks from __offline_pages (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Don't unmap EFI boot services code/data regions for EFI_OLD_MEMMAP and EFI_MIXED_MODE (Chris von Recklinghausen) [1754739] - [x86] kprobes/x86: Blacklist non-attachable interrupt functions (Chris von Recklinghausen) [1754739] - [include] linkage: add generic GLOBAL() macro (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Move efi__boot_services() to arch/x86 (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Unmap EFI boot services code/data regions from efi_pgd (Chris von Recklinghausen) [1754739] - [mm] x86/mm/pageattr: Introduce helper function to unmap EFI boot services (Chris von Recklinghausen) [1754739] - [x86] x86/fpu: Use the correct exception table macro in the XSTATE_OP wrapper (Chris von Recklinghausen) [1754739] - [firmware] efi/arm/libstub: Pack FDT after populating it (Chris von Recklinghausen) [1754739] - [x86] x86/traps: Complete prototype declarations (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: clean up node_states_check_changes_offline() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: simplify node_states_check_changes_online (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: tidy up node_states_clear_node() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: spare unnecessary calls to node_set_state (Chris von Recklinghausen) [1754739] - [include] include/linux/linkage.h: align weak symbols (Chris von Recklinghausen) [1754739] - [mm] shmem: Convert shmem_add_to_page_cache to XArray (Chris von Recklinghausen) [1754739] - [mm] shmem: Convert shmem_radix_tree_replace to XArray (Chris von Recklinghausen) [1754739] - [mm] mm: Convert add_to_swap_cache to XArray (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Clear the CS high bits (Chris von Recklinghausen) [1754739] - [x86] x86-32, hibernate: Set up temporary text mapping for 32bit system (Chris von Recklinghausen) [1754739] - [x86] x86-32, hibernate: Switch to original page table after resumed (Chris von Recklinghausen) [1754739] - [x86] x86-32, hibernate: Enable CONFIG_ARCH_HIBERNATION_HEADER on 32bit system (Chris von Recklinghausen) [1754739] - [x86] x86, hibernate: Extract the common code of 64/32 bit system (Chris von Recklinghausen) [1754739] - [x86] x86-32/asm/power: Create stack frames in hibernate_asm_32.S (Chris von Recklinghausen) [1754739] - [x86] PM / hibernate: Check the success of generating md5 digest before hibernation (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Load fixmap GDT in efi_call_phys_epilog() before setting cr3 (Chris von Recklinghausen) [1754739] - [x86] x86/xen: Move pv irq related functions under CONFIG_XEN_PV umbrella (Chris von Recklinghausen) [1754739] - [x86] x86/extable: Introduce _ASM_EXTABLE_UA for uaccess fixups (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Load fixmap GDT in efi_call_phys_epilog() (Chris von Recklinghausen) [1754739] - [tools] tools arch: Update arch/x86/lib/memcpy_64.S copy used in 'perf bench mem memcpy' (Chris von Recklinghausen) [1754739] - [mm] x86/mm: Remove redundant check for kmem_cache_create() (Chris von Recklinghausen) [1754739] - [x86] x86/power/hibernate_64: Remove VLA usage (Chris von Recklinghausen) [1754739] - [firmware] efi: Deduplicate efi_open_volume() (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Merge 32-bit and 64-bit UGA draw protocol setup routines (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Align efi_uga_draw_protocol typedef names to convention (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Merge the setup_efi_pci32() and setup_efi_pci64() routines (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Prevent reentrant firmware calls in mixed mode (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Add debug code to check entry/exit CR3 (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Add PTI CR3 switches to NMI handler code (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Add PTI cr3 switch to non-NMI entry/exit points (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Handle Entry from Kernel-Mode on Entry-Stack (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Introduce SAVE_ALL_NMI and RESTORE_ALL_NMI (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Leave the kernel via trampoline stack (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Enter the kernel via trampoline stack (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Load task stack from x86_tss.sp1 in SYSENTER handler (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Split off return-to-kernel path (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Unshare NMI return path (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Put ESPFIX code into a macro (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Rename TSS_sysenter_sp0 to TSS_entry2task_stack (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Clean up the eboot code (Chris von Recklinghausen) [1754739] - [x86] x86/asm/64: Use 32-bit XOR to zero registers (Chris von Recklinghausen) [1754739] - [x86] Revert "x86/platform/uv: Mark uv_bios_call() and uv_bios_call_irqsave() static" (Frank Ramsay) [1833121] - [x86] Revert "x86/platform/uv: Unexport sn_coherency_id" (Frank Ramsay) [1833121] - [x86] Revert "x86/platform/uv: Unexport symbols only used by x2apic_uv_x.c" (Frank Ramsay) [1833121] - [x86] x86/apic: Cleanup the include maze (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Fix missing checks of kcalloc() return values (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Replace kmalloc() and memset() with kalloc() calls (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove the unused _uv_cpu_blade_processor_id() macro (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Unexport uv_apicid_hibits (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove _uv_hub_info_check() (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Simplify uv_send_IPI_one() (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Mark uv_min_hub_revision_id static (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Mark is_uv_hubless() static (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove the UV*_HUB_IS_SUPPORTED macros (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Unexport symbols only used by x2apic_uv_x.c (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Unexport sn_coherency_id (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove the uv_partition_coherence_id() macro (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Mark uv_bios_call() and uv_bios_call_irqsave() static (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Mark memblock related init code and data correctly (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Remove unnecessary #ifdef CONFIG_EFI (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Remove uv_bios_call_reentrant() (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Use efi_enabled() instead of test_bit() (Frank Ramsay) [1833121] - [x86] x86/apic/uv: Remove code for unused distributed GRU mode (Frank Ramsay) [1833121]- [thermal] thermal/x86_pkg_temp: Make pkg_temp_lock a raw_spinlock_t (Prarit Bhargava) [1890657] - [net] sched: act_tunnel_key: fix OOB write in case of IPv6 ERSPAN tunnels (Davide Caratti) [1889601] - [netdrv] ibmveth: Identify ingress large send packets (Gustavo Duarte) [1887038] - [netdrv] ibmveth: Switch order of ibmveth_helper calls (Gustavo Duarte) [1887038] - [sound] ALSA: redhat: add drivers/soundwire tree and regmap-sdw to the redhat/filter-modules.sh (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC - enable AMD Renoir support for DMIC (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC - enable the Intel's SoundWire driver (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: fix incorrect locking in hdmi_pcm_close (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix jack detection with Realtek codecs when in D3 (Jaroslav Kysela) [1869536] - [sound] ALSA: fireworks: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/i915 - fix list corruption with concurrent probes (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - The front Mic on a HP machine doesn't work (Jaroslav Kysela) [1869536] - [sound] ALSA: hdspm: Fix typo arbitary (Jaroslav Kysela) [1869536] - [sound] ALSA: bebob: potential info leak in hwdep_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS D700SA with ALC887 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: endpoint.c: fix repeated word 'there' (Jaroslav Kysela) [1869536] - [sound] ALSA: portman2x4: fix repeated word 'if' (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add mute Led support for HP Elitebook 845 G7 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: handle all SOF_IPC_EXT types (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: broadwell: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add version_id to avoid rt714/rt715 confusion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt715-sdw: probe with RT714 Device ID (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt1316: add missing component string (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt1308: add extra check on init (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qdsp6: add ifdef CONFIG_OF around of_device_id (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Enable MI2S BCLK and LRCLK together (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt700: add codec prefix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Remove unused variables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Remove ti, asi-format code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Set regcache when shutting down and waking device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Add shutdown capability via a GPIO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Remove duplicate code for I/V sense (Jaroslav Kysela) [1869536] - [sound] ALSA: ASOC: Intel: sof_sdw: restore playback functionality with max98373 amps (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: add support for new SoundWire hardware layout on TGL (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: remove hard-coded codec_conf table (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: remove ternary operator (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra_max98090: use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: hda_dsp_common: use static function in conditional block (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: mx27vis-aic32x4: use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: imx-mc13783: use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Pass full name to snd_ctl_notify (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt715: Add power-up delay to fix dmic pop sound issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Enable the power of "MICBIAS" and "Vref2" for the DMIC clock (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: allow runtime pm at end of probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: add codec name prefix to ACPI machine description (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: sysfs: add slave status and device number before probe (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: add enumerated Slave device to device list (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: remove an unnecessary NULL check (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: add data port test fail interrupt (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: enable test modes (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: enable Data Port test modes (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - set mic to auto detect on a HP AIO machine (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - Don't register a cb func if it is registered already (Jaroslav Kysela) [1869536] - [sound] ALSA: HDA: Early Forbid of runtime PM (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - remove kerneldoc for internal hdac_i915 function (Jaroslav Kysela) [1869536] - [sound] ALSA: ctl: Workaround for lockdep warning wrt card->ctl_files_rwlock (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Disable autosuspend for Lenovo ThinkStation P620 (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: Remove uninitialized_var() usage (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: arm: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: add dpcm_create/remove_debugfs_state() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: move CONFIG_DEBUG_FS functions to top side (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: magician: convert to use i2c_new_client_device() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: Enable AC'97 bus support for PXA machines (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: Select regmap from AC'97 machines (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support TDM out and 8ch I2S out (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: kirkwood: fix external clock probe defer (Jaroslav Kysela) [1869536] - [sound] ALSA: ppc: keywest: convert to use i2c_new_client_device() (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: Use sizeof_field() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: hdac_hdmi: Set ops to NULL on remove (Jaroslav Kysela) [1869536] - [sound] ALSA: ppc: More constifications (Jaroslav Kysela) [1869536] - [sound] ALSA: i2c: Constify snd_kcontrol_new items (Jaroslav Kysela) [1869536] - [sound] ALSA: ppc: Constify snd_kcontrol_new items (Jaroslav Kysela) [1869536] - [sound] ALSA: vxpocket: Support PCM sync_stop (Jaroslav Kysela) [1869536] - [sound] ALSA: mips: Constify snd_device_ops definitions (Jaroslav Kysela) [1869536] - [sound] ALSA: i2c: Constify snd_device_ops definitions (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: oss: Fix running status after receiving sysex (Jaroslav Kysela) [1869536] - [sound] ALSA: arm: More constification (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: add "WITH Linux-syscall-note" to SPDX tag of uapi headers (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: replace '---help---' in Kconfig files with 'help' (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix SPDX license for header file (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac: make SOF HDA codec driver probe deterministic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Refactor sample rate function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix the spacing and new lines (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Convert bit mask to GENMASK in header (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix unbalanced calls to pm_runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add the TAS2110 class-D amplifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: add size checks for ext_bytes control .put() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: fix size checks for volatile ext_bytes control .get() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: fix size checks for ext_bytes control .get() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tlv320aic32x4: Enable fast charge (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tlv320aic32x4: Ensure a minimum delay before clock stabilization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt711: wait for the delayed work to finish when the system suspends (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix error handling with update_bits (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix required DT properties in the code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Add missing bias level power states (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix calling reset in probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt700: wait for the delayed work to finish when the system suspends (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add the TAS2564 compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: add missing MODULE_LICENSE() for imx-common (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: pm: Fix prepare callback behavior for OF usecase (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cs42l51: add additional ADC volume controls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix the process being scheduled on core0 always (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - fix CONTROLLER_IN_GPU macro name (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - handle multiple i915 device instances (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - controller is in GPU on the DG1 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - add Intel DG1 PCI and HDMI ids (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO" (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add delay quirk for H570e USB headsets (Jaroslav Kysela) [1869536] - [sound] ALSA: compat_ioctl: avoid compat_alloc_user_space (Jaroslav Kysela) [1869536] - [sound] ALSA: asihpi: fix spellint typo in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable front panel headset LED on Lenovo ThinkStation P520 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Couldn't detect Mic if booting with headset plugged (Jaroslav Kysela) [1869536] - [sound] ALSA: asihpi: fix iounmap in error handler (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use {u32|u16}p_replace_bits (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: use u32p_replace_bits (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: get max rows and cols info from compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: add support to block packing mode (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: clear BIT FIELDs before value set (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: Add generic bandwidth allocation algorithm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ak4458: Add DSD support for ak4458 and ak4497 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-sc7180: Add MODULE_DEVICE_TABLE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Add support for tgl-h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv320aic32x4: do software reset before clock registration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv320aic32x4: fix missing aic32x4_disable_regulators() in error path (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Set MCLK input or output direction (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Add fsl_sai_check_version function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Add new added registers and new bit definition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6afe-clocks: add q6afe clock controller (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: reduce verbosity of boot error logs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: fix range checks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: remove several superfluous type-casts (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: (cosmetic) remove redundant "ret" variable uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: update test for pm_runtime_get_sync() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: debug: update test for pm_runtime_get_sync() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add `src_hash` to `sof_ipc_fw_version` structure (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Add debug support for imx platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: disable size checks for bytes_ext controls if needed (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_audmix: make clock and output src write only (Jaroslav Kysela) [1869536] - [sound] ALSA: remove calls to usb_pipe_type_check for control endpoints (Jaroslav Kysela) [1869536] - [sound] ALSA: hiface: move to use usb_control_msg_send() (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: move to use usb_control_msg_send() and usb_control_msg_recv() (Jaroslav Kysela) [1869536] - [sound] ALSA: 6fire: move to use usb_control_msg_send() and usb_control_msg_recv() (Jaroslav Kysela) [1869536] - [sound] ALSA: usx2y: move to use usb_control_msg_send() (Jaroslav Kysela) [1869536] - [sound] ALSA: USB: add usb_control_msg_send() and usb_control_msg_recv() (Jaroslav Kysela) [1869536] - [sound] ALSA: USB: move snd_usb_pipe_sanity_check into the USB core (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Fix the failure to flush DAC data before playback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Fix DC calibration on bypass boost mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: stm32: sai: add pm_runtime support (Jaroslav Kysela) [1869536] - [sound] ALSA: rockchip_i2s: fix a possible divide-by-zero bug in rockchip_i2s_hw_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Use DMI oem string search for tgl_max98373_rt5682 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda-loader: s/master/primary (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: remove the HDA_DSP_CORE_MASK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: modify core_power_up/down op (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: rename cores_mask to host_managed_cores_mask (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: j721e-evm: Add support for j7200-cpb audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support machine driver with rt1015p (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe-dai: add support to Codec DMA ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add codec lpass clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: update q6afe_set_param to support global clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add lpass hw voting support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add global q6afe waitqueue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: prepare afe_apr_send_pkt to take response opcode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6routing: add support to Codec DMA ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add support to Codec DMA ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qdsp6: dt-bindings: Add q6afe display_port dt binding (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015p: add codec driver (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: add parity error injection through debugfs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: export broadcast read/write capability for tests (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: realtek-soundwire: ignore initial PARITY errors (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: use quirk to filter out invalid parity errors (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: slave: add first_interrupt_done status (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: filter-out unwanted interrupt reports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC/soundwire: bus: use property to set interrupt masks (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Remove unused inline function snd_mask_sizeof (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: Remove unused function hpi_stream_group_get_map() (Jaroslav Kysela) [1869536] - [sound] ALSA: mixart: Correct comment wrt obsoleted tasklet usage (Jaroslav Kysela) [1869536] - [sound] ALSA: aloop: Replace tasklet with work (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mchp-spdiftx: add driver for S/PDIF TX Controller (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: fix SLIBMUS/SLIMBUS typo (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: fix race condition between suspend and Slave device alerts (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: imx-es8328: add missing put_device() call in imx_es8328_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Parse auxiliary devices from device tree (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mt6359: fix failed to parse DT properties (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Implement snd_sof_bytes_ext_volatile_get kcontrol IO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: Add support for WO and RO TLV byte kcontrols (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Kconfig: Allow the j721e machine driver to be used on K3 platform (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KeemBay: Fix warning potential ! vs ~ typo (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: add v1.5.1 compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: dt-bindings: soundwire: add bindings for Qcom controller (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: add support for mmio soundwire master devices (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: avoid dependency on CONFIG_SLIMBUS (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: fix abh/ahb typo (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: make process type optional (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_mux (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_process (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_tone (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_asrc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_src (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_host (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_volume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_dai (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: add helper for setting up IPC component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: use the sof_ipc_comp reserved bytes for extended data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: parse comp_ext_tokens for all widgets (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: create component extended tokens (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add comp_ext to struct snd_sof_widget (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: tokens: add token for component UUID (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Manage module clock via DAPM (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Attach the bus clock to the regmap (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Sort masks in a consistent order (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix field bit number indentation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix ADC_DIG_CTRL field name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix AIF1_MXR_SRC field names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix AIF1_ADCDAT_CTRL field names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix AIF1 MODCLK widget name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Remove extraneous widgets (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add dailink .prepare and .hw_free callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add dailink .trigger callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: clarify return value for get_sdw_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: remove stream handling from .prepare and .hw_free (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: remove .trigger operation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix NULL/ERR_PTR confusion (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: fix NULL/IS_ERR confusion (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: remove SDW_REG_SHIFT() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom : use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: slave: use SDW_DISCO_LINK_ID() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: use FIELD_GET() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: define and use addr bit masks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix core enable sequence (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: support topology components on secondary cores (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add a "core" parameter to widget loading functions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Set SAI Channel Mode to Output Mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Support multiple data channel enable bits (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: don't manage link power individually (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: pass link_mask information to each master (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add error log for clock-stop invalid configs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: enable hw_sync as needed by hardware (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add multi-link hw_synchronization information (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: update multi-link definition with hw sync details (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add missing support for all clock stop modes (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add multi-link support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: ignore software command retries (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: disable shim wake on suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix port_readydynamic allocation in mipi_disco (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add definition for maximum number of ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: soundwire: remove port_readyusage from codecs (Jaroslav Kysela) [1869536] - [sound] ALSA: vx: vx_pcm: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: vx: vx_pcm: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: vx: vx_core: clarify operator precedence (Jaroslav Kysela) [1869536] - [sound] ALSA: rawmidi: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: atmel: ac97: clarify operator precedence (Jaroslav Kysela) [1869536] - [sound] ALSA: ac97: (cosmetic) align argument names (Jaroslav Kysela) [1869536] - [sound] ALSA: usb: scarless_gen2: fix endianness issue (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: auto_parser: remove shadowed variable declaration (Jaroslav Kysela) [1869536] - [sound] ALSA: aoa: i2sbus: use DECLARE_COMPLETION_ONSTACK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: core: init: use DECLARE_COMPLETION_ONSTACK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: compress_offload: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: compress_offload: dereference after checking for NULL pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: core: timer: clarify operator precedence (Jaroslav Kysela) [1869536] - [sound] ALSA: core: timer: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: core: pcm_memory: dereference pointer after NULL checks (Jaroslav Kysela) [1869536] - [sound] ALSA: core: pcm: simplify locking for timers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Prefer async probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: remove artificial component and DAI name constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: shutdown codec when changing filter type (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: AMD: Clean kernel log from deferred probe error messages (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Simplify error handling during FW boot (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Add sof_tgl_ops for TGL platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Define FW boot sequence with ICCMAX (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: define macro for code loader stream format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: modify the signature of get_stream_with_tag() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Add helper function to program ICCMAX stream (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Remove unused parameters in cl_dsp_init() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix VS_LTRC register name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: sof-of-dev: Add .arch_ops field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Replace sdev->private with sdev->pdata->hw_pdata (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: add extended rom status dump to error log (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix the ipc_size calculation for process component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: intel: hda: support also devices with 1 and 3 dmics (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: fix a runtime pm issue in SOF when HDMI codec doesn't work (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: report error only for the last ROM init iteration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: Add debug box region (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: Parse debug ABI version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: fix memory leak in get_ext_windows (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: IPC: make sof_ipc_window monosized (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix intel_suspend/resume defined but not used warning (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add AE-7 exit commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add AE-7 custom controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add AE-7 microphone selection commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add output selection for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add DSP setup functions for AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add init data for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add pre-init function for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add ca0132_mmio_init data for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Set AE-7 bools and select mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add SoundBlaster AE-7 pincfg (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add new quirk ID for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Fix Recon3D Center/LFE output (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add quirk output selection structures (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Clean up ca0132_alt_out_select (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Remove surround output selection (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add bass redirection controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add full-range speaker selection controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add surround channel config control (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add speaker tuning initialization commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Cleanup ca0132_mmio_init function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hdmi: tidy up a memset() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: use consistent HDAudio spelling in comments/docs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add dev_dbg log when driver is not selected (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: acpi: add dev_dbg() log for probe completion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: IPC: reduce verbosity of IPC pointer updates (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: reduce the log level for unhandled widgets (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: remove unnecessary memory alloc for sdev->private (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: (cosmetic) use the "bool" type where it makes sense (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: (cosmetic) remove redundant variable initialisations (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Add -EPROBE_DEFER check for regmap init (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ak5558: Add regulator support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: clean-up inclusion of header files (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_sdw: add rt711 rt1316 rt714 SDCA codec support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add topology filename override based on dmi data match (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_rt5682: override quirk data for tgl_max98373_rt5682 (Jaroslav Kysela) [1869536] - [sound] ALSA: SoC: Intel: sof_sdw: Add support for product Ripto (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: rename id as part_id (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: check SoundWire version when matching codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373-sdw: add missing test on resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: add support for SDCA boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: mirror CML and TGL configurations (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof-soundwire: add support for rt5682 on link2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: cnl: add support for rt5682 on SoundWire link2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: modify SoundWire version id in acpi match table (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Correct wrongly matching entries with audio class (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Fix I/O voltage range configuration during probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_sdw: add .exit callback function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: add support for TLV320AIC32x4 codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add build support for SoundWire (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: add missing out of memory check on drvdata->clks allocation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt6359: add codec driver (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Properly match with audio interface class (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Simplify quirk entries with a macro (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Move device rename and profile quirks to an internal table (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Hook up component probe function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: s3c2412-i2s: avoid hardcoded S3C2410_PA_IIS (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: rx1950: turn into platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: neo1973: turn into platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*-sdw: use SDW_SLAVE_ENTRY_EXT (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Update naming in error handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Get "extal" clock rate by clk_get_rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: add a dedicated menuconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Export DAC/ADC monomix switches (Jaroslav Kysela) [1869536] - [sound] ALSA: remove duplicate "the the" phrase in Kconfig text (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm0010: use DECLARE_COMPLETION_ONSTACK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: simple-card: Use snd_soc_of_parse_aux_devs() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Add common helper to parse aux devs from device tree (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ak4458: Add regulator support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hdmi: support 'ELD' mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: sound/soc/intel: Fix spelling mistake "cant" --> "can't" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: various vendors: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: skl-topology: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: skl-topology: remove redundant assignments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: sst-utils: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: cldma: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: skl-nhlt: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell-ipc: remove redundant assignments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: common: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Baytrail: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: (cosmetic) align parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst_pvt: simplify return handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst_loader: remove always-true condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: remove useless assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: platform-pcm: fix redundant return (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst_pvt: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst: remove useless NULL assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: platform-pcm: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: compress: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst-atom-controls: remove redundant assignments (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: refine runtime pm for SDW_INTEL_CLK_STOP_BUS_RESET (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: support clock_stop mode without quirks (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: handle power rail dependencies for clock stop mode (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add CLK_STOP_NOT_ALLOWED support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add CLK_STOP_BUS_RESET support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add CLK_STOP_TEARDOWN for pm_runtime suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: pm_runtime idle scheduling (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: reinitialize IP+DSP in .prepare(), but only when resuming (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: call helper to reset Slave states on resume (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix race condition on system resume (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: reset pm_runtime status during system resume (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add pm_runtime support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Fix clock handling around codec level probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Move soft reset handling to codec level probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Move required devm_* allocations to device level code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: add support to copy callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: add gapless support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: prepare set params to accept profile change (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: add next track metadata support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add support to gapless flag in q6asm open (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add support to remove intial and trailing silence (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add length to write command token (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: use flags directly from q6asm-dai (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: make commands specific to streams (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: rename misleading session id variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KMB: Enable TDM audio capture (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv3204: Moving GPIO reset and add ADC reset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv3204: Increased maximum supported channels (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv3204: Enable 24 bit audio support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Enable DAPM for earpiece switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Enable DAPM for line out switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Make line out routes stereo (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Enable DAPM for headphone switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Make headphone routes stereo (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Group and sort mixer routes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Gate the amplifier clock during suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Fix duplicate use of ADC enable bits (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcht_cx2072x: simplify return handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: rename shadowed variable for all broadwell boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda-codec: move variable used conditionally (Jaroslav Kysela) [1869536] - [sound] ALSA: ASOC: SOF: Intel: hda-codec: move unused label to correct position (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Add a quirk for LRCK inversion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Add missing mixer routes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix DAPM to match the hardware topology (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Replace synchronous check with fsl_sai_dir_is_synced (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Drop TMR/RMR settings for synchronous mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Refine enable/disable TE/RE sequence in trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-platform: Use platform_get_irq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Use platform_get_resource (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-sc7180: Add platform driver for lpass audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: fix concurrency issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass: Use regmap_field for i2sctl and dmactl registers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-platform: fix memory leak (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-platform: Replace card->dev with component->dev (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Move ahbix clk to platform specific function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Add common array to initialize soc based core clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Use dev_dbg() in rt5682_clk_check() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: Add basic power management support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: master: enable pm runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add argument to function definition (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add module_sdw_driver helper macro (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: sdw.h: fix indentation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: sdw.h: fix PRBS/Static_1 swapped definitions (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: virmidi: Fix running status after receiving sysex (Jaroslav Kysela) [1869536] - [sound] ALSA: bt87x: use pci_status_get_and_clear_errors (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - The Mic on a RedmiBook doesn't work (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Do not cleanup uninitialized dais on soc_pcm_open failure (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fixup headset for ASUS GX502 laptop (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Improved routing for Thinkpad X1 7th/8th Gen (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix double free of dangling pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN Converter9 2-in-1 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: use consistent HDAudio spelling in comments/docs (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add dev_dbg log when driver is not selected (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: hdmi - add Rocketlake support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: Fix power transition refactor (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: oss: Remove superfluous WARN_ON() for mulaw sanity check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Ensure the device is resumed in wm89xx_mic_detect functions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Skip setting of the WM8994_MICBIAS register for WM1811 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-toddr: fix channel order on g12 platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: add snd_soc_find_dai_with_mutex() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: always check pin power status in i915 pin fixup (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Fix refcount imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt700: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt715: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt711: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1308-sdw: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98373: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion NT950XCJ-X716A (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add basic capture support for Pioneer DJ DJM-250MK2 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for UR22C (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: fixup ams_delta_mute() function name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pcm3168a: ignore 0 Hz settings (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda: Add support for Loongson 7A1000 controller" (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: Program WAKEEN register for Tegra (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Fix 2 channel swapping for Tegra (Jaroslav Kysela) [1869536] - [sound] ALSA: ca0106: fix error code handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: tgl_max98373: fix a runtime pm issue in multi-thread case (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-digi00x: exclude Avid Adrenaline from detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ALSA; firewire-tascam: exclude Tascam FE-8 from detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Set card->owner to avoid warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: atom: Add period size constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: avoid reset of sdo_limit (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_generic: Fix NULLptr dereference in autosuspend delay (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: fix typo in comment on INTSTAT registers (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: ignore broken processing/extension unit (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: Fix memleak in sst_media_open (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Avoid attempts to read unreadable registers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: msm8916-wcd-analog: fix register Interrupt offset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Prevent access to invalid VU register bits on WM1811 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add model alc298-samsung-headphone (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Update documentation comment for MS2109 quirk (Jaroslav Kysela) [1869536] - [sound] ALSA: isa: fix spelling mistakes in the comments (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add capture support for Saffire 6 (USB 1.1) (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Galaxy Flex Book (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Fix potential Oops in snd_echo_resume() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Use force connectivity quirk on another HP desktop (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix unused variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6routing: add dummy register read/write function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6afe-dai: mark all widgets registers as SND_SOC_NOPM (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Make soc_component_read() returning an error code again (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - reverse the setting value in the micmute_led_set (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaduio: Drop superfluous volatile modifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Replacing component->name with codec_dai->name (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for Pioneer DDJ-RB (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: work around streaming quirk for MacroSilicon MS2109 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - fix the micmute led status for Lenovo ThinkCentre AIO (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: fix overeager device match for MacroSilicon MS2109 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Fix pin default on Intel NUC 8 Rugged (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Creative USB X-Fi Pro SB1095 volume knob support (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: fix spelling mistake "buss" -> "bus" (Jaroslav Kysela) [1869536] - [sound] ALSA: pci: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: isa: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: Add 100us dma stop delay (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add dma stop delay variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hda/tegra: Set buffer alignment to 128 bytes (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: oss: Serialize ioctls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Add quirk to force connectivity (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add startech usb audio dock name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: Fix unused variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_i2s: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_dmic: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_ahub: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_admaif: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra186_dspk: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add support for Lenovo ThinkStation P620 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: renoir: restore two more registers during resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Do not remove ADDITIONAL_CONTROL_4 from readable register list (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Remove fsl_asoc_card_set_bias_level function (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda: call runtime_allow() for all hda controllers" (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Fix AE-5 microphone selection commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add new quirk ID for Recon3D (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Fix ZxR Headphone gain control get value (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add alc269/alc662 pin-tables for Loongson-3 laptops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Two step component registration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Simplify snd_soc_component_initialize declaration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Relocate and expose snd_soc_component_initialize (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sh: Replace 'select' DMADEVICES 'with depends on' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Fix value of FSL_SAI_CR1_RFW_MASK (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: use less strict tests for dailink capabilities (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rk3399_gru_sound: Add DAPM pins, kcontrols for jack detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Do not access WM8962_GPIO_BASE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: use resource_size (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: drop unnecessary list_empty (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Added hw_params support for ALC1015 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Passing card structure based on codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Renaming snd-soc-card structure and fields (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: Add sound support for Midas boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KMB: Rework disable channel function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KMB: Add 8kHz audio support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: Fix regression causing sysfs entries to disappear (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-tdm-formatters: fix sclk inversion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-tdmin: fix g12a skew (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-tdm-interface: fix link fmt setup (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fixed HP right speaker no sound (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix NULL pointer dereference during suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bcm2835: Silence clk_get() error on -EPROBE_DEFER (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Update shutdown GPIO property (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: disable traces when switching to S0Ix D0I3 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: fix the suspend procedure to support s0ix entry (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Fix keep_power assignment for non-component devices (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Workaround for spurious wakeups on some Intel platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: endpoint : remove needless check before usb_free_coherent() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: AMD: Restore PME_EN state at Power On (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/boards: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Fix add a "ultra_low_power" function for intel reference board (alc256) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dapm: don't call pm_runtime_* on card device (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: typo_fix: enable headset mic of ASUS ROG Zephyrus G14(GA401) series with ALC289 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: enable headset mic of ASUS ROG Zephyrus G15(GA502) series with ALC289 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: update dsm param bin max size (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Update dsm init sequence and condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: don't report of_xlate_dai_name failures (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Avoid printing errors for -EPROBE_DEFER (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: apq8016_sbc: Use qcom_snd_parse_of() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Parse properties with "qcom, " prefix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Support parsing links without DPCM (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6afe: Remove unused q6afe_is_rx_port() function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Use snd_soc_dai_link_set_capabilities() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Use devm for resource management (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Fix dac event dapm mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Support configuring dai fmt from DT (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_esai: add IRQF_SHARED for devm_request_irq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Fix build error due to 64-by-32 division (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: fix SND_SOC_J721E_EVM warnings & errors (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: omap: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Support new metadata block ID's (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mxs: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: xtensa: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: kirkwood: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sprd: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: generic: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bcm: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: au1x: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dwc: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cirrus: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sh: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: stm: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sunxi: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ux500: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-xxx: add asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: Fix kabylake_ssp_fixup function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: fix deadlock after PCM open error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: fix memleak on module unload (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: call patch_ops.free() on probe error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: support machine driver with max98357b (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: support left justified format for I2S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/skl/hda - fix probe regression on systems without i915 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: pcm: Update rate/channels for SAI/ESAI DAIs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Update SAI config bclk/fsync rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8: Add SAI dai driver for i.MX/i.MX8X (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8m: Fix SAI DAI driver for i.MX8M (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8: Fix ESAI DAI driver name for i.MX8/iMX8X (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Use ARRAY_SIZE instead of hardcoded value (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: define INFO_ flags in dsp_ops for imx8 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for SSL2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based ADMAIF driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix reset gpio property name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98357a: move control of SD_MODE back to DAI ops (Jaroslav Kysela) [1869536] - [sound] ALSA: Soundwire: intel_init: save Slave(s) _ADR info in sdw_intel_ctx (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add wake interrupt support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel/cadence: merge Soundwire interrupt handlers/threads (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: add implementation of sdw_intel_enable_irq() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: introduce helper for link synchronization (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: introduce a helper to arm link synchronization (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: revisit SHIM programming sequences (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: report slave_ids for each link to SOF driver (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add clock stop quirks (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add mutex for shared SHIM register access (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add prototype for WAKEEN interrupt processing (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add link_list to handle interrupts with a single thread (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: update headers for interrupts (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: reuse code for wait loops to set/clear bits (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: board: sof_rt5682: Update rt1015 pll input clk freq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: avoid crash if invalid DSP topology loaded (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add support for systems without i915 audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remove properties in card remove (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remove hard-coded codec name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai.h: drop a duplicated word (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd9335.h: fix duplicated word (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra20_das.h: delete duplicated words (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Avoid the use of one-element array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra186 based DSPK driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based AHUB driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based I2S driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based DMIC driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add support for CIF programming (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: common: change match table ehl-rt5660 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: remove .digital_mute (Jaroslav Kysela) [1869536] - [sound] ALSA: Replace the word "slave" in vmaster API (Jaroslav Kysela) [1869536] - [sound] ALSA: asihpi: delete duplicated word (Jaroslav Kysela) [1869536] - [sound] ALSA: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Fixed ALC298 sound bug by adding quirk for Samsung Notebook Pen S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: optimize the power consumption (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai.h: don't use discriminatory terms for comment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: qdsp6: Use IS_ERR() instead of IS_ERR_OR_NULL() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: disable MICBIAS and Vref2 widget in default (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: qdsp6: Use the defined variable to clean code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: snd_soc_dai_digital_mute() for both CPU/Codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: fixes the missed kfree() for axg_card_add_tdm_loopback (Jaroslav Kysela) [1869536] - [sound] ALSA: info: Drop WARN_ON() from buffer NULL sanity check (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Use kmemdup in podhd_set_monitor_level() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add support for Loongson 7A1000 controller (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: pcm: Use SG-buffer only when direct DMA is available" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: Add missed return for calling soc_component_ret (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl-asoc-card: Trivial: Fix misspelling of 'exists' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Support Headphone and Microphone Jack detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: simple-card-utils: Support configure pin_name for asoc_simple_init_jack (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ak*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: es*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: alc*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: pcm*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ssm*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tas*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tlv*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: spear: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdmi-codec: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: drm/mediatek: exit earlier if failed to register audio driver (Jaroslav Kysela) [1869536] - [sound] ALSA: drm/i2c/tda998x: Make tda998x_audio_digital_mute static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai.c: add .no_capture_mute support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdmi-codec: return -ENOTSUPP for digital_mute (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix snd_hda_codec_cleanup() documentation (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: export snd_hda_codec_cleanup_for_unbind() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Report the button event in the headset type only (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add missed put_device() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - fixup for yet another Intel reference board (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable Speaker for ASUS UX563 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable Speaker for ASUS UX533 and UX534 (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix the kernel-doc comment (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Replace blacklist word (Jaroslav Kysela) [1869536] - [sound] ALSA: via82xx: Replace the words whitelist (Jaroslav Kysela) [1869536] - [sound] ALSA: nm256: Replace the words blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: intel8x0: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: es1968: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: ctxfi: Replace the word blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: bt87x: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: ac97: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: don't free dma_data in DAI shutdown (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: allocate/free dma_data in set_sdw_stream (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: remove stream allocation/free (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: add helper to startup/shutdown streams (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: implement get_sdw_stream() operations (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: Disable sync-write operation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ssi: don't use discriminatory terms for debug log (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: siu: don't use discriminatory terms for parameter (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsi: don't use discriminatory terms for comment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rsnd: don't use discriminatory terms for comment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rsnd: don't use discriminatory terms for function names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Enable Vref2 under using PLL2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: spdif: Handle clk by pm runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: re-enable IRQs on failure path (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: add hw monitor volume control for POD HD500 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of Acer TravelMate B311R-31 with ALC256 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: enable headset mic of ASUS ROG Zephyrus G14(G401) series with ALC289 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - change to suitable link model for ASUS platform (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix race against the error recovery URB submission (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: Improve dai-set-fmt comment in cht_codec_fixup() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support HDMI jack reporting (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: use hdmi-codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: use hdmi-codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Add kctl for configuring TX validity bit (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Clear the validity bit for TX (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Sync the pending work cancel at disconnection (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Perform sanity check for each URB creation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ak4458: Remove set but never checked variable 'ret' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tlv320aic26: Demote seemingly unintentional kerneldoc header (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt5659: Remove many unused const variables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt5631: fix spurious kernel-doc start and missing arguments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ux500: ux500_msp_i2s: Remove unused variables 'reg_val_DR' and 'reg_val_TSTDR' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: pxa-ssp: Demote seemingly unintentional kerneldoc header (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sunxi: sun4i-spdif: Fix misspelling of 'reg_dac_txdata' in kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sunxi: sun4i-i2s: add missing clock and format arguments in kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: qdsp6: q6asm: Provide documentation for 'codec_profile' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sti: uniperif: fix 'defined by not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel-pdmic: remove codec component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel-classd: remove codec component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98390: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: es8316: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: omap-mcbsp-st: Remove set, but unused variable 'w' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: jz4770: Remove defined but never used variable 'mic_boost_tlv' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da7219: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da7210: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: aio-core: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra20_das: remove always-true comparison (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: pcm: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: spdif: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sdw_max98373: add card_late_probe support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof-sdw: add MAX98373 I2C dependencies (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373: add SoundWire support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373: split I2C and common parts (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support machine driver with rt1015 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: extract codec and DAI names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: remove forward declaration of headset_init (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: sort header inclusions in alphabetical (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt286: fix unexpected interrupt happens (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8974: remove unsupported clock mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8974: fix Boost Mixer Aux Switch (Jaroslav Kysela) [1869536] - [sound] ALSA: xen: Remove superfluous fall through comments (Jaroslav Kysela) [1869536] - [sound] ALSA: atmel: Remove invalid "fall through" comments (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Address bugs in the interrupt handling (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Prevent some noise on unloading the module (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Prevent races in calls to set_audio_format() (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Race conditions around "opencount" (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Remove redundant check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: fixed kernel warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: support machine driver with rt1015 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: sort header inclusions in alphabetical (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qdsp6: use dev_err instead of pr_err (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add command opcode to timeout error report (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: core: fix null-ptr-deref bug during device removal (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: codecs: max98373: remove Idle_bias_on to let codec suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373: Removed superfluous volume control from chip default (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: add more logs when topology load fails (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: factor kfree(se) in error handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: use break on errors, not continue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: fix tlvs in error handling for widget_dmixer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: fix kernel oops on route addition error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: add min/max channels for SAI/ESAI on i.MX8/i.MX8M (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bdw-rt5677: fix non BE conversion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: set dai_link dpcm_ flags with a helper (Jaroslav Kysela) [1869536] - [sound] ALSA: usb/line6: remove 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: mpc8610_hpcd: Add missing of_node_put() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: add default clock handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACPI dependency check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-i2s: remove unused-but-set variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-pcm-dma: remove unused-but-set variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-i2s: fix 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-pcm-dma: fix 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: acp-rt5645: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: acp-da7219-max98357a: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Fix build error on m68k and others (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Remove only the registered component in devm functions (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Add Intel silent stream support (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/au88x0: remove "defined but not used" warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: vx_core: remove warning for empty loop body (Jaroslav Kysela) [1869536] - [sound] ALSA: pcmcia/pdaudiocf: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/via82xx: remove 'set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/fm801: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/es1938: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: xen: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/oxygen/xonar_wm87x6: remove always true condition (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/rme9652/hdspm: remove always true condition (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/korg1212: remove 'set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/emu10k1: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pci/emu10k1: remove "set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/ctxfi: fix kernel-doc warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/ctxfi/ctatc: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/aw2-saa7146: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/echoaudio: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: remove 'set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: isa/gus: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: isa/gus: remove -Wmissing-prototypes warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: compress: fix partial_drain completion state (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for RTX6001 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix SND_HDA_GENERIC kconfig & build (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for MacroSilicon MS2109 (Jaroslav Kysela) [1869536] - [sound] ALSA: core: pcm_iec958: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of Acer Veriton N4660G with ALC269VC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of Acer C20-820 with ALC269VC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable audio jacks of Acer vCopperbox with ALC269VC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix Lenovo Thinkpad X1 Carbon 7th quirk subdevice id (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: improve debug traces for stream lookups (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: fix failures at PCM open on Intel ICL and later (Jaroslav Kysela) [1869536] - [sound] ALSA: opl3: fix infoleak in opl3 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8400: remove unused variables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-ac97: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add logic to check dmic hardware runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: j721e-evm: Fix missing unlock on error in j721e_audio_hw_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_esai: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_asrc: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_spdif: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl-asoc-card: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_ssi: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_ssi_dbg: remove spurious kernel-doc comment start (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Rename dev_gpio to gpio1_is_irq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Remove struct rt5670_platform_data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: return -EINVAL on unrecognized speaker amplifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8994: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm9713: remove spurious kernel-doc comment start (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8960: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8986: fix missing kernel-doc arguments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs42l42: remove always-true comparisons (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs4270: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: sof-acpi-dev: fix 'defined but unused' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: atom: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: atom: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: support MAX98390 speaker amp (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Add an option to select internal ratio mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Enable interrupt in dma_open (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KeemBay: Fix header guard (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Refine regcache usage with pm runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Add custom machine driver for j721e EVM (CPB and IVI) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: davinci-mcasp: Specify stream_name for playback/capture (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: add format and rate constraints on rk3399 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Rectifying Unbalanced pm_runtime_enable! issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: cancel jack_detect_work if hs_jack is set to null even soundwire mode (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix some typos (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Replace s/frame/packet/ where appropriate (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix packet size calculation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: initialize bus clock base and scale registers (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add definitions for 1.2 spec (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: remove multiple blank lines (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: extend SDW_SLAVE_ENTRY (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus_type: convert open-coded while() to for() loop (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Fix dac- and adc- vol-tlv values being off by a factor of 10 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Add new gpio1_is_ext_spk_en quirk and enable it on the Lenovo Miix 2 10 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Correct RT5670_LDO_SEL_MASK (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: Change bus format to I2S 2 channel (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add voltage sense slot configuration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add right and left channel slot programming (Jaroslav Kysela) [1869536] - [sound] ALSA: asoc: Update supported rate and format for dummy dai (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Drop HAS_DMA dependency to fix link failure (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: Add MAX98373 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: Fix a typo in Kconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: common: add match table for TGL MAX98373 + RT5682 SoundWire driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: Intel: cml_rt1011_rt5682: explicitly access first codec (Jaroslav Kysela) [1869536] - [sound] ALSA: snd/soc: correct trivial kernel-doc inconsistency (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: Update TDM configuration in hw_params (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: cml_rt1011_rt5682: use for_each_card_prelinks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: cml_rt1011_rt5682: use statically define codec config (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: cml_rt1011_rt5682: reduce log level for printing quirk (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for jsl-max98360a-rt5682 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: Fix the comment for max_98373_components (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: add dai_trigger function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: byt*.c: remove cast in dev_info quirk log (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add quirk override with kernel parameter (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bxt_rt298: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cml_rt1011_rt5682: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: nocodec: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: add missing header inclusion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dapm: declare missing structure prototypes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: move definition of enum snd_soc_bias_level (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Fix format issue for extra space before a comma (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Update shutdown GPIO property (Jaroslav Kysela) [1869536] - [sound] ALSA: AsoC: amd: add missing snd- module prefix to the acp3x-rn driver kernel module (Jaroslav Kysela) [1869536] - [sound] ALSA: core: Warn on empty module (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - let hs_mic be picked ahead of hp_mic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Add WM8524 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: fix the pop noise while OMTP type headset plugin (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix OOB access of mixer element list (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for Samsung USBC Headset (AKG) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1011: fix KASAN out-of-bounds bug in find_next_bit() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: set playback and capture constraints (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix uninitialized scalar variable in fsl_easrc_set_ctx_format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: cml_rt1011_rt5682: disable jack in dailink .exit() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_rt5682: move disabling jack to dai link's exit() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: kbl-rt5660: use .exit() dailink callback to release gpiod (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bdw-rt5677: fix module load/unload issues (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: introduce exit() callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_mqs: Fix unchecked return value for clk_prepare_enable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_mqs: Don't check clock is NULL before calling clk API (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud Flight S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Add controls for calibration and diagnostic FW (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: remove snd_soc_component_read32() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ak*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: alc*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: msm*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tlv*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wcd*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: use io_mutex correctly (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: merge snd_soc_component_read() and snd_soc_component_read32() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: Constify static structs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: transition to 3 steps initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: pass link information as platform data (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: use devm_ allocation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: remove useless test (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: clarify drvdata and remove more indirections (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: cleanups for indirections/logs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix memory leak with devm_kasprintf (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: clock_stop: don't deal with UNATTACHED Slave devices (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: Replace 'objs' by 'y' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Add pm runtime function (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Enable sync-write operation as default for all controllers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: Fix a reference count leak (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Removing unnecessary instance initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: closing specific instance (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Let LED cdev handling suspend/resume (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Unify LED helper code (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/sigmatel: Use the new vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/conexant: Use the new vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Use the new vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Add vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Drop the old mic-mute LED hook (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Drop unused snd_hda_gen_fixup_micmute_led() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/sigmatel: Convert to cdev-variant of mic-mute LED controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/conexant: Convert to cdev-variant of mic-mute LED controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Convert to cdev-variant of mic-mute LED controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Add a helper for mic-mute LED with LED classdev (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Always call led-trigger for mic mute LED (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Intel: add missing PCI IDs for ICL-H, TGL-H and EKL (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: broadwell: simplify card names for SOF uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht*: simplify card names for SOF uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: byt*: simplify card names for SOF uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: fix memleak with regmap not freed on remove (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add PCI IDs for ICL-H and TGL-H (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add PCI ID for CometLake-S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: SOF: merge COMETLAKE_LP and COMETLAKE_H (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: imply acodec glue on axg sound card (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add mute LED and micmute LED support for HP systems (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Add support for imx6sx platform (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Add MQS support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Fix reference count leaks (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix potential use-after-free of streams (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add quirk for MSI GE63 laptop (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Flush DAC data before playback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_ssi: Fix bclk calculation for mono channel (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: AMD: Use mixer control to switch between DMICs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Add Amp init common setting func (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: DAI wclk supports 44100 Hz output (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Let PLL2 support the freq conversion for 44100Hz sample rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rl6231: Add new supports on rl6231 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-parallel-out: Fix a reference count leak (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img: Fix a reference count leak in img_i2s_in_set_fmt (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8960: Support headphone jack detection function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: Add driver for Aries boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm0010: Use kmemdup rather than duplicating its implementation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Add makefiles and kconfig changes for KeemBay (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Add KeemBay platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt6358: support DMIC one-wire mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix "Function parameter not described" warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix -Wunused-but-set-variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix -Wmissing-prototypes warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: tidyup Copyright (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: merge soc_pcm_trigger_start/stop() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: merge soc-io.c into soc-component.c (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_init() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_hw_free() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_hw_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_prepare() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add soc_component_err() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_initialize() to soc-component.c (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_xxx_regmap() to soc-component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add soc_component_pin() and share code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm/compress: reduce verbosity on mapping ok messages (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: improve error messages in soc_pcm_new() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: reduce verbosity of BE override message (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Use SG-buffer only when direct DMA is available (Jaroslav Kysela) [1869536] - [sound] ALSA: memalloc: Make SG-buffer helper usable for continuous buffer, too (Jaroslav Kysela) [1869536] - [sound] ALSA: memalloc: Initialize all fields of snd_dma_buffer properly (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Use dma_mmap_coherent() on x86, too (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98357a: add compatible string for MAX98360A (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Clear RIRB status before reading WP (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Update rt1015 default register value according to spec modification (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: set correct directions for dailinks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: q6afe: add support to get port direction (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: fix checks for multi-cpu FE dailinks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Let dai clks be registered whether mclk exists or not (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: wait for notification when changing clock configuration for protocol v3 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-topology: use devm_snd_soc_register_dai() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-devres: add devm_snd_soc_register_dai() (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Set 48 kHz rate for Rodecaster (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for Denon DCD-1500RE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc_dma: Fix data copying speed issue with EDMA (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc_dma: Reuse the dma channel if available in Back-End (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dmaengine_pcm: export soc_component_to_pcm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: export snd_soc_lookup_component_nolocked (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for SSL2+ (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add NVIDIA codec IDs 9a & 9d through a0 to patch table (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: handle EOS correctly (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Update regmap readable reg and volatile (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5645: Add platform-data for Asus T101HA (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for Toshiba Encore WT10-A tablet (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: nocodec: conditionally set dpcm_capture/dpcm_playback flags (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: replace capture_only by dpcm_capture (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: only convert non DPCM link to DPCM link (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: dpcm: fix playback/capture checks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: dpcm: Only allow playback/capture if supported (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: add missing free_irq() in error path (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: disallow linking stream to itself (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Manage auto-pm of all bundled interfaces (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - add a pintbl quirk for several Lenovo machines (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: fix snd_pcm_link() lockdep splat (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Use the new macro for HP Dock rename quirks (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add vendor, product and profile name for HP Thunderbolt Dock (Jaroslav Kysela) [1869536] - [sound] ALSA: emu10k1: delete an unnecessary condition (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix inconsistent card PM state after resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Fix potential crash during param fw loading (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Fix incorrect printf qualifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Defer probe when fail to find codec device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rl6231: Modify the target DMIC clock rate (Jaroslav Kysela) [1869536] - [sound] ALSA: es1688: Add the missed snd_card_free() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add sienna_cichlid audio asic id for sienna_cichlid up (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add Pioneer DJ DJM-900NXS2 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: q6asm-dai: kCFI fix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_remove_dai_link() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_add_dai_link() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_set_bias_level_post() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_set_bias_level() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_remove() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_late_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add probed bit field to snd_soc_card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_resume_post() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_resume_pre() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_suspend_post() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_suspend_pre() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_subclass to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_get_codec_dai() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_set/get_drvdata() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_jack_new() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_get_kcontrol() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: add soc-card.c (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc.h: convert bool to bit field for snd_soc_card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof_pcm512x: remove CONFIG_SND_HDA_CODEC_HDMI condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof-sdw: remove CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: add depends on SND_SOC_SOF_HDA_AUDIO_CODEC for common hdmi (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fixing usage of plain int instead of NULL (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: fix generic hda codec support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Baytrail: fix 'defined but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: Subject:ASoC: soc-pcm: fix BE dai not hw_free and shutdown during mixer update (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: reduce verbosity of error messages for sof-dai and sof-link (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc_dma: Fix dma_chan leak when config DMA channel failed (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Enable class-D silence and clock detections (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-i2s-out: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: remove the redundant pass checks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: refine and log the header in the correct pass (Jaroslav Kysela) [1869536] - [sound] ALSA: ac97: Remove sound driver for ancient platform (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Removing unnecessary instance initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sta32x: add missed function calls in error paths (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: split i2c driver into separate module (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: nau8810: add I2C device and compatible ID (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ingenic: Unconditionally depend on devicetree (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Clean up quirk entries with macros (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Fix return value check in asoc_mmp_sspa_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-spdif-in: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-spdif-out: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: BYT: harden IPC initialization and handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: BYT: mask BUSY or DONE interrupts in handler (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: BYT: add .remove op (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ipc: ignore DSP replies received when they are not expected (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: byt/cht: add .pm_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640/51: remove .ignore_suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: pm: handle resume on legacy Intel platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: byt: Add PM callbacks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dapm: Move dai_link widgets to runtime to fix use after free (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add new codec supported for ALC287 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Quirks for Gigabyte TRX40 Aorus Master onboard audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2552: Fix runtime PM imbalance in tas2552_component_probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fix incomplete error-handling in img_i2s_in_probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Fix runtime PM imbalance in omap2_mcbsp_set_clks_src (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fix semicolon.cocci warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: mixer: volume quirk for ESS Technology Asus USB DAC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add a model for Thinkpad T570 without DAC workaround (Jaroslav Kysela) [1869536] - [sound] ALSA: hwdep: fix a left shifting 1 by 31 UB bug (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Merge suspend/resume function to runtime_suspend/resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: imx-audmix: Fix unused assignment to variable 'ret' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Fix -Wmissing-prototypes warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Added Amplifier Driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse compiler version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse windows (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse firmware version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Introduce extended manifest (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: Adjust validation condition for fw_offset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_compr_set_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_compr_shutdown() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_compr_startup() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_be_hw_params_fixup() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: remove unneeded parameter from snd_soc_link_xxx() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: move soc_rtd_xxx() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: add soc-link.c (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add support for MOTU UltraLite-mk3 (FireWire only model) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: keep ADCs and DACs always on (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: add digital microphone controls (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: refactoring protocol v2 for fetching mode switch (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: refactoring protocol v3 for clock source getter (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: refactoring protocol v2 for clock source getter (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: remove obsoleted codes (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: use table-based calculation of packet formats for stream management (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: use table-based calculation of packet formats for proc (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add alternative functions to detect packet format for protocol v3 (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add alternative functions to detect packet format for protocol v2 (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add model-specific table of chunk count (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: drop protocol structure (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add wrapper functions for protocol-dependent operations (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: localize protocol data (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: move spec data to v3 protocol file (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: move spec data to v2 protocol file (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: remove Compulab pxa2xx boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: add mono playback switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: add filter controls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: don't use regmap defaults (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Fix the error handling in probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use a single module (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: fix ADC level control (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix spelling mistake (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix trailing line in sysfs_slave.c (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add Slave sysfs support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: master: add sysfs support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: disco: s/ch/channels/ (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Add Device Tree support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: return error when acp de-init fails (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: refactoring dai_hw_params() callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: fix kernel warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Do not pass irq numbers in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Remove unneeded ifdef's (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Set ASR76K and ASR56K based on processing clock (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: enable build for RN machine driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: RN machine driver using dmic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: create platform devices for Renoir (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: enable Renoir acp3x drivers build (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACP PDM DMA driver pm ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add Renoir ACP PCI driver PM ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACP PDM DMA driver dai ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add acp3x pdm driver dma ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: irq handler changes for ACP3x PDM dma driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACP3x PDM platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: create acp3x pdm platform device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add acp init/de-init functions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add Renoir ACP PCI driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add Renoir ACP3x IP register header (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add more fixup entries for Clevo machines (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: master: add runtime pm support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus_type: add sdw_master_device support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: add unique bus id (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus_type: introduce sdw_slave_type and sdw_master_type (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: rename sdw_bus_master_add/delete, add arguments (Jaroslav Kysela) [1869536] - [sound] ALSA: iec1712: Initialize STDSP24 properly when using the model=staudio option (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for Toshiba Encore WT8-A tablet (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: fix volume controls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Fix unused assignment in fsl_set_clock_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: Make the driver name consistent across files (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Fix indentation to put on one line affected code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cleanup dai / component active code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dwc: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: jz4740: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cirrus: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bcm: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atomel: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_stream_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dapm: use snd_soc_dai_activate()/deactivate() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_action() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: replace snd_soc_runtime_activate()/deactivate() to macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: move set_pll to codec level (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: move set_sysclk to codec level (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: Add regulator support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: Add da7212 DT compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: remap BTN_0 as KEY_PLAYPAUSE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt700: remap buttons (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remap buttons (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: fix typo in components string (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: change machine driver name for WM8804 platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: make imx8m_dsp_ops static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: make dsp_ops static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: define INFO_ flags in dsp_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: sdw: relax sdw machine select constraints (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: add support to smart amplifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: inform DSP that driver is going to be removed (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add a power_down_notify method (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Do nothing when DSP PM callbacks are not set (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt1308-sdw: remove duplicate allocation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*-sdw: fix memory leak in set_sdw_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*-sdw: don't assign slave_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Xtreme (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: fix incorrect hw_base increase (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Unexport some local helper functions (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Drop unused snd_hda_queue_unsol_event() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Fix potential race in unsol event handler (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add duplex sound support for USB devices using implicit feedback (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: fixing upper volume limit for RME Babyface Pro routing crosspoints (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_esai: introduce SoC specific data (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Limit int mic boost for Thinkpad T530 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Use force clear for WM8962_SYSCLK_ENA after reset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Set appropriate bus format for given bit width (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Add support for the runtime power management (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Prepare/unprepare the clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Remove the embedded struct ssp_device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Add support for soc-generic-dmaengine-pcm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Get rid of dma_params and phys_base (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: A trivial typo fix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: omap-mcbsp: Fix an error handling path in 'asoc_mcbsp_probe()' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Update description for HDaudio kconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ux500: mop500: Fix some refcounted resources issues (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Drop S20_3LE case (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Flip SNDRV_PCM_FMTBIT_S24_3LE on (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Use readq to read 64 bit registers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: baytrail: Fix register access (Jaroslav Kysela) [1869536] - [sound] ALSA: SoC: rsnd: add interrupt support for SSI BUSIF buffer (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add COEF workaround for ASUS ZenBook UX431DA (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of ASUS UX581LV with ALC295 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS UX550GE with ALC295 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS GL503VM with ALC295 (Jaroslav Kysela) [1869536] - [sound] ALSA: drivers/powerpc: Replace _ALIGN_UP() by ALIGN() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: core: fix error return code in sof_probe_continue() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: set headset button maps (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: fulfill missing entries in Kconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: (cosmetic) remove multiple superfluous "else" statements (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: (cosmetic) remove multiple superfluous "else" statements (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: Use IRQF_ONESHOT (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: add support for RME Fireface UFX (untested) (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: add support for RME FireFace 802 (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: code refactoring to decide name of sound card (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: code refactoring to add enumeration constants for model identification (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: start IR context immediately (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: fix configuration error for nominal sampling transfer frequency (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Notebook (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Fix unused variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: use sequence of syt offset and data block on pool in AMDTP domain (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: pool ideal sequence of syt offset and data block (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: add cache for packet sequence to AMDTP domain structure (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for data block calculation (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for syt offset calculation (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for syt computation (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for parameters of packet queue and IRQ timing (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: add reference to domain structure from stream structure (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: use macro for maximum value of second in 1394 OHCI isoc descriptor (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: fix invalid assignment to union data for directional parameter (Jaroslav Kysela) [1869536] - [sound] ALSA: fireworks: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: rawmidi: Fix racy buffer resize under concurrent accesses (Jaroslav Kysela) [1869536] - [sound] ALSA: soc: fsl_asrc: Make some functions static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1016: Add the rt1016 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5677: Use devm_snd_soc_register_component() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: fix error handling of platform_get_irq() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Allow SST driver on SKL and KBL platforms with DMIC (Jaroslav Kysela) [1869536] - [sound] ALSA: portman2x4: Use bitwise instead of arithmetic operator for flags (Jaroslav Kysela) [1869536] - [sound] ALSA: sound/ppc: Use bitwise instead of arithmetic operator for flags (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: Fix error handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd :High hw_level while simultaneous capture (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Return true, false for return type bool (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Make I2S SD lines configurable (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Use hdac_to_hda_codec macro (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Use dev_to_hdac_dev macro (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: reduce verbosity on enumeration (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: debugfs: clarify SDPX license with GPL-2.0-only (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: slave: don't init debugfs on device registration error (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: fix error handling in probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8524: Add support S32_LE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Use the defined variable to simplify code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Add condition to prevent SoC providing bclk in ratio of 50 times of sample rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rl6231: Add the K bypass for the PLL parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: adau7118: Mark the ADAU7118 reset register as volatile (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max9768: update contact email (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98373: reorder max98373_reset() in resume (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: workaround playback failure on Tegra194 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add member to store ratio for stripe control (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: correct number of SDO lines for Tegra194 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add mapping for ASRock TRX40 Creator (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix S3 pop noise on Dell Wyse (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda/realtek: Fix pop noise on ALC225" (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: fix 'function sizeof not defined' error of tracepoints format (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Add poll callback for hwdep (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: hwdep: add support for O_NONBLOCK opening mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF/Intel: clarify SPDX license with GPL-2.0-only (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ipc: channel map structures (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: sof-wm8804: support for Hifiberry Digiplus boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Update correct LED status at the first time usage of update_mute_led() (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add control message quirk delay for Kingston HyperX headset (Jaroslav Kysela) [1869536] - [sound] ALSA: isa/wavefront: prevent out of bounds write in ioctl (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix unused variable warning w/o CONFIG_LEDS_TRIGGER_AUDIO (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add LED class support for micmute LED (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable micmute LED on and HP system (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Introduce polarity for micmute LED GPIO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: sort out Kconfig, again (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: remove unwanted btn_type assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: remove duplicate rt5682_reset() calls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: replace message printing from pr_() to dev_() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: remove empty default case (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: fix space issues (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: simplify assertions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: change trigger sequence to fix pop noise when stopping playback on sdw platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: replace sof_link_hda_process by sof_set_dai_config (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: set component dai_index to ipc dai config dai_index (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: send ipc for all found DAIs in sof_set_dai_config (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: broadwell: Fix oops during module removal (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: fix I2C/Soundwire dependencies (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: mark PM functions __maybe_unused (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: oss: remove unused inline function snd_seq_oss_timer_is_realtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mxs-saif: Fix unused assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: nau8810: add AUX related dapm widgets and routes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm97xx: fix ac97 dependency (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: component: suppress uninitialized-variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_get_metadata() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_set_metadata() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_pointer() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_ack() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_get_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_set_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_shutdown() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_start() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_remove() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_bespoke_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_prepare() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_new() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: don't overwide dai->driver->ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add soc_dai_err() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra_wm8903: Use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: broadwell: add channel constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bdw-rt5650: add channel constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bdw-rt5677: add channel constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: add explicit dependency on GPIOLIB when DMIC is used (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: davinci-mcasp: Fix dma_chan refcnt leak when getting dma type (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Automatic DMIC format configuration according to information from NHLT (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Multiple I/O PCM format support for pipe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Add alternative topology binary name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hisilicon: Use the defined variable to clean code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Check for null pointer before dereferencing "ctx" in fsl_easrc_hw_free() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: remove comparison to bool in omap_mcbsp_dai_set_dai_fmt() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mxs-saif: Avoid unnecessary check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add amp number in components string for ucm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hisilicon: Use IS_ERR() instead of IS_ERR_OR_NULL() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_esai: Disable exception interrupt before scheduling tasklet (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm_native: result of put_user() needs to be checked (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: snd-sof-intel-hda-common - add hda_model parameter and pass it to HDA codec driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-compress: avoid false-positive Wuninitialized warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: set CLOCKING2 as non-volatile register (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix racy list management in output queue (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Remove async workaround for Scarlett 2nd gen (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Improve frames size computation (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Refactor Intel NHLT init (Jaroslav Kysela) [1869536] - [sound] ALSA: ACPICA: Add NHLT table signature (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add missing dependency on IMX_SCU (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: fix spelling mistake "prefitler" -> "prefilter" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Replace guid_copy() with import_guid() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dmic: Allow GPIO operations to sleep (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: return true, false in snd_soc_volsw_is_stereo() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Fix build (Jaroslav Kysela) [1869536] - [sound] ALSA: oxygen: use true, false for bool variables (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix a limit check in proc_dump_substream_formats() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/skl/hda - fix oops on systems without i915 audio codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Add initial ZL38060 driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-compress: remove snd_compr_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sprd: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: atom: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: q6sp6: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: wm_adsp: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-compress: add snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: txx9: add back the hack for a too small resource_size_t (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Add EASRC ASoC CPU DAI drivers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Move common definition to fsl_asrc_common (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Support new property fsl, asrc-format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Support new property fsl, asrc-format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: rename asrc_priv to asrc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Enable audio mclk during tegra_asoc_utils_init() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add audio mclk parent configuration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Use device managed resource APIs to get the clock (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd934x: remove unneeded semicolon (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd9335: remove unneeded semicolon (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd934x: remove unnecessary comparisons to bool (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: split woofer and tweeter support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Fix wrong dependency of da7210 and wm8983 (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Print more information in stream proc files (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: txx9: don't work around too small resource_size_t (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: Power transition refactor (Jaroslav Kysela) [1869536] - [sound] ALSA: Fix misspellings of "Analog Devices" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Fix misspellings of "Analog Devices" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: handle multiple sets of tuple arrays (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: stop parsing when all tokens have been found (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Get HDA rate and channels from topology (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix: parse hda_tokens to &config->hda (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Get ALH rate amd channels from topology (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: align sof_ipc_dai_alh_params with FW (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Rename deprecated DMIC IPC struct field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Change DMIC load IPC to fixed length (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Fix typo in header file comment text (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add XRUN flags field to struct sof_ipc_buffer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: make sof_ipc_cc_version to fixed length (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: change type char to uint8_t in topology.h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: change type char to uint8_t in trace.h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: change type char to uint8_t in info.h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add debug ABI version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add probe support extend data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Add support for DC Blocker (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse compiler version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse windows (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse firmware version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Introduce extended manifest (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Introduce offset in firmware data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Mark get_ext* function ext_hdr arguments as const (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix: handle DAI widget connections properly with multiple CPU DAI's (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add i.MX8MP device descriptor (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Add i.MX8M HW support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: fix undefined reference issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8: Fix randbuild error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: Remove unneeded semicolon (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Omit superfluous error message in fsl_micfil_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: skl_hda_generic: remove rtd->codec_dai (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: RME Babyface Pro mixer patch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8900: remove some defined but not used symbols (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8990: remove some defined but unused symbols (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8991: remove defined but not used 'wm8991_dapm_rxvoice_controls' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: remove wm1811_snd_controls and mixin_boost_tlv (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra_wm8903: Support nvidia, headset property (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt700: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt5682: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt1308: remove codec dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_hdmi: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_hdmi: fix compilation issue in fallback mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof-da7219-max98373: add DMIC widget and route (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_sdw: init all aggregated codecs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: support Elkhart Lake with rt5660 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add PCI ID for ElkhartLake (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add ElkhartLake HDMI codec vid (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/skl/hda - set autosuspend timeout for hda codecs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_da7219_max98373: Add BE dailink for dmic16k (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: remove cpu_dai/codec_dai/cpu_dais/codec_dais (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: tidyup soc_new_pcm_runtime() rtd setups (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: set rtd->num_cpu/codec at soc_new_pcm_runtime() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: Add dynamic debug logs in soc_dai_link_sanity_check() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: log number of microphones detected in NHLT tables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: reduce verbosity on SoundWire detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt1308-sdw: reduce verbosity (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: remove unnecessary parentheses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: remove unneeded variables (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add autodetection for SoundWire (Jaroslav Kysela) [1869536] - [s390] mm/gup: fix gup_fast with dynamic page table folding (Philipp Rudo) [1879401 1768713 1883266]- [netdrv] Take common prefetch code structure into a function (Ivan Vecera) [1882011] - [net] lwtunnel: only keep the available bits when setting vxlan md->gbp (Xin Long) [1879363] - [net] sched: only keep the available bits when setting vxlan md->gbp (Xin Long) [1879363] - [vhost] Don't call access_ok() when using IOTLB (Greg Kurz) [1883084] - [clocksource] hv: clocksource: Add notrace attribute to read_hv_sched_clock_*() functions (Mohammed Gamal) [1880230] - [net] core: Replace driver version to be kernel version (Petr Oros) [1867192] - [net] use netif_is_bridge_port() to check for IFF_BRIDGE_PORT (Josef Oskera) [1867923] - [net] sctp: fix sctp_auth_init_hmacs() error path (Xin Long) [1891413] - [net] sctp: Fix IPv6 ancestor_size calc in sctp_copy_descendant (Xin Long) [1891413] - [net] sctp: add SCTP_PEER_ADDR_THLDS_V2 sockopt (Xin Long) [1891413] - [net] sctp: add support for Primary Path Switchover (Xin Long) [1891413] - [net] sctp: add SCTP_EXPOSE_POTENTIALLY_FAILED_STATE sockopt (Xin Long) [1891413] - [net] sctp: add SCTP_ADDR_POTENTIALLY_FAILED notification (Xin Long) [1891413] - [net] sctp: add pf_expose per netns and sock and asoc (Xin Long) [1891413] - [net] qos offload add flow status with dropped count (Ivan Vecera) [1890263] - [i2c] i2c: i801: Add support for Intel Tiger Lake PCH-H (Steve Best) [1782725] - [i2c] i2c: i801: Add support for Intel Emmitsburg PCH (David Arcari) [1837403] - [mfd] mfd: intel-lpss: Add Intel Emmitsburg PCH PCI IDs (David Arcari) [1837403] - [powerpc] powerpc/papr_scm: Fix warning triggered by perf_stats_show() (Diego Domingos) [1875364] - [powerpc] powerpc/papr_scm: Limit the readability of 'perf_stats' sysfs attribute (Diego Domingos) [1875364] - [powerpc] powerpc/papr_scm: Add support for fetching nvdimm 'fuel-gauge' metric (Diego Domingos) [1875364] - [powerpc] powerpc/papr_scm: Fetch nvdimm performance stats from PHYP (Diego Domingos) [1875364] - [include] driver-core: Introduce DEVICE_ATTR_ADMIN_{RO, RW} (Diego Domingos) [1875364] - [net] netfilter: reject: skip csum verification for protocols that don't support it (Florian Westphal) [1740082] - [net] netfilter: Fix remainder of pseudo-header protocol 0 (Florian Westphal) [1740082] - [powerpc] powerpc/pseries: Add KVM guest doorbell restrictions (Diego Domingos) [1870221] - [powerpc] powerpc: Inline doorbell sending functions (Diego Domingos) [1870221] - [powerpc] powerpc/pseries: Use doorbells even if XIVE is available (Diego Domingos) [1870221] - [powerpc] powerpc: Fix P10 PVR revision in /proc/cpuinfo for SMT4 cores (Steve Best) [1885927] - [tools] selftests: implement flower classifier terse dump tests (Ivan Vecera) [1879189] - [net] sched: cls_flower: implement terse dump support (Ivan Vecera) [1879189] - [net] sched: implement terse dump support in act (Ivan Vecera) [1879189] - [net] sched: introduce terse dump flag (Ivan Vecera) [1879189] - [netdrv] net/mlx5e: Fix missing switch_id for representors (Petr Oros) [1874073] - [tools] selftests: net: Add port split test (Petr Oros) [1874073] - [net] devlink: Move input checks from driver to devlink (Petr Oros) [1874073] - [net] devlink: Add a new devlink port split ability attribute and pass to netlink (Petr Oros) [1874073] - [netdrv] mlxsw: Set port split ability attribute in driver (Petr Oros) [1874073] - [net] devlink: Add a new devlink port lanes attribute and pass to netlink (Petr Oros) [1874073] - [netdrv] mlxsw: Set number of port lanes attribute in driver (Petr Oros) [1874073] - [net] devlink: Replace devlink_port_attrs_set parameters with a struct (Petr Oros) [1874073] - [net] devlink: Move switch_port attribute of devlink_port_attrs to devlink_port (Petr Oros) [1874073] - [net] devlink: Move set attribute of devlink_port_attrs to devlink_port (Petr Oros) [1874073] - [netdrv] mlx5e: Use helper API to get devlink port index for all port flavours (Petr Oros) [1874073] - [net] devlink: Add support for board.serial_number to info_get cb. (Petr Oros) [1879194] - [net] devlink: Support setting hardware address of port function (Petr Oros) [1879195] - [net] devlink: Support querying hardware address of port function (Petr Oros) [1879195] - [net] devlink: Prepare devlink port functions to fill extack (Petr Oros) [1879195] - [net] sctp: not disable bh in the whole sctp_get_port_local() (Xin Long) [1704525] - [net] sctp: replace some sock_net(sk) with just 'net' (Xin Long) [1704525] - [x86] x86/resctrl: Fix a NULL vs IS_ERR() static checker warning in rdt_cdp_peer_get() (Terry Bowman) [1873124]- [net] sched: initialize with 0 before setting erspan md->u (Xin Long) [1879358] - [net] ipv6: Discard next-hop MTU less than minimum link MTU (Balazs Nemeth) [1879893] - [kvm] Revert "x86/kvm: Move context tracking where it belongs" (Nitesh Narayan Lal) [1890284] - [video] hyperv_fb: Update screen_info after removing old framebuffer (Kairui Song) [1870081] - [x86] x86/kexec: Use up-to-dated screen_info copy to fill boot params (Kairui Song) [1870081] - [netdrv] netdevsim: Register control traps (Petr Oros) [1888724] - [net] devlink: Add ACL control packet traps (Petr Oros) [1888724] - [net] devlink: Add layer 3 control packet traps (Petr Oros) [1888724] - [net] devlink: Add layer 2 control packet traps (Petr Oros) [1888724] - [net] devlink: Add 'control' trap type (Petr Oros) [1888724] - [net] devlink: Add 'mirror' trap action (Petr Oros) [1888724] - [netdrv] netdevsim: Move layer 3 exceptions to exceptions trap group (Petr Oros) [1888724] - [net] devlink: Create dedicated trap group for layer 3 exceptions (Petr Oros) [1888724] - [net] xfrmi: drop ignore_df check before updating pmtu (Balazs Nemeth) [1857679] - [kernel] sched/features: Fix !CONFIG_JUMP_LABEL case (Daniel Bristot de Oliveira) [1885850] - [net] flow_offload: simplify hw stats check handling (Ivan Vecera) [1888317] - [scsi] scsi: core: Only re-run queue in scsi_end_request() if device queue is busy (Ewan Milne) [1885733] - [scsi] scsi: core: Clean up scsi_noretry_cmd() (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Make sdebug_build_parts() respect virtual_gb (Ewan Milne) [1885733] - [scsi] scsi: fc: Add 256GBit speed setting to SCSI FC transport (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement lun_format (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Remove superfluous close zone in resp_open_zone() (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_sas: Add spaces around binary operator "|" (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_srp: Sanitize scsi_target_block/unblock sequences (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement tur_ms_to_ready parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Fix request sense (Ewan Milne) [1885733] - [scsi] scsi: core: Delete unnecessary buffer allocation for every loop iteration (Ewan Milne) [1885733] - [scsi] scsi: core: Add missing scsi_device_put() in scsi_host_block() (Ewan Milne) [1885733] - [scsi] scsi: core: Only return started requests from scsi_host_find_tag() (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_iscsi: Drop a duplicated word (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_sas: Add missing newline in sysfs 'enable' attribute (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_fc: Match HBA Attribute Length with HBAAPI V2.0 definitions (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Update documentation url and bump version (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: every_nth triggered error injection (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Support hostwide tags (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add check for sdebug_max_queue during module init (Ewan Milne) [1885733] - [scsi] scsi: sd_zbc: Fix kdoc comment format (Ewan Milne) [1885733] - [scsi] scsi: sd: Fix kdoc comment format (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Fix in_use bitmap corruption (Ewan Milne) [1885733] - [scsi] scsi: core: Register sysfs for SCSI workqueue (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_spi: Fix function pointer check (Ewan Milne) [1885733] - [scsi] scsi: core: Fix formatting errors in scsi_lib.c (Ewan Milne) [1885733] - [scsi] scsi: core: Remove scsi_sdb_cache (Ewan Milne) [1885733] - [scsi] scsi: sr: Fix sr_probe() missing deallocate of device minor (Ewan Milne) [1885733] - [scsi] scsi: sr: Fix sr_probe() missing mutex_destroy (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Parser tables and code interaction (Ewan Milne) [1885733] - [scsi] scsi: core: Refactor scsi_mq_setup_tags function (Ewan Milne) [1885733] - [scsi] scsi: core: Fix incorrect usage of shost_for_each_device (Ewan Milne) [1885733] - [scsi] scsi: sd: Add zoned capabilities device attribute (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Fix an error handling bug in sdeb_zbc_model_str() (Ewan Milne) [1885733] - [scsi] scsi: pm: Balance pm_only counter of request queue during system resume (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Disallow zone sizes that are not powers of 2 (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement ZBC host-aware emulation (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add zone_size_mb module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add zone_nr_conv module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add zone_max_open module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add ZBC module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add ZBC zone commands (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add ZBC mode and VPD pages (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Bump to version 1.89 (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Re-arrange parameters alphabetically (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement PRE-FETCH commands (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Weaken rwlock around ramdisk access (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement VERIFY(10), add VERIFY(16) (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add per_host_store option (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Use scsi_et_resid() where appropriate (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Randomize command completion time (Ewan Milne) [1885733] - [scsi] scsi: core: doc: Change function comments to kernel-doc style (Ewan Milne) [1885733] - [scsi] scsi: sr: Use {get, put}_unaligned_be*() instead of open-coding these functions (Ewan Milne) [1885733] - [scsi] scsi_ioctl.c: switch SCSI_IOCTL_GET_IDLUN to copy_to_user() (Ewan Milne) [1885733] - [scsi] scsi: core: Avoid calling synchronize_rcu() for each device in scsi_host_block() (Ewan Milne) [1885733] - [scsi] scsi: st: remove unneeded variable 'result' in st_release() (Ewan Milne) [1885733] - [scsi] scsi: sr: Fix sr_block_release() (Ewan Milne) [1885733] - [scsi] scsi: scsi_trace: Use get_unaligned_be24() (Ewan Milne) [1885733] - [scsi] scsi: st: Use get_unaligned_be24() and sign_extend32() (Ewan Milne) [1885733] - [scsi] scsi: core: add scsi_host_busy_iter() (Ewan Milne) [1885733] - [scsi] scsi: core: add scsi_host_(block, unblock) helper function (Ewan Milne) [1885733] - [scsi] scsi: core: add scsi_host_complete_all_commands() helper (Ewan Milne) [1885733] - [scsi] scsi: sr: get rid of sr global mutex (Ewan Milne) [1885733] - [powerpc] scsi: sr: remove references to BLK_DEV_SR_VENDOR, leave it enabled (Ewan Milne) [1885733] - [scsi] scsi: core: remove .for_blk_mq (Ewan Milne) [1885733] - [scsi] scsi: sd_zbc: Rename sd_zbc_check_zones() (Ewan Milne) [1885733] - [scsi] scsi: sd_zbc: Simplify sd_zbc_check_zones() (Ewan Milne) [1885733] - [ata] scsi: core: Clean up SG_NONE (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport.h: switch to SPDX tags (Ewan Milne) [1885733] - [scsi] scsi: libsas: Inject revalidate event for root port event (Ewan Milne) [1885733] - [scsi] scsi: libsas: Stop hardcoding SAS address length (Ewan Milne) [1885733] - [scsi] scsi: clean obsolete return values of eh_timed_out (Ewan Milne) [1885733] - [scsi] scsi: libsas: Fix some indentation in libsas.h (Ewan Milne) [1885733] - [scsi] scsi: st: mark expected switch fall-throughs (Ewan Milne) [1885733] - [scsi] scsi: libsas: delete dead code in scsi_transport_sas.c (Ewan Milne) [1885733] - [nvme] nvme-rdma: params to enable pi_capable devices (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Fix return value in __lpfc_nvme_ls_abort (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: fix axchg pointer reference after free and double frees (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Fix pointer checks and comments in (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] scsi: lpfc: Fix lpfc_nodelist leak when processing unsolicited event (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] scsi: lpfc: Remove redundant initialization to variable rc (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor Send LS Response support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor Send LS Abort support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: nvme: Add Receive LS Request and Send LS Response support to nvme (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor Send LS Request support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: nvmet: Add Send LS Request and Abort LS Request support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: nvmet: Add support for NVME LS request hosthandle (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor NVME LS receive handling (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Commonize lpfc_async_xchg_ctx state and flag definitions (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor nvmet_rcv_ctx to create lpfc_async_xchg_ctx (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor lpfc nvme headers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fabrics: allow to queue requests for live queues (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: cancel async events before freeing event struct (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: cancel async events before freeing event struct (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: cancel async events before freeing event struct (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Revert: Fix controller creation races with teardown flow (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: only use power of two io boundaries (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: fix reset hang if controller died in the middle of a reset (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Fix NULL dereference for pci nvme controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: cancel nvme device request before disabling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Fix a missed _irqsave version of spin_lock in 'nvmet_fc_fod_op_done()' (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: serialize controller teardown sequences (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: fix reset hang if controller died in the middle of a reset (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: fix timeout handler (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix controller instance leak (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: fix timeout handler (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fabrics: don't check state NVME_CTRL_NEW for request acceptance (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: serialize controller teardown sequences (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: Fix NULL dereference when a connect data comes in h2cdata pdu (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: have nvme_wait_freeze_timeout return if it timed out (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: Disable keep-alive timer when kato is cleared to 0h (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: Fix wrong return value in __nvme_fc_init_request() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Use spin_lock_irq() when taking the ctrl->lock (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: skip noiob for zoned devices (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: call blk_mq_free_request() directly (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: fix oops in pt cmd execution (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Use u32 for nvme_dev.q_depth and nvme_queue.q_depth (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add ns tear down label for pt-cmd handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: fix a memory leak (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-passthru: Reject commands with non-sgl flags set (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-loop: remove extra variable in create ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-loop: set ctrl state connecting after init (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce nvme_ctrl_get_by_path() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: introduce the passthru Kconfig option (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: introduce the passthru configfs interface (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: Add passthru enable/disable helpers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add passthru code to process commands (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: export nvme_find_get_ns() and nvme_put_ns() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce nvme_execute_passthru_rq to call nvme_passthru_() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: remove redundant del_work_active flag (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: create helper function to obtain command effects (Gopal Tiwari) [1857052 1853231] - [nvme] nvme-hwmon: log the controller device name (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: check successful reference in nvmet_fc_find_target_assoc (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: clear any SGL flags in passthru commands (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix deadlock in disconnect during scan_work and/or ana_work (Gopal Tiwari) [1857052 1857051 1853231] - [acpi] nvme-pci: add support for ACPI StorageD3Enable property (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: use new shared CQ mechanism (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use xarray for ctrl ns storing (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: document nvme controller states (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: use new shared CQ mechanism (Gopal Tiwari) [1857052 1857051 1853231] - [infiniband] RDMA/core: Add protection for shared CQs used by ULPs (Gopal Tiwari) [1857052 1853231] - [infiniband] RDMA/core: Introduce shared CQ pool API (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove an unnecessary condition (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove redundant validation in nvme_start_ctrl() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: prevent SK hynix PC400 from using Write Zeroes command (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: fix possible hang waiting for icresp response (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: explicitly update mpath disk capacity on revalidation (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove ns->disk checks (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: fix some comments issues (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove redundant segment validation (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: use the consistent return type of nvme_pci_iod_alloc_size() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: add a blank line after declarations (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: support for multiple Command Sets Supported and Effects log pages (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: document quirked Intel models (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: expose reconnect_delay and ctrl_loss_tmo via sysfs (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: use USEC_PER_SEC instead of magic numbers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: implement multiple I/O Command Set support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: simplify nvmet_process_resp_list (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: leverage request plugging (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: have queue prod/cons send list become a llist (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: optimize network stack with setting msg flags according to batch size (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: verify wwnn and wwpn format (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use unsigned type for u64 (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: introduce flags member in nvmet_fabrics_ops (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: remove has_keyed_sgls initialization (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-loop: remove unused 'target_ctrl' in nvme_loop_ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove the empty line at the beginning of nvme_should_reset() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: code cleanup for nvme_alloc_host_mem() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: use unsigned for io queue depth (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-core: use u16 type for ctrl->sqsize (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-core: use u16 type for directives (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix a crash in nvme_mpath_add_disk (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: fix a missing completion with remove invalidation (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: factor out a nvme_rdma_end_request helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: fix deadlock due to head->lock (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: don't protect ns mutation with ns->head->lock (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: fix bogus request queue reference put (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: fix deadlock between ana_work and scan_work (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix possible deadlock when I/O is blocked (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: assign completion vector correctly (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: initialize tagset numa value to the value of the ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: override the value of the controller's numa node (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: initialize tagset numa value to the value of the ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: set initial value for controller's numa node (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-loop: initialize tagset numa value to the value of the ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: use simple suspend when a HMB is enabled (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: constify nvmet_tcp_ops (Gopal Tiwari) [1857052 1857051 1853231] - [net] net: add sock_set_keepalive (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: constify nvme_tcp_mq_ops and nvme_tcp_admin_mq_ops (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: do not call del_gendisk() on a disk that was never added (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] ipv4: add ip_sock_set_tos (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] tcp: add tcp_sock_set_syncnt (Gopal Tiwari) [1857052 1857051 1853231] - [net] tcp: add tcp_sock_set_nodelay (Gopal Tiwari) [1857052 1857051 1853231] - [net] net: add sock_no_linger (Gopal Tiwari) [1857052 1857051 1853231] - [target] net: add sock_set_reuseaddr (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] net: add sock_set_priority (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: avoid race between nvme_reap_pending_cqes() and nvme_poll() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add metadata/T10-PI support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: add metadata/T10-PI support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add metadata support for block devices (Gopal Tiwari) [1857052 1857051 1853231] - [include] nvme: add Metadata Capabilities enumerations (Gopal Tiwari) [1857052 1853231] - [nvme] nvme: set dma alignment to qword (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add metadata characteristics for a namespace (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce NVME_INLINE_METADATA_SG_CNT (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce max_integrity_segments ctrl attribute (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: add metadata/T10-PI support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: enforce extended LBA format for fabrics metadata (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: introduce nvme_rdma_sgl structure (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: rename nvmet_check_data_len to nvmet_check_transfer_len (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: rename nvmet_rw_len to nvmet_rw_data_len (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: generate AEN for ns revalidate size change (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce NVME_NS_METADATA_SUPPORTED flag (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce namespace features flag (Gopal Tiwari) [1857052 1857051 1853231] - [lightnvm] lightnvm: disable interleaved metadata (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: make nvme_ns_has_pi accessible to transports (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add helper to revalidate bdev and file ns (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: revalidate-ns & generate AEN from configfs (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: set MSG_EOR if we send last payload in the batch (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: replace zero-length array with flexible-array (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: delete an unnecessary declaration (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: make sure write/poll_queues less or equal then cpu count (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: disable streams when get stream params failed (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix io_opt limit setting (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: set MSG_SENDPAGE_NOTLAST with MSG_MORE when we have more to send (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: move send/recv error handling in the send/recv methods instead of call-sites (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: mark nvmet_ana_state static (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: set MSG_SENDPAGE_NOTLAST with MSG_MORE when we have more to send (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: replace kstrndup() with kmemdup_nul() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: dma read memory barrier for completions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: try to send request in queue_rq context (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: align addrfam list to spec (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: flush scan work on passthrough commands (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: define constants for identification values (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use type-name map for address treq (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use type-name map for ana states (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use type-name map for address family (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: stop using ->queuedata (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove volatile cqes (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: avoid scheduling io_work if we are already polling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: clean up error handling in nvme_init_ns_head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove last_sq_tail (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add generic type-name mapping (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: centralize port enable access for configfs (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: avoid gcc-10 zero-length-bounds warning (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: use bh_lock in data_ready (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add ns revalidation support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: slight cleanup for kbuild test warnings (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: unlink head after removing last namespace (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: set bdi capabilities once (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: revalidate after verifying identifiers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: use SRQ per completion vector (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: add an error flow for post_recv failures (Gopal Tiwari) [1857052 1853231] - [nvme] nvme: remove the magic 1024 constant in nvme_scan_ns_list (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: release namespace head reference on error (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: avoid an Identify Controller command for each namespace scan (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: factor out a nvme_ns_remove_by_nsid helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: consolidate chunk_sectors settings (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: consolodate io settings (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: revalidate namespace stream parameters (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: clean up nvme_scan_work (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: refine the Qemu Identify CNS quirk (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: check namespace head shared property (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: always search for namespace head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove unused parameter (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: add LS failure messages (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: provide num dword helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Add Disconnect Association Xmt support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: track hostport handle for associations (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: add target to host LS request support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: refactor to enable target to host LS (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: rename ls_list to ls_rcv_list (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: perform small cleanups on unneeded checks (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: Update header and host for common definitions for LS handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Update target for common definitions for LS handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Better size LS buffers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc nvmet-fc: refactor for common LS definitions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: Add Disconnect Association Rcv support (Gopal Tiwari) [1857052 1857051 1853231] - [include] nvme-fc: Sync header to FC-NVME-2 rev 1.08 (Gopal Tiwari) [1857052 1853231] - [nvme] nvme-fc and nvmet-fc: revise LLDD api for LS reception and LS request (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: fix "slimmer CQ head update" (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: prevent double free in nvme_alloc_ns() error handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: fix double free of rdma queue (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: fix bonding failover possible NULL deref (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: fix NULL dereference when removing a referral (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: inherit stable pages constraint in the mpath stack device (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: fix typo in comment (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: Replace comma with a semicolon (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: fix deallocation of working context (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix compat address handling in several ioctls (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Fix controller creation races with teardown flow (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: Add warning on state change failure at nvme_rdma_setup_ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: cleanup namespace identifier reporting in nvme_init_ns_head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: rename __nvme_find_ns_head to nvme_find_ns_head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: release ida resources (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: Implement get_mdts controller op (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Use nvme_state_terminal helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: allocate RW ctxs according to mdts (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Add compat_ioctl handler for NVME_IOCTL_SUBMIT_IO (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fabrics: Use scnprintf() for avoiding potential buffer overflow (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Remove unused return code from nvme_delete_ctrl_sync (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Re-order nvme_pci_free_ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: properly print controller address (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: Add get_mdts op for controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Simplify nvme_poll_irqdisable (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: slimmer CQ head update (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Remove two-pass completions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Remove tag from process cq (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: check ncqr & nsqr for set-features cmd (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Check for readiness more quickly, to speed up boot time (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: code cleanup nvme_identify_ns_desc() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Don't deter users from enabling hwmon support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: expose hostid via sysfs for fabrics controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: expose hostnqn via sysfs for fabrics controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] scsi: treewide: Consolidate {get, put}_unaligned_e24() definitions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: check sscanf value for subsys serial attr (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove unused return code from nvme_alloc_ns (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: configfs code cleanup (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: make ctrl model configurable (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: make ctrl-id configurable (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Fix uninitialized-variable warning (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Use single IRQ vector for old Apple models (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme/pci: Add sleep quirk for Samsung and Toshiba drives (Gopal Tiwari) [1857052 1857051 1853231] - [md] dm: fix request-based DM to not bounce through indirect dm_make_request (Mike Snitzer) [1885650] - [md] dm: add support for REQ_NOWAIT and enable it for linear target (Mike Snitzer) [1885650] - [block] block: add QUEUE_FLAG_NOWAIT (Mike Snitzer) [1885650] - [md] dm: export dm_copy_name_and_uuid (Mike Snitzer) [1885650] - [md] dm snap persistent: simplify area_io() (Mike Snitzer) [1885650] - [md] dm thin metadata: Remove unused local variable when create thin and snap (Mike Snitzer) [1885650] - [md] dm raid: fix discard limits for raid0, raid1 and raid10 (Mike Snitzer) [1885650] - [md] dm: use dm_table_get_device_name() where appropriate in targets (Mike Snitzer) [1885650] - [md] dm table: make 'struct dm_table' definition accessible to all of DM core (Mike Snitzer) [1885650] - [md] dm: eliminate need for start_io_acct() forward declaration (Mike Snitzer) [1885650] - [md] dm: simplify __process_abnormal_io() (Mike Snitzer) [1885650] - [md] dm: push use of on-stack flush_bio down to __send_empty_flush() (Mike Snitzer) [1885650] - [md] dm thin metadata: Fix use-after-free in dm_bm_set_read_only (Mike Snitzer) [1885650] - [md] dm thin metadata: Avoid returning cmd->bm wild pointer on error (Mike Snitzer) [1885650] - [md] dm cache metadata: Avoid returning cmd->bm wild pointer on error (Mike Snitzer) [1885650] - [md] dm integrity: fix error reporting in bitmap mode after creation (Mike Snitzer) [1885650] - [md] dm crypt: Initialize crypto wait structures (Mike Snitzer) [1885650] - [md] dm mpath: fix racey management of PG initialization (Mike Snitzer) [1885650] - [md] dm writecache: handle DAX to partitions on persistent memory correctly (Mike Snitzer) [1885650] - [md] dm ioctl: Fix compilation warning (Mike Snitzer) [1885650] - [md] dm raid: Remove empty if statement (Mike Snitzer) [1885650] - [md] dm verity: Fix compilation warning (Mike Snitzer) [1885650] - [md] dm bufio: do buffer cleanup from a workqueue (Mike Snitzer) [1885650] - [md] dm verity: add "panic_on_corruption" error handling mode (Mike Snitzer) [1885650] - [md] dm: use noio when sending kobject event (Mike Snitzer) [1885650] - [md] dm writecache: add cond_resched to loop in persistent_memory_claim() (Mike Snitzer) [1885650] - [md] dm ioctl: use struct_size() helper in retrieve_deps() (Mike Snitzer) [1885650] - [md] dm writecache: skip writecache_wait when using pmem mode (Mike Snitzer) [1885650] - [md] dm writecache: correct uncommitted_block when discarding uncommitted entry (Mike Snitzer) [1885650] - [md] dm crypt: avoid truncating the logical block size (Mike Snitzer) [1885650] - [md] dm bufio: clean up rbtree block ordering (Mike Snitzer) [1885650] - [documentation] dm integrity: add status line documentation (Mike Snitzer) [1885650] - [md] dm: replace zero-length array with flexible-array (Mike Snitzer) [1885650] - [md] dm mpath: add Historical Service Time Path Selector (Mike Snitzer) [1885650] - [md] dm mpath: pass IO start time to path selector (Mike Snitzer) [1885650] - [md] dm writecache: improve performance on DDR persistent memory (Optane) (Mike Snitzer) [1885650] - [md] dm writecache: remove superfluous test in persistent_memory_claim (Mike Snitzer) [1885650] - [md] dm persistent data: switch exit_ro_spine to return void (Mike Snitzer) [1885650] - [md] dm integrity: remove set but not used variables (Mike Snitzer) [1885650] - [documentation] dm crypt: document encrypted keyring key option (Mike Snitzer) [1885650] - [md] dm crypt: support using encrypted keys (Mike Snitzer) [1885650] - [md] dm verity fec: fix hash block number in verity_fec_decode (Mike Snitzer) [1885650] - [documentation] dm integrity: document allow_discard option (Mike Snitzer) [1885650] - [net] bridge: always clear mcast matching struct on reports and leaves (Ivan Vecera) [1859244] - [net] bridge: increase multicast's default maximum number of entries (Ivan Vecera) [1859244] - [net] bridge: mark hash_elasticity as obsolete (Ivan Vecera) [1859244] - [net] bridge: multicast: use non-bh rcu flavor (Ivan Vecera) [1859244] - [net] bridge: convert multicast to generic rhashtable (Ivan Vecera) [1859244] - [net] revert "net/bridge: Replace call_rcu_bh() and rcu_barrier_bh()" (Ivan Vecera) [1859244] - [net] ip6gre: avoid tx_error when sending MLD/DAD on external tunnels (Davide Caratti) [1847838] - [nvme] nvme-rdma: fix controller reset hang during traffic (Ming Lei) [1881760] - [nvme] nvme-tcp: fix controller reset hang during traffic (Ming Lei) [1881760] - [scsi] scsi: sd: sd_zbc: Fix ZBC disk initialization (Ming Lei) [1881760] - [md] dm: update original bio sector on Zone Append (Ming Lei) [1881760] - [s390] s390/dasd: Fix zero write for FBA devices (Ming Lei) [1881760] - [block] block: restore a specific error code in bdev_del_partition (Ming Lei) [1881760] - [block] blk-stat: make q->stats->lock irqsafe (Ming Lei) [1881760] - [block] blk-iocost: ioc_pd_free() shouldn't assume irq disabled (Ming Lei) [1881760] - [block] block: fix locking in bdev_del_partition (Ming Lei) [1881760] - [block] block: release disk reference in hd_struct_free_work (Ming Lei) [1881760] - [block] loop: Set correct device size when using LOOP_CONFIGURE (Ming Lei) [1881760] - [block] loop: unset GENHD_FL_NO_PART_SCAN on LOOP_CONFIGURE (Ming Lei) [1881760] - [block] block: check queue's limits.discard_granularity in __blkdev_issue_discard() (Ming Lei) [1881760] - [block] block: don't do revalidate zones on invalid devices (Ming Lei) [1881760] - [s390] s390/dasd: fix inability to use DASD with DIAG driver (Ming Lei) [1881760] - [tools] iocost_monitor: start from the oldest usage index (Ming Lei) [1881760] - [block] iocost: Fix check condition of iocg abs_vdebt (Ming Lei) [1881760] - [block] block: Use non _rcu version of list functions for tag_set_list (Ming Lei) [1881760] - [block] blk-cgroup: show global disk stats in root cgroup io.stat (Ming Lei) [1881760] - [block] blk-cgroup: make iostat functions visible to stat printing (Ming Lei) [1881760] - [block] block: improve discard bio alignment in __blkdev_issue_discard() (Ming Lei) [1881760] - [block] block: defer flush request no matter whether we have elevator (Ming Lei) [1881760] - [block] block: make blk_timeout_init() static (Ming Lei) [1881760] - [block] Revert "blk-rq-qos: remove redundant finish_wait to rq_qos_wait." (Ming Lei) [1881760] - [block] block: relax jiffies rounding for timeouts (Ming Lei) [1881760] - [lib] sbitmap: Consider cleared bits in sbitmap_bitmap_show() (Ming Lei) [1881760] - [block] blk-cgroup: clean up indentation (Ming Lei) [1881760] - [block] blk-cgroup: remove a dead check in blk_throtl_bio (Ming Lei) [1881760] - [block] blk-cgroup: remove blkcg_bio_issue_check (Ming Lei) [1881760] - [block] blk-cgroup: move rcu locking from blkcg_bio_issue_check to blk_throtl_bio (Ming Lei) [1881760] - [kernel] cgroup: unexport cgroup_rstat_updated (Ming Lei) [1881760] - [block] blk-cgroup: remove the !bio->bi_blkg check in blkcg_bio_issue_check (Ming Lei) [1881760] - [block] block: move the initial blkg lookup into blkg_tryget_closest (Ming Lei) [1881760] - [block] block: bypass blkg_tryget_closest for the root_blkg (Ming Lei) [1881760] - [block] block: merge blkg_lookup_create and __blkg_lookup_create (Ming Lei) [1881760] - [block] block: move the bio cgroup associatation helpers to blk-cgroup.c (Ming Lei) [1881760] - [block] block: move bio_associate_blkg_from_page to mm/page_io.c (Ming Lei) [1881760] - [block] block: merge __bio_associate_blkg into bio_associate_blkg_from_css (Ming Lei) [1881760] - [block] block: really clone the block cgroup in bio_clone_blkg_association (Ming Lei) [1881760] - [block] blkcg: clean up blkg_tryget_closest() (Ming Lei) [1881760] - [block] block: remove bio_disassociate_blkg (Ming Lei) [1881760] - [md] dm: use bio_uninit instead of bio_disassociate_blkg (Ming Lei) [1881760] - [block] blk-rq-qos: remove redundant finish_wait to rq_qos_wait (Ming Lei) [1881760] - [block] blktrace: Provide event for request merging (Ming Lei) [1881760] - [fs] block: simplify sb_is_blkdev_sb (Ming Lei) [1881760] - [fs] block: mark bd_finish_claiming static (Ming Lei) [1881760] - [tty] tty/sysrq: emergency_thaw_all does not depend on CONFIG_BLOCK (Ming Lei) [1881760] - [block] blk-iocost: Use struct_size() in kzalloc_node() (Ming Lei) [1881760] - [block] block: bio: Use struct_size() in kmalloc() (Ming Lei) [1881760] - [block] block: create the request_queue debugfs_dir on registration (Ming Lei) [1881760] - [block] blk-mq: add a new blk_mq_complete_request_remote API (Ming Lei) [1881760] - [block] blk-mq: factor out a blk_mq_complete_need_ipi helper (Ming Lei) [1881760] - [block] blk-mq: remove the get_cpu/put_cpu pair in blk_mq_complete_request (Ming Lei) [1881760] - [block] blk-mq: move failure injection out of blk_mq_complete_request (Ming Lei) [1881760] - [block] blk-mq: merge the softirq vs non-softirq IPI logic (Ming Lei) [1881760] - [block] blk-mq: short cut the IPI path in blk_mq_force_complete_rq for !SMP (Ming Lei) [1881760] - [block] blk-mq: complete polled requests directly (Ming Lei) [1881760] - [block] blk-mq: remove raise_blk_irq (Ming Lei) [1881760] - [block] blk-mq: factor out a helper to reise the block softirq (Ming Lei) [1881760] - [block] blk-mq: merge blk-softirq.c into blk-mq.c (Ming Lei) [1881760] - [block] nbd: Fix memory leak in nbd_add_socket (Ming Lei) [1881760] - [block] block: make function __bio_integrity_free() static (Ming Lei) [1881760] - [block] virtio-blk: free vblk-vqs in error path of virtblk_probe() (Ming Lei) [1881760] - [block] blk-mq-debugfs: update blk_queue_flag_nameaccordingly for new flags (Ming Lei) [1881760] - [block] block: release bip in a right way in error path (Ming Lei) [1881760] - [fs] block: make function 'kill_bdev' static (Ming Lei) [1881760] - [block] loop: replace kill_bdev with invalidate_bdev (Ming Lei) [1881760] - [block] partitions/ldm: Replace uuid_copy() with import_uuid() where it makes sense (Ming Lei) [1881760] - [block] block: update hctx map when use multiple maps (Ming Lei) [1881760] - [trace] trace/events/block.h: drop kernel-doc for dropped function parameter (Ming Lei) [1881760] - [block] blk-mq: Remove redundant 'return' statement (Ming Lei) [1881760] - [block] umem: remove redundant initialization of variable ret (Ming Lei) [1881760] - [block] pktcdvd: remove redundant initialization of variable ret (Ming Lei) [1881760] - [kernel] blktrace: fix endianness for blk_log_remap() (Ming Lei) [1881760] - [kernel] blktrace: fix endianness in get_pdu_int() (Ming Lei) [1881760] - [kernel] blktrace: use errno instead of bi_status (Ming Lei) [1881760] - [block] block: nr_sects_write(): Disable preemption on seqcount write (Ming Lei) [1881760] - [nvme] block: remove the error argument to the block_bio_complete tracepoint (Ming Lei) [1881760] - [block] loop: Fix wrong masking of status flags (Ming Lei) [1881760] - [block] block/bio-integrity: don't free 'buf' if bio_integrity_add_page() failed (Ming Lei) [1881760] - [block] block: always define struct blk_integrity in genhd.h (Ming Lei) [1881760] - [s390] dasd: refactor dasd_ioctl_information (Ming Lei) [1881760] - [block] loop: Add LOOP_CONFIGURE ioctl (Ming Lei) [1881760] - [block] loop: Clean up LOOP_SET_STATUS lo_flags handling (Ming Lei) [1881760] - [block] loop: Rework lo_ioctl() __user argument casting (Ming Lei) [1881760] - [block] loop: Move loop_set_status_from_info() and friends up (Ming Lei) [1881760] - [block] loop: Factor out configuring loop from status (Ming Lei) [1881760] - [block] loop: Remove figure_loop_size() (Ming Lei) [1881760] - [block] loop: Refactor loop_set_status() size calculation (Ming Lei) [1881760] - [block] loop: Switch to set_capacity_revalidate_and_notify() (Ming Lei) [1881760] - [block] loop: Factor out setting loop device size (Ming Lei) [1881760] - [block] loop: Remove sector_t truncation checks (Ming Lei) [1881760] - [block] loop: Call loop_config_discard() only after new config is applied (Ming Lei) [1881760] - [block] block/swim3: use set_current_state macro (Ming Lei) [1881760] - [block] block: mark bio_wouldblock_error() bio with BIO_QUIET (Ming Lei) [1881760] - [block] blk-wbt: rename __wbt_update_limits to wbt_update_limits (Ming Lei) [1881760] - [block] blk-wbt: remove wbt_update_limits (Ming Lei) [1881760] - [block] blk-throttle: remove tg_drain_bios (Ming Lei) [1881760] - [block] blk-throttle: remove blk_throtl_drain (Ming Lei) [1881760] - [block] null_blk: force complete for timeout request (Ming Lei) [1881760] - [block] block: fix a warning when blkdev.h is included for !CONFIG_BLOCK builds (Ming Lei) [1881760] - [block] block: reduce part_stat_lock() scope (Ming Lei) [1881760] - [block] block: use __this_cpu_add() instead of access by smp_processor_id() (Ming Lei) [1881760] - [block] block: remove rcu_read_lock() from part_stat_lock() (Ming Lei) [1881760] - [block] block: add a blk_account_io_merge_bio helper (Ming Lei) [1881760] - [block] block: account merge of two requests (Ming Lei) [1881760] - [block] zram: nvdimm: use bio_{start, end}_io_acct and disk_{start, end}_io_acct (Ming Lei) [1881760] - [nvdimm] nvdimm: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [md] dm: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [block] rsxx: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [block] drbd: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [block] block: add disk/bio-based accounting helpers (Ming Lei) [1881760] - [block] block: remove the disk and queue NULL checks in blkdev_issue_flush (Ming Lei) [1881760] - [fs] block: remove the error_sector argument to blkdev_issue_flush (Ming Lei) [1881760] - [block] block: Remove unused flush_queue_delayed in struct blk_flush_queue (Ming Lei) [1881760] - [block] null_blk: Zero-initialize read buffers in non-memory-backed mode (Ming Lei) [1881760] - [include] block: Document the bio_vec properties (Ming Lei) [1881760] - [block] bio.h: Declare the arguments of the bio iteration functions const (Ming Lei) [1881760] - [block] block: Fix type of first compat_put_{, u}long() argument (Ming Lei) [1881760] - [block] block: merge part_{inc, dev}_in_flight into their only callers (Ming Lei) [1881760] - [block] block: don't call part_{inc, dec}_in_flight for blk-mq devices (Ming Lei) [1881760] - [block] block: move the blk-mq calls out of part_in_flight{, _rw} (Ming Lei) [1881760] - [block] block: mark blk_account_io_completion static (Ming Lei) [1881760] - [block] blk-mq: allow blk_mq_make_request to consume the q_usage_counter reference (Ming Lei) [1881760] - [kernel] blktrace: Report pid with note messages (Ming Lei) [1881760] - [block] iocost: don't let vrate run wild while there's no saturation signal (Ming Lei) [1881760] - [block] block: move blk_io_schedule() out of header file (Ming Lei) [1881760] - [block] block: export bio_release_pages and bio_iov_iter_get_pages (Ming Lei) [1881760] - [block] null_blk: Support REQ_OP_ZONE_APPEND (Ming Lei) [1881760] - [scsi] scsi: sd_zbc: emulate ZONE_APPEND commands (Ming Lei) [1881760] - [scsi] scsi: sd_zbc: factor out sanity checks for zoned commands (Ming Lei) [1881760] - [block] block: Modify revalidate zones (Ming Lei) [1881760] - [block] block: introduce blk_req_zone_write_trylock (Ming Lei) [1881760] - [block] block: Introduce REQ_OP_ZONE_APPEND (Ming Lei) [1881760] - [block] block: rename __bio_add_pc_page to bio_add_hw_page (Ming Lei) [1881760] - [block] block: provide fallbacks for blk_queue_zone_is_seq and blk_queue_zone_no (Ming Lei) [1881760] - [fs] block: add blk_io_schedule() for avoiding task hung in sync dio (Ming Lei) [1881760] - [block] block: don't hold part0's refcount in IO path (Ming Lei) [1881760] - [block] block: only define 'nr_sects_seq' in hd_part for 32bit SMP (Ming Lei) [1881760] - [block] bdi: fix up for "remove the name field in struct backing_dev_info" (Ming Lei) [1881760] - [fs] hfs: stop using ioctl_by_bdev (Ming Lei) [1881760] - [fs] bdi: remove the name field in struct backing_dev_info (Ming Lei) [1881760] - [mtd] bdi: simplify bdi_alloc (Ming Lei) [1881760] - [block] bdi: remove bdi_register_owner (Ming Lei) [1881760] - [mm] bdi: unexport bdi_register_va (Ming Lei) [1881760] - [base] driver core: remove device_create_vargs (Ming Lei) [1881760] - [block] block: rename blk_mq_alloc_rq_maps (Ming Lei) [1881760] - [block] block: rename __blk_mq_alloc_rq_map (Ming Lei) [1881760] - [fs] udf: stop using ioctl_by_bdev (Ming Lei) [1881760] - [fs] isofs: stop using ioctl_by_bdev (Ming Lei) [1881760] - [fs] hfsplus: stop using ioctl_by_bdev (Ming Lei) [1881760] - [cdrom] cdrom: factor out a cdrom_multisession helper (Ming Lei) [1881760] - [cdrom] cdrom: factor out a cdrom_read_tocentry helper (Ming Lei) [1881760] - [ide] ide-cd: rename cdrom_read_tocentry (Ming Lei) [1881760] - [cdrom] block: add a cdrom_device_info pointer to struct gendisk (Ming Lei) [1881760] - [block] block: add a bio_queue_enter helper (Ming Lei) [1881760] - [block] block: replace BIO_QUEUE_ENTERED with BIO_CGROUP_ACCT (Ming Lei) [1881760] - [block] block: improve the submit_bio and generic_make_request documentation (Ming Lei) [1881760] - [block] blk-mq: make function '__blk_mq_sched_dispatch_requests' static (Ming Lei) [1881760] - [block] block: bypass ->make_request_fn for blk-mq drivers (Ming Lei) [1881760] - [md] dm: remove the make_request_fn check in device_area_is_invalid (Ming Lei) [1881760] - [block] block: remove create_io_context (Ming Lei) [1881760] - [fs] block: unexport bdev_read_page and bdev_write_page (Ming Lei) [1881760] - [scsi] scsi: merge scsi_init_sgtable into scsi_init_io (Ming Lei) [1881760] - [block] block: provide a blk_rq_map_sg variant that returns the last element (Ming Lei) [1881760] - [block] block: remove RQF_COPY_USER (Ming Lei) [1881760] - [block] block: fold bdev_unhash_inode into invalidate_partition (Ming Lei) [1881760] - [block] block: simplify block device syncing in bdev_del_partition (Ming Lei) [1881760] - [block] block: don't call invalidate_partition from blk_drop_partitions (Ming Lei) [1881760] - [s390] dasd: use blk_drop_partitions instead of badly reimplementing it (Ming Lei) [1881760] - [block] block: remove the disk argument from blk_drop_partitions (Ming Lei) [1881760] - [block] block: remove hd_struct_kill (Ming Lei) [1881760] - [block] block: cleanup hd_struct freeing (Ming Lei) [1881760] - [block] block: pass a hd_struct to delete_partition (Ming Lei) [1881760] - [block] block: refactor blkpg_ioctl (Ming Lei) [1881760] - [block] null_blk: don't allow discard for zoned mode (Ming Lei) [1881760] - [block] null_blk: return error for invalid zone size (Ming Lei) [1881760] - [block] iocost: protect iocg->abs_vdebt with iocg->waitq.lock (Ming Lei) [1881760] - [block] block: remove the bd_openers checks in blk_drop_partitions (Ming Lei) [1881760] - [block] null_blk: Cleanup zoned device initialization (Ming Lei) [1881760] - [block] null_blk: Fix zoned command handling (Ming Lei) [1881760] - [fs] block: remove unused header (Ming Lei) [1881760] - [fs] bdev: Reduce time holding bd_mutex in sync in blkdev_close() (Ming Lei) [1881760] - [trace] blk-wbt: Drop needless newlines from tracepoint format strings (Ming Lei) [1881760] - [block] blk-wbt: Use tracepoint_string() for wbt_step tracepoint string literals (Ming Lei) [1881760] - [s390] s390/dasd: remove IOSCHED_DEADLINE from DASD Kconfig (Ming Lei) [1881760] - [block] block: fix busy device checking in blk_drop_partitions again (Ming Lei) [1881760] - [block] block: fix busy device checking in blk_drop_partitions (Ming Lei) [1881760] - [block] blkcg: don't offline parent blkcg first (Ming Lei) [1881760] - [block] blkcg: rename blkcg->cgwb_refcnt to ->online_pin and always use it (Ming Lei) [1881760] - [block] null_blk: add trace in null_blk_zoned.c (Ming Lei) [1881760] - [block] null_blk: add tracepoint helpers for zoned mode (Ming Lei) [1881760] - [block] block: add a zone condition debug helper (Ming Lei) [1881760] - [block] rsxx: Replace zero-length array with flexible-array member (Ming Lei) [1881760] - [block] null_blk: describe the usage of fault injection param (Ming Lei) [1881760] - [block] null_blk: fix spurious IO errors after failed past-wp access (Ming Lei) [1881760] - [block] nbd: requeue command if the soecket is changed (Ming Lei) [1881760] - [block] nbd: enable replace socket if only one connection is configured (Ming Lei) [1881760] - [block] block/drbd: delete invalid function drbd_md_mark_dirty_ (Ming Lei) [1881760] - [block] loop: Only freeze block queue when needed (Ming Lei) [1881760] - [block] loop: Only change blocksize when needed (Ming Lei) [1881760] - [block] block: move bdevname() into block/generic-partition-rh.c (Ming Lei) [1881760] - [block] block: return NULL in blk_alloc_queue() on error (Ming Lei) [1881760] - [block] block: simplify queue allocation (Ming Lei) [1881760] - [block] Revert "blkdev: check for valid request queue before issuing flush" (Ming Lei) [1881760] - [block] null_blk: use blk_mq_init_queue_data (Ming Lei) [1881760] - [block] block: add a blk_mq_init_queue_data helper (Ming Lei) [1881760] - [block] block: move the ->devnode callback to struct block_device_operations (Ming Lei) [1881760] - [block] block: move block layer internals out of include/linux/genhd.h (Ming Lei) [1881760] - [fs] block: move guard_bio_eod to bio.c (Ming Lei) [1881760] - [block] block: unexport disk_map_sector_rcu (Ming Lei) [1881760] - [block] block: unexport disk_get_part (Ming Lei) [1881760] - [block] block: mark part_in_flight and part_in_flight_rw static (Ming Lei) [1881760] - [block] block: mark block_depr static (Ming Lei) [1881760] - [block] block: factor out requeue handling from dispatch code (Ming Lei) [1881760] - [block] block/diskstats: replace time_in_queue with sum of request times (Ming Lei) [1881760] - [block] block/diskstats: accumulate all per-cpu counters in one pass (Ming Lei) [1881760] - [block] block: merge partition-generic.c and check.c (Ming Lei) [1881760] - [block] block: move the various x86 Unix label formats out of genhd.h (Ming Lei) [1881760] - [block] partitions/msdos: remove LINUX_SWAP_PARTITION (Ming Lei) [1881760] - [block] block: move the *_PARTITION enum out of genhd.h (Ming Lei) [1881760] - [scsi] block: move struct partition out of genhd.h (Ming Lei) [1881760] - [block] block: remove block/partitions/sun.h (Ming Lei) [1881760] - [block] block: remove block/partitions/sgi.h (Ming Lei) [1881760] - [block] block: remove block/partitions/osf.h (Ming Lei) [1881760] - [block] block: remove block/partitions/karma.h (Ming Lei) [1881760] - [block] block: declare all partition detection routines in check.h (Ming Lei) [1881760] - [block] block: remove warn_no_part (Ming Lei) [1881760] - [md] block: cleanup how md_autodetect_dev is called (Ming Lei) [1881760] - [block] block: unexport read_dev_sector and put_dev_sector (Ming Lei) [1881760] - [scsi] scsi: simplify scsi_partsize (Ming Lei) [1881760] - [block] block: remove alloc_part_info and free_part_info (Ming Lei) [1881760] - [block] block: move sysfs methods shared by disks and partitions to genhd.c (Ming Lei) [1881760] - [block] block: move disk_name and related helpers out of partition-generic.c (Ming Lei) [1881760] - [fs] block: remove __bdevname (Ming Lei) [1881760] - [block] block: remove the blk_lookup_devt export (Ming Lei) [1881760] - [block] block, bfq: invoke flush_idle_tree after reparent_active_queues in pd_offline (Ming Lei) [1881760] - [block] block, bfq: make reparent_leaf_entity actually work only on leaf entities (Ming Lei) [1881760] - [block] block, bfq: turn put_queue into release_process_ref in __bfq_bic_change_cgroup (Ming Lei) [1881760] - [block] block, bfq: move forward the getting of an extra ref in bfq_bfqq_move (Ming Lei) [1881760] - [scsi] scsi: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1881760] - [nvme] nvme: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1881760] - [block] virtio_blk.c: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1881760] - [block] block/genhd: Notify udev about capacity change (Ming Lei) [1881760] - [fs] block: fix a device invalidation regression (Ming Lei) [1881760] - [block] blk-iocost: remove duplicated lines in comments (Ming Lei) [1881760] - [block] block: sed-opal: Change the check condition for regular session validity (Ming Lei) [1881760] - [block] block: Document genhd capability flags (Ming Lei) [1881760] - [block] block: cleanup comment for blk_flush_complete_seq (Ming Lei) [1881760] - [block] block: remove unneeded argument from blk_alloc_flush_queue (Ming Lei) [1881760] - [block] block: cleanup for _blk/blk_rq_prep_clone (Ming Lei) [1881760] - [block] block: remove redundant setting of QUEUE_FLAG_DYING (Ming Lei) [1881760] - [block] block: use bio_{wouldblock, io}_error in direct_make_request (Ming Lei) [1881760] - [block] block: fix comment for blk_cloned_rq_check_limits (Ming Lei) [1881760] - [block] null_blk: Add support for init_hctx() fault injection (Ming Lei) [1881760] - [block] null_blk: Handle null_add_dev() failures properly (Ming Lei) [1881760] - [block] null_blk: Fix the null_add_dev() error path (Ming Lei) [1881760] - [block] compat_ioctl: simplify up block/ioctl.c (Ming Lei) [1881760] - [block] compat_ioctl: block: simplify compat_blkpg_ioctl() (Ming Lei) [1881760] - [block] compat_ioctl: block: move blkdev_compat_ioctl() into ioctl.c (Ming Lei) [1881760] - [block] blk-mq: insert flush request to the front of dispatch queue (Ming Lei) [1881760] - [block] block: Remove used kblockd_schedule_work_on() (Ming Lei) [1881760] - [block] null_blk: remove unused fields in 'nullb_cmd' (Ming Lei) [1881760] - [block] drbd: fifo_alloc() should use struct_size (Ming Lei) [1881760] - [block] partitions/ldm: fix spelling mistake "to" -> "too" (Ming Lei) [1881760] - [block] block: mark zone-mgmt bios with REQ_SYNC (Ming Lei) [1881760] - [block] blk-mq: Document functions for sending request (Ming Lei) [1881760] - [block] block: Allow t10-pi to be modular (Ming Lei) [1881760] - [block] blk-mq: optimise blk_mq_flush_plug_list() (Ming Lei) [1881760] - [include] list: introduce list_for_each_continue() (Ming Lei) [1881760] - [block] blk-mq: optimise rq sort function (Ming Lei) [1881760] - [block] blk-cgroup: cgroup_rstat_updated() shouldn't be called on cgroup1 (Ming Lei) [1881760] - [block] blk-cgroup: separate out blkg_rwstat under CONFIG_BLK_CGROUP_RWSTAT (Ming Lei) [1881760] - [block] blk-cgroup: reimplement basic IO stats using cgroup rstat (Ming Lei) [1881760] - [block] blk-cgroup: remove now unused blkg_print_stat_{bytes|ios}_recursive() (Ming Lei) [1881760] - [block] blk-throtl: stop using blkg->stat_bytes and ->stat_ios (Ming Lei) [1881760] - [block] bfq-iosched: Ensure bio->bi_blkg is valid before using it (Ming Lei) [1881760] - [block] bfq-iosched: stop using blkg->stat_bytes and ->stat_ios (Ming Lei) [1881760] - [block] bfq-iosched: relocate bfqg_*rwstat*() helpers (Ming Lei) [1881760] - [md] dm: fix comment in __dm_suspend() (Mike Snitzer) [1881531] - [md] dm: fold dm_process_bio() into dm_make_request() (Mike Snitzer) [1881531] - [md] dm: fix missing imposition of queue_limits from dm_wq_work() thread (Mike Snitzer) [1881531] - [md] dm: optimize max_io_len() by inlining max_io_len_target_boundary() (Mike Snitzer) [1881531] - [md] dm: push md->immutable_target optimization down to __process_bio() (Mike Snitzer) [1881531] - [md] dm: change max_io_len() to use blk_max_size_offset() (Mike Snitzer) [1881531] - [md] dm table: stack 'chunk_sectors' limit to account for target-specific splitting (Mike Snitzer) [1881531] - [block] block: allow 'chunk_sectors' to be non-power-of-2 (Mike Snitzer) [1881531] - [block] block: use lcm_not_zero() when stacking chunk_sectors (Mike Snitzer) [1881531] - [md] dm: fix bio splitting and its bio completion order for regular IO (Mike Snitzer) [1881531] - [net] net-sysfs: add backlog len and CPU id to softnet data (Paolo Abeni) [1866909] - [net] try to avoid unneeded backlog flush (Paolo Abeni) [1866909] - [net] skbuff: fix a data race in skb_queue_len() (Paolo Abeni) [1866909] - [cpuidle] cpuidle: pseries: Fix CEDE latency conversion from tb to us (Diego Domingos) [1608791] - [cpuidle] cpuidle: pseries: Fixup exit latency for CEDE(0) (Diego Domingos) [1608791] - [cpuidle] cpuidle: pseries: Add function to parse extended CEDE records (Diego Domingos) [1608791] - [cpuidle] cpuidle: pseries: Set the latency-hint before entering CEDE (Diego Domingos) [1608791] - [arm64] paravirt: Initialize steal time when cpu is online (Andrew Jones) [1879137]- [infiniband] i40iw: Add support to make destroy QP synchronous (Stefan Assmann) [1757949] - [fs] xfs: don't eat an EIO/ENOSPC writeback error when scrubbing data fork (Carlos Maiolino) [1859160] - [fs] xfs: fix inode allocation block res calculation precedence (Carlos Maiolino) [1859160] - [fs] xfs: fix reflink quota reservation accounting error (Carlos Maiolino) [1859160] - [fs] xfs: preserve rmapbt swapext block reservation from freed blocks (Carlos Maiolino) [1859160] - [fs] xfs: fix duplicate verification from xfs_qm_dqflush() (Carlos Maiolino) [1859160] - [fs] xfs: fix unmount hang and memory leak on shutdown during quotaoff (Carlos Maiolino) [1859160] - [fs] xfs: factor out quotaoff intent AIL removal and memory free (Carlos Maiolino) [1859160] - [fs] xfs: fix incorrect test in xfs_alloc_ag_vextent_lastblock (Carlos Maiolino) [1859160] - [fs] xfs: fix regression in "cleanup xfs_dir2_block_getdents" (Carlos Maiolino) [1859160] - [fs] xfs: fix use-after-free when aborting corrupt attr inactivation (Carlos Maiolino) [1859160] - [fs] xfs: fix iclog release error check race with shutdown (Carlos Maiolino) [1859160] - [fs] xfs: Add the missed xfs_perag_put() for xfs_ifree_cluster() (Carlos Maiolino) [1859160] - [fs] xfs: clean up the error handling in xfs_swap_extents (Carlos Maiolino) [1859160] - [fs] xfs: acquire superblock freeze protection on eofblocks scans (Carlos Maiolino) [1859160] - [fs] xfs: xfs_dabuf_map should return ENOMEM when map allocation fails (Carlos Maiolino) [1859160] - [fs] xfs: fix xfs_buf_ioerror_alert location reporting (Carlos Maiolino) [1859160] - [fs] xfs: remove unnecessary null pointer checks from _read_agf callers (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_*read_agf return EAGAIN to ALLOC_FLAG_TRYLOCK callers (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_btree_get_buffunctions (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_trans_get_buf return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_trans_get_buf_map return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_read return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_get_uncached return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_get return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_read_map return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_get_map return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_alloc return an error code (Carlos Maiolino) [1859160] - [fs] xfs: fix uninitialized variable in xfs_attr3_leaf_inactive (Carlos Maiolino) [1859160] - [fs] xfs: change return value of xfs_inode_need_cow to int (Carlos Maiolino) [1859160] - [fs] xfs: check log iovec size to make sure it's plausibly a buffer log format (Carlos Maiolino) [1859160] - [fs] xfs: make struct xfs_buf_log_format have a consistent size (Carlos Maiolino) [1859160] - [fs] xfs: complain if anyone tries to create a too-large buffer log item (Carlos Maiolino) [1859160] - [fs] xfs: clean up xfs_buf_item_get_format return value (Carlos Maiolino) [1859160] - [fs] xfs: streamline xfs_attr3_leaf_inactive (Carlos Maiolino) [1859160] - [fs] xfs: fix memory corruption during remote attr value buffer invalidation (Carlos Maiolino) [1859160] - [fs] xfs: refactor remote attr value buffer invalidation (Carlos Maiolino) [1859160] - [fs] xfs: fix IOCB_NOWAIT handling in xfs_file_dio_aio_read (Carlos Maiolino) [1859160] - [fs] xfs: Add __packed to xfs_dir2_sf_entry_t definition (Carlos Maiolino) [1859160] - [fs] xfs: fix s_maxbytes computation on 32-bit kernels (Carlos Maiolino) [1859160] - [fs] xfs: truncate should remove all blocks, not just to the end of the page cache (Carlos Maiolino) [1859160] - [fs] xfs: introduce XFS_MAX_FILEOFF (Carlos Maiolino) [1859160] - [fs] xfs: remove bogus assertion when online repair isn't enabled (Carlos Maiolino) [1859160] - [fs] xfs: Remove all strlen in all xfs_attr_* functions for attr names (Carlos Maiolino) [1859160] - [fs] xfs: fix misuse of the XFS_ATTR_INCOMPLETE flag (Carlos Maiolino) [1859160] - [fs] xfs: also remove cached ACLs when removing the underlying attr (Carlos Maiolino) [1859160] - [fs] xfs: reject invalid flags combinations in XFS_IOC_ATTRMULTI_BY_HANDLE (Carlos Maiolino) [1859160] - [fs] xfs: remove shadow variable in xfs_btree_lshift (Carlos Maiolino) [1859160] - [fs] xfs: quota: move to time64_t interfaces (Carlos Maiolino) [1859160] - [fs] xfs: Make the symbol 'xfs_rtalloc_log_count' static (Carlos Maiolino) [1859160] - [fs] libxfs: resync with the userspace libxfs (Carlos Maiolino) [1859160] - [fs] xfs: fix log reservation overflows when allocating large rt extents (Carlos Maiolino) [1859160] - [fs] xfs: fix mount failure crash on invalid iclog memory access (Carlos Maiolino) [1859160] - [fs] xfs: don't check for AG deadlock for realtime files in bunmapi (Carlos Maiolino) [1859160] - [fs] xfs: fix realtime file data space leak (Carlos Maiolino) [1859160] - [fs] xfs: allow parent directory scans to be interrupted with fatal signals (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_da_get_buf (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_da_read_buf (Carlos Maiolino) [1859160] - [fs] xfs: split xfs_da3_node_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_dir3_leafn_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_dir3_leaf_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_attr3_leaf_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_da_reada_buf (Carlos Maiolino) [1859160] - [fs] xfs: improve the xfs_dabuf_map calling conventions (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_dabuf_map (Carlos Maiolino) [1859160] - [fs] xfs: simplify mappedbno handling in xfs_da_{get, read}_buf (Carlos Maiolino) [1859160] - [fs] xfs: report corruption only as a regular error (Carlos Maiolino) [1859160] - [fs] xfs: Remove kmem_zone_free() wrapper (Carlos Maiolino) [1859160] - [fs] xfs: Remove kmem_zone_destroy() wrapper (Carlos Maiolino) [1859160] - [fs] xfs: Remove slab init wrappers (Carlos Maiolino) [1859160] - [fs] xfs: fix another missing include (Carlos Maiolino) [1859160] - [fs] xfs: remove XFS_IOC_FSSETDM and XFS_IOC_FSSETDM_BY_HANDLE (Carlos Maiolino) [1859160] - [fs] xfs: remove duplicated include from xfs_dir2_data.c (Carlos Maiolino) [1859160] - [fs] xfs: remove unused structure members & simple typedefs (Carlos Maiolino) [1859160] - [fs] xfs: remove unused typedef definitions (Carlos Maiolino) [1859160] - [fs] xfs: Replace function declaration by actual definition (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_qoff_logitem_t typedef (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_dq_logitem_t typedef (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_quotainfo_t typedef (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_disk_dquot_t and xfs_dquot_t (Carlos Maiolino) [1859160] - [fs] xfs: avoid time_t in user api (Carlos Maiolino) [1859160] - [fs] xfs: don't reset the "inode core" in xfs_iread (Carlos Maiolino) [1859160] - [fs] xfs: merge the projid fields in struct xfs_icdinode (Carlos Maiolino) [1859160] - [fs] xfs: use a struct timespec64 for the in-core crtime (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->m_dirnameops (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused m_chsize field (Carlos Maiolino) [1859160] - [fs] xfs: convert open coded corruption check to use XFS_IS_CORRUPT (Carlos Maiolino) [1859160] - [fs] xfs: kill the XFS_WANT_CORRUPT_* macros (Carlos Maiolino) [1859160] - [fs] xfs: add a XFS_IS_CORRUPT macro (Carlos Maiolino) [1859160] - [fs] xfs: attach dquots before performing xfs_swap_extents (Carlos Maiolino) [1859160] - [fs] xfs: actually check xfs_btree_check_block return in xfs_btree_islastblock (Carlos Maiolino) [1859160] - [fs] xfs: always pass a valid hdr to xfs_dir3_leaf_check_int (Carlos Maiolino) [1859160] - [fs] xfs: merge xfs_dir2_data_freescan and xfs_dir2_data_freescan_int (Carlos Maiolino) [1859160] - [fs] xfs: remove the now unused dir ops infrastructure (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_get_ftype and ->data_put_ftype (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_bestfree_p (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_data_entsize (Carlos Maiolino) [1859160] - [fs] xfs: move the dir2 data block fixed offsets to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_entry_tag_p (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_entsize (Carlos Maiolino) [1859160] - [fs] xfs: replace xfs_dir3_data_endp with xfs_dir3_data_end_offset (Carlos Maiolino) [1859160] - [fs] xfs: remove the now unused ->data_entry_p method (Carlos Maiolino) [1859160] - [fs] xfs: cleanup __xfs_dir3_data_check (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_data_freescan_int (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_block_to_sf (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xchk_directory_data_bestfree (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xchk_dir_rec (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_leaf_getdents (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_block_getdents (Carlos Maiolino) [1859160] - [fs] xfs: remove the ->data_unused_p method (Carlos Maiolino) [1859160] - [fs] xfs: remove the ->data_dot_entry_p and ->data_dotdot_entry_p methods (Carlos Maiolino) [1859160] - [fs] xfs: remove the data_dotdot_offset field in struct xfs_dir_ops (Carlos Maiolino) [1859160] - [fs] xfs: remove the data_dot_offset field in struct xfs_dir_ops (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused ->data_first_entry_p method (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_get_ftype and ->sf_put_ftype (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_get_ino and ->sf_put_ino (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_entsize and ->sf_nextentry (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_get_parent_ino and ->sf_put_parent_ino (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->db_to_fdb and ->db_to_fdindex (Carlos Maiolino) [1859160] - [fs] xfs: move the max dir2 free bests count to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: move the dir2 free header size to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: add a bests pointer to struct xfs_dir3_icfree_hdr (Carlos Maiolino) [1859160] - [fs] xfs: make the xfs_dir3_icfree_hdr available to xfs_dir2_node_addname_int (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->free_hdr_to_disk (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->free_hdr_from_disk (Carlos Maiolino) [1859160] - [fs] xfs: move the max dir2 leaf entries count to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: move the dir2 leaf header size to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: add an entries pointer to struct xfs_dir3_icleaf_hdr (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->leaf_hdr_to_disk (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->leaf_hdr_from_disk (Carlos Maiolino) [1859160] - [fs] xfs: move the node header size to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: add a btree entries pointer to struct xfs_da3_icnode_hdr (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->node_hdr_to_disk (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->node_hdr_from_disk (Carlos Maiolino) [1859160] - [fs] xfs: refactor btree node scrubbing (Carlos Maiolino) [1859160] - [fs] xfs: use unsigned int for all size values in struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: move incore structures out of xfs_da_format.h (Carlos Maiolino) [1859160] - [fs] xfs: remove a stray tab in xfs_remount_rw() (Carlos Maiolino) [1859160] - [fs] xfs: convert EIO to EFSCORRUPTED when log contents are invalid (Carlos Maiolino) [1859160] - [fs] xfs: refactor "does this fork map blocks" predicate (Carlos Maiolino) [1859160] - [fs] xfs: clean up weird while loop in xfs_alloc_ag_vextent_near (Carlos Maiolino) [1859160] - [fs] xfs: annotate functions that trip static checker locking checks (Carlos Maiolino) [1859160] - [fs] xfs: Correct comment tyops -> typos (Carlos Maiolino) [1859160] - [fs] xfs: range check ri_cnt when recovering log items (Carlos Maiolino) [1859160] - [fs] xfs: "optimize" buffer item log segment bitmap setting (Carlos Maiolino) [1859160] - [fs] xfs: null out bma->prev if no previous extent (Carlos Maiolino) [1859160] - [fs] xfs: fix missing header includes (Carlos Maiolino) [1859160] - [fs] xfs: periodically yield scrub threads to the scheduler (Carlos Maiolino) [1859160] - [fs] xfs: remove redundant assignment to variable error (Carlos Maiolino) [1859160] - [fs] xfs: add missing early termination checks to record scrubbing functions (Carlos Maiolino) [1859160] - [fs] xfs: make the assertion message functions take a mount parameter (Carlos Maiolino) [1859160] - [fs] xfs: add missing assert in xfs_fsmap_owner_from_rmap (Carlos Maiolino) [1859160] - [fs] xfs: decrease indenting problems in xfs_dabuf_map (Carlos Maiolino) [1859160] - [fs] xfs: fold xfs_mount-alloc() into xfs_init_fs_context() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_fc_parse_param() above xfs_fc_get_tree() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_fc_get_tree() above xfs_fc_reconfigure() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_fc_reconfigure() above xfs_fc_free() (Carlos Maiolino) [1859160] - [fs] xfs: switch to use the new mount-api (Carlos Maiolino) [1859160] - [fs] xfs: dont set sb in xfs_mount_alloc() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_parseargs() validation to a helper (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_parseags() (Carlos Maiolino) [1859160] - [fs] xfs: avoid redundant checks when options is empty (Carlos Maiolino) [1859160] - [fs] xfs: refactor suffix_kstrtoint() (Carlos Maiolino) [1859160] - [fs] xfs: add xfs_remount_ro() helper (Carlos Maiolino) [1859160] - [fs] xfs: add xfs_remount_rw() helper (Carlos Maiolino) [1859160] - [fs] xfs: merge freeing of mp names and mp (Carlos Maiolino) [1859160] - [fs] xfs: use kmem functions for struct xfs_mount (Carlos Maiolino) [1859160] - [fs] xfs: dont use XFS_IS_QUOTA_RUNNING() for option check (Carlos Maiolino) [1859160] - [fs] xfs: use super s_id instead of struct xfs_mount m_fsname (Carlos Maiolino) [1859160] - [fs] xfs: remove unused struct xfs_mount field m_fsname_len (Carlos Maiolino) [1859160] - [fs] xfs: always log corruption errors (Carlos Maiolino) [1859160] - [fs] xfs: constify the buffer pointer arguments to error functions (Carlos Maiolino) [1859160] - [fs] xfs: relax shortform directory size checks (Carlos Maiolino) [1859160] - [fs] xfs: cleanup use of the XFS_ALLOC_ flags (Carlos Maiolino) [1859160] - [fs] xfs: move extent zeroing to xfs_bmapi_allocate (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_bmapi_allocate (Carlos Maiolino) [1859160] - [fs] xfs: simplify the xfs_iomap_write_direct calling (Carlos Maiolino) [1859160] - [fs] xfs: don't log the inode in xfs_fs_map_blocks if it (Carlos Maiolino) [1859160] - [fs] xfs: slightly tweak an assert in xfs_fs_map_blocks (Carlos Maiolino) [1859160] - [fs] xfs: remove the extsize argument to xfs_eof_alignment (Carlos Maiolino) [1859160] - [fs] xfs: mark xfs_eof_alignment static (Carlos Maiolino) [1859160] - [fs] xfs: simplify xfs_iomap_eof_align_last_fsb (Carlos Maiolino) [1859160] - [fs] xfs: merge xfs_showargs into xfs_fs_show_options (Carlos Maiolino) [1859160] - [fs] xfs: clean up printing inode32/64 in xfs_showargs (Carlos Maiolino) [1859160] - [fs] xfs: clean up printing the allocsize option in (Carlos Maiolino) [1859160] - [fs] xfs: reverse the polarity of XFS_MOUNT_COMPAT_IOSIZE (Carlos Maiolino) [1859160] - [fs] xfs: rename the XFS_MOUNT_DFLT_IOSIZE option to (Carlos Maiolino) [1859160] - [fs] xfs: simplify parsing of allocsize mount option (Carlos Maiolino) [1859160] - [fs] xfs: rename the m_writeio_* fields in struct xfs_mount (Carlos Maiolino) [1859160] - [fs] xfs: remove the m_readio_* fields in struct xfs_mount (Carlos Maiolino) [1859160] - [fs] xfs: don't use a different allocsice for -o wsync (Carlos Maiolino) [1859160] - [fs] xfs: cleanup calculating the stat optimal I/O size (Carlos Maiolino) [1859160] - [fs] xfs: remove the dsunit and dswidth variables in (Carlos Maiolino) [1859160] - [fs] xfs: simplify setting bio flags (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_iread_extents to use xfs_btree_visit_blocks (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_bmap_count_blocks using newer btree helpers (Carlos Maiolino) [1859160] - [fs] xfs: replace -EIO with -EFSCORRUPTED for corrupt metadata (Carlos Maiolino) [1859160] - [fs] xfs: namecheck directory entry names before listing them (Carlos Maiolino) [1859160] - [fs] xfs: namecheck attribute names before listing them (Carlos Maiolino) [1859160] - [fs] xfs: check attribute leaf block structure (Carlos Maiolino) [1859160] - [fs] xfs: consolidate preallocation in xfs_file_fallocate (Carlos Maiolino) [1859160] - [fs] xfs: disable xfs_ioc_space for always COW inodes (Carlos Maiolino) [1859160] - [fs] fs: add generic UNRESVSP and ZERO_RANGE ioctl handlers (Carlos Maiolino) [1859160] - [fs] xfs: don't implement XFS_IOC_RESVSP / XFS_IOC_RESVSP64 (Carlos Maiolino) [1859160] - [fs] xfs: use xfs_inode_buftarg in xfs_file_ioctl (Carlos Maiolino) [1859160] - [fs] xfs: use xfs_inode_buftarg in xfs_file_dio_aio_write (Carlos Maiolino) [1859160] - [fs] xfs: add a xfs_inode_buftarg helper (Carlos Maiolino) [1859160] - [fs] xfs: mark xfs_buf_free static (Carlos Maiolino) [1859160] - [fs] xfs: add mising include of xfs_pnfs.h for missing declarations (Carlos Maiolino) [1859160] - [fs] xfs: don't set bmapi total block req where minleft is (Carlos Maiolino) [1859160] - [fs] xfs: cap longest free extent to maximum allocatable (Carlos Maiolino) [1859160] - [fs] xfs: remove the duplicated inode log fieldmask set (Carlos Maiolino) [1859160] - [fs] xfs: improve the IOMAP_NOWAIT check for COW inodes (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_direct_write_iomap_begin (Carlos Maiolino) [1859160] - [fs] xfs: rename the whichfork variable in xfs_buffered_write_iomap_begin (Carlos Maiolino) [1859160] - [fs] xfs: split the iomap ops for buffered vs direct writes (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_file_iomap_begin_delay around (Carlos Maiolino) [1859160] - [fs] xfs: split out a new set of read-only iomap ops (Carlos Maiolino) [1859160] - [fs] xfs: factor out a helper to calculate the end_fsb (Carlos Maiolino) [1859160] - [fs] xfs: fill out the srcmap in iomap_begin (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_file_iomap_begin_delay (Carlos Maiolino) [1859160] - [fs] xfs: pass two imaps to xfs_reflink_allocate_cow (Carlos Maiolino) [1859160] - [fs] xfs: remove xfs_reflink_dirty_extents (Carlos Maiolino) [1859160] - [fs] xfs: also call xfs_file_iomap_end_delalloc for zeroing operations (Carlos Maiolino) [1859160] - [fs] xfs: remove the XLOG_STATE_DO_CALLBACK state (Carlos Maiolino) [1859160] - [fs] xfs: turn ic_state into an enum (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused XLOG_STATE_ALL and XLOG_STATE_UNUSED flags (Carlos Maiolino) [1859160] - [fs] xfs: remove dead ifdef XFSERRORDEBUG code (Carlos Maiolino) [1859160] - [fs] xfs: call xlog_state_release_iclog with l_icloglock held (Carlos Maiolino) [1859160] - [fs] xfs: move the locking from xlog_state_finish_copy to the callers (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused ic_io_size field from xlog_in_core (Carlos Maiolino) [1859160] - [fs] xfs: pass the correct flag to xlog_write_iclog (Carlos Maiolino) [1859160] - [fs] xfs: optimize near mode bnobt scans with concurrent cntbt lookups (Carlos Maiolino) [1859160] - [fs] xfs: factor out tree fixup logic into helper (Carlos Maiolino) [1859160] - [fs] xfs: refactor near mode alloc bnobt scan into separate function (Carlos Maiolino) [1859160] - [fs] xfs: refactor and reuse best extent scanning logic (Carlos Maiolino) [1859160] - [fs] xfs: refactor allocation tree fixup code (Carlos Maiolino) [1859160] - [fs] xfs: reuse best extent tracking logic for bnobt scan (Carlos Maiolino) [1859160] - [fs] xfs: refactor cntbt lastblock scan best extent logic into helper (Carlos Maiolino) [1859160] - [fs] xfs: track best extent from cntbt lastblock scan in alloc cursor (Carlos Maiolino) [1859160] - [fs] xfs: track allocation busy state in allocation cursor (Carlos Maiolino) [1859160] - [fs] xfs: introduce allocation cursor data structure (Carlos Maiolino) [1859160] - [fs] xfs: track active state of allocation btree cursors (Carlos Maiolino) [1859160] - [fs] xfs: ignore extent size hints for always COW inodes (Carlos Maiolino) [1859160] - [fs] xfs: include QUOTA, FATAL ASSERT build options in XFS_BUILD_OPTIONS (Carlos Maiolino) [1859160] - [pinctrl] pinctrl: tigerlake: Add support for Tiger Lake-H (Steve Best) [1782722] - [pinctrl] pinctrl: intel: Introduce common flags for GPIO mapping scheme (Steve Best) [1782722] - [mfd] mfd: intel-lpss: Add Intel Tiger Lake PCH-H PCI IDs (Steve Best) [1782724]- [netdrv] iavf: Fix incorrect adapter get in iavf_resume (Stefan Assmann) [1842896] - [netdrv] iavf: use generic power management (Stefan Assmann) [1842896] - [net] openvswitch: fixes crash if nf_conncount_init() fails (Eelco Chaudron) [1876445] - [fs] cifs`: handle ERRBaduid for SMB1 (Leif Sahlberg) [1875184] - [net] SUNRPC: 'Directory with parent 'rpc_clnt' already present!' (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Don't use RPC_TASK_CRED_NOREF with pnfs (Scott Mayhew) [1872310] - [fs] NFS: Don't use RPC_TASK_CRED_NOREF with delegreturn (Scott Mayhew) [1872310] - [net] SUNRPC: Signalled ASYNC tasks need to exit (Scott Mayhew) [1872310] - [net] SUNRPC: fix use-after-free in rpc_free_client_work() (Scott Mayhew) [1872310] - [fs] NFS: Fix a race in __nfs_list_for_each_server() (Scott Mayhew) [1872310] - [net] SUNRPC: defer slow parts of rpc_free_client() to a workqueue (Scott Mayhew) [1872310] - [net] SUNRPC: Revert 241b1f419f0e ("SUNRPC: Remove xdr_buf_trim()") (Scott Mayhew) [1872310] - [fs] NFSv4: Remove unreachable error condition due to rpc_run_task() (Scott Mayhew) [1872310] - [net] SUNRPC: Remove unreachable error condition (Scott Mayhew) [1872310] - [fs] nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Fix a credential use-after-free issue in pnfs_roc() (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Ensure that _pnfs_return_layout() waits for layoutreturn completion (Scott Mayhew) [1872310] - [net] svcrdma: Fix leak of svc_rdma_recv_ctxt objects (Scott Mayhew) [1872310] - [fs] NFS: Fix an ABBA spinlock issue in pnfs_update_layout() (Scott Mayhew) [1872310] - [net] SUNRPC/cache: Fix unsafe traverse caused double-free in cache_purge (Scott Mayhew) [1872310] - [fs] nfsd: memory corruption in nfsd4_lock() (Scott Mayhew) [1872310] - [fs] pNFS: Fix RCU lock leakage (Scott Mayhew) [1872310] - [fs] NFS: Clean up process of marking inode stale (Scott Mayhew) [1872310] - [fs] NFS: Add softreval behaviour to nfs_lookup_revalidate() (Scott Mayhew) [1872310] - [fs] NFS: Add mount option 'softreval' (Scott Mayhew) [1872310] - [net] SUNRPC: Don't start a timer on an already queued rpc task (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Reference the layout cred in pnfs_prepare_layoutreturn() (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Fix dereference of layout cred in pnfs_layoutcommit_inode() (Scott Mayhew) [1872310] - [fs] NFS: Beware when dereferencing the delegation cred (Scott Mayhew) [1872310] - [fs] NFS: Add a module parameter to set nfs_mountpoint_expiry_timeout (Scott Mayhew) [1872310] - [fs] NFS: Try to join page groups before an O_DIRECT retransmission (Scott Mayhew) [1872310] - [fs] NFS: Refactor nfs_lock_and_join_requests() (Scott Mayhew) [1872310] - [fs] NFS: Reverse the submission order of requests in __nfs_pageio_add_request() (Scott Mayhew) [1872310] - [fs] NFS: Clean up nfs_lock_and_join_requests() (Scott Mayhew) [1872310] - [fs] NFS: Remove the redundant function nfs_pgio_has_mirroring() (Scott Mayhew) [1872310] - [fs] NFS: Fix memory leaks in nfs_pageio_stop_mirroring() (Scott Mayhew) [1872310] - [fs] NFS: Fix a request reference leak in nfs_direct_write_clear_reqs() (Scott Mayhew) [1872310] - [fs] NFS: Fix races nfs_page_group_destroy() vs nfs_destroy_unlinked_subrequests() (Scott Mayhew) [1872310] - [fs] NFS: Remove unused FLUSH_SYNC support in nfs_initiate_pgio() (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Specify the layout segment range in LAYOUTGET (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: remove requirement for whole file layouts (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Check the layout segment range before doing I/O (Scott Mayhew) [1872310] - [fs] pNFS/flexfile: Don't merge layout segments if the mirrors don't match (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Fix pnfs_layout_mark_request_commit() invalid layout segment handling (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Simplify bucket layout segment reference counting (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Clean up pNFS commit operations (Scott Mayhew) [1872310] - [fs] NFS: Remove bucket array from struct pnfs_ds_commit_info (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Add a helper pnfs_generic_search_commit_reqs() (Scott Mayhew) [1872310] - [fs] pNFS: Enable per-layout segment commit structures (Scott Mayhew) [1872310] - [fs] pNFS: Add infrastructure for cleaning up per-layout commit structures (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Support commit arrays in nfs_clear_pnfs_ds_commit_verifiers() (Scott Mayhew) [1872310] - [fs] NFS: Fix O_DIRECT commit verifier handling (Scott Mayhew) [1872310] - [fs] NFS: commit errors should be fatal (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Allow O_DIRECT to release the DS commitinfo (Scott Mayhew) [1872310] - [fs] pNFS: Support per-layout segment commits in pnfs_generic_commit_pagelist() (Scott Mayhew) [1872310] - [fs] pNFS: Support per-layout segment commits in pnfs_generic_recover_commit_reqs() (Scott Mayhew) [1872310] - [fs] NFSv4/pNFS: Scan the full list of commit arrays when committing (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: Support a list of commit arrays in struct pnfs_ds_commit_info (Scott Mayhew) [1872310] - [net] SUNRPC: Fix a potential buffer overflow in 'svc_print_xprts()' (Scott Mayhew) [1872310] - [include] SUNRPC/cache: don't allow invalid entries to be flushed (Scott Mayhew) [1872310] - [fs] pNFS: Add a helper to allocate the array of buckets (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Refactor pnfs_generic_commit_pagelist() (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Simplify allocation of the mirror array (Scott Mayhew) [1872310] - [fs] NFS: Don't specify NFS version in "UDP not supported" error (Scott Mayhew) [1872310] - [fs] nfsroot: set tcp as the default transport protocol (Scott Mayhew) [1872310] - [fs] NFS: direct.c: Fix memory leak of dreq when nfs_get_lock_context fails (Scott Mayhew) [1872310] - [fs] nfs: Fix up documentation in nfs_follow_referral() and nfs_do_submount() (Scott Mayhew) [1872310] - [net] sunrpc: Add tracing for cache events (Scott Mayhew) [1872310] - [net] SUNRPC/cache: Allow garbage collection of invalid cache entries (Scott Mayhew) [1872310] - [net] sunrpc: clean up cache entry add/remove from hashtable (Scott Mayhew) [1872310] - [net] sunrpc: Fix potential leaks in sunrpc_cache_unhash() (Scott Mayhew) [1872310] - [fs] nfsd: export upcalls must not return ESTALE when mountd is down (Scott Mayhew) [1872310] - [fs] nfsd: Don't add locks to closed or closing open stateids (Scott Mayhew) [1872310] - [net] SUNRPC: Teach server to use xprt_sock_sendmsg for socket sends (Scott Mayhew) [1872310] - [net] SUNRPC: Refactor xs_sendpages() (Scott Mayhew) [1872310] - [fs] NFSD: Clean up nfsd4_encode_readv (Scott Mayhew) [1872310] - [fs] fs: nfsd: nfs4state.c: Use built-in RCU list checking (Scott Mayhew) [1872310] - [net] sunrpc: Pass lockdep expression to RCU lists (Scott Mayhew) [1872310] - [include] sunrpc: Replace zero-length array with flexible-array member (Scott Mayhew) [1872310] - [net] SUNRPC: Trim stack utilization in the wrap and unwrap paths (Scott Mayhew) [1872310] - [net] SUNRPC: Remove xdr_buf_read_mic() (Scott Mayhew) [1872310] - [net] sunrpc: Fix gss_unwrap_resp_integ() again (Scott Mayhew) [1872310] - [fs] nfs: Replace zero-length array with flexible-array member (Scott Mayhew) [1872310] - [fs] NFSv4.2: error out when relink swapfile (Scott Mayhew) [1872310] - [fs] NFS:remove redundant call to nfs_do_access (Scott Mayhew) [1872310] - [net] SUNRPC: remove redundant assignments to variable status (Scott Mayhew) [1872310] - [fs] NFSv4: Add support for CB_RECALL_ANY for flexfiles layouts (Scott Mayhew) [1872310] - [fs] NFSv4: Clean up nfs_delegation_reap_expired() (Scott Mayhew) [1872310] - [fs] NFSv4: Clean up nfs_delegation_reap_unclaimed() (Scott Mayhew) [1872310] - [fs] NFSv4: Clean up nfs_client_return_marked_delegations() (Scott Mayhew) [1872310] - [fs] NFS: Add a helper nfs_client_for_each_server() (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: Clean up nfs_layout_find_inode() (Scott Mayhew) [1872310] - [fs] NFSv4: Ensure layout headers are RCU safe (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: Return valid stateids in nfs_layout_find_inode_by_stateid() (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Report DELAY and GRACE errors from the DS to the server (Scott Mayhew) [1872310] - [fs] NFS: Limit the size of the access cache by default (Scott Mayhew) [1872310] - [fs] NFS: Avoid referencing the cred twice in async rename/unlink (Scott Mayhew) [1872310] - [fs] NFSv4: Avoid unnecessary credential references in layoutget (Scott Mayhew) [1872310] - [fs] NFSv4: Avoid referencing the cred unnecessarily during NFSv4 I/O (Scott Mayhew) [1872310] - [fs] NFS: Assume cred is pinned by open context in I/O requests (Scott Mayhew) [1872310] - [net] SUNRPC: Don't take a reference to the cred on synchronous tasks (Scott Mayhew) [1872310] - [net] SUNRPC: Add a flag to avoid reference counts on credentials (Scott Mayhew) [1872310] - [fs] NFS: Ensure we time out if a delegreturn does not complete (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: pnfs_set_layout_stateid() should update the layout cred (Scott Mayhew) [1872310] - [fs] NFSv4: nfs_update_inplace_delegation() should update delegation cred (Scott Mayhew) [1872310] - [fs] NFS: Use the 64-bit server readdir cookies when possible (Scott Mayhew) [1872310] - [net] Documentation: nfsroot.rst: Fix references to nfsroot.rst (Scott Mayhew) [1872310] - [fs] nfs: add missing "posix" local_lock constant table definition (Scott Mayhew) [1622041] - [samples] samples/vfs: avoid warning in statx override (Scott Mayhew) [1622041] - [fs] Fix use after free in get_tree_bdev() (Scott Mayhew) [1622041] - [security] selinux: fix regression introduced by move_mount(2) syscall (Scott Mayhew) [1622041] - [fs] mm/hugetlbfs: fix for_each_hstate() loop in init_hugetlbfs_fs() (Scott Mayhew) [1622041] - [fs] mm/hugetlbfs: fix error handling when setting up mounts (Scott Mayhew) [1622041] - [fs] cramfs: fix usage on non-MTD device (Scott Mayhew) [1622041] - [fs] vfs: move_mount: reject moving kernel internal mounts (Scott Mayhew) [1622041] - [fs] do_move_mount(): fix an unsafe use of is_anon_ns() (Scott Mayhew) [1622041] - [fs] fs/namespace: fix unprivileged mount propagation (Scott Mayhew) [1622041] - [fs] vfs: fsmount: add missing mntget() (Scott Mayhew) [1622041] - [fs] get rid of checking for absent device name in vfs_get_tree() (Scott Mayhew) [1622041] - [scripts] scripts/gdb: replace flags (MS_xyz -> SB_xyz) (Scott Mayhew) [1622041] - [mm] tmpfs: switch to use of invalfc() (Scott Mayhew) [1622041] - [kernel] cgroup1: switch to use of errorfc() et.al (Scott Mayhew) [1622041] - [fs] procfs: switch to use of invalfc() (Scott Mayhew) [1622041] - [fs] hugetlbfs: switch to use of invalfc() (Scott Mayhew) [1622041] - [fs] cramfs: switch to use of errofc() et.al (Scott Mayhew) [1622041] - [fs] gfs2: switch to use of errorfc() et.al (Scott Mayhew) [1622041] - [include] prefix-handling analogues of errorf() and friends (Scott Mayhew) [1622041] - [fs] turn fs_param_is_... into functions (Scott Mayhew) [1622041] - [fs] fs_parse: handle optional arguments sanely (Scott Mayhew) [1622041] - [fs] fs_parse: fold fs_parameter_desc/fs_parameter_spec (Scott Mayhew) [1622041] - [x86] x86/resctrl: Fix typos in the mba_sc mount option (Scott Mayhew) [1622041] - [fs] fs_parser: remove fs_parameter_description name field (Scott Mayhew) [1622041] - [documentation] vfs: Update mount API docs (Scott Mayhew) [1622041] - [fs] add prefix to fs_context->log (Scott Mayhew) [1622041] - [include] new primitive: __fs_parse() (Scott Mayhew) [1622041] - [include] struct p_log, variants of warnf() et.al. taking that one instead (Scott Mayhew) [1622041] - [fs] teach logfc() to handle prefices, give it saner calling conventions (Scott Mayhew) [1622041] - [kernel] get rid of cg_invalf() (Scott Mayhew) [1622041] - [fs] get rid of fs_value_is_filename_empty (Scott Mayhew) [1622041] - [fs] don't bother with explicit length argument for __lookup_constant() (Scott Mayhew) [1622041] - [fs] fold struct fs_parameter_enum into struct constant_table (Scott Mayhew) [1622041] - [fs] fs_parse: get rid of ->enums (Scott Mayhew) [1622041] - [fs] fs: fs_parser: fix printk format warning (Scott Mayhew) [1622041] - [fs] Pass consistent param->type to fs_parse() (Scott Mayhew) [1622041] - [fs] vfs: add missing blkdev_put() in get_tree_bdev() (Scott Mayhew) [1622041] - [mm] shmem: fix LSM options parsing (Scott Mayhew) [1622041] - [fs] gfs2: make gfs2_fs_parameters static (Scott Mayhew) [1622041] - [fs] gfs2: Fix initialisation of args for remount (Scott Mayhew) [1622041] - [fs] gfs2: Fix memory leak when gfs2meta's fs_context is freed (Scott Mayhew) [1622041] - [fs] gfs2: Convert gfs2 to fs_context (Scott Mayhew) [1622041] - [fs] NFS: Fix fscache super_cookie allocation (Scott Mayhew) [1622041] - [fs] NFS: Fix a few constant_table array definitions (Scott Mayhew) [1622041] - [fs] NFS: Fix leak of ctx->nfs_server.hostname (Scott Mayhew) [1622041] - [fs] NFS: Don't hard-code the fs_type when submounting (Scott Mayhew) [1622041] - [fs] NFS: Ensure the fs_context has the correct fs_type before mounting (Scott Mayhew) [1622041] - [fs] nfs: Return EINVAL rather than ERANGE for mount parse errors (Scott Mayhew) [1622041] - [fs] NFS: Attach supplementary error information to fs_context (Scott Mayhew) [1622041] - [fs] NFS: Additional refactoring for fs_context conversion (Scott Mayhew) [1622041] - [fs] NFS: Add fs_context support (Scott Mayhew) [1622041] - [fs] NFS: Convert mount option parsing to use functionality from fs_parser.h (Scott Mayhew) [1622041] - [fs] NFS: rename nfs_fs_context pointer arg in a few functions (Scott Mayhew) [1622041] - [fs] NFS: Do some tidying of the parsing code (Scott Mayhew) [1622041] - [fs] NFS: Add a small buffer in nfs_fs_context to avoid string dup (Scott Mayhew) [1622041] - [fs] NFS: Deindent nfs_fs_context_parse_option() (Scott Mayhew) [1622041] - [fs] NFS: Split nfs_parse_mount_options() (Scott Mayhew) [1622041] - [fs] NFS: Rename struct nfs_parsed_mount_data to struct nfs_fs_context (Scott Mayhew) [1622041] - [fs] NFS: Constify mount argument match tables (Scott Mayhew) [1622041] - [fs] NFS: Move mount parameterisation bits into their own file (Scott Mayhew) [1622041] - [fs] nfs: get rid of ->set_security() (Scott Mayhew) [1622041] - [fs] nfs_clone_sb_security(): simplify the check for server bogosity (Scott Mayhew) [1622041] - [fs] nfs: get rid of mount_info ->fill_super() (Scott Mayhew) [1622041] - [fs] nfs: don't pass nfs_subversion to ->create_server() (Scott Mayhew) [1622041] - [fs] nfs: unexport nfs_fs_mount_common() (Scott Mayhew) [1622041] - [fs] nfs: merge xdev and remote file_system_type (Scott Mayhew) [1622041] - [fs] nfs: don't bother passing nfs_subversion to ->try_mount() and nfs_fs_mount_common() (Scott Mayhew) [1622041] - [fs] nfs: stash nfs_subversion reference into nfs_mount_info (Scott Mayhew) [1622041] - [fs] nfs: lift setting mount_info from nfs_xdev_mount() (Scott Mayhew) [1622041] - [fs] nfs4: fold nfs_do_root_mount/nfs_follow_remote_path (Scott Mayhew) [1622041] - [fs] nfs: don't bother setting/restoring export_path around do_nfs_root_mount() (Scott Mayhew) [1622041] - [fs] nfs: fold nfs4_remote_fs_type and nfs4_remote_referral_fs_type (Scott Mayhew) [1622041] - [fs] nfs: lift setting mount_info from nfs4_remote{, _referral}_mount (Scott Mayhew) [1622041] - [fs] nfs: stash server into struct nfs_mount_info (Scott Mayhew) [1622041] - [fs] saner calling conventions for nfs_fs_mount_common() (Scott Mayhew) [1622041] - [fs] NFS: Make "port=" mount option optional for RDMA mounts (Scott Mayhew) [1622041] - [fs] vfs: Make fs_parse() handle fs_param_is_fd-type params better (Scott Mayhew) [1622041] - [include] vfs: Convert ramfs, shmem, tmpfs, devtmpfs, rootfs to use the new mount API (Scott Mayhew) [1622041] - [mm] shmem_parse_one(): switch to use of fs_parse() (Scott Mayhew) [1622041] - [mm] shmem_parse_options(): take handling a single option into a helper (Scott Mayhew) [1622041] - [mm] shmem_parse_options(): don't bother with mpol in separate variable (Scott Mayhew) [1622041] - [mm] shmem_parse_options(): use a separate structure to keep the results (Scott Mayhew) [1622041] - [base] make shmem_fill_super() static (Scott Mayhew) [1622041] - [fs] make ramfs_fill_super() static (Scott Mayhew) [1622041] - [base] devtmpfs: don't mix {ramfs, shmem}_fill_super() with mount_single() (Scott Mayhew) [1622041] - [fs] vfs: Convert squashfs to use the new mount API (Scott Mayhew) [1622041] - [mtd] mtd: Kill mount_mtd() (Scott Mayhew) [1622041] - [fs] vfs: Convert cramfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Add a single-or-reconfig keying to vfs_get_super() (Scott Mayhew) [1622041] - [mtd] mtd: Provide fs_context-aware mount_mtd() replacement (Scott Mayhew) [1622041] - [fs] vfs: Create fs_context-aware mount_bdev() replacement (Scott Mayhew) [1622041] - [fs] new helper: get_tree_keyed() (Scott Mayhew) [1622041] - [fs] vfs: set fs_context::user_ns for reconfigure (Scott Mayhew) [1622041] - [init] mnt_init(): call shmem_init() unconditionally (Scott Mayhew) [1622041] - [base] constify ksys_mount() string arguments (Scott Mayhew) [1622041] - [fs] don't bother with registering rootfs (Scott Mayhew) [1622041] - [fs] init_rootfs(): don't bother with init_ramfs_fs() (Scott Mayhew) [1622041] - [security] vfs: Convert selinuxfs to use the new mount API (Scott Mayhew) [1622041] - [security] vfs: Convert securityfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert openpromfs to use the new mount API (Scott Mayhew) [1622041] - [xen] vfs: Convert xenfs to use the new mount API (Scott Mayhew) [1622041] - [oprofile] vfs: Convert oprofilefs to use the new mount API (Scott Mayhew) [1622041] - [misc] vfs: Convert ibmasmfs to use the new mount API (Scott Mayhew) [1622041] - [infiniband] vfs: Convert qib_fs/ipathfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert efivarfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert configfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert binfmt_misc to use the new mount API (Scott Mayhew) [1622041] - [fs] convenience helper: get_tree_single() (Scott Mayhew) [1622041] - [fs] convenience helper get_tree_nodev() (Scott Mayhew) [1622041] - [fs] vfs: Kill sget_userns() (Scott Mayhew) [1622041] - [fs] vfs: Use sget_fc() for pseudo-filesystems (Scott Mayhew) [1622041] - [dma-buf] fold mount_pseudo_xattr() into pseudo_fs_get_tree() (Scott Mayhew) [1622041] - [virtio] vfs: Convert virtio_balloon to use the new mount API (Scott Mayhew) [1622041] - [scsi] vfs: Convert ocxlflash to use the new mount API (Scott Mayhew) [1622041] - [misc] vfs: Convert cxl to use the new mount API (Scott Mayhew) [1622041] - [drm] vfs: Convert drm to use the new mount API (Scott Mayhew) [1622041] - [dax] vfs: Convert dax to use the new mount API (Scott Mayhew) [1622041] - [net] vfs: Convert sockfs to use the new mount API (Scott Mayhew) [1622041] - [mm] vfs: Convert zsmalloc to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert pipe to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert nsfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert bdev to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert anon_inodes to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert aio to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Provide a mount_pseudo-replacement for the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Provide sb->s_iflags settings in fs_context struct (Scott Mayhew) [1622041] - [fs] vfs: Fix refcounting of filenames in fs_parser (Scott Mayhew) [1622041] - [fs] move mount_capable() further out (Scott Mayhew) [1622041] - [fs] move mount_capable() calls to vfs_get_tree() (Scott Mayhew) [1622041] - [kernel] cpuset: move mount -t cpuset logics into cgroup.c (Scott Mayhew) [1622041] - [fs] procfs: set ->user_ns before calling ->get_tree() (Scott Mayhew) [1622041] - [ipc] mqueue: set ->user_ns before ->get_tree() (Scott Mayhew) [1622041] - [fs] switch mount_capable() to fs_context (Scott Mayhew) [1622041] - [fs] legacy_get_tree(): pass fc->user_ns to mount_capable() (Scott Mayhew) [1622041] - [fs] move the capability checks from sget_userns() to legacy_get_tree() (Scott Mayhew) [1622041] - [fs] vfs: Kill mount_ns() (Scott Mayhew) [1622041] - [fs] vfs: Convert nfsctl to use the new mount API (Scott Mayhew) [1622041] - [net] vfs: Convert rpc_pipefs to use the new mount API (Scott Mayhew) [1622041] - [fs] consolidate the capability checks in sget_{fc, userns}() (Scott Mayhew) [1622041] - [fs] start massaging the checks in sget_...(): move to sget_userns() (Scott Mayhew) [1622041] - [x86] no need to protect against put_user_ns(NULL) (Scott Mayhew) [1622041] - [fs] mount_pseudo(): drop 'name' argument, switch to d_make_root() (Scott Mayhew) [1622041] - [mm] zsmalloc: don't bother with dentry_operations (Scott Mayhew) [1622041] - [virtio] balloon: don't bother with dentry_operations (Scott Mayhew) [1622041] - [scsi] cxlflash: don't bother with dentry_operations (Scott Mayhew) [1622041] - [misc] cxl: don't bother with dentry_operations (Scott Mayhew) [1622041] - [fs] fs: VALIDATE_FS_PARSER should default to n (Scott Mayhew) [1622041] - [security] selinux: fix a missing-check bug in selinux_sb_eat_lsm_opts() (Scott Mayhew) [1622041] - [security] selinux: fix a missing-check bug in selinux_add_mnt_opt( ) (Scott Mayhew) [1622041] - [powerpc] uapi: Wire up the mount API syscalls on non-x86 arches (Scott Mayhew) [1622041] - [x86] uapi, x86: Fix the syscall numbering of the mount API syscalls (Scott Mayhew) [1622041] - [fs] uapi, fsopen: use square brackets around "fscontext" (Scott Mayhew) [1622041] - [samples] vfs: Add a sample program for the new mount API (Scott Mayhew) [1622041] - [x86] vfs: syscall: Add fspick() to select a superblock for reconfiguration (Scott Mayhew) [1622041] - [x86] vfs: syscall: Add fsmount() to create a mount for a superblock (Scott Mayhew) [1622041] - [fs] vfs: syscall: Add fsconfig() for configuring and managing a context (Scott Mayhew) [1622041] - [fs] vfs: Implement logging through fs_context (Scott Mayhew) [1622041] - [fs] vfs: syscall: Add fsopen() to prepare for superblock creation (Scott Mayhew) [1622041] - [fs] Make anon_inodes unconditional (Scott Mayhew) [1622041] - [fs] teach move_mount(2) to work with OPEN_TREE_CLONE (Scott Mayhew) [1622041] - [x86] vfs: syscall: Add move_mount(2) to move mounts around (Scott Mayhew) [1622041] - [fs] vfs: syscall: Add open_tree(2) to reference or clone a mount (Scott Mayhew) [1622041] - [fs] fix sysfs_init_fs_context() in !CONFIG_NET_NS case (Scott Mayhew) [1622041] - [fs] vfs: Add some logging to the core users of the fs_context log (Scott Mayhew) [1622041] - [fs] vfs: Implement logging through fs_context (Scott Mayhew) [1622041] - [documentation] vfs: Provide documentation for new mount API (Scott Mayhew) [1622041] - [fs] vfs: Remove kern_mount_data() (Scott Mayhew) [1622041] - [fs] hugetlbfs: Convert to fs_context (Scott Mayhew) [1622041] - [kernel] cpuset: Use fs_context (Scott Mayhew) [1622041] - [fs] kernfs, sysfs, cgroup, intel_rdt: Support fs_context (Scott Mayhew) [1622041] - [kernel] cgroup: store a reference to cgroup_ns into cgroup_fs_context (Scott Mayhew) [1622041] - [kernel] cgroup1_get_tree(): separate "get cgroup_root to use" into a separate helper (Scott Mayhew) [1622041] - [kernel] cgroup_do_mount(): massage calling conventions (Scott Mayhew) [1622041] - [kernel] cgroup: stash cgroup_root reference into cgroup_fs_context (Scott Mayhew) [1622041] - [kernel] cgroup2: switch to option-by-option parsing (Scott Mayhew) [1622041] - [kernel] cgroup1: switch to option-by-option parsing (Scott Mayhew) [1622041] - [kernel] cgroup: take options parsing into ->parse_monolithic() (Scott Mayhew) [1622041] - [kernel] cgroup: fold cgroup1_mount() into cgroup1_get_tree() (Scott Mayhew) [1622041] - [kernel] cgroup: start switching to fs_context (Scott Mayhew) [1622041] - [ipc] ipc: Convert mqueue fs to fs_context (Scott Mayhew) [1622041] - [fs] proc: Add fs_context support to procfs (Scott Mayhew) [1622041] - [fs] procfs: Move proc_fill_super() to fs/proc/root.c (Scott Mayhew) [1622041] - [include] introduce cloning of fs_context (Scott Mayhew) [1622041] - [fs] convenience helpers: vfs_get_super() and sget_fc() (Scott Mayhew) [1622041] - [fs] vfs: Implement a filesystem superblock creation/configuration context (Scott Mayhew) [1622041] - [include] vfs: Put security flags into the fs_context struct (Scott Mayhew) [1622041] - [security] selinux: Implement the new mount API LSM hooks (Scott Mayhew) [1622041] - [include] vfs: Add LSM hooks for the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Add configuration parser helpers (Scott Mayhew) [1622041] - [include] vfs: Introduce logging functions (Scott Mayhew) [1622041] - [fs] introduce fs_context methods (Scott Mayhew) [1622041] - [fs] fs_context flavour for submounts (Scott Mayhew) [1622041] - [fs] convert do_remount_sb() to fs_context (Scott Mayhew) [1622041] - [fs] vfs_get_tree(): evict the call of security_sb_kern_mount() (Scott Mayhew) [1622041] - [fs] new helper: do_new_mount_fc() (Scott Mayhew) [1622041] - [fs] teach vfs_get_tree() to handle subtype, switch do_new_mount() to it (Scott Mayhew) [1622041] - [fs] new helpers: vfs_create_mount(), fc_mount() (Scott Mayhew) [1622041] - [fs] vfs: Introduce fs_context, switch vfs_kern_mount() to it (Scott Mayhew) [1622041] - [fs] saner handling of temporary namespaces (Scott Mayhew) [1622041] - [fs] separate copying and locking mount tree on cross-userns copies (Scott Mayhew) [1622041] - [fs] kill kernfs_pin_sb() (Scott Mayhew) [1622041] - [fs] mount_fs: suppress MAC on MS_SUBMOUNT as well as MS_KERNMOUNT (Scott Mayhew) [1622041] - [security] LSM: new method: ->sb_add_mnt_opt() (Scott Mayhew) [1622041] - [security] selinux: rewrite selinux_sb_eat_lsm_opts() (Scott Mayhew) [1622041] - [security] selinux: regularize Opt_... names a bit (Scott Mayhew) [1622041] - [security] selinux: switch away from match_token() (Scott Mayhew) [1622041] - [security] selinux: new helper - selinux_add_opt() (Scott Mayhew) [1622041] - [include] LSM: bury struct security_mnt_opts (Scott Mayhew) [1622041] - [security] selinux: switch to private struct selinux_mnt_opts (Scott Mayhew) [1622041] - [fs] LSM: hide struct security_mnt_opts from any generic code (Scott Mayhew) [1622041] - [security] LSM: turn sb_eat_lsm_opts() into a method (Scott Mayhew) [1622041] - [fs] nfs_remount(): don't leak, don't ignore LSM options quietly (Scott Mayhew) [1622041] - [security] LSM: split ->sb_set_mnt_opts() out of ->sb_kern_mount() (Scott Mayhew) [1622041] - [fs] new helper: security_sb_eat_lsm_opts() (Scott Mayhew) [1622041] - [security] LSM: lift extracting and parsing LSM options into the caller of ->sb_remount() (Scott Mayhew) [1622041] - [security] LSM: lift parsing LSM options into the caller of ->sb_kern_mount() (Scott Mayhew) [1622041] - [fs] vfs: Separate changing mount flags full remount (Scott Mayhew) [1622041] - [fs] vfs: Suppress MS_* flag defs within the kernel unless explicitly enabled (Scott Mayhew) [1622041]- [hv] hv_utils: drain the timesync packets on onchannelcallback (Vitaly Kuznetsov) [1884733] - [hv] hv_utils: return error if host timesysnc update is stale (Vitaly Kuznetsov) [1884733] - [netdrv] hv_netvsc: Cache the current data path to avoid duplicate call and message (Mohammed Gamal) [1876527] - [netdrv] hv_netvsc: Switch the data path at the right time during hibernation (Mohammed Gamal) [1876527] - [netdrv] hv_netvsc: Fix hibernation for mlx5 VF driver (Mohammed Gamal) [1876527] - [hv] hv: vmbus: hibernation: do not hang forever in vmbus_bus_resume() (Mohammed Gamal) [1876519] - [target] scsi: target: Fix lun lookup for TARGET_SCF_LOOKUP_LUN_FROM_TAG case (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix hang in iscsit_access_np() when getting tpg->np_login_sem (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix data digest calculation (Maurizio Lombardi) [1880395] - [target] scsi: target: Make iscsit_register_transport() return void (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Make TMR notification optional (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Implement tmr_notify callback (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix and simplify timeout handling (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Factor out new helper ring_insert_padding (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Do not queue aborted commands (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Use priv pointer in se_cmd (Maurizio Lombardi) [1880395] - [target] scsi: target: Add tmr_notify backend function (Maurizio Lombardi) [1880395] - [target] scsi: target: Modify core_tmr_abort_task() (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix inconsistent debug message (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix login error when receiving (Maurizio Lombardi) [1880395] - [target] scsi: target: Remove unused variable 'tpg' (Maurizio Lombardi) [1880395] - [target] scsi: target: cxgbit: Remove tx flow control code (Maurizio Lombardi) [1880395] - [target] scsi: target: cxgbit: Check connection state before issuing hardware command (Maurizio Lombardi) [1880395] - [target] scsi: target: Handle short iSIDs (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix iscsi transport id buf len calculation (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix iscsi transport id buffer setup (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix iscsi transport id parsing (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix crash during SPEC_I_PT handling (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix xcopy sess release leak (Maurizio Lombardi) [1880395] - [target] scsi: target: Check enforce_pr_isids during registration (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix crash on ARM during cmd completion (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix crash in tcmu_flush_dcache_range on ARM (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Optimize use of flush_dcache_page (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Remove unnecessary bit TCMU_CMD_BIT_INFLIGHT (Maurizio Lombardi) [1880395] - [target] scsi: target: Rename target_setup_cmd_from_cdb() to target_cmd_parse_cdb() (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix NULL pointer dereference (Maurizio Lombardi) [1880395] - [target] scsi: target: Initialize LUN in transport_init_se_cmd() (Maurizio Lombardi) [1880395] - [target] scsi: target: Factor out a new helper, target_cmd_init_cdb() (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix size in calls to tcmu_flush_dcache_range (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix a use after free in tcmu_check_expired_queue_cmd() (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Userspace must not complete queued commands (Maurizio Lombardi) [1880395] - [target] scsi: target: core: Add initiatorname to NON_EXISTENT_LUN error (Maurizio Lombardi) [1880395] - [target] scsi: target: loopback: Fix READ with data and sensebytes (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Make pgr_support and alua_support attributes writable (Maurizio Lombardi) [1880395] - [target] scsi: target: Make transport_flags per device (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Add attributes enforce_pr_isids and force_pr_aptpl (Maurizio Lombardi) [1880395] - [target] scsi: target: Add missing emulate_pr attribute to passthrough backends (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Remove the iscsi_data_count structure (Maurizio Lombardi) [1880395] - [target] scsi: target: Put lun_ref at end of tmr processing (Maurizio Lombardi) [1880395] - [target] scsi: target/iblock: fix WRITE SAME zeroing (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: reset_ring should reset TCMU_DEV_BIT_BROKEN (Maurizio Lombardi) [1880395] - [target] scsi: target: fix PR IN / READ FULL STATUS for FC (Maurizio Lombardi) [1880395] - [target] scsi: target: Write NULL to *port_nexus_ptr if no ISID (Maurizio Lombardi) [1880395] - [target] scsi: target: use the stack for XCOPY passthrough cmds (Maurizio Lombardi) [1880395] - [target] scsi: target: increase XCOPY I/O size (Maurizio Lombardi) [1880395] - [target] scsi: target: avoid per-loop XCOPY buffer allocations (Maurizio Lombardi) [1880395] - [target] scsi: target: drop xcopy DISK BLOCK LENGTH debug (Maurizio Lombardi) [1880395] - [target] scsi: target: use #define for xcopy descriptor len (Maurizio Lombardi) [1880395] - [crypto] crypto: testmgr - mark cts(cbc(aes)) as FIPS allowed (Vladis Dronov) [1855161] - [kernel] sched/deadline: Unthrottle PI boosted threads while enqueuing (Daniel Bristot de Oliveira) [1869760] - [kernel] sched/deadline: Fix stale throttling on de-/boosted tasks (Daniel Bristot de Oliveira) [1869760] - [netdrv] treewide: Use fallthrough pseudo-keyword (Jonathan Toppins) [1871286] - [netdrv] tg3: Avoid the use of one-element array (Jonathan Toppins) [1871286] - [netdrv] net: tg3: tidy up loop, remove need to compute off with a multiply (Jonathan Toppins) [1871286] - [netdrv] net: tg3: reject unsupported coalescing params (Jonathan Toppins) [1871286] - [netdrv] net: tg3: use skb_list_walk_safe helper for gso segments (Jonathan Toppins) [1871286] - [gpio] gpio: gpio-mlxbf2.c: Provide __releases() annotation to stop confusing Sparse (Alaa Hleihel) [1816931] - [gpio] gpio: gpio-mlxbf2: Tell the compiler that ACPI functions may not be use (Alaa Hleihel) [1816931] - [gpio] gpio: mlxbf2: Fix sleeping while holding spinlock (Alaa Hleihel) [1816931] - [gpio] gpio: mlxbf2: fix return value check in mlxbf2_gpio_get_lock_res() (Alaa Hleihel) [1816931] - [gpio] gpio: mlxbf2: remove unused including (Alaa Hleihel) [1816931] - [gpio] gpio: add driver for Mellanox BlueField 2 GPIO controller (Alaa Hleihel) [1816931] - [include] compiler_attributes.h: Add 'fallthrough' pseudo keyword for switch/case use (Ivan Vecera) [1867168] - [net] net: sctp: Rename fallthrough label to unhandled (Ivan Vecera) [1867168]- [pci] PCI: Mark AMD Navi10 GPU rev 0x00 ATS as broken (Myron Stowe) [1888310] - [netdrv] nfp: flower: fix ABI mismatch between driver and firmware (Ivan Vecera) [1886717] - [netdrv] netronome: fix ipv6 link error (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix incorrect flag assignment (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix used time of merge flow statistics (Ivan Vecera) [1886717] - [netdrv] nfp: flower: inform firmware of flower features (Ivan Vecera) [1886717] - [netdrv] nfp: flower: renaming of feature bits (Ivan Vecera) [1886717] - [netdrv] nfp: don't check lack of RX/TX channels (Ivan Vecera) [1886717] - [netdrv] nfp: abm: fix error return code in nfp_abm_vnic_alloc() (Ivan Vecera) [1886717] - [netdrv] nfp: abm: fix a memory leak bug (Ivan Vecera) [1886717] - [netdrv] net/nfp: Update driver to use global kernel version (Ivan Vecera) [1886717] - [netdrv] nfp: allow explicitly selected delayed stats (Ivan Vecera) [1886717] - [netdrv] net: nfp: Use scnprintf() for avoiding potential buffer overflow (Ivan Vecera) [1886717] - [netdrv] nfp: let core reject the unsupported coalescing parameters (Ivan Vecera) [1886717] - [netdrv] nfp: Use pci_get_dsn() (Ivan Vecera) [1886717] - [netdrv] netronome: Replace zero-length array with flexible-array member (Ivan Vecera) [1886717] - [netdrv] devlink: move devlink documentation to subfolder (Ivan Vecera) [1886717] - [netdrv] remove ioremap_nocache and devm_ioremap_nocache (Ivan Vecera) [1886717] - [netdrv] nfp: tls: implement the stream sync RX resync (Ivan Vecera) [1886717] - [netdrv] nfp: pass packet pointer to nfp_net_parse_meta() (Ivan Vecera) [1886717] - [netdrv] nfp: flower: update flow merge code to support IPv6 tunnels (Ivan Vecera) [1886717] - [netdrv] nfp: flower: support ipv6 tunnel keep-alive messages from fw (Ivan Vecera) [1886717] - [netdrv] nfp: flower: handle notifiers for ipv6 route changes (Ivan Vecera) [1886717] - [netdrv] nfp: flower: handle ipv6 tunnel no neigh request (Ivan Vecera) [1886717] - [netdrv] nfp: flower: modify pre-tunnel and set tunnel action for ipv6 (Ivan Vecera) [1886717] - [netdrv] nfp: flower: offload list of IPv6 tunnel endpoint addresses (Ivan Vecera) [1886717] - [netdrv] nfp: flower: compile match for IPv6 tunnels (Ivan Vecera) [1886717] - [netdrv] nfp: flower: move udp tunnel key match compilation to helper function (Ivan Vecera) [1886717] - [netdrv] nfp: flower: pass flow rule pointer directly to match functions (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix stats id allocation (Ivan Vecera) [1886717] - [netdrv] netronome: use the new txqueue timeout argument (Ivan Vecera) [1886717] - [netdrv] nfp: add support for TLV device stats (Ivan Vecera) [1886717] - [netdrv] treewide: Use sizeof_field() macro (Ivan Vecera) [1886717] - [netdrv] net: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Ivan Vecera) [1886717] - [netdrv] nfp: bpf: make array exp_mask static, makes object smaller (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix memory leak in nfp_flower_spawn_vnic_reprs (Ivan Vecera) [1886717] - [netdrv] nfp: flower: prevent memory leak in nfp_flower_spawn_phy_reprs (Ivan Vecera) [1886717] - [netdrv] nfp: read chip model from the PluDevice register (Ivan Vecera) [1886717] - [netdrv] nfp: devlink: set unknown fw_load_policy (Ivan Vecera) [1886717] - [documentation] Documentation: nfp: add nfp driver specific notes (Ivan Vecera) [1886717] - [netdrv] kdoc: fix nfp_fw_load documentation (Ivan Vecera) [1886717] - [netdrv] nfp: devlink: add 'reset_dev_on_drv_probe' support (Ivan Vecera) [1886717] - [netdrv] nfp: devlink: add 'fw_load_policy' support (Ivan Vecera) [1886717] - [netdrv] nfp: add devlink param infrastructure (Ivan Vecera) [1886717] - [netdrv] nfp: honor FW reset and loading policies (Ivan Vecera) [1886717] - [netdrv] nfp: nsp: add support for hwinfo set operation (Ivan Vecera) [1886717] - [netdrv] nfp: nsp: add support for optional hwinfo lookup (Ivan Vecera) [1886717] - [netdrv] nfp: nsp: add support for fw_loaded command (Ivan Vecera) [1886717] - [netdrv] nfp: bpf: add simple map op cache (Ivan Vecera) [1886717] - [netdrv] nfp: bpf: rework MTU checking (Ivan Vecera) [1886717] - [netdrv] net: Use skb accessors in network drivers (Ivan Vecera) [1886717] - [netdrv] nfp: tls: rename tls packet counters (Ivan Vecera) [1886717] - [netdrv] nfp: tls: undo TLS sequence tracking when dropping the frame (Ivan Vecera) [1886717] - [netdrv] nfp: tls: avoid one of the ifdefs for TLS (Ivan Vecera) [1886717] - [netdrv] nfp: tls: don't leave key material in freed FW cmsg skbs (Ivan Vecera) [1886717] - [netdrv] nfp: tls: count TSO segments separately for the TLS offload (Ivan Vecera) [1886717] - [netdrv] nfp: tls: use unique connection ids instead of 4-tuple for TX (Ivan Vecera) [1886717] - [netdrv] nfp: tls: move setting ipver_vlan to a helper (Ivan Vecera) [1886717] - [netdrv] nfp: tls: ignore queue limits for delete commands (Ivan Vecera) [1886717] - [netdrv] nfp: tls: fix error return code in nfp_net_tls_add() (Ivan Vecera) [1886717] - [netdrv] nfp: tls: enable TLS RX offload (Ivan Vecera) [1886717] - [netdrv] net/tls: don't clear TX resync flag on error (Ivan Vecera) [1886717] - [netdrv] net/tls: add tracing for device/offload events (Ivan Vecera) [1886717] - [netdrv] nfp: tls: make use of kernel-driven TX resync (Ivan Vecera) [1886717] - [netdrv] net/tls: generalize the resync callback (Ivan Vecera) [1886717] - [netdrv] nfp: tls: implement RX TLS resync (Ivan Vecera) [1886717] - [netdrv] nfp: add async version of mailbox communication (Ivan Vecera) [1886717] - [netdrv] nfp: rename nfp_ccm_mbox_alloc() (Ivan Vecera) [1886717] - [netdrv] nfp: tls: set skb decrypted flag (Ivan Vecera) [1886717] - [netdrv] nfp: tls: add basic statistics (Ivan Vecera) [1886717] - [netdrv] nfp: tls: add/delete TLS TX connections (Ivan Vecera) [1886717] - [netdrv] nfp: tls: add datapath support for TLS TX (Ivan Vecera) [1886717] - [netdrv] nfp: flower: use struct_size() helper (Ivan Vecera) [1886717] - [netdrv] nfp: add missing kdoc (Ivan Vecera) [1886717] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Ivan Vecera) [1886717] - [iommu] iommu/amd: Fix the overwritten field in IVMD header (Baoquan He) [1869148] - [powerpc] pseries/drmem: don't cache node id in drmem_lmb struct (Diego Domingos) [1816543] - [include] cgroup: Fix sock_cgroup_data on big-endian (Vladis Dronov) [1868659] {CVE-2020-14356} - [include] cgroup: fix cgroup_sk_alloc() for sk_clone_lock() (Vladis Dronov) [1868659] {CVE-2020-14356} - [net] netprio_cgroup: Fix unlimited memory leak of v2 cgroups (Vladis Dronov) [1868659] {CVE-2020-14356} - [netdrv] net/broadcom: Clean broadcom code from driver versions (Jonathan Toppins) [1872443]- [net] Bluetooth: fix kernel oops in store_pending_adv_report (Gopal Tiwari) [1888455] {CVE-2020-24490} - [net] Bluetooth: L2CAP: Fix calling sk_filter on non-socket based channel (Gopal Tiwari) [1888258] {CVE-2020-12351} - [net] Bluetooth: A2MP: Fix not initializing all members (Gopal Tiwari) [1888807] {CVE-2020-12352} - [mm] mm, compaction: make capture control handling safe wrt interrupts (Rafael Aquini) [1862175] - [mm] mm/compaction: fix a typo in comment "pessemistic"->"pessimistic" (Rafael Aquini) [1862175] - [mm] mm/compaction: add missing annotation for compact_lock_irqsave (Rafael Aquini) [1862175] - [mm] mm/compaction.c: clean code by removing unnecessary assignment (Rafael Aquini) [1862175] - [kernel] mm/compaction: Disable compact_unevictable_allowed on RT (Rafael Aquini) [1862175] - [kernel] mm/compaction: really limit compact_unevictable_allowed to 0 and 1 (Rafael Aquini) [1862175] - [mm] mm, compaction: fully assume capture is not NULL in compact_zone_order() (Rafael Aquini) [1862175] - [mm] mm, compaction: fix wrong pfn handling in __reset_isolation_pfn() (Rafael Aquini) [1862175] - [mm] mm/compaction.c: remove unnecessary zone parameter in isolate_migratepages() (Rafael Aquini) [1862175] - [mm] mm: compaction: avoid 100 CPU usage during compaction when a task is killed (Rafael Aquini) [1862175] - [mm] mm, compaction: make sure we isolate a valid PFN (Rafael Aquini) [1862175] - [mm] mm/compaction.c: correct zone boundary handling when isolating pages from a pageblock (Rafael Aquini) [1862175] - [trace] mm, compaction: some tracepoints should be defined only when CONFIG_COMPACTION is set (Rafael Aquini) [1862175] - [trace] mm: compaction: show gfp flag names in try_to_compact_pages tracepoint (Rafael Aquini) [1862175] - [mm] mm/compaction.c: fix an undefined behaviour (Rafael Aquini) [1862175] - [mm] mm, page_alloc: always use a captured page regardless of compaction result (Rafael Aquini) [1862175] - [mm] mm/compaction.c: abort search if isolation fails (Rafael Aquini) [1862175] - [mm] mm/compaction.c: correct zone boundary handling when resetting pageblock skip hints (Rafael Aquini) [1862175] - [include] include/linux/list.h: fix list_is_first() kernel-doc (Rafael Aquini) [1862175] - [mm] mm/compaction: pass pgdat to too_many_isolated() instead of zone (Rafael Aquini) [1862175] - [mm] mm: remove zone_lru_lock() function, access ->lru_lock directly (Rafael Aquini) [1862175] - [mm] mm, compaction: capture a page under direct compaction (Rafael Aquini) [1862175] - [mm] mm, compaction: be selective about what pageblocks to clear skip hints (Rafael Aquini) [1862175] - [mm] mm, compaction: sample pageblocks for free pages (Rafael Aquini) [1862175] - [mm] mm, compaction: round-robin the order while searching the free lists for a target (Rafael Aquini) [1862175] - [mm] mm, compaction: reduce premature advancement of the migration target scanner (Rafael Aquini) [1862175] - [mm] mm, compaction: do not consider a need to reschedule as contention (Rafael Aquini) [1862175] - [mm] mm, compaction: rework compact_should_abort as compact_check_resched (Rafael Aquini) [1862175] - [mm] mm, compaction: keep cached migration PFNs synced for unusable pageblocks (Rafael Aquini) [1862175] - [mm] mm, compaction: check early for huge pages encountered by the migration scanner (Rafael Aquini) [1862175] - [mm] mm, compaction: finish pageblock scanning on contention (Rafael Aquini) [1862175] - [mm] mm, compaction: avoid rescanning the same pageblock multiple times (Rafael Aquini) [1862175] - [mm] mm, compaction: use free lists to quickly locate a migration target (Rafael Aquini) [1862175] - [mm] mm, compaction: keep migration source private to a single compaction instance (Rafael Aquini) [1862175] - [mm] mm, compaction: use free lists to quickly locate a migration source (Rafael Aquini) [1862175] - [mm] mm, compaction: always finish scanning of a full pageblock (Rafael Aquini) [1862175] - [mm] mm, migrate: immediately fail migration of a page with no migration handler (Rafael Aquini) [1862175] - [mm] mm, compaction: rename map_pages to split_map_pages (Rafael Aquini) [1862175] - [mm] mm, compaction: remove unnecessary zone parameter in some instances (Rafael Aquini) [1862175] - [mm] mm, compaction: remove last_migrated_pfn from compact_control (Rafael Aquini) [1862175] - [mm] mm, compaction: rearrange compact_control (Rafael Aquini) [1862175] - [mm] mm, compaction: shrink compact_control (Rafael Aquini) [1862175] - [kernel] mm: remove sysctl_extfrag_handler() (Rafael Aquini) [1862175] - [net] netlink: fix state reallocation in policy export (Petr Oros) [1874050] - [net] netlink: add infrastructure to expose policies to userspace (Petr Oros) [1874050] - [lib] netlink: factor out policy range helpers (Petr Oros) [1874050] - [net] netlink: remove NLA_EXACT_LEN_WARN (Petr Oros) [1874050] - [include] netlink: allow NLA_MSECS to have range validation (Petr Oros) [1874050] - [net] netlink: extend policy range validation (Petr Oros) [1874050] - [net] nl80211: link recursive netlink nested policy (Petr Oros) [1874050] - [lib] netlink: limit recursion depth in policy validation (Petr Oros) [1874050] - [net] netlink: remove type-unsafe validation_data pointer (Petr Oros) [1874050] - [powerpc] powerpc/pseries: new lparcfg key/value pair: partition_affinity_score (Steve Best) [1879420] - [powerpc] powerpc/perf: consolidate GPCI hcall structs into asm/hvcall.h (Steve Best) [1879420] - [include] iopoll: Introduce read_poll_timeout_atomic macro (Patrick Talbert) [1879211] - [include] iopoll: redefined readx_poll_timeout macro to simplify the code (Patrick Talbert) [1879211] - [include] iopoll: introduce read_poll_timeout macro (Patrick Talbert) [1879211] - [infiniband] IB/ipoib: Fix double free of skb in case of multicast traffic in CM mode (Kamal Heib) [1857600] - [infiniband] RDMA/core: Fix double destruction of uobject (Kamal Heib) [1857600] - [infiniband] RDMA/pvrdma: Fix missing pci disable in pvrdma_pci_probe() (Kamal Heib) [1857600] - [net] xprtrdma: Fix use of xdr_stream_encode_item_{present, absent} (Kamal Heib) [1857600] - [net] xprtrdma: Fix trace point use-after-free race (Kamal Heib) [1857600] - [net] xprtrdma: Restore wake-up-all to rpcrdma_cm_event_handler() (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Fix missing RDMA_CM_EVENT_REJECTED event after receiving REJ message (Kamal Heib) [1857600] - [net] xprtrdma: kmalloc rpcrdma_ep separate from rpcrdma_xprt (Kamal Heib) [1857600] - [net] xprtrdma: Extract sockaddr from struct rdma_cm_id (Kamal Heib) [1857600] - [net] xprtrdma: Merge struct rpcrdma_ia into struct rpcrdma_ep (Kamal Heib) [1857600] - [net] xprtrdma: Disconnect on flushed completion (Kamal Heib) [1857600] - [net] xprtrdma: Remove rpcrdma_ia::ri_flags (Kamal Heib) [1857600] - [net] xprtrdma: Invoke rpcrdma_ia_open in the connect worker (Kamal Heib) [1857600] - [net] xprtrdma: Allocate Protection Domain in rpcrdma_ep_create() (Kamal Heib) [1857600] - [net] xprtrdma: Refactor rpcrdma_ep_connect() and rpcrdma_ep_disconnect() (Kamal Heib) [1857600] - [net] xprtrdma: Clean up the post_send path (Kamal Heib) [1857600] - [net] xprtrdma: Refactor frwr_init_mr() (Kamal Heib) [1857600] - [net] xprtrdma: Invoke rpcrdma_ep_create() in the connect worker (Kamal Heib) [1857600] - [net] xprtrdma: Enhance MR-related trace points (Kamal Heib) [1857600] - [infiniband] IB/iser: Always check sig MR before putting it to the free pool (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Use in-kernel offsetofend() to check field availability (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make sure the cm_id is in the IB_CM_IDLE state in destroy (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_sidr_rep() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_rej() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_drep() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_dreq() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Add some lockdep assertions for cm_id_priv->lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make it clearer how concurrency works in cm_req_handler() (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make it clear that there is no concurrency in cm_sidr_req_handler() (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Simplify establishing a listen cm_id (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make the destroy_id flow more robust (Kamal Heib) [1857600] - [net] svcrdma: Avoid DMA mapping small RPC Replies (Kamal Heib) [1857600] - [net] svcrdma: Fix double sync of transport header buffer (Kamal Heib) [1857600] - [net] svcrdma: Refactor chunk list encoders (Kamal Heib) [1857600] - [net] SUNRPC: Add encoders for list item discriminators (Kamal Heib) [1857600] - [net] svcrdma: Rename svcrdma_encode trace points in send routines (Kamal Heib) [1857600] - [net] svcrdma: Update synopsis of svc_rdma_send_reply_msg() (Kamal Heib) [1857600] - [net] svcrdma: Update synopsis of svc_rdma_map_reply_msg() (Kamal Heib) [1857600] - [net] svcrdma: Update synopsis of svc_rdma_send_reply_chunk() (Kamal Heib) [1857600] - [net] svcrdma: De-duplicate code that locates Write and Reply chunks (Kamal Heib) [1857600] - [include] svcrdma: Use struct xdr_stream to decode ingress transport headers (Kamal Heib) [1857600] - [net] svcrdma: Remove svcrdma_cm_event() trace point (Kamal Heib) [1857600] - [net] SUNRPC: Add xdr_pad_size() helper (Kamal Heib) [1857600] - [net] nfsd: Fix NFSv4 READ on RDMA when using readv (Kamal Heib) [1857600] - [net] svcrdma: Replace zero-length array with flexible-array member (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Delete not implemented CM peer to peer communication (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Teach lockdep about the order of rtnl and lock (Kamal Heib) [1857600] - [infiniband] RDMA/rw: map P2P memory correctly for signature operations (Kamal Heib) [1857600] - [infiniband] RDMA/ipoib: reject unsupported coalescing params (Kamal Heib) [1857600] - [infiniband] RDMA/providers: Fix return value when QP type isn't supported (Kamal Heib) [1857600] - [infiniband] RDMA/hns: Use the new APIs for printing log (Kamal Heib) [1857600] - [infiniband] RDMA/hns: Optimize hns_roce_modify_qp function (Kamal Heib) [1857600] - [infiniband] RDMA/hns: RDMA/hns: Assign rq head pointer when enable rq record db (Kamal Heib) [1857600] - [infiniband] RDMA/hns: Update the prompt message for creating and destroy qp (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Do not delay freeing of DMA pages (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Properly document the interrupt mask register (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Unified getters/setters for device structs bitmask access (Kamal Heib) [1857600] - [infiniband] RDMA/ipoib: Don't set constant driver version (Kamal Heib) [1857600] - [infiniband] RDMA: Replace zero-length array with flexible-array member (Kamal Heib) [1857600] - [infiniband] RDMA/ucma: Use refcount_t for the ctx->ref (Kamal Heib) [1857600] - [infiniband] RDMA/core: Get rid of ib_create_qp_user (Kamal Heib) [1857600] - [infiniband] RDMA/core: Add weak ordering dma attr to dma mapping (Kamal Heib) [1857600] - [infiniband] RDMA/ucma: Mask QPN to be 24 bits according to IBTA (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use refcount API to reflect refcount (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Rename cma_device ref/deref helpers to to get/put (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use refcount API to reflect refcount (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Rename cma_device ref/deref helpers to to get/put (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use RDMA device port iterator (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use a helper function to enqueue resolve work items (Kamal Heib) [1857600] - [infiniband] RDMA/rw: Fix error flow during RDMA context initialization (Kamal Heib) [1857600] - [infiniband] IB/core: Add interface to advise_mr for kernel users (Kamal Heib) [1857600] - [infiniband] IB/core: Introduce ib_reg_user_mr (Kamal Heib) [1857600] - [uapi] RDMA/core: Add the core support field to METHOD_GET_CONTEXT (Kamal Heib) [1857600] - [infiniband] RDMA/uverbs: Add ioctl command to get a device context (Kamal Heib) [1857600] - [fs] xfs: Fix false positive lockdep warning with sb_internal & fs_reclaim (Waiman Long) [1838643] - [mm] mm/mmu_notifier: mm/rmap.c: Fix a mmu_notifier range bug in try_to_unmap_one (Waiman Long) [1871883] - [mm] mm/memory.c: initialise mmu_notifier_range correctly (Waiman Long) [1871883] - [mm] mm/mmu_notifier: use structure for invalidate_range_start/end calls v2 (Waiman Long) [1871883] - [mm] hugetlb: take PMD sharing into account when flushing tlb/caches (Waiman Long) [1871883] - [mm] mm, hugetlbfs: pass fault address to cow handler (Waiman Long) [1871883] - [mm] mm, hugetlbfs: rename address to haddr in hugetlb_cow() (Waiman Long) [1871883] - [mm] mm, huge page: copy target sub-page last when copy huge page (Waiman Long) [1871883] - [mm] mm, clear_huge_page: move order algorithm into a separate function (Waiman Long) [1871883] - [mm] Revert "mm: always flush VMA ranges affected by zap_page_range" (Waiman Long) [1871883] - [kernel] psi: eliminate kthread_worker from psi trigger scheduling mechanism (Waiman Long) [1873040] - [kernel] psi: get poll_work to run when calling poll syscall next time (Waiman Long) [1873040] - [block] block: loop: set discard granularity and alignment for block device backed loop (Ming Lei) [1866712] - [net] gre: recompute gre csum for sctp over gre tunnels (Lorenzo Bianconi) [1755200] - [include] mm/hugetlb: enable arch specific huge page size support for migration (Donghai Qiao) [1869887] - [mm] arm64/mm: enable HugeTLB migration for contiguous bit HugeTLB pages (Donghai Qiao) [1869887] - [lib] idr: Fix idr_get_next_ul race with idr_remove (Felix Ansell) [1866062] - [lib] genalloc: Fix a set of docs build warnings (Felix Ansell) [1866062] - [lib] lib/Kconfig: fix OBJAGG in lib/ menu structure (Felix Ansell) [1866062] - [lib] lib: Reduce user_access_begin() boundaries in strncpy_from_user() and strnlen_user() (Felix Ansell) [1866062]- [char] random32: update the net random state on interrupt and activity (Donghai Qiao) [1867569] {CVE-2020-16166} - [fs] nfs: Fix getxattr kernel panic and memory overflow (Benjamin Coddington) [1880894] {CVE-2020-25212} - [tools] selftests: rtnetlink: Test bridge enslavement with different parent IDs (Jonathan Toppins) [1860479] - [tools] selftests: rtnetlink: correct the final return value for the test (Jonathan Toppins) [1860479] - [net] Fix bridge enslavement failure (Jonathan Toppins) [1860479] - [net] Make mpls_entry_encode() available for generic users (Patrick Talbert) [1878818] - [net] SUNRPC dont update timeout value on connection reset (Steve Dickson) [1861895] - [kernel] overflow.h: Add flex_array_size() helper (Petr Oros) [1876924] - [net] netpoll: accept NULL np argument in netpoll_send_skb() (Ivan Vecera) [1867968] - [net] netpoll: netpoll_send_skb() returns transmit status (Ivan Vecera) [1867968] - [net] netpoll: move netpoll_send_skb() out of line (Ivan Vecera) [1867968] - [net] netpoll: remove dev argument from netpoll_send_skb_on_dev() (Ivan Vecera) [1867968] - [net] netpoll: Fix use correct return type for ndo_start_xmit() (Ivan Vecera) [1867968] - [net] core: Introduce netdev_get_xmit_slave (Ivan Vecera) [1867974] - [net] get rid of lockdep_set_class_and_subclass() (Ivan Vecera) [1867961] - [net] change addr_list_lock back to static key (Ivan Vecera) [1867961] - [net] batman-adv: Revert "Drop lockdep.h include for soft-interface.c" (Ivan Vecera) [1867961] - [net] partially revert dynamic lockdep key changes (Ivan Vecera) [1867961] - [kernel] rcu: Maintain RHEL kABI (Waiman Long) [1862812] - [kernel] rcu: Don't acquire lock in NMI handler in rcu_nmi_enter_common() (Waiman Long) [1862812] - [kernel] rcu: Add *_ONCE() to rcu_data ->rcu_forced_tick (Waiman Long) [1862812] - [kernel] rcu: Make rcu_barrier() account for offline no-CBs CPUs (Waiman Long) [1862812] - [kernel] rcu: Clear ->core_needs_qs at GP end or self-reported QS (Waiman Long) [1862812] - [kernel] rcu: Forgive slow expedited grace periods at boot time (Waiman Long) [1862812] - [tools] torture: Hoist calls to lscpu to higher-level kvm.sh script (Waiman Long) [1862812] - [tools] torture: Allow "CFLIST" to specify default list of scenarios (Waiman Long) [1862812] - [kernel] rcutorture: Dynamically allocate rcu_fwds structure (Waiman Long) [1862812] - [kernel] rcutorture: Complete threading rcu_fwd pointers through functions (Waiman Long) [1862812] - [kernel] rcutorture: Move to dynamic initialization of rcu_fwds (Waiman Long) [1862812] - [kernel] rcutorture: Thread rcu_fwd pointer through forward-progress functions (Waiman Long) [1862812] - [kernel] rcutorture: Pull callback forward-progress data into rcu_fwd struct (Waiman Long) [1862812] - [tools] rcutorture: Add worst-case call_rcu() forward-progress results (Waiman Long) [1862812] - [tools] torture: Handle systems lacking the mpstat command (Waiman Long) [1862812] - [tools] torture: Handle jitter for CPUs that cannot be offlined (Waiman Long) [1862812] - [tools] rcutorture: Dispense with Dracut for initrd creation (Waiman Long) [1862812] - [tools] torture: Use gawk instead of awk for systime() function (Waiman Long) [1862812] - [kernel] rcu: Avoid tick_dep_set_cpu() misordering (Waiman Long) [1862812] - [kernel] rcu: Provide wrappers for uses of ->rcu_read_lock_nesting (Waiman Long) [1862812] - [kernel] rcu: Use READ_ONCE() for ->expmask in rcu_read_unlock_special() (Waiman Long) [1862812] - [kernel] rcu: Clear ->rcu_read_unlock_special only once (Waiman Long) [1862812] - [kernel] rcu: Clear .exp_hint only when deferred quiescent state has been reported (Waiman Long) [1862812] - [kernel] rcu: Rename some instance of CONFIG_PREEMPTION to CONFIG_PREEMPT_RCU (Waiman Long) [1862812] - [kernel] rcu: Use CONFIG_PREEMPTION where appropriate (Waiman Long) [1862812] - [kernel] rcu: Make PREEMPT_RCU be a modifier to TREE_RCU (Waiman Long) [1862812] - [kernel] rcu: Use lockdep rather than comment to enforce lock held (Waiman Long) [1862812] - [kernel] rcu: Avoid data-race in rcu_gp_fqs_check_wake() (Waiman Long) [1862812] - [kernel] rcu/nocb: Fix dump_tree hierarchy print always active (Waiman Long) [1862812] - [kernel] rculist.h: Add list_tail_rcu() (Waiman Long) [1862812] - [kernel] rculist_nulls: Change docbook comment headers (Waiman Long) [1862812] - [kernel] rculist_nulls: Add docbook comments (Waiman Long) [1862812] - [include] rcu: Add a hlist_nulls_unhashed_lockless() function (Waiman Long) [1862812] - [kernel] rcu: Use WRITE_ONCE() for assignments to ->pprev for hlist_nulls (Waiman Long) [1862812] - [kernel] rcu: Remove kfree_call_rcu_nobatch() (Waiman Long) [1862812] - [kernel] rcu: Remove kfree_rcu() special casing and lazy-callback handling (Waiman Long) [1862812] - [kernel] rcu: Add support for debug_objects debugging for kfree_rcu() (Waiman Long) [1862812] - [kernel] rcu: Add multiple in-flight batches of kfree_rcu() work (Waiman Long) [1862812] - [kernel] rcu: Make kfree_rcu() use a non-atomic ->monitor_todo (Waiman Long) [1862812] - [kernel] rcuperf: Add kfree_rcu() performance Tests (Waiman Long) [1862812] - [kernel] rcu: Add basic support for kfree_rcu() batching (Waiman Long) [1862812] - [kernel] rcu: Remove unused stop-machine #include (Waiman Long) [1862812] - [kernel] srcu: Apply *_ONCE() to ->srcu_last_gp_end (Waiman Long) [1862812] - [kernel] rcu: Switch force_qs_rnp() to for_each_leaf_node_cpu_mask() (Waiman Long) [1862812] - [kernel] rcu: Move rcu_{expedited, normal} definitions into rcupdate.h (Waiman Long) [1862812] - [kernel] rcu: Move gp_state_namesand gp_state_getname() to tree_stall.h (Waiman Long) [1862812] - [kernel] rcu: Remove the declaration of call_rcu() in tree.h (Waiman Long) [1862812] - [kernel] rcu: Fix tracepoint tracking RCU CPU kthread utilization (Waiman Long) [1862812] - [kernel] rcu: Fix harmless omission of "CONFIG_" from #if condition (Waiman Long) [1862812] - [kernel] rcu: Mark non-global functions and variables as static (Waiman Long) [1862812] - [kernel] rcu: Enable tick for nohz_full CPUs slow to provide expedited QS (Waiman Long) [1862812] - [kernel] rcu: Replace synchronize_sched_expedited_wait() "_sched" with "_rcu" (Waiman Long) [1862812] - [kernel] rcu: Update tree_exp.h function-header comments (Waiman Long) [1862812] - [kernel] rcu: Rename sync_rcu_preempt_exp_done() to sync_rcu_exp_done() (Waiman Long) [1862812] - [kernel] rcu: Allow only one expedited GP to run concurrently with wakeups (Waiman Long) [1862812] - [kernel] rcu: Fix missed wakeup of exp_wq waiters (Waiman Long) [1862812] - [kernel] rcu: Substitute lookup for bit-twiddling in sync_rcu_exp_select_node_cpus() (Waiman Long) [1862812] - [kernel] rcu: Fix data-race due to atomic_t copy-by-value (Waiman Long) [1862812] - [kernel] rcu: Avoid modifying mask_ofl_ipi in sync_rcu_exp_select_node_cpus() (Waiman Long) [1862812] - [kernel] rcu: Use *_ONCE() to protect lockless ->expmask accesses (Waiman Long) [1862812] - [kernel] rcutorture: Make in-kernel-loop testing more brutal (Waiman Long) [1862812] - [kernel] rcutorture: Separate warnings for each failure type (Waiman Long) [1862812] - [kernel] rcu: Remove unused variable rcu_perf_writer_state (Waiman Long) [1862812] - [tools] rcutorture: Remove CONFIG_HOTPLUG_CPU=n from scenarios (Waiman Long) [1862812] - [kernel] rcu: Remove unused function rcutorture_record_progress() (Waiman Long) [1862812] - [kernel] rcu: Make kernel-mode nohz_full CPUs invoke the RCU core processing (Waiman Long) [1862812] - [kernel] rcu: Confine ->core_needs_qs accesses to the corresponding CPU (Waiman Long) [1862812] - [kernel] rcu: Reset CPU hints when reporting a quiescent state (Waiman Long) [1862812] - [kernel] rcu: Force nohz_full tick on upon irq enter instead of exit (Waiman Long) [1862812] - [kernel] rcu: Force tick on for nohz_full CPUs not reaching quiescent states (Waiman Long) [1862812] - [kernel] rcutorture: Emulate dyntick aspect of userspace nohz_full sojourn (Waiman Long) [1862812] - [kernel] rcu: Make CPU-hotplug removal operations enable tick (Waiman Long) [1862812] - [kernel] stop_machine: Provide RCU quiescent state in multi_cpu_stop() (Waiman Long) [1862812] - [kernel] rcutorture: Force on tick for readers and callback flooders (Waiman Long) [1862812] - [kernel] rcu: Force on tick when invoking lots of callbacks (Waiman Long) [1862812] - [kernel] time: Export tick start/stop functions for rcutorture (Waiman Long) [1862812] - [kernel] nohz: Add TICK_DEP_BIT_RCU (Waiman Long) [1862812] - [kernel] rcu: Suppress levelspread uninitialized messages (Waiman Long) [1862812] - [kernel] rcu: Fix uninitialized variable in nocb_gp_wait() (Waiman Long) [1862812] - [trace] rcu: Update descriptions for rcu_future_grace_period tracepoint (Waiman Long) [1862812] - [trace] rcu: Update descriptions for rcu_nocb_wake tracepoint (Waiman Long) [1862812] - [trace] rcu: Remove obsolete descriptions for rcu_barrier tracepoint (Waiman Long) [1862812] - [kernel] rcu: Ensure that ->rcu_urgent_qs is set before resched IPI (Waiman Long) [1862812] - [kernel] rcu: Several rcu_segcblist functions can be static (Waiman Long) [1862812] - [kernel] rcu: Remove unused function hlist_bl_del_init_rcu() (Waiman Long) [1862812] - [kernel] rcu: Allow rcu_do_batch() to dynamically adjust batch sizes (Waiman Long) [1862812] - [kernel] srcu: Avoid srcutorture security-based pointer obfuscation (Waiman Long) [1862812] - [kernel] rcu/nocb: Don't wake no-CBs GP kthread if timer posted under overload (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce __call_rcu_nocb_wake() leaf rcu_node ->lock contention (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce nocb_cb_wait() leaf rcu_node ->lock contention (Waiman Long) [1862812] - [kernel] rcu/nocb: Advance CBs after merge in rcutree_migrate_callbacks() (Waiman Long) [1862812] - [kernel] rcu/nocb: Avoid synchronous wakeup in __call_rcu_nocb_wake() (Waiman Long) [1862812] - [kernel] rcu/nocb: Print no-CBs diagnostics when rcutorture writer unduly delayed (Waiman Long) [1862812] - [kernel] rcu/nocb: EXP Check use and usefulness of ->nocb_lock_contended (Waiman Long) [1862812] - [kernel] rcu/nocb: Add bypass callback queueing (Waiman Long) [1862812] - [kernel] rcu/nocb: Atomic ->len field in rcu_segcblist structure (Waiman Long) [1862812] - [kernel] rcu/nocb: Unconditionally advance and wake for excessive CBs (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce ->nocb_lock contention with separate ->nocb_gp_lock (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce contention at no-CBs invocation-done time (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce contention at no-CBs registry-time CB advancement (Waiman Long) [1862812] - [kernel] rcu/nocb: Round down for number of no-CBs grace-period kthreads (Waiman Long) [1862812] - [kernel] rcu/nocb: Avoid ->nocb_lock capture by corresponding CPU (Waiman Long) [1862812] - [kernel] rcu/nocb: Avoid needless wakeups of no-CBs grace-period kthread (Waiman Long) [1862812] - [kernel] rcu/nocb: Make __call_rcu_nocb_wake() safe for many callbacks (Waiman Long) [1862812] - [kernel] rcu/nocb: Never downgrade ->nocb_defer_wakeup in wake_nocb_gp_defer() (Waiman Long) [1862812] - [kernel] rcu/nocb: Enable re-awakening under high callback load (Waiman Long) [1862812] - [kernel] rcu/nohz: Turn off tick for offloaded CPUs (Waiman Long) [1862812] - [kernel] rcu/nocb: Suppress uninitialized false-positive in nocb_gp_wait() (Waiman Long) [1862812] - [kernel] rcu/nocb: Use build-time no-CBs check in rcu_pending() (Waiman Long) [1862812] - [kernel] rcu/nocb: Use build-time no-CBs check in rcu_core() (Waiman Long) [1862812] - [kernel] rcu/nocb: Use build-time no-CBs check in rcu_do_batch() (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_gp_head and nocb_gp_tail fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_cb_tail and nocb_cb_head fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_q_count and nocb_q_count_lazy fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_head and nocb_tail fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Use rcu_segcblist for no-CBs CPUs (Waiman Long) [1862812] - [kernel] rcu/nocb: Leave ->cblist enabled for no-CBs CPUs (Waiman Long) [1862812] - [kernel] rcu/nocb: Allow lockless use of rcu_segcblist_empty() (Waiman Long) [1862812] - [kernel] rcu/nocb: Allow lockless use of rcu_segcblist_restempty() (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove deferred wakeup checks for extended quiescent states (Waiman Long) [1862812] - [kernel] rcu/nocb: Check for deferred nocb wakeups before nohz_full early exit (Waiman Long) [1862812] - [kernel] rcu/nocb: Make rcutree_migrate_callbacks() start at leaf rcu_node structure (Waiman Long) [1862812] - [kernel] rcu/nocb: Add checks for offloaded callback processing (Waiman Long) [1862812] - [kernel] rcu/nocb: Use separate flag to indicate offloaded ->cblist (Waiman Long) [1862812] - [kernel] rcu/nocb: Use separate flag to indicate disabled ->cblist (Waiman Long) [1862812] - [kernel] rcu/nocb: Print gp/cb kthread hierarchy if dump_tree (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename rcu_nocb_leader_stride kernel boot parameter (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename and document no-CB CB kthread sleep trace event (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename rcu_organize_nocb_kthreads() local variable (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename wake_nocb_leader_defer() to wake_nocb_gp_defer() (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename __wake_nocb_leader() to __wake_nocb_gp() (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename wake_nocb_leader() to wake_nocb_gp() (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename nocb_follower_wait() to nocb_cb_wait() (Waiman Long) [1862812] - [kernel] rcu/nocb: Provide separate no-CBs grace-period kthreads (Waiman Long) [1862812] - [kernel] rcu/nocb: Update comments to prepare for forward-progress work (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename rcu_data fields to prepare for forward-progress work (Waiman Long) [1862812] - [kernel] rcutorture: Aggressive forward-progress tests shouldn't block shutdown (Waiman Long) [1862812] - [kernel] rcuperf: Make rcuperf kernel test more robust for !expedited mode (Waiman Long) [1862812] - [kernel] rcutorture: Emulate userspace sojourn during call_rcu() floods (Waiman Long) [1862812] - [tools] rcutorture: Test TREE03 with the threadirqs kernel boot parameter (Waiman Long) [1862812] - [tools] torture: Expand last_ts variable in kvm-test-1-run.sh (Waiman Long) [1862812] - [kernel] rcuperf: Fix perf_type module-parameter description (Waiman Long) [1862812] - [documentation] doc: Add rcutree.kthread_prio pointer to stallwarn.txt (Waiman Long) [1862812] - [kernel] rcu: Change return type of rcu_spawn_one_boost_kthread() (Waiman Long) [1862812] - [kernel] rcu: Add destroy_work_on_stack() to match INIT_WORK_ONSTACK() (Waiman Long) [1862812] - [kernel] rcu: Add kernel parameter to dump trace after RCU CPU stall warning (Waiman Long) [1862812] - [kernel] rcu: Restore barrier() to rcu_read_lock() and rcu_read_unlock() (Waiman Long) [1862812] - [kernel] rcu: Simplify rcu_note_context_switch exit from critical section (Waiman Long) [1862812] - [kernel] rcu: Make rcu_read_unlock_special() checks match raise_softirq_irqoff() (Waiman Long) [1862812] - [kernel] rcu: Simplify rcu_read_unlock_special() deferred wakeups (Waiman Long) [1862812] - [tools] rcu: Don't return a value from rcu_assign_pointer() (Waiman Long) [1862812] - [kernel] rcu: Force inlining of rcu_read_lock() (Waiman Long) [1862812] - [kernel] rcu: Fix irritating whitespace error in rcu_assign_pointer() (Waiman Long) [1862812] - [kernel] rcu: validate arguments for rcu tracepoints (Waiman Long) [1862812] - [trace] tracing: introduce TRACE_EVENT_NOP() (Waiman Long) [1862812] - [kernel] kprobes: Prohibit probing on RCU debug routine (Waiman Long) [1862812] - [init] time: Make VIRT_CPU_ACCOUNTING_GEN depend on GENERIC_CLOCKEVENTS (Waiman Long) [1862812] - [kernel] time: Move CONTEXT_TRACKING to kernel/time/Kconfig (Waiman Long) [1862812]- [fs] xfs: don't commit sunit/swidth updates to disk if that would cause repair failures (Bill O'Donnell) [1849407] - [fs] xfs: split the sunit parameter update into two parts (Bill O'Donnell) [1849407] - [fs] xfs: refactor agfl length computation function (Bill O'Donnell) [1849407] - [net] netfilter: conntrack: proc: rename stat column (Florian Westphal) [1875681] - [net] netfilter: conntrack: add clash resolution stat counter (Florian Westphal) [1875681] - [net] netfilter: conntrack: remove ignore stats (Florian Westphal) [1875681] - [net] netfilter: conntrack: do not increment two error counters at same time (Florian Westphal) [1875681] - [net] netfilter: conntrack: do not auto-delete clash entries on reply (Florian Westphal) [1875681] - [powerpc] powerpc/pseries/iommu: Allow bigger 64bit window by removing default DMA window (Steve Best) [1725198] - [powerpc] powerpc/pseries/iommu: Move window-removing part of remove_ddw into remove_dma_window (Steve Best) [1725198] - [powerpc] powerpc/pseries/iommu: Update call to ibm, query-pe-dma-windows (Steve Best) [1725198] - [powerpc] powerpc/pseries/iommu: Create defines for operations in ibm, ddw-applicable (Steve Best) [1725198] - [x86] x86/cpu: Add Sapphire Rapids CPU model number (Puneet Sethi) [1872367] - [x86] x86/cpu: Add Lakefield, Alder Lake and Rocket Lake models to the to Intel CPU family (Steve Best) [1838902]- [powerpc] powerpc/xmon: Improve dumping prefixed instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add a ppc_inst_as_str() helper (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add ppc_inst_as_u64() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add ppc_inst_next() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Add tests for Prefixed Add Immediate (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Let compute tests specify a required cpu feature (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Set NIP in instruction emulation tests (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Add tests for prefixed floating-point load/stores (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Add tests for prefixed integer load/stores (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add POWER10 architected mode (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/dt_cpu_ftrs: Add MMA feature (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/dt_cpu_ftrs: Enable Prefixed Instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/dt_cpu_ftrs: Advertise support for ISA v3.1 if selected (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add support for ISA v3.1 (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add new HWCAP bits (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc sstep: Add support for prefixed fixed-point arithmetic (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc sstep: Add support for prefixed load/stores (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Support prefixed instructions in alignment handler (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/kprobes: Don't allow breakpoints on suffixes (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Don't allow breakpoints on suffixes (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Test prefixed instructions in feature fixups (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Test prefixed code patching (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add prefixed instructions to instruction data type (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/optprobes: Add register argument to patch_imm64_load_insns() (Desnes Augusto Nunes do Rosario) [1854524] - [kvm] powerpc: Define new SRR1 bits for a ISA v3.1 (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/83xx: handle machine check caused by watchdog timer (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Enable Prefixed Instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Make test_translate_branch() independent of instruction length (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Move insertion of breakpoint for xol'ing (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Use a function for reading instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Introduce a function for reporting instruction length (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Define and use get_user_instr() et. al (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/kprobes: Use patch_instruction() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add a probe_kernel_read_inst() function (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add a probe_user_read_inst() function (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a function for reading instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a datatype for instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/lib: Refactor __patch_instruction() to use __put_user_asm() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: use probe_user_read() and probe_user_write() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/process: Constify the number of insns printed by show instructions functions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/process: Fix interleaved output in show_user_instructions() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/process: Fix sparse address space warnings (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Don't print kernel instructions in show_user_instructions() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add show_user_instructions() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/lib: fix book3s/32 boot failure due to code patching (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Introduce functions for instruction equality (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a function for byte swapping instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a function for getting the instruction op code (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use an accessor for instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc sstep: Add support for extswsli instruction (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add support for maddhd, maddhdu, maddld instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a macro for creating instructions from u32s (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/fsl: Add infrastructure to fixup branch predictor flush (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/smp: Use code patching to restore reset vector (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add tests for addcinstruction (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add tests for addinstruction (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add tests for compute type instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Fix DS operand in ld encoding to appropriate value (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/fsl: Add barrier_nospec implementation for NXP PowerPC Book3E (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/watchpoint: Don't ignore extraneous exceptions blindly (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/watchpoint: Disable watchpoint hit by larx/stcx instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/kgdb: add kgdb_arch_set/remove_breakpoint() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/hw_breakpoint: move instruction stepping out of hw_breakpoint_handler() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: add modify_instruction() and modify_instruction_site() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Change calling convention for create_branch() et. al (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: simplify patch_instruction_site() and patch_branch_site() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/code-patching: Add a helper to get the address of a patch_site (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/ftrace: Handle large kernel configs (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/32: use patch_site_addr() in machine_init() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/lib: Use patch_site to patch copy_32 functions once cache is enabled (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Use bitwise calculations in_breakpoint_table() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Move breakpoints to text section (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Move breakpoint instructions to own array (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Remove store_inst() for patch_instruction() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/powernv/idle: Exclude mfspr on HID1, 4, 5 on P9 and above (Steve Best) [1854539] - [powerpc] powerpc/powernv/idle: Rename pnv_first_spr_loss_level variable (Steve Best) [1854539] - [powerpc] powerpc/powernv/idle: Replace CPU feature check with PVR check (Steve Best) [1854539] - [powerpc] powerpc/64s: Don't set FSCR bits in INIT_THREAD (Steve Best) [1854523] - [powerpc] powerpc/64s: Save FSCR to init_task.thread.fscr after feature init (Steve Best) [1854523] - [powerpc] powerpc/64s: Don't let DT CPU features set FSCR_DSCR (Steve Best) [1854523] - [powerpc] powerpc/64s: Don't init FSCR_DSCR in __init_FSCR() (Steve Best) [1854523]- [kernel] sched/cfs: change initial value of runnable_avg (Phil Auld) [1875995] - [kernel] sched/fair: Fix runnable_avg for throttled cfs (Phil Auld) [1875995] - [kernel] sched/fair: Fix kernel build warning in test_idle_cores() for !SMT NUMA (Phil Auld) [1875995] - [kernel] sched/numa: Acquire RCU lock for checking idle cores during NUMA balancing (Phil Auld) [1875995] - [kernel] sched/numa: Stop an exhastive search if a reasonable swap candidate or idle CPU is found (Phil Auld) [1875995] - [kernel] sched/numa: Bias swapping tasks based on their preferred node (Phil Auld) [1875995] - [kernel] sched/numa: Find an alternative idle CPU if the CPU is part of an active NUMA balance (Phil Auld) [1875995] - [kernel] sched/numa: Prefer using an idle CPU as a migration target instead of comparing tasks (Phil Auld) [1875995] - [kernel] sched/fair: Take into account runnable_avg to classify group (Phil Auld) [1875995] - [kernel] sched/pelt: Add a new runnable average signal (Phil Auld) [1875995] - [kernel] sched/pelt: Remove unused runnable load average (Phil Auld) [1875995] - [kernel] sched: Disable allowing small imbalance to preserve RHEL performance (Phil Auld) [1875995] - [kernel] sched/numa: Use similar logic to the load balancer for moving between domains with spare capacity (Phil Auld) [1875995] - [kernel] sched/numa: Replace runnable_load_avg by load_avg (Phil Auld) [1875995] - [kernel] sched/numa: Distinguish between the different task_numa_migrate() failure cases (Phil Auld) [1875995] - [kernel] sched/numa: Trace when no candidate CPU was found on the preferred node (Phil Auld) [1875995] - [kernel] sched/fair: Allow a small load imbalance between low utilisation SD_NUMA domains (Phil Auld) [1875995] - [mm] powerpc/smp: Implement cpu_to_coregroup_id (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Create coregroup domain (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Allocate cpumask only after searching thread group (Diego Domingos) [1854541] - [powerpc] powerpc/numa: Detect support for coregroup (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Optimize start_secondary (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Dont assume l2-cache to be superset of sibling (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Move topology fixups into a new function (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Move powerpc_topology above (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Merge Power9 topology with Power topology (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Fix a warning under !NEED_MULTIPLE_NODES (Diego Domingos) [1854541] - [mm] powerpc/numa: Restrict possible nodes based on platform (Diego Domingos) [1854541] - [mm] powerpc/numa: Limit possible nodes to within num_possible_nodes (Diego Domingos) [1854541] - [powerpc] powerpc: Fix misleading small cores print (Diego Domingos) [1854541] - [netdrv] ibmvnic: add missing parenthesis in do_reset() (Steve Best) [1879547] - [wireless] rtw88: don't hold all IRQs disabled for PS operations (Jarod Wilson) [1874730] - [netdrv] ibmvnic fix NULL tx_pools and rx_tools issue at do_reset (Steve Best) [1872676]- [kernel] sched: Fix use of count for nr_running tracepoint (Phil Auld) [1861444] - [kernel] sched: Add a tracepoint to track rq->nr_running (Phil Auld) [1861444] - [kernel] sched/debug: Add new tracepoints to track util_est (Phil Auld) [1861444] - [kernel] sched/debug: Export the newly added tracepoints (Phil Auld) [1861444] - [kernel] sched/debug: Add sched_overutilized tracepoint (Phil Auld) [1861444] - [kernel] sched/debug: Add new tracepoint to track PELT at se level (Phil Auld) [1861444] - [kernel] sched/debug: Add a new sched_trace_*() helper functions (Phil Auld) [1861444] - [kernel] sched/autogroup: Make autogroup_path() always available (Phil Auld) [1861444]- [mm] mm/kmemleak.c: fix check for softirq context (Waiman Long) [1878006] - [include] mm/hotplug: invalid PFNs from pfn_to_online_page() (Waiman Long) [1878006] - [mm] mm, kmemleak: little optimization while scanning (Waiman Long) [1878006] - [mm] kmemleak: add module param to print warnings to dmesg (Waiman Long) [1878006] - [mm] kmemleak: always register debugfs file (Waiman Long) [1878006] - [scsi] scsi: megaraid_sas: Don't call disable_irq from process IRQ poll (Tomas Henzl) [1837200] - [scsi] scsi: megaraid_sas: Remove undefined ENABLE_IRQ_POLL macro (Tomas Henzl) [1837200] - [platform] platform/x86: dcdbas: Check SMBIOS for protected buffer address (David Arcari) [1858680] - [platform] firmware: dcdbas: Move dcdbas to drivers/platform/x86 (David Arcari) [1858680] - [fs] cifs: fix DFS mount with cifsacl/modefromsid (Leif Sahlberg) [1871246] - [fs] ext4: fix potential negative array index in do_split() (Pavel Reichl) [1846165] {CVE-2020-14314} - [include] block: allow for_each_bvec to support zero len bvec (Ming Lei) [1872032] - [nvme] nvme-pci: disable the write zeros command for Intel 600P/P3100 (David Milburn) [1875391]- [netdrv] ice: Disable VLAN pruning in promiscuous mode (Jonathan Toppins) [1787477] - [mm] mm: slub: introduce 'slub_merge' kernel parameter (Rafael Aquini) [1871214] - [kernel] time/tick-broadcast: Fix tick_broadcast_offline() lockdep complaint (Alexey Klimov) [1877380]- [init] init/Kconfig: disable io_uring (Jeff Moyer) [1879754] - [block] blk-mq: always allow reserved allocation in hctx_may_queue (Ming Lei) [1740874] - [nvme] nvme-rdma: Avoid double freeing of async event data (Gopal Tiwari) [1878140] - [kernel] printk: queue wake_up_klogd irq_work only if per-CPU areas are ready (Igor Mammedov) [1867022]- [firmware] efi: don't reserve MOK config table memory region (Kairui Song) [1878584] - [fs] xfs: fix boundary test in xfs_attr_shortform_verify (Eric Sandeen) [1875316] {CVE-2020-14385} - [powerpc] powerpc/pseries: Do not initiate shutdown when system is running on UPS (Diego Domingos) [1870477]- [fs] nfsd: avoid a NULL dereference in __cld_pipe_upcall() (Scott Mayhew) [1847225] - [net] packet: fix overflow in tpacket_rcv (Hangbin Liu) [1876224] {CVE-2020-14386} - [net] packet: make tp_drops atomic (Hangbin Liu) [1876224] {CVE-2020-14386} - [net] espintcp: restore IP CB before handing the packet to xfrm (Sabrina Dubroca) [1868201] - [fs] Revert "NFSv4: Handle NFS4ERR_OLD_STATEID in CLOSE/OPEN_DOWNGRADE" (Benjamin Coddington) [1865978] - [fs] Revert "NFSv4.x recover from pre-mature loss of openstateid" (Benjamin Coddington) [1865978] - [infiniband] RDMA/mlx4: Read pkey table length instead of hardcoded value (Alaa Hleihel) [1853564] - [net] net/smc: set rx_off for SMCR explicitly (Philipp Rudo) [1875833] - [drm] drm/i915: Auto detect DPCD backlight support by default (Lyude Paul) [1872381] - [drm] drm/i915: Fix DPCD register order in intel_dp_aux_enable_backlight() (Lyude Paul) [1872381] - [drm] drm/i915: Assume 100 brightness when not in DPCD control mode (Lyude Paul) [1872381] - [drm] drm/i915: Fix eDP DPCD aux max backlight calculations (Lyude Paul) [1872381] - [kernel] tracing: Define MCOUNT_INSN_SIZE when not defined without direct calls (Jiri Olsa) [1857599] - [kernel] ftrace: Fix function_graph tracer interaction with BPF trampoline (Jiri Olsa) [1857599] - [x86] x86/function_graph: Simplify with function_graph_enter() (Jiri Olsa) [1857599] - [kernel] function_graph: Create function_graph_enter() to consolidate architecture code (Jiri Olsa) [1857599]- [crypto] pefile: Support multiple signatures in verify_pefile_signature (Lenny Szubowicz) [1862072] - [security] integrity: Load certs from the EFI MOK config table (Lenny Szubowicz) [1868306] - [security] integrity: Move import of MokListRT certs to a separate routine (Lenny Szubowicz) [1868306] - [firmware] efi: Support for MOK variable config table (Lenny Szubowicz) [1868306] - [kernel] Move to dual-signing to split signing keys up better (Frantisek Hrbata) [1837434] {CVE-2020-10713} - [powerpc] pseries/hotplug-cpu: wait indefinitely for vCPU death (Michael Roth) [1856588] - [powerpc] kvm: ppc: book3s hv: Rework secure mem slot dropping (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Move kvmppc_svm_page_out up (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Migrate hot plugged memory (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: In H_SVM_INIT_DONE, migrate remaining normal-GFNs to secure-GFNs (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Track the state GFNs associated with secure VMs (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Disable page merging in H_SVM_INIT_START (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Fix function definition in book3s_hv_uvmem.c (Michael Roth) [1851259] - [kernel] mmap locking api: initial implementation as rwsem wrappers (Michael Roth) [1851259] - [mm] handle multiple owners of device private pages in migrate_vma (Michael Roth) [1851259] - [mm] migrate.c: clean up useless code in migrate_vma_collect_pmd() (Michael Roth) [1851259] - [mm] remove the unused MIGRATE_PFN_DEVICE flag (Michael Roth) [1851259] - [powerpc] rhel: powerpc: kvm: Increase HDEC threshold to enter guest (David Gibson) [1733467] - [netdrv] r8152: Add macpassthru support for ThinkPad Thunderbolt 3 Dock Gen 2 (Michal Schmidt) [1851966] - [fs] ceph: fix inode number handling on arches with 32-bit ino_t (Jeff Layton) [1869679] - [fs] ceph: don't allow setlease on cephfs (Jeff Layton) [1872382] - [block] blk-mq: order adding requests to hctx->dispatch and checking SCHED_RESTART (Ming Lei) [1859628]- [s390] scsi: zfcp: Move allocation of the shost object to after xconf- and xport-data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fence early sysfs interfaces for accesses of shost objects (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fence adapter status propagation for common statuses (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move p-t-p port allocation to after xport data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fence fc_host updates during link-down handling (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move fc_host updates during xport data handling into fenced function (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move shost updates during xconfig data handling into fenced function (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move shost modification after QDIO (re-)open into fenced function (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: fix fc_host attributes that should be unknown on local link down (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: wire previously driver-specific sysfs attributes also to fc_host (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: expose fabric name as common fc_host sysfs attribute (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: add diagnostics buffer for exchange config data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: diagnostics buffer caching and use for exchange port data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: signal incomplete or error for sync exchange config/port data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fix use-after-free in request timeout handlers (Claudio Imbrenda) [1872796] - [tools] selftests/powerpc: Update the stack expansion test (Gustavo Duarte) [1869755] - [mm] powerpc: Allow 4224 bytes of stack expansion for the signal frame (Gustavo Duarte) [1869755] - [tools] selftests/powerpc: Add test of stack expansion logic (Gustavo Duarte) [1869755] - [mm] mm: check that mm is still valid in madvise() (Jeff Moyer) [1874560] - [block] block: virtio_blk: fix handling single range discard request (Ming Lei) [1842035] - [block] block: respect queue limit of max discard segment (Ming Lei) [1842035] - [fs] io_uring: Fix NULL pointer dereference in loop_rw_iter() (Jeff Moyer) [1854649] - [fs] io_uring: return locked and pinned page accounting (Jeff Moyer) [1854649] - [fs] io_uring: always allow drain/link/hardlink/async sqe flags (Jeff Moyer) [1854649] - [fs] io_uring: ensure double poll additions work with both request types (Jeff Moyer) [1854649] - [fs] io_uring: fix recvmsg memory leak with buffer selection (Jeff Moyer) [1854649] - [fs] io_uring: fix missing msg_name assignment (Jeff Moyer) [1854649] - [fs] io_uring: fix memleak in io_sqe_files_register() (Jeff Moyer) [1854649] - [fs] io_uring: account user memory freed when exit has been queued (Jeff Moyer) [1854649] - [fs] io_uring: fix memleak in __io_sqe_files_update() (Jeff Moyer) [1854649] - [fs] io_uring: fix regression with always ignoring signals in io_cqring_wait() (Jeff Moyer) [1854649] - [fs] io_uring: use signal based task_work running (Jeff Moyer) [1854649] - [kernel] task_work: teach task_work_add() to do signal_wake_up() (Jeff Moyer) [1854649] - [fs] io_uring: fix missing ->mm on exit (Jeff Moyer) [1854649] - [fs] io_uring: fix potential use after free on fallback request free (Jeff Moyer) [1854649] - [fs] io_uring: fix req->work corruption (Jeff Moyer) [1854649] - [fs] io_uring: fix NULL-mm for linked reqs (Jeff Moyer) [1854649] - [fs] io_uring: fix current->mm NULL dereference on exit (Jeff Moyer) [1854649] - [fs] io_uring: fix hanging iopoll in case of -EAGAIN (Jeff Moyer) [1854649] - [fs] io_uring: fix io_sq_thread no schedule when busy (Jeff Moyer) [1854649] - [fs] io_uring: fix possible race condition against REQ_F_NEED_CLEANUP (Jeff Moyer) [1854649] - [fs] io_uring: reap poll completions while waiting for refs to drop on exit (Jeff Moyer) [1854649] - [fs] io_uring: acquire 'mm' for task_work for SQPOLL (Jeff Moyer) [1854649] - [fs] io_uring: add memory barrier to synchronize io_kiocb's result and iopoll_completed (Jeff Moyer) [1854649] - [fs] io_uring: don't fail links for EAGAIN error in IOPOLL mode (Jeff Moyer) [1854649] - [fs] io_uring: fix io_kiocb.flags modification race in IOPOLL mode (Jeff Moyer) [1854649] - [fs] io_uring: allow O_NONBLOCK async retry (Jeff Moyer) [1854649] - [fs] io_uring: use kvfree() in io_sqe_buffer_register() (Jeff Moyer) [1854649] - [fs] io_uring: validate the full range of provided buffers for access (Jeff Moyer) [1854649] - [fs] io_uring: re-set iov base/len for buffer select retry (Jeff Moyer) [1854649] - [fs] io_uring: fix {SQ, IO}POLL with unsupported opcodes (Jeff Moyer) [1854649] - [fs] io_uring: disallow close of ring itself (Jeff Moyer) [1854649] - [fs] io_uring: fix overflowed reqs cancellation (Jeff Moyer) [1854649] - [fs] io_uring: fix flush req->refs underflow (Jeff Moyer) [1854649] - [fs] io_uring: async task poll trigger cleanup (Jeff Moyer) [1854649] - [fs] io_uring: allow POLL_ADD with double poll_wait() users (Jeff Moyer) [1854649] - [fs] io_uring: remove 'fd is io_uring' from close path (Jeff Moyer) [1854649] - [nvme] nvme: allow retry for requests with REQ_FAILFAST_TRANSPORT set (Mike Snitzer) [1843515] - [nvme] nvme: decouple basic ANA log page re-read support from native multipathing (Mike Snitzer) [1843515] - [nvme] nvme: update failover handling to work with REQ_FAILFAST_TRANSPORT (Mike Snitzer) [1843515] - [nvme] nvme: Return BLK_STS_TARGET if the DNR bit is set (Mike Snitzer) [1843515] - [nvme] nvme: redirect commands on dying queue (Mike Snitzer) [1843515] - [nvme] nvme: just check the status code type in nvme_is_path_error (Mike Snitzer) [1843515] - [nvme] nvme: refactor command completion (Mike Snitzer) [1843515] - [nvme] nvme-multipath: do not reset on unknown status (Mike Snitzer) [1843515] - [nvme] Revert "nvme: allow ANA support to be independent of native multipathing" (Mike Snitzer) [1843515] - [nvme] Revert "nvme-multipath: do not reset on unknown status" (Mike Snitzer) [1843515] - [mm] mm, THP, swap: fix allocating cluster for swapfile by mistake (Gao Xiang) [1855474] - [net] sched: act_ct: Fix skb double-free in tcf_ct_handle_fragments() error flow (Marcelo Leitner) [1866391] - [net] netfilter: conntrack: allow sctp hearbeat after connection re-use (Florian Westphal) [1865798] - [video] vgacon: Fix for missing check in scrollback handling (Lyude Paul) [1859472] {CVE-2020-14331} - [scsi] Revert "scsi: qla2xxx: Disable T10-DIF feature with FC-NVMe during probe" (Nilesh Javali) [1866744] - [scsi] Revert "scsi: qla2xxx: Fix crash on qla2x00_mailbox_command" (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Fix null pointer access during disconnect from subsystem (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Check if FW supports MQ before enabling (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Fix WARN_ON in qla_nvme_register_hba (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Allow ql2xextended_error_logging special value 1 to be set anytime (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Reduce noisy debug message (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Fix login timeout (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Flush I/O on zone disable (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Flush all sessions on zone disable (Nilesh Javali) [1866744] - [tools] bpf: selftests: global_funcs: Check err_str before strstr (Yauheni Kaliuta) [1873163] - [netdrv] net/mlx5e: E-Switch, Specify flow_source for rule with no in_port (Alaa Hleihel) [1869602] - [netdrv] net/mlx5e: E-Switch, Add misc bit when misc fields changed for mirroring (Alaa Hleihel) [1869602] - [tools] selftests/bpf: test for map update access from within EXT programs (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [tools] selftests/bpf: test for checking return code for the extended prog (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [tools] selftests/bpf: Add test for freplace program with write access (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [net] bpf: verifier: use target program's type for access verifications (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [scsi] scsi: lpfc: Fix NVMe rport deregister and registration during ADISC (Dick Kennedy) [1871223] - [scsi] scsi: lpfc: Fix LUN loss after cable pull (Dick Kennedy) [1871223] - [infiniband] RDMA/bnxt_re: Do not add user qps to flushlist (Selvin Xavier) [1858674] - [fs] NFSv4.0 allow nconnect for v4.0 (Benjamin Coddington) [1842746] - [mm] mm/vunmap: add cond_resched() in vunmap_pmd_range (Rafael Aquini) [1871710] - [s390] s390/bpf: Maintain 8-byte stack alignment (Jiri Olsa) [1871040]- [netdrv] vrf: Fix IPv6 with qdisc and xfrm (Sabrina Dubroca) [1868565] - [netdrv] vrf: make sure skb->data contains ip header to make routing (Sabrina Dubroca) [1868565] - [netdrv] vrf: Check skb for XFRM_TRANSFORMED flag (Sabrina Dubroca) [1868565] - [net] Do not clear the sock TX queue in sk_set_socket() (Andrea Claudi) [1850421] - [net] Use RCU_INIT_POINTER() to set sk_wq (Andrea Claudi) [1850421] - [net] netfilter: ip6tables: Add a .pre_exit hook in all ip6table_foo.c. (Florian Westphal) [1862384] - [net] netfilter: iptables: Add a .pre_exit hook in all iptable_foo.c. (Florian Westphal) [1862384] - [net] netfilter: ipset: Fix an error code in ip_set_sockfn_get() (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Don't account for expired elements on insertion (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Drop spurious condition for overlap detection on insertion (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Detect partial overlaps on insertion (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Introduce and use nft_rbtree_interval_start() (Florian Westphal) [1862384] - [net] netfilter: nf_tables: fix nat hook table deletion (Florian Westphal) [1862384] - [net] netfilter: ipset: call ip_set_free() instead of kfree() (Florian Westphal) [1862384] - [net] netfilter: ip6tables: Split ip6t_unregister_table() into pre_exit and exit helpers. (Florian Westphal) [1862384] - [net] netfilter: iptables: Split ipt_unregister_table() into pre_exit and exit helpers. (Florian Westphal) [1862384] - [net] netfilter: nft_set_pipapo: Disable preemption before getting per-CPU pointer (Florian Westphal) [1862384] - [net] netfilter: nft_nat: return EOPNOTSUPP if type or flags are not supported (Florian Westphal) [1862384] - [net] netfilter: conntrack: comparison of unsigned in cthelper confirmation (Florian Westphal) [1862384] - [net] netfilter: conntrack: refetch conntrack after nf_conntrack_update() (Florian Westphal) [1862384] - [net] netfilter: conntrack: Pass value of ctinfo to __nf_conntrack_update (Florian Westphal) [1862384] - [net] netfilter: conntrack: make conntrack userspace helpers work again (Florian Westphal) [1862384] - [net] netfilter: nfnetlink_cthelper: unbreak userspace helper support (Florian Westphal) [1862384] - [net] netfilter: nf_conntrack_pptp: fix compilation warning with W=1 build (Florian Westphal) [1862384] - [net] netfilter: nf_conntrack_pptp: prevent buffer overflows in debug code (Florian Westphal) [1862384] - [net] netfilter: nft_set_bitmap: initialize set element extension in lookups (Florian Westphal) [1862384] - [net] netfilter: nft_fwd_netdev: validate family and chain type (Florian Westphal) [1862384] - [net] netfilter: nft_payload: add missing attribute validation for payload csum flags (Florian Westphal) [1862384] - [net] netfilter: cthelper: add missing attribute validation for cthelper (Florian Westphal) [1862384] - [net] netfilter: ipset: Fix forceadd evaluation path (Florian Westphal) [1862384] - [net] netfilter: bridge: make sure to pull arp header in br_nf_forward_arp() (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: bogus lookup/get on consecutive elements in named sets (Florian Westphal) [1862384] - [net] netfilter: ctnetlink: netns exit must wait for callbacks (Florian Westphal) [1862384] - [arm64] kvm: arm64: Don't inherit exec permission across page-table levels (Andrew Jones) [1869297] - [arm64] kvm: arm64: Flush the instruction cache if not unmapping the VM on reboot (Andrew Jones) [1869297] - [s390] s390, dcssblk: kaddr and pfn can be NULL to ->direct_access() (Claudio Imbrenda) [1868927] - [fs] chardev: Avoid potential use-after-free in 'chrdev_open()' (Vladis Dronov) [1866324] {CVE-2020-0305} - [net] net: accept an empty mask in /sys/class/net/*/queues/rx-*/rps_cpus (Nitesh Narayan Lal) [1868433] - [x86] Revert "x86/intel: Disable HPET on Intel Ice Lake platforms" (David Arcari) [1868405] - [kernel] sched: Fix race against ptrace_freeze_trace() (Oleg Nesterov) [1862560] - [kernel] sched: Fix loadavg accounting race (Oleg Nesterov) [1862560] - [kernel] kernel/sched/: remove caller signal_pending branch predictions (Oleg Nesterov) [1862560] - [kernel] locking/spinlock, sched/core: Clarify requirements for smp_mb__after_spinlock() (Oleg Nesterov) [1862560] - [nvme] nvme: multipath: round-robin: eliminate "fallback" variable (Gopal Tiwari) [1868443] - [nvme] nvme: multipath: round-robin: fix single non-optimized path case (Gopal Tiwari) [1868443] - [nvme] nvme-multipath: do not fall back to __nvme_find_path() for non-optimized paths (Gopal Tiwari) [1868443] - [nvme] nvme-multipath: fix logic for non-optimized paths (Gopal Tiwari) [1868443] - [tools] selftests/bpf: Fix segmentation fault in test_progs (Yauheni Kaliuta) [1868494] - [pci] hv: Fix a timing issue which causes kdump to fail occasionally (Mohammed Gamal) [1861960] - [hv] hv: vmbus: Only notify Hyper-V for die events that are oops (Vitaly Kuznetsov) [1868131] - [x86] kvm: nsvm: Correctly set the shadow NPT root level in its MMU role (Vitaly Kuznetsov) [1845507] - [x86] kvm: x86: drop superfluous mmu_check_root() from fast_pgd_switch() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: use nested_svm_load_cr3() on guest->host switch (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: implement nested_svm_load_cr3() and use it for host->guest switch (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: move kvm_set_cr3() after nested_svm_uninit_mmu_context() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: introduce nested_svm_load_cr3()/nested_npt_enabled() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: prepare to handle errors from enter_svm_guest_mode() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: reset nested_run_pending upon nested_svm_vmrun_msrpm() failure (Vitaly Kuznetsov) [1845507] - [x86] kvm: mmu: stop dereferencing vcpu->arch.mmu to get the context for MMU init (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: split kvm_init_shadow_npt_mmu() from kvm_init_shadow_mmu() (Vitaly Kuznetsov) [1845507] - [security] selinux: compute genfs symlink context in case of CephFS (Ondrej Mosnacek) [1865800] - [fs] ceph: set sec_context xattr on symlink creation (Ondrej Mosnacek) [1861509] - [tools] selftests: bpf: define SO_RCVTIMEO and SO_SNDTIMEO properly for ppc64le (Jiri Benc) [1860386] - [tools] bpf: Sync RHEL version of asm-generic/socket.h to tools/ (Jiri Benc) [1860386] - [tools] selftests: bpf: skip tests not working on RHEL (Jiri Benc) [1866908] - [tools] Revert "selftests: bpf: disable test_lwt_seg6local" (Jiri Benc) [1866908] - [tools] Revert "bpf: selftests: remove test_bpftool_build.sh from TEST_PROGS" (Jiri Benc) [1866908] - [tools] selftests: add option to skip specific tests in RHEL (Jiri Benc) [1866908] - [tools] selftests: bpf: switch off timeout (Jiri Benc) [1866908] - [tools] selftest/firmware: Add selftest timeout in settings (Jiri Benc) [1866908] - [tools] selftests/harness: Limit step counter reporting (Jiri Benc) [1866908] - [tools] selftests/harness: Clean up kern-doc for fixtures (Jiri Benc) [1866908] - [tools] selftests: fix condition in run_tests (Jiri Benc) [1866908] - [tools] selftests: do not use .ONESHELL (Jiri Benc) [1866908] - [tools] selftests/harness: Report skip reason (Jiri Benc) [1866908] - [tools] selftests/harness: Display signed values correctly (Jiri Benc) [1866908] - [tools] selftests/harness: Refactor XFAIL into SKIP (Jiri Benc) [1866908] - [tools] selftests/harness: Switch to TAP output (Jiri Benc) [1866908] - [tools] selftests: Add header documentation and helpers (Jiri Benc) [1866908] - [tools] kselftest: fix TAP output for skipped tests (Jiri Benc) [1866908] - [tools] kselftest: ksft_test_num return type should be unsigned (Jiri Benc) [1866908] - [tools] selftests: introduce gen_tar Makefile target (Jiri Benc) [1866908] - [tools] kselftest: add fixture variants (Jiri Benc) [1866908] - [tools] kselftest: run tests by fixture (Jiri Benc) [1866908] - [tools] kselftest: create fixture objects (Jiri Benc) [1866908] - [tools] kselftest: factor out list manipulation to a helper (Jiri Benc) [1866908] - [tools] selftests: add build/cross-build dependency check script (Jiri Benc) [1866908] - [tools] kselftest/runner: allow to properly deliver signals to tests (Jiri Benc) [1866908] - [tools] selftests/harness: fix spelling mistake "SIGARLM" -> "SIGALRM" (Jiri Benc) [1866908] - [tools] selftests: enforce local header dependency in lib.mk (Jiri Benc) [1866908] - [tools] selftests/harness: Handle timeouts cleanly (Jiri Benc) [1866908] - [tools] selftests/harness: Move test child waiting logic (Jiri Benc) [1866908] - [tools] selftests: Fix kselftest O=objdir build from cluttering top level objdir (Jiri Benc) [1866908] - [tools] selftests: allow detection of build failures (Jiri Benc) [1866908] - [tools] selftests: fix build behaviour on targets' failures (Jiri Benc) [1866908] - [tools] kselftest: Support old perl versions (Jiri Benc) [1866908] - [tools] kselftest/runner: Print new line in print of timeout log (Jiri Benc) [1866908] - [tools] selftests: Fix dangling documentation references to kselftest_module.sh (Jiri Benc) [1866908] - [tools] kselftest: Fix NULL INSTALL_PATH for TARGETS runlist (Jiri Benc) [1866908] - [tools] selftests: Move kselftest_module.sh into kselftest/ (Jiri Benc) [1866908] - [tools] selftests: gen_kselftest_tar.sh: Do not clobber kselftest/ (Jiri Benc) [1866908] - [tools] selftests/kselftest/runner.sh: Add 45 second timeout per test (Jiri Benc) [1866908] - [tools] kselftest: exclude failed TARGETS from runlist (Jiri Benc) [1866908] - [tools] kselftest: add capability to skip chosen TARGETS (Jiri Benc) [1866908] - [tools] selftests: Add kselftest-all and kselftest-install targets (Jiri Benc) [1866908] - [tools] selftests: use "$(MAKE)" instead of "make" (Jiri Benc) [1866908] - [tools] kselftest: save-and-restore errno to allow for m formatting (Jiri Benc) [1866908] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 481 (Jiri Benc) [1866908] - [tools] selftests/harness: Allow test to configure timeout (Jiri Benc) [1866908] - [tools] selftests: avoid KBUILD_OUTPUT dir cluttering with selftest objects (Jiri Benc) [1866908] - [tools] selftests: fix bpf build/test workflow regression when KBUILD_OUTPUT is set (Jiri Benc) [1866908] - [tools] selftests: fix install target to use default install path (Jiri Benc) [1866908] - [tools] selftests: build and run gpio when output directory is the src dir (Jiri Benc) [1866908] - [documentation] doc: kselftest: Fix KBUILD_OUTPUT usage instructions (Jiri Benc) [1866908] - [tools] selftests: fix headers_install circular dependency (Jiri Benc) [1866908] - [tools] selftests/harness: Add 30 second timeout per test (Jiri Benc) [1866908] - [tools] kselftest: Add test module framework header (Jiri Benc) [1866908] - [tools] kselftest: Add test runner creation script (Jiri Benc) [1866908] - [tools] selftests/harness: Update named initializer syntax (Jiri Benc) [1866908] - [tools] selftest: include stdio.h in kselftest.h (Jiri Benc) [1866908] - [tools] selftests: do not macro-expand failed assertion expressions (Jiri Benc) [1866908] - [documentation] Documentation/dev-tools: clean up kselftest.rst (Jiri Benc) [1866908] - [documentation] doc: dev-tools: kselftest.rst: update config file location (Jiri Benc) [1866908] - [documentation] doc: dev-tools: kselftest.rst: update contributing new tests (Jiri Benc) [1866908]- [fs] nfs: ensure correct writeback errors are returned on close() (Scott Mayhew) [1849424] - [netdrv] net: thunderx: use spin_lock_bh in nicvf_set_rx_mode_task() (Dean Nelson) [1824858] - [crypto] crypto: ecc - SP800-56A rev 3 local public key validation (Herbert Xu) [1855817] - [crypto] crypto: dh - SP800-56A rev 3 local public key validation (Herbert Xu) [1855817] - [crypto] crypto: dh - check validity of Z before export (Herbert Xu) [1855817] - [lib] lib/mpi: Add mpi_sub_ui() (Herbert Xu) [1855817] - [crypto] crypto: ecdh - check validity of Z before export (Herbert Xu) [1855817] - [netdrv] net: thunderx: initialize VF's mailbox mutex before first usage (Dean Nelson) [1866827] - [kernel] timers: Lower base clock forwarding threshold (Phil Auld) [1833096] - [kernel] timers: Remove must_forward_clk (Phil Auld) [1833096] - [kernel] timers: Spare timer softirq until next expiry (Phil Auld) [1833096] - [kernel] timers: Expand clk forward logic beyond nohz (Phil Auld) [1833096] - [kernel] timers: Reuse next expiry cache after nohz exit (Phil Auld) [1833096] - [kernel] timers: Always keep track of next expiry (Phil Auld) [1833096] - [kernel] timers: Optimize _next_timer_interrupt() level iteration (Phil Auld) [1833096] - [kernel] timers: Add comments about calc_index() ceiling work (Phil Auld) [1833096] - [kernel] timers: Move trigger_dyntick_cpu() to enqueue_timer() (Phil Auld) [1833096] - [kernel] timers: Use only bucket expiry for base->next_expiry value (Phil Auld) [1833096] - [kernel] timers: Preserve higher bits of expiration on index calculation (Phil Auld) [1833096] - [kernel] timer: Fix wheel index calculation on last level (Phil Auld) [1833096] - [kernel] timer: Prevent base->clk from moving backward (Phil Auld) [1833096] - [kernel] timer: Read jiffies once when forwarding base clk (Phil Auld) [1833096] - [powerpc] powerpc/64: Update Speculation_Store_Bypass in /proc//status (Gustavo Duarte) [1773868] - [scsi] scsi: virtio-scsi: Correctly handle the case where all LUNs are unplugged (Maxim Levitsky) [1756093] - [kvm] kvm: x86: replace kvm_spec_ctrl_test_value with runtime test on the host (Maxim Levitsky) [1853447] - [kvm] x86/kvm: Move context tracking where it belongs (Nitesh Narayan Lal) [1854011] - [scsi] scsi: megaraid_sas: Clear affinity hint (Tomas Henzl) [1828351] - [netdrv] revert "vxlan: fix tos value before xmit" (Andrea Claudi) [1862166] - [net] udp: Copy has_conns in reuseport_grow(). (Marcelo Leitner) [1867160] - [net] dev: Defer free of skbs in flush_backlog (Marcelo Leitner) [1867160] - [include] net: core: reduce recursion limit value (Marcelo Leitner) [1867160] - [netdrv] pppoe: only process PADT targeted at local interfaces (Andrea Claudi) [1866850] - [net] espintcp: count packets dropped in espintcp_rcv (Sabrina Dubroca) [1866393] - [net] espintcp: handle short messages instead of breaking the encap socket (Sabrina Dubroca) [1866393] - [net] espintcp: recv() should return 0 when the peer socket is closed (Sabrina Dubroca) [1866393] - [net] espintcp: support non-blocking sends (Sabrina Dubroca) [1866393] - [net] mptcp: be careful on subflow creation (Davide Caratti) [1862200] - [net] mptcp: fix bogus sendmsg() return code under pressure (Davide Caratti) [1862200] - [net] mptcp: fix joined subflows with unblocking sk (Davide Caratti) [1862200] - [net] subflow: explicitly check for plain tcp rsk (Davide Caratti) [1862200] - [net] mptcp: silence warning in subflow_data_ready() (Davide Caratti) [1862200] - [net] mptcp: fix race in subflow_data_ready() (Davide Caratti) [1862200] - [net] mptcp: fix memory leak in mptcp_subflow_create_socket() (Davide Caratti) [1862200] - [net] mptcp: don't leak msk in token container (Davide Caratti) [1862200] - [net] ipv4: Silence suspicious RCU usage warning (Guillaume Nault) [1866430] - [net] devinet: fix memleak in inetdev_init() (Guillaume Nault) [1866430] - [net] ipip: fix wrong address family in init error path (Guillaume Nault) [1866430] - [net] inet_csk: Fix so_reuseport bind-address cache in tb->fast* (Guillaume Nault) [1866430] - [net] ipmr: Add lockdep expression to ipmr_for_each_table macro (Guillaume Nault) [1866430] - [net] ipmr: Fix RCU list debugging warning (Guillaume Nault) [1866430] - [net] tcp: make sure listeners don't initialize congestion-control state (Paolo Abeni) [1865904] - [net] sched: The error lable position is corrected in ct_init_module (Davide Caratti) [1865890] - [net] sched: cls_api: fix nooffloaddevcnt warning dmesg log (Davide Caratti) [1865890] - [net] tls: fix race condition causing kernel panic (Sabrina Dubroca) [1861756] - [net] tls: free record only on encryption error (Sabrina Dubroca) [1861756] - [net] tls: fix encryption error checking (Sabrina Dubroca) [1861756] - [net] l2tp: add sk_family checks to l2tp_validate_socket (Guillaume Nault) [1861453] - [net] l2tp: do not use inet_hash()/inet_unhash() (Guillaume Nault) [1861453] - [net] tipc: allow to build NACK message in link timeout function (Xin Long) [1860877] - [net] tipc: fix retransmission on unicast links (Xin Long) [1860877] - [net] tipc: fix NULL pointer dereference in tipc_disc_rcv() (Xin Long) [1860877] - [net] tipc: remove set but not used variable 'prev' (Xin Long) [1860877] - [net] tipc: call tsk_set_importance from tipc_topsrv_create_listener (Xin Long) [1860877] - [net] tipc: add support for broadcast rcv stats dumping (Xin Long) [1860877] - [net] tipc: enable broadcast retrans via unicast (Xin Long) [1860877] - [net] tipc: add back link trace events (Xin Long) [1860877] - [net] tipc: introduce Gap ACK blocks for broadcast link (Xin Long) [1860877] - [net] tipc: block BH before using dst_cache (Xin Long) [1860877] - [net] tipc: fix partial topology connection closure (Xin Long) [1860877] - [net] xfrm: policy: match with both mark and mask on user interfaces (Xin Long) [1854116] - [scsi] scsi: dh: Add Fujitsu device to devinfo and dh lists (Ewan Milne) [1861418] - [x86] kvm: Set KVM_SOFT_MAX_VCPUS to 1024 (Eduardo Habkost) [1856996] - [md] dm integrity: fix integrity recalculation that is improperly skipped (Mike Snitzer) [1860160] - [netdrv] ibmvnic: Fix IRQ mapping disposal in error path (Steve Best) [1867498] - [infiniband] IB/hfi1: Do not destroy link_wq when the device is shut down (Kamal Heib) [1858392] - [infiniband] IB/hfi1: Do not destroy hfi1_wq when the device is shut down (Kamal Heib) [1858392] - [netdrv] Revert "net/broadcom: Clean broadcom code from driver versions" (Jonathan Toppins) [1867146] - [net] devmap: Use bpf_map_area_alloc() for allocating hash buckets (Jiri Benc) [1842380] - [kernel] kexec_file: Correctly output debugging information for the PT_LOAD ELF header (Lianbo Jiang) [1861186] - [kernel] kexec: Improve & fix crash_exclude_mem_range() to handle overlapping ranges (Lianbo Jiang) [1861186] - [x86] x86/crash: Correct the address boundary of function parameters (Lianbo Jiang) [1861186] - [fs] ceph: handle zero-length feature mask in session messages (Jeff Layton) [1866018] - [s390] s390/bpf: Tolerate not converging code shrinking (Yauheni Kaliuta) [1857120] - [s390] s390/bpf: Use brcl for jumping to exit_ip if necessary (Yauheni Kaliuta) [1857120] - [s390] s390/bpf: Fix sign extension in branch_ku (Yauheni Kaliuta) [1857120] - [tools] selftests: bpf: test_kmod.sh: Fix running out of srctree (Yauheni Kaliuta) [1857120] - [lib] bpf: revert "test_bpf: Flag tests that cannot be jited on s390" (Yauheni Kaliuta) [1857120] - [kernel] uprobes: ensure that uprobe->offset and ->ref_ctr_offset are properly aligned (Oleg Nesterov) [1848596]- [fs] nfs: nfs_file_write() should check for writeback errors (Scott Mayhew) [1852788] - [s390] s390/cpum_cf, perf: change DFLT_CCERROR counter name (Philipp Rudo) [1865794] - [net] net/smc: unique reason code for exceeded max dmb count (Philipp Rudo) [1865792] - [s390] s390/ism: indicate correct error reason in ism_alloc_dmb() (Philipp Rudo) [1865792] - [net] net/smc: fix dmb buffer shortage (Philipp Rudo) [1865792] - [net] net/smc: put slot when connection is killed (Philipp Rudo) [1865792] - [net] net/smc: fix restoring of fallback changes (Philipp Rudo) [1865792] - [net] net/smc: remove freed buffer from list (Philipp Rudo) [1865792] - [net] net/smc: do not call dma sync for unmapped memory (Philipp Rudo) [1865792] - [net] net/smc: fix handling of delete link requests (Philipp Rudo) [1865792] - [net] net/smc: move add link processing for new device into llc layer (Philipp Rudo) [1865792] - [net] net/smc: drop out-of-flow llc response messages (Philipp Rudo) [1865792] - [net] net/smc: protect smc ib device initialization (Philipp Rudo) [1865792] - [net] net/smc: fix link lookup for new rdma connections (Philipp Rudo) [1865792] - [net] net/smc: clear link during SMC client link down processing (Philipp Rudo) [1865792] - [net] net/smc: handle unexpected response types for confirm link (Philipp Rudo) [1865792] - [net] net/smc: switch smcd_dev_list spinlock to mutex (Philipp Rudo) [1865792] - [net] net/smc: fix sleep bug in smc_pnet_find_roce_resource() (Philipp Rudo) [1865792] - [net] net/smc: fix work request handling (Philipp Rudo) [1865792] - [net] net/smc: separate LLC wait queues for flow and messages (Philipp Rudo) [1865792] - [net] net/smc: pre-fetch send buffer outside of send_lock (Philipp Rudo) [1865792] - [nvme] nvme-fc: set max_segments to lldd max value (Ewan Milne) [1853181] - [powerpc] ppc64/kexec_file: enable early kernel's OPAL calls (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: fix kexec load failure with lack of memory hole (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: add appropriate regions for memory reserve map (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: prepare elfcore header for crashing kernel (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: setup backup region for kdump kernel (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: restrict memory usage of kdump kernel (Diego Domingos) [1829715] - [mm] powerpc/drmem: make lmb walk a bit more flexible (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: avoid stomping memory used by special regions (Diego Domingos) [1829715] - [powerpc] powerpc/kexec_file: add helper functions for getting memory ranges (Diego Domingos) [1829715] - [powerpc] powerpc/kexec_file: mark PPC64 specific code (Diego Domingos) [1829715] - [kernel] kexec_file: allow archs to handle special regions while locating memory hole (Diego Domingos) [1829715] - [netdrv] net/mlx5e: CT: Support restore ipv6 tunnel (Alaa Hleihel) [1862975] - [netdrv] ionic: unlock queue mutex in error path (Jonathan Toppins) [1854270] - [netdrv] ionic: use mutex to protect queue operations (Jonathan Toppins) [1854270] - [net] xfrm: esp6: fix the location of the transport header with encapsulation (Sabrina Dubroca) [1857653] - [net] ipv4: fill fl4_icmp_{type, code} in ping_v4_sendmsg (Sabrina Dubroca) [1861324] - [netdrv] geneve: fix an uninitialized value in geneve_changelink() (Sabrina Dubroca) [1860945] - [net] ip_tunnel: fix use-after-free in ip_tunnel_lookup() (Sabrina Dubroca) [1860945] - [netdrv] vxlan: Avoid infinite loop when suppressing NS messages with invalid options (Sabrina Dubroca) [1860945] - [tools] selftests: mptcp: capture pcap on both sides (Hangbin Liu) [1859880] - [tools] selftests/net: report etf errors correctly (Hangbin Liu) [1859880] - [tools] selftests: net: ip_defrag: ignore EPERM (Hangbin Liu) [1859880] - [tools] selftests: forwarding: pedit_dsfield: Check counter value (Hangbin Liu) [1859880] - [tools] selftests: net: tcp_mmap: fix SO_RCVLOWAT setting (Hangbin Liu) [1859880] - [tools] selftests: net: tcp_mmap: clear whole tcp_zerocopy_receive struct (Hangbin Liu) [1859880] - [tools] selftests: A few improvements to fib_nexthops.sh (Hangbin Liu) [1859880] - [tools] selftests: Add tests for vrf and xfrms (Hangbin Liu) [1859880] - [tools] selftests: pmtu: implement IPIP, SIT and ip6tnl PMTU discovery tests (Hangbin Liu) [1859880] - [tools] selftests/net/forwarding: define libs as TEST_PROGS_EXTENDED (Hangbin Liu) [1859880] - [tools] selftests/net/forwarding: add Makefile to install tests (Hangbin Liu) [1859880] - [tools] selftests: nft_concat_range: Move option for 'list ruleset' before command (Hangbin Liu) [1859880] - [tools] selftests: netfilter: use randomized netns names (Hangbin Liu) [1859880] - [tools] kselftests: netfilter: fix leftover net/net-next merge conflict (Hangbin Liu) [1859880] - [tools] selftests: netfilter: missing error check when setting up veth interface (Hangbin Liu) [1859880] - [net] sctp: Don't advertise IPv4 addresses if ipv6only is set on the socket (Xin Long) [1860673] - [net] sctp: check assoc before SCTP_ADDR_{MADE_PRIM, ADDED} event (Xin Long) [1860673] - [net] sctp: fix typo sctp_ulpevent_nofity_peer_addr_change (Xin Long) [1860673] - [net] sctp: Fix spelling in Kconfig help (Xin Long) [1860673] - [net] sctp: Start shutdown on association restart if in SHUTDOWN-SENT state and socket is closed (Xin Long) [1860673] - [net] sctp: Don't add the shutdown timer if its already been added (Xin Long) [1860673] - [net] sctp: Fix SHUTDOWN CTSN Ack in the peer restart case (Xin Long) [1860673] - [net] sctp: Fix bundling of SHUTDOWN with COOKIE-ACK (Xin Long) [1860673] - [net] ip6_vti: use IS_REACHABLE to avoid some compile errors (Xin Long) [1840976 1835075] - [net] xfrm: interface: use IS_REACHABLE to avoid some compile errors (Xin Long) [1840976 1835075] - [net] xfrm: interface: not xfrmi_ipv6/ipip_handler twice (Xin Long) [1840976 1835075] - [net] ip6_vti: not register vti_ipv6_handler twice (Xin Long) [1840976 1835075] - [net] ip_vti: not register vti_ipip_handler twice (Xin Long) [1840976 1835075] - [net] xfrm: interface: support IPIP and IPIP6 tunnels processing with .cb_handler (Xin Long) [1840976 1835075] - [net] xfrm: interface: support IP6IP6 and IP6IP tunnels processing with .cb_handler (Xin Long) [1840976 1835075] - [net] ipcomp: assign if_id to child tunnel from parent tunnel (Xin Long) [1840976 1835075] - [net] ip6_vti: support IP6IP tunnel processing (Xin Long) [1840976 1835075] - [net] ip6_vti: support IP6IP6 tunnel processing with .cb_handler (Xin Long) [1840976 1835075] - [net] ip_vti: support IPIP6 tunnel processing (Xin Long) [1840976 1835075] - [net] ip_vti: support IPIP tunnel processing with .cb_handler (Xin Long) [1840976 1835075] - [net] tunnel6: add tunnel6_input_afinfo for ipip and ipv6 tunnels (Xin Long) [1840976 1835075] - [net] tunnel4: add cb_handler to struct xfrm_tunnel (Xin Long) [1840976 1835075] - [net] xfrm: add is_ipip to struct xfrm_input_afinfo (Xin Long) [1840976 1835075] - [net] tunnel6: support for IPPROTO_MPLS (Xin Long) [1840976 1835075] - [net] virtio_vsock: Enhance connection semantics (Stefano Garzarella) [1861735] - [net] virtio_vsock: Fix race condition in virtio_transport_recv_pkt (Stefano Garzarella) [1858135] - [net] vsock/virtio: annotate 'the_virtio_vsock' RCU pointer (Stefano Garzarella) [1861762] - [vhost] vsock/virtio: fix multiple packet delivery to monitoring devices (Stefano Garzarella) [1861762] - [vhost] vsock: fix packet delivery order to monitoring devices (Stefano Garzarella) [1861762] - [vhost] vsock: accept only packets with the right dst_cid (Stefano Garzarella) [1861762] - [vhost] vsock: refuse CID assigned to the guest->host transport (Stefano Garzarella) [1861762] - [vhost] vsock: switch to a mutex for vhost_vsock_hash (Stefano Garzarella) [1861762] - [net] vsock: fix timeout in vsock_accept() (Stefano Garzarella) [1861762] - [net] vsock: Simplify '__vsock_release()' (Stefano Garzarella) [1861762] - [netdrv] net/mlx5e: Fix kernel crash when setting vf VLANID on a VF dev (Alaa Hleihel) [1859477] - [netdrv] net/mlx5e: Modify uplink state on interface up/down (Alaa Hleihel) [1861720 1859477] - [netdrv] net/mlx5e: Fix missing cleanup of ethtool steering during rep rx cleanup (Alaa Hleihel) [1859477 1856660] - [netdrv] ixgbe: Add ethtool support to enable 2.5 and 5.0 Gbps support (Ken Cox) [1835962] - [x86] x86/purgatory: Add -fno-stack-protector (Lianbo Jiang) [1857528] - [x86] x86/purgatory: Fail the build if purgatory.ro has missing symbols (Lianbo Jiang) [1857528] - [x86] x86/purgatory: Do not use __builtin_memcpy and __builtin_memset (Lianbo Jiang) [1857528] - [x86] x86/boot: Provide KASAN compatible aliases for string routines (Lianbo Jiang) [1857528] - [x86] x86/purgatory: Disable various profiling and sanitizing options (Lianbo Jiang) [1857528] - [x86] x86/boot: Restrict header scope to make Clang happy (Lianbo Jiang) [1857528]- [x86] x86/entry/64: Update comments and sanity tests for create_gap (Jiri Olsa) [1850831] - [x86] x86/alternatives: add missing insn.h include (Jiri Olsa) [1850831] - [x86] x86/alternatives: Teach text_poke_bp() to emulate instructions (Jiri Olsa) [1850831] - [x86] x86/paravirt: Standardize 'insn_buff' variable names (Jiri Olsa) [1850831] - [x86] x86_64: Allow breakpoints to emulate call instructions (Jiri Olsa) [1850831] - [x86] x86_64: Add gap to int3 to allow for call emulation (Jiri Olsa) [1850831] - [x86] x86/alternatives: Sync bp_patching update for avoiding NULL pointer exception (Jiri Olsa) [1850831] - [nvme] nvme: add a Identify Namespace Identification Descriptor list quirk (Gopal Tiwari) [1862136] - [nvme] nvme: fix identify error status silent ignore (Gopal Tiwari) [1862136] - [nvme] nvme: fix possible hang when ns scanning fails during error recovery (Gopal Tiwari) [1862136] - [nvme] nvme: refactor nvme_identify_ns_descs error handling (Gopal Tiwari) [1862136] - [infiniband] IB/rdmavt: Fix RQ counting issues causing use of an invalid RWQE (Kamal Heib) [1850314] - [powerpc] powerpc/pseries: PCIE PHB reset (Steve Best) [1747345] - [drm] drm/nouveau/kms: Handle -EINPROGRESS in nouveau_display_acpi_ntfy() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Fix runtime PM leak in nouveau_display_acpi_ntfy() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Invert conditionals in nouveau_display_acpi_ntfy() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Use pm_runtime_put_autosuspend() in hpd_work (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/fbcon: Use pm_runtime_put_autosuspend() in suspend work (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/fbcon: Fix pm_runtime calls in nouveau_fbcon_output_poll_changed() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/fbcon: Correct pm_runtime calls in nouveau_fbcon_release() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Fix rpm leak in nouveau_connector_hotplug() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Handle -EINPROGRESS in nouveau_connector_hotplug() (Lyude Paul) [1827812] - [drm] drm/nouveau/fbcon: fix module unload when fbcon init has failed for some reason (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/tu102: wait for core update to complete when assigning windows (Lyude Paul) [1827812] - [drm] drm/nouveau/disp/gm200-: fix regression from HDA SOR selection changes (Lyude Paul) [1827812] - [drm] drm/amd/powerplay: fix a crash when overclocking Vega M (Lyude Paul) [1827812] - [drm] drm/amdgpu: Fix NULL dereference in dpm sysfs handlers (Lyude Paul) [1827812] - [drm] drm/amdgpu: fix preemption unit test (Lyude Paul) [1827812] - [drm] drm/amdgpu/gfx10: fix race condition for kiq (Lyude Paul) [1827812] - [drm] drm/amd/display: add dmcub check on RENOIR (Lyude Paul) [1827812] - [drm] drm/amd/display: Check DMCU Exists Before Loading (Lyude Paul) [1827812] - [drm] drm/nouveau/nouveau: fix page fault on device private memory (Lyude Paul) [1827812] - [drm] drm/nouveau/i2c/g94-: increase NV_PMGR_DP_AUXCTL_TRANSACTREQ timeout (Lyude Paul) [1827812] - [drm] drm/i915/perf: Use GTT when saving/restoring engine GPR (Lyude Paul) [1827812] - [drm] drm/i915/gvt: Fix two CFL MMIO handling caused by regression (Lyude Paul) [1827812] - [drm] drm/i915/gt: Only swap to a random sibling once upon creation (Lyude Paul) [1827812] - [drm] drm/i915/gt: Ignore irq enabling on the virtual engines (Lyude Paul) [1827812] - [drm] drm/i915: Move cec_notifier to intel_hdmi_connector_unregister, v2 (Lyude Paul) [1827812] - [drm] drm/amdgpu/display: create fake mst encoders ahead of time (v4) (Lyude Paul) [1827812] - [drm] drm/amd/display: handle failed allocation during stream construction (Lyude Paul) [1827812] - [drm] drm/amdgpu/sdma5: fix wptr overwritten in ->get_wptr() (Lyude Paul) [1827812] - [drm] drm/amdgpu/powerplay: Modify SMC message name for setting power profile mode (Lyude Paul) [1827812] - [drm] drm/i915: Also drop vm.ref along error paths for vma construction (Lyude Paul) [1827812] - [drm] drm/i915: Drop vm.ref for duplicate vma on construction (Lyude Paul) [1827812] - [drm] drm/amdgpu: asd function needs to be unloaded in suspend phase (Lyude Paul) [1827812] - [drm] drm/amdgpu: add TMR destory function for psp (Lyude Paul) [1827812] - [drm] drm/amdgpu: don't do soft recovery if gpu_recovery=0 (Lyude Paul) [1827812] - [drm] drm/i915: Skip stale object handle for debugfs per-file-stats (Lyude Paul) [1827812] - [drm] drm/i915/gt: Pin the rings before marking active (Lyude Paul) [1827812] - [drm] drm/radeon: fix double free (Lyude Paul) [1827812] - [drm] drm: panel-orientation-quirks: Use generic orientation-data for Acer S1003 (Lyude Paul) [1827812] - [drm] drm: panel-orientation-quirks: Add quirk for Asus T101HA panel (Lyude Paul) [1827812] - [iommu] iommu/vt-d: Don't apply gfx quirks to untrusted devices (Lyude Paul) [1827812] - [drm] drm/tegra: hub: Do not enable orphaned window group (Lyude Paul) [1827812] - [drm] drm/ttm: Fix dma_fence refcnt leak when adding move fence (Lyude Paul) [1827812] - [drm] drm/ttm: Fix dma_fence refcnt leak in ttm_bo_vm_fault_reserved (Lyude Paul) [1827812] - [drm] drm/amdgpu/atomfirmware: fix vram_info fetching for renoir (Lyude Paul) [1827812] - [drm] drm/amdgpu: use u rather than d for sclk/mclk (Lyude Paul) [1827812] - [drm] drm/amd/display: Only revalidate bandwidth on medium and fast updates (Lyude Paul) [1827812] - [drm] drm/i915/gt: Mark timeline->cacheline as destroyed after rcu grace period (Lyude Paul) [1827812] - [drm] drm/amd/display: Fix ineffective setting of max bpc property (Lyude Paul) [1827812] - [drm] drm/amd/display: Fix incorrectly pruned modes with deep color (Lyude Paul) [1827812] - [drm] drm/amdgpu: add fw release for sdma v5_0 (Lyude Paul) [1827812] - [drm] drm/radeon: fix fb_div check in ni_init_smc_spll_table() (Lyude Paul) [1827812] - [drm] drm/amd: fix potential memleak in err branch (Lyude Paul) [1827812] - [drm] drm/amd/display: Enable output_bpc property on all outputs (Lyude Paul) [1827812] - [drm] drm/amd/display: Use kfree() to free rgb_user in calculate_user_regamma_ramp() (Lyude Paul) [1827812] - [drm] Revert "drm/amd/display: disable dcn20 abm feature for bring up" (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move gen4 GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move vlv GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move ilk GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move snb GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move ivb GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move hsw GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Incrementally check for rewinding (Lyude Paul) [1827812] - [drm] drm/i915/tc: fix the reset of ln0 (Lyude Paul) [1827812] - [drm] drm/i915/icl+: Fix hotplug interrupt disabling after storm detection (Lyude Paul) [1827812] - [drm] drm/amd/display: Use kvfree() to free coeff in build_regamma() (Lyude Paul) [1827812] - [drm] drm/amdkfd: Use correct major in devcgroup check (Lyude Paul) [1827812] - [drm] drm/connector: notify userspace on hotplug after register complete (Lyude Paul) [1827812] - [drm] drm/i915: Whitelist context-local timestamp in the gen9 cmdparser (Lyude Paul) [1827812] - [drm] drm/i915/gem: Avoid iterating an empty list (Lyude Paul) [1827812] - [drm] drm/i915: Fix AUX power domain toggling across TypeC mode resets (Lyude Paul) [1827812] - [drm] drm/dp_mst: Increase ACT retry timeout to 3s (Lyude Paul) [1827812] - [drm] drm/ast: Don't check new mode if CRTC is being disabled (Lyude Paul) [1827812] - [drm] drm/amdgpu: Replace invalid device ID with a valid device ID (Lyude Paul) [1827812] - [drm] drm/amdgpu/display: use blanked rather than plane state for sync groups (Lyude Paul) [1827812] - [drm] drm/qxl: Use correct notify port address when creating cursor ring (Lyude Paul) [1827812] - [drm] drm/dp_mst: Reformat drm_dp_check_act_status() a bit (Lyude Paul) [1827812] - [drm] drm/ast: fix missing break in switch statement for format->cppcase 4 (Lyude Paul) [1827812] - [drm] drm/amd/display: Revalidate bandwidth before commiting DC updates (Lyude Paul) [1827812] - [drm] drm/nouveau: gr/gk20a: Use firmware version 0 (Lyude Paul) [1827812] - [drm] drm/amdgpu: Sync with VM root BO when switching VM to CPU update mode (Lyude Paul) [1827812] - [drm] drm/amd/powerpay: Disable gfxoff when setting manual mode on picasso and raven (Lyude Paul) [1827812] - [drm] drm/amd/display: Do not disable pipe split if mode is not supported (Lyude Paul) [1827812] - [drm] drm/amd/display: dmcu wait loop calculation is incorrect in RV (Lyude Paul) [1827812] - [drm] drm/amd/display: Correct updating logic of dcn21's pipe VM flags (Lyude Paul) [1827812] - [drm] drm/ast: Allocate initial CRTC state of the correct size (Lyude Paul) [1827812] - [drm] drm/hisilicon: Enforce 128-byte stride alignment to fix the hardware limitation (Lyude Paul) [1827812] - [drm] drm/dp: Lenovo X13 Yoga OLED panel brightness fix (Lyude Paul) [1827812] - [drm] drm/i915/dpcd_bl: Unbreak enable_dpcd_backlight modparam (Lyude Paul) [1827812] - [drm] drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels (Lyude Paul) [1827812] - [drm] drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED panel (Lyude Paul) [1827812] - [drm] drm/dp: Introduce EDID-based quirks (Lyude Paul) [1827812] - [drm] drm/amdgpu: Init data to avoid oops while reading pp_num_states (Lyude Paul) [1827812] - [drm] drm/amd/display: fix virtual signal dsc setup (Lyude Paul) [1827812] - [drm] drm/amd/display: Force watermark value propagation (Lyude Paul) [1827812] - [drm] drm: bridge: adv7511: Extend list of audio sample rates (Lyude Paul) [1827812] - [drm] drm/amdgpu: fix and cleanup amdgpu_gem_object_close v4 (Lyude Paul) [1827812] - [drm] drm/vkms: Hold gem object while still in-use (Lyude Paul) [1827812] - [drm] drm/amd/display: Not doing optimize bandwidth if flip pending (Lyude Paul) [1827812] - [drm] drm/amd/display: remove invalid dc_is_hw_initialized function (Lyude Paul) [1827812] - [drm] drm/amd/display: DP training to set properly SCRAMBLING_DISABLE (Lyude Paul) [1827812] - [drm] drm/edid: Add Oculus Rift S to non-desktop list (Lyude Paul) [1827812] - [drm] drm/amd/display: Fix potential integer wraparound resulting in a hang (Lyude Paul) [1827812] - [drm] drm/amd/display: Added locking for atomic update stream and update planes (Lyude Paul) [1827812] - [drm] drm/amd/display: Indicate dsc updates explicitly (Lyude Paul) [1827812] - [drm] drm/amd/display: Split program front end part that occur outside lock (Lyude Paul) [1827812] - [drm] drm/amd/display: drop cursor position check in atomic test (Lyude Paul) [1827812] - [drm] drm/amd/amdgpu: Update update_config() logic (Lyude Paul) [1827812] - [drm] drm/amdgpu: Use GEM obj reference for KFD BOs (Lyude Paul) [1827812] - [drm] drm/amd/powerplay: perform PG ungate prior to CG ungate (Lyude Paul) [1827812] - [drm] drm/amdgpu: drop unnecessary cancel_delayed_work_sync on PG ungate (Lyude Paul) [1827812] - [drm] drm/i915: Propagate error from completed fences (Lyude Paul) [1827812] - [drm] drm/i915/gvt: Init DPLL/DDI vreg for virtual display instead of inheritance (Lyude Paul) [1827812] - [drm] drm/amd/display: Prevent dpcd reads with passive dongles (Lyude Paul) [1827812] - [drm] drm/amd/display: fix counter in wait_for_no_pipes_pending (Lyude Paul) [1827812] - [gpu] vgaarb: Keep adding VGA device in queue (Lyude Paul) [1827812]- [net] openvswitch: fixes potential deadlock in dp cleanup code (Eelco Chaudron) [1845662] - [net] openvswitch: reorder masks array based on usage (Eelco Chaudron) [1845662] - [net] openvswitch: ovs_ct_exit to be done under ovs_lock (Eelco Chaudron) [1860853] - [net] ip6_gre: fix null-ptr-deref in ip6gre_init_net() (Hangbin Liu) [1860221] - [net] ip6_gre: fix use-after-free in ip6gre_tunnel_lookup() (Hangbin Liu) [1860221] - [net] mld: fix memory leak in ipv6_mc_destroy_dev() (Hangbin Liu) [1860221] - [net] ipv6: Fix suspicious RCU usage warning in ip6mr (Hangbin Liu) [1860221] - [net] ip6mr: Fix RCU list debugging warning (Hangbin Liu) [1860221] - [net] revert "ipv6: add mtu lock check in __ip6_rt_update_pmtu" (Hangbin Liu) [1860221] - [netdrv] macsec: avoid to set wrong mtu (Sabrina Dubroca) [1860944] - [netdrv] team: fix hang in team_mode_get() (Hangbin Liu) [1860219] - [include] xfrm: Fix crash when the hold queue is used. (Xin Long) [1860672] - [net] xfrm: policy: fix IPv6-only espintcp compilation (Xin Long) [1860672] - [net] xfrm: esp6: fix encapsulation header offset computation (Xin Long) [1860672] - [net] xfrm: Fix double ESP trailer insertion in IPsec crypto offload. (Xin Long) [1860672] - [net] esp4: improve xfrm4_beet_gso_segment() to be more readable (Xin Long) [1860672] - [net] xfrm interface: don't take extra reference to netdev (Xin Long) [1860672] - [net] xfrm interface: fix oops when deleting a x-netns interface (Xin Long) [1860672] - [net] xfrm: remove the unnecessary .net_exit for xfrmi (Xin Long) [1860672] - [net] xfrm: Always set XFRM_TRANSFORMED in xfrm{4, 6}_output_finish (Xin Long) [1860672] - [include] xfrm: fix error in comment (Xin Long) [1860672] - [net] sctp: shrink stream outq when fails to do addstream reconf (Xin Long) [1853535] - [net] sctp: shrink stream outq only when new outcnt < old outcnt (Xin Long) [1853535] - [net] tipc: fix kernel WARNING in tipc_msg_append() (Xin Long) [1844377] - [net] tipc: fix NULL pointer dereference in streaming (Xin Long) [1844377] - [net] tipc: add test for Nagle algorithm effectiveness (Xin Long) [1844377] - [net] tipc: fix failed service subscription deletion (Xin Long) [1844377] - [net] tipc: fix memory leak in service subscripting (Xin Long) [1844377] - [net] tipc: fix large latency in smart Nagle streaming (Xin Long) [1844377] - [net] mptcp: add receive buffer auto-tuning (Florian Westphal) [1858276] - [tools] selftests: mptcp: add option to specify size of file to transfer (Florian Westphal) [1858276] - [net] mptcp: fallback in case of simultaneous connect (Florian Westphal) [1858276] - [net] mptcp: improve fallback to TCP (Florian Westphal) [1858276] - [net] mptcp: fix unblocking connect() (Florian Westphal) [1858276] - [net] mptcp: cache msk on MP_JOIN init_req (Florian Westphal) [1858276] - [net] mptcp: remove msk from the token container at destruction time. (Florian Westphal) [1858276] - [net] mptcp: fix races between shutdown and recvmsg (Florian Westphal) [1858276] - [net] mptcp: fix race between MP_JOIN and close (Florian Westphal) [1858276] - [net] mptcp: drop MPTCP_PM_MAX_ADDR (Florian Westphal) [1858276] - [net] mptcp: bugfix for RM_ADDR option parsing (Florian Westphal) [1858276] - [net] mptcp: drop MP_JOIN request sock on syn cookies (Florian Westphal) [1858276] - [net] mptcp: avoid NULL-ptr derefence on fallback (Florian Westphal) [1858276] - [net] mptcp: drop sndr_key in mptcp_syn_options (Florian Westphal) [1858276] - [net] mptcp: MPTCP_HMAC_TEST should depend on MPTCP (Florian Westphal) [1858276] - [net] mptcp: fix DSS map generation on fin retransmission (Florian Westphal) [1858276] - [net] inet_connection_sock: clear inet_num out of destroy helper (Florian Westphal) [1858276] - [net] mptcp: fix NULL ptr dereference in MP_JOIN error path (Florian Westphal) [1858276] - [net] mptcp: avoid blocking in tcp_sendpages (Florian Westphal) [1858276] - [net] mptcp: break and restart in case mptcp sndbuf is full (Florian Westphal) [1858276] - [net] l2tp: remove skb_dst_set() from l2tp_xmit_skb() (Xin Long) [1832799] - [net] rtnetlink: prevent underflows in do_setvfinfo() (Davide Caratti) [1854740] - [net] netfilter: nf_tables: reintroduce the NFT_SET_CONCAT flag (Phil Sutter) [1847553] - [net] netfilter: nf_tables: report EOPNOTSUPP on unsupported flags/object type (Phil Sutter) [1847553] - [net] openvswitch: take into account de-fragmentation/gso_size in execute_check_pkt_len (Lorenzo Bianconi) [1851888] - [tools] selftests: forwarding: mirror_lib: Use mausezahn (Davide Caratti) [1816443] - [x86] perf/x86/rapl: Add Ice Lake RAPL support (Michael Petlan) [1841266] - [arm64] arm64/mm: enable HugeTLB migration (Donghai Qiao) [1758717] - [scsi] scsi: core: Run queue in case of I/O resource contention failure (Ewan Milne) [1854958] - [message] scsi: mptscsih: Fix read sense data size (Tomas Henzl) [1850563] - [netdrv] net: qed: fix buffer overflow on ethtool -d (Manish Chopra) [1858915] - [x86] sched/cputime: Improve cputime_adjust() (Oleg Nesterov) [1859977] - [kernel] uprobes: Change handle_swbp() to send SIGTRAP with si_code=SI_KERNEL, to fix GDB regression (Oleg Nesterov) [1855390] - [x86] x86/asm: Fix MWAITX C-state hint value (Vladis Dronov) [1767064] - [x86] x86/kexec: Fill in acpi_rsdp_addr from the first kernel (Kairui Song) [1684462] - [x86] x86/kexec: Don't setup EFI info if EFI runtime is not enabled (Kairui Song) [1684462] - [vfio] vfio/pci: fix racy on error and request eventfd ctx (Alex Williamson) [1858346] - [platform] platform/x86: ISST: Increase timeout (Prarit Bhargava) [1854682] - [mm] x86/mm: split vmalloc_sync_all() (Al Stone) [1851547] - [acpi] ACPI: watchdog: Fix gas->access_width usage (Al Stone) [1851547] - [acpi] ACPICA: Introduce ACPI_ACCESS_BYTE_WIDTH() macro (Al Stone) [1851547]- [virt] kvm: x86: take as_id into account when checking PGD (Vitaly Kuznetsov) [1615704] - [arm64] kvm: arm64: Stop clobbering x0 for HVC_SOFT_RESTART (Andrew Jones) [1855788] - [arm64] kvm: arm64: pmu: Fix per-CPU access in preemptible context (Andrew Jones) [1855788] - [arm64] kvm: arm64: Fix kvm_reset_vcpu() return code being incorrect with SVE (Andrew Jones) [1855788] - [arm64] kvm: arm64: Annotate hyp NMI-related functions as __always_inline (Andrew Jones) [1855788] - [arm64] kvm: arm64: Remove host_cpu_context member from vcpu structure (Andrew Jones) [1855788] - [arm64] kvm: arm64: Move hyp_symbol_addr() to kvm_asm.h (Andrew Jones) [1855788] - [arm64] kvm: arm64: Handle PtrAuth traps early (Andrew Jones) [1855788] - [arm64] kvm: arm64: Save the host's PtrAuth keys in non-preemptible context (Andrew Jones) [1855788] - [arm64] kvm: arm64: Stop save/restoring ACTLR_EL1 (Andrew Jones) [1855788] - [kernel] firmware: smccc: Update link to latest SMCCC specification (Andrew Jones) [1855788] - [kernel] arm/arm64: smccc-1.1: Handle function result as parameters (Andrew Jones) [1855788] - [kernel] arm/arm64: smccc-1.1: Make return values unsigned long (Andrew Jones) [1855788] - [video] Revert "hyperv_fb: Fix hibernation for the deferred IO feature" (Mohammed Gamal) [1858755] - [netdrv] net/mlx5e: CT: Map 128 bits labels to 32 bit map ID (Alaa Hleihel) [1859540] - [security] ima: move APPRAISE_BOOTPARAM dependency on ARCH_POLICY to runtime (Bruno Meneguele) [1847219] - [scsi] scsi: lpfc: NVMe remote port devloss_tmo from lldd (Dick Kennedy) [1859344] - [netdrv] net/mlx5e: Disable devlink port support for non-switchdev mode (Alaa Hleihel) [1858501 1852904 1849623] - [tools] perf powerpc: Don't ignore sym-handling.c file (Michael Petlan) [1858133] - [fs] ext4: reserve revoke credits in __ext4_new_inode (Lukas Czerner) [1856760] - [include] jbd2: make jbd2_handle_buffer_credits() handle reserved handles (Lukas Czerner) [1856760] - [fs] jbd2: avoid leaking transaction credits when unreserving handle (Lukas Czerner) [1856760] - [fs] jbd2: Fine tune estimate of necessary descriptor blocks (Lukas Czerner) [1856760] - [fs] jbd2: Provide trace event for handle restarts (Lukas Czerner) [1856760] - [fs] ext4: Reserve revoke credits for freed blocks (Lukas Czerner) [1856760] - [fs] jbd2: Make credit checking more strict (Lukas Czerner) [1856760] - [fs] jbd2: Rename h_buffer_credits to h_total_credits (Lukas Czerner) [1856760] - [fs] jbd2: add missing tracepoint for reserved handle (Lukas Czerner) [1856760] - [fs] jbd2: Reserve space for revoke descriptor blocks (Lukas Czerner) [1856760] - [fs] jbd2: Drop jbd2_space_needed() (Lukas Czerner) [1856760] - [fs] jbd2: remove repeated assignments in __jbd2_log_wait_for_space() (Lukas Czerner) [1856760] - [fs] jbd2: Account descriptor blocks into t_outstanding_credits (Lukas Czerner) [1856760] - [include] jbd2: update locking documentation for transaction_t (Lukas Czerner) [1856760] - [fs] jbd2: Factor out common parts of stopping and restarting a handle (Lukas Czerner) [1856760] - [fs] jbd2: Drop pointless wakeup from jbd2_journal_stop() (Lukas Czerner) [1856760] - [fs] jbd2: Drop pointless check from jbd2_journal_stop() (Lukas Czerner) [1856760] - [fs] jbd2: Reorganize jbd2_journal_stop() (Lukas Czerner) [1856760] - [fs] ext4, jbd2: Provide accessor function for handle credits (Lukas Czerner) [1856760] - [fs] ext4: Provide function to handle transaction restarts (Lukas Czerner) [1856760] - [fs] ext4: Avoid unnecessary revokes in ext4_alloc_branch() (Lukas Czerner) [1856760] - [fs] ext4: Use ext4_journal_extend() instead of jbd2_journal_extend() (Lukas Czerner) [1856760] - [fs] jbd2: Completely fill journal descriptor blocks (Lukas Czerner) [1856760] - [fs] jbd2: Fixup stale comment in commit code (Lukas Czerner) [1856760] - [include] jbd2: Fix possible overflow in jbd2_log_space_left() (Lukas Czerner) [1856760] - [fs] ext4, jbd2: ensure panic by fix a race between jbd2 abort and ext4 error handlers (Lukas Czerner) [1856760] - [fs] ext4: remove set but not used variable 'es' in ext4_jbd2.c (Lukas Czerner) [1856760] - [fs] ext4: remove set but not used variable 'es' (Lukas Czerner) [1856760] - [fs] ext4: save all error info in save_error_info() and drop ext4_set_errno() (Lukas Czerner) [1856760] - [fs] ext4: save the error code which triggered an ext4_error() in the superblock (Lukas Czerner) [1856760] - [fs] jbd2: clean __jbd2_journal_abort_hard() and __journal_abort_soft() (Lukas Czerner) [1856760] - [fs] ext4: stop overwrite the errcode in ext4_setup_super (Lukas Czerner) [1856760] - [fs] ext4: fix partial cluster initialization when splitting extent (Lukas Czerner) [1856760] - [fs] ext4: avoid ext4_error()'s caused by ENOMEM in the truncate path (Lukas Czerner) [1856760] - [fs] ext4: fix race between ext4_sync_parent() and rename() (Lukas Czerner) [1856760] - [fs] ext4: clean up ext4_ext_convert_to_initialized() error handling (Lukas Czerner) [1856760] - [fs] ext4: clean up GET_BLOCKS_PRE_IO error handling (Lukas Czerner) [1856760] - [fs] ext4: fix error pointer dereference (Lukas Czerner) [1856760] - [fs] ext4: Avoid freeing inodes on dirty list (Lukas Czerner) [1856760] - [fs] writeback: Export inode_io_list_del() (Lukas Czerner) [1856760] - [fs] ext4: fix buffer_head refcnt leak when ext4_iget() fails (Lukas Czerner) [1856760] - [fs] ext4: fix EXT_MAX_EXTENT/INDEX to check for zeroed eh_max (Lukas Czerner) [1856760] - [fs] ext4: fix a style issue in fs/ext4/acl.c (Lukas Czerner) [1856760] - [fs] ext4: fix return-value types in several function comments (Lukas Czerner) [1856760] - [fs] ext4: use non-movable memory for superblock readahead (Lukas Czerner) [1856760] - [fs] ext4: fix incorrect group count in ext4_fill_super error message (Lukas Czerner) [1856760] - [fs] ext4: fix incorrect inodes per group in error message (Lukas Czerner) [1856760] - [fs] ext4: avoid ENOSPC when avoiding to reuse recently deleted inodes (Lukas Czerner) [1856760] - [fs] ext4: fix a data race at inode->i_disksize (Lukas Czerner) [1856760] - [fs] ext4: fix a data race at inode->i_blocks (Lukas Czerner) [1856760] - [fs] ext4: clean up error return for convert_initialized_extent() (Lukas Czerner) [1856760] - [fs] ext4: force buffer up-to-date while marking it dirty (Lukas Czerner) [1856760] - [fs] ext4: fix race between writepages and enabling EXT4_EXTENTS_FL (Lukas Czerner) [1856760] - [fs] ext4: rename s_journal_flag_rwsem to s_writepages_rwsem (Lukas Czerner) [1856760] - [fs] ext4: potential crash on allocation error in ext4_alloc_flex_bg_array() (Lukas Czerner) [1856760] - [fs] ext4: fix potential race between s_flex_groups online resizing and access (Lukas Czerner) [1856760] - [fs] ext4: fix potential race between s_group_info online resizing and access (Lukas Czerner) [1856760] - [fs] ext4: fix potential race between online resizing and write operations (Lukas Czerner) [1856760] - [fs] ext4: add cond_resched() to __ext4_find_entry() (Lukas Czerner) [1856760] - [fs] ext4: fix a data race in EXT4_I(inode)->i_disksize (Lukas Czerner) [1856760] - [fs] ext4: fix checksum errors with indexed dirs (Lukas Czerner) [1856760] - [fs] ext4: simplify checking quota limits in ext4_statfs() (Lukas Czerner) [1856760] - [fs] ext4: choose hardlimit when softlimit is larger than hardlimit in ext4_statfs_project() (Lukas Czerner) [1856760] - [fs] ext4: don't assume that mmp_nodename/bdevname have NUL (Lukas Czerner) [1856760] - [fs] jbd2: make sure ESHUTDOWN to be recorded in the journal superblock (Lukas Czerner) [1856760] - [fs] ext4, jbd2: ensure panic when aborting with zero errno (Lukas Czerner) [1856760] - [fs] jbd2: switch to use jbd2_journal_abort() when failed to submit the commit record (Lukas Czerner) [1856760] - [fs] jbd2_seq_info_next should increase position index (Lukas Czerner) [1856760] - [fs] ext4,jbd2: fix comment and code style (Lukas Czerner) [1856760] - [fs] ext4: fix extent_status trace points (Lukas Czerner) [1856760] - [fs] ext4: fix extent_status fragmentation for plain files (Lukas Czerner) [1856760] - [fs] jbd2: clear JBD2_ABORT flag before journal_reset to update log tail info when load journal (Lukas Czerner) [1856760] - [fs] ext4: fix some nonstandard indentation in extents.c (Lukas Czerner) [1856760] - [fs] ext4: fix documentation for ext4_ext_try_to_merge() (Lukas Czerner) [1856760] - [fs] ext4: avoid fetching btime in ext4_getattr() unless requested (Lukas Czerner) [1856760] - [fs] ext4: fix ext4_dax_read/write inode locking sequence for IOCB_NOWAIT (Lukas Czerner) [1856760] - [fs] ext4: optimize __ext4_check_dir_entry() (Lukas Czerner) [1856760] - [fs] ext4: check for directory entries too close to block end (Lukas Czerner) [1856760] - [fs] ext4: fix a bug in ext4_wait_for_tail_page_commit (Lukas Czerner) [1856760] - [fs] jbd2: Fix statistics for the number of logged blocks (Lukas Czerner) [1856760] - [fs] ext4: Fix ext4_should_journal_data() for EA inodes (Lukas Czerner) [1856760] - [fs] ext4: Fix credit estimate for final inode freeing (Lukas Czerner) [1856760] - [fs] ext4: Do not iput inode under running transaction (Lukas Czerner) [1856760] - [fs] ext4: Move marking of handle as sync to ext4_add_nondir() (Lukas Czerner) [1856760] - [fs] ext4: update direct I/O read lock pattern for IOCB_NOWAIT (Lukas Czerner) [1856760] - [fs] jbd2: flush_descriptor(): Do not decrease buffer head's ref count (Lukas Czerner) [1856760] - [fs] ext4: fix prefetchw of NULL page (Lukas Czerner) [1856760] - [fs] ext4: check for non-zero journal inum in ext4_calculate_overhead (Lukas Czerner) [1814574] - [fs] ext4: do not commit super on read-only bdev (Lukas Czerner) [1814574] - [kernel] isolcpus: Affine unbound kernel threads to housekeeping cpus (Marcelo Tosatti) [1791930] - [kernel] kthread: Switch to cpu_possible_mask (Marcelo Tosatti) [1791930] - [scsi] scsi: lpfc: Quieten some printks (Dick Kennedy) [1859338] - [scsi] Revert "scsi: lpfc: Fix scsi host template for SLI3 vports" (Dick Kennedy) [1851189] - [md] dm mpath: use double checked locking in fast path (Mike Snitzer) [1848651] - [md] dm mpath: rename current_pgpath to pgpath in multipath_prepare_ioctl (Mike Snitzer) [1848651] - [md] dm mpath: rework __map_bio() (Mike Snitzer) [1848651] - [md] dm mpath: factor out multipath_queue_bio (Mike Snitzer) [1848651] - [md] dm mpath: push locking down to must_push_back_rq() (Mike Snitzer) [1848651] - [md] dm mpath: take m->lock spinlock when testing QUEUE_IF_NO_PATH (Mike Snitzer) [1848651] - [md] dm mpath: changes from initial m->flags locking audit (Mike Snitzer) [1848651] - [md] dm rq: don't call blk_mq_queue_stopped() in dm_stop_queue() (Mike Snitzer) [1848651] - [md] dm: do not use waitqueue for request-based DM (Mike Snitzer) [1848651] - [block] blk-mq: consider non-idle request as "inflight" in blk_mq_rq_inflight() (Mike Snitzer) [1848651] - [powerpc] powerpc/fadump: fix race between pstore write and fadump crash trigger (Steve Best) [1820109] - [tools] libbpf: Fix probe code to return EPERM if encountered (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1856592] - [tools] tools selftests/bpf: Fix vmlinux test for kprobe and trampoline probes (Jiri Olsa) [1855778] - [net] net: Restrict receive packets queuing to housekeeping CPUs (Nitesh Narayan Lal) [1844520] - [pci] PCI: Restrict probe functions to housekeeping CPUs (Nitesh Narayan Lal) [1844520] - [lib] lib: Restrict cpumask_local_spread to houskeeping CPUs (Nitesh Narayan Lal) [1844520]- [tools] selftests/powerpc: Purge extra count_pmc() calls of ebb selftests (Desnes Augusto Nunes do Rosario) [1739769] - [netdrv] bonding: symmetric ICMP transmit (Jarod Wilson) [1760293] - [netdrv] bonding: balance ICMP echoes in layer3+4 mode (Jarod Wilson) [1760362] - [powerpc] powerpc/vas: Report proper error code for address translation failure (Steve Best) [1858160] - [infiniband] IB/hfi1: Fix module use count flaw due to leftover module put calls (Kamal Heib) [1858388] - [gpu] vgaarb: Add support for 64-bit frame buffer address (Karol Herbst) [1735217] - [netdrv] ionic: centralize queue reset code (Jonathan Toppins) [1857851] - [s390] s390/qeth: support net namespaces for L3 devices (Philipp Rudo) [1857311] - [s390] s390/qeth: implement smarter resizing of the RX buffer pool (Philipp Rudo) [1857311] - [s390] s390/qeth: refactor buffer pool code (Philipp Rudo) [1857311] - [s390] s390/qeth: use page pointers to manage RX buffer pool (Philipp Rudo) [1857311] - [s390] s390/qeth: cancel RX reclaim work earlier (Philipp Rudo) [1857311] - [s390] s390/qeth: handle error when backing RX buffer (Philipp Rudo) [1857311] - [s390] s390/qeth: don't reset default_out_queue (Philipp Rudo) [1857311] - [s390] s390/qdio: fill SBALEs with absolute addresses (Philipp Rudo) [1857311] - [s390] s390/qeth: fix off-by-one in RX copybreak check (Philipp Rudo) [1857311] - [s390] s390/qeth: vnicc Fix EOPNOTSUPP precedence (Philipp Rudo) [1857311] - [s390] s390/qeth: consolidate QDIO queue setup (Philipp Rudo) [1857311] - [s390] s390/pci: Fix s390_mmio_read/write with MIO (Philipp Rudo) [1857315] - [s390] scsi: zfcp: Fix panic on ERP timeout for previously dismissed ERP action (Philipp Rudo) [1857312] - [net] net/smc: tolerate future SMCD versions (Philipp Rudo) [1854992] - [fs] ext4: use RCU API in debug_print_tree (Lukas Czerner) [1837777] - [fs] ext4: fix potential use after free after remounting with noblock_validity (Lukas Czerner) [1837777] - [fs] ext4: add cond_resched() to ext4_protect_reserved_inode (Lukas Czerner) [1837777] - [fs] fibmap: Reject negative block numbers (Carlos Maiolino) [1687121] - [vfio] vfio/pci: Fix SR-IOV VF handling with MMIO blocking (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio-pci: Invalidate mmaps and block MMIO access on disabled memory (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio-pci: Fault mmaps to enable vma tracking (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio/type1: Support faulting PFNMAP vmas (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio/type1: Fix VA->PA translation for PFNMAP VMAs in vaddr_get_pfn() (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio/pci: call irq_bypass_unregister_producer() before freeing irq (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio_pci: Enable memory accesses before calling pci_map_rom (Alex Williamson) [1837310] {CVE-2020-12888} - [x86] mm: Fix mremap not considering huge pmd devmap (Rafael Aquini) [1843441] {CVE-2020-10757} - [x86] x86/speculation: PR_SPEC_FORCE_DISABLE enforcement for indirect branches (Waiman Long) [1847396 1846029] {CVE-2020-10768} - [x86] x86/speculation: Prevent rogue cross-process SSBD shutdown (Waiman Long) [1847358 1846029] {CVE-2020-10766} - [x86] x86/speculation: Avoid force-disabling IBPB based on STIBP and enhanced IBRS (Waiman Long) [1847379 1846029] {CVE-2020-10767} - [x86] x86/speculation/mds: Mark mds_user_clear_cpu_buffers() __always_inline (Waiman Long) [1846029] - [arm64] Return ENODEV when the selected speculation misfeature is unsupported (Waiman Long) [1846029] - [x86] x86/speculation: Add support for STIBP always-on preferred mode (Waiman Long) [1846029] - [x86] x86/speculation: Change misspelled STIPB to STIBP (Waiman Long) [1846029]- [powerpc] powernv/iov: Ensure the pdn for VFs always contains a valid PE number (David Gibson) [1848235] - [powerpc] don't use ioremap_prot() nor __ioremap() unless really needed (Greg Kurz) [1855957] - [char] tpm: ibmvtpm: Wait for ready buffer before probing for TPM2 attributes (David Gibson) [1837283] - [powerpc] Check prom_init for disallowed sections (Michael Roth) [1856099] - [powerpc] prom_init: Move __prombss to it's own section and store it in .bss (Michael Roth) [1856099] - [powerpc] prom_init: Move const structures to __initconst (Michael Roth) [1856099] - [powerpc] prom_init: Make "default_colors" const (Michael Roth) [1856099] - [powerpc] prom_init: Move ibm_arch_vec to __prombss (Michael Roth) [1856099] - [fs] ext4: unregister sysfs path before destroying jbd2 journal (Lukas Czerner) [1814577] - [powerpc] powerpc/pseries/svm: Fix incorrect check for shared_lppaca_size (Steve Best) [1856889] - [netdrv] bnxt_en: fix NULL dereference in case SR-IOV configuration fails (Jonathan Toppins) [1856372] - [security] kexec: Allow kexec_file() with appropriate IMA policy when locked down (Bruno Meneguele) [1854097] - [x86] x86/apic/vector: Warn when vector space exhaustion breaks affinity (Neil Horman) [1714686] - [tools] perf report TUI: Fix segmentation fault in perf_evsel__hists_browse() (Michael Petlan) [1855737] - [fs] ext4: do not zeroout extents beyond i_disksize (Lukas Czerner) [1817816] - [pci] PCI/DPC: Print IRQ number used by port (Myron Stowe) [1855343] - [pci] PCI/AER: Use "aer" variable for capability offset (Myron Stowe) [1855343] - [pci] PCI/AER: Remove redundant dev->aer_cap checks (Myron Stowe) [1855343] - [pci] PCI/AER: Remove redundant pci_is_pcie() checks (Myron Stowe) [1855343] - [pci] PCI/AER: Remove HEST/FIRMWARE_FIRST parsing for AER ownership (Myron Stowe) [1855343] - [tools] selftests: bpf: use __u32 for sock::sk_pacing_rate (Yauheni Kaliuta) [1856324] - [tools] libbpf: Handle GCC noreturn-turned-volatile quirk (Yauheni Kaliuta) [1854327] - [netdrv] net/mlx5e: CT: Fix releasing ft entries (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Remove unused function param (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Return err_ptr from internal functions (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Expand tunnel register mappings (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Use mapping for zone restore register (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Re-use tuple modify headers for identical modify actions (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Export sharing of mod headers to a new file (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Add support for COPY steering action (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Accept flow rules without match (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Restore ct state from lookup in zone instead of tupleid (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Don't offload tuple rewrites for established tuples (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Use netdev_info instead of pr_info (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Allow header rewrite of 5-tuple and ct clear action (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Save ct entries tuples in hashtables (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: CT: Remove unused variables (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Avoid eswitch header inclusion in fs core layer (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: vxlan: Use RCU for vxlan table lookup (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Remove unused mlx5e_xsk_first_unused_channel (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Fix memory leak in cleanup (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix port buffers cell size value (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix 50G per lane indication (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix CPU mapping after function reload to avoid aRFS RX crash (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix VXLAN configuration restore after function reload (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Fix eeprom support for SFP module (Alaa Hleihel) [1856057] - [infiniband] IB/mlx5: Fix 50G per lane indication (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Do not include rwlock.h directly (Alaa Hleihel) [1856057] - [fs] jbd2: fix data races at struct journal_head (Lukas Czerner) [1792518] - [fs] jbd2: remove pointless assertion in __journal_remove_journal_head (Lukas Czerner) [1792518] - [fs] jbd2: improve comments about freeing data buffers whose page mapping is NULL (Lukas Czerner) [1792518] - [fs] jbd2: do not clear the BH_Mapped flag when forgetting a metadata buffer (Lukas Czerner) [1792518] - [fs] jbd2: move the clearing of b_modified flag to the journal_unmap_buffer() (Lukas Czerner) [1792518] - [fs] ext4: unlock on error in ext4_expand_extra_isize() (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: fix support for inode sizes > 1024 bytes (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: validate the debug_want_extra_isize mount option at parse time (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: add more paranoia checking in ext4_expand_extra_isize handling (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: unsigned int compared against zero (Lukas Czerner) [1836666] {CVE-2019-19319} - [fs] ext4: protect journal inode's blocks using block_validity (Lukas Czerner) [1836666] {CVE-2019-19319} - [powerpc] powerpc/kernel/sysfs: Add new config option PMU_SYSFS to enable PMU SPRs sysfs file creation (Michael Petlan) [1821284] - [powerpc] powerpc/kernel/sysfs: Refactor current sysfs.c (Michael Petlan) [1821284] - [kernel] irqdomain: Add the missing assignment of domain->fwnode for named fwnode (Mohammed Gamal) [1846666] - [security] lockdown: Allow unprivileged users to see lockdown status (Vladis Dronov) [1805299] - [edac] EDAC/ghes: Setup DIMM label from DMI and use it in error reports (Robert Richter) [1726153]- [x86] kvm: nvmx: fixes for preemption timer migration (Paolo Bonzini) [1854831] - [powerpc] pci/of: Parse unassigned resources (Greg Kurz) [1849921] - [video] revert "hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver" (Vitaly Kuznetsov) [1848840] - [video] revert "hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs" (Vitaly Kuznetsov) [1848840] - [pci] hv: Retry PCI bus D0 entry on invalid device state (Mohammed Gamal) [1846666] - [pci] hv: Fix the PCI HyperV probe failure path to release resource properly (Mohammed Gamal) [1846666] - [pci] hv: Allocate a named fwnode instead of an address-based one (Mohammed Gamal) [1846666] - [netdrv] tg3: driver sleeps indefinitely when EEH errors exceed eeh_max_freezes (Jonathan Toppins) [1850176] - [scsi] scsi: lpfc: Fix kdump hang on PPC (Dick Kennedy) [1722596] - [fs] nfsd: fix nfsdfs inode reference count leak ("J. Bruce Fields") [1846235] - [fs] nfsd4: fix nfsdfs reference count loop ("J. Bruce Fields") [1846235] - [kernel] sched: Defend cfs and rt bandwidth quota against overflow (Phil Auld) [1854180] - [kernel] sched/core: Make some functions static (Phil Auld) [1854180] - [kernel] sched/fair: Refill bandwidth before scaling (Phil Auld) [1854180] - [kernel] sched/fair: Eliminate bandwidth race between throttling and distribution (Phil Auld) [1854180] - [kernel] sched/fair: Fix race between runtime distribution and assignment (Phil Auld) [1854180] - [kernel] sched/deadline: Initialize ->dl_boosted (Phil Auld) [1854179] - [kernel] sched/core: Fix PI boosting between RT and DEADLINE tasks (Phil Auld) [1854179] - [netdrv] ibmveth: Fix max MTU limit (Diego Domingos) [1846435] - [kernel] sched/core: Fix ttwu() race (Phil Auld) [1854178] - [tools] perf flamegraph: Explicitly set utf-8 encoding (Michael Petlan) [1849027] - [kernel] sched/core: Check cpus_mask, not cpus_ptr in __set_cpus_allowed_ptr(), to fix mask corruption (Phil Auld) [1854174] - [kernel] workqueue: Remove the warning in wq_worker_sleeping() (Phil Auld) [1854174] - [kernel] sched/fair: Fix negative imbalance in imbalance calculation (Phil Auld) [1854174] - [kernel] sched/fair: Optimize select_idle_core() (Phil Auld) [1854174] - [x86] x86/PCI: Mark Intel C620 MROMs as having non-compliant BARs (Myron Stowe) [1854184] - [netdrv] r8169: fix firmware not resetting tp->ocp_base (Josef Oskera) [1851960] - [acpi] ACPI: configfs: Disallow loading ACPI tables when locked down (Lenny Szubowicz) [1852969] - [arm64] Revert "bpf: Restrict bpf_probe_read{, str}() only to archs where they work" (Jiri Olsa) [1847837] - [s390] s390/mm: Explicitly compare PAGE_DEFAULT_KEY against zero in storage_key_init_range (Jiri Olsa) [1847837] - [net] Bluetooth: Modify LE window and interval for suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix incorrect type for window and interval (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Use DEFER_SETUP to group ECRED connections (Gopal Tiwari) [1838924] - [net] Bluetooth: don't assume key size is 16 when the command fails (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add get_peer_pid callback (Gopal Tiwari) [1838924] - [net] Bluetooth: Restore running state if suspend fails (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix incorrect branch in connection complete (Gopal Tiwari) [1838924] - [net] Bluetooth: Do not cancel advertising when starting a scan (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: remove set but not used variable 'credits' (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Fix a condition in l2cap_sock_recvmsg() (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: handle l2cap config request during open state (Gopal Tiwari) [1838924] - [net] Bluetooth: clean up connection in hci_cs_disconnect (Gopal Tiwari) [1838924] - [net] Bluetooth: Pause discovery and advertising during suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Handle LE devices during suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Handle BR/EDR devices during suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Handle PM_SUSPEND_PREPARE and PM_POST_SUSPEND (Gopal Tiwari) [1838924] - [net] Bluetooth: mgmt: add mgmt_cmd_status in add_advertising (Gopal Tiwari) [1838924] - [net] Bluetooth: fix off by one in err_data_reporting cmd masks (Gopal Tiwari) [1838924] - [net] Bluetooth: Use bt_dev_err for RPA generation failure message (Gopal Tiwari) [1838924] - [net] Bluetooth: RFCOMM: fix ODEBUG bug in rfcomm_dev_ioctl (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add module option to enable ECRED mode (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add initial code for Enhanced Credit Based Mode (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add definitions (Gopal Tiwari) [1838924] - [net] Bluetooth: Increment management interface revision (Gopal Tiwari) [1838924] - [net] Bluetooth: Make use of skb_pull to parse L2CAP signaling PDUs (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix calculation of SCO handle for packet processing (Gopal Tiwari) [1838924] - [net] Bluetooth: guard against controllers sending zero'd events (Gopal Tiwari) [1838924] - [net] Bluetooth: During le_conn_timeout disable EXT_ADV (Gopal Tiwari) [1838924] - [net] Bluetooth: Remove adv set for directed advertising (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix Suspicious RCU usage warnings (Gopal Tiwari) [1838924] - [net] Bluetooth: Use list_for_each_entry_rcu() to traverse RCU list in RCU read-side CS (Gopal Tiwari) [1838924] - [net] Bluetooth: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [net] Bluetooth: fix passkey uninitialized when used (Gopal Tiwari) [1838924] - [net] Bluetooth: RFCOMM: Use MTU auto tune logic (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix crash when using new BT_PHY option (Gopal Tiwari) [1838924] - [net] Bluetooth: Disable Extended Adv if enabled (Gopal Tiwari) [1838924] - [net] Bluetooth: Add BT_PHY socket option (Gopal Tiwari) [1838924] - [net] Bluetooth: secure bluetooth stack from bluedump attack (Gopal Tiwari) [1838924] - [net] Bluetooth: remove __get_channel/dir and __dir (Gopal Tiwari) [1838924] - [net] Bluetooth: prefetch channel before killing sock (Gopal Tiwari) [1838924] - [net] Bluetooth: optimize barrier usage for Rmw atomics (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix refcount use-after-free issue (Gopal Tiwari) [1838924] - [net] Bluetooth: SMP: Fix SALT value in some comments (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix race condition in hci_release_sock() (Gopal Tiwari) [1838924] - [net] Bluetooth: Move {min, max}_key_size debugfs into hci_debugfs_create_le (Gopal Tiwari) [1838924] - [net] Bluetooth: Add missing checks for HCI_ISODATA_PKT packet type (Gopal Tiwari) [1838924] - [net] Bluetooth: fix appearance typo in mgmt.c (Gopal Tiwari) [1838924] - [net] Bluetooth: adding missing const decoration to mgmt_status_table (Gopal Tiwari) [1838924] - [net] Bluetooth: Increment management interface revision (Gopal Tiwari) [1838924] - [net] Bluetooth: monitor: Add support for ISO packets (Gopal Tiwari) [1838924] - [net] Bluetooth: Make use of __check_timeout on hci_sched_le (Gopal Tiwari) [1838924] - [net] Bluetooth: Implementation of MGMT_OP_SET_BLOCKED_KEYS (Gopal Tiwari) [1838924] - [net] Bluetooth: remove redundant assignment to variable icid (Gopal Tiwari) [1838924] - [net] Bluetooth: Auto tune if input MTU is set to 0 (Gopal Tiwari) [1838924] - [net] Bluetooth: Remove usage of BT_ERR_RATELIMITED macro (Gopal Tiwari) [1838924] - [net] Bluetooth: Adding a bt_dev_warn_ratelimited macro (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix memory leak in hci_connect_le_scan (Gopal Tiwari) [1838924] - [net] Bluetooth: Allow combination of BDADDR_PROPERTY and INVALID_BDADDR quirks (Gopal Tiwari) [1838924] - [net] Bluetooth: delete a stray unlock (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix advertising duplicated flags (Gopal Tiwari) [1838924] - [net] net: use skb_queue_empty_lockless() in poll() handlers (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix not using LE_ADV_NONCONN_IND for instance 0 (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix using advertising instance duration as timeout (Gopal Tiwari) [1838924] - [fs] compat_ioctl: move hci_sock handlers into driver (Gopal Tiwari) [1838924] - [fs] compat_ioctl: move rfcomm handlers into driver (Gopal Tiwari) [1838924] - [net] Bluetooth: hci_core: fix init for HCI_USER_CHANNEL (Gopal Tiwari) [1838924] - [net] Bluetooth: Workaround directed advertising bug in Broadcom controllers (Gopal Tiwari) [1838924] - [net] Bluetooth: missed cpu_to_le16 conversion in hci_init4_req (Gopal Tiwari) [1838924] - [hid] Bluetooth: hidp: Fix assumptions on the return value of hidp_send_message (Gopal Tiwari) [1838924] - [net] Bluetooth: mgmt: Use struct_size() helper (Gopal Tiwari) [1838924] - [net] Bluetooth: Add support for utilizing Fast Advertising Interval (Gopal Tiwari) [1838924] - [net] Bluetooth: 6lowpan: Make variable header_ops constant (Gopal Tiwari) [1838924] - [net] Revert "Bluetooth: validate BLE connection interval updates" (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: print Intel fw build version in power-on boot (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: Switch from BT_ERR to bt_dev_err where possible (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: bfusb: Switch from BT_ERR to bt_dev_err where possible (Gopal Tiwari) [1838924] - [net] Bluetooth: Enable erroneous data reporting if WBS is supported (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Replace devm_gpiod_get() with devm_gpiod_get_optional() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Make bt_en and susclk not mandatory for QCA Rome (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btqca: Fix the NVM baudrate tag offcet for wcn3991 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Not send vendor pre-shutdown command for QCA Rome (Gopal Tiwari) [1838924] - [net] Bluetooth: Support querying for WBS support through MGMT (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Add flag to define wideband speech capability (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h4: Remove a redundant assignment in 'h4_flush()' (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h4: Fix a typo in a comment (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: Move variable into local scope (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Bug fixes while collecting controller memory dump (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: btrtl: Add support for RTL8822C (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: Fix a typo in Kconfig (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_uart: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_intel: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btintel: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Add support for 13d3:3548 Realtek 8822CE device (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Optimized code while enabling clocks for BT SOC (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Enable clocks required for BT SOC (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Use kvmalloc for FW allocations (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Enable power off/on support during hci down/up for QCA Rome (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Retry btsoc initialize when it fails (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Add QCA Rome power off support to the qca_power_shutdown() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: enable IRQ capability from devicetree (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_vhci: Add support for ISO packets (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h4: Add support for ISO packets (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btsdio: Check for valid packet type (Gopal Tiwari) [1838924] - [net] Bluetooth: Add definitions (Gopal Tiwari) [1838924] - [net] Bluetooth: Add support for (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: Add support for ISO packets (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Add qca_power_on() API to support both wcn399x and Rome power up (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm : Fix warning about missing blank lines after declarations (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Remove set but not used variable 'opcode' (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Use vfree() instead of kfree() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Add support for 04ca:3021 QCA_ROME device (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Collect controller memory dump during SSR (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Drive RTS only for BCM43438 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Replace of_device_get_match_data with device_get_match_data (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Add missing static inline in header (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Disable runtime suspend on Realtek devices (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: fix memory leak on fw (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: fix non-atomic allocation in completion handler (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Support pcm params in dts (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Support pcm configuration (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Disallow set_baudrate for BCM4354 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Edit the logical value for Realtek Bluetooth reset (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Use the BDADDR_PROPERTY quirk (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Add entry for BCM4335A0 UART bluetooth (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Add entry for BCM4334B0 UART Bluetooth (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: fix PM leak in error case of setup (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btqca: Rename ROME specific variables to generic variables (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btmtksdio: add MODULE_DEVICE_TABLE() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: Fix invalid-free in bcsp_close() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: add PM support (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Add compatible string for BCM43540 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: remove unneeded semicolon (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Fix RTS handling during startup (Gopal Tiwari) [1838924] - [bluetooth] Revert "Bluetooth: hci_qca: Add delay for wcn3990 stability" (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Remove return statement in btintel_reset_to_bootloader (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Split qca_power_setup() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Use regulator bulk enable/disable (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Don't vote for specific voltage (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Update regulator_set_load() usage (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Add delay for wcn3990 stability (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Trigger Intel FW download error recovery (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btwilink: drop superseded driver (Gopal Tiwari) [1838924] - [bluetooth] Revert "Bluetooth: hci_ll: set operational frequency earlier" (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Fix an issue for the incorrect error return code (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Use IS_ENABLED instead of #ifdef (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: print FW version after FW download (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: avoid unused function warning (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_nokia: Save a few cycles in 'nokia_enqueue()' (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Use cmd_timeout to reset Realtek device (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Fix an issue that failing to download the FW which size is over 32K bytes (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Remove trailing newline from calls to rtl_dev macros (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY for QCA UART Radio (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Remove redundant prefix from calls to rtl_dev macros (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY (Gopal Tiwari) [1838924] - [bluetooth] bluetooth: bcm: Add support for loading firmware for BCM4345C5 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Add firmware version print (Gopal Tiwari) [1838924] - [bluetooth] bluetooth: hci_bcm: Give more time to come out of reset (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: wait for Pre shutdown complete event before sending the Power off pulse (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Fix -Wunused-const-variable warnings (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Fix suspend issue for Realtek devices (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Remove redundant initializations to zero (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Make structure qca_proto constant (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: bpa10x: change return value (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: disable irqs when spinlock is acquired (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Additional Realtek 8822CE Bluetooth devices (Gopal Tiwari) [1838924]- [powerpc] powerpc/papr_scm: Implement support for PAPR_PDSM_HEALTH (Gustavo Duarte) [1782178] - [powerpc] ndctl/papr_scm, uapi: Add support for PAPR nvdimm specific methods (Gustavo Duarte) [1782178] - [powerpc] powerpc/papr_scm: Improve error logging and handling papr_scm_ndctl() (Gustavo Duarte) [1782178] - [powerpc] powerpc/papr_scm: Fetch nvdimm health information from PHYP (Gustavo Duarte) [1782178] - [lib] seq_buf: Export seq_buf_printf (Gustavo Duarte) [1782178] - [firmware] efi: Restrict efivar_ssdt_load when the kernel is locked down (Lenny Szubowicz) [1852949] - [netdrv] vmxnet3: allow rx flow hash ops only when rss is enabled (Cathy Avery) [1845417] - [netdrv] net: vmxnet3: fix possible buffer overflow caused by bad DMA value in vmxnet3_get_rss() (Cathy Avery) [1845417] - [netdrv] vmxnet3: use correct hdr reference when packet is encapsulated (Cathy Avery) [1845417] - [netdrv] vmxnet3: update to version 4 (Cathy Avery) [1845417] - [netdrv] vmxnet3: add geneve and vxlan tunnel offload support (Cathy Avery) [1845417] - [netdrv] vmxnet3: add support to get/set rx flow hash (Cathy Avery) [1845417] - [netdrv] vmxnet3: prepare for version 4 changes (Cathy Avery) [1845417] - [netdrv] vmxnet3: let core reject the unsupported coalescing parameters (Cathy Avery) [1845417] - [netdrv] vmxnet3: use new helper tcp_v6_gso_csum_prep (Cathy Avery) [1845417] - [netdrv] vmxnet3: Remove always false conditional statement (Cathy Avery) [1845417] - [kernel] kexec: do not verify the signature without the lockdown or mandatory signature (Lianbo Jiang) [1836148] - [fs] block: Fix use-after-free in blkdev_get() (Ming Lei) [1847779] - [kernel] kernel: rh_features: fix reading empty feature list from /proc (Jiri Benc) [1843064] {CVE-2020-10774} - [netdrv] ice: cleanup unsigned loops (Jonathan Toppins) [1781403] - [netdrv] ice: fix usage of incorrect variable (Jonathan Toppins) [1781403] - [netdrv] ice: Fix bad register reads (Jonathan Toppins) [1781403] - [netdrv] ice: check for compatibility between DDP package and firmware (Jonathan Toppins) [1781403] - [netdrv] ice: Check if unicast MAC exists before setting VF MAC (Jonathan Toppins) [1781403] - [netdrv] ice: print Rx MDD auto reset message before VF reset (Jonathan Toppins) [1781403] - [netdrv] ice: Call ice_aq_set_mac_cfg (Jonathan Toppins) [1781403] - [netdrv] ice: Implement aRFS (Jonathan Toppins) [1781403] - [netdrv] ice: Restore filters following reset (Jonathan Toppins) [1781403] - [netdrv] ice: Enable flex-bytes support (Jonathan Toppins) [1781403] - [netdrv] ice: Support IPv6 Flow Director filters (Jonathan Toppins) [1781403] - [netdrv] ice: Support IPv4 Flow Director filters (Jonathan Toppins) [1781403] - [netdrv] ice: Support displaying ntuple rules (Jonathan Toppins) [1781403] - [netdrv] ice: Initialize Flow Director resources (Jonathan Toppins) [1781403] - [netdrv] ice: Rename build_ctob to ice_build_ctob (Jonathan Toppins) [1781405] - [netdrv] ice: remove unnecessary backslash (Jonathan Toppins) [1781405] - [netdrv] ice: remove unnecessary check (Jonathan Toppins) [1781405] - [netdrv] ice: remove unnecessary expression that is always true (Jonathan Toppins) [1781405] - [netdrv] ice: Fix check for removing/adding mac filters (Jonathan Toppins) [1781405] - [netdrv] ice: refactor filter functions (Jonathan Toppins) [1781405] - [netdrv] ice: Fix resource leak on early exit from function (Jonathan Toppins) [1781405] - [netdrv] ice: cleanup vf_id signedness (Jonathan Toppins) [1781405] - [netdrv] ice: Fix casting issues (Jonathan Toppins) [1781405] - [netdrv] ice: Provide more meaningful error message (Jonathan Toppins) [1781405] - [netdrv] ice: Fix probe/open race condition (Jonathan Toppins) [1781405] - [netdrv] ice: only drop link once when setting pauseparams (Jonathan Toppins) [1781405] - [netdrv] ice: Fix check for contiguous TCs (Jonathan Toppins) [1781405] - [netdrv] ice: Don't reset and rebuild for Tx timeout on PFC enabled queue (Jonathan Toppins) [1781405] - [netdrv] ice: Add VF promiscuous support (Jonathan Toppins) [1781405] - [netdrv] ice: Add support for tunnel offloads (Jonathan Toppins) [1781405] - [netdrv] ice: report netlist version in .info_get (Jonathan Toppins) [1781405] - [netdrv] ice: add additional E810 device id (Jonathan Toppins) [1725447] - [x86] x86/split_lock: Update to use X86_MATCH_INTEL_FAM6_MODEL() (Prarit Bhargava) [1482757] - [x86] x86/intel_split_lock: Disable split lock detector by default in RHEL8 (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Provide handle_guest_split_lock() (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Add Tremont family CPU models (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Bits in IA32_CORE_CAPABILITIES are not architectural (Prarit Bhargava) [1482757] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (Prarit Bhargava) [1482757] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Avoid runtime reads of the TEST_CTRL MSR (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Rework the initialization flow of split lock detection (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Enable split lock detection by kernel (Prarit Bhargava) [1482757] - [netdrv] drivers/net/b44: Change to non-atomic bit operations on pwol_mask (Prarit Bhargava) [1482757] - [x86] x86/cpu: Align cpu_caps_cleared and cpu_caps_set to unsigned long (Prarit Bhargava) [1482757] - [x86] x86/boot: Make the GDT 8-byte aligned (Prarit Bhargava) [1482757] - [wireless] wlcore: simplify/fix/optimize reg_ch_conf_pending operations (Prarit Bhargava) [1482757] - [uapi] prctl: PR_{G, S}ET_IO_FLUSHER to support controlling memory reclaim (Waiman Long) [1757240]- [kernel] kernel: fork: avoid utilizing a non-initialized task_struct_rh pointer in the error exit path (Rafael Aquini) [1838475 1820041] - [infiniband] RDMA/ipoib: Fix ABBA deadlock with ipoib_reap_ah() (Kamal Heib) [1846063] - [infiniband] RDMA/ipoib: Return void from ipoib_ib_dev_stop() (Kamal Heib) [1846063] - [powerpc] mm/pkeys: Make pkey access check work on execute_only_key (Greg Kurz) [1748772] - [powerpc] mm/book3s64: Fix MADV_DONTNEED and parallel page fault race (Greg Kurz) [1748772] - [mm] change pmdp_huge_get_and_clear_full take vm_area_struct as arg (Greg Kurz) [1748772] - [powerpc] mm/book3s64: Avoid sending IPI on clearing PMD (Greg Kurz) [1748772] - [powerpc] 64s: Fix THP PMD collapse serialisation (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use pte_present instead of opencoding _PAGE_PRESENT check (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use find_kvm_host_pte in kvmppc_get_hpa (Greg Kurz) [1748772] - [powerpc] kvm/book3s: use find_kvm_host_pte in kvmppc_book3s_instantiate_page (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Avoid using rmap to protect parallel page table update (Greg Kurz) [1748772] - [powerpc] kvm/book3s: use find_kvm_host_pte in pute_tce functions (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use find_kvm_host_pte in h_enter (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use find_kvm_host_pte in page fault handler (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Add helper for host page table walk (Greg Kurz) [1748772] - [powerpc] kvm: ppc: Fix nested guest RC bits update (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use kvm helpers to walk shadow or secondary table (Greg Kurz) [1748772] - [powerpc] kvm/nested: Add helper to walk nested shadow linux page table (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Add helper to walk partition scoped linux page table (Greg Kurz) [1748772] - [powerpc] kvm/book3s: switch from raw_spin_*lock to arch_spin_lock (Greg Kurz) [1748772] - [powerpc] perf/callchain: Use __get_user_pages_fast in read_user_stack_slow (Greg Kurz) [1748772] - [powerpc] mce: Don't reload pte val in addr_to_pfn (Greg Kurz) [1748772] - [powerpc] book3s64/hash: Use the pte_t address from the caller (Greg Kurz) [1748772] - [powerpc] hash64: Restrict page table lookup using init_mm with __flush_hash_table_range (Greg Kurz) [1748772] - [powerpc] mm/hash64: use _PAGE_PTE when checking for pte_present (Greg Kurz) [1748772] - [powerpc] pkeys: Check vma before returning key fault error to the user (Greg Kurz) [1748772] - [powerpc] pkeys: Avoid using lockless page table walk (Greg Kurz) [1748772] - [powerpc] mmu: add is_strict_kernel_rwx() helper (Greg Kurz) [1748772] - [powerpc] mm: move update_mmu_cache() into book3s hash utils (Greg Kurz) [1748772] - [powerpc] mm: Move book3s32 specifics in subdirectory mm/book3s64 (Greg Kurz) [1748772] - [powerpc] mm: move FSL_BOOK3 version of update_mmu_cache() (Greg Kurz) [1748772] - [powerpc] mm: define empty update_mmu_cache() as static inline (Greg Kurz) [1748772] - [powerpc] change CONFIG_PPC_STD_MMU to CONFIG_PPC_BOOK3S (Greg Kurz) [1748772] - [powerpc] mm: don't use _PAGE_EXEC for calling hash_preload() (Greg Kurz) [1748772] - [powerpc] change CONFIG_PPC_STD_MMU_32 to CONFIG_PPC_BOOK3S_32 (Greg Kurz) [1748772] - [powerpc] handover page flags with a pgprot_t parameter (Greg Kurz) [1748772] - [powerpc] mm: properly set PAGE_KERNEL flags in ioremap() (Greg Kurz) [1748772] - [powerpc] 32: Add ioremap_wt() and ioremap_coherent() (Greg Kurz) [1748772] - [netdrv] crypto/chcr: error seen if CONFIG_CHELSIO_TLS_DEVICE isn't set (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: avoid -Wreturn-local-addr warning (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4: fix EOTID leak when disabling TC-MQPRIO offload (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4/chcr: Enable ktls settings at run time (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4: cleanup error code in setup_sge_queues_uld() (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4: add adapter hotplug support for ULDs (Christoph von Recklinghausen) [1797945] - [crypto] Crypto: chelsio - Fixes a deadlock between rtnl_lock and uld_mutex (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4/chcr: nic-tls stats in ethtool (Christoph von Recklinghausen) [1797945] - [crypto] crypto/chcr: fix incorrect ipv6 packet length (Christoph von Recklinghausen) [1797945] - [crypto] crypto/chcr: Add missing include file (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: Add ipv6 support and statistics (Christoph von Recklinghausen) [1797945] - [crypto] chcr: Handle first or middle part of record (Christoph von Recklinghausen) [1797945] - [crypto] chcr: handle partial end part of a record (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: complete record tx handling (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: Save tx keys and handle HW response (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr : Register to tls add and del callback (Christoph von Recklinghausen) [1797945] - [hwmon] hwmon: (acpi_power_meter) Change log level for 'unsafe software power cap' (Al Stone) [1749529] - [netdrv] net/mlx4_core: fix a memory leak bug (Alaa Hleihel) [1846792] - [netdrv] net/mlx4_core: Add missing iounmap() in error path (Alaa Hleihel) [1846792] - [netdrv] net/mlx5: E-switch, Fix error unwinding flow for steering init failure (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: E-Switch, Enable chains only if regs loopback is enabled (Alaa Hleihel) [1848830 1846791] - [netdrv] net/mlx5e: en_tc: Rely just on register loopback for tunnel restoration (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: E-Switch, Skip restore modify header between prios of same chain (Alaa Hleihel) [1846791] - [netdrv] net/mlx5e: CT: Fix ipv6 nat header rewrite actions (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Don't fail driver on failure to create debugfs (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Add missing mutex destroy (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Fix devlink objects and devlink device unregister sequence (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Wait for inactive autogroups (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Disable reload while removing the device (Alaa Hleihel) [1846791] - [netdrv] net/mlx5e: Fix ethtool hfunc configuration change (Alaa Hleihel) [1846791] - [netdrv] net/mlx5e: Fix repeated XSK usage on one channel (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: DR, Split RX and TX lock for parallel insertion (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: DR, Add a spinlock to protect the send ring (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: DR, Fix freeing in dr_create_rc_qp() (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Fix fatal error handling during device load (Alaa Hleihel) [1846791 1841363] - [netdrv] net/mlx5: drain health workqueue in case of driver load error (Alaa Hleihel) [1846791 1841363] - [netdrv] net/mlx5: Drain wq first during PCI device removal (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Have single error unwinding path (Alaa Hleihel) [1846791] - [netdrv] mlx5: reject unsupported coalescing params (Alaa Hleihel) [1846791] - [crypto] Crypto: chelsio - Fixes a hang issue during driver registration (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Use multiple txq/rxq per tfm to process the requests (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Recalculate iv only if it is needed (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - un-register crypto algorithms (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Endianess bug in create_authenc_wr (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Print the chcr driver information while module load (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - This fixes the kernel panic which occurs during a libkcapi test (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - This fixes the libkcapi's cbc(aes) aio fail test cases (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Resetting crypto counters during the driver unregister (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - fix writing tfm flags to wrong place (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - calculating tx_channel_id as per the max number of channels (Vishal Kulkarni) [1845004] - [firmware] tpm: check event log version before reading final events (Jerry Snitselaar) [1839284] - [char] tpm: Fix TIS locality timeout problems (Jerry Snitselaar) [1840789]- [vfio] vfio/pci: Clear error and request eventfd ctx after releasing (Alex Williamson) [1847731] - [fs] pNFS/flexfiles: Fix list corruption if the mirror count changes (Benjamin Coddington) [1852500] - [netdrv] ionic: update the queue count on open (Michal Schmidt) [1846879] - [tools] turbostat: Use sched_getcpu() instead of hardcoded cpu 0 (Prarit Bhargava) [1852123] - [infiniband] RDMA/hfi1: Fix null-pointer dereference when calling mmu_notifier_register (Kamal Heib) [1850345] - [platform] Revert "intel-speed-select: Firmware workarounds for Icelake" (Prarit Bhargava) [1820597] - [powerpc] powerpc/crashkernel: Take "mem=" option into account (Pingfan Liu) [1747969] - [tools] perf stat: Increase perf metric output resolution (Michael Petlan) [1844632] - [tools] perf vendor events power9: Add missing metrics to POWER9 'cpi_breakdown' (Michael Petlan) [1844632] - [tools] perf metrics: Fix parse errors in power8 metrics (Michael Petlan) [1844632] - [tools] perf metrics: Fix parse errors in power9 metrics (Michael Petlan) [1844632] - [s390] s390/kaslr: add support for R_390_JMP_SLOT relocation type (Claudio Imbrenda) [1850908] - [s390] s390: prevent leaking kernel address in BEAR (Claudio Imbrenda) [1850907] - [s390] s390/cpumf: Adjust registration of s390 PMU device drivers (Claudio Imbrenda) [1850906] - [firmware] efi/x86: Add TPM related EFI tables to unencrypted mapping checks (Lenny Szubowicz) [1849922] - [security] selinux: allow reading labels before policy is loaded (Ondrej Mosnacek) [1839819] - [idle] intel_idle: Introduce 'use_acpi' module parameter (Prarit Bhargava) [1849666] - [net] xsk: Add overflow check for u64 division, stored into u32 (Jiri Benc) [1838075] - [tools] selftests: netdevsim: Always initialize 'RET' variable (Jiri Benc) [1838075] - [netdrv] netdevsim: Ensure policer drop counter always increases (Jiri Benc) [1838075] - [tools] selftests/bpf: Check for correct program attach/detach in xdp_attach test (Jiri Benc) [1838075] - [tools] libbpf: Fix type of old_fd in bpf_xdp_set_link_opts (Jiri Benc) [1838075] - [net] xsk: Add missing check on user supplied headroom size (Jiri Benc) [1838075] - [net] xdp: Reset prog in dev_change_xdp_fd when fd is negative (Jiri Benc) [1838075] - [netdrv] veth: rely on peer veth_rq for ndo_xdp_xmit accounting (Jiri Benc) [1838075] - [netdrv] veth: rely on veth_rq in veth_xdp_flush_bq signature (Jiri Benc) [1838075] - [net] page pool: allow to pass zero flags to page_pool_init() (Jiri Benc) [1838075] - [tools] selftests/bpf: Add tests for attaching XDP programs (Jiri Benc) [1838075] - [tools] libbpf: Add function to set link XDP fd while specifying old program (Jiri Benc) [1838075] - [tools] Add EXPECTED_FD-related definitions in if_link.h (Jiri Benc) [1838075] - [net] xdp: Support specifying expected existing program when attaching XDP (Jiri Benc) [1838075] - [netdrv] veth: remove atomic64_add from veth_xdp_xmit hotpath (Jiri Benc) [1838075] - [netdrv] veth: introduce more xdp counters (Jiri Benc) [1838075] - [netdrv] veth: distinguish between rx_drops and xdp_drops (Jiri Benc) [1838075] - [netdrv] veth: introduce more specialized counters in veth_stats (Jiri Benc) [1838075] - [netdrv] veth: move xdp stats in a dedicated structure (Jiri Benc) [1838075] - [net] xdp: Replace zero-length array with flexible-array member (Jiri Benc) [1838075] - [net] bpf: inet_diag: Dump bpf_sk_storages in inet_diag_dump() (Jiri Benc) [1838075] - [net] bpf: INET_DIAG support in bpf_sk_storage (Jiri Benc) [1838075] - [net] inet_diag: Move the INET_DIAG_REQ_BYTECODE nlattr to cb->data (Jiri Benc) [1838075] - [net] inet_diag: Refactor inet_sk_diag_fill(), dump(), and dump_one() (Jiri Benc) [1838075] - [net] inet_diag: return classid for all socket types (Jiri Benc) [1838075] - [net] inet_diag: fix reporting cgroup classid and fallback to priority (Jiri Benc) [1838075] - [net] Remove unneeded export of a couple of xdp generic functions (Jiri Benc) [1838075] - [net] page_pool: API cleanup and comments (Jiri Benc) [1838075] - [net] bpf, sockmap: Replace zero-length array with flexible-array member (Jiri Benc) [1838075] - [netdrv] geneve: allow changing DF behavior after creation (Sabrina Dubroca) [1847861] - [net] netfilter: nf_tables: add missing ->release_ops() in error path of newrule() (Andrea Claudi) [1846236] - [net] netfilter: nft_compat: use .release_ops and remove list of extension (Andrea Claudi) [1846236] - [net] ipv6: fix IPV6_ADDRFORM operation logic (Hangbin Liu) [1842025] - [net] ipv6: fix restrict IPV6_ADDRFORM operation (Hangbin Liu) [1842025] - [net] netfilter: nat: fix error handling upon registering inet hook (Florian Westphal) [1579145] - [net] netfilter: nf_tables: fix module autoload for redir (Florian Westphal) [1579145] - [net] netfilter: nf_tables: fix module autoload with inet family (Florian Westphal) [1579145] - [net] netfilter: nft_chain_nat: inet family is missing module ownership (Florian Westphal) [1579145] - [net] netfilter: nf_tables: Support auto-loading for inet nat (Florian Westphal) [1579145] - [net] netfilter: nft_redir: fix module autoload with ip4 (Florian Westphal) [1579145] - [net] netfilter: nat: fix udp checksum corruption (Florian Westphal) [1579145] - [tools] kselftests: extend nft_nat with inet family based nat hooks (Florian Westphal) [1579145] - [net] netfilter: nft_redir: add inet support (Florian Westphal) [1579145] - [net] netfilter: nft_masq: add inet support (Florian Westphal) [1579145] - [net] netfilter: nf_tables: merge route type into core (Florian Westphal) [1579145] - [net] netfilter: nat: add inet family nat support (Florian Westphal) [1579145] - [net] netfilter: nat: don't register device notifier twice (Florian Westphal) [1579145] - [net] netfilter: nf_tables: merge ipv4 and ipv6 nat chain types (Florian Westphal) [1579145] - [net] netfilter: nf_tables: nat: merge nft_masq protocol specific modules (Florian Westphal) [1579145] - [net] netfilter: nf_tables: nat: merge nft_redir protocol specific modules (Florian Westphal) [1579145] - [net] netfilter: nat: remove nf_nat_l3proto.h and nf_nat_core.h (Florian Westphal) [1579145] - [net] netfilter: nat: remove l3proto struct (Florian Westphal) [1579145] - [net] netfilter: nat: remove csum_recalc hook (Florian Westphal) [1579145] - [net] netfilter: nat: remove csum_update hook (Florian Westphal) [1579145] - [net] netfilter: nat: remove l3 manip_pkt hook (Florian Westphal) [1579145] - [net] netfilter: nat: remove nf_nat_l4proto.h (Florian Westphal) [1579145] - [net] netfilter: nat: merge nf_nat_ipv4, 6 into nat core (Florian Westphal) [1579145] - [net] netfilter: nat: fix spurious connection timeouts (Florian Westphal) [1579145] - [net] netfilter: nat: move nlattr parse and xfrm session decode to core (Florian Westphal) [1579145] - [net] netfilter: nat: merge ipv4 and ipv6 masquerade functionality (Florian Westphal) [1579145] - [net] netfilter: kconfig: nat related expression depend on nftables core (Florian Westphal) [1579145] - [net] netfilter: conntrack: fix bogus port values for other l4 protocols (Florian Westphal) [1579145] - [net] netfilter: conntrack: avoid unneeded nf_conntrack_l4proto lookups (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove pernet l4 proto register interface (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove remaining l4proto indirect packet calls (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove module owner field (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove invert_tuple callback (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove pkt_to_tuple callback (Florian Westphal) [1579145] - [net] netfilter: conntrack: udp: set stream timeout to 2 minutes (Florian Westphal) [1579145] - [net] netfilter: conntrack: udp: only extend timeout to stream mode after 2s (Florian Westphal) [1579145] - [net] netfilter: nat: un-export nf_nat_used_tuple (Florian Westphal) [1579145] - [net] netfilter: nat: fix ICMP header corruption on ICMP errors (Florian Westphal) [1579145] - [net] netfilter: nat: fix icmp id randomization (Florian Westphal) [1579145] - [net] netfilter: nat: remove nf_nat_l4proto struct (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->manip_pkt (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->nlattr_to_range (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->in_range (Florian Westphal) [1579145] - [net] netfilter: nat: fold in_range indirection into caller (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->unique_tuple (Florian Westphal) [1579145] - [net] netfilter: nat: un-export nf_nat_l4proto_unique_tuple (Florian Westphal) [1579145] - [net] netfilter: remove NF_NAT_RANGE_PROTO_RANDOM support (Florian Westphal) [1579145] - [x86] kvm: x86/pmu: Tweak kvm_pmu_get_msr to pass 'struct msr_data' in (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: do not pass poisoned hva to __kvm_set_memory_region (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: fix sync_with_host() in smm_test (Vitaly Kuznetsov) [1849987] - [x86] kvm: async_pf: Inject 'page ready' event only if 'page not present' was previously injected (Vitaly Kuznetsov) [1849987] - [x86] revert "kvm: async_pf: Fix #DF due to inject "Page not Present" and "Page Ready" exceptions simultaneously" (Vitaly Kuznetsov) [1849987] - [virt] kvm: async_pf: Cleanup kvm_setup_async_pf() (Vitaly Kuznetsov) [1849987] - [x86] kvm: i8254: remove redundant assignment to pointer s (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: respect singlestep when emulating instruction (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Don't probe KVM_CAP_HYPERV_ENLIGHTENED_VMCS when nested VMX is unsupported (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: do not substitute SVM/VMX check with KVM_CAP_NESTED_STATE check (Vitaly Kuznetsov) [1849987] - [x86] kvm: nvmx: Consult only the "basic" exit reason when routing nested exit (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: Unexport x86_fpu_cache and make it static (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Ignore KVM 5-level paging support for VM_MODE_PXXV48_4K (Vitaly Kuznetsov) [1849987] - [virt] kvm: x86: Fix APIC page invalidation race (Vitaly Kuznetsov) [1849987] - [x86] kvm: svm: fix calls to is_intercept (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: fix vmx_preemption_timer_test build with GCC10 (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Add x86_64/debug_regs to .gitignore (Vitaly Kuznetsov) [1849987] - [x86] revert "kvm: x86: work around leak of uninitialized stack contents" (Vitaly Kuznetsov) [1849987] - [x86] kvm: vmx: Properly handle kvm_read/write_guest_virt*() result (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: emulate reserved nops from 0f/18 to 0f/1f (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Fix build with "make ARCH=x86_64" (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: minor code refactor and comments fixup around dirty logging (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: avoid unnecessary rmap walks when creating/moving slots (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: remove unnecessary rmap walk of read-only memslots (Vitaly Kuznetsov) [1849987] - [virt] kvm: Use vmemdup_user() (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: Move MPK feature detection to common code (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: Assign correct value to array.maxnent (Vitaly Kuznetsov) [1849987] - [x86] kvm: let kvm_destroy_vm_debugfs clean up vCPU debugfs directories (Vitaly Kuznetsov) [1849987] - [x86] kvm: Handle reads of SandyBridge RAPL PMU MSRs rather than injecting #GP (Vitaly Kuznetsov) [1849987] - [documentation] docs: virt/kvm: close inline string literal (Vitaly Kuznetsov) [1849987] - [documentation] docs: kvm: Fix KVM_KVMCLOCK_CTRL API doc (Vitaly Kuznetsov) [1849987] - [x86] arch/x86/kvm/svm/sev.c: change flag passed to GUP fast in sev_pin_memory() (Vitaly Kuznetsov) [1849987] - [virt] kvm/eventfd: remove unneeded conversion to bool (Vitaly Kuznetsov) [1849987] - [tools] selftests: fix kvm relocatable native/cross builds and installs (Vitaly Kuznetsov) [1849987] - [virt] kvm: x86: move kvm_create_vcpu_debugfs after last failure point (Vitaly Kuznetsov) [1849987] - [powerpc] xive: Share the event-queue page with the Hypervisor (Michael Roth) [1837232] - [powerpc] kvm: ppc: book3s hv: Read ibm, secure-memory nodes (Michael Roth) [1837232] - [powerpc] kvm: ppc: book3s hv: Relax check on H_SVM_INIT_ABORT (Michael Roth) [1837232]- [scsi] scsi: be2iscsi: Use scnprintf() for avoiding potential buffer overflow (Maurizio Lombardi) [1849586] - [edac] EDAC/i10nm: Update driver to support different bus number config register offsets (Aristeu Rozanski) [1838508] - [edac] EDAC, {skx, i10nm}: Make some configurations CPU model specific (Aristeu Rozanski) [1838508] - [fs] fuse: copy_file_range should truncate cache (Miklos Szeredi) [1849786] - [fs] fuse: fix copy_file_range cache issues (Miklos Szeredi) [1849786] - [fs] fuse: update attr_version counter on fuse_notify_inval_inode() (Miklos Szeredi) [1849786] - [fs] fuse: don't check refcount after stealing page (Miklos Szeredi) [1849786] - [fs] fuse: fix weird page warning (Miklos Szeredi) [1849786] - [fs] fuse: use dump_page (Miklos Szeredi) [1849786] - [fs] fuse: always allow query of st_dev (Miklos Szeredi) [1849786] - [fs] fuse: always flush dirty data on close(2) (Miklos Szeredi) [1849786] - [fs] fuse: invalidate inode attr in writeback cache mode (Miklos Szeredi) [1849786] - [fs] virtiofs: schedule blocking async replies in separate worker (Miklos Szeredi) [1849786] - [fs] fuse: Support RENAME_WHITEOUT flag (Miklos Szeredi) [1849786] - [fs] fuse: don't overflow LLONG_MAX with end offset (Miklos Szeredi) [1849786] - [fs] fix up iter on short count in fuse_direct_io() (Miklos Szeredi) [1849786] - [fs] fuse: fix fuse_send_readpages() in the syncronous read case (Miklos Szeredi) [1849786] - [fs] fuse: fix Kconfig indentation (Miklos Szeredi) [1849786] - [fs] virtiofs: Use completions while waiting for queue to be drained (Miklos Szeredi) [1849786] - [fs] virtiofs: Do not send forget request "struct list_head" element (Miklos Szeredi) [1849786] - [fs] virtiofs: Use a common function to send forget (Miklos Szeredi) [1849786] - [fs] virtiofs: Fix old-style declaration (Miklos Szeredi) [1849786] - [fs] fuse: verify nlink (Miklos Szeredi) [1849786] - [fs] fuse: verify write return (Miklos Szeredi) [1849786] - [fs] fuse: verify attributes (Miklos Szeredi) [1849786] - [fs] fuse: redundant get_fuse_inode() calls in fuse_writepages_fill() (Miklos Szeredi) [1849786] - [fs] fuse: truncate pending writes on O_TRUNC (Miklos Szeredi) [1849786] - [fs] fuse: flush dirty data/metadata before non-truncate setattr (Miklos Szeredi) [1849786] - [fs] ovl: initialize error in ovl_copy_xattr (Miklos Szeredi) [1849770] - [fs] ovl: fix redirect traversal on metacopy dentries (Miklos Szeredi) [1849770] - [fs] ovl: initialize OVL_UPPERDATA in ovl_lookup() (Miklos Szeredi) [1849770] - [fs] ovl: use only uppermetacopy state in ovl_lookup() (Miklos Szeredi) [1849770] - [fs] ovl: simplify setting of origin for index lookup (Miklos Szeredi) [1849770] - [fs] ovl: fix out of bounds access warning in ovl_check_fb_len() (Miklos Szeredi) [1849770] - [fs] ovl: return required buffer size for file handles (Miklos Szeredi) [1849770] - [fs] ovl: sync dirty data when remounting to ro mode (Miklos Szeredi) [1849770] - [fs] ovl: resolve more conflicting mount options (Miklos Szeredi) [1849770] - [fs] ovl: potential crash in ovl_fid_to_fh() (Miklos Szeredi) [1849770] - [fs] ovl: clear ATTR_OPEN from attr->ia_valid (Miklos Szeredi) [1849770] - [fs] ovl: clear ATTR_FILE from attr->ia_valid (Miklos Szeredi) [1849770] - [documentation] ovl: document xino expected behavior (Miklos Szeredi) [1849770] - [fs] ovl: enable xino automatically in more cases (Miklos Szeredi) [1849770] - [fs] ovl: avoid possible inode number collisions with xino=on (Miklos Szeredi) [1849770] - [fs] ovl: use a private non-persistent ino pool (Miklos Szeredi) [1849770] - [fs] ovl: fix WARN_ON nlink drop to zero (Miklos Szeredi) [1849770] - [fs] ovl: fix a typo in comment (Miklos Szeredi) [1849770] - [fs] ovl: replace zero-length array with flexible-array member (Miklos Szeredi) [1849770] - [fs] ovl: ovl_obtain_alias(): don't call d_instantiate_anon() for old (Miklos Szeredi) [1849770] - [fs] ovl: strict upper fs requirements for remote upper fs (Miklos Szeredi) [1849770] - [fs] ovl: check if upper fs supports RENAME_WHITEOUT (Miklos Szeredi) [1849770] - [fs] ovl: allow remote upper (Miklos Szeredi) [1849770] - [fs] ovl: decide if revalidate needed on a per-dentry basis (Miklos Szeredi) [1849770] - [fs] ovl: separate detection of remote upper layer from stacked overlay (Miklos Szeredi) [1849770] - [fs] ovl: restructure dentry revalidation (Miklos Szeredi) [1849770] - [fs] ovl: ignore failure to copy up unknown xattrs (Miklos Szeredi) [1849770] - [documentation] ovl: document permission model (Miklos Szeredi) [1849770] - [fs] ovl: simplify i_ino initialization (Miklos Szeredi) [1849770] - [fs] ovl: factor out helper ovl_get_root() (Miklos Szeredi) [1849770] - [fs] ovl: fix out of date comment and unreachable code (Miklos Szeredi) [1849770] - [fs] ovl: fix value of i_ino for lower hardlink corner case (Miklos Szeredi) [1849770] - [fs] ovl: fix lockdep warning for async write (Miklos Szeredi) [1849770] - [fs] ovl: fix some xino configurations (Miklos Szeredi) [1849770] - [fs] ovl: fix lock in ovl_llseek() (Miklos Szeredi) [1849770] - [fs] ovl: fix lseek overflow on 32bit (Miklos Szeredi) [1849770] - [documentation] docs: filesystems: add overlayfs to index.rst (Miklos Szeredi) [1849770] - [fs] ovl: add splice file read write helper (Miklos Szeredi) [1849770] - [fs] ovl: implement async IO routines (Miklos Szeredi) [1849770] - [fs] vfs: add vfs_iocb_iter_helper functions (Miklos Szeredi) [1849770] - [fs] ovl: layer is const (Miklos Szeredi) [1849770] - [fs] ovl: fix corner case of non-constant st_dev; st_ino (Miklos Szeredi) [1849770] - [fs] ovl: fix corner case of conflicting lower layer uuid (Miklos Szeredi) [1849770] - [fs] ovl: generalize the lower_fsarray (Miklos Szeredi) [1849770] - [fs] ovl: simplify ovl_same_sb() helper (Miklos Szeredi) [1849770] - [fs] ovl: generalize the lower_layersarray (Miklos Szeredi) [1849770] - [fs] ovl: improving copy-up efficiency for big sparse file (Miklos Szeredi) [1849770] - [fs] ovl: use ovl_inode_lock in ovl_llseek() (Miklos Szeredi) [1849770] - [fs] ovl: use pr_fmt auto generate prefix (Miklos Szeredi) [1849770] - [fs] ovl: fix wrong WARN_ON() in ovl_cache_update_ino() (Miklos Szeredi) [1849770] - [fs] locks: print unsigned ino in /proc/locks (Miklos Szeredi) [1849770] - [documentation] docs: filesystems: overlayfs: Fix restview warnings (Miklos Szeredi) [1849770] - [fs] ovl: relax WARN_ON() on rename to self (Miklos Szeredi) [1849770] - [fs] ovl: fix corner case of non-unique st_dev; st_ino (Miklos Szeredi) [1849770] - [fs] ovl: don't use a temp buf for encoding real fh (Miklos Szeredi) [1849770] - [fs] ovl: make sure that real fid is 32bit aligned in memory (Miklos Szeredi) [1849770] - [fs] ovl: fix lookup failure on multi lower squashfs (Miklos Szeredi) [1849770] - [fs] ovl: filter of trusted xattr results in audit (Miklos Szeredi) [1849770] - [fs] ovl: Fix dereferencing possible ERR_PTR() (Miklos Szeredi) [1849770] - [fs] ovl: fix regression caused by overlapping layers detection (Miklos Szeredi) [1849770] - [fs] ovl: make i_ino consistent with st_ino in more cases (Miklos Szeredi) [1849770] - [fs] ovl: fix typo in MODULE_PARM_DESC (Miklos Szeredi) [1849770] - [fs] ovl: fix bogus -Wmaybe-unitialized warning (Miklos Szeredi) [1849770] - [fs] ovl: don't fail with disconnected lower NFS (Miklos Szeredi) [1849770] - [fs] ovl: detect overlapping layers (Miklos Szeredi) [1849770] - [fs] ovl: using posix_acl_xattr_size() to get size instead of posix_acl_to_xattr() (Miklos Szeredi) [1849770] - [fs] ovl: abstract ovl_inode lock with a helper (Miklos Szeredi) [1849770] - [fs] ovl: remove the 'locked' argument of ovl_nlink_{start, end} (Miklos Szeredi) [1849770] - [fs] ovl: relax requirement for non null uuid of lower fs (Miklos Szeredi) [1849770] - [fs] ovl: fold copy-up helpers into callers (Miklos Szeredi) [1849770] - [fs] ovl: untangle copy up call chain (Miklos Szeredi) [1849770] - [fs] ovl: clean up error handling in ovl_get_tmpfile() (Miklos Szeredi) [1849770] - [netdrv] ionic: tame the watchdog timer on reconfig (Jonathan Toppins) [1846879 1846280] - [remoteproc] remoteproc: pull in slab.h (Jarod Wilson) [1849080]- [x86] revert "kvm: vmx: Micro-optimize vmexit time when not exposing PMU" (Vitaly Kuznetsov) [1844099] - [fs] nfsd4: kill warnings on testing stateids with mismatched clientids (Benjamin Coddington) [1765672] - [fs] NFS: Ensure security label is set for root inode (Scott Mayhew) [1660798] - [s390] kexec: Fix file verification on S390 (Lianbo Jiang) [1815369] - [s390] kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and KEXEC_SIG_FORCE (Lianbo Jiang) [1815369] - [netdrv] ibmvnic: continue to init in CRQ reset returns H_CLOSED (Steve Best) [1850179] - [net] sunrpc: add missing newline when printing parameter 'auth_hashtable_size' by sysfs (Benjamin Coddington) [1849998] - [net] sunrpc: clean up properly in gss_mech_unregister() (Benjamin Coddington) [1849998] - [net] sunrpc: svcauth_gss_register_pseudoflavor must reject duplicate registrations (Benjamin Coddington) [1849998] - [net] SUNRPC: Fix backchannel RPC soft lockups (Benjamin Coddington) [1849998] - [fs] NFS: Fix a page leak in nfs_destroy_unlinked_subrequests() (Benjamin Coddington) [1849998] - [fs] nfsd4: make drc_slab global, not per-net (Benjamin Coddington) [1849998] - [net] SUNRPC: Fix GSS privacy computation of auth->au_ralign (Benjamin Coddington) [1849998] - [net] SUNRPC: Add "@len" parameter to gss_unwrap() (Benjamin Coddington) [1849998] - [fs] NFS: finish_automount() requires us to hold 2 refs to the mount record (Benjamin Coddington) [1849998] - [fs] NFS: Fix use-after-free issues in nfs_pageio_add_request() (Benjamin Coddington) [1849998] - [fs] NFS: alloc_nfs_open_context() must use the file cred when available (Benjamin Coddington) [1849998] - [net] libceph: don't omit used_replica in target_copy() (Jeff Layton) [1847528] - [net] libceph: don't omit recovery_deletes in target_copy() (Jeff Layton) [1847528] - [net] libceph: move away from global osd_req_flags (Jeff Layton) [1847528] - [fs] ceph: skip checking caps when session reconnecting and releasing reqs (Jeff Layton) [1847528] - [fs] ceph: make sure mdsc->mutex is nested in s->s_mutex to fix dead lock (Jeff Layton) [1847528] - [fs] ceph: don't return -ESTALE if there's still an open file (Jeff Layton) [1847528] - [include] libceph, rbd: replace zero-length array with flexible-array (Jeff Layton) [1847528] - [fs] ceph: allow rename operation under different quota realms (Jeff Layton) [1847528] - [fs] ceph: normalize 'delta' parameter usage in check_quota_exceeded (Jeff Layton) [1847528] - [fs] ceph: ceph_kick_flushing_caps needs the s_mutex (Jeff Layton) [1847528] - [fs] ceph: request expedited service on session's last cap flush (Jeff Layton) [1847528] - [fs] ceph: convert mdsc->cap_dirty to a per-session list (Jeff Layton) [1847528] - [fs] ceph: reset i_requested_max_size if file write is not wanted (Jeff Layton) [1847528] - [fs] ceph: throw a warning if we destroy session with mutex still locked (Jeff Layton) [1847528] - [fs] ceph: fix potential race in ceph_check_caps (Jeff Layton) [1847528] - [fs] ceph: document what protects i_dirty_item and i_flushing_item (Jeff Layton) [1847528] - [fs] ceph: don't take i_ceph_lock in handle_cap_import (Jeff Layton) [1847528] - [fs] ceph: don't release i_ceph_lock in handle_cap_trunc (Jeff Layton) [1847528] - [fs] ceph: add comments for handle_cap_flush_ack logic (Jeff Layton) [1847528] - [fs] ceph: split up __finish_cap_flush (Jeff Layton) [1847528] - [fs] ceph: reorganize __send_cap for less spinlock abuse (Jeff Layton) [1847528] - [fs] ceph: flush release queue when handling caps for unknown inode (Jeff Layton) [1847528] - [net] libceph: ignore pool overlay and cache logic on redirects (Jeff Layton) [1847528] - [x86] kvm: lapic: ensure APIC map is up to date on concurrent update requests (Igor Mammedov) [1835330] - [x86] kvm: lapic: fix broken vcpu hotplug (Igor Mammedov) [1835330] - [netdrv] net: hns3: add some error checking in hclge_tm module (Mark Langsdorf) [1809057] {CVE-2019-15925} - [fs] udf: Fix mounting of Win7 created UDF filesystems (Oleksandr Natalenko) [1842400] - [netdrv] net: qed: fixes crash while running driver in kdump kernel (Manish Chopra) [1727746] - [netdrv] net: qed: Disable SRIOV functionality inside kdump kernel (Manish Chopra) [1727746] - [netdrv] net: qed*: Reduce RX and TX default ring count when running inside kdump kernel (Manish Chopra) [1727746] - [fs] cifs: dump Security Type info in DebugData (Leif Sahlberg) [1845390] - [net] netfilter: flowtable: Make nf_flow_table_offload_add/del_cb inline (Marcelo Leitner) [1840938] - [net] sched: act_ct: Make tcf_ct_flow_table_restore_skb inline (Marcelo Leitner) [1840938] - [net] netfilter: flowtable: Add pending bit for offload work (Marcelo Leitner) [1842670] - [net] Evict neighbor entries on carrier down (Ivan Vecera) [1845352] - [net] bridge: explicitly zero is_sticky in fdb_create (Ivan Vecera) [1845350] - [net] bridge: add support for sticky fdb entries (Ivan Vecera) [1845350] - [net] remove indirect block netdev event registration (Marcelo Leitner) [1841300] - [netdrv] bnxt_tc: update indirect block support (Marcelo Leitner) [1841300] - [netdrv] nfp: update indirect block support (Marcelo Leitner) [1841300] - [netdrv] mlx5: update indirect block support (Marcelo Leitner) [1841300] - [net] use flow_indr_dev_setup_offload() (Marcelo Leitner) [1841300] - [net] cls_api: add tcf_block_offload_init() (Marcelo Leitner) [1841300] - [net] flow_offload: consolidate indirect flow_block infrastructure (Marcelo Leitner) [1841300] - [net] netfilter: nf_flowtable: expose nf_flow_table_gc_cleanup() (Marcelo Leitner) [1841300] - [fs] iomap: Handle memory allocation failure in readahead (Carlos Maiolino) [1828792] - [fs] iomap: fix comments in iomap_dio_rw (Carlos Maiolino) [1828792] - [fs] iomap: Remove pgoff from tracepoints (Carlos Maiolino) [1828792] - [fs] fs: Fix page_mkwrite off-by-one errors (Carlos Maiolino) [1828792] - [fs] iomap: stop using ioend after it's been freed in iomap_finish_ioend() (Carlos Maiolino) [1828792] - [fs] iomap: fix sub-page uptodate handling (Carlos Maiolino) [1828792] - [fs] iomap: remove unneeded variable in iomap_dio_rw() (Carlos Maiolino) [1828792] - [fs] iomap: Do not create fake iter in iomap_dio_bio_actor() (Carlos Maiolino) [1828792] - [fs] iomap: trace iomap_appply results (Carlos Maiolino) [1828792] - [fs] fs/iomap: remove redundant check in iomap_dio_rw() (Carlos Maiolino) [1828792] - [fs] iomap: use a srcmap for a read-modify-write I/O (Carlos Maiolino) [1828792] - [fs] iomap: renumber IOMAP_HOLE to 0 (Carlos Maiolino) [1828792] - [fs] iomap: use write_begin to read pages to unshare (Carlos Maiolino) [1828792] - [fs] iomap: move the zeroing case out of iomap_read_page_sync (Carlos Maiolino) [1828792] - [fs] iomap: ignore non-shared or non-data blocks in xfs_file_dirty (Carlos Maiolino) [1828792] - [fs] iomap: always use AOP_FLAG_NOFS in iomap_write_begin (Carlos Maiolino) [1828792] - [fs] iomap: remove the unused iomap argument to __iomap_write_end (Carlos Maiolino) [1828792] - [fs] iomap: better document the IOMAP_F_* flags (Carlos Maiolino) [1828792] - [fs] iomap: enhance writeback error message (Carlos Maiolino) [1828792] - [fs] iomap: pass a struct page to iomap_finish_page_writeback (Carlos Maiolino) [1828792] - [fs] iomap: cleanup iomap_ioend_compare (Carlos Maiolino) [1828792] - [fs] iomap: move struct iomap_page out of iomap.h (Carlos Maiolino) [1828792] - [fs] iomap: warn on inline maps in iomap_writepage_map (Carlos Maiolino) [1828792] - [fs] iomap: lift the xfs writeback code to iomap (Carlos Maiolino) [1828792] - [fs] iomap: lift common tracing code from xfs to iomap (Carlos Maiolino) [1828792] - [fs] iomap: zero newly allocated mapped blocks (Carlos Maiolino) [1828792] - [fs] xfs: remove the fork fields in the writepage_ctx and ioend (Carlos Maiolino) [1828792] - [fs] xfs: turn io_append_trans into an io_private void pointer (Carlos Maiolino) [1828792] - [fs] xfs: refactor the ioend merging code (Carlos Maiolino) [1828792] - [fs] xfs: use a struct iomap in xfs_writepage_ctx (Carlos Maiolino) [1828792] - [fs] xfs: set IOMAP_F_NEW more carefully (Carlos Maiolino) [1828792] - [fs] xfs: initialize iomap->flags in xfs_bmbt_to_iomap (Carlos Maiolino) [1828792] - [fs] xfs: Use iomap_dio_rw to wait for unaligned direct IO (Carlos Maiolino) [1828792] - [fs] iomap: Allow forcing of waiting for running DIO in iomap_dio_rw() (Carlos Maiolino) [1828792] - [fs] iomap: move the iomap_dio_rw ->end_io callback into a structure (Carlos Maiolino) [1828792] - [fs] iomap: split size and error for iomap_dio_rw ->end_io (Carlos Maiolino) [1828792] - [fs] iomap: fix Invalid License ID (Carlos Maiolino) [1828792] - [fs] iomap: move internal declarations into fs/iomap/ (Carlos Maiolino) [1828792] - [fs] iomap: move the main iteration code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the buffered IO code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the direct IO code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the SEEK_HOLE code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the file mapping reporting code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the swapfile code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: start moving code to fs/iomap/ (Carlos Maiolino) [1828792] - [fs] iomap: move iomap_read_inline_data around (Carlos Maiolino) [1828792] - [fs] iomap: convert to SPDX identifier (Carlos Maiolino) [1828792] - [fs] iomap: remove duplicated include from iomap.c (Carlos Maiolino) [1828792] - [netdrv] fjes: Handle workqueue allocation failure (Masayoshi Mizuma) [1830565] {CVE-2019-16231}- [fs] NFSv4: Ensure the delegation cred is pinned when we call delegreturn (Benjamin Coddington) [1848933] - [fs] NFSv4: Ensure the delegation is pinned in nfs_do_return_delegation() (Benjamin Coddington) [1848933] - [fs] NFSv4.1 make cachethis=no for writes (Benjamin Coddington) [1848933] - [fs] NFSv4: Fix revalidation of dentries with delegations (Benjamin Coddington) [1848933] - [fs] NFSv4: Fix races between open and dentry revalidation (Benjamin Coddington) [1848933] - [fs] NFS: Fix up directory verifier races (Benjamin Coddington) [1848933] - [net] sunrpc: expiry_time should be seconds not timeval (Benjamin Coddington) [1848933] - [fs] NFSv4.0: nfs4_do_fsinfo() should not do implicit lease renewals (Benjamin Coddington) [1848933] - [fs] NFSv4: try lease recovery on NFS4ERR_EXPIRED (Benjamin Coddington) [1848933] - [fs] NFS: Fix memory leaks (Benjamin Coddington) [1848933] - [fs] nfs: optimise readdir cache page invalidation (Benjamin Coddington) [1848933] - [fs] NFS: Switch readdir to using iterate_shared() (Benjamin Coddington) [1848933] - [fs] NFS: Use kmemdup_nul() in nfs_readdir_make_qstr() (Benjamin Coddington) [1848933] - [fs] NFS: Directory page cache pages need to be locked when read (Benjamin Coddington) [1848933] - [fs] NFS: Fix memory leaks and corruption in readdir (Benjamin Coddington) [1848933] - [net] SUNRPC: Use kmemdup_nul() in rpc_parse_scope_id() (Benjamin Coddington) [1848933] - [fs] NFS: Replace various occurrences of kstrndup() with kmemdup_nul() (Benjamin Coddington) [1848933] - [fs] NFSv4: Limit the total number of cached delegations (Benjamin Coddington) [1848933] - [fs] NFSv4: Add accounting for the number of active delegations held (Benjamin Coddington) [1848933] - [fs] NFSv4: Try to return the delegation immediately when marked for return on close (Benjamin Coddington) [1848933] - [fs] NFS: Clear NFS_DELEGATION_RETURN_IF_CLOSED when the delegation is returned (Benjamin Coddington) [1848933] - [fs] NFSv4: nfs_inode_evict_delegation() should set NFS_DELEGATION_RETURNING (Benjamin Coddington) [1848933] - [fs] NFS: nfs_find_open_context() should use cred_fscmp() (Benjamin Coddington) [1848933] - [fs] NFS: nfs_access_get_cached_rcu() should use cred_fscmp() (Benjamin Coddington) [1848933] - [fs] NFSv3: FIx bug when using chacl and chmod to change acl (Benjamin Coddington) [1848933] - [fs] NFSv4.x recover from pre-mature loss of openstateid (Benjamin Coddington) [1848933] - [fs] NFS: Trust cached access if we've already revalidated the inode once (Benjamin Coddington) [1848933] - [fs] NFS: Fix nfs_direct_write_reschedule_io() (Benjamin Coddington) [1848933] - [fs] NFS: When resending after a short write, reset the reply count to zero (Benjamin Coddington) [1848933] - [fs] NFS: Improve tracing of permission calls (Benjamin Coddington) [1848933] - [fs] NFS/pnfs: Fix pnfs_generic_prepare_to_resend_writes() (Benjamin Coddington) [1848933] - [fs] NFS: Fix up fsync() when the server rebooted (Benjamin Coddington) [1848933] - [net] SUNRPC: Remove broken gss_mech_list_pseudoflavors() (Benjamin Coddington) [1848933] - [fs] NFS: Revalidate the file mapping on all fatal writeback errors (Benjamin Coddington) [1848933] - [fs] NFS: Revalidate the file size on a fatal write error (Benjamin Coddington) [1848933] - [fs] nfs: NFS_SWAP should depend on SWAP (Benjamin Coddington) [1848933] - [net] SUNRPC: constify copied structure (Benjamin Coddington) [1848933] - [fs] fs/nfs, swapon: check holes in swapfile (Benjamin Coddington) [1848933] - [net] SUNRPC: call_connect_status should handle -EPROTO (Benjamin Coddington) [1848933] - [fs] NFS: Introduce trace events triggered by page writeback errors (Benjamin Coddington) [1848933] - [net] SUNRPC: Capture signalled RPC tasks (Benjamin Coddington) [1848933] - [fs] NFS: move dprintk after nfs_alloc_fattr in nfs3_proc_lookup (Benjamin Coddington) [1848933] - [fs] NFS4: Remove unneeded semicolon (Benjamin Coddington) [1848933] - [fs] nfs: encode nfsv4 timestamps as 64-bit (Benjamin Coddington) [1848933] - [fs] nfs: remove timespec from xdr_encode_nfstime (Benjamin Coddington) [1848933] - [fs] nfs: use timespec64 in nfs_fattr (Benjamin Coddington) [1848933] - [net] sunrpc: convert to time64_t for expiry (Benjamin Coddington) [1848933] - [fs] nfsd: use true, false for bool variable in nfssvc.c (Benjamin Coddington) [1848933] - [fs] nfsd: use true, false for bool variable in nfs4proc.c (Benjamin Coddington) [1848933] - [fs] nfsd: use true, false for bool variable in vfs.c (Benjamin Coddington) [1848933] - [fs] nfsd: remove nfs4_reset_lease() declarations (Benjamin Coddington) [1848933] - [fs] nfsd: use ktime_get_real_seconds() in nfs4_verifier (Benjamin Coddington) [1848933] - [fs] nfsd: use boottime for lease expiry calculation (Benjamin Coddington) [1848933] - [fs] nfsd: fix jiffies/time_t mixup in LRU list (Benjamin Coddington) [1848933] - [fs] nfsd: fix delay timer on 32-bit architectures (Benjamin Coddington) [1848933] - [fs] nfsd: use time64_t in nfsd_proc_setattr() check (Benjamin Coddington) [1848933] - [fs] nfsd: pass a 64-bit guardtime to nfsd_setattr() (Benjamin Coddington) [1848933] - [fs] nfsd: make 'boot_time' 64-bit wide (Benjamin Coddington) [1848933] - [fs] nfsd: use timespec64 in encode_time_delta (Benjamin Coddington) [1848933] - [fs] nfsd: handle nfs3 timestamps as unsigned (Benjamin Coddington) [1848933] - [fs] nfsd: print 64-bit timestamps in client_info_show (Benjamin Coddington) [1848933] - [fs] nfsd: use ktime_get_seconds() for timestamps (Benjamin Coddington) [1848933] - [fs] nfsd: remove unnecessary assertion in nfsd4_encode_replay (Benjamin Coddington) [1848933] - [fs] nfsd: Clone should commit src file metadata too (Benjamin Coddington) [1848933] - [fs] nfsd4: Remove unneeded semicolon (Benjamin Coddington) [1848933] - [fs] nfs: fix timstamp debug prints (Benjamin Coddington) [1848933] - [net] nfs: use time64_t internally (Benjamin Coddington) [1848933] - [fs] nfsd: Return the correct number of bytes written to the file (Benjamin Coddington) [1848933] - [fs] nfsd: Fix up some unused variable warnings (Benjamin Coddington) [1848933] - [kernel] blktrace: ensure our debugfs dir exists (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: fix debugfs use after free (Ming Lei) [1816559] {CVE-2019-19770} - [block] loop: be paranoid on exit and prevent new additions / removals (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: annotate required lock on do_blk_trace_setup() (Ming Lei) [1816559] {CVE-2019-19770} - [block] block: revert back to synchronous request_queue removal (Ming Lei) [1816559] {CVE-2019-19770} - [block] block: clarify context for refcount increment helpers (Ming Lei) [1816559] {CVE-2019-19770} - [block] block: add docs for gendisk / request_queue refcount helpers (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: no need to check return value of debugfs_create functions (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: Avoid sparse warnings when assigning q->blk_trace (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: break out of blktrace setup on concurrent calls (Ming Lei) [1816559] {CVE-2019-19770} - [nvme] nvme-fc: don't call nvme_cleanup_cmd() for AENs (Ewan Milne) [1847572] - [nvme] nvme-fc: convert assoc_active flag to bit op (Ewan Milne) [1847572] - [nvme] nvme-fc: Ensure private pointers are NULL if no data (Ewan Milne) [1847572] - [nvme] nvme-multipath: do not reset on unknown status (Ewan Milne) [1847572] - [documentation] x86/speculation: Add Ivy Bridge to affected list (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [documentation] x86/speculation: Add SRBDS vulnerability and mitigation documentation (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/speculation: Add Special Register Buffer Data Sampling (SRBDS) mitigation (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/cpu: Add 'table' argument to cpu_matches() (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/cpu: Add a steppings field to struct x86_cpu_id (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/cpu/bugs: Convert to new matching macros (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [crypto] crypto: simd - correctly take reqsize of wrapped skcipher into account (Mark Salter) [1830471] - [fs] nfsd: depend on CRYPTO_MD5 for legacy client tracking (Benjamin Coddington) [1847468] - [fs] nfsd: check for EBUSY from vfs_rmdir/vfs_unink (Benjamin Coddington) [1847468] - [fs] NFS: Fallocate should use the nfs4_fattr_bitmap (Benjamin Coddington) [1847468] - [fs] NFS: Return -ETXTBSY when attempting to write to a swapfile (Benjamin Coddington) [1847468] - [fs] fs: nfs: sysfs: Remove NULL check before kfree (Benjamin Coddington) [1847468] - [fs] NFS: remove unneeded semicolon (Benjamin Coddington) [1847468] - [fs] NFSv4: add declaration of current_stateid (Benjamin Coddington) [1847468] - [include] sunrpc: remove __KERNEL__ ifdefs (Benjamin Coddington) [1847468] - [fs] nfsd: document callback_wq serialization of callback code (Benjamin Coddington) [1847468] - [fs] nfsd: mark cb path down on unknown errors (Benjamin Coddington) [1847468] - [net] SUNRPC: Avoid RPC delays when exiting suspend (Benjamin Coddington) [1847468] - [fs] NFSv4: Don't retry the GETATTR on old stateid in nfs4_delegreturn_done() (Benjamin Coddington) [1847468] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in delegreturn (Benjamin Coddington) [1847468] - [fs] NFSv4: Fix races between open and delegreturn (Benjamin Coddington) [1847468] - [fs] NFS: nfs_inode_find_state_and_recover() fix stateid matching (Benjamin Coddington) [1847468] - [fs] NFSv4: Fix nfs4_inode_make_writeable() (Benjamin Coddington) [1847468] - [fs] NFSv4: nfs4_return_incompatible_delegation() should check delegation validity (Benjamin Coddington) [1847468] - [fs] NFSv4: Don't reclaim delegations that have been returned or revoked (Benjamin Coddington) [1847468] - [fs] NFSv4: Ignore requests to return the delegation if it was revoked (Benjamin Coddington) [1847468] - [fs] NFSv4: Revoke the delegation on success in nfs4_delegreturn_done() (Benjamin Coddington) [1847468] - [fs] NFSv4: Update the stateid seqid in nfs_revoke_delegation() (Benjamin Coddington) [1847468] - [fs] NFSv4: Clear the NFS_DELEGATION_REVOKED flag in nfs_update_inplace_delegation() (Benjamin Coddington) [1847468] - [fs] NFSv4: Hold the delegation spinlock when updating the seqid (Benjamin Coddington) [1847468] - [fs] NFSv4: Don't remove the delegation from the super_list more than once (Benjamin Coddington) [1847468] - [fs] NFS: Rename nfs_inode_return_delegation_noreclaim() (Benjamin Coddington) [1847468] - [fs] NFSv4: fail nfs4_refresh_delegation_stateid() when the delegation was revoked (Benjamin Coddington) [1847468] - [fs] NFSv4: Delegation recalls should not find revoked delegations (Benjamin Coddington) [1847468] - [fs] NFSv4: nfs4_callback_getattr() should ignore revoked delegations (Benjamin Coddington) [1847468] - [fs] NFSv4: Fix delegation handling in update_open_stateid() (Benjamin Coddington) [1847468] - [fs] NFSv4.1: Don't rebind to the same source port when reconnecting to the server (Benjamin Coddington) [1847468] - [fs] NFS/pnfs: Separate NFSv3 DS and MDS traffic (Benjamin Coddington) [1847468] - [fs] pNFS: nfs3_set_ds_client should set NFS_CS_NOPING (Benjamin Coddington) [1847468] - [fs] NFS: Add a flag to tell nfs_client to set RPC_CLNT_CREATE_NOPING (Benjamin Coddington) [1847468] - [fs] NFS: Use non-atomic bit ops when initialising struct nfs_client_initdata (Benjamin Coddington) [1847468] - [fs] NFSv3: Clean up timespec encode (Benjamin Coddington) [1847468] - [fs] NFSv2: Clean up timespec encode (Benjamin Coddington) [1847468] - [fs] NFSv2: Fix a typo in encode_sattr() (Benjamin Coddington) [1847468] - [fs] NFSv4: NFSv4 callbacks also support 64-bit timestamps (Benjamin Coddington) [1847468] - [fs] NFSv4: Encode 64-bit timestamps (Benjamin Coddington) [1847468] - [fs] NFS: Convert struct nfs_fattr to use struct timespec64 (Benjamin Coddington) [1847468] - [fs] NFS: If nfs_mountpoint_expiry_timeout < 0, do not expire submounts (Benjamin Coddington) [1847468] - [net] SUNRPC: Add trace points to observe transport congestion control (Benjamin Coddington) [1847468] - [net] SUNRPC: Eliminate log noise in call_reserveresult (Benjamin Coddington) [1847468] - [fs] nfsd: remove private bin2hex implementation (Benjamin Coddington) [1847468] - [fs] nfsd: remove set but not used variable 'len' (Benjamin Coddington) [1847468] - [fs] NFSv3: fix rpc receive buffer size for MOUNT call (Steve Dickson) [1837034] - [fs] NFS: remove unused macros (Steve Dickson) [1837034] - [mm] mm, slab: fix sign conversion problem in memcg_uncharge_slab() (Waiman Long) [1849016] - [mm] mm: fix false-positive OVERCOMMIT_GUESS failures (Waiman Long) [1849016] - [mm] mm: remove CONFIG_MIGRATE_VMA_HELPER (Karol Herbst) [1847908] - [nvdimm] libnvdimm: Export the target_node attribute for regions and namespaces (Jeff Moyer) [1783157] - [dax] dax: Add numa_node to the default device-dax attributes (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Simplify root read-only definition for the 'resource' attribute (Jeff Moyer) [1783157] - [dax] dax: Simplify root read-only definition for the 'resource' attribute (Jeff Moyer) [1783157] - [dax] dax: Create a dax device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nvdimm_bus_attribute_group to device_type (Jeff Moyer) [1783157] - [acpi] libnvdimm: Move nvdimm_attribute_group to device_type (Jeff Moyer) [1783157] - [acpi] libnvdimm: Move nd_mapping_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nd_region_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nd_numa_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nd_device_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move region attribute group definition (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move attribute groups to device type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm/region: Initialize bad block for volatile namespaces (Jeff Moyer) [1783157] - [x86] x86/mce: Add Xeon Icelake to list of CPUs that support PPIN (Steve Best) [1848710] - [powerpc] powerpc/kernel: Enables memory hot-remove after reboot on pseries guests (David Gibson) [1848844] - [fs] cifs: multichannel: try to rebind when reconnecting a channel (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: use pointer for binding channel (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: move channel selection above transport layer (Leif Sahlberg) [1842759] - [fs] cifs: move some variables off the stack in smb2_ioctl_query_info (Leif Sahlberg) [1842759] - [fs] cifs: reduce stack use in smb2_compound_op (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: always zero struct cifs_io_parms (Leif Sahlberg) [1842759] - [fs] smb3: default to minimum of two channels when multichannel specified (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: move channel selection in function (Leif Sahlberg) [1842759] - [mm] x86/init: fix build with CONFIG_SWAP=n (Waiman Long) [1839415] - [netdrv] ionic: add pcie_print_link_status (Jonathan Toppins) [1846506] - [netdrv] ionic: no link check while resetting queues (Jonathan Toppins) [1846953] - [netdrv] ionic: export features for vlans to use (Jonathan Toppins) [1846868] - [netdrv] ionic: remove support for mgmt device (Jonathan Toppins) [1846506] - [netdrv] ionic: wait on queue start until after IFF_UP (Jonathan Toppins) [1844924] - [netdrv] ionic: add more ethtool stats (Jonathan Toppins) [1848149] - [netdrv] ionic: more ionic name tweaks (Jonathan Toppins) [1848149] - [netdrv] ionic: ionic_intr_free parameter change (Jonathan Toppins) [1848149] - [netdrv] ionic: reset device at probe (Jonathan Toppins) [1848149] - [netdrv] ionic: shorter dev cmd wait time (Jonathan Toppins) [1848149] - [netdrv] ionic: add support for more xcvr types (Jonathan Toppins) [1848149] - [netdrv] ionic: protect vf calls from fw reset (Jonathan Toppins) [1848149] - [netdrv] ionic: updates to ionic FW api description (Jonathan Toppins) [1848149] - [netdrv] ionic: support longer tx sg lists (Jonathan Toppins) [1848149] - [netdrv] ionic: Use debugfs_create_bool() to export bool (Jonathan Toppins) [1848149] - [netdrv] drivers:Remove inclusion of vermagic header (Jonathan Toppins) [1848149] - [net] SUNRPC: Destroy the back channel when we destroy the host transport (Benjamin Coddington) [1846984] - [net] SUNRPC: fix race to sk_err after xs_error_report (Benjamin Coddington) [1846984] - [fs] NFS: Remove redundant mirror tracking in O_DIRECT (Benjamin Coddington) [1846984] - [fs] nfs: Fix nfsi->nrequests count error on nfs_inode_remove_request (Benjamin Coddington) [1846984] - [net] sunrpc: clean up indentation issue (Benjamin Coddington) [1846984] - [fs] NFS: Optimise the default readahead size (Benjamin Coddington) [1846984] - [fs] nfsd: fix nfs read eof detection (Benjamin Coddington) [1846984] - [fs] nfsd: Make nfsd_reset_boot_verifier_locked static (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in LOCKU (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in CLOSE/OPEN_DOWNGRADE (Benjamin Coddington) [1846984] - [fs] NFSv4: Fix OPEN_DOWNGRADE error handling (Benjamin Coddington) [1846984] - [fs] pNFS: Handle NFS4ERR_OLD_STATEID on layoutreturn by bumping the state seqid (Benjamin Coddington) [1846984] - [fs] NFSv4: Add a helper to increment stateid seqids (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle RPC level errors in LAYOUTRETURN (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle NFS4ERR_DELAY correctly in return-on-close (Benjamin Coddington) [1846984] - [fs] NFSv4: Clean up pNFS return-on-close error handling (Benjamin Coddington) [1846984] - [fs] NFS: remove unused check for negative dentry (Benjamin Coddington) [1846984] - [fs] NFSv3: use nfs_add_or_obtain() to create and reference inodes (Benjamin Coddington) [1846984] - [fs] NFS: Refactor nfs_instantiate() for dentry referencing callers (Benjamin Coddington) [1846984] - [fs] nfs_instantiate(): prevent multiple aliases for directory inode (Benjamin Coddington) [1846984] - [net] SUNRPC: Rename xdr_buf_read_netobj to xdr_buf_read_mic (Benjamin Coddington) [1846984] - [fs] nfsd: degraded slot-count more gracefully as allocation nears exhaustion (Benjamin Coddington) [1846984] - [fs] nfsd: handle drc over-allocation gracefully (Benjamin Coddington) [1846984] - [net] SUNRPC: RPC level errors should always set task->tk_rpc_status (Benjamin Coddington) [1846984] - [fs] nfsd: Support the server resetting the boot verifier (Benjamin Coddington) [1846984] - [net] sunrpc: Use kzfree rather than its implementation (Benjamin Coddington) [1846984] - [fs] nfsd: eliminate an unnecessary acl size limit (Benjamin Coddington) [1846984] - [fs] Deprecate nfsd fault injection (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs4_proc_get_lease_time() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs41_proc_secinfo_no_name() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs41_proc_reclaim_complete() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have _nfs4_proc_secinfo() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs4_proc_setclientid() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Add an nfs4_call_sync_custom() function (Benjamin Coddington) [1846984] - [fs] NFSv4: Fix a memory leak bug (Benjamin Coddington) [1846984] - [net] xprtrdma: Fix bc_max_slots return value (Benjamin Coddington) [1846984] - [net] SUNRPC: Inline xdr_commit_encode (Benjamin Coddington) [1846984] - [net] SUNRPC: Remove rpc_wake_up_queued_task_on_wq() (Benjamin Coddington) [1846984] - [fs] fs: nfs: Fix possible null-pointer dereferences in encode_attrs() (Benjamin Coddington) [1846984] - [fs] nfsd: Fix the documentation for svcxdr_tmpalloc() (Benjamin Coddington) [1846984] - [fs] nfsd: Remove unnecessary NULL checks (Benjamin Coddington) [1846984] - [s390] vfio-ccw: make vfio_ccw_regops variables declarations static (Cornelia Huck) [1660917] - [s390] vfio-ccw: Add trace for CRW event (Cornelia Huck) [1660917] - [s390] vfio-ccw: Wire up the CRW irq and CRW region (Cornelia Huck) [1660917] - [s390] vfio-ccw: Introduce a new CRW region (Cornelia Huck) [1660917] - [s390] vfio-ccw: Refactor IRQ handlers (Cornelia Huck) [1660917] - [s390] vfio-ccw: Introduce a new schib region (Cornelia Huck) [1660917] - [s390] vfio-ccw: Refactor the unregister of the async regions (Cornelia Huck) [1660917] - [s390] vfio-ccw: Register a chp_event callback for vfio-ccw (Cornelia Huck) [1660917] - [s390] vfio-ccw: Introduce new helper functions to free/destroy regions (Cornelia Huck) [1660917] - [documentation] vfio-ccw: document possible errors (Cornelia Huck) [1660917] - [s390] vfio-ccw: Enable transparent CCW IPL from DASD (Cornelia Huck) [1660917] - [s390] cio: generate delayed uevent for vfio-ccw subchannels (Cornelia Huck) [1660917] - [s390] vfio-ccw: Use the correct style for SPDX License Identifier (Cornelia Huck) [1660917] - [s390] vfio-ccw: Rework the io_fctl trace (Cornelia Huck) [1660917] - [s390] vfio-ccw: Add a trace for asynchronous requests (Cornelia Huck) [1660917] - [s390] vfio-ccw: Trace the FSM jumptable (Cornelia Huck) [1660917] - [s390] vfio-ccw: Refactor how the traces are built (Cornelia Huck) [1660917] - [s390] vfio-ccw: fix error return code in vfio_ccw_sch_init() (Cornelia Huck) [1660917] - [s390] vfio-ccw: add some logging (Cornelia Huck) [1660917] - [s390] vfio-ccw: make vfio_ccw_async_region_ops static (Cornelia Huck) [1660917] - [documentation] documentation: fix vfio-ccw doc (Cornelia Huck) [1660917] - [documentation] vfio-ccw: Update documentation for csch/hsch (Cornelia Huck) [1660917] - [s390] vfio-ccw: Don't call cp_free if we are processing a channel program (Cornelia Huck) [1660917] - [s390] vfio-ccw: Set pa_nr to 0 if memory allocation fails for pa_iova_pfn (Cornelia Huck) [1660917] - [s390] vfio-ccw: Fix memory leak and don't call cp_free in cp_init (Cornelia Huck) [1660917] - [s390] vfio-ccw: Fix misleading comment when setting orb.cmd.c64 (Cornelia Huck) [1660917] - [s390] vfio-ccw: Fix the conversion of Format-0 CCWs to Format-1 (Cornelia Huck) [1660917] - [s390] cio: introduce driver_override on the css bus (Cornelia Huck) [1660917] - [s390] vfio-ccw: make convert_ccw0_to_ccw1 static (Cornelia Huck) [1660917] - [s390] vfio-ccw: Remove copy_ccw_from_iova() (Cornelia Huck) [1660917] - [s390] vfio-ccw: Factor out the ccw0-to-ccw1 transition (Cornelia Huck) [1660917] - [s390] vfio-ccw: Copy CCW data outside length calculation (Cornelia Huck) [1660917] - [s390] vfio-ccw: Skip second copy of guest cp to host (Cornelia Huck) [1660917] - [s390] vfio-ccw: Move guest_cp storage into common struct (Cornelia Huck) [1660917] - [s390] cio: Combine direct and indirect CCW paths (Cornelia Huck) [1660917] - [s390] vfio-ccw: Rearrange IDAL allocation in direct CCW (Cornelia Huck) [1660917] - [s390] vfio-ccw: Remove pfn_array_table (Cornelia Huck) [1660917] - [s390] vfio-ccw: Adjust the first IDAW outside of the nested loops (Cornelia Huck) [1660917] - [s390] vfio-ccw: Rearrange pfn_array and pfn_array_table arrays (Cornelia Huck) [1660917] - [s390] cio: Use generalized CCW handler in cp_init() (Cornelia Huck) [1660917] - [s390] cio: Generalize the TIC handler (Cornelia Huck) [1660917] - [s390] cio: Refactor the routine that handles TIC CCWs (Cornelia Huck) [1660917] - [s390] cio: Squash cp_free() and cp_unpin_free() (Cornelia Huck) [1660917] - [s390] vfio-ccw: Destroy kmem cache region on module exit (Cornelia Huck) [1660917] - [documentation] docs: s390: convert docs to ReST and rename to *.rst (Cornelia Huck) [1660917] - [s390] cio: Remove vfio-ccw checks of command codes (Cornelia Huck) [1660917] - [s390] cio: Allow zero-length CCWs in vfio-ccw (Cornelia Huck) [1660917] - [s390] cio: Don't pin vfio pages for empty transfers (Cornelia Huck) [1660917] - [s390] cio: Initialize the host addresses in pfn_array (Cornelia Huck) [1660917] - [s390] cio: Split pfn_array_alloc_pin into pieces (Cornelia Huck) [1660917] - [s390] cio: Set vfio-ccw FSM state before ioeventfd (Cornelia Huck) [1660917] - [s390] cio: Update SCSW if it points to the end of the chain (Cornelia Huck) [1660917] - [s390] vfio-ccw: Prevent quiesce function going into an infinite loop (Cornelia Huck) [1660917] - [s390] vfio-ccw: Release any channel program when releasing/removing vfio-ccw mdev (Cornelia Huck) [1660917] - [s390] vfio-ccw: Do not call flush_workqueue while holding the spinlock (Cornelia Huck) [1660917] - [s390] vfio-ccw: add handling for async channel instructions (Cornelia Huck) [1660917] - [s390] cio: export hsch to modules (Cornelia Huck) [1660917] - [s390] vfio-ccw: add capabilities chain (Cornelia Huck) [1660917] - [s390] vfio-ccw: protect the I/O region (Cornelia Huck) [1660917] - [s390] vfio-ccw: rework ssch state handling (Cornelia Huck) [1660917] - [s390] vfio-ccw: make it safe to access channel programs (Cornelia Huck) [1660917] - [s390] vfio: ccw: only free cp on final interrupt (Cornelia Huck) [1660917] - [s390] cio: Use cpa range elsewhere within vfio-ccw (Cornelia Huck) [1660917] - [s390] cio: Fix vfio-ccw handling of recursive TICs (Cornelia Huck) [1660917] - [s390] vfio-ccw: Don't assume there are more ccws after a TIC (Cornelia Huck) [1660917] - [s390] vfio: ccw: Merge BUSY and BOXED states (Cornelia Huck) [1660917] - [s390] cio: Fix cleanup when unsupported IDA format is used (Cornelia Huck) [1660917] - [s390] cio: Fix cleanup of pfn_array alloc failure (Cornelia Huck) [1660917] - [s390] vfio: ccw: Register mediated device once all structures are initialized (Cornelia Huck) [1660917] - [s390] cio: make vfio_ccw_io_region static (Cornelia Huck) [1660917] - [s390] cio: Fix how vfio-ccw checks pinned pages (Cornelia Huck) [1660917] - [s390] cio: Refactor alloc of ccw_io_region (Cornelia Huck) [1660917] - [s390] cio: Convert ccw_io_region to pointer (Cornelia Huck) [1660917] - [netdrv] ibmvnic: Harden device login requests (Steve Best) [1847183] - [mm] s390/cmm: fix information leak in cmm_timeout_handler() (Nico Pache) [1846532] {CVE-2020-10773} - [fs] kernfs: fix potential null pointer dereference (Carlos Maiolino) [1847872] - [netdrv] net: sfc: reject unsupported coalescing params (Jarod Wilson) [1844659] - [netdrv] iavf: increase reset complete wait time (Stefan Assmann) [1844598] - [netdrv] iavf: Fix reporting 2.5 Gb and 5Gb speeds (Stefan Assmann) [1844598] - [netdrv] iavf: use appropriate enum for comparison (Stefan Assmann) [1844598] - [netdrv] iavf: fix speed reporting over virtchnl (Stefan Assmann) [1844598] - [block] blk-mq: fix blk_mq_all_tag_iter (Ming Lei) [1824037] - [block] blk-mq: split out a __blk_mq_get_driver_tag helper (Ming Lei) [1824037] - [block] blk-mq: drain I/O when all CPUs in a hctx are offline (Ming Lei) [1824037] - [block] blk-mq: add blk_mq_all_tag_iter (Ming Lei) [1824037] - [block] blk-mq: open code __blk_mq_alloc_request in blk_mq_alloc_request_hctx (Ming Lei) [1824037] - [block] blk-mq: use BLK_MQ_NO_TAG in more places (Ming Lei) [1824037] - [block] blk-mq: rename BLK_MQ_TAG_FAIL to BLK_MQ_NO_TAG (Ming Lei) [1824037] - [block] blk-mq: move more request initialization to blk_mq_rq_ctx_init (Ming Lei) [1824037] - [block] blk-mq: simplify the blk_mq_get_request calling convention (Ming Lei) [1824037] - [block] blk-mq: remove a pointless queue enter pair in blk_mq_alloc_request_hctx (Ming Lei) [1824037] - [block] blk-mq: remove a pointless queue enter pair in blk_mq_alloc_request (Ming Lei) [1824037] - [block] blk-mq: move the call to blk_queue_enter_live out of blk_mq_get_request (Ming Lei) [1824037] - [nvme] nvme: force complete cancelled requests (Ming Lei) [1824037] - [block] blk-mq: blk-mq: provide forced completion method (Ming Lei) [1824037] - [block] block: Limit number of items taken from the I/O scheduler in one go (Ming Lei) [1824037] - [scsi] Revert "scsi: core: run queue if SCSI device queue isn't ready and queue is idle" (Ming Lei) [1824037] - [block] blk-mq: Rerun dispatching in the case of budget contention (Ming Lei) [1824037] - [block] blk-mq: Add blk_mq_delay_run_hw_queues() API call (Ming Lei) [1824037] - [block] blk-mq: In blk_mq_dispatch_rq_list() "no budget" is a reason to kick (Ming Lei) [1824037] - [block] blk-mq: Put driver tag in blk_mq_dispatch_rq_list() when no budget (Ming Lei) [1824037] - [block] blk-mq: don't commit_rqs() if none were queued (Ming Lei) [1824037] - [block] blk-mq: Remove some unused function arguments (Ming Lei) [1824037] - [block] blk-mq-tag: document tag iteration helper return value (Ming Lei) [1824037] - [block] blk-mq: Document the functions that iterate over requests (Ming Lei) [1824037] - [block] loop: Better discard support for block devices (Ming Lei) [1824037] - [block] loop: Report EOPNOTSUPP properly (Ming Lei) [1824037] - [block] block: keep bdi->io_pages in sync with max_sectors_kb for stacked devices (Ming Lei) [1824037] - [block] block, zoned: fix integer overflow with BLKRESETZONE et al (Ming Lei) [1824037] - [block] block: Fix use-after-free issue accessing struct io_cq (Ming Lei) [1824037] - [netdrv] cxgb4: add EOTID tracking and software context dump (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: tune burst buffer size for TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: improve credits recovery in TC-MQPRIO Tx path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix delete filter entry fail in unload path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix large delays in PTP synchronization (Vishal Kulkarni) [1828665] - [netdrv] net/cxgb4: Check the return from t4_query_params properly (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: free MQPRIO resources in shutdown path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix MPS index overwrite when setting MAC address (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Add support to catch bits set in INT_CAUSE5 (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: remove set but not used variable 'tab' (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/ptp: pass the sign of offset delta in FW CMD (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix Txq restart check during backpressure (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix throughput drop during Tx backpressure (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: rework TC filter rule insertion across regions (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: update T5/T6 adapter register ranges (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix checks for max queues to allocate (Vishal Kulkarni) [1828665] - [netdrv] net/chelsio: Don't set N/A for not available FW (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Added tls stats prints (Vishal Kulkarni) [1828665] - [netdrv] l2t_seq_next should increase position index (Vishal Kulkarni) [1828665] - [netdrv] seq_tab_next() should increase position index (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: reject overlapped queues in TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix Tx multi channel port rate limit (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/cxgb4vf: fix flow control display for auto negotiation (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix refcount init for TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/chtls: fix ULD connection failures due to wrong TID base (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix missed high priority region calculation (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Fix kernel panic while accessing sge_info (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add support for high priority filters (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add stats for MQPRIO QoS offload Tx path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add UDP segmentation offload support (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/chcr: update SGL DMA unmap for USO (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add TC-MATCHALL classifier ingress offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: check rule prio conflicts before offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add TC-MATCHALL classifier egress offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: remove unneeded semicolon for switch block (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Fix an error code in cxgb4_mqprio_alloc_hw_resources() (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: make function 'cxgb4_mqprio_free_hw_resources' static (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: remove redundant assignment to hdr_len (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix 64-bit division on i386 (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Use match_string() helper to simplify the code (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add FLOWC based QoS offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add Tx and Rx path for ETHOFLD traffic (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add ETHOFLD hardware queue support (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: parse and configure TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: rework queue config and MSI-X allocation (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: query firmware for QoS offload resources (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Add pci reset handler (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/l2t: Simplify 't4_l2e_free()' and '_t4_l2e_free()' (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix panic when attaching to ULD fail (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: request the TX CIDX updates to status page (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Signedness bug in init_one() (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: no need to check return value of debugfs_create functions (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: smt: Use normal int for refcount (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: smt: Add lock for atomic_dec_and_test (Vishal Kulkarni) [1828665] - [fs] xfs: clear PF_MEMALLOC before exiting xfsaild thread (Brian Foster) [1827912]- [drm] drm/amd/display: Defer cursor lock until after VUPDATE (Lyude Paul) [1814893] - [drm] drm/amd/display: Use cursor locking to prevent flip delays (Lyude Paul) [1814893] - [drm] drm/amdgpu/display: Fix Pollock Variant Detection (Lyude Paul) [1814893] - [drm] drm/amd/display: Fix RV2 Variant Detection (Lyude Paul) [1814893] - [drm] drm/amdgpu/display: fix pci revision id fetching (Lyude Paul) [1814893] - [drm] drm/nouveau/device: detect vGPUs (Lyude Paul) [1814893] - [drm] drm/nouveau/device: detect if changing endianness failed (Lyude Paul) [1814893] - [drm] drm/nouveau/device: rework mmio mapping code to get rid of second map (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gm200-: detect and potentially disable HDA support on some SORs (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gp100: split SOR implementation from gm200 (Lyude Paul) [1814893] - [drm] drm/nouveau/disp: modify OR allocation policy to account for HDA requirements (Lyude Paul) [1814893] - [drm] drm/nouveau/disp: split part of OR allocation logic into a function (Lyude Paul) [1814893] - [drm] drm/nouveau/disp: provide hint to OR allocation about HDA requirements (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/gt215-: fix race with audio driver runpm (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gv100-: NV_PDISP_SF_AUDIO_CNTRL0 register moved (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gf119-: select HDA device entry based on bound head (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gf119-: add HAL for programming device entry in SF (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gt215-: pass head to nvkm_ior.hda.eld() (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gm200-: fix NV_PDISP_SOR_HDMI2_CTRL(n) selection (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Share DP SST mode_valid() handling with MST (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Move 8BPC limit for MST into nv50_mstc_get_modes() (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/gv100-: Add support for interlaced modes (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Probe SOR and PIOR caps for DP interlacing support (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Initialize core channel in nouveau_display_create() (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gv100-: expose capabilities class (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/nv50-: increase timeout on pio channel free() polling (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: wait for FIFO space on PIO channels (Lyude Paul) [1814893] - [drm] drm/nouveau/nvif: protect waits against GPU falling off the bus (Lyude Paul) [1814893] - [drm] drm/nouveau/nvif: access PTIMER through usermode class, if available (Lyude Paul) [1814893] - [drm] drm/nouveau/ttm: evict other IO mappings when running out of BAR1 space (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: clear SW state of disabled windows harder (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Add aux table invalidate for all engines (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Invalidate aux table entries forcibly (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Flush L3 (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Fix HDC pipeline flush (Lyude Paul) [1814893] - [drm] Revert "drm/i915/tgl: Include ro parts of l3 to invalidate" (Lyude Paul) [1814893] - [drm] drm/i915: Push MST link retraining to the hotplug work (Lyude Paul) [1814893] - [drm] drm/i915: Flatten intel_dp_check_mst_status() a bit (Lyude Paul) [1814893] - [drm] drm/i915/tc: Do not warn when aux power well of static TC ports timeout (Lyude Paul) [1814893] - [drm] drm/i915/tc: Catch TC users accessing FIA registers without enable aux (Lyude Paul) [1814893] - [drm] drm/i915/tc/tgl: Implement TC cold sequences (Lyude Paul) [1814893] - [drm] drm/i915/tc: Skip ref held check for TC legacy aux power wells (Lyude Paul) [1814893] - [drm] drm/i915/tc/icl: Implement TC cold sequences (Lyude Paul) [1814893] - [drm] drm/i915/display: Split hsw_power_well_enable() into two (Lyude Paul) [1814893] - [drm] drm/i915/display: Add intel_legacy_aux_to_power_domain() (Lyude Paul) [1814893] - [drm] drm/i915/display: Move out code to return the digital_port of the aux ch (Lyude Paul) [1814893] - [drm] drm/i915: Add missing deinitialization cases of load failure (Lyude Paul) [1814893] - [drm] drm/i915: split intel_modeset_init() to pre/post irq install (Lyude Paul) [1814893] - [drm] drm/i915: split i915_driver_modeset_probe() to pre/post irq install (Lyude Paul) [1814893] - [drm] drm/i915: split i915_driver_modeset_remove() to pre/post irq uninstall (Lyude Paul) [1814893] - [drm] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall (Lyude Paul) [1814893] - [drm] drm/i915: Extract skl SAGV checking (Lyude Paul) [1814893] - [drm] drm/i915: Track active_pipes in bw_state (Lyude Paul) [1814893] - [drm] drm/i915: Use bw state for per crtc SAGV evaluation (Lyude Paul) [1814893] - [drm] drm/i915: Introduce intel_calc_active_pipes() (Lyude Paul) [1814893] - [drm] drm/i915: Add pre/post plane updates for SAGV (Lyude Paul) [1814893] - [drm] drm/i915: Prepare to extract gen specific functions from intel_can_enable_sagv (Lyude Paul) [1814893] - [drm] drm/i915: Add intel_atomic_get_bw_*_state helpers (Lyude Paul) [1814893] - [drm] drm/i915: Introduce skl_plane_wm_level accessor (Lyude Paul) [1814893] - [drm] drm/i915: do AUD_FREQ_CNTRL state save on all gen9+ platforms (Lyude Paul) [1814893] - [drm] drm/i915: Extend hotplug detect retry on TypeC connectors to 5 seconds (Lyude Paul) [1814893] - [drm] drm/i915: Add a retry counter for hotplug detect retries (Lyude Paul) [1814893] - [drm] drm/i915: Introduce intel_connector_hpd_pin() (Lyude Paul) [1814893] - [drm] drm/i915: Prefer intel_connector over drm_connector in hotplug code (Lyude Paul) [1814893] - [drm] drm/i915: Use intel_attached_encoder() (Lyude Paul) [1814893] - [drm] drm/i915/ehl: Restrict w/a 1607087056 for EHL/JSL (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Initialize multicast register steering for workarounds (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Make Wa_14010229206 permanent (Lyude Paul) [1814893] - [drm] drm/i915: Add Wa_1605460711 / Wa_1408767742 to ICL and EHL (Lyude Paul) [1814893] - [drm] drm/i915: Apply Wa_1406680159:icl, ehl as an engine workaround (Lyude Paul) [1814893] - [drm] drm/i915: Add Wa_1406306137:icl,ehl (Lyude Paul) [1814893] - [drm] drm/i915: Add Wa_1604278689:icl,ehl (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Don't treat unslice registers as masked (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Make Wa_1606700617 permanent (Lyude Paul) [1814893] - [drm] drm/i915/tgl: WaDisableGPGPUMidThreadPreemption (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Move and restrict Wa_1408615072 (Lyude Paul) [1814893] - [drm] drm/i915/gen11: Moving WAs to rcs_engine_wa_init() (Lyude Paul) [1814893] - [drm] drm/i915: add Wa_14010594013: icl,ehl (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa number to WaAllowPMDepthAndInvocationCountAccessFromUMD (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add note about Wa_1409142259 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Fix the Wa number of a fix (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add note about Wa_1607063988 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add note to Wa_1607297627 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Extend Wa_1606931601 for all steppings (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa_1409085225, Wa_14010229206 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Implement Wa_1806527549 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Implement Wa_1409804808 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa_1808121037 to tgl (Lyude Paul) [1814893] - [drm] drm/i915: Use engine wa list for Wa_1607090982 (Lyude Paul) [1814893] - [drm] drm/i915: Implement Wa_1607090982 (Lyude Paul) [1814893] - [drm] drm/i915: Disable tesselation clock gating on tgl A0 (Lyude Paul) [1814893] - [drm] drm/i915: Move ringbuffer WAs to engine workaround list (Lyude Paul) [1814893] - [drm] drm/i915/gt: Skip rmw for masked registers (Lyude Paul) [1814893] - [drm] drm/i915/selftests: Also wait for the scratch buffer to be bound (Lyude Paul) [1814893] - [drm] drm/i915/dp: Return the right vswing tables (Lyude Paul) [1814893] - [drm] drm/i915/dp/tgl+: Update combo phy vswing tables (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add definitions for VRR registers and bits (Lyude Paul) [1814893] - [drm] drm/i915: use forced codec wake on all gen9+ platforms (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add new PCI IDs to TGL (Lyude Paul) [1814893] - [drm] drm/i915/perf: Invalidate OA TLB on when closing perf stream (Lyude Paul) [1814893] - [drm] Bump DRM backport version to 5.6.14 (Lyude Paul) [1814893] - [drm] drm/i915/tgl+: Fix interrupt handling for DP AUX transactions (Lyude Paul) [1814893] - [drm] drm/amd/amdgpu: add raven1 part to the gfxoff quirk list (Lyude Paul) [1814893] - [drm] drm/amd/display: add basic atomic check for cursor plane (Lyude Paul) [1814893] - [drm] Make the "Reducing compressed framebufer size" message be DRM_INFO_ONCE() (Lyude Paul) [1814893] - [drm] drm/i915: Handle idling during i915_gem_evict_something busy loops (Lyude Paul) [1814893] - [drm] drm/i915: Mark concurrent submissions with a weak-dependency (Lyude Paul) [1814893] - [drm] drm/i915/gvt: Fix kernel oops for 3-level ppgtt guest (Lyude Paul) [1814893] - [drm] drm/amdgpu: force fbdev into vram (Lyude Paul) [1814893] - [drm] drm/i915/gem: Remove object_is_locked assertion from unpin_from_display_plane (Lyude Paul) [1814893] - [drm] drm/i915: Don't enable WaIncreaseLatencyIPCEnabled when IPC is disabled (Lyude Paul) [1814893] - [drm] drm/i915/gt: Make timeslicing an explicit engine property (Lyude Paul) [1814893] - [drm] drm/qxl: lost qxl_bo_kunmap_atomic_page in qxl_image_init_helper() (Lyude Paul) [1814893] - [drm] drm/amd/display: Update downspread percent to match spreadsheet for DCN2.1 (Lyude Paul) [1814893] - [drm] drm/amd/display: Defer cursor update around VUPDATE for all ASIC (Lyude Paul) [1814893] - [drm] drm/amd/display: check if REFCLK_CNTL register is present (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: avoid using pm_en before it is initialized revised (Lyude Paul) [1814893] - [drm] drm/amd/display: blank dp stream before re-train the link (Lyude Paul) [1814893] - [drm] drm/i915/display: Load DP_TP_CTL/STATUS offset before use it (Lyude Paul) [1814893] - [drm] drm/i915/tgl: TBT AUX should use TC power well ops (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa_14010477008:tgl (Lyude Paul) [1814893] - [drm] drm/amd/display: work around fp code being emitted outside of DC_FP_START/END (Lyude Paul) [1814893] - [drm] drm/amdgpu: drop redundant cg/pg ungate on runpm enter (Lyude Paul) [1814893] - [drm] drm/amdgpu: move kfd suspend after ip_suspend_phase1 (Lyude Paul) [1814893] - [drm] drm/amdgpu: Fix oops when pp_funcs is unset in ACPI event (Lyude Paul) [1814893] - [drm] drm/amdgpu: Correctly initialize thermal controller for GPUs with Powerplay table v0 (e.g Hawaii) (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: fix resume failed as smu table initialize early exit (Lyude Paul) [1814893] - [drm] drm/bridge: anx6345: set correct BPC for display_info of connector (Lyude Paul) [1814893] - [drm] drm/i915: Use proper fault mask in interrupt postinstall too (Lyude Paul) [1814893] - [drm] drm/i915/selftests: Fix i915_address_space refcnt leak (Lyude Paul) [1814893] - [drm] drm/qxl: qxl_release use after free (Lyude Paul) [1814893] - [drm] drm/qxl: qxl_release leak in qxl_hw_surface_alloc() (Lyude Paul) [1814893] - [drm] drm/qxl: qxl_release leak in qxl_draw_dirty_fb() (Lyude Paul) [1814893] - [drm] drm/i915/gt: Check cacheline is valid before acquiring (Lyude Paul) [1814893] - [drm] drm/i915/gem: Hold obj->vma.lock over for_each_ggtt_vma() (Lyude Paul) [1814893] - [drm] drm/amd/display: Fix green screen issue after suspend (Lyude Paul) [1814893] - [drm] drm/edid: Fix off-by-one in DispID DTD pixel clock (Lyude Paul) [1814893] - [drm] drm/amdgpu: invalidate L2 before SDMA IBs (v2) (Lyude Paul) [1814893] - [dma-buf] dma-buf: Fix SET_NAME ioctl uapi (Lyude Paul) [1814893] - [drm] drm/scheduler: fix drm_sched_get_cleanup_job (Lyude Paul) [1814893] - [drm] drm/amdgpu: fix wrong vram lost counter increment V2 (Lyude Paul) [1814893] - [drm] drm/dp_mst: Zero assigned PBN when releasing VCPI slots (Lyude Paul) [1814893] - [drm] drm/amd/display: Calculate scaling ratios on every medium/full update (Lyude Paul) [1814893] - [drm] drm/amd/display: Update stream adjust in dc_stream_adjust_vmin_vmax (Lyude Paul) [1814893] - [video] fbdev: potential information leak in do_fb_ioctl() (Lyude Paul) [1814893] - [drm] drm/nouveau/gr/gp107, gp108: implement workaround for HW hanging during init (Lyude Paul) [1814893] - [drm] drm/amdkfd: kfree the wrong pointer (Lyude Paul) [1814893] - [drm] drm/nouveau: workaround runpm fail by disabling PCI power management on certain intel bridges (Lyude Paul) [1814893] - [drm] drm/nouveau/svm: fix vma range check for migration (Lyude Paul) [1814893] - [drm] drm/nouveau/svm: check for SVM initialized before migrating (Lyude Paul) [1814893] - [drm] drm/amd/display: Don't try hdcp1.4 when content_type is set to type1 (Lyude Paul) [1814893] - [drm] drm/ttm: flush the fence on the bo after we individualize the reservation object (Lyude Paul) [1814893] - [drm] drm/i915/perf: Do not clear pollin for small user read buffers (Lyude Paul) [1814893] - [drm] drm/nouveau/sec2/gv100-: add missing MODULE_FIRMWARE() (Lyude Paul) [1814893] - [drm] drm/amdgpu: fix the hw hang during perform system reboot and reset (Lyude Paul) [1814893] - [drm] drm/amdgpu/gfx9: add gfxoff quirk (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: force the trim of the mclk dpm_levels if OD is enabled (Lyude Paul) [1814893] - [drm] drm/i915/gt: Fill all the unused space in the GGTT (Lyude Paul) [1814893] - [drm] drm/i915/ggtt: do not set bits 1-11 in gen12 ptes (Lyude Paul) [1814893] - [drm] drm/amdgpu: fix gfx hang during suspend with video playback (v2) (Lyude Paul) [1814893] - [drm] drm/dp_mst: Fix clearing payload state on topology disable (Lyude Paul) [1814893] - [drm] Revert "drm/dp_mst: Remove VCPI while disabling topology mgr" (Lyude Paul) [1814893] - [drm] drm/i915/gt: Treat idling as a RPS downclock event (Lyude Paul) [1814893] - [drm] drm/vboxvideo: Add missing remove_conflicting_pci_framebuffers call, v2 (Lyude Paul) [1814893] - [drm] drm/i915/icl+: Don't enable DDI IO power on a TypeC port in TBT mode (Lyude Paul) [1814893] - [drm] drm/amd/display: Check for null fclk voltage when parsing clock table (Lyude Paul) [1814893] - [drm] drm/amdgpu: unify fw_write_wait for new gfx9 asics (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: implement the is_dpm_running() (Lyude Paul) [1814893] - [drm] drm/amdgpu/powerplay: using the FCLK DPM table to set the MCLK (Lyude Paul) [1814893] - [drm] drm: Remove PageReserved manipulation from drm_pci_alloc (Lyude Paul) [1814893] - [drm] drm/bridge: analogix-anx78xx: Fix drm_dp_link helper removal (Lyude Paul) [1814893] - [drm] drm/i915/gem: Flush all the reloc_gpu batch (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Disable preemption timeout (Lyude Paul) [1814893] - [drm] drm/i915/display: Fix mode private_flags comparison at atomic_check (Lyude Paul) [1814893] - [drm] drm/bridge: analogix-anx6345: Avoid duplicate -supply suffix (Lyude Paul) [1814893] - [drm] drm/i915: Allow for different modes of interruptible i915_active_wait (Lyude Paul) [1814893] - [gpu] DRM Backport 5.5 -> 5.6 (Lyude Paul) [1814893] - [video] video: fbdev: intelfb: use const pointer for fb_ops (Lyude Paul) [1814893] - [include] video: fbdev: make fbops member of struct fb_info a const pointer (Lyude Paul) [1814893] - [video] video: fbdev: uvesafb: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbdev: nvidia: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbdev: mb862xx: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbdev: atyfb: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbmem: use const pointer for fb_ops (Lyude Paul) [1814893] - [video] video: fbdev: vesafb: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: udlfb: don't restore fb_mmap after deferred IO cleanup (Lyude Paul) [1814893] - [video] video: smscufx: don't restore fb_mmap after deferred IO cleanup (Lyude Paul) [1814893] - [drm] drm/fb-helper: don't preserve fb_ops across deferred IO use (Lyude Paul) [1814893] - [drm] drm/fb-helper: Remove drm_fb_helper_fbdev_{setup, teardown}() (Lyude Paul) [1814893] - [video] video: fb_defio: preserve user fb_ops (Lyude Paul) [1814893] - [drm] mm, drm/ttm: Fix vm page protection handling (Lyude Paul) [1814893] - [dma-buf] udmabuf: Remove deleted map/unmap handlers (Lyude Paul) [1814893] - [include] dma-buf: Remove kernel map/unmap hooks (Lyude Paul) [1814893] - [drm] drm/udl: Remove udl implementation of GEM's free_object() (Lyude Paul) [1814893] - [drm] drm/udl: Unmap buffer object after damage update (Lyude Paul) [1814893] - [drm] drm/udl: Fix Kconfig indentation (Lyude Paul) [1814893] - [drm] drm/udl: Replace fbdev code with generic emulation (Lyude Paul) [1814893] - [drm] drm/udl: Remove struct udl_gem_object and functions (Lyude Paul) [1814893] - [drm] drm/udl: Switch to SHMEM (Lyude Paul) [1814893] - [drm] drm/udl: Allocate GEM object via struct drm_driver.gem_create_object (Lyude Paul) [1814893] - [drm] drm/udl: Remove flags field from struct udl_gem_object (Lyude Paul) [1814893] - [drm] drm/armada: Delete dma_buf->k(un)map implemenation (Lyude Paul) [1814893] - [tee] drm/tee_shm: Drop dma_buf_k(unmap) support (Lyude Paul) [1814893] - [samples] sample/vfio-mdev/mbocs: Remove dma_buf_k(un)map support (Lyude Paul) [1814893] - [media] media/videobuf2: Drop dma_buf->k(un)map support (Lyude Paul) [1814893] - [drm] drm/vmwgfx: Delete mmaping functions (Lyude Paul) [1814893] - [dma-buf] dma-buf: Drop dma_buf_k(un)map (Lyude Paul) [1814893] - [drm] drm/tegra: Remove dma_buf->k(un)map (Lyude Paul) [1814893] - [drm] drm/omapdrm: Drop dma_buf->k(un)map (Lyude Paul) [1814893] - [drm] drm/i915: Drop dma_buf->k(un)map (Lyude Paul) [1814893] - [staging] staging/android/ion: delete dma_buf->kmap/unmap implemenation (Lyude Paul) [1814893] - [drm] drm/i915: Remove dma_buf_kmap selftest (Lyude Paul) [1814893] - [drm] drm/tegra: Delete host1x_bo_ops->k(un)map (Lyude Paul) [1814893] - [gpu] drm/tegra: Map cmdbuf once for reloc processing (Lyude Paul) [1814893] - [pinctrl] pinctrl: Allow modules to use pinctrl_register_mappings (Lyude Paul) [1814893] - [include] lockdep: add might_lock_nested() (Lyude Paul) [1814893] - [gpu] DRM Backport 5.4 -> 5.5 (Lyude Paul) [1814893] - [security] device_cgroup: Export devcgroup_check_permission (Lyude Paul) [1814893] - [video] fbdev: drop res_id parameter from remove_conflicting_pci_framebuffers (Lyude Paul) [1814893] - [media] media: cec: check 'transmit_in_progress', not 'transmitting' (Lyude Paul) [1814893] - [media] media: cec: avoid decrementing transmit_queue_sz if it is 0 (Lyude Paul) [1814893] - [media] media: cec: CEC 2.0-only bcast messages were ignored (Lyude Paul) [1814893] - [media] cec: add cec_adapter to cec_notifier_cec_adap_unregister() (Lyude Paul) [1814893] - [media] media: cec-pin: add 'received' callback (Lyude Paul) [1814893] - [media] media: cec: expose the new connector info API (Lyude Paul) [1814893] - [media] media: cec/cec-adap.c: use new UI_CMD defines (Lyude Paul) [1814893] - [media] media: cec-notifier: clear cec_adap in cec_notifier_unregister (Lyude Paul) [1814893] - [media] media: cec-adap: return from cec_s_conn_info() if adap is invalid (Lyude Paul) [1814893] - [media] media: cec-notifier: add new notifier functions (Lyude Paul) [1814893] - [media] media: cec: add struct cec_connector_info support (Lyude Paul) [1814893] - [media] media: cec-notifier: rename variables, check kstrdup and n->conn_name (Lyude Paul) [1814893] - [media] media: cec-adap: fix regression in ping sanity check (Lyude Paul) [1814893] - [media] media: cec: allow any initiator for Ping and Image/Text View On (Lyude Paul) [1814893] - [media] media: cec: support CEC_MSG_FL_RAW (Lyude Paul) [1814893] - [media] media: cec: add CEC_MSG_FL_RAW flag and msg_is_raw helper function (Lyude Paul) [1814893] - [media] media: cec: move check from cec_transmit to cec_transmit_msg_fh (Lyude Paul) [1814893] - [media] media: cec: cec_transmit_msg_fh: do sanity checks first (Lyude Paul) [1814893] - [media] media: cec: mark devnode as registered before actually registering it (Lyude Paul) [1814893] - [media] media: cec-notifier: add cec_notifier_parse_hdmi_phandle helper (Lyude Paul) [1814893] - [media] media: Kconfig files: use the right help coding style (Lyude Paul) [1814893] - [media] media: cec: fill in cec chardev kobject to ease debugging (Lyude Paul) [1814893] - [media] media: cec: fix epoll() by calling poll_wait first (Lyude Paul) [1814893] - [media] media: cec: keep track of outstanding transmits (Lyude Paul) [1814893] - [media] media: cec: add debug_phys_addr module option (Lyude Paul) [1814893] - [media] media: cec: report Vendor ID after initialization (Lyude Paul) [1814893] - [media] media: cec-pin: fix broken tx_ignore_nack_until_eom error injection (Lyude Paul) [1814893] - [media] media: cec: increase debug level for 'queue full' (Lyude Paul) [1814893] - [media] media: cec: check for non-OK/NACK conditions while claiming a LA (Lyude Paul) [1814893] - [media] media: cec: forgot to cancel delayed work (Lyude Paul) [1814893] - [media] media: cec: name for RC passthrough device does not need 'RC for' (Lyude Paul) [1814893] - [media] media: cec-gpio: select correct Signal Free Time (Lyude Paul) [1814893] - [media] media: cec: fix the Signal Free Time calculation (Lyude Paul) [1814893] - [media] media: cec: add new tx/rx status bits to detect aborts/timeouts (Lyude Paul) [1814893] - [media] media: cec: remove cec-edid.c (Lyude Paul) [1814893] - [media] media: cec/v4l2: move V4L2 specific CEC functions to V4L2 (Lyude Paul) [1814893] - [media] media: cec: integrate cec_validate_phys_addr() in cec-api.c (Lyude Paul) [1814893] - [media] media: cec: make cec_get_edid_spa_location() an inline function (Lyude Paul) [1814893] - [media] media: use strscpy() instead of strlcpy() (Lyude Paul) [1814893] - [media] media: cec: move compat_ioctl handling to cec-api.c (Lyude Paul) [1814893] - [media] media: cec: add support for 5V signal testing (Lyude Paul) [1814893] - [uapi] media: uapi/linux/cec.h: add 5V events (Lyude Paul) [1814893] - [scsi] compat_ioctl: move more drivers to compat_ptr_ioctl (Lyude Paul) [1814893] - [vhost] compat_ioctl: move drivers to compat_ptr_ioctl (Lyude Paul) [1814893] - [rtc] compat_ioctl: move rtc handling into drivers/rtc/dev.c (Lyude Paul) [1814893] - [fs] ceph: fix compat_ioctl for ceph_dir_operations (Lyude Paul) [1814893] - [fs] compat_sys_ioctl(): make parallel to do_vfs_ioctl() (Lyude Paul) [1814893] - [fs] compat: move FS_IOC_RESVSP_32 handling to fs/ioctl.c (Lyude Paul) [1814893] - [fs] do_vfs_ioctl(): use saner types (Lyude Paul) [1814893] - [fs] compat: itanic doesn't have one (Lyude Paul) [1814893] - [fs] FIGETBSZ: fix compat (Lyude Paul) [1814893] - [fs] fix compat handling of FICLONERANGE, FIDEDUPERANGE and FS_IOC_FIEMAP (Lyude Paul) [1814893] - [gpu] DRM Backport 5.3 -> 5.4 (Lyude Paul) [1814893] - [include] Add wait_var_event_interruptible() (Lyude Paul) [1814893] - [kernel] kthread: Add __kthread_should_park() (Lyude Paul) [1814893] - [kernel] PM / sleep: Refactor filesystems sync to reduce duplication (Lyude Paul) [1814893] - [fpga] drivers: Introduce device lookup variants by of_node (Lyude Paul) [1814893] - [s390] drivers: Introduce device lookup variants by name (Lyude Paul) [1814893] - [base] drivers: Add generic helper to match by of_node (Lyude Paul) [1814893] - [drm] kbuild: change *FLAGS_.o to take the path relative to $(obj) (Lyude Paul) [1814893] - [video] fbdev: lock_fb_info cannot fail (Lyude Paul) [1814893] - [video] fbdev/atyfb: lock_fb_info can't fail (Lyude Paul) [1814893] - [video] fbdev: sysfs files can't disappear before the device is gone (Lyude Paul) [1814893] - [video] fbcon: call fbcon_fb_(un)registered directly (Lyude Paul) [1814893] - [video] fbcon: Remove fbcon_has_exited (Lyude Paul) [1814893] - [video] fbcon: s/struct display/struct fbcon_display/ (Lyude Paul) [1814893] - [video] fbdev: locking check for fb_set_suspend (Lyude Paul) [1814893] - [tty] vt/fbcon: deinitialize resources in visual_init() after failed memory allocation (Lyude Paul) [1814893] - [video] fbcon: Don't reset logo_shown when logo is currently shown (Lyude Paul) [1814893] - [video] fbdev: fix WARNING in __alloc_pages_nodemask bug (Lyude Paul) [1814893] - [video] fbdev: fix divide error in fb_var_to_videomode (Lyude Paul) [1814893] - [video] fbdev: list all pci memory bars as conflicting apertures (Lyude Paul) [1814893]- [block] Revert "block: end bio with BLK_STS_AGAIN in case of non-mq devs and REQ_NOWAIT" (Jeff Moyer) [1784478] - [fs] io_uring: reset -EBUSY error when io sq thread is waken up (Jeff Moyer) [1784478] - [fs] io_uring: don't add non-IO requests to iopoll pending list (Jeff Moyer) [1784478] - [fs] io_uring: don't use kiocb.private to store buf_index (Jeff Moyer) [1784478] - [fs] io_uring: cancel work if task_work_add() fails (Jeff Moyer) [1784478] - [fs] io_uring: remove dead check in io_splice() (Jeff Moyer) [1784478] - [fs] io_uring: fix FORCE_ASYNC req preparation (Jeff Moyer) [1784478] - [fs] io_uring: don't prepare DRAIN reqs twice (Jeff Moyer) [1784478] - [fs] io_uring: initialize ctx->sqo_wait earlier (Jeff Moyer) [1784478] - [fs] io_uring: polled fixed file must go through free iteration (Jeff Moyer) [1784478] - [fs] io_uring: fix zero len do_splice() (Jeff Moyer) [1784478] - [fs] io_uring: don't use 'fd' for openat/openat2/statx (Jeff Moyer) [1784478] - [fs] splice: move f_mode checks to do_{splice, tee}() (Jeff Moyer) [1784478] - [fs] io_uring: handle -EFAULT properly in io_uring_setup() (Jeff Moyer) [1784478] - [fs] io_uring: fix mismatched finish_wait() calls in io_uring_cancel_files() (Jeff Moyer) [1784478] - [fs] io_uring: punt splice async because of inode mutex (Jeff Moyer) [1784478] - [fs] io_uring: check non-sync defer_list carefully (Jeff Moyer) [1784478] - [fs] io_uring: fix extra put in sync_file_range() (Jeff Moyer) [1784478] - [fs] io_uring: use cond_resched() in io_ring_ctx_wait_and_kill() (Jeff Moyer) [1784478] - [fs] io_uring: use proper references for fallback_req locking (Jeff Moyer) [1784478] - [fs] io_uring: only force async punt if poll based retry can't handle it (Jeff Moyer) [1784478] - [fs] io_uring: enable poll retry for any file with ->read_iter / ->write_iter (Jeff Moyer) [1784478] - [fs] io_uring: statx must grab the file table for valid fd (Jeff Moyer) [1784478] - [fs] io_uring: only restore req->work for req that needs do completion (Jeff Moyer) [1784478] - [fs] io_uring: don't count rqs failed after current one (Jeff Moyer) [1784478] - [fs] io_uring: kill already cached timeout.seq_offset (Jeff Moyer) [1784478] - [fs] io_uring: fix cached_sq_head in io_timeout() (Jeff Moyer) [1784478] - [fs] io_uring: only post events in io_poll_remove_all() if we completed some (Jeff Moyer) [1784478] - [fs] io_uring: io_async_task_func() should check and honor cancelation (Jeff Moyer) [1784478] - [fs] io_uring: check for need to re-wait in polled async handling (Jeff Moyer) [1784478] - [fs] io_uring: correct O_NONBLOCK check for splice punt (Jeff Moyer) [1784478] - [fs] io_uring: restore req->work when canceling poll request (Jeff Moyer) [1784478] - [fs] io_uring: move all request init code in one place (Jeff Moyer) [1784478] - [fs] io_uring: keep all sqe->flags in req->flags (Jeff Moyer) [1784478] - [fs] io_uring: early submission req fail code (Jeff Moyer) [1784478] - [fs] io_uring: track mm through current->mm (Jeff Moyer) [1784478] - [fs] io_uring: remove obsolete @mm_fault (Jeff Moyer) [1784478] - [fs] io_uring: punt final io_ring_ctx wait-and-free to workqueue (Jeff Moyer) [1784478] - [fs] io_uring: fix fs cleanup on cqe overflow (Jeff Moyer) [1784478] - [fs] io_uring: don't read user-shared sqe flags twice (Jeff Moyer) [1784478] - [fs] io_uring: remove req init from io_get_req() (Jeff Moyer) [1784478] - [fs] io_uring: alloc req only after getting sqe (Jeff Moyer) [1784478] - [fs] io_uring: simplify io_get_sqring (Jeff Moyer) [1784478] - [fs] io_uring: do not always copy iovec in io_req_map_rw() (Jeff Moyer) [1784478] - [fs] io_uring: ensure openat sets O_LARGEFILE if needed (Jeff Moyer) [1784478] - [fs] io_uring: initialize fixed_file_data lock (Jeff Moyer) [1784478] - [fs] io_uring: remove redundant variable pointer nxt and io_wq_assign_next call (Jeff Moyer) [1784478] - [fs] io_uring: fix ctx refcounting in io_submit_sqes() (Jeff Moyer) [1784478] - [fs] io_uring: process requests completed with -EAGAIN on poll list (Jeff Moyer) [1784478] - [fs] io_uring: remove bogus RLIMIT_NOFILE check in file registration (Jeff Moyer) [1784478] - [fs] io_uring: use io-wq manager as backup task if task is exiting (Jeff Moyer) [1784478] - [fs] io_uring: grab task reference for poll requests (Jeff Moyer) [1784478] - [fs] io_uring: retry poll if we got woken with non-matching mask (Jeff Moyer) [1784478] - [fs] io_uring: add missing finish_wait() in io_sq_thread() (Jeff Moyer) [1784478] - [fs] io_uring: refactor file register/unregister/update handling (Jeff Moyer) [1784478] - [fs] io_uring: cleanup io_alloc_async_ctx() (Jeff Moyer) [1784478] - [fs] io_uring: fix missing 'return' in comment (Jeff Moyer) [1784478] - [fs] io-wq: handle hashed writes in chains (Jeff Moyer) [1784478] - [fs] io-uring: drop 'free_pfile' in struct io_file_put (Jeff Moyer) [1784478] - [fs] io-uring: drop completion when removing file (Jeff Moyer) [1784478] - [fs] io_uring: Fix ->data corruption on re-enqueue (Jeff Moyer) [1784478] - [fs] io-wq: close cancel gap for hashed linked work (Jeff Moyer) [1784478] - [uapi] io_uring: make spdxcheck.py happy (Jeff Moyer) [1784478] - [fs] io_uring: honor original task RLIMIT_FSIZE (Jeff Moyer) [1784478] - [fs] io_uring: make sure accept honor rlimit nofile (Jeff Moyer) [1784478] - [fs] io_uring: make sure openat/openat2 honor rlimit nofile (Jeff Moyer) [1784478] - [fs] io-wq: hash dependent work (Jeff Moyer) [1784478] - [fs] io-wq: split hashing and enqueueing (Jeff Moyer) [1784478] - [fs] io-wq: don't resched if there is no work (Jeff Moyer) [1784478] - [fs] io_uring: NULL-deref for IOSQE_{ASYNC,DRAIN} (Jeff Moyer) [1784478] - [fs] io-wq: remove duplicated cancel code (Jeff Moyer) [1784478] - [fs] io_uring: fix truncated async read/readv and write/writev retry (Jeff Moyer) [1784478] - [uapi] io_uring: dual license io_uring.h uapi header (Jeff Moyer) [1784478] - [fs] io_uring: io_uring_enter(2) don't poll while SETUP_IOPOLL|SETUP_SQPOLL enabled (Jeff Moyer) [1784478] - [fs] io_uring: Fix unused function warnings (Jeff Moyer) [1784478] - [fs] io_uring: add end-of-bits marker and build time verify it (Jeff Moyer) [1784478] - [fs] io_uring: provide means of removing buffers (Jeff Moyer) [1784478] - [fs] io_uring: add IOSQE_BUFFER_SELECT support for IORING_OP_RECVMSG (Jeff Moyer) [1784478] - [net] net: abstract out normal and compat msghdr import (Jeff Moyer) [1784478] - [fs] io_uring: add IOSQE_BUFFER_SELECT support for IORING_OP_READV (Jeff Moyer) [1784478] - [fs] io_uring: support buffer selection for OP_READ and OP_RECV (Jeff Moyer) [1784478] - [fs] io_uring: add IORING_OP_PROVIDE_BUFFERS (Jeff Moyer) [1784478] - [fs] io_uring: ensure RCU callback ordering with rcu_barrier() (Jeff Moyer) [1784478] - [fs] io_uring: fix lockup with timeouts (Jeff Moyer) [1784478] - [fs] io_uring: free fixed_file_data after RCU grace period (Jeff Moyer) [1784478] - [fs] io_uring: buffer registration infrastructure (Jeff Moyer) [1784478] - [fs] io_uring/io-wq: forward submission ref to async (Jeff Moyer) [1784478] - [fs] io-wq: optimise out *next_work() double lock (Jeff Moyer) [1784478] - [fs] io-wq: optimise locking in io_worker_handle_work() (Jeff Moyer) [1784478] - [fs] io-wq: shuffle io_worker_handle_work() code (Jeff Moyer) [1784478] - [fs] io_uring: get next work with submission ref drop (Jeff Moyer) [1784478] - [fs] io_uring: remove @nxt from handlers (Jeff Moyer) [1784478] - [fs] io_uring: make submission ref putting consistent (Jeff Moyer) [1784478] - [fs] io_uring: clean up io_close (Jeff Moyer) [1784478] - [fs] io_uring: Ensure mask is initialized in io_arm_poll_handler (Jeff Moyer) [1784478] - [fs] io_uring: remove io_prep_next_work() (Jeff Moyer) [1784478] - [fs] io_uring: remove extra nxt check after punt (Jeff Moyer) [1784478] - [fs] io_uring: use poll driven retry for files that support it (Jeff Moyer) [1784478] - [fs] io_uring: mark requests that we can do poll async in io_op_defs (Jeff Moyer) [1784478] - [fs] io_uring: add per-task callback handler (Jeff Moyer) [1784478] - [fs] io_uring: store io_kiocb in wait->private (Jeff Moyer) [1784478] - [fs] io-wq: use BIT for ulong hash (Jeff Moyer) [1784478] - [fs] io_uring: remove IO_WQ_WORK_CB (Jeff Moyer) [1784478] - [fs] io-wq: remove unused IO_WQ_WORK_HAS_MM (Jeff Moyer) [1784478] - [fs] io_uring: extract kmsg copy helper (Jeff Moyer) [1784478] - [fs] io_uring: clean io_poll_complete (Jeff Moyer) [1784478] - [fs] io_uring: add splice(2) support (Jeff Moyer) [1784478] - [fs] io_uring: add interface for getting files (Jeff Moyer) [1784478] - [fs] splice: make do_splice public (Jeff Moyer) [1784478] - [fs] io_uring: remove req->in_async (Jeff Moyer) [1784478] - [fs] io_uring: don't do full *prep_worker() from io-wq (Jeff Moyer) [1784478] - [fs] io_uring: don't call work.func from sync ctx (Jeff Moyer) [1784478] - [fs] io_uring: io_accept() should hold on to submit reference on retry (Jeff Moyer) [1784478] - [fs] io_uring: consider any io_read/write -EAGAIN as final (Jeff Moyer) [1784478] - [fs] io-wq: remove io_wq_flush and IO_WQ_WORK_INTERNAL (Jeff Moyer) [1784478] - [fs] io-wq: fix IO_WQ_WORK_NO_CANCEL cancellation (Jeff Moyer) [1784478] - [fs] io_uring: fix 32-bit compatability with sendmsg/recvmsg (Jeff Moyer) [1784478] - [fs] io_uring: define and set show_fdinfo only if procfs is enabled (Jeff Moyer) [1784478] - [fs] io_uring: drop file set ref put/get on switch (Jeff Moyer) [1784478] - [fs] io_uring: import_single_range() returns 0/-ERROR (Jeff Moyer) [1784478] - [fs] io_uring: pick up link work on submit reference drop (Jeff Moyer) [1784478] - [fs] io-wq: ensure work->task_pid is cleared on init (Jeff Moyer) [1784478] - [fs] io-wq: remove spin-for-work optimization (Jeff Moyer) [1784478] - [fs] io_uring: fix poll_list race for SETUP_IOPOLL|SETUP_SQPOLL (Jeff Moyer) [1784478] - [fs] io_uring: fix personality idr leak (Jeff Moyer) [1784478] - [fs] io_uring: handle multiple personalities in link chains (Jeff Moyer) [1784478] - [fs] io_uring: fix __io_iopoll_check deadlock in io_sq_thread (Jeff Moyer) [1784478] - [fs] io_uring: prevent sq_thread from spinning when it should stop (Jeff Moyer) [1784478] - [fs] io_uring: fix use-after-free by io_cleanup_req() (Jeff Moyer) [1784478] - [fs] io_uring: remove unnecessary NULL checks (Jeff Moyer) [1784478] - [fs] io_uring: add missing io_req_cancelled() (Jeff Moyer) [1784478] - [fs] io_uring: prune request from overflow list on flush (Jeff Moyer) [1784478] - [fs] io-wq: don't call kXalloc_node() with non-online node (Jeff Moyer) [1784478] - [fs] io_uring: retain sockaddr_storage across send/recvmsg async punt (Jeff Moyer) [1784478] - [fs] io_uring: cancel pending async work if task exits (Jeff Moyer) [1784478] - [fs] io-wq: add io_wq_cancel_pid() to cancel based on a specific pid (Jeff Moyer) [1784478] - [fs] io-wq: make io_wqe_cancel_work() take a match handler (Jeff Moyer) [1784478] - [fs] io_uring: fix openat/statx's filename leak (Jeff Moyer) [1784478] - [fs] io_uring: fix double prep iovec leak (Jeff Moyer) [1784478] - [fs] io_uring: fix async close() with f_op->flush() (Jeff Moyer) [1784478] - [fs] io_uring: allow AT_FDCWD for non-file openat/openat2/statx (Jeff Moyer) [1784478] - [fs] io_uring: grab ->fs as part of async preparation (Jeff Moyer) [1784478] - [fs] io-wq: add support for inheriting ->fs (Jeff Moyer) [1784478] - [fs] io_uring: retry raw bdev writes if we hit -EOPNOTSUPP (Jeff Moyer) [1784478] - [fs] io_uring: add cleanup for openat()/statx() (Jeff Moyer) [1784478] - [fs] io_uring: fix iovec leaks (Jeff Moyer) [1784478] - [fs] io_uring: remove unused struct io_async_open (Jeff Moyer) [1784478] - [fs] io_uring: flush overflowed CQ events in the io_uring_poll() (Jeff Moyer) [1784478] - [fs] io_uring: statx/openat/openat2 don't support fixed files (Jeff Moyer) [1784478] - [fs] io_uring: fix deferred req iovec leak (Jeff Moyer) [1784478] - [fs] io_uring: fix 1-bit bitfields to be unsigned (Jeff Moyer) [1784478] - [fs] io_uring: get rid of delayed mm check (Jeff Moyer) [1784478] - [fs] io_uring: cleanup fixed file data table references (Jeff Moyer) [1784478] - [fs] io_uring: spin for sq thread to idle on shutdown (Jeff Moyer) [1784478] - [fs] io_uring: put the flag changing code in the same spot (Jeff Moyer) [1784478] - [fs] io_uring: iterate req cache backwards (Jeff Moyer) [1784478] - [fs] io_uring: punt even fadvise() WILLNEED to async context (Jeff Moyer) [1784478] - [fs] io_uring: fix sporadic double CQE entry for close (Jeff Moyer) [1784478] - [fs] io_uring: remove extra ->file check (Jeff Moyer) [1784478] - [fs] io_uring: don't map read/write iovec potentially twice (Jeff Moyer) [1784478] - [fs] io_uring: use the proper helpers for io_send/recv (Jeff Moyer) [1784478] - [fs] io_uring: prevent potential eventfd recursion on poll (Jeff Moyer) [1784478] - [fs] eventfd: track eventfd_signal() recursion depth (Jeff Moyer) [1784478] - [fs] io_uring: add BUILD_BUG_ON() to assert the layout of struct io_uring_sqe (Jeff Moyer) [1784478] - [fs] io_uring: add ->show_fdinfo() for the io_uring file descriptor (Jeff Moyer) [1784478] - [fs] io_uring: add support for epoll_ctl(2) (Jeff Moyer) [1784478] - [fs] eventpoll: support non-blocking do_epoll_ctl() calls (Jeff Moyer) [1784478] - [fs] eventpoll: abstract out epoll_ctl() handler (Jeff Moyer) [1784478] - [fs] io_uring: fix linked command file table usage (Jeff Moyer) [1784478] - [fs] io_uring: support using a registered personality for commands (Jeff Moyer) [1784478] - [fs] io_uring: allow registering credentials (Jeff Moyer) [1784478] - [fs] io_uring: add io-wq workqueue sharing (Jeff Moyer) [1784478] - [fs] io-wq: allow grabbing existing io-wq (Jeff Moyer) [1784478] - [fs] io_uring/io-wq: don't use static creds/mm assignments (Jeff Moyer) [1784478] - [fs] io-wq: make the io_wq ref counted (Jeff Moyer) [1784478] - [fs] io_uring: fix refcounting with batched allocations at OOM (Jeff Moyer) [1784478] - [fs] io_uring: add comment for drain_next (Jeff Moyer) [1784478] - [fs] io_uring: don't attempt to copy iovec for READ/WRITE (Jeff Moyer) [1784478] - [fs] io_uring: don't cancel all work on process exit (Jeff Moyer) [1784478] - [fs] Revert "io_uring: only allow submit from owning task" (Jeff Moyer) [1784478] - [fs] io_uring: honor IOSQE_ASYNC for linked reqs (Jeff Moyer) [1784478] - [fs] io_uring: prep req when do IOSQE_ASYNC (Jeff Moyer) [1784478] - [fs] io_uring: use labeled array init in io_op_defs (Jeff Moyer) [1784478] - [fs] io_uring: optimise sqe-to-req flags translation (Jeff Moyer) [1784478] - [fs] io_uring: remove REQ_F_IO_DRAINED (Jeff Moyer) [1784478] - [fs] io_uring: file switch work needs to get flushed on exit (Jeff Moyer) [1784478] - [fs] io_uring: hide uring_fd in ctx (Jeff Moyer) [1784478] - [fs] io_uring: remove extra check in __io_commit_cqring (Jeff Moyer) [1784478] - [fs] io_uring: optimise use of ctx->drain_next (Jeff Moyer) [1784478] - [fs] RHEL-only: Add IORING_OP_OPENAT2 opcode (Jeff Moyer) [1784478] - [fs] io_uring: add support for probing opcodes (Jeff Moyer) [1784478] - [fs] io_uring: account fixed file references correctly in batch (Jeff Moyer) [1784478] - [fs] io_uring: add opcode to issue trace event (Jeff Moyer) [1784478] - [fs] io_uring: enable option to only trigger eventfd for async completions (Jeff Moyer) [1784478] - [fs] io_uring: change io_ring_ctx bool fields into bit fields (Jeff Moyer) [1784478] - [fs] io_uring: file set registration should use interruptible waits (Jeff Moyer) [1784478] - [fs] io_uring: Remove unnecessary null check (Jeff Moyer) [1784478] - [fs] io_uring: add support for send(2) and recv(2) (Jeff Moyer) [1784478] - [fs] io_uring: remove extra io_wq_current_is_worker() (Jeff Moyer) [1784478] - [fs] io_uring: optimise commit_sqring() for common case (Jeff Moyer) [1784478] - [fs] io_uring: optimise head checks in io_get_sqring() (Jeff Moyer) [1784478] - [fs] io_uring: clamp to_submit in io_submit_sqes() (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_SETUP_CLAMP (Jeff Moyer) [1784478] - [fs] io_uring: extend batch freeing to cover more cases (Jeff Moyer) [1784478] - [fs] io_uring: wrap multi-req freeing in struct req_batch (Jeff Moyer) [1784478] - [fs] io_uring: batch getting pcpu references (Jeff Moyer) [1784478] - [include] pcpu_ref: add percpu_ref_tryget_many() (Jeff Moyer) [1784478] - [fs] io_uring: add IORING_OP_MADVISE (Jeff Moyer) [1784478] - [mm] mm: make do_madvise() available internally (Jeff Moyer) [1784478] - [fs] io_uring: add IORING_OP_FADVISE (Jeff Moyer) [1784478] - [fs] io_uring: allow use of offset == -1 to mean file position (Jeff Moyer) [1784478] - [fs] io_uring: add non-vectored read/write commands (Jeff Moyer) [1784478] - [fs] io_uring: improve poll completion performance (Jeff Moyer) [1784478] - [fs] io_uring: split overflow state into SQ and CQ side (Jeff Moyer) [1784478] - [fs] io_uring: add lookup table for various opcode needs (Jeff Moyer) [1784478] - [fs] io_uring: remove two unnecessary function declarations (Jeff Moyer) [1784478] - [fs] io_uring: move *queue_link_head() from common path (Jeff Moyer) [1784478] - [fs] io_uring: rename prev to head (Jeff Moyer) [1784478] - [fs] io_uring: add IOSQE_ASYNC (Jeff Moyer) [1784478] - [fs] io-wq: support concurrent non-blocking work (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_STATX (Jeff Moyer) [1784478] - [fs] fs: make two stat prep helpers available (Jeff Moyer) [1784478] - [fs] io_uring: avoid ring quiesce for fixed file set unregister and update (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_CLOSE (Jeff Moyer) [1784478] - [fs] io-wq: add support for uncancellable work (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_OPENAT (Jeff Moyer) [1784478] - [fs] fs: make build_open_flags() available internally (Jeff Moyer) [1784478] - [fs] io_uring: add support for fallocate() (Jeff Moyer) [1784478] - [fs] io_uring: fix compat for IORING_REGISTER_FILES_UPDATE (Jeff Moyer) [1784478] - [fs] io_uring: only allow submit from owning task (Jeff Moyer) [1784478] - [fs] io_uring: ensure workqueue offload grabs ring mutex for poll list (Jeff Moyer) [1784478] - [fs] io_uring: clear req->result always before issuing a read/write request (Jeff Moyer) [1784478] - [fs] io_uring: be consistent in assigning next work from handler (Jeff Moyer) [1784478] - [fs] io-wq: cancel work if we fail getting a mm reference (Jeff Moyer) [1784478] - [fs] io_uring: don't setup async context for read/write fixed (Jeff Moyer) [1784478] - [fs] io_uring: remove punt of short reads to async context (Jeff Moyer) [1784478] - [fs] io-wq: add cond_resched() to worker thread (Jeff Moyer) [1784478] - [fs] io-wq: remove unused busy list from io_sqe (Jeff Moyer) [1784478] - [fs] io_uring: pass in 'sqe' to the prep handlers (Jeff Moyer) [1784478] - [fs] io_uring: standardize the prep methods (Jeff Moyer) [1784478] - [fs] io_uring: read 'count' for IORING_OP_TIMEOUT in prep handler (Jeff Moyer) [1784478] - [fs] io_uring: move all prep state for IORING_OP_{SEND, RECV}_MGS to prep handler (Jeff Moyer) [1784478] - [fs] io_uring: move all prep state for IORING_OP_CONNECT to prep handler (Jeff Moyer) [1784478] - [fs] io_uring: add and use struct io_rw for read/writes (Jeff Moyer) [1784478] - [fs] io_uring: use u64_to_user_ptr() consistently (Jeff Moyer) [1784478] - [fs] io_uring: io_wq_submit_work() should not touch req->rw (Jeff Moyer) [1784478] - [fs] io_uring: don't wait when under-submitting (Jeff Moyer) [1784478] - [fs] io_uring: warn about unhandled opcode (Jeff Moyer) [1784478] - [fs] io_uring: read opcode and user_data from SQE exactly once (Jeff Moyer) [1784478] - [fs] io_uring: make IORING_OP_TIMEOUT_REMOVE deferrable (Jeff Moyer) [1784478] - [fs] io_uring: make IORING_OP_CANCEL_ASYNC deferrable (Jeff Moyer) [1784478] - [fs] io_uring: make IORING_POLL_ADD and IORING_POLL_REMOVE deferrable (Jeff Moyer) [1784478] - [fs] io_uring: make HARDLINK imply LINK (Jeff Moyer) [1784478] - [fs] io_uring: any deferred command must have stable sqe data (Jeff Moyer) [1784478] - [fs] io_uring: remove 'sqe' parameter to the OP helpers that take it (Jeff Moyer) [1784478] - [fs] io_uring: fix pre-prepped issue with force_nonblock == true (Jeff Moyer) [1784478] - [fs] io-wq: re-add io_wq_current_is_worker() (Jeff Moyer) [1784478] - [fs] io_uring: fix sporadic -EFAULT from IORING_OP_RECVMSG (Jeff Moyer) [1784478] - [fs] io_uring: fix stale comment and a few typos (Jeff Moyer) [1784478] - [fs] io_uring: ensure we return -EINVAL on unknown opcode (Jeff Moyer) [1784478] - [fs] io_uring: add sockets to list of files that support non-blocking issue (Jeff Moyer) [1784478] - [net] net: make socket read/write_iter() honor IOCB_NOWAIT (Jeff Moyer) [1784478] - [fs] io_uring: only hash regular files for async work execution (Jeff Moyer) [1784478] - [fs] io_uring: run next sqe inline if possible (Jeff Moyer) [1784478] - [fs] io_uring: don't dynamically allocate poll data (Jeff Moyer) [1784478] - [fs] io_uring: deferred send/recvmsg should assign iov (Jeff Moyer) [1784478] - [fs] io_uring: sqthread should grab ctx->uring_lock for submissions (Jeff Moyer) [1784478] - [fs] io-wq: briefly spin for new work after finishing work (Jeff Moyer) [1784478] - [fs] io-wq: remove worker->wait waitqueue (Jeff Moyer) [1784478] - [fs] io_uring: allow unbreakable links (Jeff Moyer) [1784478] - [fs] io_uring: fix a typo in a comment (Jeff Moyer) [1784478] - [fs] io_uring: hook all linked requests via link_list (Jeff Moyer) [1784478] - [fs] io_uring: fix error handling in io_queue_link_head (Jeff Moyer) [1784478] - [fs] io_uring: use hash table for poll command lookups (Jeff Moyer) [1784478] - [fs] io-wq: clear node->next on list deletion (Jeff Moyer) [1784478] - [fs] io_uring: ensure deferred timeouts copy necessary data (Jeff Moyer) [1784478] - [fs] io_uring: allow IO_SQE_* flags on IORING_OP_TIMEOUT (Jeff Moyer) [1784478] - [fs] io_uring: handle connect -EINPROGRESS like -EAGAIN (Jeff Moyer) [1784478] - [fs] io_uring: remove io_wq_current_is_worker (Jeff Moyer) [1784478] - [fs] io_uring: remove parameter ctx of io_submit_state_start (Jeff Moyer) [1784478] - [fs] io_uring: mark us with IORING_FEAT_SUBMIT_STABLE (Jeff Moyer) [1784478] - [fs] io_uring: ensure async punted connect requests copy data (Jeff Moyer) [1784478] - [fs] io_uring: ensure async punted sendmsg/recvmsg requests copy data (Jeff Moyer) [1784478] - [fs] io_uring: ensure async punted read/write requests copy iovec (Jeff Moyer) [1784478] - [fs] io_uring: add general async offload context (Jeff Moyer) [1784478] - [fs] io_uring: transform send/recvmsg() -ERESTARTSYS to -EINTR (Jeff Moyer) [1784478] - [fs] io_uring: use current task creds instead of allocating a new one (Jeff Moyer) [1784478] - [fs] io_uring: fix missing kmap() declaration on powerpc (Jeff Moyer) [1784478] - [fs] io_uring: add mapping support for NOMMU archs (Jeff Moyer) [1784478] - [fs] io_uring: make poll->wait dynamically allocated (Jeff Moyer) [1784478] - [fs] io-wq: shrink io_wq_work a bit (Jeff Moyer) [1784478] - [fs] io-wq: fix handling of NUMA node IDs (Jeff Moyer) [1784478] - [fs] io_uring: use kzalloc instead of kcalloc for single-element allocations (Jeff Moyer) [1784478] - [fs] io_uring: cleanup io_import_fixed() (Jeff Moyer) [1784478] - [fs] io_uring: inline struct sqe_submit (Jeff Moyer) [1784478] - [fs] io_uring: store timeout's sqe->off in proper place (Jeff Moyer) [1784478] - [net] net: disallow ancillary data for __sys_{send, recv}msg_file() (Jeff Moyer) [1784478] - [net] net: separate out the msghdr copy from ___sys_{send, recv}msg() (Jeff Moyer) [1784478] - [fs] io_uring: remove superfluous check for sqe->off in io_accept() (Jeff Moyer) [1784478] - [fs] io_uring: async workers should inherit the user creds (Jeff Moyer) [1784478] - [fs] io-wq: have io_wq_create() take a 'data' argument (Jeff Moyer) [1784478] - [fs] io_uring: fix dead-hung for non-iter fixed rw (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_CONNECT (Jeff Moyer) [1784478] - [net] net: add __sys_connect_file() helper (Jeff Moyer) [1784478] - [fs] io_uring: only return -EBUSY for submit on non-flushed backlog (Jeff Moyer) [1784478] - [fs] io_uring: only !null ptr to io_issue_sqe() (Jeff Moyer) [1784478] - [fs] io_uring: simplify io_req_link_next() (Jeff Moyer) [1784478] - [fs] io_uring: pass only !null to io_req_find_next() (Jeff Moyer) [1784478] - [fs] io_uring: remove io_free_req_find_next() (Jeff Moyer) [1784478] - [fs] io_uring: add likely/unlikely in io_get_sqring() (Jeff Moyer) [1784478] - [fs] io_uring: rename __io_submit_sqe() (Jeff Moyer) [1784478] - [fs] io_uring: improve trace_io_uring_defer() trace point (Jeff Moyer) [1784478] - [fs] io_uring: drain next sqe instead of shadowing (Jeff Moyer) [1784478] - [fs] io_uring: close lookup gap for dependent next work (Jeff Moyer) [1784478] - [fs] io_uring: allow finding next link independent of req reference count (Jeff Moyer) [1784478] - [fs] io_uring: io_allocate_scq_urings() should return a sane state (Jeff Moyer) [1784478] - [fs] io_uring: Always REQ_F_FREE_SQE for allocated sqe (Jeff Moyer) [1784478] - [fs] io_uring: io_fail_links() should only consider first linked timeout (Jeff Moyer) [1784478] - [fs] io_uring: Fix leaking linked timeouts (Jeff Moyer) [1784478] - [fs] io_uring: remove redundant check (Jeff Moyer) [1784478] - [fs] io_uring: break links for failed defer (Jeff Moyer) [1784478] - [fs] io-wq: remove extra space characters (Jeff Moyer) [1784478] - [fs] io-wq: wait for io_wq_create() to setup necessary workers (Jeff Moyer) [1784478] - [fs] io_uring: request cancellations should break links (Jeff Moyer) [1784478] - [fs] io_uring: correct poll cancel and linked timeout expiration completion (Jeff Moyer) [1784478] - [fs] io_uring: remove dead REQ_F_SEQ_PREV flag (Jeff Moyer) [1784478] - [fs] io_uring: fix sequencing issues with linked timeouts (Jeff Moyer) [1784478] - [fs] io_uring: make req->timeout be dynamically allocated (Jeff Moyer) [1784478] - [fs] io_uring: make io_double_put_req() use normal completion path (Jeff Moyer) [1784478] - [fs] io_uring: cleanup return values from the queueing functions (Jeff Moyer) [1784478] - [fs] io_uring: io_async_cancel() should pass in 'nxt' request pointer (Jeff Moyer) [1784478] - [fs] io_uring: make POLL_ADD/POLL_REMOVE scale better (Jeff Moyer) [1784478] - [fs] io-wq: remove now redundant struct io_wq_nulls_list (Jeff Moyer) [1784478] - [fs] io_uring: Fix getting file for non-fd opcodes (Jeff Moyer) [1784478] - [fs] io_uring: introduce req_need_defer() (Jeff Moyer) [1784478] - [fs] io_uring: clean up io_uring_cancel_files() (Jeff Moyer) [1784478] - [fs] io-wq: ensure free/busy list browsing see all items (Jeff Moyer) [1784478] - [fs] io_uring: ensure registered buffer import returns the IO length (Jeff Moyer) [1784478] - [fs] io_uring: Fix getting file for timeout (Jeff Moyer) [1784478] - [fs] io-wq: ensure we have a stable view of ->cur_work for cancellations (Jeff Moyer) [1784478] - [fs] io_wq: add get/put_work handlers to io_wq_create() (Jeff Moyer) [1784478] - [fs] io_uring: check for validity of ->rings in teardown (Jeff Moyer) [1784478] - [fs] io_uring: fix potential deadlock in io_poll_wake() (Jeff Moyer) [1784478] - [fs] io_uring: use correct "is IO worker" helper (Jeff Moyer) [1784478] - [fs] io_uring: make timeout sequence == 0 mean no sequence (Jeff Moyer) [1784478] - [fs] io_uring: fix -ENOENT issue with linked timer with short timeout (Jeff Moyer) [1784478] - [fs] io_uring: don't do flush cancel under inflight_lock (Jeff Moyer) [1784478] - [fs] io_uring: flag SQPOLL busy condition to userspace (Jeff Moyer) [1784478] - [fs] io_uring: make ASYNC_CANCEL work with poll and timeout (Jeff Moyer) [1784478] - [fs] io_uring: provide fallback request for OOM situations (Jeff Moyer) [1784478] - [fs] io_uring: convert accept4() -ERESTARTSYS into -EINTR (Jeff Moyer) [1784478] - [fs] io_uring: fix error clear of ->file_table in io_sqe_files_register() (Jeff Moyer) [1784478] - [fs] io_uring: separate the io_free_req and io_free_req_find_next interface (Jeff Moyer) [1784478] - [fs] io_uring: keep io_put_req only responsible for release and put req (Jeff Moyer) [1784478] - [fs] io_uring: remove passed in 'ctx' function parameter ctx if possible (Jeff Moyer) [1784478] - [fs] io_uring: reduce/pack size of io_ring_ctx (Jeff Moyer) [1784478] - [fs] io_uring: properly mark async work as bounded vs unbounded (Jeff Moyer) [1784478] - [fs] io-wq: add support for bounded vs unbunded work (Jeff Moyer) [1784478] - [fs] io-wq: io_wqe_run_queue() doesn't need to use list_empty_careful() (Jeff Moyer) [1784478] - [fs] io_uring: add support for backlogged CQ ring (Jeff Moyer) [1784478] - [fs] io_uring: pass in io_kiocb to fill/add CQ handlers (Jeff Moyer) [1784478] - [fs] io_uring: make io_cqring_events() take 'ctx' as argument (Jeff Moyer) [1784478] - [fs] io_uring: add support for linked SQE timeouts (Jeff Moyer) [1784478] - [fs] io_uring: abstract out io_async_cancel_one() helper (Jeff Moyer) [1784478] - [fs] io_uring: use inlined struct sqe_submit (Jeff Moyer) [1784478] - [fs] io_uring: Use submit info inlined into req (Jeff Moyer) [1784478] - [fs] io_uring: allocate io_kiocb upfront (Jeff Moyer) [1784478] - [fs] io_uring: io_queue_link*() right after submit (Jeff Moyer) [1784478] - [fs] io_uring: Merge io_submit_sqes and io_ring_submit (Jeff Moyer) [1784478] - [fs] io_uring: kill dead REQ_F_LINK_DONE flag (Jeff Moyer) [1784478] - [fs] io_uring: fixup a few spots where link failure isn't flagged (Jeff Moyer) [1784478] - [fs] io_uring: enable optimized link handling for IORING_OP_POLL_ADD (Jeff Moyer) [1784478] - [fs] io-wq: use proper nesting IRQ disabling spinlocks for cancel (Jeff Moyer) [1784478] - [fs] io_uring: add completion trace event (Jeff Moyer) [1784478] - [fs] io-wq: use kfree_rcu() to simplify the code (Jeff Moyer) [1784478] - [fs] io_uring: set -EINTR directly when a signal wakes up in io_cqring_wait (Jeff Moyer) [1784478] - [fs] io_uring: support for generic async request cancel (Jeff Moyer) [1784478] - [fs] io_uring: ensure we clear io_kiocb->result before each issue (Jeff Moyer) [1784478] - [fs] io_uring: io_wq_create() returns an error pointer, not NULL (Jeff Moyer) [1784478] - [fs] io_uring: fix race with canceling timeouts (Jeff Moyer) [1784478] - [fs] io_uring: support for larger fixed file sets (Jeff Moyer) [1784478] - [fs] io_uring: protect fixed file indexing with array_index_nospec() (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_ACCEPT (Jeff Moyer) [1784478] - [net] net: add __sys_accept4_file() helper (Jeff Moyer) [1784478] - [fs] io_uring: io_uring: add support for async work inheriting files (Jeff Moyer) [1784478] - [fs] io_uring: replace workqueue usage with io-wq (Jeff Moyer) [1784478] - [fs] io-wq: small threadpool implementation for io_uring (Jeff Moyer) [1784478] - [fs] io_uring: Fix mm_fault with READ/WRITE_FIXED (Jeff Moyer) [1784478] - [fs] io_uring: remove index from sqe_submit (Jeff Moyer) [1784478] - [fs] io_uring: add set of tracing events (Jeff Moyer) [1784478] - [fs] io_uring: add support for canceling timeout requests (Jeff Moyer) [1784478] - [fs] io_uring: add support for absolute timeouts (Jeff Moyer) [1784478] - [fs] io_uring: replace s->needs_lock with s->in_async (Jeff Moyer) [1784478] - [fs] io_uring: allow application controlled CQ ring size (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_REGISTER_FILES_UPDATE (Jeff Moyer) [1784478] - [fs] io_uring: allow sparse fixed file sets (Jeff Moyer) [1784478] - [fs] io_uring: run dependent links inline if possible (Jeff Moyer) [1784478] - [fs] io_uring: don't touch ctx in setup after ring fd install (Jeff Moyer) [1784478] - [fs] io_uring: Fix leaked shadow_req (Jeff Moyer) [1784478] - [fs] io_uring: fix bad inflight accounting for SETUP_IOPOLL|SETUP_SQTHREAD (Jeff Moyer) [1784478] - [fs] io_uring: used cached copies of sq->dropped and cq->overflow (Jeff Moyer) [1784478] - [fs] io_uring: Fix race for sqes with userspace (Jeff Moyer) [1784478] - [fs] io_uring: Fix broken links with offloading (Jeff Moyer) [1784478] - [fs] io_uring: Fix corrupted user_data (Jeff Moyer) [1784478] - [fs] io_uring: correct timeout req sequence when inserting a new entry (Jeff Moyer) [1784478] - [fs] io_uring : correct timeout req sequence when waiting timeout (Jeff Moyer) [1784478] - [fs] io_uring: revert "io_uring: optimize submit_and_wait API" (Jeff Moyer) [1784478] - [fs] io_uring: fix logic error in io_timeout (Jeff Moyer) [1784478] - [fs] io_uring: fix up O_NONBLOCK handling for sockets (Jeff Moyer) [1784478] - [fs] io_uring: consider the overflow of sequence for timeout req (Jeff Moyer) [1784478] - [fs] io_uring: fix sequence logic for timeout requests (Jeff Moyer) [1784478] - [fs] io_uring: only flush workqueues on fileset removal (Jeff Moyer) [1784478] - [fs] io_uring: remove wait loop spurious wakeups (Jeff Moyer) [1784478] - [fs] io_uring: fix reversed nonblock flag for link submission (Jeff Moyer) [1784478] - [fs] io_uring: use __kernel_timespec in timeout ABI (Jeff Moyer) [1784478] - [fs] io_uring: make CQ ring wakeups be more efficient (Jeff Moyer) [1784478] - [fs] io_uring: compare cached_cq_tail with cq.head in_io_uring_poll (Jeff Moyer) [1784478] - [fs] io_uring: correctly handle non ->{read, write}_iter() file_operations (Jeff Moyer) [1784478] - [fs] io_uring: IORING_OP_TIMEOUT support (Jeff Moyer) [1784478] - [fs] io_uring: use cond_resched() in sqthread (Jeff Moyer) [1784478] - [fs] io_uring: fix potential crash issue due to io_get_req failure (Jeff Moyer) [1784478] - [fs] io_uring: ensure poll commands clear ->sqe (Jeff Moyer) [1784478] - [fs] io_uring: fix use-after-free of shadow_req (Jeff Moyer) [1784478] - [fs] io_uring: use kmemdup instead of kmalloc and memcpy (Jeff Moyer) [1784478] - [fs] io_uring: increase IORING_MAX_ENTRIES to 32K (Jeff Moyer) [1784478] - [fs] io_uring: make sqpoll wakeup possible with getevents (Jeff Moyer) [1784478] - [fs] io_uring: extend async work merging (Jeff Moyer) [1784478] - [fs] io_uring: limit parallelism of buffered writes (Jeff Moyer) [1784478] - [fs] io_uring: add io_queue_async_work() helper (Jeff Moyer) [1784478] - [fs] io_uring: optimize submit_and_wait API (Jeff Moyer) [1784478] - [fs] io_uring: add support for link with drain (Jeff Moyer) [1784478] - [fs] io_uring: fix wrong sequence setting logic (Jeff Moyer) [1784478] - [fs] io_uring: expose single mmap capability (Jeff Moyer) [1784478] - [fs] io_uring: allocate the two rings together (Jeff Moyer) [1784478] - [lib] percpu_ref: release percpu memory early without PERCPU_REF_ALLOW_REINIT (Jeff Moyer) [1784478] - [fs] io_uring: initialize percpu refcounters using PERCU_REF_ALLOW_REINIT (Jeff Moyer) [1784478] - [include] percpu_ref: introduce PERCPU_REF_ALLOW_REINIT flag (Jeff Moyer) [1784478] - [fs] binder: fix use-after-free due to ksys_close() during fdget() (Jeff Moyer) [1784478] - [init] RHEL-only: Enable io_uring for x86 builds (Jeff Moyer) [1784478] - [arm64] compat: ARM64: always include asm-generic/compat.h (Jeff Moyer) [1784478] - [include] asm-generic: Move common compat types to asm-generic/compat.h (Jeff Moyer) [1784478]- [fs] coredump: fix crash when umh is disabled (Yauheni Kaliuta) [1845114] - [kernel] umh: fix memory leak on execve failure (Yauheni Kaliuta) [1845114] - [net] bpf: Replace zero-length array with flexible-array member (Yauheni Kaliuta) [1845114] - [net] bpf: Fix returned error sign when link doesn't support updates (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Don't attach programs to UDP sockets (Yauheni Kaliuta) [1845114] - [net] bpf: cgroup: Allow multi-attach program to replace itself (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: use struct timespec instead of __kernel_timespec (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix bpf_link leak in ns_current_pid_tgid selftest (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix test_align verifier log patterns (Yauheni Kaliuta) [1845114] - [net] bpf, cgroup: Return ENOLINK for auto-detached links on update (Yauheni Kaliuta) [1845114] - [net] bpf: Refactor bpf_link update handling (Yauheni Kaliuta) [1845114] - [tools] bpf, selftests: Add a verifier test for assigning 32bit reg states to 64bit ones (Yauheni Kaliuta) [1845114] - [tools] bpf, selftests: Verifier bounds tests need to be updated (Yauheni Kaliuta) [1845114] - [net] bpf: Fix a verifier issue when assigning 32bit reg states to 64bit ones (Yauheni Kaliuta) [1845114] - [net] bpf: Fix use-after-free in fmod_ret check (Yauheni Kaliuta) [1845114] - [net] flow_dissector: Drop BPF flow dissector prog ref on netns cleanup (Yauheni Kaliuta) [1845114] - [tools] bpf: Prevent mmap()'ing read-only maps as writable (Yauheni Kaliuta) [1845114] - [net] bpf: Enforce returning 0 for fentry/fexit progs (Yauheni Kaliuta) [1845114] - [tools] libbpf: Fix register naming in PT_REGS s390 macros (Yauheni Kaliuta) [1845114] - [samples] samples: bpf: Fix build error (Yauheni Kaliuta) [1845114] - [net] bpf: Fix error return code in map_lookup_and_delete_elem() (Yauheni Kaliuta) [1845114] - [net] bpf: Fix sk_psock refcnt leak when receiving message (Yauheni Kaliuta) [1845114] - [tools] tools/runqslower: Ensure own vmlinux.h is picked up first (Yauheni Kaliuta) [1845114] - [net] bpf: Make bpf_link_fops static (Yauheni Kaliuta) [1845114] - [tools] bpftool: Respect the -d option in struct_ops cmd (Yauheni Kaliuta) [1845114] - [net] bpf: Fix leak in LINK_UPDATE and enforce empty old_prog_fd (Yauheni Kaliuta) [1845114] - [tools] bpf: Fix reStructuredText markup (Yauheni Kaliuta) [1845114] - [tools] libbpf: Only check mode flags in get_xdp_id (Yauheni Kaliuta) [1845114] - [tools] bpf, selftests: Add test for BPF_STX BPF_B storing R10 (Yauheni Kaliuta) [1845114] - [x86] bpf, x86: Fix encoding for lower 8-bit registers in BPF_STX BPF_B (Yauheni Kaliuta) [1845114] - [net] bpf: Forbid XADD on spilled pointers for unprivileged users (Yauheni Kaliuta) [1845114] - [tools] libbpf: Always specify expected_attach_type on program load if supported (Yauheni Kaliuta) [1845114] - [net] bpf: remove unneeded conversion to bool in __mark_reg_unknown (Yauheni Kaliuta) [1845114] - [tools] tools, bpftool: Fix struct_ops command invalid pointer free (Yauheni Kaliuta) [1845114] - [net] bpf: Fix use of sk->sk_reuseport from sk_assign (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add test for bpf_get_link_xdp_id (Yauheni Kaliuta) [1845114] - [tools] libbpf: Fix bpf_get_link_xdp_id flags handling (Yauheni Kaliuta) [1845114] - [net] bpf: Fix a typo "inacitve" -> "inactive" (Yauheni Kaliuta) [1845114] - [tools] libbpf: Initialize *nl_pid so gcc 10 is happy (Yauheni Kaliuta) [1845114] - [tools] bpf, lsm: Fix the file_mprotect LSM test (Yauheni Kaliuta) [1845114] - [tools] bpf: Fix spelling mistake "arithmatic" -> "arithmetic" in test_verifier (Yauheni Kaliuta) [1845114] - [lib] kbuild, btf: Fix dependencies for DEBUG_INFO_BTF (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Test FD-based cgroup attachment (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add support for bpf_link-based cgroup attachment (Yauheni Kaliuta) [1845114] - [net] bpf: Implement bpf_prog replacement for an active bpf_cgroup_link (Yauheni Kaliuta) [1845114] - [net] bpf: Implement bpf_link-based cgroup BPF program attachment (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, add alu32 bounds tracking tests (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, #65 error message updates for trunc of boundary-cross (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, bpf_get_stack return value add <0 (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_progs, add test to catch retval refine error handling (Yauheni Kaliuta) [1845114] - [net] bpf: Verifier, refine 32bit bound in do_refine_retval_range (Yauheni Kaliuta) [1845114] - [include] bpf: Verifier, do explicit ALU32 bounds tracking (Yauheni Kaliuta) [1845114] - [net] bpf: Verifier, do_refine_retval_range may clamp umin to 0 incorrectly (Yauheni Kaliuta) [1845114] - [init] bpf, lsm: Make BPF_LSM depend on BPF_EVENTS (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Extend sk_assign tests for UDP (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Add test for sk_assign (Yauheni Kaliuta) [1845114] - [net] bpf: Don't refcount LISTEN sockets in sk_assign() (Yauheni Kaliuta) [1845114] - [net] net: Track socket refcounts in skb_steal_sock() (Yauheni Kaliuta) [1845114] - [net] bpf: Add socket assign support (Yauheni Kaliuta) [1845114] - [net] bpf: btf: Fix arg verification in btf_ctx_access() (Yauheni Kaliuta) [1845114] - [net] bpf: Simplify reg_set_min_max_inv handling (Yauheni Kaliuta) [1845114] - [documentation] bpf: lsm: Add Documentation (Yauheni Kaliuta) [1845114] - [tools] bpf: lsm: Add selftests for BPF_PROG_TYPE_LSM (Yauheni Kaliuta) [1845114] - [tools] tools/libbpf: Add support for BPF_PROG_TYPE_LSM (Yauheni Kaliuta) [1845114] - [net] bpf: lsm: Implement attach, detach and execution (Yauheni Kaliuta) [1845114] - [net] bpf: lsm: Provide attachment points for BPF LSM programs (Yauheni Kaliuta) [1845114] - [net] bpf: Introduce BPF_PROG_TYPE_LSM (Yauheni Kaliuta) [1845114] - [tools] selftests: Add test for overriding global data value before load (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add setter for initial value for internal maps (Yauheni Kaliuta) [1845114] - [net] bpf, net: Fix build issue when net ns not configured (Yauheni Kaliuta) [1845114] - [net] bpf: Fix build warning regarding missing prototypes (Yauheni Kaliuta) [1845114] - [tools] libbpf, xsk: Init all ring members in xsk_umem__create and xsk_socket__create (Yauheni Kaliuta) [1845114] - [tools] bpf: Add selftest cases for ctx_or_null argument type (Yauheni Kaliuta) [1845114] - [net] bpf: Enable retrival of pid/tgid/comm from bpf cgroup hooks (Yauheni Kaliuta) [1845114] - [net] bpf: Enable bpf cgroup hooks to retrieve cgroup v2 and ancestor id (Yauheni Kaliuta) [1845114] - [net] bpf: Allow to retrieve cgroup v1 classid from v2 hooks (Yauheni Kaliuta) [1845114] - [net] bpf: Add netns cookie and enable it for bpf cgroup hooks (Yauheni Kaliuta) [1845114] - [net] bpf: Enable perf event rb output for bpf cgroup progs (Yauheni Kaliuta) [1845114] - [net] bpf: Enable retrieval of socket cookie for bind/post-bind hook (Yauheni Kaliuta) [1845114] - [net] bpf: Remove unused vairable 'bpf_xdp_link_lops' (Yauheni Kaliuta) [1845114] - [net] bpf: Factor out attach_type to prog_type mapping for attach/detach (Yauheni Kaliuta) [1845114] - [net] bpf: Factor out cgroup storages operations (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, #70 error message updates for 32-bit right shift (Yauheni Kaliuta) [1845114] - [net] bpf: Verifer, adjust_scalar_min_max_vals to always call update_reg_bounds() (Yauheni Kaliuta) [1845114] - [net] bpf: Verifer, refactor adjust_scalar_min_max_vals (Yauheni Kaliuta) [1845114] - [tools] libbpf: Don't allocate 16M for log buffer by default (Yauheni Kaliuta) [1845114] - [tools] libbpf: Remove unused parameter `def` to get_map_field_int (Yauheni Kaliuta) [1845114] - [documentation] bpf: Document bpf_inspect drgn tool (Yauheni Kaliuta) [1845114] - [samples] samples, bpf: Refactor perf_event user program with libbpf bpf_link (Yauheni Kaliuta) [1845114] - [samples] samples, bpf: Move read_trace_pipe to trace_helpers (Yauheni Kaliuta) [1845114] - [tools] bpf: Add tests for bpf_sk_storage to bpf_tcp_ca (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_sk_storage support to bpf_tcp_ca (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix mix of tabs and spaces (Yauheni Kaliuta) [1845114] - [net] bpf, tcp: Make tcp_bpf_recvmsg static (Yauheni Kaliuta) [1845114] - [net] bpf, tcp: Fix unused function warnings (Yauheni Kaliuta) [1845114] - [tools] bpftool: Add struct_ops support (Yauheni Kaliuta) [1845114] - [tools] bpftool: Translate prog_id to its bpf prog_name (Yauheni Kaliuta) [1845114] - [tools] bpftool: Print as a string for char array (Yauheni Kaliuta) [1845114] - [tools] bpftool: Print the enum's name instead of value (Yauheni Kaliuta) [1845114] - [tools] bpf, libbpf: Fix ___bpf_kretprobe_args1(x) macro definition (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Reset process and thread affinity after each test/sub-test (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix test_progs's parsing of test numbers (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix race in tcp_rtt test (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix nanosleep for real this time (Yauheni Kaliuta) [1845114] - [tools] selftest/bpf: Fix compilation warning in sockmap_parse_prog.c (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add vmlinux.h selftest exercising tracing of syscalls (Yauheni Kaliuta) [1845114] - [tools] libbpf: Provide CO-RE variants of PT_REGS macros (Yauheni Kaliuta) [1845114] - [tools] libbpf: Ignore incompatible types with matching name during CO-RE relocation (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Ensure consistent test failure output (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix spurious failures in accept due to EAGAIN (Yauheni Kaliuta) [1845114] - [tools] tools/bpf: Move linux/types.h for selftests and bpftool (Yauheni Kaliuta) [1845114] - [net] bpf: Add missing annotations for __bpf_prog_enter() and __bpf_prog_exit() (Yauheni Kaliuta) [1845114] - [scripts] bpf_helpers_doc.py: Fix warning when compiling bpftool (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix usleep() implementation (Yauheni Kaliuta) [1845114] - [net] bpf: Remove bpf_image tree (Yauheni Kaliuta) [1845114] - [net] bpf: Add dispatchers to kallsyms (Yauheni Kaliuta) [1845114] - [net] bpf: Add trampolines to kallsyms (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_ksym_add/del functions (Yauheni Kaliuta) [1845114] - [net] bpf: Add prog flag to struct bpf_ksym object (Yauheni Kaliuta) [1845114] - [net] bpf: Abstract away entire bpf_link clean up procedure (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_ksym_find function (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Make tcp_rtt test more robust to failures (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: test_progs: Don't leak server_fd in tcp_rtt (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: test_progs: fix client/server race in tcp_rtt (Yauheni Kaliuta) [1845114] - [net] bpf: Move ksym_tnode to bpf_ksym (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Guarantee that useep() calls nanosleep() syscall (Yauheni Kaliuta) [1845114] - [net] bpf: Move lnode list node to struct bpf_ksym (Yauheni Kaliuta) [1845114] - [tools] tools: bpftool: Restore message on failure to guess program type (Yauheni Kaliuta) [1845114] - [include] bpf: Add name to struct bpf_ksym (Yauheni Kaliuta) [1845114] - [net] bpf: Add struct bpf_ksym (Yauheni Kaliuta) [1845114] - [include] bpf: Add bpf_trampoline_ name prefix for DECLARE_BPF_DISPATCHER (Yauheni Kaliuta) [1845114] - [mm] x86/mm: Rename is_kernel_text to __is_kernel_text (Yauheni Kaliuta) [1845114] - [tools] bpf: Add bpf_xdp_output() helper (Yauheni Kaliuta) [1845114] - [tools] tools/testing/selftests/bpf: Add self-tests for new helper bpf_get_ns_current_pid_tgid (Yauheni Kaliuta) [1845114] - [net] bpf: Added new helper bpf_get_ns_current_pid_tgid (Yauheni Kaliuta) [1845114] - [fs] fs/nsfs.c: Added ns_match (Yauheni Kaliuta) [1845114] - [tools] tools: bpftool: Fix minor bash completion mistakes (Yauheni Kaliuta) [1845114] - [tools] tools: bpftool: Allow all prog/map handles for pinning objects (Yauheni Kaliuta) [1845114] - [tools] libbpf: Split BTF presence checks into libbpf- and kernel-specific parts (Yauheni Kaliuta) [1845114] - [tools] bpftool: Add _bpftool and profiler.skel.h to .gitignore (Yauheni Kaliuta) [1845114] - [tools] bpftool: Skeleton should depend on libbpf (Yauheni Kaliuta) [1845114] - [tools] bpftool: Only build bpftool-prog-profile if supported by clang (Yauheni Kaliuta) [1845114] - [tools] bpftool: Use linux/types.h from source tree for profiler build (Yauheni Kaliuta) [1845114] - [tools] tools/runqslower: Add BPF_F_CURRENT_CPU for running selftest on older kernels (Yauheni Kaliuta) [1845114] - [x86] bpf: Fix trampoline generation for fmod_ret programs (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_link_new_file that doesn't install FD (Yauheni Kaliuta) [1845114] - [tools] bpftool: Bash completion for "bpftool prog profile" (Yauheni Kaliuta) [1845114] - [tools] bpftool: Documentation for bpftool prog profile (Yauheni Kaliuta) [1845114] - [tools] bpftool: Introduce "prog profile" command (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Enable UDP sockmap reuseport tests (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Add tests for UDP sockets in sockmap (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Don't listen() on UDP sockets (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Add UDP support (Yauheni Kaliuta) [1845114] - [net] bpf: Add sockmap hooks for UDP sockets (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Simplify sock_map_init_proto (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Move generic sockmap hooks from BPF TCP (Yauheni Kaliuta) [1845114] - [net] bpf: tcp: Guard declarations with CONFIG_NET_SOCK_MSG (Yauheni Kaliuta) [1845114] - [net] bpf: tcp: Move assertions into tcp_bpf_get_proto (Yauheni Kaliuta) [1845114] - [net] skmsg: Update saved hooks only once (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Only check ULP for TCP sockets (Yauheni Kaliuta) [1845114] - [kernel] bpf: Fix bpf_prog_test_run_tracing for !CONFIG_NET (Yauheni Kaliuta) [1845114] - [net] bpf: Remove unnecessary CAP_MAC_ADMIN check (Yauheni Kaliuta) [1845114] - [tools] bpf: Add selftests for BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [tools] bpf: Add test ops for BPF_PROG_TYPE_TRACING (Yauheni Kaliuta) [1845114] - [tools] tools/libbpf: Add support for BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [net] bpf: Attachment verification for BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [net] bpf: Introduce BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [x86] bpf: JIT helpers for fmod_ret progs (Yauheni Kaliuta) [1845114] - [net] bpf: Refactor trampoline update code (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Support out-of-tree vmlinux builds for VMLINUX_BTF (Yauheni Kaliuta) [1845114] - [tools] tools/runqslower: Drop copy/pasted BPF_F_CURRENT_CPU definiton (Yauheni Kaliuta) [1845114] - [tools] libbpf: Assume unsigned values for BTF_KIND_ENUM (Yauheni Kaliuta) [1845114] - [tools] bpf: Switch BPF UAPI #define constants used from BPF program side to enums (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Test new __sk_buff field gso_size (Yauheni Kaliuta) [1845114] - [tools] bpf: Sync uapi bpf.h to tools/ (Yauheni Kaliuta) [1845114] - [net] bpf: Add gso_size to __sk_buff (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add link pinning selftests (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add bpf_link pinning/unpinning (Yauheni Kaliuta) [1845114] - [net] bpf: Introduce pinnable bpf_link abstraction (Yauheni Kaliuta) [1845114] - [tools] libbpf: Merge selftests' bpf_trace_helpers.h into libbpf's bpf_tracing.h (Yauheni Kaliuta) [1845114] - [tools] libbpf: Fix use of PT_REGS_PARM macros with vmlinux.h (Yauheni Kaliuta) [1845114] - [tools] bpftool: Add header guards to generated vmlinux.h (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add test for "bpftool feature" command (Yauheni Kaliuta) [1845114] - [tools] selftests/tpm2: Add log and *.pyc to .gitignore (Yauheni Kaliuta) [1845114] - [tools] bpftool: Update bash completion for "bpftool feature" command (Yauheni Kaliuta) [1845114] - [tools] bpftool: Update documentation of "bpftool feature" command (Yauheni Kaliuta) [1845114] - [tools] bpftool: Make probes which emit dmesg warnings optional (Yauheni Kaliuta) [1845114] - [tools] bpftool: Move out sections to separate functions (Yauheni Kaliuta) [1845114] - [tools] bpftool: Support struct_ops, tracing, ext prog types (Yauheni Kaliuta) [1845114] - [scripts] scripts/bpf: Switch to more portable python3 shebang (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Print backtrace on SIGSEGV in test_progs (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Run reuseport tests only with supported socket types (Yauheni Kaliuta) [1845114] - [net] bpf/stackmap: Dont trylock mmap_sem with PREEMPT_RT and interrupts disabled (Yauheni Kaliuta) [1845114] - [net] bpf, lpm: Make locking RT friendly (Yauheni Kaliuta) [1845114] - [net] bpf: Prepare hashtab locking for PREEMPT_RT (Yauheni Kaliuta) [1845114] - [net] bpf: Factor out hashtab bucket lock operations (Yauheni Kaliuta) [1845114] - [net] bpf: Replace open coded recursion prevention in sys_bpf() (Yauheni Kaliuta) [1845114] - [net] bpf: Use recursion prevention helpers in hashtab code (Yauheni Kaliuta) [1845114] - [include] bpf: Provide recursion prevention helpers (Yauheni Kaliuta) [1845114] - [include] bpf: Use migrate_disable/enable in array macros and cgroup/lirc code (Yauheni Kaliuta) [1845114] - [net] bpf: Use migrate_disable/enabe() in trampoline code (Yauheni Kaliuta) [1845114] - [lib] bpf/tests: Use migrate disable instead of preempt disable (Yauheni Kaliuta) [1845114] - [net] bpf: Use bpf_prog_run_pin_on_cpu() at simple call sites (Yauheni Kaliuta) [1845114] - [include] bpf: Replace cant_sleep() with cant_migrate() (Yauheni Kaliuta) [1845114] - [include] bpf: Provide bpf_prog_run_pin_on_cpu() helper (Yauheni Kaliuta) [1845114] - [include] sched/rt: Provide migrate_disable/enable() inlines (Yauheni Kaliuta) [1845114] - [include] sched: Provide cant_migrate() (Yauheni Kaliuta) [1845114] - [net] bpf: Dont iterate over possible CPUs with interrupts disabled (Yauheni Kaliuta) [1845114] - [net] bpf: Remove recursion prevention from rcu free callback (Yauheni Kaliuta) [1845114] - [kernel] perf/bpf: Remove preempt disable around BPF invocation (Yauheni Kaliuta) [1845114] - [kernel] bpf/trace: Remove redundant preempt_disable from trace_call_bpf() (Yauheni Kaliuta) [1845114] - [kernel] bpf: disable preemption for bpf progs attached to uprobe (Yauheni Kaliuta) [1845114] - [kernel] bpf/trace: Remove EXPORT from trace_call_bpf() (Yauheni Kaliuta) [1845114] - [kernel] bpf/tracing: Remove redundant preempt_disable() in __bpf_trace_run() (Yauheni Kaliuta) [1845114] - [net] bpf: Update locking comment in hashtab code (Yauheni Kaliuta) [1845114] - [net] bpf: Enforce preallocation for instrumentation programs on RT (Yauheni Kaliuta) [1845114] - [net] bpf: Tighten the requirements for preallocated hash maps (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Tests for sockmap/sockhash holding listening sockets (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Extend SK_REUSEPORT tests to cover SOCKMAP/SOCKHASH (Yauheni Kaliuta) [1845114] - [documentation] docs/bpf: Update bpf development Q/A file (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Update xdp_bpf2bpf test to use new set_attach_target API (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add support for dynamic program attach target (Yauheni Kaliuta) [1845114] - [tools] libbpf: Bump libpf current version to v0.0.8 (Yauheni Kaliuta) [1845114] - [tools] libbpf: Relax check whether BTF is mandatory (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Change llvm flag -mcpu=probe to -mcpu=v3 (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add bpf_read_branch_records() selftest (Yauheni Kaliuta) [1845114] - [kernel] bpf: Add bpf_read_branch_records() helper (Yauheni Kaliuta) [1845114] - [kernel] bpf: Allow bpf_perf_event_read_value in all BPF programs (Yauheni Kaliuta) [1845114] - [dma] dma-direct: improve DMA mask overflow reporting (Don Dutile) [1816437] - [dma] dma-direct: improve swiotlb error reporting (Don Dutile) [1816437] - [dma] dma-direct: relax addressability checks in dma_direct_supported (Don Dutile) [1816437] - [dma] dma-contiguous: CMA: give precedence to cmdline (Don Dutile) [1816437] - [misc] lib/genalloc.c: rename addr_in_gen_pool to gen_pool_has_addr (Don Dutile) [1816437] - [lib] lib/genalloc.c: export symbol addr_in_gen_pool (Don Dutile) [1816437] - [acpi] dma-mapping: treat dev->bus_dma_mask as a DMA limit (Don Dutile) [1816437] - [powerpc] dma-direct: unify the dma_capable definitions (Don Dutile) [1816437] - [of] of/device: Really only set bus DMA mask when appropriate (Don Dutile) [1816437] - [dma] dma-direct: exclude dma_direct_map_resource from the min_low_pfn check (Don Dutile) [1816437] - [dma] dma-debug: clean up put_hash_bucket() (Don Dutile) [1816437] - [iommu] dma-mapping: drop the dev argument to arch_sync_dma_for_* (Don Dutile) [1816437] - [xen] swiotlb-xen: simplify cache maintainance (Don Dutile) [1816437] - [xen] swiotlb-xen: simplify the DMA sync method implementations (Don Dutile) [1816437] - [dma] dma-debug: increase HASH_SIZE (Don Dutile) [1816437] - [dma] dma-debug: reorder struct dma_debug_entry fields (Don Dutile) [1816437] - [dma] dma-mapping: merge the generic remapping helpers into dma-direct (Don Dutile) [1816437] - [dma] dma-direct: provide mmap and get_sgtable method overrides (Don Dutile) [1816437] - [dma] dma-direct: remove the dma_handle argument to __dma_direct_alloc_pages (Don Dutile) [1816437] - [dma] dma-direct: remove __dma_direct_free_pages (Don Dutile) [1816437] - [mm] dma/direct: turn ARCH_ZONE_DMA_BITS into a variable (Don Dutile) [1816437] - [dma] dma-direct: check for overflows on 32 bit DMA addresses (Don Dutile) [1816437] - [s390] s390/dma: provide proper ARCH_ZONE_DMA_BITS value (Don Dutile) [1816437] - [mm] powerpc: fix off by one in max_zone_pfn initialization for ZONE_DMA (Don Dutile) [1816437] - [powerpc] powerpc: enable a 30-bit ZONE_DMA for 32-bit pmac (Don Dutile) [1816437] - [mm] arm64: rename variables used to calculate ZONE_DMA32's size (Don Dutile) [1816437] - [mm] arm64: mm: use arm64_dma_phys_limit instead of calling max_zone_dma_phys() (Don Dutile) [1816437] - [mm] arm64: mm: make CONFIG_ZONE_DMA32 configurable (Don Dutile) [1816437] - [dma] kernel: dma-contiguous: mark CMA parameters __initdata/__initconst (Don Dutile) [1816437] - [dma] dma-debug: add a schedule point in debug_dma_dump_mappings() (Don Dutile) [1816437] - [dma] dma-debug: Use pr_warn instead of pr_warning (Don Dutile) [1816437] - [dma] dma-mapping: fix false positivse warnings in dma_common_free_remap() (Don Dutile) [1816437] - [xen] swiotlb-xen: ensure we have a single callsite for xen_dma_map_page (Don Dutile) [1816437] - [iommu] dma-mapping: introduce a dma_common_find_pages helper (Don Dutile) [1816437] - [iommu] dma-mapping: always use VM_DMA_COHERENT for generic DMA remap (Don Dutile) [1816437] - [mm] vmalloc: lift the arm flag for coherent mappings to common code (Don Dutile) [1816437] - [mm] dma-mapping: provide a better default ->get_required_mask (Don Dutile) [1816437] - [dma] dma-mapping: remove the dma_declare_coherent_memory export (Don Dutile) [1816437] - [dma] dma-mapping: remove the dma_mmap_from_dev_coherent export (Don Dutile) [1816437] - [dma] dma-mapping: remove CONFIG_ARCH_NO_COHERENT_DMA_MMAP (Don Dutile) [1816437] - [dma] dma-mapping: add a dma_can_mmap helper (Don Dutile) [1816437] - [powerpc] dma-mapping: explicitly wire up ->mmap and ->get_sgtable (Don Dutile) [1816437] - [mm] dma-mapping: move the dma_get_sgtable API comments from arm to common code (Don Dutile) [1816437] - [dma] dma-mapping: introduce dma_get_merge_boundary() (Don Dutile) [1816437] - [mm] dma-mapping: make dma_atomic_pool_init self-contained (Don Dutile) [1816437] - [arm64] dma-mapping: remove arch_dma_mmap_pgprot (Don Dutile) [1816437] - [scsi] scsi: ibmvscsi: Don't send host info in adapter info MAD after LPM (Steve Best) [1847078] - [fs] NFS: Fix inode fileid checks in attribute revalidation code (Benjamin Coddington) [1846295] - [fs] NFS: remove set but not used variable 'mapping' (Benjamin Coddington) [1846295] - [fs] NFSv2: Fix write regression (Benjamin Coddington) [1846295] - [fs] NFSv2: Fix eof handling (Benjamin Coddington) [1846295] - [fs] NFS: Fix writepage(s) error handling to not report errors twice (Benjamin Coddington) [1846295] - [fs] NFS: Fix spurious EIO read errors (Benjamin Coddington) [1846295] - [fs] pNFS/flexfiles: Don't time out requests on hard mounts (Benjamin Coddington) [1846295] - [net] SUNRPC: Handle EADDRINUSE and ENOBUFS correctly (Benjamin Coddington) [1846295] - [fs] pNFS/flexfiles: Turn off soft RPC calls (Benjamin Coddington) [1846295] - [fs] NFS: On fatal writeback errors, we need to call nfs_inode_remove_request() (Benjamin Coddington) [1846295] - [fs] NFS: Fix initialisation of I/O result struct in nfs_pgio_rpcsetup (Benjamin Coddington) [1846295] - [fs] NFSv4: Fix return value in nfs_finish_open() (Benjamin Coddington) [1846295] - [fs] NFSv4: Fix return values for nfs4_file_open() (Benjamin Coddington) [1846295] - [fs] NFS: Don't refresh attributes with mounted-on-file information (Benjamin Coddington) [1846295] - [fs] NFSv4: Ensure state recovery handles ETIMEDOUT correctly (Benjamin Coddington) [1846295] - [fs] NFSv4: Report the error from nfs4_select_rw_stateid() (Benjamin Coddington) [1846295] - [fs] NFSv4: Print an error in the syslog when state is marked as irrecoverable (Benjamin Coddington) [1846295] - [net] SUNRPC: Optimise transport balancing code (Benjamin Coddington) [1846295] - [fs] NFSv4: Don't use the zero stateid with layoutget (Benjamin Coddington) [1846295] - [net] SUNRPC: Fix up backchannel slot table accounting (Benjamin Coddington) [1846295] - [net] SUNRPC: Skip zero-refcount transports (Benjamin Coddington) [1846295] - [net] SUNRPC: Replace division by multiplication in calculation of queue length (Benjamin Coddington) [1846295] - [fs] NFSv4: Validate the stateid before applying it to state recovery (Benjamin Coddington) [1846295] - [fs] nfs4.0: Refetch lease_time after clientid update (Benjamin Coddington) [1846295] - [fs] nfs4: Rename nfs41_setup_state_renewal (Benjamin Coddington) [1846295] - [fs] nfs4: Make nfs4_proc_get_lease_time available for nfs4.0 (Benjamin Coddington) [1846295] - [fs] nfs: Fix copy-and-paste error in debug message (Benjamin Coddington) [1846295] - [fs] NFS: Replace 16 seq_printf() calls by seq_puts() (Benjamin Coddington) [1846295] - [fs] NFS: Use seq_putc() in nfs_show_stats() (Benjamin Coddington) [1846295] - [fs] nfsd: Fix misuse of strlcpy (Benjamin Coddington) [1846295] - [net] SUNRPC: Drop redundant CONFIG_ from CONFIG_SUNRPC_DISABLE_INSECURE_ENCTYPES (Benjamin Coddington) [1846295] - [fs] NFS: Cleanup if nfs_match_client is interrupted (Benjamin Coddington) [1846295] - [fs] nfs: disable client side deduplication (Benjamin Coddington) [1846295] - [fs] NFS: Clean up writeback code (Benjamin Coddington) [1846295] - [net] SUNRPC: Remove warning in debugfs.c when compiling with W=1 (Benjamin Coddington) [1846295] - [fs] NFS: Add sysfs support for per-container identifier (Benjamin Coddington) [1846295] - [net] SUNRPC: Remove the bh-safe lock requirement on the rpc_wait_queue->lock (Benjamin Coddington) [1846295] - [fs] NFS: Cleanup - add nfs_clients_exit to mirror nfs_clients_init (Benjamin Coddington) [1846295] - [fs] NFS: Create a root NFS directory in /sys/fs/nfs (Benjamin Coddington) [1846295] - [net] SUNRPC: Remove the bh-safe lock requirement on xprt->transport_lock (Benjamin Coddington) [1846295] - [net] SUNRPC: Replace direct task wakeups from softirq context (Benjamin Coddington) [1846295] - [net] SUNRPC: Replace the queue timer with a delayed work function (Benjamin Coddington) [1846295] - [fs] NFSv4: Handle open for execute correctly (Benjamin Coddington) [1846295] - [fs] nfs: dget_parent() never returns NULL (Benjamin Coddington) [1846295] - [net] nfs: fix out-of-date connectathon talk URL (Benjamin Coddington) [1846295] - [fs] nfsd4: remove outdated nfsd4_decode_time comment (Benjamin Coddington) [1846295] - [fs] nfsd: Spelling s/EACCESS/EACCES/ (Benjamin Coddington) [1846295] - [fs] lockd: Make two symbols static (Benjamin Coddington) [1846295] - [fs] lockd: Show pid of lockd for remote locks (Benjamin Coddington) [1846295] - [fs] lockd: Remove lm_compare_owner and lm_owner_key (Benjamin Coddington) [1846295] - [fs] lockd: Convert NLM service fl_owner to nlm_lockowner (Benjamin Coddington) [1846295] - [fs] lockd: prepare nlm_lockowner for use by the server (Benjamin Coddington) [1846295] - [net] sunrpc: no need to check return value of debugfs_create functions (Benjamin Coddington) [1846295] - [fs] nfsd: no need to check return value of debugfs_create functions (Benjamin Coddington) [1846295] - [fs] xfs: add agf freeblocks verify in xfs_agf_verify (Brian Foster) [1837192] {CVE-2020-12655} - [scsi] scsi: iscsi: Fix deadlock on recovery path during GFP_IO reclaim (Chris Leech) [1830140] - [scsi] scsi: iscsi: Register sysfs for iscsi workqueue (Chris Leech) [1830140] - [scsi] scsi: iscsi: Report unbind session event when the target has been removed (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Fix error count for active session (Chris Leech) [1830140] - [scsi] scsi: iscsi: Report connection state in sysfs (Chris Leech) [1830140] - [scsi] scsi: iscsi: Add support for asynchronous iSCSI session destruction (Chris Leech) [1830140] - [scsi] scsi: iscsi: Perform connection failure entirely in kernel space (Chris Leech) [1830140] - [scsi] scsi: iscsi: Don't destroy session if there are outstanding connections (Chris Leech) [1830140] - [scsi] scsi: iscsi: Fix a potential deadlock in the timeout handler (Chris Leech) [1830140] - [scsi] scsi: iscsi: Don't send data to unbound connection (Chris Leech) [1830140] - [scsi] scsi: libiscsi: switch to SPDX tags (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Hold back_lock when calling iscsi_complete_task (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Use scsi_et_resid() where appropriate (Chris Leech) [1830140] - [scsi] scsi: iscsi: Capture iscsi debug messages using tracepoints (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Fix NULL pointer dereference in iscsi_eh_session_reset (Chris Leech) [1830140] - [scsi] scsi: iscsi_tcp: Explicitly cast param in iscsi_sw_tcp_host_get_param (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Annotate fall-through (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Annotate locking assumptions (Chris Leech) [1830140] - [nvme] nvmet: fail outstanding host posted AEN req (David Milburn) [1833642] - [nvme] nvmet: add async event tracing support (David Milburn) [1833642] - [nvme] nvmet: cleanups the loop in nvmet_async_events_process (David Milburn) [1833642] - [nvme] nvmet: fix memory leak when removing namespaces and controllers concurrently (David Milburn) [1833642] - [netdrv] ibmvnic: Flush existing work items before device removal (Steve Best) [1846761] - [kernel] signal: Extend exec_id to 64bits (Chris von Recklinghausen) [1834652] {CVE-2020-12826}- [arm64] docs: fix broken references to text files (Andrew Jones) [1842468] - [arm64] kvm: arm64: Move __load_guest_stage2 to kvm_mmu.h (Andrew Jones) [1842468] - [arm64] kvm: arm64: Drop obsolete comment about sys_reg ordering (Andrew Jones) [1842468] - [arm64] kvm: arm64: Parametrize exception entry with a target EL (Andrew Jones) [1842468] - [arm64] kvm: arm64: Don't use empty structures as CPU reset state (Andrew Jones) [1842468] - [arm64] kvm: arm64: Move sysreg reset check to boot time (Andrew Jones) [1842468] - [arm64] kvm: arm64: Add missing reset handlers for PMU emulation (Andrew Jones) [1842468] - [arm64] kvm: arm64: Refactor vcpu_{read, write}_sys_reg (Andrew Jones) [1842468] - [arm64] kvm: arm64: vgic-v3: Take cpu_if pointer directly instead of vcpu (Andrew Jones) [1842468] - [arm64] kvm: arm64: Remove obsolete kvm_virt_to_phys abstraction (Andrew Jones) [1842468] - [arm64] kvm: arm64: Fix incorrect comment on kvm_get_hyp_vector() (Andrew Jones) [1842468] - [arm64] kvm: arm64: Clean up cpu_init_hyp_mode() (Andrew Jones) [1842468] - [arm64] cpufeature: Drop open encodings while extracting parange (Andrew Jones) [1842468] - [arm64] kvm: arm64: Make KVM_CAP_MAX_VCPUS compatible with the selected GIC version (Andrew Jones) [1842468] - [arm64] kvm: arm64: Support enabling dirty log gradually in small chunks (Andrew Jones) [1842468] - [arm64] kvm: arm64: Unify handling THP backed host memory (Andrew Jones) [1842468] - [arm64] kvm: arm64: Clean up the checking for huge mapping (Andrew Jones) [1842468] - [arm64] kvm: arm/arm64: Release kvm->mmu_lock in loop to prevent starvation (Andrew Jones) [1842468] - [arm64] kvm: arm64: Sidestep stage2_unmap_vm() on vcpu reset when S2FWB is supported (Andrew Jones) [1842468] - [arm64] kvm: Fix spelling in code comments (Andrew Jones) [1842468] - [arm64] kvm: arm64: Simplify __kvm_timer_set_cntvoff implementation (Andrew Jones) [1842468] - [arm64] kvm: arm64: Clean up kvm makefiles (Andrew Jones) [1842468] - [arm64] kvm: arm64: Change CONFIG_KVM to a menuconfig entry (Andrew Jones) [1842468] - [arm64] kvm: arm64: Update help text (Andrew Jones) [1842468] - [arm64] kvm: arm64: Kill off CONFIG_KVM_ARM_HOST (Andrew Jones) [1842468] - [arm64] kvm: arm64: Move virt/kvm/arm to arch/arm64 (Andrew Jones) [1842468] - [arm64] Unify WORKAROUND_SPECULATIVE_AT_{NVHE, VHE} (Andrew Jones) [1842468] - [arm64] cpufeature: Add CPU capability for AArch32 EL1 support (Andrew Jones) [1842468] - [net] SUNRPC: Fix a credential refcount leak (Benjamin Coddington) [1831672] - [net] Revert "SUNRPC: Declare RPC timers as TIMER_DEFERRABLE" (Benjamin Coddington) [1831672] - [net] net :sunrpc :clnt :Fix xps refcount imbalance on the error path (Benjamin Coddington) [1831672] - [net] SUNRPC: Rebalance a kref in auth_gss.c (Benjamin Coddington) [1831672] - [fs] NFS: Fix a double unlock from nfs_match, get_client (Benjamin Coddington) [1831672] - [fs] nfs: pass the correct prototype to read_cache_page (Benjamin Coddington) [1831672] - [fs] NFSv4: don't mark all open state for recovery when handling recallable state revoked flag (Benjamin Coddington) [1831672] - [net] SUNRPC: Fix an error code in gss_alloc_msg() (Benjamin Coddington) [1831672] - [net] SUNRPC: task should be exit if encode return EKEYEXPIRED more times (Benjamin Coddington) [1831672] - [fs] NFS: make nfs_match_client killable (Benjamin Coddington) [1831672] - [fs] nfsd: update callback done processing (Benjamin Coddington) [1831672] - [fs] lockd: Store the lockd client credential in struct nlm_host (Benjamin Coddington) [1831672] - [fs] NFS: When mounting, don't share filesystems between different user namespaces (Benjamin Coddington) [1831672] - [fs] NFS: Convert NFSv2 to use the container user namespace (Benjamin Coddington) [1831672] - [fs] NFSv4: Convert the NFS client idmapper to use the container user namespace (Benjamin Coddington) [1831672] - [fs] NFS: Convert NFSv3 to use the container user namespace (Benjamin Coddington) [1831672] - [net] SUNRPC: Use namespace of listening daemon in the client AUTH_GSS upcall (Benjamin Coddington) [1831672] - [net] net: Remove some unneeded semicolon (Benjamin Coddington) [1831672] - [net] SUNRPC: Use the client user namespace when encoding creds (Benjamin Coddington) [1831672] - [fs] NFS: Store the credential of the mount process in the nfs_server (Benjamin Coddington) [1831672] - [fs] SUNRPC: Cache cred of process creating the rpc_client (Benjamin Coddington) [1831672] - [net] SUNRPC: Update comments based on recent changes (Benjamin Coddington) [1831672] - [net] SUNRPC: Avoid digging into the ATOMIC pool (Benjamin Coddington) [1831672] - [net] xprtrdma: Recognize XDRBUF_SPARSE_PAGES (Benjamin Coddington) [1831672] - [fs] Fix nfs4.2 return -EINVAL when do dedupe operation (Benjamin Coddington) [1831672] - [fs] NFS: Remove redundant open context from nfs_page (Benjamin Coddington) [1831672] - [fs] NFS: Add a helper to return a pointer to the open context of a struct nfs_page (Benjamin Coddington) [1831672] - [fs] NFS: Ensure that all nfs lock contexts have a valid open context (Benjamin Coddington) [1831672] - [fs] NFS: Allow signal interruption of NFS4ERR_DELAYed operations (Benjamin Coddington) [1831672] - [fs] pNFS: Add tracking to limit the number of pNFS retries (Benjamin Coddington) [1831672] - [fs] NFS: Remove unused argument from nfs_create_request() (Benjamin Coddington) [1831672] - [fs] NFS: Fix up NFS I/O subrequest creation (Benjamin Coddington) [1831672] - [fs] NFS: Replace custom error reporting mechanism with generic one (Benjamin Coddington) [1831672] - [fs] NFS: Don't inadvertently clear writeback errors (Benjamin Coddington) [1831672] - [fs] NFS: Don't call generic_error_remove_page() while holding locks (Benjamin Coddington) [1831672] - [fs] NFS: Don't interrupt file writeout due to fatal errors (Benjamin Coddington) [1831672] - [fs] NFS: Add a mount option "softerr" to allow clients to see ETIMEDOUT errors (Benjamin Coddington) [1831672] - [uapi] NFS: Move internal constants out of uapi/linux/nfs_mount.h (Benjamin Coddington) [1831672] - [fs] NFS: Consider ETIMEDOUT to be a fatal error (Benjamin Coddington) [1831672] - [net] SUNRPC: Add the 'softerr' rpc_client flag (Benjamin Coddington) [1831672] - [net] SUNRPC: Ensure to ratelimit the "server not responding" syslog messages (Benjamin Coddington) [1831672] - [net] SUNRPC: Start the first major timeout calculation at task creation (Benjamin Coddington) [1831672] - [net] SUNRPC: Ensure that the transport layer respect major timeouts (Benjamin Coddington) [1831672] - [net] SUNRPC: Declare RPC timers as TIMER_DEFERRABLE (Benjamin Coddington) [1831672] - [net] SUNRPC: Simplify queue timeouts using timer_reduce() (Benjamin Coddington) [1831672] - [net] SUNRPC: Fix up tracking of timeouts (Benjamin Coddington) [1831672] - [net] SUNRPC: Add function rpc_sleep_on_timeout() (Benjamin Coddington) [1831672] - [fs] SUNRPC: Remove unused argument 'action' from rpc_sleep_on_priority() (Benjamin Coddington) [1831672] - [net] SUNRPC: Refactor rpc_sleep_on() (Benjamin Coddington) [1831672] - [net] SUNRPC: Refactor xprt_request_wait_receive() (Benjamin Coddington) [1831672] - [fs] nfsd: fh_drop_write in nfsd_unlink (Benjamin Coddington) [1831672] - [fs] nfsd: avoid uninitialized variable warning (Benjamin Coddington) [1831672] - [netdrv] Revert "net: phy: realtek: fix using paged operations with RTL8105e / RTL8208" (Josef Oskera) [1846022] - [netdrv] ice: Fix Tx timeout when link is toggled on a VF's interface (Jonathan Toppins) [1843144] - [netdrv] ice: add a devlink region for dumping NVM contents (Jonathan Toppins) [1843144] - [nvme] nvme-fc: print proper nvme-fc devloss_tmo value (Gopal Tiwari) [1846049] - [acpi] ACPI: EC: PM: Avoid flushing EC work when EC GPE is inactive (Al Stone) [1803969] - [acpi] ACPI: EC: PM: Avoid premature returns from acpi_s2idle_wake() (Al Stone) [1803969] - [acpi] ACPI: PM: Add acpi_register_wakeup_handler() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Refine active GPEs check (Al Stone) [1803969] - [acpi] ACPICA: Allow acpi_any_gpe_status_set() to skip one GPE (Al Stone) [1803969] - [base] PM: sleep: wakeup: Skip wakeup_source_sysfs_remove() if device is not there (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Check fixed wakeup events in acpi_s2idle_wake() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Fix comment in acpi_s2idle_prepare_late() (Al Stone) [1803969] - [platform] platform/x86: sony-laptop: Make resuming thermal profile safer (Al Stone) [1803969] - [platform] platform/x86: sony-laptop: SNC calls should handle BUFFER types (Al Stone) [1803969] - [acpi] ACPI: Update Tiger Lake ACPI device IDs (Al Stone) [1803969] - [acpi] ACPI: EC: Avoid printing confusing messages in acpi_ec_setup() (Al Stone) [1803969] - [acpi] ACPI: EC: Fix flushing of pending work (Al Stone) [1803969] - [base] PM / wakeup: Register wakeup class kobj after device is added (Al Stone) [1803969] - [base] PM / wakeup: Fix sysfs registration error path (Al Stone) [1803969] - [base] PM / wakeup: Unexport wakeup_source_sysfs_{add, remove}() (Al Stone) [1803969] - [kernel] PM: suspend: Fix platform_suspend_prepare_noirq() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Prevent spurious SCIs from waking up the system (Al Stone) [1803969] - [acpi] ACPICA: Introduce acpi_any_gpe_status_set() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Avoid possible race related to the EC GPE (Al Stone) [1803969] - [acpi] ACPI: watchdog: Allow disabling WDAT at boot (Al Stone) [1803969] - [acpi] ACPI / APD: Add clock frequency for Hisilicon Hip08-Lite I2C controller (Al Stone) [1803969] - [acpi] ACPI: thermal: switch to use helpers (Al Stone) [1803969] - [acpi] ACPI/IORT: Fix 'Number of IDs' handling in iort_id_map() (Al Stone) [1803969] - [acpi] ACPI/IORT: Parse SSID property of named component node (Al Stone) [1803969] - [iommu] iommu/arm-smmu-v3: Parse PASID devicetree property of platform devices (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20200110 (Al Stone) [1803969] - [acpi] ACPICA: All acpica: Update copyrights to 2020 Including tool signons (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Razer Blade Stealth 13 late 2019 lid switch (Al Stone) [1803969] - [acpi] ACPI: PPTT: Consistently use unsigned int as parameter type (Al Stone) [1803969] - [acpi] ACPI: EC: Reference count query handlers under lock (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20191213 (Al Stone) [1803969] - [acpi] ACPICA: Dispatcher: always generate buffer objects for ASL create_field() operator (Al Stone) [1803969] - [acpi] ACPICA: acpisrc: add unix line ending support for non-windows build (Al Stone) [1803969] - [acpi] ACPICA: Disassembler: create buffer fields in ACPI_PARSE_LOAD_PASS1 (Al Stone) [1803969] - [acpi] ACPICA: debugger: fix spelling mistake "adress" -> "address" (Al Stone) [1803969] - [acpi] ACPI: video: Do not export a non working backlight interface on MSI MS-7721 boards (Al Stone) [1803969] - [acpi] ACPI: fan: Add Tiger Lake ACPI device ID (Al Stone) [1803969] - [acpi] ACPI: DPTF: Add Tiger Lake ACPI device IDs (Al Stone) [1803969] - [acpi] ACPI: fan: Expose fan performance state information (Al Stone) [1803969] - [acpi] ACPI / LPSS: Rename pwm_backlight pwm-lookup to pwm_soc_backlight (Al Stone) [1803969] - [acpi] ACPI: video: Use native backlight on Lenovo E41-25/45 (Al Stone) [1803969] - [acpi] ACPI: video: fix typo in comment (Al Stone) [1803969] - [acpi] ACPI / battery: Deal better with neither design nor full capacity not being reported (Al Stone) [1803969] - [acpi] ACPI / battery: Use design-cap for capacity calculations if full-cap is not available (Al Stone) [1803969] - [acpi] ACPI / battery: Deal with design or full capacity being reported as -1 (Al Stone) [1803969] - [acpi] ACPI/sleep: Convert acpi_wakeup_address into a function (Al Stone) [1803969] - [acpi] ACPI: PM: Avoid attaching ACPI PM domain to certain devices (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Rework ACPI events synchronization (Al Stone) [1803969] - [acpi] ACPI: EC: Rework flushing of pending work (Al Stone) [1803969] - [acpi] ACPI: bus: Fix NULL pointer check in acpi_bus_get_private_data() (Al Stone) [1803969] - [acpi] ACPI: Fix Kconfig indentation (Al Stone) [1803969] - [acpi] ACPI: OSL: only free map once in osl.c (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Acer Switch 10 SW5-032 lid-switch (Al Stone) [1803969] - [acpi] ACPI: sysfs: Change ACPI_MASKABLE_GPE_MAX to 0x100 (Al Stone) [1803969] - [acpi] ACPI: OSI: Shoot duplicate word (Al Stone) [1803969] - [acpi] ACPI: HMAT: use u instead of d to print u32 values (Al Stone) [1803969] - [acpi] ACPI: NUMA: HMAT: fix a section mismatch (Al Stone) [1803969] - [acpi] ACPI: HMAT: don't mix pxm and nid when setting memory target processor_pxm (Al Stone) [1803969] - [acpi] ACPI: NUMA: HMAT: Register "soft reserved" memory as an "hmem" device (Al Stone) [1803969] - [acpi] ACPI: NUMA: HMAT: Register HMAT at device_initcall level (Al Stone) [1803969] - [acpi] ACPI: NUMA: Establish a new drivers/acpi/numa/ directory (Al Stone) [1803969] - [x86] x86/efi: EFI soft reservation to E820 enumeration (Al Stone) [1803969] - [firmware] efi: Common enable/disable infrastructure for EFI soft reservation (Al Stone) [1803969] - [firmware] efi: Enumerate EFI_MEMORY_SP (Al Stone) [1803969] - [dax] device-dax: Add a driver for "hmem" devices (Al Stone) [1803969] - [nvdimm] lib: Uplevel the pmem "region" ida to a global allocator (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20191018 (Al Stone) [1803969] - [acpi] ACPICA: debugger: remove leading whitespaces when converting a string to a buffer (Al Stone) [1803969] - [acpi] ACPICA: acpiexec: initialize all simple types and field units from user input (Al Stone) [1803969] - [acpi] ACPICA: debugger: add field unit support for acpi_db_get_next_token (Al Stone) [1803969] - [acpi] ACPICA: debugger: surround field unit output with braces '{' (Al Stone) [1803969] - [acpi] ACPICA: debugger: add command to dump all fields of particular subtype (Al Stone) [1803969] - [acpi] ACPICA: utilities: add flag to only display data when dumping buffers (Al Stone) [1803969] - [acpi] ACPICA: make acpi_load_table() return table index (Al Stone) [1803969] - [acpi] ACPICA: Add new external interface, acpi_unload_table() (Al Stone) [1803969] - [acpi] ACPICA: More Clang changes (Al Stone) [1803969] - [acpi] ACPICA: Win OSL: Replace get_tick_count with get_tick_count64 (Al Stone) [1803969] - [acpi] ACPICA: Results from Clang (Al Stone) [1803969] - [acpi] ACPI: EC: add support for hardware-reduced systems (Al Stone) [1803969] - [acpi] ACPI: EC: tweak naming in preparation for GpioInt support (Al Stone) [1803969] - [acpi] ACPI: button: Remove unused acpi_lid_notifier_register() functions (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Asus T200TA (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Medion Akoya E2215T (Al Stone) [1803969] - [acpi] ACPI: button: Turn lid_blacklst DMI table into a generic quirk table (Al Stone) [1803969] - [acpi] ACPI: button: Allow disabling LID support with the lid_init_state module option (Al Stone) [1803969] - [acpi] ACPI: button: Refactor lid_init_state module parsing code (Al Stone) [1803969] - [acpi] ACPI: LPSS: Add dmi quirk for skipping _DEP check for some device-links (Al Stone) [1803969] - [acpi] ACPI: LPSS: Add LNXVIDEO -> BYT I2C1 to lpss_device_links (Al Stone) [1803969] - [acpi] ACPI: LPSS: Add LNXVIDEO -> BYT I2C7 to lpss_device_links (Al Stone) [1803969] - [acpi] ACPI / PMIC: Add Cherry Trail Crystal Cove PMIC OpRegion driver (Al Stone) [1803969] - [acpi] ACPI / PMIC: Add byt prefix to Crystal Cove PMIC OpRegion driver (Al Stone) [1803969] - [acpi] ACPI / PMIC: Do not register handlers for unhandled OpRegions (Al Stone) [1803969] - [acpi] ACPI: processor_idle: Skip dummy wait if kernel is in guest (Al Stone) [1803969] - [acpi] acpi: Use pr_warn instead of pr_warning (Al Stone) [1803969] - [acpi] ACPI: CPPC: Set pcc_datato NULL in acpi_cppc_processor_exit() (Al Stone) [1803969] - [mfd] rhel: constify some function arguments when searching for devices (Al Stone) [1803969] - [acpi] ACPI: platform: Unregister stale platform devices (Al Stone) [1803969] - [i2c] i2c: Revert incorrect conversion to use generic helper (Al Stone) [1803969] - [base] drivers: Introduce device lookup variants by ACPI_COMPANION device (Al Stone) [1803969] - [s390] drivers: s390/cio: Fix compilation warning about const qualifiers (Al Stone) [1803969] - [s390] driver_find_device: Unify the match function with class_find_device() (Al Stone) [1803969] - [acpi] ACPI / LPSS: Switch to use acpi_dev_hid_uid_match() (Al Stone) [1803969] - [acpi] ACPI / utils: Move acpi_dev_get_first_match_dev() under CONFIG_ACPI (Al Stone) [1803969] - [acpi] ACPI / utils: Describe function parameters in kernel-doc (Al Stone) [1803969] - [acpi] ACPI: Always build evged in (Al Stone) [1803969] - [acpi] ACPI: video: update doc for acpi_video_bus_DOS() (Al Stone) [1803969] - [acpi] ACPI: PM: Drop Dell XPS13 9360 from LPS0 Idle _DSM blacklist (Al Stone) [1803969] - [acpi] ACPI: HMAT: ACPI_HMAT_MEMORY_PD_VALID is deprecated since ACPI-6.3 (Al Stone) [1803969] - [acpi] i2c: imx: ACPI support for NXP i2c controller (Al Stone) [1803969] - [acpi] ACPI / PCI: fix acpi_pci_irq_enable() memory leak (Al Stone) [1803969] - [acpi] ACPI: custom_method: fix memory leaks (Al Stone) [1803969] - [acpi] ACPI: thermal: Remove redundant acpi_has_method() calls (Al Stone) [1803969] - [acpi] ACPI / property: Fix acpi_graph_get_remote_endpoint() name in kerneldoc (Al Stone) [1803969] - [acpi] ACPI / CPPC: do not require the _PSD method (Al Stone) [1803969] - [acpi] ACPI: SBS: remove unused const variable 'SMBUS_PEC' (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Always set up EC GPE for system wakeup (Al Stone) [1803969] - [platform] intel-hid: Disable button array during suspend-to-idle (Al Stone) [1803969] - [platform] intel-hid: intel-vbtn: Avoid leaking wakeup_mode set (Al Stone) [1803969] - [platform] platform/x86: intel-hid: Missing power button release on some Dell models (Al Stone) [1803969] - [platform] platform/x86: intel-hid: Convert to use SPDX identifier (Al Stone) [1803969] - [platform] platform/x86: intel-hid: Add support for Device Specific Methods (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Avoid rearming SCI for wakeup unnecessarily (Al Stone) [1803969] - [base] PM / wakeup: Show wakeup sources stats in sysfs (Al Stone) [1803969] - [kernel] PM / wakeup: Use wakeup_source_register() in wakelock.c (Al Stone) [1803969] - [base] PM / wakeup: Drop wakeup_source_init(), wakeup_source_prepare() (Al Stone) [1803969] - [base] PM: sleep: Fix possible overflow in pm_system_cancel_wakeup() (Al Stone) [1803969] - [acpi] ACPI/PCI: Remove surplus parentheses from a return statement (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20190816 (Al Stone) [1803969] - [acpi] ACPICA: Add "Windows 2019" string to _OSI support (Al Stone) [1803969] - [acpi] ACPICA: Differentiate Windows 8.1 from Windows 8 (Al Stone) [1803969] - [acpi] ACPICA: Fully deploy ACPI_PRINTF_LIKE macro (Al Stone) [1803969] - [acpi] ACPICA: Fix issues with arg types within printf format strings (Al Stone) [1803969] - [acpi] ACPICA: Macros: remove pointer math on a null pointer (Al Stone) [1803969] - [acpi] ACPICA: Debugger: remove redundant assignment on obj_desc (Al Stone) [1803969] - [acpi] ACPI / APEI: Release resources if gen_pool_add() fails (Al Stone) [1803969] - [acpi] acpi: Use built-in RCU list checking for acpi_ioremaps list (Al Stone) [1803969] - [acpi] HMAT: Skip publishing target info for nodes with no online memory (Al Stone) [1803969] - [acpi] HMAT: Register attributes for memory hot add (Al Stone) [1803969] - [acpi] HMAT: Register memory-side cache after parsing (Al Stone) [1803969] - [acpi] ACPI / processor: don't print errors for processorIDs == 0xff (Al Stone) [1803969] - [acpi] ACPI: PM: Print debug messages on device power state changes (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Execute LPS0 _DSM functions with suspended devices (Al Stone) [1803969] - [acpi] ACPI: EC: PM: Make acpi_ec_dispatch_gpe() print debug message (Al Stone) [1803969] - [acpi] ACPI: EC: PM: Consolidate some code depending on PM_SLEEP (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Eliminate acpi_sleep_no_ec_events() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Switch EC over to polling during "noirq" suspend (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Add acpi.sleep_no_lps0 module parameter (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Rearrange lps0_device_attach() (Al Stone) [1803969] - [acpi] ACPI / APEI: Get rid of NULL_UUID_LE constant (Al Stone) [1803969] - [acpi] ACPI: PM: Set up EC GPE for system wakeup from drivers that need it (Al Stone) [1803969] - [acpi] PM: sleep: Simplify suspend-to-idle control flow (Al Stone) [1803969] - [kernel] PCI: irq: Introduce rearm_wake_irq() (Al Stone) [1803969] - [acpi] ACPI: PM: Set s2idle_wakeup earlier and clear it later (Al Stone) [1803969] - [acpi] ACPI: EC: Return bool from acpi_ec_dispatch_gpe() (Al Stone) [1803969] - [acpi] ACPICA: Return u32 from acpi_dispatch_gpe() (Al Stone) [1803969] - [kernel] kernel/sysctl.c: ignore out-of-range taint bits introduced via kernel.tainted (Rafael Aquini) [1845358] - [documentation] kernel: add panic_on_taint (Rafael Aquini) [1845358] - [mm] hugetlbfs: fix changes to command line processing (Baoquan He) [1823769] - [documentation] hugetlbfs: clean up command line processing (Baoquan He) [1823769] - [mm] hugetlbfs: remove hugetlb_add_hstate() warning for existing hstate (Baoquan He) [1823769] - [mm] hugetlbfs: move hugepagesz= parsing to arch independent code (Baoquan He) [1823769] - [mm] mm: simplify MEMORY_ISOLATION && COMPACTION || CMA into CONTIG_ALLOC (Baoquan He) [1823769] - [mm] hugetlbfs: add arch_hugetlb_valid_size (Baoquan He) [1823769] - [mm] arm64/hugetlb: Use macros for contiguous huge page sizes (Baoquan He) [1823769] - [mm] arm64: hugetlb: Register hugepages during arch init (Baoquan He) [1823769] - [fs] xfs: prohibit fs freezing when using empty transactions (Brian Foster) [1845099] - [security] selinux: properly handle multiple messages in selinux_netlink_send() (Ondrej Mosnacek) [1839643] {CVE-2020-10751} - [mm] bdi: add a ->dev_name field to struct backing_dev_info (Ming Lei) [1788378] - [block] bdi: use bdi_dev_name() to get device name (Ming Lei) [1788378] - [mm] bdi: move bdi_dev_name out of line (Ming Lei) [1788378] - [fs] memcg: fix a crash in wb_workfn when a device disappears (Ming Lei) [1788378]- [tools] libbpf: provide backported RHEL symbols as upstream aliases 2 (Yauheni Kaliuta) [1813372] - [include] bpf: include/linux/bpf.h: fix spaces (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test for freplace program with expected_attach_type (Yauheni Kaliuta) [1813372] - [scripts] checkpatch: don't warn about new vsprintf pointer extension 'pe' (Yauheni Kaliuta) [1813372] - [s390] s390: enable bpf jit by default when not built as always-on (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Copy runqslower to OUTPUT directory (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix memory leak in test selector (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix huge memory leak in libbpf_find_vmlinux_btf_id() (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add runqslower binary to .gitignore (Yauheni Kaliuta) [1813372] - [net] bpf: Change kvfree to kfree in generic_map_lookup_batch() (Yauheni Kaliuta) [1813372] - [tools] bpf, selftests: Use bpf_probe_read_kernel (Yauheni Kaliuta) [1813372] - [net] bpf/cgroup: Replace rcu_swap_protected() with rcu_replace_pointer() (Yauheni Kaliuta) [1813372] - [net] bpf: Fix bug in mmap() implementation for BPF array map (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Validate frozen map contents stays frozen (Yauheni Kaliuta) [1813372] - [net] bpf: Fix handling of XADD on BTF memory (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Run SYN cookies with reuseport BPF test only for TCP (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix typo in bash-completion (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix handling of optional field_name in btf_dump__emit_type_decl (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Declare bpf_log_buf variables as static (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix a couple of broken test_btf cases (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Enforce returning 0 for fentry/fexit programs (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix BPF_KRETPROBE macro and use it in attach_probe test (Yauheni Kaliuta) [1813372] - [net] bpf: Propagate expected_attach_type when verifying freplace programs (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix trampoline_count clean up logic (Yauheni Kaliuta) [1813372] - [net] bpf: Explicitly memset some bpf info structures declared on the stack (Yauheni Kaliuta) [1813372] - [net] bpf: Explicitly memset the bpf_attr structure (Yauheni Kaliuta) [1813372] - [net] bpf: Sanitize the bpf_struct_ops tcp-cc name (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test for the packed enum member in struct/union (Yauheni Kaliuta) [1813372] - [net] bpf/btf: Fix BTF verification of enum members in struct/union (Yauheni Kaliuta) [1813372] - [net] bpf: Fix cgroup ref leak in cgroup_bpf_inherit on out-of-memory (Yauheni Kaliuta) [1813372] - [net] bpf: Initialize storage pointers to NULL to prevent freeing garbage pointer (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Add test for JMP32 JSET BPF_X with upper bits set (Yauheni Kaliuta) [1813372] - [x86] bpf, x32: Fix bug with JMP32 JSET BPF_X checking upper bits (Yauheni Kaliuta) [1813372] - [net] bpf: Do not allow map_freeze in struct_ops map (Yauheni Kaliuta) [1813372] - [net] bpf: Return better error value in delete_elem for struct_ops map (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add send_signal_sched_switch test (Yauheni Kaliuta) [1813372] - [kernel] bpf: Fix deadlock with rq_lock in bpf_send_signal() (Yauheni Kaliuta) [1813372] - [net] bpf: Fix a potential deadlock with bpf_map_do_batch (Yauheni Kaliuta) [1813372] - [net] bpf: Do not grab the bucket spinlock by default on htab batch ops (Yauheni Kaliuta) [1813372] - [tools] libbpf: Sanitise internal map names so they are not rejected by the kernel (Yauheni Kaliuta) [1813372] - [tools] bpf, uapi: Remove text about bpf_redirect_map() giving higher performance (Yauheni Kaliuta) [1813372] - [net] bpf, offload: Replace bitwise AND by logical AND in bpf_prog_offload_info_fill (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Mark SYN cookie test skipped for UDP sockets (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix error checking on reading the tcp_fastopen sysctl (Yauheni Kaliuta) [1813372] - [net] bpf: Make btf_check_func_type_match() static (Yauheni Kaliuta) [1813372] - [tools] bpf: Selftests build error in sockmap_basic.c (Yauheni Kaliuta) [1813372] - [net] bpf: Improve bucket_log calculation logic (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Test freeing sockmap/sockhash with a socket in it (Yauheni Kaliuta) [1813372] - [tools] tools/bpf/runqslower: Rebuild libbpf.a on libbpf source change (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix trampoline_count.c selftest compilation warning (Yauheni Kaliuta) [1813372] - [net] bpf: Fix modifier skipping logic (Yauheni Kaliuta) [1813372] - [tools] bpftool: Remove redundant "HAVE" prefix from the large INSN limit check (Yauheni Kaliuta) [1813372] - [tools] runqslower: Fix Makefile (Yauheni Kaliuta) [1813372] - [net] bpf: Reuse log from btf_prase_vmlinux() in btf_struct_ops_init() (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test based on port range for BPF flow dissector (Yauheni Kaliuta) [1813372] - [net] bpf: map_seq_next should always increase position index (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Allow overriding llvm tools for runqslower (Yauheni Kaliuta) [1813372] - [tools] selftest/bpf: Add test for allowed trampolines count (Yauheni Kaliuta) [1813372] - [net] bpf: Allow to resolve bpf trampoline and dispatcher in unwind (Yauheni Kaliuta) [1813372] - [net] bpf: Allow BTF ctx access for string pointers (Yauheni Kaliuta) [1813372] - [tools] libbpf: Improve handling of failed CO-RE relocations (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Reset global state between reuseport test runs (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Make reuseport test output more legible (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Ignore FIN packets for reuseport tests (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Use a temporary file in test_sockmap (Yauheni Kaliuta) [1813372] - [tools] bpftool: Print function linkage in BTF dump (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Improve bpftool changes detection (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Initialize duration variable before using (Yauheni Kaliuta) [1813372] - [tools] bpf: tcp: Add bpf_cubic example (Yauheni Kaliuta) [1813372] - [tools] bpf: Sync uapi bpf.h to tools/ (Yauheni Kaliuta) [1813372] - [net] bpf: Add BPF_FUNC_jiffies64 (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add tests for program extensions (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add support for program extensions (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce dynamic program extensions (Yauheni Kaliuta) [1813372] - [scripts] bpf, btf: Always output invariant hit in pahole DWARF to BTF transform (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Build urandom_read with LDFLAGS and LDLIBS (Yauheni Kaliuta) [1813372] - [net] bpf: Fix error path under memory pressure (Yauheni Kaliuta) [1813372] - [net] bpf: don't bother with getname/kern_path - use user_path_at (Yauheni Kaliuta) [1813372] - [tools] selftests: Refactor build to remove tools/lib/bpf from include path (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] bpftool: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] runsqslower: Support user-specified libbpf include and object paths (Yauheni Kaliuta) [1813372] - [tools] tools/runqslower: Remove tools/lib/bpf from include path (Yauheni Kaliuta) [1813372] - [tools] selftests: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] tools/runqslower: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] selftests: Pass VMLINUX_BTF to runqslower Makefile (Yauheni Kaliuta) [1813372] - [tools] tools/bpf/runqslower: Fix override option for VMLINUX_BTF (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Don't try to remove user's homedir on clean (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Skip perf hw events test if the setup disabled it (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Don't check for btf fd in test_btf (Yauheni Kaliuta) [1813372] - [net] bpf: Fix memory leaks in generic update/delete batch ops (Yauheni Kaliuta) [1813372] - [tools] libbpf: Load btf_vmlinux only once per object (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix potential multiplication overflow in mmap() size calculation (Yauheni Kaliuta) [1813372] - [tools] libbpf: Simplify BTF initialization logic (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix error handling bug in btf_dump__new (Yauheni Kaliuta) [1813372] - [net] bpf: Remove set but not used variable 'first_key' (Yauheni Kaliuta) [1813372] - [tools] libbpf: Revert bpf_helper_defs.h inclusion regression (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix test_progs send_signal flakiness with nmi mode (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix unneeded extra initialization in bpf_map_batch_common (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add whitelist/blacklist of test names to test_progs (Yauheni Kaliuta) [1813372] - [tools] bpftool: Support dumping a map with btf_vmlinux_value_type_id (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add struct_ops map name (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose bpf_find_kernel_btf as a LIBBPF_API (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix missing BTF output for json during map dump (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix a leak of btf object (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add batch ops testing to array bpf map (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add batch ops testing for htab and htab_percpu map (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add libbpf support to batch ops (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Sync uapi header bpf.h (Yauheni Kaliuta) [1813372] - [net] bpf: Add batch ops to all htab bpf map (Yauheni Kaliuta) [1813372] - [net] bpf: Add lookup and update batch ops to arraymap (Yauheni Kaliuta) [1813372] - [net] bpf: Add generic support for update and delete batch ops (Yauheni Kaliuta) [1813372] - [net] bpf: Add generic support for lookup batch op (Yauheni Kaliuta) [1813372] - [net] bpf: Add bpf_map_{value_size, update_value, map_copy_value} functions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add a test for attaching a bpf fentry/fexit trace to an XDP program (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Add self tests for bpf_send_signal_thread() (Yauheni Kaliuta) [1813372] - [kernel] bpf: Add bpf_send_signal_thread() helper (Yauheni Kaliuta) [1813372] - [net] bpf: Fix seq_show for BPF_MAP_TYPE_STRUCT_OPS (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Build runqslower from selftests (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Add runqslower tool to tools/bpf (Yauheni Kaliuta) [1813372] - [tools] bpftool: Apply preserve_access_index attribute to all types in BTF dump (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Conform selftests/bpf Makefile output to libbpf and bpftool (Yauheni Kaliuta) [1813372] - [scripts] libbpf: Clean up bpf_helper_defs.h generation output (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add BPF_PROG, BPF_KPROBE, and BPF_KRETPROBE macros (Yauheni Kaliuta) [1813372] - [tools] libbpf: Poison kernel-only integer types (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add unit tests for global functions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Modify a test to check global functions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add a test for a large global function (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add fexit-to-skb test for global funcs (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce function-by-function verification (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Further clean up Makefile output (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Ensure bpf_helper_defs.h are taken from selftests dir (Yauheni Kaliuta) [1813372] - [tools] libbpf,selftests/bpf: Fix clean targets (Yauheni Kaliuta) [1813372] - [tools] libbpf: Make bpf_map order and indices stable (Yauheni Kaliuta) [1813372] - [tools] bpf: Document BPF_F_QUERY_EFFECTIVE flag (Yauheni Kaliuta) [1813372] - [tools] bpf: Add bpf_dctcp example (Yauheni Kaliuta) [1813372] - [tools] bpf: libbpf: Add STRUCT_OPS support (Yauheni Kaliuta) [1813372] - [tools] bpf: Synch uapi bpf.h to tools/ (Yauheni Kaliuta) [1813372] - [net] bpf: Add BPF_FUNC_tcp_send_ack helper (Yauheni Kaliuta) [1813372] - [net] bpf: tcp: Support tcp_congestion_ops in bpf (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce BPF_MAP_TYPE_STRUCT_OPS (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce BPF_PROG_TYPE_STRUCT_OPS (Yauheni Kaliuta) [1813372] - [net] bpf: Support bitfield read access in btf_struct_access (Yauheni Kaliuta) [1813372] - [net] bpf: Add enum support to btf_ctx_access() (Yauheni Kaliuta) [1813372] - [net] bpf: Avoid storing modifier to info->btf_id (Yauheni Kaliuta) [1813372] - [net] bpf: Save PTR_TO_BTF_ID register state when spilling to stack (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Restore original comm in test_overhead (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add misc section and probe for large INSN limit (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add probe for large INSN limit (Yauheni Kaliuta) [1813372] - [tools] bpftool: Make skeleton C code compilable with C++ compiler (Yauheni Kaliuta) [1813372] - [tools] bpf: Print error message for bpftool cgroup show (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Xdp_redirect_cpu fix missing tracepoint attach (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify transmit fill pattern (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify tx packet size (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify number of packets to send (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify batch size (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Use common code to handle signal and main exit (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add duration option to specify how long to run (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Preserve errno in test_progs CHECK macros (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Test BPF_F_REPLACE in cgroup_attach_multi (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Convert test_cgroup_attach to prog_tests (Yauheni Kaliuta) [1813372] - [tools] libbpf: Introduce bpf_prog_attach_xattr (Yauheni Kaliuta) [1813372] - [net] bpf: Support replacing cgroup-bpf program in MULTI mode (Yauheni Kaliuta) [1813372] - [net] bpf: Remove unused new_flags in hierarchy_allows_attach() (Yauheni Kaliuta) [1813372] - [net] bpf: Simplify __cgroup_bpf_attach (Yauheni Kaliuta) [1813372] - [net] bpf: Remove unnecessary assertion on fp_old (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix another __u64 printf warning (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix printing of ulimit value (Yauheni Kaliuta) [1813372] - [tools] libbpf: BTF is required when externs are present (Yauheni Kaliuta) [1813372] - [tools] libbpf: Allow to augment system Kconfig through extra optional config (Yauheni Kaliuta) [1813372] - [tools] libbpf: Put Kconfig externs into .kconfig section (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add bpf_link__disconnect() API to preserve underlying BPF resource (Yauheni Kaliuta) [1813372] - [tools] bpf: Allow to change skb mark in test_run (Yauheni Kaliuta) [1813372] - [tools] bpftool: Work-around rst2man conversion bug (Yauheni Kaliuta) [1813372] - [tools] bpftool: Simplify format string to not use positional args (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add gen subcommand manpage (Yauheni Kaliuta) [1813372] - [tools] libbpf: Remove BPF_EMBED_OBJ macro from libbpf.h (Yauheni Kaliuta) [1813372] - [tools] bpftool, selftests/bpf: Embed object file inside skeleton (Yauheni Kaliuta) [1813372] - [tools] libbpf: Reduce log level for custom section names (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix libbpf_common.h when installing libbpf through 'make install' (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: More succinct Makefile output (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add zlib as a dependency in pkg-config template (Yauheni Kaliuta) [1813372] - [tools] libbpf: Print hint about ulimit when getting permission denied error (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Attach XDP programs in driver mode by default (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Set -fno-stack-protector when building BPF programs (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Add missing -lz to TPROGS_LDLIBS (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix compilation warning on shadowed variable (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix build by renaming variables (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add flexible array relocation tests (Yauheni Kaliuta) [1813372] - [tools] libbpf: Support flexible arrays in CO-RE (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add tests for libbpf-provided externs (Yauheni Kaliuta) [1813372] - [tools] bpftool: Generate externs datasec in BPF skeleton (Yauheni Kaliuta) [1813372] - [tools] libbpf: Support libbpf-provided extern variables (Yauheni Kaliuta) [1813372] - [tools] libbpf: Extract internal map names into constants (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add `gen skeleton` BASH completions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test validating data section to struct convertion layout (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Convert few more selftest to skeletons (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add BPF skeletons selftests and convert attach_probe.c (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add skeleton codegen command (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add BPF object skeleton support (Yauheni Kaliuta) [1813372] - [tools] libbpf: Reduce log level of supported section names dump (Yauheni Kaliuta) [1813372] - [tools] libbpf: Postpone BTF ID finding for TRACING programs to load phase (Yauheni Kaliuta) [1813372] - [tools] libbpf: Refactor global data map initialization (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose BPF program's function name (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose BTF-to-C type declaration emitting API (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose btf__align_of() API (Yauheni Kaliuta) [1813372] - [tools] libbpf: Extract common user-facing helpers (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add BPF_EMBED_OBJ macro for embedding BPF .o files (Yauheni Kaliuta) [1813372] - [tools] libbpf: Move non-public APIs from libbpf.h to libbpf_internal.h (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add generic bpf_program__attach() (Yauheni Kaliuta) [1813372] - [tools] libbpf: Don't require root for bpf_object__open() (Yauheni Kaliuta) [1813372] - [tools] bpftool: Match maps by name (Yauheni Kaliuta) [1813372] - [tools] bpftool: Match programs by name (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Test wire_len/gso_segs in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813372] - [net] bpf: Expose __sk_buff wire_len/gso_segs to BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813372] - [x86] bpf, x86: Align dispatcher branch targets to 16B (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Add xdp_perf test (Yauheni Kaliuta) [1813372] - [net] bpf: Start using the BPF dispatcher in BPF_TEST_RUN (Yauheni Kaliuta) [1813372] - [net] bpf, xdp: Start using the BPF dispatcher for XDP (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce BPF dispatcher (Yauheni Kaliuta) [1813372] - [net] bpf: Move trampoline JIT image allocation to a function (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix perf_buffer test on systems w/ offline CPUs (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add CPU mask parsing tests (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Switch reuseport tests for test_progs framework (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Move reuseport tests under prog_tests/ (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Pull up printing the test name into test runner (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Propagate errors during setup for reuseport tests (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Run reuseport tests in a loop (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Unroll the main loop in reuseport test (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add helpers for getting socket family & type name (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Use sa_family_t everywhere in reuseport tests (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Let libbpf determine program type from section name (Yauheni Kaliuta) [1813372] - [tools] libbpf: Recognize SK_REUSEPORT programs from section name (Yauheni Kaliuta) [1813372] - [arm64] bpf, x86, arm64: Enable jit by default when not built as always-on (Yauheni Kaliuta) [1813372] - [net] bpf: Switch to offsetofend in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813372] - [tools] libbpf: Bump libpf current version to v0.0.7 (Yauheni Kaliuta) [1813372] - [fs] vmalloc: fix remap_vmalloc_range() bounds checks (Yauheni Kaliuta) [1813370] - [net] bpf: Prevent re-mmap()'ing BPF map as writable for initially r/o mapping (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: fix test_sysctl_prog with alu32 (Yauheni Kaliuta) [1813370] - [powerpc] powerpc/bpf: Enable bpf_probe_read{, str}() on powerpc again (Yauheni Kaliuta) [1813370] - [kernel] bpf: Restrict bpf_trace_printk()'s s usage and add pks, pus specifier (Yauheni Kaliuta) [1813370] - [lib] printf: add support for printing symbolic error names (Yauheni Kaliuta) [1813370] - [net] bpf: Add bpf_probe_read_{user, kernel}_str() to do_refine_retval_range (Yauheni Kaliuta) [1813370] - [arm64] bpf: Restrict bpf_probe_read{, str}() only to archs where they work (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Fix accounting bug with direct->count in register_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Return the first found result in lookup_rec() (Yauheni Kaliuta) [1813370] - [net] bpf: Undo incorrect __reg_bound_offset32 handling (Yauheni Kaliuta) [1813370] - [net] bpf: Fix tnum constraints for 32-bit comparisons (Yauheni Kaliuta) [1813370] - [x86] x86: Fix kernel-doc atomic.h warnings (Yauheni Kaliuta) [1813370] - [net] bpf: Fix trampoline usage in preempt (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Reintroduce missed build targets (Yauheni Kaliuta) [1813370] - [trace] bpf: Reliably preserve btf_trace_xxx types (Yauheni Kaliuta) [1813370] - [include] bpf: Avoid setting bpf insns pages read-only when prog is jited (Yauheni Kaliuta) [1813370] - [scripts] bpf: Force .BTF section start to zero when dumping from vmlinux (Yauheni Kaliuta) [1813370] - [scripts] bpf: Support pre-2.25-binutils objcopy for vmlinux BTF (Yauheni Kaliuta) [1813370] - [net] bpfilter: remove superfluous testing message (Jiri Benc) [1819632] - [net] bpfilter: fix dprintf usage for /dev/kmsg (Jiri Benc) [1819632] - [net] bpf, sockmap: Remove bucket->lock from sock_{hash|map}_free (Jiri Benc) [1819632] - [netdrv] veth: ignore peer tx_dropped when counting local rx_dropped (Jiri Benc) [1819632] - [net] xsk: Publish global consumer pointers when NAPI is finished (Jiri Benc) [1819632] - [kernel] bpf, xdp: Remove no longer required rcu_read_{un}lock() (Jiri Benc) [1819632] - [netdrv] bpf, xdp: virtio_net use access ptr macro for xdp enable check (Jiri Benc) [1819632] - [kernel] bpf, xdp: Update devmap comments to reflect napi/rcu usage (Jiri Benc) [1819632] - [net] xsk, net: Make sock_def_readable() have external linkage (Jiri Benc) [1819632] - [kernel] devmap: Adjust tracepoint for map-less queue flush (Jiri Benc) [1819632] - [net] xdp: Use bulking for non-map XDP_REDIRECT and consolidate code paths (Jiri Benc) [1819632] - [net] xdp: Move devmap bulk queue into struct net_device (Jiri Benc) [1819632] - [net] xsk: Support allocations of large umems (Jiri Benc) [1819632] - [tools] Sync uapi/linux/if_link.h (Jiri Benc) [1819632] - [net] bpf: Return -EBADRQC for invalid map type in __bpf_tx_xdp_map (Jiri Benc) [1819632] - [net] flow_dissector: fix document for skb_flow_get_icmp_tci (Jiri Benc) [1819632] - [net] xsk: Use struct_size() helper (Jiri Benc) [1819632] - [net] xsk: Add function naming comments and reorder functions (Jiri Benc) [1819632] - [net] xsk: Remove unnecessary READ_ONCE of data (Jiri Benc) [1819632] - [net] xsk: ixgbe: i40e: ice: mlx5: Xsk_umem_discard_addr to xsk_umem_release_addr (Jiri Benc) [1819632] - [net] xsk: Change names of validation functions (Jiri Benc) [1819632] - [net] xsk: Simplify the consumer ring access functions (Jiri Benc) [1819632] - [net] xsk: Simplify xskq_nb_avail and xskq_nb_free (Jiri Benc) [1819632] - [net] xsk: Eliminate the RX batch size (Jiri Benc) [1819632] - [net] xsk: Standardize naming of producer ring access functions (Jiri Benc) [1819632] - [net] xsk: Consolidate to one single cached producer pointer (Jiri Benc) [1819632] - [net] xsk: Simplify detection of empty and full rings (Jiri Benc) [1819632] - [net] xsk: Eliminate the lazy update threshold (Jiri Benc) [1819632] - [net] xdp: Simplify __bpf_tx_xdp_map() (Jiri Benc) [1819632] - [net] xdp: Remove map_to_flush and map swap detection (Jiri Benc) [1819632] - [net] xdp: Make cpumap flush_list common for all map instances (Jiri Benc) [1819632] - [net] xdp: Make devmap flush_list common for all map instances (Jiri Benc) [1819632] - [net] xsk: Make xskmap flush_list common for all map instances (Jiri Benc) [1819632] - [kernel] xdp: Fix graze->grace type-o in cpumap comments (Jiri Benc) [1819632] - [kernel] xdp: Simplify cpumap cleanup (Jiri Benc) [1819632] - [kernel] xdp: Simplify devmap cleanup (Jiri Benc) [1819632] - [net] sysctl: Fix compiler warning when only cBPF is present (Jiri Benc) [1819631] - [net] dsa: fix flow dissection on Tx path (Jiri Benc) [1819631] - [net] page_pool: add the possibility to sync DMA memory for device (Jiri Benc) [1819631] - [net] xsk: Fix xsk_poll()'s return type (Jiri Benc) [1819631] - [tools] net-af_xdp: Use correct number of channels from ethtool (Jiri Benc) [1819631] - [net] xdp: remove memory poison on free for struct xdp_mem_allocator (Jiri Benc) [1819631] - [documentation] xsk: Extend documentation for Rx|Tx-only sockets and shared umems (Jiri Benc) [1819631] - [net] xsk: Restructure/inline XSKMAP lookup/redirect/flush (Jiri Benc) [1819631] - [kernel] xsk: Store struct xdp_sock as a flexible array member of the XSKMAP (Jiri Benc) [1819631] - [include] xdp: Fix type of string pointer in __XDP_ACT_SYM_TAB (Jiri Benc) [1819631] - [documentation] xsk: Improve documentation for AF_XDP (Jiri Benc) [1819631] - [tools] Sync if_link.h (Jiri Benc) [1819631] - [net] xdp: Trivial, fix spelling in function description (Jiri Benc) [1819631] - [netdrv] netdevsim: Use scnprintf() for avoiding potential buffer overflow (Jiri Benc) [1819631] - [netdrv] netdevsim: fix ptr_ret.cocci warnings (Jiri Benc) [1819631] - [netdrv] netdevsim: remove unused sdev code (Jiri Benc) [1819631] - [netdrv] netdevsim: use IS_ERR instead of IS_ERR_OR_NULL for debugfs (Jiri Benc) [1819631] - [netdrv] netdevsim: fix stack-out-of-bounds in nsim_dev_debugfs_init() (Jiri Benc) [1819631] - [netdrv] netdevsim: fix panic in nsim_dev_take_snapshot_write() (Jiri Benc) [1819631] - [net] openvswitch: New MPLS actions for layer 2 tunnelling (Guillaume Nault) [1839760] - [net] Rephrased comments section of skb_mpls_pop() (Guillaume Nault) [1839760] - [net] skb_mpls_push() modified to allow MPLS header push at start of packet. (Guillaume Nault) [1839760] - [net] Change in Openvswitch to support MPLS label depth of 3 in ingress direction (Guillaume Nault) [1839182] - [block] block: fix use-after-free on cached last_lookup partition (Ming Lei) [1787968]- [drm] drm/prime: fix extracting of the DMA addresses from a scatterlist (Jerry Snitselaar) [1815610] - [iommu] iommu: Check for deferred attach in iommu_group_do_dma_attach() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add get_domain_info() helper (Jerry Snitselaar) [1815610] - [iommu] iommu: Don't take group reference in iommu_alloc_default_domain() (Jerry Snitselaar) [1815610] - [iommu] iommu: Don't call .probe_finalize() under group->mutex (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Apply per-device dma_ops (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Allow PCI sub-hierarchy to use DMA domain (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Allow 32bit devices to uses DMA domain (Jerry Snitselaar) [1815610] - [iommu] iommu: Do not probe devices on IOMMU-less busses (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix variable "iommu" set but not used (Jerry Snitselaar) [1815610] - [iommu] iommu: Unexport iommu_group_get_for_dev() (Jerry Snitselaar) [1815610] - [iommu] iommu: Move more initialization to __iommu_probe_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Remove add_device()/remove_device() code-paths (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Axe a useless test in 'arm_smmu_master_alloc_smes()' (Jerry Snitselaar) [1815610] - [iommu] iommu/s390: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove dev_data->passthrough (Jerry Snitselaar) [1815610] - [iommu] iommu: Export bus_iommu_probe() and make is safe for re-probing (Jerry Snitselaar) [1815610] - [iommu] iommu: Move iommu_group_create_direct_mappings() out of iommu_group_add_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Split off default domain allocation from group assignment (Jerry Snitselaar) [1815610] - [iommu] iommu: Move new probe_device path to separate function (Jerry Snitselaar) [1815610] - [iommu] iommu: Keep a list of allocated groups in __iommu_probe_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Move default domain allocation to iommu_probe_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Add probe_device() and release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Return -ENODEV in add_device when device is not handled by IOMMU (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove dma_mask check from check_device() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Wire up iommu_ops->def_domain_type (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Implement iommu_ops->def_domain_type call-back (Jerry Snitselaar) [1815610] - [iommu] iommu: Add def_domain_type() callback in iommu_ops (Jerry Snitselaar) [1815610] - [iommu] iommu: Move default domain allocation to separate function (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix reference count leak in iommu_group_alloc (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove real DMA lookup in find_domain (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Allocate domain info for real DMA sub-devices (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Only clear real DMA device's context entries (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix get_acpihid_device_id() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Switch to use acpi_dev_hid_uid_match() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix over-read of ACPI UID from IVRS table (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix deferred domain attachment (Jerry Snitselaar) [1815610] - [include] iommu: Move fwspec->iommu_priv to struct dev_iommu (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Use accessor functions for iommu private data (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Refactor master_cfg/fwspec usage (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Use accessor functions for iommu private data (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Improve add_device() error handling (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Return -EBUSY when trying to re-add a device (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Fix resource_size check (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Populate VMID field for CMDQ_OP_TLBI_NH_VA (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Drop __GFP_ZERO flag from DMA allocation (Jerry Snitselaar) [1815610] - [include] iommu: Introduce accessors for iommu private data (Jerry Snitselaar) [1815610] - [acpi] ACPI/IORT: Remove direct access of dev->iommu_fwspec (Jerry Snitselaar) [1815610] - [include] iommu: Define dev_iommu_fwspec_get() for !CONFIG_IOMMU_API (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Do not flush Device Table in iommu_map_page() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Update Device Table in increase_address_space() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Call domain_flush_complete() in update_domain() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Do not loop forever when trying to increase address space (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix race in increase_address_space()/fetch_pte() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix legacy interrupt remapping for x2APIC-enabled system (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix the memory leak in dev_iommu_free() (Jerry Snitselaar) [1815610] - [include] iommu: Move iommu_fwspec to struct dev_iommu (Jerry Snitselaar) [1815610] - [include] iommu: Rename struct iommu_param to dev_iommu (Jerry Snitselaar) [1815610] - [iommu] iommu/of: Take a ref to the IOMMU driver during ->of_xlate() (Jerry Snitselaar) [1815610] - [iommu] drivers/iommu: Take a ref to the IOMMU driver prior to ->add_device() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix mm reference leak (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix the configuration of GCR3 table root pointer (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Silence RCU-list debugging warning in dmar_find_atsr() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix page request descriptor size (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Populate debugfs if IOMMUs are detected (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Ignore devices with out-of-spec domain number (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix the wrong printing in RHSA parsing (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix debugfs register reads (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: quirk_ioat_snb_local_iommu: replace WARN_TAINT with pr_warn + add_taint (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: dmar_parse_one_rmrr: replace WARN_TAINT with pr_warn + add_taint (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: dmar: replace WARN_TAINT with pr_warn + add_taint (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Silence RCU-list debugging warnings (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix RCU-list bugs in intel_iommu_init() (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Fix MSI reservation allocation (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix a bug in intel_iommu_iova_to_phys() for huge page (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Disable IOMMU on Stoney Ridge systems (Jerry Snitselaar) [1815610] - [iommu] iommu: intel: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu: amd: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu: arm: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu: Implement generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu/iova: Silence warnings under memory pressure (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix Kconfig indentation (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove unnecessary WARN_ON_ONCE() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Unnecessary to handle default identity domain (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add RMRR base and end addresses sanity check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Mark firmware tainted if RMRR fails sanity check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Don't reject Host Bridge due to scope mismatch (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Loose requirement for flush queue initializaton (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Avoid iova flush queue in strict mode (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: trace: Extend map_sg trace event (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Avoid sending invalid page response (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix off-by-one in PASID allocation (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Avoid duplicated code for PASID setup (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Reject SVM bind for failed capability check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Match CPU and IOMMU paging mode (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix CPU and IOMMU SVM feature matching checks (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove VMD child device sanity check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Use pci_real_dma_dev() for mapping (Jerry Snitselaar) [1815610] - [pci] PCI: Introduce pci_real_dma_dev() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove the unnecessary assignment (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove unused struct member (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Replace two consecutive readl calls with one readq (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix typos for PPR macros (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove local variables (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove unused variable (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Only support x2APIC with IVHD type 11h/40h (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Check feature support bit before accessing MSI capability registers (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Treat per-device exclusion ranges as r/w unity-mapped regions (Jerry Snitselaar) [1815610] - [iommu] iommu: Use C99 flexible array in fwspec (Jerry Snitselaar) [1833512 1815610] - [iommu] drivers/iommu: Allow IOMMU bus ops to be unregistered (Jerry Snitselaar) [1815610] - [iommu] iommu/of: Request ACS from the PCI core when configuring IOMMU linkage (Jerry Snitselaar) [1815610] - [iommu] drivers/iommu: Export core IOMMU API symbols to permit modular drivers (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix IOMMU perf counter clobbering during init (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: fix variable 'cookie' set but not used (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Unlink device if failed to add to group (Jerry Snitselaar) [1815610] - [iommu] iommu: Remove device link to group on failure (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix adding non-PCI devices to Intel IOMMU (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Relax locking in iommu_dma_prepare_msi() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove incorrect PSI capability check (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Rationalise types for DMA masks (Jerry Snitselaar) [1815610] - [iommu] iommu/iova: Init the struct iova to fix the possible memleak (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Check VT-d RMRR region in BIOS is reported as reserved (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Turn off translations at shutdown (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Support multiple PCI DMA aliases in IRQ Remapping (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Support multiple PCI DMA aliases in device table (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Do not re-fetch iommu->cmd_buf_tail (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Pass gfp flags to iommu_map_page() in amd_iommu_map() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Simpify decoding logic for INVALID_PPR_REQUEST event (Jerry Snitselaar) [1815610] - [drm] drm/prime: use dma length macro when mapping sg (Jerry Snitselaar) [1815610] - [drm] drm/amdgpu: fix scatter-gather mapping with user pages (Jerry Snitselaar) [1815610] - [drm] drm/radeon: fix scatter-gather mapping with user pages (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Convert AMD iommu driver to the dma-iommu api (Jerry Snitselaar) [1815610] - [iommu] iommu/dma-iommu: Use the dev->coherent_dma_mask (Jerry Snitselaar) [1815610] - [iommu] iommu/dma-iommu: Handle deferred devices (Jerry Snitselaar) [1815610] - [include] iommu: KABI cleanup (Jerry Snitselaar) [1815610] - [iommu] iommu: Add gfp parameter to iommu_ops::map (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove unnecessary locking from AMD iommu driver (Jerry Snitselaar) [1815610] - [iommu] drivers: iommu: hyperv: Make HYPERV_IOMMU only available on x86 (Jerry Snitselaar) [1815610] - [include] iommu/vt-d: Fix QI_DEV_IOTLB_PFSID and QI_DEV_EIOTLB_PFSID macros (Jerry Snitselaar) [1815610] - [iommu] iommu: pass cell_count = -1 to of_for_each_phandle with cells_name (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Free context bitmap in the err path of arm_smmu_init_domain_context (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Return the correct dma mask when we are bypassing the IOMMU (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Apply the same IVRS IOAPIC workaround to Acer Aspire A315-41 (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Mask TLBI address correctly (Jerry Snitselaar) [1815610] - [iommu] iommu: Remove wrong default domain comments (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Fix for dereferencing before null checking (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Declare Broadwell igfx dmar support snafu (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add Scalable Mode fault information (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Use bounce buffer for untrusted devices (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add trace events for device dma map/unmap (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Don't switch off swiotlb if bounce page is used (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Check whether device requires bounce buffer (Jerry Snitselaar) [1815610] - [dma] swiotlb: Split size parameter to map/unmap APIs (Jerry Snitselaar) [1815610] - [xen] swiotlb-xen: use ->map_page to implement ->map_sg (Jerry Snitselaar) [1815610] - [xen] swiotlb-xen: make instances match their method names (Jerry Snitselaar) [1815610] - [uapi] iommu: Add padding to struct iommu_fault (Jerry Snitselaar) [1815610] - [iommu] iommu: Add recoverable fault reporting (Jerry Snitselaar) [1815610] - [iommu] iommu: Introduce device fault report API (Jerry Snitselaar) [1815610] - [include] driver core: Add per device iommu param (Jerry Snitselaar) [1815610] - [uapi] iommu: Introduce device fault data (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Silence warnings under memory pressure (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Override wrong IVRS IOAPIC on Raven Ridge systems (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Use dma_direct for bypass devices (Jerry Snitselaar) [1815610] - [dma] dma-direct: don't check swiotlb=force in dma_direct_map_resource (Jerry Snitselaar) [1815610] - [mm] dma-mapping: remove the default map_resource implementation (Jerry Snitselaar) [1815610] - [iommu] Revert "iommu/vt-d: Fix lock inversion between iommu->lock and device_domain_lock" (Jerry Snitselaar) [1815610 1813666] - [dma] dma-direct: don't truncate dma_required_mask to bus addressing capabilities (Jerry Snitselaar) [1815610] - [acpi] ACPI / utils: Introduce acpi_dev_hid_uid_match() helper (Jerry Snitselaar) [1815610] - [security] efi: Only print errors about failing to get certs if EFI vars are found (Lenny Szubowicz) [1804969] - [infiniband] RDMA/iw_cxgb4: Fix incorrect function parameters (Vishal Kulkarni) [1828676] - [infiniband] RDMA/iw_cxgb4: initiate CLOSE when entering TERM (Vishal Kulkarni) [1828676] - [infiniband] RDMA/iw_cgxb4: Fix an error handling path in 'c4iw_connect()' (Vishal Kulkarni) [1828676] - [infiniband] RDMA/iw_cxgb4: Avoid freeing skb twice in arp failure case (Vishal Kulkarni) [1828676] - [infiniband] iw_cxgb4: fix ECN check on the passive accept (Vishal Kulkarni) [1828676] - [vfio] vfio/pci: fix memory leaks of eventfd ctx (Alex Williamson) [1837678] - [vfio] vfio/pci: fix memory leaks in alloc_perm_bits() (Alex Williamson) [1837678] - [vfio] vfio: avoid possible overflow in vfio_iommu_type1_pin_pages (Alex Williamson) [1837678] - [vfio] vfio/mdev: make create attribute static (Alex Williamson) [1837678] - [vfio] vfio/type1: remove hugepage checks in is_invalid_reserved_pfn() (Alex Williamson) [1837678] - [vfio] vfio/type1: Initialize resv_msi_base (Alex Williamson) [1837678] - [vfio] vfio_pci: Restore original state on release (Alex Williamson) [1837678] - [uapi] vfio: re-arrange vfio region definitions (Alex Williamson) [1837678] - [vfio] mdev: Send uevents around parent device registration (Alex Williamson) [1837678] - [vfio] vfio/mdev: Synchronize device create/remove with parent removal (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid creating sysfs remove file on stale device removal (Alex Williamson) [1837678] - [vfio] vfio/mdev: Improve the create/remove sequence (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid inline get and put parent helpers (Alex Williamson) [1837678] - [vfio] vfio/mdev: Fix aborting mdev child device removal if one fails (Alex Williamson) [1837678] - [vfio] vfio/mdev: Follow correct remove sequence (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid masking error code to EBUSY (Alex Williamson) [1837678] - [vfio] vfio/mdev: Removed unused kref (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid release parent reference during error path (Alex Williamson) [1837678] - [uapi] vfio-ccw: add handling for async channel instructions (Alex Williamson) [1837678] - [uapi] vfio-ccw: add capabilities chain (Alex Williamson) [1837678] - [vfio] vfio: Fix WARNING "do not call blocking ops when !TASK_RUNNING" (Alex Williamson) [1837678] - [vfio] vfio/pci: use correct format characters (Alex Williamson) [1837678] - [vfio] vfio: expand minor range when registering chrdev region (Alex Williamson) [1837678] - [vfio] vfio/mdev: add static modifier to add_mdev_supported_type (Alex Williamson) [1837678] - [vfio] vfio/type1: Remove map_try_harder() code path (Alex Williamson) [1837678] - [vfio] vfio/pci: Fix potential memory leak in vfio_msi_cap_len (Alex Williamson) [1837678] - [vfio] vfio: Mark expected switch fall-throughs (Alex Williamson) [1837678] - [fs] gfs2: Only do glock put in gfs2_create_inode for free inodes (Robert S Peterson) [1831666] - [fs] gfs2: Grab glock reference sooner in gfs2_add_revoke (Robert S Peterson) [1831666] - [fs] Revert "gfs2: Don't demote a glock until its revokes are written" (Robert S Peterson) [1831666] - [fs] signal: Fix wrong PIDTYPE_TGID check in send_sigio() & send_sigurg() (Waiman Long) [1845597] - [md] dm mpath: add DM device name to Failing/Reinstating path log messages (Mike Snitzer) [1822975] - [md] dm mpath: enhance queue_if_no_path debugging (Mike Snitzer) [1822975] - [md] dm mpath: restrict queue_if_no_path state machine (Mike Snitzer) [1822975] - [md] dm mpath: simplify __must_push_back (Mike Snitzer) [1822975] - [md] dm: use DMDEBUG macros now that they use pr_debug variants (Mike Snitzer) [1822975] - [include] dm: use dynamic debug instead of compile-time config option (Mike Snitzer) [1822975] - [md] dm mpath: switch paths in dm_blk_ioctl() code path (Mike Snitzer) [1822975] - [md] dm multipath: use updated MPATHF_QUEUE_IO on mapping for bio-based mpath (Mike Snitzer) [1822975] - [tools] selftests: mlxsw: qos_mc_aware: Specify arping timeout as an integer (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix use-after-free of split/unsplit/type_set in case reload fails (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl_tcam: Position vchunk in a vregion list properly (Ivan Vecera) [1821646] - [netdrv] mlxsw: Fix some IS_ERR() vs NULL bugs (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Do not stop at FLOW_ACTION_VLAN_MANGLE (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Do not stop at FLOW_ACTION_PRIORITY (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: fix unintention integer overflow on left shift (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap policers (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Add support for setting of packet trap group parameters (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Switch to use correct packet trap group (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Do not initialize dedicated discard policer (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Add devlink-trap policer support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Prepare policers for registration with devlink (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Track used packet trap policer IDs (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Extend QPCR register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_ptp: Fix build warnings (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Avoid uninitialized symbol errors (Ivan Vecera) [1821646] - [netdrv] mlxsw: switchx2: Remove unnecessary conversion to bool (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl: Avoid defining static variable in header file (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Remove unused RIF and FID families (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Add proper function documentation (Ivan Vecera) [1821646] - [netdrv] mlxsw: i2c: Add missing field documentation (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Fix list iteration in error path (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: qos_dscp_router: Test no DSCP rewrite after pedit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Offload FLOW_ACTION_MANGLE (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add DSCP, ECN, dscp_rw to QOS_ACTION (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Rename mlxsw_afa_qos_cmd to mlxsw_afa_qos_switch_prio_cmd (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Explicitly register packet trap groups (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Fix 64-bit division in mlxsw_sp_counter_resources_register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Offload FLOW_ACTION_PRIORITY (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add QOS_ACTION (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Only issue reset when system is ready (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add tc action hw_stats tests (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Expose devlink resource occupancy for counters (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Consolidate subpools initialization (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Move config validation along with resource register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Expose subpool sizes over devlink resources (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Add entry_size_res_id for each subpool and use it to query entry size (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Move sub_pools under per-instance pool struct (Ivan Vecera) [1821646] - [tools] selftests: spectrum-2: Adjust tc_flower_scale limit according to current counter count (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Query bank size from FW resources (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Increase register field length to 31 bits (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: RED: Test RED ECN nodrop offload (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Offload RED ECN nodrop mode (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Ask device for rule stats only if counter was created (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Support offloading of FIFO Qdisc (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Add handle parameter to ..._ops.replace (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Introduce struct mlxsw_sp_qdisc_state (Ivan Vecera) [1821646] - [netdrv] net: mlxfw: Replace zero-length array with flexible-array member (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: qos_defprio: Use until_counter_is (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Wait longer before accessing the device after reset (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Update module_type values in PMTM register and map them to width (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: resource_scale: Invoke for Spectrum-3 (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Reduce router scale running time using offload indication (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Reduce running time using offload indication (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add shared buffer traffic test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add mlxsw lib (Ivan Vecera) [1821646] - [tools] selftests: devlink_lib: Add devlink port helpers (Ivan Vecera) [1821646] - [tools] selftests: devlink_lib: Check devlink info command is supported (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add shared buffer configuration test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Use busywait helper in rtnetlink test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Use busywait helper in vxlan test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Use busywait helper in blackhole routes test (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_l3_drops: Avoid race condition (Ivan Vecera) [1821646] - [tools] selftests: add a mirror test to mlxsw tc flower restrictions (Ivan Vecera) [1821646] - [tools] selftests: add egress redirect test to mlxsw tc flower restrictions (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add mlxsw_sp_span_ops.buffsize_get for Spectrum-3 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Initialize advertised speeds to supported speeds (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Move the ECN-marked packet counter to ethtool (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Optimize SFN records processing (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Lookup and pass cookie down to devlink_trap_report() (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Extract cookie index for ACL discard trap packets (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl_flex_actions: Implement flow_offload action cookie offload (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl_flex_actions: Add trap with userdef action (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: fix spelling mistake: "progamming" -> "programming" (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_acl_drops: Add ACL traps test (Ivan Vecera) [1821646] - [tools] selftests: pass pref and handle to devlink_trap_drop_* helpers (Ivan Vecera) [1821646] - [tools] selftests: introduce test for mlxsw tc flower restrictions (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Add ACL devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Introduce dummy group with thin policer (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Extend MLXSW_RXL_DIS to register disabled trap group (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Allow to enable/disable rx_listener for trap (Ivan Vecera) [1821646] - [netdrv] mlxsw: acl_flex_actions: Trap all ACL dropped packets to DISCARD_*_ACL traps (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Pass the ingress indication down to flex action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Disable mixed bound blocks to contain action drop (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Track ingress and egress block bindings (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Prepare mlxsw_core_trap_action_set() to handle not only action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Use listener->en/dis_action instead of hard-coded values (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Allow to register disabled traps using MLXSW_RXL_DIS (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Set unreg_action to be SET_FW_DEFAULT (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Remove unused values (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove priv from listener equality comparison (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Make block arg const where appropriate (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Make global arrays const as they should be (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove initialization to false of mlxsw_listener struct (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Convert is_event and is_ctrl bools to be single bits (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove dummy union name from struct mlxsw_listener (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove unused action field from mlxsw_rx_listener struct (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Move policer initialization to mlxsw_sp_trap_init() (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl_flex_actions: Rename Trap / Discard Action to Trap Action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Move functions to avoid their forward declarations (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Use err variable instead of directly checking func return value (Ivan Vecera) [1821646] - [netdrv] net/mlx5: Add fsm_reactivate callback support (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Add reactivate flow support to FSM burn flow (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Use MLXFW_ERR_MSG macro for error reporting (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Convert pr_* to dev_* in mlxfw_fsm.c (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: More error messages coverage (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Improve FSM err message reporting and return codes (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Generic mlx FW flash status notify (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Remove RTNL where possible (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from exported helpers (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from inetaddr listeners (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from netdev listener (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_dpipe: Take router lock from dpipe code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from inside routing code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Introduce router lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Store NVE decapsulation configuration in router (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Expose router struct to internal users (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Protect multicast route list with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Protect multicast table list with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Publish multicast route after writing it to the device (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_nve: Make tunnel initialization symmetric (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Export function to check if RIF exists (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Prevent RIF access outside of routing code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Prepare function for router lock introduction (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Prepare function for router lock introduction (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Do not assume RTNL is taken when resolving underlay device (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Do not assume RTNL is taken during RIF teardown (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Do not assume RTNL is taken during nexthop init (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Only update mirroring agents if present (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Convert callers to use new mirroring API (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Prepare work item to update mirroring agents (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Use struct_size() to simplify allocation (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Do no expose mirroring agents to entire driver (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Protect counter pool with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_kvdl: Protect allocations with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: Replace zero-length array with flexible-array member (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: vxlan: Add test for error path (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: vxlan: Adjust test to recent changes (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: extack: Test creation of multiple VLAN-aware bridges (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: extack: Test bridge creation with VXLAN (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Remove deprecated test (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Reduce dependency between bridge and router code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Remove VXLAN checks during FID membership (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Have VXLAN device take reference on FID (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Propagate extack to bridge creation function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_fid: Use 'refcount_t' for FID reference counting (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_dpipe: Add missing error path (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add validation of hardware device types for MGPIR register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Clear offload indication from IPv6 nexthops on abort (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for local table route replacement (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Fix 64-bit division error in mlxsw_sp_qdisc_tbf_rate_kbps (Ivan Vecera) [1821646] - [netdrv] mlxsw: minimal: Fix an error handling path in 'mlxsw_m_port_create()' (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Support offloading of TBF Qdisc (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Configure shaper rate and burst size together (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add lowest_shaper_bs to struct mlxsw_sp (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Increase MLXSW_REG_QEEC_MAS_DIS (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add max_shaper_bs to QoS ETS Element Configuration (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Extract a common leaf unoffload function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Add mlxsw_sp_qdisc_get_class_stats() (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Extract a per-TC stat function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Fix use-after-free during reload (Ivan Vecera) [1821646] - [netdrv] spectrum: Add a delayed work to update SPAN buffsize according to speed (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix SPAN egress mirroring buffer size for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Put buffsize update code into helper function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Push code getting port speed into a helper (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_tunnel_vxlan: Add test case for overlay_smac_is_mc (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add OVERLAY_SMAC_MC trap (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_tunnel_ipip: Add test case for decap_error (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_tunnel_vxlan: Add test case for decap_error (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add tunnel devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Reorder cases according to enum order (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add ECN configurations with IPinIP tunnels (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add Tunneling IPinIP Decapsulation ECN Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add Tunneling IPinIP Encapsulation ECN Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add NON_ROUTABLE trap (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_l3_drops: Add test cases of irif and erif disabled (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add irif and erif disabled traps (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Include MC TCs in Qdisc counters (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Wipe xstats.backlog of down ports (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: qos_mc_aware: Fix mausezahn invocation (Ivan Vecera) [1821646] - [netdrv] mlxsw: switchx2: Do not modify cloned SKBs during xmit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Do not modify cloned SKBs during xmit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Do not enforce same firmware version for multiple ASICs (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test for FIB offload API (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Set hardware flags for routes (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Separate nexthop offload indication from route (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Only require minimum firmware version (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Update firmware version to xx.2000.2714 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Ignore grafting of invisible FIFO (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable DIP_LINK_LOCAL check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable SIP_DIP check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable MC_DMAC check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable SIP_CLASS_E check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_dcb: Allow setting default port priority (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add QoS Port DSCP to Priority Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Support offloading of ETS Qdisc (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Generalize PRIO offload to support ETS (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Rename MLXSW_REG_QEEC_HIERARCY_* enumerators (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Clarify a comment (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use dedicated policer for VRRP packets (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Skip loopback RIFs during MAC validation (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Fix out-of-memory error in mfa2 flash burning (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Fix use of uninitialized adjacency index (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: After underlay moves, demote conflicting tunnels (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Check devlink device before running test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add router scale test for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Fix determining underlay for a GRE tunnel (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Verify FSM error code translation doesn't exceed array size (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Allocate discard adjacency entry when needed (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Enable EMAD string TLV (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add support for using EMAD string TLV (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Extend EMAD information reported to devlink hwerr (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add support for EMAD string TLV parsing (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add EMAD string TLV (Ivan Vecera) [1821646] - [netdrv] mlxsw: emad: Remove deprecated EMAD TLVs (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Parse TLVs' offsets of incoming EMADs (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Enable devlink reload only on probe (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap layer 3 exceptions (Ivan Vecera) [1821646] - [tools] selftests: forwarding: devlink: Add functionality for trap exceptions test (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add layer 3 devlink-trap exceptions support (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add specific trap for packets routed via invalid nexthops (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add new FIB entry type for reject routes (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap layer 3 drops (Ivan Vecera) [1821646] - [tools] selftests: devlink: Make devlink_trap_cleanup() more generic (Ivan Vecera) [1821646] - [tools] selftests: devlink: Export functions to devlink library (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add layer 3 devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix error return code in mlxsw_sp_port_module_info_init() (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Generalize split count check (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Iterate over all ports in gap during unsplit create (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix base port get for split count 4 and 8 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use port_module_max_width to compute base port index (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Remember split base local port and use it in unsplit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Introduce resource for getting offset of 4 lanes split port (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Push getting offsets of split ports into a helper (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add sanity checks into module info get (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Pass mapping values in port mapping structure (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use mapping of port being split for creating split ports (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Replace port_to_module array with array of structs (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Distinguish between unsplittable and split port (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Move max_width check up before count check (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use PMTM register to get max module width (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add Port Module Type Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Extend PMLP tx/rx lane value size to 4 bits (Ivan Vecera) [1821646] - [netdrv] mlxsw: Fix 64-bit division in mlxsw_sp_sb_prs_init (Ivan Vecera) [1821646] - [netdrv] mlxsw: Enforce firmware version for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] mlxsw: Bump firmware version to 13.2000.2308 (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Increase PCI reset timeout for SN3800 systems (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Increase size of MPAR register (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Unpublish devlink parameters during reload (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: remove unneeded semicolon (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: Calculate the size of the main pool (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use guaranteed buffer size as pool size limit (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Extend QSFP EEPROM size for ethtool (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add macro for getting QSFP module EEPROM page number (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Push Ethernet header before reporting trap (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add Spectrum-2 target scale for tc flower scale test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add a resource scale test for Spectrum-2 (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add Spectrum-2 mirror-to-gretap target scale test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Generalize the parameters of mirror_gre test (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Register switched port analyzers (SPAN) as resource (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add support for 400Gbps (50Gbps per lane) link modes (Ivan Vecera) [1821646] - [netdrv] mlxsw: minimal: Add validation for FW version (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Push minor/subminor fw version check into helper (Ivan Vecera) [1821646] - [netdrv] mlxsw: thermal: Provide optimization for QSFP modules number detection (Ivan Vecera) [1821646] - [netdrv] mlxsw: hwmon: Provide optimization for QSFP modules number detection (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Extend MGPIR register with new field exposing the number of QSFP modules (Ivan Vecera) [1821646] - [netdrv] mlxsw: Propagate extack down to register_fib_notifier() (Ivan Vecera) [1821646] - [netdrv] mlxsw: Register port netdevices into net of core (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Take devlink net instead of init_net (Ivan Vecera) [1821646] - [netdrv] mlxsw: PCI: Send EMAD traffic on a separate queue (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use per-netns netdevice notifier registration (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Fail in case user specifies multiple mirror actions (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Clear VLAN filters during port initialization (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: Add the ability to query the CPU port's shared buffer (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Register CPU port with devlink (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: Prevent changing CPU port's configuration (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add a test case for devlink-trap (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap L2 drops (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add trap group for layer 2 discards (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add layer 2 discard trap IDs (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add new trap actions (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add API to set trap action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Extend to support Spectrum-3 ASIC (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Forbid to offload match on reserved TCP flags bits (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Track rules that forbid egress block bind (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Forbid to offload mirred redirect on egress (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Increase scale of IPv6 nexthop groups (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Expose KVD size for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] geneve: change from tx_error to tx_dropped on missing metadata (Jiri Benc) [1843412] - [net] mptcp: use untruncated hash in ADD_ADDR HMAC (Florian Westphal) [1840167] - [net] mptcp: use rightmost 64 bits in ADD_ADDR HMAC (Florian Westphal) [1840167] - [tools] selftests: mptcp: pm: rm the right tmp file (Florian Westphal) [1840167] - [net] mptcp: cope better with MP_JOIN failure (Florian Westphal) [1840167] - [net] inet_connection_sock: factor out destroy helper. (Florian Westphal) [1840167] - [net] mptcp: add new sock flag to deal with join subflows (Florian Westphal) [1840167] - [net] mptcp: Initialize map_seq upon subflow establishment (Florian Westphal) [1840167] - [net] mptcp: set correct vfs info for subflows (Florian Westphal) [1840167] - [net] mptcp: fix uninitialized value access (Florian Westphal) [1840167] - [net] mptcp: initialize the data_fin field for mpc packets (Florian Westphal) [1840167] - [net] mptcp: fix 'use_ack' option access. (Florian Westphal) [1840167] - [net] mptcp: avoid a WARN on bad input. (Florian Westphal) [1840167] - [net] mptcp: move option parsing into mptcp_incoming_options() (Florian Westphal) [1840167] - [net] mptcp: consolidate synack processing. (Florian Westphal) [1840167] - [net] mptcp: replace mptcp_disconnect with a stub (Florian Westphal) [1840167] - [net] mptcp: fix race in msk status update (Florian Westphal) [1840167] - [net] tcp: mptcp: use mptcp receive buffer space to select rcv window (Florian Westphal) [1840167] - [net] mptcp/pm_netlink.c : add check for nla_put_in/6_addr (Florian Westphal) [1840167] - [net] mptcp: fix data_fin handing in RX path (Florian Westphal) [1840167] - [net] mptcp: drop req socket remote_key* fields (Florian Westphal) [1840167] - [net] mptcp: avoid flipping mp_capable field in syn_recv_sock() (Florian Westphal) [1840167] - [net] mptcp: handle mptcp listener destruction via rcu (Florian Westphal) [1840167] - [net] mptcp: fix 'Attempt to release TCP socket in state' warnings (Florian Westphal) [1840167] - [net] mptcp: fix splat when incoming connection is never accepted before exit/close (Florian Westphal) [1840167] - [net] mptcp: fix double-unlock in mptcp_poll (Florian Westphal) [1840167] - [net] mptcp: add some missing pr_fmt defines (Florian Westphal) [1840167] - [net] mptcp: fix "fn parameter not described" warnings (Florian Westphal) [1840167] - [net] mptcp: re-check dsn before reading from subflow (Florian Westphal) [1840167] - [net] mptcp: subflow: check parent mptcp socket on subflow state change (Florian Westphal) [1840167] - [net] mptcp: fix tcp fallback crash (Florian Westphal) [1840167] - [tools] selftests:mptcp: fix failure due to whitespace damage (Florian Westphal) [1840167] - [tools] selftests: add test-cases for MPTCP MP_JOIN (Florian Westphal) [1840167] - [tools] selftests: add PM netlink functional tests (Florian Westphal) [1840167] - [net] mptcp: add netlink-based PM (Florian Westphal) [1840167] - [net] mptcp: add and use MIB counter infrastructure (Florian Westphal) [1840167] - [net] mptcp: allow dumping subflow context to userspace (Florian Westphal) [1840167] - [net] mptcp: implement and use MPTCP-level retransmission (Florian Westphal) [1840167] - [net] mptcp: rework mptcp_sendmsg_frag to accept optional dfrag (Florian Westphal) [1840167] - [net] mptcp: allow partial cleaning of rtx head dfrag (Florian Westphal) [1840167] - [net] mptcp: implement memory accounting for mptcp rtx queue (Florian Westphal) [1840167] - [net] mptcp: introduce MPTCP retransmission timer (Florian Westphal) [1840167] - [net] mptcp: queue data for mptcp level retransmission (Florian Westphal) [1840167] - [net] mptcp: update per unacked sequence on pkt reception (Florian Westphal) [1840167] - [net] mptcp: Implement path manager interface commands (Florian Westphal) [1840167] - [net] mptcp: Add handling of outgoing MP_JOIN requests (Florian Westphal) [1840167] - [net] mptcp: Add handling of incoming MP_JOIN requests (Florian Westphal) [1840167] - [net] mptcp: Add path manager interface (Florian Westphal) [1840167] - [net] mptcp: Add ADD_ADDR handling (Florian Westphal) [1840167] - [net] tcp: annotate sk->sk_wmem_queued lockless reads (Florian Westphal) [1840167] - [net] mptcp: don't hang in mptcp_sendmsg() after TCP fallback (Florian Westphal) [1840167] - [net] mptcp: Remove set but not used variable 'can_ack' (Florian Westphal) [1840167] - [net] mptcp: rename fourth ack field (Florian Westphal) [1840167] - [net] mptcp: move msk state update to subflow_syn_recv_sock() (Florian Westphal) [1840167] - [net] mptcp: drop unneeded checks (Florian Westphal) [1840167] - [net] mptcp: create msk early (Florian Westphal) [1840167] - [net] mptcp: don't hang before sending 'MP capable with data' (Florian Westphal) [1840167] - [net] mptcp: don't grow mptcp socket receive buffer when rcvbuf is locked (Florian Westphal) [1840167] - [tools] mptcp: selftests: add rcvbuf set option (Florian Westphal) [1840167] - [net] mptcp: always include dack if possible. (Florian Westphal) [1840167] - [net] mptcp: Only send DATA_FIN with final mapping (Florian Westphal) [1840167] - [net] mptcp: Use per-subflow storage for DATA_FIN sequence number (Florian Westphal) [1840167] - [net] mptcp: Check connection state before attempting send (Florian Westphal) [1840167] - [net] mptcp: add dummy icsk_sync_mss() (Florian Westphal) [1840167] - [net] mptcp: defer work schedule until mptcp lock is released (Florian Westphal) [1840167] - [net] mptcp: avoid work queue scheduling if possible (Florian Westphal) [1840167] - [net] mptcp: remove mptcp_read_actor (Florian Westphal) [1840167] - [net] mptcp: add rmem queue accounting (Florian Westphal) [1840167] - [net] mptcp: update mptcp ack sequence from work queue (Florian Westphal) [1840167] - [net] mptcp: add work queue skeleton (Florian Westphal) [1840167] - [net] mptcp: add and use mptcp_data_ready helper (Florian Westphal) [1840167] - [net] xfrm: fix a NULL-ptr deref in xfrm_local_error (Xin Long) [1835208] - [net] xfrm: add IPv6 support for espintcp (Sabrina Dubroca) [1446392] - [net] xfrm: add support for UDPv6 encapsulation of ESP (Sabrina Dubroca) [1446392] - [net] xfrm: ifdef setsockopt(UDP_ENCAP_ESPINUDP/UDP_ENCAP_ESPINUDP_NON_IKE) (Sabrina Dubroca) [1446392] - [net] esp: Export esp_output_fill_trailer function (Sabrina Dubroca) [1446392] - [net] udp: fix jump label misuse (Sabrina Dubroca) [1446392] - [net] udp: implement complete book-keeping for encap_needed (Sabrina Dubroca) [1446392] - [net] xfrm: espintcp: save and call old ->sk_destruct (Sabrina Dubroca) [1446392] - [net] xfrm: add espintcp (RFC 8229) (Sabrina Dubroca) [1446392] - [net] esp4: split esp_output_udp_encap and introduce esp_output_encap (Sabrina Dubroca) [1446392] - [net] esp4: prepare esp_input_done2 for non-UDP encapsulation (Sabrina Dubroca) [1446392] - [net] xfrm: add route lookup to xfrm4_rcv_encap (Sabrina Dubroca) [1446392] - [net] xfrm: introduce xfrm_trans_queue_net (Sabrina Dubroca) [1446392] - [net] add queue argument to __skb_wait_for_more_packets and __skb_{, try_}recv_datagram (Sabrina Dubroca) [1446392] - [net] use skb_queue_empty_lockless() in busy poll contexts (Sabrina Dubroca) [1446392] - [include] net: add skb_queue_empty_lockless() (Sabrina Dubroca) [1446392] - [net] add READ_ONCE() annotation in __skb_wait_for_more_packets() (Sabrina Dubroca) [1446392] - [net] datagram: remove rendundant 'peeked' argument (Sabrina Dubroca) [1446392] - [tools] kvm: selftests: fix rdtsc() for vmx_tsc_adjust_test (Vitaly Kuznetsov) [1841490] - [x86] kvm: lapic: Also cancel preemption timer when disarm LAPIC timer (Vitaly Kuznetsov) [1841490] - [s390] kvm_host: unify VM_STAT and VCPU_STAT definitions in a single place (Vitaly Kuznetsov) [1841490] - [x86] kvm/x86: Remove redundant function implementations (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: VMX preemption timer migration test (Vitaly Kuznetsov) [1841490] - [tools] tools arch kvm: Sync kvm headers with the kernel sources (Vitaly Kuznetsov) [1841490] - [tools] tools headers uapi: Update tools's copy of kvm.h headers (Vitaly Kuznetsov) [1841490] - [tools] tools headers: Sync the various kvm.h header copies (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Fix VMX preemption timer migration (Vitaly Kuznetsov) [1841490] - [uapi] x86/kvm/hyper-v: Explicitly align hcall param for kvm_hyperv_exit (Vitaly Kuznetsov) [1841490] - [virt] kvm: introduce kvm_read_guest_offset_cached() (Vitaly Kuznetsov) [1841490] - [virt] kvm: rename kvm_arch_can_inject_async_page_present() to kvm_arch_can_dequeue_async_page_present() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Replace zero-length array with flexible-array (Vitaly Kuznetsov) [1841490] - [virt] revert "kvm: No need to retry for hva_to_pfn_remapped()" (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: implement KVM_GET_NESTED_STATE and KVM_SET_NESTED_STATE (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: fix smm test on SVM (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: add a SVM version of state-test (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: introduce cpu_has_svm() check (Vitaly Kuznetsov) [1841490] - [x86] kvm: mmu: pass arbitrary CR0/CR4/EFER to kvm_init_shadow_mmu (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: leave guest mode when clearing EFER.SVME (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: split nested_vmcb_check_controls (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove HF_HIF_MASK (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove HF_VINTR_MASK (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: synthesize correct EXITINTINFO on vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: preserve VGIF across VMCB switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: extract svm_set_gif (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove unnecessary if (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: synchronize VMCB controls updated by the processor on every vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: restore clobbered INT_CTL fields after clearing VINTR (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: save all control fields in svm->nested (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove trailing padding for struct vmcb_control_area (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: pass vmcb_control_area to copy_vmcb_control_area (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: clean up tsc_offset update (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: move MMU setup to nested_prepare_vmcb_control (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: extract preparation of VMCB for nested run (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: extract load_nested_vmcb_control (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: move map argument out of enter_svm_guest_mode (Vitaly Kuznetsov) [1841490] - [virt] kvm: check userspace_addr for all memslots (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: always update CR3 in VMCS (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: always update CR3 in VMCB (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: correctly inject INIT vmexits (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove exit_required (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: inject exceptions via svm_check_nested_events (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: enable event window in inject_pending_event (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: track manually whether an event has been injected (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Preserve registers modifications done before nested_svm_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Initialize tdp_level during vCPU creation (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: leave ASID aside in copy_vmcb_control_area (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: fix condition for filtering async PF (Vitaly Kuznetsov) [1841490] - [x86] kvm: Fix the indentation to match coding style (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: replace "fall through" with "return" to indicate different case (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Take an unsigned 32-bit int for has_emulated_msr()'s index (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Remove superfluous brackets from case statement (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: allow KVM_STATE_NESTED_MTF_PENDING in kvm_state flags (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: simplify is_mmio_spte (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: don't expose MSR_IA32_UMWAIT_CONTROL unconditionally (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: enable X86_FEATURE_WAITPKG in KVM capabilities (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Set mmio_value to '0' if reserved #PF can't be generated (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: only do L1TF workaround on affected processors (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fix off-by-one error in kvm_vcpu_ioctl_x86_setup_mce (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Migrate the VMX-preemption timer (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Change emulated VMX-preemption timer hrtimer to absolute (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Really make emulated nested preemption timer pinned (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Remove unused 'ops' param from nested_vmx_hardware_setup() (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Remove unnecessary V_IRQ unsetting (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Merge svm_enable_vintr into svm_set_vintr (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Handle preemption timer fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: TSCDEADLINE MSR emulation fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: introduce kvm_can_use_hv_timer (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Optimize posted-interrupt delivery for timer fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Introduce more exit_fastpath_completion enum values (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Introduce kvm_vcpu_exit_request() helper (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Print symbolic names of VMX VM-Exit flags in traces (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Introduce generic fastpath handler (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop superfluous VMREAD of vmcs02.GUEST_SYSENTER_* (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Truncate writes to vmcs.SYSENTER_EIP/ESP for 32-bit vCPU (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Improve handle_external_interrupt_irqoff inline assembly (Vitaly Kuznetsov) [1841490] - [documentation] kvm: documentation: Fix up cpuid page (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Sanity check on gfn before removal (Vitaly Kuznetsov) [1841490] - [virt] kvm: No need to retry for hva_to_pfn_remapped() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Force ASYNC_PF_PER_VCPU to be power of two (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Remove unneeded __ASM_SIZE usage with POP instruction (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Add a helper to consolidate root sp allocation (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Drop KVM's hugepage enums in favor of the kernel's enums (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Move max hugepage level to a separate #define (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Tweak PSE hugepage handling to avoid 2M vs 4M conundrum (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Cleanup vcpu->arch.guest_xstate_size (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Tweak handling of failure code for nested VM-Enter failure (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Capture TDP level when updating CPUID (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Move nested EPT out of kvm_x86_ops.get_tdp_level() hook (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Add proper cache tracking for CR0 (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Add proper cache tracking for CR4 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Unconditionally validate CR3 during nested transitions (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Save L1 TSC offset in 'struct kvm_vcpu_arch' (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Skip IBPB when temporarily switching between vmcs01 and vmcs02 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Skip IBPB when switching between vmcs01 and vmcs02 (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use accessor to read vmcs.INTR_INFO when handling exception (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: handle wrap around 32-bit address space (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Replace late check_nested_events() hack with more precise fix (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use vmx_get_rflags() to query RFLAGS in vmx_interrupt_blocked() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use vmx_interrupt_blocked() directly from vmx_handle_exit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: WARN on injected+pending exception even in nested case (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Preserve IRQ/NMI/SMI priority irrespective of exiting behavior (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Report interrupts as allowed when in L2 and exit-on-interrupt is set (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Prioritize SMI over nested IRQ/NMI (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Preserve IRQ/NMI priority irrespective of exiting behavior (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Split out architectural interrupt/NMI/SMI blocking checks (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Split out architectural interrupt/NMI blocking checks (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Move SMI vmexit handling to svm_check_nested_events() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Report NMIs as allowed when in L2 and Exit-on-NMI is set (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Report NMIs as allowed when in L2 and Exit-on-NMI is set (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: replace is_smm checks with kvm_x86_ops.smi_allowed (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Make return for {interrupt_nmi, smi}_allowed() a bool instead of int (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Set KVM_REQ_EVENT if run is canceled with req_immediate_exit set (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Open a window for pending nested VMX preemption timer (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Preserve exception priority irrespective of exiting behavior (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Implement check_nested_events for NMI (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: immediately inject INTR vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: leave halted state on vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: introduce nested_run_pending (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fix pkru save/restore when guest CR4.PKE=0, move it to x86.c (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Disable AVIC before setting V_IRQ (Vitaly Kuznetsov) [1841490] - [virt] kvm: Introduce kvm_make_all_cpus_request_except() (Vitaly Kuznetsov) [1841490] - [tools] kvm: vmx: pass correct DR6 for GD userspace exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86, svm: isolate vcpu->arch.dr6 from vmcb->save.dr6 (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: keep DR6 synchronized with vcpu->arch.dr6 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: trap #DB and #BP to userspace if guest debugging is on (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add KVM_SET_GUEST_DEBUG test (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fix single-step with KVM_SET_GUEST_DEBUG (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Set RTM for DB_VECTOR too for KVM_EXIT_DEBUG (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: fix DR6 delivery for various cases of #DB injection (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Declare KVM_CAP_SET_GUEST_DEBUG properly (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Fix build for evmcs.h (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Use KVM CPU capabilities to determine CR4 reserved bits (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Explicitly clear RFLAGS.CF and RFLAGS.ZF in VM-Exit RSB path (Vitaly Kuznetsov) [1841490] - [x86] kvm: ioapic: Restrict lazy EOI update to edge-triggered interrupts (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fixes posted interrupt check for IRQs delivery modes (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: fill in kvm_run->debug.arch.dr[67] (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Replace a BUG_ON(1) with BUG() to squash clang warning (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: do not allow VMRUN inside SMM (Vitaly Kuznetsov) [1841490] - [virt] kvm: add capability for halt polling (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Store vmcs.EXIT_QUALIFICATION as an unsigned long, not u32 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop a redundant call to vmx_get_intr_info() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: move nested-related kvm_x86_ops to a separate struct (Vitaly Kuznetsov) [1841490] - [x86] kvm: evmcs: check if nesting is enabled (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: check_nested_events is never NULL (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm/set_memory_region_test: do not check RIP if the guest shuts down (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: avoid infinite loop on NPF from bad address (Vitaly Kuznetsov) [1841490] - [x86] kvm: Remove redundant argument to kvm_arch_vcpu_ioctl_run (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Check for CR0.CD and CR0.NW on VMRUN of nested guests (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Improve latency for single target IPI fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Optimize handling of VM-Entry failures in vmx_vcpu_run() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Remove non-functional "support" for CR3 target values (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Avoid an extra memslot lookup in try_async_pf() for L2 (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Set @writable to false for non-visible accesses by L2 (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Cache vmcs.EXIT_INTR_INFO using arch avail_reg flags (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Cache vmcs.EXIT_QUALIFICATION using arch avail_reg flags (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop manual clearing of segment cache on nested VMCS switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Reset register cache (available and dirty masks) on VMCS switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Invoke ept_save_pdptrs() if and only if PAE paging is enabled (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Rename exit_reason to vm_exit_reason for nested VM-Exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Cast exit_reason to u16 to check for nested EXTERNAL_INTERRUPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Pull exit_reason from vcpu_vmx in nested_vmx_reflect_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop a superfluous WARN on reflecting EXTERNAL_INTERRUPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Split VM-Exit reflection logic into L0 vs. L1 wants (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: match comment with return type for nested_vmx_exit_reflected (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move nested VM-Exit tracepoint into nested_vmx_reflect_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move VM-Fail check out of nested_vmx_exit_reflected() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Uninline nested_vmx_reflect_vmexit(), i.e. move it to nested.c (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move reflection check into nested_vmx_reflect_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Use do_machine_check to pass MCE to the host (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Clean cr3/pgd handling in vmx_load_mmu_pgd() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Replace "cr3" with "pgd" in "new cr3/pgd" related code (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Free only the affected contexts when emulating INVEPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Don't flush TLB on nested VMX transition (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Skip MMU sync on nested VMX transition when possible (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Add module param to force TLB flush on root reuse (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Add separate override for MMU sync during fast CR3 switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Move fast_cr3_switch() side effects to __kvm_mmu_new_cr3() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Don't reload APIC access page if its control is disabled (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Retrieve APIC access page HPA only when necessary (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Reload APIC access page on nested VM-Exit only if necessary (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Selectively use TLB_FLUSH_CURRENT for nested VM-Enter/VM-Exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Use KVM_REQ_TLB_FLUSH_CURRENT for MMU specific flushes (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Introduce KVM_REQ_TLB_FLUSH_CURRENT to flush current ASID (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Add helper to handle TLB flushes on nested VM-Enter/VM-Exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Rename ->tlb_flush() to ->tlb_flush_all() (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Document the ASID logic in svm_flush_tlb() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Introduce vmx_flush_tlb_current() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move nested_get_vpid02() to vmx/nested.h (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Move vmx_flush_tlb() to vmx.c (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Wire up ->tlb_flush_guest() directly to svm_flush_tlb() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Drop @invalidate_gpa param from kvm_x86_ops' tlb_flush() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Clean up vmx_flush_tlb_gva() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: make Hyper-V PV TLB flush use tlb_flush_guest() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Move "flush guest's TLB" logic to separate kvm_x86_ops hook (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Use vpid_sync_vcpu_addr() to emulate INVVPID with address (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Drop redundant capability checks in low level INVVPID helpers (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Handle INVVPID fallback logic in vpid_sync_vcpu_addr() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Move vpid_sync_vcpu_addr() down a few lines (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use vpid_sync_context() directly when possible (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Skip global INVVPID fallback if vpid==0 in vpid_sync_context() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Sync SPTEs when injecting page/EPT fault into L1 (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: cleanup kvm_inject_emulated_page_fault (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: introduce kvm_mmu_invalidate_gva (Vitaly Kuznetsov) [1841490] - [x86] kvm: Disable objtool frame pointer checking for vmenter.S (Vitaly Kuznetsov) [1841490] - [x86] kvm: Remove CREATE_IRQCHIP/SET_PIT2 race (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Export kvm_propagate_fault() (as kvm_inject_emulated_page_fault) (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Invalidate all roots when emulating INVVPID without EPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Invalidate all EPTP contexts when emulating INVEPT for L1 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Validate the EPTP when emulating INVEPT(EXTENT_CONTEXT) (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Flush all EPTP/VPID contexts on remote TLB flush (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: Add testcase for creating max number of memslots (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Make set_memory_region_test common to all architectures (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add "zero" testcase to set_memory_region_test (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: Add vm_get_fd() in kvm_util (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add "delete" testcase to set_memory_region_test (Vitaly Kuznetsov) [1841490] - [tools] kvm: sefltests: Add explicit synchronization to move mem region test (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add GUEST_ASSERT variants to pass values to host (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add util to delete memory region (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Use kernel's list instead of homebrewed replacement (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Take vcpu pointer instead of id in vm_vcpu_rm() (Vitaly Kuznetsov) [1841490] - [x86] kvm: pass through CPUID(0x80000006) (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Return updated timer current count register from KVM_GET_LAPIC (Vitaly Kuznetsov) [1841490] - [virt] kvm: remove redundant assignment to variable r (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Fix __svm_vcpu_run declaration (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Do not setup frame pointer in __svm_vcpu_run (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Do not mark svm_vcpu_run with STACK_FRAME_NON_STANDARD (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: reflect MTF VM-exits if injected by L1 (Vitaly Kuznetsov) [1841490] - [kernel] kvm: Check validity of resolved slot when searching memslots (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Enable machine check support for 32bit targets (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: move more vmentry code to assembly (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: fix compilation with modular PSP and non-modular KVM (Vitaly Kuznetsov) [1841490] - [x86] Increase KVM_MAX_VCPUS to 1024, KVM_MAX_VCPU_ID to 2048 (Eduardo Habkost) [1810811] - [scsi] scsi: core: avoid host-wide host_busy counter for scsi_mq (Ewan Milne) [1761928] - [gpio] gpio: xgene-sb: set valid IRQ type in to_irq() (Brian Masney) [1802402] - [block] rbd: compression_hint option (Ilya Dryomov) [1835925] - [include] libceph: support for alloc hint flags (Ilya Dryomov) [1835925] - [net] libceph: read_from_replica option (Ilya Dryomov) [1835925] - [net] libceph: support for balanced and localized reads (Ilya Dryomov) [1835925] - [net] libceph: crush_location infrastructure (Ilya Dryomov) [1835925] - [net] libceph: decode CRUSH device/bucket types and names (Ilya Dryomov) [1835925] - [net] libceph: add non-asserting rbtree insertion helper (Ilya Dryomov) [1835925] - [pci] PCI: pciehp: Fix MSI interrupt race (Myron Stowe) [1779610] - [security] ima: Remove __init annotation from ima_pcrread() (Bruno Meneguele) [1843774] - [security] ima: Call ima_calc_boot_aggregate() in ima_eventdigest_init() (Bruno Meneguele) [1843774] - [security] ima: Directly assign the ima_default_policy pointer to ima_rules (Bruno Meneguele) [1843774] - [documentation] powerpc/fadump: sysfs for fadump memory reservation (Diego Domingos) [1804202] - [documentation] Documentation/ABI: Mark /sys/kernel/fadump_* sysfs files deprecated (Diego Domingos) [1804202] - [documentation] powerpc/powernv: Move core and fadump_release_opalcore under new kobject (Diego Domingos) [1804202] - [powerpc] powerpc/fadump: Reorganize /sys/kernel/fadump_* sysfs files (Diego Domingos) [1804202] - [fs] sysfs: wrap __compat_only_sysfs_link_entry_to_kobj function to change the symlink name (Diego Domingos) [1804202] - [documentation] Documentation/ABI: Add ABI documentation for /sys/kernel/fadump_* (Diego Domingos) [1804202] - [hwtracing] intel_th: pci: Add Tiger Lake CPU support (Jiri Olsa) [1483079] - [netdrv] e1000e: fix S0ix flows for cable connected case (Ken Cox) [1781385] - [netdrv] e1000e: reject unsupported coalescing params (Ken Cox) [1781385] - [netdrv] e1000e: Add support for Tiger Lake device (Ken Cox) [1781385] - [netdrv] e1000e: Add support for Alder Lake (Ken Cox) [1781385] - [netdrv] net: intel: e1000e: fix possible sleep-in-atomic-context bugs in e1000e_get_hw_semaphore() (Ken Cox) [1781385] - [netdrv] e1000e: fix missing cpu_to_le64 on buffer_addr (Ken Cox) [1781385] - [netdrv] e1000(e): use new helper tcp_v6_gso_csum_prep (Ken Cox) [1781385] - [netdrv] e1000e: Revert "e1000e: Make watchdog use delayed work" (Ken Cox) [1781385] - [netdrv] e1000e: Use netdev_info instead of pr_info for link messages (Ken Cox) [1781385] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Ken Cox) [1781385] - [netdrv] e1000e: Fix compiler warning when CONFIG_PM_SLEEP is not set (Ken Cox) [1781385] - [netdrv] net: ixgbevf: reject unsupported coalescing params (Ken Cox) [1781379] - [netdrv] ixgbevf: Remove limit of 10 entries for unicast filter list (Ken Cox) [1781379] - [netdrv] net: ixgbe: reject unsupported coalescing params (Ken Cox) [1781378] - [netdrv] ixgbe: Use pci_get_dsn() (Ken Cox) [1781378] - [netdrv] intel: Replace zero-length array with flexible-array member (Ken Cox) [1781378] - [netdrv] ixgbe: Fix calculation of queue with VFs and flow director on interface flap (Ken Cox) [1781378] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Ken Cox) [1781378] - [netdrv] ixgbe: protect TX timestamping from API misuse (Ken Cox) [1781378] - [netdrv] ixgbe: Make use of cpumask_local_spread to improve RSS locality (Ken Cox) [1781378] - [netdrv] ixgbe: Remove duplicate clear_bit() call (Ken Cox) [1781378] - [netdrv] ixgbe: Add UDP segmentation offload support (Ken Cox) [1781378] - [x86] x86/resctrl: Fix invalid attempt at removing the default resource group (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Clean up unused function parameter in mkdir path (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix a deadlock due to inaccurate reference (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix use-after-free due to inaccurate refcount of rdtgroup (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix use-after-free when deleting resource groups (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Add task resctrl information display (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Check monitoring static key in the MBM overflow handler (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Do not reconfigure exiting tasks (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix potential memory leak (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix an imbalance in domain_remove_cpu() (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix potential lockdep warning (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Prevent NULL pointer dereference when reading mondata (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Cleanup cbm_ensure_valid() (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Prevent possible overrun during bitmap operations (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Don't stop walking closids when a locksetup group is found (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Use _ASM_BX to avoid ifdeffery (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Remove unused variable (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Remove duplicate MSR_MISC_FEATURE_CONTROL definition (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Avoid confusion over the new X86_RESCTRL config (Alexander Beregalov) [1830948] - [x86] x86/cache: Rename config option to CONFIG_X86_RESCTRL (Alexander Beregalov) [1830948] - [tools] perf flamegraph: Use /bin/bash for report and record scripts (Michael Petlan) [1281843] - [tools] perf script: Add flamegraph.py script (Michael Petlan) [1281843] - [tools] perf script: Avoid NULL dereference on symbol (Michael Petlan) [1841130] - [tools] tools/build: tweak unused value workaround (Michael Petlan) [1841130] - [tools] perf stat: Fix no metric header if --per-socket and --metric-only set (Michael Petlan) [1841130] - [tools] perf python: Check if clang supports -fno-semantic-interposition (Michael Petlan) [1841130] - [tools] perf tools: Support Python 3.8+ in Makefile (Michael Petlan) [1841130] - [tools] perf script: Fix invalid read of directory entry after closedir() (Michael Petlan) [1841130] - [tools] perf script report: Fix SEGFAULT when using DWARF mode (Michael Petlan) [1841130] - [tools] perf script: add -S/--symbols documentation (Michael Petlan) [1841130] - [tools] perf pmu-events x86: Use CPU_CLK_UNHALTED.THREAD in Kernel_Utilization metric (Michael Petlan) [1841130] - [tools] perf events parser: Add missing Intel CPU events to parser (Michael Petlan) [1841130] - [tools] perf script: Allow --symbol to accept hexadecimal addresses (Michael Petlan) [1841130] - [tools] perf top: Support hotkey to change sort order (Michael Petlan) [1841130] - [tools] perf top: Support --group-sort-idx to change the sort order (Michael Petlan) [1841130] - [tools] perf symbols: Fix arm64 gap between kernel start and module end (Michael Petlan) [1841130] - [tools] perf build-test: Honour JOBS to override detection of number of cores (Michael Petlan) [1841130] - [tools] perf script: Add --show-cgroup-events option (Michael Petlan) [1841130] - [tools] perf top: Add --all-cgroups option (Michael Petlan) [1841130] - [tools] perf record: Add --all-cgroups option (Michael Petlan) [1841130] - [tools] perf record: Support synthesizing cgroup events (Michael Petlan) [1841130] - [tools] perf report: Add 'cgroup' sort key (Michael Petlan) [1841130] - [tools] perf cgroup: Maintain cgroup hierarchy (Michael Petlan) [1841130] - [tools] perf tools: Basic support for CGROUP event (Michael Petlan) [1841130] - [tools] perf tools: Add file-handle feature test (Michael Petlan) [1841130] - [tools] perf python: Include rwsem.c in the pythong biding (Michael Petlan) [1841130] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1841130] - [tools] perf script: Introduce --deltatime option (Michael Petlan) [1841130] - [tools] perf: Normalize gcc parameter when generating arch errno table (Michael Petlan) [1841130] - [tools] perf parse-events: Add defensive NULL check (Michael Petlan) [1841130] - [tools] perf callchain: Update docs regarding kernel/user space unwinding (Michael Petlan) [1841130] - [tools] perf cpumap: Fix snprintf overflow check (Michael Petlan) [1841130] - [tools] perf test: Test pmu-events aliases (Michael Petlan) [1841130] - [tools] perf pmu: Make pmu_uncore_alias_match() public (Michael Petlan) [1841130] - [tools] perf pmu: Add is_pmu_core() (Michael Petlan) [1841130] - [tools] perf test: Add pmu-events test (Michael Petlan) [1841130] - [tools] perf pmu: Refactor pmu_add_cpu_aliases() (Michael Petlan) [1841130] - [tools] perf jevents: Support test events folder (Michael Petlan) [1841130] - [tools] perf jevents: Add some test events (Michael Petlan) [1841130] - [tools] perf tools: Unify a bit the build directory output (Michael Petlan) [1841130] - [tools] perf metricgroup: Fix printing event names of metric group with multiple events incase of overlapping events (Michael Petlan) [1841130] - [tools] perf stat: Align the output for interval aggregation mode (Michael Petlan) [1841130] - [tools] perf report/top TUI: Support hotkeys to let user select any event for sorting (Michael Petlan) [1841130] - [tools] perf report: Support a new key to reload the browser (Michael Petlan) [1841130] - [tools] perf report: Allow specifying event to be used as sort key in --group output (Michael Petlan) [1841130] - [tools] perf report/top TUI: Support hotkey 'a' for annotation of unresolved addresses (Michael Petlan) [1841130] - [tools] perf report: Support interactive annotation of code without symbols (Michael Petlan) [1841130] - [tools] perf report: Print al_addr when symbol is not found (Michael Petlan) [1841130] - [tools] perf symbols: Consolidate symbol fixup issue (Michael Petlan) [1841130] - [tools] perf parse-events: Fix 3 use after frees found with clang ASAN (Michael Petlan) [1841130] - [tools] perf/tests: Add CET instructions to the new instructions test (Michael Petlan) [1841130] - [tools] perf expr: Fix copy/paste mistake (Michael Petlan) [1841130] - [tools] perf report: Fix no branch type statistics report issue (Michael Petlan) [1841130] - [tools] perf tools: Give synthetic mmap events an inode generation (Michael Petlan) [1841130] - [tools] perf test: Print if shell directory isn't present (Michael Petlan) [1841130] - [tools] perf record: Fix binding of AIO user space buffers to nodes (Michael Petlan) [1841130] - [tools] perf intel-pt: Update intel-pt.txt file with new location of the documentation (Michael Petlan) [1841130] - [tools] perf intel-pt: Add Intel PT man page references (Michael Petlan) [1841130] - [tools] perf intel-pt: Rename intel-pt.txt and put it in man page format (Michael Petlan) [1841130] - [tools] perf doc: Set man page date to last git commit (Michael Petlan) [1841130] - [tools] perf cs-etm: Fix unsigned variable comparison to zero (Michael Petlan) [1841130] - [tools] perf cs-etm: Optimize copying last branches (Michael Petlan) [1841130] - [tools] perf cs-etm: Correct synthesizing instruction samples (Michael Petlan) [1841130] - [tools] perf cs-etm: Continuously record last branch (Michael Petlan) [1841130] - [tools] perf cs-etm: Swap packets for instruction samples (Michael Petlan) [1841130] - [tools] perf map: Use strstarts() to look for Android libraries (Michael Petlan) [1841130] - [tools] perf vendor events intel: Add NO_NMI_WATCHDOG metric constraint (Michael Petlan) [1841130] - [tools] perf metricgroup: Support metric constraint (Michael Petlan) [1841130] - [tools] perf util: Factor out sysctl__nmi_watchdog_enabled() (Michael Petlan) [1841130] - [tools] perf metricgroup: Factor out metricgroup__add_metric_weak_group() (Michael Petlan) [1841130] - [tools] perf jevents: Support metric constraint (Michael Petlan) [1841130] - [tools] perf block-info: Support color ops to print block percents in color (Michael Petlan) [1841130] - [tools] perf block-info: Allow selecting which columns to report and its order (Michael Petlan) [1841130] - [tools] perf diff: Use __block_info__cmp() to replace block_pair_cmp() (Michael Petlan) [1841130] - [tools] perf expr: Make expr__parse() return -1 on error (Michael Petlan) [1841130] - [tools] perf expr: Straighten expr__parse()/expr__find_other() interface (Michael Petlan) [1841130] - [tools] perf expr: Increase EXPR_MAX_OTHER to support metrics with more than 15 variables (Michael Petlan) [1841130] - [tools] perf expr: Move expr lexer to flex (Michael Petlan) [1841130] - [tools] perf expr: Add expr.c object (Michael Petlan) [1841130] - [tools] perf header: Add check for unexpected use of reserved membrs in event attr (Michael Petlan) [1841130] - [tools] perf evsel: Support PERF_SAMPLE_BRANCH_HW_INDEX (Michael Petlan) [1841130] - [tools] perf tools: Add hw_idx in struct branch_stack (Michael Petlan) [1841130] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1841130] - [tools] tools lib traceevent: Remove extra '\n' in print_event_time() (Michael Petlan) [1841130] - [tools] perf annotate: Get rid of annotation->nr_jumps (Michael Petlan) [1841130] - [tools] perf llvm: Add debug hint message about missing kernel-devel package (Michael Petlan) [1841130] - [tools] perf stat: Show percore counts in per CPU output (Michael Petlan) [1841130] - [tools] tools lib api fs: Move cgroupsfs_find_mountpoint() (Michael Petlan) [1841130] - [kernel] perf/core: fix parent pid/tid in task exit events (Michael Petlan) [1841130] - [x86] perf/x86/cstate: Add Jasper Lake CPU support (Michael Petlan) [1841130] - [kernel] perf/core: Disable page faults when getting phys address (Michael Petlan) [1841130] - [x86] perf/x86/intel/uncore: Add Ice Lake server uncore support (Michael Petlan) [1841130] - [kernel] perf/cgroup: Correct indirection in perf_less_group_idx() (Michael Petlan) [1841130] - [kernel] perf/core: Fix event cgroup tracking (Michael Petlan) [1841130] - [init] perf/core: Add PERF_SAMPLE_CGROUP feature (Michael Petlan) [1841130] - [kernel] perf/core: Add PERF_RECORD_CGROUP event (Michael Petlan) [1841130] - [x86] x86 user stack frame reads: switch to explicit __get_user() (Michael Petlan) [1841130] - [x86] perf/x86/intel/uncore: Factor out __snr_uncore_mmio_init_box (Michael Petlan) [1841130] - [x86] perf/x86/intel/uncore: Add box_offsets for free-running counters (Michael Petlan) [1841130] - [kernel] perf/core: Fix reversed NULL check in perf_event_groups_less() (Michael Petlan) [1841130] - [kernel] perf/core: Fix endless multiplex timer (Michael Petlan) [1841130] - [kernel] perf/cgroup: Order events in RB tree by cgroup id (Michael Petlan) [1841130] - [kernel] perf/cgroup: Grow per perf_cpu_context heap storage (Michael Petlan) [1841130] - [kernel] perf/core: Add per perf_cpu_context min_heap storage (Michael Petlan) [1841130] - [kernel] perf/core: Use min_heap in visit_groups_merge() (Michael Petlan) [1841130] - [lib] lib: Introduce generic min-heap (Michael Petlan) [1841130] - [kernel] perf/cgroup: Reorder perf_cgroup_connect() (Michael Petlan) [1841130] - [kernel] perf/core: Remove 'struct sched_in_data' (Michael Petlan) [1841130] - [kernel] perf/core: Unify {pinned, flexible}_sched_in() (Michael Petlan) [1841130] - [x86] perf/x86: Add Intel Tiger Lake uncore support (Michael Petlan) [1841130] - [x86] perf/x86/intel: Output LBR TOS information correctly (Michael Petlan) [1841130] - [powerpc] perf/core: Add new branch sample type for HW index of raw branch records (Michael Petlan) [1841130] - [x86] perf/x86/intel: Avoid unnecessary PEBS_ENABLE MSR access in PMI (Michael Petlan) [1841130] - [x86] x86/cpu: Add Jasper Lake to Intel family (Michael Petlan) [1841130] - [fs] pstore/ram: Run without kernel crash dump region (Desnes Augusto Nunes do Rosario) [1824906] - [fs] pstore/ram: Avoid NULL deref in ftrace merging failure path (Desnes Augusto Nunes do Rosario) [1824906] - [fs] pstore: Convert buf_lock to semaphore (Desnes Augusto Nunes do Rosario) [1824906] - [fs] pstore/ram: Correctly calculate usable PRZ bytes (Desnes Augusto Nunes do Rosario) [1824906] - [drm] memremap: add an owner field to struct dev_pagemap (Don Dutile) [1816441] - [mm] mm: devmap: refactor 1-based refcounting for ZONE_DEVICE pages (Don Dutile) [1816441] - [mm] mm/swap: fix release_pages() when releasing devmap pages (Don Dutile) [1816441] - [mm] mm: revert remove MEMORY_DEVICE_PUBLIC support in swap.c (Don Dutile) [1816441] - [nvdimm] mm: Cleanup __put_devmap_managed_page() vs ->page_free() (Don Dutile) [1816441] - [documentation] hv_netvsc: Update document for XDP support (Mohammed Gamal) [1815497] - [netdrv] hv_netvsc: Fix XDP refcnt for synthetic and VF NICs (Mohammed Gamal) [1815497] - [netdrv] hv_netvsc: Add XDP support (Mohammed Gamal) [1815497] - [powerpc] kvm: ppc: book3s hv: Remove user-triggerable WARN_ON (Laurent Vivier) [1784050] - [powerpc] kvm: ppc: book3s hv: Close race with page faults around memslot flushes (Laurent Vivier) [1784050] - [powerpc] pseries/svm: Allow IOMMU to work in SVM (Michael Roth) [1730194] - [powerpc] pseries/iommu: Separate FW_FEATURE_MULTITCE to put/stuff features (Michael Roth) [1730194] - [powerpc] pseries: Allow not having ibm, hypertas-functions::hcall-multi-tce for DDW (Michael Roth) [1730194] - [powerpc] revert "powerpc/pseries/iommu: Don't use dma_iommu_ops on secure guests" (Michael Roth) [1730194] - [powerpc] ultravisor: Add PPC_UV config option (Michael Roth) [1730194] - [mm] ksm: Export ksm_madvise() (Michael Roth) [1730194] - [powerpc] configs: Enable secure guest support in pseries and ppc64 defconfigs (Michael Roth) [1730194] - [powerpc] prom_init: Undo relocation before entering secure mode (Michael Roth) [1730194] - [powerpc] pseries/svm: Force SWIOTLB for secure guests (Michael Roth) [1730194] - [powerpc] pseries/iommu: Don't use dma_iommu_ops on secure guests (Michael Roth) [1730194] - [powerpc] pseries/svm: Disable doorbells in SVM guests (Michael Roth) [1730194] - [powerpc] pseries/svm: Export guest SVM status to user space via sysfs (Michael Roth) [1730194] - [powerpc] pseries/svm: Use shared memory for Debug Trace Log (DTL) (Michael Roth) [1730194] - [powerpc] prom_init: Pass the "os-term" message to hypervisor (Michael Roth) [1730194] - [powerpc] Add support for adding an ESM blob to the zImage wrapper (Michael Roth) [1730194] - [powerpc] pseries: Introduce option to build secure virtual machines (Michael Roth) [1730194] - [s390] mm: Remove sev_active() function (Michael Roth) [1730194] - [kernel] fs/core/vmcore: Move sev_active() reference to x86 arch code (Michael Roth) [1730194] - [kernel] x86, s390/mm: Move sme_active() and sme_me_mask to x86-specific header (Michael Roth) [1730194] - [kernel] dma-mapping: Remove dma_check_mask() (Michael Roth) [1730194] - [kernel] swiotlb: Remove call to sme_active() (Michael Roth) [1730194] - [x86] s390: Move ARCH_HAS_MEM_ENCRYPT definition to arch/Kconfig (Michael Roth) [1730194] - [powerpc] xmon: don't access ASDR in VMs (Michael Roth) [1730194] - [powerpc] xmon: Fix compile error in print_insn* functions (Michael Roth) [1730194] - [mm] memremap: provide a not device managed memremap_pages (Michael Roth) [1730194] - [mm] memremap: don't use a separate devm action for devmap_managed_enable_get (Michael Roth) [1730194] - [mm] memremap: remove the dev field in struct dev_pagemap (Michael Roth) [1730194] - [kernel] resource: add a not device managed request_free_mem_region variant (Michael Roth) [1730194] - [mm] turn migrate_vma upside down (Michael Roth) [1730194] - [kernel] mm: simplify ZONE_DEVICE page private data (Michael Roth) [1730194] - [kernel] mm: remove hmm_devmem_add (Michael Roth) [1730194] - [mm] remove hmm_vma_alloc_locked_page (Michael Roth) [1730194] - [dax] device-dax: use the dev_pagemap internal refcount (Michael Roth) [1730194] - [mm] export alloc_pages_vma (Michael Roth) [1730194] - [netdrv] net/mlx5: Kconfig: Fix spelling typo (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Introduce kconfig var for TC support (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Move TC-specific code from en_main.c to en_tc.c (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Extract neigh-specific code from en_rep.c to rep/neigh.c (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Extract TC-specific code from en_rep.c to rep/tc.c (Alaa Hleihel) [1843359] - [infiniband] net/mlx5: Refactor imm_inval_pkey field in cqe struct (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Take DCBNL-related definitions into dedicated files (Alaa Hleihel) [1843359] - [netdrv] net/mlx5: E-Switch: Move eswitch chains to a new directory (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: remove duplicated check chain_index in mlx5e_rep_setup_ft_cb (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: add mlx5e_rep_indr_setup_ft_cb support (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: refactor indr setup block (Alaa Hleihel) [1843359] - [infiniband] IB/mlx5: Fix DEVX support for MLX5_CMD_OP_INIT2INIT_QP command (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Remove warning "devices are not on same switch HW" (Alaa Hleihel) [1842258] - [infiniband] RDMA/mlx5: Add init2init as a modify command (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: replace EINVAL in mlx5e_flower_parse_meta() (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix MLX5_TC_CT dependencies (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Properly set default values when disabling adaptive moderation (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix stats update for matchall classifier (Alaa Hleihel) [1842258] - [netdrv] net: sched: expose HW stats types per action used by drivers (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: en_tc: Fix cast to restricted __be32 warning (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: en_tc: Fix incorrect type in initializer warnings (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Allow partial data mask for tunnel options (Alaa Hleihel) [1842258] - [include] net/mlx5: IPSec: Fix incorrect type for spi (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Accel: fpga tls fix cast to __be64 and incorrect argument types (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: cmd: Fix memset with byte count warning (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: DR: Fix incorrect type in return expression (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: DR: Fix cast to restricted __be32 (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: DR: Fix incorrect type in argument (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: IPoIB, Drop multicast packets that this interface sent (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: IPoIB, Enable loopback packets for IPoIB interfaces (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Fix error flow in case of function_setup failure (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: CT: Correctly get flow rule (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5e: Update netdev txq on completions during closure (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Annotate mutex destroy for root ns (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5: Don't maintain a case of del_sw_func being null (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5: Fix cleaning unmanaged flow tables (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5: Fix memory leak in mlx5_events_init (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix inner tirs handling (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: kTLS, Destroy key object after destroying the TIS (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix allowed tc redirect merged eswitch offload cases (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Avoid processing commands before cmdif is ready (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Fix a race when moving command interface to events mode (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Add command entry handling completion (Alaa Hleihel) [1842258] - [infiniband] RDMA/mlx5: Fix NULL pointer dereference in destroy_prefetch_work (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Fix crash upon suspend/resume (Alaa Hleihel) [1842258 1841973] - [netdrv] net/mlx5e: Fix devlink port netdev unregistration sequence (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Fix devlink port register sequence (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Use devlink virtual flavour for VF devlink port (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Add support for devlink-port in non-representors mode (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Rename representor get devlink port function (Alaa Hleihel) [1842258 1790226] - [fs] nfsd4: add filename to states output ("J. Bruce Fields") [1475182] - [fs] nfsd4: stid display should preserve on-the-wire byte order ("J. Bruce Fields") [1475182] - [fs] nfsd4: common stateid-printing code ("J. Bruce Fields") [1475182] - [fs] nfsd: remove read permission bit for ctl sysctl ("J. Bruce Fields") [1475182] - [fs] nfsd: "\s" should be "s" ("J. Bruce Fields") [1475182] - [fs] nfsd: initialize i_private before d_add ("J. Bruce Fields") [1475182] - [fs] nfsd: use i_wrlock instead of rcu for nfsdfs i_private ("J. Bruce Fields") [1475182] - [fs] nfsd: fix dentry leak upon mkdir failure ("J. Bruce Fields") [1475182] - [fs] nfsd: Make __get_nfsdfs_client() static ("J. Bruce Fields") [1475182] - [fs] nfsd: Make two functions static ("J. Bruce Fields") [1475182] - [fs] nfsd: decode implementation id ("J. Bruce Fields") [1475182] - [fs] nfsd: use 64-bit seconds fields in nfsd v4 code ("J. Bruce Fields") [1475182] - [fs] nfsd: create xdr_netobj_dup helper ("J. Bruce Fields") [1475182] - [fs] nfsd: allow forced expiration of NFSv4 clients ("J. Bruce Fields") [1475182] - [fs] nfsd: create get_nfsdfs_clp helper ("J. Bruce Fields") [1475182] - [fs] nfsd4: show layout stateids ("J. Bruce Fields") [1475182] - [fs] nfsd: show lock and deleg stateids ("J. Bruce Fields") [1475182] - [fs] nfsd4: add file to display list of client's opens ("J. Bruce Fields") [1475182] - [fs] nfsd: add more information to client info file ("J. Bruce Fields") [1475182] - [include] nfsd: escape high characters in binary data ("J. Bruce Fields") [1475182] - [fs] nfsd: copy client's address including port number to cl_addr ("J. Bruce Fields") [1475182] - [fs] nfsd4: add a client info file ("J. Bruce Fields") [1475182] - [fs] nfsd: make client/ directory names small ints ("J. Bruce Fields") [1475182] - [fs] nfsd: add nfsd/clients directory ("J. Bruce Fields") [1475182] - [fs] nfsd4: use reference count to free client ("J. Bruce Fields") [1475182] - [fs] nfsd: rename cl_refcount ("J. Bruce Fields") [1475182] - [fs] nfsd: persist nfsd filesystem across mounts ("J. Bruce Fields") [1475182]- [wireless] iwlwifi: pcie: handle QuZ configs with killer NICs as well (Jarod Wilson) [1844129 1842382] - [net] mac80211: add ieee80211_is_any_nullfunc() (Jarod Wilson) [1844129] - [net] mac80211: sta_info: Add lockdep condition for RCU list usage (Jarod Wilson) [1844129] - [net] mac80211: fix channel switch trigger from unknown mesh peer (Jarod Wilson) [1844129] - [wireless] rtw88: avoid unused function warnings (Jarod Wilson) [1844129] - [wireless] brcmfmac: add stub for monitor interface xmit (Jarod Wilson) [1844129] - [wireless] iwlwifi: actually check allocated conf_tlv pointer (Jarod Wilson) [1844129] - [wireless] iwlwifi: fix WGDS check when WRDS is disabled (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: fix inactive TID removal return value usage (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: Do not declare support for ACK Enabled Aggregation (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: limit maximum queue appropriately (Jarod Wilson) [1844129] - [wireless] iwlwifi: pcie: indicate correct RB size to device (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: beacon statistics shouldn't go backwards (Jarod Wilson) [1844129] - [wireless] iwlwifi: pcie: actually release queue memory in TVQM (Jarod Wilson) [1844129] - [wireless] mac80211: populate debugfs only after cfg80211 init (Jarod Wilson) [1844129] - [net] mac80211: fix race in ieee80211_register_hw() (Jarod Wilson) [1844129] - [net] nl80211: fix NL80211_ATTR_FTM_RESPONDER policy (Jarod Wilson) [1844129] - [powerpc] powerpc/fadump: Account for memory_limit while reserving memory (Steve Best) [1840646] - [mm] mm: make deferred init's max threads arch-specific (David Hildenbrand) [1818764] - [mm] mm: parallelize deferred_init_memmap() (David Hildenbrand) [1818764] - [mm] mm: don't track number of pages during deferred initialization (David Hildenbrand) [1818764] - [kernel] padata: add basic support for multithreaded jobs (David Hildenbrand) [1818764] - [kernel] padata: allocate work structures for parallel jobs from a pool (David Hildenbrand) [1818764] - [init] padata: initialize earlier (David Hildenbrand) [1818764] - [kernel] padata: remove exit routine (David Hildenbrand) [1818764] - [documentation] padata: update documentation (David Hildenbrand) [1818764] - [mm] mm: call cond_resched() from deferred_init_memmap() (David Hildenbrand) [1818764] - [mm] mm: initialize deferred pages with interrupts enabled (David Hildenbrand) [1818764] - [mm] mm/pagealloc.c: call touch_nmi_watchdog() on max order boundaries in deferred init (David Hildenbrand) [1818764] - [mm] mm/page_alloc: fix watchdog soft lockups during set_zone_contiguous() (David Hildenbrand) [1818764] - [mm] mm/page_alloc.c: fix regression with deferred struct page init (David Hildenbrand) [1818764] - [mm] mm: initialize MAX_ORDER_NR_PAGES at a time instead of doing larger sections (David Hildenbrand) [1818764] - [mm] mm: implement new zone specific memblock iterator (David Hildenbrand) [1818764] - [mm] mm: drop meminit_pfn_in_nid as it is redundant (David Hildenbrand) [1818764] - [kernel] audit: add subj creds to NETFILTER_CFG record to (Richard Guy Briggs) [1478533] - [kernel] audit: make symbol 'audit_nfcfgs' static (Richard Guy Briggs) [1478533] - [net] netfilter: add audit table unregister actions (Richard Guy Briggs) [1478533] - [net] audit: tidy and extend netfilter_cfg x_tables (Richard Guy Briggs) [1478533] - [x86] x86/efi: Allocate e820 buffer before calling efi_exit_boot_service (Lenny Szubowicz) [1824005] - [mm] hugetlb_cgroup: fix possible illegal access to memory (Joel Savitz) [1835398] - [kvm] KVM: s390: Remove false WARN_ON_ONCE for the PQAP instruction (Claudio Imbrenda) [1836184] - [sound] ASoC: Intel: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [thermal] thermal: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [powercap] powercap/intel_rapl: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [platform] platform/x86: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [pci] PCI: intel-mid: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [mmc] mmc: sdhci-acpi: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [idle] intel_idle: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [extcon] extcon: axp288: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [edac] EDAC: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [acpi] ACPI: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/platform: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/kernel: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/perf/events: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/cpu: Add consistent CPU match macros (Prarit Bhargava) [1841649] - [fs] fix autofs regression caused by follow_managed() changes (Miklos Szeredi) [1784857] - [fs] fs/namei.c: fix missing barriers when checking positivity (Miklos Szeredi) [1784857] - [fs] fix dget_parent() fastpath race (Miklos Szeredi) [1784857] - [fs] new helper: lookup_positive_unlocked() (Miklos Szeredi) [1784857] - [fs] fs/namei.c: pull positivity check into follow_managed() (Miklos Szeredi) [1784857] - [mm] x86/kasan: Fix boot with 5-level paging and KASAN (Baoquan He) [1838418] - [netdrv] bnxt_en: Fix VLAN acceleration handling in bnxt_fix_features() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Return error when allocating zero size context memory (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve AER slot reset (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Reduce BNXT_MSIX_VEC_MAX value to supported CQs per PF (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix VF anti-spoof filter setup (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix "fw.mgmt" and "fw.nsci" info via devlink info_get cb (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add partno to devlink info_get cb (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Read partno and serialno of the board from VPD (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add fw.mgmt.api version to devlink info_get cb (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Reset rings if ring reservation fails during open() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Free context memory after disabling PCI in probe error path (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Return error if bnxt_alloc_ctx_mem() fails (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: fix memory leaks in bnxt_dcbnl_ieee_getets() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix Priority Bytes and Packets counters in ethtool -S (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Call devlink_port_type_clear() in remove() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Return -EAGAIN if fw command returns BUSY (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Modify some bnxt_hwrm_*_free() functions to void (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Remove unnecessary assignment of return code (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Clear DCB settings after firmware reset (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Process the NQ under NAPI continuous polling (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Simplify __bnxt_poll_cqs_done() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Handle all NQ notifications in bnxt_poll_p5() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Use pci_get_dsn() (Jonathan Toppins) [1790621] - [netdrv] bnxt: reject unsupported coalescing params (Jonathan Toppins) [1790621] - [netdrv] net/broadcom: Clean broadcom code from driver versions (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: fix error handling when flashing from file (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: reinitialize IRQs when MTU is modified (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: add newline to netdev_*() format strings (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Issue PCIe FLR in kdump kernel to cleanup pending DMAs (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve device shutdown method (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for devlink info command (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Rename switch_id to dsn (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support to update progress of flash update (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Move devlink_register before registering netdev (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Register devlink irrespective of firmware spec version (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Refactor bnxt_dl_register() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Disable workaround for lost interrupts on 575XX B0 and newer chips (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Periodically check and remove aged-out ntuple filters (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Do not accept fragments for aRFS flow steering (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Support UDP RSS hashing on 575XX chips (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve bnxt_probe_phy() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve link up detection (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Call recovery done after reset is successfully done (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Remove unnecessary NULL checks for fw_health (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for flashing the device via devlink (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Allow PHY settings on multi-function or NPAR PFs if allowed by FW (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add async. event logic for PHY configuration changes (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Refactor the initialization of the ethtool link settings (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Skip disabling autoneg before PHY loopback when appropriate (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Assign more RSS context resources to the VFs (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Initialize context memory to the value specified by firmware (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add chip IDs for 57452 and 57454 chips (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Report health status update after reset is done (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Set MASTER flag during driver registration (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Update firmware interface spec to 1.10.1.12 (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix array overrun in bnxt_fill_l2_rewrite_fields() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for NAT(L3/L4 rewrite) (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for L2 rewrite (Jonathan Toppins) [1790621] - [netdrv] net/mlx5: E-switch, Protect eswitch mode changes (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: E-switch, Extend eswitch enable to handle num_vfs change (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Split eswitch mode check to different helper function (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Simplify mlx5_unload_one() and its callers (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Simplify mlx5_register_device to return void (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Avoid deriving mlx5_core_dev second time (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: E-switch, Annotate esw state_lock mutex destroy (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: E-switch, Annotate termtbl_mutex mutex destroy (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5e: CT: Fix offload with CT action after CT NAT action (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Fix missing pedit action after ct clear action (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: remove set but not used variable 'unnew' (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Fix insert rules when TC_CT config isn't enabled (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Fix actions_match_supported() return (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Avoid false warning about rule may be used uninitialized (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Use correct type for chain, prio and level values (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-switch, Fix printing wrong error value (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Fix rejecting all egress rules not on vlan (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch: Fix using fwd and modify when firmware doesn't support it (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: Add missing inline to stub esw_add_restore_rule (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Enable restore table only if reg_c1 is supported (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, free flow_group_in after creating the restore table (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-switch, Fix mutex init order (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: CT: Change idr to xarray to protect parallel tuple id allocation (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Use rhashtable's ct entries instead of a separate list (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Fix stack usage compiler warning (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Support clear action (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: CT: Handle misses after executing CT action (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: CT: Offload established flows (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: CT: Introduce connection tracking (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Support getting chain mapping (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Add support for offloading rules with no in_port (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Introduce global tables (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: en_rep: Create uplink rep root table after eswitch offloads table (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Enable reg c1 loopback when possible (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: Restore tunnel metadata on miss (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Get reg_c1 value on miss (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Support inner header rewrite with goto action (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Disallow inserting vxlan/vlan egress rules without decap/pop (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Move tc tunnel parsing logic with the rest at tc_tun module (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Allow re-allocating mod header actions (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Restore chain id on miss (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Rx, Split rep rx mpwqe handler from nic (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Mark miss packets with new chain id mapping (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Get reg_c0 value on CQE (Alaa Hleihel) [1790219 1790218 1663246] - [infiniband] net/mlx5: E-Switch, Move source port on reg_c0 to the upper 16 bits (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: Introduce mapping infra for mapping unique ids to data (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Add devlink fdb_large_groups parameter (Alaa Hleihel) [1790203 1663246] - [netdrv] net/mlx5: Change the name of steering mode param id (Alaa Hleihel) [1790203 1663246] - [netdrv] net/mlx5e: Fix an IS_ERR() vs NULL check (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: Verify goto chain offload support (Alaa Hleihel) [1663246] - [include] net/mlx5: HW bit for goto chain offload support (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Remove redundant comment about goto slow path (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Reduce number of arguments in slow path handling (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Use NL_SET_ERR_MSG_MOD() extack for errors (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Allow goto earlier chain if FW supports it (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Eswitch, Use per vport tables for mirroring (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: make the symbol 'ESW_POOLS' static (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Increase number of chains and priorities (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Refactor chains and priorities (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: ft: Check prio and chain sanity for ft offload (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: ft: Use getter function to get ft chain (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: TC: Offload flow table rules (Alaa Hleihel) [1663246]- [net] neigh: fix ARP retransmit timer guard (Hangbin Liu) [1767282] - [net] xfrm: fix a warning in xfrm_policy_insert_list (Xin Long) [1820956] - [net] netfilter: ipset: Fix subcounter update skip (Phil Sutter) [1834881] - [netdrv] macvlan: return correct error value (Matteo Croce) [1806146] - [net] core: properly remove skb from list (Ivan Vecera) [1839657] - [tools] selftests: fix flower parent qdisc (Ivan Vecera) [1824071] - [net] sch_choke: Remove classid from choke_skb_cb. (Ivan Vecera) [1824071] - [net] sched: choke: Remove unused inline function choke_set_classid (Ivan Vecera) [1824071] - [net] schedule: add action gate offloading (Ivan Vecera) [1824071] - [net] qos: introduce a gate control flow action (Ivan Vecera) [1824071] - [net] sched: fallback to qdisc noqueue if default qdisc setup fail (Ivan Vecera) [1824071] - [tools] selftests: forwarding: tc_actions.sh: add matchall mirror test (Ivan Vecera) [1824071] - [net] sched: report ndo_setup_tc failures via extack (Ivan Vecera) [1824071] - [net] sched : Remove unnecessary cast in kfree (Ivan Vecera) [1824071] - [tools] selftests: tc-testing: Add a TDC test for pedit munge ip6 dsfield (Ivan Vecera) [1824071] - [tools] selftests: forwarding: pedit_dsfield: Add pedit munge ip6 dsfield (Ivan Vecera) [1824071] - [net] sched: act_ct: update nf_conn_acct for act_ct SW offload in flowtable (Ivan Vecera) [1824071] - [net] net_sched: gen_estimator: extend packet counter to 64bit (Ivan Vecera) [1824071] - [net] flow_offload: skip hw stats check for FLOW_ACTION_HW_STATS_DONT_CARE (Ivan Vecera) [1824071] - [net] net_sched: sch_skbprio: add message validation to skbprio_change() (Ivan Vecera) [1824071] - [net] net_sched: fix tcm_parent in tc filter dump (Ivan Vecera) [1824071] - [net] sch_sfq: validate silly quantum values (Ivan Vecera) [1824071] - [net] sch_choke: avoid potential panic in choke_reset() (Ivan Vecera) [1824071] - [net] fq_codel: fix TCA_FQ_CODEL_DROP_BATCH_SIZE sanity checks (Ivan Vecera) [1824071] - [net] sched: etf: do not assume all sockets are full blown (Ivan Vecera) [1824071] - [tools] tc-testing: remove duplicate code in tdc.py (Ivan Vecera) [1824071] - [net] sched: Fix setting last executed chain on skb extension (Ivan Vecera) [1824071] - [net] net_sched: fix a missing refcnt in tcindex_init() (Ivan Vecera) [1824071] - [net] net_sched: add a temporary refcnt for struct tcindex_data (Ivan Vecera) [1824071] - [net] sched: expose HW stats types per action used by drivers (Ivan Vecera) [1824071] - [net] introduce nla_put_bitfield32() helper and use it (Ivan Vecera) [1824071] - [tools] selftests: skbedit_priority: Test counters at the skbedit rule (Ivan Vecera) [1824071] - [net] sched: act_pedit: Implement stats_update callback (Ivan Vecera) [1824071] - [net] sched: act_skbedit: Implement stats_update callback (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Add a forwarding test for pedit munge dsfield (Ivan Vecera) [1824071] - [net] flow_offload.h: Fix a comment at flow_action_entry.mangle (Ivan Vecera) [1824071] - [net] Fix CONFIG_NET_CLS_ACT=n and CONFIG_NFT_FWD_NETDEV={y, m} build (Ivan Vecera) [1824071] - [net] netfilter: nft_fwd_netdev: allow to redirect to ifb via ingress (Ivan Vecera) [1824071] - [net] cbs: Fix software cbs to consider packet sending time (Ivan Vecera) [1824071] - [include] taprio: do not use BIT() in TCA_TAPRIO_ATTR_FLAG_* definitions (Ivan Vecera) [1824071] - [net] cls_flower: Add extack support for flags key (Ivan Vecera) [1824071] - [net] cls_flower: Add extack support for src and dst port range options (Ivan Vecera) [1824071] - [net] cls_flower: Add extack support for mpls options (Ivan Vecera) [1824071] - [include] net: sched: refine extack messages in tcf_change_indev (Ivan Vecera) [1824071] - [net] sched: rename more stats_types (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Add an skbedit priority selftest (Ivan Vecera) [1824071] - [net] tc_skbedit: Make the skbedit priority offloadable (Ivan Vecera) [1824071] - [include] tc_skbedit: Factor a helper out of is_tcf_skbedit_{mark, ptype}() (Ivan Vecera) [1824071] - [include] net: sched: Do not assume RTNL is held in tunnel key action helpers (Ivan Vecera) [1824071] - [net] sched: act_ct: Fix leak of ct zone template on replace (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: enable use of hrtimer slack (Ivan Vecera) [1824071] - [net] net_sched: do not reprogram a timer about to expire (Ivan Vecera) [1824071] - [net] net_sched: add qdisc_watchdog_schedule_range_ns() (Ivan Vecera) [1824071] - [net] rename flow_action_hw_stats_types* -> flow_action_hw_stats* (Ivan Vecera) [1824071] - [net] net_sched: cls_route: remove the right filter from hashtable (Ivan Vecera) [1824071] - [tools] selftests: qdiscs: RED: Add nodrop tests (Ivan Vecera) [1824071] - [net] sched: RED: Introduce an ECN nodrop mode (Ivan Vecera) [1824071] - [net] sched: Allow extending set of supported RED flags (Ivan Vecera) [1824071] - [tools] selftests: qdiscs: Add TDC test for RED (Ivan Vecera) [1824071] - [tools] tc-testing: add ETS scheduler to tdc build configuration (Ivan Vecera) [1824071] - [net] sched: act_ct: Enable hardware offload of flow table entires (Ivan Vecera) [1824071] - [net] sched: act_ct: Support refreshing the flow table entries (Ivan Vecera) [1824071] - [net] sched: act_ct: Support restoring conntrack info on skbs (Ivan Vecera) [1824071] - [net] sched: act_ct: Instantiate flow table entry actions (Ivan Vecera) [1824071] - [net] net_sched: keep alloc_hash updated after hash allocation (Ivan Vecera) [1824071] - [net] net_sched: hold rtnl lock in tcindex_partial_destroy_work() (Ivan Vecera) [1824071] - [include] flow_offload: restrict driver to pass one allowed bit to flow_action_hw_stats_types_check() (Ivan Vecera) [1824071] - [netdrv] flow_offload: introduce "delayed" HW stats type and allow it in mlx5 (Ivan Vecera) [1824071] - [include] flow_offload: turn hw_stats_type into dedicated enum (Ivan Vecera) [1824071] - [include] flow_offload: use flow_action_for_each in flow_action_mixed_hw_stats_types_check() (Ivan Vecera) [1824071] - [net] sched: pie: change tc_pie_xstats->prob (Ivan Vecera) [1824071] - [net] taprio: Fix sending packets without dequeueing them (Ivan Vecera) [1824071] - [net] sched: act_ct: fix lockdep splat in tcf_ct_flow_table_get (Ivan Vecera) [1824071] - [tools] selftests: forwarding: ETS: Use Qdisc counters (Ivan Vecera) [1824071] - [net] sched: Make FIFO Qdisc offloadable (Ivan Vecera) [1824071] - [include] pie: realign comment (Ivan Vecera) [1824071] - [net] pie: remove pie_vars->accu_prob_overflows (Ivan Vecera) [1824071] - [net] pie: remove unnecessary type casting (Ivan Vecera) [1824071] - [net] pie: use term backlog instead of qlen (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter with canid extended match rules (Ivan Vecera) [1824071] - [tools] tc-testing: list kernel options for basic filter with canid ematch. (Ivan Vecera) [1824071] - [net] sched: act_ct: Use pskb_network_may_pull() (Ivan Vecera) [1824071] - [net] sched: act_ct: Fix ipv6 lookup of offloaded connections (Ivan Vecera) [1824071] - [net] sched: act_ct: Software offload of established flows (Ivan Vecera) [1824071] - [net] sched: act_ct: Offload established connections to flow table (Ivan Vecera) [1824071] - [net] sched: act_ct: Create nf flow table per zone (Ivan Vecera) [1824071] - [net] taprio: add missing attribute validation for txtime delay (Ivan Vecera) [1824071] - [net] fq: add missing attribute validation for orphan mask (Ivan Vecera) [1824071] - [tools] selftests: forwarding: tc_common: Convert to use busywait (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Convert until_counter_is() to take expression (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib: Add tc_rule_handle_stats_get() (Ivan Vecera) [1824071] - [include] net: flow_offload: Replace zero-length array with flexible-array member (Ivan Vecera) [1824071] - [net] sched: Replace zero-length array with flexible-array member (Ivan Vecera) [1824071] - [net] sched: act: count in the size of action flags bitfield (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter with u32 extended match rules (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter with u16 extended match rules (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter (Ivan Vecera) [1824071] - [net] sched: correct flower port blocking (Ivan Vecera) [1824071] - [net] sched: Support specifying a starting chain via tc skb ext (Ivan Vecera) [1824071] - [net] sched: Change the block's chain list to an rcu list (Ivan Vecera) [1824071] - [net] sched: Pass ingress block to tcf_classify_ingress (Ivan Vecera) [1824071] - [net] sched: Introduce ingress classification function (Ivan Vecera) [1824071] - [net] sched: flower: add missing validation of TCA_FLOWER_FLAGS (Ivan Vecera) [1824071] - [net] sched: matchall: add missing validation of TCA_MATCHALL_FLAGS (Ivan Vecera) [1824071] - [net] taprio: Fix dropping packets when using taprio + ETF offloading (Ivan Vecera) [1824071] - [net] taprio: Use taprio_reset_tc() to reset Traffic Classes configuration (Ivan Vecera) [1824071] - [net] taprio: Add missing policy validation for flags (Ivan Vecera) [1824071] - [net] taprio: Fix still allowing changing the flags during runtime (Ivan Vecera) [1824071] - [net] taprio: Fix enabling offload with wrong number of traffic classes (Ivan Vecera) [1824071] - [net] sched: prevent a use after free (Ivan Vecera) [1824071] - [tools] tc-testing: add missing 'nsPlugin' to basic.json (Ivan Vecera) [1824071] - [net] sch_choke: Use kvcalloc (Ivan Vecera) [1824071] - [tools] selftests: mlxsw: Add a RED selftest (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib.sh: Add start_tcp_traffic (Ivan Vecera) [1824071] - [tools] selftests: mlxsw: Add a TBF selftest (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib: Allow reading TC rule byte counters (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib: Add helpers for busywaiting (Ivan Vecera) [1824071] - [tools] selftests: Move two functions from mlxsw's qos_lib to lib (Ivan Vecera) [1824071] - [net] sched: Make TBF Qdisc offloadable (Ivan Vecera) [1824071] - [net] sched: sch_tbf: Don't overwrite backlog before dumping (Ivan Vecera) [1824071] - [net] sched: add Flow Queue PIE packet scheduler (Ivan Vecera) [1824071] - [net] sched: pie: export symbols to be reused by FQ-PIE (Ivan Vecera) [1824071] - [net] sched: pie: fix alignment in struct instances (Ivan Vecera) [1824071] - [net] sched: pie: fix commenting (Ivan Vecera) [1824071] - [include] pie: improve comments and commenting style (Ivan Vecera) [1824071] - [net] pie: rearrange structure members and their initializations (Ivan Vecera) [1824071] - [include] pie: use u8 instead of bool in pie_vars (Ivan Vecera) [1824071] - [include] pie: rearrange macros in order of length (Ivan Vecera) [1824071] - [include] pie: use U64_MAX to denote (2^64 - 1) (Ivan Vecera) [1824071] - [net] sched: pie: move common code to pie.h (Ivan Vecera) [1824071] - [net] sched: use skb_list_walk_safe helper for gso segments (Ivan Vecera) [1824071] - [tools] selftests: qdiscs: Add test coverage for ETS Qdisc (Ivan Vecera) [1824071] - [tools] selftests: forwarding: sch_ets: Add test coverage for ETS Qdisc (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Move start_/stop_traffic from mlxsw to lib.sh (Ivan Vecera) [1824071] - [net] sch_ets: Make the ETS qdisc offloadable (Ivan Vecera) [1824071] - [net] sch_ets: Add a new Qdisc (Ivan Vecera) [1824071] - [include] net: pkt_cls: Clarify a comment (Ivan Vecera) [1824071] - [net] sch_cake: drop unused variable tin_quantum_prio (Ivan Vecera) [1824071] - [net] sched: act_ctinfo: fix memory leak (Ivan Vecera) [1824071] - [net] sched: act_ife: initalize ife->metalist earlier (Ivan Vecera) [1824071] - [net] sch_cake: avoid possible divide by zero in cake_enqueue() (Ivan Vecera) [1824071] - [tools] tc-testing: initial tdc selftests for cls_u32 (Ivan Vecera) [1824071] - [net] treewide: Use sizeof_field() macro (Ivan Vecera) [1824071] - [tools] tc-testing: unbreak full listing of tdc testcases (Ivan Vecera) [1824071] - [net] act_ct: support asymmetric conntrack (Ivan Vecera) [1824071] - [net] sch_cake: Add missing NLA policy entry TCA_CAKE_SPLIT_GSO (Ivan Vecera) [1824071] - [net] remove the unnecessary strict_start_type in some policies (Ivan Vecera) [1824071] - [net] sched: pie: enable timestamp based delay calculation (Ivan Vecera) [1824071] - [net] taprio: don't reject same mqprio settings (Ivan Vecera) [1824071] - [tools] tc-testing: Introduced tdc tests for basic filter (Ivan Vecera) [1824071] - [tools] tc-testing: updated pedit TDC tests (Ivan Vecera) [1824071] - [net] net_sched: add TCA_STATS_PKT64 attribute (Ivan Vecera) [1824071] - [net] net_sched: extend packet counter to 64bit (Ivan Vecera) [1824071] - [include] net_sched: do not export gnet_stats_basic_packed to uapi (Ivan Vecera) [1824071] - [tools] tc-testing: added tests with cookie for mpls TC action (Ivan Vecera) [1824071] - [net] icmp: remove duplicate code (Ivan Vecera) [1824071] - [include] icmp: add helpers to recognize ICMP error packets (Ivan Vecera) [1824071] - [net] taprio: fix panic while hw offload sched list swap (Ivan Vecera) [1824071] - [net] sched: Replace rcu_swap_protected() with rcu_replace_pointer() (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: avoid calling ktime_get_ns() if not needed (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: add dctcp-like marking (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: remove dead code dealing with retransmits (Ivan Vecera) [1824071] - [net] sched: act_ct: fix build failure in RHEL8 (Ivan Vecera) [1824071] - [net] don't return invalid table id error when we fall back to PF_UNSPEC (Sabrina Dubroca) [1814093] - [net] netfilter: update include directives. (Marcelo Leitner) [1837856] - [include] netfilter: fix include guards. (Marcelo Leitner) [1837856] - [include] netfilter: add include guard to xt_connlabel.h (Marcelo Leitner) [1837856] - [net] sk_msg: Don't use RCU_INIT_POINTER on sk_user_data (Sabrina Dubroca) [1819627] - [tools] selftests/bpf: Fix build of sockmap_ktls.c (Sabrina Dubroca) [1819627] - [net] Generate reuseport group ID on group creation (Sabrina Dubroca) [1819627] - [net] bpf: Allow selecting reuseport socket from a SOCKMAP/SOCKHASH (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Let all kernel-land lookup values in SOCKMAP/SOCKHASH (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Return socket cookie on lookup from syscall (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Don't set up upcalls and progs for listening sockets (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Allow inserting listening TCP sockets into sockmap (Sabrina Dubroca) [1819627] - [net] tcp_bpf: Don't let child socket inherit parent protocol ops on copy (Sabrina Dubroca) [1819627] - [net] net, sk_msg: Clear sk_user_data pointer on clone if tagged (Sabrina Dubroca) [1819627] - [net] net, sk_msg: Annotate lockless access to sk_prot on clone (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: bpf_tcp_ingress needs to subtract bytes from sg.size (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: msg_pop_data can incorrecty set an sge length (Sabrina Dubroca) [1819627] - [net] tls: fix const assignment warning (Sabrina Dubroca) [1819627] - [net] tls: Fix sk_psock refcnt leak in bpf_exec_tx_verdict() (Sabrina Dubroca) [1819627] - [net] tls: Fix sk_psock refcnt leak when in tls_data_ready() (Sabrina Dubroca) [1819627] - [tools] selftests/bpf: Test unhashing kTLS socket after removing from map (Sabrina Dubroca) [1819627] - [include] bpf, sk_msg: Don't clear saved sock proto on restore (Sabrina Dubroca) [1819627] - [include] bpf, sk_msg: Let ULP restore sk_proto and write_space callback (Sabrina Dubroca) [1819627] - [net] tls: Annotate access to sk_prot with READ_ONCE/WRITE_ONCE (Sabrina Dubroca) [1819627] - [net] tls: Read sk_prot once when building tls proto ops (Sabrina Dubroca) [1819627] - [net] tls: Constify base proto ops used for building tls proto (Sabrina Dubroca) [1819627] - [net] tls: Fix to avoid gettig invalid tls record (Sabrina Dubroca) [1819627] - [net] tls: avoid spurious decryption error with HW resync (Sabrina Dubroca) [1819627] - [net] tls: add helper for testing if socket is RX offloaded (Sabrina Dubroca) [1819627] - [tools] selftests: net: tls: remove recv_rcvbuf test (Sabrina Dubroca) [1819627] - [net] tls: use sg_next() to walk sg entries (Sabrina Dubroca) [1819627] - [net] tls: remove the dead inplace_crypto code (Sabrina Dubroca) [1819627] - [tools] selftests/tls: add a test for fragmented messages (Sabrina Dubroca) [1819627] - [net] tls: Fix unused function warning (Sabrina Dubroca) [1819627] - [net] tls: store decrypted on a single bit (Sabrina Dubroca) [1819627] - [net] tls: store async_capable on a single bit (Sabrina Dubroca) [1819627] - [net] tls: pass context to tls_device_decrypted() (Sabrina Dubroca) [1819627] - [net] tls: make allocation failure unlikely (Sabrina Dubroca) [1819627] - [net] tls: mark sk->err being set as unlikely (Sabrina Dubroca) [1819627] - [net] sockmap: use bitmap for copy info (Sabrina Dubroca) [1819627] - [net] tls: add TlsDeviceRxResync statistic (Sabrina Dubroca) [1819627] - [net] tls: add TlsDecryptError stat (Sabrina Dubroca) [1819627] - [net] tls: add statistics for installed sessions (Sabrina Dubroca) [1819627] - [net] tls: add skeleton of MIB statistics (Sabrina Dubroca) [1819627] - [net] tls: add device decrypted trace point (Sabrina Dubroca) [1819627] - [net] tls: add tracing for device/offload events (Sabrina Dubroca) [1819627] - [net] tls: allow compiling TLS TOE out (Sabrina Dubroca) [1819627] - [net] tls: rename tls_hw_* functions tls_toe_* (Sabrina Dubroca) [1819627] - [net] tls: move TOE-related code to a separate file (Sabrina Dubroca) [1819627] - [net] tls: move tls_build_proto() on init path (Sabrina Dubroca) [1819627] - [net] tls: use the full sk_proto pointer (Sabrina Dubroca) [1819627] - [net] tls: rename tls_device to tls_toe_device (Sabrina Dubroca) [1819627] - [net] tls: move TOE-related structures to a separate header (Sabrina Dubroca) [1819627] - [net] tls: sleeping function from invalid context (Sabrina Dubroca) [1819627] - [net] netfilter: nft_set_rbtree: Add missing expired checks (Phil Sutter) [1778020] - [tools] selftests: netfilter: extend flowtable test script with dnat rule (Marcelo Leitner) [1811193] - [tools] selftests: netfilter: extend flowtable test script for ipsec (Marcelo Leitner) [1811193] - [tools] selftests: netfilter: add flowtable test script (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: set NF_FLOW_TEARDOWN flag on entry expiration (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Remove WQ_MEM_RECLAIM from workqueue (Marcelo Leitner) [1811193] - [net] netfilter: nf_conntrack: add IPS_HW_OFFLOAD status bit (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Free block_cb when being deleted (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add counter support in HW offload (Marcelo Leitner) [1811193] - [net] netfilter: conntrack: add nf_ct_acct_add() (Marcelo Leitner) [1811193] - [net] netfilter: conntrack: export nf_ct_acct_update() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Use work entry per offload command (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Use rw sem as flow block lock (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add counter support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add enum nft_flowtable_flags to uapi (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix incorrect tc_setup_type type (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: populate addr_type mask (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix flushing of offloaded flows on free (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: fix NULL pointer dereference in tunnel offload support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: reload ip{v6}h in nf_flow_tuple_ip{v6} (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: reload ip{v6}h in nf_flow_nat_ip{v6} (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: dump NFTA_CHAIN_FLAGS attribute (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: free flowtable hooks on hook register error (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add tunnel encap/decap action offload support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add indr block setup support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_table_block_offload_init() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add tunnel match offload support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: skip offload setup if disabled (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Use nf_flow_offload_tuple for stats as well (Marcelo Leitner) [1811193] - [net] flow_offload: Add flow_match_ct to get rule ct match (Marcelo Leitner) [1811193] - [include] net/sched: act_ct: Enable hardware offload of flow table entires (Marcelo Leitner) [1811193] - [include] net/sched: act_ct: Support refreshing the flow table entries (Marcelo Leitner) [1811193] - [include] net/sched: act_ct: Support restoring conntrack info on skbs (Marcelo Leitner) [1811193] - [net] sched: act_ct: Instantiate flow table entry actions (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Add API for registering to flow table events (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix setting forgotten NF_FLOW_HW_DEAD flag (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix missing flush hardware on table free (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix hardware flush order on nf_flow_table_cleanup (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: fix check the chain offload flag (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: fix memory leak in nf_tables_parse_netdev_hooks() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_table_offload_cmd() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_offload_tuple() helper (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: refresh flow if hardware offload fails (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flowtable_hw_offload() helper function (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: use atomic bitwise operations for flow flags (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: remove dying bit, use teardown bit instead (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_offload_work_alloc() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: restrict flow dissector match on meta ingress device (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: fetch stats only if flow is still alive (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flowtable_time_stamp (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: unbind callbacks from flowtable destroy path (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: fix the nat port mangle. (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: check the status of dst_neigh (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: fix incorrect ethernet dst address (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix big-endian integer overflow (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Correct memcpy size for flow_overload_mangle() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: return EOPNOTSUPP if rule specifies no actions (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: add IPv6 match description (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Don't use offset uninitialized in flow_offload_port_{d, s}nat (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Fix block_cb tc_setup_type as TC_SETUP_CLSFLOWER (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Fix block setup as TC_SETUP_FT cmd (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: check if bind callback fails and unbind if hook registration fails (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add nft_unregister_flowtable_hook() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: undo updates if transaction fails (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: release flow_rule on error from commit path (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: remove reference to flow rule from deletion path (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: add IPv6 support (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: add flow_action_entry_next() and use it (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary parameter in flow_offload_fill_dir (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Fix check ndo_setup_tc when setup_block (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: Check for the NETDEV_UNREGISTER event (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: hardware offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add flowtable offload control plane (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: detach routing information from flow description (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: skip tcp rst and fin packets (Marcelo Leitner) [1811193] - [net] netfilter: nf_flowtable: remove flow_offload_entry structure (Marcelo Leitner) [1811193] - [include] netfilter: nf_flow_table: remove union from flow_offload structure (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: move conntrack object to struct flow_offload (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: skip EBUSY on chain update (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: bogus EOPNOTSUPP on basechain update (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: pass extack to nft_flow_cls_offload_setup() (Marcelo Leitner) [1811193] - [net] netfilter: nft_meta: offload support for interface index (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: white-space fixes. (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: check for register data length mismatches (Marcelo Leitner) [1811193] - [net] netfilter: nft_bitwise: Adjust parentheses to fix memcmp size argument (Marcelo Leitner) [1811193] - [net] netfilter: nft_bitwise: add offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: unbind if multi-device binding fails (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_flow_block_offload_init() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_chain_offload_cmd() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: restore basechain deletion (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: support for multiple devices per netdev hook (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: fix base chain stat rcu_dereference usage (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: remove rules on unregistered device only (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_flow_cls_offload_setup() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: Pass callback list to nft_setup_cb_call() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_flow_block_chain() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: increase maximum devices number per flowtable (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: allow netdevice to be used only once per flowtable (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: dynamically allocate hooks per net_device in flowtables (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove flowtable hook flush routine in netns exit routine (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: move priority to struct nf_flowtable (Marcelo Leitner) [1811193] - [net] netfilter: nft_payload: fix missing check for matching length in offloads (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: set timeout before insertion into hashes (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: fix always true policy is unset check (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add NFT_CHAIN_POLICY_UNSET and use it (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: remove rules when the device unregisters (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: refactor the nft_flow_offload_rule function (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: refactor the nft_flow_offload_chain function (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add __nft_offload_get_chain function (Marcelo Leitner) [1811193] - [net] netfilter: nft_{fwd, dup}_netdev: add offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: avoid excessive stack usage (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: move indirect flow_block callback logic to core (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: set default timeout after successful insertion (Marcelo Leitner) [1811193] - [net] netfilter: ctnetlink: honor IPS_OFFLOAD flag (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: clear skb tstamp before xmit (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: map basechain priority to hardware priority (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: teardown flow timeout race (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: conntrack picks up expired flows (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: support indr block call (Marcelo Leitner) [1811193] - [net] flow_offload: add flow_block structure and use it (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: store data in offload context registers (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix offload for flows that are subject to xfrm (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: don't fail when updating base chain policy (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add hardware offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: delay chain policy update until transaction is complete (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: IPCB is only valid for ipv4 family (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: don't offload when sequence numbers need adjustment (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: set liberal tracking mode for tcp (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: ignore DF bit setting (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary variable in flow_offload_tuple (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: add entry to flowtable after confirmation (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: fix checking method of conntrack helper (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix missing error check for rhashtable_insert_fast (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: do not flow offload deleted conntrack entries (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: simplify nf_flow_offload_gc_step() (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: check ttl value in flow offload data path (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix netdev refcnt leak (Marcelo Leitner) [1811193] - [net] netfilter: nf_flowtable: skip device lookup from interface index (Marcelo Leitner) [1811193] - [net] netfilter: conntrack: fix IPV6=n builds (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: fix interaction with vrf slave device (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: Fix reverse route lookup (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: make nf_flow_table_iterate() static (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: do not remove offload when other netns's interface is down (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary parameter of nf_flow_table_cleanup() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary nat flag check code (Marcelo Leitner) [1811193] - [net] mptcp: mark tech preview and disable by default (Florian Westphal) [1835796] - [net] mptcp: fix bogus socket flag values (Florian Westphal) [1835796] - [net] mptcp: select CRYPTO (Florian Westphal) [1835796] - [net] mptcp: Protect subflow socket options before connection completes (Florian Westphal) [1835796] - [net] mptcp: make the symbol 'mptcp_sk_clone_lock' static (Florian Westphal) [1835796] - [net] mptcp: fix use-after-free for ipv6 (Florian Westphal) [1835796] - [net] mptcp: fix use-after-free on tcp fallback (Florian Westphal) [1835796] - [net] mptcp: Fix undefined mptcp_handle_ipv6_mapped for modular IPV6 (Florian Westphal) [1835796] - [net] mptcp: Fix incorrect IPV6 dependency check (Florian Westphal) [1835796] - [net] mptcp: handle tcp fallback when using syn cookies (Florian Westphal) [1835796] - [net] mptcp: avoid a lockdep splat when mcast group was joined (Florian Westphal) [1835796] - [net] mptcp: fix panic on user pointer access (Florian Westphal) [1835796] - [net] mptcp: defer freeing of cached ext until last moment (Florian Westphal) [1835796] - [net] mptcp: Fix build with PROC_FS disabled. (Florian Westphal) [1835796] - [tools] selftests: settings: tests can be in subsubdirs (Florian Westphal) [1835796] - [net] mptcp: Fix code formatting (Florian Westphal) [1835796] - [net] mptcp: do not inherit inet proto ops (Florian Westphal) [1835796] - [net] add and use MPTCP_PROTO_KERN (Florian Westphal) [1835796] - [net] mptcp: cope with later TCP fallback (Florian Westphal) [1835796] - [net] mptcp: process MP_CAPABLE data option (Florian Westphal) [1835796] - [net] mptcp: parse and emit MP_CAPABLE option according to v1 spec (Florian Westphal) [1835796] - [net] mptcp: move from sha1 (v0) to sha256 (v1) (Florian Westphal) [1835796] - [tools] mptcp: add basic kselftest for mptcp (Florian Westphal) [1835796] - [net] mptcp: new sysctl to control the activation per NS (Florian Westphal) [1835796] - [net] mptcp: allow collapsing consecutive sendpages on the same substream (Florian Westphal) [1835796] - [net] mptcp: recvmsg() can drain data from multiple subflows (Florian Westphal) [1835796] - [net] mptcp: add subflow write space signalling and mptcp_poll (Florian Westphal) [1835796] - [net] mptcp: Implement MPTCP receive path (Florian Westphal) [1835796] - [net] mptcp: Write MPTCP DSS headers to outgoing data packets (Florian Westphal) [1835796] - [net] mptcp: Add setsockopt()/getsockopt() socket operations (Florian Westphal) [1835796] - [net] mptcp: Add shutdown() socket operation (Florian Westphal) [1835796] - [net] mptcp: Add key generation and token tree (Florian Westphal) [1835796] - [net] mptcp: Create SUBFLOW socket for incoming connections (Florian Westphal) [1835796] - [net] mptcp: Handle MP_CAPABLE options for outgoing connections (Florian Westphal) [1835796] - [net] mptcp: Associate MPTCP context with TCP socket (Florian Westphal) [1835796] - [net] mptcp: Handle MPTCP TCP options (Florian Westphal) [1835796] - [net] mptcp: Add MPTCP socket stubs (Florian Westphal) [1835796] - [net] netfilter: conntrack: fix infinite loop on rmmod (Florian Westphal) [1832381] - [tools] selftests: add netdevsim devlink dev info test (Petr Oros) [1830928] - [tools] selftests: test netdevsim reload forbid and fail (Petr Oros) [1830928] - [netdrv] mlx4: fix "initializer element not constant" compiler error (Petr Oros) [1830928] - [netdrv] netdevsim: dev: Fix memory leak in nsim_dev_take_snapshot_write (Petr Oros) [1830928] - [net] devlink: fix return value after hitting end in region read (Petr Oros) [1830928] - [net] devlink: Fix reporter's recovery condition (Petr Oros) [1830928] - [documentation] docs: devlink: clarify the scope of snapshot id (Petr Oros) [1830928] - [net] devlink: let kernel allocate region snapshot id (Petr Oros) [1830928] - [net] devlink: factor out building a snapshot notification (Petr Oros) [1830928] - [documentation] devlink: fix broken link warning (Petr Oros) [1830928] - [net] devlink: use NL_SET_ERR_MSG_MOD instead of NL_SET_ERR_MSG (Petr Oros) [1830928] - [include] devlink: Add macro for "fw.mgmt.api" to info_get cb. (Petr Oros) [1830928] - [netdrv] netdevsim: support taking immediate snapshot via devlink (Petr Oros) [1830928] - [net] devlink: implement DEVLINK_CMD_REGION_NEW (Petr Oros) [1830928] - [net] devlink: track snapshot id usage count using an xarray (Petr Oros) [1830928] - [net] devlink: report error once U32_MAX snapshot ids have been used (Petr Oros) [1830928] - [net] devlink: extract snapshot id allocation to helper function (Petr Oros) [1830928] - [net] devlink: use -ENOSPC to indicate no more room for snapshots (Petr Oros) [1830928] - [net] devlink: add function to take snapshot while locked (Petr Oros) [1830928] - [net] devlink: trivial: fix tab in function documentation (Petr Oros) [1830928] - [net] devlink: convert snapshot destructor callback to region op (Petr Oros) [1830928] - [net] devlink: prepare to support region operations (Petr Oros) [1830928] - [documentation] devlink: expand the devlink-info documentation (Petr Oros) [1830928] - [net] devlink: Introduce devlink port flavour virtual (Petr Oros) [1830928] - [net] devlink: validate length of region addr/len (Petr Oros) [1830928] - [net] devlink: validate length of param values (Petr Oros) [1830928] - [net] core: Replace zero-length array with flexible-array member (Petr Oros) [1830928] - [net] core: devlink.c: Use built-in RCU list checking (Petr Oros) [1830928] - [net] devlink: Rely on driver eswitch thread safety instead of devlink (Petr Oros) [1830928] - [net] core: devlink.c: Hold devlink->lock from the beginning of devlink_dpipe_table_register() (Petr Oros) [1830928] - [net] devlink: Force enclosing array on binary fmsg data (Petr Oros) [1830928] - [net] devlink: report 0 after hitting end in region read (Petr Oros) [1830928] - [net] devlink: correct misspelling of snapshot (Petr Oros) [1830928] - [tools] selftests: Add a test of large binary to devlink health test (Petr Oros) [1830928] - [netdrv] netdevsim: Update dummy reporter's devlink binary interface (Petr Oros) [1830928] - [net] devlink: Allow large formatted message of binary output (Petr Oros) [1830928] - [tools] selftests: netdevsim: Add test cases for devlink-trap policers (Petr Oros) [1823743] - [netdrv] netdevsim: Add support for setting of packet trap group parameters (Petr Oros) [1823743] - [net] devlink: Allow setting of packet trap group parameters (Petr Oros) [1823743] - [net] devlink: Add packet trap group parameters support (Petr Oros) [1823743] - [netdrv] netdevsim: Add devlink-trap policer support (Petr Oros) [1823743] - [documentation] Add description of packet trap policers (Petr Oros) [1823743] - [net] devlink: Add packet trap policers support (Petr Oros) [1823743] - [net] devlink: Add auto dump flag to health reporter (Petr Oros) [1823743] - [net] devlink: Implicitly set auto recover flag when registering health reporter (Petr Oros) [1823743] - [netdrv] netdevsim: Change dummy reporter auto recover default (Petr Oros) [1823743] - [net] devlink: Only pass packet trap group identifier in trap structure (Petr Oros) [1823743] - [net] devlink: Stop reference counting packet trap groups (Petr Oros) [1823743] - [netdrv] netdevsim: Explicitly register packet trap groups (Petr Oros) [1823743] - [net] devlink: Add API to register packet trap groups (Petr Oros) [1823743] - [net] esp6: calculate transport_header correctly when sel.family != AF_INET6 (Xin Long) [1815980 1761579] - [net] esp4: support ipv6 nexthdrs process for beet gso segment (Xin Long) [1815980 1761579] - [net] esp6: support ipv6 nexthdrs process for beet gso segment (Xin Long) [1815980 1761579] - [net] xfrm: remove the xfrm_state_put call becofe going to out_reset (Xin Long) [1815980 1761579] - [net] esp6: get the right proto for transport mode in esp6_gso_encap (Xin Long) [1815980 1761579] - [net] xfrm: do pskb_pull properly in __xfrm_transport_prep (Xin Long) [1815980 1761579] - [net] xfrm: allow to accept packets with ipv6 NEXTHDR_HOP in xfrm_input (Xin Long) [1815980 1761579] - [net] xfrm: add prep for esp beet mode offload (Xin Long) [1815980 1761579] - [net] esp6: add gso_segment for esp6 beet mode (Xin Long) [1815980 1761579] - [net] esp4: add gso_segment for esp4 beet mode (Xin Long) [1815980 1761579] - [net] xfrm: kconfig: make xfrm depend on inet (Xin Long) [1815980 1761579] - [net] xfrm: make xfrm modes builtin (Xin Long) [1815980 1761579] - [net] xfrm: remove afinfo pointer from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove output2 indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove input2 indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove gso_segment indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove xmit indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove output indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove input indirection from xfrm_mode (Xin Long) [1761579 1815980] - [net] xfrm: prefer family stored in xfrm_mode struct (Xin Long) [1815980 1761579] - [net] xfrm: place af number into xfrm_mode struct (Xin Long) [1761579 1815980] - [net] xfrm: gso partial offload support (Xin Long) [1761579 1815980] - [net] netfilter: cttimeout: remove set but not used variable 'l3num' (Florian Westphal) [1822085] - [net] netfilter: conntrack: handle icmp pkt_to_tuple helper via direct calls (Florian Westphal) [1822085] - [net] netfilter: conntrack: handle builtin l4proto packet functions via direct calls (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove net_id (Florian Westphal) [1822085] - [net] netfilter: conntrack: gre: switch module to be built-in (Florian Westphal) [1822085] - [net] netfilter: remove unused parameters in nf_ct_l4proto_[un]register_sysctl() (Florian Westphal) [1822085] - [net] netfilter: conntrack: gre: convert rwlock to rcu (Florian Westphal) [1822085] - [net] netfilter: nfnetlink_cttimeout: fetch timeouts for udplite and gre, too (Florian Westphal) [1822085] - [net] netfilter: nfnetlink_cttimeout: pass default timeout policy to obj_to_nlattr (Florian Westphal) [1822085] - [net] netfilter: conntrack: add nf_{tcp, udp, sctp, icmp, dccp, icmpv6, generic}_pernet() (Florian Westphal) [1822085] - [net] netfilter: conntrack: clamp l4proto array size at largers supported protocol (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove l3->l4 mapping information (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove unused proto arg from netns init functions (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove error callback and handle icmp from core (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid using ->error callback if possible (Florian Westphal) [1822085] - [net] netfilter: conntrack: deconstify packet callback skb pointer (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove the l4proto->new() function (Florian Westphal) [1822085] - [net] netfilter: conntrack: timeout interface depend on CONFIG_NF_CONNTRACK_TIMEOUT (Florian Westphal) [1822085] - [net] netfilter: conntrack: pass nf_hook_state to packet and error handlers (Florian Westphal) [1822085] - [net] netfilter: conntrack: place 'new' timeout in first location too (Florian Westphal) [1822085] - [net] netfilter: nf_conntrack_h323: Remove deprecated config check (Florian Westphal) [1822085] - [include] netfilter: nf_tables: merge route type into core (Florian Westphal) [1822085] - [net] netfilter: ipv6: avoid indirect calls for IPV6=y case (Florian Westphal) [1822085] - [net] netfilter: nat: remove module dependency on ipv6 core (Florian Westphal) [1822085] - [net] netfilter: remove obsolete need_conntrack stub (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid use-after free on rmmod (Florian Westphal) [1822085] - [net] netfilter: conntrack: dccp, sctp: handle null timeout argument (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove duplicated include from nf_conntrack_proto_udp.c (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove l3proto abstraction (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove get_timeout() indirection (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid l4proto pkt_to_tuple calls (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid calls to l4proto invert_tuple (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove get_l4proto indirection from l3 protocol trackers (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove invert_tuple indirection from l3 protocol trackers (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove pkt_to_tuple indirection from l3 protocol trackers (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove ctnetlink callbacks from l3 protocol trackers (Florian Westphal) [1822085] - [net] openvswitch: use nf_ct_get_tuplepr, invert_tuplepr (Florian Westphal) [1822085] - [net] netfilter: utils: move nf_ip6_checksum* from ipv6 to utils (Florian Westphal) [1822085] - [net] netfilter: utils: move nf_ip_checksum* from ipv4 to utils (Florian Westphal) [1822085] - [net] netfilter: flowtables: use fixed renew timeout on teardown (Florian Westphal) [1822085] - [netdrv] geneve: use the correct nlattr array in NL_SET_ERR_MSG_ATTR (Xin Long) [1809503] - [netdrv] vxlan: use the correct nlattr array in NL_SET_ERR_MSG_ATTR (Xin Long) [1809503] - [netdrv] geneve: Allow configuration of DF behaviour (Xin Long) [1809503] - [netdrv] vxlan: Allow configuration of DF behaviour (Xin Long) [1809503] - [netdrv] net: phy: realtek: fix using paged operations with RTL8105e / RTL8208 (Josef Oskera) [1841511] - [netdrv] r8169: fix OCP access on RTL8117 (Josef Oskera) [1841511] - [netdrv] r8169: re-establish support for RTL8401 chip version (Josef Oskera) [1841511] - [netdrv] r8169: change back SG and TSO to be disabled by default (Josef Oskera) [1841511] - [netdrv] r8169: factor out rtl8169_tx_map (Josef Oskera) [1841511] - [netdrv] r8169: improve handling of TD_MSS_MAX (Josef Oskera) [1841511] - [netdrv] r8169: fix PHY driver check on platforms w/o module softdeps (Josef Oskera) [1841511] - [netdrv] r8169: re-enable MSI on RTL8168c (Josef Oskera) [1841511] - [netdrv] r8169: don't use MSI before RTL8168d (Josef Oskera) [1841511] - [netdrv] r8169: improve RTL8168b FIFO overflow workaround (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl_schedule_task (Josef Oskera) [1841511] - [netdrv] r8169: simplify rtl_task (Josef Oskera) [1841511] - [netdrv] r8169: add new helper rtl8168g_enable_gphy_10m (Josef Oskera) [1841511] - [netdrv] net: r8169: reject unsupported coalescing params (Josef Oskera) [1841511] - [netdrv] r8169: simplify getting stats by using netdev_stats_to_stats64 (Josef Oskera) [1841511] - [netdrv] r8169: let rtl8169_mark_to_asic clear rx descriptor field opts2 (Josef Oskera) [1841511] - [netdrv] r8169: remove now unneeded barrier in rtl_tx (Josef Oskera) [1841511] - [netdrv] r8169: simplify usage of rtl8169_unmap_tx_skb (Josef Oskera) [1841511] - [netdrv] r8169: ensure tx_skb is fully reset after calling rtl8169_unmap_tx_skb (Josef Oskera) [1841511] - [netdrv] r8169: convert while to for loop in rtl_tx (Josef Oskera) [1841511] - [netdrv] r8169: use pci_status_get_and_clear_errors (Josef Oskera) [1841511] - [netdrv] r8169: add PCI_STATUS_PARITY to PCI status error bits (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl8169_start_xmit (Josef Oskera) [1841511] - [netdrv] r8169: remove RTL_EVENT_NAPI constants (Josef Oskera) [1841511] - [netdrv] r8169: use new helper tcp_v6_gso_csum_prep (Josef Oskera) [1841511] - [netdrv] r8169: improve statistics of missed rx packets (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl_jumbo_config (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl8169_get_mac_version (Josef Oskera) [1841511] - [netdrv] r8169: add helper rtl_pci_commit (Josef Oskera) [1841511] - [netdrv] r8169: simplify setting netdev features (Josef Oskera) [1841511] - [netdrv] r8169: remove setting PCI_CACHE_LINE_SIZE in rtl_hw_start_8169 (Josef Oskera) [1841511] - [netdrv] r8169: remove unneeded check from rtl_link_chg_patch (Josef Oskera) [1841511] - [netdrv] r8169: fix performance regression related to PCIe max read request size (Josef Oskera) [1841511] - [netdrv] r8169: don't set min_mtu/max_mtu if not needed (Josef Oskera) [1841511] - [netdrv] r8169: factor out PHY configuration to r8169_phy_config.c (Josef Oskera) [1841511] - [netdrv] r8169: add r8169.h (Josef Oskera) [1841511] - [netdrv] r8169: rename rtl_apply_firmware (Josef Oskera) [1841511] - [netdrv] r8169: add phydev argument to rtl8168d_apply_firmware_cond (Josef Oskera) [1841511] - [netdrv] r8169: use phy_read/write instead of rtl_readphy/writephy (Josef Oskera) [1841511] - [netdrv] r8169: replace rtl_w0w1_phy (Josef Oskera) [1841511] - [netdrv] r8169: replace rtl_patchphy (Josef Oskera) [1841511] - [netdrv] r8169: move disabling MAC EEE for RTL8402/RTL8106e (Josef Oskera) [1841511] - [netdrv] r8169: move setting ERI register 0x1d0 for RTL8106 (Josef Oskera) [1841511] - [netdrv] r8169: switch to phylib functions in rtl_writephy_batch (Josef Oskera) [1841511] - [netdrv] r8169: change argument type of RTL8168g-specific PHY config functions (Josef Oskera) [1841511] - [netdrv] r8169: change argument type of EEE PHY functions (Josef Oskera) [1841511] - [netdrv] r8169: move RTL8169scd Gigabyte PHY quirk (Josef Oskera) [1841511] - [netdrv] r8169: remove not needed debug print in rtl8169_init_phy (Josef Oskera) [1841511] - [netdrv] r8169: prepare for exporting rtl_hw_phy_config (Josef Oskera) [1841511] - [netdrv] r8169: add constant EnAnaPLL (Josef Oskera) [1841511] - [netdrv] r8169: move enabling EEE to rtl8169_init_phy (Josef Oskera) [1841511] - [netdrv] r8169: remove MAC workaround in rtl8168e_2_hw_phy_config (Josef Oskera) [1841511] - [netdrv] r8169: factor out rtl8168h_2_get_adc_bias_ioffset (Josef Oskera) [1841511] - [netdrv] r8169: check that Realtek PHY driver module is loaded (Josef Oskera) [1841511] - [netdrv] treewide: Use sizeof_field() macro (Josef Oskera) [1841511] - [netdrv] r8169: fix rtl_hw_jumbo_disable for RTL8168evl (Josef Oskera) [1841511] - [netdrv] r8169: add missing RX enabling for WoL on RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: fix jumbo configuration for RTL8168evl (Josef Oskera) [1841511] - [netdrv] r8169: add check for PHY_MDIO_CHG to rtl_nic_fw_data_ok (Josef Oskera) [1841511] - [netdrv] r8169: use macro FIELD_SIZEOF in definition of FW_OPCODE_SIZE (Josef Oskera) [1841511] - [netdrv] r8169: change mdelay to msleep in rtl_fw_write_firmware (Josef Oskera) [1841511] - [netdrv] r8169: load firmware for RTL8168fp/RTL8117 (Josef Oskera) [1841511] - [netdrv] r8169: improve conditional firmware loading for RTL8168d (Josef Oskera) [1841511] - [netdrv] r8169: use r8168d_modify_extpage in rtl8168f_config_eee_phy (Josef Oskera) [1841511] - [netdrv] r8169: add support for RTL8117 (Josef Oskera) [1841511] - [netdrv] r8169: respect EEE user setting when restarting network (Josef Oskera) [1841511] - [netdrv] r8169: remove rtl8168c_4_hw_phy_config (Josef Oskera) [1841511] - [netdrv] r8169: add helper r8168d_modify_extpage (Josef Oskera) [1841511] - [netdrv] r8169: switch to phylib functions in more places (Josef Oskera) [1841511] - [netdrv] r8169: add helper r8168d_phy_param (Josef Oskera) [1841511] - [netdrv] r8169: add helper r8168g_phy_param (Josef Oskera) [1841511] - [netdrv] r8169: fix page read in r8168g_mdio_read (Josef Oskera) [1841511] - [netdrv] r8169: fix wrong PHY ID issue with RTL8168dp (Josef Oskera) [1841511] - [netdrv] r8169: use helper rtl_hw_aspm_clkreq_enable also in rtl_hw_start_8168g_2 (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl8169_rx_fill (Josef Oskera) [1841511] - [netdrv] r8169: align fix_features callback with vendor driver (Josef Oskera) [1841511] - [netdrv] r8169: never set PCI_EXP_DEVCTL_NOSNOOP_EN (Josef Oskera) [1841511] - [netdrv] r8169: remove rtl_hw_start_8168bef (Josef Oskera) [1841511] - [netdrv] r8169: remove rtl_hw_start_8168dp (Josef Oskera) [1841511] - [netdrv] r8169: simplify setting PCI_EXP_DEVCTL_NOSNOOP_EN (Josef Oskera) [1841511] - [netdrv] r8169: remove fiddling with the PCIe max read request size (Josef Oskera) [1841511] - [netdrv] r8169: fix jumbo packet handling on resume from suspend (Josef Oskera) [1841511] - [netdrv] r8169: don't set bit RxVlan on RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: add support for EEE on RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: add RTL8125 PHY initialization (Josef Oskera) [1841511] - [netdrv] r8169: add support for RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: don't use bit LastFrag in tx descriptor after send (Josef Oskera) [1841511] - [netdrv] r8169: read common register for PCI commit (Josef Oskera) [1841511] - [netdrv] r8169: move disabling interrupt coalescing to RTL8169/RTL8168 init (Josef Oskera) [1841511] - [netdrv] r8169: factor out reading MAC address from registers (Josef Oskera) [1841511] - [netdrv] r8169: restrict rtl_is_8168evl_up to RTL8168 chip versions (Josef Oskera) [1841511] - [netdrv] r8169: change interrupt mask type to u32 (Josef Oskera) [1841511] - [netdrv] r8169: improve DMA handling in rtl_rx (Josef Oskera) [1841511] - [netdrv] r8169: fix DMA issue on MIPS platform (Josef Oskera) [1841511] - [netdrv] r8169: sync EEE handling for RTL8168h with vendor driver (Josef Oskera) [1841511] - [netdrv] r8169: use the generic EEE management functions (Josef Oskera) [1841511] - [fs] gfs2: Even more gfs2_find_jhead fixes (Abhijith Das) [1828653] - [kernel] sched/fair: Don't NUMA balance for kthreads (Phil Auld) [1842543] - [kernel] sched/core: Offload wakee task activation if it the wakee is descheduling (Phil Auld) [1842543] - [kernel] sched/core: Optimize ttwu() spinning on p->on_cpu (Phil Auld) [1842543] - [fs] gfs2: Smarter iopen glock waiting (Andreas Grunbacher) [1582655] - [fs] gfs2: Wake up when setting GLF_DEMOTE (Andreas Grunbacher) [1582655] - [fs] gfs2: Check inode generation number in delete_work_func (Andreas Grunbacher) [1582655] - [fs] gfs2: Move inode generation number check into gfs2_inode_lookup (Andreas Grunbacher) [1582655] - [fs] gfs2: Minor gfs2_lookup_by_inum cleanup (Andreas Grunbacher) [1582655] - [fs] gfs2: Try harder to delete inodes locally (Andreas Grunbacher) [1582655] - [fs] gfs2: Give up the iopen glock on contention (Andreas Grunbacher) [1582655] - [fs] gfs2: Turn gl_delete into a delayed work (Andreas Grunbacher) [1582655] - [fs] gfs2: Keep track of deleted inode generations in LVBs (Andreas Grunbacher) [1582655] - [fs] gfs2: Allow ASPACE glocks to also have an lvb (Andreas Grunbacher) [1582655] - [fs] gfs2: Avoid access time thrashing in gfs2_inode_lookup (Andreas Grunbacher) [1582655] - [fs] gfs2: Use IS_ERR_OR_NULL (Andreas Grunbacher) [1582655] - [fpga] fpga: mark the intel fpga drivers as tech preview (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: stratix10-svc: Remove unneeded semicolon (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: Fix incompatible function behavior for RSU driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: add Intel Stratix10 remote system update driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] firmware: stratix10-svc: extend svc to support new RSU features (Luis Goncalves) [1689274 1660310 1494701 1494699] - [edac] EDAC/altera, firmware/intel: Add Stratix10 ECC DBE SMC call (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: stratix10-svc: fix wrong of_node_put() in init function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] firmware: add remote status update client support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: add Intel Stratix10 service layer driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: pci: fix return value of cci_pci_sriov_configure (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: xilinx-pr-decoupler: Remove clk_get error message for probe defer (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: remove redundant dev_err message (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: remove set but not used variable 'afu' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: remove set but not used variable 'fme' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add power management support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add thermal management support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] Documentation: fpga: dfl: add descriptions for thermal/power management interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: Remove dev_err() usage after platform_get_irq() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] Documentation: fpga: dfl: add descriptions for virtualization and new interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add global error reporting support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add STP (SignalTap) support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add error reporting support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: expose __afu_port_enable/disable function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add userclock sysfs interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: convert platform_driver to use dev_groups (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: convert platform_driver to use dev_groups (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: make init callback optional (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Add Stratix10 (V2) Support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Preparation for V2 parts (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Discover Vendor Specific offset (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-ps-spi: Fix getting of optional confd gpio (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add capability sysfs interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: make uinit callback optional (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add id_table for dfl private feature driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add AFU state related sysfs interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: pci: enable SRIOV support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add DFL_FPGA_FME_PORT_RELEASE/ASSIGN ioctl support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: use driver core functions, not sysfs ones (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-pr-ip: Make alt_pr_unregister function void (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Fix function definition argument (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga-manager: altera-ps-spi: Fix build error (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: align PR buffer size per PR datawidth (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: remove copy_to_user() in ioctl for PR (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl-fme-mgr: fix FME_PR_INTFC_ID register address (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] drivers: fpga: Kconfig: pedantic cleanups (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] docs: fpga: convert docs to ReST and rename to *.rst (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 285 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: zynqmp-fpga: Correctly handle error pointer (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] include: fpga: adi-axi-common.h: add common regs & defs header (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: expand minor range when registering chrdev region (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: Add lockdep classes for pdata->lock (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: Pass the correct device to dma_mapping_error() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: stratix10-soc: fix use-after-free on s10_init() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Add SPDX license identifier - Makefile/Kconfig (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] mm/gup: change GUP fast to use flags rather than a write 'bool' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga manager: Adding FPGA Manager support for Xilinx zynqmp (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera_freeze_bridge: remove restriction to socfpga (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: altera-ps-spi: make array dummy static, shrinks object size (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: stratix10-soc: fix wrong of_node_put() in init function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] Remove 'type' argument from access_ok() function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: of-fpga-region: Use platform_set_drvdata (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl-fme-region: Use platform_get_drvdata() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add intel stratix10 soc fpga manager driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: altera-ps-spi: enable usage on non-dt platforms (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: fix probing for multiple FPGAs on the bus (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] zynq-fpga: Only route PR via PCAP when required (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Fix registration for CvP incapable devices (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: remove set but not used variable 'priv' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: fix 'bad IO access' on x86_64 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add devm_fpga_region_create (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: bridge: add devm_fpga_bridge_create (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: add devm_fpga_mgr_create (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] docs: fpga: document fpga manager flags (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: bridge: fix obvious function documentation error (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: do not access region struct after fpga_region_unregister (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] drivers: fpga: fix two trivial spelling mistakes (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: fix return value check in in pr_mgmt_init() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add DFL_FPGA_PORT_DMA_MAP/UNMAP ioctls support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add afu sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add DFL_FPGA_GET_API_VERSION/CHECK_EXTENSION ioctls support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add header sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add port ops support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add FPGA Accelerated Function Unit driver basic framework (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme-region: add support for compat_id (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add fpga region platform driver for FME (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add fpga bridge platform driver for FME (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme-mgr: add compat_id support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add fpga manager platform driver for FME (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add partial reconfiguration sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add DFL_FPGA_GET_API_VERSION/CHECK_EXTENSION ioctls support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add header sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add FPGA Management Engine driver basic framework (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl-pci: add enumeration for feature devices (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add FPGA DFL PCIe device driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add dfl_fpga_check_port_id function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add dfl_fpga_port_ops support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add feature device infrastructure (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add dfl_fpga_cdev_find_port (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add chardev support for feature devices (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add device feature list support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: region: add compat_id support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] fpga: mgr: add compat_id support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: add status for fpga-manager (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] fpga: mgr: add region_id to fpga_image_info (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] docs: fpga: add a document for FPGA Device Feature List (DFL) Framework Overview (Luis Goncalves) [1689274 1660310 1494701 1494699] - [mm] mm: Add a vmf_insert_mixed_prot() function (Dave Airlie) [1838335] - [mm] mm: Add write-protect and clean utilities for address space ranges (Dave Airlie) [1838335] - [mm] mm: Add a walk_page_mapping() function to the pagewalk code (Dave Airlie) [1838335] - [mm] pagewalk: separate function pointers from iterator data (Dave Airlie) [1838335] - [mm] mm: split out a new pagewalk.h header from mm.h (Dave Airlie) [1838335] - [mm] mm: update ptep_modify_prot_commit to take old pte value as arg (Dave Airlie) [1838335] - [x86] mm: update ptep_modify_prot_start/commit to take vm_area_struct as arg (Dave Airlie) [1838335] - [mm] mm/mmu_notifier: add an interval tree notifier (Dave Airlie) [1838335] - [mm] mm/mmu_notifier: define the header pre-processor parts even if disabled (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: add a lockdep map for invalidate_range_start/end (Dave Airlie) [1838335] - [misc] misc/sgi-gru: use mmu_notifier_get/put for struct gru_mm_struct (Dave Airlie) [1838335] - [drm] drm/backport: add mmu notifier get/put support to drm backport (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: add a get/put scheme for the registration (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: do not speculatively allocate a mmu_notifier_mm (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: hoist do_mmu_notifier_register down_write to the caller (Dave Airlie) [1838335] - [mm] mm/mmu_notifier.c: remove mmu_notifier_synchronize() (Dave Airlie) [1838335] - [infiniband] locking/lockdep: Rename lockdep_assert_held_exclusive() -> lockdep_assert_held_write() (Dave Airlie) [1838335] - [include] mm/mmu_notifier: contextual information for event enums (Dave Airlie) [1838335] - [mm] mm/memory_hotplug.c: only respect mem= parameter during boot stage (Baoquan He) [1838809 1781472] - [scsi] scsi: mpt3sas: Remove unused including (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix double free warnings (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Disable DIF when prot_mask set to zero (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Capture IOC data for debugging purposes (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Use true, false for ioc->use_32bit_dma (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Remove NULL check before freeing function (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Update mpt3sas version to 33.101.00.00 (Tomas Henzl) [1790760] - [scsi] mpt3sas: Fix memset in non-rdpq mode (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix reply queue count in non RDPQ mode (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Handle RDPQ DMA allocation in same 4G region (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Separate out RDPQ allocation to new function (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Rename function name is_MSB_are_same (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Don't change the DMA coherent mask after allocations (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: use true, false for bool variables (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix kernel panic observed on soft HBA unplug (Tomas Henzl) [1790760] - [scsi] scsi: Replace zero-length array with flexible-array member (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Update drive version to 33.100.00.00 (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Remove usage of device_busy counter (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Print function name in which cmd timed out (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Optimize mpt3sas driver logging (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: print in which path firmware fault occurred (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Handle CoreDump state from watchdog thread (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Add support IOCs new state named COREDUMP (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: renamed _base_after_reset_handler function (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Add support for NVMe shutdown (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Update MPI Headers to v02.00.57 (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix double free in attach error handling (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Clean up some indenting (Tomas Henzl) [1790760] - [crypto] crypto: af_alg - cast ki_complete ternary op to int (Herbert Xu) [1837499] - [netdrv] virtio-net: per-queue RPS config (Eugenio Perez) [1718086] - [netdrv] virtio_net: Differentiate sk_buff and xdp_frame on freeing (Eugenio Perez) [1718086] - [netdrv] virtio_net: Use xdp_return_frame to free xdp_frames on destroying vqs (Eugenio Perez) [1718086] - [netdrv] virtio_net: enable napi_tx by default (Eugenio Perez) [1718086] - [netdrv] virtio_net: Don't call free_old_xmit_skbs for xdp_frames (Eugenio Perez) [1718086] - [netdrv] virtio_net: Don't enable NAPI when interface is down (Eugenio Perez) [1718086] - [include] cpumask: make cpumask_next_wrap available without smp (Eugenio Perez) [1718086] - [netdrv] virtio_net: Stripe queue affinities across cores (Eugenio Perez) [1718086] - [virtio] virtio: Make vp_set_vq_affinity() take a mask (Eugenio Perez) [1718086]- [netdrv] ice: add board identifier info to devlink .info_get (Jonathan Toppins) [1796682] - [netdrv] ice: add basic handler for devlink .info_get (Jonathan Toppins) [1796682] - [netdrv] ice: enable initial devlink support (Jonathan Toppins) [1796682] - [netdrv] ice: implement full NVM read from ETHTOOL_GEEPROM (Jonathan Toppins) [1796682] - [netdrv] ice: discover and store size of available flash (Jonathan Toppins) [1796682] - [netdrv] ice: store NVM version info in extracted format (Jonathan Toppins) [1796682] - [netdrv] ice: create function to read a section of the NVM and Shadow RAM (Jonathan Toppins) [1796682] - [netdrv] ice: use __le16 types for explicitly Little Endian values (Jonathan Toppins) [1796682] - [netdrv] ice: fix incorrect size description of ice_get_nvm_version (Jonathan Toppins) [1781388] - [netdrv] ice: use variable name more descriptive than type (Jonathan Toppins) [1781388] - [netdrv] ice: Use EOPNOTSUPP instead of ENOTSUPP (Jonathan Toppins) [1781388] - [netdrv] ice: Fix format specifier (Jonathan Toppins) [1781388] - [netdrv] ice: fix use of deprecated strlcpy() (Jonathan Toppins) [1781388] - [netdrv] ice: Increase mailbox receive queue length to maximum (Jonathan Toppins) [1781388] - [netdrv] ice: Correct setting VLAN pruning (Jonathan Toppins) [1781388] - [netdrv] ice: renegotiate link after FW DCB on (Jonathan Toppins) [1781388] - [netdrv] ice: Fix corner case when switching from IEEE to CEE (Jonathan Toppins) [1781388] - [netdrv] ice: Display Link detected via Ethtool in safe mode (Jonathan Toppins) [1781388] - [netdrv] ice: Fix removing driver while bare-metal VFs pass traffic (Jonathan Toppins) [1781388] - [netdrv] ice: Improve clarity of prints and variables (Jonathan Toppins) [1781388] - [netdrv] ice: allow bigger VFs (Jonathan Toppins) [1781388] - [netdrv] ice: Cleanup unneeded parenthesis (Jonathan Toppins) [1781388] - [netdrv] ice: Use pci_get_dsn() (Jonathan Toppins) [1781388] - [netdrv] ice: let core reject the unsupported coalescing parameters (Jonathan Toppins) [1781388] - [netdrv] ice: fix define for E822 backplane device (Jonathan Toppins) [1781388] - [netdrv] ice: add support for E823 devices (Jonathan Toppins) [1795812] - [netdrv] ice: add backslash-n to strings (Jonathan Toppins) [1781388] - [netdrv] ice: increase PF reset wait timeout to 300 milliseconds (Jonathan Toppins) [1781388] - [netdrv] ice: Support XDP UMEM wake up mechanism (Jonathan Toppins) [1781388] - [netdrv] ice: SW DCB, report correct max TC value (Jonathan Toppins) [1781388] - [netdrv] ice: Report correct DCB mode (Jonathan Toppins) [1781388] - [netdrv] ice: Add DCBNL ops required to configure ETS in CEE for SW DCB (Jonathan Toppins) [1781388] - [netdrv] ice: Always clear the QRXFLXP_CNTXT register for VF Rx queues (Jonathan Toppins) [1781388] - [netdrv] ice: Fix for TCAM entry management (Jonathan Toppins) [1781388] - [netdrv] ice: update malicious driver detection event handling (Jonathan Toppins) [1781388] - [netdrv] ice: Validate config for SW DCB map (Jonathan Toppins) [1781388] - [netdrv] ice: Wait for VF to be reset/ready before configuration (Jonathan Toppins) [1792691] - [netdrv] ice: Don't reject odd values of usecs set by user (Jonathan Toppins) [1781388] - [netdrv] ice: use true/false for bool types (Jonathan Toppins) [1781388] - [netdrv] ice: add function argument description to function header comment (Jonathan Toppins) [1781388] - [netdrv] ice: use proper format for function pointer as a function parameter (Jonathan Toppins) [1781388] - [netdrv] ice: remove unnecessary fallthrough comments (Jonathan Toppins) [1781388] - [netdrv] ice: Fix virtchnl_queue_select bitmap validation (Jonathan Toppins) [1781388] - [netdrv] ice: Fix and refactor Rx queue disable for VFs (Jonathan Toppins) [1781388] - [netdrv] ice: Handle LAN overflow event for VF queues (Jonathan Toppins) [1781388] - [netdrv] ice: Fix implicit queue mapping mode in ice_vsi_get_qs (Jonathan Toppins) [1781388] - [netdrv] ice: Add support to enable/disable all Rx queues before waiting (Jonathan Toppins) [1781388] - [netdrv] ice: Only allow tagged bcast/mcast traffic for VF in port VLAN (Jonathan Toppins) [1781388] - [netdrv] ice: Fix Port VLAN priority bits (Jonathan Toppins) [1781388] - [netdrv] ice: Add helper to determine if VF link is up (Jonathan Toppins) [1781388] - [netdrv] ice: Refactor port vlan configuration for the VF (Jonathan Toppins) [1781388] - [netdrv] ice: Add initial support for QinQ (Jonathan Toppins) [1781388] - [netdrv] ice: Trivial fixes (Jonathan Toppins) [1781388] - [netdrv] ice: Use correct netif error function (Jonathan Toppins) [1781388] - [netdrv] ice: Cleanup ice_vsi_alloc_q_vectors (Jonathan Toppins) [1781388] - [netdrv] ice: Make print statements more compact (Jonathan Toppins) [1781388] - [netdrv] ice: Use ice_pf_to_dev (Jonathan Toppins) [1781388] - [netdrv] ice: Remove possible null dereference (Jonathan Toppins) [1781388] - [netdrv] ice: update Unit Load Status bitmask to check after reset (Jonathan Toppins) [1781388] - [netdrv] ice: fix and consolidate logging of NVM/firmware version information (Jonathan Toppins) [1781388] - [netdrv] ice: Modify link message logging (Jonathan Toppins) [1781388] - [netdrv] ice: Remove CONFIG_PCI_IOV wrap in ice_set_pf_caps (Jonathan Toppins) [1781388] - [netdrv] ice: Remove ice_dev_onetime_setup() (Jonathan Toppins) [1781388] - [netdrv] ice: Don't allow same value for Rx tail to be written twice (Jonathan Toppins) [1781388] - [netdrv] ice: display supported and advertised link modes (Jonathan Toppins) [1781388] - [netdrv] ice: Fix switch between FW and SW LLDP (Jonathan Toppins) [1781388] - [netdrv] ice: Fix DCB rebuild after reset (Jonathan Toppins) [1781388] - [netdrv] ice: Bump version (Jonathan Toppins) [1781401] - [netdrv] ice: Implement ethtool get/set rx-flow-hash (Jonathan Toppins) [1781401] - [netdrv] ice: Initilialize VF RSS tables (Jonathan Toppins) [1781401] - [netdrv] ice: Optimize table usage (Jonathan Toppins) [1781401] - [netdrv] ice: Enable writing filtering tables (Jonathan Toppins) [1781401] - [netdrv] ice: Populate TCAM filter software structures (Jonathan Toppins) [1781401] - [netdrv] ice: Allocate flow profile (Jonathan Toppins) [1781401] - [netdrv] ice: Enable writing hardware filtering tables (Jonathan Toppins) [1781401] - [netdrv] ice: remove redundant assignment to variable xmit_done (Jonathan Toppins) [1781388] - [netdrv] ice: Removing hung_queue variable to use txqueue function parameter (Jonathan Toppins) [1781388] - [netdrv] ice: Add device ids for E822 devices (Jonathan Toppins) [1781951] - [netdrv] ice: Suppress Coverity warnings for xdp_rxq_info_reg (Jonathan Toppins) [1781388] - [netdrv] ice: Add a boundary check in ice_xsk_umem() (Jonathan Toppins) [1781388] - [netdrv] ice: add extra check for null Rx descriptor (Jonathan Toppins) [1781388] - [netdrv] ice: suppress checked_return error (Jonathan Toppins) [1781388] - [netdrv] ice: Demote MTU change print to debug (Jonathan Toppins) [1781388] - [netdrv] ice: Enable ip link show on the PF to display VF unicast MAC(s) (Jonathan Toppins) [1781388] - [netdrv] ice: Fix VF link state when it's IFLA_VF_LINK_STATE_AUTO (Jonathan Toppins) [1781388] - [netdrv] ice: Remove Rx flex descriptor programming (Jonathan Toppins) [1781388] - [netdrv] ice: Return error on not supported ethtool -C parameters (Jonathan Toppins) [1781388] - [netdrv] ice: Restore interrupt throttle settings after VSI rebuild (Jonathan Toppins) [1781388] - [netdrv] ice: Set default value for ITR in alloc function (Jonathan Toppins) [1781388] - [netdrv] ice: Add ice_for_each_vf() macro (Jonathan Toppins) [1781388] - [netdrv] ice: Add code to keep track of current dflt_vsi (Jonathan Toppins) [1781388] - [netdrv] ice: Fix VF spoofchk (Jonathan Toppins) [1781388] - [netdrv] ice: Support UDP segmentation offload (Jonathan Toppins) [1781388] - [netdrv] ice: Update FW API minor version (Jonathan Toppins) [1781388] - [netdrv] ice: remove pointless NULL check of port_info (Jonathan Toppins) [1781388] - [netdrv] ice: Implement ethtool ops for channels (Jonathan Toppins) [1781388] - [netdrv] ice: implement VF stats NDO (Jonathan Toppins) [1781388] - [netdrv] ice: add helpers for virtchnl (Jonathan Toppins) [1781388] - [netdrv] ice: Add ice_pf_to_dev(pf) macro (Jonathan Toppins) [1781388] - [netdrv] ice: Do not use devm* functions for local uses (Jonathan Toppins) [1781388] - [netdrv] ice: Refactor removal of VLAN promiscuous rules (Jonathan Toppins) [1781388] - [netdrv] ice: Fix setting coalesce to handle DCB configuration (Jonathan Toppins) [1781388] - [netdrv] ice: Only disable VF state when freeing each VF resources (Jonathan Toppins) [1781388] - [netdrv] ice: fix stack leakage (Jonathan Toppins) [1781388] - [netdrv] ice: Don't modify stripping for add/del VLANs on VF (Jonathan Toppins) [1781388] - [netdrv] ice: Disallow VF VLAN opcodes if VLAN offloads disabled (Jonathan Toppins) [1781388] - [netdrv] ice: Correct capabilities reporting of max TCs (Jonathan Toppins) [1781388] - [netdrv] ice: Store number of functions for the device (Jonathan Toppins) [1781388] - [netdrv] ice: fix potential infinite loop because loop counter being too small (Jonathan Toppins) [1781388] - [netdrv] ice: print opcode when printing controlq errors (Jonathan Toppins) [1781388] - [netdrv] ice: use more accurate ICE_DBG mask types (Jonathan Toppins) [1781388] - [netdrv] ice: Introduce and use ice_vsi_type_str (Jonathan Toppins) [1781388] - [netdrv] ice: remove unnecessary conditional check (Jonathan Toppins) [1781388] - [netdrv] ice: Update enum ice_flg64_bits to current specification (Jonathan Toppins) [1781388] - [netdrv] ice: delay less (Jonathan Toppins) [1781388] - [netdrv] ice: use pkg_dwnld_status instead of sq_last_status (Jonathan Toppins) [1781388] - [netdrv] ice: Change max MSI-x vector_id check in cfg_irq_map (Jonathan Toppins) [1781388] - [netdrv] ice: Check if VF is disabled for Opcode and other operations (Jonathan Toppins) [1781388] - [netdrv] ice: configure software LLDP in ice_init_pf_dcb (Jonathan Toppins) [1781388] - [netdrv] ice: Fix to change Rx/Tx ring descriptor size via ethtool with DCBx (Jonathan Toppins) [1781388] - [netdrv] ice: avoid setting features during reset (Jonathan Toppins) [1781388] - [netdrv] ice: Implement DCBNL support (Jonathan Toppins) [1781388] - [netdrv] ice: Add NDO callback to set the maximum per-queue bitrate (Jonathan Toppins) [1781388] - [netdrv] ice: Use ice_ena_vsi and ice_dis_vsi in DCB configuration flow (Jonathan Toppins) [1781388] - [netdrv] ice: Fix return value when SR-IOV is not supported (Jonathan Toppins) [1781388] - [netdrv] ice: Rename VF function ice_vc_dis_vf to match its behavior (Jonathan Toppins) [1781388] - [netdrv] ice: Get rid of ice_cleanup_header (Jonathan Toppins) [1781388] - [netdrv] ice: print PCI link speed and width (Jonathan Toppins) [1781388] - [netdrv] ice: print unsupported module message (Jonathan Toppins) [1781388] - [netdrv] ice: write register with correct offset (Jonathan Toppins) [1781388] - [netdrv] ice: Check for null pointer dereference when setting rings (Jonathan Toppins) [1781388] - [netdrv] ice: save PCI state in probe (Jonathan Toppins) [1781388] - [netdrv] ice: Adjust DCB INIT for SW mode (Jonathan Toppins) [1781388] - [netdrv] ice: fix driver unload flow (Jonathan Toppins) [1781388] - [netdrv] ice: handle DCBx non-contiguous TC request (Jonathan Toppins) [1781388] - [netdrv] ice: Update Boot Configuration Section read of NVM (Jonathan Toppins) [1781388] - [netdrv] ice: add ethtool -m support for reading i2c eeprom modules (Jonathan Toppins) [1781388] - [netdrv] ice: allow 3k MTU for XDP (Jonathan Toppins) [1781388] - [netdrv] ice: add build_skb() support (Jonathan Toppins) [1781388] - [netdrv] ice: introduce frame padding computation logic (Jonathan Toppins) [1781388] - [netdrv] ice: introduce legacy Rx flag (Jonathan Toppins) [1781388] - [netdrv] ice: Add support for AF_XDP (Jonathan Toppins) [1730487] - [netdrv] ice: Move common functions to ice_txrx_lib.c (Jonathan Toppins) [1781388] - [netdrv] ice: Add support for XDP (Jonathan Toppins) [1730487] - [netdrv] ice: get rid of per-tc flow in Tx queue configuration routines (Jonathan Toppins) [1781388] - [netdrv] ice: Introduce ice_base.c (Jonathan Toppins) [1781388] - [netdrv] net:Use skb accessors in network drivers (Jonathan Toppins) [1781388] - [powerpc] powerpc/eeh: Remove eeh_add_device_tree_late() (Myron Stowe) [1840904] - [powerpc] powerpc/eeh: Add sysfs files in late probe (Myron Stowe) [1840904] - [powerpc] powerpc: Drop using struct of_pci_range.pci_space field (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Fold pcibios_setup_device() into pcibios_bus_add_device() (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Remove pcibios_setup_bus_devices() (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Fix pcibios_setup_device() ordering (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Remove legacy debug code (Myron Stowe) [1840904] - [x86] x86/microcode/AMD: Increase microcode PATCH_MAX_SIZE (David Arcari) [1826966] - [x86] x86/microcode/AMD: Make stub function static inline (David Arcari) [1826966] - [x86] x86/microcode/intel: Issue the revision updated message only on the BSP (David Arcari) [1826966] - [x86] x86/microcode: Update late microcode in parallel (David Arcari) [1826966] - [x86] x86/microcode/amd: Fix two -Wunused-but-set-variable warnings (David Arcari) [1826966] - [x86] x86/microcode: Fix the microcode load on CPU hotplug for real (David Arcari) [1826966] - [x86] x86/microcode, cpuhotplug: Add a microcode loader CPU hotplug callback (David Arcari) [1826966] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 353 (David Arcari) [1826966] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (David Arcari) [1826966] - [x86] treewide: Add SPDX license identifier - Makefile/Kconfig (David Arcari) [1826966] - [x86] x86/microcode: Fix the ancient deprecated microcode loading method (David Arcari) [1826966] - [x86] x86/microcode/intel: Refactor Intel microcode blob loading (David Arcari) [1826966] - [x86] x86/microcode: Announce reload operation's completion (David Arcari) [1826966] - [x86] x86/microcode/AMD: Update copyright (David Arcari) [1826966] - [x86] x86/microcode/AMD: Check the equivalence table size when scanning it (David Arcari) [1826966] - [x86] x86/microcode/AMD: Convert CPU equivalence table variable into a struct (David Arcari) [1826966] - [x86] x86/microcode/AMD: Check microcode container data in the late loader (David Arcari) [1826966] - [x86] x86/microcode/AMD: Fix container size's type (David Arcari) [1826966] - [x86] x86/microcode/AMD: Convert early parser to the new verification routines (David Arcari) [1826966] - [x86] x86/microcode/AMD: Change verify_patch()'s return value (David Arcari) [1826966] - [x86] x86/microcode/AMD: Move chipset-specific check into verify_patch() (David Arcari) [1826966] - [x86] x86/microcode/AMD: Move patch family check to verify_patch() (David Arcari) [1826966] - [x86] x86/microcode/AMD: Simplify patch family detection (David Arcari) [1826966] - [x86] x86/microcode/AMD: Concentrate patch verification (David Arcari) [1826966] - [x86] x86/microcode/AMD: Cleanup verify_patch_size() more (David Arcari) [1826966] - [x86] x86/microcode/AMD: Clean up per-family patch size checks (David Arcari) [1826966] - [x86] x86/microcode/AMD: Move verify_patch_size() up in the file (David Arcari) [1826966] - [x86] x86/microcode/AMD: Add microcode container verification (David Arcari) [1826966] - [x86] x86/microcode/AMD: Subtract SECTION_HDR_SIZE from file leftover length (David Arcari) [1826966] - [x86] x86/microcode: Make revision and processor flags world-readable (David Arcari) [1826966] - [pci] PCI: Add pci_status_get_and_clear_errors (Josef Oskera) [1840535] - [pci] PCI: Add constant PCI_STATUS_ERROR_BITS (Josef Oskera) [1840535] - [arm64] arm64: dts: ls1046ardb: set RGMII interfaces to RGMII_ID mode (Petr Oros) [1816982] - [arm64] arm64: dts: ls1043a-rdb: correct RGMII delay mode to rgmii-id (Petr Oros) [1816982] - [netdrv] net: phy: marvell: Fix pause frame negotiation (Petr Oros) [1816982] - [netdrv] net: phy: propagate an error back to the callers of phy_sfp_probe (Petr Oros) [1816982] - [netdrv] net: phy: at803x: fix clock sink configuration on ATH8030 and ATH8035 (Petr Oros) [1816982] - [netdrv] r8169: fix resume on cable plug-in (Petr Oros) [1816982] - [documentation] dt-bindings: net: remove un-implemented property (Petr Oros) [1816982] - [netdrv] net: phy: mdio-bcm-unimac: Fix clock handling (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: w/a for fld detect threshold bootstrapping issue (Petr Oros) [1816982] - [netdrv] net: phy: sfp-bus.c: get rid of docs warnings (Petr Oros) [1816982] - [netdrv] net: phy: mdio-mux-bcm-iproc: check clk_prepare_enable() return value (Petr Oros) [1816982] - [netdrv] net: phy: fix MDIO bus PM PHY resuming (Petr Oros) [1816982] - [of] drivers/of/of_mdio.c:fix of_mdiobus_register() (Petr Oros) [1816982] - [netdrv] net: phy: bcm63xx: fix OOPS due to missing driver name (Petr Oros) [1816982] - [netdrv] phylink: Improve error message when validate failed (Petr Oros) [1816982] - [netdrv] net: phy: avoid clearing PHY interrupts twice in irq handler (Petr Oros) [1816982] - [netdrv] net: phy: marvell: don't interpret PHY status unless resolved (Petr Oros) [1816982] - [netdrv] net: phy: mscc: fix firmware paths (Petr Oros) [1816982] - [netdrv] net: phy: corrected the return value for genphy_check_and_restart_aneg and genphy_c45_check_and_restart_aneg (Petr Oros) [1816982] - [documentation] docs: networking: phy: Rephrase paragraph for clarity (Petr Oros) [1816982] - [netdrv] net: phy: Avoid multiple suspends (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Fix a typo ("firsly") (Petr Oros) [1816982] - [netdrv] net: phy: restore mdio regs in the iproc mdio driver (Petr Oros) [1816982] - [netdrv] net: phy: at803x: disable vddio regulator (Petr Oros) [1816982] - [netdrv] net: mii_timestamper: fix static allocation by PHY driver (Petr Oros) [1816982] - [of] net: mdio: of: fix potential NULL pointer derefernce (Petr Oros) [1816982] - [netdrv] net: phy: add default ARCH_BCM_IPROC for MDIO_BCM_IPROC (Petr Oros) [1816982] - [netdrv] net: phy: DP83822: Add support for additional DP83825 devices (Petr Oros) [1816982] - [netdrv] phy: dp83826: Add phy IDs for DP83826N and 826NC (Petr Oros) [1816982] - [netdrv] net: phy: add new version of phy_do_ioctl (Petr Oros) [1816982] - [netdrv] net: phy: rename phy_do_ioctl to phy_do_ioctl_running (Petr Oros) [1816982] - [netdrv] r8169: use generic ndo_do_ioctl handler phy_do_ioctl (Petr Oros) [1816982] - [netdrv] net: phy: add generic ndo_do_ioctl handler phy_do_ioctl (Petr Oros) [1816982] - [netdrv] net: phylink: allow in-band AN for USXGMII (Petr Oros) [1816982] - [netdrv] net: phy: adin: fix a warning about msleep (Petr Oros) [1816982] - [netdrv] net: phy: don't crash in phy_read/_write_mmd without a PHY driver (Petr Oros) [1816982] - [netdrv] net: phylink: Allow 2.5BASE-T, 5GBASE-T and 10GBASE-T for the 10G link modes (Petr Oros) [1816982] - [netdrv] net: phy: adin: const-ify static data (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Set FORCE_LINK_GOOD to default after reset (Petr Oros) [1816982] - [netdrv] net: phy: Maintain MDIO device and bus statistics (Petr Oros) [1816982] - [powerpc] powerpc: Add const qual to local_read() parameter (Petr Oros) [1816982] - [include] u64_stats: provide u64_stats_t type (Petr Oros) [1816982] - [documentation] Documentation: net-sysfs: Remove duplicate PHY device documentation (Petr Oros) [1816982] - [netdrv] mdio_bus: Simplify reset handling and extend to non-DT systems (Petr Oros) [1816982] - [netdrv] net: phy: Added IRQ print to phylink_bringup_phy() (Petr Oros) [1816982] - [netdrv] net: phy: DP83822: Update Kconfig with DP83825I support (Petr Oros) [1816982] - [netdrv] net: phy: DP83TC811: Fix typo in Kconfig (Petr Oros) [1816982] - [netdrv] net: phylink: add support for polling MAC PCS (Petr Oros) [1816982] - [netdrv] net: phylink: make QSGMII a valid PHY mode for in-band AN (Petr Oros) [1816982] - [uapi] mii: Add helpers for parsing SGMII auto-negotiation (Petr Oros) [1816982] - [netdrv] net: phylink: fix failure to register on x86 systems (Petr Oros) [1816982] - [netdrv] net: phy: fixed_phy: switch to using fwnode_gpiod_get_index (Petr Oros) [1816982] - [netdrv] net: phy: fixed_phy: fix use-after-free when checking link GPIO (Petr Oros) [1816982] - [netdrv] net: phylink: switch to using fwnode_gpiod_get_index() (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add support for configuring the RX delay on RTL8211F (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add logging for the RGMII TX delay configuration (Petr Oros) [1816982] - [netdrv] net: mdio: of: Register discovered MII time stampers (Petr Oros) [1816982] - [documentation] dt-bindings: ptp: Introduce MII time stamping devices (Petr Oros) [1816982] - [netdrv] net: Add a layer for non-PHY MII time stamping drivers (Petr Oros) [1816982] - [netdrv] net: Introduce a new MII time stamping interface (Petr Oros) [1816982] - [netdrv] net: phy: dp83640: Move the probe and remove methods around (Petr Oros) [1816982] - [netdrv] net: netcp_ethss: Use the PHY time stamping interface (Petr Oros) [1816982] - [net] net: ethtool: Use the PHY time stamping interface (Petr Oros) [1816982] - [net] net: vlan: Use the PHY time stamping interface (Petr Oros) [1816982] - [netdrv] net: macvlan: Use the PHY time stamping interface (Petr Oros) [1816982] - [include] net: phy: Introduce helper functions for time stamping support (Petr Oros) [1816982] - [include] of: mdio: Add missing inline to of_mdiobus_child_is_phy() dummy (Petr Oros) [1816982] - [netdrv] net: phy: aquantia: add suspend / resume ops for AQR105 (Petr Oros) [1816982] - [netdrv] net: phy: ensure that phy IDs are correctly typed (Petr Oros) [1816982] - [include] mod_devicetable: fix PHY module format (Petr Oros) [1816982] - [of] of: mdio: export of_mdiobus_child_is_phy (Petr Oros) [1816982] - [netdrv] net: sfp: report error on failure to read sfp soft status (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use genphy_check_and_restart_aneg() (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use phy_modify_changed() (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use existing clause 37 definitions (Petr Oros) [1816982] - [netdrv] net: phy: marvell: consolidate phy status reading (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use positive logic for link state (Petr Oros) [1816982] - [netdrv] net: phy: marvell: initialise link partner state earlier (Petr Oros) [1816982] - [netdrv] net: phy: marvell: rearrange to use genphy_read_lpa() (Petr Oros) [1816982] - [netdrv] net: phy: provide and use genphy_read_status_fixed() (Petr Oros) [1816982] - [netdrv] net: phy: add genphy_check_and_restart_aneg() (Petr Oros) [1816982] - [netdrv] net: phy: use phy_resolve_aneg_pause() (Petr Oros) [1816982] - [netdrv] net: phy: remove redundant .aneg_done initialisers (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: Remove unneeded semicolon (Petr Oros) [1816982] - [netdrv] net: phylink: extend clause 45 PHY validation workaround (Petr Oros) [1816982] - [netdrv] net: phylink: improve clause 45 PHY ksettings_set implementation (Petr Oros) [1816982] - [netdrv] net: phylink: fix interface passed to mac_link_up (Petr Oros) [1816982] - [netdrv] net: phylink: propagate phy_attach_direct() return code (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Add rx-fifo-depth and tx-fifo-depth (Petr Oros) [1816982] - [documentation] dt-bindings: dp83867: Convert fifo-depth to common fifo-depth and make optional (Petr Oros) [1816982] - [netdrv] net: sfp: re-attempt probing for phy (Petr Oros) [1816982] - [netdrv] net: sfp: error handling for phy probe (Petr Oros) [1816982] - [netdrv] net: sfp: rename sm_retries (Petr Oros) [1816982] - [netdrv] net: sfp: use a definition for the fault recovery attempts (Petr Oros) [1816982] - [netdrv] net: sfp: add support for Clause 45 PHYs (Petr Oros) [1816982] - [netdrv] net: phy: add Broadcom BCM84881 PHY driver (Petr Oros) [1816982] - [netdrv] net: phylink: make Broadcom BCM84881 based SFPs work (Petr Oros) [1816982] - [netdrv] net: phylink: delay MAC configuration for copper SFP modules (Petr Oros) [1816982] - [netdrv] net: phylink: split phylink_sfp_module_insert() (Petr Oros) [1816982] - [netdrv] net: phylink: split link_an_mode configured and current settings (Petr Oros) [1816982] - [netdrv] net: phylink: support Clause 45 PHYs on SFP+ modules (Petr Oros) [1816982] - [netdrv] net: phylink: re-split __phylink_connect_phy() (Petr Oros) [1816982] - [netdrv] net: mdio-i2c: add support for Clause 45 accesses (Petr Oros) [1816982] - [netdrv] net: sfp: move phy_start()/phy_stop() to phylink (Petr Oros) [1816982] - [netdrv] net: sfp: add module start/stop upstream notifications (Petr Oros) [1816982] - [netdrv] net: sfp: derive interface mode from ethtool link modes (Petr Oros) [1816982] - [netdrv] net: sfp: remove incomplete 100BASE-FX and 100BASE-LX support (Petr Oros) [1816982] - [netdrv] net: sfp: avoid tx-fault with Nokia GPON module (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: fix hfs boot in rgmii mode (Petr Oros) [1816982] - [netdrv] phy: mdio-thunder: add missed pci_release_regions in remove (Petr Oros) [1816982] - [netdrv] net: sfp: fix hwmon (Petr Oros) [1816982] - [netdrv] net: sfp: fix unbind (Petr Oros) [1816982] - [netdrv] net: phy: realtek: fix using paged operations with RTL8105e / RTL8208 (Petr Oros) [1816982] - [netdrv] net: phy: Use the correct style for SPDX License Identifier (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: Fix return paths to return proper values (Petr Oros) [1816982] - [netdrv] net: phy: add helpers phy_(un)lock_mdio_bus (Petr Oros) [1816982] - [netdrv] mdio_bus: don't use managed reset-controller (Petr Oros) [1816982] - [netdrv] net: phy: initialise phydev speed and duplex sanely (Petr Oros) [1816982] - [netdrv] net: phy: remove phy_ethtool_sset() (Petr Oros) [1816982] - [netdrv] net: sfp: soft status and control support (Petr Oros) [1816982] - [netdrv] net: sfp: add some quirks for GPON modules (Petr Oros) [1816982] - [netdrv] net: sfp: add support for module quirks (Petr Oros) [1816982] - [netdrv] net: phylink: fix link mode modification in PHY mode (Petr Oros) [1816982] - [netdrv] net: phylink: update documentation on create and destroy (Petr Oros) [1816982] - [netdrv] mdio_bus: Fix init if CONFIG_RESET_CONTROLLER=n (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: fix return of uninitialized variable ret (Petr Oros) [1816982] - [netdrv] phy: mdio-sun4i: add missed regulator_disable in remove (Petr Oros) [1816982] - [netdrv] mscc.c: fix semicolon.cocci warnings (Petr Oros) [1816982] - [netdrv] net: phy: avoid matching all-ones clause 45 PHY IDs (Petr Oros) [1816982] - [netdrv] net: phylink: update to use phy_support_asym_pause() (Petr Oros) [1816982] - [netdrv] net: phy: marvell10g: add SFP+ support (Petr Oros) [1816982] - [netdrv] net: phy: add core phylib sfp support (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: Add TI dp83869 phy (Petr Oros) [1816982] - [documentation] dt-bindings: net: dp83869: Add TI dp83869 phy (Petr Oros) [1816982] - [netdrv] mscc.c: Add support for additional VSC PHYs (Petr Oros) [1816982] - [netdrv] net: sfp: fix spelling mistake "requies" -> "requires" (Petr Oros) [1816982] - [netdrv] net: sfp: allow modules with slow diagnostics to probe (Petr Oros) [1816982] - [netdrv] net: sfp: allow sfp to probe slow to initialise GPON modules (Petr Oros) [1816982] - [netdrv] net: sfp: move module insert reporting out of probe (Petr Oros) [1816982] - [netdrv] net: sfp: split power mode switching from probe (Petr Oros) [1816982] - [netdrv] net: sfp: track upstream's attachment state in state machine (Petr Oros) [1816982] - [netdrv] net: sfp: ensure TX_FAULT has deasserted before probing the PHY (Petr Oros) [1816982] - [netdrv] net: sfp: allow fault processing to transition to other states (Petr Oros) [1816982] - [netdrv] net: sfp: eliminate mdelay() from PHY probe (Petr Oros) [1816982] - [netdrv] net: sfp: split the PHY probe from sfp_sm_mod_init() (Petr Oros) [1816982] - [netdrv] net: sfp: control TX_DISABLE and phy only from main state machine (Petr Oros) [1816982] - [netdrv] net: sfp: avoid power switch on address-change modules (Petr Oros) [1816982] - [netdrv] net: sfp: parse SFP power requirement earlier (Petr Oros) [1816982] - [netdrv] net: sfp: rename T_PROBE_WAIT to T_SERIAL (Petr Oros) [1816982] - [netdrv] net: sfp: handle module remove outside state machine (Petr Oros) [1816982] - [netdrv] net: sfp: rename sfp_sm_ins_next() as sfp_sm_mod_next() (Petr Oros) [1816982] - [netdrv] net: sfp: move tx disable on device down to main state machine (Petr Oros) [1816982] - [netdrv] net: sfp: move sfp sub-state machines into separate functions (Petr Oros) [1816982] - [netdrv] net: sfp: fix sfp_bus_put() kernel documentation (Petr Oros) [1816982] - [include] net: sfp: fix sfp_bus_add_upstream() warning (Petr Oros) [1816982] - [netdrv] net: sfp: rework upstream interface (Petr Oros) [1816982] - [netdrv] net: phy: at803x: add missing dependency on CONFIG_REGULATOR (Petr Oros) [1816982] - [netdrv] net: phy: at803x: remove config_init for AR9331 (Petr Oros) [1816982] - [netdrv] net: phy: at803x: fix the PHY names (Petr Oros) [1816982] - [netdrv] net: phy: at803x: mention AR8033 as same as AR8031 (Petr Oros) [1816982] - [netdrv] net: phy: at803x: add device tree binding (Petr Oros) [1816982] - [documentation] dt-bindings: net: phy: Add support for AT803X (Petr Oros) [1816982] - [netdrv] net: phy: at803x: fix Kconfig description (Petr Oros) [1816982] - [netdrv] net: phylink: Fix phylink_dbg() macro (Petr Oros) [1816982] - [netdrv] net: phy: marvell: add downshift support for 88E1145 (Petr Oros) [1816982] - [netdrv] net: phy: marvell: add PHY tunable support for more PHY versions (Petr Oros) [1816982] - [netdrv] net: phy: marvell: add downshift support for M88E1111 (Petr Oros) [1816982] - [netdrv] net: phy: marvell: fix downshift function naming (Petr Oros) [1816982] - [netdrv] net: phy: marvell: fix typo in constant MII_M1011_PHY_SRC_DOWNSHIFT_MASK (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: support Wake on LAN (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: move dt parsing to probe (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: enable robust auto-mdix (Petr Oros) [1816982] - [netdrv] net: phy: smsc: LAN8740: add PHY_RST_AFTER_CLK_EN flag (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: add 1000Base-X support for BCM54616S (Petr Oros) [1816982] - [netdrv] net: phy: add support for clause 37 auto-negotiation (Petr Oros) [1816982] - [netdrv] net: phy: modify assignment to OR for dev_flags in phy_attach_direct (Petr Oros) [1816982] - [netdrv] net: phy: marvell: remove superseded function marvell_set_downshift (Petr Oros) [1816982] - [netdrv] net: phy: marvell: support downshift as PHY tunable (Petr Oros) [1816982] - [netdrv] net: phy: avoid NPE if read_page/write_page callbacks are not available (Petr Oros) [1816982] - [netdrv] net: phy: micrel: Update KSZ87xx PHY name (Petr Oros) [1816982] - [netdrv] net: phy: micrel: Discern KSZ8051 and KSZ8795 PHYs (Petr Oros) [1816982] - [netdrv] net: phy: Fix "link partner" information disappear issue (Petr Oros) [1816982] - [netdrv] net: sfp: move fwnode parsing into sfp-bus layer (Petr Oros) [1816982] - [netdrv] net: phylink: use more linkmode_* (Petr Oros) [1816982] - [netdrv] phylink: fix kernel-doc warnings (Petr Oros) [1816982] - [netdrv] net: phy: mscc: make arrays static, makes object smaller (Petr Oros) [1816982] - [netdrv] net: phy: at803x: use operating parameters from PHY-specific status (Petr Oros) [1816982] - [netdrv] net: phy: extract pause mode (Petr Oros) [1816982] - [netdrv] net: phy: extract link partner advertisement reading (Petr Oros) [1816982] - [netdrv] net: phy: allow for reset line to be tied to a sleepy GPIO controller (Petr Oros) [1816982] - [documentation] docs: networking: phy: Improve phrasing (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Use bcm54xx_config_clock_delay() for BCM54612E (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Fix RGMII delays configuration for BCM54210E (Petr Oros) [1816982] - [netdrv] net: phy: at803x: remove probe and struct at803x_priv (Petr Oros) [1816982] - [netdrv] net: phy: at803x: add ar9331 support (Petr Oros) [1816982] - [of] of: mdio: Fix a signedness bug in of_phy_get_and_connect() (Petr Oros) [1816982] - [netdrv] net/phy: fix DP83865 10 Mbps HDX loopback disable function (Petr Oros) [1816982] - [netdrv] net: phy: adin: implement Energy Detect Powerdown mode via phy-tunable (Petr Oros) [1816982] - [net] ethtool: implement Energy Detect Powerdown support via phy-tunable (Petr Oros) [1816982] - [netdrv] net: mdio: switch to using gpiod_get_optional() (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Add SGMII mode type switching (Petr Oros) [1816982] - [documentation] net: phy: dp83867: Add documentation for SGMII mode type (Petr Oros) [1816982] - [netdrv] net: phylink: Fix flow control resolution (Petr Oros) [1816982] - [netdrv] net: phy: Do not check Link status when loopback is enabled (Petr Oros) [1816982] - [netdrv] net: phy: gmii2rgmii: Dont use priv field in phy device (Petr Oros) [1816982] - [include] include: mdio: Add driver data helpers (Petr Oros) [1816982] - [netdrv] net: phy: force phy suspend when calling phy_stop (Petr Oros) [1816982] - [netdrv] phy: mdio-sun4i: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-mux-meson-g12a: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-moxart: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-hisi-femac: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-bcm-iproc: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] net: phy: sfp: Add labels to hwmon sensors (Petr Oros) [1816982] - [netdrv] net: phy: remove genphy_config_init (Petr Oros) [1816982] - [netdrv] net: phy: remove calls to genphy_config_init (Petr Oros) [1816982] - [netdrv] net: phy: realtek: support NBase-T MMD EEE registers on RTL8125 (Petr Oros) [1816982] - [uapi] net: phy: add EEE-related constants (Petr Oros) [1816982] - [documentation] dt-bindings: net: add bindings for ADIN PHY driver (Petr Oros) [1816982] - [netdrv] net: phy: adin: add ethtool get_stats support (Petr Oros) [1816982] - [netdrv] net: phy: adin: implement downshift configuration via phy-tunable (Petr Oros) [1816982] - [netdrv] net: phy: adin: implement PHY subsystem software reset (Petr Oros) [1816982] - [netdrv] net: phy: adin: add EEE translation layer from Clause 45 to Clause 22 (Petr Oros) [1816982] - [netdrv] net: phy: adin: add support MDI/MDIX/Auto-MDI selection (Petr Oros) [1816982] - [netdrv] net: phy: adin: make RMII fifo depth configurable (Petr Oros) [1816982] - [netdrv] net: phy: adin: make RGMII internal delays configurable (Petr Oros) [1816982] - [netdrv] net: phy: adin: configure RGMII/RMII/MII modes on config (Petr Oros) [1816982] - [netdrv] net: phy: adin: add {write,read}_mmd hooks (Petr Oros) [1816982] - [netdrv] net: phy: adin: add support for interrupts (Petr Oros) [1816982] - [netdrv] net: phy: adin: hook genphy_{suspend, resume} into the driver (Petr Oros) [1816982] - [netdrv] net: phy: adin: add support for Analog Devices PHYs (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add support for EEE registers on integrated PHY's (Petr Oros) [1816982] - [netdrv] net: phy: swphy: emulate register MII_ESTATUS (Petr Oros) [1816982] - [netdrv] net: phy: read MII_CTRL1000 in genphy_read_status only if needed (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add NBase-T PHY auto-detection (Petr Oros) [1816982] - [netdrv] net: phy: let phy_speed_down/up support speeds >1Gbps (Petr Oros) [1816982] - [netdrv] net: phy: add phy_speed_down_core and phy_resolve_min_speed (Petr Oros) [1816982] - [netdrv] net: phy: add __set_linkmode_max_speed (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add support for the 2.5Gbps PHY in RTL8125 (Petr Oros) [1816982] - [netdrv] net: phy: add phy_modify_paged_changed (Petr Oros) [1816982] - [netdrv] net: phy: prepare phylib to deal with PHY's extending Clause 22 (Petr Oros) [1816982] - [netdrv] net: phy: simplify genphy_config_advert by using the linkmode_adv_to_xxx_t functions (Petr Oros) [1816982] - [netdrv] net: phy: at803x: stop switching phy delay config needlessly (Petr Oros) [1816982] - [netdrv] net: mdio-octeon: Fix Kconfig warnings and build errors (Petr Oros) [1816982] - [netdrv] net: phy: xgene: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] net: phy: Add mdio-aspeed (Petr Oros) [1816982] - [netdrv] net: phy: phy_led_triggers: Fix a possible null-pointer dereference in phy_led_trigger_change_speed() (Petr Oros) [1816982] - [netdrv] net: phylink: Fix flow control for fixed-link (Petr Oros) [1816982] - [netdrv] net: phylink: don't start and stop SGMII PHYs in SFP modules twice (Petr Oros) [1816982] - [netdrv] net: phy: Make use of linkmode_mod_bit helper (Petr Oros) [1816982] - [netdrv] net: stmmac: enable clause 45 mdio support (Petr Oros) [1816982] - [documentation] doc: phy: document some PHY_INTERFACE_MODE_xxx settings (Petr Oros) [1816982] - [netdrv] Revert "net: phylink: set the autoneg state in phylink_phy_change" (Petr Oros) [1816982] - [netdrv] net: phy: sfp: clean up a condition (Petr Oros) [1816982] - [netdrv] net: phylink: set the autoneg state in phylink_phy_change (Petr Oros) [1816982] - [netdrv] net: phy: Add more 1000BaseX support detection (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Add genphy_suspend and genphy_resume for BCM5464 (Petr Oros) [1816982] - [netdrv] net: sfp: add mutex to prevent concurrent state checks (Petr Oros) [1816982] - [netdrv] net: sfp: Stop SFP polling and interrupt handling during shutdown (Petr Oros) [1816982] - [netdrv] net: phy: Add detection of 1000BaseX link mode support (Petr Oros) [1816982] - [netdrv] net: phy: remove state PHY_FORCING (Petr Oros) [1816982] - [netdrv] net: phy: export phy_queue_state_machine (Petr Oros) [1816982] - [netdrv] net: phy: add callback for custom interrupt handler to struct phy_driver (Petr Oros) [1816982] - [netdrv] net: phy: enable interrupts when PHY is attached already (Petr Oros) [1816982] - [netdrv] net: phy: sfp: enable i2c-bus detection on ACPI based systems (Petr Oros) [1816982] - [netdrv] net: phy: tja11xx: Switch to HWMON_CHANNEL_INFO() (Petr Oros) [1816982] - [netdrv] net: phylink: Add phylink_{printk, err, warn, info, dbg} macros (Petr Oros) [1816982] - [netdrv] net: phylink: Add PHYLINK_DEV operation type (Petr Oros) [1816982] - [netdrv] net: phylink: Add struct phylink_config to PHYLINK API (Petr Oros) [1816982] - [netdrv] net: phylink: Add phylink_mac_link_{up, down} wrapper functions (Petr Oros) [1816982] - [netdrv] net: phy: Add phy_standalone sysfs entry (Petr Oros) [1816982] - [netdrv] net: phy: Check against net_device being NULL (Petr Oros) [1816982] - [netdrv] net: phy: Guard against the presence of a netdev (Petr Oros) [1816982] - [netdrv] net: phy: Add phy_sysfs_create_links helper function (Petr Oros) [1816982] - [netdrv] net: sfp: remove sfp-bus use of netdevs (Petr Oros) [1816982] - [netdrv] net: sfp: add mandatory attach/detach methods for sfp buses (Petr Oros) [1816982] - [netdrv] net: phy: allow Clause 45 access via mii ioctl (Petr Oros) [1816982] - [netdrv] net: phylink: support for link gpio interrupt (Petr Oros) [1816982] - [netdrv] net: phylink: remove netdev from phylink mii ioctl emulation (Petr Oros) [1816982] - [netdrv] net: phy: bcm87xx: improve bcm87xx_config_init and feature detection (Petr Oros) [1816982] - [netdrv] net: phy: tja11xx: Add TJA11xx PHY driver (Petr Oros) [1816982] - [netdrv] net: phy: aquantia: add USXGMII support and warn if XGMII mode is set (Petr Oros) [1816982] - [documentation] dt-bindings: net: document new usxgmii phy mode (Petr Oros) [1816982] - [include] net: phy: add interface mode PHY_INTERFACE_MODE_USXGMII (Petr Oros) [1816982] - [netdrv] net: phy: lxt: Add suspend/resume support to LXT971 and LXT973 (Petr Oros) [1816982] - [netdrv] net: phy: Make phy_basic_t1_features use base100t1 (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Allocate state struct in probe (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Validate FIFO depth property (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: IO impedance is not dependent on RGMII delay (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Use unsigned variables to store unsigned properties (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Rework delay rgmii delay handling (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Add ability to disable output clock (Petr Oros) [1816982] - [documentation] dt-bindings: phy: dp83867: Add documentation for disabling clock output (Petr Oros) [1816982] - [documentation] dt-bindings: phy: dp83867: Describe how driver behaves w.r.t rgmii delay (Petr Oros) [1816982] - [documentation] Documentation: net: phy: switch documentation to rst format (Petr Oros) [1816982] - [of] of: mdio: Support fixed links in of_phy_get_and_connect() (Petr Oros) [1816982] - [documentation] doc: add phylink documentation to the networking book (Petr Oros) [1816982] - [include] net: phylink: update mac_config() documentation (Petr Oros) [1816982] - [tools] libbpf: use .so dynamic symbols for abi check (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Install generated test progs (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Fix memory leak caused by not freeing entry in unregister_ftrace_direct() (Yauheni Kaliuta) [1813370] - [tools] libbpf: Support CO-RE relocations for LDX/ST/STX instructions (Yauheni Kaliuta) [1813370] - [include] bpf: Add bpf_jit_blinding_enabled for !CONFIG_BPF_JIT (Yauheni Kaliuta) [1813370] - [tools] tools, bpf_asm: Warn when jumps are out of range (Yauheni Kaliuta) [1813370] - [include] bpf: Add typecast to bpf helpers to help BTF generation (Yauheni Kaliuta) [1813370] - [trace] bpf: Add typecast to raw_tracepoints to help BTF generation (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix build on read-only filesystems (Yauheni Kaliuta) [1813370] - [tools] bpf: Add further test_verifier cases for record_func_key (Yauheni Kaliuta) [1813370] - [net] bpf: Fix record_func_key to perform backtracking on r3 (Yauheni Kaliuta) [1813370] - [net] bpf: Fix missing prog untrack in release_maps (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: fix syscall_tp due to unused syscall (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: Replace symbol compare of trace_event (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Test function_graph tracer and bpf trampoline together (Yauheni Kaliuta) [1813370] - [net] bpf: Make BPF trampoline use register_ftrace_direct() API (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add modify_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add information on number of page groups allocated (Yauheni Kaliuta) [1813370] - [x86] ftrace/x86: Tell objtool to ignore nondeterministic ftrace stack layout (Yauheni Kaliuta) [1813370] - [x86] ftrace/x86: Add a counter to test function_graph with direct (Yauheni Kaliuta) [1813370] - [x86] ftrace/x86: Add register_ftrace_direct() for custom trampolines (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add another check for match in register_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add ftrace_find_direct_func() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add register_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Separate out the copying of a ftrace_hash from __ftrace_hash_move() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Separate out functionality from ftrace_location_range() (Yauheni Kaliuta) [1813370] - [net] bpf: Fix build in minimal configurations, again (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add a fexit/bpf2bpf test with target bpf prog no callees (Yauheni Kaliuta) [1813370] - [net] bpf: Fix a bug when getting subprog 0 jited image in check_attach_btf_id (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Bring back c++ include/link test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Don't hard-code root cgroup id (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Fix broken xdp_rxq_info due to map order assumptions (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix readelf output parsing for Fedora (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix readelf output parsing on powerpc with recent binutils (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: correct perror strings (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: test_sockmap: handle file creation failures gracefully (Yauheni Kaliuta) [1813370] - [net] bpf: Fix build in minimal configurations (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix up generation of bpf_helper_defs.h (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix global variable relocation (Yauheni Kaliuta) [1813370] - [net] bpf: Fix static checker warning (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix usage of u32 in userspace code (Yauheni Kaliuta) [1813370] - [net] bpf: Simplify __bpf_arch_text_poke poke type handling (Yauheni Kaliuta) [1813370] - [tools] bpf: Introduce BPF_TRACE_x helper for the tracing tests (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Add various tail call test cases (Yauheni Kaliuta) [1813370] - [x86] bpf, x86: Emit patchable direct jump as tail call (Yauheni Kaliuta) [1813370] - [net] bpf: Constant map key tracking for prog array pokes (Yauheni Kaliuta) [1813370] - [net] bpf: Add poke dependency tracking for prog array maps (Yauheni Kaliuta) [1813370] - [include] bpf: Add initial poke descriptor table for jit images (Yauheni Kaliuta) [1813370] - [net] bpf: Move owner type, jited info into array auxiliary data (Yauheni Kaliuta) [1813370] - [net] bpf: Move bpf_free_used_maps into sleepable section (Yauheni Kaliuta) [1813370] - [x86] bpf, x86: Generalize and extend bpf_arch_text_poke for direct jumps (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add BPF trampoline performance test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Ensure core_reloc_kernel is reading test_progs's data only (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add verifier tests for better jmp32 register bounds (Yauheni Kaliuta) [1813370] - [net] bpf: Provide better register bounds after jmp32 instructions (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Integrate verbose verifier log into test_progs (Yauheni Kaliuta) [1813370] - [tools] libbpf: Support initialized global variables (Yauheni Kaliuta) [1813370] - [tools] selftests, bpftool: Skip the build test if not in tree (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix various errors and warning reported by checkpatch.pl (Yauheni Kaliuta) [1813370] - [tools] selftests, bpftool: Set EXIT trap after usage function (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Ensure no DWARF relocations for BPF object files (Yauheni Kaliuta) [1813370] - [tools] tools, bpftool: Fix warning on ignored return value for 'read' (Yauheni Kaliuta) [1813370] - [net] bpf: Switch bpf_map_{area_alloc, area_mmapable_alloc}() to u64 size (Yauheni Kaliuta) [1813370] - [net] bpf: Make array_map_mmap static (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Enforce no-ALU32 for test_progs-no_alu32 (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Remove JITed image size limitations (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use lg(f)rl when long displacement cannot be used (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use lgrl instead of lg where possible (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Load literal pool register using larl (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Align literal pool entries (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use relative long branches (Yauheni Kaliuta) [1813370] - [net] bpf: Fix memory leak on object 'data' (Yauheni Kaliuta) [1813370] - [tools] selftests, bpf: Workaround an alu32 sub-register spilling issue (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add BPF_TYPE_MAP_ARRAY mmap() tests (Yauheni Kaliuta) [1813370] - [tools] libbpf: Make global data internal arrays mmap()-able, if possible (Yauheni Kaliuta) [1813370] - [net] bpf: Add mmap() support for BPF_MAP_TYPE_ARRAY (Yauheni Kaliuta) [1813370] - [netdrv] bpf: Convert bpf_prog refcnt to atomic64_t (Yauheni Kaliuta) [1813370] - [netdrv] net: thunderx: set xdp_prog to NULL if bpf_prog_add fails (Yauheni Kaliuta) [1813370] - [net] bpf: Switch bpf_map ref counter to atomic64_t so bpf_map_inc() never fails (Yauheni Kaliuta) [1813370] - [lib] locking/atomic: Use s64 for atomic64 (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make conditional inc/dec ops optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make unconditional inc/dec ops optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make test ops optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make atomic64_fetch_add_unless() optional (Yauheni Kaliuta) [1813370] - [powerpc] atomics/powerpc: Define atomic64_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [lib] atomics/generic: Define atomic64_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [include] atomics: Prepare for atomic64_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make atomic_fetch_add_unless() optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make atomic64_inc_not_zero() optional (Yauheni Kaliuta) [1813370] - [include] atomics: Make conditional ops return 'bool' (Yauheni Kaliuta) [1813370] - [net] atomics/treewide: Remove atomic_inc_not_zero_hint() (Yauheni Kaliuta) [1813370] - [net] atomics/treewide: Rename __atomic_add_unless() => atomic_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add a test for attaching BPF prog to another BPF prog and subprog (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Extend test_pkt_access test (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for attaching BPF programs to other BPF programs (Yauheni Kaliuta) [1813370] - [net] bpf: Support attaching tracing BPF program to other BPF programs (Yauheni Kaliuta) [1813370] - [net] bpf: Compare BTF types of functions arguments with actual types (Yauheni Kaliuta) [1813370] - [net] bpf: Annotate context types (Yauheni Kaliuta) [1813370] - [net] bpf: Fix race in btf_resolve_helper_id() (Yauheni Kaliuta) [1813370] - [x86] bpf: Reserve space for BPF trampoline in BPF programs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add stress test for maximum number of progs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add combined fentry/fexit test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add fexit tests for BPF trampoline (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add test for BPF trampoline (Yauheni Kaliuta) [1813370] - [net] bpf: Add kernel test functions for fentry testing (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Simple test for fentry/fexit (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support to attach to fentry/fexit tracing progs (Yauheni Kaliuta) [1813370] - [tools] libbpf: Introduce btf__find_by_name_kind() (Yauheni Kaliuta) [1813370] - [net] bpf: Introduce BPF trampoline (Yauheni Kaliuta) [1813370] - [x86] bpf: Add bpf_arch_text_poke() helper (Yauheni Kaliuta) [1813370] - [x86] bpf: Refactor x86 JIT into helpers (Yauheni Kaliuta) [1813370] - [documentation] bpf, doc: Change right arguments for JIT example code (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add missing option to xdpsock usage (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Remove duplicate option from xdpsock (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Make sure JIT passes do not increase code size (Yauheni Kaliuta) [1813370] - [net] bpf: Support doubleword alignment in bpf_jit_binary_alloc (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: adjust Makefile and README.rst (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Add missing object file to TEST_FILES (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Workaround a verifier failure for test_progs (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use Rx-only and Tx-only sockets in xdpsock (Yauheni Kaliuta) [1813370] - [tools] libbpf: Allow for creating Rx or Tx only AF_XDP sockets (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add XDP_SHARED_UMEM support to xdpsock (Yauheni Kaliuta) [1813370] - [tools] libbpf: Support XDP_SHARED_UMEM with external XDP program (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add tests for automatic map unpinning on load failure (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: update map definition to new syntax BTF-defined map (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: Update outdated error message (Yauheni Kaliuta) [1813370] - [tools] bpf: Add cb access in kfree_skb test (Yauheni Kaliuta) [1813370] - [net] bpf: Add array support to btf_struct_access (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Remove unused SEEN_RET0, SEEN_REG_AX and ret0_ip (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Wrap JIT macro parameter usages in parentheses (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use kvcalloc for addrs array (Yauheni Kaliuta) [1813370] - [net] bpf: Account for insn->off when doing bpf_probe_read_kernel (Yauheni Kaliuta) [1813370] - [tools] libbpf: Simplify BPF_CORE_READ_BITFIELD_PROBED usage (Yauheni Kaliuta) [1813370] - [tools] selftests/bps: Clean up removed ints relocations negative tests (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: log direct file writes (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add field size relocation tests (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Add relocatable bitfield reading tests (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for field size relocations (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for relocatable bitfields (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Remove too strict field offset relo test cases (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Add selftest to read/write sockaddr from user space (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Convert prog tests to probe_read_{user, kernel}{, _str} helper (Yauheni Kaliuta) [1813370] - [samples] bpf, samples: Use bpf_probe_read_user where appropriate (Yauheni Kaliuta) [1813370] - [net] bpf: Switch BPF probe insns to bpf_probe_read_kernel (Yauheni Kaliuta) [1813370] - [kernel] bpf: Add probe_read_{user, kernel} and probe_read_{user, kernel}_str helpers (Yauheni Kaliuta) [1813370] - [kernel] bpf: Make use of probe_user_write in probe write helper (Yauheni Kaliuta) [1813370] - [mm] uaccess: Add strict non-pagefault kernel-space read function (Yauheni Kaliuta) [1813370] - [mm] uaccess: Add non-pagefault user-space write function (Yauheni Kaliuta) [1813370] - [mm] uaccess: Add non-pagefault user-space read functions (Yauheni Kaliuta) [1813370] - [tools] selftests: Add tests for automatic map pinning (Yauheni Kaliuta) [1813370] - [net] bpf: Implement map_gen_lookup() callback for XSKMAP (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for prog_tracing (Yauheni Kaliuta) [1813370] - [net] bpf: Replace prog_raw_tp+btf_id with prog_tracing (Yauheni Kaliuta) [1813370] - [net] bpf: Fix bpf jit kallsym access (Yauheni Kaliuta) [1813370] - [documentation] bpf: Add s390 testing documentation (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Test narrow load from bpf_sysctl.write (Yauheni Kaliuta) [1813370] - [net] bpf: Enforce 'return 0' in BTF-enabled raw_tp programs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Restore $(OUTPUT)/test_stub.o rule (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Use -m{little, big}-endian for clang (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Fix .gitignore to ignore no_alu32/ (Yauheni Kaliuta) [1813370] - [net] bpf: Prepare btf_ctx_access for non raw_tp use case (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix strncat bounds error in libbpf_prog_type_by_name (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Fix LDLIBS order (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Move test_section_names into test_progs and fix it (Yauheni Kaliuta) [1813370] - [tools] tools/bpf: Turn on llvm alu32 attribute by default (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Get rid of a bunch of explicit BPF program type setting (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Make reference_tracking test use subtests (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Make a copy of subtest name (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add uprobe/uretprobe and tp/raw_tp section suffixes (Yauheni Kaliuta) [1813370] - [tools] bpf, libbpf: Add kernel version section parsing back (Yauheni Kaliuta) [1813370] - [kernel] bpf: Fix build error without CONFIG_NET (Yauheni Kaliuta) [1813370] - [net] bpf: Fix bpf_attr.attach_btf_id check (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Remove test_libbpf.sh and test_libbpf_open (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Move test_queue_stack_map.h into progs/ where it belongs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Replace test_progs and test_maps w/ general rule (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add simple per-test targets to Makefile (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Switch test_maps to test_progs' test.h format (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Teach test_progs to cd into subdir (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Restore the netns after flow dissector reattach test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add kfree_skb raw_tp test (Yauheni Kaliuta) [1813370] - [net] bpf: Check types of arguments passed into helpers (Yauheni Kaliuta) [1813370] - [net] bpf: Add support for BTF pointers to x86 JIT (Yauheni Kaliuta) [1813370] - [net] bpf: Add support for BTF pointers to interpreter (Yauheni Kaliuta) [1813370] - [net] bpf: Attach raw_tp program with BTF via type name (Yauheni Kaliuta) [1813370] - [net] bpf: Implement accurate raw_tp context access via BTF (Yauheni Kaliuta) [1813370] - [tools] libbpf: Auto-detect btf_id of BTF-based raw_tracepoints (Yauheni Kaliuta) [1813370] - [net] bpf: Add attach_btf_id attribute to program load (Yauheni Kaliuta) [1813370] - [net] bpf: Process in-kernel BTF (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: Add selftest for __sk_buff tstamp (Yauheni Kaliuta) [1813370] - [net] bpf: Allow __sk_buff tstamp in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Remove obsolete pahole/BTF support detection (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Enforce libbpf build before BPF programs are built (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add preparation steps and sysroot info to readme (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add sysroot support (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Provide C/LDFLAGS to libbpf (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add C/LDFLAGS to libbpf.so and test_libpf targets (Yauheni Kaliuta) [1813370] - [tools] libbpf: Don't use cxx to test_libpf target (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use target CC environment for HDR_PROBE (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use own flags but not HOSTCFLAGS (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Base target programs rules on Makefile.target (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add makefile.target for separate CC target build (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Drop unnecessarily inclusion for bpf_load (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use __LINUX_ARM_ARCH__ selector for arm (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use own EXTRA_CFLAGS for clang commands (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use --target from cross-compile (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Fix cookie_uid_helper_example obj build (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Fix HDR_PROBE "echo" (Yauheni Kaliuta) [1813370] - [tools] libbpf: Handle invalid typedef emitted by old GCC (Yauheni Kaliuta) [1813370] - [tools] libbpf: Generate more efficient BPF_CORE_READ code (Yauheni Kaliuta) [1813370] - [net] bpf: Fix cast to pointer from integer of different size warning (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Check that flow dissector can be re-attached (Yauheni Kaliuta) [1813370] - [net] flow_dissector: Allow updating the flow dissector program atomically (Yauheni Kaliuta) [1813370] - [include] bpf: Align struct bpf_prog_stats (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add read-only map values propagation tests (Yauheni Kaliuta) [1813370] - [net] bpf: Track contents of read-only maps as scalars (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Convert test_btf_dump into test_progs test (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: Add max_pckt_size option at xdp_adjust_tail (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: add test for BPF flow dissector in the root namespace (Yauheni Kaliuta) [1813370] - [net] bpf/flow_dissector: add mode to enforce global BPF flow dissector (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Trivial - fix spelling mistake in usage (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Fix dependency ordering for attach_probe test (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add cscope and tags targets to Makefile (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: switch tests to new bpf_object__open_{file, mem}() APIs (Yauheni Kaliuta) [1813370] - [tools] bpf: Add loop test case with 32 bit reg comparison against 0 (Yauheni Kaliuta) [1813370] - [x86] bpf, x86: Small optimization in comparing against imm0 (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Correct path to include msg + path (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add static to enable_all_controllers() (Yauheni Kaliuta) [1813370] - [tools] libbpf: provide backported RHEL symbols as upstream aliases (Yauheni Kaliuta) [1813370] - [tools] libbpf: Bump current version to v0.0.6 (Yauheni Kaliuta) [1813370] - [tools] libbpf: bump up version, 0.0.5 (Yauheni Kaliuta) [1813370] - [net] cpumap: Avoid warning when CONFIG_DEBUG_PER_CPU_MAPS is enabled (Yauheni Kaliuta) [1823623 1813370] - [vfio] vfio-pci: Mask cap zero (Alex Williamson) [1840248] - [vfio] spapr_tce: Fix incorrect tce_iommu_group memory free (David Gibson) [1832386] - [fs] CIFS: fiemap: do not return EINVAL if get nothing (Leif Sahlberg) [1837180] - [fs] CIFS: Increment num_remote_opens stats counter even in case of smb2_query_dir_first (Leif Sahlberg) [1837180] - [fs] cifs: potential unintitliazed error code in cifs_getattr() (Leif Sahlberg) [1837180] - [fs] cifs: Use #define in cifs_dbg (Leif Sahlberg) [1837180] - [fs] cifs: fix rename() by ensuring source handle opened with DELETE bit (Leif Sahlberg) [1837180] - [fs] cifs: add missing mount option to /proc/mounts (Leif Sahlberg) [1837180] - [fs] cifs: fix potential mismatch of UNC paths (Leif Sahlberg) [1837180] - [fs] cifs: enable change notification for SMB2.1 dialect (Leif Sahlberg) [1837180] - [fs] cifs: Fix mode output in debugging statements (Leif Sahlberg) [1837180] - [fs] cifs: fix mount option display for sec=krb5i (Leif Sahlberg) [1837180] - [fs] smb3: Add defines for new information level, FileIdInformation (Leif Sahlberg) [1837180] - [fs] smb3: print warning once if posix context returned on open (Leif Sahlberg) [1837180] - [fs] smb3: add one more dynamic tracepoint missing from strict fsync path (Leif Sahlberg) [1837180] - [fs] cifs: fix mode bits from dir listing when mounted with modefromsid (Leif Sahlberg) [1837180] - [fs] cifs: fix channel signing (Leif Sahlberg) [1837180] - [fs] cifs: add SMB3 change notification support (Leif Sahlberg) [1837180] - [fs] cifs: make multichannel warning more visible (Leif Sahlberg) [1837180] - [fs] cifs: Add tracepoints for errors on flush or fsync (Leif Sahlberg) [1837180] - [fs] cifs: log warning message (once) if out of disk space (Leif Sahlberg) [1837180] - [fs] smb3: fix problem with null cifs super block with previous patch (Leif Sahlberg) [1837180] - [fs] SMB3: Backup intent flag missing from some more ops (Leif Sahlberg) [1837180] - [fs] cifs: update internal module version number (Leif Sahlberg) [1837180] - [fs] CIFS: Fix task struct use-after-free on reconnect (Leif Sahlberg) [1837180] - [fs] cifs: use PTR_ERR_OR_ZERO() to simplify code (Leif Sahlberg) [1837180] - [fs] cifs: add support for fallocate mode 0 for non-sparse files (Leif Sahlberg) [1837180] - [fs] CIFS: Add support for setting owner info, dos attributes, and create time (Leif Sahlberg) [1837180] - [fs] cifs: remove set but not used variable 'server' (Leif Sahlberg) [1837180] - [fs] cifs: fix unitialized variable poential problem with network I/O cache lock patch (Leif Sahlberg) [1837180] - [fs] cifs: Fix return value in __update_cache_entry (Leif Sahlberg) [1837180] - [fs] cifs: Avoid doing network I/O while holding cache lock (Leif Sahlberg) [1837180] - [fs] cifs: Fix potential deadlock when updating vol in cifs_reconnect() (Leif Sahlberg) [1837180] - [fs] cifs: Merge is_path_valid() into get_normalized_path() (Leif Sahlberg) [1837180] - [fs] cifs: Introduce helpers for finding TCP connection (Leif Sahlberg) [1837180] - [fs] cifs: Get rid of kstrdup_const()'d paths (Leif Sahlberg) [1837180] - [fs] cifs: Clean up DFS referral cache (Leif Sahlberg) [1837180] - [fs] cifs: Don't use iov_iter::type directly (Leif Sahlberg) [1837180] - [fs] cifs: set correct max-buffer-size for smb2_ioctl_init() (Leif Sahlberg) [1837180] - [fs] fs/cifs/cifssmb.c: use true, false for bool variable (Leif Sahlberg) [1837180] - [fs] fs/cifs/smb2ops.c: use true, false for bool variable (Leif Sahlberg) [1837180]- [lib] XArray: Optimise xas_sibling() if !CONFIG_XARRAY_MULTI (Don Dutile) [1840916] - [include] XArray: Fix incorrect comment in header file (Don Dutile) [1840916] - [lib] XArray: Fix xas_pause for large multi-index entries (Don Dutile) [1840916] - [lib] XArray: Fix xa_find_next for large multi-index entries (Don Dutile) [1840916] - [lib] XArray tests: Add check_insert (Don Dutile) [1840916] - [documentation] XArray: Add xa_for_each_range (Don Dutile) [1840916] - [documentation] XArray: Improve documentation of search marks (Don Dutile) [1840916] - [documentation] docs: remove :c:func: annotations from xarray.rst (Don Dutile) [1840916] - [lib] XArray: Fix xas_find returning too many entries (Don Dutile) [1840916] - [lib] XArray: Fix xa_find_after with multi-index entries (Don Dutile) [1840916] - [lib] XArray: Fix infinite loop with entry at ULONG_MAX (Don Dutile) [1840916] - [include] XArray: Add wrappers for nested spinlocks (Don Dutile) [1840916] - [lib] XArray: Fix xas_pause at ULONG_MAX (Don Dutile) [1840916] - [include] xarray.h: fix kernel-doc warning (Don Dutile) [1840916] - [lib] XArray: Fix xas_next() with a single entry at 0 (Don Dutile) [1840916] - [fs] mm: fix page cache convergence regression (Don Dutile) [1840916] - [netdrv] ionic: call ionic_port_init after fw-upgrade (Jonathan Toppins) [1830969] - [netdrv] ionic: leave netdev mac alone after fw-upgrade (Jonathan Toppins) [1830969] - [netdrv] ionic: add device reset to fw upgrade down (Jonathan Toppins) [1830969] - [netdrv] ionic: refresh devinfo after fw-upgrade (Jonathan Toppins) [1830969] - [netdrv] ionic: no link check until after probe (Jonathan Toppins) [1830969] - [netdrv] phy: avoid unnecessary link-up delay in polling mode (Petr Oros) [1785663] - [x86] x86: Select HARDIRQS_SW_RESEND on x86 (David Arcari) [1840433] - [pci] PCI/AER: Fix the broken interrupt injection (David Arcari) [1840433] - [kernel] genirq: Provide interrupt injection mechanism (David Arcari) [1840433] - [kernel] genirq: Sanitize state handling in check_irq_resend() (David Arcari) [1840433] - [kernel] genirq: Add return value to check_irq_resend() (David Arcari) [1840433] - [x86] x86/apic/vector: Force interupt handler invocation to irq context (David Arcari) [1840433] - [kernel] genirq: Add protection against unsafe usage of generic_handle_irq() (David Arcari) [1840433] - [kernel] genirq/debugfs: Add missing sanity checks to interrupt injection (David Arcari) [1840433] - [include] genirq/irqdomain: Make sure all irq domain flags are distinct (David Arcari) [1840433] - [x86] x86/apic/msi: Plug non-maskable MSI affinity race (David Arcari) [1840433] - [char] char: ipmi: convert to use i2c_new_client_device() (Tony Camuso) [1832408] - [char] ipmi: kcs: Fix aspeed_kcs_probe_of_v1() (Tony Camuso) [1832408] - [char] ipmi: Add missing annotation for ipmi_ssif_lock_cond() and ipmi_ssif_unlock_cond() (Tony Camuso) [1832408] - [char] ipmi: kcs: aspeed: Implement v2 bindings (Tony Camuso) [1832408] - [char] ipmi: kcs: Finish configuring ASPEED KCS device before enable (Tony Camuso) [1832408] - [char] ipmi: fix hung processes in __get_guid() (Tony Camuso) [1832408] - [char] drivers: char: ipmi: ipmi_msghandler: Pass lockdep expression to RCU lists (Tony Camuso) [1832408] - [char] ipmi_si: Avoid spurious errors for optional IRQs (Tony Camuso) [1832408] - [base] driver core: platform: Export platform_get_irq_optional() (Tony Camuso) [1832408] - [base] driver core: platform: Introduce platform_get_irq_optional() (Tony Camuso) [1832408] - [x86] x86/efi: Update e820 with reserved EFI boot services data to fix kexec breakage (Kairui Song) [1779544] - [powerpc] powerpc/nvdimm: use H_SCM_QUERY hcall on H_OVERLAP error (Pingfan Liu) [1792125] - [powerpc] powerpc/nvdimm: Use HCALL error as the return value (Pingfan Liu) [1792125] - [scsi] scsi: sd: Signal drive managed SMR disks (Ewan Milne) [1838784] - [scsi] scsi: core: free sgtables in case command setup fails (Ewan Milne) [1838784] - [scsi] scsi: core: Allow the state change from SDEV_QUIESCE to SDEV_BLOCK (Ewan Milne) [1838784] - [scsi] scsi: sg: add sg_remove_request in sg_write (Ewan Milne) [1838784] - [scsi] scsi: sg: add sg_remove_request in sg_common_write (Ewan Milne) [1838784] - [scsi] scsi: sd: Fix optimal I/O size for devices that change reported values (Ewan Milne) [1838784] - [scsi] scsi: move scsicam_bios_param to the end of scsicam.c (Ewan Milne) [1838784] - [scsi] scsi: simplify scsi_bios_ptable (Ewan Milne) [1838784] - [scsi] scsi: core: Use scnprintf() for avoiding potential buffer overflow (Ewan Milne) [1838784] - [scsi] scsi: core: avoid repetitive logging of device offline messages (Ewan Milne) [1838784] - [scsi] scsi: core: use kobj_to_dev (Ewan Milne) [1838784] - [scsi] scsi: sd: Clear sdkp->protection_type if disk is reformatted without PI (Ewan Milne) [1838784] - [scsi] scsi: core: Fix a compiler warning triggered by the SCSI logging code (Ewan Milne) [1838784] - [scsi] scsi: core: Adjust DBD setting in MODE SENSE for caching mode page per LLD (Ewan Milne) [1838784] - [scsi] scsi: sd_zbc: Improve report zones error printout (Ewan Milne) [1838784] - [scsi] scsi: scsi_transport_sas: Fix memory leak when removing devices (Ewan Milne) [1838784] - [scsi] scsi: scsi_debug: num_tgts must be >= 0 (Ewan Milne) [1838784] - [scsi] scsi: core: Handle drivers which set sg_tablesize to zero (Ewan Milne) [1838784] - [scsi] scsi: tracing: Fix handling of TRANSFER LENGTH == 0 for READ(6) and WRITE(6) (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_ioctl(): get rid of access_ok() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_write(): get rid of access_ok()/__copy_from_user()/__get_user() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_read(): get rid of access_ok()/__copy_..._user() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_new_write(): don't bother with access_ok (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_write(): __get_user() can fail.. (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_new_write(): replace access_ok() + __copy_from_user() with copy_from_user() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_ioctl(): fix copyout handling (Ewan Milne) [1838784] - [scsi] scsi: core: scsi_trace: Use get_unaligned_be*() (Ewan Milne) [1838784] - [scsi] drivers/scsi: Replace rcu_swap_protected() with rcu_replace_pointer() (Ewan Milne) [1838784] - [scsi] scsi: sd: define variable dif as unsigned int instead of bool (Ewan Milne) [1838784] - [scsi] scsi: core: try to get module before removing device (Ewan Milne) [1838784] - [scsi] scsi: scsi_dh_alua: handle RTPG sense code correctly during state transitions (Ewan Milne) [1838784] - [powerpc] powerpc/64: flush_inval_dcache_range() becomes flush_dcache_range() (Gustavo Duarte) [1834180] - [x86] x86/ima: use correct identifier for SetupMode variable (Diego Domingos) [1781925] - [lib] kobject: fix dereference before null check on kobj (Diego Domingos) [1781925] - [include] MODSIGN: make new include file self contained (Diego Domingos) [1781925] - [security] ima: initialize the "template" field with the default template (Diego Domingos) [1781925] - [x86] x86/ima: Check EFI_RUNTIME_SERVICES before using (Diego Domingos) [1781925] - [x86] x86/ima: check EFI SetupMode too (Diego Domingos) [1781925] - [security] ima: Set file->f_mode instead of file->f_flags in ima_calc_file_hash() (Diego Domingos) [1781925] - [security] evm: check hash algorithm passed to init_desc() (Diego Domingos) [1781925] - [base] firmware: improve LSM/IMA security behaviour (Diego Domingos) [1781925] - [lib] kobject: Add support for default attribute groups to kobj_type (Diego Domingos) [1781925] - [samples] samples/kobject: Replace foo_ktype's default_attrs field with groups (Diego Domingos) [1781925] - [x86] x86/ima: require signed kernel modules (Diego Domingos) [1781925] - [security] powerpc: Load firmware trusted keys/hashes into kernel keyring (Diego Domingos) [1781925] - [powerpc] powerpc: expose secure variables to userspace via sysfs (Diego Domingos) [1781925] - [powerpc] powerpc/powernv: Add OPAL API interface to access secure variable (Diego Domingos) [1781925] - [powerpc] powerpc/ima: fix secure boot rules in ima arch policy (Diego Domingos) [1781925] - [security] ima: Set again build_ima_appraise variable (Diego Domingos) [1781925] - [security] ima: Remove redundant policy rule set in add_rules() (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Indicate kernel modules appended signatures are enforced (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Update ima arch policy to check for blacklist (Diego Domingos) [1781925] - [security] ima: Check against blacklisted hashes for files with modsig (Diego Domingos) [1781925] - [security] ima: prevent a file already mmap'ed write to be mmap'ed execute (Diego Domingos) [1781925] - [certs] certs: Add wrapper function to check blacklisted binary hash (Diego Domingos) [1781925] - [security] ima: Make process_buffer_measurement() generic (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Define trusted boot policy (Diego Domingos) [1781925] - [powerpc] powerpc: Detect the trusted boot state of the system (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Add support to initialize ima policy rules (Diego Domingos) [1781925] - [powerpc] powerpc: Detect the secure boot mode of the system (Diego Domingos) [1781925] - [security] ima: use struct_size() in kzalloc() (Diego Domingos) [1781925] - [tools] sefltest/ima: support appended signatures (modsig) (Diego Domingos) [1781925] - [security] ima: Fix use after free in ima_read_modsig() (Diego Domingos) [1781925] - [security] ima: fix freeing ongoing ahash_request (Diego Domingos) [1781925] - [security] ima: always return negative code for error (Diego Domingos) [1781925] - [security] ima: Store the measurement again when appraising a modsig (Diego Domingos) [1781925] - [security] ima: Define ima-modsig template (Diego Domingos) [1781925] - [security] ima: Collect modsig (Diego Domingos) [1781925] - [security] ima: Implement support for module-style appended signatures (Diego Domingos) [1781925] - [security] ima: Factor xattr_verify() out of ima_appraise_measurement() (Diego Domingos) [1781925] - [security] integrity: Introduce struct evm_xattr (Diego Domingos) [1781925] - [security] ima: Add modsig appraise_type option for module-style appended signatures (Diego Domingos) [1781925] - [kernel] MODSIGN: Export module signature definitions (Diego Domingos) [1781925] - [kernel] modsign: log module name in the event of an error (Diego Domingos) [1781925] - [kernel] KEXEC: Call ima_kexec_cmdline to measure the boot command line args (Diego Domingos) [1781925] - [security] IMA: Define a new template field buf (Diego Domingos) [1781925] - [security] IMA: Define a new hook to measure the kexec boot command line arguments (Diego Domingos) [1781925] - [security] IMA: support for per policy rule template formats (Diego Domingos) [1781925] - [security] integrity: Fix __integrity_init_keyring() section mismatch (Diego Domingos) [1781925] - [security] x86/ima: fix the Kconfig dependency for IMA_ARCH_POLICY (Diego Domingos) [1781925] - [security] ima: Make arch_policy_entry static (Diego Domingos) [1781925] - [security] ima: show rules with IMA_INMASK correctly (Diego Domingos) [1781925] - [security] ima: fix wrong signed policy requirement when not appraising (Diego Domingos) [1781925] - [tools] selftests/kexec: update get_secureboot_mode (Diego Domingos) [1781925] - [tools] selftests/kexec: make kexec_load test independent of IMA being enabled (Diego Domingos) [1781925] - [tools] selftests/kexec: check kexec_load and kexec_file_load are enabled (Diego Domingos) [1781925] - [tools] selftests/kexec: Add missing '=y' to config options (Diego Domingos) [1781925] - [tools] selftests/kexec: kexec_file_load syscall test (Diego Domingos) [1781925] - [tools] selftests/kexec: define "require_root_privileges" (Diego Domingos) [1781925] - [tools] selftests/kexec: define common logging functions (Diego Domingos) [1781925] - [tools] selftests/kexec: define a set of common functions (Diego Domingos) [1781925] - [tools] selftests/kexec: cleanup the kexec selftest (Diego Domingos) [1781925] - [tools] selftests/kexec: move the IMA kexec_load selftest to selftests/kexec (Diego Domingos) [1781925] - [security] evm: remove set but not used variable 'xattr' (Diego Domingos) [1781925] - [security] security: integrity: partial revert of make ima_main explicitly non-modular (Diego Domingos) [1781925] - [security] ima: cleanup the match_token policy code (Diego Domingos) [1781925] - [security] ima: Use inode_is_open_for_write (Diego Domingos) [1781925] - [security] security: fs: make inode explicitly non-modular (Diego Domingos) [1781925] - [security] security: audit and remove any unnecessary uses of module.h (Diego Domingos) [1781925] - [security] security: integrity: make evm_main explicitly non-modular (Diego Domingos) [1781925] - [security] security: integrity: make ima_main explicitly non-modular (Diego Domingos) [1781925] - [tools] selftests/ima: kexec_load syscall test (Diego Domingos) [1781925] - [security] ima: don't measure/appraise files on efivarfs (Diego Domingos) [1781925] - [x86] x86/ima: retry detecting secure boot mode (Diego Domingos) [1781925] - [x86] x86/ima: define arch_get_ima_policy() for x86 (Diego Domingos) [1781925] - [kernel] kernel/kexec_file.c: remove some duplicated includes (Diego Domingos) [1781925] - [security] ima: open a new file instance if no read permissions (Diego Domingos) [1781925] - [security] security/integrity: constify some read-only data (Diego Domingos) [1781925] - [documentation] security: fix LSM description location (Diego Domingos) [1781925] - [security] evm: Allow non-SHA1 digital signatures (Diego Domingos) [1781925] - [security] security: export security_kernel_load_data function (Diego Domingos) [1781925] - [security] ima: based on policy warn about loading firmware (pre-allocated buffer) (Diego Domingos) [1781925] - [security] ima: prevent kexec_load syscall based on runtime secureboot flag (Diego Domingos) [1781925] - [security] module: replace the existing LSM hook in init_module (Diego Domingos) [1781925] - [security] ima: based on policy require signed firmware (sysfs fallback) (Diego Domingos) [1781925] - [security] ima: add support for arch specific policies (Diego Domingos) [1781925] - [security] ima: based on policy require signed kexec kernel images (Diego Domingos) [1781925] - [security] ima: refactor ima_init_policy() (Diego Domingos) [1781925] - [include] sysfs: Fixes __BIN_ATTR_WO() macro (Diego Domingos) [1781925] - [include] security: define new LSM hook named security_kernel_load_data (Diego Domingos) [1781925] - [kernel] kexec: add call to LSM hook in original kexec_load syscall (Diego Domingos) [1781925] - [base] firmware: add call to LSM hook before firmware sysfs fallback (Diego Domingos) [1781925] - [security] ima: add build time policy (Diego Domingos) [1781925] - [security] ima: Support platform keyring for kernel appraisal (Diego Domingos) [1781925] - [security] integrity: Remove references to module keyring (Diego Domingos) [1781925] - [powerpc] powerpc/kexec: Fix loading of kernel + initramfs with kexec_file_load() (Diego Domingos) [1781925] - [security] ima: Use designated initializers for struct ima_event_data (Diego Domingos) [1781925] - [security] ima: Update MAX_TEMPLATE_NAME_LEN to fit largest reasonable definition (Diego Domingos) [1781925] - [certs] PKCS#7: Refactor verify_pkcs7_signature() (Diego Domingos) [1781925] - [crypto] PKCS#7: Introduce pkcs7_get_digest() (Diego Domingos) [1781925] - [security] integrity: Select CONFIG_KEYS instead of depending on it (Diego Domingos) [1781925] - [powerpc] powerpc/powernv: Move opal_power_control_init() call in opal_init() (Diego Domingos) [1781925] - [security] x86/efi: move common keyring handler functions to new file (Diego Domingos) [1781925] - [security] x86/efi: remove unused variables (Diego Domingos) [1781925] - [include] sysfs: add BIN_ATTR_WO() macro (Diego Domingos) [1781925] - [x86] x86/ima: define arch_ima_get_secureboot (Diego Domingos) [1781925] - [powerpc] powerpc/pci: unmap legacy INTx interrupts of passthrough IO adapters (Steve Best) [1840279] - [powerpc] powerpc/xive: Clear the page tables for the ESB IO mapping (Steve Best) [1840279] - [hv] hyper-v: Use UUID API for exporting the GUID (Mohammed Gamal) [1828451 1815498] - [kernel] uuid: Add inline helpers to import / export UUIDs (Mohammed Gamal) [1828451 1815498] - [hv] hv: Move AEOI determination to architecture dependent code (Mohammed Gamal) [1828451 1815498] - [x86] hyper-v: Report crash data in die() when panic_on_oops is set (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Report crash register data when sysctl_record_panic_msg is not set (Mohammed Gamal) [1828451 1815498] - [x86] hyper-v: Report crash register data or kmsg before running crash kernel (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Trigger crash enlightenment only once during system crash (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Free hv_panic_page when fail to register kmsg dump (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Unload vmbus channel in hv panic callback (Mohammed Gamal) [1828451 1815498] - [hv] hv_debugfs: Make hv_debug_root static (Mohammed Gamal) [1828451 1815498] - [hv] hyperv_vmbus.h: Replace zero-length array with flexible-array member (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Ignore CHANNELMSG_TL_CONNECT_RESULT(23) (Mohammed Gamal) [1828451 1815498] - [hv] hv_balloon: Balloon up according to request page number (Mohammed Gamal) [1828451 1815498] - [hv] hv_balloon: use generic_online_page() (Mohammed Gamal) [1828451 1815498] - [mm] memory_hotplug: export generic_online_page() (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Fix crash handler reset of Hyper-V synic (Mohammed Gamal) [1828451 1815498] - [hv] hv: Replace binary semaphore with mutex (Mohammed Gamal) [1828451 1815498] - [hv] hv: balloon: Remove dependencies on guest page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Remove dependencies on guest page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: util: Specify ring buffer size using Hyper-V page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: Specify receive buffer size using Hyper-V page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Add module parameter to cap the VMBus version (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Enable VMBus protocol versions 4.1, 5.1 and 5.2 (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Introduce table of VMBus protocol versions (Mohammed Gamal) [1828451 1815498] - [pci] hv: Replace zero-length array with flexible-array member (Mohammed Gamal) [1793636] - [pci] hv: Decouple the func definition in hv_dr_state from VSP message (Mohammed Gamal) [1793636] - [pci] hv: Add support for protocol 1.3 and support PCI_BUS_RELATIONS2 (Mohammed Gamal) [1793636] - [pci] hv: Add missing kfree(hbus) in hv_pci_probe()'s error handling path (Mohammed Gamal) [1793636] - [pci] hv: Remove unnecessary type casting from kzalloc (Mohammed Gamal) [1793636] - [pci] hv: Avoid a kmemleak false positive caused by the hbus buffer (Mohammed Gamal) [1793636] - [infiniband] RDMA/srpt: Fix disabling device management (Kamal Heib) [1840016] - [misc] vhost: disable for OABI (Jason Wang) [1771441] - [include] virtio: drop vringh.h dependency (Jason Wang) [1771441] - [virtio] virtio_input: pull in slab.h (Jason Wang) [1771441] - [char] virtio-rng: pull in slab.h (Jason Wang) [1771441] - [block] virtio_blk: add a missing include (Jason Wang) [1771441] - [vdpa] vdpa: fix comment of vdpa_register_device() (Jason Wang) [1771441] - [vhost] vdpa: make vhost, virtio depend on menu (Jason Wang) [1771441] - [include] vdpa: allow a 32 bit vq alignment (Jason Wang) [1771441] - [vdpa] vdpasim: Return status in vdpasim_get_status (Jason Wang) [1771441] - [vdpa] vdpa: remove unused variables 'ifcvf' and 'ifcvf_lm' (Jason Wang) [1771441] - [vdpa] vdpa-sim: depend on HAS_DMA (Jason Wang) [1771441] - [virtio] vdpa: move to drivers/vdpa (Jason Wang) [1771441] - [virtio] virtio: Intel IFC VF driver for VDPA (Jason Wang) [1771441] - [virtio] vdpasim: vDPA device simulator (Jason Wang) [1771441] - [vhost] vhost: introduce vDPA-based backend (Jason Wang) [1771441] - [virtio] virtio: introduce a vDPA based transport (Jason Wang) [1771441] - [virtio] vDPA: introduce vDPA bus (Jason Wang) [1771441] - [vhost] vringh: IOTLB support (Jason Wang) [1771441] - [vhost] vhost: factor out IOTLB (Jason Wang) [1771441] - [vhost] vhost: allow per device message handler (Jason Wang) [1771441] - [misc] vhost: refine vhost and vringh kconfig (Jason Wang) [1771441] - [vhost] vringh: fix copy direction of vringh_iov_push_kern() (Jason Wang) [1771441] - [vhost] vhost: factor out setting vring addr and num (Jason Wang) [1771441] - [vhost] vhost: introduce helpers to get the size of metadata area (Jason Wang) [1771441] - [vhost] vhost: rename vq_iotlb_prefetch() to vq_meta_prefetch() (Jason Wang) [1771441] - [vhost] vhost: fine grain userspace memory accessors (Jason Wang) [1771441] - [vhost] vhost: generalize adding used elem (Jason Wang) [1771441] - [misc] mic: vop: Allow building on more systems (Jason Wang) [1771441] - [virtio] virtio: support VIRTIO_F_ORDER_PLATFORM (Jason Wang) [1771441] - [uapi] vhost: split structs into a separate header file (Jason Wang) [1771441] - [fs] compat_ioctl: add compat_ptr_ioctl() (Jason Wang) [1771441] - [vhost] vhost: allow vhost-scsi driver to be built-in (Jason Wang) [1771441] - [x86] arch/x86: Remove vendor specific CPU ID checks (Prarit Bhargava) [1840145] - [tools] perf vendor events amd: Update Zen1 events to V2 (Wei Huang) [1790641] - [tools] perf vendor events amd: Add Zen2 events (Wei Huang) [1790641] - [tools] perf vendor events amd: Restrict model detection for zen1 based processors (Wei Huang) [1790641] - [x86] perf/amd/uncore: Add support for Family 19h L3 PMU (Wei Huang) [1790641] - [x86] perf/amd/uncore: Make L3 thread mask code more readable (Wei Huang) [1790641] - [x86] perf/amd/uncore: Prepare L3 thread mask code for Family 19h (Wei Huang) [1790641] - [scsi] scsi: fnic: Use scnprintf() for avoiding potential buffer overflow (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: do not queue commands during fwreset (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: fix invalid stack access (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: fix use after free (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: make array dev_cmd_err static const, makes object smaller (Govindarajulu Varadarajan) [1797808]- [media] media: v4l: fix uapi mpeg slice params definition (Torez Smith) [1825410 1821835] - [uapi] v4l2-controls: add a missing include (Torez Smith) [1825410 1821835] - [dma] dma-mapping: remove dma_release_declared_memory (Torez Smith) [1825410 1821835] - [usb] usb/ohci-tmio: remove the HCD_DMA flag (Torez Smith) [1825410 1821835] - [usb] usb: add a HCD_DMA flag instead of guestimating DMA capabilities (Torez Smith) [1825410 1821835] - [usb] usb: add a hcd_uses_dma helper (Torez Smith) [1825410 1821835] - [usb] usb: don't create dma pools for HCDs with a localmem_pool (Torez Smith) [1825410 1821835] - [usb] usb: host: ohci-tmio: Mark expected switch fall-throughs (Torez Smith) [1825410 1821835] - [usb] USB: drop HCD_LOCAL_MEM flag (Torez Smith) [1825410 1821835] - [usb] usb: host: ohci-tmio: init genalloc for local memory (Torez Smith) [1825410 1821835] - [usb] dma-mapping: remove the DMA_MEMORY_EXCLUSIVE flag (Torez Smith) [1825410 1821835] - [media] media: xirlink_cit: add missing descriptor sanity checks (Torez Smith) [1825410 1821835] - [media] media: ttusb-dec: Fix info-leak in ttusb_dec_send_command() (Torez Smith) [1788005 1825410 1821835] {CVE-2019-19533} - [media] media: usb: fix memory leak in af9005_identify_state (Torez Smith) [1825141 1825410 1821835] {CVE-2019-18809} - [netdrv] cdc_ether: fix rndis support for Mediatek based smartphones (Torez Smith) [1825410 1821835] - [netdrv] r8152: remove calling netif_napi_del (Torez Smith) [1825410 1821835] - [netdrv] Revert "r8152: napi hangup fix after disconnect" (Torez Smith) [1825410 1821835] - [netdrv] r8152: Set memory to all 0xFFs on failed reg reads (Torez Smith) [1825410 1821835] - [netdrv] net: kalmia: fix memory leaks (Torez Smith) [1825410 1821835] - [netdrv] cx82310_eth: fix a memory leak bug (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Fix memory leaks (Torez Smith) [1825410 1821835] - [netdrv] r8152: fix typo in register name (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: pcan_usb_pro: Fix info-leaks to USB devices (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: pcan_usb_fd: Fix info-leaks to USB devices (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: force the string buffer NULL-terminated (Torez Smith) [1825410 1821835] - [netdrv] net: usb: pegasus: fix improper read if get_registers() fail (Torez Smith) [1825410 1821835] - [netdrv] net: usb: qmi_wwan: Add the BroadMobi BM818 card (Torez Smith) [1825410 1821835] - [netdrv] can: mark expected switch fall-throughs (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: fix potential double kfree_skb() (Torez Smith) [1825410 1821835] - [netdrv] usb: qmi_wwan: add D-Link DWM-222 A2 device ID (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: change V4L2_PIX_FMT_BGRA444 define: fourcc was already in use (Torez Smith) [1825410 1821835] - [netdrv] r8152: set RTL8152_UNPLUG only for real disconnection (Torez Smith) [1825410 1821835] - [netdrv] r8152: move calling r8153b_rx_agg_chg_indicate() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: asix: init MAC address buffers (Torez Smith) [1825410 1821835] - [netdrv] r8152: fix the setting of detecting the linking change for runtime suspend (Torez Smith) [1825410 1821835] - [media] media: hdpvr: fix locking and a missing msleep (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Fix out-of-bounds read (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: Fix shifting signed 32-bit value by 31 bits problem (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 468 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 238 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 235 (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: extend permitted QMAP mux_id value range (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: avoid RCU stalls on device disconnect when in QMAP mode (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add network device usage statistics for qmimux devices (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add support for QMAP padding in the RX path (Torez Smith) [1825410 1821835] - [media] media: cx231xx-cards: Add Hauppauge 955Q variant (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Add Hauppauge HVR1955/1975 devices (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Add i2c client demod/tuner support (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Add multiple dvb frontend support (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix access to uninitialized fields on probe error (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Include streaming interface number in debugfs dir name (Torez Smith) [1825410 1821835] - [netdrv] can: usb: Kconfig: Remove duplicate menu entry (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: fix null-ptr-deref in class_unregister() (Torez Smith) [1825410 1821835] - [media] media: cxusb: Revert "media: cxusb: add raw mode support for, Medion MD95700" (Torez Smith) [1825410 1821835] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 412 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 286 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 258 (Torez Smith) [1825410 1821835] - [media] media: media/usb: set device_caps in struct video_device (Torez Smith) [1825410 1821835] - [media] media: dvb-usb/cxusb-analog.c: fix coccinelle warning, use ktime.h (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 (Torez Smith) [1825410 1821835] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 164 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 131 (Torez Smith) [1825410 1821835] - [media] media: cx231xx-dvb: fix memory leak in dvb_fini() (Torez Smith) [1825410 1821835] - [media] media: em28xx: use usb_to_input_id() rather than handrolling it (Torez Smith) [1825410 1821835] - [media] media: em28xx: use common code for decoding nec scancodes (Torez Smith) [1825410 1821835] - [media] media: em28xx: give RC device proper name (Torez Smith) [1825410 1821835] - [media] media: cxusb: fix several coding style issues (Torez Smith) [1825410 1821835] - [media] media: cxusb-analog: Fix some coding style issues (Torez Smith) [1825410 1821835] - [media] media: cxusb: add raw mode support for Medion MD95700 (Torez Smith) [1825410 1821835] - [media] media: cxusb: add analog mode support for Medion MD95700 (Torez Smith) [1825410 1821835] - [media] media: cxusb: implement Medion MD95700 digital / analog coexistence (Torez Smith) [1825410 1821835] - [media] media: usb:zr364xx:Fix KASAN:null-ptr-deref Read in zr364xx_vidioc_querycap (Torez Smith) [1825410 1821835] - [media] media: pwc: convert to BIT macro (Torez Smith) [1825410 1821835] - [media] media: cpia2_usb: first wake up, then free in disconnect (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: use a different format for warnings (Torez Smith) [1825410 1821835] - [media] media: smsusb: better handle optional alignment (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 118 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 65 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 (Torez Smith) [1825410 1821835] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 55 (Torez Smith) [1825410 1821835] - [media] media: remove redundant 'default n' from Kconfig-s (Torez Smith) [1825410 1821835] - [media] media: af9035: Remove duplicate error reporting for dvbsky_usb_generic_rw (Torez Smith) [1825410 1821835] - [media] media: dvbsky: Remove duplicate error reporting for dvbsky_usb_generic_rw (Torez Smith) [1825410 1821835] - [media] media: dvb-usb-v2: Report error on all error paths (Torez Smith) [1825410 1821835] - [media] media: au0828: fix null dereference in error path (Torez Smith) [1825410 1821835] - [media] media: dvb: usb: fix use after free in dvb_usb_device_exit (Torez Smith) [1825410 1821835] - [media] media: usb: siano: Fix false-positive "uninitialized variable" warning (Torez Smith) [1825410 1821835] - [netdrv] usbnet: fix kernel crash after disconnect (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: fix racing condition (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 24 (Torez Smith) [1825410 1821835] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 17 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (Torez Smith) [1825410 1821835] - [media] treewide: Add SPDX license identifier - Makefile/Kconfig (Torez Smith) [1825410 1821835] - [media] treewide: Add SPDX license identifier for more missed files (Torez Smith) [1825410 1821835] - [media] media: usb: siano: Fix general protection fault in smsusb (Torez Smith) [1825410 1821835] - [media] media: prefix header search paths with $(srctree)/ (Torez Smith) [1825410 1821835] - [media] media: remove unneeded header search paths (Torez Smith) [1825410 1821835] - [netdrv] aqc111: cleanup mtu related logic (Torez Smith) [1825410 1821835] - [netdrv] Revert "aqc111: fix writing to the phy on BE" (Torez Smith) [1825410 1821835] - [netdrv] Revert "aqc111: fix double endianness swap on BE" (Torez Smith) [1825410 1821835] - [netdrv] net: usb: qmi_wwan: add Telit 0x1260 and 0x1261 compositions (Torez Smith) [1825410 1821835] - [netdrv] aqc111: fix double endianness swap on BE (Torez Smith) [1825410 1821835] - [netdrv] aqc111: fix writing to the phy on BE (Torez Smith) [1825410 1821835] - [netdrv] aqc111: fix endianness issue in aqc111_change_mtu (Torez Smith) [1825410 1821835] - [netdrv] net: usb: smsc: fix warning reported by kbuild test robot (Torez Smith) [1825410 1821835] - [netdrv] net: usb: support of_get_mac_address new ERR_PTR error (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: Remove unnecessary NULL pointer check (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: Simplify device detection (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: new Wistron, ZTE and D-Link devices (Torez Smith) [1825410 1821835] - [uapi] media: v4l: Add definitions for missing 16-bit RGB555 formats (Torez Smith) [1825410 1821835] - [uapi] media: v4l: Add definitions for missing 16-bit RGB4444 formats (Torez Smith) [1825410 1821835] - [uapi] media: v4l: Add definitions for missing 32-bit RGB formats (Torez Smith) [1825410 1821835] - [netdrv] r8152: sync sa_family with the media type of network device (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Prevent a buffer overflow (Torez Smith) [1825410 1821835] - [media] media: au0828: stop video streaming only when last user stops (Torez Smith) [1825410 1821835] - [media] media: au0828: Fix NULL pointer dereference in au0828_analog_stream_enable() (Torez Smith) [1825410 1821835] - [media] media: au0828: fix enable and disable source audio and video inconsistencies (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Add quirk for Quectel dynamic config (Torez Smith) [1825410 1821835] - [netdrv] r8152: Refresh MAC address during USBDEVFS_RESET (Torez Smith) [1825410 1821835] - [netdrv] r8152: remove extra action copying ethernet address (Torez Smith) [1825410 1821835] - [media] media: replace strncpy() by strscpy() (Torez Smith) [1825410 1821835] - [media] media: usbvision: fix a potential NULL pointer dereference (Torez Smith) [1825410 1821835] - [media] media: gspca: Kill URBs on USB device disconnect (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add Olicard 600 (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Extend HWID table by QNAP device (Torez Smith) [1825410 1821835] - [media] media: pwc-ctl: pChoose can't be NULL (Torez Smith) [1825410 1821835] - [media] media: Kconfig files: use the right help coding style (Torez Smith) [1825410 1821835] - [media] media: em28xx-input: make const array addr_list static (Torez Smith) [1825410 1821835] - [media] media: dvb: Add support for the Avermedia TD310 (Torez Smith) [1825410 1821835] - [media] media: dvb: init i2c already in it930x_frontend_attach (Torez Smith) [1825410 1821835] - [media] media: dvbsky: Avoid leaking dvb frontend (Torez Smith) [1825410 1821835] - [media] media: gspca: do not resubmit URBs when streaming has stopped (Torez Smith) [1825410 1821835] - [media] media: au0828: minor fix to a misleading comment in _close() (Torez Smith) [1825410 1821835] - [media] media: go7007: avoid clang frame overflow warning with KASAN (Torez Smith) [1825410 1821835] - [media] media: cpia2: Fix use-after-free in cpia2_exit (Torez Smith) [1825410 1821835] - [netdrv] peak_usb: fix clang build warning (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Add support for Quectel EG12/EM12 (Torez Smith) [1825410 1821835] - [media] media: a few more typos at staging, pci, platform, radio and usb (Torez Smith) [1825410 1821835] - [media] media: usb: fix several typos (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Use usb_make_path to fill in usb_info (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix smatch warning (Torez Smith) [1825410 1821835] - [media] media: v4l: Add 32-bit packed YUV formats (Torez Smith) [1825410 1821835] - [netdrv] net: usb: cdc-phonet: use struct_size() in alloc_netdev() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: rtl8150: mark expected switch fall-through (Torez Smith) [1825410 1821835] - [netdrv] net: usb: pegasus: Mark expected switch fall-through (Torez Smith) [1825410 1821835] - [media] media: hdpvr: fix smatch warning (Torez Smith) [1825410 1821835] - [media] media: usbvision: use u64 for the timestamp internally (Torez Smith) [1825410 1821835] - [media] media: stkwebcam: use u64 for the timestamp internally (Torez Smith) [1825410 1821835] - [media] media: cpia2: use u64 for the timestamp internally (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Avoid NULL pointer dereference at the end of streaming (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix 'type' check leading to overflow (Torez Smith) [1825410 1821835] - [netdrv] net: usb: asix: ax88772_bind return error when hw_reset fail (Torez Smith) [1825410 1821835] - [netdrv] net: usb: rtl8150: remove set but not used variable 'rx_stat' (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Extend HWID table by TRENDnet device (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: Add more field helper macros (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov772x: remove unnecessary COM3 initialization (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov722x: remove camera clock setup from bridge_init (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov722x: remove mode specific video data registers from bridge_init (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov772x: add SGBRG8 bayer mode support (Torez Smith) [1825410 1821835] - [media] media: gspca: ov543-ov772x: move video format specific registers into bridge_start (Torez Smith) [1825410 1821835] - [media] media: gspca: support multiple pixel formats in TRY_FMT (Torez Smith) [1825410 1821835] - [media] media: gspca: support multiple pixel formats in ENUM_FRAMEINTERVALS (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534: replace msleep(10) with usleep_range (Torez Smith) [1825410 1821835] - [uapi] media: v4l: uAPI: V4L2_BUF_TYPE_META_OUTPUT is an output buffer type (Torez Smith) [1825410 1821835] - [media] media: gspca: mt9m111: Check write_bridge for timeout (Torez Smith) [1825410 1821835] - [media] media: gspca: Check the return value of write_bridge for timeout (Torez Smith) [1825410 1821835] - [media] media: usb: gspca: add a missed check for goto_low_power (Torez Smith) [1825410 1821835] - [media] media: usb: gspca: add a missed return-value check for do_command (Torez Smith) [1825410 1821835] - [media] media: v4l2-ctrls.c/uvc: zero v4l2_event (Torez Smith) [1825410 1821835] - [media] media: usb: pwc: Don't use coherent DMA buffers for ISO transfer (Torez Smith) [1825410 1821835] - [media] media: usb: pwc: Introduce TRACE_EVENTs for pwc_isoc_handler() (Torez Smith) [1825410 1821835] - [netdrv] cdc_ether: trivial whitespace readability fix (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add MTU default to qmap network interface (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Fix qmap header retrieval in qmimux_rx_fixup (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Add support for Fibocom NL678 series (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Resolve issue with changing MAC address (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Added support for Telit LN940 series (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Added support for Fibocom NL668 series (Torez Smith) [1825410 1821835] - [media] media: v4l: Add support for V4L2_BUF_TYPE_META_OUTPUT (Torez Smith) [1825410 1821835] - [media] media: siano: Use kmemdup instead of duplicating its function (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: fix spelling mistake "statuss" -> "status" (Torez Smith) [1825410 1821835] - [media] media: lmedm04: Move interrupt buffer to priv buffer (Torez Smith) [1825410 1821835] - [media] media: lmedm04: Add missing usb_free_urb to free interrupt urb (Torez Smith) [1825410 1821835] - [media] media: stkwebcam: Bugfix for wrong return values (Torez Smith) [1825410 1821835] - [media] media: stkwebcam: Support for ASUS A6VM notebook added (Torez Smith) [1825410 1821835] - [media] media: usb: dvb-usb: remove old friio driver (Torez Smith) [1825410 1821835] - [media] media: lmedm04: use dvb_usbv2_generic_rw_locked (Torez Smith) [1825410 1821835] - [media] media: lmedm04: Move usb buffer to lme2510_state (Torez Smith) [1825410 1821835] - [media] media: rtl28xxu: add support for Sony CXD2837ER slave demod (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Utilise for_each_uvc_urb iterator (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Rename uvc_{un, }init_video() (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Split uvc_video_enable into two (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Move decode processing to process context (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Abstract streaming object lifetime (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: queue: Support asynchronous buffer handling (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: queue: Simplify spin-lock usage (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Protect queue internals with helper (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Convert decode functions to use new context structure (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Refactor URB descriptors (Torez Smith) [1825410 1821835] - [media] media: em28xx: fix spelling mistake, "Cinnergy" -> "Cinergy" (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Refactor teardown of uvc on USB disconnect (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Add support for the CNF4 format (Torez Smith) [1825410 1821835] - [documentation] media: v4l: Add 4bpp packed depth confidence format CNF4 (Torez Smith) [1825410 1821835] - [media] media: usb: Use kmemdup instead of duplicating its function (Torez Smith) [1825410 1821835] - [media] media: dvb: Use WARM definition from identify_state() (Torez Smith) [1825410 1821835] - [media] media: dib0700: fix spelling mistake "Amplifyer" -> "Amplifier" (Torez Smith) [1825410 1821835] - [media] media: dvb-usb-v2: Fix incorrect use of transfer_flags URB_FREE_BUFFER (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Initialize wol_cfg with memset in aqc111_suspend (Torez Smith) [1825410 1821835] - [netdrv] net: Don't default Aquantia USB driver to 'y' (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: fix spelling mistake: "resumbmitting" -> "resubmitting" (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Extend cdc_ether blacklist (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add ASIX's HW ids (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for wake on LAN by MAGIC packet (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement get/set_link_ksettings callbacks (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Initialize ethtool_ops structure (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add RX VLAN filtering support (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for VLAN_CTAG_TX/RX offload (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement set_rx_mode callback (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for TSO (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for enable/disable checksum offload (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for changing MTU (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add checksum offload support (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement RX data path (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement TX data path (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for getting and setting of MAC address (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Introduce link management (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Introduce PHY access (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Various callbacks implementation (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add implementation of read and write commands (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add bind and empty unbind callbacks (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Driver skeleton for Aquantia AQtion USB to 5GbE (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: fix potential recvmsg bug and recvmsg bug 2 (Torez Smith) [1825410 1821835] - [media] media: pulse8-cec: return 0 when invalidating the logical address (Torez Smith) [1825410 1821835] - [media] media: gspca: fix frame overflow error (Torez Smith) [1825410 1821835] - [media] media: cropcap/g_selection split (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: check for csum being in last four bytes (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: fix memcpy for accessing rx-data (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: simplify tx_fixup code (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: fix rx packet alignment (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: remove duplicated include from ucan.c (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: remove set but not used variable 'udev' (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Fix accessing freed memory in kvaser_usb_start_xmit() (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Fix potential uninitialized variable use (Torez Smith) [1825410 1821835] - [netdrv] net: smsc95xx: Fix MTU range (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: disable carrier check while suspending (Torez Smith) [1825410 1821835] - [netdrv] net: cdc_ncm: remove set but not used variable 'ctx' (Torez Smith) [1825410 1821835] - [netdrv] net: cdc_ncm: use tasklet_init() for tasklet_struct init (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Added support for Gemalto's Cinterion ALASxx WWAN interface (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: replace `printk` with `pr_*` (Torez Smith) [1825410 1821835] - [media] media: cx231xx: fix potential sign-extension overflow on large shift (Torez Smith) [1825410 1821835] - [media] Revert "media: dvbsky: use just one mutex for serializing device R/W ops" (Torez Smith) [1825410 1821835] - [netdrv] net/usb: cancel pending work when unbinding smsc75xx (Torez Smith) [1825410 1821835] - [netdrv] smsc95xx: Check for Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] smsc75xx: Check for Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] r8152: Check for supported Wake-on-LAN Modes (Torez Smith) [1825410 1821835] - [netdrv] sr9800: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] ax88179_178a: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] asix: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [media] media: v4l: Add definition for the Sunxi tiled NV12 format (Torez Smith) [1825410 1821835] - [documentation] media: v4l: Add definitions for MPEG-2 slice format and metadata (Torez Smith) [1825410 1821835] - [media] media: au0828: Fix incorrect error messages (Torez Smith) [1825410 1821835] - [media] media: au0828: cannot kfree dev before usb disconnect (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Avoid unnecessary self assignment (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: set DTR for modems in forced USB2 mode (Torez Smith) [1825410 1821835] - [media] media: mxl111sf: declare its own pads (Torez Smith) [1825410 1821835] - [media] media: au0828: use signals instead of hardcoding a pad number (Torez Smith) [1825410 1821835] - [media] media: v4l2: taint pads with the signal types for consumer devices (Torez Smith) [1825410 1821835] - [media] media: em28xx: make v4l2-compliance happier by starting sequence on zero (Torez Smith) [1825410 1821835] - [media] media: em28xx: fix input name for Terratec AV 350 (Torez Smith) [1825410 1821835] - [media] media: em28xx: use a default format if TRY_FMT fails (Torez Smith) [1825410 1821835] - [media] media: em28xx: fix handler for vidioc_s_input() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: remove redundant null pointer check before of_node_put (Torez Smith) [1825410 1821835] - [media] media: usbvision: remove time_in_irq (Torez Smith) [1825410 1821835] - [media] media: gspca: sq930x: use GFP_KERNEL in sd_dq_callback() (Torez Smith) [1825410 1821835] - [media] media: replace strcpy() by strscpy() (Torez Smith) [1825410 1821835] - [media] media: use strscpy() instead of strlcpy() (Torez Smith) [1825410 1821835] - [documentation] media: videodev2.h: add new capabilities for buffer types (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Store device information pointer in struct uvc_device (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Rename UVC_QUIRK_INFO to UVC_INFO_QUIRK (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix uvc_alloc_entity() allocation alignment (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix spelling mistake: "entites" -> "entities" (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Remove unnecessary NULL check before debugfs_remove_recursive (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Make uvc_control_mapping menu_info field const (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Make some structs const (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Support dynamic config on Quectel EP06 (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Do not access skb_queue_head list pointers directly (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Make declaration style consistent (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Switch to SPDX identifier (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Drop unnecessary strcpy in lan78xx_probe (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Bail out if lan78xx_get_endpoints fails (Torez Smith) [1825410 1821835] - [netdrv] net: usbnet: mark expected switch fall-through (Torez Smith) [1825410 1821835] - [media] media: v4l2-ctrls: v4l2_ctrl_add_handler: add from_other_dev (Torez Smith) [1825410 1821835] - [media] media: videodev2.h: add request_fd field to v4l2_ext_controls (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: Add new DV flag CAN_DETECT_REDUCED_FPS (Torez Smith) [1825410 1821835] - [media] media: af9035: prevent buffer overflow on write (Torez Smith) [1825410 1821835] - [netdrv] r8152: disable RX aggregation on new Dell TB16 dock (Torez Smith) [1825410 1821835] - [netdrv] drivers/net/usb/r8152: remove the unneeded variable "ret" in rtl8152_system_suspend (Torez Smith) [1825410 1821835] - [media] media: rtl28xxu: be sure that it won't go past the array size (Torez Smith) [1825410 1821835] - [netdrv] net:usb: Use ARRAY_SIZE instead of calculating the array size (Torez Smith) [1825410 1821835] - [media] media: au0828: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: cx231xx: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: dvb-usb-v2: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: dvb-usb: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: usb: hackrf: Replace GFP_ATOMIC with GFP_KERNEL (Torez Smith) [1825410 1821835] - [media] media: usb: em28xx: Replace mdelay() with msleep() in em28xx_pre_card_setup() (Torez Smith) [1825410 1821835] - [media] media: usb: em28xx: Replace GFP_ATOMIC with GFP_KERNEL in em28xx_init_usb_xfer() (Torez Smith) [1825410 1821835] - [media] media: dw2102: Fix memleak on sequence of probes (Torez Smith) [1825410 1821835] - [media] media: usbtv: use irqsave() in USB's complete callback (Torez Smith) [1825410 1821835] - [media] media: go7007: use irqsave() in USB's complete callback (Torez Smith) [1825410 1821835] - [media] media: cx231xx: use irqsave() in USB's complete callback (Torez Smith) [1825410 1821835] - [documentation] media: v4l: Add new 10-bit packed grayscale format (Torez Smith) [1825410 1821835] - [documentation] media: doc-rst: Add packed Bayer raw14 pixel formats (Torez Smith) [1825410 1821835] - [media] media: em28xx: disable null packet filter for WinTVdualHD (Torez Smith) [1825410 1821835] - [uapi] media: videodev2: get rid of VIDIOC_RESERVED (Torez Smith) [1825410 1821835] - [media] media: em28xx: explicitly disable TS packet filter (Torez Smith) [1825410 1821835] - [media] media: dvb-usb/friio, dvb-usb-v2/gl861: decompose friio and merge with gl861 (Torez Smith) [1825410 1821835] - [netdrv] net: usb: sr9700: Replace mdelay() with msleep() in sr9700_bind() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: pegasus: Replace mdelay() with msleep() in setup_pegasus_II() (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Send a control event when a Control Change interrupt arrives (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Handle control pipe protocol STALLs (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Remove a redundant check (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Also validate buffers in BULK mode (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Add KSMedia 8-bit IR format support (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix minor spelling (Torez Smith) [1825410 1821835] - [media] media: em28xx-cards: disable V4L2 mode for dual tuners (Torez Smith) [1825410 1821835] - [media] media: em28xx: Remove duplicate PID (Torez Smith) [1825410 1821835] - [media] media: em28xx: Fix DualHD disconnect oops (Torez Smith) [1825410 1821835] - [media] media: em28xx: Fix dual transport stream operation (Torez Smith) [1825410 1821835] - [media] media: dib0700: add code comment (Torez Smith) [1825410 1821835] - [media] media: cx231xx: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: em28xx: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: hdpvr: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: dvb-usb: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: tm6000: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: gl861: fix probe of dvb_usb_gl861 (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Simplify struct kvaser_cmd_cardinfo (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Add support for Kvaser USB hydra family (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Split driver into kvaser_usb_core.c and kvaser_usb_leaf.c (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Add SPDX GPL-2.0 license identifier (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Fix typos (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Improve logging messages (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Refactor kvaser_usb_init_one() (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Refactor kvaser_usb_get_endpoints() (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Add pointer to struct usb_interface into struct kvaser_usb (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Replace USB timeout constants with one define (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Rename message/msg to command/cmd (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Remove unused commands and defines (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Remove unnecessary return (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: mark expected switch fall-throughs (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: add driver for Theobroma Systems UCAN devices (Torez Smith) [1825410 1821835] - [netdrv] can: usb: Kconfig/Makefile: sort alphabetically (Torez Smith) [1825410 1821835] - [media] media: gspca_kinect: cast sizeof to int for comparison (Torez Smith) [1825410 1821835] - [media] media: videodev.h: add PIX_FMT_FWHT for use with vicodec (Torez Smith) [1825410 1821835] - [netdrv] net: usb: hso: use swap macro in hso_kick_transmit (Torez Smith) [1825410 1821835] - [netdrv] net: usb: asix: allow optionally getting mac address from device tree (Torez Smith) [1825410 1821835]- [hid] HID: Improve Windows Precision Touchpad detection (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: enable multi-input as a quirk for some devices (Benjamin Tissoires) [1811209] - [hid] drivers/hid/hid-multitouch.c: fix a possible null pointer access (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: Add LG MELF0410 I2C touchscreen support (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: add support for the Smart Tech panel (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: do not filter mice nodes (Benjamin Tissoires) [1811209] - [hid] HID: wacom: Report 2nd-gen Intuos Pro S center button status over BT (Benjamin Tissoires) [1835753] - [hid] Revert "HID: wacom: generic: read the number of expected touches on a per collection basis" (Benjamin Tissoires) [1835753] - [hid] HID: wacom: Read HID_DG_CONTACTMAX directly for non-generic devices (Benjamin Tissoires) [1835753] - [hid] HID: wacom: Recognize new MobileStudio Pro PID (Benjamin Tissoires) [1835753] - [hid] HID: wacom: generic: Treat serial number and related fields as unsigned (Benjamin Tissoires) [1835753] - [hid] HID: wacom: add new MobileStudio Pro 13 support (Benjamin Tissoires) [1835753] - [hid] HID: wacom: do not call hid_set_drvdata(hdev, NULL) (Benjamin Tissoires) [1835753] - [hid] HID: wacom: support named keys on older devices (Benjamin Tissoires) [1835753] - [target] scsi: target: iscsi: calling iscsit_stop_session() inside iscsit_close_session() has no effect (Maurizio Lombardi) [1840024] - [target] scsi: target: fix hang when multiple threads try to destroy the same iscsi session (Maurizio Lombardi) [1840024] - [target] scsi: target: remove boilerplate code (Maurizio Lombardi) [1840024] - [target] scsi: target: use an enum to track emulate_ua_intlck_ctrl (Maurizio Lombardi) [1840024] - [target] scsi: target: convert boolean se_dev_attrib types to bool (Maurizio Lombardi) [1840024] - [target] scsi: target: fix unmap_zeroes_data boolean initialisation (Maurizio Lombardi) [1840024] - [fs] page cache: Finish XArray conversion (Waiman Long) [1812073] - [mm] mm: Convert __do_page_cache_readahead to XArray (Waiman Long) [1812073] - [mm] mm: Convert is_page_cache_freeable to XArray (Waiman Long) [1812073] - [mm] mm: memcontrol: clean up and document effective low/min calculations (Waiman Long) [1812073] - [mm] mm: memcontrol: fix memory.low proportional distribution (Waiman Long) [1812073] - [mm] mm: kmem: rename (__)memcg_kmem_(un)charge_memcg() to __memcg_kmem_(un)charge() (Waiman Long) [1812073] - [mm] mm: memcg/slab: cache page number in memcg_(un)charge_slab() (Waiman Long) [1812073] - [mm] mm: kmem: switch to nr_pages in (__)memcg_kmem_charge_memcg() (Waiman Long) [1812073] - [mm] mm: kmem: rename memcg_kmem_(un)charge() into memcg_kmem_(un)charge_page() (Waiman Long) [1812073] - [mm] mm: kmem: cleanup memcg_kmem_uncharge_memcg() arguments (Waiman Long) [1812073] - [mm] mm: kmem: cleanup (__)memcg_kmem_charge_memcg() arguments (Waiman Long) [1812073] - [mm] mm: memcg/slab: use mem_cgroup_from_obj() (Waiman Long) [1812073] - [kernel] mm: fork: fix kernel_stack memcg stats for various stack implementations (Waiman Long) [1812073] - [mm] memcg: fix NULL pointer dereference in __mem_cgroup_usage_unregister_event (Waiman Long) [1812073] - [mm] mm: clean up and clarify lruvec lookup procedure (Waiman Long) [1812073] - [mm] mm: memcontrol: try harder to set a new memory.high (Waiman Long) [1812073] - [mm] mm: memcontrol: remove dead code from memory_max_write() (Waiman Long) [1812073] - [mm] mm, memcg: clean up reclaim iter array (Waiman Long) [1812073] - [mm] mm, memcg: make scan aggression always exclude protection (Waiman Long) [1812073] - [mm] mm, memcg: make memory.emin the baseline for utilisation determination (Waiman Long) [1812073] - [mm] mm, memcg: proportional memory.{low, min} reclaim (Waiman Long) [1812073] - [mm] memcg, kmem: do not fail __GFP_NOFAIL charges (Waiman Long) [1812073] - [mm] mm: workingset: fix vmstat counters for shadow nodes (Waiman Long) [1812073] - [mm] mm: memcontrol: use CSS_TASK_ITER_PROCS at mem_cgroup_scan_tasks() (Waiman Long) [1812073] - [kernel] fork, memcg: alloc_thread_stack_node needs to set tsk->stack (Waiman Long) [1812073] - [mm] mm/memcontrol.c: fix bad line in comment (Waiman Long) [1812073] - [kernel] fork, memcg: fix cached_stacks case (Waiman Long) [1812073] - [mm] mm: don't raise MEMCG_OOM event due to failed high-order allocation (Waiman Long) [1812073] - [mm] mm: vmscan: memcontrol: remove mem_cgroup_select_victim_node() (Waiman Long) [1812073] - [mm] mm: vmscan: do not share cgroup iteration between reclaimers (Waiman Long) [1812073] - [mm] mm: vmscan: do not iterate all mem cgroups for global direct reclaim (Waiman Long) [1812073] - [mm] mm: workingset: use cheaper __inc_lruvec_state in irqsafe node reclaim (Waiman Long) [1812073] - [tools] xarray: Fix early termination of xas_for_each_marked (Waiman Long) [1812073] - [lib] mm: Convert workingset to XArray (Waiman Long) [1812073] - [mm] page cache: Convert filemap_range_has_page to XArray (Waiman Long) [1812073] - [mm] page cache: Remove stray radix comment (Waiman Long) [1812073] - [mm] page cache: Convert delete_batch to XArray (Waiman Long) [1812073] - [mm] page cache: Convert filemap_map_pages to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_entries_tag to XArray (Waiman Long) [1812073] - [mm] page cache; Convert find_get_pages_range_tag to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_pages_contig to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_pages_range to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_entries to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_entry to XArray (Waiman Long) [1812073] - [mm] page cache: Convert page deletion to XArray (Waiman Long) [1812073] - [include] page cache: Add and replace pages using the XArray (Waiman Long) [1812073] - [mm] page cache: Convert hole search to XArray (Waiman Long) [1812073] - [kernel] docs: cgroup-v1: Document the cpuset_v2_mode mount option (Waiman Long) [1812073] - [kernel] cgroup1: don't call release_agent when it is "" (Waiman Long) [1812073] - [kernel] cgroup: Iterate tasks that did not finish do_exit() (Waiman Long) [1812073] - [kernel] cgroup: cgroup_procs_next should increase position index (Waiman Long) [1812073] - [kernel] cgroup-v1: cgroup_pidlist_next should update position index (Waiman Long) [1812073] - [kernel] cgroup: init_tasks shouldn't be linked to the root cgroup (Waiman Long) [1812073] - [kernel] cgroup: Prevent double killing of css when enabling threaded cgroup (Waiman Long) [1812073] - [kernel] cgroup: fix function name in comment (Waiman Long) [1812073] - [kernel] cgroup: freezer: don't change task and cgroups status unnecessarily (Waiman Long) [1812073] - [kernel] cgroup: use cgroup->last_bstat instead of cgroup->bstat_pending for consistency (Waiman Long) [1812073] - [kernel] cgroup: remove cgroup_enable_task_cg_lists() optimization (Waiman Long) [1812073] - [kernel] cgroup: pids: use atomic64_t for pids->limit (Waiman Long) [1812073] - [kernel] cgroup: Optimize single thread migration (Waiman Long) [1812073] - [kernel] cgroup: Update comments about task exit path (Waiman Long) [1812073] - [kernel] cgroup: short-circuit current_cgns_cgroup_from_root() on the default hierarchy (Waiman Long) [1812073] - [kernel] Use kvmalloc in cgroups-v1 (Waiman Long) [1812073] - [kernel] cgroup: minor tweak for logic to get cgroup css (Waiman Long) [1812073] - [kernel] cgroup: Replace a seq_printf() call by seq_puts() in cgroup_print_ss_mask() (Waiman Long) [1812073] - [kernel] cgroup: Fix css_task_iter_advance_css_set() cset skip condition (Waiman Long) [1812073] - [kernel] cgroup: css_task_iter_skip()'d iterators must be advanced before accessed (Waiman Long) [1812073] - [include] cgroup: Include dying leaders with live threads in PROCS iterations (Waiman Long) [1812073] - [kernel] cgroup: Implement css_task_iter_skip() (Waiman Long) [1812073] - [kernel] cgroup/pids: turn cgroup_subsys->free() into cgroup_subsys->release() to fix the accounting (Waiman Long) [1586281 1812073] - [platform] intel-speed-select: Firmware workarounds for Icelake (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Fix invalid core mask (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Increase CPU count (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Fix json perf-profile output output (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Update version (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Enable clos for turbo-freq enable (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Check support status before enable (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Change debug to error (Prarit Bhargava) [1840289] - [platform] intel_speed_select: internal-only-debug-patch (Prarit Bhargava) [1840289]- [nvdimm] libnvdimm/region: Fix build error (Diego Domingos) [1779218] - [nvdimm] libnvdimm/region: Introduce an 'align' attribute (Diego Domingos) [1779218] - [nvdimm] libnvdimm/region: Introduce NDD_LABELING (Diego Domingos) [1779218] - [nvdimm] libnvdimm/namespace: Enforce memremap_compat_align() (Diego Domingos) [1779218] - [nvdimm] libnvdimm/pfn: Prevent raw mode fallback if pfn-infoblock valid (Diego Domingos) [1779218] - [mm] mm/memremap_pages: Introduce memremap_compat_align() (Diego Domingos) [1779218] - [x86] x86/unwind/orc: Fix unwind_get_return_address_ptr() for inactive tasks (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Fix error handling in __unwind_start() (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Fix premature unwind stoppage due to IRET frames (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Fix error path for bad ORC entry type (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Prevent unwinding before ORC initialization (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Don't skip the first frame for inactive tasks (Josh Poimboeuf) [1755143] - [x86] x86/unwind: Prevent false warnings for non-current tasks (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Convert global variables to static (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in rewind_stack_do_exit() (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in __switch_to_asm() (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in kernel exit path (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in register clearing code (Josh Poimboeuf) [1755143] - [tools] objtool: Fix stack offset tracking for indirect CFAs (Josh Poimboeuf) [1755143] - [s390] s390: nvme reipl (Philipp Rudo) [1525179] - [s390] s390: nvme ipl (Philipp Rudo) [1525179] - [infiniband] RDMA/bnxt_re: make bnxt_re_ib_init static (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Wait for all the CQ events before freeing CQ data structures (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove unnecessary sched count (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Fix lifetimes in bnxt_re_task (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Use ib_device_try_get() (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove a redundant 'memset' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove set but not used variables 'pg' and 'idx' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove set but not used variable 'dev_attr' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove set but not used variable 'pg_size' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Use driver_unregister and unregistration API (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor device add/remove functionalities (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Using vmalloc requires including vmalloc.h (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: use ibdev based message printing functions (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor doorbell management functions (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor notification queue management code (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor command queue management code (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor net ring allocation function (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor hardware queue memory allocation (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Replace chip context structure with pointer (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor queue pair creation code (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: remove ioremap_nocache and devm_ioremap_nocache (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Enable SRIOV VF support on Broadcom's 57500 adapter series (Selvin Xavier) [1790622] - [netdrv] net: be2net: reject unsupported coalescing params (Petr Oros) [1790633] - [netdrv] treewide: Use sizeof_field() macro (Petr Oros) [1790633] - [netdrv] net: emulex: benet: indent a Kconfig depends continuation line (Petr Oros) [1790633] - [infiniband] i40iw: fix null pointer dereference on a null wqe pointer (Stefan Assmann) [1839718] - [infiniband] RDMA/providers: Fix return value when QP type isn't supported (Stefan Assmann) [1839718] - [infiniband] RDMA: Replace zero-length array with flexible-array member (Stefan Assmann) [1839718] - [infiniband] i40iw: Do an RCU lookup in i40iw_add_ipv4_addr (Stefan Assmann) [1839718] - [infiniband] IB/core: Introduce ib_reg_user_mr (Stefan Assmann) [1839718] - [infiniband] RDMA/i40iw: fix a potential NULL pointer dereference (Stefan Assmann) [1839718] - [infiniband] i40iw: Remove setting of VMA private data and use rdma_user_mmap_io (Stefan Assmann) [1839718] - [infiniband] RDMA/i40iw: Fix potential use after free (Stefan Assmann) [1839718] - [powerpc] powerpc/pseries: Fix of_read_drc_info_cell() to point at next record (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Enable support for ibm, drc-info property (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Correctly match ibm, my-drc-index to drc-name when using drc-info (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Avoid a sometimes-uninitialized warning (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Annotate and correctly byte swap DRC properties (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Add drc-info support for hotplug slot registration (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Don't rely on firmware feature to imply drc-info support (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Fix up pointer to first drc-info entry (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Add cpu DLPAR support for drc-info property (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Fix drc-info mappings of logical cpus to drc-index (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Fix bad drc_index_start value parsing of drc-info entry (Diego Domingos) [1779198] - [kernel] sched/fair: Optimize enqueue_task_fair() (Phil Auld) [1780466] - [kernel] sched/fair: Fix enqueue_task_fair() warning some more (Phil Auld) [1780466] - [kernel] sched/fair: Fix enqueue_task_fair warning (Phil Auld) [1780466] - [kernel] sched/fair: Fix reordering of enqueue/dequeue_task_fair() (Phil Auld) [1780466] - [kernel] sched/fair: Reorder enqueue/dequeue_task_fair path (Phil Auld) [1780466] - [fs] ceph: demote quotarealm lookup warning to a debug message (Jeff Layton) [1827767] - [fs] ceph: fix double unlock in handle_cap_export() (Jeff Layton) [1827767] - [fs] ceph: fix special error code in ceph_try_get_caps() (Jeff Layton) [1827767] - [fs] ceph: fix endianness bug when handling MDS session feature bits (Jeff Layton) [1827767] - [fs] ceph: fix potential bad pointer deref in async dirops cb's (Jeff Layton) [1827767] - [block] rbd: don't mess with a page vector in rbd_notify_op_lock() (Jeff Layton) [1827767] - [block] rbd: don't test rbd_dev->opts in rbd_dev_image_release() (Jeff Layton) [1827767] - [block] rbd: call rbd_dev_unprobe() after unwatching and flushing notifies (Jeff Layton) [1827767] - [block] rbd: avoid a deadlock on header_rwsem when flushing notifies (Jeff Layton) [1827767] - [fs] ceph: fix snapshot directory timestamps (Jeff Layton) [1827767] - [fs] ceph: wait for async creating inode before requesting new max size (Jeff Layton) [1827767] - [fs] ceph: don't skip updating wanted caps when cap is stale (Jeff Layton) [1827767] - [fs] ceph: request new max size only when there is auth cap (Jeff Layton) [1827767] - [fs] ceph: cleanup return error of try_get_cap_refs() (Jeff Layton) [1827767] - [fs] ceph: return ceph_mdsc_do_request() errors from __get_parent() (Jeff Layton) [1827767] - [fs] ceph: check all mds' caps after page writeback (Jeff Layton) [1827767] - [fs] ceph: update i_requested_max_size only when sending cap msg to auth mds (Jeff Layton) [1827767] - [fs] ceph: simplify calling of ceph_get_fmode() (Jeff Layton) [1827767] - [fs] ceph: remove delay check logic from ceph_check_caps() (Jeff Layton) [1827767] - [fs] ceph: consider inode's last read/write when calculating wanted caps (Jeff Layton) [1827767] - [fs] ceph: always renew caps if mds_wanted is insufficient (Jeff Layton) [1827767] - [fs] ceph: update dentry lease for async create (Jeff Layton) [1827767] - [fs] ceph: attempt to do async create when possible (Jeff Layton) [1827767] - [fs] ceph: cache layout in parent dir on first sync create (Jeff Layton) [1827767] - [fs] ceph: add new MDS req field to hold delegated inode number (Jeff Layton) [1827767] - [fs] ceph: decode interval_sets for delegated inos (Jeff Layton) [1827767] - [fs] ceph: make ceph_fill_inode non-static (Jeff Layton) [1827767] - [fs] ceph: perform asynchronous unlink if we have sufficient caps (Jeff Layton) [1827767] - [fs] ceph: don't take refs to want mask unless we have all bits (Jeff Layton) [1827767] - [fs] ceph: cap tracking for async directory operations (Jeff Layton) [1827767] - [fs] ceph: make __take_cap_refs non-static (Jeff Layton) [1827767] - [fs] ceph: add infrastructure for waiting for async create to complete (Jeff Layton) [1827767] - [fs] ceph: track primary dentry link (Jeff Layton) [1827767] - [fs] ceph: add flag to designate that a request is asynchronous (Jeff Layton) [1827767] - [fs] ceph: more caps.c lockdep assertions (Jeff Layton) [1827767] - [fs] ceph: clean up kick_flushing_inode_caps() (Jeff Layton) [1827767] - [net] libceph: directly skip to the end of redirect reply (Jeff Layton) [1827767] - [net] libceph: simplify ceph_monc_handle_map() (Jeff Layton) [1827767] - [fs] ceph: return ETIMEDOUT errno to userland when request timed out (Jeff Layton) [1827767] - [fs] ceph: re-org copy_file_range and fix some error paths (Jeff Layton) [1827767] - [fs] ceph: move to a dedicated slabcache for mds requests (Jeff Layton) [1827767] - [fs] ceph: reorganize fields in ceph_mds_request (Jeff Layton) [1827767] - [fs] ceph: replace zero-length array with flexible-array member (Jeff Layton) [1827767] - [block] rbd: enable multiple blk-mq queues (Jeff Layton) [1827767] - [block] rbd: embed image request in blk-mq pdu (Jeff Layton) [1827767] - [block] rbd: acquire header_rwsem just once in rbd_queue_workfn() (Jeff Layton) [1827767] - [block] rbd: get rid of img_request_layered_clear() (Jeff Layton) [1827767] - [block] rbd: kill img_request kref (Jeff Layton) [1827767] - [fs] ceph: check if file lock exists before sending unlock request (Jeff Layton) [1827767] - [fs] ceph: move ceph_osdc_{read, write}pages to ceph.ko (Jeff Layton) [1827767] - [fs] ceph: don't ClearPageChecked in ceph_invalidatepage() (Jeff Layton) [1827767] - [block] rbd: remove barriers from img_request_layered_{set, clear, test}() (Jeff Layton) [1827767] - [fs] libceph: drop CEPH_DEFINE_SHOW_FUNC (Jeff Layton) [1827767] - [fs] ceph: check inode type for CEPH_CAP_FILE_{CACHE, RD, REXTEND, LAZYIO} (Jeff Layton) [1827767] - [fs] ceph: add refcounting for Fx caps (Jeff Layton) [1827767] - [fs] ceph: register MDS request with dir inode from the start (Jeff Layton) [1827767] - [fs] ceph: fix memory leak in ceph_cleanup_snapid_map() (Jeff Layton) [1827767] - [net] libceph: fix alloc_msg_with_page_vector() memory leaks (Jeff Layton) [1827767] - [include] ceph: check POOL_FLAG_FULL/NEARFULL in addition to OSDMAP_FULL/NEARFULL (Jeff Layton) [1827767] - [fs] ceph: canonicalize server path in place (Jeff Layton) [1827767] - [fs] ceph: do not execute direct write in parallel if O_APPEND is specified (Jeff Layton) [1827767] - [block] rbd: set the 'device' link in sysfs (Jeff Layton) [1827767] - [fs] ceph: move net/ceph/ceph_fs.c to fs/ceph/util.c (Jeff Layton) [1827767] - [fs] ceph: print name of xattr in __ceph_{get, set}xattr() douts (Jeff Layton) [1827767] - [fs] ceph: print r_direct_hash in hex in __choose_mds() dout (Jeff Layton) [1827767] - [fs] ceph: use copy-from2 op in copy_file_range (Jeff Layton) [1827767] - [fs] ceph: close holes in structs ceph_mds_session and ceph_mds_request (Jeff Layton) [1827767] - [block] rbd: work around -Wuninitialized warning (Jeff Layton) [1827767] - [fs] ceph: allocate the correct amount of extra bytes for the session features (Jeff Layton) [1827767] - [fs] ceph: rename get_session and switch to use ceph_get_mds_session (Jeff Layton) [1827767] - [fs] ceph: remove the extra slashes in the server path (Jeff Layton) [1827767] - [fs] ceph: add possible_max_rank and make the code more readable (Jeff Layton) [1827767] - [fs] ceph: print dentry offset in hex and fix xattr_version type (Jeff Layton) [1827767] - [fs] ceph: only touch the caps which have the subset mask requested (Jeff Layton) [1827767] - [fs] ceph: don't clear I_NEW until inode metadata is fully populated (Jeff Layton) [1827767] - [fs] ceph: retry the same mds later after the new session is opened (Jeff Layton) [1827767] - [fs] ceph: check availability of mds cluster on mount after wait timeout (Jeff Layton) [1827767] - [fs] ceph: keep the session state until it is released (Jeff Layton) [1827767] - [fs] ceph: add __send_request helper (Jeff Layton) [1827767] - [fs] ceph: ensure we have a new cap before continuing in fill_inode (Jeff Layton) [1827767] - [fs] ceph: drop unused ttl_from parameter from fill_inode (Jeff Layton) [1827767] - [fs] ceph: fix possible long time wait during umount (Jeff Layton) [1827767] - [fs] ceph: only choose one MDS who is in up:active state without laggy (Jeff Layton) [1827767] - [fs] ceph: fix mdsmap cluster available check based on laggy number (Jeff Layton) [1827767] - [fs] ceph: remove unnecessary assignment in ceph_pre_init_acls() (Jeff Layton) [1827767] - [fs] ceph: delete redundant douts in con_get/put() (Jeff Layton) [1827767] - [fs] ceph: hold extra reference to r_parent over life of request (Jeff Layton) [1827767] - [fs] ceph: add more debug info when decoding mdsmap (Jeff Layton) [1827767] - [fs] ceph: switch to global cap helper (Jeff Layton) [1827767] - [fs] ceph: trigger the reclaim work once there has enough pending caps (Jeff Layton) [1827767] - [fs] ceph: show tasks waiting on caps in debugfs caps file (Jeff Layton) [1827767] - [fs] fs: ceph: Delete timespec64_trunc() usage (Jeff Layton) [1827767] - [block] rbd: ask for a weaker incompat mask for read-only mappings (Jeff Layton) [1827767] - [block] rbd: don't query snapshot features (Jeff Layton) [1827767] - [block] rbd: remove snapshot existence validation code (Jeff Layton) [1827767] - [block] rbd: don't establish watch for read-only mappings (Jeff Layton) [1827767] - [block] rbd: don't acquire exclusive lock for read-only mappings (Jeff Layton) [1827767] - [block] rbd: disallow read-write partitions on images mapped read-only (Jeff Layton) [1827767] - [block] rbd: treat images mapped read-only seriously (Jeff Layton) [1827767] - [block] rbd: introduce RBD_DEV_FLAG_READONLY (Jeff Layton) [1827767] - [block] rbd: introduce rbd_is_snap() (Jeff Layton) [1827767] - [fs] ceph: don't leave ino field in ceph_mds_request_head uninitialized (Jeff Layton) [1827767] - [fs] ceph: tone down loglevel on ceph_mdsc_build_path warning (Jeff Layton) [1827767] - [fs] ceph: fix geting random mds from mdsmap (Jeff Layton) [1827767] - [block] rbd: fix spelling mistake "requeueing" -> "requeuing" (Jeff Layton) [1827767] - [fs] ceph: make several helper accessors take const pointers (Jeff Layton) [1827767] - [net] libceph: drop unnecessary check from dispatch() in mon_client.c (Jeff Layton) [1827767] - [fs] ceph: don't allow copy_file_range when stripe_count != 1 (Jeff Layton) [1827767] - [fs] ceph: allow object copies across different filesystems in the same cluster (Jeff Layton) [1827767] - [fs] ceph: pass filp to ceph_get_caps() (Jeff Layton) [1827767] - [fs] ceph: allow copy_file_range when src and dst inode are same (Jeff Layton) [1827767] - [fs] ceph: increment change_attribute on local changes (Jeff Layton) [1827767] - [fs] ceph: make 'nocopyfrom' a default mount option (Jeff Layton) [1827767] - [fs] vfs: allow copy_file_range to copy across devices (Jeff Layton) [1827767] - [fs] vfs: no fallback for ->copy_file_range (Jeff Layton) [1827767] - [fs] ceph: add destination file data sync before doing any remote copy (Jeff Layton) [1827767] - [fs] ceph: new mount option to disable usage of copy-from op (Jeff Layton) [1827767] - [fs] ceph: support copy_file_range file operation (Jeff Layton) [1827767] - [include] libceph: support the RADOS copy-from operation (Jeff Layton) [1827767] - [fs] cachefiles: Fix race between read_waiter and read_copier involving op->to_do (Dave Wysochanski) [1832644] - [char] security: keys: trusted: fix lost handle flush (Jerry Snitselaar) [1815609] - [security] KEYS: trusted: Remove set but not used variable 'keyhndl' (Jerry Snitselaar) [1815609] - [char] KEYS: trusted: Move TPM2 trusted keys code (Jerry Snitselaar) [1815609] - [security] KEYS: trusted: Create trusted keys subsystem (Jerry Snitselaar) [1815609] - [security] KEYS: Use common tpm_buf for trusted and asymmetric keys (Jerry Snitselaar) [1815609] - [char] tpm: Move tpm_buf code to include/linux/ (Jerry Snitselaar) [1815609] - [char] tpm/tpm_tis: Free IRQ if probing fails (Jerry Snitselaar) [1815609 1788758] - [char] tpm: Revert tpm_tis_spi_mod.ko to tpm_tis_spi.ko (Jerry Snitselaar) [1815609 1788758] - [char] tpm: Add tpm_version_major sysfs file (Jerry Snitselaar) [1815609] - [char] tpm: Handle negative priv->response_len in tpm_common_read() (Jerry Snitselaar) [1815609] - [char] tpm: fix invalid locking in NONBLOCKING mode (Jerry Snitselaar) [1815609] - [char] tpm_crb: fix fTPM on AMD Zen+ CPUs (Jerry Snitselaar) [1815609] - [char] tpm: use GFP_KERNEL instead of GFP_HIGHMEM for tpm_buf (Jerry Snitselaar) [1815609] - [char] tpm: add check after commands attribs tab allocation (Jerry Snitselaar) [1815609] - [char] tpm: tpm_tis_spi: Drop THIS_MODULE usage from driver struct (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm_tis_spi: Cleanup includes (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm_tis_spi: Support cr50 devices (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm_tis_spi: Introduce a flow control callback (Jerry Snitselaar) [1815609 1788758] - [char] tpm: Add a flag to indicate TPM power is managed by firmware (Jerry Snitselaar) [1815609] - [char] tpm_tis: override durations for STM tpm with firmware 1.2.8.28 (Jerry Snitselaar) [1815609 1788758] - [char] tpm: provide a way to override the chip returned durations (Jerry Snitselaar) [1815609] - [char] tpm: Remove duplicate code from caps_show() in tpm-sysfs.c (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm2_bios_measurements_next should increase position index (Jerry Snitselaar) [1815609 1795739] - [char] tpm: tpm1_bios_measurements_next should increase position index (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Don't make log failures fatal (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Initialize crypto_id of allocated_banks to HASH_ALGO__LAST (Jerry Snitselaar) [1815609 1795739] - [include] efi/tpm: Don't access event->count when it isn't mapped (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Return -EINVAL when determining tpm final events log size fails (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Fix sanity check of unsigned tbl_size being less than zero (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Only set 'efi_tpm_final_log_size' after successful event log parsing (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Don't traverse an event log with no events (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Don't duplicate events from the final event log in the TCG2 log (Jerry Snitselaar) [1815609 1795739] - [firmware] Abstract out support for locating an EFI config table (Jerry Snitselaar) [1815609 1795739] - [firmware] efi: Attempt to get the TCG2 event log in the boot stub (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Append the final event log to the TPM event log (Jerry Snitselaar) [1815609 1795739] - [firmware] tpm: Reserve the TPM final events table (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Abstract crypto agile event size calculations (Jerry Snitselaar) [1815609 1795739] - [netdrv] bnx2x: Fix accounting of vlan resources among the PFs (Manish Chopra) [1791026] - [netdrv] bnx2x: Use appropriate define for vlan credit (Manish Chopra) [1791026] - [netdrv] bnx2x: Fix logic to get total no. of PFs per engine (Manish Chopra) [1791026] - [netdrv] bnx2x: Do not handle requests from VFs after parity (Manish Chopra) [1791026] - [netdrv] qed: remove redundant assignment to variable 'rc' (Manish Chopra) [1791024] - [netdrv] qed: Fix use after free in qed_chain_free (Manish Chopra) [1791024] - [netdrv] qed: Fix race condition between scheduling and destroying the slowpath workqueue (Manish Chopra) [1791024] - [netdrv] qede: remove some unused code in function qede_selftest_receive_traffic (Manish Chopra) [1791024] - [netdrv] qede: Fix race between rdma destroy workqueue and link change event (Manish Chopra) [1791024] - [netdrv] qed: Fix timestamping issue for L2 unicast ptp packets (Manish Chopra) [1791024] - [netdrv] qed: Remove set but not used variable 'p_link' (Manish Chopra) [1791024] - [netdrv] qed: Fix a error code in qed_hw_init() (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 debug features (Manish Chopra) [1791024] - [netdrv] qed: rt init valid initialization changed (Manish Chopra) [1791024] - [netdrv] qed: Debug feature: ilt and mdump (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Add fw overlay feature (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 HSI changes (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 iscsi/fcoe changes (Manish Chopra) [1791024] - [netdrv] qed: Add abstraction for different hsi values per chip (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Additional ll2 type (Manish Chopra) [1791024] - [netdrv] qed: Use dmae to write to widebus registers in fw_funcs (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Parser offsets modified (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Queue Manager changes (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Expose new registers and change windows (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Internal ram offsets modifications (Manish Chopra) [1791024] - [netdrv] qede: Disable hardware gro when xdp prog is installed (Manish Chopra) [1791024] - [netdrv] qed: remove redundant assignments to rc (Manish Chopra) [1791024] - [netdrv] qed: Optimize execution time for nvm attributes configuration (Manish Chopra) [1791024] - [netdrv] qed: fix spelling mistake "queuess" -> "queues" (Manish Chopra) [1791024] - [fs] fs/binfmt_elf.c: allocate initialized memory in fill_thread_core_info() (Bhupesh Sharma) [1832060] {CVE-2020-10732} - [tty] vt: selection, push sel_lock up (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection, push console lock down (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [staging] staging: speakup: refactor to use existing code in vt (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection: allow functions to be called from inside kernel (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: don't reinvent min() (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection, close sel_buffer race (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: fix broken display when running aptitude (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection: take screen contents from uniscr if available (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: preserve unicode values corresponding to screen characters (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [input] Input: add safety guards to input_set_keycode() (Chris von Recklinghausen) [1828223] {CVE-2019-20636}- [scsi] scsi: bnx2i: fix potential use after free (Nilesh Javali) [1792114] - [tools] perf python: Fix clang detection to strip out options passed in $CC (Michael Petlan) [1818841] - [tools] libperf: Add counting example (Michael Petlan) [1818841] - [tools] perf report/top TUI: Fix title line formatting (Michael Petlan) [1818841] - [tools] perf probe: Do not depend on dwfl_module_addrsym() (Michael Petlan) [1818841] - [tools] perf probe: Fix to delete multiple probe event (Michael Petlan) [1818841] - [tools] perf parse-events: Fix reading of invalid memory in event parsing (Michael Petlan) [1818841] - [tools] perf python: Fix clang detection when using CC=clang-version (Michael Petlan) [1818841] - [tools] perf map: Fix off by one in strncpy() size argument (Michael Petlan) [1818841] - [tools] tools: Let O= makes handle a relative path with -C option (Michael Petlan) [1818841] - [tools] tools: Fix off-by 1 relative directory includes (Michael Petlan) [1818841] - [tools] perf jevents: Fix leak of mapfile memory (Michael Petlan) [1818841] - [tools] perf bench: Clear struct sigaction before sigaction() syscall (Michael Petlan) [1818841] - [tools] perf bench futex-wake: Restore thread count default to online CPU count (Michael Petlan) [1818841] - [tools] perf top: Fix stdio interface input handling with glibc 2.28+ (Michael Petlan) [1818841] - [tools] perf diff: Fix undefined string comparision spotted by clang's -Wstring-compare (Michael Petlan) [1818841] - [tools] perf symbols: Don't try to find a vmlinux file when looking for kernel modules (Michael Petlan) [1818841] - [tools] perf bench: Share some global variables to fix build with gcc 10 (Michael Petlan) [1818841] - [tools] perf parse-events: Use asprintf() instead of strncpy() to read tracepoint files (Michael Petlan) [1818841] - [tools] perf env: Do not return pointers to local variables (Michael Petlan) [1818841] - [tools] perf tests bp_account: Make global variable static (Michael Petlan) [1818841] - [tools] perf annotate: Fix segfault with source toggle (Michael Petlan) [1818841] - [tools] perf annotate: Align struct annotate_args (Michael Petlan) [1818841] - [tools] perf annotate: Simplify disasm_line allocation and freeing code (Michael Petlan) [1818841] - [tools] perf annotate: Remove privsize from symbol__annotate() args (Michael Petlan) [1818841] - [tools] perf probe: Check return value of strlist__add() for -ENOMEM (Michael Petlan) [1818841] - [tools] perf config: Document missing config options (Michael Petlan) [1818841] - [tools] perf annotate: Fix perf config option description (Michael Petlan) [1818841] - [tools] perf annotate: Prefer cmdline option over default config (Michael Petlan) [1818841] - [tools] perf annotate: Make perf config effective (Michael Petlan) [1818841] - [tools] perf config: Introduce perf_config_u8() (Michael Petlan) [1818841] - [tools] perf annotate: Fix --show-nr-samples for tui/stdio2 (Michael Petlan) [1818841] - [tools] perf annotate: Fix --show-total-period for tui/stdio2 (Michael Petlan) [1818841] - [tools] perf annotate/tui: Re-render title bar after switching back from script browser (Michael Petlan) [1818841] - [tools] perf arch powerpc: Sync powerpc syscall.tbl with the kernel sources (Michael Petlan) [1818841] - [tools] perf auxtrace: Add auxtrace_record__read_finish() (Michael Petlan) [1818841] - [tools] perf arm-spe: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf cs-etm: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf intel-bts: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf intel-pt: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf test: Fix test trace+probe_vfs_getname.sh on s390 (Michael Petlan) [1818841] - [tools] perf bpf: Remove bpf/ subdir from bpf.h headers used to build bpf events (Michael Petlan) [1818841] - [tools] perf llvm: Fix script used to obtain kernel make directives to work with new kbuild (Michael Petlan) [1818841] - [tools] perf tools: Add arm64 version of get_cpuid() (Michael Petlan) [1818841] - [tools] perf trace: Resolve prctl's 'option' arg strings to numbers (Michael Petlan) [1818841] - [tools] perf beauty prctl: Export the 'options' strarray (Michael Petlan) [1818841] - [tools] perf maps: Move kmap::kmaps setup to maps__insert() (Michael Petlan) [1818841] - [tools] perf maps: Fix map__clone() for struct kmap (Michael Petlan) [1818841] - [tools] perf maps: Mark ksymbol DSOs with kernel type (Michael Petlan) [1818841] - [tools] perf maps: Mark module DSOs with kernel type (Michael Petlan) [1818841] - [tools] perf symbols: Convert symbol__is_idle() to use strlist (Michael Petlan) [1818841] - [tools] perf symbols: Update the list of kernel idle symbols (Michael Petlan) [1818841] - [tools] perf stat: Don't report a null stalled cycles per insn metric (Michael Petlan) [1818841] - [tools] perf probe: Add ustring support for perf probe command (Michael Petlan) [1818841] - [tools] perf: Make perf able to build with latest libbfd (Michael Petlan) [1818841] - [tools] perf test: Fix test case Merge cpu map (Michael Petlan) [1818841] - [tools] perf parse: Copy string to perf_evsel_config_term (Michael Petlan) [1818841] - [tools] perf parse: Refactor 'struct perf_evsel_config_term' (Michael Petlan) [1818841] - [tools] perf: Use consistent include paths for libbpf (Michael Petlan) [1818841] - [tools] perf beauty sockaddr: Fix augmented syscall format warning (Michael Petlan) [1818841] - [tools] perf/ui/gtk: Fix gtk2 build (Michael Petlan) [1818841] - [tools] perf ui gtk: Add missing zalloc object (Michael Petlan) [1818841] - [tools] perf tools: Use define api.pure full instead of pure-parser (Michael Petlan) [1818841] - [tools] perf tools: Support --prefix/--prefix-strip (Michael Petlan) [1818841] - [tools] perf report: Clarify in help that --children is default (Michael Petlan) [1818841] - [tools] tools build: Fix test-clang.cpp with Clang 8+ (Michael Petlan) [1818841] - [tools] perf clang: Fix build with Clang 9 (Michael Petlan) [1818841] - [tools] tools lib: Fix builds when glibc contains strlcpy() (Michael Petlan) [1818841] - [tools] perf report/top: Make 'e' visible in the help and make it toggle showing callchains (Michael Petlan) [1818841] - [tools] perf report/top: Do not offer annotation for symbols without samples (Michael Petlan) [1818841] - [tools] perf report/top: Allow pressing hotkeys in the options popup menu (Michael Petlan) [1818841] - [tools] tools ui popup: Allow returning hotkeys (Michael Petlan) [1818841] - [tools] perf hists browser: Allow passing an initial hotkey (Michael Petlan) [1818841] - [tools] perf report/top: Add 'k' hotkey to zoom directly into the kernel map (Michael Petlan) [1818841] - [tools] perf hists browser: Generalize the do_zoom_dso() function (Michael Petlan) [1818841] - [tools] perf report/top: Improve toggle callchain menu option (Michael Petlan) [1818841] - [tools] perf report/top: Add menu entry for toggling callchain expansion (Michael Petlan) [1818841] - [tools] perf report/top: Make ENTER consistently bring up menu (Michael Petlan) [1818841] - [tools] perf hists browser: Restore ESC as "Zoom out" of DSO/thread/etc (Michael Petlan) [1818841] - [tools] tools lib api fs: Fix gcc9 stringop-truncation compilation error (Michael Petlan) [1818841] - [tools] libperf: Add man pages (Michael Petlan) [1818841] - [tools] libperf: Move to tools/lib/perf (Michael Petlan) [1818841] - [tools] perf tests bp_signal: Show expected versus obtained values (Michael Petlan) [1818841] - [tools] perf sched timehist: Add support for filtering on CPU (Michael Petlan) [1818841] - [tools] perf record: Adapt affinity to machines with #CPUs > 1K (Michael Petlan) [1818841] - [tools] perf mmap: Declare type for cpu mask of arbitrary length (Michael Petlan) [1818841] - [tools] tools bitmap: Implement bitmap_equal() operation at bitmap API (Michael Petlan) [1818841] - [x86] perf/amd/uncore: Replace manual sampling check with CAP_NO_INTERRUPT flag (Michael Petlan) [1818841] - [x86] perf/x86/intel: Fix inaccurate period in context switch for auto-reload (Michael Petlan) [1818841] - [x86] perf/x86/amd: Add missing L2 misses event spec to AMD Family 17h's event map (Michael Petlan) [1818841] - [x86] perf/x86/msr: Add Tremont support (Michael Petlan) [1818841] - [x86] perf/x86/cstate: Add Tremont support (Michael Petlan) [1818841] - [x86] perf/x86/intel: Add Elkhart Lake support (Michael Petlan) [1818841] - [include] kernel/events: Add a missing prototype for arch_perf_update_userpage() (Michael Petlan) [1818841] - [x86] perf/x86/amd: Add support for Large Increment per Cycle Events (Michael Petlan) [1818841] - [x86] perf/x86/amd: Constrain Large Increment per Cycle events (Michael Petlan) [1818841] - [x86] perf/x86/intel/rapl: Add Comet Lake support (Michael Petlan) [1818841] - [x86] perf/x86/intel: Explicitly include asm/io.h to use virt_to_phys() (Michael Petlan) [1818841] - [x86] x86/cpu: Add Elkhart Lake to Intel family (Michael Petlan) [1818841] - [x86] x86/timer: Don't skip PIT setup when APIC is disabled or in legacy mode (David Arcari) [1837490] - [x86] x86/intel: Disable HPET on Intel Ice Lake platforms (David Arcari) [1837490] - [x86] x86/timer: Force PIT initialization when !X86_FEATURE_ARAT (David Arcari) [1837490] - [x86] x86/timer: Skip PIT initialization on modern chipsets (David Arcari) [1837490] - [x86] x86/apic: Rename 'lapic_timer_frequency' to 'lapic_timer_period' (David Arcari) [1837490] - [x86] x86/apic: Unify duplicated local apic timer clockevent initialization (David Arcari) [1837490] - [vhost] vsock: kick send_pkt worker once device is started (Stefano Garzarella) [1835651] - [tools] redhat: update kvm/{arm, arm64} headers in tools (Gavin Shan) [1833572] - [tools] kvm: selftests: aarch64: Use stream when given (Gavin Shan) [1833572] - [virt] kvm: arm64: Fix 32bit PC wrap-around (Gavin Shan) [1833572] - [virt] kvm: arm64: vgic-v4: Initialize GICv4.1 even in the absence of a virtual ITS (Gavin Shan) [1833572] - [arm64] kvm: arm64: Save/restore sp_el0 as part of __guest_enter (Gavin Shan) [1833572] - [virt] kvm: arm64: vgic-its: Fix memory leak on the error path of vgic_add_lpi() (Gavin Shan) [1833572] - [virt] kvm: arm64: vgic-v3: Retire all pending LPIs on vcpu destroy (Gavin Shan) [1833572] - [virt] kvm: arm: vgic-v2: Only use the virtual state when userspace accesses pending bits (Gavin Shan) [1833572] - [virt] kvm: arm: vgic: Only use the virtual state when userspace accesses enable bits (Gavin Shan) [1833572] - [virt] kvm: arm: vgic: Synchronize the whole guest on GIC{D, R}_I{S, C}ACTIVER read (Gavin Shan) [1833572] - [virt] kvm: arm64: psci: Forbid 64bit functions for 32bit guests (Gavin Shan) [1833572] - [virt] kvm: arm64: psci: Narrow input registers when using 32bit functions (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Update effective affinity of virtual SGIs (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add support for VPENDBASER's Dirty+Valid signaling (Gavin Shan) [1833572] - [virt] kvm: arm: vgic: Fix limit condition when writing to GICD_I[CS]ACTIVER (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Expose HW-based SGIs in debugfs (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Eagerly vmap vPEs (Gavin Shan) [1833572] - [arm64] kvm: arm64: gicv4.1: Allow non-trapping WFI when using HW SGIs (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add VSGI property setup (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Reload VLPI configuration on distributor enable/disable (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add VSGI allocation/teardown (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Plumb SGI implementation selection in the distributor (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Move doorbell management to the GICv4 abstraction layer (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Allow SGIs to switch between HW and SW interrupts (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb set_vcpu_affinity SGI callbacks (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Add direct injection capability to SGI registers (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Let doorbells be auto-enabled (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb get/set_irqchip_state SGI callbacks (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb mask/unmask SGI callbacks (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add initial SGI configuration (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb skeletal VSGI irqchip (Gavin Shan) [1833572] - [irqchip] gic-v3: Move irq_domain_update_bus_token to after checking for NULL domain (Gavin Shan) [1833572] - [kernel] irqchip/gic-v4: Use Inner-Shareable attributes for virtual pending tables (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Map the ITS SGIR register page (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Advertise support v4.1 to KVM (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Ensure mutual exclusion betwen invalidations on the same RD (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Wait for completion of redistributor's INVALL operation (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Ensure mutual exclusion between vPE affinity change and RD access (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Skip absent CPUs while iterating over redistributors (Gavin Shan) [1833572] - [irqchip] gic-v3: Use SGIs without active state if offered (Gavin Shan) [1833572] - [irqchip] gic-v4: Provide irq_retrigger to avoid circular locking dependency (Gavin Shan) [1833572] - [irqchip] gic-v3-its: Probe ITS page size for all GITS_BASERn registers (Gavin Shan) [1833572] - [irqchip] gic-v3-its: Fix access width for gicr_syncr (Gavin Shan) [1833572] - [documentation] kvm: arm/arm64: Always capitalize ITS (Gavin Shan) [1833572] - [nvme] nvme-pci: align io queue count with allocted nvme_queue in nvme_probe (Gopal Tiwari) [1837824] - [rtc] rtc: cmos: Stop using shared IRQ (Pingfan Liu) [1829667]- [netdrv] enic: prevent waking up stopped tx queues over watchdog reset (Govindarajulu Varadarajan) [1797807] - [kernel] crash_core: Increase crashkernel=auto size for x86_64 & S390 (Kairui Song) [1746644] - [netdrv] net: iavf: reject unsupported coalescing params (Stefan Assmann) [1781341] - [netdrv] iavf: Enable support for up to 16 queues (Stefan Assmann) [1781341] - [netdrv] iavf: use tc_cls_can_offload_and_chain0() instead of chain check (Stefan Assmann) [1781341] - [netdrv] treewide: Use sizeof_field() macro (Stefan Assmann) [1781341] - [netdrv] i40e: Remove unneeded conversion to bool (Stefan Assmann) [1781334] - [netdrv] net: i40e: reject unsupported coalescing params (Stefan Assmann) [1781334] - [netdrv] intel: Replace zero-length array with flexible-array member (Stefan Assmann) [1781334] - [netdrv] i40e: Fix the conditional for i40e_vc_validate_vqs_bitmaps (Stefan Assmann) [1781334] - [netdrv] i40e: fix spelling mistake "to" -> "too" (Stefan Assmann) [1781334] - [netdrv] i40e: Set PHY Access flag on X722 (Stefan Assmann) [1781334] - [netdrv] i40e: Fix virtchnl_queue_select bitmap validation (Stefan Assmann) [1781334] - [netdrv] i40e: Removing hung_queue variable to use txqueue function parameter (Stefan Assmann) [1781334] - [netdrv] treewide: Use sizeof_field() macro (Stefan Assmann) [1781334] - [netdrv] i40e: need_wakeup flag might not be set for Tx (Stefan Assmann) [1781334] - [netdrv] i40e: Fix receive buffer starvation for AF_XDP (Stefan Assmann) [1781334] - [netdrv] i40e: fix potential RX buffer starvation for AF_XDP (Stefan Assmann) [1781334] - [block] null_blk: Fix changing the number of hardware queues (Ming Lei) [1835602] - [block] block: reset mapping if failed to update hardware queue count (Ming Lei) [1835602] - [block] block: alloc map and request for new hardware queue (Ming Lei) [1835602] - [block] block: save previous hardware queue count before udpate (Ming Lei) [1835602] - [block] block: free both rq_map and request (Ming Lei) [1835602] - [block] blk-mq: Fix a recently introduced regression in blk_mq_realloc_hw_ctxs() (Ming Lei) [1835602] - [documentation] Documentation: admin-guide: PM: Add intel_idle document (Steve Best) [1485545] - [idle] intel_idle: Use ACPI _CST on server systems (Steve Best) [1485545] - [idle] intel_idle: Add module parameter to prevent ACPI _CST from being used (Steve Best) [1485545] - [idle] intel_idle: Allow ACPI _CST to be used for selected known processors (Steve Best) [1485545] - [idle] intel_idle: Use ACPI _CST for processor models without C-state tables (Steve Best) [1485545] - [idle] intel_idle: Refactor intel_idle_cpuidle_driver_init() (Steve Best) [1485545] - [infiniband] RDMA/uverbs: Move IB_EVENT_DEVICE_FATAL to destroy_uobj (Kamal Heib) [1786608] - [infiniband] RDMA/uverbs: Do not discard the IB_EVENT_DEVICE_FATAL event (Kamal Heib) [1786608] - [infiniband] RDMA/core: Fix double put of resource (Kamal Heib) [1786608] - [infiniband] IB/core: Fix potential NULL pointer dereference in pkey cache (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Fix another case where pq is left on waitlist (Kamal Heib) [1786608] - [infiniband] RDMA/rxe: Always return ERR_PTR from rxe_create_mmap_info() (Kamal Heib) [1786608] - [infiniband] RDMA/core: Fix race between destroy and release FD object (Kamal Heib) [1786608] - [infiniband] IB/rdmavt: Always return ERR_PTR from rvt_create_mmap_info() (Kamal Heib) [1786608] - [infiniband] RDMA/core: Fix overwriting of uobj in case of error (Kamal Heib) [1786608] - [infiniband] RDMA/core: Prevent mixed use of FDs between shared ufiles (Kamal Heib) [1786608] - [infiniband] RDMA/uverbs: Fix a race with disassociate and exit_mmap() (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Fix potential siw_mem refcnt leak in siw_fastreg_mr() (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Fix an error check in cm_alloc_id_priv() (Kamal Heib) [1786608] - [net] svcrdma: Fix trace point use-after-free race (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Call kobject_put() when kobject_init_and_add() fails (Kamal Heib) [1786608] - [infiniband] RDMA/rxe: Set sys_image_guid to be aligned with HW IB devices (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Use scnprintf() for avoiding potential buffer overflow (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Remove kobj from hfi1_devdata (Kamal Heib) [1786608] - [infiniband] IB/rdmavt: Delete unused routine (Kamal Heib) [1786608] - [infiniband] RDMA/rxe: Fix configuration of atomic queue pair attributes (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Fix memory leaks in sysfs registration and unregistration (Kamal Heib) [1819051 1786608] - [net] svcrdma: Fix leak of transport addresses (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Update num_paths in cma_resolve_iboe_route error flow (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Suppress uninitialized var warning (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Add missing locking around id.state in cm_dup_req_handler (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Read id.state under lock when doing pr_debug() (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Remove a race freeing timewait_info (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Fix checking for allowed duplicate listens (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Fix ordering of xa_alloc_cyclic() in ib_create_cm_id() (Kamal Heib) [1786608] - [net] svcrdma: Fix double svc_rdma_send_ctxt_put() in an error path (Kamal Heib) [1786608] - [infiniband] RDMA/core: Remove the duplicate header file (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Fix passive connection establishment (Kamal Heib) [1786608] - [infiniband] RDMA/ucma: Put a lock around every call to the rdma_cm layer (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Fix setting active_{speed, width} attributes (Kamal Heib) [1798583 1786608] - [scsi] qla2xxx: Update driver version to 10.01.00.25.08.3-k (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Delete all sessions before unregister local nvme port (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix hang when issuing nvme disconnect-all in NPIV (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: make 1-bit bit-fields unsigned int (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix MPI failure AEN (8200) handling (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Move free of fcport out of interrupt context (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix I/Os being passed down when FC device is being deleted (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Set Nport ID for N2N (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Handle NVME status iocb correctly (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Remove restriction of FC T10-PI and FC-NVMe (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Serialize fc_port alloc in N2N (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix NPIV instantiation after FW dump (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Force semaphore on flash validation failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: add more FW debug information (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Update BPM enablement semantics (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use a dedicated interrupt handler for 'handshake-required' ISPs (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Return appropriate failure through BSG Interface (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix FCP-SCSI FC4 flag passing error (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add 16.0GT for PCI String (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use QLA_FW_STOPPED macro to propagate flag (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add fixes for mailbox command (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix control flags for login/logout IOCB (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Save rscn_gen for new fcport (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use correct ISP28xx active FW region (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use endian macros to assign static fields in fwdump header (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add endianizer macro calls to fc host stats (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use get_unaligned_*() instead of open-coding these functions (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix the endianness of the qla82xx_get_fw_size() return type (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Improve readability of the code that handles qla_flt_header (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix mtcp dump collection failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix stuck session in GNL (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix RIDA Format-2 (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Consolidate fabric scan (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Correct fcport flags handling (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix stuck login session using prli_pend_timer (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use common routine to free fcport struct (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add D-Port Diagnostic reason explanation logs (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix update_fcport for current_topology (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Cleanup unused async_logout_done (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add a shadow variable to hold disc_state history of fcport (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Retry PLOGI on FC-NVMe PRLI failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix fabric scan hang (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Remove defer flag to indicate immeadiate port loss (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add debug dump of LOGO payload and ELS IOCB (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Ignore PORT UPDATE after N2N PLOGI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Don't defer relogin unconditonally (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Send Notify ACK after N2N PLOGI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Configure local loop for N2N target (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix PLOGI payload and ELS IOCB dump length (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Don't call qlt_async_event twice (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Allow PLOGI in target mode (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Change discovery state before PLOGI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Drop superfluous INIT_WORK of del_work (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Initialize free_work before flushing it (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use explicit LOGO in target mode (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Ignore NULL pointer in tcm_qla2xxx_free_mcmd (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix qla2x00_request_irqs() for MSI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: unregister ports after GPN_FT failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: fix rports not being mark as lost in sync fabric scan (Nilesh Javali) [1789526] - [s390] s390/kexec_file: fix initrd location for kdump kernel (Lianbo Jiang) [1835097]- [sound] ALSA: ALSA - update sound configuration (Jaroslav Kysela) [1797509] - [sound] ALSA: Revert "ALSA: Use the legacy HDA driver as default for Intel DSP platforms" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: IPC: dai-intel: move ALH declarations in header file (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: add core id to sof_ipc_comp (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: bump the version (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: add alac & ape decoder params (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: Add wma decoder params (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: add wma codec profiles (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove X86 dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: depend on ACPI || OF (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: depend on ACPI (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix regmap dependencies and align with other serial links (Jaroslav Kysela) [1797509] - [sound] ALSA: treewide: Add SPDX license identifier - Makefile/Kconfig (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix kconfig help format (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: Kconfig: fix help format (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove useless prototypes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: Switch to use fwnode_property_count_uXX() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: don't program ports when a stream that has not been prepared (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix support for multiple Slaves on the same link (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: do not update parameters during DISABLED-PREPARED transition (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: only prepare stream when it is configured (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: update state machine and add state checks (Jaroslav Kysela) [1797509] - [sound] ALSA: Documentation: soundwire: Ensure that code is inside the code blocks (Jaroslav Kysela) [1797509] - [sound] ALSA: Documentation: soundwire: fix stream.rst markup warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: Documentation: soundwire: Add documentation for multi link (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: remove redundant pr_err traces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: remove unnecessary variable initializations (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix disable sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix bad unlock balance (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: use sdw_write instead of update (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix PDI/stream mapping for Bulk (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus_type: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: export helpers to find row and column values (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: check first if Slaves become UNATTACHED (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: Add read_only_wordlength flag to port properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix device number leak on errors (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: track unattach_request to handle all init sequences (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: add initialization_complete definition (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: add enumeration_complete structure (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: add probe_complete structure and new fields (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove bitfield for unique_id, use u8 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: make stream name a const pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: Add compute_params callback (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: provide correct return value on error (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add helper macros for devID fields (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: don't treat CMD_IGNORED as error on ClockStop (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: add clock stop helpers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix io error when processing alert event (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: avoid multiple assignments (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: disable pm_runtime in sdw_slave_delete (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: add helper to clear Slave status to UNATTACHED (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: write Slave Device Number without runtime_pm (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: add PM/no-PM versions of read/write functions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: improve dynamic debug comments for enumeration (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: split handling of Device0 events (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix race condition with initialization_complete signaling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix race condition with enumeration_complete signaling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix race condition with probe_complete signaling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: ignore uniqueID when irrelevant (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: slave: add helper to extract slave ID (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: slave: fix scanf format (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: slave: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: core: add device tree support for slave devices (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: set initial value to port_status (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: clear FIFO to avoid pop noise issue on playback start (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: multi-link support (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: commit changes in the exit_reset() sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove automatic command retries (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove PREQ_DELAY assignment (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: enable NORMAL operation in cdns_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: reorder MCP_CONFIG settings (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: make SSP interval programmable (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: move clock/SSP related inits to dedicated function (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: merge routines to clear/set bits (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: mask Slave interrupt before stopping clock (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: fix a io timeout issue in S3 test (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: add clock_stop/restart routines (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: handle error cases with CONFIG_UPDATE (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: add interface to check clock status (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: simplifiy cdns_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: s/update_config/config_update (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: fix kernel-doc parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove useless variable incrementation (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: update kernel-doc parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: handle multiple status reports per Slave (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: remove config update for interrupt setting (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: log more useful information during timeouts (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: clear interrupt status before enabling interrupt (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: filter out bad interrupts (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: make clock stop exit configurable on init (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: free all resources on hw_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add sdw_stream_setup helper for .startup callback (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add trigger support in sdw dai driver (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add prepare support in sdw dai driver (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: rename res field as link_res (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix factor of two in MCLK handling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: update stream callbacks for hwparams/free stream operations (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: update interfaces between ASoC and SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix typo in comments (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: use correct header for io calls (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel_init: add kernel module parameter to filter out links (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel_init: add checks on link numbers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: filter SoundWire controller device search (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove empty line after braces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel_init: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add helper for initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix intel_register_dai PDI offsets and numbers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel/cadence: add flag for interrupt enable (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove playback/capture stream_name (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove DAI_ID_RANGE definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add missing headers for cross-compilation (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: handle disabled links (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add debugfs register dump (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove unused variables (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: more alignment fixes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: add hw_reset capability in debugfs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel/cadence: fix startup sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: improve PDI allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: don't filter out PDI0/1 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence/intel: simplify PDI/port mapping (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: add debugfs register dump (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: move shutdown() callback and don't export symbol (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix alignment issues in header files (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix SPDX license for header files (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: add kernel parameter to override interrupt mask (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix divider setting in clock register (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: make use of mclk_freq property (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: use firmware defaults for frame shape (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: revisit interrupt settings (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix definitions for INTSTAT0/1 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix register definition for SLAVE_STATE (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: simplify bus clash interrupt clear (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: check the number of bidir PDIs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: log Slave status mask on errors (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: use rate_limited dynamic debug (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: remove spurious newline (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix boolean comparisons (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: balance parentheses (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cdns: Fix compilation error on arm64 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove empty line after braces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: read mclk_freq property from firmware (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix channel number reported by hardware (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: prevent possible dereference in hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove BIOS work-arounds (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: set dai min and max channels correctly (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: Intel: add log for number of PCM and PDM PDIs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add debugfs support (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add new mclk_freq field for properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: include mod_devicetable.h to avoid compiling warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: rename/clarify MIPI DisCo properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: clarify comment (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi-disco: fix clock stop modes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi-disco: remove master_count property for masters (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove master data port properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add port-related definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: wrap macro argument in parenthesis (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: rename 'freq' fields (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: fix master/link error (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: fix boolean comparisons (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix out of boundary access on port properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add a blank line between functions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix more typos (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: more alignment fixes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove empty line before/after braces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add missing newlines in dynamic debug logs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: remove useless initialization of local variable (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix boolean comparison (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: protect macro parameters (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix implicit header use of module.h/export.h (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix inversion in devm_kcalloc parameters (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: remove spurious newline (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix boolean comparisons (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: remove useless parentheses (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix typos in comments (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove useless initializations (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix SPDX license for header files (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: Add SNDRV_PCM_INFO_BATCH flag (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: add support for ALAC and APE decoders (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: add support to wma decoder (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: only enable dais from device tree (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: add support for alac and ape configs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: add support to wma config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: pass codec profile to q6asm_open_write (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qdsp6: q6routing: remove default routing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: Allow the MCDT driver to build into modules (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: q6dsp6: q6afe-dai: add missing channels to MI2S DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: lpass-platform: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: common: Silence duplicate parse error messages (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: sdm845: handle soundwire stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Update dependencies for Arizona machine drivers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: qcom: add support for get_sdw_stream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soundwaire: qcom: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: qcom: add support for SoundWire controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: sdm845: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: s3c24xx-i2s: Fix build after removal of DAI suspend/resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Silence warnings during deferred probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: fsi: Restore devm_ioremap() alignment (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: dma: set bus width to data width for monaural data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Fix "status check failed" spam for multi-SSI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Don't treat master SSI in multi SSI setup as parent (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Fix parent SSI start/stop in multi-SSI mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Fix HDMI channel mapping for multi-SSI mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: i2s: manage rebind issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: i2s: improve error management on probe deferral (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: i2s: manage error when getting reset controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: manage error when getting reset controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: improve error management on probe deferral (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: fix sai probe (Jaroslav Kysela) [1797509] - [sound] ALSA: soc/stm/stm32_sub_sai: Add missing '\n' in log messages (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: Add missing cleanup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: manage rebind issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix regmap status check (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: improve error management on probe deferral (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: manage error when getting reset controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sunxi: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sun8i-codec: Remove unused dev from codec struct (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: tegra_wm8903: Support DAPM events for built-in microphone (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: remove redundant assignment to variable ret (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: Add support for platforms using UDMA (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: Add udma-pcm platform driver for UDMA (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ux500: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: zte: zx-spdif: remove redundant dev_err message (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: zte: zx-tdm: remove redundant variables dev (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: apq8016_sbc: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mxs: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: use SND_SOC_DAPM_PINCTRL in TDM out (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: apply some refactors (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: pull TDM GPIO pins down when probed (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: change supported formats of DL2 and UL1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: add speaker switch (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650: support HDMI jack reporting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Add support for the JZ4770 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Add support for the JZ4760 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Avoid passing enum as match data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Add local dev variable in probe function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: Use of_device_get_match_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Fix divider written at incorrect offset in register (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: img: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: generic: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card-utils: use for_each_pcm_streams() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card: Add support for codec2codec DAI links (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_asrc_dma: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: dwc-i2s: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cirrus: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: Fix pointer cast warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: brcm: Add DSL/PON SoC audio driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mchp-i2s-mcc: make signed 1 bit bitfields unsigned (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Allow I2S wake event after ACP is powerd On (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x-pcm-dma: clean up two indentation issues (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: AMD: Clear format bits before setting them (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Adding TDM support in hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix button configuration (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: amd: acp3x: Add missing include (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix compile warning of argument type (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: amd: Add DMIC switch capability to machine driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Add machine driver for Raven based platform (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Fix potential NULL dereference (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud Alpha S (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply async workaround for Scarlett 2i4 2nd gen (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Correct a typo of NuPrime DAC-10 USB ID (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add Pioneer DJ DJM-250MK2 quirk (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add quirk for Focusrite Scarlett 2i2 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Use pcm_for_each_format() macro for PCM format iterations (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix missing braces in some struct inits (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix usb audio refcnt leak when getting spdif (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add connector notifier delegation (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add static mapping table for ALC1220-VB-based mobos (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Check mapping at creating connector controls, too (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add mixer workaround for TRX40 and co (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Don't create jack controls for PCM terminals (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Don't override ignore_ctl_error value from the map (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Filter error from connector kctl ops, too (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix mixer controls' USB interface for Kingston HyperX Amp (0951:16d8) (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Parse source ID of UAC2 effect unit (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: audio-v2: Add uac2_effect_unit_descriptor definition (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Don't create a mixer element with bogus volume range (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix case when USB MIDI interface has more than one extra endpoint descriptor (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-midi: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Fix POD HD500 audio playback (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Fix endless MIDI read loop (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Filter out unsupported sample rates on Focusrite devices (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add support for Presonus Studio 1810c (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add support for MOTU MicroBook IIc (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Inform devices that need delayed registration (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add delayed_register option (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Rewrite registration quirk handling (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Create a registration quirk for Kingston HyperX Amp (0951:16d8) (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd9335: fix address map representation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Remove some unnecessary NULL checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: remove unused headers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: fix High Accuracy Buck enable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Remove set but not unused variable 'hph_comp_ctrl7' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm0010: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8960: Fix wrong clock after suspend & resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: wsa881x: remove soundwire stream handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: wsa881x: request gpio direction before setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wsa881x: mark read_only_wordlength flag (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8974: remove unused variables (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm_adsp: Use scnprintf() for the limited buffer output (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas571x: disable regulators on failed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Fixed incorrect amp_level setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Add support for ISENSE and VSENSE (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Add entries for the TAS2563 audio amplifier (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Add support for digital volume control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sgtl5000: Fix VAG power-on handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: modify some structure to be static (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply ac97 fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm89xx: Add missing dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix unmet dependencies (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply misc fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: adau7118: Fix Kconfig warning without CONFIG_I2C (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply I2C fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply SPI fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682-sdw: fix 'defined but not used' pm functions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Make rt5682_clock_config static (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Fix build error without CONFIG_I2C (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: move DAI clock registry to I2S mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add a property for DMIC delay (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add a property for DMIC clock rate (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: remove noisy debug messages (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix the random recording noise of headset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Fine tune the HP performance in soundwire mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Revise the DAC1 volume setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Revise the function name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add the soundwire support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Use imply for SND_SOC_ALL_CODECS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add CCF usage for providing I2S clks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Enable PLL2 function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add the field "is_sdw" of private data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5659: remove redundant assignment to variable idx (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5645: Add platform-data for Medion E1239T (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: use slot and rx_mask to configure stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: add set_tdm_slot() support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: fix typo for bypass boost control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rl6231: Add new supports on rl6231 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip: Make RK3328 GPIO_MUTE control explicit (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: MT6660: make spdxcheck.py happy (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: MT6660 update to 1.0.8_G (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98357a: Add ACPI HID MAX98360A (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98357a: move control of SD_MODE to DAPM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: hdac_hdmi: Fix incorrect use of list_for_each_entry (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: hdac_hdmi: (cosmetic) remove redundant variable initialisations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cs4270: pull reset GPIO low then high (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: allow operation without i915 gfx (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: fix ordering bug in resume flow (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: add parameter to control SoundWire clock stop quirks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: initial SoundWire machine driver autodetect (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: add SoundWire stream config/free callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Account for compress streams when servicing IRQs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix stream cleanup on hw free (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-loader: clear the IPC ack bit after FW_PURGE done (Jaroslav Kysela) [1797509] - [sound] ALSA: Asoc: SOF: Intel: hda: check SoundWire wakeen interrupt in irq thread (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: add WAKEEN interrupt support for SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: merge IPC, stream and SoundWire interrupt handlers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add SoundWire configuration interface (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Expose SDnFMT helpers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Fix probe point getter (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pcm: skip DMA buffer pre-allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Turn "firmware boot complete" message into a dbg message (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: ipc: check ipc return value before data copy (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sof: sof-audio: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Do not reset hw_params for streams that ignored suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: audio: Add helper to check if only D0i3 streams are active (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Add i.MX8QM device descriptor (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Remove SOF_IPC_EXT_DMA_BUFFER (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Make sof_ipc_ext_data enum more rigid (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix uninitialised "work" with VirtIO (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: (cosmetic) use for_each_pcm_streams() in sof_dai_load() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: connect dai widget to all cpu-dais (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: remove unnecessary ROM IPC filter function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-dai: add stream capability (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-ctrl: add reset cycle before parsing capabilities (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: call codec wake at chip init (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: do not leave clock gating off upon error (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: disable SoundWire interrupts on suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sof: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Improve DSP state logging (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: use snd_sof_dsp_set_power_state() op (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Allow trace DMA in S0 when DSP is in D0I3 for debug (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Amend the DSP state transition diagram (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: cnl: Implement feature to support DSP D0i3 in S0 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: remove unnecessary waitq before loading firmware (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add min/max channels for SSP on Baytrail/Broadwell (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: remove SND_SOC_SOF_HDA_COMMON_HDMI_CODEC (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Probe compress operations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix Kconfig indentation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: Add ops for i.MX8QM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Rename i.MX8 platform to i.MX8X (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Provide probe debugfs support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Move DSP power state transitions to platform-specific ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pm: Introduce DSP power states (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pm: Unify suspend/resume routines (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Add Probe compress CPU DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Generic probe compress operations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Implement Probe IPC API (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_da7219_max98927: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: cml_rt1011_rt5682: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: haswell: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: BXT: switch pcm512x based boards to sof_pcm512x (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: CHT: add support for pcm512x boards (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: soc-acpi-intel-icl-match: remove useless 'rt1308_2_adr' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: soc-acpi-intel-cml-match: remove useless 'rt1308_2_adr' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_pcm512x: drop reverse deps for SND_HDA_CODEC_HDMI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_rt5682: Add support for tgl-max98373-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_rt5682: Add rt1015 speaker amp support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: drop reverse deps for SND_HDA_CODEC_HDMI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_sdw: Add Volteer support with RT5682 SNDW helper function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: add sof_sdw machine driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match table for TGL RT5682 SoundWire driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: soc-acpi: update topology and driver name for SoundWire platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: Add mach table for tgl-max98373-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-acpi: expand description of _ADR-based devices (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Await purge request ack on CNL (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Allow for ROM init retry on CNL platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skylake: (cosmetic) remove redundant variable initialisations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Enable codec wakeup during chip init (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Select hda configuration permissively (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Remove superfluous chip initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Shield against no-NHLT configurations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sof_da7219_max98373: Add speaker switch (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_da7219_max98373: Add support for max98360a speaker amp (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_nau88l25_ssm4567: disable route checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel/skl/hda - add no-HDMI cases to generic HDA driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Make glk+rt5682 echo ref dynamic (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: don't use GFP_ATOMIC for machine driver contexts (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN MPWIN895CL tablet (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: broadwell: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: broadwell: Revert back SSP0 link to use dummy components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Revert SSP0 link to use dummy components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5650: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5650: Revert SSP0 link to use dummy components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: (cosmetic) simplify structure member access (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: atom: Fix uninitialized variable compiler warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: mrfld: return error codes when an error occurs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_pcm512x: make HDMI optional for all platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_pcm512x: add support for SOF platforms with pcm512x (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: mrfld: fix incorrect check on p->sink (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: atom: Check drv->lock is locked in sst_fill_and_send_cmd_unlocked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: atom: Take the drv->lock mutex before calling sst_send_slot_map() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use scnprintf() for string truncation (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Allow setting preallocation again for x86 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Fix endianness issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of soc_tplg_dai_config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of pcm_new_ver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Add missing memory checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check soc_tplg_add_route return value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of soc_tplg_*_create (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of soc_tplg_create_tlv (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: use name_prefix for new kcontrol (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Perform component check upfront (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fix regwmask (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: Merge for_each_rtd_cpu/codec_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Remove dapm_connect_dai_link_widgets helper (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Move error message to avoid some duplication (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: select sleep_state when initializing PINCTRL widget (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: connect virtual mux with default value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: fixup dapm kcontrol widget (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: revert all changes to DAI startup/shutdown sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: fix DAI startup/shutdown sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: return proper error for get_sdw_stream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: add get_sdw_stream() callback (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: export DPCM runtime update functions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dpcm: allow start or stop during pause for backend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: Merge for_each_rtd_cpu/codec_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: (cosmetic) simplify dpcm_prune_paths() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Merge for_each_rtd_cpu/codec_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Merge CPU/Codec for soc_dai_pcm_new() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Fix regression introducing multiple copies of DAI widgets (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add asoc_rtd_to_cpu/codec() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Merge CPU/Codec DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: add for_each_card_widgets() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: add for_each_card_dapms() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc.h: remove non plural form for_each_xxx macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc.h: add for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: disable route checks for legacy devices (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add initial support for multiple CPU DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fix card registration regression (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: don't use rtd->cpu_dai on for_each_rtd_cpu_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add multiple CPU DAI support in DAPM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add dapm_add_valid_dai_widget helper (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: Do Digital Mute for both CPU/Codec in same timing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: check DAI's activity more simply (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: tidyup dulicate handing at dpcm_fe_dai_startup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use snd_soc_dai_get_pcm_stream() at dpcm_set_fe_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add dpcm_fe_dai_cleanup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move dpcm_fe_dai_close() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: Export parameter intersection logic (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove duplicate be check from dpcm_add_paths() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use defined stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: check if cpu-dai supports a given stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Return error if the function does not support multi-cpu (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add multiple CPU DAI support for PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: fix state tracking error in snd_soc_component_open/close() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move dpcm_path_put() to soc-pcm.c (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: merge dpcm_run_new/old_update() into dpcm_fe_runtime_update() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_dai_get_widget() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: cleanup soc_pcm_apply_msb() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_dai_get_pcm_stream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: don't use snd_soc_dapm_stream_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dpcm: remove confusing trace in dpcm_get_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: Fix possible buffer overflow in dpcm state sysfs output (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: merge playback/cature_active into stream_active (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use goto and remove multi return (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_dpcm_can_be() and remove duplicate code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove snd_soc_dpcm_be_get/set_state() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove soc_dpcm_be_digital_mute() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use dpcm_get_be() at dpcm_end_walk_at_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use dai_get_widget() at dpcm_end_walk_at_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use dai_get_widget() at dpcm_get_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move dai_get_widget() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: fix regression in soc_new_pcm() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: tidyup soc_pcm_open() order (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move soc_pcm_close() next to soc_pcm_open() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: adjustment for DAI member 0 reset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: call snd_soc_component_open/close() once (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: don't use bit-OR'ed error (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: use snd_soc_dapm_stream_stop() for SND_SOC_DAPM_STREAM_STOP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add for_each_dapm_widgets() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_runtime_action() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: call snd_soc_dai_startup()/shutdown() once (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: ensure component names are unique (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: allow a dt node to provide several components (Jaroslav Kysela) [1797509] - [sound] ALSA: emu8000: Fix the cast to __user pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: opti9xx: shut up gcc-10 range warning (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-tascam: Add missing annotation for tscm_hwdep_read_queue() (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-tascam: Add missing annotation for tscm_hwdep_read_locked() (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: use KBUILD_MODNAME for struct driver.name instead of string (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Fix endianness annotations (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: remove redundant assignment to variable err (Jaroslav Kysela) [1797509] - [sound] ALSA: korg1212: fix if-statement empty body warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Fix invalid access for enumerated ctl items (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Two front mics on a Lenovo ThinkCenter (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add new codec supported for ALC245 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix unexpected init_amp override (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset mic on Asus FX505DT (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add quirk for MSI GL63 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add HP new mute led supported for ALC236 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add supported new mute Led for HP (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add quirk for Lenovo Carbon X1 8th gen (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Remove now-unnecessary XPS 13 headphone noise fixups (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Set principled PC Beep configuration for ALC256 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - a fake key event is triggered by running shutup (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek: Enable mute LED on an HP system (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset of Acer N50-600 with ALC662 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable headset mic of Acer X2660G with ALC662 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek: Fix pop noise on ALC225 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Move ELD parse and jack reporting into update_eld() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Move runtime PM resume into hdmi_present_sense_via_verbs() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Don't use standard hda_jack for generic HDMI jacks (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Reduce hda_jack_tbl lookup at unsol event handling (Jaroslav Kysela) [1797509] - [sound] ALSA: drm/nouveau: Fix regression by audio component transition (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: fix without unlocked before return (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: fix race in monitor detection during probe (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Add module option to disable audio component binding (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Add Recon3Di quirk to handle integrated sound on EVGA X99 Classified motherboard (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Match both PCI ID and SSID for driver blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Remove ASUS ROG Zenith from the blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: call runtime_allow() for all hda controllers (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Explicitly permit using autosuspend if runtime PM is supported (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Keep the controller initialization even if no codecs found (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Release resources at error in delayed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Honor PM disablement in PM freeze and thaw_noirq ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Don't release card at firmware loading error (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add driver blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: remove redundant assignment to variable timeout (Jaroslav Kysela) [1797509] - [sound] ALSA: hda_codec: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Always use jackpoll helper for jack update after resume (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Skip controller resume if not needed (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Fix potential access overflow in beep helper (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: default enable CA0132 DSP support (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Fix endianness annotations (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: Remove unnecessary cast in kfree (Jaroslav Kysela) [1797509] - [sound] ALSA: ali5451: remove redundant variable capture_flag (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Use standard macros for fixing PCM format cast (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Fix PCM format assignment (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Use a macro for parameter masks to reduce the needed cast (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Minor refactoring (Jaroslav Kysela) [1797509] - [sound] ALSA: dmaengine_pcm: No need to take runtime reference twice in pcm_pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: dmaengine_pcm: Consider DMA cache caused delay in pointer callback (Jaroslav Kysela) [1797509] - [sound] ALSA: dmaengine_pcm: Consider DMA cache caused delay in pointer callback (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm_dmaengine: Use pcm_for_each_format() macro for PCM format iteration (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix superfluous snprintf() usage (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Place the plugin buffer overflow checks correctly (for 5.7) (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Fix regression by buffer overflow fix (again) (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Remove WARNING from snd_pcm_plug_alloc() checks (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Simplify plugin frame size calculations (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Avoid plugin buffer overflow (Jaroslav Kysela) [1797509] - [sound] ALSA: info: remove redundant assignment to variable c (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Unlock mutex temporarily for sleeping at read/write (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Use standard macros for fixing PCM format cast (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Add a standalone version of snd_pcm_limit_hw_rates (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: More helper macros for reducing snd_pcm_format_t cast (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm.h: add for_each_pcm_streams() (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Add snd_device_get_state() helper (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Implement compress page allocation and free routines (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Expand DMA buffer information (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Fix sparse warning (Jaroslav Kysela) [1797509] - [sound] ALSA: control: Fix incompatible protocol error (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: bump protocol version up to v2.1.0 (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: remove unused macro for timestamping of elem_value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: use __u32 instead of uint32_t in uapi headers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: uapi: remove unused sof header files (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Drop unneeded typedefs (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Add linux/types.h include back (but carefully) (Jaroslav Kysela) [1797509] - [sound] ALSA: hdspm: Drop linux/types.h inclusion in uapi header (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Spelling s/configr/configur/ (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: fix for_rtd_codec_dai_rollback() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dpcm: tidyup for_each_dpcm_xx() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple_card_utils.h: Fix potential multiple redefinition error (Jaroslav Kysela) [1797509] - [sound] ALSA: rawmidi: Avoid bit fields for state flags (Jaroslav Kysela) [1797509] - [sound] ALSA: memalloc: Drop snd_dma_pci_data() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: media: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: media: solo6x10: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: media: cs231xx: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: em28xx: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: delete unused proc_fs.h include (Jaroslav Kysela) [1797509] - [sound] ALSA: media: em28xx-audio: use GFP_KERNEL for memory allocation during init (Jaroslav Kysela) [1797509] - [sound] ALSA: media: go7007: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: tm6000: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: usbtv: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: media: solo6x10: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: media: tw686x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: media: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1797509] - [sound] ALSA: media: tw686x: audio: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: Allow const arrays for legacy resource management helpers (Jaroslav Kysela) [1797509] - [sound] ALSA: pcmcia: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: pcmcia: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-tascam: fix corruption due to spin lock without restoration in SoftIRQ context (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: fix for Stanton SCS.1d (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: don't add MIDI/PCM interface when packet streaming is unavailable (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: fix return value in error path of isochronous resources reservation (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: use ENXIO for not-supported cases (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-motu: fix double unlocked 'motu->mutex' (Jaroslav Kysela) [1797509] - [sound] ALSA: fireface: fix return value in error path of isochronous resources reservation (Jaroslav Kysela) [1797509] - [sound] ALSA: dice: loosen stream format check for MIDI conformant data channel (Jaroslav Kysela) [1797509] - [sound] ALSA: dice: fix fallback from protocol extension into limited functionality (Jaroslav Kysela) [1797509] - [sound] ALSA: dice: add support for Alesis MasterControl (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: emux: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply 48kHz fixed rate playback for Jabra Evolve 65 headset (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: add quirks for Line6 Helix devices fw>=2.82 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add clock validity quirk for Denon MC7000/MCX8000 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply sample rate quirk for Audioengine D1 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix UAC2/3 effect unit parsing (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Annotate endianess in Scarlett gen2 quirk (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix endianess in descriptor validation (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: add implicit fb quirk for MOTU M Series (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: unlock on error in probe (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: fix sync-ep altsetting sanity check (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add boot quirk for MOTU M Series (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: update old-style static const declaration (Jaroslav Kysela) [1797509] - [sound] ALSA: bcd2000: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: caiaq: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Use lower hex numbers for IDs (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply the sample rate quirk for Bose Companion 5 (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Constify struct snd_usb_audio_quirk entries (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Constify snd_ratden definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Constify snd_pcm_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: fix Corsair Virtuoso mixer label collision (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: fix set_format altsetting sanity check (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: set the interface format after resume on Dell WD19 (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Adjust indentation in snd_usX2Y_hwdep_dsp_status (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ua101: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: hiface: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: caiaq: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: 6fire: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix Focusrite Scarlett 6i6 gen1 - input handling (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix NULL dereference at parsing BADD (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix Scarlett 6i6 Gen 2 port data (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add skip_validation option (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix incorrect size check for processing/extension units (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix incorrect NULL check in create_yamaha_midi_quirk() (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: not submit urb for stopped endpoint (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix missing error check at mixer resolution test (Jaroslav Kysela) [1797509] - [sound] ALSA: ua101: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: hiface: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: caiaq: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: 6fire: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: 6fire: Drop the dead code (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: intel_hdmi: Remove dev_err() on platform_get_irq() failure (Jaroslav Kysela) [1797509] - [sound] ALSA: x86: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hdml-lpe-audio: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: xen: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: atmel: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: arm: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: arm: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: wss: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: wss: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: wavefront: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sc6000: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: sb: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sb: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: opti9xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: opti9xx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: opl3sa2: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: msnd: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: gus: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: gus: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es18xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es18xx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cs423x: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4236: fix error return comparison of an unsigned integer (Jaroslav Kysela) [1797509] - [sound] ALSA: cmi8330: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cmi8328: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: isa: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: isa: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1816a: constify copied structure (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1816a: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: isa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xlnx: Use devm_platform_ioremap_resource() in xlnx_formatter_pcm_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: xtfpga-i2s: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xilinx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xilinx: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xilinx: xlnx_formatter_pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: aio-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: txx9aclc: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: sdma-pcm: Add back the flags parameter for non standard dma names (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: disable rx_fifo after disable stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: add a TDM configuration callback (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sunxi: sun4i-codec: remove unneeded semicolon (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix race condition in irq handler (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: retry synchronization in sync state (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: manage rebind issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: fix possible circular locking (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: add restriction on mmap support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: fix sysclk management on shutdown (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: clean up indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: dfsdm: fix 16 bits record (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm: stm32_adfsdm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: sprd-pcm-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: ipc: Fix memory leak in sof_set_get_large_ctrl_data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: fix the CONFIG_ prefix missing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: fix memory allocation failure check on priv->pd_dev (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: utils: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-utils: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-ops: use snd_soc_card_get_kcontrol() at snd_soc_limit_volume() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: generic-dmaengine-pcm: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: generic-dmaengine: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: do error check after rsnd_channel_normalization() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: dma: fix SSI9 4/5/6/7 busif dma address (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: fsi: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rcar: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: core.c: add WARN_ON() on rsnd_channel_normalization() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: add missing of_node_put() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Reinitialize bit clock inversion flag for every format setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: rsnd: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: siu_pcm: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: siu_pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dma-sh7760: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: dma-sh7760: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Use pr_warn instead of pr_warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: idma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Rename Arndale card driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: arndale: Add support for WM1811 CODEC (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: arndale: Simplify DAI link initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: Enable SHDN to fix headset detection (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip_max98090: Add HDMI jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip_max98090: Optionally support HDMI use case (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6routing: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: lpass-platform: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: pxa2xx-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: pxa-ssp: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: poodle: Spelling s/enpoints/endpoints/, s/connetion/connection/ (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: pxa2xx: No need to keep pointer to platform device (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: mmp-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: g12a: add tohdmitx reset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: axg-fifo: relax period size constraints (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: axg-fifo: improve depth handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: axg-fifo: fix fifo threshold setup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183: support WoV (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mt8183: fix audio playback slowly after playback during bootup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mtk-btcvsd: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: fix device remove ordering (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: Remove unused match variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: fix IRQ error handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: kirkwood-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: Drop lb60 board code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card: fixup simple_dai_link_of_dpcm() comment (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: audio-graph: fixup graph_dai_link_of_dpcm() comment (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_sai: Fix noise when using EDMA (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: Move static keyword to the front of declarations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: Fix error handling in probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: remove set but not used variable 'bclk' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_esai: Add spin lock to protect reset, stop and start (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_dma: fix build failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_dma: don't use snd_soc_rtdcom_lookup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: imx-pcm-fiq: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: mpc5200_dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_asrc_dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8958: use to simplify code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic32x4: add a check for devm_clk_get (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd9335: clean up indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: tas2770: Remove unused defines and variables (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Fix misuse of GENMASK macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt6358: support WoV (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-digital: add missing MIX2 path for RX1/2 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Add earpiece (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Fix RX1 selection in RDAC2 MUX (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: refine the setting of internal clock divider (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: Fix error with S24_3LE format bitstream in i.MX8 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: update supported sample format (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: Use in(out)put_format instead of in(out)put_word_width (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: Add MQS component driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: dwc-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8994: Add support for MCLKn clock gating (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8994: Add support for setting MCLK clock rate (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Fix sample rate error message (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Return invalid for when bitwidth is invalid (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Introduce the TAS2562 amplifier (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2770: clean up an indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2770: Fix snd_soc_update_bits error handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2770: Remove unneeded read of the TDM_CFG3 register (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: tas2770: Fix build error without GPIOLIB (Jaroslav Kysela) [1797509] - [sound] ALSA: tas2770: fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: tas2770: add tas2770 smart PA kernel driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5663: clean up indentation issues (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5650: Add Kahlee platform specfic changes (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Fix serial mode dependent format support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Use fixup instead of constraint for channels and formats (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: The codec does not support S32_LE (Jaroslav Kysela) [1797509] - [sound] ALSA: ASOC: adau7118: Change regulators id (Jaroslav Kysela) [1797509] - [sound] ALSA: ASOC: Add ADAU7118 8 Channel PDM-to-I2S/TDM Converter driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: adau1761: Add ALC controls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: adau1761: Add PGA Slew time control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: cygnus-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: dbdma2: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel_ssc_dai: Remove wrong spinlock usage (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: atmel-pcm-pdc: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: ACP needs to be powered off in BIOS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Additional DAI for I2S SP instance (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix simultaneous playback and capture (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x: Fix return value check in acp3x_dai_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: add ACP3x TDM mode support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Buffer Size instead of MAX Buffer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix for Subsequent Playback issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd MMAP_INTERLEAVED Support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Added ACP3x system resume and runtime pm (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Handle ACP3x I2S-SP Interrupts (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Enabling I2S instance in DMA and DAI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Refactoring of DAI from DMA driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x-pcm-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x: clean up indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp-pcm-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8741: Fix typo in Kconfig prompt (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Fix snd_sof_ipc_stream_posn() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: modify pre-divider for sysclk (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: add operation callback function for rt1015_dai (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component: tidyup snd_soc_pcm_component_sync_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Correct DAPM handling of active widgets during shutdown (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Fix available clock counter incrementation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: don't use snd_soc_dapm_stream_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm512x: Fix unbalanced regulator enable call in probe error path (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Fix memleak in soc_tplg_manifest_load() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Fix memleak in soc_tplg_link_elems_load() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl: Fix possible buffer overflow in debug outputs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl: Fix pin debug prints (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sun8i-codec: Fix setting DAI data format (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: remove snd_soc_dapm_put_enum_double_locked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: revert invalid fix for handling SHDN (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codec2codec: avoid invalid/double-free of pcm runtime (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: move i915 init earlier (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Add system_suspend_target field to struct snd_sof_dev (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: fix atmel_ssc_set_audio link failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_sai: Fix exiting path on probing failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Add missing COMMON_CLK dependency to SND_SOC_ALL_CODECS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Add missing COMMON_CLK dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: treewide: remove redundant IS_ERR() before error code check (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add PCI ID for JasperLake (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: consistent HDMI codec probing code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: soc-acpi-intel-icl-match: fix rt715 ADR (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pci: add missing default_fw_name of JasperLake (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: trace: fix unconditional free in trace release (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: release resources on errors in probe_continue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: free trace on errors (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix an Oops, caused by invalid topology (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: do not disable i915 power during probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: refactor i915_get/put functions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: Remove unnecessary const (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: silence lockdep warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove null_snd_soc_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_trigger() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_hw_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_hw_params() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_prepare() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_shutdown() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_startup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: add rt1015 amplifier driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: fix soc_tplg_fe_link_create() - link->dobj initialization order (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_common: Fix global-out-of-bounds bug (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add MediaTek MT6660 Speaker Amp Driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix deadlock in max98090_dapm_put_enum_double() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: add snd_soc_dapm_put_enum_double_locked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: revert "ASoC: max98090: fix lockdep warning" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove bus_control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove DAI suspend/resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ux500: ux500_msp_dai: remove unused DAI .suspend/.resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: dwc-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: omap-mcpdm: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sti: sti_uniperif: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: spdif: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: s3c24xx-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: jz4740-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cirrus: ep93xx-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: atmel_ssc_dai: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: cygnus-ssp: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: Fix error handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: crash in snd_soc_dapm_new_dai (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: Remove unnecessary string buffers and snprintf calls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Remove unnecessary string buffers and snprintf calls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Remove code duplication in byt_rt5640_codec_fixup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Add MIC BIAS Internal3 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Simplify MIC BIAS Internal (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: fix return value check in rt715_sdw_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: fix return value check in rt711_sdw_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: fix return value check in rt700_sdw_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: remove unused including (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Fix SKL dai count (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm_adsp: Correct cache handling of new kernel control API (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sgtl5000: add multi endpoint support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: Add support for imx8qm & imx8qxp (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sgtl5000: Fix VDDA and VDDIO comparison (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: Add jz4770-codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: remove unused variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcht_es8316: removed unused variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_rt286: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_nau88l25_ssm4567: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_nau88l25_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASOC: Intel: kbl_rt5663_rt5514_max98927: remove useless initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5663_max98927: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5660: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: remove unnecessary initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: test return value on route add (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: removed unused variables (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bxt_rt298: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bxt_da7219_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-dai: fix compilation warning in pcm_prepare (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: remove warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: use dev_to_sdw_dev() instead of to_sdw_slave_device() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: remove unused including (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: add rt1308 SdW amplifier driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: fix build error with CONFIG_SND_ATMEL_SOC_DMA=m (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-digital: Reset RX interpolation path after use (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Fix MIC BIAS Internal1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sti: fix possible sleep-in-atomic (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Fix selected events for MIC BIAS External1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hda: Fix error in driver removal after failed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: fix HDA codec driver probe with multiple controllers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: lower print level to dbg if we will reinit DSP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: reference SoundWire machine lists (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: support alternate list of machines (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match tables for TGL w/ SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match tables for CNL/CFL/CML w/ SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match tables for ICL w/ SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: soc-acpi: declare new tables for SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-acpi: add _ADR-based link descriptors (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-acpi: add link_mask field (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix PCM playback through ALSA OSS emulation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5650: change cpu_dai and platform components for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: broadwell: change cpu_dai and platform components for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: change cpu_dai and platform components for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: fix Kconfig dependencies (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: remove unused including (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: add RT715 codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: Remove unused rtd variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: use snd_soc_dapm_stream_stop() for SND_SOC_DAPM_STREAM_STOP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: add snd_soc_dapm_stream_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_close_delayed_work() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: do pinctrl_pm_select_xxx() as component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove duplicate pinctrl operation when suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: care .ignore_suspend for Component suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename snd_soc_rtdcom_add() to snd_soc_rtd_add_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: add rt700 codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_rtdcom_list (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: Drop incorrectly applied duplicate commit (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: add rt711 codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: add wsa881x amplifier support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix lockdep warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix incorrect helper in max98090_dapm_put_enum_double() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix incorrect helper in max98090_dapm_put_enum_double() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: gtm601: fix build warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: loader: add dynamic debug trace (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pci: change the default firmware path when the community key is used (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix NULL dereference at freeing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_rt5682: Ignore the speaker amp when there isn't one (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Fix Irbis NB41 netbook quirk (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5640: Fix NULL dereference on module unload (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-topology: fix endianness issues (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: hda_dsp_common: use NULL pointer assignment, not 0 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: Fix compile-testing RT1011/RT5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: use resource_size (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: constify copied structure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Create multiple I2S platform device endpoint (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: sdm845: add support to DB845c and Lenovo Yoga (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add audio routings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add capture dapm widgets (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add playback dapm widgets (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add basic controls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add support to wcd9340/wcd9341 codec (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: gtm601: add Broadmobi bm818 sound profile (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: remove unused variable 'constraints_16000' and 'ch_mono' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hda: Update hdac hda dai table to include intel-hdmi-hifi4 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Add iDisp4 DAI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: Fix dsp_box offset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_audmix: add missed pm_runtime_disable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix input pin state management (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix inconsistent lock state (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Fix access to uninitialized list heads (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Set dpcm_playback / dpcm_capture (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: Remove empty suspend function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Add Broadwell rt5650 machine driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: move arch_ops under ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Prevent use-after-free in snd_soc_get_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx: Read SAI parameters and send them to DSP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx: Describe SAI parameters to be sent to DSP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: fix incorrect HDMI Kconfig dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: drop HDA codec upon probe failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Add machine driver for da7219_max98373 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: log compiler name and version information (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: define struct with compiler name and version (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Introduce state machine for FW boot (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: remove references to Haswell (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: cml_rt1011_rt5682: fix codec_conf by removing legacy style (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: hda-dai: fix oops on hda_link .hw_free (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix fault at driver unload after failed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: compress: Add pm_runtime support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skylake: Remove superfluous bus ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove legacy style of codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: rx51: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: speyside: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: lowland: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: bells: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5676: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5514: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl_nau88l25_ssm4567: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_rt5663_rt5514_max98927: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_rt5663_max98927: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_da7219_max98927: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: imx-audmix: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: support snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8962: fix lambda value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Drop snd_soc_pcm_lib_ioctl() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: haswell: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: baytrail: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5514-spi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup for CONFIG_DEBUG_FS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup for CONFIG_DMI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_set_name_prefix() and soc_set_of_name_prefix() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: byt: fixup topology filename for BYT-CR (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: soc_set_name_prefix(): get component device_node at out of loop (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: soc_set_name_prefix(): tidyup loop condition (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename soc_link_init() to soc_init_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add missing return value check for soc_link_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_link_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename soc_link_dai_pcm_new() to soc_dai_pcm_new() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_link_dai_pcm_new() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename snd_soc_remove_dai_link() to snd_soc_remove_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename snd_soc_add_dai_link() to snd_soc_add_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_find_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: find rtd via dai_link pointer at snd_soc_get_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_get_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_get_dai_substream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_disconnect_sync() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove dai_link_list (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc.h: dobj is used only when SND_SOC_TOPOLOGY (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: add SND_SOC_BYTES_E (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add codec_mask module parameter (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Add asynchronous sample rate converter topology support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: work-around incorrect ACPI HID for CML boards (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: split cht and byt debug window sizes (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: loader: fix snd_sof_fw_parse_ext_data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: loader: snd_sof_fw_parse_ext_data log warning on unknown header (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card: Don't create separate link when platform is present (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value for soc_tplg_pcm_create() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value for snd_soc_add_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Explicitly include linux/io.h for virt_to_phys() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: nocodec: Amend arguments for sof_nocodec_setup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Remove unused drv_name in sof_pdata (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: remove nocodec_fw_filename (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Make creation of machine device from SOF core optional (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: intel: hda: Modify signature for hda_codec_probe_bus() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: partition audio-related parts from SOF core (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Drop superfluous snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Introduce default_fw_filename member in sof_dev_desc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: move check for runtime callbacks to core (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: modify the signature for snd_sof_create_page_table (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sof: pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: remove snd_sof_init_topology() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Remove unnecessary string buffers and snprintf calls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: remove unused variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel/skl/hda - export number of digital microphones via control components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdmi-codec: set plugged_cb to NULL when component removing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdmi-codec: re-introduce mutex locking again (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdmi-codec: drop mutex locking again (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fix soc-core.c kernel-doc warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: solve MSI issues by merging ipc and stream irq handlers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: Improve the sysclk selection (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cs42l51: add dac mux widget in codec routes (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Calculate DALIGN inversion at run-time (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic31xx: Add Volume Soft Stepping control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: save and restore SHDN when changing sensitive registers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_sai: add IRQF_SHARED (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic31xx: Add HP output driver pop reduction controls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: common: refine hw_params and hw_prepare (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: common: add some helpers to control mtk_memif (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hdmi: Drop support for Icelake (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: make common HDMI driver default (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: Add mach table for tgl-max98357a-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for tgl-max98357a-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sof_rt5682: Add quirk for number of HDMI DAI's (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: only flush inited work during free (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Update quirk for Teclast X89 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Init pcm runtime work early to avoid warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sst: Add missing include (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix possible race conditions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: exit workaround earlier if PLL is locked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: remove msleep in PLL unlocked workaround (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8904: fix automatic sysclk configuration (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Fix build error without CONFIG_SPI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: Fix unload for SAI/ESAI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: BYT: fix a copy/paste mistake in byt_dump() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: AMD: Enable clk in startup intead of hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix i2c arbitration lost issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: DMI long name - avoid to add board name if matches with product name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: improve the DMI long card code in asoc-core (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: fix DALIGN register for SSIU (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: component: Add sync_stop PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: Make ioctl ops optional (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: check symmetry before hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Update the RST gpio handling to align with documentation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: add control components management (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove soc_pcm_private_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: fixup dead-lock at snd_soc_unregister_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: fix RIP warning on card removal (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component: tidyup snd_soc_pcm_component_new/free() parameter (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Update quirk for Acer Switch 10 SW5-012 2-in-1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm_adsp: Expose mixer control API (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic31xx: configure output common-mode voltage (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix CFL and CML FW nocodec binary names (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix build break (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Add support for optional RST gpio handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm5100: add missed pm_runtime_disable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm2200: add missed operations in remove and probe failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: add support to flac decoder (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: add flac decoder params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: add support to flac config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: rt5677_check_hotword() can be static (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix the charge pump capacitor discharges (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: Use dma_request_chan() directly for channel request (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dmaengine: Use dma_request_chan() directly for channel request (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: care card_probed at soc_cleanup_card_resources() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_unbind_card() next to snd_soc_bind_card() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call snd_soc_dapm_shutdown() at soc_cleanup_card_resources() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5645: Fixed typo for buddy jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8904: fix regcache handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup soc_probe_aux_devices() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_bind_card() and snd_soc_instantiate_card() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_remove_component() and soc_cleanup_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_remove_dai_link() and soc_unbind_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_add_dai_link() and soc_bind_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_unregister_dai() and soc_del_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_register_dai() and soc_add_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove soc_is_dai_link_bound() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Jack: Fix NULL pointer dereference in snd_soc_jack_report (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: free kcontrol memory on error (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: PM: only suspend to D0I3 when needed (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: add helper to check if we should enter d0i3 suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: PM: add check before setting d0_substate (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: PM: add state machine to comments (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: use fallback for firmware name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: acpi-match: split CNL tables in three (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix CFL and CML FW nocodec binary names (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: cancel jack_detect_work if hs_jack is set to null (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5645: Fixed buddy jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8904: configure sysclk/FLL automatically (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: Add dmic format constraint (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add DA7213 audio codec as selectable option (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Wait for DSP to boot before loading firmware (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Set ADC clock to use PLL and enable ASRC (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bdw-rt5677: Turn on MCLK1 for DSP via DAPM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Allow VAD to be shut on/off at all times (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Disable irq at suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Stop and restart DSP over suspend/resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Mark reg RT5677_PWR_ANLG2 as volatile (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Add DAPM audio path for hotword stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Enable jack detect while DSP is running (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bdw-rt5677: Add a DAI link for rt5677 SPI PCM device (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_audmix: Add spin lock to protect tdms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5514-spi: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5514-spi: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: set L1SEN on S0ix suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: fix missing NULL pointer check (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Fix compile warning with CONFIG_DEBUG_FS=n (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: Fix bytes control size checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove topology specific operation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call snd_soc_register_dai() from snd_soc_register_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: don't call snd_soc_dapm_new_dai_widgets() at snd_soc_register_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: have legacy_dai_naming at snd_soc_register_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_unregister_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_unregister_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_register_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use snd_soc_lookup_component() at snd_soc_unregister_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_component_add/del() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_del_component_unlocked() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup snd_soc_lookup_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_lookup_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add soc_unbind_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call soc_bind_dai_link() under snd_soc_add_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove duplicated soc_is_dai_link_bound() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: typo fix at soc_dai_link_sanity_check() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup soc_init_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_init_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add for_each_rtd_components() and replace (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove for_each_rtdcom_safe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: Use different sequence for start/stop trigger (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: snd_soc_unbind_card() cleanup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_pcm_lib_ioctl() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: setup card->rtd_num at snd_soc_instantiate_card() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use devm_xxx for component related resource (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add soc_setup_card_name() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove soc_remove_dai_links() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use devm_kzalloc() for rtd (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Clarify usage of ignore_machine (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_rtdcom_del_all() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup soc_new_pcm_runtime() alloc order (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: set trigger order for FE DAI link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: update FE/BE trigger order based on the command (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98373: replace gpio_request with devm_gpio_request (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: mark HDAudio codec support as deprecated (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: use def_tristate, avoid using select (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx: fix reverse CONFIG_SND_SOC_SOF_OF dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Kconfig: add EXPERT dependency for developer options, clarify help (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: add mutual exclusion between SOF and legacy Baytrail driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Broadwell: clarify mutual exclusion with legacy driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Baytrail: clarify mutual exclusion with Atom/SST driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Simplify the hda_dsp_wait_d0i3c_done() function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Add acpi match for rt1011 based m/c driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ux500: Remove redundant variable "status" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hda: fix race in device removal (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: set the different setting for QFN/WLCSP package (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: some minor changes to improve readability (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: add the range check for temperature_calib from device property (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: remove unnecessary tabs using spaces instead (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: fix spelling mistake "temperture" -> "temperature" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: Read and apply r0 and temperature device property (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: set tx/rx slots from tx/rx_mask in TDM case (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: improve the rt1011_set_dai_fmt() function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: remove redundant code in kcontrol (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove unneeded snd_soc_tplg_component_remove() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Load firmware via SPI using delayed work (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: fixup compile warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: fix sparse warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Add missing null check for failed allocation of rt5677_dsp (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Add a PCM device for streaming hotword via SPI (Jaroslav Kysela) [1797509] - [sound] ALSA: serial-u16550: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: opl4: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: oss: Constify snd_seq_oss_callback definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: opl3: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: opl3: Constify snd_opl3_drum_voice definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: mts64: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Constify snd_pcm_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Fix PCM format loop in proc output (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Fix dependency on timer API (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: do not override bus codec_mask in link_get() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Reset stream if DMA RUN bit not cleared (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: No preallocation on x86 platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Update kernel-doc function parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Comment about snd_hdac_bus_update_rirb() and spinlock (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: trident: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: rme32: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pcxhr: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Apply aligned MMIO access only conditionally (Jaroslav Kysela) [1797509] - [sound] ALSA: remove ioremap_nocache and devm_ioremap_nocache (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: asihpi: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset of ASUS B9450FA with ALC294 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Master (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Headset Button supported for ThinkPad X1 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Headset Mic supported (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix a regression for mute led on Lenovo Carbon X1 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use scnprintf() for printing texts for sysfs/procfs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Apply quirk for yet another MSI laptop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Apply quirk for MSI GP63, too (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix silent output on MSI-GL73 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add more codec supported Headset Button (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Clear RIRB status before reading WP (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fixed one of HP ALC671 platform Headset Mic supported (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Fix DP-MST support for NVIDIA codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: Make the firmware loading ioctl a bit more readable (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Fix annotation and cast for the recent uapi header change (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add JasperLake PCI ID and codec vid (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add Clevo W65_67SB the power_save blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: cs46xx: fix spelling mistake "to" -> "too" (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add docking station support for Lenovo Thinkpad T420s (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - add retry logic to parse_intel_hdmi() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Headset Mic supported for HP cPC (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/analog - Minor optimization for SPDIF mux connections (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: patch_hdmi: remove warnings with empty body (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: correct kernel-doc parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Manage concurrent reg access more properly (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: enable regmap internal locking (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Fix a typo in comments (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Disable regmap internal locking (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: patch_realtek: fix empty macro usage in if block (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Rename back to dmic_detect option (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: echoaudio: remove set but not used variable 'chip' (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add quirk for the bass speaker on Lenovo Yoga X1 7th gen (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Set EAPD control to default for ALC222 (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: ens137x: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4281: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: azt3328: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: ak4531: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: lx6464es: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: aw2: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es1938: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: asihpi: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cs46xx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: korg1212: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: nm256: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ymfpci: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: mixart: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: pcxhr: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: rme9652: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hdspm: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: riptide: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Apply mic mute LED quirk for Dell E7xx laptops, too (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add new codec supported for ALCS1200A (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - constify and cleanup static NodeID tables (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_pci_quirk tables (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Constify snd_pci_quirk tables (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: Constify snd_fm801_tea575x_gpios (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: Constify snd_es1968_tea575x_gpios (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Constify snd_emu_chip_details (Jaroslav Kysela) [1797509] - [sound] ALSA: bt87x: Constify snd_bt87x_boards (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: Constify wm-specific tables (Jaroslav Kysela) [1797509] - [sound] ALSA: ice17xx: Constify snd_ice1712_card_info (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Constify snd_ca0106_details (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Constify snd_ca0106_category_str items (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: Constify snd_ac97_res_table definition (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: Constify snd_vx_hardware and snd_vx_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: info: Make snd_info_entry_ops as const (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: Treat snd_ac97_bus_ops as const (Jaroslav Kysela) [1797509] - [sound] ALSA: Constify snd_timer_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_pcm_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: constify copied structure (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the bass speaker of ASUS UX431FLC (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Fix sleep-in-atomic in Infrasonic Quartet support code (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Bass Speaker and fixed dac for bass speaker (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Apply sync-write workaround to old Intel platforms, too (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: echoaudio: remove usage of dimen menber of elem_value structure (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - fix atpx_present when CLASS is not VGA (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Make uapi/emu10k1.h compilable again (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add headset Mic no shutup for ALC283 (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: Allow disabling MPU port via module option (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Downgrade error message for single-cmd fallback (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Fix regression by strip mask fix (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Fix work handling in delayed HP detection (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Avoid endless loop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Keep power on during processing DSP response (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Unify get_response handling (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use waitqueue for RIRB in HDA-core helper, too (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: tegra: Fix unused variable compile warning (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: Make uapi/hdsp.h compilable again (Jaroslav Kysela) [1797509] - [sound] ALSA: vx222: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: pcxhr: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: mixart: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: lx6464es: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ymfpci: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: trident: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sonicvibes: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sis7019: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: rme9652: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: rme96: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: rme32: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: riptide: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: oxygen: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: nm256: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: maestro3: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: lola: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: korg1212: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es1938: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ens137x: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cs5535audio: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cs46xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4281: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: bt87x: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: azt3328: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: aw2: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: als300: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ali5451: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1889: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Line-out jack doesn't work on a Dell AIO (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Fix duplicate unref of pci_dev (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: simplify get_audio_levels (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - Keep old slot assignment behavior for Intel platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Modify stream stripe mask only when needed (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - fixup for the bass speaker on Lenovo Carbon X1 7th gen (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - preserve non-MST PCM routing for Intel platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix kernel oops caused by invalid PCM idx (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix inverted bass GPIO pin on Acer 8951G (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Dell headphone has noise on unmute for ALC236 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix regression in connect list handling (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - enable automatic runtime pm for AMD HDMI codecs by default (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - enable runtime pm for newer AMD display audio (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Add new pci ids for AMD GPU display audio (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - fix vgaswitcheroo detection for AMD (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable internal speaker of ASUS UX431FLC (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Clear codec->relaxed_resume flag at unbinding (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Disable audio component for legacy Nvidia HDMI codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset-mic on a Xiaomi's laptop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Move some alc236 pintbls to fallback table (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Move some alc256 pintbls to fallback table (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add mute led support for HP ProBook 645 G4 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add DP-MST support for NVIDIA codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add DP-MST support for non-acomp codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add DP-MST jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Rename snd_hda_pin_sense to snd_hda_jack_pin_sense (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - remove forced polling workaround for CFL and CNL (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - remove redundant code comments (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix port numbering for ICL and TGL platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Clean up Intel platform-specific fixup checks (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: Fix incorrect device pointer for preallocation (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix pin setup on Tigerlake (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add Cometlake-S PCI ID (Jaroslav Kysela) [1797509] - [sound] ALSA: rme32: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - add Tigerlake support (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Fix possible workqueue stall (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Fix concurrent access to queue current tick/time (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Avoid concurrent access to queue flags (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix double hw_free calls (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix sparse warnings wrt snd_pcm_state_t (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix memory leak at closing a stream without hw_free (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Set per-card upper limit of PCM buffer allocations (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Make snd_pcm_hw_constraints_init() and _complete() static (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Fix racy access for queue timer in proc read (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: fix nsec/sec initialization confusion (Jaroslav Kysela) [1797509] - [sound] ALSA: control: potential uninitialized return value (Jaroslav Kysela) [1797509] - [sound] ALSA: rawmidi: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: oss: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: jack: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: info: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: control: Add verification for kctl accesses (Jaroslav Kysela) [1797509] - [sound] ALSA: mixer: oss: Constify snd_mixer_oss_assign_table definition (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Constify struct snd_midi_op (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Constify snd_timer_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Treat snd_device_ops as const (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: allow TLV read operation for callback type of element in locked case (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: remove dimen member from elem_info structure (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Avoid possible info leaks from PCM stream buffers (Jaroslav Kysela) [1797509] - [sound] ALSA: control: remove useless assignment in .info callback of PCM chmap element (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Fix typos and header inclusion in asound.h (Jaroslav Kysela) [1797509] - [sound] ALSA: bump uapi version numbers (Jaroslav Kysela) [1797509] - [sound] ALSA: add new 32-bit layout for snd_pcm_mmap_status/control (Jaroslav Kysela) [1797509] - [sound] ALSA: move snd_pcm_ioctl_sync_ptr_compat into pcm_native.c (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_ctl_elem_value (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_timer_tread (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_rawmidi_status (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_pcm_status (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_timer_status (Jaroslav Kysela) [1797509] - [sound] ALSA: Replace timespec with timespec64 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: fixup dpcm_prune_paths() loop continue (Jaroslav Kysela) [1797509] - [sound] ALSA: ps3: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pmac: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ymfpci: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: trident: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sonicvibes: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sis7019: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: riptide: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: oxygen: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: mixart: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: maestro3: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: lx6464es: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: lola: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: es1938: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ens137x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cs5535: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4281: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: bt87x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: azt3328: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aw2: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: asihpi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: als4000: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: wss: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: gus: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sb: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: es18xx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cmi8330: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1816a: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pcsp: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: atmel: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aaci: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: rme: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: als300: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ali5451: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1889: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use standard waitqueue for RIRB wakeup (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Drop superfluous snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: atom: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sst-mfld-platform-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sst-baytrail-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Drop superfluous snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sst-haswell-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skylake: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ml403: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Avoid pointer dereference before null-check (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Avoid unexpected timer event callback tasklets (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Remove redundant locking in timer open function (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Support runtime change of snd_timer via info interface (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Support selection of snd_timer instead of jiffies (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Move CABLE_VALID_BOTH to the top of file (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Rename all jiffies timer specific functions (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Use callback functions for timer specific implementations (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Support return of error code for timer start and stop (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Describe units of variables (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_free_pcm_runtime() and soc_rtd_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_new_pcm_runtime() and soc_rtd_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: create rtd->codec_dais first (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call list_del(&rtd->list) at soc_free_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_add_pcm_runtime() into soc_new_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_free_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: use list_del_init and move it back to soc_cleanup_component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: delete component->card_list in soc_remove_component only (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component: remove snd_pcm_ops from component driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add new pcm_construct/pcm_destruct (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_pcm_ops member to component driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component.h: remove GPL explanation from header (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Avoid potential buffer overflows (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Add card sync_irq field (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Add the support for sync-stop operation (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Move PCM_RUNTIME_CHECK() macro into local header (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Allow NULL ioctl ops (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Introduce managed buffer allocation mode (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix stream lock usage in snd_pcm_period_elapsed() (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Fix the breakage of slave link open (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Unexport snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Yet another missing check of non-cached buffer type (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Fix possible race at assigning a timer instance (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Make snd_timer_close() returning void (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Unify master/slave linking code (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Fix incorrectly assigned timer instance (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Limit max amount of slave instances (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Create proc files only for non-empty preallocations (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Warn if doubly preallocated (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Handle special page mapping in the default mmap handler (Jaroslav Kysela) [1797509] - [sound] ALSA: memalloc: Add vmalloc buffer allocation support (Jaroslav Kysela) [1797509] - [sound] ALSA: memalloc: Allow NULL device for SNDRV_DMA_TYPE_CONTINUOUS type (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm_dmaengine: Extract snd_dmaengine_pcm_refine_runtime_hwparams (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel - do not describe I/O configuration in the long card name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel - use control components to describe card config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: make common HDMI driver the default for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: sof_rt5682: use dependency on SOF_HDA_LINK (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: Geminilake is only supported by SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: fix configs for bxt-da7219-max98057a (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: remove select SND_HDA_DSP_LOADER (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: Add CML m/c using RT1011 and RT5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: compress: fix unsigned integer overflow check (Jaroslav Kysela) [1797509] - [sound] ALSA: Revert "ALSA: usb-audio: set the interface format after resume on Dell WD19" (Jaroslav Kysela) [1797509]- [crypto] crypto: ccp - use file mode for sev ioctl permissions (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Cleanup sp_dev_master in psp_dev_destroy() (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Cleanup misc_dev on sev_exit() (Vladis Dronov) [1765717] - [crypto] crypto: remove CRYPTO_TFM_RES_BAD_KEY_LEN (Vladis Dronov) [1765717] - [crypto] crypto: ccp - move SEV vdata to a dedicated data structure (Vladis Dronov) [1765717] - [crypto] crypto: ccp - create a generic psp-dev file (Vladis Dronov) [1765717] - [crypto] crypto: ccp - rename psp-dev files to sev-dev (Vladis Dronov) [1765717] - [crypto] crypto: ccp - set max RSA modulus size for v3 platform devices as well (Vladis Dronov) [1765717] - [crypto] crypto: ccp - add SEV command privilege separation (Vladis Dronov) [1765717] - [crypto] crypto: ccp - fix uninitialized list head (Vladis Dronov) [1765717] - [crypto] crypto: user - fix memory leak in crypto_report (Vladis Dronov) [1829808 1765717] {CVE-2019-19062} - [crypto] crypto: ccp - Release all allocated memory if sha type is invalid (Vladis Dronov) [1825134 1765717] {CVE-2019-18808} - [crypto] crypto: ccp - invoke fallback for XTS ciphertext stealing (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Remove unnecessary linux/pci.h include (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Include DMA declarations explicitly (Vladis Dronov) [1765717] - [crypto] crypto: ccp - use devm_platform_ioremap_resource() to simplify code (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Clean up and exit correctly on allocation failure (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Log an error message when ccp-crypto fails to load (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Ignore tag length when decrypting GCM ciphertext (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Add support for valid authsize values less than 16 (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Fix oops by properly managing allocated structures (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Reduce maximum stack usage (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Include the module name in system log messages (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Add a module parameter to control registration for DMA (Vladis Dronov) [1765717] - [crypto] crypto: ccp - module parameter to limit the number of enabled CCPs (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Add a module parameter to specify a queue count (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Make CCP debugfs support optional (Vladis Dronov) [1765717] - [crypto] crypto: ctr - add helper for performing a CTR encryption walk (Vladis Dronov) [1765717] - [crypto] crypto: ccp - memset structure fields to zero before reuse (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Fix 3DES complaint from ccp-crypto module (Vladis Dronov) [1765717] - [crypto] crypto: ccp - fix AES CFB error exposed by new test vectors (Vladis Dronov) [1765717] - [crypto] crypto: ccp - AES CFB mode is a stream cipher (Vladis Dronov) [1765717] - [crypto] treewide: Add SPDX license identifier - Makefile/Kconfig (Vladis Dronov) [1765717] - [crypto] crypto: shash - remove shash_desc::flags (Vladis Dronov) [1765717] - [crypto] crypto: ccp - no need to check return value of debugfs_create functions (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Remove forward declaration (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Remove VLA usage of skcipher (Vladis Dronov) [1765717] - [crypto] crypto: skcipher - Introduce crypto_sync_skcipher (Vladis Dronov) [1765717] - [infiniband] IB/mlx4: Test return value of calls to ib_get_cached_pkey (Alaa Hleihel) [1767259] - [netdrv] net/mlx4_core: Fix use of ENOSPC around mlx4_counter_alloc() (Alaa Hleihel) [1767259] - [infiniband] RDMA/mlx4: Initialize ib_spec on the stack (Alaa Hleihel) [1767259] - [powerpc] powerpc/powernv: Re-enable imc trace-mode in kernel (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Implement a global lock to avoid races between trace, core and thread imc events (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Return accordingly on invalid chip-id in (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Remove PM_BR_CMPL_ALT from power9 event list (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Add generic compat mode pmu driver (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: init pmu from core-book3s (Desnes Augusto Nunes do Rosario) [1725201] - [fs] NFS: Fix fscache super_cookie index_key from changing after umount (Dave Wysochanski) [1790933] - [fs] NFSv4: Fix fscache cookie aux_data to ensure change_attr is included (Dave Wysochanski) [1793560] - [fs] nfs: fscache: use timespec64 in inode auxdata (Dave Wysochanski) [1793560] - [documentation] i2c: replace i2c_new_probed_device with an ERR_PTR variant (David Arcari) [1835245] - [documentation] docs: stop suggesting strlcpy (David Arcari) [1835245] - [scsi] scsi: hpsa: Update driver version (Joseph Szczypek) [1815628] - [scsi] scsi: hpsa: correct race condition in offload enabled (Joseph Szczypek) [1815628] - [kernel] audit: log audit netlink multicast bind and unbind (Richard Guy Briggs) [1829622] - [ipc] ipc/mqueue.c: change __do_notify() to bypass check_kill_permission() (Oleg Nesterov) [1808931] - [scsi] scsi: megaraid_sas: Update driver version to 07.714.04.00-rc1 (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: TM command refire leads to controller firmware crash (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Replace undefined MFI_BIG_ENDIAN macro with __BIG_ENDIAN_BITFIELD macro (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Remove IO buffer hole detection logic (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Limit device queue depth to controller queue depth (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: Use true, false for bool variables (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: make two symbols static in megaraid_sas_base.c (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: make some symbols static in megaraid_sas_fusion.c (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: make some symbols static in megaraid_sas_fp.c (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Use scnprintf() for avoiding potential buffer overflow (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: silence a warning (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: fix indentation issue (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Update driver version to 07.713.01.00-rc1 (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Use Block layer API to check SCSI device in-flight IO requests (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Limit the number of retries for the IOCTLs causing firmware fault (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not initiate OCR if controller is not in ready state (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Re-Define enum DCMD_RETURN_STATUS (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not set HBA Operational if FW is not in operational state (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not kill HBA if JBOD Seqence map or RAID map is disabled (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not kill host bus adapter, if adapter is already dead (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Update optimal queue depth for SAS and NVMe devices (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Set no_write_same only for Virtual Disk (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Reset adapter if FW is not in READY state after device resume (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Make poll_aen_lock static (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: remove unused variables 'debugBlk', 'fusion' (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Unique names for MSI-X vectors (Tomas Henzl) [1791041]- [crypto] crypto: drbg - fix error return code in drbg_alloc_state() (Vladis Dronov) [1822458] - [fs] fs: call fsnotify_sb_delete after evict_inodes (Jay Shin) [1834741] - [fs] fs: avoid softlockups in s_inodes iterators (Jay Shin) [1834741] - [fs] fs/drop_caches.c: avoid softlockups in drop_pagecache_sb() (Jay Shin) [1834741] - [net] net/smc: remove set but not used variables 'del_llc, del_llc_resp' (Philipp Rudo) [1725886] - [net] net/smc: remove unused inline function smc_curs_read (Philipp Rudo) [1725886] - [net] net/smc: log important pnetid and state change events (Philipp Rudo) [1725886] - [net] net/smc: save SMC-R peer link_uid (Philipp Rudo) [1725886] - [net] net/smc: create improved SMC-R link_uid (Philipp Rudo) [1725886] - [net] net/smc: improve termination processing (Philipp Rudo) [1725886] - [net] net/smc: add termination reason and handle LLC protocol violation (Philipp Rudo) [1725886] - [net] net/smc: asymmetric link tagging (Philipp Rudo) [1725886] - [net] net/smc: assign link to a new connection (Philipp Rudo) [1725886] - [net] net/smc: send DELETE_LINK, ALL message and wait for send to complete (Philipp Rudo) [1725886] - [net] net/smc: wait for departure of an IB message (Philipp Rudo) [1725886] - [net] net/smc: handle incoming CDC validation message (Philipp Rudo) [1725886] - [net] net/smc: send failover validation message (Philipp Rudo) [1725886] - [net] net/smc: switch connections to alternate link (Philipp Rudo) [1725886] - [net] net/smc: save state of last sent CDC message (Philipp Rudo) [1725886] - [net] net/smc: enqueue local LLC messages (Philipp Rudo) [1725886] - [net] net/smc: delete link processing as SMC server (Philipp Rudo) [1725886] - [net] net/smc: delete link processing as SMC client (Philipp Rudo) [1725886] - [net] net/smc: llc_del_link_work and use the LLC flow for delete link (Philipp Rudo) [1725886] - [net] net/smc: delete an asymmetric link as SMC server (Philipp Rudo) [1725886] - [net] net/smc: final part of add link processing as SMC server (Philipp Rudo) [1725886] - [net] net/smc: rkey processing for a new link as SMC server (Philipp Rudo) [1725886] - [net] net/smc: first part of add link processing as SMC server (Philipp Rudo) [1725886] - [net] net/smc: final part of add link processing as SMC client (Philipp Rudo) [1725886] - [net] net/smc: rkey processing for a new link as SMC client (Philipp Rudo) [1725886] - [net] net/smc: first part of add link processing as SMC client (Philipp Rudo) [1725886] - [net] smc: Remove unused function (Philipp Rudo) [1725886] - [net] net/smc: llc_add_link_work to handle ADD_LINK LLC requests (Philipp Rudo) [1725886] - [net] net/smc: allocate index for a new link (Philipp Rudo) [1725886] - [net] net/smc: introduce smc_pnet_find_alt_roce() (Philipp Rudo) [1725886] - [net] net/smc: remove DELETE LINK processing from smc_core.c (Philipp Rudo) [1725886] - [net] net/smc: take link down instead of terminating the link group (Philipp Rudo) [1725886] - [net] net/smc: add smcr_port_err() and smcr_link_down() processing (Philipp Rudo) [1725886] - [net] net/smc: add smcr_port_add() and smcr_link_up() processing (Philipp Rudo) [1725886] - [net] net/smc: remember PNETID of IB device for later device matching (Philipp Rudo) [1725886] - [net] net/smc: mutex to protect the lgr against parallel reconfigurations (Philipp Rudo) [1725886] - [net] net/smc: extend smc_llc_send_add_link() and smc_llc_send_delete_link() (Philipp Rudo) [1725886] - [net] net/smc: map and register buffers for a new link (Philipp Rudo) [1725886] - [net] net/smc: unmapping of buffers to support multiple links (Philipp Rudo) [1725886] - [net] net/smc: multiple link support for rmb buffer registration (Philipp Rudo) [1725886] - [net] net/smc: remove obsolete link state DELETING (Philipp Rudo) [1725886] - [net] net/smc: remove handling of CONFIRM_RKEY_CONTINUE (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC remote DELETE_RKEY processing to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC remote CONFIRM_RKEY processing to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: new smc_rtoken_set functions for multiple link support (Philipp Rudo) [1725886] - [net] net/smc: move the TEST_LINK response processing into event handler (Philipp Rudo) [1725886] - [net] net/smc: multiple link support and LLC flow for smc_llc_do_delete_rkey (Philipp Rudo) [1725886] - [net] net/smc: multiple link support and LLC flow for smc_llc_do_confirm_rkey (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC client code to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC server code to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: add logic to evaluate CONFIRM_LINK messages to LLC layer (Philipp Rudo) [1725886] - [net] net/smc: introduce link group type (Philipp Rudo) [1725886] - [net] net/smc: enqueue all received LLC messages (Philipp Rudo) [1725886] - [net] net/smc: add event-based llc_flow framework (Philipp Rudo) [1725886] - [net] net/smc: move llc layer related init and clear into smc_llc.c (Philipp Rudo) [1725886] - [net] net/smc: use mutex instead of rwlock_t to protect buffers (Philipp Rudo) [1725886] - [net] net/smc: process llc responses in tasklet context (Philipp Rudo) [1725886] - [net] net/smc: use worker to process incoming llc messages (Philipp Rudo) [1725886] - [net] net/smc: simplify link deactivation (Philipp Rudo) [1725886] - [net] net/smc: move testlink work to system work queue (Philipp Rudo) [1725886] - [net] net/smc: add new link state and related helpers (Philipp Rudo) [1725886] - [net] net/smc: multi-link support for smc_rmb_rtoken_handling() (Philipp Rudo) [1725886] - [net] net/smc: convert static link ID instances to support multiple links (Philipp Rudo) [1725886] - [net] net/smc: convert static link ID to dynamic references (Philipp Rudo) [1725886] - [net] net/smc: introduce link_idx for link group array (Philipp Rudo) [1725886] - [net] net/smc: separate function for link initialization (Philipp Rudo) [1725886] - [net] net/smc: rework pnet table to support SMC-R failover (Philipp Rudo) [1725886] - [net] net/smc: improve peer ID in CLC decline for SMC-R (Philipp Rudo) [1725886] - [net] net/smc: rework peer ID handling (Philipp Rudo) [1725886] - [net] net/smc: reduce port_event scheduling (Philipp Rudo) [1725886] - [net] net/smc: simplify normal link termination (Philipp Rudo) [1725886] - [net] net/smc: remove unused parameter of smc_lgr_terminate() (Philipp Rudo) [1725886] - [net] net/smc: do not delete lgr from list twice (Philipp Rudo) [1725886] - [net] net/smc: use termination worker under send_lock (Philipp Rudo) [1725886] - [net] net/smc: improve smc_lgr_cleanup() (Philipp Rudo) [1725886] - [pci] PCI: Add new PCI_VPD_RO_KEYWORD_SERIALNO macro (Jonathan Toppins) [1834900] - [pci] PCI: Introduce pci_get_dsn (Jonathan Toppins) [1834900] - [scsi] scsi: lpfc: Remove redundant initialization to variable rc (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.1 (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Fix MDS Diagnostic Enablement definition (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Fix noderef and address space warnings (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Remove unnecessary lockdep_assert_held calls (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Change default queue allocation for reduced memory consumption (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Fix negation of else clause in lpfc_prep_node_fc4type (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Remove re-binding of nvme rport during registration (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Maintain atomic consistency of queue_claimed flag (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: remove duplicate unloading checks (Dick Kennedy) [1835310] - [scsi] scsi: qedf: Get dev info after updating the params (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Fix crash when MFW calls for protocol stats while function is still probing (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Add schedule recovery handler (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Implement callback for bw_update (Nilesh Javali) [1792113] - [netdrv] scsi: qed: Send BW update notifications to the protocol drivers (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Honor status qualifier in FCP_RSP per spec (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Acquire rport_lock for resetting the delay_timestamp (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Increase the upper limit of retry delay (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Keep track of num of pending flogi (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Simplify mutex_unlock() usage (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Add port_id getter (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Remove always false 'tmp_prio < 0' statement (Nilesh Javali) [1792113] - [include] NFSv4.1: fix handling of backchannel binding in BIND_CONN_TO_SESSION (Steve Dickson) [1828592] - [edac] EDAC/amd64: Drop some family checks for newer systems (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Add family ops for Family 19h Models 00h-0Fh (Aristeu Rozanski) [1779822 1735611] - [x86] x86/amd_nb: Add Family 19h PCI IDs (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/mce_amd: Always load on SMCA systems (Aristeu Rozanski) [1779822 1735611] - [x86] x86/MCE/AMD, EDAC/mce_amd: Add new Load Store unit McaType (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Save max number of controllers to family type (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Gather hardware information early (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Make struct amd64_family_type global (Aristeu Rozanski) [1779822 1735611] - [fs] nfsd: Add tracepoints for update of the expkey and export cache entries (Dave Wysochanski) [1775408] - [fs] nfsd: Add tracepoints for exp_find_key() and exp_get_by_name() (Dave Wysochanski) [1775408] - [fs] nfsd: Add tracing to nfsd_set_fh_dentry() (Dave Wysochanski) [1775408] - [net] SUNRPC: Clean up: Replace dprintk and BUG_ON call sites in svcauth_gss.c (Dave Wysochanski) [1775408] - [net] svcrdma: Create a generic tracing class for displaying xdr_buf layout (Dave Wysochanski) [1775408] - [net] SUNRPC: Capture completion of all RPC tasks (Dave Wysochanski) [1775408] - [net] SUNRPC: Trace gssproxy upcall results (Dave Wysochanski) [1775408] - [trace] fix null pointer deref in tracepoints in back channel (Dave Wysochanski) [1775408] - [fs] NFS: Clean up generic file commit tracepoint (Dave Wysochanski) [1775408] - [fs] NFS: Clean up generic writeback tracepoints (Dave Wysochanski) [1775408] - [fs] NFS: Clean up generic file read tracepoints (Dave Wysochanski) [1775408] - [fs] pNFS/flexfiles: Add tracing for layout errors (Dave Wysochanski) [1775408] - [fs] pNFS/flexfiles: Record resend attempts on I/O failure (Dave Wysochanski) [1775408] - [fs] NFS: Fix fix of show_nfs_errors (Dave Wysochanski) [1775408] - [fs] NFSv4: Improve read/write/commit tracing (Dave Wysochanski) [1775408] - [fs] NFS4: Report callback authentication errors (Dave Wysochanski) [1775408] - [fs] NFS4: Trace lock reclaims (Dave Wysochanski) [1775408] - [fs] NFS4: Trace state recovery operation (Dave Wysochanski) [1775408] - [fs] NFS: Add a tracepoint in nfs_fh_to_dentry() (Dave Wysochanski) [1775408] - [fs] pnfs/flexfiles: Add tracepoints for detecting pnfs fallback to MDS (Dave Wysochanski) [1775408] - [fs] NFS: Record task, client ID, and XID in xdr_status trace points (Dave Wysochanski) [1775408] - [fs] NFS: Display symbolic status code names in trace log (Dave Wysochanski) [1775408] - [fs] NFS: Fix show_nfs_errors macros again (Dave Wysochanski) [1775408] - [fs] NFS4: Add a trace event to record invalid CB sequence IDs (Dave Wysochanski) [1775408] - [media] media: v4l: event: Add subscription to list before calling "add" operation (Jarod Wilson) [1828805] {CVE-2019-9458} - [media] media: v4l: event: Prevent freeing event subscriptions while accessed (Jarod Wilson) [1828805] {CVE-2019-9458} - [vhost] vhost: Check docket sk_family instead of call getname (Vladis Dronov) [1823301] {CVE-2020-10942} - [documentation] kvm: ppc: book3s hv: Add a capability for enabling secure guests (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: H_SVM_INIT_START must call UV_RETURN (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Check caller of H_SVM_* Hcalls (David Gibson) [1814624] - [powerpc] Introduce the MSR_S bit (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Skip kvmppc_uvmem_free if Ultravisor is not supported (David Gibson) [1814624] - [powerpc] kvm: ppc: Kill kvmppc_ops::mmu_destroy() and kvmppc_mmu_destroy() (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s pr: Move kvmppc_mmu_init() into PR KVM (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Treat TM-related invalid form instructions on P9 like the valid ones (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Use RADIX_PTE_INDEX_SIZE in Radix MMU code (David Gibson) [1814624] - [powerpc] kvm: no need to check return value of debugfs_create functions (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s pr: Fix -Werror=return-type build failure (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Release lock on page-out failure path (David Gibson) [1814624] - [powerpc] mm: Remove kvm radix prefetch workaround for Power9 DD2.2 (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: xive: Fix typo in comment (David Gibson) [1814624] - [documentation] kvm: ppc: book3s hv: Implement H_SVM_INIT_ABORT hcall (David Gibson) [1814624] - [powerpc] kvm: ppc: Add skip_page_out parameter to uvmem functions (David Gibson) [1814624] - [powerpc] kvm: ppc: book3e: Replace current->mm by kvm->mm (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Replace current->mm by kvm->mm (David Gibson) [1814624] - [mm] add account_locked_vm utility function (David Gibson) [1814624] - [powerpc] kvm: ppc: Remove set but not used variable 'ra', 'rs', 'rt' (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Don't do ultravisor calls on systems without ultravisor (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Support reset of secure guest (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Handle memory plug/unplug to secure VM (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Radix changes for secure guest (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Shared pages support for secure guests (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Support for running secure guests (David Gibson) [1814624] - [powerpc] pseries/svm: Unshare all pages before kexecing a new kernel (David Gibson) [1814624] - [powerpc] pseries/svm: Use shared memory for LPPACA structures (David Gibson) [1814624] - [powerpc] pseries: Add and use LPPACA_SIZE constant (David Gibson) [1814624] - [powerpc] pseries/svm: Add helpers for UV_SHARE_PAGE and UV_UNSHARE_PAGE (David Gibson) [1814624] - [powerpc] prom_init: Add the ESM call to prom_init (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Reject mflags=2 (LPCR[AIL]=2) ADDR_TRANS_MODE mode (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Implement LPCR[AIL]=3 mode for injected interrupts (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Reuse kvmppc_inject_interrupt for async guest delivery (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Replace reset_msr mmu op with inject_interrupt arch op (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Define and use SRR1_MSR_BITS (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: xive: Show VP id in debugfs (David Gibson) [1814624] - [powerpc] kvm: ppc: e500: Replace current->mm by kvm->mm (David Gibson) [1814624] - [powerpc] kvm: ppc: Report single stepping capability (David Gibson) [1814624] - [powerpc] kvm: Fix kvmppc_vcore->in_guest value in kvmhv_switch_to_host (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: use smp_mb() when setting/clearing host_ipi flag (David Gibson) [1814624] - [powerpc] 64s: Set reserved PCR bits (David Gibson) [1814624] - [powerpc] Fix definition of PCR bits to work with old binutils (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Invalidate multiple TCEs at once (David Gibson) [1814624] - [powerpc] powernv/ioda: Split out TCE invalidation from TCE updates (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Don't lose pending doorbell request on migration on P9 (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Check for MMU ready on piggybacked virtual cores (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Define usage types for rmap array in guest memslot (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Don't push XIVE context when not using XIVE device (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Fix race in re-enabling XIVE escalation interrupts (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s pr: Fix software breakpoints (David Gibson) [1814624] - [powerpc] kvm: ppc: Remove leftover comment from emulate_loadstore.c (David Gibson) [1814624] - [x86] hyperv: Properly suspend/resume reenlightenment notifications (Mohammed Gamal) [1815475] - [kernel] pm: hibernate: Freeze kernel threads in software_resume() (Mohammed Gamal) [1815475] - [kernel] pm: hibernate: Propagate the return value of hibernation_restore() (Mohammed Gamal) [1815475] - [x86] hyperv: Suspend/resume the VP assist page for hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Fix Suspend-to-Idle for Generation-2 VM (Mohammed Gamal) [1815475] - [net] hv_sock: Add the support of hibernation (Mohammed Gamal) [1815475] - [video] hyperv_fb: Fix hibernation for the deferred IO feature (Mohammed Gamal) [1815475] - [video] hyperv_fb: Add the support of hibernation (Mohammed Gamal) [1815475] - [scsi] storvsc: Add the support of hibernation (Mohammed Gamal) [1815475] - [netdrv] hv_netvsc: Add the support of hibernation (Mohammed Gamal) [1815475] - [pci] hv: Change pci_protocol_version to per-hbus (Mohammed Gamal) [1815475] - [pci] hv: Add hibernation support (Mohammed Gamal) [1815475] - [input] hyperv-keyboard: Add the support of hibernation (Mohammed Gamal) [1815475] - [hid] hyperv: NULL check before some freeing functions is not needed (Mohammed Gamal) [1815475] - [hid] hyperv: Add the support of hibernation (Mohammed Gamal) [1815475] - [clocksource] hyper-v: Suspend/resume Hyper-V clocksource for hibernation (Mohammed Gamal) [1815475] - [x86] hyperv: Suspend/resume the hypercall page for hibernation (Mohammed Gamal) [1815475] - [x86] hyperv: Implement hv_is_hibernation_supported() (Mohammed Gamal) [1815475] - [hv] hv_utils: Add the support of hibernation (Mohammed Gamal) [1815475] - [hv] hv_utils: Support host-initiated hibernation request (Mohammed Gamal) [1815475] - [hv] hv_utils: Support host-initiated restart request (Mohammed Gamal) [1815475] - [hv] hv_balloon: Add the support of hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Fix harmless building warnings without CONFIG_PM_SLEEP (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Resume after fixing up old primary channels (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Suspend after cleaning up hv_sock and sub channels (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Clean up hv_sock channels by force upon suspend (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Suspend/resume the vmbus itself for hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Ignore the offers when resuming from hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Implement suspend/resume for VSC drivers for hibernation (Mohammed Gamal) [1815475] - [net] ipv4: really enforce backoff for redirects (Paolo Abeni) [1834184] - [net] netfilter: nat: never update the UDP checksum when it's 0 (Guillaume Nault) [1794714] - [net] sched: allow flower to match erspan options (Xin Long) [1830482] - [net] sched: allow flower to match vxlan options (Xin Long) [1830482] - [net] sched: add erspan option support to act_tunnel_key (Xin Long) [1830482] - [net] sched: add vxlan option support to act_tunnel_key (Xin Long) [1830482] - [netdrv] netdevsim: disable devlink reload when resources are being used (Ivan Vecera) [1829778] - [netdrv] netdevsim: fix using uninitialized resources (Ivan Vecera) [1829778] - [netdrv] drivers/net: netdevsim depends on INET (Ivan Vecera) [1829778] - [netdrv] netdevsim: fix nsim_fib6_rt_create() error path (Ivan Vecera) [1829778] - [tools] selftests: netdevsim: Add test for FIB offload API (Ivan Vecera) [1829778] - [tools] selftests: forwarding: Add helpers and tests for FIB offload (Ivan Vecera) [1829778] - [tools] selftests: mlxsw: Add a self-test for port-default priority (Ivan Vecera) [1829778] - [netdrv] netdevsim: fib: Add dummy implementation for FIB offload (Ivan Vecera) [1829778] - [net] ipv6: Add "offload" and "trap" indications to routes (Ivan Vecera) [1829778] - [net] ipv4: Add "offload" and "trap" indications to routes (Ivan Vecera) [1829778] - [net] ipv4: Encapsulate function arguments in a struct (Ivan Vecera) [1829778] - [net] ipv4: Replace route in list before notifying (Ivan Vecera) [1829778] - [tools] selftests: netdevsim: Extend devlink trap test to include flow action cookie (Petr Oros) [1823745] - [netdrv] netdevsim: add ACL trap reporting cookie as a metadata (Petr Oros) [1823745] - [net] devlink: extend devlink_trap_report() to accept cookie and pass (Petr Oros) [1823745] - [net] drop_monitor: extend by passing cookie from driver (Petr Oros) [1823745] - [net] devlink: add trap metadata type for cookie (Petr Oros) [1823745] - [net] devlink: add ACL generic packet traps (Petr Oros) [1823745] - [net] devlink: Add overlay source MAC is multicast trap (Petr Oros) [1823745] - [net] devlink: Add tunnel generic packet traps (Petr Oros) [1823745] - [net] devlink: Add non-routable packet trap (Petr Oros) [1823745] - [netdrv] mlxsw: spectrum_router: Prevent incorrect replacement of local table routes (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Remove FIB entry list from FIB node (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Consolidate identical functions (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Make route creation and destruction symmetric (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Eliminate dead code (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Remove unnecessary checks (Ivan Vecera) [1828994] - [net] ipv6: Remove old route notifications and convert listeners (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Start using new IPv6 route notifications (Ivan Vecera) [1828994] - [net] ipv6: Handle multipath route deletion notification (Ivan Vecera) [1828994] - [net] ipv6: Handle route deletion notification (Ivan Vecera) [1828994] - [net] ipv6: Only Replay routes of interest to new listeners (Ivan Vecera) [1828994] - [net] ipv6: Notify multipath route if should be offloaded (Ivan Vecera) [1828994] - [net] ipv6: Notify route if replacing currently offloaded one (Ivan Vecera) [1828994] - [net] ipv6: Notify newly added route if should be offloaded (Ivan Vecera) [1828994] - [include] net: fib_notifier: Add temporary events to the FIB notification chain (Ivan Vecera) [1828994] - [net] ipv4: Remove old route notifications and convert listeners (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Start using new IPv4 route notifications (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Don't rely on missing extack to symbolize dump (Ivan Vecera) [1828994] - [net] ipv4: Only Replay routes of interest to new listeners (Ivan Vecera) [1828994] - [net] ipv4: Handle route deletion notification during flush (Ivan Vecera) [1828994] - [net] ipv4: Handle route deletion notification (Ivan Vecera) [1828994] - [net] ipv4: Notify newly added route if should be offloaded (Ivan Vecera) [1828994] - [net] ipv4: Notify route if replacing currently offloaded one (Ivan Vecera) [1828994] - [net] ipv4: Extend FIB alias find function (Ivan Vecera) [1828994] - [net] ipv4: Notify route after insertion to the routing table (Ivan Vecera) [1828994] - [include] net: fib_notifier: Add temporary events to the FIB notification chain (Ivan Vecera) [1828994] - [net] vti6: Fix memory leak of skb if input policy check fails (Xin Long) [1829720] - [net] xfrm: policy: Fix doulbe free in xfrm_policy_timer (Xin Long) [1829720] - [net] xfrm: add the missing verify_sec_ctx_len check in xfrm_add_acquire (Xin Long) [1829720] - [net] xfrm: fix uctx len check in verify_sec_ctx_len (Xin Long) [1829720] - [net] xfrm: handle NETDEV_UNREGISTER for xfrm device (Xin Long) [1829720] - [net] xfrm: interface: do not confirm neighbor when do pmtu update (Xin Long) [1829720] - [documentation] xfrm: update doc about xfrm[46]_gc_thresh (Xin Long) [1829720] - [documentation] devlink: remove trigger command from devlink-region.rst (Petr Oros) [1822570] - [include] devlink: promote "fw.bundle_id" to a generic info version (Petr Oros) [1822570] - [documentation] devlink: document devlink info versions reported by bnxt_en driver (Petr Oros) [1822570] - [include] devlink: add macro for "fw.roce" (Petr Oros) [1822570] - [documentation] Fix typo in devlink documentation (Petr Oros) [1822570] - [documentation] devlink: fix typos in qed documentation (Petr Oros) [1822570] - [documentation] devlink: document region snapshot triggering from userspace (Petr Oros) [1822570] - [documentation] devlink: introduce devlink-dpipe.rst documentation file (Petr Oros) [1822570] - [documentation] devlink: add a devlink-resource.rst documentation file (Petr Oros) [1822570] - [netdrv] devlink: rename and expand devlink-trap-netdevsim.rst (Petr Oros) [1822570] - [documentation] devlink: add documentation for ionic device driver (Petr Oros) [1822570] - [documentation] devlink: add a file documenting devlink regions (Petr Oros) [1822570] - [documentation] devlink: add a driver-specific file for the qed driver (Petr Oros) [1822570] - [documentation] devlink: add parameter documentation for the mlx4 driver (Petr Oros) [1822570] - [documentation] devlink: document info versions for each driver (Petr Oros) [1822570] - [documentation] devlink: convert driver-specific files to reStructuredText (Petr Oros) [1822570] - [documentation] devlink: mention reloading in devlink-params.rst (Petr Oros) [1822570] - [documentation] devlink: add documentation for generic devlink parameters (Petr Oros) [1822570] - [documentation] devlink: convert devlink-params.txt to reStructuredText (Petr Oros) [1822570] - [documentation] devlink: rename devlink-info-versions.rst and add a header (Petr Oros) [1822570] - [documentation] devlink: convert devlink-health.txt to rst format (Petr Oros) [1822570] - [documentation] devlink: move devlink documentation to subfolder (Petr Oros) [1822570] - [include] devlink: add macro for "fw.psid" (Petr Oros) [1822570] - [netdrv] ethtool: Add support for 400Gbps (50Gbps per lane) link modes (Ivan Vecera) [1828942] - [netdrv] phy: Add support for 100BaseT1 and 1000BaseT1 (Ivan Vecera) [1828942] - [net] phy: improve definition of __ETHTOOL_LINK_MODE_MASK_NBITS (Ivan Vecera) [1828942] - [net] netfilter: nf_tables: simplify NLM_F_CREATE handling (Phil Sutter) [1812666] - [net] devlink: Add layer 3 generic packet exception traps (Petr Oros) [1828737] - [net] devlink: Add layer 3 generic packet traps (Petr Oros) [1828737] - [net] netfilter: nf_tables: fix infinite loop when expr is not available (Phil Sutter) [1757933] - [net] netfilter: nf_tables: autoload modules from the abort path (Phil Sutter) [1757933] - [net] netfilter: nf_tables: remove WARN and add NLA_STRING upper limits (Phil Sutter) [1757933] - [net] netfilter: nf_tables: store transaction list locally while requesting module (Phil Sutter) [1757933] - [net] netfilter: nf_tables: use-after-free in failing rule with bound set (Phil Sutter) [1757933] - [net] netfilter: nft_meta: skip EAGAIN if nft_meta_bridge is not a module (Phil Sutter) [1757933] - [net] netfilter: nf_tables: force module load in case select_ops() returns -EAGAIN (Phil Sutter) [1757933] - [net] netfilter: nf_tables: add nft_expr_type_request_module() (Phil Sutter) [1757933] - [net] netfilter: nf_tables: bogus EBUSY in helper removal from transaction (Phil Sutter) [1757933] - [net] netfilter: nf_tables: fix set double-free in abort path (Phil Sutter) [1757933] - [net] netfilter: nft_compat: don't use refcount_inc on newly allocated entry (Phil Sutter) [1757933] - [net] netfilter: nf_tables: unbind set in rule from commit path (Phil Sutter) [1757933] - [net] netfilter: nft_compat: destroy function must not have side effects (Phil Sutter) [1757933] - [net] netfilter: nft_compat: make lists per netns (Phil Sutter) [1757933] - [net] netfilter: nft_compat: use refcnt_t type for nft_xt reference count (Phil Sutter) [1757933] - [net] netfilter: nf_tables: fix suspicious RCU usage in nft_chain_stats_replace() (Phil Sutter) [1757933] - [net] netfilter: nf_tables: asynchronous release (Phil Sutter) [1757933] - [net] netfilter: nf_tables: split set destruction in deactivate and destroy phase (Phil Sutter) [1757933] - [net] netfilter: nf_tables: flow event notifier must use transaction mutex (Phil Sutter) [1757933] - [net] netfilter: nf_tables: use dedicated mutex to guard transactions (Phil Sutter) [1757933] - [net] netfilter: nf_tables: avoid global info storage (Phil Sutter) [1757933] - [net] netfilter: nf_tables: take module reference when starting a batch (Phil Sutter) [1757933] - [net] netfilter: nf_tables: make valid_genid callback mandatory (Phil Sutter) [1757933] - [net] netfilter: nf_tables: add and use helper for module autoload (Phil Sutter) [1757933]- [kernel] sched: Fix missing bracket in membarrier_switch_mm from mismerge (Phil Auld) [1745111] - [fs] nfs: fix NULL deference in nfs4_get_valid_delegation ("J. Bruce Fields") [1831553] - [acpi] PCI/AER: Use only _OSC to determine AER ownership (Myron Stowe) [1712820] - [pci] PCI/EDR: Log only ACPI_NOTIFY_DISCONNECT_RECOVER events (Myron Stowe) [1712820] - [pci] PCI/AER: Rationalize error status register clearing (Myron Stowe) [1712820] - [pci] PCI/DPC: Add Error Disconnect Recover (EDR) support (Myron Stowe) [1712820] - [pci] PCI/DPC: Expose dpc_process_error(), dpc_reset_link() for use by EDR (Myron Stowe) [1712820] - [pci] PCI/AER: Add pci_aer_raw_clear_status() to unconditionally clear Error Status (Myron Stowe) [1712820] - [pci] PCI/DPC: Cache DPC capabilities in pci_init_capabilities() (Myron Stowe) [1712820] - [pci] PCI/ERR: Return status of pcie_do_recovery() (Myron Stowe) [1712820] - [pci] PCI/ERR: Remove service dependency in pcie_do_recovery() (Myron Stowe) [1712820] - [pci] PCI/DPC: Move DPC data into struct pci_dev (Myron Stowe) [1712820] - [pci] PCI/ERR: Update error status after reset_link() (Myron Stowe) [1712820] - [pci] PCI/ERR: Combine pci_channel_io_frozen cases (Myron Stowe) [1712820] - [pci] PCI/ASPM: Reduce severity of common clock config message (Myron Stowe) [1712820] - [pci] PCI/ASPM: Clear the correct bits when enabling L1 substates (Myron Stowe) [1712820] - [pci] PCI/PM: Print config space of devices before suspend (Myron Stowe) [1712820] - [pci] PCI/AER: Initialize aer_fifo (Myron Stowe) [1712820] - [pci] PCI/AER: Factor message prefixes with dev_fmt() (Myron Stowe) [1712820] - [pci] PCI/AER: Log which device prevents error recovery (Myron Stowe) [1712820] - [security] ima: Switch to ima_hash_algo for boot aggregate (Jerry Snitselaar) [1786441] - [mm] mm: mempolicy: require at least one nodeid for MPOL_PREFERRED (Rafael Aquini) [1834435] {CVE-2020-11565} - [tools] perf maps: Add missing unlock to maps__insert() error case (Michael Petlan) [1818838] - [tools] perf dso: Fix dso comparison (Michael Petlan) [1818838] - [tools] perf block-info: Fix wrong block address comparison in block_info__cmp() (Michael Petlan) [1818838] - [tools] libperf: Setup initial evlist::all_cpus value (Michael Petlan) [1818838] - [tools] perf report: Fix no libunwind compiled warning break s390 issue (Michael Petlan) [1818838] - [tools] perf hists: Fix variable name's inconsistency in hists__for_each() macro (Michael Petlan) [1818838] - [tools] perf map: Set kmap->kmaps backpointer for main kernel map chunks (Michael Petlan) [1818838] - [tools] perf report: Fix incorrectly added dimensions as switch perf data file (Michael Petlan) [1818838] - [tools] tools lib traceevent: Fix memory leakage in filter_event (Michael Petlan) [1818838] - [tools] perf vendor events s390: Remove name from L1D_RO_EXCL_WRITES description (Michael Petlan) [1818838] - [tools] perf vendor events s390: Fix counter long description for DTLB1_GPAGE_WRITES (Michael Petlan) [1818838] - [tools] libtraceevent: Allow custom libdir path (Michael Petlan) [1818838] - [tools] perf top: Do not bail out when perf_env__read_cpuid() returns ENOSYS (Michael Petlan) [1818838] - [tools] perf arch: Make the default get_cpuid() return compatible error (Michael Petlan) [1818838] - [tools] perf inject: Fix processing of ID index for injected instruction tracing (Michael Petlan) [1818838] - [tools] perf report: Bail out --mem-mode if mem info is not available (Michael Petlan) [1818838] - [tools] perf report: Make -F more strict like -s (Michael Petlan) [1818838] - [tools] perf report/top TUI: Replace pr_err() with ui__error() (Michael Petlan) [1818838] - [tools] libtraceevent: Copy pkg-config file to output folder when using O= (Michael Petlan) [1818838] - [tools] libtraceevent: Fix lib installation with O= (Michael Petlan) [1818838] - [tools] perf kvm: Clarify the 'perf kvm' -i and -o command line options (Michael Petlan) [1818838] - [tools] perf machine: Fill map_symbol->maps in append_inlines() to fix segfault (Michael Petlan) [1818838] - [tools] perf jit: Move test functionality in to a test (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for enabling/disabling events (Michael Petlan) [1818838] - [tools] perf evsel: Add functions to enable/disable for a specific CPU (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for reading (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for opening events (Michael Petlan) [1818838] - [tools] perf stat: Factor out open error handling (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for closing file descriptors (Michael Petlan) [1818838] - [tools] perf evsel: Add functions to close evsel on a CPU (Michael Petlan) [1818838] - [tools] perf evsel: Add iterator to iterate over events ordered by CPU (Michael Petlan) [1818838] - [tools] perf evlist: Maintain evlist->all_cpus (Michael Petlan) [1818838] - [tools] perf cpumap: Maintain cpumaps ordered and without dups (Michael Petlan) [1818838] - [tools] perf script: Fix brstackinsn for AUXTRACE (Michael Petlan) [1818838] - [tools] perf affinity: Add infrastructure to save/restore affinity (Michael Petlan) [1818838] - [tools] perf pmu: Use file system cache to optimize sysfs access (Michael Petlan) [1818838] - [tools] perf regs: Make perf_reg_name() return "unknown" instead of NULL (Michael Petlan) [1818838] - [tools] perf diff: Use llabs() with 64-bit values (Michael Petlan) [1818838] - [tools] perf diff: Use llabs() with 64-bit values (Michael Petlan) [1818838] - [tools] perf tests: Rename tests/map_groups.c to tests/maps.c (Michael Petlan) [1818838] - [tools] perf tests: Rename thread-mg-share to thread-maps-share (Michael Petlan) [1818838] - [tools] perf maps: Rename map_groups.h to maps.h (Michael Petlan) [1818838] - [tools] perf maps: Rename 'mg' variables to 'maps' (Michael Petlan) [1818838] - [tools] perf map_symbol: Rename ms->mg to ms->maps (Michael Petlan) [1818838] - [tools] perf addr_location: Rename al->mg to al->maps (Michael Petlan) [1818838] - [tools] perf thread: Rename thread->mg to thread->maps (Michael Petlan) [1818838] - [tools] perf maps: Merge 'struct maps' with 'struct map_groups' (Michael Petlan) [1818838] - [tools] x86/insn: perf tools: Add some more instructions to the new instructions test (Michael Petlan) [1818838] - [tools] perf map: Remove unused functions (Michael Petlan) [1818838] - [tools] perf map: Remove needless struct forward declarations (Michael Petlan) [1818838] - [tools] perf map: Ditch leftover map__reloc_vmlinux() prototype (Michael Petlan) [1818838] - [tools] perf script: Move map__fprintf_srccode() to near its only user (Michael Petlan) [1818838] - [tools] perf parse: Fix potential memory leak when handling tracepoint errors (Michael Petlan) [1818838] - [tools] libtraceevent: Fix memory leakage in copy_filter_type (Michael Petlan) [1818838] - [tools] libtraceevent: Fix header installation (Michael Petlan) [1818838] - [tools] perf intel-bts: Does not support AUX area sampling (Michael Petlan) [1818838] - [tools] perf intel-pt: Add support for decoding AUX area samples (Michael Petlan) [1818838] - [tools] perf intel-pt: Add support for recording AUX area samples (Michael Petlan) [1818838] - [tools] perf pmu: When using default config, record which bits of config were changed by the user (Michael Petlan) [1818838] - [tools] perf auxtrace: Add support for queuing AUX area samples (Michael Petlan) [1818838] - [tools] perf session: Add facility to peek at all events (Michael Petlan) [1818838] - [tools] perf auxtrace: Add support for dumping AUX area samples (Michael Petlan) [1818838] - [tools] perf inject: Cut AUX area samples (Michael Petlan) [1818838] - [tools] perf record: Add aux-sample-size config term (Michael Petlan) [1818838] - [tools] perf record: Add support for AUX area sampling (Michael Petlan) [1818838] - [tools] perf auxtrace: Add support for AUX area sample recording (Michael Petlan) [1818838] - [tools] perf auxtrace: Move perf_evsel__find_pmu() (Michael Petlan) [1818838] - [tools] perf record: Add a function to test for kernel support for AUX area sampling (Michael Petlan) [1818838] - [tools] perf tools: Add kernel AUX area sampling definitions (Michael Petlan) [1818838] - [tools] perf report: Jump to symbol source view from total cycles view (Michael Petlan) [1818838] - [tools] perf util: Move block TUI function to ui browsers (Michael Petlan) [1818838] - [tools] perf dso: Move dso_id from 'struct map' to 'struct dso' (Michael Petlan) [1818838] - [tools] perf dsos: Remove unused dsos__find() method (Michael Petlan) [1818838] - [tools] perf map: Move comparision of map's dso_id to a separate function (Michael Petlan) [1818838] - [tools] perf map: Pass a dso_id to map__new() (Michael Petlan) [1818838] - [tools] perf map: Move maj/min/ino/ino_generation to separate struct (Michael Petlan) [1818838] - [tools] perf parse: Report initial event parsing error (Michael Petlan) [1818838] - [tools] x86/insn: perf tools: Add some instructions to the new instructions test (Michael Petlan) [1818838] - [tools] perf map: Move seldom used ->flags field to second cacheline (Michael Petlan) [1818838] - [tools] perf map: Use bitmap for booleans (Michael Petlan) [1818838] - [tools] libtraceevent: Fix parsing of event o and X argument types (Michael Petlan) [1818838] - [tools] perf callchain: Fix segfault in thread__resolve_callchain_sample() (Michael Petlan) [1818838] - [tools] perf map_groups: Auto sort maps by name, if needed (Michael Petlan) [1818838] - [tools] perf machine: No need to check if kernel module maps pre-exist (Michael Petlan) [1818838] - [tools] perf record: No need to process the synthesized MMAP events twice (Michael Petlan) [1818838] - [tools] perf map: No need to adjust the long name of modules (Michael Petlan) [1818838] - [tools] perf map_groups: Add a front end cache for map lookups by name (Michael Petlan) [1818838] - [tools] perf maps: Do not use an rbtree to sort by map name (Michael Petlan) [1818838] - [tools] perf maps: Purge the entries from maps->names in __maps__purge() (Michael Petlan) [1818838] - [tools] perf vendor events power9: Fix commas so PMU event files are valid JSON (Michael Petlan) [1818838] - [tools] perf vendor events power8: Fix commas so PMU event files are valid JSON (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Fix commas so PMU event files are valid JSON (Michael Petlan) [1818838] - [tools] perf parse: Use YYABORT to clear stack after failure, plugging leaks (Michael Petlan) [1818838] - [tools] perf tool: Provide an option to print perf_event_open args and return value (Michael Petlan) [1818838] - [tools] perf map: Remove ->groups from 'struct map' (Michael Petlan) [1818838] - [tools] perf map: Combine maps__fixup_overlappings with its only use (Michael Petlan) [1818838] - [tools] perf annotate: Stop using map->groups, use map_symbol->mg instead (Michael Petlan) [1818838] - [tools] perf tools: Add a 'struct map_groups' pointer to 'struct map_symbol' (Michael Petlan) [1818838] - [tools] perf symbols: Use kmaps(map)->machine when we know its a kernel map (Michael Petlan) [1818838] - [tools] pref tools: Make 'struct addr_map_symbol' contain 'struct map_symbol' (Michael Petlan) [1818838] - [tools] perf callchain: Use 'struct map_symbol' in 'struct callchain_cursor_node' (Michael Petlan) [1818838] - [tools] perf unwind: Use 'struct map_symbol' in 'struct unwind_entry' (Michael Petlan) [1818838] - [tools] perf annotate: Pass a 'map_symbol' in places receiving a pair of 'map' and 'symbol' pointers (Michael Petlan) [1818838] - [tools] perf tools: Add map_groups to 'struct addr_location' (Michael Petlan) [1818838] - [tools] perf map_groups: Pass the object to map_groups__find_ams() (Michael Petlan) [1818838] - [tools] perf symbols: Stop using map->groups, we can use kmaps instead (Michael Petlan) [1818838] - [tools] perf map: Use map->dso->kernel + map__kmaps() in map__kmaps() (Michael Petlan) [1818838] - [tools] perf report: Sort by sampled cycles percent per block for tui (Michael Petlan) [1818838] - [tools] perf report: Support --percent-limit for --total-cycles (Michael Petlan) [1818838] - [tools] perf report: Sort by sampled cycles percent per block for stdio (Michael Petlan) [1818838] - [tools] perf hist: Support block formats with compare/sort/display (Michael Petlan) [1818838] - [tools] perf hist: Count the total cycles of all samples (Michael Petlan) [1818838] - [tools] perf block: Cleanup and refactor block info functions (Michael Petlan) [1818838] - [tools] perf diff: Don't use hack to skip column length calculation (Michael Petlan) [1818838] - [tools] perf tests: Fix out of bounds memory access (Michael Petlan) [1818838] - [tools] perf record: Add support for limit perf output file size (Michael Petlan) [1818838] - [tools] perf annotate: Fix heap overflow (Michael Petlan) [1818838] - [tools] perf machine: Add kernel_dso() method (Michael Petlan) [1818838] - [tools] perf symbols: Remove needless checks for map->groups->machine (Michael Petlan) [1818838] - [tools] perf parse: Add a deep delete for parse event terms (Michael Petlan) [1818838] - [tools] perf parse: If pmu configuration fails free terms (Michael Petlan) [1818838] - [tools] perf parse: Before yyabort-ing free components (Michael Petlan) [1818838] - [tools] perf parse: Add destructors for parse event terms (Michael Petlan) [1818838] - [tools] perf parse: Ensure config and str in terms are unique (Michael Petlan) [1818838] - [tools] perf parse: Add parse events handle error (Michael Petlan) [1818838] - [tools] perf inject: Make --strip keep evsels (Michael Petlan) [1818838] - [tools] perf tools: Fix cross compile for ARM64 (Michael Petlan) [1818838] - [tools] perf stat: Add --per-node agregation support (Michael Petlan) [1818838] - [tools] perf env: Add perf_env__numa_node() (Michael Petlan) [1818838] - [tools] perf tools: Splice events onto evlist even on error (Michael Petlan) [1818838] - [tools] libsubcmd: Use -O0 with DEBUG=1 (Michael Petlan) [1818838] - [tools] libsubcmd: Move EXTRA_FLAGS to the end to allow overriding existing flags (Michael Petlan) [1818838] - [tools] perf map_groups: Introduce for_each_entry() and for_each_entry_safe() iterators (Michael Petlan) [1818838] - [tools] perf maps: Add for_each_entry()/_safe() iterators (Michael Petlan) [1818838] - [tools] perf map: Allow map__next() to receive a NULL arg (Michael Petlan) [1818838] - [tools] perf map: Check if the map still has some refcounts on exit (Michael Petlan) [1818838] - [tools] perf dso: Add dso__data_write_cache_addr() (Michael Petlan) [1818838] - [tools] perf dso: Refactor dso_cache__read() (Michael Petlan) [1818838] - [tools] perf auxtrace: Add auxtrace_cache__remove() (Michael Petlan) [1818838] - [tools] perf jevents: Fix resource leak in process_mapfile() and main() (Michael Petlan) [1818838] - [tools] perf kvm: Use evlist layer api when possible (Michael Petlan) [1818838] - [tools] perf tests: Fix a typo (Michael Petlan) [1818838] - [tools] perf tools: Avoid a malloc() for array events (Michael Petlan) [1818838] - [tools] perf tools: Move ALLOC_LIST into a function (Michael Petlan) [1818838] - [tools] perf evsel: Avoid close(-1) (Michael Petlan) [1818838] - [tools] perf evsel: Always preserve errno while cleaning up perf_event_open failures (Michael Petlan) [1818838] - [tools] perf cs-etm: Fix definition of macro TO_CS_QUEUE_NR (Michael Petlan) [1818838] - [tools] perf llvm: Make .o saving a debug message, not an info one (Michael Petlan) [1818838] - [tools] perf record: Put a copy of kcore into the perf.data directory (Michael Petlan) [1818838] - [tools] perf data: Support single perf.data file directory (Michael Petlan) [1818838] - [tools] perf session: Fix indent in perf_session__new()" (Michael Petlan) [1818838] - [tools] perf data: Rename directory "header" file to "data" (Michael Petlan) [1818838] - [tools] perf data: Move perf_dir_version into data.h (Michael Petlan) [1818838] - [tools] perf data: Correctly identify directory data files (Michael Petlan) [1818838] - [tools] perf trace: Use STUL_STRARRAY_FLAGS with mmap (Michael Petlan) [1818838] - [tools] perf trace: Wire up strarray__strtoul_flags() (Michael Petlan) [1818838] - [tools] libbeauty: Introduce strarray__strtoul_flags() (Michael Petlan) [1818838] - [tools] libbeauty: Make the mmap_flags strarray visible outside of its beautifier (Michael Petlan) [1818838] - [tools] perf trace: Use strtoul for the fcntl 'cmd' argument (Michael Petlan) [1818838] - [tools] libbeauty: Introduce syscall_arg__strtoul_strarrays() (Michael Petlan) [1818838] - [tools] libperf: Add pr_err() macro (Michael Petlan) [1818838] - [tools] libperf: Do not export perf_evsel__init()/perf_evlist__init() (Michael Petlan) [1818838] - [tools] libperf: Keep count of failed tests (Michael Petlan) [1818838] - [tools] libperf: Add tests_mmap_cpus test (Michael Petlan) [1818838] - [tools] libperf: Add tests_mmap_thread test (Michael Petlan) [1818838] - [tools] libperf: Link static tests with libapi.a (Michael Petlan) [1818838] - [tools] libperf: Move mask setup to perf_evlist__mmap_ops() (Michael Petlan) [1818838] - [tools] libperf: Move mmap allocation to perf_evlist__mmap_ops::get (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__for_each_mmap() (Michael Petlan) [1818838] - [tools] perf tests: Disable bp_signal testing for arm64 (Michael Petlan) [1818838] - [tools] perf tests bp_account: Add dedicated checking helper is_supported() (Michael Petlan) [1818838] - [tools] perf tests: Remove needless headers for bp_account (Michael Petlan) [1818838] - [tools] perf list: Hide deprecated events by default (Michael Petlan) [1818838] - [tools] perf trace: Pass a syscall_arg to syscall_arg_fmt->strtoul() (Michael Petlan) [1818838] - [tools] perf trace: Honour --max-events in processing syscalls:sys_enter_* (Michael Petlan) [1818838] - [tools] libbeauty: Introduce syscall_arg__strtoul_strarray() (Michael Petlan) [1818838] - [tools] perf trace: Initialize evsel_trace->fmt for syscalls:sys_enter_* tracepoints (Michael Petlan) [1818838] - [tools] perf trace: Introduce 'struct evsel__trace' for evsel->priv needs (Michael Petlan) [1818838] - [tools] perf trace: Hide evsel->access further, simplify code (Michael Petlan) [1818838] - [tools] perf trace: Introduce accessors to trace specific evsel->priv (Michael Petlan) [1818838] - [tools] perf trace: Show error message when not finding a field used in a filter expression (Michael Petlan) [1818838] - [tools] perf trace: Hook the 'vec' tracepoint argument with the x86 IRQ vectors scnprintf/strtoul (Michael Petlan) [1818838] - [tools] perf trace beauty: Add the glue for the autogenerated x86 IRQ vector array (Michael Petlan) [1818838] - [tools] libbeauty: Add a strarray__scnprintf_suffix() method (Michael Petlan) [1818838] - [tools] libbeauty: Hook up the x86 irq_vectors table generator (Michael Petlan) [1818838] - [tools] libbeauty: Add a generator for x86's IRQ vectors -> strings (Michael Petlan) [1818838] - [tools] tools arch x86: Grab a copy of the file containing the IRQ vector defines (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Add some missing events for Hisi hip08 HHA PMU (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Add some missing events for Hisi hip08 L3C PMU (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Add some missing events for Hisi hip08 DDRC PMU (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Fix Hisi hip08 DDRC PMU eventname (Michael Petlan) [1818838] - [tools] perf trace: Support tracepoint dynamic char arrays (Michael Petlan) [1818838] - [tools] perf trace: Filter own pid to avoid a feedback look in 'perf trace record -a' (Michael Petlan) [1818838] - [tools] perf string: Export asprintf__tp_filter_pids() (Michael Petlan) [1818838] - [tools] perf trace: Introduce --errno-summary (Michael Petlan) [1818838] - [tools] perf trace: Add syscall failure stats to -s/--summary and -S/--with-summary (Michael Petlan) [1818838] - [tools] perf stat: Support --all-kernel/--all-user (Michael Petlan) [1818838] - [tools] perf annotate: Fix objdump --no-show-raw-insn flag (Michael Petlan) [1818838] - [tools] perf annotate: Don't pipe objdump output through 'expand' command (Michael Petlan) [1818838] - [tools] perf annotate: Don't pipe objdump output through 'grep' command (Michael Petlan) [1818838] - [tools] perf annotate: Use libsubcmd's run-command.h to fork objdump (Michael Petlan) [1818838] - [tools] perf annotate: Avoid reallocation in objdump parsing (Michael Petlan) [1818838] - [tools] perf report: Add warning when libunwind not compiled in (Michael Petlan) [1818838] - [tools] perf test: Avoid infinite loop for task exit case (Michael Petlan) [1818838] - [tools] perf test: Report failure for mmap events (Michael Petlan) [1818838] - [tools] perf script: Fix --reltime with --time (Michael Petlan) [1818838] - [tools] perf tools: Allow to build with -ltcmalloc (Michael Petlan) [1818838] - [tools] perf diff: Report noisy for cycles diff (Michael Petlan) [1818838] - [tools] perf tools: Propagate CFLAGS to libperf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_evlist__filter_pollfd() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__purge() (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__exit() (Michael Petlan) [1818838] - [tools] libperf: Move the pollfd allocation from tools/perf to libperf (Michael Petlan) [1818838] - [tools] libperf: Centralize map refcnt setting (Michael Petlan) [1818838] - [tools] perf evlist: Switch to libperf's mmap interface (Michael Petlan) [1818838] - [tools] perf evlist: Introduce perf_evlist__mmap_cb_mmap() (Michael Petlan) [1818838] - [tools] perf evlist: Introduce perf_evlist__mmap_cb_get() (Michael Petlan) [1818838] - [tools] perf tools: Introduce perf_evlist__mmap_cb_idx() (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist_mmap_ops::mmap callback (Michael Petlan) [1818838] - [tools] libperf: Add perf_evlist_mmap_ops::get callback (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist_mmap_ops::idx callback (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__mmap_ops() (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_evlist__mmap()/munmap() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__read_event() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__read_done() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__read_init() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__consume() function from tools/perf (Michael Petlan) [1818838] - [tools] perf tools: Use perf_mmap way to detect aux mmap (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__put() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__unmap() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__get() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__mmap() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__mmap_len() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Add 'struct perf_mmap_param' (Michael Petlan) [1818838] - [tools] libperf: Add perf_mmap__init() function (Michael Petlan) [1818838] - [tools] perf tools: Avoid 'sample_reg_masks' being const + weak (Michael Petlan) [1818838] - [tools] perf beauty: Introduce strtoul() for x86 MSRs (Michael Petlan) [1818838] - [tools] perf trace: Expand strings in filters to integers (Michael Petlan) [1818838] - [tools] perf trace: Introduce a strtoul() method for 'struct strarrays' (Michael Petlan) [1818838] - [tools] perf trace: Add a strtoul() method to 'struct syscall_arg_fmt' (Michael Petlan) [1818838] - [tools] perf trace: Introduce --filter for tracepoint events (Michael Petlan) [1818838] - [tools] perf evlist: Introduce append_tp_filter_pid() and append_tp_filter_pids() (Michael Petlan) [1818838] - [tools] perf evlist: Introduce append_tp_filter() method (Michael Petlan) [1818838] - [tools] perf evlist: Factor out asprintf routine to build a tracepoint pid filter (Michael Petlan) [1818838] - [tools] perf trace: Associate the "msr" tracepoint arg name with x86_MSR__scnprintf() (Michael Petlan) [1818838] - [tools] perf trace beauty: Add the glue for the autogenerated MSR arrays (Michael Petlan) [1818838] - [tools] perf trace: Allow associating scnprintf routines with well known arg names (Michael Petlan) [1818838] - [tools] perf beauty: Hook up the x86 MSR table generator (Michael Petlan) [1818838] - [tools] perf trace beauty: Add a x86 MSR cmd id->str table generator (Michael Petlan) [1818838] - [tools] perf beauty: Make strarray's offset be u64 (Michael Petlan) [1818838] - [tools] perf trace: Allow choosing how to augment the tracepoint arguments (Michael Petlan) [1818838] - [tools] perf trace: Enclose all events argument lists with () (Michael Petlan) [1818838] - [tools] perf trace: Add array of chars scnprintf beautifier (Michael Petlan) [1818838] - [tools] perf trace: Add the syscall_arg_fmt pointer to syscall_arg (Michael Petlan) [1818838] - [tools] perf trace: Move some scnprintf methods from syscall to syscall_arg_fmt (Michael Petlan) [1818838] - [tools] perf trace: Allocate an array of beautifiers for tracepoint args (Michael Petlan) [1818838] - [tools] perf trace: Factor out the initialization of syscal_arg_fmt->scnprintf (Michael Petlan) [1818838] - [tools] perf script: Allow --time with --reltime (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add Time chart by CPU (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add ability for Call tree to open at a specified task and time (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Tidy up Call tree call_time (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add global time range calculations (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add HBoxLayout and VBoxLayout (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add LookupModel() (Michael Petlan) [1818838] - [tools] perf trace augmented_syscalls: Do not show syscalls when none was asked for (Michael Petlan) [1818838] - [tools] perf trace: Postpone parsing .perfconfig trace.add_events to after --verbose is processed (Michael Petlan) [1818838] - [tools] perf trace: Generalize the syscall_fmt find routines (Michael Petlan) [1818838] - [tools] perf trace: Separate 'struct syscall_fmt' definition from syscall_fmts variable (Michael Petlan) [1818838] - [tools] perf trace: Make evlist__set_evsel_handler() affect just entries without a handler (Michael Petlan) [1818838] - [tools] perf evlist: Adopt __set_tracepoint_handlers method from perf_session (Michael Petlan) [1818838] - [tools] perf top: Initialize perf_env->cpuid, needed by the per arch annotation init routine (Michael Petlan) [1818838] - [tools] perf env: Add routine to read the env->cpuid from the running machine (Michael Petlan) [1818838] - [kernel] perf/cgroups: Install cgroup events to correct cpuctx (Michael Petlan) [1818838] - [kernel] perf/core: Fix mlock accounting in perf_mmap() (Michael Petlan) [1818838] - [x86] perf/x86/intel/uncore: Remove PCIe3 unit for SNR (Michael Petlan) [1818838] - [x86] perf/x86/intel/uncore: Fix missing marker for snr_uncore_imc_freerunning_events (Michael Petlan) [1818838] - [x86] perf/x86/intel/uncore: Add PCI ID of IMC for Xeon E3 V5 Family (Michael Petlan) [1818838] - [kernel] perf: Correctly handle failed perf_get_aux_event() (Michael Petlan) [1818838] - [x86] perf/x86/intel: Fix PT PMI handling (Michael Petlan) [1818838] - [x86] perf/x86/intel/bts: Fix the use of page_private() (Michael Petlan) [1818838] - [x86] perf/x86: Fix potential out-of-bounds access (Michael Petlan) [1818838] - [x86] perf/x86: Implement immediate enforcement of /sys/devices/cpu/rdpmc value of 0 (Michael Petlan) [1818838] - [kernel] perf/core: Make the mlock accounting simple again (Michael Petlan) [1818838] - [kernel] perf/core: Fix the mlock accounting, again (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Prevent redundant WRMSRs (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Opportunistically use single range output mode (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Add sampling support (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Factor out pt_config_start() (Michael Petlan) [1818838] - [kernel] perf/aux: Allow using AUX data in perf samples (Michael Petlan) [1818838] - [kernel] perf/core: Fix unlock balance in perf_init_event() (Michael Petlan) [1818838] - [x86] perf/x86/amd: Remove set but not used variable 'active' (Michael Petlan) [1818838] - [kernel] perf/core: Optimize perf_init_event() for TYPE_SOFTWARE (Michael Petlan) [1818838] - [kernel] perf/core: Optimize perf_init_event() (Michael Petlan) [1818838] - [kernel] perf/core: Optimize perf_install_in_event() (Michael Petlan) [1818838] - [x86] perf/x86: Synchronize PMU task contexts on optimized context switches (Michael Petlan) [1818838] - [x86] perf/x86/intel: Implement LBR callstack context synchronization (Michael Petlan) [1818838] - [x86] perf/x86: Install platform specific ->swap_task_ctx() adapter (Michael Petlan) [1818838] - [x86] perf/core, perf/x86: Introduce swap_task_ctx() method at 'struct pmu' (Michael Petlan) [1818838] - [kernel] perf/ring_buffer: Matching the memory allocate and free, in rb_alloc() (Michael Petlan) [1818838] - [kernel] perf/ring_buffer: Modify the parameter type of perf_mmap_free_page() (Michael Petlan) [1818838] - [documentation] Documentation: Document sysfs interfaces purr, spurr, idle_purr, idle_spurr (Steve Best) [1783286] - [powerpc] powerpc/sysfs: Show idle_purr and idle_spurr for every CPU (Steve Best) [1783286] - [powerpc] powerpc/pseries: Account for SPURR ticks on idle CPUs (Steve Best) [1783286] - [powerpc] powerpc/idle: Store PURR snapshot in a per-cpu global variable (Steve Best) [1783286] - [powerpc] powerpc: Move idle_loop_prolog()/epilog() functions to header file (Steve Best) [1783286] - [kernel] padata: add separate cpuhp node for CPUHP_PADATA_DEAD (Herbert Xu) [1671674] - [kernel] padata: fix uninitialized return value in padata_replace() (Herbert Xu) [1671674] - [kernel] padata: remove reorder_objects (Herbert Xu) [1671674] - [crypto] padata: remove cpumask change notifier (Herbert Xu) [1671674] - [kernel] padata: always acquire cpu_hotplug_lock before pinst->lock (Herbert Xu) [1671674] - [kernel] padata: validate cpumask without removed CPU during offline (Herbert Xu) [1671674] - [crypto] crypto: pcrypt - Avoid deadlock by using per-instance padata queues (Herbert Xu) [1671674] - [kernel] padata: Remove unused padata_remove_cpu (Herbert Xu) [1671674] - [crypto] crypto: pcrypt - Fix user-after-free on module unload (Herbert Xu) [1671674] - [kernel] padata: Remove broken queue flushing (Herbert Xu) [1671674] - [kernel] padata: remove cpu_index from the parallel_queue (Herbert Xu) [1671674] - [kernel] padata: unbind parallel jobs from specific CPUs (Herbert Xu) [1671674] - [kernel] padata: use separate workqueues for parallel and serial work (Herbert Xu) [1671674] - [crypto] padata, pcrypt: take CPU hotplug lock internally in padata_alloc_possible (Herbert Xu) [1671674] - [crypto] crypto: pcrypt - remove padata cpumask notifier (Herbert Xu) [1671674] - [crypto] padata: make padata_do_parallel find alternate callback CPU (Herbert Xu) [1671674] - [kernel] workqueue: require CPU hotplug read exclusion for apply_workqueue_attrs (Herbert Xu) [1671674] - [kernel] workqueue: unconfine alloc/apply/free_workqueue_attrs() (Herbert Xu) [1671674] - [crypto] padata: allocate workqueue internally (Herbert Xu) [1671674] - [kernel] padata: initialize pd->cpu with effective cpumask (Herbert Xu) [1671674] - [kernel] padata: purge get_cpu and reorder_via_wq from padata_do_serial (Herbert Xu) [1671674] - [kernel] padata: Replace delayed timer with immediate workqueue in padata_reorder (Herbert Xu) [1671674] - [kernel] padata: use smp_mb in padata_reorder to avoid orphaned padata jobs (Herbert Xu) [1671674] - [kernel] tracing: Avoid memory leak in process_system_preds() (Jerome Marchand) [1829953] {CVE-2019-19072} - [kernel] tracing: Have error path in predicate_parse() free its allocated memory (Jerome Marchand) [1829953] {CVE-2019-19072} - [kernel] tracing: Avoid memory leak in predicate_parse() (Jerome Marchand) [1829953] {CVE-2019-19072} - [kernel] tracing: Fix memory leak in create_filter() (Jerome Marchand) [1829953] {CVE-2019-19072} - [tools] KVM: selftests: s390x: Provide additional num-guest-pages adjustment (Philipp Rudo) [1792266] - [s390] s390/protvirt: fix compilation issue (Philipp Rudo) [1792266] - [kvm] KVM: s390: Fix PV check in deliverable_irqs() (Philipp Rudo) [1792266] - [kvm] KVM: s390: Return last valid slot if approx index is out-of-bounds (Philipp Rudo) [1792266] - [kvm] KVM: s390: vsie: Fix delivery of addressing exceptions (Philipp Rudo) [1792266] - [mm] s390/gmap: return proper error code on ksm unsharing (Philipp Rudo) [1792266] - [s390] KVM: s390: mark sie block as 512 byte aligned (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: check for registers to NOT change on reset (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: test more register variants for the reset ioctl (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: fix early guest crash (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: fixup fprintf format error in reset.c (Philipp Rudo) [1792266] - [kvm] KVM: s390: Also reset registers in sync regs for initial cpu reset (Philipp Rudo) [1792266] - [kvm] KVM: s390: introduce module parameter kvm.use_gisa (Philipp Rudo) [1792266] - [documentation] KVM: s390: protvirt: Add KVM api documentation (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: introduce and enable KVM_CAP_S390_PROTECTED (Philipp Rudo) [1792266] - [documentation] DOCUMENTATION: Protected virtual machine introduction and IPL (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add UV cpu reset calls (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: do not inject interrupts after start (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Mask PSW interrupt bits for interception 104 and 112 (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Support cmd 5 operation state (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Report CPU state to Ultravisor (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: UV calls in support of diag308 0, 1 (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add program exception injection (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Only sync fmt4 registers (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Do only reset registers that are accessible (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: disallow one_reg (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: STSI handling (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Write sthyi data to instruction data area (Philipp Rudo) [1792266] - [kvm] KVM: s390/mm: handle guest unpin events (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: handle secure guest prefix pages (Philipp Rudo) [1792266] - [kvm] KVM: S390: protvirt: Introduce instruction data area bounce buffer (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add new gprs location handling (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Handle spec exception loops (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add SCLP interrupt handling (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Implement interrupt injection (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Instruction emulation (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Handle SE notification interceptions (Philipp Rudo) [1792266] - [mm] KVM: s390/mm: Make pages accessible before destroying the guest (Philipp Rudo) [1792266] - [mm] KVM: s390: protvirt: Secure memory is not mergeable (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add initial vm and cpu lifecycle handling (Philipp Rudo) [1792266] - [s390] KVM: s390: add new variants of UV CALL (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add UV debug trace (Philipp Rudo) [1792266] - [kvm] KVM: s390/interrupt: do not pin adapter interrupt pages (Philipp Rudo) [1792266] - [s390] s390/protvirt: Add sysfs firmware interface for Ultravisor information (Philipp Rudo) [1792266] - [s390] s390/mm: add (non)secure page access exceptions handlers (Philipp Rudo) [1792266] - [s390] s390/mm: provide memory management functions for protected KVM guests (Philipp Rudo) [1792266] - [s390] s390/protvirt: add ultravisor initialization (Philipp Rudo) [1792266] - [s390] s390/protvirt: introduce host side setup (Philipp Rudo) [1792266] - [documentation] KVM: s390: rstify new ioctls in api.rst (Philipp Rudo) [1792266] - [s390] s390/uv: Fix handling of length extensions (Philipp Rudo) [1792266] - [tools] selftests: KVM: testing the local IRQs resets (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390x: Add reset tests (Philipp Rudo) [1792266] - [kvm] KVM: s390: Add new reset vcpu API (Philipp Rudo) [1792266] - [kvm] KVM: s390: Cleanup initial cpu reset (Philipp Rudo) [1792266] - [kvm] KVM: s390: do not clobber registers during guest reset/store status (Philipp Rudo) [1792266] - [kvm] KVM: s390: ENOTSUPP -> EOPNOTSUPP fixups (Philipp Rudo) [1792266] - [s390] s390/uv: use EOPNOTSUPP instead of ENOTSUPP (Philipp Rudo) [1792266] - [kvm] KVM: s390: Do not yield when target is already running (Philipp Rudo) [1792266] - [kvm] KVM: s390: count invalid yields (Philipp Rudo) [1792266] - [kvm] KVM: s390: mark __insn32_query() as __always_inline (Philipp Rudo) [1792266] - [kvm] KVM: s390: fix __insn32_query() inline assembly (Philipp Rudo) [1792266] - [kvm] KVM: s390: Cleanup kvm_arch_init error path (Philipp Rudo) [1792266] - [kvm] KVM: s390: Remove unused parameter from __inject_sigp_restart() (Philipp Rudo) [1792266] - [mm] mm/gup/writeback: add callbacks for inaccessible pages (Philipp Rudo) [1792266] - [scsi] scsi: libiscsi: fall back to sendmsg for slab pages (Maurizio Lombardi) [1825775] - [fs] smb3: fix default permissions on new files when mounting with modefromsid (Leif Sahlberg) [1833374] - [fs] gfs2: don't call quota_unhold if quotas are not locked (Robert S Peterson) [1830043] - [fs] gfs2: move privileged user check to gfs2_quota_lock_check (Robert S Peterson) [1830043] - [fs] gfs2: remove check for quotas on in gfs2_quota_check (Robert S Peterson) [1830043] - [fs] gfs2: Change BUG_ON to an assert_withdraw in gfs2_quota_change (Robert S Peterson) [1830043] - [fs] gfs2: Fix problems regarding gfs2_qa_get and _put (Robert S Peterson) [1830043] - [powerpc] powerpc/eeh: Fix deadlock handling dead PHB (Sam Bobroff) [1774820] - [powerpc] powerpc/powernv/eeh: Fix oops when probing cxl devices (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Slightly simplify eeh_add_to_parent_pe() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Remove unused return path from eeh_pe_dev_traverse() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Fix crash when edev->pdev changes (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Convert log messages to eeh_edev_* macros (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Introduce EEH edev logging macros (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Add bdfn field to eeh_dev (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Refactor around eeh_probe_devices() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: EEH for pSeries hot plug (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Initialize EEH address cache earlier (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Improve debug messages around device addition (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Clear stale EEH_DEV_NO_HANDLER flag (Sam Bobroff) [1774820] - [powerpc] powerpc/64: Adjust order in pcibios_init() (Sam Bobroff) [1774820] - [powerpc] powerpc/pci: Add pci_find_controller_for_domain() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh_cache: Bump log level of eeh_addr_cache_print() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh_cache: Add pr_debug() prints for insert/remove (Sam Bobroff) [1774820]- [gpio] gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 CHT + AXP288 model (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 BYT + AXP288 model (David Arcari) [1829900] - [gpio] gpiolib: acpi: Rework honor_wakeup option into an ignore_wake option (David Arcari) [1829900] - [gpio] gpiolib: acpi: Correct comment for HP x2 10 honor_wakeup quirk (David Arcari) [1829900] - [gpio] gpiolib: Fix irq_disable() semantics (David Arcari) [1829900] - [gpio] gpiolib: fix gpio_do_set_config() (David Arcari) [1829900] - [gpio] gpiolib: remove unnecessary argument from set_config call (David Arcari) [1829900] - [gpio] Revert "gpiolib: remove set but not used variable 'config'" (David Arcari) [1829900] - [gpio] Revert "gpiolib: Remove duplicated function gpio_do_set_config()" (David Arcari) [1829900] - [gpio] treewide: remove redundant IS_ERR() before error code check (David Arcari) [1829900] - [gpio] gpiolib: hold gpio devices lock until ->descs array is initialised (David Arcari) [1829900] - [gpio] gpio: Drop the chained IRQ handler assign function (David Arcari) [1829900] - [gpio] gpio: xlp: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [pinctrl] pinctrl: qcom: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [pinctrl] pinctrl: iproc: allow for error from platform_get_irq() (David Arcari) [1829900] - [pinctrl] pinctrl: bcm-iproc: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [gpio] gpio: pl061: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [gpio] gpio: pl061: Move irq_chip definition inside struct pl061 (David Arcari) [1829900] - [gpio] gpiolib: Lower verbosity when allocating hierarchy irq (David Arcari) [1829900] - [gpio] gpiolib: Remove duplicated function gpio_do_set_config() (David Arcari) [1829900] - [include] gpio: Fix the no return statement warning (David Arcari) [1829900] - [gpio] gpiolib: remove set but not used variable 'config' (David Arcari) [1829900] - [gpio] gpiolib: Set lockdep class for hierarchical irq domains (David Arcari) [1829900] - [gpio] gpiolib: Add the support for the msi parent domain (David Arcari) [1829900] - [gpio] gpiolib: Add support for the irqdomain which doesn't use irq_fwspec as arg (David Arcari) [1829900] - [gpio] gpiolib: use gpiochip_get_desc() in gpio_ioctl() (David Arcari) [1829900] - [gpio] gpiolib: use gpiochip_get_desc() in lineevent_create() (David Arcari) [1829900] - [gpio] gpiolib: use gpiochip_get_desc() in linehandle_create() (David Arcari) [1829900] - [gpio] gpiolib: convert the type of hwnum to unsigned int in gpiochip_get_desc() (David Arcari) [1829900] - [gpio] gpiolib: have a single place of calling set_config() (David Arcari) [1829900] - [gpio] gpiolib: use 'unsigned int' instead of 'unsigned' in gpio_set_config() (David Arcari) [1829900] - [gpio] gpio: gpiolib: fix confusing indention (David Arcari) [1829900] - [mmc] mmc: core: Rework cd-gpio handling (David Arcari) [1829900] - [mmc] mmc: core: Rework wp-gpio handling (David Arcari) [1829900] - [gpio] gpio: add gpiod_toggle_active_low() (David Arcari) [1829900] - [gpio] gpiolib: Make use of assign_bit() API (David Arcari) [1829900] - [gpio] gpiolib: Add GPIOCHIP_NAME definition (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add honor_wakeup module-option + quirk mechanism (David Arcari) [1829900] - [gpio] gpiolib: acpi: Turn dmi_system_id table into a generic quirk table (David Arcari) [1829900] - [gpio] gpiolib: fix up emulated open drain outputs (David Arcari) [1829900] - [gpio] gpio: Fix error message on out-of-range GPIO in lookup table (David Arcari) [1829900] - [gpio] gpiolib: of: Make of_gpio_spi_cs_get_count static (David Arcari) [1829900] - [gpio] gpio: Handle counting of Freescale chipselects (David Arcari) [1829900] - [gpio] gpio: of: Fix bogus reference to gpiod_get_count() (David Arcari) [1829900] - [gpio] gpiolib: Grammar s/manager/managed/ (David Arcari) [1829900] - [gpio] gpiolib: acpi: Make acpi_gpiochip_alloc_event always return AE_OK (David Arcari) [1829900] - [gpio] gpiolib: acpi: Print pin number on acpi_gpiochip_alloc_event errors (David Arcari) [1829900] - [gpio] gpiolib: fix coding style in gpiod_hog() (David Arcari) [1829900] - [gpio] gpio: add new SET_CONFIG ioctl() to gpio chardev (David Arcari) [1829900] - [gpio] gpiolib: move validation of line handle flags into helper function (David Arcari) [1829900] - [gpio] gpiolib: add support for biasing output lines (David Arcari) [1829900] - [gpio] gpiolib: add support for disabling line bias (David Arcari) [1829900] - [gpio] gpiolib: add support for pull up/down to lineevent_create (David Arcari) [1829900] - [gpio] gpio: expose pull-up/pull-down line flags to userspace (David Arcari) [1829900] - [gpio] Revert "gpio: expose pull-up/pull-down line flags to userspace" (David Arcari) [1829900] - [gpio] gpiolib: No need to call gpiochip_remove_pin_ranges() twice (David Arcari) [1829900] - [include] gpio: Add definition for GPIO direction (David Arcari) [1829900] - [gpio] gpiolib: Switch order of valid mask and hw init (David Arcari) [1829900] - [gpio] gpio: of: don't warn if ignored GPIO flag matches the behavior (David Arcari) [1829900] - [gpio] gpio: fix kernel-doc for of_gpio_need_valid_mask() (David Arcari) [1829900] - [gpio] gpio: expose pull-up/pull-down line flags to userspace (David Arcari) [1829900] - [gpio] gpiolib: introduce fwnode_gpiod_get_index() (David Arcari) [1829900] - [gpio] gpiolib: introduce devm_fwnode_gpiod_get_index() (David Arcari) [1829900] - [gpio] gpiolib: sanitize flags before allocating memory in lineevent_create() (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add Terra Pad 1061 to the run_edge_events_on_boot_blacklist (David Arcari) [1829900] - [gpio] gpio: fix getting nonexclusive gpiods from DT (David Arcari) [1829900] - [gpio] gpiolib: don't clear FLAG_IS_OUT when emulating open-drain/open-source (David Arcari) [1829900] - [gpio] gpiolib: of: add a fallback for wlf, reset GPIO name (David Arcari) [1829900] - [gpio] gpio: remove explicit comparison with 0 (David Arcari) [1829900] - [gpio] gpio: devres: Switch to EXPORT_SYMBOL_GPL() (David Arcari) [1829900] - [gpio] gpio: of: Switch to EXPORT_SYMBOL_GPL() (David Arcari) [1829900] - [gpio] gpio: of: Make of_gpio_simple_xlate() private (David Arcari) [1829900] - [gpio] gpio: of: Make of_get_named_gpiod_flags() private (David Arcari) [1829900] - [gpio] gpiolib: acpi: make acpi_can_fallback_to_crs() static (David Arcari) [1829900] - [gpio] gpio: of: Normalize return code variable name (David Arcari) [1829900] - [gpio] gpio: gpiolib: Normalize return code variable name (David Arcari) [1829900] - [include] gpio: Move gpiochip_lock/unlock_as_irq to gpio/driver.h (David Arcari) [1829900] - [gpio] gpio: Use callback presence to determine need of valid_mask (David Arcari) [1829900] - [gpio] gpio: Pass mask and size with the init_valid_mask() (David Arcari) [1829900] - [pinctrl] pinctrl: msm: Add ability for drivers to supply a reserved GPIO list (David Arcari) [1829900] - [pinctrl] pinctrl: msm: Use init_valid_mask exported function (David Arcari) [1829900] - [include] gpio: stubs in headers should be inline (David Arcari) [1829900] - [gpio] gpio: Add support for hierarchical IRQ domains (David Arcari) [1829900] - [kernel] genirq: introduce irq_domain_translate_twocell (David Arcari) [1829900] - [gpio] gpio: refactor gpiochip_allocate_mask() with bitmap_alloc() (David Arcari) [1829900] - [gpio] gpio: of: Fix hard-assigned valid_mask for OF case (David Arcari) [1829900] - [sound] gpiolib-acpi: Move acpi_dev_add_driver_gpios() et al to consumer.h (David Arcari) [1829900] - [gpio] gpiolib: acpi: Split ACPI stuff to gpiolib-acpi.h (David Arcari) [1829900] - [include] gpiolib: of: Reshuffle contents of consumer.h for new library layout (David Arcari) [1829900] - [include] pinctrl: remove unneeded #ifdef around declarations (David Arcari) [1829900] - [hwmon] hwmon: pmbus: ucd9000: remove unneeded include (David Arcari) [1829900] - [include] gpio: remove less important #ifdef around declarations (David Arcari) [1829900] - [gpio] gpio: of: Break out OF-only code (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add gpiolib_acpi_run_edge_events_on_boot option and blacklist (David Arcari) [1829900] - [gpio] gpiolib: of: fix fallback quirks handling (David Arcari) [1829900] - [gpio] gpio: fix line flag validation in lineevent_create (David Arcari) [1829900] - [gpio] gpio: fix line flag validation in linehandle_create (David Arcari) [1829900] - [gpio] gpio: Fix irqchip initialization order (David Arcari) [1829900] - [gpio] gpio: of: fix Freescale SPI CS quirk handling (David Arcari) [1829900] - [gpio] gpiolib: never report open-drain/source lines as 'input' to user-space (David Arcari) [1829900] - [include] gpio: Fix build error of function redefinition (David Arcari) [1829900] - [gpio] gpiolib: Preserve desc->flags when setting state (David Arcari) [1829900] - [include] gpio: don't WARN() on NULL descs if gpiolib is disabled (David Arcari) [1829900] - [gpio] gpiolib: fix incorrect IRQ requesting of an active-low lineevent (David Arcari) [1829900] - [gpio] Revert "gpio/spi: Fix spi-gpio regression on active high CS" (David Arcari) [1829900] - [gpio] gpiolib: of: fix a memory leak in of_gpio_flags_quirks() (David Arcari) [1829900] - [gpio] gpiolib: Use spinlock_t instead of struct spinlock (David Arcari) [1829900] - [gpio] gpiolib: Clarify use of non-sleeping functions (David Arcari) [1829900] - [gpio] gpiolib: Fix references to gpiod_et_*value_cansleep() variants (David Arcari) [1829900] - [include] gpiolib: Document new gpio_chip.init_valid_mask field (David Arcari) [1829900] - [gpio] gpio/spi: Fix spi-gpio regression on active high CS (David Arcari) [1829900] - [gpio] gpio: No need to cast away return value of debugfs_create_file() (David Arcari) [1829900] - [include] gpio: Add comments on #if/#else/#endif (David Arcari) [1829900] - [regulator] gpio: Fix return value mismatch of function gpiod_get_from_of_node() (David Arcari) [1829900] - [gpio] gpio: Drop the parent_irq from gpio_irq_chip (David Arcari) [1829900] - [gpio] gpio: of: parse stmmac PHY reset line specific active-low property (David Arcari) [1829900] - [gpio] gpio: pass lookup and descriptor flags to request_own (David Arcari) [1829900] - [gpio] gpio: of: Handle the Freescale SPI CS (David Arcari) [1829900] - [gpio] gpio: Fix gpiochip_add_data_with_key() error path (David Arcari) [1829900] - [gpio] gpiolib: acpi: Respect pin bias setting (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add acpi_gpio_update_gpiod_lookup_flags() helper (David Arcari) [1829900] - [gpio] gpiolib: acpi: Set pin value, based on bias, more accurately (David Arcari) [1829900] - [gpio] gpiolib: acpi: Change type of dflags (David Arcari) [1829900] - [gpio] gpiolib: Introduce GPIO_LOOKUP_FLAGS_DEFAULT (David Arcari) [1829900] - [gpio] gpiolib: Make use of enum gpio_lookup_flags consistent (David Arcari) [1829900] - [include] gpiolib: Indent entry values of enum gpio_lookup_flags (David Arcari) [1829900] - [gpio] gpio: of: Optimize quirk checks (David Arcari) [1829900] - [gpio] gpio: mmio: Drop bgpio_dir_inverted (David Arcari) [1829900] - [gpio] gpio: Set proper argument value to set_config (David Arcari) [1829900] - [gpio] gpio: Remove obsolete comment about gpiochip_free_hogs() usage (David Arcari) [1829900] - [gpio] gpio: mmio: Fix bgpio_get_set & bgpio_get_set_multiple (David Arcari) [1829900] - [gpio] gpio: mmio: Support two direction registers (David Arcari) [1829900] - [gpio] gpiolib: Don't WARN on gpiod_put() for optional GPIO (David Arcari) [1829900] - [gpio] gpiolib: acpi: Fix references in kernel doc and amend (David Arcari) [1829900] - [gpio] gpio: of: Fix of_gpiochip_add() error path (David Arcari) [1829900] - [gpio] gpio: of: Check for "spi-cs-high" in child instead of parent node (David Arcari) [1829900] - [gpio] gpio: of: Check propname before applying "cs-gpios" quirks (David Arcari) [1829900] - [gpio] Revert "gpio: use new gpio_set_config() helper in more places" (David Arcari) [1829900] - [gpio] gpio: of: Handle both enable-gpio{,s} (David Arcari) [1829900] - [gpio] gpio: of: Restrict enable-gpio quirk to regulator-gpio (David Arcari) [1829900] - [gpio] gpio: of: Apply regulator-gpio quirk only to enable-gpios (David Arcari) [1829900] - [gpio] gpio: add core support for pull-up/pull-down configuration (David Arcari) [1829900] - [gpio] gpio: use new gpio_set_config() helper in more places (David Arcari) [1829900] - [gpio] gpio: rename gpio_set_drive_single_ended() to gpio_set_config() (David Arcari) [1829900] - [gpio] gpiolib: acpi: Correct kernel doc of struct acpi_gpio_event (David Arcari) [1829900] - [gpio] gpio: of: Fix logic inversion (David Arcari) [1829900] - [gpio] gpio: add irq domain activate/deactivate functions (David Arcari) [1829900] - [gpio] gpiolib: fix line event timestamps for nested irqs (David Arcari) [1829900] - [gpio] gpiolib-acpi: Preserve non direction flags when updating gpiod_flags (David Arcari) [1829900] - [gpio] gpiolib-acpi: Remove unnecessary WARN_ON from acpi_gpiochip_free_interrupts (David Arcari) [1829900] - [gpio] gpiolib-acpi: remove unused variable 'err', cleans up build warning (David Arcari) [1829900] - [mmc] mmc: core: don't override the CD GPIO level when "cd-inverted" is set (David Arcari) [1829900] - [arm64] arm64: dts: meson: Fix mmc cd-gpios polarity (David Arcari) [1829900] - [gpio] gpio/mmc/of: Respect polarity in the device tree (David Arcari) [1829900] - [include] gpiolib: Fix return value of gpio_to_desc() stub if !GPIOLIB (David Arcari) [1829900] - [documentation] Documentation: gpio: fix function links in the HTML docs (David Arcari) [1829900] - [documentation] docs: driver-model: convert docs to ReST and rename to *.rst (David Arcari) [1829900] - [documentation] docs: gpio: driver.rst: fix a bad tag (David Arcari) [1829900] - [documentation] gpio: Fix minor grammar errors in documentation (David Arcari) [1829900] - [documentation] gpio: Update documentation (David Arcari) [1829900] - [gpio] gpio: Pass a flag to gpiochip_request_own_desc() (David Arcari) [1829900] - [gpio] gpio: Add devm_gpiod_unhinge() (David Arcari) [1829900] - [gpio] gpio: devres: Handle nonexclusive GPIOs (David Arcari) [1829900] - [gpio] gpio: Enable nonexclusive gpiods from DT nodes (David Arcari) [1829900] - [gpio] gpiolib-acpi: Only defer request_irq for GpioInt ACPI event handlers (David Arcari) [1829900] - [gpio] gpio: OF: Parse MMC-specific CD and WP properties (David Arcari) [1829900] - [gpio] gpio: restore original GPLv2+ license of gpiolib-of.c sources (David Arcari) [1829900] - [include] gpio: drop broken to_gpio_irq_chip() helper (David Arcari) [1829900] - [gpio] gpio: drop devm_gpio_chip_match() (David Arcari) [1829900] - [gpio] gpio: don't free unallocated ida on gpiochip_add_data_with_key() error path (David Arcari) [1829900] - [gpio] gpiolib: Fix possible use after free on label (David Arcari) [1829900] - [documentation] Documentation: gpio: driver: fix wire name for I2C (David Arcari) [1829900] - [documentation] gpio/driver.rst: document gpiochip_disable/enable_irq() (David Arcari) [1829900] - [gpio] gpio: drop devm_gpiochip_remove() (David Arcari) [1829900] - [gpio] gpio: Clarify kerneldoc on gpiochip_set_chained_irqchip() (David Arcari) [1829900] - [gpio] gpio: Remove unused 'irqchip' argument to gpiochip_set_cascaded_irqchip() (David Arcari) [1829900] - [gpio] gpio: Drop parent irq assignment during cascade setup (David Arcari) [1829900] - [gpio] gpiolib: Initialize gdev field before is used (David Arcari) [1829900] - [gpio] gpio: Assign gpio_irq_chip::parents to non-stack pointer (David Arcari) [1829900] - [gpio] gpio: fix doc string for devm_gpiochip_add_data() to not talk about irq_chip (David Arcari) [1829900] - [gpio] gpio: mockup: fix indicated direction (David Arcari) [1829900] - [gpio] gpiolib: Show correct direction from the beginning (David Arcari) [1829900] - [gpio] gpiolib: Add init_valid_mask exported function (David Arcari) [1829900] - [gpio] gpio: Slightly more helpful debugfs (David Arcari) [1829900] - [gpio] Accept partial 'gpio-line-names' property (David Arcari) [1829900] - [gpio] gpio: Restore indentation of continued lines (David Arcari) [1829900] - [gpio] gpio: Propagate errors from gpiod_set_array_value_complex() (David Arcari) [1829900] - [gpio] gpiolib: Fix incorrect use of find_next_zero_bit() (David Arcari) [1829900] - [gpio] gpiolib: Fix missing updates of bitmap index (David Arcari) [1829900] - [gpio] gpio: Add comments on single direction chips (David Arcari) [1829900] - [gpio] gpiolib: Fix gpio_direction_* for single direction GPIOs (David Arcari) [1829900] - [gpio] gpio: Rename devres implementation file (David Arcari) [1829900] - [gpio] gpio: Use SPDX header for core library (David Arcari) [1829900] - [gpio] gpiolib: Fix array members of same chip processed separately (David Arcari) [1829900] - [gpio] gpiolib: Free the last requested descriptor (David Arcari) [1829900] - [gpio] gpio: Get rid of legacy header (David Arcari) [1829900] - [gpio] gpiolib: check if irqchip already has the irq hook replacements (David Arcari) [1829900] - [gpio] gpiolib: use better errno if get_direction is not available (David Arcari) [1829900] - [documentation] gpiolib: Implement fast processing path in get/set array (David Arcari) [1829900] - [documentation] Documentation: gpio: Fix reference to gpiod_get_array() (David Arcari) [1829900] - [gpio] gpiolib: Pass array info to get/set array functions (David Arcari) [1829900] - [gpio] gpiolib: Identify arrays matching GPIO hardware (David Arcari) [1829900] - [gpio] gpiolib: Pass bitmaps, not integer arrays, to get/set array (David Arcari) [1829900] - [gpio] gpiolib: Don't support irq sharing for userspace (David Arcari) [1829900] - [gpio] gpio: of: Handle SPI chipselect legacy bindings (David Arcari) [1829900] - [gpio] gpiolib: override irq_enable/disable (David Arcari) [1829900] - [gpio] gpiolib: add flag to indicate if the irq is disabled (David Arcari) [1829900] - [gpio] gliolib: set hooks in gpiochip_set_irq_hooks() (David Arcari) [1829900] - [gpio] gpiolib: export gpiochip_irq_reqres/relres() (David Arcari) [1829900] - [include] gpio: fix kernel-doc notation warning for 'request_key' (David Arcari) [1829900] - [gpio] gpio: Fix crash due to registration race (David Arcari) [1829900] - [gpio] gpio: Convert to using pOFn instead of device_node.name (David Arcari) [1829900] - [gpio] gpiolib-acpi: Register GpioInt ACPI event handlers from a late_initcall (David Arcari) [1829900] - [gpio] gpiolib: acpi: Switch to cansleep version of GPIO library call (David Arcari) [1829900] - [gpio] gpiolib: Avoid calling chip->request() for unused gpios (David Arcari) [1829900] - [gpio] gpio: mmio: Fix up inverted direction registers (David Arcari) [1829900] - [gpio] gpiolib: Fix of_node inconsistency (David Arcari) [1829900] - [gpio] gpiolib: Don't shadow error code of gpiochip_lock_as_irq() (David Arcari) [1829900] - [include] gpiolib: Use GPIOD_OUT_{LOW, HIGH} macros in open drain ones (David Arcari) [1829900] - [gpio] gpiolib: probe deferral error reporting (David Arcari) [1829900] - [include] Input: gpio_keys - add missing include to gpio_keys.h (David Arcari) [1829900] - [gpio] gpiolib: remove an unnecessary TODO (David Arcari) [1829900] - [gpio] gpiolib: don't allow userspace to set values of input lines (David Arcari) [1829900] - [gpio] gpiolib: Join one line back for better readability (David Arcari) [1829900] - [gpio] gpiolib: Consistent use of ->get_direction() inside gpiolib (David Arcari) [1829900] - [gpio] gpiolib: Defer on non-DT find_chip_by_name() failure (David Arcari) [1829900] - [gpio] gpiolib: Respect error code of ->get_direction() (David Arcari) [1829900] - [gpio] gpiolib: Join string literals back (David Arcari) [1829900] - [include] gpio.h: fix location of gpio legacy documentation (David Arcari) [1829900] - [fs] gfs2: Fix use-after-free in gfs2_logd after withdraw (Robert S Peterson) [1831695] - [fs] gfs2: Fix BUG during unmount after file system withdraw (Robert S Peterson) [1831695] - [fs] gfs2: Fix error exit in do_xmote (Robert S Peterson) [1831695] - [fs] gfs2: fix withdraw sequence deadlock (Robert S Peterson) [1831695] - [mm] s390/mm: fix page table upgrade vs 2ndary address mode accesses (Vladis Dronov) [1828154] {CVE-2020-11884} - [media] media: serial_ir: Fix use-after-free in serial_ir_init_module (Vladis Dronov) [1802396] {CVE-2019-19543} - [mm] mm/memory_hotplug: fix remove_memory() lockdep splat (Christoph von Recklinghausen) [1830942] - [mm] mm/page_alloc.c: initialize memmap of unavailable memory directly (Christoph von Recklinghausen) [1782827] - [fs] fs/proc/page.c: allow inspection of last section and fix end detection (Christoph von Recklinghausen) [1782827] - [mm] mm/page_alloc.c: fix uninitialized memmaps on a partially populated last section (Christoph von Recklinghausen) [1782827] - [powerpc] kvm: ppc: book3s hv: Handle non-present PTEs in page fault functions (David Gibson) [1820402] - [vfio] vfio-pci/nvlink2: Allow fallback to ibm, mmio-atsd[0] (David Gibson) [1819169] - [s390] s390/cpuinfo: fix wrong output when CPU0 is offline (Philipp Rudo) [1812982] - [s390] s390/topology: remove offline CPUs from CPU topology masks (Philipp Rudo) [1812982] - [hwtracing] intel_th: pci: Add Comet Lake PCH-V support (Tony Camuso) [1822983] - [kernel] kprobes: Fix optimize_kprobe()/unoptimize_kprobe() cancellation logic (Waiman Long) [1833383] - [kernel] kprobes: Set unoptimized flag after unoptimizing code (Waiman Long) [1833383] - [kernel] kprobes: Prohibit probing on BUG() and WARN() address (Waiman Long) [1833383] - [kernel] kprobes: Fix potential deadlock in kprobe_optimizer() (Waiman Long) [1833383] - [fs] gfs2: More gfs2_find_jhead fixes (Abhijith Das) [1828653] - [kernel] audit: fix a net reference leak in audit_list_rules_send() (Richard Guy Briggs) [1827327] - [kernel] audit: fix a net reference leak in audit_send_reply() (Richard Guy Briggs) [1827327] - [kernel] audit: check the length of userspace generated audit records (Richard Guy Briggs) [1827303] - [s390] s390/pci: do not set affinity for floating irqs (Philipp Rudo) [1834319] - [netdrv] mlx5: Remove the unsupported mark from ConnectX-6 Dx device (Alaa Hleihel) [1789382 1782831] - [netdrv] mlx5: Update list of unsupported devices (Alaa Hleihel) [1823685 1789382] - [infiniband] RDMA/mlx5: Verify that QP is created with RQ or SQ (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix udata response upon SRQ creation (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Set of completion request bit should not clear other adjacent bits (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: en_accel, Add missing net/geneve.h include (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix q counters on uplink representors (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix command entry leak in Internal Error State (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix forced completion access non initialized command entry (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, On creation set CQ's arm_db member to right value (Alaa Hleihel) [1789384 1789382] - [infiniband] RDMA/mlx5: Set GRH fields in query QP on RoCE (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Get the latest values from counters in switchdev mode (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Don't trigger IRQ multiple times on XSK wakeup to avoid WQ overruns (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix failing fw tracer allocation on s390 (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix pfnum in devlink port attribute (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix nest_level for vlan pop action (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Add missing release firmware call (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix frequent ioread PCI access during recovery (Alaa Hleihel) [1789382] - [netdrv] flow_offload: check for basic action hw stats type (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Remove unused argument from parse_tc_pedit_action() (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Use netdev_warn() instead of pr_err() for errors (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, Remove unneeded functions deceleration (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Improve log messages (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Change matcher priority parameter type (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: Eswitch, avoid redundant mask (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Don't allow forwarding between uplink (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Replace tunnel mpls capability bits for tunnel_offloads (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Fix missing congestion control debugfs on rep rdma device (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Optimize u64 division on 32-bit arches (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Prevent UMR usage with RO only when we have RO caps (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix group version management (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: E-Switch, Hold mutex when querying drop counter in legacy mode (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Tidy up and fix reverse christmas ordring (Alaa Hleihel) [1831133 1789382] - [netdrv] net/mlx5: Expose port speed when possible (Alaa Hleihel) [1831133 1789382] - [include] net/mlx5: Expose link speed directly (Alaa Hleihel) [1831133 1789382] - [netdrv] net/mlx5e: Use netdev_warn() for errors for added prefix (Alaa Hleihel) [1789382] - [include] net/mlx5: fix spelling mistake "reserverd" -> "reserved" (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: sparse: warning: Using plain integer as NULL pointer (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: sparse: warning: incorrect type in assignment (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: RX, Use indirect calls wrapper for handling compressed completions (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: RX, Use indirect calls wrapper for posting descriptors (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Change inline mode correctly when changing trust state (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Add context to the preactivate hook (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Allow mlx5e_switch_priv_channels to fail and recover (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Remove unneeded netif_set_real_num_tx_queues (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix configuration of XPS cpumasks and netdev queues in corner cases (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Use preactivate hook to set the indirection table (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Rename hw_modify to preactivate (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Encapsulate updating netdev queues into a function (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Add missing LRO cap check (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Define one flow for TXQ selection when TCs are configured (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Block delay drop to unprivileged users (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix access to wrong pointer while performing flush due to error (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Do not recover from a non-fatal syndrome (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix ICOSQ recovery flow with Striding RQ (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix missing reset of SW metadata in Striding RQ reset (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Enhance ICOSQ WQE info fields (Alaa Hleihel) [1789382] - [netdrv] net/mlx5_core: Set IB capability mask1 to fix ib_srpt connection failure (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix the number of hwcounters of a dynamic counter (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Clear LAG notifier pointer after unregister (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix endianness handling in pedit mask (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: kTLS, Fix wrong value in record tracker enum (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: kTLS, Fix TCP seq off-by-1 issue in TX resync flow (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, Fix postsend actions write length (Alaa Hleihel) [1789384 1789382] - [infiniband] IB/mlx5: Fix implicit ODP race (Alaa Hleihel) [1789382] - [netdrv] mlx5: register lag notifier for init network namespace only (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix crash in recovery flow without devlink reporter (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Reset RQ doorbell counter before moving RQ state from RST to RDY (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix sleep while atomic in mlx5_eswitch_get_vepa (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Use div64_u64 for num_var_hw_entries calculation (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Prevent overflow in mmap offset calculations (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix async events cleanup flows (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Return failure when rts2rts_qp_counters_set_id is not supported (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Deprecate usage of generic TLS HW capability bit (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: TX, Error completion is for last WQE in batch (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: IPsec, fix memory leak at mlx5_fpga_ipsec_delete_sa_ctx (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: IPsec, Fix esp modify function attribute (Alaa Hleihel) [1789382] - [infiniband] RDMA/core: Make the entire API tree static (Alaa Hleihel) [1789382] - [netdrv] mlx5: Use dev_net netdevice notifier registrations (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Return the administrative GUID if exists (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, Allow connecting flow table to a lower/same level table (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Modify header copy support (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Modify set action limitation extension (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5e: Add mlx5e_flower_parse_meta support (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix printk format warning (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Allow creating autogroups with reserved entries (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Add ignore level support fwd to table rules (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: fs_core: Introduce unmanaged flow tables (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Refactor mlx5_create_auto_grouped_flow_table (Alaa Hleihel) [1789383 1789382] - [include] net/mlx5e: Expose FEC feilds and related capability bit (Alaa Hleihel) [1789382] - [include] net/mlx5: Add mlx5_ifc definitions for connection tracking support (Alaa Hleihel) [1789382] - [include] net/mlx5: Add copy header action struct layout (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Expose resource dump register mapping (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Add structures and defines for MIRC register (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Read MCAM register groups 1 and 2 (Alaa Hleihel) [1789382] - [include] net/mlx5: Add structures layout for new MCAM access reg groups (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Expose RoCE accelerator counters (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Set relaxed ordering when requested (Alaa Hleihel) [1789382] - [include] net/mlx5: Expose relaxed ordering bits (Alaa Hleihel) [1789382] - [include] net/mlx5: Add RoCE accelerator counters (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix handling of IOVA != user_va in ODP paths (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Mask out unsupported ODP capabilities for kernel QPs (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Don't fake udata for kernel path (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Add ODP WQE handlers for kernel QPs (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Simplify devx async commands (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Add mmap support for VAR (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Introduce VAR object and its alloc/destroy methods (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Extend caps stage to handle VAR capabilities (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Expose vDPA emulation device capabilities (Alaa Hleihel) [1789382] - [include] net/mlx5: Add Virtio Emulation related device capabilities (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Use async EQ setup cleanup helpers for multiple EQs (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Reduce No CQ found log level from warn to debug (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Increase the max number of channels to 128 (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Support accept action on nic table (Alaa Hleihel) [1789382] - [netdrv] mlx5: work around high stack usage with gcc (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: limit the function in local scope (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: use true, false for bool variable (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Unify ODP MR code paths to allow extra flexibility (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Fix outstanding_pi index for GSI qps (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Add devlink reload (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Set netdev name space on creation (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Load profile according to RoCE enablement state (Alaa Hleihel) [1790200 1789382] - [netdrv] net/mlx5: Handle "enable_roce" devlink param (Alaa Hleihel) [1790200 1789382] - [fs] gfs2: Another gfs2_walk_metadata fix (Andreas Grunbacher) [1826419] - [nvme] nvmet-tcp: optimize tcp stack TX when data digest is used (Chris Leech) [1829540] - [nvme] nvmet-tcp: fix maxh2cdata icresp parameter (Chris Leech) [1829540] - [nvme] nvmet-tcp: set SO_PRIORITY for accepted sockets (Chris Leech) [1829540] - [nvme] nvmet-tcp: set MSG_MORE only if we actually have more to send (Chris Leech) [1829540] - [nvme] nvme-tcp: fix possible crash in recv error flow (Chris Leech) [1829540] - [nvme] nvme-tcp: don't poll a non-live queue (Chris Leech) [1829540] - [nvme] nvme-tcp: fix possible crash in write_zeroes processing (Chris Leech) [1829540] - [nvme] nvme-tcp: Add warning on state change failure at nvme_tcp_setup_ctrl (Chris Leech) [1829540] - [nvme] nvme: Make nvme_uninit_ctrl symmetric to nvme_init_ctrl (Chris Leech) [1829540] - [nvme] nvme: Fix ctrl use-after-free during sysfs deletion (Chris Leech) [1829540] - [nvme] nvme-tcp: break from io_work loop if recv failed (Chris Leech) [1829540] - [nvme] nvme-tcp: move send failure to nvme_tcp_try_send (Chris Leech) [1829540] - [nvme] nvme-tcp: optimize queue io_cpu assignment for multiple queue maps (Chris Leech) [1829540] - [nvme] nvme-tcp: Set SO_PRIORITY for all host sockets (Chris Leech) [1829540] - [nvme] nvme/tcp: fix bug on double requeue when send fails (Chris Leech) [1829540] - [nvme] Revert "nvme: Restart request timers in resetting state" (Chris Leech) [1829540] - [acpi] ACPI: processor: Export acpi_processor_evaluate_cst() (Steve Best) [1826415] - [acpi] ACPI: processor: Make ACPI_PROCESSOR_CSTATE depend on ACPI_PROCESSOR (Steve Best) [1826415] - [acpi] ACPI: processor: Clean up acpi_processor_evaluate_cst() (Steve Best) [1826415] - [acpi] ACPI: processor: Introduce acpi_processor_evaluate_cst() (Steve Best) [1826415] - [acpi] ACPI: processor: Export function to claim _CST control (Steve Best) [1826415] - [s390] s390/ftrace: fix potential crashes when switching tracers (Philipp Rudo) [1831796] - [net] net/smc: cancel event worker during device removal (Philipp Rudo) [1780665] - [net] net/smc: check for valid ib_client_data (Philipp Rudo) [1780665] - [net] net/smc: fix cleanup for linkgroup setup failures (Philipp Rudo) [1780665] - [net] net/smc: no peer ID in CLC decline for SMCD (Philipp Rudo) [1780665] - [net] net/smc: transfer fasync_list in case of fallback (Philipp Rudo) [1780665] - [net] net/smc: fix leak of kernel memory to user space (Philipp Rudo) [1780665] - [net] net/smc: allow unprivileged users to read pnet table (Philipp Rudo) [1780665] - [net] net/smc: unregister ib devices in reboot_event (Philipp Rudo) [1780665] - [net] net/smc: add fallback check to connect() (Philipp Rudo) [1780665] - [net] net/smc: shorten lgr_cnt initialization (Philipp Rudo) [1780665] - [net] net/smc: fix fastopen for non-blocking connect() (Philipp Rudo) [1780665] - [net] net/smc: remove unused constant (Philipp Rudo) [1780665] - [net] net/smc: use rcu_barrier() on module unload (Philipp Rudo) [1780665] - [net] net/smc: guarantee removal of link groups in reboot (Philipp Rudo) [1780665] - [net] net/smc: introduce bookkeeping of SMCR link groups (Philipp Rudo) [1780665] - [net] net/smc: immediate termination for SMCR link groups (Philipp Rudo) [1780665] - [net] net/smc: wait for tx completions before link freeing (Philipp Rudo) [1780665] - [net] net/smc: abnormal termination without orderly flag (Philipp Rudo) [1780665] - [net] net/smc: no WR buffer wait for terminating link group (Philipp Rudo) [1780665] - [net] net/smc: introduce bookkeeping of SMCD link groups (Philipp Rudo) [1780665] - [net] net/smc: abnormal termination of SMCD link groups (Philipp Rudo) [1780665] - [net] net/smc: immediate termination for SMCD link groups (Philipp Rudo) [1780665] - [net] net/smc: fix final cleanup sequence for SMCD devices (Philipp Rudo) [1780665] - [net] net/smc: fix refcount non-blocking connect() -part 2 (Philipp Rudo) [1780665] - [net] net/smc: fix ethernet interface refcounting (Philipp Rudo) [1780665] - [net] net/smc: fix refcounting for non-blocking connect() (Philipp Rudo) [1780665] - [net] net/smc: fix closing of fallback SMC sockets (Philipp Rudo) [1780665] - [net] net/smc: remove close abort worker (Philipp Rudo) [1780665] - [net] net/smc: introduce link group termination worker (Philipp Rudo) [1780665] - [net] net/smc: improve abnormal termination of link groups (Philipp Rudo) [1780665] - [net] net/smc: tell peers about abnormal link group termination (Philipp Rudo) [1780665] - [net] net/smc: improve link group freeing (Philipp Rudo) [1780665] - [net] net/smc: improve abnormal termination locking (Philipp Rudo) [1780665] - [net] net/smc: terminate link group without holding lgr lock (Philipp Rudo) [1780665] - [net] net/smc: cancel send and receive for terminated socket (Philipp Rudo) [1780665] - [net] net/smc: receive pending data after RCV_SHUTDOWN (Philipp Rudo) [1780665] - [net] net/smc: receive returns without data (Philipp Rudo) [1780665] - [net] net/smc: fix SMCD link group creation with VLAN id (Philipp Rudo) [1780665] - [net] net/smc: improve close of terminated socket (Philipp Rudo) [1780665] - [net] net/smc: no new connections on disappearing devices (Philipp Rudo) [1780665] - [net] net/smc: increase device refcount for added link group (Philipp Rudo) [1780665] - [net] net/smc: separate locks for SMCD and SMCR link group lists (Philipp Rudo) [1780665] - [net] net/smc: separate SMCD and SMCR link group lists (Philipp Rudo) [1780665] - [net] net/smc: original socket family in inet_sock_diag (Philipp Rudo) [1780665] - [infiniband] RDMA/bnxt_re: Use rdma_read_gid_hw_context to retrieve HW gid index (Kamal Heib) [1828601] - [infiniband] RDMA/core: Add helper function to retrieve driver gid context from gid attr (Kamal Heib) [1828601] - [media] media: videobuf2-v4l2: drop WARN_ON in vb2_warn_zero_bytesused() (Vladis Dronov) [1825616] {CVE-2019-9455} - [net] SUNRPC: Fix initialisation of struct rpc_xprt_switch (Steve Dickson) [1683394] - [net] SUNRPC: add links for all client xprts to debugfs (Steve Dickson) [1683394] - [net] SUNRPC: enhance rpc_clnt_show_stats() to report on all xprts (Steve Dickson) [1683394] - [net] SUNRPC: Fix transport accounting when caller specifies an rpc_xprt (Steve Dickson) [1683394] - [fs] NFS: send state management on a single connection (Steve Dickson) [1683394] - [net] SUNRPC: Add basic load balancing to the transport switch (Steve Dickson) [1683394] - [net] SUNRPC: Fix up task signalling (Steve Dickson) [1683394] - [fs] NFS: Allow multiple connections to a NFSv2 or NFSv3 server (Steve Dickson) [1683394] - [fs] NFS: Display the "nconnect" mount option if it is set (Steve Dickson) [1683394] - [fs] pNFS: Allow multiple connections to the DS (Steve Dickson) [1683394] - [fs] NFSv4: Allow multiple connections to NFSv4.x (x>0) servers (Steve Dickson) [1683394] - [fs] NFS: Add a mount option to specify number of TCP connections to use (Steve Dickson) [1683394] - [net] SUNRPC: Allow creation of RPC clients with multiple connections (Steve Dickson) [1683394] - [net] netlabel: cope with NULL catmap (Paolo Abeni) [1827251] {CVE-2020-10711} - [scsi] scsi: qla2xxx: fix a potential NULL pointer dereference ("Ewan D. Milne") [1829250] {CVE-2019-16233} - [input] Input: ff-memless - kill timer in destroy() (Chris von Recklinghausen) [1815024] {CVE-2019-19524}- [netdrv] net/mlx5e: kTLS, Do not send decrypted-marked SKBs via non-accel path (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: kTLS, Remove redundant posts in TX resync flow (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: kTLS, Fix corner-case checks in TX resync flow (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-Switch, Prevent ingress rate configuration of uplink rep (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Update the list of the PCI supported devices (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Fix lowest FDB pool size (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Fix hairpin RSS table size (Alaa Hleihel) [1789380] - [netdrv] Revert "net/mlx5: Support lockless FTE read lookups" (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move devlink registration before interfaces load (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Always print health reporter message to dmesg (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Avoid duplicating rule destinations (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Fix device memory flows (Alaa Hleihel) [1789380] - [netdrv] treewide: Use sizeof_field() macro (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: E-switch, Fix Ingress ACL groups in switchdev mode for prio tag (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Fix build error without IPV6 (Alaa Hleihel) [1789380] - [netdrv] net: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Remove redundant pointer check (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: TC, Stub out ipv6 tun create header function (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: DR, Add support for Geneve packets SW steering (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: DR, Add HW bits and definitions for Geneve flex parser (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: DR, Refactor VXLAN GPE flex parser tunnel code for SW steering (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Don't write read-only fields in MODIFY_HCA_VPORT_CONTEXT command (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Implement callbacks for getting VFs GUID attributes (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Rx, Update page pool numa node when changed (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Support extended number of strides for Striding RQ (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Remove redundant NULL initializations (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Add new chain for netfilter flow table offload (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Refactor creating fast path prio chains (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Accumulate levels for chains prio namespaces (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Define fdb tc levels per prio (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Rename FDB_* tc related defines to FDB_TC_* defines (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Simplify fdb chain and prio eswitch defines (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Support flow counters offset for bulk counters (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Dump of fw_fatal use updated devlink binary interface (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Rename profile and init methods (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: fix spelling mistake "metdata" -> "metadata" (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: fix kvfree of uninitialized pointer spec (Alaa Hleihel) [1789380] - [infiniband] IB: mlx5: no need to check return value of debugfs_create functions (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: LAG, Use port enumerators (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: rate limit alloc_ent error messages (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Add ToS (DSCP) header rewrite support (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Bit sized fields rewrite support (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: WQ, Move short getters into header file (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: TX, Dump WQs wqe descriptors on CQE with error events (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Support lockless FTE read lookups (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Do not hold group lock while allocating FTE in software (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Verify that rule has at least one fwd/drop action (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Remove unneeded variable in mlx5_unload_one (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: FPGA, support network cards with standalone FPGA (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Introduce and use mlx5_core_is_vf() (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Refactor ingress acl configuration (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Restrict metadata disablement to offloads mode (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Offloads shift ACL programming during enable/disable vport (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Offloads introduce and use per vport acl tables APIs (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move ACL drop counters life cycle close to ACL lifecycle (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Legacy introduce and use per vport acl tables APIs (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Prepare code to handle vport enable error (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Tide up state_lock and vport enabled flag usage (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move legacy drop counter and rule under legacy structure (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move metdata fields under offloads structure (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Introduce and use mlx5_esw_is_manager_vport() (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Introduce and use vlan rule config helper (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-Switch, Rename ingress acl config in offloads mode (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-Switch, Rename egress config to generic name (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Test write combining support (Alaa Hleihel) [1789380] - [netdrv] net: Fix misspellings of "configure" and "configuration" (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Do not race with mlx5_ib_invalidate_range during create and destroy (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Do not store implicit children in the odp_mkeys xarray (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Rework implicit ODP destroy (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Avoid double lookups on the pagefault path (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Reduce locking in implicit_mr_get_data() (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Use an xarray for the children of an implicit ODP (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Split implicit handling from pagefault_mr (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Set the HW IOVA of the child MRs to their place in the tree (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Lift implicit_mr_alloc() into the two routines that call it (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Rework implicit_mr_get_data (Alaa Hleihel) [1789380] - [netdrv] RDMA/mlx5: Delete struct mlx5_priv->mkey_table (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Use a dedicated mkey xarray for ODP (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Split sig_err MR data into its own xarray (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Use SRCU properly in ODP prefetch (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Align usage of QP1 create flags with rest of mlx5 defines (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Add capability for max sge to get optimized performance (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Introduce and use mkey context setting helper routine (Alaa Hleihel) [1789380] - [include] net/mlx5: Expose optimal performance scatter entries capability (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Remove unnecessary else statement (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Remove unnecessary return statement (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Group boolean parameters to take less space (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Add missing capability bit check for IP-in-IP (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Fix ingress rate configuration for representors (Alaa Hleihel) [1789378] - [netdrv] mlx5: reject unsupported external timestamp flags (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Replace kfree with kvfree when free vhca stats (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Remove incorrect match criteria assignment line (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Enhance TX resync flow (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Save a copy of the crypto info (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Remove unneeded cipher type checks (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Limit DUMP wqe size (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Fix missing SQ edge fill (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Fix page refcnt leak in TX resync error flow (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Save by-value copy of the record frags (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Save only the frag page to release at completion (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Size of a Dump WQE is fixed (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Release reference on DUMPed fragments in shutdown flow (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Put live in the correct place for ODP MRs (Alaa Hleihel) [1789378] - [infiniband] RDMA/odp: Lift umem_mutex out of ib_umem_odp_unmap_dma_pages() (Alaa Hleihel) [1789378] - [netdrv] drivers: net: Fix Kconfig indentation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: DR, Remove redundant dev_name print from err log (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: DR, Remove useless set memory to zero use memset() (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Remove unused function parameter (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Use PTR_ERR_OR_ZERO rather than its implementation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Use ipv6_stub to avoid dependency with ipv6 being a module (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Kconfig: Fix MLX5_CORE dependency with PCI_HYPERV_INTERFACE (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Fix static checker warning of potential pointer math issue (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Remove unlikely() from WARN*() condition (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Support TSO and TX checksum offloads for IP-in-IP tunnels (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Improve stateless offload capability check (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Support RSS for IP-in-IP and IPv6 tunneled packets (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Change function's position to a more fitting file (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Add page fault handler for DC initiator WQE (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Remove check of FW capabilities in ODP page fault handling (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Set ODP capabilities for DC transport to max (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: RDMA_RX flow type support for user applications (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Fix return code in case of hyperv wrong size read (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add mlx5e HV VHCA stats agent (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add HV VHCA control agent (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add HV VHCA infrastructure (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add wrappers for HyperV PCIe operations (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add trace point for neigh update (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add trace point for neigh used value update (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add tc flower tracepoints (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Use odp instead of mr->umem in pagefault_mr (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Use ib_umem_start instead of umem.address (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Create bypass and loopback flow steering namespaces for RDMA RX (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add per-namespace flow table default miss action support (Alaa Hleihel) [1789378] - [include] net/mlx5: Expose IP-in-IP capability bit (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Improve functions documentation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Report and recover from CQE with error on RQ (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: RX, Handle CQE with error at the earliest stage (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Report and recover from rx timeout (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Report and recover from CQE error on ICOSQ (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Split open/close ICOSQ into stages (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Add support to rx reporter diagnose (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Add helper functions for reporter's basics (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Add cq info to tx reporter diagnose (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Extend tx reporter diagnostics output (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Extend tx diagnose function (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Generalize tx reporter's functionality (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Change naming convention for reporter's functions (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Rename reporter header file (Alaa Hleihel) [1790198 1789378] - [infiniband] RDMA/mlx5: Annotate lock dependency in bind/unbind slave port (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Expose XRQ legacy commands over the DEVX interface (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Add legacy events to DEVX list (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add XRQ legacy commands opcodes (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Use debug message instead of warn (Alaa Hleihel) [1789378] - [netdrv] mlx5: no need to check return value of debugfs_create functions (Alaa Hleihel) [1789378] - [infiniband] mlx5: Use refcount_t for refcount (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Allow dropping specific tunnel packets (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: TX reporter cleanup (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Set tx reporter only on successful creation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Rx, checksum handling refactoring (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Tx, Soften inline mode VLAN dependencies (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: XDP, Slight enhancement for WQE fetch function (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: XDP, Close TX MPWQE session when no room for inline packet left (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Tx, Strict the room needed for SQ edge NOPs (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: E-Switch, add ingress rate support (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Remove DEBUG ODP code (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Add CREATE_PSV/DESTROY_PSV for devx interface (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Avoid unnecessary typecast (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: xsk: dynamically allocate mlx5e_channel_param (Alaa Hleihel) [1789378] - [netdrv] net: Use skb accessors in network drivers (Alaa Hleihel) [1789378] - [char] tpm: Export tpm2_get_cc_attrs_tbl for ibmvtpm driver as module (David Gibson) [1781915] - [char] tpm: ibmvtpm: Add support for TPM2 (David Gibson) [1781915] - [char] tpm: of: Handle IBM, vtpm20 case when getting log parameters (David Gibson) [1781915] - [wireless] iwlwifi: mvm: Do not require PHY_SKU NVM section for 3168 devices (Jarod Wilson) [1807052] - [wireless] mwifiex: set needed_headroom, not hard_header_len (Jarod Wilson) [1807052] - [wireless] ath9k: Handle txpower changes even when TPC is disabled (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: fix coverage_class type (Jarod Wilson) [1807052] - [wireless] rtw88: Use kfree_skb() instead of kfree() (Jarod Wilson) [1807052] - [wireless] brcmfmac: abort and release host after error (Jarod Wilson) [1807052] - [wireless] ath11k: Silence clang -Wsometimes-uninitialized in ath11k_update_per_peer_stats_from_txcompl (Jarod Wilson) [1807052] - [wireless] ath10k: Call cpu_latency_qos_*() instead of pm_qos_*() (Jarod Wilson) [1807052] - [net] mac80211: fix authentication with iwlwifi/mvm (Jarod Wilson) [1807052] - [net] mac80211: set IEEE80211_TX_CTRL_PORT_CTRL_PROTO for nl80211 TX (Jarod Wilson) [1807052] - [net] mac80211: mark station unauthorized before key removal (Jarod Wilson) [1807052] - [net] mac80211: Check port authorization in the ieee80211_tx_dequeue() case (Jarod Wilson) [1807052] - [net] cfg80211: Do not warn on same channel at the end of CSA (Jarod Wilson) [1807052] - [net] mac80211: drop data frames without key on encrypted links (Jarod Wilson) [1807052] - [net] nl80211: fix NL80211_ATTR_CHANNEL_WIDTH attribute type (Jarod Wilson) [1807052] - [wireless] iwlwifi: don't send GEO_TX_POWER_LIMIT if no wgds table (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: add 0x2526/0x401* devices back to cfg detection (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Fix regression due to commit d1d1a96bdb44 (Jarod Wilson) [1807052] - [wireless] iwlwifi: cfg: use antenna diversity with all AX101 devices (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Fix rate scale NSS configuration (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg: don't abort if sending DBGC_SUSPEND_RESUME fails (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: don't add TLV offset when reading FIFOs (Jarod Wilson) [1807052] - [wireless] iwlwifi: check allocated pointer when allocating conf_tlvs (Jarod Wilson) [1807052] - [wireless] iwlwifi: consider HE capability when setting LDPC (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: take the required lock when clearing time event data (Jarod Wilson) [1807052] - [net] mac80211: Do not send mesh HWMP PREQ if HWMP is disabled (Jarod Wilson) [1807052] - [net] nl80211: add missing attribute validation for channel switch (Jarod Wilson) [1807052] - [net] nl80211: add missing attribute validation for beacon report scanning (Jarod Wilson) [1807052] - [net] nl80211: add missing attribute validation for critical protocol indication (Jarod Wilson) [1807052] - [wireless] mt76: fix array overflow on receiving too many fragments for a packet (Jarod Wilson) [1807052] - [net] mac80211: rx: avoid RCU list traversal under mutex (Jarod Wilson) [1807052] - [net] nl80211: explicitly include if_vlan.h (Jarod Wilson) [1807052] - [net] mac80211: Remove a redundant mutex unlock (Jarod Wilson) [1807052] - [net] cfg80211: check reg_rule for NULL in handle_channel_custom() (Jarod Wilson) [1807052] - [net] nl80211: fix potential leak in AP start (Jarod Wilson) [1807052] - [net] mac80211: fix wrong 160/80+80 MHz setting (Jarod Wilson) [1807052] - [net] cfg80211: add missing policy for NL80211_ATTR_STATUS_CODE (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: fix max_nss in mt7615_eeprom_parse_hw_cap (Jarod Wilson) [1807052] - [net] cfg80211: check wiphy driver existence for drvinfo report (Jarod Wilson) [1807052] - [net] mac80211: consider more elements in parsing CRC (Jarod Wilson) [1807052] - [net] mac80211: fix quiet mode activation in action frames (Jarod Wilson) [1807052] - [net] mac80211: use more bits for ack_frame_id (Jarod Wilson) [1807052] - [wireless] rtw88: Fix return value of rtw_wow_check_fw_status (Jarod Wilson) [1807052] - [wireless] iwlwifi: d3: read all FW CPUs error info (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix TDLS discovery with the new firmware API (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Check the sta is not NULL in iwl_mvm_cfg_he_sta() (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: avoid use after free for pmsr request (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: update the DTS measurement type (Jarod Wilson) [1807052] - [wireless] iwlwifi: don't throw error when trying to remove IGTK (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Fix thermal zone registration (Jarod Wilson) [1807052] - [wireless] iwlwifi: use helpers (Jarod Wilson) [1807052] - [wireless] mwifiex: Fix possible buffer overflows in mwifiex_cmd_append_vsie_tlv() (Jarod Wilson) [1807052] - [wireless] mwifiex: Fix possible buffer overflows in mwifiex_ret_wmm_get_status() (Jarod Wilson) [1807052] - [wireless] mwifiex: fix unbalanced locking in mwifiex_process_country_ie() (Jarod Wilson) [1807052] - [wireless] rtlwifi: btcoex: fix spelling mistake "initilized" -> "initialized" (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: remove unused variables (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: remove unused variables (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: remove unused variables (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: remove redundant assignment to variable cond (Jarod Wilson) [1807052] - [wireless] brcmfmac: Remove always false 'idx < 0' statement (Jarod Wilson) [1807052] - [wireless] rtw88: use shorter delay time to poll PS state (Jarod Wilson) [1807052] - [wireless] rtw88: fix potential NULL skb access in TX ISR (Jarod Wilson) [1807052] - [wireless] brcmfmac: add initial support for monitor mode (Jarod Wilson) [1807052] - [wireless] brcmfmac: simplify building interface combinations (Jarod Wilson) [1807052] - [wireless] brcmfmac: sdio: Fix OOB interrupt initialization on brcm43362 (Jarod Wilson) [1807052] - [wireless] brcmfmac: use true,false for bool variable (Jarod Wilson) [1807052] - [wireless] rtw88: use true,false for bool variable (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723be: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Remove sw.h header (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: Remove sw.h header (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: Fix typo (Jarod Wilson) [1807052] - [wireless] rtw88: change max_num_of_tx_queue() definition to inline in pci.h (Jarod Wilson) [1807052] - [wireless] rtw88: assign NULL to skb after being kfree()'ed (Jarod Wilson) [1807052] - [wireless] rtw88: use rtw_hci_stop() instead of rtwdev->hci.ops->stop() (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused vif pointer in struct rtw_vif (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused variable 'in_lps' (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused spinlock (Jarod Wilson) [1807052] - [wireless] rtw88: 8822c: update power sequence to v15 (Jarod Wilson) [1807052] - [wireless] rtw88: fix TX secondary channel offset of 40M if current bw is 20M or 40M (Jarod Wilson) [1807052] - [wireless] rtw88: fix rate mask for 1SS chip (Jarod Wilson) [1807052] - [wireless] rtw88: Add wowlan net-detect support (Jarod Wilson) [1807052] - [wireless] rtw88: Add wowlan pattern match support (Jarod Wilson) [1807052] - [wireless] rtw88: support wowlan feature for 8822c (Jarod Wilson) [1807052] - [wireless] rtw88: load wowlan firmware if wowlan is supported (Jarod Wilson) [1807052] - [wireless] rtw88: add interface config for 8822c (Jarod Wilson) [1807052] - [wireless] rtw88: pci: reset dma when reset pci trx ring (Jarod Wilson) [1807052] - [wireless] rtw88: pci: reset ring index when release skbs in tx ring (Jarod Wilson) [1807052] - [wireless] ath10k: Use device_get_match_data() to simplify code (Jarod Wilson) [1807052] - [wireless] ath10k: Add newlines to printk messages (Jarod Wilson) [1807052] - [wireless] ath10k: Correct the DMA direction for management tx buffers (Jarod Wilson) [1807052] - [wireless] mwifiex: drop most magic numbers from mwifiex_process_tdls_action_frame() (Jarod Wilson) [1807052] - [wireless] ath11k: fix up some error paths (Jarod Wilson) [1807052] - [wireless] ath11k: make sure to also report the RX bandwidth inside radiotap (Jarod Wilson) [1807052] - [wireless] ath11k: avoid null pointer dereference when pointer band is null (Jarod Wilson) [1807052] - [wireless] ath11k: Add missing pdev rx rate stats (Jarod Wilson) [1807052] - [wireless] ath11k: ensure ts.flags is initialized before bit-wise or'ing in values (Jarod Wilson) [1807052] - [wireless] ath11k: set TxBf parameters after vdev start (Jarod Wilson) [1807052] - [wireless] ath11k: enable HE tlvs in ppdu stats for pktlog lite (Jarod Wilson) [1807052] - [wireless] ath11k: fix debugfs build failure (Jarod Wilson) [1807052] - [wireless] ath10k: Don't call SCM interface for statically mapped msa region (Jarod Wilson) [1807052] - [wireless] Revert "ath10k: fix DMA related firmware crashes on multiple devices" (Jarod Wilson) [1807052] - [wireless] ath10k: drop RX skb with invalid length for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: use true,false for bool variable (Jarod Wilson) [1807052] - [wireless] ath10k: Add optional qdss clk (Jarod Wilson) [1807052] - [wireless] ath10k: pci: Fix comment on ath10k_pci_dump_memory_sram (Jarod Wilson) [1807052] - [wireless] ath10k: pci: Only dump ATH10K_MEM_REGION_TYPE_IOREG when safe (Jarod Wilson) [1807052] - [wireless] ath9k: use true,false for bool variable (Jarod Wilson) [1807052] - [net] net: mac80211: use skb_list_walk_safe helper for gso segments (Jarod Wilson) [1807052] - [wireless] net: iwlwifi: use skb_list_walk_safe helper for gso segments (Jarod Wilson) [1807052] - [wireless] iwlwifi: add device name to device_info (Jarod Wilson) [1807052] - [wireless] iwlwifi: implement a new device configuration table (Jarod Wilson) [1807052] - [wireless] iwlwifi: assume the driver_data is a trans_cfg, but allow full cfg (Jarod Wilson) [1807052] - [wireless] iwlwifi: prph: remove some unused register definitions (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: print out extended secboot status before dump (Jarod Wilson) [1807052] - [wireless] iwlwifi: incorporate firmware filename into version (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: check for the domain on all TLV types during init (Jarod Wilson) [1807052] - [wireless] iwlwifi: add new iwlax411 struct for type SoSnj (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: remove the iwl_dbg_tlv_gen_active_trigs() function (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: remove unnecessary active triggers status flag (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: don't allow changing the domain via debugfs (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Update BEACON_TEMPLATE_CMD firmware API (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove CSR registers abstraction (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove some outdated iwl22000 configurations (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: validate queue ID before array deref/bit ops (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: use partial pages if applicable (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: map only used part of RX buffers (Jarod Wilson) [1807052] - [wireless] iwlwifi: allocate more receive buffers for HE devices (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add support for responder config command version 7 (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add support for location range request version 8 (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: remove support for fw scan api v11 (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: don't skip a TX FIFO when dumping (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: update powersave correctly for D3 (Jarod Wilson) [1807052] - [wireless] ath11k: Use sizeof_field() instead of FIELD_SIZEOF() (Jarod Wilson) [1807052] - [wireless] ath11k: explicitly cast wmi commands to their correct struct type (Jarod Wilson) [1807052] - [wireless] orinoco: avoid assertion in case of NULL pointer (Jarod Wilson) [1807052] - [wireless] brcmfmac: Keep OOB wake-interrupt disabled when it shouldn't be enabled (Jarod Wilson) [1807052] - [wireless] brcmfmac: Fix memory leak in brcmf_usbdev_qinit (Jarod Wilson) [1807052] - [wireless] brcmfmac: not set mbss in vif if firmware does not support MBSS (Jarod Wilson) [1807052] - [wireless] brcmfmac: add RSDB condition when setting interface combinations (Jarod Wilson) [1807052] - [wireless] brcmfmac: add support for BCM4359 SDIO chipset (Jarod Wilson) [1807052] - [wireless] brcmfmac: make errors when setting roaming parameters non-fatal (Jarod Wilson) [1807052] - [wireless] brcmfmac: fix rambase for 4359/9 (Jarod Wilson) [1807052] - [wireless] brcmfmac: set F2 blocksize and watermark for 4359 (Jarod Wilson) [1807052] - [wireless] brcmfmac: reset two D11 cores if chip has two D11 cores (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: use generic rtl_signal_scale_mapping (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: use generic rtl_signal_scale_mapping (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: use generic rtl_signal_scale_mapping (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: use generic rtl_query_rxpwrpercentage (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: use generic rtl_query_rxpwrpercentage (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: use generic rtl_query_rxpwrpercentage (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: fix interface sanity check (Jarod Wilson) [1807052] - [wireless] brcmfmac: fix interface sanity check (Jarod Wilson) [1807052] - [wireless] brcmfmac: set interface carrier to off by default (Jarod Wilson) [1807052] - [wireless] mwifiex: delete unused mwifiex_get_intf_num() (Jarod Wilson) [1807052] - [wireless] rt2x00usb: Fix a warning message in 'rt2x00usb_watchdog_tx_dma()' (Jarod Wilson) [1807052] - [wireless] brcmfmac: Fix use after free in brcmf_sdio_readframes() (Jarod Wilson) [1807052] - [wireless] rt2x00: use RESET state bit to prevent IV changes on restart (Jarod Wilson) [1807052] - [wireless] rt2x00: implement reconfig_complete (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl_pci: Fix -Wcast-function-type (Jarod Wilson) [1807052] - [wireless] brcmsmac: Remove always false 'channel < 0' statement (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove last definitions of local bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723be: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl88821ae: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove dependence on special bit manipulation macros for common driver (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: rtl8192c_com: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Remove usage of private bit manipulation (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Convert inline routines to little-endian words (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Convert macros that set descriptor (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Replace local bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Remove unused GET_XXX and SET_XXX macros (Jarod Wilson) [1807052] - [wireless] brcmfmac: Fix memory leak in brcmf_p2p_create_p2pdev() (Jarod Wilson) [1807052] - [wireless] ath9k: fix storage endpoint lookup (Jarod Wilson) [1807052] - [wireless] ath11k: Remove unneeded semicolon (Jarod Wilson) [1807052] - [wireless] ath11k: remove an unneeded NULL check (Jarod Wilson) [1807052] - [wireless] ath11k: checking for NULL vs IS_ERR() (Jarod Wilson) [1807052] - [wireless] ath11k: delete a stray unlock in ath11k_dbg_htt_stats_req() (Jarod Wilson) [1807052] - [wireless] ath11k: fix missing free of skb on error return path (Jarod Wilson) [1807052] - [wireless] ath11k: fix uninitialized variable radioup (Jarod Wilson) [1807052] - [wireless] ath11k: fix memory leak on reg_info (Jarod Wilson) [1807052] - [wireless] ath11k: Remove unnecessary enum scan_priority (Jarod Wilson) [1807052] - [wireless] ath11k: fix several spelling mistakes (Jarod Wilson) [1807052] - [wireless] ath11k: add some missing __packed qualifiers (Jarod Wilson) [1807052] - [wireless] ath11k: set the BA buffer size to 256 when HE is enabled (Jarod Wilson) [1807052] - [wireless] ath11k: fix pdev when invoking ath11k_wmi_send_twt_enable_cmd() (Jarod Wilson) [1807052] - [wireless] ath11k: optimize ath11k_hal_tx_status_parse (Jarod Wilson) [1807052] - [wireless] ath11k: optimise ath11k_dp_tx_completion_handler (Jarod Wilson) [1807052] - [wireless] ath11k: move some tx_status parsing to debugfs code (Jarod Wilson) [1807052] - [wireless] ath11k: rename ath11k_wmi_base instances from wmi_sc to wmi_ab (Jarod Wilson) [1807052] - [wireless] ath11k: drop memset when setting up a tx cmd desc (Jarod Wilson) [1807052] - [wireless] ath11k: disable PS for STA interfaces by default upon bringup (Jarod Wilson) [1807052] - [wireless] ath11k: add wmi helper for turning STA PS on/off (Jarod Wilson) [1807052] - [wireless] ath10k: Fix some typo in some warning messages (Jarod Wilson) [1807052] - [wireless] ath11k: register HE mesh capabilities (Jarod Wilson) [1807052] - [net] netlink: rename nl80211_validate_nested() to nla_validate_nested() (Jarod Wilson) [1807052] - [wireless] wireless/mediatek: Replace rcu_swap_protected() with rcu_replace_pointer() (Jarod Wilson) [1807052] - [wireless] ath: add support for special 0x0 regulatory domain (Jarod Wilson) [1807052] - [wireless] ath10k: change bundle count for max rx bundle for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: enable napi on RX path for sdio (Jarod Wilson) [1807052] - [wireless] ath11k: fix indentation in ath11k_mac_prepare_he_mode() (Jarod Wilson) [1807052] - [wireless] ath11k: Setup REO destination ring before sending wmi_init command (Jarod Wilson) [1807052] - [wireless] ath11k: Move mac80211 hw allocation before wmi_init command (Jarod Wilson) [1807052] - [wireless] ath11k: Skip update peer stats for management packets (Jarod Wilson) [1807052] - [wireless] ath11k: update tx duration in station info (Jarod Wilson) [1807052] - [wireless] ath11k: fix vht guard interval mapping (Jarod Wilson) [1807052] - [wireless] ath11k: fix memory leak in monitor mode (Jarod Wilson) [1807052] - [wireless] ath11k: Advertise MPDU start spacing as no restriction (Jarod Wilson) [1807052] - [wireless] ath11k: Update tx and rx chain count properly on drv_set_antenna (Jarod Wilson) [1807052] - [wireless] ath11k: add necessary peer assoc params in wmi dbg (Jarod Wilson) [1807052] - [wireless] ath11k: unlock mutex during failure in qmi fw ready (Jarod Wilson) [1807052] - [wireless] ath11k: add support for controlling tx power to a station (Jarod Wilson) [1807052] - [wireless] ath11k: update bawindow size in delba process (Jarod Wilson) [1807052] - [wireless] ath11k: avoid use_after_free in ath11k_dp_rx_msdu_coalesce API (Jarod Wilson) [1807052] - [wireless] ath11k: avoid burst time conversion logic (Jarod Wilson) [1807052] - [wireless] ath11k: pktlog: fix sending/using the pdev id (Jarod Wilson) [1807052] - [wireless] ath11k: qmi clean up in ath11k_qmi_wlanfw_wlan_cfg_send() (Jarod Wilson) [1807052] - [wireless] ath11k: qmi clean up ce and HTC service config update (Jarod Wilson) [1807052] - [wireless] ath11k: tracing: fix ath11k tracing (Jarod Wilson) [1807052] - [wireless] ath10k: enable wow feature for sdio chip (Jarod Wilson) [1807052] - [wireless] ath10k: change log level for mpdu status of sdio chip (Jarod Wilson) [1807052] - [wireless] ath10k: set WMI_PEER_AUTHORIZE after a firmware crash (Jarod Wilson) [1807052] - [wireless] ath10k: set max mtu to 1500 for sdio chip (Jarod Wilson) [1807052] - [wireless] ath10k: enable firmware log by default for sdio (Jarod Wilson) [1807052] - [wireless] ath11k: Fix target crash due to WBM_IDLE_LINK ring desc shortage (Jarod Wilson) [1807052] - [wireless] ath11k: Fixing TLV length issue in peer pktlog WMI command (Jarod Wilson) [1807052] - [wireless] ath11k: Fix skb_panic observed during msdu coalescing (Jarod Wilson) [1807052] - [wireless] ath11k: remove unused tx ring counters (Jarod Wilson) [1807052] - [wireless] ath11k: avoid WMM param truncation (Jarod Wilson) [1807052] - [wireless] ath11k: optimize RX path latency (Jarod Wilson) [1807052] - [wireless] ath11k: update tcl cmd descriptor parameters for STA mode (Jarod Wilson) [1807052] - [wireless] ath11k: fix wmi service ready ext tlv parsing (Jarod Wilson) [1807052] - [wireless] ath11k: fix resource leak in ath11k_mac_sta_state (Jarod Wilson) [1807052] - [wireless] ath11k: Fix htt stats sounding info and pdev cca stats (Jarod Wilson) [1807052] - [wireless] ath10k: move non-fatal warn logs to dbg level (Jarod Wilson) [1807052] - [wireless] ath11k: add spatial reuse support (Jarod Wilson) [1807052] - [wireless] ath11k: add TWT support (Jarod Wilson) [1807052] - [wireless] ath11k: add HE support (Jarod Wilson) [1807052] - [wireless] ath11k: Remove dead code while handling amsdu packets (Jarod Wilson) [1807052] - [wireless] ath11k: fix missed bw conversion in tx completion (Jarod Wilson) [1807052] - [wireless] ath11k: convert message from info to dbg (Jarod Wilson) [1807052] - [wireless] ath11k: ignore event 0x6017 (Jarod Wilson) [1807052] - [wireless] ath11k: add RX stats support for radiotap (Jarod Wilson) [1807052] - [wireless] ath11k: driver for Qualcomm IEEE 802.11ax devices (Jarod Wilson) [1807052] - [wireless] ath10k: fix RX of frames with broken FCS in monitor mode (Jarod Wilson) [1807052] - [wireless] ath10k: report rssi of each chain to mac80211 for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: Handle "invalid" BDFs for msm8998 devices (Jarod Wilson) [1807052] - [wireless] ath10k: Fix qmi init error handling (Jarod Wilson) [1807052] - [wireless] ath10k: add NL80211_FEATURE_ND_RANDOM_MAC_ADDR for NLO (Jarod Wilson) [1807052] - [wireless] ath10k: Handle when FW doesn't support QMI_WLFW_HOST_CAP_REQ_V01 (Jarod Wilson) [1807052] - [wireless] ath10k: add large size for BMI download data for SDIO (Jarod Wilson) [1807052] - [wireless] ath10k: correct the tlv len of ath10k_wmi_tlv_op_gen_config_pno_start (Jarod Wilson) [1807052] - [wireless] ath10k: sdio: remove struct ath10k_sdio_rx_data::status (Jarod Wilson) [1807052] - [wireless] ath10k: sdio: cosmetic cleanup (Jarod Wilson) [1807052] - [wireless] ath10k: add workqueue for RX path of sdio (Jarod Wilson) [1807052] - [wireless] ath10k: change max RX bundle size from 8 to 32 for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: enable RX bundle receive for sdio (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: don't send the IWL_MVM_RXQ_NSSN_SYNC notif to Rx queues (Jarod Wilson) [1807052] - [net] cfg80211: fix page refcount issue in A-MSDU decap (Jarod Wilson) [1807052] - [net] cfg80211: check for set_wiphy_params (Jarod Wilson) [1807052] - [net] cfg80211: fix memory leak in cfg80211_cqm_rssi_update (Jarod Wilson) [1807052] - [net] cfg80211: fix memory leak in nl80211_probe_mesh_link (Jarod Wilson) [1807052] - [net] cfg80211: fix deadlocks in autodisconnect work (Jarod Wilson) [1807052] - [net] wireless: wext: avoid gcc -O3 warning (Jarod Wilson) [1807052] - [net] mac80211: Fix TKIP replay protection immediately after key setup (Jarod Wilson) [1807052] - [net] cfg80211: Fix radar event during another phy CAC (Jarod Wilson) [1807052] - [net] wireless: fix enabling channel 12 for custom regulatory domain (Jarod Wilson) [1807052] - [net] mac80211: mesh: restrict airtime metric to peered established plinks (Jarod Wilson) [1807052] - [wireless] Revert "iwlwifi: mvm: fix scan config command size" (Jarod Wilson) [1807052] - [wireless] iwlwifi: fw: make pos static in iwl_sar_get_ewrd_table() loop (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove lar_disable module parameter (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg: force stop the debug monitor HW (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: always disable L0S states (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: rename L0S_ENABLED bit to L0S_DISABLED (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix potential SKB leak on TXQ TX (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix SKB leak on invalid queue (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: extend hardware workaround to context-info (Jarod Wilson) [1807052] - [wireless] iwlwifi: Don't ignore the cap field upon mcc update (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: report TX rate to mac80211 directly for RS offload (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix NVM check for 3168 devices (Jarod Wilson) [1807052] - [wireless] iwlwifi: fix TLV fragment allocation loop (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: allocate smaller dev_cmd for TX headers (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: detect the DMA bug and warn if it happens (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: work around DMA hardware bug (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: move page tracking into get_page_hdr() (Jarod Wilson) [1807052] - [wireless] iwlwifi: don't send PPAG command if disabled (Jarod Wilson) [1807052] - [wireless] mt76: Off by one in mt76_calc_rx_airtime() (Jarod Wilson) [1807052] - [wireless] mt76: fix LED link time failure (Jarod Wilson) [1807052] - [net] mac80211: Turn AQL into an NL80211_EXT_FEATURE (Jarod Wilson) [1807052] - [net] mac80211: airtime: Fix an off by one in ieee80211_calc_rx_airtime() (Jarod Wilson) [1807052] - [net] cfg80211: fix double-free after changing network namespace (Jarod Wilson) [1807052] - [net] mac80211: fix TID field in monitor mode transmit (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: move power gating workaround earlier in the flow (Jarod Wilson) [1807052] - [wireless] Revert "iwlwifi: assign directly to iwl_trans->cfg in QuZ detection" (Jarod Wilson) [1807052] - [wireless] wireles: Use sizeof_field() macro (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0: fix default mac address overwrite (Jarod Wilson) [1807052] - [wireless] ath9k: use iowrite32 over __raw_writel (Jarod Wilson) [1807052] - [net] mac80211: Use Airtime-based Queue Limits (AQL) on packet dequeue (Jarod Wilson) [1807052] - [net] mac80211: Implement Airtime-based Queue Limit (AQL) (Jarod Wilson) [1807052] - [net] mac80211: Import airtime calculation code from mt76 (Jarod Wilson) [1807052] - [net] mac80211: consider QoS Null frames for STA_NULLFUNC_ACKED (Jarod Wilson) [1807052] - [net] mac80211: expose HW conf flags through debugfs (Jarod Wilson) [1807052] - [net] mac80211: Add new sta_info getter by sta/vif addrs (Jarod Wilson) [1807052] - [net] mac80211: add a comment about monitor-to-dev injection (Jarod Wilson) [1807052] - [wireless] drivers: net: Fix Kconfig indentation, continued (Jarod Wilson) [1807052] - [wireless] mt76: fix fix ampdu locking (Jarod Wilson) [1807052] - [wireless] mt76: mt76u: fix endpoint definition order (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: read {tx,rx} mask from eeprom (Jarod Wilson) [1807052] - [wireless] mt76: move mt76_get_antenna in mt76_core module (Jarod Wilson) [1807052] - [wireless] mt76: fix possible out-of-bound access in mt7615_fill_txs/mt7603_fill_txs (Jarod Wilson) [1807052] - [wireless] Revert "mt76: mt76x0e: don't use hw encryption for MT7630E" (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: disable radar pattern detector during scanning (Jarod Wilson) [1807052] - [wireless] mt76: move interface_modes definition in mt76_core module (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: add ibss support (Jarod Wilson) [1807052] - [wireless] mt76: move SUPPORTS_REORDERING_BUFFER hw property in mt76_register_device (Jarod Wilson) [1807052] - [wireless] mt76: use mt76_dev in mt76_is_{mmio,usb} (Jarod Wilson) [1807052] - [wireless] mt76: Remove set but not used variable 'idx' (Jarod Wilson) [1807052] - [wireless] mt76: mt76u: rely on a dedicated stats workqueue (Jarod Wilson) [1807052] - [wireless] mt76: mt76u: rely on usb_interface instead of usb_dev (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: remove unneeded semicolon (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0: remove 350ms delay in mt76x0_phy_calibrate (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02u: update ewma pkt len in mt76x02u_tx_prepare_skb (Jarod Wilson) [1807052] - [wireless] mt76: remove obsolete .add_buf() from struct mt76_queue_ops (Jarod Wilson) [1807052] - [wireless] mt76: add sanity check for a-mpdu rx wcid index (Jarod Wilson) [1807052] - [wireless] mt76: refactor cc_lock locking scheme (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0: eeprom: add support for MAC address from OF (Jarod Wilson) [1807052] - [wireless] mt76: avoid enabling interrupt if NAPI poll is still pending (Jarod Wilson) [1807052] - [wireless] mt76: fix aggregation stop issue (Jarod Wilson) [1807052] - [wireless] mt76: drop rcu read lock in mt76_rx_aggr_stop (Jarod Wilson) [1807052] - [wireless] mt76: add missing locking around ampdu action (Jarod Wilson) [1807052] - [wireless] mt76: do not use devm API for led classdev (Jarod Wilson) [1807052] - [wireless] mt76: enable airtime fairness (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: track tx/rx airtime for airtime fairness (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: introduce mt7615_mac_wtbl_update routine (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: fix survey channel busy time (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: report tx_time, bss_rx and busy time to mac80211 (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: track approximate tx airtime for airtime fairness and survey (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: move MT_CH_TIME_CFG init to mt76x02_mac_cc_reset (Jarod Wilson) [1807052] - [wireless] mt76: unify channel survey update code (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: switch to a different counter for survey busy time (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: track tx airtime for airtime fairness and survey (Jarod Wilson) [1807052] - [wireless] mt76: track rx airtime for airtime fairness and survey (Jarod Wilson) [1807052] - [wireless] mt76: store current channel survey_state in struct mt76_dev (Jarod Wilson) [1807052] - [wireless] mt76: rename mt76_driver_ops txwi_flags to drv_flags and include tx aligned4 (Jarod Wilson) [1807052] - [wireless] mt76: report rx a-mpdu subframe status (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: remove q_rx field from struct mt7603_dev (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: collect aggregation stats (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: collect aggregation stats (Jarod Wilson) [1807052] - [wireless] mt76: move aggr_stats array in mt76_dev (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: add queue entry in debugfs (Jarod Wilson) [1807052] - [wireless] mt76: move queue debugfs entry to driver specific code (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02u: move mt76x02u_mac_start in mt76x02-usb module (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0u: reset counter starting the device (Jarod Wilson) [1807052] - [wireless] mt76: mt76x2: move mt76x02_mac_reset_counters in mt76x02_mac_start (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: move mac_reset_counter in mt76x02_lib module (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: enable SCS by default (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0e: make array mt76x0_chan_map static const, makes object smaller (Jarod Wilson) [1807052] - [wireless] mt76: usb: add lockdep_assert_held in __mt76u_vendor_request (Jarod Wilson) [1807052] - [wireless] mt76: remove empty flag in mt76_txq_schedule_list (Jarod Wilson) [1807052] - [wireless] mt76: use cancel_delayed_work_sync in mt76_rx_aggr_shutdown (Jarod Wilson) [1807052] - [wireless] mt76: remove aggr_work field from struct mt76_wcid (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: fix control frame rx in monitor mode (Jarod Wilson) [1807052] - [wireless] iwlwifi: bump FW API to 52 for 22000 series (Jarod Wilson) [1807052] - [wireless] iwlwifi: check kasprintf() return value (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove outdated comment referring to wake lock (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: trace IOVA for iwlwifi_dev_tx_tb (Jarod Wilson) [1807052] - [wireless] iwlwifi: dvm: excessive if in rs_bt_update_lq() (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Report tx/rx antennas (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: rx: use rxq queue_size instead of constant (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove left-over non-functional email alias (Jarod Wilson) [1807052] - [wireless] iwlwifi: config: remove max_rx_agg_size (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: make some RX functions static (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: support scan req FW API ver 13 (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: fix support for transmitting SKBs with fraglist (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Remove set but not used variable 'vif', 'dev', 'len' (Jarod Wilson) [1807052] - [wireless] brcmfmac: remove monitor interface when detaching (Jarod Wilson) [1807052] - [wireless] brcmfmac: disable PCIe interrupts before bus reset (Jarod Wilson) [1807052] - [wireless] rtw88: allows to enable/disable HCI link PS mechanism (Jarod Wilson) [1807052] - [wireless] rtw88: pci: enable CLKREQ function if host supports it (Jarod Wilson) [1807052] - [wireless] rtw88: pci: use for loop instead of while loop for DBI/MDIO (Jarod Wilson) [1807052] - [wireless] rtw88: pci: use macros to access PCI DBI/MDIO registers (Jarod Wilson) [1807052] - [wireless] rtlwifi: set proper udelay within rf_serial_read (Jarod Wilson) [1807052] - [wireless] rtlwifi: rf_lock use non-irqsave spin_lock (Jarod Wilson) [1807052] - [wireless] brcmfmac: remove set but not used variable 'mpnum', 'nsp', 'nmp' (Jarod Wilson) [1807052] - [wireless] rtw88: remove duplicated include from ps.c (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Remove set but not used variable 'rsr' (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove unnecessary return (Jarod Wilson) [1807052] - [wireless] net: wireless: ti: remove local VENDOR_ID and DEVICE_ID definitions (Jarod Wilson) [1807052] - [wireless] net: wireless: ti: wl1251 use new SDIO_VENDOR_ID_TI_WL1251 definition (Jarod Wilson) [1807052] - [wireless] net: wireless: ti: wl1251 add device tree support (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix non-ACPI function (Jarod Wilson) [1807052] - [wireless] iwlwifi: 22000: fix some indentation (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove IWL_DEVICE_22560/IWL_DEVICE_FAMILY_22560 (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: sync the iwl_mvm_session_prot_notif layout (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: start CTDP budget from 2400mA (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: don't skip mgmt tid when flushing all tids (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: scan: enable adaptive dwell in p2p (Jarod Wilson) [1807052] - [wireless] iwlwifi: refactor the SAR tables from mvm to acpi (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: support scan req cmd ver 12 (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: make new scan req versioning flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix unaligned read of rx_pkt_status (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove redundant assignment to variable bufsz (Jarod Wilson) [1807052] - [wireless] iwlwifi: bump FW API to 51 for 22000 series (Jarod Wilson) [1807052] - [wireless] iwlwifi: FW API: reference enum in docs of modify_mask (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: print rate_n_flags in a pretty format (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: adapt the code to use api ver 11 (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: Create function to build scan cmd (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: create function for scan scheduling params (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support dump collection upon assert during D3 (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: make iwl_pcie_gen2_update_byte_tbl static (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: in VHT connection use only VHT capabilities (Jarod Wilson) [1807052] - [wireless] iwlwifi: nvm: update iwl_uhb_nvm_channels (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove else-if in iwl_send_phy_cfg_cmd() (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix support for single antenna diversity (Jarod Wilson) [1807052] - [wireless] ath10k: qmi: Sleep for a while before assigning MSA memory (Jarod Wilson) [1807052] - [wireless] ath10k: Revert "ath10k: add cleanup in ath10k_sta_state()" (Jarod Wilson) [1807052] - [wireless] mwifiex: Re-work support for SDIO HW reset (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Add support for Edimax EW-7611ULB (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Fix missing enable interrupt flag (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Fix missing callback that tests for hw release of buffer (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Fix missing code to retrieve RX buffer address (Jarod Wilson) [1807052] - [net] mac80211: Use debugfs_create_xul() helper (Jarod Wilson) [1807052] - [net] cfg80211: VLAN offload support for set_key and set_sta_vlan (Jarod Wilson) [1807052] - [net] mac80211: Shrink the size of ack_frame_id to make room for tx_time_est (Jarod Wilson) [1807052] - [net] mac80211: don't re-parse elems in ieee80211_assoc_success() (Jarod Wilson) [1807052] - [net] mac80211: move store skb ack code to its own function (Jarod Wilson) [1807052] - [wireless] ath10k: disable cpuidle during downloading firmware (Jarod Wilson) [1807052] - [wireless] ath10k: fix potential issue of peer stats allocation (Jarod Wilson) [1807052] - [wireless] ath10k: fix get invalid tx rate for Mesh metric (Jarod Wilson) [1807052] - [wireless] rtw88: signal completion even on firmware-request failure (Jarod Wilson) [1807052] - [wireless] rtw88: fix potential NULL pointer access for firmware (Jarod Wilson) [1807052] - [wireless] rtlwifi: fix memory leak in rtl92c_set_fw_rsvdpagepkt() (Jarod Wilson) [1807052] - [wireless] rt2800: remove errornous duplicate condition (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8225se: remove some unused const variables (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove set but not used variables (Jarod Wilson) [1807052] - [wireless] rtw88: raise LPS threshold to 50, for less power consumption (Jarod Wilson) [1807052] - [wireless] ath5k: eeprom: Remove unneeded variable (Jarod Wilson) [1807052] - [wireless] ath10k: remove unneeded semicolon (Jarod Wilson) [1807052] - [wireless] mt7601u: use DEFINE_DEBUGFS_ATTRIBUTE to define debugfs fops (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: Drop condition with no effect (Jarod Wilson) [1807052] - [wireless] b43: dma: Fix use true/false for bool type variable (Jarod Wilson) [1807052] - [wireless] b43: main: Fix use true/false for bool type (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192c: Drop condition with no effect (Jarod Wilson) [1807052] - [wireless] rtw88: remove redundant null pointer check on arrays (Jarod Wilson) [1807052] - [wireless] rtw88: avoid FW info flood (Jarod Wilson) [1807052] - [wireless] rtw88: fix potential read outside array boundary (Jarod Wilson) [1807052] - [wireless] rtw88: rearrange if..else statements for rx rate indexes (Jarod Wilson) [1807052] - [wireless] rtw88: use rtw_phy_pg_cfg_pair struct, not arrays (Jarod Wilson) [1807052] - [wireless] rtw88: 8822b: add RFE type 3 support (Jarod Wilson) [1807052] - [wireless] rtw88: fix sparse warnings for power tracking (Jarod Wilson) [1807052] - [wireless] rtw88: fix sparse warnings for DPK (Jarod Wilson) [1807052] - [wireless] net: Fix various misspellings of "connect" (Jarod Wilson) [1807052] - [wireless] net: Fix misspellings of "configure" and "configuration" (Jarod Wilson) [1807052] - [wireless] rtw88: fix GENMASK_ULL for u64 (Jarod Wilson) [1807052] - [wireless] iwlwifi: rx: use new api to get band from rx mpdu (Jarod Wilson) [1807052] - [wireless] iwlwifi: nvm: create function to convert channel index to nl80211_band (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Invert the condition for OFDM rate (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: create function to convert nl80211 band to phy band (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use vzalloc to allocate dumping memory regions (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add user trigger support (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add notification for missed VAP (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix old-style declaration (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: use the new session protection command (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove leftover rs_remove_sta_debugfs() prototype (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add support for new version for D0I3_END_CMD (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: consider ieee80211 station max amsdu value (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support FW notification dumping in case of missed beacon (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: remove old API and some related code (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: rename external debug configuration file (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support FW response/notification region type (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support domain changing via debugfs (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add periodic trigger new API support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: implement monitor allocation flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: implement time point handling (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add TLV allocation new API support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use new API in dump info (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add error tables dumping support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add monitor dumping support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg: remove multi buffers infra (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use new trigger TLV in dump flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use new region TLV in dump flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: load external dbg cfg after internal cfg is loaded (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: fix warnings for symbol not declared (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: remove set but not used variable 'rate_mask' (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove unnecessary NULL check in rtl_regd_init (Jarod Wilson) [1807052] - [wireless] rtw88: add phy_info debugfs to show Tx/Rx physical status (Jarod Wilson) [1807052] - [wireless] rtw88: add set_bitrate_mask support (Jarod Wilson) [1807052] - [wireless] rtw88: Enable 802.11ac beamformee support (Jarod Wilson) [1807052] - [wireless] rtw88: add power tracking support (Jarod Wilson) [1807052] - [wireless] rtw88: use macro to check the current band (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: fix RTL8723BU connection failure issue after warm reboot (Jarod Wilson) [1807052] - [wireless] rtw88: mark rtw_fw_hdr __packed (Jarod Wilson) [1807052] - [wireless] net/wireless: Delete unnecessary checks before the macro call "dev_kfree_skb" (Jarod Wilson) [1807052] - [wireless] wireless: Remove call to memset after dma_alloc_coherent (Jarod Wilson) [1807052] - [wireless] rtw88: include interrupt.h for tasklet_struct (Jarod Wilson) [1807052] - [wireless] rtw88: use a for loop in rtw_power_mode_change(), not goto (Jarod Wilson) [1807052] - [wireless] rtw88: coex: Set 4 slot mode for A2DP (Jarod Wilson) [1807052] - [wireless] rtw88: pci: config phy after chip info is setup (Jarod Wilson) [1807052] - [wireless] rtw88: Use rtw_write8_set to set SYS_FUNC (Jarod Wilson) [1807052] - [wireless] rtw88: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support (Jarod Wilson) [1807052] - [wireless] rtw88: config 8822c multicast address in MAC init flow (Jarod Wilson) [1807052] - [wireless] ath10k: Correct error handling of dma_map_single() (Jarod Wilson) [1807052] - [wireless] ath: rename regulatory rules (Jarod Wilson) [1807052] - [wireless] ath10k: fix memory leak for tpc_stats_final (Jarod Wilson) [1807052] - [wireless] ath10k: fix array out-of-bounds access (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Convert inline routines to little-endian words (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Convert macros that set descriptor (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Replace local bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variable 'err' (Jarod Wilson) [1807052] - [wireless] ath10k: fix null dereference on pointer crash_data (Jarod Wilson) [1807052] - [wireless] ath10k: enable transmit data ack RSSI for QCA9884 (Jarod Wilson) [1807052] - [net] mac80211: minstrel_ht: rename prob_ewma to prob_avg, use it for the new average (Jarod Wilson) [1807052] - [net] mac80211: minstrel_ht: replace rate stats ewma with a better moving average (Jarod Wilson) [1807052] - [net] mac80211: minstrel: remove divisions in tx status path (Jarod Wilson) [1807052] - [net] nl80211: trivial: Remove redundant loop (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variable 'cur_tx_wp' (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: make arrays static, makes object smaller (Jarod Wilson) [1807052] - [wireless] rtw88: Fix an error message (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: add bluetooth co-existence support for single antenna (Jarod Wilson) [1807052] - [wireless] mwifiex: pcie: Fix memory leak in mwifiex_pcie_alloc_cmdrsp_buf (Jarod Wilson) [1829230 1807052] {CVE-2019-19056} - [wireless] rtlwifi: rtl8723: Remove set but not used variable 'own' (Jarod Wilson) [1807052] - [wireless] rtlwifi: btcoex: Remove set but not used variables 'wifi_busy', 'bt_info_ext' (Jarod Wilson) [1807052] - [wireless] rtlwifi: btcoex: Remove set but not used variable 'result' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Remove set but not used variable 'h2c_parameter' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Remove set but not used variables 'v3', 'rtstatus', 'reg_ecc', 'reg_ec4', 'reg_eac', 'b_pathb_ok' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192c: Remove set but not used variables 'reg_ecc', 'reg_eac' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: Remove set but not used variables 'reg_ecc', 'reg_ec4', 'reg_eac', 'b_pathb_ok' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: Remove set but not used variables 'rtstatus', 'bd' (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Improve TX performance of RTL8723BU on rtl8xxxu driver (Jarod Wilson) [1807052] - [wireless] brcmfmac: add support for SAE authentication offload (Jarod Wilson) [1807052] - [wireless] rtw88: fix error handling when setup efuse info (Jarod Wilson) [1807052] - [wireless] rtw88: fix NSS of hw_cap (Jarod Wilson) [1807052] - [wireless] rtw88: use struct rtw_fw_hdr to access firmware header (Jarod Wilson) [1807052] - [wireless] rtw88: raise firmware version debug level (Jarod Wilson) [1807052] - [wireless] rtw88: configure TX queue EDCA parameters (Jarod Wilson) [1807052] - [wireless] rtw88: Don't set RX_FLAG_DECRYPTED if packet has no encryption (Jarod Wilson) [1807052] - [wireless] rtw88: fix beaconing mode rsvd_page memory violation issue (Jarod Wilson) [1807052] - [wireless] rtw88: flush hardware tx queues (Jarod Wilson) [1807052] - [wireless] rtw88: add TX-AMSDU support (Jarod Wilson) [1807052] - [wireless] rtw88: report tx rate to mac80211 stack (Jarod Wilson) [1807052] - [wireless] rtw88: take over rate control from mac80211 (Jarod Wilson) [1807052] - [wireless] rtw88: add driver TX queue support (Jarod Wilson) [1807052] - [wireless] rtw88: allows to set RTS in TX descriptor (Jarod Wilson) [1807052] - [wireless] rtw88: check firmware leave lps successfully (Jarod Wilson) [1807052] - [wireless] mac80211: simplify TX aggregation start (Jarod Wilson) [1807052] - [net] mac80211: pass internal sta to ieee80211_tx_frags() (Jarod Wilson) [1807052] - [net] mac80211: IBSS: avoid unneeded return value processing (Jarod Wilson) [1807052] - [wireless] ar5523: check NULL before memcpy() in ar5523_cmd() (Jarod Wilson) [1807052] - [wireless] ath10k: add support for hardware rfkill (Jarod Wilson) [1807052] - [wireless] ath10k: restore QCA9880-AR1A (v1) detection (Jarod Wilson) [1807052] - [wireless] ath10k: fix offchannel tx failure when no ath10k_mac_tx_frm_has_freq (Jarod Wilson) [1807052] - [wireless] cw1200: Fix a signedness bug in cw1200_load_firmware() (Jarod Wilson) [1807052] - [wireless] rtw88: remove misleading module parameter rtw_fw_support_lps (Jarod Wilson) [1807052] - [wireless] rtw88: add deep PS PG mode for 8822c (Jarod Wilson) [1807052] - [wireless] rtw88: select deep PS mode when module is inserted (Jarod Wilson) [1807052] - [wireless] rtw88: not to enter LPS by coex strategy (Jarod Wilson) [1807052] - [wireless] rtw88: add deep power save support (Jarod Wilson) [1807052] - [wireless] rtw88: leave PS state for dynamic mechanism (Jarod Wilson) [1807052] - [wireless] rtw88: LPS enter/leave should be protected by lock (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused lps state check helper (Jarod Wilson) [1807052] - [wireless] rtw88: not to control LPS by each vif (Jarod Wilson) [1807052] - [wireless] rtw88: not to enter or leave PS under IRQ (Jarod Wilson) [1807052] - [wireless] rtw88: pci: reset H2C queue indexes in a single write (Jarod Wilson) [1807052] - [wireless] rtw88: remove redundant flag check helper function (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723be: Remove set but not used variables 'reg_ecc', 'reg_eac' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variables 'reg_ecc', 'reg_eac' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variables 'short_gi', 'buf_len' (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove set but not used variables 'dataempty', 'hoffset' (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove set but not used variable 'rtstate' (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: prevent leaking urb (Jarod Wilson) [1829887 1807052] {CVE-2019-19068} - [wireless] net/wireless: Use kmemdup rather than duplicating its implementation (Jarod Wilson) [1807052] - [wireless] ath9k_htc: Discard undersized packets (Jarod Wilson) [1807052] - [wireless] ath9k_htc: Modify byte order for an error message (Jarod Wilson) [1807052] - [wireless] ath9k_hw: fix uninitialized variable data (Jarod Wilson) [1807052] - [wireless] ath10k: fix backtrace on coredump (Jarod Wilson) [1807052] - [wireless] ath10k: coredump: fix IRAM addr for QCA9984, QCA4019, QCA9888 and QCA99x0 (Jarod Wilson) [1807052] - [wireless] ath10k: switch to ieee80211_tx_dequeue_ni (Jarod Wilson) [1807052] - [wireless] ath10k: change sw version print format to hex (Jarod Wilson) [1807052] - [wireless] ath10k: print supported MCS rates within service ready event (Jarod Wilson) [1807052] - [wireless] ath10k: print service ready returned channel range (Jarod Wilson) [1807052] - [wireless] ath10k: add 2ghz channel arguments to service ready structure (Jarod Wilson) [1807052] - [wireless] ath9k: remove unused including (Jarod Wilson) [1807052] - [wireless] mwifiex: use 'total_ie_len' in mwifiex_update_bss_desc_with_ie() (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove excessive check in _rtl_ps_inactive_ps() (Jarod Wilson) [1807052] - [wireless] rtlwifi: prevent memory leak in rtl_usb_probe (Jarod Wilson) [1829850 1807052] {CVE-2019-19063} - [wireless] rtlwifi: rtl8723ae: Remove unused 'rtstatus' variable (Jarod Wilson) [1807052] - [wireless] mt7601u: fix bbp version check in mt7601u_wait_bbp_ready (Jarod Wilson) [1807052] - [wireless] rtw88: 8822c: fix boolreturn.cocci warnings (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove duplicated if condition (Jarod Wilson) [1807052] - [wireless] brcmfmac: fix suspend/resume when power is cut off (Jarod Wilson) [1807052] - [wireless] brcmfmac: don't WARN when there are no requests (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove a useless test (Jarod Wilson) [1807052] - [wireless] brcmfmac: send port authorized event for FT-802.1X (Jarod Wilson) [1807052] - [wireless] ath10k: fix memory leak (Jarod Wilson) [1807052] - [wireless] ath10k: remove the warning of sdio not full support (Jarod Wilson) [1807052] - [wireless] ath: Use dev_get_drvdata where possible (Jarod Wilson) [1807052] - [wireless] ath: fix various spelling mistakes (Jarod Wilson) [1807052] - [wireless] ath10k: fix missing checks for bmi reads and writes (Jarod Wilson) [1807052] - [wireless] ath10k: Add support to provide higher range mem chunks in wmi init command (Jarod Wilson) [1807052] - [wireless] ath10k: Add peer param map for tlv and non-tlv (Jarod Wilson) [1807052] - [wireless] ath10k: Enable MSA region dump support for WCN3990 (Jarod Wilson) [1807052] - [wireless] ath10k: Add xo calibration support for wifi rf clock (Jarod Wilson) [1807052] - [wireless] ath10k: fix spelling mistake "eanble" -> "enable" (Jarod Wilson) [1807052] - [wireless] ath10k: add cleanup in ath10k_sta_state() (Jarod Wilson) [1807052] - [wireless] ath10k: revalidate the msa region coming from firmware (Jarod Wilson) [1807052] - [wireless] ath10k: use ath10k_pci_soc_ functions for all warm_reset instances (Jarod Wilson) [1807052] - [wireless] ath10k: Use ARRAY_SIZE (Jarod Wilson) [1807052] - [wireless] ath10k: avoid leaving .bss_info_changed prematurely (Jarod Wilson) [1807052] - [wireless] ath10k: Use standard bulk clock API in snoc (Jarod Wilson) [1807052] - [wireless] ath10k: Use standard regulator bulk API in snoc (Jarod Wilson) [1807052] - [wireless] ath10k: snoc: skip regulator operations (Jarod Wilson) [1807052] - [wireless] ath10k: Fix HOST capability QMI incompatibility (Jarod Wilson) [1807052] - [wireless] ath10k: Check if station exists before forwarding tx airtime report (Jarod Wilson) [1807052] - [include] include/linux/units.h: add helpers for kelvin to/from Celsius conversion (Jarod Wilson) [1807052]- [x86] x86/PCI: Define to_pci_sysdata() even when !CONFIG_PCI (Myron Stowe) [1788364 1783436] - [pci] PCI: vmd: Add two VMD Device IDs (Myron Stowe) [1788364 1783436] - [pci] x86/PCI: Expose VMD's pci_dev in struct pci_sysdata (Myron Stowe) [1788364 1783436] - [x86] x86/PCI: Add to_pci_sysdata() helper (Myron Stowe) [1788364 1783436] - [pci] PCI: vmd: Add device id for VMD device 8086:9A0B (Myron Stowe) [1788364 1783436] - [pci] PCI: vmd: Add bus 224-255 restriction decode (Myron Stowe) [1788364 1783436] - [fs] fuse: copy_file_range needs to strip setuid bits and update timestamps (Eric Sandeen) [1721881] - [fs] vfs: allow copy_file_range to copy across devices (Eric Sandeen) [1721881] - [fs] vfs: add missing checks to copy_file_range (Eric Sandeen) [1721881] - [mm] vfs: remove redundant checks from generic_remap_checks() (Eric Sandeen) [1721881] - [fs] vfs: introduce generic_file_rw_checks() (Eric Sandeen) [1721881] - [fs] vfs: no fallback for ->copy_file_range (Eric Sandeen) [1721881] - [fs] vfs: introduce generic_copy_file_range() (Eric Sandeen) [1721881] - [ptp] ptp: add VMware virtual PTP clock driver (Prarit Bhargava) [1829706] - [powerpc] powerpc/powernv/ioda: Handle failures correctly in pnv_pci_ioda_iommu_bypass_supported() (Michael Roth) [1805101] - [powerpc] powerpc/pseries/dma: Enable SWIOTLB (Michael Roth) [1805101] - [powerpc] powerpc/pseries/dma: Allow SWIOTLB (Michael Roth) [1805101] - [powerpc] powerpc/powernv: Fix build with IOMMU_API=n (Michael Roth) [1805101] - [powerpc] powerpc/powernv: Remove unused pnv_npu_try_dma_set_bypass() function (Michael Roth) [1805101] - [powerpc] powerpc/dma: Fix invalid DMA mmap behavior (Michael Roth) [1805101] - [powerpc] powerpc/dma: trim the fat from (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove set_dma_offset (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove get_dma_offset (Michael Roth) [1805101] - [powerpc] powerpc/dma: use the generic direct mapping bypass (Michael Roth) [1805101] - [powerpc] powerpc/powernv/npu: Remove NPU DMA ops (Michael Roth) [1805101] - [powerpc] powerpc/dma: use the dma_direct mapping routines (Michael Roth) [1805101] - [powerpc] powerpc/dma: use the dma-direct allocator for coherent platforms (Michael Roth) [1805101] - [powerpc] swiotlb: remove swiotlb_dma_supported (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove dma_nommu_dma_supported (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove dma_nommu_get_required_mask (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove dma_nommu_mmap_coherent (Michael Roth) [1805101] - [powerpc] powerpc/dma: use phys_to_dma instead of get_dma_offset (Michael Roth) [1805101] - [powerpc] dma-mapping, powerpc: simplify the arch dma_set_mask override (Michael Roth) [1805101] - [powerpc] powerpc/dma: fix an off-by-one in dma_capable (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove max_direct_dma_addr (Michael Roth) [1805101] - [powerpc] powerpc/dma: move pci_dma_dev_setup_swiotlb to fsl_pci.c (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove get_pci_dma_ops (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the iommu fallback for coherent allocations (Michael Roth) [1805101] - [powerpc] powerpc/pci: remove the dma_set_mask pci_controller ops methods (Michael Roth) [1805101] - [misc] cxl: drop the dma_set_mask callback from vphb (Michael Roth) [1805101] - [powerpc] KABI: re-use deprecated field for iommu_bypass_supported function pointer (Michael Roth) [1805101] - [powerpc] powerpc/dma: stop overriding dma_get_required_mask (Michael Roth) [1805101] - [dma] KABI: add fake includes for headers used in arch/powerpc/kernel/dma.c (Michael Roth) [1805101] - [powerpc] powerpc/powernv: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/powernv: Remove PCI_MSI ifdef checks (Michael Roth) [1805101] - [powerpc] powerpc/powernv: remove pnv_npu_dma_set_mask (Michael Roth) [1805101] - [powerpc] powerpc/powernv: remove pnv_pci_ioda_pe_single_vendor (Michael Roth) [1805101] - [powerpc] powerpc/dart: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/dart: remove dead cleanup code in iommu_init_early_dart (Michael Roth) [1805101] - [powerpc] powerpc/cell: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/cell: move dma direct window setup out of dma_configure (Michael Roth) [1805101] - [powerpc] powerpc/pseries: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/pseries: unwind dma_get_required_mask_pSeriesLP a bit (Michael Roth) [1805101] - [powerpc] powerpc/dma: handle iommu bypass in dma_iommu_ops (Michael Roth) [1805101] - [powerpc] powerpc/dma: untangle vio_dma_mapping_ops from dma_iommu_ops (Michael Roth) [1805101] - [dma] dma-direct: we might need GFP_DMA for 32-bit dma masks (Michael Roth) [1805101] - [powerpc] powerpc/dma: split the two __dma_alloc_coherent implementations (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the unused dma_iommu_ops export (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the unused ISA_DMA_THRESHOLD export (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the unused ARCH_HAS_DMA_MMAP_COHERENT define (Michael Roth) [1805101] - [powerpc] powerpc/dma: properly wire up the unmap_page and unmap_sg methods (Michael Roth) [1805101] - [powerpc] powerpc: allow NOT_COHERENT_CACHE for amigaone (Michael Roth) [1805101] - [powerpc] powerpc/fadump: consider reserved ranges while reserving memory (Steve Best) [1813701] - [powerpc] powerpc/fadump: use static allocation for reserved memory ranges (Steve Best) [1813701] - [fs] audit: Report suspicious O_CREAT usage (partial) (Eric Sandeen) [1797843] - [fs] vfs: fix do_last() regression (Eric Sandeen) [1797843] - [fs] do_last(): fetch directory ->i_mode and ->i_uid before it's too late (Eric Sandeen) [1797843] - [fs] namei: allow restricted O_CREAT of FIFOs and regular files (Eric Sandeen) [1797843] - [netdrv] fm10k: use txqueue parameter in fm10k_tx_timeout (Neil Horman) [1781387] - [netdrv] fm10k: Use sizeof_field() macro (Neil Horman) [1781387] - [netdrv] fm10k: update driver version to match out-of-tree (Neil Horman) [1781387] - [netdrv] fm10k: add support for ndo_get_vf_stats operation (Neil Horman) [1781387] - [netdrv] fm10k: add missing field initializers to TLV attributes) (Neil Horman) [1781387] - [netdrv] fm10k: use a local variable for the frag pointer (Neil Horman) [1781387] - [netdrv] ethernet: Delete unnecessary checks before the macro call "dev_kfree_skb" (Neil Horman) [1781387] - [netdrv] fm10k: no need to check return value of debugfs_create functions (Neil Horman) [1781387] - [security] KEYS: Avoid false positive ENOMEM error on key read (Waiman Long) [1807693] - [security] KEYS: Don't write out to userspace while holding key semaphore (Waiman Long) [1807693] - [security] selinux: allow per-file labeling for CephFS (Ondrej Mosnacek) [1823764] - [scsi] scsi: qedi: make qedi_ll2_buf_size static (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Fix termination timeouts in session logout (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Add modules param to enable qed iSCSI debug (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Do not flush offload work if ARP not resolved (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Use correct msix count for fastpath vectors (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Avoid unnecessary endpoint allocation on link down (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Remove additional char from boot target iqnname (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Add PCI shutdown handler support (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Add MFW error recovery process (Nilesh Javali) [1792111] - [netdrv] ibmvnic: Skip fatal error reset after passive init (Steve Best) [1830989] - [ata] ahci: Add Intel Comet Lake PCH-V PCI ID (David Milburn) [1802690] - [ata] ahci: Add Intel Comet Lake PCH-H PCI ID (David Milburn) [1802690] - [ata] ahci: Add Intel Comet Lake H RAID PCI ID (David Milburn) [1802690] - [x86] x86, sched: Move check for CPU type to caller function (Prarit Bhargava) [1828260] - [x86] x86, sched: Don't enable static key when starting secondary CPUs (Prarit Bhargava) [1828260] - [x86] x86, sched: Account for CPUs with less than 4 cores in freq. invariance (Prarit Bhargava) [1828260] - [x86] x86, sched: Bail out of frequency invariance if base frequency is unknown (Prarit Bhargava) [1828260] - [lib] scsi: klist: Make it safe to use klists in atomic context (Waiman Long) [1829027] - [char] random: try to actively add entropy rather than passively wait for it (Neil Horman) [1778762] - [md] dm writecache: fix data corruption when reloading the target (Mike Snitzer) [1830129] - [kernel] smp: Allow smp_call_function_single_async() to insert locked csd (Peter Xu) [1830014] - [scsi] scsi: ibmvscsi: Fix WARN_ON during event pool release (Steve Best) [1829242] - [block] block: avoid to check null profile pointer to see if it is in 3rd party module (Ming Lei) [1829464] - [tools] perf scripting perl: Add common_callchain to fix argument order (Michael Petlan) [1809191] - [netdrv] ionic: fix unused assignment (Jonathan Toppins) [1780645] - [netdrv] ionic: add dynamic_debug header (Jonathan Toppins) [1780645] - [netdrv] ionic: set station addr only if needed (Jonathan Toppins) [1780645] - [netdrv] ionic: replay filters after fw upgrade (Jonathan Toppins) [1780645] - [netdrv] ionic: remove lifs on fw reset (Jonathan Toppins) [1780645] - [netdrv] ionic: disable the queues on link down (Jonathan Toppins) [1780645] - [netdrv] ionic: check for queues before deleting (Jonathan Toppins) [1780645] - [netdrv] ionic: clean tx queue of unfinished requests (Jonathan Toppins) [1780645] - [netdrv] ionic: move irq request to qcq alloc (Jonathan Toppins) [1780645] - [netdrv] ionic: move debugfs add/delete to match alloc/free (Jonathan Toppins) [1780645] - [netdrv] ionic: check for linkup in watchdog (Jonathan Toppins) [1780645] - [netdrv] ionic: decouple link message from netdev state (Jonathan Toppins) [1780645] - [netdrv] ionic: check for NULL structs on teardown (Jonathan Toppins) [1780645] - [netdrv] ionic: clean irq affinity on queue deinit (Jonathan Toppins) [1780645] - [netdrv] ionic: ignore eexist on rx filter add (Jonathan Toppins) [1780645] - [netdrv] ionic: only save good lif dentry (Jonathan Toppins) [1780645] - [netdrv] ionic: leave dev cmd request contents alone on FW timeout (Jonathan Toppins) [1780645] - [netdrv] ionic: add timeout error checking for queue disable (Jonathan Toppins) [1780645] - [netdrv] ionic: make spdxcheck.py happy (Jonathan Toppins) [1780645] - [netdrv] ionic: add decode for IONIC_RC_ENOSUPP (Jonathan Toppins) [1780645] - [netdrv] ionic: print data for unknown xcvr type (Jonathan Toppins) [1780645] - [netdrv] ionic: remove adminq napi instance (Jonathan Toppins) [1780645] - [netdrv] ionic: deinit rss only if selected (Jonathan Toppins) [1780645] - [netdrv] ionic: stop devlink warn on mgmt device (Jonathan Toppins) [1780645] - [netdrv] net: ionic: Use scnprintf() for avoiding potential buffer overflow (Jonathan Toppins) [1780645] - [netdrv] netdev:pass the stuck queue to the timeout handler (Jonathan Toppins) [1780645] - [netdrv] ionic: drop ethtool driver version (Jonathan Toppins) [1780645] - [netdrv] ionic: add support for device id 0x1004 (Jonathan Toppins) [1780645] - [netdrv] ionic: print pci bus lane info (Jonathan Toppins) [1780645] - [netdrv] ionic: support ethtool rxhash disable (Jonathan Toppins) [1780645] - [netdrv] ionic: clean up bitflag usage (Jonathan Toppins) [1780645] - [netdrv] ionic: improve irq numa locality (Jonathan Toppins) [1780645] - [netdrv] ionic: remove pragma packed (Jonathan Toppins) [1780645] - [netdrv] ionic: keep ionic dev on lif init fail (Jonathan Toppins) [1780645] - [netdrv] ionic: fix vf op lock usage (Jonathan Toppins) [1780645] - [netdrv] ionic: let core reject the unsupported coalescing parameters (Jonathan Toppins) [1780645] - [netdrv] ionic: fix fw_status read (Jonathan Toppins) [1780645] - [netdrv] ionic: use new helper tcp_v6_gso_csum_prep (Jonathan Toppins) [1780645] - [netdrv] ionic: fix rxq comp packet type mask (Jonathan Toppins) [1780645] - [netdrv] ionic: clear compiler warning on hb use before set (Jonathan Toppins) [1780645] - [netdrv] ionic: restrict received packets to mtu size (Jonathan Toppins) [1780645] - [netdrv] ionic: add Rx dropped packet counter (Jonathan Toppins) [1780645] - [netdrv] ionic: drop use of subdevice tags (Jonathan Toppins) [1780645] - [netdrv] ionic: support sr-iov operations (Jonathan Toppins) [1780645] - [netdrv] ionic: ionic_if bits for sr-iov support (Jonathan Toppins) [1780645] - [netdrv] ionic: keep users rss hash across lif reset (Jonathan Toppins) [1780645] - [netdrv] ionic: Remove set but not used variable 'sg_desc' (Jonathan Toppins) [1780645] - [netdrv] ionic: update driver version (Jonathan Toppins) [1780645] - [netdrv] ionic: implement support for rx sgl (Jonathan Toppins) [1780645] - [netdrv] ionic: add a watchdog timer to monitor heartbeat (Jonathan Toppins) [1780645] - [netdrv] ionic: add heartbeat check (Jonathan Toppins) [1780645] - [netdrv] ionic: reverse an interrupt coalesce calculation (Jonathan Toppins) [1780645] - [netdrv] ionic: fix up struct name comments (Jonathan Toppins) [1780645] - [netdrv] dynamic_debug: provide dynamic_hex_dump stub (Jonathan Toppins) [1780645] - [netdrv] ionic: fix stats memory dereference (Jonathan Toppins) [1780645] - [netdrv] ionic: add lif_quiesce to wait for queue activity to stop (Jonathan Toppins) [1780645] - [netdrv] ionic: implement ethtool set-fec (Jonathan Toppins) [1780645] - [netdrv] ionic: report users coalesce request (Jonathan Toppins) [1780645] - [netdrv] ionic: use wait_on_bit_lock() rather than open code (Jonathan Toppins) [1780645] - [netdrv] ionic: simplify returns in devlink info (Jonathan Toppins) [1780645] - [netdrv] ionic: select CONFIG_NET_DEVLINK (Jonathan Toppins) [1780645] - [netdrv] ionic: Fix an error code in ionic_lif_alloc() (Jonathan Toppins) [1780645] - [netdrv] ionic: Remove unnecessary ternary operator in ionic_debugfs_add_ident (Jonathan Toppins) [1780645] - [netdrv] ionic: Remove unused including (Jonathan Toppins) [1780645] - [netdrv] ionic: Add coalesce and other features (Jonathan Toppins) [1780645] - [netdrv] ionic: Add RSS support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add driver stats (Jonathan Toppins) [1780645] - [netdrv] ionic: Add netdev-event handling (Jonathan Toppins) [1780645] - [netdrv] ionic: Add Tx and Rx handling (Jonathan Toppins) [1780645] - [netdrv] ionic: Add initial ethtool support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add async link status check and basic stats (Jonathan Toppins) [1780645] - [netdrv] ionic: Add Rx filter and rx_mode ndo support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add management of rx filters (Jonathan Toppins) [1780645] - [netdrv] ionic: Add the basic NDO callbacks for netdev support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add notifyq support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add adminq action (Jonathan Toppins) [1780645] - [netdrv] ionic: Add basic adminq support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add interrupts and doorbells (Jonathan Toppins) [1780645] - [netdrv] ionic: Add basic lif support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add port management commands (Jonathan Toppins) [1780645] - [netdrv] ionic: Add hardware init and device commands (Jonathan Toppins) [1780645] - [netdrv] ionic: Add basic framework for IONIC Network device driver (Jonathan Toppins) [1780645] - [netdrv] net: sfp: add more extended compliance codes (Jonathan Toppins) [1780645] - [scsi] scsi: core: Add DID_ALLOC_FAILURE and DID_MEDIUM_ERROR to hostbyte_table (Maurizio Lombardi) [1819061] - [netdrv] igc: Add debug messages to MAC filter code (Corinna Vinschen) [1781384] - [netdrv] igc: Refactor igc_del_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Refactor igc_mac_entry_can_be_used() (Corinna Vinschen) [1781384] - [netdrv] igc: Remove igc_*_mac_steering_filter() wrappers (Corinna Vinschen) [1781384] - [netdrv] igc: Remove IGC_MAC_STATE_QUEUE_STEERING (Corinna Vinschen) [1781384] - [netdrv] igc: Remove 'queue' check in igc_del_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Improve address check in igc_del_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Refactor igc_rar_set_index() (Corinna Vinschen) [1781384] - [netdrv] igc: Fix igc_uc_unsync() (Corinna Vinschen) [1781384] - [netdrv] igc: Change igc_add_mac_filter() returning value (Corinna Vinschen) [1781384] - [netdrv] igc: Check unsupported flag in igc_add_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Remove duplicate code in MAC filtering logic (Corinna Vinschen) [1781384] - [netdrv] igc: Add new device IDs for i225 part (Corinna Vinschen) [1781384] - [netdrv] igc: Fix default MAC address filter override (Corinna Vinschen) [1781384] - [netdrv] igc: Remove dead code related to flower filter (Corinna Vinschen) [1781384] - [netdrv] igc: Fix NFC queue redirection support (Corinna Vinschen) [1781384] - [netdrv] igc: Remove copper fiber switch control (Corinna Vinschen) [1781384] - [netdrv] igc: Enable NETIF_F_HW_TC flag (Corinna Vinschen) [1781384] - [netdrv] igc: Fix double definition (Corinna Vinschen) [1781384] - [netdrv] igc: Fix overwrites when dumping registers (Corinna Vinschen) [1781384] - [netdrv] igc: Remove forward declaration (Corinna Vinschen) [1781384] - [netdrv] igc: Remove unused CTRL_EXT_LINK_MODE_MASK (Corinna Vinschen) [1781384] - [netdrv] igc: Remove unused MDIC_DEST mask (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for ETF offloading (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for taprio offloading (Corinna Vinschen) [1781384] - [netdrv] igc: Add GSO partial support (Corinna Vinschen) [1781384] - [netdrv] net: igc: let core reject the unsupported coalescing parameters (Corinna Vinschen) [1781384] - [netdrv] intel: Replace zero-length array with flexible-array member (Corinna Vinschen) [1781384] - [netdrv] igc: Add comment (Corinna Vinschen) [1781384] - [netdrv] igc: Add WOL support (Corinna Vinschen) [1781384] - [netdrv] igc: Add pcie error handler support (Corinna Vinschen) [1781384] - [netdrv] igc: Complete to commit Add basic skeleton for PTP (Corinna Vinschen) [1781384] - [netdrv] igc: Fix the typo in comment (Corinna Vinschen) [1781384] - [netdrv] igc: Add dump options (Corinna Vinschen) [1781384] - [netdrv] igc: Complete to commit Add legacy power management support (Corinna Vinschen) [1781384] - [netdrv] igc: make non-global functions static (Corinna Vinschen) [1781384] - [netdrv] igc: Add PHY power management control (Corinna Vinschen) [1781384] - [netdrv] RHEL-only: Revert "igc: add additional delay during phy hw reset" (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for TSO (Corinna Vinschen) [1781384] - [netdrv] igc: Add SKU for i225 device (Corinna Vinschen) [1781384] - [netdrv] igc: Remove unused definition (Corinna Vinschen) [1781384] - [netdrv] igc: Fix typo in a comment (Corinna Vinschen) [1781384] - [netdrv] igc: Use Start of Packet signal from PHY for timestamping (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for ethtool GET_TS_INFO command (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for TX timestamping (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for RX timestamping (Corinna Vinschen) [1781384] - [netdrv] igc: Add basic skeleton for PTP (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_sw_init (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_write_itr (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_assign_vector (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_free_q_vector (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_free_q_vectors (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_irq_disable (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_irq_enable (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_configure_msix (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_set_rx_mode (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_set_interrupt_capability (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_alloc_mapped_page (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_configure (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_set_default_mac_filter (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_power_down_link (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_clean_tx_ring (Corinna Vinschen) [1781384] - [netdrv] igc: Remove serdes comments from a description of methods (Corinna Vinschen) [1781384] - [netdrv] igc: Add legacy power management support (Corinna Vinschen) [1781384] - [netdrv] igc: Add 64 bit DMA access support (Corinna Vinschen) [1781384] - [netdrv] igc: Fix parameter descriptions for a several functions (Corinna Vinschen) [1781384] - [netdrv] igc: Fix the parameter description for igc_alloc_rx_buffers (Corinna Vinschen) [1781384] - [netdrv] igc: Remove excess parameter description from igc_is_non_eop (Corinna Vinschen) [1781384] - [netdrv] igc: Prefer to use the pci_release_mem_regions method (Corinna Vinschen) [1781384] - [netdrv] igc: Improve the DMA mapping flow (Corinna Vinschen) [1781384] - [netdrv] igc: Add scatter gather support (Corinna Vinschen) [1781384] - [netdrv] treewide: Use sizeof_field() macro (Corinna Vinschen) [1781384] - [netdrv] igb/igc: use ktime accessors for skb->tstamp (Corinna Vinschen) [1781384] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Corinna Vinschen) [1781384] - [netdrv] igb/igc: Don't warn on fatal read failures when the device is removed (Corinna Vinschen) [1781384] - [netdrv] net: igb: let core reject the unsupported coalescing parameters (Corinna Vinschen) [1781381] - [netdrv] intel: Replace zero-length array with flexible-array member (Corinna Vinschen) [1781381] - [netdrv] igb: Fix SGMII SFP module discovery for 100FX/LX (Corinna Vinschen) [1781381] - [netdrv] igb: dont drop packets if rx flow control is enabled (Corinna Vinschen) [1781381] - [netdrv] treewide: Use sizeof_field() macro (Corinna Vinschen) [1781381] - [netdrv] igb/igc: use ktime accessors for skb->tstamp (Corinna Vinschen) [1781381] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Corinna Vinschen) [1781381] - [netdrv] igb: Fix constant media auto sense switching when no cable is connected (Corinna Vinschen) [1781381] - [netdrv] igb: Enable media autosense for the i350 (Corinna Vinschen) [1781381] - [netdrv] igb/igc: Don't warn on fatal read failures when the device is removed (Corinna Vinschen) [1781381] - [netdrv] igb: Add UDP segmentation offload support (Corinna Vinschen) [1781381] - [netdrv] net: igbvf: reject unsupported coalescing params (Corinna Vinschen) [1781382] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Corinna Vinschen) [1781382] - [ata] ahci: Do not export local variable ahci_em_messages (Prarit Bhargava) [1826320] - [scripts] modpost: check for static EXPORT_SYMBOL* functions (Prarit Bhargava) [1826320] - [kernel] torture: Remove exporting of internal functions (Prarit Bhargava) [1826320] - [input] Input: synaptics-rmi4 - remove the exporting of rmi_2d_sensor_set_input_params (Prarit Bhargava) [1826320] - [netdrv] net: phy: make exported variables non-static (Prarit Bhargava) [1826320] - [scsi] scsi: libsas: remove the exporting of sas_wait_eh (Prarit Bhargava) [1826320] - [drm] drm/client: remove the exporting of drm_client_close (Prarit Bhargava) [1826320] - [scripts] modpost: always show verbose warning for section mismatch (Prarit Bhargava) [1826320] - [net] netfilter: nf_nat_ipv4: remove obsolete EXPORT_SYMBOL (Prarit Bhargava) [1826320] - [crypto] crypto: skcipher - remove the exporting of skcipher_walk_next (Prarit Bhargava) [1826320] - [scsi] scsi: scsi_debug: Fix a recently introduced regression (Ming Lei) [1822001] - [block] scsi: block: remove bidi support (Ming Lei) [1822001] - [scsi] scsi: block: remove req->special (Ming Lei) [1822001] - [scsi] scsi: stop setting up request->special (Ming Lei) [1822001] - [scsi] scsi: remove bidirectional command support (Ming Lei) [1822001] - [scsi] scsi: remove the SCSI OSD library (Ming Lei) [1822001] - [fs] scsi: fs: remove exofs (Ming Lei) [1822001] - [block] scsi: bsg-lib: handle bidi requests without block layer help (Ming Lei) [1822001] - [block] scsi: bsg: refactor bsg_ioctl (Ming Lei) [1822001] - [netdrv] sfc: fix XDP-redirect in this driver (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: support configuring vf spoofchk on EF10 VFs (Jarod Wilson) [1796582 1788753 1684003] - [netdrv] sfc: ethtool: Refactor to remove fallthrough comments in case blocks (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Replace zero-length array with flexible-array member (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove unused variable 'efx_default_channel_type' (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: elide assignment of skb (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some ARFS code out of headers (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: only schedule asynchronous filter work if needed (Jarod Wilson) [1796582 1788753] - [netdrv] net: sfc: Use scnprintf() for avoiding potential buffer overflow (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: detach from cb_page in efx_copy_channel() (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: complete the next packet when we receive a timestamp (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: fix timestamp reconstruction at 16-bit rollover points (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move mcdi filtering code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: create header for mcdi filtering code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: rename mcdi filtering functions/structs (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove duplicated include from efx.c (Jarod Wilson) [1796582 1788753] - [netdrv] sfc/ethtool_common: Make some function to static (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove set but not used variable 'nic_data' (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove duplicated include from ef10.c (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move RPS code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move yet more functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move RSS code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move a couple more functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some ethtool code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move various functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move more rx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move more tx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: refactor selftest work init code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI logging device attribute (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: conditioned some functionality (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI receive queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI transmit queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI event queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI VI alloc/free code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move more MCDI port code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some MCDI port utility functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some port link state/caps code (Jarod Wilson) [1796582 1788753] - [netdrv] net: sfc: use skb_list_walk_safe helper for gso segments (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move common tx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move common rx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move event queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move channel interrupt management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move channel alloc/removal code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move channel start/stop code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some channel-related code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move struct init and fini code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some device reset code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move datapath management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move mac configuration and status functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move reset workqueue code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: further preparation for code split (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: add new headers in preparation for code split (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove ioremap_nocache and devm_ioremap_nocache (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Remove unnecessary dependencies on I2C (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: avoid duplicate error handling code in 'efx_ef10_sriov_set_vf_mac()' (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Include XDP packet headroom in buffer step size (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: fix channel allocation with brute force (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: fix build without CONFIG_RFS_ACCEL (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: do ARFS expiry work occasionally even without NAPI poll (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: add statistics for ARFS (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: suppress MCDI errors from ARFS (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: change ARFS expiry mechanism (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Only cancel the PPS workqueue if it exists (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: trace_xdp_exception on XDP failure (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: add XDP counters to ethtool stats (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: handle XDP_TX outcomes of XDP eBPF programs (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: allocate channels for XDP tx queues (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Enable setting of xdp_prog (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: perform XDP processing on received packets (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: support encapsulation of xdp_frames in efx_tx_buffer (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: use the new __netdev_tx_sent_queue BQL optimisation (Jarod Wilson) [1796582 1788753] - [netdrv] net/sfc: Use skb_frag_off accessors (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: phase out dma_zalloc_coherent() (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove redundant variable old_vlan (Jarod Wilson) [1796582 1788753] - [netdrv] net: sfc: Convert random_ether_addr to eth_random_addr (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: batch up RX delivery (Jarod Wilson) [1796582 1788753] - [netdrv] net: mlx4: Use scnprintf() for avoiding potential buffer overflow (Alaa Hleihel) [1789363] - [infiniband] IB/mlx4: Fix leak in id_map_find_del (Alaa Hleihel) [1789363] - [infiniband] IB/mlx4: Fix memory leak in add_gid error flow (Alaa Hleihel) [1789363] - [include] mlx4: Bump up MAX_MSIX from 64 to 128 (Alaa Hleihel) [1789363] - [infiniband] RDMA/mlx4: use true, false for bool variable (Alaa Hleihel) [1789363] - [infiniband] RDMA/mlx4: Redo TX checksum offload in line with docs (Alaa Hleihel) [1789363] - [netdrv] mlx4: use new txqueue timeout argument (Alaa Hleihel) [1789363] - [netdrv] treewide: Use sizeof_field() macro (Alaa Hleihel) [1789363 1789362] - [infiniband] IB/mlx4: Update HW GID table while adding vlan GID (Alaa Hleihel) [1789363 1789362] - [netdrv] net/mlx4_en: ethtool: make array modes static const, makes object smaller (Alaa Hleihel) [1789363 1789361] - [infiniband] RDMA/mlx4: Annotate boolean arguments as bool and not int (Alaa Hleihel) [1789363 1789361] - [netdrv] mlx4: avoid large stack usage in mlx4_init_hca() (Alaa Hleihel) [1789363 1789361] - [infiniband] RDMA/mlx4: Untag user pointers in mlx4_get_umem_mr (Alaa Hleihel) [1789363 1789361] - [netdrv] net: Use skb accessors in network drivers (Alaa Hleihel) [1789363 1789361]- [net] ip_vti: receive ipip packet by calling ip_tunnel_rcv (Xin Long) [1815554] - [net] xfrm: call xfrm_output_gso when inner_protocol is set in xfrm_output (Xin Long) [1815968] - [net] sched: Fix hw_stats_type setting in pedit loop (Ivan Vecera) [1817156] - [net] sched: set the hw_stats_type in pedit loop (Ivan Vecera) [1817156] - [include] flow_offload: fix allowed types check (Ivan Vecera) [1817156] - [net] sched: act: allow user to specify type of HW stats for a filter (Ivan Vecera) [1817156] - [net] flow_offload: pass action cookie through offload structures (Ivan Vecera) [1817156] - [netdrv] flow_offload: introduce "disabled" HW stats type and allow it in mlxsw (Ivan Vecera) [1817156] - [include] flow_offload: introduce "delayed" HW stats type and allow it in mlx5 (Ivan Vecera) [1817156] - [netdrv] flow_offload: introduce "immediate" HW stats type and allow it in mlxsw (Ivan Vecera) [1817156] - [netdrv] mlxsw: restrict supported HW stats type to "any" (Ivan Vecera) [1817156] - [netdrv] mlxsw: spectrum_flower: Do not allow mixing HW stats types for actions (Ivan Vecera) [1817156] - [netdrv] flow_offload: check for basic action hw stats type (Ivan Vecera) [1817156] - [include] flow_offload: Introduce offload of HW stats type (Ivan Vecera) [1817156] - [net] netfilter: nf_tables: use-after-free in dynamic operations (Phil Sutter) [1822577] - [net] devlink: Add health recover notifications on devlink flows (Petr Oros) [1821169] - [net] devlink: add devink notification when reporter update health state (Petr Oros) [1821169] - [net] devlink: add support for reporter recovery completion (Petr Oros) [1821169] - [net] devlink: Add new "enable_roce" generic device param (Petr Oros) [1805955] - [netdrv] netdevsim: use __GFP_NOWARN to avoid memalloc warning (Petr Oros) [1817157] - [tools] selftests: add netdevsim devlink health tests (Petr Oros) [1817157] - [netdrv] netdevsim: implement couple of testing devlink health reporters (Petr Oros) [1817157] - [net] devlink: propagate extack down to health reporter ops (Petr Oros) [1817157] - [net] devlink: don't do reporter recovery if the state is healthy (Petr Oros) [1817157] - [net] xsk: Fix out of boundary write in __xsk_rcv_memcpy (Jiri Benc) [1819630] - [samples] bpf: Allow for -ENETDOWN in xdpsock (Jiri Benc) [1819630] - [samples] bpf: Drop doubled variable declaration in xdpsock (Jiri Benc) [1819630] - [netdrv] i40e: Relax i40e_xsk_wakeup's return value when PF is busy (Jiri Benc) [1819630] - [netdrv] net/ixgbe: Fix concurrency issues between config flow and XSK (Jiri Benc) [1819630] - [netdrv] net/i40e: Fix concurrency issues between config flow and XSK (Jiri Benc) [1819630] - [net] xsk: Add rcu_read_lock around the XSK wakeup (Jiri Benc) [1819630] - [net] fix installing orphaned programs (Jiri Benc) [1819630] - [tools] libbpf: Don't use kernel-side u32 type in xsk.c (Jiri Benc) [1819630] - [tools] libbpf: Fix compatibility for kernels without need_wakeup (Jiri Benc) [1819630] - [net] xsk: Fix crash in poll when device does not support ndo_xsk_wakeup (Jiri Benc) [1819630] - [kernel] bpf/xskmap: Return ERR_PTR for failure case instead of NULL. (Jiri Benc) [1819630] - [net] xdp: convert put_page() to put_user_page*() (Jiri Benc) [1819630] - [net] xdp: mm: introduce page_size() (Jiri Benc) [1819630] - [net] xsk: relax UMEM headroom alignment (Jiri Benc) [1819630] - [samples] bpf: fix xdpsock l2fwd tx for unaligned mode (Jiri Benc) [1819630] - [netdrv] ixgbe: fix xdp handle calculations (Jiri Benc) [1819630] - [netdrv] ixgbe: fix xdp handle calculations (Jiri Benc) [1819630] - [netdrv] i40e: fix xdp handle calculations (Jiri Benc) [1819630] - [netdrv] i40e: fix xdp handle calculations (Jiri Benc) [1819630] - [net] xsk: use state member for socket synchronization (Jiri Benc) [1819630] - [documentation] doc/af_xdp: include unaligned chunk case (Jiri Benc) [1819630] - [samples] bpf: use hugepages in xdpsock app (Jiri Benc) [1819630] - [samples] bpf: add buffer recycling for unaligned chunks to xdpsock (Jiri Benc) [1819630] - [samples] bpf: add unaligned chunks mode support to xdpsock (Jiri Benc) [1819630] - [tools] libbpf: add flags to umem config (Jiri Benc) [1819630] - [netdrv] mlx5e: Allow XSK frames smaller than a page (Jiri Benc) [1819630] - [netdrv] mlx5e: modify driver for handling offsets (Jiri Benc) [1819630] - [netdrv] ixgbe: modify driver for handling offsets (Jiri Benc) [1819630] - [netdrv] i40e: modify driver for handling offsets (Jiri Benc) [1819630] - [net] xsk: add support to allow unaligned chunk placement (Jiri Benc) [1819630] - [net] xdp: xdp_umem: replace kmap on vmap for umem map (Jiri Benc) [1819630] - [net] Don't call XDP_SETUP_PROG when nothing is changed (Jiri Benc) [1819630] - [kernel] bpf: Use PTR_ERR_OR_ZERO in xsk_map_inc() (Jiri Benc) [1819630] - [kernel] xsk: support BPF_EXIST and BPF_NOEXIST flags in XSKMAP (Jiri Benc) [1819630] - [net] xsk: remove AF_XDP socket from map when the socket is released (Jiri Benc) [1819630] - [netdrv] mlx5e: Add AF_XDP need_wakeup support (Jiri Benc) [1819630] - [netdrv] net/mlx5e: Move the SW XSK code from NAPI poll to a separate function (Jiri Benc) [1819630] - [samples] bpf: add use of need_wakeup flag in xdpsock (Jiri Benc) [1819630] - [tools] libbpf: add support for need_wakeup flag in AF_XDP part (Jiri Benc) [1819630] - [netdrv] ixgbe: need_wakeup flag might not be set for Tx (Jiri Benc) [1819630] - [netdrv] ixgbe: add support for AF_XDP need_wakeup feature (Jiri Benc) [1819630] - [netdrv] i40e: add support for AF_XDP need_wakeup feature (Jiri Benc) [1819630] - [net] xsk: add support for need_wakeup flag in AF_XDP rings (Jiri Benc) [1819630] - [net] xsk: replace ndo_xsk_async_xmit with ndo_xsk_wakeup (Jiri Benc) [1819630] - [net] xdp: xdp_umem: fix umem pages mapping for 32bits systems (Jiri Benc) [1819630] - [net] ethtool: add infrastructure for centralized checking of coalescing parameters (Ivan Vecera) [1818096] - [tools] selftests: netfilter: add simple masq/redirect test cases (Hangbin Liu) [1826220] - [tools] selftests: netfilter: fix config fragment CONFIG_NF_TABLES_INET (Hangbin Liu) [1826220] - [tools] selftests: add script to stress-test nft packet path vs. control plane (Hangbin Liu) [1826220] - [net] devlink: disallow reload operation during device cleanup (Petr Oros) [1805958] - [tools] selftests: test creating netdevsim inside network namespace (Petr Oros) [1805958] - [net] devlink: export devlink net setter (Petr Oros) [1805958] - [net] devlink: don't ignore errors during dumpit (Petr Oros) [1805958] - [netdrv] netdevsim: fix spelling mistake "forbidded" -> "forbid" (Petr Oros) [1805958] - [netdrv] netdevsim: implement devlink dev_info op (Petr Oros) [1805958] - [netdrv] netdevsim: add couple of debugfs bools to debug devlink reload (Petr Oros) [1805958] - [netdrv] netdevsim: create devlink and netdev instances in namespace (Petr Oros) [1805958] - [include] net: skbuff: disambiguate argument and member for skb_list_walk_safe helper (Josef Oskera) [1818105] - [include] net: introduce skb_list_walk_safe for skb segment walking (Josef Oskera) [1818105] - [netdrv] netdevsim: drop code duplicated by a merge (Petr Oros) [1805951] - [tools] selftests: devlink: undo changes at the end of resource_test (Petr Oros) [1805951] - [tools] selftests: netdevsim: add tests for devlink reload with resources (Petr Oros) [1805951] - [net] devlink: allow to change namespaces during reload (Petr Oros) [1805951] - [net] devlink: Add method for time-stamp on reporter's dump (Petr Oros) [1805951] - [netdrv] netdevsim: take devlink net instead of init_net (Petr Oros) [1805951] - [netdrv] netdevsim: register port netdevices into net of device (Petr Oros) [1805951] - [netdrv] netdevsim: implement proper devlink reload (Petr Oros) [1805951] - [netdrv] netdevsim: add all ports in nsim_dev_create() and del them in destroy() (Petr Oros) [1805951] - [net] devlink: export devlink net getter (Petr Oros) [1805951] - [net] fib_notifier: propagate extack down to the notifier block callback (Petr Oros) [1805951] - [net] fib_notifier: propagate possible error during fib notifier registration (Petr Oros) [1805951] - [net] fib_notifier: make FIB notifier per-netns (Petr Oros) [1805951] - [netdrv] netdevsim: change fib accounting and limitations to be per-device (Petr Oros) [1805951] - [netdrv] netdevsim: Set offsets to various protocol layers (Petr Oros) [1805951] - [net] devlink: Fix error handling in param and info_get dumpit cb (Petr Oros) [1805951] - [net] lwtunnel: check erspan options before allocating tun_info (Xin Long) [1730151] - [net] lwtunnel: be STRICT to validate the new LWTUNNEL_IP(6)_OPTS (Xin Long) [1730151] - [net] lwtunnel: add support for multiple geneve opts (Xin Long) [1730151] - [net] lwtunnel: change to use nla_put_u8 for LWTUNNEL_IP_OPT_ERSPAN_VER (Xin Long) [1730151] - [net] lwtunnel: ignore any TUNNEL_OPTIONS_PRESENT flags set by users (Xin Long) [1730151] - [net] lwtunnel: get nlsize for erspan options properly (Xin Long) [1730151] - [net] lwtunnel: change to use nla_parse_nested on new options (Xin Long) [1730151] - [net] lwtunnel: add options setting and dumping for erspan (Xin Long) [1730151] - [net] lwtunnel: add options setting and dumping for vxlan (Xin Long) [1730151] - [net] lwtunnel: add options setting and dumping for geneve (Xin Long) [1730151] - [net] lwtunnel: add options process for cmp_encap (Xin Long) [1730151] - [net] lwtunnel: add options process for arp request (Xin Long) [1730151] - [net] ip_tunnel: Add dst_cache support in lwtunnel_state of ip tunnel (Xin Long) [1730151] - [include] tcp: Define IPPROTO_MPTCP (Florian Westphal) [1812198] - [net] skb: add helpers to allocate ext independently from sk_buff (Florian Westphal) [1812198] - [net] tcp: Check for filled TCP option space before SACK (Florian Westphal) [1812198] - [net] tcp: Export TCP functions and ops struct (Florian Westphal) [1812198] - [net] tcp: coalesce/collapse must respect MPTCP extensions (Florian Westphal) [1812198] - [net] mptcp: Add MPTCP to skb extensions (Florian Westphal) [1812198] - [net] tcp, ulp: Add clone operation to tcp_ulp_ops (Florian Westphal) [1812198] - [include] tcp: Add MPTCP option number (Florian Westphal) [1812198] - [net] Make sock protocol value checks more specific (Florian Westphal) [1812198] - [net] ipv6: provide and use ipv6 specific version for {recv, send}msg (Florian Westphal) [1812198] - [net] inet: factor out inet_send_prepare() (Florian Westphal) [1812198] - [net] tipc: fix incorrect increasing of link window (Xin Long) [1822129] - [net] tipc: Add a missing case of TIPC_DIRECT_MSG type (Xin Long) [1822129] - [net] tipc: add NULL pointer check to prevent kernel oops (Xin Long) [1822129] - [net] tipc: simplify trivial boolean return (Xin Long) [1822129] - [net] tipc: add missing attribute validation for MTU property (Xin Long) [1822129] - [net] tipc: fix successful connect() but timed out (Xin Long) [1822129] - [net] tipc: make three functions static (Xin Long) [1822129] - [net] tipc: fix wrong connect() return code (Xin Long) [1822129] - [net] tipc: make legacy address flag readable over netlink (Xin Long) [1822129] - [net] tipc: don't send gap blocks in ACK messages (Xin Long) [1822129] - [net] tipc: fix use-after-free in tipc_disc_rcv() (Xin Long) [1822129] - [net] tipc: introduce variable window congestion control (Xin Long) [1822129] - [net] tipc: eliminate more unnecessary nacks and retransmissions (Xin Long) [1822129] - [net] tipc: eliminate gap indicator from ACK messages (Xin Long) [1822129] - [net] tipc: fix duplicate SYN messages under link congestion (Xin Long) [1822129] - [net] tipc: support in-order name publication events (Xin Long) [1822129] - [net] tipc: add back tipc prefix to log messages (Xin Long) [1822129] - [net] tipc: fix update of the uninitialized variable err (Xin Long) [1822129] - [net] tipc: add support for AEAD key setting via netlink (Xin Long) [1822129] - [net] tipc: introduce TIPC encryption & authentication (Xin Long) [1822129] - [include] tipc: add new AEAD key structure for user API (Xin Long) [1822129] - [net] tipc: enable creating a "preliminary" node (Xin Long) [1822129] - [net] tipc: add reference counter to bearer (Xin Long) [1822129] - [net] tipc: eliminate checking netns if node established (Xin Long) [1822129] - [net] tipc: eliminate the dummy packet in link synching (Xin Long) [1822129] - [net] tipc: improve message bundling algorithm (Xin Long) [1822129] - [net] tipc: add smart nagle feature (Xin Long) [1822129] - [net] tipc: improve throughput between nodes in netns (Xin Long) [1822129] - [net] tipc: add loopback device tracking (Xin Long) [1822129] - [netdrv] vxlan: check return value of gro_cells_init() (Sabrina Dubroca) [1821295] - [netdrv] geneve: move debug check after netdev unregister (Sabrina Dubroca) [1821295] - [net] ip6_tunnel: enhance tunnel locate with link check (Sabrina Dubroca) [1821295] - [netdrv] vxlan: implement get_link_ksettings ethtool method (Sabrina Dubroca) [1821295] - [netdrv] vxlan: check tun_info options_len properly (Sabrina Dubroca) [1821295] - [include] iptunnel: make TUNNEL_FLAGS available in uapi (Sabrina Dubroca) [1821295] - [net] introduce dev_net notifier register/unregister variants (Ivan Vecera) [1818102] - [net] push code from net notifier reg/unreg into helpers (Ivan Vecera) [1818102] - [net] call call_netdevice_unregister_net_notifiers from unregister (Ivan Vecera) [1818102] - [net] introduce per-netns netdevice notifiers (Ivan Vecera) [1818102] - [net] push loops and nb calls into helper functions (Ivan Vecera) [1818102] - [include] net: ipv6: do not consider routes via gateways for anycast address check (Hangbin Liu) [1816506] - [net] ipv6/addrconf: call ipv6_mc_up() for non-Ethernet interface (Hangbin Liu) [1816506] - [net] ipv6: need update peer route when modify metric (Hangbin Liu) [1816506] - [net] ipv6: use configured metric when add peer route (Hangbin Liu) [1816506] - [net] ipv6: restrict IPV6_ADDRFORM operation (Hangbin Liu) [1816506] - [net] ipv6: Fix nlmsg_flags when splitting a multipath route (Hangbin Liu) [1816506] - [net] ipv6: Fix route replacement with dev-only route (Hangbin Liu) [1816506] - [net] ipv6/addrconf: fix potential NULL deref in inet6_set_link_af() (Hangbin Liu) [1816506] - [net] net-ipv6-ndisc: add support for RFC7710 RA Captive Portal Identifier (Hangbin Liu) [1816506] - [net] ipv6: Don't use dst gateway directly in ip6_confirm_neigh() (Hangbin Liu) [1816506] - [net] ipv6: Fix the link time qualifier of 'ping_v6_proc_exit_net()' (Hangbin Liu) [1816506] - [net] ipv6: propagate ipv6_add_dev's error returns out of ipv6_find_idev (Hangbin Liu) [1816506] - [net] ipv6: allow any source address for sendmsg pktinfo with ip_nonlocal_bind (Hangbin Liu) [1816506] - [net] multicast: remove useless parameter for group add (Hangbin Liu) [1816506] - [documentation] networking: devlink-trap: Fix reference to other document (Petr Oros) [1805882] - [netdrv] netdevsim: Fix use-after-free during device dismantle (Petr Oros) [1805882] - [netdrv] netdevsim: Fix build error without CONFIG_INET (Petr Oros) [1805882] - [net] devlink: move reload fail indication to devlink core and expose to user (Petr Oros) [1805882] - [net] devlink: split reload op into two (Petr Oros) [1805882] - [netdrv] mlx4: Split restart_one into two functions (Petr Oros) [1805882] - [include] devlink: add unknown 'fw_load_policy' value (Petr Oros) [1805882] - [net] devlink: add 'reset_dev_on_drv_probe' param (Petr Oros) [1805882] - [include] devlink: extend 'fw_load_policy' values (Petr Oros) [1805882] - [include] devlink: Add new info version tags for ASIC and FW (Petr Oros) [1805882] - [net] devlink: Use switch-case instead of if-else (Petr Oros) [1805882] - [net] devlink: Make port index data type as unsigned int (Petr Oros) [1805882] - [net] devlink: send notifications for deleted snapshots on region destroy (Petr Oros) [1805882] - [net] devlink: remove pointless data_len arg from region snapshot create (Petr Oros) [1805882] - [documentation] Add description of netdevsim traps (Petr Oros) [1805882] - [netdrv] netdevsim: Add devlink-trap support (Petr Oros) [1805882] - [tools] selftests: netdevsim: add devlink regions tests (Petr Oros) [1805882] - [tools] selftests: netdevsim: add devlink params tests (Petr Oros) [1805882] - [netdrv] netdevsim: implement support for devlink region and snapshots (Petr Oros) [1805882] - [netdrv] netdevsim: register couple of devlink params (Petr Oros) [1805882]- [arm64] kvm: arm64: limit PMU version to PMUv3 for ARMv8.1 (Gavin Shan) [1814009] - [arm64] cpufeature: Extract capped perfmon fields (Gavin Shan) [1814009] - [virt] kvm: arm64: Use the correct timer structure to access the physical counter (Gavin Shan) [1814009] - [arm64] Ask the compiler to __always_inline functions used by KVM at HYP (Gavin Shan) [1814009] - [arm64] kvm: arm64: Define our own swab32() to avoid a uapi static inline (Gavin Shan) [1814009] - [arm64] kvm: arm64: Ask the compiler to __always_inline functions used at HYP (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Fold VHE entry/exit work into kvm_vcpu_run_vhe() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Fix up includes for trace.h (Gavin Shan) [1814009] - [virt] kvm: arm64: Treat emulated TVAL TimerValue as a signed 32-bit integer (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Only handle supported event counters (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Fix chained SW_INCR counters (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Don't mark a counter as chained if the odd one is disabled (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Don't increment SW_INCR if PMCR.E is unset (Gavin Shan) [1814009] - [virt] kvm: arm: Make inject_abt32() inject an external abort instead (Gavin Shan) [1814009] - [virt] kvm: arm: Fix DFSR setting for non-LPAE aarch32 guests (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Fix young bit from mmu notifier (Gavin Shan) [1814009] - [arm64] kvm: Add UAPI notes for swapped registers (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Cleanup MMIO handling (Gavin Shan) [1814009] - [arm64] kvm: arm64: Write arch.mdcr_el2 changes since last vcpu_load on VHE (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Drop the kvm_vgic_register_mmio_region() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic-its: Properly check the unmapped coll in DISCARD handler (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Correct AArch32 SPSR on exception entry (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Correct CPSR on exception entry (Gavin Shan) [1814009] - [arm64] kvm: arm64: Correct PSTATE on exception entry (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Re-check VMA on detecting a poisoned page (Gavin Shan) [1814009] - [virt] kvm: arm: Remove duplicate include (Gavin Shan) [1814009] - [virt] kvm: arm: Call hyp_cpu_pm_exit at the right place (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Handle GICR_PENDBASER.PTZ filed as RAZ (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic-its: Fix restoration of unmapped collections (Gavin Shan) [1814009] - [virt] kvm: arm64: Only sign-extend MMIO up to register width (Gavin Shan) [1814009] - [arm64] kvm: stop treating register x18 as caller save (Gavin Shan) [1814009] - [arm64] Workaround for Cortex-A55 erratum 1530923 (Gavin Shan) [1814009] - [arm64] Rename WORKAROUND_1319367 to SPECULATIVE_AT_NVHE (Gavin Shan) [1814009] - [arm64] Enable and document ARM errata 1319367 and 1319537 (Gavin Shan) [1814009] - [arm64] Rename WORKAROUND_1165522 to SPECULATIVE_AT_VHE (Gavin Shan) [1814009] - [arm64] Introduce ID_ISAR6 CPU register (Gavin Shan) [1814009] - [arm64] nofpsmid: Handle TIF_FOREIGN_FPSTATE flag cleanly (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Properly handle faulting of device mappings (Gavin Shan) [1814009] - [arm64] kvm: arm64: Ensure 'params' is initialised when looking up sys register (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Remove excessive permission check in kvm_arch_prepare_memory_region (Gavin Shan) [1814009] - [arm64] kvm: arm64: Don't log IMP DEF sysreg traps (Gavin Shan) [1814009] - [arm64] kvm: Invoke compute_layout() before alternatives are applied (Gavin Shan) [1814009] - [arm64] kvm: arm64: Sanely ratelimit sysreg messages (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Use wrapper function to lock/unlock all vcpus in kvm_vgic_create() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Fix potential double free dist->spis in __kvm_vgic_destroy() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Get rid of unused arg in cpu_init_hyp_mode() (Gavin Shan) [1814009] - [arm64] kvm: arm64: Opportunistically turn off WFI trapping when using direct LPI injection (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Let the timer expire in hardirq context on RT (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Fix some comments typo (Gavin Shan) [1814009] - [kvm] arm/arm64: vgic: Remove the declaration of kvm_send_userspace_msi() (Gavin Shan) [1814009] - [arm64] kvm: arm64: Don't set HCR_EL2.TVM when S2FWB is supported (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Show halt poll counters in debugfs (Gavin Shan) [1814009] - [arm64] kvm: Prevent speculative S1 PTW when restoring vcpu context (Gavin Shan) [1814009] - [arm64] kvm: Disable EL1 PTW when invalidating S2 TLBs (Gavin Shan) [1814009] - [arm64] Add ARM64_WORKAROUND_1319367 for all A57 and A72 versions (Gavin Shan) [1814009] - [arm64] kvm: Reorder system register restoration and stage-2 activation (Gavin Shan) [1814009] - [arm64] kvm: arm64: Select TASK_DELAY_ACCT+TASKSTATS rather than SCHEDSTATS (Gavin Shan) [1814009] - [arm64] Retrieve stolen time as paravirtualized guest (Gavin Shan) [1814009] - [arm64] arm/arm64: Make use of the SMCCC 1.1 wrapper (Gavin Shan) [1814009] - [kernel] arm/arm64: Provide a wrapper for SMCCC 1.1 calls (Gavin Shan) [1814009] - [virt] kvm: arm64: Provide VCPU attributes for stolen time (Gavin Shan) [1814009] - [virt] kvm: arm64: Support stolen time reporting via shared structure (Gavin Shan) [1814009] - [virt] kvm: arm64: Implement PV_TIME_FEATURES call (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Factor out hypercall handling from PSCI code (Gavin Shan) [1814009] - [documentation] kvm: arm64: Document PV-time interface (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Allow user injection of external data aborts (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Allow reporting non-ISV data aborts to userspace (Gavin Shan) [1814009] - [arm64] errata: use arm_smccc_1_1_get_conduit() (Gavin Shan) [1814009] - [kernel] arm/arm64: smccc/psci: add arm_smccc_1_1_get_conduit() (Gavin Shan) [1814009] - [arm64] kvm: arm64: Fix ptrauth ID register masking logic (Gavin Shan) [1814009] - [arm64] kvm: arm64: Add capability to advertise ptrauth for guest (Gavin Shan) [1814009] - [arm64] kvm: arm64: Add userspace flag to enable pointer authentication (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Context-switch ptrauth registers (Gavin Shan) [1814009] - [arm64] kvm: arm64: Add a vcpu flag to control ptrauth for guest (Gavin Shan) [1814009] - [tools] selftests: kvm: s390: fix format strings for access reg test (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: make syncregs more reliable on s390 (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: drop vcpu_setup from s390x (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add support for vcpu_args_set to aarch64 and s390x (Vitaly Kuznetsov) [1813987] - [iommu] amd: Fix IOMMU AVIC not properly update the is_run bit in IRTE (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Fix kernel crash with PR KVM (Vitaly Kuznetsov) [1813987] - [x86] cpu: Print "VMX disabled" error message iff KVM is enabled (Vitaly Kuznetsov) [1813987] - [tools] redhat: update kvm/x86 headers in tools (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: fix crash cleanup when KVM wasn't used (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Filter out the broadcast dest for IPI fastpath (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: don't clear mtf_pending when nested events are blocked (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Remove unnecessary exception trampoline in vmx_vmenter (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Split svm_vcpu_run inline assembly to separate file (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Move SEV code to separate file (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Move AVIC code to separate file (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Move Nested SVM Implementation to nested.c (Vitaly Kuznetsov) [1813987] - [x86] kvm svm: Move SVM related files to own sub-directory (Vitaly Kuznetsov) [1813987] - [x86] kvm: fix a missing-prototypes "vmread_error" (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix BUILD_BUG() in __cpuid_entry_get_reg() w/ CONFIG_UBSAN=y (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add a trampoline to fix VMREAD error handling (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Annotate svm_x86_ops as __initdata (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Annotate vmx_x86_ops as __initdata (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop __exit from kvm_x86_ops' hardware_unsetup() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Copy kvm_x86_ops by value to eliminate layer of indirection (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Set kvm_x86_ops only after ->hardware_setup() completes (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Configure runtime hooks using vmx_x86_ops (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Move hardware_setup() definition below vmx_x86_ops (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move init-only kvm_x86_ops to separate struct (Vitaly Kuznetsov) [1813987] - [virt] kvm: Pass kvm_init()'s opaque param to additional arch funcs (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Fix cosmetic copy-paste error in vm_mem_region_move() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix out of range accesses to memslots (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Micro-optimize IPI fastpath delay (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Delay read msr data iff writes ICR MSR (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Narrow down the IPI fastpath to single target IPI (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Gracefully handle faults on VMXON (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fold loaded_vmcs_init() into alloc_loaded_vmcs() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Always VMCLEAR in-use VMCSes during crash with kexec support (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: add command line switch '-c' to log in csv format (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: add command line switch '-s' to set update interval (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: switch to argparse (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: rework command line sequence and message texts (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: don't allow memory operands for inline asm that modifies SP (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: Mark hrtimer for period or oneshot mode to expire in hard interrupt context (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Issue WBINVD after deactivating an SEV guest (Vitaly Kuznetsov) [1813987] - [documentation] kvm: svm: document KVM_MEM_ENCRYPT_OP, let userspace detect if SEV is available (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove bogus user-triggerable WARN_ON (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Rework timespec functions and usage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Code style cleanup in kvm_arch_dev_ioctl() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add blurb to CPUID tracepoint when using max basic leaf values (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add requested index to the CPUID tracepoint (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: check for EFER.SVME=1 before entering guest (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: remove side effects from nested_vmx_exit_reflected (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: access regs array in vmenter.S in its natural order (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: enlightened VMPTRLD with an incorrect GPA (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: test enlightened vmenter with wrong eVMCS version (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: define and use EVMCS_VERSION (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: properly handle errors in nested_vmx_handle_enlightened_vmptrld() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: stop abusing need_vmcs12_to_shadow_sync for eVMCS mapping (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Uses TEST_FAIL in tests/utilities (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Introduce the TEST_FAIL macro (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Introduce steal-time test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: virt_map should take npages, not size (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Use consistent message for test skipping (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Enable printf format warnings for TEST_ASSERT (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Share common API documentation (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: svm: Add vmcall test to gitignore (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: Remove an obsolete comment (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: correct meaningless kvm_apicv_activated() check (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Consolidate nested MTF checks to helper function (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Micro-optimize vmexit time when not exposing PMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Introduce GA Log tracepoint for AVIC (Vitaly Kuznetsov) [1813987] - [documentation] kvm: documentation: Update fast page fault for indirect sp (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: avoid loss of pending IRQ/NMI before entering L2 (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: implement check_nested_events for interrupts (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: ignore L1 interrupt window while running L2 with V_INTR_MASKING=1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: do not change host intercepts while nested VM is running (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: rename set_cr3 callback and related flags to load_mmu_pgd (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: unify callbacks to load paging root (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor kvm_cpuid() param that controls out-of-range logic (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor out-of-range logic to contain the madness (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix CPUID range checks for Hypervisor and Centaur classes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add helpers to perform CPUID-based guest vendor check (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Trace the original requested CPUID function in kvm_cpuid() (Vitaly Kuznetsov) [1813987] - [x86] kvm: cpuid: add support for supervisor states (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move nSVM CPUID 0x8000000A handling into common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: Advertise and enable NRIPS for L1 iff nrips is enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: Expose SVM features to L1 iff nested is enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move VMX's host_efer to common x86 code (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop largepages_enabled and its accessor/mutator (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Don't propagate MMU lpage support to memslot.disallow_lpage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Configure max page level during hardware setup (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Merge kvm_{enable, disable}_tdp() into a common function (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Refactor logging of NPT enabled/disabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Directly query Intel PT mode when refreshing PMUs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Check for Intel PT MSR virtualization using KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Directly use VMX capabilities helper to detect RDTSCP support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use KVM cpu caps to detect MSR_TSC_AUX virt support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Do kvm_cpuid_array capacity checks in terminal functions (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use kvm_cpu_caps to detect Intel PT support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Set emulated/transmuted feature bits via kvm_cpu_caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Override host CPUID results with kvm_cpu_caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Do host CPUID at load time to mask KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove stateful CPUID handling (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Squash CPUID 0x2.0 insanity for modern CPUs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove the unnecessary loop on CPUID 0x7 sub-leafs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fold CPUID 0x7 masking back into __do_cpuid_func() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use KVM cpu caps to track UMIP emulation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use KVM cpu caps to mark CR4.LA57 as not-reserved (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add a helper to check kernel support when setting cpu cap (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move XSAVES CPUID adjust to VMX's KVM cpu cap update (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Convert feature updates from CPUID to KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Convert feature updates from CPUID to KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce kvm_cpu_caps to replace runtime CPUID masking (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor handling of XSAVES CPUID adjustment (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: handle GBPAGE CPUID adjustment for EPT with generic code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle Intel PT CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle RDTSCP CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle PKU CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle UMIP emulation CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle INVPCID CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle MPX CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor cpuid_mask() to auto-retrieve the register (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce cpuid_entry_{change, set, clear}() mutators (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce cpuid_entry_{get, has}() accessors (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Replace bare "unsigned" with "unsigned int" in cpuid helpers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use u32 for holding CPUID register value in helpers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop explicit @func param from ->set_supported_cpuid() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Clear output regs for CPUID 0x14 if PT isn't exposed to guest (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Make kvm_mpx_supported() an inline function (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use supported_xcr0 to detect MPX support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Calculate the supported xcr0 mask at load time (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add helpers to query Intel PT mode (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use common loop iterator when handling CPUID 0xD.N (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop redundant array size check (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Encapsulate CPUID entries and metadata in struct (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor CPUID 0x4 and 0x8000001d handling (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Hoist loop counter and terminator to top of __do_cpuid_func() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Consolidate CPUID array max num entries checking (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop redundant boot cpu checks on SSBD feature bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop the explicit @index from do_cpuid_7_mask() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Clean up CPUID 0x7 sub-leaf loop (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor CPUID 0xD.N sub-leaf entry creation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Warn on zero-size save state for valid CPUID 0xD.N sub-leaf (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Check for CPUID 0xD.N support before validating array size (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move CPUID 0xD.1 handling out of the index>0 loop (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Check userspace CPUID array size after validating sub-leaf (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Clean up error handling in kvm_dev_ioctl_get_cpuid() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Simplify handling of Centaur CPUID leafs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor loop around do_cpuid_func() to separate helper (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Return -E2BIG when KVM_GET_SUPPORTED_CPUID hits max entries (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Shrink the usercopy region of the emulation context (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move kvm_emulate.h into KVM's private directory (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Dynamically allocate per-vCPU emulation context (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move emulation-only helpers to emulate.c (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Explicitly pass an exception struct to check_intercept (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor I/O emulation helpers to provide vcpu-only variant (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop gfn_to_pfn_atomic() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix warning due to implicit truncation on 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Drop unnecessary check on ept caps for execute-only (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Rename kvm_mmu->get_cr3() to ->get_guest_pgd() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Rename EPTP validity helper and associated variables (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Rename nested_ept_get_cr3() to nested_ept_get_eptp() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Allow L1 to use 5-level page walks for nested EPT (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Drop kvm_mmu_extended_role.cr4_la57 hack (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Don't drop level/direct from MMU role calculation (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Support dirty log initial-all-set test (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Properly handle userspace interrupt window request (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: trigger kvmclock sync request just once on VM creation (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: Recalculate apic map in batch (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix some obsolete comments (Vitaly Kuznetsov) [1813987] - [virt] kvm: x86: enable dirty log gradually in small chunks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Reuse the current root if possible for fast switch (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Ignore guest CR3 on fast root switch for direct MMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Inhibit APIC virtualization for X2APIC guest (Vitaly Kuznetsov) [1813987] - [virt] kvm: Remove unnecessary asm/kvm_host.h includes (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Fix unknown ucall command asserts (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Consolidate VM allocation and free for VMX and SVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Directly return __vmalloc() result in ->vm_alloc() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Gracefully handle __vmalloc() failure during VM allocation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Adjust counter sample period after a wrmsr (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Consolidate open coded variants of memslot TLB flushes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Use range-based TLB flush for dirty log memslot flush (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move kvm_arch_flush_remote_tlbs_memslot() to mmu.c (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add test for KVM_SET_USER_MEMORY_REGION (Vitaly Kuznetsov) [1813987] - [virt] kvm: Dynamically size memslot array based on number of used slots (Vitaly Kuznetsov) [1813987] - [virt] kvm: Terminate memslot walks via used_slots (Vitaly Kuznetsov) [1813987] - [virt] kvm: Ensure validity of memslot with respect to kvm_get_dirty_log() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Provide common implementation for generic dirty log functions (Vitaly Kuznetsov) [1813987] - [virt] kvm: Clean up local variable usage in __kvm_set_memory_region() (Vitaly Kuznetsov) [1813987] - [x86] kvm: Simplify kvm_free_memslot() and all its descendents (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move memslot deletion to helper function (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Free arrays for old memslot when moving memslot's base gfn (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop "const" attribute from old memslot in commit_memory_region() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move setting of memslot into helper routine (Vitaly Kuznetsov) [1813987] - [virt] kvm: Refactor error handling for setting memory region (Vitaly Kuznetsov) [1813987] - [virt] kvm: Explicitly free allocated-but-unused dirty bitmap (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop kvm_arch_create_memslot() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Move memslot memory allocation into prepare_memory_region() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Allocate memslot resources during prepare_memory_region() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Don't free new memslot if allocation of said memslot fails (Vitaly Kuznetsov) [1813987] - [virt] kvm: Reinstall old memslots if arch preparation fails (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Allocate new rmap and large page tracking when moving memslot (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move gpa_val and gpa_available into the emulator context (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add EMULTYPE_PF when emulation is triggered by a page fault (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: remove unused function apic_lvt_vector() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add 'else' to split mutually exclusive case (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: eliminate some unreachable code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix print format and coding style (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: rewrite the comment in vmx_get_mt_mask (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Convert some printf's to pr_info's (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Rework debug message printing (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Time guest demand paging (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Support multiple vCPUs in demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Pass args to vCPU in global vCPU args struct (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add memory size parameter to the demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add configurable demand paging delay (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add demand paging content to the demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Create a demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Introduce num-pages conversion utilities (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Introduce vm_guest_mode_params (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Rename vm_guest_mode_params (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: aarch64: Remove unnecessary ifdefs (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Remove unnecessary defines (Vitaly Kuznetsov) [1813987] - [tools] redhat: selftests: kvm: add SPDX-License-Identifier (Vitaly Kuznetsov) [1813987] - [x86] redhat: kvm: x86: add SPDX-License-Identifier (Vitaly Kuznetsov) [1813987] - [x86] x86 kvm page table walks: switch to explicit __get_user() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: avoid NULL pointer dereference with incorrect EVMCS GPAs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Initializing all kvm_lapic_irq fields in ioapic_write_indirect (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Condition ENCLS-exiting enabling on CPU support for SGX1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: fix Kconfig menu text for -Werror (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove stale comment from struct x86_emulate_ctxt (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Fix the svm vmexit code for WRMSR (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix dereference null cpufreq policy (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: limit the number of "kvm: disabled by bios" messages (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: avoid useless copy of cpufreq policy (Vitaly Kuznetsov) [1813987] - [x86] kvm: allow disabling -Werror (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: allow compiling as non-module with W=1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: Pre-allocate 1 cpumask variable per cpu for both pv tlb and pv ipis (Vitaly Kuznetsov) [1813987] - [x86] kvm: Introduce pv check helpers (Vitaly Kuznetsov) [1813987] - [kernel] kvm: let declaration of kvm_get_running_vcpus match implementation (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: allocate AVIC data structures based on kvm_amd module parameter (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Emulate MTF when performing instruction emulation (Vitaly Kuznetsov) [1813987] - [x86] kvm: fix error handling in svm_hardware_setup (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Fix potential memory leak in svm_cpu_init() (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: avoid calculating pending eoi from an uninitialized val (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: clear PIN_BASED_POSTED_INTR from nested pinbased_ctls only when apicv is globally disabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: handle nested posted interrupts when apicv is disabled for L1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: svm: Fix NULL pointer dereference when AVIC not enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Hold KVM's srcu lock when syncing vmcs12->shadow (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: don't notify userspace IOAPIC on edge-triggered interrupt EOI (Vitaly Kuznetsov) [1813987] - [x86] kvm/emulate: fix a -Werror=cast-function-type (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix incorrect comparison in trace event (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Fix some obsolete comments and grammar error (Vitaly Kuznetsov) [1813987] - [kernel] kvm: x86: fix missing prototypes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: enable -Werror (Vitaly Kuznetsov) [1813987] - [documentation] docs: virt: guest-halt-polling.txt convert to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: review-checklist.txt: rename to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert timekeeping.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert s390-diag.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert ppc-pv.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert nested-vmx.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert mmu.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert locking.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert hypercalls.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: arm/psci.txt: convert to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert arm/hyp-abi.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert api.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/xive.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/xics.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/vm.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/vfio.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/vcpu.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/s390_flic.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/mpic.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/arm-vgit.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: devices/arm-vgit-v3.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: devices/arm-vgic-its.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: virt: Convert msr.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: virt: convert halt-polling.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: add arm/pvtime.rst to index.rst (Vitaly Kuznetsov) [1813987] - [documentation] docs: virtual: add it to the documentation body (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix WARN_ON check of an unsigned less than zero (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Remove unused x86_register enum (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Fix struct guest_walker arrays for 5-level paging (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Use correct root level for nested EPT shadow page tables (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Fix some comment typos and coding style (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Avoid retpoline on ->page_fault() with TDP (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: reuse smp_wmb() in kvm_make_request() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove duplicated KVM_REQ_EVENT request (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: svm: Add vmcall test (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: AMD Nested test infrastructure (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Replace get_{gdt, idt}_base() by get_{gdt, idt}() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Deliver exception payload on KVM_GET_VCPU_EVENTS (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Handle pending #DB when injecting INIT VM-exit (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Mask off reserved bit from #DB exception payload (Vitaly Kuznetsov) [1813987] - [virt] kvm: Disable preemption in kvm_get_running_vcpu() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: delete meaningless vmx_decache_cr0_guest_bits() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Mark CR4.UMIP as reserved based on associated CPUID bit (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix perfctr WRMSR for running counters (Vitaly Kuznetsov) [1813987] - [x86] kvm: mmu: Separate generating and setting mmio ptes (Vitaly Kuznetsov) [1813987] - [x86] kvm: mmu: Replace unsigned with unsigned int for PTE access (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Remove stale comment from nested_vmx_load_cr3() (Vitaly Kuznetsov) [1813987] - [x86] kvm: do not setup pv tlb flush when not paravirtualized (Vitaly Kuznetsov) [1813987] - [x86] Add "nopv" parameter to disable PV extensions (Vitaly Kuznetsov) [1813987] - [virt] kvm: fix overflow of zero page refcount with ksm running (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Take a u64 when checking for a valid dr7 value (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: use raw clock values consistently (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: reorganize pvclock_gtod_data members (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: delete meaningless nested_vmx_run() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: allow AVIC without split irqchip (Vitaly Kuznetsov) [1813987] - [x86] kvm: ioapic: Lazy update IOAPIC EOI (Vitaly Kuznetsov) [1813987] - [x86] kvm: ioapic: Refactor kvm_ioapic_update_eoi() (Vitaly Kuznetsov) [1813987] - [x86] kvm: i8254: Deactivate APICv when using in-kernel PIT re-injection mode (Vitaly Kuznetsov) [1813987] - [x86] svm: Temporarily deactivate AVIC during ExtINT handling (Vitaly Kuznetsov) [1813987] - [x86] svm: Deactivate AVIC when launching guest with nested SVM support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: hyperv: Use APICv update request interface (Vitaly Kuznetsov) [1813987] - [x86] svm: Add support for dynamic APICv (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce x86 ops hook for pre-update APICv (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce APICv x86 ops for checking APIC inhibit reasons (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: avic: Add support for dynamic setup/teardown of virtual APIC backing page (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: svm: Add support to (de)activate posted interrupts (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add APICv (de)activate request trace points (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add support for dynamic APICv activation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove get_enable_apicv from kvm_x86_ops (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce APICv inhibit reason bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: Introduce APICv update helper function (Vitaly Kuznetsov) [1813987] - [iommu] amd: Re-factor guest virtual APIC (de-)activation code (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Add fpu and one reg set/get library functions (Vitaly Kuznetsov) [1813987] - [x86] kvm: Clean up host's steal time structure (Vitaly Kuznetsov) [1813987] - [x86] kvm: Make sure KVM_VCPU_FLUSH_TLB flag is not missed (Vitaly Kuznetsov) [1813987] - [virt] x86/kvm: Cache gfn to pfn translation (Vitaly Kuznetsov) [1813987] - [virt] x86/kvm: Introduce kvm_(un)map_gfn() (Vitaly Kuznetsov) [1813987] - [x86] kvm: Be careful not to clear KVM_VCPU_FLUSH_TLB bit (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use a typedef for fastop functions (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add 'else' to unify fastop and execute call path (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: inline memslot_valid_for_gpte (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Use huge pages for DAX-backed files (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Remove lpage_is_disallowed() check from set_spte() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Fold max_mapping_level() into kvm_mmu_hugepage_adjust() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Zap any compound page when collapsing sptes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Remove obsolete gfn restoration in FNAME(fetch) (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Rely on host page tables to find HugeTLB mappings (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Drop level optimization from fast_page_fault() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Walk host page tables to find THP mappings (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor THP adjust to prep for changing query (Vitaly Kuznetsov) [1813987] - [x86] mm: Introduce lookup_address_in_mm() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Play nice with read-only memslots when querying host page size (Vitaly Kuznetsov) [1813987] - [x86] kvm: Use vcpu-specific gva->hva translation when querying host page size (Vitaly Kuznetsov) [1813987] - [mm] thp: kvm: Explicitly check for THP when populating secondary MMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Enforce max_level on HugeTLB mappings (Vitaly Kuznetsov) [1813987] - [virt] kvm: Return immediately if __kvm_gfn_to_hva_cache_init() fails (Vitaly Kuznetsov) [1813987] - [virt] kvm: Clean up __kvm_gfn_to_hva_cache_init() and its callers (Vitaly Kuznetsov) [1813987] - [virt] kvm: Check for a bad hva before dropping into the ghc slow path (Vitaly Kuznetsov) [1813987] - [x86] kvm/x86: export kvm_vector_hashing_enabled() is unnecessary (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: remove duplicated segment cache clear (Vitaly Kuznetsov) [1813987] - [x86] Adding 'else' to reduce checking (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Check GUEST_DR7 on vmentry of nested guests (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move running VCPU from ARM to common code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop x86_set_memory_region() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Don't take srcu lock in init_rmode_identity_map() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add build-time error check on kvm_run size (Vitaly Kuznetsov) [1813987] - [virt] kvm: Remove kvm_read_guest_atomic() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Perform non-canonical checks in 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: WARN on failure to set IA32_PERF_GLOBAL_CTRL (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove unused ctxt param from emulator's FPU accessors (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: revert "kvm: x86: Fix fpu state crash in kvm guest" (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Ensure guest's FPU state is loaded when accessing for emulation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle TIF_NEED_FPU_LOAD in kvm_{load, put}_guest_fpu() (Vitaly Kuznetsov) [1813987] - [x86] revert "kvm: x86: Add a WARN on TIF_NEED_FPU_LOAD in kvm_load_guest_fpu()" (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: short-circuit kvm_apic_accept_pic_intr() when pic intr is accepted (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: avoid clearing pending exception event twice (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect pmu_intel.c from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect DR-based index computations from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect exit_reason from being used in Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor prefix decoding to prevent Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect MSR-based index computations from Spectre-v1/L1TF attacks in x86.c (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect MSR-based index computations in pmu.h from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect MSR-based index computations in fixed_msr_to_seg_unit() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect kvm_lapic_reg_write() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect ioapic_write_indirect() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect ioapic_read_indirect() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor picdev_write() to prevent Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect kvm_hv_msr_[get|set]_crash_data() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect x86_decode_insn from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move vcpu->run page allocation out of kvm_vcpu_init() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move putting of vcpu->pid to kvm_vcpu_destroy() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop kvm_arch_vcpu_init() and kvm_arch_vcpu_uninit() (Vitaly Kuznetsov) [1813987] - [arm64] kvm: arm64: Free sve_state via arm specific hook (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Move all vcpu init code into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: arm: Move all vcpu init code into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move all vcpu init code into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop kvm_arch_vcpu_setup() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: booke: Setup vcpu during kvmppc_core_vcpu_create() (Vitaly Kuznetsov) [1813987] - [s390] kvm: s390: Manually invoke vcpu setup during kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move guts of kvm_arch_vcpu_setup() into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move initialization of preempt notifier to kvm_vcpu_init() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Unexport kvm_vcpu_cache and kvm_vcpu_{un}init() (Vitaly Kuznetsov) [1813987] - [s390] kvm: Move vcpu alloc and init invocation to common code (Vitaly Kuznetsov) [1813987] - [virt] kvm: Introduce kvm_vcpu_destroy() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Invoke kvm_vcpu_uninit() immediately prior to freeing vcpu (Vitaly Kuznetsov) [1813987] - [s390] kvm: s390: Invoke kvm_vcpu_init() before allocating sie_page (Vitaly Kuznetsov) [1813987] - [s390] kvm: s390: Move guts of kvm_arch_vcpu_init() into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add kvm_arch_vcpu_precreate() to handle pre-allocation issues (Vitaly Kuznetsov) [1813987] - [kernel] kvm: Remove kvm_arch_vcpu_free() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop kvm_arch_vcpu_free() (Vitaly Kuznetsov) [1813987] - [virt] kvm: arm: Drop kvm_arch_vcpu_free() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Drop kvm_arch_vcpu_free() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Move kvm_vcpu_init() invocation to common code (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: e500mc: Move reset of oldpir below call to kvm_vcpu_init() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: book3s pr: Allocate book3s and shadow vcpu after common init (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Allocate vcpu struct in common PPC code (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: e500mc: Add build-time assert that vcpu is at offset 0 (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: book3s pr: Free shared page if mmu initialization fails (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: book3s hv: Uninit vCPU if vcore creation fails (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove spurious clearing of async #PF MSR (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove spurious kvm_mmu_unload() from vcpu destruction path (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move kvm_vcpu_init() invocation to common code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move allocation of pio_data page down a few lines (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move FPU allocation to common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Allocate vcpu struct in common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Use direct vcpu pointer during vCPU create/free (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Use direct vcpu pointer during vCPU create/free (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Allocate VPID after initializing VCPU (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Free wbinvd_dirty_mask if vCPU creation fails (Vitaly Kuznetsov) [1813987] - [virt] kvm: async_pf: drop kvm_arch_async_page_present wrappers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix overlap between SPTE_MMIO_MASK and generation (Vitaly Kuznetsov) [1813987] - [virt] kvm: Refactor handling of VM debugfs files (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Apply max PA check for MMIO sptes to 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: vmread should not set rflags to specify success in case of #PF (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Micro-optimize nEPT's bad memptype/XWR checks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Reorder the reserved bit check in prefetch_invalid_gpte() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: delete meaningless nested_vmx_prepare_msr_bitmap() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor and rename bit() to feature_bit() macro (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Expand build-time assertion on reverse CPUID usage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add CPUID_7_1_EAX to the reverse CPUID table (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move bit() helper to cpuid.h (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add dedicated emulator helpers for querying CPUID features (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add macro to ensure reserved cr4 bits checks stay in sync (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop special XSAVE handling from guest_cpuid_has() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Ensure all logical CPUs have consistent reserved cr4 bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Don't let userspace set host-reserved cr4 bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add helper to consolidate up PT/RTIT WRMSR fault logic (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add non-canonical check on writes to RTIT address MSRs (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix some writing mistakes (Vitaly Kuznetsov) [1813987] - [x86] kvm: hyperv: Fix some typos in vcpu unimpl info (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix some grammar mistakes (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix some comment typos and missing parentheses (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix some out-dated function names in comment (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix some wrong function names in comment (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: check kvm_pit outside kvm_vm_ioctl_reinject() (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: micro-optimize fixed mode ipi delivery (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: FIXED+PHYSICAL mode single target IPI fastpath (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Allow KVM_INTEL when building for Centaur and/or Zhaoxin CPUs (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Check for full VMX support when verifying CPU compatibility (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Use VMX feature flag to query BIOS enabling (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Drop initialization of IA32_FEAT_CTL MSR (Vitaly Kuznetsov) [1813987] - [x86] cpufeatures: Add flag to track whether MSR IA32_FEAT_CTL is configured (Vitaly Kuznetsov) [1813987] - [x86] cpu: Set synthetic VMX cpufeatures during init_ia32_feat_ctl() (Vitaly Kuznetsov) [1813987] - [x86] cpufeatures: Add EPT_AD feature bit (Vitaly Kuznetsov) [1813987] - [x86] cpu: Detect VMX features on Intel, Centaur and Zhaoxin CPUs (Vitaly Kuznetsov) [1813987] - [x86] vmx: Introduce VMX_FEATURES_* (Vitaly Kuznetsov) [1813987] - [x86] cpu: Clear VMX feature flag if VMX is not fully enabled (Vitaly Kuznetsov) [1813987] - [x86] centaur: Use common IA32_FEAT_CTL MSR initialization (Vitaly Kuznetsov) [1813987] - [x86] mce: WARN once if IA32_FEAT_CTL MSR is left unlocked (Vitaly Kuznetsov) [1813987] - [x86] intel: Initialize IA32_FEAT_CTL MSR at boot (Vitaly Kuznetsov) [1813987] - [tools] x86: Sync msr-index.h from kernel sources (Vitaly Kuznetsov) [1813987] - [tools] selftests, kvm: Replace manual MSR defs with common msr-index.h (Vitaly Kuznetsov) [1813987] - [x86] msr-index: Clean up bit defines for IA32_FEATURE_CONTROL MSR (Vitaly Kuznetsov) [1813987] - [tools] tools arch x86: Grab a copy of the file containing the MSR numbers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: WARN if root_hpa is invalid when handling a page fault (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: WARN on an invalid root_hpa (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move root_hpa validity checks to top of page fault handler (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move calls to thp_adjust() down a level (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move transparent_hugepage_adjust() above __direct_map() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Consolidate tdp_page_fault() and nonpaging_page_fault() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Rename lpage_disallowed to account_disallowed_nx_lpage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Persist gfn_lpage_is_disallowed() to max_level (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Incorporate guest's page level into max level for shadow MMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor handling of forced 4k pages in page faults (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor the per-slot level calculation in mapping_level() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor handling of cache consistency with TDP (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move nonpaging_page_fault() below try_async_pf() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Fold nonpaging_map() into nonpaging_page_fault() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move definition of make_mmu_pages_available() up (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use gpa_t for cr2/gpa to fix TDP support on 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add a WARN on TIF_NEED_FPU_LOAD in kvm_load_guest_fpu() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix potential put_fpu() w/o load_fpu() on MPX platform (Vitaly Kuznetsov) [1813987] - [kernel] kvm: Remove duplicated declaration of kvm_vcpu_kick (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Aesthetic cleanup of handle_vmread and handle_vmwrite (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: VMWRITE checks unsupported field before read-only field (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: VMWRITE checks VMCS-link pointer before VMCS field (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fix the spelling of CPU_BASED_USE_TSC_OFFSETTING (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename NMI_PENDING to NMI_WINDOW (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename INTERRUPT_PENDING to INTERRUPT_WINDOW (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix some comment typos (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Convert the last users of "shorthand = 0" to use macros (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix callers of kvm_apic_match_dest() to use correct macros (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop KVM_APIC_SHORT_MASK and KVM_APIC_DEST_MASK (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use APIC_DEST_* macros properly in kvm_lapic_irq.dest_mode (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move irrelevant declarations out of ioapic.h (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix kvm_bitmap_or_dest_vcpus() to use irq shorthand (Vitaly Kuznetsov) [1813987] - [x86] kvm: explicitly set rmap_head->val to 0 in pte_list_desc_remove_entry() (Vitaly Kuznetsov) [1813987] - [virt] kvm: get rid of var page in kvm_set_pfn_dirty() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: remove unreachable statement in vmx_get_msr_feature() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: use CPUID to locate host page table reserved bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Host feature SSBD doesn't imply guest feature AMD_SSBD (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Host feature SSBD doesn't imply guest feature SPEC_CTRL_SSBD (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Stop wasting a page for guest_msrs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix out-of-bounds write in KVM_GET_EMULATED_CPUID (CVE-2019-19332) (Vitaly Kuznetsov) [1813987] - [documentation] documentation: kvm: Fix mention to number of ioctls classes (Vitaly Kuznetsov) [1813987] - [x86] kvm x86: Move kvm cpuid support out of svm (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Relax guest IA32_FEATURE_CONTROL constraints (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Grab KVM's srcu lock when setting nested state (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Open code shared_msr_update() in its only caller (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix jump label out_free_* in kvm_init() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: create mmu/ subdirectory (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Remove unnecessary TLB flushes on L1<->L2 switches when L1 use apic-access-page (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Do not mark vmcs02->apic_access_page as dirty when unpinning (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Assume TLB entries of L1 and L2 are tagged differently if L0 use EPT (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Unexport kvm_vcpu_reload_apic_access_page() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: add CR4_LA57 bit to nested CR4_FIXED1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Use semi-colon instead of comma for exit-handlers initialization (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Add support for capturing highest observable L2 TSC (Vitaly Kuznetsov) [1813987] - [x86] tss: Fix and move VMX BUILD_BUG_ON() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename function find_msr() to vmx_find_msr_index() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename NR_AUTOLOAD_MSRS to NR_LOADSTORE_MSRS (Vitaly Kuznetsov) [1813987] - [x86] kvm: nested: Introduce read_and_check_msr_entry() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Expose load IA32_PERF_GLOBAL_CTRL VM-{Entry, Exit} control (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Load GUEST_IA32_PERF_GLOBAL_CTRL MSR on VM-Entry (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: mark functions in the header as "static inline" (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Use kvm_set_msr to load IA32_PERF_GLOBAL_CTRL on VM-Exit (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Check HOST_IA32_PERF_GLOBAL_CTRL on VM-Entry (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Check GUEST_IA32_PERF_GLOBAL_CTRL on VM-Entry (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add helper to check reserved bits in IA32_PERF_GLOBAL_CTRL (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Simplify loop in kvm_create_max_vcpus test (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: optimization: Requst TLB flush in fast_cr3_switch() instead of do it directly (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Add lazy mechanism to release perf_event per vPMC (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Reuse perf_event to avoid unnecessary pmc_reprogram_counter (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Introduce a new kvm_pmu_ops->msr_idx_to_pmc callback (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Rename pmu_ops callbacks from msr_idx to rdpmc_ecx (Vitaly Kuznetsov) [1813987] - [kernel] perf/core: Provide a kernel-internal interface to pause perf_event (Vitaly Kuznetsov) [1813987] - [kernel] perf/core: Provide a kernel-internal interface to recalibrate event period (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Update vmcs01 TPR_THRESHOLD if L2 changed L1 TPR (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Refactor update_cr8_intercept() (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Remove check if APICv enabled in SVM update_cr8_intercept() handler (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: add helper func to remove duplicate code in kvm_pv_send_ipi (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: avoid unused setup_syscalls_segments call when SYSCALL check failed (Vitaly Kuznetsov) [1813987] - [virt] kvm: mmio: get rid of odd out_err label in kvm_coalesced_mmio_init (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Consume pending LAPIC INIT event when exit on INIT_SIGNAL (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Prevent set vCPU into INIT/SIPI_RECEIVED state when INIT are latched (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Evaluate latched_init in KVM_SET_VCPU_EVENTS when vCPU not in SMM (Vitaly Kuznetsov) [1813987] - [x86] kvm: retpolines: x86: eliminate retpoline from svm.c exit handlers (Vitaly Kuznetsov) [1813987] - [x86] kvm: retpolines: x86: eliminate retpoline from vmx.c exit handlers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: optimize more exit handlers in vmx.c (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add a comment describing the /dev/kvm no_compat handling (Vitaly Kuznetsov) [1813987] - [virt] kvm: Forbid /dev/kvm being opened by a compat task when CONFIG_KVM_COMPAT=n (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Reset the three MSR list number variables to 0 in kvm_init_msr_list() (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: fix build with glibc >= 2.30 (Vitaly Kuznetsov) [1813987] - [virt] kvm: mmu: Do not treat ZONE_DEVICE pages as being reserved (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Introduce pi_is_pir_empty() helper (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Do not change PID.NDST when loading a blocked vCPU (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Consider PID.PIR to determine if vCPU has pending interrupts (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fix comment to specify PID.ON instead of PIR.ON (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix initialization of MSR lists (Vitaly Kuznetsov) [1813987] - [virt] kvm: fix placement of refcount initialization (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix NULL-ptr deref after kvm_create_vm fails (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: get rid of odd out jump label in pdptrs_changed (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: switch KVMCLOCK base to monotonic raw clock (Vitaly Kuznetsov) [1813987] - [virt] kvm: call kvm_arch_destroy_vm if vm creation fails (Vitaly Kuznetsov) [1813987] - [x86] kvm/pmu: Replace rcu_swap_protected() with rcu_replace_pointer() (Vitaly Kuznetsov) [1813987] - [kernel] rcu: Upgrade rcu_swap_protected() to rcu_replace_pointer() (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1813987] - [virt] kvm: Allocate memslots and buses before calling kvm_arch_init_vm (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Don't leak L1 MMIO regions to L2 (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Fix potential wrong physical id in avic_handle_ldr_update (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add separate helper for putting borrowed reference to kvm (Vitaly Kuznetsov) [1813987] - [tools] kvm: tests: Add test to verify MSR_IA32_XSS (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Update svm_xsaves_supported (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move IA32_XSS to kvm_{get, set}_msr_common (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move IA32_XSS-swapping on VM-entry/VM-exit to common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Use wrmsr for switching between guest and host IA32_XSS on Intel (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Use wrmsr for switching between guest and host IA32_XSS on AMD (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove unneeded kvm_vcpu variable, guest_xcr0_loaded (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fix conditions for guest IA32_XSS support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce vcpu->arch.xsaves_enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename {vmx, nested_vmx}_vcpu_setup() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Initialize vmx->guest_msrs[] right after allocation (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Remove vmx->hv_deadline_tsc initialization from vmx_vcpu_setup() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Write VPID to vmcs when creating vcpu (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Declare kvm_pmu->reprogram_pmi field using DECLARE_BITMAP (Vitaly Kuznetsov) [1813987] - [x86] kvm: remove redundant code in kvm_arch_vm_ioctl (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Modify kvm_x86_ops.get_enable_apicv() to use struct kvm parameter (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fold decache_cr3() into cache_reg() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add helpers to test/mark reg availability and dirtiness (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fold 'enum kvm_ex_reg' definitions into 'enum kvm_reg' (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add WARNs to detect out-of-bounds register indices (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Optimize vmx_set_rflags() for unrestricted guest (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Consolidate to_vmx() usage in RFLAGS accessors (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Skip GUEST_CR3 VMREAD+VMWRITE if the VMCS is up-to-date (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Always write vmcs02.GUEST_CR3 during nested VM-Enter (Vitaly Kuznetsov) [1813987] - [x86] kvm: clear kvmclock MSR on reset (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix bugon.cocci warnings (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Remove specialized handling of unexpected exit-reasons (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: fix sync_regs_test with newer gccs (Vitaly Kuznetsov) [1813987] - [virt] kvm: Don't shrink/grow vCPU halt_poll_ns if host side polling is disabled (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: synchronize .gitignore to Makefile (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Expose RDPID in KVM_GET_SUPPORTED_CPUID (Vitaly Kuznetsov) [1813987] - [virt] kvm: Allow kvm_device_ops to be const (Vitaly Kuznetsov) [1813987] - [kernel] kvm: Implement kvm_put_guest() (Vitaly Kuznetsov) [1813987] - [x86] xen: kvm: Gather the definition of emulate prefixes (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: do not blindly clobber registers in guest asm (Vitaly Kuznetsov) [1813987]- [fs] cifs: handle prefix paths in reconnect (Leif Sahlberg) [1814203] - [fs] cifs: use compounding for open and first query-dir for readdir() (Leif Sahlberg) [1814203] - [fs] cifs: create a helper function to parse the query-directory response buffer (Leif Sahlberg) [1814203] - [fs] cifs: prepare SMB2_query_directory to be used with compounding (Leif Sahlberg) [1814203] - [fs] xfs: reflink should force the log out if mounted with wsync (Bill O'Donnell) [1825373] - [fs] xfs: factor out a new xfs_log_force_inode helper (Bill O'Donnell) [1825373] - [fs] xfs: don't ever return a stale pointer from __xfs_dir3_free_read (Bill O'Donnell) [1825373] - [fs] xfs: fix xfs_rmap_has_other_keys usage of ECANCELED (Bill O'Donnell) [1825373] - [fs] xfs: clear kernel only flags in XFS_IOC_ATTRMULTI_BY_HANDLE (Bill O'Donnell) [1825373] - [fs] xfs: use bitops interface for buf log item AIL flag check (Bill O'Donnell) [1825373] - [fs] xfs: Sanity check flags of Q_XQUOTARM call (Bill O'Donnell) [1825373] - [fs] iomap: iomap that extends beyond EOF should be marked dirty (Bill O'Donnell) [1825373] - [s390] s390/kasan: Fix crash when attaching PCI device (Philipp Rudo) [1827334] - [s390] s390/qeth: fix initialization on old HW (Philipp Rudo) [1780667] - [s390] s390/qeth: vnicc Fix init to default (Philipp Rudo) [1780667] - [s390] s390/qeth: Fix vnicc_is_in_use if rx_bcast not set (Philipp Rudo) [1780667] - [s390] s390/qeth: fix false reporting of VNIC CHAR config failure (Philipp Rudo) [1780667] - [s390] s390/qeth: lock the card while changing its hsuid (Philipp Rudo) [1780667] - [s390] s390/qeth: fix qdio teardown after early init error (Philipp Rudo) [1780667] - [s390] s390/qeth: don't return -ENOTSUPP to userspace (Philipp Rudo) [1780667] - [s390] s390/qeth: fix promiscuous mode after reset (Philipp Rudo) [1780667] - [s390] s390/qeth: handle error due to unsupported transport mode (Philipp Rudo) [1780667] - [s390] s390/qeth: return proper errno on IO error (Philipp Rudo) [1780667] - [s390] s390/qeth: don't check drvdata in sysfs code (Philipp Rudo) [1780667] - [s390] s390/qeth: replace qeth_l3_get_addr_buffer() (Philipp Rudo) [1780667] - [s390] s390/qeth: remove VLAN tracking for L3 devices (Philipp Rudo) [1780667] - [net] net: 8021q: vlan_core: allow use list of vlans for real device (Philipp Rudo) [1780667] - [s390] s390/qeth: consolidate L3 mcast registration code (Philipp Rudo) [1780667] - [s390] s390/qeth: remove gratuitious RX modeset (Philipp Rudo) [1780667] - [s390] s390/qeth: fine-tune L3 mcast locking (Philipp Rudo) [1780667] - [s390] s390/qeth: clean up error path in qeth_core_probe_device() (Philipp Rudo) [1780667] - [s390] s390/qeth: don't cache MAC addresses for multicast IPs (Philipp Rudo) [1780667] - [s390] s390/qeth: use helpers for IP address hashing (Philipp Rudo) [1780667] - [s390] s390/qeth: don't set card state in qeth_qdio_clear_card() (Philipp Rudo) [1780667] - [s390] s390/qeth: consolidate some duplicated HW cmd code (Philipp Rudo) [1780667] - [s390] s390/qeth: keep IRQ disabled until NAPI is really done (Philipp Rudo) [1780667] - [s390] s390/qeth: use QDIO_BUFNR() (Philipp Rudo) [1780667] - [s390] s390/qdio: move SSQD Sniffer mask definition (Philipp Rudo) [1780667] - [s390] s390/qdio: don't attempt IRQ avoidance on Output SBALs (Philipp Rudo) [1780667] - [s390] s390/qdio: simplify thinint device registration (Philipp Rudo) [1780667] - [s390] s390/qdio: add statistics helper macro (Philipp Rudo) [1780667] - [s390] s390/qdio: remove a forward declaration (Philipp Rudo) [1780667] - [s390] s390/qdio: reduce log level for EQBS partial (Philipp Rudo) [1780667] - [s390] s390/qdio: use QDIO_BUFNR() (Philipp Rudo) [1780667] - [s390] s390/qeth: Fix initialization of vnicc cmd masks during set online (Philipp Rudo) [1780667] - [s390] s390/qeth: Fix error handling during VNICC initialization (Philipp Rudo) [1780667] - [s390] s390/qdio: clarify size of the QIB parm area (Philipp Rudo) [1780667] - [s390] s390/qeth: get vnicc sub-cmd type from reply data (Philipp Rudo) [1780667] - [s390] s390/qeth: merge qeth_reply struct into qeth_cmd_buffer (Philipp Rudo) [1780667] - [s390] s390/qeth: keep cmd alive after IO completion (Philipp Rudo) [1780667] - [s390] s390/qeth: use correct length field in SNMP cmd callback (Philipp Rudo) [1780667] - [s390] s390/qeth: propagate length of processed cmd IO data to callback (Philipp Rudo) [1780667] - [s390] s390/qeth: use node_descriptor struct (Philipp Rudo) [1780667] - [s390] s390/cio: move struct node_descriptor to cio.h (Philipp Rudo) [1780667] - [s390] scsi: zfcp: log FC Endpoint Security errors (Philipp Rudo) [1723820] - [s390] scsi: zfcp: enhance handling of FC Endpoint Security errors (Philipp Rudo) [1723820] - [lib] lib/zlib: add zlib_deflate_dfltcc_enabled() function (Philipp Rudo) [1659435] - [lib] s390/boot: add dfltcc= kernel command line parameter (Philipp Rudo) [1659435] - [lib] lib/zlib: add s390 hardware support for kernel zlib_inflate (Philipp Rudo) [1659435] - [s390] s390/boot: rename HEAP_SIZE due to name collision (Philipp Rudo) [1659435] - [lib] lib/zlib: add s390 hardware support for kernel zlib_deflate (Philipp Rudo) [1659435] - [base] mm/memory_hotplug: allow to specify a default online_type (David Hildenbrand) [1038941] - [base] mm/memory_hotplug: convert memhp_auto_online to store an online_type (David Hildenbrand) [1038941] - [mm] mm/memory_hotplug: unexport memhp_auto_online (David Hildenbrand) [1038941] - [hv] hv_balloon: don't check for memhp_auto_online manually (David Hildenbrand) [1038941] - [powerpc] powernv/memtrace: always online added memory blocks (David Hildenbrand) [1038941] - [base] drivers/base/memory: store mapping between MMOP_* and string in an array (David Hildenbrand) [1038941] - [base] drivers/base/memory: map MMOP_OFFLINE to 0 (David Hildenbrand) [1038941] - [base] drivers/base/memory: rename MMOP_ONLINE_KEEP to MMOP_ONLINE (David Hildenbrand) [1038941] - [netdrv] cxgb4: fix adapter crash due to wrong MC size (Vishal Kulkarni) [1813128] - [scsi] scsi: ibmvfc: Don't send implicit logouts prior to NPIV login (Steve Best) [1828725] - [fs] cifs: ignore cached share root handle closing errors (Leif Sahlberg) [1827485] - [fs] cifs: Optimize readdir on reparse points (Leif Sahlberg) [1827485] - [fs] cifs: Adjust indentation in smb2_open_file (Leif Sahlberg) [1827485] - [fs] CIFS: Close cached root handle only if it has a lease (Leif Sahlberg) [1827485] - [fs] SMB3: Fix crash in SMB2_open_init due to uninitialized field in compounding path (Leif Sahlberg) [1827485] - [fs] smb3: fix refcount underflow warning on unmount when no directory leases (Leif Sahlberg) [1827485] - [fs] fs: cifs: Delete usage of timespec64_trunc (Leif Sahlberg) [1827485] - [fs] smb3: improve check for when we send the security descriptor context on create (Leif Sahlberg) [1827485] - [fs] smb3: fix mode passed in on create for modetosid mount option (Leif Sahlberg) [1827485] - [fs] cifs: fix possible uninitialized access and race on iface_list (Leif Sahlberg) [1827485] - [fs] cifs: Fix lookup of SMB connections on multichannel (Leif Sahlberg) [1827485] - [fs] smb3: query attributes on file close (Leif Sahlberg) [1827485] - [fs] smb3: remove unused flag passed into close functions (Leif Sahlberg) [1827485] - [fs] cifs: remove redundant assignment to pointer pneg_ctxt (Leif Sahlberg) [1827485] - [fs] fs: cifs: Fix atime update check vs mtime (Leif Sahlberg) [1827485] - [fs] CIFS: fix a white space issue in cifs_get_inode_info() (Leif Sahlberg) [1827485] - [fs] cifs: update internal module version number (Leif Sahlberg) [1827485] - [fs] cifs: Always update signing key of first channel (Leif Sahlberg) [1827485] - [fs] cifs: Fix retrieval of DFS referrals in cifs_mount() (Leif Sahlberg) [1827485] - [fs] cifs: Fix potential softlockups while refreshing DFS cache (Leif Sahlberg) [1827485] - [fs] cifs: Fix lookup of root ses in DFS referral cache (Leif Sahlberg) [1827485] - [fs] cifs: Fix use-after-free bug in cifs_reconnect() (Leif Sahlberg) [1827485] - [fs] cifs: dump channel info in DebugData (Leif Sahlberg) [1827485] - [fs] smb3: dump in_send and num_waiters stats counters by default (Leif Sahlberg) [1827485] - [fs] cifs: try harder to open new channels (Leif Sahlberg) [1827485] - [fs] CIFS: Properly process SMB3 lease breaks (Leif Sahlberg) [1827485] - [fs] cifs: move cifsFileInfo_put logic into a work-queue (Leif Sahlberg) [1827485] - [fs] cifs: try opening channels after mounting (Leif Sahlberg) [1827485] - [fs] CIFS: refactor cifs_get_inode_info() (Leif Sahlberg) [1827485] - [fs] cifs: switch servers depending on binding state (Leif Sahlberg) [1827485] - [fs] cifs: add server param (Leif Sahlberg) [1827485] - [fs] cifs: add multichannel mount options and data structs (Leif Sahlberg) [1827485] - [fs] cifs: sort interface list by speed (Leif Sahlberg) [1827485] - [fs] CIFS: Fix SMB2 oplock break processing (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Return -EAGAIN when transport is reconnecting (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Only queue work for error recovery on memory registration (Leif Sahlberg) [1827485] - [fs] smb3: add debug messages for closing unmatched open (Leif Sahlberg) [1827485] - [fs] CIFS: Respect O_SYNC and O_DIRECT flags during reconnect (Leif Sahlberg) [1827485] - [fs] smb3: remove confusing dmesg when mounting with encryption ("seal") (Leif Sahlberg) [1827485] - [fs] cifs: close the shared root handle on tree disconnect (Leif Sahlberg) [1827485] - [fs] CIFS: Return directly after a failed build_path_from_dentry() in cifs_do_create() (Leif Sahlberg) [1827485] - [fs] CIFS: Use common error handling code in smb2_ioctl_query_info() (Leif Sahlberg) [1827485] - [fs] CIFS: Use memdup_user() rather than duplicating its implementation (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Return -ECONNABORTED when trasnport is not in connected state (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Add messages on RDMA session destroy and reconnection (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Return -EINVAL when the number of iovs exceeds SMBDIRECT_MAX_SGE (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Invalidate and deregister memory registration on re-send for direct I/O (Leif Sahlberg) [1827485] - [fs] cifs: Don't display RDMA transport on reconnect (Leif Sahlberg) [1827485] - [fs] CIFS: remove set but not used variables 'cinode' and 'netfid' (Leif Sahlberg) [1827485] - [fs] cifs: add support for flock (Leif Sahlberg) [1827485] - [fs] cifs: remove unused variable 'sid_user' (Leif Sahlberg) [1827485] - [fs] cifs: rename a variable in SendReceive() (Leif Sahlberg) [1827485] - [fs] SMB3: Fix persistent handles reconnect (Leif Sahlberg) [1827485] - [fs] fix memory leak in large read decrypt offload (Leif Sahlberg) [1827485] - [fs] cifs: Fix missed free operations (Leif Sahlberg) [1827485] - [fs] cifs: clarify comment about timestamp granularity for old servers (Leif Sahlberg) [1827485] - [fs] cifs: Handle -EINPROGRESS only when noblockcnt is set (Leif Sahlberg) [1827485] - [fs] smb3: remove noisy debug message and minor cleanup (Leif Sahlberg) [1827485] - [fs] fs: cifs: mute -Wunused-const-variable message (Leif Sahlberg) [1827485] - [fs] smb3: cleanup some recent endian errors spotted by updated sparse (Leif Sahlberg) [1827485] - [fs] CIFS: Fix oplock handling for SMB 2.1+ protocols (Leif Sahlberg) [1827485] - [fs] smb3: missing ACL related flags (Leif Sahlberg) [1827485] - [fs] smb3: pass mode bits into create calls (Leif Sahlberg) [1827485] - [fs] smb3: Add missing reparse tags (Leif Sahlberg) [1827485] - [fs] CIFS: fix max ea value size (Leif Sahlberg) [1827485] - [fs] fs/cifs/sess.c: Remove set but not used variable 'capabilities' (Leif Sahlberg) [1827485] - [fs] fs/cifs/smb2pdu.c: Make SMB2_notify_init static (Leif Sahlberg) [1827485] - [fs] smb3: fix leak in "open on server" perf counter (Leif Sahlberg) [1827485] - [fs] smb3: allow decryption keys to be dumped by admin for debugging (Leif Sahlberg) [1827485] - [fs] cifs: update internal module version number (Leif Sahlberg) [1827485] - [fs] cifs: modefromsid: write mode ACE first (Leif Sahlberg) [1827485] - [fs] cifs: cifsroot: add more err checking (Leif Sahlberg) [1827485] - [fs] smb3: add missing worker function for SMB3 change notify (Leif Sahlberg) [1827485] - [fs] cifs: Add support for root file systems (Leif Sahlberg) [1827485] - [fs] cifs: modefromsid: make room for 4 ACE (Leif Sahlberg) [1827485] - [fs] smb3: fix potential null dereference in decrypt offload (Leif Sahlberg) [1827485] - [fs] smb3: allow disabling requesting leases (Leif Sahlberg) [1827485] - [fs] smb3: improve handling of share deleted (and share recreated) (Leif Sahlberg) [1827485] - [fs] smb3: display max smb3 requests in flight at any one time (Leif Sahlberg) [1827485] - [fs] smb3: only offload decryption of read responses if multiple requests (Leif Sahlberg) [1827485] - [fs] cifs: add a helper to find an existing readable handle to a file (Leif Sahlberg) [1827485] - [fs] smb3: enable offload of decryption of large reads via mount option (Leif Sahlberg) [1827485] - [fs] smb3: allow parallelizing decryption of reads (Leif Sahlberg) [1827485] - [fs] smb3: allow skipping signature verification for perf sensitive configurations (Leif Sahlberg) [1827485] - [fs] smb3: add dynamic tracepoints for flush and close (Leif Sahlberg) [1827485] - [fs] smb3: log warning if CSC policy conflicts with cache mount option (Leif Sahlberg) [1827485] - [fs] smb3: add mount option to allow RW caching of share accessed by only 1 client (Leif Sahlberg) [1827485] - [fs] smb3: add some more descriptive messages about share when mounting cache=ro (Leif Sahlberg) [1827485] - [fs] smb3: add mount option to allow forced caching of read only share (Leif Sahlberg) [1827485] - [fs] cifs: fix dereference on ses before it is null checked (Leif Sahlberg) [1827485] - [fs] cifs: use existing handle for compound_op(OP_SET_INFO) when possible (Leif Sahlberg) [1827485] - [fs] cifs: create a helper to find a writeable handle by path name (Leif Sahlberg) [1827485] - [fs] cifs: remove set but not used variables (Leif Sahlberg) [1827485] - [fs] smb3: Incorrect size for netname negotiate context (Leif Sahlberg) [1827485] - [fs] cifs: remove unused variable (Leif Sahlberg) [1827485] - [fs] cifs: remove redundant assignment to variable rc (Leif Sahlberg) [1827485] - [fs] smb3: add missing flag definitions (Leif Sahlberg) [1827485] - [fs] cifs: add passthrough for smb2 setinfo (Leif Sahlberg) [1827485] - [fs] cifs: prepare SMB2_Flush to be usable in compounds (Leif Sahlberg) [1827485] - [fs] cifs: allow chmod to set mode bits using special sid (Leif Sahlberg) [1827485] - [fs] cifs: get mode bits from special sid on stat (Leif Sahlberg) [1827485] - [fs] fs: cifs: cifsssmb: remove redundant assignment to variable ret (Leif Sahlberg) [1827485] - [fs] cifs: fix a comment for the timeouts when sending echos (Leif Sahlberg) [1827485] - [fs] fs: cifs: switch to RC4 library interface (Leif Sahlberg) [1827485] - [fs] smb3: smbdirect no longer experimental (Leif Sahlberg) [1827485] - [fs] cifs: copy_file_range needs to strip setuid bits and update timestamps (Leif Sahlberg) [1827485] - [tools] perf vendor events s390: Add new deflate counters for IBM z15 (Philipp Rudo) [1827333] - [s390] s390/cpum_cf: Add new extended counters for IBM z15 (Philipp Rudo) [1827333] - [s390] s390/zcrypt: use kvmalloc instead of kmalloc for 256k alloc (Philipp Rudo) [1827310] - [s390] s390/pkey/zcrypt: Support EP11 AES secure keys (Philipp Rudo) [1723826] - [s390] s390/zcrypt: extend EP11 card and queue sysfs attributes (Philipp Rudo) [1723826] - [s390] s390/zcrypt: add new low level ep11 functions support file (Philipp Rudo) [1723826] - [s390] s390/zcrypt: ep11 structs rework, export zcrypt_send_ep11_cprb (Philipp Rudo) [1723826] - [s390] s390/zcrypt: enable card/domain autoselect on ep11 cprbs (Philipp Rudo) [1723826] - [crypto] crypto/testmgr: enable selftests for paes-s390 ciphers (Philipp Rudo) [1780668] - [s390] s390/pkey: Add support for key blob with clear key value (Philipp Rudo) [1780668] - [s390] s390/crypto: enable clear key values for paes ciphers (Philipp Rudo) [1780668] - [s390] s390/crypto: Rework on paes implementation (Philipp Rudo) [1780668] - [s390] scsi: zfcp: trace FC Endpoint Security of FCP devices and connections (Philipp Rudo) [1723822] - [s390] scsi: zfcp: log FC Endpoint Security of connections (Philipp Rudo) [1723822] - [s390] scsi: zfcp: report FC Endpoint Security in sysfs (Philipp Rudo) [1723822] - [s390] scsi: zfcp: auto variables for dereferenced structs in open port handler (Philipp Rudo) [1723822] - [block] blk-iocost: Fix error on iocost_ioc_vrate_adj (Waiman Long) [1828563] - [s390] s390/ipl: add support to control memory clearing for FCP and CCW re-IPL (Philipp Rudo) [1812985] - [s390] s390: support KPROBES_ON_FTRACE (Philipp Rudo) [1810526] - [s390] s390/ftrace: generate traced function stack frame (Philipp Rudo) [1810526] - [s390] s390/ftrace: save traced function caller (Philipp Rudo) [1810526] - [misc] mei: me: fix irq number stored in hw struct (Tony Camuso) [1822645] - [misc] mei: me: add cedar fork device ids (Tony Camuso) [1822645] - [misc] mei: fix CNL itouch device number to match the spec (Tony Camuso) [1822645] - [misc] misc: Replace zero-length array with flexible-array member (Tony Camuso) [1822645] - [misc] mei: remove unused includes from pci-{me, txe}.c (Tony Camuso) [1822645] - [misc] mei: limit number of bytes in mei header (Tony Camuso) [1822645] - [misc] mei: bus: replace zero-length array with flexible-array member (Tony Camuso) [1822645] - [misc] mei: me: add jasper point DID (Tony Camuso) [1822645] - [misc] mei: hdcp: bind only with i915 on the same PCH (Tony Camuso) [1822645] - [misc] mei: bus: use simple sprintf for sysfs (Tony Camuso) [1822645] - [misc] mei: bus: add more client attributes to sysfs (Tony Camuso) [1822645] - [misc] mei: add trc detection register to sysfs (Tony Camuso) [1822645] - [misc] mei: abstract fw status register read (Tony Camuso) [1822645] - [misc] mei: me: store irq number in the hw struct (Tony Camuso) [1822645] - [misc] mei: me: mei_me_dev_init() use struct device instead of struct pci_dev (Tony Camuso) [1822645] - [misc] mei: me: add comet point V device id (Tony Camuso) [1822645] - [misc] mei: bus: prefix device names on bus with the bus name (Tony Camuso) [1822645] - [misc] mei: me: fix me_intr_clear function name in KDoc (Tony Camuso) [1822645] - [misc] mei: buf: drop 'running hook' debug messages (Tony Camuso) [1822645] - [misc] mei: avoid FW version request on Ibex Peak and earlier (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Fill transcoder index in port info (Tony Camuso) [1822645] - [misc] drm/i915: mei_hdcp: I915 sends ddi index as per ME FW (Tony Camuso) [1822645] - [drm] drm/i915: Attach content type property (Tony Camuso) [1822645] - [drm] drm: Add Content protection type property (Tony Camuso) [1822645] - [misc] mei: me: add Tiger Lake point LP device ID (Tony Camuso) [1822645] - [misc] mei: Use dev_get_drvdata where possible (Tony Camuso) [1822645] - [misc] mei: me: add mule creek canyon (EHL) device ids (Tony Camuso) [1822645] - [misc] mei: no need to check return value of debugfs_create functions (Tony Camuso) [1822645] - [documentation] mei: docs: add hdcp documentation (Tony Camuso) [1822645] - [documentation] mei: docs: add a short description for nfc behind mei (Tony Camuso) [1822645] - [documentation] mei: docs: update mei client bus documentation (Tony Camuso) [1822645] - [documentation] mei: docs: move iamt docs to a iamt.rst file (Tony Camuso) [1822645] - [documentation] mei: docs: move documentation under driver-api (Tony Camuso) [1822645] - [misc] mei: Convert to use DEFINE_SHOW_ATTRIBUTE macro (Tony Camuso) [1822645] - [drm] drm: generic fn converting be24 to cpu and vice versa (Tony Camuso) [1822645] - [misc] mei: expose device state in sysfs (Tony Camuso) [1822645] - [misc] mei: hdcp: use own Kconfig file (Tony Camuso) [1822645] - [misc] mei: adjust the copyright notice in the files (Tony Camuso) [1822645] - [misc] mei/hdcp: Fix SPDX identifiers (Tony Camuso) [1822645] - [misc] mei: convert to SPDX license tags (Tony Camuso) [1822645] - [misc] mei: add missing SPDX tag to mei Kconfig (Tony Camuso) [1822645] - [misc] mei: bus: move hw module get/put to probe/release (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Component framework for I915 Interface (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Closing wired HDCP2.2 Tx Session (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Enabling the HDCP authentication (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify M_prime (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Repeater topology verification and ack (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Prepare Session Key (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify L_prime (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Initiate Locality check (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Store the HDCP Pairing info (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify H_prime (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify Receiver Cert and prepare km (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Initiate Wired HDCP2.2 Tx Session (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Define ME FW interface for HDCP2.2 (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Client driver for HDCP application (Tony Camuso) [1822645] - [misc] mei: bus: whitelist hdcp client (Tony Camuso) [1822645] - [misc] mei: hbm: clean the feature flags on link reset (Tony Camuso) [1822645] - [misc] mei: bus: export to_mei_cl_device for mei client devices drivers (Tony Camuso) [1822645] - [misc] mei: free read cb on ctrl_wr list flush (Tony Camuso) [1822645] - [misc] mei: me: add ice lake point device id (Tony Camuso) [1822645] - [misc] mei: squash single_recv_buf into one bit in client properties (Tony Camuso) [1822645] - [misc] mei: me: add denverton innovation engine device IDs (Tony Camuso) [1822645] - [misc] mei: me: mark LBG devices as having dma support (Tony Camuso) [1822645] - [misc] mei: dma: silent the reject message (Tony Camuso) [1822645] - [misc] mei: me: mark CNP devices as having dma support (Tony Camuso) [1822645] - [misc] mei: bump hbm version to 2.1 (Tony Camuso) [1822645] - [misc] mei: dma ring: implement transmit flow (Tony Camuso) [1822645] - [misc] mei: dma ring: implement rx circular buffer logic (Tony Camuso) [1822645] - [misc] mei: hw: add dma ring control block (Tony Camuso) [1822645] - [misc] mei: hbm: setup dma ring (Tony Camuso) [1822645] - [misc] mei: dma ring buffers allocation (Tony Camuso) [1822645] - [misc] mei: expedite ioctl return on the notify set operation error (Tony Camuso) [1822645] - [misc] mei: flush queues by the host client only (Tony Camuso) [1822645] - [misc] mei: hbm: drop BUG() from the hbm handler (Tony Camuso) [1822645] - [misc] mei: replace POLL* with EPOLL* for write queues (Tony Camuso) [1822645] - [misc] misc: remove redundant include moduleparam.h (Tony Camuso) [1822645] - [misc] mei: bus: need to unlink client before freeing (Tony Camuso) [1822645] - [misc] mei: bus: fix hw module get/put balance (Tony Camuso) [1822645] - [misc] mei: fix use-after-free in mei_cl_write (Tony Camuso) [1822645] - [misc] mei: ignore not found client in the enumeration (Tony Camuso) [1822645] - [misc] mei: restrict dma ring support to hbm version 2.1 (Tony Camuso) [1822645] - [misc] mei: hbm: introduce dma bit in the message header (Tony Camuso) [1822645] - [misc] mei: add support for variable length mei headers (Tony Camuso) [1822645] - [misc] mei: add mei_msg_hdr_init wrapper (Tony Camuso) [1822645] - [misc] mei: move hbuf_depth from the mei device to the hw modules (Tony Camuso) [1822645] - [misc] mei: cleanup slots to data conversions (Tony Camuso) [1822645] - [misc] mei: bus: suppress sign-compare warnings (Tony Camuso) [1822645] - [misc] mei: fix ssize_t to int assignment in read and write ops (Tony Camuso) [1822645] - [misc] mei: use correct type for counter variable in for loops (Tony Camuso) [1822645] - [misc] mei: check for error returned from mei_hbuf_empty_slots() (Tony Camuso) [1822645] - [misc] mei: don't update offset in write (Tony Camuso) [1822645] - [misc] mei: bus: type promotion bug in mei_fwver() (Tony Camuso) [1822645] - [misc] mei: bus: type promotion bug in mei_nfc_if_version() (Tony Camuso) [1822645] - [misc] mei: expose fw version to sysfs (Tony Camuso) [1822645] - [misc] mei: add optional timeout to internal bus recv (Tony Camuso) [1822645] - [misc] mei: remove unused MEI_IAMTHIF_STALL_TIMER define (Tony Camuso) [1822645] - [s390] s390/pci: Fix unexpected write combine on resource (Philipp Rudo) [1827311] - [powerpc] pwerpc/vas: Include linux/types.h in uapi/asm/vas-api.h (Gustavo Duarte) [1725806] - [documentation] Documentation/powerpc: VAS API (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Remove 'pid' in vas_tx_win_attr struct (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Enable and setup GZIP compresstion type (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Make enable code generic to add new GZIP compression type (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Rename nx-842-powernv file name to nx-common-powernv (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Initialize coproc entry with kzalloc (Gustavo Duarte) [1725806] - [crypto] crypto: nx - Add of_node_put() before return in 842 (Gustavo Duarte) [1725806] - [crypto] crypto/NX: Set receive window credits to max number of CRBs in RxFIFO (Gustavo Duarte) [1725806] - [powerpc] crypto/nx: Initialize 842 high and normal RxFIFO control registers (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Add VAS user space API (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Define VAS_TX_WIN_OPEN ioctl API (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Initialize window attributes for GZIP coprocessor type (Gustavo Duarte) [1725806] - [powerpc] powerpc: Use mm_context vas_windows counter to issue CP_ABORT (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Free send window in VAS instance after credits returned (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Display process stuck message (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Do not use default credits for receive window (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Print CRB and FIFO values (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Return credits after handling fault (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Update CSB and notify process for fault CRBs (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Setup thread IRQ handler per VAS instance (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Take reference to PID and mm for user space windows (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Register NX with fault window ID and IRQ port value (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Setup fault window per VAS instance (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Alloc and setup IRQ and trigger port (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Define nx_fault_stamp in coprocessor_request_block (Gustavo Duarte) [1725806] - [powerpc] powerpc/xive: Define xive_native_alloc_irq_on_chip() (Gustavo Duarte) [1725806] - [powerpc] powerpc/powernv: remove the unused vas_win_paste_addr and vas_win_id functions (Gustavo Duarte) [1725806] - [tools] intel-speed-select: Fix speed-select-base-freq-properties output on CLX-N (Prarit Bhargava) [1828306] - [tools] tools/power/x86/intel-speed-select: Fix CLX-N package information output (Prarit Bhargava) [1828306] - [kernel] sched/isolation: Allow "isolcpus=" to skip unknown sub-parameters (Peter Xu) [1799014] - [arm64] arm64: tlb: skip tlbi broadcast, fix speculative tlb lookups (Andrea Arcangeli) [1820817] - [x86] pci: hv: Introduce hv_msi_entry (Mohammed Gamal) [1816740] - [pci] hv: Move retarget related structures into tlfs header (Mohammed Gamal) [1816740] - [pci] hv: Move hypercall related definitions into tlfs header (Mohammed Gamal) [1816740] - [pci] hv: Reorganize the code in preparation of hibernation (Mohammed Gamal) [1816740] - [pci] hv: Add a Hyper-V PCI interface driver for software backchannel interface (Mohammed Gamal) [1816740] - [pci] hv: Add a paravirtual backchannel in software (Mohammed Gamal) [1816740]- [include] i2c: fix a doc warning (David Arcari) [1826759] - [i2c] i2c: acpi: put device when verifying client fails (David Arcari) [1826759] - [i2c] i2c: i2c-core-of: convert to use i2c_new_client_device() (David Arcari) [1826759] - [i2c] i2c: i2c-core-base: convert to use i2c_new_client_device() (David Arcari) [1826759] - [i2c] i2c: i2c-core-acpi: convert to use i2c_new_client_device() (David Arcari) [1826759] - [i2c] i2c: fix bus recovery stop mode timing (David Arcari) [1826759] - [i2c] i2c: core: Use DEVICE_ATTR_*() helper macros (David Arcari) [1826759] - [include] i2c: remove unneeded 'extern' from function declatations (David Arcari) [1826759] - [include] i2c: add helper to check if a client has a driver attached (David Arcari) [1826759] - [include] i2c: fix header file kernel-doc warning (David Arcari) [1826759] - [misc] eeprom: at24: use devm_i2c_new_dummy_device() (David Arcari) [1826759] - [i2c] i2c: remove i2c_new_dummy() API (David Arcari) [1826759] - [media] media: dvb-frontends: cxd2820r_core: convert to i2c_new_dummy_device (David Arcari) [1826759] - [media] media: dvb-frontends: mn88473: convert to i2c_new_dummy_device (David Arcari) [1826759] - [media] media: dvb-frontends: mn88472: convert to i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83791d) convert to use devm_i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83793d) convert to use devm_i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83781d) convert to i2c_new_dummy_device (David Arcari) [1826759] - [media] media: ir-kbd-i2c: convert to i2c_new_dummy_device() (David Arcari) [1826759] - [misc] misc: eeprom: max6875: convert to i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83792d) convert to use devm_i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (asb100) convert to i2c_new_dummy_device (David Arcari) [1826759] - [i2c] i2c: replace i2c_new_probed_device with an ERR_PTR variant (David Arcari) [1826759] - [i2c] i2c: smbus: Don't filter out duplicate alerts (David Arcari) [1826759] - [i2c] i2c: of: Populate fwnode in of_i2c_get_board_info() (David Arcari) [1826759] - [i2c] i2c: remove helpers for ref-counting clients (David Arcari) [1826759] - [i2c] i2c: core: fix use after free in of_i2c_notify (David Arcari) [1826759] - [i2c] i2c: acpi: Force bus speed to 400KHz if a Silead touchscreen is present (David Arcari) [1826759] - [i2c] i2c: add support for filters optional properties (David Arcari) [1826759] - [i2c] i2c: slave-eeprom: Add read only mode (David Arcari) [1826759] - [i2c] i2c: slave-eeprom: Add comment about address handling (David Arcari) [1826759] - [i2c] i2c-eeprom_slave: Add support for more eeprom models (David Arcari) [1826759] - [i2c] i2c: make i2c_unregister_device() ERR_PTR safe (David Arcari) [1826759] - [media] i2c: replace i2c_new_secondary_device with an ERR_PTR variant (David Arcari) [1826759] - [i2c] i2c: Drop unneeded check for of_node (David Arcari) [1826759] - [i2c] i2c: core: Tidy up handling of init_irq (David Arcari) [1826759] - [i2c] i2c: core: Move ACPI gpio IRQ handling into i2c_acpi_get_irq (David Arcari) [1826759] - [i2c] i2c: core: Move ACPI IRQ handling to probe time (David Arcari) [1826759] - [i2c] i2c: acpi: Factor out getting the IRQ from ACPI (David Arcari) [1826759] - [i2c] i2c: acpi: Use available IRQ helper functions (David Arcari) [1826759] - [i2c] i2c: core: Allow whole core to use i2c_dev_irq_from_resources (David Arcari) [1826759] - [i2c] i2c: core: add sysfs header (David Arcari) [1826759] - [i2c] i2c: add newly exported functions to the header, too (David Arcari) [1826759] - [i2c] i2c: mux: add sysfs header (David Arcari) [1826759] - [include] i2c: headers: reformat header comment and update copyright (David Arcari) [1826759] - [include] i2c: headers: update docs about I2C_CLIENT_* (David Arcari) [1826759] - [i2c] i2c: core: always have a named variable in arguments (David Arcari) [1826759] - [include] i2c: headers: always have a named variable in arguments (David Arcari) [1826759] - [include] i2c: headers: don't use 'dev' as adapter variable (David Arcari) [1826759] - [i2c] i2c: mux: Use struct_size() in devm_kzalloc() (David Arcari) [1826759] - [i2c] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (David Arcari) [1826759] - [i2c] i2c: acpi: export i2c_acpi_find_adapter_by_handle (David Arcari) [1826759] - [media] tua6100: Avoid build warnings (David Arcari) [1826759] - [i2c] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (David Arcari) [1826759] - [i2c] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (David Arcari) [1826759] - [i2c] i2c: acpi: permit bus speed to be discovered after enumeration (David Arcari) [1826759] - [i2c] i2c: dev: fix potential memory leak in i2cdev_ioctl_rdwr (David Arcari) [1826759] - [include] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (David Arcari) [1826759] - [i2c] treewide: Add SPDX license identifier - Makefile/Kconfig (David Arcari) [1826759] - [i2c] i2c: core: add device-managed version of i2c_new_dummy (David Arcari) [1826759] - [i2c] i2c: core: improve return value handling of i2c_new_device and i2c_new_dummy (David Arcari) [1826759] - [i2c] i2c: core: apply 'is_suspended' check for SMBus, too (David Arcari) [1826759] - [i2c] i2c: core: ratelimit 'transfer when suspended' errors (David Arcari) [1826759] - [i2c] i2c: Prevent runtime suspend of adapter when Host Notify is required (David Arcari) [1826759] - [i2c] gcc-9: don't warn about uninitialized variable (David Arcari) [1826759] - [i2c] i2c: mux: populate the new *_atomic callbacks (David Arcari) [1826759] - [i2c] i2c: core: introduce callbacks for atomic transfers (David Arcari) [1826759] - [i2c] i2c: core: use I2C locking behaviour also for SMBUS (David Arcari) [1826759] - [i2c] i2c: core: remove use of in_atomic() (David Arcari) [1826759] - [include] i2c: apply coding style for struct i2c_adapter (David Arcari) [1826759] - [i2c] i2c: add extra check to safe DMA buffer helper (David Arcari) [1826759] - [i2c] i2c: Allow recovery of the initial IRQ by an I2C client device (David Arcari) [1826759] - [i2c] i2c: expand minor range when registering chrdev region (David Arcari) [1826759] - [i2c] i2c: core-smbus: don't trace smbus_reply data on errors (David Arcari) [1826759] - [i2c] i2c: of: Try to find an I2C adapter matching the parent (David Arcari) [1826759] - [include] i2c: acpi: Move I2C bits from acpi.h to i2c.h (David Arcari) [1826759] - [i2c] i2c: dev: prevent adapter retries and timeout being set as minus value (David Arcari) [1826759] - [i2c] i2c: add suspended flag and accessors for i2c adapters (David Arcari) [1826759] - [i2c] treewide: surround Kconfig file paths with double quotes (David Arcari) [1826759] - [i2c] i2c: acpi: Introduce i2c_acpi_get_i2c_resource() helper (David Arcari) [1826759] - [i2c] i2c: acpi: Use ACPI_FAILURE instead of !ACPI_SUCCESS (David Arcari) [1826759] - [i2c] i2c: acpi: Return error pointers from i2c_acpi_new_device() (David Arcari) [1826759] - [i2c] i2c: Clear client->irq in i2c_device_remove (David Arcari) [1826759] - [i2c] i2c: Remove unnecessary call to irq_find_mapping (David Arcari) [1826759] - [i2c] i2c: Fix kerneldoc for renamed i2c dma put function (David Arcari) [1826759] - [i2c] i2c: core: remove level of indentation in i2c_transfer (David Arcari) [1826759] - [i2c] i2c: core: remove outdated DEBUG output (David Arcari) [1826759] - [i2c] i2c: refactor function to release a DMA safe buffer (David Arcari) [1826759] - [i2c] i2c: don't use any __deprecated handling anymore (David Arcari) [1826759] - [i2c] i2c: remove deprecated attach_adapter callback (David Arcari) [1826759] - [i2c] i2c: core: Parse SDA hold time from firmware (David Arcari) [1826759] - [i2c] i2c: quirks: add zero length checks (David Arcari) [1826759] - [i2c] i2c: recovery: make pin init look like STOP (David Arcari) [1826759] - [i2c] i2c: recovery: rename variable for easier understanding (David Arcari) [1826759] - [i2c] i2c: recovery: add get_bus_free callback (David Arcari) [1826759] - [i2c] i2c: recovery: refactor recovery function (David Arcari) [1826759] - [i2c] i2c: recovery: require either get_sda or set_sda (David Arcari) [1826759] - [i2c] i2c: remove i2c_lock_adapter and use i2c_lock_bus directly (David Arcari) [1826759] - [media] media: tda1004x: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: tda18271: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: af9013: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: drxk_hard: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: rtl2830: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [i2c] i2c: mux: pca9541: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [i2c] i2c: mux: make use of __i2c_smbus_xfer (David Arcari) [1826759] - [kvm] KVM: PPC: Book3S HV: Fix H_CEDE return code for nested guests (David Gibson) [1778556] - [block] block/diskstats: more accurate approximation of io_ticks for slow disks (Ming Lei) [1811745] - [scsi] scsi: storvsc: Correctly set number of hardware queues for IDE disk (Cathy Avery) [1816702] - [netdrv] bonding/alb: make sure arp header is pulled before accessing it (Jarod Wilson) [1819408] - [netdrv] bonding/alb: properly access headers in bond_alb_xmit() (Jarod Wilson) [1819408] - [netdrv] bonding: rename AD_STATE_* to LACP_STATE_* (Jarod Wilson) [1819408] - [netdrv] bonding: fix active-backup transition after link failure (Jarod Wilson) [1819408] - [netdrv] bonding: move 802.3ad port state flags to uapi (Jarod Wilson) [1819408] - [netdrv] bonding: fix bond_neigh_init() (Jarod Wilson) [1819408] - [netdrv] bonding: fix state transition issue in link monitoring (Jarod Wilson) [1819408] - [netdrv] bonding: fix potential NULL deref in bond_update_slave_arr (Jarod Wilson) [1819408] - [netdrv] team: Always enable vlan tx offload (Hangbin Liu) [1827017] - [net] netlink: Use netlink header as base to calculate bad attribute offset (Andrea Claudi) [1825252] - [net] netlink: cap max groups which will be considered in netlink_bind() (Andrea Claudi) [1825252] - [net] tcp: repair: fix TCP_QUEUE_SEQ implementation (Paolo Abeni) [1823771] - [net] tcp: fix "old stuff" D-SACK causing SACK to be treated as D-SACK (Paolo Abeni) [1823771] - [net] tcp: refine rule to allow EPOLLOUT generation under mem pressure (Paolo Abeni) [1823771] - [net] tcp: refine tcp_write_queue_empty() implementation (Paolo Abeni) [1823771] - [include] fib: add missing attribute validation for tun_id (Marcelo Leitner) [1823468] - [include] net/flow_dissector: remove unexist field description (Marcelo Leitner) [1823468] - [net] vlan: vlan_changelink() should propagate errors (Marcelo Leitner) [1823468] - [net] af_packet: set defaule value for tmo (Marcelo Leitner) [1823468] - [net] packet: fix data-race in fanout_flow_is_huge() (Marcelo Leitner) [1823468] - [net] llc: fix sk_buff refcounting in llc_conn_state_process() (Marcelo Leitner) [1823468] - [net] llc: fix another potential sk_buff leak in llc_ui_sendmsg() (Marcelo Leitner) [1823468] - [net] llc: fix sk_buff leak in llc_conn_service() (Marcelo Leitner) [1823468] - [net] llc: fix sk_buff leak in llc_sap_state_process() (Marcelo Leitner) [1823468] - [net] openvswitch: Fix conntrack cache with timeout (Patrlck Talbert) [1765587] - [net] openvswitch: Fix log message in ovs conntrack (Patrlck Talbert) [1765587] - [net] openvswitch: use after free in __ovs_ct_free_action() (Patrlck Talbert) [1765587] - [net] openvswitch: Add timeout support to ct action (Patrlck Talbert) [1765587] - [net] netfilter: Export nf_ct_{set, destroy}_timeout() (Patrlck Talbert) [1765587] - [net] netfilter: cttimeout: ctnl_timeout_find_get() returns incorrect pointer to type (Patrlck Talbert) [1765587] - [net] netfilter: remove ifdef around cttimeout in struct nf_conntrack_l4proto (Patrlck Talbert) [1765587] - [net] netfilter: cttimeout: decouple timeout policy from nfnetlink_cttimeout object (Patrlck Talbert) [1765587] - [net] netfilter: cttimeout: move ctnl_untimeout to nf_conntrack (Patrlck Talbert) [1765587] - [netdrv] ipvlan: do not use cond_resched_rcu() in ipvlan_process_multicast() (Davide Caratti) [1822906] - [netdrv] ipvlan: add cond_resched_rcu() while processing muticast backlog (Davide Caratti) [1822906] - [netdrv] ipvlan: don't deref eth hdr before checking it's set (Davide Caratti) [1822906] - [netdrv] ipvlan: do not add hardware address of master to its unicast filter list (Davide Caratti) [1822906] - [include] net/dst: do not confirm neighbor for vxlan and geneve pmtu update (Hangbin Liu) [1755686] - [net] sit: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] vti: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] tunnel: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [include] net/dst: add new function skb_dst_update_pmtu_no_confirm (Hangbin Liu) [1755686] - [netdrv] gtp: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] ip6_gre: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] add bool confirm_neigh parameter for dst_ops.update_pmtu (Hangbin Liu) [1755686] - [net] neigh: support smaller retrans_time settting (Hangbin Liu) [1767282] - [include] net: core: add helper tcp_v6_gso_csum_prep (Josef Oskera) [1818097] - [net] ip_tunnel: fix interface lookup with no key (Guillaume Nault) [1822247] - [net] ipv4: fix a RCU-list lock in inet_dump_fib() (Guillaume Nault) [1822247] - [net] gre: fix uninit-value in __iptunnel_pull_header (Guillaume Nault) [1822247] - [net] netfilter: conntrack: allow insertion of clashing entries (Florian Westphal) [1821404] - [net] netfilter: conntrack: split resolve_clash function (Florian Westphal) [1821404] - [net] netfilter: conntrack: place confirm-bit setting in a helper (Florian Westphal) [1821404] - [net] netfilter: never get/set skb->tstamp (Florian Westphal) [1821404] - [net] netfilter: conntrack: remove two args from resolve_clash (Florian Westphal) [1821404] - [net] netfilter: conntrack: tell compiler to not inline nf_ct_resolve_clash (Florian Westphal) [1821404] - [netdrv] macsec: restrict to ethernet devices (Sabrina Dubroca) [1820524] - [netdrv] macsec: add missing attribute validation for port (Sabrina Dubroca) [1820524] - [net] netns: restore ops before calling ops_exit_list (Ivan Vecera) [1822568] - [net] netns: add pre_exit method to struct pernet_operations (Ivan Vecera) [1822568] - [include] net: dst: Force 4-byte alignment of dst_metrics (Guillaume Nault) [1822148] - [include] net: annotate lockless accesses to sk->sk_napi_id (Guillaume Nault) [1822148] - [net] Fix typo of SKB_SGO_CB_OFFSET (Guillaume Nault) [1822148] - [net] use indirect call wrappers for skb_copy_datagram_iter() (Guillaume Nault) [1822148] - [net] datagram: Make __skb_datagram_iter static (Guillaume Nault) [1822148] - [net] Fix Tx hash bound checking (Guillaume Nault) [1822148] - [net] openvswitch: add missing attribute validation for hash (Eelco Chaudron) [1819202] - [net] openvswitch: Distribute switch variables for initialization (Eelco Chaudron) [1819202] - [net] openvswitch: support asymmetric conntrack (Eelco Chaudron) [1819202] - [net] openvswitch: remove another BUG_ON() (Eelco Chaudron) [1819202] - [net] openvswitch: drop unneeded BUG_ON() in ovs_flow_cmd_build_info() (Eelco Chaudron) [1819202] - [net] openvswitch: don't call pad_packet if not necessary (Eelco Chaudron) [1819202] - [net] openvswitch: add hash info to upcall (Eelco Chaudron) [1819202] - [net] openvswitch: select vport upcall portid directly (Eelco Chaudron) [1819202] - [net] openvswitch: simplify the ovs_dp_cmd_new (Eelco Chaudron) [1819202] - [net] openvswitch: fix possible memleak on destroy flow-table (Eelco Chaudron) [1819202] - [net] openvswitch: add likely in flow_lookup (Eelco Chaudron) [1819202] - [net] openvswitch: simplify the flow_hash (Eelco Chaudron) [1819202] - [net] openvswitch: optimize flow-mask looking up (Eelco Chaudron) [1819202] - [net] openvswitch: optimize flow mask cache hash collision (Eelco Chaudron) [1819202] - [net] openvswitch: shrink the mask array if necessary (Eelco Chaudron) [1819202] - [net] openvswitch: convert mask list in mask array (Eelco Chaudron) [1819202] - [net] openvswitch: add flow-mask cache for performance (Eelco Chaudron) [1819202] - [net] openvswitch: Allow attaching helper in later commit (Eelco Chaudron) [1819202] - [net] openvswitch: change type of UPCALL_PID attribute to NLA_UNSPEC (Eelco Chaudron) [1819202] - [net] openvswitch: Make metadata_dst tunnel work in IP_TUNNEL_INFO_BRIDGE mode (Eelco Chaudron) [1819202] - [netdrv] mlxsw: spectrum_router: Remove unlikely user-triggerable warning (Ivan Vecera) [1821358] - [net] ipv6: Error when route does not have any valid nexthops (Ivan Vecera) [1821358] - [tools] selftests: mlxsw: Add a test for FIB offload indication (Ivan Vecera) [1821358] - [net] ipv6: Stop sending in-kernel notifications for each nexthop (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Create IPv6 multipath routes in one go (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Add / delete multiple IPv6 nexthops (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Pass array of routes to route handling functions (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Adjust IPv6 replace logic to new notifications (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Pass multiple routes to work item (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Prepare function to return errors (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Remove processing of IPv6 append notifications (Ivan Vecera) [1821358] - [net] ipv6: Add IPv6 multipath notification for route delete (Ivan Vecera) [1821358] - [net] ipv6: Add IPv6 multipath notifications for add / replace (Ivan Vecera) [1821358] - [netdrv] netdevsim: Ignore IPv6 multipath notifications (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Ignore IPv6 multipath notifications (Ivan Vecera) [1821358] - [net] ipv6: Extend notifier info for multipath routes (Ivan Vecera) [1821358] - [net] ipv6: export function to send route updates (Ivan Vecera) [1821358] - [net] sctp: fix possibly using a bad saddr with a given dst (Xin Long) [1821578] - [net] sctp: fix refcount bug in sctp_wfree (Xin Long) [1821578] - [net] sctp: move the format error check out of __sctp_sf_do_9_1_abort (Xin Long) [1821578] - [net] Remove switchdev_ops (Ivan Vecera) [1821402] - [net] switchdev: Replace port attr set SDO with a notification (Ivan Vecera) [1821402] - [net] switchdev: Complete removal of switchdev_port_attr_get() (Ivan Vecera) [1821402] - [net] Get rid of switchdev_port_attr_get() (Ivan Vecera) [1821402] - [net] Remove SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS_SUPPORT (Ivan Vecera) [1821402] - [net] fib_notifier: move fib_notifier_ops from struct net into per-net struct (Ivan Vecera) [1821186] - [net] Properly unlink GRO packets on overflow. (Ivan Vecera) [1805302] - [net] Add and use skb_list_del_init(). (Ivan Vecera) [1805302] - [net] Add and use skb_mark_not_on_list(). (Ivan Vecera) [1805302] - [net] Init backlog NAPI's gro_hash. (Ivan Vecera) [1805302] - [net] gro: properly remove skb from list (Ivan Vecera) [1805302] - [net] core: trivial netif_receive_skb_list() entry point (Ivan Vecera) [1805302] - [net] Convert GRO SKB handling to list_head. (Ivan Vecera) [1805302] - [net] ipv6: don't auto-add link-local address to lag ports (Jarod Wilson) [1733953] - [tools] selftests: forwarding: vxlan_bridge_1d: use more proper tos value (Hangbin Liu) [1816587] - [tools] selftests: forwarding: vxlan_bridge_1d: fix tos value (Hangbin Liu) [1816587] - [tools] selftests: forwarding: use proto icmp for {gretap, ip6gretap}_mac testing (Hangbin Liu) [1816587] - [tools] fcnal-test: Fix vrf argument in local tcp tests (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for destination IP link-local (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for source IP equals destination IP (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for multicast destination MAC mismatch (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for source IP in class E (Hangbin Liu) [1816587] - [tools] selftests/net: make so_txtime more robust to timer variance (Hangbin Liu) [1816587] - [tools] selftests: forwarding: Add speed and auto-negotiation test (Hangbin Liu) [1816587] - [tools] selftests: forwarding: lib.sh: Add wait for dev with timeout (Hangbin Liu) [1816587] - [tools] selftests: forwarding: Add ethtool_lib.sh (Hangbin Liu) [1816587] - [tools] selftests: net: avoid ptl lock contention in tcp_mmap (Hangbin Liu) [1816587] - [tools] selftest: net: add alternative names test (Hangbin Liu) [1816587] - [tools] selftest: net: add some traceroute tests (Hangbin Liu) [1816587] - [tools] selftests: net: Fix printf format warnings on arm (Hangbin Liu) [1816587] - [tools] selftests: net: Use size_t and ssize_t for counting file size (Hangbin Liu) [1816587] - [tools] selftests: Make l2tp.sh executable (Hangbin Liu) [1816587] - [tools] selftests/net: add nettest to .gitignore (Hangbin Liu) [1816587] - [tools] selftests: Add test cases for `ip nexthop flush proto XX` (Hangbin Liu) [1816587] - [tools] selftest: A few cleanups for fib_nexthops.sh (Hangbin Liu) [1816587] - [tools] selftests: Fix get_ifidx and callers in nettest.c (Hangbin Liu) [1816587] - [tools] selftests: Fix detection of nettest command in fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add l2tp tests (Hangbin Liu) [1816587] - [tools] selftests: nettest: fix spelling mistake: "potocol" -> "protocol" (Hangbin Liu) [1816587] - [tools] selftests: Add use case section to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 netfilter tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 netfilter tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 runtime tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 runtime tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 address bind tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 address bind tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 udp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 udp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 tcp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 tcp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 ping tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 ping tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Setup for functional tests for fib and socket lookups (Hangbin Liu) [1816587] - [tools] selftests: Add nettest (Hangbin Liu) [1816587] - [tools] selftests/net: add missing gitignores (ipv6_flowlabel) (Hangbin Liu) [1816587] - [tools] selftests: txring_overwrite: fix incorrect test of mmap() return value (Hangbin Liu) [1816587] - [tools] selftests/net: skip psock_tpacket test if KALLSYMS was not enabled (Hangbin Liu) [1816587] - [tools] selftests: rtnetlink: skip ipsec offload tests if netdevsim isn't present (Hangbin Liu) [1816587] - [tools] selftests: Add test cases for nexthop objects (Hangbin Liu) [1816587] - [tools] selftests/net: ipv6 flowlabel (Hangbin Liu) [1816587] - [tools] selftests/net: SO_TXTIME with ETF and FQ (Hangbin Liu) [1816587] - [tools] selftests: fib-onlink: Make quiet by default (Hangbin Liu) [1816587] - [tools] selftests/net: correct the return value for run_afpackettests (Hangbin Liu) [1816587] - [tools] selftests/net: correct the return value for run_netsocktests (Hangbin Liu) [1816587] - [tools] selftests: forwarding: Add reverse path forwarding (RPF) test cases (Hangbin Liu) [1816587] - [tools] selftest/net: Remove duplicate header (Hangbin Liu) [1816587] - [tools] selftests: fib_tests: sleep after changing carrier. again. (Hangbin Liu) [1816587] - [tools] selftests: net: use LDLIBS instead of LDFLAGS (Hangbin Liu) [1816587] - [tools] selftests/net: add txring_overwrite (Hangbin Liu) [1816587] - [tools] fib_tests: Add tests for invalid metric on route (Hangbin Liu) [1816587] - [tools] selftests: forwarding: test for bridge sticky flag (Hangbin Liu) [1816587] - [tools] selftests: net: Test headroom handling of ip6_gre devices (Hangbin Liu) [1816587] - [net] Don't disable interrupts in __netdev_alloc_skb() (Andrea Claudi) [1811207] - [net] Don't disable interrupts in napi_alloc_frag() (Andrea Claudi) [1811207] - [net] ipv4: ensure rcu_read_lock() in cipso_v4_error() (Matteo Croce) [1720708] - [net] ipv4: add sanity checks in ipv4_link_failure() (Matteo Croce) [1720708] - [net] ipv4: ensure rcu_read_lock() in ipv4_link_failure() (Matteo Croce) [1720708] - [net] ipv4: recompile ip options in ipv4_link_failure (Matteo Croce) [1720708] - [net] avoid use IPCB in cipso_v4_error (Matteo Croce) [1720708] - [net] Add __icmp_send helper. (Matteo Croce) [1720708] - [net] ipv4: defensive cipso option parsing (Matteo Croce) [1720708] - [net] netfilter: nf_queue: enqueue skbs with NULL dst (Matteo Croce) [1786116]- [powerpc] powerpc/pseries/ddw: Extend upper limit for huge DMA window for persistent memory (Steve Best) [1817596] - [cpuidle] cpuidle: haltpoll: allow force loading on hosts without the REALTIME hint (David Arcari) [1825353] - [cpuidle] cpuidle: dt: Support hierarchical CPU idle states (David Arcari) [1825353] - [of] of: base: Add of_get_cpu_state_node() to get idle states for a CPU node (David Arcari) [1825353] - [cpuidle] cpuidle: Allow idle states to be disabled by default (David Arcari) [1825353] - [cpuidle] cpuidle: Drop unnecessary type cast in cpuidle_poll_time() (David Arcari) [1825353] - [cpuidle] cpuidle: Fix cpuidle_driver_state_disabled() (David Arcari) [1825353] - [cpuidle] cpuidle: use first valid target residency as poll time (David Arcari) [1825353] - [cpuidle] cpuidle: Drop disabled field from struct cpuidle_state (David Arcari) [1825353] - [cpuidle] cpuidle: Pass exit latency limit to cpuidle_use_deepest_state() (David Arcari) [1825353] - [include] cpuidle: Allow idle injection to apply exit latency limit (David Arcari) [1825353] - [thermal] cpuidle: play_idle: Increase the resolution to usec (David Arcari) [1825353] - [cpuidle] cpuidle: Use nanoseconds as the unit of time (David Arcari) [1825353] - [cpuidle] cpuidle: menu: Allow tick to be stopped if PM QoS is used (David Arcari) [1825353] - [cpuidle] cpuidle: Consolidate disabled state checks (David Arcari) [1825353] - [cpuidle] cpuidle: Do not unset the driver if it is there already (David Arcari) [1825353] - [cpuidle] cpuidle: haltpoll: Take 'idle=' override into account (David Arcari) [1825353] - [cpuidle] cpuidle-haltpoll: Enable kvm guest polling when dedicated physical CPUs are available (David Arcari) [1825353] - [fs] gfs2: fix gfs2_find_jhead that returns uninitialized jhead with seq 0 (Abhijith Das) [1655566] - [fs] gfs2: Another gfs2_find_jhead fix (Abhijith Das) [1655566] - [fs] gfs2: read journal in large chunks (Abhijith Das) [1655566] - [fs] gfs2: add a helper function to get_log_header that can be used elsewhere (Abhijith Das) [1655566] - [fs] gfs2: changes to gfs2_log_XXX_bio (Abhijith Das) [1655566] - [fs] gfs2: add more timing info to journal recovery process (Abhijith Das) [1655566] - [mm] mm: hugetlb controller for cgroup v2 (Joel Savitz) [1810728] - [arm64] crypto: arm64/aes-ce - implement 5 way interleave for ECB, CBC and CTR (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce - add 5 way interleave routines (Mark Salter) [1826982] - [arm64] crypto: arm64/sha2-ce - correct digest for empty data in finup (Mark Salter) [1826982] - [arm64] crypto: arm64/sha1-ce - correct digest for empty data in finup (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-neonbs - don't access already-freed walk.iv (Mark Salter) [1826982] - [arm64] crypto: arm64/cbcmac - handle empty messages in same way as template (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - update IV after partial final CTR block (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-neonbs - fix returning final keystream block (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif-ce - cleanup and optimizations (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - register PMULL variants as separate algos (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - remove dead code (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - revert to C code for short inputs (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash-neon - bump priority to 150 (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash - register PMULL variants as separate algos (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ccm - don't use an atomic walk needlessly (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ccm - fix bugs in non-NEON fallback routine (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - ensure XTS mask is always loaded (Mark Salter) [1826982] - [arm64] crypto: arm64/aes - fix handling sub-block CTS-CBC inputs (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - improve XTS mask handling (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - add support for CTS-CBC mode (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - revert NEON yield for skciphers (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - remove pointless (u8 *) casts (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - implement non-Crypto Extensions alternative (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - preparatory refactor for 8x8 PMULL version (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-modes - get rid of literal load of addend vector (Mark Salter) [1826982] - [arm64] crypto: arm64/sm4-ce - check for the right CPU feature bit (Mark Salter) [1826982] - [arm64] crypto: arm64/gcm-aes-ce - fix no-NEON fallback code (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-gcm-ce - fix scatterwalk API violation (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash-ce - implement 4-way aggregation (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash-ce - replace NEON yield check with block limit (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce-gcm - don't reload key schedule if avoidable (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce-gcm - implement 2-way aggregation (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce-gcm - operate on two input blocks at a time (Mark Salter) [1826982] - [mm] mm, slub: prevent kmalloc_node crashes and memory leaks (Rafael Aquini) [1819839] - [mm] mm: slub: be more careful about the double cmpxchg of freelist (Rafael Aquini) [1819839] - [mm] mm: slub: add missing TID bump in kmem_cache_alloc_bulk() (Rafael Aquini) [1819839] - [mm] mm/slub.c: avoid slub allocation while holding list_lock (Rafael Aquini) [1819839] - [mm] mm/slub.c: clean up validate_slab() (Rafael Aquini) [1819839] - [mm] mm: slub: print the offset of fault addresses (Rafael Aquini) [1819839] - [mm] hugetlbfs: don't retry when pool page allocations start to fail (Rafael Aquini) [1727288] - [mm] mm, compaction: raise compaction priority after it withdrawns (Rafael Aquini) [1727288] - [mm] mm, reclaim: cleanup should_continue_reclaim() (Rafael Aquini) [1727288] - [mm] mm, reclaim: make should_continue_reclaim perform dryrun detection (Rafael Aquini) [1727288]- [tools] bpf: selftests: remove test_bpftool_build.sh from TEST_PROGS (Yauheni Kaliuta) [1813365] - [tools] libbpf: Support .text sub-calls relocations (Yauheni Kaliuta) [1813365] - [tools] libbpf: Sanitize global functions (Yauheni Kaliuta) [1813365] - [kernel] workqueue: Add RCU annotation for pwq list walk (Yauheni Kaliuta) [1813365] - [kernel] perf/core: Add SRCU annotation for pmus list walk (Yauheni Kaliuta) [1813365] - [net] kcm: disable preemption in kcm_parse_func_strparser() (Yauheni Kaliuta) [1813365] - [net] kcm: use BPF_PROG_RUN (Yauheni Kaliuta) [1813365] - [kernel] bpf: clarify description for CONFIG_BPF_EVENTS (Yauheni Kaliuta) [1813365] - [lib] test_bpf: Fix a new clang warning about xor-ing two numbers (Yauheni Kaliuta) [1813365] - [include] bpf: add include guard to tnum.h (Yauheni Kaliuta) [1813365] - [tools] libbpf: handle symbol versioning properly for libbpf.a (Yauheni Kaliuta) [1813365] - [net] bpf, devmap: Pass lockdep expression to RCU lists (Yauheni Kaliuta) [1813365] - [tools] libbpf: Fix Makefile' libbpf symbol mismatch diagnostic (Yauheni Kaliuta) [1813365] - [net] xdp: Fix cleanup on map free for devmap_hash map type (Yauheni Kaliuta) [1813365] - [tools] tools, bpf: Fix build for 'make -s tools/bpf O=' (Yauheni Kaliuta) [1813365] - [tools] libbpf: Fix passing uninitialized bytes to setsockopt (Yauheni Kaliuta) [1813365] - [tools] selftests: bpf: Skip write only files in debugfs (Yauheni Kaliuta) [1813365] - [net] xdp: Handle device unregister for devmap_hash map type (Yauheni Kaliuta) [1813365] - [net] ipv4: Add lockdep condition to fix for_each_entry() (Yauheni Kaliuta) [1813365] - [kernel] rcu/sync: Remove custom check for RCU readers (Yauheni Kaliuta) [1813365] - [kernel] rcu: Add support for consolidated-RCU reader checking (Yauheni Kaliuta) [1813365] - [kernel] rcu: Remove redundant debug_locks check in rcu_read_lock_sched_held() (Yauheni Kaliuta) [1813365] - [net] xdp: Prevent overflow in devmap_hash cost calculation for 32-bit builds (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: Add a workaround for asm_inline (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: Fix build for task_fd_query_user.c (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: Don't leak server_fd in test_sockopt_inherit (Yauheni Kaliuta) [1813365] - [tools] tools: bpf: Use !building_out_of_srctree to determine srctree (Yauheni Kaliuta) [1813365] - [net] bpf: Clean up indentation issue in BTF kflag processing (Yauheni Kaliuta) [1813365] - [tools] libbpf: Teach btf_dumper to emit stand-alone anonymous enum definitions (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: adjust strobemeta loop to satisfy latest clang (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: delete unused variables in test_sysctl (Yauheni Kaliuta) [1813365] - [tools] libbpf: fix false uninitialized variable warning (Yauheni Kaliuta) [1813365] - [tools] libbpf: Remove getsockopt() check for XDP_OPTIONS (Yauheni Kaliuta) [1813365] - [net] xdp: Fix race in dev_map_hash_update_elem() when replacing element (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_tcp_rtt (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt_inherit (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt_multi (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt_sk (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: add test__join_cgroup helper (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: precision tracking tests (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: fix endianness issues in test_sysctl (Yauheni Kaliuta) [1813365] - [arm64] arm64: bpf: optimize modulo operation (Yauheni Kaliuta) [1813365] - [s390] bpf: s390: add JIT support for bpf line info (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: add missing \n to CHECK_FAIL (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: fix verbose mode garbage (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: Fix a typo in test_offload.py (Yauheni Kaliuta) [1813365] - [net] bpf: fix error check in bpf_tcp_gen_syncookie (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: do not link twice against libbpf.a in Makefile (Yauheni Kaliuta) [1813365] - [tools] tools: bpf: account for generated feature/ and libbpf/ directories (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: improve and check builds for different make invocations (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: ignore make built-in rules for getting kernel version (Yauheni Kaliuta) [1813365] - [s390] bpf: s390: add JIT support for multi-function programs (Yauheni Kaliuta) [1746980 1813365] - [tools] selftests/bpf: remove wrong nhoff in flow dissector test (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: remove unused ret (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: remove asserts from subtests (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: remove global fail/success counts (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: test__skip (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add precision tracking test (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: verifier precise tests (Yauheni Kaliuta) [1813365] - [tools] tools/bpf: sync bpf.h (Yauheni Kaliuta) [1813365] - [net] bpf: introduce verifier internal test flag (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add "bpftool map freeze" subcommand (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: show frozen status for maps (Yauheni Kaliuta) [1813365] - [uapi] bpf: clarify when bpf_trace_printk discards lines (Yauheni Kaliuta) [1813365] - [samples] samples: bpf: syscall_nrs: use mmap2 if defined (Yauheni Kaliuta) [1813365] - [tools] libbpf: use LFS (_FILE_OFFSET_BITS) instead of direct mmap2 syscall (Yauheni Kaliuta) [1813365] - [net] bpf: add new BPF_BTF_GET_NEXT_ID syscall command (Yauheni Kaliuta) [1813365] - [net] bpf: add BTF ids in procfs for file descriptors to BTF objects (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add sockopt clone/inheritance test (Yauheni Kaliuta) [1813365] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1813365] - [net] bpf: support cloning sk storage on accept() (Yauheni Kaliuta) [1813365] - [net] bpf: export bpf_map_inc_not_zero (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add documentation for net attach/detach (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add bash-completion for net attach/detach (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add net detach command to detach XDP on interface (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add net attach command to attach XDP on interface (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: compile with $(EXTRA_WARNINGS) (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add feature check for zlib (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: fix reading from /proc/config.gz (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: xdp_fwd explain bpf_fib_lookup return codes (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: make xdp_fwd more practically usable via devmap lookup (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: xdp_fwd rename devmap name to be xdp_tx_ports (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: drop extra trailing tab (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: test__printf -> printf (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: switch to open_memstream (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add loop test 5 (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add loop test 4 (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: extend sockopt_sk selftest with TCP_CONGESTION use case (Yauheni Kaliuta) [1813365] - [net] bpf: always allocate at least 16 bytes for setsockopt hook (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add support for reporting the effective cgroup progs (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add test for bpf_tcp_gen_syncookie (Yauheni Kaliuta) [1813365] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1813365] - [net] bpf: add bpf_tcp_gen_syncookie helper (Yauheni Kaliuta) [1813365] - [net] tcp: add skb-less helpers to retrieve SYN cookie (Yauheni Kaliuta) [1813365] - [net] tcp: tcp_syn_flood_action read port from socket (Yauheni Kaliuta) [1813365] - [net] tcp: rate limit synflood warnings further (Yauheni Kaliuta) [1813365] - [tools] tools: Add definitions for devmap_hash map type (Yauheni Kaliuta) [1813365] - [tools] tools/libbpf_probes: Add new devmap_hash type (Yauheni Kaliuta) [1813365] - [tools] tools/include/uapi: Add devmap_hash BPF map type (Yauheni Kaliuta) [1813365] - [net] xdp: Add devmap_hash map type for looking up devices by hashed index (Yauheni Kaliuta) [1813365] - [net] xdp: Refactor devmap allocation code for reuse (Yauheni Kaliuta) [1813365] - [include] include/bpf.h: Remove map_insert_ctx() stubs (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: convert send_signal.c to use subtests (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: convert bpf_verif_scale.c to sub-tests API (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: support BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP (Yauheni Kaliuta) [1813365] - [tools] bpf/flow_dissector: support ipv6 flow_label and BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: support BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG (Yauheni Kaliuta) [1813365] - [tools] tools/bpf: sync bpf_flow_keys flags (Yauheni Kaliuta) [1813365] - [net] bpf/flow_dissector: support flags in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813365] - [documentation] bpf/flow_dissector: document flags (Yauheni Kaliuta) [1813365] - [net] bpf/flow_dissector: pass input flags to BPF flow dissector program (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: Add selftests for bpf_perf_event_output (Yauheni Kaliuta) [1813365] - [net] bpf: Allow bpf_skb_event_output for a few prog types (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: remove perf buffer helpers (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: switch trace_output sample to perf_buffer API (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: convert xdp_sample_pkts_user to perf_buffer API (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: switch test_tcpnotify to perf_buffer API (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: convert test_get_stack_raw_tp to perf_buffer API (Yauheni Kaliuta) [1813365] - [block] block, bfq: fix use-after-free in bfq_idle_slice_timer_body (Ming Lei) [1823596] - [block] block, bfq: fix overwrite of bfq_group pointer in bfq_find_set_group() (Ming Lei) [1823596] - [block] block, bfq: clarify the goal of bfq_split_bfqq() (Ming Lei) [1823596] - [block] block, bfq: get a ref to a group when adding it to a service tree (Ming Lei) [1823596] - [block] block, bfq: remove ifdefs from around gets/puts of bfq groups (Ming Lei) [1823596] - [block] block, bfq: extend incomplete name of field on_st (Ming Lei) [1823596] - [block] block, bfq: get extra ref to prevent a queue from being freed during a group move (Ming Lei) [1823596] - [block] block, bfq: do not insert oom queue into position tree (Ming Lei) [1823596] - [block] block, bfq: do not plug I/O for bfq_queues with no proc refs (Ming Lei) [1823596] - [block] block, bfq: improve arithmetic division in bfq_delta() (Ming Lei) [1823596] - [block] block/bfq: remove unused bfq_class_rt which never used (Ming Lei) [1823596] - [block] block: Prevent hung_check firing during long sync IO (Ming Lei) [1813383] - [block] brd: check and limit max_part par (Ming Lei) [1790403]- [char] random: silence a lockdep splat with printk() (Brian Masney) [1798900] - [net] SUNRPC: fix krb5p mount to provide large enough buffer in rq_rcvsize (Steve Dickson) [1825388] - [include] percpu-refcount: Use normal instead of RCU-sched" (Waiman Long) [1803822] - [kernel] locking/spinlock/debug: Fix various data races (Waiman Long) [1803822] - [kernel] locktorture: Forgive apparent unfairness if CPU hotplug (Waiman Long) [1803822] - [kernel] locktorture: Use private random-number generators (Waiman Long) [1803822] - [tools] locktorture: Allow CPU-hotplug to be disabled via --bootargs (Waiman Long) [1803822] - [kernel] locking: locktorture: Do not include rwlock.h directly (Waiman Long) [1803822] - [kernel] locktorture: Replace strncmp() with str_has_prefix() (Waiman Long) [1803822] - [kernel] locking/rtmutex: rcu: Add WRITE_ONCE() to rt_mutex ->owner (Waiman Long) [1803822] - [arm64] arm64/spinlock: fix a -Wunused-function warning (Waiman Long) [1803822] - [arm64] locking/osq: Use optimized spinning loop for arm64 (Waiman Long) [1803822] - [kernel] locking/qspinlock: Fix inaccessible URL of MCS lock paper (Waiman Long) [1803822] - [include] string.h: Add str_has_prefix() helper function (Waiman Long) [1803822] - [kernel] futex: Remove {get,drop}_futex_key_refs() (Waiman Long) [1803822] - [kernel] futex: Remove pointless mmgrap() + mmdrop() (Waiman Long) [1803822] - [kernel] futex: Unbreak futex hashing (Waiman Long) [1803822] - [fs] futex: Fix inode life-time issue (Waiman Long) [1803822] - [kernel] futex: Fix kernel-doc notation warning (Waiman Long) [1803822] - [kernel] futex: Prevent exit livelock (Waiman Long) [1803822] - [kernel] futex: Provide distinct return value when owner is exiting (Waiman Long) [1803822] - [include] futex: Add mutex around futex exit (Waiman Long) [1803822] - [kernel] futex: Provide state handling for exec() as well (Waiman Long) [1803822] - [kernel] futex: Sanitize exit state handling (Waiman Long) [1803822] - [kernel] futex: Mark the begin of futex exit explicitly (Waiman Long) [1803822] - [kernel] futex: Set task::futex_state to DEAD right after handling futex exit (Waiman Long) [1803822] - [kernel] futex: Split futex_mm_release() for exit/exec (Waiman Long) [1803822] - [kernel] exit/exec: Seperate mm_release() (Waiman Long) [1803822] - [kernel] futex: Replace PF_EXITPIDONE with a state (Waiman Long) [1803822] - [kernel] futex: Move futex exit handling into futex code (Waiman Long) [1803822] - [kernel] futex: Prevent robust futex exit race (Waiman Long) [1803822] - [kernel] futex: Drop leftover wake_q_add() comment (Waiman Long) [1803822] - [kernel] fork: Provide a function for copying init_mm (Waiman Long) [1803822] - [kernel] y2038: futex: Move compat implementation into futex.c (Waiman Long) [1803822] - [fs] nfsd: Fix races between nfsd4_cb_release() and nfsd4_shutdown_callback() ("J. Bruce Fields") [1797484] - [fs] nfsd: minor 4.1 callback cleanup ("J. Bruce Fields") [1797484] - [video] vgacon: Fix a UAF in vgacon_invert_region (Vladis Dronov) [1818732] {CVE-2020-8647 CVE-2020-8649} - [powerpc] powerpc/xive: Use XIVE_BAD_IRQ instead of zero to catch non configured IPIs (David Gibson) [1773891] - [clocksource] hyper-v: Make sched clock return nanoseconds correctly (Mohammed Gamal) [1816731] - [clocksource] hyper-v: Set TSC clocksource as default w/ InvariantTSC (Mohammed Gamal) [1816731] - [clocksource] hyper-v: Untangle stimers and timesync from clocksources (Mohammed Gamal) [1816731] - [clocksource] hyper-v: Reserve PAGE_SIZE space for tsc page (Mohammed Gamal) [1816731] - [clocksource] x86/hyperv: Initialize clockevents earlier in CPU onlining (Mohammed Gamal) [1816731] - [x86] hyperv: Allow guests to enable InvariantTSC (Mohammed Gamal) [1816731] - [hv] hv: vmbus: Suspend/resume the synic for hibernation (Mohammed Gamal) [1816731] - [hv] hv: vmbus: Break out synic enable and disable operations (Mohammed Gamal) [1816731] - [x86] hyperv: Set pv_info.name to "Hyper-V" (Mohammed Gamal) [1816731] - [x86] hyperv: Hide pv_ops access for CONFIG_PARAVIRT=n (Mohammed Gamal) [1816731] - [clocksource] hyperv: Enable TSC page clocksource on 32bit (Mohammed Gamal) [1816731] - [clocksource] hyperv: Add Hyper-V specific sched clock function (Mohammed Gamal) [1816731] - [clocksource] hyperv: Allocate Hyper-V TSC page statically (Mohammed Gamal) [1816731] - [clocksource] Continue making Hyper-V clocksource ISA agnostic (Mohammed Gamal) [1816731] - [clocksource] Make Hyper-V clocksource ISA agnostic (Mohammed Gamal) [1816731] - [tools] hv: Reopen the devices if read() or write() returns errors (Mohammed Gamal) [1824182] - [tools] hv: add vmbus testing tool (Mohammed Gamal) [1824182] - [tools] hv: move to tools buildsystem (Mohammed Gamal) [1824182] - [tools] hv: kvp: eliminate 'may be used uninitialized' warning (Mohammed Gamal) [1824182] - [tools] hv: fix typos in toolchain (Mohammed Gamal) [1824182] - [tools] hv: fix KVP and VSS daemons exit code (Mohammed Gamal) [1824182] - [tools] hv: fixed Python pep8/flake8 warnings for lsvmbus (Mohammed Gamal) [1824182] - [tools] hv: kvp: Fix a warning of buffer overflow with gcc 8.0.1 (Mohammed Gamal) [1824182] - [tools] hv: fcopy: set 'error' in case an unknown operation was requested (Mohammed Gamal) [1824182] - [tools] hv: Fix a bug in the key delete code (Mohammed Gamal) [1824182] - [tools] hv: vss: fix loop device detection (Mohammed Gamal) [1824182] - [hv] hv: vmbus: Introduce latency testing (Mohammed Gamal) [1824182] - [tools] hv: update lsvmbus to be compatible with python3 (Mohammed Gamal) [1824182]- [hwtracing] coresight: etm4x: Add kernel configuration for CONTEXTID (Michael Petlan) [1818835] - [samples] samples/bpf: fix build by setting HAVE_ATTR_TEST to zero (Michael Petlan) [1818835] - [tools] perf metricgroup: Fix printing event names of metric group with multiple events (Michael Petlan) [1818835] - [tools] perf script: Fix invalid LBR/binary mismatch error (Michael Petlan) [1818835] - [tools] perf c2c: Fix return type for histogram sorting comparision functions (Michael Petlan) [1818835] - [tools] perf session: Fix decompression of PERF_RECORD_COMPRESSED records (Michael Petlan) [1818835] - [tools] perf tools: Fix time sorting (Michael Petlan) [1818835] - [tools] perf tools: Remove unused trace_find_next_event() (Michael Petlan) [1818835] - [tools] perf scripting engines: Iterate on tep event arrays directly (Michael Petlan) [1818835] - [tools] perf tools: Make usage of test_attr__* optional for perf-sys.h (Michael Petlan) [1818835] - [tools] perf kmem: Fix memory leak in compact_gfp_flags() (Michael Petlan) [1818835] - [tools] perf c2c: Fix memory leak in build_cl_output() (Michael Petlan) [1818835] - [tools] perf tools: Fix mode setting in copyfile_mode_ns() (Michael Petlan) [1818835] - [tools] perf annotate: Fix multiple memory and file descriptor leaks (Michael Petlan) [1818835] - [tools] perf tools: Fix resource leak of closedir() on the error paths (Michael Petlan) [1818835] - [tools] perf evlist: Fix fix for freed id arrays (Michael Petlan) [1818835] - [tools] perf annotate: Don't return -1 for error when doing BPF disassembly (Michael Petlan) [1818835] - [tools] perf annotate: Return appropriate error code for allocation failures (Michael Petlan) [1818835] - [tools] perf annotate: Fix arch specific ->init() failure errors (Michael Petlan) [1818835] - [tools] perf annotate: Propagate the symbol__annotate() error return (Michael Petlan) [1818835] - [tools] perf annotate: Fix the signedness of failure returns (Michael Petlan) [1818835] - [tools] perf annotate: Propagate perf_env__arch() error (Michael Petlan) [1818835] - [tools] perf evsel: Fall back to global 'perf_env' in perf_evsel__env() (Michael Petlan) [1818835] - [tools] perf tools: Propagate get_cpuid() error (Michael Petlan) [1818835] - [tools] perf jevents: Fix period for Intel fixed counters (Michael Petlan) [1818835] - [tools] perf script brstackinsn: Fix recovery from LBR/binary mismatch (Michael Petlan) [1818835] - [tools] perf docs: Correct and clarify jitdump spec (Michael Petlan) [1818835] - [tools] perf inject jit: Fix JIT_CODE_MOVE filename (Michael Petlan) [1818835] - [tools] perf map: Fix overlapped map handling (Michael Petlan) [1818835] - [tools] perf vendor events s390: Use s390 machine name instead of type 8561 (Michael Petlan) [1818835] - [tools] perf llvm: Don't access out-of-scope array (Michael Petlan) [1818835] - [tools] perf docs: Allow man page date to be specified (Michael Petlan) [1818835] - [tools] perf tests: Avoid raising SEGV using an obvious NULL dereference (Michael Petlan) [1818835] - [tools] libsubcmd: Make _FORTIFY_SOURCE defines dependent on the feature (Michael Petlan) [1818835] - [tools] perf unwind: Fix libunwind build failure on i386 systems (Michael Petlan) [1818835] - [tools] perf parser: Remove needless include directives (Michael Petlan) [1818835] - [tools] perf build: Add detection of java-11-openjdk-devel package (Michael Petlan) [1818835] - [tools] perf jvmti: Include JVMTI support for s390 (Michael Petlan) [1818835] - [tools] perf evlist: Fix access of freed id arrays (Michael Petlan) [1818835] - [tools] perf stat: Fix free memory access / memory leaks in metrics (Michael Petlan) [1818835] - [tools] perf tools: Replace needless mmap.h with what is needed, event.h (Michael Petlan) [1818835] - [tools] perf evsel: Move config terms to a separate header (Michael Petlan) [1818835] - [tools] perf evlist: Remove unused perf_evlist__fprintf() method (Michael Petlan) [1818835] - [tools] perf evsel: Introduce evsel_fprintf.h (Michael Petlan) [1818835] - [tools] perf evsel: Remove need for symbol_conf in evsel_fprintf.c (Michael Petlan) [1818835] - [tools] perf copyfile: Move copyfile routines to separate files (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__poll() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__add_pollfd() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__alloc_pollfd() function (Michael Petlan) [1818835] - [tools] libperf: Add libperf_init() call to the tests (Michael Petlan) [1818835] - [tools] libperf: Merge libperf_set_print() into libperf_init() (Michael Petlan) [1818835] - [tools] libperf: Add libperf dependency for tests targets (Michael Petlan) [1818835] - [tools] libperf: Use sys/types.h to get ssize_t, not unistd.h (Michael Petlan) [1818835] - [tools] perf tools: No need to include internal/lib.h from util/util.h (Michael Petlan) [1818835] - [tools] libperf: Move 'page_size' global variable to libperf (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__id_add_fd() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__id_add() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__read_format() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__first()/last() functions (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__alloc_id/perf_evsel__free_id functions (Michael Petlan) [1818835] - [tools] libperf: Move 'heads' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'ids' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Move 'id' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Move 'sample_id' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Add missing 'struct xyarray' forward declaration (Michael Petlan) [1818835] - [tools] libperf: Move 'pollfd' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'mmap_len' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'nr_mmaps' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'system_wide' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Add 'flush' to 'struct perf_mmap' (Michael Petlan) [1818835] - [tools] libperf: Add 'event_copy' to 'struct perf_mmap' (Michael Petlan) [1818835] - [tools] libperf: Add 'overwrite' to 'struct perf_mmap' (Michael Petlan) [1818835] - [tools] libperf: Add prev/start/end to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'refcnt' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'cpu' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'fd' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'mask' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add perf_mmap struct (Michael Petlan) [1818835] - [tools] perf evlist: Adopt backwards ring buffer state enum (Michael Petlan) [1818835] - [tools] libperf: Link libapi.a in libperf.so (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__purge() to evlist__purge() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__exit() to evlist__exit() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__alloc_mmap() to evlist__alloc_mmap() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__munmap() to evlist__munmap() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__mmap() to evlist__mmap() (Michael Petlan) [1818835] - [tools] perf tools: Rename 'struct perf_mmap' to 'struct mmap' (Michael Petlan) [1818835] - [tools] tools: Add missing stdio.h include to asm/bug.h header (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages for tep plugins APIs (Michael Petlan) [1818835] - [tools] libtraceevent: Move traceevent plugins in its own subdirectory (Michael Petlan) [1818835] - [tools] libtraceevent: Add tep_get_event() in event-parse.h (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages fix, changes in event printing APIs (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages fix, rename tep_ref_get() to tep_get_ref() (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages for libtraceevent event print related API (Michael Petlan) [1818835] - [tools] libtraceevent: Round up in tep_print_event() time precision (Michael Petlan) [1818835] - [tools] perf record: Move restricted maps check to after a possible fallback to not collect kernel samples (Michael Petlan) [1818835] - [tools] perf record: Fix priv level with branch sampling for paranoid=2 (Michael Petlan) [1818835] - [tools] perf probe: Fix to clear tev->nargs in clear_probe_trace_event() (Michael Petlan) [1818835] - [tools] perf probe: Skip same probe address for a given line (Michael Petlan) [1818835] - [tools] perf tests: Fix static build test (Michael Petlan) [1818835] - [tools] perf kvm stat: Set 'trace_cycles' as default event for 'perf kvm record' in powerpc (Michael Petlan) [1818835] - [tools] perf kvm: Add arch neutral function to choose event for perf kvm record (Michael Petlan) [1818835] - [tools] perf kvm: Move kvm-stat header file from conditional inclusion to common include section (Michael Petlan) [1818835] - [tools] perf test: Fix spelling mistake "allos" -> "allocate" (Michael Petlan) [1818835] - [tools] perf stat: Fix a segmentation fault when using repeat forever (Michael Petlan) [1818835] - [tools] perf stat: Reset previous counts on repeat with interval (Michael Petlan) [1818835] - [tools] tools lib traceevent: Convert remaining pusers to p (Michael Petlan) [1818835] - [tools] perf tools: Move event synthesizing routines to separate .c file (Michael Petlan) [1818835] - [tools] perf memswap: Adopt 'struct u64_swap' from evsel.h (Michael Petlan) [1818835] - [tools] perf tools: Move event synthesizing routines to separate header (Michael Petlan) [1818835] - [tools] perf auxtrace: Add missing 'struct perf_sample' forward declaration (Michael Petlan) [1818835] - [tools] perf sched: Add missing event.h include directive (Michael Petlan) [1818835] - [tools] perf annotate: Add missing machine.h include directive (Michael Petlan) [1818835] - [tools] perf hist: Add missing 'struct branch_stack' forward declaration (Michael Petlan) [1818835] - [tools] perf python: Remove debug.h (Michael Petlan) [1818835] - [tools] perf callchain: Remove needless event.h include (Michael Petlan) [1818835] - [tools] perf stat: Move perf_stat_synthesize_config() to event.h (Michael Petlan) [1818835] - [tools] perf event: Move perf_event__synthesize* to event.h (Michael Petlan) [1818835] - [tools] perf env: Remove needless cpumap.h header (Michael Petlan) [1818835] - [tools] perf symbols: Add missing dso.h header (Michael Petlan) [1818835] - [tools] perf probe: Add missing build-id.h header (Michael Petlan) [1818835] - [tools] perf tools: Remove util.h from where it is not needed (Michael Petlan) [1818835] - [tools] perf tools: Remove debug.h from places where it is not needed (Michael Petlan) [1818835] - [tools] perf debug: No need to include ui/util.h (Michael Petlan) [1818835] - [tools] perf tools: Remove needless builtin.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Add PMU event JSON files for ARM Cortex-A76 and, Neoverse N1 (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_cpu_map__max() function (Michael Petlan) [1818835] - [tools] libperf: Add missing event.h file to install rule (Michael Petlan) [1818835] - [tools] perf tests: Add libperf automated test for 'make -C tools/perf build-test' (Michael Petlan) [1818835] - [tools] perf python: Add missing python/perf.so dependency for libperf (Michael Petlan) [1818835] - [tools] perf build: Ignore intentional differences for the x86 insn decoder (Michael Petlan) [1818835] - [tools] perf intel-pt: Use shared x86 insn decoder (Michael Petlan) [1818835] - [tools] objtool: Move x86 insn decoder to a common location (Michael Petlan) [1818835] - [tools] perf intel-pt: Remove inat.c from build dependency list (Michael Petlan) [1818835] - [tools] perf: Update .gitignore file (Michael Petlan) [1818835] - [tools] perf metricgroup: Support multiple events for metricgroup (Michael Petlan) [1818835] - [tools] perf metricgroup: Scale the metric result (Michael Petlan) [1818835] - [tools] perf pmu: Change convert_scale from static to global (Michael Petlan) [1818835] - [tools] perf symbols: Move mem_info and branch_info out of symbol.h (Michael Petlan) [1818835] - [tools] perf auxtrace: Uninline functions that touch perf_session (Michael Petlan) [1818835] - [tools] perf tools: Remove needless evlist.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless evlist.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless thread_map.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless thread.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless map.h include directives (Michael Petlan) [1818835] - [tools] perf probe: No need for symbol.h, symbol_conf is enough (Michael Petlan) [1818835] - [tools] perf tools: Remove needless sort.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Move 'struct events_stats' and prototypes to separate header (Michael Petlan) [1818835] - [tools] perf hist: Remove needless ui/progress.h from hist.h (Michael Petlan) [1818835] - [tools] perf dsos: Move the dsos struct and its methods to separate source files (Michael Petlan) [1818835] - [tools] perf symbols: Move symsrc prototypes to a separate header (Michael Petlan) [1818835] - [tools] perf symbols: Add missing linux/refcount.h to symbol.h (Michael Petlan) [1818835] - [tools] perf symbol: Move C++ demangle defines to the only file using it (Michael Petlan) [1818835] - [tools] perf dso: Adopt DSO related macros from symbol.h (Michael Petlan) [1818835] - [tools] libtraceevent: Change users plugin directory (Michael Petlan) [1818835] - [tools] libtraceevent: Remove tep_register_trace_clock() (Michael Petlan) [1818835] - [tools] libtraceevent, perf tools: Changes in tep_print_event_* APIs (Michael Petlan) [1818835] - [tools] perf event: Remove needless include directives from event.h (Michael Petlan) [1818835] - [tools] perf env: Remove env.h from other headers where just a fwd decl is needed (Michael Petlan) [1818835] - [tools] perf debug: Remove needless include directives from debug.h (Michael Petlan) [1818835] - [tools] perf tools: Remove debug.h from header files not needing it (Michael Petlan) [1818835] - [tools] perf tools: Remove perf.h from source files not needing it (Michael Petlan) [1818835] - [tools] perf tools: Remove needless perf.h include directive from headers (Michael Petlan) [1818835] - [tools] perf time-utils: Adopt rdclock() from perf.h (Michael Petlan) [1818835] - [tools] perf tools: Move everything related to sys_perf_event_open() to perf-sys.h (Michael Petlan) [1818835] - [tools] perf header: Move CPUINFO_PROC to the only file where it is used (Michael Petlan) [1818835] - [tools] perf tools: Remove needless libtraceevent include directives (Michael Petlan) [1818835] - [tools] libperf: Warn when exceeding MAX_NR_CPUS in cpumap (Michael Petlan) [1818835] - [tools] perf c2c: Display proper cpu count in nodes column (Michael Petlan) [1818835] - [tools] tools lib traceevent: Remove unneeded qsort and uses memmove instead (Michael Petlan) [1818835] - [tools] tools lib traceevent: Do not free tep->cmdlines in add_new_comm() on failure (Michael Petlan) [1818835] - [tools] perf evlist: Use unshare(CLONE_FS) in sb threads to let setns(CLONE_NEWNS) work (Michael Petlan) [1818835] - [tools] libperf: Move 'enum perf_user_event_type' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Rename the PERF_RECORD_ structs to have a "perf" prefix (Michael Petlan) [1818835] - [tools] libperf: Add 'union perf_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_COMPRESSED 'struct compressed_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_FEATURE 'struct feature_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_TIME_CONV 'struct time_conv_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_STAT_ROUND 'struct stat_round_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_STAT 'struct stat_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_STAT_CONFIG 'struct stat_config_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_THREAD_MAP 'struct thread_map_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_SWITCH 'struct context_switch_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_ITRACE_START 'struct itrace_start_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUX 'struct aux_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUXTRACE_ERROR 'struct auxtrace_error_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUXTRACE 'struct auxtrace_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUXTRACE_INFO 'struct auxtrace_info_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_ID_INDEX 'struct id_index_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_BUILD_ID 'struct build_id_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_TRACING_DATA 'struct tracing_data_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_EVENT_TYPE 'struct event_type_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_EVENT_UPDATE 'struct event_update_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_CPU_MAP 'struct cpu_map_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_ATTR 'struct attr_event' to perf/event.h (Michael Petlan) [1818835] - [tools] perf top: Fix event group with more than two events (Michael Petlan) [1818835] - [tools] perf top: Decay all events in the evlist (Michael Petlan) [1818835] - [tools] perf clang: Delete needless util-cxx.h header (Michael Petlan) [1818835] - [tools] perf evlist: Remove needless util.h from evlist.h (Michael Petlan) [1818835] - [tools] perf tools: Remove needless util.h include from builtin.h (Michael Petlan) [1818835] - [tools] perf tools: Warn that perf_event_paranoid can restrict kernel symbols (Michael Petlan) [1818835] - [tools] perf symbols: Use CAP_SYSLOG with kptr_restrict checks (Michael Petlan) [1818835] - [tools] perf evsel: Kernel profiling is disallowed only when perf_event_paranoid > 1 (Michael Petlan) [1818835] - [tools] perf tools: Use CAP_SYS_ADMIN with perf_event_paranoid checks (Michael Petlan) [1818835] - [tools] perf event: Check ref_reloc_sym before using it (Michael Petlan) [1818835] - [tools] perf arch powerpc: Sync powerpc syscall.tbl (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_missing_features::bpf_event to ::bpf (Michael Petlan) [1818835] - [tools] perf tool: Rename perf_tool::bpf_event to bpf (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_event::bpf_event to perf_event::bpf (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_event::ksymbol_event to perf_event::ksymbol (Michael Petlan) [1818835] - [tools] libperf: Rename the PERF_RECORD_ structs to have a "perf" suffix (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_SAMPLE 'struct sample_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_BPF_EVENT 'struct bpf_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_KSYMBOL 'struct ksymbol_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_THROTTLE 'struct throttle_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_READ 'struct read_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_LOST_SAMPLES 'struct lost_samples_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_LOST 'struct lost_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_FORK 'struct fork_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_NAMESPACES 'struct namespaces_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_COMM 'struct comm_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_MMAP2 'struct mmap2_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_MMAP 'struct mmap_event' to perf/event.h (Michael Petlan) [1818835] - [tools] perf script: Fix memory leaks in list_scripts() (Michael Petlan) [1818835] - [tools] perf report: Fix --ns time sort key output (Michael Petlan) [1818835] - [tools] perf report: Use timestamp__scnprintf_nsec() for time sort key (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Reduce perf_event_output() boilerplate (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Introduce helper to get the scratch space (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Postpone tmp map lookup to after pid_filter (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Rename augmented_filename to augmented_arg (Michael Petlan) [1818835] - [tools] perf trace beauty ioctl: Fix off-by-one error in cmd->string table (Michael Petlan) [1818835] - [tools] perf tests: Fixes hang in zstd compression test by changing the source of random data (Michael Petlan) [1818835] - [tools] perf sort: Remove needless headers from sort.h, provide fwd struct decls (Michael Petlan) [1818835] - [tools] perf srcline: Add missing srcline.h header to files needing its defs (Michael Petlan) [1818835] - [tools] perf cacheline: Move cacheline related routines to separate files (Michael Petlan) [1818835] - [tools] perf record: Move record_opts and other record decls out of perf.h (Michael Petlan) [1818835] - [tools] perf stat: Remove needless headers from stat.h (Michael Petlan) [1818835] - [tools] perf cpumap: No need to include perf.h, ditch it (Michael Petlan) [1818835] - [tools] libperf: Fix alignment trap with xyarray contents in 'perf stat' (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map__nr/perf_thread_map__pid functions (Michael Petlan) [1818835] - [tools] perf cpumap: Remove needless includes from cpumap.h (Michael Petlan) [1818835] - [tools] perf evsel: Switch to libperf's cpumap.h (Michael Petlan) [1818835] - [tools] perf x86 kvm-stat: Add missing string.h header (Michael Petlan) [1818835] - [tools] perf evsel: util/evsel.h needs stdio.h as it uses FILE (Michael Petlan) [1818835] - [tools] perf evsel: Remove needless stddef.h from util/evsel.h (Michael Petlan) [1818835] - [tools] perf evsel: Remove needless counts.h header from util/evsel.h (Michael Petlan) [1818835] - [tools] perf evsel: Add missing perf/evsel.h header in util/evsel.h (Michael Petlan) [1818835] - [tools] perf scripting python: Add missing counts.h header (Michael Petlan) [1818835] - [tools] perf stat: Add missing counts.h (Michael Petlan) [1818835] - [tools] perf tests: Add missing counts.h (Michael Petlan) [1818835] - [tools] perf script: Add missing counts.h (Michael Petlan) [1818835] - [tools] perf evlist: Add missing xyarray.h header (Michael Petlan) [1818835] - [tools] perf bpf: Add missing xyarray.h header (Michael Petlan) [1818835] - [tools] perf counts: Add missing headers needed for types used (Michael Petlan) [1818835] - [tools] perf evsel: Move xyarray.h from evsel.c to evsel.h to reduce include dep tree (Michael Petlan) [1818835] - [tools] perf metricgroup: Remove needless includes from metricgroup.h (Michael Petlan) [1818835] - [tools] perf kvm s390: Add missing string.h header (Michael Petlan) [1818835] - [tools] perf arm64: Add missing debug.h header (Michael Petlan) [1818835] - [tools] libperf: Move perf's cpu_map__idx() to perf_cpu_map__idx() (Michael Petlan) [1818835] - [tools] libperf: Move perf's cpu_map__empty() to perf_cpu_map__empty() (Michael Petlan) [1818835] - [tools] perf tools: Use perf_cpu_map__nr instead of cpu_map__nr (Michael Petlan) [1818835] - [tools] tools headers: Add missing perf_event.h include (Michael Petlan) [1818835] - [tools] libperf: Fix arch include paths (Michael Petlan) [1818835] - [tools] tools headers: Fixup bitsperlong per arch includes (Michael Petlan) [1818835] - [tools] perf top: Show info message while collecting samples (Michael Petlan) [1818835] - [tools] perf ui browser: Allow specifying message to show when no samples are available to display (Michael Petlan) [1818835] - [tools] perf ui: Introduce non-interactive ui__info_window() function (Michael Petlan) [1818835] - [tools] perf ui: Make 'exit_msg' optional in ui__question_window() (Michael Petlan) [1818835] - [tools] perf cs-etm: Support sample flags 'insn' and 'insnlen' (Michael Petlan) [1818835] - [tools] perf report: Prefer DWARF callstacks to LBR ones when captured both (Michael Petlan) [1818835] - [tools] perf report: Dump LBR callstack data by -D jointly with thread stack (Michael Petlan) [1818835] - [tools] perf record: Enable LBR callstack capture jointly with thread stack (Michael Petlan) [1818835] - [tools] tools lib traceevent: Fix "robust" test of do_generate_dynamic_list_file (Michael Petlan) [1818835] - [tools] perf evsel: Add comment for 'idx' member in 'struct perf_sample_id (Michael Petlan) [1818835] - [tools] tools headers: Synchronize linux/bits.h with the kernel sources (Michael Petlan) [1818835] - [tools] tools headers: Grab copy of linux/const.h, needed by linux/bits.h (Michael Petlan) [1818835] - [tools] perf tools: tools/include should come before tools/uapi/include (Michael Petlan) [1818835] - [tools] tools headers: Add limits.h to access __WORDSIZE (Michael Petlan) [1818835] - [tools] perf unwind: Remove unnecessary test (Michael Petlan) [1818835] - [tools] perf unwind: Fix libunwind when tid != pid (Michael Petlan) [1818835] - [tools] perf map: Use zalloc for map_groups (Michael Petlan) [1818835] - [tools] perf report: Add --switch-on/--switch-off events (Michael Petlan) [1818835] - [tools] perf top: Add --switch-on/--switch-off events (Michael Petlan) [1818835] - [tools] perf trace: Add --switch-on/--switch-off events (Michael Petlan) [1818835] - [tools] perf evswitch: Add hint when not finding specified on/off events (Michael Petlan) [1818835] - [tools] perf evswitch: Move enoent error message printing to separate function (Michael Petlan) [1818835] - [tools] perf evswitch: Introduce init() method to set the on/off evsels from the command line (Michael Petlan) [1818835] - [tools] perf evswitch: Introduce OPTS_EVSWITCH() for cmd line processing (Michael Petlan) [1818835] - [tools] perf evswitch: Add the names of on/off events (Michael Petlan) [1818835] - [tools] perf evswitch: Move switch logic to use in other tools (Michael Petlan) [1818835] - [tools] perf evswitch: Move struct to a separate header to use in other tools (Michael Petlan) [1818835] - [tools] perf script: Allow specifying event to switch off processing of other events (Michael Petlan) [1818835] - [tools] perf script: Allow showing the --switch-on event (Michael Petlan) [1818835] - [tools] perf script: Allow specifying event to switch on processing of other events (Michael Petlan) [1818835] - [tools] perf vendor events intel: Add Tremontx event file v1.02 (Michael Petlan) [1818835] - [tools] perf ui: No need to set ui_browser to 1 twice (Michael Petlan) [1818835] - [tools] perf record: Support aarch64 random socket_id assignment (Michael Petlan) [1818835] - [tools] perf.data documentation: Clarify HEADER_SAMPLE_TOPOLOGY format (Michael Petlan) [1818835] - [tools] perf evsel: Provide meaningful warning when trying to use 'aux_output' on older kernels (Michael Petlan) [1818835] - [tools] perf intel-pt: Add brief documentation for PEBS via Intel PT (Michael Petlan) [1818835] - [tools] perf tools: Add aux-output config term (Michael Petlan) [1818835] - [tools] perf intel-pt: Process options for PEBS event synthesis (Michael Petlan) [1818835] - [tools] perf tools: Add itrace option 'o' to synthesize aux-output events (Michael Petlan) [1818835] - [tools] perf tools: Add aux_output attribute flag (Michael Petlan) [1818835] - [tools] perf record: Add an option to take an AUX snapshot on exit (Michael Petlan) [1818835] - [tools] perf ftrace: Improve error message about capability to use ftrace (Michael Petlan) [1818835] - [tools] perf ftrace: Use CAP_SYS_ADMIN instead of euid==0 (Michael Petlan) [1818835] - [tools] perf tools: Add CAP_SYSLOG define for older systems (Michael Petlan) [1818835] - [tools] perf tools: Add NO_LIBCAP=1 to the minimal build test (Michael Petlan) [1818835] - [tools] perf tools: Add helpers to use capabilities if present (Michael Petlan) [1818835] - [tools] tools build: Add capability-related feature detection (Michael Petlan) [1818835] - [tools] perf top: Collapse and resort all evsels in a group (Michael Petlan) [1818835] - [tools] perf hist: Remove dummy entries when finding real ones (Michael Petlan) [1818835] - [tools] perf trace: Fix segmentation fault when access syscall info on arm64 (Michael Petlan) [1818835] - [tools] perf hists: Do not link a pair if already linked (Michael Petlan) [1818835] - [tools] perf top: Set display thread COMM to help with debugging (Michael Petlan) [1818835] - [tools] perf vendor events intel: Add Icelake V1.00 event file (Michael Petlan) [1818835] - [tools] perf tools: Fix paths in include statements (Michael Petlan) [1818835] - [tools] perf test vfs_getname: Disable ~/.perfconfig to get default output (Michael Petlan) [1818835] - [tools] perf config: Document the PERF_CONFIG environment variable (Michael Petlan) [1818835] - [tools] perf config: Honour $PERF_CONFIG env var to specify alternate .perfconfig (Michael Petlan) [1818835] - [tools] perf session: Avoid infinite loop when seeing invalid header.size (Michael Petlan) [1818835] - [tools] libperf: Initial documentation (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__enable/disable test (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__enable/disable test (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel tests (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist test (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map test (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map test (Michael Petlan) [1818835] - [tools] libperf: Add tests support (Michael Petlan) [1818835] - [tools] libperf: Add install targets (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__attr() function (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evlist__enable()/disable() functions from perf (Michael Petlan) [1818835] - [tools] libperf: Adopt simplified perf_evlist__open()/close() functions from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__cpus()/threads() functions (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__for_each_cpu() macro (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evsel__enable()/disable()/apply_filter() functions (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evsel__read() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt simplified perf_evsel__close() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt simplified perf_evsel__open() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evsel__alloc_fd() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt the readn()/writen() functions from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Move nr_members from perf's evsel to libperf's perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Move fd array from perf's evsel to lobperf's perf_evsel class (Michael Petlan) [1818835] - [tools] libperf: Adopt xyarray class from perf (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__set_maps() function (Michael Petlan) [1818835] - [tools] libperf: Add threads to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add cpus to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add has_user_cpus to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add threads to struct perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add own_cpus to struct perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add cpus to struct perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__delete() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__delete() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__for_each_evsel() iterator (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__new() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__new() function (Michael Petlan) [1818835] - [tools] libperf: Move zalloc.o into libperf (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__new()/perf_cpu_map__read() functions (Michael Petlan) [1818835] - [tools] libperf: Move perf_event_attr field from perf's evsel to libperf's perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add nr_entries to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__remove() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__add() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__init() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__init function (Michael Petlan) [1818835] - [tools] libperf: Include perf_evlist in evlist object (Michael Petlan) [1818835] - [tools] libperf: Include perf_evsel in evsel object (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist and perf_evsel structs (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map__get()/perf_thread_map__put() (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map__new_dummy() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map struct (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__get()/perf_cpu_map__put() (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__dummy_new() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map struct (Michael Petlan) [1818835] - [tools] libperf: Add debug output support (Michael Petlan) [1818835] - [tools] libperf: Add perf/core.h header (Michael Petlan) [1818835] - [tools] libperf: Add libperf to the python.so build (Michael Petlan) [1818835] - [tools] libperf: Add build version support (Michael Petlan) [1818835] - [tools] libperf: Make libperf.a part of the perf build (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__disable() to evlist__disable() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__enable() to evlist__enable() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__close() to evlist__close() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__open() to evlist__open() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__cpus() to evsel__cpus() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__apply_filter() to evsel__apply_filter() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__disable() to evsel__disable() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__enable() to evsel__enable() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__open() to evsel__open() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__remove() to evlist__remove() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__add() to evlist__add() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__new() to evsel__new() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__delete() to evsel__delete() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__delete() to evlist__delete() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__new() to evlist__new() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__init() to evlist__init() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__init() to evsel__init() (Michael Petlan) [1818835] - [tools] perf evlist: Rename struct perf_evlist to struct evlist (Michael Petlan) [1818835] - [tools] perf evsel: Rename struct perf_evsel to struct evsel (Michael Petlan) [1818835] - [tools] perf tools: Rename struct thread_map to struct perf_thread_map (Michael Petlan) [1818835] - [tools] perf cpu_map: Rename struct cpu_map to struct perf_cpu_map (Michael Petlan) [1818835] - [tools] perf stat: Move loaded out of struct perf_counts_values (Michael Petlan) [1818835] - [tools] perf trace: Add "sendfile64" alias to the "sendfile" syscall (Michael Petlan) [1818835] - [tools] perf trace: Reuse BPF augmenters from syscalls with similar args signature (Michael Petlan) [1818835] - [tools] perf trace: Preallocate the syscall table (Michael Petlan) [1818835] - [tools] perf trace: Mark syscall ids that are not allocated to avoid unnecessary error messages (Michael Petlan) [1818835] - [tools] perf trace: Forward error codes when trying to read syscall info (Michael Petlan) [1818835] - [tools] perf trace beauty: Add BPF augmenter for the 'rename' syscall (Michael Petlan) [1818835] - [tools] perf trace beauty: Beautify bind's sockaddr arg (Michael Petlan) [1818835] - [tools] perf trace beauty: Beautify 'sendto's sockaddr arg (Michael Petlan) [1818835] - [tools] perf trace beauty: Do not try to use the fd->pathname beautifier for bind/connect fd arg (Michael Petlan) [1818835] - [tools] perf trace beauty: Disable fd->pathname when close() not enabled (Michael Petlan) [1818835] - [tools] perf trace beauty: Make connect's addrlen be printed as an int, not hex (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Augment sockaddr arg in 'connect' (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Rename augmented_args_filename to augmented_args_payload (Michael Petlan) [1818835] - [tools] perf trace: Look for default name for entries in the syscalls prog array (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Support copying two string syscall args (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Switch to using BPF_MAP_TYPE_PROG_ARRAY (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Add handler for "openat" (Michael Petlan) [1818835] - [tools] perf trace: Handle raw_syscalls:sys_enter just like the BPF_OUTPUT augmented event (Michael Petlan) [1818835] - [tools] perf trace: Put the per-syscall entry/exit prog_array BPF map infrastructure in place (Michael Petlan) [1818835] - [tools] perf trace: Allow specifying the bpf prog to augment specific syscalls (Michael Petlan) [1818835] - [tools] perf trace: Add BPF handler for unaugmented syscalls (Michael Petlan) [1818835] - [tools] perf trace: Order -e syscalls table (Michael Petlan) [1818835] - [tools] perf trace: Look up maps just on the __augmented_syscalls__ BPF object (Michael Petlan) [1818835] - [tools] perf trace: Add pointer to BPF object containing __augmented_syscalls__ (Michael Petlan) [1818835] - [tools] perf evsel: Store backpointer to attached bpf_object (Michael Petlan) [1818835] - [tools] perf bpf: Do not attach a BPF prog to a tracepoint if its name starts with ! (Michael Petlan) [1818835] - [tools] perf include bpf: Add bpf_tail_call() prototype (Michael Petlan) [1818835] - [tools] perf: cs-etm: Optimize option setup for CPU-wide sessions (Michael Petlan) [1818835] - [tools] perf cs-etm: Remove duplicate GENMASK() define, use linux/bits.h instead (Michael Petlan) [1818835] - [tools] perf cs-etm: Add support for CPU-wide trace scenarios (Michael Petlan) [1818835] - [tools] perf cs-etm: Add notion of time to decoding code (Michael Petlan) [1818835] - [tools] perf cs-etm: Linking PE contextID with perf thread mechanic (Michael Petlan) [1818835] - [tools] perf cs-etm: Add support for multiple traceID queues (Michael Petlan) [1818835] - [tools] perf cs-etm: Use traceID aware memory callback API (Michael Petlan) [1818835] - [tools] perf cs-etm: Move tid/pid to traceid_queue (Michael Petlan) [1818835] - [tools] perf cs-etm: Move thread to traceid_queue (Michael Petlan) [1818835] - [tools] perf cs-etm: Get rid of unused cpu in struct cs_etm_queue (Michael Petlan) [1818835] - [tools] perf cs-etm: Introduce the concept of trace ID queues (Michael Petlan) [1818835] - [tools] perf cs-etm: Fix indentation in function cs_etm__process_decoder_queue() (Michael Petlan) [1818835] - [tools] perf cs-etm: Move packet queue out of decoder structure (Michael Petlan) [1818835] - [tools] perf cs-etm: Refactor error path in cs_etm_decoder__new() (Michael Petlan) [1818835] - [tools] perf cs-etm: Add handling of switch-CPU-wide events (Michael Petlan) [1818835] - [tools] perf cs-etm: Add handling of itrace start events (Michael Petlan) [1818835] - [tools] perf cs-etm: Configure SWITCH_EVENTS in CPU-wide mode (Michael Petlan) [1818835] - [tools] perf cs-etm: Configure timestamp generation in CPU-wide mode (Michael Petlan) [1818835] - [tools] perf cs-etm: Configure contextID tracing in CPU-wide mode (Michael Petlan) [1818835] - [kernel] perf/core: Fix missing static inline on perf_cgroup_switch() (Michael Petlan) [1818835] - [kernel] perf/core: Consistently fail fork on allocation failures (Michael Petlan) [1818835] - [kernel] perf/core: Disallow uncore-cgroup events (Michael Petlan) [1818835] - [include] perf/headers: Fix spelling s/EACCESS/EACCES/, s/privilidge/privilege/ (Michael Petlan) [1818835] - [x86] perf/x86/uncore: Fix event group support (Michael Petlan) [1818835] - [kernel] perf/core: Start rejecting the syscall with attr.__reserved_2 set (Michael Petlan) [1818835] - [kernel] perf/aux: Fix tracking of auxiliary trace buffer allocation (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Fix base for single entry topa (Michael Petlan) [1818835] - [x86] perf/x86/cstate: Add Tiger Lake CPU support (Michael Petlan) [1818835] - [x86] perf/x86/msr: Add Tiger Lake CPU support (Michael Petlan) [1818835] - [x86] perf/x86/intel: Add Tiger Lake CPU support (Michael Petlan) [1818835] - [x86] perf/x86/cstate: Update C-state counters for Ice Lake (Michael Petlan) [1818835] - [x86] perf/x86/msr: Add new CPU model numbers for Ice Lake (Michael Petlan) [1818835] - [kernel] perf/core: Fix corner case in perf_rotate_context() (Michael Petlan) [1818835] - [kernel] perf/core: Rework memory accounting in perf_mmap() (Michael Petlan) [1818835] - [kernel] perf/core: Fix several typos in comments (Michael Petlan) [1818835] - [x86] perf/x86: Make more stuff static (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Get rid of reverse lookup table for ToPA (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Free up space in a ToPA descriptor (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Split ToPA metadata and page layout (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Use pointer arithmetics instead in ToPA entry calculation (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Use helpers to obtain ToPA entry size (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Clean up ToPA allocation path (Michael Petlan) [1818835]- [scsi] scsi: bnx2fc: Update the driver version to 2.12.13 (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: fix boolreturn.cocci warnings (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: Fix SCSI command completion after cleanup is posted (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: Process the RQE with CQE in interrupt context (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: timeout calculation invalid for bnx2fc_eh_abort() (Nilesh Javali) [1792115] - [powerpc] powerpc/smp: Use nid as fallback for package_id (Steve Best) [1764530] - [kernel] audit: Add __rcu annotation to RCU pointer (Richard Guy Briggs) [1822776] - [infiniband] i40iw: Report correct firmware version (Stefan Assmann) [1726909] - [x86] x86/mce/amd: Add PPIN support for AMD MCE (Wei Huang) [1790521] - [kernel] locking/percpu-rwsem: Fix a task_struct refcount (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Add might_sleep() for writer locking (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Fold __percpu_up_read() (Waiman Long) [1810257] - [kernel] locking/rwsem: Remove RWSEM_OWNER_UNKNOWN (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Remove the embedded rwsem (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Extract __percpu_down_read_trylock() (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Move __this_cpu_inc() into the slowpath (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Convert to bool (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem, lockdep: Make percpu-rwsem use its own lockdep_map (Waiman Long) [1810257] - [kernel] locking/lockdep: Remove unused @nested argument from lock_release() (Waiman Long) [1810257] - [kernel] sched/core: Convert get_task_struct() to return the task (Waiman Long) [1810257] - [kernel] locking/lockdep, cpu/hotplug: Annotate AP thread (Waiman Long) [1810257] - [tty] tty/ldsem: Decrement wait_readers on timeouted down_read() (Waiman Long) [1810257] - [tty] tty/ldsem: Convert to regular lockdep annotations (Waiman Long) [1810257] - [tty] tty/ldsem: Wake up readers after timed out down_write() (Waiman Long) [1810257] - [tty] atomic/tty: Fix up atomic abuse in ldsem (Waiman Long) [1810257] - [kernel] cpu/hotplug: Remove skip_onerr field from cpuhp_step structure (Waiman Long) [1810257] - [watchdog] watchdog: hpwdt: drop warning after calling watchdog_init_timeout (Joseph Szczypek) [1790669] - [mm] powerpc/pkeys: Fix handling of pkey state across fork() (Steve Best) [1823744] - [irqchip] irqchip/gic-v3: Workaround Cavium erratum 38539 when reading GICD_TYPER2 (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Avoid 64bit division for the sake of 32bit ARM (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Rename VPENDBASER/VPROPBASER accessors (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Remove superfluous WARN_ON (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Drop 'tmp' in inherit_vpe_l1_table_from_rd() (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Ensure L2 vPE table is allocated at RD level (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Set vpe_l1_base for all redistributors (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Fix programming of GICR_VPROPBASER_4_1_SIZE (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Reference to its_invall_cmd descriptor when building INVALL (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Only provision redistributors that are enabled in ACPI (Mark Salter) [1818174] - [arm64] arm64: acpi: fix DAIF manipulation with pNMI (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Allow direct invalidation of VLPIs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Suppress per-VLPI doorbell (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Add VPE INVALL callback (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Add VPE eviction callback (Mark Salter) [1818174] - [include] irqchip/gic-v4.1: Add VPE residency callback (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Add mask/unmask doorbell callbacks (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Plumb skeletal VPE irqchip (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Implement the v4.1 flavour of VMOVP (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Don't use the VPE proxy if RVPEID is set (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Implement the v4.1 flavour of VMAPP (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: VPE table (aka GICR_VPROPBASER) allocation (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add GICv4.1 VPEID size discovery (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Detect GICv4.1 supporting RVPEID (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix get_vlpi_map() breakage with doorbells (Mark Salter) [1818174] - [arm64] arm64: Kconfig: Remove CONFIG_ prefix from ARM64_PSEUDO_NMI section (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make vlpi_lock a spinlock (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Lock VLPI map array before translating it (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Synchronise INT/CLEAR commands targetting a VLPI using VSYNC (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Synchronise INV command targetting a VLPI using VSYNC (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Add its_vlpi_map helpers (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Kill its->device_ids and use TYPER copy instead (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Kill its->ite_size and use TYPER copy instead (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make is_v4 use a TYPER copy (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Allow LPI invalidation via the DirectLPI interface (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Factor out wait_for_syncr primitive (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Free collection mapping on device teardown (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix u64 to __le64 warnings (Mark Salter) [1818174] - [irqchip] irqchip: Remove redundant semicolon after while (Mark Salter) [1818174] - [virt] KVM: vgic-v4: Track the number of VLPIs per vcpu (Mark Salter) [1818174] - [virt] KVM: arm64: vgic-v4: Move the GICv4 residency flow to be driven by vcpu_load/put (Mark Salter) [1818174] - [arm64] arm64: add local_daif_inherit() (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Use the exact ITSList for VMOVP (Mark Salter) [1818174] - [arm64] arm64: Relax ICC_PMR_EL1 accesses when ICC_CTLR_EL1.PMHE is clear (Mark Salter) [1818174] - [arm64] arm64: Fix incorrect irqflag restore for priority masking for compat (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Fix GIC_LINE_NR accessor (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix LPI release for Multi-MSI devices (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Remove the redundant set_bit for lpi_map (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add quirks for HIP06/07 invalid GICD_TYPER erratum 161010803 (Mark Salter) [1818174] - [irqchip] irqchip/gic: Skip DT quirks when evaluating IIDR-based quirks (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Warn about inconsistent implementations of extended ranges (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add EPPI range support (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Dynamically allocate PPI partition descriptors (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Dynamically allocate PPI NMI refcounts (Mark Salter) [1818174] - [irqchip] irqchip/gic: Prepare for more than 16 PPIs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add ESPI range support (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add INTID range and convertion primitives (Mark Salter) [1818174] - [irqchip] irqchip/gic: Rework gic_configure_irq to take the full ICFGR base (Mark Salter) [1818174] - [irqchip] irqchip/gic-v2m: Register the frame's PA instead of its VA in fwnode (Mark Salter) [1818174] - [irqchip] irqchip/gic: Register the distributor's PA instead of its VA in fwnode (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Register the ITS' PA instead of its VA in fwnode (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Register the distributor's PA instead of its VA in fwnode (Mark Salter) [1818174] - [arm64] arm64: kprobes: Recover pstate.D in single-step exception handler (Mark Salter) [1818174] - [arm64] arm64: Lower priority mask for GIC_PRIO_IRQON (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Free unused vpt_page when alloc vpe table fail (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Mark expected switch fall-through (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix misuse of GENMASK macro (Mark Salter) [1818174] - [arm64] arm64: fix kernel stack overflow in kdump capture kernel (Mark Salter) [1818174] - [arm64] arm64: irqflags: Introduce explicit debugging for IRQ priorities (Mark Salter) [1818174] - [arm64] arm64: Enable the support of pseudo-NMIs (Mark Salter) [1818174] - [arm64] arm64: Fix incorrect irqflag restore for priority masking (Mark Salter) [1818174] - [arm64] arm64: Fix interrupt tracing in the presence of NMIs (Mark Salter) [1818174] - [arm64] arm64: irqflags: Add condition flags to inline asm clobber list (Mark Salter) [1818174] - [arm64] arm64: irqflags: Pass flags as readonly operand to restore instruction (Mark Salter) [1818174] - [arm64] arm64: Do not enable IRQs for ct_user_exit (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix command queue pointer comparison bug (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make free_lpi_range a little cheaper (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Drop redundant initialization in mk_lpi_range (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Move allocation outside mutex (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix typo in a comment in its_msi_prepare() (Mark Salter) [1818174] - [include] irqchip/gic-v3-its: fix some definitions of inner cacheability attributes (Mark Salter) [1818174] - [arm64] arm64: fix wrong check of on_sdei_stack in nmi context (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix comparison logic in lpi_range_cmp (Mark Salter) [1818174] - [arm64] arm64: remove obsolete selection of MULTI_IRQ_HANDLER (Mark Salter) [1818174] - [irqchip] irqchip/gicv3-its: Use NUMA aware memory allocation for ITS tables (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Avoid parsing _indirect_ twice for Device table (Mark Salter) [1818174] - [arm64] arm64: irqflags: Fix clang build warnings (Mark Salter) [1818174] - [arm64] arm64: KVM/mm: Move SEA handling behind a single 'claim' interface (Mark Salter) [1818174] - [arm64] arm64: Skip irqflags tracing for NMI in IRQs disabled context (Mark Salter) [1818174] - [arm64] arm64: Skip preemption when exiting an NMI (Mark Salter) [1818174] - [arm64] arm64: Handle serror in NMI context (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Allow interrupts to be set as pseudo-NMI (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Handle pseudo-NMIs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Detect if GIC can support pseudo-NMIs (Mark Salter) [1818174] - [arm64] arm64: gic-v3: Implement arch support for priority masking (Mark Salter) [1818174] - [irqchip] arm64: Switch to PMR masking when starting CPUs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Factor group0 detection into functions (Mark Salter) [1818174] - [arm64] arm64: alternative: Apply alternatives early in boot process (Mark Salter) [1818174] - [arm64] arm64: alternative: Allow alternative status checking per cpufeature (Mark Salter) [1818174] - [arm64] arm64: sysreg: Make mrs_s and msr_s macros work with Clang and LTO (Mark Salter) [1818174] - [arm64] arm64: daifflags: Include PMR in daifflags restore operations (Mark Salter) [1818174] - [arm64] arm64: irqflags: Use ICC_PMR_EL1 for interrupt masking (Mark Salter) [1818174] - [firmware] efi: Let architectures decide the flags that should be saved/restored (Mark Salter) [1818174] - [kvm] arm64: kvm: Unmask PMR before entering guest (Mark Salter) [1818174] - [mm] arm64: Unmask PMR before going idle (Mark Salter) [1818174] - [arm64] arm64: Make PMR part of task context (Mark Salter) [1818174] - [arm64] arm64: ptrace: Provide definitions for PMR values (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Switch to PMR masking before calling IRQ handler (Mark Salter) [1818174] - [arm64] arm64: cpufeature: Add cpufeature for IRQ priority masking (Mark Salter) [1818174] - [arm64] arm64: cpufeature: Set SYSREG_GIC_CPUIF as a boot system feature (Mark Salter) [1818174] - [arm64] arm64: Remove unused daif related functions/macros (Mark Salter) [1818174] - [arm64] arm64: Fix HCR.TGE status for NMI contexts (Mark Salter) [1818174] - [kernel] irqdesc: Add domain handler for NMIs (Mark Salter) [1818174] - [kernel] genirq: Update irq stats from NMI handlers (Mark Salter) [1818174] - [kernel] genirq: Provide NMI handlers (Mark Salter) [1818174] - [kernel] genirq: Provide NMI management for percpu_devid interrupts (Mark Salter) [1818174] - [kernel] genirq: Provide basic NMI management for interrupt lines (Mark Salter) [1818174] - [include] irqchip/gic-v3-its: Fix ITT_entry_size accessor (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Gracefully fail on LPI exhaustion (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Plug allocation race for devices sharing a DevID (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4: Fix occasional VLPI drop (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-mbi: Fix uninitialized mbi_lock (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add quirk for msm8996 broken registers (Mark Salter) [1818174] - [irqchip] irqchip/gic: Add support to device tree based quirks (Mark Salter) [1818174] - [arm64] arm64: capabilities: Batch cpu_enable callbacks (Mark Salter) [1818174] - [arm64] arm64: capabilities: Use linear array for detection and verification (Mark Salter) [1818174] - [arm64] arm64: capabilities: Optimize this_cpu_has_cap (Mark Salter) [1818174] - [arm64] arm64: capabilities: Speed up capability lookup (Mark Salter) [1818174] - [irqchip] irqchip: Convert to using pOFn instead of device_node.name (Mark Salter) [1818174] - [mm] arm64: Use daifflag_restore after bp_hardening (Mark Salter) [1818174] - [arm64] arm64: daifflags: Use irqflags functions for daifflags (Mark Salter) [1818174] - [include] irqchip/gic: Unify GIC priority definitions (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Remove acknowledge loop (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Allow interrupt to be configured as wake-up sources (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make its_lock a raw_spin_lock_t (Mark Salter) [1818174] - [irqchip] genirq/irqchip: Remove MULTI_IRQ_HANDLER as it's now obselete (Mark Salter) [1818174] - [arm64] arm64: Use the new GENERIC_IRQ_MULTI_HANDLER (Mark Salter) [1818174] - [irqchip] irqchip: Port the ARM IRQ drivers to GENERIC_IRQ_MULTI_HANDLER (Mark Salter) [1818174] - [arm64] arm64: sdei: Mark sdei stack helper functions as static (Mark Salter) [1818174] - [arm64] arm64: Add stack information to on_accessible_stack (Mark Salter) [1818174] - [x86] Reserve at most 64M of SWIOTLB memory for crashkernel (Kairui Song) [1812754] - [md] md/raid1: introduce wait_for_serialization (Nigel Croxon) [1788370] - [md] md/raid1: use bucket based mechanism for IO serialization (Nigel Croxon) [1788370] - [md] md: introduce a new struct for IO serialization (Nigel Croxon) [1788370] - [md] md: don't destroy serial_info_pool if serialize_policy is true (Nigel Croxon) [1788370] - [md] raid1: serialize the overlap write (Nigel Croxon) [1788370] - [md] md: reorgnize mddev_create/destroy_serial_pool (Nigel Croxon) [1788370] - [md] md: add serialize_policy sysfs node for raid1 (Nigel Croxon) [1788370] - [md] md: prepare for enable raid1 io serialization (Nigel Croxon) [1788370] - [md] md: fix a typo s/creat/create (Nigel Croxon) [1788370] - [md] md: rename wb stuffs (Nigel Croxon) [1788370] - [md] raid5: remove worker_cnt_per_group argument from alloc_thread_groups (Nigel Croxon) [1788370] - [lib] md/raid6: fix algorithm choice under larger PAGE_SIZE (Nigel Croxon) [1788370] - [lib] raid6/test: fix a compilation warning (Nigel Croxon) [1788370] - [md] md-bitmap: small cleanups (Nigel Croxon) [1788370]- [firmware] efi: cper: print AER info of PCIe fatal error (Vladis Dronov) [1822595] - [init] redhat: Replace hardware.redhat.com link in Unsupported message (Prarit Bhargava) [1810301] - [pci] PCI: Mark AMD Navi14 GPU rev 0xc5 ATS as broken (Myron Stowe) [1820933] - [pci] PCI: Fix typos (Myron Stowe) [1820933] - [pci] PCI: Remove useless comments and tidy others (Myron Stowe) [1820933] - [pci] PCI: Remove unnecessary includes (Myron Stowe) [1820933] - [tools] tools: PCI: Fix fd leakage (Myron Stowe) [1820933] - [pci] PCI: Export pci_parse_request_of_pci_ranges() (Myron Stowe) [1820933] - [include] resource: Add a resource_list_first_type helper (Myron Stowe) [1820933] - [pci] PCI/ATS: Restore EXPORT_SYMBOL_GPL() for pci_{enable, disable}_ats() (Myron Stowe) [1820933] - [include] PCI/ATS: Add PASID stubs (Myron Stowe) [1820933] - [pci] PCI: Unify ACS quirk desired vs provided checking (Myron Stowe) [1820933] - [pci] PCI: Make ACS quirk implementations more uniform (Myron Stowe) [1820933] - [pci] PCI: Apply Cavium ACS quirk to ThunderX2 and ThunderX3 (Myron Stowe) [1820933] - [pci] PCI/IOV: Serialize sysfs sriov_numvfs reads vs writes (Myron Stowe) [1820933] - [pci] PCI: Add DMA alias quirk for Intel VCA NTB (Myron Stowe) [1820933] - [pci] PCI: Fix Intel ACS quirk UPDCR register address (Myron Stowe) [1820933] - [pci] PCI/ATS: Make pci_restore_pri_state(), pci_restore_pasid_state() private (Myron Stowe) [1820933] - [pci] PCI/ATS: Remove unnecessary EXPORT_SYMBOL_GPL() (Myron Stowe) [1820933] - [include] PCI/ATS: Remove unused PRI and PASID stubs (Myron Stowe) [1820933] - [pci] PCI/ATS: Consolidate ATS declarations in linux/pci-ats.h (Myron Stowe) [1820933] - [pci] PCI/ATS: Cache PRI PRG Response PASID Required bit (Myron Stowe) [1820933] - [pci] PCI/ATS: Use PF PASID for VFs (Myron Stowe) [1820933] - [pci] PCI/ATS: Cache PASID Capability offset (Myron Stowe) [1820933] - [pci] PCI/ATS: Cache PRI Capability offset (Myron Stowe) [1820933] - [pci] PCI/ATS: Disable PF/VF ATS service independently (Myron Stowe) [1820933] - [pci] PCI/ATS: Handle sharing of PF PASID Capability with all VFs (Myron Stowe) [1820933] - [pci] PCI/ATS: Handle sharing of PF PRI Capability with all VFs (Myron Stowe) [1820933] - [pci] PCI/ATS: Move pci_prg_resp_pasid_required() to CONFIG_PCI_PRI (Myron Stowe) [1820933] - [iommu] iommu/vt-d: Select PCI_PRI for INTEL_IOMMU_SVM (Myron Stowe) [1820933] - [pci] PCI/switchtec: Read all 64 bits of part_event_bitmap (Myron Stowe) [1820933] - [pci] PCI: Do not use bus number zero from EA capability (Myron Stowe) [1820933] - [pci] PCI: Avoid double hpmemsize MMIO window assignment (Myron Stowe) [1820933] - [pci] PCI: Add "pci=hpmmiosize" and "pci=hpmmioprefsize" parameters (Myron Stowe) [1820933] - [pci] PCI: Add PCI_STD_NUM_BARS for the number of standard BARs (Myron Stowe) [1820933] - [pci] PCI: Fix missing bridge dma_ranges resource list cleanup (Myron Stowe) [1820933] - [pci] PCI: Protect pci_reassign_bridge_resources() against concurrent addition/removal (Myron Stowe) [1820933] - [pci] PCI/MSI: Fix incorrect MSI-X masking on resume (Myron Stowe) [1820933] - [pci] PCI/MSI: Move power state check out of pci_msi_supported() (Myron Stowe) [1820933] - [pci] PCI/MSI: Remove unused pci_irq_get_node() (Myron Stowe) [1820933] - [uapi] PCI: Add #defines for Enter Compliance, Transmit Margin (Myron Stowe) [1820933] - [pci] PCI: Allow building PCIe things without PCIEPORTBUS (Myron Stowe) [1820933] - [pci] PCI: Remove PCIe Kconfig dependencies on PCI (Myron Stowe) [1820933] - [pci] PCI/ASPM: Remove dependency on PCIEPORTBUS (Myron Stowe) [1820933] - [pci] PCI/PTM: Remove dependency on PCIEPORTBUS (Myron Stowe) [1820933] - [pci] PCI/PTM: Remove spurious "d" from granularity message (Myron Stowe) [1820933] - [pci] PCI: sysfs: Remove unused attribute groups (Myron Stowe) [1820933] - [x86] x86/PCI: Avoid AMD FCH XHCI USB PME# from D0 defect (Myron Stowe) [1820933] - [pci] PCI: Remove unused includes and superfluous struct declaration (Myron Stowe) [1820933] - [x86] x86/PCI: Replace deprecated EXTRA_CFLAGS with ccflags-y (Myron Stowe) [1820933] - [pci] x86/PCI: Correct SPDX comment style (Myron Stowe) [1820933] - [x86] x86/PCI: Add NumaChip SPDX GPL-2.0 to replace COPYING boilerplate (Myron Stowe) [1820933] - [pci] ACPI / hotplug / PCI: Allocate resources directly under the non-hotplug bridge (Myron Stowe) [1820933] - [pci] PCI: pciehp: Prevent deadlock on disconnect (Myron Stowe) [1820933] - [pci] PCI: pciehp: Do not disable interrupt twice on suspend (Myron Stowe) [1820933] - [pci] PCI: pciehp: Refactor infinite loop in pcie_poll_cmd() (Myron Stowe) [1820933] - [pci] PCI: pciehp: Fix indefinite wait on sysfs requests (Myron Stowe) [1820933] - [pci] PCI: pciehp: Avoid returning prematurely from sysfs requests (Myron Stowe) [1820933] - [pci] PCI: Warn if no host bridge NUMA node info (Myron Stowe) [1820933] - [pci] PCI/ASPM: Remove PCIEASPM_DEBUG Kconfig option and related code (Myron Stowe) [1820933] - [pci] PCI/ASPM: Add sysfs attributes for controlling ASPM link states (Myron Stowe) [1820933] - [pci] PCI/ASPM: Add pcie_aspm_get_link() (Myron Stowe) [1820933] - [pci] PCI/ASPM: Allow re-enabling Clock PM (Myron Stowe) [1820933] - [pci] PCI/ASPM: Add L1 PM substate support to pci_disable_link_state() (Myron Stowe) [1820933] - [pci] PCI/ASPM: Remove pcie_aspm_enabled() unnecessary locking (Myron Stowe) [1820933] - [pci] PCI/DPC: Add "pcie_ports=dpc-native" to allow DPC without AER control (Myron Stowe) [1820933] - [pci] PCI/AER: Fix kernel-doc warnings (Myron Stowe) [1820933] - [pci] PCI/AER: Use for_each_set_bit() to simplify code (Myron Stowe) [1820933] - [pci] PCI/AER: Add PoisonTLPBlocked to Uncorrectable error counters (Myron Stowe) [1820933] - [pci] PCI/AER: Save AER Capability for suspend/resume (Myron Stowe) [1820933] - [pci] PCI: Add ACS quirk for iProc PAXB (Myron Stowe) [1820933] - [cpufreq] cpufreq: intel_pstate: Simplify intel_pstate_cpu_init() (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: Fix frame-size-overflow in powernv_cpufreq_work_fn (Prarit Bhargava) [1823339] - [cpufreq] x86/devicetable: Move x86 specific macro out of generic code (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Use scnprintf() for avoiding potential buffer overflow (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Consolidate policy verification (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: Fix unsafe notifiers (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: Fix use-after-free (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: dt: Allow platform specific intermediate callbacks (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: add function to get the hardware max frequency (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Prevent unstable evaluation of WARN(vtime->state) (Prarit Bhargava) [1823339] - [cpufreq] docs: cpufreq: fix a broken reference (Prarit Bhargava) [1823339] - [kernel] PM: QoS: annotate data races in pm_qos_*_value() (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Fix policy initialization for internal governor drivers (Prarit Bhargava) [1823339] - [documentation] Documentation: power: fix pm_qos_interface.rst format warning (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Make CPU latency QoS depend on CONFIG_CPU_IDLE (Prarit Bhargava) [1823339] - [documentation] Documentation: PM: QoS: Update to reflect previous code changes (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Update file information comments (Prarit Bhargava) [1823339] - [x86] x86: platform: iosf_mbi: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [cpuidle] cpuidle: Call cpu_latency_qos_limit() instead of pm_qos_request() (Prarit Bhargava) [1823339] - [x86] x86: baytrail/cherrytrail: Rework and move P-Unit PMIC bus semaphore code (Prarit Bhargava) [1823339] - [sound] sound: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [media] drivers: media: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [wireless] drivers: net: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [drm] drm/i915: Implement a better i945gm vblank irq vs. C-states workaround (Prarit Bhargava) [1823339] - [drm] drm: i915: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop PM_QOS_CPU_DMA_LATENCY and rename related functions (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Adjust pm_qos_request() signature and reorder pm_qos.h (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Simplify definitions of CPU latency QoS trace events (Prarit Bhargava) [1823339] - [tty] PM: QoS: Rename things related to the CPU latency QoS (Prarit Bhargava) [1823339] - [cpuidle] PM: QoS: Drop PM_QOS_CPU_DMA_LATENCY notifier chain (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Redefine struct pm_qos_request and drop struct pm_qos_object (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Clean up misc device file operations (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop iterations over global QoS classes (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Clean up pm_qos_read_value() and pm_qos_get/set_value() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Clean up pm_qos_update_target() and pm_qos_update_flags() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop the PM_QOS_SUM QoS type (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop pm_qos_update_request_timeout() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop debugfs interface (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: ti-cpufreq: Add support for OPP_PLUS (Prarit Bhargava) [1823339] - [x86] x86/intel_pstate: Handle runtime turbo disablement/enablement in frequency invariance (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on ATOM (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on ATOM_GOLDMONT* (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on XEON_PHI_KNL/KNM (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on SKYLAKE_X (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Avoid creating excessively large stack frames (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: loongson2_cpufreq: adjust cpufreq uses of LOONGSON_CHIPCFG (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: brcmstb-avs: fix imbalance of cpufreq policy refcount (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: fix spelling mistake: "Whethet" -> "Whether" (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: s3c: fix unbalances of cpufreq policy refcount (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: tegra186: convert to devm_platform_ioremap_resource (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: kirkwood: convert to devm_platform_ioremap_resource (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: CPPC: put ACPI table after using it (Prarit Bhargava) [1823339] - [cpufreq] cpufreq : CPPC: Break out if HiSilicon CPPC workaround is matched (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: scmi: Match scmi device by both name and protocol id (Prarit Bhargava) [1823339] - [base] PM / QoS: Restore DEV_PM_QOS_MIN/MAX_FREQUENCY (Prarit Bhargava) [1823339] - [base] PM: QoS: Drop frequency QoS types from device PM QoS (Prarit Bhargava) [1823339] - [include] PM / QoS: Reorder pm_qos/freq_qos/dev_pm_qos structs (Prarit Bhargava) [1823339] - [include] PM / QoS: Redefine FREQ_QOS_MAX_DEFAULT_VALUE to S32_MAX (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Fix Kconfig indentation (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Use vtime aware kcpustat accessors for user time (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Bring up complete kcpustat accessor (Prarit Bhargava) [1823339] - [documentation] PM: Wrap documentation to fit in 80 columns (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Invalidate frequency QoS requests after removal (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Register drivers only after CPU devices have been registered (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Add NULL checks to show() and store() methods of cpufreq (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Fix invalid EPB setting (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Initialize cpufreq-dt driver earlier (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Fix plain int as pointer warning from sparse (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: fix stack bloat and hard limit on number of CPUs (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Clarify the comment in cpufreq_set_policy() (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Use vtime aware kcpustat accessor to fetch CPUTIME_SYSTEM (Prarit Bhargava) [1823339] - [kernel] sched/kcpustat: Introduce vtime-aware kcpustat accessor for CPUTIME_SYSTEM (Prarit Bhargava) [1823339] - [include] sched/vtime: Introduce vtime_accounting_enabled_cpu() (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Rename vtime_accounting_cpu_enabled() to vtime_accounting_enabled_this_cpu() (Prarit Bhargava) [1823339] - [include] context_tracking: Introduce context_tracking_enabled_cpu() (Prarit Bhargava) [1823339] - [include] context_tracking: Rename context_tracking_is_cpu_enabled() to context_tracking_enabled_this_cpu() (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Record CPU under seqcount for kcpustat needs (Prarit Bhargava) [1823339] - [acpi] ACPI: processor: Add QoS requests for all CPUs (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: scpi: remove stale/outdated comment about the driver (Prarit Bhargava) [1823339] - [thermal] thermal/drivers/cpufreq_cooling: Fix return of cpufreq_set_cur_state (Prarit Bhargava) [1823339] - [acpi] cpufreq: Use per-policy frequency QoS (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Introduce frequency QoS (Prarit Bhargava) [1823339] - [acpi] ACPI: processor: Avoid NULL pointer dereferences at init time (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: ti-cpufreq: Add support for AM3517 (Prarit Bhargava) [1823339] - [cpufreq] ARM: dts: omap36xx: using OPP1G needs to control the abb_ldo (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: ti-cpufreq: add support for omap34xx and omap36xx (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Remove CPUFREQ_ADJUST and CPUFREQ_NOTIFY policy notifier events (Prarit Bhargava) [1823339] - [base] arch_topology: Use CPUFREQ_CREATE_POLICY instead of CPUFREQ_NOTIFY (Prarit Bhargava) [1823339] - [acpi] ACPI: cpufreq: Switch to QoS requests instead of cpufreq notifier (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Get rid of unused flags (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Implement QoS supported freq constraints (Prarit Bhargava) [1823339] - [thermal] thermal: cpu_cooling: Switch to QoS requests for freq limits (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Add policy create/remove notifiers back (Prarit Bhargava) [1823339] - [documentation] docs: power: convert docs to ReST and rename to *.rst (Prarit Bhargava) [1823339] - [kernel] PM: QoS: no need to check return value of debugfs_create functions (Prarit Bhargava) [1823339] - [kernel] PM / QoS: Change to use DEFINE_SHOW_ATTRIBUTE macro (Prarit Bhargava) [1823339] - [nvme] nvme-fc: Revert "add module to ops template to allow module references" (Gopal Tiwari) [1823270] - [nvme] nvme: fix deadlock caused by ANA update wrong locking (Gopal Tiwari) [1823270] - [nvme] nvme-pci: Hold cq_poll_lock while completing CQEs (Gopal Tiwari) [1823270] - [uapi] nvme: change nvme_passthru_cmd64 to explicitly mark rsvd (Gopal Tiwari) [1823270] - [tools] tools/power/x86/intel-speed-select: Fix a typo in error message (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Update version (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Avoid duplicate Package strings for json (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Add display for enabled cpus count (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Print friendly warning for bad command line (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix avx options for turbo-freq feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve CLX commands (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Show error for invalid CPUs in the options (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve core-power result and error display (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Kernel interface error handling (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve error display for turbo-freq feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve error display for base-freq feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve output of perf-profile commands (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance help for core-power assoc (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Display error for invalid priority type (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Check feature status first (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve error display for perf-profile feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Add an API for error/information print (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance --info option (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance help (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Helpful warning for missing kernel interface (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Store topology information (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Max CPU count calculation when CPU0 is offline (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Special handling for CPU 0 online/offline (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Use more verbiage for clos information (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance core-power info command (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Make target CPU optional for core-power info (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Warn for invalid package id (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix last cpu number (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix mailbox usage for CLOS_PM_QOS_CONFIG (Prarit Bhargava) [1778956] - [platform] platform/x86: ISST: Fix wrong unregister type (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Avoid duplicate names for json parsing (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix display for turbo-freq auto mode (Prarit Bhargava) [1778956] - [platform] platform/x86: ISST: Allow additional core-power mailbox commands (Prarit Bhargava) [1778956] - [misc] mei: me: add comet point (lake) H device ids (Ken Cox) [1815355] - [misc] mei: me: add comet point (lake) LP device ids (Ken Cox) [1815355] - [misc] mei: define dma ring buffer sizes for PCH12 HW and newer (Ken Cox) [1815355] - [misc] mei: hbm: define dma ring setup protocol (Ken Cox) [1815355] - [acpi] apei/ghes: Do not delay GHES polling (Robert Richter) [1793544] - [edac] EDAC/ghes: Do not warn when incrementing refcount on 0 (Robert Richter) [1793544] - [edac] EDAC/ghes: Fix locking and memory barrier issues (Robert Richter) [1793544] - [edac] EDAC/ghes: Fix Use after free in ghes_edac remove path (Robert Richter) [1793544] - [edac] EDAC, ghes: Use CPER module handles to locate DIMMs (Robert Richter) [1793544] - [kernel] sched/fair: Fix statistics for find_idlest_group() (Phil Auld) [1794398] - [kernel] sched/core: Annotate curr pointer in rq with __rcu (Phil Auld) [1794398] - [kernel] sched/psi: Fix OOB write when writing 0 bytes to PSI files (Phil Auld) [1794398] - [kernel] sched/psi: Correct overly pessimistic size calculation (Phil Auld) [1794398] - [kernel] sched/fair: Prevent unlimited runtime on throttled group (Phil Auld) [1794398] - [kernel] sched/nohz: Optimize get_nohz_timer_target() (Phil Auld) [1794398] - [kernel] sched/topology: Assert non-NUMA topology masks don't (partially) overlap (Phil Auld) [1794398] - [kernel] sched/psi: create /proc/pressure and /proc/pressure/{io|memory|cpu} only when psi enabled (Phil Auld) [1794398] - [kernel] sched/fair: Remove redundant call to cpufreq_update_util() (Phil Auld) [1794398] - [kernel] sched/debug: Add new tracepoints to track PELT at rq level (Phil Auld) [1794398] - [kernel] sched/fair: calculate delta runnable load only when it's needed (Phil Auld) [1794398] - [kernel] sched/fair: Fix sgc->{min, max}_capacity calculation for SD_OVERLAP (Phil Auld) [1794398] - [kernel] sched/debug: Reset watchdog on all CPUs while processing sysrq-t (Phil Auld) [1794398] - [kernel] sched/fair: Make sched-idle CPU selection consistent throughout (Phil Auld) [1794398] - [kernel] sched/core: Remove unused variable from set_user_nice() (Phil Auld) [1794398] - [kernel] sched/fair: Optimize select_idle_cpu (Phil Auld) [1794398] - [kernel] schied/fair: Skip calculating @contrib without load (Phil Auld) [1794398] - [kernel] sched: Spare resched IPI when prio changes on a single fair task (Phil Auld) [1794398] - [kernel] sched: Use fair:prio_changed() instead of ad-hoc implementation (Phil Auld) [1794398] - [kernel] sched/wait: fix ___wait_var_event(exclusive) (Phil Auld) [1794398] - [kernel] psi: Fix a division error in psi poll() (Phil Auld) [1794398] - [kernel] sched/psi: Fix sampling error and rare div0 crashes with cgroups and high uptime (Phil Auld) [1794398] - [kernel] sched/cpufreq: Move the cfs_rq_util_change() call to cpufreq_update_util() (Phil Auld) [1794398] - [kernel] sched/pelt: Fix update of blocked PELT ordering (Phil Auld) [1794398] - [kernel] sched/core: Avoid spurious lock dependencies (Phil Auld) [1794398] - [kernel] Add wake_up_interruptible_sync_poll_locked() (Phil Auld) [1794398] - [kernel] Remove the nr_exclusive argument from __wake_up_sync_key() (Phil Auld) [1794398] - [x86] x86/mce: Do not log spurious corrected mce errors (Prarit Bhargava) [1819761] - [x86] x86/MCE: Add an MCE-record filtering function (Prarit Bhargava) [1819761]- [mm] mm/page_alloc: increase default min_free_kbytes bound (Joel Savitz) [1808039] - [crypto] crypto: remove CRYPTO_TFM_RES_BAD_KEY_LEN (Neil Horman) [1782179] - [crypto] crypto: qat - switch to skcipher API (Neil Horman) [1782179] - [scsi] scsi: lpfc: Change default SCSI LUN QD to 64 (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.0 (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Remove prototype FIPS/DSS options from SLI-3 (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Make debugfs ktime stats generic for NVME and SCSI (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix erroneous cpu limit of 128 on I/O statistics (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix crash in target side cable pulls hitting WAIT_FOR_UNREG (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix update of wq consumer index in lpfc_sli4_wq_release (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix crash after handling a pci error (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix scsi host template for SLI3 vports (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix lpfc overwrite of sg_cnt field in nvmefc_tgt_fcp_req (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix lockdep error - register non-static key (Dick Kennedy) [1822334] - [fs] utimes: Clamp the timestamps in notify_change() (Eric Sandeen) [1795991] - [fs] smb3: Fix regression in time handling (Eric Sandeen) [1795991] - [fs] isofs: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fs: ceph: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fs: fat: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fat: propagate 64-bit inode timestamps (Eric Sandeen) [1795991] - [fs] fs: cifs: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fs: nfs: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] ext4: Initialize timestamps limits (Eric Sandeen) [1795991] - [fs] fs: Fill in max and min timestamps in superblock (Eric Sandeen) [1795991] - [fs] utimes: Clamp the timestamps before update (Eric Sandeen) [1795991] - [fs] timestamp_truncate: Replace users of timespec64_trunc (Eric Sandeen) [1795991] - [fs] vfs: Add timestamp_truncate() api (Eric Sandeen) [1795991] - [fs] vfs: Add file timestamp range support (Eric Sandeen) [1795991] - [fs] cramfs: Deprecate cramfs in RHEL (Abhijith Das) [1794513] - [thermal] thermal: intel: intel_pch_thermal: Add Comet Lake (CML) platform support (David Arcari) [1773794] - [thermal] thermal: intel: Fix unmatched pci_release_region (David Arcari) [1773794] - [thermal] thermal: intel: Use dev_get_drvdata (David Arcari) [1773794] - [thermal] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (David Arcari) [1773794] - [thermal] drivers: thermal: Move various drivers for intel platforms into a subdir (David Arcari) [1773794] - [x86] x86/cpufeatures: Enable a new AVX512 CPU feature (David Arcari) [1783143] - [x86] cpu/cpuid-deps: Add a tab to cpuid dependent features (David Arcari) [1783143] - [crypto] crypto: rng - Override drivers/char/random in FIPS mode (Herbert Xu) [1785660] - [char] random: Add hook to override device reads and getrandom(2) (Herbert Xu) [1785660] - [block] nbd: add a flush_workqueue in nbd_start_device (Ming Lei) [1798919] - [scsi] scsi: sd_sbc: Fix sd_zbc_report_zones() (Ming Lei) [1798919] - [block] block: Fix partition support for host aware zoned block devices (Ming Lei) [1798919] - [scsi] block: allow partitions on host aware zone devices (Ming Lei) [1798919] - [block] null_blk: Fix zone write handling (Ming Lei) [1798919] - [fs] fs: move guard_bio_eod() after bio_set_op_attrs (Ming Lei) [1798919] - [block] null_blk: Fix REQ_OP_ZONE_CLOSE handling (Ming Lei) [1798919] - [block] block: add bio_truncate to fix guard_bio_eod (Ming Lei) [1798919] - [block] compat_ioctl: block: handle Persistent Reservations (Ming Lei) [1798919] - [block] compat_ioctl: block: handle add zone open, close and finish ioctl (Ming Lei) [1798919] - [block] compat_ioctl: block: handle BLKGETZONESZ/BLKGETNRZONES (Ming Lei) [1798919] - [block] compat_ioctl: block: handle BLKREPORTZONE/BLKRESETZONE (Ming Lei) [1798919] - [block] block: fix memleak when __blk_rq_map_user_iov() is failed (Ming Lei) [1798919] - [s390] s390/dasd: fix typo in copyright statement (Ming Lei) [1798919] - [s390] s390/dasd: fix memleak in path handling error case (Ming Lei) [1798919] - [s390] s390/dasd/cio: Interpret ccw_device_get_mdc return value correctly (Ming Lei) [1798919] - [block] block: Fix a lockdep complaint triggered by request queue flushing (Ming Lei) [1798919] - [block] block: Fix the type of 'sts' in bsg_queue_rq() (Ming Lei) [1798919] - [block] block: end bio with BLK_STS_AGAIN in case of non-mq devs and REQ_NOWAIT (Ming Lei) [1798919] - [block] nbd: fix shutdown and recv work deadlock v2 (Ming Lei) [1798919] - [block] blk-iocost: fix incorrect vtime comparison in iocg_is_idle() (Ming Lei) [1798919] - [block] iocost: check active_list of all the ancestors in iocg_activate() (Ming Lei) [1798919] - [block] iocost: over-budget forced IOs should schedule async delay (Ming Lei) [1798919] - [block] blk-cgroup: remove blkcg_drain_queue (Ming Lei) [1798919] - [block] block: fix NULL pointer dereference in account statistics with IDE (Ming Lei) [1798919] - [block] null_blk: remove unused variable warning on !CONFIG_BLK_DEV_ZONED (Ming Lei) [1798919] - [block] brd: warn on un-aligned buffer (Ming Lei) [1798919] - [block] brd: remove max_hw_sectors queue limit (Ming Lei) [1798919] - [block] block: set the zone size in blk_revalidate_disk_zones atomically (Ming Lei) [1798919] - [block] block: don't handle bio based drivers in blk_revalidate_disk_zones (Ming Lei) [1798919] - [block] block: allocate the zone bitmaps lazily (Ming Lei) [1798919] - [block] block: replace seq_zones_bitmap with conv_zones_bitmap (Ming Lei) [1798919] - [block] block: simplify blkdev_nr_zones (Ming Lei) [1798919] - [block] block: remove the empty line at the end of blk-zoned.c (Ming Lei) [1798919] - [block] null_blk: cleanup null_gendisk_register (Ming Lei) [1798919] - [block] null_blk: fix zone size paramter check (Ming Lei) [1798919] - [fs] block: don't send uevent for empty disk when not invalidating (Ming Lei) [1798919] - [block] ataflop: Remove unneeded semicolon (Ming Lei) [1798919] - [block] drbd: Remove unneeded semicolon (Ming Lei) [1798919] - [scsi] sr_vendor: support Beurer GL50 evo CD-on-a-chip devices (Ming Lei) [1798919] - [cdrom] cdrom: respect device capabilities during opening action (Ming Lei) [1798919] - [fs] block: move clearing bd_invalidated into check_disk_size_change (Ming Lei) [1798919] - [block] block: remove (__)blkdev_reread_part as an exported API (Ming Lei) [1798919] - [block] block: fix bdev_disk_changed for non-partitioned devices (Ming Lei) [1798919] - [block] block: move rescan_partitions to fs/block_dev.c (Ming Lei) [1798919] - [block] block: merge invalidate_partitions into rescan_partitions (Ming Lei) [1798919] - [block] block: refactor rescan_partitions (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Remove set but not used variable 'buflen' (Ming Lei) [1798919] - [md] block: rework zone reporting (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Cleanup sd_zbc_alloc_report_buffer() (Ming Lei) [1798919] - [block] null_blk: Add zone_nr_conv to features (Ming Lei) [1798919] - [block] null_blk: clean up report zones (Ming Lei) [1798919] - [block] null_blk: clean up the block device operations (Ming Lei) [1798919] - [block] block: Remove partition support for zoned block devices (Ming Lei) [1798919] - [md] block: Simplify report zones execution (Ming Lei) [1798919] - [block] block: cleanup the !zoned case in blk_revalidate_disk_zones (Ming Lei) [1798919] - [scsi] block: Enhance blk_revalidate_disk_zones() (Ming Lei) [1798919] - [block] nbd: prevent memory leak (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: add zone open, close, and finish support (Ming Lei) [1798919] - [block] null_blk: add zone open, close, and finish support (Ming Lei) [1798919] - [md] dm: add zone open, close and finish support (Ming Lei) [1798919] - [block] loop: fix no-unmap write-zeroes request behavior (Ming Lei) [1798919] - [block] null_blk: return fixed zoned reads > write pointer (Ming Lei) [1798919] - [block] null_blk: Enable modifying 'submit_queues' after an instance has been configured (Ming Lei) [1798919] - [block] null_blk: Improve nullb_device_##NAME##_store() readability (Ming Lei) [1798919] - [block] block,bfq: Skip tracing hooks if possible (Ming Lei) [1798919] - [block] block: Don't disable interrupts in trigger_softirq() (Ming Lei) [1798919] - [lib] sbitmap: Delete sbitmap_any_bit_clear() (Ming Lei) [1798919] - [block] blk-mq: Delete blk_mq_has_free_tags() and blk_mq_can_queue() (Ming Lei) [1798919] - [block] block: add zone open, close and finish ioctl support (Ming Lei) [1798919] - [uapi] uapi: fix ioctl documentation (Ming Lei) [1798919] - [uapi] uapi: linux/blkzoned.h: fix BLKGETZONESZ and BLKGETNRZONES definitions (Ming Lei) [1798919] - [block] block: add zone open, close and finish operations (Ming Lei) [1798919] - [block] block: Simplify REQ_OP_ZONE_RESET_ALL handling (Ming Lei) [1798919] - [block] block: Remove REQ_OP_ZONE_RESET plugging (Ming Lei) [1798919] - [fs] bdev: Refresh bdev size for disks without partitioning (Ming Lei) [1798919] - [fs] bdev: Factor out bdev revalidation into a common helper (Ming Lei) [1798919] - [block] blk-mq: Make blk_mq_run_hw_queue() return void (Ming Lei) [1798919] - [fs] fcntl: fix typo in RWH_WRITE_LIFE_NOT_SET r/w hint name (Ming Lei) [1798919] - [block] blk-mq: remove needless goto from blk_mq_get_driver_tag (Ming Lei) [1798919] - [block] block: Reduce the amount of memory used for tag sets (Ming Lei) [1798919] - [block] block: Reduce the amount of memory required per request queue (Ming Lei) [1798919] - [block] block: Remove the synchronize_rcu() call from __blk_mq_update_nr_hw_queues() (Ming Lei) [1798919] - [block] block: account statistics for passthrough requests (Ming Lei) [1798919] - [block] blk-stat: Optimise blk_stat_add() (Ming Lei) [1798919] - [block] blk-mq: Embed counters into struct mq_inflight (Ming Lei) [1798919] - [block] blk-mq: Reuse callback in blk_mq_in_flight*() (Ming Lei) [1798919] - [block] blk-mq: Inline status checkers (Ming Lei) [1798919] - [block] block: Document all members of blk_mq_tag_set and bkl_mq_queue_map (Ming Lei) [1798919] - [block] block: Reduce sysfs_lock locking inside blk_cleanup_queue() (Ming Lei) [1798919] - [block] block: Remove "dying" checks from sysfs callbacks (Ming Lei) [1798919] - [block] block: Remove request_queue.nr_queues (Ming Lei) [1798919] - [trace] block: Fix writeback throttling W=1 compiler warnings (Ming Lei) [1798919] - [block] block: Fix three kernel-doc warnings (Ming Lei) [1798919] - [fs] writeback: fix use-after-free in finish_writeback_work() (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Fix sd_zbc_complete() (Ming Lei) [1798919] - [block] nbd:fix memory leak in nbd_get_socket() (Ming Lei) [1798919] - [block] nbd: verify socket is supported during setup (Ming Lei) [1798919] - [block] nbd: handle racing with error'ed out commands (Ming Lei) [1798919] - [block] nbd: protect cmd->status with cmd->lock (Ming Lei) [1798919] - [block] nbd: fix possible sysfs duplicate warning (Ming Lei) [1798919] - [block] nbd: fix possible page fault for nbd disk (Ming Lei) [1798919] - [block] nbd: rename the runtime flags as NBD_RT_ prefixed (Ming Lei) [1798919] - [block] nbd: fix max number of supported devs (Ming Lei) [1798919] - [block] nbd: fix zero cmd timeout handling v2 (Ming Lei) [1798919] - [block] nbd: add missing config put (Ming Lei) [1798919] - [block] nbd: add function to convert blk req op to nbd cmd (Ming Lei) [1798919] - [block] nbd: add set cmd timeout helper (Ming Lei) [1798919] - [block] loop: change queue block size to match when using DIO (Ming Lei) [1798919] - [block] rsxx: add missed destroy_workqueue calls in remove (Ming Lei) [1798919] - [fs] cgroup, writeback: don't switch wbs immediately on dead wbs if the memcg is dead (Ming Lei) [1798919] - [block] block: drbd: remove a stray unlock in __drbd_send_protocol() (Ming Lei) [1798919] - [block] blkcg: make blkcg_print_stat() print stats only for online blkgs (Ming Lei) [1798919] - [block] iocost: don't nest spin_lock_irq in ioc_weight_write() (Ming Lei) [1798919] - [block] blk-rq-qos: fix first node deletion of rq_qos_del() (Ming Lei) [1798919] - [block] blkcg: Fix multiple bugs in blkcg_activate_policy() (Ming Lei) [1798919] - [block] block: Fix elv_support_iosched() (Ming Lei) [1798919] - [block] null_blk: Fix zoned command return code (Ming Lei) [1798919] - [block] blk-wbt: fix performance regression in wbt scale_up/scale_down (Ming Lei) [1798919] - [ata] Revert "libata, freezer: avoid block device removal while system is frozen" (Ming Lei) [1798919] - [mm] bdi: Do not use freezable workqueue (Ming Lei) [1798919] - [uapi] block: pg: add header include guard (Ming Lei) [1798919] - [block] block: fix null pointer dereference in blk_mq_rq_timed_out() (Ming Lei) [1798919] - [block] rq-qos: get rid of redundant wbt_update_limits() (Ming Lei) [1798919] - [block] iocost: bump up default latency targets for hard disks (Ming Lei) [1798919] - [block] iocost: improve nr_lagging handling (Ming Lei) [1798919] - [block] iocost: better trace vrate changes (Ming Lei) [1798919] - [block] block: drop device references in bsg_queue_rq() (Ming Lei) [1798919] - [block] pktcdvd: remove warning on attempting to register non-passthrough dev (Ming Lei) [1798919] - [ata] ata: libahci_platform: Add of_node_put() before loop exit (Ming Lei) [1798919] - [block] block, bfq: push up injection only after setting service time (Ming Lei) [1798919] - [block] block, bfq: increase update frequency of inject limit (Ming Lei) [1798919] - [block] block, bfq: reduce upper bound for inject limit to max_rq_in_driver+1 (Ming Lei) [1798919] - [block] block, bfq: update inject limit only after injection occurred (Ming Lei) [1798919] - [block] block: centralize PI remapping logic to the block layer (Ming Lei) [1798919] - [block] block: use symbolic constants for t10_pi type (Ming Lei) [1798919] - [block] null_blk: format pr_* logs with pr_fmt (Ming Lei) [1798919] - [block] null_blk: match the type of parameter nr_devices (Ming Lei) [1798919] - [block] null_blk: do not fail the module load with zero devices (Ming Lei) [1798919] - [block] block: also check RQF_STATS in blk_mq_need_time_stamp() (Ming Lei) [1798919] - [block] block: make rq sector size accessible for block stats (Ming Lei) [1798919] - [block] bfq: Fix bfq linkage error (Ming Lei) [1798919] - [scsi] scsi: core: remove dummy q->dev check (Ming Lei) [1798919] - [block] block: bypass blk_set_runtime_active for uninitialized q->dev (Ming Lei) [1798919] - [block] null_blk: validate the number of devices (Ming Lei) [1798919] - [block] null_blk: fix module name at log message (Ming Lei) [1798919] - [block] iocost_monitor: Report debt (Ming Lei) [1798919] - [tools] iocost_monitor: Report more info with higher accuracy (Ming Lei) [1798919] - [tools] iocost_monitor: Always use strings for json values (Ming Lei) [1798919] - [block] blk-iocost: Don't let merges push vtime into the future (Ming Lei) [1798919] - [block] blk-iocost: Account force-charged overage in absolute vtime (Ming Lei) [1798919] - [block] blk-iocost: Fix incorrect operation order during iocg free (Ming Lei) [1798919] - [block] bfq: Add per-device weight (Ming Lei) [1798919] - [block] bfq: Extract bfq_group_set_weight from bfq_io_set_weight_legacy (Ming Lei) [1798919] - [block] bfq: Fix the missing barrier in __bfq_entity_update_weight_prio (Ming Lei) [1798919] - [block] block: fix elevator_get_by_features() (Ming Lei) [1798919] - [scsi] sd: Set ELEVATOR_F_ZBD_SEQ_WRITE for ZBC disks (Ming Lei) [1798919] - [block] block: Set ELEVATOR_F_ZBD_SEQ_WRITE for nullblk zoned disks (Ming Lei) [1798919] - [block] block: Delay default elevator initialization (Ming Lei) [1798919] - [block] block: Improve default elevator selection (Ming Lei) [1798919] - [block] block: Introduce elevator features (Ming Lei) [1798919] - [block] block: Change elevator_init_mq() to always succeed (Ming Lei) [1798919] - [block] block: Cleanup elevator_init_mq() use (Ming Lei) [1798919] - [block] paride/pcd: need to check if cd->disk is null in pcd_detect (Ming Lei) [1798919] - [block] paride/pcd: need to set queue to NULL before put_disk (Ming Lei) [1798919] - [block] blkcg: add missing NULL check in ioc_cpd_alloc() (Ming Lei) [1798919] - [block] blkcg: fix missing free on error path of blk_iocost_init() (Ming Lei) [1798919] - [trace] blkcg: blk-iocost: predeclare used structs (Ming Lei) [1798919] - [block] blkcg: add tools/cgroup/iocost_coef_gen.py (Ming Lei) [1798919] - [block] blkcg: add tools/cgroup/iocost_monitor.py (Ming Lei) [1798919] - [block] blkcg: implement blk-iocost (Ming Lei) [1798919] - [block] blk-mq: add optional request->alloc_time_ns (Ming Lei) [1798919] - [block] block: extend 'struct request' via 'request_aux' (Ming Lei) [1798919] - [block] blkcg: s/RQ_QOS_CGROUP/RQ_QOS_LATENCY/ (Ming Lei) [1798919] - [block] block/rq_qos: implement rq_qos_ops->queue_depth_changed() (Ming Lei) [1798919] - [block] block/rq_qos: add rq_qos_merge() (Ming Lei) [1798919] - [block] blkcg: separate blkcg_conf_get_disk() out of blkg_conf_prep() (Ming Lei) [1798919] - [block] blkcg: make ->cpd_init_fn() optional (Ming Lei) [1798919] - [block] blkcg: pass @q and @blkcg into blkcg_pol_alloc_pd_fn() (Ming Lei) [1798919] - [include] writeback: Generalize and expose wb_completion (Ming Lei) [1798919] - [block] null_blk: fix inline misuse (Ming Lei) [1798919] - [block] null_blk: create a helper for req completion (Ming Lei) [1798919] - [block] null_blk: create a helper for zoned devices (Ming Lei) [1798919] - [block] null_blk: create a helper for mem-backed ops (Ming Lei) [1798919] - [block] null_blk: create a helper for badblocks (Ming Lei) [1798919] - [block] null_blk: create a helper for throttling (Ming Lei) [1798919] - [block] null_blk: move duplicate code to callers (Ming Lei) [1798919] - [block] block: remove struct request_queue queue_head (Ming Lei) [1798919] - [fs] writeback, cgroup: inode_switch_wbs() shouldn't give up on wb_switch_rwsem trylock fail (Ming Lei) [1798919] - [fs] writeback, cgroup: Adjust WB_FRN_TIME_CUT_DIV to accelerate foreign inode switching (Ming Lei) [1798919] - [block] blk-mq: Fix memory leak in blk_mq_init_allocated_queue error handling (Ming Lei) [1798919] - [block] loop: Add LOOP_SET_DIRECT_IO to compat ioctl (Ming Lei) [1798919] - [lib] lib: scatterlist: Fix to support no mapped sg (Ming Lei) [1798919] - [block] null_blk: implement REQ_OP_ZONE_RESET_ALL (Ming Lei) [1798919] - [scsi] scsi: implement REQ_OP_ZONE_RESET_ALL (Ming Lei) [1798919] - [block] blk-zoned: implement REQ_OP_ZONE_RESET_ALL (Ming Lei) [1798919] - [block] block: add req op to reset all zones and flag (Ming Lei) [1798919] - [block] block: Fix a comment in blk_cleanup_queue() (Ming Lei) [1798919] - [block] block: Fix spelling in the header above blkg_lookup() (Ming Lei) [1798919] - [kernel] cgroup: Move cgroup_parse_float() implementation out of CONFIG_SYSFS (Ming Lei) [1798919] - [kernel] cgroup: add cgroup_parse_float() (Ming Lei) [1798919] - [block] nbd: replace kill_bdev() with __invalidate_device() again (Ming Lei) [1798919] - [block] nbd: add netlink reconfigure resize support (Ming Lei) [1798919] - [block] nbd: fix crash when the blksize is zero (Ming Lei) [1798919] - [block] nbd: propagate genlmsg_reply return code (Ming Lei) [1798919] - [block] block: loop: mark bvec as ITER_BVEC_FLAG_NO_REF (Ming Lei) [1798919] - [block] loop: properly observe rotational flag of underlying device (Ming Lei) [1798919] - [block] block: Limit zone array allocation size (Ming Lei) [1798919] - [block] block: Fix null_blk_zoned creation failure with small number of zones (Ming Lei) [1798919] - [scsi] sd_zbc: Fix report zones buffer allocation (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Fix sd_zbc_report_zones() buffer allocation (Ming Lei) [1798919] - [md] block: Kill gfp_t argument of blkdev_report_zones() (Ming Lei) [1798919] - [md] dm zoned: Fix zone report handling (Ming Lei) [1798919] - [block] blkcg: implement REQ_CGROUP_PUNT (Ming Lei) [1798919] - [include] blkcg, writeback: Implement wbc_blkcg_css() (Ming Lei) [1798919] - [fs] blkcg, writeback: Add wbc->no_cgroup_owner (Ming Lei) [1798919] - [fs] blkcg, writeback: Rename wbc_account_io() to wbc_account_cgroup_owner() (Ming Lei) [1798919] - [block] cgroup, blkcg: Prepare some symbols for module and !CONFIG_CGROUP usages (Ming Lei) [1798919] - [fs] writeback: synchronize sync(2) against cgroup writeback membership switches (Ming Lei) [1798919] - [block] blk-mq: move cancel of requeue_work to the front of blk_exit_queue (Ming Lei) [1798919] - [block] blk-mq-debugfs: support rq_qos (Ming Lei) [1798919] - [block] null_blk: fix type mismatch null_handle_cmd() (Ming Lei) [1798919] - [block] null_blk: remove duplicate 0 initialization (Ming Lei) [1798919] - [block] null_blk: remove duplicate check for report zone (Ming Lei) [1798919] - [block] null_blk: add zoned config support information (Ming Lei) [1798919] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (Vitaly Kuznetsov) [1807448] - [x86] vmware: Use bool type for vmw_sched_clock (Vitaly Kuznetsov) [1807448] - [x86] vmware: Enable steal time accounting (Vitaly Kuznetsov) [1807448] - [x86] vmware: Add steal time clock support for VMware guests (Vitaly Kuznetsov) [1807448] - [x86] vmware: Remove vmware_sched_clock_setup() (Vitaly Kuznetsov) [1807448] - [x86] vmware: Make vmware_select_hypercall() __init (Vitaly Kuznetsov) [1807448] - [x86] cpu/vmware: Fix platform detection VMWARE_PORT macro (Vitaly Kuznetsov) [1807448] - [x86] cpu/vmware: Use the full form of INL in VMWARE_HYPERCALL, for clang/llvm (Vitaly Kuznetsov) [1807448] - [x86] cpu/vmware: Use the full form of INL in VMWARE_PORT (Vitaly Kuznetsov) [1807448] - [x86] vmware: Add a header file for hypercall definitions (Vitaly Kuznetsov) [1807448] - [x86] vmware: Update platform detection code for VMCALL/VMMCALL hypercalls (Vitaly Kuznetsov) [1807448] - [netdrv] hv_netvsc: Fix unwanted wakeup in netvsc_attach() (Mohammed Gamal) [1815503] - [netdrv] hv_netvsc: make recording RSS hash depend on feature flag (Mohammed Gamal) [1815503] - [netdrv] hv_netvsc: record hardware hash in skb (Mohammed Gamal) [1815503] - [netdrv] hv_netvsc: flag software created hash value (Mohammed Gamal) [1815503] - [video] hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs (Mohammed Gamal) [1816744] - [video] hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver (Mohammed Gamal) [1816744] - [video] hyperv: hyperv_fb: Obtain screen resolution from Hyper-V host (Mohammed Gamal) [1816744] - [uio] uio_hv_generic: drop #ifdef DEBUG (Mohammed Gamal) [1816744] - [hid] hv: Remove dependencies on PAGE_SIZE for ring buffer (Mohammed Gamal) [1816744] - [x86] x86/hyperv: Create and use Hyper-V page definitions (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Drop HV_X64_CONFIGURE_PROFILER definition (Mohammed Gamal) [1816285] - [x86] x86: hv: Add function to allocate zeroed page for Hyper-V (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Add functions to allocate/deallocate page for Hyper-V (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Fix indentation in hv_do_fast_hypercall16() (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Micro-optimize send_ipi_one() (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Make vapic support x2apic mode (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Fix overflow bug in fill_gva_list() (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Zero out the VP ASSIST PAGE on allocation (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Make hv_vcpu_is_preempted() visible (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Implement EOI assist (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Prevent potential NULL pointer dereference (Mohammed Gamal) [1816285] - [x86] Drivers: hv: vmbus: Break out ISA independent parts of mshyperv.h (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Remove unused include (Mohammed Gamal) [1816285] - [net] vsock/virtio: add support for MSG_PEEK (Stefano Garzarella) [1818059]- [include] leds: triggers: new function led_set_trigger_data() (Torez Smith) [1686205] - [leds] leds: triggers: add device attribute support (Torez Smith) [1686205] - [usb] USB: cdc-wdm: fix race between write and disconnect due to flag abuse (Torez Smith) [1686205] - [usb] usb: host: xhci: rcar: Fix typo in compatible string matching (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Set DMA mask correctly (Torez Smith) [1686205] - [usb] USB: storage: ums-realtek: Whitelist auto-delink support (Torez Smith) [1686205] - [usb] USB: storage: ums-realtek: Update module parameter description for auto_delink_en (Torez Smith) [1686205] - [usb] usb: host: ohci: fix a race condition between shutdown and irq (Torez Smith) [1686205] - [usb] usb: hcd: use managed device resources (Torez Smith) [1686205] - [usb] typec: tcpm: fix a typo in the comparison of pdo_max_voltage (Torez Smith) [1686205] - [usb] usb-storage: Add new JMS567 revision to unusual_devs (Torez Smith) [1686205] - [usb] usb: chipidea: udc: don't do hardware access if gadget has stopped (Torez Smith) [1686205] - [usb] usbtmc: more sanity checking for packet size (Torez Smith) [1686205] - [usb] usb: udc: lpc32xx: silence fall-through warning (Torez Smith) [1686205] - [usb] usb: chipidea: imx: fix EPROBE_DEFER support during driver probe (Torez Smith) [1686205] - [usb] usb: host: fotg2: restart hcd after port reset (Torez Smith) [1686205] - [usb] USB: CDC: fix sanity checks in CDC union parser (Torez Smith) [1686205] - [usb] usb: cdc-acm: make sure a refcount is taken early enough (Torez Smith) [1686205] - [usb] USB: serial: option: add the BroadMobi BM818 card (Torez Smith) [1686205] - [usb] USB: serial: option: Add Motorola modem UARTs (Torez Smith) [1686205] - [usb] USB: core: Fix races in character device registration and deregistraion (Torez Smith) [1686205] - [usb] usb: gadget: mass_storage: Fix races between fsg_disable and fsg_set_alt (Torez Smith) [1686205] - [usb] usb: gadget: composite: Clear "suspended" on reset/disconnect (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Fix sysfs interface of "role" (Torez Smith) [1686205] - [usb] usb: setup authorized_default attributes using usb_bus_notify (Torez Smith) [1686205] - [usb] usb: iowarrior: fix deadlock on disconnect (Torez Smith) [1686205] - [usb] Revert "USB: rio500: simplify locking" (Torez Smith) [1686205] - [usb] usb: usbfs: fix double-free of usb memory upon submiturb error (Torez Smith) [1686205] - [usb] usb: yurex: Fix use-after-free in yurex_delete (Torez Smith) [1686205] - [usb] USB: serial: option: add D-Link DWM-222 device ID (Torez Smith) [1686205] - [usb] USB: serial: option: Add support for ZTE MF871A (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Ignore unsupported/unknown alternate mode requests (Torez Smith) [1686205] - [usb] xhci: Fix NULL pointer dereference at endpoint zero reset (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Fix timeout in xhci_suspend() (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: Fix uninitilized symbol error (Torez Smith) [1686205] - [usb] usb: typec: tcpm: remove tcpm dir if no children (Torez Smith) [1686205] - [usb] usb: typec: tcpm: free log buf memory when remove debug file (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Add NULL check before dereferencing config (Torez Smith) [1686205] - [tools] tools headers UAPI: Sync usbdevice_fs.h with the kernels to get new ioctl (Torez Smith) [1686205] - [usb] xhci: Fix crash if scatter gather is used with Immediate Data Transfer (IDT) (Torez Smith) [1686205] - [usb] usb: usb251xb: Reallow swap-dx-lanes to apply to the upstream port (Torez Smith) [1686205] - [usb] Revert "usb: usb251xb: Add US port lanes inversion property" (Torez Smith) [1686205] - [documentation] Revert "usb: usb251xb: Add US lanes inversion dts-bindings" (Torez Smith) [1686205] - [usb] usb: wusbcore: fix unbalanced get/put cluster_id (Torez Smith) [1686205] - [usb] usb/hcd: Fix a NULL vs IS_ERR() bug in usb_hcd_setup_local_mem() (Torez Smith) [1686205] - [usb] usb-storage: Add a limitation for blk_queue_max_hw_sectors() (Torez Smith) [1686205] - [usb] usb: pci-quirks: Minor cleanup for AMD PLL quirk (Torez Smith) [1686205] - [usb] usb: pci-quirks: Correct AMD PLL quirk detection (Torez Smith) [1686205] - [usb] vfs: Convert gadgetfs to use the new mount API (Torez Smith) [1686205] - [usb] Revert "usb: gadget: storage: Remove warning message" (Torez Smith) [1686205] - [documentation] Revert "dt-bindings: add binding for USBSS-DRD controller." (Torez Smith) [1686205] - [usb] Revert "usb:gadget Separated decoding functions from dwc3 driver." (Torez Smith) [1686205] - [usb] Revert "usb:gadget Patch simplify usb_decode_set_clear_feature function." (Torez Smith) [1686205] - [usb] Revert "usb:gadget Simplify usb_decode_get_set_descriptor function." (Torez Smith) [1686205] - [usb] Revert "usb:cdns3 Add Cadence USB3 DRD Driver" (Torez Smith) [1686205] - [usb] Revert "usb:cdns3 Fix for stuck packets in on-chip OUT buffer." (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ehci: Fix example warnings (Torez Smith) [1686205] - [usb] usb :fsl: Change string format for errata property (Torez Smith) [1686205] - [usb] usb: host: Stops USB controller init if PLL fails to lock (Torez Smith) [1686205] - [usb] usb: phy: Workaround for USB erratum-A005728 (Torez Smith) [1686205] - [usb] usb: fsl: Set USB_EN bit to select ULPI phy (Torez Smith) [1686205] - [usb] usb: Handle USB3 remote wakeup for LPM enabled devices correctly (Torez Smith) [1686205] - [usb] drivers/usb/typec/tps6598x.c: fix 4CC cmd write (Torez Smith) [1686205] - [usb] drivers/usb/typec/tps6598x.c: fix portinfo width (Torez Smith) [1686205] - [usb] usb: storage: scsiglue: Do not skip VPD if try_vpd_pages is set (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add a workaround for a race condition of workqueue (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: remove redundant assignment to ret (Torez Smith) [1686205] - [usb] usb: dwc2: use a longer AHB idle timeout in dwc2_core_reset() (Torez Smith) [1686205] - [usb] USB: gadget: function: fix issue Unneeded variable: "value" (Torez Smith) [1686205] - [usb] usb: phy: phy-mxs-usb: add imx7ulp support (Torez Smith) [1686205] - [usb] usb:cdns3 Fix for stuck packets in on-chip OUT buffer (Torez Smith) [1686205] - [usb] usb:cdns3 Add Cadence USB3 DRD Driver (Torez Smith) [1686205] - [usb] usb:gadget Simplify usb_decode_get_set_descriptor function (Torez Smith) [1686205] - [usb] usb:gadget Patch simplify usb_decode_set_clear_feature function (Torez Smith) [1686205] - [usb] usb:gadget Separated decoding functions from dwc3 driver (Torez Smith) [1686205] - [documentation] dt-bindings: add binding for USBSS-DRD controller (Torez Smith) [1686205] - [usb] usb: dwc3: pci: add support for TigerLake Devices (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add ID for isodebug v1 (Torez Smith) [1686205] - [usb] usb: host: Fix excessive alignment restriction for local memory allocations (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use struct platform_callback pointer (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use renesas_usbhs_platform_info on of_device_id.data (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add a common function for the .get_id (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: move device tree properties parsing (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add struct device * declaration in usbhs_probe() (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add has_new_pipe_configs flag (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use dev_of_node macro instead of open coded (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Remove type member from renesas_usbhs_driver_param (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use a specific flag instead of type for multi_clks (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Avoid to write platform_data's value (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: move macros from mod.c to the mod.h (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: remove notify_hotplug callback (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: revise the irq_vbus comments (Torez Smith) [1686205] - [usb] USB: core: Fix compiler warnings in devio.c (Torez Smith) [1686205] - [usb] USB: core: Remove usbfs_mutex (Torez Smith) [1686205] - [usb] usb: clean up some of the computations in adu_read (Torez Smith) [1686205] - [usb] scsi: usb: image: microtek: use sg helper to iterate over scatterlist (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use struct assignment instead of memcpy() (Torez Smith) [1686205] - [usb] USB: core: correct a spelling mistake in the comment (Torez Smith) [1686205] - [usb] usb: dwc3: remove unused @lock member of dwc3_ep struct (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Add Support for Intel Elkhart Lake Devices (Torez Smith) [1686205] - [usb] usb: Replace snprintf with scnprintf in gether_get_ifname (Torez Smith) [1686205] - [uapi] USB: fix types in uapi include (Torez Smith) [1686205] - [usb] USB: serial: option: add support for GosunCn ME3630 RNDIS mode (Torez Smith) [1686205] - [usb] xhci: detect USB 3.2 capable host controllers correctly (Torez Smith) [1686205] - [usb] usb: xhci: Don't try to recover an endpoint if port is in error state (Torez Smith) [1686205] - [usb] usb: gadget: ether: Fix race between gether_disconnect and rx_submit (Torez Smith) [1686205] - [usb] usb: gadget: storage: Remove warning message (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Add support for disabling U1 and U2 entries (Torez Smith) [1686205] - [usb] usb: gadget: send usb_gadget as an argument in get_config_params (Torez Smith) [1686205] - [documentation] doc: dt: bindings: usb: dwc3: Update entries for disabling U1 and U2 (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Use of_clk_get_parent_count() (Torez Smith) [1686205] - [usb] usb: dwc3: Fix core validation in probe, move after clocks are enabled (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Improve error handling (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Start USB in 'host mode' on the SDM845 (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Add support for booting with ACPI (Torez Smith) [1686205] - [usb] Revert "usb: dwc2: host: Setting qtd to NULL after freeing it" (Torez Smith) [1686205] - [usb] usb: gadget: net2272: remove redundant assignments to pointer 's' (Torez Smith) [1686205] - [usb] usb: gadget: Zero ffs_io_data (Torez Smith) [1686205] - [usb] USB: omap_udc: Remove unneeded variable (Torez Smith) [1686205] - [usb] fotg210-udc: Remove unneeded variable (Torez Smith) [1686205] - [usb] usb: gadget: at91_udc: Remove unneeded variable (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Enhance role switch support (Torez Smith) [1686205] - [usb] usb: gadget: u_audio: Fixed variable declaration coding style issue (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: data_len used before properly set (Torez Smith) [1686205] - [usb] USB: dwc2: Don't turn off the usbphy in suspend if wakeup is enabled (Torez Smith) [1686205] - [documentation] Documentation: dt-bindings: Add snps, need-phy-for-wake for dwc2 USB (Torez Smith) [1686205] - [usb] usb: dwc2: Force 8bit UTMI width for Samsung Exynos SoCs (Torez Smith) [1686205] - [usb] usb: dwc3: meson-g12a: Add support for IRQ based OTG switching (Torez Smith) [1686205] - [usb] usb: dwc2: Use generic PHY width in params setup (Torez Smith) [1686205] - [usb] usb: host: fotg2: add device tree probing (Torez Smith) [1686205] - [usb] usb: isp1362: Spelling s/eclusive/exclusive/ (Torez Smith) [1686205] - [usb] USB: add usbfs ioctl to retrieve the connection parameters (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Fix Wunused-const-variable (Torez Smith) [1686205] - [usb] usb: chipidea: udc: workaround for endpoint conflict issue (Torez Smith) [1686205] - dt-bindings: usb: renesas_gen3: Rename bindings documentation file (Torez Smith) [1686205] - dt-bindings: usb: renesas_usbhs: Rename bindings documentation file (Torez Smith) [1686205] - [documentation] docs: power: convert docs to ReST and rename to *.rst (Torez Smith) [1686205] - [usb] docs: kbuild: convert docs to ReST and rename to *.rst (Torez Smith) [1686205] - [usb] usb: chipidea: msm: Use devm_platform_ioremap_resource() (Torez Smith) [1686205] - [usb] usb: chipidea: imx: Use devm_platform_ioremap_resource() (Torez Smith) [1686205] - [usb] usb: chipidea: Use dev_err() instead of pr_err() (Torez Smith) [1686205] - [usb] usb: chipidea: imx: "fsl, usbphy" phandle is not mandatory now (Torez Smith) [1686205] - [usb] usb: chipidea: imx: add imx7ulp support (Torez Smith) [1686205] - [usb] usb: typec: Make sure an alt mode exist before getting its partner (Torez Smith) [1686205] - [usb] Revert "usb: mtu3: fix up undefined reference to usb_debug_root" (Torez Smith) [1686205] - [usb] USB: sisusbvga: Remove unneeded variable (Torez Smith) [1686205] - [usb] usb: typec: tcpm: fusb302: simplify getting the adapter of a client (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: add runtime pm workaround (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: enable runtime pm support (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: fix return value check in lpc32xx_udc_probe() (Torez Smith) [1686205] - [usb] usb: gadget: dwc2: fix zlp handling (Torez Smith) [1686205] - [usb] usb: dwc2: Set actual frame number for completed ISOC transfer for none DDMA (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: allocate descriptor with GFP_ATOMIC (Torez Smith) [1686205] - [usb] usb: gadget: fusb300_udc: Fix memory leak of fusb300->ep (Torez Smith) [1686205] - [usb] usb: phy: mxs: Disable external charger detect in mxs_phy_hw_init() (Torez Smith) [1686205] - [usb] usb: dwc2: Fix DMA cache alignment issues (Torez Smith) [1686205] - [usb] usb: dwc2: host: Fix wMaxPacketSize handling (fix webcam regression) (Torez Smith) [1686205] - [usb] USB: move usb debugfs directory creation to the usb common core (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: remove unneeded variable frame (Torez Smith) [1686205] - [usb] media: usb/gadget/f_uvc: set device_caps in struct video_device (Torez Smith) [1686205] - [usb] usbip: Replace unused kvec array with single variable in vhci_send_cmd_unlink() (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: remove controlling PWEN/EXTLP support (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: remove sudmac support (Torez Smith) [1686205] - [usb] usb: xhci: Add Clear_TT_Buffer (Torez Smith) [1686205] - [usb] usb: Add devaddr in struct usb_device (Torez Smith) [1686205] - [usb] USB: Fix chipmunk-like voice when using Logitech C270 for recording audio (Torez Smith) [1686205] - [usb] USB: usb-storage: Add new ID to ums-realtek (Torez Smith) [1686205] - [usb] USB: use genalloc for USB HCs with local memory (Torez Smith) [1686205] - [usb] usb: phy: mv-usb: Remove set but not used variable 'phy' (Torez Smith) [1686205] - [usb] usb: ftdi-elan: fix possible condition with no effect (if == else) (Torez Smith) [1686205] - [usb] USB: ohci-spear: Remove set but not used variable 'ohci' (Torez Smith) [1686205] - [usb] USB: atm: ueagle-atm.c: remove redundant license text (Torez Smith) [1686205] - [usb] USB: atm: ueagle-atm.c: fix SPDX tag to be BSD2 (Torez Smith) [1686205] - [usb] usb: ohci-s3c2410: Remove set but not used variable 'hcd' (Torez Smith) [1686205] - [usb] usb: cdc-wdm: remove redundant assignment to rv (Torez Smith) [1686205] - [usb] usb: host: ohci-st: Remove set but not used variable 'ohci' (Torez Smith) [1686205] - [usb] usb: host: ehci-st: Remove set but not used variable 'ehci' (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: fix memory leak in do_flash (Torez Smith) [1686205] - [include] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Torez Smith) [1686205] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Torez Smith) [1686205] - [usb] usbip: usbip_host: fix stub_dev lock context imbalance regression (Torez Smith) [1686205] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 (Torez Smith) [1686205] - [usb] usb: avoid redundant allocation and free of memory (Torez Smith) [1686205] - [usb] signal/usb: Replace kill_pid_info_as_cred with kill_pid_usb_asyncio (Torez Smith) [1686205] - [usb] xhci: Use zu for printing size_t type (Torez Smith) [1686205] - [usb] xhci: Convert xhci_handshake() to use readl_poll_timeout_atomic() (Torez Smith) [1686205] - [usb] xhci: Fix immediate data transfer if buffer is already DMA mapped (Torez Smith) [1686205] - [usb] usb: xhci: avoid null pointer deref when bos field is NULL (Torez Smith) [1686205] - [usb] usb: xhci: Fix a potential null pointer dereference in xhci_debugfs_create_endpoint() (Torez Smith) [1686205] - [usb] xhci: update bounce buffer with correct sg num (Torez Smith) [1686205] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Torez Smith) [1686205] - [usb] USB: serial: option: add Telit 0x1260 and 0x1261 compositions (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add Allied Telesis VT-Kit3 (Torez Smith) [1686205] - [usb] USB: serial: option: add support for Simcom SIM7500/SIM7600 RNDIS mode (Torez Smith) [1686205] - [tools] treewide: Add SPDX license identifier - Makefile/Kconfig (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add support for r7s9210 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add support for RZ/A2 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: support byte addressable CFIFO (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add support for CNEN bit (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: move flags to param (Torez Smith) [1686205] - [usb] usb: core: hub: Disable hub-initiated U1/U2 (Torez Smith) [1686205] - [usb] usb: core: hub: Enable/disable U1/U2 in configured state (Torez Smith) [1686205] - [usb] USB: rio500: simplify locking (Torez Smith) [1686205] - [usb] USB: rio500: fix memory leak in close after disconnect (Torez Smith) [1686205] - [usb] USB: rio500: refuse more than one device at a time (Torez Smith) [1686205] - [usb] usbip: usbip_host: fix BUG: sleeping function called from invalid context (Torez Smith) [1686205] - [usb] USB: sisusbvga: fix oops in error path of sisusb_probe (Torez Smith) [1686205] - [usb] USB: Add LPM quirk for Surface Dock GigE adapter (Torez Smith) [1686205] - [usb] usb: mtu3: fix up undefined reference to usb_debug_root (Torez Smith) [1686205] - [usb] USB: Fix slab-out-of-bounds write in usb_get_bos_descriptor (Torez Smith) [1686205] - [usb] usb: remove redundant 'default n' from Kconfig-s (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use specific struct instead of USBHS_TYPE_* enums (Torez Smith) [1686205] - [usb] USB: OHCI: remove space before open square bracket '[' (Torez Smith) [1686205] - [usb] usb: exynos: add workaround for the USB device bindings conflict (Torez Smith) [1686205] - [usb] usbip: usbip_host: cleanup do_rebind() return path (Torez Smith) [1686205] - [usb] USB: serial: f81232: clear overrun flag (Torez Smith) [1686205] - [usb] USB: serial: f81232: fix interrupt worker not stop (Torez Smith) [1686205] - [usb] usb: dwc3: Rename DWC3_DCTL_LPM_ERRATA (Torez Smith) [1686205] - [usb] usb: dwc3: Fix default lpm_nyet_threshold value (Torez Smith) [1686205] - [usb] usb: dwc3: debug: Print GET_STATUS(device) tracepoint (Torez Smith) [1686205] - [usb] usb: dwc3: Do core validation early on probe (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Set lpm_capable (Torez Smith) [1686205] - [usb] usb: gadget: atmel: tie wake lock to running clock (Torez Smith) [1686205] - [usb] usb: gadget: atmel: support USB suspend (Torez Smith) [1686205] - [usb] usb: gadget: atmel_usba_udc: simplify setting of interrupt-enabled mask (Torez Smith) [1686205] - [usb] dwc2: gadget: Fix completed transfer size calculation in DDMA (Torez Smith) [1686205] - [usb] usb: dwc2: Set lpm mode parameters depend on HW configuration (Torez Smith) [1686205] - [usb] usb: dwc2: Fix channel disable flow (Torez Smith) [1686205] - [usb] usb: dwc2: Set actual frame number for completed ISOC transfer (Torez Smith) [1686205] - [usb] usb: gadget: do not use __constant_cpu_to_le16 (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Increase descriptors count for ISOC's (Torez Smith) [1686205] - [usb] usb: dwc3: move synchronize_irq() out of the spinlock protected block (Torez Smith) [1686205] - [usb] usb: dwc3: Free resource immediately after use (Torez Smith) [1686205] - [usb] usb: dwc3: of-simple: Convert to bulk clk API (Torez Smith) [1686205] - [usb] usb: dwc2: Delayed status support (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: rework interrupt handling (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: add support for stotg04 phy (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: properly setup phy interrupts (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: simplify vbus handling (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: simplify probe (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Move gadget phy init into core phy init (Torez Smith) [1686205] - [usb] usb: dwc2: Move phy init into core (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Replace phyif with phy_utmi_width (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Remove duplicated phy init (Torez Smith) [1686205] - [usb] usb: dwc2: Move UTMI_PHY_DATA defines closer (Torez Smith) [1686205] - [usb] usb: dwc2: optionally assert phy reset when waking up (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: Document quirk to reset PHY upon wakeup (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: document the vbus-supply property (Torez Smith) [1686205] - [usb] USB: UDC: net22{80, 72}: remove mistaken test of req->zero (Torez Smith) [1686205] - [usb] USB: UDC: net2280: Remove redundant "if" condition (Torez Smith) [1686205] - [usb] usb: gadget: fsl: fix link error against usb-gadget module (Torez Smith) [1686205] - [usb] usb: gadget: f_ncm: Add OS descriptor support (Torez Smith) [1686205] - [usb] usb: gadget: f_ncm: Fix NTP-32 support (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Reject LPM token during Control transfers (Torez Smith) [1686205] - [usb] USB: Export usb_wakeup_enabled_descendants() (Torez Smith) [1686205] - [usb] usb: dwc2: bus suspend/resume for hosts with DWC2_POWER_DOWN_PARAM_NONE (Torez Smith) [1686205] - [usb] usb: dwc3: Add Amlogic G12A DWC3 glue (Torez Smith) [1686205] - [usb] usb: dwc2: Add Amlogic G12A DWC2 Params (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc3: Add Amlogic G12A DWC3 Glue Bindings (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: Add Amlogic G12A DWC2 Compatible (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: don't free buffer prematurely (Torez Smith) [1686205] - [usb] USB: serial: io_edgeport: fix up switch fall-through comments (Torez Smith) [1686205] - [usb] usb: usb251xb: Add US port lanes inversion property (Torez Smith) [1686205] - [usb] usb: usb251xb: Create a ports field collector method (Torez Smith) [1686205] - [documentation] usb: usb251xb: Add US lanes inversion dts-bindings (Torez Smith) [1686205] - [usb] usb: isp1760-hcd: Fix fall-through annotations (Torez Smith) [1686205] - [usb] usb: musb: dsps: Use dev_get_drvdata() (Torez Smith) [1686205] - [usb] usb: musb: jz4740: obtain USB PHY from devicetree (Torez Smith) [1686205] - [usb] usb: musb: jz4740: Let the platform probe the PHY (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Add usb-phy property to the jz4740-musb node (Torez Smith) [1686205] - [soc] soc: sunxi: Fix missing dependency on REGMAP_MMIO (Torez Smith) [1686205] - [usb] usb: musb: omap2430: Add support for idling phy when musb is idle (Torez Smith) [1686205] - [usb] usb: musb: Silence error about blacklisting hubs if !CONFIG_USB (Torez Smith) [1686205] - [usb] usbip: vhci_hcd: Mark expected switch fall-through (Torez Smith) [1686205] - [usb] UAS: fix alignment of scatter/gather segments (Torez Smith) [1686205] - [include] USB: serial: drop unused iflag macro (Torez Smith) [1686205] - [usb] USB: serial: drop unnecessary goto (Torez Smith) [1686205] - [usb] USB: serial: clean up throttle handling (Torez Smith) [1686205] - [usb] USB: serial: fix unthrottle races (Torez Smith) [1686205] - [usb] USB: cdc-acm: clean up throttle handling (Torez Smith) [1686205] - [usb] USB: cdc-acm: fix unthrottle races (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: fix missing unlock on error in ccg_cmd_write_flash_row() (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add support for r8a77470 (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Add r8a774c0 support (Torez Smith) [1686205] - [usb] usb: xhci: add endpoint context tracing when an endpoint is added (Torez Smith) [1686205] - [usb] xhci: Add tracing for input control context (Torez Smith) [1686205] - [usb] xhci: add port and bus number to port dynamic debugging (Torez Smith) [1686205] - [usb] usb: xhci: add Immediate Data Transfer support (Torez Smith) [1686205] - [usb] usb: usb251xb: Add an empty hub' i2c-bus segment checker (Torez Smith) [1686205] - [usb] USB: serial: spcp8x5: simplify init_termios (Torez Smith) [1686205] - [usb] USB: serial: oti6858: simplify init_termios (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: simplify init_termios (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: drop bogus initial cflag (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: clean up initial-termios handling (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: drop unused termios (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: drop unused driver data flag (Torez Smith) [1686205] - [usb] USB: serial: fix initial-termios handling (Torez Smith) [1686205] - [usb] USB: yurex: Fix protection fault after device removal (Torez Smith) [1686205] - [usb] usb: usbip: fix isoc packet num validation in get_pipe (Torez Smith) [1686205] - [usb] usb/hcd: Send a uevent signaling that the host controller had died (Torez Smith) [1686205] - [usb] usb: typec: Add driver for NVIDIA Alt Modes (Torez Smith) [1686205] - [usb] usb: typec: displayport: Export probe and remove functions (Torez Smith) [1686205] - [usb] usb: typec: ucsi: Support for DisplayPort alt mode (Torez Smith) [1686205] - [usb] usb: typec: ucsi: Preliminary support for alternate modes (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: add firmware flashing support (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: add get_fw_info function (Torez Smith) [1686205] - [usb] usb: usb251xb: Lock i2c-bus segment the hub resides (Torez Smith) [1686205] - [usb] usb: dwc3: Allow building USB_DWC3_QCOM without EXTCON (Torez Smith) [1686205] - [usb] usbip: stub_rx: tidy the indenting in is_clear_halt_cmd() (Torez Smith) [1686205] - [usb] USB: serial: digi_acceleport: clean up set_termios (Torez Smith) [1686205] - [usb] USB: serial: digi_acceleport: clean up modem-control handling (Torez Smith) [1686205] - [usb] USB: core: Fix bug caused by duplicate interface PM usage counter (Torez Smith) [1686205] - [usb] usb: mtu3: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: chipidea: msm: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: dwc2: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: misc: usb3503: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: xhci-mtk: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Revert "Resolve fixed power role contract setup" (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Implement start_toggling for all port-types (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Notify the tcpc to start connection-detection for SRPs (Torez Smith) [1686205] - [usb] usb: host: use usb_endpoint_maxp instead of usb_maxpacket (Torez Smith) [1686205] - [usb] USB: dummy-hcd: Fix failure to give back unlinked URBs (Torez Smith) [1686205] - [usb] USB: core: Don't unbind interfaces following device reset failure (Torez Smith) [1686205] - [usb] usb-storage: Set virt_boundary_mask to avoid SG overflows (Torez Smith) [1686205] - [usb] USB: core: Fix unterminated string returned by usb_string() (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Convert the generic EHCI binding to YAML (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Convert the generic OHCI binding to YAML (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Convert USB HCD generic binding to YAML (Torez Smith) [1686205] - [usb] USB: hub: Remove returned value 'status' since never used (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Add Tegra186 XUSB support (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Selectively program IPFS (Torez Smith) [1686205] - [documentation] dt-bindings: usb: xhci-tegra: Add Tegra186 support (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: drop the vbus GPIO (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: disable the regulator if the overcurrent irq fired (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: let the regulator framework keep track of use count (Torez Smith) [1686205] - [usb] USB: serial: pl2303: fix tranceiver suspend mode (Torez Smith) [1686205] - [usb] USB: serial: pl2303: fix non-supported xon/xoff (Torez Smith) [1686205] - [usb] USB: serial: option: add Olicard 600 (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add new device id (Torez Smith) [1686205] - [usb] usb: u132-hcd: fix resource leak (Torez Smith) [1686205] - [usb] usb: cdc-acm: fix race during wakeup blocking TX traffic (Torez Smith) [1686205] - [usb] usb: mtu3: fix EXTCON dependency (Torez Smith) [1686205] - [usb] usb: usb251xb: fix to avoid potential NULL pointer dereference (Torez Smith) [1686205] - [usb] usb: core: Try generic PHY_MODE_USB_HOST if usb_phy_roothub_set_mode fails (Torez Smith) [1686205] - [usb] usb: introduce usb_ep_type_string() function (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Make fusb302_irq_work static (Torez Smith) [1686205] - [usb] usb: u132-hcd: fix potential NULL pointer dereference (Torez Smith) [1686205] - [usb] usb: typec: wcove: Provide fwnode for the port (Torez Smith) [1686205] - [usb] usb: core: Add PM runtime calls to usb_hcd_platform_shutdown (Torez Smith) [1686205] - [usb] usb: sierra: fix a missing check of device_create_file (Torez Smith) [1686205] - [usb] usb: mtu3: add a function to switch mailbox state to string (Torez Smith) [1686205] - [usb] usb: mtu3: add tracepoints to help debug (Torez Smith) [1686205] - [usb] usb: mtu3: move vbus and mode debugfs interfaces into mtu3_debugfs.c (Torez Smith) [1686205] - [usb] usb: mtu3: add debugfs interface files (Torez Smith) [1686205] - [usb] usb: mtu3: supports new QMU format (Torez Smith) [1686205] - [usb] usb: mtu3: rebuild qmu_gpd struct to prepare to support new QMU format (Torez Smith) [1686205] - [usb] usb: mtu3: fix transfer error of USB3 Gen2 isoc (Torez Smith) [1686205] - [usb] usb: mtu3: rebuild the code of getting vbus regulator (Torez Smith) [1686205] - [usb] usb: mtu3: remove unnecessary local variable @req (Torez Smith) [1686205] - [usb] usb: mtu3: print useful information also for device and host modes (Torez Smith) [1686205] - [usb] usb: mtu3: check return value of devm_extcon_register_notifier() (Torez Smith) [1686205] - [usb] xhci: Don't let USB3 ports stuck in polling state prevent suspend (Torez Smith) [1686205] - [usb] usb: xhci: dbc: Don't free all memory with spinlock held (Torez Smith) [1686205] - [usb] xhci: Fix port resume done detection for SS ports with LPM enabled (Torez Smith) [1686205] - [usb] USB: serial: mos7720: fix mos_parport refcount imbalance on error path (Torez Smith) [1686205] - [usb] USB: gadget: f_hid: fix deadlock in f_hidg_write() (Torez Smith) [1686205] - [usb] usb: gadget: net2272: Fix net2272_dequeue() (Torez Smith) [1686205] - [usb] usb: gadget: net2280: Fix net2280_dequeue() (Torez Smith) [1686205] - [usb] usb: gadget: net2280: Fix overrun of OUT messages (Torez Smith) [1686205] - [usb] usb: dwc3: pci: add support for Comet Lake PCH ID (Torez Smith) [1686205] - [usb] usb: usb251xb: Remove unnecessary comparison of unsigned integer with >= 0 (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Add __printf attribute to fusb302_log function (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Improve suspend/resume handling (Torez Smith) [1686205] - [usb] usb: typec: fusb302: 2 small misc. fixes (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Fix fusb302_handle_togdone_src Ra handling (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Check vconn is off when we start toggling (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Fold fusb302_set_cc_pull into tcpm_set_cc (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Refactor / simplify tcpm_set_cc() (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Make fusb302_set_cc_polarity also set pull ups / downs (Torez Smith) [1686205] - [usb] usb: typec: pi3usb30532: Keep orientation when setting mux to safe mode (Torez Smith) [1686205] - [usb] usb: typec: altmodes/displayport: Fall back to multi-func pins (Torez Smith) [1686205] - [usb] usbip: Remove unnecessary null check (Torez Smith) [1686205] - [include] USB: usb.h: tweak struct urb to remove wasted space (Torez Smith) [1686205] - [usb] usb: common: Consider only available nodes for dr_mode (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Try PD-2.0 if sink does not respond to 3.0 source-caps (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Add XHCI_TRUST_TX_LENGTH quirk (Torez Smith) [1686205] - [usb] usb: typec: Fix unchecked return value (Torez Smith) [1686205] - [usb] USB: serial: option: set driver_info for SIM5218 and compatibles (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add additional NovaTech products (Torez Smith) [1686205] - [usb] USB: serial: option: add support for Quectel EM12 (Torez Smith) [1686205] - [usb] wusb: Remove unnecessary static function ckhdid_printf (Torez Smith) [1686205] - [usb] usb: core: make default autosuspend delay configurable (Torez Smith) [1686205] - [usb] usb: core: Fix typo in description of "authorized_default" (Torez Smith) [1686205] - [usb] usb: chipidea: Refactor USB PHY selection and keep a single PHY (Torez Smith) [1686205] - [usb] usb: chipidea: Grab the (legacy) USB PHY by phandle first (Torez Smith) [1686205] - [usb] usb: chipidea: imx: set power polarity (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ci-hdrc-usb2: add property power-active-high (Torez Smith) [1686205] - [usb] usb: chipidea: imx: remove unused header files (Torez Smith) [1686205] - [usb] usb: chipidea: tegra: Fix missed ci_hdrc_remove_device() (Torez Smith) [1686205] - [usb] usb: core: add option of only authorizing internal devices (Torez Smith) [1686205] - [usb] usb: typec: tps6598x: handle block writes separately with plain-I2C adapters (Torez Smith) [1686205] - [usb] usb: xhci: Fix for Enabling USB ROLE SWITCH QUIRK on INTEL_SUNRISEPOINT_LP_XHCI (Torez Smith) [1686205] - [usb] usb: xhci: fix build warning - missing prototype (Torez Smith) [1686205] - [usb] usb: xhci: dbc: Fixing typo error (Torez Smith) [1686205] - [usb] usb: xhci: remove unused member 'parent' in xhci_regset struct (Torez Smith) [1686205] - [usb] xhci: tegra: Prevent error pointer dereference (Torez Smith) [1686205] - [usb] USB: serial: option: add Telit ME910 ECM composition (Torez Smith) [1686205] - [usb] usb: core: Replace hardcoded check with inline function from usb.h (Torez Smith) [1686205] - [usb] usb: core: skip interfaces disabled in devicetree (Torez Smith) [1686205] - [usb] usb: typec: mux: remove redundant check on variable match (Torez Smith) [1686205] - [usb] USB: serial: cp210x: fix GPIO in autosuspend (Torez Smith) [1686205] - [usb] usb: dwc3: drd: Defer probe if extcon device is not found (Torez Smith) [1686205] - [usb] cdc-wdm: pass return value of recover_from_urb_loss (Torez Smith) [1686205] - [usb] usb: host: oxu210hp-hcd: remove set but not used variables 'uframes, transfer_buffer_length' (Torez Smith) [1686205] - [usb] USB: renesas_usbhs: fix spelling mistake "doens't" -> "doesn't" (Torez Smith) [1686205] - [usb] usb: wusbcore: wa-xfer: use struct_size() helper (Torez Smith) [1686205] - [usb] usb: core: config: Use struct_size() in kzalloc() (Torez Smith) [1686205] - [usb] usb: dwc2: use struct_size() in kzalloc() (Torez Smith) [1686205] - [usb] usb: typec: mux: Fix unsigned comparison with less than zero (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add ID for Hjelmslund Electronics USB485 (Torez Smith) [1686205] - [usb] usb: typec: mux: Find the muxes by also matching against the device node (Torez Smith) [1686205] - [usb] usb: typec: Find the ports by also matching against the device node (Torez Smith) [1686205] - [usb] usb: roles: Find the muxes by also matching against the device node (Torez Smith) [1686205] - [usb] usb: typec: Rationalize the API for the muxes (Torez Smith) [1686205] - [usb] usb: typec: tps6598x: Check mode of operation (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Remove unused functions (Torez Smith) [1686205] - [usb] USB: musb: mark expected switch fall-through (Torez Smith) [1686205] - [usb] usb: phy: twl6030-usb: fix possible use-after-free on remove (Torez Smith) [1686205] - [usb] usb: misc: usbtest: add super-speed isoc support (Torez Smith) [1686205] - [usb] usb: dwc3: Reset num_trbs after skipping (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: don't enable interrupt when disabling endpoint (Torez Smith) [1686205] - [usb] scsi: uas: Use scsi_et_resid() where appropriate (Torez Smith) [1686205] - [usb] usb: host: oxu210hp-hcd: fix indentation issue (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: add vbus and overcurrent gpios (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: add a helper pointer to &pdev->dev (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: add a new line after local variables (Torez Smith) [1686205] - [usb] usb: musb: Kconfig: Drop dependency on CONFIG_USB for jz4740 (Torez Smith) [1686205] - [usb] usb: musb: Kconfig: Drop dependency on MACH_JZ4740 for jz4740 (Torez Smith) [1686205] - [usb] usb: musb: jz4740: Add support for devicetree (Torez Smith) [1686205] - [documentation] Documentation: dt: Add binding info for jz4740-musb driver (Torez Smith) [1686205] - [usb] USB: musb: fix indentation issue on a return statement (Torez Smith) [1686205] - [usb] fotg210-udc: pass struct device to DMA API functions (Torez Smith) [1686205] - [usb] fotg210-udc: remove a bogus dma_sync_single_for_device call (Torez Smith) [1686205] - [usb] usb: gadget: Change Andrzej Pietrasiewicz's e-mail address (Torez Smith) [1686205] - [usb] usb: f_fs: Avoid crash due to out-of-scope stack ptr access (Torez Smith) [1686205] - [usb] usb: typec: ucsi: Remove debug.h file (Torez Smith) [1686205] - [usb] usb: typec: Prepare alt mode enter/exit reporting for UCSI alt mode support (Torez Smith) [1686205] - [usb] usb: typec: displayport: Move the Configuration VDO helpers to the header (Torez Smith) [1686205] - [usb] USB: Fix configuration selection issues introduced in v4.20.0 (Torez Smith) [1686205] - [usb] usb: handle warm-reset port requests on hub resume (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add ID for Ingenico 3070 (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add minimum baud rate for CP2105 SCI (Torez Smith) [1686205] - [usb] usb: dwc3: haps: Workaround matching VID PID (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: preserve wMaxPacketSize across usb_ep_autoconfig() call (Torez Smith) [1686205] - [usb] usb: gadget: move non-super speed code out of usb_ep_autoconfig_ss() (Torez Smith) [1686205] - [usb] usb: gadget: function: sync f_uac1 ac header baInterfaceNr (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Add scatter-gather mode (Torez Smith) [1686205] - [usb] usb: gadget: fix various indentation issues (Torez Smith) [1686205] - [usb] usb: dwc2: Fix EP TxFIFO number setting (Torez Smith) [1686205] - [usb] udc: net2280: Fix net2280_disable (Torez Smith) [1686205] - [usb] USB: gadget: Improve kerneldoc for usb_ep_dequeue() (Torez Smith) [1686205] - [usb] usb: dwc3: debug: purge usage of strcat (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add GPIO support for CP2104 (Torez Smith) [1686205] - [usb] usb: dwc3: trace: pass trace buffer size to decoding functions (Torez Smith) [1686205] - [usb] usb: core: Move variable initialization to appropriate place (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove DWC3_EP_END_TRANSFER_PENDING (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: early giveback if End Transfer already completed (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: don't use resource_index as a flag (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: clear DWC3_EP_TRANSFER_STARTED on cmd complete (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Correct the PPS out_volt calculation (Torez Smith) [1686205] - [usb] usb: gadget: musb: fix short isoc packets with inventra dma (Torez Smith) [1686205] - [usb] usbip: Fix vep_free_request() null pointer checks on input args (Torez Smith) [1686205] - [usb] usb: ehci-orion: add S2RAM support (Torez Smith) [1686205] - [usb] usb: ehci-orion: avoid double PHY initialization (Torez Smith) [1686205] - [usb] usb: host: xhci: mvebu: add reset on resume quirk (Torez Smith) [1686205] - [usb] usb: core: comply to PHY framework (Torez Smith) [1686205] - [usb] usb: phy: am335x: fix race condition in _probe (Torez Smith) [1686205] - [usb] usb: dwc3: exynos: Fix error handling of clk_prepare_enable (Torez Smith) [1686205] - [usb] usb: phy: fix link errors (Torez Smith) [1686205] - [usb] usb: gadget: udc: net2272: Fix bitwise and boolean operations (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Handle 0 xfer length for OUT EP (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove req->started flag (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: prevent dwc3_request from being queued twice (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: add dwc3_request status tracking (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: add support for r8a774c0 (Torez Smith) [1686205] - [usb] usb: gadget: uvc: add uvcg_warn macro (Torez Smith) [1686205] - [usb] usb: gadget: u_serial: process RX in workqueue instead of tasklet (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add r8a774c0 support (Torez Smith) [1686205] - [documentation] usb: gadget: udc: renesas_usb3: Add bindings for r8a774c0 (Torez Smith) [1686205] - [usb] usb: gadget: aspeed: fix typo (Torez Smith) [1686205] - [usb] usb: dwc3: keystone: Add support for ti, am654-dwc3 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: keystone-usb: Add ti, am654-dwc3 support (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Fix OTG events when gadget driver isn't loaded (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Add support for MSM8998 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Add support for msm8998 (Torez Smith) [1686205] - [usb] usb: gadget: Remove dead branch code (Torez Smith) [1686205] - [usb] USB: serial: cp210x: support all gpios on CP2102N QFN28 package (Torez Smith) [1686205] - [usb] usb: ftdi-elan: Fix if == else warnings in ftdi_elan_respond_engine (Torez Smith) [1686205] - [usb] usb: typec: tpcm: improve error handling of tcpm_register_port (Torez Smith) [1686205] - [usb] usb: misc: usb3503: Add system sleep support in non-I2C mode (Torez Smith) [1686205] - [usb] usbip: Fix vhci_urb_enqueue() URB null transfer buffer error path (Torez Smith) [1686205] - [usb] usb: sisusb: remove useless macros and compact the code (Torez Smith) [1686205] - [usb] usb: sisusb: let files build only when needed (Torez Smith) [1686205] - [usb] usb: sisusb_con, cleanup configs (Torez Smith) [1686205] - [usb] usb: sisusb_con, convert addr macros to functions (Torez Smith) [1686205] - [usb] usb: ftdi-elan: remove a unnecessary variable 'empty_packets' (Torez Smith) [1686205] - [usb] usb: assign ACPI companions for embedded USB devices (Torez Smith) [1686205] - [usb] usb: split code locating ACPI companion into port and device (Torez Smith) [1686205] - [usb] USB: host: whci: rename Kbuild file (Torez Smith) [1686205] - [usb] USB: remove README file (Torez Smith) [1686205] - [usb] USB: add missing SPDX lines to Kconfig and Makefiles (Torez Smith) [1686205] - [usb] USB: storage: karma: add whitespace after declarations (Torez Smith) [1686205] - [usb] USB: serial: keyspan_usa: add proper SPDX lines for .h files (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: add MODULE_DEVICE_TABLE (Torez Smith) [1686205] - [usb] USB: Consolidate LPM checks to avoid enabling LPM twice (Torez Smith) [1686205] - [usb] USB: Add new USB LPM helpers (Torez Smith) [1686205] - [usb] drivers: usb :fsl: Remove USB Errata checking code (Torez Smith) [1686205] - [usb] usb: kconfig: remove dependency FSL_SOC for ehci fsl driver (Torez Smith) [1686205] - [usb] usb: ehci: fsl: Update register accessing for arm/arm64 platforms (Torez Smith) [1686205] - [usb] usb: usb251xb: add usb data lane port swap feature (Torez Smith) [1686205] - [documentation] dt-bindings: usb: usb251xb: add documentation for data lane swapping (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: replace udelay() with usleep_range() (Torez Smith) [1686205] - [usb] USB: host: ohci-at91: add sam9x60-sfr definition for ohci (Torez Smith) [1686205] - [usb] xhci: Use struct_size() in kzalloc() (Torez Smith) [1686205] - [usb] usb: hub: add retry routine after intr URB submit error (Torez Smith) [1686205] - [usb] USB: leds: fix regression in usbport led trigger (Torez Smith) [1686205] - [usb] usb: chipidea: fix static checker warning for NULL pointer (Torez Smith) [1686205] - [usb] USB: usbip: delete README file (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add new PID to support PL2303TB (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Fix Remote Wakeup interrupt bit clearing (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: fix GPIO not working in autosuspend (Torez Smith) [1686205] - [usb] usb: gadget: Potential NULL dereference on allocation error (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Fix the uninitialized link_state when udc starts (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Clear req->needs_extra_trb flag on cleanup (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: synchronize_irq dwc irq in suspend (Torez Smith) [1686205] - [usb] USB: core: urb: Use struct_size() in kmalloc() (Torez Smith) [1686205] - [usb] cross-tree: phase out dma_zalloc_coherent() (Torez Smith) [1686205] - [usb] usb: gadget: udc: reduce indentation (Torez Smith) [1686205] - [usb] usb: devio: update max count of DPs per interval for ISOC (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: fix a couple of indentation issues (Torez Smith) [1686205] - [usb] usb: core: Simplify return value of usb_get_configuration() (Torez Smith) [1686205] - [usb] USB: Add USB_QUIRK_DELAY_CTRL_MSG quirk for Corsair K70 RGB (Torez Smith) [1686205] - [usb] usbcore: Select only first configuration for non-UAC3 compliant devices (Torez Smith) [1686205] - [usb] USB: storage: add quirk for SMI SM3350 (Torez Smith) [1686205] - [usb] USB: storage: don't insert sane sense for SPC3+ when bad sense specified (Torez Smith) [1686205] - [usb] usb: cdc-acm: send ZLP for Telit 3G Intel based modems (Torez Smith) [1686205] - [usb] USB: serial: simple: add Motorola Tetra TPG2200 device id (Torez Smith) [1686205] - [usb] USB: serial: option: add Fibocom NL678 series (Torez Smith) [1686205] - [usb] cdc-acm: fix abnormal DATA RX issue for Mediatek Preloader (Torez Smith) [1686205] - [usb] usb: r8a66597: Fix a possible concurrency use-after-free bug in r8a66597_endpoint_disable() (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Extend the matching rules on PPS APDO selection (Torez Smith) [1686205] - [documentation] usb: typec: Improve Alt Mode documentation (Torez Smith) [1686205] - [usb] usb: musb: dsps: fix runtime pm for peripheral mode (Torez Smith) [1686205] - [usb] usb: musb: dsps: fix otg state machine (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add ids for Hewlett-Packard HP POS pole displays (Torez Smith) [1686205] - [usb] PCI: Move Synopsys HAPS platform device IDs (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add support for RZ/G2E (Torez Smith) [1686205] - [usb] usb: ehci-omap: Fix deferred probe for phy handling (Torez Smith) [1686205] - [usb] usb: roles: Add a description for the class to Kconfig (Torez Smith) [1686205] - [usb] xhci: Don't prevent USB2 bus suspend in state check intended for USB3 only (Torez Smith) [1686205] - [usb] USB: serial: option: add Telit LN940 series (Torez Smith) [1686205] - [usb] USB: serial: option: add Fibocom NL668 series (Torez Smith) [1686205] - [usb] USB: serial: option: add Simcom SIM7500/SIM7600 (MBIM mode) (Torez Smith) [1686205] - [usb] USB: serial: option: add GosunCn ZTE WeLink ME3630 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: mark PM functions as __maybe_unused (Torez Smith) [1686205] - [usb] usb: core: Remove unnecessary memset() (Torez Smith) [1686205] - [usb] usb: host: isp1362-hcd: convert to DEFINE_SHOW_ATTRIBUTE (Torez Smith) [1686205] - [usb] usb: dwc2: Fix disable all EP's on disconnect (Torez Smith) [1686205] - [usb] usb: chipidea: imx: allow to configure oc polarity on i.MX25 (Torez Smith) [1686205] - [usb] usb: chipidea: imx: Warn if oc polarity isn't specified (Torez Smith) [1686205] - [usb] usb: chipidea: imx: support configuring for active low oc signal (Torez Smith) [1686205] - [documentation] doc: usb: ci-hdrc-usb2: Add pinctrl properties for HSIC pin groups (Torez Smith) [1686205] - [usb] usb: chipidea: host: override ehci->hub_control (Torez Smith) [1686205] - [usb] usb: chipidea: imx: add HSIC support (Torez Smith) [1686205] - [usb] usb: chipidea: add flag for imx hsic implementation (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Disable CSP for stream OUT ep (Torez Smith) [1686205] - [usb] USB: serial: mos7840: remove set but not used variables 'number, serial' (Torez Smith) [1686205] - [usb] USB: serial: option: add HP lt4132 (Torez Smith) [1686205] - [usb] usb: dwc2: disable power_down on Amlogic devices (Torez Smith) [1686205] - [usb] xhci: move usb2 get port status link resume handling to its own function (Torez Smith) [1686205] - [usb] xhci: refactor U0 link state handling in get_port_status (Torez Smith) [1686205] - [usb] xhci: cleanup code that sets portstatus and portchange bits (Torez Smith) [1686205] - [usb] xhci: move usb2 speficic bits to own function in get_port_status call (Torez Smith) [1686205] - [usb] xhci: move usb3 speficic bits to own function in get_port_status call (Torez Smith) [1686205] - [usb] xhci: remove unused hcd_index() (Torez Smith) [1686205] - [usb] xhci: move bus_state structure under the xhci_hub structure (Torez Smith) [1686205] - [usb] xhci: remove the unused sw_lpm_support (Torez Smith) [1686205] - [usb] Revert "usb: dwc3: pci: Use devm functions to get the phy GPIOs" (Torez Smith) [1686205] - [usb] USB: gadget: udc: s3c2410_udc: convert to DEFINE_SHOW_ATTRIBUTE (Torez Smith) [1686205] - [usb] usb: mtu3: fix dbginfo in qmu_tx_zlp_error_handler (Torez Smith) [1686205] - [usb] usb: dwc3: trace: add missing break statement to make compiler happy (Torez Smith) [1686205] - [usb] xhci: Prevent U1/U2 link pm states if exit latency is too long (Torez Smith) [1686205] - [usb] xhci: workaround CSS timeout on AMD SNPS 3.0 xHC (Torez Smith) [1686205] - [tty] USB: serial: console: fix reported terminal settings (Torez Smith) [1686205] - [usb] usb: appledisplay: Remove unnecessary spinlock (Torez Smith) [1686205] - [usb] usb: appledisplay: Set urb transfer_flags to URB_NO_TRANSFER_DMA_MAP (Torez Smith) [1686205] - [usb] usb: quirk: add no-LPM quirk on SanDisk Ultra Flair device (Torez Smith) [1686205] - [usb] USB: Fix invalid-free bug in port_over_current_notify() (Torez Smith) [1686205] - [usb] usb: appledisplay: Add 27" Apple Cinema Display (Torez Smith) [1686205] - [platform] staging: typec: fusb302: Rename fcs, extcon-name to linux, extcon-name (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Report isoc transfer frame number (Torez Smith) [1686205] - [include] usb: gadget: Introduce frame_number to usb_request (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use SIMPLE_DEV_PM_OPS macro (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Remove dummy runtime PM callbacks (Torez Smith) [1686205] - [usb] usb: dwc2: host: use hrtimer for NAK retries (Torez Smith) [1686205] - [usb] usb: hub: delay hub autosuspend if USB3 port is still link training (Torez Smith) [1686205] - [usb] usb: mtu3: clear SOFTCONN when clear USB3_EN if work as HS mode (Torez Smith) [1686205] - [usb] usb: mtu3: enable SETUPENDISR interrupt (Torez Smith) [1686205] - [usb] usb: mtu3: fix the issue about SetFeature(U1/U2_Enable) (Torez Smith) [1686205] - [usb] usb: mtu3: enable hardware remote wakeup from L1 automatically (Torez Smith) [1686205] - [usb] usb: mtu3: remove QMU checksum (Torez Smith) [1686205] - [usb] usb/mtu3: power down device ip at setup (Torez Smith) [1686205] - [usb] usb: dwc2: Disable power down feature on Samsung SoCs (Torez Smith) [1686205] - [usb] usb: dwc3: Correct the logic for checking TRB full in __dwc3_prepare_one_trb() (Torez Smith) [1686205] - [usb] usb: dwc3: don't issue no-op trb for stream capable endpoints (Torez Smith) [1686205] - [usb] usb: dwc3: update stream id in depcmd (Torez Smith) [1686205] - [usb] USB: serial: mos7840: add a product ID for the new product (Torez Smith) [1686205] - [usb] USB: serial: mos7840: clean up register handling (Torez Smith) [1686205] - [usb] usb: gadget: u_ether: fix unsafe list iteration (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: check if dep->frame_number is still valid (Torez Smith) [1686205] - [usb] USB: omap_udc: fix rejection of out transfers when DMA is used (Torez Smith) [1686205] - [usb] USB: omap_udc: fix USB gadget functionality on Palm Tungsten E (Torez Smith) [1686205] - [usb] USB: omap_udc: fix omap_udc_start() on 15xx machines (Torez Smith) [1686205] - [usb] USB: omap_udc: fix crashes on probe error and module removal (Torez Smith) [1686205] - [usb] USB: omap_udc: use devm_request_irq() (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove unnecessary dev_info() (Torez Smith) [1686205] - [usb] usb: dwc3: trace: log ep commands in hex (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: return errors from __dwc3_gadget_start_isoc() (Torez Smith) [1686205] - [usb] usb: core: quirks: add RESET_RESUME quirk for Cherry G230 Stream series (Torez Smith) [1686205] - [usb] USB: usb-storage: Add new IDs to ums-realtek (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove wait_end_transfer (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: move requests to cancelled_list (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: introduce cancelled_list (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: extract dwc3_gadget_ep_skip_trbs() (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: use num_trbs when skipping TRBs on ->dequeue() (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: track number of TRBs per request (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: combine unaligned and zero flags (Torez Smith) [1686205] - [usb] usb: dwc3: Add workaround for isoc start transfer failure (Torez Smith) [1686205] - [documentation] usb: dwc3: Add disabling of start_transfer failure quirk (Torez Smith) [1686205] - [usb] usb: dwc3: Track DWC_usb31 VERSIONTYPE (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: Allow scatter-gather buffers (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: Add support for CCID descriptors (Torez Smith) [1686205] - [usb] usb: gadget: uvc: constify vb2_ops structure (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Accept LPM token when TxFIFO is not empty (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Fix WkupAlert interrupt handler (Torez Smith) [1686205] - [usb] usb: dwc3: Set default mode for DWC_usb3 v3.30a and higher (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: add a safety connection way for forced_b_device (Torez Smith) [1686205] - [usb] usb: dwc3: drd: Add support for DR detection through extcon (Torez Smith) [1686205] - [usb] usb: dwc3: drd: Switch to device property for 'extcon' handling (Torez Smith) [1686205] - [usb] usb: dwc3: don't log probe deferrals; but do log other error codes (Torez Smith) [1686205] - [usb] usb: gadget: aspeed-vhub: constify usb_gadget_ops structure (Torez Smith) [1686205] - [usb] usb: dwc3: Support option to disable USB2 LPM (Torez Smith) [1686205] - [documentation] usb: dwc3: Add a property to disable USB2 LPM (Torez Smith) [1686205] - [usb] usb: dwc3: Set GUSB2PHYCFG.ENBLSLPM (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Print/set link state for peripheral mode (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Properly print/set link state for HS (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Dump internal LSP and ep registers (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Print eps Tx/RxFIFO in bytes (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Properly name Tx/RxFIFO (Torez Smith) [1686205] - [usb] Revert "usb: dwc3: gadget: skip Set/Clear Halt when invalid" (Torez Smith) [1686205] - [usb] drivers: usb: early: clean up indentation, remove extraneous tabs (Torez Smith) [1686205] - [usb] USB: ene_usb6250: add missing indentation (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: use rounding when calculating baud rate divisors (Torez Smith) [1686205] - [usb] USB: serial: f81534: fix reading old/new IC config (Torez Smith) [1686205] - [usb] usb: cdc-acm: add entry for Hiro (Conexant) modem (Torez Smith) [1686205] - [usb] usb: xhci: Prevent bus suspend if a port connect change or polling state is detected (Torez Smith) [1686205] - [usb] usb: core: Fix hub port connection events lost (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: fix ISOC TRB type on unaligned transfers (Torez Smith) [1686205] - [usb] Revert "usb: gadget: ffs: Fix BUG when userland exits with submitted AIO transfers" (Torez Smith) [1686205] - [usb] usb: dwc2: pci: Fix an error code in probe (Torez Smith) [1686205] - [usb] usb: dwc3: Fix NULL pointer exception in dwc3_pci_remove() (Torez Smith) [1686205] - [usb] USB: serial: mos7840: remove set but not used variables 'st, data1, iflag' (Torez Smith) [1686205] - [usb] USB: serial: quatech2: remove set but not used variable 'port_priv' (Torez Smith) [1686205] - [include] USB: remove the unused struct hcd_timeout definition (Torez Smith) [1686205] - [usb] usb: typec: ucsi: add support for Cypress CCGx (Torez Smith) [1686205] - [usb] usb: xhci: fix timeout for transition from RExit to U0 (Torez Smith) [1686205] - [usb] usb: xhci: fix uninitialized completion when USB3 port got wrong status (Torez Smith) [1686205] - [usb] xhci: Add check for invalid byte size error when UAS devices are connected (Torez Smith) [1686205] - [usb] xhci: handle port status events for removed USB3 hcd (Torez Smith) [1686205] - [usb] xhci: Fix leaking USB3 shared_hcd at xhci removal (Torez Smith) [1686205] - [documentation] dt-bindings: usb: xhci-tegra: Add power-domain details (Torez Smith) [1686205] - [usb] USB: misc: appledisplay: add 20" Apple Cinema Display (Torez Smith) [1686205] - [usb] USB: quirks: Add no-lpm quirk for Raydium touchscreens (Torez Smith) [1686205] - [usb] usb: quirks: Add delay-init quirk for Corsair K70 LUX RGB (Torez Smith) [1686205] - [usb] USB: Wait for extra delay time after USB_PORT_FEAT_RESET for quirky hub (Torez Smith) [1686205] - [usb] USB: gadget: udc: fix spelling mistake "intrerrupt" -> "interrupt" (Torez Smith) [1686205] - [usb] usb: host: remove unnecessary condition check (Torez Smith) [1686205] - [usb] usb: typec: tcpm: charge current handling for sink during hard reset (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Do not disconnect link for self powered devices (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Properly check last unaligned/zero chain TRB (Torez Smith) [1686205] - [usb] usb: dwc3: core: Clean up ULPI device (Torez Smith) [1686205] - [usb] usb: phy: ab8500: silence some uninitialized variable warnings (Torez Smith) [1686205] - [usb] usb: xhci: tegra: Add genpd support (Torez Smith) [1686205] - [usb] usb: xhci: tegra: Power-off power-domains on removal (Torez Smith) [1686205] - [usb] usbip:vudc: BUG kmalloc-2048 (Not tainted): Poison overwritten (Torez Smith) [1686205] - [tools] usbip: tools: fix atoi() on non-null terminated string (Torez Smith) [1686205] - [usb] USB: misc: appledisplay: fix backlight update_status return code (Torez Smith) [1686205] - [usb] USB: fix the usbfs flag sanitization for control transfers (Torez Smith) [1686205] - [documentation] usb: host: add DT bindings for faraday fotg2 (Torez Smith) [1686205] - [usb] usb: host: ohci-at91: fix request of irq for optional gpio (Torez Smith) [1686205] - [usb] usb: xhci: pci: Enable Intel USB role mux on Apollo Lake platforms (Torez Smith) [1686205] - [usb] usb: roles: intel_xhci: Fix Unbalanced pm_runtime_enable (Torez Smith) [1686205] - [usb] cdc-acm: correct counting of UART states in serial state notification (Torez Smith) [1686205] - [usb] cdc-acm: do not reset notification buffer index upon urb unlinking (Torez Smith) [1686205] - [usb] cdc-acm: fix race between reset and control messaging (Torez Smith) [1686205] - [usb] usb: usbip: Fix BUG: KASAN: slab-out-of-bounds in vhci_hub_control() (Torez Smith) [1686205] - [usb] usb/early: remove set but not used variable 'remain_length' (Torez Smith) [1686205] - [usb] usb: typec: Fix copy/paste on typec_set_vconn_role() kerneldoc (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Report back negotiated PPS voltage and current (Torez Smith) [1686205] - [usb] USB: core: remove set but not used variable 'udev' (Torez Smith) [1686205] - [usb] usb: core: fix memory leak on port_dev_path allocation (Torez Smith) [1686205] - [usb] USB: net2280: Remove ->disconnect() callback from net2280_pullup() (Torez Smith) [1686205] - [usb] usb: dwc2: disable power_down on rockchip devices (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: add support for r8a77990 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usb3: add bindings for r8a77990 (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: remove set but not used variable 'iflag' (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: fix interrupt-out transfer length (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add support for FT232R CBUS gpios (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: fix gpio name collisions (Torez Smith) [1686205] - [netdrv] net: usbnet: make driver_info const (Torez Smith) [1686205] - [usb] usb: typec: remove set but not used variables 'snk_ma, min_mv' (Torez Smith) [1686205] - [usb] usb: export firmware port location in sysfs (Torez Smith) [1686205] - [usb] usb: hub: try old enumeration scheme first for high speed devices (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Document r8a7744 support (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add support for r8a7744 (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Fix APDO PPS order checking to be based on voltage (Torez Smith) [1686205] - [tools] usbip: fix vhci_hcd controller counting (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Fix b-device mode for "workaround" (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Add handler for WkupAlert interrupt (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: enable WKUP_ALERT interrupt (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Program GREFCLK register (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Add parameters for GREFCLK register (Torez Smith) [1686205] - [usb] usb: dwc2: Add definitions for new registers (Torez Smith) [1686205] - [usb] usb: dwc2: Update target (u)frame calculation (Torez Smith) [1686205] - [usb] usb: dwc2: Add dwc2_gadget_dec_frame_num_by_one() function (Torez Smith) [1686205] - [usb] usb: dwc2: Add core parameter for service interval support (Torez Smith) [1686205] - [usb] usb: dwc2: Update registers definitions to support service interval (Torez Smith) [1686205] - [usb] usb: gadget: f_uac2: disable IN/OUT ep if unused (Torez Smith) [1686205] - [usb] USB: gadget core: Issue ->disconnect() callback from usb_gadget_disconnect() (Torez Smith) [1686205] - [usb] usb: dwc3: Fix spelling of 'optimizations' (Torez Smith) [1686205] - [usb] usb: gadget: atmel: remove pointless retrieval of DT name property (Torez Smith) [1686205] - [usb] usb: gadget: fsl_udc_core: fixup struct_udc_setup documentation (Torez Smith) [1686205] - [usb] usb: gadget: fsl_udc_core: check allocation return value and cleanup on failure (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Check ENBLSLPM before sending ep command (Torez Smith) [1686205] - [usb] usb: dwc2: fix unbalanced use of external vbus-supply (Torez Smith) [1686205] - [usb] usb: dwc2: fix call to vbus supply exit routine, call it unlocked (Torez Smith) [1686205] - [usb] usb: dwc2: fix a race with external vbus supply (Torez Smith) [1686205] - [usb] usb: dwc2: get optional vbus-supply regulator once (Torez Smith) [1686205] - [usb] usb: dwc3: add EXTCON dependency for qcom (Torez Smith) [1686205] - [usb] usb: gadget: udc: atmel: handle at91sam9rl PMC (Torez Smith) [1686205] - [usb] usb: gadget: udc: fotg210-udc: Fix a sleep-in-atomic-context bug in fotg210_get_status() (Torez Smith) [1686205] - [usb] usb: dwc2: Disable all EP's on disconnect (Torez Smith) [1686205] - [documentation] usb: dwc3: exynos: Add support for Exynos5433 variant with all clocks (Torez Smith) [1686205] - [usb] usb: dwc3: exynos: Rework clock handling and prepare for new variants (Torez Smith) [1686205] - [usb] usb: dwc3: exynos: Remove dead code (Torez Smith) [1686205] - [usb] usb: gadget: udc: Remove unnecessary parentheses (Torez Smith) [1686205] - [usb] usb: dwc2: remove set but unused variable (Torez Smith) [1686205] - [usb] usb: gadget: fix spelling mistakeis "queing" -> "queuing" (Torez Smith) [1686205] - [usb] usb: xhci-mtk: resume USB3 roothub first (Torez Smith) [1686205] - [usb] xhci: Add missing CAS workaround for Intel Sunrise Point xHCI (Torez Smith) [1686205] - [usb] usb: cdc_acm: Do not leak URB buffers (Torez Smith) [1686205] - [usb] usb: usbtmc: uninitialized symbol 'actual' in usbtmc_ioctl_abort_bulk_in_tag (Torez Smith) [1686205] - [usb] usb: usbtmc: uninitialized symbol 'actual' in usbtmc_ioctl_clear (Torez Smith) [1686205] - [usb] usb: usbtmc: uninitialized symbol 'actual' in usbtmc_read (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix memory leak in usbtmc_ioctl_request (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add support for R-Car E3 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: add bindings for r8a77990 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: rcar3: Use OTG mode for R-Car D3 (Torez Smith) [1686205] - [usb] Revert "usb: renesas_usbhs: set the mode by using extcon state for non-otg channel" (Torez Smith) [1686205] - [usb] Revert "usb: renesas_usbhs: add extcon notifier to set mode for non-otg channel" (Torez Smith) [1686205] - [usb] usb: core: added uevent for over-current (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Resolve fixed power role contract setup (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Correct spelling mistake for toggling state (Torez Smith) [1686205] - [usb] xhci: Avoid USB autosuspend when resuming USB2 ports (Torez Smith) [1686205] - [usb] usb: xhci: tegra: Firmware header is little endian (Torez Smith) [1686205] - [usb] xhci: Use soft retry to recover faster from transaction errors (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: add platform TPL support (Torez Smith) [1686205] - [usb] usb: xhci-mtk: supports SSP without external USB3 gen2 hub (Torez Smith) [1686205] - [usb] usb: xhci-mtk: supports bandwidth scheduling with multi-TT (Torez Smith) [1686205] - [usb] usb: xhci-mtk: improve bandwidth scheduling (Torez Smith) [1686205] - [usb] usb: xhci-mtk: fix ISOC error when interval is zero (Torez Smith) [1686205] - [usb] usb: xhci-mtk: use maximum ESIT payload of endpiont context (Torez Smith) [1686205] - [usb] usb: host: Replace empty define with do while (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: implement GPIO support for FT-X devices (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Use u to print unsigned int values (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Simplify attributes macros (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Fix operation on big endian platforms (Torez Smith) [1686205] - [uapi] usb: video: Fix endianness mismatches in descriptor structures (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Remove uvc_set_trace_param() function (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Replace plain printk() with dev_*() (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Only halt video streaming endpoint in bulk mode (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Factor out video USB request queueing (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Sort frame intervals upon writing (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Prevent format changes after linking header (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add bFrameIndex attributes (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add bFormatIndex attributes (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add interface number attributes (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Allocate groups dynamically (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Drop leaked references to config items (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: add description for px30 (Torez Smith) [1686205] - [usb] USB: serial: simple: add Motorola Tetra MTP6550 id (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: fix spelling mistake "retreiving" -> "retrieving" (Torez Smith) [1686205] - [usb] USB: STORAGE: ISD200 Fixed coding style issue "space required in for loop" (Torez Smith) [1686205] - [usb] usb: typec: Group all TCPCI/TCPM code together (Torez Smith) [1686205] - [usb] usb: typec: fusb302: reorganizing the probe function a little (Torez Smith) [1686205] - [usb] usb: typec: class: Don't use port parent for getting mux handles (Torez Smith) [1686205] - [usb] usb: typec: mux: Take care of driver module reference counting (Torez Smith) [1686205] - [usb] usb: core: safely deal with the dynamic quirk lists (Torez Smith) [1686205] - [usb] usb: roles: Take care of driver module reference counting (Torez Smith) [1686205] - [usb] usb: phy: mxs: fix spelling mistake "stardard" -> "standard" (Torez Smith) [1686205] - [usb] usb: host: fotg2: Fix potential NULL dereference (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add multiple clocks management (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: add clock-names property (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add reset_control (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ohci: Add clocks description for R-Car Gen3 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ehci: Add clocks description for R-Car Gen3 (Torez Smith) [1686205] - [usb] usbcore: Select UAC3 configuration for audio if present (Torez Smith) [1686205] - [documentation] usb: gadget: udc: renesas_usb3: Add r8a774a1 support (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add r8a774a1 support (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Add r8a774a1 support (Torez Smith) [1686205] - [documentation] dt-bindings: ehci-mv: add bindings (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: add DT support (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: use phy-pxa-usb (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: remove private_init (Torez Smith) [1686205] - [usb] USB: EHCI: make ehci-mv a separate driver (Torez Smith) [1686205] - [usb] usb: usbtmc: Remove sysfs group TermChar and auto_abort (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix split quoted string in debug message (Torez Smith) [1686205] - [usb] usb: usbtmc: Remove redundant macro USBTMC_SIZE_IOBUFFER (Torez Smith) [1686205] - [usb] usb: usbtmc: Remove redundant code (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_API_VERSION (Torez Smith) [1686205] - [usb] usb: usbtmc: Replace USBTMC_TIMEOUT macros for control messages (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix ioctl USBTMC_IOCTL_ABORT_BULK_OUT (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix ioctl USBTMC_IOCTL_ABORT_BULK_IN (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix ioctl USBTMC_IOCTL_CLEAR (Torez Smith) [1686205] - [usb] usb: usbtmc: Optimize usbtmc_read (Torez Smith) [1686205] - [usb] usb: usbtmc: Optimize usbtmc_write (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_AUTO_ABORT (Torez Smith) [1686205] - [usb] usb: usbtmc: add ioctl USBTMC_IOCTL_MSG_IN_ATTR (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC488_IOCTL_WAIT_SRQ (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix suspend/resume (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_CLEANUP_IO (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_CANCEL_IO (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for vendor specific read (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_WRITE_RESULT (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for vendor specific write (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for generic requests on control (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Populate tcpc fwnode for TCPM property handling (Torez Smith) [1686205] - [documentation] dt-bindings: usb: fusb302: Use usb-connector bindings for configuration (Torez Smith) [1686205] - [documentation] dt-bindings: connector: Add support for USB-PD PPS APDOs to bindings (Torez Smith) [1686205] - [usb] USB: handle NULL config in usb_find_alt_setting() (Torez Smith) [1686205] - [usb] USB: fix error handling in usb_driver_claim_interface() (Torez Smith) [1686205] - [usb] USB: remove LPM management from usb_driver_claim_interface() (Torez Smith) [1686205] - [usb] USB: usbdevfs: restore warning for nonsensical flags (Torez Smith) [1686205] - [usb] USB: usbdevfs: sanitize flags more (Torez Smith) [1686205] - [usb] Revert "usb: cdc-wdm: Fix a sleep-in-atomic-context bug in service_outstanding_interrupt()" (Torez Smith) [1686205] - [usb] usb: musb: dsps: do not disable CPPI41 irq in driver teardown (Torez Smith) [1686205] - [usb] usb: chipidea: Fix otg event handler (Torez Smith) [1686205] - [usb] usb: chipidea: Prevent unbalanced IRQ disable (Torez Smith) [1686205] - [documentation] doc: usb: ci-hdrc-usb2: Add pinctrl properties definition (Torez Smith) [1686205] - [usb] usb: chipidea: Add dynamic pinctrl selection (Torez Smith) [1686205] - [usb] usb: chipidea: imx: make MODULE_LICENCE and SPDX-identifier match (Torez Smith) [1686205] - [usb] usb: chipidea: imx: enable OTG overcurrent in case USB subsystem is already started (Torez Smith) [1686205] - [usb] usb: chipidea: imx: do not use preprocessor conditionals for PM (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add section header comments (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Don't wrap groups unnecessarily (Torez Smith) [1686205] - [usb] mos7720: bury dead TIOCM... in ->ioctl() (Torez Smith) [1686205] - [usb] USB: serial: option: add two-endpoints device-id flag (Torez Smith) [1686205] - [usb] USB: serial: option: improve Quectel EP06 detection (Torez Smith) [1686205] - [usb] Revert "cdc-acm: implement put_char() and flush_chars()" (Torez Smith) [1686205] - [usb] usb: Change usb_of_get_companion_dev() place to usb/common (Torez Smith) [1686205] - [usb] usb: xhci: fix interrupt transfer error happened on MTK platforms (Torez Smith) [1686205] - [usb] usb: core: phy: clean up return value check about devm_of_phy_get_by_index() (Torez Smith) [1686205] - [usb] usb: mtu3: disable vbus rise/fall interrupts of ltssm (Torez Smith) [1686205] - [usb] USB: wusbcore: Switch to bitmap_zalloc() (Torez Smith) [1686205] - [usb] usb: misc: fix obsolete function (Torez Smith) [1686205] - [usb] usb: iowarrior: replace kmalloc with kmalloc_array (Torez Smith) [1686205] - [usb] USB: OHCI: Remove USB bus reset delay from OHCI handover code (Torez Smith) [1686205] - [usb] usb: host: fotg2: add silicon clock handling (Torez Smith) [1686205] - [usb] USB: typec: fsusb302: remove unused variables snk_pdo and toggling_mode_name (Torez Smith) [1686205] - [usb] usb storage: remove inherited SCSI dependency for USB_STORAGE_ENE_UB6250 (Torez Smith) [1686205] - [usb] usb storage: group dependent USB storage Kconfig entries together (Torez Smith) [1686205] - [usb] USB: Removing NULL check for pool since dma_pool_destroy is safe (Torez Smith) [1686205] - [usb] usb: cdc-wdm: Fix a sleep-in-atomic-context bug in service_outstanding_interrupt() (Torez Smith) [1686205] - [usb] usb: misc: uss720: Fix two sleep-in-atomic-context bugs (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: Fix a sleep-in-atomic-context bug in u132_get_frame() (Torez Smith) [1686205] - [usb] usb: Avoid use-after-free by flushing endpoints early in usb_set_interface() (Torez Smith) [1686205] - [usb] usb/typec: fix kernel-doc notation warning for typec_match_altmode (Torez Smith) [1686205] - [usb] usb: Don't die twice if PCI xhci host is not responding in resume (Torez Smith) [1686205] - [usb] usb: mtu3: fix error of xhci port id when enable U3 dual role (Torez Smith) [1686205] - [usb] usb: uas: add support for more quirk flags (Torez Smith) [1686205] - [usb] USB: Add quirk to support DJI CineSSD (Torez Smith) [1686205] - [usb] usb: typec: fix kernel-doc parameter warning (Torez Smith) [1686205] - [usb] usb/dwc3/gadget: fix kernel-doc parameter warning (Torez Smith) [1686205] - [usb] USB: yurex: Check for truncation in yurex_read() (Torez Smith) [1686205] - [usb] USB: yurex: Fix buffer over-read in yurex_write() (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: Iterate over parent nodes for finding quirks (Torez Smith) [1686205] - [usb] xhci: Fix use after free for URB cancellation on a reallocated endpoint (Torez Smith) [1686205] - [usb] USB: add quirk for WORLDE Controller KS49 or Prodipe MIDI 49C USB controller (Torez Smith) [1686205] - [usb] usb: dwc2: Fix call location of dwc2_check_core_endianness (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Fix return value check in dwc3_byt_enable_ulpi_refclock() (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: fix maxpacket size of ep0 (Torez Smith) [1686205] - [usb] usb: gadget: fotg210-udc: Fix memory leak of fotg210->ep (Torez Smith) [1686205] - [usb] USB: net2280: Fix erroneous synchronization change (Torez Smith) [1686205] - [usb] usb: dwc3: of-simple: avoid unused function warnings (Torez Smith) [1686205] - [usb] USB: serial: ti_usb_3410_5052: fix array underflow in completion handler (Torez Smith) [1686205] - [usb] USB: serial: io_ti: fix array underflow in completion handler (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add a new device id for ATEN (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Kconfig: convert to SPDX identifiers (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Check MaxPacketSize from descriptor (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "stm32f4x9_fsotg" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "amlogic" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "his" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "bcm" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: ISOC's starting flow improvement (Torez Smith) [1686205] - [usb] usb: dwc2: Make dwc2_readl/writel functions endianness-agnostic (Torez Smith) [1686205] - [usb] usb: dwc3: core: Enable AutoRetry feature in the controller (Torez Smith) [1686205] - [usb] usb: dwc3: Set default mode for dwc_usb31 (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Add register of usb role switch (Torez Smith) [1686205] - [usb] usb: dwc2: replace ioread32/iowrite32_rep with dwc2_readl/writel_rep (Torez Smith) [1686205] - [usb] usb: dwc2: Modify dwc2_readl/writel functions prototype (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Intel Merrifield can be host (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Supply device properties via driver data (Torez Smith) [1686205] - [documentation] arm64: dts: dwc3: description of incr burst type (Torez Smith) [1686205] - [usb] usb: dwc3: Enable undefined length INCR burst type (Torez Smith) [1686205] - [usb] usb: dwc3: add global soc bus configuration reg0 (Torez Smith) [1686205] - [usb] usb: dwc3: Describe 'wakeup_work' field of struct dwc3_pci (Torez Smith) [1686205] - [usb] USB: option: add support for DW5821e (Torez Smith) [1686205] - [usb] usb: dwc3: change stream event enable bit back to 13 (Torez Smith) [1686205] - [usb] usb: dwc3: of-simple: reset host controller at suspend/resume (Torez Smith) [1686205] - [usb] usb: gadget: storage: Remove reference counting (Torez Smith) [1686205] - [usb] usb: gadget: storage: Add error handling for no memory (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Use devm functions to get the phy GPIOs (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Enable ULPI Refclk on platforms where the firmware does not (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Add GPIO lookup table on platforms without ACPI GPIO resources (Torez Smith) [1686205] - [usb] USB: gadget: Document that certain ep operations can be called in interrupt context (Torez Smith) [1686205] - [usb] usb: gadget: configfs: avoid spaces for indentation (Torez Smith) [1686205] - [usb] usb: dwc3: Add a glue driver for Synopsys HAPS platform (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Expose configuration name through video node (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Move function to avoid forward declaration (Torez Smith) [1686205] - [usb] usb: dwc2: Move dwc2_readl/writel functions after hsotg structure (Torez Smith) [1686205] - [usb] usb: gadget: tcm: fix spelling mistake: "Manufactor" -> "Manufacturer" (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Move trace parameter to function module (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Minimize #include in headers (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Move userspace API definition to public header (Torez Smith) [1686205] - [usb] usb: host: exynos: Remove support for Exynos5440 (Torez Smith) [1686205] - [usb] usb: usbtmc: Add support for 32 bit compat applications (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for termination character (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for EOM bit (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for trigger (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctls to set/get usb timeout (Torez Smith) [1686205] - [usb] usb: usbtmc: use consistent timeout error (Torez Smith) [1686205] - [usb] usb: usbtmc: Support Read Status Byte with SRQ per file (Torez Smith) [1686205] - [usb] USB: serial: cp210x: implement GPIO support for CP2102N (Torez Smith) [1686205] - [usb] USB: serial: cp210x: improve line-speed handling for CP2104 and CP2105 (Torez Smith) [1686205] - [usb] USB: serial: cp210x: generalise CP2102N line-speed handling (Torez Smith) [1686205] - [usb] USB: serial: cp210x: improve baudrate support for CP2102N (Torez Smith) [1686205] - [usb] USB: serial: cp210x: honour device-type maximum line speed (Torez Smith) [1686205] - [usb] USB: serial: cp210x: make line-speed quantisation data driven (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: drop redundant input-speed re-encoding (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: drop unused driver-data baud rate (Torez Smith) [1686205] - [usb] USB: serial: mos7720: remove redundant variables iflag, mask and serial (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Add r8a77990 support (Torez Smith) [1686205] - [usb] usb: host: ehci-sched: remove redundant pointer dev (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: remove redundant variable num_ports (Torez Smith) [1686205] - [usb] USB: host: whci: remove redundant variable t (Torez Smith) [1686205] - [usb] usb: xhci: dbc: remove redundant pointer dbc (Torez Smith) [1686205] - [usb] usb: isp1760: remove redundant variable 'selector' (Torez Smith) [1686205] - [usb] usb-misc: sisusbvga: remove redundant variable modey (Torez Smith) [1686205] - [usb] usb: misc: uss720: remove redundant pointer usbdev (Torez Smith) [1686205] - [usb] usb: usbip: remove redundant pointer ep (Torez Smith) [1686205] - [usb] USB: serial: kl5kusb105: remove KLSI device id (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Add a condition check about PLL active (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Simplify getting the firmware name for R-Car Gen3 (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: add firmware_name for R-Car Gen3 (Torez Smith) [1686205] - [usb] usb: typec: avoid format-overflow warning (Torez Smith) [1686205] - [usb] usb: typec: unlock dp->lock on error exit path, and also zero ret if successful (Torez Smith) [1686205] - [usb] usb: typec: fix dereference before null check on adev (Torez Smith) [1686205] - [usb] usb: usbtest: use irqsave() in USB's complete callback (Torez Smith) [1686205] - [usb] USB: serial: kobil_sct: add missing version error handling (Torez Smith) [1686205] - [usb] USB: serial: kobil_sct: fix modem-status error handling (Torez Smith) [1686205] - [usb] usb: simplify usbport trigger (Torez Smith) [1686205] - [include] device connection: Add fwnode member to struct device_connection (Torez Smith) [1686205]- [security] KEYS: reaching the keys quotas correctly (Vladis Dronov) [1820405] - [security] KEYS: allow reaching the keys quotas exactly (Vladis Dronov) [1820405] - [infiniband] RDMA/core: Ensure security pkey modify is not lost (Kamal Heib) [1786604] - [infiniband] IB/hfi1: Ensure pq is not left on waitlist (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/mad: Do not crash if the rdma device does not have a umad interface (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix missing error check on dev_set_name() (Kamal Heib) [1786604] - [infiniband] RDMA/nl: Do not permit empty devices names during RDMA_NLDEV_CMD_NEWLINK/SET (Kamal Heib) [1786604] - [infiniband] RDMA/iwcm: Fix iwcm work deallocation (Kamal Heib) [1786604] - [infiniband] RDMA/siw: Fix failure handling during device creation (Kamal Heib) [1786604] - [infiniband] RDMA/nldev: Fix crash when set a QP to a new counter but QPN is missing (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix protection fault in ib_mr_pool_destroy (Kamal Heib) [1786604] - [infiniband] IB/hfi1, qib: Ensure RCU is locked when accessing list (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/core: Fix pkey and port assignment in get_new_pps (Kamal Heib) [1786604] - [infiniband] RMDA/cm: Fix missing ib_cm_destroy_id() in ib_cm_insert_listen() (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix use of logical OR in get_new_pps (Kamal Heib) [1786604] - [infiniband] Revert "RDMA/cma: Simplify rdma_resolve_addr() error flow" (Kamal Heib) [1786604] - [net] xprtrdma: Fix DMA scatter-gather list mapping imbalance (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix protection fault in get_pkey_idx_qp_list (Kamal Heib) [1786604] - [infiniband] RDMA/rxe: Fix soft lockup problem due to using tasklets in softirq (Kamal Heib) [1786604] - [infiniband] IB/umad: Fix kernel crash while unloading ib_umad (Kamal Heib) [1786604] - [infiniband] RDMA/core: Add missing list deletion on freeing event queue (Kamal Heib) [1786604] - [infiniband] RDMA/siw: Remove unwanted WARN_ON in siw_cm_llp_data_ready() (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix invalid memory access in spec_filter_size (Kamal Heib) [1786604] - [infiniband] IB/rdmavt: Reset all QPs when the device is shut down (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Close window for pq and request coliding (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Acquire lock to release TID entries when user file is closed (Kamal Heib) [1786604 1739282] - [infiniband] IB/umem: use get_user_pages_fast() to pin DMA pages (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Mask access flags with the correct optional range (Kamal Heib) [1786604] - [infiniband] RDMA/cma: Fix unbalanced cm_id reference count during address resolve (Kamal Heib) [1786604] - [infiniband] RDMA/umem: Fix ib_umem_find_best_pgsz() (Kamal Heib) [1786604] - [infiniband] IB/hfi1: Fix logical condition in msix_request_irq (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/cm: Remove CM message structs (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for complex structure members (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for simple structure members (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for swapping get/set acessors (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for simple get/set acessors (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Add SET/GET implementations to hide IBA wire format (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Add accessors for CM_REQ transport_type (Kamal Heib) [1786604] - [infiniband] RDMA/core: Ensure that rdma_user_mmap_entry_remove() is a fence (Kamal Heib) [1786604] - [rdma] RDMA/uverbs: Add new relaxed ordering memory region access flag (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Allow passing of optional access flags for MR registration (Kamal Heib) [1786604] - [rdma] RDMA/core: Add optional access flags range (Kamal Heib) [1786604] - [rdma] RDMA/uverbs: Verify MR access flags (Kamal Heib) [1786604] - [infiniband] RDMA/core: Remove ucontext_lock from the uverbs_destry_ufile_hw() path (Kamal Heib) [1786604] - [infiniband] RDMA/core: Add UVERBS_METHOD_ASYNC_EVENT_ALLOC (Kamal Heib) [1786604] - [infiniband] IB/srp: Never use immediate data if it is disabled by a user (Kamal Heib) [1786604] - [infiniband] RDMA/rxe: Compute the maximum sges and inline size based on the WQE size (Kamal Heib) [1786604] - [infiniband] Introduce maximum WQE size to check limits (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Remove unused ucontext parameter from efa_qp_user_mmap_entries_remove (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Remove {} brackets from single statement if (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Device definitions documentation updates (Kamal Heib) [1786604] - [net] xprtrdma: DMA map rr_rdma_buf as each rpcrdma_rep is created (Kamal Heib) [1786604] - [net] xprtrdma: Destroy reps from previous connection instance (Kamal Heib) [1786604] - [net] xprtrdma: Destroy rpcrdma_rep when Receive is flushed (Kamal Heib) [1786604] - [net] xprtrdma: Allocate and map transport header buffers at connect time (Kamal Heib) [1786604] - [net] xprtrdma: Refactor frwr_is_supported (Kamal Heib) [1786604] - [net] xprtrdma: Eliminate per-transport "max pages" (Kamal Heib) [1786604] - [net] xprtrdma: Refactor initialization of ep->rep_max_requests (Kamal Heib) [1786604] - [net] xprtrdma: Make sendctx queue lifetime the same as connection lifetime (Kamal Heib) [1786604] - [net] xprtrdma: Eliminate ri_max_send_sges (Kamal Heib) [1786604] - [infiniband] RDMA/core: Use READ_ONCE for ib_ufile.async_file (Kamal Heib) [1786604] - [infiniband] RDMA/core: Make ib_uverbs_async_event_file into a uobject (Kamal Heib) [1786604] - [rdma] RDMA/core: Remove the ufile arg from rdma_alloc_begin_uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Simplify type usage for ib_uverbs_async_handler() (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_wq.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_srq.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_qp.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_cq.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Make ib_ucq_object use ib_uevent_object (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not allow alloc_commit to fail (Kamal Heib) [1786604] - [infiniband] RDMA/core: Simplify destruction of FD uobjects (Kamal Heib) [1786604] - [infiniband] RDMA/mlx5: Use RCU and direct refcounts to keep memory alive (Kamal Heib) [1786604] - [infiniband] RDMA/uverbs: Remove needs_kfree_rcu from uverbs_obj_type_class (Kamal Heib) [1786604] - [infiniband] RDMA/core: Remove err in iw_query_port (Kamal Heib) [1786604] - [infiniband] IB/hfi1: Add RcvShortLengthErrCnt to hfi1stats (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Add software counter for ctxt0 seq drop (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Return void in packet receiving functions (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Decouple IRQ name from type (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Create API for auto activate (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: IB/hfi1: Add an API to handle special case drop (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Move common receive IRQ code to function (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Add fast and slow handlers for receive context (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Move chip specific functions to chip.c (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/core: Fix locking in ib_uverbs_event_read (Kamal Heib) [1786604] - [infiniband] IB/core: Fix build failure without hugepages (Kamal Heib) [1786604] - [infiniband] IB/core: Rename event_handler_lock to qp_open_list_lock (Kamal Heib) [1786604] - [infiniband] IB/core: Cut down single member ib_cache structure (Kamal Heib) [1786604] - [infiniband] RDMA/core: Add trace points to follow MR allocation (Kamal Heib) [1786604] - [infiniband] RDMA/core: Trace points for diagnosing completion queue issues (Kamal Heib) [1786604] - [infiniband] RDMA/cma: Add trace points in RDMA Connection Manager (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Delete unused CM ARP functions (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Delete unused CM LAP functions (Kamal Heib) [1786604] - [infiniband] RDMA/rxe: Fix error type of mmap_offset (Kamal Heib) [1786604] - [infiniband] IB/iser: use true,false for bool variable (Kamal Heib) [1786604] - [infiniband] IB/hfi1: use true,false for bool variable (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/siw: use true,false for bool variable (Kamal Heib) [1786604] - [infiniband] IB/core: Fix ODP with IB_ACCESS_HUGETLB handling (Kamal Heib) [1786604] - [infiniband] IB/core: Fix ODP get user pages flow (Kamal Heib) [1786604] - [infiniband] IB/rdmavt: Correct comments in rdmavt_qp.h header (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: List all receive contexts from debugfs (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Add accessor API routines to access context members (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/cm: Use RCU synchronization mechanism to protect cm_id_private xa_load() (Kamal Heib) [1786604] - [infiniband] RDMA/srpt: Remove unnecessary assertion in srpt_queue_response (Kamal Heib) [1786604] - [infiniband] RDMA/netlink: Do not always generate an ACK for some netlink operations (Kamal Heib) [1786604] - [infiniband] RDMA/siw: Simplify QP representation (Kamal Heib) [1786604] - [infiniband] RDMA/qedr: Add kernel capability flags for dpm enabled mode (Kamal Heib) [1786604] - [platform] platform/x86: intel_pmc_core: Add Intel Tiger Lake support (Alexander Beregalov) [1783390] - [platform] platform/x86: intel_pmc_core: Create platform dependent bitmap structs (Alexander Beregalov) [1783390] - [platform] platform/x86: intel_pmc_core: Clean up: Remove comma after the termination line (Alexander Beregalov) [1783390] - [pinctrl] pinctrl: tigerlake: Tiger Lake uses _HID enumeration (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Add Coffee Lake-S ACPI ID (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Pass irqchip when adding gpiochip (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Add GPIO <-> pin mapping ranges via callback (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Replace WARN with dev_info_once when setting direct-irq pin to output (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Do not clear IRQ flags on direct-irq enabled pins (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Add missing Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Reuse struct intel_pinctrl in the driver (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use local variable to keep device pointer (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Keep pointer to struct device instead of its container (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Share struct intel_pinctrl for wider use (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use GPIO direction definitions (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use GPIO direction definitions (David Arcari) [1773772] - [include] gpio: Add definition for GPIO direction (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Move IRQ valid mask initialization to a dedicated callback (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Group GPIO IRQ chip initialization (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Allocate IRQ chip dynamic (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Pass irqchip when adding gpiochip (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Add GPIO <-> pin mapping ranges via callback (David Arcari) [1773772] - [gpio] gpiolib: Introduce ->add_pin_ranges() callback (David Arcari) [1773772] - [gpio] gpiolib: Initialize the hardware with a callback (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Update North Community pin list (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Really serialize all register accesses (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Update pin list according to v1.1v6 (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Missed type change to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Add Intel Tiger Lake pin controller support (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use helper to restore register values on ->resume() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Drop level from warning to debug in intel_restore_hostown() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_restore_intmask() helper (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_restore_hostown() helper (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_restore_padcfg() helper (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Avoid potential glitches if pin is in GPIO mode (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Allocate IRQ chip dynamic (David Arcari) [1773772] - [pinctrl] gpio: Initialize the irqchip valid_mask with a callback (David Arcari) [1773772] - [pinctrl] pinctrl: intel: mark intel_pin_to_gpio __maybe_unused (David Arcari) [1773772] - [pinctrl] pinctrl: intel: remap the pin number to gpio offset for irq enabled pin (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Update pin names according to v1.08 (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Remove dev_err() usage after platform_get_irq() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use NSEC_PER_USEC for debounce calculus (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Re-use data structures from pinctrl-intel.h (part 2) (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Remove default Interrupt Status offset (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Simplify offset validation in intel_get_padcfg() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Drop double check for data in intel_pinctrl_probe_by_uid() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use devm_platform_ioremap_resource() (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use devm_platform_ioremap_resource() (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use GENMASK() consistently (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Re-use data structures from pinctrl-intel.h (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use defined macro instead of magic in byt_get_gpio_mux() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Clear interrupt status in mask/unmask callback (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use GENMASK() consistently (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Increase readability of intel_gpio_update_pad_mode() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Retain HOSTSW_OWN for requested gpio pin (David Arcari) [1773772] - [pinctrl] pinctrl: pinctrl-intel: move gpio suspend/resume to noirq phase (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Update pin names according to v1.13c (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Fix potential NULL pointer dereference (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Replace acpi.h with mod_devicetable.h (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Replace acpi.h with mod_devicetable.h (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Replace acpi.h with mod_devicetable.h (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Unexport intel_pinctrl_probe() (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: intel: simplify getting .driver_data (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: simplify getting .driver_data (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Sort register offsets by value (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Update pin list for B0 stepping (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Convert unsigned to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Convert unsigned to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Convert unsigned to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Sort headers alphabetically (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Remove unneeded MODULE_DEVICE_TABLE() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Move linux/pm.h to the local header (David Arcari) [1773772] - [pinctrl] pinctrl: Include nothing else (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce common macro for PM operations (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Convert to use intel_pinctrl_probe_by_hid() (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Convert to use intel_pinctrl_probe_by_hid() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_pinctrl_probe_by_hid() internal API (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Convert to use device_get_match_data() (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Convert to use intel_pinctrl_probe_by_uid() (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Convert to use intel_pinctrl_probe_by_uid() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_pinctrl_probe_by_uid() internal API (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Fix a spelling typo in kernel documentation (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: actually print the apparently misconfigured pin (David Arcari) [1773772] - [mm] mm, page_alloc: move_freepages should not examine struct page of reserved memory (Rafael Aquini) [1588584] - [mm] mm, page_alloc: initialize num_movable in move_freepages() (Rafael Aquini) [1588584] - [tools] selftests: vm: drop dependencies on page flags from mlock2 tests (Rafael Aquini) [1658886] - [powercap] powercap/intel_rapl: add support for TigerLake Mobile (David Arcari) [1783136] - [kernel] locking/lockdep: Avoid recursion in lockdep_count_{for, back}ward_deps() (Waiman Long) [1780993] - [kernel] locking/lockdep: Reuse freed chain_hlocks entries (Waiman Long) [1780993] - [kernel] locking/lockdep: Track number of zapped lock chains (Waiman Long) [1780993] - [kernel] locking/lockdep: Throw away all lock chains with zapped class (Waiman Long) [1780993] - [kernel] locking/lockdep: Track number of zapped classes (Waiman Long) [1780993] - [kernel] locking/lockdep: Display irq_context names in /proc/lockdep_chains (Waiman Long) [1780993] - [kernel] locking/lockdep: Decrement IRQ context counters when removing lock chain (Waiman Long) [1780993] - [kernel] locking/lockdep: Fix lockdep_stats indentation problem (Waiman Long) [1780993] - [kernel] locking/lockdep: Fix buffer overrun problem in stack_trace (Waiman Long) [1780993] - [lib] lib/string: Make memzero_explicit() inline instead of external (Florian Westphal) [1820623] - [crypto] crypto: sha256 - Remove sha256/224_init code duplication (Florian Westphal) [1820623] - [crypto] crypto: sha256 - Merge crypto/sha256.h into crypto/sha.h (Florian Westphal) [1820623] - [crypto] crypto: chelsio - Rename arrays to avoid conflict with crypto/sha256.h (Florian Westphal) [1820623] - [x86] crypto: x86 - Rename functions to avoid conflict with crypto/sha256.h (Florian Westphal) [1820623] - [arm64] crypto: arm64 - Rename functions to avoid conflict with crypto/sha256.h (Florian Westphal) [1820623] - [crypto] crypto: sha256_generic - Switch to the generic lib/crypto/sha256.c lib code (Florian Westphal) [1820623] - [lib] crypto: sha256 - Add sha224 support to sha256 library code (Florian Westphal) [1820623] - [lib] crypto: sha256 - Make lib/crypto/sha256.c suitable for generic use (Florian Westphal) [1820623] - [lib] crypto: sha256 - Use get/put_unaligned_be32 to get input, memzero_explicit (Florian Westphal) [1820623] - [s390] crypto: sha256 - Move lib/sha256.c to lib/crypto (Florian Westphal) [1820623] - [crypto] crypto: sha256_generic - Fix some coding style issues (Florian Westphal) [1820623] - [lib] crypto: sha256 - Fix some coding style issues (Florian Westphal) [1820623] - [thunderbolt] thunderbolt: Fix error code in tb_port_is_width_supported() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Prevent crash if non-active NVMem file is read (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: fix memory leak of object sw (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Fix xhci check in usb4_switch_setup() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add support for USB 3.x tunnels (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add support for Time Management Unit (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Make tb_switch_find_cap() available to other files (Jarod Wilson) [1482838] - [netdrv] thunderbolt: Update Kconfig entries to USB4 (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add initial support for USB4 (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Populate PG field in hot plug acknowledgment packet (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Call tb_eeprom_get_drom_offset() from tb_eeprom_read_n() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Make tb_find_port() available to other files (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Power cycle the router if NVM authentication fails (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Do not start firmware unless asked by the user (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add bandwidth management for Display Port tunnels (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add Display Port adapter pairing and resource management (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add Display Port CM handshake for Titan Ridge devices (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add downstream PCIe port mappings for Alpine and Titan Ridge (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Expand controller name in tb_switch_is_xy() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add default linking between lane adapters if not provided by DROM (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add support for lane bonding (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Refactor add_switch() into two functions (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add helper macro to iterate over switch ports (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Make tb_sw_write() take const parameter (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Convert DP adapter register names to follow the USB4 spec (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Convert PCIe adapter register names to follow the USB4 spec (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Convert basic adapter register names to follow the USB4 spec (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Log error if adding switch fails (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Log switch route string on config read/write timeout (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Introduce tb_switch_is_icm() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add 'generation' attribute for devices (Jarod Wilson) [1482838]- [scsi] scsi: lpfc: Copyright updates for 12.6.0.4 patches (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Update lpfc version to 12.6.0.4 (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Clean up hba max_lun_queue_depth checks (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Remove handler for obsolete ELS - Read Port Status (RPS) (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix coverity errors in fmdi attribute handling (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix compiler warning on frame size (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix registration of ELS type support in fdmi (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix broken Credit Recovery after driver load (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix lpfc_io_buf resource leak in lpfc_get_scsi_buf_s4 error path (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix RQ buffer leakage when no IOCBs available (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Make lpfc_defer_acc_rsp static (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Update lpfc version to 12.6.0.3 (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix improper flag check for IO type (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix MDS Latency Diagnostics Err-drop rates (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix unmap of dpp bars affecting next driver load (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix disablement of FC-AL on lpe35000 models (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix ras_log via debugfs (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix Fabric hostname registration if system hostname changes (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix missing check for CSF in Write Object Mbox Rsp (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix: Rework setting of fdmi symbolic node name registration (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix incomplete NVME discovery when target (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: fix spelling mistakes of asynchronous (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix memory leak on lpfc_bsg_write_ebuf_set func (Dick Kennedy) [1793674] - [tools] tools/power turbostat: Support Tiger Lake (David Arcari) [1783441] - [md] dm integrity: fix logic bug in integrity tag testing (Mike Snitzer) [1820280] - [md] Revert "dm: always call blk_queue_split() in dm_process_bio()" (Mike Snitzer) [1820705] - [md] dm integrity: fix ppc64le warning (Mike Snitzer) [1820280] - [md] dm writecache: add cond_resched to avoid CPU hangs (Mike Snitzer) [1820280] - [md] dm integrity: improve discard in journal mode (Mike Snitzer) [1820280] - [md] dm integrity: add optional discard support (Mike Snitzer) [1820280] - [md] dm integrity: allow resize of the integrity device (Mike Snitzer) [1820280] - [md] dm integrity: factor out get_provided_data_sectors() (Mike Snitzer) [1820280] - [md] dm integrity: don't replay journal data past the end of the device (Mike Snitzer) [1820280] - [md] dm integrity: remove sector type casts (Mike Snitzer) [1820280] - [md] dm integrity: fix a crash with unusually large tag size (Mike Snitzer) [1820280] - [md] dm verity fec: fix memory leak in verity_fec_dtr (Mike Snitzer) [1820280] - [md] dm writecache: optimize superblock write (Mike Snitzer) [1820280] - [md] dm writecache: implement gradual cleanup (Mike Snitzer) [1820280] - [md] dm writecache: implement the "cleaner" policy (Mike Snitzer) [1820280] - [md] dm writecache: do direct write if the cache is full (Mike Snitzer) [1820280] - [md] dm integrity: print device name in integrity_metadata() error message (Mike Snitzer) [1820280] - [md] dm crypt: use crypt_integrity_aead() helper (Mike Snitzer) [1820280] - [lib] lib/test_bitmap: add tests for bitmap_parselist_user() (Vladis Dronov) [1819152] - [lib] lib/test_bitmap: add testcases for bitmap_parselist() (Vladis Dronov) [1819152] - [lib] lib/test_bitmap: switch test_bitmap_parselist to ktime_get() (Vladis Dronov) [1819152] - [lib] lib: rework bitmap_parselist (Vladis Dronov) [1819152] - [lib] lib: make bitmap_parselist_user() a wrapper on bitmap_parselist() (Vladis Dronov) [1819152] - [platform] platform/x86: mlx-platform: Add support for next generation systems (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Add support for new capability register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for new capability register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for new system type (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Set system mux configuration based on system type (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add more definitions for system attributes (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Style changes (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add missed attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Fix documentation inconsistency for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Cosmetic changes (Ivan Vecera) [1820312] - [platform] platform/mellanox: Fix Kconfig indentation (Ivan Vecera) [1820312] - [leds] leds: mlxreg: Fix possible buffer overflow (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Remove dev_err() usage after platform_get_irq() (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix error handling in mlxplat_init() (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add more reset cause attributes (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Modify DMI matching order (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add regmap structure for the next generation systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Change API for i2c-mlxcpld driver activation (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Move regmap initialization before all drivers activation (Ivan Vecera) [1820312] - [documentation] ABI: sysfs-driver-mlxreg-io: fix the what fields (Ivan Vecera) [1820312] - [documentation] docs: watchdog: convert docs to ReST and rename to *.rst (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix parent device in i2c-mux-reg device registration (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Add devm_free_irq call to remove flow (Ivan Vecera) [1820312] - [i2c] i2c: mlxcpld: Fix wrong initialization order in probe (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Use devm_thermal_of_cooling_device_register (Ivan Vecera) [1820312] - [thermal] thermal: Introduce devm_thermal_of_cooling_device_register (Ivan Vecera) [1820312] - [watchdog] watchdog: mlx_wdt: Use 'dev' instead of dereferencing it repeatedly (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Use HWMON_CHANNEL_INFO macro (Ivan Vecera) [1820312] - [include] hwmon: Add convience macro to define simple static sensors (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Add support for fan capability registers (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add mlx-wdt platform driver activation (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for tachometer speed register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix access mode for fan_dir attribute (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add UID LED for the next generation systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add extra CPLD for next generation systems (Ivan Vecera) [1820312] - [documentation] Documentation/watchdog: Add documentation mlx-wdt driver (Ivan Vecera) [1820312] - [watchdog] watchdog: mlx-wdt: introduce a watchdog driver for Mellanox systems (Ivan Vecera) [1820312] - [include] platform_data/mlxreg: additions for Mellanox watchdog driver (Ivan Vecera) [1820312] - [leds] leds: mlxreg: Add support for capability register (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Fix KASAN warning (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Correct mlxreg-io KernelVersion for 5.0 (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for new VMOD0007 board name (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for fan capability registers (Ivan Vecera) [1820312] - [include] platform_data/mlxreg: Add capability field to core platform data (Ivan Vecera) [1820312] - [include] platform_data/mlxreg: Document fixes for core platform data (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for fan direction register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Convert to use SPDX identifier (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Allow mlxreg-io driver activation for new systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix LED configuration (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix tachometer registers (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Rename new systems product names (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add definitions for new registers (Ivan Vecera) [1820312] - [i2c] i2c: mux: mlxcpld: simplify code to reach the adapter (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Properly use mlxplat_mlxcpld_msn201x_items (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix copy-paste error in mlxplat_init() (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Remove unused define (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Change mlxreg-io configuration for MSN274x systems (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Allow mlxreg-io driver activation for more systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add ASIC hotplug device configuration (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Add hotplug hwmon uevent notification (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Improve mechanism of ASIC health discovery (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add mlxreg-fan platform driver activation (Ivan Vecera) [1820312] - [platform] platform/mellanox: Use 2-factor allocator calls (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Modify macros for tachometer fault status reading (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Fix macros for tacho fault reading (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Add support for Mellanox FAN driver (Ivan Vecera) [1820312] - [i2c] i2c: mux: mlxcpld: make use of __i2c_smbus_xfer (Ivan Vecera) [1820312] - [i2c] i2c: smbus: add unlocked __i2c_smbus_xfer variant (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add documentation mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add mlxreg-io platform driver activation (Ivan Vecera) [1820312] - [platform] platform/mellanox: Introduce support for Mellanox register access driver (Ivan Vecera) [1820312] - [kernel] audit: trigger accompanying records when no rules present (Richard Guy Briggs) [1819944] - [kernel] sched/fair: Allow a per-CPU kthread waking a task to stack on the same CPU, to fix XFS performance regression (Phil Auld) [1745111] - [hid] HID: intel-ish-hid: ipc: Add Tiger Lake PCI device ID (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: add CMP device id (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: Spelling s/diconnect/disconnect/ (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: fix wrong error handling in ishtp_cl_alloc_tx_ring() (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: check the NO_D3 flag to distinguish resume paths (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: make ish suspend paths clear (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: set NO_D3 flag only when needed (Tony Camuso) [1818043] - [netdrv] net: ena: Add PCI shutdown handler to allow safe kexec (Bhupesh Sharma) [1758323] - [net] vsock: fix potential deadlock in transport->release() (Stefano Garzarella) [1771582] - [net] vsock/virtio: remove loopback handling (Stefano Garzarella) [1771582] - [net] vsock: use local transport when it is loaded (Stefano Garzarella) [1771582] - [net] vsock: add vsock_loopback transport (Stefano Garzarella) [1771582] - [net] vsock: add local transport support in the vsock core (Stefano Garzarella) [1771582] - [uapi] vsock: add VMADDR_CID_LOCAL definition (Stefano Garzarella) [1771582] - [net] vsock/virtio_transport_common: remove unused virtio header includes (Stefano Garzarella) [1771582] - [infiniband] IB/rdmavt: Free kernel completion queue when done (Gopal Tiwari) [1805036] - [powerpc] powerpc/64s: Fix section mismatch warnings from boot code (Desnes Augusto Nunes do Rosario) [1391523] - [powerpc] powerpc/prom: convert PROM_BUG() to standard trap (Desnes Augusto Nunes do Rosario) [1391523] - [powerpc] powerpc/64: mark start_here_multiplatform as __ref (Desnes Augusto Nunes do Rosario) [1391523] - [mfd] mfd: intel-lpss: Add Intel Tiger Lake PCI IDs (David Arcari) [1773767] - [mfd] mfd: intel-lpss: Release IDA resources (David Arcari) [1773767] - [mfd] mfd: intel-lpss: Keep device tables sorted by ID (David Arcari) [1773767] - [i2c] i2c: i801: Add support for Intel Tiger Lake (David Arcari) [1773765] - [edac] EDAC/mce_amd: Print !SMCA processor warning only once (Prarit Bhargava) [1796178] - [powerpc] powerpc/pseries/dlpar: Fix a missing check in dlpar_parse_cc_property() (Steve Best) [1806630] {CVE-2019-12614}- [x86] x86/gart: Rewrite early_gart_iommu_check() comment (Waiman Long) [1818532] - [mm] mm/memblock.c: warn if zero alignment was requested (Waiman Long) [1818532] - [powerpc] memblock: stop using implicit alignment to SMP_CACHE_BYTES (Waiman Long) [1818532] - [mm] memblock: replace BOOTMEM_ALLOC_* with MEMBLOCK variants (Waiman Long) [1818532] - [mm] mm: remove nobootmem (Waiman Long) [1818532] - [mm] memblock: rename __free_pages_bootmem to memblock_free_pages (Waiman Long) [1818532] - [mm] memblock: rename free_all_bootmem to memblock_free_all (Waiman Long) [1818532] - [firmware] memblock: replace free_bootmem_late with memblock_free_late (Waiman Long) [1818532] - [x86] memblock: replace free_bootmem{_node} with memblock_free (Waiman Long) [1818532] - [mm] mm: nobootmem: remove bootmem allocation APIs (Waiman Long) [1818532] - [mm] memblock: replace __alloc_bootmem with memblock_alloc_from (Waiman Long) [1818532] - [mm] memblock: replace alloc_bootmem_pages with memblock_alloc (Waiman Long) [1818532] - [mm] memblock: replace alloc_bootmem_low_pages with memblock_alloc_low (Waiman Long) [1818532] - [mm] memblock: replace alloc_bootmem_pages_node with memblock_alloc_node (Waiman Long) [1818532] - [mm] memblock: add align parameter to memblock_alloc_node() (Waiman Long) [1818532] - [arm64] memblock: replace alloc_bootmem_low with memblock_alloc_low (2) (Waiman Long) [1818532] - [usb] memblock: replace alloc_bootmem_pages_nopanic with memblock_alloc_nopanic (Waiman Long) [1818532] - [x86] memblock: replace __alloc_bootmem_node_nopanic with memblock_alloc_try_nid_nopanic (Waiman Long) [1818532] - [x86] memblock: replace alloc_bootmem_low with memblock_alloc_low (Waiman Long) [1818532] - [x86] memblock: replace alloc_bootmem_align with memblock_alloc (Waiman Long) [1818532] - [mm] memblock: remove _virt from APIs returning virtual address (Waiman Long) [1818532] - [powerpc] memblock: rename memblock_alloc{_nid, _try_nid} to memblock_phys_alloc* (Waiman Long) [1818532] - [mm] mm: nobootmem: remove dead code (Waiman Long) [1818532] - [mm] mm: remove bootmem allocator implementation (Waiman Long) [1818532] - [mm] mm: remove CONFIG_HAVE_MEMBLOCK (Waiman Long) [1818532] - [mm] mm: remove CONFIG_NO_BOOTMEM (Waiman Long) [1818532] - [mm] mm: disable deferred struct page for 32-bit arches (Waiman Long) [1818532] - [mm] mm: make DEFERRED_STRUCT_PAGE_INIT explicitly depend on SPARSEMEM (Waiman Long) [1818532] - [mm] mm/hugetlb.c: don't zero 1GiB bootmem pages (Waiman Long) [1818532] - [mm] docs/mm: memblock: add overview documentation (Waiman Long) [1818532] - [include] docs/mm: memblock: add kernel-doc description for memblock types (Waiman Long) [1818532] - [mm] docs/mm: memblock: add kernel-doc comments for memblock_add (Waiman Long) [1818532] - [mm] docs/mm: bootmem: add overview documentation (Waiman Long) [1818532] - [include] docs/mm: bootmem: add kernel-doc description of 'struct bootmem_data' (Waiman Long) [1818532] - [mm] docs/mm: bootmem: fix kernel-doc warnings (Waiman Long) [1818532] - [mm] docs/mm: nobootmem: fixup kernel-doc comments (Waiman Long) [1818532] - [mm] mm/bootmem: drop duplicated kernel-doc comments (Waiman Long) [1818532] - [lib] lib/smp_processor_id: Don't use cpumask_equal() (Waiman Long) [1812092] - [kernel] audit: always check the netlink payload length in audit_receive_msg() (Richard Guy Briggs) [1814448] - [kernel] audit: fix error handling in audit_data_to_entry() (Richard Guy Briggs) [1814448] - [fs] fat: work around race with userspace's read via blockdev while mounting (Bill O'Donnell) [1771351] - [include] raid6/test: fix a compilation error (Bhupesh Sharma) [1817524] - [arm64] arm64: kexec_file: add crash dump support (Bhupesh Sharma) [1817524] - [lib] libfdt: include fdt_addresses.c (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.5.1-22-gc40aeb60b47a (Bhupesh Sharma) [1817524] - [include] libfdt: reduce the number of headers included from libfdt_env.h (Bhupesh Sharma) [1817524] - [arm64] arm64: dts: amd: Fix SPI bus warnings (Bhupesh Sharma) [1817524] - [arm64] arm64: dts: broadcom: Fix I2C and SPI bus warnings (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.5.0-30-g702c1b6c0e73 (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.5.0-23-g87963ee20693 (Bhupesh Sharma) [1817524] - [include] linux/kernel.h: split *_MAX and *_MIN macros into (Bhupesh Sharma) [1817524] - [scripts] kbuild: disable dtc simple_bus_reg warnings by default (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.4.7-57-gf267e674d145 (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.4.7-14-gc86da84d30e4 (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: consolidate include path options in Makefile (Bhupesh Sharma) [1817524] - [pci] PCI: Remove unnecessary returns (Myron Stowe) [1807175] - [pci] PCI: OF: Correct of_irq_parse_pci() documentation (Myron Stowe) [1807175] - [pci] PCI: Fix typos and whitespace errors (Myron Stowe) [1807175] - [documentation] PCI: Correct pci=resource_alignment parameter example (Myron Stowe) [1807175] - [pci] PCI: Use PCI_SRIOV_NUM_BARS in loops instead of PCI_IOV_RESOURCE_END (Myron Stowe) [1807175] - [pci] PCI: Convert pci_resource_to_user() to a weak function (Myron Stowe) [1807175] - [pci] PCI: pciehp: Refer to "Indicators" instead of "LEDs" in comments (Myron Stowe) [1807175] - [pci] PCI: pciehp: Remove pciehp_green_led_{on, off, blink}() (Myron Stowe) [1807175] - [pci] PCI: pciehp: Remove pciehp_set_attention_status() (Myron Stowe) [1807175] - [pci] PCI: pciehp: Combine adjacent indicator updates (Myron Stowe) [1807175] - [pci] PCI: pciehp: Add pciehp_set_indicators() to set both indicators (Myron Stowe) [1807175] - [pci] PCI: Add pci_irq_vector() and other stubs when !CONFIG_PCI (Myron Stowe) [1807175] - [pci] PCI: Force trailing new line to resource_alignment_param in sysfs (Myron Stowe) [1807175] - [pci] PCI: Move pci__resource_alignment_param() into their callers (Myron Stowe) [1807175] - [pci] PCI: pci.c: convert to use BUS_ATTR_RW (Myron Stowe) [1807175] - [pci] PCI: Clean up resource_alignment parameter to not require static buffer (Myron Stowe) [1807175] - [pci] PCI/IOV: Remove group write permission from sriov_numvfs, sriov_drivers_autoprobe (Myron Stowe) [1807175] - [pci] PCI/IOV: Move sysfs SR-IOV functions to iov.c (Myron Stowe) [1807175] - [pci] PCI: sysfs: Change permissions from symbolic to octal (Myron Stowe) [1807175] - [pci] PCI: sysfs: Revert "rescan" file renames (Myron Stowe) [1807175] - [pci] PCI: sysfs: Change DEVICE_ATTR() to DEVICE_ATTR_WO() (Myron Stowe) [1807175] - [pci] PCI: pci-sysfs.c: convert to use BUS_ATTR_WO (Myron Stowe) [1807175] - [pci] PCI: sysfs: Define device attributes with DEVICE_ATTR*() (Myron Stowe) [1807175] - [pci] PCI: Mark expected switch fall-through (Myron Stowe) [1807175] - [pci] PCI: Use devm_add_action_or_reset() (Myron Stowe) [1807175] - [pci] PCI: Get rid of dev->has_secondary_link flag (Myron Stowe) [1807175] - [pci] PCI/ACPI: Remove unnecessary struct hotplug_program_ops (Myron Stowe) [1807175] - [pci] PCI/ACPI: Move _HPP & _HPX functions to pci-acpi.c (Myron Stowe) [1807175] - [pci] PCI/ACPI: Rename _HPX structs from hpp_* to hpx_* (Myron Stowe) [1807175] - [pci] PCI: Make pci_set_of_node(), etc private (Myron Stowe) [1807175] - [pci] PCI: Make pci_enable_ptm() private (Myron Stowe) [1807175] - [pci] PCI: Make pcie_set_ecrc_checking(), pcie_ecrc_get_policy() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_ats_init() private (Myron Stowe) [1807175] - [pci] PCI: Make pcie_update_link_speed() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_bus_get(), pci_bus_put() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_hotplug_io_size, mem_size, and bus_size private (Myron Stowe) [1807175] - [pci] PCI: Make pci_save_vc_state(), pci_restore_vc_state(), etc private (Myron Stowe) [1807175] - [pci] PCI: Make pci_get_host_bridge_device(), pci_put_host_bridge_device() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_check_pme_status(), pci_pme_wakeup_bus() private (Myron Stowe) [1807175] - [pci] PCI: Make PCI_PM_* delay times private (Myron Stowe) [1807175] - [pci] PCI: Unexport pci_bus_sem (Myron Stowe) [1807175] - [pci] PCI: Unexport pci_bus_get() and pci_bus_put() (Myron Stowe) [1807175] - [pci] PCI: Remove pci_block_cfg_access() et al (unused) (Myron Stowe) [1807175] - [wireless] PCI: Move ASPM declarations to linux/pci.h (Myron Stowe) [1807175] - [pci] PCI/MSI: Support allocating virtual MSI interrupts (Myron Stowe) [1807175] - [fs] gfs2: Remove unnecessary gfs2_qa_{get,put} pairs (Robert S Peterson) [1807146] - [fs] gfs2: Split gfs2_rsqa_delete into gfs2_rs_delete and gfs2_qa_put (Robert S Peterson) [1807146] - [fs] gfs2: Change inode qa_data to allow multiple users (Robert S Peterson) [1807146] - [fs] gfs2: eliminate gfs2_rsqa_alloc in favor of gfs2_qa_alloc (Robert S Peterson) [1807146] - [fs] gfs2: Switch to list_{first,last}_entry (Robert S Peterson) [1807146] - [fs] gfs2: Clean up inode initialization and teardown (Robert S Peterson) [1807146] - [fs] gfs2: Minor gfs2_alloc_inode cleanup (Robert S Peterson) [1807146] - [pinctrl] pinctrl: pinmux: fix a possible null pointer in pinmux_can_be_used_for_gpio (David Arcari) [1817454] - [pinctrl] pinctrl/gpio: Take MUX usage into account (David Arcari) [1817454] - [include] gpio: Fix build warnings on undefined struct pinctrl_dev (David Arcari) [1817454] - [pinctrl] pinctrl: remove unused pin_is_valid() (David Arcari) [1817454] - [pinctrl] pinctrl: remove unneeded initializer for list_for_each_entry() iterator (David Arcari) [1817454] - [pinctrl] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (David Arcari) [1817454] - [pinctrl] pinctrl: core: Do not add device links for hogs (David Arcari) [1817454] - [pinctrl] pinctrl: Enable device link creation for pin control (David Arcari) [1817454] - [pinctrl] pinctrl: generic: add new 'drive-strength-microamp' property support (David Arcari) [1817454] - [pinctrl] pinctrl: remove unused 'pinconf-config' debugfs interface (David Arcari) [1817454] - [pinctrl] pinctrl: Change to use DEFINE_SHOW_ATTRIBUTE macro (David Arcari) [1817454] - [pinctrl] pinctrl: core: make sure strcmp() doesn't get a null parameter (David Arcari) [1817454] - [pinctrl] pinctrl: core: Remove broken remove_last group and pinmux functions (David Arcari) [1817454] - [pinctrl] pinctrl: pinmux: Return selector to the pinctrl driver (David Arcari) [1817454] - [pinctrl] pinctrl: core: Return selector to the pinctrl driver (David Arcari) [1817454] - [pinctrl] pinctrl: Cut unused sysfs includes (David Arcari) [1817454] - [mm] mm, numa: fix bad pmd by atomically check for pmd_trans_huge when marking page tables prot_numa (Rafael Aquini) [1763878] - [mm] mm: thp: fix flags for pmd migration when split (Rafael Aquini) [1763878] - [mm] mm: thp: relocate flush_cache_range() in migrate_misplaced_transhuge_page() (Rafael Aquini) [1763878] - [mm] mm: thp: fix mmu_notifier in migrate_misplaced_transhuge_page() (Rafael Aquini) [1763878] - [mm] mm: thp: fix MADV_DONTNEED vs migrate_misplaced_transhuge_page race condition (Rafael Aquini) [1763878] - [fs] nfsd: set the server_scope during service startup (Scott Mayhew) [1817752] - [fs] nfsd: v4 support requires CRYPTO_SHA256 (Scott Mayhew) [1817752] - [fs] nfsd: Fix cld_net->cn_tfm initialization (Scott Mayhew) [1817752] - [fs] nfsd: add support for upcall version 2 (Scott Mayhew) [1817752] - [fs] nfsd: add a "GetVersion" upcall for nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: handle legacy client tracking records sent by nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: re-order client tracking method selection (Scott Mayhew) [1817752] - [fs] nfsd: keep a tally of RECLAIM_COMPLETE operations when using nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: un-deprecate nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: make nfs4_client_reclaim use an xdr_netobj instead of a fixed char array (Scott Mayhew) [1817752]- [s390] scsi: zfcp: fix to prevent port_remove with pure auto scan LUNs (only sdevs) (Philipp Rudo) [1814791] - [s390] scsi: zfcp: fix missing zfcp_port reference put on -EBUSY from port_remove (Philipp Rudo) [1814792] - [infiniband] RDMA/qedr: Fix null-pointer dereference when calling rdma_user_mmap_get_offset (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Make qedr_iw_load_qp() static (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Fix potential use after free (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Remove unsupported modify_port callback (Kamal Heib) [1786602] - [infiniband] IB/ipoib: Add ndo operation for getting VFs GUID attributes (Kamal Heib) [1786602] - [net] xprtrdma: Fix oops in Receive handler after device removal (Kamal Heib) [1786602] - [net] xprtrdma: Fix completion wait during device removal (Kamal Heib) [1786602] - [net] xprtrdma: Fix create_qp crash on device unload (Kamal Heib) [1786602] - [infiniband] IB/hfi1: Adjust flow PSN with the correct resync_psn (Kamal Heib) [1786602] - [infiniband] IB/hfi1: Don't cancel unused work item (Kamal Heib) [1786602] - [infiniband] IB/core: Introduce rdma_user_mmap_entry_insert_range() API (Kamal Heib) [1786602] - [infiniband] RDMA/counter: Prevent auto-binding a QP which are not tracked with res (Kamal Heib) [1786602] - [infiniband] rxe: correctly calculate iCRC for unaligned payloads (Kamal Heib) [1786602] - [infiniband] treewide: Use sizeof_field() macro (Kamal Heib) [1786602] - [infiniband] RDMA/cma: add missed unregister_pernet_subsys in init failure (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Expose RDMA read related attributes (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Support remote read access in MR registration (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Store network attributes in device attributes (Kamal Heib) [1786602] - [infiniband] IB/hfi1: remove redundant assignment to variable ret (Kamal Heib) [1786602] - [infiniband] net: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Kamal Heib) [1786602] - [infiniband] IB/core: Add interfaces to get VF node and port GUIDs (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Use refcount_t type for refcount variable (Kamal Heib) [1786602] - [infiniband] RDMA/cma: Use ACK timeout for RoCE packetLifeTime (Kamal Heib) [1786602] - [infiniband] IB/umem: remove the dmasync argument to ib_umem_get (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Add iWARP doorbell recovery support (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Add doorbell overflow recovery support (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Use the common mmap API (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Fix memory leak in user qp and mr (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Fix synchronization methods and memory leaks in qedr (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Fix qpids xarray api used (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Fix srqs xarray initialization (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Remove Unneeded variable rc (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/mlx4: Separate creation of RWQ and QP (Kamal Heib) [1786602] - [infiniband] RDMA/hns: Package for hns_roce_rereg_user_mr function (Kamal Heib) [1786602] - [infiniband] RDMA/hns: Fix sg offset non-zero issue (Kamal Heib) [1786602] - [infiniband] dma-mapping: remove the DMA_ATTR_WRITE_BARRIER flag (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Clear the admin command buffer prior to its submission (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Cleanup unused mmap structures (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Report the SCSI residual to the initiator (Kamal Heib) [1786602] - [infiniband] RDMA: Change MAD processing function to remove extra casting and parameter (Kamal Heib) [1786602] - [infiniband] RDMA/mlx5: Rewrite MAD processing logic to be readable (Kamal Heib) [1786602] - [infiniband] RDMA/ocrdma: Simplify process_mad function (Kamal Heib) [1786602] - [infiniband] RDMA/ocrdma: Make ocrdma_pma_counters() return void (Kamal Heib) [1786602] - [infiniband] RDMA/mad: Do not check MAD sizes in roce and ib drivers (Kamal Heib) [1786602] - [infiniband] RDMA/hfi1: Delete unreachable code (Kamal Heib) [1786602] - [infiniband] RDMA/mad: Allocate zeroed MAD buffer (Kamal Heib) [1786602] - [infiniband] RDMA/mad: Delete never implemented functions (Kamal Heib) [1786602] - [infiniband] RDMA/core: Fix return code when modify_port isn't supported (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Use the common mmap_xa helpers (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Use the common mmap_xa helpers (Kamal Heib) [1786602] - [infiniband] RDMA: Connect between the mmap entry and the umap_priv structure (Kamal Heib) [1786602] - [infiniband] RDMA/hns: Use rdma_user_mmap_io (Kamal Heib) [1786602] - [infiniband] RDMA/core: Create mmap database and cookie helper functions (Kamal Heib) [1786602] - [infiniband] RDMA/core: Move core content from ib_uverbs to ib_core (Kamal Heib) [1786602] - [infiniband] RDMA/odp: Remove broken debugging call to invalidate_range (Kamal Heib) [1786602] - [infiniband] RDMA/vmw_pvrdma: Use resource ids from physical device if available (Kamal Heib) [1786602] - [infiniband] RDMA/core: Set DMA parameters correctly (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Increase DMA max_segment_size parameter (Kamal Heib) [1786602] - [infiniband] RDMA/rxe: Increase DMA max_segment_size parameter (Kamal Heib) [1786602] - [uapi] rdma: Remove nes ABI header (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Fix TPG creation (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Update copyright together with SPDX tag (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Use specific keyword to check define (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Delete unused cm_is_active_peer function (Kamal Heib) [1786602] - [infiniband] RDMA/rxe: Remove useless rxe_init_device_param assignments (Kamal Heib) [1786602] - [net] xprtrdma: Replace dprintk in xprt_rdma_set_port (Kamal Heib) [1786602] - [net] xprtrdma: Replace dprintk() in rpcrdma_update_connect_private() (Kamal Heib) [1786602] - [net] xprtrdma: Refine trace_xprtrdma_fixup (Kamal Heib) [1786602] - [net] xprtrdma: Report the computed connect delay (Kamal Heib) [1786602] - [net] xprtrdma: Wake tasks after connect worker fails (Kamal Heib) [1786602] - [net] xprtrdma: Pull up sometimes (Kamal Heib) [1786602] - [net] xprtrdma: Refactor rpcrdma_prepare_msg_sges() (Kamal Heib) [1786602] - [net] xprtrdma: Move the rpcrdma_sendctx::sc_wr field (Kamal Heib) [1786602] - [net] xprtrdma: Remove rpcrdma_sendctx::sc_device (Kamal Heib) [1786602] - [net] xprtrdma: Remove rpcrdma_sendctx::sc_xprt (Kamal Heib) [1786602] - [net] xprtrdma: Ensure ri_id is stable during MR recycling (Kamal Heib) [1786602] - [net] xprtrdma: Manage MRs in context of a single connection (Kamal Heib) [1786602] - [net] xprtrdma: Fix MR list handling (Kamal Heib) [1786602] - [net] xprtrdma: Initialize rb_credits in one place (Kamal Heib) [1786602] - [infiniband] RDMA/core: Check that process is still alive before sending it to the users (Kamal Heib) [1786602] - [infiniband] RDMA/restrack: Remove PID namespace support (Kamal Heib) [1786602] - [infiniband] RDMA/uverbs: Add a check for uverbs_attr_get to uverbs_copy_to_struct_or_zero (Kamal Heib) [1786602] - [infiniband] IB/cma: Honor traffic class from lower netdevice for RoCE (Kamal Heib) [1786602] - [infiniband] RDMA/nldev: Provide MR statistics (Kamal Heib) [1786602] - [infiniband] RDMA/mlx5: Return ODP type per MR (Kamal Heib) [1786602] - [infiniband] RDMA/nldev: Allow different fill function per resource (Kamal Heib) [1786602] - [infiniband] IB/mlx5: Introduce ODP diagnostic counters (Kamal Heib) [1786602] - [infiniband] infiniband: fix sw/rdmavt/ kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix core/ kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iser_initiator.c kernel-doc warnings (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iser_verbs.c kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix core/verbs.c kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/srpt/ib_srpt.h kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iscsi_iser.h kernel-doc warnings (Kamal Heib) [1786602] - [infiniband] infiniband: fix core/ipwm_util.h kernel-doc warnings (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iscsi_iser.kernel-doc notation (Kamal Heib) [1786602] - [infiniband] RDMA/rw: Support threshold for registration vs scattering to local pages (Kamal Heib) [1786602] - [uapi] RDMA/uapi: Fix and re-organize the usage of rdma_driver_id (Kamal Heib) [1786602] - [net] svcrdma: Improve DMA mapping trace points (Kamal Heib) [1786602] - [infiniband] RDMA/iser: Use iser_err instead of pr_err for logging (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Calculate max_it_iu_size if remote max_it_iu length available (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Add parse function for maximum initiator to target IU size (Kamal Heib) [1786602] - [infiniband] IB/cm: Use container_of() instead of typecast (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Make the code for handling port identities more systematic (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Rework the code that waits until an RDMA port is no longer in use (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Rework the approach for closing an RDMA channel (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Improve a debug message (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Fix handling of iWARP logins (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Fix handling of SR-IOV and iWARP ports (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Make route resolving error messages more informative (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Honor the max_send_sge device attribute (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Remove two casts (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Make node GUIDs valid EUI-64 identifiers (Kamal Heib) [1786602] - [infiniband] RDMA/iw_cxgb3: Remove the iw_cxgb3 module from kernel (Kamal Heib) [1786602] - [infiniband] RDMA/rxe: Verify modify_device mask (Kamal Heib) [1786602] - [infiniband] RDMA/core: Fix return code when modify_device isn't supported (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Fix port number endianness in a debug message (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Simplify several debug messages (Kamal Heib) [1786602] - [infiniband] IB/iser: remove redundant macro definitions (Kamal Heib) [1786602] - [infiniband] IB/iser: bound protection_sg size by data_sg size (Kamal Heib) [1786602] - [infiniband] IB/iser: add unlikely checks in the fast path (Kamal Heib) [1786602] - [infiniband] RDMA/counter: Prevent QP counter manual binding in auto mode (Kamal Heib) [1786602] - [kvm] KVM: SVM: Override default MMIO mask if memory encryption is enabled (Wei Huang) [1789537] - [netdrv] mlx5e: Reorder mirrer action parsing to check for encap first (Ivan Vecera) [1818074] - [tools] selftests: mlxsw: Adjust test to recent changes (Ivan Vecera) [1818074] - [netdrv] vxlan: fix unexpected failure of vxlan_changelink() (Ivan Vecera) [1818074] - [netdrv] bonding: fix lockdep warning in bond_get_stats() (Ivan Vecera) [1818074] - [netdrv] bonding: fix using uninitialized mode_lock (Ivan Vecera) [1818074] - [net] export netdev_next_lower_dev_rcu() (Ivan Vecera) [1818074] - [netdrv] bonding: add missing netdev_update_lockdep_key() (Ivan Vecera) [1818074] - [net] avoid updating qdisc_xmit_lock_key in netdev_update_lockdep_key() (Ivan Vecera) [1818074] - [include] net: fix kernel-doc warning in (Ivan Vecera) [1818074] - [net] batman-adv: Drop lockdep.h include for soft-interface.c (Ivan Vecera) [1818074] - [net] remove unnecessary variables and callback (Ivan Vecera) [1818074] - [netdrv] macsec: Fix multiple coding style issues (Ivan Vecera) [1818074] - [netdrv] vxlan: add adjacent link to limit depth level (Ivan Vecera) [1818074] - [net] core: add ignore flag to netdev_adjacent structure (Ivan Vecera) [1818074] - [netdrv] team: fix nested locking lockdep warning (Ivan Vecera) [1818074] - [netdrv] bonding: use dynamic lockdep key instead of subclass (Ivan Vecera) [1818074] - [netdrv] bonding: fix unexpected IFF_BONDING bit unset (Ivan Vecera) [1818074] - [net] core: add generic lockdep keys (Ivan Vecera) [1818074] - [net] core: limit nested device depth (Ivan Vecera) [1818074] - [net] udp: rehash on disconnect (Davide Caratti) [1817671] - [net] revert "udp: do rmem bulk free even if the rx sk queue is empty" (Davide Caratti) [1817671] - [net] udp: fix data-race in udp_set_dev_scratch() (Davide Caratti) [1817671] - [net] page_pool: refill page when alloc.count of pool is zero (Petr Oros) [1811201] - [net] page_pool: help compiler remove code in case CONFIG_NUMA=n (Petr Oros) [1811201] - [net] page_pool: handle page recycle for NUMA_NO_NODE condition (Petr Oros) [1811201] - [netdrv] mlx5e: Rx, Update page pool numa node when changed (Petr Oros) [1811201] - [net] page_pool: Don't recycle non-reusable pages (Petr Oros) [1811201] - [net] page_pool: Add API to update numa node (Petr Oros) [1811201] - [include] page_pool: extend tracepoint to also include the page PFN (Petr Oros) [1811201] - [net] page_pool: add destroy attempts counter and rename tracepoint (Petr Oros) [1811201] - [net] page_pool: remove unnecessary variable init (Petr Oros) [1811201] - [net] page_pool: fix logic in __page_pool_get_cached (Petr Oros) [1811201] - [netdrv] team: add missing attribute validation for array index (Hangbin Liu) [1816499] - [netdrv] team: add missing attribute validation for port ifindex (Hangbin Liu) [1816499] - [netdrv] team: Add vlan tx offload to hw_enc_features (Hangbin Liu) [1816499] - [netdrv] team: set slave to promisc if team is already in promisc mode (Hangbin Liu) [1816499] - [netdrv] team: Free BPF filter when unregistering netdev (Hangbin Liu) [1816499] - [netdrv] net: Remove switchdev.h inclusion from team/bond/vlan (Hangbin Liu) [1816499] - [netdrv] team: use operstate consistently for linkup (Hangbin Liu) [1816499] - [netdrv] team: avoid complex list operations in team_nl_cmd_options_set() (Hangbin Liu) [1816499] - [netdev] pass the stuck queue to the timeout handler (Ivan Vecera) [1811203] - [net] flow_dissector: extract more ICMP information (Ivan Vecera) [1795213] - [net] flow_dissector: skip the ICMP dissector for non ICMP packets (Ivan Vecera) [1795213] - [net] flow_dissector: add meaningful comments (Ivan Vecera) [1795213] - [net] vti[6]: fix packet tx through bpf_redirect() in XinY cases (Sabrina Dubroca) [1795145] - [net] xfrm interface: fix packet tx through bpf_redirect() (Sabrina Dubroca) [1795145] - [net] vti[6]: fix packet tx through bpf_redirect() (Sabrina Dubroca) [1795145] - [documentation] Clarify trap's description (Petr Oros) [1809496] - [net] devlink: Wait longer before warning about unset port type (Petr Oros) [1809496] - [documentation] Add a section for devlink-trap testing (Petr Oros) [1809496] - [tools] selftests: devlink_trap: Add test cases for devlink-trap (Petr Oros) [1809496] - [tools] selftests: forwarding: devlink_lib: Add devlink-trap helpers (Petr Oros) [1809496] - [tools] selftests: forwarding: devlink_lib: Allow tests to define devlink device (Petr Oros) [1809496] - [documentation] Add devlink-trap documentation (Petr Oros) [1809496] - [net] devlink: Add generic packet traps and groups (Petr Oros) [1809496] - [net] devlink: Add packet trap infrastructure (Petr Oros) [1809496] - [net] devlink: add warning in case driver does not set port type (Petr Oros) [1809496] - [net] devlink: remove unused devlink_port_get_phys_port_name() function (Petr Oros) [1809496] - [net] tcp: add sanity tests in tcp_add_backlog() (Guillaume Nault) [1790843] - [net] tcp: implement coalescing on backlog queue (Guillaume Nault) [1790843] - [include] tcp: make tcp_space() aware of socket backlog (Guillaume Nault) [1790843] - [net] tcp: take care of compressed acks in tcp_add_reno_sack() (Guillaume Nault) [1790843] - [include] tcp: hint compiler about sack flows (Guillaume Nault) [1790843] - [net] tcp: drop dst in tcp_add_backlog() (Guillaume Nault) [1790843] - [net] drop_monitor: Do not cancel uninitialized work item (Petr Oros) [1810114] - [net] drop_monitor: Use kstrdup (Petr Oros) [1810114] - [net] drop_monitor: Better sanitize notified packets (Petr Oros) [1810114] - [net] drop_monitor: Make timestamps y2038 safe (Petr Oros) [1810114] - [net] drop_monitor: Allow user to start monitoring hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Add support for summary alert mode for hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Add support for packet alert mode for hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Consider all monitoring states before performing configuration (Petr Oros) [1810114] - [net] drop_monitor: Add basic infrastructure for hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Initialize hardware per-CPU data (Petr Oros) [1810114] - [net] drop_monitor: Move per-CPU data init/fini to separate functions (Petr Oros) [1810114] - [maintainers] drop_monitor: Add missing uAPI file to MAINTAINERS file (Petr Oros) [1810114] - [net] drop_monitor: Expose tail drop counter (Petr Oros) [1810114] - [net] drop_monitor: Make drop queue length configurable (Petr Oros) [1810114] - [net] drop_monitor: Add a command to query current configuration (Petr Oros) [1810114] - [net] drop_monitor: Allow truncation of dropped packets (Petr Oros) [1810114] - [net] drop_monitor: Add packet alert mode (Petr Oros) [1810114] - [net] drop_monitor: Add alert mode operations (Petr Oros) [1810114] - [net] drop_monitor: Require CAP_NET_ADMIN for drop monitor configuration (Petr Oros) [1810114] - [net] drop_monitor: Reset per-CPU data before starting to trace (Petr Oros) [1810114] - [net] drop_monitor: Initialize timer and work item upon tracing enable (Petr Oros) [1810114] - [net] drop_monitor: Split tracing enable / disable to different functions (Petr Oros) [1810114] - [net] drop_monitor: Use pre_doit / post_doit hooks (Petr Oros) [1810114] - [net] drop_monitor: Add extack support (Petr Oros) [1810114] - [net] drop_monitor: Avoid multiple blank lines (Petr Oros) [1810114] - [net] drop_monitor: Document scope of spinlock (Petr Oros) [1810114] - [net] drop_monitor: Rename and document scope of mutex (Petr Oros) [1810114] - [net] drop_monitor: Use correct error code (Petr Oros) [1810114] - [net] revert "net: dev: introduce support for sch BYPASS for lockless qdisc" (Paolo Abeni) [1805983] - [net] neighbour: remove neigh_cleanup() method (Ivan Vecera) [1795285] - [include] trace: events: neigh_update: print new state in string format (Ivan Vecera) [1795285] - [net] neigh: hook tracepoints in neigh update code (Ivan Vecera) [1795285] - [net] trace: events: add a few neigh tracepoints (Ivan Vecera) [1795285] - [net] netfilter: nf_tables: add __nft_chain_type_get() (Florian Westphal) [1806888] - [net] devlink: Hang reporter's dump method on a dumpit cb (Andrea Claudi) [1804798] - [net] core: Do not clear VF index for node/port GUIDs query (Petr Oros) [1805312] - [net] core: Populate VF index in struct ifla_vf_guid (Petr Oros) [1805312] - [net] core: Add support for getting VF GUIDs (Petr Oros) [1805312] - [tools] ptp: Extend the test program to check the external time stamp flags (Petr Oros) [1795192] - [netdrv] mlx5: Reject requests to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] igb: Reject requests that fail to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] dp83640: Reject requests to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] mv88e6xxx: Reject requests to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] ptp: Introduce strict checking of external time stamp options (Petr Oros) [1795192] - [netdrv] renesas: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] mlx5: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] igb: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] dp83640: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] mv88e6xxx: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] net: reject PTP periodic output requests with unsupported flags (Petr Oros) [1795192] - [ptp] Validate requests to enable time stamping of external signals (Petr Oros) [1795192] - [tools] ptp: Fix example program to match kernel (Petr Oros) [1795192] - [include] uaccess: add noop untagged_addr definition (Josef Oskera) [1805320] - [include] debugfs: Add debugfs_create_xul() for hexadecimal unsigned long (Josef Oskera) [1795286] - [documentation] debugfs: Document debugfs helper for unsigned long values (Josef Oskera) [1795286] - [net] vsock/virtio: add WARN_ON check on virtio_transport_get_ops() (Stefano Garzarella) [1692797] - [net] vsock/virtio: fix null-pointer dereference in virtio_transport_recv_listen() (Stefano Garzarella) [1692797] - [net] vsock: avoid to assign transport if its initialization fails (Stefano Garzarella) [1692797] - [misc] vsock/vmci: make vmci_vsock_cb_host_called static (Stefano Garzarella) [1692797] - [net] vsock: fix bind() behaviour taking care of CID (Stefano Garzarella) [1692797] - [net] vsock: prevent transport modules unloading (Stefano Garzarella) [1692797] - [misc] vsock/vmci: register vmci_transport only when VMCI guest/host are active (Stefano Garzarella) [1692797] - [net] vsock: add multi-transports support (Stefano Garzarella) [1692797] - [net] hv_sock: set VMADDR_CID_HOST in the hvs_remote_addr_init() (Stefano Garzarella) [1692797] - [net] vsock: move vsock_insert_unbound() in the vsock_create() (Stefano Garzarella) [1692797] - [net] vsock: add vsock_create_connected() called by transports (Stefano Garzarella) [1692797] - [net] vsock: handle buffer_size sockopts in the core (Stefano Garzarella) [1692797] - [net] vsock: add 'struct vsock_sock *' param to vsock_core_get_transport() (Stefano Garzarella) [1692797] - [net] vsock/virtio: add transport parameter to the virtio_transport_reset_no_sock() (Stefano Garzarella) [1692797] - [net] vsock: add 'transport' member in the struct vsock_sock (Stefano Garzarella) [1692797] - [kernel] vsock: remove linux/vm_sockets.h file (Stefano Garzarella) [1692797] - [net] vsock: remove vm_sockets_get_local_cid() (Stefano Garzarella) [1692797] - [net] vsock/vmci: remove unused VSOCK_DEFAULT_CONNECT_TIMEOUT (Stefano Garzarella) [1692797] - [x86] kvm: x86: clear stale x86_emulate_ctxt->intercept value (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: vmx: check descriptor table exits on instruction emulation (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: nvmx: Check IO instruction VM-exit conditions (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: nvmx: Refactor IO bitmap checks into helper function (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: nvmx: Don't emulate instructions in guest mode (Jon Maloy) [1806817] {CVE-2020-2732}- [fs] gfs2: Fix oversight in gfs2_ail1_flush (Robert S Peterson) [1724769] - [kernel] sched/uclamp: Extend sched_setattr() to support utilization clamping (Phil Auld) [1810399] - [kernel] sched/core: Further clarify sched_class::set_next_task() (Phil Auld) [1810399] - [kernel] sched/fair: Use mul_u32_u32() (Phil Auld) [1810399] - [kernel] sched/core: Simplify sched_class::pick_next_task() (Phil Auld) [1810399] - [kernel] sched/core: Optimize pick_next_task() (Phil Auld) [1810399] - [kernel] sched/core: Make pick_next_task_idle() more consistent (Phil Auld) [1810399] - [kernel] sched/fair: Better document newidle_balance() (Phil Auld) [1810399] - [kernel] sched: Fix pick_next_task() vs 'change' pattern race (Phil Auld) [1810399] - [cpufreq] cpufreq: Initialize the governors in core_initcall (Phil Auld) [1810399] - [kernel] sched/vtime: Fix guest/system mis-accounting on task switch (Phil Auld) [1810399] - [kernel] sched/fair/util_est: Implement faster ramp-up EWMA on utilization increases (Phil Auld) [1810399] - [kernel] sched/topology: Allow sched_asym_cpucapacity to be disabled (Phil Auld) [1810399] - [kernel] sched/topology: Don't try to build empty sched domains (Phil Auld) [1810399] - [kernel] sched/topology: Don't set SD_BALANCE_WAKE on cpuset domain relax (Phil Auld) [1810399] - [kernel] membarrier: Fix RCU locking bug caused by faulty merge (Phil Auld) [1810399] - [kernel] sched/core: Fix preempt_schedule() interrupt return comment (Phil Auld) [1810399] - [kernel] sched/membarrier: Return -ENOMEM to userspace on memory allocation failure (Phil Auld) [1810399] - [kernel] sched/membarrier: Skip IPIs when mm->mm_users == 1 (Phil Auld) [1810399] - [tools] selftests, sched/membarrier: Add multi-threaded test (Phil Auld) [1810399] - [kernel] sched/membarrier: Fix p->mm->membarrier_state racy load (Phil Auld) [1810399] - [include] sched/membarrier: Call sync_core only before usermode for same mm (Phil Auld) [1810399] - [kernel] sched/membarrier: Remove redundant check (Phil Auld) [1810399] - [kernel] sched/membarrier: Fix private expedited registration check (Phil Auld) [1810399] - [kernel] tasks, sched/core: RCUify the assignment of rq->curr (Phil Auld) [1810399] - [kernel] tasks, sched/core: With a grace period after finish_task_switch(), remove unnecessary code (Phil Auld) [1810399] - [kernel] tasks, sched/core: Ensure tasks are available for a grace period after leaving the runqueue (Phil Auld) [1810399] - [kernel] tasks: Add a count of task RCU users (Phil Auld) [1810399] - [include] sched/core: Convert task_struct.usage to refcount_t (Phil Auld) [1810399] - [include] sched/core: Convert vcpu_is_preempted() from macro to an inline function (Phil Auld) [1810399] - [kernel] sched/fair: Remove unused cfs_rq_clock_task() function (Phil Auld) [1810399] - [scripts] Kbuild: Handle PREEMPT_RT for version string and magic (Phil Auld) [1810399] - [kernel] sched/fair: Use rq_lock/unlock in online_fair_sched_group (Phil Auld) [1810399] - [kernel] sched: Rework pick_next_task() slow-path (Phil Auld) [1810399] - [kernel] sched: Allow put_prev_task() to drop rq->lock (Phil Auld) [1810399] - [kernel] sched/fair: Expose newidle_balance() (Phil Auld) [1810399] - [kernel] sched: Add task_struct pointer to sched_class::set_curr_task (Phil Auld) [1810399] - [kernel] sched: Rework CPU hotplug task selection (Phil Auld) [1810399] - [kernel] rcu/tree: Fix SCHED_FIFO params (Phil Auld) [1810399] - [kernel] sched: Clean up active_mm reference counting (Phil Auld) [1810399] - [kernel] sched/{rt, deadline}: Fix set_next_task vs pick_next_task (Phil Auld) [1810399] - [kernel] sched: Fix kerneldoc comment for ia64_set_curr_task (Phil Auld) [1810399] - [kernel] stop_machine: Fix stop_cpus_in_progress ordering (Phil Auld) [1810399] - [kernel] sched/psi: Reduce psimon FIFO priority (Phil Auld) [1810399] - [kernel] sched/psi: Do not require setsched permission from the trigger creator (Phil Auld) [1810399] - [x86] x86/kvm: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [x86] x86/dumpstack: Indicate PREEMPT_RT in dumps (Phil Auld) [1810399] - [x86] x86: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] kprobes: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] tracing: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [include] locking/spinlocks: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] rcu: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] sched/preempt: Use CONFIG_PREEMPTION where appropriate (Phil Auld) [1810399] - [kernel] sched/core: Prevent race condition between cpuset and __sched_setscheduler() (Phil Auld) [1810399] - [kernel] rcu/tree: Call setschedule() gp ktread to SCHED_FIFO outside of atomic region (Phil Auld) [1810399] - [kernel] cgroup/cpuset: Change cpuset_rwsem and hotplug lock order (Phil Auld) [1810399] - [kernel] cgroup/cpuset: Convert cpuset_mutex to percpu_rwsem (Phil Auld) [1810399] - [kernel] sched/deadline: Fix bandwidth accounting at all levels after offline migration (Phil Auld) [1810399] - [kernel] cpusets: Rebuild root domain deadline accounting information (Phil Auld) [1810399] - [kernel] sched/core: Streamle calls to task_rq_unlock() (Phil Auld) [1810399] - [kernel] sched/topology: Add partition_sched_domains_locked() (Phil Auld) [1810399] - [kernel] sched/stats: Fix unlikely() use of sched_info_on() (Phil Auld) [1810399] - [kernel] sched/fair: Change task_numa_work() storage to static (Phil Auld) [1810399] - [kernel] sched/fair: Move task_numa_work() init to init_numa_balancing() (Phil Auld) [1810399] - [kernel] sched/fair: Move init_numa_balancing() below task_numa_work() (Phil Auld) [1810399] - [kernel] sched/rt, Kconfig: Unbreak def/oldconfig with CONFIG_PREEMPT=y (Phil Auld) [1810399] - [kernel] sched/rt, Kconfig: Introduce CONFIG_PREEMPT_RT (Phil Auld) [1810399] - [kernel] kconfig: include kernel/Kconfig.preempt from init/Kconfig (Phil Auld) [1810399] - [kernel] sched/core: Fix preempt warning in ttwu (Phil Auld) [1810399] - [kernel] sched/core: Optimize try_to_wake_up() for local wakeups (Phil Auld) [1810399] - [kernel] sched/core: Introduce set_next_task() helper for better code readability (Phil Auld) [1810399] - [kernel] sched/fair: Don't increase sd->balance_interval on newidle balance (Phil Auld) [1810399] - [kernel] sched/fair: Clean up load_balance() condition (Phil Auld) [1810399] - [mm] mm: fix possible PMD dirty bit lost in set_pmd_migration_entry() (Rafael Aquini) [1809698] - [mm] mm, thp: fix defrag setting if newline is not used (Rafael Aquini) [1809698] - [mm] mm/migrate.c: also overwrite error when it is bigger than zero (Rafael Aquini) [1809698] - [mm] mm/mempolicy.c: fix out of bounds write in mpol_parse_str() (Rafael Aquini) [1809698] - [mm] mm: memcg/slab: call flush_memcg_workqueue() only if memcg workqueue is valid (Rafael Aquini) [1809698] - [mm] mm/page-writeback.c: avoid potential division by zero in wb_min_max_ratio() (Rafael Aquini) [1809698] - [mm] mm/gup: fix memory leak in __gup_benchmark_ioctl (Rafael Aquini) [1809698] - [mm] mm: move_pages: return valid node id in status if the page is already on the target node (Rafael Aquini) [1809698] - [mm] mm/zsmalloc.c: fix the migrated zspage statistics (Rafael Aquini) [1809698] - [mm] mm: memcg/slab: wait for !root kmem_cache refcnt killing on root kmem_cache destruction (Rafael Aquini) [1809698] - [mm] mm/mempolicy.c: check range first in queue_pages_test_walk (Rafael Aquini) [1809698] - [mm] mm/memory.c: fix a huge pud insertion race during faulting (Rafael Aquini) [1809698] - [mm] mm: move the backup x_devmap() functions to asm-generic/pgtable.h (Rafael Aquini) [1809698] - [mm] mm/rmap.c: don't reuse anon_vma if we just want a copy (Rafael Aquini) [1809698] - [mm] mm/ksm.c: don't WARN if page is still mapped in remove_stable_node() (Rafael Aquini) [1809698] - [mm] mm/page_io.c: do not free shared swap slots (Rafael Aquini) [1809698] - [mm] mm: thp: handle page cache THP correctly in PageTransCompoundMap (Rafael Aquini) [1809698] - [mm] mm/slub: fix a deadlock in show_slab_objects() (Rafael Aquini) [1809698] - [mm] mm/vmpressure.c: fix a signedness bug in vmpressure_register_event() (Rafael Aquini) [1809698] - [trace] include/trace/events/writeback.h: fix -Wstringop-truncation warnings (Rafael Aquini) [1809698] - [mm] mm/compaction.c: clear total_{migrate, free}_scanned before scanning a new zone (Rafael Aquini) [1809698] - [mm] mm/hmm: fix hmm_range_fault()'s handling of swapped out pages (Rafael Aquini) [1809698] - [mm] mm/migrate.c: initialize pud_entry in migrate_vma() (Rafael Aquini) [1809698] - [kernel] ptrace: restore smp_rmb() in __ptrace_may_access() (Rafael Aquini) [1809698] - [documentation] mm: fix Documentation/vm/hmm.rst Sphinx warnings (Rafael Aquini) [1809698] - [fs] writeback: fix inode cgroup switching comment (Rafael Aquini) [1809698] - [include] mm/page_poison: update comment after code moved (Rafael Aquini) [1809698] - [mm] mm/filemap: pass inclusive 'end_byte' parameter to filemap_range_has_page (Rafael Aquini) [1809698] - [mm] ARM: 8826/1: mm: initialize pfn limits with find_limits() (Rafael Aquini) [1809698] - [fs] mm, proc: report PR_SET_THP_DISABLE in proc (Rafael Aquini) [1809698] - [mm] mm/khugepaged: fix crashes due to misaccounted holes (Rafael Aquini) [1809698] - [include] writeback: don't decrement wb->refcnt if !wb->bdi (Rafael Aquini) [1809698] - [mm] mm/filemap.c: Use existing variable (Rafael Aquini) [1809698] - [fs] removed extra extern file_fdatawait_range (Rafael Aquini) [1809698] - [s390] Revert "s390/dasd: Disable Thin Provisioning to prevent data loss" (Philipp Rudo) [1816984] - [s390] s390/dasd: fix data corruption for thin provisioned devices (Philipp Rudo) [1816984] - [block] virtio-blk: improve virtqueue error to BLK_STS (Philipp Rudo) [1816983] - [block] virtio-blk: fix hw_queue stopped on arbitrary error (Philipp Rudo) [1816983] - [s390] s390/pkey: fix missing length of protected key on return (Philipp Rudo) [1816981] - [s390] s390/mm: fix panic in gup_fast on large pud (Philipp Rudo) [1816980]- [mmc] mmc: core: Use a minimum 1600ms timeout when enabling CACHE ctrl (Yannick Cote) [1811430] - [mmc] mmc: core: Allow BKOPS and CACHE ctrl even if no HPI support (Yannick Cote) [1811430] - [net] net/smc: keep vlan_id for SMC-R in smc_listen_work() (Philipp Rudo) [1796890] - [scripts] redhat: fix modpost.c prerequisites (Frantisek Hrbata) [1818499] - [tools] tools/power/x86/intel-speed-select: Update version (Prarit Bhargava) [1817068] - [tools] tools/power/x86/intel-speed-select: Change the order for clos disable (Prarit Bhargava) [1817068] - [tools] tools/power/x86/intel-speed-select: Fix result display for turbo-freq auto mode (Prarit Bhargava) [1817068] - [tools] tools/power/x86/intel-speed-select: Add support for core-power discovery (Prarit Bhargava) [1817068] - [netdrv] can, slip: Protect tty->disc_data in write_wakeup and close with RCU (Steve Best) [1816036] - [kernel] exit: panic before exit_mm() on global init exit (Oleg Nesterov) [1808944] - [fs] nfsd: restore NFSv3 ACL support ("J. Bruce Fields") [1815683] - [fs] nfsd4: Fix kernel crash when reading proc file reply_cache_stats ("J. Bruce Fields") [1815683] - [fs] nfsd: fix cleanup of nfsd_reply_cache_init on failure ("J. Bruce Fields") [1815683] - [fs] nfsd: note inadequate stats locking ("J. Bruce Fields") [1815683] - [fs] nfsd4: drc containerization ("J. Bruce Fields") [1815683] - [fs] nfsd: don't call nfsd_reply_cache_shutdown twice ("J. Bruce Fields") [1815683] - [fs] nfsd: knfsd must use the container user namespace ("J. Bruce Fields") [1815683] - [net] SUNRPC: rsi_parse() should use the current user namespace ("J. Bruce Fields") [1815683] - [net] SUNRPC: Fix the server AUTH_UNIX userspace mappings ("J. Bruce Fields") [1815683] - [fs] lockd: Pass the user cred from knfsd when starting the lockd server ("J. Bruce Fields") [1815683] - [net] SUNRPC: Temporary sockets should inherit the cred from their parent ("J. Bruce Fields") [1815683] - [fs] SUNRPC: Cache the process user cred in the RPC server listener ("J. Bruce Fields") [1815683] - [fs] nfsd: Allow containers to set supported nfs versions ("J. Bruce Fields") [1815683] - [fs] nfsd: Add custom rpcbind callbacks for knfsd ("J. Bruce Fields") [1815683] - [fs] SUNRPC: Allow further customisation of RPC program registration ("J. Bruce Fields") [1815683] - [net] SUNRPC: Clean up generic dispatcher code ("J. Bruce Fields") [1815683] - [fs] SUNRPC: Add a callback to initialise server requests ("J. Bruce Fields") [1815683] - [fs] SUNRPC/nfs: Fix return value for nfs4_callback_compound() ("J. Bruce Fields") [1815683] - [kernel] sched: Avoid scale real weight down to zero (Phil Auld) [1808562] - [nvme] nvme/pci: move cqe check after device shutdown (David Milburn) [1779247 1750267] - [mm] mm, slb: guarantee natural alignment for kmalloc(power-of-two) (Brian Foster) [1814964] - [tools] tools/power turbostat: Support Ice Lake server (Steve Best) [1776467] - [pinctrl] pinctrl: intel: Allow to request locked pads (Prarit Bhargava) [1783115] - [s390] s390/qeth: fix potential deadlock on workqueue flush (Philipp Rudo) [1814783] - [s390] s390/qeth: streamline control code for promisc mode (Philipp Rudo) [1814783] - [s390] scsi: zfcp: fix request object use-after-free in send path causing wrong traces (Philipp Rudo) [1814790] - [s390] s390/pci: Fix possible deadlock in recover_store() (Philipp Rudo) [1814788] - [s390] s390/pci: Recover handle in clp_set_pci_fn() (Philipp Rudo) [1814788] - [s390] scsi: zfcp: fix rport unblock if deleted SCSI devices on Scsi_Host (Philipp Rudo) [1814794] - [s390] scsi: zfcp: fix scsi_eh host reset with port_forced ERP for non-NPIV FCP devices (Philipp Rudo) [1814793] - [s390] s390/cio: fix virtio-ccw DMA without PV (Philipp Rudo) [1814787] - [s390] s390/kaslr: store KASLR offset for early dumps (Philipp Rudo) [1814781] - [mm] s390/mm: fix dynamic pagetable upgrade for hugetlbfs (Philipp Rudo) [1814779] - [char] tpm: ibmvtpm: retry on H_CLOSED in tpm_ibmvtpm_send() (Steve Best) [1808048] - [s390] s390/qeth: fix dangling IO buffers after halt/clear (Philipp Rudo) [1814782] - [virtio] virtio_ring: fix unmap of indirect descriptors (Philipp Rudo) [1797289] - [virtio] virtio_ring: fix return code on DMA mapping fails (Philipp Rudo) [1797289] - [misc] dma-mapping: zero memory returned from dma_alloc_* (Philipp Rudo) [1788928] - [platform] platform/mellanox: fix the mlx-bootctl sysfs (Alaa Hleihel) [1655714] - [platform] platform/mellanox: Add bootctl driver for Mellanox BlueField Soc (Alaa Hleihel) [1655714] - [char] tpm: ibmvtpm: Wait for buffer to be set before proceeding (Steve Best) [1815548] - [scsi] iscsi: Avoid potential deadlock in iscsi_if_rx func (Oleksandr Natalenko) [1815874] - [x86] x86/vector: Remove warning on managed interrupt migration (Peter Xu) [1812331] - [scsi] scsi: lpfc: fix spelling mistake "Notication" -> "Notification" (Dick Kennedy) [1796565] - [scsi] scsi: lpfc: add RDF registration and Link Integrity FPIN logging (Dick Kennedy) [1796565] - [uapi] scsi: fc: Update Descriptor definition and add RDF and Link Integrity FPINs (Dick Kennedy) [1796565]- [kvm] KVM: PPC: Book3S HV: Use __gfn_to_pfn_memslot in HPT page fault handler (Sam Bobroff) [1815491] - [net] tcp: also NULL skb->dev when copy was needed (Florian Westphal) [1775961] - [net] tcp: ensure skb->dev is NULL before leaving TCP stack (Florian Westphal) [1775961]- [mm] mm/memcontrol: use vmstat names for printing statistics (Waiman Long) [1793534] - [base] mm/vmstat: add helpers to get vmstat item names for each enum type (Waiman Long) [1793534] - [mm] mm/vmstat.c: assert that vmstat_text is in sync with stat_items_size (Waiman Long) [1793534] - [mm] mm: memcontrol: dump memory.stat during cgroup OOM (Waiman Long) [1793534] - [mm] mm/memcontrol.c: lost css_put in memcg_expand_shrinker_maps() (Waiman Long) [1793534] - [mm] mm: memcg/slab: fix percpu slab vmstats flushing (Waiman Long) [1793534] - [include] include/linux/memcontrol.h: fix comments based on per-node memcg (Waiman Long) [1793534] - [mm] mm: memcg: switch to css_tryget() in get_mem_cgroup_from_mm() (Waiman Long) [1793534] - [mm] mm: memcontrol: fix network errors from failing __GFP_ATOMIC charges (Waiman Long) [1793534] - [mm] mm: slab: make page_cgroup_ino() to recognize non-compound slab pages properly (Waiman Long) [1793534] - [mm] mm: memcontrol: fix NULL-ptr deref in percpu stats flush (Waiman Long) [1793534] - [mm] mm/memcontrol: update lruvec counters in mem_cgroup_move_account (Waiman Long) [1793534] - [mm] mm: memcg: get number of pages on the LRU list in memcgroup base on lru_zone_size (Waiman Long) [1793534] - [mm] mm: memcontrol: fix percpu vmstats and vmevents flush (Waiman Long) [1793534] - [mm] mm, memcg: partially revert "mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones" (Waiman Long) [1793534] - [mm] mm: memcontrol: flush percpu slab vmstats on kmem offlining (Waiman Long) [1793534] - [mm] mm: memcontrol: flush percpu vmevents before releasing memcg (Waiman Long) [1793534] - [mm] mm: memcontrol: flush percpu vmstats before releasing memcg (Waiman Long) [1793534] - [mm] mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones (Waiman Long) [1793534] - [mm] mm/memcontrol: fix wrong statistics in memory.stat (Waiman Long) [1793534] - [mm] mm: memcontrol: don't batch updates of local VM stats and events (Waiman Long) [1793534] - [mm] mm: memcontrol: fix NUMA round-robin reclaim at intermediate level (Waiman Long) [1793534] - [mm] mm: memcontrol: fix recursive statistics correctness & scalabilty (Waiman Long) [1793534] - [mm] mm: memcontrol: move stat/event counting functions out-of-line (Waiman Long) [1793534] - [mm] mm: memcontrol: make cgroup stats and events query API explicitly local (Waiman Long) [1793534] - [mm] mm, memcg: rename ambiguously named memory.stat counters and functions (Waiman Long) [1793534] - [mm] mm: memcontrol: quarantine the mem_cgroup_nr_lru_pages() API (Waiman Long) [1793534] - [mm] mm: memcontrol: push down mem_cgroup_nr_lru_pages() (Waiman Long) [1793534] - [mm] mm: memcontrol: push down mem_cgroup_node_nr_lru_pages() (Waiman Long) [1793534] - [mm] mm: memcontrol: replace node summing with memcg_page_state() (Waiman Long) [1793534] - [mm] mm: memcontrol: replace zone summing with lruvec_page_state() (Waiman Long) [1793534] - [include] mm: memcontrol: track LRU counts in the vmstats array (Waiman Long) [1793534] - [mm] mm: writeback: use exact memcg dirty counts (Waiman Long) [1793534] - [mm] mm: memcontrol: expose THP events on a per-memcg basis (Waiman Long) [1793534] - [mm] memcg: killed threads should not invoke memcg OOM killer (Waiman Long) [1793534] - [mm] mm, memcg: extract memcg maxable seq_file logic to seq_show_memcg_tunable (Waiman Long) [1793534] - [mm] mm, memcg: create mem_cgroup_from_seq (Waiman Long) [1793534] - [mm] mm/oom_kill.c: fix uninitialized oc->constraint (Waiman Long) [1793534] - [mm] mm, oom: add oom victim's memcg to the oom context information (Waiman Long) [1793534] - [mm] mm, oom: reorganize the oom report in dump_header (Waiman Long) [1793534] - [include] mm: Clarify the implication of adding new node stat items (Waiman Long) [1793534] - [mm] memcg: Revert "Add preemption point in accumulate_memcg_tree()" (Waiman Long) [1793534] - [base] driver core: add dev_groups to all drivers (Don Dutile) [1814347] - [tools] selftests/livepatch: Remove unused local variable in set_ftrace_enabled() (Yannick Cote) [1807115] - [tools] selftests/livepatch: Replace set_dynamic_debug() with setup_config() in README (Yannick Cote) [1807115] - [tools] selftests: livepatch: Fix it to do root uid check and skip (Yannick Cote) [1807115] - [tools] selftests/livepatch: Test interaction with ftrace_enabled (Yannick Cote) [1807115] - [tools] selftests/livepatch: Make dynamic debug setup and restore generic (Yannick Cote) [1807115] - [kernel] ftrace: Introduce PERMANENT ftrace_ops flag (Yannick Cote) [1807115] - [samples] livepatch: Handle allocation failure in the sample of shadow variable API (Yannick Cote) [1807115] - [lib] livepatch/samples/selftest: Use klp_shadow_alloc() API correctly (Yannick Cote) [1807115] - [lib] livepatch/selftest: Clean up shadow variable names and type (Yannick Cote) [1807115] - [samples] livepatch/sample: Use the right type for the leaking data pointer (Yannick Cote) [1807115] - [kernel] kprobes: Allow kprobes coexist with livepatch (Yannick Cote) [1727330 1807115] - [x86] ftrace/x86: Remove mcount() declaration (Yannick Cote) [1807115] - [tools] selftests: livepatch: add missing fragments to config (Yannick Cote) [1807115] - [lib] livepatch: Selftests of the API for tracking system state changes (Yannick Cote) [1807115] - [documentation] livepatch: Documentation of the new API for tracking system state changes (Yannick Cote) [1807115] - [kernel] livepatch: Allow to distinguish different version of system state changes (Yannick Cote) [1807115] - [kernel] livepatch: Basic API to track system state changes (Yannick Cote) [1807115] - [kernel] livepatch: Keep replaced patches until post_patch callback is called (Yannick Cote) [1807115] - [tools] selftests/livepatch: Disable the timeout (Yannick Cote) [1807115] - [kernel] livepatch: Nullify obj->mod in klp_module_coming()'s error path (Yannick Cote) [1807115] - [powerpc] livepatch: Remove klp_check_compiler_support() (Yannick Cote) [1807115] - [x86] ftrace/x86: Remove mcount support (Yannick Cote) [1807115] - [x86] ftrace/x86_32: Remove support for non DYNAMIC_FTRACE (Yannick Cote) [1807115] - [documentation] docs/livepatch: Unify style of livepatch documentation in the ReST format (Yannick Cote) [1807115] - [documentation] docs: livepatch: convert docs to ReST and rename to *.rst (Yannick Cote) [1807115] - [kernel] livepatch: Remove duplicate warning about missing reliable stacktrace support (Yannick Cote) [1807115] - [kernel] livepatch: Use static buffer for debugging messages under rq lock (Yannick Cote) [1807115] - [include] livepatch: Remove stale kobj_added entries from kernel-doc descriptions (Yannick Cote) [1807115] - [kernel] livepatch: Remove duplicated code for early initialization (Yannick Cote) [1807115] - [kernel] livepatch: Remove custom kobject state handling (Yannick Cote) [1807115] - [kernel] livepatch: Convert error about unsupported reliable stacktrace into a warning (Yannick Cote) [1807115] - [kernel] kprobes: Replace p with other pointer types (Yannick Cote) [1727330 1807115]- [drm] drm/bochs: downgrade pci_request_region failure from error to warning (Dave Airlie) [1804735] - [drm] drm/bochs: deinit bugfix (Dave Airlie) [1804735] - [fs] gfs2: fix O_EXCL|O_CREAT handling on cold dcache (Andrew Price) [1811787] - [net] esp: remove the skb from the chain when it's enqueued in cryptd_wq (Xin Long) [1807909] - [powerpc] powerpc/nvdimm: set target_node properly (Diego Domingos) [1815038]- [kernel] posix-cpu-timers: Fix two trivial comments (Prarit Bhargava) [1810244] - [kernel] hrtimer: Annotate lockless access to timer->base (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Fix permission check regression (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Always clear head pointer on dequeue (Prarit Bhargava) [1810244] - [kernel] hrtimer: Add a missing bracket and hide `migration_base' on !SMP (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Make expiry_active check actually work correctly (Prarit Bhargava) [1810244] - [include] posix-timers: Unbreak CONFIG_POSIX_TIMERS=n build (Prarit Bhargava) [1810244] - [kernel] tick: Mark sched_timer to expire in hard interrupt context (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Utilize timerqueue for storage (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Move state tracking to struct posix_cputimers (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Deduplicate rlimit handling (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove pointless comparisons (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Get rid of 64bit divisions (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Consolidate timer expiry further (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Get rid of zero checks (Prarit Bhargava) [1810244] - [kernel] rlimit: Rewrite non-sensical RLIMIT_CPU comment (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Respect INFINITY for hard RTTIME limit (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Switch thread group sampling to array (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Restructure expiry array (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove cputime_expires (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Make expiry checks array based (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide array based sample functions (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Remove the odd field rename defines (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Switch check_*_timers() to array cache (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Simplify set_process_cpu_timer() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Simplify timer queueing (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide array based access to expiry cache (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Move expiry cache into struct posix_cputimers (Prarit Bhargava) [1810244] - [include] sched: Move struct task_cputime to types.h (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Create a container struct (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Move prof/virt_ticks into caller (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Sample task times once in expiry check (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Get rid of pointer indirection (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Simplify sample functions (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove pointless return value check (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use clock ID in posix_cpu_timer_rearm() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use clock ID in posix_cpu_timer_get() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use clock ID in posix_cpu_timer_set() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Consolidate thread group sample code (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Rename thread_group_cputimer() and make it static (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Sample directly in timer check (Prarit Bhargava) [1810244] - [kernel] itimers: Use quick sample function (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide quick sample function for itimer (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use common permission check in posix_cpu_timer_create() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use common permission check in posix_cpu_clock_get() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide task validation functions (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove tsk argument from run_posix_cpu_timers() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Sanitize bogus WARNONS (Prarit Bhargava) [1810244] - [kernel] hrtimer: Don't take expiry_lock when timer is currently migrated (Prarit Bhargava) [1810244] - [kernel] hrtimer: Protect lockless access to timer->base (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Fixup stale comment (Prarit Bhargava) [1810244] - [include] alarmtimers: Avoid rtc.h include (Prarit Bhargava) [1810244] - [include] posix-timers: Cleanup forward declarations and includes (Prarit Bhargava) [1810244] - [kernel] hrtimer: Improve comments on handling priority inversion against softirq kthread (Prarit Bhargava) [1810244] - [kernel] posix-timers: Use a callback for cancel synchronization on PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] posix-timers: Move rcu_head out of it union (Prarit Bhargava) [1810244] - [kernel] posix-timers: Rework cancel retry loops (Prarit Bhargava) [1810244] - [kernel] posix-timers: Cleanup the flag/flags confusion (Prarit Bhargava) [1810244] - [kernel] itimers: Prepare for PREEMPT_RT (Prarit Bhargava) [1810244] - [fs] timerfd: Prepare for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] alarmtimer: Prepare for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] sched/deadline: Ensure inactive_timer runs in hardirq context (Prarit Bhargava) [1810244] - [kernel] timers: Prepare support for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] hrtimer: Prepare support for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] hrtimer: Determine hard/soft expiry mode for hrtimer sleepers on RT (Prarit Bhargava) [1810244] - [kernel] hrtimer: Move unmarked hrtimers to soft interrupt expiry on RT (Prarit Bhargava) [1810244] - [kernel] tick: Mark tick related hrtimers to expiry in hard interrupt context (Prarit Bhargava) [1810244] - [kvm] KVM: LAPIC: Mark hrtimer to expire in hard interrupt context (Prarit Bhargava) [1810244] - [kernel] watchdog: Mark watchdog_hrtimer to expire in hard interrupt context (Prarit Bhargava) [1810244] - [kernel] perf/core: Mark hrtimers to expire in hard interrupt context (Prarit Bhargava) [1810244] - [kernel] hrtimer: Make enqueue mode check work on RT (Prarit Bhargava) [1810244] - [kernel] sched: Mark hrtimers to expire in hard interrupt context (Prarit Bhargava) [1810244] - [staging] hrtimer/treewide: Use hrtimer_sleeper_start_expires() (Prarit Bhargava) [1810244] - [kernel] hrtimer: Provide hrtimer_sleeper_start_expires() (Prarit Bhargava) [1810244] - [kernel] hrtimer: Consolidate hrtimer_init() + hrtimer_init_sleeper() calls (Prarit Bhargava) [1810244] - [kernel] hrtimer: Remove task argument from hrtimer_init_sleeper() (Prarit Bhargava) [1810244] - [kernel] futex: Consolidate duplicated timer setup code (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove private interval storage (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Unbreak timer rearming (Prarit Bhargava) [1810244] - [mm] mm, slub: naive detection of double-free or freelist corruption (Rafael Aquini) [1810288] - [fs] nfs: add minor version to nfs_server_key for fscache (Dave Wysochanski) [1777097] - [edac] EDAC, mellanox: Add ECC support for BlueField DDR4 (Alaa Hleihel) [1725108] - [platform] platform/mellanox: fix potential deadlock in the tmfifo driver (Alaa Hleihel) [1655736] - [platform] platform/mellanox: Add TmFifo driver for Mellanox BlueField Soc (Alaa Hleihel) [1655736] - [mm] powerpc/pmem: Fix kernel crash due to wrong range value usage in flush_dcache_range (Steve Best) [1814279] - [mm] powerpc: Chunk calls to flush_dcache_range in arch_*_memory (Steve Best) [1814279] - [fs] cifs: fix NULL dereference in match_prepath (Leif Sahlberg) [1760879] - [fs] cifs: fail i/o on soft mounts if sessionsetup errors out (Leif Sahlberg) [1798031] - [sound] ALSA: usb-audio: set the interface format after resume on Dell WD19 (Perry Yuan) [1807965] - [fs] cifs: make sure we do not overflow the max EA buffer size (Leif Sahlberg) [1752437]- [netdrv] net/mlx5e: Don't clear the whole vf config when switching modes (mohamad meib) [1814350] - [fs] fuse: fix stack use after return (Miklos Szeredi) [1814666]- [target] scsi: Revert "target: iscsi: Wait for all commands to finish before freeing a session" (Maurizio Lombardi) [1784442] - [infiniband] scsi: Revert "RDMA/isert: Fix a recently introduced regression related to logout" (Maurizio Lombardi) [1784442] - [target] scsi: Revert "target/core: Inline transport_lun_remove_cmd()" (Maurizio Lombardi) [1784442] - [target] scsi: libfc: remove unnecessary assertion on ep variable (Maurizio Lombardi) [1784442] - [infiniband] scsi: RDMA/isert: Fix a recently introduced regression related to logout (Maurizio Lombardi) [1784442] - [target] scsi: target/iblock: Fix protection error with blocks greater than 512B (Maurizio Lombardi) [1784442] - [target] scsi: target: core: Fix a pr_debug() argument (Maurizio Lombardi) [1784442] - [target] scsi: target: iscsi: Wait for all commands to finish before freeing a session (Maurizio Lombardi) [1784442] - [target] scsi: target: core: Release SPC-2 reservations when closing a session (Maurizio Lombardi) [1784442] - [target] scsi: target: core: Document target_cmd_size_check() (Maurizio Lombardi) [1784442] - [target] scsi: target: tcmu: Prevent memory reclaim recursion (Maurizio Lombardi) [1784442] - [scsi] scsi: cxgb4i: remove set but not used variable 'ppmax' (Maurizio Lombardi) [1784442] - [target] scsi: target: remove unused extension parameters (Maurizio Lombardi) [1784442] - [target] scsi: target: fix SendTargets=All string compares (Maurizio Lombardi) [1784442] - [target] scsi: target: Remove tpg_list and se_portal_group.se_tpg_node (Maurizio Lombardi) [1784442] - [target] scsi: target: cxgbit: Fix cxgbit_fw4_ack() (Maurizio Lombardi) [1784442] - [infiniband] IB/hfi1: TID RDMA WRITE should not return IB_WC_RNR_RETRY_EXC_ERR (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Calculate flow weight based on QP MTU for TID RDMA (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Ensure r_tid_ack is valid before building TID RDMA ACK packet (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Ensure full Gen3 speed in a Gen4 system (Kamal Heib) [1786601] - [infiniband] IB/core: Avoid deadlock during netlink message handling (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Fix incorrect error print (Kamal Heib) [1786601] - [infiniband] IB/iser: Support up to 16MB data transfer in a single command (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Add missing cast for 32 bit (Kamal Heib) [1786601] - [documentation] Documentation/infiniband: update name of some functions (Kamal Heib) [1786601] - [infiniband] RDMA/iwpm: Delete unnecessary checks before the macro call "dev_kfree_skb" (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Use existing FIELD_SIZEOF macro (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Remove umem check on dereg MR flow (Kamal Heib) [1786601] - [net] xprtrdma: Send Queue size grows after a reconnect (Kamal Heib) [1786601] - [net] xprtrdma: Clear xprt->reestablish_timeout on close (Kamal Heib) [1786601] - [net] xprtrdma: Recycle MRs after disconnect (Kamal Heib) [1786601] - [net] xprtrdma: Optimize rpcrdma_post_recvs() (Kamal Heib) [1786601] - [net] xprtrdma: Inline XDR chunk encoder functions (Kamal Heib) [1786601] - [infiniband] RDMA/core: Make invalidate_range a device operation (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Use kvcalloc for the dma_list and page_list (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Check for overflow when computing the umem_odp end (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Provide ib_umem_odp_release() to undo the allocs (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Split creating a umem_odp from ib_umem_get (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Make the three ways to create a umem_odp clear (Kamal Heib) [1786601] - [infiniband] RMDA/odp: Consolidate umem_odp initialization (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Make it clearer when a umem is an implicit ODP umem (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Iterate over the whole rbtree directly (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Use the common interval tree library instead of generic (Kamal Heib) [1786601] - [net] xprtrdma: Clean up xprt_rdma_set_connect_timeout() (Kamal Heib) [1786601] - [net] xprtrdma: Use an llist to manage free rpcrdma_reps (Kamal Heib) [1786601] - [net] xprtrdma: Remove rpcrdma_buffer::rb_mrlock (Kamal Heib) [1786601] - [net] xprtrdma: Cache free MRs in each rpcrdma_req (Kamal Heib) [1786601] - [net] xprtrdma: Ensure creating an MR does not trigger FS writeback (Kamal Heib) [1786601] - [net] xprtrdma: Move rpcrdma_mr_get out of frwr_map (Kamal Heib) [1786601] - [net] xprtrdma: Combine rpcrdma_mr_put and rpcrdma_mr_unmap_and_put (Kamal Heib) [1786601] - [net] xprtrdma: Simplify rpcrdma_mr_pop (Kamal Heib) [1786601] - [net] xprtrdma: Rename rpcrdma_buffer::rb_all (Kamal Heib) [1786601] - [net] xprtrdma: Rename CQE field in Receive trace points (Kamal Heib) [1786601] - [infiniband] RDMA: Delete DEBUG code (Kamal Heib) [1786601] - [include] xprtrdma: Boost client's max slot table size to match Linux server (Kamal Heib) [1786601] - [net] xprtrdma: Boost maximum transport header size (Kamal Heib) [1786601] - [net] xprtrdma: Fix calculation of ri_max_segs again (Kamal Heib) [1786601] - [net] xprtrdma: Update obsolete comment (Kamal Heib) [1786601] - [net] xprtrdma: Refresh the documenting comment in frwr_ops.c (Kamal Heib) [1786601] - [net] svcrdma: Use llist for managing cache of recv_ctxts (Kamal Heib) [1786601] - [net] svcrdma: Remove svc_rdma_wq (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Rate limit admin queue error prints (Kamal Heib) [1786601] - [rdma] RDMA/core: Introduce ratelimited ibdev printk functions (Kamal Heib) [1786601] - [net] rdma: Enable ib_alloc_cq to spread work over a device's comp_vectors (Kamal Heib) [1786601] - [infiniband] RDMA/core: fix spelling mistake "Nelink" -> "Netlink" (Kamal Heib) [1786601] - [infiniband] net: Use skb_frag_off accessors (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Expose device statistics (Kamal Heib) [1786601] - [infiniband] RDMA/core: Support netlink commands in non init_net net namespaces (Kamal Heib) [1786601] - [rdma] RDMA: Make most headers compile stand alone (Kamal Heib) [1786601] - [infiniband] RDMA/core: Annotate destroy of mutex to ensure that it is released as unlocked (Kamal Heib) [1786601] - [infiniband] net: Use skb accessors in network drivers (Kamal Heib) [1786601] - [documentation] docs: infiniband: add it to the driver-api bookset (Kamal Heib) [1786601] - [infiniband] IB/hfi1: use the new FOLL_LONGTERM flag to get_user_pages_fast() (Kamal Heib) [1786601] - [documentation] Documentation/infiniband: update from locked to pinned_vm (Kamal Heib) [1786601] - [infiniband] opa_vnic: fix check on record->event, incorrect operator used (Kamal Heib) [1786601] - [infiniband] opa_vnic: Convert vport_idr to XArray (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Ensure ucast_dlid access doesnt exceed bounds (Kamal Heib) [1786601] - [infiniband] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Kamal Heib) [1786601] - [infiniband] treewide: Add SPDX license identifier - Kbuild (Kamal Heib) [1786601] - [infiniband] mm/gup: add make_dirty arg to put_user_pages_dirty_lock() (Kamal Heib) [1786601] - [netdrv] ibmvnic: Do not process device remove during device reset (Steve Best) [1813223] - [bluetooth] Revert "Bluetooth: btusb: driver to enable the usb-wakeup feature" (Gopal Tiwari) [1811534] - [tty] serial: 8250_pci: Make PCI class test non fatal (Prarit Bhargava) [1812742] - [powercap] powercap/intel_rapl: add support for ICX-D (Steve Best) [1485067] - [char] drivers: ipmi: fix off-by-one bounds check that leads to a out-of-bounds write (Tony Camuso) [1812922] - [char] ipmi:ssif: Handle a possible NULL pointer reference (Tony Camuso) [1812922] - [char] drivers: ipmi: Modify max length of IPMB packet (Tony Camuso) [1812922] - [char] drivers: ipmi: Support raw i2c packet in IPMB (Tony Camuso) [1812922] - [char] ipmi: fix ipmb_poll()'s return type (Tony Camuso) [1812922] - [char] char: Fix Kconfig indentation, continued (Tony Camuso) [1812922] - [char] char: Fix Kconfig indentation (Tony Camuso) [1812922] - [char] ipmi: kill off 'timespec' usage again (Tony Camuso) [1812922] - [char] drivers: ipmi: Support for both IPMB Req and Resp (Tony Camuso) [1812922] - [char] ipmi: Fix memory leak in __ipmi_bmc_register (Tony Camuso) [1812922] - [char] ipmi: bt-bmc: use devm_platform_ioremap_resource() to simplify code (Tony Camuso) [1812922] - [char] ipmi: use *ph to print small buffer (Tony Camuso) [1812922] - [char] ipmi: Don't leave holes in the I2C address list in the ssif driver (Tony Camuso) [1812922] - [char] ipmi: fix return value of ipmi_set_my_LUN (Tony Camuso) [1812922] - [char] ipmi: Convert pr_xxx() to dev_xxx() in the BT code (Tony Camuso) [1812922] - [char] ipmi:dmi: Ignore IPMI SMBIOS entries with a zero base address (Tony Camuso) [1812922] - [char] ipmi_si: fix potential integer overflow on large shift (Tony Camuso) [1812922] - [char] ipmi_si_pci: fix NULL device in ipmi_si error message (Tony Camuso) [1812922] - [char] ipmi: Convert printk(KERN_ to pr_( (Tony Camuso) [1812922] - [char] pci:ipmi: Move IPMI PCI class id defines to pci_ids.h (Tony Camuso) [1812922] - [char] ipmi:powernv: Convert ipmi_smi_t to struct ipmi_smi (Tony Camuso) [1812922] - [fs] NFSv4 fix acl retrieval over krb5i/krb5p mounts (Steve Dickson) [1787627]- [fs] gfs2: Additional information when gfs2_ail1_flush withdraws (Robert S Peterson) [1752976] - [fs] gfs2: Fix lru_count going negative (Robert S Peterson) [1752976] - [fs] gfs2: allow journal replay to hold sd_log_flush_lock (Robert S Peterson) [1752976] - [fs] gfs2: don't allow releasepage to free bd still used for revokes (Robert S Peterson) [1752976] - [fs] gfs2: clean up iopen glock mess in gfs2_create_inode (Robert S Peterson) [1752976] - [fs] gfs2: flesh out delayed withdraw for gfs2_log_flush (Robert S Peterson) [1752976] - [fs] gfs2: Fix incorrect variable name (Robert S Peterson) [1752976] - [fs] gfs2: Do proper error checking for go_sync family of glops functions (Robert S Peterson) [1752976] - [fs] gfs2: Don't demote a glock until its revokes are written (Robert S Peterson) [1752976] - [fs] gfs2: drain the ail2 list after io errors (Robert S Peterson) [1752976] - [fs] gfs2: Withdraw in gfs2_ail1_flush if write_cache_pages fails (Robert S Peterson) [1752976] - [fs] gfs2: Do log_flush in gfs2_ail_empty_gl even if ail list is empty (Robert S Peterson) [1752976] - [fs] gfs2: Check for log write errors before telling dlm to unlock (Robert S Peterson) [1752976] - [fs] gfs2: Prepare to withdraw as soon as an IO error occurs in log write (Robert S Peterson) [1752976] - [fs] gfs2: Issue revokes more intelligently (Robert S Peterson) [1752976] - [fs] gfs2: Add verbose option to check_journal_clean (Robert S Peterson) [1752976] - [fs] gfs2: fix infinite loop when checking ail item count before go_inval (Robert S Peterson) [1752976] - [fs] gfs2: Force withdraw to replay journals and wait for it to finish (Robert S Peterson) [1752976] - [fs] gfs2: Allow some glocks to be used during withdraw (Robert S Peterson) [1752976] - [fs] gfs2: move check_journal_clean to util.c for future use (Robert S Peterson) [1752976] - [fs] gfs2: Ignore dlm recovery requests if gfs2 is withdrawn (Robert S Peterson) [1752976] - [fs] gfs2: Only complain the first time an io error occurs in quota or log (Robert S Peterson) [1752976] - [fs] gfs2: log error reform (Robert S Peterson) [1752976] - [fs] gfs2: Rework how rgrp buffer_heads are managed (Robert S Peterson) [1752976] - [fs] gfs2: clear ail1 list when gfs2 withdraws (Robert S Peterson) [1752976] - [fs] gfs2: Introduce concept of a pending withdraw (Robert S Peterson) [1752976] - [fs] gfs2: Return bool from gfs2_assert functions (Robert S Peterson) [1752976] - [fs] gfs2: Turn gfs2_consist into void functions (Robert S Peterson) [1752976] - [fs] gfs2: Remove usused cluster_wide arguments of gfs2_consist functions (Robert S Peterson) [1752976] - [fs] gfs2: Report errors before withdraw (Robert S Peterson) [1752976] - [fs] gfs2: Split gfs2_lm_withdraw into two functions (Robert S Peterson) [1752976] - [fs] gfs2: Fix possible fs name overflows (Robert S Peterson) [1752976] - [fs] gfs2: Remove active journal side effect from gfs2_write_log_header (Robert S Peterson) [1752976] - [fs] gfs2: Don't loop forever in gfs2_freeze if withdrawn (Robert S Peterson) [1752976] - [fs] gfs2: fix infinite loop in gfs2_ail1_flush on io error (Robert S Peterson) [1752976] - [fs] gfs2: Introduce function gfs2_withdrawn (Robert S Peterson) [1752976] - [fs] gfs2: fix glock reference problem in gfs2_trans_add_unrevoke (Robert S Peterson) [1752976] - [fs] gfs2: make gfs2_log_shutdown static (Robert S Peterson) [1752976] - [fs] gfs2: replace more printk with calls to fs_info and friends (Robert S Peterson) [1752976] - [fs] gfs2: dump fsid when dumping glock problems (Robert S Peterson) [1752976] - [fs] gfs2: simplify gfs2_freeze by removing case (Robert S Peterson) [1752976] - [fs] gfs2: Rename SDF_SHUTDOWN to SDF_WITHDRAWN (Robert S Peterson) [1752976] - [fs] gfs2: Warn when a journal replay overwrites a rgrp with buffers (Robert S Peterson) [1752976] - [fs] gfs2: log which portion of the journal is replayed (Robert S Peterson) [1752976] - [fs] gfs2: kthread and remount improvements (Robert S Peterson) [1752976] - [fs] gfs2: Fix occasional glock use-after-free (Robert S Peterson) [1752976] - [fs] gfs2: Rename sd_log_le_{revoke,ordered} (Robert S Peterson) [1724769] - [watchdog] watchdog: make nowayout sysfs file writable (David Arcari) [1802742] - [watchdog] watchdog: prevent deferral of watchdogd wakeup on RT (David Arcari) [1802742] - [watchdog] watchdog: Fix the race between the release of watchdog_core_data and cdev (David Arcari) [1802742] - [watchdog] watchdog: convert remaining drivers to use SPDX license identifier (David Arcari) [1802742] - [watchdog] watchdog: make the device time out at open_deadline when open_timeout is used (David Arcari) [1802742] - [watchdog] watchdog: introduce CONFIG_WATCHDOG_OPEN_TIMEOUT (David Arcari) [1802742] - [watchdog] watchdog: introduce watchdog.open_timeout commandline parameter (David Arcari) [1802742] - [watchdog] watchdog: let core print error message when registering device fails (David Arcari) [1802742] - [watchdog] watchdog: make watchdog_deferred_registration_add() void (David Arcari) [1802742] - [watchdog] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (David Arcari) [1802742] - [watchdog] watchdog: add error messages when initializing timeout fails (David Arcari) [1802742] - [watchdog] watchdog: refactor watchdog_init_timeout (David Arcari) [1802742] - [watchdog] watchdog: core: fix null pointer dereference when releasing cdev (David Arcari) [1802742] - [x86] x86/ioapic: Prevent inconsistent state when moving an interrupt (Prarit Bhargava) [1810236] - [x86] x86/fpu: Don't cache access to fpu_fpregs_owner_ctx (Prarit Bhargava) [1810236] - [lib] lib/ubsan: don't serialize UBSAN report (Prarit Bhargava) [1810243] - [lib] ubsan, x86: Annotate and allow __ubsan_handle_shift_out_of_bounds() in uaccess regions (Prarit Bhargava) [1810243] - [kernel] workqueue: Fix pwq ref leak in rescuer_thread() (Prarit Bhargava) [1810243] - [kernel] workqueue: Fix missing kfree(rescuer) in destroy_workqueue() (Prarit Bhargava) [1810243] - [kernel] workqueue: Fix spurious sanity check failures in destroy_workqueue() (Prarit Bhargava) [1810243] - [include] hrtimer: Add kernel doc annotation for HRTIMER_MODE_HARD (Prarit Bhargava) [1810243] - [kernel] genirq: Force interrupt threading on RT (Prarit Bhargava) [1810243] - [include] hrtimer: Introduce HARD expiry mode (Prarit Bhargava) [1810243] - [kernel] workqueue: Remove GPF argument from alloc_workqueue_attrs() (Prarit Bhargava) [1810243] - [kernel] workqueue: Make alloc/apply/free_workqueue_attrs() static (Prarit Bhargava) [1810243] - [tools] objtool: Add UACCESS validation (Prarit Bhargava) [1810243] - [tools] objtool: Handle function aliases (Prarit Bhargava) [1810243] - [lib] ubsan: build ubsan.c more conservatively (Prarit Bhargava) [1810243] - [lib] x86/uaccess, ubsan: Fix UBSAN vs. SMAP (Prarit Bhargava) [1810243] - [tools] objtool: Rewrite alt->skip_orig (Prarit Bhargava) [1810243] - [fs] dlm: Don't swamp the CPU with callbacks queued during recovery (Robert S Peterson) [1752976] - [nvme] nvmet: update AEN list and array at one place (Gopal Tiwari) [1781927] - [nvme] nvmet: Fix controller use after free (Gopal Tiwari) [1781927] - [nvme] nvmet: Fix error print message at nvmet_install_queue function (Gopal Tiwari) [1781927] - [nvme] nvme-pci: remove nvmeq->tags (Gopal Tiwari) [1781927] - [nvme] nvmet: fix dsm failure when payload does not match sgl descriptor (Gopal Tiwari) [1781927] - [nvme] nvme: hwmon: switch to use helpers (Gopal Tiwari) [1781927] - [nvme] nvmet: fix per feat data len for get_feature (Gopal Tiwari) [1781927] - [nvme] nvme/pci: Fix read queue count (Gopal Tiwari) [1781927] - [nvme] nvme/pci Limit write queue sizes to possible cpus (Gopal Tiwari) [1781927] - [nvme] nvme/pci: Fix write and poll queue types (Gopal Tiwari) [1781927] - [nvme] nvme/pci: Remove last_cq_head (Gopal Tiwari) [1781927] - [nvme] nvme: Namepace identification descriptor list is optional (Gopal Tiwari) [1781927] - [nvme] Revert "nvme: Add quirk for Kingston NVME SSD running FW E8FK11.T" (Gopal Tiwari) [1781927] - [nvme] nvme: else following return is not needed (Gopal Tiwari) [1781927] - [nvme] nvme: add error message on mismatching controller ids (Gopal Tiwari) [1781927] - [nvme] nvme_fc: add module to ops template to allow module references (Gopal Tiwari) [1781927] - [nvme] nvmet-loop: Avoid preallocating big SGL for data (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Avoid preallocating big SGL for data (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Avoid preallocating big SGL for data (Gopal Tiwari) [1781927] - [nvme] nvme: hwmon: add quirk to avoid changing temperature threshold (Gopal Tiwari) [1781927] - [nvme] nvme: hwmon: provide temperature min and max values for each sensor (Gopal Tiwari) [1781927] - [nvme] nvme: Discard workaround for non-conformant devices (Gopal Tiwari) [1781927] - [nvme] nvme: Add hardware monitoring support (Gopal Tiwari) [1781927] - [nvme] nvme-multipath: fix crash in nvme_mpath_clear_ctrl_paths (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: fix a segmentation fault during module unload (Gopal Tiwari) [1781927] - [nvme] nvmet: clean up command parsing a bit (Gopal Tiwari) [1781927] - [nvme] nvmet: fill discovery controller sn, fr and mn correctly (Gopal Tiwari) [1781927] - [nvme] nvmet: Open code nvmet_req_execute() (Gopal Tiwari) [1781927] - [nvme] nvmet: Remove the data_len field from the nvmet_req struct (Gopal Tiwari) [1781927] - [nvme] nvmet: add plugging for read/write when ns is bdev (Gopal Tiwari) [1781927] - [nvme] nvmet: stop using bio_set_op_attrs (Gopal Tiwari) [1781927] - [nvme] nvmet: Introduce nvmet_dsm_len() helper (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Spelling s/resdicovered/rediscovered/ (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: Don't check data_len in nvmet_tcp_map_data() (Gopal Tiwari) [1781927] - [nvme] nvme: Introduce nvme_lba_to_sect() (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: Don't set the request's data_len (Gopal Tiwari) [1781927] - [nvme] nvmet: Cleanup discovery execute handlers (Gopal Tiwari) [1781927] - [nvme] nvmet-rdma: add unlikely check at nvmet_rdma_map_sgl_keyed (Gopal Tiwari) [1781927] - [nvme] nvme: Cleanup and rename nvme_block_nr() (Gopal Tiwari) [1781927] - [nvme] nvme: introduce "Command Aborted By host" status code (Gopal Tiwari) [1781927] - [nvme] nvmet: Introduce common execute function for get_log_page and identify (Gopal Tiwari) [1781927] - [nvme] nvme: move common call to nvme_cleanup_cmd to core layer (Gopal Tiwari) [1781927] - [nvme] nvmet: add unlikely check at nvmet_req_alloc_sgl (Gopal Tiwari) [1781927] - [nvme] nvme-fc: ensure association_id is cleared regardless of a Disconnect LS (Gopal Tiwari) [1781927] - [nvme] nvme-fc: clarify error messages (Gopal Tiwari) [1781927] - [nvme] nvme: introduce nvme_is_aen_req function (Gopal Tiwari) [1781927] - [nvme] nvme-fc and nvmet-fc: sync with FC-NVME-2 header changes (Gopal Tiwari) [1781927] - [nvme] nvmet: use bio_io_error instead of duplicating it (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Set new cmd set indicator in nvme-fc cmnd iu (Gopal Tiwari) [1781927] - [nvme] nvme-multipath: remove unused groups_only mode in ana log (Gopal Tiwari) [1781927] - [nvme] nvme-multipath: fix possible io hang after ctrl reconnect (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: fix possible leakage during error flow (Gopal Tiwari) [1781927] - [nvme] nvmet-loop: fix possible leakage during error flow (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Initialize sk->sk_ll_usec only with NET_RX_BUSY_POLL (Gopal Tiwari) [1781927] - [nvme] nvme: Wait for reset state when required (Gopal Tiwari) [1781927] - [nvme] nvme: Prevent resets during paused controller state (Gopal Tiwari) [1781927] - [nvme] nvme: Restart request timers in resetting state (Gopal Tiwari) [1781927] - [nvme] nvme: Remove ADMIN_ONLY state (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Free tagset if no IO queues (Gopal Tiwari) [1781927] - [nvme] nvme: fix possible deadlock when nvme_update_formats fails (Gopal Tiwari) [1781927] - [include] nvme-fc: Sync nvme-fc header to FC-NVME-2 (Gopal Tiwari) [1781927] - [nvme] nvme: retain split access workaround for capability reads (Gopal Tiwari) [1781927] - [nvme] nvme: Move ctrl sqsize to generic space (Gopal Tiwari) [1781927] - [nvme] nvme: Add ctrl attributes for queue_count and sqsize (Gopal Tiwari) [1781927] - [nvme] nvme: allow 64-bit results in passthru commands (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Fix max_hw_sectors calculation (Gopal Tiwari) [1781927] - [nvme] Added QUIRKs for ADATA XPG SX8200 Pro 512GB (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: fix wrong stop condition in io_work (Gopal Tiwari) [1781927] - [nvme] nvme: fix an error code in nvme_init_subsystem() (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: remove superflous check on request sgl (Gopal Tiwari) [1781927] - [nvme] nvme: Add quirk for Kingston NVME SSD running FW E8FK11.T (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Fix a race in controller removal (Gopal Tiwari) [1781927] - [nvme] nvmet: change ppl to lpp (Gopal Tiwari) [1781927] - [nvme] nvme: add uevent variables for controller devices (Gopal Tiwari) [1781927] - [nvme] nvme: Remove redundant assignment of cq vector (Gopal Tiwari) [1781927] - [nvme] nvme: enable aen regardless of the presence of I/O queues (Gopal Tiwari) [1781927] - [nvme] nvme: send discovery log page change events to userspace (Gopal Tiwari) [1781927] - [nvme] nvme: Assign subsys instance from first ctrl (Gopal Tiwari) [1781927] - [nvme] nvmet: fix a wrong error status returned in error log page (Gopal Tiwari) [1781927] - [nvme] nvme: tcp: remove redundant assignment to variable ret (Gopal Tiwari) [1781927] - [nvme] nvme-fabrics: allow discovery subsystems accept a kato (Gopal Tiwari) [1781927] - [nvme] nvmet: Use PTR_ERR_OR_ZERO() in nvmet_init_discovery() (Gopal Tiwari) [1781927] - [nvme] nvme: Treat discovery subsystems as unique subsystems (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Fail transport errors with NVME_SC_HOST_PATH (Gopal Tiwari) [1781927] - [nvme] nvme: make nvme_report_ns_ids propagate error back (Gopal Tiwari) [1781927] - [nvme] nvme: pass status to nvme_error_status (Gopal Tiwari) [1781927] - [nvme] nvme: fix ns removal hang when failing to revalidate due to a transient error (Gopal Tiwari) [1781927] - [nvme] nvme: make nvme_identify_ns propagate errors back (Gopal Tiwari) [1781927] - [nvme] nvme: fail cancelled commands with NVME_SC_HOST_PATH_ERROR (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: fail command with NVME_SC_HOST_PATH_ERROR send failed (Gopal Tiwari) [1781927] - [nvme] nvme: include admin_q sync with nvme_sync_queues (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Use rq_dma_dir macro (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Use rq_dma_dir macro (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Add TOS for rdma transport (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Support shared tags across queues for Apple 2018 controllers (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Add support for Apple 2018+ models (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Add support for variable IO SQ element size (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Add TOS for tcp transport (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Use struct nvme_ctrl directly (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Pass the queue to SQ_SIZE/CQ_SIZE macros (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: Add TOS for tcp transport (Gopal Tiwari) [1781927] - [nvme] nvme: trace bio completion (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: fix possible NULL deref (Gopal Tiwari) [1781927] - [nvme] nvme: tcp: selects CRYPTO_CRC32C for nvme-tcp (Gopal Tiwari) [1781927] - [nvme] nvme-fabrics: Add type of service (TOS) configuration (Gopal Tiwari) [1781927] - [nvme] nvmet: trace: parse Get LBA Status command in detail (Gopal Tiwari) [1781927] - [nvme] nvmet: fix data units read and written counters in SMART log (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: fix possible memory leak (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: support simple polling (Gopal Tiwari) [1781927] - [nvme] nvme: trace: parse Get LBA Status command in detail (Gopal Tiwari) [1781927] - [include] nvme: add Get LBA Status command opcode (Gopal Tiwari) [1781927] - [nvme] nvme: move sqsize setting to the core (Gopal Tiwari) [1781927] - [nvme] nvme: don't pass cap to nvme_disable_ctrl (Gopal Tiwari) [1781927] - [nvme] nvme-pci: set ctrl sqsize to the device q_depth (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: cleanup nvme_tcp_recv_pdu (Gopal Tiwari) [1781927] - [nvme] nvme: have nvme_init_identify set ctrl->cap (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Use protocol specific operations while reading socket (Gopal Tiwari) [1781927] - [nvme] nvme: Fix cntlid validation when not using NVMEoF (Gopal Tiwari) [1781927] - [infiniband] PCI/P2PDMA: Introduce pci_p2pdma_unmap_sg() (Gopal Tiwari) [1781927] - [nvme] PCI/P2PDMA: Add attrs argument to pci_p2pdma_map_sg() (Gopal Tiwari) [1781927] - [lightnvm] lightnvm: remove nvm_submit_io_sync_fn (Gopal Tiwari) [1781927] - [powerpc] xive: Discard ESB load value when interrupt is invalid (David Gibson) [1744408] - [documentation] kvm: ppc: book3s hv: xive: Allow userspace to set the # of VPs (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Make VP block size configurable (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Set kvm->arch.xive when VPs are allocated (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Compute the VP id in a common helper (David Gibson) [1744408] - [powerpc] xive: Implement get_irqchip_state method for XIVE to fix shutdown race (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Free escalation interrupts before disabling the VP (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Ensure VP isn't already in use (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: Fix regression on big endian hosts (David Gibson) [1725763] - [powerpc] 64s: Fix misleading SPR and timebase information (David Gibson) [1725763] - [powerpc] powernv: Add ultravisor message log interface (David Gibson) [1725763] - [powerpc] powernv/opal-msglog: Refactor memcons code (David Gibson) [1725763] - [powerpc] kvm: Use UV_RETURN ucall to return to ultravisor (David Gibson) [1725763] - [powerpc] powernv: Access LDBAR only if ultravisor disabled (David Gibson) [1725763] - [powerpc] powernv/idle: Fix restore of SPRN_LDBAR for POWER9 stop state (David Gibson) [1725763] - [powerpc] powernv/idle: Restore AMR/UAMOR/AMOR/IAMR after idle (David Gibson) [1725763] - [powerpc] 64s: Reimplement book3s idle code in C (David Gibson) [1725763] - [powerpc] revert "powerpc/powernv/idle: Restore IAMR after idle" (David Gibson) [1725763] - [powerpc] revert "powerpc/powernv/idle: Restore AMR/UAMOR/AMOR after idle" (David Gibson) [1725763] - [powerpc] mm: Write to PTCR only if ultravisor disabled (David Gibson) [1725763] - [powerpc] mm: Use UV_WRITE_PATE ucall to register a PATE (David Gibson) [1725763] - [powerpc] powernv: Introduce FW_FEATURE_ULTRAVISOR (David Gibson) [1725763] - [powerpc] kernel: Add ucall_norets() ultravisor call handler (David Gibson) [1725763] - [documentation] documentation/powerpc: Ultravisor API (David Gibson) [1725763] - [documentation] documentation/powerpc: Add ELF note documentation (David Gibson) [1725763] - [powerpc] Add PowerPC Capabilities ELF note (David Gibson) [1725763] - [netdrv] mlx5e: allow TSO on VXLAN over VLAN topologies (Davide Caratti) [1780643] - [net] bluetooth: Add debug setting for changing minimum encryption key size (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: Let hidp_send_message return number of queued bytes (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: search for destination address in all peers (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: always check destination address (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: check neighbour table for SLAAC (Gopal Tiwari) [1764976] - [net] bluetooth: Add SMP workaround Microsoft Surface Precision Mouse bug (Gopal Tiwari) [1764976] - [net] bluetooth: Use controller sets when available (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Check bearer type on __l2cap_global_chan_by_addr (Gopal Tiwari) [1764976] - [net] bluetooth: validate BLE connection interval updates (Gopal Tiwari) [1764976] - [net] bluetooth: Add support for LE ping feature (Gopal Tiwari) [1764976] - [net] bluetooth: Check state in l2cap_disconnect_rsp (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: NUL terminate a string in the compat ioctl (Gopal Tiwari) [1764976] - [net] bluetooth: Ignore CC events not matching the last HCI command (Gopal Tiwari) [1764976] - [net] bluetooth: Align minimum encryption key size for LE and BR/EDR connections (Gopal Tiwari) [1764976] - [net] bluetooth: hci_core: Don't stop BT if the BD address missing in dts (Gopal Tiwari) [1764976] - [net] bluetooth: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: Fix incorrect pointer arithmatic in ext_adv_report_evt (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: fix buffer overflow (Gopal Tiwari) [1764976] - [net] bluetooth: Add return check for L2CAP security level set (Gopal Tiwari) [1764976] - [net] bluetooth: Fix not initializing L2CAP tx_credits (Gopal Tiwari) [1764976] - [net] bluetooth: Check address length before reading address field (Gopal Tiwari) [1764976] - [net] bluetooth: Add quirk for reading BD_ADDR from fwnode property (Gopal Tiwari) [1764976] - [net] bluetooth: mgmt: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: a2mp: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: hci_event: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: Fix decrementing reference count twice in releasing socket (Gopal Tiwari) [1764976] - [net] bluetooth: make hw_err static, reduces object code size (Gopal Tiwari) [1764976] - [net] bluetooth: Allow driver specific cmd timeout handling (Gopal Tiwari) [1764976] - [net] bluetooth: Mark expected switch fall-throughs (Gopal Tiwari) [1764976] - [net] bluetooth: Check L2CAP option sizes returned from l2cap_get_conf_opt (Gopal Tiwari) [1764976] - [net] Bluetooth: Fix locking in bt_accept_enqueue() for BH context (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: Fix debugfs_simple_attr.cocci warnings (Gopal Tiwari) [1764976] - [net] bluetooth: Fix unnecessary error message for HCI request completion (Gopal Tiwari) [1764976] - [net] bluetooth: clean an indentation issue, remove extraneous space (Gopal Tiwari) [1764976] - [net] bluetooth: Change to use DEFINE_SHOW_ATTRIBUTE macro (Gopal Tiwari) [1764976] - [net] bluetooth: Remove redundant check on status (Gopal Tiwari) [1764976] - [net] bluetooth: Errata Service Release 8, Erratum 3253 (Gopal Tiwari) [1764976] - [net] bluetooth: Use separate L2CAP LE credit based connection result values (Gopal Tiwari) [1764976] - [net] rfcomm: get rid of mentioning TIOC[SG]SERIAL (Gopal Tiwari) [1764976] - [net] bluetooth: Fix debugfs NULL pointer dereference (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Detect if remote is not able to use the whole MPS (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Derive rx credits from MTU and MPS (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Derive MPS from connection MTU (Gopal Tiwari) [1764976] - [net] bluetooth: Add definitions and track LE resolve list modification (Gopal Tiwari) [1764976] - [net] bluetooth: Remove unnecessary smp_mb__{before, after}_atomic (Gopal Tiwari) [1764976] - [net] bluetooth: smp: fix crash in unpairing (Gopal Tiwari) [1764976] - [net] bluetooth: smp: Fix trying to use non-existent local OOB data (Gopal Tiwari) [1764976] - [net] bluetooth: Use correct tfm to generate OOB data (Gopal Tiwari) [1764976] - [net] hidp: fix compat_ioctl (Gopal Tiwari) [1764976] - [net] hidp: constify hidp_connection_add() (Gopal Tiwari) [1764976] - [net] cmtp: fix compat_ioctl (Gopal Tiwari) [1764976] - [net] bnep: fix compat_ioctl (Gopal Tiwari) [1764976] - [net] bluetooth: Add definitions for LE set address resolution (Gopal Tiwari) [1764976] - [net] bluetooth: remove redundant variables 'adv_set' and 'cp' (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: Fix handling of strncpy for hid->name information (Gopal Tiwari) [1764976] - [net] bluetooth: Add new quirk for non-persistent setup settings (Gopal Tiwari) [1764976] - [net] bluetooth: Handle ADv set terminated event (Gopal Tiwari) [1764976] - [net] bluetooth: Implement secondary advertising on different PHYs (Gopal Tiwari) [1764976] - [net] bluetooth: Implement Set ADV set random address (Gopal Tiwari) [1764976] - [net] bluetooth: Implement disable and removal of adv instance (Gopal Tiwari) [1764976] - [net] bluetooth: Use ext adv for directed adv (Gopal Tiwari) [1764976] - [net] bluetooth: Implement PHY changed event (Gopal Tiwari) [1764976] - [net] bluetooth: Handle extended ADV PDU types (Gopal Tiwari) [1764976] - [net] bluetooth: Use Set ext adv/scan rsp data if controller supports (Gopal Tiwari) [1764976] - [net] bluetooth: Impmlement extended adv enable (Gopal Tiwari) [1764976] - [net] bluetooth: Define PHY flags in hdev and set 1M as default (Gopal Tiwari) [1764976] - [net] bluetooth: Read no of adv sets during init (Gopal Tiwari) [1764976] - [net] bluetooth: Implement Get PHY Configuration mgmt command (Gopal Tiwari) [1764976] - [net] bluetooth: Use selected PHYs in extended connect (Gopal Tiwari) [1764976] - [net] bluetooth: Set Scan PHYs based on selected PHYs by user (Gopal Tiwari) [1764976] - [net] bluetooth: Implement Set PHY Confguration command (Gopal Tiwari) [1764976] - [net] bluetooth: Add defines for BREDR pkt_type (Gopal Tiwari) [1764976] - [net] bluetooth: Use lock_sock_nested in bt_accept_enqueue (Gopal Tiwari) [1764976] - [net] bluetooth: avoid killing an already killed socket (Gopal Tiwari) [1764976] - [net] bluetooth: Use extended LE Connection if supported (Gopal Tiwari) [1764976] - [net] bluetooth: Introduce helpers for le conn status and complete (Gopal Tiwari) [1764976] - [net] bluetooth: Process extended ADV report event (Gopal Tiwari) [1764976] - [net] bluetooth: Use extended scanning if controller supports (Gopal Tiwari) [1764976] - [net] bluetooth: Introduce helpers for LE set scan start and complete (Gopal Tiwari) [1764976] - [net] bluetooth: Store Resolv list size (Gopal Tiwari) [1764976] - [net] bluetooth: Add HCI command for clear Resolv list (Gopal Tiwari) [1764976] - [leds] triggers: let struct (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Skip 1 error print in device_want_to_sleep() (Gopal Tiwari) [1764976] - [bluetooth] btqca: Reset download type to default (Gopal Tiwari) [1764976] - [bluetooth] btqca: release_firmware after qca_inject_cmd_complete_event (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Send VS pre shutdown command (Gopal Tiwari) [1764976] - [bluetooth] btqca: Use correct byte format for opcode of injected command (Gopal Tiwari) [1764976] - [bluetooth] btqca: Add a short delay before downloading the NVM (Gopal Tiwari) [1764976] - [bluetooth] btusb: Fix error return code in btusb_mtk_setup_firmware() (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Use kfree_skb() instead of kfree() (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add protocol support for MediaTek MT7663U USB devices (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add protocol support for MediaTek MT7668U USB devices (Gopal Tiwari) [1764976] - [bluetooth] Add new 13d3:3491 QCA_ROME device (Gopal Tiwari) [1764976] - [bluetooth] Add new 13d3:3501 QCA_ROME device (Gopal Tiwari) [1764976] - [bluetooth] hci_bcsp: Fix memory leak in rx_skb (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Add support for RTL8723DU (Gopal Tiwari) [1764976] - [bluetooth] btmtkuart: add an implementation for clock osc property (Gopal Tiwari) [1764976] - [bluetooth] btmtkuart: add an implementation for boot-gpios property (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM4359C0 UART bluetooth (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Load customized NVM based on the device property (Gopal Tiwari) [1764976] - [bluetooth] hci_mrvl: Add serdev support (Gopal Tiwari) [1764976] - [bluetooth] hci_mrvl: Wait for final ack before switching baudrate (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Add function to wait for characters to be sent (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: wcn3990: Drop baudrate change vendor event (Gopal Tiwari) [1764976] - [bluetooth] btqca: inject command complete event during fw download (Gopal Tiwari) [1764976] - [bluetooth] Cleanup formatting and coding style (Gopal Tiwari) [1764976] - [bluetooth] btrtl: HCI reset on close for Realtek BT chip (Gopal Tiwari) [1764976] - [bluetooth] hci_ll: Refactor download_firmware (Gopal Tiwari) [1764976] - [bluetooth] hci_ll: set operational frequency earlier (Gopal Tiwari) [1764976] - [bluetooth] btsdio: Do not bind to non-removable BCM4356 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Rename STATE_ to QCA_ (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add default address for BCM2076B1 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Added support for WCN3998 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Fix crash with non-serdev devices (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Give enough time to ROME controller to bootup (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Fix empty regulator supplies for Intel Macs (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM2076B1 UART Bluetooth (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add default address for BCM43341B (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: add support for SD8987 chipset (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Drop newline with bt_dev logging macros (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Fix hdev->stat.byte_rx accumulation (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Add runtime PM support to SDIO based Bluetooth (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Add a bit definition for CHLPCR (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Fixed incorrect type in assignment (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: fix spelling mistake "sliped" -> "slipped" (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: fix uninitialized symbol errors in btmtksdio_rx_packet (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Use module_sdio_driver helper (Gopal Tiwari) [1764976] - [bluetooth] mediatek: add support for MediaTek MT7663S and MT7668S SDIO devices (Gopal Tiwari) [1764976] - [bluetooth] btqca: Fix misspelling of 'baudrate' (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add helper function to get the chip family (Gopal Tiwari) [1764976] - [bluetooth] btusb: request wake pin with NOAUTOEN (Gopal Tiwari) [1764976] - [bluetooth] mediatek: add support for MediaTek MT7663U and MT7668U UART devices (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Reduce delay after sending baudrate request for WCN3990 (Gopal Tiwari) [1764976] - [bluetooth] btusb: add QCA6174A compatible properties (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Use msleep() instead of open coding it (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add delay after power-off pulse (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Move boot delay to qca_send_power_pulse() (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Pass boolean 'on/off' to qca_send_power_pulse() (Gopal Tiwari) [1764976] - [bluetooth] btqcomsmd: use HCI_QUIRK_USE_BDADDR_PROPERTY (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Set HCI_QUIRK_USE_BDADDR_PROPERTY for wcn3990 (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Postpone HCI_UART_PROTO_READY bit set in hci_uart_set_proto() (Gopal Tiwari) [1764976] - [bluetooth] mediatek: update the common setup between MT7622 and other devices (Gopal Tiwari) [1764976] - [bluetooth] mediatek: pass a pointer to mtk_hci_wmt_sync (Gopal Tiwari) [1764976] - [bluetooth] mediatek: fix up an error path to restore bdev->tx_state (Gopal Tiwari) [1764976] - [bluetooth] mediatek: trivial typo fix (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Initialize hci_dev before open() (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Disable IBS state machine and flush Tx buffer (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Deassert RTS while baudrate change command (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: use wait_until_sent() for power pulses (Gopal Tiwari) [1764976] - [bluetooth] remove redundant zero check on count (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add shutdown routine for BTUSB_INTEL_NEW devices (Gopal Tiwari) [1764976] - [bluetooth] btusb: btusb_intel_cmd_timeout: use sleeping functions (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Restore old logic to assume firmware is already loaded (Gopal Tiwari) [1764976] - [bluetooth] btusb: Use the cmd_timeout method to reset the Intel BT chip (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: add support for sd8977 chipset (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: Drop unused GPIO includes (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: lower log level of informational message (Gopal Tiwari) [1764976] - [bluetooth] hci_uart: Check if socket buffer is ERR_PTR in h4_recv_buf() (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: improve printk messages (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add helper to set device address (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM4329B1 UART bluetooth (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Handle specific unknown packets after firmware loading (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Turn off RTL8723BS on suspend, reprobe on resume (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add suspend / resume ops (Gopal Tiwari) [1764976] - [bluetooth] hci_intel: clean an indentation issue, remove extraneous spaces (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: Remove setting of HCI_QUIRK_RESET_ON_CLOSE (Gopal Tiwari) [1764976] - [bluetooth] Remove unnecessary smp_mb__after_atomic() barriers (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add BCM20702A1 variant (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Wait for device to come out of reset after power on (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add support for regulator supplies (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add compatible string for BCM4330 (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add default address for BCM43430A0 (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add support for LPO clock (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Use "txco" and "extclk" to get clock reference (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Simplify clk_get error handling (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Handle deferred probing for the clock supply (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add support for controller debug logs (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add support for 0cf3:535b QCA_ROME device (Gopal Tiwari) [1764976] - [bluetooth] btsdio: Do not bind to non-removable BCM43430 (Gopal Tiwari) [1764976] - [bluetooth] ath3k: add more information to error message (Gopal Tiwari) [1764976] - [bluetooth] bt3c_cs: Fix obsolete function (Gopal Tiwari) [1764976] - [bluetooth] btrsi: fix bt tx timeout issue (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM4335C0 UART bluetooth (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Add support for RTL8822C with USB interface (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: Fixed error space required before open paranethesis (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add poweroff support during hci down for wcn3990 (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add quirk for BTUSB_INTEL_NEW (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Make array extension_sig static, shrinks object size (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Remove serdev_device_open/close function calls (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Remove hdev dereference in qca_close() (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: clear HCI_UART_PROTO_READY to avoid closing proto races (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: Add protocol check in hci_uart_dequeue() (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Free rw_semaphore on close (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Fix memory leak (Gopal Tiwari) [1764976] - [bluetooth] Make BT_HCIUART_RTL configuration option depend on ACPI (Gopal Tiwari) [1764976] - [bluetooth] mediatek: pass correct size to h4_recv_buf() (Gopal Tiwari) [1764976] - [bluetooth] Introduce BT_HCIUART_RTL configuration option (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Add protocol support for MediaTek serial devices (Gopal Tiwari) [1764976] - [bluetooth] btqca: Introduce HCI_EV_VENDOR and use it (Gopal Tiwari) [1764976] - [bluetooth] h5: Fix missing dependency on BT_HCIUART_SERDEV (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add support for Qualcomm Bluetooth chip wcn3990 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Enable 3.2 Mbps operating speed (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add wrapper functions for setting UART speed (Gopal Tiwari) [1764976] - [bluetooth] btqca: Add wcn3990 firmware download support (Gopal Tiwari) [1764976] - [bluetooth] btqca: Redefine qca_uart_setup() to generic function (Gopal Tiwari) [1764976] - [bluetooth] btqca: Rename ROME specific functions to generic functions (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add support for enable and device-wake GPIOs (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add support for the RTL8723BS (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add vendor setup, open, and close callbacks (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add support for serdev enumerated devices (Gopal Tiwari) [1764976] - [bluetooth] btrtl: add support for retrieving the UART settings (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Use rtl_dev_err and rtl_dev_info (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Add support for a config filename postfix (Gopal Tiwari) [1764976] - [bluetooth] btrtl: add support for the RTL8723BS and RTL8723DS chips (Gopal Tiwari) [1764976] - [bluetooth] btrtl: add MODULE_FIRMWARE declarations (Gopal Tiwari) [1764976] - [bluetooth] btrtl: split the device initialization into smaller parts (Gopal Tiwari) [1764976] - [bluetooth] btusb: Release RF resource on BT shutdown (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Replace GFP_ATOMIC with GFP_KERNEL (Gopal Tiwari) [1764976] - [bluetooth] hci_intel: Replace GFP_ATOMIC with GFP_KERNEL in inject_cmd_complete() (Gopal Tiwari) [1764976] - [bluetooth] btusb: Replace GFP_ATOMIC with GFP_KERNEL in inject_cmd_complete() (Gopal Tiwari) [1764976] - [bluetooth] bfusb: Replace GFP_ATOMIC with GFP_KERNEL in bfusb_send_frame() (Gopal Tiwari) [1764976] - [bluetooth] bluecard_cs: Replace GFP_ATOMIC with GFP_KERNEL in bluecard_hci_set_baud_rate() (Gopal Tiwari) [1764976] - [bluetooth] bpa10x: Replace GFP_ATOMIC with GFP_KERNEL in bpa10x_send_frame() (Gopal Tiwari) [1764976] - [bluetooth] btmrvl_sdio: Replace GFP_ATOMIC with GFP_KERNEL in btmrvl_sdio_card_to_host() (Gopal Tiwari) [1764976] - [bluetooth] btusb: use irqsave() in URB's complete callback (Gopal Tiwari) [1764976] - [bluetooth] Add a new Realtek 8723DE ID 0bda:b009 (Gopal Tiwari) [1764976]- Revert "[redhat] switch secureboot kernel image signing to release keys" (Frantisek Hrbata) - [powerpc] powerpc/pseries: Avoid NULL pointer dereference when drmem is unavailable (David Hildenbrand) [1812874] - [x86] kvm/svm: PKU not currently supported (Wei Huang) [1789159] - [x86] Remove the unsupported check for Cooper Lake (David Arcari) [1813921]- [netdrv] net/mlx5e: Show/set Rx network flow classification rules on ul rep (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5e: Init ethtool steering for representors (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5e: Show/set Rx flow indir table and RSS hash key on ul rep (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5e: Introduce root ft concept for representors netdevs (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5: E-Switch, Use vport metadata matching only when mandatory (Alaa Hleihel) [1795156] - [nvme] nvme: log additional message for controller status (David Milburn) [1752952]- [powerpc] powerpc: fix hardware PMU exception bug on PowerVM compatibility mode systems (Desnes Augusto Nunes do Rosario) [1755221] - [mm] powerpc/book3s64/radix: Remove WARN_ON in destroy_context() (Steve Best) [1812821] - [kernel] rcutorture: Upper case solves the case of the vanishing NULL pointer (Waiman Long) [1810247] - [tools] torture: Suppress propagating trace_printk() warning (Waiman Long) [1810247] - [kernel] rcutorture: Dump trace buffer for callback pipe drain failures (Waiman Long) [1810247] - [tools] torture: Add --trust-make to suppress "make clean" (Waiman Long) [1810247] - [tools] torture: Make --cpus override idleness calculations (Waiman Long) [1810247] - [tools] torture: Run kernel build in source directory (Waiman Long) [1810247] - [tools] torture: Add function graph-tracing cheat sheet (Waiman Long) [1810247] - [tools] torture: Capture qemu output (Waiman Long) [1810247] - [tools] rcutorture: Tweak kvm options (Waiman Long) [1810247] - [kernel] rcutorture: Add trivial RCU implementation (Waiman Long) [1810247] - [kernel] rcutorture: Halt forward-progress checks at end of run (Waiman Long) [1810247] - [kernel] rcutorture: Give the scheduler a chance on PREEMPT && NO_HZ_FULL kernels (Waiman Long) [1810247] - [tools] rcutorture: Exempt TREE01 from forward-progress testing (Waiman Long) [1810247] - [kernel] rcutorture: Exempt tasks RCU from timely draining of grace periods (Waiman Long) [1810247] - [tools] rcutorture: Provide rudimentary Makefile (Waiman Long) [1810247] - [tools] torture: Make kvm-find-errors.sh and kvm-recheck.sh provide exit status (Waiman Long) [1810247] - [kernel] torture: Allow inter-stutter interval to be specified (Waiman Long) [1810247] - [kernel] rcutorture: Fix stutter_wait() return value and freelist checks (Waiman Long) [1810247] - [kernel] rcutorture: Add cond_resched() to forward-progress free-up loop (Waiman Long) [1810247] - [tools] rcutorture: Add cpu0 to the set of CPUs to add jitter (Waiman Long) [1810247] - [tools] rcutorture: Select from only online CPUs (Waiman Long) [1810247] - [kernel] rcu/sync: Simplify the state machine (Waiman Long) [1810247] - [kernel] locking/percpu-rwsem: Add DEFINE_PERCPU_RWSEM(), use it to initialize cgroup_threadgroup_rwsem (Waiman Long) [1810247] - [kernel] rcu/sync: Kill rcu_sync_type/gp_type (Waiman Long) [1810247] - [kernel] rcu: Make __call_srcu static (Waiman Long) [1810247] - [kernel] rcu: Upgrade sync_exp_work_done() to smp_mb() (Waiman Long) [1810247] - [documentation] doc: Remove ".vnet" from paulmck email addresses (Waiman Long) [1810247] - [kernel] rcu: Set a maximum limit for back-to-back callback invocation (Waiman Long) [1810247] - [kernel] rcu: Correctly unlock root node in rcu_check_gp_start_stall() (Waiman Long) [1810247] - [kernel] rcu: Dump specified number of blocked tasks (Waiman Long) [1810247] - [kernel] rcu: Remove unused rdp local from synchronize_rcu_expedited() (Waiman Long) [1810247] - [kernel] rcu: Rename rcu_data's ->deferred_qs to ->exp_deferred_qs (Waiman Long) [1810247] - [kernel] rcu: Add checks for dynticks counters in rcu_is_cpu_rrupt_from_idle() (Waiman Long) [1810247] - [kernel] rcu: Avoid self-IPI in sync_sched_exp_online_cleanup() (Waiman Long) [1810247] - [kernel] rcu: Avoid self-IPI in sync_rcu_exp_select_node_cpus() (Waiman Long) [1810247] - [kernel] rcu: Inline invoke_rcu_callbacks() into its sole remaining caller (Waiman Long) [1810247] - [kernel] rcu: Use irq_work to get scheduler's attention in clean context (Waiman Long) [1810247] - [kernel] rcu: Allow rcu_read_unlock_special() to raise_softirq() if in_irq() (Waiman Long) [1810247] - [kernel] rcu: Only do rcu_read_unlock_special() wakeups if expedited (Waiman Long) [1810247] - [kernel] rcu: Check for wakeup-safe conditions in rcu_read_unlock_special() (Waiman Long) [1810247] - [kernel] rcu: Enable elimination of Tree-RCU softirq processing (Waiman Long) [1810247] - [kernel] rcuperf: Fix cleanup path for invalid perf_type strings (Waiman Long) [1810247] - [kernel] rcutorture: Fix cleanup path for invalid torture_type strings (Waiman Long) [1810247] - [kernel] rcutorture: Fix expected forward progress duration in OOM notifier (Waiman Long) [1810247] - [kernel] rcutorture: Remove ->ext_irq_conflict field (Waiman Long) [1810247] - [kernel] rcutorture: Make rcutorture_extend_mask() comment match the code (Waiman Long) [1810247] - [tools] tools/.../rcutorture: Convert to SPDX license identifier (Waiman Long) [1810247] - [kernel] torture: Don't try to offline the last CPU (Waiman Long) [1810247] - [kernel] rcu: Fix nohz status in stall warning (Waiman Long) [1810247] - [kernel] rcu: Move forward-progress checkers into tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Move irq-disabled stall-warning checking to tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Organize functions in tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Move FAST_NO_HZ stall-warning code to tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Inline RCU stall-warning info helper functions (Waiman Long) [1810247] - [kernel] rcu: Move rcu_print_task_exp_stall() to tree_exp.h (Waiman Long) [1810247] - [kernel] rcu: Inline RCU task stall-warning helper functions (Waiman Long) [1810247] - [kernel] rcu: Move RCU CPU stall-warning code out of tree.c (Waiman Long) [1810247] - [kernel] rcu: Move RCU CPU stall-warning code out of tree_plugin.h (Waiman Long) [1810247] - [kernel] rcu: Move RCU CPU stall-warning code out of update.c (Waiman Long) [1810247] - [kernel] srcu: Remove cleanup_srcu_struct_quiesced() (Waiman Long) [1810247] - [kernel] srcu: Check for in-flight callbacks in _cleanup_srcu_struct() (Waiman Long) [1810247] - [kernel] rcu: Correct READ_ONCE()/WRITE_ONCE() for ->rcu_read_unlock_special (Waiman Long) [1810247] - [kernel] rcu: Fix typo in tree_exp.h comment (Waiman Long) [1810247] - [kernel] rcu: Eliminate redundant NULL-pointer check (Waiman Long) [1810247] - [kernel] rcu: Fix force_qs_rnp() header comment (Waiman Long) [1810247] - [kernel] rcu: Update jiffies_to_sched_qs and adjust_jiffies_till_sched_qs() comments (Waiman Long) [1810247] - [kernel] rcu: Do a single rhp->func read in rcu_head_after_call_rcu() (Waiman Long) [1810247] - [kernel] rcu: Default jiffies_to_sched_qs to jiffies_till_sched_qs (Waiman Long) [1810247] - [kernel] rcu: Fix self-wakeups for grace-period kthread (Waiman Long) [1810247] - [kernel] rcu: Report error for bad rcu_nocbs= parameter values (Waiman Long) [1810247] - [kernel] rcu: Allow rcu_nocbs= to specify all CPUs (Waiman Long) [1810247] - [kernel] rcu: Move common code out of if-else block (Waiman Long) [1810247] - [kernel] rcu: Set rcutree.kthread_prio sysfs access to read-only (Waiman Long) [1810247] - [kernel] rcu: Make exit_rcu() handle non-preempted RCU readers (Waiman Long) [1810247] - [kernel] rcu: rcu_qs -- Use raise_softirq_irqoff to not save irqs twice (Waiman Long) [1810247] - [kernel] rcu: Avoid unnecessary softirq when system is idle (Waiman Long) [1810247] - [kernel] rcu: Unconditionally expedite during suspend/hibernate (Waiman Long) [1810247] - [kernel] rcu/tree: Convert to SPDX license identifier (Waiman Long) [1810247] - [kernel] srcu: Remove srcu_queue_delayed_work_on() (Waiman Long) [1810247] - [kernel] sched/fair: Define sched_idle_cpu() only for SMP configurations (Phil Auld) [1419746] - [kernel] sched/fair: Load balance aggressively for SCHED_IDLE CPUs (Phil Auld) [1419746] - [kernel] sched/fair : Improve update_sd_pick_busiest for spare capacity case (Phil Auld) [1419746] - [kernel] sched/fair: Fix find_idlest_group() to handle CPU affinity (Phil Auld) [1419746] - [kernel] sched/cfs: fix spurious active migration (Phil Auld) [1419746] - [kernel] sched/fair: Add comments for group_type and balancing at SD_NUMA level (Phil Auld) [1419746] - [kernel] sched/fair: Fix rework of find_idlest_group() (Phil Auld) [1419746] - [kernel] sched/fair: Rework find_idlest_group() (Phil Auld) [1419746] - [kernel] sched/fair: Optimize find_idlest_group() (Phil Auld) [1419746] - [kernel] sched/fair: Use load instead of runnable load in wakeup path (Phil Auld) [1419746] - [kernel] sched/fair: Use utilization to select misfit task (Phil Auld) [1419746] - [kernel] sched/fair: Spread out tasks evenly when not overloaded (Phil Auld) [1419746] - [kernel] sched/fair: Use load instead of runnable load in load_balance() (Phil Auld) [1419746] - [kernel] sched/fair: Use rq->nr_running when balancing load (Phil Auld) [1419746] - [kernel] sched/fair: Rework load_balance() (Phil Auld) [1419746] - [kernel] sched/fair: Remove meaningless imbalance calculation (Phil Auld) [1419746] - [kernel] sched/fair: Rename sg_lb_stats::sum_nr_running to sum_h_nr_running (Phil Auld) [1419746] - [kernel] sched/fair: Clean up asym packing (Phil Auld) [1419746] - [kernel] sched/fair: Fall back to sched-idle CPU if idle CPU isn't found (Phil Auld) [1419746] - [kernel] sched/fair: Start tracking SCHED_IDLE tasks count in cfs_rq (Phil Auld) [1419746] - [kernel] sched/core: Allow sched_setattr() to use the current policy (Phil Auld) [1419746] - [kernel] sched/fair: Introduce fits_capacity() (Phil Auld) [1419746] - [kernel] sched/core: Provide a pointer to the valid CPU mask (Phil Auld) [1419746] - [x86] x86/percpu: Optimize raw_cpu_xchg() (Phil Auld) [1419746] - [kernel] x86/percpu, sched/fair: Avoid local_clock() (Phil Auld) [1419746] - [x86] x86/percpu, x86/irq: Relax {set,get}_irq_regs() (Phil Auld) [1419746] - [x86] x86/percpu: Relax smp_processor_id() (Phil Auld) [1419746] - [x86] x86/percpu: Differentiate this_cpu_{}() and __this_cpu_{}() (Phil Auld) [1419746] - [kernel] sched/fair: Fix unnecessary increase of balance interval (Phil Auld) [1419746] - [kernel] sched/fair: Trigger asym_packing during idle load balance (Phil Auld) [1419746] - [kernel] sched/fair: Fix rounding bug for asym packing (Phil Auld) [1419746] - [kernel] sched/fair: Fix warning on non-SMP build (Phil Auld) [1419746] - [kernel] sched/core: Create task_has_idle_policy() helper (Phil Auld) [1419746] - [firmware] efi: fix a mistype in comments mentioning efivar_entry_iter_begin() (Vladis Dronov) [1804417] - [firmware] efi: add a sanity check to efivar_store_raw() (Vladis Dronov) [1804417] - [firmware] efi: fix a race and a buffer overflow while reading efivars via sysfs (Vladis Dronov) [1804417] - [scsi] scsi: ibmvfc: Fix NULL return compiler warning (Steve Best) [1810653] - [scsi] scsi: ibmvfc: Avoid loss of all paths during SVC node reboot (Steve Best) [1810653] - [fs] xfs: fix some memory leaks in log recovery (Bill O'Donnell) [1765693] - [fs] xfs: Fix deadlock between AGI and AGF when target_ip exists in xfs_rename() (Bill O'Donnell) [1765693] - [fs] xfs: fix inode fork extent count overflow (Bill O'Donnell) [1765693] - [fs] xfs: change the seconds fields in xfs_bulkstat to signed (Bill O'Donnell) [1765693] - [fs] xfs: assure zeroed memory buffers for certain kmem allocations (Bill O'Donnell) [1765693] - [fs] xfs: removed unused error variable from xchk_refcountbt_rec (Bill O'Donnell) [1765693] - [fs] xfs: remove unused flags arg from xfs_get_aghdr_buf() (Bill O'Donnell) [1765693] - [fs] xfs: Fix tail rounding in xfs_alloc_file_space() (Bill O'Donnell) [1765693] - [fs] xfs: remove unlikely() from WARN_ON() condition (Bill O'Donnell) [1765693] - [fs] xfs: avoid unused to_mp() function warning (Bill O'Donnell) [1765693] - [fs] xfs: log proper length of superblock (Bill O'Donnell) [1765693] - [fs] xfs: revert 1baa2800e62d ("xfs: remove the unused XFS_ALLOC_USERDATA flag") (Bill O'Donnell) [1765693] - [fs] xfs: removed unneeded variable (Bill O'Donnell) [1765693] - [fs] xfs: push the grant head when the log head moves forward (Bill O'Donnell) [1765693] - [fs] xfs: push iclog state cleaning into xlog_state_clean_log (Bill O'Donnell) [1765693] - [fs] xfs: factor iclog state processing out of xlog_state_do_callback() (Bill O'Donnell) [1765693] - [fs] xfs: factor callbacks out of xlog_state_do_callback() (Bill O'Donnell) [1765693] - [fs] xfs: factor debug code out of xlog_state_do_callback() (Bill O'Donnell) [1765693] - [fs] xfs: prevent CIL push holdoff in log recovery (Bill O'Donnell) [1765693] - [fs] xfs: fix missed wakeup on l_flush_wait (Bill O'Donnell) [1765693] - [fs] xfs: push the AIL in xlog_grant_head_wake (Bill O'Donnell) [1765693] - [fs] xfs: Use WARN_ON_ONCE for bailout mount-operation (Bill O'Donnell) [1765693] - [fs] xfs: define a flags field for the AG geometry ioctl structure (Bill O'Donnell) [1765693] - [fs] xfs: add a xfs_valid_startblock helper (Bill O'Donnell) [1765693] - [fs] xfs: remove the unused XFS_ALLOC_USERDATA flag (Bill O'Donnell) [1765693] - [fs] xfs: cleanup xfs_fsb_to_db (Bill O'Donnell) [1765693] - [fs] xfs: fix the dax supported check in xfs_ioctl_setattr_dax_invalidate (Bill O'Donnell) [1765693] - [fs] xfs: Fix stale data exposure when readahead races with hole punch (Bill O'Donnell) [1765693] - [mm] fs: Export generic_fadvise() (Bill O'Donnell) [1765693] - [fs] xfs: reverse search directory freespace indexes (Bill O'Donnell) [1765693] - [fs] xfs: speed up directory bestfree block scanning (Bill O'Donnell) [1765693] - [fs] xfs: factor free block index lookup from xfs_dir2_node_addname_int() (Bill O'Donnell) [1765693] - [fs] xfs: factor data block addition from xfs_dir2_node_addname_int() (Bill O'Donnell) [1765693] - [fs] xfs: move xfs_dir2_addname() (Bill O'Donnell) [1765693] - [fs] xfs: remove all *_ITER_CONTINUE values (Bill O'Donnell) [1765693] - [fs] xfs: remove all *_ITER_ABORT values (Bill O'Donnell) [1765693] - [fs] xfs: log proper length of btree block in scrub/repair (Bill O'Donnell) [1765693] - [fs] xfs: reinitialize rm_flags when unpacking an offset into an rmap irec (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary int returns from deferred bmap functions (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary int returns from deferred refcount functions (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary int returns from deferred rmap functions (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary parameter from xfs_iext_inc_seq (Bill O'Donnell) [1765693] - [fs] xfs: fix sign handling problem in xfs_bmbt_diff_two_keys (Bill O'Donnell) [1765693] - [fs] xfs: don't return _QUERY_ABORT from xfs_rmap_has_other_keys (Bill O'Donnell) [1765693] - [fs] xfs: fix maxicount division by zero error (Bill O'Donnell) [1765693] - [fs] xfs: bmap scrub should only scrub records once (Bill O'Donnell) [1765693] - [fs] xfs: remove excess function parameter description in 'xfs_btree_sblock_v5hdr_verify' (Bill O'Donnell) [1765693] - [fs] fs: xfs: Remove KM_NOSLEEP and KM_SLEEP (Bill O'Donnell) [1765693] - [fs] fs/xfs: Fix return code of xfs_break_leased_layouts() (Bill O'Donnell) [1765693] - [fs] xfs: compat_ioctl: use compat_ptr() (Bill O'Donnell) [1765693] - [fs] xfs: fall back to native ioctls for unhandled compat ones (Bill O'Donnell) [1765693] - [fs] xfs: remove more ondisk directory corruption asserts (Bill O'Donnell) [1765693] - [fs] fs: xfs: xfs_log: Don't use KM_MAYFAIL at xfs_log_reserve() (Bill O'Donnell) [1765693] - [fs] xfs: Fix possible null-pointer dereferences in xchk_da_btree_block_check_sibling() (Bill O'Donnell) [1765693] - [fs] xfs: fix stack contents leakage in the v1 inumber ioctls (Bill O'Donnell) [1765693] - [fs] xfs: sync up xfs_trans_inode with userspace (Bill O'Donnell) [1765693] - [fs] xfs: move xfs_trans_inode.c to libxfs/ (Bill O'Donnell) [1765693] - [fs] xfs: chain bios the right way around in xfs_rw_bdev (Bill O'Donnell) [1765693] - [fs] xfs: bump INUMBERS cursor correctly in xfs_inumbers_walk (Bill O'Donnell) [1765693] - [fs] xfs: don't update lastino for FSBULKSTAT_SINGLE (Bill O'Donnell) [1765693] - [fs] xfs: online scrub needn't bother zeroing its temporary buffer (Bill O'Donnell) [1765693] - [fs] xfs: only allocate memory for scrubbing attributes when we need it (Bill O'Donnell) [1765693] - [fs] xfs: refactor attr scrub memory allocation function (Bill O'Donnell) [1765693] - [fs] xfs: refactor extended attribute buffer pointer functions (Bill O'Donnell) [1765693] - [fs] xfs: attribute scrub should use seen_enough to pass error values (Bill O'Donnell) [1765693] - [fs] xfs: allow single bulkstat of special inodes (Bill O'Donnell) [1765693] - [fs] xfs: specify AG in bulk req (Bill O'Donnell) [1765693] - [fs] xfs: wire up the v5 inumbers ioctl (Bill O'Donnell) [1765693] - [fs] xfs: wire up new v5 bulkstat ioctls (Bill O'Donnell) [1765693] - [fs] xfs: introduce v5 inode group structure (Bill O'Donnell) [1765693] - [fs] xfs: introduce new v5 bulkstat structure (Bill O'Donnell) [1765693] - [fs] xfs: rename bulkstat functions (Bill O'Donnell) [1765693] - [fs] xfs: remove various bulk request typedef usage (Bill O'Donnell) [1765693] - [fs] fs: xfs: xfs_log: Change return type from int to void (Bill O'Donnell) [1765693] - [fs] xfs: poll waiting for quotacheck (Bill O'Donnell) [1765693] - [fs] xfs: multithreaded iwalk implementation (Bill O'Donnell) [1765693] - [fs] xfs: refactor INUMBERS to use iwalk functions (Bill O'Donnell) [1765693] - [fs] xfs: refactor iwalk code to handle walking inobt records (Bill O'Donnell) [1765693] - [fs] xfs: refactor xfs_iwalk_grab_ichunk (Bill O'Donnell) [1765693] - [fs] xfs: clean up long conditionals in xfs_iwalk_ichunk_ra (Bill O'Donnell) [1765693] - [fs] xfs: change xfs_iwalk_grab_ichunk to use startino, not lastino (Bill O'Donnell) [1765693] - [fs] xfs: move bulkstat ichunk helpers to iwalk code (Bill O'Donnell) [1765693] - [fs] xfs: calculate inode walk prefetch more carefully (Bill O'Donnell) [1765693] - [fs] xfs: convert bulkstat to new iwalk infrastructure (Bill O'Donnell) [1765693] - [fs] xfs: bulkstat should copy lastip whenever userspace supplies one (Bill O'Donnell) [1765693] - [fs] xfs: convert quotacheck to use the new iwalk functions (Bill O'Donnell) [1765693] - [fs] xfs: create simplified inode walk function (Bill O'Donnell) [1765693] - [fs] xfs: create iterator error codes (Bill O'Donnell) [1765693] - [fs] xfs: remove XFS_TRANS_NOFS (Bill O'Donnell) [1765693] - [fs] xfs: simplify xfs_ioend_can_merge (Bill O'Donnell) [1765693] - [fs] xfs: allow merging ioends over append boundaries (Bill O'Donnell) [1765693] - [fs] xfs: fix a comment typo in xfs_submit_ioend (Bill O'Donnell) [1765693] - [fs] xfs: remove the unused xfs_count_page_state declaration (Bill O'Donnell) [1765693] - [fs] xfs: fix iclog allocation size (Bill O'Donnell) [1765693] - [fs] xfs: remove unused header files (Bill O'Donnell) [1765693] - [fs] xfs: account for log space when formatting new AGs (Bill O'Donnell) [1765693] - [fs] xfs: refactor free space btree record initialization (Bill O'Donnell) [1765693] - [fs] xfs: always update params on small allocation (Bill O'Donnell) [1765693] - [fs] xfs: skip small alloc cntbt logic on NULL cursor (Bill O'Donnell) [1765693] - [fs] xfs: move small allocation helper (Bill O'Donnell) [1765693] - [fs] xfs: clean up small allocation helper (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_bmap.c into xfs_bmap_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_rmap.c into xfs_rmap_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_refcount.c into xfs_refcount_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_extfree.c into xfs_extfree_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_bud_init into xfs_trans_get_bud (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_rud_init into xfs_trans_get_rud (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_cud_init into xfs_trans_get_cud (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_efd_init into xfs_trans_get_efd (Bill O'Donnell) [1765693] - [fs] xfs: remove a pointless comment duplicated above all xfs_item_ops instances (Bill O'Donnell) [1765693] - [fs] xfs: use a list_head for iclog callbacks (Bill O'Donnell) [1765693] - [fs] xfs: remove the xfs_log_item_t typedef (Bill O'Donnell) [1765693] - [fs] xfs: don't cast inode_log_items to get the log_item (Bill O'Donnell) [1765693] - [fs] xfs: add a flag to release log items on commit (Bill O'Donnell) [1765693] - [fs] xfs: split iop_unlock (Bill O'Donnell) [1765693] - [fs] xfs: don't use xfs_trans_free_items in the commit path (Bill O'Donnell) [1765693] - [fs] xfs: remove the dummy iop_push implementation for inode creation items (Bill O'Donnell) [1765693] - [fs] xfs: don't require log items to implement optional methods (Bill O'Donnell) [1765693] - [fs] xfs: stop using XFS_LI_ABORTED as a parameter flag (Bill O'Donnell) [1765693] - [fs] xfs: fix a trivial comment typo in xfs_trans_committed_bulk (Bill O'Donnell) [1765693] - [fs] xfs: add struct xfs_mount pointer to struct xfs_buf (Bill O'Donnell) [1765693] - [fs] xfs: remove the b_io_length field in struct xfs_buf (Bill O'Donnell) [1765693] - [fs] xfs: properly type the b_log_item field in struct xfs_buf (Bill O'Donnell) [1765693] - [fs] xfs: remove unused buffer cache APIs (Bill O'Donnell) [1765693] - [fs] xfs: stop using bp naming for log recovery buffers (Bill O'Donnell) [1765693] - [fs] xfs: use bios directly to read and write the log recovery buffers (Bill O'Donnell) [1765693] - [fs] xfs: return an offset instead of a pointer from xlog_align (Bill O'Donnell) [1765693] - [fs] xfs: move the log ioend workqueue to struct xlog (Bill O'Donnell) [1765693] - [fs] xfs: use bios directly to write log buffers (Bill O'Donnell) [1765693] - [fs] xfs: make use of the l_targ field in struct xlog (Bill O'Donnell) [1765693] - [fs] xfs: remove the syncing argument from xlog_verify_iclog (Bill O'Donnell) [1765693] - [fs] xfs: update both stat counters together in xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: factor out iclog size calculation from xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: factor out splitting of an iclog from xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: factor out log buffer writing from xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: don't use REQ_PREFLUSH for split log writes (Bill O'Donnell) [1765693] - [fs] xfs: remove XLOG_STATE_IOABORT (Bill O'Donnell) [1765693] - [fs] xfs: reformat xlog_get_lowest_lsn (Bill O'Donnell) [1765693] - [fs] xfs: cleanup xlog_get_iclog_buffer_size (Bill O'Donnell) [1765693] - [fs] xfs: remove the l_iclog_size_log field from struct xlog (Bill O'Donnell) [1765693] - [fs] xfs: renumber XBF_WRITE_FAIL (Bill O'Donnell) [1765693] - [fs] xfs: remove the never used _XBF_COMPOUND flag (Bill O'Donnell) [1765693] - [fs] xfs: remove the no-op spinlock_destroy stub (Bill O'Donnell) [1765693] - [fs] xfs: move xfs_ino_geometry to xfs_shared.h (Bill O'Donnell) [1765693] - [fs] xfs: remove unused flag arguments (Bill O'Donnell) [1765693] - [fs] xfs: remove the debug-only q_transp field from struct xfs_dquot (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_buf_zero and xfs_buf_iomove (Bill O'Donnell) [1765693] - [fs] xfs: remove unused flags arg from getsb interfaces (Bill O'Donnell) [1765693] - [fs] xfs: include WARN, REPAIR build options in XFS_BUILD_OPTIONS (Bill O'Donnell) [1765693] - [fs] xfs: finish converting to inodes_per_cluster (Bill O'Donnell) [1765693] - [fs] xfs: fix inode_cluster_size rounding mayhem (Bill O'Donnell) [1765693] - [fs] xfs: refactor inode geometry setup routines (Bill O'Donnell) [1765693] - [fs] xfs: separate inode geometry (Bill O'Donnell) [1765693] - [fs] xfs: use file_modified() helper (Bill O'Donnell) [1765693] - [fs] vfs: introduce file_modified() helper (Bill O'Donnell) [1765693]- [md] dm: bump version of core and various targets (Mike Snitzer) [1810746] - [md] dm: fix congested_fn for request-based device (Mike Snitzer) [1810746] - [md] dm integrity: use dm_bio_record and dm_bio_restore (Mike Snitzer) [1810746] - [md] dm bio record: save_restore bi_end_io and bi_integrity (Mike Snitzer) [1810746] - [md] dm writecache: verify watermark during resume (Mike Snitzer) [1810746] - [md] dm: report suspended device during destroy (Mike Snitzer) [1810746] - [md] dm thin metadata: fix lockdep complaint (Mike Snitzer) [1810746] - [md] dm cache: fix a crash due to incorrect work item cancelling (Mike Snitzer) [1810746] - [md] dm integrity: fix invalid table returned due to argument count mismatch (Mike Snitzer) [1810746] - [md] dm integrity: fix a deadlock due to offloading to an incorrect workqueue (Mike Snitzer) [1810746] - [md] dm integrity: fix recalculation when moving from journal mode to bitmap mode (Mike Snitzer) [1810746] - [md] dm writecache: improve performance of large linear writes on SSDs (Mike Snitzer) [1810746] - [md] dm mpath: Add timeout mechanism for queue_if_no_path (Mike Snitzer) [1810746] - [md] dm thin: change data device's flush_bio to be member of struct pool (Mike Snitzer) [1810746] - [md] dm thin: don't allow changing data device during thin-pool reload (Mike Snitzer) [1810746] - [md] dm thin: fix use-after-free in metadata_pre_commit_callback (Mike Snitzer) [1810746] - [md] dm thin metadata: use pool locking at end of dm_pool_metadata_close (Mike Snitzer) [1810746] - [md] dm writecache: fix incorrect flush sequence when doing SSD mode commit (Mike Snitzer) [1810746] - [md] dm crypt: fix benbi IV constructor crash if used in authenticated mode (Mike Snitzer) [1810746] - [md] dm crypt: Implement Elephant diffuser for Bitlocker compatibility (Mike Snitzer) [1810746] - [md] dm space map common: fix to ensure new block isn't already in use (Mike Snitzer) [1810746] - [md] dm verity: don't prefetch hash blocks for already-verified data (Mike Snitzer) [1810746] - [md] dm crypt: fix GFP flags passed to skcipher_request_alloc() (Mike Snitzer) [1810746] - [md] dm thin metadata: Fix trivial math error in on-disk format documentation (Mike Snitzer) [1810746] - [md] dm thin metadata: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm snapshot: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm bio prison v2: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm mpath: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm zoned: support zone sizes smaller than 128MiB (Mike Snitzer) [1810746] - [md] dm raid: table line rebuild status fixes (Mike Snitzer) [1810746] - [documentation] docs: dm-integrity: remove reference to ARC4 (Mike Snitzer) [1810746] - [md] dm thin: Flush data device before committing metadata (Mike Snitzer) [1810746] - [md] dm thin metadata: Add support for a pre-commit callback (Mike Snitzer) [1810746] - [md] dm btree: increase rebalance threshold in __rebalance2() (Mike Snitzer) [1810746] - [md] dm mpath: remove harmful bio-based optimization (Mike Snitzer) [1810746] - [md] dm integrity: fix excessive alignment of metadata runs (Mike Snitzer) [1810746] - [md] dm cache: replace spin_lock_irqsave with spin_lock_irq (Mike Snitzer) [1810746] - [md] dm bio prison: replace spin_lock_irqsave with spin_lock_irq (Mike Snitzer) [1810746] - [md] dm thin: replace spin_lock_irqsave with spin_lock_irq (Mike Snitzer) [1810746] - [md] dm raid: streamline rs_get_progress() and its raid_status() caller side (Mike Snitzer) [1810746] - [md] dm raid: simplify rs_setup_recovery call chain (Mike Snitzer) [1810746] - [md] dm raid: to ensure resynchronization, perform raid set grow in preresume (Mike Snitzer) [1810746] - [md] dm raid: change rs_set_dev_and_array_sectors API and callers (Mike Snitzer) [1810746] - [md] dm: introduce DM_GET_TARGET_VERSION (Mike Snitzer) [1810746] - [md] dm bufio: introduce a global cache replacement (Mike Snitzer) [1810746] - [md] dm bufio: remove old-style buffer cleanup (Mike Snitzer) [1810746] - [md] dm bufio: introduce a global queue (Mike Snitzer) [1810746] - [md] dm bufio: refactor adjust_total_allocated (Mike Snitzer) [1810746] - [md] dm bufio: call adjust_total_allocated from __link_buffer and __unlink_buffer (Mike Snitzer) [1810746] - [md] dm crypt: omit parsing of the encapsulated cipher (Mike Snitzer) [1810746] - [md] dm crypt: switch to ESSIV crypto API template (Mike Snitzer) [1810746] - [crypto] crypto: essiv - create wrapper template for ESSIV generation (Mike Snitzer) [1810746] - [security] crypto: drop mask=CRYPTO_ALG_ASYNC from shash tfm allocations (Mike Snitzer) [1810746] - [crypto] crypto: drop mask=CRYPTO_ALG_ASYNC from cipher tfm allocations (Mike Snitzer) [1810746] - [md] dm verity: add root hash pkcs#7 signature verification (Mike Snitzer) [1810746] - [md] dm crypt: reuse eboiv skcipher for IV generation (Mike Snitzer) [1810746] - [md] dm integrity: fix a crash due to BUG_ON in __journal_read_write() (Mike Snitzer) [1810746] - [md] dm kcopyd: Increase default sub-job size to 512KB (Mike Snitzer) [1810746] - [documentation] docs: device-mapper: move it to the admin-guide (Mike Snitzer) [1810746] - [documentation] docs: convert docs to ReST and rename to *.rst (Mike Snitzer) [1810746] - [md] dm crypt: implement eboiv - encrypted byte-offset initialization vector (Mike Snitzer) [1810746] - [md] dm integrity: use kzalloc() instead of kmalloc() + memset() (Mike Snitzer) [1810746] - [md] dm integrity: always set version on superblock update (Mike Snitzer) [1810746] - [md] dm integrity: whitespace, coding style and dead code cleanup (Mike Snitzer) [1810746] - [md] dm integrity: implement synchronous mode for reboot handling (Mike Snitzer) [1810746] - [md] dm integrity: handle machine reboot in bitmap mode (Mike Snitzer) [1810746] - [md] dm integrity: add a bitmap mode (Mike Snitzer) [1810746] - [md] dm integrity: introduce a function add_new_range_and_wait() (Mike Snitzer) [1810746] - [md] dm integrity: allow large ranges to be described (Mike Snitzer) [1810746] - [md] dm ingerity: pass size to dm_integrity_alloc_page_list() (Mike Snitzer) [1810746] - [md] dm integrity: introduce rw_journal_sectors() (Mike Snitzer) [1810746] - [md] dm crypt and integrity: shash - remove shash_desc::flags (Mike Snitzer) [1810746] - [md] dm: fix potential for q->make_request_fn NULL pointer (Mike Snitzer) [1794340] - [netdrv] net/mlx5e: Don't clear the whole vf config when switching modes (mohamad meib) [1811428] - [scsi] scsi: be2iscsi: be_main: Mark expected switch fall-through (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: be_iscsi: Mark expected switch fall-through (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: switch to generic DMA API (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: fix spelling mistake "Retreiving" -> "Retrieving" (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: remove unused variable dmsg (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: Update copyright (Maurizio Lombardi) [1796740] - [security] selinux: fix sidtab string cache locking (Ondrej Mosnacek) [1807001 1806991] - [security] selinux: do not allocate ancillary buffer on first load (Ondrej Mosnacek) [1807001] - [security] selinux: remove redundant selinux_nlmsg_perm (Ondrej Mosnacek) [1807001] - [security] selinux: fix wrong buffer types in policydb.c (Ondrej Mosnacek) [1807001] - [security] selinux: treat atomic flags more carefully (Ondrej Mosnacek) [1807001] - [security] selinux: make default_noexec read-only after init (Ondrej Mosnacek) [1807001] - [security] selinux: move ibpkeys code under CONFIG_SECURITY_INFINIBAND (Ondrej Mosnacek) [1807001] - [security] Documentation, selinux: fix references to old selinuxfs mount point (Ondrej Mosnacek) [1807001] - [security] selinuxfs: use scnprintf to get real length for inode (Ondrej Mosnacek) [1807001] - [security] selinux: remove set but not used variable 'sidtab' (Ondrej Mosnacek) [1807001] - [security] selinux: ensure the policy has been loaded before reading the sidtab stats (Ondrej Mosnacek) [1807001] - [security] selinux: ensure we cleanup the internal AVC counters on error in avc_update() (Ondrej Mosnacek) [1807001] - [security] selinux: randomize layout of key structures (Ondrej Mosnacek) [1807001] - [security] selinux: clean up selinux_enabled/disabled/enforcing_boot (Ondrej Mosnacek) [1807001] - [security] selinux: remove unnecessary selinux cred request (Ondrej Mosnacek) [1807001] - [security] selinux: ensure we cleanup the internal AVC counters on error in avc_insert() (Ondrej Mosnacek) [1807001] - [security] security: only build lsm_audit if CONFIG_SECURITY=y (Ondrej Mosnacek) [1807001] - [security] selinux: clean up selinux_inode_permission MAY_NOT_BLOCK tests (Ondrej Mosnacek) [1807001] - [security] selinux: fall back to ref-walk if audit is required (Ondrej Mosnacek) [1807001] - [security] selinux: revert "stop passing MAY_NOT_BLOCK to the AVC upon follow_link" (Ondrej Mosnacek) [1807001] - [security] selinux: cache the SID -> context string translation (Ondrej Mosnacek) [1807001 1806991] - [security] selinux: sidtab reverse lookup hash table (Ondrej Mosnacek) [1807001] - [security] selinux: default_range glblub implementation (Ondrej Mosnacek) [1807001] - [security] selinux: allow labeling before policy is loaded (Ondrej Mosnacek) [1807001 1777525] - [security] selinux: remove load size limit (Ondrej Mosnacek) [1807001] - [security] selinux: fix residual uses of current_security() for the SELinux blob (Ondrej Mosnacek) [1807001] - [kernel] rcu: Make kfree_rcu() ignore NULL pointers (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of ipc security blobs (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of inode security blob (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of file security blob (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of cred security blob (Ondrej Mosnacek) [1807001] - [security] selinux: kill selinux_sb_get_mnt_opts() (Ondrej Mosnacek) [1807001] - [security] selinux; don't open-code a loop in sb_finish_set_opts() (Ondrej Mosnacek) [1807001] - [security] selinux: expand superblock_doinit() calls (Ondrej Mosnacek) [1807001] - [netdrv] hv_netvsc: Fix unwanted rx_table reset (Mohammed Gamal) [1805950] - [netdrv] hv_netvsc: Fix tx_table init in rndis_set_subchannel() (Mohammed Gamal) [1805950] - [netdrv] hv_netvsc: Fix send_table offset in case of a host bug (Mohammed Gamal) [1805950] - [netdrv] hv_netvsc: Fix offset usage in netvsc_send_table() (Mohammed Gamal) [1805950]- [block] blk-mq: Keep set->nr_hw_queues and set->map.nr_queues in sync (Ming Lei) [1810523] - [block] block: clear REQ_HIPRI if polling is not supported (Ming Lei) [1809506]- [perf] arm_spe: Enable ACPI/Platform automatic module loading (Jeremy Linton) [1501652] - [perf] perf: arm_spe: Don't error on high-order pages for aux buf (Jeremy Linton) [1501652] - [perf] arm_spe: handle devm_kasprintf() failure (Jeremy Linton) [1501652] - [perf] arm_spe: Enable automatic DT loading (Jeremy Linton) [1501652] - [block] blk-iolatency: fix STS_AGAIN handling (Ming Lei) [1764737] - [block] blk-iolatency: only account submitted bios (Ming Lei) [1764737] - [block] blk-iolatency: clear use_delay when io.latency is set to zero (Ming Lei) [1764737] - [block] blk-iolatency: #include "blk.h" (Ming Lei) [1764737] - [block] Blk-iolatency: warn on negative inflight IO counter (Ming Lei) [1764737] - [block] blk-iolatency: fix IO hang due to negative inflight counter (Ming Lei) [1764737] - [block] block: fix blk-iolatency accounting underflow (Ming Lei) [1764737] - [fs] xfs: stabilize insert range start boundary to avoid COW writeback race (Brian Foster) [1728979] - [x86] uprobes/x86: Fix detection of 32-bit user mode (Oleg Nesterov) [1804961] - [ipc] Revert "ipc, sem: remove uneeded sem_undo_list lock usage in exit_sem()" ("Herton R. Krzesinski") [1807627] - [powerpc] powerpc/tm: Fix clearing MSRin current when reclaiming on signal delivery (Gustavo Duarte) [1751116] - [powerpc] powerpc/tm: Set MSRjust prior to recheckpoint (Gustavo Duarte) [1751116] - [arm64] arm64: smp: Increase secondary CPU boot timeout value (Gavin Shan) [1807684] - [fs] ext4: work around deleting a file with i_nlink == 0 safely (Carlos Maiolino) [1801049] - [char] ipmi: fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier (Waiman Long) [1810638] - [char] ipmi: Revert "fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier" (Waiman Long) [1810638]- [kernel] blktrace: Protect q->blk_trace with RCU (Ming Lei) [1798329] - [drm] drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED panel (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/dp: Introduce EDID-based quirks (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Auto detect DPCD backlight support by default (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Fix DPCD register order in intel_dp_aux_enable_backlight() (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Assume 100 brightness when not in DPCD control mode (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Fix eDP DPCD aux max backlight calculations (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Check backlight type while doing eDP backlight initializaiton (Lyude Paul) [1782671 1773796 1748892] - [tools] selftests: nft_concat_range: Add test for reported add/flush/add issue (Stefano Brivio) [1807892] - [net] nft_set_pipapo: Actually fetch key data in nft_pipapo_remove() (Stefano Brivio) [1807892] - [net] sched: don't take rtnl lock during flow_action setup (Marcelo Leitner) [1804385] - [include] net: sched: refactor ct action helpers to require tcf_lock (Marcelo Leitner) [1804385] - [include] net: sched: refactor police action helpers to require tcf_lock (Marcelo Leitner) [1804385] - [net] sched: lock action when translating it to flow_action infra (Marcelo Leitner) [1804385] - [powerpc] powerpc/smp: Fix NMI IPI xmon timeout (Diego Domingos) [1747320] - [powerpc] powerpc/smp: Fix NMI IPI timeout (Diego Domingos) [1747320] - [powerpc] powerpc: NMI IPI make NMI IPIs fully sychronous (Diego Domingos) [1747320] - [arm64] arm64: select CPUMASK_OFFSTACK if NUMA (Andrea Arcangeli) [1712856] - [arm64] arm64: tlb: skip tlbi broadcast (Andrea Arcangeli) [1712856]- [fs] fs/proc/proc_sysctl.c: Fix a NULL pointer dereference (Vladis Dronov) [1795521] {CVE-2019-20054} - [fs] fs/proc/proc_sysctl.c: fix NULL pointer dereference in put_links (Vladis Dronov) [1795521] {CVE-2019-20054} - [ptp] ptp: correctly disable flags on old ioctls (Petr Oros) [1795188] - [uapi] PTP: add support for one-shot output (Petr Oros) [1795188] - [ptp] PTP: introduce new versions of IOCTLs (Petr Oros) [1795188] - [virtio] virtio_ring: fix stalls for packed rings (Eugenio Perez) [1601355] - [virtio] virtio_ring: Fix potential mem leak in virtqueue_add_indirect_packed (Eugenio Perez) [1601355] - [uapi] virtio: drop internal struct from UAPI (Eugenio Perez) [1601355] - [virtio] virtio_ring: advertize packed ring layout (Eugenio Perez) [1601355] - [virtio] virtio_ring: leverage event idx in packed ring (Eugenio Perez) [1601355] - [virtio] virtio_ring: introduce packed ring support (Eugenio Perez) [1601355] - [virtio] virtio_ring: cache whether we will use DMA API (Eugenio Perez) [1601355] - [virtio] virtio_ring: extract split ring handling from ring creation (Eugenio Perez) [1601355] - [virtio] virtio_ring: allocate desc state for split ring separately (Eugenio Perez) [1601355] - [virtio] virtio_ring: introduce helper for indirect feature (Eugenio Perez) [1601355] - [virtio] virtio_ring: introduce debug helpers (Eugenio Perez) [1601355] - [virtio] virtio_ring: put split ring fields in a sub struct (Eugenio Perez) [1601355] - [virtio] virtio_ring: put split ring functions together (Eugenio Perez) [1601355] - [virtio] virtio_ring: add _split suffix for split ring functions (Eugenio Perez) [1601355] - [uapi] virtio: add packed ring types and macros (Eugenio Perez) [1601355] - [x86] x86/mtrr: Skip cache flushes on CPUs with cache self-snooping (Prarit Bhargava) [1724541] - [x86] x86/cpu/intel: Clear cache self-snoop capability in CPUs with known errata (Prarit Bhargava) [1724541] - [documentation] Documentation PCI: Fix pciebus-howto.rst filename typo (Myron Stowe) [1793091] - [tools] tools: PCI: Fix installation when `make tools/pci_install` (Myron Stowe) [1793091] - [tools] tools: PCI: Fix broken pcitest compilation (Myron Stowe) [1793091] - [tools] tools pci: Do not delete pcitest.sh in 'make clean' (Myron Stowe) [1793091] - [pci] PCI: endpoint: Clear BAR before freeing its space (Myron Stowe) [1793091] - [pci] PCI: endpoint: Skip odd BAR when skipping 64bit BAR (Myron Stowe) [1793091] - [pci] PCI: endpoint: Allocate enough space for fixed size BAR (Myron Stowe) [1793091] - [pci] PCI: endpoint: Set endpoint controller pointer to NULL (Myron Stowe) [1793091] - [pci] PCI: endpoint: Add support to specify alignment for buffers allocated to BARs (Myron Stowe) [1793091] - [pci] PCI: pci-epf-test: Use pci_epc_get_features() to get EPC features (Myron Stowe) [1793091] - [pci] PCI: pci-epf-test: Do not allocate next BARs memory if current BAR is 64Bit (Myron Stowe) [1793091] - [pci] PCI: pci-epf-test: Remove setting epf_bar flags in function driver (Myron Stowe) [1793091] - [pci] PCI: endpoint: Fix pci_epf_alloc_space() to set correct MEM TYPE flags (Myron Stowe) [1793091] - [pci] PCI: endpoint: Add helper to get first unreserved BAR (Myron Stowe) [1793091] - [pci] PCI: endpoint: Add new pci_epc_ops to get EPC features (Myron Stowe) [1793091] - [pci] PCI: endpoint: functions: Use memcpy_fromio()/memcpy_toio() (Myron Stowe) [1793091] - [pci] PCI: Skip resource distribution when no hotplug bridges (Myron Stowe) [1793091] - [pci] PCI: Simplify pci_bus_distribute_available_resources() (Myron Stowe) [1793091] - [pci] PCI: Reset both NVIDIA GPU and HDA in ThinkPad P50 workaround (Myron Stowe) [1793091] - [pci] PCI: Enable NVIDIA HDA controllers (Myron Stowe) [1793091] - [pci] PCI: Use seq_puts() instead of seq_printf() in show_device() (Myron Stowe) [1793091] - [pci] PCI: Add NVIDIA GPU multi-function power dependencies (Myron Stowe) [1793091] - [pci] PCI: Generalize multi-function power dependency device links (Myron Stowe) [1793091] - [pci] PCI: sysfs: Ignore lockdep for remove attribute (Myron Stowe) [1793091] - [pci] PCI: Decode PCIe 32 GT/s link speed (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-test-howto.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-test-function.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-endpoint-cfs.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-endpoint.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pcieaer-howto.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pci-error-recovery.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert acpi-info.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert MSI-HOWTO.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pci-iov-howto.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert PCIEBUS-HOWTO.txt to reST (Myron Stowe) [1793091] - [documentation] docs: pci: fix broken links due to conversion from pci.txt to pci.rst (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pci.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: add Linux PCI to Sphinx TOC tree (Myron Stowe) [1793091] - [pci] PCI: Reset Lenovo ThinkPad P50 nvgpu at boot if necessary (Myron Stowe) [1793091] - [pci] PCI: Add a stub for pci_ats_disabled() (Myron Stowe) [1793091] - [pci] PCI: Provide pci_match_id() with CONFIG_PCI=n (Myron Stowe) [1793091] - [misc] ocxl: Add PCI hotplug dependency to Kconfig (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Wrap warnings in macro (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Relax check when disabling slot (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Register opencapi slots (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Improve error msg on power state change failure (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Remove erroneous warning (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Find opencapi slot for a device node (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Release opencapi device (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: set up PE on opencapi device when enabling (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Protect PE list (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Fix ref count for devices with their own PE (Steve Best) [1788902] - [of] of: overlay: add_changeset_property() memory leak (Steve Best) [1798483] - [of] of: unittest: initialize args before calling of_*parse_*() (Steve Best) [1798483] - [of] of: unittest: find overlaysentry by name instead of index (Steve Best) [1798483] - [of] of: unittest: allow base devicetree to have symbol metadata (Steve Best) [1798483] - [of] of: overlay: set node fields from properties when add new overlay node (Steve Best) [1798483] - [of] of: unittest: remove unused of_unittest_apply_overlay() argument (Steve Best) [1798483] - [of] of: overlay: check prevents multiple fragments touching same property (Steve Best) [1798483] - [of] of: overlay: check prevents multiple fragments add or delete same node (Steve Best) [1798483] - [of] of: overlay: test case of two fragments adding same node (Steve Best) [1798483] - [of] of: overlay: make all pr_debug() and pr_err() messages unique (Steve Best) [1798483] - [of] of: overlay: validate overlay properties (Steve Best) [1798483] - [of] of: overlay: reorder fields in struct fragment (Steve Best) [1798483] - [of] of: overlay: do not duplicate properties from overlay for new nodes (Steve Best) [1798483] - [of] of: overlay: use prop add changeset entry for property in new nodes (Steve Best) [1798483] - [of] of: Convert to using pOFn instead of device_node.name (Steve Best) [1798483] - [powerpc] powerpc/pseries: add of_node_put() in dlpar_detach_node() (Steve Best) [1798483] - [of] of: overlay: add missing of_node_get() in __of_attach_node_sysfs (Steve Best) [1798483] - [of] of: overlay: add missing of_node_put() after add new node to changeset (Steve Best) [1798483] - [of] of: overlay: add tests to validate kfrees from overlay removal (Steve Best) [1798483]- [kernel] open the RHEL 8.3 development (Frantisek Hrbata) - [netdrv] Revert "r8169: don't use MSI before RTL8168d" (Josef Oskera) [1792839] - [drm] drm/nouveau/kms/gv100-: Re-set LUT after clearing for modesets (Ben Skeggs) [1789026] - [drm] drm/nouveau/disp/gv100-: not all channel types support reporting error codes (Ben Skeggs) [1789481] - [drm] drm/nouveau/disp/nv50-: prevent oops when no channel method map provided (Ben Skeggs) [1789481] - [fs] cifs: don't leak -EAGAIN for stat() during reconnect (Dave Wysochanski) [1769599] - [block] blk-mq: insert passthrough request into hctx->dispatch directly (Ming Lei) [1788728] - [scsi] scsi: megaraid_sas: fixup MSIx interrupt setup during resume (Tomas Henzl) [1805353]- [fs] NFS: Add deferred cache invalidation for close-to-open consistency violations (Benjamin Coddington) [1803162] - [block] nbd: fix stack corruption in nbd_check_sock_type() (Ming Lei) [1803664] - [mm] mm/vmscan.c: don't round up scan size for online memory cgroup (Aristeu Rozanski) [1775691] - [tools] selftests/bpf: fix clearing buffered output between tests/subtests (Yauheni Kaliuta) [1786006] - [tools] libbpf: avoid usage of __builtin_preserve_field_info (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: samples/bpf: fix Split off legacy stuff from bpf_helpers.h (Yauheni Kaliuta) [1786006] - [tools] libbpf: fix Make DECLARE_LIBBPF_OPTS macro strictly a variable declaration (Yauheni Kaliuta) [1786006] - [tools] selftests: fix too long argument (Yauheni Kaliuta) [1786006] - [tools] libbpf: Add BPF-side definitions of supported field relocation kinds (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: add sub-tests support for test_progs (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: abstract away test log output (Yauheni Kaliuta) [1786006] - [tools] selftest/bpf: centralize libbpf logging management for test_progs (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: prevent headers to be compiled as C code (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: add test selectors by number and name to test_progs (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: revamp test_progs to allow more control (Yauheni Kaliuta) [1786006] - [net] core: Don't skip generic XDP program execution for cloned SKBs (Jiri Benc) [1802507] - [tools] selftests/bpf: De-flake test_tcpbpf (Jiri Benc) [1802507] - [net] bpf, sockmap: Check update requirements after locking (Jiri Benc) [1802507] - [net] bpf, sockhash: Synchronize_rcu before free'ing map (Jiri Benc) [1802507] - [net] bpf, sockmap: Don't sleep while holding RCU lock on tear-down (Jiri Benc) [1802507] - [net] net: bpf: Don't leak time wait and request sockets (Jiri Benc) [1802507] - [net] bpf/sockmap: Read psock ingress_msg before sk_receive_queue (Jiri Benc) [1802507] - [net] bpf: Clear skb->tstamp in bpf_redirect when necessary (Jiri Benc) [1802507] - [net] xdp: obtain the mem_id mutex before trying to remove an entry (Jiri Benc) [1802507] - [net] page_pool: do not release pool until inflight == 0 (Jiri Benc) [1802507] - [net] xsk: Fix registration of Rx-only sockets (Jiri Benc) [1802507] - [net] xsk: avoid store-tearing when assigning umem (Jiri Benc) [1802507] - [net] xsk: avoid store-tearing when assigning queues (Jiri Benc) [1802507] - [tools] bpftool: Don't crash on missing xlated program instructions (Jiri Benc) [1802507] - [tools] bpftool: Fix printing incorrect pointer in btf_dump_ptr (Jiri Benc) [1802507] - [tools] bpftool: Don't crash on missing jited insns or ksyms (Jiri Benc) [1802507] - [tools] bpftool: Match several programs with same tag (Jiri Benc) [1802507] - [tools] libbpf: Fix realloc usage in bpf_core_find_cands (Jiri Benc) [1802507] - [tools] libbpf: Add missing newline in opts validation macro (Jiri Benc) [1802507] - [tools] libbpf: Don't attach perf_buffer to offline/missing CPUs (Jiri Benc) [1802507] - [tools] libbpf: Extract and generalize CPU mask parsing logic (Jiri Benc) [1802507] - [tools] libbpf: Fix printf compilation warnings on ppc64le arch (Jiri Benc) [1802507] - [tools] libbpf: Fix sym->st_value print on 32-bit arches (Jiri Benc) [1802507] - [tools] libbpf: Make btf__resolve_size logic always check size error condition (Jiri Benc) [1802507] - [tools] libbpf: Fix another potential overflow issue in bpf_prog_linfo (Jiri Benc) [1802507] - [tools] libbpf: Fix potential overflow issue (Jiri Benc) [1802507] - [tools] libbpf: Fix memory leak/double free issue (Jiri Benc) [1802507] - [tools] libbpf: Fix off-by-one error in ELF sanity check (Jiri Benc) [1802507] - [tools] selftests/bpf: Fix test_attach_probe (Jiri Benc) [1802507] - [kernel] bpf: Fix bpf_event_output re-entry issue (Jiri Benc) [1802507] - [net] bpf: Fix incorrect verifier simulation of ARSH under ALU32 (Jiri Benc) [1802507] - [net] bpf: Fix passing modified ctx to ld/abs/ind instruction (Jiri Benc) [1802507] - [net] bpf: cgroup: prevent out-of-order release of cgroup bpf (Jiri Benc) [1802507] - [net] bpf: Fix precision tracking for unbounded scalars (Jiri Benc) [1802507] - [net] bpf: Fix cgroup local storage prog tracking (Jiri Benc) [1802507] - [net] bpf/stackmap: Fix deadlock with rq_lock in bpf_get_stack() (Jiri Benc) [1802507] - [net] bpf, offload: Unlock on error in bpf_offload_dev_create() (Jiri Benc) [1802507] - [powerpc] powerpc/bpf: Fix tail call implementation (Jiri Benc) [1802507] - [net] bpf: Fix use after free in bpf_get_prog_name (Jiri Benc) [1802507] - [net] bpf: Fix use after free in subprog's jited symbol removal (Jiri Benc) [1802507] - [uapi] bpf: fix BTF limits (Jiri Benc) [1802507] - [net] bpf: fix BTF verification of enums (Jiri Benc) [1802507] - [netdrv] ice: Don't tell the OS that link is going down (Jonathan Toppins) [1792670] - [powerpc] powerpc/powernv: implement opal_put_chars_atomic (Steve Best) [1806254] - [tty] powerpc/powernv: move opal console flushing to udbg (Steve Best) [1806254] - [powerpc] powerpc/powernv: Remove OPALv1 support from opal console driver (Steve Best) [1806254] - [powerpc] powerpc/powernv: Implement and use opal_flush_console (Steve Best) [1806254] - [powerpc] powerpc/powernv: opal-kmsg use flush fallback from console code (Steve Best) [1806254] - [powerpc] powerpc/powernv: opal-kmsg standardise OPAL_BUSY handling (Steve Best) [1806254] - [powerpc] powerpc/powernv: Fix OPAL console driver OPAL_BUSY loops (Steve Best) [1806254] - [powerpc] powerpc/powernv: opal_put_chars partial write fix (Steve Best) [1806254] - [x86] Mark Comet Lake-S as supported (David Arcari) [1805754]- rebuild, due infrastructure issues last kernel build wasn't signed properly [1807216]- [nvme] nvme-multipath: Fix memory leak with ana_log_buf (David Milburn) [1804822] - [powerpc] pci/of: Fix OF flags parsing for 64bit BARs (David Gibson) [1804038]- [pci] PCI: pciehp: Add DMI table for in-band presence disabled (Myron Stowe) [1749528] - [pci] PCI: pciehp: Wait for PDS if in-band presence is disabled (Myron Stowe) [1749528] - [pci] PCI: pciehp: Add support for disabling in-band presence (Myron Stowe) [1749528] - [netdrv] net/mlx5: DR, Handle reformat capability over sw-steering tables (Alaa Hleihel) [1794997] - [netdrv] net/mlx5: DR, Fix matching on vport gvmi (Alaa Hleihel) [1794997] - [netdrv] net/mlx5: DR, use non preemptible call to get the current cpu number (Alaa Hleihel) [1794997] - [netdrv] net/mlx5: DR, Enable counter on non-fwd-dest objects (Alaa Hleihel) [1794997] - [iommu] iommu/vt-d: Simplify check in identity_mapping() (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Remove deferred_attach_domain() (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Do deferred attachment in iommu_need_mapping() (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Move deferred device attachment into helper function (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Add attach_deferred() helper (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Refactor find_domain() helper (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Allow devices with RMRRs to use identity domain (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Call __dmar_remove_one_dev_info with valid pointer (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Fix lock inversion between iommu->lock and device_domain_lock (Jerry Snitselaar) [1797124 1784649] - [ata] ata: ahci: Add shutdown to freeze hardware resources of ahci (David Milburn) [1784955] - [include] redhat: kabi: convert incorrect use of RH_KABI_EXTEND (Jiri Benc) [1715803] - [include] redhat: kabi: macros for intentional kABI breakage (Jiri Benc) [1715803] - [uapi] redhat: kabi: bpf: remove misleading comment (Jiri Benc) [1715803] - [include] redhat: kabi: introduce RH_KABI_HIDE_INCLUDE and RH_KABI_FAKE_INCLUDE (Jiri Benc) [1715803] - [kernel] kernel/module.c: wakeup processes in module_wq on module unload (Prarit Bhargava) [1804209] - [x86] kvm: x86: do not reset microcode version on INIT or RESET (Paolo Bonzini) [1801853] - [x86] kvm: x86: list MSR_IA32_UCODE_REV as an emulated MSR (Paolo Bonzini) [1801853] - [nvme] nvme: prevent warning triggered by nvme_stop_keep_alive (David Milburn) [1799890] - [nvme] nvme: nvme_keep_alive_end_io fixup setting comp_seen flag (David Milburn) [1799890]- [iommu] iommu: don't change default domain if already set by quirk (Jerry Snitselaar) [1786292] - [net] netfilter: ipset: Copy the right MAC address in hash:ip, mac IPv6 sets (Stefano Brivio) [1759422] - [net] ipv6/addrconf: only check invalid header values when NETLINK_F_STRICT_CHK is set (Guillaume Nault) [1802817] - [net] tcp: clear tp->segs_{in|out} in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: clear tp->data_segs{in|out} in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: clear tp->delivered in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: clear tp->total_retrans in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: do not leave dangling pointers in tp->highest_sack (Guillaume Nault) [1802682] - [net] tcp: Fix highest_sack and highest_sack_seq (Guillaume Nault) [1802682] - [net] tcp: do not send empty skb from tcp_write_xmit() (Guillaume Nault) [1802682] - [net] tcp: md5: fix potential overestimation of TCP option space (Guillaume Nault) [1802682] - [net] tcp: fix data-race in tcp_recvmsg() (Guillaume Nault) [1802682] - [net] bridge: ebtables: don't crash when using dnat target in output chains (Andrea Claudi) [1798923] - [net] ip6_tunnel: fix namespaces move (Andrea Claudi) [1798649] - [net] ip_tunnel: fix namespaces move (Andrea Claudi) [1798649] - [net] ipv4: Detect rollover in specific fib table dump (Guillaume Nault) [1801587] - [net] inet: protect against too small mtu values. (Guillaume Nault) [1801587] - [net] icmp: fix data-race in cmp_global_allow() (Guillaume Nault) [1801587] - [net] inetpeer: fix data-race in inet_putpeer / inet_putpeer (Guillaume Nault) [1801587] - [net] ipv4: Fix table id reference in fib_sync_down_addr (Guillaume Nault) [1801587] - [net] dccp: do not leak jiffies on the wire (Guillaume Nault) [1801587] - [net] inet: stop leaking jiffies on the wire (Guillaume Nault) [1801587] - [tools] selftests: fib_tests: add more tests for metric update (Guillaume Nault) [1801587] - [net] ipv4: fix route update on metric change. (Guillaume Nault) [1801587] - [net] iptunnel: Set tun_flags in the iptunnel_metadata_reply from src (Guillaume Nault) [1801587] - [net] flow_dissector: Fix to use new variables for port ranges in bpf hook (Ivan Vecera) [1789862] - [net] net_sched: fix a resource leak in tcindex_set_parms() (Ivan Vecera) [1789862] - [tools] tc-testing: fix eBPF tests failure on linux fresh clones (Ivan Vecera) [1789862] - [net] net_sched: fix an OOB access in cls_tcindex (Ivan Vecera) [1789862] - [net] cls_rsvp: fix rsvp_policy (Ivan Vecera) [1789862] - [net] net_sched: ematch: reject invalid TCF_EM_SIMPLE (Ivan Vecera) [1789862] - [net] net_sched: walk through all child classes in tc_bind_tclass() (Ivan Vecera) [1789862] - [net] net_sched: fix ops->bind_class() implementations (Ivan Vecera) [1789862] - [net] net_sched: fix datalen for ematch (Ivan Vecera) [1789862] - [net] net_sched: use validated TCA_KIND attribute in tc_new_tfilter() (Ivan Vecera) [1789862] - [net] sch_prio: When ungrafting, replace with FIFO (Ivan Vecera) [1789862] - [net] pkt_sched: fq: do not accept silly TCA_FQ_QUANTUM (Ivan Vecera) [1789862] - [net] sched: add delete_empty() to filters and use it in cls_flower (Ivan Vecera) [1789862] - [net] sched: act_mirred: Pull mac prior redir to non mac_header_xmit device (Ivan Vecera) [1789862] - [net] sched: cls_u32: fix refcount leak in the error path of u32_change() (Ivan Vecera) [1789862] - [net] net_sched: sch_fq: properly set sk->sk_pacing_status (Ivan Vecera) [1789862] - [net] net_sched: validate TCA_KIND attribute in tc_chain_tmplt_add() (Ivan Vecera) [1789862] - [net] mqprio: Fix out-of-bounds access in mqprio_dump (Ivan Vecera) [1789862] - [net] sched: allow indirect blocks to bind to clsact in TC (Ivan Vecera) [1789862] - [net] core: rename indirect block ingress cb function (Ivan Vecera) [1789862] - [net] Fixed updating of ethertype in skb_mpls_push() (Ivan Vecera) [1789862] - [net] cls_flower: Fix the behavior using port ranges with hw-offload (Ivan Vecera) [1789862] - [net] sched: fix dump qlen for sch_mq/sch_mqprio with NOLOCK subqueues (Ivan Vecera) [1789862] - [net] Fixed updating of ethertype in function skb_mpls_pop (Ivan Vecera) [1789862] - [net] sched: fix `tc -s class show` no bstats on class with nolock subqueues (Ivan Vecera) [1789862] - [net] sched: act_pedit: fix WARN() in the traffic path (Ivan Vecera) [1789862] - [net] sched: actions: remove unused 'order' (Ivan Vecera) [1789862] - [net] sched: annotate lockless accesses to qdisc->empty (Ivan Vecera) [1789862] - [net] annotate lockless accesses to sk->sk_max_ack_backlog (Ivan Vecera) [1789862] - [net] inet: minor optimization for backlog setting in listen(2) (Ivan Vecera) [1789862] - [net] annotate lockless accesses to sk->sk_ack_backlog (Ivan Vecera) [1789862] - [net] use helpers to change sk_ack_backlog (Ivan Vecera) [1789862] - [net] sched: prevent duplicate flower rules from tcf_proto destroy race (Ivan Vecera) [1789862] - [net] flow_dissector: switch to siphash (Ivan Vecera) [1789862] - [netdrv] macvlan: use skb_reset_mac_header() in macvlan_queue_xmit() (Davide Caratti) [1801128] - [netdrv] macvlan: do not assume mac_header is set in macvlan_broadcast() (Davide Caratti) [1801128] - [net] psample: fix skb_over_panic (Sabrina Dubroca) [1800589] - [net] openvswitch: don't unlock mutex when changing the user_features fails (Davide Caratti) [1799363] - [net] rtnetlink: validate IFLA_MTU attribute in rtnl_create_link() (Guillaume Nault) [1798715] - [net] rtnetlink: fix a typo fbd -> fdb (Guillaume Nault) [1798715] - [net] bpf: Sockmap, skmsg helper overestimates push, pull, and pop bounds (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, msg_push_data may leave end mark in place (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, push write_space updates through ulp updates (Sabrina Dubroca) [1798179] - [net] sk_msg: Don't check if sock is locked when tearing down psock (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, fix pop data with SK_DROP return code (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, skmsg can have wrapped skmsg that needs extra chaining (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, tls_sw can create a plaintext buf > encrypt buf (Sabrina Dubroca) [1798179] - [include] bpf: Sockmap/tls, during free we may call tcp_bpf_unhash() in loop (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap, ensure sock lock held during tear down (Sabrina Dubroca) [1798179] - [net] tls: fix async operation (Sabrina Dubroca) [1798179] - [net] tls: Fix return values to avoid ENOTSUPP (Sabrina Dubroca) [1798179] - [net] skmsg: fix TLS 1.3 crash with full sk_msg (Sabrina Dubroca) [1798179] - [net] tls: free the record on encryption error (Sabrina Dubroca) [1798179] - [net] tls: take into account that bpf_exec_tx_verdict() may free the record (Sabrina Dubroca) [1798179] - [net] bpf: skmsg, fix potential psock NULL pointer dereference (Sabrina Dubroca) [1798179] - [net] tls: enable sk_msg redirect to tls socket egress (Sabrina Dubroca) [1798179] - [netdrv] macsec: fix refcnt leak in module exit routine (Sabrina Dubroca) [1799029] - [netdrv] ppp: Adjust indentation into ppp_async_input (Guillaume Nault) [1798104] - [net] l2tp: Allow duplicate session creation with UDP (Guillaume Nault) [1798104] - [net] Fix bugs introduced by netlink strict checking backport (Petr Oros) [1782172] - [tools] selftests: forwarding: fix race between packet receive and tc check (Hangbin Liu) [1797941] - [tools] selftests: forwarding: tc_common: Add hitting check (Hangbin Liu) [1797941] - [tools] selftests: net: push jq workaround into separate helper (Hangbin Liu) [1797941] - [tools] selftests: loopback.sh: skip this test if the driver does not support (Hangbin Liu) [1797941] - [tools] selftests: pmtu: fix init mtu value in description (Hangbin Liu) [1797941] - [tools] selftests: forwarding: Delete IPv6 address at the end (Hangbin Liu) [1797941] - [tools] selftests: pmtu: use -oneline for ip route list cache (Hangbin Liu) [1797941] - [tools] selftests: net: tcp_mmap should create detached threads (Hangbin Liu) [1797941] - [tools] selftests: net: reuseport_dualstack: fix uninitalized parameter (Hangbin Liu) [1797941] - [net] tipc: fix link overflow issue at socket shutdown (Xin Long) [1798070] - [net] tipc: fix retrans failure due to wrong destination (Xin Long) [1798070] - [net] tipc: fix potential hanging after b/rcast changing (Xin Long) [1798070] - [net] tipc: fix ordering of tipc module init and exit routine (Xin Long) [1798070] - [net] tipc: fix wrong timeout input for tipc_wait_for_cond() (Xin Long) [1798070] - [net] tipc: fix wrong socket reference counter after tipc_sk_timeout() returns (Xin Long) [1798070] - [net] tipc: fix potential memory leak in __tipc_sendmsg() (Xin Long) [1798070] - [net] tipc: fix link name length check (Xin Long) [1798070] - [net] tipc: update replicast capability for broadcast send link (Xin Long) [1798070] - [net] tipc: update cluster capabilities if node deleted (Xin Long) [1798070] - [net] tipc: update mon's self addr when node addr generated (Xin Long) [1798070] - [net] tipc: reduce sensitive to retransmit failures (Xin Long) [1798070] - [net] sctp: free cmd->obj.chunk for the unprocessed SCTP_CMD_REPLY (Xin Long) [1798061] - [net] sctp: fully initialize v4 addr in some functions (Xin Long) [1798061] - [net] sctp: cache netns in sctp_ep_common (Xin Long) [1798061] - [net] sctp: Fix memory leak in sctp_sf_do_5_2_4_dupcook (Xin Long) [1798061] - [net] xfrm: support output_mark for offload ESP packets (Xin Long) [1798059] - [net] xfrm: release device reference for invalid state (Xin Long) [1798059] - [net] netfilter: fix a use-after-free in mtype_destroy() (Davide Caratti) [1796361] - [net] netfilter: ipset: avoid null deref when IPSET_ATTR_LINENO is present (Davide Caratti) [1796361] - [net] netfilter: conntrack: Request module if l3proto is unknown (Phil Sutter) [1752765] - [include] tcp: Protect accesses to .ts_recent_stamp with {READ,WRITE}_ONCE() (Guillaume Nault) [1780828] - [include] tcp: tighten acceptance of ACKs not matching a child socket (Guillaume Nault) [1780828] - [include] tcp: fix rejected syncookies due to stale timestamps (Guillaume Nault) [1780828] - [net] SUNRPC: Make "no retrans timeout" soft tasks behave like softconn for timeouts (Steve Dickson) [1801454] - [kernel] genirq, sched/isolation: Isolate from handling managed interrupts (Peter Xu) [1783026]- [nvme] nvme: fix the parameter order for nvme_get_log in nvme_get_fw_slot_info (David Milburn) [1798630] - [mm] arm64: debug: Remove unused return value from do_debug_exception() (Bhupesh Sharma) [1802511] - [mm] arm64: debug: Don't propagate UNKNOWN FAR into si_code for debug signals (Bhupesh Sharma) [1802511] - [mm] arm64/mm: Reorganize arguments for is_el1_permission_fault() (Bhupesh Sharma) [1802511] - [mm] arm64/mm: Define esr_to_debug_fault_info() (Bhupesh Sharma) [1802511] - [infiniband] IB/mlx5: Do reverse sequence during device removal (Alaa Hleihel) [1801497] - [netdrv] bnxt_en: Fix RDMA driver failure with SRIOV after firmware reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Refactor logic to re-enable SRIOV after firmware reset detected (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix logic that disables Bus Master during firmware reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix TC queue mapping (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix NTUPLE firmware command failures (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix ipv6 RFS filter matching logic (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Do not treat DSN (Digital Serial Number) read failure as fatal (Jonathan Toppins) [1801868] - [netdrv] bnxt: Detach page from page pool before sending up the stack (Jonathan Toppins) [1801868] - [netdrv] bnxt: apply computed clamp value for coalece parameter (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix MSIX request logic for RDMA driver (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Free context memory in the open path if firmware has been reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Return error if FW returns more data than dump length (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix bp->fw_health allocation and free logic (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Add missing devlink health reporters for VFs (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix the logic that creates the health reporters (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Do driver unregister cleanup in bnxt_init_one() failure path (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Send FUNC_RESOURCE_QCAPS command in bnxt_resume() (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Combine 2 functions calling the same HWRM_DRV_RGTR fw command (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Abort waiting for firmware response if there is no heartbeat (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Return proper error code for non-existent NVM variable (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Add a warning message for driver initiated reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Improve RX buffer error handling (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Extend ETHTOOL_RESET to hot reset driver (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Increase firmware response timeout for coredump commands (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix suspend/resume path on 57500 chips (Jonathan Toppins) [1801111] - [netdrv] bnxt_en: Disable/enable Bus master during suspend/resume (Jonathan Toppins) [1801111] - [fs] cifs: fix soft mounts hanging in the reconnect code (Leif Sahlberg) [1795423] - [kernel] audit: CONFIG_CHANGE don't log internal bookkeeping as an event (Richard Guy Briggs) [1798512] - [security] selinux: reorder hooks to make runtime disable less broken (Ondrej Mosnacek) [1778990] - [scsi] scsi: qla2xxx: Fix unbound NVME response length (Himanshu Madhani) [1796480] - [isdn] misdn: enforce CAP_NET_RAW for raw sockets (Andrea Claudi) [1779475] {CVE-2019-17055}- [fs] Revert: f5bcc37b81fc ("namei: allow restricted O_CREAT of FIFOs and regular files") (Eric Sandeen) [1801468] - [fs] Revert: 433cbb6cf0ae ("quota: honor quota type in Q_XGETQSTATcalls") (Eric Sandeen) [1800435] - [infiniband] RDMA/siw: Fix setting active_mtu attribute (Kamal Heib) [1797199] - [infiniband] RDMA/hfi1: Fix memory leak in _dev_comp_vect_mappings_create (Kamal Heib) [1733690] - [scsi] scsi: lpfc: Fix release of hwq to clear the eq relationship (Dick Kennedy) [1798661] - [x86] kvm/hyper-v: don't allow to turn on unsupported VMX controls for nested guests (Vitaly Kuznetsov) [1786288] - [x86] kvm/hyper-v: move VMX controls sanitization out of nested_enable_evmcs() (Vitaly Kuznetsov) [1786288] - [x86] kvm/hyper-v: remove stale evmcs_already_enabled check from nested_enable_evmcs() (Vitaly Kuznetsov) [1786288] - [x86] kvm: svm: relax conditions for allowing MSR_IA32_SPEC_CTRL accesses (Paolo Bonzini) [1796417] - [x86] kvm: x86: avoid incorrect writes to host MSR_IA32_SPEC_CTRL (Paolo Bonzini) [1796417] - [tools] selftests: netfilter: Introduce tests for sets with range concatenation (Stefano Brivio) [1593711] - [net] nf_tables: Add set type for arbitrary concatenation of ranges (Stefano Brivio) [1593711] - [lib] bitmap: Introduce bitmap_cut(): cut bits and shift remaining (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: Support for sets with multiple ranged fields (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: add NFTA_SET_ELEM_KEY_END attribute (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: add nft_setelem_parse_key() (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: validate NFT_DATA_VALUE after nft_data_init() (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: validate NFT_SET_ELEM_INTERVAL_END (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: remove unused parameter ctx (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: remove unused variable (Stefano Brivio) [1593711] - [ptp] ptp: free ptp device pin descriptors properly (Vladis Dronov) [1787568] - [ptp] ptp: fix the race between the release of ptp_clock and cdev (Vladis Dronov) [1787568] - [ptp] ptp: Fix pass zero to ERR_PTR() in ptp_clock_register (Vladis Dronov) [1787568]- [fs] NFSv4: pnfs_roc() must use cred_fscmp() to compare creds (Benjamin Coddington) [1800893] - [drm] drm/nouveau/kms/gv100-: avoid sending a core update until the first modeset (Ben Skeggs) [1801091] - [drm] drm/nouveau/kms/gv100-: move window ownership setup into modesetting path (Ben Skeggs) [1801091] - [drm] drm/nouveau/disp/gv100-: halt NV_PDISP_FE_RM_INTR_STAT_CTRL_DISP_ERROR storms (Ben Skeggs) [1801091] - [drm] drm/nouveau: Add HD-audio component notifier support (Ben Skeggs) [1792191] - [netdrv] net/mlx5: Fix deadlock in fs_core (Alaa Hleihel) [1786630] - [drm] drm/amd/dm/mst: Ignore payload update failures (Lyude Paul) [1773800 1773795] - [kernel] sched/rt: Optimize checking group RT scheduler constraints (Phil Auld) [1797106] - [fs] cifs: Fix mount options set in automount (Dave Wysochanski) [1790922]- [kernel] timers/nohz: Update NOHZ load in remote tick (Scott Wood) [1791434] - [kernel] sched/core: Don't skip remote tick for idle CPUs (Scott Wood) [1791434] - [drm] drm/amdgpu/vi: silence an uninitialized variable warning (Lyude Paul) [1792565] - [drm] drm: panel-lvds: Potential Oops in probe error handling (Lyude Paul) [1792565] - [drm] drm/i915: Fix pid leak with banned clients (Lyude Paul) [1792565] - [drm] drm/amdgpu: allow direct upload save restore list for raven2 (Lyude Paul) [1792565] - [drm] drm/amd/display: Reorder detect_edp_sink_caps before link settings read (Lyude Paul) [1792565] - [drm] drm/i915: Add missing include file (Lyude Paul) [1792565] - [drm] drm/amdgpu: enable gfxoff for raven1 refresh (Lyude Paul) [1792565] - [drm] drm/amdgpu/discovery: reserve discovery data at the top of VRAM (Lyude Paul) [1792565] - [drm] drm/amdgpu: cleanup creating BOs at fixed location (v2) (Lyude Paul) [1792565] - [drm] drm/tegra: Fix ordering of cleanup code (Lyude Paul) [1792565] - [drm] drm/i915/gen9: Clear residual context state on context switch (Lyude Paul) [1792565] - [drm] drm/i915: Add Wa_1407352427:icl,ehl (Lyude Paul) [1792565] - [drm] drm/dp_mst: correct the shifting in DP_REMOTE_I2C_READ (Lyude Paul) [1792565] - [drm] drm/fb-helper: Round up bits_per_pixel if possible (Lyude Paul) [1792565] - [drm] drm/i915: Add Wa_1408615072 and Wa_1407596294 to icl, ehl (Lyude Paul) [1792565] - [drm] drm/amdgpu/smu: add metrics table lock for vega20 (v2) (Lyude Paul) [1792565] - [drm] drm/amdgpu/smu: add metrics table lock for navi (v2) (Lyude Paul) [1792565] - [drm] drm/amdgpu/smu: add metrics table lock (Lyude Paul) [1792565] - [drm] drm/nouveau/kms/nv50-: fix panel scaling (Lyude Paul) [1792565 1741114] - [drm] drm/nouveau: Fix drm-core using atomic code-paths on pre-nv50 hardware (Lyude Paul) [1792565] - [drm] drm/nouveau: Move the declaration of struct nouveau_conn_atom up a bit (Lyude Paul) [1792565] - [drm] drm/amd/display: Reset steer fifo before unblanking the stream (Lyude Paul) [1792565] - [drm] drm/amd/display: Change the delay time before enabling FEC (Lyude Paul) [1792565] - [drm] drm/amd/display: Fixed kernel panic when booting with DP-to-HDMI dongle (Lyude Paul) [1792565] - [drm] drm/amdgpu: add cache flush workaround to gfx8 emit_fence (Lyude Paul) [1792565] - [drm] drm/amdgpu: add check before enabling/disabling broadcast mode (Lyude Paul) [1792565] - [drm] drm: limit to INT_MAX in create_blob ioctl (Lyude Paul) [1792565] - [drm] drm/amdgpu: Call find_vma under mmap_sem (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix uninitialized variable pasid_mapping_needed (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix bad DMA from INTERRUPT_CNTL2 (Lyude Paul) [1792565] - [drm] drm/amdgpu: Avoid accidental thread reactivation (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix potential double drop fence reference (Lyude Paul) [1792565] - [drm] drm/amdgpu: disallow direct upload save restore list from gfx driver (Lyude Paul) [1792565] - [gpu] gpu: host1x: Allocate gather copy for host1x (Lyude Paul) [1792565] - [drm] drm/tegra: sor: Use correct SOR index on Tegra210 (Lyude Paul) [1792565] - [drm] drm/amd/display: correctly populate dpp refclk in fpga (Lyude Paul) [1792565] - [drm] drm: Don't free jobs in wait_event_interruptible() (Lyude Paul) [1792565] - [drm] drm/gma500: fix memory disclosures due to uninitialized bytes (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix amdgpu trace event print string format error (Lyude Paul) [1792565] - [drm] drm/amd/powerplay: avoid disabling ECC if RAS is enabled for VEGA20 (Lyude Paul) [1792565] - [drm] drm/bridge: dw-hdmi: Restore audio when setting a mode (Lyude Paul) [1792565] - [drm] drm/amd/display: Program DWB watermarks from correct state (Lyude Paul) [1792565] - [drm] drm/amd/display: Fix dongle_caps containing stale information (Lyude Paul) [1792565] - [drm] drm/amd/display: add new active dongle to existent w/a (Lyude Paul) [1792565] - [drm] drm/amd/display: refactor Device ID for external chips (Lyude Paul) [1792565] - [drm] drm/amd/display: wait for set pipe mcp command completion (Lyude Paul) [1792565] - [drm] drm/amd/display: Properly round nominal frequency for SPD (Lyude Paul) [1792565] - [drm] drm/drm_vblank: Change EINVAL by the correct errno (Lyude Paul) [1792565] - [drm] drm/amdkfd: Fix MQD size calculation (Lyude Paul) [1792565] - [drm] drm/bridge: dw-hdmi: Refuse DDC/CI transfers on the internal I2C controller (Lyude Paul) [1792565] - [drm] drm/amd/display: set minimum abm backlight level (Lyude Paul) [1792565] - [drm] drm/amd/display: load iram for abm 2.3 (Lyude Paul) [1792565] - [drm] drm/amd/powerplay: A workaround to GPU RESET on APU (Lyude Paul) [1792565] - [drm] drm/amdkfd: fix a potential NULL pointer dereference (v2) (Lyude Paul) [1792565] - [drm] drm/amd/display: Set number of pipes to 1 if the second pipe was disabled (Lyude Paul) [1792565] - [drm] drm/amd/display: Handle virtual signal type in disable_link() (Lyude Paul) [1792565] - [drm] drm/ttm: return -EBUSY on pipelining with no_gpu_wait (v2) (Lyude Paul) [1792565] - [drm] drm/amdgpu: grab the id mgr lock while accessing passid_mapping (Lyude Paul) [1792565] - [drm] drm/amdgpu/sriov: add ring_stop before ring_create in psp v11 code (Lyude Paul) [1792565] - [drm] drm/bridge: analogix-anx78xx: silence -EPROBE_DEFER warnings (Lyude Paul) [1792565] - [drm] drm/amd/display: verify stream link before link test (Lyude Paul) [1792565] - [drm] drm: Use EOPNOTSUPP, not ENOTSUPP (Lyude Paul) [1792565] - [drm] drm/mipi-dbi: fix a loop in debugfs code (Lyude Paul) [1792565] - [drm] drm: mst: Fix query_payload ack reply struct (Lyude Paul) [1792565] - [drm] Revert "drm/virtio: switch virtio_gpu_wait_ioctl() to gem helper." (Lyude Paul) [1792565] - [drm] drm/amdgpu: add invalidate semaphore limit for SRIOV and picasso in gmc9 (Lyude Paul) [1792565] - [drm] drm/amdgpu: avoid using invalidate semaphore for picasso (Lyude Paul) [1792565] - [drm] drm/amdgpu/gfx10: re-init clear state buffer after gpu reset (Lyude Paul) [1792565] - [drm] drm/amdgpu/gfx10: explicitly wait for cp idle after halt/unhalt (Lyude Paul) [1792565] - [drm] drm/amdgpu: invalidate mmhub semaphore workaround in gmc9/gmc10 (Lyude Paul) [1792565] - [drm] drm/amdgpu: set adev->num_vmhubs for gmc6, 7, 8 (Lyude Paul) [1792565] - [drm] drm/amdgpu: Export function to flush TLB of specific vm hub (Lyude Paul) [1792565] - [drm] drm/amdgpu: add new member in amdgpu_device for vmhub counts per asic chip (Lyude Paul) [1792565] - [drm] drm/amdgpu: rename AMDGPU_GFXHUB/MMHUB macro with hub number (Lyude Paul) [1792565] - [drm] drm/amdgpu: initialize vm_inv_eng0_sem for gfxhub and mmhub (Lyude Paul) [1792565] - [drm] drm/amd/display: add default clocks if not able to fetch them (Lyude Paul) [1792565] - [drm] drm/amd/display: re-enable wait in pipelock, but add timeout (Lyude Paul) [1792565] - [drm] drm/dp_mst: Correct the bug in drm_dp_update_payload_part1() (Lyude Paul) [1792565] - [drm] drm/radeon: fix r1xx/r2xx register checker for POT textures (Lyude Paul) [1792565] - [drm] drm/i915/fbc: Disable fbc by default on all glk+ (Lyude Paul) [1792565] - [drm] drm/nouveau/kms/nv50-: Limit MST BPC to 8 (Lyude Paul) [1792565 1773804] - [drm] drm/nouveau/kms/nv50-: Store the bpc we're using in nv50_head_atom (Lyude Paul) [1792565 1773804] - [drm] drm/nouveau/kms/nv50-: Call outp_atomic_check_view() before handling PBN (Lyude Paul) [1792565 1773804] - [drm] drm/mgag200: Flag all G200 SE A machines as broken wrt (Lyude Paul) [1792565] - [drm] drm/mgag200: Add workaround for HW that does not support 'startadd' (Lyude Paul) [1792565] - [drm] drm/mgag200: Store flags from PCI driver data in device structure (Lyude Paul) [1792565] - [drm] drm/mgag200: Extract device type from flags (Lyude Paul) [1792565] - [dma-buf] dma-buf: Fix memory leak in sync_file_merge() (Lyude Paul) [1792565] - [video] video/hdmi: Fix AVI bar unpack (Lyude Paul) [1792565] - [drm] drm: damage_helper: Fix race checking plane->state->fb (Lyude Paul) [1792565] - [drm] drm/i915: Fix detection for a CMP-V PCH (Lyude Paul) [1792565] - [x86] Mark AMD Ryzen 7 as supported (David Arcari) [1797317] - [x86] Mark AMD Ryzen 5 as supported (David Arcari) [1718051] - [mm] mm/sparse.c: reset section's mem_map when fully deactivated (Pingfan Liu) [1797848] - [drm] drm/mgag200: Don't unpin the current cursor image's buffer (Lyude Paul) [1784290] - [drm] drm/mgag200: Set cursor scanout address to correct BO (Lyude Paul) [1784290] - [drm] drm/mgag200: Pin displayed cursor BO to video memory (Lyude Paul) [1784290] - [tools] Correction to manpage of cpupower (Prarit Bhargava) [1796139] - [fs] cifs: fix soft mounts hanging in the reconnect code (Dave Wysochanski) [1795429] - [net] ipv6_stub: use ip6_dst_lookup_flow instead of ip6_dst_lookup (Sabrina Dubroca) [1774440] - [net] ipv6: add net argument to ip6_dst_lookup_flow (Sabrina Dubroca) [1774440] - [netdrv] can: peak_usb: fix slab info leak (Guillaume Nault) [1787486] {CVE-2019-19534} - [netdrv] vxlan: fix tos value before xmit (Hangbin Liu) [1786075] - [net] netfilter: nft_tproxy: Fix port selector on Big Endian (Phil Sutter) [1781481] - [net] devlink: Change devlink health locking mechanism (Petr Oros) [1785997] - [net] xfrm: Fix memleak on xfrm state destroy (Xin Long) [1780470] - [net] erspan: remove the incorrect mtu limit for erspan (Hangbin Liu) [1783871] - [net] ieee802154: enforce CAP_NET_RAW for raw sockets (Andrea Claudi) [1779495] {CVE-2019-17053} - [net] netfilter: masquerade: don't flush all conntracks if only one address deleted on device (Patrick Talbert) [1772334]- [mm] memcg: Add preemption point in accumulate_memcg_tree() (Waiman Long) [1795049] - [edac] EDAC: skx_common: downgrade message importance on missing PCI device (Aristeu Rozanski) [1775511] - [infiniband] IB/core: Do not notify GID change event of an unregistered device (Kamal Heib) [1787333] - [infiniband] IB/core: Let IB core distribute cache update events (Kamal Heib) [1787333] - [arm64] arm64: kexec: always reset to EL2 if present (Bhupesh Sharma) [1794805] - [tools] perf header: Use last modification time for timestamp (Michael Petlan) [1791258] - [netdrv] net/mlx5e: Enable all available stats for uplink reps (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Create q counters on uplink representors (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Convert rep stats to mlx5e_stats_grp-based infra (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: IPoIB, use separate stats groups (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Convert stats groups array to array of group pointers (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Declare stats groups via macro (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Profile specific stats groups (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Move uplink rep init/cleanup code into own functions (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Add discard counters per priority (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Add port buffer's congestion counters (Alaa Hleihel) [1786321] - [netdrv] net/mlx5: Expose HW capability bits for port buffer per priority congestion counters (Alaa Hleihel) [1786321] - [netdrv] qede: Fix multicast mac configuration (Manish Chopra) [1784894] - [thunderbolt] thunderbolt: Drop unnecessary read when writing LC command in Ice Lake (Jarod Wilson) [1784568] - [thunderbolt] thunderbolt: Fix lockdep circular locking depedency warning (Jarod Wilson) [1784568] - [thunderbolt] thunderbolt: Read DP IN adapter first two dwords in one go (Jarod Wilson) [1784568]- [pci] PCI/PM: Move pci_dev_wait() definition earlier (Myron Stowe) [1794266] - [pci] PCI/PM: Add missing link delays required by the PCIe spec (Myron Stowe) [1794266] - [pci] PCI/PM: Add pcie_wait_for_link_delay() (Myron Stowe) [1794266] - [pci] PCI/PM: Return error when changing power state from D3cold (Myron Stowe) [1794266] - [pci] PCI/PM: Decode D3cold power state correctly (Myron Stowe) [1794266] - [pci] PCI/PM: Fold __pci_complete_power_transition() into its caller (Myron Stowe) [1794266] - [pci] PCI/PM: Avoid exporting __pci_complete_power_transition() (Myron Stowe) [1794266] - [pci] PCI/PM: Fold __pci_start_power_transition() into its caller (Myron Stowe) [1794266] - [pci] PCI/PM: Use pci_power_up() in pci_set_power_state() (Myron Stowe) [1794266] - [pci] PCI/PM: Move power state update away from pci_power_up() (Myron Stowe) [1794266] - [pci] PCI/PM: Remove unused pci_driver.suspend_late() hook (Myron Stowe) [1794266] - [pci] PCI/PM: Remove unused pci_driver.resume_early() hook (Myron Stowe) [1794266] - [xen] xen-platform: Convert to generic power management (Myron Stowe) [1794266] - [pci] PCI/PM: Simplify pci_set_power_state() (Myron Stowe) [1794266] - [pci] PCI/PM: Expand PM reset messages to mention D3hot (not just D3) (Myron Stowe) [1794266] - [pci] PCI/PM: Apply D2 delay as milliseconds, not microseconds (Myron Stowe) [1794266] - [pci] PCI/PM: Use pci_WARN() to include device information (Myron Stowe) [1794266] - [pci] PCI/PM: Use PCI dev_printk() wrappers for consistency (Myron Stowe) [1794266] - [pci] PCI/PM: Make power management op coding style consistent (Myron Stowe) [1794266] - [pci] PCI/PM: Run resume fixups before disabling wakeup events (Myron Stowe) [1794266] - [pci] PCI/PM: Clear PCIe PME Status even for legacy power management (Myron Stowe) [1794266] - [pci] PCI/PM: Always return devices to D0 when thawing (Myron Stowe) [1794266] - [pci] PCI: PM: Fix pci_power_up() (Myron Stowe) [1794266] - [pci] PCI: Make pcie_downstream_port() available outside of access.c (Myron Stowe) [1794266] - [pci] PCI: Add pci_info_ratelimited() to ratelimit PCI separately (Myron Stowe) [1794266] - [pci] PCI: PM: Simplify bus-level hibernation callbacks (Myron Stowe) [1794266] - [pci] PCI: Do not poll for PME if the device is in D3cold (Myron Stowe) [1794266] - [pci] PCI: PM: Replace pci_dev_keep_suspended() with two functions (Myron Stowe) [1794266] - [pci] PCI: PM: Avoid resuming devices in D3hot during system suspend (Myron Stowe) [1794266] - [pci] PCI: PM: Avoid skipping bus-level PM on platforms without ACPI (Myron Stowe) [1794266] - [pci] treewide: Switch printk users from pf and pF to ps and pS, respectively (Myron Stowe) [1794266] - [sound] ALSA: Use the legacy HDA driver as default for Intel DSP platforms (Jaroslav Kysela) [1793227] - [nvme] nvme: nvme_mpath_init remove multipath check (David Milburn) [1790958] - [mm] mm/page-writeback.c: don't break integrity writeback on ->writepage() error (Christoph von Recklinghausen) [1782117] - [arm64] arm64: Revert support for execute-only user mappings (Jeremy Linton) [1788629] - [powerpc] powerpc/papr_scm: Don't enable direct map for a region by default (Steve Best) [1795706]- [tools] selftests/eeh: Bump EEH wait time to 60s (Steve Best) [1783199] - [tools] tools/kvm_stat: Fix kvm_exit filter name (Gavin Shan) [1780345] - [infiniband] RDMA/bnxt_re: Report more number of completion vectors (Selvin Xavier) [1788037 1753515] - [infiniband] RDMA/bnxt_re: Fix Send Work Entry state check while polling completions (Selvin Xavier) [1788037] - [infiniband] RDMA/bnxt_re: Fix missing le16_to_cpu (Selvin Xavier) [1788037] - [infiniband] RDMA/bnxt_re: Avoid freeing MR resources if dereg fails (Selvin Xavier) [1788037 1737147] - [infiniband] RDMA/bnxt_re: Fix stat push into dma buffer on gen p5 devices (Selvin Xavier) [1788037 1771855] - [infiniband] RDMA/bnxt_re: Fix chip number validation Broadcom's Gen P5 series (Selvin Xavier) [1788037 1783943] - [netdrv] net/mlx5e: Clear VF config when switching modes (mohamad meib) [1787276] - [base] drivers/base/memory.c: cache memory blocks in xarray to accelerate lookup fixup (David Hildenbrand) [1789900] - [base] drivers/base/memory.c: cache memory blocks in xarray to accelerate lookup (David Hildenbrand) [1789900] - [base] drivers/base/memory.c: drop the mem_sysfs_mutex (David Hildenbrand) [1789900] - [base] driver/base/memory.c: validate memory block size early (David Hildenbrand) [1789900] - [fs] block: Don't revalidate bdev of hidden gendisk (David Milburn) [1779342] - [scsi] scsi: virtio_scsi: unplug LUNs when events missed (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: implement request batching (Maxim Levitsky) [1614188] - [scsi] scsi: core: fix dh and multipathing for SCSI hosts without request batching (Maxim Levitsky) [1614188] - [scsi] scsi: core: fix missing .cleanup_rq for SCSI hosts without request batching (Maxim Levitsky) [1614188] - [scsi] scsi: core: add support for request batching (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: Use struct_size() helper (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: remove unused 'affinity_hint_set' (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: don't send sc payload with tmfs (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: Remove per-target data because it is no longer used (Maxim Levitsky) [1614188] - [powerpc] powerpc/pseries/lparcfg: Fix display of Maximum Memory (Steve Best) [1795622] - [powerpc] powernv: Don't reprogram SLW image on every KVM guest entry/exit (Laurent Vivier) [1751078] - [x86] Mark certain versions of Comet Lake as supported (David Arcari) [1794198] - [s390] s390/dasd: Disable Thin Provisioning to prevent data loss (Philipp Rudo) [1793461]- [x86] kvm: x86/mmu: Take slots_lock when using kvm_mmu_zap_all_fast() (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: x86: disable shattered huge page recovery for PREEMPT_RT (Paolo Bonzini) [1690344] {CVE-2018-12207} - [documentation] documentation: Add ITLB_MULTIHIT documentation (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: x86: mmu: Recovery of shattered NX large pages (Paolo Bonzini) [1690344] {CVE-2018-12207} - [virt] kvm: Add helper function for creating VM worker threads (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: mmu: ITLB_MULTIHIT mitigation (Paolo Bonzini) [1690344] {CVE-2018-12207} - [kernel] cpu/speculation: Uninline and export CPU mitigations helpers (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] cpu: Add Tremont to the cpu vulnerability whitelist (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] bugs: Add ITLB_MULTIHIT bug infrastructure (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: vmx, svm: always run with EFER.NXE=1 when shadow paging is active (Paolo Bonzini) [1690344] {CVE-2018-12207} - [crypto] crypto: hmac - fix memory leak in hmac_init_tfm() (Herbert Xu) [1775858] - [crypto] crypto: hash - fix incorrect HASH_MAX_DESCSIZE (Herbert Xu) [1775858] - [nvme] nvme: Translate more status codes to blk_status_t (Gopal Tiwari) [1781537] - [include] nvme: resync include/linux/nvme.h with nvmecli (Gopal Tiwari) [1781537] - [netdrv] hv_netvsc: Fix memory leak when removing rndis device (Mohammed Gamal) [1733007] - [fs] cifs: Fix memory allocation in __smb2_handle_cancelled_cmd() (Dave Wysochanski) [1793182] - [tools] perf c2c: Fix report with offline cpus (Michael Petlan) [1744903] - [kernel] locking/rwsem: Fix kernel crash when spinning on RWSEM_OWNER_UNKNOWN (Waiman Long) [1793028] - [mm] mm/memory_hotplug: don't free usage map when removing a re-added early section (Pingfan Liu) [1787269] - [netdrv] iavf: remove current MAC address filter on VF reset (Stefan Assmann) [1735725 1738738] - [dma] dma-mapping: fix handling of dma-ranges for reserved memory (again) (Jerry Snitselaar) [1784691]- [fs] pnfs/filelayout: enable LAYOUTGET on OPEN (Steve Dickson) [1756140] - [fs] NFSD fixing possible null pointer derefering in copy offload (Benjamin Coddington) [1763220] - [fs] nfsd: Ensure CLONE persists data and metadata changes to the target file (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix backchannel latency metrics (Benjamin Coddington) [1763220] - [fs] NFSv4.x: Drop the slot if nfs4_delegreturn_prepare waits for layoutreturn (Benjamin Coddington) [1763220] - [fs] NFSv4.x: Handle bad/dead sessions correctly in nfs41_sequence_process() (Benjamin Coddington) [1763220] - [fs] NFS: Fix an RCU lock leak in nfs4_refresh_delegation_stateid() (Benjamin Coddington) [1763220] - [fs] NFSv4: Don't allow a cached open with a revoked delegation (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix svcauth_gss_proxy_init() (Benjamin Coddington) [1763220] - [net] SUNRPC: The TCP back channel mustn't disappear while requests are outstanding (Benjamin Coddington) [1763220] - [net] xprtrdma: Close window between waking RPC senders and posting Receives (Benjamin Coddington) [1763220] - [net] xprtrdma: Connection becomes unstable after a reconnect (Benjamin Coddington) [1763220] - [net] xprtrdma: Add unique trace points for posting Local Invalidate WRs (Benjamin Coddington) [1763220] - [net] sunrpc: fix crash when cache_head become valid before update (Benjamin Coddington) [1763220] - [fs] nfsd4: fix up replay_matches_cache() (Benjamin Coddington) [1763220] - [fs] NFSv4: Fix leak of clp->cl_acceptor string (Benjamin Coddington) [1763220] - [fs] pNFS: Ensure we do clear the return-on-close layout stateid on fatal errors (Benjamin Coddington) [1763220] - [fs] NFS: Fix O_DIRECT accounting of number of bytes read/written (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix another issue with MIC buffer space (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix buffer handling of GSS MIC without slack (Benjamin Coddington) [1763220] - [fs] Revert "NFSv4/flexfiles: Abort I/O early if the layout segment was invalidated" (Benjamin Coddington) [1763220] - [net] SUNRPC: Don't handle errors if the bind/connect succeeded (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix congestion window race with disconnect (Benjamin Coddington) [1763220] - [net] SUNRPC: Don't try to parse incomplete RPC messages (Benjamin Coddington) [1763220] - [net] SUNRPC: Don't receive TCP data into a request buffer that has been reset (Benjamin Coddington) [1763220] - [net] SUNRPC: Dequeue the request from the receive queue while we're re-encoding (Benjamin Coddington) [1763220] - [net] SUNRPC: Handle connection breakages correctly in call_status() (Benjamin Coddington) [1763220] - [net] xprtrdma: Toggle XPRT_CONGESTED in xprtrdma's slot methods (Benjamin Coddington) [1763220] - [fs] NFS: Ensure O_DIRECT reports an error if the bytes read/written is 0 (Benjamin Coddington) [1763220] - [fs] NFSv4/pnfs: Fix a page lock leak in nfs_pageio_resend() (Benjamin Coddington) [1763220] - [fs] NFS: Fix regression whereby fscache errors are appearing on 'nofsc' mounts (Benjamin Coddington) [1763220] - [fs] NFSv4: Fix a potential sleep while atomic in nfs4_do_reclaim() (Benjamin Coddington) [1763220] - [fs] NFSv4.1: Only reap expired delegations (Benjamin Coddington) [1763220] - [fs] NFSv4.1: Fix open stateid recovery (Benjamin Coddington) [1763220] - [fs] NFSv4: Fix a credential refcount leak in nfs41_check_delegation_stateid (Benjamin Coddington) [1763220] - [fs] NFSv4: Handle the special Linux file open access mode (Benjamin Coddington) [1763220] - [fs] nfsd: Fix overflow causing non-working mounts on 1 TB machines (Benjamin Coddington) [1763220] - [md] md: make sure desc_nr less than MD_SB_DISKS (Nigel Croxon) [1769057] - [md] md: raid1: check rdev before reference in raid1_sync_request func (Nigel Croxon) [1769057] - [md] md/raid10: prevent access of uninitialized resync_pages offset (Nigel Croxon) [1769057] - [md] md: avoid invalid memory access for array sb->dev_roles (Nigel Croxon) [1769057] - [md] md/raid1: avoid soft lockup under high load (Nigel Croxon) [1769057] - [md] md: no longer compare spare disk superblock events in super_load (Nigel Croxon) [1769057] - [md] md: improve handling of bio with REQ_PREFLUSH in md_flush_request() (Nigel Croxon) [1769057] - [md] md/bitmap: avoid race window between md_bitmap_resize and bitmap_file_clear_bit (Nigel Croxon) [1769057] - [md] md/raid0: Fix an error message in raid0_make_request() (Nigel Croxon) [1769057] - [md] md/raid0: fix warning message for parameter default_layout (Nigel Croxon) [1769057] - [netdrv] net/mlx5: DR, Init lists that are used in rule's member (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, No need for atomic refcount for internal SW steering resources (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Create multiple destination action from dr_create_fte (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Add support for multiple destination table action (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Align dest FT action creation to API (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Pass table flags at creation to lower layer (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Create multi-destination table for SW-steering use (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Create FTE entry in the FW from SW-steering (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Use attributes struct for FW flow table creation (Alaa Hleihel) [1775986] - [drm] drm/amd/display: fix struct init in update_bounding_box (Don Dutile) [1784621] - [tools] perf/x86/pmu-events: Fix Kernel_Utilization metric (Michael Petlan) [1788434] - [tools] perf vendor events intel: Update all the Intel JSON metrics from TMAM 3.6 (Michael Petlan) [1788434] - [tools] perf vendor events intel: Update CascadelakeX events to v1.05 (Michael Petlan) [1788434] - [tools] cpupower: mperf_monitor: Update cpupower to use the RDPRU instruction (Janakarajan Natarajan) [1766357] - [tools] cpupower: mperf_monitor: Introduce per_cpu_schedule flag (Janakarajan Natarajan) [1766357] - [tools] cpupower: Move needs_root variable into a sub-struct (Janakarajan Natarajan) [1766357] - [mm] coredump: fix race condition between collapse_huge_page() and core dumping (Andrea Arcangeli) [1722986] - [mm] memcg, oom: don't require __GFP_FS when invoking memcg OOM killer (Waiman Long) [1791170] - [uapi] mm: move MAP_SYNC to asm-generic/mman-common.h (Jeff Moyer) [1791539]- [linux] ptr_ring: wrap back ->producer in __ptr_ring_swap_queue() (Lu Lu) [1663784] - [virtio] virtio-balloon: fix managed page counts when migrating pages between zones (David Hildenbrand) [1689800] - [infiniband] IB/mlx4: Follow mirror sequence of device add during device removal (mohamad meib) [1786042] - [netdrv] gve: Fix the queue page list allocated pages count (Patricio Noyola) [1789114] - [netdrv] gve: fix dma sync bug where not all pages synced (David Awogbemila) [1790957] - [netdrv] gve: Fixes DMA synchronization (David Awogbemila) [1789027] - [net] SUNRPC: Ignore queue transmission errors on successful transmission (Benjamin Coddington) [1769367] - [net] Revert "SUNRPC: Micro-optimise when the task is known not to be sleeping" (Benjamin Coddington) [1769367] - [net] SUNRPC: Fix up calculation of client message length (Benjamin Coddington) [1769367] - [net] Merge tag 'nfs-rdma-for-5.1-1' of git://git.linux-nfs.org/projects/anna/linux-nfs (Benjamin Coddington) [1769367] - [char] tpm: Revert "tpm_tis_core: Turn on the TPM before probing IRQ's" (Jerry Snitselaar) [1789088] - [char] tpm: Revert "tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for interrupts" (Jerry Snitselaar) [1789088] - [tools] perf jvmti: Link against tools/lib/ctype.h to have weak strlcpy() (Michael Petlan) [1786048] - [tools] perf jvmti: Link against tools/lib/string.o to have weak strlcpy() (Michael Petlan) [1786048] - [kernel] kprobes: Show address of kprobes if kallsyms does (Michael Petlan) [1747099] - [kernel] genirq/debugfs: Reset domain debugfs_file on removal of the debugfs file (Mohammed Gamal) [1782640] - [powerpc] powerpc: Fix 32-bit KVM-PR lockup and host crash with MacOS guest (Steve Best) [1789594]- [platform] x86: intel_pmc_core: Add Comet Lake (CML) platform support to intel_pmc_core driver (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Fix the SoC naming inconsistency (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core_pltdrv: Module removal warning fix (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Do not ioremap RAM (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Remove dev_err() usage after platform_get_irq() (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Add ICL-NNPI support to PMC Core (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Attach using APCI HID "INT33A1" (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: transform Pkg C-state residency from TSC ticks into microseconds (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc: no need to check return value of debugfs_create functions (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Allow to dump debug registers on S0ix failure (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Convert to a platform_driver (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Don't map non-used optional resources (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Apply same width for offset definitions (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Use BIT() macro (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Mark local function static (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: adding error handling (Lenny Szubowicz) [1773793] - [mm] memory_hotplug: cleanup __remove_pages() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: drop local variables in shrink_zone_span() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: don't check for "all holes" in shrink_zone_span() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: we always have a zone in find_(smallest|biggest)_section_pfn (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: poison memmap in remove_pfn_range_from_zone() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: shrink zones when offlining memory (Christoph von Recklinghausen) [1766491] - [mm] memmap_init: update variable name in memmap_init_zone (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: don't access uninitialized memmaps in shrink_zone_span() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: fix try_offline_node() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: fix updating the node span (Christoph von Recklinghausen) [1766491] - [mm] hugetlbfs: don't access uninitialized memmaps in pfn_range_valid_gigantic() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: don't access uninitialized memmaps in shrink_pgdat_span() (Christoph von Recklinghausen) [1766491] - [mm] page_owner: don't access uninitialized memmaps when reading /proc/pagetypeinfo (Christoph von Recklinghausen) [1766491] - [mm] memory-failure.c: don't access uninitialized memmaps in memory_failure() (Christoph von Recklinghausen) [1766491] - [fs] proc/page.c: don't access uninitialized memmaps in fs/proc/page.c (Christoph von Recklinghausen) [1766491] - [base] base/memory.c: don't access uninitialized memmaps in soft_offline_page_store() (Christoph von Recklinghausen) [1766491] - [base] base/node.c: simplify unregister_memory_block_under_nodes() (Christoph von Recklinghausen) [1766491] - [kernel] /proc/kpagecount: return 0 for special pages that are never mapped (Christoph von Recklinghausen) [1766491] - [netdrv] fm10k: fix fm10k_get_fault_pf to read correct address (Neil Horman) [1721716] - [netdrv] fm10k: convert NON_Q_VECTORS(hw) into NON_Q_VECTORS (Neil Horman) [1721716] - [netdrv] fm10k: mark unused parameters with __always_unused (Neil Horman) [1721716] - [netdrv] fm10k: cast page_addr to u8 * when incrementing it (Neil Horman) [1721716] - [netdrv] fm10k: explicitly return 0 on success path in function (Neil Horman) [1721716] - [netdrv] fm10k: remove needless initialization of size local variable (Neil Horman) [1721716] - [netdrv] fm10k: remove needless assignment of err local variable (Neil Horman) [1721716] - [netdrv] fm10k: remove unnecessary variable initializer (Neil Horman) [1721716] - [netdrv] fm10k: reduce scope of the ring variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the result local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the local msg variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the local i variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the err variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the tx_buffer variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the q_idx local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of local err variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of qv local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce scope of *p local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce scope of the err variable (Neil Horman) [1721716] - [netdrv] fm10k: Use dev_get_drvdata (Neil Horman) [1721716] - [crypto] crypto: qat - Silence smp_processor_id() warning (Neil Horman) [1723573] - [crypto] crypto: qat - use struct_size() helper (Neil Horman) [1723573] - [crypto] crypto: qat - do not offload zero length requests (Neil Horman) [1723573] - [crypto] crypto: qat - return error for block ciphers for invalid requests (Neil Horman) [1723573] - [crypto] crypto: qat - return proper error code in setkey (Neil Horman) [1723573] - [crypto] crypto: qat - fix block size for aes ctr mode (Neil Horman) [1723573] - [crypto] crypto: qat - update iv after encryption or decryption operations (Neil Horman) [1723573] - [crypto] crypto: qat - add check for negative offset in alg precompute function (Neil Horman) [1723573] - [crypto] crypto: qat - remove spin_lock in qat_ablkcipher_setkey (Neil Horman) [1723573] - [crypto] treewide: Add SPDX license identifier - Makefile/Kconfig (Neil Horman) [1723573] - [crypto] crypto: shash - remove shash_desc::flags (Neil Horman) [1723573] - [crypto] crypto: rsa - unimplement sign/verify for raw RSA backends (Neil Horman) [1723573] - [hv] Revert "hv: vmbus: Implement suspend/resume for VSC drivers for hibernation" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Ignore the offers when resuming from hibernation" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Suspend/resume the vmbus itself for hibernation" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Clean up hv_sock channels by force upon suspend" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Suspend after cleaning up hv_sock and sub channels" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Resume after fixing up old primary channels" (Mohammed Gamal) [1788082] - [hv] Revert "vmbus: Fix harmless building warnings without CONFIG_PM_SLEEP" (Mohammed Gamal) [1788082] - [x86] kvm: vmx: Introduce handle_unexpected_vmexit and handle WAITPKG vmexit (Paul Lai) [1494707] - [x86] kvm: vmx: Emulate MSR IA32_UMWAIT_CONTROL (Paul Lai) [1494707] - [x86] kvm: x86: Add support for user wait instructions (Paul Lai) [1494707] - [tools] tools arch x86: Update tools's copy of cpufeatures.h (Paul Lai) [1494707] - [kvm] KVM: x86: expose AVX512_BF16 feature to guest (Paul Lai) [1642539] - [x86] x86/cpufeatures: Enumerate the new AVX512 BFLOAT16 instructions (Paul Lai) [1642539] - [block] rbd: silence bogus uninitialized warning in rbd_object_map_update_finish() (Jeff Layton) [1777961] - [fs] ceph: increment/decrement dio counter on async requests (Jeff Layton) [1777961] - [fs] ceph: take the inode lock before acquiring cap refs (Jeff Layton) [1777961] - [scsi] scsi: lpfc: fix build failure with DEBUGFS disabled (Dick Kennedy) [1784863] - [scsi] Revert "storvsc: setup 1:1 mapping between hardware queue and CPU queue" (Cathy Avery) [1787594] - [tools] perf session: Return error code for perf_session__new() function on failure (Michael Petlan) [1754995] - [tools] perf header: Fix false warning when there are no duplicate cache entries (Michael Petlan) [1776499] - [firmware] efi/memreserve: Register reservations as 'reserved' in /proc/iomem (Bhupesh Sharma) [1772730] - [firmware] efi/memreserve: deal with memreserve entries in unmapped memory (Bhupesh Sharma) [1772730] - [powerpc] powerpc/powernv: Avoid re-registration of imc debugfs directory (Diego Domingos) [1781098] - [powerpc] powerpc/powernv: Return for invalid IMC domain (Diego Domingos) [1781098]- [tools] perf tools: Allow to link with libbpf dynamicaly (Michael Petlan) [1781570] - [tools] perf probe: Fix spelling mistake "addrees" -> "address" (Michael Petlan) [1760227] - [tools] perf probe: Trace a magic number if variable is not found (Michael Petlan) [1760227] - [tools] perf probe: Support DW_AT_const_value constant value (Michael Petlan) [1760227] - [tools] perf probe: Support multiprobe event (Michael Petlan) [1760227] - [tools] perf probe: Generate event name with line number (Michael Petlan) [1760227] - [tools] perf probe: Do not show non representive lines by perf-probe -L (Michael Petlan) [1760227] - [tools] perf probe: Verify given line is a representive line (Michael Petlan) [1760227] - [tools] perf probe: Show correct statement line number by perf probe -l (Michael Petlan) [1760227] - [tools] perf probe: Skip overlapped location on searching variables (Michael Petlan) [1760227] - [tools] perf probe: Fix to show calling lines of inlined functions (Michael Petlan) [1760227] - [tools] perf probe: Filter out instances except for inlined subroutine and subprogram (Michael Petlan) [1760227] - [tools] perf probe: Skip end-of-sequence and non statement lines (Michael Petlan) [1760227] - [tools] perf probe: Return a better scope DIE if there is no best scope (Michael Petlan) [1760227] - [tools] perf probe: Fix to show ranges of variables in functions without entry_pc (Michael Petlan) [1760227] - [tools] perf probe: Fix to show inlined function callsite without entry_pc (Michael Petlan) [1760227] - [tools] perf probe: Fix to list probe event with correct line number (Michael Petlan) [1760227] - [tools] perf probe: Fix to probe an inline function which has no entry pc (Michael Petlan) [1760227] - [tools] perf probe: Fix to probe a function which has no entry pc (Michael Petlan) [1760227] - [tools] perf probe: Fix wrong address verification (Michael Petlan) [1760227] - [tools] perf probe: Fix to show function entry line as probe-able (Michael Petlan) [1760227] - [tools] perf probe: Walk function lines in lexical blocks (Michael Petlan) [1760227] - [tools] perf probe: Fix to find range-only function instance (Michael Petlan) [1760227] - [scsi] qla2xxx: Fix incorrect SFUB length used for Secure Flash Update MB Cmd (Himanshu Madhani) [1782598] - [scsi] qla2xxx: Added support for MPI and PEP regions for ISP28XX (Himanshu Madhani) [1782598] - [scsi] qla2xxx: Correctly retrieve and interpret active flash region (Himanshu Madhani) [1782598] - [nvme] nvme: Add quirk for LiteON CL1 devices running FW 22301111 (Perry Yuan) [1769179] - [nvme] nvme-pci: Save PCI state before putting drive into deepest state (Perry Yuan) [1769180] - [infiniband] rdma/cxgb4: Fix spelling mistake "immedate" -> "immediate" (Vishal Kulkarni) [1725823] - [infiniband] rdma/cxgb4: Fix null pointer dereference on alloc_skb failure (Vishal Kulkarni) [1725823] - [infiniband] iw_cxgb4: Fix qpid leak (Vishal Kulkarni) [1725823] - [netdrv] net/mlx5e: Use correct enum to determine uplink port (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix concurrency issues between config flow and XSK (mohamad meib) [1786113] - [infiniband] IB/mlx5: Fix steering rule of drop and count (mohamad meib) [1786113] - [netdrv] net/mlx5e: ethtool, Fix analysis of speed setting (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix translation of link mode into speed (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix free peer_flow when refcount is 0 (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix freeing flow with kfree() and not kvfree() (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix SFF 8472 eeprom length (mohamad meib) [1786113] - [netdrv] net/mlx5e: Query global pause state before setting prio2buffer (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix TXQ indices to be sequential (mohamad meib) [1786113] - [infiniband] RDMA/mlx5: Fix a race with mlx5_ib_update_xlt on an implicit MR (mohamad meib) [1786113] - [netdrv] ath10k: Fix a NULL-ptr-deref bug in ath10k_usb_alloc_urb_from_pipe (Jarod Wilson) [1783853] {CVE-2019-15099} - [netdrv] revert "[netdrv] ice: mark driver as tech-preview" (Jonathan Toppins) [1783062] - [netdrv] ibmvnic: Fix typo in retry check (Steve Best) [1783775] - [netdrv] ibmveth: Detect unsupported packets before sending to the hypervisor (Steve Best) [1784904] - [netdrv] igc: add additional delay during phy hw reset (David Arcari) [1782824] - [net] bridge: fix regression in br_mdb_fill_info() (Petr Oros) [1783888] - [net] bpf: Emit audit messages upon successful prog load and unload (Jiri Olsa) [1781266] - [fs] fuse: fix leak of fuse_io_priv (Miklos Szeredi) [1777009] - [fs] virtiofs: Check contents of options string (Vivek Goyal) [1783426] - [fs] exec: Fix mem leak in kernel_read_file (Eric Sandeen) [1683731] {CVE-2019-8980} - [lib] sbitmap: only queue kyber's wait callback if not already active (Ming Lei) [1784544] - [fs] CIFS: Fix NULL-pointer dereference in smb2_push_mandatory_locks (Dave Wysochanski) [1788202] - [kernel] ftrace: Check for successful allocation of hash (Desnes Augusto Nunes do Rosario) [1719414] - [kernel] ftrace: Check for empty hash and comment the race with registering probes (Desnes Augusto Nunes do Rosario) [1719414] - [kernel] ftrace: Fix NULL pointer dereference in t_probe_next() (Desnes Augusto Nunes do Rosario) [1719414] - [iommu] vt-d: Allocate reserved region for ISA with correct permission (Jerry Snitselaar) [1778041] - [iommu] set group default domain before creating direct mappings (Jerry Snitselaar) [1778041] - [iommu] vt-d: Fix dmar pte read access not set error (Jerry Snitselaar) [1778041] - [iommu] vt-d: Set ISA bridge reserved region as relaxable (Jerry Snitselaar) [1778041] - [iommu] fix KASAN use-after-free in iommu_insert_resv_region (Auger Eric) [1777014] - [platform] platform/x86: dell-laptop: fix rfkill functionality (Jarod Wilson) [1725878] - [mm] mm/hugetlb: defer freeing of huge pages if in non-task context (Waiman Long) [1780015] - [mm] powerpc/book3s64/hash: Use secondary hash for bolted mapping if the primary is full (Steve Best) [1783159] - [mm] powerpc/pseries: Don't fail hash page table insert for bolted mapping (Steve Best) [1783159] - [powerpc] powerpc/pseries: Don't opencode HPTE_V_BOLTED (Steve Best) [1783159] - [powerpc] powerpc/perf: Disable trace_imc pmu (Steve Best) [1785573] - [powerpc] powerpc/spinlocks: Include correct header for static key (Phil Auld) [1767529] - [powerpc] powerpc/shared: Use static key to detect shared processor (Phil Auld) [1767529] - [powerpc] powerpc/vcpu: Assume dedicated processors as non-preempt (Phil Auld) [1767529] - [arm64] arm64: compat: Workaround Neoverse-N1 #1542419 for compat user-space (Jeremy Linton) [1757828] - [arm64] arm64: Fake the IminLine size on systems affected by Neoverse-N1 #1542419 (Jeremy Linton) [1757828] - [arm64] arm64: errata: Hide CTR_EL0.DIC on systems affected by Neoverse-N1 #1542419 (Jeremy Linton) [1757828] - [arm64] arm64: Handle erratum 1418040 as a superset of erratum 1188873 (Jeremy Linton) [1757828] - [arm64] arm64: errata: Add workaround for Cortex-A76 erratum #1463225 (Jeremy Linton) [1757828] - [arm64] arm64: Kconfig: Tidy up errata workaround help text (Jeremy Linton) [1757828] - [arm64] arm64: Apply ARM64_ERRATUM_1188873 to Neoverse-N1 (Jeremy Linton) [1757828] - [arm64] arm64: Add part number for Neoverse N1 (Jeremy Linton) [1757828] - [arm64] arm64: Make ARM64_ERRATUM_1188873 depend on COMPAT (Jeremy Linton) [1757828] - [clocksource] arm64: Restrict ARM64_ERRATUM_1188873 mitigation to AArch32 (Jeremy Linton) [1757828] - [arm64] arm64: arch_timer: avoid unused function warning (Jeremy Linton) [1757828] - [arm64] arm64: Add workaround for Cortex-A76 erratum 1286807 (Jeremy Linton) [1757828]- [kernel] audit: remove redundant condition check in kauditd_thread() (Richard Guy Briggs) [1716002] - [kernel] audit: Report suspicious O_CREAT usage (Richard Guy Briggs) [1716002] - [fs] namei: allow restricted O_CREAT of FIFOs and regular files (Richard Guy Briggs) [1716002] - [kernel] audit_get_nd(): don't unlock parent too early (Richard Guy Briggs) [1716002] - [fs] namei.c: keep track of nd->root refcount status (Richard Guy Briggs) [1716002] - [fs] namei.c: new helper - legitimize_root() (Richard Guy Briggs) [1716002] - [kernel] kill the last users of user_{path, lpath, path_dir}() (Richard Guy Briggs) [1716002] - [kernel] namei.h: get the comments on LOOKUP_... in sync with reality (Richard Guy Briggs) [1716002] - [kernel] kill LOOKUP_NO_EVAL, don't bother including namei.h from audit.h (Richard Guy Briggs) [1716002] - [kernel] audit_inode(): switch to passing AUDIT_INODE_.. (Richard Guy Briggs) [1716002] - [fs] filename_mountpoint(): make LOOKUP_NO_EVAL unconditional there (Richard Guy Briggs) [1716002] - [fs] filename_lookup(): audit_inode() argument is always 0 (Richard Guy Briggs) [1716002] - [kernel] audit: remove the BUG() calls in the audit rule comparison functions (Richard Guy Briggs) [1716002] - [kernel] audit: enforce op for string fields (Richard Guy Briggs) [1716002] - [kernel] audit: deliver signal_info regarless of syscall (Richard Guy Briggs) [1716002] - [fs] fsnotify: fix unlink performance regression (Richard Guy Briggs) [1716002] - [kernel] audit_compare_dname_path(): switch to const struct qstr * (Richard Guy Briggs) [1716002] - [kernel] audit_update_watch(): switch to const struct qstr * (Richard Guy Briggs) [1716002] - [fs] inotify_handle_event(): don't bother with strlen() (Richard Guy Briggs) [1716002] - [kernel] fsnotify: switch send_to_group() and ->handle_event to const struct qstr * (Richard Guy Briggs) [1716002] - [kernel] fsnotify(): switch to passing const struct qstr * for file_name (Richard Guy Briggs) [1716002] - [kernel] switch fsnotify_move() to passing const struct qstr * for old_name (Richard Guy Briggs) [1716002] - [fs] ovl_lookup_real_one(): don't bother with strlen() (Richard Guy Briggs) [1716002] - [kernel] audit: fix a memory leak bug (Richard Guy Briggs) [1716002] - [kernel] audit: purge unnecessary list_empty calls (Richard Guy Briggs) [1716002] - [security] audit: link integrity evm_write_xattrs record to syscall event (Richard Guy Briggs) [1716002] - [csky] syscall_get_arch: add "struct task_struct *" argument (Richard Guy Briggs) [1716002] - [kernel] audit: Make audit_log_cap and audit_copy_inode static (Richard Guy Briggs) [1716002] - [kernel] audit: connect LOGIN record to its syscall record (Richard Guy Briggs) [1716002] - [kernel] audit: fix a memleak caused by auditing load module (Richard Guy Briggs) [1716002] - [kernel] fanotify: check FS_ISDIR flag instead of d_is_dir() (Richard Guy Briggs) [1716002] - [kernel] fsnotify: report FS_ISDIR flag with MOVE_SELF and DELETE_SELF events (Richard Guy Briggs) [1716002] - [kernel] fsnotify: annotate directory entry modification events (Richard Guy Briggs) [1716002] - [kernel] audit: mark expected switch fall-through (Richard Guy Briggs) [1716002] - [kernel] audit: hide auditsc_get_stamp and audit_serial prototypes (Richard Guy Briggs) [1716002] - [tty] audit: join tty records to their syscall (Richard Guy Briggs) [1716002] - [kernel] audit: remove audit_context when CONFIG_ AUDIT and not AUDITSYSCALL (Richard Guy Briggs) [1716002] - [kernel] audit: remove unused actx param from audit_rule_match (Richard Guy Briggs) [1716002] - [kernel] audit: ignore fcaps on umount (Richard Guy Briggs) [1716002] - [kernel] audit: clean up AUDITSYSCALL prototypes and stubs (Richard Guy Briggs) [1716002] - [kernel] audit: more filter PATH records keyed on filesystem magic (Richard Guy Briggs) [1716002] - [kernel] audit: add support for fcaps v3 (Richard Guy Briggs) [1716002] - [kernel] audit: move loginuid and sessionid from CONFIG_AUDITSYSCALL to CONFIG_AUDIT (Richard Guy Briggs) [1716002] - [kernel] audit: add syscall information to CONFIG_CHANGE records (Richard Guy Briggs) [1716002] - [kernel] audit: hand taken context to audit_kill_trees for syscall logging (Richard Guy Briggs) [1716002] - [kernel] audit: give a clue what CONFIG_CHANGE op was involved (Richard Guy Briggs) [1716002] - [kernel] audit: remove duplicated include from audit.c (Richard Guy Briggs) [1716002] - [kernel] audit: shorten PATH cap values when zero (Richard Guy Briggs) [1716002] - [kernel] audit: use current whenever possible (Richard Guy Briggs) [1716002] - [kernel] audit: minimize our use of audit_log_format() (Richard Guy Briggs) [1716002] - [kernel] audit: remove WATCH and TREE config options (Richard Guy Briggs) [1716002] - [kernel] audit: use session_info helper (Richard Guy Briggs) [1716002] - [kernel] audit: localize audit_log_session_info prototype (Richard Guy Briggs) [1716002] - [kernel] audit: Use 'mark' name for fsnotify_mark variables (Richard Guy Briggs) [1716002] - [kernel] audit: Replace chunk attached to mark instead of replacing mark (Richard Guy Briggs) [1716002] - [kernel] audit: Simplify locking around untag_chunk() (Richard Guy Briggs) [1716002] - [kernel] audit: Drop all unused chunk nodes during deletion (Richard Guy Briggs) [1716002] - [kernel] audit: Guarantee forward progress of chunk untagging (Richard Guy Briggs) [1716002] - [kernel] audit: Allocate fsnotify mark independently of chunk (Richard Guy Briggs) [1716002] - [kernel] audit: Provide helper for dropping mark's chunk reference (Richard Guy Briggs) [1716002] - [kernel] audit: Remove pointless check in insert_hash() (Richard Guy Briggs) [1716002] - [kernel] audit: Factor out chunk replacement code (Richard Guy Briggs) [1716002] - [kernel] audit: Make hash table insertion safe against concurrent lookups (Richard Guy Briggs) [1716002] - [kernel] audit: Embed key into chunk (Richard Guy Briggs) [1716002] - [kernel] audit: Fix possible tagging failures (Richard Guy Briggs) [1716002] - [kernel] audit: Fix possible spurious -ENOSPC error (Richard Guy Briggs) [1716002] - [kernel] audit_tree: Remove mark->lock locking (Richard Guy Briggs) [1716002] - [kernel] audit: print empty EXECVE args (Richard Guy Briggs) [1716002] - [security] evm: fix return value check in evm_write_xattrs() (Richard Guy Briggs) [1716002] - [kernel] audit: fix use-after-free in audit_add_watch (Richard Guy Briggs) [1716002] - [kernel] audit: use ktime_get_coarse_real_ts64() for timestamps (Richard Guy Briggs) [1716002] - [kernel] audit: use ktime_get_coarse_ts64() for time access (Richard Guy Briggs) [1716002] - [kernel] audit: simplify audit_enabled check in audit_watch_log_rule_change() (Richard Guy Briggs) [1716002] - [kernel] audit: check audit_enabled in audit_tree_log_remove_rule() (Richard Guy Briggs) [1716002] - [kernel] cred: conditionally declare groups-related functions (Richard Guy Briggs) [1716002] - [kernel] audit: eliminate audit_enabled magic number comparison (Richard Guy Briggs) [1716002] - [kernel] audit: Fix extended comparison of GID/EGID (Richard Guy Briggs) [1716002] - [kernel] audit: tie ANOM_ABEND records to syscall (Richard Guy Briggs) [1716002] - [kernel] audit: tie SECCOMP records to syscall (Richard Guy Briggs) [1716002] - [kernel] audit: allow other filter list types for AUDIT_EXE (Richard Guy Briggs) [1716002] - [documentation] admin guide/pm: Admin guide for intel-speed-select (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Display TRL buckets for just base config level (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Ignore missing config level (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Increment version (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Use core count for base-freq mask (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Support platform with limited Intel(R) Speed Select (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Use Frequency weight for CLOS (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Make CLOS frequency in MHz (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Use mailbox for CLOS_PM_QOS_CONFIG (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Auto mode for CLX (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Correct CLX-N frequency units (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Change display of "avx" to "avx2" (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Extend command set for perf-profile (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Implement base-freq commands on CascadeLake-N (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Implement 'perf-profile info' on CascadeLake-N (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Implement CascadeLake-N help and command functions structures (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Add check for CascadeLake-N models (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Make process_command generic (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Add int argument to command functions (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Refuse to disable core-power when getting used (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Turbo-freq feature auto mode (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Base-freq feature auto mode (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Remove warning for unused result (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix perf-profile command output (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Extend core-power command set (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix some debug prints (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Format get-assoc information (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Allow online/offline based on tdp (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix high priority core mask over count (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Display core count for bucket (Prarit Bhargava) [1766228] - [platform] x86: isst: Allow additional TRL MSRs (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix memory leak (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Output success/failed for command output (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Output human readable CPU list (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Change turbo ratio output to maximum turbo frequency (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Switch output to MHz (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Simplify output for turbo-freq and base-freq (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix cpu-count output (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix help option typo (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix package typo (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix a read overflow in isst_set_tdp_level_msr() (Prarit Bhargava) [1766228] - [platform] x86: isst: Use dev_get_drvdata (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Add .gitignore file (Prarit Bhargava) [1766228] - [tools] tools/power/x86: A tool to validate Intel Speed Select commands (Prarit Bhargava) [1766228] - [platform] x86: isst: Restore state on resume (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select PUNIT MSR interface (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select mailbox interface via MSRs (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select mailbox interface via PCI (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select mmio interface (Prarit Bhargava) [1766228] - [platform] x86: isst: Add IOCTL to Translate Linux logical CPU to PUNIT CPU number (Prarit Bhargava) [1766228] - [platform] x86: isst: Store per CPU information (Prarit Bhargava) [1766228] - [platform] x86: isst: Add common API to register and handle ioctls (Prarit Bhargava) [1766228] - [documentation] platform/x86: isst: Update ioctl-number.txt for Intel Speed Select interface (Prarit Bhargava) [1766228]- [tools] libbpf: Refactor relocation handling (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix call relocation offset calculation bug (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix bpf_object name determination for bpf_object__open_file() (Yauheni Kaliuta) [1772081] - [tools] libbpf: return previous print callback from libbpf_set_print (Yauheni Kaliuta) [1772081] - [tools] libbpf: fix bpf_object__name() to actually return object name (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Make CO-RE reloc test impartial to test_progs flavor (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Add BPF_CORE_READ and BPF_CORE_READ_STR_INTO macro tests (Yauheni Kaliuta) [1772081] - [tools] bpftool: Allow to read btf as raw data (Yauheni Kaliuta) [1772081] - [tools] bpftool: implement "bpftool btf show|list" (Yauheni Kaliuta) [1772081] - [tools] libbpf: add bpf_btf_get_next_id() to cycle through BTF objects (Jiri Olsa) [1772081] - [tools] libbpf: refactor bpf_*_get_next_id() functions (Yauheni Kaliuta) [1772081] - [tools] bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1772081] - [tools] libbpf: attempt to load kernel BTF from sysfs first (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add getter for program size (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add bpf_get_link_xdp_info() function to get more XDP information (Yauheni Kaliuta) [1772081] - [tools] libbpf: Use pr_warn() when printing netlink errors (Yauheni Kaliuta) [1772081] - [tools] libbpf: Propagate EPERM to caller on program load (Yauheni Kaliuta) [1772081] - [tools] libbpf: Unpin auto-pinned maps if loading fails (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add auto-pinning of maps when loading BPF objects (Yauheni Kaliuta) [1772081] - [tools] libbpf: Teach bpf_object__open to guess program types (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add bpf_program__get_{type, expected_attach_type) APIs (Yauheni Kaliuta) [1772081] - [tools] libbpf: Move directory creation into _pin() functions (Yauheni Kaliuta) [1772081] - [tools] libbpf: Store map pin path and status in struct bpf_map (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix error handling in bpf_map__reuse_fd() (Yauheni Kaliuta) [1772081] - [tools] libbpf: Make DECLARE_LIBBPF_OPTS macro strictly a variable declaration (Yauheni Kaliuta) [1772081] - [tools] bpftool: Fix bpftool build by switching to bpf_object__open_file() (Yauheni Kaliuta) [1772081] - [tools] bpf: Rename pr_warning to pr_warn to align with kernel logging (Yauheni Kaliuta) [1772081] - [tools] libbpf: provide more helpful message on uninitialized global var (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Add field existence CO-RE relocs tests (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add support for field existance CO-RE relocation (Yauheni Kaliuta) [1772081] - [tools] libbpf: Update BTF reloc support to latest Clang format (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add BPF_CORE_READ/BPF_CORE_READ_INTO helpers (Yauheni Kaliuta) [1772081] - [tools] libbpf: Refactor bpf_object__open APIs to use common opts (Yauheni Kaliuta) [1772081] - [tools] libbpf: Move bpf_{helpers, helper_defs, endian, tracing}.h into libbpf (Jiri Olsa) [1772081] - [tools] uapi/bpf: fix helper docs (Yauheni Kaliuta) [1772081] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1772081] - [uapi] bpf: fix 'struct pt_reg' typo in documentation (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix BTF-defined map's __type macro handling of arrays (Yauheni Kaliuta) [1772081] - [scripts] bpf: Print an error when known types list needs updating (Yauheni Kaliuta) [1772081] - [scripts] bpf: Emit an #error directive known types list needs updating (Yauheni Kaliuta) [1772081] - [scripts] bpf: Fix xdp_md forward declaration typo (Yauheni Kaliuta) [1772081] - [scripts] bpf: teach bpf_helpers_doc.py to dump BPF helper definitions (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Split off tracing-only helpers into bpf_tracing.h (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: samples/bpf: Split off legacy stuff from bpf_helpers.h (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Undo GCC-specific bpf_helpers.h changes (Yauheni Kaliuta) [1772081] - [tools] libbpf: auto-generate list of BPF helper definitions (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add bpf-gcc support (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: bpf_tcp_gen_syncookie->bpf_helpers (Yauheni Kaliuta) [1772081] - [tools] libbpf: relicense bpf_helpers.h and bpf_endian.h (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: introduce bpf_cpu_to_be64 and bpf_be64_to_cpu (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Adjust CO-RE reloc tests for new bpf_core_read() macro (Yauheni Kaliuta) [1772081] - [tools] bpf: fix core_reloc.c compilation error (Yauheni Kaliuta) [1772081] - [tools] libbpf: add bpf_object__open_{file, mem} w/ extensible opts (Yauheni Kaliuta) [1772081] - [tools] libbpf: make libbpf.map source of truth for libbpf version (Yauheni Kaliuta) [1772081] - [tools] libbpf: stop enforcing kern_version, populate it for users (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs misc tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs ints tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs ptr-as-array tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs modifiers/typedef tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs enum/ptr/func_proto tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs array tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs nesting tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs struct flavors tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs testing setup (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add BPF_CORE_READ relocatable read macro (Yauheni Kaliuta) [1772081] - [tools] libbpf: implement BPF CO-RE offset relocation algorithm (Yauheni Kaliuta) [1772081] - [tools] libbpf: add .BTF.ext offset relocation section loading (Yauheni Kaliuta) [1772081] - [tools] libbpf: convert libbpf code to use new btf helpers (Yauheni Kaliuta) [1772081] - [tools] libbpf: add helpers for working with BTF types (Yauheni Kaliuta) [1772081] - [gpu] drm/i915: Add new CNL PCH ID seen on a CML platform (Lyude Paul) [1771779] - [gpu] drm/amdgpu: add warning for GRBM 1-cycle delay issue in gfx9 (Lyude Paul) [1771779] - [gpu] drm/amdgpu: register gpu instance before fan boost feature enablment (Lyude Paul) [1771779] - [gpu] drm/amd/swsmu: fix smu workload bit map error (Lyude Paul) [1771779] - [gpu] drm/amdgpu: dont schedule jobs while in reset (Lyude Paul) [1771779] - [gpu] drm/i915/userptr: Try to acquire the page lock around set_page_dirty() (Lyude Paul) [1771779] - [gpu] drm/i915/pmu: "Frequency" is reported as accumulated cycles (Lyude Paul) [1771779] - [gpu] drm/i915: Don't oops in dumb_create ioctl if we have no crtcs (Lyude Paul) [1771779] - [gpu] drm/amd/powerplay: issue no PPSMC_MSG_GetCurrPkgPwr on unsupported ASICs (Lyude Paul) [1771779] - [gpu] drm/amdgpu: disable gfxoff on original raven (Lyude Paul) [1771779] - [gpu] drm/amdgpu: disable gfxoff when using register read interface (Lyude Paul) [1771779] - [gpu] revert "drm/i915/ehl: Update MOCS table for EHL" (Lyude Paul) [1771779] - [gpu] drm/i915: update rawclk also on resume (Lyude Paul) [1771779] - [gpu] dc.c:use kzalloc without test (Lyude Paul) [1771779] - [gpu] drm/amd/display: Passive DP->HDMI dongle detection fix (Lyude Paul) [1771779] - [gpu] drm/amd/display: add 50us buffer as WA for pstate switch in active (Lyude Paul) [1771779] - [gpu] drm/amd/display: do not synchronize "drr" displays (Lyude Paul) [1771779] - [gpu] drm/amdgpu: If amdgpu_ib_schedule fails return back the error (Lyude Paul) [1771779] - [gpu] drm/sched: Set error to s_fence if HW job submission failed (Lyude Paul) [1771779] - [gpu] drm/amdgpu/sdma5: do not execute 0-sized IBs (v2) (Lyude Paul) [1771779] - [gpu] drm/radeon: fix si_enable_smc_cac() failed issue (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix error handling in amdgpu_bo_list_create (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix potential VM faults (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Fix SDMA hang when performing VKexample test (Lyude Paul) [1771779] - [gpu] drm/amdgpu/powerplay/vega10: allow undervolting in p7 (Lyude Paul) [1771779] - [gpu] drm/amdgpu/gfx10: update gfx golden settings (Lyude Paul) [1771779] - [gpu] drm/i915: Fix PCH reference clock for FDI on HSW/BDW (Lyude Paul) [1771779] - [gpu] drm/amdgpu/gmc10: properly set BANK_SELECT and FRAGMENT_SIZE (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix memory leak (Lyude Paul) [1771779] - [gpu] drm/amdgpu: user pages array memory leak fix (Lyude Paul) [1771779] - [gpu] drm/amdgpu/uvd7: fix allocation size in enc ring test (v2) (Lyude Paul) [1771779] - [gpu] drm/amdgpu/uvd6: fix allocation size in enc ring test (v2) (Lyude Paul) [1771779] - [gpu] drm/amdgpu/vcn: fix allocation size in enc ring test (Lyude Paul) [1771779] - [gpu] drm/amdgpu/vce: fix allocation size in enc ring test (Lyude Paul) [1771779] - [gpu] drm/i915: Favor last VBT child device with conflicting AUX ch/DDC pin (Lyude Paul) [1771779] - [gpu] drm/i915/userptr: Never allow userptr into the mappable GGTT (Lyude Paul) [1771779] - [gpu] drm/amdgpu/sdma5: fix mask value of POLL_REGMEM packet for pipe sync (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Bail earlier when amdgpu.cik_/si_support is not set to 1 (Lyude Paul) [1771779] - [gpu] drm/ttm: Restore ttm prefaulting (Lyude Paul) [1771779] - [gpu] drm/edid: Add 6 bpc quirk for SDC panel in Lenovo G50 (Lyude Paul) [1771779] - [gpu] drm/amd/display: memory leak (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix multiple memory leaks in acp_hw_init (Lyude Paul) [1771779] - [gpu] drm: Clear the fence pointer when writeback job signaled (Lyude Paul) [1771779] - [gpu] drm: Free the writeback_job when it with an empty fb (Lyude Paul) [1771779] - [gpu] drm/i915: Mark contents as dirty on a write fault (Lyude Paul) [1771779] - [gpu] drm/i915: Whitelist COMMON_SLICE_CHICKEN2 (Lyude Paul) [1771779] - [gpu] drm/i915: Bump skl+ max plane width to 5k for linear/x-tiled (Lyude Paul) [1771779] - [gpu] drm/i915: Perform GGTT restore much earlier during resume (Lyude Paul) [1771779] - [gpu] drm/radeon: Bail earlier when radeon.cik_/si_support=0 is passed (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Check for valid number of registers to read (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Fix KFD-related kernel oops on Hawaii (Lyude Paul) [1771779] - [gpu] drm/i915: to make vgpu ppgtt notificaiton as atomic operation (Lyude Paul) [1771779] - [gpu] drm/i915/gvt: update vgpu workload head pointer correctly (Lyude Paul) [1771779] - [gpu] drm/amd/powerplay: change metrics update period from 1ms to 100ms (Lyude Paul) [1771779] - [gpu] drm/nouveau/kms/nv50-: Don't create MSTMs for eDP connectors (Lyude Paul) [1771779] - [gpu] drm/atomic: Take the atomic toys away from X (Lyude Paul) [1771779] - [gpu] drm/atomic: Reject FLIP_ASYNC unconditionally (Lyude Paul) [1771779] - [gpu] drm/i915/dp: Fix dsc bpp calculations, v5 (Lyude Paul) [1771779] - [dma-buf] sw_sync: Synchronize signal vs syncpt free (Lyude Paul) [1771779] - [gpu] drm/amdgpu/si: fix ASIC tests (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix trigger not generated for freesync (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix MPO HUBP underflow with Scatter Gather (Lyude Paul) [1771779] - [gpu] drm/amd/powerpaly: fix navi series custom peak level value error (Lyude Paul) [1771779] - [gpu] drm/amd/display: support spdif (Lyude Paul) [1771779] - [gpu] drm/nouveau/volt: Fix for some cards having 0 maximum voltage (Lyude Paul) [1771779] - [gpu] drm/nouveau/kms/tu102-: disable input lut when input is already FP16 (Lyude Paul) [1771779] - [gpu] drm/amdgpu/sdma5: fix number of sdma5 trap irq types for navi1x (Lyude Paul) [1771779] - [gpu] drm/amd/display: Register VUPDATE_NO_LOCK interrupts for DCN2 (Lyude Paul) [1771779] - [gpu] drm/amd/display: reprogram VM config when system resume (Lyude Paul) [1771779] - [gpu] drm/amd/display: Fix frames_to_insert math (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix issue where 252-255 values are clipped (Lyude Paul) [1771779] - [gpu] drm: radeon: Fix a possible null-pointer dereference in radeon_connector_set_property() (Lyude Paul) [1771779] - [gpu] revert "drm/radeon: Fix EEH during kexec" (Lyude Paul) [1771779] - [gpu] drm/amd/display: Use proper enum conversion functions (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Fix hard hang for S/G display BOs (Lyude Paul) [1771779] - [gpu] drm/panel: check failure cases in the probe func (Lyude Paul) [1771779] - [gpu] drm/bridge: sii902x: fix missing reference to mclk clock (Lyude Paul) [1771779] - [gpu] drm/tinydrm/kconfig: Select BACKLIGHT_CLASS_DEVICE (Lyude Paul) [1771779] - [video] ssd1307fb: Start page range at page_offset (Lyude Paul) [1771779] - [gpu] drm/amd/display: Copy GSL groups when committing a new context (Lyude Paul) [1771779] - [gpu] drm/amd/display: Clear FEC_READY shadow register if DPCD write fails (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix not calling ppsmu to trigger PME (Lyude Paul) [1771779] - [gpu] drm/amd/display: Power-gate all DSCs at driver init time (Lyude Paul) [1771779] - [gpu] drm/amd/display: add monitor patch to add T7 delay (Lyude Paul) [1771779] - [gpu] drm/panel: simple: fix AUO g185han01 horizontal blanking (Lyude Paul) [1771779] - [gpu] drm/vkms: Avoid assigning 0 for possible_crtc (Lyude Paul) [1771779] - [gpu] drm/bridge: tc358767: Increase AUX transfer length limit (Lyude Paul) [1771779] - [gpu] drm/vkms: Fix crc worker races (Lyude Paul) [1771779] - [gpu] drm/amdgpu/display: fix 64 bit divide (Lyude Paul) [1771779] - [gpu] drm/amd/display: Add missing HBM support and raise Vega20's uclk (Lyude Paul) [1771779] - [gpu] drm/amd/display: dce11.x /dce12 update formula input (Lyude Paul) [1771779] - [gpu] drm/amd/display: Restore backlight brightness after system resume (Lyude Paul) [1771779] - [gpu] drm: fix module name in edid_firmware log message (Lyude Paul) [1771779] - [gpu] drm/amd/powerplay/smu7: enforce minimal VBITimeout (v2) (Lyude Paul) [1771779] - [gpu] drm/amd/display: readd -msse2 to prevent Clang from emitting libcalls to undefined SW FP routines (Lyude Paul) [1771779] - [gpu] drm/amd/display: Don't replace the dc_state for fast updates (Lyude Paul) [1771779] - [gpu] drm/amd/display: Skip determining update type for async updates (Lyude Paul) [1771779] - [gpu] drm/amd/display: Allow cursor async updates for framebuffer swaps (Lyude Paul) [1771779] - [include] sk_buff: fix skb_ext_put() and skb_ext_reset() calls (Ivan Vecera) [1779923] - [net] openvswitch: fix flow command message size (Paolo Abeni) [1776765] - [net] netfilter: nf_tables: add SECMARK support (Phil Sutter) [1715851] - [net] netfilter: nf_tables: add requirements for connsecmark support (Phil Sutter) [1715851] - [wireless] mwifiex: pcie: Fix memory leak in mwifiex_pcie_init_evt_ring (Jarod Wilson) [1781534] {CVE-2019-19057} - [tools] selftests/powerpc: Disable basic EEH selftest (Steve Best) [1782232] - [x86] kvm: x86: Remove a spurious export of a static function (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: vmx: use MSR_IA32_TSX_CTRL to hard-disable TSX on guest that lack it (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: vmx: implement MSR_IA32_TSX_CTRL disable RTM functionality (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: x86: implement MSR_IA32_TSX_CTRL effect on CPUID (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: x86: do not modify masked bits of shared MSRs (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: x86: fix presentation of TSX feature in ARCH_CAPABILITIES (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm/x86: Export MDS_NO=0 to guests when TSX is enabled (Paolo Bonzini) [1779553] {CVE-2019-19338} - [fs] cifs: Close open handle after interrupted close (Leif Sahlberg) [1771691] - [fs] cifs: Do not miss cancelled OPEN responses (Leif Sahlberg) [1771691] - [fs] cifs: Fix NULL pointer dereference in mid callback (Leif Sahlberg) [1771691] - [fs] cifs: add a debug macro that prints \\server\share for errors (Leif Sahlberg) [1772630] - [fs] cifs: add new debugging macro cifs_server_dbg (Leif Sahlberg) [1772630]- [netdrv] wireless: fix nl80211 vendor commands (Jarod Wilson) [1776606] - [net] nl80211: fix VENDOR_CMD_RAW_DATA (Jarod Wilson) [1776606] - [netdrv] rt2x00: initialize last_reset (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: don't consider IV len in A-MSDU (Jarod Wilson) [1776606] - [net] mac80211: fix station inactive_time shortly after boot (Jarod Wilson) [1776606] - [net] mac80211: fix ieee80211_txq_setup_flows() failure path (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw api: support new API for scan config cmd (Jarod Wilson) [1776606] - [netdrv] mt76: dma: fix buffer unmap with non-linear skbs (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x2e: disable pcie_aspm by default (Jarod Wilson) [1776606] - [net] nl80211: fix validation of mesh path nexthop (Jarod Wilson) [1776606] - [net] nl80211: Disallow setting of HT for channel 14 (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl_pci: Fix problem of too small skb->len (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: 0x2720 is qu and 0x30DC is not (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: add workaround for power gating in integrated 22000 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: handle iwl_mvm_tvqm_enable_txq() error return (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix all 9460 entries for qnj (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix PCI ID 0x2720 configs that should be soc (Jarod Wilson) [1776606] - [netdrv] rtlwifi: Fix potential overflow on P2P code (Jarod Wilson) [1775223 1776606] {CVE-2019-17666} - [netdrv] iwlwifi: pcie: fix merge damage on making QnJ exclusive (Jarod Wilson) [1776606] - [netdrv] ath10k: fix latency issue for QCA988x (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: change qu with jf devices to use qu configuration (Jarod Wilson) [1776606] - [netdrv] iwlwifi: exclude GEO SAR support for 3168 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix memory leaks in iwl_pcie_ctxt_info_gen3_init (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix memory leak in alloc_sgtable (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix rb_allocator workqueue allocation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix indexing in command dump for new HW (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix race in sync rx queue notification (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: force single phy init (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix ACPI table revision checks (Jarod Wilson) [1776606] - [netdrv] iwlwifi: don't access trans_cfg via cfg (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove input-polldev.h header (Jarod Wilson) [1776606] - [net] mac80211: Don't access sk_queue_head->next directly (Jarod Wilson) [1776606] - [net] mac80211: fix scan when operating on DFS channels in ETSI domains (Jarod Wilson) [1776606] - [net] mac80211: accept deauth frames in IBSS mode (Jarod Wilson) [1776606] - [net] cfg80211: fix a bunch of RCU issues in multi-bssid code (Jarod Wilson) [1776606] - [net] nl80211: fix memory leak in nl80211_get_ftm_responder_stats (Jarod Wilson) [1776606] - [net] cfg80211: wext: avoid copying malformed SSIDs (Jarod Wilson) [1778634 1776606] {CVE-2019-17133} - [net] mac80211: Reject malformed SSID elements (Jarod Wilson) [1776606] - [net] mac80211: keep BHs disabled while calling drv_tx_wake_queue() (Jarod Wilson) [1776606] - [net] mac80211: fix txq null pointer dereference (Jarod Wilson) [1776606] - [net] nl80211: fix null pointer dereference (Jarod Wilson) [1776606] - [net] cfg80211: initialize on-stack chandefs (Jarod Wilson) [1776606] - [net] cfg80211: validate SSID/MBSSID element ordering assumption (Jarod Wilson) [1776606] - [net] nl80211: validate beacon head (Jarod Wilson) [1776606] - [net] cfg80211: Purge frame registrations on iftype change (Jarod Wilson) [1776606] - [net] cfg80211: Do not compare with boolean in nl80211_common_reg_change_event (Jarod Wilson) [1776606] - [net] cfg80211: always shut down on HW rfkill (Jarod Wilson) [1776606] - [net] cfg80211: fix boundary value in ieee80211_frequency_to_channel() (Jarod Wilson) [1776606] - [net] cfg80211: add local BSS receive time to survey information (Jarod Wilson) [1776606] - [net] nl80211: add NL80211_CMD_UPDATE_FT_IES to supported commands (Jarod Wilson) [1776606] - [netdrv] wireless: Fix Kconfig indentation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw: don't send GEO_TX_POWER_LIMIT command to FW version 36 (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix mt7615 firmware path definitions (Jarod Wilson) [1776606] - [netdrv] rtw88: configure firmware after HCI started (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: release tx skbs DMAed when stop (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: extract skbs free routine for trx rings (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix build w/o CONFIG_THERMAL (Jarod Wilson) [1776606] - [netdrv] rtw88: report RX power for each antenna (Jarod Wilson) [1776606] - [netdrv] rtw88: fix wrong rx power calculation (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192de: replace _rtl92d_evm_db_to_percentage with generic version (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: replace _rtl92c_evm_db_to_percentage with generic version (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: replace _rtl92c_evm_db_to_percentage with generic version (Jarod Wilson) [1776606] - [netdrv] rtw88: allows to receive AMSDU in AMPDU (Jarod Wilson) [1776606] - [netdrv] rtw88: add dynamic cck pd mechanism (Jarod Wilson) [1776606] - [netdrv] rtw88: move IQK/DPK into phy_calibration (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: add SW DPK support (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: add FW IQK support (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: Enable interrupt migration (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: update pwr_seq to v13 (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: update PHY parameter to v38 (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: rtl8192ce: rtl8192de: rtl8723ae: rtl8821ae: Remove some unused bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Remove unused SET_XXX and GET_XXX macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Remove unused GET_XXX and SET_XXX macros (Jarod Wilson) [1776606] - [netdrv] brcmsmac: Use DIV_ROUND_CLOSEST directly to make it readable (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: make array static const and remove redundant assignment (Jarod Wilson) [1776606] - [netdrv] brcmfmac: don't realloc wiphy during PCIe reset (Jarod Wilson) [1776606] - [netdrv] brcmfmac: split brcmf_attach() and brcmf_detach() functions (Jarod Wilson) [1776606] - [netdrv] brcmfmac: move "cfg80211_ops" pointer to another struct (Jarod Wilson) [1776606] - [netdrv] ath10k: fix channel info parsing for non tlv target (Jarod Wilson) [1776606] - [netdrv] ath10k: adjust skb length in ath10k_sdio_mbox_rx_packet (Jarod Wilson) [1776606] - [netdrv] ath10k: free beacon buf later in vdev teardown (Jarod Wilson) [1776606] - [net] mac80211: allow drivers to set max MTU (Jarod Wilson) [1776606] - [net] mac80211: ibss: send deauth when expiring inactive STAs (Jarod Wilson) [1776606] - [net] mac80211: don't check if key is NULL in ieee80211_key_link() (Jarod Wilson) [1776606] - [net] mac80211: clear crypto tx tailroom counter upon keys enable (Jarod Wilson) [1776606] - [net] mac80211: remove unnecessary key condition (Jarod Wilson) [1776606] - [net] mac80211: list features in WEP/TKIP disable in better order (Jarod Wilson) [1776606] - [net] mac80211: vht: add support VHT EXT NSS BW in parsing VHT (Jarod Wilson) [1776606] - [netdrv] ath9k: release allocated buffer if timed out (Jarod Wilson) [1778582 1776606] {CVE-2019-19074} - [netdrv] ath9k_htc: release allocated buffer if timed out (Jarod Wilson) [1778572 1776606] {CVE-2019-19073} - [netdrv] ath9k: Remove unneeded variable to store return value (Jarod Wilson) [1776606] - [netdrv] ath10k: add reorder and change PN check logic for mac80211 (Jarod Wilson) [1776606] - [netdrv] ath10k: add mic bytes for pmf management packet (Jarod Wilson) [1776606] - [netdrv] brcmfmac: use *ph to print small buffer (Jarod Wilson) [1776606] - [netdrv] hostap: use *ph to print small buffer (Jarod Wilson) [1776606] - [netdrv] rtlwifi: Fix file release memory leak (Jarod Wilson) [1776606] - [netdrv] rtw88: fix seq_file memory leak (Jarod Wilson) [1776606] - [netdrv] hostap: remove set but not used variable 'copied' in prism2_io_debug_proc_read (Jarod Wilson) [1776606] - [netdrv] brcmfmac: add "reset" debugfs entry for testing reset (Jarod Wilson) [1776606] - [netdrv] brcmfmac: add stub version of brcmf_debugfs_get_devdir() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: remove iwl_fw_cancel_dumps function (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove periodic trigger (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix dump structs doc (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw api: add DRAM buffer allocation command (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove apply point, switch to time point API (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add iwl_tlv_array_len() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: don't log un-decrypted frames (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add support for single antenna diversity (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: handle BAR_FRAME_RELEASE (0xc2) notification (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: drop BA sessions on too many old-SN frames (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add sta_id to WOWLAN_CONFIG_CMD (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add support for suspend-resume flow for new device generation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix warning iwl-trans.h is included more than once (Jarod Wilson) [1776606] - [netdrv] iwlwifi: always access the trans configuration via trans (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pass the iwl_trans instead of cfg to some functions (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add a pointer to the trans_cfg directly in trans (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pass the iwl_config_trans_params when needed (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: set iwl_trans->cfg later in the probe function (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: move some cfg mangling from trans_pcie_alloc to probe (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: use the cfg we passed to iwl_trans_pcie_alloc() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: separate elements from cfg that are needed by trans_alloc (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use regions ops array instead of switch case in dump flow (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: make a single ops struct for paging collect (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: move tx fifo data into fw runtime (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use linked list for dump TLVs during dump creation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: separate cfg and dump flows to different modules (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: look for the first supported channel when add/remove phy ctxt (Jarod Wilson) [1776606] - [netdrv] iwlwifi: allocate bigger nvm data in case of UHB (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove unnecessary IWL_DEVICE_AX200_COMMON definition (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: align wrt log prints to the same format (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove debug flow TLV (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: verify debug TLVs at allocation phase (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use function to check if ini dbg mode is on (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove duplicate FW string definitions (Jarod Wilson) [1776606] - [netdrv] iwlwifi: bump FW API to 50 for 22000 series (Jarod Wilson) [1776606] - [netdrv] iwlwifi: api: fix FTM struct documentation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: support per-platform antenna gain (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove check for lq_sta in __iwl_mvm_rs_tx_status() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: simplify the channel switch flow for newer firmware (Jarod Wilson) [1776606] - [netdrv] iwlwifi: stop passing bogus gfp flags arguments to dma_alloc_coherent (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove periphery phy and aux regions handling (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use linked list to store debug TLVs (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: maintain buffer allocations from trans instead of TLVs buffer (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: add debug periphery registers to 9000 device family (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove unused regdb_ptrs allocation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: align dbg tlv functions names to a single format (Jarod Wilson) [1776606] - [netdrv] iwlwifi: scan: don't pass large argument by value (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove pm_runtime completely (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove the d0i3 related module parameters (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: remove some more d0i3 code from the transport (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: remove the refs / unrefs from the transport (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove the opmode's d0i3 handlers (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove runtime_pm_mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: Set w-pointer upon resume according to SN (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: use FW thermal monitoring regardless of CONFIG_THERMAL (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: name magic numbers with enum (Jarod Wilson) [1776606] - [netdrv] iwlwifi: scan: add support for new scan request command version (Jarod Wilson) [1776606] - [netdrv] iwlwifi: LTR updates (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove the code under IWLWIFI_PCIE_RTPM (Jarod Wilson) [1776606] - [netdrv] iwlwifi: trans: remove suspending flag (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove CMD_HIGH_PRIO (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove last leftovers of d0i3 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove iwl_mvm_update_d0i3_power_mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove d0i3_ap_sta_id (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: iwl_mvm_wowlan_config_key_params is for wowlan only (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove the d0i3 entry/exit flow (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove the tx defer for d0i3 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove all the d0i3 references (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: start to remove the code for d0i3 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add the skb length to a print (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix scan config command size (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add ldbg config cmd debug print (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: support debug recording suspend resume command (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: move debug recording stop from trans to op mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: move monitor recording functionality from header file (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove unnecessary forward declarations (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Block 26-tone RU OFDMA transmissions (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove redundant condition in iwl_mvm_set_hw_rfkill_state (Jarod Wilson) [1776606] - [netdrv] iwlwifi: Send DQA enable command only if TVL is on (Jarod Wilson) [1776606] - [netdrv] iwlwifi: bump FW API to 49 for 22000 series (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add support to read temperature from mcu (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_txwi_to_txp utility routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use devm_platform_ioremap_resource() to simplify code (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0: remove unneeded return value on set channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0: remove redundant chandef copy (Jarod Wilson) [1776606] - [netdrv] mt76: make mt76_rx_convert static (Jarod Wilson) [1776606] - [netdrv] mt76: remove offchannel check in tx scheduling (Jarod Wilson) [1776606] - [netdrv] mt76: do not send BAR frame on tx aggregation flush stop (Jarod Wilson) [1776606] - [netdrv] mt76: stop rx aggregation on station removal (Jarod Wilson) [1776606] - [netdrv] mt76: dma: reset q->rx_head on rx reset (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: apply calibration-free data from OTP (Jarod Wilson) [1776606] - [netdrv] mt76: add default implementation for mt76_sw_scan/mt76_sw_scan_complete (Jarod Wilson) [1776606] - [netdrv] mt76: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add BIP_CMAC_128 cipher support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: remove unnecessary mcu queue initialization (Jarod Wilson) [1776606] - [netdrv] mt76: move mt76_tx_tasklet in mt76 module (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: enable survey support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: move survey_time in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02u: enable survey support (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02u: enable multi-vif support (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: do not copy beacon skb in mt76x02_mac_set_beacon_enable (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: introduce mt76x02_pre_tbtt_enable and mt76x02_beacon_enable macros (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add Smart Carrier Sense support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: rework locking scheme for mt7615_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: switch to SPDX tag instead of verbose boilerplate text (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: Add paragraphs to describe the config symbols fully (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: update cw_min/max related settings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add 4 WMM sets support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix watchdog rescheduling in mt7603_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix MT7615_WATCHDOG_TIME definition (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_mmio_read_copy routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add set_key_cmd and mt76_wcid to mt7615_mac_wtbl_set_key signature (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove wtbl_sec_key definition (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_mac_wtbl_set_key routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add mt7615_mac_wtbl_addr routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: move mt7615_mac_get_key_info in mac.c (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add missing register initialization (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0u: add support to TP-Link T2UHP (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: usb: remove unneeded {put,get}_unaligned (Jarod Wilson) [1776606] - [netdrv] mt76: usb: fix endian in mt76u_copy (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix invalid fallback rates (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix invalid fallback rates (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix PS buffering of action frames (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix using VHT STBC rates (Jarod Wilson) [1776606] - [netdrv] mt76: mt76u: fix typo in mt76u_fill_rx_sg (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: sync with mt7603 rate control changes (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: reset rate index/counters on rate table update (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: move mt7615_mcu_set_rates to mac.c (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: enable hardware rate up/down selection (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_mcu_send_ram_firmware routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: always release sem in mt7615_load_patch (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fall back to sw encryption for unsupported ciphers (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: clean up FWDL TXQ during/after firmware upload (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add radar pattern test knob to debugfs (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add csa support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: do not perform txcalibration before cac is complited (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add hw dfs pattern detector support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_regd_notifier (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix sparse warnings: warning: restricted __le16 degrades to integer (Jarod Wilson) [1776606] - [netdrv] mt76: round up length on mt76_wr_copy (Jarod Wilson) [1776606] - [netdrv] ath6kl: fix a NULL-ptr-deref bug in ath6kl_usb_alloc_urb_from_pipe() (Jarod Wilson) [1776606] - [netdrv] ath6kl: Fix a possible null-pointer dereference in ath6kl_htc_mbox_create() (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: set ackto to max timeout in ath_dynack_reset (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: set max timeout according to channel width (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: properly set last timeout timestamp in ath_dynack_reset (Jarod Wilson) [1776606] - [netdrv] ath9k: dyanck: introduce ath_dynack_set_timeout routine (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: fix possible deadlock in ath_dynack_node_{de}init (Jarod Wilson) [1776606] - [netdrv] ath9k: add loader for AR92XX (and older) pci(e) (Jarod Wilson) [1776606] - [netdrv] brcmfmac: get chip's default RAM info during PCIe setup (Jarod Wilson) [1776606] - [netdrv] brcmfmac: replace strncpy() by strscpy() (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not set IEEE80211_TX_STAT_AMPDU_NO_BACK on tx status (Jarod Wilson) [1776606] - [netdrv] brcmfmac: remove redundant assignment to pointer hash (Jarod Wilson) [1776606] - [netdrv] brcm80211: Avoid possible null-pointer dereferences in wlc_phy_radio_init_2056() (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: enable MSI interrupt (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: Move a mass of jobs in hw IRQ to soft IRQ (Jarod Wilson) [1776606] - [netdrv] rtw88: remove redundant assignment to pointer debugfs_topdir (Jarod Wilson) [1776606] - [netdrv] rtw88: drop unused rtw_coex_coex_dm_reset() (Jarod Wilson) [1776606] - [netdrv] rtw88: Fix an error message (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Fix incorrect returned values (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Fix incorrect returned values (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Fix incorrect returned values (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Remove some variable initializations (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl_pci: Fix memory leak when hardware init fails (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove unused variables 'RTL8712_SDIO_EFUSE_TABLE' and 'MAX_PGPKT_SIZE' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Fix value set in descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: fix non-kerneldoc comment in usb.c (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: fix infinite loop because supported is not being shifted (Jarod Wilson) [1776606] - [netdrv] mt76: Remove dev_err() usage after platform_get_irq() (Jarod Wilson) [1776606] - [net] mac80211: Do not send Layer 2 Update frame before authorization (Jarod Wilson) [1776606] - [netdrv] revert "rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band" (Jarod Wilson) [1776606] - [netdrv] rt2x00: clear up IV's on key removal (Jarod Wilson) [1776606] - [netdrv] iwlwifi: assign directly to iwl_trans->cfg in QuZ detection (Jarod Wilson) [1776606] - [netdrv] mwifiex: Fix three heap overflow at parsing element in cfg80211_ap_settings (Jarod Wilson) [1776244 1775484 1775475 1776606] - [netdrv] mt76: mt76x0e: disable 5GHz band for MT7630E (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0e: don't use hw encryption for MT7630E (Jarod Wilson) [1776606] - [net] nl80211: fill all policy .type entries (Jarod Wilson) [1776606] - [net] cfg80211: Add support to set tx power for a station associated (Jarod Wilson) [1776606] - [net] cfg80211: Fix Extended Key ID key install checks (Jarod Wilson) [1776606] - [net] mac80211: AMPDU handling for rekeys with Extended Key ID (Jarod Wilson) [1776606] - [net] mac80211: Simplify Extended Key ID API (Jarod Wilson) [1776606] - [net] nl80211: require and validate vendor command policy (Jarod Wilson) [1776606] - [net] mac80211: AMPDU handling for Extended Key ID (Jarod Wilson) [1776606] - [net] mac80211: IEEE 802.11 Extended Key ID support (Jarod Wilson) [1776606] - [net] nl80211/cfg80211: Extended Key ID support (Jarod Wilson) [1776606] - [net] nl80211/cfg80211: Specify band specific min RSSI thresholds with sched scan (Jarod Wilson) [1776606] - [net] cfg80211: Use const more consistently in for_each_element macros (Jarod Wilson) [1776606] - [net] nl80211: use for_each_element() in validate_ie_attr() (Jarod Wilson) [1776606] - [net] cfg80211: add peer measurement with FTM initiator API (Jarod Wilson) [1776606] - [net] nl80211: use netlink policy validation function for elements (Jarod Wilson) [1776606] - [net] nl80211: use policy range validation where applicable (Jarod Wilson) [1776606] - [net] cfg80211: support FTM responder configuration/statistics (Jarod Wilson) [1776606] - [net] lib80211: move TKIP handling to ARC4 library code (Jarod Wilson) [1776606] - [net] lib80211: move WEP handling to ARC4 library code (Jarod Wilson) [1776606] - [net] mac80211: move WEP handling to ARC4 library interface (Jarod Wilson) [1776606] - [netdrv] rt2x00: clear IV's on start to fix AP mode regression (Jarod Wilson) [1776606] - [netdrv] rt2800usb: Add new rt2800usb device PLANEX GW-USMicroN (Jarod Wilson) [1776606] - [netdrv] rt2x00: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [netdrv] rt2x00usb: remove unnecessary rx flag checks (Jarod Wilson) [1776606] - [netdrv] rt2x00usb: fix rx queue hang (Jarod Wilson) [1776606] - [netdrv] rt2800: do not enable watchdog by default (Jarod Wilson) [1776606] - [netdrv] rt2x00: add restart hw (Jarod Wilson) [1776606] - [netdrv] rt2800: do not nullify initialization vector data (Jarod Wilson) [1776606] - [netdrv] rt2800: add pre_reset_hw callback (Jarod Wilson) [1776606] - [netdrv] rt2800: initial watchdog implementation (Jarod Wilson) [1776606] - [netdrv] rt2800: add helpers for reading dma done index (Jarod Wilson) [1776606] - [netdrv] rt2x00: allow to specify watchdog interval (Jarod Wilson) [1776606] - [netdrv] rt2x00: add RT3883 support (Jarod Wilson) [1776606] - [netdrv] rt2x00mmio: remove legacy comment (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove not used entry field (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove last_nostatus_check (Jarod Wilson) [1776606] - [netdrv] rt2800mmio: use timer and work for handling tx statuses timeouts (Jarod Wilson) [1776606] - [netdrv] rt2800mmio: fetch tx status changes (Jarod Wilson) [1776606] - [netdrv] rt2800: move txstatus pending routine (Jarod Wilson) [1776606] - [netdrv] rt2800: new flush implementation for SoC devices (Jarod Wilson) [1776606] - [netdrv] rt2800: partially restore old mmio txstatus behaviour (Jarod Wilson) [1776606] - [netdrv] rt2x00: code-style fix in rt2800usb.c (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not print error when queue is full (Jarod Wilson) [1776606] - [netdrv] rt2x00: check number of EPROTO errors (Jarod Wilson) [1776606] - [netdrv] rt2x00: use ratelimited variants dev_warn/dev_err (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not increment sequence number while re-transmitting (Jarod Wilson) [1776606] - [netdrv] rt2800: comment and simplify AGC init for RT6352 (Jarod Wilson) [1776606] - [netdrv] rt2800: enable TX_PIN_CFG_RFRX_EN only for MT7620 (Jarod Wilson) [1776606] - [netdrv] rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove confusing AGC register (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove unneeded check (Jarod Wilson) [1776606] - [netdrv] rt2x00: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [netdrv] rt2x00: Work around a firmware bug with shared keys (Jarod Wilson) [1776606] - [netdrv] rt2x00: reduce tx power to nominal level on RT6352 (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt61pci: mark expected switch fall-through (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt2800lib: mark expected switch fall-throughs (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt2500pci: mark expected switch fall-through (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt2400pci: mark expected switch fall-through (Jarod Wilson) [1776606] - [netdrv] rt2800: flush and txstatus rework for rt2800mmio (Jarod Wilson) [1776606] - [netdrv] rt2x00: use different txstatus timeouts when flushing (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not check for txstatus timeout every time on tasklet (Jarod Wilson) [1776606] - [netdrv] rt2800mmio: use txdone/txstatus routines from lib (Jarod Wilson) [1776606] - [netdrv] rt2800: move usb specific txdone/txstatus routines to rt2800lib (Jarod Wilson) [1776606] - [netdrv] rt2x00: use simple_read_from_buffer() (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove redundant functions rt2x00mac_sta_{add/remove} (Jarod Wilson) [1776606] - [net] mac80211: Correctly set noencrypt for PAE frames (Jarod Wilson) [1776606] - [net] mac80211: Don't memset RXCB prior to PAE intercept (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: handle switching killer Qu B0 NICs to C0 (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: improve rate probing for devices with static fallback (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: fix default max throughput rate indexes (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: reduce unnecessary rate probing attempts (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: fix per-group max throughput rate initialization (Jarod Wilson) [1776606] - [net] nl80211: Add support for EDMG channels (Jarod Wilson) [1776606] - [net] mac80211: fix possible NULL pointerderef in obss pd code (Jarod Wilson) [1776606] - [net] mac80211: add assoc-at support (Jarod Wilson) [1776606] - [uapi] cfg80211: Support assoc-at timer in sta-info (Jarod Wilson) [1776606] - [net] cfg80211: apply same mandatory rate flags for 5GHz and 6GHz (Jarod Wilson) [1776606] - [net] cfg80211: ibss: use 11a mandatory rates for 6GHz band operation (Jarod Wilson) [1776606] - [net] cfg80211: use same IR permissive rules for 6GHz band (Jarod Wilson) [1776606] - [net] cfg80211: add 6GHz in code handling array with NUM_NL80211_BANDS entries (Jarod Wilson) [1776606] - [net] cfg80211: extend ieee80211_operating_class_to_band() for 6GHz (Jarod Wilson) [1776606] - [net] cfg80211: util: add 6GHz channel to freq conversion and vice versa (Jarod Wilson) [1776606] - [net] cfg80211: add 6GHz UNII band definitions (Jarod Wilson) [1776606] - [uapi] nl80211: add 6GHz band definition to enum nl80211_band (Jarod Wilson) [1776606] - [net] revert "cfg80211: fix processing world regdomain when non modular" (Jarod Wilson) [1776606] - [net] mac80211: add missing length field increment when generating Radiotap header (Jarod Wilson) [1776606] - [net] mac80211: 80Mhz was not reported properly when using tx_status_ext (Jarod Wilson) [1776606] - [net] mac80211: fix bad guard when reporting legacy rates (Jarod Wilson) [1776606] - [net] mac80211: fix TX legacy rate reporting when tx_status_ext is used (Jarod Wilson) [1776606] - [net] mac80211: fix possible sta leak (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix recognition of QuZ devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: don't switch FW to qnj when ax201 is detected (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix the byte count table format for 22560 devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Allow multicast data frames only when associated (Jarod Wilson) [1776606] - [netdrv] revert "mwifiex: fix system hang problem after resume" (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1776606] - [netdrv] rtw88: add BT co-existence support (Jarod Wilson) [1776606] - [netdrv] rtw88: enclose c2h cmd handle with mutex (Jarod Wilson) [1776606] - [netdrv] rtw88: allow c2h operation in irq context (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Remove local configuration variable (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl88188ee: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Remove unused GET_XXX and SET_XXX descriptor macros (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: remove set but not used variable 'ip_sel' (Jarod Wilson) [1776606] - [netdrv] brcmsmac: remove three set but not used variables (Jarod Wilson) [1776606] - [netdrv] brcmfmac: remove set but not used variable 'dtim_period' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove unneeded function _rtl_dump_channel_map() (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl_pci: Use dev_get_drvdata (Jarod Wilson) [1776606] - [netdrv] mwifiex: pcie: Use dev_get_drvdata (Jarod Wilson) [1776606] - [netdrv] mwifiex: make error values consistent in mwifiex_update_bss_desc_with_ie() (Jarod Wilson) [1776606] - [netdrv] rtw88: use txpwr_lmt_cfg_pair struct, not arrays (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix compile time assert build errors (Jarod Wilson) [1776606] - [net] mac80211: HE STA disassoc due to QOS NULL not sent (Jarod Wilson) [1776606] - [net] mac80211: allow setting spatial reuse parameters from bss_conf (Jarod Wilson) [1776606] - [net] nl80211: add strict start type (Jarod Wilson) [1776606] - [net] cfg80211: add support for parsing OBBS_PD attributes (Jarod Wilson) [1776606] - [net] mac80211: reject zero MAC address in add station (Jarod Wilson) [1776606] - [net] cfg80211: use parallel_ops for genl (Jarod Wilson) [1776606] - [net] mac80211: add missing null return check from call to ieee80211_get_sband (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix a use-after-free bug in iwl_mvm_tx_tso_segment (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix an out-of-bound access (Jarod Wilson) [1776606] - [netdrv] iwlwifi: don't unmap as page memory that was mapped as single (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix version check for GEO_TX_POWER_LIMIT support (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add 3 new IDs for the 9000 series (iwl9260_2ac_160_cfg) (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix possible out-of-bounds read when accessing lq_info (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix frame drop from the reordering buffer (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: replace RS mutex with a spin_lock (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: send LQ command always ASYNC (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix comparison of u32 variable with less than zero (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix locking in delayed GTK setting (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: move iwl_dbg_tlv_free outside of debugfs ifdef (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: move iwl_dbg_tlv_load_bin out of debug override ifdef (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a wrapper around rs_tx_status to handle locks (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a loose synchronization of the NSSN across Rx queues (Jarod Wilson) [1776606] - [netdrv] iwlwiif: mvm: refactor iwl_mvm_notify_rx_queue (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a new RSS sync notification for NSSN sync (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: prepare the ground for more RSS notifications (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: don't send GEO_TX_POWER_LIMIT on version < 41 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: avoid races in rate init and rate perform (Jarod Wilson) [1776606] - [net] revert "mac80211: set NETIF_F_LLTX when using intermediate tx queues" (Jarod Wilson) [1776606] - [net] mac80211: add support for the ADDBA extension element (Jarod Wilson) [1776606] - [net] mac80211: propagate HE operation info into bss_conf (Jarod Wilson) [1776606] - [net] cfg80211: fix dfs channels remain DFS_AVAILABLE after ch_switch (Jarod Wilson) [1776606] - [net] cfg80211: fix duplicated scan entries after channel switch (Jarod Wilson) [1776606] - [net] cfg80211: refactor cfg80211_bss_update (Jarod Wilson) [1776606] - [net] mac80211: don't WARN on short WMM parameters from AP (Jarod Wilson) [1776606] - [net] nl80211: Include wiphy address setup in NEW_WIPHY (Jarod Wilson) [1776606] - [net] mac80211: implement HE support for mesh (Jarod Wilson) [1776606] - [net] mac80211: add IEEE80211_KEY_FLAG_GENERATE_MMIE to ieee80211_key_flags (Jarod Wilson) [1776606] - [kernel] mac80211: he: add Spatial Reuse element parsing support (Jarod Wilson) [1776606] - [net] mac80211: add struct ieee80211_tx_status support to ieee80211_add_tx_radiotap_header (Jarod Wilson) [1776606] - [net] {nl, mac}80211: fix interface combinations on crypto controlled devices (Jarod Wilson) [1776606] - [net] mac80211: propagate struct ieee80211_tx_status into ieee80211_tx_monitor() (Jarod Wilson) [1776606] - [net] mac80211: add xmit rate to struct ieee80211_tx_status (Jarod Wilson) [1776606] - [kernel] mac80211: add support for parsing ADDBA_EXT IEs (Jarod Wilson) [1776606] - [net] cfg80211: give all multi-BSSID BSS entries the same timestamp (Jarod Wilson) [1776606] - [net] cfg80211: don't parse MBSSID if transmitting BSS isn't created (Jarod Wilson) [1776606] - [net] cfg80211: clean up cfg80211_inform_single_bss_frame_data() (Jarod Wilson) [1776606] - [net] cfg80211: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [net] mac80211: add tx dequeue function for process context (Jarod Wilson) [1776606] - [net] mac80211: run late dequeue late tx handlers without holding fq->lock (Jarod Wilson) [1776606] - [net] lib80211: use crypto API ccm(aes) transform for CCMP processing (Jarod Wilson) [1776606] - [net] mac80211: remove unused and unneeded remove_sta_debugfs callback (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove unused .remove_sta_debugfs callback (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dvm: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [net] mac80211: pass the vif to cancel_remain_on_channel (Jarod Wilson) [1776606] - [netdrv] mwifiex: use eth_broadcast_addr() to assign broadcast address (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove assignment to itself (Jarod Wilson) [1776606] - [netdrv] brcmfmac: don't net_ratelimit() CONSOLE messages on firmware crash (Jarod Wilson) [1776606] - [netdrv] rtw88: debug: dump tx power indexes in use (Jarod Wilson) [1776606] - [netdrv] rtlwifi: btcoex: fix issue possible condition with no effect (if == else) (Jarod Wilson) [1776606] - [netdrv] brcmfmac: remove unnecessary strlcpy() upon obtaining "ver" iovar (Jarod Wilson) [1776606] - [netdrv] brcmfmac: simply remove flowring if bus is down (Jarod Wilson) [1776606] - [netdrv] brcmfmac: avoid firmware commands when bus is down (Jarod Wilson) [1776606] - [netdrv] brcmfmac: clear events in brcmf_fweh_detach() will always fail (Jarod Wilson) [1776606] - [netdrv] brcmfmac: avoid firmware command in brcmf_netdev_open() when bus is down (Jarod Wilson) [1776606] - [netdrv] brcmfmac: change the order of things in brcmf_detach() (Jarod Wilson) [1776606] - [netdrv] revert "brcmfmac: fix NULL pointer derefence during USB disconnect" (Jarod Wilson) [1776606] - [netdrv] brcmfmac: allow 160MHz in custom regulatory rules (Jarod Wilson) [1776606] - [netdrv] brcmfmac: enable DFS_OFFLOAD extended feature if supported (Jarod Wilson) [1776606] - [netdrv] brcmfmac: add 160MHz in chandef_to_chanspec() (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: Use DMA sync instead of remapping in RX ISR (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: Rearrange the memory usage for skb in RX ISR (Jarod Wilson) [1776606] - [netdrv] rtw88: Fix misuse of GENMASK macro (Jarod Wilson) [1776606] - [netdrv] rtl8xxxu: Fix wifi low signal strength issue of RTL8723BU (Jarod Wilson) [1776606] - [net] mac80211: don't warn about CW params when not using them (Jarod Wilson) [1776606] - [net] mac80211: fix possible memory leak in ieee80211_assign_beacon (Jarod Wilson) [1776606] - [kernel] fix typos and some coding style in comments (Jarod Wilson) [1776606] - [netdrv] ath10k: work around uninitialized vht_pfr variable (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: add support for qu c-step devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add new cards for 9000 and 20000 series (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: clear rfkill_safe_init_done when we start the firmware (Jarod Wilson) [1776606] - [netdrv] iwlwifi: don't WARN when calling iwl_get_shared_mem_conf with RF-Kill (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: don't service an interrupt that was masked (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix RF-Kill interrupt while FW load for gen2 devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix ALIVE interrupt handling for gen2 devices w/o MSI-X (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: delay GTK setting in FW in AP mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove MAC_FILTER_IN_11AX for AP mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: debug recording stop and restart command remove (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: don't stop dbg recording before entering D3 from 9000 devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix debug monitor stop and restart in ini mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: make the usage of TWT configurable (Jarod Wilson) [1776606] - [netdrv] iwlwifi: support FSEQ TLV even when FMAC is not compiled (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: move trans debug fields to a separate struct (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove redundant checking of ini mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: enforce apply point early on buffer allocation tlv (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: fix debug monitor stop and restart delays (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: increase the size of PCI dumps (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Drop large non sta frames (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Add log information about SAR status (Jarod Wilson) [1776606] - [netdrv] iwlwifi: Add support for SAR South Korea limitation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix module init error paths (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: convert to FW AC when configuring MU EDCA (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: correctly fill the ac array in the iwl_mac_ctx_cmd (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove some unnecessary NULL checks (Jarod Wilson) [1776606] - [netdrv] iwlwifi: d3: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] iwlwifi: lib: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw api: support adwell HB default APs number api (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove multiple debugfs entries (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: implement dump info collection (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a debugfs entry to set a fixed size AMSDU for all TX packets (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: support debug info TLV (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use different barker for ini dump (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: add consecutive trigger firing support (Jarod Wilson) [1776606] - [kernel] ieee80211: Add a missing extended capability flag definition (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: abort region collection in case the size is 0 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: update CSI API (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: dump headers cleanup (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: allow dump collection in case of an early error (Jarod Wilson) [1776606] - [netdrv] iwlwifi: iwl_mvm_tx_mpdu() must be called with BH disabled (Jarod Wilson) [1776606] - [netdrv] ath10k: pci: remove unnecessary casts (Jarod Wilson) [1776606] - [netdrv] ath10k: remove unnecessary 'out of memory' message (Jarod Wilson) [1776606] - [netdrv] ath10k: destroy sdio workqueue while remove sdio module (Jarod Wilson) [1776606] - [netdrv] ath10k: Move non-fatal warn logs to dbg level for SDIO chip (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix memory leak in qmi (Jarod Wilson) [1776606] - [netdrv] ath10k: add new hw_ops for sdio chip (Jarod Wilson) [1776606] - [netdrv] ath9k: correctly handle short radar pulses (Jarod Wilson) [1776606] - [netdrv] rtw88: refine flow to get tx power index (Jarod Wilson) [1776606] - [netdrv] rtw88: remove all RTW_MAX_POWER_INDEX macro (Jarod Wilson) [1776606] - [netdrv] rtw88: update tx power limit table to RF v20 (Jarod Wilson) [1776606] - [netdrv] rtw88: correct power limit selection (Jarod Wilson) [1776606] - [netdrv] rtw88: choose the lowest as world-wide power limit (Jarod Wilson) [1776606] - [netdrv] rtw88: fix incorrect tx power limit at 5G (Jarod Wilson) [1776606] - [netdrv] rtw88: remove unused variable (Jarod Wilson) [1776606] - [netdrv] rtw88: unify prefixes for tx power setting routine (Jarod Wilson) [1776606] - [netdrv] rtw88: do not use (void *) as argument (Jarod Wilson) [1776606] - [netdrv] rtw88: resolve order of tx power setting routines (Jarod Wilson) [1776606] - [netdrv] ath: fix SPDX tags (Jarod Wilson) [1776606] - [netdrv] ath10k: Add WMI diag fw logging support for WCN3990 (Jarod Wilson) [1776606] - [netdrv] ath10k: add report MIC error for sdio chip (Jarod Wilson) [1776606] - [netdrv] ath10k: add support for controlling tx power to a station (Jarod Wilson) [1776606] - [netdrv] ath10k: Add peer delete response event (Jarod Wilson) [1776606] - [netdrv] ath10k: wait for vdev delete response from firmware (Jarod Wilson) [1776606] - [netdrv] ath10k: fix PCIE device wake up failed (Jarod Wilson) [1776606] - [netdrv] ath10k: fix failure to set multiple fixed rate (Jarod Wilson) [1776606] - [netdrv] ath10k: Change the warning message string (Jarod Wilson) [1776606] - [netdrv] ath10k: fix fw crash by moving chip reset after napi disabled (Jarod Wilson) [1776606] - [netdrv] ath10k: add missing error handling (Jarod Wilson) [1776606] - [netdrv] ath10k: enabling tx stats support over pktlog (Jarod Wilson) [1776606] - [netdrv] ath10k: acquire lock to fix lockdep's warning (Jarod Wilson) [1776606] - [netdrv] ath10k: change firmware file name for UTF mode of SDIO/USB (Jarod Wilson) [1776606] - [netdrv] ath10k: add support for firmware crash recovery on SDIO chip (Jarod Wilson) [1776606] - [netdrv] ath10k: Add wrapper function to ath10k debug (Jarod Wilson) [1776606] - [netdrv] ath10k: add htt_h2t_aggr_cfg_msg op for high latency devices (Jarod Wilson) [1776606] - [netdrv] ath10k: add inline wrapper for htt_h2t_aggr_cfg_msg (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix sparse warnings: warning: incorrect type in assignment (different base types) (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix sparse warnings: warning: cast from restricted __le16 (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix sparse warnings: incorrect type in assignment (different base types) (Jarod Wilson) [1776606] - [netdrv] mt76: move nl80211_dfs_regions in mt76_dev data structure (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove cfg80211_chan_def from mt7615_set_channel signature (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: update peer's bssid when state transition occurs (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix incorrect settings in mesh mode (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: take into account extPA when configuring tx power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: init per-channel target power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add support for per-chain signal strength reporting (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: simplify mt7615_mcu_set_sta_rec routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: improve hardware rate switching configuration (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: rework and fix tx status reporting (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove key check in mt7615_mcu_set_wtbl_key (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove unused variable in mt7615_mcu_set_bcn (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix slow performance when enable encryption (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: enable support for mesh (Jarod Wilson) [1776606] - [netdrv] mt76: Remove set but not used variables 'pid' and 'final_mpdu' (Jarod Wilson) [1776606] - [netdrv] mt76: move mt76_get_rate in mt76-module (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: rearrange locking in mt7615_config (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: init get_txpower mac80211 callback (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add the capability to configure tx power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: select wifi band according to eeprom (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add support for mtd eeprom parsing (Jarod Wilson) [1776606] - [netdrv] mt76: move mt76_insert_ccmp_hdr in mt76-module (Jarod Wilson) [1776606] - [netdrv] mt76: fix setting chan->max_power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix reading target tx power from eeprom (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: do not process rx packets if the device is not initialized (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: add debugfs knob to enable/disable edcca (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add static qualifier to mt7615_rx_poll_complete (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: rearrange cleanup operations in mt7615_unregister_device (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: stop mac80211 queues before setting the channel (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: run __mt76_mcu_send_msg in mt7615_mcu_send_firmware (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: init mcu_restart function pointer (Jarod Wilson) [1776606] - [netdrv] mt7615: initialize mt76_mcu_ops data structure (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: use standard signature for mt7615_mcu_msg_send (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove unused structure in mcu.h (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: do not use function pointers whenever possible (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: unify __mt7615_mcu_set_dev_info and mt7615_mcu_set_dev_info (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove skb_ret from mt7615_mcu_msg_send (Jarod Wilson) [1776606] - [netdrv] mt7615: remove dest from mt7615_mcu_msg_send signature (Jarod Wilson) [1776606] - [netdrv] mt7615: remove query from mt7615_mcu_msg_send signature (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove unused parameter in mt7615_mcu_del_wtbl (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: unify mt7615_mcu_add_wtbl_bmc and mt7615_mcu_del_wtbl_bmc (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: use proper msg size in mt7615_mcu_add_wtbl (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: use proper msg size in mt7615_mcu_add_wtbl_bmc (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove bss_info_convert_vif_type routine (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: simplify __mt7615_mcu_set_sta_rec (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: simplify __mt7615_mcu_set_wtbl (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: Make mt7615_irq_handler static (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: Use after free in mt7615_mcu_set_bcn() (Jarod Wilson) [1776606] - [netdrv] mt76: Fix a signedness bug in mt7615_add_interface() (Jarod Wilson) [1776606] - [netdrv] mt76: move netif_napi_del in mt76_dma_cleanup (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: use napi polling for tx cleanup (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use napi polling for tx cleanup (Jarod Wilson) [1776606] - [netdrv] wireless/mediatek: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: dynamically alloc mcu req in mt7603_mcu_set_eeprom (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: enable/disable pre_tbtt_tasklet in mt7603_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: move pre_tbtt_tasklet in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: move beacon_mask in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: move beacon_int in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: report firmware version using ethtool (Jarod Wilson) [1776606] - [netdrv] mt76: fix endianness sparse warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: use sizeof instead of sizeof_field (Jarod Wilson) [1776606] - [netdrv] mt76: add mac80211 driver for MT7615 PCIe-based chipsets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: run __mt76_mcu_send_msg in mt7603_mcu_send_firmware (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: init mcu_restart function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: initialize mt76_mcu_ops data structure (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use standard signature for mt7603_mcu_msg_send (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: remove query from mt7603_mcu_msg_send signature (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix initialization of max rx length (Jarod Wilson) [1776606] - [netdrv] mt76: use macro for sn and seq_ctrl conversion (Jarod Wilson) [1776606] - [netdrv] mt76: add skb pointer to mt76_tx_info (Jarod Wilson) [1776606] - [netdrv] mt76: move mac_work in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: only schedule txqs from the tx tasklet (Jarod Wilson) [1776606] - [netdrv] mt76: move tx tasklet to struct mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: store wcid tx rate info in one u32 reduce locking (Jarod Wilson) [1776606] - [netdrv] mt76: use readl/writel instead of ioread32/iowrite32 (Jarod Wilson) [1776606] - [netdrv] mt76: fix tx power issues (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_free_device routine (Jarod Wilson) [1776606] - [netdrv] mt76: unify set_tim (Jarod Wilson) [1776606] - [netdrv] mt7603: core: do not use magic numbers in mt7603_reg_map (Jarod Wilson) [1776606] - [netdrv] mt7603: remove mt7603_mcu_init routine (Jarod Wilson) [1776606] - [netdrv] mt76: dma: add static qualifier to mt76_dma_tx_queue_skb (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_tx_info data structure (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_sw_queue data structure (Jarod Wilson) [1776606] - [netdrv] mt76: remove mt76_queue dependency from tx_complete_skb function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: remove mt76_queue dependency from tx_prepare_skb function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: remove mt76_queue dependency from tx_queue_skb function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: dma: move mt76x02_init_{tx, rx}_queue in mt76 module (Jarod Wilson) [1776606] - [netdrv] mt76: mmio: move mt76x02_set_irq_mask in mt76 module (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: send BAR after powersave wakeup (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix sequence number assignment (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: add missing initialization for dev->ps_lock (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use the correct hweight8() function (Jarod Wilson) [1776606] - [netdrv] mt76: fix return value check in mt76_wmac_probe() (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: set moredata flag when queueing ps-filtered packets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: clear the service period on releasing PS filtered packets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: notify mac80211 about buffered frames in ps queue (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix up hardware queue index for PS filtered packets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: clear ps filtering mode before releasing buffered frames (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix tx status HT rate validation (Jarod Wilson) [1776606] - [netdrv] mt76: add driver for MT7603E and MT7628/7688 (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0u: do not reset radio on resume (Jarod Wilson) [1776606] - [netdrv] mt7601u: null check the allocation (Jarod Wilson) [1776606] - [netdrv] mt7601u: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: usb: fix rx A-MSDU support (Jarod Wilson) [1776606] - [netdrv] mt76: mt76u: get rid of {out,in}_max_packet (Jarod Wilson) [1776606] - [netdrv] mt76: mt76u: reduce rx memory footprint (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02u: fix sparse warnings: should it be static? (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0: fix RF frontend initialization for external PA (Jarod Wilson) [1776606] - [netdrv] mt76: generalize mt76_get_txpower for 4x4:4 devices (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix tx reordering on rate control probing without a-mpdu (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix tx status reporting issues (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix edcca file permission (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: run mt76x02_edcca_init atomically in mt76_edcca_set (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x2: move mutex_lock inside mt76x2_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x2u: remove mt76x02_edcca_init in mt76x2u_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: remove enable from mt76x02_edcca_init signature (Jarod Wilson) [1776606] - [netdrv] mt76: move tx_napi in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: remove useless return in mt76x02_resync_beacon_timer (Jarod Wilson) [1776606] - [netdrv] mt7601u: fix possible memory leak when the device is disconnected (Jarod Wilson) [1776606] - [netdrv] mt7601u: do not schedule rx_tasklet when the device has been disconnected (Jarod Wilson) [1776606] - [netdrv] mwifiex: don't disable hardirqs; just softirqs (Jarod Wilson) [1776606] - [netdrv] mwifiex: dispatch/rotate from reorder table atomically (Jarod Wilson) [1776606] - [netdrv] mwifiex: ignore processing invalid command response (Jarod Wilson) [1776606] - [netdrv] mwifiex: update set_mac_address logic (Jarod Wilson) [1776606] - [netdrv] mwifiex: print PCI mmap with pK (Jarod Wilson) [1776606] - [netdrv] mwifiex: drop 'set_consistent_dma_mask' log message (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add support for hr1 RF ID (Jarod Wilson) [1776606] - [netdrv] iwlwifi: change 0x02F0 fw from qu to quz (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add new cards for 22000 and change wrong structs (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add new cards for 22000 and fix struct name (Jarod Wilson) [1776606] - [net] mac80211: notify offchannel expire on mgmt_tx (Jarod Wilson) [1776606] - [net] nl80211: send event when CMD_FRAME duration expires (Jarod Wilson) [1776606] - [net] mac80211: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [net] mac80211: extend __rate_control_send_low warning (Jarod Wilson) [1776606] - [net] mac80211: fill low rate even for HAS_RATE_CONTROL (Jarod Wilson) [1776606] - [net] mac80211: use STA info in rate_control_send_low() (Jarod Wilson) [1776606] - [net] mac80211: call rate_control_send_low() internally (Jarod Wilson) [1776606] - [net] cfg80211: Add a function to iterate all BSS entries (Jarod Wilson) [1776606] - [net] mac80211: allow turning TWT responder support on and off via netlink (Jarod Wilson) [1776606] - [net] mac80211: dynamically enable the TWT requester support on STA interfaces (Jarod Wilson) [1776606] - [net] mac80211: add ieee80211_get_he_iftype_cap() helper (Jarod Wilson) [1776606] - [uapi] nl80211: add support for SAE authentication offload (Jarod Wilson) [1776606] - [net] nl80211: add WPA3 definition for SAE authentication (Jarod Wilson) [1776606] - [net] nl80211: add NL80211_ATTR_IFINDEX to port authorized event (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: remove redundant assignment to rtstatus (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove redundant assignment to variable k (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove redundant assignment to variable badworden (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: fix error handle when usb probe failed (Jarod Wilson) [1776606] - [netdrv] rtlwifi: btcoex: remove unused function exhalbtc_stack_operation_notify (Jarod Wilson) [1776606] - [netdrv] rtlwifi: btcoex: Remove set but not used variable 'len' and 'asso_type_v2' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Remove set but not used variables 'cur_txokcnt' and 'b_last_is_cur_rdl_state' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Remove unused GET_XXX and SET_XXX descriptor macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: use le32 to access cckswing tables (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: Fix used uninitialized variables in power tracking (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: make tables to be 'static const' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: Reduce indentation and fix coding style (Jarod Wilson) [1776606] - [netdrv] rtw88: fix typo rtw_writ16_set (Jarod Wilson) [1776606] - [netdrv] rtw88: rsvd page should go though management queue (Jarod Wilson) [1776606] - [netdrv] rtw88: restore DACK results to save time (Jarod Wilson) [1776606] - [netdrv] rtw88: power on again if it was already on (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: use more accurate ofdm fa counting (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: disable rx clock gating before counter reset (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: update channel and bandwidth BB setting (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: add rf write protection when switching channel (Jarod Wilson) [1776606] - [netdrv] rtw88: add beacon function setting (Jarod Wilson) [1776606] - [netdrv] rtw88: add support for random mac scan (Jarod Wilson) [1776606] - [netdrv] rtw88: add fast xmit support (Jarod Wilson) [1776606] - [netdrv] rtw88: more descriptions about LPS (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: check if queue mapping exceeds size of ac_to_hwq (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: use ieee80211_ac_numbers instead of 0-3 (Jarod Wilson) [1776606] - [netdrv] brcmfmac: use strlcpy() instead of strcpy() (Jarod Wilson) [1776606] - [netdrv] brcmfmac: fix typos in code comments (Jarod Wilson) [1776606] - [netdrv] brcm80211: select WANT_DEV_COREDUMP conditionally for brcmfmac (Jarod Wilson) [1776606] - [netdrv] brcmfmac: use separate Kconfig file for brcmfmac (Jarod Wilson) [1776606] - [netdrv] brcmfmac: switch source files to using SPDX license identifier (Jarod Wilson) [1776606] - [netdrv] brcmsmac: switch phy source files to using SPDX license identifier (Jarod Wilson) [1776606] - [netdrv] brcmutil: switch source files to using SPDX license identifier (Jarod Wilson) [1776606] - [netdrv] brcm80211: switch common header files to using SPDX license identifier (Jarod Wilson) [1776606] - [net] cfg80211: Handle bss expiry during connection (Jarod Wilson) [1776606] - [netdrv] ath10k: Check tx_stats before use it (Jarod Wilson) [1776606] - [netdrv] ath10k: add peer id check in ath10k_peer_find_by_id (Jarod Wilson) [1776606] - [netdrv] ath10k: Add wmi tlv service map for mesh 11s (Jarod Wilson) [1776606] - [netdrv] ath10k: Do not send probe response template for mesh (Jarod Wilson) [1776606] - [netdrv] ath10k: Add wmi tlv vdev subtype for mesh in WCN3990 (Jarod Wilson) [1776606] - [netdrv] ath10k: change swap mail box config for UTF mode of SDIO (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix the wrong value of enums for wmi tlv stats id (Jarod Wilson) [1776606] - [netdrv] ath10k: coredump: use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath10k: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix encoding for protected management frames (Jarod Wilson) [1776606] - [netdrv] ath10k: rx_duration update for fw_stats debugfs entry (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix the tx stats bytes & packets parsing (Jarod Wilson) [1776606] - [netdrv] ath10k: Modify CE4 src buffer entries to 2048 for WCN3990 (Jarod Wilson) [1776606] - [netdrv] ath10k: Move board id and fw version logging to info level (Jarod Wilson) [1776606] - [netdrv] ath10k: Added support to reset HTT stats in debugfs (Jarod Wilson) [1776606] - [netdrv] ath10k: Extended the HTT stats support to retrieve Mu-MIMO related stats (Jarod Wilson) [1776606] - [netdrv] ath: DFS JP domain W56 fixed pulse type 3 RADAR detection (Jarod Wilson) [1776606] - [netdrv] ath9k: drop redundant code in ar9003_hw_set_channel (Jarod Wilson) [1776606] - [netdrv] ath: drop duplicated define (Jarod Wilson) [1776606] - [netdrv] ath9k: Remove some set but not used variables (Jarod Wilson) [1776606] - [netdrv] ath9k: Differentiate between max combined and per chain power (Jarod Wilson) [1776606] - [netdrv] ath9k: Check for errors when reading SREV register (Jarod Wilson) [1776606] - [netdrv] ath9k: Don't trust TX status TID number when reporting airtime (Jarod Wilson) [1776606] - [netdrv] ath6kl: remove redundant check of status != 0 (Jarod Wilson) [1776606] - [netdrv] ath6kl: add some bounds checking (Jarod Wilson) [1776606] - [netdrv] ath6kl: wmi: use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath6kl: debug: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath10k: fix incorrect multicast/broadcast rate setting (Jarod Wilson) [1776606] - [netdrv] ath10k: enable QCA6174 hw3.2 SDIO hardware (Jarod Wilson) [1776606] - [netdrv] ath10k: add fragmentation handler for high latency devices (Jarod Wilson) [1776606] - [netdrv] ath10k: add PN replay protection for high latency devices (Jarod Wilson) [1776606] - [netdrv] ath10k: add handler for HTT_T2H_MSG_TYPE_SEC_IND event (Jarod Wilson) [1776606] - [netdrv] ath10k: add struct for high latency PN replay protection (Jarod Wilson) [1776606] - [netdrv] ath10k: sdio: add missing error check (Jarod Wilson) [1776606] - [netdrv] ath10k: add initialization of HTC header (Jarod Wilson) [1776606] - [netdrv] ath10k: fix use-after-free on SDIO data frames (Jarod Wilson) [1776606] - [netdrv] ath10k: htt: support MSDU ids with SDIO (Jarod Wilson) [1776606] - [netdrv] ath10k: initialise struct ath10k_bus params to zero (Jarod Wilson) [1776606] - [netdrv] ath10k: htt: don't use txdone_fifo with SDIO (Jarod Wilson) [1776606] - [netdrv] ath10k: don't disable interrupts in ath10k_sdio_remove() (Jarod Wilson) [1776606] - [netdrv] ath10k: sdio: workaround firmware UART pin configuration bug (Jarod Wilson) [1776606] - [net] cfg80211: Add airtime statistics and settings (Jarod Wilson) [1776606] - [base] depend on HAS_IOMEM for devm_platform_ioremap_resource() (Jarod Wilson) [1776606] - [base] provide devm_platform_ioremap_resource() (Jarod Wilson) [1776606] - [lib] crypto: arc4 - refactor arc4 core code into separate library (Jarod Wilson) [1776606] - [crypto] export arc4 defines (Jarod Wilson) [1776606] - [crypto] arc4 - convert to skcipher API (Jarod Wilson) [1776606] - [kernel] bitfield: add u8 helpers (Jarod Wilson) [1776606]- [md] raid5: need to set STRIPE_HANDLE for batch head (Nigel Croxon) [1774840] - [scsi] lpfc: remove left-over BUILD_NVME defines (Ewan Milne) [1782235] - [block] fix memleak of bio integrity data (Ming Lei) [1779898] - [fs] xfs: attach dquots and reserve quota blocks during unwritten conversion (Carlos Maiolino) [1782094] - [nvme] nvme-fc: fix double-free scenarios on hw queues (Ewan Milne) [1781390] - [tools] power turbostat: Add Cometlake support (David Arcari) [1759661] - [mm] hugetlbfs: take read_lock on i_mmap for PMD sharing (Waiman Long) [1731295] - [documentation] powerpc/pseries: Add documentation for vcpudispatch_stats (Gustavo Duarte) [1723870] - [powerpc] pseries: Protect against hogging the cpu while setting up the stats (Gustavo Duarte) [1723870] - [powerpc] pseries: Provide vcpu dispatch statistics (Gustavo Duarte) [1723870] - [powerpc] pseries: Move mm/book3s64/vphn.c under platforms/pseries/ (Gustavo Duarte) [1723870] - [powerpc] pseries: Generalize hcall_vphn() (Gustavo Duarte) [1723870] - [powerpc] mm: Move book3s64 specifics in subdirectory mm/book3s64 (Gustavo Duarte) [1723870] - [powerpc] pseries: Introduce rwlock to gatekeep DTLB usage (Gustavo Duarte) [1723870] - [powerpc] pseries: Factor out DTL buffer allocation and registration routines (Gustavo Duarte) [1723870] - [powerpc] pseries: Do not save the previous DTL mask value (Gustavo Duarte) [1723870] - [powerpc] pseries: Use macros for referring to the DTL enable mask (Gustavo Duarte) [1723870] - [powerpc] mm: change #include "mmu_decl.h" to (Gustavo Duarte) [1723870] - [fs] devpts_pty_kill(): don't bother with d_delete() (Eric Sandeen) [1772718] - [fs] devpts: always delete dcache dentry-s in dput() (Eric Sandeen) [1772718] - [infiniband] rdma/siw: Fix post_recv QP state locking (Kamal Heib) [1779625] - [infiniband] rdma/siw: Fix SQ/RQ drain logic (Kamal Heib) [1779625] - [infiniband] rdma/siw: Relax from kmap_atomic() use in TX path (Kamal Heib) [1779625] - [netdrv] nfp: flower: cmsg rtnl locks can timeout reify messages (Pablo Cascon) [1729154] - [netdrv] nfp: Drop unnecessary continue in nfp_net_pf_alloc_vnics (Pablo Cascon) [1729154] - [netdrv] nfp: flower: handle neighbour events on internal ports (Pablo Cascon) [1729154] - [netdrv] nfp: flower: prevent ingress block binds on internal ports (Pablo Cascon) [1729154] - [netdrv] nfp: add AMDA0058 boards to firmware list (Pablo Cascon) [1729154] - [netdrv] nfp: no need to check return value of debugfs_create functions (Pablo Cascon) [1729154] - [netdrv] nfp: flower: encode mac indexes with pre-tunnel rule check (Pablo Cascon) [1729154] - [netdrv] nfp: flower: remove offloaded MACs when reprs are applied to OvS bridges (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload pre-tunnel rules (Pablo Cascon) [1729154] - [netdrv] nfp: flower: verify pre-tunnel rules (Pablo Cascon) [1729154] - [netdrv] nfp: flower: detect potential pre-tunnel rules (Pablo Cascon) [1729154] - [netdrv] nfp: flower: push vlan after tunnel in merge (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload MPLS set action (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload MPLS pop action (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload MPLS push action (Pablo Cascon) [1729154] - [netdrv] nfp: flower: ensure ip protocol is specified for L4 matches (Pablo Cascon) [1729154] - [netdrv] nfp: flower: fix ethernet check on match fields (Pablo Cascon) [1729154] - [netdrv] nfp: ccm: increase message limits (Pablo Cascon) [1729154] - [netdrv] nfp: Use spinlock_t instead of struct spinlock (Pablo Cascon) [1729154] - [netdrv] nfp: flower: add GRE encap action support (Pablo Cascon) [1729154] - [netdrv] nfp: flower: add GRE decap classification support (Pablo Cascon) [1729154] - [netdrv] nfp: flower: rename tunnel related functions in action offload (Pablo Cascon) [1729154] - [netdrv] nfp: flower: add helper functions for tunnel classification (Pablo Cascon) [1729154] - [netdrv] nfp: flower: refactor tunnel key layer calculation (Pablo Cascon) [1729154] - [netdrv] nfp: flower: extend extack messaging for flower match and actions (Pablo Cascon) [1729154] - [netdrv] nfp: flower: use extack messages in flower offload (Pablo Cascon) [1729154] - [netdrv] nfp: flower: check L4 matches on unknown IP protocols (Pablo Cascon) [1729154] - [netdrv] nfp: print a warning when binding VFs to PF driver (Pablo Cascon) [1729154] - [netdrv] nfp: update the old flash error message (Pablo Cascon) [1729154] - [netdrv] nfp: prepare for more TX metadata prepend (Pablo Cascon) [1729154] - [netdrv] nfp: add tls init code (Pablo Cascon) [1729154] - [netdrv] nfp: parse crypto opcode TLV (Pablo Cascon) [1729154] - [netdrv] nfp: add support for sending control messages via mailbox (Pablo Cascon) [1729154] - [netdrv] nfp: parse the mailbox cmsg TLV (Pablo Cascon) [1729154] - [netdrv] nfp: make bar_lock a semaphore (Pablo Cascon) [1729154] - [netdrv] nfp: count all failed TX attempts as errors (Pablo Cascon) [1729154] - [netdrv] nfp: ensure skb network header is set for packet redirect (Pablo Cascon) [1728773] - [netdrv] nfp: reintroduce ndo_get_port_parent_id for representor ports (Pablo Cascon) [1728773] - [netdrv] nfp: implement PCI driver shutdown callback (Pablo Cascon) [1728773] - [netdrv] nfp: add SR-IOV trusted VF support (Pablo Cascon) [1728773] - [netdrv] nfp: split out common control message handling code (Pablo Cascon) [1728773] - [netdrv] nfp: move vNIC reset before netdev init (Pablo Cascon) [1728773] - [netdrv] nfp: add a mutex lock for the vNIC ctrl BAR (Pablo Cascon) [1728773] - [netdrv] nfp: opportunistically poll for reconfig result (Pablo Cascon) [1728773] - [netdrv] nfp: remove ndo_get_port_parent_id implementation (Pablo Cascon) [1728773] - [netdrv] nfp: pass switch ID through devlink_port_attrs_set() (Pablo Cascon) [1728773] - [netdrv] nfp: implement ethtool get module EEPROM (Pablo Cascon) [1728773] - [netdrv] nfp: nsp: implement read SFF module EEPROM (Pablo Cascon) [1728773] - [netdrv] nfp: do not handle nn->port defined case in nfp_net_get_phys_port_name() (Pablo Cascon) [1728773] - [netdrv] nfp: register devlink port before netdev (Pablo Cascon) [1728773] - [netdrv] nfp: remove defines for unused control bits (Pablo Cascon) [1728773] - [netdrv] replace ndo_get_devlink with ndo_get_devlink_port (Pablo Cascon) [1728773] - [netdrv] nfp: add .ndo_get_devlink (Pablo Cascon) [1728773] - [netdrv] nfp: flower: add rcu locks when accessing netdev for tunnels (Pablo Cascon) [1728773] - [netdrv] nfp: flower: add qos offload stats request and reply (Pablo Cascon) [1728773] - [netdrv] nfp: flower: fix size_t compile warning (Pablo Cascon) [1728773] - [netdrv] nfp: flower: fix implicit fallthrough warning (Pablo Cascon) [1728773] - [netdrv] nfp: flower: offload merge flows (Pablo Cascon) [1728773] - [netdrv] nfp: flower: support stats update for merge flows (Pablo Cascon) [1728773] - [netdrv] nfp: flower: generate merge flow rule (Pablo Cascon) [1728773] - [netdrv] nfp: flower: validate merge hint flows (Pablo Cascon) [1728773] - [netdrv] nfp: flower: handle merge hint messages (Pablo Cascon) [1728773] - [netdrv] nfp: flower: get flows by host context (Pablo Cascon) [1728773] - [netdrv] nfp: flower: allow tunnels to output to internal port (Pablo Cascon) [1728773] - [netdrv] nfp: flower: support fallback packets from internal ports (Pablo Cascon) [1728773] - [netdrv] nfp: allow fallback packets from non-reprs (Pablo Cascon) [1728773] - [netdrv] nfp: flower: allow offloading of matches on 'internal' ports (Pablo Cascon) [1728773] - [netdrv] nfp: flower: turn on recirc and merge hint support in firmware (Pablo Cascon) [1728773] - [netdrv] nfp: flower: reduce action list size by coalescing mangle actions (Pablo Cascon) [1728773] - [fs] xfs: properly serialise fallocate against AIO+DIO (Eric Sandeen) [1765547] - [fs] xfs: fix attr leaf header freemap.size underflow (Brian Foster) [1728989] - [mm] maintain randomization of page free lists (Rafael Aquini) [1620349] - [mm] move buddy list manipulations into helpers (Rafael Aquini) [1620349] - [mm] shuffle initial free memory to improve memory-side-cache utilization (Rafael Aquini) [1620349] - [powerpc] kvm: ppc: book3s hv: Flush link stack on guest exit to host kernel (Gustavo Duarte) [1777686] - [powerpc] book3s64: Fix link stack flush on context switch (Gustavo Duarte) [1777686] - [powerpc] 64s: support nospectre_v2 cmdline option (Gustavo Duarte) [1777686] - [powerpc] fsl: Update Spectre v2 reporting (Gustavo Duarte) [1777686] - [powerpc] fsl: Add nospectre_v2 command line argument (Gustavo Duarte) [1777686] - [powerpc] fsl: Fix spectre_v2 mitigations reporting (Gustavo Duarte) [1777686] - [powerpc] 64: Make meltdown reporting Book3S 64 specific (Gustavo Duarte) [1777686] - [powerpc] 64: Disable the speculation barrier from the command line (Gustavo Duarte) [1777686] - [x86] kprobes: Avoid kretprobe recursion bug (Jiri Olsa) [1779235] - [x86] kprobes: Verify stack frame on kretprobe (Jiri Olsa) [1779235]- [fs] iomap: Fix pipe page leakage during splicing (Andreas Grunbacher) [1622634] - [fs] iomap: fix return value of iomap_dio_bio_actor on 32bit systems (Andreas Grunbacher) [1622634] - [fs] iomap: iomap_bmap should check iomap_apply return value (Andreas Grunbacher) [1622634] - [fs] iomap: Fix overflow in iomap_page_mkwrite (Andreas Grunbacher) [1622634] - [fs] splice: only read in as much information as there is pipe buffer space (Andreas Grunbacher) [1622634] - [fs] gfs2: Always mark inode dirty in fallocate (Andreas Grunbacher) [1622634] - [fs] dax: Fix pmd vs pte conflict detection (Jeff Moyer) [1777250] - [fs] xfs: move local to extent inode logging into bmap helper (Brian Foster) [1737677] - [fs] xfs: remove broken error handling on failed attr sf to leaf change (Brian Foster) [1737677] - [fs] xfs: log the inode on directory sf to block format change (Brian Foster) [1737677] - [block] bfq: deschedule empty bfq_queues not referred by any process (Ming Lei) [1773831] - [scsi] revert "scsi: qla2xxx: Fix memory leak when sending I/O fails" (Himanshu Madhani) [1759275] - [infiniband] rdma/iw_cxgb4: Report correct port speed/width (Vishal Kulkarni) [1757806] - [infiniband] rdma/iw_cxgb4: fix SRQ access from dump_qp() (Vishal Kulkarni) [1779997] - [net] nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds (Vladis Dronov) [1778898] - [atm] iphase: Fix Spectre v1 vulnerability (Vladis Dronov) [1778898] - [x86] tls: Fix possible spectre-v1 in do_get_thread_area() (Vladis Dronov) [1778898] - [x86] ptrace: Fix possible spectre-v1 in ptrace_get_debugreg() (Vladis Dronov) [1778898] - [net] atm: Fix potential Spectre v1 vulnerabilities (Vladis Dronov) [1778898] - [powerpc] ptrace: Mitigate potential Spectre v1 (Vladis Dronov) [1778898] - [char] applicom: Fix potential Spectre v1 vulnerabilities (Vladis Dronov) [1778898] - [char] mwave: fix potential Spectre v1 vulnerability (Vladis Dronov) [1778898] - [misc] misc/sgi-gru: fix Spectre v1 vulnerability (Vladis Dronov) [1778898] - [usb] gadget: storage: Fix Spectre v1 vulnerability (Vladis Dronov) [1778898] - [misc] hmc6352: fix potential Spectre v1 (Vladis Dronov) [1778898] - [s390] qeth: ensure linear access to packet headers (Philipp Rudo) [1781085] - [s390] qeth: guard against runt packets (Philipp Rudo) [1781085] - [s390] qeth: handle skb allocation error gracefully (Philipp Rudo) [1781085] - [s390] qeth: drop unwanted packets earlier in RX path (Philipp Rudo) [1781085] - [s390] qeth: support per-frame invalidation (Philipp Rudo) [1781085] - [s390] qeth: gather more detailed RX dropped/error statistics (Philipp Rudo) [1781085] - [s390] Mark expected switch fall-throughs (Philipp Rudo) [1781085] - [sched] fair: Scale bandwidth quota and period without losing quota/period ratio precision (Phil Auld) [1706247] - [sched] fair: Fix -Wunused-but-set-variable warnings (Phil Auld) [1706247] - [sched] fair: Fix low cpu usage with high throttling by removing expiration of cpu-local slices (Phil Auld) [1706247] - [kernel] sched/core: Remove double update_max_interval() call on CPU startup (Phil Auld) [1757535] - [kernel] sched/core: Fix migration to invalid CPU in __set_cpus_allowed_ptr() (Phil Auld) [1757535] - [kernel] sched/fair: Don't assign runtime for throttled cfs_rq (Phil Auld) [1757535] - [kernel] cpufreq: schedutil: Don't skip freq update when limits change (Phil Auld) [1757535] - [kernel] sched/deadline: Fix double accounting of rq/running bw in push & pull (Phil Auld) [1757535] - [kernel] sched/fair: Fix imbalance due to CPU affinity (Phil Auld) [1757535] - [kernel] sched/fair: Use RCU accessors consistently for ->numa_group (Phil Auld) [1757535] - [kernel] sched/fair: Don't free p->numa_faults with concurrent readers (Phil Auld) [1757535] - [kernel] sched/fair: Rename weighted_cpuload() to cpu_runnable_load() (Phil Auld) [1757535] - [kernel] sched/topology: Remove unused 'sd' parameter from arch_scale_cpu_capacity() (Phil Auld) [1757535] - [kernel] sched/fair: Don't push cfs_bandwith slack timers forward (Phil Auld) [1757535] - [documentation] sched/fair: Fix "runnable_avg_yN_inv" not used warnings (Phil Auld) [1757535] - [kernel] sched/fair: Clean up definition of NOHZ blocked load functions (Phil Auld) [1757535] - [kernel] sched/core: Add __sched tag for io_schedule() (Phil Auld) [1757535] - [kernel] sched/fair: Remove sgs->sum_weighted_load (Phil Auld) [1757535] - [kernel] sched/core: Remove sd->*_idx (Phil Auld) [1757535] - [kernel] sched/core: Remove rq->cpu_load[] (Phil Auld) [1757535] - [kernel] sched/debug: Remove sd->*_idx range on sysctl (Phil Auld) [1757535] - [kernel] sched/fair: Replace source_load() & target_load() with weighted_cpuload() (Phil Auld) [1757535] - [kernel] sched/fair: Remove the rq->cpu_load[] update code (Phil Auld) [1757535] - [kernel] sched/fair: Remove rq->load (Phil Auld) [1757535] - [kernel] sched/core: Unify p->on_rq updates (Phil Auld) [1757535] - [kernel] sched/core: Remove ttwu_activate() (Phil Auld) [1757535] - [kernel] sched/cpufreq: Fix 32-bit math overflow (Phil Auld) [1757535] - [kernel] sched/fair: Update scale invariance of PELT (Phil Auld) [1757535] - [kernel] sched/pelt: Skip updating util_est when utilization is higher than CPU's capacity (Phil Auld) [1757535] - [kernel] sched/fair: Move the rq_of() helper function (Phil Auld) [1757535] - [kernel] sched/core: Use READ_ONCE()/WRITE_ONCE() in move_queued_task()/task_rq_lock() (Phil Auld) [1757535] - [kernel] sched/numa: Remove unused numa_stats::nr_running field (Phil Auld) [1757535] - [kernel] sched/fair: Add lsub_positive() and use it consistently (Phil Auld) [1706247 1757535] - [kernel] sched/fair: Mask UTIL_AVG_UNCHANGED usages (Phil Auld) [1706247 1757535] - [cpuidle] teo: Avoid using "early hits" incorrectly (Al Stone) [1725618] - [cpuidle] teo: Fix "early hits" handling for disabled idle states (Al Stone) [1725618] - [cpuidle] teo: Consider hits and misses metrics of disabled states (Al Stone) [1725618] - [cpuidle] teo: Rename local variable in teo_select() (Al Stone) [1725618] - [cpuidle] teo: Ignore disabled idle states that are too deep (Al Stone) [1725618] - [cpuidle] teo: Get rid of redundant check in teo_update() (Al Stone) [1725618] - [cpuidle] teo: Allow tick to be stopped if PM QoS is used (Al Stone) [1725618] - [cpuidle] governors: unify last_state_idx (Al Stone) [1725618] - [powerpc] powernv/cpuidle: Fix idle states all being marked invalid (Al Stone) [1725618] - [cpuidle] menu: Avoid overflows when computing variance (Al Stone) [1725618] - [cpuidle] dt: bail out if the idle-state DT node is not compatible (Al Stone) [1725618] - [kernel] cpuidle: use BIT() for idle state flags and remove CPUIDLE_DRIVER_FLAGS_MASK (Al Stone) [1725618] - [cpuidle] New timer events oriented governor for tickless systems (Al Stone) [1725618] - [cpuidle] Add 'above' and 'below' idle state metrics (Al Stone) [1725618] - [cpuidle] big.little: fix refcount leak (Al Stone) [1725618] - [documentation] documentation: admin-guide: pm: Add cpuidle document (Al Stone) [1725618] - [cpuidle] powerpc/pseries/cpuidle: Fix preempt warning (Al Stone) [1725618] - [cpuidle] arm: cpuidle: Convert to use cpuidle_register|unregister() (Al Stone) [1725618] - [cpuidle] arm: cpuidle: Don't register the driver when back-end init returns -ENXIO (Al Stone) [1725618] - [cpuidle] menu: Remove get_loadavg() from the performance multiplier (Al Stone) [1725618] - [kernel] sched: Factor out nr_iowait and nr_iowait_cpu (Al Stone) [1725618] - [kernel] sched/core: Fix comment regarding nr_iowait_cpu() and get_iowait_load() (Al Stone) [1725618] - [cpuidle] menu: Avoid computations when result will be discarded (Al Stone) [1725618] - [cpuidle] menu: Drop redundant comparison (Al Stone) [1725618] - [cpuidle] menu: Simplify checks related to the polling state (Al Stone) [1725618] - [cpuidle] menu: Move the latency_req == 0 special case check (Al Stone) [1725618] - [cpuidle] menu: Avoid computations for very close timers (Al Stone) [1725618] - [cpuidle] menu: Do not update last_state_idx in menu_select() (Al Stone) [1725618] - [cpuidle] menu: Get rid of first_idx from menu_select() (Al Stone) [1725618] - [cpuidle] menu: Compute first_idx when latency_req is known (Al Stone) [1725618] - [cpuidle] menu: Replace data->predicted_us with local variable (Al Stone) [1725618] - [cpuidle] enter_state: Don't needlessly calculate diff time (Al Stone) [1725618] - [kernel] cpuidle: Remove unnecessary wrapper cpuidle_get_last_residency() (Al Stone) [1725618] - [cpuidle] menu: Update stale polling override comment (Al Stone) [1725618] - [cpuidle] menu: Fix white space (Al Stone) [1725618] - [cpuidle] powernv/cpuidle: Use parsed device tree values for cpuidle_init (Al Stone) [1725618] - [powerpc] powernv/cpuidle: Parse dt idle properties into global structure (Al Stone) [1725618] - [cpuidle] arm: cpuidle: silence error on driver registration failure (Al Stone) [1725618]- [documentation] docs: admin-guide: Remove threads-max auto-tuning (Joe Lawrence) [1771270] - [documentation] docs: admin-guide: Fix min value of threads-max in kernel.rst (Joe Lawrence) [1771270] - [kernel] sysctl.c: do not override max_threads provided by userspace (Joe Lawrence) [1771270] - [fs] ext4: fix integer overflow when calculating commit interval (Lukas Czerner) [1775166] - [fs] ext4: fix punch hole for inline_data file systems (Lukas Czerner) [1775166] - [fs] ext4: fix warning inside ext4_convert_unwritten_extents_endio (Lukas Czerner) [1775166] - [fs] ext4: set error return correctly when ext4_htree_store_dirent fails (Lukas Czerner) [1775166] - [fs] ext4: fix warning when turn on dioread_nolock and inline_data (Lukas Czerner) [1775166] - [fs] ext4: use jbd2_inode dirty range scoping (Lukas Czerner) [1775166] - [fs] jbd2: introduce jbd2_inode dirty range scoping (Lukas Czerner) [1775166] - [mm] add filemap_fdatawait_range_keep_errors() (Lukas Czerner) [1775166] - [fs] ext4: enforce the immutable flag on open files (Lukas Czerner) [1775166] - [fs] ext4: don't allow any modifications to an immutable file (Lukas Czerner) [1775166] - [fs] jbd2: fix typo in comment of journal_submit_inode_data_buffers (Lukas Czerner) [1775166] - [fs] jbd2: fix some print format mistakes (Lukas Czerner) [1775166] - [fs] ext4: do not delete unlinked inode from orphan list on failed truncate (Lukas Czerner) [1775166] - [fs] ext4: wait for outstanding dio during truncate in nojournal mode (Lukas Czerner) [1775166] - [fs] ext4: don't perform block validity checks on the journal inode (Lukas Czerner) [1775166] - [fs] ext4: fix block validity checks for journal inodes using indirect blocks (Lukas Czerner) [1775166] - [fs] ext4: fix miscellaneous sparse warnings (Lukas Czerner) [1775166] - [fs] jbd2: fix potential double free (Lukas Czerner) [1775166] - [fs] quota: fix condition for resetting time limit in do_set_dqblk() (Lukas Czerner) [1778119] - [fs] quota: honor quota type in Q_XGETQSTAT[V] calls (Lukas Czerner) [1778119] - [fs] quota: fix a problem about transfer quota (Lukas Czerner) [1778119] - [fs] quota: add dqi_dirty_list description to comment of Dquot List Management (Lukas Czerner) [1778119] - [fs] quota: check time limit when back out space/inode change (Lukas Czerner) [1778119] - [fs] quota: fix wrong indentation (Lukas Czerner) [1778119] - [fs] quota: remove trailing whitespaces (Lukas Czerner) [1778119] - [fs] quota: code cleanup for __dquot_alloc_space() (Lukas Czerner) [1778119] - [fs] quota: Lock s_umount in exclusive mode for Q_XQUOTA{ON, OFF} quotactls (Lukas Czerner) [1778119] - [fs] quota: Replace XQM_MAXQUOTAS usage with MAXQUOTAS (Lukas Czerner) [1778119] - [hv] vmbus: Fix harmless building warnings without CONFIG_PM_SLEEP (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Resume after fixing up old primary channels (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Suspend after cleaning up hv_sock and sub channels (Mohammed Gamal) [1774675] - [kernel] hv: vmbus: Add a helper function is_sub_channel() (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Clean up hv_sock channels by force upon suspend (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Suspend/resume the vmbus itself for hibernation (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Ignore the offers when resuming from hibernation (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Implement suspend/resume for VSC drivers for hibernation (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Fix virt_to_hvpfn() for X86_PAE (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Remove the unused "tsc_page" from struct hv_context (Mohammed Gamal) [1774675] - [hv] tools: hv: Use the correct style for SPDX License Identifier (Mohammed Gamal) [1774675] - [hv] hv_balloon: Reorganize the probe function (Mohammed Gamal) [1774675] - [hv] hv_balloon: Use a static page for the balloon_up send buffer (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Replace page definition with Hyper-V specific one (Mohammed Gamal) [1774675] - [hv] hv: Add a module description line to the hv_vmbus driver (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Remove the undesired put_cpu_ptr() in hv_synic_cleanup() (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Fix race condition with new ring_buffer_info mutex (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Set ring_info field to 0 and remove memset (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Refactor chan->state if statement (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Expose monitor data only when monitor pages are used (Mohammed Gamal) [1774675] - [netdrv] hv_netvsc: Fix error handling in netvsc_attach() (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Fix error handling in netvsc_set_features() (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Sync offloading features to VF NIC (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Allow scatter-gather feature to be tunable (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Fix a warning of suspicious RCU usage (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Fix extra rcu_read_unlock in netvsc_recv_callback() (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Set probe mode to sync (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: fix race that may miss tx queue wakeup (Mohammed Gamal) [1774687] - [netdrv] nfp: bpf: fix latency bug when updating stack index register (Pablo Cascon) [1729156] - [netdrv] nfp: bpf: eliminate zero extension code-gen (Pablo Cascon) [1729156] - [netdrv] bnxt_en: Call bnxt_ulp_stop()/bnxt_ulp_start() during suspend/resume (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Call bnxt_ulp_stop()/bnxt_ulp_start() during error recovery (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Improve bnxt_ulp_stop()/bnxt_ulp_start() call sequence (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: flow_offload: offload tunnel decap rules via indirect callbacks (Jonathan Toppins) [1773724] - [netdrv] bnxt: Avoid logging an unnecessary message when a flow can't be offloaded (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Add support to collect crash dump via ethtool (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Add support to invoke OP-TEE API to reset firmware (Jonathan Toppins) [1773724] - [netdrv] broadcom: bnxt: Fix use true/false for bool (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Avoid disabling pci device in bnxt_remove_one() for already disabled device (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Minor formatting changes in FW devlink_health_reporter (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Adjust the time to wait before polling firmware readiness (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Fix devlink NVRAM related byte order related issues (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Fix the size of devlink MSIX parameters (Jonathan Toppins) [1773724] - [nvme] Fix parsing of ANA log page (Ewan Milne) [1769028] - [nvme] nvme-multipath: fix ana log nsid lookup when nsid is not found (Ewan Milne) [1769028] - [nvme] nvme-multipath: fix possible I/O hang when paths are updated (Ewan Milne) [1769028] - [nvme] revert "nvme: update node paths after adding new path" (Ewan Milne) [1769028] - [netdrv] mlx5: Update the list of the PCI supported devices (Mohammad Heib) [1776921] - [netdrv] mlx5: Fix auto group size calculation (Mohammad Heib) [1776921] - [netdrv] mlx5e: Do not use non-EXT link modes in EXT mode (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix set vf link state error flow (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Limit STE hash table enlarge based on bytemask (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix invalid EQ vector number on CQ creation (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Skip rehash for tables with byte mask zero (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix error flow cleanup in mlx5e_tc_tun_create_header_ipv4/6 (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix matcher builders select check (Mohammad Heib) [1776921] - [netdrv] mlx5: Read num_vfs before disabling SR-IOV (Mohammad Heib) [1776921] - [netdrv] mlx5: Clear VF's configuration on disabling SRIOV (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix memory leak during rule creation (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix memory leak in modify action destroy (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix eswitch debug print of max fdb flow (Mohammad Heib) [1776921] - [netdrv] mlx5: LAG, Use affinity type enumerators (Mohammad Heib) [1776921] - [netdrv] mlx5: E-switch, Enable metadata on own vport (Mohammad Heib) [1776921] - [netdrv] mlx5: Correct comment for legacy fields (Mohammad Heib) [1776921] - [netdrv] mlx5: Fixed a typo in a comment in esw_del_uc_addr() (Mohammad Heib) [1776921] - [netdrv] mlx5: Fix rtable reference leak (Mohammad Heib) [1776921] - [netdrv] mlx5: fix a -Wstringop-truncation warning (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix a race with XSKICOSQ in XSK wakeup flow (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix wrong max num channels indication (Mohammad Heib) [1776921] - [netdrv] mlx5e: Add XSK zero-copy support (Mohammad Heib) [1776921]- [mm] memremap: drop unused SECTION_SIZE and SECTION_MASK (Don Dutile) [1754737] - [mm] memremap: Fix reuse of pgmap instances with internal references (Don Dutile) [1754737] - [mm] memunmap: don't access uninitialized memmap in memunmap_pages() (Don Dutile) [1754737] - [mm] memremap: move from kernel/ to mm/ (Don Dutile) [1754737] - [kernel] memremap: provide an optional internal refcount in struct dev_pagemap (Don Dutile) [1754737] - [kernel] memremap: replace the altmap_valid field with a PGMAP_ALTMAP_VALID flag (Don Dutile) [1754737] - [mm] memremap: remove the data field in struct dev_pagemap (Don Dutile) [1754737] - [kernel] memremap: add a migrate_to_ram method to struct dev_pagemap_ops (Don Dutile) [1754737] - [kernel] memremap: lift the devmap_enable manipulation into devm_memremap_pages (Don Dutile) [1754737] - [nvdimm] memremap: pass a struct dev_pagemap to ->kill and ->cleanup (Don Dutile) [1754737] - [kernel] memremap: move dev_pagemap callbacks into a separate structure (Don Dutile) [1754737] - [kernel] memremap: validate the pagemap type passed to devm_memremap_pages (Don Dutile) [1754737] - [mm] remove MEMORY_DEVICE_PUBLIC support (Don Dutile) [1754737] - [mm] migrate.c: cleanup expected_page_refs() (Don Dutile) [1754737] - [mm] migration: factor out code to compute expected number of page references (Don Dutile) [1754737] - [kernel] mm/devm_memremap_pages: fix final page put race (Don Dutile) [1754737] - [kernel] mm/devm_memremap_pages: introduce devm_memunmap_pages (Don Dutile) [1754737] - [kernel] memremap.c: remove the unused device_private_entry_fault() export (Don Dutile) [1754737] - [base] devres: introduce devm_release_action() (Don Dutile) [1754737] - [base] devres: Align data[] to ARCH_KMALLOC_MINALIGN (Don Dutile) [1754737] - [base] devres: provide devm_kstrdup_const() (Don Dutile) [1754737] - [base] devres: constify p in devm_kfree() (Don Dutile) [1754737] - [kernel] mm: move is_kernel_rodata() to asm-generic/sections.h (Don Dutile) [1754737] - [kernel] mm: fix vm_fault_t cast in VM_FAULT_GET_HINDEX() (Don Dutile) [1754737] - [kernel] mm: create the new vm_fault_t type (Don Dutile) [1754737] - [kernel] mm/hmm: convert to use vm_fault_t (Don Dutile) [1754737] - [kernel] mm/hmm: fix memremap.h, move dev_page_fault_t callback to hmm (Don Dutile) [1754737] - [fs] proc/vmcore.c: Convert to use vmf_error() (Don Dutile) [1754737] - [fs] proc/vmcore.c: use new typedef vm_fault_t (Don Dutile) [1754737] - [s390] vdso_fault return type (Don Dutile) [1754737] - [mm] inline vm_insert_pfn_prot() into caller (Don Dutile) [1754737] - [mm] remove vm_insert_pfn() (Don Dutile) [1754737] - [mm] make vm_insert_pfn_prot() static (Don Dutile) [1754737] - [x86] convert vdso to use vm_fault_t (Don Dutile) [1754737] - [mm] introduce vmf_insert_pfn_prot() (Don Dutile) [1754737] - [mm] convert __vm_insert_mixed() to vm_fault_t (Don Dutile) [1754737] - [kernel] mm: remove vm_insert_mixed() (Don Dutile) [1754737] - [fs] cramfs: convert to use vmf_insert_mixed (Don Dutile) [1754737] - [scsi] cxlflash: Change return type for fault handler (Don Dutile) [1754737] - [misc] ocxl: Change return type for fault handler (Don Dutile) [1754737] - [kernel] fs/iomap.c: change return type to vm_fault_t (Don Dutile) [1754737] - [mm] swap.c: remove duplicated include (Don Dutile) [1754737] - [kernel] perf/aux: Fix the aux_output group inheritance fix (Michael Petlan) [1743210] - [kernel] perf/core: Fix inheritance of aux_output groups (Michael Petlan) [1743210] - [kernel] perf/aux: Disallow aux_output for kernel events (Michael Petlan) [1743210] - [kernel] perf/core: Reattach a misplaced comment (Michael Petlan) [1743210] - [kernel] perf/aux: Fix AUX output stopping (Michael Petlan) [1743210] - [tools] perf vendor events s390: Add JSON transaction for machine type 8561 (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Fix use of TRUE with SQLite (Michael Petlan) [1743210] - [tools] objtool: Fix build by linking against tools/lib/ctype.o sources (Michael Petlan) [1743210] - [tools] perf list: Allow plurals for metric, metricgroup (Michael Petlan) [1743210] - [tools] perf vendor events: Minor fixes to the README (Michael Petlan) [1743210] - [tools] perf vendor events amd: Remove redundant '[' (Michael Petlan) [1743210] - [tools] perf vendor events amd: Add L3 cache events for Family 17h (Michael Petlan) [1743210] - [tools] tools include uapi: Update copy of files related to new fspick, fsmount, fsconfig, fsopen, move_mount and open_tree syscalls (Michael Petlan) [1743210] - [tools] perf pmu-events: Fix missing "cpu_clk_unhalted.core" event (Michael Petlan) [1743210] - [tools] perf annotate: Fix s390 gap between kernel end and module start (Michael Petlan) [1743210] - [tools] perf record: Fix module size on s390 (Michael Petlan) [1743210] - [tools] perf tools: Fix include paths in ui directory (Michael Petlan) [1743210] - [tools] perf tools: Fix a typo in a variable name in the Documentation Makefile (Michael Petlan) [1743210] - [tools] perf cpumap: Fix writing to illegal memory in handling cpumap mask (Michael Petlan) [1743210] - [tools] perf ftrace: Fix failure to set cpumask when only one cpu is present (Michael Petlan) [1743210] - [tools] perf db-export: Fix thread__exec_comm() (Michael Petlan) [1743210] - [tools] perf annotate: Fix printing of unaugmented disassembled instructions from BPF (Michael Petlan) [1743210] - [tools] perf bench numa: Fix cpu0 binding (Michael Petlan) [1743210] - [tools] perf tools: Fix perf.data documentation units for memory size (Michael Petlan) [1743210] - [tools] perf header: Fix use of unitialized value warning (Michael Petlan) [1743210] - [tools] perf header: Fix divide by zero error if f_header.attr_size==0 (Michael Petlan) [1743210] - [tools] tools perf beauty: Fix usbdevfs_ioctl table generator to handle _IOC() (Michael Petlan) [1743210] - [tools] perf build: Do not use -Wshadow on gcc < 4.8 (Michael Petlan) [1743210] - [tools] perf probe: Avoid calling freeing routine multiple times for same pointer (Michael Petlan) [1743210] - [tools] perf probe: Set pev->nargs to zero after freeing pev->args entries (Michael Petlan) [1743210] - [tools] perf session: Fix loading of compressed data split across adjacent records (Michael Petlan) [1743210] - [tools] perf stat: Always separate stalled cycles per insn (Michael Petlan) [1743210] - [tools] perf stat: Fix segfault for event group in repeat mode (Michael Petlan) [1743210] - [tools] perf tools: Fix proper buffer size for feature processing (Michael Petlan) [1743210] - [tools] perf script: Fix off by one in brstackinsn IPC computation (Michael Petlan) [1743210] - [tools] perf script: Improve man page description of metrics (Michael Petlan) [1743210] - [tools] perf script: Fix --max-blocks man page description (Michael Petlan) [1743210] - [tools] perf vendor events s390: Add JSON files for machine type 8561 (Michael Petlan) [1743210] - [tools] perf cs-etm: Return errcode in cs_etm__process_auxtrace_info() (Michael Petlan) [1743210] - [tools] perf cs-etm: Remove errnoeous ERR_PTR() usage in cs_etm__process_auxtrace_info (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export switch events (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export switch events (Michael Petlan) [1743210] - [tools] perf db-export: Export switch events (Michael Petlan) [1743210] - [tools] perf db-export: Factor out db_export__threads() (Michael Petlan) [1743210] - [tools] perf script: Add scripting operation process_switch() (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Use new 'has_calls' column (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Remove redundant semi-colons (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Add has_calls column to comms table (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Add has_calls column to comms table (Michael Petlan) [1743210] - [tools] perf db-export: Also export thread's current comm (Michael Petlan) [1743210] - [tools] perf db-export: Factor out db_export__comm() (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export comm details (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export comm details (Michael Petlan) [1743210] - [tools] perf db-export: Export comm details (Michael Petlan) [1743210] - [tools] perf db-export: Fix a white space issue in db_export__sample() (Michael Petlan) [1743210] - [tools] perf db-export: Move export__comm_thread into db_export__sample() (Michael Petlan) [1743210] - [tools] perf db-export: Export comm before exporting thread (Michael Petlan) [1743210] - [tools] perf db-export: Export main_thread in db_export__sample() (Michael Petlan) [1743210] - [tools] perf db-export: Pass main_thread to db_export__thread() (Michael Petlan) [1743210] - [tools] perf db-export: Rename db_export__comm() to db_export__exec_comm() (Michael Petlan) [1743210] - [tools] perf db-export: Get rid of db_export__deferred() (Michael Petlan) [1743210] - [tools] perf trace: Auto bump rlimit(MEMLOCK) for eBPF maps sake (Michael Petlan) [1743210] - [tools] perf test: Auto bump rlimit(MEMLOCK) for BPF test sake (Michael Petlan) [1743210] - [tools] perf tools: Introduce rlimit__bump_memlock() helper (Michael Petlan) [1743210] - [tools] perf-probe: Add user memory access attribute support (Michael Petlan) [1743210] - [tools] perf intel-pt: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf intel-bts: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf script: Assume native_arch for pipe mode (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Fix DROP VIEW power_events_view (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Fix DROP VIEW power_events_view (Michael Petlan) [1743210] - [tools] perf hists browser: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf cs-etm: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf parse-events: remove unused variable: error (Michael Petlan) [1743210] - [tools] perf parse-events: Remove unused variable 'i' (Michael Petlan) [1743210] - [tools] perf metricgroup: Add missing list_del_init() when flushing egroups list (Michael Petlan) [1743210] - [tools] perf tools: Use list_del_init() more thorougly (Michael Petlan) [1743210] - [tools] perf tools: Use zfree() where applicable (Michael Petlan) [1743210] - [tools] tools lib: Adopt zalloc()/zfree() from tools/perf (Michael Petlan) [1743210] - [tools] perf tools: Move get_current_dir_name() cond prototype out of util.h (Michael Petlan) [1743210] - [tools] perf namespaces: Move the conditional setns() prototype to namespaces.h (Michael Petlan) [1743210] - [tools] perf tools: Add missing headers, mostly stdlib.h (Michael Petlan) [1743210] - [tools] perf evsel: perf_evsel__name(NULL) is valid, no need to check evsel (Michael Petlan) [1743210] - [tools] perf session: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf inject: The tool->read() call may pass a NULL evsel, handle it (Michael Petlan) [1743210] - [tools] perf map: Fix potential NULL pointer dereference found by smatch tool (Michael Petlan) [1743210] - [tools] perf trace: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf annotate: Fix dereferencing freed memory found by the smatch tool (Michael Petlan) [1743210] - [tools] perf top: Fix potential NULL pointer dereference detected by the smatch tool (Michael Petlan) [1743210] - [tools] perf stat: Fix use-after-freed pointer detected by the smatch tool (Michael Petlan) [1743210] - [tools] perf test mmap-thread-lookup: Initialize variable to suppress memory sanitizer warning (Michael Petlan) [1743210] - [tools] perf script: Allow specifying the files to process guest samples (Michael Petlan) [1743210] - [tools] perf tools metric: Don't include duration_time in group (Michael Petlan) [1743210] - [tools] perf list: avoid extra : for --raw metrics (Michael Petlan) [1743210] - [tools] perf vendor events intel: Metric fixes for SKX/CLX (Michael Petlan) [1743210] - [tools] perf tools: Fix typos / broken sentences (Michael Petlan) [1743210] - [tools] perf jevents: Add support for Hisi hip08 L3C PMU aliasing (Michael Petlan) [1743210] - [tools] perf jevents: Add support for Hisi hip08 HHA PMU aliasing (Michael Petlan) [1743210] - [tools] perf jevents: Add support for Hisi hip08 DDRC PMU aliasing (Michael Petlan) [1743210] - [tools] perf pmu: Support more complex PMU event aliasing (Michael Petlan) [1743210] - [tools] perf diff: Documentation -c cycles option (Michael Petlan) [1743210] - [tools] perf diff: Print the basic block cycles diff (Michael Petlan) [1743210] - [tools] perf diff: Link same basic blocks among different data (Michael Petlan) [1743210] - [tools] perf diff: Use hists to manage basic blocks per symbol (Michael Petlan) [1743210] - [tools] perf diff: Check if all data files with branch stacks (Michael Petlan) [1743210] - [tools] perf hists: Add block_info in hist_entry (Michael Petlan) [1743210] - [tools] perf symbol: Create block_info structure (Michael Petlan) [1743210] - [tools] perf jevents: Use nonlocal include statements in pmu-events.c (Michael Petlan) [1743210] - [tools] perf annotate: Add csky support (Michael Petlan) [1743210] - [tools] perf stat: Fix metrics with --no-merge (Michael Petlan) [1743210] - [tools] perf stat: Fix group lookup for metric group (Michael Petlan) [1743210] - [tools] perf stat: Don't merge events in the same PMU (Michael Petlan) [1743210] - [tools] perf stat: Make metric event lookup more robust (Michael Petlan) [1743210] - [tools] tools lib: Move argv_{split, free} from tools/perf/util/ (Michael Petlan) [1743210] - [tools] perf tools: Drop strxfrchar(), use strreplace() equivalent from kernel (Michael Petlan) [1743210] - [tools] tools lib: Adopt strreplace() from the kernel (Michael Petlan) [1743210] - [tools] perf tools: Ditch rtrim(), use strim() from tools/lib (Michael Petlan) [1743210] - [tools] perf tools: Remove trim() implementation, use tools/lib's strim() (Michael Petlan) [1743210] - [tools] tools lib: Adopt strim() from the kernel (Michael Petlan) [1743210] - [tools] perf tools: Ditch rtrim(), use skip_spaces() to get closer to the kernel (Michael Petlan) [1743210] - [tools] perf report: Use skip_spaces() (Michael Petlan) [1743210] - [tools] perf metricgroup: Use strsep() (Michael Petlan) [1743210] - [tools] perf strfilter: Use skip_spaces() (Michael Petlan) [1743210] - [tools] perf probe: Use skip_spaces() for argv handling (Michael Petlan) [1743210] - [tools] perf time-utils: Use skip_spaces() (Michael Petlan) [1743210] - [tools] perf header: Use skip_spaces() in __write_cpudesc() (Michael Petlan) [1743210] - [tools] perf stat: Use recently introduced skip_spaces() (Michael Petlan) [1743210] - [tools] tools lib: Adopt skip_spaces() from the kernel sources (Michael Petlan) [1743210] - [tools] perf tools: Use linux/ctype.h in more places (Michael Petlan) [1743210] - [tools] tools perf: Move from sane_ctype.h obtained from git to the Linux's original (Michael Petlan) [1743210] - [tools] perf tools: Add missing util.h to pick up 'page_size' variable (Michael Petlan) [1743210] - [tools] perf tools: Remove old baggage that is util/include/linux/ctype.h (Michael Petlan) [1743210] - [tools] perf symbols: We need util.h in symbol-elf.c for zfree() (Michael Petlan) [1743210] - [tools] perf kallsyms: Adopt hex2u64 from tools/perf/util/util.h (Michael Petlan) [1743210] - [tools] tools x86 machine: Add missing util.h to pick up 'page_size' (Michael Petlan) [1743210] - [tools] perf string: Move 'dots' and 'graph_dotted_line' out of sane_ctype.h (Michael Petlan) [1743210] - [tools] perf ctype: Remove now unused 'spaces' variable (Michael Petlan) [1743210] - [tools] perf ui stdio: No need to use 'spaces' to left align (Michael Petlan) [1743210] - [tools] perf ctype: Remove unused 'graph_line' variable (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export Intel PT power and ptwrite events (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export Intel PT power and ptwrite events (Michael Petlan) [1743210] - [tools] perf db-export: Export synth events (Michael Petlan) [1743210] - [tools] perf intel-pt: Synthesize CBR events when last seen value changes (Michael Petlan) [1743210] - [tools] perf intel-pt: Add CBR value to decoder state (Michael Petlan) [1743210] - [tools] perf intel-pt: Cater for CBR change in PSB+ (Michael Petlan) [1743210] - [tools] perf intel-pt: Decoder to output CBR changes immediately (Michael Petlan) [1743210] - [tools] perf thread-stack: Eliminate code duplicating thread_stack__pop_ks() (Michael Petlan) [1743210] - [tools] perf thread-stack: Fix thread stack return from kernel for kernel-only case (Michael Petlan) [1743210] - [tools] perf tools: Fix cache.h include directive (Michael Petlan) [1743210] - [tools] tools build: Fix the zstd test in the test-all.c common case feature test (Michael Petlan) [1743210] - [tools] perf build: Handle slang being in /usr/include and in /usr/include/slang/ (Michael Petlan) [1743210] - [tools] tools build: Add test to check if slang.h is in /usr/include/slang/ (Michael Petlan) [1743210] - [tools] perf tools: Don't hardcode host include path for libslang (Michael Petlan) [1743210] - [tools] perf evsel: Make perf_evsel__name() accept a NULL argument (Michael Petlan) [1743210] - [tools] perf trace: Fixup pointer arithmetic when consuming augmented syscall args (Michael Petlan) [1743210] - [tools] perf pmu: Fix uncore PMU alias list for ARM64 (Michael Petlan) [1743210] - [tools] perf tests: Add missing SPDX headers (Michael Petlan) [1743210] - [tools] tools build feature tests: Add missing SPDX headers (Michael Petlan) [1743210] - [tools] perf trace: Streamline validation of select syscall names list (Michael Petlan) [1743210] - [tools] perf trace: Fix exclusion of not available syscall names from selector list (Michael Petlan) [1743210] - [tools] perf intel-pt: Add callchain to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add memory information to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add LBR information to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add XMM registers to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add gp registers to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Synthesize PEBS sample basic information (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out common sample preparation for re-use (Michael Petlan) [1743210] - [tools] perf intel-pt: Prepare to synthesize PEBS samples (Michael Petlan) [1743210] - [tools] perf intel-pt: Add decoder support for PEBS via PT (Michael Petlan) [1743210] - [tools] perf intel-pt: Add Intel PT packet decoder test (Michael Petlan) [1743210] - [tools] perf intel-pt: Add new packets for PEBS via PT (Michael Petlan) [1743210] - [tools] perf tests arm64: Compile tests unconditionally (Michael Petlan) [1743210] - [tools] perf trace: Skip unknown syscalls when expanding strace like syscall groups (Michael Petlan) [1743210] - [tools] perf report: Support s390 diag event display on x86 (Michael Petlan) [1743210] - [tools] perf report: Fix OOM error in TUI mode on s390 (Michael Petlan) [1743210] - [tools] perf test 6: Fix missing kvm module load for s390 (Michael Petlan) [1743210] - [tools] perf time-utils: Add support for multiple explicit time intervals (Michael Petlan) [1743210] - [tools] perf tests: Add a test for time-utils (Michael Petlan) [1743210] - [tools] perf time-utils: Make perf_time__parse_for_ranges() more logical (Michael Petlan) [1743210] - [tools] perf time-utils: Simplify perf_time__parse_for_ranges() error paths slightly (Michael Petlan) [1743210] - [tools] perf time-utils: Fix --time documentation (Michael Petlan) [1743210] - [tools] perf time-utils: Prevent percentage time range overlap (Michael Petlan) [1743210] - [tools] perf time-utils: Factor out set_percent_time() (Michael Petlan) [1743210] - [tools] perf time-utils: Treat time ranges consistently (Michael Petlan) [1743210] - [tools] perf intel-pt: Add support for efficient time interval filtering (Michael Petlan) [1743210] - [tools] perf intel-pt: Add support for lookahead (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_get_buffer() (Michael Petlan) [1743210] - [tools] perf intel-pt: Add intel_pt_fast_forward() (Michael Petlan) [1743210] - [tools] perf intel-pt: Add reposition parameter to intel_pt_get_data() (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_reposition() (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_8b_tsc() (Michael Petlan) [1743210] - [tools] perf intel-pt: Add lookahead callback (Michael Petlan) [1743210] - [tools] perf report: Set perf time interval in itrace_synth_ops (Michael Petlan) [1743210] - [tools] perf script: Set perf time interval in itrace_synth_ops (Michael Petlan) [1743210] - [tools] perf auxtrace: Add perf time interval to itrace_synth_ops (Michael Petlan) [1743210] - [tools] perf config: Update default value for llvm.clang-bpf-cmd-template (Michael Petlan) [1743210] - [tools] perf cs-etm: Properly set the value of 'old' and 'head' in snapshot mode (Michael Petlan) [1743210] - [tools] perf data: Fix perf.data documentation for HEADER_CPU_TOPOLOGY (Michael Petlan) [1743210] - [tools] perf tools: Apply new CPU topology sysfs attributes (Michael Petlan) [1743210] - [tools] perf header: Rename "sibling cores" to "sibling sockets" (Michael Petlan) [1743210] - [tools] perf stat: Support per-die aggregation (Michael Petlan) [1743210] - [tools] perf header: Add die information in CPU topology (Michael Petlan) [1743210] - [tools] perf cpumap: Retrieve die id information (Michael Petlan) [1743210] - [tools] perf evsel: Remove superfluous nthreads system_wide setup in alloc_fd() (Michael Petlan) [1743210] - [tools] perf record: Add support to collect callchains from kernel or user space only (Michael Petlan) [1743210] - [tools] perf config: Bail out when a handler returns failure for a key-value pair (Michael Petlan) [1743210] - [tools] perf trace: Exit when failing to build eBPF program (Michael Petlan) [1743210] - [tools] perf trace: Associate more argument names with the filename beautifier (Michael Petlan) [1743210] - [tools] perf trace: Consume the augmented_raw_syscalls payload (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Move reading filename to the loop (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Change helper to consider just the augmented_filename part (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Move the probe_read_str to a separate function (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Tell which args are filenames and how many bytes to copy (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Select find text when find bar is activated (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add IPC information to Call Tree (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add IPC information to Call Graph Graph (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add CallGraphModelParams (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add IPC information to the Branch reports (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export IPC information (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export IPC information (Michael Petlan) [1743210] - [tools] perf db-export: Export IPC information (Michael Petlan) [1743210] - [tools] perf db-export: Add brief documentation (Michael Petlan) [1743210] - [tools] perf thread-stack: Accumulate IPC information (Michael Petlan) [1743210] - [tools] perf intel-pt: Document IPC usage (Michael Petlan) [1743210] - [tools] perf intel-pt: Accumulate cycle count from TSC/TMA/MTC packets (Michael Petlan) [1743210] - [tools] perf intel-pt: Re-factor TIP cases in intel_pt_walk_to_ip (Michael Petlan) [1743210] - [tools] perf intel-pt: Record when decoding PSB+ packets (Michael Petlan) [1743210] - [tools] perf script: Add output of IPC ratio (Michael Petlan) [1743210] - [tools] perf intel-pt: Add support for samples to contain IPC ratio (Michael Petlan) [1743210] - [tools] perf tools: Add IPC information to perf_sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Accumulate cycle count from CYC packets (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_update_sample_time (Michael Petlan) [1743210] - [tools] perf record: Allow mixing --user-regs with --call-graph=dwarf (Michael Petlan) [1743210] - [tools] perf symbols: Remove unused variable 'err' (Michael Petlan) [1743210] - [tools] perf data: document directory format header: HEADER_DIR_FORMAT (Michael Petlan) [1743210] - [tools] perf data: document clockid header: HEADER_CLOCKID (Michael Petlan) [1743210] - [tools] perf data: document memory topology header: HEADER_MEM_TOPOLOGY (Michael Petlan) [1743210] - [tools] perf data: Add description of header HEADER_BPF_PROG_INFO and HEADER_BPF_BTF (Michael Petlan) [1743210] - [tools] perf intel-pt: Rationalize intel_pt_sync_switch()'s use of next_tid (Michael Petlan) [1743210] - [tools] perf intel-pt: Improve sync_switch by processing PERF_RECORD_SWITCH* in events (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Add support for pyside2 (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Add support for pyside2 (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add support for pyside2 (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Use argparse module for argument parsing (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Change python2 to python (Michael Petlan) [1743210] - [tools] perf top: Lower message level for failure on synthesizing events for pre-existing BPF programs (Michael Petlan) [1743210] - [tools] perf machine: Return NULL instead of null-terminating /proc/version array (Michael Petlan) [1743210] - [tools] perf version: Append 12 git SHA chars to the version string (Michael Petlan) [1743210] - [tools] perf script: Remove superfluous BPF event titles (Michael Petlan) [1743210] - [tools] perf script: Add --show-bpf-events to show eBPF related events (Michael Petlan) [1743210] - [tools] perf tests: Add map_groups__merge_in test (Michael Petlan) [1743210] - [tools] perf script: Pad DSO name for --call-trace (Michael Petlan) [1743210] - [tools] perf dso: Add BPF DSO read and size hooks (Michael Petlan) [1743210] - [tools] perf dso: Simplify dso_cache__read function (Michael Petlan) [1743210] - [tools] perf dso: Separate generic code in dso_cache__read (Michael Petlan) [1743210] - [tools] perf dso: Separate generic code in dso__data_file_size() (Michael Petlan) [1743210] - [tools] perf tools: Remove const from thread read accessors (Michael Petlan) [1743210] - [tools] perf top: Add --namespaces option (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for sync_file_range's 'flags' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'fsmount' arguments (Michael Petlan) [1743210] - [tools] perf trace: Introduce syscall_arg__scnprintf_strarray_flags (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for fsmount's 'attr_flags' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'fsconfig' arguments (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for fsconfig's 'cmd' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'fspick' arguments (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for fspick's 'flags' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'move_mount' arguments (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for 'move_mount' flags argument (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Fix up comment (Michael Petlan) [1743210] - [tools] perf tools: Preserve eBPF maps when loading kcore (Michael Petlan) [1743210] - [tools] perf machine: Keep zero in pgoff BPF map (Michael Petlan) [1743210] - [tools] perf intel-pt: Fix itrace defaults for perf script intel-pt documentation (Michael Petlan) [1743210] - [tools] perf auxtrace: Fix itrace defaults for perf script (Michael Petlan) [1743210] - [tools] perf intel-pt: Fix itrace defaults for perf script (Michael Petlan) [1743210] - [tools] perf-with-kcore.sh: Always allow fix_buildid_cache_permissions (Michael Petlan) [1743210] - [tools] tools build: Check if gettid() is available before providing helper (Michael Petlan) [1743210] - [tools] tools build feature: Check if get_current_dir_name() is available (Michael Petlan) [1743210] - [tools] perf jvmti: Address gcc string overflow warning for strncpy() (Michael Petlan) [1743210] - [tools] perf python: Remove -fstack-protector-strong if clang doesn't have it (Michael Petlan) [1743210] - [tools] perf annotate tui browser: Do not use member from variable within its own initialization (Michael Petlan) [1743210] - [tools] perf thread: Allow references to thread objects after machine__exit() (Michael Petlan) [1743210] - [fs] sysfs: Fix internal_create_group() for named group updates (Michael Petlan) [1743210] - [x86] perf/x86/intel: Support PEBS output to PT (Michael Petlan) [1743210] - [kernel] perf: Allow normal events to output AUX data (Michael Petlan) [1743210] - [x86] perf/x86/amd/ibs: Handle erratum #420 only on the affected CPU family (10h) (Michael Petlan) [1743210] - [x86] perf/x86/amd/ibs: Fix reading of the IBS OpData register and thus precise RIP validity (Michael Petlan) [1743210] - [kernel] perf/hw_breakpoint: Fix arch_hw_breakpoint use-before-initialization (Michael Petlan) [1743210] - [x86] perf/x86/amd/ibs: Fix sample bias for dispatched micro-ops (Michael Petlan) [1743210] - [x86] perf/x86/intel: Restrict period on Nehalem (Michael Petlan) [1743210] - [x86] perf/x86: Fix typo in comment (Michael Petlan) [1743210] - [kernel] perf/core: Fix creating kernel counters for PMUs that override event->cpu (Michael Petlan) [1743210] - [x86] perf/x86: Apply more accurate check on hypervisor platform (Michael Petlan) [1743210] - [x86] perf/x86/intel: Fix invalid Bit 13 for Icelake MSR_OFFCORE_RSP_x register (Michael Petlan) [1743210] - [x86] perf/x86/intel: Fix SLOTS PEBS event constraint (Michael Petlan) [1743210] - [x86] perf/x86/intel: Mark expected switch fall-throughs (Michael Petlan) [1743210] - [kernel] perf_event_get(): don't bother with fget_raw() (Michael Petlan) [1743210] - [kernel] perf/core: Fix exclusive events' grouping (Michael Petlan) [1743210] - [x86] perf/x86/amd/uncore: Set the thread mask for F17h L3 PMCs (Michael Petlan) [1743210] - [perf] x86/amd/uncore: Do not set 'ThreadMask' and 'SliceMask' for non-L3 PMCs (Michael Petlan) [1743210] - [kernel] perf/core: Fix race between close() and fork() (Michael Petlan) [1743210] - [perf] cgroups: Don't rotate events for cgroups unnecessarily (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get quirk state from new probe framework (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get attributes from new probe framework (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get MSR values from new probe framework (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get rapl_cntr_mask from new probe framework (Michael Petlan) [1743210] - [x86] intel: Aggregate big core client naming (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Use new MSR detection interface (Michael Petlan) [1743210] - [x86] perf/x86/cstate: Use new probe function (Michael Petlan) [1743210] - [x86] perf/x86/msr: Use new probe function (Michael Petlan) [1743210] - [x86] perf/x86: Add MSR probe interface (Michael Petlan) [1743210] - [x86] perf/x86/intel: Disable check_msr for real HW (Michael Petlan) [1743210] - [x86] perf/x86/intel: Use ->is_visible callback for default group (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add IMC uncore support for Snow Ridge (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Clean up client IMC (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Support MMIO type uncore blocks (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Factor out box ref/unref functions (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add uncore support for Snow Ridge server (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Handle invalid event coding for free-running counter (Michael Petlan) [1743210] - [x86] perf/x86/intel: Add more Icelake CPUIDs (Michael Petlan) [1743210] - [x86] perf/x86/intel: Add Icelake desktop CPUID (Michael Petlan) [1743210] - [x86] perf/x86: Use update attribute groups for default attributes (Michael Petlan) [1743210] - [x86] perf/x86/intel: Use update attributes for skylake format (Michael Petlan) [1743210] - [x86] perf/x86: Use update attribute groups for extra format (Michael Petlan) [1743210] - [x86] perf/x86: Use update attribute groups for caps (Michael Petlan) [1743210] - [x86] perf/x86: Add is_visible attribute_group callback for base events (Michael Petlan) [1743210] - [x86] perf/x86: Use the new pmu::update_attrs attribute group (Michael Petlan) [1743210] - [x86] perf/x86: Get rid of x86_pmu::event_attrs (Michael Petlan) [1743210] - [x86] perf/x86/regs: Check reserved bits (Michael Petlan) [1743210] - [fs] sysfs: Add sysfs_update_groups function (Michael Petlan) [1743210] - [kernel] perf/core: Add attr_groups_update into struct pmu (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add new IMC PCI IDs for KabyLake, AmberLake and WhiskeyLake CPUs (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add tabs to Uncore IMC PCI IDs (Michael Petlan) [1743210] - [kernel] perf/core: Allow non-privileged uprobe for user processes (Michael Petlan) [1743210] - [x86] perf/x86: Add Intel Ice Lake NNPI uncore support (Michael Petlan) [1743210] - [perf] arm_pmu: acpi: spe: Add initial MADT/SPE probing (Michael Petlan) [1743210] - [netdrv] mwifiex: fix possible heap overflow in mwifiex_process_country_ie() (Jarod Wilson) [1776210] {CVE-2019-14895} - [kernel] crash_core: Make S390 share the same crashkernel=auto reservation policy as X86_64 (Baoquan He) [1780432] - [s390] kasan: avoid report in get_wchan (Philipp Rudo) [1780112 1780111] - [s390] process: avoid potential reading of freed stack (Philipp Rudo) [1780112] - [fs] cifs: don't use 'pre:' for MODULE_SOFTDEP (Leif Sahlberg) [1767094] - [hwmon] Do not output deprecated warning for hwmon_device_register() (Prarit Bhargava) [1778295] - [scsi] lpfc: size cpu map by last cpu id set (Dick Kennedy) [1778912] - [scsi] lpfc: use hdwq assigned cpu for allocation (Dick Kennedy) [1778908] - [scsi] be2iscsi: Include null char in SET_HOST_DATA (Maurizio Lombardi) [1776358] - [netdrv] vmxnet3: turn off lro when rxcsum is disabled (Neil Horman) [1776056] - [mmc] sdhci-pci: Add another Id for Intel CML (Alexander Beregalov) [1766718] - [x86] kvm: untaint kernel for tech-preview when using nested VMX (Paolo Bonzini) [1726756] - [powerpc] kvm: ppc: book3s hv: xive: Fix potential page leak on error path (Laurent Vivier) [1760202] - [powerpc] kvm: ppc: book3s hv: xive: Free previous EQ page when setting up a new one (Laurent Vivier) [1760202] - [virt] kvm: arm/arm64: vgic: Don't rely on the wrong pending table (Auger Eric) [1777059] - [x86] kvm: x86: remove set but not used variable 'called' (Nitesh Narayan Lal) [1773677] - [x86] kvm: x86: Zero the IOAPIC scan request dest vCPUs bitmap (Nitesh Narayan Lal) [1773677] - [x86] kvm: x86: deliver KVM IOAPIC scan request to target vCPUs (Nitesh Narayan Lal) [1773677] - [kernel] kvm: remember position in kvm->vcpus array (Nitesh Narayan Lal) [1773677] - [kernel] watchdog: Reduce message verbosity (Vitaly Kuznetsov) [1774915]- [fs] binfmt_elf: Do not move brk for INTERP-less ET_EXEC (Waiman Long) [1749633] - [fs] binfmt_elf: move brk out of mmap when doing direct loader exec (Waiman Long) [1749633] - [gpu] drm/i915/cmdparser: Fix jump whitelist clearing (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915/gen8+: Add RC6 CTX corruption WA (Dave Airlie) [1756805] {CVE-2019-0154} - [gpu] drm/i915: Lower RM timeout to avoid DSI hard hangs (Dave Airlie) [1756805] {CVE-2019-0154} - [gpu] drm/i915/cmdparser: Ignore Length operands during command matching (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915/cmdparser: Add support for backward jumps (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915/cmdparser: Use explicit goto for error paths (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Add gen9 BCS cmdparsing (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Allow parsing of unsized batches (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Support ro ppgtt mapped cmdparser shadow buffers (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Add support for mandatory cmdparsing (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Remove Master tables from cmdparser (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Disable Secure Batches for gen6+ (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Rename gen7 cmdparser tables (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] [drm] radeon: fix bad DMA from INTERRUPT_CNTL2 (Sam Bobroff) [1293697] - [netdrv] mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame() (Jarod Wilson) [1776162] {CVE-2019-14901} - [netdrv] mlx4_en: Fix wrong limitation for number of TX rings (Mohammad Heib) [1776822] - [netdrv] mlx4_en: fix mlx4 ethtool -N insertion (Mohammad Heib) [1776822] - [netdrv] mlx4_core: fix wrong comment about the reason of subtract one from the max_cqes (Mohammad Heib) [1776822] - [netdrv] ibmvnic: Serialize device queries (Steve Best) [1778037] - [netdrv] ibmvnic: Bound waits for device queries (Steve Best) [1778037] - [netdrv] ibmvnic: Terminate waiting device threads after loss of service (Steve Best) [1778037] - [netdrv] ibmvnic: Fix completion structure initialization (Steve Best) [1778037] - [netdrv] ibmvnic: Ignore H_FUNCTION return from H_EOI to tolerate XIVE mode (Steve Best) [1778037] - [netdrv] revert "net/ibmvnic: Fix EOI when running in XIVE mode" (Steve Best) [1778037] - [netdrv] cnic: Set fp_hsi_ver as part of CLIENT_SETUP ramrod (Manish Chopra) [1770797] - [netdrv] bnx2x: Fix PF-VF communication over multi-cos queues (Manish Chopra) [1770797] - [netdrv] bnx2x: Enable Multi-Cos feature (Manish Chopra) [1770797] - [netdrv] bnx2x: Utilize FW 7.13.15.0 (Manish Chopra) [1770797] - [fs] seq_file: fix problem when seeking mid-record (Bill O'Donnell) [1753822] - [documentation] fs/seq_file.c: simplify seq_file iteration code and interface (Bill O'Donnell) [1753822] - [scripts] kbuild: replace BASH-specific ${@:2} with shift and ${@} (Jiri Olsa) [1739493] - [scripts] btf: do not use CONFIG_OUTPUT_FORMAT (Jiri Olsa) [1739493] - [kernel] btf: fix return value check in btf_vmlinux_init() (Jiri Olsa) [1739493] - [kernel] btf: rename /sys/kernel/btf/kernel into /sys/kernel/btf/vmlinux (Jiri Olsa) [1739493] - [scripts] btf: expose BTF info through sysfs (Jiri Olsa) [1739493] - [netdrv] qede: fix NULL pointer deref in __qede_remove() (Manish Chopra) [1769203] - [gpu] cleanup: Remove .rej files (Prarit Bhargava) [1779738] - [lib] string: Add strscpy_pad() function (Josef Oskera) [1764588] - [char] virtio_console: allocate inbufs in add_port() only if it is needed (Pankaj Gupta) [1612795] - [fs] xfs: add kmem_alloc_io() (Bill O'Donnell) [1583556] - [fs] xfs: make mem_to_page available outside of xfs_buf.c (Bill O'Donnell) [1583556] - [fs] xfs: get allocation alignment from the buftarg (Bill O'Donnell) [1583556] - [fs] xfs: add kmem_alloc_io() (Bill O'Donnell) [1583556] - [fs] cifs: Fix cifsInodeInfo lock_sem deadlock when reconnect occurs (Leif Sahlberg) [1765979] - [fs] cifs: avoid using MID 0xFFFF (Leif Sahlberg) [1765979] - [fs] cifs: Fix retry mid list corruption on reconnects (Leif Sahlberg) [1765979] - [fs] nfsd: allow fh_want_write to be called twice ("J. Bruce Fields") [1699222] - [net] revert "sunrpc: Fix up task signalling" (Dave Wysochanski) [1776067] - [s390] kasan: support memcpy_real with TRACE_IRQFLAGS (Philipp Rudo) [1777468] - [s390] kasan: add kdump support (Philipp Rudo) [1777468] - [s390] idle: fix cpu idle time calculation (Philipp Rudo) [1777361] - [s390] kaslr: add support for R_390_GLOB_DAT relocation type (Philipp Rudo) [1777467] - [x86] jump_label: Make tp_vec_nr static (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Batch jump label updates (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Batch updates if arch supports it (Daniel Bristot de Oliveira) [1731860] - [x86] alternative: Batch of patch operations (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Sort entries of the same key by the code (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Add a __jump_label_set_jump_code() helper (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Don't warn on __exit jump entries (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Add a jump_label_can_update() helper (Daniel Bristot de Oliveira) [1731860] - [x86] alternatives: Remove the return value of text_poke_*() (Daniel Bristot de Oliveira) [1731860] - [x86] jump-label: Remove support for custom text poker (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Use text_poke_early() during early init (Daniel Bristot de Oliveira) [1731860] - [x86] alternatives: Add text_poke_kgdb() to not assert the lock when debugging (Daniel Bristot de Oliveira) [1731860] - [x86] kprobes: Prohibit probing on functions before kprobe_int3_handler() (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Fix NULL dereference bug in __jump_label_mod_update() (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Annotate entries that operate on __init code earlier (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Switch to jump_entry accessors (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Implement generic support for relative references (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Abstract jump_entry member accessors (Daniel Bristot de Oliveira) [1731860] - [x86] alternatives: Lockdep-enforce text_mutex in text_poke*() (Daniel Bristot de Oliveira) [1731860] - [x86] revert "x86/paravirt: Set up the virt_spin_lock_key after static keys get initialized" (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Initialize static branching early (Vitaly Kuznetsov) [1777260] - [x86] speculation: Fix redundant MDS mitigation message (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation: Fix incorrect MDS/TAA mitigation status (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation/taa: Fix printing of TAA_MSG_SMT on IBRS_ALL CPUs (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] tsx: Add config options to set tsx=on|off|auto (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [documentation] x86/speculation/taa: Add documentation for TSX Async Abort (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] tsx: Add "auto" option to the tsx= cmdline parameter (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation/taa: Add sysfs reporting for TSX Async Abort (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation/taa: Add mitigation for TSX Async Abort (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] cpu: Add a "tsx=" cmdline option with TSX disabled by default (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] cpu: Add a helper function x86_read_arch_cap_msr() (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] msr: Add the IA32_TSX_CTRL MSR (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [powerpc] xive: Prevent page fault issues in the machine crash handler (Diego Domingos) [1756116] - [tools] Fix memcpy_mcsafe_64.S link on selftests (Desnes Augusto Nunes do Rosario) [1775570]- [powerpc] perf: Fix loop exit condition in nest_imc_event_init (Steve Best) [1778609] - [net] netfilter: nf_tables: Add missing nft_tproxy Makefile line (Phil Sutter) [1762977]- [x86] kdump: Remove the backup region handling (Lianbo Jiang) [1730143] - [x86] kdump: Always reserve the low 1M when the crashkernel option is specified (Lianbo Jiang) [1730143] - [x86] crash: Add a forward declaration of struct kimage (Lianbo Jiang) [1730143] - [x86] kdump: Remove the unused crash_copy_backup_region() (Lianbo Jiang) [1730143] - [pci] p2pdma: Fix missing check for dma_virt_ops (Don Dutile) [1754734] - [pci] p2pdma: use the dev_pagemap internal refcount (Don Dutile) [1754734] - [pci] memremap: pass a struct dev_pagemap to ->kill and ->cleanup (Don Dutile) [1754734] - [pci] memremap: move dev_pagemap callbacks into a separate structure (Don Dutile) [1754734] - [pci] mm/devm_memremap_pages: fix final page put race (Don Dutile) [1754734] - [pci] p2pdma: track pgmap references per resource, not globally (Don Dutile) [1754734] - [pci] p2pdma: fix the gen_pool_add_virt() failure path (Don Dutile) [1754734] - [pci] mm, hmm: mark hmm_devmem_{add, add_resource} EXPORT_SYMBOL_GPL (Don Dutile) [1754734] - [lib] genalloc.c: Add algorithm, align and zeroed family of DMA allocators (Don Dutile) [1754732] - [lib] genalloc.c: include vmalloc.h (Don Dutile) [1754732] - [lib] genalloc.c: use vzalloc_node() to allocate the bitmap (Don Dutile) [1754732] - [md] dm table: propagate BDI_CAP_STABLE_WRITES to fix sporadic checksum errors (Mike Snitzer) [1770210] - [fs] gfs2: fix race between gfs2_freeze_func and unmount (Abhijith Das) [1676972] - [fs] cifs: smbd: Retry on memory registration failure (Leif Sahlberg) [1771772] - [fs] cifs: smbd: Indicate to retry on transport sending failure (Leif Sahlberg) [1771772] - [fs] cifs: smbd: Return EINTR when interrupted (Leif Sahlberg) [1771772] - [fs] cifs: smbd: Don't destroy transport on RDMA disconnect (Leif Sahlberg) [1771772] - [lib] crc-t10dif: crc_t10dif_mutex can be static (Vladis Dronov) [1769462] - [lib] crc-t10dif: Allow current transform to be inspected in sysfs (Vladis Dronov) [1769462] - [lib] crc-t10dif: Pick better transform if one becomes available (Vladis Dronov) [1769462] - [crypto] api - Introduce notifier for new crypto algorithms (Vladis Dronov) [1769462] - [netdrv] e1000e: Drop unnecessary __E1000_DOWN bit twiddling (Ken Cox) [1748256] - [netdrv] e1000e: Use rtnl_lock to prevent race conditions between net and pci/pm (Ken Cox) [1748256]- [powerpc] pseries: safely roll back failed DLPAR cpu add (Steve Best) [1772341] - [powerpc] pseries: address checkpatch warnings in dlpar_offline_cpu (Steve Best) [1772341] - [scsi] storvsc: setup 1:1 mapping between hardware queue and CPU queue (Cathy Avery) [1771503] - [scsi] storvsc: Add ability to change scsi queue depth (Cathy Avery) [1771503] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 320 (Cathy Avery) [1771503] - [scsi] smartpqi: bump version (Don Brace) [1725045] - [scsi] smartpqi: Align driver syntax with oob (Don Brace) [1725045] - [scsi] smartpqi: remove unused manifest constants (Don Brace) [1725045] - [scsi] smartpqi: fix problem with unique ID for physical device (Don Brace) [1725045] - [scsi] smartpqi: correct syntax issue (Don Brace) [1725045] - [scsi] smartpqi: change TMF timeout from 60 to 30 seconds (Don Brace) [1725045] - [scsi] smartpqi: fix LUN reset when fw bkgnd thread is hung (Don Brace) [1725045] - [scsi] smartpqi: add inquiry timeouts (Don Brace) [1725045] - [scsi] smartpqi: fix call trace in device discovery (Don Brace) [1725045] - [scsi] smartpqi: fix controller lockup observed during force reboot (Don Brace) [1725045] - [scsi] smartpqi: clean up an indentation issue (Don Brace) [1725045] - [scsi] smartpqi: remove set but not used variable 'ctrl_info' (Don Brace) [1725045] - [scsi] smartpqi: clean up indentation of a statement (Don Brace) [1725045] - [scsi] smartpqi: bump version (Don Brace) [1725045] - [scsi] smartpqi: update copyright (Don Brace) [1725045] - [scsi] smartpqi: add new pci ids (Don Brace) [1725045] - [scsi] smartpqi: correct REGNEWD return status (Don Brace) [1725045] - [scsi] smartpqi: add gigabyte controller (Don Brace) [1725045] - [scsi] smartpqi: correct hang when deleting 32 lds (Don Brace) [1725045] - [scsi] smartpqi: add bay identifier (Don Brace) [1725045] - [scsi] smartpqi: add sysfs entries (Don Brace) [1725045] - [scsi] smartpqi: add module param to hide vsep (Don Brace) [1725045] - [scsi] smartpqi: add pci ids for fiberhome controller (Don Brace) [1725045] - [scsi] smartpqi: add module param for exposure order (Don Brace) [1725045] - [scsi] smartpqi: unlock on error in pqi_submit_raid_request_synchronous() (Don Brace) [1725045] - [scsi] smartpqi: Reporting unhandled SCSI errors (Don Brace) [1725045] - [scsi] mpt3sas: Bump mpt3sas driver version to 32.100.00.00 (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fix module parameter max_msix_vectors (Tomas Henzl) [1725737] - [scsi] mpt3sas: Reject NVMe Encap cmnds to unsupported HBA (Tomas Henzl) [1725737] - [scsi] mpt3sas: Use Component img header to get Package ver (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fail release cmnd if diag buffer is released (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add app owned flag support for diag buffer (Tomas Henzl) [1725737] - [scsi] mpt3sas: Reuse diag buffer allocated at load time (Tomas Henzl) [1725737] - [scsi] mpt3sas: clear release bit when buffer reregistered (Tomas Henzl) [1725737] - [scsi] mpt3sas: Maintain owner of buffer through UniqueID (Tomas Henzl) [1725737] - [scsi] mpt3sas: Free diag buffer without any status check (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fix clear pending bit in ioctl status (Tomas Henzl) [1725737] - [scsi] mpt3sas: Display message before releasing diag buffer (Tomas Henzl) [1725737] - [scsi] mpt3sas: Register trace buffer based on NVDATA settings (Tomas Henzl) [1725737] - [scsi] mpt3sas: Introduce module parameter to override queue depth (Tomas Henzl) [1725737] - [scsi] mpt3sas: Update driver version to 31.100.00.00 (Tomas Henzl) [1725737] - [scsi] mpt3sas: Run SAS DEVICE STATUS CHANGE EVENT from ISR (Tomas Henzl) [1725737] - [scsi] mpt3sas: Reduce the performance drop (Tomas Henzl) [1725737] - [scsi] mpt3sas: Handle fault during HBA initialization (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add sysfs to know supported features (Tomas Henzl) [1725737] - [scsi] mpt3sas: Support MEMORY MOVE Tool box command (Tomas Henzl) [1725737] - [scsi] mpt3sas: Allow ioctls to blocked access status NVMe (Tomas Henzl) [1725737] - [scsi] mpt3sas: Enumerate SES of a managed PCIe switch (Tomas Henzl) [1725737] - [scsi] mpt3sas: Update MPI headers to 2.6.8 spec (Tomas Henzl) [1725737] - [scsi] mpt3sas: Gracefully handle online firmware update (Tomas Henzl) [1725737] - [scsi] mpt3sas: memset request frame before reusing (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add support for PCIe Lane margin (Tomas Henzl) [1725737] - [scsi] mpt3sas: support target smid for [abort|query] task (Tomas Henzl) [1725737] - [scsi] mpt3sas: clean up a couple sizeof() uses (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fix msix load balance on and off settings (Tomas Henzl) [1725737] - [scsi] mpt3sas: Determine smp affinity on per HBA basis (Tomas Henzl) [1725737] - [scsi] mpt3sas: Use configured PCIe link speed, not max (Tomas Henzl) [1725737] - [scsi] mpt3sas: Remove CPU arch check to determine perf_mode (Tomas Henzl) [1725737] - [scsi] mpt3sas: use DEVICE_ATTR_{RO, RW} (Tomas Henzl) [1725737] - [scsi] mpt3sas: make driver options visible in sys (Tomas Henzl) [1725737] - [scsi] mpt3sas: Mark expected switch fall-through (Tomas Henzl) [1725737] - [scsi] mpt3sas: Update driver version to 29.100.00.00 (Tomas Henzl) [1725737] - [scsi] mpt3sas: Introduce perf_mode module parameter (Tomas Henzl) [1725737] - [scsi] mpt3sas: Enable interrupt coalescing on high iops (Tomas Henzl) [1725737] - [scsi] mpt3sas: Affinity high iops queues IRQs to local node (Tomas Henzl) [1725737] - [scsi] mpt3sas: save and use MSI-X index for posting RD (Tomas Henzl) [1725737] - [scsi] mpt3sas: Use high iops queues under some circumstances (Tomas Henzl) [1725737] - [scsi] mpt3sas: change _base_get_msix_index prototype (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add flag high_iops_queues (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add Atomic RequestDescriptor support on Aero (Tomas Henzl) [1725737] - [scsi] mpt3sas: function pointers of request descriptor (Tomas Henzl) [1725737] - [scsi] mpt3sas_ctl: fix double-fetch bug in _ctl_ioctl_main() (Tomas Henzl) [1725737] - [md] revert "dm crypt: use WQ_HIGHPRI for the IO and crypt workqueues" (Mike Snitzer) [1775756] - [md] dm thin: wakeup worker only when deferred bios exist (Mike Snitzer) [1775756] - [md] dm raid: Remove unnecessary negation of a shift in raid10_format_to_md_layout (Mike Snitzer) [1775756] - [md] dm writecache: handle REQ_FUA (Mike Snitzer) [1775756] - [md] dm writecache: fix uninitialized variable warning (Mike Snitzer) [1775756] - [md] dm stripe: use struct_size() in kmalloc() (Mike Snitzer) [1775756] - [md] dm table: do not allow request-based DM to stack on partitions (Mike Snitzer) [1775756] - [md] dm cache: fix bugs when a GFP_NOWAIT allocation fails (Mike Snitzer) [1775756] - [md] dm writecache: skip writecache_wait for pmem mode (Mike Snitzer) [1775756] - [md] dm stats: use struct_size() helper (Mike Snitzer) [1775756] - [md] dm space map common: remove check for impossible sm_find_free() return value (Mike Snitzer) [1775756] - [md] dm raid1: use struct_size() with kzalloc() (Mike Snitzer) [1775756] - [md] dm writecache: optimize performance by sorting the blocks for writeback_all (Mike Snitzer) [1775756] - [md] dm writecache: add unlikely for getting two block with same LBA (Mike Snitzer) [1775756] - [md] dm writecache: remove unused member pointer in writeback_struct (Mike Snitzer) [1775756] - [md] dm: make dm_table_find_target return NULL (Mike Snitzer) [1775756] - [md] dm table: fix invalid memory accesses with too high sector number (Mike Snitzer) [1775756] - [md] dm space map metadata: fix missing store of apply_bops() return value (Mike Snitzer) [1775756] - [md] dm btree: fix order of block initialization in btree_split_beneath (Mike Snitzer) [1775756] - [md] dm raid: add missing cleanup in raid_ctr() (Mike Snitzer) [1775756] - [md] dm kcopyd: always complete failed jobs (Mike Snitzer) [1775756] - [md] dm crypt: remove obsolete comment about plumb IV (Mike Snitzer) [1775756] - [md] dm crypt: wipe private IV struct after key invalid flag is set (Mike Snitzer) [1775756] - [md] dm: update stale comment in end_clone_bio() (Mike Snitzer) [1775756] - [md] dm log writes: fix incorrect comment about the logged sequence example (Mike Snitzer) [1775756] - [md] dm log writes: use struct_size() to calculate size of pending_block (Mike Snitzer) [1775756] - [md] dm crypt: use struct_size() when allocating encryption context (Mike Snitzer) [1775756] - [md] dm thin metadata: check if in fail_io mode when setting needs_check (Mike Snitzer) [1775756] - [md] dm verity: use message limit for data block corruption message (Mike Snitzer) [1775756] - [md] dm log writes: make sure super sector log updates are written in order (Mike Snitzer) [1775756] - [md] dm: fix a couple brace coding style issues (Mike Snitzer) [1775756] - [md] dm crypt: print device name in integrity error message (Mike Snitzer) [1775756] - [documentation] dm integrity: update documentation (Mike Snitzer) [1775756] - [md] dm integrity: don't report unused options (Mike Snitzer) [1775756] - [md] dm integrity: don't check null pointer before kvfree and vfree (Mike Snitzer) [1775756] - [md] dm integrity: correctly calculate the size of metadata area (Mike Snitzer) [1775756] - [md] dm mpath: always free attached_handler_name in parse_path() (Mike Snitzer) [1775756] - [md] dm writecache: avoid unnecessary lookups in writecache_find_entry() (Mike Snitzer) [1775756] - [md] dm writecache: remove unused member page_offset in writeback_struct (Mike Snitzer) [1775756] - [md] dm delay: fix a crash when invalid device is specified (Mike Snitzer) [1775756] - [md] dm: only initialize md->dax_dev if CONFIG_DAX_DRIVER is enabled (Mike Snitzer) [1775756] - [md] dm writecache: add unlikely for returned value of rb_next_prev (Mike Snitzer) [1775756] - [md] dm writecache: remove needless dereferences in __writecache_writeback_pmem() (Mike Snitzer) [1775756] - [md] dm crypt: fix endianness annotations around org_sector_of_dmreq (Mike Snitzer) [1775756] - [md] dm integrity: fix deadlock with overlapping I_O (Mike Snitzer) [1775756] - [md] dm: disable DISCARD if the underlying storage no longer supports it (Mike Snitzer) [1775756] - [md] dm: revert 8f50e358153d ("dm: limit the max bio size as BIO_MAX_PAGES * PAGE_SIZE") (Mike Snitzer) [1775756] - [md] dm integrity: make dm_integrity_init and dm_integrity_exit static (Mike Snitzer) [1775756] - [md] dm integrity: change memcmp to strncmp in dm_integrity_ctr (Mike Snitzer) [1775756] - [x86] platform/uv: Account for UV Hubless in is_uvX_hub Ops (Frank Ramsay) [1757510] - [x86] platform/uv: Check EFI Boot to set reboot type (Frank Ramsay) [1757510] - [x86] platform/uv: Decode UVsystab Info (Frank Ramsay) [1757510] - [x86] platform/uv: Add UV Hubbed/Hubless Proc FS Files (Frank Ramsay) [1757510] - [x86] platform/uv: Setup UV functions for Hubless UV Systems (Frank Ramsay) [1757510] - [x86] platform/uv: Add return code to UV BIOS Init function (Frank Ramsay) [1757510] - [x86] platform/uv: Return UV Hubless System Type (Frank Ramsay) [1757510] - [x86] platform/uv: Save OEM_ID from ACPI MADT probe (Frank Ramsay) [1757510] - [x86] mm: Handle physical-virtual alignment mismatch in phys_p4d_init() (Baoquan He) [1685383] - [x86] mm/kaslr: Reduce randomization granularity for 5-level paging to 1GB (Baoquan He) [1685383] - [x86] mm/kaslr: Use only one PUD entry for real mode trampoline (Baoquan He) [1685383] - [documentation] documentation/stackprotector: powerpc supports stack protector (Bhupesh Sharma) [1714310] - [makefile] kbuild: mark prepare0 as PHONY to fix external module build (Bhupesh Sharma) [1714310] - [makefile] kbuild: fix single target build for external module (Bhupesh Sharma) [1714310] - [arm64] enable per-task stack canaries (Bhupesh Sharma) [1714310] - [powerpc] Fix stack protector crashes on CPU hotplug (Bhupesh Sharma) [1714310] - [powerpc] 64: properly initialise the stackprotector canary on SMP (Bhupesh Sharma) [1714310] - [powerpc] Fix stackprotector detection for non-glibc toolchains (Bhupesh Sharma) [1714310] - [powerpc] 64: add stack protector support (Bhupesh Sharma) [1714310] - [powerpc] 32: add stack protector support (Bhupesh Sharma) [1714310] - [pci] vmd: Fix shadow offsets to reflect spec changes (Myron Stowe) [1757896] - [pci] vmd: Fix config addressing when using bus offsets (Myron Stowe) [1757896] - [pci] Fix typos and whitespace errors (Myron Stowe) [1757896] - [pci] vmd: use the proper dma_* APIs instead of direct methods calls (Myron Stowe) [1757896] - [powerpc] powernv: Disable native PCIe port management (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix eeh eeh_debugfs_break_device() with SRIOV devices (Gustavo Duarte) [1524642] - [tools] selftests/powerpc: Add basic EEH selftest (Gustavo Duarte) [1524642] - [powerpc] eeh: Add a eeh_dev_break debugfs interface (Gustavo Duarte) [1524642] - [powerpc] eeh: Add debugfs interface to run an EEH check (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix debugfs_simple_attr.cocci warnings (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix build with STACKTRACE=n (Gustavo Duarte) [1524642] - [powerpc] eeh: Set attention indicator while recovering (Gustavo Duarte) [1524642] - [pci] pci-hotplug/pnv_php: Add attention indicator support (Gustavo Duarte) [1524642] - [pci] pci-hotplug/pnv_php: Add support for IODA3 Power9 PHBs (Gustavo Duarte) [1524642] - [pci] pci-hotplug/pnv_php: Add a reset_slot() callback (Gustavo Duarte) [1524642] - [powerpc] powernv/eeh: Use generic code to handle hot resets (Gustavo Duarte) [1524642] - [powerpc] eeh: Remove stale CAPI comment (Gustavo Duarte) [1524642] - [powerpc] eeh: Defer printing stack trace (Gustavo Duarte) [1524642] - [powerpc] eeh: Check slot presence state in eeh_handle_normal_event() (Gustavo Duarte) [1524642] - [powerpc] eeh: Make permanently failed devices non-actionable (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix race when freeing PDNs (Gustavo Duarte) [1524642] - [powerpc] eeh: Clean up EEH PEs after recovery finishes (Gustavo Duarte) [1524642] - [netdrv] be2net: disable bh with spin_lock in be_process_mcc (Petr Oros) [1724777] - [netdrv] be2net: Synchronize be_update_queues with dev_watchdog (Petr Oros) [1724777] - [netdrv] be2net: Signal that the device cannot transmit during reconfiguration (Petr Oros) [1724777] - [netdrv] be2net: fix link failure after ethtool offline test (Petr Oros) [1724777] - [netdrv] be2net: Fix number of Rx queues used for flow hashing (Petr Oros) [1724777] - [netdrv] benet: remove broken and unused macro (Petr Oros) [1724777] - [netdrv] benet: use skb_vlan_tag_get_prio() (Petr Oros) [1724777] - [netdrv] benet: use __vlan_hwaccel helpers (Petr Oros) [1724777] - [netdrv] revert "[netdrv] be2net: Disable queue dump in be_tx_timeout handler" (Petr Oros) [1724777] - [infiniband] rdma/i40iw: Set queue pair state when being queried (Stefan Assmann) [1721712] - [infiniband] ib/i40iw: Use kmemdup rather than open coding (Stefan Assmann) [1721712] - [infiniband] rdma/i40iw: Handle workqueue allocation failure (Stefan Assmann) [1721712] - [nvdimm] libnvdimm/pfn_dev: Add page size and struct page size to pfn superblock (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn_dev: Add a build check to make sure we notice when struct page size change (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn: Fix namespace creation on misaligned addresses (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn: stop padding pmem namespaces to section alignment (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields (Baoquan He) [1724969] - [nvdimm] revert "libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields" (Baoquan He) [1724969] - [nvdimm] revert "libnvdimm/pfn_dev: Add page size and struct page size to pfn superblock" (Baoquan He) [1724969] - [nvdimm] revert "libnvdimm/pfn_dev: Add a build check to make sure we notice when struct page size change" (Baoquan He) [1724969] - [mm] sparsemem: cleanup 'section number' data types (Baoquan He) [1724969] - [kernel] mm/devm_memremap_pages: enable sub-section remap (Baoquan He) [1724969] - [mm] sparsemem: support sub-section hotplug (Baoquan He) [1724969] - [mm] sparsemem: prepare for sub-section ranges (Baoquan He) [1724969] - [kernel] mm: kill is_dev_zone() helper (Baoquan He) [1724969] - [mm] hotplug: kill is_dev_zone() usage in __remove_pages() (Baoquan He) [1724969] - [mm] sparsemem: convert kmalloc_section_memmap() to populate_section_memmap() (Baoquan He) [1724969] - [mm] hotplug: prepare shrink_{zone, pgdat}_span for sub-section removal (Baoquan He) [1724969] - [mm] sparsemem: add helpers track active portions of a section at boot (Baoquan He) [1724969] - [mm] sparsemem: introduce a SECTION_IS_EARLY flag (Baoquan He) [1724969] - [mm] sparsemem: introduce struct mem_section_usage (Baoquan He) [1724969] - [base] base/memory.c: get rid of find_memory_block_hinted() (Baoquan He) [1724969] - [mm] memory_hotplug: move and simplify walk_memory_blocks() (Baoquan He) [1724969] - [mm] memory_hotplug: rename walk_memory_range() and pass start+size instead of pfns (Baoquan He) [1724969] - [mm] hotplug: make remove_memory() interface usable (Baoquan He) [1724969] - [kernel] mm: make register_mem_sect_under_node() static (Baoquan He) [1724969] - [base] base/memory: use "unsigned long" for block ids (Baoquan He) [1724969] - [base] mm: section numbers use the type "unsigned long" (Baoquan He) [1724969] - [base] base/memory.c: Use DEVICE_ATTR_RO and friends (Baoquan He) [1724969] - [mm] sparse.c: set section nid for hot-add memory (Baoquan He) [1724969] - [mm] memory_hotplug: remove "zone" parameter from sparse_remove_one_section (Baoquan He) [1724969] - [base] mm/memory_hotplug: make unregister_memory_block_under_nodes() never fail (Baoquan He) [1724969] - [base] mm/memory_hotplug: remove memory block devices before arch_remove_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: drop MHP_MEMBLOCK_API (Baoquan He) [1724969] - [base] mm/memory_hotplug: create memory block devices after arch_add_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: allow arch_remove_memory() without CONFIG_MEMORY_HOTREMOVE (Baoquan He) [1724969] - [arm64] mm: add temporary arch_remove_memory() implementation (Baoquan He) [1724969] - [mm] sparse.c: clean up obsolete code comment (Baoquan He) [1724969] - [base] base/memory: pass a block_id to init_memory_block() (Baoquan He) [1724969] - [base] base/memory.c: remove an unnecessary check on NR_MEM_SECTIONS (Baoquan He) [1724969] - [s390] s390x/mm: implement arch_remove_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: make __remove_section() never fail (Baoquan He) [1724969] - [base] mm/memory_hotplug: make unregister_memory_section() never fail (Baoquan He) [1724969] - [base] base/memory.c: clean up relics in function parameters (Baoquan He) [1724969] - [base] mm, memory_hotplug: update a comment in unregister_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: release memory resource after arch_remove_memory() (Baoquan He) [1724969] - [kernel] mm, memory_hotplug: provide a more generic restrictions for memory hotplug (Baoquan He) [1724969] - [kernel] linux/memory_hotplug.h: remove duplicate declaration of offline_pages() (Baoquan He) [1724969] - [mm] x86: respect memory size limiting via mem= parameter (Baoquan He) [1724969] - [arm64] Add memory hotplug support (Baoquan He) [1724969] - [arm64] mm: check for upper PAGE_SHIFT bits in pfn_valid() (Baoquan He) [1724969] - [powerpc] mm: Fix section mismatch warning (Baoquan He) [1724969] - [base] mm/memory_hotplug: do not unlock after failing to take the device_hotplug_lock (Baoquan He) [1724969] - [mm] memory_hotplug: drop "online" parameter from add_memory_resource() (Baoquan He) [1724969] - [s390] s390x/mm: fail when an altmap is used for arch_add_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: simplify and fix check_hotplug_memory_range() (Baoquan He) [1724969] - [mm] memory_hotplug: add nid parameter to arch_remove_memory (Baoquan He) [1724969] - [mm] sparse: pass nid instead of pgdat to sparse_add_one_section() (Baoquan He) [1724969] - [mm] sparse: drop pgdat_resize_lock in sparse_add/remove_one_section() (Baoquan He) [1724969] - [documentation] memory-hotplug.rst: add some details about locking internals (Baoquan He) [1724969] - [powerpc] powernv: hold device_hotplug_lock when calling memtrace_offline_pages() (Baoquan He) [1724969] - [powerpc] powernv: hold device_hotplug_lock when calling device_online() (Baoquan He) [1724969] - [powerpc] powernv: Allow memory that has been hot-removed to be hot-added (Baoquan He) [1724969] - [powerpc] powernv/memtrace: Remove memtrace mmap() (Baoquan He) [1724969] - [mm] memory_hotplug: fix online/offline_pages called w.o. mem_hotplug_lock (Baoquan He) [1724969] - [mm] memory_hotplug: make add_memory() take the device_hotplug_lock (Baoquan He) [1724969] - [mm] memory_hotplug: make remove_memory() take the device_hotplug_lock (Baoquan He) [1724969] - [powerpc] memtrace: Remove memory in chunks (Baoquan He) [1724969] - [base] mm/memory_hotplug.c: drop unnecessary checks from register_mem_sect_under_node() (Baoquan He) [1724969] - [base] mm/memory_hotplug.c: make register_mem_sect_under_node() a callback of walk_memory_range() (Baoquan He) [1724969] - [mm] memory_hotplug.c: call register_mem_sect_under_node() (Baoquan He) [1724969] - [mm] memory_hotplug.c: make add_memory_resource use __try_online_node (Baoquan He) [1724969] - [pci] Always allow probing with driver_override (Myron Stowe) [1702178] - [pci] Return error if cannot probe VF (Myron Stowe) [1702178] - [target] scsi: target: core: Do not overwrite CDB byte 1 (Maurizio Lombardi) [1764579] - [target] scsi: target: tcmu: clean the nl_cmd of the udev when nl send fails (Maurizio Lombardi) [1764579] - [target] scsi: target: tcmu: avoid use-after-free after command timeout (Maurizio Lombardi) [1764579] - [target] scsi: tcmu: Simplify tcmu_update_uio_info() (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: fix possible condition with no effect (if == else) (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Make sure PDU processing continues if parsing a command fails (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Make iscsit_map_iovec() more robust (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Handle too large immediate data buffers correctly (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Only send R2T if needed (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Detect conn_cmd_list corruption early (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Make the XCOPY setup code easier to read by inlining two functions (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Simplify LUN initialization in XCOPY implementation (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Remove a set-but-not-used member variable from the XCOPY implementation (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Rework the SPC-2 reservation handling code (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Fix a race condition in the LUN lookup code (Maurizio Lombardi) [1764579] - [target] scsi: target: alua: fix the tg_pt_gps_count (Maurizio Lombardi) [1764579] - [target] scsi: target: iscsi: Free conn_ops when zalloc_cpumask_var failed (Maurizio Lombardi) [1764579] - [target] scsi: target: iscsi: Fix np_ip_proto and np_sock_type in iscsit_setup_np (Maurizio Lombardi) [1764579] - [target] scsi: target: fix unsigned comparision with less than zero (Maurizio Lombardi) [1764579] - [target] scsi: target: Add device product id and revision configfs attributes (Maurizio Lombardi) [1764579] - [kernel] genirq/affinity: Remove const qualifier from node_to_cpumask argument (Ming Lei) [1743064] - [kernel] genirq/affinity: Spread vectors on node according to nr_cpu ratio (Ming Lei) [1743064] - [kernel] genirq/affinity: Improve __irq_build_affinity_masks() (Ming Lei) [1743064] - [kernel] genirq/affinity: Remove unused argument from [__]irq_build_affinity_masks() (Ming Lei) [1743064] - [kernel] workqueue, lockdep: Fix a memory leak in wq->lock_name (Waiman Long) [1736654] - [kernel] workqueue, lockdep: Fix an alloc_workqueue() error path (Waiman Long) [1736654] - [kernel] locking/lockdep: Report more stack trace statistics (Waiman Long) [1736654] - [kernel] locking/lockdep: Reduce space occupied by stack traces (Waiman Long) [1736654] - [kernel] locking/lockdep: Make it clear that what lock_class::key points at is not modified (Waiman Long) [1736654] - [kernel] lockdep: Make print_lock() address visible (Waiman Long) [1736654] - [kernel] locking/lockdep: Clean up #ifdef checks (Waiman Long) [1736654] - [kernel] locking/lockdep: Hide unused 'class' variable (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix lock used or unused stats error (Waiman Long) [1736654] - [kernel] locking/lockdep: increase size of counters for lockdep statistics (Waiman Long) [1736654] - [kernel] locking/lockdep: Move mark_lock() inside CONFIG_TRACE_IRQFLAGS && CONFIG_PROVE_LOCKING (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unnecessary DEBUG_LOCKS_WARN_ON() (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix merging of hlocks with non-zero references (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix OOO unlock when hlocks need merging (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove !dir in lock irq usage check (Waiman Long) [1736654] - [kernel] locking/lockdep: Adjust new bit cases in mark_lock (Waiman Long) [1736654] - [kernel] locking/lockdep: Consolidate lock usage bit initialization (Waiman Long) [1736654] - [kernel] locking/lockdep: Check redundant dependency only when CONFIG_LOCKDEP_SMALL (Waiman Long) [1736654] - [kernel] locking/lockdep: Refactorize check_noncircular and check_redundant (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unused argument in __lock_release (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove redundant argument in check_deadlock (Waiman Long) [1736654] - [documentation] locking/lockdep: Add explanation to lock usage rules in lockdep design doc (Waiman Long) [1736654] - [kernel] locking/lockdep: Update comments on dependency search (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid constant checks in __bfs by using offset reference (Waiman Long) [1736654] - [kernel] locking/lockdep: Change the return type of __cq_dequeue() (Waiman Long) [1736654] - [kernel] locking/lockdep: Change type of the element field in circular_queue (Waiman Long) [1736654] - [kernel] locking/lockdep: Update comment (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unused argument in validate_chain() and check_deadlock() (Waiman Long) [1736654] - [kernel] locking/lockdep: Change the range of class_idx in held_lock struct (Waiman Long) [1736654] - [kernel] locking/lockdep: Define INITIAL_CHAIN_KEY for chain keys to start with (Waiman Long) [1736654] - [kernel] locking/lockdep: Use lockdep_init_task for task initiation consistently (Waiman Long) [1736654] - [kernel] locking/lockdep: Update obsolete struct field description (Waiman Long) [1736654] - [kernel] locking/lockdep: Print the right depth for chain key collision (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove useless conditional macro (Waiman Long) [1736654] - [kernel] locking/lockdep: Adjust lock usage bit character checks (Waiman Long) [1736654] - [documentation] locking/lockdep: Add description and explanation in lockdep design doc (Waiman Long) [1736654] - [kernel] locking/lockdep: Change all print_*() return type to void (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove the unused print_lock_trace() function (Waiman Long) [1736654] - [kernel] locking/lockdep: Don't complain about incorrect name for no validate class (Waiman Long) [1736654] - [kernel] lockdep: Add assertion to check if in an interrupt (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unnecessary unlikely() (Waiman Long) [1736654] - [kernel] locking/lockdep: Test all incompatible scenarios at once in check_irq_usage() (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid bogus Clang warning (Waiman Long) [1736654] - [kernel] locking/lockdep: Generate LOCKF_ bit composites (Waiman Long) [1736654] - [kernel] locking/lockdep: Use expanded masks on find_usage_*() functions (Waiman Long) [1736654] - [kernel] locking/lockdep: Map remaining magic numbers to lock usage mask names (Waiman Long) [1736654] - [kernel] locking/lockdep: Move valid_state() inside CONFIG_TRACE_IRQFLAGS && CONFIG_PROVE_LOCKING (Waiman Long) [1736654] - [kernel] lockdep: Simplify stack trace handling (Waiman Long) [1736654] - [kernel] locking/lockdep: Make lockdep_unregister_key() honor 'debug_locks' again (Waiman Long) [1736654] - [kernel] locking/lockdep: Zap lock classes even with lock debugging disabled (Waiman Long) [1736654] - [kernel] locking/lockdep: Only call init_rcu_head() after RCU has been initialized (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid a Clang warning (Waiman Long) [1736654] - [kernel] locking/lockdep: Shrink struct lock_class_key (Waiman Long) [1736654] - [kernel] locking/lockdep: Add module_param to enable consistency checks (Waiman Long) [1736654] - [tools] lockdep/lib/tests: Test dynamic key registration (Waiman Long) [1736654] - [tools] lockdep/lib/tests: Fix run_tests.sh (Waiman Long) [1736654] - [kernel] workqueue: Use dynamic lockdep keys for workqueues (Waiman Long) [1736654] - [kernel] locking/lockdep: Add support for dynamic keys (Waiman Long) [1736654] - [kernel] locking/lockdep: Verify whether lock objects are small enough to be used as class keys (Waiman Long) [1736654] - [kernel] locking/lockdep: Check data structure consistency (Waiman Long) [1736654] - [kernel] locking/lockdep: Reuse lock chains that have been freed (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix a comment in add_chain_cache() (Waiman Long) [1736654] - [kernel] locking/lockdep: Introduce lockdep_next_lockchain() and lock_chain_count() (Waiman Long) [1736654] - [kernel] locking/lockdep: Reuse list entries that are no longer in use (Waiman Long) [1736654] - [kernel] locking/lockdep: Free lock classes that are no longer in use (Waiman Long) [1736654] - [kernel] locking/lockdep: Update two outdated comments (Waiman Long) [1736654] - [kernel] locking/lockdep: Make it easy to detect whether or not inside a selftest (Waiman Long) [1736654] - [kernel] locking/lockdep: Split lockdep_free_key_range() and lockdep_reset_lock() (Waiman Long) [1736654] - [kernel] locking/lockdep: Initialize the locks_before and locks_after lists earlier (Waiman Long) [1736654] - [kernel] locking/lockdep: Make zap_class() remove all matching lock order entries (Waiman Long) [1736654] - [kernel] locking/lockdep: Reorder struct lock_class members (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid that add_chain_cache() adds an invalid chain to the cache (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix reported required memory size (2/2) (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix reported required memory size (1/2) (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix two 32-bit compiler warnings (Waiman Long) [1736654] - [kernel] locking/lockdep: Rename lockdep_info() to lockdep_init() (Waiman Long) [1736654] - [kernel] locking/lockdep: Add debug_locks check in __lock_downgrade() (Waiman Long) [1736654] - [kernel] locking/lockdep: Provide enum lock_usage_bit mask names (Waiman Long) [1736654] - [kernel] locking/lockdep: Simplify mark_held_locks() (Waiman Long) [1736654] - [kernel] locking/lockdep: Add debug_locks check in __lock_downgrade() (Waiman Long) [1736654] - [kernel] locking/lockdep: Stop using RCU primitives to access 'all_lock_classes' (Waiman Long) [1736654] - [kernel] locking/lockdep: Make concurrent lockdep_reset_lock() calls safe (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove a superfluous INIT_LIST_HEAD() statement (Waiman Long) [1736654] - [kernel] locking/lockdep: Introduce lock_class_cache_is_registered() (Waiman Long) [1736654] - [kernel] locking/lockdep: Inline __lockdep_init_map() (Waiman Long) [1736654] - [kernel] locking/lockdep: Declare local symbols static (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Test the lockdep_reset_lock() implementation (Waiman Long) [1736654] - [tools] lib/lockdep: Add dummy print_irqtrace_events() implementation (Waiman Long) [1736654] - [tools] lib/lockdep: Rename "trywlock" into "trywrlock" (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Run lockdep tests a second time under Valgrind (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Improve testing accuracy (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Fix shellcheck warnings (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Display compiler warning and error messages (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove ::version from lock_class structure (Waiman Long) [1736654] - [init] kconfig: disable io_uring support (Jeff Moyer) [1758680] - [virt] kvm: arm64: pmu: Reset sample period on overflow handling (Auger Eric) [1760872] - [virt] kvm: arm64: pmu: Set the CHAINED attribute before creating the in-kernel event (Auger Eric) [1760872] - [arm64] kvm: Handle PMCR_EL0.LC as RES1 on pure AArch64 systems (Auger Eric) [1760872] - [virt] kvm: arm64: pmu: Fix cycle counter truncation (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Introduce kvm_pmu_vcpu_init() to setup PMU counter index (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Support chained PMU counters (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Remove pmc->bitmask (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Re-create event when setting counter value (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Extract duplicated code to own function (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Rename kvm_pmu_{enable/disable}_counter functions (Auger Eric) [1760872] - [arm64] perf: Hook up new events (Auger Eric) [1760872] - [arm64] perf: Move event definitions into perf_event.h (Auger Eric) [1760872] - [arm64] perf: Remove duplicate generic cache events (Auger Eric) [1760872] - [arm64] perf: Terminate PMU assignment statements with semicolons (Auger Eric) [1760872] - [arm64] Allow CAVIUM_TX2_ERRATUM_219 to be selected (Auger Eric) [1771633] - [arm64] Avoid Cavium TX2 erratum 219 when switching TTBR (Auger Eric) [1771633] - [arm64] Enable workaround for Cavium TX2 erratum 219 when running SMT (Auger Eric) [1771633] - [arm64] kvm: Trap VM ops when ARM64_WORKAROUND_CAVIUM_TX2_219_TVM is set (Auger Eric) [1771633] - [arm64] sysreg: fix incorrect definition of SYS_PAR_EL1_F (Auger Eric) [1771633] - [arm64] Force SSBS on context switch (Mark Salter) [1756103] - [arm64] enable pointer authentication (Mark Salter) [1756103] - [arm64] add ptrace regsets for ptrauth key management (Mark Salter) [1756103] - arm64: cpufeature: Rework ptr auth hwcaps using multi_entry_cap_matches (Mark Salter) [1756103] - [arm64] capabilities: Merge duplicate entries for Qualcomm erratum 1003 (Mark Salter) [1756103] - [arm64] cpufeature: Reduce number of pointer auth CPU caps from 6 to 4 (Mark Salter) [1756103] - [documentation] arm64: docs: document pointer authentication (Mark Salter) [1756103] - [documentation] arm64: docs: Document SSBS HWCAP (Mark Salter) [1756103] - [documentation] arm64: docs: Fix typos in ELF hwcaps (Mark Salter) [1756103] - [arm64] ptr auth: Move per-thread keys from thread_info to thread_struct (Mark Salter) [1756103] - [arm64] add prctl control for resetting ptrauth keys (Mark Salter) [1756103] - [arm64] perf: strip PAC when unwinding userspace (Mark Salter) [1756103] - [arm64] expose user PAC bit positions via ptrace (Mark Salter) [1756103] - [arm64] add basic pointer authentication support (Mark Salter) [1756103] - arm64/cpufeature: detect pointer authentication (Mark Salter) [1756103] - [arm64] cpufeature: Convert hook_lock to raw_spin_lock_t in cpu_enable_ssbs() (Mark Salter) [1756103] - [arm64] entry: Allow handling of undefined instructions from EL1 (Mark Salter) [1756103] - [arm64] Fix silly typo in comment (Mark Salter) [1756103] - [fs] smb3: fix signing verification of large reads (Dave Wysochanski) [1753114] - [fs] revert "nfs4: Fix v4.0 client state corruption when mount" (Benjamin Coddington) [1767012] - [kernel] svcrdma: Increase the default connection credit limit (Benjamin Coddington) [1771430] - [x86] quirks: Disable HPET on Intel Coffe Lake platforms (David Arcari) [1773774] - [sched] core: Fix CPU controller for !RT_GROUP_SCHED (Phil Auld) [1774652] - [x86] Add comment for x86 processor OS version support (David Arcari) [1709878] - [x86] kvm: svm: taint module and print taint message iff nested is enabled (Bandan Das) [1775410] - [x86] cpu: Add Tiger Lake to Intel family (Steve Best) [1773790] - [fs] Fix the locking in dcache_readdir() and friends (Miklos Szeredi) [1761746] - [infiniband] rdma/mlx5: Return proper error value (Mohammad Heib) [1772101] - [scsi] mpt3sas: change allocation option (Tomas Henzl) [1770264] - [scsi] qla2xxx: Initialized mailbox to prevent driver load failure (Himanshu Madhani) [1770309] - [mfd] intel-lpss: Add Intel Comet Lake PCH-H PCI IDs (David Arcari) [1773307] - [powercap] intel_rapl: add support for Cometlake desktop (David Arcari) [1759664] - [powercap] intel_rapl: add support for CometLake Mobile (David Arcari) [1746265] - [kernel] intel_rapl: need linux/cpuhotplug.h for enum cpuhp_state (Alexander Beregalov) [1732604] - [thermal] int340x/processor_thermal_device: Fix proc_thermal_rapl_remove() (Alexander Beregalov) [1732604] - [thermal] int340x/processor_thermal_device: add support for MMIO RAPL (Alexander Beregalov) [1732604] - [thermal] thermal: processor_thermal_device: Fix build warning (Alexander Beregalov) [1732604] - [thermal] thermal: processor_thermal: Read PPCC on resume (Alexander Beregalov) [1732604] - [thermal] thermal: processor_thermal: Downgrade error message (Alexander Beregalov) [1732604] - [thermal] intel: int340x: processor_thermal_device: simplify to get driver data (Alexander Beregalov) [1732604] - [thermal] int3403_thermal: favor _TMP instead of PTYP (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: fix mode setting (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: Add additional UUIDs (Alexander Beregalov) [1732604] - [thermal] thermal: int340x_thermal: Fix sysfs race condition (Alexander Beregalov) [1732604] - [thermal] thermal: int340x_thermal: Make PCI dependency explicit (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: Fix a NULL vs IS_ERR() check (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: int3400_thermal: simplify getting .driver_data (Alexander Beregalov) [1732604] - [powercap] Invoke powercap_init() and rapl_init() earlier (Alexander Beregalov) [1732604] - [powercap] intel_rapl: Fix module autoloading issue (Alexander Beregalov) [1732604] - [powercap] intel_rapl: support two power limits for every RAPL domain (Alexander Beregalov) [1732604] - [powercap] intel_rapl: support 64 bit register (Alexander Beregalov) [1732604] - [powercap] intel_rapl: abstract RAPL common code (Alexander Beregalov) [1732604] - [powercap] intel_rapl: cleanup hardcoded MSR access (Alexander Beregalov) [1732604] - [powercap] intel_rapl: cleanup some functions (Alexander Beregalov) [1732604] - [powercap] intel_rapl: abstract register access operations (Alexander Beregalov) [1732604] - [powercap] intel_rapl: abstract register address (Alexander Beregalov) [1732604] - [powercap] intel_rapl: introduce struct rapl_if_private (Alexander Beregalov) [1732604] - [kernel] intel_rapl: introduce intel_rapl.h (Alexander Beregalov) [1732604] - [powercap] intel_rapl: remove hardcoded register index (Alexander Beregalov) [1732604] - [powercap] intel_rapl: use reg instead of msr (Alexander Beregalov) [1732604] - [security] ima: Differentiate auditing policy rules from "audit" actions (Richard Guy Briggs) [1479911] - [security] ima: Do not audit if CONFIG_INTEGRITY_AUDIT is not set (Richard Guy Briggs) [1479911] - [security] ima: Use audit_log_format() rather than audit_log_string() (Richard Guy Briggs) [1479911] - [security] ima: Call audit_log_string() rather than logging it untrusted (Richard Guy Briggs) [1479911] - [security] selinux: avoid atomic_t usage in sidtab (Ondrej Mosnacek) [1741182] - [security] selinux: always return a secid from the network caches if we find one (Ondrej Mosnacek) [1741182] - [security] selinux: policydb - rename type_val_to_struct_array (Ondrej Mosnacek) [1741182] - [security] selinux: policydb - fix some checkpatch.pl warnings (Ondrej Mosnacek) [1741182] - [security] selinux: shuffle around policydb.c to get rid of forward declarations (Ondrej Mosnacek) [1741182] - [security] selinux: fix memory leak in policydb_init() (Ondrej Mosnacek) [1741182] - [security] selinux: check sidtab limit before adding a new entry (Ondrej Mosnacek) [1741182] - [security] selinux: format all invalid context as untrusted (Ondrej Mosnacek) [1479914 1741182] - [security] selinux: remove some no-op BUG_ONs (Ondrej Mosnacek) [1741182] - [security] selinux: provide __le variables explicitly (Ondrej Mosnacek) [1741182] - [security] selinux: avoid uninitialized variable warning (Ondrej Mosnacek) [1741182] - [security] selinux: remove useless assignments (Ondrej Mosnacek) [1741182] - [security] selinux: fix NULL dereference in policydb_destroy() (Ondrej Mosnacek) [1741182] - [security] selinux: convert to kvmalloc (Ondrej Mosnacek) [1741182] - [kernel] lsm: generalize flag passing to security_capable (Ondrej Mosnacek) [1741182] - [kernel] selinux: Remove unused selinux_is_enabled (Ondrej Mosnacek) [1741182] - [kernel] selinux: Remove cred security blob poisoning (Ondrej Mosnacek) [1741182] - [security] selinux: Remove SECURITY_SELINUX_BOOTPARAM_VALUE (Ondrej Mosnacek) [1741182]- [tools] selftests: mlxsw: Add a test for leftover DSCP rule (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Fix local variable declarations in DSCP tests (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Add counters for GC events (Ivan Vecera) [1737368] - [netdrv] mlxsw: Bump firmware version to 13.2000.1886 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Prevent auto negotiation on number of lanes (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove 56G speed support (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Keep unmatched entries in a linked list (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Further reduce pool size on Spectrum-2 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Fix error path in mlxsw_sp_module_init() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: fix duplicated check on orig_egr_types (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Increase parsing depth when PTP is enabled (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Fix typo in qos_mc_aware.sh (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Do not process learned records with a dummy FID (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_dcb: Configure DSCP map as the last rule is removed (Ivan Vecera) [1737368] - [netdrv] remove redundant memset (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Apply the PTP shaper enable/disable logic (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Set up PTP shaper when port status has changed (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Enable/disable PTP shaper on a port when getting HWTSTAMP on/off (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Add new operation for getting the port's speed (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Set the PTP shaper parameters (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add QoS PTP Shaper Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Add note about the PTP shaper (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add ptps field in QoS ETS Element Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Fix validation in mlxsw_sp1_ptp_packet_finish() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Support ethtool get_ts_info (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Support SIOCGHWTSTAMP, SIOCSHWTSTAMP ioctls (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Configure PTP traps and FIFO events (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Garbage-collect unmatched entries (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Support timestamping on Spectrum-1 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Disable BH when working with PHC (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Add PTP initialization / finalization (Ivan Vecera) [1737368] - [netdrv] mlxsw: pci: ptp: Hook into packet transmit path (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add support for using SKB control buffer (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Hook into packet receive path (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Add support for traps specific to Spectrum-1 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Extract a helper for trap registration (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Monitoring Global Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Time Precision Packet Timestamping Reading (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Monitoring Precision Time Protocol Trap Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Monitoring Time Precision Packet Port Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add support for negative temperature readout (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add the hottest thermal zone detection (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Extend thermal core with per inter-connect device thermal zones (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_flower: Implement support for ingress device matching (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Fix SRC_SYS_PORT element size (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Avoid size check for RX_ACL_SYSTEM_PORT element (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Write RX_ACL_SYSTEM_PORT acl element correctly (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Fix compilation on 32-bit ARM (Ivan Vecera) [1737368] - [tools] selftests: ptp: Add Physical Hardware Clock test (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: PTP physical hardware clock initialization (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Add implementation for physical hardware clock operations (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Management Pulse Per Second Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Management UTC Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: pci: Query free running clock PCI BAR and offsets (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add a new interface for reading the hardware free running clock (Ivan Vecera) [1737368] - [netdrv] mlxsw: cmd: Free running clock PCI BAR and offsets via query firmware (Ivan Vecera) [1737368] - [netdrv] mlxsw: Implement flash update status notifications (Ivan Vecera) [1737368] - [netdrv] mlxfw: Introduce status_notify op and call it to notify about the status (Ivan Vecera) [1737368] - [netdrv] mlxfw: Propagate error messages through extack (Ivan Vecera) [1737368] - [netdrv] mlxsw: Move firmware flash implementation to devlink (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Reduce buffer size in transactions for SFP modules temperature readout (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Extend the index size for temperature sensors readout (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Extend hwmon interface with inter-connect temperature attributes (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Management General Peripheral Information Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Extend sensor index field size of Management Temperature Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Re-order initialization sequence (Ivan Vecera) [1737368] - [netdrv] mlxsw: i2c: Allow flexible setting of I2C transactions size (Ivan Vecera) [1737368] - [netdrv] mlxsw: i2c: Extend initialization with querying firmware info (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Disallow prio-tagged packets when PVID is removed (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Reduce pool size on Spectrum-2 (Ivan Vecera) [1737368] - [tools] selftests: tc_flower: Add TOS matching test (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_flower: Fix TOS matching (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Test nexthop offload indication (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Refresh nexthop neighbour when it becomes dead (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Use different seeds for ECMP and LAG hash (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Prevent force of 56G (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Avoid warning after identical rules insertion (Ivan Vecera) [1737368] - [tools] selftests: Add loopback test (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Implement loopback ethtool feature (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Port Physical Loopback Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: split base on local_ports_in_{1x, 2x} resources (Ivan Vecera) [1737368] - [netdrv] mlxsw: resources: Add local_ports_in_{1x, 2x} (Ivan Vecera) [1737368] - [netdrv] mlxsw: Bump firmware version to 13.2000.1122 (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove obsolete dependency on THERMAL=m (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Prevent ipv6 gateway with v4 route via replace and append (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Adjust CPU port shared buffer egress quotas (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Allow skipping ingress port quota configuration (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Split business logic from mlxsw_sp_port_sb_pms_init() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Use new CPU ingress pool for control packets (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add pools for CPU traffic (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Remove assumption about pool order (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Forbid changing multicast TCs' attributes (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Forbid changing threshold type of first egress pool (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Forbid configuration of multicast pool (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add ability to veto TC's configuration (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add ability to veto pool's configuration (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Use defines for pool indices (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add extack messages for invalid configurations (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Relax FIB rule validation (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Use a stable ECMP/LAG seed (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Test neighbour offload indication (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Add neighbour offload indication (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Propagate neighbour update errors (Ivan Vecera) [1737368] - [documentation] documentation: networking: devlink-info-versions: Add fw.psid (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add support for devlink info command (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add MGIR register (Ivan Vecera) [1737368] - [tools] selftests: forwarding: test for bridge mcast traffic after report and leave (Ivan Vecera) [1737368] - [netdrv] mlxsw: switch_ib: Pass valid HW id down to mlxsw_core_port_init() (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove ndo_get_port_parent_id implementation (Ivan Vecera) [1737368] - [netdrv] mlxsw: Pass switch ID through devlink_port_attrs_set() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Rename rehash_dis trace (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Remove failed_rollback dead end (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Move rehash_dis trace call and err msg to vregion_migrate() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Remove redundant failed_rollback from migrate_start() (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove ndo_get_phys_port_name implementation (Ivan Vecera) [1737368] - [netdrv] mlxsw: Implement ndo_get_devlink_port (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Add a new test for strict priority (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Add qos_lib.sh (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: qos_mc_aware: Configure shared buffers (Ivan Vecera) [1737368] - [tools] selftests: forwarding: devlink_lib: Add shared buffer helpers (Ivan Vecera) [1737368] - [tools] selftests: forwarding: devlink_lib: Simplify deduction of DEVLINK_DEV (Ivan Vecera) [1737368] - [tools] selftests: forwarding: devlink_lib: Avoid double sourcing of lib.sh (Ivan Vecera) [1737368] - [tools] selftests: forwarding: Test action VLAN modify (Ivan Vecera) [1737368] - [tools] selftests: forwarding: Add PCP match and VLAN match tests (Ivan Vecera) [1737368] - [infiniband] rdma/mlx5: Use irq xarray locking for mkey_table (Alaa Hleihel) [1724336] - [netdrv] mlx4_core: Dynamically set guaranteed amount of counters per VF (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Initialize on stack link modes bitmap (Alaa Hleihel) [1724336] - [netdrv] mlx5e: fix ethtool self test: link speed (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix handling of compressed CQEs in case of low NAPI budget (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Don't store direct pointer to action's tunnel info (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix NULL pointer dereference in extended destination (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Only skip encap flows update when encap init failed (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Determine source port properly for vlan push action (Alaa Hleihel) [1724336] - [kernel] mlx5: Fix flow counter list auto bits struct (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Clear old rate limit when closing QP (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Remove dead code (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix memory leak in mlx5_fw_fatal_reporter_dump (Alaa Hleihel) [1724336] - [netdrv] mlx5: prevent memory leak in mlx5_fpga_conn_create_cq (Alaa Hleihel) [1724336] - [netdrv] mlx5e: TX, Fix consumer index of error cqe dump (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Zero-memset WQE info struct upon update (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Fix assumption of single WQEBB of NOP in cleanup flow (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Add missing synchronize_srcu() for MW cases (Alaa Hleihel) [1724307 1724336] - [infiniband] rdma/mlx5: Order num_pending_prefetch properly with synchronize_srcu (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Do not allow rereg of a ODP MR (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix matching on tunnel addresses type (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add device ID of upcoming BlueField-2 (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Free mpi in mp_slave mode (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Use the original address for the page during free_pages (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: FWTrace, Reduce stack usage (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Remove unnecessary clear_bit()s (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix spelling mistake "offlaods" -> "offloads" (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Remove leftover declaration (Alaa Hleihel) [1724336] - [netdrv] mlx5e: ethtool, Fix a typo in WOL function names (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add missing include file to lib/crypto.c (Alaa Hleihel) [1724336] - [netdrv] mlx5: remove self-assignment on esw->dev (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support MLX5_CMD_OP_QUERY_LAG as a DEVX general command (Alaa Hleihel) [1724307 1724336] - [kernel] mlx5: Fix mlx5_ifc_query_lag_out_bits (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix formats with line continuation whitespace (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix mlx5e_tx_reporter_create return value (Alaa Hleihel) [1724336] - [kernel] mlx5: Fix offset of tisc bits reserved field (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix -Wtype-limits compilation warnings (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support per device q counters in switchdev mode (Alaa Hleihel) [1659186 1724336] - [infiniband] ib/mlx5: Refactor code for counters allocation (Alaa Hleihel) [1659186 1724336] - [netdrv] mlx5: DR, Replace CRC32 implementation to use kernel lib (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Support IPv4 and IPv6 mixed matcher (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Allow insertion of duplicate rules (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: avoid 64-bit division in dr_icm_pool_mr_create() (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5e: Fix traffic duplication in ethtool steering (Alaa Hleihel) [1724336] - [netdrv] mlx5: DR, Allow matching on vport based on vhca_id (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Fix getting incorrect prev node in ste_free (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Remove redundant vport number from action (Alaa Hleihel) [1760284 1724336] - [kernel] mlx5: DR, Fix SW steering HW bits and definitions (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix missing assignment of variable err (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Fix rt's type in dr_action_create_reformat_action (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Fix error return code in dr_domain_init_resources() (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Fix addr's type in mlx5dr_icm_dm (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add devlink flow_steering_mode parameter (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add support to use SMFS in switchdev mode (Alaa Hleihel) [1760284 1724327 1724336] - [netdrv] mlx5: Add API to set the namespace steering mode (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add direct rule fs_cmd implementation (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add CONFIG_MLX5_SW_STEERING for software steering support (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose APIs for direct rule managing (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add required FW steering functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering rule functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering action functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering matcher functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering table functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering domain functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add Steering entry (STE) utilities (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose an internal API to issue RDMA operations (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, ICM pool memory allocator (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add direct rule command utilities (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add the internal direct rule types definitions (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add flow steering actions to fs_cmd shim layer (Alaa Hleihel) [1760284 1724327 1724336] - [netdrv] mlx5: Set only stag for match untagged packets (Alaa Hleihel) [1760284 1724336] - [kernel] mlx5: Add stub for mlx5_eswitch_mode (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Avoid disabling RoCE when uninitialized (Alaa Hleihel) [1760284 1724336] - [kernel] mlx5: Add HW bits and definitions required for SW steering (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Move device memory management to mlx5_core (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5e: Support LAG TX port affinity distribution (Alaa Hleihel) [1760285 1724336] - [netdrv] mlx5e: Expose new function for TIS destroy loop (Alaa Hleihel) [1760285 1724336] - [kernel] mlx5: Add lag_tx_port_affinity capability bit (Alaa Hleihel) [1760285 1724336] - [netdrv] mlx5e: Add device out of buffer counter (Alaa Hleihel) [1760291 1724336] - [netdrv] mlx5: Fix the order of fc_stats cleanup (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix deallocation of non-fully init encap entries (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Only access fully initialized flows in neigh update (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Refactor neigh update for concurrent execution (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Refactor neigh used value update for concurrent execution (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect neigh hash encap list with spinlock and rcu (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Refactor mlx5e_neigh_update_table->encap_lock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend neigh hash entry with rcu (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Always take reference to neigh entry (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extract code that queues neigh update work into function (Alaa Hleihel) [1663231 1724336] - [kernel] mlx5: Add support for VNIC_ENV internal rq counter (Alaa Hleihel) [1760291 1724336] - [netdrv] mlx5e: Use refcount_t for refcount (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Use vhca_id in generating representor port_index (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Simplify querying port representor parent id (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5: E-switch, Removed unused hwid (Alaa Hleihel) [1663231 1724327 1724336] - [netdrv] mlx5e: Allow concurrent creation of encap entries (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect encap hash table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend encap entry with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Allow concurrent creation of mod_hdr entries (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect mod_hdr hash table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect mod header entry flows list with spinlock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend mod header entry with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Allow concurrent creation of hairpin entries (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect hairpin hash table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect hairpin entry flows list with spinlock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend hairpin entry with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5: E-switch, Tide up eswitch config sequence (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Remove redundant mc_promisc NULL check (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, remove redundant error handling (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-switch, Introduce helper function to enable/disable vports (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-switch, Initialize TSAR Qos hardware block before its user vports (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-switch, Combine metadata enable/disable functionality (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Verify support QoS element type (Alaa Hleihel) [1724336] - [netdrv] mlx5: Make load_one() and unload_one() symmetric (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add flow counter pool (Alaa Hleihel) [1760297 1724336] - [netdrv] mlx5: Add flow counter bulk infrastructure (Alaa Hleihel) [1760297 1724336] - [kernel] mlx5: Add flow counter bulk allocation hardware bits and command (Alaa Hleihel) [1760297 1724336] - [netdrv] mlx5: Refactor and optimize flow counter bulk query (Alaa Hleihel) [1760297 1724336] - [netdrv] mlx5e: Protect tc flow table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Rely on rcu instead of rtnl lock when getting upper dev (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Eswitch, use state_lock to synchronize vlan change (Alaa Hleihel) [1663231 1724327 1724336] - [netdrv] mlx5e: Eswitch, change offloads num_flows type to atomic64 (Alaa Hleihel) [1663231 1724327 1724336] - [netdrv] mlx5e: Protect unready flows with dedicated lock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect tc flows hashtable with rcu (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Change flow flags type to unsigned long (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend tc flow struct with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Simplify get_route_and_out_devs helper function (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Improve ethtool rxnfc callback structure (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Avoid warning print when not required (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Print a warning when LRO feature is dropped or not allowed (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Remove ethernet segment from dump WQE (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Add num bytes metadata to WQE info (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix delay in fw fatal report handling due to fw report (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix crdump chunks print (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Block MR WR if UMR is not possible (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix MR re-registration flow to use UMR properly (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Report and handle ODP support properly (Alaa Hleihel) [1724308 1724336] - [infiniband] ib/mlx5: Consolidate use_umr checks into single function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix compatibility issue with ethtool flash device (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix use-after-free error while accessing ev_file pointer (Alaa Hleihel) [1724307 1724336] - [netdrv] mlx5e: Remove redundant check in CQE recovery flow of tx reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix error flow of CQE recovery on tx reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix false negative indication on tx reporter CQE recovery (Alaa Hleihel) [1724336] - [netdrv] mlx5e: kTLS, Fix tisn field placement (Alaa Hleihel) [1724336] - [netdrv] mlx5e: kTLS, Fix tisn field name (Alaa Hleihel) [1724336] - [netdrv] mlx5e: kTLS, Fix progress params context WQE layout (Alaa Hleihel) [1724336] - [kernel] mlx5: kTLS, Fix wrong TIS opmod constants (Alaa Hleihel) [1724336] - [netdrv] mlx5: crypto, Fix wrong offset in encryption key command (Alaa Hleihel) [1724336] - [netdrv] mlx5e: ethtool, Avoid setting speed to 56GBASE when autoneg off (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Only support tx/rx pause setting for port owner (Alaa Hleihel) [1724336] - [netdrv] mlx5: Support inner header match criteria for non decap flow action (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Use flow keys dissector to parse packets for ARFS (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Check the correct variable in error handling code (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Fix implicit MR release flow (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5e: always initialize frag->last_in_page (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Release locks during notifier unregister (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix MR registration flow to use UMR properly (Alaa Hleihel) [1764207 1724336] - [netdrv] mlx5e: kTLS, Call WARN_ONCE on netdev mismatch (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Prevent encap flow counter update async to user query (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix matching of speed to PRM link modes (Alaa Hleihel) [1724336] - [kernel] mlx5: Fix modify_cq_in alignment (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add missing RDMA_RX capabilities (Alaa Hleihel) [1724336] - [netdrv] mlx5: Use reversed order when unregister devices (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix RSS Toeplitz setup to be aligned with the HW specification (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Prevent concurrent MR updates during invalidation (Alaa Hleihel) [1724308 1724336] - [infiniband] ib/mlx5: Fix clean_mr() to work in the expected order (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Move MRs to a kernel PD when freeing them to the MR cache (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Use direct mkey destroy command upon UMR unreg failure (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix unreg_umr to ignore the mkey state (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Replace kfree with kvfree (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Replace kfree with kvfree (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Rely on filter_dev instead of dissector keys for tunnels (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Verify encapsulation is supported (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Convert single case statement switch statements into if statements (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Reduce ingress acl modify metadata stack usage (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Fix compilation error in TLS code (Alaa Hleihel) [1724336] - [netdrv] mlx5e: IPoIB, Add error path in mlx5_rdma_setup_rn (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix error flow in tx reporter diagnose (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix return value from timeout recover function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Rx, Fix checksum calculation for new hardware (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix port tunnel GRE entropy control (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Fix default encap mode (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Return in default case statement in tx_post_resync_params (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Register devlink ports for physical link, PCI PF, VFs (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Set RDMA DIM to be enabled by default (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Report correctly tag matching rendezvous capability (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Implement VHCA tunnel mechanism in DEVX (Alaa Hleihel) [1724307 1724336] - [kernel] mlx5: Introduce VHCA tunnel device capability (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Add kTLS TX HW offload support (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Introduce a fenced NOP WQE posting function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Re-work TIS creation functions (Alaa Hleihel) [1760285 1724336] - [netdrv] mlx5e: Tx, Unconstify SQ stop room (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Don't implicitly assume SKB-less wqe has one WQEBB (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Make SQ WQE fetch function type generic (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Enforce L4 inline copy when needed (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Move helper functions to a new txrx datapath header (Alaa Hleihel) [1724336] - [netdrv] mlx5: Accel, Add core TLS support for the Connect-X family (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add crypto library to support create/destroy encryption key (Alaa Hleihel) [1724336] - [netdrv] mlx5: Kconfig, Better organize compilation flags (Alaa Hleihel) [1724336] - [netdrv] mlx5: Accel, Expose accel wrapper for IPsec FPGA function (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Add counter_alloc_stats() and counter_update_stats() support (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support statistic q counter configuration (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Add counter set id as a parameter for mlx5_ib_query_q_counters() (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support set qp counter (Alaa Hleihel) [1724336] - [netdrv] mlx5: Added devlink info callback (Alaa Hleihel) [1724336] - [netdrv] mlx5: Added fw version query command (Alaa Hleihel) [1724336] - [kernel] mlx5: Add rts2rts_qp_counters_set_id field in hca cap (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Use proper allocation API to get zeroed memory (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: DEVX cleanup mdev (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Add DEVX support for CQ events (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Implement DEVX dispatching event (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Enable subscription for device events over DEVX (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Register DEVX with mlx5_core to get async events (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Introduce MLX5_IB_OBJECT_DEVX_ASYNC_EVENT_FD (Alaa Hleihel) [1724307 1724336] - [kernel] mlx5: Properly name the generic WQE control field (Alaa Hleihel) [1724336] - [kernel] mlx5: Introduce TLS TX offload hardware bits and structures (Alaa Hleihel) [1724336] - [netdrv] mlx5: Refactor mlx5_esw_query_functions for modularity (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch prepare functions change handler to be modular (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Introduce and use mlx5_eswitch_get_total_vports() (Alaa Hleihel) [1724327 1724336] - [infiniband] ib/mlx5: Fixed reporting counters on 2nd port for Dual port RoCE (Alaa Hleihel) [1724336] - [kernel] mlx5: Expose device definitions for object events (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report EQE data upon CQ completion (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report a CQ error event only when a handler was set (Alaa Hleihel) [1724336] - [netdrv] mlx5: mlx5_core_create_cq() enhancements (Alaa Hleihel) [1724336] - [netdrv] mlx5: Expose the API to register for ANY event (Alaa Hleihel) [1724336] - [netdrv] mlx5: Use event mask based on device capabilities (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Fix mlx5_core_destroy_cq() error flow (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Handle UC address change in switchdev mode (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Consider host PF for inline mode and vlan pop (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Use iterator for vlan and min-inline setups (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Reg/unreg function changed event at correct stage (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Consolidate eswitch function number of VFs (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Refactor eswitch SR-IOV interface (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Handle host PF vport mac/guid for ECPF (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Use correct flags when configuring vlan (Alaa Hleihel) [1724336] - [netdrv] mlx5: Reduce dependency on enabled_vfs counter and num_vfs (Alaa Hleihel) [1724336] - [netdrv] mlx5: Don't handle VF func change if host PF is disabled (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Limit scope of mlx5_get_next_phys_dev() to PCI PF devices (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move pci status reg access mutex to mlx5_pci_init (Alaa Hleihel) [1724336] - [kernel] mlx5: Rename mlx5_pci_dev_type to mlx5_coredev_type (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Cleanup rep when doing unload (Alaa Hleihel) [1724336] - [infiniband] {ib, net}/mlx5: E-Switch, Use index of rep for vport to IB port mapping (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Use vport index when init rep (Alaa Hleihel) [1724327 1724336] - [kernel] mlx5: Added MCQI and MCQS registers' description to ifc (Alaa Hleihel) [1724336] - [kernel] mlx5: Add hardware definitions for sub functions (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Disallow tc redirect offload cases we don't support (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Expose same physical switch_id for all representors (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Don't refresh TIRs when updating representor SQs (Alaa Hleihel) [1724336] - [netdrv] mlx5e: reduce stack usage in mlx5_eswitch_termtbl_create (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Set drvinfo in generic manner (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Correct phys_port_name for PF port (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Report netdevice MPLS features (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Move to HW checksumming advertising (Alaa Hleihel) [1724336] - [netdrv] mlx5: MPFS, Allow adding the same MAC more than once (Alaa Hleihel) [1724336] - [netdrv] mlx5: MPFS, Cleanup add MAC flow (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Move queue param structs to en/params.h (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Encapsulate open/close queues into a function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Consider XSK in XDP MTU limit calculation (Alaa Hleihel) [1724336] - [netdrv] mlx5e: XDP_TX from UMEM support (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Share the XDP SQ for XDP_TX between RQs (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Refactor struct mlx5e_xdp_info (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Allow ICO SQ to be used by multiple RQs (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Calculate linear RX frag size considering XSK (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Replace deprecated PCI_DMA_TODEVICE (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Attach/detach XDP program safely (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Enable vport metadata matching if firmware supports it (Alaa Hleihel) [1724327 1724336] - [infiniband] rdma/mlx5: Add vport metadata matching for IB representors (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Add match on vport metadata for rule in slow path (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Pass metadata from FDB to eswitch manager (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Add query and modify esw vport context functions (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Add match on vport metadata for rule in fast path (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Specifying known origin of packets matching the flow (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Tag packet with vport number in VF vports and uplink ingress ACLs (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Add flow context for flow tag (Alaa Hleihel) [1724336] - [netdrv] mlx5: Introduce a helper API to check VF vport (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Support allocating modify header context from ingress ACL (Alaa Hleihel) [1724336] - [netdrv] mlx5: Get vport ACL namespace by vport index (Alaa Hleihel) [1724336] - [kernel] mlx5: Introduce vport metadata matching bits and enum constants (Alaa Hleihel) [1724336] - [netdrv] mlx5: Convert mkey_table to XArray (Alaa Hleihel) [1724308 1724307 1724336] - [infiniband] rdma/mlx5: Refactor MR descriptors allocation (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Use PA mapping for PI handover (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Improve PI handover performance (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Remove unused IB_WR_REG_SIG_MR code (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Enable decap and packet reformat on FDB (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Consider eswitch encap mode (Alaa Hleihel) [1724336] - [netdrv] mlx5: add missing void argument to function mlx5_devlink_alloc (Alaa Hleihel) [1724336] - [kernel] mlx5: Expose eswitch encap mode (Alaa Hleihel) [1724336] - [netdrv] mlx5: Declare more strictly devlink encap mode (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: use indirect calls wrapper for the rx packet handler (Alaa Hleihel) [1724336] - [netdrv] mlx5e: use indirect calls wrapper for skb allocation (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report devlink health on FW fatal issues (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add support for FW fatal reporter dump (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add fw fatal devlink_health_reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report devlink health on FW issues (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add support for FW reporter dump (Alaa Hleihel) [1724336] - [netdrv] mlx5: Create FW devlink_health_reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5: Issue SW reset on FW assert (Alaa Hleihel) [1724336] - [netdrv] mlx5: Control CR-space access by different PFs (Alaa Hleihel) [1724336] - [netdrv] mlx5: Handle SW reset of FW in error flow (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add Crdump support (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add Vendor Specific Capability access gateway (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move all devlink related functions calls to devlink.c (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add EQ enable/disable API (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Use a single IRQ for all async EQs (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Rename mlx5_irq_info to mlx5_irq (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move all IRQ logic to pci_irq.c (Alaa Hleihel) [1724336] - [netdrv] mlx5: Generalize IRQ interface to work with irq_table (Alaa Hleihel) [1724336] - [netdrv] mlx5: Separate IRQ table creation from EQ table creation (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move IRQ affinity set to IRQ allocation phase (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move IRQ rmap creation to IRQ allocation phase (Alaa Hleihel) [1724336] - [netdrv] mlx5: Separate IRQ data from EQ table data (Alaa Hleihel) [1724336] - [netdrv] mlx5: Separate IRQ request/free from EQ life cycle (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Change interrupt handler to call chain notifier (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Introduce EQ polling budget (Alaa Hleihel) [1724336] - [netdrv] mlx5: Support querying max VFs from device (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Return raw output for query esw functions (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Handle representors creation in handler context (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Increase wait time for fw initialization (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move firmware flash implementation to devlink (Alaa Hleihel) [1724336] - [netdrv] mlx5e: TX, Improve performance under GSO workload (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Use termination table for VLAN push actions (Alaa Hleihel) [1722647 1724327 1724336] - [netdrv] mlx5e: Geneve, Add support for encap/decap flows offload (Alaa Hleihel) [1725582 1724336] - [netdrv] mlx5e: Rearrange tc tunnel code in a modular way (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Geneve, Keep tunnel info as pointer to the original struct (Alaa Hleihel) [1724336] - [netdrv] mlx5: Geneve, Manage Geneve TLV options (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Enable setting multiple match criteria for flow group (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Allow matching only enc_key_id/enc_dst_port for decapsulation action (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Generalize vport type in vport representor (Alaa Hleihel) [1724336] - [netdrv] {ib, net}/mlx5: Constify rep ops functions pointers (Alaa Hleihel) [1724327 1724336] - [netdrv] {ib, net}/mlx5: No need to typecast from void* to mlx5_ib_dev* (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Honor eswitch functions changed event cap (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Replace host_params event with functions_changed event (Alaa Hleihel) [1724327 1724336] - [kernel] mlx5: Introduce termination table bits (Alaa Hleihel) [1722647 1724336] - [kernel] mlx5: Add core dump register access HW bits (Alaa Hleihel) [1724336] - [netdrv] mlx5: potential error pointer dereference in error handling (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Support tagged tunnel over bond (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Avoid detaching non-existing netdev under switchdev mode (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix source port matching in fdb peer flow rule (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Replace reciprocal_scale in TX select queue function (Alaa Hleihel) [1724335] - [netdrv] mlx5: Avoid reloading already removed devices (Alaa Hleihel) [1724335] - [netdrv] mlx5: Update pci error handler entries and command translation (Alaa Hleihel) [1724335] - [infiniband] mlx5: avoid 64-bit division (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Disable rxhash when CQE compress is enabled (Alaa Hleihel) [1724335] - [netdrv] mlx5e: restrict the real_dev of vlan device is the same as uplink device (Alaa Hleihel) [1724335] - [netdrv] mlx5: Allocate root ns memory using kzalloc to match kfree (Alaa Hleihel) [1724335] - [netdrv] mlx5: Avoid double free in fs init error unwinding path (Alaa Hleihel) [1724335] - [netdrv] mlx5: Avoid double free of root ns in the error flow path (Alaa Hleihel) [1724335] - [netdrv] mlx5: Fix error handling in mlx5_load() (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix possible modify header actions memory leak (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix no rewrite fields with the same match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Additional check for flow destination comparison (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Add missing ethtool driver info for representors (Alaa Hleihel) [1766306 1724335] - [netdrv] mlx5e: Fix number of vports for ingress ACL configuration (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix ethtool rxfh commands when CONFIG_MLX5_EN_RXNFC is disabled (Alaa Hleihel) [1724335] - [netdrv] mlx5: Fix peer pf disable hca command (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Correct type to u16 for vport_num and int for vport_index (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add meaningful return codes to status_to_err function (Alaa Hleihel) [1724335] - [netdrv] mlx5: Imply MLXFW in mlx5_core (Alaa Hleihel) [1724335] - [netdrv] mlx5: Set completion EQs as shared resources (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Verify DEVX general object type correctly (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Remove MAYEXEC flag (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Device resource control for privileged DEVX user (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Add steering SW ICM device memory type (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Warn on allocated MEMIC buffers during cleanup (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Support device memory type attribute (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Add missing XRC options to QP optional params mask (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Use atomic rep state to serialize state change (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Fix the check of legal vport (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Use getter to access all vport array (Alaa Hleihel) [1724335] - [netdrv] mlx5: Use available mlx5_vport struct (Alaa Hleihel) [1724335] - [netdrv] mlx5: Reuse mlx5_esw_for_each_vf_vport macro in two files (Alaa Hleihel) [1724335] - [netdrv] mlx5: Remove unused mlx5_query_nic_vport_vlans (Alaa Hleihel) [1724335] - [netdrv] mlx5e: remove meaningless CFLAGS_tracepoint.o (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Put the common XDP code into a function (Alaa Hleihel) [1724335] - [netdrv] mlx5e: ethtool, Add support for EEPROM high pages query (Alaa Hleihel) [1724322 1724335] - [netdrv] mlx5e: Return error when trying to insert existing flower filter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Replace TC VLAN pop with VLAN 0 rewrite in prio tag mode (Alaa Hleihel) [1724335] - [netdrv] mlx5e: ACLs for priority tag mode (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Turn on HW tunnel offload in all TIRs (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Take common TIR context settings into a function (Alaa Hleihel) [1724335] - [kernel] mlx5: Fix broken hca cap offset (Alaa Hleihel) [1725554 1724335] - [kernel] mlx5: Geneve, Add flow table capabilities for Geneve decap with TLV options (Alaa Hleihel) [1725554 1724335] - [kernel] mlx5: Geneve, Add basic Geneve encap/decap flow table capabilities (Alaa Hleihel) [1725554 1724335] - [netdrv] mlx5: Eswitch, enable RoCE loopback traffic (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add new miss flow table action (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add support in RDMA RX steering (Alaa Hleihel) [1724335] - [netdrv] mlx5: Pass flow steering objects to fs_cmd (Alaa Hleihel) [1724335] - [netdrv] mlx5: Enable general events on all interfaces (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Restrict 'DELAY_DROP_TIMEOUT' subtype to Ethernet interfaces (Alaa Hleihel) [1724335] - [netdrv] mlx5: Separate and generalize dma device from pci device (Alaa Hleihel) [1724335] - [netdrv] mlx5: Get rid of storing copy of device name (Alaa Hleihel) [1724335] - [kernel] mlx5: e-switch: Introduce prio tag mode (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Expose TIR ICM address to user space (Alaa Hleihel) [1724335] - [netdrv] mlx5: Introduce new TIR creation core API (Alaa Hleihel) [1724335] - [kernel] mlx5: Expose TIR ICM address in command outbox (Alaa Hleihel) [1724335] - [kernel] mlx5: Expose SW ICM related device memory capabilities (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Use #define for the WQE wait timeout constant (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove unused rx_page_reuse stat (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Take HW interrupt trigger into a function (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove unused parameter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Add an underflow warning comment (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Move parameter calculation functions to en/params.c (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Report mlx5e_xdp_set errors (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove unused parameter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Inline small packets into the TX MPWQE in XDP xmit flow (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Add TX MPWQE session counter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Enhance RQ indication for XDP redirect flush (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Fix shifted flag index in RQ bitmap (Alaa Hleihel) [1724335] - [netdrv] mlx5e: RX, Support multiple outstanding UMR posts (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Don't create IB representors when in multiport RoCE mode (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Initialize roce port info before multiport master init (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Allow DEVX and raw creation flow on reps (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Add query e-switch vport context to devx white list (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Allow inserting a steering rule to the FDB (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Create flow table with max size supported (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Access the prio bypass inside the FDB flow table namespace (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Check for error return in flow_rule rather than err (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Remove VF representor profile (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move to single device multiport ports in switchdev mode (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move SMI caps logic (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Refactor netdev affinity code (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move default representors SQ steering to rule to modify QP (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move rep into port struct (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Use correct size for device resources (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move ports allocation to outside of INIT stage (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Free IB device on remove (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move netdev info into the port struct (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, add a new prio to be used by the RDMA side (Alaa Hleihel) [1724335] - [kernel] mlx5: E-Switch, don't use hardcoded values for FDB prios (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Remove references to uboject->context (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Unify logic of MTU boundaries (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Obsolete param field holding a constant value (Alaa Hleihel) [1724335] - [netdrv] mlx5: A write memory barrier is sufficient in EQ ci update (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Do not rewrite fields with the same match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Offload TC e-switch rules with ingress VLAN device (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Offload TC e-switch rules with egress VLAN device (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Allow VLAN rewrite of prio field with the same match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Deny VLAN rewrite if there is no VLAN header match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Use helpers to get headers criteria and value pointers (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Return -EOPNOTSUPP when attempting to offload an unsupported action (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Deletes unnecessary setting of esw_attr->parse_attr (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove 'parse_attr' argument in parse_tc_fdb_actions() (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Make the log friendly when decapsulation offload not supported (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Fix double mutex initialization (Alaa Hleihel) [1724335] - [netdrv] mlx5: Handle event of power detection in the PCIE slot (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Cleanup WQE page fault handler (Alaa Hleihel) [1724335] - [kernel] mlx5: Expose MPEIN (Management PCIE INfo) register layout (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add rate limit print macros (Alaa Hleihel) [1724335] - [infiniband] mlx5: Add explicit bar address field (Alaa Hleihel) [1724335] - [netdrv] mlx5: Replace dev_err/warn/info by mlx5_core_err/warn/info (Alaa Hleihel) [1724335] - [netdrv] mlx5: Use dev->priv.name instead of dev_name (Alaa Hleihel) [1724335] - [netdrv] mlx5: Make mlx5_core messages independent from mdev->pdev (Alaa Hleihel) [1724335] - [netdrv] mlx5: Break load_one into three stages (Alaa Hleihel) [1724335] - [netdrv] mlx5: Function setup/teardown procedures (Alaa Hleihel) [1724335] - [netdrv] mlx5: Move health and page alloc init to mdev_init (Alaa Hleihel) [1724335] - [netdrv] mlx5: Split mdev init and pci init (Alaa Hleihel) [1724335] - [netdrv] mlx5: Remove redundant init functions parameter (Alaa Hleihel) [1724335] - [kernel] mlx5: Remove spinlock support from mlx5_write64 (Alaa Hleihel) [1724335] - [kernel] mlx5: Remove unused MLX5_*_DOORBELL_LOCK macros (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Declare devx_async_cmd_event_fops static (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Compare only index part of a memory window rkey (Alaa Hleihel) [1724335] - [infiniband] mlx5: Convert mlx5_srq_table to XArray (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Replace TC VLAN pop and push actions with VLAN modify (Alaa Hleihel) [1722646 1724335] - [netdrv] mlx5e: Support VLAN modify action (Alaa Hleihel) [1722646 1724335] - [netdrv] mlx5e: Add VLAN ID rewrite fields (Alaa Hleihel) [1722646 1724335] - [netdrv] mlx5e: TX, Add geneve tunnel stateless offload support (Alaa Hleihel) [1722661 1724335] - [netdrv] mlx5e: Take SW parser code to a separate function (Alaa Hleihel) [1722661 1724335] - [netdrv] mlx5e: Fix port buffer function documentation format (Alaa Hleihel) [1724335] - [netdrv] mlx5: Simplify mlx5_sriov_is_enabled() by using pci core API (Alaa Hleihel) [1724335] - [netdrv] mlx5: Rename total_vfs to total_vports (Alaa Hleihel) [1724335] - [netdrv] mlx5: Simplify sriov enable/disable flow (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Use rdma_user_map_io for mapping BAR pages (Alaa Hleihel) [1724333] - [netdrv] mlx5e: ethtool, Remove unsupported SFP EEPROM high pages query (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Switch to Toeplitz RSS hash by default (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Protect against non-uplink representor for encap (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Rx, Fixup skb checksum for packets with tail padding (Alaa Hleihel) [1724333] - [netdrv] mlx5e: XDP, Avoid checksum complete when XDP prog is loaded (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Use fail-safe channels reopen in tx reporter recover (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Skip un-needed tx recover if interface state is down (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Update xon formula (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Update xoff formula (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, fix syndrome (0x678139) when turn on vepa (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5: E-Switch, Protect from invalid memory access in offload fdb table (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Fix access to invalid memory when toggling esw modes (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5e: Add a lock on tir list (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Fix error handling when refreshing TIRs (Alaa Hleihel) [1724333] - [netdrv] mlx5: Decrease default mr cache size (Alaa Hleihel) [1748518 1724333] - [infiniband] ib/mlx5: Reset access mask when looping inside page fault handler (Alaa Hleihel) [1724333] - [netdrv] mlx5: Avoid panic when setting vport rate (Alaa Hleihel) [1724333] - [netdrv] mlx5: Avoid panic when setting vport mac, getting vport config (Alaa Hleihel) [1724333] - [netdrv] mlx5e: IPoIB, Fix RX checksum statistics update (Alaa Hleihel) [1724333] - [netdrv] mlx5: Remove redundant lag function to get pf num (Alaa Hleihel) [1724333] - [netdrv] mlx5: ODP support for XRC transport is not enabled by default in FW (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Update tx reporter status in case channels were successfully opened (Alaa Hleihel) [1722274 1724333] - [netdrv] mellanox: Switch to bitmap_zalloc() (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Set correct write permissions for implicit ODP MR (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Declare mlx5e_tx_reporter_recover_from_ctx as static (Alaa Hleihel) [1724333] - [netdrv] mlx5: Support ndo bridge_setlink and getlink (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5: E-Switch, Add support for VEPA in legacy mode (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5e: Fix mlx5e_tx_reporter_create return value (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Fix return status of TX reporter timeout recover (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Re-add support for TX timeout when TX reporter is not valid (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Fix warn print in case of TX reporter creation failure (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Disable esw manager vport correctly (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Fix the warning on vport index out of range (Alaa Hleihel) [1724333] - [netdrv] mlx5: Delete unused FPGA QPN variable (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Wrap the open and apply of channels in one fail-safe function (Alaa Hleihel) [1724333] - [netdrv] mlx5: Factor out HCA capabilities functions (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Allow transition to offloads mode for ECPF (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Load/unload VF reps according to event from host PF (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Consider ECPF vport depends on eswitch ownership (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Assign a different position for uplink rep and vport (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Centralize repersentor reg/unreg to eswitch driver (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Support load/unload reps of specific vport types (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Add state to eswitch vport representors (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Use getter and iterator to access vport/rep (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Split VF and special vports for offloads mode (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Refactor offloads flow steering init/cleanup (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Properly refer to host PF vport as other vport (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Properly refer to the esw manager vport (Alaa Hleihel) [1724333] - [netdrv] mlx5: Correctly set LAG mode for ECPF (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Avoid magic numbers when initializing offloads mode (Alaa Hleihel) [1724333] - [kernel] mlx5: Relocate vport macros to the vport header file (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Normalize the name of uplink vport number (Alaa Hleihel) [1724333] - [kernel] mlx5: Provide an alternative VF upper bound for ECPF (Alaa Hleihel) [1724333] - [kernel] mlx5: Add host params change event (Alaa Hleihel) [1724333] - [kernel] mlx5: Add query host params command (Alaa Hleihel) [1724333] - [netdrv] mlx5: Update enable HCA dependency (Alaa Hleihel) [1724333] - [netdrv] mlx5: Introduce Mellanox SmartNIC and modify page management logic (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Use unified register/load function for uplink and VF vports (Alaa Hleihel) [1724333] - [netdrv] mlx5: Use consistent vport num argument type (Alaa Hleihel) [1724333] - [kernel] mlx5: Use void pointer as the type in address_of macro (Alaa Hleihel) [1724333] - [netdrv] mlx5: Align ODP capability function with netdev coding style (Alaa Hleihel) [1724333] - [netdrv] mlx5: use RCU lock in mlx5_eq_cq_get() (Alaa Hleihel) [1724333] - [infiniband] rdma/mlx5: Fix memory leak in case we fail to add an IB device (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Simplify WQE count power of two check (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Add tx timeout support for mlx5e tx reporter (Alaa Hleihel) [1722274 1724333] - [netdrv] mlx5e: Add tx reporter support (Alaa Hleihel) [1722274 1724333] - [infiniband] ib/mlx5: Advertise XRC ODP support (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Advertise SRQ ODP support for supported transports (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Add ODP SRQ support (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Let read user wqe also from SRQ buffer (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Add XRC initiator ODP support (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Clean mlx5_ib_mr_responder_pfault_handler() signature (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Remove useless check in ODP handler (Alaa Hleihel) [1724333] - [netdrv] mlx5: Set ODP SRQ support in firmware (Alaa Hleihel) [1724333] - [kernel] mlx5: Add XRC transport to ODP device capabilities layout (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Implement DEVX hot unplug for async command FD (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Implement the file ops of DEVX async command FD (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Reuse fold sw stats in representors (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Present the representors SW stats when state is not opened (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Separate between ethtool and netdev software stats folding (Alaa Hleihel) [1724333] - [netdrv] mlx5: Add trace points for flow tables create/destroy (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Expand XPS cpumask to cover all online cpus (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Take CQ decompress fields into a separate structure (Alaa Hleihel) [1724333] - [netdrv] mlx5e: RX, Make sure packet header does not cross page boundary (Alaa Hleihel) [1724333] - [infiniband] mlx5: no need to check return value of debugfs_create functions (Alaa Hleihel) [1724333] - [netdrv] mlx5: Add pci AtomicOps request (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Don't override existing ip_protocol (Alaa Hleihel) [1724333] - [infiniband] rdma/mlx5: Replace kzalloc with kcalloc (Alaa Hleihel) [1724333] - [documentation] netfilter: doc: Add nf_tables part in tproxy.txt (Phil Sutter) [1762977] - [net] netfilter: nft_socket: fix erroneous socket assignment (Phil Sutter) [1762977] - [net] netfilter: nft_socket: Break evaluation if no socket found (Phil Sutter) [1762977] - [net] netfilter: nft_tproxy: Fix missing-braces warning (Phil Sutter) [1762977] - [net] netfilter: nft_tproxy: Add missing config check (Phil Sutter) [1762977] - [net] netfilter: nf_tables: Add native tproxy support (Phil Sutter) [1762977] - [net] netfilter: nft_tproxy: Move nf_tproxy_assign_sock() to nf_tproxy.h (Phil Sutter) [1762977] - [net] sched: ensure opts_len <= IP_TUNNEL_OPTS_MAX in act_tunnel_key (Ivan Vecera) [1774706] - [net] ipmr: Fix skb headroom in ipmr_get_route(). (Guillaume Nault) [1773692] - [net] netns: fix GFP flags in rtnl_net_notifyid() (Guillaume Nault) [1763661] - [net] netns: fix NLM_F_ECHO mechanism for RTM_NEWNSID (Guillaume Nault) [1763661] - [netdrv] ptp: ptp_clock: Publish scaled_ppm_to_ppb (Ivan Vecera) [1772085] - [kernel] rh_features: move rh_features entry to sys/kernel (Hangbin Liu) [1660583] - [net] netfilter: nf_tables: Make nft_meta expression more robust (Phil Sutter) [1725169] - [tools] selftests/tls: add test for concurrent recv and send (Sabrina Dubroca) [1760375] - [net] tls: add a TX lock (Sabrina Dubroca) [1760375] - [net] tls: don't pay attention to sk_write_pending when pushing partial records (Sabrina Dubroca) [1760375] - [net] tls: fix sk_msg trim on fallback to copy mode (Sabrina Dubroca) [1760375] - [net] tls: align non temporal copy to cache lines (Sabrina Dubroca) [1760375] - [net] tls: remove the record tail optimization (Sabrina Dubroca) [1760375] - [net] tls: use RCU for the adder to the offload record list (Sabrina Dubroca) [1760375] - [net] tls: unref frags in order (Sabrina Dubroca) [1760375] - [net] tcp: ulp: fix possible crash in tcp_diag_get_aux_size() (Sabrina Dubroca) [1760375] - [net] tls: dedup the record cleanup (Sabrina Dubroca) [1760375] - [net] tls: clean up the number of #ifdefs for CONFIG_TLS_DEVICE (Sabrina Dubroca) [1760375] - [net] tls: narrow down the critical area of device_offload_lock (Sabrina Dubroca) [1760375] - [net] tls: don't jump to return (Sabrina Dubroca) [1760375] - [net] tls: export protocol version, cipher, tx_conf/rx_conf to socket diag (Sabrina Dubroca) [1760375] - [net] tcp: ulp: add functions to dump ulp-specific information (Sabrina Dubroca) [1760375] - [net] tls: use RCU protection on icsk->icsk_ulp_data (Sabrina Dubroca) [1760375] - [net] core/skmsg: Delete an unnecessary check before the function call "consume_skb" (Sabrina Dubroca) [1760375] - [net] tls, fix sk_write_space NULL write when tx disabled (Sabrina Dubroca) [1760375] - [net] tls: swap sk_write_space on close (Sabrina Dubroca) [1760375] - [net] tls: prevent skb_orphan() from leaking TLS plain text with offload (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add a litmus test for the socket reuse through shutdown (Sabrina Dubroca) [1760375] - [net] tls: partially revert fix transition through disconnect with close (Sabrina Dubroca) [1760375] - [documentation] TLS: fix stat counters description (Sabrina Dubroca) [1760375] - [tools] selftests/tls: fix TLS tests with CONFIG_TLS=n (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add shutdown tests (Sabrina Dubroca) [1760375] - [tools] selftests/tls: close the socket with open record (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add a bidirectional test (Sabrina Dubroca) [1760375] - [tools] selftests/tls: test error codes around TLS ULP installation (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add a test for ULP but no keys (Sabrina Dubroca) [1760375] - [net] bpf: sockmap/tls, close can race with map free (Sabrina Dubroca) [1760375] - [net] tls: fix transition through disconnect with close (Sabrina Dubroca) [1760375] - [net] tls: remove sock unlock/lock around strp_done() (Sabrina Dubroca) [1760375] - [net] tls: remove close callback sock unlock/lock around TX work flush (Sabrina Dubroca) [1760375] - [net] tls: don't call tls_sk_proto_close for hw record offload (Sabrina Dubroca) [1760375] - [net] tls: don't arm strparser immediately in tls_set_sw_offload() (Sabrina Dubroca) [1760375] - [net] tls: add missing prot info init (Sabrina Dubroca) [1760375] - [netdrv] mlx5: Return -EINVAL when WARN_ON_ONCE triggers in mlx5e_tls_resync(). (Sabrina Dubroca) [1760375] - [net] tls: don't clear TX resync flag on error (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add test for poll() with data in TLS ULP (Sabrina Dubroca) [1760375] - [net] tls: add kernel-driven resync mechanism for TX (Sabrina Dubroca) [1760375] - [net] tls: generalize the resync callback (Sabrina Dubroca) [1760375] - [net] tls: add kernel-driven TLS RX resync (Sabrina Dubroca) [1760375] - [net] tls: rename handle_device_resync() (Sabrina Dubroca) [1760375] - [net] tls: pass record number as a byte array (Sabrina Dubroca) [1760375] - [net] tls: simplify seq calculation in handle_device_resync() (Sabrina Dubroca) [1760375] - [net] tls: export TLS per skb encryption (Sabrina Dubroca) [1760375] - [include] net/tls: simplify driver context retrieval (Sabrina Dubroca) [1760375] - [include] net/tls: split the TLS_DRIVER_STATE_SIZE and bump TX to 16 bytes (Sabrina Dubroca) [1760375] - [net] tls: don't pass version to tls_advance_record_sn() (Sabrina Dubroca) [1760375] - [include] net/tls: reorganize struct tls_context (Sabrina Dubroca) [1760375] - [net] tls: use version from prot (Sabrina Dubroca) [1760375] - [net] tls: don't re-check msg decrypted status in tls_device_decrypted() (Sabrina Dubroca) [1760375] - [net] tls: don't look for decrypted frames on non-offloaded sockets (Sabrina Dubroca) [1760375] - [net] tls: remove false positive warning (Sabrina Dubroca) [1760375] - [net] tls: check return values from skb_copy_bits() and skb_store_bits() (Sabrina Dubroca) [1760375] - [net] tls: fully initialize the msg wrapper skb (Sabrina Dubroca) [1760375] - [net] tls: replace the sleeping lock around RX resync with a bit lock (Sabrina Dubroca) [1760375] - [net] revert "net/tls: avoid NULL-deref on resync during device removal" (Sabrina Dubroca) [1760375] - [net] tls: avoid NULL-deref on resync during device removal (Sabrina Dubroca) [1760375] - [net] tls: Add support of AES128-CCM based ciphers (Sabrina Dubroca) [1760375] - [documentation] add TLS offload documentation (Sabrina Dubroca) [1760375] - [documentation] tls: RSTify the ktls documentation (Sabrina Dubroca) [1760375] - [net] xdp: increase kABI version (Jiri Benc) [1749817] - [tools] selftests: bpf: disable test_seg6_loop test (Jiri Benc) [1749817] - [tools] selftests: bpf: fix test_tc_tunnel hanging (Jiri Benc) [1749817] - [tools] selftests: bpf: xdping is not meant to be run standalone (Jiri Benc) [1749817] - [tools] libbpf: Use implicit XSKMAP lookup from AF_XDP XDP program (Jiri Benc) [1749817] - [lib] bpf, testing: Introduce 'gso_linear_no_head_frag' skb_segment test (Jiri Benc) [1749817] - [lib] bpf, testing: Refactor test_skb_segment() for testing skb_segment() on different skbs (Jiri Benc) [1749817] - [tools] selftests/bpf: test_progs: Don't leak server_fd in tcp_rtt (Jiri Benc) [1749817] - [tools] selftests/bpf: test_progs: fix client/server race in tcp_rtt (Jiri Benc) [1749817] - [net] flow_dissector: Fix potential use-after-free on BPF_PROG_DETACH (Jiri Benc) [1749817] - [tools] selftests/bpf: fix race in test_tcp_rtt test (Jiri Benc) [1749817] - [net] xdp: unpin xdp umem pages in error path (Jiri Benc) [1749817] - [net] sock: make cookie generation global instead of per netns (Jiri Benc) [1749817] - [net] bpfilter: add "WITH Linux-syscall-note" to SPDX tag of uapi headers (Jiri Benc) [1749817] - [net] bpf: sockmap, only create entry if ulp is not already enabled (Jiri Benc) [1749817] - [net] bpf: sockmap, synchronize_rcu before free'ing map (Jiri Benc) [1749817] - [net] bpf: sockmap, sock_map_delete needs to use xchg (Jiri Benc) [1749817] - [net] core: page_pool: add user refcnt and reintroduce page_pool_destroy (Jiri Benc) [1749817] - [net] bpf: avoid unused variable warning in tcp_bpf_rtt() (Jiri Benc) [1749817] - [net] xdp: fix potential deadlock on socket mutex (Jiri Benc) [1749817] - [net] bpfilter: print umh messages to /dev/kmsg (Jiri Benc) [1749817] - [net] xdp: fix possible cq entry leak (Jiri Benc) [1749817] - [net] xdp: fix race on generic receive path (Jiri Benc) [1749817] - [samples] bpf: fix tcp_bpf.readme detach command (Jiri Benc) [1749817] - [samples] bpf: add sample program that periodically dumps TCP stats (Jiri Benc) [1749817] - [tools] selftests/bpf: test BPF_SOCK_OPS_RTT_CB (Jiri Benc) [1749817] - [tools] bpf/tools: sync bpf.h (Jiri Benc) [1749817] - [net] bpf: add icsk_retransmits to bpf_tcp_sock (Jiri Benc) [1749817] - [net] bpf: add dsack_dups/delivered{, _ce} to bpf_tcp_sock (Jiri Benc) [1749817] - [net] bpf: split shared bpf_tcp_sock and bpf_sock_ops implementation (Jiri Benc) [1749817] - [net] bpf: add BPF_CGROUP_SOCK_OPS callback that is executed on every RTT (Jiri Benc) [1749817] - [net] init/kconfig: add CONFIG_CC_CAN_LINK (Jiri Benc) [1749817] - [net] page_pool: add helper function for retrieving dma direction (Jiri Benc) [1749817] - [net] xdp: fix hang while unregistering device bound to xdp socket (Jiri Benc) [1749817] - [net] xdp: hold device for umem regardless of zero-copy mode (Jiri Benc) [1749817] - [net] xsk: Change the default frame size to 4096 and allow controlling it (Jiri Benc) [1749817] - [tools] libbpf: Support getsockopt XDP_OPTIONS (Jiri Benc) [1749817] - [net] xsk: Add getsockopt XDP_OPTIONS (Jiri Benc) [1749817] - [net] xsk: Add API to check for available entries in FQ (Jiri Benc) [1749817] - [net] xsk: Properly terminate assignment in xskq_produce_flush_desc (Jiri Benc) [1749817] - [net] xdp: Make __mem_id_disconnect static (Jiri Benc) [1749817] - [net] xsk: sample kernel code is now in libbpf (Jiri Benc) [1749817] - [net] page_pool: fix compile warning when CONFIG_PAGE_POOL is disabled (Jiri Benc) [1749817] - [net] page_pool: make sure struct device is stable (Jiri Benc) [1749817] - [net] page_pool: add tracepoints for page_pool with details need by XDP (Jiri Benc) [1749817] - [net] xdp: add tracepoints for XDP mem (Jiri Benc) [1749817] - [net] xdp: force mem allocator removal and periodic warning (Jiri Benc) [1749817] - [net] xdp: tracking page_pool resources and safe removal (Jiri Benc) [1749817] - [netdrv] mlx5: more strict use of page_pool API (Jiri Benc) [1749817] - [net] page_pool: introduce page_pool_free and use in mlx5 (Jiri Benc) [1749817] - [net] veth: use xdp_release_frame for XDP_PASS (Jiri Benc) [1749817] - [net] xdp: page_pool related fix to cpumap (Jiri Benc) [1749817] - [net] xdp: fix leak of IDA cyclic id if rhashtable_insert_slow fails (Jiri Benc) [1749817] - [net] page_pool: add helper function to unmap dma addresses (Jiri Benc) [1749817] - [net] page_pool: add helper function to retrieve dma addresses (Jiri Benc) [1749817] - [net] page_pool: use DMA_ATTR_SKIP_CPU_SYNC for DMA mappings (Jiri Benc) [1749817] - [net] page_pool: don't use page->private to store dma_addr_t (Jiri Benc) [1749817] - [mm] add dma_addr_t to struct page (Jiri Benc) [1749817] - [tools] bpf: Sync asm-generic/socket.h to tools/ (Jiri Benc) [1749817] - [net] bpf: net: Add SO_DETACH_REUSEPORT_BPF (Jiri Benc) [1749817] - [net] veth: Support bulk XDP_TX (Jiri Benc) [1749817] - [net] flow_dissector: remove unused FLOW_DISSECTOR_F_STOP_AT_L3 flag (Jiri Benc) [1749817] - [tools] selftests/bpf: fix compilation error for flow_dissector.c (Jiri Benc) [1749817] - [net] bpf: Update BPF_CGROUP_RUN_PROG_INET_EGRESS calls (Jiri Benc) [1749817] - [net] signal/bpfilter: Fix bpfilter_kernl to use send_sig not force_sig (Jiri Benc) [1749817] - [net] arch: Use asm-generic/socket.h when possible (Jiri Benc) [1749817] - [net] flow_dissector: correct comments on enum flow_dissector_key_id (Jiri Benc) [1749817] - [net] tcp: add stat of data packet reordering events (Jiri Benc) [1749817] - [net] tcp: add dsack blocks received stats (Jiri Benc) [1749817] - [net] tcp: add data bytes retransmitted stats (Jiri Benc) [1749817] - [net] tcp: add data bytes sent stats (Jiri Benc) [1749817] - [net] tcp: add a helper to calculate size of opt_stats (Jiri Benc) [1749817] - [net] netfilter: Support iif matches in POSTROUTING (Phil Sutter) [1775961] - [tools] selftests: add basic netdevsim devlink flash testing (Petr Oros) [1770359] - [netdrv] netdevsim: implement fake flash updating with notifications (Petr Oros) [1770359] - [net] devlink: allow driver to update progress of flash update (Petr Oros) [1770359] - [net] devlink: Add extack to shared buffer operations (Petr Oros) [1770347] - [net] xfrm: policy: avoid warning splat when merging nodes (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix bydst hlist corruption on hash rebuild (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix infinite loop when merging src-nodes (Sabrina Dubroca) [1758100] - [tools] selftests: xfrm: alter htresh to trigger move of policies to hash table (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix reinsertion on node merge (Sabrina Dubroca) [1758100] - [net] xfrm: policy: delete inexact policies from inexact list on hash rebuild (Sabrina Dubroca) [1758100] - [net] xfrm: policy: use hlist rcu variants on inexact insert, part 2 (Sabrina Dubroca) [1758100] - [tools] selftests: xfrm: add block rules with adjacent/overlapping subnets (Sabrina Dubroca) [1758100] - [net] xfrm: policy: remove set but not used variable 'priority' (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix policy hash rebuild (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix netlink/pf_key policy lookups (Sabrina Dubroca) [1758100] - [net] xfrm: policy: add 2nd-level saddr trees for inexact policies (Sabrina Dubroca) [1758100] - [net] xfrm: policy: store inexact policies in a tree ordered by source address (Sabrina Dubroca) [1758100] - [net] xfrm: policy: check reinserted policies match their node (Sabrina Dubroca) [1758100] - [net] xfrm: policy: store inexact policies in a tree ordered by destination address (Sabrina Dubroca) [1758100] - [net] xfrm: policy: add inexact policy search tree infrastructure (Sabrina Dubroca) [1758100] - [net] xfrm: policy: consider if_id when hashing inexact policy (Sabrina Dubroca) [1758100] - [net] xfrm: policy: store inexact policies in an rhashtable (Sabrina Dubroca) [1758100] - [net] xfrm: policy: return NULL when inexact search needed (Sabrina Dubroca) [1758100] - [net] xfrm: policy: split list insertion into a helper (Sabrina Dubroca) [1758100] - [net] xfrm: security: iterate all, not inexact lists (Sabrina Dubroca) [1758100] - [tools] selftests: add xfrm policy test script (Sabrina Dubroca) [1758100] - [net] af_packet: fix the tx skb protocol in raw sockets with ETH_P_ALL (Ivan Vecera) [1765561] - [netdrv] mlx5e: Trust kernel regarding transport offset (Ivan Vecera) [1765561] - [netdrv] net/mlx5e: Remove the wrong assumption about transport offset (Ivan Vecera) [1765561] - [net] packet: Remove redundant skb->protocol set (Ivan Vecera) [1765561] - [net] packet: Ask driver for protocol if not provided by user (Ivan Vecera) [1765561] - [net] ethernet: Add parse_protocol header_ops support (Ivan Vecera) [1765561] - [include] net: Introduce parse_protocol header_ops callback (Ivan Vecera) [1765561] - [net] Don't set transport offset to invalid value (Ivan Vecera) [1765561] - [netdrv] Fix Kconfig indentation (Josef Oskera) [1764592] - [netdrv] be2net: make two arrays static const, makes object smaller (Josef Oskera) [1764592] - [netdrv] be2net: eliminate enable field from be_aic_obj (Josef Oskera) [1764592] - [netdrv] Use skb_frag_off accessors (Josef Oskera) [1764592] - [netdrv] Use skb accessors in network drivers (Josef Oskera) [1764592] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 338 (Josef Oskera) [1764592] - [netdrv] treewide: Add SPDX license identifier - Makefile/Kconfig (Josef Oskera) [1764592] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Josef Oskera) [1764592] - [documentation] networking: switchdev: Update port parent ID section (Ivan Vecera) [1757840] - [net] Get rid of SWITCHDEV_ATTR_ID_PORT_PARENT_ID (Ivan Vecera) [1757840] - [net] dsa: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [drivers] staging: fsl-dpaa2: ethsw: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [netdrv] mscc: ocelot: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [netdrv] net/mlx5e: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [netdrv] liquidio: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [net] tipc: fix unlimited bundling of small messages (Jon Maloy) [1761969] - [net] tipc: clean up skb list lock handling on send path (Jon Maloy) [1761969] - [net] tipc: fix false detection of retransmit failures (Jon Maloy) [1761969] - [net] tipc: reduce risk of wakeup queue starvation (Jon Maloy) [1761969] - [net] tipc: fix changeover issues due to large packet (Jon Maloy) [1761969] - [net] tipc: optimize link synching mechanism (Jon Maloy) [1761969] - [net] tipc: Fix a typo (Jon Maloy) [1761969] - [net] tipc: use rcu dereference functions properly (Jon Maloy) [1761969] - [net] tipc: remove ub->ubsock checks (Jon Maloy) [1761969] - [net] tipc: embed jiffies in macro TIPC_BC_RETR_LIM (Jon Maloy) [1761969] - [net] tipc: add dst_cache support for udp media (Jon Maloy) [1761969] - [net] tipc: rename function msg_get_wrapped() to msg_inner_hdr() (Jon Maloy) [1761969] - [net] tipc: eliminate unnecessary skb expansion during retransmission (Jon Maloy) [1761969] - [net] tipc: simplify stale link failure criteria (Jon Maloy) [1761969] - [net] tipc: check msg->req data len in tipc_nl_compat_bearer_disable (Jon Maloy) [1761969] - [net] tipc: remove the unnecessary msg->req check from tipc_nl_compat_bearer_set (Jon Maloy) [1761969] - [net] tipc: fix issues with early FAILOVER_MSG from peer (Jon Maloy) [1761969] - [net] tipc: include retrans failure detection for unicast (Jon Maloy) [1761969] - [net] tipc: purge deferredq list for each grp member in tipc_group_delete (Jon Maloy) [1761969] - [net] devlink: remove redundant rtnl lock assert (Marcelo Leitner) [1774694]- [gpu] drm/i915/aml: Allow SPT PCH for all AML devices (Lyude Paul) [1761469 1731110] - [gpu] drm/i915/cml: Add second PCH ID for CMP (Lyude Paul) [1731110] - [drm] i915/cml: Add Missing PCI IDs (Lyude Paul) [1727949 1731110] - [gpu] DRM Backport 5.2 -> 5.3 (Lyude Paul) [1731110] - [xen] mm/pgtable: drop pgtable_t variable from pte_fn_t functions (Lyude Paul) [1731110] - [gpu] DRM Backport 5.1 -> 5.2 (Lyude Paul) [1731110] - [s390] bus_find_device: Unify the match callback with class_find_device (Lyude Paul) [1731110] - [kernel] i2c: algo-bit: include main i2c header (Lyude Paul) [1731110] - [extcon] axp288: Add a depends on ACPI to the Kconfig entry (Lyude Paul) [1731110] - [extcon] axp288: Convert to use acpi_dev_get_first_match_dev() (Lyude Paul) [1731110] - [acpi] gpio: merrifield: Fix build err without CONFIG_ACPI (Lyude Paul) [1731110] - [gpio] merrifield: Convert to use acpi_dev_get_first_match_dev() (Lyude Paul) [1731110] - [kernel] proc/sysctl: add shared variables for range check (Lyude Paul) [1731110] - [gpu] drm/i915: Split Pineview device info into desktop and mobile (Lyude Paul) [1731110] - [gpu] snd/hda, drm/i915: Track the display_power_status using a cookie (Lyude Paul) [1731110] - [video] hdmi: Dropped static functions from kernel doc (Lyude Paul) [1731110] - [video] hdmi: Add Unpack function for DRM infoframe (Lyude Paul) [1731110] - [video] drm: Enable HDR infoframe support (Lyude Paul) [1731110] - [kernel] drm: Add HDR source metadata property (Lyude Paul) [1731110] - [gpu] drm: Add colorspace info to AVI Infoframe (Lyude Paul) [1731110] - [gpu] drm: Add HDMI colorspace property (Lyude Paul) [1731110] - [kernel] video/hdmi: Add an enum for HDMI packet types (Lyude Paul) [1731110] - [video] hdmi: Constify infoframe passed to the pack functions (Lyude Paul) [1731110] - [video] hdmi: Constify infoframe passed to the log functions (Lyude Paul) [1731110] - [video] hdmi: Pass buffer size to infoframe unpack functions (Lyude Paul) [1731110] - [video] hdmi: Constify 'buffer' to the unpack functions (Lyude Paul) [1731110] - [video] media: hdmi.h: rename ADOBE_RGB to OPRGB and ADOBE_YCC to OPYCC (Lyude Paul) [1731110] - [media] replace ADOBERGB by OPRGB (Lyude Paul) [1731110] - [dma-buf] add show_fdinfo handler (Lyude Paul) [1731110] - [dma-buf] dma-fence: Signal all callbacks from dma_fence_release() (Lyude Paul) [1731110] - [dma-buf] udmabuf: actually unmap the scatterlist (Lyude Paul) [1731110] - [dma-buf] Make mmap callback actually optional (Lyude Paul) [1731110] - [dma-buf] Remove unused sync_dump() (Lyude Paul) [1731110] - [kernel] dma-buf: explicitely note that dma-fence-chains use 64bit seqno (Lyude Paul) [1731110] - [dma-buf] fix stack corruption in dma_fence_chain_release (Lyude Paul) [1731110] - [dma-buf] add new dma_fence_chain container v7 (Lyude Paul) [1731110] - [dma-buf] add some lockdep asserts to the reservation object implementation (Lyude Paul) [1731110] - [iommu] arm-smmu-v3: Fix build error without CONFIG_PCI_ATS (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Avoid locking on invalidation path when not using ATS (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Fix ATC invalidation ordering wrt main TLBs (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Rework enabling/disabling of ATS for PCI masters (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Don't issue CMD_SYNC for zero-length invalidations (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Remove boolean bitfield for 'ats_enabled' flag (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Document ordering guarantees of command insertion (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Defer TLB invalidation until ->iotlb_sync() (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Reduce contention during command-queue insertion (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Operate directly on low-level queue where possible (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Move low-level queue fields out of arm_smmu_queue (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Drop unused 'q' argument from Q_OVF macro (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Separate s/w and h/w views of prod and cons indexes (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Pass struct iommu_iotlb_gather to ->tlb_add_page() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Pass struct iommu_iotlb_gather to ->unmap() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Remove unused ->tlb_sync() callback (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Replace ->tlb_add_flush() with ->tlb_add_page() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable-arm: Call ->tlb_flush_walk() and ->tlb_flush_leaf() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Hook up ->tlb_flush_walk() and ->tlb_flush_leaf() in drivers (Jerry Snitselaar) [1729845] - [kernel] iommu/io-pgtable: Introduce tlb_flush_walk() and tlb_flush_leaf() (Jerry Snitselaar) [1729845] - [iommu] Pass struct iommu_iotlb_gather to ->unmap() and ->iotlb_sync() (Jerry Snitselaar) [1729845] - [kernel] iommu: Introduce iommu_iotlb_gather_add_page() (Jerry Snitselaar) [1729845] - [kernel] iommu: Introduce struct iommu_iotlb_gather for batching TLB flushes (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Rename iommu_gather_ops to iommu_flush_ops (Jerry Snitselaar) [1729845] - [iommu] io-pgtable-arm: Remove redundant call to io_pgtable_tlb_sync() (Jerry Snitselaar) [1729845] - [kernel] iommu: Remove empty iommu_tlb_range_add() callback from iommu_ops (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Invalidate ATC when detaching a device (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Add support for PCI ATS (Jerry Snitselaar) [1729845] - [iommu] Introduce iotlb_sync_map callback (Jerry Snitselaar) [1742234] - [kernel] dma-mapping: fix page attributes for dma_mmap_* (Jerry Snitselaar) [1754727] - [kernel] dma-mapping: check pfn validity in dma_common_{mmap, get_sgtable} (Jerry Snitselaar) [1754727] - [kernel] swiotlb: checking whether swiotlb buffer is full with io_tlb_used (Jerry Snitselaar) [1754727] - [kernel] dma-direct: fix zone selection after an unaddressable CMA allocation (Jerry Snitselaar) [1754727] - [kernel] dma-contiguous: page-align the size in dma_free_contiguous() (Jerry Snitselaar) [1754727] - [kernel] dma-contiguous: do not overwrite align in dma_alloc_contiguous() (Jerry Snitselaar) [1754727] - [kernel] dma-mapping: fix panic caused by passing empty cma command line argument (Jerry Snitselaar) [1754727] - [iommu] dma: Handle SG length overflow better (Jerry Snitselaar) [1742234] - [iommu] dma: Handle MSI mappings separately (Jerry Snitselaar) [1742234] - [iommu] dma: Apply dma_{alloc, free}_contiguous functions (Jerry Snitselaar) [1742234] - [iommu] dma: Don't depend on CONFIG_DMA_DIRECT_REMAP (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_mmap (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_get_sgtable (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_alloc, part 2 (Jerry Snitselaar) [1742234] - [iommu] dma: Cleanup variable naming in iommu_dma_alloc (Jerry Snitselaar) [1742234] - [iommu] dma: Split iommu_dma_free (Jerry Snitselaar) [1742234] - [iommu] dma: Merge the CMA and alloc_pages allocation paths (Jerry Snitselaar) [1742234] - [iommu] dma: Don't remap CMA unnecessarily (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_alloc (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_free (Jerry Snitselaar) [1742234] - [iommu] dma: Remove __iommu_dma_free (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor the page array remapping allocator (Jerry Snitselaar) [1742234] - [iommu] dma: Factor out remapped pages lookup (Jerry Snitselaar) [1742234] - [iommu] dma: Squash __iommu_dma_{map, unmap}_page helpers (Jerry Snitselaar) [1742234] - [iommu] dma: Move domain lookup into __iommu_dma_{map, unmap} (Jerry Snitselaar) [1742234] - [iommu] dma: Move __iommu_dma_map (Jerry Snitselaar) [1742234] - [iommu] dma: Use for_each_sg in iommu_dma_alloc (Jerry Snitselaar) [1742234] - [clk] Make clk_bulk_get_all() return a valid "id" (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Support all Mali configurations (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Correct Mali attributes (Jerry Snitselaar) [1722978] - [iommu] vt-d: Fix panic after kexec -p for kdump (Jerry Snitselaar) [1742234] - [kernel] iommu/iova: Fix compilation error with !CONFIG_IOMMU_IOVA (Jerry Snitselaar) [1742234] - [iommu] amd: Check PM_LEVEL_SIZE() condition in locked section (Jerry Snitselaar) [1742234] - [iommu] amd: Fix incorrect PASID decoding from event log (Jerry Snitselaar) [1742234] - [iommu] amd: Lock code paths traversing protection_domain->dev_list (Jerry Snitselaar) [1742234] - [iommu] amd: Lock dev_data in attach/detach code paths (Jerry Snitselaar) [1742234] - [iommu] amd: Check for busy devices earlier in attach_device() (Jerry Snitselaar) [1742234] - [iommu] amd: Take domain->lock for complete attach/detach path (Jerry Snitselaar) [1742234] - [iommu] amd: Remove amd_iommu_devtable_lock (Jerry Snitselaar) [1742234] - [iommu] amd: Remove domain->updated (Jerry Snitselaar) [1742234] - [iommu] iova: Avoid false sharing on fq_timer_on (Jerry Snitselaar) [1742234] - [iommu] Don't use sme_active() in generic code (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix wrong analysis whether devices share the same bus (Jerry Snitselaar) [1742234] - [iommu] amd: Wait for completion of IOTLB flush in attach_device (Jerry Snitselaar) [1742234] - [iommu] amd: Unmap all L7 PTEs when downgrading page-sizes (Jerry Snitselaar) [1742234] - [iommu] amd: Introduce first_pte_l7() helper (Jerry Snitselaar) [1742234] - [iommu] amd: Fix downgrading default page-sizes in alloc_pte() (Jerry Snitselaar) [1742234] - [iommu] amd: Fix pages leak in free_pagetable() (Jerry Snitselaar) [1742234] - [documentation] documentation: Update Documentation for iommu.passthrough (Jerry Snitselaar) [1745844] - [iommu] Disable passthrough mode when SME is active (Jerry Snitselaar) [1745844] - [iommu] Set default domain type at runtime (Jerry Snitselaar) [1745844] - [iommu] Print default domain type on boot (Jerry Snitselaar) [1745844] - [x86] dma: Get rid of iommu_pass_through (Jerry Snitselaar) [1745844] - [iommu] vt-d: Request passthrough mode from IOMMU core (Jerry Snitselaar) [1745844] - [iommu] amd: Request passthrough mode from IOMMU core (Jerry Snitselaar) [1745844] - [iommu] Use Functions to set default domain type in iommu_set_def_domain_type() (Jerry Snitselaar) [1745844] - [iommu] Add helpers to set/get default domain type (Jerry Snitselaar) [1745844] - [iommu] Remember when default domain type was set on kernel command line (Jerry Snitselaar) [1745844] - [iommu] amd: Flush old domains in kdump kernel (Jerry Snitselaar) [1742234] - [iommu] amd: Fix race in increase_address_space() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove global page flush support (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix possible use-after-free of private domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Detach domain before using a private one (Jerry Snitselaar) [1742234] - [iommu] vt-d: Correctly check format of page table in debugfs (Jerry Snitselaar) [1742234] - [iommu] vt-d: Detach domain when move device out of group (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Mark expected switch fall-through (Jerry Snitselaar) [1722978] - [iommu] vt-d: Print pasid table entries MSB to LSB in debugfs (Jerry Snitselaar) [1742234] - [iommu] iova: Remove stale cached32_node (Jerry Snitselaar) [1742234] - [iommu] vt-d: Check if domain->pgd was allocated (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't queue_iova() if there is no flush queue (Jerry Snitselaar) [1742234] - [iommu] amd: fix a crash in iova_magazine_free_pfns (Jerry Snitselaar) [1742234] - [iommu] Use right function to get group for device (Jerry Snitselaar) [1742234] - [iommu] arm-smmu-v3: Fix compilation when CONFIG_CMA=n (Jerry Snitselaar) [1722978] - [iommu] io-pgtable: Support non-coherent page tables (Jerry Snitselaar) [1722978] - [iommu] io-pgtable: Replace IO_PGTABLE_QUIRK_NO_DMA with specific flag (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm-v7s: request DMA32 memory, and improve debugging (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Add support to use system cache (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Increase maximum size of queues (Jerry Snitselaar) [1722978] - [iommu] amd: Flush not present cache in iommu_map_page (Jerry Snitselaar) [1742234] - [iommu] amd: Only free resources once on init error (Jerry Snitselaar) [1742234] - [iommu] amd: Move gart fallback to amd_iommu_init (Jerry Snitselaar) [1742234] - [iommu] amd: Make iommu_disable safer (Jerry Snitselaar) [1742234] - [iommu] amd: Add missed 'tag' to error msg in iommu_print_event (Jerry Snitselaar) [1742234] - [iommu] amd: Remove redundant assignment to variable npages (Jerry Snitselaar) [1742234] - [iommu] vt-d: Cleanup unused variable (Jerry Snitselaar) [1742234] - [iommu] vt-d: Silence a variable set but not used (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove an unused variable "length" (Jerry Snitselaar) [1742234] - [iommu] vt-d: Cleanup after delegating DMA domain to generic iommu (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix suspicious RCU usage in probe_acpi_namespace_devices() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Allow DMA domain attaching to rmrr locked device (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't enable iommu's which have been ignored (Jerry Snitselaar) [1742234] - [iommu] vt-d: Set domain type for a private domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't return error when device gets right domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix a variable set but not used (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Fix typo in SVM code comment (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove static identity map code (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove duplicated code for device hotplug (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove startup parameter from device_def_domain_type() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Cleanup get_valid_domain_for_dev() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Implement is_attach_deferred iommu ops entry (Jerry Snitselaar) [1742234] - [iommu] vt-d: Probe DMA-capable ACPI name space devices (Jerry Snitselaar) [1742234] - [iommu] vt-d: Handle 32bit device with identity default domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Identify default domains replaced with private (Jerry Snitselaar) [1742234] - [iommu] vt-d: Delegate the dma domain to upper layer (Jerry Snitselaar) [1742234] - [iommu] vt-d: Delegate the identity domain to upper layer (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add device_def_domain_type() helper (Jerry Snitselaar) [1742234] - [iommu] vt-d: Enable DMA remapping after rmrr mapped (Jerry Snitselaar) [1742234] - [iommu] vt-d: Expose ISA direct mapping region via iommu_get_resv_regions (Jerry Snitselaar) [1742234] - [iommu] vt-d: Implement apply_resv_region iommu ops entry (Jerry Snitselaar) [1742234] - [iommu] Add API to request DMA domain for device (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support to show scalable mode DMAR table internals (Jerry Snitselaar) [1742234] - [iommu] vt-d: Introduce macros useful for dumping DMAR table (Jerry Snitselaar) [1742234] - [iommu] vt-d: Modify the format of intel DMAR tables dump (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove unnecessary rcu_read_locks (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix bind svm with multiple devices (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Avoid constant zero in TLBI writes (Jerry Snitselaar) [1722978] - [iommu] vt-d: Set the right field for Page Walk Snoop (Jerry Snitselaar) [1742234] - [iommu] Add missing new line for dma type (Jerry Snitselaar) [1742234] - [kernel] iommu/iova: Separate atomic variables to improve performance (Jerry Snitselaar) [1742234] - [iommu] Remove iommu_callback_data (Jerry Snitselaar) [1742234] - [iommu] amd: Remove amd_iommu_pd_list (Jerry Snitselaar) [1742234] - [iommu] amd: Use pci_prg_resp_pasid_required() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix leak in intel_pasid_alloc_table on error path (Jerry Snitselaar) [1742234] - [iommu] vt-d: Make kernel parameter igfx_off work with vIOMMU (Jerry Snitselaar) [1742234] - [iommu] vt-d: Set intel_iommu_gfx_mapped correctly (Jerry Snitselaar) [1742234] - [iommu] vt-d: cleanup: no spaces at the start of a line (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't request page request irq under dmar_global_lock (Jerry Snitselaar) [1742234] - [iommu] vt-d: Use struct_size() helper (Jerry Snitselaar) [1742234] - [iommu] vt-d: Flush IOTLB for untrusted device in time (Jerry Snitselaar) [1742234] - [iommu] vt-d: Clean up iommu_no_mapping (Jerry Snitselaar) [1742234] - [vfio] type1: Add domain at(de)taching group helpers (Jerry Snitselaar) [1742234] - [iommu] vt-d: Return ID associated with an auxiliary domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Aux-domain specific domain attach/detach (Jerry Snitselaar) [1742234] - [iommu] vt-d: Move common code out of iommu_attch_device() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add per-device IOMMU feature ops entries (Jerry Snitselaar) [1742234] - [iommu] vt-d: Make intel_iommu_enable_pasid() more generic (Jerry Snitselaar) [1742234] - [iommu] vt-d: Switch to bitmap_zalloc() (Jerry Snitselaar) [1742234] - [iommu] Bind process address spaces to devices (Jerry Snitselaar) [1742234] - [iommu] Add APIs for multiple domains per device (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Log CBFRSYNRA register on context fault (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Don't disable SMMU in kdump kernel (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Disable tagged pointers (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Link domains and devices (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Add a master->domain pointer (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Store SteamIDs in master (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Rename arm_smmu_master_data to arm_smmu_master (Jerry Snitselaar) [1722978] - [iommu] io-pgtable: Add ARM Mali midgard MMU page table format (Jerry Snitselaar) [1722978] - [iommu] vt-d: Save the right domain ID used by hardware (Jerry Snitselaar) [1742234] - [iommu] iova: Fix tracking of recently failed iova address (Jerry Snitselaar) [1742234] - [iommu] Fix IOMMU debugfs fallout (Jerry Snitselaar) [1742234] - [kernel] iommu: Document iommu_ops.is_attach_deferred() (Jerry Snitselaar) [1742234] - [kernel] iommu: Document iommu_ops.iotlb_sync_map() (Jerry Snitselaar) [1742234] - [kernel] iommu: Fix flush_tlb_all typo (Jerry Snitselaar) [1742234] - [iommu] io-pgtable-arm-v7s: Only kmemleak_ignore L2 tables (Jerry Snitselaar) [1722978] - [iommu] Use dev_printk() when possible (Jerry Snitselaar) [1742234] - [kernel] iommu: Allow io-pgtable to be used outside of iommu/ (Jerry Snitselaar) [1722978] - [iommu] iova: Allow compiling the library without IOMMU support (Jerry Snitselaar) [1742234] - [iommu] amd: Use dev_printk() when possible (Jerry Snitselaar) [1742234] - [iommu] amd: Remove clear_flush_young notifier (Jerry Snitselaar) [1742234] - [iommu] amd: Print reason for iommu_map_page failure in map_sg (Jerry Snitselaar) [1742234] - [iommu] vt-d: Get domain ID before clear pasid entry (Jerry Snitselaar) [1742234] - [iommu] vt-d: Set context field after value initialized (Jerry Snitselaar) [1742234] - [kernel] pci/ats: Add inline to pci_prg_resp_pasid_required() (Jerry Snitselaar) [1724921 1724927] - [iommu] vt-d: Enable ATS only if the device uses page aligned address (Jerry Snitselaar) [1724922] - [pci] ats: Add pci_ats_page_aligned() interface (Jerry Snitselaar) [1724922] - [iommu] vt-d: Fix PRI/PASID dependency issue (Jerry Snitselaar) [1724921 1724927] - [pci] ats: Add pci_prg_resp_pasid_required() interface (Jerry Snitselaar) [1724921 1724927] - [iommu] vt-d: Allow interrupts from the entire bus for aliased devices (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add helper to set an IRTE to verify only the bus number (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove misleading "domain 0" test from domain_exit() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove unused dmar_remove_one_dev_info() argument (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove unnecessary local variable initializations (Jerry Snitselaar) [1742234] - [iommu] vt-d: Use dev_printk() when possible (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove change_pte notifier (Jerry Snitselaar) [1742234] - iommu/vt-d: Implement dma_[un]map_resource() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Support page request in scalable mode (Jerry Snitselaar) [1742234] - [iommu] vt-d: Leave scalable mode default off (Jerry Snitselaar) [1742234] - [iommu] of: Fix probe-deferral (Jerry Snitselaar) [1742234] - [iommu] Check for iommu_ops == NULL in iommu_probe_device() (Jerry Snitselaar) [1742234] - [iommu] of: Don't call iommu_ops->add_device directly (Jerry Snitselaar) [1742234] - powerpc/iommu: Use device_iommu_mapped() (Jerry Snitselaar) [1742234] - [powerpc] iommu: Use device_iommu_mapped() (Jerry Snitselaar) [1742234] - [iommu] of: Use device_iommu_mapped() (Jerry Snitselaar) [1742234] - [iommu] of: Use helper functions to access dev->iommu_fwspec (Jerry Snitselaar) [1742234] - [iommu] dma: Use helper functions to access dev->iommu_fwspec (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Use helper functions to access dev->iommu_fwspec (Jerry Snitselaar) [1722978] - [acpi] iort: Fix rc_dma_get_range() (Jerry Snitselaar) [1722978] - [kernel] iommu: Change tlb_range_add to iotlb_range_add and tlb_sync to iotlb_sync (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Make arm-smmu-v3 explicitly non-modular (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Make arm-smmu explicitly non-modular (Jerry Snitselaar) [1722978] - [iommu] Audit and remove any unnecessary uses of module.h (Jerry Snitselaar) [1742234] - [iommu] irq_remapping: Remove unused header files (Jerry Snitselaar) [1742234] - [iommu] Do physical merging in iommu_map_sg() (Jerry Snitselaar) [1742234] - [iommu] amd: Remove leading 0s in error log messages (Jerry Snitselaar) [1742234] - [iommu] amd: Fix line-break in error log reporting (Jerry Snitselaar) [1742234] - [iommu] amd: Use pr_fmt() (Jerry Snitselaar) [1742234] - [iommu] amd: Allow to upgrade page-size (Jerry Snitselaar) [1742234] - [iommu] amd: Restart loop if cmpxchg64 succeeded in alloc_pte() (Jerry Snitselaar) [1742234] - [iommu] amd: Allow downgrading page-sizes in alloc_pte() (Jerry Snitselaar) [1742234] - [iommu] amd: Ignore page-mode 7 in free_sub_pt() (Jerry Snitselaar) [1742234] - [iommu] amd: Introduce free_sub_pt() function (Jerry Snitselaar) [1742234] - [iommu] amd: Collect page-table pages in freelist (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove deferred invalidation (Jerry Snitselaar) [1724930] - [iommu] vt-d: Shared virtual address in scalable mode (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add first level page table interface (Jerry Snitselaar) [1742234] - [iommu] vt-d: Setup context and enable RID2PASID support (Jerry Snitselaar) [1742234] - [iommu] vt-d: Pass pasid table to context mapping (Jerry Snitselaar) [1742234] - [iommu] vt-d: Setup pasid entry for RID2PASID support (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add second level page table interface (Jerry Snitselaar) [1742234] - [iommu] vt-d: Reserve a domain id for FL and PT modes (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add 256-bit invalidation descriptor support (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Move page table helpers into header (Jerry Snitselaar) [1742234] - [iommu] vt-d: Manage scalalble mode PASID tables (Jerry Snitselaar) [1742234] - [iommu] vt-d: Enumerate the scalable mode capability (Jerry Snitselaar) [1742234] - [kernel] iommu/vtd: Cleanup dma_remapping.h header (Jerry Snitselaar) [1742234] - [documentation] dt-bindings: arm-smmu: Add binding doc for Qcom smmu-500 (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Add support for qcom, smmu-v2 variant (Jerry Snitselaar) [1722978] - [documentation] dt-bindings: arm-smmu: Add bindings for qcom, smmu-v2 (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Add the device_link between masters and smmu (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Invoke pm_runtime across the driver (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Add pm_runtime/sleep ops (Jerry Snitselaar) [1722978] - [clk] add managed version of clk_bulk_get_all (Jerry Snitselaar) [1722978] - [clk] add new APIs to operate on all available clocks (Jerry Snitselaar) [1722978] - [clk] bulk: add of_clk_bulk_get() (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Use explicit mb() when moving cons pointer (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Avoid memory corruption from Hisilicon MSI payloads (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Fix big-endian CMD_SYNC writes (Jerry Snitselaar) [1722978] - [iommu] revert "iommu/io-pgtable-arm: Check for v7s-incapable systems" (Jerry Snitselaar) [1722978] - [iommu] Fix a typo (Jerry Snitselaar) [1742234] - [iommu] Tidy up window attributes (Jerry Snitselaar) [1742234] - [iommu] amd: Add default branch in amd_iommu_capable() (Jerry Snitselaar) [1742234] - [iommu] amd: Move iommu_init_pci() to .init section (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support to show context internals (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support for Interrupt remapping (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support to show register contents (Jerry Snitselaar) [1742234] - [iommu] vt-d: Enable base Intel IOMMU debugfs support (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Update register definitions to VT-d 3.0 specification (Jerry Snitselaar) [1742234] - [iommu] vt-d: Relocate struct/function declarations to its header files (Jerry Snitselaar) [1742234] - [of] iommu/of: make of_pci_map_rid() available for other devices too (Jerry Snitselaar) [1742234] - [iommu] arm-smmu-v3: Remove unnecessary wrapper function (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Add SPDX header (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Fix a couple of minor comment typos (Jerry Snitselaar) [1722978] - [kernel] iommu/shmobile: Remove unused linux/platform_data/sh_ipmmu.h header (Jerry Snitselaar) [1742234] - [iommu] vt-d: Handle memory shortage on pasid table allocation (Jerry Snitselaar) [1742234] - [iommu] Add sysfs attribyte for domain type (Jerry Snitselaar) [1742234] - [iommu] amd: Add basic debugfs infrastructure for AMD IOMMU (Jerry Snitselaar) [1742234] - [iommu] Enable debugfs exposure of IOMMU driver internals (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove the obsolete per iommu pasid tables (Jerry Snitselaar) [1742234] - [iommu] vt-d: Apply per pci device pasid table in SVA (Jerry Snitselaar) [1742234] - [iommu] vt-d: Allocate and free pasid table (Jerry Snitselaar) [1742234] - [iommu] vt-d: Per PCI device pasid table interfaces (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add for_each_device_domain() helper (Jerry Snitselaar) [1742234] - [iommu] vt-d: Move device_domain_info to header (Jerry Snitselaar) [1742234] - [iommu] vt-d: Apply global PASID in SVA (Jerry Snitselaar) [1742234] - [iommu] vt-d: Avoid using idr_for_each_entry() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Global PASID name space (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix dev iotlb pfsid use (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Add definitions for PFSID (Jerry Snitselaar) [1742234] - [iommu] amd: Argument page_size could be uninitialized (Jerry Snitselaar) [1742234] - [iommu] arm-smmu-v3: Abort all transactions if SMMU is enabled in kdump kernel (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Prevent any devices access to memory without registration (Jerry Snitselaar) [1722978] - [iommu] [] iommu/arm-smmu-v3: sync the OVACKFLG to PRIQ consumer register (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm-v7s: Abort allocation when table address overflows the PTE (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Fix pgtable allocation in selftest (Jerry Snitselaar) [1722978] - [netdrv] iavf: initialize ITRN registers with correct values (Stefan Assmann) [1721697] - [netdrv] iavf: fix MAC address setting for VFs when filter is rejected (Stefan Assmann) [1721697] - [netdrv] iavf: allow permanent MAC address to change (Stefan Assmann) [1721697] - [netdrv] iavf: remove unused debug function iavf_debug_d (Stefan Assmann) [1721697] - [netdrv] Use skb_frag_off accessors (Stefan Assmann) [1721697] - [netdrv] Use skb accessors in network drivers (Stefan Assmann) [1721697] - [netdrv] iavf: fix dereference of null rx_buffer pointer (Stefan Assmann) [1721697] - [netdrv] iavf: Fix up debug print macro (Stefan Assmann) [1721697] - [netdrv] iavf: use struct_size() helper (Stefan Assmann) [1721697] - [netdrv] iavf: allow null RX descriptors (Stefan Assmann) [1721697] - [netdrv] iavf: add call to iavf_[add|del]_cloud_filter (Stefan Assmann) [1721697] - [netdrv] iavf: Refactor init state machine (Stefan Assmann) [1721697] - [netdrv] iavf: Refactor the watchdog state machine (Stefan Assmann) [1721697] - [netdrv] iavf: Remove timer for work triggering, use delaying work instead (Stefan Assmann) [1721697] - [netdrv] iavf: Move commands processing to the separate function (Stefan Assmann) [1721697] - [netdrv] iavf: Fix the math for valid length for ADq enable (Stefan Assmann) [1721697] - [netdrv] iavf: Change GFP_KERNEL to GFP_ATOMIC in kzalloc() (Stefan Assmann) [1721697] - [netdrv] iavf: wait longer for close to complete (Stefan Assmann) [1721697] - [netdrv] iavf: use signed variable (Stefan Assmann) [1721697] - [netdrv] iavf: Create VLAN tag elements starting from the first element (Stefan Assmann) [1721697] - [netdrv] iavf: update comments and file checks to match iavf (Stefan Assmann) [1721697] - [netdrv] iavf: rename i40e_device to iavf_device (Stefan Assmann) [1721697] - [netdrv] iavf: change remaining i40e defines to be iavf (Stefan Assmann) [1721697] - [netdrv] iavf: rename iavf_client.h defines to match driver name (Stefan Assmann) [1721697] - [netdrv] iavf: rename iavf_status structure flags (Stefan Assmann) [1721697] - [netdrv] iavf: replace i40e variables with iavf (Stefan Assmann) [1721697] - [netdrv] iavf: rename i40e functions to be iavf (Stefan Assmann) [1721697] - [netdrv] iavf: change iavf_status_code to iavf_status (Stefan Assmann) [1721697] - [netdrv] iavf: Rename i40e_adminq* files to iavf_adminq* (Stefan Assmann) [1721697] - [netdrv] iavf: iavf_client: use struct_size() helper (Stefan Assmann) [1721697] - [netdrv] iavf: use struct_size() in kzalloc() (Stefan Assmann) [1721697] - [netdrv] iavf: Limiting RSS queues to CPUs (Stefan Assmann) [1721697] - [netdrv] iavf: Use printf instead of gnu_printf for iavf_debug_d (Stefan Assmann) [1721697] - [netdrv] igb/igc: use ktime accessors for skb->tstamp (Stefan Assmann) [1721695] - [netdrv] i40e: Fix for ethtool -m issue on X722 NIC (Stefan Assmann) [1721695] - [netdrv] intel: Demote MTU change prints to debug (Stefan Assmann) [1721695] - [netdrv] i40e: implement VF stats NDO (Stefan Assmann) [1721695] - [netdrv] i40e: enable X710 support (Stefan Assmann) [1721695] - [netdrv] i40e: Add UDP segmentation offload support (Stefan Assmann) [1721695] - [netdrv] i40e: prevent memory leak in i40e_setup_macvlans (Stefan Assmann) [1721695] - [netdrv] i40e: Refactoring VF MAC filters counting to make more reliable (Stefan Assmann) [1721695] - [netdrv] i40e: Fix LED blinking flow for X710T*L devices (Stefan Assmann) [1721695] - [netdrv] i40e: allow ethtool to report SW and FW versions in recovery mode (Stefan Assmann) [1721695] - [netdrv] i40e: initialize ITRN registers with correct values (Stefan Assmann) [1721695] - [netdrv] i40e: Extend PHY access with page change flag (Stefan Assmann) [1721695] - [netdrv] i40e: Extract detection of HW flags into a function (Stefan Assmann) [1721695] - [netdrv] i40e: Wrong 'Advertised FEC modes' after set FEC to AUTO (Stefan Assmann) [1721695] - [netdrv] i40e: Fix for persistent lldp support (Stefan Assmann) [1721695] - [netdrv] i40e: clear __I40E_VIRTCHNL_OP_PENDING on invalid min Tx rate (Stefan Assmann) [1721695] - [netdrv] i40e: use BIT macro to specify the cloud filter field flags (Stefan Assmann) [1721695] - [netdrv] i40e: Fix message for other card without FEC (Stefan Assmann) [1721695] - [netdrv] i40e: fix missed "Negotiated" string in i40e_print_link_message() (Stefan Assmann) [1721695] - [netdrv] i40e: mark additional missing bits as reserved (Stefan Assmann) [1721695] - [netdrv] i40e: remove I40E_AQC_ADD_CLOUD_FILTER_OIP (Stefan Assmann) [1721695] - [netdrv] i40e: use ktime_get_real_ts64 instead of ktime_to_timespec64 (Stefan Assmann) [1721695] - [netdrv] i40e: check __I40E_VF_DISABLE bit in i40e_sync_filters_subtask (Stefan Assmann) [1721695] - [netdrv] i40e: Remove EMPR traces from debugfs facility (Stefan Assmann) [1721695] - [netdrv] i40e: Implement debug macro hw_dbg using dev_dbg (Stefan Assmann) [1721695] - [netdrv] i40e: fix hw_dbg usage in i40e_hmc_get_object_va (Stefan Assmann) [1721695] - [netdrv] i40e: simplify Rx buffer recycle (Stefan Assmann) [1721695] - [netdrv] i40e: fix retrying in i40e_aq_get_phy_capabilities (Stefan Assmann) [1721695] - [netdrv] i40e: Persistent LLDP support (Stefan Assmann) [1721695] - [netdrv] i40e: allow reset in recovery mode (Stefan Assmann) [1721695] - [netdrv] i40e: Remove function i40e_update_dcb_config() (Stefan Assmann) [1721695] - [netdrv] i40e: Fix crash caused by stress setting of VF MAC addresses (Stefan Assmann) [1721695] - [netdrv] i40e: reset veb.tc_stats when resetting veb.stats (Stefan Assmann) [1721695] - [netdrv] i40e: Update FW API version to 1.9 (Stefan Assmann) [1721695] - [netdrv] i40e: check_recovery_mode had wrong if statement (Stefan Assmann) [1721695] - [netdrv] i40e: Add drop mode parameter to set mac config (Stefan Assmann) [1721695] - [netdrv] i40e: fix shifts of signed values (Stefan Assmann) [1721695] - [netdrv] i40e: add check on i40e_configure_tx_ring() return value (Stefan Assmann) [1721695] - [netdrv] i40e: Check if transceiver implements DDM before access (Stefan Assmann) [1721695] - [netdrv] i40e: reduce stack usage in i40e_set_fc (Stefan Assmann) [1721695] - [netdrv] i40e: no need to check return value of debugfs_create functions (Stefan Assmann) [1721695] - [netdrv] i40e: Remove unicast log when VF is leaving multicast mode (Stefan Assmann) [1721695] - [netdrv] i40e: verify string count matches even on early return (Stefan Assmann) [1721695] - [netdrv] i40e: Log info when PF is entering and leaving Allmulti mode (Stefan Assmann) [1721695] - [netdrv] i40e: Update visual effect for advertised FEC mode (Stefan Assmann) [1721695] - [netdrv] i40e: fix code comments (Stefan Assmann) [1721695] - [netdrv] i40e: don't report link up for a VF who hasn't enabled queues (Stefan Assmann) [1721695] - [netdrv] i40e: Log disable-fw-lldp flag change by ethtool (Stefan Assmann) [1721695] - [netdrv] i40e: fix incorrect ethtool statistics veb and veb.tc_ (Stefan Assmann) [1721695] - [netdrv] Use skb_frag_off accessors (Stefan Assmann) [1721695] - [netdrv] i40e: Use dev_get_drvdata (Stefan Assmann) [1721695] - [netdrv] Use skb accessors in network drivers (Stefan Assmann) [1721695] - [netdrv] i40e: Add macvlan support on i40e (Stefan Assmann) [1721695] - [netdrv] i40e/i40e_virtchnl_pf: Use struct_size() in kzalloc() (Stefan Assmann) [1721695] - [netdrv] i40e: update copyright string (Stefan Assmann) [1721695] - [netdrv] i40e: Fix descriptor count manipulation (Stefan Assmann) [1721695] - [netdrv] i40e: missing priorities for any QoS traffic (Stefan Assmann) [1721695] - [netdrv] i40e: Add log entry while creating or deleting TC0 (Stefan Assmann) [1721695] - [netdrv] i40e: fix incorrect function documentation comment (Stefan Assmann) [1721695] - [netdrv] i40e: Fix for missing "link modes" info in ethtool (Stefan Assmann) [1721695] - [netdrv] i40e: fix 'Unknown bps' in dmesg for 2.5Gb/5Gb speeds (Stefan Assmann) [1721695] - [netdrv] i40e: mark expected switch fall-through (Stefan Assmann) [1721695] - [netdrv] i40e: Missing response checks in driver when starting/stopping FW LLDP (Stefan Assmann) [1721695] - [netdrv] i40e: remove duplicate stat calculation for tx_errors (Stefan Assmann) [1721695] - [netdrv] i40e: Check if the BAR size is large enough before writing to registers (Stefan Assmann) [1721695] - [netdrv] i40e: Missing response checks in driver when starting/stopping FW LLDP (Stefan Assmann) [1721695] - [netdrv] i40e: add input validation for virtchnl handlers (Stefan Assmann) [1721695] - [netdrv] i40e: Improve AQ log granularity (Stefan Assmann) [1721695] - [netdrv] i40e: Add bounds check for ch[] array (Stefan Assmann) [1721695] - [netdrv] i40e: Use signed variable (Stefan Assmann) [1721695] - [netdrv] i40e: add constraints for accessing veb array (Stefan Assmann) [1721695] - [netdrv] i40e: let untrusted VF to create up to 16 VLANs (Stefan Assmann) [1721695] - [netdrv] i40e: add functions stubs to support EEE (Stefan Assmann) [1721695] - [netdrv] i40e: Use LLDP ethertype define ETH_P_LLDP (Stefan Assmann) [1721695] - [netdrv] r8169: disable TSO on a single version of RTL8168c to fix performance (Corinna Vinschen) [1730024] - [netdrv] r8169: fix sporadic transmit timeout issue (Corinna Vinschen) [1730024] - [netdrv] r8169: inline rtl8169_free_rx_databuff (Corinna Vinschen) [1730024] - [netdrv] r8169: fix performance issue on RTL8168evl (Corinna Vinschen) [1730024] - [netdrv] r8169: allocate rx buffers using alloc_pages_node (Corinna Vinschen) [1730024] - [netdrv] r8169: sync PCIe PHY init with vendor driver 8.047.01 (Corinna Vinschen) [1730024] - [netdrv] r8169: add helper r8168_mac_ocp_modify (Corinna Vinschen) [1730024] - [netdrv] r8169: remove access to legacy register MultiIntr (Corinna Vinschen) [1730024] - [netdrv] r8169: make use of xmit_more (Corinna Vinschen) [1730024] - [netdrv] r8169: don't use MSI before RTL8168d (Corinna Vinschen) [1730024] - [netdrv] revert ("r8169: remove 1000/Half from supported modes") (Corinna Vinschen) [1730024] - [netdrv] r8169: enable HW csum and TSO (Corinna Vinschen) [1730024] - [netdrv] r8169: remove r8169_csum_workaround (Corinna Vinschen) [1730024] - [netdrv] r8169: implement callback ndo_features_check (Corinna Vinschen) [1730024] - [netdrv] r8169: set GSO size and segment limits (Corinna Vinschen) [1730024] - [netdrv] r8169: align setting PME with vendor driver (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_set_rx_mode (Corinna Vinschen) [1730024] - [netdrv] r8169: fix a typo in a comment (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_rx (Corinna Vinschen) [1730024] - [netdrv] r8169: fix RTL8168g PHY init (Corinna Vinschen) [1730024] - [netdrv] r8169: fix issue with confused RX unit after PHY power-down on RTL8411b (Corinna Vinschen) [1730024] - [netdrv] r8169: sync few chip names with vendor driver (Corinna Vinschen) [1730024] - [netdrv] r8169: add random MAC address fallback (Corinna Vinschen) [1730024] - [netdrv] revert "r8169: improve handling VLAN tag" (Corinna Vinschen) [1730024] - [netdrv] r8169: remove not needed call to dma_sync_single_for_device (Corinna Vinschen) [1730024] - [netdrv] r8169: consider that 32 Bit DMA is the default (Corinna Vinschen) [1730024] - [netdrv] r8169: improve handling VLAN tag (Corinna Vinschen) [1730024] - [netdrv] r8169: don't activate ASPM in chip if OS can't control ASPM (Corinna Vinschen) [1730024] - [netdrv] r8169: improve handling of Abit Fatal1ty F-190HD (Corinna Vinschen) [1730024] - [netdrv] r8169: use helper rtl_is_8168evl_up for setting register MaxTxPacketSize (Corinna Vinschen) [1730024] - [netdrv] r8169: add helper rtl_is_8168evl_up (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_coalesce_info (Corinna Vinschen) [1730024] - [netdrv] r8169: let mdio read functions return -ETIMEDOUT (Corinna Vinschen) [1730024] - [netdrv] r8169: remove struct rtl_cfg_info (Corinna Vinschen) [1730024] - [netdrv] r8169: remove member coalesce_info from struct rtl_cfg_info (Corinna Vinschen) [1730024] - [netdrv] r8169: remove callback hw_start from struct rtl_cfg_info (Corinna Vinschen) [1730024] - [netdrv] r8169: rename CPCMD_QUIRK_MASK and apply it on all chip versions (Corinna Vinschen) [1730024] - [netdrv] r8169: improve setting interrupt mask (Corinna Vinschen) [1730024] - [netdrv] r8169: silence sparse warning in rtl8169_start_xmit (Corinna Vinschen) [1730024] - [netdrv] r8169: factor out firmware handling (Corinna Vinschen) [1730024] - [netdrv] r8169: rename r8169.c to r8169_main.c (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl_fw_request_firmware and rtl_fw_release_firmware (Corinna Vinschen) [1730024] - [netdrv] r8169: make rtl_fw_format_ok and rtl_fw_data_ok more independent (Corinna Vinschen) [1730024] - [netdrv] r8169: simplify rtl_fw_write_firmware (Corinna Vinschen) [1730024] - [netdrv] r8169: add enum rtl_fw_opcode (Corinna Vinschen) [1730024] - [netdrv] r8169: use paged versions of phylib MDIO access functions (Corinna Vinschen) [1730024] - [netdrv] r8169: avoid tso csum function indirection (Corinna Vinschen) [1730024] - [netdrv] r8169: remove struct jumbo_ops (Corinna Vinschen) [1730024] - [netdrv] r8169: remove struct mdio_ops (Corinna Vinschen) [1730024] - [netdrv] r8169: improve r8169_csum_workaround (Corinna Vinschen) [1730024] - [netdrv] r8169: decouple rtl_phy_write_fw from actual driver code (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_fw_format_ok (Corinna Vinschen) [1730024] - [netdrv] r8169: enable WoL speed down on more chip versions (Corinna Vinschen) [1730024] - [netdrv] r8169: fix MAC address being lost in PCI D3 (Corinna Vinschen) [1730024] - [netdrv] r8169: remove 1000/Half from supported modes (Corinna Vinschen) [1730024] - [netdrv] r8169: remove support for RTL_GIGA_MAC_VER_01 (Corinna Vinschen) [1730024] - [netdrv] r8169: improve RTL8168d PHY initialization (Corinna Vinschen) [1730024] - [netdrv] r8169: change type of member mac_version in rtl8169_private (Corinna Vinschen) [1730024] - [netdrv] r8169: remove unneeded return statement in rtl_hw_init_8168g (Corinna Vinschen) [1730024] - [netdrv] r8169: remove rtl_hw_init_8168ep (Corinna Vinschen) [1730024] - [netdrv] treewide: Add SPDX license identifier - Makefile/Kconfig (Corinna Vinschen) [1730024] - [netdrv] treewide: Add SPDX license identifier for more missed files (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl8168g_set_pause_thresholds (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl_set_fifo_size (Corinna Vinschen) [1730024] - [netdrv] r8169: move EEE LED config to rtl8168_config_eee_mac (Corinna Vinschen) [1730024] - [netdrv] r8169: simplify rtl_writephy_batch and rtl_ephy_init (Corinna Vinschen) [1730024] - [netdrv] r8169: speed up rtl_loop_wait (Corinna Vinschen) [1730024] - [netdrv] r8169: make use of phy_set_asym_pause (Corinna Vinschen) [1730024] - [netdrv] r8169: remove rtl_write_exgmac_batch (Corinna Vinschen) [1730024] - [netdrv] r8169: remove manual autoneg restart workaround (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl_reset_packet_filter (Corinna Vinschen) [1730024] - [netdrv] r8169: add helpers rtl_eri_set/clear_bits (Corinna Vinschen) [1730024] - [netdrv] r8169: make ERIAR_EXGMAC the default in eri functions (Corinna Vinschen) [1730024] - [netdrv] r8169: use pci_dev_id() helper (Corinna Vinschen) [1730024] - [kernel] phy: fix write to mii-ctrl1000 register (Petr Oros) [1772010] - [netdrv] bcmgenet: don't set phydev->link from MAC (Petr Oros) [1772010] - [netdrv] mdio_bus: Fix PTR_ERR applied after initialization to constant (Petr Oros) [1772010] - [netdrv] phy: micrel: add Asym Pause workaround for KSZ9021 (Petr Oros) [1772010] - [netdrv] phy: fix race in genphy_update_link (Petr Oros) [1772010] - [netdrv] phy: consider AN_RESTART status when reading link status (Petr Oros) [1772010] - [kernel] fixed_phy: Add forward declaration for struct gpio_desc; (Petr Oros) [1772010] - [netdrv] phy: fixed_phy: print gpio error only if gpio node is present (Petr Oros) [1772010] - [netdrv] phy: mscc: initialize stats array (Petr Oros) [1772010] - [netdrv] phy: bcm7xxx: define soft_reset for 40nm EPHY (Petr Oros) [1772010] - [netdrv] Add genphy_c45_config_aneg() function to phy-c45.c (Petr Oros) [1772010] - [netdrv] phy: sfp: hwmon: Fix scaling of RX power (Petr Oros) [1772010] - [kernel] hwmon: Fix HWMON_P_MIN_ALARM mask (Petr Oros) [1772010] - [netdrv] phy: rename Asix Electronics PHY driver (Petr Oros) [1772010] - [netdrv] sfp: read eeprom in maximum 16 byte increments (Petr Oros) [1772010] - [netdrv] phylink: avoid reducing support mask (Petr Oros) [1772010] - [netdrv] phy: dp83867: Set up RGMII TX delay (Petr Oros) [1772010] - [netdrv] phy: dp83867: do not call config_init twice (Petr Oros) [1772010] - [netdrv] phy: dp83867: increase SGMII autoneg timer duration (Petr Oros) [1772010] - [netdrv] phy: dp83867: fix speed 10 in sgmii mode (Petr Oros) [1772010] - [netdrv] phy: marvell10g: report if the PHY fails to boot firmware (Petr Oros) [1772010] - [netdrv] phylink: ensure consistent phy interface mode (Petr Oros) [1772010] - [netdrv] phylink: ensure inband AN works correctly (Petr Oros) [1772010] - [netdrv] phy: aquantia: readd XGMII support for AQR107 (Petr Oros) [1772010] - [netdrv] phy: realtek: Replace phy functions with non-locked version in rtl8211e_config_init() (Petr Oros) [1772010] - [netdrv] meson: fixup g12a glue ephy id (Petr Oros) [1772010] - [netdrv] phy: realtek: fix double page ops in generic Realtek driver (Petr Oros) [1772010] - [netdrv] phy: realtek: add missing page operations (Petr Oros) [1772010] - [netdrv] phy: realtek: Change TX-delay setting for RGMII modes only (Petr Oros) [1772010] - [netdrv] phy: realtek: Add rtl8211e rx/tx delays config (Petr Oros) [1772010] - [netdrv] phy: improve pause mode reporting in phy_print_status (Petr Oros) [1772010] - [kernel] phy: improve resuming from hibernation (Petr Oros) [1772010] - [netdrv] phy: fix phy_validate_pause (Petr Oros) [1772010] - [netdrv] phy: micrel: make sure the factory test bit is cleared (Petr Oros) [1772010] - [netdrv] phy: marvell: Fix buffer overrun with stats counters (Petr Oros) [1772010] - [netdrv] phy: avoid unneeded MDIO reads in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: improve genphy_soft_reset (Petr Oros) [1772010] - [netdrv] spi: micrel eth switch: declare missing of table (Petr Oros) [1772010] - [netdrv] phy: marvell: add new default led configure for m88e151x (Petr Oros) [1772010] - [netdrv] phy: vitesse: Remove support for VSC8514 (Petr Oros) [1772010] - [netdrv] phy: mscc: add support for VSC8514 PHY (Petr Oros) [1772010] - [netdrv] mdio: rename mdio_device reset to reset_gpio (Petr Oros) [1772010] - [netdrv] phy: add support for reset-controller (Petr Oros) [1772010] - [documentation] dt-bindings: add PHY reset controller binding (Petr Oros) [1772010] - [netdrv] phy: remove dead code from phy_sanitize_settings (Petr Oros) [1772010] - [netdrv] phy: don't set autoneg if it's not supported (Petr Oros) [1772010] - [netdrv] phy: micrel: add Asym Pause workaround (Petr Oros) [1772010] - [netdrv] phy: warn if phylib and ethtool PHY mode definitions are out of sync (Petr Oros) [1772010] - [netdrv] phy: add support for new modes in phylib (Petr Oros) [1772010] - [netdrv] phy: shrink PHY settings array (Petr Oros) [1772010] - [netdrv] phy: switch drivers to use dynamic feature detection (Petr Oros) [1772010] - [netdrv] phy: fix setting autoneg_complete in genphy_update_link (Petr Oros) [1772010] - [netdrv] phy: replace genphy_10g_driver with genphy_c45_driver (Petr Oros) [1772010] - [netdrv] phy: remove unnecessary callback settings in C45 drivers (Petr Oros) [1772010] - [netdrv] phy: improve link partner capability detection (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: clean-up gxl variant driver (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: add g12a support (Petr Oros) [1772010] - [netdrv] phy: add amlogic g12a mdio mux support (Petr Oros) [1772010] - [documentation] dt-bindings: phy: add g12a mdio mux documentation (Petr Oros) [1772010] - [netdrv] phy: realtek: remove setting callback get_features and use phylib fallback (Petr Oros) [1772010] - [netdrv] phy: fix autoneg mismatch case in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: marvell10g: add the suspend/resume callbacks for the 88x2210 (Petr Oros) [1772010] - [netdrv] phy: marvell10g: implement suspend/resume callbacks (Petr Oros) [1772010] - [netdrv] phy: deal properly with autoneg incomplete in genphy_c45_read_lpa (Petr Oros) [1772010] - [netdrv] phy: use c45 standard to detect link partner autoneg capability (Petr Oros) [1772010] - [netdrv] phy: aquantia: add SGMII statistics (Petr Oros) [1772010] - [netdrv] phy: improve genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: aquantia: add suspend / resume callbacks for AQR107 family (Petr Oros) [1772010] - [netdrv] phy: realtek: use genphy_read_abilities (Petr Oros) [1772010] - [netdrv] phy: mdio-bcm-unimac: remove redundant !timeout check (Petr Oros) [1772010] - [netdrv] phy: marvell: add PHY tunable fast link down support for 88E1540 (Petr Oros) [1772010] - [uapi] ethtool: add PHY Fast Link Down support (Petr Oros) [1772010] - [netdrv] phy: aquantia: inform about proprietary 1000Base-T2 mode being in use (Petr Oros) [1772010] - [netdrv] phy: aquantia: report PHY details like firmware version (Petr Oros) [1772010] - [netdrv] phy: aquantia: print remote capabilities if link partner is Aquantia PHY (Petr Oros) [1772010] - [kernel] phy: bcm54xx: Encode link speed and activity into LEDs (Petr Oros) [1772010] - [netdrv] phy: aquantia: simplify aqr_config_aneg (Petr Oros) [1772010] - [netdrv] phy: don't clear BMCR in genphy_soft_reset (Petr Oros) [1772010] - [netdrv] phy: Re-parent menus for MDIO bus drivers correctly (Petr Oros) [1772010] - [netdrv] phy: Correct Cygnus/Omega PHY driver prompt (Petr Oros) [1772010] - [netdrv] phy: aquantia: add downshift support (Petr Oros) [1772010] - [netdrv] phy: Move Omega PHY entry to Cygnus PHY driver (Petr Oros) [1772010] - [netdrv] phy: Prepare for moving Omega out of bcm7xxx (Petr Oros) [1772010] - [netdrv] phy: Add DP83825I to the DP83822 driver (Petr Oros) [1772010] - [netdrv] phy: aquantia: check for changed interface mode in read_status (Petr Oros) [1772010] - [netdrv] phy: aquantia: check for supported interface modes in config_init (Petr Oros) [1772010] - [netdrv] phy: improve handling link_change_notify callback (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: fix interrupt support (Petr Oros) [1772010] - [gpio] gpiolib: devprop: Fix syntax error (Petr Oros) [1772010] - [kernel] gpiolib: export devprop_gpiochip_set_names() (Petr Oros) [1772010] - [netdrv] phy: mdio-mux: fix Kconfig dependencies (Petr Oros) [1772010] - [netdrv] phy: use phy_modify_mmd_changed in genphy_c45_an_config_aneg (Petr Oros) [1772010] - [netdrv] phy: remove gen10g_no_soft_reset (Petr Oros) [1772010] - [netdrv] phy: don't export gen10g_read_status (Petr Oros) [1772010] - [netdrv] phy: remove gen10g_config_init (Petr Oros) [1772010] - [netdrv] phy: remove gen10g_suspend and gen10g_resume (Petr Oros) [1772010] - [netdrv] phy: use genphy_c45_aneg_done in genphy_aneg_done (Petr Oros) [1772010] - [netdrv] phy: micrel ksz8061: link failure after cable connect (Petr Oros) [1772010] - [netdrv] phy: phylink: fix uninitialized variable in phylink_get_mac_state (Petr Oros) [1772010] - [netdrv] phy: aquantia: add hwmon support (Petr Oros) [1772010] - [netdrv] phy: aquantia: rename aquantia.c to aquantia_main.c (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use the generic C45 helper to read the 2110 features (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Let genphy_c45_pma_read_abilities set Aneg bit (Petr Oros) [1772010] - [netdrv] phy: dp83867: add soft reset delay (Petr Oros) [1772010] - [netdrv] phy: mdio-mux: Add support for Generic Mux controls (Petr Oros) [1772010] - [netdrv] phy: improve auto-neg emulation in swphy (Petr Oros) [1772010] - [netdrv] phy: marvell10g: add support for the 88x2110 PHY (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Force reading of 2.5/5G (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use a #define for 88X3310 family id (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use 2500BASEX when using 2.5GBASET (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use linkmode_set_bit helper instead of __set_bit (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use get_features to get the PHY abilities (Petr Oros) [1772010] - [netdrv] phy: aquantia: use genphy_c45_read_status (Petr Oros) [1772010] - [netdrv] phy: add genphy_c45_read_status (Petr Oros) [1772010] - [netdrv] phy: don't change modes we don't care about in genphy_c45_read_lpa (Petr Oros) [1772010] - [netdrv] phy: aquantia: add support for auto-negotiation configuration (Petr Oros) [1772010] - [netdrv] phy: aquantia: remove false 5G and 10G speed ability for AQCS109 (Petr Oros) [1772010] - [netdrv] phy: check PMAPMD link status only in genphy_c45_read_link (Petr Oros) [1772010] - [netdrv] mdio_bus: Fix use-after-free on device_register fails (Petr Oros) [1772010] - [netdrv] phy: at803x: disable delay only for RGMII mode (Petr Oros) [1772010] - [netdrv] phy: at803x: don't inline helpers (Petr Oros) [1772010] - [netdrv] phy: aquantia: Use get_features for the PHYs abilities (Petr Oros) [1772010] - [netdrv] phy: marvell10g: use genphy_c45_check_and_restart_aneg in mv3310_config_aneg (Petr Oros) [1772010] - [netdrv] phy: add genphy_c45_check_and_restart_aneg (Petr Oros) [1772010] - [netdrv] phy: use genphy_config_eee_advert in genphy_c45_an_config_aneg (Petr Oros) [1772010] - [netdrv] phy: export genphy_config_eee_advert (Petr Oros) [1772010] - [netdrv] phy: don't use 10BaseT/half as default in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: remove orphaned register read in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: marvell10g: improve mv3310_config_aneg (Petr Oros) [1772010] - [netdrv] phy: disable aneg in genphy_c45_pma_setup_forced (Petr Oros) [1772010] - [netdrv] phy: use mii_10gbt_stat_mod_linkmode_lpa_t in genphy_c45_read_lpa (Petr Oros) [1772010] - [kernel] phy: add helper mii_10gbt_stat_mod_linkmode_lpa_t (Petr Oros) [1772010] - [netdrv] phy: marvell10g: check for newly set aneg (Petr Oros) [1772010] - [netdrv] phy: marvell10g: use genphy_c45_an_config_aneg (Petr Oros) [1772010] - [netdrv] phy: add genphy_c45_an_config_aneg (Petr Oros) [1772010] - [kernel] phy: add helper linkmode_adv_to_mii_10gbt_adv_t (Petr Oros) [1772010] - [netdrv] mdio_bus: Fix PTR_ERR() usage after initialization to constant (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Support generic PHY status read (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Don't explicitly set Pause and Asym_Pause (Petr Oros) [1772010] - [netdrv] phy: use phy_resolve_aneg_linkmode in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: improve phy_resolve_aneg_linkmode (Petr Oros) [1772010] - [netdrv] phy: fix potential race in the phylib state machine (Petr Oros) [1772010] - [kernel] phy: don't use locking in phy_is_started (Petr Oros) [1772010] - [netdrv] phy: fix interrupt handling in non-started states (Petr Oros) [1772010] - [netdrv] phy: simplify genphy_config_eee_advert (Petr Oros) [1772010] - [netdrv] phylink: avoid resolving link state too early (Petr Oros) [1772010] - [netdrv] phylink: add phylink_init_eee() helper (Petr Oros) [1772010] - [netdrv] phylink: only call mac_config() during resolve when link is up (Petr Oros) [1772010] - [netdrv] phy: use phy_modify_changed in genphy_config_advert (Petr Oros) [1772010] - [netdrv] phy: marvell10g: fix usage of new MMD modifying helpers (Petr Oros) [1772010] - [netdrv] phy: add register modifying helpers returning 1 on change (Petr Oros) [1772010] - [netdrv] phy: aquantia: add support for AQCS109 (Petr Oros) [1772010] - [netdrv] phy: disregard "Clause 22 registers present" bit in get_phy_c45_devs_in_pkg (Petr Oros) [1772010] - [netdrv] phy: let genphy_c45_read_link manage the devices to check (Petr Oros) [1772010] - [netdrv] phy: don't double-read link status register if link is up (Petr Oros) [1772010] - [netdrv] fixed-phy: Add fixed_phy_register_with_gpiod() API (Petr Oros) [1772010] - [netdrv] phy: fixed_phy: Fix fixed_phy not checking GPIO (Petr Oros) [1772010] - [netdrv] phy: consider latched link-down status in polling mode (Petr Oros) [1772010] - [netdrv] sfp: do not probe SFP module before we're attached (Petr Oros) [1772010] - [netdrv] phy: make use of new MMD accessors (Petr Oros) [1772010] - [kernel] phy: provide full set of accessor functions to MMD registers (Petr Oros) [1772010] - [netdrv] phy: improve genphy_c45_read_link (Petr Oros) [1772010] - [netdrv] phy: fixed-phy: Drop GPIO from fixed_phy_add() (Petr Oros) [1772010] - [netdrv] dp83640: expire old TX-skb (Petr Oros) [1772010] - [netdrv] phy: aquantia: replace magic numbers with constants (Petr Oros) [1772010] - [netdrv] phy: aquantia: use macro PHY_ID_MATCH_MODEL (Petr Oros) [1772010] - [netdrv] phy: aquantia: remove unneeded includes (Petr Oros) [1772010] - [netdrv] phy: aquantia: Shorten name space prefix to aqr_ (Petr Oros) [1772010] - [netdrv] revert "net: phy: marvell: avoid pause mode on SGMII-to-Copper for 88e151x" (Petr Oros) [1772010] - [netdrv] phy: at803x: Use helpers to access MMD PHY registers (Petr Oros) [1772010] - [netdrv] phy: change phy_start_interrupts to phy_request_interrupt (Petr Oros) [1772010] - [netdrv] phy: start interrupts in phy_start (Petr Oros) [1772010] - [netdrv] phy: warn if phy_start is called from invalid state (Petr Oros) [1772010] - [netdrv] phy: start state machine in phy_start only (Petr Oros) [1772010] - [netdrv] phy: Add SDPX tag based on COPYING file (Petr Oros) [1772010] - [netdrv] phy: Fixup GPLv2 SPDX tags based on license text (Petr Oros) [1772010] - [netdrv] phy: Fixup GPLv2+ SPDX tags based on license text (Petr Oros) [1772010] - [netdrv] phy: Remove redundent License text when SPDX header is present (Petr Oros) [1772010] - [netdrv] phy: Convert some PHY and MDIO driver files to SPDX headers (Petr Oros) [1772010] - [netdrv] phy: at803x: Disable phy delay for RGMII mode (Petr Oros) [1772010] - [netdrv] phy: improve phy_init_hw (Petr Oros) [1772010] - [netdrv] phy: fix issue with loading PHY driver w/o initramfs (Petr Oros) [1772010] - [netdrv] phy: remove phy_stop_interrupts (Petr Oros) [1772010] - [netdrv] phy: ensure phylib state machine is stopped after calling phy_stop (Petr Oros) [1772010] - [netdrv] phy: stop PHY if needed when entering phy_disconnect (Petr Oros) [1772010] - [netdrv] phy: micrel: use phy_read_mmd and phy_write_mmd (Petr Oros) [1772010] - [netdrv] phy: improve get_phy_id (Petr Oros) [1772010] - [kernel] phy: remove state PHY_CHANGELINK (Petr Oros) [1772010] - [netdrv] phy: mdio_bus: add missing device_del() in mdiobus_register() error handling (Petr Oros) [1772010] - [netdrv] phy: check return code when requesting PHY driver module (Petr Oros) [1772010] - [netdrv] phy: Add helpers to determine if PHY driver is generic (Petr Oros) [1772010] - [netdrv] phy: improve logging in phylib (Petr Oros) [1772010] - [netdrv] phy: don't include asm/irq.h directly (Petr Oros) [1772010] - [netdrv] phy: remove preliminary workaround for not loading PHY driver (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: Use the genphy_soft_reset callback (Petr Oros) [1772010] - [netdrv] phy: marvell: Fix deadlock from wrong locking (Petr Oros) [1772010] - [netdrv] phy: marvell: Errata for mv88e6390 internal PHYs (Petr Oros) [1772010] - [netdrv] phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ9031 (Petr Oros) [1772010] - [netdrv] phy: fix too strict check in phy_start_aneg (Petr Oros) [1772010] - [kernel] phy.h: fix obvious errors in doc and kerneldoc content (Petr Oros) [1772010] - [netdrv] phy: mscc: Fix the VSC 8531/41 Chip Init sequence (Petr Oros) [1772010] - [netdrv] phy: Fix the issue that netif always links up after resuming (Petr Oros) [1772010] - [netdrv] phy: print stack trace in phy_error (Petr Oros) [1772010] - [netdrv] phy: improve phy state checking (Petr Oros) [1772010] - [netdrv] fixed phy: Add fixed_phy_change_carrier() (Petr Oros) [1772010] - [netdrv] phy: mdio-gpio: Add phy_ignore_ta_mask to platform data (Petr Oros) [1772010] - [kernel] phy: mdio-gpio: Add platform_data support for phy_mask (Petr Oros) [1772010] - [kernel] gpio: Export gpiod_get_from_of_node() (Petr Oros) [1772010] - [netdrv] phy: Revert toggling reset changes (Petr Oros) [1772010] - [netdrv] phy: sfp: correct store of detected link modes (Petr Oros) [1772010] - [netdrv] phy: micrel: add toggling phy reset if PHY is not attached (Petr Oros) [1772010] - [netdrv] phy: Fix not to call phy_resume() if PHY is not attached (Petr Oros) [1772010] - [netdrv] phy: improve generic EEE ethtool functions (Petr Oros) [1772010] - [netdrv] phy: add workaround for issue where PHY driver doesn't bind to the device (Petr Oros) [1772010] - [netdrv] phy: mscc: fix deadlock in vsc85xx_default_config (Petr Oros) [1772010] - [netdrv] phy: vitesse: remove duplicate support for VSC8574 (Petr Oros) [1772010] - [netdrv] phy: icplus: allow configuring the interrupt function on IP101GR (Petr Oros) [1772010] - [netdrv] phy: icplus: implement .did_interrupt for IP101A/G (Petr Oros) [1772010] - [netdrv] phy: icplus: rename IP101A_G_NO_IRQ to IP101A_G_IRQ_ALL_MASK (Petr Oros) [1772010] - [netdrv] phy: icplus: use the BIT macro where possible (Petr Oros) [1772010] - [netdrv] phy: icplus: keep all ip101a_g functions together (Petr Oros) [1772010] - [documentation] dt-bindings: phy: add bindings for the IC Plus Corp. IP101A/G PHYs (Petr Oros) [1772010] - [documentation] dt-bindings: vendor-prefix: add prefix for IC Plus Corp (Petr Oros) [1772010] - [netdrv] phy: mdio-gpio: Fix working over slow can_sleep GPIOs (Petr Oros) [1772010] - [netdrv] phy: check for implementation of both callbacks in phy_drv_supports_irq (Petr Oros) [1772010] - [netdrv] phy: icplus: add config_intr callback (Petr Oros) [1772010] - [kernel] phy: remove states PHY_STARTING and PHY_PENDING (Petr Oros) [1772010] - [netdrv] phy: leds: Don't make our own link speed names (Petr Oros) [1772010] - [netdrv] phy: improve and inline phy_change (Petr Oros) [1772010] - [netdrv] phy: simplify phy_mac_interrupt and related functions (Petr Oros) [1772010] - [netdrv] phy: don't set state PHY_CHANGELINK in phy_change (Petr Oros) [1772010] - [kernel] phy: improve struct phy_device member interrupts handling (Petr Oros) [1772010] - [netdrv] phy: remove flag PHY_HAS_INTERRUPT from driver configs (Petr Oros) [1772010] - [netdrv] phy: replace PHY_HAS_INTERRUPT with a check for config_intr and ack_interrupt (Petr Oros) [1772010] - [netdrv] phy: use phy_check_link_status in more places in the state machine (Petr Oros) [1772010] - [kernel] phy: remove state PHY_AN (Petr Oros) [1772010] - [netdrv] phy: add phy_check_link_status (Petr Oros) [1772010] - [netdrv] phy: remove useless check in state machine case PHY_RESUMING (Petr Oros) [1772010] - [netdrv] phy: remove useless check in state machine case PHY_NOLINK (Petr Oros) [1772010] - [netdrv] phy: make phy_trigger_machine static (Petr Oros) [1772010] - [netdrv] phy: bcm7xxx: Add entry for BCM7255 (Petr Oros) [1772010] - [netdrv] phy: Allow BCM54616S PHY to setup internal TX/RX clock delay (Petr Oros) [1772010] - [netdrv] phy: mdio-mux-bcm-iproc: simplify getting .driver_data (Petr Oros) [1772010] - [documentation] dt-bindings: add support for Microchip KSZ9131 (Petr Oros) [1772010] - [netdrv] phy: micrel: add Microchip KSZ9131 initial driver (Petr Oros) [1772010] - [netdrv] phy: mscc: fix memory leak in vsc8574_config_pre_init (Petr Oros) [1772010] - [netdrv] phy: mscc: fix signedness bug in vsc85xx_downshift_get (Petr Oros) [1772010] - [netdrv] phy: merge phy_start_aneg and phy_start_aneg_priv (Petr Oros) [1772010] - [netdrv] phy: simplify handling of PHY_RESUMING in state machine (Petr Oros) [1772010] - [netdrv] phy: improve handling of PHY_RUNNING in state machine (Petr Oros) [1772010] - [netdrv] phy: trigger state machine immediately in phy_start_machine (Petr Oros) [1772010] - [netdrv] phy: sfp: remove sfp_mutex's definition (Petr Oros) [1772010] - [netdrv] phy: mscc: add support for VSC8574 PHY (Petr Oros) [1772010] - [netdrv] phy: mscc: add support for VSC8584 PHY (Petr Oros) [1772010] - [dt-bindings] vsc8531: add two additional LED modes for VSC8584 (Petr Oros) [1772010] - [netdrv] phy: mscc: remove unneeded temporary variable (Petr Oros) [1772010] - [netdrv] phy: mscc: shorten `x != 0` condition to `x` (Petr Oros) [1772010] - [netdrv] phy: mscc: remove unneeded parenthesis (Petr Oros) [1772010] - [netdrv] phy: mscc: Add EEE init sequence (Petr Oros) [1772010] - [netdrv] phy: mscc: add ethtool statistics counters (Petr Oros) [1772010] - [netdrv] phy: mscc: migrate to phy_select/restore_page functions (Petr Oros) [1772010] - [netdrv] phy: phylink: fix SFP interface autodetection (Petr Oros) [1772010] - [netdrv] phy: Convert to using pOFn instead of device_node.name (Petr Oros) [1772010] - [netdrv] phy: improve handling delayed work (Petr Oros) [1772010] - [netdrv] phy: mscc: fix printf format (Petr Oros) [1772010] - [netdrv] phy: mdio-bcm-unimac: mark PM functions as __maybe_unused (Petr Oros) [1772010] - [netdrv] phy: marvell: Fix build (Petr Oros) [1772010] - [netdrv] phy: marvell: Avoid unnecessary soft reset (Petr Oros) [1772010] - [netdrv] phy: Stop with excessive soft reset (Petr Oros) [1772010] - [netdrv] phy: sfp: Fix unregistering of HWMON SFP device (Petr Oros) [1772010] - [netdrv] phy: fix WoL handling when suspending the PHY (Petr Oros) [1772010] - [net] core: add member wol_enabled to struct net_device (Petr Oros) [1772010] - [netdrv] phy: mdio-bcm-unimac: Allow configuring MDIO clock divider (Petr Oros) [1772010] - [netdrv] phy: don't reschedule state machine when PHY is halted (Petr Oros) [1772010] - [netdrv] phy: phylink: ensure the carrier is off when starting phylink (Petr Oros) [1772010] - [netdrv] phy: call state machine synchronously in phy_stop (Petr Oros) [1772010] - [net] linkwatch: add check for netdevice being present to linkwatch_do_dev (Petr Oros) [1772010] - [netdrv] sfp: fix oops with ethtool -m (Petr Oros) [1772010] - [netdrv] mdio: remove duplicated include from mdio_bus.c (Petr Oros) [1772010] - [netdrv] phy: et011c: Remove incorrect PHY_POLL flags (Petr Oros) [1772010] - [netdrv] phy: sfp: Handle unimplemented hwmon limits and alarms (Petr Oros) [1772010] - [netdrv] phy: mscc: read 'vsc8531, led-d-mode' as an u32 (Petr Oros) [1772010] - [netdrv] phy: mscc: read 'vsc8531, edge-slowdown' as an u32 (Petr Oros) [1772010] - [netdrv] phy: mscc: read 'vsc8531, vddmac' as an u32 (Petr Oros) [1772010] - [netdrv] phy: mscc: factorize function for getting LED mode from DT (Petr Oros) [1772010] - [netdrv] phy: mscc: factorize code for LEDs mode (Petr Oros) [1772010] - [netdrv] dp83640: Mark expected switch fall-throughs (Petr Oros) [1772010] - [netdrv] phylink: add helper for configuring 2500BaseX modes (Petr Oros) [1772010] - [netdrv] phy: sftp: print debug message with text, not numbers (Petr Oros) [1772010] - [netdrv] phy: Add support for Broadcom Omega internal Combo GPHY (Petr Oros) [1772010] - [netdrv] phy: Add pm support to Broadcom iProc mdio mux driver (Petr Oros) [1772010] - [netdrv] phy: Add support to configure clock in Broadcom iProc mdio mux (Petr Oros) [1772010] - [documentation] dt-bindings: Add clock handle to Broadcom iProc mdio mux (Petr Oros) [1772010] - [netdrv] phy: Use devm api for mdio bus allocation in bcm iproc mdio mux (Petr Oros) [1772010] - [netdrv] phy: Disable external master access in bcm mdio mux driver (Petr Oros) [1772010] - [arm64] dts: Fix the base address of the Broadcom iProc mdio mux (Petr Oros) [1772010] - [netdrv] phy: Fix the register offsets in Broadcom iProc mdio mux driver (Petr Oros) [1772010] - [documentation] dt-bindings: Fix Broadcom iProc mdio mux driver base address (Petr Oros) [1772010] - [netdrv] phy: mscc: the extended page access register is 16 bits (Petr Oros) [1772010] - [netdrv] phy: marvell: Replace mdelay() with msleep() in m88e1116r_config_init() (Petr Oros) [1772010] - [kernel] phy: add helper phy_polling_mode (Petr Oros) [1772010] - [netdrv] phy: prevent PHYs w/o Clause 22 regs from calling genphy_config_aneg (Petr Oros) [1772010] - [netdrv] phy: add GBit master / slave error detection (Petr Oros) [1772010] - [netdrv] phy: sfp: Do not use "imply HWMON" (Petr Oros) [1772010] - [netdrv] phy: sfp: Add HWMON support for module sensors (Petr Oros) [1772010] - [kernel] hwmon: Add helper to tell if a char is invalid in a name (Petr Oros) [1772010] - [kernel] hwmon: Add support for power min, lcrit, min_alarm and lcrit_alarm (Petr Oros) [1772010] - [kernel] hwmon: Add missing HWMON_T_LCRIT_ALARM define (Petr Oros) [1772010] - [netdrv] phy: Drop OF dependency for MDIO_BCM_UNIMAC (Petr Oros) [1772010] - [gpio] gpiolib: Mark gpio_suffixes array with __maybe_unused (Petr Oros) [1772010] - [netdrv] phy: vitesse: Add support for VSC73xx (Petr Oros) [1772010] - [netdrv] phy: dp83tc811: Fix SGMII enable/disable (Petr Oros) [1772010] - [netdrv] phy: dp83tc811: Add INT_STAT3 (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Check read_status results (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Use correct mdio bus (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Check phy_driver ready before accessing (Petr Oros) [1772010] - [netdrv] mdio-mux-gpio: Remove VLA usage (Petr Oros) [1772010] - [netdrv] phy: fixed-phy: Make the error path simpler (Petr Oros) [1772010] - [netdrv] phy: Allow compile test of GPIO consumers if !GPIOLIB (Petr Oros) [1772010] - [watchdog] hpwdt: Reflect changes (Joseph Szczypek) [1769477] - [documentation] watchdog/hpwdt: Update documentation (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Add module parameter kdumptimeout (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Have core ping watchdog (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Advertize max_hw_heartbeat_ms (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Stop hpwdt on unregister (Joseph Szczypek) [1769477] - [watchdog] hpwdt: drop warning after registering device (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Joseph Szczypek) [1769477] - [nvme] make fabrics command run on a separate request queue (David Milburn) [1766361] - [nvme] Restart request timers in resetting state (David Milburn) [1766361] - [nvme] nvme-rdma: fix possible use-after-free in connect timeout (David Milburn) [1766361] - [block] blk-mq: remove blk_mq_complete_request_sync (David Milburn) [1766361] - [nvme] wait until all completed request's complete fn is called (David Milburn) [1766361] - [nvme] don't abort completed request in nvme_cancel_request (David Milburn) [1766361] - [block] blk-mq: introduce blk_mq_tagset_wait_completed_request() (David Milburn) [1766361] - [block] blk-mq: introduce blk_mq_request_completed() (David Milburn) [1766361]- [hwtracing] intel_th: pci: Add Jasper Lake PCH support (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Comet Lake PCH support (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix possible memory leak in mode_store() (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix overflow in shift of an unsigned int (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix missing allocation failure check on a kstrndup (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix an uninitialized mutex (Jiri Olsa) [1771015] - [hwtracing] intel_th: gth: Fix the window switching sequence (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Tiger Lake support (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Preserve pre-existing buffer configuration (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Prevent freeing buffers while locked windows exist (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Get rid of the window size limit (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu-sink: An example msu buffer "sink" (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Introduce buffer interface (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Start read iterator from a non-empty window (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Split sgt array and pointer in multiwindow mode (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Support multipage blocks (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Ice Lake NNPI support (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix single mode with disabled IOMMU (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Remove set but not used variable 'last' (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix unused variable warning on arm64 platform (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Add current window tracking (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Add a sysfs attribute to trigger window switch (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Correct the block wrap detection (Jiri Olsa) [1771015] - [hwtracing] intel_th: Add switch triggering support (Jiri Olsa) [1771015] - [hwtracing] intel_th: gth: Factor out trace start/stop (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Factor out pipeline draining (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Switch over to scatterlist (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Replace open-coded list_{first, last, next}_entry variants (Jiri Olsa) [1771015] - [hwtracing] intel_th: Only report useful IRQs to subdevices (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Start handling IRQs (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Use MSI interrupt signalling (Jiri Olsa) [1771015] - [hwtracing] intel_th: Communicate IRQ via resource (Jiri Olsa) [1771015] - [hwtracing] intel_th: Add "rtit" source device (Jiri Olsa) [1771015] - [hwtracing] intel_th: Skip subdevices if their MMIO is missing (Jiri Olsa) [1771015] - [hwtracing] intel_th: Rework resource passing between glue layers and core (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix single mode with IOMMU (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Comet Lake support (Jiri Olsa) [1771015] - [hwtracing] intel_th: gth: Fix an off-by-one in output unassigning (Jiri Olsa) [1771015] - [hwtracing] intel_th: Don't reference unassigned outputs (Jiri Olsa) [1771015] - [hwtracing] intel_th: pti: Use sysfs_match_string() helper (Jiri Olsa) [1771015] - [hwtracing] intel_th: Only create useful device nodes (Jiri Olsa) [1771015] - [hwtracing] intel_th: Mark expected switch fall-throughs (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix an off-by-one in attribute store (Jiri Olsa) [1771015] - [hwtracing] intel_th: Fix resource handling for ACPI glue layer (Jiri Olsa) [1771015] - [hwtracing] intel_th: Fix device removal logic (Jiri Olsa) [1771015] - [hwtracing] hwtracing/intel_th/msu.c: change return type to vm_fault_t (Jiri Olsa) [1771015] - [scripts] kbuild: modversions: Fix relative CRC byte order interpretation (Don Zickus) [1772940] - [tools] tools x86 uapi asm: Sync the pt_regs.h copy with the kernel sources (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for trace sequences APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for APIs used to extract common fields from a record (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_parse_header_page() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for parse event APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event filter APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event fields APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_read_number_field() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for print field APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for get field value APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for find field APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for libtraceevent event get APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for list events APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event find APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_read_number() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for registering print function (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for function related libtraceevent APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event handler APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_strerror() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for page size APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for host endian APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for file endian APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for get/set cpus APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for header_page APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for tep_handler related APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Add support for man pages with multiple names (Michael Petlan) [1743208] - [tools] tools lib traceevent: Introduce man pages (Michael Petlan) [1743208] - [tools] perf/x86/regs: Use PERF_REG_EXTENDED_MASK (Michael Petlan) [1743208] - [tools] perf record: Fix s390 missing module symbol and warning for non-root users (Michael Petlan) [1743208] - [tools] perf machine: Read also the end of the kernel (Michael Petlan) [1743208] - [tools] perf test vmlinux-kallsyms: Ignore aliases to _etext when searching on kallsyms (Michael Petlan) [1743208] - [tools] perf session: Add missing swap ops for namespace events (Michael Petlan) [1743208] - [tools] perf namespace: Protect reading thread's namespace (Michael Petlan) [1743208] - [tools] perf data: Fix 'strncat may truncate' build failure with recent gcc (Michael Petlan) [1743208] - [tools] perf stat: Support 'percore' event qualifier (Michael Petlan) [1743208] - [tools] perf stat: Factor out aggregate counts printing (Michael Petlan) [1743208] - [tools] perf tools: Add a 'percore' event qualifier (Michael Petlan) [1743208] - [tools] perf docs: Add description for stderr (Michael Petlan) [1743208] - [tools] perf intel-pt: Fix sample timestamp wrt non-taken branches (Michael Petlan) [1743208] - [tools] perf intel-pt: Fix improved sample timestamp (Michael Petlan) [1743208] - [tools] perf intel-pt: Fix instructions sampling rate (Michael Petlan) [1743208] - [tools] perf regs x86: Add X86 specific arch__intr_reg_mask() (Michael Petlan) [1743208] - [tools] perf parse-regs: Add generic support for arch__intr/user_reg_mask() (Michael Petlan) [1743208] - [tools] perf parse-regs: Split parse_regs (Michael Petlan) [1743208] - [tools] perf vendor events arm64: Add Cortex-A57 and Cortex-A72 events (Michael Petlan) [1743208] - [tools] perf vendor events arm64: Map Brahma-B53 CPUID to cortex-a53 events (Michael Petlan) [1743208] - [tools] perf vendor events arm64: Remove [[:xdigit:]] wildcard (Michael Petlan) [1743208] - [tools] perf jevents: Remove unused variable (Michael Petlan) [1743208] - [tools] perf test zstd: Fixup verbose mode output (Michael Petlan) [1743208] - [tools] perf tests: Implement Zstd comp/decomp integration test (Michael Petlan) [1743208] - [tools] perf inject: Enable COMPRESSED record decompression (Michael Petlan) [1743208] - [tools] perf report: Implement perf.data record decompression (Michael Petlan) [1743208] - [tools] perf record: Implement -z, --compression_level[=] option (Michael Petlan) [1743208] - [tools] perf report: Add stub processing of compressed events for -D (Michael Petlan) [1743208] - [tools] perf record: Implement compression for AIO trace streaming (Michael Petlan) [1743208] - [tools] perf record: Implement compression for serial trace streaming (Michael Petlan) [1743208] - [tools] perf tools: Introduce Zstd streaming based compression API (Michael Petlan) [1743208] - [tools] perf mmap: Implement dedicated memory buffer for data compression (Michael Petlan) [1743208] - [tools] perf record: Implement COMPRESSED event record and its attributes (Michael Petlan) [1743208] - [tools] perf session: Define 'bytes_transferred' and 'bytes_compressed' metrics (Michael Petlan) [1743208] - [tools] perf build tests: Add NO_LIBZSTD=1 to make_minimal (Michael Petlan) [1743208] - [tools] perf machine: Null-terminate version char array upon fgets(/proc/version) error (Michael Petlan) [1743208] - [tools] perf vendor events intel: Add uncore_upi JSON support (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add 'About' dialog box (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add context menu (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add copy to clipboard (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add tree level (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Fix error when shrinking / enlarging font (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Move view creation (Michael Petlan) [1743208] - [tools] perf tools x86: Add support for recording and printing XMM registers (Michael Petlan) [1743208] - [tools] perf parse-regs: Improve error output when faced with unknown register name (Michael Petlan) [1743208] - [tools] perf record: Fix suggestion to get list of registers usable with --user-regs and --intr-regs (Michael Petlan) [1743208] - [tools] perf tools: Speed up report for perf compiled with linwunwind (Michael Petlan) [1743208] - [tools] tools lib traceevent: Remove hard coded install paths from pkg-config file (Michael Petlan) [1743208] - [tools] csky: Add support for libdw (Michael Petlan) [1743208] - [tools] perf test: Fix spelling mistake "leadking" -> "leaking" (Michael Petlan) [1743208] - [tools] perf annotate: Remove hist__account_cycles() from callback (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Silvermont to v14 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update GoldmontPlus to v1.01 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Goldmont to v13 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Bonnell to V4 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update KnightsLanding events to v9 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Haswell events to v28 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update IvyBridge events to v21 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update SandyBridge events to v16 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update JakeTown events to v20 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update IvyTown events to v20 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update HaswellX events to v20 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update BroadwellX events to v14 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update SkylakeX events to v1.12 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Skylake events to v42 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Broadwell-DE events to v7 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Broadwell events to v23 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update metrics from TMAM 3.5 (Michael Petlan) [1743208] - [tools] perf record: Implement --mmap-flush= option (Michael Petlan) [1743208] - [tools] tools build: Implement libzstd feature check, LIBZSTD_DIR and NO_LIBZSTD defines (Michael Petlan) [1743208] - [tools] tools lib traceevent: Rename input arguments and local variables of libtraceevent from pevent to tep (Michael Petlan) [1743208] - [tools] perf tools, tools lib traceevent: Rename "pevent" member of struct tep_event_filter to "tep" (Michael Petlan) [1743208] - [tools] perf tools, tools lib traceevent: Rename "pevent" member of struct tep_event to "tep" (Michael Petlan) [1743208] - [tools] tools lib traceevent: Rename input arguments of libtraceevent APIs from pevent to tep (Michael Petlan) [1743208] - [tools] tools tools, tools lib traceevent: Make traceevent APIs more consistent (Michael Petlan) [1743208] - [tools] tools lib traceevent: Remove call to exit() from tep_filter_add_filter_str() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Remove tep filter trivial APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Removed unneeded !! and return parenthesis (Michael Petlan) [1743208] - [tools] tools lib traceevent: Implement new traceevent APIs for accessing struct tep_handler fields (Michael Petlan) [1743208] - [tools] tools lib traceevent: Coding style fixes (Michael Petlan) [1743208] - [tools] tools lib traceevent: Change description of few APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Add more debugging to see various internal ring buffer entries (Michael Petlan) [1743208] - [tools] tools lib traceevent: Implement a new API, tep_list_events_copy() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Add mono clocks to be parsed in seconds (Michael Petlan) [1743208] - [tools] tools lib traceevent: Handle trace_printk() "px" (Michael Petlan) [1743208] - [tools] perf list: Output tool events (Michael Petlan) [1743208] - [tools] perf evsel: Support printing evsel name for 'duration_time' (Michael Petlan) [1743208] - [tools] perf stat: Implement duration_time as a proper event (Michael Petlan) [1743208] - [tools] perf stat: Revert checks for duration_time (Michael Petlan) [1743208] - [tools] perf list: Fix s390 counter long description for L1D_RO_EXCL_WRITES (Michael Petlan) [1743208] - [tools] perf tools: Add header defining used namespace struct to event.h (Michael Petlan) [1743208] - [tools] perf trace beauty renameat: No need to include linux/fs.h (Michael Petlan) [1743208] - [tools] perf augmented_raw_syscalls: Use a PERCPU_ARRAY map to copy more string bytes (Michael Petlan) [1743208] - [tools] perf augmented_raw_syscalls: Copy strings from all syscalls with 1st or 2nd string arg (Michael Petlan) [1743208] - [tools] perf trace: Add 'string' event alias to select syscalls with string args (Michael Petlan) [1743208] - [x86] perf/x86: Always store regs->ip in perf_callchain_kernel() (Michael Petlan) [1743208] - [x86] perf/x86: Remove pmu->pebs_no_xmm_regs (Michael Petlan) [1743208] - [x86] perf/x86: Clean up PEBS_XMM_REGS (Michael Petlan) [1743208] - [kernel] perf/x86: Disable extended registers for non-supported PMUs (Michael Petlan) [1743208] - [kernel] perf/ioctl: Add check for the sample_period value (Michael Petlan) [1743208] - [kernel] perf/core: Fix perf_sample_regs_user() mm check (Michael Petlan) [1743208] - [kernel] perf/ring-buffer: Use regular variables for nesting (Michael Petlan) [1743208] - [kernel] perf/ring-buffer: Always use {READ, WRITE}_ONCE() for rb->user_page data (Michael Petlan) [1743208] - [kernel] perf/ring_buffer: Add ordering to rb->nest increment (Michael Petlan) [1743208] - [kernel] perf/ring_buffer: Fix exposing a temporarily decreased data_head (Michael Petlan) [1743208] - [x86] perf/x86/intel/ds: Fix EVENT vs. UEVENT PEBS constraints (Michael Petlan) [1743208] - [x86] perf/x86/intel: Allow PEBS multi-entry in watermark mode (Michael Petlan) [1743208] - [x86] perf/x86/intel: Fix INTEL_FLAGS_EVENT_CONSTRAINT* masking (Michael Petlan) [1743208] - [x86] perf/x86/amd/iommu: Make the 'amd_iommu_attr_groups' symbol static (Michael Petlan) [1743208] - [x86] perf/x86/intel: Add Tremont core PMU support (Michael Petlan) [1743208] - [x86] perf/x86/intel/uncore: Add Intel Icelake uncore support (Michael Petlan) [1743208] - [x86] perf/x86/msr: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86/intel/rapl: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86/intel/cstate: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86/intel: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86: Support constraint ranges (Michael Petlan) [1743208] - [x86] perf/x86/lbr: Avoid reading the LBRs when adaptive PEBS handles them (Michael Petlan) [1743208] - [x86] perf/x86/intel: Support adaptive PEBS v4 (Michael Petlan) [1743208] - [x86] perf/x86/intel/ds: Extract code of event update in short period (Michael Petlan) [1743208] - [x86] perf/x86/intel: Extract memory code PEBS parser for reuse (Michael Petlan) [1743208] - [x86] perf/x86: Support outputting XMM registers (Michael Petlan) [1743208] - [x86] perf/x86/intel: Force resched when TFA sysctl is modified (Michael Petlan) [1743208] - [kernel] perf/core: Add perf_pmu_resched() as global function (Michael Petlan) [1743208] - [kernel] perf/headers: Fix stale comment for struct perf_addr_filter (Michael Petlan) [1743208] - [kernel] perf/core: Make perf_swevent_init_cpu() static (Michael Petlan) [1743208] - [x86] perf/x86: Add sanity checks to x86_schedule_events() (Michael Petlan) [1743208] - [x86] perf/x86: Optimize x86_schedule_events() (Michael Petlan) [1743208] - [x86] perf/x86: Clear ->event_constraint[] on put (Michael Petlan) [1743208] - [x86] perf/x86/intel: Optimize intel_get_excl_constraints() (Michael Petlan) [1743208] - [x86] perf/x86: Remove PERF_X86_EVENT_COMMITTED (Michael Petlan) [1743208] - [x86] perf/x86: Simplify x86_pmu.get_constraints() interface (Michael Petlan) [1743208] - [x86] perf/x86/intel: Simplify intel_tfa_commit_scheduling() (Michael Petlan) [1743208] - [tools] perf evsel: Do not rely on errno values for precise_ip fallback (Michael Petlan) [1715508] - [kernel] redhat: perf kABI-check failure fix (Michael Petlan) [1715508] - [tools] perf vendor events: Remove P8 HW events which are not supported (Michael Petlan) [1715508] - [x86] cpufeature: Fix various quality problems in the header (Michael Petlan) [1715508] - [x86] cpufeature: Add facility to check for min microcode revisions (Michael Petlan) [1715508] - [tools] perf tools: Remove needless asm/unistd.h include fixing build in some places (Michael Petlan) [1715508] - [tools] tools build: Add -ldl to the disassembler-four-args feature test (Michael Petlan) [1715508] - [tools] perf cs-etm: Always allocate memory for cs_etm_queue::prev_packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Don't check cs_etm_queue::prev_packet validity (Michael Petlan) [1715508] - [tools] perf report: Report OOM in status line in the GTK UI (Michael Petlan) [1715508] - [tools] perf bench numa: Add define for RUSAGE_THREAD if not present (Michael Petlan) [1715508] - [tools] tools lib traceevent: Change tag string for error (Michael Petlan) [1715508] - [tools] perf annotate: Fix build on 32 bit for BPF annotation (Michael Petlan) [1715508] - [tools] perf bpf: Return value with unlocking in perf_env__find_btf() (Michael Petlan) [1715508] - [tools] perf bpf: Return NULL when RB tree lookup fails in perf_env__find_btf() (Michael Petlan) [1715508] - [tools] perf tools: Fix map reference counting (Michael Petlan) [1715508] - [tools] perf evlist: Fix side band thread draining (Michael Petlan) [1715508] - [tools] perf tools: Check maps for bpf programs (Michael Petlan) [1715508] - [tools] perf bpf: Return NULL when RB tree lookup fails in perf_env__find_bpf_prog_info() (Michael Petlan) [1715508] - [tools] tools include uapi: Sync sound/asound.h copy (Michael Petlan) [1715508] - [tools] perf top: Always sample time to satisfy needs of use of ordered queuing (Michael Petlan) [1715508] - [tools] perf evsel: Use hweight64() instead of hweight_long(attr.sample_regs_user) (Michael Petlan) [1715508] - [tools] tools lib traceevent: Fix missing equality check for strcmp (Michael Petlan) [1715508] - [tools] perf stat: Disable DIR_FORMAT feature for 'perf stat record' (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-sqlite.py: Fix use of parent_id in calls_view (Michael Petlan) [1715508] - [tools] perf header: Fix lock/unlock imbalances when processing BPF/BTF info (Michael Petlan) [1715508] - [tools] perf pmu: Fix parser error for uncore event alias (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Fix never-ending loop (Michael Petlan) [1715508] - [tools] perf machine: Update kernel map address and re-order properly (Michael Petlan) [1715508] - [tools] tools headers uapi: Synchronize i915_drm.h (Michael Petlan) [1715508] - [tools] tools headers uapi: Update drm/i915_drm.h (Michael Petlan) [1715508] - [tools] perf evsel: Fix max perf_event_attr.precise_ip detection (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix TSC slip (Michael Petlan) [1715508] - [tools] perf cs-etm: Add missing case value (Michael Petlan) [1715508] - [tools] perf bpf: Show more BPF program info in print_bpf_prog_info() (Michael Petlan) [1715508] - [tools] perf bpf: Extract logic to create program names from perf_event__synthesize_one_bpf_prog() (Michael Petlan) [1715508] - [tools] perf tools: Save bpf_prog_info and BTF of new BPF programs (Michael Petlan) [1715508] - [tools] perf evlist: Introduce side band thread (Michael Petlan) [1715508] - [tools] perf annotate: Enable annotation of BPF programs (Michael Petlan) [1715508] - [tools] perf build: Check what binutils's 'disassembler()' signature to use (Michael Petlan) [1715508] - [tools] tools build: Add -lrt to FEATURE_CHECK_LDFLAGS-libaio (Michael Petlan) [1715508] - [tools] tools build: Add test-reallocarray.c to test-all.c to fix the build (Michael Petlan) [1715508] - [tools] perf bpf: Process PERF_BPF_EVENT_PROG_LOAD for annotation (Michael Petlan) [1715508] - [tools] perf symbols: Introduce DSO_BINARY_TYPE__BPF_PROG_INFO (Michael Petlan) [1715508] - [tools] perf feature detection: Add -lopcodes to feature-libbfd (Michael Petlan) [1715508] - [tools] perf top: Add option --no-bpf-event (Michael Petlan) [1715508] - [tools] perf bpf: Save BTF information as headers to perf.data (Michael Petlan) [1715508] - [tools] perf bpf: Save BTF in a rbtree in perf_env (Michael Petlan) [1715508] - [tools] perf bpf: Save bpf_prog_info information as headers to perf.data (Michael Petlan) [1715508] - [tools] perf bpf: Save bpf_prog_info in a rbtree in perf_env (Michael Petlan) [1715508] - [tools] perf bpf: Make synthesize_bpf_events() receive perf_session pointer instead of perf_tool (Michael Petlan) [1715508] - [tools] perf bpf: Synthesize bpf events with bpf_program__get_prog_info_linear() (Michael Petlan) [1715508] - [tools] perf record: Replace option --bpf-event with --no-bpf-event (Michael Petlan) [1715508] - [tools] perf tests: Fix a memory leak in test__perf_evsel__tp_sched_test() (Michael Petlan) [1715508] - [tools] perf tests: Fix memory leak by expr__find_other() in test__expr() (Michael Petlan) [1715508] - [tools] perf tests: Fix a memory leak of cpu_map object in the openat_syscall_event_on_all_cpus test (Michael Petlan) [1715508] - [tools] perf evsel: Free evsel->counts in perf_evsel__exit() (Michael Petlan) [1715508] - [tools] perf top: Fix global-buffer-overflow issue (Michael Petlan) [1715508] - [tools] perf maps: Purge all maps from the 'names' tree (Michael Petlan) [1715508] - [tools] perf map: Remove map from 'names' tree in __maps__remove() (Michael Petlan) [1715508] - [tools] perf hist: Add missing map__put() in error case (Michael Petlan) [1715508] - [tools] perf top: Fix error handling in cmd_top() (Michael Petlan) [1715508] - [tools] perf top: Delete the evlist before perf_session, fixing heap-use-after-free issue (Michael Petlan) [1715508] - [tools] perf build-id: Fix memory leak in print_sdt_events() (Michael Petlan) [1715508] - [tools] perf config: Fix a memory leak in collect_config() (Michael Petlan) [1715508] - [tools] perf config: Fix an error in the config template documentation (Michael Petlan) [1715508] - [tools] perf list: Don't forget to drop the reference to the allocated thread_map (Michael Petlan) [1715508] - [tools] perf tools: Add doc about how to build perf with Asan and UBSan (Michael Petlan) [1715508] - [tools] perf vendor events: Remove P8 HW events which are not supported (Michael Petlan) [1715508] - [tools] perf stat: Improve scaling (Michael Petlan) [1715508] - [tools] perf stat: Fix --no-scale (Michael Petlan) [1715508] - [tools] perf script: Support relative time (Michael Petlan) [1715508] - [tools] perf report: Indicate JITed code better in report (Michael Petlan) [1715508] - [tools] perf report: Show all sort keys in help output (Michael Petlan) [1715508] - [tools] perf record: Clarify help for --switch-output (Michael Petlan) [1715508] - [tools] perf record: Allow to limit number of reported perf.data files (Michael Petlan) [1715508] - [tools] perf list: Filter metrics too (Michael Petlan) [1715508] - [tools] perf tools report: Add custom scripts to script menu (Michael Petlan) [1715508] - [tools] perf ui browser: Fix ui popup argv browser for many entries (Michael Petlan) [1715508] - [tools] perf script: Add array bound checking to list_scripts (Michael Petlan) [1715508] - [tools] perf tools: Add some new tips describing the new options (Michael Petlan) [1715508] - [tools] perf report: Implement browsing of individual samples (Michael Petlan) [1715508] - [tools] perf report: Support builtin perf script in scripts menu (Michael Petlan) [1715508] - [tools] perf report: Support running scripts for current time range (Michael Petlan) [1715508] - [tools] perf report: Support time sort key (Michael Petlan) [1715508] - [tools] perf script: Filter COMM/FORK/.. events by CPU (Michael Petlan) [1715508] - [tools] perf tools: Update x86's syscall_64.tbl, no change in tools/perf behaviour (Michael Petlan) [1715508] - [tools] perf script python: Add printdate function to SQL exporters (Michael Petlan) [1715508] - [tools] perf report: Use less for scripts output (Michael Petlan) [1715508] - [tools] perf session: Add process callback to reader object (Michael Petlan) [1715508] - [tools] perf header: Add DIR_FORMAT feature to describe directory data (Michael Petlan) [1715508] - [tools] perf data: Make perf_data__size() work over directory (Michael Petlan) [1715508] - [tools] perf data: Add perf_data__update_dir() function (Michael Petlan) [1715508] - [tools] perf data: Don't store auxtrace index for directory data file (Michael Petlan) [1715508] - [tools] perf data: Support having perf.data stored as a directory (Michael Petlan) [1715508] - [tools] perf vendor events amd: perf PMU events for AMD Family 17h (Michael Petlan) [1715508] - [tools] perf probe: Fix getting the kernel map (Michael Petlan) [1715508] - [tools] perf report: Parse time quantum (Michael Petlan) [1715508] - [tools] perf time-utils: Add utility function to print time stamps in nanoseconds (Michael Petlan) [1715508] - [tools] perf report: Support output in nanoseconds (Michael Petlan) [1715508] - [tools] perf script: Support insn output for normal samples (Michael Petlan) [1715508] - [tools] perf data: Force perf_data__open|close zero data->file.path (Michael Petlan) [1715508] - [tools] perf session: Fix double free in perf_data__close (Michael Petlan) [1715508] - [tools] perf evsel: Probe for precise_ip with simple attr (Michael Petlan) [1715508] - [tools] perf tools: Read and store caps/max_precise in perf_pmu (Michael Petlan) [1715508] - [tools] perf hist: Fix memory leak of srcline (Michael Petlan) [1715508] - [tools] perf hist: Add error path into hist_entry__init (Michael Petlan) [1715508] - [tools] perf diff: Support --pid/--tid filter options (Michael Petlan) [1715508] - [tools] perf diff: Support --cpu filter option (Michael Petlan) [1715508] - [tools] perf diff: Support --time filter option (Michael Petlan) [1715508] - [tools] perf thread: Generalize function to copy from thread addr space from intel-bts code (Michael Petlan) [1715508] - [tools] perf annotate: Calculate the max instruction name, align column to that (Michael Petlan) [1715508] - [tools] perf clang: Remove needless extra semicolon (Michael Petlan) [1715508] - [tools] perf bpf: Automatically add BTF ELF markers (Michael Petlan) [1715508] - [tools] perf beauty msg_flags: Add missing s lost when adding prefix suppression logic (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Add call tree (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out CallGraphModelBase (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Improve TreeModel abstraction (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out TreeWindowBase (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-postgresql.py: Export calls parent_id (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-postgresql.py: Fix invalid input syntax for integer error (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-sqlite.py: Export calls parent_id (Michael Petlan) [1715508] - [tools] perf db-export: Add calls parent_id to enable creation of call trees (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix divide by zero when TSC is not available (Michael Petlan) [1715508] - [tools] perf auxtrace: Improve address filter error message when there is no DSO (Michael Petlan) [1715508] - [tools] perf time-utils: Refactor time range parsing code (Michael Petlan) [1715508] - [tools] tools lib traceevent: Fix buffer overflow in arg_eval (Michael Petlan) [1715508] - [tools] perf probe: Clarify error message about not finding kernel modules debuginfo (Michael Petlan) [1715508] - [tools] replace open encodings for NUMA_NO_NODE (Michael Petlan) [1715508] - [tools] perf script python: Add Python3 support to stat-cpi.py (Michael Petlan) [1715508] - [tools] perf tools: Add perf_exe() helper to find perf binary (Michael Petlan) [1715508] - [tools] perf script: Handle missing fields with -F +. (Michael Petlan) [1715508] - [tools] perf data: Add perf_data__open_dir_data function (Michael Petlan) [1715508] - [tools] perf data: Add perf_data__(create_dir|close_dir) functions (Michael Petlan) [1715508] - [tools] perf data: Fail check_backup in case of error (Michael Petlan) [1715508] - [tools] perf data: Make check_backup work over directories (Michael Petlan) [1715508] - [tools] perf tools: Add rm_rf_perf_data function (Michael Petlan) [1715508] - [tools] perf tools: Add pattern name checking to rm_rf (Michael Petlan) [1715508] - [tools] perf tools: Add depth checking to rm_rf (Michael Petlan) [1715508] - [tools] perf data: Add global path holder (Michael Petlan) [1715508] - [tools] perf data: Move size to struct perf_data_file (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Add top calls report (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Remove no selection error (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Remove SQLTableDialogDataItem (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Create new dialog data item classes (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Move report name into ReportVars (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out ReportVars (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out ReportDialogBase (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Move column headers (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Hide Call Graph option if no calls table (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Remove leftover debugging prints (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Fix missing shebang (Michael Petlan) [1715508] - [tools] perf thread-stack: Hide x86 retpolines (Michael Petlan) [1715508] - [tools] perf thread-stack: Improve thread_stack__no_call_return() (Michael Petlan) [1715508] - [tools] perf tools: Make rm_rf() remove single file (Michael Petlan) [1715508] - [tools] perf cpumap: Increase debug level for cpu_map__snprint verbose output (Michael Petlan) [1715508] - [tools] perf bpf-event: Add missing new line into pr_debug call (Michael Petlan) [1715508] - [tools] perf script: Allow +- operator for type specific fields option (Michael Petlan) [1715508] - [tools] perf evsel: Force sample_type for slave events (Michael Petlan) [1715508] - [tools] perf session: Don't report zero period samples for slave events (Michael Petlan) [1715508] - [tools] perf trace: Allow dumping a BPF map after setting up BPF events (Michael Petlan) [1715508] - [tools] perf bpf: Add bpf_map dumper (Michael Petlan) [1715508] - [tools] perf doc: Fix documentation of the Flags section in perf.data (Michael Petlan) [1715508] - [tools] perf doc: Fix HEADER_CMDLINE description in perf.data documentation (Michael Petlan) [1715508] - [tools] perf report: Don't shadow inlined symbol with different addr range (Michael Petlan) [1715508] - [tools] perf tools: Use sysfs__mountpoint() when reading cpu topology (Michael Petlan) [1715508] - [tools] perf tools: Add numa_topology object (Michael Petlan) [1715508] - [tools] perf tools: Add cpu_topology object (Michael Petlan) [1715508] - [tools] perf tests shell: Skip trace+probe_vfs_getname.sh if built without trace support (Michael Petlan) [1715508] - [tools] perf header: Remove unused 'cpu_nr' field from 'struct cpu_topo' (Michael Petlan) [1715508] - [tools] perf header: Get rid of write_it label (Michael Petlan) [1715508] - [tools] perf list: Display metric expressions for --details option (Michael Petlan) [1715508] - [tools] perf tools: Fix legacy events symbol separator parsing (Michael Petlan) [1715508] - [tools] perf tools: Rename build libperf to perf (Michael Petlan) [1715508] - [tools] perf tools: Rename LIB_FILE to LIBPERF_A (Michael Petlan) [1715508] - [tools] perf tools: Compile perf with libperf-in.o instead of libperf.a (Michael Petlan) [1715508] - [tools] perf cs-etm: Modularize auxtrace_buffer fetch function (Michael Petlan) [1715508] - [tools] perf cs-etm: Modularize main packet processing loop (Michael Petlan) [1715508] - [tools] perf cs-etm: Modularize main decoder function (Michael Petlan) [1715508] - [tools] perf cs-etm: Make cs_etm__run_decoder() queue independent (Michael Petlan) [1715508] - [tools] perf cs-etm: Rethink kernel address initialisation (Michael Petlan) [1715508] - [tools] perf cs-etm: Cleaning up function cs_etm__alloc_queue() (Michael Petlan) [1715508] - [tools] perf cs-etm: Fix erroneous comment (Michael Petlan) [1715508] - [tools] perf cs-etm: Introducing function cs_etm__init_trace_params() (Michael Petlan) [1715508] - [tools] perf cs-etm: Fix memory leak in error path (Michael Petlan) [1715508] - [tools] perf cs-etm: Introducing function cs_etm_decoder__init_dparams() (Michael Petlan) [1715508] - [tools] perf cs-etm: Fix wrong return values in error path (Michael Petlan) [1715508] - [tools] perf cs-etm: Remove unused structure field "time" and "timestamp" (Michael Petlan) [1715508] - [tools] perf cs-etm: Remove unused structure field "state" (Michael Petlan) [1715508] - [tools] perf build: Add missing FEATURE_CHECK_LDFLAGS-libcrypto (Michael Petlan) [1715508] - [tools] perf unwind: Do not put libunwind-{x86, aarch64} in FEATURE_TESTS_BASIC (Michael Petlan) [1715508] - [tools] perf coresight: Do not test for libopencsd by default (Michael Petlan) [1715508] - [tools] perf trace: Filter out gnome-terminal* parent (Michael Petlan) [1715508] - [tools] perf trace: Check if the 'fd' is negative when mapping it to pathname (Michael Petlan) [1715508] - [tools] perf beauty ioctl cmd: The 'fd' arg is signed (Michael Petlan) [1715508] - [tools] perf utils: Silence "Couldn't synthesize bpf events" warning for EPERM (Michael Petlan) [1715508] - [tools] perf cs-etm: Add proper header file for symbols (Michael Petlan) [1715508] - [tools] perf record: Implement --affinity=node|cpu option (Michael Petlan) [1715508] - [tools] perf auxtrace: Add timestamp to auxtrace errors (Michael Petlan) [1715508] - [tools] perf intel-pt: Packet splitting can happen only on 32-bit (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix CYC timestamp calculation after OVF (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix overlap calculation for padding (Michael Petlan) [1715508] - [tools] perf auxtrace: Define auxtrace record alignment (Michael Petlan) [1715508] - [tools] perf thread-stack: Represent jmps to the start of a different symbol (Michael Petlan) [1715508] - [tools] perf thread-stack: Tidy thread_stack__no_call_return() by adding more local variables (Michael Petlan) [1715508] - [tools] perf thread-stack: Tidy thread_stack__push_cp() usage (Michael Petlan) [1715508] - [tools] perf tools: Fix split_kallsyms_for_kcore() for trampoline symbols (Michael Petlan) [1715508] - [tools] perf vendor events intel: Fix Load_Miss_Real_Latency on CLX (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for exception return packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for exception packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Add traceID in packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Change tuple from traceID-CPU# to traceID-metadata (Michael Petlan) [1715508] - [tools] perf cs-etm: Add exception number in exception packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for trace discontinuity (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for instruction range packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Add last instruction information in packet (Michael Petlan) [1715508] - [tools] perf tools: Add documentation for BPF event selection (Michael Petlan) [1715508] - [tools] perf report: Move symbol annotation to the resort phase (Michael Petlan) [1715508] - [tools] perf evsel: Add output_resort_cb method (Michael Petlan) [1715508] - [tools] perf hists: Add argument to hists__resort_cb_t callback (Michael Petlan) [1715508] - [tools] perf record: Apply affinity masks when reading mmap buffers (Michael Petlan) [1715508] - [tools] perf tools: Add fallback versions for CPU_{OR, EQUAL}() (Michael Petlan) [1715508] - [tools] perf record: Bind the AIO user space buffers to nodes (Michael Petlan) [1715508] - [tools] perf record: Allocate affinity masks (Michael Petlan) [1715508] - [tools] perf pmu: Remove set_drv_config API (Michael Petlan) [1715508] - [tools] perf coresight: Remove set_drv_config() API (Michael Petlan) [1715508] - [tools] perf arm cs-etm: Use event attributes to send sink information to kernel (Michael Petlan) [1715508] - [tools] perf pmu: Move EVENT_SOURCE_DEVICE_PATH to PMU header file (Michael Petlan) [1715508] - [tools] perf bpf-loader: Remove unecessary includes from bpf-loader.h (Michael Petlan) [1715508] - [tools] perf powerpc kvm-stat: Add missing evlist.h header (Michael Petlan) [1715508] - [tools] perf kvm stat: Replace kvm-stat.h includes with forward declarations (Michael Petlan) [1715508] - [tools] perf pmu: Remove needless evsel.h only needs one fwd decl (Michael Petlan) [1715508] - [tools] perf tests pmu: Add missing headers (Michael Petlan) [1715508] - [tools] perf hist: Remove the needless callchain.h include from hist.h (Michael Petlan) [1715508] - [tools] perf tools: Add missing include in various places (Michael Petlan) [1715508] - [tools] perf thread: Don't include symbol.h, symbol_conf.h is enough (Michael Petlan) [1715508] - [tools] perf evsel: No need to include symbol.h in evsel.h, symbol_conf.h is enough (Michael Petlan) [1715508] - [tools] perf tools: Add missing include for symbols.h (Michael Petlan) [1715508] - [tools] perf hist: Remove symbol.h from hist.h, just fwd decls are needed (Michael Petlan) [1715508] - [tools] perf tests: Add missing headers so far obtained indirectly (Michael Petlan) [1715508] - [tools] perf map: Move structs and prototypes for map groups to a separate header (Michael Petlan) [1715508] - [tools] pref tools: Add missing map.h includes (Michael Petlan) [1715508] - [tools] perf symbols: Introduce map_symbol.h (Michael Petlan) [1715508] - [tools] perf callchain: Uninline callchain_cursor_reset() to remove map.h dependency (Michael Petlan) [1715508] - [tools] perf srccode: Move struct definition from map.h to srccode.h (Michael Petlan) [1715508] - [tools] perf arm pmu: Add missing linux/string.h header (Michael Petlan) [1715508] - [tools] perf powerpc: Add missing headers to skip-callchain-idx.c (Michael Petlan) [1715508] - [tools] perf augmented_syscalls: Convert to bpf_map() (Michael Petlan) [1715508] - [tools] perf bpf examples: Convert etcsnoop to use bpf_map() (Michael Petlan) [1715508] - [tools] perf trace: Fixup etcsnoop example (Michael Petlan) [1715508] - [tools] perf augmented_raw_syscalls: Use bpf_map() (Michael Petlan) [1715508] - [tools] perf bpf: Convert pid_map() to bpf_map() (Michael Petlan) [1715508] - [tools] perf bpf: Add bpf_map() helper (Michael Petlan) [1715508] - [tools] perf bpf: Fix synthesized PERF_RECORD_KSYMBOL/BPF_EVENT (Michael Petlan) [1715508] - [tools] perf sched: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf hist: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf symbols: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf util: Use cached rbtree for rblists (Michael Petlan) [1715508] - [tools] perf callchain: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf machine: Use cached rbtrees (Michael Petlan) [1715508] - [tools] Update rbtree implementation (Michael Petlan) [1715508] - [tools] perf callchain: No need to include perf.h (Michael Petlan) [1715508] - [tools] perf comm: Remove needless headers from comm.h (Michael Petlan) [1715508] - [tools] perf namespaces: Remove namespaces.h from .h headers (Michael Petlan) [1715508] - [tools] perf symbols: Remove some unnecessary includes from symbol.h (Michael Petlan) [1715508] - [tools] perf symbols: Remove include map.h from dso.h (Michael Petlan) [1715508] - [tools] perf block-range: Add missing headers (Michael Petlan) [1715508] - [tools] perf tools: Move branch structs to branch.h (Michael Petlan) [1715508] - [tools] perf annotate: Remove lots of headers from annotate.h (Michael Petlan) [1715508] - [tools] perf symbols: Move symbol_conf to separate file (Michael Petlan) [1715508] - [tools] perf color: Add missing stdarg.g to color.h (Michael Petlan) [1715508] - [tools] perf utils: Move perf_config using routines from color.c to separate object (Michael Petlan) [1715508] - [tools] perf top: Synthesize BPF events for pre-existing loaded BPF programs (Michael Petlan) [1715508] - [tools] perf tools: Synthesize PERF_RECORD_* for loaded BPF programs (Michael Petlan) [1715508] - [tools] perf tools: Handle PERF_RECORD_BPF_EVENT (Michael Petlan) [1715508] - [tools] perf tools: Handle PERF_RECORD_KSYMBOL (Michael Petlan) [1715508] - [tools] tools headers uapi: Sync tools/include/uapi/linux/perf_event.h (Michael Petlan) [1715508] - [tools] tools headers uapi: Sync tools/include/uapi/linux/perf_event.h (Michael Petlan) [1715508] - [tools] perf report: Display names in s390 diagnostic counter sets (Michael Petlan) [1715508] - [tools] perf tools: Remove duplicate headers (Michael Petlan) [1715508] - [tools] perf session: Add reader__process_events function (Michael Petlan) [1715508] - [tools] perf session: Add 'data_offset' member to reader object (Michael Petlan) [1715508] - [tools] perf session: Add 'data_size' member to reader object (Michael Petlan) [1715508] - [tools] perf session: Add reader object (Michael Petlan) [1715508] - [tools] perf session: Get rid of file_size variable (Michael Petlan) [1715508] - [tools] perf session: Rearrange perf_session__process_events function (Michael Petlan) [1715508] - [tools] perf tools: Replace automatic const char[] variables by statics (Michael Petlan) [1715508] - [tools] perf/doc: Update design.txt for exclude_{host|guest} flags (Michael Petlan) [1715508] - [x86] perf/x86/intel/pt: Remove software double buffering PMU capability (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Fix AUX software double buffering (Michael Petlan) [1715508] - [x86] perf/x86/amd: Update generic hardware cache events for Family 17h (Michael Petlan) [1715508] - [x86] perf/x86/amd: Add event map for AMD Family 17h (Michael Petlan) [1715508] - [x86] perf/x86: Fix incorrect PEBS_REGS (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Fix AUX record suppression (Michael Petlan) [1715508] - [kernel] perf/core: Fix the address filtering fix (Michael Petlan) [1715508] - [kernel] perf/core: Fix perf_event_disable_inatomic() race (Michael Petlan) [1715508] - [x86] perf/x86/intel: Initialize TFA MSR (Michael Petlan) [1715508] - [x86] perf/x86/intel: Fix handling of wakeup_events for multi-entry PEBS (Michael Petlan) [1715508] - [kernel] perf/core: Restore mmap record type correctly (Michael Petlan) [1715508] - [x86] perf/x86/intel: Make dev_attr_allow_tsx_force_abort static (Michael Petlan) [1715508] - [kernel] uprobes: convert uprobe.ref to refcount_t (Michael Petlan) [1715508] - [kernel] perf, bpf: Consider events with attr.bpf_event as side-band events (Michael Petlan) [1715508] - [kernel] perf/core: Mark expected switch fall-through (Michael Petlan) [1715508] - [x86] perf/x86/intel/uncore: Fix client IMC events return huge result (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Use high order allocations for AUX buffers optimistically (Michael Petlan) [1715508] - [x86] events: Mark expected switch-case fall-throughs (Michael Petlan) [1715508] - [kernel] perf, pt, coresight: Fix address filters for vmas with non-zero offset (Michael Petlan) [1715508] - [kernel] perf: Copy parent's address filter offsets on clone (Michael Petlan) [1715508] - [x86] perf/x86/intel: Add counter freezing quirk for Goldmont (Michael Petlan) [1715508] - [x86] perf/x86/intel: Clean up counter freezing quirk (Michael Petlan) [1715508] - [x86] perf/x86/intel: Clean up SNB PEBS quirk (Michael Petlan) [1715508] - [x86] perf/x86/kvm: Avoid unnecessary work in guest filtering (Michael Petlan) [1715508] - [perf] aux: Make perf_event accessible to setup_aux() (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Convert ring_buffer.aux_refcount to refcount_t (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Convert ring_buffer.refcount to refcount_t (Michael Petlan) [1715508] - [kernel] perf: Convert perf_event_context.refcount to refcount_t (Michael Petlan) [1715508] - [kernel] perf/uprobes: Convert to SPDX license identifier (Michael Petlan) [1715508] - [kernel] perf/hw_breakpoints: Convert to SPDX license identifier (Michael Petlan) [1715508] - [kernel] perf/core: Convert to SPDX license identifiers (Michael Petlan) [1715508] - [kernel] perf, bpf: Introduce PERF_RECORD_BPF_EVENT (Michael Petlan) [1715508] - [kernel] perf, bpf: Introduce PERF_RECORD_KSYMBOL (Michael Petlan) [1715508] - [kernel] perf: Remove duplicated workqueue.h include from perf_event.h (Michael Petlan) [1715508] - [tools] perf/core: Remove unused perf_flags (Michael Petlan) [1715508] - [x86] perf/core, arch/x86: Strengthen exclusion checks with PERF_PMU_CAP_NO_EXCLUDE (Michael Petlan) [1715508] - [x86] perf/core, arch/x86: Use PERF_PMU_CAP_NO_EXCLUDE for exclusion incapable PMUs (Michael Petlan) [1715508] - [kernel] perf/core: Add PERF_PMU_CAP_NO_EXCLUDE for exclusion incapable PMUs (Michael Petlan) [1715508] - [kernel] perf/core: Add function to test for event exclusion flags (Michael Petlan) [1715508]- [kernel] mm/hmm: fix ZONE_DEVICE anon page mapping reuse (Jerome Glisse) [1498655 1597758] - [gpu] drm/nouveau/dmem: missing mutex_lock in error path (Jerome Glisse) [1498655 1597758] - [mm] hmm: always return EBUSY for invalid ranges in hmm_range_{fault, snapshot} (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: move hmm_vma_range_done and hmm_vma_fault to nouveau (Jerome Glisse) [1498655 1597758] - [kernel] mm: factor out a devm_request_free_mem_region helper (Jerome Glisse) [1498655 1597758] - [mm] don't clear ->mapping in hmm_devmem_free (Jerome Glisse) [1498655 1597758] - [mm] remove the struct hmm_device infrastructure (Jerome Glisse) [1498655 1597758] - [mm] hmm: Fix error flows in hmm_invalidate_range_start (Jerome Glisse) [1498655 1597758] - [mm] hmm: Remove confusing comment and logic from hmm_release (Jerome Glisse) [1498655 1597758] - [mm] hmm: Poison hmm_range during unregister (Jerome Glisse) [1498655 1597758] - [mm] hmm: Remove racy protection against double-unregistration (Jerome Glisse) [1498655 1597758] - [mm] hmm: Use lockdep instead of comments (Jerome Glisse) [1498655 1597758] - [mm] hmm: Hold on to the mmget for the lifetime of the range (Jerome Glisse) [1498655 1597758] - [mm] hmm: Do not use list*_rcu() for hmm->ranges (Jerome Glisse) [1498655 1597758] - [mm] hmm: Simplify hmm_get_or_create and make it reliable (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: Remove duplicate condition test before wait_event_timeout (Jerome Glisse) [1498655 1597758] - [mm] hmm: Hold a mmgrab from hmm to mm (Jerome Glisse) [1498655 1597758] - [mm] hmm: Use hmm_mirror not mm as an argument for hmm_range_register (Jerome Glisse) [1498655 1597758] - [mm] hmm: fix use after free with struct hmm in the mmu notifiers (Jerome Glisse) [1498655 1597758] - [mm] hmm: Only set FAULT_FLAG_ALLOW_RETRY for non-blocking (Jerome Glisse) [1498655 1597758] - [mm] hmm: support automatic NUMA balancing (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: clean up some coding style and comments (Jerome Glisse) [1498655 1597758] - [mm] hmm.c: suppress compilation warnings when CONFIG_HUGETLB_PAGE is not set (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: convert various hmm_pfn_* to device_entry which is a better name (Jerome Glisse) [1498655 1597758] - [mm] hmm: add a helper function that fault pages and map them to a device (Jerome Glisse) [1498655 1597758] - [mm] hmm: allow to mirror vma of a file on a DAX backed filesystem (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: add helpers to test if mm is still alive or not (Jerome Glisse) [1498655 1597758] - [mm] hmm: mirror hugetlbfs (snapshoting, faulting and DMA mapping) (Jerome Glisse) [1498655 1597758] - [documentation] [documentation] mm/hmm: add default fault flags to avoid the need to pre-fill pfns arrays (Jerome Glisse) [1498655 1597758] - [mm] hmm: improve driver API to work and wait over a range (Jerome Glisse) [1498655 1597758] - [mm] hmm: improve and rename hmm_vma_fault() to hmm_range_fault() (Jerome Glisse) [1498655 1597758] - [mm] hmm: improve and rename hmm_vma_get_pfns() to hmm_range_snapshot() (Jerome Glisse) [1498655 1597758] - [mm] hmm: do not erase snapshot when a range is invalidated (Jerome Glisse) [1498655 1597758] - [mm] hmm: use reference counting for HMM struct (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: convert to use vm_fault_t (Jerome Glisse) [1498655 1597758] - [mm] hmm.c: remove set but not used variable 'devmem' (Jerome Glisse) [1498655 1597758] - [mm] hmm: mark hmm_devmem_{add, add_resource} EXPORT_SYMBOL_GPL (Jerome Glisse) [1498655 1597758] - [mm] hmm: replace hmm_devmem_pages_create() with devm_memremap_pages() (Jerome Glisse) [1498655 1597758] - [mm] hmm: use devm semantics for hmm_devmem_{add, remove} (Jerome Glisse) [1498655 1597758] - [mm] hmm: invalidate device page table at start of invalidation (Jerome Glisse) [1498655 1597758] - [mm] hmm: use a structure for update callback parameters (Jerome Glisse) [1498655 1597758] - [mm] hmm: properly handle migration pmd (Jerome Glisse) [1498655 1597758] - [mm] hmm: fix utf8 . (Jerome Glisse) [1498655 1597758] - [mm] hmm.c: remove unused variables align_start and align_end (Jerome Glisse) [1498655 1597758] - [hid] hyperv: Use in-place iterator API in the channel callback (Benjamin Tissoires) [1740778 1772010] - [hid] logitech-hidpp: do all FF cleanup in hidpp_ff_destroy() (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: rework device validation (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: split g920_get_config() (Benjamin Tissoires) [1740778] - [hid] fix error message in hid_open_report() (Benjamin Tissoires) [1740778] - [hid] Fix assumption that devices have inputs (Benjamin Tissoires) [1740778] - [hid] i2c-hid: add Trekstor Primebook C11B to descriptor override (Benjamin Tissoires) [1740778] - [hid] apple: Fix stuck function keys when using FN (Benjamin Tissoires) [1740778] - [hid] wacom: Fix several minor compiler warnings (Benjamin Tissoires) [1740778] - [hid] Add quirk for HP X500 PIXART OEM mouse (Benjamin Tissoires) [1740778] - [hid] hidraw: Fix invalid read in hidraw_ioctl (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Fix crash when initial logi_dj_recv_query_paired_devices fails (Benjamin Tissoires) [1740778] - [hid] logitech: Fix general protection fault caused by Logitech driver (Benjamin Tissoires) [1740778] - [hid] sony: Fix memory corruption issue on cleanup (Benjamin Tissoires) [1740778] - [hid] prodikeys: Fix general protection fault during probe (Benjamin Tissoires) [1740778] - [hid] wacom: correct misreported EKR ring values (Benjamin Tissoires) [1740778] - [hid] cp2112: prevent sleeping function called from invalid context (Benjamin Tissoires) [1740778] - [hid] wacom: Correct distance scale for 2nd-gen Intuos devices (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove support for the G700 over USB (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech-hidpp: add USB PID for a few more supported mice" (Benjamin Tissoires) [1740778] - [hid] sony: Fix race condition between rumble and device remove (Benjamin Tissoires) [1740778] - [hid] hiddev: do cleanup in failure of opening a device (Benjamin Tissoires) [1740778] - [hid] hiddev: avoid opening a disconnected device (Benjamin Tissoires) [1740778] - [hid] input: fix a4tech horizontal wheel custom usage (Benjamin Tissoires) [1740778] - [hid] Add quirk for HP X1200 PIXART OEM mouse (Benjamin Tissoires) [1740778] - [hid] holtek: test for sanity of intfdata (Benjamin Tissoires) [1740778] - [hid] wacom: fix bit shift for Cintiq Companion 2 (Benjamin Tissoires) [1740778] - [hid] quirks: Set the INCREMENT_USAGE_ON_DUPLICATE quirk on Saitek X52 (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Really fix return value of logi_dj_recv_query_hidpp_devices (Benjamin Tissoires) [1740778] - [hid] Add 044f:b320 ThrustMaster, Inc. 2 in 1 DT (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add the Powerplay receiver (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add USB PID for a few more supported mice (Benjamin Tissoires) [1740778] - [hid] logitech-dj: rename "gaming" receiver to "lightspeed" (Benjamin Tissoires) [1740778] - [hid] Add another Primax PIXART OEM mouse quirk (Benjamin Tissoires) [1740778] - [hid] wacom: generic: add touchring adjustment for 2nd Gen Pro Small (Benjamin Tissoires) [1740778] - [hid] quirks: Refactor ELAN 400 and 401 handling (Benjamin Tissoires) [1740778] - [hid] video: fbdev: don't print error message on framebuffer_alloc() failure (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Fix forwarding of very long HID++ reports (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Huion HS64 tablet (Benjamin Tissoires) [1740778] - [hid] wacom: add new MobileStudio Pro support (Benjamin Tissoires) [1740778] - [hid] wacom: generic: read the number of expected touches on a per collection basis (Benjamin Tissoires) [1740778] - [hid] wacom: generic: support the 'report valid' usage for touch (Benjamin Tissoires) [1740778] - [hid] wacom: generic: read HID_DG_CONTACTMAX from any feature report (Benjamin Tissoires) [1740778] - [hid] wacom: Add 2nd gen Intuos Pro Small support (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee Rainbow CV720 (Benjamin Tissoires) [1740778] - [hid] logitech-dj: fix return value of logi_dj_recv_query_hidpp_devices (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 372 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 335 (Benjamin Tissoires) [1740778] - [hid] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 (Benjamin Tissoires) [1740778] - [hid] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 307 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 297 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 267 (Benjamin Tissoires) [1740778] - [hid] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 265 (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Fix 064d:c52f receiver support (Benjamin Tissoires) [1740778] - [hid] revert "hid: core: Call request_module before doing device_add" (Benjamin Tissoires) [1740778] - [hid] revert "hid: core: Do not call request_module() in async context" (Benjamin Tissoires) [1740778] - [hid] revert "hid: Increase maximum report size allowed by hid_field_extract()" (Benjamin Tissoires) [1740778] - [hid] a4tech: fix horizontal scrolling (Benjamin Tissoires) [1740778] - [hid] hyperv: Add a module description line (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 178 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 149 (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: Add support for the S510 remote control (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: hid: make const array consumer_rdesc_start static (Benjamin Tissoires) [1740778] - [hid] logitech-dj: make const array template static (Benjamin Tissoires) [1740778] - [hid] multitouch: handle faulty Elo touch device (Benjamin Tissoires) [1740778] - [input] treewide: Add SPDX license identifier for more missed files (Benjamin Tissoires) [1740778] - [hid] wacom: Sync INTUOSP2_BT touch state after each frame if necessary (Benjamin Tissoires) [1740778] - [hid] wacom: Correct button numbering 2nd-gen Intuos Pro over Bluetooth (Benjamin Tissoires) [1740778] - [hid] wacom: Send BTN_TOUCH in response to INTUOSP2_BT eraser contact (Benjamin Tissoires) [1740778] - [hid] wacom: Don't report anything prior to the tool entering range (Benjamin Tissoires) [1740778] - [hid] wacom: Don't set tool type until we're in range (Benjamin Tissoires) [1740778] - [hid] wacom: correct touch resolution x/y typo (Benjamin Tissoires) [1740778] - [hid] wacom: generic: Correct pad syncing (Benjamin Tissoires) [1740778] - [hid] wacom: generic: only switch the mode on devices with LEDs (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Add usb-id for the 27MHz MX3000 receiver (Benjamin Tissoires) [1740778] - [hid] rmi: Use SET_REPORT request on control endpoint for Acer Switch 3 and 5 (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for the MX5500 keyboard (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for the Logitech MX5500's Bluetooth Mini-Receiver (Benjamin Tissoires) [1740778] - [hid] i2c-hid: add iBall Aer3 to descriptor override (Benjamin Tissoires) [1740778] - [hid] logitech-dj: fix spelling in printk (Benjamin Tissoires) [1740778] - [hid] input: add mapping for KEY_KBD_LAYOUT_NEXT (Benjamin Tissoires) [1740778] - [hid] input: fix assignment of .value (Benjamin Tissoires) [1740778] - [hid] input: make sure the wheel high resolution multiplier is set (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add usbhid dependency in Kconfig (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for HID++ 1.0 consumer keys reports (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for HID++ 1.0 extra mouse buttons reports (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for HID++ 1.0 wheel reports (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: make hidpp10_set_register_bit a bit more generic (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add input_device ptr to struct hidpp_device (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: do not hardcode very long report length (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: handle devices attached to 27MHz wireless receivers (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: use RAP instead of FAP to get the protocol version (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove unused origin_is_hid_core function parameter (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove double assignment from __hidpp_send_report (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: do not make failure to get the name fatal (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: ignore very-short or empty names (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: make .probe usbhid capable (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: allow non HID++ devices to be handled by this module (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for Logitech Bluetooth Mini-Receiver (Benjamin Tissoires) [1740778] - [hid] logitech-dj: make appending of the HID++ descriptors conditional (Benjamin Tissoires) [1740778] - [hid] logitech-dj: remove false-positive error on double queueing of delayed-work (Benjamin Tissoires) [1740778] - [hid] logitech-dj: pick a better name for non-unifying receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: deal with some KVMs adding an extra interface to the usbdev (Benjamin Tissoires) [1740778] - [hid] logitech-dj: replace dev_err calls with hid_err calls (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for 27 MHz mouse-only receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for 27 MHz receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for the gaming unifying receiver (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for non unifying receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add logi_dj_recv_queue_unknown_work helper (Benjamin Tissoires) [1740778] - [hid] logitech-dj: support sharing struct dj_receiver_dev between USB-interfaces (Benjamin Tissoires) [1740778] - [hid] logitech-dj: rename dj_receiver_dev.hdev to dj_receiver_dev.hidpp (Benjamin Tissoires) [1740778] - [hid] logitech-dj: protect the paired_dj_devices access in add_djhid_dev with the lock (Benjamin Tissoires) [1740778] - [hid] logitech-dj: remove unused querying_devices variable (Benjamin Tissoires) [1740778] - [hid] logitech-dj: do not schedule the dj report itself (Benjamin Tissoires) [1740778] - [hid] logitech-dj: remove USB dependency (Benjamin Tissoires) [1740778] - [hid] logitech-dj: declare and use a few HID++ 1.0 constants (Benjamin Tissoires) [1740778] - [hid] logitech-dj: use BIT() macro for RF Report types (Benjamin Tissoires) [1740778] - [hid] logitech-dj: fix variable naming in logi_dj_hidpp_event (Benjamin Tissoires) [1740778] - [hid] logitech-dj: reshuffle logi_dj_recv_forward_* (Benjamin Tissoires) [1740778] - [hid] logitech: Stop setting drvdata to NULL on probe failure and remove (Benjamin Tissoires) [1740778] - [hid] quirks: do not blacklist Logitech devices (Benjamin Tissoires) [1740778] - [hid] u2fzero: fail probe if not using USB transport (Benjamin Tissoires) [1740778] - [hid] u2fzero: fix compiling error in u2fzero_probe() (Benjamin Tissoires) [1740778] - [hid] revert "hid: i2c-hid: Disable runtime PM on Synaptics touchpad" (Benjamin Tissoires) [1740778] - [hid] add driver for U2F Zero built-in LED and RNG (Benjamin Tissoires) [1740778] - [hid] core: Do not call request_module() in async context (Benjamin Tissoires) [1740778] - [hid] macally: Add support for Macally ikey keyboard (Benjamin Tissoires) [1740778] - [hid] core: Call request_module before doing device_add (Benjamin Tissoires) [1740778] - [hid] core: move Usage Page concatenation to Main item (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: change low battery level threshold from 31 to 30 percent (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove hidpp_is_connected() (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: simplify printing of HID++ version (Benjamin Tissoires) [1740778] - [hid] picolcd: Convert to use sysfs_streq() (Benjamin Tissoires) [1740778] - [hid] hid-sensor-custom: simplify getting .driver_data (Benjamin Tissoires) [1740778] - [hid] input: add mapping for Assistant key (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Disable runtime PM on Synaptics touchpad (Benjamin Tissoires) [1740778] - [hid] quirks: Fix keyboard + touchpad on Lenovo Miix 630 (Benjamin Tissoires) [1740778] - [hid] input: add mapping for "Toggle Display" key (Benjamin Tissoires) [1740778] - [hid] input: add mapping for "Full Screen" key (Benjamin Tissoires) [1740778] - [hid] input: add mapping for keyboard Brightness Up/Down/Toggle keys (Benjamin Tissoires) [1740778] - [hid] input: add mapping for Expose/Overview key (Benjamin Tissoires) [1740778] - [hid] input: fix mapping of aspect ratio key (Benjamin Tissoires) [1740778] - [hid] logitech: Handle 0 scroll events for the m560 (Benjamin Tissoires) [1740778] - [hid] debug: fix race condition with between rdesc_show() and device removal (Benjamin Tissoires) [1740778] - [hid] logitech: check the return value of create_singlethread_workqueue (Benjamin Tissoires) [1740778] - [hid] steam: fix deadlock with input devices (Benjamin Tissoires) [1740778] - [hid] uclogic: remove redudant duplicated null check on ver_ptr (Benjamin Tissoires) [1740778] - [hid] quirks: Drop misused kernel-doc annotation (Benjamin Tissoires) [1740778] - [hid] quirks: use correct format chars in dbg_hid (Benjamin Tissoires) [1740778] - [hid] Remove Waltop tablets from hid_have_special_driver (Benjamin Tissoires) [1740778] - [hid] Remove KYE tablets from hid_have_special_driver (Benjamin Tissoires) [1740778] - [hid] Remove hid-uclogic entries from hid_have_special_driver (Benjamin Tissoires) [1740778] - [hid] uclogic: Do not initialize non-USB devices (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee G5 (Benjamin Tissoires) [1740778] - [hid] uclogic: Support Gray-coded rotary encoders (Benjamin Tissoires) [1740778] - [hid] uclogic: Support faking Wacom pad device ID (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for XP-Pen Deco 01 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for XP-Pen Star G640 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for XP-Pen Star G540 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee EX07S frame controls (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee M540 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee 2150 (Benjamin Tissoires) [1740778] - [hid] uclogic: Support v2 protocol (Benjamin Tissoires) [1740778] - [hid] uclogic: Support fragmented high-res reports (Benjamin Tissoires) [1740778] - [hid] uclogic: Support in-range reporting emulation (Benjamin Tissoires) [1740778] - [hid] uclogic: Designate current protocol v1 (Benjamin Tissoires) [1740778] - [hid] uclogic: Re-initialize tablets on resume (Benjamin Tissoires) [1740778] - [hid] uclogic: Extract tablet parameter discovery into a module (Benjamin Tissoires) [1740778] - [hid] uclogic: Extract report descriptors to a module (Benjamin Tissoires) [1740778] - [hid] Clarify vendor ID reuse by Ugee tablets (Benjamin Tissoires) [1740778] - [hid] viewsonic: Support PD1011 signature pad (Benjamin Tissoires) [1740778] - [hid] kye: Add support for EasyPen M406XE (Benjamin Tissoires) [1740778] - [hid] wacom: Add support for Pro Pen slim (Benjamin Tissoires) [1740778] - [hid] roccat: Mark expected switch fall-through (Benjamin Tissoires) [1740778] - [hid] wacom: Mark expected switch fall-through (Benjamin Tissoires) [1740778] - [hid] fix Logitech WingMan Formula GP joined axes (Benjamin Tissoires) [1740778] - [hid] multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttons (Benjamin Tissoires) [1740778] - [hid] steam: fix boot loop with bluetooth firmware (Benjamin Tissoires) [1740778] - [hid] Add ASUS T100CHI keyboard dock battery quirks (Benjamin Tissoires) [1740778] - [hid] Add support for Toshiba WT10A tablet bluetooth keyboard (Benjamin Tissoires) [1740778] - [hid] wacom: Move HID fix for AES serial number into wacom_hid_usage_quirk (Benjamin Tissoires) [1740778] - [hid] elan: Make array buf static, shrinks object size (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Ignore input report if there's no data present on Elan touchpanels (Benjamin Tissoires) [1740778] - [hid] core: simplify active collection tracking (Benjamin Tissoires) [1740778] - [hid] Support for Maltron L90 keyboard media keys (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Disable runtime PM on Goodix touchpad (Benjamin Tissoires) [1740778] - [hid] sony: Fix SHANWAN PS3 GamePad rumble and led settings support (Benjamin Tissoires) [1740778] - [hid] sony: Transform one-time SHANWAN check into quirk (Benjamin Tissoires) [1740778] - [hid] core: replace the collection tree pointers with indices (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Add Odys Winbook 13 to descriptor override (Benjamin Tissoires) [1740778] - [hid] lenovo: Add checks to fix of_led_classdev_register (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: add MSI interrupt support (Benjamin Tissoires) [1740778] - [hid] debug: Change to use DEFINE_SHOW_ATTRIBUTE macro (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: fixes incorrect error handling (Benjamin Tissoires) [1740778] - [hid] logitech: Use LDJ_DEVICE macro for existing Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Enable high-resolution scrolling on Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Add function to enable HID++ 1.0 "scrolling acceleration" (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: fix typo, hiddpp to hidpp (Benjamin Tissoires) [1740778] - [hid] input: use the Resolution Multiplier for high-resolution scrolling (Benjamin Tissoires) [1740778] - [hid] core: process the Resolution Multiplier (Benjamin Tissoires) [1740778] - [hid] core: store the collections as a basic tree (Benjamin Tissoires) [1740778] - [hid] cougar: Add support for Cougar 700K Gaming Keyboard (Benjamin Tissoires) [1740778] - [hid] hidraw: enforce minors_lock locking via lockdep (Benjamin Tissoires) [1740778] - [hid] quirks: fix RetroUSB.com devices (Benjamin Tissoires) [1740778] - [kernel] hid: input: support Microsoft wireless radio control hotkey (Benjamin Tissoires) [1740778] - [kernel] hid: use macros in IS_INPUT_APPLICATION (Benjamin Tissoires) [1740778] - [hid] ite: Add USB id match for another ITE based keyboard rfkill key quirk (Benjamin Tissoires) [1740778] - [hid] revert "hid: input: Create a utility class for counting scroll events" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: Add function to enable HID++ 1.0 "scrolling acceleration"" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: Enable high-resolution scrolling on Logitech mice" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: Use LDJ_DEVICE macro for existing Logitech mice" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: fix a used uninitialized GCC warning" (Benjamin Tissoires) [1740778] - [hid] revert "hid: input: simplify/fix high-res scroll event handling" (Benjamin Tissoires) [1740778] - [hid] Add quirk for Primax PIXART OEM mice (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Disable runtime PM for LG touchscreen (Benjamin Tissoires) [1740778] - [hid] steam: remove input device when a hid client is running (Benjamin Tissoires) [1740778] - [hid] revert "hid: uhid: use strlcpy() instead of strncpy()" (Benjamin Tissoires) [1740778] - [hid] uhid: forbid UHID_CREATE under KERNEL_DS or elevated privileges (Benjamin Tissoires) [1740778] - [hid] iio/hid-sensors: Fix IIO_CHAN_INFO_RAW returning wrong values for signed numbers (Benjamin Tissoires) [1740778] - [hid] input: Ignore battery reported by Symbol DS4308 (Benjamin Tissoires) [1740778] - [hid] Add quirk for Microsoft PIXART OEM mouse (Benjamin Tissoires) [1740778] - [kernel] hid: fix up .raw_event() documentation (Benjamin Tissoires) [1740778] - [hid] i2c-hid: add Direkt-Tek DTLAPY133-1 to descriptor override (Benjamin Tissoires) [1740778] - [hid] input: simplify/fix high-res scroll event handling (Benjamin Tissoires) [1740778] - [hid] we do not randomly make new drivers 'default y' (Benjamin Tissoires) [1740778] - [hid] i2c-hid: properly terminate i2c_hid_dmi_desc_override_table[] array (Benjamin Tissoires) [1740778] - [hid] alps: allow incoming reports when only the trackstick is opened (Benjamin Tissoires) [1740778] - [hid] revert "hid: add NOGET quirk for Eaton Ellipse MAX UPS" (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Add a small delay after sleep command for Raydium touchpanel (Benjamin Tissoires) [1740778] - [hid] usbhid: Add quirk for Redragon/Dragonrise Seymur 2 (Benjamin Tissoires) [1740778] - [hid] wacom: Work around HID descriptor bug in DTK-2451 and DTH-2452 (Benjamin Tissoires) [1740778] - [hid] google: add dependency on Cros EC for Hammer (Benjamin Tissoires) [1740778] - [hid] elan: fix spelling mistake "registred" -> "registered" (Benjamin Tissoires) [1740778] - [hid] google: drop superfluous const before SIMPLE_DEV_PM_OPS() (Benjamin Tissoires) [1740778] - [hid] google: add support tablet mode switch for Whiskers (Benjamin Tissoires) [1740778] - [hid] magicmouse: add support for Apple Magic Trackpad 2 (Benjamin Tissoires) [1740778] - [hid] i2c-hid: override HID descriptors for certain devices (Benjamin Tissoires) [1740778] - [hid] hid-bigbenff: driver for BigBen Interactive PS3OFMINIPAD gamepad (Benjamin Tissoires) [1740778] - [hid] logitech: fix a used uninitialized GCC warning (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: using list_head for ipc write queue (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: use resource-managed api (Benjamin Tissoires) [1740778] - [hid] intel_ish-hid: Enhance API to get ring buffer sizes (Benjamin Tissoires) [1740778] - [hid] input: Set INPUT_PROP_-property for HID_UP_DIGITIZERS (Benjamin Tissoires) [1740778] - [hid] microsoft: the driver now neeed MEMLESS_FF infrastructure (Benjamin Tissoires) [1740778] - [hid] cougar: Stop processing vendor events on hid-core (Benjamin Tissoires) [1740778] - [hid] cougar: Make parameter 'g6_is_space' dinamically settable (Benjamin Tissoires) [1740778] - [hid] microsoft: Add rumble support for Xbox One S controller (Benjamin Tissoires) [1740778] - [hid] microsoft: Convert private data to be a proper struct (Benjamin Tissoires) [1740778] - [hid] logitech: Use LDJ_DEVICE macro for existing Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Enable high-resolution scrolling on Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Add function to enable HID++ 1.0 "scrolling acceleration" (Benjamin Tissoires) [1740778] - [hid] input: Create a utility class for counting scroll events (Benjamin Tissoires) [1740778] - [hid] multitouch: simplify the application retrieval (Benjamin Tissoires) [1740778] - [hid] input: do not append a suffix if the name already has it (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Remove RESEND_REPORT_DESCR quirk and its handling (Benjamin Tissoires) [1740778] - [hid] i2c-hid: disable runtime PM operations on hantick touchpad (Benjamin Tissoires) [1740778] - [hid] sensor-hub: Restore fixup for Lenovo ThinkPad Helix 2 sensor hub report (Benjamin Tissoires) [1740778] - [hid] core: fix NULL pointer dereference (Benjamin Tissoires) [1740778] - [hid] hid-saitek: Add device ID for RAT 7 Contagion (Benjamin Tissoires) [1740778] - [hid] core: fix memory leak on probe (Benjamin Tissoires) [1740778] - [hid] add support for Apple Magic Keyboards (Benjamin Tissoires) [1740778] - [hid] intel_ish-hid: tx_buf memory leak on probe/remove (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: Prevent loading of driver on Mehlow (Benjamin Tissoires) [1740778] - [hid] cougar: Add support for the Cougar 500k Gaming Keyboard (Benjamin Tissoires) [1740778] - [hid] cougar: make compare_device_paths reusable (Benjamin Tissoires) [1740778] - [hid] multitouch: handle palm for touchscreens (Benjamin Tissoires) [1740778] - [hid] multitouch: touchscreens also use confidence reports (Benjamin Tissoires) [1740778] - [hid] multitouch: report MT_TOOL_PALM for non-confident touches (Benjamin Tissoires) [1740778] - [hid] microsoft: support the Surface Dial (Benjamin Tissoires) [1740778] - [hid] core: do not upper bound the collection stack (Benjamin Tissoires) [1740778] - [hid] input: enable Totem on the Dell Canvas 27 (Benjamin Tissoires) [1740778] - [hid] multitouch: remove one copy of values (Benjamin Tissoires) [1740778] - [hid] multitouch: ditch mt_report_id (Benjamin Tissoires) [1740778] - [hid] multitouch: store a per application quirks value (Benjamin Tissoires) [1740778] - [hid] multitouch: Store per collection multitouch data (Benjamin Tissoires) [1740778] - [hid] multitouch: make sure the static list of class is not changed (Benjamin Tissoires) [1740778] - [hid] elan: Add support for touchpad on the Toshiba Click Mini L9W (Benjamin Tissoires) [1740778] - [hid] elan: Add USB-id for HP x2 10-n000nd touchpad (Benjamin Tissoires) [1740778] - [hid] elan: Add a flag for selecting if the touchpad has a LED (Benjamin Tissoires) [1740778] - [hid] elan: Query resolution from the touchpad (Benjamin Tissoires) [1740778] - [hid] elan: Query device max_x and max_y value from touchpad (Benjamin Tissoires) [1740778] - [hid] elan: Hardcode finger-count and usb-interface (Benjamin Tissoires) [1740778] - [hid] elan: Correctly report MT_PRESSURE instead of TOOL_WIDTH (Benjamin Tissoires) [1740778] - [hid] elan: Stop claiming we have TOUCH_MAJOR and then never reporting it (Benjamin Tissoires) [1740778] - [hid] elan: Remove unused max_area_x and max_area_y vatiables (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sc->output_report_dmabuf (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_battery_probe() (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_leds_init() (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_register_sensors() (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_register_touchpad() (Benjamin Tissoires) [1740778] - [hid] wacom: convert Wacom custom usages to standard HID usages (Benjamin Tissoires) [1740778] - [hid] wacom: Move handling of HID quirks into a dedicated function (Benjamin Tissoires) [1740778] - [hid] wacom: Replace touch_max fixup code with static touch_max definitions (Benjamin Tissoires) [1740778] - [hid] wiimote: add support for Guitar-Hero devices (Benjamin Tissoires) [1740778] - [hid] usbhid: use irqsave() in USB's complete callback (Benjamin Tissoires) [1740778] - [hid] redragon: fix num lock and caps lock LEDs (Benjamin Tissoires) [1740778] - [hid] hid-ntrig: add error handling for sysfs_create_group (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Add vddl regulator control (Benjamin Tissoires) [1740778] - [uapi] input: document meanings of KEY_SCREEN and KEY_ZOOM (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - avoid processing unknown IRQs (Benjamin Tissoires) [1740778] - [input] revert "input: elantech - enable SMBus on new (2018+) systems" (Benjamin Tissoires) [1740778] - [input] elantech - annotate fall-through case in elantech_use_host_notify() (Benjamin Tissoires) [1740778] - [samples] treewide: Add SPDX license identifier - Makefile/Kconfig (Benjamin Tissoires) [1740778] - [kernel] input: elan_i2c - remove Lenovo Legion Y7000 PnpID (Benjamin Tissoires) [1740778] - [input] synaptics - enable RMI mode for HP Spectre X360 (Benjamin Tissoires) [1740778] - [input] elantech - enable SMBus on new (2018+) systems (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 (Benjamin Tissoires) [1740778] - [input] hyperv-keyboard: Use in-place iterator API in the channel callback (Benjamin Tissoires) [1740778] - [input] usbtouchscreen - initialize PM mutex before using it (Benjamin Tissoires) [1740778] - [input] alps - fix a mismatch between a condition check and its comment (Benjamin Tissoires) [1740778] - [input] psmouse - fix build error of multiple definition (Benjamin Tissoires) [1740778] - [input] alps - don't handle ALPS cs19 trackpoint-only device (Benjamin Tissoires) [1740778] - [input] hyperv-keyboard - remove dependencies on PAGE_SIZE for ring buffer (Benjamin Tissoires) [1740778] - [input] synaptics - fix misuse of strlcpy (Benjamin Tissoires) [1740778] - [input] synaptics - whitelist Lenovo T580 SMBus intertouch (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBUS on T480 thinkpad trackpad (Benjamin Tissoires) [1740778] - [input] joydev - extend absolute mouse detection (Benjamin Tissoires) [1740778] - [kernel] input: elan_i2c - export the device id whitelist (Benjamin Tissoires) [1740778] - [kernel] pm: suspend: Rename pm_suspend_via_s2idle() (Benjamin Tissoires) [1740778] - [kernel] pm: sleep: Add kerneldoc comments to some functions (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBus on ThinkPad E480 and E580 (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - remove set but not used variable 'sensor_flags' (Benjamin Tissoires) [1740778] - [input] uinput - add compat ioctl number translation for UI_*_FF_UPLOAD (Benjamin Tissoires) [1740778] - [input] libps2 - mark expected switch fall-through (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - write config register values to the right offset (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - fix enum_fmt (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - fill initial format (Benjamin Tissoires) [1740778] - [uapi] input: add KEY_KBD_LAYOUT_NEXT (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - fix possible double free (Benjamin Tissoires) [1740778] - [input] hyperv-keyboard - add module description (Benjamin Tissoires) [1740778] - [input] i8042 - signal wakeup from atkbd/psmouse (Benjamin Tissoires) [1740778] - [input] evdev - use struct_size() in kzalloc() and vzalloc() (Benjamin Tissoires) [1740778] - [input] elan_i2c - add hardware ID for multiple Lenovo laptops (Benjamin Tissoires) [1740778] - [input] wacom_serial4 - add support for Wacom ArtPad II tablet (Benjamin Tissoires) [1740778] - [input] elan_i2c - add id for touchpad found in Lenovo s21e-20 (Benjamin Tissoires) [1740778] - [input] i8042 - rework DT node name comparisons (Benjamin Tissoires) [1740778] - [input] synaptics_i2c - remove redundant spinlock (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for touchpad in Lenovo V330-15ISK (Benjamin Tissoires) [1740778] - [input] revert "input: elan_i2c - add ACPI ID for touchpad in ASUS Aspire F5-573G" (Benjamin Tissoires) [1740778] - [input] elantech - enable 3rd button support on Fujitsu CELSIUS H780 (Benjamin Tissoires) [1740778] - [uapi] input: input_event - fix the CONFIG_SPARC64 mixup (Benjamin Tissoires) [1740778] - [input] uinput - fix undefined behavior in uinput_validate_absinfo() (Benjamin Tissoires) [1740778] - [uapi] input: input_event - provide override for sparc64 (Benjamin Tissoires) [1740778] - [input] soc_button_array - fix mapping of the 5th GPIO in a PNP0C40 device (Benjamin Tissoires) [1740778] - [input] soc_button_array - add usage-page 0x01 usage-id 0xca mapping (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for touchpad in ASUS Aspire F5-573G (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBus for HP EliteBook 840 G4 (Benjamin Tissoires) [1740778] - [input] synaptics - enable RMI on ThinkPad T560 (Benjamin Tissoires) [1740778] - [documentation] input: add `REL_WHEEL_HI_RES` and `REL_HWHEEL_HI_RES` (Benjamin Tissoires) [1740778] - [uapi] input: restore EV_ABS ABS_RESERVED (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBus for HP 15-ay000 (Benjamin Tissoires) [1740778] - [input] synaptics - add PNP ID for ThinkPad P50 to SMBus (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for Lenovo IdeaPad 330-15ARR (Benjamin Tissoires) [1740778] - [input] elan_i2c - add support for ELAN0621 touchpad (Benjamin Tissoires) [1740778] - [documentation] revert "input: Add the `REL_WHEEL_HI_RES` event code" (Benjamin Tissoires) [1740778] - [input] atkbd - clean up indentation issue (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ELAN0620 to the ACPI table (Benjamin Tissoires) [1740778] - [input] synaptics - avoid using uninitialized variable when probing (Benjamin Tissoires) [1740778] - [input] xen-kbdfront - mark expected switch fall-through (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for Lenovo IdeaPad 330-15IGM (Benjamin Tissoires) [1740778] - [input] of_touchscreen - add support for touchscreen-min-x|y (Benjamin Tissoires) [1740778] - [input] elants_i2c - use DMA safe i2c when possible (Benjamin Tissoires) [1740778] - [input] uinput - add a schedule point in uinput_inject_events() (Benjamin Tissoires) [1740778] - [input] evdev - add a schedule point in evdev_write() (Benjamin Tissoires) [1740778] - [input] mousedev - add a schedule point in mousedev_write() (Benjamin Tissoires) [1740778] - [uapi] input: reserve 2 events code because of HID (Benjamin Tissoires) [1740778] - [input] i8042 - enable keyboard wakeups by default when s2idle is used (Benjamin Tissoires) [1740778] - [input] uinput - allow for max == min during input_absinfo validation (Benjamin Tissoires) [1740778] - [input] atakbd - fix Atari CapsLock behaviour (Benjamin Tissoires) [1740778] - [input] atakbd - fix Atari keymap (Benjamin Tissoires) [1740778] - [documentation] input: Add the `REL_WHEEL_HI_RES` event code (Benjamin Tissoires) [1740778] - [input] mark expected switch fall-throughs (Benjamin Tissoires) [1740778] - [input] evdev - switch to bitmap API (Benjamin Tissoires) [1740778] - [input] elan_i2c_smbus - cast sizeof to int for comparison (Benjamin Tissoires) [1740778] - [uapi] input: stop telling users to snail-mail Vojtech (Benjamin Tissoires) [1740778] - [documentation] input: add MT_TOOL_DIAL (Benjamin Tissoires) [1740778] - [input] i8042 - increment wakeup_count for the respective port (Benjamin Tissoires) [1740778] - [input] xen-kbdfront - allow better run-time configuration (Benjamin Tissoires) [1740778] - [xen] Sync up with the canonical protocol definitions in Xen (Benjamin Tissoires) [1740778] - [cpufreq] dev_pm_qos_update_request() can return 1 on success (Al Stone) [1739729 1725581] - [cpufreq] Make cpufreq_generic_init() return void (Al Stone) [1739729 1725581] - [cpufreq] Add QoS requests for userspace constraints (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Reuse refresh_frequency_limits() (Al Stone) [1739729 1725581] - [cpufreq] Register notifiers with the PM QoS framework (Al Stone) [1739729 1725581] - [base] pm / qos: Add support for MIN/MAX frequency constraints (Al Stone) [1739729 1725581] - [base] pm / qos: Pass request type to dev_pm_qos_read_value() (Al Stone) [1739729 1725581] - [base] pm / qos: Rename __dev_pm_qos_read_value() and dev_pm_qos_raw_read_value() (Al Stone) [1739729 1725581] - [base] pm / qos: Pass request type to dev_pm_qos_{add|remove}_notifier() (Al Stone) [1739729 1725581] - [cpufreq] Avoid calling cpufreq_verify_current_freq() from handle_update() (Al Stone) [1739729 1725581] - [cpufreq] Consolidate cpufreq_update_current_freq() and __cpufreq_get() (Al Stone) [1739729 1725581] - [cpufreq] Don't skip frequency validation for has_target() drivers (Al Stone) [1739729 1725581] - [cpufreq] Use has_target() instead of !setpolicy (Al Stone) [1739729 1725581] - [cpufreq] Remove redundant !setpolicy check (Al Stone) [1739729 1725581] - [kernel] cpufreq: Move the IS_ENABLED(CPU_THERMAL) macro into a stub (Al Stone) [1739729 1725581] - [opp] Don't use IS_ERR on invalid supplies (Al Stone) [1739729 1725581] - [kernel] pm: sleep: Update struct wakeup_source documentation (Al Stone) [1739729 1725581] - [base] base: power: remove wakeup_sources_stats_dentry variable (Al Stone) [1739729 1725581] - [cpufreq] pcc-cpufreq: Fail initialization if driver cannot be registered (Al Stone) [1739729 1725581] - [opp] Make dev_pm_opp_set_rate() handle freq = 0 to drop performance votes (Al Stone) [1739729 1725581] - [opp] Don't overwrite rounded clk rate (Al Stone) [1739729 1725581] - [base] pm: sleep: Show how long dpm_suspend_start() and dpm_suspend_end() take (Al Stone) [1739729 1725581] - [base] pm / clk: Remove error message on out-of-memory condition (Al Stone) [1739729 1725581] - [base] base: power: clock_ops: Use of_clk_get_parent_count() (Al Stone) [1739729 1725581] - [opp] Allocate genpd_virt_devs from dev_pm_opp_attach_genpd() (Al Stone) [1739729 1725581] - [opp] Attach genpds to devices from within OPP core (Al Stone) [1739729 1725581] - [base] pm / domains: Add GENPD_FLAG_RPM_ALWAYS_ON flag (Al Stone) [1739729 1725581] - [cpufreq] Don't find governor for setpolicy drivers in cpufreq_init_policy() (Al Stone) [1739729 1725581] - [cpufreq] Explain the kobject_put() in cpufreq_policy_alloc() (Al Stone) [1739729 1725581] - [x86] cpufreq: Call transition notifier only once for each policy (Al Stone) [1739729 1725581] - [cpufreq] Fix kobject memleak (Al Stone) [1739729 1725581] - [cpufreq] centrino: Fix centrino_setpolicy() kerneldoc comment (Al Stone) [1739729 1725581] - [base] pm / domains: Allow to attach a CPU via genpd_dev_pm_attach_by_id|name() (Al Stone) [1739729 1725581] - [base] pm / domains: Search for the CPU device outside the genpd lock (Al Stone) [1739729 1725581] - [base] pm / domains: Drop unused in-parameter to some genpd functions (Al Stone) [1739729 1725581] - [base] pm / domains: Use the base device for driver_deferred_probe_check_state() (Al Stone) [1739729 1725581] - [base] pm / domains: Enable genpd_dev_pm_attach_by_id|name() for single PM domain (Al Stone) [1739729 1725581] - [base] pm / domains: Allow OF lookup for multi PM domain case from ->attach_dev() (Al Stone) [1739729 1725581] - [base] pm / domains: Don't kfree() the virtual device in the error path (Al Stone) [1739729 1725581] - [cpufreq] Move ->get callback check outside of __cpufreq_get() (Al Stone) [1739729 1725581] - [x86] tsc: Rework time_cpufreq_notifier() (Al Stone) [1739729 1725581] - [x86] tsc: Fix UV TSC initialization (Al Stone) [1739729 1725581] - [x86] tsc: Prevent result truncation on 32bit (Al Stone) [1739729 1725581] - [x86] tsc: Consolidate init code (Al Stone) [1739729 1725581] - [x86] tsc: Make use of tsc_calibrate_cpu_early() (Al Stone) [1739729 1725581] - [x86] tsc: Split native_calibrate_cpu() into early and late parts (Al Stone) [1739729 1725581] - [x86] tsc: Use TSC as sched clock early (Al Stone) [1739729 1725581] - [x86] tsc: Initialize cyc2ns when tsc frequency is determined (Al Stone) [1739729 1725581] - [x86] tsc: Calibrate tsc only once (Al Stone) [1739729 1725581] - [x86] tsc: Redefine notsc to behave as tsc=unstable (Al Stone) [1739729 1725581] - [x86] platform/uv: Provide is_early_uv_system() (Al Stone) [1739729 1725581] - [base] pm / domains: remove unnecessary unlikely() (Al Stone) [1739729 1725581] - [cpufreq] Remove needless bios_limit check in show_bios_limit() (Al Stone) [1739729 1725581] - [cpufreq] cpufreq/acpi-cpufreq.c: This fixes the following checkpatch warning (Al Stone) [1739729 1725581] - [base] pm / core: Propagate dev->power.wakeup_path when no callbacks (Al Stone) [1739729 1725581] - [base] pm / domains: Add genpd governor for CPUs (Al Stone) [1739729 1725581] - [cpuidle] Export the next timer expiration for CPUs (Al Stone) [1739729 1725581] - [base] pm / core: Introduce dpm_async_fn() helper (Al Stone) [1739729 1725581] - [cpufreq] boost: Remove CONFIG_CPU_FREQ_BOOST_SW Kconfig option (Al Stone) [1739729 1725581] - [opp] Introduce dev_pm_opp_find_freq_ceil_by_volt() (Al Stone) [1739729 1725581] - [base] pm / domains: Add support for CPU devices to genpd (Al Stone) [1739729 1725581] - [base] pm / domains: Add generic data pointer to struct genpd_power_state (Al Stone) [1739729 1725581] - [cpufreq] rhel: cpufreq: switch printk users from pf and pF to ps and pS, respectively (Al Stone) [1739729 1725581] - [base] pm / core: fix kerneldoc comment for device_pm_wait_for_dev() (Al Stone) [1739729 1725581] - [base] pm / core: fix kerneldoc comment for dpm_watchdog_handler() (Al Stone) [1739729 1725581] - [cpufreq] stats: Use lock by stat to replace global spin lock (Al Stone) [1739729 1725581] - [cpufreq] Remove cpufreq_driver check in cpufreq_boost_supported() (Al Stone) [1739729 1725581] - [cpufreq] ppc_cbe: fix possible object reference leak (Al Stone) [1739729 1725581] - [cpufreq] cpufreq: Convert some slow-path static_cpu_has() callers to boot_cpu_has() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Update max frequency on global turbo changes (Al Stone) [1739729 1725581] - [base] pm / wakeup: Use pm_pr_dbg() instead of pr_debug() (Al Stone) [1739729 1725581] - [cpufreq] Add cpufreq_cpu_acquire() and cpufreq_cpu_release() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Driver-specific handling of _PPC updates (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Load only on Intel hardware (Al Stone) [1739729 1725581] - [cpufreq] scpi: Fix use after free (Al Stone) [1739729 1725581] - [base] pm / domains: Avoid a potential deadlock (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Fix up iowait_boost computation (Al Stone) [1739729 1725581] - [opp] pm / opp: Update performance state when freq == old_freq (Al Stone) [1739729 1725581] - [base] pm / wakeup: Drop wakeup_source_drop() (Al Stone) [1739729 1725581] - [base] pm / wakeup: Rework wakeup source timer cancellation (Al Stone) [1739729 1725581] - [base] pm / domains: Remove one unnecessary blank line (Al Stone) [1739729 1725581] - [base] pm / domains: Return early for all errors in _genpd_power_off() (Al Stone) [1739729 1725581] - [base] pm / domains: Improve warn for multiple states but no governor (Al Stone) [1739729 1725581] - [opp] Fix handling of multiple power domains (Al Stone) [1739729 1725581] - [base] pm / qos: Fix typo in file description (Al Stone) [1739729 1725581] - [base] pm-runtime: Call pm_runtime_active|suspended_time() from sysfs (Al Stone) [1739729 1725581] - [base] pm-runtime: Consolidate code to get active/suspended time (Al Stone) [1739729 1725581] - [base] pm: Add and use pr_fmt() (Al Stone) [1739729 1725581] - [cpufreq] Improve kerneldoc comments for cpufreq_cpu_get/put() (Al Stone) [1739729 1725581] - [cpufreq] acpi-cpufreq: Report if CPU doesn't support boost technologies (Al Stone) [1739729 1725581] - [base] driver core: Fix PM-runtime for links added during consumer probe (Al Stone) [1739729 1725581] - [cpufreq] Pass updated policy to driver ->setpolicy() callback (Al Stone) [1739729 1725581] - [cpufreq] Fix two debug messages in cpufreq_set_policy() (Al Stone) [1739729 1725581] - [cpufreq] Reorder and simplify cpufreq_update_policy() (Al Stone) [1739729 1725581] - [cpufreq] Add kerneldoc comments for two core functions (Al Stone) [1739729 1725581] - [cpufreq] scmi: Fix use-after-free in scmi_cpufreq_exit() (Al Stone) [1739729 1725581] - [kernel] pm / core: Add support to skip power management in device/driver model (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Rework iowait boosting to be less aggressive (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Eliminate intel_pstate_get_base_pstate() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Avoid redundant initialization of local vars (Al Stone) [1739729 1725581] - [cpufreq] cpufreq / cppc: Work around for Hisilicon CPPC cpufreq (Al Stone) [1739729 1725581] - [cpufreq] speedstep: convert BUG() to BUG_ON() (Al Stone) [1739729 1725581] - [cpufreq] powernv: fix missing check of return value in init_powernv_pstates() (Al Stone) [1739729 1725581] - [cpufreq] pcc-cpufreq: remove unneeded semicolon (Al Stone) [1739729 1725581] - [kernel] pm / domains: Mark "name" const in dev_pm_domain_attach_by_name() (Al Stone) [1739729 1725581] - [kernel] pm / domains: Mark "name" const in genpd_dev_pm_attach_by_name() (Al Stone) [1739729 1725581] - [cpufreq] Replace double NOT (!!) with single NOT (!) (Al Stone) [1739729 1725581] - [base] pm / suspend: Print debug messages for device using direct-complete (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Add reasons for failure and debug messages (Al Stone) [1739729 1725581] - [base] driver core: Fix possible supplier PM-usage counter imbalance (Al Stone) [1739729 1725581] - [base] pm-runtime: Fix __pm_runtime_set_status() race with runtime resume (Al Stone) [1739729 1725581] - [cpufreq] dt: Implement online/offline() callbacks (Al Stone) [1739729 1725581] - [cpufreq] Allow light-weight tear down and bring up of CPUs (Al Stone) [1739729 1725581] - [base] pm-runtime: Take suppliers into account in __pm_runtime_set_status() (Al Stone) [1739729 1725581] - [opp] no need to check return value of debugfs_create functions (Al Stone) [1739729 1725581] - [cpufreq] scmi: Register an Energy Model (Al Stone) [1739729 1725581] - [opp] pm / opp: Introduce a power estimation helper (Al Stone) [1739729 1725581] - [opp] pm / opp: Remove unused parameter of _generic_set_opp_clk_only() (Al Stone) [1739729 1725581] - [cpufreq] scpi: Register an Energy Model (Al Stone) [1739729 1725581] - [cpufreq] dt: Register an Energy Model (Al Stone) [1739729 1725581] - [cpufreq] stats: Fix concurrency issues while resetting stats (Al Stone) [1739729 1725581] - [cpufreq] stats: Declare freq-attr right after their callbacks (Al Stone) [1739729 1725581] - [base] driver core: Do not call rpm_put_suppliers() in pm_runtime_drop_link() (Al Stone) [1739729 1725581] - [base] driver core: Fix handling of runtime PM flags in device_link_add() (Al Stone) [1739729 1725581] - [base] driver core: Do not resume suppliers under device_links_write_lock() (Al Stone) [1739729 1725581] - [base] driver core: Avoid careless re-use of existing device links (Al Stone) [1739729 1725581] - [base] driver core: Fix DL_FLAG_AUTOREMOVE_SUPPLIER device link flag handling (Al Stone) [1739729 1725581] - [base] driver core: Add flag to autoremove device link on supplier unbind (Al Stone) [1739729 1725581] - [base] driver core: Rename flag AUTOREMOVE to AUTOREMOVE_CONSUMER (Al Stone) [1739729 1725581] - [base] pm-runtime: update accounting_timestamp on enable (Al Stone) [1739729 1725581] - [cpufreq] scpi: Use auto-registration of thermal cooling device (Al Stone) [1739729 1725581] - [cpufreq] scmi: Use auto-registration of thermal cooling device (Al Stone) [1739729 1725581] - [cpufreq] cpufreq-dt: Use auto-registration of thermal cooling device (Al Stone) [1739729 1725581] - [cpufreq] Auto-register the driver as a thermal cooling device if asked (Al Stone) [1739729 1725581] - [cpufreq] thermal: cpu_cooling: Require thermal core to be compiled in (Al Stone) [1739729 1725581] - [cpufreq] Use struct kobj_attribute instead of struct global_attr (Al Stone) [1739729 1725581] - [base] pm / wakeup: fix kerneldoc comment for pm_wakeup_dev_event() (Al Stone) [1739729 1725581] - [base] pm: domains: no need to check return value of debugfs_create functions (Al Stone) [1739729 1725581] - [opp] Add support for parsing the 'opp-level' property (Al Stone) [1739729 1725581] - [kernel] cpufreq: Replace open-coded << with BIT() (Al Stone) [1739729 1725581] - [base] pm: clock_ops: fix missing clk_prepare() return value check (Al Stone) [1739729 1725581] - [cpufreq] e_powersaver: Use struct_size() in kzalloc() (Al Stone) [1739729 1725581] - [cpufreq] Don't update new_policy on failures (Al Stone) [1739729 1725581] - [cpufreq] scmi: Fix frequency invariance in slow path (Al Stone) [1739729 1725581] - [cpufreq] check if policy is inactive early in __cpufreq_get() (Al Stone) [1739729 1725581] - [opp] cpufreq: scpi/scmi: Fix freeing of dynamic OPPs (Al Stone) [1739729 1725581] - [base] pm: sleep: call devfreq suspend/resume (Al Stone) [1739729 1725581] - [devfreq] pm / devfreq: add devfreq_suspend/resume() functions (Al Stone) [1739729 1725581] - [base] pm / domains: remove define_genpd_open_function() and define_genpd_debugfs_fops() (Al Stone) [1739729 1725581] - [base] pm / domains: Propagate performance state updates (Al Stone) [1739729 1725581] - [base] pm / domains: Factorize dev_pm_genpd_set_performance_state() (Al Stone) [1739729 1725581] - [base] pm / domains: Save OPP table pointer in genpd (Al Stone) [1739729 1725581] - [opp] Don't return 0 on error from of_get_required_opp_performance_state() (Al Stone) [1739729 1725581] - [opp] Add dev_pm_opp_xlate_performance_state() helper (Al Stone) [1739729 1725581] - [opp] Improve _find_table_of_opp_np() (Al Stone) [1739729 1725581] - [base] pm / domains: Make genpd performance states orthogonal to the idlestates (Al Stone) [1739729 1725581] - [opp] Fix missing debugfs supply directory for OPPs (Al Stone) [1739729 1725581] - [opp] Use opp_table->regulators to verify no regulator case (Al Stone) [1739729 1725581] - [base] pm: Switch to use ptR (Al Stone) [1739729 1725581] - [cpufreq] powernv: add of_node_put() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Force HWP min perf before offline (Al Stone) [1739729 1725581] - [cpufreq] cpufreq: change CONFIG_6xx to CONFIG_PPC_BOOK3S_32 (Al Stone) [1739729 1725581] - [opp] Fix parsing of multiple phandles in "operating-points-v2" property (Al Stone) [1739729 1725581] - [opp] Remove of_dev_pm_opp_find_required_opp() (Al Stone) [1739729 1725581] - [base] opp: Rename and relocate of_genpd_opp_to_performance_state() (Al Stone) [1739729 1725581] - [opp] Configure all required OPPs (Al Stone) [1739729 1725581] - [opp] Add dev_pm_opp_{set|put}_genpd_virt_dev() helper (Al Stone) [1739729 1725581] - [base] pm / domains: Add genpd_opp_to_performance_state() (Al Stone) [1739729 1725581] - [opp] Populate OPPs from "required-opps" property (Al Stone) [1739729 1725581] - [opp] Populate required opp tables from "required-opps" property (Al Stone) [1739729 1725581] - [opp] Separate out custom OPP handler specific code (Al Stone) [1739729 1725581] - [opp] Identify and mark genpd OPP tables (Al Stone) [1739729 1725581] - [base] pm / domains: Rename genpd virtual devices as virt_dev (Al Stone) [1739729 1725581] - [cpufreq] remove unused arm_big_little_dt driver (Al Stone) [1739729 1725581] - [cpufreq] drop ARM_BIG_LITTLE_CPUFREQ support for ARM64 (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Fix compilation for !CONFIG_ACPI (Al Stone) [1739729 1725581] - [base] pm / domains: Deal with multiple states but no governor in genpd (Al Stone) [1739729 1725581] - [base] pm / domains: Don't treat zero found compatible idle states as an error (Al Stone) [1739729 1725581] - [cpufreq] conservative: Take limits changes into account properly (Al Stone) [1739729 1725581] - [opp] pm / opp: _of_add_opp_table_v2(): increment count only if OPP is added (Al Stone) [1739729 1725581] - [cpufreq] dt: Try freeing static OPPs only if we have added them (Al Stone) [1739729 1725581] - [opp] Return error on error from dev_pm_opp_get_opp_count() (Al Stone) [1739729 1725581] - [opp] Improve error handling in dev_pm_opp_of_cpumask_add_table() (Al Stone) [1739729 1725581] - [cpufreq] cpufreq / cppc: Mark acpi_ids as used (Al Stone) [1739729 1725581] - [opp] Pass OPP table to _of_add_opp_table_v{1|2}() (Al Stone) [1739729 1725581] - [opp] Prevent creating multiple OPP tables for devices sharing OPP nodes (Al Stone) [1739729 1725581] - [opp] Use a single mechanism to free the OPP table (Al Stone) [1739729 1725581] - [opp] Don't remove dynamic OPPs from _dev_pm_opp_remove_table() (Al Stone) [1739729 1725581] - [opp] Create separate kref for static OPPs list (Al Stone) [1739729 1725581] - [opp] Don't take OPP table's kref for static OPPs (Al Stone) [1739729 1725581] - [opp] Parse OPP table's DT properties from _of_init_opp_table() (Al Stone) [1739729 1725581] - [opp] Pass index to _of_init_opp_table() (Al Stone) [1739729 1725581] - [opp] Protect dev_list with opp_table lock (Al Stone) [1739729 1725581] - [opp] Don't try to remove all OPP tables on failure (Al Stone) [1739729 1725581] - [opp] Free OPP table properly on performance state irregularities (Al Stone) [1739729 1725581] - [cpufreq] Convert to using pOFn instead of device_node.name (Al Stone) [1739729 1725581] - [cpufreq] remove unnecessary unlikely() (Al Stone) [1739729 1725581] - [base] pm / clk: signedness bug in of_pm_clk_add_clks() (Al Stone) [1739729 1725581] - [trace] cpufreq: trace frequency limits change (Al Stone) [1739729 1725581] - [cpufreq] pcc-cpufreq: Disable dynamic scaling on many-CPU systems (Al Stone) [1739729 1725581] - [base] pm / domains: Stop deferring probe at the end of initcall (Al Stone) [1739729 1725581] - [base] driver: core: Allow subsystems to continue deferring probe (Al Stone) [1739729 1725581] - [base] driver core: allow stopping deferred probe after init (Al Stone) [1739729 1725581] - [base] driver core: add a debugfs entry to show deferred devices (Al Stone) [1739729 1725581] - [base] pm / domains: Introduce dev_pm_domain_attach_by_name() (Al Stone) [1739729 1725581] - [base] pm / domains: Introduce option to attach a device by name to genpd (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: use match_string() helper (Al Stone) [1739729 1725581] - [fs] ceph: use ceph_evict_inode to cleanup inode's resource (Jeff Layton) [1767959] - [fs] ceph: return -EINVAL if given fsc mount option on kernel w/o support (Jeff Layton) [1767959] - [fs] ceph: don't try to handle hashed dentries in non-O_CREAT atomic_open (Jeff Layton) [1767959] - [fs] ceph: add missing check in d_revalidate snapdir handling (Jeff Layton) [1767959] - [fs] ceph: fix RCU case handling in ceph_d_revalidate() (Jeff Layton) [1767959] - [fs] ceph: fix use-after-free in __ceph_remove_cap() (Jeff Layton) [1767959] - [block] rbd: cancel lock_dwork if the wait is interrupted (Jeff Layton) [1767959] - [fs] ceph: just skip unrecognized info in ceph_reply_info_extra (Jeff Layton) [1767959] - [fs] ceph: call ceph_mdsc_destroy from destroy_fs_client (Jeff Layton) [1767959] - [net] libceph: use ceph_kvmalloc() for osdmap arrays (Jeff Layton) [1767959] - [net] libceph: avoid a __vmalloc() deadlock in ceph_kvmalloc() (Jeff Layton) [1767959] - [fs] ceph: include ceph_debug.h in cache.c (Jeff Layton) [1767959] - [fs] ceph: move static keyword to the front of declarations (Jeff Layton) [1767959] - [block] rbd: pull rbd_img_request_create() dout out into the callers (Jeff Layton) [1767959] - [fs] ceph: reconnect connection if session hang in opening state (Jeff Layton) [1767959] - [net] libceph: drop unused con parameter of calc_target() (Jeff Layton) [1767959] - [fs] ceph: use release_pages() directly (Jeff Layton) [1767959] - [block] rbd: fix response length parameter for encoded strings (Jeff Layton) [1767959] - [fs] ceph: allow arbitrary security.* xattrs (Jeff Layton) [1767959] - [fs] ceph: only set CEPH_I_SEC_INITED if we got a MAC label (Jeff Layton) [1767959] - [fs] ceph: turn ceph_security_invalidate_secctx into static inline (Jeff Layton) [1767959] - [fs] ceph: add buffered/direct exclusionary locking for reads and writes (Jeff Layton) [1767959] - [net] libceph: handle OSD op ceph_pagelist_append() errors (Jeff Layton) [1767959] - [fs] ceph: don't return a value from void function (Jeff Layton) [1767959] - [fs] ceph: don't freeze during write page faults (Jeff Layton) [1767959] - [fs] ceph: update the mtime when truncating up (Jeff Layton) [1767959] - [fs] ceph: fix indentation in __get_snap_name() (Jeff Layton) [1767959] - [fs] ceph: remove incorrect comment above __send_cap (Jeff Layton) [1767959] - [fs] ceph: remove CEPH_I_NOFLUSH (Jeff Layton) [1767959] - [fs] ceph: remove unneeded test in try_flush_caps (Jeff Layton) [1767959] - [fs] ceph: have __mark_caps_flushing return flush_tid (Jeff Layton) [1767959] - [fs] ceph: fix comments over ceph_add_cap (Jeff Layton) [1767959] - [fs] ceph: eliminate session->s_trim_caps (Jeff Layton) [1767959] - [fs] ceph: fetch cap_gen under spinlock in ceph_add_cap (Jeff Layton) [1767959] - [fs] ceph: remove ceph_get_cap_mds and __ceph_get_cap_mds (Jeff Layton) [1767959] - [fs] ceph: don't SetPageError on writepage errors (Jeff Layton) [1767959] - [fs] ceph: auto reconnect after blacklisted (Jeff Layton) [1767959] - [fs] ceph: invalidate all write mode filp after reconnect (Jeff Layton) [1767959] - [fs] ceph: return -EIO if read/write against filp that lost file locks (Jeff Layton) [1767959] - [fs] ceph: add helper function that forcibly reconnects to ceph cluster (Jeff Layton) [1767959] - [fs] ceph: pass filp to ceph_get_caps() (Jeff Layton) [1767959] - [fs] ceph: track and report error of async metadata operation (Jeff Layton) [1767959] - [fs] ceph: allow closing session in restarting/reconnect state (Jeff Layton) [1767959] - [net] libceph: add function that clears osd client's abort_err (Jeff Layton) [1767959] - [net] libceph: add function that reset client's entity addr (Jeff Layton) [1767959] - [fs] ceph: don't list vxattrs in listxattr() (Jeff Layton) [1767959] - [fs] ceph: fix directories inode i_blkbits initialization (Jeff Layton) [1767959] - [block] rbd: restore zeroing past the overlap when reading from parent (Jeff Layton) [1767959] - [net] libceph: don't call crypto_free_sync_skcipher() on a NULL tfm (Jeff Layton) [1767959] - [net] libceph: fix PG split vs OSD (re)connect race (Jeff Layton) [1767959] - [fs] ceph: don't try fill file_lock on unsuccessful GETFILELOCK reply (Jeff Layton) [1767959] - [fs] ceph: clear page dirty before invalidate page (Jeff Layton) [1767959] - [fs] ceph: fix buffer free while holding i_ceph_lock in fill_inode() (Jeff Layton) [1767959] - [fs] ceph: fix buffer free while holding i_ceph_lock in __ceph_build_xattrs_blob() (Jeff Layton) [1767959] - [fs] ceph: fix buffer free while holding i_ceph_lock in __ceph_setxattr() (Jeff Layton) [1767959] - [kernel] libceph: allow ceph_buffer_put() to receive a NULL ceph_buffer (Jeff Layton) [1767959] - [fs] ceph: fix end offset in truncate_inode_pages_range call (Jeff Layton) [1767959] - [fs] ceph: initialize superblock s_time_gran to 1 (Jeff Layton) [1767959] - [block] rbd: setallochint only if object doesn't exist (Jeff Layton) [1767959] - [block] rbd: support for object-map and fast-diff (Jeff Layton) [1767959] - [block] rbd: call rbd_dev_mapping_set() from rbd_dev_image_probe() (Jeff Layton) [1767959] - [net] libceph: export osd_req_op_data() macro (Jeff Layton) [1767959] - [net] libceph: change ceph_osdc_call() to take page vector for response (Jeff Layton) [1767959] - [kernel] libceph: bump CEPH_MSG_MAX_DATA_LEN (again) (Jeff Layton) [1767959] - [block] rbd: new exclusive lock wait/wake code (Jeff Layton) [1767959] - [block] rbd: quiescing lock should wait for image requests (Jeff Layton) [1767959] - [block] rbd: lock should be quiesced on reacquire (Jeff Layton) [1767959] - [block] rbd: introduce copyup state machine (Jeff Layton) [1767959] - [block] rbd: rename rbd_obj_setup_*() to rbd_obj_init_*() (Jeff Layton) [1767959] - [block] rbd: move OSD request allocation into object request state machines (Jeff Layton) [1767959] - [block] rbd: factor out __rbd_osd_setup_discard_ops() (Jeff Layton) [1767959] - [block] rbd: factor out rbd_osd_setup_copyup() (Jeff Layton) [1767959] - [block] rbd: introduce obj_req->osd_reqs list (Jeff Layton) [1767959] - [fs] libceph: rename r_unsafe_item to r_private_item (Jeff Layton) [1767959] - [block] rbd: introduce image request state machine (Jeff Layton) [1767959] - [block] rbd: move OSD request submission into object request state machines (Jeff Layton) [1767959] - [block] rbd: get rid of RBD_OBJ_WRITE_{FLAT, GUARD} (Jeff Layton) [1767959] - [block] rbd: replace obj_req->tried_parent with obj_req->read_state (Jeff Layton) [1767959] - [block] rbd: get rid of obj_req->xferred, obj_req->result and img_req->xferred (Jeff Layton) [1767959] - [fs] ceph: don't NULL terminate virtual xattrs (Jeff Layton) [1767959] - [fs] ceph: return -ERANGE if virtual xattr value didn't fit in buffer (Jeff Layton) [1767959] - [fs] ceph: make getxattr_cb return ssize_t (Jeff Layton) [1767959] - [fs] ceph: more precise CEPH_CLIENT_CAPS_PENDING_CAPSNAP (Jeff Layton) [1767959] - [fs] ceph: kick flushing and flush snaps before sending normal cap message (Jeff Layton) [1767959] - [fs] ceph: clear CEPH_I_KICK_FLUSH flag inside __kick_flushing_caps() (Jeff Layton) [1767959] - [fs] ceph: increment change_attribute on local changes (Jeff Layton) [1767959] - [fs] ceph: handle change_attr in cap messages (Jeff Layton) [1767959] - [fs] ceph: add change_attr field to ceph_inode_info (Jeff Layton) [1767959] - [kernel] iversion: add a routine to update a raw value with a larger one (Jeff Layton) [1767959] - [fs] ceph: allow querying of STATX_BTIME in ceph_getattr (Jeff Layton) [1767959] - [kernel] libceph: turn on CEPH_FEATURE_MSG_ADDR2 (Jeff Layton) [1767959] - [fs] ceph: handle btime in cap messages (Jeff Layton) [1767959] - [fs] ceph: add btime field to ceph_inode_info (Jeff Layton) [1767959] - [net] libceph: rename ceph_encode_addr to ceph_encode_banner_addr (Jeff Layton) [1767959] - [net] libceph: use TYPE_LEGACY for entity addrs instead of TYPE_NONE (Jeff Layton) [1767959] - [net] ceph: fix decode_locker to use ceph_decode_entity_addr (Jeff Layton) [1767959] - [fs] ceph: have MDS map decoding use entity_addr_t decoder (Jeff Layton) [1767959] - [net] libceph: correctly decode ADDR2 addresses in incremental OSD maps (Jeff Layton) [1767959] - [net] libceph: fix watch_item_t decoding to use ceph_decode_entity_addr (Jeff Layton) [1767959] - [net] libceph: switch osdmap decoding to use ceph_decode_entity_addr (Jeff Layton) [1767959] - [net] libceph: ADDR2 support for monmap (Jeff Layton) [1767959] - [net] libceph: add ceph_decode_entity_addr (Jeff Layton) [1767959] - [net] libceph: fix sa_family just after reading address (Jeff Layton) [1767959] - [fs] ceph: remove request from waiting list before unregister (Jeff Layton) [1767959] - [fs] ceph: don't blindly unregister session that is in opening state (Jeff Layton) [1767959] - [fs] ceph: fix infinite loop in get_quota_realm() (Jeff Layton) [1767959] - [fs] ceph: add selinux support (Jeff Layton) [1767959] - [fs] ceph: rename struct ceph_acls_info to ceph_acl_sec_ctx (Jeff Layton) [1767959] - [fs] ceph: fix debug print format in __set_xattr() (Jeff Layton) [1767959] - [fs] ceph: fix warning PTR_ERR_OR_ZERO can be used (Jeff Layton) [1767959] - [fs] ceph: hold i_ceph_lock when removing caps for freeing inode (Jeff Layton) [1767959] - [fs] ceph: ensure d_name/d_parent stability in ceph_mdsc_lease_send_msg() (Jeff Layton) [1767959] - [fs] ceph: use READ_ONCE to access d_parent in RCU critical section (Jeff Layton) [1767959] - [fs] ceph: fix dir_lease_is_valid() (Jeff Layton) [1767959] - [fs] ceph: close race between d_name_cmp() and update_dentry_lease() (Jeff Layton) [1767959] - [fs] ceph: fix improper use of smp_mb__before_atomic() (Jeff Layton) [1767959] - [fs] ceph: fix "ceph.dir.rctime" vxattr value (Jeff Layton) [1767959] - [fs] ceph: remove unused vxattr length helpers (Jeff Layton) [1767959] - [fs] ceph: fix listxattr vxattr buffer length calculation (Jeff Layton) [1767959] - [fs] ceph: add ceph.snap.btime vxattr (Jeff Layton) [1767959] - [fs] ceph: carry snapshot creation time with inodes (Jeff Layton) [1767959] - [fs] ceph: clean up ceph.dir.pin vxattr name sizeof() (Jeff Layton) [1767959] - [fs] ceph: silence a checker warning in mdsc_show() (Jeff Layton) [1767959] - [net] libceph: remove ceph_get_direct_page_vector() (Jeff Layton) [1767959] - [fs] ceph: don't open-code the check for dead lockref (Jeff Layton) [1767959] - [net] ceph: no need to check return value of debugfs_create functions (Jeff Layton) [1767959] - [fs] ceph: fix ceph_mdsc_build_path to not stop on first component (Jeff Layton) [1767959] - [fs] ceph: fix error handling in ceph_get_caps() (Jeff Layton) [1767959] - [fs] ceph: avoid iput_final() while holding mutex or in dispatch thread (Jeff Layton) [1767959] - [fs] ceph: single workqueue for inode related works (Jeff Layton) [1767959] - [fs] ceph: flush dirty inodes before proceeding with remount (Jeff Layton) [1767959] - [fs] ceph: fix unaligned access in ceph_send_cap_releases (Jeff Layton) [1767959] - [net] libceph: make ceph_pr_addr take an struct ceph_entity_addr pointer (Jeff Layton) [1767959] - [net] libceph: fix unaligned accesses in ceph_entity_addr handling (Jeff Layton) [1767959] - [block] rbd: don't assert on writes to snapshots (Jeff Layton) [1767959] - [block] rbd: client_mutex is never nested (Jeff Layton) [1767959] - [fs] ceph: print inode number in __caps_issued_mask debugging messages (Jeff Layton) [1767959] - [fs] ceph: just call get_session in __ceph_lookup_mds_session (Jeff Layton) [1767959] - [fs] ceph: simplify arguments and return semantics of try_get_cap_refs (Jeff Layton) [1767959] - [fs] ceph: fix comment over ceph_drop_caps_for_unlink (Jeff Layton) [1767959] - [fs] ceph: move wait for mds request into helper function (Jeff Layton) [1767959] - [fs] ceph: have ceph_mdsc_do_request call ceph_mdsc_submit_request (Jeff Layton) [1767959] - [fs] ceph: after an MDS request, do callback and completions (Jeff Layton) [1767959] - [fs] ceph: use pathlen values returned by set_request_path_attr (Jeff Layton) [1767959] - [fs] ceph: use __getname/__putname in ceph_mdsc_build_path (Jeff Layton) [1767959] - [fs] ceph: use ceph_mdsc_build_path instead of clone_dentry_name (Jeff Layton) [1767959] - [fs] ceph: fix potential use-after-free in ceph_mdsc_build_path (Jeff Layton) [1767959] - [fs] ceph: dump granular cap info in "caps" debugfs file (Jeff Layton) [1767959] - [fs] ceph: make iterate_session_caps a public symbol (Jeff Layton) [1767959] - [fs] ceph: fix NULL pointer deref when debugging is enabled (Jeff Layton) [1767959] - [fs] ceph: properly handle granular statx requests (Jeff Layton) [1767959] - [fs] ceph: remove superfluous inode_lock in ceph_fsync (Jeff Layton) [1767959] - [kernel] libceph: fix clang warning for CEPH_DEFINE_OID_ONSTACK (Jeff Layton) [1767959] - [block] rbd: convert all rbd_assert(0) to BUG() (Jeff Layton) [1767959] - [block] rbd: avoid clang -Wuninitialized warning (Jeff Layton) [1767959] - [fs] ceph: snapshot nfs re-export (Jeff Layton) [1767959] - [fs] ceph: quota: fix quota subdir mounts (Jeff Layton) [1767959] - [fs] ceph: factor out ceph_lookup_inode() (Jeff Layton) [1767959] - [fs] ceph: remove duplicated filelock ref increase (Jeff Layton) [1767959] - [fs] ceph: fix ci->i_head_snapc leak (Jeff Layton) [1767959] - [fs] ceph: handle the case where a dentry has been renamed on outstanding req (Jeff Layton) [1767959] - [fs] ceph: ensure d_name stability in ceph_dentry_hash() (Jeff Layton) [1767959] - [fs] ceph: only use d_name directly when parent is locked (Jeff Layton) [1767959] - [fs] mark expected switch fall-throughs (Jeff Layton) [1767959] - [fs] ceph: fix use-after-free on symlink traversal (Jeff Layton) [1767959] - [net] libceph: fix breakage caused by multipage bvecs (Jeff Layton) [1767959] - [block] rbd: drop wait_for_latest_osdmap() (Jeff Layton) [1767959] - [net] libceph: wait for latest osdmap in ceph_monc_blacklist_add() (Jeff Layton) [1767959] - [block] rbd: set io_min, io_opt and discard_granularity to alloc_size (Jeff Layton) [1767959] - [block] rbd: advertise support for RBD_FEATURE_DEEP_FLATTEN (Jeff Layton) [1767959] - [block] rbd: whole-object write and zeroout should copyup when snapshots exist (Jeff Layton) [1767959] - [block] rbd: copyup with an empty snapshot context (aka deep-copyup) (Jeff Layton) [1767959] - [block] rbd: introduce rbd_obj_issue_copyup_ops() (Jeff Layton) [1767959] - [block] rbd: stop copying num_osd_ops in rbd_obj_issue_copyup() (Jeff Layton) [1767959] - [block] rbd: factor out __rbd_osd_req_create() (Jeff Layton) [1767959] - [block] rbd: clear ->xferred on error from rbd_obj_issue_copyup() (Jeff Layton) [1767959] - [block] rbd: remove experimental designation from kernel layering (Jeff Layton) [1767959] - [fs] ceph: add mount option to limit caps count (Jeff Layton) [1767959] - [fs] ceph: periodically trim stale dentries (Jeff Layton) [1767959] - [fs] ceph: delete stale dentry when last reference is dropped (Jeff Layton) [1767959] - [fs] ceph: remove dentry_lru file from debugfs (Jeff Layton) [1767959] - [fs] ceph: touch existing cap when handling reply (Jeff Layton) [1767959] - [fs] ceph: pass inclusive lend parameter to filemap_write_and_wait_range() (Jeff Layton) [1767959] - [block] rbd: round off and ignore discards that are too small (Jeff Layton) [1767959] - [block] rbd: handle DISCARD and WRITE_ZEROES separately (Jeff Layton) [1767959] - [block] rbd: get rid of obj_req->obj_request_count (Jeff Layton) [1767959] - [net] libceph: use struct_size() for kmalloc() in crush_decode() (Jeff Layton) [1767959] - [fs] ceph: send cap releases more aggressively (Jeff Layton) [1767959] - [fs] ceph: support getting ceph.dir.pin vxattr (Jeff Layton) [1767959] - [fs] ceph: support versioned reply (Jeff Layton) [1767959] - [fs] ceph: map snapid to anonymous bdev ID (Jeff Layton) [1767959] - [fs] ceph: split large reconnect into multiple messages (Jeff Layton) [1767959] - [fs] ceph: decode feature bits in session message (Jeff Layton) [1767959] - [fs] ceph: set special inode's blocksize to page size (Jeff Layton) [1767959] - [fs] ceph: avoid repeatedly adding inode to mdsc->snap_flush_list (Jeff Layton) [1767959] - [fs] ceph: quota: cleanup license mess (Jeff Layton) [1767959] - [net] libceph: avoid KEEPALIVE_PENDING races in ceph_con_keepalive() (Jeff Layton) [1767959] - [fs] ceph: clear inode pointer when snap realm gets dropped by its inode (Jeff Layton) [1767959] - [block] rbd: don't return 0 on unmap if RBD_DEV_FLAG_REMOVING is set (Jeff Layton) [1767959] - [fs] ceph: use vmf_error() in ceph_filemap_fault() (Jeff Layton) [1767959] - [net] libceph: allow setting abort_on_full for rbd (Jeff Layton) [1767959] - [fs] ceph: don't encode inode pathes into reconnect message (Jeff Layton) [1767959] - [fs] ceph: update wanted caps after resuming stale session (Jeff Layton) [1767959] - [fs] ceph: skip updating 'wanted' caps if caps are already issued (Jeff Layton) [1767959] - [fs] ceph: don't request excl caps when mount is readonly (Jeff Layton) [1767959] - [fs] ceph: don't update importing cap's mseq when handing cap export (Jeff Layton) [1767959] - [net] libceph: switch more to bool in ceph_tcp_sendmsg() (Jeff Layton) [1767959] - [net] libceph: use MSG_SENDPAGE_NOTLAST with ceph_tcp_sendpage() (Jeff Layton) [1767959] - [net] libceph: use sock_no_sendpage() as a fallback in ceph_tcp_sendpage() (Jeff Layton) [1767959] - [net] libceph: drop last_piece logic from write_partial_message_data() (Jeff Layton) [1767959] - [fs] ceph: remove redundant assignment (Jeff Layton) [1767959] - [fs] ceph: cleanup splice_dentry() (Jeff Layton) [1767959] - [fs] libceph: assume argonaut on the server side (Jeff Layton) [1767959] - [fs] ceph: quota: fix null pointer dereference in quota check (Jeff Layton) [1767959] - [fs] ceph: add non-blocking parameter to ceph_try_get_caps() (Jeff Layton) [1767959] - [net] libceph: check reply num_data_items in setup_request_data() (Jeff Layton) [1767959] - [net] libceph: preallocate message data items (Jeff Layton) [1767959] - [net] libceph, rbd, ceph: move ceph_osdc_alloc_messages() calls (Jeff Layton) [1767959] - [net] libceph: introduce alloc_watch_request() (Jeff Layton) [1767959] - [net] libceph: assign cookies in linger_submit() (Jeff Layton) [1767959] - [net] libceph: enable fallback to ceph_msg_new() in ceph_msgpool_get() (Jeff Layton) [1767959] - [fs] ceph: num_ops is off by one in ceph_aio_retry_work() (Jeff Layton) [1767959] - [net] libceph: no need to call osd_req_opcode_valid() in osd_req_encode_op() (Jeff Layton) [1767959] - [fs] ceph: set timeout conditionally in __cap_delay_requeue (Jeff Layton) [1767959] - [net] libceph: don't consume a ref on pagelist in ceph_msg_data_add_pagelist() (Jeff Layton) [1767959] - [net] libceph: introduce ceph_pagelist_alloc() (Jeff Layton) [1767959] - [net] libceph: osd_req_op_cls_init() doesn't need to take opcode (Jeff Layton) [1767959] - [kernel] libceph: bump CEPH_MSG_MAX_DATA_LEN (Jeff Layton) [1767959] - [fs] ceph: only allow punch hole mode in fallocate (Jeff Layton) [1767959] - [fs] ceph: refactor ceph_sync_read() (Jeff Layton) [1767959] - [fs] ceph: check if LOOKUPNAME request was aborted when filling trace (Jeff Layton) [1767959] - [fs] ceph: fix dentry leak in ceph_readdir_prepopulate (Jeff Layton) [1767959] - [fs] revert "ceph: fix dentry leak in splice_dentry()" (Jeff Layton) [1767959] - [fs] ceph: check snap first in ceph_set_acl() (Jeff Layton) [1767959] - [block] rbd: add __init/__exit annotations (Jeff Layton) [1767959] - [fs] ceph: reset cap hold timeout only for requeued inode (Jeff Layton) [1767959] - [fs] ceph: don't drop message if it contains more data than expected (Jeff Layton) [1767959] - [fs] ceph: support cephfs' own feature bits (Jeff Layton) [1767959] - [net] crush: fix using plain integer as NULL warning (Jeff Layton) [1767959] - [net] libceph: remove unnecessary non NULL check for request_key (Jeff Layton) [1767959] - [fs] ceph: refactor error handling code in ceph_reserve_caps() (Jeff Layton) [1767959] - [fs] ceph: refactor ceph_unreserve_caps() (Jeff Layton) [1767959] - [fs] ceph: change to void return type for __do_request() (Jeff Layton) [1767959] - [fs] ceph: compare fsc->max_file_size and inode->i_size for max file size limit (Jeff Layton) [1767959] - [fs] ceph: add additional size check in ceph_setattr() (Jeff Layton) [1767959] - [fs] ceph: add additional offset check in ceph_write_iter() (Jeff Layton) [1767959] - [fs] ceph: add additional range check in ceph_fallocate() (Jeff Layton) [1767959] - [fs] ceph: add new field max_file_size in ceph_fs_client (Jeff Layton) [1767959] - [net] ceph: fix whitespace (Jeff Layton) [1767959] - [fs] ceph: adding new return type vm_fault_t (Jeff Layton) [1767959] - [kernel] libceph: remove now unused ceph_{en, de}code_timespec() (Jeff Layton) [1767959] - [fs] ceph: use timespec64 for r_stamp (Jeff Layton) [1767959] - [fs] libceph: use timespec64 for r_mtime (Jeff Layton) [1767959] - [fs] ceph: use timespec64 for inode timestamp (Jeff Layton) [1767959] - [fs] ceph: stop using current_kernel_time() (Jeff Layton) [1767959] - [net] libceph: use timespec64 in for keepalive2 and ticket validity (Jeff Layton) [1767959] - [fs] ceph: add d_drop for some error cases in ceph_symlink() (Jeff Layton) [1767959] - [fs] ceph: add d_drop for some error cases in ceph_mknod() (Jeff Layton) [1767959] - [fs] ceph: return errors from posix_acl_equiv_mode() correctly (Jeff Layton) [1767959] - [net] libceph: amend "bad option arg" error message (Jeff Layton) [1767959] - [net] libceph: stop parsing when a bad int arg is detected (Jeff Layton) [1767959] - [kernel] libceph: change ceph_pagelist_encode_string() to take u32 (Jeff Layton) [1767959] - [net] libceph: make ceph_osdc_notify{, _ack}() payload_len u32 (Jeff Layton) [1767959] - [fs] ceph: restore ctime as well in the case of restoring old mode (Jeff Layton) [1767959] - [fs] ceph: add retry logic for error -ERANGE in ceph_get_acl() (Jeff Layton) [1767959]- [tools] objtool: Support repeated uses of the same C jump table (Yauheni Kaliuta) [1747617] - [tools] objtool: Refactor jump table code (Yauheni Kaliuta) [1747617] - [tools] objtool: Fix sibling call detection (Yauheni Kaliuta) [1747617] - [tools] objtool: Add --backtrace support (Yauheni Kaliuta) [1747617] - [tools] libbpf: Improve handling of corrupted ELF during map initialization (Yauheni Kaliuta) [1747617] - [tools] libbpf: Fix negative FD close() in xsk_setup_xdp_prog() (Yauheni Kaliuta) [1747617] - [kernel] bpf: Change size to u64 for bpf_map_{area_alloc, charge_init}() (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: Fix btf_dump padding test case (Yauheni Kaliuta) [1747617] - [tools] libbpf: Fix struct end padding in btf_dump (Yauheni Kaliuta) [1747617] - [tools] bpf: Allow narrow loads of bpf_sysctl fields with offset > 0 (Yauheni Kaliuta) [1747617] - [tools] bpftool: move "__printf()" attributes to header file (Yauheni Kaliuta) [1747617] - [media] bpf: media: properly use bpf_prog_array api (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix format string for p_err() in detect_common_prefix() (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix argument for p_err() in BTF do_dump() (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix arguments for p_err() in do_event_pipe() (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix format strings and arguments for jsonw_printf() (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision tracking of stack slots (Yauheni Kaliuta) [1747617] - [kernel] bpf: handle 32-bit zext during constant blinding (Yauheni Kaliuta) [1747617] - [net] bpf: allow narrow loads of some sk_reuseport_md fields with offset > 0 (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision tracking in presence of bpf2bpf calls (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add config fragment BPF_JIT (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_btf_dump with O= (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_cgroup_storage on s390 (Yauheni Kaliuta) [1747617] - [tools] bpftool: close prog FD before exit on showing a single program (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix "bind{4, 6} deny specific IP & port" on s390 (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools infrastructure (Yauheni Kaliuta) [1747617] - [tools] bpftool: add error message on pin failure (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix error message (prog -> object) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: tests for jmp to 1st insn (Yauheni Kaliuta) [1747617] - [x86] bpf: fix x64 JIT code generation for jmp to 1st insn (Yauheni Kaliuta) [1747617] - [tools] libbpf: set BTF FD for prog only when there is supported .BTF.ext data (Yauheni Kaliuta) [1747617] - [tools] libbpf : make libbpf_num_possible_cpus function thread safe (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix missing __WORDSIZE definition (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix erroneous multi-closing of BTF FD (Yauheni Kaliuta) [1747617] - [tools] libbpf: silence GCC8 warning about string truncation (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add another gso_segs access (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix sendmsg6_prog on s390 (Yauheni Kaliuta) [1747617] - [tools] libbpf: Avoid designated initializers for unnamed union members (Yauheni Kaliuta) [1747617] - [tools] libbpf: Fix endianness macro usage for some compilers (Yauheni Kaliuta) [1747617] - [tools] libbpf: sanitize VAR to conservative 1-byte INT (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix SIGSEGV when BTF loading fails, but .BTF.ext exists (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_xdp_noinline on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix "valid read map access into a read-only array 1" on s390 (Yauheni Kaliuta) [1747617] - [kernel] bpf: Disable GCC -fgcse optimization for ___bpf_prog_run() (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix perf_buffer on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: structure test_{progs, maps, verifier} test runners uniformly (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_verifier/test_maps make dependencies (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix another GCC8 warning for strncpy (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: skip nmi test when perf hw events are disabled (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: remove logic duplication in test_verifier (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add selftests for wide loads (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: rename verifier/wide_store.c to verifier/wide_access.c (Yauheni Kaliuta) [1747617] - [net] bpf: allow wide aligned loads for bpf_sock_addr user_ip6 and msg_src_ip6 (Yauheni Kaliuta) [1747617] - [samples] bpf: build with -D__TARGET_ARCH_$(SRCARCH) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: put test_stub.o into $(OUTPUT) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: make directory prerequisites order-only (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix attach_probe on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: use typedef'ed arrays as map values (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add trickier size resolution tests (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix BTF verifier size resolution logic (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix compiling loop{1, 2, 3}.c on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: make PT_REGS_* work in userspace (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix s930 -> s390 typo (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: compile progs with -D__TARGET_ARCH_$(SRCARCH) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: do not ignore clang failures (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: avoid fall-through warnings (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix bpf_target_sparc check (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix ptr to u64 conversion warning on 32-bit platforms (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision bit propagation for BPF_ST instructions (Yauheni Kaliuta) [1747617] - [kernel] bpf: Fix ORC unwinding in non-JIT BPF code (Yauheni Kaliuta) [1747617] - [tools] objtool: Add support for C jump tables (Yauheni Kaliuta) [1747617] - [tools] objtool: Don't use ignore flag for fake jumps (Yauheni Kaliuta) [1747617] - [tools] objtool: Support per-function rodata sections (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_reuseport_array on s390 (Yauheni Kaliuta) [1747617] - [tools] bpftool: add completion for bpftool prog "loadall" (Yauheni Kaliuta) [1747617] - [kernel] bpf: cgroup: Fix build error without CONFIG_NET (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_attach_probe map definition (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add verifier tests for wide stores (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1747617] - [tools] libbpf: add perf_buffer_ prefix to README (Yauheni Kaliuta) [1747617] - [tools] bpftool: switch map event_pipe to libbpf's perf_buffer (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: test perf buffer API (Yauheni Kaliuta) [1747617] - [tools] libbpf: auto-set PERF_EVENT_ARRAY size to number of CPUs (Yauheni Kaliuta) [1747617] - [tools] libbpf: add perf buffer API (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add test_tcp_rtt to .gitignore (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_align liveliness expectations (Yauheni Kaliuta) [1747617] - [tools] bpftool: add "prog run" subcommand to test-run programs (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert legacy BPF maps to BTF-defined ones (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert selftests using BTF-defined maps to new syntax (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add __uint and __type macro for BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] libbpf: capture value in BTF type info for BTF-defined map defs (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert existing tracepoint tests to new APIs (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add kprobe/uprobe selftests (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: switch test to new attach_perf_event API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add raw tracepoint attach API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add tracepoint attach API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add kprobe/uprobe attach API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add ability to attach/detach BPF program to perf event (Yauheni Kaliuta) [1747617] - [tools] libbpf: introduce concept of bpf_link (Yauheni Kaliuta) [1747617] - [tools] libbpf: make libbpf_strerror_r agnostic to sign of error (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: fix inlines in test_lwt_seg6local (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: standardize to static __always_inline (Yauheni Kaliuta) [1747617] - [samples] bpf: Add support for fq's EDT to HBM (Yauheni Kaliuta) [1747617] - [tools] bpf, libbpf, smatch: Fix potential NULL pointer dereference (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix GCC8 warning for strncpy (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: add tests for shifts by zero (Yauheni Kaliuta) [1747617] - [x86] bpf, x32: Fix bug with ALU64 {LSH, RSH, ARSH} BPF_K shift by 0 (Yauheni Kaliuta) [1747617] - [x86] bpf, x32: Fix bug with ALU64 {LSH, RSH, ARSH} BPF_X shift by 0 (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision tracking (Yauheni Kaliuta) [1747617] - [tools] bpf: fix uapi bpf_prog_info fields alignment (Yauheni Kaliuta) [1747617] - [kernel] devmap: Allow map lookups from eBPF (Yauheni Kaliuta) [1747617] - [net] bpf_xdp_redirect_map: Perform map lookup in eBPF helper (Yauheni Kaliuta) [1747617] - [net] devmap: Rename ifindex member in bpf_redirect_info (Yauheni Kaliuta) [1747617] - [kernel] devmap/cpumap: Use flush list instead of bitmap (Yauheni Kaliuta) [1747617] - [kernel] xskmap: Move non-standard list manipulation to helper (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix -Wstrict-aliasing in test_sockopt_sk.c (Yauheni Kaliuta) [1747617] - [tools] bpftool: support cgroup sockopt (Yauheni Kaliuta) [1747617] - [documentation] bpf: add sockopt documentation (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add sockopt test that exercises BPF_F_ALLOW_MULTI (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add sockopt test that exercises sk helpers (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add sockopt test (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: test sockopt section name (Yauheni Kaliuta) [1747617] - [tools] libbpf: support sockopt hooks (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1747617] - [kernel] bpf: implement getsockopt and setsockopt hooks (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix cgroup bpf release synchronization (Yauheni Kaliuta) [1747617] - [samples] bpf: make the use of xdp samples consistent (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix BPF_ALU32 | BPF_ARSH on BE arches (Yauheni Kaliuta) [1747617] - [tools] bpftool: use correct argument in cgroup errors (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix compiler warning with CONFIG_MODULES=n (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: build tests with debug info (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix max() type mismatch for 32bit (Yauheni Kaliuta) [1747617] - [trace] xdp: Add tracepoint for bulk XDP_TX (Yauheni Kaliuta) [1747617] - [tools] selftests, bpf: Add test for veth native XDP (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix spelling mistake "conflictling" -> "conflicting" (Yauheni Kaliuta) [1747617] - [kernel] bpf: precise scalar_value tracking (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add realistic loop tests (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add basic verifier tests for loops (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix tests (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix callees pruning callers (Yauheni Kaliuta) [1747617] - [kernel] bpf: introduce bounded loops (Yauheni Kaliuta) [1747617] - [kernel] bpf: extend is_branch_taken to registers (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix tests due to const spill/fill (Yauheni Kaliuta) [1747617] - [kernel] bpf: track spill/fill of constants (Yauheni Kaliuta) [1747617] - [tools] libbpf: constify getter APIs (Yauheni Kaliuta) [1747617] - [samples] bpf: refactor header include path (Yauheni Kaliuta) [1747617] - [samples] bpf: remove unnecessary include options in Makefile (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert tests w/ custom values to BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: switch BPF_ANNOTATE_KV_PAIR tests to BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add test for BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] libbpf: allow specifying map definitions using BTF (Yauheni Kaliuta) [1747617] - [tools] libbpf: split initialization and loading of BTF (Yauheni Kaliuta) [1747617] - [tools] libbpf: identify maps by section index in addition to offset (Yauheni Kaliuta) [1747617] - [tools] libbpf: refactor map initialization (Yauheni Kaliuta) [1747617] - [tools] libbpf: streamline ELF parsing error-handling (Yauheni Kaliuta) [1747617] - [tools] libbpf: extract BTF loading logic (Yauheni Kaliuta) [1747617] - [tools] libbpf: add common min/max macro to libbpf_internal.h (Yauheni Kaliuta) [1747617] - [net] bpf: fix the check that forwarding is enabled in bpf_ipv6_fib_lookup (Yauheni Kaliuta) [1747617] - [kernel] bpf: Fix build error without CONFIG_INET (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert socket_cookie test to sk storage (Yauheni Kaliuta) [1747617] - [tools] bpf/tools: sync bpf.h (Yauheni Kaliuta) [1747617] - [net] bpf: export bpf_sock for BPF_PROG_TYPE_SOCK_OPS prog type (Yauheni Kaliuta) [1747617] - [net] bpf: export bpf_sock for BPF_PROG_TYPE_CGROUP_SOCK_ADDR prog type (Yauheni Kaliuta) [1747617] - [tools] bpf: Add test for SO_REUSEPORT_DETACH_BPF (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix check for presence of associated BTF for map creation (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: signedness bug in enable_all_controllers() (Yauheni Kaliuta) [1747617] - [samples] bpf: fix include path in Makefile (Yauheni Kaliuta) [1747617] - [kernel] bpf: silence warning messages in core (Yauheni Kaliuta) [1747617] - [tools] bpf: use libbpf_num_possible_cpus internally (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: remove bpf_util.h from BPF C progs (Yauheni Kaliuta) [1747617] - [tools] bpf: add a new API libbpf_num_possible_cpus() (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf : clean up feature/ when make clean (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix constness of source arg for bpf helpers (Yauheni Kaliuta) [1747617] - [samples] bpf: don't run probes at the local make stage (Yauheni Kaliuta) [1747617] - [tools] libbpf: remove qidconf and better support external bpf programs (Yauheni Kaliuta) [1747617] - [tools] bpf: Add bpf_map_lookup_elem selftest for xskmap (Yauheni Kaliuta) [1747617] - [tools] bpf/tools: sync bpf.h (Yauheni Kaliuta) [1747617] - [net] bpf: Allow bpf_map_lookup_elem() on an xskmap (Yauheni Kaliuta) [1747617] - [documentation] docs: bpf: get rid of two warnings (Yauheni Kaliuta) [1747617] - [net] bpf: allow CGROUP_SKB programs to use bpf_skb_cgroup_id() helper (Yauheni Kaliuta) [1747617] - [samples] bpf: print a warning about headers_install (Yauheni Kaliuta) [1747617] - [kernel] bpf: remove redundant assignment to err (Yauheni Kaliuta) [1747617] - [samples] bpf: hbm: fix spelling mistake "notifcations" -> "notificiations" (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: measure RTT from xdp using xdping (Yauheni Kaliuta) [1747617] - [documentation] bpf: doc: update answer for 32-bit subregister question (Yauheni Kaliuta) [1747617] - [kernel] bpf: move memory size checks to bpf_map_charge_init() (Yauheni Kaliuta) [1747617] - [kernel] bpf: rework memlock-based memory accounting for maps (Yauheni Kaliuta) [1747617] - [kernel] bpf: group memory related fields in struct bpf_map_memory (Yauheni Kaliuta) [1747617] - [net] bpf: add memlock precharge for socket local storage (Yauheni Kaliuta) [1747617] - [kernel] bpf: add memlock precharge check for cgroup_local_storage (Yauheni Kaliuta) [1747617] - [samples] bpf: Add more stats to HBM (Yauheni Kaliuta) [1747617] - [samples] bpf: Add cn support to hbm_out_kern.c (Yauheni Kaliuta) [1747617] - [kernel] bpf: Update __cgroup_bpf_run_filter_skb with cn (Yauheni Kaliuta) [1747617] - [kernel] bpf: cgroup inet skb programs can return 0 to 3 (Yauheni Kaliuta) [1747617] - [kernel] bpf: Create BPF_PROG_CGROUP_INET_EGRESS_RUN_ARRAY (Yauheni Kaliuta) [1747617] - [tools] libbpf: reduce unnecessary line wrapping (Yauheni Kaliuta) [1747617] - [tools] libbpf: typo and formatting fixes (Yauheni Kaliuta) [1747617] - [tools] libbpf: simplify two pieces of logic (Yauheni Kaliuta) [1747617] - [tools] libbpf: use negative fd to specify missing BTF (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix error code returned on corrupted ELF (Yauheni Kaliuta) [1747617] - [tools] libbpf: check map name retrieved from ELF (Yauheni Kaliuta) [1747617] - [tools] libbpf: simplify endianness check (Yauheni Kaliuta) [1747617] - [tools] libbpf: preserve errno before calling into user callback (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix detection of corrupted BPF instructions section (Yauheni Kaliuta) [1747617] - [tools] libbpf: prevent overwriting of log_level in bpf_object__load_progs() (Yauheni Kaliuta) [1747617] - [kernel] bpf: tracing: properly use bpf_prog_array api (Yauheni Kaliuta) [1747617] - [kernel] bpf: cgroup: properly use bpf_prog_array api (Yauheni Kaliuta) [1747617] - [kernel] bpf: remove __rcu annotations from bpf_prog_array (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add auto-detach test (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: enable all available cgroup v2 controllers (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert test_cgrp2_attach2 example into kselftest (Yauheni Kaliuta) [1747617] - [samples] bpf: fix a couple of style issues in bpf_load (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fail test_tunnel.sh if subtests fail (Yauheni Kaliuta) [1747617] - [tools] bpftool: make -d option print debug output from verifier (Yauheni Kaliuta) [1747617] - [tools] libbpf: add bpf_object__load_xattr() API function to pass log_level (Yauheni Kaliuta) [1747617] - [tools] bpftool: add -d option to get debug output from libbpf (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix warning that PTR_ERR_OR_ZERO can be used (Yauheni Kaliuta) [1747617] - [tools] bpf: style fix in while(!feof()) loop (Yauheni Kaliuta) [1747617] - [kernel] bpf: check signal validity in nmi for bpf_send_signal() helper (Yauheni Kaliuta) [1747617] - [tools] bpftool: auto-complete BTF IDs for btf dump (Yauheni Kaliuta) [1747617] - [samples] bpf: add ibumad sample to .gitignore (Yauheni Kaliuta) [1747617] - [x86] x32: bpf: eliminate zero extension code-gen (Yauheni Kaliuta) [1747617] - [s390] bpf: eliminate zero extension code-gen (Yauheni Kaliuta) [1747617] - [powerpc] bpf: eliminate zero extension code-gen (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: enable hi32 randomization for all tests (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: adjust several test_verifier helpers for insn insertion (Yauheni Kaliuta) [1747617] - [tools] libbpf: add "prog_flags" to bpf_program/bpf_prog_load_attr/bpf_load_program_attr (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: randomize high 32-bit when BPF_F_TEST_RND_HI32 is set (Yauheni Kaliuta) [1747617] - [tools] bpf: sync uapi header bpf.h (Yauheni Kaliuta) [1747617] - [uapi] bpf: introduce new bpf prog load flags "BPF_F_TEST_RND_HI32" (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: insert zero extension according to analysis result (Yauheni Kaliuta) [1747617] - [kernel] bpf: introduce new mov32 variant for doing explicit zero extension (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: mark patched-insn with sub-register zext flag (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: mark verified-insn with sub-register zext flag (Yauheni Kaliuta) [1747617] - [tools] bpf: add selftest in test_progs for bpf_send_signal() helper (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf uapi header bpf.h to tools directory (Yauheni Kaliuta) [1747617] - [kernel] bpf: implement bpf_send_signal() helper (Yauheni Kaliuta) [1747617] - [tools] bpftool: update bash-completion w/ new c option for btf dump (Yauheni Kaliuta) [1747617] - [tools] bpftool/docs: add description of btf dump C option (Yauheni Kaliuta) [1747617] - [tools] bpftool: add C output format option to btf dump subcommand (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add btf_dump BTF-to-C conversion tests (Yauheni Kaliuta) [1747617] - [tools] libbpf: add btf_dump API for BTF-to-C conversion (Yauheni Kaliuta) [1747617] - [tools] libbpf: switch btf_dedup() to hashmap for dedup table (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add tests for libbpf's hashmap (Yauheni Kaliuta) [1747617] - [tools] libbpf: add resizable non-thread safe internal hashmap (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: use btf__parse_elf to check presence of BTF/BTF.ext (Yauheni Kaliuta) [1747617] - [tools] bpftool: use libbpf's btf__parse_elf API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add btf__parse_elf API to load .BTF and .BTF.ext (Yauheni Kaliuta) [1747617] - [tools] libbpf: ensure libbpf.h is included along libbpf_internal.h (Yauheni Kaliuta) [1747617] - [samples] bpf: Do not define bpf_printk macro (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: Move bpf_printk to bpf_helpers.h (Yauheni Kaliuta) [1747617] - [kernel] bpf: convert explored_states to hash table (Yauheni Kaliuta) [1747617] - [kernel] bpf: split explored_states (Yauheni Kaliuta) [1747617] - [kernel] bpf: cleanup explored_states (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add pyperf scale test (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: adjust verifier scale test (Yauheni Kaliuta) [1747617] - [kernel] bpf: bump jmp sequence limit (Yauheni Kaliuta) [1747617] - [tools] libbpf: emit diff of mismatched public API, if any (Yauheni Kaliuta) [1747617] - [tools] bpf, selftest: test global data/bss/rodata sections (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: test_tc_tunnel: skip unsupported tests (Jiri Benc) [1749814] - [tools] selftests/bpf: More compatible nc options in test_tc_edt (Jiri Benc) [1749814] - [net] xdp: check device pointer before clearing (Jiri Benc) [1749814] - [net] bpf: udp: Avoid calling reuseport's bpf_prog from udp_gro (Jiri Benc) [1749814] - [net] bpf: sockmap, fix use after free from sleep in psock backlog workqueue (Jiri Benc) [1749814] - [include] bpf: sockmap, restore sk_write_space when psock gets dropped (Jiri Benc) [1749814] - [net] bpfilter: fallback to netfilter if failed to load bpfilter kernel module (Jiri Benc) [1749814] - [net] pass net_device argument to the eth_get_headlen (Jiri Benc) [1749814] - [net] flow_dissector: handle no-skb use case (Jiri Benc) [1749814] - [net] plumb network namespace into __skb_flow_dissect (Jiri Benc) [1749814] - [net] bpfilter: dont use module_init in non-modular code (Jiri Benc) [1749814] - [net] xsk: fix XDP socket ring buffer memory ordering (Jiri Benc) [1749814] - [tools] selftests/bpf: install files test_xdp_vlan.sh (Jiri Benc) [1749814] - [net] fix bpf_xdp_adjust_head regression for generic-XDP (Jiri Benc) [1749814] - [tools] selftests/bpf: reduce time to execute test_xdp_vlan.sh (Jiri Benc) [1749814] - [tools] selftests/bpf: add wrapper scripts for test_xdp_vlan.sh (Jiri Benc) [1749814] - [tools] bpf: fix XDP vlan selftests test_xdp_vlan.sh (Jiri Benc) [1749814] - [net] core: support XDP generic on stacked devices. (Jiri Benc) [1749814] - [netdrv] netvsc: unshare skb in VF rx handler (Jiri Benc) [1749814] - [net] convert rps_needed and rfs_needed to new static branch api (Jiri Benc) [1749814] - [net] core: Document __skb_flow_dissect() flags argument (Jiri Benc) [1749814] - [net] gso: Fix skb_segment splat when splitting gso_size mangled skb having linear-headed frag_list (Jiri Benc) [1749814] - [net] sock_map, fix missing ulp check in sock hash case (Jiri Benc) [1749814] - [net] Fix missing meta data in skb with vlan packet (Jiri Benc) [1749814] - [include] skbuff.h: fix using plain integer as NULL warning (Jiri Benc) [1749814] - [netdrv] netdevsim: Fix error handling in nsim_fib_init and nsim_fib_exit (Jiri Benc) [1761359] - [netdrv] netdevsim: Restore per-network namespace accounting for fib entries (Jiri Benc) [1761359] - [netdrv] netdevsim: Make nsim_num_vf static (Jiri Benc) [1761359] - [netdrv] netdevsim: fix fall-through annotation (Jiri Benc) [1761359] - [netdrv] netdevsim: implement ndo_get_devlink_port (Jiri Benc) [1761359] - [netdrv] netdevsim: move netdev creation/destruction to dev probe (Jiri Benc) [1761359] - [netdrv] netdevsim: extend device attrs to support port addition and deletion (Jiri Benc) [1761359] - [netdrv] netdevsim: implement dev probe/remove skeleton with port initialization (Jiri Benc) [1761359] - [netdrv] netdevsim: change debugfs tree topology (Jiri Benc) [1761359] - [netdrv] netdevsim: generate random switch id instead of using dev id (Jiri Benc) [1761359] - [netdrv] netdevsim: merge sdev into dev (Jiri Benc) [1761359] - [netdrv] netdevsim: rename dev_init/exit() functions and make them independent on ns (Jiri Benc) [1761359] - [netdrv] netdevsim: add bus attributes to add new and delete devices (Jiri Benc) [1761359] - [netdrv] netdevsim: use ida for bus device ids (Jiri Benc) [1761359] - [netdrv] netdevsim: add stub netdevsim driver implementation (Jiri Benc) [1761359] - [netdrv] netdevsim: move device registration and related code to bus.c (Jiri Benc) [1761359] - [netdrv] netdevsim: put netdevsim bus code into separate file (Jiri Benc) [1761359] - [netdrv] netdevsim: rename devlink.c to dev.c to contain per-dev(asic) items (Jiri Benc) [1761359] - [netdrv] netdevsim: create devlink instance per netdevsim instance (Jiri Benc) [1761359] - [netdrv] netdevsim: move device registration on bus to be done earlier in init (Jiri Benc) [1761359] - [netdrv] netdevsim: move sdev-specific init/uninit code into separate functions (Jiri Benc) [1761359] - [netdrv] netdevsim: make bpf_offload_dev_create() per-sdev instead of first ns (Jiri Benc) [1761359] - [netdrv] netdevsim: move shared dev creation and destruction into separate file (Jiri Benc) [1761359] - [netdrv] netdevsim: let net core to free netdevsim netdev (Jiri Benc) [1761359] - [netdrv] netdevsim: remove nsim_dellink() implementation (Jiri Benc) [1761359] - [include] driver core: add BUS_ATTR_WO() macro (Jiri Benc) [1761359] - arm64: bpf: do not allocate executable memory (Yauheni Kaliuta) [1762214] - modules: page-align module section allocations only for arches supporting strict module rwx (Yauheni Kaliuta) [1762214] - modules: always page-align module section allocations (Yauheni Kaliuta) [1762214] - modules: fix compile error if don't have strict module rwx (Yauheni Kaliuta) [1762214] - modules: Use vmalloc special flag (Yauheni Kaliuta) [1762214] - modules: fix BUG when load module with rodata=n (Yauheni Kaliuta) [1762214] - x86/modules: Avoid breaking W^X while loading modules (Yauheni Kaliuta) [1762214] - x86/alternatives, jumplabel: Use text_poke_early() before mm_init() (Yauheni Kaliuta) [1762214] - x86/kprobes: Set instruction page as executable (Yauheni Kaliuta) [1762214] - x86/ftrace: Set trampoline pages as executa (Yauheni Kaliuta) [1762214] - [tools] bpftool: Fix json dump crash on powerpc (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix race in flow dissector tests (Yauheni Kaliuta) [1747615] - [arm64] insn: Fix ldadd instruction encoding (Yauheni Kaliuta) [1747615] - [scripts] kbuild: tolerate missing pahole when generating BTF (Yauheni Kaliuta) [1747615] - [scripts] kbuild: handle old pahole more gracefully when generating BTF (Yauheni Kaliuta) [1747615] - [scripts] kbuild: add ability to generate BTF type info for vmlinux (Yauheni Kaliuta) [1747615] - [scripts] kbuild: hardcode genksyms path and remove GENKSYMS variable (Yauheni Kaliuta) [1747615] - [scripts] bpf: fix script for generating man page on BPF helpers (Yauheni Kaliuta) [1747615] - [tools] add smp_* barrier variants to include infrastructure (Yauheni Kaliuta) [1747615] - [tools] tools headers barrier: Fix arm64 tools build failure wrt smp_load_{acquire, release} (Yauheni Kaliuta) [1747615] - [tools] bpf, x32: Fix bug for BPF_JMP | {BPF_JSGT, BPF_JSLE, BPF_JSLT, BPF_JSGE} (Yauheni Kaliuta) [1747615] - [x86] unwind/orc: Fall back to using frame pointers for generated code (Yauheni Kaliuta) [1747615] - [x86] unwind: Add hardcoded ORC entry for NULL (Yauheni Kaliuta) [1747615] - [x86] unwind: Handle NULL pointer calls better in frame unwinder (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix accessing bpf_sysctl.file_pos on s390 (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix narrower loads on s390 (Yauheni Kaliuta) [1747615] - [net] bpf: rename bpf_ctx_wide_store_ok to bpf_ctx_wide_access_ok (Yauheni Kaliuta) [1747615] - [net] bpf: allow wide (u64) aligned stores for some fields of bpf_sock_addr (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: improve unexpected success reporting in test_syctl (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix "ctx:write sysctl:write read ok" on s390 (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix format string for p_err() in query_flow_dissector() (Yauheni Kaliuta) [1747615] - [tools] bpftool: add raw_tracepoint_writable prog type to header (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix NULL deref in btf_type_is_resolve_source_only (Yauheni Kaliuta) [1747615] - [net] bpf: Set sk_bpf_storage back to NULL for cloned sk (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix nested bpf tracepoints with per-cpu data (Yauheni Kaliuta) [1747615] - [net] bpf: Fix out of bounds memory access in bpf_sk_storage (Yauheni Kaliuta) [1747615] - [kernel] sysctl: define proc_do_static_key() (Yauheni Kaliuta) [1747615] - [x86] bpf, x64: fix stack layout of JITed bpf code (Yauheni Kaliuta) [1747615] - [kernel] bpf, devmap: Add missing RCU read lock on flush (Yauheni Kaliuta) [1747615] - [kernel] bpf, devmap: Add missing bulk queue free (Yauheni Kaliuta) [1747615] - [kernel] bpf, devmap: Fix premature entry free on destroying map (Yauheni Kaliuta) [1747615] - [powerpc] bpf: use unsigned division instruction for 64-bit operations (Yauheni Kaliuta) [1747615] - [tools] bpf: fix div64 overflow tests to properly detect errors (Yauheni Kaliuta) [1747615] - [tools] bpf: sync BPF_FIB_LOOKUP flag changes with BPF uapi (Yauheni Kaliuta) [1747615] - [uapi] bpf: simplify definition of BPF_FIB_LOOKUP related flags (Yauheni Kaliuta) [1747615] - [tools] bpf: lpm_trie: check left child of last leftmost node for NULL (Yauheni Kaliuta) [1747615] - [tools] bpf: expand section tests for test_section_names (Yauheni Kaliuta) [1747615] - [tools] bpf: more msg_name rewrite tests to test_sock_addr (Yauheni Kaliuta) [1747615] - [tools] bpf, bpftool: enable recvmsg attach types (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: enable recvmsg attach types (Yauheni Kaliuta) [1747615] - [tools] bpf: sync tooling uapi header (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix unconnected udp hooks (Yauheni Kaliuta) [1747615] - [tools] bpftool: Fix JSON output when lookup fails (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: move test_lirc_mode2_user to TEST_GEN_PROGS_EXTENDED (Yauheni Kaliuta) [1747615] - [tools] libbpf: Return btf_fd for load_sk_storage_btf (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: fix compiler warning in flow_dissector test (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: complete sub-register zero extension checks (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: move sub-register zero extension checks into subreg.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: add zero extend checks for ALU32 and/or/xor (Yauheni Kaliuta) [1747615] - [samples] bpf: suppress compiler warning (Yauheni Kaliuta) [1747615] - [samples] bpf: fix to change the buffer size for read() (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix BTF raw dump of FWD's fwd_kind (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix bpf_get_current_task (Yauheni Kaliuta) [1747615] - [tools] libbpf: move logging helpers into libbpf_internal.h (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add test_sysctl and map_tests/tests.h to .gitignore (Yauheni Kaliuta) [1747615] - [kernel] bpf: relax inode permission check for retrieving bpf program (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add prog detach to flow_dissector test (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add missing \n to flow_dissector CHECK errors (Yauheni Kaliuta) [1747615] - [tools] libbpf: don't fail when feature probing fails (Yauheni Kaliuta) [1747615] - [tools] bpf: test ref bit from data path and add new tests for syscall path (Yauheni Kaliuta) [1747615] - [kernel] bpf, lru: avoid messing with eviction heuristics upon syscall lookup (Yauheni Kaliuta) [1747615] - [kernel] bpf: add map_lookup_elem_sys_only for lookups from syscall side (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync kernel btf.h header (Yauheni Kaliuta) [1747615] - [uapi] bpf: btf: fix the brackets of BTF_INT_OFFSET() (Yauheni Kaliuta) [1747615] - [kernel] bpf: devmap: fix use-after-free Read in __dev_map_entry_free (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix undefined behavior in narrow load handling (Yauheni Kaliuta) [1747615] - [tools] libbpf: detect supported kernel BTF features and sanitize BTF (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: Add files generated after build to .gitignore (Yauheni Kaliuta) [1747615] - [tools] bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1747615] - [uapi] bpf: fix minor issues in documentation for BPF helpers (Yauheni Kaliuta) [1747615] - [uapi] bpf: fix recurring typo in documentation for BPF helpers (Yauheni Kaliuta) [1747615] - [tools] bpf: add various test cases for backward jumps (Yauheni Kaliuta) [1747615] - [documentation] docs/btf: fix the missing section marks (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: initialize bpf_object pointers where needed (Yauheni Kaliuta) [1747615] - [tools] libbpf: add libbpf_util.h to header install (Yauheni Kaliuta) [1747615] - [tools] bpf: fix perf build error with uClibc (seen on ARC) (Yauheni Kaliuta) [1747615] - [tools] bpftool: exclude bash-completion/bpftool from .gitignore pattern (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: set RLIMIT_MEMLOCK properly for test_libbpf_open.c (Yauheni Kaliuta) [1747615] - [net] bpf: Use PTR_ERR_OR_ZERO in bpf_fd_sk_storage_update_elem() (Yauheni Kaliuta) [1747615] - [kernel] bpf: Use vmalloc special flag (Yauheni Kaliuta) [1747615] - [kernel] bpf: Fail bpf_probe_write_user() while mm is switched (Yauheni Kaliuta) [1747615] - [kernel] mm/tlb: Provide default nmi_uaccess_okay() (Yauheni Kaliuta) [1747615] - [kernel] asm-generic/tlb: Guard with #ifdef CONFIG_MMU (Yauheni Kaliuta) [1747615] - [tools] bpf: Add ene-to-end test for bpf_sk_storage_* helpers (Yauheni Kaliuta) [1747615] - [tools] bpf: Add BPF_MAP_TYPE_SK_STORAGE test to test_maps (Yauheni Kaliuta) [1747615] - [tools] bpf: Add verifier tests for the bpf_sk_storage (Yauheni Kaliuta) [1747615] - [tools] bpf: Refactor BTF encoding macro to test_btf.h (Yauheni Kaliuta) [1747615] - [tools] bpf: Support BPF_MAP_TYPE_SK_STORAGE in bpf map probing (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools (Yauheni Kaliuta) [1747615] - [net] bpf: Introduce bpf sk local storage (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: test writable buffers in raw tps (Yauheni Kaliuta) [1747615] - [tools] sync bpf.h (Yauheni Kaliuta) [1747615] - [kernel] bpf: add writable context for raw tracepoints (Yauheni Kaliuta) [1747615] - [arm64] bpf, arm64: use more scalable stadd over ldxr / stxr loop in xadd (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix indendation in bash-completion/bpftool (Yauheni Kaliuta) [1747615] - [tools] bpftool: add bash completions for btf command (Yauheni Kaliuta) [1747615] - [tools] bpftool/docs: add btf sub-command documentation (Yauheni Kaliuta) [1747615] - [tools] bpftool: add ability to dump BTF types (Yauheni Kaliuta) [1747615] - [tools] bpftool: Fix errno variable usage (Yauheni Kaliuta) [1747615] - [tools] bpftool: show flow_dissector attachment status (Yauheni Kaliuta) [1747615] - [net] bpf: support BPF_PROG_QUERY for BPF_FLOW_DISSECTOR attach_type (Yauheni Kaliuta) [1747615] - [samples] bpf: add hbm sample to .gitignore (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix samples/bpf build failure due to undefined UINT32_MAX (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: fix segfault in bpf_object__init_maps' pr_debug statement (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: handle old kernels more graceful wrt global data sections (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: expand test_tc_tunnel with SIT encap (Yauheni Kaliuta) [1747615] - [net] bpf: update skb->protocol in bpf_skb_net_grow (Yauheni Kaliuta) [1747615] - [tools] bpf/flow_dissector: don't adjust nhoff by ETH_HLEN in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: properly return error from bpf_flow_load (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: run flow dissector tests in skb-less mode (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add flow dissector bpf_skb_load_bytes helper test (Yauheni Kaliuta) [1747615] - [net] bpf: when doing BPF_PROG_TEST_RUN for flow dissector use no-skb mode (Yauheni Kaliuta) [1747615] - [kernel] bpf: drop bpf_verifier_lock (Yauheni Kaliuta) [1747615] - [kernel] bpf: remove global variables (Yauheni Kaliuta) [1747615] - [documentation] bpf: document the verifier limits (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix BPF_LOG_BUF_SIZE off-by-one error (Yauheni Kaliuta) [1747615] - [documentation] bpf: move BPF_PROG_TYPE_FLOW_DISSECTOR documentation to a new common place (Yauheni Kaliuta) [1747615] - [tools] bpf: Increase MAX_NR_MAPS to 17 in test_verifier.c (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix compile errors due to unsync linux/in6.h and netinet/in.h (Yauheni Kaliuta) [1747615] - [documentation] bpf: Document BPF_PROG_TYPE_CGROUP_SYSCTL (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix a compilation error (Yauheni Kaliuta) [1747615] - [kernel] bpf: cpumap memory prefetchw optimizations for struct page (Yauheni Kaliuta) [1747615] - [kernel] bpf: cpumap do bulk allocation of SKBs (Yauheni Kaliuta) [1747615] - [net] core: introduce build_skb_around (Yauheni Kaliuta) [1747615] - [kernel] bpf: cpumap use ptr_ring_consume_batched (Yauheni Kaliuta) [1747615] - [tools] libbpf: optimize barrier for XDP socket rings (Yauheni Kaliuta) [1747615] - [tools] bpftool: show btf_id in map listing (Yauheni Kaliuta) [1747615] - [tools] bpftool: re-organize newline printing for map listing (Yauheni Kaliuta) [1747615] - [tools] bpftool: Support sysctl hook (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix printf formatter for ptrdiff_t argument (Yauheni Kaliuta) [1747615] - [kernel] bpf: use BPF_CAST_CALL for casting bpf call (Yauheni Kaliuta) [1747615] - [uapi] bpf: allow clearing all sock_ops callback flags (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: add VRF test cases to lwt_ip_encap test (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: make flow dissector tests more extensible (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: two scale tests (Yauheni Kaliuta) [1747615] - [tools] bpftool: Improve handling of ENOSPC on reuseport_array map dumps (Yauheni Kaliuta) [1747615] - [tools] bpftool: Use print_entry_error() in case of ENOENT when dumping (Yauheni Kaliuta) [1747615] - [tools] bpftool: add a note on program statistics in man page (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix short option name for printing version in man pages (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix man page documentation for "pinmaps" keyword (Yauheni Kaliuta) [1747615] - [tools] bpftool: reset errno for "bpftool cgroup tree" (Yauheni Kaliuta) [1747615] - [tools] bpftool: remove blank line after btf_id when listing programs (Yauheni Kaliuta) [1747615] - [net] bpf: reserve flags in bpf_skb_net_shrink (Yauheni Kaliuta) [1747615] - [tools] bpf: fix whitespace for ENCAP_L2 defines in bpf.h (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: bring back (void *) cast to set_ipv4_csum in test_tc_tunnel (Yauheni Kaliuta) [1747615] - [tools] selftests/btf: add VAR and DATASEC case for dedup tests (Yauheni Kaliuta) [1747615] - [tools] btf: add support for VAR and DATASEC in btf_dedup() (Yauheni Kaliuta) [1747615] - [kernel] bpf: refactor "check_reg_arg" to eliminate code redundancy (Yauheni Kaliuta) [1747615] - [kernel] bpf: factor out reg and stack slot propagation into "propagate_liveness_reg" (Yauheni Kaliuta) [1747615] - [kernel] bpf: refactor propagate_liveness to eliminate code redundance (Yauheni Kaliuta) [1747615] - [kernel] bpf: refactor propagate_liveness to eliminate duplicated for loop (Yauheni Kaliuta) [1747615] - [netdrv] netdevsim: move sdev specific bpf debugfs files to sdev dir (Yauheni Kaliuta) [1747615] - [kernel] bpf: Fix distinct pointer types warning for ARCH=i386 (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: C based test for sysctl and strtoX (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test bpf_strtol and bpf_strtoul helpers (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test ARG_PTR_TO_LONG arg type (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Add sysctl and strtoX helpers to bpf_helpers.h (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_strtol and bpf_strtoul helpers (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce ARG_PTR_TO_{INT,LONG} arg types (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test file_pos field in bpf_sysctl ctx (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test bpf_sysctl_{get, set}_new_value helpers (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test sysctl_get_current_value helper (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test bpf_sysctl_get_name helper (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test BPF_CGROUP_SYSCTL (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test sysctl section name (Yauheni Kaliuta) [1747615] - [tools] libbpf: Support sysctl hook (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747615] - [kernel] bpf: Add file_pos field to bpf_sysctl ctx (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_sysctl_{get, set}_new_value helpers (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_sysctl_get_current_value helper (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_sysctl_get_name helper (Yauheni Kaliuta) [1747615] - [kernel] bpf: Sysctl hook (Yauheni Kaliuta) [1747615] - [kernel] bpf: Add base proto function for cgroup-bpf programs (Yauheni Kaliuta) [1747615] - [net] bpf: explicitly prohibit ctx_{in, out} in non-skb BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] selftests_bpf: add L2 encap to test_tc_tunnel (Yauheni Kaliuta) [1747615] - [tools] bpf: sync bpf.h to tools/ for BPF_F_ADJ_ROOM_ENCAP_L2 (Yauheni Kaliuta) [1747615] - [net] bpf: add layer 2 encap support to bpf_skb_adjust_room (Yauheni Kaliuta) [1747615] - [tools] selftests_bpf: extend test_tc_tunnel for UDP encap (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix missing bpf_check_uarg_tail_zero in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [s390] Convert IS_ENABLED uses to __is_defined (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: add selftest for __sk_buff context in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] libbpf: add support for ctx_{size, }_{in, out} in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [net] bpf: support input __sk_buff context in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] bpftool: show btf id in program information (Yauheni Kaliuta) [1747615] - [tools] libbpf: Fix build with gcc-8 (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix crash in XDP socket part with new larger BPF_LOG_BUF_SIZE (Yauheni Kaliuta) [1747615] - [tools] bpf, bpftool: fix a few ubsan warnings (Yauheni Kaliuta) [1747615] - [tools] bpf, selftest: add test cases for BTF Var and DataSec (Yauheni Kaliuta) [1747615] - [tools] bpf, selftest: test {rd, wr}only flags and direct value access (Yauheni Kaliuta) [1747615] - [tools] bpf: bpftool support for dumping data/bss/rodata sections (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: add support for BTF Var and DataSec (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: support global data/bss/rodata sections (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: refactor relocation handling (Yauheni Kaliuta) [1747615] - [tools] bpf: sync {btf, bpf}.h uapi header from tools infrastructure (Yauheni Kaliuta) [1747615] - [kernel] bpf: allow for key-less BTF in array map (Yauheni Kaliuta) [1747615] - [kernel] bpf: kernel side support for BTF Var and DataSec (Yauheni Kaliuta) [1747615] - [documentation] bpf: add specification for BTF Var and DataSec kinds (Yauheni Kaliuta) [1747615] - [kernel] bpf: allow . char as part of the object name (Yauheni Kaliuta) [1747615] - [kernel] bpf: add syscall side map freeze support (Yauheni Kaliuta) [1747615] - [kernel] bpf: add program side {rd, wr}only support for maps (Yauheni Kaliuta) [1747615] - [kernel] bpf: do not retain flags that are not tied to map lifetime (Yauheni Kaliuta) [1747615] - [kernel] bpf: implement lookup-free direct value access for maps (Yauheni Kaliuta) [1747615] - [net] ipv6: Add neighbor helpers that use the ipv6 stub (Yauheni Kaliuta) [1747615] - [tools] libbpf: Ignore -Wformat-nonliteral warning (Yauheni Kaliuta) [1747615] - [kernel] bpf: Add missed newline in verifier verbose log (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test unbounded var_off stack access (Yauheni Kaliuta) [1747615] - [kernel] bpf: Sanity check max value for var_off stack access (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test indirect var_off stack access in unpriv mode (Yauheni Kaliuta) [1747615] - [kernel] bpf: Reject indirect var_off stack access in unpriv mode (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test indirect var_off stack access in raw mode (Yauheni Kaliuta) [1747615] - [kernel] bpf: Reject indirect var_off stack access in raw mode (Yauheni Kaliuta) [1747615] - [samples] bpf: fix build with new clang (Yauheni Kaliuta) [1747615] - [samples] selftests/bpf: add NULL check for ksym_search (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: ksym_search won't check symbols exists (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: synthetic tests to push verifier limits (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add few verifier scale tests (Yauheni Kaliuta) [1747615] - [tools] libbpf: teach libbpf about log_level bit 2 (Yauheni Kaliuta) [1747615] - [kernel] bpf: increase verifier log limit (Yauheni Kaliuta) [1747615] - [kernel] bpf: increase complexity limit and maximum program size (Yauheni Kaliuta) [1747615] - [kernel] bpf: verbose jump offset overflow check (Yauheni Kaliuta) [1747615] - [kernel] bpf: convert temp arrays to kvcalloc (Yauheni Kaliuta) [1747615] - [kernel] bpf: improve verification speed by not remarking live_read (Yauheni Kaliuta) [1747615] - [kernel] bpf: improve verification speed by droping states (Yauheni Kaliuta) [1747615] - [kernel] bpf: add verifier stats and log_level bit 2 (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: remove duplicate .flags initialization in ctx_skb.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: fix -Wformat-invalid-specifier for bpf_obj_id.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: fix -Wformat-security warning for flow_dissector_load.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: tests.h should depend on .c files, not the output (Yauheni Kaliuta) [1747615] - [tools] bpf: add bpffs multi-dimensional array tests in test_btf (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test variable offset stack access (Yauheni Kaliuta) [1747615] - [kernel] bpf: Support variable offset stack access from helpers (Yauheni Kaliuta) [1747615] - [net] ipv6: Move ipv6 stubs to a separate header file (Yauheni Kaliuta) [1747615] - [tools] bpf: generate pkg-config file for libbpf (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: don't depend on hardcoded perf sample_freq (Yauheni Kaliuta) [1747615] - [tools] bpf: test_tc_tunnel.sh needs reverse path filtering disabled (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: tc-bpf flow shaping with EDT (Yauheni Kaliuta) [1747615] - [net] bpf: make bpf_skb_ecn_set_ce callable from BPF_PROG_TYPE_SCHED_ACT (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: convert bpf tunnel test to encap modes (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: convert bpf tunnel test to BPF_F_ADJ_ROOM_FIXED_GSO (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: convert bpf tunnel test to BPF_ADJ_ROOM_MAC (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools (Yauheni Kaliuta) [1747615] - [net] bpf: add bpf_skb_adjust_room encap flags (Yauheni Kaliuta) [1747615] - [net] bpf: add bpf_skb_adjust_room flag BPF_F_ADJ_ROOM_FIXED_GSO (Yauheni Kaliuta) [1747615] - [net] bpf: add bpf_skb_adjust_room mode BPF_ADJ_ROOM_MAC (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: extend bpf tunnel test with tso (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: extend bpf tunnel test with gre (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: expand bpf tunnel test to ipv6 (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: expand bpf tunnel test with decap (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: bpf tunnel encap test (Yauheni Kaliuta) [1747615] - [net] bpf: in bpf_skb_adjust_room avoid copy in tx fast path (Yauheni Kaliuta) [1747615] - [samples] bpf: add xdp_sample_pkts to .gitignore (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add tests for bpf_tcp_check_syncookie and bpf_skc_lookup_tcp (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: test references to sock_common (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: allow specifying helper for BPF_SK_LOOKUP (Yauheni Kaliuta) [1747615] - [tools] update uapi/linux/bpf.h (Yauheni Kaliuta) [1747615] - [net] bpf: add helper to check for a valid SYN cookie (Yauheni Kaliuta) [1747615] - [net] bpf: add skc_lookup_tcp helper (Yauheni Kaliuta) [1747615] - [kernel] bpf: allow helpers to return PTR_TO_SOCK_COMMON (Yauheni Kaliuta) [1747615] - [kernel] bpf: track references based on is_acquire_func (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Add arm target register definitions (Yauheni Kaliuta) [1747615] - [documentation] bpf, doc: add RISC-V JIT to BPF documentation (Yauheni Kaliuta) [1747615] - [uapi] bpf: fix documentation for eBPF helpers (Yauheni Kaliuta) [1747615] - [uapi] bpf: add documentation for helpers bpf_spin_lock(), bpf_spin_unlock() (Yauheni Kaliuta) [1747615]- [perf] perf: Add CCPI2 PMU support in ThunderX2 UNCORE driver (Robert Richter) [1726054] - [documentation] documentation: perf: Update documentation for ThunderX2 PMU uncore driver (Robert Richter) [1726054] - [scsi] lpfc: Update lpfc version to 12.6.0.2 (Dick Kennedy) [1771674] - [scsi] lpfc: revise nvme max queues to be hdwq count (Dick Kennedy) [1771674] - [scsi] lpfc: Initialize cpu_map for not present cpus (Dick Kennedy) [1771674] - [scsi] lpfc: fix inlining of lpfc_sli4_cleanup_poll_list() (Dick Kennedy) [1771674] - [scsi] lpfc: fix: coverity: lpfc_cmpl_els_rsp(): Null pointer dereferences (Dick Kennedy) [1771674] - [scsi] lpfc: fix: coverity: lpfc_get_scsi_buf_s3(): Null pointer dereferences (Dick Kennedy) [1771674] - [scsi] lpfc: Fix lpfc_cpumask_of_node_init() (Dick Kennedy) [1771674] - [scsi] lpfc: Fix a kernel warning triggered by lpfc_sli4_enable_intr() (Dick Kennedy) [1771674] - [scsi] lpfc: Fix a kernel warning triggered by lpfc_get_sgl_per_hdwq() (Dick Kennedy) [1771674] - [scsi] lpfc: Update lpfc version to 12.6.0.1 (Dick Kennedy) [1771674] - [scsi] lpfc: Add enablement of multiple adapter dumps (Dick Kennedy) [1771674] - [scsi] lpfc: Change default IRQ model on AMD architectures (Dick Kennedy) [1771674] - [scsi] lpfc: Add registration for CPU Offline/Online events (Dick Kennedy) [1771674] - [scsi] lpfc: Clarify FAWNN error message (Dick Kennedy) [1771674] - [scsi] lpfc: Sync with FC-NVMe-2 SLER change to require Conf with SLER (Dick Kennedy) [1771674] - [scsi] lpfc: Fix dynamic fw log enablement check (Dick Kennedy) [1771674] - [scsi] lpfc: Fix unexpected error messages during RSCN handling (Dick Kennedy) [1771674] - [scsi] lpfc: Fix kernel crash at lpfc_nvme_info_show during remote port bounce (Dick Kennedy) [1771674] - [scsi] lpfc: Fix configuration of BB credit recovery in service parameters (Dick Kennedy) [1771674] - [scsi] lpfc: Fix duplicate unreg_rpi error in port offline flow (Dick Kennedy) [1771674] - [infiniband] ib/srp: Add missing new line after displaying fast_io_fail_tmo param (Kamal Heib) [1678461 1720899] - [net] sunrpc: The RDMA back channel mustn't disappear while requests are outstanding (Kamal Heib) [1720899] - [infiniband] rdma/nldev: Skip counter if port doesn't match (Kamal Heib) [1720899] - [rdma] uverbs: Prevent potential underflow (Kamal Heib) [1720899] - [infiniband] ib/core: Use rdma_read_gid_l2_fields to compare GID L2 fields (Kamal Heib) [1720899] - [infiniband] rdma/siw: free siw_base_qp in kref release routine (Kamal Heib) [1720899] - [infiniband] rdma/iwcm: move iw_rem_ref() calls out of spinlock (Kamal Heib) [1720899] - [infiniband] ib/core: Fix wrong iterating on ports (Kamal Heib) [1720899] - [infiniband] rdma/nldev: Reshuffle the code to avoid need to rebind QP in error path (Kamal Heib) [1720899] - [infiniband] rdma/cm: Fix memory leak in cm_add/remove_one (Kamal Heib) [1720899] - [infiniband] rdma/core: Fix an error handling path in 'res_get_common_doit()' (Kamal Heib) [1720899] - [infiniband] rdma/iwcm: Fix a lock inversion issue (Kamal Heib) [1720899] - [infiniband] rdma/siw: Fix serialization issue in write_space() (Kamal Heib) [1720899] - [infiniband] rdma/vmw_pvrdma: Free SRQ only once (Kamal Heib) [1757294 1720899] - [infiniband] rdma: Fix double-free in srq creation error flow (Kamal Heib) [1720899] - [infiniband] rdma/siw: Fix page address mapping in TX path (Kamal Heib) [1720899] - [infiniband] rdma/cma: Fix false error message (Kamal Heib) [1720899] - [infiniband] rdma/{cxgb3, cxgb4, i40iw}: Remove common code (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/core: Fix use after free and refcnt leak on ndev in_device in iwarp_query_port (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/core: Add common iWARP query port (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/i40iw: Associate ibdev to netdev before IB device registration (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/cxgb3: Use ib_device_set_netdev() (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma: Introduce ib_port_phys_state enum (Kamal Heib) [1760097 1745655 1720899] - [sched] topology: Improve load balancing on AMD EPYC systems (Phil Auld) [1757535] - [netdrv] broadcom: Use dev_get_drvdata (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add a new BNXT_FW_RESET_STATE_POLL_FW_DOWN state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.100 (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Increase timeout for HWRM_DBG_COREDUMP_XX commands (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Don't proceed in .ndo_set_rx_mode() when device is not in open state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix compile error regression with CONFIG_BNXT_SRIOV not set (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add FW fatal devlink_health_reporter (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add bnxt_fw_exception() to handle fatal firmware errors (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add RESET_FW state logic to bnxt_fw_reset_task() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Do not send firmware messages if firmware is in error state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Retain user settings on a VF after RESET_NOTIFY event (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add devlink health reset reporter (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle firmware reset (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle RESET_NOTIFY async event from firmware (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add new FW devlink_health_reporter (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add BNXT_STATE_IN_FW_RESET state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Enable health monitoring (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Pre-map the firmware health monitoring registers (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Discover firmware error recovery capabilities (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle firmware reset status during IF_UP (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Register buffers for VFs before reserving resources (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor bnxt_sriov_enable() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Prepare bnxt_init_one() to be called multiple times (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Suppress all error messages in hwrm_do_send_msg() in silent mode (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Simplify error checking in the SR-IOV message forwarding functions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Convert error code in firmware message response to standard code (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Remove the -1 error return code from bnxt_hwrm_do_send_msg() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Use a common function to print the same ethtool -f error message (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix allocation of zero statistics block size regression (Jonathan Toppins) [1724766] - [netdrv] bnxt: no need to check return value of debugfs_create functions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add PCI IDs for 57500 series NPAR devices (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Support all variants of the 5750X chip family (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor bnxt_init_one() and turn on TPA support on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Support TPA counters on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Allocate the larger per-ring statistics block for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor ethtool ring statistics logic (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add hardware GRO setup function for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add TPA ID mapping logic for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add fast path logic for TPA on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Set TPA GRO mode flags on 57500 chips properly (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor tunneled hardware GRO logic (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle standalone RX_AGG completions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Expand bnxt_tpa_info struct to support 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor TPA logic (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add TPA structure definitions for BCM57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.89 (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Suppress HWRM errors for HWRM_NVM_GET_VARIABLE command (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix to include flow direction in L2 key (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Use correct src_fid to determine direction of the flow (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix handling FRAG_ERR when NVM_INSTALL_UPDATE cmd fails (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Improve RX doorbell sequence (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix VNIC clearing logic for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix VNIC accounting when enabling aRFS on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add page_pool_destroy() during RX ring cleanup (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: add page_pool support (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: optimized XDP_REDIRECT support (Jonathan Toppins) [1724766 1669220] - [netdrv] bnxt_en: Refactor __bnxt_xmit_xdp() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: rename some xdp functions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Device serial number is supported only for PFs (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add support for aRFS on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Query firmware capability to support aRFS on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Separate RDMA MR/AH context allocation (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: read the clause type from the PHY ID (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Read package version from firmware (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Check new firmware capability to display extended stats (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add support for PCIe statistics (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor bnxt_alloc_stats() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Update firmware interface to 1.10.0.69 (Jonathan Toppins) [1724766] - [netdrv] bnxt: remove ndo_get_port_parent_id implementation for physical ports (Jonathan Toppins) [1724766] - [netdrv] bnxt: pass switch ID through devlink_port_attrs_set() (Jonathan Toppins) [1724766] - [netdrv] bnxt: move bp->switch_id initialization to PF probe (Jonathan Toppins) [1724766] - [netdrv] bnxt: remove ndo_get_phys_port_name implementation (Jonathan Toppins) [1724766] - [netdrv] bnxt: implement ndo_get_devlink_port (Jonathan Toppins) [1724766] - [netdrv] bnxt: Implement ndo_get_port_parent_id() (Jonathan Toppins) [1724766] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix firmware signaled resource change logic in open (Jonathan Toppins) [1724766] - [netdrv] bnx2x: Mark expected switch fall-thoughs (Jonathan Toppins) [1724766] - [netdrv] bnx2x: Mark expected switch fall-throughs (Jonathan Toppins) [1724766] - [tools] selftests: kvm: vmx_dirty_log_test: skip the test when VMX is not supported (Vitaly Kuznetsov) [1771575] - [tools] selftests: kvm: consolidate VMX support checks (Vitaly Kuznetsov) [1771575] - [tools] selftests: kvm: vmx_set_nested_state_test: don't check for VMX support twice (Vitaly Kuznetsov) [1771575] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 321 (Stefano Garzarella) [1769904] - [net] vsock: Send reset control packet when socket is partially bound (Stefano Garzarella) [1769904] - [net] vsock/virtio: fix sock refcnt holding during the shutdown (Stefano Garzarella) [1769855] - [kernel] vsock/virtio: remove unused 'work' field from 'struct virtio_vsock_pkt' (Stefano Garzarella) [1769855] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 482 (Stefano Garzarella) [1769855] - [net] vsock/virtio: set SOCK_DONE on peer shutdown (Stefano Garzarella) [1769855] - [net] vsock/virtio: discard packets if credit is not respected (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: send a credit update when buffer size is changed (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: a better comment on credit update (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: fix locking in virtio_transport_inc_tx_pkt() (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: reduce credit update messages (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: change the maximum packet size allowed (Stefano Garzarella) [1679971] - [vhost] vsock: split packets to send using multiple buffers (Stefano Garzarella) [1679971] - [net] vsock/virtio: limit the memory used per-socket (Stefano Garzarella) [1769744] - [net] vsock/virtio: free packets during the socket release (Stefano Garzarella) [1769744] - [net] vsock: Fix a lockdep warning in __vsock_release() (Stefano Garzarella) [1769714] - [net] vsock: correct removal of socket from the list (Stefano Garzarella) [1769714] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Stefano Garzarella) [1769714] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 321 (Stefano Garzarella) [1769714] - [net] Fix ERROR:do not initialise statics to 0 in af_vsock.c (Stefano Garzarella) [1769714] - [net] vsock: bind to random port for VMADDR_PORT_ANY (Stefano Garzarella) [1769714] - [tools] tc-testing: added tests with cookie for conntrack TC action (Ivan Vecera) [1739606] - [net] cls_bpf: fix NULL deref on offload filter removal (Ivan Vecera) [1739606] - [tools] tc-testing: fixed two failing pedit tests (Ivan Vecera) [1739606] - [tools] tc-testing: implement tests for new fast_init action flag (Ivan Vecera) [1739606] - [net] sched: update action implementations to support flags (Ivan Vecera) [1739606] - [net] sched: use temporary variable for actions indexes (Ivan Vecera) [1739606] - [net] sched: extend TCA_ACT space with TCA_ACT_FLAGS (Ivan Vecera) [1739606] - [net] sched: modify stats helper functions to support regular stats (Ivan Vecera) [1739606] - [net] sched: don't expose action qstats to skb_tc_reinsert() (Ivan Vecera) [1739606] - [net] sched: extract qstats update code into functions (Ivan Vecera) [1739606] - [net] sched: extract bstats update code into function (Ivan Vecera) [1739606] - [net] sched: extract common action counters update code into function (Ivan Vecera) [1739606] - [tools] tc-testing: list required kernel options for act_ct action (Ivan Vecera) [1739606] - [net] fq_codel: do not include (Ivan Vecera) [1739606] - [net] sch_generic: Use pfifo_fast as fallback scheduler for CAN hardware (Ivan Vecera) [1739606] - [net] sched: taprio: fix -Wmissing-prototypes warnings (Ivan Vecera) [1739606] - [net] sched: act_police: re-use tcf_tm_dump() (Ivan Vecera) [1739606] - [tools] tc-testing: updated pedit TDC tests (Ivan Vecera) [1739606] - [net] sched: Avoid using yield() in a busy waiting loop (Ivan Vecera) [1739606] - [tools] tc-testing: updated pedit test cases (Ivan Vecera) [1739606] - [net] sched: etf: Fix ordering of packets with same txtime (Ivan Vecera) [1739606] - [tools] tc-testing: updated pedit test cases (Ivan Vecera) [1739606] - [net] taprio: Fix returning EINVAL when configuring without flags (Ivan Vecera) [1739606] - [net] net_sched: fix backward compatibility for TCA_ACT_KIND (Ivan Vecera) [1739606] - [net] net_sched: fix backward compatibility for TCA_KIND (Ivan Vecera) [1739606] - [net] sched: Set default of CONFIG_NET_TC_SKB_EXT to N (Ivan Vecera) [1739606] - [net] sch_netem: fix rcu splat in netem_enqueue() (Ivan Vecera) [1739606] - [net] net_sched: remove need_resched() from qdisc_run() (Ivan Vecera) [1739606] - [net] sched: cbs: Avoid division by zero when calculating the port rate (Ivan Vecera) [1739606] - [net] sched: taprio: Avoid division by zero on invalid link speed (Ivan Vecera) [1739606] - [net] sched: taprio: Fix potential integer overflow in taprio_set_picos_per_byte (Ivan Vecera) [1739606] - [net] sched: cbs: Fix not adding cbs instance to list (Ivan Vecera) [1739606] - [net] Fix Kconfig indentation (Ivan Vecera) [1739606] - [net] net_sched: add policy validation for action attributes (Ivan Vecera) [1739606] - [net] net_sched: add max len check for TCA_KIND (Ivan Vecera) [1739606] - [net] taprio: Add support for hardware offloading (Ivan Vecera) [1739606] - [net] sched: use get_dev() action API in flow_action infra (Ivan Vecera) [1739606] - [net] sched: take reference to psample group in flow_action infra (Ivan Vecera) [1739606] - [net] sched: extend flow_action_entry with destructor (Ivan Vecera) [1739606] - [net] sch_hhf: ensure quantum and hhf_non_hh_weight are non-zero (Ivan Vecera) [1739606] - [net] net_sched: check cops->tcf_block in tc_bind_tclass() (Ivan Vecera) [1739606] - [net] sched: fix reordering issues (Ivan Vecera) [1739606] - [net] net_sched: act_police: add 2 new attributes to support police 64bit rate and peakrate (Ivan Vecera) [1739606] - [net] openvswitch: Set OvS recirc_id from tc chain index (Ivan Vecera) [1739606] - [net] sk_buff: drop all skb extensions on free and skb scrubbing (Ivan Vecera) [1739606] - [net] minor cleanup in skb_ext_add() (Ivan Vecera) [1739606] - [include] net: drop the unused helper skb_ext_get() (Ivan Vecera) [1739606] - [net] fix possible user-after-free in skb_ext_add() (Ivan Vecera) [1739606] - [net] sk_buff: add skb extension infrastructure (Ivan Vecera) [1739606] - [net] sched: cbs: remove redundant assignment to variable port_rate (Ivan Vecera) [1739606] - [tools] tc-testing: don't hardcode 'ip' in nsPlugin.py (Ivan Vecera) [1739606] - [net] sched: cbs: Set default link speed to 10 Mbps in cbs_set_port_rate (Ivan Vecera) [1739606] - [net] taprio: Set default link speed to 10 Mbps in taprio_set_picos_per_byte (Ivan Vecera) [1739606] - [net] taprio: Fix kernel panic in taprio_destroy (Ivan Vecera) [1739606] - [netdrv] mlx5e: Move local var definition into ifdef block (Ivan Vecera) [1739606] - [net] sched: cls_matchall: cleanup flow_action before deallocating (Ivan Vecera) [1739606] - [net] sched: act_vlan: implement stats_update callback (Ivan Vecera) [1739606] - [net] sched: act_sample: fix psample group handling on overwrite (Ivan Vecera) [1739606] - [net] sched: flower: don't take rtnl lock for cls hw offloads API (Ivan Vecera) [1739606] - [net] sched: copy tunnel info when setting flow_action entry->tunnel (Ivan Vecera) [1739606] - [net] sched: take reference to action dev before calling offloads (Ivan Vecera) [1739606] - [net] sched: take rtnl lock in tc_setup_flow_action() (Ivan Vecera) [1739606] - [net] sched: conditionally obtain rtnl lock in cls hw offloads API (Ivan Vecera) [1739606] - [net] sched: add API for registering unlocked offload block callbacks (Ivan Vecera) [1739606] - [net] sched: notify classifier on successful offload add/delete (Ivan Vecera) [1739606] - [net] sched: refactor block offloads counter usage (Ivan Vecera) [1739606] - [net] sched: change tcf block offload counter type to atomic_t (Ivan Vecera) [1739606] - [net] sched: protect block offload-related fields with rw_semaphore (Ivan Vecera) [1739606] - [net] net_sched: fix a NULL pointer deref in ipt action (Ivan Vecera) [1739606] - [tools] tc-testing: concurrency: wrap piped rule update commands (Ivan Vecera) [1739606] - [tools] tc-testing: use dedicated DUMMY interface name for dummy dev (Ivan Vecera) [1739606] - [net] flow_offload: convert block_ing_cb_list to regular list type (Ivan Vecera) [1739606] - [netdrv] sched: use major priority number as hardware priority (Ivan Vecera) [1739606] - [tools] tc-testing: added tdc tests for matchall filter (Ivan Vecera) [1739606] - [net] taprio: remove unused variable 'entry_list_policy' (Ivan Vecera) [1739606] - [tools] tc-testing: updated skbedit action tests with batch create/delete (Ivan Vecera) [1739606] - [net] sched: update skbedit action for batched events operations (Ivan Vecera) [1739606] - [net] fq_codel: remove set but not used variables 'prev_ecn_mark' and 'prev_drop_count' (Ivan Vecera) [1739606] - [net] flow_offload: support get multi-subsystem block (Ivan Vecera) [1739606] - [net] flow_offload: move tc indirect block to flow offload (Ivan Vecera) [1739606] - [net] cls_api: add flow_indr_block_call function (Ivan Vecera) [1739606] - [net] cls_api: remove the tcf_block cache (Ivan Vecera) [1739606] - [net] cls_api: modify the tc_indr_block_ing_cmd parameters. (Ivan Vecera) [1739606] - [net] sched: sch_taprio: fix memleak in error path for sched list parse (Ivan Vecera) [1739606] - [net] fq_codel: Kill useless per-flow dropped statistic (Ivan Vecera) [1739606] - [net] Increase fq_codel count in the bulk dropper (Ivan Vecera) [1739606] - [include] sched: sample: allow accessing psample_group with rtnl (Ivan Vecera) [1739606] - [tools] tc-testing: updated vlan action tests with batch create/delete (Ivan Vecera) [1739606] - [net] sched: update vlan action for batched events operations (Ivan Vecera) [1739606] - [tools] tc-testing: Clarify the use of tdc's -d option (Ivan Vecera) [1739606] - [net] sched: Fix a possible null-pointer dereference in dequeue_func() (Ivan Vecera) [1739606] - [tools] tc-testing: added tdc tests for [b|p]fifo qdisc (Ivan Vecera) [1739606] - [net] ife: error out when nla attributes are empty (Ivan Vecera) [1739606] - [net] sched: verify that q!=NULL before setting q->flags (Ivan Vecera) [1739606] - [net] net_sched: unset TCQ_F_CAN_BYPASS when adding filters (Ivan Vecera) [1739606] - [net] fix: taprio: Change type of txtime-delay parameter to u32 (Ivan Vecera) [1739606] - [tools] tc-tests: updated skbedit tests (Ivan Vecera) [1739606] - [include] pkt_sched: Include const.h (Ivan Vecera) [1739606] - [tools] tc-testing: introduce scapyPlugin for basic traffic (Ivan Vecera) [1739606] - [tools] tc-testing: Allow tdc plugins to see test case data (Ivan Vecera) [1739606] - [tools] tc-testing: added tdc tests for prio qdisc (Ivan Vecera) [1739606] - [tools] tc-testing: updated mirred action tests with batch create/delete (Ivan Vecera) [1739606] - [net] sched: update mirred action for batched events operations (Ivan Vecera) [1739606] - [net] sched: em_ipt: add support for addrtype matching (Ivan Vecera) [1739606] - [net] sched: em_ipt: keep the user-specified nfproto and dump it (Ivan Vecera) [1739606] - [net] sched: em_ipt: set the family based on the packet if it's unspecified (Ivan Vecera) [1739606] - [net] sched: em_ipt: match only on ip/ipv6 traffic (Ivan Vecera) [1739606] - [net] taprio: Adjust timestamps for TCP packets (Ivan Vecera) [1739606] - [net] taprio: make clock reference conversions easier (Ivan Vecera) [1739606] - [net] taprio: Add support for txtime-assist mode (Ivan Vecera) [1739606] - [net] taprio: Remove inline directive (Ivan Vecera) [1739606] - [net] taprio: calculate cycle_time when schedule is installed (Ivan Vecera) [1739606] - [net] etf: Add skip_sock_check (Ivan Vecera) [1739606] - [include] etf: Don't use BIT() in UAPI headers. (Ivan Vecera) [1739606] - [tools] tc-testing: add ingress qdisc tests (Ivan Vecera) [1739606] - [tools] tc-testing: Restore original behaviour for namespaces in tdc (Ivan Vecera) [1739606] - [include] net: sched: act_ctinfo: tidy UAPI definition (Ivan Vecera) [1739606] - [include] act_ctinfo: Don't use BIT() in UAPI headers. (Ivan Vecera) [1739606] - [net] sched: cls_matchall: allow to delete filter (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: fix policy validation (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: fix action creation (Ivan Vecera) [1739606] - [tools] tc-tests: updated skbedit tests (Ivan Vecera) [1739606] - [tools] tc-tests: added path to ip command in tdc (Ivan Vecera) [1739606] - [net] sched: remove NET_CLS_IND config option (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: use extack error reporting (Ivan Vecera) [1739606] - [net] sched: ingress: set 'unlocked' flag for clsact Qdisc ops (Ivan Vecera) [1739606] - [net] sched: ingress: set 'unlocked' flag for Qdisc ops (Ivan Vecera) [1739606] - [tools] tc-tests: updated fw with bind actions by reference use cases (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: minor size optimisation (Ivan Vecera) [1739606] - [net] flow_offload: use struct_size() in kzalloc() (Ivan Vecera) [1739606] - [net] sched: don't use tc_action->order during action dump (Ivan Vecera) [1739606] - [net] sch_htb: redefine htb qdisc overlimits (Ivan Vecera) [1739606] - [tools] selftests: tc-testing: Add pedit tests (Ivan Vecera) [1739606] - [net] sched: add ingress mirred action to hardware IR (Ivan Vecera) [1757520] - [include] net: tc_act: add helpers to detect ingress mirred actions (Ivan Vecera) [1757520] - [net] sched: add skbedit of ptype action to hardware IR (Ivan Vecera) [1757520] - [include] net: tc_act: add skbedit_ptype helper functions (Ivan Vecera) [1757520] - [net] openvswitch: load and reference the NAT helper. (Flavio Leitner) [1752970] - [net] openvswitch: load NAT helper (Flavio Leitner) [1752970] - [net] netfilter: nf_nat: register NAT helpers. (Flavio Leitner) [1752970] - [net] netfilter: add API to manage NAT helpers. (Flavio Leitner) [1752970] - [net] netfilter: use macros to create module aliases. (Flavio Leitner) [1752970] - [net] xfrm: remove a duplicated assignment (Sabrina Dubroca) [1760002] - [net] xfrm: remove empty xfrmi_init_net (Sabrina Dubroca) [1760002] - [net] xfrm: remove unneeded export_symbols (Sabrina Dubroca) [1760002] - [include] xfrm: clean an indentation issue, remove a space (Sabrina Dubroca) [1760002] - [net] xfrm6: remove BUG_ON from xfrm6_dst_ifdown (Sabrina Dubroca) [1760002] - [net] xfrm: policy: add missing indentation (Sabrina Dubroca) [1760002] - [net] xfrm: Fix bucket count reported to userspace (Sabrina Dubroca) [1760002] - [net] xfrm: use complete IPv6 addresses for hash (Sabrina Dubroca) [1760002] - [net] xfrm: use correct size to initialise sp->ovec (Sabrina Dubroca) [1760002] - [net] xfrm: allow driver to quietly refuse offload (Sabrina Dubroca) [1760002] - [net] esp: remove redundant define esph (Sabrina Dubroca) [1760002] - [net] ip6_vti: simplify stats handling in vti6_xmit (Sabrina Dubroca) [1760002] - [net] xfrm: fix 'passing zero to ERR_PTR()' warning (Sabrina Dubroca) [1760002] - [net] xfrm: remove blank lines at EOF (Sabrina Dubroca) [1760002] - [net] xfrm: don't check offload_handle for nonzero (Sabrina Dubroca) [1760002] - [net] ipv6: xfrm: use 64-bit timestamps (Sabrina Dubroca) [1760002] - [net] devlink: Introduce PCI VF port flavour and port attribute (Petr Oros) [1761495] - [net] devlink: Introduce PCI PF port flavour and port attribute (Petr Oros) [1761495] - [net] devlink: Return physical port fields only for applicable port flavours (Petr Oros) [1761495] - [net] devlink: Refactor physical port attributes (Petr Oros) [1761495] - [net] ipv4: fix race condition between route lookup and invalidation (Guillaume Nault) [1765639] - [net] add {READ|WRITE}_ONCE() annotations on ->rskq_accept_head (Guillaume Nault) [1765639] - [net] ipv4/icmp: fix rt dst dev null pointer dereference (Guillaume Nault) [1765639] - [net] ipip: validate header length in ipip_tunnel_xmit (Guillaume Nault) [1765639] - [net] ipv4: Use return value of inet_iif() for __raw_v4_lookup in the while loop (Guillaume Nault) [1765639] - [net] ipv4: Fix raw socket lookup for local traffic (Guillaume Nault) [1765639] - [net] ipv4: Return error for RTA_VIA attribute (Guillaume Nault) [1765639] - [net] ipmr: fix unresolved entry dumps (Guillaume Nault) [1765639] - [net] ipvs: don't ignore errors in case refcounting ip_vs module fails (Davide Caratti) [1687094] - [net] ipvs: fix tinfo memory leak in start_sync_thread (Davide Caratti) [1687094] - [net] tcp: fix a possible lockdep splat in tcp_done() (Marcelo Leitner) [1764654] - [net] tcp: add rcu protection around tp->fastopen_rsk (Marcelo Leitner) [1764654] - [net] tcp: annotate lockless access to tcp_memory_pressure (Marcelo Leitner) [1764654] - [net] tcp: fix tcp_ecn_withdraw_cwr() to clear TCP_ECN_QUEUE_CWR (Marcelo Leitner) [1764654] - [net] tcp: inherit timestamp on mtu probe (Marcelo Leitner) [1764654] - [net] tcp: remove empty skb from write queue in error cases (Marcelo Leitner) [1764654] - [net] tcp: get rid of tcp_check_send_head() (Marcelo Leitner) [1764654] - [net] tcp: make sure EPOLLOUT wont be missed (Marcelo Leitner) [1764654] - [net] ipv4: set the tcp_min_rtt_wlen range from 0 to one day (Marcelo Leitner) [1764654] - [net] net-tcp: /proc/sys/net/ipv4/tcp_probe_interval is a u32 not int (Marcelo Leitner) [1764654] - [net] tcp: fix a race in inet_diag_dump_icsk() (Marcelo Leitner) [1764654] - [net] netfilter: nft_meta: Add NFT_META_I/OIFKIND meta type (Florian Westphal) [1763657] - [net] netfilter: nft_xfrm: use state family, not hook one (Florian Westphal) [1763654] - [net] netfilter: nf_tables: add xfrm expression (Florian Westphal) [1763654] - [net] netfilter: nf_tables: rt: allow checking if dst has xfrm attached (Florian Westphal) [1763654] - [netdrv] mlx5e: Fix unnecessary flow_block_cb_is_busy call (Ivan Vecera) [1737890] - [netdrv] nfp: flower: verify that block cb is not busy before binding (Ivan Vecera) [1737890] - [netdrv] net/mlx5e: Provide cb_list pointer when setting up tc block on rep (Ivan Vecera) [1737890] - [net] sched: Fix NULL-pointer dereference in tc_indr_block_ing_cmd() (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block structure and use it (Ivan Vecera) [1737890] - [net] flow_offload: rename tc_setup_cb_t to flow_setup_cb_t (Ivan Vecera) [1737890] - [include] flow_offload: include linux/kernel.h from flow_offload.h (Ivan Vecera) [1737890] - [net] flow_offload: remove netns parameter from flow_block_cb_alloc() (Ivan Vecera) [1737890] - [net] openvswitch: rename flow_stats to sw_flow_stats (Ivan Vecera) [1737890] - [netdrv] mlx5e: Fix unused variable warning when CONFIG_MLX5_ESWITCH is off (Ivan Vecera) [1737890] - [netdrv] net: flow_offload: rename tc_cls_flower_offload to flow_cls_offload (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_is_busy() and use it (Ivan Vecera) [1737890] - [net] sched: remove tcf block API (Ivan Vecera) [1737890] - [include] sched: use new symbol for TC kABI version (Ivan Vecera) [1737890] - [netdrv] use flow block API (Ivan Vecera) [1737890] - [net] sched: use flow block API (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_{priv, incref, decref}() (Ivan Vecera) [1737890] - [net] flow_offload: add list handling functions (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_alloc() and flow_block_cb_free() (Ivan Vecera) [1737890] - [net] flow_offload: rename TCF_BLOCK_BINDER_TYPE_* to FLOW_BLOCK_BINDER_TYPE_* (Ivan Vecera) [1737890] - [net] flow_offload: rename TC_BLOCK_{UN}BIND to FLOW_BLOCK_{UN}BIND (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_setup_simple() (Ivan Vecera) [1737890] - [net] openvswitch: free vport unless register_netdevice() succeeds (Stefano Brivio) [1765580] - [net] openvswitch: Clear the L4 portion of the key for "later" fragments. (Stefano Brivio) [1765580] - [net] openvswitch: Properly set L4 keys on "later" IP fragments (Stefano Brivio) [1765580] - [net] openvswitch: Print error when ovs_execute_actions() fails (Stefano Brivio) [1765580] - [net] openvswitch: do not free vport if register_netdevice() is failed. (Stefano Brivio) [1765580] - [net] xfrm: policy: remove pcpu policy cache (Xin Long) [1743519] - [net] netem: correct the parent's backlog when corrupted packet was dropped (Davide Caratti) [1764553] - [net] netem: fix error path for corrupted GSO frames (Davide Caratti) [1764553] - [net] avoid potential infinite loop in tc_ctl_action() (Davide Caratti) [1764553] - [net] act_mirred: Fix mirred_init_module error handling (Davide Caratti) [1764553] - [net] sch_dsmark: fix potential NULL deref in dsmark_init() (Davide Caratti) [1764553] - [net] sch_cbq: validate TCA_CBQ_WRROPT to avoid crash (Davide Caratti) [1764553] - [net] sched: sch_sfb: don't call qdisc_put() while holding tree lock (Davide Caratti) [1764553] - [net] sched: multiq: don't call qdisc_put() while holding tree lock (Davide Caratti) [1764553] - [net] sched: sch_htb: don't call qdisc_put() while holding tree lock (Davide Caratti) [1764553] - [net] sched: fix possible crash in tcf_action_destroy() (Davide Caratti) [1764553] - [net] sch_netem: fix a divide by zero in tabledist() (Davide Caratti) [1764553] - [net] sched: act_sample: don't push mac header on ip6gre ingress (Davide Caratti) [1764553] - [net] net_sched: let qdisc_put() accept NULL pointer (Davide Caratti) [1764553] - [net] tcp: adjust rto_base in retransmits_timed_out() (Marcelo Leitner) [1756775] - [net] tcp: better handle TCP_USER_TIMEOUT in SYN_SENT state (Marcelo Leitner) [1756775] - [include] netlink: use 48 byte ctx instead of 6 signed longs for callback (Petr Oros) [1751273] - [net] rtnetlink: skip metrics loop for dst_default_metrics (Petr Oros) [1751273] - [include] netlink: Add field to skip in-kernel notifications (Petr Oros) [1751273] - [include] netlink: Document all fields of 'struct nl_info' (Petr Oros) [1751273] - [net] ipoib: show VF broadcast address (Petr Oros) [1751273] - [net] remove empty netlink_tap_exit_net (Petr Oros) [1751273] - [net] netlink: make netlink_walk_start() void return type (Petr Oros) [1751273] - [include] net: nexthop uapi (Petr Oros) [1751273] - [net] Treat sock->sk_drops as an unsigned int when printing (Petr Oros) [1751273] - [net] fix two coding style issues (Petr Oros) [1751273] - [net] ipset: drop ipset_nest_start() and ipset_nest_end() (Petr Oros) [1751273] - [net] netlink: make nla_nest_start() add NLA_F_NESTED flag (Petr Oros) [1751273] - [net] netfilter: nf_tables: fix a missing check of nla_put_failure (Petr Oros) [1751273] - [net] ncsi: fix a missing check for nla_nest_start (Petr Oros) [1751273] - [net] genetlink: use idr_alloc_cyclic for family->id assignment (Petr Oros) [1751273] - [net] netlink: Check address length before reading groups field (Petr Oros) [1751273] - [net] core: Fix rtnetlink kernel-doc headers (Petr Oros) [1751273] - [net] rhashtable: Remove obsolete rhashtable_walk_init function (Petr Oros) [1751273] - [net] netfilter: nf_tables: use rhashtable_walk_enter instead of rhashtable_walk_init (Petr Oros) [1751273] - [net] netlink: reduce NLA_POLICY_NESTED{, _ARRAY} arguments (Petr Oros) [1751273] - [net] netlink: rename NETLINK_DUMP_STRICT_CHK -> NETLINK_GET_STRICT_CHK (Petr Oros) [1751273] - [include] netlink: replace __NLA_ENSURE implementation (Petr Oros) [1751273] - [include] netlink: fix typo in nla_parse_nested() comment (Petr Oros) [1751273] - [net] netlink: remove hash::nelems check in netlink_insert (Petr Oros) [1751273] - [net] netlink: Make groups check less stupid in netlink_bind() (Petr Oros) [1751273] - [include] genetlink: constify genl_err_attr() argument (Petr Oros) [1751273] - [net] netlink: do not store start function in netlink_cb (Petr Oros) [1751273] - [include] linux: Add skb_frag_t page_offset accessors (Petr Oros) [1757515] - [include] net: add missing documentation in linux/skbuff.h (Petr Oros) [1757515] - [net] l2tp: Fix possible NULL pointer dereference (Stefano Brivio) [1764185] - [net] l2ip: fix possible use-after-free (Stefano Brivio) [1764185] - [net] l2tp: use rcu_dereference_sk_user_data() in l2tp_udp_encap_recv() (Stefano Brivio) [1764185] - [net] l2tp: fix infoleak in l2tp_ip6_recvmsg() (Stefano Brivio) [1764185] - [net] l2tp: copy 4 more bytes to linear part if necessary (Stefano Brivio) [1764185] - [net] l2tp: fix reading optional fields of L2TPv3 (Stefano Brivio) [1764185] - [net] l2tp: remove ->recv_payload_hook (Stefano Brivio) [1764185] - [net] l2tp: don't export l2tp_session_queue_purge() (Stefano Brivio) [1764185] - [net] l2tp: remove .show from struct l2tp_tunnel (Stefano Brivio) [1764185] - [netdrv] vxlan: do not destroy fdb if register_netdevice() is failed (Stefano Brivio) [1763793] - [net] ip6erspan: remove the incorrect mtu limit for ip6erspan (Stefano Brivio) [1763286] - [net] ipv6: Handle missing host route in __ipv6_ifa_notify (Stefano Brivio) [1763286] - [net] ipv6: drop incoming packets having a v4mapped source address (Stefano Brivio) [1763286] - [net] ip6_gre: fix a dst leak in ip6erspan_tunnel_xmit (Stefano Brivio) [1763286] - [net] mld: fix memory leak in mld_del_delrec() (Stefano Brivio) [1763286] - [net] ipv6: rt6_check should return NULL if 'from' is NULL (Stefano Brivio) [1763286] - [net] ipv6_sockglue: Fix a missing-check bug in ip6_ra_control() (Stefano Brivio) [1763286] - [net] ipv6_gre: Fix GRO to work on IPv6 over GRE tap (Stefano Brivio) [1763286] - [net] ipv4: Return -ENETUNREACH if we can't create route but saddr is valid (Stefano Brivio) [1686686] - [net] netfilter: nft_connlimit: disable bh on garbage collection (Florian Westphal) [1762844] - [net] netfilter: ebtables: Fix argument order to ADD_COUNTER (Florian Westphal) [1762844] - [net] netfilter: ebtables: CONFIG_COMPAT: reject trailing data after last rule (Florian Westphal) [1762844] - [net] netfilter: ebtables: CONFIG_COMPAT: drop a bogus WARN_ON (Florian Westphal) [1762844] - [net] netfilter: bridge: set skb transport_header before entering NF_INET_PRE_ROUTING (Florian Westphal) [1762844] - [net] netfilter: ebtables: also count base chain policies (Florian Westphal) [1762844] - [net] netfilter: ebtables: compat: un-break 32bit setsockopt when no rules are present (Florian Westphal) [1762844] - [net] sctp: change sctp_prot .no_autobind with true (Xin Long) [1762625] - [net] sctp: destroy bucket if failed to bind addr (Xin Long) [1762625] - [net] sctp: remove redundant assignment when call sctp_get_port_local (Xin Long) [1762625] - [net] sctp: change return type of sctp_get_port_local (Xin Long) [1762625] - [net] sctp: Fix the link time qualifier of 'sctp_ctrlsock_exit()' (Xin Long) [1762625] - [net] sctp: fix the missing put_user when dumping transport thresholds (Xin Long) [1762625] - [net] sctp: use transport pf_retrans in sctp_do_8_2_transport_strike (Xin Long) [1762625] - [net] sctp: allow users to set ep ecn flag by sockopt (Xin Long) [1762625] - [net] sctp: allow users to set netns ecn flag with sysctl (Xin Long) [1762625] - [net] sctp: make ecn flag per netns and endpoint (Xin Long) [1762625] - [net] sctp: remove net sctp.x_enable working as a global switch (Xin Long) [1762625] - [net] sctp: add SCTP_AUTH_SUPPORTED sockopt (Xin Long) [1762625] - [net] sctp: add sctp_auth_init and sctp_auth_free (Xin Long) [1762625] - [net] sctp: use ep and asoc auth_enable properly (Xin Long) [1762625] - [net] sctp: add SCTP_ASCONF_SUPPORTED sockopt (Xin Long) [1762625] - [net] sctp: check asoc peer.asconf_capable before processing asconf (Xin Long) [1762625] - [net] sctp: not set peer.asconf_capable in sctp_association_init (Xin Long) [1762625] - [net] sctp: add asconf_enable in struct sctp_endpoint (Xin Long) [1762625] - [net] sctp: fix memleak in sctp_send_reset_streams (Xin Long) [1762625] - [net] sctp: fix the transport error_count check (Xin Long) [1762625] - [net] sched: fix corrupted L2 header with MPLS 'push' and 'pop' actions (Ivan Vecera) [1737820] - [net] avoid errors when trying to pop MLPS header on non-MPLS packets (Ivan Vecera) [1737820] - [net] netfilter: connlabels: prefer static lock initialiser (Ivan Vecera) [1737820] - [net] sched: include mpls actions in hardware intermediate representation (Ivan Vecera) [1737820] - [net] sched: Make NET_ACT_CT depends on NF_NAT (Ivan Vecera) [1737820] - [tools] tc-tests: Add tc action ct tests (Ivan Vecera) [1737820] - [net] sched: cls_flower: Add matching on conntrack info (Ivan Vecera) [1737820] - [net] flow_dissector: add connection tracking dissection (Ivan Vecera) [1737820] - [net] sched: Introduce action ct (Ivan Vecera) [1737820] - [tools] tc-tests: actions: add MPLS tests (Ivan Vecera) [1737820] - [net] sched: add mpls manipulation actions to TC (Ivan Vecera) [1737820] - [net] core: add MPLS update core helper and use in OvS (Ivan Vecera) [1737820] - [net] core: move pop MPLS functionality from OvS to core helper (Ivan Vecera) [1737820] - [net] core: move push MPLS functionality from OvS to core helper (Ivan Vecera) [1737820] - [net] sched: Introduce act_ctinfo action (Ivan Vecera) [1737820] - [netdrv] mlx5e: Allow dissector meta key in tc flower (Ivan Vecera) [1762861] - [tools] selftests: tc: add ingress device matching support (Ivan Vecera) [1762861] - [net] flow_offload: implement support for meta key (Ivan Vecera) [1762861] - [net] sched: cls_flower: use flow_dissector for ingress ifindex (Ivan Vecera) [1762861] - [net] flow_dissector: add support for ingress ifindex dissection (Ivan Vecera) [1762861] - [net] udp: only do GSO if # of segs > 1 (Guillaume Nault) [1762357] - [net] udp: fix gso_segs calculations (Guillaume Nault) [1762357] - [tools] selftests: rtnetlink: add small test case with 'promote_secondaries' enabled (Petr Oros) [1759177] - [net] ipv4: fix infinite loop on secondary addr promotion (Petr Oros) [1759177] - [tools] selftests: rtnetlink: add addresses with fixed life time (Petr Oros) [1759177] - [net] ipv4: remove erroneous advancement of list pointer (Petr Oros) [1759177] - [net] ipv4: fix rcu lockdep splat due to wrong annotation (Petr Oros) [1759177] - [net] ipv4: provide __rcu annotation for ifa_list (Petr Oros) [1759177] - [drivers] use in_dev_for_each_ifa_rtnl/rcu (Petr Oros) [1759177] - [net] use new in_dev_ifa iterators (Petr Oros) [1759177] - [net] netfilter: use in_dev_for_each_ifa_rcu (Petr Oros) [1759177] - [net] devinet: use in_dev_for_each_ifa_rcu in more places (Petr Oros) [1759177] - [net] inetdevice: provide replacement iterators for in_ifaddr walk (Petr Oros) [1759177] - [fs] afs: do not send list of client addresses (Petr Oros) [1759177] - [net] sctp: add SCTP_SEND_FAILED_EVENT event (Xin Long) [1751129] - [net] sctp: add SCTP_ADDR_MADE_PRIM event (Xin Long) [1751129] - [net] sctp: add SCTP_ADDR_REMOVED event (Xin Long) [1751129] - [net] sctp: add SCTP_ADDR_ADDED event (Xin Long) [1751129] - [netdrv] team: call RCU read lock when walking the port_list (Hangbin Liu) [1724896] - [net] packet: fix race in tpacket_snd() (Davide Caratti) [1760276] - [net] packet: fix memory leak in packet_set_ring() (Davide Caratti) [1760276] - [net] packet: unconditionally free po->rollover (Davide Caratti) [1760276] - [net] llc: fix skb leak in llc_build_and_send_ui_pkt() (Davide Caratti) [1760276] - [net] af_key: fix leaks in key_pol_get_resp and dump_sp. (Davide Caratti) [1760276] - [net] packet: in recvmsg msg_name return at least sizeof sockaddr_ll (Davide Caratti) [1760276] - [net] packet: Set __GFP_NOWARN upon allocation in alloc_pg_vec (Davide Caratti) [1760276] - [net] packet: fix 4gb buffer limit due to overflow check (Davide Caratti) [1760276] - [net] llc: do not use sk_eat_skb() (Davide Caratti) [1760276] - [fs] proc: fix /proc/net/* after setns(2) (Davide Caratti) [1760276] - [net] Unpublish sk from sk_reuseport_cb before call_rcu (Paolo Abeni) [1760409] - [net] Fix null de-reference of device refcount (Paolo Abeni) [1760409] - [include] ipv4: Define __ipv4_neigh_lookup_noref when CONFIG_INET is disabled (Paolo Abeni) [1760409] - [net] neighbor: Call __ipv4_neigh_lookup_noref in neigh_xmit (Paolo Abeni) [1760409] - [net] ebpf: record usage of flow dissector (Jiri Benc) [1749812] - [tools] selftests/bpf: More compatible nc options in test_lwt_ip_encap (Jiri Benc) [1749812] - [tools] selftests/bpf: Set rp_filter in test_flow_dissector (Jiri Benc) [1749812] - [net] bpf: lwtunnel: fix reroute supplying invalid dst (Jiri Benc) [1749812] - [kernel] rh_features: convert to atomic allocation (Jiri Benc) [1749812] - [net] xsk: lock the control mutex in sock_diag interface (Jiri Benc) [1749812] - [documentation] networking: fix af_xdp.rst Sphinx warnings (Jiri Benc) [1749812] - [documentation] flow_dissector: rst'ify documentation (Jiri Benc) [1749812] - [documentation] flow_dissector: document BPF flow dissector environment (Jiri Benc) [1749812] - [net] xsk: fix umem memory leak on cleanup (Jiri Benc) [1749812] - [net] xsk: fix to reject invalid options in Tx descriptor (Jiri Benc) [1749812] - [net] xsk: fix to reject invalid flags in xsk_bind (Jiri Benc) [1749812] - [net] xsk: fix potential crash in xsk_diag_put_umem() (Jiri Benc) [1749812] - [net] bpfilter: re-add header search paths to tools include to fix build error (Jiri Benc) [1749812] - [documentation] xsk: add FAQ to facilitate for first time users (Jiri Benc) [1749812] - [net] bpf/test_run: fix unkillable BPF_PROG_TEST_RUN for flow dissector (Jiri Benc) [1749812] - [tools] sync uapi/linux/if_link.h header (Jiri Benc) [1749812] - [net] xdp: allow generic and driver XDP on one interface (Jiri Benc) [1749812] - [net] xdp: Provide extack messages when prog attachment failed (Jiri Benc) [1749812] - [net] bpfilter: remove extra header search paths for bpfilter_umh (Jiri Benc) [1749812] - [include] bpf: fix missing prototype warnings (Jiri Benc) [1749812] - [net] xsk: add sock_diag interface for AF_XDP (Jiri Benc) [1749812] - [net] xsk: add id to umem (Jiri Benc) [1749812] - [net] xsk: track AF_XDP sockets on a per-netns list (Jiri Benc) [1749812] - [include] redhat: rh_kabi: introduce RH_KABI_EXTEND_WITH_SIZE (Jiri Benc) [1749812] - [net] tcp: Avoid TCP syncookie rejected by SO_REUSEPORT socket (Jiri Benc) [1749812] - [net] tcp: use monotonic timestamps for PAWS (Jiri Benc) [1749812] - [net] tcp: remove one indentation level in tcp_create_openreq_child (Jiri Benc) [1749812] - [netdrv] ppp: Fix memory leak in ppp_write (Guillaume Nault) [1759312] - [netdrv] ppp: deflate: Fix possible crash in deflate_init (Guillaume Nault) [1759312] - [netdrv] pppoe: fix reception of frames with no mac header (Guillaume Nault) [1759312] - [net] tcp_bbr: fix quantization code to not raise cwnd if not probing bandwidth (Florian Westphal) [1759208] - [net] tcp_bbr: refactor bbr_target_cwnd() for general inflight provisioning (Florian Westphal) [1759208] - [net] tcp_bbr: centralize code to set gains (Florian Westphal) [1759208] - [net] tcp_bbr: apply PROBE_RTT cwnd cap even if acked==0 (Florian Westphal) [1759208] - [net] tcp_bbr: in restart from idle, see if we should exit PROBE_RTT (Florian Westphal) [1759208] - [net] tcp_bbr: add bbr_check_probe_rtt_done() helper (Florian Westphal) [1759208] - [net] xfrm/xfrm_policy: fix dst dev null pointer dereference in collect_md mode (Hangbin Liu) [1734589] - [tools] selftests: forwarding: gre_multipath: Fix flower filters (Hangbin Liu) [1756832] - [tools] selftests: forwarding: gre_multipath: Enable IPv4 forwarding (Hangbin Liu) [1756832] - [tools] set sysctl bc_forwarding properly in router_broadcast.sh (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: enable forwarding before ipv4 from/iif test (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: use pre-defined DEV_ADDR (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: fix local IPv4 address typo (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: print the result and return 1 if any tests failed (Hangbin Liu) [1756832] - [tools] selftests: fib_tests: Fix 'Command line is not complete' errors (Hangbin Liu) [1756832] - [tools] selftests: Update fib_tests to handle missing ping6 (Hangbin Liu) [1756832] - [tools] fib_tests: Add tests for metrics on routes (Hangbin Liu) [1756832] - [tools] selftests: udpgso_bench.sh explicitly requires bash (Hangbin Liu) [1756832] - [tools] selftests/net: add tls to .gitignore (Hangbin Liu) [1756832] - [net] ipv4: avoid mixed n_redirects and rate_tokens usage (Paolo Abeni) [1753092] - [lib] netlink: set bad attribute also on maxtype check (Petr Oros) [1757776] - [lib] netlink: add validation of NLA_F_NESTED flag (Petr Oros) [1757776] - [net] ila: Fix rhashtable walker list corruption (Petr Oros) [1757776] - [lib] ila: make lockdep happy again (Petr Oros) [1757776] - [net] genetlink: do not validate dump requests if there is no policy (Petr Oros) [1757776] - [include] netlink: Fix nlmsg_parse as a wrapper for strict message parsing (Petr Oros) [1757776] - [net] tipc: fix missing indentation in source code (Petr Oros) [1757776] - [net] genetlink: optionally validate strictly/dumps (Petr Oros) [1757776] - [lib] netlink: add strict parsing for future attributes (Petr Oros) [1757776] - [include] netlink: re-add parse/validate functions in strict mode (Petr Oros) [1757776] - [net] netlink: make validation more configurable for future strictness (Petr Oros) [1757776] - [lib] netlink: add NLA_MIN_LEN (Petr Oros) [1757776] - [net] genetlink: make policy common to family (Petr Oros) [1757776] - [net] ila: Flush netlink command to clear xlat table (Petr Oros) [1757776] - [net] ila: Create main ila source file (Petr Oros) [1757776] - [net] ila: Call library function alloc_bucket_locks (Petr Oros) [1757776] - [net] ila: Fix use of rhashtable walk in ila_xlat.c (Petr Oros) [1757776] - [net] rtnetlink: fix rtnl_valid_stats_req() nlmsg_len check (Petr Oros) [1757750] - [net] mpls: netconf: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] mpls: route: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: route: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: addrlabel: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: netconf: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: addr: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv4: ipmr: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv4: route: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv4: netconf: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] namespace: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] rtnetlink: ifinfo: perform strict checks also for doit handler (Petr Oros) [1757750] - [net] rtnetlink: stats: reject requests for unknown stats (Petr Oros) [1757750] - [net] rtnetlink: stats: validate attributes in get as well as dumps (Petr Oros) [1757750] - [net] netlink: add helper to retrieve NETLINK_F_STRICT_CHK (Petr Oros) [1757750] - [include] linux/netlink.h: drop unnecessary extern prefix (Petr Oros) [1757750] - [net] rtnetlink: avoid frame size warning in rtnl_newlink() (Petr Oros) [1757750] - [net] rtnetlink: remove a level of indentation in rtnl_newlink() (Petr Oros) [1757750] - [net] rtnetlink: Add more extack messages to rtnl_newlink (Petr Oros) [1757750] - [net] netfilter: nf_tables: allow lookups in dynamic sets (Florian Westphal) [1759074] - [net] netfilter: nf_tables: check the result of dereferencing base_chain->stats (Florian Westphal) [1759074] - [net] revert "netfilter: nft_hash: add map lookups for hashing operations" (Florian Westphal) [1759074] - [net] netfilter: nf_tables: don't prevent event handler from device cleanup on netns exit (Florian Westphal) [1759074] - [net] netfilter: nft_ct: enable conntrack for helpers (Florian Westphal) [1759074] - [net] netfilter: conntrack: always store window size un-scaled (Florian Westphal) [1758668] - [net] netfilter: synproxy: fix rst sequence number mismatch (Florian Westphal) [1758668] - [net] netfilter: synproxy: fix erroneous tcp mss option (Florian Westphal) [1758668] - [net] netfilter: nfnetlink: avoid deadlock due to synchronous request_module (Florian Westphal) [1758668] - [net] netfilter: nf_queue: fix reinject verdict handling (Florian Westphal) [1758668] - [net] netfilter: conntrack: Use consistent ct id hash calculation (Florian Westphal) [1758668] - [net] netfilter: ctnetlink: don't use conntrack/expect object addresses as id (Florian Westphal) [1758668] - [net] netfilter: bridge: Don't sabotage nf_hook calls for an l3mdev slave (Florian Westphal) [1758668] - [net] netfilter: avoid using skb->nf_bridge directly (Florian Westphal) [1758668] - [net] netfilter: nat: can't use dst_hold on noref dst (Florian Westphal) [1758668] - [net] netfilter: bridge: Don't sabotage nf_hook calls from an l3mdev (Florian Westphal) [1758668] - [net] netfilter: conntrack: fix removal of conntrack entries when l4tracker is removed (Florian Westphal) [1758668] - [net] netfilter: xt_hashlimit: fix a possible memory leak in htable_create() (Florian Westphal) [1758668] - [net] netfilter: xt_TEE: add missing code to get interface index in checkentry. (Florian Westphal) [1758668] - [net] netfilter: xt_TEE: fix wrong interface selection (Florian Westphal) [1758668] - [net] netfilter: xtables: avoid BUG_ON (Florian Westphal) [1758668] - [net] netfilter: nat: limit port clash resolution attempts (Florian Westphal) [1758646] - [net] netfilter: nat: remove l4 protocol port rovers (Florian Westphal) [1758646] - [net] neighbour: remove stray semicolon (Ivan Vecera) [1757459] - [net] neighbor: Initialize protocol when new pneigh_entry are created (Ivan Vecera) [1757459] - [net] neighbour: register rtnl doit handler (Ivan Vecera) [1757459] - [net] neighbor: Add protocol attribute (Ivan Vecera) [1757459] - [net] neighbor: Add extack messages for add and delete commands (Ivan Vecera) [1757459] - [net] rtnetlink: address is mandatory for rtnl_fdb_get (Ivan Vecera) [1757105] - [netdrv] vxlan: support for ndo_fdb_get (Ivan Vecera) [1757105] - [net] rtnetlink: support for fdb get (Ivan Vecera) [1757105] - [net] bridge: support for ndo_fdb_get (Ivan Vecera) [1757105] - [net] ipmr: remove hard code cache_resolve_queue_len limit (Hangbin Liu) [1631022] - [net] ipv6/addrconf: allow adding multicast addr if IFA_F_MCAUTOJOIN is set (Hangbin Liu) [1740961] - [net] xfrm interface: fix management of phydev (Xin Long) [1727240] - [net] xfrm interface: fix list corruption for x-netns (Xin Long) [1727240] - [net] xfrm interface: ifname may be wrong in logs (Xin Long) [1727240] - [net] xfrm interface: avoid corruption on changelink (Xin Long) [1727240] - [net] netlink: add validation function to policy (Ivan Vecera) [1753333] - [net] netlink: add attribute range validation to policy (Ivan Vecera) [1753333] - [net] sched: police: allow accessing police->params with rtnl (Ivan Vecera) [1731416] - [net] sched: remove block pointer from common offload structure (Ivan Vecera) [1731416] - [net] nfp: flower: add qos offload install and remove functionality. (Ivan Vecera) [1731416] - [net] nfp: flower: add qos offload framework (Ivan Vecera) [1731416] - [net] sched: add block pointer to tc_cls_common_offload structure (Ivan Vecera) [1731416] - [net] sched: allow stats updates from offloaded police actions (Ivan Vecera) [1731416] - [net] sched: extend matchall offload for hardware statistics (Ivan Vecera) [1731416] - [net] sched: add police action to the hardware intermediate representation (Ivan Vecera) [1731416] - [net] sched: move police action structures to header (Ivan Vecera) [1731416] - [net] sched: remove unused functions for matchall offload (Ivan Vecera) [1731416] - [net] dsa: use intermediate representation for matchall offload (Ivan Vecera) [1731416] - [netdrv] mlxsw: use intermediate representation for matchall offload (Ivan Vecera) [1731416] - [net] tipc: disallow enabling of loopback interface bearer (Jon Maloy) [1717305] - [net] tipc: add NULL pointer check before calling kfree_rcu (Jon Maloy) [1747392] - [net] xsk: Return the whole xdp_desc from xsk_umem_consume_tx (Ivan Vecera) [1748497] - [net] devlink: add warning for ndo_get_port_parent_id set when not needed (Petr Oros) [1737133] - [net] devlink: introduce devlink_compat_switch_id_get() helper (Petr Oros) [1737133] - [net] devlink: extend port attrs for switch ID (Petr Oros) [1737133] - [net] devlink: convert devlink_port_attrs bools to bits (Petr Oros) [1737133] - [net] devlink: add warning for ndo_get_phys_port_name set when not needed (Petr Oros) [1737133] - [netdrv] nfp: move devlink port type set after netdev registration (Petr Oros) [1737133] - [netdrv] dsa: move devlink_port_attrs_set() call before register (Petr Oros) [1737133] - [netdrv] mlxsw: Move devlink_port_attrs_set() call before register (Petr Oros) [1737133] - [netdrv] bnxt: set devlink port type after registration (Petr Oros) [1737133] - [netdrv] bnxt: call devlink_port_type_eth_set() before port register (Petr Oros) [1737133] - [netdrv] bnxt: set devlink port attrs properly (Petr Oros) [1737133] - [netdrv] dsa: add missing net/devlink.h include (Petr Oros) [1737133] - [netdrv] bnxt: add missing net/devlink.h include (Petr Oros) [1737133] - [netdrv] revert "devlink: Add a generic wake_on_lan port parameter" (Petr Oros) [1737133] - [netdrv] bnxt_en: Add bnxt_en initial port params table and register it (Petr Oros) [1737133] - [netdrv] mlxsw: spectrum: Assume CONFIG_NET_DEVLINK is always enabled (Petr Oros) [1737527] - [netdrv] netdevsim: assume CONFIG_NET_DEVLINK is always enabled (Petr Oros) [1737527] - [net] devlink: introduce devlink_compat_phys_port_name_get() (Petr Oros) [1737527] - [net] replace ndo_get_devlink with ndo_get_devlink_port (Petr Oros) [1737527] - [net] devlink: select NET_DEVLINK from drivers (Petr Oros) [1737527] - [net] devlink: add port type spinlock (Petr Oros) [1737527] - [net] devlink: warn on setting type on unregistered port (Petr Oros) [1737527] - [net] devlink: disallow port_attrs_set() to be called before register (Petr Oros) [1737527] - [net] devlink: don't pass return value of __devlink_port_type_set() (Petr Oros) [1737527] - [net] devlink: don't take devlink_mutex for devlink_compat_* (Petr Oros) [1737527] - [net] devlink: add couple of missing mutex_destroy() calls (Petr Oros) [1737527] - [net] devlink: fix kdoc (Petr Oros) [1737527] - [net] devlink: require non-NULL ops for devlink instances (Petr Oros) [1737527] - [net] devlink: hold a reference to the netdevice around ethtool compat (Petr Oros) [1737527] - [net] devlink: create a special NDO for getting the devlink instance (Petr Oros) [1737527] - [net] devlink: Add WARN_ON to catch errors of not cleaning devlink objects (Petr Oros) [1737527] - [netdrv] s390/qeth: fix xmit_more support (Ivan Vecera) [1734516] - [netdrv] revert "[netdrv] gve: account for lack of netdev_xmit_more() definition (RHEL-only)" (Ivan Vecera) [1734516] - [netdrv] net/mlx5e: Fix wrong xmit_more application (Ivan Vecera) [1734516] - [include] net: use correct this_cpu primitive in dev_recursion_level (Ivan Vecera) [1734516] - [netdrv] drivers: net: aurora: use netdev_xmit_more helper (Ivan Vecera) [1734516] - [netdrv] drivers: net: sfc: use netdev_xmit_more helper (Ivan Vecera) [1734516] - [netdrv] drivers: mellanox: use netdev_xmit_more() helper (Ivan Vecera) [1734516] - [netdrv] net: move skb->xmit_more hint to softnet data (Ivan Vecera) [1734516] - [net] place xmit recursion in softnet data (Ivan Vecera) [1734516]- [netdrv] net: ena: clean up indentation issue (John Linville) [1770979] - [netdrv] net: ena: Select DIMLIB for ENA_ETHERNET (John Linville) [1770979] - [netdrv] net: ena: fix incorrect update of intr_delay_resolution (John Linville) [1770979] - [netdrv] net: ena: fix retrieval of nonadaptive interrupt moderation intervals (John Linville) [1770979] - [netdrv] net: ena: fix update of interrupt moderation register (John Linville) [1770979] - [netdrv] net: ena: remove all old adaptive rx interrupt moderation code from ena_com (John Linville) [1770979] - [netdrv] net: ena: remove ena_restore_ethtool_params() and relevant fields (John Linville) [1770979] - [netdrv] net: ena: remove old adaptive interrupt moderation code from ena_netdev (John Linville) [1770979] - [netdrv] net: ena: remove code duplication in ena_com_update_nonadaptive_moderation_interval _*() (John Linville) [1770979] - [netdrv] net: ena: enable the interrupt_moderation in driver_supported_features (John Linville) [1770979] - [netdrv] net: ena: reimplement set/get_coalesce() (John Linville) [1770979] - [netdrv] net: ena: switch to dim algorithm for rx adaptive interrupt moderation (John Linville) [1770979] - [netdrv] net: ena: add intr_moder_rx_interval to struct ena_com_dev and use it (John Linville) [1770979]- [fs] autofs: add ignore mount option (Ian Kent) [1743441] - [fs] autofs: improve ioctl sbi checks (Ian Kent) [1672133] - [crypto] crypto: ccp - Retry SEV INIT command in case of integrity check failure. (Gary Hook) [1767627] - [crypto] crypto: ccp - Verify access to device registers before initializing (Gary Hook) [1756867] - [crypto] crypto: ccp - Change a message to reflect status instead of failure (Gary Hook) [1756867] - [netdrv] ixgbevf: Bump version for RHEL 8.2.0 (Ken Cox) [1721701] - [netdrv] ixgbevf: Fix secpath usage for IPsec Tx offload (Ken Cox) [1721701] - [netdrv] ixgbevf: make array api static const, makes object smaller (Ken Cox) [1721701] - [netdrv] ixgbevf: Link lost in VM on ixgbevf when restoring from freeze or suspend (Ken Cox) [1721701] - [netdrv] ixgbevf: fix a compilation error of skb_frag_t (Ken Cox) [1721701] - [netdrv] net: Use skb accessors in network drivers (Ken Cox) [1721701] - [netdrv] ixgbevf: Use cached link state instead of re-reading the value for ethtool (Ken Cox) [1721701] - [netdrv] ixgbevf: fix possible divide by zero in ixgbevf_update_itr (Ken Cox) [1721701] - [netdrv] ixgbevf: fix a missing check of ixgbevf_write_msg_read_ack (Ken Cox) [1721701] - [infiniband] IB/hfi1: Use a common pad buffer for 9B and 16B packets (Honggang Li) [1719676] - [infiniband] IB/hfi1: Avoid excessive retry for TID RDMA READ request (Honggang Li) [1719676] - [infiniband] RDMA/hfi1: Prevent memory leak in sdma_init (Honggang Li) [1719676] - [infiniband] IB/hfi1: remove unlikely() from IS_ERR*() condition (Honggang Li) [1719676] - [infiniband] IB/hfi1: Define variables as unsigned long to fix KASAN warning (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1, qib}: Add a counter for credit waits (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add traces for TID RDMA READ (Honggang Li) [1719676] - [infiniband] infiniband: hfi1: fix memory leaks (Honggang Li) [1719676] - [infiniband] infiniband: hfi1: fix a memory leak bug (Honggang Li) [1719676] - [infiniband] IB/hfi1: Drop stale TID RDMA packets that cause TIDErr (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add additional checks when handling TID RDMA WRITE DATA packet (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add additional checks when handling TID RDMA READ RESP packet (Honggang Li) [1719676] - [infiniband] IB/hfi1: Unsafe PSN checking for TID RDMA READ Resp packet (Honggang Li) [1719676] - [infiniband] IB/hfi1: Drop stale TID RDMA packets (Honggang Li) [1719676] - [infiniband] IB/hfi1: Fix Spectre v1 vulnerability (Honggang Li) [1719676] - [infiniband] IB/hfi1: Remove unused define (Honggang Li) [1719676] - [infiniband] IB/hfi1: Do not update hcrc for a KDETH packet during fault injection (Honggang Li) [1719676] - [infiniband] IB/hfi1: Drop all TID RDMA READ RESP packets after r_next_psn (Honggang Li) [1719676] - [infiniband] IB/hfi1: Field not zero-ed when allocating TID flow memory (Honggang Li) [1719676] - [infiniband] IB/hfi1: Unreserve a flushed OPFN request (Honggang Li) [1719676] - [infiniband] IB/hfi1: Check for error on call to alloc_rsm_map_table (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fix variable shadowing issue in rvt_create_cq (Honggang Li) [1719676] - [infiniband] RDMA/rvt: Do not use a kernel header in the ABI (Honggang Li) [1719676] - [infiniband] IB/hfi1: No need to use try_module_get for debugfs (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Add trace for map_mr_sg (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Enhance trace information for FRWR debug (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add missing INVALIDATE opcodes for trace (Honggang Li) [1719676] - [infiniband] IB/hfi1: Reduce excessive aspm inlines (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1, qib}: Add helpers to hide SWQE WR details (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1, qib}: Remove AH refcount for UD QPs (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Set QP allowed opcodes after QP allocation (Honggang Li) [1719676] - [infiniband] IB/{hfi1, qib, rdmavt}: Put qp in error state when cq is full (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fracture single lock used for posting and processing RWQEs (Honggang Li) [1719676] - [infiniband] IB/hfi1: Move receive work queue struct into uapi directory (Honggang Li) [1719676] - [infiniband] IB/hfi1: Move rvt_cq_wc struct into uapi directory (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Add new completion inline (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, qib, hfi1}: Convert to new completion API (Honggang Li) [1719676] - [infiniband] IB/hfi1: Spelling s/statisfied/satisfied/ (Honggang Li) [1719676] - [infiniband] IB/hfi1: Handle port down properly in pio (Honggang Li) [1719676] - [infiniband] IB/hfi1: Handle wakeup of orphaned QPs for pio (Honggang Li) [1719676] - [infiniband] IB/hfi1: Wakeup QPs orphaned on wait list after flush (Honggang Li) [1719676] - [infiniband] IB/hfi1: Use aborts to trigger RC throttling (Honggang Li) [1719676] - [infiniband] IB/hfi1: Create inline to get extended headers (Honggang Li) [1719676] - [infiniband] IB/hfi1: Silence txreq allocation warnings (Honggang Li) [1719676] - [infiniband] IB/hfi1: Avoid hardlockup with flushlist_lock (Honggang Li) [1719676] - [infiniband] IB/hfi1: Correct tid qp rcd to match verbs context (Honggang Li) [1719676] - [infiniband] IB/hfi1: Close PSM sdma_progress sleep window (Honggang Li) [1719676] - [infiniband] IB/hfi1: Validate fault injection opcode user input (Honggang Li) [1719676] - [infiniband] IB/hfi1: Use struct_size() helper (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Use struct_size() helper (Honggang Li) [1719676] - [infiniband] IB/hfi1: Validate page aligned for a given virtual address (Honggang Li) [1719676] - [infiniband] IB/{qib, hfi1, rdmavt}: Correct ibv_devinfo max_mr value (Honggang Li) [1719676] - [infiniband] IB/hfi1: Insure freeze_work work_struct is canceled on shutdown (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fix alloc_qpn() WARN_ON() (Honggang Li) [1719676] - [infiniband] IB/hfi1: Remove set but not used variables 'offset' and 'fspsn' (Honggang Li) [1719676] - [infiniband] RDMA/rdmavt: Catch use-after-free access of AH structures (Honggang Li) [1719676] - [infiniband] IB/hfi1: Remove reference to RHF.VCRCErr (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add selected Rcv counters (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, qib, hfi1}: Use new routine to release reference counts (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Use more efficient allowed_ops (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fix ab/ba include issues (Honggang Li) [1719676] - [infiniband] IB/hfi1: Make opfn.h self sufficient (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1): Miscellaneous comment fixes (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add debugfs to control expansion ROM write protect (Honggang Li) [1719676] - [infiniband] hfi1: Convert hfi1_unit_table to XArray (Honggang Li) [1719676] - [infiniband] hfi1: Convert vesw_idr to XArray (Honggang Li) [1719676] - [infiniband] RDMA/rdmavt: Use correct sizing on buffers holding page DMA addresses (Honggang Li) [1719676] - [infiniband] IB/hfi1: Fix two format strings (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add running average for adaptive pio (Honggang Li) [1719676] - [infiniband] mm: replace all open encodings for NUMA_NO_NODE (Honggang Li) [1719676] - [infiniband] drivers/IB,hfi1: do not se mmap_sem (Honggang Li) [1719676] - [infiniband] IB/hfi1: Suppress a compiler warning (Honggang Li) [1719676] - [scsi] qla2xxx: Update driver version (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: don't use zero for FC4_PRIORITY_NVME (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: initialize fc4_type_priority (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: fix NPIV tear down process (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Remove an include directive (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix device connect issues in P2P configuration (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Improve logging for scan thread (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Capture FW dump on MPI heartbeat stop event (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Check for MB timeout while capturing ISP27/28xx FW dump (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Set remove flag for all VP (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Add error handling for PLOGI ELS passthrough (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Dual FCP-NVMe target port support (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix a dma_pool_free() call (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix memory leak when sending I/O fails (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix driver unload hang (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix SRB leak on switch command timeout (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix double scsi_done for abort path (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Do command completion on abort timeout (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Reduce the number of forward declarations (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: fixup incorrect usage of host_byte (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix partial flash write of MBI (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Remove WARN_ON_ONCE in qla2x00_status_cont_entry() (Himanshu Madhani) [1763248] - [scsi] qla2xxx: Fix conflict_port check for NULL (Himanshu Madhani) [1763248] - [netdrv] Bump version for RHEL 8.2.0 (Ken Cox) [1721700] - [netdrv] ixgbe: Fix secpath usage for IPsec TX offload. (Ken Cox) [1721700] - [netdrv] ixgbe: fix double clean of Tx descriptors with xdp (Ken Cox) [1721700] - [netdrv] ixgbe: Prevent u8 wrapping of ITR value to something less than 10us (Ken Cox) [1721700] - [netdrv] ixgbe: use skb_get_queue_mapping in tx path (Ken Cox) [1721700] - [netdrv] ixgbe: fix memory leaks (Ken Cox) [1721700] - [netdrv] ixgbe: sync the first fragment unconditionally (Ken Cox) [1721700] - [netdrv] ixgbe: Use kzfree() rather than its implementation. (Ken Cox) [1721700] - [netdrv] ixgbe: simplify Rx buffer recycle (Ken Cox) [1721700] - [netdrv] ixgbe: no need to check return value of debugfs_create functions (Ken Cox) [1721700] - [netdrv] ixgbe: fix possible deadlock in ixgbe_service_task() (Ken Cox) [1721700] - [netdrv] net: Use skb accessors in network drivers (Ken Cox) [1721700] - [netdrv] ixgbe: fix potential u32 overflow on shift (Ken Cox) [1721700] - [netdrv] ixgbe: Avoid NULL pointer dereference with VF on non-IPsec hw (Ken Cox) [1721700] - [netdrv] ixgbe: Check DDM existence in transceiver before access (Ken Cox) [1721700] - [netdrv] ixgbe: implement support for SDP/PPS output on X550 hardware (Ken Cox) [1721700] - [netdrv] ixgbe: Use LLDP ethertype define ETH_P_LLDP (Ken Cox) [1721700] - [netdrv] ixgbe: add a kernel documentation comment for ixgbe_ptp_get_ts_config (Ken Cox) [1721700] - [netdrv] ixgbe: use 'cc' instead of 'hw_cc' for local variable (Ken Cox) [1721700] - [netdrv] ixgbe: fix PTP SDP pin setup on X540 hardware (Ken Cox) [1721700] - [netdrv] ixgbe: reduce PTP Tx timestamp timeout to 1 second (Ken Cox) [1721700] - [netdrv] ixgbe: fix AF_XDP tx packet count (Ken Cox) [1721700] - [netdrv] ixgbe: fix AF_XDP tx byte count (Ken Cox) [1721700] - [netdrv] ixgbe: remove umem from adapter (Ken Cox) [1721700] - [netdrv] ixgbe: add tracking of AF_XDP zero-copy state for each queue pair (Ken Cox) [1721700] - [netdrv] ixgbe: fix mdio bus registration (Ken Cox) [1721700] - [netdrv] nfp: bpf: implement jitting of JMP32 (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: support removing dead code (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: support optimizing dead branches (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: save original program length (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: split up the skip flag (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: don't use instruction number for jump target (Pablo Cascon) [1729067] - [scsi] scsi: target: iscsi: rename some variables to avoid confusion. (Maurizio Lombardi) [1769801] - [scsi] scsi: target: iscsi: tie the challenge length to the hash digest size (Maurizio Lombardi) [1769801] - [scsi] scsi: target: iscsi: CHAP: add support for SHA1, SHA256 and SHA3-256 (Maurizio Lombardi) [1769801] - [scsi] scsi: target: compare full CHAP_A Algorithm strings (Maurizio Lombardi) [1769801] - [arm64] arm64: topology: Use PPTT to determine if PE is a thread (Jeremy Linton) [1721297] - [acpi] ACPI/PPTT: Add support for ACPI 6.3 thread flag (Jeremy Linton) [1721297] - [acpi] ACPI / LPSS: Save/restore LPSS private registers also on Lynxpoint (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [documentation] docs: fix numaperf.rst and add it to the doc tree (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Rename arm_smmu_v3_set_proximity() 'node' local variable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [misc] h8300: pci: Remove local declaration of pcibios_penalize_isa_irq (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [mm] mmc: sdhci-acpi: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [ata] ata: pata_acpi: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [gpu] vga-switcheroo: make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: intel_ips: make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: intel_pmc: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: apple-gmux: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [x86] x86/intel/lpss: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [x86] x86/Kconfig: Select PCI_LOCKLESS_CONFIG if PCI is enabled (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [mfd] mfd: Fix unmet dependency warning for MFD_TPS68470 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] drivers/acpi/scan.c: document why we don't need the device_hotplug_lock (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Fix regression in acpi_device_set_power() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix off-by-one check in iort_dev_find_its_id() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: video: Add new hw_changes_brightness quirk, set it on PB Easynote MZ35 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: blacklist: fix clang warning for unused DMI table (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPICA: Update table load object initialization" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Make acpi_sleep_state_supported() non-static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Remove needless __ghes_check_estatus() calls (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Unexport acpi_device_get_power() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PCI / ACPI: Use cached ACPI device state to get PCI device power state (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190703 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update table load object initialization (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update for object initialization sequence (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: remove legacy module-level code due to deprecation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Namespace: simplify creation of the initial/default namespace (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: intel: Drop double removal of address space handler (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: APD: remove redundant assignment to pointer clk (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Introduce "poweroff" callbacks for ACPI PM domain and LPSS (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Simplify and fix PM domain hibernation callbacks (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PM: ACPI/PCI: Resume all devices during hibernation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PCI: PM/ACPI: Refresh all stale power state data in pci_pm_complete() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PPTT: Add function to return ACPI 6.3 Identical tokens (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PPTT: Modify node flag detection to find last IDENTICAL (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: Introduce concept of a _PR0 dependent device (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Allow transitions to D0 to occur in special cases (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Avoid evaluating _PS3 on transitions from D3hot to D3cold (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi: utils: Cleanup acpi_dev_match_cb (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Make AC and battery drivers available on !X86 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] coresight: acpi: Support for AMBA components (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Clear status of GPEs on first direct enable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: configfs: Resolve objects on host-directed table loads (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: tables: Allow BGRT to be overridden (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / sleep: Switch to use acpi_dev_get_first_match_dev() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [include] gpio: merrifield: Fix build err without CONFIG_ACPI (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: OSL: Make a W=1 kernel-doc warning go away (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / property: Don't limit named child node matching to data nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPIT: Correct LPIT end address for lpit_process() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/irq: Implement helper to create hierachical domains (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] node: Add memory-side caching attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] node: Add heterogenous memory access attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] node: Link memory nodes to their compute nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [documentation] doc/mm: New documentation for memory performance (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Call pm_set_suspend_via_firmware() during hibernation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PCI: PM: Add missing wakeup.flags.valid checks (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix build error when IOMMU_SUPPORT is disabled (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Set enable_for_wake for wakeup GPEs during suspend-to-idle (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190509 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Linux: move ACPI_DEBUG_DEFAULT flag out of ifndef (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: bus: change _ADR representation to 64 bits (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / property: fix handling of data_nodes in acpi_get_next_subnode() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: fix an uninitialized memory_target (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Update acpi_hmat_type enum with ACPI_HMAT_TYPE_PROXIMITY (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: fix memory leaks in hmat_init() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Check ATS capability in root complex nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / DPTF: Use dev_get_drvdata() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: event: replace strcpy() by strscpy() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Use acpi_lpss_* instead of acpi_subsys_* functions for hibernate (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Reject platform device creation on NUMA node mapping failure (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: button: reinitialize button state upon resume (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190405 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Namespace: add check to avoid null pointer dereference (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190329 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: utilities: fix spelling of PCC to platform_comm_channel (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename nameseg length macro/define for clarity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename nameseg compare macro for clarity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename nameseg copy macro for clarity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Print debug messages when enabling GPEs for wakeup (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Register memory side cache attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Register performance attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Register processor domain to its memory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Parse and report heterogeneous memory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi: Add HMAT to generic parsing tables (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi: Create subtable parsing infrastructure (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [arm64] arm64: numa: rework ACPI NUMA initialization (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Add support for PMCG (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: video: Use vendor backlight on Sony VPCEH3U1E (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / utils: Remove deprecated function since no user left (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: Clean up whitespace (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Add labels for PNP button devices (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Simplify acpi_bus_extract_wakeup_device_power_package() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Fix comment typos (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPICA: Clear status of GPEs before enabling them" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Namespace: remove address node from global list after method termination (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Clear status of GPEs before enabling them (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: use different default debug value than ACPICA (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / utils: Drop reference in test for device presence (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: sysfs: Prevent get_status() from returning acpi_status (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / device_sysfs: Avoid OF modalias creation for removed device (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / configfs: Mark local data structures static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / configfs: Mark local functions static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: tables: Simplify PPTT leaf node detection (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / bus: Respect PRP0001 when retrieving device match data (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190215 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: add GTDT Revision 3 support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: HMAT updates (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: PPTT add additional fields in Processor Structure Flags (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: add Error Disconnect Recover Notification value (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: MADT: add support for statistical profiling in GICC (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: add PCC operation region support for AML interpreter (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [clk] clk: x86: Move clk-lpss.h to platform_data/x86 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: APEI: Fix possible out-of-bounds access to BERT region (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / processor: Set P_LVL{2, 3sc] } idle state descriptions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / CPPC: Add a helper to get desired performance (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: SRAT: add Generic Affinity Structure subtable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: Add Trigger order to PCC Identifier structure in PDTT (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: Adding predefined methods _NBS, _NCH, _NIC, _NIH, and _NIG (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update/clarify messages for control method failures (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debugger: Fix possible fault with the "test objects" command (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Interpreter: Emit warning for creation of a zero-length op region (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Remove legacy module-level code support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / x86: Make PWM2 device always present at Lenovo Yoga Book (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / video: Extend chassis-type detection with a "Lunch Box" check (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / video: Refactor and fix dmi_is_desktop() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Add support for the SDEI GHES Notification type (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [firmware] firmware: arm_sdei: Add ACPI GHES registration helper (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PPTT: Add acpi_pptt_warn_missing() to consolidate logs (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Use separate fixmap pages for arm64 NMI-like notifications (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Only use queued estatus entry during in_nmi_queue_one_entry() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Split ghes_read_estatus() to allow a peek at the CPER length (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Make GHES estatus header validation more user friendly (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Pass ghes and estatus separately to avoid a later copy (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Let the notification helper specify the fixmap slot (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Move locking to the notification helper (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Switch NOTIFY_SEA to use the estatus queue (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Move NOTIFY_SEA between the estatus-queue and NOTIFY_NMI (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't allow ghes_ack_error() to mask earlier errors (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Generalise the estatus queue's notify code (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't update struct ghes' flags in read/clear estatus (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Remove spurious GHES_TO_CLEAR check (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't store CPER records physical address in struct ghes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Make estatus pool allocation a static size (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Make hest.c manage the estatus memory pool (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Switch estatus pool to use vmalloc memory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Remove silent flag from ghes_read_estatus() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't wait to serialise with oops messages when panic()ing (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Set debug output flags independent of ACPICA (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Get rid of acpi_sleep_dispatch() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for BSG2150 ACPI nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPI / EC: Remove old CLEAR_ON_RESUME quirk" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Simplify boot EC checks in acpi_ec_add() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Eliminate acpi_config_boot_ec() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Make acpi_ec_dsdt_probe() more straightforward (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Make acpi_ec_ecdt_probe() more straightforward (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Declare boot_ec as static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / DPTF: remove header search path to the parent directory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Clean up probing for early EC (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: debug: Clean up acpi_aml_init() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: no need to check return value of debugfs_create functions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Look for ECDT EC after calling acpi_load_tables() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190108 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: All acpica: Update copyrights to 2019 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: acpiexec: Add option to dump extra info for memory leaks (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Convert more ACPI errors to firmware errors (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: APEI: EINJ: Use DEFINE_DEBUGFS_ATTRIBUTE for debugfs files (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Fix parsing HEST that includes Deferred Machine Check subtable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: table override from built-in initrd (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] APEI / ERST: Switch to use new generic UUID API (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Add generic intel_soc_pmic_exec_mipi_pmic_seq_element handling (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Implement exec_mipi_pmic_seq_element for CHT Whiskey Cove PMIC (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix build when CONFIG_IOMMU_API=n (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: Fix TS-pin current-source handling (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: NUMA: Use correct type for printing addresses on i386-PAE (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: power: Skip duplicate power resource references in _PRx (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Fix build failure when CONFIG_NLS is set to 'n' (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: Add an ifdef around amlcode and dsdt_amlcode (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Make PCI slot detection driver depend on PCI (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Stub out ACS functions when CONFIG_PCI is not set (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PCI/ACPI: Allow ACPI to be built without CONFIG_PCI set (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / OSI: Add OEM _OSI string to enable dGPU direct output (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Loop in full LPS0 mode only (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC / PM: Disable non-wakeup GPEs for suspend-to-idle (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Don't call iommu_ops->add_device directly (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Use device_iommu_mapped() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Use helper functions to access dev->iommu_fwspec (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [include] driver core: Introduce device_iommu_mapped() function (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [iommu] iommu/sysfs: Rename iommu_release_device() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [iommu] iommu: Consolitate ->add/remove_device() calls (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [iommu] iommu: Introduce wrappers around dev->iommu_fwspec (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: add DSDT AmlCode new declaration name support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20181213 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: change coding style to match ACPICA, no functional change (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debug output: Add option to display method/object evaluation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: disassembler: disassemble OEMx tables as AML (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Add "Windows 2018.2" string in the _OSI support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Expressions in package elements are not supported (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update buffer-to-string conversions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: add comments, no functional change (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Remove defines that use deprecated flag (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Add "Windows 2018" string in the _OSI support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [pci] PCI: Remove unused attr variable in pci_dma_configure (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Refactor _CCA enforcement (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Ignore acpi_device_fix_up_power() return value (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI, APEI, EINJ: Change to use DEFINE_SHOW_ATTRIBUTE macro (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for INT3515 ACPI nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix iort_get_platform_device_domain() uninitialized pointer value (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: SPCR: Consider baud rate 0 as preconfigured state (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / glue: Add acpi_platform_notify() function (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] drivers core: Prepare support for multiple platform notifications (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / platform: Add SMB0001 HID to forbidden_id_list (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Fix handling of buffer-size in acpi_ex_write_data_to_field() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20181031 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: iASL: Enhance error detection (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: iASL: adding definition and disassembly for TPM2 revision 3 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debugger: refactor to fix unused variable warning (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: fix IOSF_MBI dependency (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: Add depends on IOSF_MBI to Kconfig entry (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: Block P-Unit I2C access during read-modify-write (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [include] PM / Domains: Document flags for genpd (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for INT33FE ACPI nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / OSL: Use 'jiffies' as the time bassis for acpi_os_get_timer() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: probe ECDT before loading AML tables regardless of module-level code flag (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Remove acpi_gbl_group_module_level_code and only use acpi_gbl_execute_tables_as_methods instead (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: AML Parser: fix parse loop to correctly skip erroneous extended opcodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: AML interpreter: add region addresses in global list during initialization (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: TAD: Add low-level support for real time capability (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: Export acpi_device_get_power() for use by modular build drivers (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: remove redundant 'default n' from Kconfig (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / SBS: Fix rare oops when removing modules (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / SBS: Fix GPE storm on recent MacBookPro's (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20181003 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Never run _REG on system_memory and system_IO (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Split large interpreter file (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update for field unit access (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename some of the Field Attribute defines (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update for generic_serial_bus and attrib_raw_process_bytes protocol (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / processor: Fix the return value of acpi_processor_ids_walk() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Resume BYT/CHT I2C controllers from resume_noirq (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Add a device link from the GPU to the BYT I2C5 controller (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Add a device link from the GPU to the CHT I2C7 controller (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make acpi_lpss_find_device() also find PCI devices (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make hid_uid_match helper accept a NULL uid argument (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make hid_uid_match helper take an acpi_device as first argument (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi:ipmi: Convert ipmi_user_t to struct ipmi_user 0001-x86-smp-fix-non-SMP-broken-build-due-to-redefinition.patch brew_job bzlist bzlist-v2 run.sh testing_desc v4-notes v5-notes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Exclude I2C busses shared with PUNIT from pmc_atom_d3_mask (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Convert drivers to use SPDX identifier (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Sort headers alphabetically (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / property: Switch to bitmap_zalloc() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Add alternative ACPI HIDs for Cherry Trail DMA controllers (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: custom_method: remove meaningless null check before debugfs_remove() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Force LPSS quirks on boot (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / bus: Only call dmi_check_system() on X86 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: fix menuconfig presentation of ACPI submenu (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] xen/ACPI: don't upload Px/Cx data for disabled processors (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [x86] x86/smp: fix non-SMP broken build due to redefinition of apic_id_is_primary_thread (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: CrystalCove: Extend PMOP support to support all possible fields (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Clear status of all events when entering sleep states (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20180810 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: acpiexec: fix a small memory leak regression (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Reference count: add additional debugging details (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: acpi_exec: fixing -fi option (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debugger: Cleanup interface to the AML disassembler (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Utilities: split hex detection into smaller functions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update an error message for a duplicate table (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: Add ACPI i2c-multi-instantiate pseudo driver (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [kernel] PM / reboot: Eliminate race between reboot and suspend (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / x86: utils: Remove status workaround from acpi_device_always_present() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for fwnodes with multiple i2c devices (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Initialize status to ACPI_STA_DEFAULT (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / EC: Add another entry for Thinkpad X1 Carbon 6th (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: bus: Fix a pointer coding style issue (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] arm64 / ACPI: clean the additional checks before calling ghes_notify_sea() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Add static attribute to indirect_io_hosts[] (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: Do not export energy_full[_design] on devices without full_charge_capacity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / EC: Use ec_no_wakeup on ThinkPad X1 Yoga 3rd (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: get rid of negations in conditions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: use specialized print macros (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: reorder headers alphabetically (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: drop inclusion of init.h (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: battery: remove redundant old_present check on insertion (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Use data node name and reg property for graphs (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Allow direct graph endpoint references (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Make the ACPI graph API private (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Allow making references to non-device nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Convert ACPI reference args to generic fwnode reference args (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / OSI: Add OEM _OSI string to enable NVidia HDMI audio (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPI / bus: Parse tables as term_list for Dell XPS 9570 and Precision M5530" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: save NVS memory for ASUS 1025C laptop (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / button: fix defined but not used warning (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20180629 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Revert "iASL compiler: allow compilation of externals with paths that refer to existing names" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Revert "iASL: change processing of external op namespace nodes for correctness" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / x86: enable touchscreen on Dell Venue Pro 7139 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: Default to s2idle in all machines supporting LP S0 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / button: increment wakeup count only when notified (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [powerpc] powerpc/papr_scm: Fix an off-by-one check in papr_scm_meta_{get, set} (Gustavo Duarte) [1731035] - [nvdimm] libnvdimm/altmap: Track namespace boundaries in altmap (Gustavo Duarte) [1731035] - [powerpc] powerpc/nvdimm: Pick nearby online node if the device node is not online (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Force a scm-unbind if initial scm-bind fails (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Update drc_pmem_unbind() to use H_SCM_UNBIND_ALL (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries: Update SCM hcall op-codes in hvcall.h (Gustavo Duarte) [1731035] - [mm] mm/nvdimm: add is_ioremap_addr and use that to check ioremap address (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries/scm: Use a specific endian format for storing uuid from the device tree (Gustavo Duarte) [1731035] - [powerpc] powerpc/nvdimm: Add support for multibyte read/write for metadata (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries/scm: Mark the region volatile if cache flush not required (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/nvdimm: Add an informative message if we fail to allocate altmap block (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm: Consolidate numa_enable check and min_common_depth check (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm: Fix node look up with numa=off boot (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/drconf: Use NUMA_NO_NODE on failures instead of node 0 (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/radix: Use the right page size for vmemmap mapping (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/hash/4k: Don't use 64K page size for vmemmap with 4K pagesize (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Use the correct bind address (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm: Fallback to RAM if the altmap is unusable (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Use ibm, unit-guid as the iset cookie (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Fix DIMM device registration race (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Remove endian conversions (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Update DT properties (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Fix resource end address (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Use depend instead of select (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries: Add driver for PAPR SCM regions (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries: PAPR persistent memory support (Gustavo Duarte) [1731035] - [mm] mm, vmstat: reduce zone->lock holding time by /proc/pagetypeinfo (Waiman Long) [1770314] - [mm] mm, vmstat: hide /proc/pagetypeinfo from normal users (Waiman Long) [1770314] - [crypto] crypto: chtls - remove cdev_list_lock (Neil Horman) [1737078] - [crypto] crypto/chelsio/chtls: listen fails with multiadapt (Neil Horman) [1737078] - [tools] cpupower : Handle set and info subcommands correctly (Steve Best) [1769973] - [s390] s390/qeth: use IQD Multi-Write (Philipp Rudo) [1731028] - [s390] s390/qdio: implement IQD Multi-Write (Philipp Rudo) [1731028] - [s390] s390/qeth: add xmit_more support for IQD devices (Philipp Rudo) [1731028] - [s390] s390/qeth: add BQL support for IQD devices (Philipp Rudo) [1731028] - [s390] s390/qeth: when in TX NAPI mode, use napi_consume_skb() (Philipp Rudo) [1731028] - [s390] s390/qeth: add TX NAPI support for IQD devices (Philipp Rudo) [1731028] - [s390] s390/qeth: collect accurate TX statistics (Philipp Rudo) [1731028] - [s390] s390/qdio: let drivers opt-out from Output Queue scanning (Philipp Rudo) [1731028] - [s390] s390/qdio: enable drivers to poll for Output completions (Philipp Rudo) [1731028] - [usb] xhci-pci: allow host runtime PM as default for Intel Alpine and Titan Ridge (Myron Stowe) [1769877] - [x86] x86/atomic: Fix smp_mb__{before,after}_atomic() (Prarit Bhargava) [1769789] - [kernel] stacktrace: Don't skip first entry on noncurrent tasks (Waiman Long) [1766681] - [kernel] tracing: Fix user stack trace "??" output (Waiman Long) [1766681] - [kernel] tracing: Fix out-of-range read in trace_stack_print() (Waiman Long) [1766681] - [kernel] stacktrace: Constify 'entries' arguments (Waiman Long) [1766681] - [kernel] stacktrace: Force USER_DS for stack_trace_save_user() (Waiman Long) [1766681] - [x86] x86/stacktrace: Prevent infinite loop in arch_stack_walk_user() (Waiman Long) [1766681] - [kernel] stacktrace: Use PF_KTHREAD to check for kernel threads (Waiman Long) [1766681] - [kernel] stacktrace: Unbreak stack_trace_save_tsk_reliable() (Waiman Long) [1766681] - [x86] x86/stacktrace: Use common infrastructure (Waiman Long) [1766681] - [kernel] stacktrace: Keep stack_trace structure and remove snprint_stack_trace() (Waiman Long) [1766681] - [kernel] stacktrace: Provide common infrastructure (Waiman Long) [1766681] - [kernel] livepatch: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] tracing: Remove the last struct stack_trace usage (Waiman Long) [1766681] - [kernel] tracing: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] tracing: Make ftrace_trace_userstack() static and conditional (Waiman Long) [1766681] - [kernel] tracing: Use percpu stack trace buffer more intelligently (Waiman Long) [1766681] - [kernel] tracing: Simplify stacktrace retrieval in histograms (Waiman Long) [1766681] - [kernel] lockdep: Remove save argument from check_prev_add() (Waiman Long) [1766681] - [kernel] lockdep: Remove unused trace argument from print_circular_bug() (Waiman Long) [1766681] - [drm] drm: Simplify stacktrace handling (Waiman Long) [1766681] - [md] dm persistent data: Simplify stack trace handling (Waiman Long) [1766681] - [md] dm bufio: Simplify stack trace retrieval (Waiman Long) [1766681] - [fs] btrfs: ref-verify: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] dma/debug: Simplify stracktrace retrieval (Waiman Long) [1766681] - [lib] fault-inject: Simplify stacktrace retrieval (Waiman Long) [1766681] - [mm] mm/page_owner: Simplify stack trace handling (Waiman Long) [1766681] - [mm] mm/kmemleak: Simplify stacktrace handling (Waiman Long) [1766681] - [mm] mm/slub: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] latency_top: Simplify stack trace handling (Waiman Long) [1766681] - [fs] proc: Simplify task stack retrieval (Waiman Long) [1766681] - [kernel] backtrace-test: Simplify stack trace handling (Waiman Long) [1766681] - [lib] lib/stackdepot: Provide functions which operate on plain storage arrays (Waiman Long) [1766681] - [kernel] stacktrace: Provide helpers for common stack trace operations (Waiman Long) [1766681] - [kernel] tracing: Cleanup stack trace code (Waiman Long) [1766681] - [kernel] tracing: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [drm] drm: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [kernel] latency_top: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [mm] mm/kasan: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [mm] mm/page_owner: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [mm] mm/slub: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [kernel] lockdep: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [kernel] s390/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] parisc/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] arm64/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] riscv/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] unicore32/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] sh/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] arm/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] [x86] x86/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] um/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [mm] mm/page_owner: clamp read count to PAGE_SIZE (Waiman Long) [1766681] - [kernel] tracing: Export trace_dump_stack to modules (Waiman Long) [1766681] - [kernel] tracing: Have stack tracer trace full stack (Waiman Long) [1766681] - [kernel] trace: Use rcu_dereference_raw for hooks from trace-event subsystem (Waiman Long) [1766681] - [kernel] tracing: Have trace_stack nr_entries compare not be so subtle (Waiman Long) [1766681] - [cpuidle] cpuidle: governor: Add new governors to cpuidle_governors again (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: do not set an owner to allow modunload (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: set haltpoll as preferred governor (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: allow governor switch on cpuidle_register_driver() (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: Add cpuidle.governor= command line parameter (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: vcpu hotplug support (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: disable host side polling when kvm virtualized (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: add haltpoll governor (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: header file stubs must be "static inline" (Marcelo Tosatti) [1759282] - [cpuidle] governors: unify last_state_idx (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: add poll_limit_ns to cpuidle_device structure (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: poll_state: Fix default time limit (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: poll_state: Disregard disable idle states (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: poll_state: Revise loop termination condition (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: menu: Fix wakeup statistics updates for polling state (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: return -ENODEV on modinit failure (Marcelo Tosatti) [1759282] - [cpuidle] add cpuidle-haltpoll driver (Marcelo Tosatti) [1759282] - [mm] mem-hotplug: fix node spanned pages when we have a node with only ZONE_MOVABLE (Baoquan He) [1756210] - [x86] x86, efi: never relocate kernel below lowest acceptable address (Kairui Song) [1747367] - [fs] CIFS: Force reval dentry if LOOKUP_REVAL flag is set (Dave Wysochanski) [1767664] - [fs] CIFS: Force revalidate inode when dentry is stale (Dave Wysochanski) [1767664] - [fs] CIFS: Gracefully handle QueryInfo errors during open (Dave Wysochanski) [1767664] - [block] blk-mq: make sure that line break can be printed (Ming Lei) [1741462] - [block] blk-mq: avoid sysfs buffer overflow with too many CPU cores (Ming Lei) [1741462] - [netdrv] bnx2x: Fix VF's VLAN reconfiguration in reload. (Manish Chopra) [1720393] - [netdrv] bnx2x: Prevent ptp_task to be rescheduled indefinitely (Manish Chopra) [1720393] - [netdrv] bnx2x: Check if transceiver implements DDM before access (Manish Chopra) [1720393] - [fs] xfs: allocate xattr buffer on demand (Eric Sandeen) [1684599] - [fs] xfs: consolidate attribute value copying (Eric Sandeen) [1684599] - [fs] xfs: move remote attr retrieval into xfs_attr3_leaf_getvalue (Eric Sandeen) [1684599] - [fs] xfs: remove unnecessary indenting from xfs_attr3_leaf_getvalue (Eric Sandeen) [1684599] - [fs] xfs: make attr lookup returns consistent (Eric Sandeen) [1684599] - [i2c] i2c: i801: Add support for Intel Comet Lake (David Arcari) [1761547] - [powerpc] powerpc/xmon: Improve output of XIVE interrupts (Diego Domingos) [1731130] - [powerpc] powerpc/xmon: Fix output of XIVE IPI (Diego Domingos) [1731130] - [powerpc] powerpc/xmon: Add a dump of all XIVE interrupts (Diego Domingos) [1731130] - [powerpc] powerpc/xive: Fix dump of XIVE interrupt under pseries (Diego Domingos) [1731130] - [powerpc] powerpc/xmon: Check for HV mode when dumping XIVE info from OPAL (Diego Domingos) [1731130] - [fs] xfs: convert inode to extent format after extent merge due to shift (Brian Foster) [1745253] - [mmc] mmc: sdhci-pci: Add support for Intel CML (Alexander Beregalov) [1761593] - [powerpc] powerpc/mm/mce: Keep irqs disabled during lockless page table walk (Gustavo Duarte) [1524649] - [tools] seltests/powerpc: Add a selftest for memcpy_mcsafe (Gustavo Duarte) [1524649] - [powerpc] powerpc/memcpy: Fix stack corruption for smaller sizes (Gustavo Duarte) [1524649] - [powerpc] powerpc: add machine check safe copy_to_user (Gustavo Duarte) [1524649] - [powerpc] powerpc/memcpy: Add memcpy_mcsafe for pmem (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Handle UE event for memcpy_mcsafe (Gustavo Duarte) [1524649] - [kernel] extable: Add function to search only kernel exception table (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Make machine_check_ue_event() static (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Fix MCE handling for huge pages (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Schedule work from irq_work (Gustavo Duarte) [1524649] - [x86] x86/boot/64: Round memory hole size up to next PMD page (Frank Ramsay) [1755602] - [x86] x86/boot/64: Make level2_kernel_pgt pages invalid outside kernel area (Frank Ramsay) [1755602] - [idle] intel_idle: add support for Jacobsville (Steve Best) [1481744] - [powercap] powercap/intel_rapl: add support for ICX (Steve Best) [1724421] - [block] blk-mq: apply normal plugging for HDD (Ming Lei) [1759380] - [block] blk-mq: honor IO scheduler for multiqueue devices (Ming Lei) [1759380] - [block] blk-mq: simplify blk_mq_make_request() (Ming Lei) [1759380] - [block] blk-mq: remove blk_mq_put_ctx() (Ming Lei) [1759380] - [nvdimm] libnvdimm: Enable unit test infrastructure compile checks (Jeff Moyer) [1724965] - [nvdimm] libnvdimm: Use PAGE_SIZE instead of SZ_4K for align check (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/label: Remove the dpa align check (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pfn_dev: Add page size and struct page size to pfn superblock (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pfn_dev: Add a build check to make sure we notice when struct page size change (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pmem: Advance namespace seed for specific probe errors (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/region: Rewrite _probe_success() to _advance_seeds() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/security: Consolidate 'security' operations (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/security: Tighten scope of nvdimm->busy vs security operations (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/security: Introduce a 'frozen' attribute (Jeff Moyer) [1724965] - [nvdimm] libnvdimm, region: Use struct_size() in kzalloc() (Jeff Moyer) [1724965] - [tools] tools/testing/nvdimm: Fix fallthrough warning (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/of_pmem: Provide a unique name for bus provider (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Fix wait_nvdimm_bus_probe_idle() ABBA deadlock (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Stop holding nvdimm_bus_list_mutex over __nd_ioctl() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Prepare the nd_ioctl() path to be re-entrant (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/region: Register badblocks before namespaces (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Prevent duplicate device_unregister() calls (Jeff Moyer) [1724965] - [drivers] drivers/base: Introduce kill_device() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm, namespace: Drop uuid_t implementation detail (Jeff Moyer) [1724965] - [dax] device-dax: Add a 'resource' attribute (Jeff Moyer) [1724965] - [dax] device-dax: Drop register_filesystem() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pmem: Bypass CONFIG_HARDENED_USERCOPY overhead (Jeff Moyer) [1724965] - [nvdimm] libnvdimm: Fix compilation warnings with W=1 (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/namespace: Fix label tracking error (Jeff Moyer) [1724965] - [dax] device-dax: Add a 'modalias' attribute to DAX 'bus' devices (Jeff Moyer) [1724965] - [dax] device-dax: Add a 'target_node' attribute (Jeff Moyer) [1724965] - [dax] device-dax: Auto-bind device after successful new_id (Jeff Moyer) [1724965] - [dax] acpi/nfit, device-dax: Identify differentiated memory with a unique numa-node (Jeff Moyer) [1724965] - [dax] device-dax: Add /sys/class/dax backwards compatibility (Jeff Moyer) [1724965] - [dax] device-dax: Add support for a dax override driver (Jeff Moyer) [1724965] - [dax] device-dax: Move resource pinning+mapping into the common driver (Jeff Moyer) [1724965] - [dax] device-dax: Introduce bus + driver model (Jeff Moyer) [1724965] - [dax] device-dax: Start defining a dax bus model (Jeff Moyer) [1724965] - [dax] device-dax: Remove multi-resource infrastructure (Jeff Moyer) [1724965] - [dax] device-dax: Kill dax_region base (Jeff Moyer) [1724965] - [dax] device-dax: Kill dax_region ida (Jeff Moyer) [1724965] - [kernel] memremap: Convert to XArray (Jeff Moyer) [1724965] - [drivers] drivers/dax/device.c: convert variable to vm_fault_t type (Jeff Moyer) [1724965] - [drivers] driver core: Rewrite test_async_driver_probe to cover serialization and NUMA affinity (Jeff Moyer) [1724965] - [drivers] libnvdimm: Schedule device registration on node local to the device (Jeff Moyer) [1724965] - [drivers] PM core: Use new async_schedule_dev command (Jeff Moyer) [1724965] - [drivers] driver core: Attach devices on CPU local to device node (Jeff Moyer) [1724965] - [kernel] async: Add support for queueing on specific NUMA node (Jeff Moyer) [1724965] - [kernel] workqueue: Provide queue_work_node to queue work near a given NUMA node (Jeff Moyer) [1724965] - [drivers] driver core: Probe devices asynchronously instead of the driver (Jeff Moyer) [1724965] - [drivers] device core: Consolidate locking and unlocking of parent and device (Jeff Moyer) [1724965] - [drivers] driver core: Establish order of operations for device_add and device_del via bitflag (Jeff Moyer) [1724965] - [drivers] driver core: Add missing dev->bus->need_parent_lock checks (Jeff Moyer) [1724965] - [drivers] driver core: Move async_synchronize_full call (Jeff Moyer) [1724965]- [scsi] scsi: qedi: update driver version to 8.37.0.20 (Nilesh Javali) [1724588] - [scsi] scsi: qedi: Check targetname while finding boot target information (Nilesh Javali) [1724588] - [scsi] scsi: qedi: remove set but not used variables 'cdev' and 'udev' (Nilesh Javali) [1724588] - [scsi] scsi: qedi: remove memset/memcpy to nfunc and use func instead (Nilesh Javali) [1724588] - [scsi] qedi: Use hwfns and affin_hwfn_idx to get MSI-X vector index (Nilesh Javali) [1724588] - [scsi] scsi: qedf: Update the version to 8.42.3.0 (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Fix race betwen fipvlan request and response path (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Use discovery list to traverse rports (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Decrease the LL2 MTU size to 2500 (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Check for module unloading bit before processing link update AEN (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Initiator fails to re-login to switch after link down (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Add debug information for unsolicited processing (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Add support for 20 Gbps speed (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Interpret supported caps value correctly (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Add shutdown callback handler (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Update module description string (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Fix crash during sg_reset (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Stop sending fipvlan request on unload (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Print message during bailout conditions (Nilesh Javali) [1724589] - [scsi] qedf: Use hwfns and affin_hwfn_idx to get MSI-X vector index to use (Nilesh Javali) [1724589] - [scsi] scsi: bnx2fc: Handle scope bits when array returns BUSY or TSF (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: remove set but not used variables 'task', 'port', 'orig_task' (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: remove set but not used variables 'lport', 'host' (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: remove set but not used variable 'fh' (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: fix bnx2fc_cmd refcount imbalance in send_srr (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: fix bnx2fc_cmd refcount imbalance in send_rec (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Update the driver version to 2.12.10 (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Limit the IO size according to the FW capability (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Do not allow both a cleanup completion and abort completion for the same request (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Separate out completion flags and variables for abort and cleanup (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Only put reference to io_req in bnx2fc_abts_cleanup if cleanup times out (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Redo setting source FCoE MAC (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: fix incorrect cast to u64 on shift operation (Nilesh Javali) [1724598] - [netdrv] qed: Fix build error without CONFIG_DEVLINK (Manish Chopra) [1720392] - [netdrv] RDMA/qedr: Fix the hca_type and hca_rev returned in device attributes (Manish Chopra) [1720392] - [netdrv] qede: qede_fp: simplify a bit 'qede_rx_build_skb()' (Manish Chopra) [1720392] - [netdrv] qede: Make two functions static (Manish Chopra) [1720392] - [netdrv] qede: Handle infinite driver spinning for Tx timestamp. (Manish Chopra) [1720392] - [netdrv] qed: fix spelling mistake "fullill" -> "fulfill" (Manish Chopra) [1720392] - [netdrv] qed: Fix Config attribute frame format. (Manish Chopra) [1720392] - [netdrv] qed*: Fix size of config attribute dump. (Manish Chopra) [1720392] - [netdrv] net: qed: Move static keyword to the front of declaration (Manish Chopra) [1720392] - [netdrv] qede: Add support for dumping the grc data. (Manish Chopra) [1720392] - [netdrv] qed: Add APIs for configuring grc dump config flags. (Manish Chopra) [1720392] - [netdrv] qede: Add support for reading the config id attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add APIs for reading config id attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add cleanup in qed_slowpath_start() (Manish Chopra) [1720392] - [netdrv] qed: Add driver API for flashing the config attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add API for configuring NVM attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add new ethtool supported port types based on media. (Manish Chopra) [1720392] - [netdrv] net/ethernet/qlogic/qed: force the string buffer NULL-terminated (Manish Chopra) [1720392] - [netdrv] qed: RDMA - Fix the hw_ver returned in device attributes (Manish Chopra) [1720392] - [netdrv] qed*: Change dpi_addr to be denoted with __iomem (Manish Chopra) [1720392] - [netdrv] qed: reduce maximum stack frame size (Manish Chopra) [1720392] - [netdrv] qed: Prefer pcie_capability_read_word() (Manish Chopra) [1720392] - [netdrv] qed: Add support for Timestamping the unicast PTP packets. (Manish Chopra) [1720392] - [netdrv] qed: Fix -Wmaybe-uninitialized false positive (Manish Chopra) [1720392] - [netdrv] qed: iWARP - Fix default window size to be based on chip (Manish Chopra) [1720392] - [netdrv] qed: iWARP - Fix tc for MPA ll2 connection (Manish Chopra) [1720392] - [netdrv] qed: iWARP - fix uninitialized callback (Manish Chopra) [1720392] - [netdrv] qed: iWARP - Use READ_ONCE and smp_store_release to access ep->state (Manish Chopra) [1720392] - [netdrv] qed: remove redundant assignment to rc (Manish Chopra) [1720392] - [netdrv] qed: Fix static checker warning (Manish Chopra) [1720392] - [netdrv] qed: fix spelling mistake "inculde" -> "include" (Manish Chopra) [1720392] - [netdrv] qed: Reduce the severity of ptp debug message. (Manish Chopra) [1720392] - [netdrv] qed*: Add iWARP 100g support (Manish Chopra) [1720392] - [netdrv] qed: Add qed devlink parameters table (Manish Chopra) [1720392] - [netdrv] qed: Set the doorbell address correctly (Manish Chopra) [1720392] - [netdrv] qedr: Change the MSI-X vectors selection to be based on affined engine (Manish Chopra) [1720392] - [netdrv] qed: Modify offload protocols to use the affined engine (Manish Chopra) [1720392] - [netdrv] qed*: Change hwfn used for sb initialization (Manish Chopra) [1720392] - [netdrv] qed: Add llh ppfid interface and 100g support for offload protocols (Manish Chopra) [1720392] - [netdrv] qed: Modify api for performing a dmae to another PF (Manish Chopra) [1720392] - [virt] kvm: arm/arm64: vgic: Use the appropriate TRACE_INCLUDE_PATH (Auger Eric) [1749501] - [arm64] kvm: Kill hyp_alternate_select() (Auger Eric) [1749501] - [arm64] kvm: Replace hyp_alternate_select with has_vhe() (Auger Eric) [1749501] - [arm64] kvm: Drop hyp_alternate_select for checking for ARM64_WORKAROUND_834220 (Auger Eric) [1749501] - [documentation] kvm: arm/arm64: vgic: Allow more than 256 vcpus for KVM_IRQ_LINE (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Use a single IO device per redistributor (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Remove spurious semicolons (Auger Eric) [1749501] - [arm64] perf_event: Add missing header needed for smp_processor_id() (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Make function comments match function declarations (Auger Eric) [1749501] - [arm64] kvm: Remove VMID rollover I-cache maintenance (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-irqfd: Implement kvm_arch_set_irq_inatomic (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Check the LPI translation cache on MSI injection (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Cache successful MSI->LPI translation (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on vgic teardown (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on ITS disable (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on disabling LPIs (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on specific commands (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Add MSI-LPI translation cache invalidation (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Add __vgic_put_lpi_locked primitive (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Add LPI translation cache definition (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-v2: Handle SGI bits in GICD_I{S, C}PENDR0 as WI (Auger Eric) [1749501] - [arm64] kvm: Replace hardcoded '1' with SYS_PAR_EL1_F (Auger Eric) [1749501] - [arm64] sysreg: Add some field definitions for PAR_EL1 (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Fix potential deadlock when ap_list is long (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Properly initialise private IRQ affinity (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Reevaluate level sensitive interrupts on enable (Auger Eric) [1749501] - [arm64] kvm: arm64: Don't write junk to sysregs on reset (Auger Eric) [1749501] - [virt] kvm: arm/arm64: Sync ICH_VMCR_EL2 back when about to block (Auger Eric) [1749501] - [arm64] kvm: hyp: debug-sr: Mark expected switch fall-through (Auger Eric) [1749501] - [arm64] kvm: arm64: Update kvm_arm_exception_class and esr_class_str for new EC (Auger Eric) [1749501] - [virt] kvm: arm: vgic-v3: Mark expected switch fall-through (Auger Eric) [1749501] - [arm64] kvm: regmap: Fix unexpected switch fall-through (Auger Eric) [1749501] - [arm64] sve: Fix a couple of magic numbers for the Z-reg count (Auger Eric) [1749501] - [arm64] sve: Factor out FPSIMD to SVE state conversion (Auger Eric) [1749501] - [arm64] kvm: arm/arm64: Initialise host's MPIDRs by reading the actual register (Auger Eric) [1749501] - [arm64] kvm: arm64: Migrate _elx sysreg accessors to msr_s/mrs_s (Auger Eric) [1749501] - [arm64] sysreg: Make mrs_s and msr_s macros work with Clang and LTO (Auger Eric) [1749501] - [documentation] kvm: doc: Add API documentation on the KVM_REG_ARM_WORKAROUNDS register (Auger Eric) [1749501] - [virt] kvm: arm/arm64: Add save/restore support for firmware workaround state (Auger Eric) [1749501] - [arm64] kvm: Propagate full Spectre v2 workaround state to KVM guests (Auger Eric) [1749501] - [arm64] sve: Fix missing SVE/FPSIMD endianness conversions (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Fix kvm_device leak in vgic_its_destroy (Auger Eric) [1749501] - [arm64] kvm: arm64: Filter out invalid core register IDs in KVM_GET_REG_LIST (Auger Eric) [1749501] - [arm64] kvm: arm64: Skip more of the SError vaxorcism (Auger Eric) [1749501] - [arm64] kvm: arm64: Re-mask SError after the one instruction window (Auger Eric) [1749501] - [arm64] Update silicon-errata.txt for Neoverse-N1 #1349291 (Auger Eric) [1749501] - [arm64] kvm: arm64: Defer guest entry when an asynchronous exception is pending (Auger Eric) [1749501] - [arm64] kvm: arm64: Consume pending SError as early as possible (Auger Eric) [1749501] - [arm64] kvm: arm64: Make indirect vectors preamble behaviour symmetric (Auger Eric) [1749501] - [arm64] kvm: arm64: Abstract the size of the HYP vectors pre-amble (Auger Eric) [1749501] - [arm64] assembler: Switch ESB-instruction with a vanilla nop if !ARM64_HAS_RAS (Auger Eric) [1749501] - [arm64] kvm: arm64/sve: Fix vq_present() macro to yield a bool (Auger Eric) [1749501] - [arm64] kvm: arm64: Implement vq_present() as a macro (Auger Eric) [1749501] - [arm64] fpsimd: Don't disable softirq when touching FPSIMD/SVE state (Auger Eric) [1749501] - [arm64] fpsimd: Introduce fpsimd_save_and_flush_cpu_state() and use it (Auger Eric) [1749501] - [arm64] fpsimd: Remove the prototype for sve_flush_cpu_state() (Auger Eric) [1749501] - [scripts] genksyms: Teach parser about 128-bit built-in types (Auger Eric) [1749501] - [tools] kvm: selftests: introduce aarch64_vcpu_add_default (Auger Eric) [1749501] - [tools] kvm: selftests: introduce aarch64_vcpu_setup (Auger Eric) [1749501] - [virt] kvm: arm/arm64: Move cc/it checks under hyp's Makefile to avoid instrumentation (Auger Eric) [1749501] - [arm64] kvm: arm64: Move pmu hyp code under hyp's Makefile to avoid instrumentation (Auger Eric) [1749501] - [documentation] arm64: docs: Document perf event attributes (Auger Eric) [1749501] - [arm64] kvm: Fix perf cycle counter support for VHE (Auger Eric) [1749501] - [arm64] kvm: Avoid isb's by using direct pmxevtyper sysreg (Auger Eric) [1749501] - [arm64] kvm: Enable VHE support for :G/:H perf event modifiers (Auger Eric) [1749501] - [arm64] kvm: Enable !VHE support for :G/:H perf event modifiers (Auger Eric) [1749501] - [arm64] arm_pmu: Add !VHE support for exclude_host/exclude_guest attributes (Auger Eric) [1749501] - [arm64] kvm: Add accessors to track guest/host only counters (Auger Eric) [1749501] - [arm64] arm_pmu: Remove unnecessary isb instruction (Auger Eric) [1749501] - [arm64] perf: Add support for chaining event counters (Auger Eric) [1749501] - [arm64] perf: Disable PMU while processing counter overflows (Auger Eric) [1749501] - [arm64] perf: Clean up armv8pmu_select_counter (Auger Eric) [1749501] - [arm64] kvm: arm: Remove pgtable page standard functions from stage-2 page tables (Auger Eric) [1749501] - [netdrv] e1000e: Add support for Tiger Lake (Ken Cox) [1767480] - [netdrv] ethernet: Delete unnecessary checks before the macro call dev_kfree_skb (Corinna Vinschen) [1721705] - [netdrv] igb: Use dev_get_drvdata where possible (Corinna Vinschen) [1721705] - [netdrv] net: Use skb accessors in network drivers (Corinna Vinschen) [1721705] - [netdrv] igb: add RR2DCDELAY to ethtool registers dump (Corinna Vinschen) [1721705] - [netdrv] igb: minor ethool regdump amendment (Corinna Vinschen) [1721705] - [netdrv] igb: clear out skb->tstamp after reading the txtime (Corinna Vinschen) [1721705] - [netdrv] igb: mark expected switch fall-through (Corinna Vinschen) [1721705] - [netdrv] igb: mark expected switch fall-through (Corinna Vinschen) [1721705] - [netdrv] igb/igc: warn when fatal read failure happens (Corinna Vinschen) [1721705] - [netdrv] igb: fix various indentation issues (Corinna Vinschen) [1721705] - [netdrv] igb: Exclude device from suspend direct complete optimization (Corinna Vinschen) [1721705] - [netdrv] intel: correct return from set features callback (Corinna Vinschen) [1721705] - [netdrv] net: Use skb accessors in network drivers (Corinna Vinschen) [1721708] - [s390] s390/kaslr: reserve memory for kasan usage (Philipp Rudo) [1725888] - [s390] s390/mem_detect: provide single get_mem_detect_end (Philipp Rudo) [1725888] - [s390] s390/setup: adjust start_code of init_mm to _text (Philipp Rudo) [1725888] - [s390] s390/boot: add missing declarations and includes (Philipp Rudo) [1725888] - [s390] locking/lockdep: check for freed initmem in static_obj() (Philipp Rudo) [1725888] - [s390] s390/kernel: add support for kernel address space layout randomization (KASLR) (Philipp Rudo) [1725888] - [s390] s390/kernel: introduce .dma sections (Philipp Rudo) [1725888] - [s390] s390/sclp: do not use static sccbs (Philipp Rudo) [1725888] - [s390] s390/kprobes: use static buffer for insn_page (Philipp Rudo) [1725888] - [s390] s390/kernel: convert SYSCALL and PGM_CHECK handlers to .quad (Philipp Rudo) [1725888] - [s390] s390/kernel: build a relocatable kernel (Philipp Rudo) [1725888] - [s390] s390/extmem: remove code for 31 bit addressing mode (Philipp Rudo) [1725888] - [s390] s390/setup: remove obsolete #ifdef (Philipp Rudo) [1725888] - [net] net/core: work around section mismatch warning for ptp_classifier (Philipp Rudo) [1725888] - [sound] ALSA: bebob: fix to detect configured source of sampling clock for Focusrite Saffire Pro i/o series (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: link the order of establishing connections and Syt-match clock mode (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: expand delay of start for IR context just for version 3 firmware (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: expand sleep just after breaking connections for protocol version 1 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC/SOF - enable SND_SOC_SOF_HDA_COMMON_HDMI_CODEC (Jaroslav Kysela) [1710702] - [sound] ALSA: timer: Fix mutex deadlock at releasing card (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: Add quirk for boards using pmc_plt_clk_0 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: eve: Enable mclk and ssp sclk early (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: dt-bindings: rt5682: add button delay device property (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: rt5682: improve the sensitivity of push button (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: bxt_rt298: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: sof_rt5682: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: add support for snd-hda-codec-hdmi (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: fix include guard name (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: use snd-hda-codec-hdmi (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: hdac_hda: add support for HDMI/DP as a HDA codec (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/hdmi - implement mst_no_extra_pcms flag (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF - remove the dead code (skylake/kabylake) (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel - fix the card names (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pci: Add prepare/complete PM callbacks (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: Add support for DSP D0i3 state when entering S0ix (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: return -ENOTSUPP if D0I3 is not supported (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-dsp: implement suspend/resume for S0ix<->S0 transition (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ignore suspend/resume for D0ix compatible streams (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: implement prepare/complete callbacks (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add a flag suspend_ignored for sof stream (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add a flag to indicate the system suspend target (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: CNL: add support for sending compact IPC (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: add helpers for setting D0 substate for ADSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: configure D0ix IPC flags in set_power_state (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: HDA: add cAVS specific compact IPC header file (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: Don't read mailbox for PM_GATE reply (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ipc: introduce message for DSP power gating (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: rename sof_send_pm_ipc to sof_send_pm_ctx_ipc (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: HDA: use macro for register polling retry count (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-dsp: align the comments for D0I3C update (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: parse and store d0i3_compatible flag (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: token: add tokens for PCM compatible with D0i3 substate (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add flag to snd_sof_pcm_stream for D0i3 compatible stream (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: APL: add set_power_state() ops (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: CNL: add set_power_state() ops (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-dsp: Add helper for setting DSP D0ix substate (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add set_power_state() to dsp_ops for power state update (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: reset default d0_substate at probe() and resume() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add a field to store the current D0 substate of DSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: eve: implement set_bias_level function for rt5514 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: only support INFO_BATCH for legacy platforms (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: define INFO_ flags in dsp_ops (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: initial support to JasperLake. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for JSL (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: add dev_err() traces for snd_sof_dsp_read_poll_timeout() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-loader: improve error handling (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: sof: include types.h at header.h (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Fix randbuild error (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: check errors when parsing LED tokens (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: remove always-true redundant test (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: bdw: fix operator precedence warnings (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: byt: fix operator precedence warnings (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: imx: Read ESAI parameters and send them to DSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: acpi led support for switch controls (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: imx: Describe ESAI parameters to be sent to DSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pci: add debug module param (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: acpi: add debug module param (Jaroslav Kysela) [1710702] - [sound] ALSA: Revert "ASoC: SOF: Force polling mode on CFL and CNL" (Jaroslav Kysela) [1710702] - [sound] ALSA: AsoC: SOF: refactor control load code (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: enable dual control for pga (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: enable sync_write in hdac_bus (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: simple_card_utils.h: Add missing include (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: Add context data to any IPC timeout. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: fix reset of host_period_bytes (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ipc: introduce no_stream_position in sof_ipc_stream_params struct (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: core: check for mandatory fw_ready op during SOF probe (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ipc: retain DSP context after FW exception. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: trace: move to opt-in with Kconfig and module parameter (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Fix 2 front mics of codec 0x623 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Add support for ALC623 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Fix mutex deadlock in HDMI codec driver (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Fix pending unsol events at shutdown (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: Correct a typo in the clock proc string (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: add support for MOTU UltraLite (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: code refactoring to handle model specific switch for protocol v2 (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: minor code refactoring for protocol version 2 (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: detect SPH source of sampling clock (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: print for unknown source of sampling clock (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: fix wrong spelling for macro (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: Fix prototype of helper function to return negative value (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Disable quirks for BOSS Katana amplifiers (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: sound: usb: usb true/false for bool return type (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Add DSD support for Gustard U16/X26 USB Interface (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: Allow non-Intel device probe gracefully (Jaroslav Kysela) [1710702] - [sound] ALSA: Revert "ALSA: hda: Flush interrupts on disabling" (Jaroslav Kysela) [1710702] - [sound] ALSA: PCI: Fix missing inline for pci_pr3_present() (Jaroslav Kysela) [1710702] - [sound] ALSA: PCI: Add a helper to check Power Resource Requirements _PR3 existence (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Fix copy&paste error in the validator (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Add DSD support for EVGA NU Audio (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: postpone to start IR context (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: handle several AMDTP streams in callback handler of IRQ target (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: cancel flushing isoc context in the laste step to process context callback (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: replace ack callback to flush isoc contexts in AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: replace pointer callback to flush isoc contexts in AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: add irq_target member into amdtp_domain struct (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: tune the minimum available size of PCM period (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: tune the maximum available size of PCM period (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: schedule hardware IRQ according to the size of PCM period (Jaroslav Kysela) [1710702] - [sound] ALSA: fireface: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-tascam: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-digi00x: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: dice: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: oxfw: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: fireworks: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: use variable size of queue for isoc packets instead of fixed size (Jaroslav Kysela) [1710702] - [sound] ALSA: fireface: use the same size of period for PCM substreams in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-tascam: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-digi00x: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: dice: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: oxfw: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: fireworks: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: fireface: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-tascam: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-digi00x: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: dice: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: oxfw: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: fireworks: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: add a member into AMDTP domain for events per period (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Enable headset mic on Asus MJ401TA (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek: Reduce the Headphone static noise on XPS 9350/9360 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Add support for ALC711 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Force runtime PM on Nvidia HDMI codecs (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Add laptop imic fixup for ASUS M9V laptop (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: Add Tigerlake/Jasperlake PCI ID (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: Allow HDA to be runtime suspended when dGPU is not bound to a driver (Jaroslav Kysela) [1710702] - [sound] ALSA: hdac: clear link output stream mapping (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: dapm: fix a memory leak bug (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: debug: fix possible memory leak in sof_dfsentry_write() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: sof-rt5682: add a check for devm_clk_get (Jaroslav Kysela) [1710702] - [sound] ALSA: Fix Kconfig indentation (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: control: return true when kcontrol values change (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: fix intel DSP config (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: add Intel DSP configuration / probe code (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: core: Fix pcm code debugfs error (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoc: rockchip: i2s: Fix RPM imbalance (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: wm_adsp: Don't generate kcontrols without READ flags (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: bytcr_rt5651: add null check to support_button_press (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: sof_rt5682: add remove function to disable jack (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: rt5682: add NULL handler to set_jack function (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: sof_rt5682: use separate route map for dmic (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: Disable DMI L1 entry during capture (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: initialise and verify FW crash dump data. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: fix warnings during FW load (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pcm: harden PCM STOP sequence (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pcm: fix resource leak in hw_free (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: fix parse fail issue for byte/bool tuple types (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: loader: fix kernel oops on firmware boot failure (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: wm_adsp: Fix theoretical NULL pointer for alg_region (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: max98373: check for device node before parsing (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: topology: Fix a signedness bug in soc_tplg_dapm_widget_create() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: soc-component: fix a couple missing error assignments (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: wm8994: Do not register inapplicable controls for WM1811 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: samsung: arndale: Add missing OF node dereferencing (Jaroslav Kysela) [1710702] - [infiniband] RDMA/bnxt_re: Fix spelling mistake "missin_resp" -> "missing_resp" (Kamal Heib) [1724772] - [infiniband] RDMA: Fix goto target to release the allocated memory (Kamal Heib) [1724772] - [infiniband] IB/bnxt_re: Do not notifify GID change event (Kamal Heib) [1724772] - [infiniband] RDMA/bnxt_re: Honor vlan_id in GID entry comparison (Kamal Heib) [1724772] - [infiniband] ib/bnxt: Remove mention of idr_alloc from comment (Kamal Heib) [1724772] - [infiniband] RDMA/bnxt_re: Use correct sizing on buffers holding page DMA addresses (Kamal Heib) [1724772] - [infiniband] bnxt_re: Clean cq for kernel consumers only (Kamal Heib) [1724772] - [infiniband] bnxt_re: fix the regression due to changes in alloc_pbl (Kamal Heib) [1724772] - [scsi] scsi: lpfc: Make lpfc_debugfs_ras_log_data static (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix NULL check before mempool_destroy is not needed (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix spelling error in MAGIC_NUMER_xxx (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix build error of lpfc_debugfs.c for vfree/vmalloc (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: lpfc_nvmet: Fix Use plain integer as NULL pointer (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: lpfc_attr: Fix Use plain integer as NULL pointer (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Update lpfc version to 12.6.0.0 (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add additional discovery log messages (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add FC-AL support to lpe32000 models (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add FA-WWN Async Event reporting (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add log macros to allow print by serverity or verbosity setting (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Make FW logging dynamically configurable (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Revise interrupt coalescing for missing scenarios (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Remove lock contention target write path (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Slight fast-path performance optimizations (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix coverity error of dereference after null check (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix hardlockup in lpfc_abort_handler (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix bad ndlp ptr in xri aborted handling (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix SLI3 hba in loop mode not discovering devices (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix lockdep errors in sli_ringtx_put (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix reporting of read-only fw error errors (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix lpfc_nvmet_mrq to be bound by hdw queue count (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Make function lpfc_defer_pt2pt_acc static (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: add support for posting FC events on FPIN reception (Dick Kennedy) [1768102] - [infiniband] RDMA/siw: Mark Software iWARP Driver as tech-preview (Kamal Heib) [1767292] - [crypto] crypto: ccp - Replace dma_pool_alloc + memset with dma_pool_zalloc (Gary Hook) [1724859] - [crypto] crypto: ccp/gcm - use const time tag comparison. (Gary Hook) [1724859] - [crypto] crypto: ccp - Switch to SPDX license identifiers (Gary Hook) [1724859] - [crypto] crypto: ccp - Validate the the error value used to index error messages (Gary Hook) [1724859] - [crypto] crypto: ccp - Make ccp_register_rsa_alg static (Gary Hook) [1724859] - [crypto] crypto: ccp - Update copyright notices and dates (Gary Hook) [1724859] - [crypto] cross-tree: phase out dma_zalloc_coherent() (Gary Hook) [1724859] - [x86] x86/umwait: Fix error handling in umwait_init() (Steve Best) [1724525] - [documentation] Documentation/ABI: Document umwait control sysfs interfaces (Steve Best) [1724525] - [x86] x86/umwait: Add sysfs interface to control umwait maximum time (Steve Best) [1724525] - [x86] x86/umwait: Add sysfs interface to control umwait C0.2 state (Steve Best) [1724525] - [x86] x86/umwait: Initialize umwait control values (Steve Best) [1724525] - [x86] x86/cpufeatures: Enumerate user wait instructions (Steve Best) [1724525] - [fs] virtiofs: Remove set but not used variable 'fc' (Vivek Goyal) [1694161] - [fs] virtiofs: Retry request submission from worker context (Vivek Goyal) [1694161] - [fs] virtiofs: Count pending forgets as in_flight forgets (Vivek Goyal) [1694161] - [fs] virtiofs: Set FR_SENT flag only after request has been sent (Vivek Goyal) [1694161] - [fs] virtiofs: No need to check fpq->connected state (Vivek Goyal) [1694161] - [fs] virtiofs: Do not end request in submission context (Vivek Goyal) [1694161] - [fs] fuse: don't advise readdirplus for negative lookup (Vivek Goyal) [1694161] - [fs] fuse: don't dereference req->args on finished request (Vivek Goyal) [1694161] - [fs] virtio-fs: don't show mount options (Vivek Goyal) [1694161] - [fs] virtio-fs: Change module name to virtiofs.ko (Vivek Goyal) [1694161] - [include] bitops: protect variables in bit_clear_unless() macro (Vivek Goyal) [1694161] - [include] bitops: protect variables in set_mask_bits() macro (Vivek Goyal) [1694161] - [fs] fuse: Make fuse_args_to_req static (Vivek Goyal) [1694161] - [fs] fuse: fix memleak in cuse_channel_open (Vivek Goyal) [1694161] - [fs] fuse: fix beyond-end-of-page access in fuse_parse_cache() (Vivek Goyal) [1694161] - [fs] fuse: unexport fuse_put_request (Vivek Goyal) [1694161] - [fs] fuse: kmemcg account fs data (Vivek Goyal) [1694161] - [fs] fuse: on 64-bit store time in d_fsdata directly (Vivek Goyal) [1694161] - [fs] fuse: fix missing unlock_page in fuse_writepage() (Vivek Goyal) [1694161] - [fs] virtio-fs: add virtiofs filesystem (Vivek Goyal) [1694161] - [fs] fuse: allow skipping control interface and forced unmount (Vivek Goyal) [1694161] - [fs] fuse: dissociate DESTROY from fuseblk (Vivek Goyal) [1694161] - [fs] fuse: delete dentry if timeout is zero (Vivek Goyal) [1694161] - [fs] fuse: separate fuse device allocation and installation in fuse_conn (Vivek Goyal) [1694161] - [fs] fuse: add fuse_iqueue_ops callbacks (Vivek Goyal) [1694161] - [fs] fuse: extract fuse_fill_super_common() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_dequeue_forget() function (Vivek Goyal) [1694161] - [fs] fuse: export fuse_get_unique() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_send_init_request() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_len_args() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_end_request() (Vivek Goyal) [1694161] - [fs] fuse: fix request limit (Vivek Goyal) [1694161] - [fs] fuse: stop copying pages to fuse_req (Vivek Goyal) [1694161] - [fs] fuse: stop copying args to fuse_req (Vivek Goyal) [1694161] - [fs] fuse: clean up fuse_req (Vivek Goyal) [1694161] - [fs] fuse: simplify request allocation (Vivek Goyal) [1694161] - [fs] fuse: unexport request ops (Vivek Goyal) [1694161] - [fs] fuse: convert retrieve to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert release to simple api (Vivek Goyal) [1694161] - [fs] cuse: convert init to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert init to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert writepages to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert readdir to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert readpages to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert direct_io to simple api (Vivek Goyal) [1694161] - [fs] fuse: add simple background helper (Vivek Goyal) [1694161] - [fs] fuse: convert sync write to simple api (Vivek Goyal) [1694161] - [fs] fuse: covert readpage to simple api (Vivek Goyal) [1694161] - [fs] fuse: fuse_short_read(): don't take fuse_req as argument (Vivek Goyal) [1694161] - [fs] fuse: convert ioctl to simple api (Vivek Goyal) [1694161] - [fs] fuse: move page alloc (Vivek Goyal) [1694161] - [fs] fuse: convert readlink to simple api (Vivek Goyal) [1694161] - [fs] fuse: add pages to fuse_args (Vivek Goyal) [1694161] - [fs] fuse: convert destroy to simple api (Vivek Goyal) [1694161] - [fs] fuse: add nocreds to fuse_args (Vivek Goyal) [1694161] - [fs] fuse: convert fuse_force_forget() to simple api (Vivek Goyal) [1694161] - [fs] fuse: add noreply to fuse_args (Vivek Goyal) [1694161] - [fs] fuse: convert flush to simple api (Vivek Goyal) [1694161] - [fs] fuse: simplify 'nofail' request (Vivek Goyal) [1694161] - [fs] fuse: rearrange and resize fuse_args fields (Vivek Goyal) [1694161] - [fs] fuse: flatten 'struct fuse_args' (Vivek Goyal) [1694161] - [fs] fuse: fix deadlock with aio poll and fuse_iqueue::waitq.lock (Vivek Goyal) [1694161] - [fs] cuse: fix broken release (Vivek Goyal) [1694161] - [fs] fuse: cleanup fuse_wait_on_page_writeback (Vivek Goyal) [1694161] - [fs] fuse: require /dev/fuse reads to have enough buffer capacity (take 2) (Vivek Goyal) [1694161] - [fs] Revert "fuse: require /dev/fuse reads to have enough buffer capacity" (Vivek Goyal) [1694161] - [fs] fuse: extract helper for range writeback (Vivek Goyal) [1694161] - [fs] fuse: add FUSE_WRITE_KILL_PRIV (Vivek Goyal) [1694161] - [fs] fuse: clean up fuse_alloc_inode (Vivek Goyal) [1694161] - [fs] fuse: Add ioctl flag for x32 compat ioctl (Vivek Goyal) [1694161] - [fs] fuse: document fuse_fsync_in.fsync_flags (Vivek Goyal) [1694161] - [fs] fuse: require /dev/fuse reads to have enough buffer capacity (Vivek Goyal) [1694161] - [fs] fuse: retrieve: cap requested size to negotiated max_write (Vivek Goyal) [1694161] - [fs] fuse: allow filesystems to have precise control over data cache (Vivek Goyal) [1694161] - [fs] fuse: convert printk -> pr_* (Vivek Goyal) [1694161] - [fs] fuse: fix writepages on 32bit (Vivek Goyal) [1694161] - [fs] fuse: cache readdir calls if filesystem opts out of opendir (Vivek Goyal) [1694161] - [fs] fuse: support clients that don't implement 'opendir' (Vivek Goyal) [1694161] - [fs] fuse: lift bad inode checks into callers (Vivek Goyal) [1694161] - [fs] fuse: multiplex cached/direct_io file operations (Vivek Goyal) [1694161] - [fs] fuse add copy_file_range to direct io fops (Vivek Goyal) [1694161] - [fs] fuse: use iov_iter based generic splice helpers (Vivek Goyal) [1694161] - [fs] fuse: Switch to using async direct IO for FOPEN_DIRECT_IO (Vivek Goyal) [1694161] - [fs] fuse: use atomic64_t for khctr (Vivek Goyal) [1694161] - [fs] fuse: clean up aborted (Vivek Goyal) [1694161] - [fs] fuse: Protect ff->reserved_req via corresponding fi->lock (Vivek Goyal) [1694161] - [fs] fuse: Protect fi->nlookup with fi->lock (Vivek Goyal) [1694161] - [fs] fuse: Introduce fi->lock to protect write related fields (Vivek Goyal) [1694161] - [fs] fuse: Convert fc->attr_version into atomic64_t (Vivek Goyal) [1694161] - [fs] fuse: Add fuse_inode argument to fuse_prepare_release() (Vivek Goyal) [1694161] - [fs] fuse: Verify userspace asks to requeue interrupt that we really sent (Vivek Goyal) [1694161] - [fs] fuse: Do some refactoring in fuse_dev_do_write() (Vivek Goyal) [1694161] - [fs] fuse: Wake up req->waitq of only if not background (Vivek Goyal) [1694161] - [fs] fuse: Optimize request_end() by not taking fiq->waitq.lock (Vivek Goyal) [1694161] - [fs] fuse: Kill fasync only if interrupt is queued in queue_interrupt() (Vivek Goyal) [1694161] - [fs] fuse: Remove stale comment in end_requests() (Vivek Goyal) [1694161] - [fs] fuse: Replace page without copying in fuse_writepage_in_flight() (Vivek Goyal) [1694161] - [fs] fuse: fix leaked aux requests (Vivek Goyal) [1694161] - [fs] fuse: only reuse auxiliary request in fuse_writepage_in_flight() (Vivek Goyal) [1694161] - [fs] fuse: clean up fuse_writepage_in_flight() (Vivek Goyal) [1694161] - [fs] fuse: extract fuse_find_writeback() helper (Vivek Goyal) [1694161] - [fs] cuse: fix ioctl (Vivek Goyal) [1694161] - [fs] fuse: Fix memory leak in fuse_dev_free() (Vivek Goyal) [1694161] - [fs] fuse: fix revalidation of attributes for permission check (Vivek Goyal) [1694161] - [fs] fuse: fix fsync on directory (Vivek Goyal) [1694161] - [fs] fuse: Add bad inode check in fuse_destroy_inode() (Vivek Goyal) [1694161] - [fs] fuse: enable caching of symlinks (Vivek Goyal) [1694161] - [fs] fuse: only invalidate atime in direct read (Vivek Goyal) [1694161] - [fs] fuse: realloc page array (Vivek Goyal) [1694161] - [fs] fuse: add max_pages to init_out (Vivek Goyal) [1694161] - [fs] fuse: allocate page array more efficiently (Vivek Goyal) [1694161] - [fs] fuse: reduce size of struct fuse_inode (Vivek Goyal) [1694161] - [fs] fuse: use iversion for readdir cache verification (Vivek Goyal) [1694161] - [fs] fuse: use mtime for readdir cache verification (Vivek Goyal) [1694161] - [fs] fuse: add readdir cache version (Vivek Goyal) [1694161] - [fs] fuse: allow using readdir cache (Vivek Goyal) [1694161] - [fs] fuse: allow caching readdir (Vivek Goyal) [1694161] - [fs] fuse: extract fuse_emit() helper (Vivek Goyal) [1694161] - [fs] fuse: add FOPEN_CACHE_DIR (Vivek Goyal) [1694161] - [fs] fuse: split out readdir.c (Vivek Goyal) [1694161] - [fs] fuse: Use hash table to link processing request (Vivek Goyal) [1694161] - [fs] fuse: kill req->intr_unique (Vivek Goyal) [1694161] - [fs] fuse: change interrupt requests allocation algorithm (Vivek Goyal) [1694161] - [fs] fuse: do not take fc->lock in fuse_request_send_background() (Vivek Goyal) [1694161] - [fs] fuse: introduce fc->bg_lock (Vivek Goyal) [1694161] - [fs] fuse: add locking to max_background and congestion_threshold changes (Vivek Goyal) [1694161] - [fs] fuse: use READ_ONCE on congestion_threshold and max_background (Vivek Goyal) [1694161] - [fs] fuse: use list_first_entry() in flush_bg_queue() (Vivek Goyal) [1694161] - [fs] fuse: reduce allocation size for splice_write (Vivek Goyal) [1694161] - [fs] fuse: use kvmalloc to allocate array of pipe_buffer structs. (Vivek Goyal) [1694161] - [fs] fuse: convert last timespec use to timespec64 (Vivek Goyal) [1694161] - [fs] fs: fuse: Adding new return type vm_fault_t (Vivek Goyal) [1694161] - [fs] fuse: simplify fuse_abort_conn() (Vivek Goyal) [1694161] - [infiniband] RDMA/siw: Fix IPv6 addr_list locking (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix 64/32bit pointer inconsistency (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix SGL mapping issues (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix potential NULL de-ref (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Change CQ flags from 64->32 bits (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix a memory leak in siw_init_cpulist() (Kamal Heib) [1725830 1720892] - [infiniband] Do not dereference 'siw_crypto_shash' before checking (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Remove set but not used variables 'rv' (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix error return code in siw_init_module() (Kamal Heib) [1725830 1720892] - [infiniband] RMDA/siw: Require a 64 bit arch (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Mark expected switch fall-throughs (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: Remove set but not used variable 's' (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: Add missing dependencies on LIBCRC32C and DMA_VIRT_OPS (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Add missing rtnl_lock around access to ifa (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: Use proper enumerated type in map_cqe_status (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Remove unnecessary kthread create/destroy printouts (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix DEFINE_PER_CPU compilation when ARCH_NEEDS_WEAK_PER_CPU (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: addition to kernel build environment (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: completion queue methods (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: receive path (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: transmit path (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: queue pair methods (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: application buffer management (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: application interface (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: connection management (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: network and RDMA core interface (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: main include file (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: iWarp wire packet format (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/cma: fix null-ptr-deref Read in cma_cleanup (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Rewrite PID namespace check to be reliable (Kamal Heib) [1720892] - [infiniband] RDMA/counters: Properly implement PID checks (Kamal Heib) [1720892] - [infiniband] IB/core: Fix NULL pointer dereference when bind QP to counter (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Fix MR npages calculation for IB_ACCESS_HUGETLB (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix error code in stat_get_doit_qp() (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Prevent QP counter binding if counters unsupported (Kamal Heib) [1720892] - [infiniband] RDMA/hns: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix -Wunused-const-variable warnings (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Added configuration of RDMA dynamic interrupt moderation to netlink (Kamal Heib) [1720892] - [infiniband] RDMA/core: Provide RDMA DIM support for ULPs (Kamal Heib) [1720892] - [infiniband] linux/dim: Implement RDMA adaptive moderation (DIM) (Kamal Heib) [1720892] - [infiniband] IB/mad: Fix use-after-free in ib mad completion handling (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Track driver QP types in resource tracker (Kamal Heib) [1720892] - [infiniband] RDMA/devices: Remove the lock around remove_client_context (Kamal Heib) [1720892] - [infiniband] RDMA/devices: Do not deadlock during client removal (Kamal Heib) [1720892] - [infiniband] IB/core: Add mitigation for Spectre V1 (Kamal Heib) [1720892] - [infiniband] IB/counters: Always initialize the port counter object (Kamal Heib) [1720892] - [infiniband] IB/core: Fix querying total rdma stats (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix race when resolving IP address (Kamal Heib) [1720892] - [infiniband] xprtrdma: Modernize ops->connect (Kamal Heib) [1720892] - [infiniband] xprtrdma: Remove rpcrdma_req::rl_buffer (Kamal Heib) [1720892] - [infiniband] xprtrdma: Refactor chunk encoding (Kamal Heib) [1720892] - [infiniband] xprtrdma: Streamline rpcrdma_post_recvs (Kamal Heib) [1720892] - [infiniband] xprtrdma: Simplify rpcrdma_rep_create (Kamal Heib) [1720892] - [infiniband] xprtrdma: Wake RPCs directly in rpcrdma_wc_send path (Kamal Heib) [1720892] - [infiniband] xprtrdma: Reduce context switching due to Local Invalidation (Kamal Heib) [1720892] - [infiniband] xprtrdma: Add mechanism to place MRs back on the free list (Kamal Heib) [1720892] - [infiniband] xprtrdma: Remove fr_state (Kamal Heib) [1720892] - [infiniband] xprtrdma: Remove the RPCRDMA_REQ_F_PENDING flag (Kamal Heib) [1720892] - [infiniband] xprtrdma: Fix occasional transport deadlock (Kamal Heib) [1720892] - [infiniband] xprtrdma: Replace use of xdr_stream_pos in rpcrdma_marshal_req (Kamal Heib) [1720892] - [infiniband] xprtrdma: Fix use-after-free in rpcrdma_post_recvs (Kamal Heib) [1720892] - [infiniband] RDMA/core: Make rdma_counter.h compile stand alone (Kamal Heib) [1720892] - [infiniband] IB/core: Work on the caller socket net namespace in nldev_newlink() (Kamal Heib) [1663224 1720892] - [infiniband] RDMA/rxe: Fill in wc byte_len with IB_WC_RECV_RDMA_WITH_IMM (Kamal Heib) [1720892] - [infiniband] ibverbs/rxe: Remove variable self-initialization (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow get default counter statistics through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow get counter mode through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow counter manual mode configration through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Allow manual mode configuration support (Kamal Heib) [1720892] - [infiniband] RDMA/core: Get sum value of all counters when perform a sysfs stat read (Kamal Heib) [1720892] - [infiniband] RDMA/netlink: Implement counter dumpit calback (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow counter auto mode configration through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Add "auto" configuration mode support (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Add set/clear per-port auto mode support (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Make is_visible_in_pid_ns() as an API (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Add an API to attach a task to a resource (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Introduce statistic counter (Kamal Heib) [1720892] - [infiniband] IB/ipoib: Add child to parent list only if device initialized (Kamal Heib) [1720892] - [infiniband] RDMA/uverbs: remove redundant assignment to variable ret (Kamal Heib) [1720892] - [infiniband] IB/ipoib: Remove memset after vzalloc in ipoib_cm.c (Kamal Heib) [1720892] - [infiniband] IB: Remove unneeded memset (Kamal Heib) [1720892] - [infiniband] RDMA/netlink: Audit policy settings for netlink attributes (Kamal Heib) [1720892] - [infiniband] docs: infiniband: convert docs to ReST and rename to *.rst (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Use IB_WR_REG_MR_INTEGRITY for PI handover (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Introduce rdma_rw_inv_key helper (Kamal Heib) [1720892] - [infiniband] RDMA/core: Validate integrity handover device cap (Kamal Heib) [1720892] - [infiniband] RDMA/core: Rename signature qp create flag and signature device capability (Kamal Heib) [1720892] - [infiniband] RDMA/core: Add an integrity MR pool support (Kamal Heib) [1720892] - [infiniband] IB/iser: Unwind WR union at iser_tx_desc (Kamal Heib) [1720892] - [infiniband] IB/iser: Use IB_WR_REG_MR_INTEGRITY for PI handover (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Introduce and implement new IB_WR_REG_MR_INTEGRITY work request (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Update set_sig_data_segment attribute for new signature API (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Pass UMR segment flags instead of boolean (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Add attr for max number page list length for PI operation (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Implement mlx5_ib_map_mr_sg_pi and mlx5_ib_alloc_mr_integrity (Kamal Heib) [1720892] - [infiniband] RDMA/core: Add signature attrs element for ib_mr structure (Kamal Heib) [1720892] - [infiniband] RDMA/core: Introduce ib_map_mr_sg_pi to map data/protection sgl's (Kamal Heib) [1720892] - [infiniband] RDMA/core: Introduce IB_MR_TYPE_INTEGRITY and ib_alloc_mr_integrity API (Kamal Heib) [1720892] - [infiniband] RDMA/core: Save the MR type in the ib_mr structure (Kamal Heib) [1720892] - [infiniband] RDMA/core: Introduce new header file for signature operations (Kamal Heib) [1720892] - [infiniband] RDMA/odp: Do not leak dma maps when working with huge pages (Kamal Heib) [1720892] - [infiniband] RDMA/uverbs: Use offsetofend instead of opencoding (Kamal Heib) [1720892] - [infiniband] [scsi] scsi: RDMA/srp: Fix a sleep-in-invalid-context bug (Kamal Heib) [1720892] - [infiniband] RDMA: Check umem pointer validity prior to release (Kamal Heib) [1720892] - [infiniband] RDMA/hns: Remove asynchronic QP destroy (Kamal Heib) [1720892] - [infiniband] RDMA: Convert destroy_wq to be void (Kamal Heib) [1720892] - [infiniband] RDMA/netlink: Resort policy array (Kamal Heib) [1720892] - [infiniband] RDMA: Report available cdevs through RDMA_NLDEV_CMD_GET_CHARDEV (Kamal Heib) [1720892] - [infiniband] RDMA: Add NLDEV_GET_CHARDEV to allow char dev discovery and autoload (Kamal Heib) [1720892] - [infiniband] ipoib: correcly show a VF hardware address (Kamal Heib) [1720892] - [infiniband] RDMA: Move rdma_node_type to uapi/ (Kamal Heib) [1720892] - [infiniband] rdma: Remove nes (Kamal Heib) [1720892] - [infiniband] RDMA/ipoib: Remove check for ETH_SS_TEST (Kamal Heib) [1720892] - [infiniband] RDMA: Convert CQ allocations to be under core responsibility (Kamal Heib) [1720892] - [infiniband] RDMA/hns: Return correct error code from hns_roce_v1_rsv_lp_qp() (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Don't expose DMA addresses (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb4: Don't expose DMA addresses (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Use sizeof() notation instead of plain sizeof (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA: Clear CQ objects during their allocation (Kamal Heib) [1720892] - [infiniband] RDMA: Clean destroy CQ in drivers do not return errors (Kamal Heib) [1720892] - [infiniband] RDMA/i40iw: Remove useless NULL checks (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Delete and properly mark unimplemented resize CQ function (Kamal Heib) [1720892] - [infiniband] RDMA/nes: Avoid memory allocation during CQ destroy (Kamal Heib) [1720892] - [infiniband] RDMA: Move owner into struct ib_device_ops (Kamal Heib) [1720892] - [infiniband] RDMA: Move uverbs_abi_ver into struct ib_device_ops (Kamal Heib) [1720892] - [infiniband] RDMA: Move driver_id into struct ib_device_ops (Kamal Heib) [1720892] - [infiniband] rdma: Delete the ib_ucm module (Kamal Heib) [1720892] - [infiniband] ucma: Convert ctx_idr to XArray (Kamal Heib) [1720892] - [infiniband] ucma: Convert multicast_idr to XArray (Kamal Heib) [1720892] - [infiniband] RDMA/ucma: Use struct_size() helper (Kamal Heib) [1720892] - [infiniband] RDMA/srp: Accept again source addresses that do not have a port number (Kamal Heib) [1720892] - [infiniband] RDMA/ipoib: implement ethtool .get_link() callback (Kamal Heib) [1720892] - [infiniband] RDMA/uverbs: check for allocation failure in uapi_add_elm() (Kamal Heib) [1720892] - [infiniband] RDMA: Convert put_page() to put_user_page*() (Kamal Heib) [1720892] - [infiniband] RDMA/nes: Remove second wait queue initialization call (Kamal Heib) [1720892] - [infiniband] RDMA/nes: Remove useless NULL checks (Kamal Heib) [1720892] - [infiniband] RDMA/core: Make ib_destroy_cq() void (Kamal Heib) [1720892] - [infiniband] RDMA/ipoib: Remove check of destroy CQ (Kamal Heib) [1720892] - [infiniband] RDMA/core: Return void from ib_device_check_mandatory() (Kamal Heib) [1720892] - [infiniband] RDMA/umem: Move page_shift from ib_umem to ib_odp_umem (Kamal Heib) [1720892] - [infiniband] RDMA/qedr: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb4: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix doc typo (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Add info regarding SG count failure (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Print the correct number of sig MRs (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Fix doc typo (Kamal Heib) [1720892] - [infiniband] IB/isert: Remove unused sig_attrs argument (Kamal Heib) [1720892] - [infiniband] IB/iser: Remove unused sig_attrs argument (Kamal Heib) [1720892] - [infiniband] IB/iser: Refactor iscsi_iser_check_protection function (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Entropy in admin commands id (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Print address on AH creation failure (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Be consistent with success flow return value (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Use API to get contiguous memory blocks aligned to device supported page size (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove unused includes (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Use rdma block iterator in chunk list creation (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove unneeded admin commands abort flow (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Use kvzalloc instead of kzalloc with fallback (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove check that prevents destroy of resources in error flows (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Handle mmap insertions overflow (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Fix success return value in case of error (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove MAYEXEC flag check from mmap flow (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add driver to Kconfig/Makefile (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the efa module (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add EFA verbs implementation (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add common command handlers (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Implement functions that submit and complete admin commands (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the ABI definitions (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the com service API definitions (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the efa_com.h file (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the efa.h header file (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add EFA device definitions (Kamal Heib) [1720892] - [infiniband] RDMA: Add EFA related definitions (Kamal Heib) [1720892] - [fs] CIFS: Fix use after free of file info structures (Dave Wysochanski) [1757865] - [mm] mm, memory_hotplug: fix scan_movable_pages() for gigantic hugepages (Rafael Aquini) [1730172] - [char] ipmi: Don't allow device module unload when in use (Tony Camuso) [1759916] - [netdrv] net: phy: Also request modules for C45 IDs (Gary Hook) [1764274] - [s390] s390/dasd: Fix error handling during online processing (Philipp Rudo) [1764492] - [s390] s390/cpumsf: Check for CPU Measurement sampling (Philipp Rudo) [1764490] - [edac] EDAC/amd64: Support asymmetric dual-rank DIMMs (Gary Hook) [1753384] - [edac] EDAC/amd64: Cache secondary Chip Select registers (Gary Hook) [1753384] - [edac] EDAC/amd64: Decode syndrome before translating address (Gary Hook) [1753384] - [edac] EDAC/amd64: Find Chip Select memory size using Address Mask (Gary Hook) [1753384] - [edac] EDAC/amd64: Initialize DIMM info for systems with more than two channels (Gary Hook) [1753384] - [edac] EDAC/amd64: Recognize DRAM device type ECC capability (Gary Hook) [1753384] - [edac] EDAC/amd64: Support more than two controllers for chip selects handling (Gary Hook) [1753384] - [scsi] scsi: fnic: fix msix interrupt allocation (Govindarajulu Varadarajan) [1745083] - [scsi] scsi: fnic: print port speed only at driver init or speed change (Govindarajulu Varadarajan) [1745083] - [netdrv] qmi_wwan: apply SET_DTR quirk to Sierra WP7607 (Lubomir Rintel) [1729083]- [tools] libbpf: remove compile time warning from libbpf_util.h (Yauheni Kaliuta) [1747341] - [tools] libbpf: remove dependency on barrier.h in xsk.h (Yauheni Kaliuta) [1747341] - [kernel] seccomp, bpf: disable preemption before calling into bpf prog (Yauheni Kaliuta) [1747341] - [lib] bpf: test_bpf: turn off preemption in function __run_once (Yauheni Kaliuta) [1747341] - [tools] libbpf: remove unnecessary cast-to-void (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix sysctl.c warning (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix using uninitialized ioctl results (Yauheni Kaliuta) [1747341] - [tools] libbpf: proper XSKMAP cleanup (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix invalid munmap call (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix XDP socket ring buffer memory ordering (Yauheni Kaliuta) [1747341] - [tools] libbpf: remove likely/unlikely in xsk.h (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: xdp_redirect, correctly get dummy program id (Yauheni Kaliuta) [1747341] - [net] bpf: fix access to skb_shared_info->gso_segs (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix out of bounds backwards jmps due to dead code removal (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix use after free in prog symbol exposure (Yauheni Kaliuta) [1747341] - [include] bpf: Fix preempt_enable_no_resched() abuse (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test cases for pkt/null checks in subprogs (Yauheni Kaliuta) [1747341] - [kernel] bpf: mark registers in all frames after pkt/null checks (Yauheni Kaliuta) [1747341] - [tools] libbpf: add binary to gitignore (Yauheni Kaliuta) [1747341] - [net] bpf: Check address length before reading address family (Yauheni Kaliuta) [1747341] - [net] flow_dissector: disable preemption around BPF calls (Yauheni Kaliuta) [1747341] - [net] flow_dissector: switch kernel context to struct bpf_flow_dissector (Yauheni Kaliuta) [1747341] - [net] flow_dissector: fix clamping of BPF flow_keys for non-zero nhoff (Yauheni Kaliuta) [1747341] - [net] flow_dissector: allow access only to a subset of __sk_buff fields (Yauheni Kaliuta) [1747341] - [net] net/flow_dissector: pass flow_keys->n_proto to BPF programs (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix vlan handling in flow dissector program (Yauheni Kaliuta) [1747341] - [tools] bpf, libbpf: fix quiet install_headers (Yauheni Kaliuta) [1747341] - [tools] libbpf: add libelf dependency to shared library build (Yauheni Kaliuta) [1747341] - [tools] libbpf: add xsk.h to install_headers target (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add btf_dedup test for VOID equivalence check (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix btf_dedup equivalence check handling of different kinds (Yauheni Kaliuta) [1747341] - [documentation] bpf, doc: fix BTF docs reflow of bullet list (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test case for invalid call stack in dead code (Yauheni Kaliuta) [1747341] - [kernel] bpf: remove incorrect 'verifier bug' warning (Yauheni Kaliuta) [1747341] - [kernel] bpf: Only print ref_obj_id for refcounted reg (Yauheni Kaliuta) [1747341] - [tools] tool: use bpf_program__get_prog_info_linear() in prog.c:do_dump() (Yauheni Kaliuta) [1747341] - [tools] tools lib bpf: Introduce bpf_program__get_prog_info_linear() (Yauheni Kaliuta) [1747341] - [tools] perf tools: Fix errors under optimization level '-Og' (Yauheni Kaliuta) [1747341] - [kernel] bpf: Try harder when allocating memory for large maps (Yauheni Kaliuta) [1747341] - [tools] tools: bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add fwd enum resolution test for btf_dedup (Yauheni Kaliuta) [1747341] - [tools] btf: resolve enum fwds in btf_dedup (Yauheni Kaliuta) [1747341] - [tools] bpf: Add an example for bpf_get_listener_sock (Yauheni Kaliuta) [1747341] - [tools] bpf: Test ref release issue in bpf_tcp_sock and bpf_sk_fullsock (Yauheni Kaliuta) [1747341] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747341] - [net] bpf: Add bpf_get_listener_sock(struct bpf_sock *sk) helper (Yauheni Kaliuta) [1747341] - [kernel] bpf: Fix bpf_tcp_sock and bpf_sk_fullsock issue related to bpf_sk_release (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix to reject unknown flags in xsk_socket__create() (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix segfault of test_progs when prog loading failed (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix replace_map_fd_with_map_ptr's ldimm64 second imm field (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: test_progs: initialize duration in singal_pending test (Yauheni Kaliuta) [1747341] - [tools] libbpf: force fixdep compilation at the start of the build (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: fix compilation with out-of-tree $(OUTPUT) (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test that GSO works in lwt_ip_encap (Yauheni Kaliuta) [1747341] - [bpf] bpf: hbm: fix spelling mistake "deault" -> "default" (Yauheni Kaliuta) [1747341] - [tools] bpf: add test cases for non-pointer sanitiation logic (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - misc (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - spinlock (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - tracepoint (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - stackmap (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - xdp (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - pkt access (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - preparations (Yauheni Kaliuta) [1747341] - [bpf] bpf: HBM test script (Yauheni Kaliuta) [1747341] - [bpf] bpf: User program for testing HBM (Yauheni Kaliuta) [1747341] - [bpf] bpf: Sample HBM BPF program to limit egress bw (Yauheni Kaliuta) [1747341] - [include] bpf: sync bpf.h to tools and update bpf_helpers.h (Yauheni Kaliuta) [1747341] - [net] bpf: add bpf helper bpf_skb_ecn_set_ce (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: silence compiler warning for xdpsock_user.c (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: set unlimited RLIMIT_MEMLOCK for test_sock_fields (Yauheni Kaliuta) [1747341] - [documentation] docs/bpf: minor casing/punctuation fixes (Yauheni Kaliuta) [1747341] - [documentation] docs/btf: reflow text to fill up to 78 characters (Yauheni Kaliuta) [1747341] - [documentation] docs/btf: fix typos, improve wording (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix u64_stats_init() usage in bpf_prog_alloc() (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add btf_dedup test of FWD/STRUCT resolution (Yauheni Kaliuta) [1747341] - [tools] btf: allow to customize dedup hash table size (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix formatting for btf_ext__get_raw_data (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix btf_dedup testing code (Yauheni Kaliuta) [1747341] - [tools] tools: libbpf: make sure readelf shows full names in build checks (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: use libbpf where easy (Yauheni Kaliuta) [1747341] - [tools] tools: libbpf: add a correctly named define for map iteration (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: remove load_sock_ops in favour of bpftool (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: force IPv4 in ping (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: use __bpf_constant_htons in test_prog.c for flow dissector (Yauheni Kaliuta) [1747341] - [tools] bpf: add missing entries to bpf_helpers.h (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: selftests: add map lookup to test_map_in_map bpf prog (Yauheni Kaliuta) [1747341] - [kernel] bpf: set inner_map_meta->spin_lock_off correctly (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: fix: broken sample regarding removed function (Yauheni Kaliuta) [1747341] - [tools] tools/bpftool: recognize bpf_prog_info run_time_ns and run_cnt (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: sync bpf.h into tools (Yauheni Kaliuta) [1747341] - [kernel] bpf: expose program stats via bpf_prog_info (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix build without bpf_syscall (Yauheni Kaliuta) [1747341] - [kernel] bpf: enable program stats (Yauheni Kaliuta) [1747341] - [kernel] bpf: check that BPF programs run with preemption disabled (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: convert xdpsock to use libbpf for AF_XDP access (Yauheni Kaliuta) [1747341] - [tools] libbpf: add support for using AF_XDP sockets (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: make sure signal interrupts BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Fix dummy program unloading for xdp_redirect samples (Yauheni Kaliuta) [1747341] - [s390] s390/net: convert pnetids to ascii (Yauheni Kaliuta) [1747341] - [net] bpf: add skb->queue_mapping write access from tc clsact (Yauheni Kaliuta) [1747341] - [tools] tools/libbpf: support bigger BTF data sizes (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: test_lwt_ip_encap: add negative tests. (Yauheni Kaliuta) [1747341] - [tools] libbpf: Introduce bpf_object__btf (Yauheni Kaliuta) [1747341] - [tools] libbpf: Introduce bpf_map__resize (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: replace bzero with memset (Yauheni Kaliuta) [1747341] - [net] net: fix GSO in bpf_lwt_push_ip_encap (Yauheni Kaliuta) [1747341] - [net] net: fix double-free in bpf_lwt_xmit_reroute (Yauheni Kaliuta) [1747341] - [net] bpf: fix memory leak in bpf_lwt_xmit_reroute (Yauheni Kaliuta) [1747341] - [net] bpf: make LWTUNNEL_BPF dependent on INET (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: add test_lwt_ip_encap selftest (Yauheni Kaliuta) [1747341] - [include] bpf: sync /include/.../bpf.h with tools/include/.../bpf.h (Yauheni Kaliuta) [1747341] - [net] bpf: add handling of BPF_LWT_REROUTE to lwt_bpf.c (Yauheni Kaliuta) [1747341] - [net] ipv6_stub: add ipv6_route_input stub/proxy. (Yauheni Kaliuta) [1747341] - [net] bpf: handle GSO in bpf_lwt_push_encap (Yauheni Kaliuta) [1747341] - [net] bpf: implement BPF_LWT_ENCAP_IP mode in bpf_lwt_push_encap (Yauheni Kaliuta) [1747341] - [net] bpf: add plumbing for BPF_LWT_ENCAP_IP in bpf_lwt_push_encap (Yauheni Kaliuta) [1747341] - [net] bpf: offload: add priv field for drivers (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: doc, add text about feature-subcommand (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: relax sub-register mode compilation criteria (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: centre kernel bpf objects under new subdir "progs" (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: extend sub-register mode compilation to all bpf object files (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: add "alu32" to .gitignore (Yauheni Kaliuta) [1747341] - [tools] bpf: Add test_sock_fields for skb->sk and bpf_tcp_sock (Yauheni Kaliuta) [1747341] - [tools] bpf: Add skb->sk, bpf_sk_fullsock and bpf_tcp_sock tests to test_verifer (Yauheni Kaliuta) [1747341] - [nclude] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747341] - [kernel] bpf: Add struct bpf_tcp_sock and BPF_FUNC_tcp_sock (Yauheni Kaliuta) [1747341] - [net] bpf: Refactor sock_ops_convert_ctx_access (Yauheni Kaliuta) [1747341] - [net] bpf: Add state, dst_ip4, dst_ip6 and dst_port to bpf_sock (Yauheni Kaliuta) [1747341] - [kernel] bpf: Add a bpf_sock pointer to __sk_buff and a bpf_sk_fullsock helper (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: remove btf__get_strings() superseded by raw data API (Yauheni Kaliuta) [1747341] - [tools] btf: expose API to work with raw btf_ext data (Yauheni Kaliuta) [1747341] - [tools] btf: expose API to work with raw btf data (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add log_level to bpf_load_program_attr (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add missing strings.h include (Yauheni Kaliuta) [1747341] - [s390] s390/net: move pnet constants (Yauheni Kaliuta) [1747341] - [tools] bpf: test_maps: fix possible out of bound access warning (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: doc, fix incorrect text (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test reading the offloaded program (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add test for mixing generic and offload XDP (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: print traceback when test fails (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix the expected messages (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add const qualifier to btf__get_map_kv_tids() map_name parameter (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add "any alignment" annotation for some tests (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: use localhost in tcp_{server, client}.py (Yauheni Kaliuta) [1747341] - [s390] s390: bpf: fix JMP32 code-gen (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: remove generated verifier/tests.h on 'make clean' (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Check the prog id before exiting (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Add a "force" flag to XDP samples (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Extend RLIMIT_MEMLOCK for xdp_{sample_pkts, router_ipv4} (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Convert XDP samples to libbpf usage (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: xdp_redirect_cpu have not need for read_trace_pipe (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test for BPF_F_LOCK (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: sync uapi/bpf.h (Yauheni Kaliuta) [1747341] - [kernel] bpf: introduce BPF_F_LOCK flag (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add bpf_spin_lock C test (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add simple BPF_PROG_TEST_RUN examples for flow dissector (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add bpf_spin_lock verifier tests (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: sync include/uapi/linux/bpf.h (Yauheni Kaliuta) [1747341] - [kernel] bpf: add support for bpf_spin_lock to cgroup local storage (Yauheni Kaliuta) [1747341] - [kernel] bpf: introduce bpf_spin_lock (Yauheni Kaliuta) [1747341] - [net] bpf: Correctly annotate implicit fall through in bpf_base_func_proto (Yauheni Kaliuta) [1747341] - [kernel] bpf, cgroups: clean up kerneldoc warnings (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix bitrotted kerneldoc (Yauheni Kaliuta) [1747341] - [include] bpf: BPF_PROG_TYPE_CGROUP_{SKB, SOCK, SOCK_ADDR} require cgroups enabled (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: mark verifier test that uses bpf_trace_printk as BPF_PROG_TYPE_TRACEPOINT (Yauheni Kaliuta) [1747341] - [net] bpf: add BPF_PROG_TEST_RUN support for flow dissector (Yauheni Kaliuta) [1747341] - [net] net/flow_dissector: move bpf case into __skb_flow_bpf_dissect (Yauheni Kaliuta) [1747341] - [net] Revert "[net] flow_dissector: disable preemption around BPF calls" (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: warn about risky prog array updates (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: remove duplicated include (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up the rest of test_verifier (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_verifier (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: prepare for break up of verifier tests (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: makefile support sub-register code-gen test mode (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: functional and min/max reasoning unit tests for JMP32 (Yauheni Kaliuta) [1747341] - [s390] s390: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [powerpc] ppc: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [arm64] arm64: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [x86] x86_64: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: JIT blinds support JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: interpreter support for JMP32 (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: teach cfg code about JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: disassembler support JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier support JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: refactor verifier min/max code for condition jump (Yauheni Kaliuta) [1747341] - [include] bpf: allocate 0x06 to new eBPF instruction class JMP32 (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: suppress readelf stderr when probing for BTF support (Yauheni Kaliuta) [1747341] - [net] bpf: allow BPF programs access skb_shared_info->gso_segs field (Yauheni Kaliuta) [1747341] - [tools] tool: feature probing, change default action (Yauheni Kaliuta) [1747341] - [kernel] bpf: notify offload JITs about optimizations (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: record original instruction index (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: add tests for dead code removal (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: remove unconditional branches by 0 (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: remove dead code (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: hard wire branches to dead code (Yauheni Kaliuta) [1747341] - [kernel] bpf: change parameters of call/branch offset adjustment (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: don't hardcode iptables/nc path in test_tcpnotify_user (Yauheni Kaliuta) [1747341] - [tools] libbpf: Show supported ELF section names when failing to guess prog/attach type (Yauheni Kaliuta) [1747341] - [documentation] bpf: btf: add btf documentation (Yauheni Kaliuta) [1747341] - [kernel] perf: Make perf_event_output() propagate the output() return (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix a (false) compiler warning (Yauheni Kaliuta) [1747341] - [tools] tool: add bash completion for peek/push/enqueue/pop/dequeue (Yauheni Kaliuta) [1747341] - [tools] tool: add pop and dequeue commands (Yauheni Kaliuta) [1747341] - [tools] tool: add push and enqueue commands (Yauheni Kaliuta) [1747341] - [tools] tool: add peek command (Yauheni Kaliuta) [1747341] - [tools] tool: don't print empty key/value for maps (Yauheni Kaliuta) [1747341] - [tools] tool: make key optional in lookup command (Yauheni Kaliuta) [1747341] - [tools] tool: make key and value optional in update command (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: support __int128 in bpftool map pretty dumper (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add bpffs pretty print test for int128 (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: refactor test_btf pretty printing for multiple map value formats (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add int128 raw test in test_btf (Yauheni Kaliuta) [1747341] - [kernel] bpf: btf: support 128 bit integer type (Yauheni Kaliuta) [1747341] - [tools] libbpf: don't define CC and AR (Yauheni Kaliuta) [1747341] - [include] bpf: remove leftovers after v5.0 update (Yauheni Kaliuta) [1715770] - [target] scsi: target: cxgbit: add support for IEEE_8021QAZ_APP_SEL_STREAM selector (Vishal Kulkarni) [1725820] - [netdrv] cxgb4i: add support for IEEE_8021QAZ_APP_SEL_STREAM selector (Vishal Kulkarni) [1725818] - [net] SUNRPC: Fix possible autodisconnect during connect due to old last_used (Dave Wysochanski) [1724692] - [fs] NFSv4: Add lease_time and lease_expired to 'nfs4:' line of mountstats (Dave Wysochanski) [1727369] - [scsi] scsi: zfcp: fix reaction on bit error threshold notification (Philipp Rudo) [1764494] - [iommu] iommu/arm-smmu: Error out only if not enough context interrupts (Mark Langsdorf) [1658736] - [netdrv] cxgb4:Fix out-of-bounds MSI-X info array access (Vishal Kulkarni) [1763194] - [fs] vfs: Fix EOVERFLOW testing in put_compat_statfs64 (Eric Sandeen) [1757902] - [security] selinux: fix context string corruption in convert_context() (Ondrej Mosnacek) [1758086] - [fs] cifs: use cifsInodeInfo->open_file_lock while iterating to avoid a panic (Dave Wysochanski) [1757865] - [kernel] alarmtimer: Use EOPNOTSUPP instead of ENOTSUPP (Vladis Dronov) [1760638] - [netdrv] cxgb4: RHEL-only disable device dump (Jonathan Toppins) [1708456] - [fs] xfs: Fix deadlock between AGI and AGF with RENAME_WHITEOUT (Brian Foster) [1759564] - [x86] x86/stacktrace: Prevent access_ok() warnings in arch_stack_walk_user() (Jerome Marchand) [1757758] - [s390] s390/sclp: Fix bit checked for has_sipl (Philipp Rudo) [1748347] - [fs] dax: dax_layout_busy_page() should not unmap cow pages (Jeff Moyer) [1752109] - [fs] dax: Fix missed wakeup in put_unlocked_entry() (Jeff Moyer) [1752109] - [fs] dax: Fix missed wakeup with PMD faults (Jeff Moyer) [1752109] - [fs] dax: Fix xarray entry association for mixed mappings (Jeff Moyer) [1752109] - [mm] mm: page_mkclean vs MADV_DONTNEED race (Jeff Moyer) [1752109] - [fs] dax: Flush partial PMDs correctly (Jeff Moyer) [1752109 1724979] - [fs] dax: Use non-exclusive wait in wait_entry_unlocked() (Jeff Moyer) [1752109] - [x86] x86/mm: Fix decoy address handling vs 32-bit builds (Jeff Moyer) [1752109 1585079] - [fs] dax: Fix unlock mismatch with updated API (Jeff Moyer) [1752109 1724956] - [fs] dax: Don't access a freed inode (Jeff Moyer) [1752109 1724956] - [fs] dax: Check page->mapping isn't NULL (Jeff Moyer) [1752109 1585079 1724956] - [fs] dax: Avoid losing wakeup in dax_lock_mapping_entry (Jeff Moyer) [1752109] - [fs] dax: Fix huge page faults (Jeff Moyer) [1752109] - [fs] dax: Fix dax_unlock_mapping_entry for PMD pages (Jeff Moyer) [1752109] - [fs] dax: Reinstate RCU protection of inode (Jeff Moyer) [1752109] - [fs] dax: Make sure the unlocking entry isn't locked (Jeff Moyer) [1752109] - [fs] dax: Remove optimisation from dax_lock_mapping_entry (Jeff Moyer) [1752109] - [fs] dax: Convert page fault handlers to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax_lock_mapping_entry to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax writeback to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert __dax_invalidate_entry to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax_layout_busy_page to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax_insert_pfn_mkwrite to XArray (Jeff Moyer) [1752109] - [fs] dax: Hash on XArray instead of mapping (Jeff Moyer) [1752109] - [fs] dax: Rename some functions (Jeff Moyer) [1752109] - [fs] dax: Fix deadlock in dax_lock_mapping_entry() (Jeff Moyer) [1752109 1585079 1641544] - [drivers] device-dax: Add missing address_space_operations (Jeff Moyer) [1752109 1585079] - [x86] x86/mm/pat: Prepare {reserve, free}_memtype() for "decoy" addresses (Jeff Moyer) [1752109 1585079] - [mm] mm, memory_failure: Teach memory_failure() about dev_pagemap pages (Jeff Moyer) [1703560 1752109 1585079] - [fs] filesystem-dax: Introduce dax_lock_mapping_entry() (Jeff Moyer) [1752109 1585079] - [mm] mm, memory_failure: Collect mapping size in collect_procs() (Jeff Moyer) [1752109 1585079] - [mm] mm, madvise_inject_error: Let memory_failure() optionally take a page reference (Jeff Moyer) [1752109 1585079] - [mm] mm, madvise_inject_error: Disable MADV_SOFT_OFFLINE for ZONE_DEVICE pages (Jeff Moyer) [1752109 1585079] - [fs] filesystem-dax: Set page->index (Jeff Moyer) [1752109 1585079] - [drivers] device-dax: Set page->index (Jeff Moyer) [1752109 1585079] - [drivers] device-dax: Enable page_mapping() (Jeff Moyer) [1752109 1585079] - [drivers] device-dax: Convert to vmf_insert_mixed and vm_fault_t (Jeff Moyer) [1752109 1585079] - [pci] PCI: Add quirk to disable MSI-X support for Amazon's Annapurna Labs Root Port (Myron Stowe) [1732357] - [pci] PCI/VPD: Prevent VPD access for Amazon's Annapurna Labs Root Port (Myron Stowe) [1732357] - [pci] PCI: Add ACS quirk for Amazon Annapurna Labs root ports (Myron Stowe) [1732357] - [pci] PCI: Add Amazon's Annapurna Labs vendor ID (Myron Stowe) [1732357] - [arm64] arm64: PCI: Preserve firmware configuration when desired (Myron Stowe) [1732372] - [arm64] arm64: PCI: Allow resource reallocation if necessary (Myron Stowe) [1732372] - [pci] PCI: Don't auto-realloc if we're preserving firmware config (Myron Stowe) [1732372] - [pci] PCI/ACPI: Evaluate PCI Boot Configuration _DSM (Myron Stowe) [1732372] - [irqchip] irqchip/gic-v2m: Add support for Amazon Graviton variant of GICv3+GICv2m (Myron Stowe) [1732382] - [pci] PCI: al: Add Amazon Annapurna Labs PCIe host controller driver (Myron Stowe) [1732357] - [netdrv] mlx4: fix spelling mistake "veify" -> "verify" (Alaa Hleihel) [1724340] - [netdrv] IB/mlx4: Fix memory leaks (Alaa Hleihel) [1724340] - [netdrv] net/mlx4_en: fix a memory leak bug (Alaa Hleihel) [1724340] - [netdrv] IB/mlx4: Delete unused func arg (Alaa Hleihel) [1724340] - [netdrv] net/mlx4_en: ethtool, Remove unsupported SFP EEPROM high pages query (Alaa Hleihel) [1724340 1724339] - [netdrv] net/mlx4_core: Change the error print to info print (Alaa Hleihel) [1724340 1724339] - [netdrv] mlx4: Convert pv_id_table to XArray (Alaa Hleihel) [1724340 1724339] - [netdrv] IB/mlx4: Fix race condition between catas error reset and aliasguid flows (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: Fix qp mtt size calculation (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: Fix locking in SRIOV mode when switching between events and polling (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: Fix reset flow when in command polling mode (Alaa Hleihel) [1724340 1724338] - [netdrv] mellanox: Switch to bitmap_zalloc() (Alaa Hleihel) [1724340 1724338] - [netdrv] IB/mlx4: Increase the timeout for CM cache (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: A write memory barrier is sufficient in EQ ci update (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4: Mark expected switch fall-through (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4: remove unneeded semicolon (Alaa Hleihel) [1724340 1724338] - [parport] parport: parport_serial: Add support for Sunix Multi I/O boards (John Linville) [1663781] - [tty] serial: 8250_pci: Add support for Sunix serial boards (John Linville) [1663781] - [scsi] hpsa: update driver version (Joseph Szczypek) [1761968] - [scsi] scsi: hpsa: add missing hunks in reset-patch (Joseph Szczypek) [1761968] - [netdrv] igc: Clean up unused shadow_vfta pointer (David Arcari) [1721713] - [netdrv] igc: Add Rx checksum support (David Arcari) [1721713] - [netdrv] igc: Add set_rx_mode support (David Arcari) [1721713] - [netdrv] igc: Add SCTP CRC checksumming functionality (David Arcari) [1721713] - [netdrv] igc: Add tx_csum offload functionality (David Arcari) [1721713] - [netdrv] igc: Remove unneeded PCI bus defines (David Arcari) [1721713] - [netdrv] igc: Add NVM checksum validation (David Arcari) [1721713] - [netdrv] igc: Remove useless forward declaration (David Arcari) [1721713] - [netdrv] ethernet: Delete unnecessary checks before the macro call dev_kfree_skb (David Arcari) [1721713] - [netdrv] igc: Add more SKUs for i225 device (David Arcari) [1721713] - [netdrv] igc: Update the MAC reset flow (David Arcari) [1721713] - [netdrv] igc: Remove the unused field from a device specification structure (David Arcari) [1721713] - [netdrv] igc: Remove the polarity field from a PHY information structure (David Arcari) [1721713] - [netdrv] net: Use skb accessors in network drivers (David Arcari) [1721713] - [netdrv] igc: Prefer pcie_capability_read_word() (David Arcari) [1721713] - [netdrv] igc: Cleanup the redundant code (David Arcari) [1721713] - [netdrv] igc: Add flow control support (David Arcari) [1721713] - [netdrv] igc: Remove the obsolete workaround (David Arcari) [1721713] - [netdrv] igc: Clean up unused pointers (David Arcari) [1721713] - [netdrv] igc: Fix double definitions (David Arcari) [1721713] - [netdrv] igb/igc: warn when fatal read failure happens (David Arcari) [1721713] - [scsi] scsi: qla2xxx: Fix different size DMA Alloc/Unmap (Himanshu Madhani) [1753031] - [scsi] qla2xxx: call dma_free_coherent with correct size in all cases in qla24xx_sp_unmap (Himanshu Madhani) [1753031] - [arm64] crypto: arm64/crc32 - remove PMULL based CRC32 driver (Mark Salter) [1742821] - [arm64] arm64/lib: improve CRC32 performance for deep pipelines (Mark Salter) [1742821] - [arm64] arm64/lib: add accelerated crc32 routines (Mark Salter) [1742821] - [arm64] arm64: cpufeature: add feature for CRC32 instructions (Mark Salter) [1742821] - [lib] lib/crc32: make core crc32() routines weak so they can be overridden (Mark Salter) [1742821] - [arm64] arm64: cpu: Move errata and feature enable callbacks closer to callers (Mark Salter) [1742821] - [arm64] arm64: kill config_sctlr_el1() (Mark Salter) [1742821] - [include] ethtool: Add SFF-8436 and SFF-8636 max EEPROM length definitions (Petr Oros) [1757522] - [net] bridge/mdb: remove wrong use of NLM_F_MULTI (Hangbin Liu) [1756799] - [net] bridge: mcast: don't delete permanent entries when fast leave is enabled (Hangbin Liu) [1756799] - [net] bridge: multicast: use rcu to access port list from br_multicast_start_querier (Hangbin Liu) [1756799] - [net] bridge: Fix ethernet header pointer before check skb forwardable (Hangbin Liu) [1756799] - [net] clear skb->tstamp in bridge forwarding path (Hangbin Liu) [1756799] - [net] bridge: br_arp_nd_proxy: set icmp6_router if neigh has NTF_ROUTER (Hangbin Liu) [1756799] - [net] vlan: Inherit MPLS features from parent device (Hangbin Liu) [1724306] - [netdrv] linux/dim: Fix overflow in dim calculation (Ivan Vecera) [1737807] - [lib] dim: Fix -Wunused-const-variable warnings (Ivan Vecera) [1737807] - [lib] linux/dim: Add completions count to dim_sample (Ivan Vecera) [1737807] - [netdrv] linux/dim: Move implementation to .c files (Ivan Vecera) [1737807] - [netdrv] linux/dim: Rename externally used net_dim members (Ivan Vecera) [1737807] - [netdrv] linux/dim: Rename net_dim_sample() to net_dim_update_sample() (Ivan Vecera) [1737807] - [netdrv] linux/dim: Rename externally exposed macros (Ivan Vecera) [1737807] - [include] linux/dim: Remove "net" prefix from internal DIM members (Ivan Vecera) [1737807] - [include] linux/dim: Move logic to dim.h (Ivan Vecera) [1737807] - [tools] selftests: add a test case for cls_lower handle overflow (Ivan Vecera) [1761512] - [net] idr: introduce idr_for_each_entry_continue_ul() (Ivan Vecera) [1761512] - [net] idr: fix overflow case for idr_for_each_entry_ul() (Ivan Vecera) [1761512] - [net] sctp: add chunks to sk_backlog when the newsk sk_socket is not set (Xin Long) [1734271] - [net] netns: enable to dump full nsid translation table (Petr Oros) [1757748] - [net] netns: enable to specify a nsid for a get request (Petr Oros) [1757748] - [net] netns: add support of NETNSA_TARGET_NSID (Petr Oros) [1757748] - [net] netns: introduce 'struct net_fill_args' (Petr Oros) [1757748] - [net] netns: remove net arg from rtnl_net_fill() (Petr Oros) [1757748] - [net] mpls: fix warning with multi-label encap (Hangbin Liu) [1756788] - [net] mpls: Return error for RTA_GATEWAY attribute (Hangbin Liu) [1756788] - [net] macsec: drop skb sk before calling gro_cells_receive (Xin Long) [1745819] - [net] team: add ethtool get_link_ksettings (Hangbin Liu) [1724896] - [net] sched: flower: don't call synchronize_rcu() on mask creation (Ivan Vecera) [1751856] - [net] sched: flower: refactor reoffload for concurrent access (Ivan Vecera) [1751856] - [net] sched: flower: fix filter net reference counting (Ivan Vecera) [1751856] - [net] sched: flower: use correct ht function to prevent duplicates (Ivan Vecera) [1751856] - [net] sched: flower: insert filter to ht before offloading it to hw (Ivan Vecera) [1751856] - [net] sched: ensure tc flower reoffload takes filter ref (Ivan Vecera) [1751856] - [net] sched: flower: set unlocked flag for flower proto ops (Ivan Vecera) [1751856] - [net] sched: flower: track rtnl lock state (Ivan Vecera) [1751856] - [net] sched: flower: protect flower classifier state with spinlock (Ivan Vecera) [1751856] - [net] sched: flower: handle concurrent tcf proto deletion (Ivan Vecera) [1751856] - [net] sched: flower: handle concurrent filter insertion in fl_change (Ivan Vecera) [1751856] - [net] sched: flower: protect masks list with spinlock (Ivan Vecera) [1751856] - [net] sched: flower: handle concurrent mask insertion (Ivan Vecera) [1751856] - [net] sched: flower: add reference counter to flower mask (Ivan Vecera) [1751856] - [net] sched: flower: track filter deletion with flag (Ivan Vecera) [1751856] - [net] sched: flower: introduce reference counting for filters (Ivan Vecera) [1751856] - [net] sched: flower: refactor fl_change (Ivan Vecera) [1751856] - [net] sched: flower: don't check for rtnl on head dereference (Ivan Vecera) [1751856] - [kernel] exit from RHEL 8.2 early ystream mode (Phillip Lougher)- [x86] kvm: svm: Remove unneeded WBINVD and DF_FLUSH when starting SEV guests (Janakarajan Natarajan) [1762517] - [x86] kvm: svm: Reduce WBINVD/DF_FLUSH invocations (Janakarajan Natarajan) [1762517] - [x86] kvm: svm: Guard against DEACTIVATE when performing WBINVD/DF_FLUSH (Janakarajan Natarajan) [1762517] - [x86] kvm: svm: Serialize access to the SEV ASID bitmap (Janakarajan Natarajan) [1762517] - [xen] remove pre-xen3 fallback handlers (Vitaly Kuznetsov) [1759997] - [net] SUNRPC: Count ops completing with tk_status < 0 (Dave Wysochanski) [1636572] - [net] SUNRPC: Use proper printk specifiers for unsigned long long (Dave Wysochanski) [1636572] - [net] SUNRPC: Move call to rpc_count_iostats before rpc_call_done (Dave Wysochanski) [1636572] - [net] SUNRPC: Add tracking of RPC level errors (Dave Wysochanski) [1636572] - [net] SUNRPC: Refactor rpc_restart_call/rpc_restart_call_prepare (Dave Wysochanski) [1636572] - [net] SUNRPC: Fix up task signalling (Dave Wysochanski) [1636572] - [net] SUNRPC: Track writers of the 'channel' file to improve cache_listeners_exist (Dave Wysochanski) [1741333] - [net] sunrpc/cache: handle missing listeners better. (Dave Wysochanski) [1741333] - [pci] PCI/ACPI: Advertise _HPX Type 3 support via _OSC (Myron Stowe) [1712756] - [pci] PCI/ACPI: Implement _HPX Type 3 Setting Record (Myron Stowe) [1712756] - [netdrv] e1000e: Add support for Comet Lake (David Arcari) [1764549] - [netdrv] e1000e: Add support for S0ix (Ken Cox) [1721709] - [netdrv] e1000e: Make speed detection on hotplugging cable more reliable (Ken Cox) [1721709] - [netdrv] ethernet: Delete unnecessary checks before the macro call dev_kfree_skb (Ken Cox) [1721709] - [netdrv] e1000e: add workaround for possible stalled packet (Ken Cox) [1721709] - [netdrv] e1000e: Use dev_get_drvdata where possible (Ken Cox) [1721709] - [netdrv] net: Use skb accessors in network drivers (Ken Cox) [1721709] - [netdrv] e1000e: PCIm function state support (Ken Cox) [1721709] - [netdrv] e1000e: Make watchdog use delayed work (Ken Cox) [1721709] - [netdrv] e1000e: Reduce boot time by tightening sleep ranges (Ken Cox) [1721709] - [netdrv] e1000e: Increase pause and refresh time (Ken Cox) [1721709] - [scsi] scsi: megaraid_sas: Introduce module parameter for default queue depth (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Fix a compilation warning (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Make a bunch of functions static (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Make some functions static (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: fix panic on loading firmware crashdump (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: fix spelling mistake "megarid_sas" -> "megaraid_sas" (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Update driver version to 07.710.50.00 (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add module parameter for FW Async event logging (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enable msix_load_balance for Invader and later controllers (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Fix calculation of target ID (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Make some symbols static (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Update driver version to 07.710.06.00-rc1 (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Introduce various Aero performance modes (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Use high IOPS queues based on IO workload (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Set affinity for high IOPS reply queues (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enable coalescing for high IOPS queues (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add support for High IOPS queues (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add support for MPI toolbox commands (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Offload Aero RAID5/6 division calculations to driver (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: RAID1 PCI bandwidth limit algorithm is applicable for only Ventura (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: megaraid_sas: Add check for count returned by HOST_DEVICE_LIST DCMD (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Handle sequence JBOD map failure at driver level (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Don't send FPIO to RL Bypass queue (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: In probe context, retry IOC INIT once if firmware is in fault (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Release Mutex lock before OCR in case of DCMD timeout (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Call disable_irq from process IRQ poll (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Remove few debug counters from IO path (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add support for Non-secure Aero PCI IDs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add 32 bit atomic descriptor support to AERO adapters (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Use struct_size() helper (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Remove unused including (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: use DEVICE_ATTR_{RO, RW} (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: use octal permissions instead of constants (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: make max_sectors visible in sys (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variables 'buff_addr' and 'ci_h' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variable 'sge_sz' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variables 'host' and 'wait_time' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variable 'cur_state' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Update driver version to 07.708.03.00 (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Export RAID map through debugfs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Fix MSI-X vector print (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add debug prints for device list (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add prints in suspend and resume path (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Print firmware interrupt status (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Print FW fault information (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Export RAID map id through sysfs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Print BAR information from driver (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Dump system registers for debugging (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Dump system interface regs from sysfs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add formatting option for megasas_dump (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enhance internal DCMD timeout prints (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enhance prints in OCR and TM path (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Load balance completions across all MSI-X (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: IRQ poll to avoid CPU hard lockups (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Block PCI config space access from userspace during OCR (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Rework code around controller reset (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: fw_reset_no_pci_access required for MFI adapters only (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Remove unused variable target_index (Tomas Henzl) [1726251] - [x86] perf/x86/msr: Add Comet Lake CPU support (Michael Petlan) [1763290] - [x86] perf/x86/intel: Add Comet Lake CPU support (Michael Petlan) [1763290] - [x86] perf/x86/cstate: Add Comet Lake CPU support (Michael Petlan) [1763290] - [x86] perf/x86/intel: Update KBL Package C-state events to also include PC8/PC9/PC10 counters (Michael Petlan) [1763290] - [x86] x86/cpu: Add Comet Lake to the Intel CPU models header (Michael Petlan) [1763290] - [s390] s390/qeth: reject oversized SNMP requests (Philipp Rudo) [1726414] - [s390] s390/qeth: serialize cmd reply with concurrent timeout (Philipp Rudo) [1726414] - [s390] s390/qeth: move cast type selection into fill_header() (Philipp Rudo) [1726414] - [s390] s390/qeth: extract helper for route validation (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate skb RX processing in L3 driver (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate pm code (Philipp Rudo) [1726414] - [s390] s390/qeth: streamline SNMP cmd code (Philipp Rudo) [1726414] - [s390] s390/qeth: remove static cmd buffer infrastructure (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate MPC cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate vnicc cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate diag cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate various cmds with sub-types (Philipp Rudo) [1726414] - [s390] s390/qeth: clarify parameter for simple assist cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate simple IPA cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: allocate a single cmd on read channel (Philipp Rudo) [1726414] - [s390] s390/qeth: command-chain the IDX sequence (Philipp Rudo) [1726414] - [s390] s390/qeth: convert RCD code to common IO infrastructure (Philipp Rudo) [1726414] - [s390] s390/qeth: add support for dynamically allocated cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: remove 'channel' parameter from callbacks (Philipp Rudo) [1726414] - [s390] s390/qeth: convert device-specific trace entries (Philipp Rudo) [1726414] - [s390] s390/qeth: remove OSN-specific IO code (Philipp Rudo) [1726414] - [s390] s390/qeth: remove qeth_wait_for_buffer() (Philipp Rudo) [1726414] - [s390] s390/qeth: clean up setting of BLKT defaults (Philipp Rudo) [1726414] - [s390] s390/qeth: restart pending READ cmd from callback (Philipp Rudo) [1726414] - [s390] s390/qeth: simplify DOWN state handling (Philipp Rudo) [1726414] - [s390] s390/qeth: use mm helpers (Philipp Rudo) [1726414] - [s390] s390/qeth: don't mask TX errors on IQD devices (Philipp Rudo) [1726414] - [s390] s390/qeth: handle error when updating TX queue count (Philipp Rudo) [1726414] - [s390] s390/qeth: fix VLAN attribute in bridge_hostnotify udev event (Philipp Rudo) [1726414] - [s390] s390/qeth: check dst entry before use (Philipp Rudo) [1726414] - [s390] s390/qeth: handle limited IPv4 broadcast in L3 TX path (Philipp Rudo) [1726414] - [s390] s390/qeth: trust non-IP cast type in qeth_l3_fill_header() (Philipp Rudo) [1726414] - [s390] s390/qeth: extract helper to determine L2 cast type (Philipp Rudo) [1726414] - [s390] s390/qeth: cache max number of available buffer elements (Philipp Rudo) [1726414] - [s390] s390/qeth: don't clear Output buffers on every queue init (Philipp Rudo) [1726414] - [s390] s390/qeth: use IS_* helpers for checking device type (Philipp Rudo) [1726414] - [s390] s390/qeth: clean up stale buffer state documentation (Philipp Rudo) [1726414] - [s390] s390/qeth: remove RX seqno in skb->cb (Philipp Rudo) [1726414] - [s390] s390: qeth: address type mismatch warning (Philipp Rudo) [1726414] - [s390] s390/qeth: stop/wake TX queues based on their fill level (Philipp Rudo) [1726414] - [s390] s390/qeth: simplify QoS code (Philipp Rudo) [1726414] - [s390] s390/qeth: add TX multiqueue support for OSA devices (Philipp Rudo) [1726414] - [s390] s390/qeth: add TX multiqueue support for IQD devices (Philipp Rudo) [1726414] - [s390] s390/qeth: don't keep statistics for tx timeout (Philipp Rudo) [1726414] - [s390] s390/qeth: don't bother updating the last-tx time (Philipp Rudo) [1726414] - [s390] s390/qeth: handle error from qeth_update_from_chp_desc() (Philipp Rudo) [1726414] - [s390] s390/qeth: clarify naming for some QDIO helpers (Philipp Rudo) [1726414] - [s390] s390/qeth: send IDX cmds via qeth_send_control_data() (Philipp Rudo) [1726414] - [s390] s390/qeth: use callback to finalize cmd (Philipp Rudo) [1726414] - [s390] s390/qeth: let qeth_notify_reply() set the notify reason (Philipp Rudo) [1726414] - [s390] s390/qeth: clarify default cmd callback (Philipp Rudo) [1726414] - [s390] s390/qeth: don't poll for cmd IO completion (Philipp Rudo) [1726414] - [s390] s390/qeth: convert IP table spinlock to mutex (Philipp Rudo) [1726414] - [s390] s390/qeth: defer IPv6 address notifier events (Philipp Rudo) [1726414] - [s390] s390/qeth: add wrapper for IP table access (Philipp Rudo) [1726414] - [s390] s390/qeth: remove locking for RX modeset cache (Philipp Rudo) [1726414] - [s390] s390/qeth: defer RX modesetting (Philipp Rudo) [1726414] - [s390] s390/qeth: fix race when initializing the IP address table (Philipp Rudo) [1726414] - [s390] s390/qeth: don't erase configuration while probing (Philipp Rudo) [1726414] - [s390] s390/qeth: drop redundant state checking (Philipp Rudo) [1726414] - [s390] s390/qeth: don't special-case HW trap during suspend (Philipp Rudo) [1726414] - [s390] s390/qeth: remove driver-wide workqueue (Philipp Rudo) [1726414] - [s390] s390/qeth: don't defer close_dev work during recovery (Philipp Rudo) [1726414] - [s390] s390/qeth: remove a redundant check for card->dev (Philipp Rudo) [1726414] - [s390] s390/qeth: call dev_close() during recovery (Philipp Rudo) [1726414] - [s390] s390/qeth: unconditionally clear MAC_REGISTERED flag (Philipp Rudo) [1726414] - [s390] s390/qeth: enable/disable the HW trap a little earlier (Philipp Rudo) [1726414] - [s390] s390/qeth: remove RECOVER state (Philipp Rudo) [1726414] - [s390] s390/qeth: split out OSN netdev ops (Philipp Rudo) [1726414] - [s390] s390/qeth: add support for ETHTOOL_GRINGPARAM (Philipp Rudo) [1726414] - [s390] s390/qeth: overhaul ethtool statistics (Philipp Rudo) [1726414] - [s390] s390/qeth: move ethtool code into its own file (Philipp Rudo) [1726414] - [s390] s390/qeth: reduce ethtool statistics (Philipp Rudo) [1726414] - [s390] s390/qeth: use a static Output Queue array (Philipp Rudo) [1726414] - [s390] s390/qeth: allow manual recovery when device is SOFTSETUP (Philipp Rudo) [1726414] - [s390] s390/qeth: convert remaining legacy cmd callbacks (Philipp Rudo) [1726414] - [s390] s390/qeth: convert bridgeport callbacks (Philipp Rudo) [1726414] - [s390] s390/qeth: allow cmd callbacks to return errnos (Philipp Rudo) [1726414] - [s390] s390/qeth: limit trace to valid data of command request (Philipp Rudo) [1726414] - [s390] s390/qeth: align csum offload with TSO control logic (Philipp Rudo) [1726414] - [s390] s390/qeth: enable only required csum offload features (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate filling of low-level cmd length fields (Philipp Rudo) [1726414] - [s390] s390/qeth: reduce data length for ARP cache query (Philipp Rudo) [1726414] - [s390] s390/qeth: remove VLAN tracking for L2 devices (Philipp Rudo) [1726414] - [s390] s390/qeth: detach netdevice while card is offline (Philipp Rudo) [1726414] - [s390] s390/qeth: delay netdevice registration (Philipp Rudo) [1726414] - [s390] s390/qeth: remove TX disable from online path (Philipp Rudo) [1726414] - [s390] s390/qeth: register MAC address earlier (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate open/stop netdev ops (Philipp Rudo) [1726414] - [s390] s390/qeth: remove bogus netif_wake_queue() (Philipp Rudo) [1726414] - [s390] s390/qeth: streamline TX buffer management (Philipp Rudo) [1726414] - [s390] s390/qeth: don't process hsuid in qeth_l3_setup_netdev() (Philipp Rudo) [1726414] - [s390] s390/qeth: remove unused fallback in Layer3's MAC code (Philipp Rudo) [1726414] - [s390] s390/qeth: remove two IPA command helpers (Philipp Rudo) [1726414] - [s390] s390/qeth: replace open-coded cmd setup (Philipp Rudo) [1726414] - [s390] s390/qeth: remove card list (Philipp Rudo) [1726414] - [s390] s390/qeth: unify transmit code (Philipp Rudo) [1726414] - [s390] s390/qeth: handle af_iucv skbs in qeth_l3_fill_header() (Philipp Rudo) [1726414] - [s390] s390/qeth: sanitize ARP requests (Philipp Rudo) [1726414] - [s390] s390/qdio: restrict QAOB usage to IQD unicast queues (Philipp Rudo) [1726414] - [s390] s390/qdio: add sanity checks to the fast-requeue path (Philipp Rudo) [1726414] - [s390] s390/qdio: don't touch the dsci in tiqdio_add_input_queues() (Philipp Rudo) [1726414] - [s390] s390/qdio: (re-)initialize tiqdio list entries (Philipp Rudo) [1726414] - [s390] s390/qdio: optimize state inspection of HW-owned SBALs (Philipp Rudo) [1726414] - [s390] s390/qdio: use get_buf_state() in debug_get_buf_state() (Philipp Rudo) [1726414] - [s390] s390/qdio: allow to scan all Output SBALs in one go (Philipp Rudo) [1726414] - [s390] s390/qdio: consolidate index tracking for queue scan (Philipp Rudo) [1726414] - [s390] s390/qdio: limit direct access to first_to_check cursor (Philipp Rudo) [1726414] - [s390] s390/qdio: eliminate queue's last_move cursor (Philipp Rudo) [1726414] - [s390] s390/qdio: simplify SBAL range calculation (Philipp Rudo) [1726414] - [s390] s390/qdio: pass up count of ready-to-process SBALs (Philipp Rudo) [1726414] - [s390] s390/qdio: fix output of DSCI value in debug file (Philipp Rudo) [1726414] - [s390] s390/qdio: clean up qdio_check_outbound_after_thinint() (Philipp Rudo) [1726414] - [s390] s390/qdio: clean up pci_out_supported() (Philipp Rudo) [1726414] - [s390] s390/qdio: make SBAL address array type-safe (Philipp Rudo) [1726414] - [s390] s390/qdio: clean up AOB handling (Philipp Rudo) [1726414] - [s390] s390/ccwgroup: add get_ccwgroupdev_by_busid() (Philipp Rudo) [1726414]- [net] xprtrdma: Remove stale comment (Kamal Heib) [1720891] - [net] xprtrdma: Update comments that reference ib_drain_qp (Kamal Heib) [1720891] - [net] xprtrdma: Remove pr_err() call sites from completion handlers (Kamal Heib) [1720891] - [net] xprtrdma: Eliminate struct rpcrdma_create_data_internal (Kamal Heib) [1720891] - [net] xprtrdma: Aggregate the inline settings in struct rpcrdma_ep (Kamal Heib) [1720891] - [net] xprtrdma: Remove rpcrdma_create_data_internal::rsize and wsize (Kamal Heib) [1720891] - [net] xprtrdma: Eliminate rpcrdma_ia::ri_device (Kamal Heib) [1720891] - [net] xprtrdma: More Send completion batching (Kamal Heib) [1720891] - [net] xprtrdma: Clean up sendctx functions (Kamal Heib) [1720891] - [net] xprtrdma: Trace marshaling failures (Kamal Heib) [1720891] - [net] xprtrdma: Increase maximum number of backchannel requests (Kamal Heib) [1720891] - [net] xprtrdma: Backchannel can use GFP_KERNEL allocations (Kamal Heib) [1720891] - [net] xprtrdma: Clean up regbuf helpers (Kamal Heib) [1720891] - [net] xprtrdma: De-duplicate "allocate new, free old regbuf" (Kamal Heib) [1720891] - [net] xprtrdma: Allocate req's regbufs at xprt create time (Kamal Heib) [1720891] - [net] xprtrdma: rpcrdma_regbuf alignment (Kamal Heib) [1720891] - [net] xprtrdma: Clean up rpcrdma_create_rep() and rpcrdma_destroy_rep() (Kamal Heib) [1720891] - [net] xprtrdma: Clean up rpcrdma_create_req() (Kamal Heib) [1720891] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 502 (Kamal Heib) [1720891] - [infiniband] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Kamal Heib) [1720891] - [net] xprtrdma: Use struct_size() in kzalloc() (Kamal Heib) [1720891] - [infiniband] RDMA/core: Fix panic when port_data isn't initialized (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Pass udata on uverbs error unwind (Kamal Heib) [1720891] - [infiniband] RDMA/core: Clear out the udata before error unwind (Kamal Heib) [1720891] - [infiniband] RDMA/srp: Rename SRP sysfs name after IB device rename trigger (Kamal Heib) [1720891] - [infiniband] treewide: Add SPDX license identifier - Makefile/Kconfig (Kamal Heib) [1720891] - [infiniband] RDMA/core: Change system parameters callback from dumpit to doit (Kamal Heib) [1720891] - [infiniband] RDMA: Directly cast the sockaddr union to sockaddr (Kamal Heib) [1720891] - [infiniband] RDMA/ipoib: Allow user space differentiate between valid dev_port (Kamal Heib) [1720891] - [infiniband] RDMA/device: Don't fire uevent before device is fully initialized (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Remove hugetlb flag (Kamal Heib) [1720891] - [infiniband] RDMA/bnxt_re: Use core helpers to get aligned DMA address (Kamal Heib) [1720891] - [infiniband] RDMA/bnxt_re: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720891] - [infiniband] RDMA/i40iw: Use core helpers to get aligned DMA address within a supported page size (Kamal Heib) [1720891] - [infiniband] RDMA/i40iw: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720891] - [infiniband] RDMA/verbs: Add a DMA iterator to return aligned contiguous memory blocks (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Add API to find best driver supported page size in an MR (Kamal Heib) [1720891] - [infiniband] RDMA/core: Allow detaching gid attribute netdevice for RoCE (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Use rdma_read_gid_attr_ndev_rcu to access netdev (Kamal Heib) [1720891] - [infiniband] RDMA/cma: Use rdma_read_gid_attr_ndev_rcu to access netdev (Kamal Heib) [1720891] - [infiniband] RDMA: Introduce and use GID attr helper to read RoCE L2 fields (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Add vlan enable bit for hip08 (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Update some fields of qp context (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Delete unused variable in hns_roce_v2_modify_qp function (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Add enable judgement for UD vlan (Kamal Heib) [1720891] - [infiniband] IB/mlx5: Consider vlan of lower netdev for macvlan GID entries (Kamal Heib) [1720891] - [infiniband] IB/cm: Reduce dependency on gid attribute ndev check (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Consider skb reserve space based on netdev of GID (Kamal Heib) [1720891] - [infiniband] RDMA: Get rid of iw_cm_verbs (Kamal Heib) [1720891] - [infiniband] RDMA/cxgb4: Use ib_device_set_netdev() (Kamal Heib) [1720891] - [infiniband] RDMA/core: Do not invoke init_port on compat devices (Kamal Heib) [1720891] - [infiniband] IB/core: Set qp->real_qp before it may be accessed (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Initialize uverbs_attr_bundle ucontext in ib_uverbs_get_context (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Initialize udata struct on destroy flows (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Handle page combining avoidance correctly in ib_umem_add_sg_table() (Kamal Heib) [1720891] - [infiniband] RDMA/core: Introduce RDMA subsystem ibdev_* print functions (Kamal Heib) [1720891] - [infiniband] uverbs: Convert idr to XArray (Kamal Heib) [1720891] - [infiniband] RDMA: Remove rdma_user_mmap_page (Kamal Heib) [1720891] - [infiniband] RDMA/mlx5: Use get_zeroed_page() for clock_info (Kamal Heib) [1720891] - [infiniband] RDMA/mlx5: Do not allow the user to write to the clock page (Kamal Heib) [1720891] - [infiniband] RDMA/cma: Consider scope_id while binding to ipv6 ll address (Kamal Heib) [1720891] - [infiniband] IB/core: Allow vlan link local address based RoCE GIDs (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add a netlink command to change net namespace of rdma device (Kamal Heib) [1720891] - [infiniband] RDMA/core: Introduce a helper function to change net namespace of rdma device (Kamal Heib) [1720891] - [infiniband] RDMA/core: Avoid freeing netdevs in disable_device() (Kamal Heib) [1720891] - [infiniband] RDMA/ocrdma: Remove use of idr use pci bdf instead (Kamal Heib) [1720891] - [infiniband] RDMA/drivers: Convert easy drivers to use ib_device_set_netdev() (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Use correct value for SG entries in sg_copy_to_buffer() (Kamal Heib) [1720891] - [infiniband] RDMA: Handle SRQ allocations by IB/core (Kamal Heib) [1720891] - [infiniband] qedr: Convert srqidr to XArray (Kamal Heib) [1720891] - [infiniband] qedr: Convert qpidr to XArray (Kamal Heib) [1720891] - [infiniband] RDMA: Handle AH allocations by IB/core (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Fix bad endianess of port_pd variable (Kamal Heib) [1720891] - [infiniband] RDMA/mad: Reduce MAD scope to mlx5_ib only (Kamal Heib) [1720891] - [infiniband] RDMA/ocrdma: Remove a set-but-not-used variable (Kamal Heib) [1720891] - [infiniband] RDMA/core: Support object allocation in atomic context (Kamal Heib) [1720891] - [infiniband] IB: When attrs.udata/ufile is available use that instead of uobject (Kamal Heib) [1720891] - [infiniband] RDMA/nldev: Return device protocol (Kamal Heib) [1720891] - [infiniband] RDMA/cm: Move debug counters to be under relevant IB device (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Combine contiguous PAGE_SIZE regions in SGEs (Kamal Heib) [1720891] - [infiniband] RDMA/cm: Remove useless zeroing of static global variable (Kamal Heib) [1720891] - [infiniband] RDMA/cma: Set proper port number as index (Kamal Heib) [1720891] - [infiniband] IB: Pass only ib_udata in function prototypes (Kamal Heib) [1720891] - [infiniband] IB: Remove 'uobject->context' dependency in object destroy APIs (Kamal Heib) [1720891] - [infiniband] cxgb4: Convert mmidr to XArray (Kamal Heib) [1720891] - [infiniband] cxgb4: Convert qpidr to XArray (Kamal Heib) [1720891] - [infiniband] cxgb4: Convert cqidr to XArray (Kamal Heib) [1720891] - [infiniband] IB: Pass uverbs_attr_bundle down ib_x destroy path (Kamal Heib) [1720891] - [infiniband] IB: Pass uverbs_attr_bundle down uobject destroy path (Kamal Heib) [1720891] - [infiniband] IB: ucontext should be set properly for all cmd & ioctl paths (Kamal Heib) [1720891] - [infiniband] RDMA/core: Don't compare specific bit after boolean AND (Kamal Heib) [1720891] - [infiniband] RDMA/netlink: Remove unused data structure (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add command to set ib_core device net namspace sharing mode (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add interface to read device namespace sharing mode (Kamal Heib) [1720891] - [infiniband] RDMA/core: Extend ib_device_get_by_index for net namespace (Kamal Heib) [1720891] - [infiniband] RDMA: Check net namespace access for uverbs, umad, cma and nldev (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add module param to disable device sharing among net ns (Kamal Heib) [1720891] - [infiniband] RDMA/core: Support core port attributes in non init_net (Kamal Heib) [1720891] - [infiniband] RDMA/core: Implement compat device/sysfs tree in net namespace (Kamal Heib) [1720891] - [infiniband] RDMA/core: Restrict sysfs entries view to init_net (Kamal Heib) [1720891] - [infiniband] RDMA/core: Introduce ib_core_device to hold device (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Use correct sizing on buffers holding page DMA addresses (Kamal Heib) [1720891] - [infiniband] RDMA/mthca: Use correct sizing on buffers holding page DMA addresses (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Allow the compiler to verify declaration and definition consistency (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Annotate uverbs_request_next_ptr() return value as a __user pointer (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Add a __user annotation to a pointer (Kamal Heib) [1720891] - [infiniband] IB/rxe: Replace av->network_type with skb->protocol (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add SMP details to MAD tracing (Kamal Heib) [1720891] - [infiniband] IB/UMAD: Add umad trace points (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add agent trace points (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add recv path trace point (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add send path trace points (Kamal Heib) [1720891] - [infiniband] RDMA/vmw_pvrdma: Skip zeroing device attrs (Kamal Heib) [1720891] - [infiniband] IB/iser: remove uninitialized variable len (Kamal Heib) [1720891] - [infiniband] IB/core: Ensure an invalidate_range callback on ODP MR (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Fix slab-out-bounds access which lead to kernel crash later (Kamal Heib) [1720891] - [infiniband] drivers: infiniband: Fix whitespace in kconfig (Kamal Heib) [1720891] - [infiniband] RDMA/nes: remove redundant check on udata (Kamal Heib) [1720891] - [infiniband] cma: Convert portspace IDRs to XArray (Kamal Heib) [1720891] - [infiniband] ucm: Convert ctx_id_table to XArray (Kamal Heib) [1720891] - [infiniband] ib core: Convert query_idr to XArray (Kamal Heib) [1720891] - [infiniband] RDMA/cm: Convert local_id_table to XArray (Kamal Heib) [1720891] - [infiniband] IB/mad: Convert ib_mad_clients to XArray (Kamal Heib) [1720891] - [infiniband] RDMA: Use __packed annotation instead of __attribute__ ((packed)) (Kamal Heib) [1720891] - [char] tpm: Remove a deprecated comments about implicit sysfs locking (Jerry Snitselaar) [1725580 1742257] - [char] tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for interrupts (Jerry Snitselaar) [1725580 1742257] - [char] tpm_tis_core: Turn on the TPM before probing IRQ's (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Fix null pointer dereference on chip register error path (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Fix TPM 1.2 Shutdown sequence to prevent future TPM operations (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Actually fail on TPM errors during "get random" (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 505 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 399 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Add SPDX license identifier - Makefile/Kconfig (Jerry Snitselaar) [1725580 1742257] - [tools] selftests/tpm2: Open tpm dev in unbuffered mode (Jerry Snitselaar) [1725580 1742257] - [tools] selftests/tpm2: Extend tests to cover partial reads (Jerry Snitselaar) [1725580 1742257] - [tools] selftests: add TPM 2.0 tests (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: fix -Wvarags warning (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: Move trusted.h to include/keys [ver #2] (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: Expose common functionality [ver #2] (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Wrap the buffer from the caller to tpm_buf in tpm_send() (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: correctly initialize digests and fix locking issue (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: allow module init if TPM is inactive or deactivated (Jerry Snitselaar) [1725580 1742257] - [net] net/smc: make sure EPOLLOUT is raised (Philipp Rudo) [1726415] - [net] net/smc: avoid fallback in case of non-blocking connect (Philipp Rudo) [1726415] - [net] net/smc: do not schedule tx_work in SMC_CLOSED state (Philipp Rudo) [1726415] - [net] net/smc: common release code for non-accepted sockets (Philipp Rudo) [1726415] - [net] net/smc: Fix error path in smc_init (Philipp Rudo) [1726415] - [net] net/smc: hold conns_lock before calling smc_lgr_register_conn() (Philipp Rudo) [1726415] - [dma] dmaengine: ioatdma: support latency tolerance report (LTR) for v3.4 (Jerry Snitselaar) [1661996] - [dma] dmaengine: ioatdma: add descriptor pre-fetch support for v3.4 (Jerry Snitselaar) [1661996] - [dma] dmaengine: ioatdma: disable DCA enabling on IOATDMA v3.4 (Jerry Snitselaar) [1661996] - [dma] dmaengine: ioatdma: Add Snow Ridge ioatdma device id (Jerry Snitselaar) [1661996] - [kernel] mutex: Fix up mutex_waiter usage (Waiman Long) [1736609] - [kernel] locking/mutex: Use mutex flags macro instead of hard code (Waiman Long) [1736609] - [kernel] locking/mutex: Make __mutex_owner static to mutex.c (Waiman Long) [1736609] - [kernel] locking/mutex: Test for initialized mutex (Waiman Long) [1736609] - [kernel] kernel/locking/mutex.c: remove caller signal_pending branch predictions (Waiman Long) [1736609] - [kernel] Revert "locking/pvqspinlock: Don't wait if vCPU is preempted" (Waiman Long) [1736609] - [kernel] locking/rwsem: Check for operations on an uninitialized rwsem (Waiman Long) [1736609] - [kernel] locking/rwsem: Make handoff writer optimistically spin on owner (Waiman Long) [1736609] - [kernel] locking/rwsem: Add ACQUIRE comments (Waiman Long) [1736609] - [tty] tty/ldsem, locking/rwsem: Add missing ACQUIRE to read_failed sleep loop (Waiman Long) [1736609] - [kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath sleep loop (Waiman Long) [1736609] - [kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath exit when queue is empty (Waiman Long) [1736609] - [kernel] locking/rwsem: Don't call owner_on_cpu() on read-owner (Waiman Long) [1736609] - [kernel] locking/rwsem: Guard against making count negative (Waiman Long) [1736609] - [kernel] locking/rwsem: Adaptive disabling of reader optimistic spinning (Waiman Long) [1736609] - [kernel] locking/rwsem: Enable time-based spinning on reader-owned rwsem (Waiman Long) [1736609] - [kernel] locking/rwsem: Make rwsem->owner an atomic_long_t (Waiman Long) [1736609] - [kernel] locking/rwsem: Enable readers spinning on writer (Waiman Long) [1736609] - [kernel] locking/rwsem: Clarify usage of owner's nonspinaable bit (Waiman Long) [1736609] - [kernel] locking/rwsem: Wake up almost all readers in wait queue (Waiman Long) [1736609] - [kernel] locking/rwsem: More optimal RT task handling of null owner (Waiman Long) [1736609] - [kernel] locking/rwsem: Always release wait_lock before waking up tasks (Waiman Long) [1736609] - [kernel] locking/rwsem: Implement lock handoff to prevent lock starvation (Waiman Long) [1736609] - [kernel] locking/rwsem: Make rwsem_spin_on_owner() return owner state (Waiman Long) [1736609] - [kernel] locking/rwsem: Code cleanup after files merging (Waiman Long) [1736609] - [kernel] locking/rwsem: Add rwsem_init.c to keep __init_rwsem() kABI (Waiman Long) [1736609] - [kernel] locking/rwsem: Merge rwsem.h and rwsem-xadd.c into rwsem.c (Waiman Long) [1736609] - [kernel] locking/rwsem: Implement a new locking scheme (Waiman Long) [1736609] - [kernel] locking/rwsem: Remove rwsem_wake() wakeup optimization (Waiman Long) [1736609] - [kernel] locking/rwsem: Make owner available even if !CONFIG_RWSEM_SPIN_ON_OWNER (Waiman Long) [1736609] - [kernel] locking/lock_events: Use raw_cpu_{add, inc}() for stats (Waiman Long) [1736609] - [kernel] locking/lock_events: Use this_cpu_add() when necessary (Waiman Long) [1736609] - [kernel] locking/rwsem: Revert "[kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath ..." (Waiman Long) [1736609] - [block] block: don't release queue's sysfs lock during switching elevator (Ming Lei) [1760151] - [block] blk-mq: move lockdep_assert_held() into elevator_exit (Ming Lei) [1760151] - [block] block: fix race between switching elevator and removing queues (Ming Lei) [1760151] - [md] raid5: use bio_end_sector in r5_next_bio (Nigel Croxon) [1754949] - [md] raid5: remove STRIPE_OPS_REQ_PENDING (Nigel Croxon) [1754949] - [md] md: add feature flag MD_FEATURE_RAID0_LAYOUT (Nigel Croxon) [1754949] - [md] md/raid0: avoid RAID0 data corruption due to layout confusion. (Nigel Croxon) [1754949] - [md] raid5: don't set STRIPE_HANDLE to stripe which is in batch list (Nigel Croxon) [1754949] - [md] raid5: don't increment read_errors on EILSEQ return (Nigel Croxon) [1754949] - [md] md/raid5: use bio_end_sector to calculate last_sector (Nigel Croxon) [1730670] - [md] md/raid1: fail run raid1 array when active disk less than one (Nigel Croxon) [1730670] - [md] md raid0/linear: Mark array as 'broken' and fail BIOs if a member is gone (Nigel Croxon) [1730670] - [md] raid5 improve too many read errors msg by adding limits (Nigel Croxon) [1730670] - [md] md: don't report active array_state until after revalidate_disk() completes. (Nigel Croxon) [1730670] - [md] md: only call set_in_sync() when it is expected to succeed. (Nigel Croxon) [1730670] - [md] raid1: factor out a common routine to handle the completion of sync write (Nigel Croxon) [1730670] - [md] md: don't call spare_active in md_reap_sync_thread if all member devices can't work (Nigel Croxon) [1730670] - [md] md: don't set In_sync if array is frozen (Nigel Croxon) [1730670] - [md] md: allow last device to be forcibly removed from RAID1/RAID10. (Nigel Croxon) [1730670] - [md] md/raid10: end bio when the device faulty (Nigel Croxon) [1730670] - [md] md/raid1: end bio when the device faulty (Nigel Croxon) [1730670] - [md] md/raid6: Set R5_ReadError when there is read failure on parity disk (Nigel Croxon) [1730670] - [md] raid1: use an int as the return value of raise_barrier() (Nigel Croxon) [1730670] - [md] md/raid1: Fix a warning message in remove_wb() (Nigel Croxon) [1730670] - [crypto] crypto: ccp - Fix SEV_VERSION_GREATER_OR_EQUAL (Gary Hook) [1754634] - [crypto] crypto: ccp - Do not free psp_master when PLATFORM_INIT fails (Gary Hook) [1754634] - [crypto] crypto: ccp - Use kmemdup in ccp_copy_and_save_keypart() (Gary Hook) [1754634] - [crypto] crypto: ccp - introduce SEV_GET_ID2 command (Gary Hook) [1754634] - [netdrv] e1000e: start network tx queue only when link is up (Oleksandr Natalenko) [1747869] - [netdrv] Revert "e1000e: fix cyclic resets at link up with active tx" (Oleksandr Natalenko) [1747869] - [mm] mm/zsmalloc.c: fix build when CONFIG_COMPACTION=n (Rafael Aquini) [1735181] - [mm] mm/zsmalloc.c: fix race condition in zs_destroy_pool (Rafael Aquini) [1735181] - [mm] mm/zsmalloc.c: migration can leave pages in ZS_EMPTY indefinitely (Rafael Aquini) [1735181] - [mm] mm, page_owner: handle THP splits correctly (Rafael Aquini) [1735181] - [mm] hugetlbfs: fix hugetlb page migration/fault race causing SIGBUS (Rafael Aquini) [1735181] - [mm] mm/usercopy: use memory range to be accessed for wraparound check (Rafael Aquini) [1735181] - [mm] mm/memcontrol.c: fix use after free in mem_cgroup_iter() (Rafael Aquini) [1735181] - [mm] mm/hmm: fix bad subpage pointer in try_to_unmap_one (Rafael Aquini) [1735181] - [mm] mm: vmscan: check if mem cgroup is disabled or not before calling memcg slab shrinker (Rafael Aquini) [1735181] - [mm] mm: revert "kmemleak: allow to coexist with fault injection" (Rafael Aquini) [1735181] - [mm] mm/vmalloc: sync unmappings in __purge_vmap_area_lazy() (Rafael Aquini) [1735181] - [mm] mm/vmalloc.c: add priority threshold to __purge_vmap_area_lazy() (Rafael Aquini) [1735181] - [mm] mm/cma.c: fail if fixed declaration can't be honored (Rafael Aquini) [1735181] - [mm] mm/mmu_notifier: use hlist_add_head_rcu() (Rafael Aquini) [1735181] - [mm] mm/mincore.c: fix race between swapoff and mincore (Rafael Aquini) [1735181] - [mm] mm, swap: fix race between swapoff and some swap operations (Rafael Aquini) [1735181] - [mm] mm/failslab.c: by default, do not fail allocations with direct reclaim only (Rafael Aquini) [1735181] - [mm] mm: vmscan: scan anonymous pages on file refaults (Rafael Aquini) [1735181] - [mm] mm/vmscan.c: prevent useless kswapd loops (Rafael Aquini) [1735181] - [mm] mm/page_idle.c: fix oops because end_pfn is larger than max_pfn (Rafael Aquini) [1760459 1735181] - [mm] mm/mempolicy.c: fix an incorrect rebind node in mpol_rebind_nodemask (Rafael Aquini) [1735181] - [mm] mm/vmscan.c: fix trying to reclaim unevictable LRU page (Rafael Aquini) [1735181] - [mm] mm/mlock.c: change count_mm_mlocked_page_nr return type (Rafael Aquini) [1735181] - [mm] mm/mlock.c: mlockall error for flag MCL_ONFAULT (Rafael Aquini) [1735181] - [mm] mm/list_lru.c: fix memory leak in __memcg_init_list_lru_node (Rafael Aquini) [1735181] - [mm] memcg: make it work on sparse non-0-node systems (Rafael Aquini) [1735181] - [mm] prctl_set_mm: downgrade mmap_sem to read lock (Rafael Aquini) [1735181] - [mm] mm/debug.c: fix __dump_page when mapping->host is not set (Rafael Aquini) [1735181] - [mm] mm/debug.c: fix __dump_page() for poisoned pages (Rafael Aquini) [1735181] - [mm] mm: update references to page _refcount (Rafael Aquini) [1735181] - [mm] mm: lower the printk loglevel for __dump_page messages (Rafael Aquini) [1735181] - [mm] mm: print more information about mapping in __dump_page (Rafael Aquini) [1735181] - [mm] hugetlb: use same fault hash key for shared and private mappings (Rafael Aquini) [1735181] - [mm] mm/hugetlb.c: don't put_page in lock of hugetlb_lock (Rafael Aquini) [1735181] - [mm] mm: fix inactive list balancing between NUMA nodes and cgroups (Rafael Aquini) [1735181] - [mm] mm/migrate.c: add missing flush_dcache_page for non-mapped page migrate (Rafael Aquini) [1735181] - [mm] mm: mempolicy: make mbind() return -EIO when MPOL_MF_STRICT is specified (Rafael Aquini) [1734286 1735181] - [mm] mm/hotplug: fix offline undo_isolate_page_range() (Rafael Aquini) [1735181] - [mm] mm/sparse: fix a bad comparison (Rafael Aquini) [1735181] - [mm] mm, swap: bounds check swap_info array accesses to avoid NULL derefs (Rafael Aquini) [1735181] - [mm] mm/vmalloc.c: don't dereference possible NULL pointer in __vunmap() (Rafael Aquini) [1735181] - [mm] mm: hwpoison: fix thp split handing in soft_offline_in_use_page() (Rafael Aquini) [1735181] - [mm] hugetlbfs: fix races and page leaks during migration (Rafael Aquini) [1735181] - [mm] tmpfs: fix uninitialized return value in shmem_link (Rafael Aquini) [1735181] - [mm] tmpfs: fix link accounting when a tmpfile is linked in (Rafael Aquini) [1735181] - [mm] mm: migrate: don't rely on __PageMovable() of newpage after unlocking it (Rafael Aquini) [1735181] - [mm] oom, oom_reaper: do not enqueue same task twice (Rafael Aquini) [1735181] - [mm] mm: page_mapped: don't assume compound page is huge or THP (Rafael Aquini) [1735181] - [mm] mm, memcg: fix reclaim deadlock with writeback (Rafael Aquini) [1735181] - [mm] mm, swap: fix swapoff with KSM pages (Rafael Aquini) [1735181] - [mm] mm/huge_memory: fix lockdep complaint on 32-bit i_size_read() (Rafael Aquini) [1735181] - [mm] mm/huge_memory: splitting set mapping+index before unfreeze (Rafael Aquini) [1735181] - [mm] mm/huge_memory: rename freeze_page() to unmap_page() (Rafael Aquini) [1735181] - [mm] mm/page_alloc.c: fix calculation of pgdat->nr_zones (Rafael Aquini) [1735181] - [mm] mm: use swp_offset as key in shmem_replace_page() (Rafael Aquini) [1735181] - [mm] mm: cleancache: fix corruption on missed inode invalidation (Rafael Aquini) [1735181] - [mm] mm/vmstat.c: fix NUMA statistics updates (Rafael Aquini) [1735181] - [mm] mm, swap: make CONFIG_THP_SWAP depend on CONFIG_SWAP (Rafael Aquini) [1735181] - [mm] ARM: 8820/1: mm: Stop printing the virtual memory layout (Rafael Aquini) [1655192] - [netdrv] net: dsa: bcm_sf2: Remove print of base address (Rafael Aquini) [1655192] - [netdrv] net: systemport: Remove print of base address (Rafael Aquini) [1655192] - [netdrv] net: phy: mdio-bcm-unimac: Remove print of base address (Rafael Aquini) [1655192] - [x86] x86/mm: Don't leak kernel addresses (Rafael Aquini) [1655192] - [x86] x86/realmode: Make set_real_mode_mem() static inline (Rafael Aquini) [1655192] - [x86] x86/realmode: Don't leak the trampoline kernel address (Rafael Aquini) [1655192] - [arm64] arm64/vdso: don't leak kernel addresses (Rafael Aquini) [1655192] - [powerpc] powerpc/traps: Fix the message printed when stack overflows (Rafael Aquini) [1655192] - [kernel] kdb: print real address of pointers instead of hashed addresses (Rafael Aquini) [1655192] - [kernel] kdb: use correct pointer when 'btc' calls 'btt' (Rafael Aquini) [1655192]- [fs] signal: Allow cifs and drbd to receive their terminating signals (Leif Sahlberg) [1757670] - [fs] smb3: fix unmount hang in open_shroot (Leif Sahlberg) [1757670] - [fs] cifs: update internal module number (Leif Sahlberg) [1757670] - [fs] cifs: replace various strncpy with strscpy and similar (Leif Sahlberg) [1757670] - [fs] cifs: Use kzfree() to zero out the password (Leif Sahlberg) [1757670] - [fs] cifs: set domainName when a domain-key is used in multiuser (Leif Sahlberg) [1757670] - [fs] SMB3: Kernel oops mounting a encryptData share with CONFIG_DEBUG_VIRTUAL (Leif Sahlberg) [1757670] - [fs] smb3: send CAP_DFS capability during session setup (Leif Sahlberg) [1757670] - [fs] SMB3: Fix potential memory leak when processing compound chain (Leif Sahlberg) [1757670] - [fs] SMB3: Fix deadlock in validate negotiate hits reconnect (Leif Sahlberg) [1757670] - [fs] cifs: fix rmmod regression in cifs.ko caused by force_sig changes (Leif Sahlberg) [1757670] - [fs] cifs: update internal module number (Leif Sahlberg) [1757670] - [fs] cifs: flush before set-info if we have writeable handles (Leif Sahlberg) [1757670] - [fs] smb3: optimize open to not send query file internal info (Leif Sahlberg) [1757670] - [fs] CIFS: fix deadlock in cached root handling (Leif Sahlberg) [1757670] - [fs] cifs: fix crash in cifs_dfs_do_automount (Leif Sahlberg) [1757670] - [fs] cifs: fix parsing of symbolic link error response (Leif Sahlberg) [1757670] - [fs] cifs: refactor and clean up arguments in the reparse point parsing (Leif Sahlberg) [1757670] - [fs] SMB3: query inode number on open via create context (Leif Sahlberg) [1757670] - [fs] smb3: Send netname context during negotiate protocol (Leif Sahlberg) [1757670] - [fs] smb3: do not send compression info by default (Leif Sahlberg) [1757670] - [fs] smb3: add new mount option to retrieve mode from special ACE (Leif Sahlberg) [1757670] - [fs] smb3: Allow query of symlinks stored as reparse points (Leif Sahlberg) [1757670] - [fs] cifs: Fix a race condition with cifs_echo_request (Leif Sahlberg) [1757670] - [fs] cifs: always add credits back for unsolicited PDUs (Leif Sahlberg) [1757670] - [fs] fs: cifs: cifsssmb: Change return type of convert_ace_to_cifs_ace (Leif Sahlberg) [1757670] - [fs] add some missing definitions (Leif Sahlberg) [1757670] - [fs] cifs: fix typo in debug message with struct field ia_valid (Leif Sahlberg) [1757670] - [fs] smb3: minor cleanup of compound_send_recv (Leif Sahlberg) [1757670] - [fs] CIFS: Fix module dependency (Leif Sahlberg) [1757670] - [fs] cifs: simplify code by removing CONFIG_CIFS_ACL ifdef (Leif Sahlberg) [1757670] - [fs] cifs: Fix check for matching with existing mount (Leif Sahlberg) [1757670] - [fs] cifs: Properly handle auto disabling of serverino option (Leif Sahlberg) [1757670] - [fs] smb3: if max_credits is specified then display it in /proc/mounts (Leif Sahlberg) [1757670] - [fs] Fix match_server check to allow for auto dialect negotiate (Leif Sahlberg) [1757670] - [fs] cifs: add missing GCM module dependency (Leif Sahlberg) [1757670] - [fs] SMB3.1.1: Add GCM crypto to the encrypt and decrypt functions (Leif Sahlberg) [1757670] - [fs] SMB3: Add SMB3.1.1 GCM to negotiated crypto algorigthms (Leif Sahlberg) [1757670] - [fs] fs: cifs: Drop unlikely before IS_ERR(_OR_NULL) (Leif Sahlberg) [1757670] - [fs] cifs: Use kmemdup in SMB2_ioctl_init() (Leif Sahlberg) [1757670] - [fs] SMB3: retry on STATUS_INSUFFICIENT_RESOURCES instead of failing write (Leif Sahlberg) [1757670] - [fs] cifs: fix panic in smb2_reconnect (Leif Sahlberg) [1757670] - [fs] CIFS: cifs_read_allocate_pages: don't iterate through whole page array on ENOMEM (Leif Sahlberg) [1757670] - [fs] dfs_cache: fix a wrong use of kfree in flush_cache_ent() (Leif Sahlberg) [1757670] - [fs] fs/cifs/smb2pdu.c: fix buffer free in SMB2_ioctl_free (Leif Sahlberg) [1757670] - [fs] cifs: fix memory leak of pneg_inbuf on -EOPNOTSUPP ioctl case (Leif Sahlberg) [1757670] - [fs] cifs: add support for SEEK_DATA and SEEK_HOLE (Leif Sahlberg) [1757670] - [fs] cifs: Allocate memory for all iovs in smb2_ioctl (Leif Sahlberg) [1757670] - [fs] cifs: Don't match port on SMBDirect transport (Leif Sahlberg) [1757670] - [fs] cifs:smbd Use the correct DMA direction when sending data (Leif Sahlberg) [1757670] - [fs] cifs:smbd When reconnecting to server, call smbd_destroy() after all MIDs have been called (Leif Sahlberg) [1757670] - [fs] smb3: trivial cleanup to smb2ops.c (Leif Sahlberg) [1757670] - [fs] cifs: cleanup smb2ops.c and normalize strings (Leif Sahlberg) [1757670] - [fs] smb3: display session id in debug data (Leif Sahlberg) [1757670] - [fs] cifs: update module internal version number (Leif Sahlberg) [1757670] - [fs] cifs: fix crash querying symlinks stored as reparse-points (Leif Sahlberg) [1757670] - [fs] SMB3: Clean up query symlink when reparse point (Leif Sahlberg) [1757670] - [fs] cifs: fix strcat buffer overflow and reduce raciness in smb21_set_oplock_level() (Leif Sahlberg) [1757670] - [fs] Negotiate and save preferred compression algorithms (Leif Sahlberg) [1757670] - [fs] cifs: rename and clarify CIFS_ASYNC_OP and CIFS_NO_RESP (Leif Sahlberg) [1757670] - [fs] smb3: Add protocol structs for change notify support (Leif Sahlberg) [1757670] - [fs] cifs: fix smb3_zero_range for Azure (Leif Sahlberg) [1757670] - [fs] cifs: zero-range does not require the file is sparse (Leif Sahlberg) [1757670] - [fs] Add new flag on SMB3.1.1 read (Leif Sahlberg) [1757670] - [fs] cifs: add fiemap support (Leif Sahlberg) [1757670] - [fs] SMB3: Add defines for new negotiate contexts (Leif Sahlberg) [1757670] - [fs] cifs: fix bi-directional fsctl passthrough calls (Leif Sahlberg) [1757670] - [fs] cifs: smbd: take an array of reqeusts when sending upper layer data (Leif Sahlberg) [1757670] - [fs] SMB3: Add handling for different FSCTL access flags (Leif Sahlberg) [1757670] - [fs] cifs: Add support for FSCTL passthrough that write data to the server (Leif Sahlberg) [1757670] - [fs] cifs: remove superfluous inode_lock in cifs_{strict_}fsync (Leif Sahlberg) [1757670] - [fs] cifs: Call MID callback before destroying transport (Leif Sahlberg) [1757670] - [fs] smbd: Make upper layer decide when to destroy the transport (Leif Sahlberg) [1757670] - [fs] SMB3: update comment to clarify enumerating snapshots (Leif Sahlberg) [1757670] - [fs] CIFS: check CIFS_MOUNT_NO_DFS when trying to reuse existing sb (Leif Sahlberg) [1757670] - [fs] CIFS: Show locallease in /proc/mounts for cifs shares mounted with locallease feature. (Leif Sahlberg) [1757670] - [fs] cifs: Fix DFS cache refresher for DFS links (Leif Sahlberg) [1757670] - [fs] cifs: don't use __constant_cpu_to_le32() (Leif Sahlberg) [1757670] - [fs] SMB3: Track total time spent on roundtrips for each SMB3 command (Leif Sahlberg) [1757670] - [fs] cifs: use the right include for signal_pending() (Leif Sahlberg) [1757670] - [fs] CIFS: Mask off signals when sending SMB packets (Leif Sahlberg) [1757670] - [infiniband] RDMA/umem: Revert broken 'off by one' fix (Kamal Heib) [1720888] - [infiniband] RDMA/umem: minor bug fix in error handling path (Kamal Heib) [1720888] - [infiniband] RDMA/uverbs: Don't do double free of allocated PD (Kamal Heib) [1720888] - [infiniband] RDMA: Handle ucontext allocations by IB/core (Kamal Heib) [1720888] - [infiniband] cross-tree: phase out dma_zalloc_coherent() (Kamal Heib) [1720888] - [infiniband] RDMA/core: Fix a WARN() message (Kamal Heib) [1720888] - [infiniband] RDMA/uverbs: Store PR pointer before it is overwritten (Kamal Heib) [1720888] - [infiniband] RDMA/core: Cosmetic change - move member initialization to correct block (Kamal Heib) [1720888] - [infiniband] rdma_rxe: Use netlink messages to add/delete links (Kamal Heib) [1720888] - [infiniband] RDMA/core: Add RDMA_NLDEV_CMD_NEWLINK/DELLINK support (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Close a race after ib_register_device (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Add ib_device_get_by_name() and use it in rxe (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Use driver_unregister and new unregistration API (Kamal Heib) [1720888] - [infiniband] RDMA/device: Provide APIs from the core code to help unregistration (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Use ib_device_get_by_netdev() instead of open coding (Kamal Heib) [1720888] - [infiniband] RDMA/device: Add ib_device_get_by_netdev() (Kamal Heib) [1720888] - [infiniband] RDMA/device: Add ib_device_set_netdev() as an alternative to get_netdev (Kamal Heib) [1720888] - [infiniband] RDMA/cache: Move the cache per-port data into the main ib_port_data (Kamal Heib) [1720888] - [infiniband] RDMA/device: Consolidate ib_device per_port data into one place (Kamal Heib) [1720888] - [infiniband] RDMA: Add and use rdma_for_each_port (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Don't expose number of not-visible entries (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Connect QP number to .doit callback (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Provide parent IDs for PD, MR and QP objects (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Share with user-space object IDs (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Prepare restrack_root to addition of extra fields per-type (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Hide restrack DB from IB/core (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Reduce scope of synchronization lock while updating DB (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Add resource tracker doit callback (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Translate from ID to restrack object (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Convert internal DB from hash to XArray (Kamal Heib) [1720888] - [infiniband] RDMA/core: Move device addition deletion to device.c (Kamal Heib) [1720888] - [infiniband] RDMA/core: Introduce and use ib_setup_port_attrs() (Kamal Heib) [1720888] - [infiniband] RDMA/core: Use simpler device_del() instead of device_unregister() (Kamal Heib) [1720888] - [infiniband] RDMA/nes: Remove useless usecnt variable and redundant memset (Kamal Heib) [1720888] - [infiniband] IB/{hw, sw}: Remove 'uobject->context' dependency in object creation APIs (Kamal Heib) [1720888] - [infiniband] RDMA/qedr: remove set but not used variable 'ib_ctx' (Kamal Heib) [1720888] - [infiniband] RDMA/mthca: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720888] - [infiniband] RDMA: Cleanup undesired pd->uobject usage (Kamal Heib) [1720888] - [infiniband] RDMA/mthca: Clear QP objects during their allocation (Kamal Heib) [1720888] - [include] IB/verbs: Add helper function rdma_udata_to_drv_context (Kamal Heib) [1720888] - [infiniband] IB/uverbs: Add ib_ucontext to uverbs_attr_bundle sent from ioctl and cmd flows (Kamal Heib) [1720888] - [infiniband] IB/ipoib: Use __func__ instead of function's name (Kamal Heib) [1720888] - [infiniband] RDMA/iwpm: Remove set but not used variable 'msg_seq' (Kamal Heib) [1720888] - [infiniband] RDMA/nes: Use for_each_sg_dma_page iterator for umem SGL (Kamal Heib) [1720888] - [net] xprtrdma: Check inline size before providing a Write chunk (Kamal Heib) [1720888] - [infiniband] RDMA/ocrdma: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720888] - [infiniband] RDMA/vmw_pvrdma: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720888] - [infiniband] RDMA/devices: Re-organize device.c locking (Kamal Heib) [1720888] - [infiniband] RDMA/devices: Use xarray to store the client_data (Kamal Heib) [1720888] - [infiniband] RDMA/devices: Use xarray to store the clients (Kamal Heib) [1720888] - [infiniband] RDMA/device: Use an ida instead of a free page in alloc_name (Kamal Heib) [1720888] - [infiniband] RDMA/device: Get rid of reg_state (Kamal Heib) [1720888] - [infiniband] RDMA/device: Check that the rename is nop under the lock (Kamal Heib) [1720888] - [infiniband] RDMA: Handle PD allocations by IB/core (Kamal Heib) [1720888] - [infiniband] RDMA/hns: fix spelling mistake "reseved" -> "reserved" (Kamal Heib) [1720888] - [infiniband] RDMA/core: Share driver structure size with core (Kamal Heib) [1720888] - [infiniband] IB/cma: Define option to set ack timeout and pack tos_set (Kamal Heib) [1720888] - [infiniband] drivers/IB,core: reduce scope of mmap_sem (Kamal Heib) [1720888] - [infiniband] drivers/IB,usnic: reduce scope of mmap_sem (Kamal Heib) [1720888] - [net] svcrdma: Remove syslog warnings in work completion handlers (Kamal Heib) [1720888] - [net] svcrdma: Squelch compiler warning when SUNRPC_DEBUG is disabled (Kamal Heib) [1720888] - [net] svcrdma: Use struct_size() in kmalloc() (Kamal Heib) [1720888] - [infiniband] RDMA/iwpm: move kdoc comments to functions (Kamal Heib) [1720888] - [infiniband] RDMA/cma: Remove CM_ID statistics provided by rdma-cm module (Kamal Heib) [1720888] - [infiniband] scsi: RDMA/srpt: Rework I/O context allocation (Kamal Heib) [1720888] - [infiniband] scsi: RDMA/srpt: Fix handling of command / TMF submission failure (Kamal Heib) [1720888] - [infiniband] RDMA/IWPM: Support no port mapping requirements (Kamal Heib) [1720888] - [infiniband] RDMA/IWPM: refactor the IWPM message attribute names (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Improve loopback marking (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Move rxe_init_av() to rxe_av.c (Kamal Heib) [1720888] - [infiniband] IB/core: Remove ib_sg_dma_address() and ib_sg_dma_len() (Kamal Heib) [1720888] - [infiniband] IB/uverbs: Expose XRC ODP device capabilities (Kamal Heib) [1720888] - [include] IB/core: Allocate a bit for SRQ ODP support (Kamal Heib) [1720888] - [infiniband] RDMA/core: Use the ops infrastructure to keep all callbacks in one place (Kamal Heib) [1720888] - [infiniband] RDMA/cxgb4: Sort SRQ ops alphabetically (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Refactor user/kernel restrack additions (Kamal Heib) [1720888] - [infiniband] RDMA/core: Simplify restrack interface (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Prepare CAP_NET_ADMIN checks for .doit callbacks (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Factor out the PID namespace check (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Dynamically generate restrack dumpit callbacks (Kamal Heib) [1720888] - [infiniband] IB/usnic: Remove stub functions (Kamal Heib) [1720888] - [infiniband] RDMA: Add indication for in kernel API support to IB device (Kamal Heib) [1720888] - [infiniband] IB/mlx5: Introduce async DEVX obj query API (Kamal Heib) [1720888] - [infiniband] IB/mlx5: Introduce MLX5_IB_OBJECT_DEVX_ASYNC_CMD_FD (Kamal Heib) [1720888] - [infiniband] infiniband: prefix header search paths with $(srctree)/ (Kamal Heib) [1720888] - [infiniband] infiniband: remove unneeded header search paths (Kamal Heib) [1720888] - [infiniband] infiniband: ipoib: no need to check return value of debugfs_create functions (Kamal Heib) [1720888] - [infiniband] infiniband: usnic: no need to check return value of debugfs_create functions (Kamal Heib) [1720888] - [infiniband] infiniband: ocrdma: no need to check return value of debugfs_create functions (Kamal Heib) [1720888] - [infiniband] RDMA/ocrdma: Use PCI-ID as an identification in debugfs (Kamal Heib) [1720888] - [infiniband] IB/umad: Do not check status of nonseekable_open() (Kamal Heib) [1720888] - [infiniband] IB/umad: Avoid additional device reference during open()/close() (Kamal Heib) [1720888] - [infiniband] IB/rxe: Remove unnecessary rxe variable (Kamal Heib) [1720888] - [infiniband] IB/core: Simplify rdma cgroup registration (Kamal Heib) [1720888] - [infiniband] RDMA/device: Use __ib_device_get_by_name() in ib_device_rename() (Kamal Heib) [1720888] - [infiniband] RDMA: Rename port_callback to init_port (Kamal Heib) [1720888] - [infiniband] RDMA: Clear CTX objects during their allocation (Kamal Heib) [1720888] - [infiniband] RDMA: Clear PD objects during their allocation (Kamal Heib) [1720888] - [infiniband] RDMA/ocrdma: Fix out of bounds index check in query pkey (Kamal Heib) [1720888] - [infiniband] IB/{core, hw}: Have ib_umem_get extract the ib_ucontext from ib_udata (Kamal Heib) [1720888] - [infiniband] IB/{core, uverbs}: Move ib_umem_xxx functions from ib_core to ib_uverbs (Kamal Heib) [1720888] - [infiniband] RDMA/core: Don't depend device ODP capabilities on kconfig option (Kamal Heib) [1720888] - [infiniband] IB/srp: Use struct_size() in kzalloc() (Kamal Heib) [1720888] - [infiniband] IB/core: Use struct_size() in kzalloc() (Kamal Heib) [1720888] - [infiniband] IB/usnic: Use struct_size() in kmalloc() (Kamal Heib) [1720888] - [infiniband] IB/cm: Use struct_size() in kmalloc() (Kamal Heib) [1720888] - [mm] mm: introduce put_user_page*(), placeholder versions (Rafael Aquini) [1746371] - [mm] mm/gup: add FOLL_LONGTERM capability to GUP fast (Rafael Aquini) [1746371] - [mm] mm/gup: change GUP fast to use flags rather than a write 'bool' (Rafael Aquini) [1746371] - [mm] mm/gup: change write parameter to flags in fast walk (Rafael Aquini) [1746371] - [mm] mm/gup: replace get_user_pages_longterm() with FOLL_LONGTERM (Rafael Aquini) [1746371] - [s390] s390/mm: fix pxd_bad with folded page tables (Rafael Aquini) [1746371] - [s390] s390/mm: fix dump_pagetables top level page table walking (Rafael Aquini) [1746371] - [s390] s390/mm: convert to the generic get_user_pages_fast code (Rafael Aquini) [1746371] - [s390] s390/mm: make the pxd_offset functions more robust (Rafael Aquini) [1746371] - [mm] mm/gup: fix gup_pmd_range() for dax (Rafael Aquini) [1746371] - [mm] mm/gup: remove the 'write' parameter from gup_fast_permitted() (Rafael Aquini) [1746371] - [mm] mm/gup: fix follow_page_mask() kerneldoc comment (Rafael Aquini) [1746371] - [mm] mm/gup: fix __get_user_pages_fast() comment (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: prevent integer overflow in ioctl (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: add additional pinning methods (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: time put_page() (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: fix unsigned comparison to zero in __gup_benchmark_ioctl (Rafael Aquini) [1746371] - [mm] mm: remove caller signal_pending branch predictions (Rafael Aquini) [1746371] - [mm] mm: remove unnecessary local variable addr in __get_user_pages_fast() (Rafael Aquini) [1746371] - [mm] mm: change return type int to vm_fault_t for fault handlers (Rafael Aquini) [1746371] - [mm] mm: make mm->pinned_vm an atomic64 counter (Rafael Aquini) [1746371]- [kernel] sched/core: Schedule new worker even if PI-blocked (Waiman Long) [1758629] - [char] random: add a spinlock_t to struct batched_entropy (Waiman Long) [1758629] - [crypto] crypto: chacha20 - Fix chacha20_block() keystream alignment (again) (Waiman Long) [1758629] - [fs] locking/percpu-rwsem: Remove preempt_disable variants (Waiman Long) [1758629] - [x86] x86/tsc: Add option to disable tsc clocksource watchdog (Waiman Long) [1758629] - [x86] x86/irq: Handle spurious interrupt after shutdown gracefully (Waiman Long) [1758629] - [x86] x86/ioapic: Implement irq_get_irqchip_state() callback (Waiman Long) [1758629] - [kernel] genirq: Add optional hardware synchronization for shutdown (Waiman Long) [1758629] - [kernel] genirq: Fix misleading synchronize_irq() documentation (Waiman Long) [1758629] - [kernel] genirq: Delay deactivation in free_irq() (Waiman Long) [1758629] - [kernel] genirq: Remove redundant NULL pointer check in __free_irq() (Waiman Long) [1758629] - [kernel] genirq: Synchronize only with single thread on free_irq() (Waiman Long) [1758629] - [kernel] genirq: Update code comments wrt recycled thread_mask (Waiman Long) [1758629] - [usb] usb: core: remove flags variable in __usb_hcd_giveback_urb() (Waiman Long) [1758629] - [usb] usb: core: remove local_irq_save() around ->complete() handler (Waiman Long) [1758629] - [media] media: tm6000: use irqsave() in USB's complete callback (Waiman Long) [1758629] - [media] media: em28xx-audio: use irqsave() in USB's complete callback (Waiman Long) [1758629] - [x86] x86/mm/cpa: Optimize __cpa_flush_range() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Factor common code between cpa_flush_*() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Move CLFLUSH test into cpa_flush_array() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Move CLFLUSH test into cpa_flush_range() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Use flush_tlb_kernel_range() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Unconditionally avoid WBINDV when we can (Waiman Long) [1758629] - [x86] x86/mm/cpa: Move flush_tlb_all() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Use flush_tlb_all() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Avoid the 4k pages check completely (Waiman Long) [1758629] - [x86] x86/mm/cpa: Do the range check early (Waiman Long) [1758629] - [x86] x86/mm/cpa: Optimize same protection check (Waiman Long) [1758629] - [x86] x86/mm/cpa: Add sanity check for existing mappings (Waiman Long) [1758629] - [x86] x86/mm/cpa: Avoid static protection checks on unmap (Waiman Long) [1758629] - [x86] x86/mm/cpa: Add large page preservation statistics (Waiman Long) [1758629] - [x86] x86/mm/cpa: Add debug mechanism (Waiman Long) [1758629] - [x86] x86/mm/cpa: Allow range check for static protections (Waiman Long) [1758629] - [x86] x86/mm/cpa: Rework static_protections() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Split, rename and clean up try_preserve_large_page() (Waiman Long) [1758629] - [x86] x86/mm/init32: Mark text and rodata RO in one go (Waiman Long) [1758629] - [mm] mm/kasan/quarantine.c: make quarantine_lock a raw_spinlock_t (Waiman Long) [1758629] - [mm] mm/list_lru.c: fold __list_lru_count_one() into its caller (Waiman Long) [1758629] - [mm] mm: workingset: make shadow_lru_isolate() use locking suffix (Waiman Long) [1758629] - [mm] mm: workingset: remove local_irq_disable() from count_shadow_nodes() (Waiman Long) [1758629] - [iommu] iommu/amd: Remove redundant WARN_ON() (Waiman Long) [1758629] - [mm] mm/list_lru: introduce list_lru_shrink_walk_irq() (Waiman Long) [1758629] - [mm] mm/list_lru.c: pass struct list_lru_node* as an argument to __list_lru_walk_one() (Waiman Long) [1758629] - [mm] mm/list_lru.c: move locking from __list_lru_walk_one() to its caller (Waiman Long) [1758629] - [mm] mm/list_lru.c: use list_lru_walk_one() in list_lru_walk_node() (Waiman Long) [1758629] - [kernel] userns: use irqsave variant of refcount_dec_and_lock() (Waiman Long) [1758629] - [kernel] userns: use refcount_t for reference counting instead atomic_t (Waiman Long) [1758629] - [kernel] bdi: use irqsave variant of refcount_dec_and_lock() (Waiman Long) [1758629] - [mm] bdi: use refcount_t for reference counting instead atomic_t (Waiman Long) [1758629] - [char] random: remove preempt disabled region (Waiman Long) [1758629] - [misc] ocxl: Update for AFU descriptor template version 1.1 (Steve Best) [1751207] - [misc] ocxl: Make ocxl_remove() static (Steve Best) [1751207] - [misc] ocxl: do not use C++ style comments in uapi header (Steve Best) [1751207] - [misc] ocxl: Allow contexts to be attached with a NULL mm (Steve Best) [1751207] - [misc] ocxl: Fix return value check in afu_ioctl() (Steve Best) [1751207] - [misc] ocxl: Provide global MMIO accessors for external drivers (Steve Best) [1751207] - [misc] ocxl: move event_fd handling to frontend (Steve Best) [1751207] - [misc] ocxl: afu_irq only deals with IRQ IDs, not offsets (Steve Best) [1751207] - [misc] ocxl: Allow external drivers to use OpenCAPI contexts (Steve Best) [1751207] - [misc] ocxl: Create a clear delineation between ocxl backend & frontend (Steve Best) [1751207] - [misc] ocxl: Don't pass pci_dev around (Steve Best) [1751207] - [misc] ocxl: Split pci.c (Steve Best) [1751207] - [misc] ocxl: Remove some unused exported symbols (Steve Best) [1751207] - [misc] ocxl: Remove superfluous 'extern' from headers (Steve Best) [1751207] - [misc] ocxl: read_pasid never returns an error, so make it void (Steve Best) [1751207] - [misc] ocxl: Rename struct link to ocxl_link (Steve Best) [1751207] - [misc] ocxl: remove set but not used variables 'tid' and 'lpid' (Steve Best) [1751207] - [misc] ocxl: Fix endiannes bug in read_afu_name() (Steve Best) [1751207] - [misc] ocxl/afu_irq: Don't include (Steve Best) [1751207] - [misc] ocxl: Clarify error path in setup_xsl_irq() (Steve Best) [1751207] - [misc] ocxl: Fix endiannes bug in ocxl_link_update_pe() (Steve Best) [1751207] - [misc] ocxl: Fix access to the AFU Descriptor Data (Steve Best) [1751207] - [netdrv] gve: account for lack of netdev_xmit_more() definition (RHEL-only) (John Linville) [1728864] - [netdrv] gve: Copy and paste bug in gve_get_stats() (John Linville) [1728864] - [netdrv] gve: Fix case where desc_cnt and data_cnt can get out of sync (John Linville) [1728864] - [netdrv] gve: replace kfree with kvfree (John Linville) [1728864] - [netdrv] gve: Remove the exporting of gve_probe (John Linville) [1728864] - [netdrv] gve: fix unused variable/label warnings (John Linville) [1728864] - [netdrv] gve: Fix error return code in gve_alloc_qpls() (John Linville) [1728864] - [netdrv] gve: fix -ENOMEM null check on a page allocation (John Linville) [1728864] - [netdrv] gve: Fix u64_stats_sync to initialize start (John Linville) [1728864] - [netdrv] gve: Add ethtool support (John Linville) [1728864] - [netdrv] gve: Add workqueue and reset support (John Linville) [1728864] - [netdrv] gve: Add transmit and receive support (John Linville) [1728864] - [netdrv] gve: Add basic driver framework for Compute Engine Virtual NIC (John Linville) [1728864] - [mfd] mfd: intel-lpss: Add Intel Comet Lake PCI IDs (David Arcari) [1761586] - [scsi] scsi: core: save/restore command resid for error handling (Ewan Milne) [1760503] - [scsi] scsi: sd: Ignore a failure to sync cache due to lack of authorization (Ewan Milne) [1760503] - [scsi] scsi: core: Add sysfs attributes for VPD pages 0h and 89h (Ewan Milne) [1760503] - [scsi] scsi: core: Log SCSI command age with errors (Ewan Milne) [1760503] - [scsi] scsi: scsi_dh_rdac: zero cdb in send_mode_select() (Ewan Milne) [1760503] - [scsi] scsi: sd: Improve unaligned completion resid message (Ewan Milne) [1760503] - [scsi] scsi: core: Reduce memory required for SCSI logging (Ewan Milne) [1760503] - [scsi] scsi: core: Complain if scsi_target_block() fails (Ewan Milne) [1760503] - [scsi] scsi: core: Make scsi_internal_device_unblock_nowait() reject invalid new_state (Ewan Milne) [1760503] - [scsi] scsi: scsi_debugfs: Use for_each_set_bit to simplify code (Ewan Milne) [1760503] - [scsi] scsi: scsi_dh_alua: always use a 2 second delay before retrying RTPG (Ewan Milne) [1760503] - [scsi] scsi: sd_zbc: Fix compilation warning (Ewan Milne) [1760503] - [scsi] scsi: devinfo: BLIST_TRY_VPD_PAGES for SanDisk Cruzer Blade (Ewan Milne) [1760503] - [scsi] scsi: core: use scmd_printk() to print which command timed out (Ewan Milne) [1760503] - [scsi] scsi: Avoid that .queuecommand() gets called for a blocked SCSI device (Ewan Milne) [1760503] - [scsi] scsi: core: don't preallocate small SGL in case of NO_SG_CHAIN (Ewan Milne) [1760503] - [scsi] scsi: scsi_dh_alua: Fix possible null-ptr-deref (Ewan Milne) [1760503] - [scsi] scsi: st: add a SPDX tag to st.c (Ewan Milne) [1760503] - [scsi] scsi: sr: add a SPDX tag to sr.c (Ewan Milne) [1760503] - [scsi] scsi: sg: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: sd: switch remaining files to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: sd: add a SPDX tag to sd.c (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_srp: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_spi: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_sas: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_iscsi: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_fc: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: core: switch the remaining scsi midlayer files to use SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: core: add SPDX tags to scsi midlayer files missing licensing information (Ewan Milne) [1760503] - [scsi] Revert "scsi: sd: Keep disk read-only when re-reading partition" (Ewan Milne) [1760503] - [scsi] scsi: core: set result when the command cannot be dispatched (Ewan Milne) [1760503] - [scsi] scsi: core: map PQ=1, PDT=other values to SCSI_SCAN_TARGET_PRESENT (Ewan Milne) [1760503] - [scsi] scsi: core: don't hold device refcount in IO path (Ewan Milne) [1760503] - [scsi] scsi: sd: Quiesce warning if device does not report optimal I/O size (Ewan Milne) [1760503] - [scsi] scsi: core: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Ewan Milne) [1760503] - [scsi] scsi: core: Avoid that a kernel warning appears during system resume (Ewan Milne) [1760503] - [scsi] scsi: core: Also call destroy_rcu_head() for passthrough requests (Ewan Milne) [1760503] - [scsi] scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c (Ewan Milne) [1760503] - [scsi] scsi: sd: Optimal I/O size should be a multiple of physical block size (Ewan Milne) [1760503] - [scsi] scsi: sd: Fix typo in sd_first_printk() (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: Implement support for write protect (Ewan Milne) [1760503] - [scsi] scsi: sd_zbc: Fix zone information messages (Ewan Milne) [1760503] - [scsi] scsi: sd: Improve sd_print_capacity() (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: fix write_same with virtual_gb problem (Ewan Milne) [1760503] - [scsi] scsi: sd: Protect against READ(6) or WRITE(6) with zero block transfer length (Ewan Milne) [1760503] - [scsi] scsi: core: Remove an atomic instruction from the hot path (Ewan Milne) [1760503] - [scsi] scsi: sd: Rename 'SCpnt' into 'cmd' (Ewan Milne) [1760503] - [scsi] scsi: sd: Clean up sd_setup_read_write_cmnd() (Ewan Milne) [1760503] - [scsi] scsi: sd: Create helper functions for read/write commands (Ewan Milne) [1760503] - [scsi] scsi: sd: Simplify misaligned I/O check (Ewan Milne) [1760503] - [scsi] scsi: sd: Be consistent about blocks vs. sectors (Ewan Milne) [1760503] - [scsi] scsi: sd: Remove a local variable (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: add cmd abort option to every_nth (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: skip long delays when ndelay small (Ewan Milne) [1760503] - [x86] efi/x86: Do not clean dummy variable in kexec path (Bhupesh Sharma) [1724436] - [scsi] scsi: csiostor: create per port irq affinity mask set (Jonathan Toppins) [1725816] - [pci] PCI: let pci_disable_link_state propagate errors (Myron Stowe) [1735834] - [scsi] scsi: scsi_transport_fc: Add FPIN fc event codes (Ewan Milne) [1755587] - [scsi] scsi: scsi_transport_fc: refactor event posting routines (Ewan Milne) [1755587] - [scsi] scsi: fc: add FPIN ELS definition (Ewan Milne) [1755587] - [scsi] scsi: lib/sg_pool.c: clear 'first_chunk' in case of no preallocation (Ewan Milne) [1747162] - [scsi] scsi: core: Run queue when state is set to running after being blocked (Ewan Milne) [1691599] - [scsi] scsi: sd: Fix a race between closing an sd device and sd I/O (Ewan Milne) [1689118] - [net] net/ibmvnic: Fix EOI when running in XIVE mode. (Steve Best) [1761378] - [powerpc] powerpc/mce: Fix SLB rebolting during MCE recovery path. (Desnes Augusto Nunes do Rosario) [1725842] - [powerpc] powerpc/pseries: hwpoison the pages upon hitting UE (Desnes Augusto Nunes do Rosario) [1725842] - [x86] perf/x86/amd: Change/fix NMI latency mitigation to use a timestamp (David Arcari) [1730134] - [arm64] arm64: entry: Remove unneeded need_resched() loop (Mark Langsdorf) [1737075] - [arm64] arm64: preempt: Fix big-endian when checking preempt count in assembly (Mark Langsdorf) [1737075] - [arm64] arm64: preempt: Provide our own implementation of asm/preempt.h (Mark Langsdorf) [1737075] - [include] preempt: Move PREEMPT_NEED_RESCHED definition into arch code (Mark Langsdorf) [1737075] - [x86] x86/intel_rdt: Ensure a CPU remains online for the region's pseudo-locking sequence (Alexander Beregalov) [1724902] - [kernel] perf/core: Add sanity check to deal with pinned event failure (Alexander Beregalov) [1724902] - [arm64] arm64/sve: Fix wrong free for task->thread.sve_state (Andrew Jones) [1756450] - [scsi] scsi: lpfc: Update lpfc version to 12.4.0.1 (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: cleanup: remove unused fcp_txcmlpq_cnt (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Complete removal of FCoE T10 PI support on SLI-4 adapters (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Update async event logging (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix list corruption detected in lpfc_put_sgl_per_hdwq (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix hdwq sgl locks and irq handling (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix spinlock_irq issues in lpfc_els_flush_cmd() (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix list corruption in lpfc_sli_get_iocbq (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix host hang at boot or slow boot (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix coverity errors on NULL pointer checks (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix NVMe ABTS in response to receiving an ABTS (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix discovery failures when target device connectivity bounces (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix GPF on scsi command completion (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix locking on mailbox command completion (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix device recovery errors after PLOGI failures (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix rpi release when deleting vport (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix NVME io abort failures causing hangs (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix miss of register read failure check (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix premature re-enabling of interrupts in lpfc_sli_host_down (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix pt2pt discovery on SLI3 HBAs (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix reset recovery paths that are not recovering (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Convert existing pf users to ps (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: fix 12.4.0.0 GPF at boot (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Remove bg debugfs buffers (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Resolve checker warning for lpfc_new_io_buf() (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Update lpfc version to 12.4.0.0 (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Merge per-protocol WQ/CQ pairs into single per-cpu pair (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add NVMe sequence level error recovery support (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Support dynamic unbounded SGL lists on G7 hardware. (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add MDS driver loopback diagnostics support (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add first and second level hardware revisions to sysfs reporting (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Migrate to px and pf in kernel print calls (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add simple unlikely optimizations to reduce NVME latency (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix coverity warnings (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix nvme first burst module parameter description (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix BlockGuard enablement on FCoE adapters (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix reported physical link speed on a disabled trunked link (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix Max Frame Size value shown in fdmishow output (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix upcall to bsg done in non-success cases (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix sli4 adapter initialization with MSI (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix nvme sg_seg_cnt display if HBA does not support NVME (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix nvme target mode ABTSing a received ABTS (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix hang when downloading fw on port enabled for nvme (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix too many sg segments spamming in kernel log (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix crash due to port reset racing vs adapter error handling (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix deadlock on host_lock during cable pulls (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix error in remote port address change (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix driver nvme rescan logging (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix sg_seg_cnt for HBAs that don't support NVME (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix propagation of devloss_tmo setting to nvme transport (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix loss of remote port after devloss due to lack of RPIs (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix devices that don't return after devloss followed by rediscovery (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix null ptr oops updating lpfc_devloss_tmo via sysfs attribute (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix FLOGI handling across multiple link up/down conditions (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix irq raising in lpfc_sli_hba_down (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix Oops in nvme_register with target logout/login (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix issuing init_vpi mbox on SLI-3 card (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix ADISC reception terminating login state if a NVME target (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix discovery when target has no GID_FT information (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix leak of ELS completions on adapter reset (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix failure to clear non-zero eq_delay after io rate reduction (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix crash on driver unload in wq free (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix ELS field alignments (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix PLOGI failure with high remoteport count (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: remove NULL check before some freeing functions (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: use spin_lock_irqsave in IRQ context (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: remove redundant code (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Remove unnecessary null check before kfree (Dick Kennedy) [1757574] - [scripts] scripts/spelling.txt: drop "sepc" from the misspelling list (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: reduce stack size with CONFIG_GCC_PLUGIN_STRUCTLEAK_VERBOSE (Dick Kennedy) [1757574] - [scsi] lpfc: add sysfs interface to post NVME RSCN (Dick Kennedy) [1757574] - [scsi] lpfc: add support for translating an RSCN rcv into a discovery rescan (Dick Kennedy) [1757574] - [scsi] lpfc: add support to generate RSCN events for nport (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: use sg helper to iterate over scatterlist (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Avoid unused function warnings (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Make some symbols static (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Remove set but not used variables 'qp' (Dick Kennedy) [1757574] - [lib] lib/vsprintf: Reinstate printing of legacy clock IDs (Prarit Bhargava) [1751075] - [lib] vsprintf: fix data type of variable in string_nocheck() (Prarit Bhargava) [1751075] - [scripts] kconfig: tests: fix recursive inclusion unit test (Prarit Bhargava) [1751075] - [kernel] printk: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Prarit Bhargava) [1751075] - [kernel] printk: Add SPDX license identifier for missed files (Prarit Bhargava) [1751075] - [kernel] printk: Add SPDX license identifier for more missed files (Prarit Bhargava) [1751075] - [kernel] panic: add an option to replay all the printk message in buffer (Prarit Bhargava) [1751075] - [kernel] panic: avoid the extra noise dmesg (Prarit Bhargava) [1751075] - [lib] vsprintf: Do not break early boot with probing addresses (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Make function pointer_string static (Prarit Bhargava) [1751075] - [lib] vsprintf: Limit the length of inlined error messages (Prarit Bhargava) [1751075] - [lib] vsprintf: Avoid confusion between invalid address and value (Prarit Bhargava) [1751075] - [lib] vsprintf: Prevent crash when dereferencing invalid pointers (Prarit Bhargava) [1751075] - [lib] vsprintf: Consolidate handling of unknown pointer specifiers (Prarit Bhargava) [1751075] - [lib] vsprintf: Factor out pO handler as kobject_string() (Prarit Bhargava) [1751075] - [lib] vsprintf: Factor out pV handler as va_format() (Prarit Bhargava) [1751075] - [lib] vsprintf: Factor out p[iI] handler as ip_addr_string() (Prarit Bhargava) [1751075] - [lib] vsprintf: Do not check address of well-known strings (Prarit Bhargava) [1751075] - [lib] vsprintf: Consistent pK handling for kptr_restrict == 0 (Prarit Bhargava) [1751075] - [lib] vsprintf: Shuffle restricted_pointer() (Prarit Bhargava) [1751075] - [kernel] printk: Tie printk_once / printk_deferred_once into .data.once for reset (Prarit Bhargava) [1751075] - [lib] lib: Use new kselftest header (Prarit Bhargava) [1751075] - [lib] lib/test_printf: Add empty module_exit function (Prarit Bhargava) [1751075] - [scripts] checkpatch: add pt as a valid vsprintf extension (Prarit Bhargava) [1751075] - [lib] lib/test_printf: Switch to bitmap_zalloc() (Prarit Bhargava) [1751075] - [lib] lib/vsprintf.c: move sizeof(struct printf_spec) next to its definition (Prarit Bhargava) [1751075] - [kernel] printk/docs: Add extra integer types to printk-formats (Prarit Bhargava) [1751075] - [kernel] printk: Remove no longer used LOG_PREFIX. (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Remove pCr remnant in comment (Prarit Bhargava) [1751075] - [kernel] printk: Pass caller information to log_store(). (Prarit Bhargava) [1751075] - [kernel] kernel/sysctl: add panic_print into sysctl (Prarit Bhargava) [1751075] - [kernel] panic: add options to print system info when panic happens (Prarit Bhargava) [1751075] - [include] include/linux/printk.h: drop silly "static inline asmlinkage" from dump_stack() (Prarit Bhargava) [1751075] - [kernel] printk: Add caller information to printk() output. (Prarit Bhargava) [1751075] - [kernel] printk: Remove print_prefix() calls with NULL buffer. (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Print time and date in human readable format via pt (Prarit Bhargava) [1751075] - [kernel] printk: fix printk_time race. (Prarit Bhargava) [1751075] - [kernel] printk: Make printk_emit() local function. (Prarit Bhargava) [1751075] - [documentation] doc: printk-formats: Remove bogus kobject references for device nodes (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Hash printed address for netdev bits fallback (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Hash legacy clock addresses (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Prepare for more general use of ptr_to_id() (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Make ptr argument conts in ptr_to_id() (Prarit Bhargava) [1751075] - [kernel] printk: fix integer overflow in setup_log_buf() (Prarit Bhargava) [1751075] - [kernel] printk: do not preliminary split up cont buffer (Prarit Bhargava) [1751075] - [kernel] printk: lock/unlock console only for new logbuf entries (Prarit Bhargava) [1751075] - [kernel] printk: keep kernel cont support always enabled (Prarit Bhargava) [1751075] - [kernel] printk: Give error on attempt to set log buffer length to over 2G (Prarit Bhargava) [1751075] - [kernel] printk: Add KBUILD_MODNAME and remove a redundant print prefix (Prarit Bhargava) [1751075] - [kernel] printk: Correct wrong casting (Prarit Bhargava) [1751075] - [kernel] printk: CON_PRINTBUFFER console registration is a bit racy (Prarit Bhargava) [1751075] - [kernel] printk: Do not miss new messages when replaying the log (Prarit Bhargava) [1751075] - [kernel] Revert "printk: make sure to print log on console." (Prarit Bhargava) [1751075] - [lib] vsprintf: print OF node name using full_name (Prarit Bhargava) [1751075] - [kernel] printk/tracing: Do not trace printk_nmi_enter() (Prarit Bhargava) [1751075] - [misc] notifier: Remove notifier header file wherever not used (Prarit Bhargava) [1751075] - [init] init: allow initcall tables to be emitted using relative references (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Do not handle pO[^F] as px (Prarit Bhargava) [1751075] - [kernel] console: Replace #if 0 with atomic var 'ignore_console_lock_warning' (Prarit Bhargava) [1751075] - [lib] vsprintf: Use hw RNG for ptr_key (Prarit Bhargava) [1751075] - [kernel] printk: Fix warning about unused suppress_message_printing (Prarit Bhargava) [1751075] - [char] random: Return nbytes filled from hw RNG (Prarit Bhargava) [1751075] - [char] random: Fix whitespace pre random-bytes work (Prarit Bhargava) [1751075] - [kernel] printk/nmi: Prevent deadlock when accessing the main log buffer in NMI (Prarit Bhargava) [1751075] - [kernel] printk: Create helper function to queue deferred console handling (Prarit Bhargava) [1751075] - [kernel] printk: Split the code for storing a message into the log buffer (Prarit Bhargava) [1751075] - [kernel] printk: Clean up syslog_print_all() (Prarit Bhargava) [1751075] - [kernel] printk: Export is_console_locked (Prarit Bhargava) [1751075] - [kernel] printk: Remove unnecessary kmalloc() from syslog during clear (Prarit Bhargava) [1751075] - [kernel] printk: Make CONSOLE_LOGLEVEL_QUIET configurable (Prarit Bhargava) [1751075] - [kernel] printk: make sure to print log on console. (Prarit Bhargava) [1751075] - [lib] lib/test_printf.c: accept "ptrval" as valid result for plain 'p' tests (Prarit Bhargava) [1751075] - [kernel] softirq: Remove tasklet_hrtimer (Prarit Bhargava) [1737073] - [include] list: add function list_rotate_to_front() (Prarit Bhargava) [1737073] - [clocksource] clocksource/drivers/tcb_clksrc: Rename the file for consistency (Prarit Bhargava) [1737073] - [clocksource] clocksource/drivers/tcb_clksrc: Move Kconfig option (Prarit Bhargava) [1737073] - [clocksource] clocksource/drivers/tcb_clksrc: Use tcb as sched_clock (Prarit Bhargava) [1737073] - [kernel] irq_work: Do not raise an IPI when queueing work on the local CPU (Prarit Bhargava) [1737073] - [tty] tty/sysrq: Convert show_lock to raw_spinlock_t (Prarit Bhargava) [1737073] - [net] xfrm: Replace hrtimer tasklet with softirq hrtimer (Prarit Bhargava) [1737073] - [netdrv] mac80211_hwsim: Replace hrtimer tasklet with softirq hrtimer (Prarit Bhargava) [1737073] - [kernel] kthread: Do not use TIMER_IRQSAFE (Prarit Bhargava) [1737073] - [kernel] kthread: Convert worker lock to raw spinlock (Prarit Bhargava) [1737073] - [netdrv] mac80211_hwsim: Timer should be initialized before device registered (Prarit Bhargava) [1737073] - [net] xfrm: use time64_t for in-kernel timestamps (Prarit Bhargava) [1737073] - [x86] x86/intel: Aggregate microserver naming (Prarit Bhargava) [1725644] - [x86] x86/intel: Aggregate big core graphics naming (Prarit Bhargava) [1725644] - [x86] x86/intel: Aggregate big core mobile naming (Prarit Bhargava) [1725644] - [x86] x86/intel: Aggregate big core client naming (Prarit Bhargava) [1725644] - [tools] turbostat: Replace GPLv2 boilerplate/reference with SPDX - rule 335 (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: update version number (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: rename has_hsw_msrs() (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Fix Haswell Core systems (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Add support for Hygon Fam 18h (Dhyana) RAPL (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Fix caller parameter of get_tdp_amd() (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Fix CPUC1 display value (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: do not enforce 1ms (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: read from pipes too (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Add Ice Lake NNPI support (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: add Jacobsville support (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: remove duplicate pc10 column (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: fix file descriptor leaks (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: fix leak of file descriptor on error return path (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: fix buffer overrun (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Make interval calculation per thread to reduce jitter (Prarit Bhargava) [1725644] - [tools] tools/power/x86: Enable compiler optimisations and Fortify by default (Prarit Bhargava) [1725644] - [x86] x86/cpu: Add Ice Lake NNPI to Intel family (Prarit Bhargava) [1725644]- [tools] perf tools: Fix segfault in cpu_cache_level__read() (Michael Petlan) [1761995] - [scsi] qla2xxx: Update driver version to 10.01.00.19.08.2-k (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix Nport ID display value (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix N2N link up fail (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix N2N link reset (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Optimize NPIV tear down process (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix stale mem access on driver unload (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix unbound sleep in fcport delete path. (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Silence fwdump template message (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix stale session (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix stuck login session (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix driver reload for ISP82xx (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix flash read for Qlogic ISPs (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix message indicating vectors used by driver (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: fix spelling mistake "initializatin" -> "initialization" (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a recently introduced kernel warning (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a NULL pointer dereference (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qla24xx_async_abort_cmd() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove two superfluous if-tests (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce qla2x00_els_dcmd2_free() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Inline the qla2x00_fcport_event_handler() function (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Report invalid mailbox status codes (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove superfluous sts_entry_* casts (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Let the compiler check the type of the SCSI command context pointer (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if sp->done() is not called from the completion path (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make sure that aborted commands are freed (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce qla2xxx_get_next_handle() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Modify NVMe include directives (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qlt_handle_abts_completion() more robust (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a race condition between aborting and completing a SCSI command (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce the function qla2xxx_init_sp() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Enable type checking for the SRB free and done callback functions (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Rework key encoding in qlt_find_host_by_d_id() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Set the responder mode if appropriate for ELS pass-through IOCBs (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make it explicit that ELS pass-through IOCBs use little endian (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Check secondary image if reading the primary image fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Change the return type of qla24xx_read_flash_data() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce the be_id_t and le_id_t data types for FC src/dst IDs (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if a soft reset fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use memcpy() and strlcpy() instead of strcpy() and strncpy() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Check the PCI info string output buffer size (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if waiting for pending commands times out (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare fourth qla2x00_set_model_info() argument const (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Always check the qla2x00_wait_for_hba_online() return value (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Suppress multiple Coverity complaint about out-of-bounds accesses (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Suppress a Coveritiy complaint about integer overflow (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove unreachable code from qla83xx_idc_lock() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix qla24xx_process_bidir_cmd() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify a debug statement (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove dead code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if parsing the version string fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if a mailbox command times out (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use strlcpy() instead of strncpy() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Do not corrupt vha->plogi_ack_list (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Report the firmware status code if a mailbox command fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix session lookup in qlt_abort_work() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qla24xx_abort_sp_done() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove two superfluous tests (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a superfluous pointer check (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qlt_lport_dump() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reduce the number of casts in GID list code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Verify locking assumptions at runtime (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Change data_dsd into an array (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare qla_tgt_cmd.cdb const (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reduce the scope of three local variables in qla2xxx_queuecommand() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Change the return type of qla2x00_update_ms_fdmi_iocb() into void (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare the fourth ql_dump_buffer() argument const (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a superfluous forward declaration (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove an include directive from qla_mr.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Include the header file from qla_dsd.h (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use tabs instead of spaces for indentation (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Improve Linux kernel coding style conformance (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Really fix qla2xxx_eh_abort() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla2x00_abort_srb() again decrease the sp reference count (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Allow NVMe IO to resume with short cable pull (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix hang in fcport delete path (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use common update-firmware-options routine for ISP27xx+ (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix NVMe port discovery after a short device port loss (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Correct error handling during initialization failures (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Retry fabric Scan on IOCB queue full (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix premature timer expiration (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix Relogin to prevent modifying scan_state flag (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reject EH_{abort|device_reset|target_request} (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Skip FW dump on LOOP initialization error (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use Correct index for Q-Pair array (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix abort timeout race condition. (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix DMA unmap leak (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Replace vmalloc + memset with vzalloc (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove unnecessary null check (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: remove double assignment in qla2x00_update_fcport (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Add cleanup for PCI EEH recovery (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that lockdep complains about unsafe locking in tcm_qla2xxx_close_session() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that qlt_send_resp_ctio() corrupts memory (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use __le64 instead of uint32_t[2] for sending DMA addresses to firmware (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce the dsd32 and dsd64 data structures (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Check the size of firmware data structures at compile time (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Pass little-endian values to the firmware (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla24xx_async_abort_cmd() static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove unnecessary locking from the target code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove qla_tgt_cmd.released (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if a command is released that is owned by the firmware (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: target: Fix offline port handling and host reset handling (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix abort handling in tcm_qla2xxx_write_pending() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix error handling in qlt_alloc_qfull_cmd() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qlt_send_term_imm_notif() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix use-after-free issues in qla2xxx_qpair_sp_free_dma() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a qla24xx_enable_msix() error path (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that qla2x00_mem_free() crashes if called twice (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla2x00_mem_free() easier to verify (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Increase the size of the mailbox arrays from 4 to 8 (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Log the status code if a firmware command fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that Coverity complains about dereferencing a NULL rport pointer (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Uninline qla2x00_init_timer() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_is_reserved_id() from qla_inline.h into qla_init.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_clear_loop_id() from qla_inline.h into qla_init.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a set-but-not-used variable (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare qla2x00_find_new_loop_id() static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_set_reserved_loop_ids() definition (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a format specifier (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Update two source code comments (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Silence Successful ELS IOCB message (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix device staying in blocked state (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_set_fcport_state() from a .h into a .c file (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove two superfluous casts (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove qla_tgt_cmd.data_work and qla_tgt_cmd.data_work_free (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move the include directive (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare qla24xx_build_scsi_crc_2_iocbs() static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move the port_state_str[] definition from a .h to a .c file (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Insert spaces where required (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix formatting of pointer types (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Leave a blank line after declarations (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use tabs to indent code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix FC-AL connection target discovery (Himanshu Madhani) [1728845] - [scsi] scsi: tcm_qla2xxx: Minimize #include directives (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Unregister resources in the opposite order of the registration order (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Unregister chrdev if module initialization fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use get/put_unaligned where appropriate (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla2x00_process_response_queue() easier to read (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare local symbols static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use ARRAY_SIZE() in the definition of QLA_LAST_SPEED (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a comment that refers to the SCSI host lock (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove useless set memory to zero use memset() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Cleanup fcport memory to prevent leak (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Further limit FLASH region write access from SysFS (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Disable T10-DIF feature with FC-NVMe during probe (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Increase the max_sgl_segments to 1024 (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reset the FCF_ASYNC_{SENT|ACTIVE} flags (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Set the qpair in SRB to NULL when SRB is released (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a small typo in qla_bsg.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix comment alignment in qla_bsg.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: deadlock by configfs_depend_item (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: use lower_32_bits and upper_32_bits instead of reinventing them (Himanshu Madhani) [1728845] - [md] dm snapshot: rework COW throttling to fix deadlock (Mike Snitzer) [1758605] - [md] dm snapshot: introduce account_start_copy() and account_end_copy() (Mike Snitzer) [1758605] - [netdrv] ice: Bump version (Jonathan Toppins) [1721711] - [netdrv] ice: Enable DDP package download (Jonathan Toppins) [1721711] - [netdrv] ice: Initialize DDP package structures (Jonathan Toppins) [1721711] - [netdrv] ice: Implement Dynamic Device Personalization (DDP) download (Jonathan Toppins) [1721711] - [netdrv] ice: Fix FW version formatting in dmesg (Jonathan Toppins) [1721711] - [netdrv] ice: send driver version to firmware (Jonathan Toppins) [1721711] - [netdrv] ice: Rework around device/function capabilities (Jonathan Toppins) [1721711] - [netdrv] ice: change default number of receive descriptors (Jonathan Toppins) [1721711] - [netdrv] ice: Minor refactor in queue management (Jonathan Toppins) [1721711] - [netdrv] ice: Allow for delayed LLDP MIB change registration (Jonathan Toppins) [1721711] - [netdrv] ice: update Tx context struct (Jonathan Toppins) [1721711] - [netdrv] ice: Report VF link status with opcode to get resources (Jonathan Toppins) [1721711] - [netdrv] ice: Check for DCB capability before initializing DCB (Jonathan Toppins) [1721711] - [netdrv] ice: report link down for VF when PF's queues are not enabled (Jonathan Toppins) [1721711] - [netdrv] ice: Reliably reset VFs (Jonathan Toppins) [1721711] - [netdrv] ice: change work limit to a constant (Jonathan Toppins) [1721711] - [netdrv] ice: small efficiency fixes (Jonathan Toppins) [1721711] - [netdrv] ice: move code closer together (Jonathan Toppins) [1721711] - [netdrv] ice: clean up arguments (Jonathan Toppins) [1721711] - [netdrv] ice: Check root pointer for validity (Jonathan Toppins) [1721711] - [netdrv] ice: Add ice_get_main_vsi to get PF/main VSI (Jonathan Toppins) [1721711] - [netdrv] ice: Update fields in ice_vsi_set_num_qs when reconfiguring (Jonathan Toppins) [1721711] - [netdrv] ice: Only disable VLAN pruning for the VF when all VLANs are removed (Jonathan Toppins) [1721711] - [netdrv] ice: Remove enable DCB when SW LLDP is activated (Jonathan Toppins) [1721711] - [netdrv] ice: Report stats when VSI is down (Jonathan Toppins) [1721711] - [netdrv] ice: Always notify FW of VF reset (Jonathan Toppins) [1721711] - [netdrv] ice: Correctly handle return values for init DCB (Jonathan Toppins) [1721711] - [netdrv] ice: Limit Max TCs on devices with more than 4 ports (Jonathan Toppins) [1721711] - [netdrv] ice: Cleanup defines in ice_type.h (Jonathan Toppins) [1721711] - [netdrv] ice: print extra message if topology issue (Jonathan Toppins) [1721711] - [netdrv] ice: add print of autoneg state to link message (Jonathan Toppins) [1721711] - [netdrv] ice: update driver unloading field for Queue Shutdown AQ command (Jonathan Toppins) [1721711] - [netdrv] ice: add needed PFR during driver unload (Jonathan Toppins) [1721711] - [netdrv] ice: Deduce TSA value from the priority value in the CEE mode (Jonathan Toppins) [1721711] - [netdrv] ice: Report what the user set for coalesce [tx|rx]-usecs (Jonathan Toppins) [1721711] - [netdrv] ice: Fix resource leak in ice_remove_rule_internal() (Jonathan Toppins) [1721711] - [netdrv] ice: Fix EMP reset handling (Jonathan Toppins) [1721711] - [netdrv] ice: fix adminq calls during remove (Jonathan Toppins) [1721711] - [netdrv] ice: Rework ice_ena_msix_range (Jonathan Toppins) [1721711] - [netdrv] ice: Fix VF configuration issues due to reset (Jonathan Toppins) [1721711] - [netdrv] ice: Alloc queue management bitmaps and arrays dynamically (Jonathan Toppins) [1721711] - [netdrv] ice: add support for virtchnl_queue_select.[tx|rx]_queues bitmap (Jonathan Toppins) [1721711] - [netdrv] ice: add support for enabling/disabling single queues (Jonathan Toppins) [1721711] - [netdrv] ice: fix potential infinite loop (Jonathan Toppins) [1721711] - [netdrv] ice: fix ice_is_tc_ena (Jonathan Toppins) [1721711] - [netdrv] ice: add validation in OP_CONFIG_VSI_QUEUES VF message (Jonathan Toppins) [1721711] - [netdrv] ice: Don't clog kernel debug log with VF MDD events errors (Jonathan Toppins) [1721711] - [netdrv] ice: Introduce a local variable for a VSI in the rebuild path (Jonathan Toppins) [1721711] - [netdrv] ice: shorten local and add debug prints (Jonathan Toppins) [1721711] - [netdrv] ice: Sanitize ice_ena_vsi and ice_dis_vsi (Jonathan Toppins) [1721711] - [netdrv] ice: added sibling head to parse nodes (Jonathan Toppins) [1721711] - [netdrv] ice: Fix ethtool port and PFC stats for 4x25G cards (Jonathan Toppins) [1721711] - [netdrv] ice: Don't allow VSI to remove unassociated ucast filter (Jonathan Toppins) [1721711] - [netdrv] ice: Fix issues updating VSI MAC filters (Jonathan Toppins) [1721711] - [netdrv] ice: update ethtool stats on-demand (Jonathan Toppins) [1721711] - [netdrv] ice: Add input handlers for virtual channel handlers (Jonathan Toppins) [1721711] - [netdrv] ice: Don't clear auto_fec bit in ice_cfg_phy_fec() (Jonathan Toppins) [1721711] - [netdrv] ice: Fix flag used for module query (Jonathan Toppins) [1721711] - [netdrv] ice: silence some bogus error messages (Jonathan Toppins) [1721711] - [netdrv] ice: Rename ethtool private flag for lldp (Jonathan Toppins) [1721711] - [netdrv] ice: reject VF attempts to enable head writeback (Jonathan Toppins) [1721711] - [netdrv] ice: Copy dcbx configuration only if mode is correct (Jonathan Toppins) [1721711] - [netdrv] ice: Treat DCBx state NOT_STARTED as valid (Jonathan Toppins) [1721711] - [netdrv] ice: Don't call synchronize_irq() for VF's from the host (Jonathan Toppins) [1721711] - [netdrv] ice: Account for all states of FW DCBx and LLDP (Jonathan Toppins) [1721711] - [netdrv] ice: Allow egress control packets from PF_VSI (Jonathan Toppins) [1721711] - [netdrv] ice: improve print for VF's when adding/deleting MAC filters (Jonathan Toppins) [1721711] - [netdrv] ice: Change type for queue counts (Jonathan Toppins) [1721711] - [netdrv] ice: Move VF resources definition to SR-IOV specific file (Jonathan Toppins) [1721711] - [netdrv] ice: Increase size of Mailbox receive queue for many VFs (Jonathan Toppins) [1721711] - [netdrv] ice: Reduce wait times during VF bringup/reset (Jonathan Toppins) [1721711] - [netdrv] ice: update GLINT_DYN_CTL and GLINT_VECT2FUNC register access (Jonathan Toppins) [1721711] - [netdrv] ice: Do not always bring up PF VSI in ice_ena_vsi() (Jonathan Toppins) [1721711] - [netdrv] ice: allow empty Rx descriptors (Jonathan Toppins) [1721711] - [netdrv] ice: Fix kernel hang with DCB reset in CEE mode (Jonathan Toppins) [1721711] - [netdrv] ice: Set WB_ON_ITR when we don't re-enable interrupts (Jonathan Toppins) [1721711] - [netdrv] ice: fix set pause param autoneg check (Jonathan Toppins) [1721711] - [netdrv] ice: Restructure VFs initialization flows (Jonathan Toppins) [1721711] - [netdrv] ice: Assume that more than one Rx queue is rare in ice_napi_poll (Jonathan Toppins) [1721711] - [netdrv] ice: Use the software based tail when checking for hung Tx ring (Jonathan Toppins) [1721711] - [netdrv] ice: Bump version number (Jonathan Toppins) [1721711] - [netdrv] ice: Remove flag to track VF interrupt status (Jonathan Toppins) [1721711] - [netdrv] ice: Remove unnecessary flag ICE_FLAG_MSIX_ENA (Jonathan Toppins) [1721711] - [netdrv] ice: Don't return error for disabling LAN Tx queue that does exist (Jonathan Toppins) [1721711] - [netdrv] ice: Remove duplicate code in ice_alloc_rx_bufs (Jonathan Toppins) [1721711] - [netdrv] ice: Add stats for Rx drops at the port level (Jonathan Toppins) [1721711] - [netdrv] ice: Update number of VF queue before setting VSI resources (Jonathan Toppins) [1721711] - [netdrv] ice: Set up Tx scheduling tree based on alloc VSI Tx queues (Jonathan Toppins) [1721711] - [netdrv] ice: Only bump Rx tail and release buffers once per napi_poll (Jonathan Toppins) [1721711] - [netdrv] ice: Disable VFs until reset is completed (Jonathan Toppins) [1721711] - [netdrv] ice: Do not configure port with no media (Jonathan Toppins) [1721711] - [netdrv] ice: separate out control queue lock creation (Jonathan Toppins) [1721711] - [netdrv] ice: Always set prefena when configuring an Rx queue (Jonathan Toppins) [1721711] - [netdrv] ice: Move vector base setup to PF VSI (Jonathan Toppins) [1721711] - [netdrv] ice: track hardware stat registers past rollover (Jonathan Toppins) [1721711] - [netdrv] ice: add lp_advertising flow control support (Jonathan Toppins) [1721711] - [netdrv] ice: Use struct_size() helper (Jonathan Toppins) [1721711] - [netdrv] ice: Use LLDP ethertype define ETH_P_LLDP (Jonathan Toppins) [1721711] - [netdrv] ice: Trivial cosmetic changes (Jonathan Toppins) [1721711] - [netdrv] ice: Recognize higher speeds (Jonathan Toppins) [1721711] - [netdrv] ice: Use a different ICE_DBG bit for firmware log messages (Jonathan Toppins) [1721711] - [netdrv] ice: Update function header (Jonathan Toppins) [1721711] - [netdrv] ice: Move define for ICE_AQC_DRIVER_UNLOADING (Jonathan Toppins) [1721711] - [netdrv] ice: Align to updated AQ command formats (Jonathan Toppins) [1721711] - [netdrv] ice: Use continue instead of an else block (Jonathan Toppins) [1721711] - [netdrv] ice: Change minimum descriptor count value for Tx/Rx rings (Jonathan Toppins) [1721711] - [netdrv] ice: Add switch rules to handle LLDP packets (Jonathan Toppins) [1721711] - [netdrv] ice: Cleanup ice_update_link_info (Jonathan Toppins) [1721711] - [netdrv] ice: Use right type for ice_cfg_vsi_lan return (Jonathan Toppins) [1721711] - [netdrv] ice: Add support for Forward Error Correction (FEC) (Jonathan Toppins) [1721711] - [netdrv] ice: Add support for virtchnl_vector_map.[rxq|txq]_map (Jonathan Toppins) [1721711] - [netdrv] ice: Introduce ice_init_mac_fltr and move ice_napi_del (Jonathan Toppins) [1721711] - [netdrv] ice: Use GLINT_DYN_CTL to disable VF's interrupts (Jonathan Toppins) [1721711] - [netdrv] ice: Add a helper to trigger software interrupt (Jonathan Toppins) [1721711] - [netdrv] ice: Configure RSS LUT key only if RSS is enabled (Jonathan Toppins) [1721711] - [netdrv] ice: Add ice_get_fw_log_cfg to init FW logging (Jonathan Toppins) [1721711] - [netdrv] ice: Minor cleanup in ice_switch.h (Jonathan Toppins) [1721711] - [netdrv] ice: Remove redundant and premature event config (Jonathan Toppins) [1721711] - [netdrv] ice: Change message level (Jonathan Toppins) [1721711] - [netdrv] ice: Check all VFs for MDD activity, don't disable (Jonathan Toppins) [1721711] - [netdrv] ice: Refactor interrupt tracking (Jonathan Toppins) [1721711] - [netdrv] ice: Add handler for ethtool selftest (Jonathan Toppins) [1721711] - [netdrv] ice: Don't call ice_cfg_itr() for SR-IOV (Jonathan Toppins) [1721711] - [netdrv] ice: Set minimum default Rx descriptor count to 512 (Jonathan Toppins) [1721711] - [netdrv] ice: Resolve static analysis warning (Jonathan Toppins) [1721711] - [netdrv] ice: Implement toggling ethtool rx-vlan-filter (Jonathan Toppins) [1721711] - [netdrv] ice: Remove direct write for GLLAN_RCTL_0 (Jonathan Toppins) [1721711] - [netdrv] ice: Fix LINE_SPACING style issue (Jonathan Toppins) [1721711] - [netdrv] ice: Silence semantic parser warnings (Jonathan Toppins) [1721711] - [netdrv] ice: Fix couple of issues in ice_vsi_release (Jonathan Toppins) [1721711] - [netdrv] ice: Reorganize ice_vf struct (Jonathan Toppins) [1721711] - [netdrv] ice: Use bitfields when possible (Jonathan Toppins) [1721711] - [netdrv] ice: Reorganize tx_buf and ring structs (Jonathan Toppins) [1721711] - [netdrv] ice: Format ethtool reported stats (Jonathan Toppins) [1721711] - [netdrv] ice: Gracefully handle reset failure in ice_alloc_vfs() (Jonathan Toppins) [1721711] - [netdrv] ice: Refactor the LLDP MIB change event handling (Jonathan Toppins) [1721711] - [netdrv] ice: Advertise supported link modes if none requested (Jonathan Toppins) [1721711] - [netdrv] ice: Fix hang when ethtool disables FW LLDP (Jonathan Toppins) [1721711] - [netdrv] ice: Call out dev/func caps when printing (Jonathan Toppins) [1721711] - [netdrv] ice: Remove braces for single statement blocks (Jonathan Toppins) [1721711] - [netdrv] ice: Cleanup an unnecessary variable initialization (Jonathan Toppins) [1721711] - [netdrv] ice: Implement LLDP persistence (Jonathan Toppins) [1721711] - [netdrv] ice: Fix double spacing (Jonathan Toppins) [1721711] - [kernel] sched/debug: Fix potential deadlock when writing to sched_features (Vladis Dronov) [1760060] - [kernel] sched/debug: Use match_string() helper instead of open-coded logic (Vladis Dronov) [1760060] - [hid] HID: intel-ish-hid: ipc: add EHL device id (Tony Camuso) [1716756] - [hid] HID: remove NO_D3 flag when remove driver (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: fix wrong driver_data usage (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Fix a use after free in load_fw_from_host() (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add SPDX license identifier - Makefile/Kconfig (Tony Camuso) [1716756] - [platform] platform/chrome: Add ChromeOS EC ISHTP driver (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: prefix header search paths with $(srctree)/ (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add Comet Lake PCI device ID (Tony Camuso) [1716756] - [platform] platform/chrome: cros_ec: Add EC host command support using rpmsg (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: fix spelling mistake "multipe" -> "multiple" (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ISH firmware loader client driver (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add interface function for PCI device pointer (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Use the new interface functions in HID ish client (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Move functions related to bus and device (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add interface functions for struct ishtp_cl (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Move the common functions from client.h (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Store ishtp_cl_device instance in device (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Move driver registry functions (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Simplify ishtp_cl_link() (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Hide members of struct ishtp_cl_device (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add match callback to ishtp bus type (Tony Camuso) [1716756] - [hid] HID: intel-ish: enable raw interface to HID devices on ISH (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Use VID/PID from ISH (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Switch to use new generic UUID API (Tony Camuso) [1716756] - [hid] HID: intel-ish: ipc: handle PIMR before ish_wakeup also clear PISR busy_clear bit (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: use helper function to search client id (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ishtp: add helper function for client search (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: use helper function to access client buffer (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ishtp: add helper functions for client buffer operation (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: use helper function for private driver data set/get (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ishtp: add helper function for driver data get/set (Tony Camuso) [1716756] - [platform] platform/chrome: Move cros-ec transport drivers to drivers/platform. (Tony Camuso) [1716756] - [tools] tools: PCI: Fix compiler warning in pcitest (Myron Stowe) [1753749] - [iommu] iommu: Fix integer truncation (Myron Stowe) [1753749] - [pci] PCI/P2PDMA: Ignore root complex whitelist when an IOMMU is present (Myron Stowe) [1753749] - [pci] PCI: Cleanup setup-bus.c comments and whitespace (Myron Stowe) [1753749] - [include] CPER: Remove unnecessary use of user-space types (Myron Stowe) [1753749] - [include] CPER: Add UEFI spec references (Myron Stowe) [1753749] - [pci] PCI: Fix comment typos (Myron Stowe) [1753749] - [pci] PCI: Cleanup register definition width and whitespace (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove pointless MY_NAME definition (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove pointless PCIE_MODULE_NAME definition (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove unused dbg/err/info/warn() wrappers (Myron Stowe) [1753749] - [pci] PCI: pciehp: Log messages with pci_dev, not pcie_device (Myron Stowe) [1753749] - [pci] PCI: pciehp: Replace pciehp_debug module param with dyndbg (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove pciehp_debug uses (Myron Stowe) [1753749] - [pci] PCI/AER: Log messages with pci_dev, not pcie_device (Myron Stowe) [1753749] - [pci] PCI/DPC: Log messages with pci_dev, not pcie_device (Myron Stowe) [1753749] - [pci] PCI/PME: Replace dev_printk(KERN_DEBUG) with dev_info() (Myron Stowe) [1753749] - [pci] PCI/AER: Replace dev_printk(KERN_DEBUG) with dev_info() (Myron Stowe) [1753749] - [pci] PCI: Replace dev_printk(KERN_DEBUG) with dev_info(), etc (Myron Stowe) [1753749] - [pci] PCI: Replace printk(KERN_INFO) with pr_info(), etc (Myron Stowe) [1753749] - [pci] PCI: Use dev_printk() when possible (Myron Stowe) [1753749] - [iommu] iommu/dma: Reserve IOVA for PCIe inaccessible DMA address (Myron Stowe) [1753749] - [pci] PCI: Add dma_ranges window list (Myron Stowe) [1753749] - [pci] PCI: endpoint: Fix a potential NULL pointer dereference (Myron Stowe) [1753749] - [tools] tools: PCI: Handle pcitest.sh independently from pcitest (Myron Stowe) [1753749] - [tools] tools: PCI: Add 'h' in optstring of getopt() (Myron Stowe) [1753749] - [tools] tools: PCI: Change pcitest compiling process (Myron Stowe) [1753749] - [tools] tools: PCI: Fix compilation warnings (Myron Stowe) [1753749] - [tools] tools: PCI: Exit with error code when test fails (Myron Stowe) [1753749] - [pci] PCI: Mark Atheros AR9462 to avoid bus reset (Myron Stowe) [1753749] - [pci] switchtec: Fix unintended mask of MRPC event (Myron Stowe) [1753749] - [pci] switchtec: Increase PFF limit from 48 to 255 (Myron Stowe) [1753749] - [pci] PCI/LINK: Disable bandwidth notification interrupt during suspend (Myron Stowe) [1753749] - [pci] PCI/P2PDMA: Allow P2P DMA between any devices under AMD ZEN Root Complex (Myron Stowe) [1753749] - [maintainers] MAINTAINERS: Add Karthikeyan Mitran and Hou Zhiqiang for Mobiveil PCI (Myron Stowe) [1753749] - [platform] platform/chrome: chromeos_laptop: use pci_dev_id() helper (Myron Stowe) [1753749] - [iommu] iommu/amd: Use pci_dev_id() helper (Myron Stowe) [1753749] - [drm] drm/amdkfd: Use pci_dev_id() helper (Myron Stowe) [1753749] - [powerpc] powerpc/powernv/npu: Use pci_dev_id() helper (Myron Stowe) [1753749] - [x86] x86/PCI: Fix PCI IRQ routing table memory leak (Myron Stowe) [1753749] - [pci] PCI: Remove unused pci_request_region_exclusive() (Myron Stowe) [1753749] - [pci] PCI: Mark expected switch fall-throughs (Myron Stowe) [1753749] - [pci] PCI/ACPI: Remove the need for 'struct hotplug_params' (Myron Stowe) [1753749] - [pci] PCI/ACPI: Do not export pci_get_hp_params() (Myron Stowe) [1753749] - [pci] PCI: rpaphp: Get/put device node reference during slot alloc/dealloc (Myron Stowe) [1753749] - [pci] PCI: rpadlpar: Fix leaked device_node references in add/remove paths (Myron Stowe) [1753749] - [pci] PCI: Assign bus numbers present in EA capability for bridges (Myron Stowe) [1753749] - [pci] PCI: OF: Support "external-facing" property (Myron Stowe) [1753749] - [documentation] dt-bindings: Add "external-facing" PCIe port property (Myron Stowe) [1753749] - [pci] PCI: Init PCIe feature bits for managed host bridge alloc (Myron Stowe) [1753749] - [pci] PCI/AER: Change pci_aer_init() stub to return void (Myron Stowe) [1753749] - [s390] s390/zcrypt: CEX7S exploitation support (Philipp Rudo) [1726416] - [s390] s390/pkey: Add sysfs attributes to emit AES CIPHER key blobs (Philipp Rudo) [1726416] - [s390] s390/crypto: Support for SHA3 via CPACF (MSA6) (Philipp Rudo) [1726416] - [s390] s390/crypto: xts-aes-s390 fix extra run-time crypto self tests finding (Philipp Rudo) [1726416] - [s390] s390: vfio-ap: fix warning reset not completed (Philipp Rudo) [1726416] - [s390] crypto: s390 - Rename functions to avoid conflict with crypto/sha256.h (Philipp Rudo) [1726416] - [s390] s390/zcrypt: fix wrong handling of cca cipher keygenflags (Philipp Rudo) [1726416] - [s390] crypto: s390/xts-aes - invoke fallback for ciphertext stealing (Philipp Rudo) [1726416] - [s390] s390/paes: Prepare paes functions for large key blobs (Philipp Rudo) [1726416] - [s390] s390/pkey: add CCA AES cipher key support (Philipp Rudo) [1726416] - [s390] s390/zcrypt: Add low level functions for CCA AES cipher keys (Philipp Rudo) [1726416] - [s390] s390/zcrypt: extend cca_findcard function and helper (Philipp Rudo) [1726416] - [s390] s390/pkey: pkey cleanup: narrow in-kernel API, fix some variable types (Philipp Rudo) [1726416] - [s390] s390/zcrypt: adjust switch fall through comments for -Wimplicit-fallthrough (Philipp Rudo) [1726416] - [s390] crypto: s390/aes - fix name clash after AES library refactor (Philipp Rudo) [1726416] - [s390] s390/zcrypt: new sysfs attributes serialnr and mkvps (Philipp Rudo) [1726416] - [s390] s390/zcrypt: add base code for cca crypto card info support (Philipp Rudo) [1726416] - [s390] s390/zcrypt: move cca misc functions to new code file (Philipp Rudo) [1726416] - [s390] s390: use __u{16, 32, 64} instead of uint{16, 32, 64}_t in uapi header (Philipp Rudo) [1726416] - [s390] s390/zcrypt: remove the exporting of ap_query_configuration (Philipp Rudo) [1726416] - [s390] s390/crypto: sha: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/crypto: prng: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/crypto: ghash: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/pkey: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/zcrypt: support special flagged EP11 cprbs (Philipp Rudo) [1726416] - [s390] s390/crypto: fix possible sleep during spinlock aquired (Philipp Rudo) [1726416] - [s390] s390/crypto: use TRNG for seeding/reseeding (Philipp Rudo) [1726416] - [s390] s390/crypto: rework generate_entropy function for pseudo random dd (Philipp Rudo) [1726416] - [s390] s390: zcrypt: initialize variables before_use (Philipp Rudo) [1726416] - [powerpc] powerpc/pseries: Track LMB nid instead of using device tree (Steve Best) [1758742] - [powerpc] powerpc/pseries/memory-hotplug: Only update DT once per memory DLPAR request (Steve Best) [1758742] - [net] hv_sock: Fix hang when a connection is closed (Cathy Avery) [1739477] - [net] hv_sock: Use consistent types for UUIDs (Cathy Avery) [1739477] - [net] hvsock: fix epollout hang from race condition (Cathy Avery) [1739477] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Cathy Avery) [1739477] - [net] hv_sock: perf: loop in send() to maximize bandwidth (Cathy Avery) [1739477] - [net] hv_sock: perf: Allow the socket buffer size options to influence the actual socket buffers (Cathy Avery) [1739477] - [net] hv_sock: Add support for delayed close (Cathy Avery) [1739477] - [powerpc] powerpc/rtas: allow rescheduling while changing cpu states (Steve Best) [1758651] - [powerpc] powerpc/pseries/mobility: use cond_resched when updating device tree (Steve Best) [1758651] - [tools] selftests/powerpc: Fix compile error on tlbie_test due to newer gcc (Desnes Augusto Nunes do Rosario) [1755707] - [tools] selftests/powerpc: Add test case for tlbie vs mtpidr ordering issue (Desnes Augusto Nunes do Rosario) [1755707] - [powerpc] powerpc/mm: Fixup tlbie vs mtpidr/mtlpidr ordering issue on POWER9 (Desnes Augusto Nunes do Rosario) [1755707] - [powerpc] powerpc/book3s64/radix: Rename CPU_FTR_P9_TLBIE_BUG feature flag (Desnes Augusto Nunes do Rosario) [1755707] - [powerpc] powerpc/book3s64/mm: Don't do tlbie fixup for some hardware revisions (Desnes Augusto Nunes do Rosario) [1755707] - [scsi] scsi: zfcp: make DIX experimental, disabled, and independent of DIF (Philipp Rudo) [1723829] - [s390] s390: add support for IBM z15 machines (Philipp Rudo) [1757015] - [s390] s390/pci: add mio_enabled attribute (Philipp Rudo) [1757118] - [s390] s390: fix setting of mio addressing control (Philipp Rudo) [1757118] - [s390] s390/pci: correctly handle MIO opt-out (Philipp Rudo) [1757118] - [s390] s390/pci: deal with devices that have no support for MIO instructions (Philipp Rudo) [1757118] - [s390] s390/pci: fix assignment of bus resources (Philipp Rudo) [1757118] - [s390] s390/pci: fix struct definition for set PCI function (Philipp Rudo) [1757118] - [s390] s390/pci: fix MSI message data (Philipp Rudo) [1757123] - [powerpc] powerpc/tm: Add tm-poison test (Steve Best) [1756721] - [powerpc] powerpc/powernv: Add new opal message type (Desnes Augusto Nunes do Rosario) [1706975] - [powerpc] powerpc/powernv: Enhance opal message read interface (Desnes Augusto Nunes do Rosario) [1706975] - [char] hwrng: core - don't wait on add_early_randomness() (Laurent Vivier) [1660802] - [firmware] efi: Export Runtime Configuration Interface table to sysfs (Al Stone) [1665518] - [nvme] nvme: Treat discovery subsystems as unique subsystems (Ewan Milne) [1757525] - [powerpc] powerpc/powernv/opal: Use standard interrupts property when available (Steve Best) [1757173] - [powerpc] powerpc: dump kernel log before carrying out fadump or kdump (Steve Best) [1756922] - [kernel] genirq/affinity: Create affinity mask for single vector (Ming Lei) [1733420] - [virt] kvm: arm/arm64: Only skip MMIO insn once (Andrew Jones) [1733928] - [vfio] type1: remove duplicate retrieval of reserved regions (Auger Eric) [1704597] - [vfio] type1: Add IOVA range capability support (Auger Eric) [1704597] - [vfio] type1: check dma map request is within a valid iova range (Auger Eric) [1704597] - [vfio] type1: Update iova list on detach (Auger Eric) [1704597] - [vfio] type1: Check reserved region conflict and update iova list (Auger Eric) [1704597] - [vfio] type1: Introduce iova list and add iommu aperture validity check (Auger Eric) [1704597] - [iommu] Revisit iommu_insert_resv_region() implementation (Auger Eric) [1704597] - [iommu] vt-d: Differentiate relaxable and non relaxable RMRRs (Auger Eric) [1704597] - [iommu] Introduce IOMMU_RESV_DIRECT_RELAXABLE reserved memory regions (Auger Eric) [1704597] - [iommu] vt-d: Handle PCI bridge RMRR device scopes in intel_iommu_get_resv_regions (Auger Eric) [1704597] - [iommu] vt-d: Handle RMRR with PCI bridge device scopes (Auger Eric) [1704597] - [iommu] vt-d: Introduce is_downstream_to_pci_bridge helper (Auger Eric) [1704597] - [iommu] vt-d: Duplicate iommu_resv_region objects per device list (Auger Eric) [1704597] - [iommu] Fix a leak in iommu_insert_resv_region (Auger Eric) [1704597] - [pci] hv: Avoid use of hv_pci_dev->pci_slot after freeing it (Mohammed Gamal) [1737569]- [x86] kvm: x86: omit "impossible" pmu MSRs from MSR list (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Fix consistency check on injected exception error code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: omit absent pmu MSRs from MSR list (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: Fix libkvm build error (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Limit guest PMCs to those supported on the host (Vitaly Kuznetsov) [1749495] - [virt] kvm: x86, powerpc: do not allow clearing largepages debugfs entry (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: x86: clarify what is reported on KVM_GET_MSRS failure (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Set VMENTER_L1D_FLUSH_NOT_REQUIRED if !X86_BUG_L1TF (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: add test for dirty logging inside nested guests (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: fix nested guest live migration with PML (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: assign two bits to track SPTE kinds (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Expose XSAVEERPTR to the guest (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Enumerate support for CLZERO instruction (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Use AMD CPUID semantics for AMD vCPUs (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Improve emulation of CPUID leaves 0BH and 1FH (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix userspace set invalid CR4 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix a spurious -E2BIG in __do_cpuid_func (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Loosen filter for adaptive tuning of lapic_timer_advance_ns (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: cleanup and fix host 64-bit mode checks (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: fix build warnings in hv_enable_direct_tlbflush() on i386 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Don't check kvm_rebooting in __kvm_handle_fault_on_reboot() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Drop ____kvm_handle_fault_on_reboot() (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Add error handling to VMREAD helper (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Optimize VMX instruction error and fault handling (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Check kvm_rebooting in kvm_spurious_fault() (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: limit atomic switch MSRs (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: Intercept RDPRU (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add "significant index" flag to a few CPUID leaves (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Skip invalid pages during zapping iff root_count is zero (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Explicitly track only a single invalid mmu generation (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "kvm: x86/mmu: Remove is_obsolete() call" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: reclaim the zapped-obsolete page first"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: collapse TLB flushes when zap all pages"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: zap pages in batch"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: add tracepoint for kvm_mmu_invalidate_all_pages"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: show mmu_valid_gen in shadow page related tracepoints"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Use fast invalidate mechanism to zap MMIO sptes (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Treat invalid shadow pages as obsolete (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Tune lapic_timer_advance_ns smoothly (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add comments to document various emulation types (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Handle single-step #DB for EMULTYPE_SKIP on EPT misconfig (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Remove emulation_result enums, EMULATE_{DONE, FAIL, USER_EXIT} (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Remove EMULATE_FAIL handling in handle_invalid_guest_state() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move triple fault request into RM int injection (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Handle emulation failure directly in kvm_task_switch() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Exit to userspace on emulation skip failure (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move #UD injection for failed emulation into emulation code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add explicit flag for forced emulation on #UD (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move #GP injection for VMware into x86_emulate_instruction() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Don't attempt VMWare emulation on #GP with non-zero error code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Refactor kvm_vcpu_do_singlestep() to remove out param (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Clean up handle_emulation_failure() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Relocate MMIO exit stats counting (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Check Host Address Space Size on vmentry of nested guests (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: hyperv_cpuid: add check for NoNonArchitecturalCoreSharing bit (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: hyper-v: set NoNonArchitecturalCoreSharing CPUID bit when SMT is impossible (Vitaly Kuznetsov) [1749495] - [kernel] cpu/smt: create and export cpu_smt_possible() (Vitaly Kuznetsov) [1749495] - [x86] kvm: hyperv: Fix Direct Synthetic timers assert an interrupt w/o lapic_in_kernel (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Manually flush collapsible SPTEs only when toggling flags (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Remove duplicate guest mode handling (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Introduce VM_MODE_PXXV48_4K (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Create VM earlier for dirty log test (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Move vm type into _vm_create() internally (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: announce KVM_CAP_HYPERV_ENLIGHTENED_VMCS support only when it is available (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: svm: remove unneeded nested_enable_evmcs() hook (Vitaly Kuznetsov) [1749495] - [x86] kvm/hyper-v/vmx: Add direct tlb flush support (Vitaly Kuznetsov) [1749495] - [documentation] kvm/hyper-v: Add new KVM capability KVM_CAP_HYPERV_DIRECT_TLBFLUSH (Vitaly Kuznetsov) [1749495] - [x86] hyper-v: Fix definition of struct hv_vp_assist_page (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add Intel PMU MSRs to msrs_to_save[] (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Use IPI shorthands in kvm guest when support (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix INIT signal handling in various CPU states (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Introduce exit reason for receiving INIT signal on guest-mode (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Stop the preemption timer during vCPU reset (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Micro optimize IPI latency (Vitaly Kuznetsov) [1749495] - [x86] kvm: Nested KVM MMUs need PAE root too (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: set ctxt->have_exception in x86_decode_insn() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: always stop emulation on page fault (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: trace nested VM-Enter failures detected by H/W (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: add tracepoint for failed nested VM-Enter (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: Fix a check in nested_svm_vmrun() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Return to userspace with internal error on unexpected exit reason (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add kvm_emulate_{rd, wr}msr() to consolidate VXM/SVM code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Refactor up kvm_{g, s}et_msr() to simplify callers (Vitaly Kuznetsov) [1749495] - [documentation] doc: kvm: Fix return description of KVM_SET_MSRS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Tune PLE Window tracepoint (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Change ple_window type to unsigned int (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Remove tailing newline for tracepoints (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Trace vcpu_id for vmexit (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Manually calculate reserved bits when loading PDPTRS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Disable posted interrupts for non-standard IRQs delivery modes (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Fix and tweak the comments for VM-Enter (Vitaly Kuznetsov) [1749495] - [x86] kvm: Assert that struct kvm_vcpu is always as offset zero (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add pv tlb shootdown tracepoint (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Unconditionally call x86 ops that are always implemented (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Consolidate "is MMIO SPTE" code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Add explicit access mask for MMIO SPTEs (Vitaly Kuznetsov) [1749495] - [documentation] kvm: x86: Rename access permissions cache member in struct kvm_vcpu_arch (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: eliminate hardcoded RIP advancement from vmrun_interception() (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: eliminate weird goto from vmrun_interception() (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: remove hardcoded instruction length from intercepts (Vitaly Kuznetsov) [1749495] - [x86] kvm: add xsetbv to the emulator (Vitaly Kuznetsov) [1749495] - [x86] kvm: clear interrupt shadow on EMULTYPE_SKIP (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: propagate errors from skip_emulated_instruction() (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: don't pretend to advance RIP in case wrmsr_interception() results in #GP (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix x86_decode_insn() return when fetching insn bytes fails (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: use Intel speculation bugs and features as derived in generic x86 code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: always expose VIRT_SSBD to guests (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: fix reporting of AMD speculation bug CPUID leaf (Vitaly Kuznetsov) [1749495] - [virt] kvm: Call kvm_arch_vcpu_blocking early into the blocking sequence (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Reintroduce fast invalidate/zap for flushing memslot (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: work around leak of uninitialized stack contents (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: handle page fault in vmread (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Don't update RIP or do single-step on faulting emulation (Vitaly Kuznetsov) [1749495] - [tools] selftests/kvm: make platform_info_test pass on AMD (Vitaly Kuznetsov) [1749495] - [x86] revert "kvm: x86/mmu: Zap only the relevant pages when removing a memslot" (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: fix state save/load on processors without XSAVE (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: fix vmx_set_nested_state_test (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: provide common function to enable eVMCS (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: do not try running the VM in vmx_set_nested_state_test (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: svm: remove redundant assignment of var new_entry (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: Adding config fragments (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Update gitignore file for latest changes (Vitaly Kuznetsov) [1749495] - [virt] kvm: remove unnecessary PageReserved check (Vitaly Kuznetsov) [1749495] - [x86] kvm: remove useless calls to kvm_para_available (Vitaly Kuznetsov) [1749495] - [x86] kvm: no need to check return value of debugfs_create functions (Vitaly Kuznetsov) [1749495] - [s390] kvm: remove kvm_arch_has_vcpu_debugfs() (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix leak vCPU's VMCS value into other pCPU (Vitaly Kuznetsov) [1749495] - [virt] kvm: Check preempted_in_kernel for involuntary preemption (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Don't need to wakeup vCPU twice afer timer fire (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Boost queue head vCPU to mitigate lock waiter preemption (Vitaly Kuznetsov) [1749495] - [documentation] documentation: move Documentation/virtual to Documentation/virt (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add fixed counters to PMU filter (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: dump VMCS on failed entry (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/vpmu: refine kvm_pmu err msg when event creation failed (Vitaly Kuznetsov) [1749495] - [virt] kvm: Boost vCPUs that are delivering interrupts (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Remove superfluous define from vmx.c (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: Fix detection of AMD Errata 1096 (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Inject timer interrupt via posted interrupt (Vitaly Kuznetsov) [1749495] - [x86] kvm: Don't call kvm_spurious_fault() from .fixup (Vitaly Kuznetsov) [1749495] - [x86] kvm: Replace vmx_vmenter()'s call to kvm_spurious_fault() with UD2 (Vitaly Kuznetsov) [1749495] - [x86] kvm: Fix fastop function ELF metadata (Vitaly Kuznetsov) [1749495] - [x86] paravirt: Fix callee-saved function ELF sizes (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Make lapic timer unpinned (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/vpmu: reset pmc->counter to 0 for pmu fixed_counters (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Ignore segment base for VMX memory operand when segment not FS or GS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: ioapic and apic debug macros cleanup (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: some tsc debug cleanup (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: fix coccinelle warnings (Vitaly Kuznetsov) [1749495] - [x86] kvm: avoid constant-conversion warning (Vitaly Kuznetsov) [1749495] - [x86] kvm: avoid -Wsometimes-uninitized warning (Vitaly Kuznetsov) [1749495] - [documentation] documentation: virtual: Add toctree hooks (Vitaly Kuznetsov) [1749495] - [documentation] documentation: kvm: Convert cpuid.txt to .rst (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Unconditionally enable irqs in guest context (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: PMU Event Filter (Vitaly Kuznetsov) [1749495] - [kernel] kvm: x86: Fix -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1749495] - [virt] kvm: Properly check if "page" is valid in kvm_vcpu_unmap (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Retry tune per-vCPU timer_advance_ns if adaptive tuning goes insane (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: write down valid APIC registers (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: ARBPRI is a reserved register for x2APIC (Vitaly Kuznetsov) [1749495] - [x86] kvm nvmx: Check Host Segment Registers and Descriptor Tables on vmentry of nested guests (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Stash L1's CR3 in vmcs01.GUEST_CR3 on nested entry w/o EPT (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: add tracepoints around __direct_map and FNAME(fetch) (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: change kvm_mmu_page_get_gfn BUG_ON to WARN_ON (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: remove now unneeded hugepage gfn adjustment (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: make FNAME(fetch) and __direct_map more similar (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Do not release the page inside mmu_set_spte() (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: remove has_leaf_count from struct kvm_cpuid_param (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: rename do_cpuid_1_ent (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: set struct kvm_cpuid_entry2 flags in do_cpuid_1_ent (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: extract do_cpuid_7_mask and support multiple subleafs (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: do_cpuid_ent works on a whole CPUID function (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: remove the trailing newline used in the fmt parameter of TP_printk (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: add nrips module parameter (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: degrade WARN to pr_warn_ratelimited (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Pass through AMD_STIBP_ALWAYS_ON in GET_SUPPORTED_CPUID (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Remove unnecessary sync_roots from handle_invept (Vitaly Kuznetsov) [1749495] - [documentation] documentation: kvm: document CPUID bit for MSR_KVM_POLL_CONTROL (Vitaly Kuznetsov) [1749495] - [documentation] kvm: x86: Expose PV_SCHED_YIELD CPUID feature bit to guest (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Implement PV sched yield hypercall (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Yield to IPI target if necessary (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: list VMX MSRs in KVM_GET_MSR_INDEX_LIST (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: allow setting the VMFUNC controls MSR (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: include conditional controls in /dev/kvm KVM_GET_MSRS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix apic dangling pointer in vcpu (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: check CPUID before allowing read/write of IA32_XSS (Vitaly Kuznetsov) [1749495] - [tools] tests: kvm: Check for a kernel warning (Vitaly Kuznetsov) [1749495] - [tools] kvm: tests: Sort tests in the Makefile alphabetically (Vitaly Kuznetsov) [1749495] - [documentation] kvm: fix typo in documentation (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: shadow pin based execution controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Leave preemption timer running when it's disabled (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Drop hv_timer_armed from 'struct loaded_vmcs' (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Preset *DT exiting in vmcs02 when emulating UMIP (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Preserve last USE_MSR_BITMAPS when preparing vmcs02 (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Explicitly initialize controls shadow at VMCS allocation (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't reset VMCS controls shadow on VMCS switch (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Shadow VMCS controls on a per-VMCS basis (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Shadow VMCS secondary execution controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Shadow VMCS primary execution controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Shadow VMCS pin controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Add builder macros for shadowing controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Use adjusted pin controls for vmcs02 (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Copy PDPTRs to/from vmcs12 only when necessary (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't update GUEST_BNDCFGS if it's clean in HV eVMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Update vmcs12 for MSR_IA32_DEBUGCTLMSR when it's written (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Update vmcs12 for SYSENTER MSRs when they're written (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Update vmcs12 for MSR_IA32_CR_PAT when it's written (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't speculatively write APIC-access page address (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't speculatively write virtual-APIC page address (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't dump VMCS if virtual APIC page can't be mapped (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't reread VMCS-agnostic state when switching VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't "put" vCPU or host state when switching VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: simplify vmx_prepare_switch_to_{guest, host} (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't rewrite GUEST_PML_INDEX during nested VM-Entry (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Write ENCLS-exiting bitmap once per vmcs02 (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Always sync GUEST_BNDCFGS when it comes from vmcs01 (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Always signal #GP on WRMSR to MSR_IA32_CR_PAT with bad value (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Rename prepare_vmcs02_*_full to prepare_vmcs02_*_rare (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Sync rarely accessed guest fields only when needed (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Add helpers to identify shadowed VMCS fields (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Use descriptive names for VMCS sync functions and flags (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Lift sync_vmcs12() out of prepare_vmcs12() (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Track vmcs12 offsets for shadowed VMCS fields (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Intercept VMWRITEs to GUEST_{CS, SS}_AR_BYTES (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Intercept VMWRITEs to read-only shadow VMCS fields (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Handle NMIs, #MCs and async #PFs in common irqs-disabled fn (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move kvm_{before, after}_interrupt() calls to vendor code (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Store the host kernel's IDT base in a global variable (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Read cached VM-Exit reason to detect external interrupt (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: small cleanup in handle_exception (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Fix handling of #MC that occurs during VM-Entry (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: move MSR_IA32_POWER_CTL handling to common code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: offset is ensure to be in range (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: use same convention to name kvm_lapic_{set, clear}_vector() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: check kvm_apic_sw_enabled() is enough (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: add host poll control msrs (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: segment limit check: use access length (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: fix limit checking in get_vmx_mem_address() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add Intel CPUID.1F cpuid emulation support (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Use DR_TRAP_BITS instead of hard-coded 15 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: clean up conditions for asynchronous page fault handling (Vitaly Kuznetsov) [1749495] - [documentation] docs: amd-memory-encryption.rst get rid of warnings (Vitaly Kuznetsov) [1749495] - [virt] kvm: Convert kvm_lock to a mutex (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: remove unneeded 'asm volatile ("")' from vmcs_write64 (Vitaly Kuznetsov) [1749495] - [virt] kvm: irqchip: Use struct_size() in kzalloc() (Vitaly Kuznetsov) [1749495] - [x86] kvm/vmx: drop bad asm() clobber from nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: hide vcpu_setup in processor code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Emulate MSR_IA32_MISC_ENABLE MWAIT bit (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Provide a capability to disable cstate msr read intercepts (Vitaly Kuznetsov) [1749495] - [documentation] kvm: documentation: Add disable pause exits to KVM_CAP_X86_DISABLE_EXITS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: refine kvm_get_arch_capabilities() (Vitaly Kuznetsov) [1749495] - [virt] kvm: Directly return result from kvm_arch_check_processor_compat() (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Optimize timer latency further (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Delay trace_kvm_wait_lapic_expire tracepoint to after vmexit (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Extract adaptive tune timer advancement logic (Vitaly Kuznetsov) [1749495] - [x86] kvm/nsvm: properly map nested VMCB (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix reserved bits related calculation errors caused by MKTME (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move kvm_set_mmio_spte_mask() from x86.c to mmu.c (Vitaly Kuznetsov) [1749495] - [virt] kvm: fix compile on s390 part 2 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: fix return value for reserved EFER (Vitaly Kuznetsov) [1749495] - [tools] kvm_stat: fix fields filter for child events (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: aarch64: compile with warnings on (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/pmu: do not mask the value that is written to fixed PMUs (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/pmu: mask the result of rdpmc according to the width of the counters (Vitaly Kuznetsov) [1749495] - [x86] kvm/pmu: Set AMD's virt PMU version to 1 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: do not spam dmesg with VMCS/VMCB dumps (Vitaly Kuznetsov) [1749495] - [virt] kvm: Check irqchip mode before assign irqfd (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Remove duplicated TEST_ASSERT in hyperv_cpuid.c (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Expose per-vCPU timer_advance_ns to userspace (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Fix lapic_timer_advance_ns parameter overflow (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Fix -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Fix using __this_cpu_read() in preemptible context (Vitaly Kuznetsov) [1749495] - [virt] kvm: fix compilation on s390 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Include CPUID leaf 0x8000001e in kvm's supported CPUID (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Include multiple indices with CPUID leaf 0x8000001d (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Fix a condition in test_hv_cpuid() (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix spinlock taken warning during host resume (Vitaly Kuznetsov) [1749495] - [virt] kvm: fix compilation on aarch64 (Vitaly Kuznetsov) [1749495] - [x86] revert "kvm: nvmx: Expose RDPMC-exiting only when guest supports PMU" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix L1TF mitigation for shadow MMU (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Disable intercept for FS/GS base MSRs in vmcs02 when possible (Vitaly Kuznetsov) [1749495] - [tools] tests: kvm: Add tests to .gitignore (Vitaly Kuznetsov) [1749495] - [documentation] kvm: Introduce KVM_CAP_MANUAL_DIRTY_LOG_PROTECT2 (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix kvm_clear_dirty_log_protect off-by-(minus-)one (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix the bitmap range to copy during clear dirty (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: use direct accessors for RIP and RSP (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Use accessors for GPRs outside of dedicated caching logic (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Omit caching logic for always-available GPRs (Vitaly Kuznetsov) [1749495] - [x86] kvm, x86: Properly check whether a pfn is an MMIO or not (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use page_address_valid in a few more locations (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map for accessing the enlightened VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map for accessing the shadow VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm/nsvm: Use the new mapping API for mapping guest memory (Vitaly Kuznetsov) [1749495] - [x86] kvm/x86: Use kvm_vcpu_map in emulator_cmpxchg_emulated (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map when mapping the posted interrupt descriptor table (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map when mapping the virtual APIC page (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map when mapping the L1 MSR bitmap (Vitaly Kuznetsov) [1749495] - [x86] nvmx: handle_vmptrld: Use kvm_vcpu_map when copying VMCS12 from guest memory (Vitaly Kuznetsov) [1749495] - [virt] kvm: Introduce a new guest mapping API (Vitaly Kuznetsov) [1749495] - [x86] kvm: Handle PFNs outside of kernel reach when touching GPTEs (Vitaly Kuznetsov) [1749495] - [x86] nvmx: Update the PML table without mapping and unmapping the page (Vitaly Kuznetsov) [1749495] - [x86] nvmx: handle_vmon: Read 4 bytes from guest memory (Vitaly Kuznetsov) [1749495] - [x86] kvm: Implement HWCR support (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Include architectural defs header in capabilities.h (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: clean up some debug output (Vitaly Kuznetsov) [1749495] - [virt] kvm_main: fix some comments (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Skip delta_tsc shift-and-divide if the dividend is zero (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Check for a pending timer intr prior to start_hv_timer() (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Refactor ->set_hv_timer to use an explicit expired param (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Explicitly cancel the hv timer if it's pre-expired (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Busy wait for timer to expire when using hv_timer (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Nop emulation of MSR_IA32_POWER_CTL (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add support of clear Trace_ToPA_PMI status (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Inject PMI for KVM guest (Vitaly Kuznetsov) [1749495] - [documentation] revert "kvm: doc: Document the life cycle of a VM and its resources" (Vitaly Kuznetsov) [1749495] - [documentation] documentation: kvm: fix dirty log ioctl arch lists (Vitaly Kuznetsov) [1749495] - [x86] kvm: Make steal_time visible (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Inject #GP if guest attempts to set unsupported EFER bits (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Skip EFER vs. guest CPUID checks for host-initiated writes (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Return -EINVAL when signaling failure in VM-Entry helpers (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Return -EINVAL when signaling failure in pre-VM-Entry helpers (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Rename and split top-level consistency checks to match SDM (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Move guest non-reg state checks to VM-Exit path (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Check "load IA32_PAT" VM-entry control on vmentry (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Check "load IA32_PAT" VM-exit control on vmentry (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: optimize check for valid PAT value (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: clear VM_EXIT_SAVE_IA32_PAT (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: print more APICv fields in dump_vmcs (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Raise #GP when guest vCPU do not support PMU (Vitaly Kuznetsov) [1749495] - [documentation] kvm: doc: Document the life cycle of a VM and its resources (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: skip populating logical dest map if apic is not sw enabled (Bandan Das) [1728503] - [powerpc] kvm: ppc: book3s: Fix incorrect guest-to-user-translation error handling (David Gibson) [1749504] - [powerpc] kvm: Fall through switch case explicitly (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Fix CR0 setting in TM emulation (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Invalidate ERAT when flushing guest TLB entries (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Only write DAWR[X] when handling h_set_dawr in real mode (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: xive: Fix spelling mistake "acessing" -> "accessing" (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Make sure to load LPID for radix VCPUs (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Flush TLB on secondary radix threads (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Move HPT guest TLB flushing to C code (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Handle virtual mode in XIVE VCPU push code (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: smb->smp comment fixup (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s: Allocate guest TCEs on demand too (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Avoid lockdep debugging in TCE realmode handlers (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Fix lockdep warning when entering the guest (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Implement real mode H_PAGE_INIT handler (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Implement virtual mode H_PAGE_INIT handler (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s: Protect memslots while validating user address (David Gibson) [1749504] - [pci] PCI: hv: Use bytes 4 and 5 from instance ID as the PCI domain numbers (Mohammed Gamal) [1671288] - [pci] PCI: hv: Detect and fix Hyper-V PCI domain number collision (Mohammed Gamal) [1671288] - [fs] Revert "lockd: Show pid of lockd for remote locks" (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix an Oops in nfs4_do_setattr (Benjamin Coddington) [1732409] - [fs] NFSv4: Check the return value of update_open_stateid() (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix delegation state recovery (Benjamin Coddington) [1732409] - [fs] pnfs/flexfiles: Fix PTR_ERR() dereferences in ff_layout_track_ds_error (Benjamin Coddington) [1732409] - [fs] Revert "NFS: readdirplus optimization by cache mechanism" (memleak) (Benjamin Coddington) [1732409] - [fs] svcrdma: Ignore source port when computing DRC hash (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Use the correct TCP timeout for flexfiles I/O (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Fix bug only first CB_NOTIFY_LOCK is handled (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Again fix a race where CB_NOTIFY_LOCK fails to wake a waiter (Benjamin Coddington) [1732409] - [fs] SUNRPC fix regression in umount of a secure mount (Benjamin Coddington) [1732409] - [fs] NFS4: Fix v4.0 client state corruption when mount (Benjamin Coddington) [1732409] - [fs] NFSv4: When recovering state fails with EAGAIN, retry the same recovery (Benjamin Coddington) [1732409] - [fs] pnfs: Fix a problem where we gratuitously start doing I/O through the MDS (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure the bvecs are reset when we re-encode the RPC request (Benjamin Coddington) [1732409] - [fs] sunrpc/cache: remove the exporting of cache_seq_next (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a use after free when a server rejects the RPCSEC_GSS credential (Benjamin Coddington) [1732409] - [fs] xprtrdma: Fix an frwr_map recovery nit (Benjamin Coddington) [1732409] - [fs] NFSv4.1 fix incorrect return value in copy_file_range (Benjamin Coddington) [1732409] - [fs] NFS: Fix handling of reply page vector (Benjamin Coddington) [1732409] - [fs] NFS: Forbid setting AF_INET6 to "struct sockaddr_in"->sin_family. (Benjamin Coddington) [1732409] - [fs] nfsd: Don't release the callback slot unless it was actually held (Benjamin Coddington) [1732409] - [fs] nfsd/nfsd3_proc_readdir: fix buffer count and page pointers (Benjamin Coddington) [1732409] - [fs] sunrpc: don't mark uninitialised items as VALID. (Benjamin Coddington) [1732409] - [fs] SUNRPC: fix uninitialized variable warning (Benjamin Coddington) [1732409] - [fs] pNFS/flexfiles: Fix layoutstats handling during read failovers (Benjamin Coddington) [1732409] - [fs] NFS: Fix a typo in nfs_init_timeout_values() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't let RPC_SOFTCONN tasks time out if the transport is connected (Benjamin Coddington) [1732409] - [fs] NFS: fix mount/umount race in nlmclnt. (Benjamin Coddington) [1732409] - [fs] NFS: Fix nfs4_lock_state refcounting in nfs4_alloc_{lock, unlock}data() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove redundant check for the reply length in call_decode() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Handle the SYSTEM_ERR rpc error (Benjamin Coddington) [1732409] - [fs] SUNRPC: rpc_decode_header() must always return a non-zero value on error (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use the ENOTCONN error on socket disconnect (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix the minimal size for reply buffer allocation (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a client regression when handling oversized replies (Benjamin Coddington) [1732409] - [fs] pNFS: Fix a typo in pnfs_update_layout (Benjamin Coddington) [1732409] - [fs] SUNRPC: Take the transport send lock before binding+connecting (Benjamin Coddington) [1732409] - [fs] SUNRPC: Micro-optimise when the task is known not to be sleeping (Benjamin Coddington) [1732409] - [fs] SUNRPC: Check whether the task was transmitted before rebind/reconnect (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove redundant calls to RPC_IS_QUEUED() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up (Benjamin Coddington) [1732409] - [fs] nfsd: allow nfsv3 readdir request to be larger. (Benjamin Coddington) [1732409] - [fs] SUNRPC: Respect RPC call timeouts when retrying transmission (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up RPC back channel transmission (Benjamin Coddington) [1732409] - [fs] SUNRPC: Prevent thundering herd when the socket is not connected (Benjamin Coddington) [1732409] - [fs] nfsd: fix wrong check in write_v4_end_grace() (Benjamin Coddington) [1732409] - [fs] nfsd: fix memory corruption caused by readdir (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow dynamic allocation of back channel slots (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Bump the default callback session slot count to 16 (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert remaining GFP_NOIO, and GFP_NOWAIT sites in sunrpc (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Clean up mirror DS initialisation (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Remove dead code in ff_layout_mirror_valid() (Benjamin Coddington) [1732409] - [fs] NFS/flexfile: Simplify nfs4_ff_layout_select_ds_stateid() (Benjamin Coddington) [1732409] - [fs] NFS/flexfile: Simplify nfs4_ff_layout_ds_version() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Simplify ff_layout_get_ds_cred() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Simplify nfs4_ff_find_or_create_ds_client() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Simplify nfs4_ff_layout_select_ds_fh() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Speed up read failover when DSes are down (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Don't invalidate DS deviceids for being unresponsive (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Remove bogus checks for invalid deviceids (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Avoid unnecessary layout invalidations (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: refactor calls to fs4_ff_layout_prepare_ds() (Benjamin Coddington) [1732409] - [fs] NFSv4: Handle early exit in layoutget by returning an error (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Send LAYOUTERROR when failing over mirrored reads (Benjamin Coddington) [1732409] - [fs] NFSv4.2: Add client support for the generic 'layouterror' RPC call (Benjamin Coddington) [1732409] - [fs] NFSv4/flexfiles: Abort I/O early if the layout segment was invalidated (Benjamin Coddington) [1732409] - [fs] NFSv4/pnfs: Fix barriers in nfs4_mark_deviceid_unavailable() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Fix up sparse RCU annotations (Benjamin Coddington) [1732409] - [fs] NFSv4/flexfiles: Fix invalid deref in FF_LAYOUT_DEVID_NODE() (Benjamin Coddington) [1732409] - [fs] NFS: Add missing encode / decode sequence_maxsz to v4.2 operations (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Don't process the sequence op more than once. (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Reinitialise sequence results before retransmitting a request (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix an Oops in udp_poll() (Benjamin Coddington) [1732409] - [fs] NFS/pnfs: Bulk destroy of layouts needs to be safe w.r.t. umount (Benjamin Coddington) [1732409] - [fs] NFS: Fix a soft lockup in the delegation recovery code (Benjamin Coddington) [1732409] - [fs] nfsd: fix performance-limiting session calculation (Benjamin Coddington) [1732409] - [fs] svcrpc: fix UDP on servers with lots of threads (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove the redundant 'zerocopy' argument to xs_sendpages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Further cleanups of xs_sendpages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert socket page send code to use iov_iter() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert xs_send_kvec() to use iov_iter_kvec() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Initiate a connection close on an ESHUTDOWN error in stream receive (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't suppress socket errors when a message read completes (Benjamin Coddington) [1732409] - [fs] SUNRPC: Handle zero length fragments correctly (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't reset the stream record info when the receive worker is running (Benjamin Coddington) [1732409] - [fs] nfs: fix xfstest generic/099 failed on nfsv3 (Benjamin Coddington) [1732409] - [fs] NFS: Fix typo in comments of nfs_readdir_alloc_pages() (Benjamin Coddington) [1732409] - [fs] NFS: Remove redundant semicolon (Benjamin Coddington) [1732409] - [fs] NFS: readdirplus optimization by cache mechanism (Benjamin Coddington) [1732409] - [fs] fs/nfs: Fix nfs_parse_devname to not modify it's argument (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove pointless test in unx_match() (Benjamin Coddington) [1732409] - [fs] NFS: drop useless LIST_HEAD (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure rq_bytes_sent is reset before request transmission (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use poll() to fix up the socket requeue races (Benjamin Coddington) [1732409] - [fs] SUNRPC: Set memalloc_nofs_save() on all rpciod/xprtiod jobs (Benjamin Coddington) [1732409] - [fs] NFS: Fix sparse annotations for nfs_set_open_stateid_locked() (Benjamin Coddington) [1732409] - [fs] NFS: Fix up documentation warnings (Benjamin Coddington) [1732409] - [fs] NFS: ENOMEM should also be a fatal error. (Benjamin Coddington) [1732409] - [fs] NFS: EINTR is also a fatal error. (Benjamin Coddington) [1732409] - [fs] NFS: Ensure NFS writeback allocations don't recurse back into NFS. (Benjamin Coddington) [1732409] - [fs] NFS: Pass error information to the pgio error cleanup routine (Benjamin Coddington) [1732409] - [fs] NFS: Clean up list moves of struct nfs_page (Benjamin Coddington) [1732409] - [fs] NFS: Don't recoalesce on error in nfs_pageio_complete_mirror() (Benjamin Coddington) [1732409] - [fs] NFS: Fix an I/O request leakage in nfs_do_recoalesce (Benjamin Coddington) [1732409] - [fs] NFS: Fix I/O request leakages (Benjamin Coddington) [1732409] - [fs] Revert "nfsd4: return default lease period" (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use au_rslack when computing reply buffer size (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add rpc_auth::au_ralign field (Benjamin Coddington) [1732409] - [fs] SUNRPC: Make AUTH_SYS and AUTH_NULL set au_verfsize (Benjamin Coddington) [1732409] - [fs] NFS: Account for XDR pad of buf->pages (Benjamin Coddington) [1732409] - [fs] SUNRPC: Introduce rpc_prepare_reply_pages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove xdr_buf_trim() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Introduce trace points in rpc_auth_gss.ko (Benjamin Coddington) [1732409] - [fs] xprtrdma: Squelch a sparse warning (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use struct xdr_stream when decoding RPC Reply header (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up rpc_verify_header() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use struct xdr_stream when constructing RPC Call header (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add build option to disable support for insecure enctypes (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove rpc_xprt::tsh_size (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove some dprintk() call sites from auth functions (Benjamin Coddington) [1732409] - [fs] NFS: Add trace events to report non-zero NFS status codes (Benjamin Coddington) [1732409] - [fs] NFS: Remove print_overflow_msg() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add trace event that reports reply page vector alignment (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add XDR overflow trace event (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add xdr_stream::rqst field (Benjamin Coddington) [1732409] - [fs] SUNRPC: Display symbolic flag names in RPC trace events (Benjamin Coddington) [1732409] - [fs] rpc: properly check debugfs dentry before using it (Benjamin Coddington) [1732409] - [fs] svcrpc: fix unlikely races preventing queueing of sockets (Benjamin Coddington) [1732409] - [fs] svcrpc: svc_xprt_has_something_to_do seems a little long (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't allow compiler optimisation of svc_xprt_release_slot() (Benjamin Coddington) [1732409] - [fs] nfsd: fix an IS_ERR() vs NULL check (Benjamin Coddington) [1732409] - [fs] nfsd: Fix error return values for nfsd4_clone_file_range() (Benjamin Coddington) [1732409] - [fs] nfs: Fix NULL pointer dereference of dev_name (Benjamin Coddington) [1732409] - [fs] SUNRPC: Address Kerberos performance/behavior regression (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure we respect the RPCSEC_GSS sequence number limit (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure rq_bytes_sent is reset before request transmission (Benjamin Coddington) [1732409] - [fs] NFSv4.2 fix unnecessary retry in nfs4_copy_file_range (Benjamin Coddington) [1732409] - [fs] sunrpc: kernel BUG at kernel/cred.c:825! (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix TCP receive code on archs with flush_dcache_page() (Benjamin Coddington) [1732409] - [fs] sunrpc: convert to DEFINE_SHOW_ATTRIBUTE (Benjamin Coddington) [1732409] - [fs] sunrpc: Add xprt after nfs4_test_session_trunk() (Benjamin Coddington) [1732409] - [fs] sunrpc: convert unnecessary GFP_ATOMIC to GFP_NOFS (Benjamin Coddington) [1732409] - [fs] sunrpc: handle ENOMEM in rpcb_getport_async (Benjamin Coddington) [1732409] - [fs] NFS: remove unnecessary test for IS_ERR(cred) (Benjamin Coddington) [1732409] - [fs] NFSv4.2 fix async copy reboot recovery (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix some kernel doc complaints (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify defining common RPC trace events (Benjamin Coddington) [1732409] - [fs] NFS: Fix NFSv4 symbolic trace point output (Benjamin Coddington) [1732409] - [fs] nfs: fixed broken compilation in nfs_callback_up_net() (Benjamin Coddington) [1732409] - [fs] nfs: minor typo in nfs4_callback_up_net() (Benjamin Coddington) [1732409] - [fs] sunrpc: fix debug message in svc_create_xprt() (Benjamin Coddington) [1732409] - [fs] sunrpc: remove svc_rdma_bc_class (Benjamin Coddington) [1732409] - [fs] sunrpc: remove unused bc_up operation from rpc_xprt_ops (Benjamin Coddington) [1732409] - [fs] sunrpc: use SVC_NET() in svcauth_gss_* functions (Benjamin Coddington) [1732409] - [fs] nfsd: drop useless LIST_HEAD (Benjamin Coddington) [1732409] - [fs] SUNRPC discard cr_uid from struct rpc_cred. (Benjamin Coddington) [1732409] - [fs] SUNRPC: simplify auth_unix. (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove crbind rpc_cred operation (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove generic cred code. (Benjamin Coddington) [1732409] - [fs] NFS/NFSD/SUNRPC: replace generic creds with 'struct cred'. (Benjamin Coddington) [1732409] - [fs] NFS: struct nfs_open_dir_context: convert rpc_cred pointer to cred. (Benjamin Coddington) [1732409] - [fs] NFS: change access cache to use 'struct cred'. (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove RPCAUTH_AUTH_NO_CRKEY_TIMEOUT (Benjamin Coddington) [1732409] - [fs] NFS: move credential expiry tracking out of SUNRPC into NFS. (Benjamin Coddington) [1732409] - [fs] SUNRPC: add side channel to use non-generic cred for rpc call. (Benjamin Coddington) [1732409] - [fs] SUNRPC: introduce RPC_TASK_NULLCREDS to request auth_none (Benjamin Coddington) [1732409] - [fs] NFS/SUNRPC: don't lookup machine credential until rpcauth_bindcred(). (Benjamin Coddington) [1732409] - [fs] SUNRPC: discard RPC_DO_ROOTOVERRIDE() (Benjamin Coddington) [1732409] - [fs] NFSv4: don't require lock for get_renew_cred or get_machine_cred (Benjamin Coddington) [1732409] - [fs] NFSv4: add cl_root_cred for use when machine cred is not available. (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove machine_cred field from struct auth_cred (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove uid and gid from struct auth_cred (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove groupinfo from struct auth_cred. (Benjamin Coddington) [1732409] - [fs] SUNRPC: add 'struct cred *' to auth_cred and rpc_cred (Benjamin Coddington) [1732409] - [fs] cred: allow get_cred() and put_cred() to be given NULL. (Benjamin Coddington) [1732409] - [fs] cred: export get_task_cred(). (Benjamin Coddington) [1732409] - [fs] cred: add get_cred_rcu() (Benjamin Coddington) [1732409] - [fs] cred: add cred_fscmp() for comparing creds. (Benjamin Coddington) [1732409] - [fs] SUNRPC: allow /proc entries without CONFIG_SUNRPC_DEBUG (Benjamin Coddington) [1732409] - [fs] nfs: fix comment to nfs_generic_pg_test which does the opposite (Benjamin Coddington) [1732409] - [fs] NFSv4: cleanup remove unused nfs4_xdev_fs_type (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove xprt_connect_status() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a race with XPRT_CONNECTING (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix disconnection races (Benjamin Coddington) [1732409] - [fs] Revert "[net] Revert "sunrpc: Ensure we always close the socket after a connection shuts down"" (Benjamin Coddington) [1732409] - [fs] lockd: Show pid of lockd for remote locks (Benjamin Coddington) [1732409] - [fs] NFSD remove OP_CACHEME from 4.2 op_flags (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't force a redundant disconnection in xs_read_stream() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up socket polling (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use the discard iterator rather than MSG_TRUNC (Benjamin Coddington) [1732409] - [fs] SUNRPC: Treat EFAULT as a truncated message in xs_read_stream_request() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up handling of the XDRBUF_SPARSE_PAGES flag (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix RPC receive hangs (Benjamin Coddington) [1732409] - [fs] nfsd: Return EPERM, not EACCES, in some SETATTR cases (Benjamin Coddington) [1732409] - [fs] sunrpc: fix cache_head leak due to queued request (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a potential race in xprt_connect() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a memory leak in call_encode() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix leak of krb5p encode pages (Benjamin Coddington) [1732409] - [fs] SUNRPC: call_connect_status() must handle tasks that got transmitted (Benjamin Coddington) [1732409] - [fs] nfs: don't dirty kernel pages read by direct-io (Benjamin Coddington) [1732409] - [fs] NFS: use locks_copy_lock() to copy locks. (Benjamin Coddington) [1732409] - [fs] nfsd: clean up indentation, increase indentation in switch statement (Benjamin Coddington) [1732409] - [fs] nfsd: fix a warning in __cld_pipe_upcall() (Benjamin Coddington) [1732409] - [fs] lockd: fix decoding of TEST results (Benjamin Coddington) [1732409] - [fs] nfsd4: fix crash on writing v4_end_grace before nfsd startup (Benjamin Coddington) [1732409] - [fs] nfsd4: skip unused assignment (Benjamin Coddington) [1732409] - [fs] nfsd4: forbid all renames during grace period (Benjamin Coddington) [1732409] - [fs] nfsd4: remove unused nfs4_check_olstateid parameter (Benjamin Coddington) [1732409] - [fs] nfsd4: zero-length WRITE should succeed (Benjamin Coddington) [1732409] - [fs] NFSv4.2 copy do not allocate memory under the lock (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a NFSv4 state manager deadlock (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix an Oops during delegation callbacks (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a bogus get/put in generic_key_to_expire() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a Oops when destroying the RPCSEC_GSS credential cache (Benjamin Coddington) [1732409] - [fs] NFSv4: Ensure that the state manager exits the loop on SIGKILL (Benjamin Coddington) [1732409] - [fs] NFSv4: Don't exit the state manager without clearing NFS4CLNT_MANAGER_RUNNING (Benjamin Coddington) [1732409] - [fs] SUNRPC: drop pointless static qualifier in xdr_get_next_encode_buffer() (Benjamin Coddington) [1732409] - [fs] nfsd: COPY and CLONE operations require the saved filehandle to be set (Benjamin Coddington) [1732409] - [fs] sunrpc: correct the computation for page_ptr when truncating (Benjamin Coddington) [1732409] - [fs] NFS: fix spelling mistake, EACCESS -> EACCES (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use atomic(64)_t for seq_send(64) (Benjamin Coddington) [1732409] - [fs] nfsd: Fix an Oops in free_session() (Benjamin Coddington) [1732409] - [fs] nfsd: correctly decrement odstate refcount in error path (Benjamin Coddington) [1732409] - [fs] nfsd: fix fall-through annotations (Benjamin Coddington) [1732409] - [fs] knfsd: Improve lookup performance in the duplicate reply cache using an rbtree (Benjamin Coddington) [1732409] - [fs] knfsd: Further simplify the cache lookup (Benjamin Coddington) [1732409] - [fs] knfsd: Simplify NFS duplicate replay cache (Benjamin Coddington) [1732409] - [fs] knfsd: Remove dead code from nfsd_cache_lookup (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify TCP receive code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Replace the cache_detail->hash_lock with a regular spinlock (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove non-RCU protected lookup (Benjamin Coddington) [1732409] - [fs] NFS: Fix up a typo in nfs_dns_ent_put (Benjamin Coddington) [1732409] - [fs] NFS: Lockless DNS lookups (Benjamin Coddington) [1732409] - [fs] knfsd: Lockless lookup of NFSv4 identities. (Benjamin Coddington) [1732409] - [fs] SUNRPC: Lockless server RPCSEC_GSS context lookup (Benjamin Coddington) [1732409] - [fs] knfsd: Allow lockless lookups of the exports (Benjamin Coddington) [1732409] - [fs] SUNRPC: Make server side AUTH_UNIX use lockless lookups (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow cache lookups to use RCU protection rather than the r/w spinlock (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert the auth cred cache to use refcount_t (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert auth creds to use refcount_t (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify lookup code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up the AUTH cache code (Benjamin Coddington) [1732409] - [fs] NFS: change sign of nfs_fh length (Benjamin Coddington) [1732409] - [fs] sunrpc: safely reallow resvport min/max inversion (Benjamin Coddington) [1732409] - [fs] nfs: remove redundant call to nfs_context_set_write_error() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a compile warning for cmpxchg64() (Benjamin Coddington) [1732409] - [fs] SUNRPC: use cmpxchg64() in gss_seq_send64_fetch_and_inc() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor sunrpc_cache_lookup (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add lockless lookup of the server's auth domain (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove the server 'authtab_lock' and just use RCU (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix lookup revalidate of regular files (Benjamin Coddington) [1732409] - [fs] NFS: Refactor nfs_lookup_revalidate() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Replace krb5_seq_lock with a lockless scheme (Benjamin Coddington) [1732409] - [fs] SUNRPC: Lockless lookup of RPCSEC_GSS mechanisms (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove rpc_authflavor_lock in favour of RCU locking (Benjamin Coddington) [1732409] - [fs] NFS: Remove private spinlock in struct nfs_pgio_header (Benjamin Coddington) [1732409] - [fs] NFSv3: Improve NFSv3 performance when server returns no post-op attributes (Benjamin Coddington) [1732409] - [fs] NFSv4: Split out NFS v4.2 copy completion functions (Benjamin Coddington) [1732409] - [fs] NFS: Reduce indentation of nfs4_recovery_handle_error() (Benjamin Coddington) [1732409] - [fs] NFS: Reduce indentation of the switch statement in nfs4_reclaim_open_state() (Benjamin Coddington) [1732409] - [fs] NFS: Split out the body of nfs4_reclaim_open_state() (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Fix the r/wsize checking (Benjamin Coddington) [1732409] - [fs] NFSv4: Convert struct nfs4_state to use refcount_t (Benjamin Coddington) [1732409] - [fs] NFSv4: Convert open state lookup to use RCU (Benjamin Coddington) [1732409] - [fs] NFS: Convert lookups of the open context to RCU (Benjamin Coddington) [1732409] - [fs] NFS: Simplify internal check for whether file is open for write (Benjamin Coddington) [1732409] - [fs] NFS: Convert lookups of the lock context to RCU (Benjamin Coddington) [1732409] - [fs] pNFS: Don't allocate more pages than we need to fit a layoutget response (Benjamin Coddington) [1732409] - [fs] pNFS: Don't zero out the array in nfs4_alloc_pages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Unexport xdr_partial_copy_from_skb() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up xs_udp_data_receive() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow AF_LOCAL sockets to use the generic stream receive (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up - rename xs_tcp_data_receive() to xs_stream_data_receive() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify TCP receive code by switching to using iterators (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a bvec array to struct xdr_buf for use with iovec_iter() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a label for RPC calls that require allocation on receive (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert the xprt->sending queue back to an ordinary wait queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix priority queue fairness (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert xprt receive queue to use an rbtree (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't take transport->lock unnecessarily when taking XPRT_LOCK (Benjamin Coddington) [1732409] - [fs] SUNRPC: Cleanup: remove the unused 'task' argument from the request_send() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up transport write space handling (Benjamin Coddington) [1732409] - [fs] SUNRPC: Turn off throttling of RPC slots for TCP sockets (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow soft RPC calls to time out when waiting for the XPRT_LOCK (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow calls to xprt_transmit() to drain the entire transmit queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Enqueue swapper tagged RPCs at the head of the transmit queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Support for congestion control when queuing is enabled (Benjamin Coddington) [1732409] - [fs] SUNRPC: Improve latency for interactive tasks (Benjamin Coddington) [1732409] - [fs] SUNRPC: Move RPC retransmission stat counter to xprt_transmit() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify xprt_prepare_transmit() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't reset the request 'bytes_sent' counter when releasing XPRT_LOCK (Benjamin Coddington) [1732409] - [fs] SUNRPC: Treat the task and request as separate in the xprt_ops->send_request() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up the back channel transmit (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor RPC call encoding (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a transmission queue for RPC requests (Benjamin Coddington) [1732409] - [fs] SUNRPC: Distinguish between the slot allocation list and receive queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Minor cleanup for call_transmit() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor xprt_transmit() to remove wait for reply code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor xprt_transmit() to remove the reply queue code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Rename xprt->recv_lock to xprt->queue_lock (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't wake queued RPC calls multiple times in xprt_transmit (Benjamin Coddington) [1732409] - [fs] SUNRPC: Test whether the task is queued before grabbing the queue spinlocks (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a helper to wake up a sleeping rpc_task and set its status (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor the transport request pinning (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify dealing with aborted partially transmitted messages (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add socket transmit queue offset tracking (Benjamin Coddington) [1732409] - [fs] SUNRPC: Move reset of TCP state variables into the reconnect code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Rename TCP receive-specific state variables (Benjamin Coddington) [1732409] - [fs] SUNRPC: Avoid holding locks across the XDR encoding of the RPC message (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify identification of when the message send/receive is complete (Benjamin Coddington) [1732409] - [fs] SUNRPC: The transmitted message must lie in the RPCSEC window of validity (Benjamin Coddington) [1732409] - [fs] SUNRPC: If there is no reply expected, bail early from call_decode (Benjamin Coddington) [1732409] - [fs] nfsd: remove set but not used variable 'dirp' (Benjamin Coddington) [1732409] - [fs] NFSD introduce async copy feature (Benjamin Coddington) [1732409] - [fs] NFSD OFFLOAD_CANCEL xdr (Benjamin Coddington) [1732409] - [fs] NFSD OFFLOAD_STATUS xdr (Benjamin Coddington) [1732409] - [fs] NFSD CB_OFFLOAD xdr (Benjamin Coddington) [1732409] - [fs] NFS: Don't open code clearing of delegation state (Benjamin Coddington) [1732409] - [fs] NFSv4.1 fix infinite loop on I/O. (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a tracepoint Oops in initiate_file_draining() (Benjamin Coddington) [1732409] - [fs] pNFS: Ensure we return the error if someone kills a waiting layoutget (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a tracepoint Oops in initiate_file_draining() (Benjamin Coddington) [1732409] - [fs] sunrpc: Add comment defining gssd upcall API keywords (Benjamin Coddington) [1732409] - [fs] nfsd: Remove callback_cred (Benjamin Coddington) [1732409] - [fs] nfsd: Use correct credential for NFSv4.0 callback with GSS (Benjamin Coddington) [1732409] - [fs] sunrpc: Extract target name into svc_cred (Benjamin Coddington) [1732409] - [fs] sunrpc: Enable the kernel to specify the hostname part of service principals (Benjamin Coddington) [1732409] - [fs] pNFS: Remove unwanted optimisation of layoutget (Benjamin Coddington) [1732409] - [fs] pNFS/flexfiles: ff_layout_pg_init_read should exit on error (Benjamin Coddington) [1732409] - [fs] pNFS: Treat RECALLCONFLICT like DELAY... (Benjamin Coddington) [1732409] - [fs] pNFS: When updating the stateid in layoutreturn, also update the recall range (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a sleep in atomic context in nfs4_callback_sequence() (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix locking in pnfs_generic_recover_commit_reqs (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a typo in nfs4_init_channel_attrs() (Benjamin Coddington) [1732409] - [fs] NFSv4: Don't busy wait if NFSv4 session draining is interrupted (Benjamin Coddington) [1732409] - [fs] NFS recover from destination server reboot for copies (Benjamin Coddington) [1732409] - [fs] nfsd: use true and false for boolean values (Benjamin Coddington) [1732409] - [fs] nfsd: constify write_op[] (Benjamin Coddington) [1732409] - [fs] fs/nfsd: Delete invalid assignment statements in nfsd4_decode_exchange_id (Benjamin Coddington) [1732409] - [fs] NFSD: Handle full-length symlinks (Benjamin Coddington) [1732409] - [fs] NFSD: Refactor the generic write vector fill helper (Benjamin Coddington) [1732409] - [fs] nfsd: Mark expected switch fall-through (Benjamin Coddington) [1732409] - [fs] nfsd: fix leaked file lock with nfs exported overlayfs (Benjamin Coddington) [1732409] - [fs] NFS add a simple sync nfs4_proc_commit after async COPY (Benjamin Coddington) [1732409] - [fs] NFS handle COPY ERR_OFFLOAD_NO_REQS (Benjamin Coddington) [1732409] - [fs] NFS send OFFLOAD_CANCEL when COPY killed (Benjamin Coddington) [1732409] - [fs] NFS export nfs4_async_handle_error (Benjamin Coddington) [1732409] - [fs] NFS handle COPY reply CB_OFFLOAD call race (Benjamin Coddington) [1732409] - [fs] NFS add support for asynchronous COPY (Benjamin Coddington) [1732409] - [fs] NFS COPY xdr handle async reply (Benjamin Coddington) [1732409] - [fs] NFS OFFLOAD_CANCEL xdr (Benjamin Coddington) [1732409] - [fs] NFS CB_OFFLOAD xdr (Benjamin Coddington) [1732409] - [fs] NFS: Use an appropriate work queue for direct-write completion (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix error handling in nfs4_sp4_select_mode() (Benjamin Coddington) [1732409] - [fs] pnfs: Use true and false for boolean values (Benjamin Coddington) [1732409] - [fs] pnfs: pnfs_find_lseg() should not check NFS_LSEG_LAYOUTRETURN (Benjamin Coddington) [1732409] - [fs] NFS: Mark expected switch fall-throughs (Benjamin Coddington) [1732409] - [fs] NFSv4: Mark the inode change attribute up to date in update_changeattr() (Benjamin Coddington) [1732409] - [fs] NFSv4: Detect nlink changes on cross-directory renames too (Benjamin Coddington) [1732409] - [fs] NFSv4: bump/drop the nlink count on the parent dir when we mkdir/rmdir (Benjamin Coddington) [1732409] - [fs] pnfs: Fix handling of NFS4ERR_OLD_STATEID replies to layoutreturn (Benjamin Coddington) [1732409] - [fs] sunrpc: whitespace fixes (Benjamin Coddington) [1732409] - [fs] NFSv4 client live hangs after live data migration recovery (Benjamin Coddington) [1732409] - [fs] NFSv4.0 fix client reference leak in callback (Benjamin Coddington) [1732409] - [fs] sunrpc: kstrtoul() can also return -ERANGE (Benjamin Coddington) [1732409] - [fs] NFS: silence a harmless uninitialized variable warning (Benjamin Coddington) [1732409] - [fs] net/sunrpc: Make rpc_auth_create_args a const (Benjamin Coddington) [1732409] - [fs] pnfs/blocklayout: off by one in bl_map_stripe() (Benjamin Coddington) [1732409] - [fs] nfs: Referrals not inheriting proto setting from parent (Benjamin Coddington) [1732409] - [fs] nfs: initiate returning delegation when reclaiming one that's been recalled (Benjamin Coddington) [1732409] - [fs] fs: nfs: Adding new return type vm_fault_t (Benjamin Coddington) [1732409] - [fs] nfs: add error check in nfs_idmap_prepare_message() (Benjamin Coddington) [1732409] - [fs] NFS: More excessive attribute revalidation in nfs_execute_ok() (Benjamin Coddington) [1732409] - [fs] NFS: Fix excessive attribute revalidation in nfs_execute_ok() (Benjamin Coddington) [1732409] - [fs] NFS: Ensure we immediately start writeback on rescheduled writes (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Fix a potential layoutget/layoutrecall deadlock (Benjamin Coddington) [1732409] - [fs] pNFS: Parse the results of layoutget on open even if permissions checks fail (Benjamin Coddington) [1732409] - [fs] NFS: Allow optimisation of lseek(fd, SEEK_CUR, 0) on directories (Benjamin Coddington) [1732409] - [fs] pNFS: Wait for stale layoutget calls to complete in pnfs_update_layout() (Benjamin Coddington) [1732409] - [fs] pNFS/flexfiles: Ensure we always return a layout if it has layoutstats (Benjamin Coddington) [1732409] - [fs] pNFS: Ignore non-recalled layouts in pnfs_layout_need_return() (Benjamin Coddington) [1732409] - [fs] pNFS: Don't update the stateid when replying NFS4ERR_DELAY to a layout recall (Benjamin Coddington) [1732409] - [fs] pNFS: Don't discard layout segments that are marked for return (Benjamin Coddington) [1732409] - [fs] nfsd: don't advertise a SCSI layout for an unsupported request_queue (Benjamin Coddington) [1732409] - [fs] nfsd: fix corrupted reply to badly ordered compound (Benjamin Coddington) [1732409] - [fs] nfsd: clarify check_op_ordering (Benjamin Coddington) [1732409] - [fs] nfsd: update obselete comment referencing the BKL (Benjamin Coddington) [1732409] - [fs] nfsd4: cleanup sessionid in nfsd4_destroy_session (Benjamin Coddington) [1732409] - [fs] nfsd4: less confusing nfsd4_compound_in_session (Benjamin Coddington) [1732409] - [fs] nfsd4: support change_attr_type attribute (Benjamin Coddington) [1732409] - [fs] nfsd: fix NFSv4 time_delta attribute (Benjamin Coddington) [1732409] - [fs] nfsd4: return default lease period (Benjamin Coddington) [1732409] - [fs] nfsd4: extend reclaim period for reclaiming clients (Benjamin Coddington) [1732409] - [netdrv] i40e: Do not check VF state in i40e_ndo_get_vf_config (Stefan Assmann) [1752498] - [netdrv] i40e: Add support for X710 device (Stefan Assmann) [1752891] - [mm] mm/oom_kill.c: add task UID to info message on an oom kill (Joel Savitz) [1693039] - [pci] ACPICA: Increase total number of possible Owner IDs (Al Stone) [1713050] - [powerpc] powerpc/pseries: correctly track irq state in default idle (Steve Best) [1751971] - [powerpc] powerpc/imc: Dont create debugfs files for cpu-less nodes (Steve Best) [1726031] - [fs] userfaultfd_release: always remove uffd flags and clear vm_userfaultfd_ctx (Alex Gladkov) [1749763] - [infiniband] RDMA/bnxt_re: Fix stack-out-of-bounds in bnxt_qplib_rcfw_send_message (Selvin Xavier) [1643312] - [drm] drm/bochs: Fix connector leak during driver unload (Sam Bobroff) [1463490] - [tools] selftests: Remove forced unbuffering for test running (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Add test plan API to kselftest.h and adjust callers (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Remove KSFT_TAP_LEVEL (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Move test output to diagnostic lines (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Distinguish between missing and non-executable (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Add plan line and fix result line syntax (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Extract logic for multiple test runs (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Use runner.sh for emit targets (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Extract single-test shell logic from lib.mk (Desnes Augusto Nunes do Rosario) [1721461] - [tools] x86/selftests/pkeys: Fork() to check for state being preserved (Vladis Dronov) [1738880] - [x86] x86/pkeys: Properly copy pkey state at fork() (Vladis Dronov) [1738880] - [netdrv] cxgb4: fix a memory leak bug (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Prefer pcie_capability_read_word() (Jonathan Toppins) [1725776] - [netdrv] allocate_flower_entry: should check for null deref (Jonathan Toppins) [1725776] - [netdrv] cxgb4: reduce kernel stack usage in cudbg_collect_mem_region() (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Add MPS refcounting for alloc/free mac filters (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Add MPS TCAM refcounting for cxgb4 change mac (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Add MPS TCAM refcounting for raw mac filters (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Re-work the logic for mps refcounting (Jonathan Toppins) [1725776] - [netdrv] cxgb4/libcxgb/cxgb4i/cxgbit: enable eDRAM page pods for iSCSI (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Set initial IRQ affinity hints (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Make t4_get_tp_e2c_map static (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Revert "cxgb4: Remove SGE_HOST_PAGE_SIZE dependency on page size" (Jonathan Toppins) [1725776] - [netdrv] cxgb4: offload VLAN flows regardless of VLAN ethtype (Jonathan Toppins) [1725776] - [netdrv] cxgb4: use firmware API for validating filter spec (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Enable hash filter with offload (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Fix error path in cxgb4_init_module (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Delete all hash and TCAM filters before resource cleanup (Jonathan Toppins) [1725776] - [netdrv] cxgb4/cxgb4vf_main: Mark expected switch fall-through (Jonathan Toppins) [1725776] - [netdrv] cxgb4/cxgb4vf: Display advertised FEC in ethtool (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Update 1.23.3.0 as the latest firmware supported. (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Update 1.22.9.0 as the latest firmware supported. (Jonathan Toppins) [1725776] - [netdrv] cxgb4/l2t: Use struct_size() in kvzalloc() (Jonathan Toppins) [1725776] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Jonathan Toppins) [1725776] - [netdrv] crypto/chelsio/chtls: macro correction in tx path (Jonathan Toppins) [1725776]- [kernel] rcu: Add sparse check to rcu_assign_pointer() (Waiman Long) [1737054] - [kernel] rcu: Fix obsolete DYNTICK_IRQ_NONIDLE comment (Waiman Long) [1737054] - [kernel] rcu: Repair rcu_nmi_exit() docbook header (Waiman Long) [1737054] - [kernel] rcu: Remove preemption disabling from expedited CPU selection (Waiman Long) [1737054] - [kernel] rcu: Rename rcu_process_callbacks() to rcu_core() for Tree RCU (Waiman Long) [1737054] - [kernel] rcu: Rename rcu_check_callbacks() to rcu_sched_clock_irq() (Waiman Long) [1737054] - [kernel] rcu: Docbook for rcu_head_init() and rcu_head_after_call_rcu() (Waiman Long) [1737054] - [documentation] doc: Fix outdated links (Waiman Long) [1737054] - [documentation] doc: CPU-hotplug notifiers cannot invoke synchronize_srcu() or srcu_barrier() (Waiman Long) [1737054] - [documentation] doc: Now jiffies_till_sched_qs solicits help from cond_resched() (Waiman Long) [1737054] - [kernel] rcuperf: Stop abusing IS_ENABLED() (Waiman Long) [1737054] - [kernel] rcutorture: Add grace period after CPU offline (Waiman Long) [1737054] - [kernel] torture: Explain and simplify odd "for" loop in mkinitrd.sh (Waiman Long) [1737054] - [kernel] rcutorture: Record grace periods in forward-progress histogram (Waiman Long) [1737054] - [kernel] rcu: Prevent needless ->gp_seq_needed update in __note_gp_changes() (Waiman Long) [1737054] - [kernel] rcu: Do RCU GP kthread self-wakeup from softirq and interrupt (Waiman Long) [1737054] - [kernel] rcu: Add sysrq rcu_node-dump capability (Waiman Long) [1737054] - [kernel] rcu: Protect rcu_check_gp_kthread_starvation() access to ->gp_flags (Waiman Long) [1737054] - [kernel] rcu: Improve diagnostics for failed RCU grace-period start (Waiman Long) [1737054] - [kernel] rcu: Update NOCB comments (Waiman Long) [1737054] - [kernel] rcu: Remove unused rcu_cpu_kthread_cpu per-CPU variable (Waiman Long) [1737054] - [kernel] rcu: Move rcu_cpu_has_work to rcu_data structure (Waiman Long) [1737054] - [kernel] rcu: Remove unused rcu_cpu_kthread_loops per-CPU variable (Waiman Long) [1737054] - [kernel] rcu: Move rcu_cpu_kthread_status to rcu_data structure (Waiman Long) [1737054] - [kernel] rcu: Move rcu_cpu_kthread_task to rcu_data structure (Waiman Long) [1737054] - [kernel] rcu: Accommodate zero jiffies_till_first_fqs and kthread kicking (Waiman Long) [1737054] - [kernel] rcu: Remove wrapper definitions for obsolete RCU update functions (Waiman Long) [1737054] - [kernel] rcu: Discard separate per-CPU callback counts (Waiman Long) [1737054] - [kernel] rcu: Inline _synchronize_rcu_expedited() into synchronize_rcu_expedited() (Waiman Long) [1737054] - [kernel] rcu: Consolidate PREEMPT and !PREEMPT synchronize_rcu() (Waiman Long) [1737054] - [kernel] rcu: Consolidate PREEMPT and !PREEMPT synchronize_rcu_expedited() (Waiman Long) [1737054] - [kernel] rcu: Determine expedited-GP IPI handler at build time (Waiman Long) [1737054] - [kernel] rcu: Inline rcu_kthread_do_work() into its sole remaining caller (Waiman Long) [1737054] - [kernel] rcu: Eliminate RCU_BH_FLAVOR and RCU_SCHED_FLAVOR (Waiman Long) [1737054] - [kernel] rcu: Inline force_quiescent_state() into rcu_force_quiescent_state() (Waiman Long) [1737054] - [kernel] rcu: Make expedited IPI handler return after handling critical section (Waiman Long) [1737054] - [kernel] rcu: Rename and comment changes due to only one rcuo kthread per CPU (Waiman Long) [1737054] - [kernel] sched: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] sched: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [net] net/core: Replace call_rcu_bh() and synchronize_rcu_bh() (Waiman Long) [1737054] - [net] netpoll: allow cleanup to be synchronous (Waiman Long) [1737054] - [net] netfilter: Replace call_rcu_bh(), rcu_barrier_bh(), and synchronize_rcu_bh() (Waiman Long) [1737054] - [kernel] uprobes: Use synchronize_rcu() not synchronize_sched() (Waiman Long) [1737054] - [kernel] rcutorture: Don't do busted forward-progress testing (Waiman Long) [1737054] - [kernel] rcutorture: Use 100ms buckets for forward-progress callback histograms (Waiman Long) [1737054] - [kernel] rcutorture: Recover from OOM during forward-progress tests (Waiman Long) [1737054] - [kernel] rcutorture: Print forward-progress test age upon failure (Waiman Long) [1737054] - [kernel] rcutorture: Print time since GP end upon forward-progress failure (Waiman Long) [1737054] - [kernel] rcutorture: Print histogram of CB invocation at OOM time (Waiman Long) [1737054] - [kernel] rcutorture: Print GP age upon forward-progress failure (Waiman Long) [1737054] - [kernel] rcu: Print per-CPU callback counts for forward-progress failures (Waiman Long) [1737054] - [kernel] rcu: Account for nocb-CPU callback counts in RCU CPU stall warnings (Waiman Long) [1737054] - [kernel] rcutorture: Dump grace-period diagnostics upon forward-progress OOM (Waiman Long) [1737054] - [kernel] rcutorture: Prepare for asynchronous access to rcu_fwd_startat (Waiman Long) [1737054] - [kernel] torture: Remove unnecessary "ret" variables (Waiman Long) [1737054] - [kernel] rcutorture: Affinity forward-progress test to avoid housekeeping CPUs (Waiman Long) [1737054] - [kernel] rcutorture: Break up too-long rcu_torture_fwd_prog() function (Waiman Long) [1737054] - [kernel] rcutorture: Remove cbflood facility (Waiman Long) [1737054] - [kernel] torture: Bring any extra CPUs online during kernel startup (Waiman Long) [1737054] - [kernel] rcutorture: Add call_rcu() flooding forward-progress tests (Waiman Long) [1737054] - [tools] rcutorture/formal: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [tools] tools/kernel.h: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [net] net/decnet: Replace rcu_barrier_bh() with rcu_barrier() (Waiman Long) [1737054] - [net] net/core/skmsg: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] cgroups: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] types: Remove call_rcu_bh() and call_rcu_sched() (Waiman Long) [1737054] - [include] percpu-rwsem: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [net] net/bridge: Replace call_rcu_bh() and rcu_barrier_bh() (Waiman Long) [1737054] - [kernel] srcu: Use "ssp" instead of "sp" for srcu_struct pointer (Waiman Long) [1737054] - [kernel] srcu: Lock srcu_data structure in srcu_gp_start() (Waiman Long) [1737054] - [mm] mm: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] percpu-refcount: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] events: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] workqueue: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] modules: Replace synchronize_sched() and call_rcu_sched() (Waiman Long) [1737054] - [kernel] sched/membarrier: synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] lockdep: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] kprobes: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [init] main: Replace rcu_barrier_sched() with rcu_barrier() (Waiman Long) [1737054] - [kernel] tracing: Replace synchronize_sched() and call_rcu_sched() (Waiman Long) [1737054] - [kernel] tracepoints: Free early tracepoints after RCU is initialized (Waiman Long) [1737054] - [kernel] tracing: Fix synchronizing to event changes with tracepoint_synchronize_unregister() (Waiman Long) [1737054] - [kernel] tracepoint: Make rcuidle tracepoint callers use SRCU (Waiman Long) [1737054] - [fs] fs/file: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [cpufreq] cpufreq/cpufreq_governor: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [cpufreq] cpufreq/intel_pstate: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [vhost] drivers/vhost: Replace synchronize_rcu_bh() with synchronize_rcu() (Waiman Long) [1737054] - [netdrv] ethernet/sis: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [char] drivers/ipmi: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [crypto] crypto/pcrypt: Replace synchronize_rcu_bh() with synchronize_rcu() (Waiman Long) [1737054] - [mm] mm: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [kernel] locking/mutex: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [fs] userfaultfd: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [net] smsc: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [scripts] checkpatch.pl: Suggest lockdep instead of asserting !spin_is_locked() (Waiman Long) [1737054] - [scripts] checkpatch: Create table of obsolete APIs and apply to RCU (Waiman Long) [1737054] - [maintainers] MAINTAINERS: Add Joel Fernandes as RCU reviewer (Waiman Long) [1737054] - [kernel] rcu: Avoid signed integer overflow in rcu_preempt_deferred_qs() (Waiman Long) [1737054] - [kernel] rcu: Replace this_cpu_ptr() with __this_cpu_read() (Waiman Long) [1737054] - [kernel] rcu: Speed up expedited GPs when interrupting RCU reader (Waiman Long) [1737054] - [kernel] rcu: Trace end of grace period before end of grace period (Waiman Long) [1737054] - [kernel] rcu: Adjust the comment of function rcu_is_watching (Waiman Long) [1737054] - [kernel] rcu: Add jiffies-since-GP-activity to show_rcu_gp_kthreads() (Waiman Long) [1737054] - [kernel] rcu: Add state name to show_rcu_gp_kthreads() output (Waiman Long) [1737054] - [kernel] rcu: Parameterize rcu_check_gp_start_stall() (Waiman Long) [1737054] - [kernel] rcu: Avoid double multiply by HZ (Waiman Long) [1737054] - [documentation] doc: Fix "struction" typo in RCU memory-ordering documentation (Waiman Long) [1737054] - [documentation] doc: Correct parameter in stallwarn (Waiman Long) [1737054] - [documentation] doc: RCU scheduler spinlock rcu_read_unlock() restriction remains (Waiman Long) [1737054] - [documentation] doc: Make listing in RCU perf/scale requirements use rcu_assign_pointer() (Waiman Long) [1737054] - [documentation] doc: Remove obsolete (non-)requirement about disabling preemption (Waiman Long) [1737054] - [documentation] doc: Make reader aware of rcu_dereference_protected (Waiman Long) [1737054] - [documentation] doc: rcu: Encourage use of rcu_barrier in checklist (Waiman Long) [1737054] - [documentation] doc: rcu: Remove obsolete checklist item about synchronize_rcu usage (Waiman Long) [1737054] - [documentation] doc: rcu: Remove obsolete suggestion from checklist (Waiman Long) [1737054] - [documentation] doc: rcu: Add more rationale for using rcu_read_lock_sched in checklist (Waiman Long) [1737054] - [documentation] doc: rcu: Update core and full API in whatisRCU (Waiman Long) [1737054] - [documentation] doc: Document rcutorture forward-progress test kernel parameters (Waiman Long) [1737054] - [documentation] doc: rcu: Update description of gp_seq fields in rcu_data (Waiman Long) [1737054] - [documentation] doc: rcu: Better clarify the rcu_segcblist ->len field (Waiman Long) [1737054] - [documentation] doc: rcu: Update Data-Structures for RCU flavor consolidation (Waiman Long) [1737054] - [documentation] doc: Remove rcu_dynticks from Data-Structures (Waiman Long) [1737054] - [documentation] doc: Update information about resched_cpu (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for kernel/rcu/update.c (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for kernel/rcu/tree_plugin.h (Waiman Long) [1737054] - [kernel] rcu: Stop expedited grace periods from relying on stop-machine (Waiman Long) [1737054] - [kernel] srcu: Prevent __call_srcu() counter wrap with read-side critical section (Waiman Long) [1737054] - [include] srcu: Fix kernel-doc missing notation (Waiman Long) [1737054] - [x86] x86/PCI: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [tools] rcutorture: Make use of nolibc when available (Waiman Long) [1737054] - [tools] rcutorture: Import a copy of nolibc (Waiman Long) [1737054] - [tools] rcutorture: Check initrd/init instead of initrd only (Waiman Long) [1737054] - [tools] rcutorture: Always strip using the cross-compiler (Waiman Long) [1737054] - [tools] rcutorture: Add cross-compile capability to initrd.sh (Waiman Long) [1737054] - [tools] rcutorture: Make initrd/init execute in userspace (Waiman Long) [1737054] - [tools] rcutorture: Add initrd support for systems lacking dracut (Waiman Long) [1737054] - [tools] rcutorture: Automatically create initrd directory (Waiman Long) [1737054] - [documentation] doc: Remove rcu_preempt_state reference in stallwarn (Waiman Long) [1737054] - [documentation] doc: Clarify RCU data-structure comment about rcu_tree fanout (Waiman Long) [1737054] - [documentation] doc: Set down forward-progress requirements (Waiman Long) [1737054] - [powerpc] powerpc: Convert hugepd_free() to use call_rcu() (Waiman Long) [1737054] - [s390] s390/mm: Convert tlb_table_flush() to use call_rcu() (Waiman Long) [1737054] - [kernel] sparc/oprofile: Convert timer_stop() to use synchronize_rcu() (Waiman Long) [1737054] - [kernel] sched/membarrier: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] rcu: Consolidate the RCU update functions invoked by sync.c (Waiman Long) [1737054] - [kernel] rcu: Eliminate synchronize_rcu_mult() (Waiman Long) [1737054] - [kernel] rcu: Fix rcu_{node, data} comments about gp_seq_needed (Waiman Long) [1737054] - [kernel] rcu: Remove unused rcu_state externs (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for kernel/rcu/tree.c (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for sync.c (Waiman Long) [1737054] - [include] srcu: Add notrace variant of srcu_dereference (Waiman Long) [1737054] - [documentation] PM/EM: Document the Energy Model framework (Phil Auld) [1718927] - [kernel] sched/doc: Document Energy Aware Scheduling (Phil Auld) [1718927] - [kernel] sched/fair: Remove unneeded prototype of capacity_of() (Phil Auld) [1718927] - [kernel] sched/fair: Skip LLC NOHZ logic for asymmetric systems (Phil Auld) [1718927] - [kernel] sched/fair: Tune down misfit NOHZ kicks (Phil Auld) [1718927] - [kernel] sched/fair: Comment some nohz_balancer_kick() kick conditions (Phil Auld) [1718927] - [kernel] sched/fair: Prune, fix and simplify the nohz_balancer_kick() comment block (Phil Auld) [1718927] - [kernel] sched/fair: Explain LLC nohz kick condition (Phil Auld) [1718927] - [kernel] sched/fair: Simplify nohz_balancer_kick() (Phil Auld) [1718927] - [kernel] sched/topology: Fix percpu data types in struct sd_data & struct s_data (Phil Auld) [1718927] - [kernel] sched/fair: Simplify post_init_entity_util_avg() by calling it with a task_struct pointer argument (Phil Auld) [1718927] - [kernel] sched/fair: Fix util_avg of new tasks for asymmetric systems (Phil Auld) [1718927] - [kernel] sched/fair: Optimize update_blocked_averages() (Phil Auld) [1718927] - [kernel] sched/topology: Introduce a sysctl for Energy Aware Scheduling (Phil Auld) [1718927] - [kernel] Revert "sched/core: Take the hotplug lock in sched_init_smp()" (Phil Auld) [1718927] - [kernel] cpu/hotplug: Mute hotplug lockdep during init (Phil Auld) [1718927] - [kernel] sched/fair: Select an energy-efficient CPU on task wake-up (Phil Auld) [1718927] - [kernel] sched/fair: Introduce an energy estimation helper function (Phil Auld) [1718927] - [kernel] sched/fair: Add over-utilization/tipping point indicator (Phil Auld) [1718927] - [kernel] sched/fair: Clean-up update_sg_lb_stats parameters (Phil Auld) [1718927] - [kernel] sched/toplogy: Introduce the 'sched_energy_present' static key (Phil Auld) [1718927] - [kernel] sched/topology: Make Energy Aware Scheduling depend on schedutil (Phil Auld) [1718927] - [kernel] sched/topology: Disable EAS on inappropriate platforms (Phil Auld) [1718927] - [kernel] sched/topology: Add lowest CPU asymmetry sched_domain level pointer (Phil Auld) [1718927] - [kernel] sched/topology: Reference the Energy Model of CPUs when available (Phil Auld) [1718927] - [kernel] PM: Introduce an Energy Model management framework (Phil Auld) [1718927] - [kernel] sched/cpufreq: Prepare schedutil for Energy Aware Scheduling (Phil Auld) [1718927] - [kernel] sched/topology: Relocate arch_scale_cpu_capacity() to the internal header (Phil Auld) [1718927] - [kernel] sched/core: Take the hotplug lock in sched_init_smp() (Phil Auld) [1718927] - [kernel] sched/core: Disable SD_PREFER_SIBLING on asymmetric CPU capacity domains (Phil Auld) [1718927] - [kernel] sched/fair: Don't move tasks to lower capacity CPUs unless necessary (Phil Auld) [1718927] - [kernel] sched/fair: Set rq->rd->overload when misfit (Phil Auld) [1718927] - [kernel] sched/fair: Wrap rq->rd->overload accesses with READ/WRITE_ONCE() (Phil Auld) [1718927] - [kernel] sched/core: Change root_domain->overload type to int (Phil Auld) [1718927] - [kernel] sched/fair: Change 'prefer_sibling' type to bool (Phil Auld) [1718927] - [kernel] sched/fair: Kick nohz balance if rq->misfit_task_load (Phil Auld) [1718927] - [kernel] sched/fair: Consider misfit tasks when load-balancing (Phil Auld) [1718927] - [kernel] sched/fair: Add sched_group per-CPU max capacity (Phil Auld) [1718927] - [kernel] sched/fair: Add 'group_misfit_task' load-balance type (Phil Auld) [1718927] - [kernel] sched/topology: Add static_key for asymmetric CPU capacity optimizations (Phil Auld) [1718927] - [kernel] sched/core, workqueues: Distangle worker accounting from rq lock (Phil Auld) [1737067] - [kernel] workqueue: Use normal rcu (Phil Auld) [1737067] - [kernel] tick/broadcast: Fix warning about undefined tick_broadcast_oneshot_offline() (Phil Auld) [1737067] - [kernel] timer/trace: Improve timer tracing (Phil Auld) [1737067] - [include] timer/trace: Replace deprecated vsprintf pointer extension pf by ps (Phil Auld) [1737067] - [kernel] timer: Move trace point to get proper index (Phil Auld) [1737067] - [kernel] tick/sched: Update tick_sched struct documentation (Phil Auld) [1737067] - [kernel] tick: Remove outgoing CPU from broadcast masks (Phil Auld) [1737067] - [kernel] timekeeping: Consistently use unsigned int for seqcount snapshot (Phil Auld) [1737067] - [kernel] sched/fair: Robustify CFS-bandwidth timer locking (Phil Auld) [1737067] - [kernel] tick/sched : Remove redundant cpu_online() check (Phil Auld) [1737067] - [misc] sched/swait: Rename to exclusive (Phil Auld) [1737067] - [kernel] sched/swait: Switch to full exclusive mode (Phil Auld) [1737067] - [kernel] sched/swait: Remove __prepare_to_swait (Phil Auld) [1737067] - [netdrv] net: ena: don't wake up tx queue when down (John Linville) [1722628] - [netdrv] Revert "net: ena: ethtool: add extra properties retrieval via get_priv_flags" (John Linville) [1722628] - [netdrv] net: ena: Fix bug where ring allocation backoff stopped too late (John Linville) [1722628] - [netdrv] net: ena: update driver version from 2.0.3 to 2.1.0 (John Linville) [1722628] - [netdrv] net: ena: remove inline keyword from functions in *.c (John Linville) [1722628] - [netdrv] net: ena: add ethtool function for changing io queue sizes (John Linville) [1722628] - [netdrv] net: ena: allow queue allocation backoff when low on memory (John Linville) [1722628] - [netdrv] net: ena: make ethtool show correct current and max queue sizes (John Linville) [1722628] - [netdrv] net: ena: enable negotiating larger Rx ring size (John Linville) [1722628] - [netdrv] net: ena: add MAX_QUEUES_EXT get feature admin command (John Linville) [1722628] - [netdrv] net: ena: use dev_info_once instead of static variable (John Linville) [1722628] - [netdrv] net: ena: add good checksum counter (John Linville) [1722628] - [netdrv] net: ena: optimise calculations for CQ doorbell (John Linville) [1722628] - [netdrv] net: ena: add support for changing max_header_size in LLQ mode (John Linville) [1722628] - [netdrv] net: ena: allow automatic fallback to polling mode (John Linville) [1722628] - [netdrv] net: ena: add newline at the end of pr_err prints (John Linville) [1722628] - [netdrv] net: ena: arrange ena_probe() function variables in reverse christmas tree (John Linville) [1722628] - [netdrv] net: ena: replace free_tx/rx_ids union with single free_ids field in ena_ring (John Linville) [1722628] - [netdrv] net: ena: ethtool: add extra properties retrieval via get_priv_flags (John Linville) [1722628] - [netdrv] net: ena: add handling of llq max tx burst size (John Linville) [1722628] - [netdrv] net: ena: gcc 8: fix compilation warning (John Linville) [1722628] - [netdrv] net: ena: fix ena_com_fill_hash_function() implementation (John Linville) [1722628] - [netdrv] net: ena: improve latency by disabling adaptive interrupt moderation by default (John Linville) [1722628] - [netdrv] net: ena: fix return value of ena_com_config_llq_info() (John Linville) [1722628] - [netdrv] net: ena: fix incorrect test of supported hash function (John Linville) [1722628] - [netdrv] net: ena: fix: Free napi resources when ena_up() fails (John Linville) [1722628] - [netdrv] net: ena: fix: set freed objects to NULL to avoid failing future allocations (John Linville) [1722628] - [netdrv] net: ena: fix swapped parameters when calling ena_com_indirect_table_fill_entry (John Linville) [1722628] - [arm64] arm64: kexec: Add comment to explain use of __flush_icache_range() (Mark Salter) [1757450] - [arm64] arm64: kexec: machine_kexec should call __flush_icache_range (Mark Salter) [1757450] - [arm64] arm64: Do not issue IPIs for user executable ptes (Mark Salter) [1757450] - [arm64] arm64: hibernate: Avoid sending cross-calling with interrupts disabled (Mark Salter) [1757450] - [arm64] arm64: mm: Export __flush_icache_range() to modules (Mark Salter) [1757450] - [arm64] arm64: IPI each CPU after invalidating the I-cache for kernel mappings (Mark Salter) [1757450] - [s390] s390/dasd: Handle out-of-space constraint (Philipp Rudo) [1525398] - [s390] s390/dasd: Use ALIGN_DOWN macro (Philipp Rudo) [1525398] - [s390] s390/dasd: Make dasd_setup_queue() a discipline function (Philipp Rudo) [1525398] - [s390] s390/dasd: Add new ioctl to release space (Philipp Rudo) [1525398] - [s390] s390/dasd: Add dasd_sleep_on_queue_interruptible() (Philipp Rudo) [1525398] - [s390] s390/dasd: Add missing intensity definition (Philipp Rudo) [1525398] - [s390] s390/dasd: Fix whitespace (Philipp Rudo) [1525398] - [s390] s390/dasd: Add dynamic formatting support for ESE volumes (Philipp Rudo) [1525398] - [s390] s390/dasd: Recognise data for ESE volumes (Philipp Rudo) [1525398] - [s390] s390/dasd: Put sub-order definitions in a separate section (Philipp Rudo) [1525398] - [s390] s390/dasd: Make layout analysis ESE compatible (Philipp Rudo) [1525398] - [s390] s390/dasd: Remove old defines and function (Philipp Rudo) [1525398] - [s390] s390/dasd: Remove unused structs and function prototypes (Philipp Rudo) [1525398] - [tools] perf report: Dump s390 counter set data to file (Philipp Rudo) [1731036] - [tools] perf report: Display arch specific diagnostic counter sets, starting with s390 (Philipp Rudo) [1731036] - [tools] perf report: Add s390 diagnosic sampling descriptor size (Philipp Rudo) [1731036] - [s390] s390/cpum_cf_diag: Add support for CPU-MF SVN 6 (Philipp Rudo) [1731036] - [s390] s390/cpumf: Fix warning from check_processor_id (Philipp Rudo) [1731036] - [s390] s390/cpum_cf_diag: Add support for s390 counter facility diagnostic trace (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: Handle EBUSY return code from CPU counter facility reservation (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: add ctr_stcctm() function (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: move common functions into a separate file (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: introduce kernel_cpumcf_avail() function (Philipp Rudo) [1731036] - [s390] s390/cpu_mf: replace stcctm5() with the stcctm() function (Philipp Rudo) [1731036] - [s390] s390/cpu_mf: add store cpu counter multiple instruction support (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: Add minimal in-kernel interface for counter measurements (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: introduce kernel_cpumcf_alert() to obtain measurement alerts (Philipp Rudo) [1731036] - [s390] s390/cpu_mf: move struct cpu_cf_events and per-CPU variable to header file (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: rename per-CPU counter facility structure and variables (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: prepare for in-kernel counter measurements (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: move counter set controls to a new header file (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: Reject request for sampling in event initialization (Philipp Rudo) [1731036] - [s390] s390/perf: Change CPUM_CF return code in event init function (Philipp Rudo) [1731036] - [acpi] ACPI / property: Add two new Thunderbolt property GUIDs to the list (Jarod Wilson) [1483494] - [acpi] ACPI: property: restore _DSD data subnodes GUID comment (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for Intel Ice Lake (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Expose active parts of NVM even if upgrade is not supported (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Hide switch attributes that are not set (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Do not fail adding switch if some port is not implemented (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Use 32-bit writes when writing ring producer/consumer (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Move NVM upgrade support flag to struct icm (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Correct path indices for PCIe tunnel (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Show key using *pE not *pEp (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Switch to use device_property_count_uXX() (Jarod Wilson) [1483494] - [include] device property: Add helpers to count items in an array (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Implement CIO reset correctly for Titan Ridge (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make sure device runtime resume completes before taking domain lock (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add SPDX license identifier for more missed files (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make priority unsigned in struct tb_path (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: shash - remove shash_desc::flags (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Start firmware on Titan Ridge Apple systems (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Reword output of tb_dump_hop() (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make rest of the logging to happen at debug level (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make __TB_[SW|PORT]_PRINT take const parameters (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for XDomain connections (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make tb_switch_alloc() return ERR_PTR() (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for DMA tunnels (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add XDomain UUID exchange support (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Run tb_xdp_handle_request() in system workqueue (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Do not tear down tunnels when driver is unloaded (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for Display Port tunnels (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Rework NFC credits handling (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Generalize port finding routines to support all port types (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Scan only valid NULL adapter ports in hotplug (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for full PCIe daisy chains (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Discover preboot PCIe paths the boot firmware established (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Deactivate all paths before restarting them (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Extend tunnel creation to more than 2 adjacent switches (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add helper function to iterate from one port to another (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Assign remote for both ports in case of dual link (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add functions for allocating and releasing HopIDs (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Generalize tunnel creation functionality (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Rename tunnel_pci to tunnel (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Cache adapter specific capability offset into struct port (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Properly disable path (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Set sleep bit when suspending switch (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Configure lanes when switch is initialized (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Move LC specific functionality into a separate file (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add dummy read after port capability list walk on Light Ridge (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Enable TMU access when accessing port space on legacy devices (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Do not allocate switch if depth is greater than 6 (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Take domain lock in switch sysfs attribute callbacks (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Block reads and writes if switch is unplugged (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Drop duplicated get_switch_at_route() (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Remove unused work field in struct tb_switch (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix to check the return value of kmemdup (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: property: Fix a missing check of kzalloc (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: xdomain: Fix to check return value of kmemdup (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix to check return value of ida_simple_get (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix to check for kmemdup failure (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix a missing check of kmemdup (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: property: Fix a NULL pointer dereference (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Prevent root port runtime suspend during NVM upgrade (Jarod Wilson) [1483494] - [netdrv] net/ibmvnic: prevent more than one thread from running in reset (Steve Best) [1756943] - [netdrv] net/ibmvnic: unlock rtnl_lock in reset so linkwatch_event can run (Steve Best) [1756943] - [netdrv] sfc: don't score irq moderation points for GRO (Jarod Wilson) [1736303] - [netdrv] sfc: Use dev_get_drvdata where possible (Jarod Wilson) [1736303] - [netdrv] sfc: Remove 'PCIE error reporting unavailable' (Jarod Wilson) [1736303] - [netdrv] sfc: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jarod Wilson) [1736303] - [netdrv] sfc: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1736303] - [netdrv] bonding: no need to print a message if debugfs_create_dir() fails (Jarod Wilson) [1756517] - [netdrv] bonding: Add vlan tx offload to hw_enc_features (Jarod Wilson) [1756517] - [netdrv] bonding: fix value exported by Netlink for peer_notif_delay (Jarod Wilson) [1756517] - [netdrv] bonding: add an option to specify a delay between peer notifications (Jarod Wilson) [1756517] - [netdrv] bonding: validate ip header before check IPPROTO_IGMP (Jarod Wilson) [1756517] - [netdrv] bonding/main: fix NULL dereference in bond_select_active_slave() (Jarod Wilson) [1756517] - [netdrv] bonding: Always enable vlan tx offload (Jarod Wilson) [1756517] - [netdrv] bonding/options: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding/alb: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding/802.3ad: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding/main: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding: add slave_foo printk macros (Jarod Wilson) [1756517] - [netdrv] bonding: fix error messages in bond_do_fail_over_mac (Jarod Wilson) [1756517] - [netdrv] bonding: improve event debug usability (Jarod Wilson) [1756517] - [netdrv] net: bonding: Inherit MPLS features from slave devices (Jarod Wilson) [1756517] - [netdrv] bonding: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Jarod Wilson) [1756517] - [netdrv] bonding: Replace GPLv2 boilerplate/reference with SPDX - rule 90 (Jarod Wilson) [1756517] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 5 (Jarod Wilson) [1756517] - [netdrv] bonding: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1756517] - [powerpc] powerpc/fadump: support holes in kernel boot memory area (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: remove RMA_START and RMA_END macros (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: update documentation about option to release opalcore (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: consider f/w load area (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opalcore: provide an option to invalidate /sys/firmware/opal/core file (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opalcore: enable CONFIG_OPAL_CORE for FADUMP (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opalcore: export /sys/firmware/opal/core for analysing opal crashes (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: update documentation about CONFIG_PRESERVE_FA_DUMP (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add support to preserve crash data on FADUMP disabled kernel (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: improve how crashed kernel's memory is reserved (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: consider reserved ranges while releasing memory (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: make crash memory ranges array allocation generic (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: process architected register state data provided by firmware (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: make use of memblock's bottom up allocation mode (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: Update documentation about OPAL platform support (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: handle invalidation of crashdump and re-registraion (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: Warn before processing partial crashdump (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: process the crashdump by exporting it as /proc/vmcore (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: support copying multiple kernel boot memory regions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: define OPAL register/un-register callback functions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: reset metadata address during clean up (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: register kernel metadata address with opal (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: improve fadump_reserve_mem() (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add fadump support on powernv (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opal: add MPIPL interface definitions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/powernv: Make possible for user to force a full ipl cec reboot (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: use FADump instead of fadump for how it is pronounced (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] pseries/fadump: move out platform specific support from generic code (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: release all the memory above boot memory size (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add source info while displaying region contents (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] pseries/fadump: define RTAS register/un-register callback functions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: introduce callbacks for platform specific operations (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: move rtas specific definitions to platform code (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: define an empty fadump_cleanup() (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: use helper functions to reserve/release cpu notes buffer (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: Improve fadump documentation (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: declare helper functions in internal header file (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add helper functions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: move internal macros/definitions to a new header (Desnes Augusto Nunes do Rosario) [1524687] - [watchdog] watchdog: iTCO: Add support for Cannon Lake PCH iTCO (Alexander Beregalov) [1724532] - [i2c] i2c: i801: Use iTCO version 6 in Cannon Lake PCH and beyond (Alexander Beregalov) [1724532] - [i2c] i2c: i801: Allow ACPI AML access I/O ports not reserved for SMBus (Alexander Beregalov) [1724532] - [block] loop: set PF_MEMALLOC_NOIO for the worker thread (Ming Lei) [1741392] - [fs] bdev: Fixup error handling in blkdev_get() (Ming Lei) [1741392] - [block] loop: Fix mount(2) failure due to race with LOOP_SET_FD (Ming Lei) [1741392] - [block] block, bfq: handle NULL return value by bfq_init_rq() (Ming Lei) [1741392] - [block] block, bfq: move update of waker and woken list to queue freeing (Ming Lei) [1741392] - [block] block, bfq: reset last_completed_rq_bfqq if the pointed queue is freed (Ming Lei) [1741392] - [block] block: aoe: Fix kernel crash due to atomic sleep when exiting (Ming Lei) [1741392] - [block] rq-qos: use a mb for got_token (Ming Lei) [1741392] - [block] rq-qos: set ourself TASK_UNINTERRUPTIBLE after we schedule (Ming Lei) [1741392] - [block] rq-qos: don't reset has_sleepers on spurious wakeups (Ming Lei) [1741392] - [block] rq-qos: fix missed wake-ups in rq_qos_throttle (Ming Lei) [1741392] - [include] wait: add wq_has_single_sleeper helper (Ming Lei) [1741392] - [block] block, bfq: check also in-flight I/O in dispatch plugging (Ming Lei) [1741392] - [block] block: fix sysfs module parameters directory path in comment (Ming Lei) [1741392] - [block] block: Allow mapping of vmalloc-ed buffers (Ming Lei) [1741392] - [block] block/bio-integrity: fix a memory leak bug (Ming Lei) [1741392] - [block] block: Disable write plugging for zoned block devices (Ming Lei) [1741392] - [block] blk-throttle: fix zero wait time for iops throttled group (Ming Lei) [1741392] - [block] block: Fix potential overflow in blk_report_zones() (Ming Lei) [1741392] - [block] blk-cgroup: turn on psi memstall stuff (Ming Lei) [1741392] - [block] block: init flush rq ref count to 1 (Ming Lei) [1741392] - [lib] sbitmap: Replace cmpxchg with xchg (Ming Lei) [1741392] - [block] block: Remove unused code (Ming Lei) [1741392] - [block] block, bfq: Init saved_wr_start_at_switch_to_srt in unlikely case (Ming Lei) [1741392] - [block] block, bfq: re-schedule empty queues if they deserve I/O plugging (Ming Lei) [1741392] - [block] block, bfq: preempt lower-weight or lower-priority queues (Ming Lei) [1741392] - [block] block, bfq: detect wakers and unconditionally inject their I/O (Ming Lei) [1741392] - [block] block, bfq: bring forward seek&think time update (Ming Lei) [1741392] - [block] block, bfq: update base request service times when possible (Ming Lei) [1741392] - [block] block, bfq: fix rq_in_driver check in bfq_update_inject_limit (Ming Lei) [1741392] - [block] block, bfq: reset inject limit when think-time state changes (Ming Lei) [1741392] - [kernel] cgroup: export css_next_descendant_pre for bfq (Ming Lei) [1741392] - [block] block: update print_req_error() (Ming Lei) [1741392] - [block] block: use blk_op_str() in blk-mq-debugfs.c (Ming Lei) [1741392] - [block] block: add centralize REQ_OP_XXX to string helper (Ming Lei) [1741392] - [block] block: improve print_req_error (Ming Lei) [1741392] - [block] block: rename CONFIG_DEBUG_BLK_CGROUP to CONFIG_BFQ_CGROUP_DEBUG (Ming Lei) [1741392] - [block] bfq-iosched: move bfq_stat_recursive_sum into the only caller (Ming Lei) [1741392] - [block] blk-cgroup: move struct blkg_stat to bfq (Ming Lei) [1741392] - [block] blk-cgroup: introduce a new struct blkg_rwstat_sample (Ming Lei) [1741392] - [block] blk-cgroup: pass blkg_rwstat structures by reference (Ming Lei) [1741392] - [block] blk-cgroup: factor out a helper to read rwstat counter (Ming Lei) [1741392] - [block] block: drbd: no need to check return value of debugfs_create functions (Ming Lei) [1741392] - [block] blk-core: Remove blk_end_request*() declarations (Ming Lei) [1741392] - [block] block: code cleanup queue_poll_stat_show() (Ming Lei) [1741392] - [block] block: use right format specifier for op (Ming Lei) [1741392] - [block] block: get rid of redundant else (Ming Lei) [1741392] - [block] block: use req_op() to maintain consistency (Ming Lei) [1741392] - [fs] blkcg, writeback: dead memcgs shouldn't contribute to writeback ownership arbitration (Ming Lei) [1741392] - [block] blkcg: blkcg_activate_policy() should initialize ancestors first (Ming Lei) [1741392] - [block] blkcg: perpcu_ref init/exit should be done from blkg_alloc/free() (Ming Lei) [1741392] - [block] blkcg: update blkcg_print_stat() to handle larger outputs (Ming Lei) [1741392] - [block] block: bio: Use struct_size() in kmalloc() (Ming Lei) [1741392] - [block] block: genhd: Use struct_size() helper (Ming Lei) [1741392] - [block] block: null_blk: fix race condition for null_del_dev (Ming Lei) [1741392] - [block] blk-mq/debugfs: Fix improper print qualifier (Ming Lei) [1741392] - [block] loop: Don't change loop device under exclusive opener (Ming Lei) [1741392]- [documentation] timekeeping.txt: Correct maxCount of n-bit binary counter (Jaroslav Kysela) [1738610] - [sound] ALSA: clk: Add (devm_)clk_get_optional() functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: uapi: align comments with firmware files (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: rename SOUNDWIRE to ALH (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: add ALH parameters (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: remove SPDX "WITH Linux-syscall-note" from kernel-space headers again (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc.h: fe_compr can be bit field (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc.h: fixup for_each_card_links() macro (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Define a set of DAPM pre/post-up events (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: use bit field for bus_control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple_card_utils.h: care NULL dai at asoc_simple_debug_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: remove an unused field from struct hda_codec (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Avoid polluting led_* namespace (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Add Hiby device family to quirks for native DSD support (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Update DSD support quirks for Oppo and Rotel (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: DSD auto-detection for Playback Designs (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: remove some dead code (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix possible NULL dereference at create_yamaha_midi_quirk() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Clean up check_input_term() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Remove superfluous bLength checks (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Unify the release of usb_mixer_elem_info objects (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Simplify parse_audio_unit() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: More validations of descriptor units (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Check mixer unit bitmap yet more strictly (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix memory leak at line6_init_pcm() error path (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix invalid NULL check in snd_emuusb_set_samplerate() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Add implicit fb quirk for Behringer UFX1604 (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix a stack buffer overflow bug in check_input_term (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix an OOB bug in parse_audio_mixer_unit (Jaroslav Kysela) [1738610] - [sound] ALSA: hiface: fix multiple memory leak bugs (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Add Pioneer DDJ-SX3 PCM quirck (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Skip bSynchAddress endpoint check if it is invalid (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix PCM device order (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Unify audioformat release code (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix gpf in snd_usb_pipe_sanity_check (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Scarlett Gen 2 mixer interface (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: sizeof (byte) is always 1, use that fact. (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix a typo (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix wrong altsetting for LINE6_PODHD500_1 (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix Line6 Helix audio format rates (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix parse of UAC2 Extension Units (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix write on zero-sized buffer (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix sign unintended sign extension on left shifts (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Sanity checks for each pipe and EP types (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Enable .product_name override for Emagic, Unitor 8. (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Use container_of() (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Drop superfluous timer helper function (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: variax: Rewrite complex timer & work combo with a delayed work (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: podhd: Rewrite complex timer & work combo with a delayed work (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: pod: Rewrite complex timer & work combo with a delayed work (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Assure canceling delayed work at disconnection (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 33 (Jaroslav Kysela) [1738610] - [sound] ALSA: sparc: Mark expected switch fall-throughs (Jaroslav Kysela) [1738610] - [sound] ALSA: fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ux500: mop500: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ux500: mop500: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ux500: mop500: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: txx9: txx9aclc-generic: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: osk5912: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap3pandora: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-twl4030: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-twl4030: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-twl4030: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-hdmi: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-hdmi: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-hdmi: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-abe-twl6040: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-abe-twl6040: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-abe-twl6040: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: n810: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Fix slot mask settings when using multiple AXRs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Set unused serializers as INACTIVE (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: Fix SDMA users not providing channel names (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Support for auxclk-fs-ratio (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: ams-delta: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: trimslice: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: trimslice: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: trimslice: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm9712: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm9712: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm9712: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8903: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8903: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8903: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8753: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8753: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8753: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_sgtl5000: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_sgtl5000: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_sgtl5000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5677: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5677: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5677: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5640: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5640: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5640: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_max98090: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_max98090: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_alc5632: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_alc5632: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_alc5632: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: pass volume min/max linear value to FW (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ignore unrecoverable CTX_SAVE IPC errors at suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: Add earpiece (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun4i-codec: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: spdifrx: manage identification registers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: dfsdm: add 16 bits audio record support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: add cpu_dai_name for DAIs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: add min/max step for volume_table (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sof: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: clarify operator precedence (Jaroslav Kysela) [1738610] - [sound] ALSA: ASOC: SOF: ipc: prevent logging trace messages (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: add new macro hstream_to_sof_hda_stream() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: make sure RUN bit setting to 0 during clear stream status (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: fix a deadlock with bus->reg_lock (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: modify stream interrupt handler (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: save handle to sdev in sof_intel_hda_stream (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: remove misleading error trace from IRQ thread (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: dont wake dsp up in kcontrol IO (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Fix handling of custom_stop_condition on DAPM graph walks (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: compress: Fix memory leak from snd_soc_new_compress (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: sirf-audio: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: sirf-audio: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: sirf-audio: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sh: sh7760-ac97: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: ssiu: tidyup SSI_MODE1/2 settings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: fixup mod ID calculation in rsnd_ctu_probe_ (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: add missing pin sharing with SSI9 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sh: migor: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tobermory: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: speyside: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: snow: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: snow: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: snow: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994pcm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8580: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_spdif: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smartq_wm8987: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: s3c24xx_uda134x: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: s3c24xx_simtec_tlv320aic23: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: s3c24xx_simtec_hermes: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: rx1950_uda1380: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: odroid: fix a double-free issue for cpu_dai (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: odroid: fix an use-after-free issue for codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: odroid: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: lowland: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: littlemill: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: jive_wm8750: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: h1940_uda1380: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: bells: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: arndale_rt5631: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: arndale_rt5631: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: arndale_rt5631: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_rt5645: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_rt5645: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_rt5645: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip-max98090: Remove MICBIAS as supply of input pin IN34 (Jaroslav Kysela) [1738610] - [sound] ALSA: SoC: rockchip: rockchip_max98090: Enable MICBIAS for headset keypress detection (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3399_gru_sound: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3399_gru_sound: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3399_gru_sound: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rk3399_gru_sound: Support 32, 44.1 and 88.2 kHz sample rates (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3288_hdmi_analog: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3288_hdmi_analog: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3288_hdmi_analog: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: pdm: select CONFIG_RATIONAL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: storm: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: storm: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: storm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: Fix oops with multiple DAI links (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: tosa: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: hx4700: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: kernel: fix typos and some coding style in comments (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: Add missing Slimbus0 audio route (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: zylonite: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: z2: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: ttc-dkb: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: spitz: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: pxa2xx-ac97.c: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: poodle: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: palm27x: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: mioa701_wm9713: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: magician: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: imote2: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: em-x270: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: e800_wm9712: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: e750_wm9705: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: e740_wm9705: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: corgi: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: brownstone: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs: mxs-sgtl5000: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs: mxs-sgtl5000: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs: mxs-sgtl5000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-toddr: add sm1 support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-toddr: expose all 8 inputs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: tdmout: add sm1 support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdmout: right_j is not supported (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: tdmin: expose all 16 inputs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdmin: right_j is not supported (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm: fix sample clock inversion (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm: consistently use SND_SOC_DAIFMT defines (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: g12a-tohdmitx: require regmap mmio (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: free reset on device removal (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: add reset (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-spdifout: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-spdifin: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-pdm: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-frddr: expose all 8 outputs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-frddr: add sm1 support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-fifo: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5676: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5514: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt6797-mt6351: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt2701-wm8960: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt2701-cs42448: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Add missing newline at end of file (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood: armada-370-db: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood: armada-370-db: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood: armada-370-db: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: jz4740: qi_lb60: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 239 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Fix incorrect capture position reporting (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Fix NULL ptr dereference when unloading clk dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Don't return failure on machine driver reload (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Do not disable FW notifications (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof_rt5682: use GFP_KERNEL instead of GFP_ATOMIC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: correct naming for dmic16k (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof_rt5682: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add quirk for Irbis NB41 netbook (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: add BE dailink for dmic16k (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: add MCLK support for BYT platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_rt286: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_nau88l25_ssm4567: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_nau88l25_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_common: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_rt5663_max98927: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_rt5660: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: kbl_da7219_max98927: add dai_trigger function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: haswell: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090_ti: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_nocodec: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_es8316: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_da7213: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_cx2072x: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: byt-rt5640: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: byt-max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bxt_rt298: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bxt_da7219_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: broadwell: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bdw-rt5677: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: fix use-after-free in graph_for_each_link (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: add missing const at graph_get_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: phycore-ac97: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card-utils: care no Platform for DPCM (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: fix use-after-free in graph_dai_link_of_dpcm() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: fix an use-after-free in graph_get_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: wm1133-ev1: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: pcm030-audio-fabric: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: mx27vis-aic32x4: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-spdif: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-spdif: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-spdif: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-sgtl5000: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-sgtl5000: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-sgtl5000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-mc13783: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: mpc8610_hpcd/p1022_ds/p1022_rdk: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: no need to check return value of debugfs_create functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: fsl-asoc-card: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: eukrea-tlv320: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: efika-audio-fabric: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm_adsp: Allow bus error handler to be called directly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm_adsp: no need to check return value of debugfs_create functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: remove multiple defines. (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: add irqflag IRQF_ONESHOT flag (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: Fix misuse of GENMASK macro (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic31xx: suppress error message for EPROBE_DEFER (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tas571x: Fix -Wunused-const-variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Fix charge pump source assignment (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Fix of unmute outputs on probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: add ADC mute control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Improve VAG power and mute control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Fix definition of VAG Ramp Control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5682: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677-spi: Rename driver to differentiate from main codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5665: remove redundant assignment to variable idx (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5514-spi: don't use snd_soc_lookup_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: simplify the EFUSE read function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Remove executable attribute from source files (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: add silence detection and manual PDB control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Convert headers to SPDX (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: fix DC calibration offset not applying (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Relocate my e-mail to .com domain zone (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: nau8825: fix fake interruption when booting (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: nau8822: support master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: soc: codecs: mt6358: change return type of mt6358_codec_init_reg (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: msm8916-wcd-digital: Add sidetone support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98383: fix i2c probe failure (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 496 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdac_hdmi: report codec link up/down status to bus (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec: hdac_hdmi: fix pin connections at cvt enable (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 463 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: mark PM function as __maybe_unused (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: use mdelay for sdmode-delay (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: avoid speaker pop when playback startup (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Fix MFREQ selection issue for async mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cros_ec_codec: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ak4118: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: spi: AD ASoC: declare missing of table (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ab8500: add range to usleep_range (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: snappercl15: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: simone: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: ep93xx-i2s.c: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: edb93xx: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: bcm: cygnus-pcm: Unneeded variable: "ret". (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: psc-i2s.c: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: db1200: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: db1000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: tse850-pcm5142: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: tse850-pcm5142: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: tse850-pcm5142: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9x5_wm8731: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9x5_wm8731: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9x5_wm8731: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9g20_wm8731: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: mikroe-proto: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-wm8904: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-pdmic: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-pcm-dma.c: use devm_snd_dmaengine_pcm_register() (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-classd: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp-rt5645: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp-da7219-max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 200 (Jaroslav Kysela) [1738610] - [sound] ALSA: ps3: Remove Unneeded variable: "ret" (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 277 (Jaroslav Kysela) [1738610] - [sound] ALSA: rme9652: Unneeded variable: "result". (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 274 (Jaroslav Kysela) [1738610] - [sound] ALSA: hdspm: Fix single speed ADAT capture and playback with RME HDSPe AIO (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 264 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 404 (Jaroslav Kysela) [1738610] - [sound] ALSA: lx6464es - Remove set but not used variables 'orun_mask, urun_mask' (Jaroslav Kysela) [1738610] - [sound] ALSA: lx6464es: Remove unneeded variable err (Jaroslav Kysela) [1738610] - [sound] ALSA: lx6464es - add support for LX6464ESe pci express variant (Jaroslav Kysela) [1738610] - [sound] ALSA: ice1712: Check correct return value to snd_i2c_sendbytes (EWS/DMX 6Fire) (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 29 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 46 (Jaroslav Kysela) [1738610] - [sound] ALSA: emu10k1: Remove unneeded variable "change" (Jaroslav Kysela) [1738610] - [sound] ALSA: echoaudio: Replace kmalloc + memcpy with kmemdup (Jaroslav Kysela) [1738610] - [sound] ALSA: pci: echoaudio: remove variable which is a constant (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 364 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 118 (Jaroslav Kysela) [1738610] - [sound] ALSA: cs4281: remove redundant assignment to variable val and remove a goto (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 32 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 116 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 456 (Jaroslav Kysela) [1738610] - [sound] ALSA: au88x0: Remove unneeded variable: "changed" (Jaroslav Kysela) [1738610] - [sound] ALSA: asihpi: Remove unneeded variable change (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 88 (Jaroslav Kysela) [1738610] - [sound] ALSA: ac97: remove unused variable 'snd_ac97_controls_master_mono' (Jaroslav Kysela) [1738610] - [sound] ALSA: dmasound_atari: Mark expected switch fall-through (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 176 (Jaroslav Kysela) [1738610] - [sound] ALSA: i2c: ak4xxx-adda: Fix a possible null pointer dereference in build_adc_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: isa/wavefront: remove redundant assignment to pointer bptr (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 370 (Jaroslav Kysela) [1738610] - [sound] ALSA: sb: remove redundant assignment to variable result (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ALSA: hda: Add codec on bus address table lately" (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Unexport a few more stuff (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Drop export of snd_hdac_bus_add/remove_device() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Add codec on bus address table lately (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: readl/writel need linux/io.h (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: intel-nhlt: handle NHLT VENDOR_DEFINED DMIC geometry (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: move parts of NHLT code to new module (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Fix 1-minute detection delay when i915 module is not available (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Fix a headphone detection issue when using SOF (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: fix: lock reg_lock before calling snd_hdac_bus_update_rirb (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: add polling mode in snd_hdac_bus_get_response (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sdm845: remove unneeded semicolon (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dmaengine: Replace strncpy() with strscpy_pad() for pcm->name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: remove redundant use of ret variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: Add an op to set callback function for plug event (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_unbind_aux_dev() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add soc_unbind_aux_dev() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_bind_aux_dev() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_link_dais() next to soc_remove_link_dais() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_probe_link_dais() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add new soc_link_init() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_dai() next to soc_remove_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_remove_link_dais() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_remove_link_components() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_probe_link_components() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: make array pd static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1305: make array pd static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: make array pd static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: SoC: simple-card-utils: set 0Hz to sysclk when shutdown (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: ignore 0Hz sysclk (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: make two arrays static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Use regmap_multi_reg_write() when initializing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Reset used registers at probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Group register initialization at probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Fix memory corruption on BE 64b systems (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: support fixed and variable both clock rates (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: fix redundant codes of clock (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: add DT-bindings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dmaengine: Make the pcm->name equal to pcm->id if the name is not set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Fix COMPILE_TEST error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: Include link-name in error messages (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: Fix NULL pointer in of parser (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: Mark links as nonatomic (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add comment to jack at soc_remove_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf-audio: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ep93xx: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: add clock control of MCLK (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph: indicate rebind issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: indicate rebind issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: fix an use-after-free in simple_for_each_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: fix an use-after-free in simple_dai_link_of_dpcm() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: support snd_soc_dai_link_component style for cpu (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_link_components() position (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add snd_soc_dapm_init() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: dapm related setup at one place (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_component() position (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add soc_rtd_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: fix space issues (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: remove forward declaration of headset_init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: move headset jack to card-specific storage (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: move private structure (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF/Intel: fix selection of SND_INTEL_NHTL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: broadwell: Simplify device probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Simplify device probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: haswell: Simplify device probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Haswell: Adjust machine device private context (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: Do not fail if the dai_set_sysclk returns -ENOTSUPP (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: edma-pcm: Fix for legacy dma_slave_map based channel lookup (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-i2s: Add S32_LE as support format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-i2s: Move the XSYNCERR workaround to .prepare callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Baytrail: Fix implicit fallthrough warning (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_ssi: Fix clock control issue in master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: Fix primary interpolator max rate (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: fix tdm out data is valid on rising edge (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: tdm hw support tdm out and 8ch i2s out (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel_ssc_dai: implement left-justified data mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel_ssc_dai: rework DAI format configuration (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: enable SOC_SSC_PDC and SOC_SSC_DMA in Kconfig (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Force suspend/resume during system suspend/resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: fix tdm out data align issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: add mutex protection to set_fmt/set_tdm_slot (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: fix inverted L/R of headphone mixer volume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: fix headphone mixer volume table (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Release topology when we are done with it (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Remove memory available check (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Remove MCPS available check (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Remove static table index when parsing topology (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Print module type instead of id (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: NHLT: Fix debug print format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Expose snd_soc_dapm_new_control_unlocked properly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: topology: fix memory leaks on sm, se and sbe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: topology: Consolidate and fix asoc_tplg_dapm_widget_*_create flow (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: topology: Consolidate how dtexts and dvalues are freed (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-topology: fix modern dai link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-topology: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Use correct function to access iomem space (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Fix an is IS_ERR() vs NULL check (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i: Revert A83t description (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Fix return value check in imx8_probe() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: remove unused DAPM-related variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: Revert initial A83t support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: imx-audmix: register the card on a proper dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Make some functions static (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: rename soc_post_component_init() to soc_rtd_init() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: initialize list at one place (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: fix get control data return type and arguments (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: initialize component list (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-topology: use for_each_component_dais() at remove_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: soc_cleanup_card_resources() become void (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add NOTE to snd_soc_rtdcom_lookup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use device_register() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: switch tdm pins gpio function when playback on or off (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt2701: Fix -Wunused-const-variable warnings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8988: fix typo in wm8988_right_line_controls (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx: Add i.MX8 HW support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Add OF DSP device support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: AMD: Fix Kconfig warning without GPIOLIB (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Add support for DSP formats (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Replace call to params_width by local variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Use the actual format width instead of an hardcoded one (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Use the physical / slot width for the clocks (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Add support for TDM slots (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove unneeded dai_link check from snd_soc_remove_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: merge snd_soc_initialize_card_lists() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add support for imx8qm (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mchp-i2s-mcc: Fix simultaneous capture and playback in master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mchp-i2s-mcc: Wait for RX/TX RDY only if controller is running (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mchp-i2s-mcc: Fix unprepare of GCLK (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Support more channels (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Pass the channels number as an argument (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Remove duplicated quirks structure (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix the LRCK period on A83t (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix MCLK Enable bit offset on A83t (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix WSS and SR fields for the A83t (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix the LRCK polarity (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix LRCK and BCLK polarity offsets on newer SoCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: RX and TX counter registers are swapped (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix the MCLK and BCLK dividers on newer SoCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Use module clock as BCLK parent on newer SoCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Move the format configuration to a callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Move the channel configuration to a callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Rework MCLK divider calculation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Replace call to params_channels by local variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Don't use the oversample to calculate BCLK (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Switch to devm for PCM register (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Register regmap and PCM before our component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8904: implement input mode select as a mux (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8904: fix typo in DAPM kcontrol name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add all Chromebooks that need pmc_plt_clk_0 quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: uniphier: Fix double reset assersion when transitioning to suspend state (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: initial support for Intel ALH DAI type (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: Add dummy support for i.MX8 DAIs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: imx-audmux: Add driver suspend and resume to support MEGA Fast (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for EHL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for Tiger Lake (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: Add Cometlake machine driver support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Move pcm_mutex up to card level from snd_soc_pcm_runtime (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: 88pm860x: remove unused variables 'pcm_switch_controls' and 'aif1_mux' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42l56: remove unused variable 'adc_swap_enum' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8328: remove unused variable 'pga_tlv' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic31xx: remove unused variable 'cm_m_enum' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic23: remove unused variable 'tlv320aic23_rec_src' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: remove unused variable 'dac_vol_tlv' and 'adc_vol_tlv' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98371: remove unused variable 'max98371_noload_gain_tlv' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42l73: remove unused variables 'vsp_output_mux' and 'xsp_output_mux' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Print constant literals from format specifier (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt6358: add delay after dmic clock on (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-mt6358-ts3a227-max98357: remove unused variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: remove unused variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt2701: remove unused variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: Fix -Wunused-const-variable warning (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8737: Fix copy-paste error in wm8737_snd_controls (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs4349: Use PM ops 'cs4349_runtime_pm' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8328: Fix copy-paste error in es8328_right_line_controls (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: hsw: remove i386 build warning w/ size_t argument (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: Fix typos in ti/Kconfig (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: Set period size to 240 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Allow reconfiguration of tdm_slots and slot_width (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Retain the independence of DAC and ADC side of the codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-mt6358-ts3a227-max98357: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: make headset codec optional (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-mt6358-ts3a227-max98357: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max9850: remove unused variable 'max9850_reg' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98926: remove two unused variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove legacy style of aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun4i-codec: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: speyside: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: support snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdac_hdmi: Offload dapm update at jack detection (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: byt: Refactor fw ready / mem windows creation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: bdw: Use generic function for fw ready / mem windows creation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Remove call to snd_sof_dsp_mailbox_init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ml26124: remove unused variable 'ngth' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt6351: remove unused variable 'mt_lineout_control' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: intel: skl_hda_dsp_common: create HDMI jack kctl (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tscs454: remove unused variable 'PLL_48K_RATE' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: fix module_put() warning in soc_cleanup_component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: dai_link check under soc_dpcm_debugfs_add() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: define soc_dpcm_debugfs_add() for non CONFIG_DEBUG_FS (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for card->deferred_resume_work (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove unneeded list_empty() check for snd_soc_try_rebind_card() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: call snd_soc_dapm_debugfs_init() at soc_init_card_debugfs() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_add_card_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_dapm_add_routes() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_add_component_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdac_hda: fix page fault issue by removing race (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Direct MMIO accesses (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add support for imx7ulp/imx8mq (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: mark regmap as fast_io (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: large_config_get overhaul (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Implement set_bclk_ratio (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add support for SAI new version (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: derive TX FIFO watermark from FIFO depth (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: add of_match data (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Update Tx/Rx channel enable mask (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add registers definition for multiple datalines (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_dapm_new_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: reuse rtdcom at snd_soc_rtdcom_add() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: don't use for_each_card_links_safe() at snd_soc_find_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: check return value of snd_soc_add_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add comment for for_each_xxx (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: set component->debugfs_root NULL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Add a flag for the R0 calibration test (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Add R0 temperature and TDM1 ADC2DAT Swap control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: don't call clk_get_rate() under atomic context (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98373: Remove executable bits (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_pcm_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_pcm_new() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_mmap() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_page() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_copy_user() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_ioctrl() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_pointer() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_set_bias_level() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_stream_event() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_seq_notifier() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_of_xlate_dai_name() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_of_xlate_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_remove() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_probe() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_is_suspended() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_resume() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_suspend() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_trigger() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_hw_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_hw_params() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_prepare() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_close() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_open() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_get/put() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: add soc-component.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: remove soc_fill_silence() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: remove soc_rtdcom_copy_kernel() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: remove soc_rtdcom_ack() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp3x: use dma address for acp3x dma driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp3x: use dma_ops of parent device for acp3x dma driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: zx-tdm: remove redundant assignment to ts_width on error return path (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: SoC: skylake: no need to check return value of debugfs_create functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: fill some of the runtime stream parameters (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: remove ephemeral variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: create pcm for codec2codec links as well (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: use common NHLT module (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Merge skl_sst and skl into skl_dev struct (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Limit large_config_get to single frame (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Fix use of potentially uninitialized variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Update request-reply IPC model (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Common: Fix NULL dereference in tx_wait_done (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Fix race condition in IPC rx list (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 490 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Read HIPCT extension before clearing DONE bit (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: move NHLT header to common directory (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: g12a-tohdmitx: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: psc-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: psc-ac97: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: uniphier: aio-dma: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: uniphier: evea: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: inno_rk3036: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: jz4740: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mmp-sspa: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: jz4725b: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: msm8916-wcd: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: sai: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun8i-codec: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun8i-codec-analog: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: xlnx: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs4271: Fix a typo in the CS4171_NR_RATIOS (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: Mark expected switch fall-throughs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: xtfpga-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: spear: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs-saif: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: bcm2835-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_audmix: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: imx-audmux: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt6797: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt8173: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ep93xx-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra20_das: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: g12a-tohdmitx: override codec2codec params (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98373: add 88200 and 96000 sampling rate support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Incorrect SR and WSS computation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: fix missing return of error return code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Support for correct symmetric sample bits (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Correct slot_width posed constraint (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: Fix mono capture (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Fix some acpi vs apci typo in somme comments (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Fix clk PDIR handling for i2s master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: deal with params when necessary (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: name link using stream direction (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: run callbacks in order (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: Add uda1334 codec driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Add RT1308 amplifier driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Makefile - fix the top-level kernel module names (add snd- prefix) (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Improve serializer handling in multi AXR setups (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Add support for RIGHT_J format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Cleanup skl_module_cfg declaration (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Make MCPS and CPS params obsolete (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Combine snd_soc_skl_ipc and snd_soc_skl (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Reset pipeline before its deletion (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Strip T and L from TLV IPCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Properly cleanup on component removal (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Initialize lists before access so they are safe to use (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Add function to cleanup debugfs interface (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Use recommended SDxFMT programming sequence (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Switch to modern UUID API (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl-pcm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8955: Fix a typo in 'wm8995_pll_factors()' function name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Fail card instantiation if DAI format setup fails (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: move snd_soc_dai_stream_valid() to soc-dai.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use existing snd_soc_dai_digital_mute() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compress_new() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_remove() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_probe() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_resume() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_suspend() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_delay() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_bespoke_trigger() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_trigger() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_prepare() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_shutdown() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_startup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_hw_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: mv soc_dai_hw_params() to soc-dai (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: add soc-dai.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Return -ENOTSUPP from set_channel_map() if no operation provided (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: support dai_link with platforms_num != 1 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: defer card registration if codec component is missing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: don't use soc_find_component() at snd_soc_find_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use soc_find_component() at snd_soc_find_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: soc_find_component() uses snd_soc_dai_link_component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: soc_find_component() uses snd_soc_is_matching_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_find_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: call snd_soc_unbind_card() under mutex_lock; (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: allow no Platform on dai_link (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove legacy style dai_link (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc.h: add sound dai_link connection macro (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: Support hw_free() callback at DAI level (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5665: Fix a typo in the name of a function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Remove dev_err() usage after platform_get_irq() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: recover the channel swap after xrun (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: Wrap some operations to be functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: Add pm runtime function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ssp: BCLK delay parameter (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Add DMIC token for unmute gain ramp time (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix stream id setting (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix link DMA config (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: reset link DMA state in prepare (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: reserve host DMA channel for hostless streams (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: assign link DMA channel at run-time (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: initial support for Elkhart Lake (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: initial support for Tiger Lake. (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Use generic function for fw ready / mem windows creation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: make sure DMA is start/stop by read the RUN bit (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix HDA direct MMIO access (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: remove duplicated clear WAKESTS (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: clear stream status and wakests properly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: add function for hda stop chip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: set position buffer in init chip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: correct ROM state mask (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Introduce snd_sof_dsp_get_window_offset (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Introduce snd_sof_dsp_get_mailbox_offset (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: add runtime idle callback (Jaroslav Kysela) [1738610] - [sound] ALSA: docs: timers: convert docs to ReST and rename to *.rst (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use SOF defined init chip in resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Enable jack detection (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: reduce ifdef usage for hda (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: remove unused state variable in suspend function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: implement runtime idle for CNL/APL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use the defined stop chip in suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use the SOF defined ppcap functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: release link DMA for paused streams during suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: loader: Don't ignore SRAM block types (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: loader: Use the BAR provided by FW (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Introduce snd_sof_dsp_get_bar_index ops (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: increase default IPC timeouts (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: use timeout configured at probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: add ALH support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: use common code to send PCM_FREE IPC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: reset DMA state in prepare (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: couple host and link DMA during FE hw_free (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pci: mark last_busy value at runtime PM init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fixup HDaudio topology name with DMIC number (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: Add missing include file hdac_hda.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: Initialize hdaudio bus properly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix MSI handling (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Initialize HDA controller after i915 init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: add a parameter to disable MSI (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: remove duplicated include from hda.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: disallow building without CONFIG_PCI again (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: intel: extend IPC dump information (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Allow all channels in case of parallel DIN/DOUT setup (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Fix a typo in the name of a constant (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Add support for multi DIN/DOUT with TDM slots parameter (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Rename min_frame_size to slot_width (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: add dmic dapm widget and route (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: add dependency to dmic driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: Match Product Family instead of product (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Invalidate only paths reachable for a given stream (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: use set_get_data in process load (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: Add compatible string for imx6ull (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: keep analog power register at SND_SOC_BIAS_OFF (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Remove magic number register writes (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Revert remove superfluous set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: remove superfluous set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: depop stereo dac (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: handle concurrent interrupts (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: clear interrupts by polarity flip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: move jack-detect init to i2c probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: fall back to DT prop names on error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Add component driver name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: use more of the volume range from DACs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: remove w90x900/nuc900 platform drivers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: nuc900: nuc900-audio: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: add dmic dapm widget to support dmic PCM (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add for_each_xxx macro for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: remove useless check on codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: fix null pointer dereference in clean up (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sst: fix kmalloc call with wrong flags (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Fix deadlock in snd_soc_instantiate_card() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Remove erroneous soc_cleanup_card_resources() call (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use snd_soc_dai_link_component for CPU (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: move DAI pre-links initiation to snd_soc_instantiate_card (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: fix warning reported by kbuild test robot and minor issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Mark format integer literals as unsigned (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Tell codec that jack is being removed (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Change SR and WSS computation (Jaroslav Kysela) [1738610] - [sound] ALSA: SoC: rt274: Fix internal jack assignment in set_jack callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_es8316: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 395 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 340 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Add offset to RX channel select (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix sun8i tx channel offset mask (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98090: remove 24-bit format support if RJ is 0 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: da7219: Fix build error without CONFIG_I2C (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Fix COMPILE_TEST build error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Implement set_tdm_slot callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: Make some symbols static (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: remove set but not used variable 'is_right_j ' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Add RT1011 amplifier driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: debug: add new debugfs entries for IPC flood test (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: Introduce SOF_IPC_GLB_TEST_MSG IPC command (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: uapi: mirror firmware changes (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: send time stamp to FW for alignment (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: bump to ABI 3.6 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: soundwire: add initial soundwire support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: add support for mux/demux component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix DSP oops definitions in FW ABI (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ipc: don't check for HIPCCTL register value (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: re-enable IPC IRQ at end of handler (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: read all IPC registers first (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: cnl-ipc: re-enable IPC IRQ at end of handler (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: cnl-ipc: move code around for clarity (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: cnl-ipc: read all IPC registers first (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Do not send cmd via SHIM register (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: add mode parameter for snd_sof_debugfs_buf_item (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ASoC: core: use component driver name as component name" (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: sai: manage identification registers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: replace fw ready bitfield with explicit bit ordering (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Baytrail: add quirk for Aegex 10 (RU2) tablet (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: fix typos of SPDX-License-Identifier (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 201 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 162 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 149 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use the defined ppcap functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: add COMPILE_TEST for PCI options (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: Add COMPILE_TEST for new machine drivers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: remove dependency on asm/platform_sst_audio.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoc: fix sound/soc/intel/skylake/slk-ssp-clk.c build error on IA64 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: use common helpers to detect CPUs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Add missing voice activation register definitions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: use component driver name as component name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Fix build error with CONFIG_GPIOLIB is not set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: fix undefined references with Baytrail-only support (Jaroslav Kysela) [1738610] - [sound] ALSA: wcd9335: fix a incorrect use of kstrndup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-codec: fix first delay on Speaker (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-spdif: Add support for H6 SoC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-spdif: Add TX fifo bit flush quirks (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-spdif: Move quirks to the top (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: fix spelling mistake "configued" -> "configured" (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: fix integer overflow on unsigned int multiply (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: force end-of-file for debugfs trace at suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: trace: remove code duplication in sof_wait_trace_avail() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Use struct_size() in kmemdup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: Show KConfig entry (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: Use struct_size() helper (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: remove redundant assignment to pulse_len (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix the hda init chip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: fix a race, leading to IPC timeouts (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: control: correct the copy size for bytes kcontrol put (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: remove warning - initialize workqueue on open (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: clear hw_params_upon_resume flag correctly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: fix error handling with the probe workqueue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: remove snd_soc_unregister_component in case of error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: remove DSP after unregistering machine driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: fixup references at soc_cleanup_card_resources() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Force polling mode on CFL and CNL (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 119 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 64 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: lock client_mutex while removing link components (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: Restore original configuration of DAI format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qdsp6: q6core: Use struct_size() in kmemdup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Use struct_size() helper (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Use struct_size() in krealloc() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: remove unnecessary inclusion of skl.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: move card registration to the end of probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: remove unused DAPM pins (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: enable dev runtime suspend and resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Add machine driver for CX2072X on BYT/CHT platforms (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Add support for Conexant CX2072X CODEC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_asrc: Unify the supported input and output rate (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: fixup try_module_get()/module_put() timing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: add newline for clarity (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: fix compile error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: fix compile error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: fix AMP quirk support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: fix for codec button mapping (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 4 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 3 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: Fix configuration of DAI format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: WARN() is not related to component->driver->probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: move pcm_new from snd_soc_component_driver to snd_soc_dai_driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: Remap button control-function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: enable IIR filter (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rename functions that pollute the simple_xxx namespace (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: soc-acpi: Fix machine selection order (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677-spi: Handle over reading when flipping bytes (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dpm: fixup DAI active unbalance (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic3x: Add support for high power analog output (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Add reset gpio handling (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Add regcache mask dirty (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_asrc: replace the process_option table with function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_asrc: Fix the issue about unsupported rate (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: add g12a tohdmitx control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: add basic codec-to-codec link support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: allow muxes to force a disconnect (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: set link name based on link node name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: set data align (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: add memory interface data align (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ak4458: rstn_control - return a non-zero on error only (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: re-introduce mutex locking (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: add soc_pcm_components_open() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: add missing cpu_dai->rate = 0 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: do cpu_dai related operation at same place (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use soc_find_component() at snd_soc_get_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add soc_component_to_node() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup soc_bind_dai_link() comment balance (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: don't use codec_dais on soc_bind_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use i on snd_soc_resume() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: request GPIO when device get probed (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ICL add Icelake chip info struct (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ICL: add Icelake SSP count (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: remove runtime PM calls during pcm open/close (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Add Cometlake PCI IDs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Add Comet Lake PCI IDs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: Reporting accurate hw_ptr for acp3x dma (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: BE dai needs prepare when pause release after resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ak4458: add return value for ak4458_probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC : cs4265 : readable register too low (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix error in verbose ipc command parsing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix race in FW boot timeout handling (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: nocodec: fix undefined reference (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-acpi: fix implicit header use of module.h/export.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Move clock operation to PM runtime (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: i2s: manage identification registers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove ops dependency on the dai id (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove reference to the dai drivers in the private data (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove reference to the current substream (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove function name debug traces (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 (Jaroslav Kysela) [1738610] - [sound] ALSA: xen-front: fix unintention integer overflow on left shifts (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - PCI quirk for Medion E4254 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Apply AMD controller workaround for Raven platform (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix alienware headset mic (Jaroslav Kysela) [1738610] - [sound] ALSA: Add Acer Aspire Ethos 8951G model quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi: remove redundant assignment to variable pcm_idx (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix the problem of two front mics on a ThinkCentre (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Enable internal speaker & headset mic of ASUS UX431FL (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Add quirk for HP Pavilion 15 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix overridden device-specific initialization (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fix potential endless loop at applying quirks (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Allow runtime PM for controller if component notifier is used (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Blacklist PC beep for Lenovo ThinkCentre M73/93 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Check beep whitelist before assigning in all codecs (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/ca0132 - Add new SBZ quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fixes inverted Conexant GPIO mic mute led (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Define a fallback_pin_fixup_tbl for alc269 family (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Expand pin_match function to match upcoming new tbls (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Drop unsol event handler for Intel HDMI codecs (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Add a generic reboot_notify (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Let all conexant codec enter D3 when rebooting (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/sigmatel - remove unused variable 'stac9200_core_init' (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Add quirk for HP Envy x360 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Set fifo_size for both playback and capture streams (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Add a quirk model for fixing Huawei Matebook X right speaker (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Add model description for Chrome headset button quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix a typo in model documentation (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Inform too slow responses (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Apply workaround for another AMD chip 1022:1487 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Remove page allocation redirection (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Workaround for crackled sound on AMD controller (1022:1457) (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Don't override global PCM hw info flag (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Add support of Zhaoxin controller (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/intel: stop probe if DMICS are detected on Skylake+ platforms (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Show the fatal CORB/RIRB error more clearly (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Add a conexant codec entry to let mute led work (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fix intermittent CORB/RIRB stall on Intel chips (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Make hdac_device device-managed (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Flush interrupts on disabling (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Allow audio component for AMD/ATI and Nvidia HDMI (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Don't report spurious jack state changes (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Optimize resume for codecs without jack detection (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Don't resume forcibly i915 HDMI/DP codec (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Fix i915 reverse port/pin mapping (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Remove duplicated define (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek: apply ALC891 headset fixup to one Dell machine (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fixed Headphone Mic can't record on Dell platform (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Simplify snd_hdac_refresh_widgets() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Fix widget_mutex incomplete protection (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/ca0132 - remove redundant assignment to variable 'changed' (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Change front mic location for Lenovo M710q (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek: Add quirks for several Clevo notebook barebones (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ALSA: hda/realtek - Improve the headset mic for Acer Aspire laptops" (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Add Elkhart Lake PCI ID (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: fix a mask for unsolicited event tags (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hda: fix unbalanced codec dev refcount for HDA_DEV_ASOC (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/ca0132: Use struct_size() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Use struct_size() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Update headset mode for ALC256 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: move polling_mode flag to struct hdac_bus (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: assign polling_mode after azx_bus_init (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Improve the headset mic for Acer Aspire laptops (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Force polling mode on CNL for fixing codec communication (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Enable micmute LED for Huawei laptops (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Set default power save node to 0 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Check headset type by unplug and resume (Jaroslav Kysela) [1738610] - [sound] ALSA: hdac: Fix codec name after machine driver is unloaded and reloaded (Jaroslav Kysela) [1738610] - [sound] ALSA: hdac: fix memory release for SST and SOF drivers (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 371 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Add SPDX license identifier for missed files (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Add SPDX license identifier for more missed files (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 130 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 336 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 285 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 295 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 273 (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix wrong packet parameter for Alesis iO26 (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: check intermediate state of clock status and retry (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: handle error code when getting current source of clock (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: remove WARN_ON() at destruction of AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: add note for FE-8 (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: add support for MOTU 4pre (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix isoc cycle count to which rx packet is scheduled (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix error path for initialization of stream structures (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: fix to handle correct stream for PCM playback (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: fix NULL pointer dereference to unused stream structure (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire: fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: localize kernel APIs to start/stop each AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for bus reset handler (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for initialization/destruction of AMDTP streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add a kernel API to start AMDTP streams in AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add a kernel API to add AMDTP stream into AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add a kernel API to stop a couple of AMDTP streams in AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add AMDTP domain structure to handle several isoc contexts (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: more code refactoring for MOTU data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: process payload of isoc context according to packet descriptors (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: code refactoring for FF data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for MOTU data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for TASCAM data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring for DOT data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for AM824 data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass packet descriptor to data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring to process context payloads (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring to process PCM substream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use packet descriptor for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use packet descriptor for IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add list of packet descriptor (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass no syt information to data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add syt_override member for some protocols (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: operate data block counter in top level of processing for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: operate data block counter in top level of processing for IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass data block counter to data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass data block count as an argument to tracepoints event (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: obsolete ctx_data.tx.first_dbc with CIP_UNALIGHED_DBC flag (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for local variables (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for post operation to data block counter (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for error path of parser for CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix different data block counter between probed event and transferred isochronous packet (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix initial value of data block count for IR context without CIP_DBC_IS_END_EVENT (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib/fireface: fix initial value of data block counter for IR context with CIP_NO_HEADER (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix invalid length of rx packet payload for tracepoint events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib/fireworks: fix miss detection of received MIDI messages (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix to process MIDI conformant data channel for AM824 format (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: cache next data_block_counter after probing tracepoints event for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify common tracepoints for both direction (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ALSA: firewire-lib: fix inverted node IDs for amdtp_packet events" (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: ensure to release isochronous resources in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: ensure to release isochronous resources in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: ensure to release isochronous resources in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: minor code refactoring to stop isochronous context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: rename helper functions to begin/finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for condition to stop streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: add helper function to keep isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify midi callback function (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify the count of subscriber for packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: split allocation of isochronous resources from establishment of connection (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: change the range of critical section for stream data in PCM.hw_free callback (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code refactoring for error path to start duplex stream (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: change the range of critical section for stream data in PCM.hw_free callback (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code refactoring for callback function to rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code rafactoring for callback functions to PCM interface (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix compiler warning due to returning uninitialized value (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: configure stream parameter in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: configure packet format in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: unify substreams counter (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: rename helper functions for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: expand stop procedure for packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: break packet streaming at bus-reset handler (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: start duplex streams if supported (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: set packet parameter according to current configuration (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: code refactoring for stop condition of packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: don't set XRUN in stop streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: configure stream parameters in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: configure sampling transfer frequency in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for pcm.hw_params/hw_free (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for rawmidi.open/close (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: unify substream counter (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code refactoring to initialize/destroy stream data (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: obsolete useless member of private structure (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: don't set XRUN in stop streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: configure sampling transfer frequency in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: code refactoring to keep isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: code refactoring to stop packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring to keep isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: simplify error path to begin streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: refactoring to move timing of registration for isochronous channel (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: allow PCM capture for Stanton SCS.1m (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: minor code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support allocate_resources operation in latter protocol (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support allocate_resources operation in ff400 protocol (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support allocate_resources operation in ff800 protocol (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: add protocol-specific operation to allocate isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: minor code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: update isochronous resources when starting packet streaming after bus reset (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for release of isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for reservation of isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for registration of isochronous channels (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: fix destruction of data for isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: Use ULL suffixes for 64-bit constants (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: refactoring to obsolete IR packet handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: refactoring to obsolete IT packet handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix inverted node IDs for amdtp_packet events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix data block counter for incoming packet without CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use 8 byte packet header for IT context to separate CIP header from CIP payload (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring to queueing packets (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: unify packet handler for IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: split helper function to generate CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: unify packet handler for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use 16 bytes IR context header to separate CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: split helper function to check incoming CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: compute pointer to payload buffer in context handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: calculate the length of packet payload in packet handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use clear name for variable of CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use IT context header to compute cycle count for scheduling packet (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: obsolete macro for header of IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add helper function to cancel context inner callback handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use union for directional parameters (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: unify tracing events to 'amdtp_packet' event (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use dynamic array for CIP header of tracing events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use the same unit for payload argument in tracing events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add data_blocks/data_block_counter parameter to in_packet/out_packet tracing events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use the same type of argument for CIP header for tracing event (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: add stream format parameters for PreSonus FireStudio (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 102 (Jaroslav Kysela) [1738610] - [sound] ALSA: aoa: onyx: always initialize register read value (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 250 (Jaroslav Kysela) [1738610] - [sound] ALSA: ac97: Fix double free of ac97_codec_device (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Add SPDX license identifier - Makefile/Kconfig (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: add support for 352.8KHz and 384KHz sample rate (Jaroslav Kysela) [1738610] - [sound] ALSA: seq: Fix potential concurrent access to the deleted pool (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: fix lost wakeup event scenarios in snd_pcm_drain (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Be more restrictive about when a drain is allowed (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Don't allow paritial drain operations on capture streams (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Prevent bypasses of set_params (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Fix regression on compressed capture streams (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: Fix refcount_inc() on zero usage (Jaroslav Kysela) [1738610] - [sound] ALSA: seq: Break too long mutex context in the write loop (Jaroslav Kysela) [1738610] - [sound] ALSA: seq: fix incorrect order of dest_client/dest_ports arguments (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 372 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 (Jaroslav Kysela) [1738610] - [sound] ALSA: control: Use struct_size() (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 167 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 151 (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: oss: Use struct_size() helper (Jaroslav Kysela) [1738610]- [tools] selftests/powerpc: Retry on host facility unavailable (Desnes Augusto Nunes do Rosario) [1739770] - [tools] selftests/powerpc: Do not fail with reschedule (Desnes Augusto Nunes do Rosario) [1739770] - [tools] libperf: Warn when exceeding MAX_NR_CPUS in cpumap (Frank Ramsay) [1753332] - [tools] perf header: Replace MAX_NR_CPUS with cpu__max_cpu() (Frank Ramsay) [1753332] - [tools] perf machine: Replace MAX_NR_CPUS with perf_env::nr_cpus_online (Frank Ramsay) [1753332] - [tools] perf session: Replace MAX_NR_CPUS with perf_env::nr_cpus_online (Frank Ramsay) [1753332] - [tools] perf stat: Replace MAX_NR_CPUS with cpu__max_cpu() (Frank Ramsay) [1753332] - [tools] perf svghelper: Replace MAX_NR_CPUS with perf_env::nr_cpus_online (Frank Ramsay) [1753332] - [tools] perf timechart: Refactor svg_build_topology_map() (Frank Ramsay) [1753332] - [tools] perf tools: Increase MAX_NR_CPUS and MAX_CACHES (Frank Ramsay) [1753332] - [crypto] crypto: chelsio - count incomplete block in IV (Jonathan Toppins) [1725813] - [crypto] crypto: chelsio - Fix softlockup with heavy I/O (Jonathan Toppins) [1725813] - [crypto] crypto: chelsio - Fix NULL pointer dereference (Jonathan Toppins) [1725813] - [nvme] nvme-pci: Allow PCI bus-level PM to be used if ASPM is disabled (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [pci] PCI/ASPM: Add pcie_aspm_enabled() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Fix async probe remove race (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix controller removal race with scan work (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-rdma: fix possible use-after-free in connect error flow (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix a possible deadlock when passthru commands sent to a multipath device (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-core: Fix extra device_put() call on error path (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-file: fix nvmet_file_flush() always returning an error (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-loop: Flush nvme_delete_wq when removing the port (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: Fix use-after-free bug when a port is removed (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: revalidate nvme_ns_head gendisk in nvme_validate_ns (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] Revert "nvme-pci: don't create a read hctx mapping without read queues" (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix multipath crash when ANA is deactivated (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix memory leak caused by incorrect subsystem free (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: ignore subnqn for ADATA SX6000LNP (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix NULL deref for fabrics options (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix regression upon hot device removal and insertion (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fc: fix module unloads while lports still pending (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-tcp: set the STABLE_WRITES flag when data digests are enabled (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: print a hint while rejecting NSID 0 or 0xffffffff (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-tcp: don't use sendpage for SLAB pages (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: do not select namespaces which are about to be removed (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: also check for a disabled path if there is a single sibling (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: factor out a nvme_path_is_disabled helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: export I/O characteristics attributes in Identify (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: set physical block size and optimal I/O size (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: add delete completion and submission queue to admin cmds tracer (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: fix spelling mistake "spcecific" -> "specific" (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: check for NULL return from pci_alloc_p2pmem() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: limit max_hw_sectors based on the DMA max mapping size (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: don't fall back to a 32-bit DMA mask (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: don't create a read hctx mapping without read queues (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: make nvme_dev_pm_ops static (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fcloop: resolve warnings on RCU usage and sleep warnings (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fcloop: fix inconsistent lock state warnings (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [pci] PCI: PM: Skip devices in D0 for (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [pci] PCI: PM: Avoid possible suspend-to-idle issue (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add I/O characteristics fields (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: enable to inject errors into admin commands (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: prepare for fault injection into admin commands (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: introduce target-side trace (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: print result and status in hex format (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: support for fabrics commands in host-side (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: move opcode symbol print to nvme.h (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: do not export nvme_trace_disk_name (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: properly report state change failure in nvme_reset_work (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: clean up nvme_remove_dead_ctrl a bit (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: set the errno on ctrl state change error (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: adjust irq max_vector using num_possible_cpus() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: use host managed power state for suspend (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove unnecessary zero for static var (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: introduce nvme_is_fabrics to check fabrics cmd (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fc: add message when creating new association (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove queue_count_ops for write_queues and poll_queues (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix possible io failures when removing multipathed ns (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: export get and set features (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: add transport discovery change op (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fcloop: add support for nvmet discovery_event op (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: remove blk_init_request_from_bio (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: initialize the write priority (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: Fix u32 overflow in the number of namespace list calculation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: add transport discovery change event callback support (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: don't limit DMA segement size (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix data_len to 0 for bdev-backed write_zeroes (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-tcp: fix queue mapping when queue count is limited (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: use blk-mq mapping for unmanaged irqs (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: copy MTFA field from identify controller (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: release namespace SRCU protection before performing controller ioctls (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: merge nvme_ns_ioctl into nvme_ioctl (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: remove the ifdef around nvme_nvm_ioctl (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix srcu locking on error return in nvme_get_ns_from_disk (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: Fix known effects (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Sync queues on reset (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Unblock reset_work on IO failure (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Don't disable on timeout in reset state (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Fix controller freeze wait disabling (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: validate cntlid during controller initialisation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: change locking for the per-subsystem controller list (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: trace all async notice events (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fabrics: remove unused argument (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: add known admin effects to augument admin effects log page (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: init shadow doorbell after each reset (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: mark expected switch fall-through (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: mark nvme_core_init and nvme_core_exit static (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: protect discovery change log event list iteration (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: move command size checks to the core (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: check more command sizes (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fabrics: check more command sizes (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove an unneeded variable initialization (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: unquiesce admin queue on shutdown (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: shutdown on timeout during deletion (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: set 0 capacity if namespace block size exceeds PAGE_SIZE (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-rdma: fix a NULL deref when an admin connect times out (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-file: clamp-down file namespace lba_shift (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: include (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: rename nvme_completion instances from rsp to cqe (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-rdma: remove p2p_client initialization from fast-path (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: return a specified error it subsys_alloc fails (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix discover log page when offsets are used (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: never fail double namespace enablement (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: log the error status on Identify Namespace failure (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: tidy up nvme_map_data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: add safety check for subsystem lock during nvmet_ns_changed (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: only call nvme_unmap_data for requests transferring data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove q_dmadev from nvme_queue (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: merge nvme_free_iod into nvme_unmap_data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: move the call to nvme_cleanup_cmd out of nvme_unmap_data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove nvme_init_iod (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: use a flag for polled queues (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: add a rq_integrity_vec helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: add dma_map_bvec helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: add a rq_dma_dir helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: use zero-sized array and struct_size() in kzalloc() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove unused nvme_iod member (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: avoid double errno conversions (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: avoid double dereference to convert le to cpu (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix error flow during ns enable (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add proper write zeroes setup for the multipath device (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: disable Write Zeroes for qemu controllers (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: bring Disconnect into compliance with FC-NVME spec (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add proper discard setup for the multipath device (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: remove nvme_ns_config_oncs (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: fix issues with targetport assoc_list list walking (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add get-feature to admin cmds tracer (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-loop: init nvmet_ctrl fatal_err_work when allocate (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: put ns_head ref if namespace fails allocation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: fix cdw10 buffer overrun (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: don't warn on block content change effects (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: update comment to make the code easier to read (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: convert to SPDX identifiers (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-lightnvm: convert to SPDX identifiers (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: return error from (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: avoid that deleting a controller triggers a circular locking complaint (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: introduce a helper function for controller deletion (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: unexport nvme_delete_ctrl_sync() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: check kstrtoint() return value in queue_count_set() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix indentation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [lightnvm] lightnvm: simplify geometry (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [powerpc] powerpc/tm: Fix FP/VMX unavailable exceptions inside a transaction (Gustavo Duarte) [1750653] - [powerpc] powerpc/tm: Fix restoring FP/VMX facility incorrectly on interrupts (Gustavo Duarte) [1750653] - [block] block: split .sysfs_lock into two locks (Ming Lei) [1697383] - [block] block: add helper for checking if queue is registered (Ming Lei) [1697383] - [block] blk-mq: don't hold q->sysfs_lock in blk_mq_map_swqueue (Ming Lei) [1697383] - [block] block: don't hold q->sysfs_lock in elevator_init_mq (Ming Lei) [1697383] - [block] block: Remove blk_mq_register_dev() (Ming Lei) [1697383] - [x86] KVM: X86: Fix fpu state crash in kvm guest (Prarit Bhargava) [1737070] - [x86] x86/fpu: Don't use current->mm to check for a kthread (Prarit Bhargava) [1737070] - [x86] x86/fpu: Update kernel's FPU state before using for the fsave header (Prarit Bhargava) [1737070] - [x86] x86/fpu: Use fault_in_pages_writeable() for pre-faulting (Prarit Bhargava) [1737070] - [mm] mm/gup: continue VM_FAULT_RETRY processing even for pre-faults (Prarit Bhargava) [1737070] - [x86] x86/fpu: Fault-in user stack if copy_fpstate_to_sigframe() fails (Prarit Bhargava) [1737070] - [x86] x86/pkeys: Add PKRU value to init_fpstate (Prarit Bhargava) [1737070] - [x86] x86/fpu: Restore regs in copy_fpstate_to_sigframe() in order to use the fastpath (Prarit Bhargava) [1737070] - [x86] x86/fpu: Add a fastpath to copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Add a fastpath to __fpu__restore_sig() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Defer FPU state load until return to userspace (Prarit Bhargava) [1737070] - [x86] x86/fpu: Merge the two code paths in __fpu__restore_sig() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Restore from kernel memory on the 64-bit path too (Prarit Bhargava) [1737070] - [x86] x86/fpu: Inline copy_user_to_fpregs_zeroing() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Update xstate's PKRU value on write_pkru() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Prepare copy_fpstate_to_sigframe() for TIF_NEED_FPU_LOAD (Prarit Bhargava) [1737070] - [x86] x86/fpu: Always store the registers in copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/entry: Add TIF_NEED_FPU_LOAD (Prarit Bhargava) [1737070] - [x86] x86/fpu: Eager switch PKRU state (Prarit Bhargava) [1737070] - [x86] x86/pkeys: Don't check if PKRU is zero before writing it (Prarit Bhargava) [1737070] - [x86] x86/fpu: Only write PKRU if it is different from current (Prarit Bhargava) [1737070] - [x86] x86/pkeys: Provide *pkru() helpers (Prarit Bhargava) [1737070] - [x86] x86/fpu: Use a feature number instead of mask in two more helpers (Prarit Bhargava) [1737070] - [x86] x86/fpu: Make __raw_xsave_addr() use a feature number instead of mask (Prarit Bhargava) [1737070] - [x86] x86/fpu: Add an __fpregs_load_activate() internal helper (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove user_fpu_begin() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu->initialized (Prarit Bhargava) [1737070] - [x86] x86/fpu: Don't save fxregs for ia32 frames in copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu->initialized usage in copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Always init the state in fpu__clear() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove preempt_disable() in fpu__clear() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu__restore() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu->initialized usage in __fpu__restore_sig() (Prarit Bhargava) [1737070] - [x86] x86/entry: Remove unneeded need_resched() loop (Prarit Bhargava) [1737070] - [x86] x86/uaccess: Introduce user_access_{save, restore}() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Fix i486 + no387 boot crash by only saving FPU registers on context switch if there is an FPU (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove second definition of fpu in __fpu__restore_sig() (Prarit Bhargava) [1737070] - [net] udp: correct reuseport selection with connected sockets (Paolo Abeni) [1665807] - [net] udp6: add missing rehash callback to udplite (Paolo Abeni) [1665807] - [net] udp: add missing rehash callback to udplite (Paolo Abeni) [1665807] - [net] udp6: prefer listeners bound to an address (Paolo Abeni) [1665807] - [net] udp: prefer listeners bound to an address (Paolo Abeni) [1665807] - [net] sched: fix race between deactivation and dequeue for NOLOCK qdisc (Davide Caratti) [1744397] - [net] check extack._msg before print (Ivan Vecera) [1751279] - [net] report invalid mtu value via netlink extack (Ivan Vecera) [1751279] - [net] report min and max mtu network device settings (Ivan Vecera) [1751279] - [net] failover: change mtu has RTNL (Ivan Vecera) [1751279] - [net] neigh: fix multiple neigh timer scheduling (Lorenzo Bianconi) [1730632] - [net] virtchnl: fix 'Unknown bps' in dmesg for 2.5Gb/5Gb speeds (Ivan Vecera) [1748437] - [net] Add a define for LLDP ethertype (Ivan Vecera) [1748428] - [net] devlink: Add support for direct reporter health state update (Petr Oros) [1746363] - [netdrv] Add IANA_VXLAN_UDP_PORT definition to vxlan header file (Ivan Vecera) [1731347] - [netdrv] Move the definition of the default Geneve udp port to public header file (Ivan Vecera) [1731347] - [net] openvswitch: Add a new action check_pkt_len (Numan Siddique) [1700733]- [pci] PCI: Add pci_dev_id() helper (Myron Stowe) [1735874] - [netdrv] ibmvnic: Warn unknown speed message only when carrier is present (Steve Best) [1749873] - [netdrv] net/ibmvnic: Fix missing { in __ibmvnic_reset (Steve Best) [1749873] - [netdrv] net/ibmvnic: free reset work of removed device from queue (Steve Best) [1749873] - [netdrv] ibmvnic: Do not process reset during or after device removal (Steve Best) [1749873] - [cpufreq] cpufreq: intel_pstate: Show different max frequency with turbo 3 and HWP (Alexander Beregalov) [1752053] - [char] hpet: Fix missing '=' character in the __setup() code of hpet_mmap_enable (Prarit Bhargava) [1660796] - [hwtracing] intel_th: pci: Add support for another Lewisburg PCH (Jiri Olsa) [1714486] - [x86] x86/entry/32: Fix ENDPROC of common_spurious (Prarit Bhargava) [1730447] - [x86] x86/irq: Seperate unused system vectors from spurious entry again (Prarit Bhargava) [1730447] - [vfio] vfio/type1: Handle different mdev isolation type (Tarun Gupta) [1498341] - [vfio] vfio/type1: Add domain at(de)taching group helpers (Tarun Gupta) [1498341] - [vfio] vfio/mdev: Add iommu related member in mdev_device (Tarun Gupta) [1498341] - [documentation] ipmb: place it at driver-api and convert to ReST (Tony Camuso) [1752071] - [char] ipmi_si_intf: Fix race in timer shutdown handling (Tony Camuso) [1752071] - [char] ipmi_ssif: avoid registering duplicate ssif interface (Tony Camuso) [1752071] - [char] ipmi: Free receive messages when in an oops (Tony Camuso) [1752071] - [char] ipmi_si: Only schedule continuously in the thread in maintenance mode (Tony Camuso) [1752071] - [char] ipmi_si: Remove ipmi_ from the device attr names (Tony Camuso) [1752071] - [char] ipmi_si: Convert device attr permissions to octal (Tony Camuso) [1752071] - [char] ipmi_si: Rework some include files (Tony Camuso) [1752071] - [char] ipmi_si: Convert timespec64 to timespec (Tony Camuso) [1752071] - [char] Fix uninitialized variable in ipmb_dev_int.c (Tony Camuso) [1752071] - [char] fix platform_no_drv_owner.cocci warnings (Tony Camuso) [1752071] - [char] ipmi: ipmb: don't allocate i2c_client on stack (Tony Camuso) [1752071] - [char] ipmi: ipmb: Fix build error while CONFIG_I2C is set to m (Tony Camuso) [1752071] - [char] Add support for IPMB driver (Tony Camuso) [1752071] - [char] drivers: ipmi: Drop device reference (Tony Camuso) [1752071] - [char] ipmi_ssif: fix unexpected driver unregister warning (Tony Camuso) [1752071] - [char] Add SPDX license identifier - Makefile/Kconfig (Tony Camuso) [1752071] - [char] ipmi_si: use bool type for initialized variable (Tony Camuso) [1752071] - [char] ipmi_si: fix unexpected driver unregister warning (Tony Camuso) [1752071] - [char] ipmi: Remove warning if no slave address is present (Tony Camuso) [1752071] - [char] ipmi:ssif: Only unregister the platform driver if it was registered (Tony Camuso) [1752071] - [char] ipmi: Add the i2c-addr property for SSIF interfaces (Tony Camuso) [1752071] - [char] ipmi: avoid atomic_inc in exit function (Tony Camuso) [1752071] - [char] ipmi: Remove file from ipmi_file_private (Tony Camuso) [1752071] - [char] ipmi_si: remove an unused variable in try_smi_init() (Tony Camuso) [1752071] - [char] ipmi: Make ipmi_interfaces_srcu variable static (Tony Camuso) [1752071] - [char] ipmi: Change to ktime_get_ts64() (Tony Camuso) [1752071] - [char] ipmi: Free the address list on module cleanup (Tony Camuso) [1752071] - [edac] EDAC, skx, i10nm: Fix source ID register offset (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Check ECC enabling status per channel (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Add Intel additional Ice-Lake support (Aristeu Rozanski) [1485543 1482412] - [x86] x86/CPU: Add more Icelake model numbers (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx, i10nm: Make skx_common.c a pure library (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_common: Add code to recognise new compound error code (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Fix randconfig builds (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Add a driver for Intel 10nm server processors (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_edac: Delete duplicated code (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_common: Separate common code out from skx_edac (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Let EDAC core show the decoded result for debugfs (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Move debugfs node under EDAC's hierarchy (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Prepend hex formatting with '0x' (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Fix function calling order in skx_exit() (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_edac: Fix logical channel intermediate decoding (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, {i7core,sb,skx}_edac: Fix uncorrected error counting (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC: Correct DIMM capacity unit symbol (Aristeu Rozanski) [1485543 1482412] - [x86] x86/mce: Add notifier_block forward declaration (Aristeu Rozanski) [1485543 1482412] - [netdrv] net: thunderx: fix NULL pointer dereference in nicvf_open/nicvf_stop (Dean Nelson) [1657380] - [netdrv] net: thunder: fix a potential NULL pointer dereference (Dean Nelson) [1657380] - [netdrv] net: thunderx: remove link change polling code and info from nicpf (Dean Nelson) [1657380] - [netdrv] net: thunderx: move link state polling function to VF (Dean Nelson) [1657380] - [netdrv] net: thunderx: add mutex to protect mailbox from concurrent calls for same VF (Dean Nelson) [1657380] - [netdrv] net: thunderx: rework xcast message structure to make it fit into 64 bit (Dean Nelson) [1657380] - [netdrv] net: thunderx: add nicvf_send_msg_to_pf result check for set_rx_mode_task (Dean Nelson) [1657380] - [netdrv] net: thunderx: make CFG_DONE message to run through generic send-ack sequence (Dean Nelson) [1657380] - [netdrv] net: thunderx: replace global nicvf_rx_mode_wq work queue for all VFs to private for each of them. (Dean Nelson) [1657380] - [netdrv] net: thunderx: set tso_hdrs pointer to NULL in nicvf_free_snd_queue (Dean Nelson) [1657380] - [x86] perf/x86/intel/rapl: Cosmetic rename internal variables in response to multi-die/pkg support (David Arcari) [1616309] - [x86] perf/x86/intel/uncore: Cosmetic renames in response to multi-die/pkg support (David Arcari) [1616309] - [hwmon] hwmon/coretemp: Cosmetic: Rename internal variables to zones from packages (David Arcari) [1616309] - [thermal] thermal/x86_pkg_temp_thermal: Cosmetic: Rename internal variables to zones from packages (David Arcari) [1616309] - [x86] perf/x86/intel/cstate: Support multi-die/package (David Arcari) [1616309] - [x86] perf/x86/intel/rapl: Support multi-die/package (David Arcari) [1616309] - [x86] perf/x86/intel/uncore: Support multi-die/package (David Arcari) [1616309] - [topology] topology: Create core_cpus and die_cpus sysfs attributes (David Arcari) [1616309] - [topology] topology: Create package_cpus sysfs attribute (David Arcari) [1616309] - [hwmon] hwmon/coretemp: Support multi-die/package (David Arcari) [1616309] - [powercap] powercap/intel_rapl: Update RAPL domain name and debug messages (David Arcari) [1616309] - [thermal] thermal/x86_pkg_temp_thermal: Support multi-die/package (David Arcari) [1616309] - [powercap] powercap/intel_rapl: Support multi-die/package (David Arcari) [1616309] - [powercap] powercap/intel_rapl: Simplify rapl_find_package() (David Arcari) [1616309] - [x86] x86/topology: Define topology_logical_die_id() (David Arcari) [1616309] - [x86] x86/topology: Define topology_die_id() (David Arcari) [1616309] - [topology] cpu/topology: Export die_id (David Arcari) [1616309] - [x86] x86/topology: Create topology_max_die_per_package() (David Arcari) [1616309] - [x86] x86/topology: Add CPUID.1F multi-die/package support (David Arcari) [1616309] - [x86] x86/smpboot: Rename match_die() to match_pkg() (David Arcari) [1616309] - [documentation] topology: Simplify cputopology.txt formatting and wording (David Arcari) [1616309] - [documentation] x86/topology: Fix documentation typo (David Arcari) [1616309] - [mm] mm: remove stale comment from page struct (Rafael Aquini) [1737065] - [mm] mm/slab.c: fix an infinite loop in leaks_show() (Rafael Aquini) [1737065] - [mm] mm/slub.c: update the comment about slab frozen (Rafael Aquini) [1737065] - [mm] mm/slab.c: remove unneed check in cpuup_canceled (Rafael Aquini) [1737065] - [mm] slub: remove useless kmem_cache_debug() before remove_full() (Rafael Aquini) [1737065] - [mm] slab: use slab_list instead of lru (Rafael Aquini) [1737065] - [mm] slub: use slab_list instead of lru (Rafael Aquini) [1737065] - [mm] slob: use slab_list instead of lru (Rafael Aquini) [1737065] - [mm] slob: respect list_head abstraction layer (Rafael Aquini) [1737065] - [mm] slab: fix a crash by reading /proc/slab_allocators (Rafael Aquini) [1737065] - [mm] mm: add support for kmem caches in DMA32 zone (Rafael Aquini) [1737065] - [mm] mm, slub: make the comment of put_cpu_partial() complete (Rafael Aquini) [1737065] - [mm] mm/slub.c: remove an unused addr argument (Rafael Aquini) [1737065] - [mm] mm/slab.c: kmemleak no scan alien caches (Rafael Aquini) [1737065] - [mm] mm/slub.c: freelist is ensured to be NULL when new_slab() fails (Rafael Aquini) [1737065] - [mm] slab: alien caches must not be initialized if the allocation of the alien cache failed (Rafael Aquini) [1737065] - [mm] include/linux/slab.h: fix sparse warning in kmalloc_type() (Rafael Aquini) [1737065] - [mm] mm/slub.c: record final state of slub action in deactivate_slab() (Rafael Aquini) [1737065] - [mm] mm/slub.c: page is always non-NULL in node_match() (Rafael Aquini) [1737065] - [mm] mm/slub.c: remove validation on cpu_slab in __flush_cpu_slab() (Rafael Aquini) [1737065] - [mm] mm, slab: remove unnecessary unlikely() (Rafael Aquini) [1737065] - [mm] mm: move obj_to_index to include/linux/slab_def.h (Rafael Aquini) [1737065] - [mm] slab: make kmem_cache_create{_usercopy} description proper kernel-doc (Rafael Aquini) [1737065] - [mm] slub: extend slub debug to handle multiple slabs (Rafael Aquini) [1737065] - [mm] mm/slub.c: switch to bitmap_zalloc() (Rafael Aquini) [1737065] - [fs] io_uring: add need_resched() check in inner poll loop (Jeff Moyer) [1706143] - [fs] io_uring: don't enter poll loop if we have CQEs pending (Jeff Moyer) [1706143] - [fs] io_uring: fix potential hang with polled IO (Jeff Moyer) [1706143] - [fs] io_uring: fix an issue when IOSQE_IO_LINK is inserted into defer list (Jeff Moyer) [1706143] - [fs] io_uring: fix manual setup of iov_iter for fixed buffers (Jeff Moyer) [1706143] - [fs] io_uring: fix KASAN use after free in io_sq_wq_submit_work (Jeff Moyer) [1706143] - [fs] io_uring: ensure ->list is initialized for poll commands (Jeff Moyer) [1706143] - [fs] io_uring: track io length in async_list based on bytes (Jeff Moyer) [1706143] - [fs] io_uring: don't use iov_iter_advance() for fixed buffers (Jeff Moyer) [1706143] - [fs] io_uring: add a memory barrier before atomic_read (Jeff Moyer) [1706143] - [fs] io_uring: fix counter inc/dec mismatch in async_list (Jeff Moyer) [1706143] - [fs] io_uring: fix the sequence comparison in io_sequence_defer (Jeff Moyer) [1706143] - [fs] io_uring: fix io_sq_thread_stop running in front of io_sq_thread (Jeff Moyer) [1706143] - [include] io_uring: add support for recvmsg() (Jeff Moyer) [1706143] - [include] io_uring: add support for sendmsg() (Jeff Moyer) [1706143] - [fs] signal: remove the wrong signal_pending() check in restore_user_sigmask() (Jeff Moyer) [1706143] - [fs] io_uring: add support for sqe links (Jeff Moyer) [1706143] - [fs] io_uring: ensure req->file is cleared on allocation (Jeff Moyer) [1706143] - [fs] io_uring: fix memory leak of UNIX domain socket inode (Jeff Moyer) [1706143] - [fs] io_uring: punt short reads to async context (Jeff Moyer) [1706143] - [fs] uio: make import_iovec()/compat_import_iovec() return bytes on success (Jeff Moyer) [1706143] - [fs] io_uring: Fix __io_uring_register() false success (Jeff Moyer) [1706143] - [tools] tools/io_uring: sync with liburing (Jeff Moyer) [1706143] - [tools] tools/io_uring: fix Makefile for pthread library link (Jeff Moyer) [1706143] - [fs] io_uring: use wait_event_interruptible for cq_wait conditional wait (Jeff Moyer) [1706143] - [fs] io_uring: adjust smp_rmb inside io_cqring_events (Jeff Moyer) [1706143] - [fs] io_uring: fix infinite wait in khread_park() on io_finish_async() (Jeff Moyer) [1706143] - [fs] io_uring: remove 'ev_flags' argument (Jeff Moyer) [1706143] - [fs] io_uring: fix failure to verify SQ_AFF cpu (Jeff Moyer) [1706143] - [fs] io_uring: fix race condition reading SQE data (Jeff Moyer) [1706143] - [fs] io_uring: use cpu_online() to check p->sq_thread_cpu instead of cpu_possible() (Jeff Moyer) [1706143] - [fs] io_uring: fix shadowed variable ret return code being not checked (Jeff Moyer) [1706143] - [fs] req->error only used for iopoll (Jeff Moyer) [1706143] - [fs] io_uring: add support for eventfd notifications (Jeff Moyer) [1706143] - [fs] io_uring: add support for IORING_OP_SYNC_FILE_RANGE (Jeff Moyer) [1706143] - [fs] fs: add sync_file_range() helper (Jeff Moyer) [1706143] - [fs] io_uring: add support for marking commands as draining (Jeff Moyer) [1706143] - [fs] io_uring: avoid page allocation warnings (Jeff Moyer) [1706143] - [include] iov_iter: fix iov_iter_type (Jeff Moyer) [1706143] - [fs] block: fix handling for BIO_NO_PAGE_REF (Jeff Moyer) [1706143] - [fs] io_uring: drop req submit reference always in async punt (Jeff Moyer) [1706143] - [fs] io_uring: free allocated io_memory once (Jeff Moyer) [1706143] - [fs] io_uring: fix SQPOLL cpu validation (Jeff Moyer) [1706143] - [fs] io_uring: have submission side sqe errors post a cqe (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier after unsetting IORING_SQ_NEED_WAKEUP (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier after incrementing dropped counter (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier before reading SQ tail (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier after updating SQ head (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier before reading cq head (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier before wq_has_sleeper (Jeff Moyer) [1706143] - [fs] io_uring: fix notes on barriers (Jeff Moyer) [1706143] - [fs] io_uring: fix handling SQEs requesting NOWAIT (Jeff Moyer) [1706143] - [fs] io_uring: remove 'state' argument from io_{read,write} path (Jeff Moyer) [1706143] - [fs] io_uring: fix poll full SQ detection (Jeff Moyer) [1706143] - [fs] io_uring: fix race condition when sq threads goes sleeping (Jeff Moyer) [1706143] - [fs] io_uring: fix race condition reading SQ entries (Jeff Moyer) [1706143] - [fs] io_uring: fail io_uring_register(2) on a dying io_uring instance (Jeff Moyer) [1706143] - [fs] io_uring: fix CQ overflow condition (Jeff Moyer) [1706143] - [fs] io_uring: fix possible deadlock between io_uring_{enter,register} (Jeff Moyer) [1706143] - [powerpc] arch: add pidfd and io_uring syscalls everywhere (Jeff Moyer) [1706143] - [fs] io_uring: drop io_file_put() 'file' argument (Jeff Moyer) [1706143] - [fs] io_uring: only test SQPOLL cpu after we've verified it (Jeff Moyer) [1706143] - [fs] io_uring: park SQPOLL thread if it's percpu (Jeff Moyer) [1706143] - [fs] io_uring: restrict IORING_SETUP_SQPOLL to root (Jeff Moyer) [1706143] - [tools] tools/io_uring: remove IOCQE_FLAG_CACHEHIT (Jeff Moyer) [1706143] - [fs] io_uring: fix double free in case of fileset regitration failure (Jeff Moyer) [1706143] - [fs] io_uring: offload write to async worker in case of -EAGAIN (Jeff Moyer) [1706143] - [fs] io_uring: fix big-endian compat signal mask handling (Jeff Moyer) [1706143] - [fs] block: add BIO_NO_PAGE_REF flag (Jeff Moyer) [1706143] - [fs] iov_iter: add ITER_BVEC_FLAG_NO_REF flag (Jeff Moyer) [1706143] - [maintainers] io_uring: mark me as the maintainer (Jeff Moyer) [1706143] - [fs] io_uring: retry bulk slab allocs as single allocs (Jeff Moyer) [1706143] - [fs] io_uring: fix poll races (Jeff Moyer) [1706143] - [fs] io_uring: fix fget/fput handling (Jeff Moyer) [1706143] - [fs] io_uring: add prepped flag (Jeff Moyer) [1706143] - [fs] io_uring: make io_read/write return an integer (Jeff Moyer) [1706143] - [fs] io_uring: use regular request ref counts (Jeff Moyer) [1706143] - [fs] mm: refactor readahead defines in mm.h (Jeff Moyer) [1706143] - [tools] io_uring: add a few test tools (Jeff Moyer) [1706143] - [fs] io_uring: allow workqueue item to handle multiple buffered requests (Jeff Moyer) [1706143] - [fs] io_uring: add support for IORING_OP_POLL (Jeff Moyer) [1706143] - [fs] io_uring: add io_kiocb ref count (Jeff Moyer) [1706143] - [fs] io_uring: add submission polling (Jeff Moyer) [1706143] - [fs] io_uring: add file set registration (Jeff Moyer) [1706143] - [net] net: split out functions related to registering inflight socket files (Jeff Moyer) [1706143] - [include] io_uring: add support for pre-mapped user IO buffers (Jeff Moyer) [1706143] - [block] block: implement bio helper to add iter bvec pages to bio (Jeff Moyer) [1706143] - [fs] io_uring: batch io_kiocb allocation (Jeff Moyer) [1706143] - [fs] io_uring: use fget/fput_many() for file references (Jeff Moyer) [1706143] - [fs] fs: add fget_many() and fput_many() (Jeff Moyer) [1706143] - [fs] io_uring: support for IO polling (Jeff Moyer) [1706143] - [fs] io_uring: add fsync support (Jeff Moyer) [1706143] - [include] Add io_uring IO interface (Jeff Moyer) [1706143] - [fs] iomap: wire up the iopoll method (Jeff Moyer) [1706143] - [fs] block: add bio_set_polled() helper (Jeff Moyer) [1706143] - [fs] block: wire up block device iopoll method (Jeff Moyer) [1706143] - [fs] signal: Add restore_user_sigmask() (Jeff Moyer) [1706143] - [fs] signal: Add set_user_sigmask() (Jeff Moyer) [1706143] - [net] iov_iter: Fix 9p virtio breakage (Benjamin Coddington) [1734762] - [lib] iov_iter: Add I/O discard iterator (Benjamin Coddington) [1734762] - [fs] iov_iter: Separate type from direction and use accessor functions (Benjamin Coddington) [1734762] - [fs] iov_iter: Use accessor function (Benjamin Coddington) [1734762]- [kernel] ftrace/x86: Anotate text_mutex split between ftrace_arch_code_modify_post_process() and ftrace_arch_code_modify_prepare() (Joe Lawrence) [1696461] - [kernel] ftrace/x86: Remove possible deadlock between register_kprobe() and ftrace_run_update_code() (Joe Lawrence) [1696461] - [kernel] Revert "livepatch: Remove reliable stacktrace check in klp_try_switch_task()" (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: push and pop dynamic debug config (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: add test skip handling (Joe Lawrence) [1696461] - [kernel] module: Fix livepatch/ftrace module text permissions race (Joe Lawrence) [1696461] - [kernel] kprobes: Mark ftrace mcount handler functions nokprobe (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: Add functions.sh to TEST_PROGS_EXTENDED (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: use TEST_PROGS for test scripts (Joe Lawrence) [1696461] - [kernel] livepatch/selftests: use "$@" to preserve argument list (Joe Lawrence) [1696461] - [kernel] livepatch: Module coming and going callbacks can proceed with all listed patches (Joe Lawrence) [1696461] - [kernel] livepatch: Proper error handling in the shadow variables selftest (Joe Lawrence) [1696461] - [kernel] livepatch: return -ENOMEM on ptr_id() allocation failure (Joe Lawrence) [1696461] - [kernel] livepatch: Introduce klp_for_each_patch macro (Joe Lawrence) [1696461] - [kernel] livepatch: core: Return EOPNOTSUPP instead of ENOSYS (Joe Lawrence) [1696461] - [kernel] livepatch: samples: non static warnings fix (Joe Lawrence) [1696461] - [kernel] livepatch: Remove signal sysfs attribute (Joe Lawrence) [1696461] - [kernel] livepatch: Send a fake signal periodically (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: introduce tests (Joe Lawrence) [1696461] - [kernel] livepatch: Remove ordering (stacking) of the livepatches (Joe Lawrence) [1696461] - [kernel] livepatch: Atomic replace and cumulative patches documentation (Joe Lawrence) [1696461] - [kernel] livepatch: Remove Nop structures when unused (Joe Lawrence) [1696461] - [kernel] livepatch: Add atomic replace (Joe Lawrence) [1696461] - [kernel] livepatch: Use lists to manage patches, objects and functions (Joe Lawrence) [1696461] - [kernel] livepatch: Simplify API by removing registration step (Joe Lawrence) [1696461] - [kernel] livepatch: Don't block the removal of patches loaded after a forced transition (Joe Lawrence) [1696461] - [kernel] livepatch: Consolidate klp_free functions (Joe Lawrence) [1696461] - [kernel] livepatch: Shuffle klp_enable_patch()/klp_disable_patch() code (Joe Lawrence) [1696461] - [kernel] livepatch: Change unsigned long old_addr -> void *old_func in struct klp_func (Joe Lawrence) [1696461] - [kernel] livepatch: check kzalloc return values (Joe Lawrence) [1696461] - [kernel] livepatch: Replace synchronize_sched() with synchronize_rcu() (Joe Lawrence) [1696461] - [kernel] livepatch: Validate module/old func name length (Joe Lawrence) [1696461] - [kernel] livepatch: Remove reliable stacktrace check in klp_try_switch_task() (Joe Lawrence) [1696461] - [pci] PCI/LINK: Add Kconfig option (default off) (Myron Stowe) [1748141] - [pci] PCI/portdrv: Use shared MSI/MSI-X vector for Bandwidth Management (Myron Stowe) [1748141] - [pci] PCI: Fix issue with "pci=disable_acs_redir" parameter being ignored (Myron Stowe) [1748141] - [pci] PCI: Add function 1 DMA alias quirk for Marvell 9170 SATA controller (Myron Stowe) [1748141] - [pci] PCI/LINK: Deduplicate bandwidth reports for multi-function devices (Myron Stowe) [1748141] - [pci] PCI/LINK: Clear bandwidth notification interrupt before enabling it (Myron Stowe) [1748141] - [pci] PCI/LINK: Supply IRQ handler so level-triggered IRQs are acked (Myron Stowe) [1748141] - [pci] PCI/LINK: Report degraded links via link bandwidth notification (Myron Stowe) [1748141] - [pci] PCI/portdrv: Support PCIe services on subtractive decode bridges (Myron Stowe) [1748141] - [pci] PCI/portdrv: Use conventional Device ID table formatting (Myron Stowe) [1748141] - [pci] PCI: Update PCIEPORTBUS Kconfig help text (Myron Stowe) [1748141] - [pci] PCI: Clean up usage of __u32 type (Myron Stowe) [1748141] - [pci] PCI: Move Rohm Vendor ID to generic list (Myron Stowe) [1748141] - [pci] PCI: pciehp: Add HXT quirk for Command Completed errata (Myron Stowe) [1748141] - [pci] PCI: Add ACS quirk for HXT SD4800 (Myron Stowe) [1748141] - [pci] PCI: Add HXT vendor ID (Myron Stowe) [1748141] - [pci] PCI: Use of_node_name_eq() for node name comparisons (Myron Stowe) [1748141] - [pci] PCI: Mark expected switch fall-through (Myron Stowe) [1748141] - [pci] PCI: ibmphp: Turn semaphores into completions or mutexes (Myron Stowe) [1748141] - [pci] x86/PCI: Fixup RTIT_BAR of Intel Denverton Trace Hub (Myron Stowe) [1748141] - [pci] PCI: Rely on config space header type, not class code (Myron Stowe) [1748141] - [pci] PCI: Make pci_size() return real BAR size (Myron Stowe) [1748141] - [pci] PCI/DPC: Fix print AER status in DPC event handling (Myron Stowe) [1748141] - [pci] PCI/ASPM: Save LTR Capability for suspend/resume (Myron Stowe) [1748141] - [pci] PCI/ASPM: Use LTR if already enabled by platform (Myron Stowe) [1748141] - [pci] PCI: Enable SERR# forwarding for all bridges (Myron Stowe) [1748141] - [pci] PCI/AER: Use match_string() helper to simplify the code (Myron Stowe) [1748141] - [fs] gfs2: Use async glocks for rename (Robert S Peterson) [1737561] - [fs] gfs2: create function gfs2_glock_update_hold_time (Robert S Peterson) [1737561] - [fs] gfs2: separate holder for rgrps in gfs2_rename (Robert S Peterson) [1737561] - [netdrv] net: aquantia: reapply vlan filters on up (Igor Russkikh) [1740500] - [s390] s390/setup: Fix kernel lock down for s390 (Philipp Rudo) [1748343] - [powerpc] kvm: ppc: book3s hv: Fix XICS-on-XIVE H_IPI when priority = 0 (David Gibson) [1725800] - [s390] vfio-ap: fix irq registration (Thomas Huth) [1660910] - [s390] ap: kvm: Enable PQAP/AQIC facility for the guest (Thomas Huth) [1660910] - [s390] ap: implement PAPQ AQIC interception in kernel (Thomas Huth) [1660910] - [s390] vfio: ap: register IOMMU VFIO notifier (Thomas Huth) [1660910] - [s390] ap: kvm: add PQAP interception for AQIC (Thomas Huth) [1660910] - [s390] kvm: s390: Do not leak kernel stack data in the KVM_S390_INTERRUPT ioctl (Thomas Huth) [1749503] - [s390] kvm: s390: vsie: Return correct values for Invalid CRYCB format (Thomas Huth) [1749503] - [s390] kvm: s390: vsie: Do not shadow CRYCB when no AP and no keys (Thomas Huth) [1749503] - [s390] kvm: s390: change default halt poll time to 50us (Thomas Huth) [1749503] - [s390] kvm: s390: fix typo in parameter description (Thomas Huth) [1749503] - [s390] kvm: s390: provide kvm_arch_no_poll function (Thomas Huth) [1749503] - [kernel] kvm: polling: add architecture backend to disable polling (Thomas Huth) [1749503] - [s390] vtime: steal time exponential moving average (Thomas Huth) [1749503] - [tools] kvm: selftests: fix ucall on x86 (Thomas Huth) [1730412] - [tools] kvm: selftests: Test invalid bits in kvm_valid_regs and kvm_dirty_regs on s390x (Thomas Huth) [1730412] - [s390] kvm: s390: Disallow invalid bits in kvm_valid_regs and kvm_dirty_regs (Thomas Huth) [1730412] - [tools] kvm: selftests: Add a test for the KVM_S390_MEM_OP ioctl (Thomas Huth) [1730412] - [s390] kvm: s390: Test for bad access register and size at the start of S390_MEM_OP (Thomas Huth) [1730412] - [tools] kvm: selftests: Enable dirty_log_test on s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Implement ucall() for s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Split ucall.c into architecture specific files (Thomas Huth) [1730412] - [tools] kvm: selftests: ucall improvements (Thomas Huth) [1730412] - [tools] kvm: selftests: aarch64: dirty_log_test: fix unaligned memslot size (Thomas Huth) [1730412] - [tools] kvm: selftests: Compile code with warnings enabled (Thomas Huth) [1730412] - [tools] kvm: selftests: enable pgste option for the linker on s390 (Thomas Huth) [1730412] - [tools] kvm: selftests: Move kvm_create_max_vcpus test to generic code (Thomas Huth) [1730412] - [virt] kvm: s390: Do not report unusabled IDs via KVM_CAP_MAX_VCPU_ID (Thomas Huth) [1730412] - [documentation] kvm: move KVM_CAP_NR_MEMSLOTS to common code (Thomas Huth) [1730412] - [tools] kvm: selftests: Add the sync_regs test for s390x (Thomas Huth) [1730412] - [s390] kvm: s390: fix memory slot handling for KVM_SET_USER_MEMORY_REGION (Thomas Huth) [1730412] - [tools] kvm: selftests: Add processor code for s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Align memory region addresses to 1M on s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Introduce a VM_MODE_DEFAULT macro for the default bits (Thomas Huth) [1730412] - [tools] kvm: selftests: aarch64: fix default vm mode (Thomas Huth) [1730412] - [tools] kvm: selftests: Guard struct kvm_vcpu_events with __KVM_HAVE_VCPU_EVENTS (Thomas Huth) [1730412] - [tools] kvm: selftests: Wrap vcpu_nested_state_get/set functions with x86 guard (Thomas Huth) [1730412]- [fs] xfs: fix missing ILOCK unlock when xfs_setattr_nonsize fails due to EDQUOT (Bill O'Donnell) [1739607] - [fs] xfs: fix reflink source file racing with directio writes (Bill O'Donnell) [1739607] - [fs] xfs: implement cgroup aware writeback (Bill O'Donnell) [1274406] - [fs] xfs: simplify xfs_chain_bio (Bill O'Donnell) [1274406] - [fs] xfs: inode btree scrubber should calculate im_boffset correctly (Bill O'Donnell) [1739607] - [fs] xfs: fix broken log reservation debugging (Bill O'Donnell) [1739607] - [fs] xfs: don't reserve per-AG space for an internal log (Bill O'Donnell) [1739607] - [fs] xfs: change some error-less functions to void types (Bill O'Donnell) [1739607] - [fs] xfs: add online scrub for superblock counters (Bill O'Donnell) [1739607] - [fs] xfs: don't parse the mtpt mount option (Bill O'Donnell) [1739607] - [fs] xfs: scrub should check incore counters against ondisk headers (Bill O'Donnell) [1739607] - [fs] xfs: allow scrubbers to pause background reclaim (Bill O'Donnell) [1739607] - [fs] xfs: rename the speculative block allocation reclaim toggle functions (Bill O'Donnell) [1739607] - [fs] xfs: track delayed allocation reservations across the filesystem (Bill O'Donnell) [1739607] - [fs] xfs: fix broken bhold behavior in xrep_roll_ag_trans (Bill O'Donnell) [1739607] - [fs] xfs: unlock inode when xfs_ioctl_setattr_get_trans can't get transaction (Bill O'Donnell) [1739607] - [fs] xfs: kill the xfs_dqtrx_t typedef (Bill O'Donnell) [1739607] - [fs] xfs: widen inode delalloc block counter to 64-bits (Bill O'Donnell) [1739607] - [fs] xfs: widen quota block counters to 64-bit integers (Bill O'Donnell) [1739607] - [fs] xfs: assert that we don't enter agfl freeing with a non-permanent transaction (Bill O'Donnell) [1739607] - [fs] xfs: make tr_growdata a permanent transaction (Bill O'Donnell) [1739607] - [fs] xfs: merge adjacent io completions of the same type (Bill O'Donnell) [1739607] - [fs] xfs: remove unused m_data_workqueue (Bill O'Donnell) [1739607] - [fs] xfs: implement per-inode writeback completion queues (Bill O'Donnell) [1739607] - [fs] xfs: scrub should only cross-reference with healthy btrees (Bill O'Donnell) [1739607] - [fs] xfs: scrub/repair should update filesystem metadata health (Bill O'Donnell) [1739607] - [fs] xfs: hoist the already_fixed variable to the scrub context (Bill O'Donnell) [1739607] - [fs] xfs: collapse scrub bool state flags into a single unsigned int (Bill O'Donnell) [1739607] - [fs] xfs: refactor scrub context initialization (Bill O'Donnell) [1739607] - [fs] xfs: report inode health via bulkstat (Bill O'Donnell) [1739607] - [fs] xfs: report AG health via AG geometry ioctl (Bill O'Donnell) [1739607] - [fs] xfs: report fs and rt health via geometry structure (Bill O'Donnell) [1739607] - [fs] xfs: add a new ioctl to describe allocation group geometry (Bill O'Donnell) [1739607] - [fs] xfs: bump XFS_IOC_FSGEOMETRY to v5 structures (Bill O'Donnell) [1739607] - [fs] xfs: clear BAD_SUMMARY if unmounting an unhealthy filesystem (Bill O'Donnell) [1739607] - [fs] xfs: replace the BAD_SUMMARY mount flag with the equivalent health code (Bill O'Donnell) [1739607] - [fs] xfs: track metadata health status (Bill O'Donnell) [1739607] - [fs] xfs,fstrim: fix to return correct minlen (Bill O'Donnell) [1739607] - [fs] xfs: shutdown after buf release in iflush cluster abort path (Bill O'Donnell) [1739607] - [fs] xfs: wake commit waiters on CIL abort before log item abort (Bill O'Donnell) [1739607] - [fs] xfs: fix btree scrub checking with regards to root-in-inode (Bill O'Donnell) [1739607] - [fs] xfs: dabtree scrub needs to range-check level (Bill O'Donnell) [1739607] - [fs] xfs: clean up xfs_dir2_leaf_addname (Bill O'Donnell) [1739607] - [fs] xfs: zero initialize highstale and lowstale in xfs_dir2_leaf_addname (Bill O'Donnell) [1739607] - [fs] xfs: clean up xfs_dir2_leafn_add (Bill O'Donnell) [1739607] - [fs] xfs: Zero initialize highstale and lowstale in xfs_dir2_leafn_add (Bill O'Donnell) [1739607] - [fs] xfs: fix backwards endian conversion in scrub (Bill O'Donnell) [1739607] - [fs] xfs: fix uninitialized error variables (Bill O'Donnell) [1739607] - [fs] xfs: rework breaking of shared extents in xfs_file_iomap_begin (Bill O'Donnell) [1739607] - [fs] xfs: don't pass iomap flags to xfs_reflink_allocate_cow (Bill O'Donnell) [1739607] - [fs] xfs: fix uninitialized error variable (Bill O'Donnell) [1739607] - [fs] xfs: introduce an always_cow mode (Bill O'Donnell) [1739607] - [fs] xfs: report IOMAP_F_SHARED from xfs_file_iomap_begin_delay (Bill O'Donnell) [1739607] - [fs] xfs: make COW fork unwritten extent conversions more robust (Bill O'Donnell) [1739607] - [fs] xfs: merge COW handling into xfs_file_iomap_begin_delay (Bill O'Donnell) [1739607] - [fs] xfs: also truncate holes covered by COW blocks (Bill O'Donnell) [1739607] - [fs] xfs: don't use delalloc extents for COW on files with extsize hints (Bill O'Donnell) [1739607] - [fs] xfs: fix SEEK_DATA for speculative COW fork preallocation (Bill O'Donnell) [1739607] - [fs] xfs: make xfs_bmbt_to_iomap more useful (Bill O'Donnell) [1739607] - [fs] xfs: fix xfs_buf magic number endian checks (Bill O'Donnell) [1739607] - [fs] xfs: retry COW fork delalloc conversion when no extent was found (Bill O'Donnell) [1739607] - [fs] xfs: remove the truncate short cut in xfs_map_blocks (Bill O'Donnell) [1739607] - [fs] xfs: move xfs_iomap_write_allocate to xfs_aops.c (Bill O'Donnell) [1739607] - [fs] xfs: move stat accounting to xfs_bmapi_convert_delalloc (Bill O'Donnell) [1739607] - [fs] xfs: move transaction handling to xfs_bmapi_convert_delalloc (Bill O'Donnell) [1739607] - [fs] xfs: split XFS_BMAPI_DELALLOC handling from xfs_bmapi_write (Bill O'Donnell) [1739607] - [fs] xfs: factor out two helpers from xfs_bmapi_write (Bill O'Donnell) [1739607] - [fs] xfs: simplify the xfs_bmap_btree_to_extents calling conventions (Bill O'Donnell) [1739607] - [fs] xfs: remove the s_maxbytes checks in xfs_map_blocks (Bill O'Donnell) [1739607] - [fs] xfs: remove the io_type field from the writeback context and ioend (Bill O'Donnell) [1739607] - [fs] xfs: compile time offset checks for common v4/v5 metadata (Bill O'Donnell) [1739607] - [fs] xfs: use buf ops magic to detect btree block type (Bill O'Donnell) [1739607] - [fs] xfs: add magic numbers to dquot buffer ops (Bill O'Donnell) [1739607] - [fs] xfs: add inode magic to inode verifier (Bill O'Donnell) [1739607] - [fs] xfs: factor xfs_da3_blkinfo verification into common helper (Bill O'Donnell) [1739607] - [fs] xfs: miscellaneous verifier magic value fixups (Bill O'Donnell) [1739607] - [fs] xfs: use verifier magic field in dir2 leaf verifiers (Bill O'Donnell) [1739607] - [fs] xfs: distinguish between bnobt and cntbt magic values (Bill O'Donnell) [1739607] - [fs] xfs: split up allocation btree verifier (Bill O'Donnell) [1739607] - [fs] xfs: distinguish between inobt and finobt magic values (Bill O'Donnell) [1739607] - [fs] xfs: create a separate finobt verifier (Bill O'Donnell) [1739607] - [fs] xfs: always check magic values in on-disk byte order (Bill O'Donnell) [1739607] - [fs] xfs: clarify documentation for the function to reverify buffers (Bill O'Donnell) [1739607] - [fs] xfs: cache unlinked pointers in an rhashtable (Bill O'Donnell) [1739607] - [fs] xfs: add tracepoints for high level iunlink operations (Bill O'Donnell) [1739607] - [fs] xfs: refactor inode update in iunlink_remove (Bill O'Donnell) [1739607] - [fs] xfs: refactor unlinked list search and mapping to a separate function (Bill O'Donnell) [1739607] - [fs] xfs: refactor inode unlinked pointer update functions (Bill O'Donnell) [1739607] - [fs] xfs: strengthen AGI unlinked inode bucket pointer checks (Bill O'Donnell) [1739607] - [fs] xfs: refactor AGI unlinked bucket updates (Bill O'Donnell) [1739607] - [fs] xfs: add xfs_verify_agino_or_null helper (Bill O'Donnell) [1739607] - [fs] xfs: clean up iunlink functions (Bill O'Donnell) [1739607] - [fs] xfs: Introduce XFS_PTAG_VERIFIER_ERROR panic mask (Bill O'Donnell) [1739607] - [fs] xfs: remove duplicated xfs_defer.h (Bill O'Donnell) [1739607] - [fs] xfs: check attribute name validity (Bill O'Donnell) [1739607] - [fs] xfs: check directory name validity (Bill O'Donnell) [1739607] - [fs] xfs: fix off-by-one error in rtbitmap cross-reference (Bill O'Donnell) [1739607] - [fs] xfs: scrub should flag dir/attr offsets that aren't mappable with xfs_dablk_t (Bill O'Donnell) [1739607] - [fs] xfs: abort xattr scrub if fatal signals are pending (Bill O'Donnell) [1739607] - [fs] xfs: consolidate scrub dinode mapping code into a single function (Bill O'Donnell) [1739607] - [fs] xfs: scrub big block inode btrees correctly (Bill O'Donnell) [1739607] - [fs] xfs: clean up the inode cluster checking in the inobt scrub (Bill O'Donnell) [1739607] - [fs] xfs: hoist inode cluster checks out of loop (Bill O'Donnell) [1739607] - [fs] xfs: check inobt record alignment on big block filesystems (Bill O'Donnell) [1739607] - [fs] xfs: check the ir_startino alignment directly (Bill O'Donnell) [1739607] - [fs] xfs: never try to scrub more than 64 inodes per inobt record (Bill O'Donnell) [1739607] - [powerpc] powerpc: Allow flush_(inval_)dcache_range to work across ranges >4GB (Steve Best) [1744062] - [scsi] scsi: lpfc: Fix port relogin failure due to GID_FT interaction (Dick Kennedy) [1733217] - [rpmspec] redhat: Fix error messages during build of zfcpdump kernel (Philipp Rudo) [1745652] - [s390] s390/protvirt: avoid memory sharing for diag 308 set/store (Philipp Rudo) [1745614] - [infiniband] IB/hfi1: Remove extra brackets from an if (Petr Oros) [1737066] - [documentation] docs/memory-barriers.txt: Update I/O section to be clearer about CPU vs thread (Petr Oros) [1737066] - [documentation] docs/memory-barriers.txt: Fix style, spacing and grammar in I/O section (Petr Oros) [1737066] - [powerpc] arch: Remove dummy mmiowb() definitions from arch code (Petr Oros) [1737066] - [netdrv] net/ethernet/silan/sc92031: Remove stale comment about mmiowb() (Petr Oros) [1737066] - [infiniband] i40iw: Redefine i40iw_mmiowb() to do nothing (Petr Oros) [1737066] - [scsi] scsi/qla1280: Remove stale comment about mmiowb() (Petr Oros) [1737066] - [netdrv] drivers: Remove explicit invocations of mmiowb() (Petr Oros) [1737066] - [infiniband] drivers: Remove useless trailing comments from mmiowb() invocations (Petr Oros) [1737066] - [documentation] Documentation: Kill all references to mmiowb() (Petr Oros) [1737066] - [riscv] riscv/mmiowb: Hook up mmwiob() implementation to asm-generic code (Petr Oros) [1737066] - [powerpc] powerpc/mmiowb: Hook up mmwiob() implementation to asm-generic code (Petr Oros) [1737066] - [nds32] nds32/io: Remove useless definition of mmiowb() (Petr Oros) [1737066] - [x86] x86/io: Remove useless definition of mmiowb() (Petr Oros) [1737066] - [arm64] arm64/io: Remove useless definition of mmiowb() (Petr Oros) [1737066] - [include] mmiowb: Hook up mmiowb helpers to spinlocks and generic I/O accessors (Petr Oros) [1737066] - [arm64] arch: Use asm-generic header for asm/mmiowb.h (Petr Oros) [1737066] - [kernel] asm-generic/mmiowb: Add generic implementation of mmiowb() tracking (Petr Oros) [1737066] - [documentation] docs/memory-barriers.txt: Rewrite "KERNEL I/O BARRIER EFFECTS" section (Petr Oros) [1737066] - [s390] s390/cpum_sf: save TOD clock base in SDBs for time conversion (Philipp Rudo) [1743504] - [net] netns: provide pure entropy for net_hash_mix() (Paolo Abeni) [1737439] {CVE-2019-10639} - [net] netns: get more entropy from net_hash_mix() (Paolo Abeni) [1737439] {CVE-2019-10639} - [netdrv] net: phy: improve pause handling (Petr Oros) [1735763] - [netdrv] net: phy: fix reading fixed phy status (Petr Oros) [1735763] - [netdrv] net: phy: allow a PHY driver to define neither features nor get_features (Petr Oros) [1735763] - [netdrv] net: phy: Add support for asking the PHY its abilities (Petr Oros) [1735763] - [netdrv] net: phy: use genphy_read_abilities in genphy driver (Petr Oros) [1735763] - [netdrv] net: phy: add genphy_read_abilities (Petr Oros) [1735763] - [netdrv] net: phy: let genphy_c45_read_abilities also check aneg capability (Petr Oros) [1735763] - [netdrv] net: phy: Add generic support for 2.5GBaseT and 5GBaseT (Petr Oros) [1735763] - [netdrv] net: phy: Extract genphy_c45_pma_read_abilities from marvell10g (Petr Oros) [1735763] - [netdrv] net: phy: Move of_set_phy_eee_broken to phy-core.c (Petr Oros) [1735763] - [netdrv] net: phy: Mask-out non-compatible modes when setting the max-speed (Petr Oros) [1735763] - [netdrv] net: phy: don't allow __set_phy_supported to add unsupported modes (Petr Oros) [1735763] - [netdrv] net: phy: remove unneeded masking of PHY register read results (Petr Oros) [1735763] - [netdrv] net: phy: probe the PHY before determining the supported features (Petr Oros) [1735763] - [rpmspec] fix package summary and description for some kernel subpackages ("Herton R. Krzesinski") [1656863] - [fs] mm/huge_memory: fix vmf_insert_pfn_{pmd, pud}() crash, handle unaligned addresses (Jeff Moyer) [1743159] - [mm] mm/huge_memory.c: fix modifying of page protection by insert_pfn_pmd() (Jeff Moyer) [1743159] - [arm64] arm64: disable improved unwind tables (Mark Langsdorf) [1684694] - [arm64] arm64/stacktrace: Export save_stack_trace_regs() (Mark Langsdorf) [1684694] - [fs] nfs4: flex_file: ignore synthetic uid/gid for tightly coupled DSes (Steve Dickson) [1655712] - [include] futex: Update comments and docs about return values of arch futex code (Waiman Long) [1737058] - [arm64] arm64: futex: Avoid copying out uninitialised stack in failed cmpxchg() (Waiman Long) [1737058] - [arm64] arm64: futex: Bound number of LDXR/STXR loops in FUTEX_WAKE_OP (Waiman Long) [1737058] - [kernel] locking/futex: Allow low-level atomic operations to return -EAGAIN (Waiman Long) [1737058] - [arm64] arm64: futex: Fix FUTEX_WAKE_OP atomic ops with non-zero result value (Waiman Long) [1737058] - [kernel] futex: Ensure that futex address is aligned in handle_futex_death() (Waiman Long) [1737058] - [kernel] futex: Convert futex_pi_state.refcount to refcount_t (Waiman Long) [1737058] - [kernel] sched/wake_q: Reduce reference counting for special users (Waiman Long) [1737058] - [kernel] sched/wake_q: Add branch prediction hint to wake_q_add() cmpxchg (Waiman Long) [1737058] - [kernel] futex: No need to check return value of debugfs_create functions (Waiman Long) [1737058] - [kernel] futex: Handle early deadlock return correctly (Waiman Long) [1737058] - [kernel] futex: Fix barrier comment (Waiman Long) [1737058] - [kernel] futex: Cure exit race (Waiman Long) [1737058] - [kernel] futex: Replace spin_is_locked() with lockdep (Waiman Long) [1737058] - [kernel] futex: Mark expected switch fall-throughs (Waiman Long) [1737058] - [kernel] sched/deadline: Correctly handle active 0-lag timers (Phil Auld) [1735907] - [include] build_bug.h: add wrapper for _Static_assert (Ivan Vecera) [1735752] - [include] build_bug.h: remove most of dummy BUILD_BUG_ON stubs for Sparse (Ivan Vecera) [1735752] - [include] build_bug.h: remove negative-array fallback for BUILD_BUG_ON() (Ivan Vecera) [1735752] - [mm] percpu: remove spurious lock dependency between percpu and sched (Rafael Aquini) [1731180] - [mm] percpu: use chunk scan_hint to skip some scanning (Rafael Aquini) [1731180] - [mm] percpu: convert chunk hints to be based on pcpu_block_md (Rafael Aquini) [1731180] - [mm] percpu: make pcpu_block_md generic (Rafael Aquini) [1731180] - [mm] percpu: use block scan_hint to only scan forward (Rafael Aquini) [1731180] - [mm] percpu: remember largest area skipped during allocation (Rafael Aquini) [1731180] - [mm] percpu: add block level scan_hint (Rafael Aquini) [1731180] - [mm] percpu: set PCPU_BITMAP_BLOCK_SIZE to PAGE_SIZE (Rafael Aquini) [1731180] - [mm] percpu: relegate chunks unusable when failing small allocations (Rafael Aquini) [1731180] - [mm] percpu: manage chunks based on contig_bits instead of free_bytes (Rafael Aquini) [1731180] - [mm] percpu: introduce helper to determine if two regions overlap (Rafael Aquini) [1731180] - [mm] percpu: do not search past bitmap when allocating an area (Rafael Aquini) [1731180] - [mm] percpu: update free path with correct new free region (Rafael Aquini) [1731180] - [mm] mm/percpu: add checks for the return value of memblock_alloc*() (Rafael Aquini) [1731180] - [mm] percpu: km: no need to consider pcpu_group_offsets[0] (Rafael Aquini) [1731180] - [mm] percpu: use nr_groups as check condition (Rafael Aquini) [1731180] - [mm] percpu: convert spin_lock_irq to spin_lock_irqsave. (Rafael Aquini) [1731180] - [mm] mm: percpu: remove unnecessary unlikely() (Rafael Aquini) [1731180] - [fs] /proc/meminfo: add percpu populated pages count (Rafael Aquini) [1731180] - [netdrv] tg3: Use napi_alloc_frag() (Jonathan Toppins) [1724774] - [fs] fuse: fix copy_file_range() in the writeback case (Miklos Szeredi) [1650518] - [fs] fuse: add support for copy_file_range() (Miklos Szeredi) [1650518]- [x86] perf/x86/intel: Fix spurious NMI on fixed counter (Michael Petlan) [1755110] - [x86] perf/x86/intel: Fix race in intel_pmu_disable_event() (Michael Petlan) [1755110] - [netdrv] drivers: tap.c: fix wrong backport causing WARN_ON_ONCE(1) in skb_flow_dissect() (Davide Caratti) [1750711] - [virt] KVM: coalesced_mmio: add bounds checking (Bandan Das) [1746804] {CVE-2019-14821}- [fs] gfs2: clear buf_in_tr when ending a transaction in sweep_bh_for_rgrps (Robert S Peterson) [1750939] - [s390] kvm: s390: kvm_s390_vm_start_migration: check dirty_bitmap before using it as target for memset() (Thomas Huth) [1753260] - [fs] cifs: fix credits leak for SMB1 oplock breaks (Leif Sahlberg) [1752243]- Revert "[redhat] switch secureboot kernel image signing to release keys" (Phillip Lougher) - [iommu] iommu/amd: Add support for X2APIC IOMMU interrupts (Suravee Suthikulpanit) [1734842] - [vhost] vhost: make sure log_num < in_num (Eugenio Perez) [1750882] {CVE-2019-14835}- [kernel] open the RHEL 8.2 development (Phillip Lougher) - [md] Revert "[md] dm: eliminate 'split_discard_bios' flag from DM target interface" (Mike Snitzer) [1749929] - [md] Revert "[md] dm: make sure to obey max_io_len_target_boundary" (Mike Snitzer) [1749929] - [pci] PCI: Restore Resizable BAR size bits correctly for 1MB BARs (Myron Stowe) [1717760] - [net] netfilter: nft_fib_netdev: Terminate rule eval if protocol=IPv6 and ipv6 module is disabled (Phil Sutter) [1743945] - [net] netfilter: bridge: Drops IPv6 packets if IPv6 module is not loaded (Phil Sutter) [1743945] - [drm] drm/qxl: get vga ioports (Gerd Hoffmann) [1728936] - [drm] drm/i915: Call dma_set_max_seg_size() in i915_driver_hw_probe() (Lyude Paul) [1724363]- [md] Revert "[md] dm: eliminate 'split_discard_bios' flag from DM target interface" (Mike Snitzer) [1749929] - [md] Revert "[md] dm: make sure to obey max_io_len_target_boundary" (Mike Snitzer) [1749929] - [pci] PCI: Restore Resizable BAR size bits correctly for 1MB BARs (Myron Stowe) [1717760] - [net] netfilter: nft_fib_netdev: Terminate rule eval if protocol=IPv6 and ipv6 module is disabled (Phil Sutter) [1743945] - [net] netfilter: bridge: Drops IPv6 packets if IPv6 module is not loaded (Phil Sutter) [1743945] - [drm] drm/qxl: get vga ioports (Gerd Hoffmann) [1728936] - [drm] drm/i915: Call dma_set_max_seg_size() in i915_driver_hw_probe() (Lyude Paul) [1724363]- [net] netfilter: nft_set: fix allocation size overflow in privsize callback. (Florian Westphal) [1746338] - [net] net: route dump netlink NLM_F_MULTI flag missing (Stefano Brivio) [1745971] - [net] sched: pfifo_fast: fix wrong dereference in pfifo_fast_enqueue (Davide Caratti) [1745390] - [net] sched: pfifo_fast: fix wrong dereference when qdisc is reset (Davide Caratti) [1745387] - [scsi] scsi: vmw_pscsi: Fix use-after-free in pvscsi_queue_lck() (David Milburn) [1746597]- [drm] drm/virtio: use virtio_max_dma_size (Gerd Hoffmann) [1739291] - [mm] hwpoison, memory_hotplug: allow hwpoisoned pages to be offlined (Rafael Aquini) [1706088] - [powerpc] kvm: ppc: book3s: Enable XIVE native capability only if OPAL has required functions [BZ1744884] (David Gibson) [1744884] - [scsi] scsi: lpfc: Fix oops when fewer hdwqs than cpus (Dick Kennedy) [1745731] - [scsi] scsi: lpfc: Limit xri count for kdump environment (Dick Kennedy) [1745731] - [scsi] scsi: lpfc: Mitigate high memory pre-allocation by SCSI-MQ (Dick Kennedy) [1745731] - [scsi] scsi: qla2xxx: Fix hardirq-unsafe locking (Himanshu Madhani) [1719941] - [x86] Revert "[x86] x86/kexec/64: Prevent kexec from 5-level paging to a 4-level only kernel" (Baoquan He) [1669088] - [x86] Revert "[x86] x86/boot: Add xloadflags bits to check for 5-level paging support" (Baoquan He) [1669088]- [wireless] mwifiex: fix 802.11n/WPA detection (Jarod Wilson) [1714476] {CVE-2019-3846}- [x86] x86/kdump: Reserve extra memory when SME or SEV is active (Kairui Song) [1728519] - [scsi] scsi: qla2xxx: Fix hardlockup in abort command during driver remove (Himanshu Madhani) [1690041] - [scsi] qla2xxx: Update driver version to 10.01.00.15.08.1-k1 (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix panic from use after free in qla2x00_async_tm_cmd (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: cleanup trace buffer initialization (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: qla2x00_alloc_fw_dump: set ha->eft (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Use mutex protection during qla2x00_sysfs_read_fw_dump() (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: move IO flush to the front of NVME rport unregistration (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix NVME cmd and LS cmd timeout race condition (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Complain loudly about reference count underflow (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix race conditions in the code for aborting SCSI commands (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Use an on-stack completion in qla24xx_control_vp() (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Change abort wait_loop from msleep to wait_event_timeout (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Set the SCSI command result before calling the command done (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: on session delete, return nvme cmd (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix kernel crash after disconnecting NVMe devices (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Remove the fcport test from qla_nvme_abort_work() (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix driver unload when FC-NVMe LUNs are connected (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Set remote port devloss timeout to 0 (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix panic in qla_dfs_tgt_counters_show (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix fw dump corruption (Himanshu Madhani) [1690041] - [x86] kvm: disable nested virt on pre-haswell processors (Paolo Bonzini) [1739739] - [x86] kvm: taint kernel for tech-preview when using nested virtualization (Paolo Bonzini) [1739739] - [x86] kvm: x86: hyper-v: don't crash on KVM_GET_SUPPORTED_HV_CPUID when kvm_intel.nested is disabled (Vitaly Kuznetsov) [1746100]- [char] ipmi: move message error checking to avoid deadlock (Tony Camuso) [1731388 1718699] - [crypto] crypto: testmgr - mark crc32 checksum as FIPS allowed (Neil Horman) [1738887] - [include] dma-mapping: use dma_get_mask in dma_addressing_limited (Don Dutile) [1738631] - [kernel] dma-direct: correct the physical addr in dma_direct_sync_sg_for_cpu/device (Don Dutile) [1738631] - [kernel] dma-direct: only limit the mapping size if swiotlb could be used (Don Dutile) [1738631] - [include] dma-mapping: add a dma_addressing_limited helper (Don Dutile) [1738631] - [kernel] dma-direct: Force unencrypted DMA under SME for certain DMA masks (Don Dutile) [1738631] - [lib] lib/genalloc: introduce chunk owners (Don Dutile) [1738631] - [lib] lib/genalloc: add gen_pool_dma_zalloc() for zeroed DMA allocations (Don Dutile) [1738631] - [lib] lib/genalloc.c: fix allocation of aligned buffer from non-aligned chunk (Don Dutile) [1738631] - [include] dma-mapping: remove dma_max_pfn (Don Dutile) [1738631] - [mmc] mmc: core: let the dma map ops handle bouncing (Don Dutile) [1738631] - [mmc] mmc: core: align max segment size with logical block size (Don Dutile) [1738631] - [kernel] swiotlb: no need to check return value of debugfs_create functions (Don Dutile) [1738631] - [xen] swiotlb: fix phys_addr_t overflow warning (Don Dutile) [1738631] - [kernel] swiotlb: Return consistent SWIOTLB segments/nr_tbl (Don Dutile) [1738631] - [kernel] swiotlb: Group identical cleanup in swiotlb_cleanup() (Don Dutile) [1738631] - [kernel] swiotlb: save io_tlb_used to local variable before leaving critical section (Don Dutile) [1738631] - [kernel] swiotlb: dump used and total slots when swiotlb buffer is full (Don Dutile) [1738631] - [kernel] swiotlb: add checks for the return value of memblock_alloc*() (Don Dutile) [1738631] - [kernel] swiotlb: add debugfs to track swiotlb buffer usage (Don Dutile) [1738631] - [kernel] dma-direct: fix DMA_ATTR_NO_KERNEL_MAPPING (Don Dutile) [1738631] - [kernel] dma-direct: handle DMA_ATTR_NO_KERNEL_MAPPING in common code (Don Dutile) [1738631] - [kernel] dma-direct: fix DMA_ATTR_NO_KERNEL_MAPPING for remapped allocations (Don Dutile) [1738631] - [kernel] dma-mapping: remove a pointless memset in dma_atomic_pool_init (Don Dutile) [1738631] - [kernel] dma-mapping: fix lack of DMA address assignment in generic remap allocator (Don Dutile) [1738631] - [kernel] dma-remap: support DMA_ATTR_NO_KERNEL_MAPPING (Don Dutile) [1738631] - [kernel] dma-mapping: support highmem in the generic remap allocator (Don Dutile) [1738631] - [kernel] dma-direct: handle DMA_ATTR_NON_CONSISTENT in common code (Don Dutile) [1738631] - [kernel] dma-mapping: add a dma_alloc_need_uncached helper (Don Dutile) [1738631] - [kernel] dma-mapping: truncate dma masks to what dma_addr_t can hold (Don Dutile) [1738631] - [kernel] dma-remap: Avoid de-referencing NULL atomic_pool (Don Dutile) [1738631] - [include] dma-buf: add DMA_BUF_SET_NAME ioctls (Don Dutile) [1738631] - [include] dma-buf: give each buffer a full-fledged inode (Don Dutile) [1738631] - [fs] new wrapper: alloc_file_pseudo() (Don Dutile) [1738631] - [kernel] dma-direct: provide generic support for uncached kernel segments (Don Dutile) [1738631] - [include] dma-contiguous: fix !CONFIG_DMA_CMA version of dma_{alloc, free}_contiguous() (Don Dutile) [1738631] - [kernel] dma-contiguous: use fallback alloc_pages for single pages (Don Dutile) [1738631] - [kernel] dma-contiguous: add dma_{alloc,free}_contiguous() helpers (Don Dutile) [1738631] - [iommu] iommu/dma: Fix condition check in iommu_dma_unmap_sg (Don Dutile) [1738631] - [iommu] iommu/dma: move the arm64 wrappers to common code (Don Dutile) [1738631] - [iommu] iommu/dma-iommu.c: convert to use vm_map_pages() (Don Dutile) [1738631] - [mm] mm: introduce new vm_map_pages() and vm_map_pages_zero() API (Don Dutile) [1738631] - [mm] arm64/iommu: handle non-remapped addresses in ->mmap and ->get_sgtable (Don Dutile) [1738631] - [arm64] arm64/mm: wire up CONFIG_ARCH_HAS_SET_DIRECT_MAP (Don Dutile) [1738631] - [kernel] mm/hibernation: Make hibernation handle unmapped pages (Don Dutile) [1738631] - [mm] page_poison: play nicely with KASAN (Don Dutile) [1738631] - [mm] mm/vmalloc: Avoid rare case of flushing TLB with weird arguments (Don Dutile) [1738631] - [mm] mm/vmalloc: Fix calculation of direct map addr range (Don Dutile) [1738631] - [mm] mm/vmalloc: Add flag for freeing of special permsissions (Don Dutile) [1738631] - [x86] x86/mm/cpa: Add set_direct_map_*() functions (Don Dutile) [1738631] - [arm64] dma-mapping: add a kconfig symbol for arch_setup_dma_ops availability (Don Dutile) [1738631] - [iommu] iommu/dma: Remove the flush_page callback (Don Dutile) [1738631] - [include] iommu/dma: Cleanup dma-iommu.h (Don Dutile) [1738631] - [dma] dmaengine: Add matching device node validation in __dma_request_channel() (Don Dutile) [1738631] - [dma] dmaengine: dma_request_chan_by_mask() to handle deferred probing (Don Dutile) [1738631] - [include] dma-buf: start caching of sg_table objects v2 (Don Dutile) [1738631] - [kernel] dma-mapping: add a Kconfig symbol to indicate arch_dma_prep_coherent presence (Don Dutile) [1738631] - [iommu] iommu/dma-iommu: Remove iommu_dma_map_msi_msg() (Don Dutile) [1738631] - [irqchip] irqchip/ls-scfg-msi: Don't map the MSI page in ls_scfg_msi_compose_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gic-v3-mbi: Don't map the MSI page in mbi_compose_m{b, s}i_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gicv2m: Don't map the MSI page in gicv2m_compose_msi_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gic-v3-its: Don't map the MSI page in its_irq_compose_msi_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gic-v3-its: Align PCI Multi-MSI allocation on their size (Don Dutile) [1738631] - [iommu] iommu/dma-iommu: Split iommu_dma_map_msi_msg() in two parts (Don Dutile) [1738631] - [iommu] iommu/dma: Remove unused variable (Don Dutile) [1738631] - [iommu] iommu/dma: Use NUMA aware memory allocations in __iommu_dma_alloc_pages() (Don Dutile) [1738631] - [kernel] genirq/msi: Add a new field in msi_desc to store an IOMMU cookie (Don Dutile) [1738631] - [pci] PCI/MSI: Remove unused mask_msi_irq() and unmask_msi_irq() (Don Dutile) [1738631] - [include] PCI/MSI: Remove unused __write_msi_msg() and write_msi_msg() (Don Dutile) [1738631] - [include] genirq/msi: Clean up usage of __u8/__u16 types (Don Dutile) [1738631] - [base] platform-msi: Free descriptors in platform_msi_domain_free() (Don Dutile) [1738631] - [base] genirq/msi: Allow creation of a tree-based irqdomain for platform-msi (Don Dutile) [1738631] - [kernel] dma-debug: only skip one stackframe entry (Don Dutile) [1738631] - [dma] dmaengine: idma64: Move driver name to the header (Don Dutile) [1738631] - [kernel] dma-mapping: remove an unnecessary NULL check (Don Dutile) [1738631] - [include] dma-buf: Update [un]map documentation to match the other functions (Don Dutile) [1738631] - [include] dma-buf: Remove leftover [un]map_atomic comments (Don Dutile) [1738631] - [x86] x86/dma: Remove the x86_dma_fallback_dev hack (Don Dutile) [1738631] - [kernel] dma-mapping: remove leftover NULL device support (Don Dutile) [1738631] - [kernel] dma: select GENERIC_ALLOCATOR for DMA_REMAP (Don Dutile) [1738631] - [crypto] crypto: ccp - Ignore unconfigured CCP device on suspend/resume (Gary Hook) [1743999] - [md] dm snapshot: fix oversights in optional discard support (Mike Snitzer) [1744291] - [md] dm snapshot: add optional discard support features (Mike Snitzer) [1744291] - [md] dm snapshot: Use fine-grained locking scheme (Mike Snitzer) [1744291] - [md] dm snapshot: Make exception tables scalable (Mike Snitzer) [1744291] - [md] dm snapshot: Replace mutex with rw semaphore (Mike Snitzer) [1744291] - [md] dm snapshot: Don't sleep holding the snapshot lock (Mike Snitzer) [1744291] - [include] list_bl: Add hlist_bl_add_before/behind helpers (Mike Snitzer) [1744291] - [powerpc] powerpc/rtas: use device model APIs and serialization during LPM (Steve Best) [1741643] - [firmware] firmware/efi: Add NULL pointer checks in efivars API functions (Jarod Wilson) [1741949] - [fs] ovl: fix wrong flags check in FS_IOC_FS[SG]ETXATTR ioctls (Miklos Szeredi) [1724518] - [include] mm: page_cache_add_speculative(): refactor out some code duplication (Michael Petlan) [1738331] - [netdrv] ibmvnic: Unmap DMA address of TX descriptor buffers after use (Steve Best) [1743155] - [fs] NFSv4.1 don't free interrupted slot on open (Steve Dickson) [1708345] - [fs] NFSv4.1: Avoid false retries when RPC calls are interrupted (Steve Dickson) [1708345] - [net] ipv6: Fix return value of ipv6_mc_may_pull() for malformed packets (Stefano Brivio) [1743203] - [net] inet: frags: re-introduce skb coalescing for local delivery (Guillaume Nault) [1719418]- [net] xfrm: fix sa selector validation (Sabrina Dubroca) [1738871] - [net] xfrm: Fix xfrm sel prefix length validation (Sabrina Dubroca) [1738871] - [kernel] locking/rwsem: Prevent decrement of reader count before increment (Waiman Long) [1740338] - [include] include/list: Backport list_cut_before() (Waiman Long) [1740338] - [vhost] vhost: vsock: add weight support (Jason Wang) [1738494] - [vhost] vhost_net: fix possible infinite loop (Jason Wang) [1738494] - [vhost] vhost: introduce vhost_exceeds_weight() (Jason Wang) [1738494] - [vhost] vhost: reject zero size iova range (Jason Wang) [1738494] - [vhost] vhost: silence an unused-variable warning (Jason Wang) [1738494] - [vhost] vhost: correctly check the return value of translate_desc() in log_used() (Jason Wang) [1738494] - [vhost] vhost: return EINVAL if iovecs size does not match the message size (Jason Wang) [1738494] - [vhost] Revert "net: vhost: lock the vqs one by one" (Jason Wang) [1738494] - [vhost] vhost_net: switch to use mutex_trylock() in vhost_net_busy_poll() (Jason Wang) [1738494] - [vhost] vhost: make sure used idx is seen before log in vhost_add_used_n() (Jason Wang) [1738494] - [vhost] vhost: fix IOTLB locking (Jason Wang) [1738494] - [netdrv] tun: wake up waitqueues after IFF_UP is set (Jason Wang) [1738494] - [netdrv] tuntap: synchronize through tfiles array instead of tun->numqueues (Jason Wang) [1738494] - [netdrv] tuntap: fix dividing by zero in ebpf queue selection (Jason Wang) [1738494] - [netdrv] tun: Remove unused first parameter of tun_get_iff() (Jason Wang) [1738494] - [netdrv] tun: Add ioctl() TUNGETDEVNETNS cmd to allow obtaining real net ns of tun device (Jason Wang) [1738494] - [netdrv] tun: add a missing rcu_read_unlock() in error path (Jason Wang) [1738494] - [netdrv] tun: properly test for IFF_UP (Jason Wang) [1738494] - [netdrv] tun: remove unnecessary memory barrier (Jason Wang) [1738494] - [netdrv] tun: fix blocking read (Jason Wang) [1738494] - [netdrv] tun: move the call to tun_set_real_num_queues (Jason Wang) [1738494] - [netdrv] tun: publish tfile after it's fully initialized (Jason Wang) [1738494] - [netdrv] tun: replace get_cpu_ptr with this_cpu_ptr when bh disabled (Jason Wang) [1738494] - [netdrv] tun: remove skb access after netif_receive_skb (Jason Wang) [1738494] - [netdrv] tun: remove unnecessary check in tun_flow_update (Jason Wang) [1738494] - [netdrv] tuntap: fix multiqueue rx (Jason Wang) [1738494] - [netdrv] tun: Adjust on-stack tun_page initialization. (Jason Wang) [1738494] - [netdrv] tuntap: free XDP dropped packets in a batch (Jason Wang) [1738494] - [vhost] vhost_net: mitigate page reference counting during page frag refill (Jason Wang) [1738494] - [vhost] net: vhost: remove bad code line (Jason Wang) [1738494] - [vhost] net: vhost: add rx busy polling in tx path (Jason Wang) [1738494] - [vhost] net: vhost: factor out busy polling logic to vhost_net_busy_poll() (Jason Wang) [1738494] - [vhost] net: vhost: replace magic number of lock annotation (Jason Wang) [1738494] - [vhost] net: vhost: lock the vqs one by one (Jason Wang) [1738494] - [vhost] vhost_net: add a missing error return (Jason Wang) [1738494] - [netdrv] net: tun: remove useless codes of tun_automq_select_queue (Jason Wang) [1738494] - [vhost] vhost_net: batch submitting XDP buffers to underlayer sockets (Jason Wang) [1738494] - [netdrv] tap: accept an array of XDP buffs through sendmsg() (Jason Wang) [1738494] - [netdrv] tuntap: accept an array of XDP buffs through sendmsg() (Jason Wang) [1738494] - [netdrv] tun: switch to new type of msg_control (Jason Wang) [1738494] - [netdrv] tuntap: move XDP flushing out of tun_do_xdp() (Jason Wang) [1738494] - [netdrv] tuntap: split out XDP logic (Jason Wang) [1738494] - [netdrv] tuntap: tweak on the path of skb XDP case in tun_build_skb() (Jason Wang) [1738494] - [netdrv] tuntap: simplify error handling in tun_build_skb() (Jason Wang) [1738494] - [netdrv] tuntap: enable bh early during processing XDP (Jason Wang) [1738494] - [netdrv] tuntap: switch to use XDP_PACKET_HEADROOM (Jason Wang) [1738494] - [netdrv] net: sock: introduce SOCK_XDP (Jason Wang) [1738494] - [vhost] vhost: correctly check the iova range when waking virtqueue (Jason Wang) [1738494] - [vhost] vhost: switch to use new message format (Jason Wang) [1738494] - [vhost] vhost_net: batch update used ring for datacopy TX (Jason Wang) [1738494] - [vhost] vhost_net: rename VHOST_RX_BATCH to VHOST_NET_BATCH (Jason Wang) [1738494] - [vhost] vhost_net: rename vhost_rx_signal_used() to vhost_net_signal_used() (Jason Wang) [1738494] - [vhost] vhost_net: split out datacopy logic (Jason Wang) [1738494] - [vhost] vhost_net: introduce tx_can_batch() (Jason Wang) [1738494] - [vhost] vhost_net: introduce get_tx_bufs() (Jason Wang) [1738494] - [vhost] vhost_net: introduce vhost_exceeds_weight() (Jason Wang) [1738494] - [vhost] vhost_net: introduce helper to initialize tx iov iter (Jason Wang) [1738494] - [vhost] vhost_net: drop unnecessary parameter (Jason Wang) [1738494] - [vhost] vhost_net: Avoid rx vring kicks during busyloop (Jason Wang) [1738494] - [vhost] vhost_net: Avoid rx queue wake-ups during busypoll (Jason Wang) [1738494] - [vhost] vhost_net: Avoid tx vring kicks during busyloop (Jason Wang) [1738494] - [vhost] vhost_net: Rename local variables in vhost_net_rx_peek_head_len (Jason Wang) [1738494] - [mm] x86/mm/fault: Allow stack access below rsp (Waiman Long) [1739341] - [mm] x86/mm: Clarify hardware vs. software "error_code" (Waiman Long) [1739341] - [net] libceph: handle an empty authorize reply (Ilya Dryomov) [1720582]- [drm] drm: Don't retry infinitely when receiving no data on i2c over AUX (Lyude Paul) [1672361] - [scsi] scsi: hpsa: update revision to RH3 (Joseph Szczypek) [1739615] - [scsi] scsi: hpsa: remove printing internal cdb on tag collision (Joseph Szczypek) [1739615] - [scsi] scsi: hpsa: correct scsi command status issue after reset (Joseph Szczypek) [1739615] - [scsi] hpsa: docs: fix broken doc references due to renames (Joseph Szczypek) [1739615] - [scsi] hpsa: docs: pci: fix broken links due to conversion from pci.txt to pci.rst (Joseph Szczypek) [1739615]- [drm] drm/nouveau: Only recalculate PBN/VCPI on mode/connector changes (Lyude Paul) [1734452 1734444] - [drm] drm/nouveau: Only release VCPI slots on mode changes (Lyude Paul) [1734452 1734444] - [infiniband] RDMA/srp: turn off 'use_imm_data' by default (Honggang Li) [1725158] - [gpu] vga_switcheroo: Fix missing gpu_bound call at audio client registration (Lyude Paul) [1739727] - [net] Bluetooth: Fix faulty expression for minimum encryption key size check (Gopal Tiwari) [1743076] {CVE-2019-9506} - [net] Bluetooth: Fix regression with minimum encryption key size alignment (Gopal Tiwari) [1743076] {CVE-2019-9506} - [net] Bluetooth: Align minimum encryption key size for LE and BR/EDR connections (Gopal Tiwari) [1743076] {CVE-2019-9506}- [rpmspec] perf: package tips.txt (Michael Petlan) [1663816] - [mm] mm/memblock.c: skip kmemleak for kasan_init() (Mark Langsdorf) [1722741] - [kernel] mm/resource: Return real error codes from walk failures (Kairui Song) [1740443] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh for powerpc64 (Michael Petlan) [1733231] - [tools] selftests/powerpc: Fix Makefiles for headers_install change (Steve Best) [1740127] - [tools] selftests/powerpc: Add more version checks to alignment_handler test (Steve Best) [1740127] - [tools] selftests/powerpc: Skip earlier in alignment_handler test (Steve Best) [1740127] - [tools] selftests/powerpc: Consolidate copy/paste test logic (Steve Best) [1740127] - [s390] s390/bpf: use 32-bit index for tail calls (Yauheni Kaliuta) [1719377] - [s390] s390/bpf: fix lcgr instruction encoding (Yauheni Kaliuta) [1719377] - [tools] selftests/bpf: fix "alu with different scalars 1" on s390 (Yauheni Kaliuta) [1719377] - [net] bpf: fix use after free in bpf_evict_inode (Yauheni Kaliuta) [1719377] - [arm64] bpf, arm64: remove prefetch insn in xadd mapping (Yauheni Kaliuta) [1719377] - [scsi] scsi: lpfc: Fix crash when cpu count is 1 and null irq affinity mask (Dick Kennedy) [1720905] - [md] md: add bitmap_abort label in md_run (Nigel Croxon) [1721944] - [md] md-bitmap: create and destroy wb_info_pool with the change of bitmap (Nigel Croxon) [1721944] - [md] md-bitmap: create and destroy wb_info_pool with the change of backlog (Nigel Croxon) [1721944] - [md] md: introduce mddev_create/destroy_wb_pool for the change of member device (Nigel Croxon) [1721944] - [md] md/raid1: fix potential data inconsistency issue with write behind device (Nigel Croxon) [1721944] - [md] md: fix for divide error in status_resync (Nigel Croxon) [1721944] - [md] md/raid10: read balance chooses idlest disk for SSD (Nigel Croxon) [1721944] - [md] md: raid1-10: Unify r{1,10}bio_pool_free (Nigel Croxon) [1721944] - [md] md: raid10: Use struct_size() in kmalloc() (Nigel Croxon) [1721944] - [md] md/raid1: get rid of extra blank line and space (Nigel Croxon) [1721944] - [md] md: fix spelling typo and add necessary space (Nigel Croxon) [1721944] - [md] md: md.c: Return -ENODEV when mddev is NULL in rdev_attr_show (Nigel Croxon) [1721944] - [md] raid5-cache: Need to do start() part job after adding journal device (Nigel Croxon) [1721944] - [md] drivers: md: Unify common definitions of raid1 and raid10 (Nigel Croxon) [1721944] - [kernel] userfaultfd: use RCU to free the task struct when fork fails (Andrea Arcangeli) [1718498]- [efi] efi/arm: Revert "Defer persistent reservations until after paging_init()" (Mark Salter) [1699961] - [s390] s390/ipl: Fix detection of has_secure attribute (Philipp Rudo) [1740653] - [fs] xfs: don't crash on null attr fork xfs_bmapi_read (Bill O'Donnell) [1719094] - [powerpc] powerpc/mm: Don't report PUDs as memory leaks when using kmemleak (Desnes Augusto Nunes do Rosario) [1716952] - [x86] kvm: x86: introduce is_pae_paging (Vitaly Kuznetsov) [1720556] - [s390] s390/kasan: Fix recursion loop when triggering kdump (Philipp Rudo) [1740249] - [s390] s390/dasd: fix endless loop after read unit address configuration (Philipp Rudo) [1740251] - [tools] selftests/powerpc: Give some tests longer to run (Steve Best) [1740420] - [nvme] nvme-rdma: use dynamic dma mapping per command (David Milburn) [1738252] - [nvme] nvme-rdma: remove redundant reference between ib_device and tagset (David Milburn) [1738252] - [x86] kvm: svm/avic: Do not send AVIC doorbell to self (Janakarajan Natarajan) [1720981] - [net] tipc: initialise addr_trial_end when setting node addresses (Jon Maloy) [1740317] - [net] tipc: ensure head->lock is initialised (Jon Maloy) [1740317] - [net] netfilter: nf_tables: fix oops during rule dump (Stefano Brivio) [1739734] - [include] netfilter: nf_tables: correct NFT_LOGLEVEL_MAX value (Stefano Brivio) [1739734] - [net] netfilter: nft_compat: do not dump private area (Stefano Brivio) [1739734] - [net] netfilter: nf_tables: fix register ordering (Stefano Brivio) [1739734] - [net] ipvs: defer hook registration to avoid leaks (Stefano Brivio) [1739734] - [net] ipvs: Fix use-after-free in ip_vs_in (Stefano Brivio) [1739734] - [net] netfilter: nf_conntrack_h323: restore boundary check correctness (Stefano Brivio) [1739734] - [net] netfilter: fix nf_l4proto_log_invalid to log invalid packets (Stefano Brivio) [1739734] - [net] netfilter: nf_tables: prevent shift wrap in nft_chain_parse_hook() (Stefano Brivio) [1739734] - [net] netfilter: nft_set_rbtree: check for inactive element after flag mismatch (Stefano Brivio) [1739734] - [net] netfilter: nft_compat: use-after-free when deleting targets (Stefano Brivio) [1739734] - [net] netfilter: nf_tables: fix leaking object reference count (Stefano Brivio) [1739734] - [net] ip6_gre: reload ipv6h in prepare_ip6gre_xmit_ipv6 (Stefano Brivio) [1739640] - [net] ipv6: Unlink sibling route in case of failure (Stefano Brivio) [1739640] - [net] ipv6: Default fib6_type to RTN_UNICAST when not set (Stefano Brivio) [1739640] - [net] inet: frags: call inet_frags_fini() after unregister_pernet_subsys() (Stefano Brivio) [1739640] - [net] ipv6: flowlabel: fl6_sock_lookup() must use atomic_inc_not_zero (Stefano Brivio) [1739640] - [net] netfilter: ipset: Fix rename concurrency with listing (Stefano Brivio) [1739578] - [net] netfilter: ipset: Fix error path in set_target_v3_checkentry() (Stefano Brivio) [1739578] - [net] netfilter: ipset: Fix the last missing check of nla_parse_deprecated() (Stefano Brivio) [1739578] - [net] netfilter: ipset: fix a missing check of nla_parse (Stefano Brivio) [1739578] - [netdrv] ipvlan, l3mdev: fix broken l3s mode wrt local routes (Guillaume Nault) [1738329] - [net] sched: use temporary variable for actions indexes (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [net] sched: cbs: Fix error path of cbs_module_init (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [net] netem: fix use after free and double free with packet corruption (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [net] netem: fix backlog accounting for corrupted GSO frames (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [netdrv] macsec: fix checksumming after decryption (Sabrina Dubroca) [1738237] - [netdrv] macsec: fix use-after-free of skb during RX (Sabrina Dubroca) [1738237] - [net] xfrm interface: fix memory leak on creation (Sabrina Dubroca) [1738267] - [net] tls: fix socket wmem accounting on fallback with netem (Sabrina Dubroca) [1739260] - [net] tls: fix poll ignoring partially copied records (Sabrina Dubroca) [1739260] - [net] tls: make sure offload also gets the keys wiped (Sabrina Dubroca) [1739260] - [net] tls: reject offload of TLS 1.3 (Sabrina Dubroca) [1739260] - [net] tls: fix page double free on TX cleanup (Sabrina Dubroca) [1739260] - [net] tls, correctly account for copied bytes with multiple sk_msgs (Sabrina Dubroca) [1739260] - [net] tcp: fix tcp_set_congestion_control() use from bpf hook (Guillaume Nault) [1738272] - [net] tcp: Reset bytes_acked and bytes_received when disconnecting (Guillaume Nault) [1738272] - [net] tcp: Ensure DCTCP reacts to losses (Guillaume Nault) [1738272] - [net] tcp: tcp_v4_err() should be more careful (Guillaume Nault) [1738272] - [net] tcp: avoid resetting ACK timer upon receiving packet with ECN CWR flag (Guillaume Nault) [1738272] - [net] tcp: always ACK immediately on hole repairs (Guillaume Nault) [1738272] - [net] tcp: avoid resetting ACK timer in DCTCP (Guillaume Nault) [1738272] - [net] tcp: mandate a one-time immediate ACK (Guillaume Nault) [1738272] - [net] tipc: fix unitilized skb list crash (Xin Long) [1734298] - [net] tipc: compat: allow tipc commands without arguments (Xin Long) [1738397] - [net] sctp: factor out sctp_connect_add_peer (Xin Long) [1738393] - [net] sctp: factor out sctp_connect_new_asoc (Xin Long) [1738393] - [net] sctp: clean up __sctp_connect (Xin Long) [1738393] - [net] sctp: check addr_size with sa_family_t size in __sctp_setsockopt_connectx (Xin Long) [1738393] - [net] sctp: only copy the available addr data in sctp_transport_init (Xin Long) [1738393] - [net] sctp: drop unneeded likely() call around IS_ERR() (Xin Long) [1738393] - [net] sctp: fix warning "NULL check before some freeing functions is not needed" (Xin Long) [1738393] - [net] sctp: remove rcu_read_lock from sctp_bind_addr_state (Xin Long) [1738393] - [net] sctp: rename sp strm_interleave to ep intl_enable (Xin Long) [1738393] - [net] sctp: rename asoc intl_enable to asoc peer.intl_capable (Xin Long) [1738393] - [net] sctp: remove prsctp_enable from asoc (Xin Long) [1738393] - [net] sctp: remove reconf_enable from asoc (Xin Long) [1738393] - [net] sctp: count data bundling sack chunk for outctrlchunks (Xin Long) [1738393] - [net] sctp: fix error handling on stream scheduler initialization (Xin Long) [1738393] - [net] sctp: not bind the socket in sctp_connect (Xin Long) [1738393] - [net] sctp: change to hold sk after auth shkey is created successfully (Xin Long) [1738393] - [net] sctp: Free cookie before we memdup a new one (Xin Long) [1738393] - [net] Fix memory leak in sctp_process_init (Xin Long) [1738393] - [net] sctp: deduplicate identical skb_checksum_ops (Xin Long) [1738393] - [net] sctp: Check address length before reading address family (Xin Long) [1738393] - [net] sctp: Pass sk_buff_head explicitly to sctp_ulpq_tail_event(). (Xin Long) [1738393] - [net] sctp: Make sctp_enqueue_event tak an skb list. (Xin Long) [1738393] - [net] sctp: Use helper for sctp_ulpq_tail_event() when hooked up to ->enqueue_event (Xin Long) [1738393] - [net] sctp: Always pass skbs on a list to sctp_ulpq_tail_event(). (Xin Long) [1738393] - [net] sctp: Remove superfluous test in sctp_ulpq_reasm_drain(). (Xin Long) [1738393] - [netdrv] ppp: Remove direct skb_queue_head list pointer access. (Xin Long) [1738393] - [net] ipv6: fix neighbour resolution with raw socket (Stefano Brivio) [1728320] - [net] ipv6: constify rt6_nexthop() (Stefano Brivio) [1728320] - [net] openvswitch: fix csum updates for MPLS actions (Marcelo Leitner) [1738654] - [net] udp_gso: Allow TX timestamp with UDP GSO (Paolo Abeni) [1738585] - [net] bpf: udp: ipv6: Avoid running reuseport's bpf_prog from __udp6_lib_err (Paolo Abeni) [1738585] - [net] fix ifindex collision during namespace removal (Paolo Abeni) [1738492] - [net] rtnl: return early from rtnl_unregister_all when protocol isn't registered (Paolo Abeni) [1738492] - [net] neigh: fix use-after-free read in pneigh_get_next (Paolo Abeni) [1738492] - [net] socket: set sock->sk to NULL after calling proto_ops::release() (Paolo Abeni) [1738492] - [net] socket: make bond ioctls go through compat_ifreq_ioctl() (Paolo Abeni) [1738492] - [net] socket: fix SIOCGIFNAME in compat (Paolo Abeni) [1738492] - [net] Revert "kill dev_ifsioc()" (Paolo Abeni) [1738492] - [net] revert "socket: fix struct ifreq size in compat ioctl" (Paolo Abeni) [1738492] - [net] ip6_tunnel: fix possible use-after-free on xmit (Guillaume Nault) [1737105] - [net] genetlink: Fix a memory leak on error path (Guillaume Nault) [1737821] - [net] netfilter: ipset: Copy the right MAC address in bitmap:ip, mac and hash:ip, mac sets (Stefano Brivio) [1723605] - [net] netfilter: ipset: Actually allow destination MAC address for hash:ip, mac sets too (Stefano Brivio) [1723605] - [net] igmp: fix memory leak in igmpv3_del_delrec() (Hangbin Liu) [1736816] - [net] don't clear sock->sk early to avoid trouble in strparser (Hangbin Liu) [1736816] - [net] ipv4/igmp: fix build error if !CONFIG_IP_MULTICAST (Hangbin Liu) [1736816] - [net] ipv4/igmp: fix another memory leak in igmpv3_del_delrec() (Hangbin Liu) [1736816] - [net] route: set the deleted fnhe fnhe_daddr to 0 in ip_del_fnhe to fix a race (Hangbin Liu) [1736816] - [net] netlabel: fix out-of-bounds memory accesses (Hangbin Liu) [1736816] - [net] ipv4: Fix memory leak in network namespace dismantle (Hangbin Liu) [1736816] - [net] bridge: delete local fdb on device init failure (Hangbin Liu) [1736824] - [net] bridge: stp: don't cache eth dest pointer before skb pull (Hangbin Liu) [1736824] - [net] bridge: don't cache ether dest pointer on input (Hangbin Liu) [1736824] - [net] bridge: mcast: fix stale ipv6 hdr pointer when handling v6 query (Hangbin Liu) [1736824] - [net] bridge: mcast: fix stale nsrcs pointer in igmp3/mld2 report handling (Hangbin Liu) [1736824] - [net] bridge: fix per-port af_packet sockets (Hangbin Liu) [1736824] - [include] ip: fix ip_mc_may_pull() return value (Hangbin Liu) [1736824] - [net] bridge: use struct_size() helper (Hangbin Liu) [1736824] - [net] bridge: simplify ip_mc_check_igmp() and ipv6_mc_check_mld() calls (Hangbin Liu) [1736824] - [net] net/bridge/br_multicast: remove redundant variable "err" (Hangbin Liu) [1736824] - [x86] x86/kdump/64: Restrict kdump kernel reservation to <64TB (Baoquan He) [1669090] - [x86] x86/kexec/64: Prevent kexec from 5-level paging to a 4-level only kernel (Baoquan He) [1669088] - [x86] x86/boot: Add xloadflags bits to check for 5-level paging support (Baoquan He) [1669088] - [tools] perf header: Fix wrong node write in NUMA_TOPOLOGY feature (Michael Petlan) [1722044] - [tools] perf c2c: Fix c2c report for empty numa node (Michael Petlan) [1722044] - [x86] kvm: svm/avic: fix off-by-one in checking host APIC ID (Janakarajan Natarajan) [1720983]- [fs] gfs2: gfs2_walk_metadata fix (Andreas Grunbacher) [1724361] - [netdrv] mlx4/en_netdev: allow offloading VXLAN over VLAN (Paolo Abeni) [1733532] - [fs] xfs: always rejoin held resources during defer roll (Bill O'Donnell) [1706588] - [bluetooth] Bluetooth: hci_uart: check for missing tty operations (Gopal Tiwari) [1734239] {CVE-2019-10207}- [documentation] Documentation: Add swapgs description to the Spectre v1 documentation (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [documentation] Documentation: Add section about CPU vulnerabilities for Spectre (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/speculation/swapgs: Exclude ATOMs from speculation through SWAPGS (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/entry/64: Use JMP instead of JMPQ (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/speculation: Enable Spectre v1 swapgs mitigations (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/speculation: Prepare entry code for Spectre v1 swapgs mitigations (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/cpufeatures: Combine word 11 and 12 into a new scattered features word (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/cpufeatures: Carve out CQM features retrieval (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [netdrv] ibmveth: fix DMA unmap error in ibmveth_xmit_start error path (Steve Best) [1739431] - [rpmspec] rpmspec: use make macro to do headers_install with rpm CFLAGS/LDFLAGS ("Herton R. Krzesinski") [1738659] - [rpmspec] rpmspec: use tools_make for building tools ("Herton R. Krzesinski") [1738659] - [tools] tools gpio: Allow overriding CFLAGS ("Herton R. Krzesinski") [1738659] - [tools] tools thermal tmon: Allow overriding CFLAGS assignments ("Herton R. Krzesinski") [1738659] - [tools] tools iio: Override CFLAGS assignments ("Herton R. Krzesinski") [1738659] - [fs] NFS: Fix dentry revalidation on NFSv4 lookup (Steve Dickson) [1667774] - [fs] pNFS: Avoid read/modify/write when it is not necessary (Benjamin Coddington) [1680649] - [fs] pNFS: Fix potential corruption of page being written (Benjamin Coddington) [1680649] - [fs] gfs2: Inode dirtying fix (Andreas Grunbacher) [1724361] - [net] sunrpc: make visible processing error in bc_svc_process() ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: remove unused xpo_prep_reply_hdr callback ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: remove svc_tcp_bc_class ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: replace svc_serv->sv_bc_xprt by boolean flag ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: use-after-free in svc_process_common() ("J. Bruce Fields") [1660823] {CVE-2018-16884}- [scsi] scsi: implement .cleanup_rq callback (Ming Lei) [1696256] - [md] blk-mq: add callback of .cleanup_rq (Ming Lei) [1696256] - [block] blk-mq: insert rq with DONTPREP to hctx dispatch list when requeue (Ming Lei) [1696256] - [scsi] scsi: core: Fix race on creating sense cache (Ming Lei) [1696256] - [block] blk-mq: balance mapping between present CPUs and queues (Ming Lei) [1733040] - [block] blk-mq: Fix spelling in a source code comment (Ming Lei) [1733040] - [drm] drm/i915: Don't dereference request if it may have been retired when printing (Lyude Paul) [1715997] - [drm] drm/i915/icl: whitelist PS_(DEPTH|INVOCATION)_COUNT (Lyude Paul) [1715997] - [drm] drm/i915: whitelist PS_(DEPTH|INVOCATION)_COUNT (Lyude Paul) [1715997] - [drm] drm/i915: Support flags in whitlist WAs (Lyude Paul) [1715997] - [drm] drm/i915: Disable SAMPLER_STATE prefetching on all Gen11 steppings. (Lyude Paul) [1715997] - [drm] drm/i915/userptr: Acquire the page lock around set_page_dirty() (Lyude Paul) [1715997] - [drm] drm/i915/perf: fix ICL perf register offsets (Lyude Paul) [1715997] - [drm] drm/virtio: Add memory barriers for capset cache. (Lyude Paul) [1715997] - [drm] drm/amd/display: Always allocate initial connector state state (Lyude Paul) [1715997] - [drm] drm/vkms: Forward timer right after drm_crtc_handle_vblank (Lyude Paul) [1715997] - [drm] drm/crc-debugfs: Also sprinkle irqrestore over early exits (Lyude Paul) [1715997] - [drm] drm/crc-debugfs: User irqsafe spinlock in drm_crtc_add_crc_entry (Lyude Paul) [1715997] - [drm] drm/amd/display: Increase Backlight Gain Step Size (Lyude Paul) [1715997] - [drm] drm/amd/display: CS_TFM_1D only applied post EOTF (Lyude Paul) [1715997] - [drm] drm/edid: Fix a missing-check bug in drm_load_edid_firmware() (Lyude Paul) [1715997] - [drm] drm/amdkfd: Fix sdma queue map issue (Lyude Paul) [1715997] - [drm] drm/amdkfd: Fix a potential memory leak (Lyude Paul) [1715997] - [drm] drm/amd/display: Disable ABM before destroy ABM struct (Lyude Paul) [1715997] - [drm] drm/amdgpu/sriov: Need to initialize the HDP_NONSURFACE_BAStE (Lyude Paul) [1715997] - [drm] drm/amdgpu: Reserve shared fence for eviction fence (Lyude Paul) [1715997] - [drm] drm/amd/display: Disable cursor when offscreen in negative direction (Lyude Paul) [1715997] - [drm] drm/amd/display: Fill prescale_params->scale for RGB565 (Lyude Paul) [1715997] - [drm] drm/virtio: set seqno for dma-fence (Lyude Paul) [1715997] - [drivers] dma-buf: Discard old fence_excl on retrying get_fences_rcu for realloc (Lyude Paul) [1715997] - [drivers] dma-buf: balance refcount inbalance (Lyude Paul) [1715997] - [drm] drm/edid: parse CEA blocks embedded in DisplayID (Lyude Paul) [1715997] - [drm] drm/nouveau/i2c: Enable i2c pads & busses during preinit (Lyude Paul) [1715997] - [drm] drm: return -EFAULT if copy_to_user() fails (Lyude Paul) [1715997] - [drm] drm/vmwgfx: fix a warning due to missing dma_parms (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Honor the sg list segment size limitation (Lyude Paul) [1715997] - [drm] drm/virtio: move drm_connector_update_edid_property() call (Lyude Paul) [1715997] - [drm] drm/amdgpu/gfx9: use reset default for PA_SC_FIFO_SIZE (Lyude Paul) [1715997] - [drm] drm/amdgpu: Don't skip display settings in hwmgr_resume() (Lyude Paul) [1717138 1715997] - [drm] drm/amd/powerplay: use hardware fan control if no powerplay fan table (Lyude Paul) [1715997] - [drm] drm/i915/ringbuffer: EMIT_INVALIDATE *before* switch context (Lyude Paul) [1715997] - [drm] drm/i915: Skip modeset for cdclk changes if possible (Lyude Paul) [1715997] - [drm] drm/i915: Remove redundant store of logical CDCLK state (Lyude Paul) [1715997] - [drm] drm/i915: Save the old CDCLK atomic state (Lyude Paul) [1715997] - [drm] drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled (Lyude Paul) [1715997] - [drm] drm/i915: Don't clobber M/N values during fastset check (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Use the backdoor port if the HB port is not available (Lyude Paul) [1715997] - [drm] drm: add fallback override/firmware EDID modes workaround (Lyude Paul) [1715997] - [drm] drm/edid: abstract override/firmware EDID retrieval (Lyude Paul) [1715997] - [drm] drm/vmwgfx: NULL pointer dereference from vmw_cmd_dx_view_define() (Lyude Paul) [1715997] - [drm] drm/vmwgfx: integer underflow in vmw_cmd_dx_set_shader() leading to an invalid read (Lyude Paul) [1715997] - [drm] drm/amdgpu: keep stolen memory on picasso (Lyude Paul) [1715997] - [drm] drm/i915/dmc: protect against reading random memory (Lyude Paul) [1715997] - [drm] drm/i915: Fix per-pixel alpha with CCS (Lyude Paul) [1715997] - [drm] drm/i915/dsi: Use a fuzzy check for burst mode clock check (Lyude Paul) [1715997] - [drm] drm/i915/sdvo: Implement proper HDMI audio support for SDVO (Lyude Paul) [1715997] - [drm] drm/amdgpu/{uvd,vcn}: fetch ring's read_ptr after alloc (Lyude Paul) [1715997] - [drm] drm/amd/display: Use plane->color_space for dpp if specified (Lyude Paul) [1715997] - [drm] drm/amd/display: disable link before changing link settings (Lyude Paul) [1715997] - [drm] Revert "drm: allow render capable master with DRM_AUTH ioctls" (Lyude Paul) [1715997] - [drm] drm/amd: fix fb references in async update (Lyude Paul) [1715997] - [drm] drm/i915/gvt: Initialize intel_gvt_gtt_entry in stack (Lyude Paul) [1715997] - [drm] drm: don't block fb changes for async plane updates (Lyude Paul) [1715997] - [drm] drm/i915/gvt: emit init breadcrumb for gvt request (Lyude Paul) [1715997] - [drm] drm/amdgpu: fix ring test failure issue during s3 in vce 3.0 (V2) (Lyude Paul) [1715997] - [drm] drm/amd/display: Add ASICREV_IS_PICASSO (Lyude Paul) [1715997] - [drm] drm/amdgpu/soc15: skip reset on init (Lyude Paul) [1715997] - [include] drm/i915: Fix I915_EXEC_RING_MASK (Lyude Paul) [1715997] - [drm] drm/amdgpu: remove ATPX_DGPU_REQ_POWER_FOR_DISPLAYS check when hotplug-in (Lyude Paul) [1715997] - [drm] drm/radeon: prefer lower reference dividers (Lyude Paul) [1715997] - [drm] drm/amdgpu/psp: move psp version specific function pointers to early_init (Lyude Paul) [1715997] - [drm] drm: add non-desktop quirks to Sensics and OSVR headsets. (Lyude Paul) [1715997] - [drm] drm: add non-desktop quirk for Valve HMDs (Lyude Paul) [1715997] - [drm] drm/cma-helper: Fix drm_gem_cma_free_object() (Lyude Paul) [1715997] - [drm] drm/lease: Make sure implicit planes are leased (Lyude Paul) [1715997] - [drm] drm: Expose "FB_DAMAGE_CLIPS" property to atomic aware user-space only (Lyude Paul) [1715997] - [drm] drm/atomic: Wire file_priv through for property changes (Lyude Paul) [1715997] - [drm] drm/fb-helper: generic: Call drm_client_add() after setup is done (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Don't send drm sysfs hotplug events on initial master set (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Fix compat mode shader operation (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Fix user space handle equal to zero (Lyude Paul) [1715997] - [drm] drm: Wake up next in drm_read() chain if we are forced to putback the event (Lyude Paul) [1715997] - [drm] drm/drv: Hold ref on parent device during drm_device lifetime (Lyude Paul) [1715997] - [drm] drm/amd/display: Reset planes that were disabled in init_pipes (Lyude Paul) [1715997] - [drm] drm/amd/display: Fix exception from AUX acquire failure (Lyude Paul) [1715997] - [drm] drm: writeback: Fix leak of writeback job (Lyude Paul) [1715997] - [drm] drm/amd/display: Set stream->mode_changed when connectors change (Lyude Paul) [1715997] - [drm] drm/amd/display: half bandwidth for YCbCr420 during validation (Lyude Paul) [1715997] - [drm] drm/amd/display: Re-add custom degamma support (Lyude Paul) [1715997] - [drm] drm/amd/display: Fix Divide by 0 in memory calculations (Lyude Paul) [1715997] - [drm] drm/amd/display: add pipe lock during stream update (Lyude Paul) [1715997] - [drm] drm/amd/display: Reset alpha state for planes to the correct values (Lyude Paul) [1715997] - [drm] drm/amd/display: Update ABM crtc state on non-modeset (Lyude Paul) [1715997] - [drm] drm/amd/display: Link train only when link is DP and backend is enabled (Lyude Paul) [1715997] - [drm] drm/amd/display: fix releasing planes when exiting odm (Lyude Paul) [1715997] - [drm] drm/amd/display: Prevent cursor hotspot overflow for RV overlay planes (Lyude Paul) [1715997] - [drm] drm/amd/display: use proper formula to calculate bandwidth from timing (Lyude Paul) [1715997] - [drm] drm/amdgpu: fix old fence check in amdgpu_fence_emit (Lyude Paul) [1715997] - [drm] drm/nouveau/bar/nv50: ensure BAR is mapped (Lyude Paul) [1715997] - [pci] PCI: Mark AMD Stoney Radeon R7 GPU ATS as broken (Lyude Paul) [1715997] - [kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath exit when queue is empty (Waiman Long) [1737089] - [tools] perf vendor events power9: Added missing event descriptions (Michael Petlan) [1581405] - [crypto] crypto: skcipher - fix crash flushing dcache in error path (David Gibson) [1724370] - [netdrv] bnx2x: Prevent load reordering in tx completion processing (Manish Chopra) [1729599] - [x86] x86/boot/KASLR: Always return a value from process_mem_region (Baoquan He) [1564822] - [x86] x86/kexec: Add the ACPI NVS region to the ident map (Baoquan He) [1564822] - [x86] x86/boot: Call get_rsdp_addr() after console_init() (Baoquan He) [1564822] - [x86] x86/boot: Use efi_setup_data for searching RSDP on kexec-ed kernels (Baoquan He) [1564822] - [x86] x86/kexec: Add the EFI system tables and ACPI tables to the ident map (Baoquan He) [1564822] - [x86] x86/boot: Fix incorrect ifdeffery scope (Baoquan He) [1564822] - [x86] x86/boot: Correct RSDP parsing with 32-bit EFI (Baoquan He) [1564822] - [x86] x86/boot: Fix randconfig build error due to MEMORY_HOTREMOVE (Baoquan He) [1564822] - [x86] x86/boot: Fix cmdline_find_option() prototype visibility (Baoquan He) [1564822] - [x86] x86/boot/KASLR: Limit KASLR to extract the kernel in immovable memory only (Baoquan He) [1564822] - [x86] x86/boot: Parse SRAT table and count immovable memory regions (Baoquan He) [1564822] - [x86] x86/boot: Early parse RSDP and save it in boot_params (Baoquan He) [1564822] - [x86] x86/boot: Search for RSDP in memory (Baoquan He) [1564822] - [x86] x86/boot: Search for RSDP in the EFI tables (Baoquan He) [1564822] - [x86] x86/boot: Add "acpi_rsdp=" early parsing (Baoquan He) [1564822] - [x86] x86/boot: Copy kstrtoull() to boot/string.c (Baoquan He) [1564822] - [x86] x86/boot: Use CC_SET()/CC_OUT() instead of open coding it (Baoquan He) [1564822] - [x86] x86/boot: Build the command line parsing code unconditionally (Baoquan He) [1564822] - [x86] x86/boot: Clear RSDP address in boot_params for broken loaders (Baoquan He) [1564822] - [x86] x86/acpi, x86/boot: Take RSDP address from boot params if available (Baoquan He) [1564822] - [x86] x86/boot: Mostly revert commit ae7e1238e68f2a ("Add ACPI RSDP address to setup_header") (Baoquan He) [1564822] - [x86] x86/acpi, x86/boot: Take RSDP address for boot params if available (Baoquan He) [1564822] - [x86] x86/boot: Add ACPI RSDP address to setup_header (Baoquan He) [1564822] - [x86] x86/xen: Fix boot loader version reported for PVH guests (Baoquan He) [1564822] - [x86] x86/boot: Add missing va_end() to die() (Baoquan He) [1564822] - [x86] x86/boot/KASLR: Remove return value from handle_mem_options() (Baoquan He) [1564822] - [x86] x86/boot/KASLR: Make local variable mem_limit static (Baoquan He) [1564822] - [crypto] crypto: user - prevent operating on larval algorithms (Herbert Xu) [1728835]- [scsi] scsi: mpt3sas: Use 63-bit DMA addressing on SAS35 HBA (Tomas Henzl) [1734769] - [netdrv] bonding: Force slave speed check after link state recovery for 802.3ad (Jarod Wilson) [1732820] - [pci] PCI: hv: Add pci_destroy_slot() in pci_devices_present_work(), if necessary (Mohammed Gamal) [1733302] - [pci] PCI: hv: Add hv_pci_remove_slots() when we unload the driver (Mohammed Gamal) [1733302] - [pci] PCI: hv: Fix a use-after-free bug in hv_eject_device_work() (Mohammed Gamal) [1733302] - [pci] PCI: hv: Fix a memory leak in hv_eject_device_work() (Mohammed Gamal) [1733302] - [nvme] nvmet: fix setting ns queue's segment boundary (Ming Lei) [1734458]- [tools] perf script python: Remove explicit shebang from setup.py (Michael Petlan) [1664768 1663814] - [tools] perf script python: Remove explicit shebang from tests/attr.c (Michael Petlan) [1664768 1663814] - [tools] perf script python: Remove explicit shebang from Python scripts (Michael Petlan) [1664768 1663814] - [tools] perf script python: Use PyBytes for attr in trace-event-python (Michael Petlan) [1664768 1663814] - [tools] perf script python: Add trace_context extension module to sys.modules (Michael Petlan) [1663814 1664768] - [tools] perf scripts python: exported-sql-viewer.py: Fix python3 support (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to export-to-sqlite.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to export-to-postgresql.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to exported-sql-viewer.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to intel-pt-events.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to event_analyzing_sample.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: add Python3 support to check-perf-trace.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to futex-contention.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Remove mixed indentation (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to syscall-counts-by-pid.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to syscall-counts.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to stackcollapse.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to sctop.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to powerpc-hcalls.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to net_dropmonitor.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to mem-phys-addr.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to failed-syscalls-by-pid.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to netdev-times.py (Michael Petlan) [1663814 1664768] - [powerpc] mm_iommu: Allow pinning large regions (David Gibson) [1629531] - [powerpc] mm_iommu: Fix potential deadlock (David Gibson) [1629531] - [powerpc] mm/iommu: allow large IOMMU page size only for hugetlb backing (David Gibson) [1629531] - [powerpc] mm/iommu: allow migration of cma allocated pages during mm_iommu_do_alloc (David Gibson) [1629531] - [mm] update get_user_pages_longterm to migrate pages allocated from CMA region (David Gibson) [1629531] - [kernel] mm/cma: add PF flag to force non cma alloc (David Gibson) [1629531] - [net] tcp: be more careful in tcp_fragment() (Marcelo Leitner) [1732103] - [net] tipc: initialize 'validated' field of received packets (Jon Maloy) [1730574] - [documentation] networking: fix default_ttl typo in mpls-sysctl (Hangbin Liu) [1724882]- [powerpc] powerpc/mm: Limit rma_size to 1TB when running without HV mode (Suraj Jitindar Singh) [1723297] - [x86] kvm: nvmx: Set cached_vmcs12 and cached_shadow_vmcs12 NULL after free (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: do not use dangling shadow VMCS after guest reset (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Clear pending KVM_REQ_GET_VMCS12_PAGES when leaving nested (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Change KVM_STATE_NESTED_EVMCS to signal vmcs12 is copied from eVMCS (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Allow restore nested-state to enable eVMCS when vCPU in SMM (Paolo Bonzini) [1732096] - [tools] kvm: nvmx: reorganize initial steps of vmx_set_nested_state (Paolo Bonzini) [1732096] - [x86] kvm: x86: Modify struct kvm_nested_state to have explicit fields for data (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Clear nested_run_pending if setting nested state fails (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: really fix the size checks on KVM_SET_NESTED_STATE (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Set nested_run_pending in vmx_set_nested_state after checks complete (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: KVM_SET_NESTED_STATE - Tear down old EVMCS state before setting new state (Paolo Bonzini) [1732096] - [tools] kvm: selftests: avoid type punning (Paolo Bonzini) [1732096] - [tools] tests: kvm: Add tests for KVM_SET_NESTED_STATE (Paolo Bonzini) [1732096] - [x86] kvm: x86/mmu: Allocate PAE root array when using SVM's 32-bit NPT (Paolo Bonzini) [1732096] - [x86] kvm: lapic: Fix pending interrupt in IRR blocked by software disable LAPIC (Paolo Bonzini) [1732096] - [x86] kvm: x86: Dynamically allocate user_fpu (Paolo Bonzini) [1732096] - [x86] revert "kvm: x86: Use task structs fpu field for user" (Paolo Bonzini) [1732096] - [x86] hyperv: suppress "pci: fatal: No config space access function found" (Raghavendra Rao) [1734265] - [powerpc] [kvm] kvm: ppc: book3s hv: Save and restore guest visible PSSCR bits on pseries (Suraj Jitindar Singh) [1710726] - [powerpc] pmu: Set pmcregs_in_use in paca when running as LPAR (Suraj Jitindar Singh) [1710726] - [powerpc] [kvm] kvm: ppc: book3s hv: Always save guest pmu for guest capable of nesting (Suraj Jitindar Singh) [1710726] - [powerpc] kvm: ppc: book3s hv: xive: fix rollback when kvmppc_xive_create fails (David Gibson) [1731900] - [powerpc] powerpc/pseries: Fix xive=off command line (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: don't use string functions from lib/ (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc: remove CONFIG_CMDLINE #ifdef mess (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc: Move `path` variable inside DEBUG_PROM (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Generate "phandle" instead of "linux, phandle" (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Move a few remaining statics to appropriate sections (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Move prom_radix_disable to __prombss (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Remove support for OPAL v2 (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Replace __initdata with __prombss when applicable (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Make of_workarounds static (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/powernv/idle: Restore AMR/UAMOR/AMOR after idle (David Gibson) [1730183] - [powerpc] powerpc/powernv/idle: Restore IAMR after idle (David Gibson) [1730183]- [kernel] fork: report pid exhaustion correctly (Don Dutile) [1726448] - [lib] idr: Fix idr_get_next race with idr_remove (Don Dutile) [1726448] - [kernel] Fix failure path in alloc_pid() (Don Dutile) [1726448] - [target] scsi: iscsi: set auth_protocol back to NULL if CHAP_A value is not supported (Maurizio Lombardi) [1733498]- [infiniband] IB/umem: Add missing down_read on umem_rwsem (Alaa Hleihel) [1733188] - [fs] gfs2: Fix rounding error in gfs2_iomap_page_prepare (Andreas Grunbacher) [1733621] - [s390] s390/qeth: cancel cmd on early error (Philipp Rudo) [1731430] - [s390] s390/qeth: simplify reply object handling (Philipp Rudo) [1731430] - [s390] s390/qeth: release cmd buffer in error paths (Philipp Rudo) [1731430] - [mm] mm: hugetlb: soft-offline: dissolve_free_huge_page() return zero on !PageHuge (Rafael Aquini) [1706088] - [mm] mm: soft-offline: return -EBUSY if set_hwpoison_free_buddy_page() fails (Rafael Aquini) [1706088] - [mm] mm: soft-offline: close the race against page allocation (Rafael Aquini) [1706088] - [mm] mm: fix race on soft-offlining free huge pages (Rafael Aquini) [1706088] - [pci] PCI: Probe bridge window attributes once at enumeration-time (Myron Stowe) [1730763] - [mm] swap_readpage(): avoid blk_wake_io_task() if !synchronous (Ming Lei) [1724016] - [mm] mm/page_io.c: fix polled swap page in (Ming Lei) [1724016] - [include] fs: fix kABI for struct pipe_buf_operations (Miklos Szeredi) [1705007] {CVE-2019-11487} - [fs] fs: prevent page refcount overflow in pipe_buf_get (Miklos Szeredi) [1705007] {CVE-2019-11487} - [mm] mm: prevent get_user_pages() from overflowing page refcount (Miklos Szeredi) [1705007] {CVE-2019-11487} - [include] mm: add 'try_get_page()' helper function (Miklos Szeredi) [1705007] {CVE-2019-11487} - [include] mm: make page ref count overflow check tighter and more explicit (Miklos Szeredi) [1705007] {CVE-2019-11487} - [fs] fuse: call pipe_buf_release() under pipe lock (Miklos Szeredi) [1705007] {CVE-2019-11487} - [kernel] trace: Fix preempt_enable_no_resched() abuse (Phil Auld) [1705550] - [kernel] sched/numa: Fix a possible divide-by-zero (Phil Auld) [1705550] - [kernel] sched/core: Fix buffer overflow in cgroup2 property cpu.max (Phil Auld) [1705550] - [kernel] sched/fair: Remove unused 'sd' parameter from select_idle_smt() (Phil Auld) [1705550] - [kernel] sched/topology: Remove the ::smt_gain field from 'struct sched_domain' cleanups (Phil Auld) [1705550] - [kernel] sched/numa: Remove unused code from update_numa_stats() (Phil Auld) [1705550]- [s390] virtio/s390: fix race on airq_areas[] (Cornelia Huck) [1733499] - [powerpc] powerpc: ignore __GFP_DMA/DMA32 if we left an empty ZONE_DMA/DMA32 enabled for kABI purposes (David Gibson) [1728314] - [netdrv] bnx2x: Disable multi-cos feature. (Manish Chopra) [1679024] - [char] tpm: tpm_ibm_vtpm: Fix unallocated banks (Jerry Snitselaar) [1726126] - [scsi] scsi: ibmvfc: fix WARN_ON during event pool release (Steve Best) [1731133] - [tools] perf vendor events power9: General metrics (Michael Petlan) [1694638] - [tools] perf vendor events power9: Branch_prediction, instruction_stats, latency, lsu_rejects, memory, prefetch & translation metrics (Michael Petlan) [1694638] - [tools] perf vendor events power9: Dl1_reloads, instruction_misses, l[23]_stats & pteg_reloads metrics (Michael Petlan) [1694638] - [tools] perf vendor events power9: Cpi_breakdown & estimated_dcache_miss_cpi metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Translaton & general metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Branch_prediction, latency, bus_stats, instruction_mix & instruction_stats metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Dl1_reload, instruction_misses, l2_stats, lsu_rejects, memory & pteg_reloads metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Cpi_breakdown & estimated_dcache_miss_cpi metrics (Michael Petlan) [1694638] - [powerpc] powerpc/tm: Fix oops on sigreturn on systems without TM (Steve Best) [1732753] - [net] net/mlx5e: Add ndo_set_feature for uplink representor (Alaa Hleihel) [1727708] - [misc] VMCI: Fix integer overflow in VMCI handle arrays (Cathy Avery) [1729587] - [tools] perf version: Fix segfault due to missing OPT_END() (Michael Petlan) [1732065] - [sound] ALSA: hda/realtek - Headphone Mic can't record after S3 (Jaroslav Kysela) [1727676] - [char] random: fix CRNG initialization when random.trust_cpu=1 (Oleksandr Natalenko) [1728583] - [char] random: move rand_initialize() earlier (Oleksandr Natalenko) [1728583] - [char] random: make CPU trust a boot parameter (Oleksandr Natalenko) [1728583] - [char] random: add a config option to trust the CPU's hwrng (Oleksandr Natalenko) [1728583] - [fs] blockdev: Fix livelocks on loop device (Ming Lei) [1683593] - [block] nbd: Use set_blocksize() to set device blocksize (Ming Lei) [1683593] - [kernel] ptrace: Fix ->ptracer_cred handling for PTRACE_TRACEME (Aristeu Rozanski) [1730959] {CVE-2019-13272}- [include] linux/printk.h: use DYNAMIC_DEBUG_BRANCH in pr_debug_ratelimited (Mike Snitzer) [1729301] - [include] dm: use printk ratelimiting functions (Mike Snitzer) [1729301] - [md] dm crypt: move detailed message into debug level (Mike Snitzer) [1729301] - [powerpc] powerpc/xive: Fix loop exit-condition in xive_find_target_in_mask() (Steve Best) [1731838] - [s390] s390/qeth: be drop monitor friendly (Philipp Rudo) [1731200] - [s390] s390/cpumf: Add extended counter set definitions for model 8561 and 8562 (Philipp Rudo) [1731195] - [s390] s390/qdio: handle PENDING state for QEBSM devices (Philipp Rudo) [1731194] - [net] net/af_iucv: build proper skbs for HiperTransport (Philipp Rudo) [1731193] - [net] net/af_iucv: remove GFP_DMA restriction for HiperTransport (Philipp Rudo) [1731193] - [wireless] iwlwifi: mvm: disable TX-AMSDU on older NICs (Jarod Wilson) [1728992] - [wireless] carl9170: fix misuse of device driver API (Jarod Wilson) [1728992] - [wireless] p54: fix crash during initialization (Jarod Wilson) [1728992] - [wireless] p54usb: Fix race between disconnect and firmware loading (Jarod Wilson) [1728992] - [wireless] mwifiex: Don't abort on small, spec-compliant vendor IEs (Jarod Wilson) [1728992] - [wireless] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 507 (Jarod Wilson) [1728992] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 505 (Jarod Wilson) [1728992] - [wireless] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 501 (Jarod Wilson) [1728992] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jarod Wilson) [1728992] - [wireless] brcmfmac: sdio: Don't tune while the card is off (Jarod Wilson) [1728992] - [wireless] brcmfmac: sdio: Disable auto-tuning around commands expected to fail (Jarod Wilson) [1728992] - [mmc] mmc: core: Add sdio_retune_hold_now() and sdio_retune_release() (Jarod Wilson) [1728992] - [mmc] mmc: core: API to temporarily disable retuning for SDIO CRC errors (Jarod Wilson) [1728992] - [wireless] Revert "brcmfmac: disable command decode in sdio_aos" (Jarod Wilson) [1728992] - [net] cfg80211: report measurement start TSF correctly (Jarod Wilson) [1728992] - [net] cfg80211: fix memory leak of wiphy device name (Jarod Wilson) [1728992] - [net] cfg80211: util: fix bit count off by one (Jarod Wilson) [1728992] - [net] mac80211: do not start any work during reconfigure flow (Jarod Wilson) [1728992] - [net] cfg80211: use BIT_ULL in cfg80211_parse_mbssid_data() (Jarod Wilson) [1728992] - [net] mac80211: only warn once on chanctx_conf being NULL (Jarod Wilson) [1728992] - [net] mac80211: drop robust management frames from unknown TA (Jarod Wilson) [1728992] - [wireless] mwifiex: Fix heap overflow in mwifiex_uap_parse_tail_ies() (Jarod Wilson) [1728992 1721749] {CVE-2019-10126} - [wireless] iwlwifi: mvm: change TLC config cmd sent by rs to be async (Jarod Wilson) [1728992] - [wireless] iwlwifi: Fix double-free problems in iwl_req_fw_callback() (Jarod Wilson) [1728992] - [wireless] iwlwifi: fix AX201 killer sku loading firmware issue (Jarod Wilson) [1728992] - [wireless] iwlwifi: print fseq info upon fw assert (Jarod Wilson) [1728992] - [wireless] iwlwifi: clear persistence bit according to device family (Jarod Wilson) [1728992] - [wireless] iwlwifi: fix load in rfkill flow for unified firmware (Jarod Wilson) [1728992] - [wireless] iwlwifi: mvm: remove d3_sram debugfs file (Jarod Wilson) [1728992] - [wireless] mwifiex: Abort at too short BSS descriptor element (Jarod Wilson) [1728992 1714476] {CVE-2019-3846} - [wireless] mwifiex: Fix possible buffer overflows at parsing bss descriptor (Jarod Wilson) [1728992 1714476] {CVE-2019-3846} - [net] mac80211: free peer keys before vif down in mesh (Jarod Wilson) [1728992] - [wireless] rtw88: Make some symbols static (Jarod Wilson) [1728992] - [wireless] rtw88: avoid circular locking between local->iflist_mtx and rtwdev->mutex (Jarod Wilson) [1728992] - [wireless] rtw88: fix unassigned rssi_level in rtw_sta_info (Jarod Wilson) [1728992] - [wireless] rtw88: fix subscript above array bounds compiler warning (Jarod Wilson) [1728992] - [net] mac80211: mesh: fix RCU warning (Jarod Wilson) [1728992] - [net] nl80211: fix station_info pertid memory leak (Jarod Wilson) [1728992] - [net] mac80211: Do not use stack memory with scatterlist for GMAC (Jarod Wilson) [1728992] - [net] {nl,mac}80211: allow 4addr AP operation on crypto controlled devices (Jarod Wilson) [1728992] - [wireless] mac80211_hwsim: mark expected switch fall-through (Jarod Wilson) [1728992] - [net] mac80211: fix rate reporting inside cfg80211_calculate_bitrate_he() (Jarod Wilson) [1728992] - [net] mac80211: remove set but not used variable 'old' (Jarod Wilson) [1728992] - [net] mac80211: handle deauthentication/disassociation from TDLS peer (Jarod Wilson) [1728992] - [net] wireless: Skip directory when generating certificates (Jarod Wilson) [1728992] - [netdrv] i40e: Check and set the PF driver state first in i40e_ndo_set_vf_mac (Stefan Assmann) [1719538] - [fs] cifs: fix crash in smb2_compound_op()/smb2_set_next_command() (Leif Sahlberg) [1722704] - [firmware] efi/arm: Show SMBIOS bank/device location in CPER and GHES error logs (Robert Richter) [1721386]- [x86] x86/speculation: Allow guests to use SSBD even if host does not (Waiman Long) [1728341] - [block] block: kill BLK_MQ_F_SG_MERGE (Ming Lei) [1716595] - [block] block: kill QUEUE_FLAG_NO_SG_MERGE (Ming Lei) [1716595]- [x86] x86/insn-eval: Fix use-after-free access to LDT entry (Rafael Aquini) [1728561] {CVE-2019-13233} - [arm64] arm64/mm: Correct the cache line size warning with non coherent device (Mark Salter) [1715061] - [arm64] arm64: cacheinfo: Update cache_line_size detected from DT or PPTT (Mark Salter) [1715061] - [base] drivers: base: cacheinfo: Add variable to record max cache line size (Mark Salter) [1715061] - [arm64] arm64: cpufeature: Trap CTR_EL0 access only where it is necessary (Mark Salter) [1715061] - [arm64] arm64: cpufeature: Fix handling of CTR_EL0.IDC field (Mark Salter) [1715061] - [arm64] arm64: cpufeature: ctr: Fix cpu capability check for late CPUs (Mark Salter) [1715061] - [arm64] arm64: cpu_errata: Remove ARM64_MISMATCHED_CACHE_LINE_SIZE (Mark Salter) [1715061] - [fs] gfs2: Clean up freeing struct gfs2_sbd (Robert S Peterson) [1683698] - [target] scsi: target/iblock: Fix overrun in WRITE SAME emulation (Maurizio Lombardi) [1729503] - [x86] kvm/nvmx: fix VMCLEAR when Enlightened VMCS is in use (Vitaly Kuznetsov) [1717785] - [x86] kvm/nvmx: don't use clean fields data on enlightened VMLAUNCH (Vitaly Kuznetsov) [1717785] - [x86] kvm: nvmx: use correct clean fields when copying from eVMCS (Vitaly Kuznetsov) [1717785] - [fs] NFS4: Only set creation opendata if O_CREAT (Benjamin Coddington) [1708471] - [tools] perf test: Fix failure of 'evsel-tp-sched' test on s390 (Michael Petlan) [1729213] - [fs] PNFS fallback to MDS if no deviceid found (Benjamin Coddington) [1708386] - [mm] mm, memcg: add a memcg_slabinfo debugfs file (Waiman Long) [1699202] - [mm] mm: memcg/slab: reparent memcg kmem_caches on cgroup removal (Waiman Long) [1699202] - [mm] mm: memcg/slab: stop setting page->mem_cgroup pointer for slab pages (Waiman Long) [1699202] - [mm] mm: memcg/slab: rework non-root kmem_cache lifecycle management (Waiman Long) [1699202] - [mm] mm: memcg/slab: synchronize access to kmem_cache dying flag using a spinlock (Waiman Long) [1699202] - [mm] mm: memcg/slab: don't check the dying flag on kmem_cache creation (Waiman Long) [1699202] - [mm] mm: memcg/slab: unify SLAB and SLUB page accounting (Waiman Long) [1699202] - [mm] mm: memcg/slab: introduce __memcg_kmem_uncharge_memcg() (Waiman Long) [1699202] - [mm] mm: memcg/slab: generalize postponed non-root kmem_cache deactivation (Waiman Long) [1699202] - [mm] mm: memcg/slab: rename slab delayed deactivation functions and fields (Waiman Long) [1699202] - [mm] mm: memcg/slab: postpone kmem_cache memcg pointer initialization to memcg_link_cache() (Waiman Long) [1699202] - [mm] slub: add comments to endif pre-processor macros (Waiman Long) [1699202] - [mm] mm, slab: shorten kmalloc cache names for large sizes (Waiman Long) [1699202] - [base] mm, proc: add KReclaimable to /proc/meminfo (Waiman Long) [1699202] - [mm] mm: rename and change semantics of nr_indirectly_reclaimable_bytes (Waiman Long) [1699202] - [fs] dcache: allocate external names from reclaimable kmalloc caches (Waiman Long) [1699202] - [mm] mm, slab/slub: introduce kmalloc-reclaimable caches (Waiman Long) [1699202] - [mm] mm, slab: combine kmalloc_caches and kmalloc_dma_caches (Waiman Long) [1699202] - [mm] mm: don't warn about large allocations for slab (Waiman Long) [1699202] - [mm] slab: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1699202] - [acpi] ACPI / PM: LPIT: Register sysfs attributes based on FADT (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc_core: Quirk to ignore XTAL shutdown (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc_core: Add Package cstates residency info (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc_core: Add ICL platform support (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc: Sort headers alphabetically (Lenny Szubowicz) [1493461] - [net] Revert "[net] net: openvswitch: Add a new action check_pkt_len" ("Herton R. Krzesinski")- [nvme] nvme-rdma: use nr_phys_segments when map rq to sgl (David Milburn) [1729113] - [nvme] nvme-loop: kill timeout handler (Ming Lei) [1692744] - [netdrv] bnxt_en: Suppress error messages when querying DSCP DCB capabilities. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Cap the returned MSIX vectors to the RDMA driver. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix statistics context reservation logic for RDMA driver. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix ethtool selftest crash under error conditions. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Disable bus master during PCI shutdown and driver unload. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Reduce memory usage when running in kdump kernel. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix possible BUG() condition when calling pci_disable_msix(). (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix aggregation buffer leak under OOM condition. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Improve NQ reservations. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix uninitialized variable usage in bnxt_rx_pkt(). (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix statistics context reservation logic. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Pass correct extended TX port statistics size to firmware. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix possible crash in bnxt_hwrm_ring_free() under error conditions. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Free short FW command HWRM memory in error path in bnxt_init_one() (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Improve multicast address setup logic. (Selvin Xavier) [1727972] - [net] net: openvswitch: Add a new action check_pkt_len (Numan Siddique) [1700733]- [crypto] crypto: vmx - ghash: do nosimd fallback manually (Desnes Augusto Nunes do Rosario) [1729532] - [crypto] crypto: vmx - CTR: always increment IV as quadword (Desnes Augusto Nunes do Rosario) [1729532] - [net] vsock/virtio: fix flush of works during the .remove() (Stefano Garzarella) [1700312] - [net] vsock/virtio: stop workers during the .remove() (Stefano Garzarella) [1700312] - [net] vsock/virtio: use RCU to avoid use-after-free on the_virtio_vsock (Stefano Garzarella) [1700312] - [net] vsock/virtio: Initialize core virtio vsock before registering the driver (Stefano Garzarella) [1700312] - [nvme] nvme-fabrics: document the poll function argument (David Milburn) [1727784 1725132] - [nvme] nvme-rdma: fix queue mapping when queue count is limited (David Milburn) [1727784 1725132] - [nvme] nvme-rdma: rework queue maps handling (David Milburn) [1727784 1725132] - [nvme] nvme-rdma: implement polling queue map (David Milburn) [1727784 1725132] - [nvme] nvme-fabrics: allow nvmf_connect_io_queue to poll (David Milburn) [1727784 1725132] - [hid] HID: multitouch: Add pointstick support for ALPS Touchpad (Benjamin Tissoires) [1672423]- [tools] perf header: Assign proper ff->ph in perf_event__synthesize_features() (Michael Petlan) [1667983] - [pci] PCI/IOV: Assume SR-IOV VFs support extended config space. (Myron Stowe) [1714978] - [pci] Revert "PCI/IOV: Use VF0 cached config space size for other VFs" (Myron Stowe) [1714978] - [x86] x86/crash: Add e820 reserved ranges to kdump kernel's e820 table (Lianbo Jiang) [1630108] - [mm] x86/mm: Rework ioremap resource mapping determination (Lianbo Jiang) [1630108] - [x86] x86/e820, ioport: Add a new I/O resource descriptor IORES_DESC_RESERVED (Lianbo Jiang) [1630108] - [kernel] resource: Fix find_next_iomem_res() iteration issue (Lianbo Jiang) [1630108] - [kernel] resource: Include resource end in walk_*() interfaces (Lianbo Jiang) [1630108] - [x86] x86/kexec: Correct KEXEC_BACKUP_SRC_END off-by-one error (Lianbo Jiang) [1630108] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.3 (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix kernel warnings related to smp_processor_id() (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix BFS crash with DIX enabled (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix FDMI fc4type for nvme support (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix fcp_rsp_len checking on lun reset (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix poor use of hardware queues if fewer irq vectors (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix oops when driver is loaded with 1 interrupt vector (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix incorrect logical link speed on trunks when links down (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix memory leak in abnormal exit path from lpfc_eq_create (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Rework misleading nvme not supported in firmware message (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix hardlockup in scsi_cmd_iocb_cmpl (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Cancel queued work for an IO when processing a received ABTS (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Prevent 'use after free' memory overwrite in nvmet LS handling (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix PT2PT PLOGI collison stopping discovery (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Revert message logging on unsupported topology (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix nvmet handling of received ABTS for unmapped frames (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Separate CQ processing for nvmet_fc upcalls (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Revise message when stuck due to unresponsive adapter (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Correct nvmet buffer free race condition (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix nvmet target abort cmd matching (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix alloc context on oas lun creations (Dick Kennedy) [1717027]- [virt] kvm: fix guest initialization code mismerge (Marcelo Tosatti) [1726487] - [powerpc] powerpc/watchpoint: Restore NV GPRs while returning from exception (Steve Best) [1728557] - [fs] fs/proc/vmcore: Enable dumping of encrypted memory when SEV was active (Lianbo Jiang) [1646810] - [x86] x86/kexec: Set the C-bit in the identity map page table when SEV is active (Lianbo Jiang) [1646810] - [x86] x86/kexec: Do not map kexec area as decrypted when SEV is active (Lianbo Jiang) [1646810] - [mm] x86/mm: Do not use set_{pud, pmd}_safe() when splitting a large page (Lianbo Jiang) [1646810]- [net] sched: protect against stack overflow in TC act_mirred (Ivan Vecera) [1726399] - [net] sched: refactor reinsert action (Ivan Vecera) [1726399] - [net] mpls: Fix 6PE forwarding (Hangbin Liu) [1726533] - [net] make skb_dst_force return true when dst is refcounted (Florian Westphal) [1704809] - [net] ipv4: Fix off-by-one in route dump counter without netlink strict checking (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv6: fix suspicious RCU usage in rt6_dump_route() (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4: fix suspicious RCU usage in fib_dump_info_fnhe() (Stefano Brivio) [1725383 1725381 1574290] - [net] ip6_fib: Don't discard nodes with valid routing information in fib6_locate_1() (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv6: Dump route exceptions if requested (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv6/route: Change return code of rt6_dump_route() for partial node dumps (Stefano Brivio) [1725383 1725381 1574290] - [net] revert "net/ipv6: Bail early if user only wants cloned entries" (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4: Dump route exceptions if requested (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4/route: Allow NULL flowinfo in rt_fill_info() (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4/fib_frontend: Allow RTM_F_CLONED flag to be used for filtering (Stefano Brivio) [1725383 1725381 1574290] - [net] fib_frontend, ip6_fib: Select routes or exceptions dump from RTM_F_CLONED (Stefano Brivio) [1725383 1725381 1574290] - [tools] selftests: bpf: disable test_lwt_seg6local (Jiri Benc) [1716346] - [netdrv] ipvlan: Fix ipvlan device tso disabled while NETIF_F_IP_CSUM is set (Matteo Croce) [1725125] - [netdrv] ipvlan: disallow userns cap_net_admin to change global mode/flags (Matteo Croce) [1725124] - [net] netfilter: nft_fib: Fix existence check support (Phil Sutter) [1680578] - [net] ipset: Fix memory accounting for hash types on resize (Stefano Brivio) [1714111] - [tools] selftests: pmtu: Make list_flush_ipv6_exception test more demanding (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce list_flush_ipv4_exception test case (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce list_flush_ipv6_exception test case (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Add support for routing via nexthop objects (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Move route installs to a new function (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Move running of test into a new function (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Fix encapsulating device in pmtu_vti6_link_change_mtu (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Simplify cleanup and namespace names (Stefano Brivio) [1725384] - [tools] selftests: pmtu.sh: Remove quotes around commands in setup_xfrm (Stefano Brivio) [1725384] - [tools] selftests: Add debugging options to pmtu.sh (Stefano Brivio) [1725384] - [tools] selftests: pmtu: add explicit tests for PMTU exceptions cleanup (Stefano Brivio) [1725384] - [tools] selftests: pmtu: disable DAD in all namespaces (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce FoU and GUE PMTU exceptions tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce tests for IPv4/IPv6 over GENEVE over IPv4/IPv6 (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce tests for IPv4/IPv6 over VXLAN over IPv4/IPv6 (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Add optional traffic captures for single tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Allow selection of single tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: add basic IPv4 and IPv6 PMTU tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: extend MTU parsing helper to locked MTU (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce check_pmtu_value() (Stefano Brivio) [1725384] - [tools] selftests: pmtu: properly redirect stderr to /dev/null (Stefano Brivio) [1725384] - [tools] selftests: pmtu: detect correct binary to ping ipv6 addresses (Stefano Brivio) [1725384] - [net] ipv6: icmp: Updating pmtu for link local route (Guillaume Nault) [1721961] - [net] bridge: Mark FDB entries that were added by user as such (Ivan Vecera) [1724400] - [net] tipc: change to use register_pernet_device (Xin Long) [1719136] - [net] sched: cls_flower: fix infinite loop in fl_walk() (Davide Caratti) [1712739]- [rpmspec] redhat: fix vmlinux debuginfo on ppc64le (Jan Stancek) [1727638] - [powerpc] powerpc/rtas: retry when cpu offline races with suspend/migration (Steve Best) [1727051] - [kernel] arm64/crashkernel: Reduce crashkernel size to 448M by default (Bhupesh Sharma) [1564422]- [scsi] scsi: libiscsi: Fix race between iscsi_xmit_task and iscsi_complete_task (Chris Leech) [1718875] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.2 (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: add check for loss of ndlp when sending RRQ (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: correct rcu unlock issue in lpfc_nvme_info_show (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: resolve lockdep warnings (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Make lpfc_sli4_oas_verify static (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Fix a recently introduced compiler warning (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Fix missing wakeups on abort threads (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Change smp_processor_id() into raw_smp_processor_id() (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Remove unused functions (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Remove set-but-not-used variables (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Move trunk_errmsg[] from a header file into a .c file (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Annotate switch/case fall-through (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Fix indentation and balance braces (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Declare local functions static (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: avoid uninitialized variable warning (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: change snprintf to scnprintf for possible overflow (Dick Kennedy) [1714795] - [net] Bluetooth: hidp: fix buffer overflow (Gopal Tiwari) [1723654] {CVE-2019-11884} - [s390] virtio/s390: make airq summary indicators DMA (Philipp Rudo) [1651752] - [s390] virtio/s390: use DMA memory for ccw I/O and classic notifiers (Philipp Rudo) [1651752] - [s390] virtio/s390: add indirection to indicators access (Philipp Rudo) [1651752] - [s390] virtio/s390: use cacheline aligned airq bit vectors (Philipp Rudo) [1651752] - [s390] s390/airq: use DMA memory for adapter interrupts (Philipp Rudo) [1651752] - [s390] s390/cio: add basic protected virtualization support (Philipp Rudo) [1651752] - [s390] s390/cio: introduce DMA pools to cio (Philipp Rudo) [1651752] - [s390] s390/mm: force swiotlb for protected virtualization (Philipp Rudo) [1651752] - [s390] virtio/s390: DMA support for virtio-ccw (Philipp Rudo) [1651752] - [s390] virtio/s390: use vring_create_virtqueue (Philipp Rudo) [1651752] - [block] virtio-blk: Consider virtio_max_dma_size() for maximum segment size (Philipp Rudo) [1651752] - [virtio] virtio: Introduce virtio_max_dma_size() (Philipp Rudo) [1651752] - [kernel] dma: Introduce dma_max_mapping_size() (Philipp Rudo) [1651752] - [kernel] swiotlb: Add is_swiotlb_active() function (Philipp Rudo) [1651752] - [kernel] swiotlb: Introduce swiotlb_max_mapping_size() (Philipp Rudo) [1651752] - [mm] x86/mm: Create a workarea in the kernel for SME early encryption (Lianbo Jiang) [1564427] - [x86] x86/mm: Identify the end of the kernel area to be reserved (Lianbo Jiang) [1564427] - [x86] x86/kdump: Export the SME mask to vmcoreinfo (Lianbo Jiang) [1564427] - [fs] proc/vmcore: Fix i386 build error of missing copy_oldmem_page_encrypted() (Lianbo Jiang) [1564427] - [fs] kdump, proc/vmcore: Enable kdumping encrypted memory with SME enabled (Lianbo Jiang) [1564427] - [iommu] iommu/amd: Remap the IOMMU device table with the memory encryption mask for kdump (Lianbo Jiang) [1564427] - [kernel] kexec: Allocate decrypted control pages for kdump if SME is enabled (Lianbo Jiang) [1564427] - [mm] x86/ioremap: Add an ioremap_encrypted() helper (Lianbo Jiang) [1564427] - [documentation] Documentation: Add ARM64 to kernel-parameters.rst (Jeremy Linton) [1640855] - [arm64] arm64/speculation: Support 'mitigations=' cmdline option (Jeremy Linton) [1640855] - [arm64] arm64: ssbs: Don't treat CPUs with SSBS as unaffected by SSB (Jeremy Linton) [1640855] - [arm64] arm64: enable generic CPU vulnerabilites support (Jeremy Linton) [1640855] - [arm64] arm64: add sysfs vulnerability show for speculative store bypass (Jeremy Linton) [1640855] - [arm64] arm64: Always enable ssb vulnerability detection (Jeremy Linton) [1640855] - [arm64] arm64: add sysfs vulnerability show for spectre-v2 (Jeremy Linton) [1640855] - [arm64] arm64: Always enable spectre-v2 vulnerability detection (Jeremy Linton) [1640855] - [arm64] arm64: Use firmware to detect CPUs that are not affected by Spectre-v2 (Jeremy Linton) [1640855] - [arm64] arm64: Advertise mitigation of Spectre-v2, or lack thereof (Jeremy Linton) [1640855] - [arm64] arm64: add sysfs vulnerability show for meltdown (Jeremy Linton) [1640855] - [arm64] arm64: Add sysfs vulnerability show for spectre-v1 (Jeremy Linton) [1640855] - [arm64] arm64: Provide a command line to disable spectre_v2 mitigation (Jeremy Linton) [1640855] - [documentation] powerpc/fsl: Add FSL_PPC_BOOK3E as supported arch for nospectre_v2 boot arg (Jeremy Linton) [1640855] - [documentation] Documentation: Document arm64 kpti control (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Whitelist HiSilicon Taishan v110 CPUs (Jeremy Linton) [1640855] - [arm64] arm64: Add MIDR encoding for HiSilicon Taishan CPUs (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Whitelist Cortex-A CPUs that don't implement the CSV3 field (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Update arm64_kernel_use_ng_mappings() when forced on (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Avoid rewriting early page tables when KASLR is enabled (Jeremy Linton) [1640855] - [arm64] arm64: capabilities: Merge duplicate Cavium erratum entries (Jeremy Linton) [1640855] - [arm64] arm64: capabilities: Merge entries for ARM64_WORKAROUND_CLEAN_CACHE (Jeremy Linton) [1640855] - [arm64] arm64: Use a raw spinlock in __install_bp_hardening_cb() (Jeremy Linton) [1640855] - [arm64] arm64: KVM: Guests can skip __install_bp_hardening_cb()s HYP work (Jeremy Linton) [1640855] - [arm64] arm64: fix SSBS sanitization (Jeremy Linton) [1640855] - [arm64] arm64: don't zero DIT on signal return (Jeremy Linton) [1640855] - [kvm] KVM: arm64: Set SCTLR_EL2.DSSBS if SSBD is forcefully disabled and !vhe (Jeremy Linton) [1640855] - [arm64] arm64: ssbd: Add support for PSTATE.SSBS rather than trapping to EL3 (Jeremy Linton) [1640855] - [arm64] arm64: ssbd: Drop #ifdefs for PR_SPEC_STORE_BYPASS (Jeremy Linton) [1640855] - [arm64] arm64: cpufeature: Detect SSBS and advertise to userspace (Jeremy Linton) [1640855] - [arm64] arm64: move SCTLR_EL{1,2} assertions to (Jeremy Linton) [1640855]- [powerpc] powerpc/mm/64s/hash: Reallocate context ids on fork (Steve Best) [1723808] - [powerpc] powerpc/perf: Use cpumask_last() to determine the designated cpu for nest/core units. (Steve Best) [1725746] - [fs] iomap: fix page_done callback for short writes (Andreas Grunbacher) [1724361] - [fs] fs: fold __generic_write_end back into generic_write_end (Andreas Grunbacher) [1724361] - [fs] iomap: don't mark the inode dirty in iomap_write_end (Andreas Grunbacher) [1724361] - [fs] gfs2: Fix iomap write page reclaim deadlock (Andreas Grunbacher) [1724361] - [fs] iomap: Add a page_prepare callback (Andreas Grunbacher) [1724361] - [fs] iomap: Fix use-after-free error in page_done callback (Andreas Grunbacher) [1724361] - [fs] fs: Turn __generic_write_end into a void function (Andreas Grunbacher) [1724361] - [fs] iomap: Clean up __generic_write_end calling (Andreas Grunbacher) [1724361] - [kvm] KVM: PPC: Book3S HV: Clear pending decrementer exceptions on nested guest entry (Suraj Jitindar Singh) [1718822] - [kvm] KVM: PPC: Book3S HV: Signed extend decrementer value if not using large decrementer (Suraj Jitindar Singh) [1718822]- [hid] HID: chicony: add another quirk for PixArt mouse (Oleksandr Natalenko) [1724967] - [scsi] scsi: smartpqi: properly set both the DMA mask and the coherent DMA mask (Don Brace) [1712272] - [tools] perf beauty waitid options: Fix up prefix showing logic (Michael Petlan) [1715507] - [include] redhat: perf kABI-check failure fix (Michael Petlan) [1715507] - [tools] perf script python: Add Python3 support to tests/attr.py (Michael Petlan) [1715507] - [tools] perf trace: Support multiple "vfs_getname" probes (Michael Petlan) [1715507] - [tools] perf symbols: Filter out hidden symbols from labels (Michael Petlan) [1715507] - [tools] perf symbols: Add fallback definitions for GELF_ST_VISIBILITY() (Michael Petlan) [1715507] - [tools] perf clang: Do not use 'return std::move(something)' (Michael Petlan) [1715507] - [tools] perf tests evsel-tp-sched: Fix bitwise operator (Michael Petlan) [1715507] - [tools] perf script: Fix crash when processing recorded stat data (Michael Petlan) [1715507] - [tools] perf top: Fix wrong hottest instruction highlighted (Michael Petlan) [1715507] - [tools] perf tools: Handle TOPOLOGY headers with no CPU (Michael Petlan) [1715507] - [tools] perf python: Remove -fstack-clash-protection when building with some clang versions (Michael Petlan) [1715507] - [tools] perf script: Fix crash with printing mixed trace point and other events (Michael Petlan) [1715507] - [tools] perf ordered_events: Fix crash in ordered_events__free (Michael Petlan) [1715507] - [tools] tools headers powerpc: Remove unistd.h (Michael Petlan) [1715507] - [tools] perf powerpc: Rework syscall table generation (Michael Petlan) [1715507] - [tools] perf symbols: Add 'arch_cpu_idle' to the list of kernel idle symbols (Michael Petlan) [1715507] - [tools] perf beauty: Switch from using uapi/linux/fs.h to uapi/linux/mount.h (Michael Petlan) [1715507] - [tools] tools include uapi: Grab a copy of linux/mount.h (Michael Petlan) [1715507] - [tools] perf top: Lift restriction on using callchains without "sym" in --sort (Michael Petlan) [1715507] - [tools] tools lib traceevent: Remove tep_data_event_from_type() API (Michael Petlan) [1715507] - [tools] tools lib traceevent: Rename tep_is_file_bigendian() to tep_file_bigendian() (Michael Petlan) [1715507] - [tools] tools lib traceevent: Changed return logic of tep_register_event_handler() API (Michael Petlan) [1715507] - [tools] tools lib traceevent: Changed return logic of trace_seq_printf() and trace_seq_vprintf() APIs (Michael Petlan) [1715507] - [tools] tools lib traceevent: Rename struct cmdline to struct tep_cmdline (Michael Petlan) [1715507] - [tools] tools lib traceevent: Initialize host_bigendian at tep_handle allocation (Michael Petlan) [1715507] - [tools] tools lib traceevent: Introduce new libtracevent API: tep_override_comm() (Michael Petlan) [1715507] - [tools] perf tests: Add a test for the ARM 32-bitpage (Michael Petlan) [1715507] - [tools] perf tools: Make find_vdso_map() more modular (Michael Petlan) [1715507] - [tools] perf trace: Fix alignment forlines (Michael Petlan) [1715507] - [tools] perf trace: Fix ')' placement in "interrupted" syscall lines (Michael Petlan) [1715507] - [tools] perf test shell: Use a fallback to get the pathname in vfs_getname (Michael Petlan) [1715507] - [tools] perf python: Make sure the python binding output directory is in place (Michael Petlan) [1715507] - [tools] perf strbuf: Remove redundant va_end() in strbuf_addv() (Michael Petlan) [1715507] - [tools] perf annotate: Pass filename to objdump via execl (Michael Petlan) [1715507] - [tools] perf report: Fix wrong iteration count in --branch-history (Michael Petlan) [1715507] - [tools] tools headers uapi: Sync copy of asm-generic/unistd.h with the kernel sources (Michael Petlan) [1715507] - [tools] tools beauty: Make the prctl option table generator catch all PR_ options (Michael Petlan) [1715507] - [tools] perf stat: Fix endless wait for child process (Michael Petlan) [1715507] - [tools] perf session: Add comment for perf_session__register_idle_thread() (Michael Petlan) [1715507] - [tools] perf thread-stack: Fix thread stack processing for the idle task (Michael Petlan) [1715507] - [tools] perf thread-stack: Allocate an array of thread stacks (Michael Petlan) [1715507] - [tools] perf thread-stack: Factor out thread_stack__init() (Michael Petlan) [1715507] - [tools] perf thread-stack: Allow for a thread stack array (Michael Petlan) [1715507] - [tools] perf thread-stack: Avoid direct reference to the thread's stack (Michael Petlan) [1715507] - [tools] perf thread-stack: Tidy thread_stack__bottom() usage (Michael Petlan) [1715507] - [tools] perf thread-stack: Simplify some code in thread_stack__process() (Michael Petlan) [1715507] - [tools] perf c2c: Increase the HITM ratio limit for displayed cachelines (Michael Petlan) [1715507] - [tools] perf c2c: Change the default coalesce setup (Michael Petlan) [1715507] - [tools] perf trace beauty ioctl: Beautify USBDEVFS_ commands (Michael Petlan) [1715507] - [tools] perf trace beauty: Export function to get the files for a thread (Michael Petlan) [1715507] - [tools] perf trace: Wire up ioctl's USBDEBFS_ cmd table generator (Michael Petlan) [1715507] - [tools] perf beauty ioctl: Add generator for USBDEVFS_ ioctl commands (Michael Petlan) [1715507] - [tools] tools headers uapi: Grab a copy of usbdevice_fs.h (Michael Petlan) [1715507] - [tools] perf trace: Store the major number for a file when storing its pathname (Michael Petlan) [1715507] - [tools] perf trace: Move the files table resizing to outside set_pathname() (Michael Petlan) [1715507] - [tools] perf trace: Rename thread_thread->paths to thread_trace->files (Michael Petlan) [1715507] - [tools] perf script: Fix LBR skid dump problems in brstackinsn (Michael Petlan) [1715507] - [tools] perf trace: Use correct SECCOMP prefix spelling, "SECOMP_*" -> "SECCOMP_*" (Michael Petlan) [1715507] - [tools] perf trace: Do not hardcode the size of the tracepoint common_ fields (Michael Petlan) [1715507] - [tools] perf build: Don't unconditionally link the libbfd feature test to -liberty and -lz (Michael Petlan) [1715507] - [tools] perf beauty mmap: PROT_WRITE should come before PROT_EXEC (Michael Petlan) [1715507] - [tools] perf trace: Check if the raw_syscalls:sys_{enter, exit} are setup before setting tp filter (Michael Petlan) [1715507] - [tools] perf symbols: Relax checks on perf-PID.map ownership (Michael Petlan) [1715507] - [tools] perf trace: Wire up the fadvise 'advice' table generator (Michael Petlan) [1715507] - [tools] perf beauty: Add generator for fadvise64's 'advice' arg constants (Michael Petlan) [1715507] - [tools] tools headers uapi: Grab a copy of fadvise.h (Michael Petlan) [1715507] - [tools] perf beauty mmap: Print mmap's 'offset' arg in hexadecimal (Michael Petlan) [1715507] - [tools] perf beauty mmap: Print PROT_READ before PROT_EXEC to match strace output (Michael Petlan) [1715507] - [tools] perf trace beauty: Beautify arch_prctl()'s arguments (Michael Petlan) [1715507] - [tools] perf trace: When showing string prefixes show prefix + ??? for unknown entries (Michael Petlan) [1715507] - [tools] perf trace: Move strarrays to beauty.h for further reuse (Michael Petlan) [1715507] - [tools] perf beauty: Wire up the x86_arch prctl code table generator (Michael Petlan) [1715507] - [tools] perf beauty: Add a string table generator for x86's 'arch_prctl' codes (Michael Petlan) [1715507] - [tools] tools include arch: Grab a copy of x86's prctl.h (Michael Petlan) [1715507] - [tools] perf trace: Show NULL when syscall pointer args are 0 (Michael Petlan) [1715507] - [tools] perf trace: Enclose the errno strings with () (Michael Petlan) [1715507] - [tools] perf augmented_raw_syscalls: Copy 'access' arg as well (Michael Petlan) [1715507] - [tools] perf trace: Add alignment spaces after the closing parens (Michael Petlan) [1715507] - [tools] perf trace beauty: Print O_RDONLY when (flags & O_ACCMODE) == 0 (Michael Petlan) [1715507] - [tools] perf trace: Allow asking for not suppressing common string prefixes (Michael Petlan) [1715507] - [tools] perf trace: Add a prefix member to the strarray class (Michael Petlan) [1715507] - [tools] perf trace: Enclose strings with double quotes (Michael Petlan) [1715507] - [tools] perf trace: Make the alignment of the syscall args be configurable (Michael Petlan) [1715507] - [tools] perf trace: Allow suppressing the syscall argument names (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring if the syscall start timestamp should be printed (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring default for perf_event_attr.inherit (Michael Petlan) [1715507] - [tools] perf config: Show the configuration when no arguments are provided (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring if the syscall duration should be printed (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring if zeroed syscall args should be printed (Michael Petlan) [1715507] - [tools] perf trace: Allow specifying a set of events to add in perfconfig (Michael Petlan) [1715507] - [tools] perf augmented_raw_syscalls: Do not include stdio.h (Michael Petlan) [1715507] - [tools] perf cs-etm: Generate branch sample for exception packet (Michael Petlan) [1715507] - [tools] perf cs-etm: Treat EO_TRACE element as trace discontinuity (Michael Petlan) [1715507] - [tools] perf cs-etm: Treat NO_SYNC element as trace discontinuity (Michael Petlan) [1715507] - [tools] perf cs-etm: Rename CS_ETM_TRACE_ON to CS_ETM_DISCONTINUITY (Michael Petlan) [1715507] - [tools] perf cs-etm: Refactor enumeration cs_etm_sample_type (Michael Petlan) [1715507] - [tools] perf cs-etm: Remove unused 'trace_on' in cs_etm_decoder (Michael Petlan) [1715507] - [tools] perf cs-etm: Avoid stale branch samples when flush packet (Michael Petlan) [1715507] - [tools] perf cs-etm: Correct packets swapping in cs_etm__flush() (Michael Petlan) [1715507] - [tools] perf trace: Switch to using a struct for the aumented_raw_syscalls syscalls map values (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Switch to using a struct for the syscalls map values (Michael Petlan) [1715507] - [tools] perf bpf: Move perf_event_output() from stdio.h to bpf.h (Michael Petlan) [1715507] - [tools] perf trace: Implement syscall filtering in augmented_syscalls (Michael Petlan) [1715507] - [tools] perf trace: Avoid using raw_syscalls in duplicity with eBPF augmentation (Michael Petlan) [1715507] - [tools] perf trace: Rename set_ev_qualifier_filter to clarify its a tracepoint filter (Michael Petlan) [1715507] - [tools] perf tools: Cast off_t to s64 to avoid warning on bionic libc (Michael Petlan) [1715507] - [tools] perf tools: Add missing open_memstream() prototype for systems lacking it (Michael Petlan) [1715507] - [tools] perf header: Fix up argument to ctime() (Michael Petlan) [1715507] - [tools] perf tools: Add missing sigqueue() prototype for systems lacking it (Michael Petlan) [1715507] - [tools] tools lib subcmd: Don't add the kernel sources to the include path (Michael Petlan) [1715507] - [tools] perf trace beauty: renameat's newdirfd may also be AT_FDCWD (Michael Petlan) [1715507] - [tools] perf trace: Beautify renameat2's flags argument (Michael Petlan) [1715507] - [tools] perf beauty: Wire up the renameat flags table generator to the Makefile (Michael Petlan) [1715507] - [tools] perf beauty: Add a string table generator for renameat2's flags constants (Michael Petlan) [1715507] - [tools] perf trace beauty: Beautify renameat2's fd arg wrt AT_FDCWD (Michael Petlan) [1715507] - [tools] perf trace: Allow selecting use the use of the ordered_events code (Michael Petlan) [1715507] - [tools] perf trace: Rename delivery functions to ease making ordered_events selectable (Michael Petlan) [1715507] - [tools] tools lib traceevent: Fix processing of dereferenced args in bprintk events (Michael Petlan) [1715507] - [tools] perf stat: Avoid segfaults caused by negated options (Michael Petlan) [1715507] - [tools] perf auxtrace: Alter addr_filter__entire_dso() to work if there are no symbols (Michael Petlan) [1715507] - [tools] perf dso: Export data_file_size() method there are no symbols (Michael Petlan) [1715507] - [tools] perf trace: Add ordered processing (Michael Petlan) [1715507] - [tools] perf ordered_events: Add first_time() method (Michael Petlan) [1715507] - [tools] perf trace: Move event delivery to a new deliver_event() function (Michael Petlan) [1715507] - [tools] perf ordered_events: Add ordered_events__flush_time interface (Michael Petlan) [1715507] - [tools] perf annotate: Introduce basic support for ARC (Michael Petlan) [1715507] - [tools] perf config: Modify size factor of snprintf (Michael Petlan) [1715507] - [tools] perf record: Fix memory leak on AIO objects deallocation (Michael Petlan) [1715507] - [tools] perf vendor events intel: Fix Load_Miss_Real_Latency on SKL/SKX (Michael Petlan) [1715507] - [tools] perf parse-events: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf probe: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf ui helpline: Use strlcpy() as a shorter form of strncpy() + explicit set nul (Michael Petlan) [1715507] - [tools] perf svghelper: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf help: Remove needless use of strncpy() (Michael Petlan) [1715507] - [tools] perf header: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf header: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf dso: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf cs-etm: Add support for PTMv1.1 decoding (Michael Petlan) [1715507] - [tools] perf cs-etm: Add support for ETMv3 trace decoding (Michael Petlan) [1715507] - [tools] perf cs-etm: Add configuration for ETMv3 trace protocol (Michael Petlan) [1715507] - [tools] perf top: Move perf_top__reset_sample_counters() to after counts display (Michael Petlan) [1715507] - [tools] perf top: Display slow reader warning when droping samples (Michael Petlan) [1715507] - [tools] perf top: Save and display the drop count stats (Michael Petlan) [1715507] - [tools] perf top: Drop samples which are behind the refresh rate (Michael Petlan) [1715507] - [tools] perf top: Set the 'session_done' volatile variable when exiting (Michael Petlan) [1715507] - [tools] perf top: Use cond variable instead of a lock (Michael Petlan) [1715507] - [tools] perf top: Add processing thread (Michael Petlan) [1715507] - [tools] perf top: Move lost events warning to helpline (Michael Petlan) [1715507] - [tools] perf top: Save and display the lost count stats (Michael Petlan) [1715507] - [tools] perf ordered_events: Add private data member (Michael Petlan) [1715507] - [tools] perf ordered_events: Rework show_progress for __ordered_events__flush (Michael Petlan) [1715507] - [tools] perf tools: Support 'srccode' output (Michael Petlan) [1715507] - [tools] perf trace: We need to consider "nr" if "__syscall_nr" is not there (Michael Petlan) [1715507] - [tools] perf tools: Allow specifying proc-map-timeout in config file (Michael Petlan) [1715507] - [tools] tools lib subcmd: Fix a few source code comment typos (Michael Petlan) [1715507] - [tools] perf tools: Fix diverse comment typos (Michael Petlan) [1715507] - [tools] perf bpf-loader: Fix debugging message typo (Michael Petlan) [1715507] - [tools] perf tools Documentation: Fix diverse typos (Michael Petlan) [1715507] - [tools] tools lib traceevent: Fix diverse typos in comments (Michael Petlan) [1715507] - [tools] perf vendor events intel: Fix diverse typos (Michael Petlan) [1715507] - [tools] perf tests ARM: Disable breakpoint tests 32-bit (Michael Petlan) [1715507] - [tools] perf cs-etm: Support for ARM A32/T32 instruction sets in CoreSight trace (Michael Petlan) [1715507] - [tools] perf beauty mmap_flags: Fixed syntax error Fixed missing ']' error (Michael Petlan) [1715507] - [tools] tools lib traceevent: traceevent API cleanup (Michael Petlan) [1715507] - [tools] perf tools: traceevent API cleanup, remove __tep_data2host*() (Michael Petlan) [1715507] - [tools] tools lib traceevent: Rename tep_free_format() to tep_free_event() (Michael Petlan) [1715507] - [tools] tools lib traceevent, perf tools: Rename 'struct tep_event_format' to 'struct tep_event' (Michael Petlan) [1715507] - [tools] tools lib traceevent: Install trace-seq.h API header file (Michael Petlan) [1715507] - [tools] tools lib traceevent: Added support for pkg-config (Michael Petlan) [1715507] - [tools] tools lib traceevent: Implement new API tep_get_ref() (Michael Petlan) [1715507] - [tools] perf report: Documentation average IPC and IPC coverage (Michael Petlan) [1715507] - [tools] perf report: Display average IPC and IPC coverage per symbol (Michael Petlan) [1715507] - [tools] perf annotate: Create a annotate2 flag in struct symbol (Michael Petlan) [1715507] - [tools] perf annotate: Compute average IPC and IPC coverage per symbol (Michael Petlan) [1715507] - [tools] tools lib traceevent: Add sanity check to is_timestamp_in_us() (Michael Petlan) [1715507] - [tools] perf beauty mmap_flags: Check if the arch has a mmap.h file (Michael Petlan) [1715507] - [tools] perf record: Extend trace writing to multi AIO (Michael Petlan) [1715507] - [tools] perf record: Enable asynchronous trace writing (Michael Petlan) [1715507] - [tools] perf mmap: Map data buffer for preserving collected data (Michael Petlan) [1715507] - [tools] tools build feature: Check if libaio is available (Michael Petlan) [1715507] - [tools] perf intel-pt: Fix error with config term "pt=0" (Michael Petlan) [1715507] - [tools] perf top: Allow passing a kallsyms file (Michael Petlan) [1715507] - [tools] perf bpf: Use ERR_CAST instead of ERR_PTR(PTR_ERR()) (Michael Petlan) [1715507] - [tools] tools include: Adopt ERR_CAST() from the kernel err.h header (Michael Petlan) [1715507] - [tools] perf tests record: Allow for 'sleep' being 'coreutils' (Michael Petlan) [1715507] - [tools] tools lib traceevent: Fix compile warnings in tools/lib/traceevent/event-parse.c (Michael Petlan) [1715507] - [tools] perf script: Use fallbacks for branch stacks (Michael Petlan) [1715507] - [tools] perf tools: Use fallback for sample_addr_correlates_sym() cases (Michael Petlan) [1715507] - [tools] perf thread: Add fallback functions for cases where cpumode is insufficient (Michael Petlan) [1715507] - [tools] perf machine: Record if a arch has a single user/kernel address space (Michael Petlan) [1715507] - [tools] perf env: Also consider env->arch == NULL as local operation (Michael Petlan) [1715507] - [tools] perf map: Remove extra indirection from map__find() (Michael Petlan) [1715507] - [tools] perf stat: Fix CSV mode column output for non-cgroup events (Michael Petlan) [1715507] - [tools] perf stat: Fix shadow stats for clock events (Michael Petlan) [1715507] - [tools] perf build: Give better hint about devel package for libssl (Michael Petlan) [1715507] - [tools] perf pmu: Move *_cpuid_str() weak functions to header.c (Michael Petlan) [1715507] - [tools] perf symbols: Fix slowness due to -ffunction-section (Michael Petlan) [1715507] - [tools] perf jvmti: Separate jvmti cmlr check (Michael Petlan) [1715507] - [tools] perf vendor events: Add JSON metrics for Cascadelake server (Michael Petlan) [1715507] - [tools] perf vendor events: Add stepping in CPUID string for x86 (Michael Petlan) [1715507] - [tools] perf stat: Use perf_evsel__is_clocki() for clock events (Michael Petlan) [1715507] - [tools] perf pmu: Suppress potential format-truncation warning (Michael Petlan) [1715507] - [tools] perf tools: Add Hygon Dhyana support (Michael Petlan) [1715507] - [tools] perf bench: Add epoll_ctl(2) benchmark (Michael Petlan) [1715507] - [tools] perf bench: Add epoll parallel epoll_wait benchmark (Michael Petlan) [1715507] - [tools] tools build feature: Check if eventfd() is available (Michael Petlan) [1715507] - [tools] perf bench: Move HAVE_PTHREAD_ATTR_SETAFFINITY_NP into bench.h (Michael Petlan) [1715507] - [tools] perf script: Share code and output format for uregs and iregs output (Michael Petlan) [1715507] - [tools] perf bpf: Reduce the hardcoded .max_entries for pid_maps (Michael Petlan) [1715507] - [tools] perf script: Add newline after uregs output (Michael Petlan) [1715507] - [tools] Revert "perf augmented_syscalls: Drop 'write', 'poll' for testing without self pid filter" (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Remove example hardcoded set of filtered pids (Michael Petlan) [1715507] - [tools] perf trace: Fill in BPF "filtered_pids" map when present (Michael Petlan) [1715507] - [tools] perf trace: See if there is a map named "filtered_pids" (Michael Petlan) [1715507] - [tools] perf trace: Add "_from_option" suffix to trace__set_filter() (Michael Petlan) [1715507] - [tools] perf evlist: Rename perf_evlist__set_filter* to perf_evlist__set_tp_filter* (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Use pid_filter (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Drop 'write', 'poll' for testing without self pid filter (Michael Petlan) [1715507] - [tools] perf bpf: Add simple pid_filter class accessible to BPF proggies (Michael Petlan) [1715507] - [tools] perf bpf: Add defines for map insertion/lookup (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Remove needless linux/socket.h include (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Filter on a hard coded pid (Michael Petlan) [1715507] - [tools] perf bpf: Add unistd.h to the headers accessible to bpf proggies (Michael Petlan) [1715507] - [kernel] perf/core: Fix impossible ring-buffer sizes warning (Michael Petlan) [1715507] - [x86] perf/x86: Add check_period PMU callback (Michael Petlan) [1715507] - [kernel] perf/core: Don't WARN() for impossible ring-buffer sizes (Michael Petlan) [1715507] - [x86] perf/x86/intel/uncore: Add Node ID mask (Michael Petlan) [1715507] - [kernel] perf core: Fix perf_proc_update_handler() bug (Michael Petlan) [1715507] - [tools] powerpc/perf: Update perf_regs structure to include MMCRA (Michael Petlan) [1715507] - [powerpc] powerpc/perf: Update perf_regs structure to include SIER (Michael Petlan) [1715507] - [include] perf/core: Declare the __percpu attribute on non-deref types (Michael Petlan) [1715507] - [kernel] perf: Fix typos in comments (Michael Petlan) [1715507] - [arm64] arm64: perf: Add support for Armv8.1 PMCEID register format (Michael Petlan) [1715507]- [fs] xfs: abort unaligned nowait directio early (Brian Foster) [1690458] - [fs] xfs: serialize unaligned dio writes against all other dio writes (Brian Foster) [1690458] - [sound] ALSA: hda/hdmi: consider eld_valid also in sync_eld_via_acomp() (Jaroslav Kysela) [1708555] - [fs] Fix error code in nfs_lookup_verify_inode() (Scott Mayhew) [1722315] - [md] dm table: don't copy from a NULL pointer in realloc_argv() (Jerome Marchand) [1571628] - [net] netfilter: ipset: replace a strncpy() with strscpy() (Jerome Marchand) [1571628] - [lib] lib/ubsan.c: don't mark __ubsan_handle_builtin_unreachable as noreturn (Jerome Marchand) [1571628] - [include] netfilter: avoid erronous array bounds warning (Jerome Marchand) [1571628] - [x86] x86/mm/KASLR: Compute the size of the vmemmap section properly (Baoquan He) [1669076] - [security] selinux: fix empty write to keycreate file (Ondrej Mosnacek) [1719067] - [netdrv] net: aquantia: fix vlans not working over bridged network (Igor Russkikh) [1718716] - [s390] s390/jump_label: replace stop_machine with smp_call_function (Philipp Rudo) [1722161] - [s390] s390/dumpstack: print psw mask and address again (Philipp Rudo) [1722157] - [s390] s390/crypto: fix gcm-aes-s390 selftest failures (Philipp Rudo) [1722156] - [wireless] Backport mt76 drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1709867 1709828] - [wireless] Add rtw88 driver from linux-5.2-rc5 (Stanislaw Gruszka) [1487086 1709828] - [wireless] Backport mt7601u driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport mwifiex driver from linux-5.2-rc2 (Stanislaw Gruszka) [1709828] - [wireless] Backport rtl8xxxu driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport rtlwifi drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport ath9k driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport ath10k driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport brcm80211 drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport iwlwifi drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1696052 1662020 1662015 1650016 1650015 1650014 1650013 1622445 1494008 1494001 1709828] - [net] Backport mac80211 from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [net] Backport core wireless code from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [include] netlink: add nl_set_extack_cookie_u64() (Stanislaw Gruszka) [1709828] - [netdrv] r8152: Fix an error on RTL8153-BD MAC Address Passthrough support (Torez Smith) [1683883 1683882] - [netdrv] r8152: Add support for MAC address pass through on RTL8153-BD (Torez Smith) [1683883 1683882] - [netdrv] nfp: abm: fix spelling mistake "offseting" -> "offsetting" (Pablo Cascon) [1713258] - [netdrv] nfp: flower: remove vlan CFI bit from push vlan action (Pablo Cascon) [1713258] - [netdrv] nfp: flower: replace CFI with vlan present (Pablo Cascon) [1713258] - [netdrv] nfp: flower: remove double new line (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: fix ALU32 high bits clearance bug (Pablo Cascon) [1713258] - [netdrv] bpf: do not pass netdev to translate() and prepare() offload callbacks (Pablo Cascon) [1713258] - [netdrv] bpf: pass prog instead of env to bpf_prog_offload_verifier_prep() (Pablo Cascon) [1713258] - [netdrv] bpf: pass destroy() as a callback and remove its ndo_bpf subcommand (Pablo Cascon) [1713258] - [netdrv] bpf: pass translate() as a callback and remove its ndo_bpf subcommand (Pablo Cascon) [1713258] - [netdrv] bpf: call verifier_prep from its callback in struct bpf_offload_dev (Pablo Cascon) [1713258] - [netdrv] bpf: pass a struct with offload callbacks to bpf_offload_dev_create() (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: move nfp_bpf_analyzer_ops from verifier.c to offload.c (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: relax prog rejection through max_pkt_offset (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: double check vNIC capabilities after object sharing (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: optimise save/restore for R6~R9 based on register usage (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: fix return address from register-saving subroutine to callee (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: update fixup function for BPF-to-BPF calls support (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: account for additional stack usage when checking stack limit (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: add main logics for BPF-to-BPF calls support in nfp driver (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: copy eBPF subprograms information from kernel verifier (Pablo Cascon) [1713258] - [netdrv] bpf: add verifier callback to get stack usage info for offloaded progs (Pablo Cascon) [1713258]- [rpmspec] Enable kernel signing for ppc64le (Gustavo Duarte) [1504169] - [nvme] nvme: fix memory leak for power latency tolerance (David Milburn) [1724793] - [rpmspec] redhat: fix missing files for mlxsw specific self-tests (Ivan Vecera) [1724735] - [rpmspec] redhat: Package the signing key for s390 (Philipp Rudo) [1714194] - [rpmspec] redhat: Enable kernel signing for s390 (Philipp Rudo) [1714194] - [rpmspec] redhat: Rename secure boot sources (Philipp Rudo) [1714194] - [powerpc] powerpc: fix max_zone_pfns initialization (Laurent Vivier) [1706560] - [crypto] crypto: dh - update test for public key verification (Herbert Xu) [1722692] - [hid] HID: i2c-hid: Don't reset device upon system resume (Perry Yuan) [1715385] - [rpmspec] correct the ghost initramfs attributes (Rafael Aquini) [1678881] - [s390] s390/mm: fix address space detection in exception handling (Philipp Rudo) [1722160] - [s390] s390/zcrypt: Fix wrong dispatching for control domain CPRBs (Philipp Rudo) [1722158] - [virt] kvm: arm/arm64: Fix emulated ptimer irq injection (Andrew Jones) [1716383] - [x86] kvm/nested: mark as TechPreview on first VM creation (Vitaly Kuznetsov) [1723447] - [powerpc] bpf: powerpc64: add JIT support for bpf line info (Yauheni Kaliuta) [1722423] - [fs] cifs: add spinlock for the openFileList to cifsInodeInfo (Leif Sahlberg) [1712197] - [fs] cifs: fix GlobalMid_Lock bug in cifs_reconnect (Leif Sahlberg) [1716743] - [mm] powerpc/numa: document topology_updates_enabled, disable by default (Desnes Augusto Nunes do Rosario) [1705465] - [mm] powerpc/numa: improve control of topology updates (Desnes Augusto Nunes do Rosario) [1705465] - [kernel] bpf: decouple the lifetime of cgroup_bpf from cgroup itself (Jiri Olsa) [1656432] - [netdrv] USB: hso: Fix OOB memory access in hso_probe/hso_get_config_data (Torez Smith) [1689308 1666662] {CVE-2018-19985} - [usb] USB: check usb_get_extra_descriptor for proper size (Torez Smith) [1689308 1666662] {CVE-2018-20169} - [kvm] KVM: PPC: Book3S HV: Restore SPRG3 in kvmhv_p9_guest_entry() (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Fix lockdep warning when entering guest on POWER9 (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Fix page offset when clearing ESB pages (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Take the srcu read lock when accessing memslots (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Do not clear IRQ data of passthrough interrupts (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Introduce a new mutex for the XIVE device (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Fix the enforced limit on the vCPU identifier (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Do not test the EQ flag validity when resetting (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Clear file mapping when device is released (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Don't take kvm->lock around kvm_for_each_vcpu (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S: Use new mutex to synchronize access to rtas token list (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Use new mutex to synchronize MMU setup (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Avoid touching arch.mmu_ready in XIVE release functions (David Gibson) [1719524] - [mm] mm, oom: don't kill global init via memory.oom.group (Waiman Long) [1711604] - [mm] mm, oom: remove 'prefer children over parent' heuristic (Waiman Long) [1711604] - [mm] mm, oom: fix use-after-free in oom_kill_process (Waiman Long) [1711604] - [kernel] fork, memcg: fix crash in free_thread_stack on memcg charge fail (Waiman Long) [1711604] - [mm] memcg: localize memcg_kmem_enabled() check (Waiman Long) [1711604] - [mm] memcg, oom: notify on oom killer invocation from the charge path (Waiman Long) [1711604] - [mm] mm: handle no memcg case in memcg_kmem_charge() properly (Waiman Long) [1711604] - [kernel] mm: rework memcg kernel stack accounting (Waiman Long) [1711604] - [mm] mm/memcontrol.c: convert mem_cgroup_id::ref to refcount_t type (Waiman Long) [1711604] - [mm] memcg: remove memcg_kmem_skip_account (Waiman Long) [1711604] - [mm] mm/memcontrol.c: fix memory.stat item ordering (Waiman Long) [1711604] - [mm] mm: drain memcg stocks on css offlining (Waiman Long) [1711604] - [mm] mm: memcontrol: print proper OOM header when no eligible victim left (Waiman Long) [1711604] - [mm] mm, oom: introduce memory.oom.group (Waiman Long) [1711604] - [mm] mm, oom: refactor oom_kill_process() (Waiman Long) [1711604] - [mm] memcg: reduce memcg tree traversals for stats collection (Waiman Long) [1711604] - [mm] mm/vmscan.c: clear shrinker bit if there are no objects related to memcg (Waiman Long) [1711604] - [mm] mm: add SHRINK_EMPTY shrinker methods return value (Waiman Long) [1711604] - [mm] mm/vmscan.c: generalize shrink_slab() calls in shrink_node() (Waiman Long) [1711604] - [mm] mm/vmscan.c: iterate only over charged shrinkers during memcg shrink_slab() (Waiman Long) [1711604] - [mm] mm/list_lru.c: set bit in memcg shrinker bitmap on first list_lru item appearance (Waiman Long) [1711604] - [mm] mm/memcontrol.c: export mem_cgroup_is_root() (Waiman Long) [1711604] - [mm] mm/list_lru.c: pass lru argument to memcg_drain_list_lru_node() (Waiman Long) [1711604] - [mm] mm/list_lru: pass dst_memcg argument to memcg_drain_list_lru_node() (Waiman Long) [1711604] - [mm] mm/list_lru.c: add memcg argument to list_lru_from_kmem() (Waiman Long) [1711604] - [mm] fs: propagate shrinker::id to list_lru (Waiman Long) [1711604] - [fs] fs: Don't need to put list_lru into its own cacheline (Waiman Long) [1711604] - [fs] fs/super.c: refactor alloc_super() (Waiman Long) [1711604] - [mm] mm/workingset.c: refactor workingset_init() (Waiman Long) [1711604] - [mm] mm, memcg: assign memcg-aware shrinkers bitmap to memcg (Waiman Long) [1711604] - [mm] mm/memcontrol.c: move up for_each_mem_cgroup{, _tree} defines (Waiman Long) [1711604] - [mm] mm: assign id to every memcg-aware shrinker (Waiman Long) [1711604] - [mm] mm: introduce CONFIG_MEMCG_KMEM as combination of CONFIG_MEMCG && !CONFIG_SLOB (Waiman Long) [1711604] - [mm] mm/list_lru.c: combine code under the same define (Waiman Long) [1711604] - [mm] memcg, oom: move out_of_memory back to the charge path (Waiman Long) [1711604] - [fs] fs, mm: account buffer_head to kmemcg (Waiman Long) [1711604] - [fs] fs: fsnotify: account fsnotify metadata to kmemcg (Waiman Long) [1711604] - [include] mm: introduce mem_cgroup_put() helper (Waiman Long) [1711604] - [net] tcp: refine memory limit test in tcp_fragment() (Florian Westphal) [1724584] - [net] tcp: enforce tcp_min_snd_mss in tcp_mtu_probing() (Florian Westphal) [1719923] {CVE-2019-11479} - [net] tcp: add tcp_min_snd_mss sysctl (Florian Westphal) [1719923] {CVE-2019-11479} - [net] tipc: pass tunnel dev as NULL to udp_tunnel(6)_xmit_skb (Xin Long) [1722751] - [include] ip6_tunnel: allow not to count pkts on tstats by passing dev as NULL (Xin Long) [1722751] - [net] ip_tunnel: allow not to count pkts on tstats by setting skb's dev to NULL (Xin Long) [1722751] - [net] netfilter: ipv6: nf_defrag: accept duplicate fragments again (Guillaume Nault) [1717106] - [net] netfilter: ipv6: nf_defrag: fix leakage of unqueued fragments (Guillaume Nault) [1717106] - [net] ethtool: fix potential userspace buffer overflow (Paolo Abeni) [1718393] - [net] net-gro: fix use-after-free read in napi_gro_frags() (Paolo Abeni) [1718393] - [net] ethtool: Check for vlan etype or vlan tci when parsing flow_rule (Paolo Abeni) [1718393] - [include] test nouarg before dereferencing zerocopy pointers (Paolo Abeni) [1718393] - [net] avoid weird emergency message (Paolo Abeni) [1718393] - [net] net-gro: Fix GRO flush when receiving a GSO packet. (Paolo Abeni) [1718393] - [net] sock_diag: fix autoloading of the raw_diag module (Paolo Abeni) [1718393] - [net] make skb_partial_csum_set() more robust against overflows (Paolo Abeni) [1718393] - [net] packets: Always register packet sk in the same order (Paolo Abeni) [1718393] - [net] net-sysfs: call dev_hold if kobject_init_and_add success (Paolo Abeni) [1718393] - [net] gro_cells: make sure device is up in gro_cells_receive() (Paolo Abeni) [1718393] - [net] net-sysfs: Fix mem leak in netdev_register_kobject (Paolo Abeni) [1718393] - [include] avoid false positives in untrusted gso validation (Paolo Abeni) [1718393] - [include] net: validate untrusted gso packets without csum offload (Paolo Abeni) [1718393] - [net] Do not allocate page fragments that are not skb aligned (Paolo Abeni) [1718393] - [net] set default network namespace in init_dummy_netdev() (Paolo Abeni) [1718393] - [net] Fix usage of pskb_trim_rcsum (Paolo Abeni) [1718393] - [net] call sk_dst_reset when set SO_DONTROUTE (Paolo Abeni) [1718393] - [net] net, skbuff: do not prefer skb allocation fails early (Paolo Abeni) [1718393] - [net] ethtool: check the return value of get_regs_len (Paolo Abeni) [1718393] - [net] packet: copy user buffers before orphan or clone (Paolo Abeni) [1718393] - [net] don't keep lonely packets forever in the gro hash (Paolo Abeni) [1718393] - [net] net-gro: reset skb->pkt_type in napi_reuse_skb() (Paolo Abeni) [1718393] - [net] flow_dissector: do not dissect l4 ports for fragments (Paolo Abeni) [1718393] - [net] net-ethtool: ETHTOOL_GUFO did not and should not require CAP_NET_ADMIN (Paolo Abeni) [1718393] - [net] tipc: fix modprobe tipc failed after switch order of device registration (Jon Maloy) [1718064] - [net] tipc: switch order of device registration to fix a crash (Jon Maloy) [1718064] - [net] tipc: fix hanging clients using poll with EPOLLOUT flag (Jon Maloy) [1718064] - [net] tipc: fix missing Name entries due to half-failover (Jon Maloy) [1718064] - [net] tipc: remove rcu_read_unlock() left in tipc_udp_recv() (Jon Maloy) [1718064] - [net] tipc: tipc_udp_recv() cleanup vs rcu verbs (Jon Maloy) [1718064] - [net] tipc: introduce new socket option TIPC_SOCK_RECVQ_USED (Jon Maloy) [1718064] - [net] tipc: set sysctl_tipc_rmem and named_timeout right range (Jon Maloy) [1718064] - [net] tipc: fix link established but not in session (Jon Maloy) [1718064] - [net] tipc: use standard write_lock & unlock functions when creating node (Jon Maloy) [1718064] - [net] tipc: missing entries in name table of publications (Jon Maloy) [1718064] - [net] tipc: adapt link failover for new Gap-ACK algorithm (Jon Maloy) [1718064] - [net] tipc: reduce duplicate packets for unicast traffic (Jon Maloy) [1718064] - [net] tipc: improve TIPC throughput by Gap ACK blocks (Jon Maloy) [1718064] - [net] tipc: add NULL pointer check (Jon Maloy) [1718064] - [net] tipc: fix return value check in tipc_mcast_send_sync() (Jon Maloy) [1718064] - [net] tipc: fix a null pointer deref (Jon Maloy) [1718064] - [net] tipc: fix use-after-free in tipc_sk_filter_rcv (Jon Maloy) [1718064] - [net] tipc: smooth change between replicast and broadcast (Jon Maloy) [1718064] - [net] tipc: introduce new capability flag for cluster (Jon Maloy) [1718064] - [net] tipc: support broadcast/replicast configurable for bc-link (Jon Maloy) [1718064] - [net] sched: avoid double free on matchall reoffload (Ivan Vecera) [1688236 1687456] - [net] taprio: add null check on sched_nest to avoid potential null pointer dereference (Ivan Vecera) [1688236 1687456] - [net] nfp: flower: remove unused index from nfp_fl_pedit() (Ivan Vecera) [1688236 1687456] - [net] mlx5e: Fix calling wrong function to get inner vlan key and mask (Ivan Vecera) [1688236 1687456] - [net] flow_offload: support CVLAN match (Ivan Vecera) [1688236 1687456] - [net] nfp: flower: fix masks for tcp and ip flags fields (Ivan Vecera) [1688236 1687456] - [net] sched: use the hardware intermediate representation for matchall (Ivan Vecera) [1688236 1687456] - [net] sched: add sample action to the hardware intermediate representation (Ivan Vecera) [1688236 1687456] - [net] cls_cgroup: avoid panic when receiving a packet before filter set (Ivan Vecera) [1688236 1687456] - [net] cls_matchall: avoid panic when receiving a packet before filter set (Ivan Vecera) [1688236 1687456] - [net] add a generic tracepoint for TX queue timeout (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: use struct_size() helper (Ivan Vecera) [1688236 1687456] - [net] taprio: Add support for cycle-time-extension (Ivan Vecera) [1688236 1687456] - [net] taprio: Add support for setting the cycle-time manually (Ivan Vecera) [1688236 1687456] - [net] taprio: Add support adding an admin schedule (Ivan Vecera) [1688236 1687456] - [net] taprio: Fix potencial use of invalid memory during dequeue() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Fix taprio_dequeue() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Fix taprio_peek() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Remove should_restart_cycle() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Refactor taprio_get_start_time() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Remove pointless variable assigment (Ivan Vecera) [1688236 1687456] - [net] tc_act: drop include of module.h from tc_ife.h (Ivan Vecera) [1688236 1687456] - [net] fib: drop include of module.h from fib_notifier.h (Ivan Vecera) [1688236 1687456] - [net] ife: drop include of module.h from net/ife.h (Ivan Vecera) [1688236 1687456] - [net] psample: drop include of module.h from psample.h (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: fix build without 64bit div (Ivan Vecera) [1688236 1687456] - [net] revert: "net: sched: put back q.qlen into a single location" (Ivan Vecera) [1688236 1687456] - [net] sched: when clearing NOLOCK, clear TCQ_F_CPUSTATS, too (Ivan Vecera) [1688236 1687456] - [net] sched: always do stats accounting according to TCQ_F_CPUSTATS (Ivan Vecera) [1688236 1687456] - [net] sched: prefer qdisc_is_empty() over direct qlen access (Ivan Vecera) [1688236 1687456] - [net] caif: avoid using qdisc_qlen() (Ivan Vecera) [1688236 1687456] - [net] sched: cbs: fix port_rate miscalculation (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: fix picos_per_byte miscalculation (Ivan Vecera) [1688236 1687456] - [net] selftests: add a tc matchall test case (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Make sure we can write the IP header before changing DSCP bits (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Use tc_skb_protocol() helper for getting packet protocol (Ivan Vecera) [1688236 1687456] - [net] sched: act_sample: fix divide by zero in the traffic path (Ivan Vecera) [1688236 1687456] - [net] sched: don't set tunnel for decap action (Ivan Vecera) [1688236 1687456] - [net] sched: introduce and use qdisc tree flush/purge helpers (Ivan Vecera) [1688236 1687456] - [net] sched: introduce and use qstats read helpers (Ivan Vecera) [1688236 1687456] - [net] sched: fix ->get helper of the matchall cls (Ivan Vecera) [1688236 1687456] - [net] sched: Kconfig: update reference link for PIE (Ivan Vecera) [1688236 1687456] - [net] dev: introduce support for sch BYPASS for lockless qdisc (Ivan Vecera) [1688236 1687456] - [net] sched: add empty status flag for NOLOCK qdisc (Ivan Vecera) [1688236 1687456] - [net] sched: fix cleanup NULL pointer exception in act_mirr (Ivan Vecera) [1688236 1687456] - [net] sched: let actions use RCU to access 'goto_chain' (Ivan Vecera) [1688236 1687456] - [net] sched: don't dereference a->goto_chain to read the chain index (Ivan Vecera) [1688236 1687456] - [net] sched: act_vlan: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_skbmod: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_skbedit: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_simple: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_sample: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_police: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_pedit: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_nat: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_connmark: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_mirred: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_ife: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_gact: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_csum: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_bpf: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: prepare TC actions to properly validate the control action (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Interpret fwmark parameter as a bitmask (Ivan Vecera) [1688236 1687456] - [net] net_sched: return correct value for *notify* functions (Ivan Vecera) [1688236 1687456] - [net] sched: fix potential use-after-free in __tcf_chain_put() (Ivan Vecera) [1688236 1687456] - [net] sched: flower: insert new filter to idr after setting its mask (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: Fix double free dst_cache (Ivan Vecera) [1688236 1687456] - [net] sched: avoid unused-label warning (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Simplify logic in cake_select_tin() (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Permit use of connmarks as tin classifiers (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Make the dual modes fairer (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Allow test cases to be skipped (Ivan Vecera) [1688236 1687456] - [net] sched: put back q.qlen into a single location (Ivan Vecera) [1688236 1687456] - [net] sched: pie: avoid slow division in drop probability decay (Ivan Vecera) [1688236 1687456] - [net] netem: fix skb length BUG_ON in __skb_to_sgvec (Ivan Vecera) [1688236 1687456] - [net] revert "net: sched: fw: don't set arg->stop in fw_walk() when empty" (Ivan Vecera) [1688236 1687456] - [net] sched: pie: fix 64-bit division (Ivan Vecera) [1688236 1687456] - [net] tc-testing: gitignore, ignore local tdc config file (Ivan Vecera) [1688236 1687456] - [net] sched: fix typo in walker_check_empty() (Ivan Vecera) [1688236 1687456] - [net] sched: pie: fix mistake in reference link (Ivan Vecera) [1688236 1687456] - [net] sched: act_csum: Fix csum calc for tagged packets (Ivan Vecera) [1688236 1687456] - [net] sched: pie: update references (Ivan Vecera) [1688236 1687456] - [net] sched: pie: add derandomization mechanism (Ivan Vecera) [1688236 1687456] - [net] sched: pie: add more cases to auto-tune alpha and beta (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change initial value of pie_vars->burst_time (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change default value of pie_params->tupdate (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change default value of pie_params->target (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change value of QUEUE_THRESHOLD (Ivan Vecera) [1688236 1687456] - [net] sched: don't release block->lock when dumping chains (Ivan Vecera) [1688236 1687456] - [net] sched: set dedicated tcf_walker flag when tp is empty (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: fix metadata handling (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: fix NULL pointer dereference during init (Ivan Vecera) [1688236 1687456] - [net] Use RCU_POINTER_INITIALIZER() to init static variable (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel replace/delete (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel add/delete (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify concurrent delete (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify concurrent replace (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel rules replace (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel rules deletion (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel rules insertion (Ivan Vecera) [1688236 1687456] - [net] selftests: tdc_batch.py: add options needed for concurrency tests (Ivan Vecera) [1688236 1687456] - [net] sched: act_skbedit: fix refcount leak when replace fails (Ivan Vecera) [1688236 1687456] - [net] sched: act_ipt: fix refcount leak when replace fails (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: Add dst_cache support (Ivan Vecera) [1688236 1687456] - [net] net_sched: initialize net pointer inside tcf_exts_init() (Ivan Vecera) [1687456 1688236] - [net] sched: potential NULL dereference in tcf_block_find() (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix a memory leak in cls_tcindex (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix a race condition in tcindex_destroy() (Ivan Vecera) [1688236 1687456] - [net] sched: using kfree_rcu() to simplify the code (Ivan Vecera) [1688236 1687456] - [net] sched: route: don't set arg->stop in route4_walk() when empty (Ivan Vecera) [1688236 1687456] - [net] sched: fw: don't set arg->stop in fw_walk() when empty (Ivan Vecera) [1688236 1687456] - [net] sched: cgroup: verify that filter is not NULL during walk (Ivan Vecera) [1688236 1687456] - [net] sched: matchall: verify that filter is not NULL in mall_walk() (Ivan Vecera) [1688236 1687456] - [net] sched: remove duplicated include from cls_api.c (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix two more memory leaks in cls_tcindex (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix a memory leak in cls_tcindex (Ivan Vecera) [1688236 1687456] - [net] sched: unlock rules update API (Ivan Vecera) [1688236 1687456] - [net] sched: refactor tcf_block_find() into standalone functions (Ivan Vecera) [1688236 1687456] - [net] sched: add flags to Qdisc class ops struct (Ivan Vecera) [1688236 1687456] - [net] sched: extend proto ops to support unlocked classifiers (Ivan Vecera) [1688236 1687456] - [net] sched: extend proto ops with 'put' callback (Ivan Vecera) [1688236 1687456] - [net] sched: track rtnl lock status when validating extensions (Ivan Vecera) [1688236 1687456] - [net] sched: prevent insertion of new classifiers during chain flush (Ivan Vecera) [1688236 1687456] - [net] sched: refactor tp insert/delete for concurrent execution (Ivan Vecera) [1688236 1687456] - [net] sched: traverse classifiers in chain with tcf_get_next_proto() (Ivan Vecera) [1688236 1687456] - [net] sched: introduce reference counting for tcf_proto (Ivan Vecera) [1688236 1687456] - [net] sched: protect filter_chain list with filter_chain_lock mutex (Ivan Vecera) [1688236 1687456] - [net] sched: protect chain template accesses with block lock (Ivan Vecera) [1688236 1687456] - [net] sched: traverse chains in block with tcf_get_next_chain() (Ivan Vecera) [1688236 1687456] - [net] sched: protect block->chain0 with block->lock (Ivan Vecera) [1688236 1687456] - [net] sched: refactor tc_ctl_chain() to use block->lock (Ivan Vecera) [1688236 1687456] - [net] sched: protect chain->explicitly_created with block->lock (Ivan Vecera) [1688236 1687456] - [net] sched: protect block state with mutex (Ivan Vecera) [1688236 1687456] - [net] Change TCA_ACT_* to TCA_ID_* to match that of TCA_ID_POLICE (Ivan Vecera) [1688236 1687456] - [net] Move all TC actions identifiers to one place (Ivan Vecera) [1688236 1687456] - [net] sched: use struct_size() helper (Ivan Vecera) [1688236 1687456] - [net] documentation: bring operstate documentation up-to-date (Ivan Vecera) [1688236 1687456] - [net] cls_flower: Remove filter from mask before freeing it (Ivan Vecera) [1688236 1687456] - [net] cls_flower: don't expose TC actions to drivers anymore (Ivan Vecera) [1688236 1687456] - [net] drivers: net: use flow action infrastructure (Ivan Vecera) [1688236 1687456] - [net] flow_offload: add flow_rule and flow_match structures and use them (Ivan Vecera) [1688236 1687456] - [net] net_sched: add performance counters for basic filter (Ivan Vecera) [1688236 1687456] - [net] net_sched: add hit counter for matchall (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: allocate mask dynamically in fl_change() (Ivan Vecera) [1688236 1687456] - [net] selftests: tc-testing: fix parsing of ife type (Ivan Vecera) [1688236 1687456] - [net] net_sched: refetch skb protocol for each filter (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: fix memory leak in case of action replace (Ivan Vecera) [1688236 1687456] - [net] sch_api: Change signature of qdisc_tree_reduce_backlog() to use ints (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Correctly update parent qlen when splitting GSO packets (Ivan Vecera) [1688236 1687456] - [net] sched: Fix detection of empty queues in child qdiscs (Ivan Vecera) [1688236 1687456] - [net] sched: Avoid dereferencing skb pointer after child enqueue (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: Remove old entries from rhashtable (Ivan Vecera) [1688236 1687456] - [net] sched: simplify the qdisc_leaf code (Ivan Vecera) [1688236 1687456] - [net] selftests: Fix test errors related to lib.mk khdr target (Ivan Vecera) [1688236 1687456] - [net] net_sched: fold tcf_block_cb_call() into tc_setup_cb_call() (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: Reject duplicated rules also under skip_sw (Ivan Vecera) [1688236 1687456] - [net] tc-testing: gitignore, ignore generated test results (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Implement the TdcResults module in tdc (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Add new TdcResults module (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Add command timeout feature to tdc (Ivan Vecera) [1688236 1687456] - [net] netem: use a list in addition to rbtree (Ivan Vecera) [1688236 1687456] - [net] Prevent invalid access to skb->prev in __qdisc_drop_all (Ivan Vecera) [1688236 1687456] - [net] tc-testing: tdc.py: Guard against lack of returncode in executed command (Ivan Vecera) [1688236 1687456] - [net] tc-testing: tdc.py: ignore errors when decoding stdout/stderr (Ivan Vecera) [1688236 1687456] - [net] etf: Drop all expired packets (Ivan Vecera) [1688236 1687456] - [net] etf: Split timersortedlist_erase() (Ivan Vecera) [1688236 1687456] - [net] etf: Use cached rb_root (Ivan Vecera) [1688236 1687456] - [net] etf: Cancel timer if there are no pending skbs (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: Classify packets using port ranges (Ivan Vecera) [1688236 1687456] - [net] act_mirred: clear skb->tstamp on redirect (Ivan Vecera) [1688236 1687456] - [net] core: use __vlan_hwaccel helpers (Ivan Vecera) [1688236 1687456] - [net] sched: Replace call_rcu_bh() and rcu_barrier_bh() (Ivan Vecera) [1688236 1687456] - [net] sched: Remove egdev mechanism (Ivan Vecera) [1688236 1687456] - [net] sched: avoid writing on noop_qdisc (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: simplify the hell out u32_delete() emptiness check (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: keep track of knodes count in tc_u_common (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of tp_c (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: the tp_c argument of u32_set_parms() is always tp->data (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: pass tc_u_common to u32_set_parms() instead of tc_u_hnode (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: clean tc_u_common hashtable (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of tc_u_common ->rcu (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of tc_u_knode ->tp (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of unused argument of u32_destroy_key() (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: make sure that divisor is a power of 2 (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: disallow linking to root hnode (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: mark root hnode explicitly (Ivan Vecera) [1688236 1687456] - [net] sched: pie: fix coding style issues (Ivan Vecera) [1688236 1687456] - [net] treewide: Replace more open-coded allocation size multiplications (Ivan Vecera) [1688236 1687456] - [net] sched: remove unused helpers (Ivan Vecera) [1688236 1687456] - [net] tc-testing: use a plugin to build eBPF program (Ivan Vecera) [1688236 1687456] - [net] tc-testing: fix build of eBPF programs (Ivan Vecera) [1688236 1687456] - [net] tc: Add support for configuring the taprio scheduler (Ivan Vecera) [1688236 1687456] - [documentation] KVM: arm64: Clarify access behaviour for out-of-range SVE register slice IDs (Andrew Jones) [1550499] - [documentation] KVM: Clarify KVM_{SET,GET}_ONE_REG error code documentation (Andrew Jones) [1550499] - [documentation] KVM: Clarify capability requirements for KVM_ARM_VCPU_FINALIZE (Andrew Jones) [1550499] - [kvm] KVM: arm/arm64: Clean up vcpu finalization function parameter naming (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Explain validity checks in set_sve_vls() (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Simplify KVM_REG_ARM64_SVE_VLS array sizing (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: WARN when avoiding divide-by-zero in sve_reg_to_region() (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Make register ioctl access errors more consistent (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Miscellaneous tidyups in guest.c (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Clean up UAPI register ID definitions (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: sys_regs: Demote redundant vcpu_has_sve() checks to WARNs (Andrew Jones) [1550499] - [virt] KVM: arm/arm64: Demote kvm_arm_init_arch_resources() to just set up SVE (Andrew Jones) [1550499] - [arm64] arm64/sve: Clarify vq map semantics (Andrew Jones) [1550499] - [kvm] arm64: KVM: Fix system register enumeration (Andrew Jones) [1550499] - [documentation] KVM: arm64/sve: Document KVM API extensions for SVE (Andrew Jones) [1550499] - [documentation] KVM: Document errors for KVM_GET_ONE_REG and KVM_SET_ONE_REG (Andrew Jones) [1550499] - [arm64] KVM: arm64: Add a capability to advertise SVE support (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Allow userspace to enable SVE for vcpus (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Add pseudo-register for the guest's vector lengths (Andrew Jones) [1550499] - [virt] KVM: arm/arm64: Add KVM_ARM_VCPU_FINALIZE ioctl (Andrew Jones) [1550499] - [virt] KVM: arm/arm64: Add hook for arch-specific KVM initialisation (Andrew Jones) [1550499] - [arm64] arm64/sve: In-kernel vector length availability query interface (Andrew Jones) [1550499] - [kvm] KVM: arm64: Enumerate SVE register indices for KVM_GET_REG_LIST (Andrew Jones) [1550499] - [arm64] KVM: arm64/sve: Add SVE support to register access ioctl interface (Andrew Jones) [1550499] - [kvm] KVM: arm64: Reject ioctl access to FPSIMD V-regs on SVE vcpus (Andrew Jones) [1550499] - [kvm] KVM: arm64: Factor out core register ID enumeration (Andrew Jones) [1550499] - [kvm] KVM: arm64: Add missing #include of in guest.c (Andrew Jones) [1550499] - [include] KVM: Allow 2048-bit register access via ioctl interface (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Context switch the SVE registers (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: System register context switch and access support (Andrew Jones) [1550499] - [kvm] KVM: arm64: Support runtime sysreg visibility filtering (Andrew Jones) [1550499] - [kvm] KVM: arm64: Propagate vcpu into read_id_reg() (Andrew Jones) [1550499] - [arm64] KVM: arm64: Add a vcpu flag to control SVE visibility for the guest (Andrew Jones) [1550499] - [arm64] arm64/sve: Enable SVE state tracking for non-task contexts (Andrew Jones) [1550499] - [arm64] arm64/sve: Check SVE virtualisability (Andrew Jones) [1550499] - [arm64] arm64/sve: Clarify role of the VQ map maintenance functions (Andrew Jones) [1550499] - [arm64] KVM: arm64: Add missing #includes to kvm_host.h (Andrew Jones) [1550499] - [kvm] KVM: arm64: Refactor kvm_arm_num_regs() for easier maintenance (Andrew Jones) [1550499] - [arm64] KVM: arm64: Delete orphaned declaration for __fpsimd_enabled() (Andrew Jones) [1550499] - [arm64] arm64: fpsimd: Always set TIF_FOREIGN_FPSTATE on task state flush (Andrew Jones) [1550499] - [documentation] KVM: Documentation: Document arm64 core registers in detail (Andrew Jones) [1550499] - [arm64] arm64/sve: Disentangle from (Andrew Jones) [1550499] - [arm64] arm64/sve: ptrace: Fix SVE_PT_REGS_OFFSET definition (Andrew Jones) [1550499]- [fs] xfs: fix reporting supported extra file attributes for statx() (Bill O'Donnell) [1721034] - [scsi] scsi: hpsa: correct ioaccel2 chaining (Joseph Szczypek) [1706121] - [powerpc] powerpc/pseries/mobility: rebuild cacheinfo hierarchy post-migration (Steve Best) [1720929] - [powerpc] powerpc/pseries/mobility: prevent cpu hotplug during DT update (Steve Best) [1720929] - [powerpc] powerpc/cacheinfo: add cacheinfo_teardown, cacheinfo_rebuild (Steve Best) [1720929] - [kernel] cpuset: restore sanity to cpuset_cpus_allowed_fallback() (Joel Savitz) [1677311]- [scripts] scripts: override locale from environment when running recordmcount.pl (Prarit Bhargava) [1721515] - [netdrv] net: aquantia: fix wol configuration not applied sometimes (Igor Russkikh) [1662198] - [x86] x86/resctrl: Prevent NULL pointer dereference when local MBM is disabled (Prarit Bhargava) [1721208] - [fs] inotify: Fix fsnotify_mark refcount leak in inotify_update_existing_watch() (Miklos Szeredi) [1451863] - [fs] inotify: Fix fd refcount leak in inotify_add_watch(). (Miklos Szeredi) [1451863] - [fs] fanotify: Use inode_is_open_for_write (Miklos Szeredi) [1451863] - [fs] fanotify: Make sure to check event_len when copying (Miklos Szeredi) [1451863] - [fs] fsnotify/fdinfo: include fdinfo.h for inotify_show_fdinfo() (Miklos Szeredi) [1451863] - [include] fanotify: introduce new event mask FAN_OPEN_EXEC_PERM (Miklos Szeredi) [1451863] - [include] fsnotify: refactor fsnotify_parent()/fsnotify() paired calls when event is on path (Miklos Szeredi) [1451863] - [include] fanotify: introduce new event mask FAN_OPEN_EXEC (Miklos Szeredi) [1451863] - [fs] fanotify: return only user requested event types in event mask (Miklos Szeredi) [1451863] - [fs] fanotify: support reporting thread id instead of process id (Miklos Szeredi) [1451863] - [fs] fanotify: add BUILD_BUG_ON() to count the bits of fanotify constants (Miklos Szeredi) [1451863] - [fs] fsnotify: convert runtime BUG_ON() to BUILD_BUG_ON() (Miklos Szeredi) [1451863] - [fs] fanotify: deprecate uapi FAN_ALL_* constants (Miklos Szeredi) [1451863] - [fs] fanotify: simplify handling of FAN_ONDIR (Miklos Szeredi) [1451863] - [include] fanotify: fix collision of internal and uapi mark flags (Miklos Szeredi) [1451863] - [fs] fanotify: store fanotify_init() flags in group's fanotify_data (Miklos Szeredi) [1451863] - [fs] fanotify: clean up handling of "mark type" (Miklos Szeredi) [1451863] - [fs] fsnotify: fix false positive warning on inode delete (Miklos Szeredi) [1451863] - [include] inotify: Add flag IN_MASK_CREATE for inotify_add_watch() (Miklos Szeredi) [1451863] - [fs] fanotify: factor out helpers to add/remove mark (Miklos Szeredi) [1451863] - [fs] fsnotify: add helper to get mask from connector (Miklos Szeredi) [1451863] - [fs] fsnotify: let connector point to an abstract object (Miklos Szeredi) [1451863] - [fs] fsnotify: pass connp and object type to fsnotify_add_mark() (Miklos Szeredi) [1451863] - [fs] fsnotify: use typedef fsnotify_connp_t for brevity (Miklos Szeredi) [1451863] - [powerpc] powerpc/pseries: Fix oops in hotplug memory notifier (Steve Best) [1720932] - [netdrv] net: aquantia: tcp checksum 0xffff being handled incorrectly (Igor Russkikh) [1719176] - [netdrv] net: aquantia: fix LRO with FCS error (Igor Russkikh) [1719176] - [netdrv] net: aquantia: check rx csum for all packets in LRO session (Igor Russkikh) [1719176] - [netdrv] net: aquantia: tx clean budget logic error (Igor Russkikh) [1719176] - [security] selinux: log raw contexts as untrusted strings (Ondrej Mosnacek) [1719666] - [kernel] audit: add saddr_fam filter field (Richard Guy Briggs) [1715679] - [kernel] audit: re-structure audit field valid checks (Richard Guy Briggs) [1715679] - [kernel] audit: rename FILTER_TYPE to FILTER_EXCLUDE (Richard Guy Briggs) [1715679] - [kernel] audit: allow other filter list types for AUDIT_EXE (Richard Guy Briggs) [1715679] - [documentation] ovl: doc: add non-standard corner cases (Miklos Szeredi) [1718370] - [fs] ovl: support the FS_IOC_FSETXATTR ioctls (Miklos Szeredi) [1718370] - [fs] ovl: relax WARN_ON() for overlapping layers use case (Miklos Szeredi) [1718370] - [fs] ovl: check the capability before cred overridden (Miklos Szeredi) [1718370] - [fs] ovl: do not generate duplicate fsnotify events for "fake" path (Miklos Szeredi) [1718370] - [fs] ovl: support stacked SEEK_HOLE/SEEK_DATA (Miklos Szeredi) [1718370] - [fs] ovl: fix missing upper fs freeze protection on copy up for ioctl (Miklos Szeredi) [1718370] - [fs] fuse: fallocate: fix return with locked inode (Miklos Szeredi) [1717457] - [fs] fuse: honor RLIMIT_FSIZE in fuse_file_fallocate (Miklos Szeredi) [1717457] - [fs] fuse: decrement NR_WRITEBACK_TEMP on the right page (Miklos Szeredi) [1717457] - [fs] fuse: handle zero sized retrieve correctly (Miklos Szeredi) [1717457] - [fs] fuse: continue to send FUSE_RELEASEDIR when FUSE_OPEN returns ENOSYS (Miklos Szeredi) [1717457]- [mm] mm/mincore.c: make mincore() more conservative (Rafael Aquini) [1664203] {CVE-2019-5489} - [x86] x86/umip: Make the UMIP activated message generic (David Arcari) [1720014] - [x86] x86/umip: Print UMIP line only once (David Arcari) [1720014] - [crypto] crypto: vmac - separate tfm and request context (Desnes Augusto Nunes do Rosario) [1702702] - [crypto] crypto: ccp - Update driver messages to remove some confusion (David Arcari) [1719026] - [block] blk-mq: fix hang caused by freeze/unfreeze sequence (Ming Lei) [1719835] - [block] blk-mq: remove WARN_ON(!q->elevator) from blk_mq_sched_free_requests (Ming Lei) [1719835] - [block] block: free sched's request pool in blk_cleanup_queue (Ming Lei) [1719835] - [block] block: don't protect generic_make_request_checks with blk_queue_enter (Ming Lei) [1719835] - [block] block: move blk_exit_queue into __blk_release_queue (Ming Lei) [1719835] - [block] block: print offending values when cloned rq limits are exceeded (Ming Lei) [1719816] - [block] block: fix page leak when merging to same page (Ming Lei) [1662864] - [x86] RHEL: fix build of spec_ctrl.h for older assemblers (Jeff Moyer) [1719406] - [drm] drm/amd/display: Initialize stream_update with memset (Jeff Moyer) [1719406] - [mm] mm/gup: finish consolidating error handling (Jeff Moyer) [1641506] - [mm] mm/gup: cache dev_pagemap while pinning pages (Jeff Moyer) [1641506] - [rpmspec] kernel packaging: Fix extra namespace collision (Prarit Bhargava) [1699868] - [rpmspec] redhat: kernel-selftests-internal: add dependencies (Jiri Benc) [1717943] - [kernel] kernel/module.c: Only return -EEXIST for modules that have finished loading (Prarit Bhargava) [1666939] - [input] Input: elantech - remove P52 and P72 from SMBus blacklist (Benjamin Tissoires) [1703157] - [input] Input: elan_i2c - handle physical middle button (Benjamin Tissoires) [1703157] - [input] Input: elantech/SMBus - export all capabilities from the PS/2 node (Benjamin Tissoires) [1703157] - [input] Input: elan_i2c - do not query the info if they are provided (Benjamin Tissoires) [1703157] - [input] Input: elantech - detect middle button based on firmware version (Benjamin Tissoires) [1703157] - [input] Input: elantech - add helper function elantech_is_buttonpad() (Benjamin Tissoires) [1703157] - [input] Input: elantech - query the min/max information beforehand too (Benjamin Tissoires) [1703157] - [input] Input: elantech - enable middle button support on 2 ThinkPads (Benjamin Tissoires) [1703157] - [input] Input: elan_i2c - increment wakeup count if wake source (Benjamin Tissoires) [1703157] - [kernel] timekeeping: Update multiplier when NTP frequency is set directly (Prarit Bhargava) [1714164] - [fs] xfs: fix use after free in buf log item unlock assert (Brian Foster) [1666150] - [fs] xfs: add missing error check in xfs_prepare_shift() (Brian Foster) [1699214] - [documentation] Documentation: Fix grammatical error in sysctl/fs.txt & clarify negative dentry (Waiman Long) [1673955] - [fs] fs/dcache: Track & report number of negative dentries (Waiman Long) [1673955] - [fs] fs/dcache: Fix incorrect nr_dentry_unused accounting in shrink_dcache_sb() (Waiman Long) [1673955] - [net] tcp: tcp_fragment() should apply sane memory limits (Florian Westphal) [1719858] {CVE-2019-11478} - [net] tcp: limit payload size of sacked skbs (Florian Westphal) [1719603] {CVE-2019-11477}- [tools] kvm: selftests: make hyperv_cpuid test pass on AMD (Vitaly Kuznetsov) [1718501] - [scsi] vmw_pvscsi: Fixed to work with SG_CHAIN (Ewan Milne) [1717278] - [x86] mark AMD Rome processors supported (David Arcari) [1520002] - [fs] ext4: zero out the unused memory region in the extent tree block (Lukas Czerner) [1715276] {CVE-2019-11833} - [s390] s390/smp: Fix calling smp_call_ipl_cpu() from ipl CPU (David Hildenbrand) [1715041] - [vfio] vfio/type1: Limit DMA mappings per container (Alex Williamson) [1695592] {CVE-2019-3882} - [tools] selftests/powerpc: Remove Power9 paste tests (Diego Domingos) [1662374] - [tools] selftests/powerpc: Remove Power9 copy_unaligned test (Diego Domingos) [1662374] - [tools] selftests/powerpc: Fix ptrace tm failure (Diego Domingos) [1662374] - [netdrv] mlxsw: core: Prevent reading unsupported slave address from SFP EEPROM (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Prevent QSFP module initialization for old hardware (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Fix autoneg status in ethtool (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Reincrease PCI reset timeout (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Put MC TCs into DWRR mode (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Add a multicast pool for Spectrum-2 (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test VRF MAC vetoing (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Do not check VRF MAC address (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw workqueue (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw ordered workqueue (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Do not use WQ_MEM_RECLAIM for EMAD workqueue (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Add MDB entries in prepare phase (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: mlxsw: core: avoid -Wint-in-bool-context warning (Ivan Vecera) [1680241] - [netdrv] mlxsw: minimal: Initialize base_mac (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Prevent duplication during QSFP module initialization (Ivan Vecera) [1680241] - [netdrv] mellanox: Switch to bitmap_zalloc() (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Extend initialization by querying resources data (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Extend input parameters list of command API (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Modify input parameter name in initialization API (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Fix comment misspelling (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Move resource query API to common location (Ivan Vecera) [1680241] - [netdrv] mlxsw: minimal: Add ethtool support (Ivan Vecera) [1680241] - [netdrv] mlxsw: minimal: Make structures and variables names shorter (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Move ethtool module callbacks to a common location (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Make mlxsw_sp_acl_tcam_vregion_rehash() return void (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remember where to continue rehash migration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Allow to interrupt/continue rehash work (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Do rollback as another call to mlxsw_sp_acl_tcam_vchunk_migrate_all() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Put vchunk migrate start/end code into separate functions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Put this_is_rollback to rehash context struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Rename variables in mlxsw_sp_acl_tcam_ventry_migrate() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: assign vchunk->chunk by the newly created chunk (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: assign vregion->region by the newly created region (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Push code start/end from mlxsw_sp_acl_tcam_vregion_migrate() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Push rehash start/end code into separate functions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce new rehash context struct and save hint_priv there (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Don't migrate already migrated entry (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Push rehash dw struct into rehash sub-struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Handle SWITCHDEV_PORT_ATTR_SET (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: remove set but not used variable 'autoneg_status' (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add massive delta rehash test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Check migrate end trace (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add vregion migration end tracepoint (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add IPv6 variant of simple delta rehash test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Don't take mutex in mlxsw_sp_acl_tcam_vregion_rehash_work() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove RTNL lock assertions from ERP code (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Don't take rtnl lock during vregion_rehash_intrvl_set() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce a mutex to guard objagg instance manipulation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Enable vregion rehash per-profile (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce mutex to guard Bloom Filter updates (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce vregion mutex (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Refactor vregion association code (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce a mutex to guard region list updates (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split TCAM group structure into two (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove unused ops field from group structure (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add Spectrum-2 ASIC support for new port types and speeds (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add Spectrum-2 ASIC port type-speed operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add new port type-speed fields for PTYS register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: 80 columns wrapping change (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Rename p_eth_proto_adm to full name p_eth_proto_admin (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add port type-speed operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Rename port type-speed functions to ASIC specific (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Query port connector type from firmware (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove unsupported eth_proto_lp_advertise field in PTYS (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove duplicate port link mode entry (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Avoid -Wformat-truncation warnings (Ivan Vecera) [1680241] - [netdrv] net: Remove SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS_SUPPORT (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Reject overlarge headroom size requests (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Update port headroom configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Add Spectrum-2 shared buffer configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_mm in sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_cm in sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_prs in mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_pms in mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep pool descriptors in mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allocate prs & pms dynamically (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add struct mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Change IP2ME CPU policer rate and burst size values (Ivan Vecera) [1680241] - [netdrv] mlxsw: __mlxsw_sp_port_headroom_set(): Fix a use of local variable (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add some missing configuration symbols (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: fix spelling mistake "temprature" -> "temperature" (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend thermal module with per QSFP module thermal zones (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Allow thermal zone binding to an external cooling device (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Add QSFP module temperature label attribute to hwmon (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend hwmon interface with QSFP module temperature attributes (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend hwmon interface with fan fault attribute (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Rename cooling device (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Replace thermal temperature trips with defines (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Modify thermal zone definition (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Set different thermal polling time based on bus frequency capability (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Add API for QSFP module temperature thresholds reading (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Fan Out of Range Event Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Management Temperature Bulk Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Move QSFP EEPROM definitions to common location (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Remove unused variables (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: avoid double sourcing of lib.sh (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: Fix VLAN modify action support (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Drop unnecessary WARN_ON_ONCE() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set LAG port collector only when active (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Remove getting PORT_BRIDGE_FLAGS (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add simple delta rehash test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add couple of vregion rehash tracepoints (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: add "acl_region_rehash_interval" devlink param (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement region migration according to hints (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add multi field to PAGT register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Pass hints priv all the way to ERP code (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement basic ERP rehash hits creation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split entry struct into entry and ventry (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split chunk struct into chunk and vchunk (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split region struct into region and vregion (Ivan Vecera) [1680241] - [netdrv] lib: objagg: implement optimization hints assembly and use hints for object creation (Ivan Vecera) [1680241] - [netdrv] devlink: publish params only after driver init is done (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for blackhole routes (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Offload blackhole routes (Ivan Vecera) [1680241] - [netdrv] mlxsw: Implement ndo_get_port_parent_id() (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Trace EMAD errors (Ivan Vecera) [1680241] - [netdrv] drivers: net: use flow action infrastructure (Ivan Vecera) [1680241] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_flower: Fix test result handling (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_bridge_1q_lag: Ignore ARP (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_bridge_1q_lag: Enable forwarding (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_bridge_1q_lag: Flush neighbors (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_vlan_bridge_1q: Fix roaming test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_lib: Wait for tardy mirrored packets (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_changes: Fix TTL test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Update ping limits (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_lib: Update ping limits (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Make ping timeout configurable (Ivan Vecera) [1680241] - [tools] selftests: spectrum-2: Add delta two masks one key test (Ivan Vecera) [1680241] - [tools] selftests: spectrum-2: Fix multiple_masks_test (Ivan Vecera) [1680241] - [tools] selftests: spectrum-2: Extend and move trace helpers (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add C-TCAM spill tracepoint (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Include delta bits into hashtable key (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Use OK instead of PASS in test output (Ivan Vecera) [1680241] - [tools] selftests: net: forwarding: change devlink resource support checking (Ivan Vecera) [1680241] - [documentation] Documentation: add devlink param file for mlxsw driver (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Add more extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Fix rul/rule typo (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Move mr_ruleset and mr_rule structs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove unnecessary arg on action_replace call path (Ivan Vecera) [1680241] - [netdrv] mlxfw: Replace license text with SPDX identifiers and adjust copyrights (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Enable VXLAN on Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add support for VXLAN on Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Breakout common code to a common function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose functions to create and destroy underlay RIF (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test case for ARP suppression (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test for VXLAN symmetric routing (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test case for ARP decapsulation (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test for VXLAN asymmetric routing (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE hierarchical topology with keys test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE hierarchical topology with key test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE hierarchical topology test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE flat topology with keys test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE flat topology with key test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE flat topology test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP tunneling lib (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add GRE tunnel support for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Update tunnel decap properties (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Support RIF without device (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Change mlxsw_sp_ipip_lb_ul_vr_id() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add underlay RIF ID support (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Mark RIF index as taken before creation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Adjust loopback RIF configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set RIF ops per ASIC type (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Split RIF ops array for Spectrum-2 support (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add underlay egress RIF field in RTDP register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add fields to RITR - Router Interface Table Register (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test case for externally learned FDB entries (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test FDB offload indication (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Do not treat static FDB entries as sticky (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Update dummy FID index (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Return error on PCI reset timeout (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Increase PCI SW reset timeout (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Ring CQ's doorbell before RDQ's (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test veto of unsupported VXLAN FDBs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add extack messages to VXLAN FDB rejection (Ivan Vecera) [1680241] - [netdrv] mlxsw: Add extack to mlxsw_sp_nve_ops.fdb_replay (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl_bloom_filter: use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test for VLAN deletion (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Set PVID correctly during VLAN deletion (Ivan Vecera) [1680241] - [net] net: bridge: Fix VLANs memory leak (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test case for VLAN addition error flow (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Replace error code with EINVAL (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Avoid returning errors in commit phase (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add VXLAN dependency for spectrum (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Disable lag port TX before removing it (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove ASSERT_RTNL()s in module removal flow (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add cleanup after C-TCAM update error condition (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: drop useless LIST_HEAD (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add router test with VID 1 (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Adjust test regarding VID 1 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove limitation regarding VID 1 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Switch to VID 4095 as default VID (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add an helper function to cleanup VLAN entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Store pointer to default port VLAN in port struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Allow controlling destruction of default port VLAN (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set PVID during port initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Replace hard-coded default VID with a define (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test case for L3 VNI (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Do not force specific configuration order (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add rtnetlink tests (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Hold a reference on RIF's netdev (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Make RIF deletion more robust (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Propagate 'struct mlxsw_sp' further (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Properly cleanup LAG uppers when removing port from LAG (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove reference count from VLAN entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Handle VLAN device unlinking (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Remove unused function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Do not destroy RIFs based on FID's reference count (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Sanitize VLAN interface's uppers (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Fix memory leak upon driver reload (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add trap for decapsulated ARP packets (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Increase timeout during firmware flash process (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Update the supported firmware to version 13.1910.622 (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add Bloom delta test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add Bloom filter complex test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add Bloom filter simple test (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Activate Bloom filter (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Set master RP index on transition to eRP (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Update Bloom filter on eRP transitions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Set A-TCAM rules in Bloom filter (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add Bloom filter update (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add Bloom filter handling (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce Bloom filter (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add Spectrum-2 Bloom filter resource (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy Engine Algorithmic Bloom Filter Entries Register (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test FID RIF MAC vetoing (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test RIF MAC vetoing (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Veto unsupported RIF MAC addresses (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add mlxsw_sp.mac_mask (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Generalize mlxsw_sp_netdevice_router_port_event() (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: extack: Test VLAN add on a port device (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: extack: Test VLAN add on a VXLAN device (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Propagate extack on port VLAN events (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Propagate extack on VXLAN VLAN events (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add multicast routing test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add Multicast routing support for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Limit priority value (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Support rule creation without action creation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add replace rule action operation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add multicast router profile operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add Spectrum-2 keys (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Change stage of ACL initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy Engine Multicast Router Binding Table Register (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add PVID test case for VXLAN with VLAN-aware bridges (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: vxlan: Test FDB un/marking on VXLAN join/leave (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Un/offload FDB on nve_fid_disable/enable (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add mlxsw_sp_fid_ops.fdb_clear_offload (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add mlxsw_sp_nve_ops.fdb_clear_offload (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add mlxsw_sp_nve_ops.fdb_replay (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Publish mlxsw_sp_switchdev_notifier (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Track NVE type at FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Fix VLAN device deletion via ioctl (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Relax GRE decap matching check (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Avoid leaking FID's reference count (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Remove easily triggerable warnings (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a new test extack.sh (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add one-armed router test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Mirror loopbacked packets instead of trapping them (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Load firmware version based on devlink parameter (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Reset firmware after flash during driver initialization (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add VxLAN test with a VLAN-aware bridge (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for VxLAN configuration with a VLAN-aware bridge (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Consider VLAN-aware bridges as valid (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Enable VxLAN enslavement to VLAN-aware bridges (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Prepare function for VLAN-aware bridges (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Unify VxLAN leave function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Add API to lookup 802.1Q FIDs without creating them (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Flip driver to use emulated 802.1Q FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Introduce emulated VLAN RIFs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Introduce emulated 802.1Q FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Make flood index calculation more robust (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Do not set field when it is reserved (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Consider VxLAN learning enabled as valid (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Allow VxLAN learning (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Allow deletion of learned FDB entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Process learned VxLAN FDB entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add API to resolve learned IP addresses (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Allow FID lookup by its index (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Store ifindex of NVE device in FID (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add definition of unicast tunnel record for SFN register (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend cooling device with cooling levels (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for VxLAN flooding (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for VxLAN configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose discard counters via ethtool (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add simple delta test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Implement delta for ERP (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Push code related to num_ctcam_erps inc/dec into separate helpers (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Remove mlxsw_afk_encode() block range args and key/mask check (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Don't encode the key again in mlxsw_sp_acl_atcam_12kb_lkey_id_get() (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl: Change order of args of ops->encode_block() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Pass key pointer to master_mask_set/clear (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl_erp: Convert to use objagg for tracking ERPs (Ivan Vecera) [1680241] - [tools] selftests: Adjust spectrum-2 ctcam_two_atcam_masks_test (Ivan Vecera) [1680241] - [tools] selftests: Adjust spectrum-2 two_mask_test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Fix IP2ME CPU policer configuration (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_mc_aware: Add a test for UC awareness (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_mc_aware: Tweak for min shaper (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set minimum shaper on MC TCs (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: QEEC: Add minimum shaper fields (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Fix devlink unregister flow (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Don't ignore deletions of learned MACs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Add support for VxLAN encapsulation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Enable VxLAN enslavement to bridges (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Configure matching local routes for NVE decap (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Clear NVE configuration when destroying 802.1D FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Implement VxLAN operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Implement common NVE core (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Allow querying VR ID based on table ID (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Enable local routes promotion to perform NVE decap (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Add APIs to lookup FID without creating it (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Allow setting and clearing NVE properties on FID (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Fix use-after-free when flashing firmware during init (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add NVE packet traps (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add NVE resources (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Monitoring Parsing State Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add definition of unicast tunnel record for SFD register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE QoS Default Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE QoS Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE Decapsulation ECN Mapping Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE Encapsulation ECN Mapping Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE Underlay Multicast Table Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunnel Port Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE General Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Seed LAG hash function (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Extend FDB flush types for NVE (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add a new type of KVD linear record (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Move L3 protocol and address definitions to global header file (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Do not assume notifier information type (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Check notification relevance based on upper device (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Prepare for VxLAN FDB notifications (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove misuses of private header file (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_mc_aware: Make executable (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Have lldpad_app_wait_set() wait for unknown, too (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Fix a typo (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Delete RIF when VLAN device is removed (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Derive event type from event queue number (Ivan Vecera) [1680241] - [netdrv] mlxsw: Make MLXSW_SP1_FWREV_MINOR a hard requirement (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Bump required firmware version (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for UC behavior under MC flood (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add mtu_set(), mtu_restore() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add ethtool_stats_get() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Tweak SBMM configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Configure MC pool (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allow configuration of static pools (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Pass SBPM min_size in cells (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allow an infinite maximum for per-TC pool limit (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allow pools of infinite size (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep shared buffer size in mlxsw_sp_sb (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Split TC_COUNT into ingress and egress (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Use devlink pool indices throughout (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Init shaper for TCs 8..15 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Set up a dedicated pool for BUM traffic (Ivan Vecera) [1680241] - [netdrv] mlxsw: remove unused arrays mlxsw_i2c_driver_name and mlxsw_pci_driver_name (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: remove unnecessary function mlxsw_core_driver_put (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose counter for all 16 TCs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Include RFC-2819 counters in stats length (Ivan Vecera) [1680241] - [netdrv] mlxsw: Replace license text with SPDX identifiers and adjust copyrights (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add TC flower test for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Reset FW after flash (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Update the supported firmware to version 13.1702.6 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: Disallow usage of vlan_id key on egress (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: use PTR_ERR_OR_ZERO() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: gre_multipath: Update next-hop statistics match criteria (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Configure MC-aware mode on mlxsw ports (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Fix a typo (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Switch Traffic Class Table is Multicast-Aware Register (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add test for ip_forward_update_priority (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Move DSCP capture to lib.sh (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Move lldpad waiting to lib.sh (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Handle sysctl_ip_fwd_update_priority (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Extract work-scheduling into a new function (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL team LACP (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL team (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Introduce $ARPING (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Support team devices (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add require_command() (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_dscp_bridge: Fix (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add test for trust-DSCP (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Support ieee_setapp, ieee_delapp (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Priority to DSCP Mapping Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS ReWrite Enable Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Priority Trust State Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Port DSCP to Priority Mapping Register (Ivan Vecera) [1680241] - [tools] selftests: add a selftest for directed broadcast forwarding (Ivan Vecera) [1680241] - [tools] selftests: forwarding: add tests for TC chain get and dump operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Start using A-TCAM (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add A-TCAM rule insertion and deletion (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Pass C-TCAM region and entry to insert function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add A-TCAM region initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Make global TCAM resources available to regions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Encapsulate C-TCAM region in A-TCAM region (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add A-TCAM initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Allow encoding a partial key (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Extend Spectrum-2 region struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add support for C-TCAM eRPs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Enable C-TCAM only mode in eRP core (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement common eRP core (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add Spectrum-2 eRP resources (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add Spectrum-2 maximum large key ID resource (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine eRP Table Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine TCAM Entry Register Version 3 (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Prepare PERERP register for A-TCAM usage (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: Add extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_actions: Add extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Propagate extack pointer (Ivan Vecera) [1680241] - [tools] selftests: forwarding: gre_multipath: Drop IPv6 tests (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Implement chain template hinting (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Extend to support Spectrum-2 ASIC (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add initial Spectrum-2 ACL implementation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add region association callback (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add support for Spectrum-2 block encoding (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Prepare for Spectrum-2 block encoding (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine General Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine Region eRP Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine Region Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine Region Association Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: acl: Introduce activity get operation for action block/set (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add support for activity information from PEFA register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Introduce flex key blocks for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add Spectrum-2 variant of flex actions ops (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_mr_tcam: Add Spectrum-2 stubs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add KVDL manager implementation for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Infrastructure Entry Delete Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose counters for various packet sizes (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Optimize processing of VRRP MACs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add VRRP traps (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Direct macvlans' MACs to router (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Enable macvlan upper devices (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_nh: Unset rp_filter on host VRF (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_span: Change LAG lower selection (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add couple of Spectrum-2 KVD resources (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Prepare for multiple FW versions for Spectrum and Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement priority setting for rules inserted to TCAM (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add priority field for PTCEV2 register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Move block items encoding into Spectrum op (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Convert mlxsw_afk_create args to ops (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add tcam init/fini ops (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split TCAM handling 3 ways (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_mr_tcam: Push Spectrum-specific operations into a separate file (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_kvdl: Pass entry_count to free function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_kvdl: Pass entry type to alloc/free (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_kvdl: Push out KVD linear management into ops (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_lib: Tighten up VLAN capture (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_actions: Fix helper to get the first KVD linear index (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_actions: Allow the first set to be dummy (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Put pointer to flex action ops to mlxsw_sp (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_keys: Change SRC_SYS_PORT flex key element size (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_keys: Split MAC and IP address flex key elements (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Ignore always-zeroed bits in tp->prio (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Introduce Flex2 key type for PTAR register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Change name of mlxsw_sp_afk_blocks to mlxsw_sp1_afk_blocks (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: avoid uninitialized variable access (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add mlxsw-specific test for mirror to gretap (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Allow importing dependent libraries (Ivan Vecera) [1680241] - [tools] selftests: forwarding: test for bridge port isolation (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL 802.1q (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL 802.1d (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add scale test for resources (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add target for mirror-to-gretap test on spectrum (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add scale test for mirror-to-gretap (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add target for tc flower test on spectrum (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add tc flower scale test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add target for router test on spectrum (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add router test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add devlink KVD resource test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add devlink_lib_spectrum.sh (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add devlink_lib.sh (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Parameterize NUM_NETIFS in two functions (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add check_err_fail() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Allow lib.sh sourcing from other directories (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_changes: Fix waiting for neighbor (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Split out setup_wait_dev() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test multipath tunneling (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_vlan_bridge_1q: Unset rp_filter (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test routed bridge interface (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Ban PVID change if bridge has a RIF (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add mlxsw_sp_rif_fid() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Publish mlxsw_sp_rif_find_by_dev() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Allocate FID according to PVID (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Propagate extack to .fid_get() (Ivan Vecera) [1680241] - [netdrv] net: phy: realtek: Dummy IRQ calls for RTL8366RB (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add generic Realtek PHY driver (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: use new PHYID matching macros (Corinna Vinschen) [1680528] - [include] net: phy: add macros for PHYID matching (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: load driver for all PHYs with a Realtek OUI (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: fix RTL8201F sysfs name (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: Support RTL8366RB variant (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add missing entry for RTL8211C to mdio_device_id table (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add support for RTL8211C (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add missing entry for RTL8211 to mdio_device_id table (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add support for RTL8211 (Corinna Vinschen) [1680528] - [netdrv] r8169: change irq handler to always trigger NAPI polling (Corinna Vinschen) [1680528] - [netdrv] r8169: create function pointer array for chip hw init functions (Corinna Vinschen) [1680528] - [netdrv] r8169: create function pointer array for PHY init functions (Corinna Vinschen) [1680528] - [netdrv] r8169: disable ASPM again (Corinna Vinschen) [1680528] - [netdrv] r8169: disable tx interrupt coalescing on RTL8168 (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: use netif_receive_skb_list batching" (Corinna Vinschen) [1680528] - [netdrv] r8169: use netif_receive_skb_list batching (Corinna Vinschen) [1680528] - [netdrv] r8169: disable default rx interrupt coalescing on RTL8168 (Corinna Vinschen) [1680528] - [netdrv] r8169: fix cable re-plugging issue (Corinna Vinschen) [1680528] - [netdrv] r8169: use netif_start_queue instead of netif_wake_qeueue in rtl8169_start_xmit (Corinna Vinschen) [1680528] - [netdrv] r8169: don't read interrupt mask register in interrupt handler (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded mmiowb barriers (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: make use of xmit_more and __netdev_sent_queue" (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: remove unneeded mmiowb barriers" (Corinna Vinschen) [1680528] - [netdrv] r8169: Avoid pointer aliasing (Corinna Vinschen) [1680528] - [netdrv] r8169: Load MAC address from device tree if present (Corinna Vinschen) [1680528] - [netdrv] r8169: remove rtl_wol_pll_power_down (Corinna Vinschen) [1680528] - [netdrv] r8169: improve WoL handling (Corinna Vinschen) [1680528] - [netdrv] r8169: enable EEE per default on RTL8168f (Corinna Vinschen) [1680528] - [netdrv] r8169: add EEE support for RTL8168f (Corinna Vinschen) [1680528] - [netdrv] r8169: enable EEE per default on chip versions from RTL8168g (Corinna Vinschen) [1680528] - [netdrv] r8169: add general EEE support for chip versions from RTL8168g (Corinna Vinschen) [1680528] - [netdrv] r8169: factor out PHY init sequence adjusting 10M and ALDPS (Corinna Vinschen) [1680528] - [netdrv] r8169: factor out disabling ALDPS (Corinna Vinschen) [1680528] - [netdrv] r8169: improve firmware handling (Corinna Vinschen) [1680528] - [netdrv] r8169: remove PCI DAC support (Corinna Vinschen) [1680528] - [netdrv] r8169: improve rx buffer allocation (Corinna Vinschen) [1680528] - [netdrv] r8169: factor out getting ether_clk (Corinna Vinschen) [1680528] - [netdrv] r8169: replace mii_bus member with phy_device member in struct rtl8169_private (Corinna Vinschen) [1680528] - [netdrv] r8169: reset chip synchronously in __rtl8169_resume (Corinna Vinschen) [1680528] - [netdrv] r8169: add helpers for locking / unlocking the config registers (Corinna Vinschen) [1680528] - [netdrv] r8169: improve rtl_pcie_state_l2l3_enable (Corinna Vinschen) [1680528] - [netdrv] r8169: initialize task workqueue only once (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded call in pcierr (Corinna Vinschen) [1680528] - [netdrv] r8169: remove rtl_get_events (Corinna Vinschen) [1680528] - [netdrv] r8169: load Realtek PHY driver module before r8169 (Corinna Vinschen) [1680528] - [netdrv] r8169: don't try to read counters if chip is in a PCI power-save state (Corinna Vinschen) [1680528] - [netdrv] r8169: Add support for new Realtek Ethernet (Corinna Vinschen) [1680528] - [netdrv] r8169: fix WoL device wakeup enable (Corinna Vinschen) [1680528] - [netdrv] r8169: improve spurious interrupt detection (Corinna Vinschen) [1680528] - [netdrv] r8169: fix crash if CONFIG_DEBUG_SHIRQ is enabled (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded mmiowb barriers (Corinna Vinschen) [1680528] - [netdrv] ethernet/realtek: Replace synchronize_sched() with synchronize_rcu() (Corinna Vinschen) [1680528] - [netdrv] r8169: make use of xmit_more and __netdev_sent_queue (Corinna Vinschen) [1680528] - [netdrv] r8169: replace macro TX_FRAGS_READY_FOR with a function (Corinna Vinschen) [1680528] - [netdrv] r8169: use napi_consume_skb where possible (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify detecting chip versions with same XID (Corinna Vinschen) [1680528] - [netdrv] r8169: remove default chip versions (Corinna Vinschen) [1680528] - [netdrv] r8169: remove ancient GCC bug workaround in a second place (Corinna Vinschen) [1680528] - [netdrv] r8169: improve chip version identification (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify ocp functions (Corinna Vinschen) [1680528] - [netdrv] r8169: remove workaround for ancient gcc bug (Corinna Vinschen) [1680528] - [netdrv] r8169: remove manual padding in struct ring_info (Corinna Vinschen) [1680528] - [netdrv] r8169: remove "not PCI Express" message (Corinna Vinschen) [1680528] - [netdrv] r8169: remove print_mac_version (Corinna Vinschen) [1680528] - [netdrv] r8169: use PCI_VDEVICE macro (Corinna Vinschen) [1680528] - [netdrv] r8169: replace event_slow with irq_mask (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unused interrupt sources (Corinna Vinschen) [1680528] - [netdrv] r8169: use dev_get_drvdata where possible (Corinna Vinschen) [1680528] - [netdrv] r8169: merge rtl_irq_enable and rtl_irq_enable_all (Corinna Vinschen) [1680528] - [pci] PCI: add USR vendor id and use it in r8169 and w6692 driver (Corinna Vinschen) [1680528] - [netdrv] net: ethernet: Convert phydev advertize and supported from u32 to link mode (Corinna Vinschen) [1680528] - [netdrv] r8169: fix broken Wake-on-LAN from S5 (poweroff) (Corinna Vinschen) [1680528] - [netdrv] r8169: add support for Byte Queue Limits (Corinna Vinschen) [1680528] - [netdrv] r8169: handle all interrupt events in the hard irq handler (Corinna Vinschen) [1680528] - [netdrv] r8169: fix NAPI handling under high load (Corinna Vinschen) [1680528] - [netdrv] r8169: re-enable MSI-X on RTL8168g (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded call to netif_stop_queue in rtl8169_net_suspend (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify rtl8169_set_magic_reg (Corinna Vinschen) [1680528] - [netdrv] r8169: Enable MSI-X on RTL8106e (Corinna Vinschen) [1680528] - [netdrv] r8169: set RX_MULTI_EN bit in RxConfig for 8168F-family chips (Corinna Vinschen) [1680528] - [netdrv] r8169: always autoneg on resume (Corinna Vinschen) [1680528] - [netdrv] r8169: fix network stalls due to missing bit TXCFG_AUTO_FIFO (Corinna Vinschen) [1680528] - [netdrv] r8169: Disable clk during suspend / resume (Corinna Vinschen) [1680528] - [netdrv] r8169: improve a check in rtl_init_one (Corinna Vinschen) [1680528] - [netdrv] r8169: improve rtl8169_irq_mask_and_ack (Corinna Vinschen) [1680528] - [netdrv] r8169: use default watchdog timeout (Corinna Vinschen) [1680528] - [netdrv] r8169: fix autoneg issue on resume with RTL8168E (Corinna Vinschen) [1680528] - [netdrv] r8169: remove duplicated RTL8169s PHY initialization steps (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify RTL8169 PHY initialization (Corinna Vinschen) [1680528] - [netdrv] r8169: Get and enable optional ether_clk clock (Corinna Vinschen) [1680528] - [netdrv] r8169: enable ASPM on RTL8106E (Corinna Vinschen) [1680528] - [netdrv] r8169: Align ASPM/CLKREQ setting function with vendor driver (Corinna Vinschen) [1680528] - [netdrv] r8169: Clear RTL_FLAG_TASK_*_PENDING when clearing RTL_FLAG_TASK_ENABLED (Corinna Vinschen) [1680528] - [netdrv] r8169: set TxConfig register after TX / RX is enabled, just like RxConfig (Corinna Vinschen) [1680528] - [netdrv] r8169: don't configure max jumbo frame size per chip version (Corinna Vinschen) [1680528] - [netdrv] r8169: don't configure csum function per chip version (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify interrupt handler (Corinna Vinschen) [1680528] - [netdrv] r8169: don't include asm headers directly (Corinna Vinschen) [1680528] - [netdrv] r8169: remove version info (Corinna Vinschen) [1680528] - [netdrv] r8169: restore previous behavior to accept BIOS WoL settings (Corinna Vinschen) [1680528] - [netdrv] r8169: power down chip in probe (Corinna Vinschen) [1680528] - [netdrv] r8169: don't read chip phy status register (Corinna Vinschen) [1680528] - [netdrv] r8169: remove mii_if_info member from struct rtl8169_private (Corinna Vinschen) [1680528] - [netdrv] r8169: remove rtl8169_set_speed_xmii (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_speed_down / phy_speed_up (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_mii_ioctl (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_ethtool_nway_reset (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_ethtool_(g|s)et_link_ksettings (Corinna Vinschen) [1680528] - [netdrv] r8169: replace open-coded PHY soft reset with genphy_soft_reset (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_resume/phy_suspend (Corinna Vinschen) [1680528] - [netdrv] r8169: add basic phylib support (Corinna Vinschen) [1680528] - [netdrv] r8169: fix runtime suspend (Corinna Vinschen) [1680528] - [netdrv] r8169: remove old PHY reset hack (Corinna Vinschen) [1680528] - [netdrv] r8169: remove TBI 1000BaseX support (Corinna Vinschen) [1680528] - [netdrv] r8169: use standard debug output functions (Corinna Vinschen) [1680528] - [netdrv] r8169: reject unsupported WoL options (Corinna Vinschen) [1680528] - [netdrv] r8169: don't check WoL when powering down PHY and interface is down (Corinna Vinschen) [1680528] - [netdrv] r8169: improve saved_wolopts handling (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: restore previous behavior to accept BIOS WoL settings" (Corinna Vinschen) [1680528] - [netdrv] r8169: improve phy initialization when resuming (Corinna Vinschen) [1680528] - [netdrv] r8169: enable ASPM on RTL8168E-VL (Corinna Vinschen) [1680528] - [netdrv] r8169: align ASPM entry latency setting with vendor driver (Corinna Vinschen) [1680528] - [netdrv] r8169: Reinstate ASPM Support (Corinna Vinschen) [1680528] - [netdrv] r8169: Don't disable ASPM in the driver (Corinna Vinschen) [1680528] - [kernel] kernel/sched/psi.c: expose pressure metrics on root cgroup (Waiman Long) [1678388] - [kernel] psi: introduce psi monitor (Waiman Long) [1678388] - [spi] include/: refactor headers to allow kthread.h inclusion in psi_types.h (Waiman Long) [1678388] - [kernel] psi: track changed states (Waiman Long) [1678388] - [kernel] psi: split update_stats into parts (Waiman Long) [1678388] - [kernel] psi: rename psi fields in preparation for psi trigger addition (Waiman Long) [1678388] - [kernel] psi: make psi_enable static (Waiman Long) [1678388] - [kernel] psi: introduce state_mask to represent stalled psi states (Waiman Long) [1678388] - [kernel] kernel: cgroup: add poll file operation (Waiman Long) [1678388] - [fs] fs: kernfs: add poll file operation (Waiman Long) [1678388] - [documentation] psi: clarify the units used in pressure files (Waiman Long) [1678388] - [kernel] psi: avoid divide-by-zero crash inside virtual machines (Waiman Long) [1678388] - [init] psi: clarify the Kconfig text for the default-disable option (Waiman Long) [1678388] - [kernel] psi: fix aggregation idle shut-off (Waiman Long) [1678388] - [init] psi: fix reference to kernel commandline enable (Waiman Long) [1678388] - [kernel] psi: make disabling/enabling easier for vendor kernels (Waiman Long) [1678388] - [kernel] kernel/sched/psi.c: simplify cgroup_move_task() (Waiman Long) [1678388] - [kernel] psi: cgroup support (Waiman Long) [1678388] - [kernel] psi: pressure stall information for CPU, memory, and IO (Waiman Long) [1678388] - [kernel] sched: introduce this_rq_lock_irq() (Waiman Long) [1678388] - [kernel] sched: sched.h: make rq locking and clock functions available in stats.h (Waiman Long) [1678388] - [kernel] sched: loadavg: make calc_load_n() public (Waiman Long) [1678388] - [kernel] sched: loadavg: consolidate LOAD_INT, LOAD_FRAC, CALC_LOAD (Waiman Long) [1678388] - [kernel] delayacct: track delays from thrashing cache pages (Waiman Long) [1678388] - [mm] mm: workingset: tell cache transitions from workingset thrashing (Waiman Long) [1678388] - [mm] mm: workingset: don't drop refault information prematurely (Waiman Long) [1678388] - [scsi] scsi: ibmvfc: Add failed PRLI to cmd_status lookup array (Diego Domingos) [1665716] - [scsi] scsi: ibmvfc: Byte swap status and error codes when logging (Diego Domingos) [1665716] - [scsi] scsi: ibmvfc: Remove "failed" from logged errors (Diego Domingos) [1665716] - [scsi] scsi: ibmvfc: Clean up transport events (Diego Domingos) [1665716] - [scsi] scsi: ibmvscsi: Don't use rc uninitialized in ibmvscsi_do_work (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: fix tripping of blk_mq_run_hw_queue WARN_ON (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: redo driver work thread to use enum action states (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: Wire up host_reset() in the driver's scsi_host_template (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: change strncpy+truncation to strlcpy (Gustavo Duarte) [1665715] - [fs] ext4: avoid panic during forced reboot due to aborted journal (Lukas Czerner) [1717831] - [fs] ext4: fix use-after-free in dx_release() (Lukas Czerner) [1717831] - [fs] ext4: fix data corruption caused by overlapping unaligned and aligned IO (Lukas Czerner) [1717831] - [fs] ext4: avoid drop reference to iloc.bh twice (Lukas Czerner) [1717831] - [nvme] nvme-tcp: mark NVMe/TCP as a technical preview (Chris Leech) [1696451] - [nvme] nvme-tcp: fix possible null deref on a timed out io queue connect (Chris Leech) [1696451] - [nvme] nvme-tcp: rename function to have nvme_tcp prefix (Chris Leech) [1696451] - [nvme] nvme-tcp: fix a NULL deref when an admin connect times out (Chris Leech) [1696451] - [nvme] nvmet-tcp: don't fail maxr2t greater than 1 (Chris Leech) [1696451] - [nvme] nvmet-tcp: implement C2HData SUCCESS optimization (Chris Leech) [1696451] - [nvme] nvme-tcp: fix an endianess miss-annotation (Chris Leech) [1696451] - [nvme] nvme-tcp: support C2HData with SUCCESS flag (Chris Leech) [1696451] - [nvme] nvme-tcp: use older iov_iter API to fix panic (Chris Leech) [1696451] - [nvme] nvmet: fix building bvec from sg list (Ming Lei) [1690287] - [nvme] nvmet: set loop queue's segment boundary mask as PAGE_SIZE - 1 (Ming Lei) [1690287] - [x86] x86/qspinlock: Fix compile error (Waiman Long) [1709451] - [kernel] locking/rwsem: Prevent unneeded warning during locking selftest (Waiman Long) [1709451] - [kernel] locking/rwsem: Enable lock event counting (Waiman Long) [1709451] - [kernel] locking/lock_events: Don't show pvqspinlock events on bare metal (Waiman Long) [1709451] - [kernel] locking/lock_events: Make lock_events available for all archs & other locks (Waiman Long) [1709451] - [kernel] locking/qspinlock_stat: Introduce generic lockevent_*() counting APIs (Waiman Long) [1709451] - [kernel] locking/rwsem: Enhance DEBUG_RWSEMS_WARN_ON() macro (Waiman Long) [1709451] - [kernel] locking/rwsem: Add debug check for __down_read*() (Waiman Long) [1709451] - [kernel] locking/rwsem: Micro-optimize rwsem_try_read_lock_unqueued() (Waiman Long) [1709451] - [kernel] locking/rwsem: Move rwsem internal function declarations to rwsem-xadd.h (Waiman Long) [1709451] - [kernel] locking/rwsem: Move owner setting code from rwsem.c to rwsem.h (Waiman Long) [1709451] - [kernel] locking/rwsem: Relocate rwsem_down_read_failed() (Waiman Long) [1709451] - [kernel] locking/rwsem: Optimize down_read_trylock() (Waiman Long) [1709451] - [kernel] locking/rwsem: Remove rwsem-spinlock.c & use rwsem-xadd.c for all archs (Waiman Long) [1709451] - [x86] locking/rwsem: Remove arch specific rwsem files (Waiman Long) [1709451] - [kernel] locking/qspinlock: Remove unnecessary BUG_ON() call (Waiman Long) [1709451] - [kernel] locking/qspinlock_stat: Track the no MCS node available case (Waiman Long) [1709451] - [kernel] locking/qspinlock: Handle > 4 slowpath nesting levels (Waiman Long) [1709451] - [kernel] locking/pvqspinlock: Extend node size when pvqspinlock is configured (Waiman Long) [1709451] - [kernel] locking/qspinlock_stat: Count instances of nested lock slowpaths (Waiman Long) [1709451] - [kernel] locking/qspinlock, x86: Provide liveness guarantee (Waiman Long) [1709451] - [kernel] locking/qspinlock: Rework some comments (Waiman Long) [1709451] - [kernel] locking/qspinlock: Re-order code (Waiman Long) [1709451] - [x86] x86/headers: Fix -Wmissing-prototypes warning (Waiman Long) [1709451] - [x86] Revert "x86/refcount: Work around GCC inlining bug" (Waiman Long) [1709451] - [x86] x86/asm: 'Simplify' GEN_*_RMWcc() macros (Waiman Long) [1709451] - [x86] x86/refcount: Work around GCC inlining bug (Waiman Long) [1709451] - [lib] locking/refcounts: Include fewer headers in (Waiman Long) [1709451] - [media] media: stk1160: Set the vb2_queue lock before calling vb2_queue_init (Torez Smith) [1697664] - [usb] USB: typec: fsusb302: Drop empty set_current_limit implementation (Torez Smith) [1697664] - [usb] USB: mark expected switch fall-throughs (Torez Smith) [1697664] - [usb] USB: musb: mark expected switch fall-throughs (Torez Smith) [1697664] - [usb] usb: wusbcore: security: cast sizeof to int for comparison (Torez Smith) [1697664] - [usb] usb: typec: tcpm: Support for Alternate Modes (Torez Smith) [1697664] - [usb] usb: typec: pi3usb30532: Start using generic state values (Torez Smith) [1697664] - [usb] usb: typec: Add driver for DisplayPort alternate mode (Torez Smith) [1697664] - [usb] usb: typec: Bus type for alternate modes (Torez Smith) [1697664] - [usb] usb: typec: Register a device for every mode (Torez Smith) [1697664] - [usb] usb: typec: mux: Get the mux identifier from function parameter (Torez Smith) [1697664] - [usb] usb: update for tcpci drivers moving out of staging (Torez Smith) [1697664] - [netdrv] net: usb: Mark expected switch fall-throughs (Torez Smith) [1697664] - [media] media: tm6000: add error handling for dvb_register_adapter (Torez Smith) [1697664] - [usb] usb: typec: function for checking cable plug orientation (Torez Smith) [1697664] - [include] usb: pd: include kernel.h (Torez Smith) [1697664] - [staging] staging: typec: tcpci: move tcpci drivers out of staging (Torez Smith) [1697664] - [usb] typec: tcpm: add starting value for drp toggling (Torez Smith) [1697664] - [usb] usb: typec: tcpm: support get typec and pd config from device properties (Torez Smith) [1697664] - [usb] usb: typec: add API to get typec basic port power and data config (Torez Smith) [1697664] - [staging] usb: typec: add fwnode to tcpc (Torez Smith) [1697664] - [documentation] dt-bindings: usb: add documentation for typec port controller(TCPCI) (Torez Smith) [1697664] - [documentation] dt-bindings: connector: add properties for typec (Torez Smith) [1697664] - [usb] usb: typec: tps6598x: Remove VLA usage (Torez Smith) [1697664] - [usb] usb: cdc-wdm: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: cdc-wdm: don't enable interrupts in USB-giveback (Torez Smith) [1697664] - [usb] usb: legousbtower: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: ldusb: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: iowarrior: remove intr_idx_lock (Torez Smith) [1697664] - [usb] usb: adutux: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: wusbcore: remove excessive irqsave (Torez Smith) [1697664] - [usb] usb: usb-skeleton: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: usblp: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: usbfs: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: core: use irqsave() in sg_complete() complete callback (Torez Smith) [1697664] - [usb] usb: cdc-acm: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: host: ehci-npcm7xx: Fix some error codes in probe (Torez Smith) [1697664] - [media] media: cx231xx: fix RC_CORE dependency (Torez Smith) [1697664] - [usb] USB: serial: digi_acceleport: rename tty flag variable (Torez Smith) [1697664] - [usb] USB: serial: usb_wwan: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: ti_usb_3410_5052: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: symbolserial: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: sierra: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: sierra: fix potential deadlock at close (Torez Smith) [1697664] - [usb] USB: serial: quatech2: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: mos7840: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: mos7720: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: io_ti: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: io_edgeport: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: digi_acceleport: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: cyberjack: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: chipidea: tegra: Use aligned DMA on Tegra114/124 (Torez Smith) [1697664] - [documentation] dt-bindings: usb: new ehci-npcm7xx dt (Torez Smith) [1697664] - [usb] USB host: Add USB ehci support for nuvoton npcm7xx platform (Torez Smith) [1697664] - [usb] usb: cdc-acm: Decrement tty port's refcount if probe() fail (Torez Smith) [1697664] - [usb] USB: mon: use ktime_get_real_ts64 instead of getnstimeofday64 (Torez Smith) [1697664] - [usb] USB: xhci-hcd: Add get_resuming_ports method (Torez Smith) [1697664] - [usb] USB: ehci-hcd: Add get_resuming_ports method (Torez Smith) [1697664] - [usb] USB: Report wakeup events on root-hub ports (Torez Smith) [1697664] - [usb] USB: serial: cast sizeof() to int when comparing with error code (Torez Smith) [1697664] - [netdrv] net: drivers/net: Convert random_ether_addr to eth_random_addr (Torez Smith) [1697664] - [netdrv] net: usb: rtl8150: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: r8152: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: kaweth: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: hso: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: cdc-phonet: use irqsave() in USB's complete callback (Torez Smith) [1697664]- [net] selftests/tls: add test for sleeping even though there is data (Sabrina Dubroca) [1711821] - [net] tls: fix no wakeup on partial reads (Sabrina Dubroca) [1711821] - [net] selftests/tls: test for lowat overshoot with multiple records (Sabrina Dubroca) [1711821] - [net] tls: fix lowat calculation if some data came from previous record (Sabrina Dubroca) [1711821] - [net] tls: don't ignore netdev notifications if no TLS features (Sabrina Dubroca) [1711821] - [net] tls: fix state removal with feature flags off (Sabrina Dubroca) [1711821] - [net] tls: handle errors from padding_length() (Sabrina Dubroca) [1711821] - [net] tls: avoid NULL pointer deref on nskb->sk in fallback (Sabrina Dubroca) [1711821] - [net] tls: byte swap device req TCP seq no upon setting (Sabrina Dubroca) [1711821] - [net] tls: remove old exports of sk_destruct functions (Sabrina Dubroca) [1711821] - [net] tls: don't log errors every time offload can't proceed (Sabrina Dubroca) [1711821] - [net] tls: fix refcount adjustment in fallback (Sabrina Dubroca) [1711821] - [net] strparser: make it explicitly non-modular (Sabrina Dubroca) [1711821] - [net] strparser: partially revert "strparser: Call skb_unclone conditionally" (Sabrina Dubroca) [1711821] - [net] tls: fix the IV leaks (Sabrina Dubroca) [1711821] - [net] strparser: fix comment (Sabrina Dubroca) [1711821] - [net] tls: prevent false connection termination with offload (Sabrina Dubroca) [1711821] - [net] tls: Replace kfree_skb() with consume_skb() (Sabrina Dubroca) [1711821] - [net] strparser: fix a missing check for create_singlethread_workqueue (Sabrina Dubroca) [1711821] - [net] tls: Fix tls_device receive (Sabrina Dubroca) [1711821] - [net] tls: Fix mixing between async capable and async (Sabrina Dubroca) [1711821] - [net] tls: Return type of non-data records retrieved using MSG_PEEK in recvmsg (Sabrina Dubroca) [1711821] - [net] selftest/tls: Add test to verify received 'type' of non-data record (Sabrina Dubroca) [1711821] - [net] tls: Move protocol constants from cipher context to tls context (Sabrina Dubroca) [1711821] - [net] tls: Do not use async crypto for non-data records (Sabrina Dubroca) [1711821] - [net] tls: Disable async decrytion for tls1.3 (Sabrina Dubroca) [1711821] - [net] tls: Set async_capable for tls zerocopy only if we see EINPROGRESS (Sabrina Dubroca) [1711821] - [net] tls: Add tests for TLS 1.3 (Sabrina Dubroca) [1711821] - [net] tls: Add tls 1.3 support (Sabrina Dubroca) [1711821] - [net] tls: Refactor control message handling on recv (Sabrina Dubroca) [1711821] - [net] tls: Refactor tls aad space size calculation (Sabrina Dubroca) [1711821] - [net] tls: Support 256 bit keys (Sabrina Dubroca) [1711821] - [net] tls: free ctx in sock destruct (Sabrina Dubroca) [1711821] - [net] tls: build_protos moved to common routine (Sabrina Dubroca) [1711821] - [net] tls: Fix recvmsg() to be able to peek across multiple records (Sabrina Dubroca) [1711821] - [net] tls: Make function tls_sw_do_sendpage static (Sabrina Dubroca) [1711821] - [net] tls: remove unused function tls_sw_sendpage_locked (Sabrina Dubroca) [1711821] - [net] Optimize sk_msg_clone() by data merge to end dst sg entry (Sabrina Dubroca) [1711821] - [net] selftests/tls: Fix recv partial/large_buff test cases (Sabrina Dubroca) [1711821] - [net] tls: allocate tls context using GFP_ATOMIC (Sabrina Dubroca) [1711821] - [net] tls: Init routines in create_ctx (Sabrina Dubroca) [1711821] - [net] selftests/tls: Fix recv(MSG_PEEK) & splice() test cases (Sabrina Dubroca) [1711821] - [net] tls: fix currently broken MSG_PEEK behavior (Sabrina Dubroca) [1711821] - [net] selftests/tls: Add MSG_WAITALL in recv() syscall (Sabrina Dubroca) [1711821] - [net] tls: async support causes out-of-bounds access in crypto APIs (Sabrina Dubroca) [1711821] - [net] selftests/tls: Add test for recv(PEEK) spanning across multiple records (Sabrina Dubroca) [1711821] - [net] tls: Add support for async decryption of tls records (Sabrina Dubroca) [1711821] - [net] tls: Calculate nsg for zerocopy path without skb_cow_data (Sabrina Dubroca) [1711821] - [net] strparser: remove redundant variable 'rd_desc' (Sabrina Dubroca) [1711821] - [net] tls: Use kmemdup to simplify the code (Sabrina Dubroca) [1711821] - [net] tls: Use socket data_ready callback on record availability (Sabrina Dubroca) [1711821] - [net] selftests: tls: add selftests for TLS sockets (Sabrina Dubroca) [1711821] - [net] strparser: Call skb_unclone conditionally (Sabrina Dubroca) [1711821] - [net] tls: Remove VLA usage on nonce (Sabrina Dubroca) [1711821] - [net] tls: Removed unused variable (Sabrina Dubroca) [1711821] - [netdrv] veth: use generic helper to report timestamping info (Jiri Benc) [1718938] - [netdrv] veth: Fix -Wformat-truncation (Jiri Benc) [1718938] - [netdrv] veth: Mark expected switch fall-throughs (Jiri Benc) [1718938] - [net] Add extack argument to rtnl_create_link (Jiri Benc) [1718938] - [netdrv] veth: Add ethtool statistics support for XDP (Jiri Benc) [1718938] - [netdrv] veth: Account for XDP packet statistics on rx side (Jiri Benc) [1718938] - [netdrv] veth: Account for packet drops in ndo_xdp_xmit (Jiri Benc) [1718938] - [netdrv] veth: rename pcpu_vstats as pcpu_lstats (Jiri Benc) [1718938] - [netdrv] net: move definition of pcpu_lstats to header file (Jiri Benc) [1718938] - [netdrv] veth: add software timestamping (Jiri Benc) [1718938] - [net] tcp: tcp_grow_window() needs to respect tcp_space() (Marcelo Leitner) [1718344] - [net] tcp: fix a potential NULL pointer dereference in tcp_sk_exit (Marcelo Leitner) [1718344] - [net] tcp: do not use ipv6 header for ipv4 flow (Marcelo Leitner) [1718344] - [net] tcp: Don't access TCP_SKB_CB before initializing it (Marcelo Leitner) [1718344] - [net] tcp: do not report TCP_CM_INQ of 0 for closed connections (Marcelo Leitner) [1718344] - [net] tcp: clear icsk_backoff in tcp_write_queue_purge() (Marcelo Leitner) [1718344] - [net] tcp: allow MSG_ZEROCOPY transmission also in CLOSE_WAIT state (Marcelo Leitner) [1718344] - [net] tcp: change txhash on SYN-data timeout (Marcelo Leitner) [1718344] - [net] tcp: lack of available data can also cause TSO defer (Marcelo Leitner) [1718344] - [net] tcp: fix NULL ref in tail loss probe (Marcelo Leitner) [1718344] - [net] tcp: Do not underestimate rwnd_limited (Marcelo Leitner) [1718344] - [net] tcp: defer SACK compression after DupThresh (Marcelo Leitner) [1718344] - [net] tcp: do not release socket ownership in tcp_close() (Marcelo Leitner) [1718344] - [net] tcp: Fix SOF_TIMESTAMPING_RX_HARDWARE to use the latest timestamp during TCP coalescing (Marcelo Leitner) [1718344] - [net] inet: make sure to grab rcu_read_lock before using ireq->ireq_opt (Marcelo Leitner) [1718344] - [net] tcp/dccp: fix lockdep issue when SYN is backlogged (Marcelo Leitner) [1718344] - [net] xfrm4: Fix uninitialized memory read in _decode_session4 (Sabrina Dubroca) [1718812] - [net] esp4: add length check for UDP encapsulation (Sabrina Dubroca) [1718812] - [net] xfrm: clean up xfrm protocol checks (Sabrina Dubroca) [1718812] - [net] xfrm6_tunnel: Fix potential panic when unloading xfrm6_tunnel module (Sabrina Dubroca) [1718812] - [net] xfrm: Reset secpath in xfrm failure (Sabrina Dubroca) [1718812] - [net] xfrm: policy: Fix out-of-bound array accesses in __xfrm_policy_unlink (Sabrina Dubroca) [1718812] - [net] xfrm: destroy xfrm_state synchronously on net exit path (Sabrina Dubroca) [1718812] - [net] esp: Skip TX bytes accounting when sending from a request socket (Sabrina Dubroca) [1718812] - [net] xfrm: refine validation of template and selector families (Sabrina Dubroca) [1718812] - [net] xfrm: policy: increment xfrm_hash_generation on hash rebuild (Sabrina Dubroca) [1718812] - [net] xfrm6_tunnel: Fix spi check in __xfrm6_tunnel_alloc_spi (Sabrina Dubroca) [1718812] - [net] xfrm_user: fix freeing of xfrm states on acquire (Sabrina Dubroca) [1718812] - [net] xfrm: Fix NULL pointer dereference in xfrm_input when skb_dst_force clears the dst_entry (Sabrina Dubroca) [1718812] - [net] xfrm: Fix error return code in xfrm_output_one() (Sabrina Dubroca) [1718812] - [net] vti4: eliminated some duplicate code (Guillaume Nault) [1718443] - [net] vti4: removed duplicate log message (Guillaume Nault) [1718443] - [net] vti4: ipip tunnel deregistration fixes (Guillaume Nault) [1718443] - [net] vti4: Fix a ipip packet processing bug in 'IPCOMP' virtual tunnel (Guillaume Nault) [1718443] - [net] fou: do not use guehdr after iptunnel_pull_offloads in gue_udp_recv (Guillaume Nault) [1718443] - [netdrv] vxlan: test dev->flags & IFF_UP before calling gro_cells_receive() (Guillaume Nault) [1718443] - [netdrv] vxlan: test dev->flags & IFF_UP before calling netif_rx() (Guillaume Nault) [1718443] - [net] devlink: turn devlink into a built-in (Petr Oros) [1717458] - [net] ipv6: fix EFAULT on sendto with icmpv6 and hdrincl (Stefano Brivio) [1718503] - [net] ipv6: use READ_ONCE() for inet->hdrincl as in ipv4 (Stefano Brivio) [1718503] - [net] ipv6: Fix redirect with VRF (Stefano Brivio) [1718503] - [net] ipv6: Consider sk_bound_dev_if when binding a raw socket to an address (Stefano Brivio) [1718503] - [net] ipv6: prevent possible fib6 leaks (Stefano Brivio) [1718503] - [net] vrf: sit mtu should not be updated when vrf netdev is the link (Stefano Brivio) [1718503] - [net] ipv6: A few fixes on dereferencing rt->from (Stefano Brivio) [1718503] - [tools] selftests: fib_rule_tests: Fix icmp proto with ipv6 (Stefano Brivio) [1718503] - [net] ipv6: fix races in ip6_dst_destroy() (Stefano Brivio) [1718503] - [net] ipv6/flowlabel: wait rcu grace period before put_pid() (Stefano Brivio) [1718503] - [net] ipv6: invert flowlabel sharing check in process and user mode (Stefano Brivio) [1718503] - [net] route: Avoid crash from dereferencing NULL rt->from (Stefano Brivio) [1718503] - [net] udpv6: Check address length before reading address family (Stefano Brivio) [1718503] - [net] ip6_gre: fix possible use-after-free in ip6erspan_rcv (Stefano Brivio) [1718503] - [net] ip6_gre: remove gre_hdr_len from ip6erspan_rcv (Stefano Brivio) [1718503] - [net] ipv6: Fix dangling pointer when ipv6 fragment (Stefano Brivio) [1718503] - [net] ip6_tunnel: Match to ARPHRD_TUNNEL6 for dev type (Stefano Brivio) [1718503] - [net] inet: switch IP ID generator to siphash (Stefano Brivio) [1718503] - [net] sit: fix UBSAN Undefined behaviour in check_6rd (Stefano Brivio) [1718503] - [net] ip6mr: Do not call __IP6_INC_STATS() from preemptible context (Stefano Brivio) [1718503] - [net] sit: fix memory leak in sit_init_net() (Stefano Brivio) [1718503] - [net] ipv4: Add ICMPv6 support when parse route ipproto (Stefano Brivio) [1718503] - [net] ipv6: Return error for RTA_VIA attribute (Stefano Brivio) [1718503] - [net] Set rtm_table to RT_TABLE_COMPAT for ipv6 for tables > 255 (Stefano Brivio) [1718503] - [net] ip6_gre: do not report erspan_ver for ip6gre or ip6gretap (Stefano Brivio) [1718503] - [net] ipv6: route: enforce RCU protection in rt6_update_exception_stamp_rt() (Stefano Brivio) [1718503] - [net] ipv6: route: enforce RCU protection in ip6_route_check_nh_onlink() (Stefano Brivio) [1718503] - [net] ipv6: propagate genlmsg_reply return code (Stefano Brivio) [1718503] - [net] fix IPv6 prefix route residue (Stefano Brivio) [1718503] - [net] ip6mr: Fix notifiers call on mroute_clean_tables() (Stefano Brivio) [1718503] - [net] af_packet: fix raw sockets over 6in4 tunnel (Stefano Brivio) [1718503] - [net] ip6_gre: fix tunnel list corruption for x-netns (Stefano Brivio) [1718503] - [net] ipv6: fix kernel-infoleak in ipv6_local_error() (Stefano Brivio) [1718503] - [net] ip: on queued skb use skb_header_pointer instead of pskb_may_pull (Stefano Brivio) [1718503] - [net] ipv4: fix use-after-free in ip_cmsg_recv_dstaddr() (Stefano Brivio) [1718503] - [net] ipv6: Take rcu_read_lock in __inet6_bind for mapped addresses (Stefano Brivio) [1718503] - [net] ipv6: Consider sk_bound_dev_if when binding a socket to a v4 mapped address (Stefano Brivio) [1718503] - [net] ipv6: Consider sk_bound_dev_if when binding a socket to an address (Stefano Brivio) [1718503] - [net] ip: validate header length on virtual device xmit (Stefano Brivio) [1718503] - [net] ipv6: Fix a test against 'ipv6_find_idev()' return value (Stefano Brivio) [1718503] - [net] ipv6: tunnels: fix two use-after-free (Stefano Brivio) [1718503] - [net] ipv6: add missing tx timestamping on IPPROTO_RAW (Stefano Brivio) [1718503] - [net] clear skb->tstamp in forwarding paths (Stefano Brivio) [1718503] - [net] ipv6: sr: properly initialize flowi6 prior passing to ip6_route_output (Stefano Brivio) [1718503] - [net] always initialize pagedlen (Stefano Brivio) [1718503] - [net] ipv6: Fix PMTU updates for UDP/raw sockets in presence of VRF (Stefano Brivio) [1718503] - [net] ipv6: gro: do not use slow memcmp() in ipv6_gro_receive() (Stefano Brivio) [1718503] - [net] xfrm: fix out-of-bounds packet access (Stefano Brivio) [1718503] - [net] ipv6: take rcu lock in rawv6_send_hdrinc() (Stefano Brivio) [1718503] - [net] ip6_tunnel: be careful when accessing the inner header (Stefano Brivio) [1718503] - [net] revert "ipv6: fix double refcount of fib6_metrics" (Stefano Brivio) [1718503] - [net] ipv6: fix memory leak on dst->_metrics (Stefano Brivio) [1718503] - [net] ipv6: fix cleanup ordering for ip6_mr failure (Stefano Brivio) [1718503] - [net] ipv6: fix cleanup ordering for pingv6 registration (Stefano Brivio) [1718503] - [net] ip6_tunnel: collect_md xmit: Use ip_tunnel_key's provided src address (Stefano Brivio) [1718503] - [net] ipv6: fix addrconf_sysctl_addr_gen_mode (Stefano Brivio) [1718503] - [net] ipv6: don't reinitialize ndev->cnf.addr_gen_mode on new inet6_dev (Stefano Brivio) [1718503] - [net] ipv6: reserve room for IFLA_INET6_ADDR_GEN_MODE (Stefano Brivio) [1718503] - [net] ipv6: propagate net.ipv6.conf.all.addr_gen_mode to devices (Stefano Brivio) [1718503] - [net] openvswitch: check for null pointer return from nla_nest_start_noflag (Stefano Brivio) [1718408] - [net] openvswitch: add seqadj extension when NAT is used (Stefano Brivio) [1718408] - [net] netfilter: Replace spin_is_locked() with lockdep (Stefano Brivio) [1718392] - [net] netfilter: ipset: do not call ipset_nest_end after nla_nest_cancel (Stefano Brivio) [1718392] - [net] netfilter: ipset: Fix calling ip_set() macro at dumping (Stefano Brivio) [1718392] - [include] netfilter: ipset: Correct rcu_dereference() call in ip_set_put_comment() (Stefano Brivio) [1718392] - [net] netfilter: ipset: fix ip_set_list allocation failure (Stefano Brivio) [1718392] - [net] netfilter: ipset: Make invalid MAC address checks consistent (Stefano Brivio) [1649087] - [net] netfilter: ipset: Allow matching on destination MAC address for mac and ipmac sets (Stefano Brivio) [1649087] - [netdrv] rocker: Handle SWITCHDEV_PORT_ATTR_SET (Ivan Vecera) [1717892] - [net] switchdev: Add SWITCHDEV_PORT_ATTR_SET (Ivan Vecera) [1717892] - [netdrv] rocker: Add missing break for PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [net] bridge: Stop calling switchdev_port_attr_get() (Ivan Vecera) [1717892] - [netdrv] rocker: Check Handle PORT_PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [netdrv] mlxsw: spectrum: Handle PORT_PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [include] net: switchdev: Add PORT_PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [netdrv] rocker: Remove port_attr_bridge_flags_get assignment (Ivan Vecera) [1717892] - [netdrv] rocker: Remove getting PORT_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [net] pktgen: do not sleep with the thread lock held (Paolo Abeni) [1715575] - [include] ipv6: fix the check before getting the cookie in rt6_get_cookie (Xin Long) [1709166] - [net] ipv4: not do cache for local delivery if bc_forwarding is enabled (Xin Long) [1712657] - [net] sctp: avoid running the sctp state machine recursively (Xin Long) [1717316] - [netdrv] netdevsim: use skb_sec_path helper (Hangbin Liu) [1711810] - [netdrv] netdevsim: convert to DEFINE_SHOW_ATTRIBUTE (Hangbin Liu) [1711810] - [netdrv] netdevsim: make debug dirs' dentries static (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink: use internal netns switch for ip commands (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink: add testcases for vxlan flag sets (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink: Add a test case for multipath route get (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink.sh: add testcase for neigh get (Hangbin Liu) [1711810] - [tools] selftests: net: rtnetlink.sh: add fdb get test (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink.sh explicitly requires bash (Hangbin Liu) [1711810] - [net] udp: with udp_segment release on error path (Paolo Abeni) [1718079] - [net] ipv6: explicitly initialize udp6_addr in udp_sock_create6() (Paolo Abeni) [1718079] - [netdrv] geneve: Don't assume linear buffers in vxlan_err_lookup() (Stefano Brivio) [1652222] - [netdrv] vxlan: Don't assume linear buffers in vxlan_err_lookup() (Stefano Brivio) [1652222] - [netdrv] geneve: Initialize addr6 with memset (Stefano Brivio) [1652222] - [net] ip_tunnel: don't force DF when MTU is locked (Stefano Brivio) [1652222] - [netdrv] geneve: ICMP error lookup handler (Stefano Brivio) [1652222] - [netdrv] vxlan: ICMP error lookup handler (Stefano Brivio) [1652222] - [net] udp: Handle ICMP errors for tunnels with same destination port on both endpoints (Stefano Brivio) [1652222] - [net] udp: gro behind static key (Stefano Brivio) [1652222] - [net] bpf: in __bpf_redirect_no_mac pull mac only if present (Jiri Benc) [1687471] - [net] lwt_bpf: remove unnecessary rcu_read_lock in run_lwt_bpf (Jiri Benc) [1687471] - [net] bpf: add End.DT6 action to bpf_lwt_seg6_action helper (Jiri Benc) [1687471] - [net] bpf: fix out-of-bounds read in __bpf_skc_lookup (Jiri Benc) [1687459] - [net] bpf: Check sk_fullsock() before returning from bpf_sk_lookup() (Jiri Benc) [1687459] - [net] flow_dissector: disable preemption around BPF calls (Jiri Benc) [1687459] - [net] bpf: sockmap, only stop/flush strp if it was enabled at some point (Jiri Benc) [1687459] - [net] bpf: Stop the psock parser before canceling its work (Jiri Benc) [1687459] - [net] bpf: only test gso type on gso packets (Jiri Benc) [1687459] - [tools] selftests: add dummy xdp test helper (Jiri Benc) [1687459] - [net] filter: mark expected switch fall-through (Jiri Benc) [1687459] - [documentation] Update references to netdev-FAQ (Jiri Benc) [1687459] - [net] bpfilter: remove trailing newline (Jiri Benc) [1687459] - [net] core: filter: mark expected switch fall-through (Jiri Benc) [1687459] - [net] revert "xsk: simplify AF_XDP socket teardown" (Jiri Benc) [1687459] - [net] bpf/test_run: fix unkillable BPF_PROG_TEST_RUN (Jiri Benc) [1687459] - [net] xsk: share the mmap_sem for page pinning (Jiri Benc) [1687459] - [net] xsk: add missing smp_rmb() in xsk_mmap (Jiri Benc) [1687459] - [net] bpf: only adjust gso_size on bytestream protocols (Jiri Benc) [1687459] - [net] sk_msg: Always cancel strp work before freeing the psock (Jiri Benc) [1687459] - [net] bpf: sock recvbuff must be limited by rmem_max in bpf_setsockopt() (Jiri Benc) [1687459] - [net] bpf: fix SO_MAX_PACING_RATE to support TCP internal pacing (Jiri Benc) [1687459] - [net] bpf: bpf_setsockopt: reset sock dst on SO_MARK changes (Jiri Benc) [1687459] - [net] bpf: correctly set initial window on active Fast Open sender (Jiri Benc) [1687459] - [net] xsk: simplify AF_XDP socket teardown (Jiri Benc) [1687459] - [net] bpf: fix doc of bpf_skb_adjust_room() in uapi (Jiri Benc) [1687459] - [net] bpf: do not blindly change rlimit in reuseport net selftest (Jiri Benc) [1687459] - [net] xsk: proper AF_XDP socket teardown ordering (Jiri Benc) [1687459] - [net] bpf: typo fix in Documentation/networking/af_xdp.rst (Jiri Benc) [1687459] - [net] xdp: split code for map vs non-map redirect (Jiri Benc) [1687459] - [net] xdp: explicit inline __xdp_map_lookup_elem (Jiri Benc) [1687459] - [net] xdp: unlikely instrumentation for xdp map redirect (Jiri Benc) [1687459] - [net] xdp: remove redundant variable 'headroom' (Jiri Benc) [1687459] - [net] xsk: include XDP meta data in AF_XDP frames (Jiri Benc) [1687459] - [net] bpf: Enable BPF_PROG_TYPE_SK_REUSEPORT bpf prog in reuseport selection (Jiri Benc) [1687459] - [net] revert "xdp: add NULL pointer check in __xdp_return()" (Jiri Benc) [1687459] - [lib] test_rhashtable: Make test_insert_dup() allocate its hash table dynamically (Jiri Benc) [1717066] - [lib] test_rhashtable: remove semaphore usage (Jiri Benc) [1717066] - [lib] rhashtable: detect when object movement between tables might have invalidated a lookup (Jiri Benc) [1717066] - [lib] rhashtable: remove duplicated include from rhashtable.c (Jiri Benc) [1717066] - [lib] rhashtable: clean up dereference of ->future_tbl (Jiri Benc) [1717066] - [lib] rhashtable: use cmpxchg() to protect ->future_tbl (Jiri Benc) [1717066] - [lib] rhashtable: simplify nested_table_alloc() and rht_bucket_nested_insert() (Jiri Benc) [1717066] - [lib] rhashtable: simplify INIT_RHT_NULLS_HEAD() (Jiri Benc) [1717066] - [lib] rhashtable: remove nulls_base and related code (Jiri Benc) [1717066] - [lib] rhashtable: split rhashtable.h (Jiri Benc) [1717066] - [lib] rhashtable: silence RCU warning in rhashtable_test (Jiri Benc) [1717066] - [net] devlink: publish params only after driver init is done (Ivan Vecera) [1715929] - [net] iptunnel: NULL pointer deref for ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_gre: Refactor collect metatdata mode tunnel xmit to ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_tunnel: Fix route fl4 init in ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_tunnel: Add tnl_update_pmtu in ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_tunnel: Add ip tunnel dst_cache in ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] vlan: Mark expected switch fall-through (Hangbin Liu) [1664359] - [net] vlan: disable SIOCSHWTSTAMP in container (Hangbin Liu) [1664359] - [netdrv] macvlan: Mark expected switch fall-through (Hangbin Liu) [1664359] - [netdrv] macvlan: disable SIOCSHWTSTAMP in container (Hangbin Liu) [1664359] - [netdrv] macvlan: pass get_ts_info and SIOC[SG]HWTSTAMP ioctl to real device (Hangbin Liu) [1664359] - [net] ethtool: add compat for flash update (Petr Oros) [1708339] - [net] devlink: add flash update command (Petr Oros) [1708339] - [net] devlink: Fix list access without lock while reading region (Petr Oros) [1708339] - [net] devlink: Return right error code in case of errors for region read (Petr Oros) [1708339] - [net] devlink: use direct return of genlmsg_reply (Petr Oros) [1708339] - [net] devlink: Rename devlink health attributes (Petr Oros) [1709874] - [net] devlink: Modify reply of DEVLINK_CMD_HEALTH_REPORTER_GET (Petr Oros) [1709874] - [net] devlink: Update reporter state to error even if recover aborted (Petr Oros) [1709874] - [documentation] devlink: Add Documentation/networking/devlink-health.txt (Petr Oros) [1709874] - [net] devlink: Add health dump {get, clear} commands (Petr Oros) [1709874] - [net] devlink: Add health diagnose command (Petr Oros) [1709874] - [net] devlink: Add health recover command (Petr Oros) [1709874] - [net] devlink: Add health set command (Petr Oros) [1709874] - [net] devlink: Add health get command (Petr Oros) [1709874] - [net] devlink: Add health report functionality (Petr Oros) [1709874] - [net] devlink: Add health reporter create/destroy functionality (Petr Oros) [1709874] - [net] devlink: Add devlink formatted message (fmsg) API (Petr Oros) [1709874] - [net] devlink: add hardware errors tracing facility (Petr Oros) [1709874] - [net] cnb: devlink: report cell size of shared buffers (Petr Oros) [1708348] - [net] devlink: skip info_get op call if it is not defined in dumpit (Petr Oros) [1708342] - [include] devlink: add a generic board.manufacture version name (Petr Oros) [1708342] - [net] devlink: don't allocate attrs on the stack (Petr Oros) [1708342] - [net] devlink: fix condition for compat device info (Petr Oros) [1708342] - [net] ethtool: add compat for devlink info (Petr Oros) [1708342] - [include] devlink: add generic info version names (Petr Oros) [1708342] - [net] devlink: add version reporting to devlink info API (Petr Oros) [1708342] - [net] devlink: add device information API (Petr Oros) [1708342] - [net] devlink: Add devlink notifications support for port params (Petr Oros) [1710228] - [net] devlink: Add support for driverinit set value for devlink_port (Petr Oros) [1710228] - [net] devlink: Add support for driverinit get value for devlink_port (Petr Oros) [1710228] - [net] devlink: Add port param set command (Petr Oros) [1710228] - [net] devlink: Add port param get command (Petr Oros) [1710228] - [net] devlink: Add devlink_param for port register and unregister (Petr Oros) [1710228] - [net] ipv6: properly check return value in inet6_dump_all() (Petr Oros) [1714656] - [net] Don't return invalid table id error when dumping all families (Petr Oros) [1714656] - [net] ipmr_base: Do not reset index in mr_table_dump (Petr Oros) [1714656] - [net] ipv6: Fix dump of specific table with strict checking (Petr Oros) [1714656] - [net] ipv4: avoid compile error in fib_info_nh_uses_dev (Petr Oros) [1714656] - [net] ipv4: Bail early if user only wants prefix entries (Petr Oros) [1714656] - [net] ipv6: Bail early if user only wants cloned entries (Petr Oros) [1714656] - [net] mpls: Handle kernel side filtering of route dumps (Petr Oros) [1714656] - [net] Enable kernel side filtering of route dumps (Petr Oros) [1714656] - [net] Plumb support for filtering ipv4 and ipv6 multicast route dumps (Petr Oros) [1714656] - [net] ipmr: Refactor mr_rtm_dumproute (Petr Oros) [1714656] - [net] mpls: Plumb support for filtering route dumps (Petr Oros) [1714656] - [net] ipv6: Plumb support for filtering route dumps (Petr Oros) [1714656] - [net] netfilter: nft_fib: Convert nft_fib4_eval to new dev helper (Petr Oros) [1714656] - [net] netfilter: rpfilter: Convert rpfilter_lookup_reverse to new dev helper (Petr Oros) [1714656] - [net] ipv4: Move device validation to helper (Petr Oros) [1714656] - [net] ipv4: Plumb support for filtering route dumps (Petr Oros) [1714656] - [net] Add struct for fib dump filter (Petr Oros) [1714656] - [lib] iov_iter: Fix build error without CONFIG_CRYPTO (Ivan Vecera) [1714213] - [net] datagram: introduce skb_copy_and_hash_datagram_iter helper (Ivan Vecera) [1714213] - [lib] iov_iter: introduce hash_and_copy_to_iter helper (Ivan Vecera) [1714213] - [net] datagram: consolidate datagram copy to iter helpers (Ivan Vecera) [1714213] - [lib] iov_iter: pass void csum pointer to csum_and_copy_to_iter (Ivan Vecera) [1714213] - [net] datagram: open-code copy_page_to_iter (Ivan Vecera) [1714213] - [include] net: enable mpls_ptr in net_device (Hangbin Liu) [1350011] - [net] netfilter: ipset: actually allow allowable CIDR 0 in hash:net, port, net (Stefano Brivio) [1680512] - [net] netfilter: ipset: fix ip_set_byindex function (Stefano Brivio) [1680512] - [net] netfilter: ipset: Introduction of new commands and protocol version 7 (Stefano Brivio) [1680512] - [net] ipv6: don't return positive numbers when nothing was dumped (Petr Oros) [1700306] - [net] rtnetlink: restore handling of dumpit return value in rtnl_dump_all() (Petr Oros) [1700306] - [net] netlink: fixup regression in RTM_GETADDR (Petr Oros) [1700306] - [net] {ipv4, ipv6}: Do not put target net if input nsid is invalid (Petr Oros) [1700306] - [net] rtnl_dump_all needs to propagate error from dumpit function (Petr Oros) [1700306] - [net] rtnetlink: Move ifm in valid_fdb_dump_legacy to closer to use (Petr Oros) [1700306] - [net] neighbor: NTF_PROXY is a valid ndm_flag for a dump request (Petr Oros) [1700306] - [net] mpls: Implement handler for strict data checking on dumps (Petr Oros) [1700306] - [net] rtnetlink: Update comment in rtnl_stats_dump regarding strict data checking (Petr Oros) [1700306] - [net] ipv6: Put target net when address dump fails due to bad attributes (Petr Oros) [1700306] - [net] ipv4: Put target net when address dump fails due to bad attributes (Petr Oros) [1700306] - [tools] headers uapi: Update linux/netlink.h header copy (Petr Oros) [1700306] - [net] neigh: fix NULL deref in pneigh_dump_table() (Petr Oros) [1700306] - [net] ipv6: Add support for dumping addresses for a specific device (Petr Oros) [1700306] - [net] ipv4: Add support for dumping addresses for a specific device (Petr Oros) [1700306] - [net] ipv6: Remove ip_idx arg to in6_dump_addrs (Petr Oros) [1700306] - [net] ipv4: Move loop over addresses on a device into in_dev_dump_addr (Petr Oros) [1700306] - [net] netlink: Add answer_flags to netlink_callback (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_fdb_dump for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Move input checking for rtnl_fdb_dump to helper (Petr Oros) [1700306] - [net] bridge: Update br_mdb_dump for strict data checking (Petr Oros) [1700306] - [net] Update netconf dump handlers for strict data checking (Petr Oros) [1700306] - [net] ipv6: Update ip6addrlbl_dump for strict data checking (Petr Oros) [1700306] - [net] fib_rules: Update fib_nl_dumprule for strict data checking (Petr Oros) [1700306] - [net] namespace: Update rtnl_net_dumpid for strict data checking (Petr Oros) [1700306] - [net] neighbor: Update neightbl_dump_info for strict data checking (Petr Oros) [1700306] - [net] neighbor: Update neigh_dump_info for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update fib dumps for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update ipmr_rtm_dumplink for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update inet6_dump_ifinfo for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_stats_dump for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_bridge_getlink for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_dump_ifinfo for strict data checking (Petr Oros) [1700306] - [net] ipv6: Update inet6_dump_addr for strict data checking (Petr Oros) [1700306] - [net] ipv4: Update inet_dump_ifaddr for strict data checking (Petr Oros) [1700306] - [net] netlink: Add new socket option to enable strict checking on dumps (Petr Oros) [1700306] - [net] ipv6: Refactor address dump to push inet6_fill_args to in6_dump_addrs (Petr Oros) [1700306] - [lib] netlink: Add strict version of nlmsg_parse and nla_parse (Petr Oros) [1700306] - [net] Add extack to nlmsg_parse (Petr Oros) [1700306] - [include] netlink: Add extack message to nlmsg_parse for invalid header length (Petr Oros) [1700306] - [net] netlink: Pass extack to dump handlers (Petr Oros) [1700306] - [net] neigh: Extend dump filter to proxy neighbor dumps (Petr Oros) [1700306] - [lib] netlink: add nested array policy validation (Petr Oros) [1700306] - [lib] netlink: allow NLA_NESTED to specify nested policy to validate (Petr Oros) [1700306] - [lib] netlink: move extack setting into validate_nla() (Petr Oros) [1700306] - [lib] netlink: make validation_data const (Petr Oros) [1700306] - [lib] netlink: remove NLA_NESTED_COMPAT (Petr Oros) [1700306] - [lib] netlink: add ethernet address policy types (Petr Oros) [1700306] - [net] sched: cls_u32: add res to offload information (Ivan Vecera) [1711377] - [net] sched: gred: support reporting stats from offloads (Ivan Vecera) [1711377] - [net] sched: gred: add basic Qdisc offload (Ivan Vecera) [1711377] - [net] sched: gred: allow manipulating per-DP RED flags (Ivan Vecera) [1711377] - [net] sched: gred: store red flags per virtual queue (Ivan Vecera) [1711377] - [net] sched: gred: provide a better structured dump and expose stats (Ivan Vecera) [1711377] - [net] sched: gred: store bytesin as a 64 bit value (Ivan Vecera) [1711377] - [net] sched: gred: use extack to provide more details on configuration errors (Ivan Vecera) [1711377] - [net] sched: gred: pass extack to nla_parse_nested() (Ivan Vecera) [1711377] - [net] sched: gred: separate error and non-error path in gred_change() (Ivan Vecera) [1711377] - [net] netlink: add NLA_REJECT policy type (Ivan Vecera) [1711377] - [lib] netlink: Return extack message if attribute validation fails (Ivan Vecera) [1711377] - [net] sched: red: notify drivers about RED's limit parameter (Ivan Vecera) [1711039] - [net] sched: mq: offload a graft notification (Ivan Vecera) [1711039] - [net] sched: red: offload a graft notification (Ivan Vecera) [1711039] - [net] sched: provide notification for graft on root (Ivan Vecera) [1711039] - [net] sched: prio: delay destroying child qdiscs on change (Ivan Vecera) [1711039] - [net] sched: red: delay destroying child qdisc on replace (Ivan Vecera) [1711039] - [net] sched: refactor grafting Qdiscs with a parent (Ivan Vecera) [1711039] - [net] sched: add an offload graft helper (Ivan Vecera) [1711039] - [net] sched: set TCQ_F_OFFLOADED flag for MQ (Ivan Vecera) [1711039] - [net] sched: red: remove unnecessary red_dump_offload_stats parameter (Ivan Vecera) [1711039] - [net] sched: add an offload dump helper (Ivan Vecera) [1711039] - [netdrv] netdevsim: Implement ndo_get_port_parent_id() (Ivan Vecera) [1708368] - [netdrv] rocker: Implement ndo_get_port_parent_id() (Ivan Vecera) [1708368] - [net] Introduce ndo_get_port_parent_id() (Ivan Vecera) [1708368] - [net] use indirect calls helpers at early demux stage (Paolo Abeni) [1700747] - [net] use indirect calls helpers for L3 handler hooks (Paolo Abeni) [1700747] - [net] use indirect calls helpers at the socket layer (Paolo Abeni) [1700747] - [net] use indirect calls helpers for ptype hook (Paolo Abeni) [1700747] - [net] add documentation to socket.c (Paolo Abeni) [1700747] - [net] udp: use indirect call wrappers for GRO socket lookup (Paolo Abeni) [1700747] - [net] use indirect call wrappers at GRO transport layer (Paolo Abeni) [1700747] - [net] use indirect call wrappers at GRO network layer (Paolo Abeni) [1700747] - [net] indirect call wrappers: helpers to speed-up indirect calls of builtin (Paolo Abeni) [1700747] - [powerpc] powerpc: bpf: Fix generation of load/store DW instructions (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: propagate liveness on all frames (Yauheni Kaliuta) [1700846] - [net] bpf: do not restore dst_reg when cur_state is freed (Yauheni Kaliuta) [1700846] - [tools] tools lib bpf: Fix the build by adding a missing stdarg.h include (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: fix version info and add it to shared object (Yauheni Kaliuta) [1700846] - [tools] btf: fix bug with resolving STRUCT/UNION into corresponding FWD (Yauheni Kaliuta) [1700846] - [tools] tools/libbpf: signedness bug in btf_dedup_ref_type() (Yauheni Kaliuta) [1700846] - [tools] libbpf: fix libbpf_print (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: simplify libbpf API function libbpf_set_print() (Yauheni Kaliuta) [1700846] - [tools] tools/bpftool: move set_max_rlimit() before __bpf_object__open_xattr() (Yauheni Kaliuta) [1700846] - [include] bpf: promote bpf_perf_event.h to mandatory UAPI header (Yauheni Kaliuta) [1700846] - [net] bpf: Avoid unnecessary instruction in convert_bpf_ld_abs() (Yauheni Kaliuta) [1700846] - [kernel] bpf: fix check of allowed specifiers in bpf_trace_printk (Yauheni Kaliuta) [1700846] - [documentation] bpf, doc: Document Jump X addressing mode (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: fix license for a compat header file (Yauheni Kaliuta) [1700846] - [documentation] docs: bpf: Capitalise document heading (Yauheni Kaliuta) [1700846] - [documentation] docs: Add bpf/index to top level index (Yauheni Kaliuta) [1700846] - [documentation] docs: bpf: Add toctree to index (Yauheni Kaliuta) [1700846] - [documentation] docs: bpf: Rename README.rst to index.rst (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: skip verifier tests for unsupported map types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: skip verifier tests for unsupported program types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: skip sockmap in test_maps if kernel doesn't have support (Yauheni Kaliuta) [1700846] - [rpmspec] rpmspec: pack bpf-helpers, bpftool-net, bpftool-feature manpages (Yauheni Kaliuta) [1700846] - [net] bpf, tcp: correctly handle DONT_WAIT flags and timeo == 0 (Yauheni Kaliuta) [1700846] - [kernel] bpf: mark bpf_event_notify and bpf_event_init as static (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap fix msg->sg.size account on ingress skb (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap remove duplicate queue free (Yauheni Kaliuta) [1700846] - [net] net/tls: remove set but not used variables (Yauheni Kaliuta) [1700846] - [media] bpf: add map helper functions push, pop, peek in more BPF programs (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix infinite loop in map create (Yauheni Kaliuta) [1700846] - [net] net/tls: fix build without CONFIG_TLS_DEVICE (Yauheni Kaliuta) [1700846] - [net] net/tls: don't leak partially sent record in device mode (Yauheni Kaliuta) [1700846] - [net] xdp: fix cpumap redirect SKB creation bug (Yauheni Kaliuta) [1700846] - [net] net/core: Document reuseport_add_sock() bind_inany argument (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: clarify bump in libbpf version info (Yauheni Kaliuta) [1700846] - [net] net/tls: Inform user space about send buffer availability (Yauheni Kaliuta) [1700846] - [tools] libbpf: handle BTF parsing and loading properly (Yauheni Kaliuta) [1700846] - [net] bpf: fix warning about using plain integer as NULL (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: fixing leak when kernel does not support btf (Yauheni Kaliuta) [1700846] - [net] tls: Fix write space handling (Yauheni Kaliuta) [1700846] - [net] tls: Fix tls_device handling of partial records (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool, fix documentation for attach types (Yauheni Kaliuta) [1700846] - [tools] btf: separate btf creation and loading (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix a selftest test_btf failure (Yauheni Kaliuta) [1700846] - [tools] selftests/btf: add initial BTF dedup tests (Yauheni Kaliuta) [1700846] - [tools] btf: add BTF types deduplication algorithm (Yauheni Kaliuta) [1700846] - [tools] btf: extract BTF type size calculation (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: silence a libbpf unnecessary warning (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: implement libbpf btf__get_map_kv_tids() API function (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: expose functions btf_ext__* as API functions (Yauheni Kaliuta) [1700846] - [tools] libbpf: Add a support for getting xdp prog id on ifindex (Yauheni Kaliuta) [1700846] - [tools] libbpf: Add a helper for retrieving a map fd for a given name (Yauheni Kaliuta) [1700846] - [tools] libbpf: introduce bpf_map_lookup_elem_flags() (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add bash completion for bpftool probes (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for a network device (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add C-style "#define" output for probes (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for eBPF helper functions (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for eBPF map types (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for eBPF program types (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for kernel configuration options (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for /proc/ eBPF parameters (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add basic probe capability, probe syscall availability (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: print out btf log at LIBBPF_WARN level (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: move libbpf pr_* debug print functions to headers (Yauheni Kaliuta) [1700846] - [net] net: tls: Fix deadlock in free_resources tx (Yauheni Kaliuta) [1700846] - [net] net: tls: Save iv in tls_rec for async crypto requests (Yauheni Kaliuta) [1700846] - [tools] bpf: pull in pkt_sched.h header for tooling to fix bpftool build (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: change section name of bpfilter UMH blob (Yauheni Kaliuta) [1700846] - [netdrv] tap: call skb_probe_transport_header after setting skb->dev (Yauheni Kaliuta) [1700846] - [net] Prevent overflow of sk_msg in sk_msg_clone() (Yauheni Kaliuta) [1700846] - [net] tls: Do not call sk_memcopy_from_iter with zero length (Yauheni Kaliuta) [1700846] - [net] net: ipv4: Set skb->dev for output route resolution (Yauheni Kaliuta) [1700846] - [net] bpf: refactor bpf_test_run() to separate own failures and test program result (Yauheni Kaliuta) [1700846] - [include] bpf: fix pointer offsets in context for 32 bit (Yauheni Kaliuta) [1700846] - [tools] tools/bpftool: copy a few net uapi headers to tools directory (Yauheni Kaliuta) [1700846] - [net] bpf: tcp_bpf_recvmsg should return EAGAIN when nonblocking and no data (Yauheni Kaliuta) [1700846] - [net] bpf: skmsg, fix psock create on existing kcm/tls port (Yauheni Kaliuta) [1700846] - [net] tcp, ulp: remove socket lock assertion on ULP cleanup (Yauheni Kaliuta) [1700846] - [lib] bpf: test_bpf: add init_net to dev for flow_dissector (Yauheni Kaliuta) [1700846] - [net] flow_dissector: lookup netns by skb->sk if skb->dev is NULL (Yauheni Kaliuta) [1700846] - [net] tls: Fixed uninitialised vars warning (Yauheni Kaliuta) [1700846] - [include] cgroup: Simplify cgroup_ancestor (Yauheni Kaliuta) [1700846] - [netdrv] veth: Orphan skb before GRO (Yauheni Kaliuta) [1700846] - [net] net/core/filter: fix unused-variable warning (Yauheni Kaliuta) [1700846] - [net] bpf: fix build error with clang (Yauheni Kaliuta) [1700846] - [netdrv] veth: Free queues on link delete (Yauheni Kaliuta) [1700846] - [net] bpf: fix sanitation rewrite in case of non-pointers (Yauheni Kaliuta) [1700846] - [net] bpf: drop refcount if bpf_map_new_fd() fails in map_create() (Yauheni Kaliuta) [1700846] - [net] bpf: decrease usercnt if bpf_map_new_fd() fails in bpf_map_get_fd_by_id() (Yauheni Kaliuta) [1700846] - [net] bpf, lpm: fix lookup bug in map_delete_elem (Yauheni Kaliuta) [1700846] - [net] bpf: fix lockdep false positive in stackmap (Yauheni Kaliuta) [1700846] - [net] bpf: Fix narrow load on a bpf_sock returned from sk_lookup() (Yauheni Kaliuta) [1700846] - [net] bpf: Fix syscall's stackmap lookup potential deadlock (Yauheni Kaliuta) [1700846] - [kernel] bpf: fix potential deadlock in bpf_prog_register (Yauheni Kaliuta) [1700846] - [net] bpf: fix lockdep false positive in percpu_freelist (Yauheni Kaliuta) [1700846] - [net] bpf: run bpf programs with preemption disabled (Yauheni Kaliuta) [1700846] - [tools] bpf, selftests: fix handling of sparse CPU allocations (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix test_btf for typedef func_proto case (Yauheni Kaliuta) [1700846] - [net] bpf: btf: allow typedef func_proto (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix crash with un-owned prog arrays (Yauheni Kaliuta) [1700846] - [tools] bpftool: fix percpu maps updating (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: Cleanup license mess (Yauheni Kaliuta) [1700846] - [net] bpf: Annotate implicit fall through in cgroup_dev_func_proto (Yauheni Kaliuta) [1700846] - [net] bpf: Make function btf_name_offset_valid static (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: retry tests that expect build-id (Yauheni Kaliuta) [1700846] - [net] bpf: zero out build_id for BPF_STACK_BUILD_ID_IP (Yauheni Kaliuta) [1700846] - [net] bpf: don't assume build-id length is always 20 bytes (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: properly account for libbfd variations (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: retry loading program on EAGAIN (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: workaround clang asm goto compilation errors (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: install with_tunnels.sh for test_flow_dissector.sh (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: disallow to remove bpfilter module while being used (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: Fix type cast and pointer warnings (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: restart bpfilter_umh when error occurred (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: use cleanup callback to release umh_info (Yauheni Kaliuta) [1700846] - [kernel] umh: add exit routine for UMH process (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: Set user mode helper's command line (Yauheni Kaliuta) [1700846] - [kernel] umh: Add command line to user mode helpers (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: use get_pid_task instead of pid_task (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix bpftool map dump with bitfields (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: test btf bitfield with >=256 struct member offset (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpffs bitfield pretty print (Yauheni Kaliuta) [1700846] - [net] bpf: fix panic in stack_map_get_build_id() on i386 and arm32 (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: install files tcp_(server|client)*.py (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: user proper argument index (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [tools] bpf, doc: add note for libbpf's stand-alone build (Yauheni Kaliuta) [1700846] - [documentation] bpf, doc: update design qa to reflect kern_version requirement (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix incorrect users of create_and_get_cgroup (Yauheni Kaliuta) [1700846] - [tools] bpf: add various test cases for alu op on mixed dst register types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test [::] -> [::1] rewrite in sys_sendmsg in test_sock_addr (Yauheni Kaliuta) [1700846] - [net] bpf: Fix [::] -> [::1] rewrite in sys_sendmsg (Yauheni Kaliuta) [1700846] - [tools] bpf: add various test cases to selftests (Yauheni Kaliuta) [1700846] - [net] bpf: fix check_map_access smin_value test when pointer contains offset (Yauheni Kaliuta) [1700846] - [net] bpf: restrict stack pointer arithmetic for unprivileged (Yauheni Kaliuta) [1700846] - [net] bpf: restrict map value pointer arithmetic for unprivileged (Yauheni Kaliuta) [1700846] - [net] bpf: enable access to ax register also from verifier rewrite (Yauheni Kaliuta) [1700846] - [net] bpf: move tmp variable into ax register in interpreter (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix error printing in test_devmap() (Yauheni Kaliuta) [1700846] - [tools] bpf: fix segfault in test_verifier selftest (Yauheni Kaliuta) [1700846] - [net] bpf: tls_sw, init TLS ULP removes BPF proto hooks (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, sock{map|hash} redirect through ULP (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, zap ingress queue on psock down (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, fix socket data_ready events (Yauheni Kaliuta) [1700846] - [net] bpf: skb_verdict, support SK_PASS on RX BPF path (Yauheni Kaliuta) [1700846] - [net] bpf: skmsg, replace comments with BUILD bug (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, improve offset chk in _is_valid_access (Yauheni Kaliuta) [1700846] - [tools] bpf: sk_msg, fix sk_msg_md access past end test (Yauheni Kaliuta) [1700846] - [net] bpf/cpumap: make sure frame_size for build_skb is aligned if headroom isn't (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: reorder stack size check with dead code sanitization (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: verifier: add tests for JSET interpretation (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: teach the verifier to reason about the BPF_JSET instruction (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: add trivial JSET tests (Yauheni Kaliuta) [1700846] - [tools] bpf: Add BPF_LD_IMM64 to the line_info test (Yauheni Kaliuta) [1700846] - [net] bpf: Ensure line_info.insn_off cannot point to insn with zero code (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: do not force gcc as CC (Yauheni Kaliuta) [1700846] - [tools] bpf: fix up uapi helper description and sync bpf header with tools (Yauheni Kaliuta) [1700846] - [net] bpf: log struct/union attribute for forward type (Yauheni Kaliuta) [1700846] - [tools] bpf: sk_msg, add tests for size field (Yauheni Kaliuta) [1700846] - [tools] bpf: add tools lib/include support sk_msg_md size field (Yauheni Kaliuta) [1700846] - [include] bpf: sockmap, metadata support for reporting size of msg (Yauheni Kaliuta) [1700846] - [net] bpf: correct slot_type marking logic to allow more stack slot sharing (Yauheni Kaliuta) [1700846] - [kernel] bpf: support raw tracepoints in modules (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add an option to prevent auto-mount of bpffs, tracefs (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: attempt to mount tracefs if required for tracelog cmd (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: check precise {func, line, jited_line}_info_rec_size in test_btf (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: fix memleak by freeing line_info (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: support pretty print with kind_flag set (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: refactor btf_dumper_int_bits() (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: test kernel bpffs map pretty print with struct kind_flag (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add test_btf unit tests for kind_flag (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: sync btf.h header from kernel to tools (Yauheni Kaliuta) [1700846] - [net] bpf: enable cgroup local storage map pretty print with kind_flag (Yauheni Kaliuta) [1700846] - [net] bpf: btf: fix struct/union/fwd types with kind_flag (Yauheni Kaliuta) [1700846] - [net] bpf: btf: refactor btf_int_bits_seq_show() (Yauheni Kaliuta) [1700846] - [net] bpf: remove useless version check for prog load (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix -Wmissing declaration warnings (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix warning on struct bpf_prog_linfo definition (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add a prog array map update example to documentation (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix examples in documentation for bpftool prog (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add doc for -m option to bpftool-prog.rst (Yauheni Kaliuta) [1700846] - [net] bpf: add self-check logic to liveness analysis (Yauheni Kaliuta) [1700846] - [net] bpf: improve stacksafe state comparison (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: check insn processed in test_verifier (Yauheni Kaliuta) [1700846] - [net] bpf: speed up stacksafe check (Yauheni Kaliuta) [1700846] - [net] bpf: verbose log bpf_line_info in verifier (Yauheni Kaliuta) [1700846] - [net] bpf: Create a new btf_name_by_offset() for non type name use case (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Fix sk lookup usage in test_sock_addr (Yauheni Kaliuta) [1700846] - [net] bpf: remove obsolete prog->aux sanitation in bpf_insn_prepare_dump (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: make sure callees don't prune with caller differences (Yauheni Kaliuta) [1700846] - [tools] bpf: sync tools/include/uapi/linux/bpf.h (Yauheni Kaliuta) [1700846] - [net] bpf: include sub program tags in bpf_prog_info (Yauheni Kaliuta) [1700846] - [tools] bpf: Remove !func_info and !line_info check from test_btf and bpftool (Yauheni Kaliuta) [1700846] - [net] bpf: Remove bpf_dump_raw_ok() check for func_info and line_info (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: dual license all files (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: replace Netronome boilerplate with SPDX license headers (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix SPDX format in headers (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add btf annotations for cgroup_local_storage maps (Yauheni Kaliuta) [1700846] - [net] bpf: add bpffs pretty print for cgroup local storage maps (Yauheni Kaliuta) [1700846] - [net] bpf: pass struct btf pointer to the map_check_btf() callback (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: use __bpf_constant_htons in test_prog.c (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpf_jit_limit knob for PAGE_SIZE >= 64K (Yauheni Kaliuta) [1700846] - [arm64] bpf: arm64: Enable arm64 jit to provide bpf_line_info (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: use proper type when passing prog_type (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: rename *_info_cnt to nr_*_info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: sync kernel uapi bpf.h to tools directory (Yauheni Kaliuta) [1700846] - [net] bpf: rename *_info_cnt to nr_*_info in bpf_prog_info (Yauheni Kaliuta) [1700846] - [net] bpf: clean up bpf_prog_get_info_by_fd() (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool: Fix newline and p_err issue (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing pointer dereference for map stacktrace fixup (Yauheni Kaliuta) [1700846] - [net] bpf: relax verifier restriction on BPF_MOV | BPF_ALU (Yauheni Kaliuta) [1700846] - [tools] media: bpf: add bpf function to report mouse movement (Yauheni Kaliuta) [1700846] - [include] bpf: fix documentation for eBPF helpers (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: bpftool: Print bpf_line_info during prog dump (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: Add btf_line_info support to libbpf (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: Refactor and bug fix on the bpf_func_info loading logic (Yauheni Kaliuta) [1700846] - [tools] bpf: Add unit tests for bpf_line_info (Yauheni Kaliuta) [1700846] - [tools] bpf: Refactor and bug fix in test_func_type in test_btf.c (Yauheni Kaliuta) [1700846] - [tools] bpf: tools: Sync uapi bpf.h (Yauheni Kaliuta) [1700846] - [include] bpf: Add bpf_line_info support (Yauheni Kaliuta) [1700846] - [net] net/flow_dissector: correctly cap nhoff and thoff in case of BPF (Yauheni Kaliuta) [1700846] - [net] selftests/bpf: use thoff instead of nhoff in BPF flow dissector (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: update testcases for BPF_ALU | BPF_ARSH (Yauheni Kaliuta) [1700846] - [net] bpf: verifier remove the rejection on BPF_ALU | BPF_ARSH (Yauheni Kaliuta) [1700846] - [net] bpf: interpreter support BPF_ALU | BPF_ARSH (Yauheni Kaliuta) [1700846] - [s390] s390: bpf: implement jitting of BPF_ALU | BPF_ARSH | BPF_* (Yauheni Kaliuta) [1700846] - [powerpc] ppc: bpf: implement jitting of BPF_ALU | BPF_ARSH | BPF_* (Yauheni Kaliuta) [1700846] - [tools] bpf: Expect !info.func_info and insn_off name changes in test_btf/libbpf/bpftool (Yauheni Kaliuta) [1700846] - [tools] bpf: tools: Sync uapi bpf.h for the name changes in bpf_func_info (Yauheni Kaliuta) [1700846] - [net] bpf: Change insn_offset to insn_off in bpf_func_info (Yauheni Kaliuta) [1700846] - [net] bpf: Improve the info.func_info and info.func_info_rec_size behavior (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add a command to dump the trace pipe (Yauheni Kaliuta) [1700846] - [arm64] arm64/bpf: don't allocate BPF JIT programs in module memory (Yauheni Kaliuta) [1700846] - [net] bpf: add __weak hook for allocating executable memory (Yauheni Kaliuta) [1700846] - [net] bpf: add per-insn complexity limit (Yauheni Kaliuta) [1700846] - [net] bpf: improve verifier branch analysis (Yauheni Kaliuta) [1700846] - [net] bpf: check pending signals while verifying programs (Yauheni Kaliuta) [1700846] - [tools] selftests: add a test for bpf_prog_test_run_xattr (Yauheni Kaliuta) [1700846] - [tools] libbpf: add bpf_prog_test_run_xattr (Yauheni Kaliuta) [1700846] - [tools] tools: sync uapi/linux/bpf.h (Yauheni Kaliuta) [1700846] - [net] bpf: respect size hint to BPF_PROG_TEST_RUN if present (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: fix: seg fault with NULL pointer arg (Yauheni Kaliuta) [1700846] - [powerpc] bpf: powerpc64: optimize JIT passes for bpf function calls (Yauheni Kaliuta) [1700846] - [tools] bpf: allow BPF read access to qdisc pkt_len (Yauheni Kaliuta) [1700846] - [tools] libbpf: Fix license in README.rst (Yauheni Kaliuta) [1700846] - [net] bpf: Fix memleak in aux->func_info and aux->btf (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: get ifindex from ifname (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: improve xdp1 example (Yauheni Kaliuta) [1700846] - [tools] bpf: Apply F_NEEDS_EFFICIENT_UNALIGNED_ACCESS to more ACCEPT test cases (Yauheni Kaliuta) [1700846] - [tools] bpf: Make more use of 'any' alignment in test_verifier.c (Yauheni Kaliuta) [1700846] - [tools] bpf: Adjust F_NEEDS_EFFICIENT_UNALIGNED_ACCESS handling in test_verifier.c (Yauheni Kaliuta) [1700846] - [tools] bpf: Add BPF_F_ANY_ALIGNMENT (Yauheni Kaliuta) [1700846] - [tools] bpf: Improve socket lookup reuseport documentation (Yauheni Kaliuta) [1700846] - [tools] bpf: Support sk lookup in netns with id 0 (Yauheni Kaliuta) [1700846] - [tools] bpf: Fix verifier log string check for bad alignment (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add owner_prog_type and owner_jited to bpftool output (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: mark offloaded programs more explicitly in plain output (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix bash completion for new map types (queue and stack) (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix bash completion for bpftool prog (attach|detach) (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: use "/proc/self/" i.o. crafting links with getpid() (Yauheni Kaliuta) [1700846] - [arm64] arm64/bpf: use movn/movk/movk sequence to generate kernel addresses (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: make libbpf _GNU_SOURCE friendly (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix a bitfield pretty print issue (Yauheni Kaliuta) [1700846] - [tools] bpf: Fix various lib and testsuite build failures on 32-bit (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add addition type tests to test_btf (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix two test_btf unit test cases (Yauheni Kaliuta) [1700846] - [net] bpf: btf: check name validity for various types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add config fragment CONFIG_FTRACE_SYSCALLS (Yauheni Kaliuta) [1700846] - [tools] bpf: test_sockmap, add options for msg_pop_data() helper (Yauheni Kaliuta) [1700846] - [tools] bpf: add msg_pop_data helper to tools (Yauheni Kaliuta) [1700846] - [tools] libbpf: Document API and ABI conventions (Yauheni Kaliuta) [1700846] - [tools] libbpf: Verify versioned symbols (Yauheni Kaliuta) [1700846] - [tools] libbpf: Add version script for DSO (Yauheni Kaliuta) [1700846] - [tools] libbpf: Name changing for btf_get_from_id (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: change selftest test_btf for both jit and non-jit (Yauheni Kaliuta) [1700846] - [net] bpf: btf: support proper non-jit func info (Yauheni Kaliuta) [1700846] - [arm64] bpf, arm64: fix getting subprog addr from aux for calls (Yauheni Kaliuta) [1700846] - [net] bpf, ppc64: generalize fetching subprog into bpf_jit_get_func_addr (Yauheni Kaliuta) [1700846] - [tools] bpf: align map type names formatting (Yauheni Kaliuta) [1700846] - [net] bpf: btf: fix spelling mistake "Memmber" -> "Member" (Yauheni Kaliuta) [1700846] - [net] bpf, tags: Fix DEFINE_PER_CPU expansion (Yauheni Kaliuta) [1700846] - [tools] bpf: Add BPF_MAP_TYPE_QUEUE and BPF_MAP_TYPE_STACK to bpftool-map (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: fix: error handling regarding kprobe_events (Yauheni Kaliuta) [1700846] - [tools] libbpf: make bpf_object__open default to UNSPEC (Yauheni Kaliuta) [1700846] - [tools] bpf: add skb->tstamp r/w access from tc clsact and cg skb progs (Yauheni Kaliuta) [1700846] - [net] bpf: fix integer overflow in queue_stack_map (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix spelling mistake "memeory" -> "memory" (Yauheni Kaliuta) [1700846] - [net] bpf, lpm: make longest_prefix_match() faster (Yauheni Kaliuta) [1700846] - [tools] bpf: adding tests for map_in_map helpber in libbpf (Yauheni Kaliuta) [1700846] - [tools] bpf: adding support for map in map in libbpf (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: don't specify prog name if kernel doesn't support it (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: remove map name retry from bpf_create_map_xattr (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: introduce bpf_object__probe_caps to test BPF capabilities (Yauheni Kaliuta) [1700846] - [tools] libbpf: make sure bpf headers are c++ include-able (Yauheni Kaliuta) [1700846] - [tools] bpf: fix a libbpf loader issue (Yauheni Kaliuta) [1700846] - [include] bpf: fix a compilation error when CONFIG_BPF_SYSCALL is not defined (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: add support for func types (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: enhance test_btf file testing to test func info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: refactor to implement btf_get_from_id() in lib/bpf (Yauheni Kaliuta) [1700846] - [samples] tools/bpf: do not use pahole if clang/llvm can generate BTF sections (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add support to read .BTF.ext sections (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: extends test_btf to test load/retrieve func_type info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add new fields for program load in lib/bpf (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: sync kernel uapi bpf.h header to tools directory (Yauheni Kaliuta) [1700846] - [net] bpf: Introduce bpf_func_info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: Add tests for BTF_KIND_FUNC_PROTO and BTF_KIND_FUNC (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: Sync kernel btf.h header (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Add BTF_KIND_FUNC and BTF_KIND_FUNC_PROTO (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Break up btf_type_is_void() (Yauheni Kaliuta) [1700846] - [tools] tools: add selftest for BPF_F_ZERO_SEED (Yauheni Kaliuta) [1700846] - [tools] tools: sync linux/bpf.h (Yauheni Kaliuta) [1700846] - [include] bpf: move BPF_F_QUERY_EFFECTIVE after map flags (Yauheni Kaliuta) [1700846] - [net] bpf: allow zero-initializing hash map seed (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: retry map creation without the name (Yauheni Kaliuta) [1700846] - [net] bpf: allocate local storage buffers using GFP_ATOMIC (Yauheni Kaliuta) [1700846] - [net] bpf: fix off-by-one error in adjust_subprog_starts (Yauheni Kaliuta) [1700846] - [net] bpf: fix null pointer dereference on pointer offload (Yauheni Kaliuta) [1700846] - [tools] bpftool: make libbfd optional (Yauheni Kaliuta) [1700846] - [net] net/bpf: split VLAN_PRESENT bit handling from VLAN_TCI (Yauheni Kaliuta) [1700846] - [powerpc] net/bpf_jit: PPC: split VLAN_PRESENT bit handling from VLAN_TCI (Yauheni Kaliuta) [1700846] - [net] net/skbuff: add macros for VLAN_PRESENT bit (Yauheni Kaliuta) [1700846] - [tools] selftest/bpf: Use bpf_sk_lookup_{tcp, udp} in test_sock_addr (Yauheni Kaliuta) [1700846] - [net] bpf: Support socket lookup in CGROUP_SOCK_ADDR progs (Yauheni Kaliuta) [1700846] - [net] bpf: Fix IPv6 dport byte order in bpf_sk_lookup_udp (Yauheni Kaliuta) [1700846] - [net] bpf: Extend the sk_lookup() helper to XDP hookpoint (Yauheni Kaliuta) [1700846] - [net] bpf: helper to pop data from messages (Yauheni Kaliuta) [1700846] - [net] bpf: fix wrong helper enablement in cgroup local storage (Yauheni Kaliuta) [1700846] - [include] bpf: sk_msg program helper bpf_msg_push_data (Yauheni Kaliuta) [1700846] - [net] bpf: Fix IPv6 dport byte-order in bpf_sk_lookup (Yauheni Kaliuta) [1700846] - [net] bpf: Allow sk_lookup with IPv6 module (Yauheni Kaliuta) [1700846] - [net] net: core: Fix build with CONFIG_IPV6=m (Yauheni Kaliuta) [1700846] - [net] bpf: Fix dev pointer dereference from sk_skb (Yauheni Kaliuta) [1700846] - [net] bpf: fix building without CONFIG_INET (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: Fix bpf_program__next() API (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Fix uninitialized duration warning (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test narrow loads with off > 0 for bpf_sock_addr (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test narrow loads with off > 0 in test_verifier (Yauheni Kaliuta) [1700846] - [net] bpf: Allow narrow loads with offset > 0 (Yauheni Kaliuta) [1700846] - [tools] bpftool: support loading flow dissector (Yauheni Kaliuta) [1700846] - [tools] bpftool: add pinmaps argument to the load/loadall (Yauheni Kaliuta) [1700846] - [tools] bpftool: add loadall command (Yauheni Kaliuta) [1700846] - [tools] libbpf: add internal pin_name (Yauheni Kaliuta) [1700846] - [tools] libbpf: bpf_program__pin: add special case for instances.nr == 1 (Yauheni Kaliuta) [1700846] - [tools] libbpf: cleanup after partial failure in bpf_object__pin (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: rename flow dissector section to flow_dissector (Yauheni Kaliuta) [1700846] - [netdrv] bpf: do not pass netdev to translate() and prepare() offload callbacks (Yauheni Kaliuta) [1700846] - [net] bpf: pass prog instead of env to bpf_prog_offload_verifier_prep() (Yauheni Kaliuta) [1700846] - [netdrv] bpf: pass destroy() as a callback and remove its ndo_bpf subcommand (Yauheni Kaliuta) [1700846] - [include] bpf: pass translate() as a callback and remove its ndo_bpf subcommand (Yauheni Kaliuta) [1700846] - [netdrv] bpf: call verifier_prep from its callback in struct bpf_offload_dev (Yauheni Kaliuta) [1700846] - [net] bpf: call finalize() from its callback in struct bpf_offload_dev (Yauheni Kaliuta) [1700846] - [net] bpf: call verify_insn from its callback in struct bpf_offload_dev (Yauheni Kaliuta) [1700846] - [netdrv] bpf: pass a struct with offload callbacks to bpf_offload_dev_create() (Yauheni Kaliuta) [1700846] - [tools] kselftests/bpf: use ping6 as the default ipv6 ping binary when it exists (Yauheni Kaliuta) [1700846] - [tools] bpftool: Improve handling of ENOENT on map dumps (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add a test case for sock_ops perf-event notification (Yauheni Kaliuta) [1700846] - [net] bpf: add perf event notificaton support for sock_ops (Yauheni Kaliuta) [1700846] - [net] bpf: let verifier to calculate and record max_pkt_offset (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: update references to other man pages in documentation (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: pass an argument to silence open_obj_pinned() (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix plain output and doc for --bpffs option (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: prevent infinite loop in get_fdinfo() (Yauheni Kaliuta) [1700846] - [samples] bpf_load: add map name to load_maps error message (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: adjust rlimit RLIMIT_MEMLOCK when loading programs, maps (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: enable (uncomment) all tests in test_libbpf.sh (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpf_prog_get_info_by_fd to return 0 func_lens for unpriv (Yauheni Kaliuta) [1700846] - [net] bpf: show main program address and length in bpf_prog_info (Yauheni Kaliuta) [1700846] - [net] bpf: show real jited address in bpf_prog_info->jited_ksyms (Yauheni Kaliuta) [1700846] - [net] bpf: show real jited prog address in /proc/kallsyms (Yauheni Kaliuta) [1700846] - [tools] bpf: test make sure to run unpriv test cases in test_verifier (Yauheni Kaliuta) [1700846] - [tools] bpf: add various test cases to test_verifier (Yauheni Kaliuta) [1700846] - [net] bpf: don't set id on after map lookup with ptr_to_map_val return (Yauheni Kaliuta) [1700846] - [tools] libbpf: Fix compile error in libbpf_attach_type_by_name (Yauheni Kaliuta) [1700846] - [tools] kselftests/bpf: use ping6 as the default ipv6 ping binary if it exists (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add unlimited rlimit for flow_dissector_load (Yauheni Kaliuta) [1700846] - [net] bpf: add bpf_jit_limit knob to restrict unpriv allocations (Yauheni Kaliuta) [1700846] - [net] bpf: make direct packet write unclone more robust (Yauheni Kaliuta) [1700846] - [net] bpf: fix leaking uninitialized memory on pop/peek helpers (Yauheni Kaliuta) [1700846] - [net] bpf: fix direct packet write into pop/peek helpers (Yauheni Kaliuta) [1700846] - [net] bpf: fix cg_skb types to hint access type in may_access_direct_pkt_data (Yauheni Kaliuta) [1700846] - [net] bpf: fix direct packet access for flow dissector progs (Yauheni Kaliuta) [1700846] - [net] bpf: disallow direct packet access for unpriv in cg_skb (Yauheni Kaliuta) [1700846] - [tools] bpf: fix test suite to enable all unpriv program types (Yauheni Kaliuta) [1700846] - [net] bpf, btf: fix a missing check bug in btf_parse (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add config fragments BPF_STREAM_PARSER and XDP_SOCKETS (Yauheni Kaliuta) [1700846] - [net] bpf: devmap: fix wrong interface selection in notifier_call (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix completion for "bpftool map update" (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: print nb of cmds to stdout (not stderr) for batch mode (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: document restriction on '.' in names to pin in bpffs (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix return value comparison for tests in test_libbpf.sh (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: simplify and cleanup perf ring buffer walk (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: avoid retpoline for map push/pop/peek operation (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: remove unneeded flow key in check_helper_mem_access (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: reject xadd on flow key memory (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: fix register type dump in xadd and st (Yauheni Kaliuta) [1700846] - [net] ulp: remove uid and user_visible members (Yauheni Kaliuta) [1700846] - [tools] bpf: test_sockmap add options to use msg_push_data (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf support for msg_push_data (Yauheni Kaliuta) [1700846] - [tools] Sync uapi/bpf.h to tools/include (Yauheni Kaliuta) [1700846] - [net] bpf: add tests for direct packet access from CGROUP_SKB (Yauheni Kaliuta) [1700846] - [net] bpf: add cg_skb_is_valid_access for BPF_PROG_TYPE_CGROUP_SKB (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: use correct barriers in perf ring buffer walk (Yauheni Kaliuta) [1700846] - [tools] tools, perf: add and use optimized ring_buffer_{read_head, write_tail} helpers (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add test cases for queue and stack maps (Yauheni Kaliuta) [1700846] - [net] bpf: add MAP_LOOKUP_AND_DELETE_ELEM syscall (Yauheni Kaliuta) [1700846] - [net] bpf: add queue and stack maps (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: add ARG_PTR_TO_UNINIT_MAP_VALUE (Yauheni Kaliuta) [1700846] - [net] bpf/syscall: allow key to be null in map functions (Yauheni Kaliuta) [1700846] - [net] bpf: rename stack trace map operations (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: use 4 context mode for the NFP disasm (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix file resource leak in load_kallsyms (Yauheni Kaliuta) [1700846] - [tools] bpf: sockmap, add msg_peek tests to test_sockmap (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, support for msg_peek in sk_msg with redirect ingress (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, fix skmsg recvmsg handler to track size correctly (Yauheni Kaliuta) [1700846] - [include] bpf: skmsg, improve sk_msg_used_element to work in cork context (Yauheni Kaliuta) [1700846] - [tools] libbpf: Per-symbol visibility for DSO (Yauheni Kaliuta) [1700846] - [tools] bpf, tls: add tls header to tools infrastructure (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add map create command (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool, add flag to allow non-compat map definitions (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool, add support for attaching programs to maps (Yauheni Kaliuta) [1700846] - [maintainers] bpf, doc: add maintainers entry to related files (Yauheni Kaliuta) [1700846] - [tools] bpf: add tls support for testing in test_sockmap (Yauheni Kaliuta) [1700846] - [net] tls: add bpf support to sk_msg handling (Yauheni Kaliuta) [1700846] - [net] tls: replace poll implementation with read hook (Yauheni Kaliuta) [1700846] - [net] tls: convert to generic sk_msg interface (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: convert to generic sk_msg interface (Yauheni Kaliuta) [1700846] - [net] tcp, ulp: remove ulp bits from sockmap (Yauheni Kaliuta) [1700846] - [net] tcp, ulp: enforce sock_owned_by_me upon ulp init and cleanup (Yauheni Kaliuta) [1700846] - [net] net/tls: Make function get_rec() static (Yauheni Kaliuta) [1700846] - [net] net/tls: Mark the end in scatterlist table (Yauheni Kaliuta) [1700846] - [net] tls: Fixed a memory leak during socket close (Yauheni Kaliuta) [1700846] - [net] net/tls: Removed redundant checks for non-NULL (Yauheni Kaliuta) [1700846] - [net] tls: Add support for inplace records encryption (Yauheni Kaliuta) [1700846] - [net] tls: Remove redundant vars from tls record structure (Yauheni Kaliuta) [1700846] - [net] net/tls: Fixed race condition in async encryption (Yauheni Kaliuta) [1700846] - [net] tls: Fix socket mem accounting error under async encryption (Yauheni Kaliuta) [1700846] - [net] net/tls: Add support for async encryption of records for performance (Yauheni Kaliuta) [1700846] - [net] tls: Remove dead code in tls_sw_sendmsg (Yauheni Kaliuta) [1700846] - [net] net/tls: Fixed return value when tls_complete_pending_work() fails (Yauheni Kaliuta) [1700846] - [net] bpf: wait for running BPF programs when updating map-in-map (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: install script with_addr.sh (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: add config fragment LWTUNNEL (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: use proper type and uapi perf_event.h header for libbpf (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add XDP selftests for modifying and popping VLAN headers (Yauheni Kaliuta) [1700846] - [tools] bpf: make TC vlan bpf_helpers avail to selftests (Yauheni Kaliuta) [1700846] - [net] net: fix generic XDP to handle if eth header was mangled (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: test_verifier, check bpf_map_lookup_elem access in bpf prog (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: test_verifier, change names of fixup maps (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool, print strerror when map lookup error occurs (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool, split the function do_dump() (Yauheni Kaliuta) [1700846] - [net] bpf: return EOPNOTSUPP when map lookup isn't supported (Yauheni Kaliuta) [1700846] - [net] bpf: error handling when map_lookup_elem isn't supported (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Fix a missing check bug (Yauheni Kaliuta) [1700846] - [net] bpf: allow offload of programs with BPF-to-BPF function calls (Yauheni Kaliuta) [1700846] - [net] bpf: add verifier callback to get stack usage info for offloaded progs (Yauheni Kaliuta) [1700846] - [tools] libbpf: relicense libbpf as LGPL-2.1 OR BSD-2-Clause (Yauheni Kaliuta) [1700846] - [samples] bpf, tracex3_user: erase "ARRAY_SIZE" redefined (Yauheni Kaliuta) [1700846] - [tools] libbpf: Use __u32 instead of u32 in bpf_program__load (Yauheni Kaliuta) [1700846] - [tools] libbpf: Make include guards consistent (Yauheni Kaliuta) [1700846] - [tools] libbpf: Consistent prefixes for interfaces in str_error.h (Yauheni Kaliuta) [1700846] - [tools] libbpf: Consistent prefixes for interfaces in nlattr.h (Yauheni Kaliuta) [1700846] - [tools] libbpf: Consistent prefixes for interfaces in libbpf.h (Yauheni Kaliuta) [1700846] - [tools] libbpf: Move __dump_nlmsg_t from API to implementation (Yauheni Kaliuta) [1700846] - [documentation] Documentation: Describe bpf reference tracking (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add C tests for reference tracking (Yauheni Kaliuta) [1700846] - [tools] libbpf: Support loading individual progs (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add tests for reference tracking (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Generalize dummy program types (Yauheni Kaliuta) [1700846] - [tools] bpf: Add helper to retrieve socket in BPF (Yauheni Kaliuta) [1700846] - [include] bpf: Introduce bpf_skb_ancestor_cgroup_id helper (Yauheni Kaliuta) [1700846] - [tools] bpf: sync include/uapi/linux/bpf.h to tools/include/uapi/linux/bpf.h (Yauheni Kaliuta) [1700846] - [tools] bpf: sync bpf.h uapi with tools/ (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h uapi to tools/ (Yauheni Kaliuta) [1700846] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [net] bpf: Add reference tracking to verifier (Yauheni Kaliuta) [1700846] - [net] bpf: Macrofy stack state copy (Yauheni Kaliuta) [1700846] - [include] bpf: Add PTR_TO_SOCKET verifier type (Yauheni Kaliuta) [1700846] - [net] bpf: Generalize ptr_or_null regs check (Yauheni Kaliuta) [1700846] - [net] bpf: Reuse canonical string formatter for ctx errs (Yauheni Kaliuta) [1700846] - [net] bpf: Add iterator for spilled registers (Yauheni Kaliuta) [1700846] - [net] bpf: don't accept cgroup local storage with zero value size (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: cgroup local storage-based network counters (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: extend test_cgrp2_attach2 test to use per-cpu cgroup storage (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: extend the storage test to test per-cpu cgroup storage (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add verifier per-cpu cgroup storage tests (Yauheni Kaliuta) [1700846] - [tools] bpftool: add support for PERCPU_CGROUP_STORAGE maps (Yauheni Kaliuta) [1700846] - [net] bpf: don't allow create maps of per-cpu cgroup local storages (Yauheni Kaliuta) [1700846] - [net] bpf: introduce per-cpu cgroup local storage (Yauheni Kaliuta) [1700846] - [net] bpf: rework cgroup storage pointer passing (Yauheni Kaliuta) [1700846] - [net] bpf: extend cgroup bpf core to allow multiple cgroup storage types (Yauheni Kaliuta) [1700846] - [net] bpf/test_run: support cgroup local storage (Yauheni Kaliuta) [1700846] - [net] bpf: harden flags check in cgroup_storage_update_elem() (Yauheni Kaliuta) [1700846] - [net] bpf: permit CGROUP_DEVICE programs accessing helper bpf_get_current_cgroup_id() (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test libbpf_{prog,attach}_type_by_name (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Use libbpf_attach_type_by_name in test_socket_cookie (Yauheni Kaliuta) [1700846] - [tools] libbpf: Support sk_skb/stream_{parser, verdict} section names (Yauheni Kaliuta) [1700846] - [tools] libbpf: Support cgroup_skb/{e,in}gress section names (Yauheni Kaliuta) [1700846] - [tools] libbpf: Introduce libbpf_attach_type_by_name (Yauheni Kaliuta) [1700846] - [tools] bpftool: Fix bpftool net output (Yauheni Kaliuta) [1700846] - [tools] bpftool: add support for BPF_MAP_TYPE_REUSEPORT_SOCKARRAY maps (Yauheni Kaliuta) [1700846] - [tools] bpf: test_maps, only support ESTABLISHED socks (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, fix transition through disconnect without close (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap only allow ESTABLISHED sock state (Yauheni Kaliuta) [1700846] - [net] bpf: remove redundant null pointer check before consume_skb (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: fix compilation failure (Yauheni Kaliuta) [1700846] - [net] flow_dissector: fix build failure without CONFIG_NET (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: fix a compilation failure (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: remove duplicated includes (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: improve output format for bpftool net (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix bpf_flow.c build (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: test bpf flow dissection (Yauheni Kaliuta) [1700846] - [tools] flow_dissector: implements eBPF parser (Yauheni Kaliuta) [1700846] - [tools] bpf: support flow dissector in libbpf and bpftool (Yauheni Kaliuta) [1700846] - [include] flow_dissector: implements flow dissector BPF hook (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Fix end boundary calculation for type section (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix a netlink recv issue (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: support prog array map and map of maps (Yauheni Kaliuta) [1700846] - [net] bpf: add bpffs pretty print for program array map (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: add net support (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add more netlink functionalities in lib/bpf (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: move bpf/lib netlink related functions into a new file (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf/test_progs: do not check errno == 0 (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: fix verifier instability (Yauheni Kaliuta) [1700846] - [net] bpf: avoid misuse of psock when TCP_ULP_BPF collides with another ULP (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool, add xskmap in map types (Yauheni Kaliuta) [1700846] - [tools] bpf: add selftest for bpf's (set|get)_sockopt for SAVE_SYN (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: xdpsock, minor fixes (Yauheni Kaliuta) [1700846] - [samples] bpf: add TCP_SAVE_SYN/TCP_SAVED_SYN sample program (Yauheni Kaliuta) [1700846] - [net] bpf: add TCP_SAVE_SYN/TCP_SAVED_SYN options for bpf_(set|get)sockopt (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: add btf percpu map formated dump (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add bpffs percpu map pretty print tests in test_btf (Yauheni Kaliuta) [1700846] - [net] bpf: add bpffs pretty print for percpu arraymap/hash/lru_hash (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: display non-spill stack slot types in print_verifier_state (Yauheni Kaliuta) [1700846] - [tools] bpf: use --cgroup in test_suite if supplied (Yauheni Kaliuta) [1700846] - [tools] bpf: sockmap test remove shutdown() calls (Yauheni Kaliuta) [1700846] - [net] bpf: remove duplicated include from syscall.c (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, decrement copied count correctly in redirect error case (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix psock refcount leak in bpf_tcp_recvmsg (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix potential use after free in bpf_tcp_close (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: return from do_event_pipe() on bad arguments (Yauheni Kaliuta) [1700846] - [net] bpf: use per htab salt for bucket hash (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap: write_space events need to be passed to TCP handler (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix sock hash count in alloc_sock_hash_elem (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix sock_hash_alloc and reject zero-sized keys (Yauheni Kaliuta) [1700846] - [net] bpf: fix redirect to map under tail calls (Yauheni Kaliuta) [1700846] - [netdrv] veth: Support per queue XDP ring (Yauheni Kaliuta) [1700846] - [netdrv] veth: Add XDP TX and REDIRECT (Yauheni Kaliuta) [1700846] - [net] xdp: Helpers for disabling napi_direct of xdp_return_frame (Yauheni Kaliuta) [1700846] - [net] bpf: Make redirect_info accessible from modules (Yauheni Kaliuta) [1700846] - [netdrv] veth: Add ndo_xdp_xmit (Yauheni Kaliuta) [1700846] - [netdrv] veth: Handle xdp_frames in xdp napi ring (Yauheni Kaliuta) [1700846] - [netdrv] veth: Avoid drops by oversized packets when XDP is enabled (Yauheni Kaliuta) [1700846] - [netdrv] veth: Add driver XDP (Yauheni Kaliuta) [1700846] - [net] net: Export skb_headers_offset_update (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix bpf selftest test_cgroup_storage failure (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix sock_map_ctx_update_elem race with exist/noexist (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix map elem deletion race with smap_stop_sock (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix leakage of smap_psock_map_entry (Yauheni Kaliuta) [1700846] - [net] bpf: fix a rcu usage warning in bpf_prog_array_copy_core() (Yauheni Kaliuta) [1700846] - [tools] bpf: test: fix spelling mistake "REUSEEPORT" -> "REUSEPORT" (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Selftest for bpf_skb_ancestor_cgroup_id (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add cgroup id helpers to bpf_helpers.h (Yauheni Kaliuta) [1700846] - [net] bpf: decouple btf from seq bpf fs dump and enable more maps (Yauheni Kaliuta) [1700846] - [tools] bpf: Test BPF_PROG_TYPE_SK_REUSEPORT (Yauheni Kaliuta) [1700846] - [tools] bpf: test BPF_MAP_TYPE_REUSEPORT_SOCKARRAY (Yauheni Kaliuta) [1700846] - [tools] bpf: Refactor ARRAY_SIZE macro to bpf_util.h (Yauheni Kaliuta) [1700846] - [net] bpf: Introduce BPF_PROG_TYPE_SK_REUSEPORT (Yauheni Kaliuta) [1700846] - [net] bpf: Introduce BPF_MAP_TYPE_REUSEPORT_SOCKARRAY (Yauheni Kaliuta) [1700846] - [net] net: Add ID (if needed) to sock_reuseport and expose reuseport_lock (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add bpffs pretty print btf test for hash/lru_hash maps (Yauheni Kaliuta) [1700846] - [net] bpf: btf: add pretty print for hash/lru_hash maps (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpffs non-array map seq_show issue (Yauheni Kaliuta) [1700846] - [powerpc] powerpc/Makefiles: Convert ifeq to ifdef where possible (Yauheni Kaliuta) [1700846] - [net] bpf: introduce update_effective_progs() (Yauheni Kaliuta) [1700846] - [s390] s390: fix br_r1_trampoline for machines without exrl (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix a typo in map in map test (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: fix BTF code added twice to different trees (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: extend test_cgrp2_attach2 test to use cgroup storage (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add a cgroup storage test (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add verifier cgroup storage tests (Yauheni Kaliuta) [1700846] - [tools] bpftool: add support for CGROUP_STORAGE maps (Yauheni Kaliuta) [1700846] - [net] bpf: introduce the bpf_get_local_storage() helper function (Yauheni Kaliuta) [1700846] - [net] bpf: don't allow create maps of cgroup local storages (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: introduce BPF_PTR_TO_MAP_VALUE (Yauheni Kaliuta) [1700846] - [net] bpf: extend bpf_prog_array to store pointers to the cgroup storage (Yauheni Kaliuta) [1700846] - [net] bpf: allocate cgroup storage entries on attaching bpf programs (Yauheni Kaliuta) [1700846] - [net] bpf: pass a pointer to a cgroup storage using pcpu variable (Yauheni Kaliuta) [1700846] - [net] bpf: introduce cgroup storage maps (Yauheni Kaliuta) [1700846] - [net] bpf: add ability to charge bpf maps memory dynamically (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: MOV64 don't mark dst reg unbounded (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test for get_socket_cookie (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add bpf_get_socket_cookie to bpf_helpers.h (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [net] bpf: Support bpf_get_socket_cookie in more prog types (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: convert xdpsock_user.c to libbpf (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: convert xdp_fwd_user.c to libbpf (Yauheni Kaliuta) [1700846] - [tools] tools: libbpf: add bpf_object__find_program_by_title() (Yauheni Kaliuta) [1700846] - [tools] tools: libbpf: handle NULL program gracefully in bpf_program__nth_fd() (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: Add BTF build flags to Makefile (Yauheni Kaliuta) [1700846] - [tools] tools/bpftool: ignore build products (Yauheni Kaliuta) [1700846] - [tools] bpf: Add Python 3 support to selftests scripts for bpf (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: fix inconsistent IS_ERR and PTR_ERR (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap: remove redundant pointer sg (Yauheni Kaliuta) [1700846] - [net] bpf: bpf_prog_array_alloc() should return a generic non-rcu pointer (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: don't pass FEATURES_DUMP to libbpf (Yauheni Kaliuta) [1700846] - [tools] tools: libbpf: remove libelf-getphdrnum feature detection (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: test_cgrp2_sock2: fix an off by one (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: ensure that we don't load over MAX_PROGS programs (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test case for BPF_SOCK_OPS_TCP_LISTEN_CB (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Better verification in test_tcpbpf (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Switch test_tcpbpf_user to cgroup_helpers (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Fix const'ness in cgroup_helpers (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [net] bpf: Add BPF_SOCK_OPS_TCP_LISTEN_CB (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: print map dump and lookup with btf info (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: add btf print functionality (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: export btf types and name by offset from lib (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: build and install man page for eBPF helpers from bpftool/ (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1700846] - [include] bpf: fix documentation for eBPF helpers (Yauheni Kaliuta) [1700846] - [tools] bpftool: add bash completion for cgroup tree command (Yauheni Kaliuta) [1700846] - [tools] bpftool: document cgroup tree command (Yauheni Kaliuta) [1700846] - [tools] bpftool: introduce cgroup tree command (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test sys_connect BPF hooks with TFO (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: Add xdp_sample_pkts example (Yauheni Kaliuta) [1700846] - [tools] trace_helpers.c: Add helpers to poll multiple perf FDs for events (Yauheni Kaliuta) [1700846] - [net] bpf: deal with kABI breakage in cgroups (Yauheni Kaliuta) [1700846] - [netdrv] nfp: bpf: fix static check error through tightening shift amount adjustment (Pablo Cascon) [1663986] - [netdrv] nfp: disable netpoll on representors (Pablo Cascon) [1663986] - [netdrv] nfp: validate the return code from dev_queue_xmit() (Pablo Cascon) [1663986] - [netdrv] nfp: fix simple vNIC mailbox length (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: set higher timeout for flash bundle (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: allow the use of DMA buffer (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: move default buffer handling into its own function (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: use fractional size of the buffer (Pablo Cascon) [1663986] - [netdrv] nfp: report RJ45 connector in ethtool (Pablo Cascon) [1663986] - [netdrv] nfp: remove ethtool flashing fallback (Pablo Cascon) [1663986] - [netdrv] nfp: Remove switchdev.h inclusion (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: fix code-gen bug on BPF_ALU | BPF_XOR | BPF_K (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: allow flashing the device via devlink (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: include vendor/product info in serial number (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: use the generic manufacture identifier instead of vendor (Pablo Cascon) [1663986] - [netdrv] nfp: flower: cmsg: use struct_size() helper (Pablo Cascon) [1663986] - [netdrv] nfp: Implement ndo_get_port_parent_id() (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: complete ALU32 logic shift supports (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: correct the behavior for shifts by zero (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: report the running and flashed versions (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: add support for versions command (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: report fixed versions (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: report driver name and serial number (Pablo Cascon) [1663986] - [netdrv] nfp: use struct_size() in kzalloc() (Pablo Cascon) [1663986] - [netdrv] nfp: flower: enable MAC address sharing for offloadable devs (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ensure MAC cleanup on address change (Pablo Cascon) [1663986] - [netdrv] nfp: flower: add infastructure for non-repr priv data (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ensure deletion of old offloaded MACs (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove list infastructure from MAC offload (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ignore offload of VF and PF repr MAC addresses (Pablo Cascon) [1663986] - [netdrv] nfp: flower: tidy tunnel related private data (Pablo Cascon) [1663986] - [netdrv] nfp: flower: support multiple memory units for filter offloads (Pablo Cascon) [1663986] - [netdrv] nfp: flower: increase cmesg reply timeout (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: optimize codegen for JSET with a constant (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: remove the trivial JSET optimization (Pablo Cascon) [1663986] - [netdrv] nfp: flower: fix cb_ident duplicate in indirect block register (Pablo Cascon) [1663986] - [netdrv] nfp: abm: allow to opt-out of RED offload (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ensure TCP flags can be placed in IPv6 frame (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: implement jitting of BPF_ALU | BPF_ARSH | BPF_* (Pablo Cascon) [1663986] - [netdrv] nfp: convert to DEFINE_SHOW_ATTRIBUTE (Pablo Cascon) [1663986] - [netdrv] nfp: report more info when reconfiguration fails (Pablo Cascon) [1663986] - [netdrv] nfp: add offset to all TLV parsing errors (Pablo Cascon) [1663986] - [netdrv] nfp: add offloads on representors (Pablo Cascon) [1663986] - [netdrv] nfp: add locking around representor changes (Pablo Cascon) [1663986] - [netdrv] nfp: run don't require Qdiscs on representor netdevs (Pablo Cascon) [1663986] - [netdrv] nfp: run representor TX locklessly (Pablo Cascon) [1663986] - [netdrv] nfp: avoid oversized TSO headers with metadata prepend (Pablo Cascon) [1663986] - [netdrv] nfp: correct descriptor offsets in presence of metadata (Pablo Cascon) [1663986] - [netdrv] nfp: move queue variable init (Pablo Cascon) [1663986] - [netdrv] nfp: move temporary variables in nfp_net_tx_complete() (Pablo Cascon) [1663986] - [netdrv] nfp: copy only the relevant part of the TX descriptor for frags (Pablo Cascon) [1663986] - [netdrv] nfp: flower: prevent offload if rhashtable insert fails (Pablo Cascon) [1663986] - [netdrv] nfp: flower: release metadata on offload failure (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add support for more threshold actions (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add cls_u32 offload for simple band classification (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add functions to update DSCP -> virtual queue map (Pablo Cascon) [1663986] - [netdrv] nfp: abm: calculate PRIO map len and check mailbox size (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add GRED offload (Pablo Cascon) [1663986] - [netdrv] nfp: abm: wrap RED parameters in bands (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add up bands for sto/non-sto stats (Pablo Cascon) [1663986] - [netdrv] nfp: abm: switch to extended stats for reading packet/byte counts (Pablo Cascon) [1663986] - [netdrv] nfp: abm: size threshold table to account for bands (Pablo Cascon) [1663986] - [netdrv] nfp: abm: pass band parameter to functions (Pablo Cascon) [1663986] - [netdrv] nfp: abm: map per-band symbols (Pablo Cascon) [1663986] - [netdrv] nfp: abm: restructure Qdisc handling (Pablo Cascon) [1663986] - [netdrv] nfp: abm: save RED's parameters (Pablo Cascon) [1663986] - [netdrv] nfp: abm: reset RED's child based on limit (Pablo Cascon) [1663986] - [netdrv] nfp: abm: build full Qdisc hierarchy based on graft notifications (Pablo Cascon) [1663986] - [netdrv] nfp: abm: allocate Qdisc child table (Pablo Cascon) [1663986] - [netdrv] nfp: abm: remember which Qdisc is root (Pablo Cascon) [1663986] - [netdrv] nfp: abm: track all offload-enabled qdiscs (Pablo Cascon) [1663986] - [netdrv] nfp: abm: keep track of all RED thresholds (Pablo Cascon) [1663986] - [netdrv] nfp: abm: rename qdiscs -> red_qdiscs (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove unnecessary code in flow lookup (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove TC egdev offloads (Pablo Cascon) [1663986] - [netdrv] nfp: flower: offload tunnel decap rules via indirect TC blocks (Pablo Cascon) [1663986] - [netdrv] nfp: flower: increase scope of netdev checking functions (Pablo Cascon) [1663986] - [netdrv] nfp: flower: allow non repr netdev offload (Pablo Cascon) [1663986] - [netdrv] nfp: use the new __netdev_tx_sent_queue() BQL optimisation (Pablo Cascon) [1663986] - [netdrv] nfp: abm: refuse RED offload with harddrop set (Pablo Cascon) [1663986] - [netdrv] nfp: abm: don't set negative threshold (Pablo Cascon) [1663986] - [netdrv] nfp: abm: provide more precise info about offload parameter validation (Pablo Cascon) [1663986] - [netdrv] nfp: parse vNIC TLV capabilities at alloc time (Pablo Cascon) [1663986] - [netdrv] nfp: pass ctrl_bar pointer to nfp_net_alloc (Pablo Cascon) [1663986] - [netdrv] nfp: abm: split qdisc offload code into a separate file (Pablo Cascon) [1663986] - [netdrv] nfp: flower: include geneve as supported offload tunnel type (Pablo Cascon) [1663986] - [netdrv] nfp: flower: use geneve and vxlan helpers (Pablo Cascon) [1663986] - [netdrv] nfp: flower: use the common netdev notifier (Pablo Cascon) [1663986] - [netdrv] nfp: register a notifier handler in a central location for the device (Pablo Cascon) [1663986] - [netdrv] nfp: flower: make nfp_fl_lag_changels_event() void (Pablo Cascon) [1663986] - [netdrv] nfp: flower: don't try to nack device unregister events (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove unnecessary iteration over devices (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: protect against mis-initializing atomic counters (Pablo Cascon) [1663986] - [netdrv] nfp: devlink port split support for 1x100G CXP NIC (Pablo Cascon) [1663986] - [netdrv] nfp: replace long license headers with SPDX (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: support pointers to other stack frames for BPF-to-BPF calls (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: account for BPF-to-BPF calls when preparing nfp JIT (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: ignore helper-related checks for BPF calls in nfp verifier (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: rename nfp_prog->stack_depth as nfp_prog->stack_frame_depth (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow control message sizing for map ops (Pablo Cascon) [1663986] - [netdrv] nfp: allow apps to request larger MTU on control vNIC (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: parse global BPF ABI version capability (Pablo Cascon) [1663986] - [netdrv] nfp: warn on experimental TLV types (Pablo Cascon) [1663986] - [netdrv] nfp: remove ndo_poll_controller (Pablo Cascon) [1663986] - [netdrv] nfp: replace spin_lock_bh with spin_lock in tasklet callback (Pablo Cascon) [1663986] - [netdrv] nfp: separate VXLAN and GRE feature handling (Pablo Cascon) [1663986] - [netdrv] nfp: validate rtsym accesses fall within the symbol (Pablo Cascon) [1663986] - [netdrv] nfp: prefix rtsym error messages with symbol name (Pablo Cascon) [1663986] - [netdrv] nfp: fix readq on absolute RTsyms (Pablo Cascon) [1663986] - [netdrv] nfp: make RTsym users handle absolute symbols correctly (Pablo Cascon) [1663986] - [netdrv] nfp: support access to absolute RTsyms (Pablo Cascon) [1663986] - [netdrv] nfp: convert all RTsym users to use new read/write helpers (Pablo Cascon) [1663986] - [netdrv] nfp: convert existing RTsym helpers to full target decoding (Pablo Cascon) [1663986] - [netdrv] nfp: pass cpp_id to nfp_cpp_map_area() (Pablo Cascon) [1663986] - [netdrv] nfp: add RTsym access helpers (Pablo Cascon) [1663986] - [netdrv] nfp: add basic errors messages to target logic (Pablo Cascon) [1663986] - [netdrv] nfp: save the MU locality field offset (Pablo Cascon) [1663986] - [netdrv] nfp: refactor the per-chip PCIe config (Pablo Cascon) [1663986] - [netdrv] nfp: add support for NFP5000 (Pablo Cascon) [1663986] - [netdrv] nfp: abm: look up MAC addresses via management FW (Pablo Cascon) [1663986] - [netdrv] nfp: add support for indirect HWinfo lookup (Pablo Cascon) [1663986] - [netdrv] nfp: interpret extended FW load result codes (Pablo Cascon) [1663986] - [netdrv] nfp: attempt FW load from flash (Pablo Cascon) [1663986] - [netdrv] nfp: encapsulate NSP command arguments into structs (Pablo Cascon) [1663986] - [netdrv] nfp: clean up return types in kdoc comments (Pablo Cascon) [1663986] - [netdrv] nfp: flower: allow matching on ipv4 UDP tunnel tos and ttl (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: xdp_adjust_tail support (Pablo Cascon) [1663986] - [netdrv] nfp: fix variable dereferenced before check in nfp_app_ctrl_rx_raw() (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: improve map offload info messages (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: remember maps by ID (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow receiving perf events on data queues (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: pass raw data buffer to nfp_bpf_event_output() (Pablo Cascon) [1663986] - [netdrv] nfp: allow control message reception on data queues (Pablo Cascon) [1663986] - [netdrv] nfp: move repr handling on RX path (Pablo Cascon) [1663986] - [netdrv] nfp: protect from theoretical size overflows on HW descriptor ring (Pablo Cascon) [1663986] - [netdrv] nfp: restore correct ordering of fields in rx ring structure (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow program sharing within ASIC (Pablo Cascon) [1663986] - [netdrv] nfp: add .ndo_init() and .ndo_uninit() callbacks (Pablo Cascon) [1663986] - [netdrv] nfp: add support for simultaneous driver and hw XDP (Pablo Cascon) [1663986] - [netdrv] nfp: avoid using getnstimeofday64() (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: migrate to advanced reciprocal divide in reciprocal_div.h (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: support u32 divide using reciprocal_div.h (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: support u16 and u32 multiplications (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: copy range info for all operands of all ALU operations (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: rename umin/umax to umin_src/umax_src (Pablo Cascon) [1663986] - [netdrv] nfp: make use of napi_consume_skb() (Pablo Cascon) [1663986] - [netdrv] nfp: implement netpoll ndo (thus enabling netconsole) (Pablo Cascon) [1663986] - [netdrv] nfp: fail probe if serial or interface id is missing (Pablo Cascon) [1663986] - [netdrv] nfp: expose ring stats of inactive rings via ethtool (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow source ptr type be map ptr in memcpy optimization (Pablo Cascon) [1663986] - [netdrv] bpf: offload: keep the offload state per-ASIC (Pablo Cascon) [1663986] - [netdrv] bpf: offload: aggregate offloads per-device (Pablo Cascon) [1663986] - [tools] selftests/bpf: add test for sharing objects between netdevs (Ivan Vecera) [1708399] - [netdrv] netdevsim: allow program sharing between devices (Ivan Vecera) [1708399] - [net] bpf: offload: allow program and map sharing per-ASIC (Ivan Vecera) [1708399] - [netdrv] bpf: offload: keep the offload state per-ASIC (Ivan Vecera) [1708399] - [netdrv] bpf: offload: aggregate offloads per-device (Ivan Vecera) [1708399] - [net] bpf: offload: rename bpf_offload_dev_match() to bpf_offload_prog_map_match() (Ivan Vecera) [1708399] - [netdrv] netdevsim: associate bound programs with shared dev (Ivan Vecera) [1708399] - [netdrv] netdevsim: add shared netdevsim devices (Ivan Vecera) [1708399] - [netdrv] netdevsim: add switch_id attribute (Ivan Vecera) [1708399]- [infiniband] IB/mlx5: Remove set but not used variable (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: WQE dump jumps over first 16 bytes (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix false compilation warning (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Remove redundant assignment (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix compilation warning in en_tc.c (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix compilation warning in eq.c (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix the max MTU check in case of XDP (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix use-after-free after xdp_return_frame (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Fix scatter to CQE in DCT QP creation (Alaa Hleihel) [1691238] - [netdrv] Revert "net/mlx5e: Enable reporting checksum unnecessary also for L3 packets" (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Rx, Check ip headers sanity (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: FPGA, tls, idr remove on flow delete (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: FPGA, tls, hold rcu read lock a bit longer (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Consider tunnel type for encap contexts (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: E-Switch, Fix esw manager vport indication for more vport commands (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Correctly use the namespace type when allocating pedit action (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: ethtool, Allow legacy link-modes configuration via non-extended ptys (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: ethtool, Fix type analysis of advertised link-mode (Alaa Hleihel) [1691238] - [netdrv] net: mlx5: Add a missing check on idr_find, free buf (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Allow IPv4 ttl & IPv6 hop_limit rewrite for all L4 protocols (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Use mlx5 core to create/destroy a DEVX DCT (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix DCT creation bad flow (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Fix bad flow upon DEVX mkey creation (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Add support for ODP for DEVX indirection mkey (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Manage indirection mkey upon DEVX flow for ODP (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: DEVX handling for indirection MKEY (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix access to non-existing receive queue (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Properly get the PF number phys port name ndo (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Consolidate update FTE for all removal changes (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Add a locked flag to node removal functions (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Add modify FTE helper function (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix multiple updates of steering rules in parallel (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Validate correct PD before prefetch MR (Alaa Hleihel) [1691238] - [infiniband] RDMA/mlx5: Introduce and reuse helper to identify ODP MR (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Protect against prefetch of invalid MR (Alaa Hleihel) [1691238] - [infiniband] net/mlx5: Make mlx5_cmd_exec_cb() a safe API (Alaa Hleihel) [1691238] - [infiniband] RDMA: Clean structures from CONFIG_INFINIBAND_ON_DEMAND_PAGING (Alaa Hleihel) [1691238] - [infiniband] RDMA/mlx5: Embed into the code flow the ODP config option (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Add missing static function annotation (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Do not use hw_access_flags for be and CPU data (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix code style issue in mlx driver (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Fix the locking of SRQ objects in ODP events (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Make mlx5_ib_stage_odp_cleanup() static (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Declare local functions 'static' (Alaa Hleihel) [1691238] - [netdrv] RDMA/mlx5: Delete declaration of already removed function (Alaa Hleihel) [1691238] - [netdrv] mlx5-core: Mark ConnectX-6 Dx as unsupported device (Alaa Hleihel) [1691236 1687434] - [netdrv] net/mlx5: Update the list of the PCI supported devices (Alaa Hleihel) [1691236 1687434] - [infiniband] IB/mlx5: Fix mapping of link-mode to IB width and speed (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: ethtool, Add ethtool support for 50Gbps per lane link modes (Alaa Hleihel) [1691236 1683102] - [infiniband] IB/mlx5: Add support for 50Gbps per lane link modes (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5: Add support to ext_* fields introduced in Port Type and Speed register (Alaa Hleihel) [1691236 1683102] - [include] net/mlx5: Add new fields to Port Type and Speed register (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5: Refactor queries to speed fields in Port Type and Speed register (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5e: Set peer flow needed also for multipath (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Update check for merged eswitch device (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Use hint to resolve route when in HW multipath mode (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Always query offloaded tc peer rule counter (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Re-attempt to offload flows on multipath port affinity events (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Emit port affinity event for multipath offloads (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Allow one failure when offloading tc encap rules under multipath (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Don't inherit flow flags on peer flow creation (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Activate HW multipath and handle port affinity based on FIB events (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Add multipath mode (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Use own workqueue for lag netdev events processing (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Expose lag operations in header file (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Use unsigned int bit instead of bool as a struct member (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Don't make internal use of errno to denote missing neigh (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Cleanup attach encap function (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Remove 'parse_attr' argument in mlx5e_tc_add_fdb_flow() (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Introduce mlx5e_flow_esw_attr_init() helper (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Return the allocated flow directly from __mlx5e_add_fdb_flow (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix GRE key by controlling port tunnel entropy calculation (Alaa Hleihel) [1691236 1663240] - [include] net/mlx5: Introduce tunnel entropy control in PCMR register (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5: Use read-modify-write when changing PCMR register values (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Remove wrong and superfluous tc pedit header type check (Alaa Hleihel) [1691236] - [netdrv] drivers: net: use flow action infrastructure (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: support for two independent packet edit actions (Alaa Hleihel) [1691236] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, fix redirect resources availability check (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Fix a compilation warning in events.c (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: No command allowed when command interface is not ready (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix NULL pointer derefernce in set channels error flow (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Don't overwrite pedit action when multiple pedit used (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Update hw flows when encap source mac changed (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use the inner headers to determine tc/pedit offload limitation on decap flows (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Properly set steering match levels for offloaded TC decap rules (Alaa Hleihel) [1691236 1663207] - [netdrv] net/mlx5e: Unblock setting vid 0 for VFs through the uplink rep (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Move to use common phys port names for vport representors (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Allow MAC invalidation while spoofchk is ON (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Take lock with IRQs disabled to avoid deadlock (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix wrong private flag usage causing checksum disable (Alaa Hleihel) [1691236] - [netdrv] Revert "net/mlx5e: E-Switch, Initialize eswitch only if eswitch manager" (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Fix flow creation on representors (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix how advise_mr() launches async work (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Fix check for supported user flags when creating a QP (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix cb_ident duplicate in indirect block register (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix wrong (zero) TX drop counter indication for representor (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix wrong error code return on FEC query failure (Alaa Hleihel) [1691236] - [infiniband] Revert "IB/mlx5: Fix long EEH recover time with NVMe offloads" (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allow XRC INI usage via verbs in DEVX context (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: drop useless LIST_HEAD (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: fix semicolon.cocci warnings (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Signedness bug in UVERBS_HANDLER() (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allocate the per-port Q counter shared when DEVX is supported (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Add user control for XDP TX MPWQE feature (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Support Enhanced Multi-Packet TX WQE (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Add array for WQE info descriptors (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Maintain a FIFO structure for xdp_info instances (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Replace boolean doorbell indication with segment pointer (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Warn upon polling an error CQE (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Change the XDP SQ redirect indication (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Precede XDP-related operations in RQ poll by a loaded program check (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: TX, Print opcode in error CQE warning (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix wrong error unwind (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix long EEH recover time with NVMe offloads (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Simplify netdev unbinding (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use the correct commands for UMEM and UCTX allocation (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use uid as part of alloc/dealloc transport domain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Fix LAG requirement when CONFIG_MLX5_ESWITCH is off (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Fix query_nic_sys_image_guid() error during init (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Support tunnel encap over tagged Ethernet (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Support VLAN encap ETH header generation (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Re-order route and encap header memory allocation (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Tunnel encap ETH header helper function (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Fail attempt to offload e-switch TC encap flows with vlan on underlay (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Tunnel routing output devs helper function (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Fail attempt to offload e-switch TC flows with egress upper devices (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Allow vlans on e-switch uplink reps (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Increase VF representors' SQ size to 128 (Alaa Hleihel) [1691236] - [netdrv] mlx5: extend PTP gettime function to read system clock (Alaa Hleihel) [1691236] - [netdrv] mlx5: update timecounter at least twice per counter overflow (Alaa Hleihel) [1691236] - [include] IB/mlx5: Introduce uid as part of alloc/dealloc transport domain (Alaa Hleihel) [1691236] - [netdrv] drivers: net: ethernet: mellanox: use skb_sec_path helper (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix compile issue when ODP disabled (Alaa Hleihel) [1691236] - [include] net/mlx5: Add shared Q counter bits (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Add advise_mr() support (Alaa Hleihel) [1691236 1663248] - [infiniband] IB/uverbs: Add helper to get array size from ptr attribute (Alaa Hleihel) [1691236 1663248] - [infiniband] RDMA/mlx5: Fix function name typo 'fileds' -> 'fields' (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Delete unreachable handle_atomic code by simplifying SW completion (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Continue driver initialization despite debugfs failure (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Add some ethtool port control entries to the uplink rep netdev (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Expose ethtool pause and link functions to mlx5e callers (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Add sriov and udp tunnel ndo support for the uplink rep (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Handle port mtu/link, dcb and lag for uplink reps (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Uninstantiate esw manager vport netdev on switchdev mode (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Remove leftover code from the PF netdev being uplink rep (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Use dedicated uplink vport netdev representor (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Use single argument for the esw representor build params helper (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5: E-Switch, Remove redundant reloading of the IB interface (Alaa Hleihel) [1691236 1663256 1663207] - [netdrv] net/mlx5: Handle LAG FW commands failure gracefully (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Make RoCE and SR-IOV LAG modes explicit (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Rename mlx5_lag_is_bonded() to __mlx5_lag_is_active() (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Allow co-enablement of uplink LAG and SRIOV (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Allow/disallow LAG according to pre-req only (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Adjustments for the activate LAG logic to run under sriov (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Duplicate offloaded TC eswitch rules under uplink LAG (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Offload TC e-switch rules with egress LAG device (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: In case of LAG, one switch parent id is used for all representors (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Enhance flow counter scheme for offloaded TC eswitch rules (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Infrastructure for duplicated offloading of TC flows (Alaa Hleihel) [1691236 1663230 1663207] - [netdrv] net/mlx5e: E-Switch, Add peer miss rules (Alaa Hleihel) [1691236 1663230 1663207] - [netdrv] net/mlx5: Introduce inter-device communication mechanism (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Fold the modify lag code into function (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Add lag affinity info to log (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Split the activate lag function into two routines (Alaa Hleihel) [1691236 1663230] - [include] net/mlx5: E-Switch, Introduce flow counter affinity (Alaa Hleihel) [1691236 1663230] - [infiniband] IB/mlx5: Unify e-switch representors load approach between uplink and VFs (Alaa Hleihel) [1691236] - [include] net/mlx5: Use lowercase 'X' for hex values (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Remove set but not used variable 'upriv' (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove duplicated include from eswitch.c (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use monitor counters for update stats (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Monitor counters commands support (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Avoid query PPCNT register if not supported by the device (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use CQE padding for Ethernet CQs (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Support multiple encapsulations for a TC flow (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Allow association of a flow to multiple encaps (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5e: Change parse attr struct to accommodate multiple tunnel infos (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5e: Support header rewrite actions with remote port mirroring (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Replace the split logic with extended destination (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5e: Annul encap action ordering requirement (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Move flow attr reformat action bit to per dest flags (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Refactor eswitch flow attr for destination specific properties (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5: E-Switch, Rename esw attr mirror count field (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5: Consider encapsulation properties when comparing destinations (Alaa Hleihel) [1691236 1663239] - [infiniband] RDMA/mlx5: Fail early if user tries to create flows on IB representors (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Remove duplicated include from mlx5_ib.h (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Add 2X width support to query_port (Alaa Hleihel) [1691236 1683102] - [infiniband] IB/mlx5: Add HDR speed support to query port (Alaa Hleihel) [1691236 1683102] - [infiniband] IB/mlx5: Report CapabilityMask2 in ib_query_port (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5e: Add GRE protocol offloading (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Move TC tunnel offloading code to separate source file (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Branch according to classified tunnel type (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Refactor VXLAN tunnel decap offloading code (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Refactor VXLAN tunnel encap offloading code (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Replace egdev with indirect block notifications (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Propagate the filter's net device to mlx5e structures (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Provide the TC filter netdev as parameter to flower callbacks (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Support TC indirect block notifications for eswitch uplink reprs (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Store eswitch uplink representor state on a dedicated struct (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5: Remove the get protocol device interface entry (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Support extended destination format in flow steering command (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5: E-Switch, Change vhca id valid bool field to bit flag (Alaa Hleihel) [1691236 1663239 1663207] - [include] net/mlx5: Introduce extended destination fields (Alaa Hleihel) [1691236 1663239] - [infiniband] net/mlx5: Revise gre and nvgre key formats (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5: Add monitor commands layout and event data (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Add support for plugged-disabled cable status in PME (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Add support for PCIe power slot exceeded error in PME (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Rework handling of port module events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Move flow counters data structures from flow steering header (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use helper to get CQE opcode (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Use helper to get CQE opcode (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: When fetching CQEs return CQE instead of void pointer (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Report packet based credit mode device capability (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Add packet based credit mode support (Alaa Hleihel) [1691236] - [include] net/mlx5: Expose packet based credit mode (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Enable TX on a DEVX flow table (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Improve ethtool private-flags code structure (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: ethtool, Support user configuration for RX hash fields (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Move RSS params to a dedicated struct (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Refactor TIR configuration function (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Move modify tirs hash functionality (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Cleanup unused defines (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Remove trailing space of tx_pause ethtool counter name (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allow XRC usage via verbs in DEVX context (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Update the supported DEVX commands (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Enforce DEVX privilege by firmware (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Enable modify and query verbs objects via DEVX (Alaa Hleihel) [1691236] - [include] net/mlx5: Update mlx5_ifc with DEVX UCTX capabilities bits (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Unfold modify RMP function (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Unfold create RMP function (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Initialize SRQ tables on mlx5_ib (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Update SRQ functions signatures to mlx5_ib format (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Use stages for callback to setup and release DEVX (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Remove SRQ signature global flag (Alaa Hleihel) [1691236] - [infiniband] net/mlx5: Move SRQ functions to RDMA part (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove references to local mlx5_core functions (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove not-used lib/eq.h header file (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove dead transobj code (Alaa Hleihel) [1691236] - [infiniband] net/mlx5: Align SRQ licenses and copyright information (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Debug print for forwarded async events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Forward SRQ resource events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Forward QP/WorkQueues resource events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove all deprecated software versions of FW events (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Handle raw delay drop general event (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Allow forwarding event type general event as is (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Handle raw port change event rather than the software version (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove unused events callback and logic (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use the new mlx5 core notifier API (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Forward all mlx5 events to mlx5 notifiers chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use the new mlx5 core notifier API (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Allow port change event to be forwarded to driver notifiers chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Driver events notifier API (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use fragmented QP's buffer for in-kernel users (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use fragmented SRQ's buffer for in-kernel users (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Attach a DEVX counter via raw flow creation (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Improve core device events handling (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Device events, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: CQ ERR, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Resource tables, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: CmdIF, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: FWPage, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: E-Switch, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Clock, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: FPGA, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: FWTrace, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Introduce atomic notifier chain subscription API (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Use the uapi disablement APIs instead of code (Alaa Hleihel) [1691236] - [infiniband] RDMA/uverbs: Use a linear list to describe the compiled-in uapi (Alaa Hleihel) [1691236] - [netdrv] mlx5: use skb_vlan_tag_get_prio() (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allow modify AV in DCI QP to RTR (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Make EQE access methods inline (Alaa Hleihel) [1691236] - [netdrv] {net, IB}/mlx5: Move Page fault EQ and ODP logic to RDMA (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Generic EQ (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Different EQ types (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Privatize eq_table and friends (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, irq_info and rmap belong to eq_table (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Create all EQs in one place (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Move all EQ logic to eq.c (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Remove redundant completion EQ list lock (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, No need to store eq index as a field (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Remove unused fields and structures (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Use the right place to store/read IRQ affinity hint (Alaa Hleihel) [1691236] - [include] net/mlx5: Fix offsets of ifc reserved fields (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Remove the false indication of software timestamping support (Alaa Hleihel) [1691234 1647734] - [netdrv] net/mlx5: Typo fix in del_sw_hw_rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: RX, Fix wrong early return in receive queue poll (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Cancel DIM work on close SQ (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Remove unused UDP GSO remaining counter (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Avoid encap flows deletion attempt the 1st time a neigh is resolved (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Properly initialize flow attributes for slow path eswitch rule deletion (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Avoid overriding the user provided priority for offloaded tc rules (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Err if asked to mirror a goto chain tc eswitch rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix default amount of channels for VF representors (Alaa Hleihel) [1691234] - [include] net/mlx5: E-Switch, Fix fdb cap bits swap (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Block DEVX umem from the non applicable cases (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Fix XRC QP support after introducing extended atomic (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix failing ethtool query on FEC query error (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix wrong field name in FEC related functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix a bug in turning off FEC policy in unsupported speeds (Alaa Hleihel) [1691234] - [include] net/mlx5: Fix XRC SRQ umem valid bits (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Allocate enough space for the FDB sub-namespaces (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Added 'raw_errors_laneX' fields to ethtool statistics (Alaa Hleihel) [1691234] - [include] net/mlx5: Added "per_lane_error_counters" cap bit to PCAM (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Ethtool driver callback for query/set FEC policy (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add port FEC get/set functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add FEC fields to Port Phy Link Mode (PPLM) reg (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Remove counter from idr after removing it from list (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Take fs_counters dellist before addlist (Alaa Hleihel) [1691234] - [infiniband] net/mlx5: Refactor fragmented buffer struct fields and init flow (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Support offloading tc priorities and chains for eswitch flows (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Use a slow path rule instead if vxlan neighbour isn't available (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Enable setting goto slow path chain action (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Avoid duplicated code for tc offloads add/del fdb rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: For TC offloads, always add new flow instead of appending the actions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add a no-append flow insertion mode (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Add chains and priorities (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Have explicit API to delete fwd rules (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Split FDB fast path prio to multiple namespaces (Alaa Hleihel) [1691234] - [include] net/mlx5: Add cap bits for multi fdb encap (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Split TC add rule path for nic vs e-switch (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Change return type of tc add flow functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Use flow counter IDs and not the wrapping cache object (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Get counters for offloaded flows from callers (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Add support for extended atomic operations (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Allow scatter to CQE without global signaled WRs (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Verify that driver supports user flags (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Support scatter to CQE for DC transport type (Alaa Hleihel) [1691234] - [include] net/mlx5: Expose DC scatter to CQE capability bit (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Add support for flow tag to raw create flow (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Verify DEVX object type (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add new counter for aRFS rule insertion failures (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add extack messages for TC offload failures (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: E-Switch, Add extack messages to devlink callbacks (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Allow reporting of checksum unnecessary (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Enable reporting checksum unnecessary also for L3 packets (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add ethtool control of ring params to VF representors (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Enable multi-queue and RSS for VF representors (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Expose ethtool rss key size / indirection table functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Expose function for building RSS params (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Provide explicit directive if to create inner indirect tirs (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Provide flow dest when creating vport rx rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Extract creation of rep's default flow rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Enable stateless offloads for VF representor netdevs (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Change VF representors' RQ type (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Ethtool steering, Support masks for l3/l4 filters (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Enable DEVX on IB (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Enable DEVX white list commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Manage device uid for DEVX white list commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Expose RAW QP device handles to user space (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set valid umem bit on DEVX (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of TD commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of XRCD commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of CQ creation (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid upon PD allocation (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of RQT commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of TIS commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of TIR commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of MCG commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of DCT commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of SRQ commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of SQ commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of RQ commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of QP creation (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Use uid as part of PD commands (Alaa Hleihel) [1691234] - [include] net/mlx5: Update mlx5_ifc with DEVX UID bits (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of DCT commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of SRQ commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of SQ commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of RQ commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of QP commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of CQ commands (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Enable vport loopback when user context or QP mandate (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Allow creating RAW ethernet QP with loopback support (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Refactor transport domain bookkeeping logic (Alaa Hleihel) [1691234] - [infiniband] net/mlx5: Rename incorrect naming in IFC file (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Use rdma_user_mmap_io (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Allow creating a matcher for a NIC TX flow table (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add NIC TX namespace when getting a flow table (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add flow actions support to raw create flow (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Refactor raw flow creation (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Don't overwrite action if already set (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Refactor flow action parsing to be more generic (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable attaching packet reformat action to steering flows (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable reformat on NIC RX if supported (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable attaching DECAP action to steering flows (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable decap and packet reformat on flow tables (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable attaching modify header to steering flows (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add NIC TX steering support (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5e: Replace PTP clock lock from RW lock to seq lock (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Move Q counters allocation and drop RQ to init_rx (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add flow counters idr (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Store flow counters in a list (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add new list to store deleted flow counters (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Change flow counters addlist type to single linked list (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Extend packet reformat verbs (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add new flow action verb - packet reformat (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/uverbs: Add generic function to fill in flow action object (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add a new flow action verb - modify header (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Export packet reformat alloc/dealloc functions (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Pass a namespace for packet reformat ID allocation (Alaa Hleihel) [1691234 1663215] - [include] net/mlx5: Expose new packet reformat capabilities (Alaa Hleihel) [1691234 1663215] - [netdrv] {net, RDMA}/mlx5: Rename encap to reformat packet (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Move header encap type to IFC header file (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Break encap/decap into two separated flow table creation flags (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Add support for more namespaces when allocating modify header (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Export modify header alloc/dealloc functions (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Add proper NIC TX steering flow tables support (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Cleanup flow namespace getter switch logic (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Change TX affinity assignment in RoCE LAG mode (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add memic command opcode to command checker (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Destroy the DEVX object upon error flow (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, Read capabilities only when it is safe (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering, fix udp source port value (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Improve argument name for add flow API (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering, l4 proto support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering, ip6 support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering flow parsing refactoring (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering flow validation refactoring (Alaa Hleihel) [1691231] - [infiniband] IB/uverbs: Use uverbs_alloc for allocations (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Unexport functions that need not be exported (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Remove unused mlx5_query_vport_admin_state (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: E-Switch, Remove unused argument when creating legacy FDB (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Rename modify/query_vport state related enums (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Mark expected switch fall-throughs (Alaa Hleihel) [1691231] - [netdrv] mellanox: fix the dport endianness in call of __inet6_lookup_established() (Alaa Hleihel) [1691231] - [netdrv] mlx5: handle DMA mapping error case for XDP redirect (Alaa Hleihel) [1691231] - [infiniband] IB/uverbs: Add UVERBS_ATTR_FLAGS_IN to the specs language (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Issue direct lookup on vxlan ports by vport representors (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TX, Use function to access sq_dma object in fifo (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TX, Move DB fields in TXQ-SQ struct (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Add support for XDP_REDIRECT in device-out side (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Re-order fields of struct mlx5e_xdpsq (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Refactor XDP counters (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Make XDP xmit functions more generic (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Add counter for XDP redirect in RX (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Enable driver uapi commands for flow steering (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Add support for a flow table destination for driver flow steering (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Support adding flow steering rule by raw description (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Introduce driver create and destroy flow methods (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Introduce flow steering matcher uapi object (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add support for flow table destination number (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add forward compatible support for the FTE match data (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Support offloading double vlan push/pop tc actions (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5e: Refactor tc vlan push/pop actions offloading (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5e: Support offloading tc double vlan headers match (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5: FW tracer, Add debug prints (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, Enable tracing (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, parse traces and kernel tracing support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, events handling (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, register log buffer memory key (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, create trace buffer and copy strings database (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, implement tracer logic (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Remove set but not used variables (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add XRQ commands definitions (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add core support for double vlan push/pop steering action (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5: Expose MPEGC (Management PCIe General Configuration) structures (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, add hardware structures (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: fix an unused-function warning (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: IPsec, fix byte count in CQE (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Accel, add common metadata functions (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, build TLS netdev from capabilities (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, add software statistics (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, add Innova TLS rx data path (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, add innova rx support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Accel, add TLS rx offload routines (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, refactor variable names (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Check that supplied blue flame index doesn't overflow (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Melt consecutive calls to alloc_bfreg() in one call (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Use 2-factor allocator calls (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Remove unused port number parameter (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Expose dump and fill memory key (Alaa Hleihel) [1691231] - [include] net/mlx5: Add hardware definitions for dump_fill_mkey (Alaa Hleihel) [1691231] - [infiniband] net/mlx5: Limit scope of dump_fill_mkey function (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Add support for drain SQ & RQ (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Support RoCE ICRC encapsulated error counter (Alaa Hleihel) [1691231 1663195] - [include] net/mlx5: Add RoCE RX ICRC encapsulated counter (Alaa Hleihel) [1691231 1663195] - [infiniband] RDMA/mlx5: Refactor transport domain checks (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Expose DEVX tree (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add DEVX query EQN support (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add DEVX support for memory registration (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add support for DEVX query UAR (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add DEVX support for modify and query commands (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add obj create and destroy functionality (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add support for DEVX general command (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Introduce DEVX (Alaa Hleihel) [1691231 1663190] - [netdrv] net/mlx5: Expose DEVX specification (Alaa Hleihel) [1691231]- [virt] kvm: arm/arm64: Don't emulate virtual timers on userspace ioctls (Andrew Jones) [1716066] - [virt] kvm: arm/arm64: Remove unused timer variable (Andrew Jones) [1716066] - [virt] kvm: arm/arm64: Rework the timer code to use a timer_map (Andrew Jones) [1716066] - [powerpc] powernv: Fix compile without CONFIG_TRACEPOINTS (David Gibson) [1524674] - [virt] kvm: ppc: book3s: Remove useless checks in 'release' method of KVM device (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Clear escalation interrupt pointers on device close (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Prevent races when releasing device (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Replace the 'destroy' method by a 'release' method (David Gibson) [1524674] - [virt] kvm: Introduce a 'release' method for KVM devices (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Activate XIVE exploitation mode (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add passthrough support (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a mapping for the source ESB pages (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a TIMA mapping (David Gibson) [1524674] - [virt] kvm: Introduce a 'mmap' method for KVM devices (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add get/set accessors for the VP XIVE state (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a control to dirty the XIVE EQ pages (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a control to sync the sources (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a global reset control (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add controls for the EQ configuration (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a control to configure a source (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: add a control to initialize a source (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Introduce a new capability KVM_CAP_PPC_IRQ_XIVE (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: Add a new KVM device for the XIVE native exploitation mode (David Gibson) [1524674] - [powerpc] xive: add OPAL extensions for the XIVE native exploitation support (David Gibson) [1524674] - [powerpc] powernv: move OPAL call wrapper tracing and interrupt handling to C (David Gibson) [1524674] - [thermal] thermal/intel_powerclamp: fix truncated kthread name (Lihong Yang) [1716810] - [kernel] kernel/signal.c: trace_signal_deliver when signal_group_exit (Waiman Long) [1548279] - [kernel] signal: unconditionally leave the frozen state in ptrace_stop() (Waiman Long) [1548279] - [kernel] cgroup: never call do_group_exit() with task->frozen bit set (Waiman Long) [1548279] - [kernel] kernel: cgroup: fix misuse of x (Waiman Long) [1548279] - [kernel] cgroup: get rid of cgroup_freezer_frozen_exit() (Waiman Long) [1548279] - [kernel] cgroup: prevent spurious transition into non-frozen state (Waiman Long) [1548279] - [kernel] cgroup: Remove unused cgrp variable (Waiman Long) [1548279] - [documentation] cgroup: document cgroup v2 freezer interface (Waiman Long) [1548279] - [kernel] cgroup: add tracing points for cgroup v2 freezer (Waiman Long) [1548279] - [kernel] cgroup: make TRACE_CGROUP_PATH irq-safe (Waiman Long) [1548279] - [tools] kselftests: cgroup: don't fail on cg_kill_all() error in cg_destroy() (Waiman Long) [1548279] - [kernel] cgroup: cgroup v2 freezer (Waiman Long) [1548279] - [kernel] cgroup: protect cgroup->nr_(dying_)descendants by css_set_lock (Waiman Long) [1548279] - [kernel] cgroup: implement __cgroup_task_count() helper (Waiman Long) [1548279] - [kernel] cgroup: rename freezer.c into legacy_freezer.c (Waiman Long) [1548279] - [kernel] cgroup: remove extra cgroup_migrate_finish() call (Waiman Long) [1548279] - [kernel] cgroup/cpuset: Update stale generate_sched_domains() comments (Waiman Long) [1548279] - [kernel] cgroup: saner refcounting for cgroup_root (Waiman Long) [1548279] - [fs] fix cgroup_do_mount() handling of failure exits (Waiman Long) [1548279] - [kernel] cgroup: Add named hierarchy disabling to cgroup_no_v1 boot param (Waiman Long) [1548279] - [kernel] cgroup: fix parsing empty mount option string (Waiman Long) [1548279] - [kernel] cgroup: fix CSS_TASK_ITER_PROCS (Waiman Long) [1548279] - [kernel] cgroup: Fix dom_cgrp propagation when enabling threaded mode (Waiman Long) [1548279] - [lib] lib: objagg: fix handling of object with 0 users when assembling hints (Ivan Vecera) [1704850] - [lib] test_objagg: Uninitialized variable in error handling (Ivan Vecera) [1704850] - [lib] test_objagg: Test the correct variable (Ivan Vecera) [1704850] - [lib] lib: objagg: Fix an error code in objagg_hints_get() (Ivan Vecera) [1704850] - [lib] lib: objagg: add root count to stats (Ivan Vecera) [1704850] - [lib] lib: objagg: implement optimization hints assembly and use hints for object creation (Ivan Vecera) [1704850] - [lib] lib: objagg: fix typo in objagg_stats_put() docstring (Ivan Vecera) [1704850] - [lib] lib: introduce initial implementation of object aggregation manager (Ivan Vecera) [1704850] - [netdrv] ibmvnic: Fix unchecked return codes of memory allocations (Steve Best) [1718919] - [netdrv] ibmvnic: Refresh device multicast list after reset (Steve Best) [1718919] - [netdrv] ibmvnic: Do not close unopened driver during reset (Steve Best) [1718919] - [target] scsi: target: tcmu: Switch to bitmap_zalloc() (Maurizio Lombardi) [1712917] - [target] scsi: target: tcmu: wait for nl reply only if there are listeners or during an add (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Simplify iscsit_handle_text_cmd() (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Simplify iscsit_dump_data_payload() (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Avoid iscsit_release_commands_from_conn() deadlock (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Rename a function and a function pointer (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Fix spelling of "unsolicited" (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Convert comments about locking into runtime checks (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Remove an incorrect comment (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Add target_send_busy() (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Inline transport_lun_remove_cmd() (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Simplify the LUN RESET implementation (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove several state tests from the TMF code (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove the write_pending_status() callback function (Maurizio Lombardi) [1712917] - [target] scsi: target: make the pi_prot_format ConfigFS path readable (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: fix use after free (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: avoid cmd/qfull timers updated whenever a new cmd comes (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: fix error msg typo when create lio_qr_cache failed (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use kmem_cache_free() instead of kfree() (Maurizio Lombardi) [1712917] - [target] scsi: target: perform t10_wwn ID initialisation in target_alloc_device() (Maurizio Lombardi) [1712917] - [target] scsi: target: remove hardcoded T10 Vendor ID in INQUIRY response (Maurizio Lombardi) [1712917] - [target] scsi: target: add device vendor_id configfs attribute (Maurizio Lombardi) [1712917] - [target] scsi: target: consistently null-terminate t10_wwn strings (Maurizio Lombardi) [1712917] - [target] scsi: target: use consistent left-aligned ASCII INQUIRY data (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Reduce the amount of code executed with a spinlock held (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Make ABORT and LUN RESET handling synchronous (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Fix TAS handling for aborted commands (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Simplify the code for aborting SCSI commands (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Make it possible to wait from more than one context for command completion (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use system workqueues for TMF (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Make sure that target_wait_for_sess_cmds() waits long enough (Maurizio Lombardi) [1712917] - [target] scsi: target: Fix target_wait_for_sess_cmds breakage with active signals (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Simplify transport_clear_lun_ref() (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use kvcalloc() instead of open-coding it (Maurizio Lombardi) [1712917] - [target] scsi: target/tcmu: Fix queue_cmd_ring() declaration (Maurizio Lombardi) [1712917] - [target] scsi: target: replace fabric_ops.name with fabric_alias (Maurizio Lombardi) [1712917] - [target] scsi: target: drop unnecessary get_fabric_name() accessor from fabric_ops (Maurizio Lombardi) [1712917] - [target] scsi: target: drop unused pi_prot_format attribute storage (Maurizio Lombardi) [1712917] - [target] scsi: target: add emulate_pr backstore attr to toggle PR support (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Avoid that a kernel oops is triggered when COMPARE AND WRITE fails (Maurizio Lombardi) [1712917] - [target] scsi: target: Don't request modules that aren't even built (Maurizio Lombardi) [1712917] - [target] scsi: target: Set response length for REPORT TARGET PORT GROUPS (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Always call transport_complete_callback() upon failure (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use sg_alloc_table() instead of open-coding it (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use the SECTOR_SHIFT constant (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove the SCF_COMPARE_AND_WRITE_POST flag (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove an unused data member from struct xcopy_pt_cmd (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Fix spelling in two source code comments (Maurizio Lombardi) [1712917] - [target] scsi: target: stash sess_err_stats on Data-Out timeout (Maurizio Lombardi) [1712917] - [target] scsi: target: split out helper for cxn timeout error stashing (Maurizio Lombardi) [1712917] - [target] scsi: target: log NOP ping timeouts as errors (Maurizio Lombardi) [1712917] - [target] scsi: target: log Data-Out timeouts as errors (Maurizio Lombardi) [1712917] - [include] scsi: target: use ISCSI_IQN_LEN in iscsi_target_stat (Maurizio Lombardi) [1712917] - [target] scsi: target: iblock: split T10 PI SGL across command bios (Maurizio Lombardi) [1712917] - [target] scsi: iscsi: target: fix spelling mistake "entires" -> "entries" (Maurizio Lombardi) [1712917] - [target] scsi: iscsi: target: Fix conn_ops double free (Maurizio Lombardi) [1712917] - [target] scsi: iscsi: target: Set conn->sess to NULL when iscsi_login_set_conn_values fails (Maurizio Lombardi) [1712917] - [target] scsi: target: loop, usb, vhost, xen: use target_remove_session (Maurizio Lombardi) [1712917] - [target] scsi: tcm_fc: use target_remove_session (Maurizio Lombardi) [1712917] - [target] scsi: target: make transport_init_session_tags static (Maurizio Lombardi) [1712917] - [target] scsi: iscsi target: have iscsit_start_nopin_timer call __iscsit_start_nopin_timer (Maurizio Lombardi) [1712917] - [target] scsi: target: fix __transport_register_session locking (Maurizio Lombardi) [1712917] - [target] Revert "scsi: target/iscsi: Reduce number of __iscsit_free_cmd() callers" (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: use u64 for dev_size (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: use match_int for dev params (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: do not set max_blocks if data_bitmap has been setup (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: unmap if dev is configured (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: check if dev is configured before block/reset (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: use lio core se_device configuration helper (Maurizio Lombardi) [1712917] - [target] scsi: target: add helper to check if dev is configured (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: initialize list head (Maurizio Lombardi) [1712917] - [target] scsi: target_core_user: fix double unlock (Maurizio Lombardi) [1712917] - [target] scsi: target: Remove se_dev_entry.ua_count (Maurizio Lombardi) [1712917] - [target] scsi: target: Fix handling of removed LUNs (Maurizio Lombardi) [1712917] - [target] scsi: target: Send unit attention condition even if the sense buffer is too small (Maurizio Lombardi) [1712917] - [target] scsi: target: Do not duplicate the code that marks that a command has sense data (Maurizio Lombardi) [1712917] - [target] scsi: target/tcm_loop: Avoid that static checkers warn about dead code (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Reduce number of __iscsit_free_cmd() callers (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify the code for waiting for command completion (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify transport_generic_free_cmd() (2/2) (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify transport_generic_free_cmd() (1/2) (Maurizio Lombardi) [1712917] - [target] scsi: target: Fold core_tmr_handle_tas_abort() into transport_cmd_finish_abort() (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify core_tmr_handle_tas_abort() (Maurizio Lombardi) [1712917] - [target] scsi: target: Document when CMD_T_STOP and CMD_T_COMPLETE are set (Maurizio Lombardi) [1712917] - [target] scsi: target: Make the session shutdown code also wait for commands that are being aborted (Maurizio Lombardi) [1712917] - [target] scsi: target: Introduce transport_init_session() (Maurizio Lombardi) [1712917] - [target] scsi: target: Rename transport_init_session() into transport_alloc_session() (Maurizio Lombardi) [1712917] - [target] scsi: target: Move a list_del_init() statement (Maurizio Lombardi) [1712917] - [target] scsi: target: Avoid that EXTENDED COPY commands trigger lock inversion (Maurizio Lombardi) [1712917] - [target] scsi: target: Use config_item_name() instead of open-coding it (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: Don't pass KERN_ERR to pr_err (Maurizio Lombardi) [1712917] - [target] scsi: target: remove target_find_device (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: add module wide block/reset_netlink support (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: misc nl code cleanup (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: simplify nl interface (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: track nl commands (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: delete unused __wait (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: remove useless code and clean up the code style (Maurizio Lombardi) [1712917]- [ipc] ipc: do cyclic id allocation for the ipc object. (Waiman Long) [1710480] - [ipc] ipc: conserve sequence numbers in ipcmni_extend mode (Waiman Long) [1710480] - [ipc] ipc: allow boot time extension of IPCMNI from 32k to 16M (Waiman Long) [1710480] - [ipc] ipc/mqueue: optimize msg_get() (Waiman Long) [1710480] - [ipc] ipc/mqueue: remove redundant wq task assignment (Waiman Long) [1710480] - [ipc] ipc: prevent lockup on alloc_msg and free_msg (Waiman Long) [1710480] - [ipc] ipc: IPCMNI limit check for semmni (Waiman Long) [1710480] - [ipc] ipc: IPCMNI limit check for msgmni and shmmni (Waiman Long) [1710480] - [ipc] ipc/shm.c: use ERR_CAST() for shm_lock() error return (Waiman Long) [1710480] - [ipc] ipc/shm: properly return EIDRM in shm_lock() (Waiman Long) [1710480] - [ipc] ipc/util.c: update return value of ipc_getref from int to bool (Waiman Long) [1710480] - [ipc] ipc/util.c: further variable name cleanups (Waiman Long) [1710480] - [ipc] ipc: simplify ipc initialization (Waiman Long) [1710480] - [ipc] ipc: get rid of ids->tables_initialized hack (Waiman Long) [1710480] - [lib] lib/rhashtable: guarantee initial hashtable allocation (Waiman Long) [1710480] - [lib] lib/rhashtable: simplify bucket_table_alloc() (Waiman Long) [1710480] - [ipc] ipc: drop ipc_lock() (Waiman Long) [1710480] - [ipc] ipc/util.c: correct comment in ipc_obtain_object_check (Waiman Long) [1710480] - [ipc] ipc: rename ipcctl_pre_down_nolock() (Waiman Long) [1710480] - [ipc] ipc/util.c: use ipc_rcu_putref() for failues in ipc_addid() (Waiman Long) [1710480] - [ipc] ipc: reorganize initialization of kern_ipc_perm.seq (Waiman Long) [1710480] - [ipc] ipc: compute kern_ipc_perm.id under the ipc lock (Waiman Long) [1710480] - [x86] x86/speculation/mds: Improve CPU buffer clear documentation (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Revert CPU buffer clear on double fault exit (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add 'mitigations=' support for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [s390] s390/speculation: Support 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [powerpc] powerpc/speculation: Support 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [mm] x86/speculation: Support 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [kernel] cpu/speculation: Add 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/mds: Fix documentation typo (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] Documentation: Correct the possible MDS sysfs values (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/mds: Add MDSUM variant to the MDS documentation (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Fix comment (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add SMT warning message (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation: Move arch_smt_update() call to after mitigation decisions (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/mds: Add mds=full,nosmt cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] Documentation: Add MDS vulnerability documentation (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] documentation: Move L1TF to separate directory (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add mitigation mode VMWERV (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [base] x86/speculation/mds: Add sysfs reporting for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add mitigation control for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Conditionally clear CPU buffers on idle entry (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [kvm] x86/kvm/vmx: Add MDS protection when L1D Flush is not active (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Clear CPU buffers on exit to user (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/mds: Add mds_clear_cpu_buffers() (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [kvm] x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add BUG_MSBDS_ONLY (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add basic bug infrastructure for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation: Consolidate CPU whitelists (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [tools] x86/msr-index: Cleanup bit defines (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/l1tf: Drop the swap storage limit restriction when l1tf=off (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation: Cast ~SPEC_CTRL_STIBP atomic value to int (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [tools] tools power x86_energy_perf_policy: Override CFLAGS assignments and add LDFLAGS to build command (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [scsi] scsi: qla2xxx: Fix read offset in qla24xx_load_risc_flash() (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Simplify conditional check again (Himanshu Madhani) [1665555] - [scsi] qla2xxx: Update driver version to 10.01.00.15.08.1-k (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Secure flash update support for ISP28XX (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add 28xx flash primary/secondary status/image mechanism (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Simplification of register address used in qla_tmpl.c (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Correction and improvement to fwdt processing (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Update flash read/write routine (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add support for multiple fwdump templates/segments (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Cleanups for NVRAM/Flash read/write path (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Correctly report max/min supported speeds (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add Serdes support for ISP28XX (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add Device ID for ISP28XX (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Fix routine qla27xx_dump_{mpi|ram}() (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Remove FW default template (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add fw_attr and port_no SysFS node (Himanshu Madhani) [1665555] - [netdrv] e1000e: Disable runtime PM on CNP+ (David Arcari) [1659179] - [netdrv] intel: correct return from set features callback (David Arcari) [1659179] - [netdrv] e1000e: Fix -Wformat-truncation warnings (David Arcari) [1659179] - [netdrv] e1000e: fix cyclic resets at link up with active tx (David Arcari) [1659179] - [netdrv] e1000e: fix a missing check for return value (David Arcari) [1659179] - [netdrv] e1000e: Exclude device from suspend direct complete optimization (David Arcari) [1659179] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (David Arcari) [1659179] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (David Arcari) [1659179] - [netdrv] e1000e: extend PTP gettime function to read system clock (David Arcari) [1659179] - [netdrv] e1000e: allow non-monotonic SYSTIM readings (David Arcari) [1659179] - [netdrv] intel-ethernet: use correct module license (David Arcari) [1659179] - [kernel] sched/cpufreq: Fix kobject memleak (Phil Auld) [1714719] - [kernel] sched/core: Check quota and period overflow at usec to nsec conversion (Phil Auld) [1714719] - [kernel] sched/core: Handle overflow in cpu_shares_write_u64 (Phil Auld) [1714719] - [kernel] sched/rt: Check integer overflow at usec to nsec conversion (Phil Auld) [1714719] - [base] arch_topology: Make cpu_capacity sysfs node as read-only (Phil Auld) [1714719] - [x86] sched/x86: Save [ER]FLAGS on context switch (Phil Auld) [1714719] - [kernel] sched/fair: Remove setting task's se->runnable_weight during PELT update (Phil Auld) [1714719] - [kernel] sched/fair: Disable LB_BIAS by default (Phil Auld) [1714719] - [arm64] sched/topology, arch/arm64: Rebuild the sched_domain hierarchy when the CPU capacity changes (Phil Auld) [1714719] - [base] sched/topology, drivers/base/arch_topology: Rebuild the sched_domain hierarchy when capacities change (Phil Auld) [1714719] - [kernel] sched/topology: Add SD_ASYM_CPUCAPACITY flag detection (Phil Auld) [1714719] - [kernel] sched/fair: Fix load_balance redo for !imbalance (Phil Auld) [1714719] - [tools] cpupower : frequency-set -r option misses the last cpu in related cpu list (Steve Best) [1717841] - [kernel] Uprobes: Fix kernel oops with delayed_uprobe_remove() (Gustavo Duarte) [1608798] - [kernel] trace_uprobe/sdt: Prevent multiple reference counter for same uprobe (Gustavo Duarte) [1608798] - [kernel] uprobes/sdt: Prevent multiple reference counter for same uprobe (Gustavo Duarte) [1608798] - [kernel] uprobes: Support SDT markers having reference count (semaphore) (Gustavo Duarte) [1608798] - [kernel] Uprobe: Additional argument arch_uprobe to uprobe_write_opcode() (Gustavo Duarte) [1608798] - [kernel] Uprobes: Simplify uprobe_register() body (Gustavo Duarte) [1608798] - [pci] PCI: Rework pcie_retrain_link() wait loop (Myron Stowe) [1707902] - [pci] PCI: Work around Pericom PCIe-to-PCI bridge Retrain Link erratum (Myron Stowe) [1707902] - [pci] PCI: Factor out pcie_retrain_link() function (Myron Stowe) [1707902] - [tools] selftests/powerpc: Fix strncpy usage (Diego Domingos) [1662372] - [tools] selftests: Fix test errors related to lib.mk khdr target (Diego Domingos) [1662372] - [nvme] nvme-fc: use separate work queue to avoid warning (Ewan Milne) [1715135] - [scsi] scsi: scsi_transport_fc: nvme: display FC-NVMe port roles (Ewan Milne) [1715135] - [nvme] nvme-fc: correct csn initialization and increments on error (Ewan Milne) [1715135] - [nvme] nvme-multipath: avoid crash on invalid subsystem cntlid enumeration (Ewan Milne) [1715135] - [nvme] nvme-multipath: don't print ANA group state by default (Ewan Milne) [1715135] - [nvme] nvme-multipath: split bios with the ns_head bio_set before submitting (Ewan Milne) [1715135] - [nvme] nvme-multipath: relax ANA state check (Ewan Milne) [1715135] - [drm] drm/i915: Bump gen7+ fb size limits to 16kx16k (Lyude Paul) [1664969] - [drm] drm/i915: Bump fb stride limit to 128KiB for gen4+ and 256KiB for gen7+ (Lyude Paul) [1664969] - [drm] drm/i915: Align dumb buffer stride to 4k to allow for gtt remapping (Lyude Paul) [1664969] - [drm] drm/i915: Overcome display engine stride limits via GTT remapping (Lyude Paul) [1664969] - [drm] drm/i915: Shuffle stride checking code around (Lyude Paul) [1664969] - [drm] drm/i915/selftests: Add live vma selftest (Lyude Paul) [1664969] - [drm] drm/i915/selftests: Add mock selftest for remapped vmas (Lyude Paul) [1664969] - [drm] drm/i915: Add a new "remapped" gtt_view (Lyude Paul) [1664969] - [md] dax: Arrange for dax_supported check to span multiple devices (Jeff Moyer) [1665364] - [mm] mm/memory_hotplug.c: drop memory device reference after find_memory_block() (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Retain security state after overwrite (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/pmem: fix a possible OOB access when read and write pmem (Jeff Moyer) [1665367 1665364 1665362] - [acpi] libnvdimm/security, acpi/nfit: unify zero-key for all security commands (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/security: provide fix for secure-erase to use zero-key (Jeff Moyer) [1665367 1665364 1665362 1584976] - [mm] mm/memory.c: fix modifying of page protection by insert_pfn() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/btt: Fix a kmemdup failure check (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/namespace: Fix a potential NULL pointer dereference (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Always dump _DSM output payload (Jeff Moyer) [1665367 1665364 1665362] - [fs] fs/dax: Deposit pagetable even when installing zero page (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/namespace: Clean up holder_class_store() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/of_pmem: Fix platform_no_drv_owner.cocci warnings (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Update NFIT flags error message (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/btt: Fix LBA masking during 'free list' population (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/btt: Remove unnecessary code in btt_freelist_init (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/pfn: Remove dax_label_reserve (Jeff Moyer) [1665367 1665364 1665362] - [drivers] dax: Check the end of the block-device capacity with dax_direct_access() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Avoid stale ARS results (Jeff Moyer) [1697175 1665367 1665364 1665362] - [acpi] nfit/ars: Allow root to busy-poll the ARS state machine (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Introduce scrub_flags (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Remove ars_start_flags (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Attempt short-ARS even in the no_init_ars case (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Attempt a short-ARS whenever the ARS state is idle at boot (Jeff Moyer) [1697194 1665367 1665364 1665362] - [fs] fs/dax: NIT fix comment regarding start/end vs range (Jeff Moyer) [1665367 1665364 1665362] - [fs] fs/dax: Convert to use vmf_error() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Require opt-in for read-only label configurations (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/pmem: Honor force_raw for legacy pmem regions (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/pfn: Account for PAGE_SIZE > info-block-size in nd_pfn_init() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm: Fix altmap reservation size calculation (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pfn: Fix over-trim in trim_pfn_device() (Jeff Moyer) [1665367 1665364 1665362 1662227] - [nvdimm] libnvdimm/dimm: Add a no-BLK quirk based on NVDIMM family (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit: Add Hyper-V NVDIMM DSM command set to white list (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit: acpi_nfit_ctl(): Check out_obj->type in the right place (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit: Fix nfit_intel_shutdown_status() command submission (Jeff Moyer) [1665367 1665364 1665362 1662217] - [nvdimm] libnvdimm/security: Require nvdimm_security_setup_events() to succeed (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] nfit_test: fix security state pull for nvdimm security nfit_test (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/security: Fix nvdimm_security_state() state request selection (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/label: Clear 'updating' flag after label-set update (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Remove duplicate set nd_set in acpi_nfit_init_interleave_set() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Fix race accessing memdev in nfit_get_smbios_id() (Jeff Moyer) [1665367 1665364 1665362] - [include] libnvdimm/dimm: Fix security capability detection for non-Intel NVDIMMs (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] nfit: Mark some functions as __maybe_unused (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] ACPI/nfit: delete the function to_acpi_nfit_desc (Jeff Moyer) [1665367 1665364 1665362] - [acpi] ACPI/nfit: delete the redundant header file (Jeff Moyer) [1665367 1665364 1665362] - [kernel] mm, devm_memremap_pages: add MEMORY_DEVICE_PRIVATE support (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] mm, devm_memremap_pages: fix shutdown handling (Jeff Moyer) [1665367 1665364 1665362] - [kernel] mm, devm_memremap_pages: kill mapping "System RAM" support (Jeff Moyer) [1665367 1665364 1665362] - [kernel] mm, devm_memremap_pages: mark devm_memremap_pages() EXPORT_SYMBOL_GPL (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/security: Quiet security operations (Jeff Moyer) [1665367 1665364 1665362 1584976] - [documentation] libnvdimm/security: Add documentation for nvdimm security support (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] tools/testing/nvdimm: add Intel DSM 1.8 support for nfit_test (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] tools/testing/nvdimm: Add overwrite support for nfit_test (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] tools/testing/nvdimm: Add test support for Intel nvdimm security DSMs (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm/security: add Intel DSM 1.8 master passphrase support (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm/security: Add security DSM overwrite support (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add support for issue secure erase DSM to Intel nvdimm (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add enable/update passphrase support for Intel nvdimms (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add disable passphrase support to Intel nvdimm. (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add unlock of nvdimm support for Intel DIMMs (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add freeze security support to Intel nvdimm (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] acpi/nfit, libnvdimm: Introduce nvdimm_security_ops (Jeff Moyer) [1665367 1665364 1665362 1584976] - [security] keys-encrypted: add nvdimm key format type to encrypted keys (Jeff Moyer) [1665367 1665364 1665362 1584976] - [security] keys: Export lookup_user_key to external users (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] acpi/nfit, libnvdimm: Store dimm id as a member to struct nvdimm (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm, namespace: Replace kmemdup() with kstrndup() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, label: Switch to bitmap_zalloc() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] ACPI/nfit: Adjust annotation for why return 0 if fail to find NFIT at start (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, bus: Check id immediately following ida_simple_get (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Fix user-initiated ARS to be "ARS-long" rather than "ARS-short" (Jeff Moyer) [1665367 1665364 1665362 1662224 1641487] - [nvdimm] libnvdimm, pfn: Pad pfn namespaces relative to other regions (Jeff Moyer) [1665367 1665364 1665362 1662227] - [tools] tools/testing/nvdimm: Align test resources to 128M (Jeff Moyer) [1665367 1665364 1665362 1662227] - [acpi] acpi/nfit: Add support for Intel DSM 1.8 commands (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] Revert "acpi, nfit: Further restrict userspace ARS start requests" (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi, nfit: Fix ARS overflow continuation (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Fix the array size for dimm devices. (Jeff Moyer) [1665367 1665364 1665362 1658918] - [mm] mm: Fix warning in insert_pfn() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi, nfit: Further restrict userspace ARS start requests (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi, nfit: Fix Address Range Scrub completion tracking (Jeff Moyer) [1665367 1665364 1665362 1662224 1641487] - [tools] tools/testing/nvdimm: Populate dirty shutdown data (Jeff Moyer) [1665367 1665364 1665362 1662217] - [acpi] acpi, nfit: Collect shutdown status (Jeff Moyer) [1665367 1665364 1665362 1662217] - [acpi] acpi, nfit: Introduce nfit_mem flags (Jeff Moyer) [1665367 1665364 1665362 1662217] - [nvdimm] libnvdimm, label: Fix sparse warning (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, namespace: Drop the repeat assignment for variable dev->parent (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, region: Fail badblocks listing for inactive regions (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pfn: during init, clear errors in the metadata area (Jeff Moyer) [1665367 1665364 1665362 1641565] - [nvdimm] libnvdimm: Set device node in nd_device_register (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm: Hold reference on parent while scheduling async init (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm: remove duplicate include (Jeff Moyer) [1665367 1665364 1665362] - [fs] filesystem-dax: Fix use of zero page (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pmem: Restore page attributes when clearing errors (Jeff Moyer) [1665367 1665364 1665362] - [drivers] device-dax: avoid hang on error before devm_memremap_pages() (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: improve emulation of smart injection (Jeff Moyer) [1685043 1665367 1665364 1665362] - [fs] filesystem-dax: Do not request kaddr and pfn when not required (Jeff Moyer) [1665367 1665364 1665362] - [drivers] dax/super: Do not request a pointer kaddr when not required (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: kaddr and pfn can be NULL to ->direct_access() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pmem: kaddr and pfn can be NULL to ->direct_access() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: queue issuing of ars when an uc error notification comes in (Jeff Moyer) [1665367 1665364 1665362 1641487] - [kernel] mm, dev_pagemap: Do not clear ->mapping on final put (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Fix support for emulating controller temperature (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Make DSM failure code injection an override (Jeff Moyer) [1665367 1665364 1665362 1658918] - [acpi] acpi, nfit: Prefer _DSM over _LSR for namespace label reads (Jeff Moyer) [1665367 1665364 1665362 1658918] - [nvdimm] libnvdimm: Introduce locked DIMM capacity support (Jeff Moyer) [1665367 1665364 1665362 1658918] - [drm] drm/nouveau: fix duplication of nv50_head_atom struct (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/disp/dp: respect sink limits when selecting failsafe link configuration (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/core: initial support for boards with TU117 chipset (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/core: allow detected chipset to be overridden (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/kms/gf119-gp10x: push HeadSetControlOutputResource() mthd when encoders change (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/kms/nv50-: fix bug preventing non-vsync'd page flips (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/kms/gv100-: fix spurious window immediate interlocks (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/nouveau: forward error generated while resuming objects tree (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/i2c: Disable i2c bus access after ->fini() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add WaDisableBankHangMode (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/fbc: disable framebuffer compression on GeminiLake (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix setting 10 bit deep color mode (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add missing combo PHY lane power setup (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Factor out combo PHY lane power setup helper (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Corrupt DSI picture fix for GeminiLake (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix clockgating issue when using scalers (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Suppress spurious combo PHY B warning (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Disable read only ppgtt support for gen11 (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Use Engine1 instance for gen11 pm interrupts (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Disable video turbo mode for rp control (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Enable media sampler powergate (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: introduce REG_BIT() and REG_GENMASK() to define register contents (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1664615 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Apply a recommended rc6 threshold (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Use dedicated rc6 enabling sequence for gen11 (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Don't warn on spurious interrupts (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Handle rps interrupts without irq lock (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make sure we have enough memory bandwidth on ICL (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make sandybridge_pcode_read() deal with the second data register (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix ONLY icl+ max plane width (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix MG_DP_MODE() register programming (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Really calculate the cursor ddb based on the highest enabled wm level (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Inline skl_update_pipe_wm() into its only caller (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Don't pass pipe_wm around so much (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Move some variables to tighter scope (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Keep plane watermarks enabled more aggressively (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make sure cursor has enough ddb for the selected wm level (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Allocate enough DDB for the cursor (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract skl_compute_wm_params() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Don't pass plane state to skl_compute_plane_wm() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Accept alloc_size == blocks (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/cml: Introduce Comet Lake PCH (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/cml: Add CML PCI IDS (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix PSR2 selective update corruption after PSR1 setup (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Turn off the CUS when turning off a HDR plane (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix legacy gamma mode for ICL (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Refactor icl_is_hdr_plane (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] drm/i915: Add new ICL PCI ID (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix CRC mismatch error for DP link layer compliance (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Prevent incorrect DBuf enabling (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Read out memory type (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract DIMM info on cnl+ (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Clean up intel_get_dram_info() a bit (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i914: s/l_info/dimm_l/ etc. (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Generalize intel_is_dram_symmetric() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Use dram_dimm_info more (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract DIMM info on GLK too (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix DRAM size reporting for BXT (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract BXT DIMM helpers (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Polish skl_is_16gb_dimm() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract functions to derive SKL+ DIMM info (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Store DIMM rank information as a number (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Default to Thread Group preemption for compute workloads (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix the state checker for ICL Y planes (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: move MG pll hw_state readout (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Finalize Wa_1408961008:icl (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Call MG_DP_MODE() macro with the right parameters order (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Drop redundant gamma mode mask (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Implement new w/a for underruns with wm1+ disabled (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Include "ignore lines" in skl+ wm state (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] Revert "drm/i915: W/A for underruns with WM1+ disabled on icl" (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make MG PHY macros semantically consistent (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make combo PHY DDI macro definitions consistent for ICL and CNL (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add degamma and gamma lut size to gen11 caps (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Enable pipe output csc (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Enable ICL Pipe CSC block (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add icl pipe degamma and gamma support (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/glk: Fix degamma lut programming (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Dump skl+ watermark changes (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Update DSPCNTR gamma/csc bits during crtc_enable() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Disable pipe gamma when C8 pixel format is used (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Turn off pipe CSC when it's not needed (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Turn off pipe gamma when it's not needed (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Track pipe csc enable in crtc state (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Track pipe gamma enable/disable in crtc state (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Populate gamma_mode for all platforms (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm: Main backport to rebase from 4.18 to 5.1 (Lyude Paul) [1713573 1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] {CVE-2019-11085} - [include] list: Backport list_is_first() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] lib/scatterlist: Provide a DMA page iterator (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [acpi] ACPI / PMIC: Add support for executing PMIC MIPI sequence elements (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] vfio: add edid api for display (vgpu) devices. (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [mm] mm: don't miss the last page because of round-off error (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [base] PM-runtime: Add new interface to get accounted time (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm: move i915_kick_out_vgacon to vgaarb (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [scripts] tracing: Avoid calling cc-option -mrecord-mcount for every Makefile (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/fb_helper: Allow leaking fbdev smem_start (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/fb: Stop leaking physical address (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [video] fbdev: Add FBINFO_HIDE_SMEM_START flag (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] vt: Remove vc_panic_force_write (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] fbdev: Drop FBINFO_CAN_FORCE_OUTPUT flag (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [video] fbdev: fix kerneldoc (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] fbdev: add remove_conflicting_pci_framebuffers() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [media] media: cec-notifier: Get notifier by device and connector name (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [base] driver core: Add device_link_remove function (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] include: Move ascii85 functions from i915 to linux/ascii85.h (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [mm] mm, drm/i915: mark pinned shmemfs pages as unevictable (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] list: introduce list_bulk_move_tail helper (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [fs] sysfs: constify sysfs create/remove files harder (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/selftests: Remove unused dmabuf->kmap routines, fix the build (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] dma-buf: remove kmap_atomic interface (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] include/linux/bitops.h: introduce BITS_PER_TYPE (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] dma_buf: remove device parameter from attach callback v2 (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [pci] PCI: Export pcie_get_speed_cap and pcie_get_width_cap (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm: Add support for pps and compression mode command packet (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [kernel] locking/mutex: Fix mutex debug call and ww_mutex documentation (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [kernel] locking: Implement an algorithm choice for Wound-Wait mutexes (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [kernel] locking: WW mutex cleanup (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286]- [netdrv] igb: Fix WARN_ONCE on runtime suspend (Corinna Vinschen) [1659168] - [netdrv] igb: use struct_size() helper (Corinna Vinschen) [1659168] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Corinna Vinschen) [1659168] - [netdrv] igb: Bump version number (Corinna Vinschen) [1659168] - [netdrv] Revert "igb: reduce CPU0 latency when updating statistics" (Corinna Vinschen) [1659168] - [netdrv] igb: Fix an issue that PME is not enabled during runtime suspend (Corinna Vinschen) [1659168] - [netdrv] igb: Change RXPBSIZE size when setting Qav mode (Corinna Vinschen) [1659168] - [netdrv] igb: reduce CPU0 latency when updating statistics (Corinna Vinschen) [1659168] - [netdrv] igb: fix uninitialized variables (Corinna Vinschen) [1659168] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Corinna Vinschen) [1659168] - [netdrv] igb: Fix format with line continuation whitespace (Corinna Vinschen) [1659168] - [netdrv] igb: extend PTP gettime function to read system clock (Corinna Vinschen) [1659168] - [netdrv] i40e/ixgbe/igb: fail on new WoL flag setting WAKE_MAGICSECURE (Corinna Vinschen) [1659168] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Corinna Vinschen) [1659168] - [netdrv] igb: remove ndo_poll_controller (Corinna Vinschen) [1659168] - [netdrv] intel-ethernet: use correct module license (Corinna Vinschen) [1659168] - [netdrv] igb: Replace mdelay() with msleep() in igb_integrated_phy_loopback() (Corinna Vinschen) [1659168] - [netdrv] igb: Replace GFP_ATOMIC with GFP_KERNEL in igb_sw_init() (Corinna Vinschen) [1659168] - [netdrv] igb: Use an advanced ctx descriptor for launchtime (Corinna Vinschen) [1659168] - [netdrv] igb: e1000_phy: Mark expected switch fall-through (Corinna Vinschen) [1659168] - [netdrv] igb: e1000_82575: Mark expected switch fall-through (Corinna Vinschen) [1659168] - [netdrv] igb_main: Mark expected switch fall-throughs (Corinna Vinschen) [1659168] - [netdrv] igb: Use dma_wmb() instead of wmb() before doorbell writes (Corinna Vinschen) [1659168] - [netdrv] igb: Add support for ETF offload (Corinna Vinschen) [1659168] - [netdrv] igb: Only call skb_tx_timestamp after descriptors are ready (Corinna Vinschen) [1659168] - [netdrv] igb: Refactor igb_offload_cbs() (Corinna Vinschen) [1659168] - [netdrv] igb: Only change Tx arbitration when CBS is on (Corinna Vinschen) [1659168] - [netdrv] igb: Refactor igb_configure_cbs() (Corinna Vinschen) [1659168] - [fs] Revert "[fs] ext4: protect journal inode's blocks using block_validity" (Lukas Czerner) [1716549] - [fs] xfs: don't trip over uninitialized buffer on extent read of corrupted inode (Bill O'Donnell) [1715942] - [fs] xfs: always init bma in xfs_bmapi_write (Bill O'Donnell) [1715942] - [lib] rhashtable: Still do rehash when we get EEXIST (Vladis Dronov) [1712457] - [fs] vmcore: Add a kernel parameter novmcoredd (Kairui Song) [1705864] - [powerpc] powerpc/eeh: Correct retries in eeh_pe_reset_full() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Improve recovery of passed-through devices (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Add include_passed to eeh_clear_pe_frozen_state() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Add include_passed to eeh_pe_state_clear() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: remove sw_state from eeh_unfreeze_pe() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_pe_clear_frozen_state() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup control flow in eeh_handle_normal_event() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_ops.wait_state() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_pe_state_mark() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup unnecessary eeh_pe_state_mark_with_cfg() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_enabled() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup logic in eeh_rmv_from_parent_pe() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup field names in eeh_rmv_data (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup list_head field names (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_add_virt_device() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup unused field in eeh_dev (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup EEH_POSTPONED_PROBE (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Avoid misleading message "EEH: no capable adapters found" (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Fix use of EEH_PE_KEEP on wrong field (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Fix null deref for devices removed during EEH (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Fix possible null deref in eeh_dump_dev_log() (Sam Bobroff) [1352405] - [edac] x86/MCE/AMD, EDAC/mce_amd: Add new error descriptions for some SMCA bank types (Janakarajan Natarajan) [1688469] - [x86] x86/MCE/AMD, EDAC/mce_amd: Add new McaTypes for CS, PSP, and SMU units (Janakarajan Natarajan) [1688469] - [x86] x86/MCE/AMD, EDAC/mce_amd: Add new MP5, NBIO, and PCIE SMCA bank types (Janakarajan Natarajan) [1688469] - [scsi] megaraid_sas: remove tech preview from Aero series (Tomas Henzl) [1668409] - [scsi] megaraid_sas: sync with mainline (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: fix spelling mistake "oustanding" -> "outstanding" (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Make megasas_host_device_list_query() static (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: reduce module load time (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Remove a bunch of set but not used variables (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: return error when create DMA pool failed (Tomas Henzl) [1668409] {CVE-2019-11810} - [scsi] scsi: megaraid_sas: driver version update (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Update structures for HOST_DEVICE_LIST DCMD (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add support for DEVICE_LIST DCMD in driver (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Rework device add code in AEN path (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Rework code to get PD and LD list (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: correct an info message (Tomas Henzl) [1668409] - [scsi] cross-tree: phase out dma_zalloc_coherent() (Tomas Henzl) [1668409] - [scsi] scsi: megaraid: fix out-of-bound array accesses (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: changes to function prototypes (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: NULL check before some freeing functions is not needed (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas_fusion: Mark expected switch fall-through (Tomas Henzl) [1668409] - [scsi] scsi: megaraid: megaraid_sas_base: Mark expected switch fall-through (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: modify max supported lds related print (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: remove unused macro (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: increase timeout for IOC INIT to 180seconds (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Remove double endian conversion (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Re-use max_mfi_cmds to calculate queue sizes (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Rename scratch_pad registers (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Remove spin lock for dpc operation (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: optimize raid context access in IO path (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fail init if heartbeat timer fails (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: For SRIOV, do not set STOP_ADP bit (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix combined reply queue mode detection (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix module parameter description (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix goto labels in error handling (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Update copyright information (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add check for reset adapter bit (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix msleep granularity (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add support for FW snap dump (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add watchdog thread to detect Firmware fault (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: switch to generic DMA API (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: fix a missing-check bug (Tomas Henzl) [1668409] - [kernel] get_maintainer.pl: Add default .get_maintainer.conf file for RHEL (Prarit Bhargava) [1714630] - [scripts] get_maintainer: allow option --mpath to read all files in (Prarit Bhargava) [1714630] - [scripts] get_maintainer.pl: add -mpath= for MAINTAINERS file location (Prarit Bhargava) [1714630] - [scripts] get_maintainer: allow usage outside of kernel tree (Prarit Bhargava) [1714630] - [scripts] Revert "[scripts] get_maintainer.pl: Add optional .get_maintainer.MAINTAINERS override" (Prarit Bhargava) [1714630] - [include] signal: Make siginmask safe when passed a signal of 0 (Waiman Long) [1714351] - [fs] signal: Don't send signals to tasks that don't exist (Waiman Long) [1714351] - [kernel] signal: Restore the stop PTRACE_EVENT_EXIT (Waiman Long) [1714351] - [kernel] signal: Better detection of synchronous signals (Waiman Long) [1714351] - [kernel] signal: Always notice exiting tasks (Waiman Long) [1714351] - [kernel] signal: Always attempt to allocate siginfo for SIGSTOP (Waiman Long) [1714351] - [kernel] signal: Guard against negative signal numbers in copy_siginfo_from_user32 (Waiman Long) [1714351] - [kernel] signal: Guard against negative signal numbers in copy_siginfo_from_user (Waiman Long) [1714351] - [kernel] signal: In sigqueueinfo prefer sig not si_signo (Waiman Long) [1714351] - [include] signal: Use a smaller struct siginfo in the kernel (Waiman Long) [1714351] - [include] signal: Distinguish between kernel_siginfo and siginfo (Waiman Long) [1714351] - [kernel] signal: Introduce copy_siginfo_from_user and use it's return value (Waiman Long) [1714351] - [arm64] signal: Remove the need for __ARCH_SI_PREABLE_SIZE and SI_PAD_SIZE (Waiman Long) [1714351] - [kernel] signal: Fail sigqueueinfo if si_signo != sig (Waiman Long) [1714351] - [kernel] signal/sparc: Move EMT_TAGOVF into the generic siginfo.h (Waiman Long) [1714351] - [mm] signal/arm: Use force_sig_fault where appropriate (Waiman Long) [1714351] - [arm64] signal/arm64: Use send_sig_fault where appropriate (Waiman Long) [1714351] - [arm64] signal/arm64: Add and use arm64_force_sig_ptrace_errno_trap (Waiman Long) [1714351] - [arm64] signal/arm64: In ptrace_hbptriggered name the signal description string (Waiman Long) [1714351] - [arm64] signal/arm64: Remove arm64_force_sig_info (Waiman Long) [1714351] - [arm64] signal/arm64: Add and use arm64_force_sig_mceerr as appropriate (Waiman Long) [1714351] - [arm64] signal/arm64: Add and use arm64_force_sig_fault where appropriate (Waiman Long) [1714351] - [mm] signal/arm64: Only call set_thread_esr once in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Only perform one esr_to_fault_info call in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Expand __do_user_fault and remove it (Waiman Long) [1714351] - [mm] signal/arm64: For clarity separate the 3 signal sending cases in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Consolidate the two hwpoison cases in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Factor set_thread_esr out of __do_user_fault (Waiman Long) [1714351] - [arm64] signal/arm64: Factor out arm64_show_signal from arm64_force_sig_info (Waiman Long) [1714351] - [arm64] signal/arm64: Remove unneeded tsk parameter from arm64_force_sig_info (Waiman Long) [1714351] - [arm64] signal/arm64: Push siginfo generation into arm64_notify_die (Waiman Long) [1714351] - [powerpc] signal/powerpc: Use force_sig_fault where appropriate (Waiman Long) [1714351] - [powerpc] signal/powerpc: Simplify _exception_pkey by using force_sig_pkuerr (Waiman Long) [1714351] - [powerpc] signal/powerpc: Specialize _exception_pkey for handling pkey exceptions (Waiman Long) [1714351] - [powerpc] signal/powerpc: Call force_sig_fault from _exception (Waiman Long) [1714351] - [powerpc] signal/powerpc: Factor the common exception code into exception_common (Waiman Long) [1714351] - [powerpc] powerpc/traps: Print unhandled signals in a separate function (Waiman Long) [1714351] - [mm] signal/powerpc: Remove pkey parameter from __bad_area_nosemaphore (Waiman Long) [1714351] - [mm] signal/powerpc: Call _exception_pkey directly from bad_key_fault_exception (Waiman Long) [1714351] - [mm] signal/powerpc: Remove pkey parameter from __bad_area (Waiman Long) [1714351] - [mm] signal/powerpc: Use force_sig_mceerr as appropriate (Waiman Long) [1714351] - [x86] signal/x86: Use force_sig_fault where appropriate (Waiman Long) [1714351] - [mm] signal/x86: Pass pkey by value (Waiman Long) [1714351] - [mm] signal/x86: Replace force_sig_info_fault with force_sig_fault (Waiman Long) [1714351] - [mm] signal/x86: Call force_sig_pkuerr from __bad_area_nosemaphore (Waiman Long) [1714351] - [mm] signal/x86: Pass pkey not vma into __bad_area (Waiman Long) [1714351] - [mm] signal/x86: Don't compute pkey in __do_page_fault (Waiman Long) [1714351] - [mm] signal/x86: Remove pkey parameter from mm_fault_error (Waiman Long) [1714351] - [mm] signal/x86: Remove the pkey parameter from do_sigbus (Waiman Long) [1714351] - [mm] signal/x86: Remove pkey parameter from bad_area_nosemaphore (Waiman Long) [1714351] - [x86] signal/x86/traps: Simplify trap generation (Waiman Long) [1714351] - [x86] signal/x86/traps: Use force_sig instead of open coding it. (Waiman Long) [1714351] - [x86] signal/x86/traps: Use force_sig_bnderr (Waiman Long) [1714351] - [x86] signal/x86/traps: Move more code into do_trap_no_signal so it can be reused (Waiman Long) [1714351] - [x86] signal/x86/traps: Factor out show_signal (Waiman Long) [1714351] - [x86] signal/x86: Move mpx siginfo generation into do_bounds (Waiman Long) [1714351] - [x86] signal/x86: In trace_mpx_bounds_register_exception add __user annotations (Waiman Long) [1714351] - [mm] signal/x86: Move MCE error reporting out of force_sig_info_fault (Waiman Long) [1714351] - [x86] signal/x86: Inline fill_sigtrap_info in it's only caller send_sigtrap (Waiman Long) [1714351] - [powerpc] signal: Simplify tracehook_report_syscall_exit (Waiman Long) [1714351] - [kernel] signal: Pair exports with their functions (Waiman Long) [1714351] - [kernel] signal: Remove specific_send_sig_info (Waiman Long) [1714351] - [kernel] signal: Use group_send_sig_info to kill all processes in a pid namespace (Waiman Long) [1714351] - [tty] tty_io: Use group_send_sig_info in __do_SACK to note it is a session being killed (Waiman Long) [1714351] - [misc] signal/GenWQE: Fix sending of SIGKILL (Waiman Long) [1714351] - [include] signal: Remove SEND_SIG_FORCED (Waiman Long) [1714351] - [kernel] signal: Use SEND_SIG_PRIV not SEND_SIG_FORCED with SIGKILL and SIGSTOP (Waiman Long) [1714351] - [kernel] signal: Never allocate siginfo for SIGKILL or SIGSTOP (Waiman Long) [1714351] - [usb] signal: Don't send siginfo to kthreads. (Waiman Long) [1714351] - [usb] signal: Remove the siginfo paramater from kernel_dqueue_signal (Waiman Long) [1714351] - [tty] signal: send_sig_all no longer needs SEND_SIG_FORCED (Waiman Long) [1714351] - [kernel] signal: Always deliver the kernel's SIGKILL and SIGSTOP to a pid namespace init (Waiman Long) [1714351] - [x86] signal: Properly deliver SIGSEGV from x86 uprobes (Waiman Long) [1714351] - [kernel] signal: Properly deliver SIGILL from uprobes (Waiman Long) [1714351] - [kernel] signal: Always ignore SIGKILL and SIGSTOP sent to the global init (Waiman Long) [1714351] - [iommu] mm: convert return type of handle_mm_fault() caller to vm_fault_t (Waiman Long) [1714351] - [kernel] signal: make get_signal() return bool (Waiman Long) [1714351] - [kernel] signal: make sigkill_pending() return bool (Waiman Long) [1714351] - [kernel] signal: make legacy_queue() return bool (Waiman Long) [1714351] - [kernel] signal: make wants_signal() return bool (Waiman Long) [1714351] - [kernel] signal: make flush_sigqueue_mask() void (Waiman Long) [1714351] - [kernel] signal: make unhandled_signal() return bool (Waiman Long) [1714351] - [kernel] signal: make recalc_sigpending_tsk() return bool (Waiman Long) [1714351] - [kernel] signal: make has_pending_signals() return bool (Waiman Long) [1714351] - [kernel] signal: make sig_ignored() return bool (Waiman Long) [1714351] - [kernel] signal: make sig_task_ignored() return bool (Waiman Long) [1714351] - [kernel] signal: make sig_handler_ignored() return bool (Waiman Long) [1714351] - [kernel] signal: make kill_ok_by_cred() return bool (Waiman Long) [1714351] - [kernel] signal: simplify rt_sigaction() (Waiman Long) [1714351] - [kernel] signal: make do_sigpending() void (Waiman Long) [1714351] - [kernel] signal: make may_ptrace_stop() return bool (Waiman Long) [1714351] - [kernel] signal: make kill_as_cred_perm() return bool (Waiman Long) [1714351] - [kernel] signal: make force_sigsegv() void (Waiman Long) [1714351] - [kernel] signal: Don't restart fork when signals come in. (Waiman Long) [1714351] - [kernel] fork: Have new threads join on-going signal group stops (Waiman Long) [1714351] - [include] fork: Skip setting TIF_SIGPENDING in ptrace_init_task (Waiman Long) [1714351] - [kernel] signal: Add calculate_sigpending() (Waiman Long) [1714351] - [kernel] fork: Unconditionally exit if a fatal signal is pending (Waiman Long) [1714351] - [kernel] fork: Move and describe why the code examines PIDNS_ADDING (Waiman Long) [1714351] - [kernel] signal: Push pid type down into complete_signal. (Waiman Long) [1714351] - [kernel] signal: Push pid type down into __send_signal (Waiman Long) [1714351] - [kernel] signal: Push pid type down into send_signal (Waiman Long) [1714351] - [tty] signal: Pass pid type into do_send_sig_info (Waiman Long) [1714351] - [fs] signal: Pass pid type into send_sigio_to_task & send_sigurg_to_task (Waiman Long) [1714351] - [kernel] signal: Pass pid type into group_send_sig_info (Waiman Long) [1714351] - [kernel] signal: Pass pid and pid type into send_sigqueue (Waiman Long) [1714351] - [kernel] posix-timers: Noralize good_sigevent (Waiman Long) [1714351] - [fs] signal: Use PIDTYPE_TGID to clearly store where file signals will be sent (Waiman Long) [1714351] - [kernel] pid: Implement PIDTYPE_TGID (Waiman Long) [1714351] - [include] pids: Move the pgrp and session pid pointers from task_struct to signal_struct (Waiman Long) [1714351] - [fs] pids: Compute task_tgid using signal->leader_pid (Waiman Long) [1714351] - [kernel] pids: Move task_pid_type into sched/signal.h (Waiman Long) [1714351] - [init] pids: Initialize leader_pid in init_task (Waiman Long) [1714351]- [s390] s390: enable processes for mio instructions (Philipp Rudo) [1651734] - [s390] s390/pci: add parameter to disable usage of MIO instructions (Philipp Rudo) [1651734] - [s390] s390/pci: provide support for MIO instructions (Philipp Rudo) [1651734] - [s390] s390/pci: improve bar check (Philipp Rudo) [1651734] - [s390] s390/ism: move oddities of device IO to wrapper function (Philipp Rudo) [1651734] - [s390] s390/pci: move io address mapping code to pci_insn.c (Philipp Rudo) [1651734] - [s390] s390/pci: add parameter to force floating irqs (Philipp Rudo) [1651735] - [s390] s390/pci: gather statistics for floating vs directed irqs (Philipp Rudo) [1651735] - [s390] s390: show statistics for MSI IRQs (Philipp Rudo) [1651735] - [s390] s390/pci: provide support for CPU directed interrupts (Philipp Rudo) [1651735] - [s390] s390/airq: provide cacheline aligned ivs (Philipp Rudo) [1651735] - [s390] s390/pci: clarify interrupt vector usage (Philipp Rudo) [1651735] - [s390] s390/airq: recognize directed interrupts (Philipp Rudo) [1651735] - [s390] s390/sclp: detect DIRQ facility (Philipp Rudo) [1651735] - [s390] s390/pci: move everything irq related to pci_irq.c (Philipp Rudo) [1651735] - [s390] s390/pci: remove stale rc (Philipp Rudo) [1651735] - [s390] s390/pci: remove unused define (Philipp Rudo) [1651735] - [s390] s390/pci: mark command line parser data __initdata (Philipp Rudo) [1651735] - [cpufreq] cpufreq: intel_pstate: Ignore turbo active ratio in HWP (David Arcari) [1711970] - [scsi] mpt3sas: remove tech preview from Aero series (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: fix indentation issue (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Update mpt3sas driver version to 28.100.00.00 (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Improve the threshold value and introduce module param (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Load balance to improve performance and avoid soft lockups (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Irq poll to avoid CPU hard lockups (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: simplify interrupt handler (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Fix typo in request_desript_type (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Add missing breaks in switch statements (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Update driver version to 27.102.00.00 (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Add support for ATLAS PCIe switch (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Add support for NVMe Switch Adapter (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Rename mpi endpoint device ID macro. (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: mpt3sas_scsih: Mark expected switch fall-through (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: fix memory ordering on 64bit writes (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: fix spelling mistake "manufaucturing" -> "manufacturing" (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Fix driver modifying persistent data in Manufacturing page11 (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Don't modify EEDPTagMode field setting on SAS3.5 HBA devices (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Fix Sync cache command failure during driver unload (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Call sas_remove_host before removing the target devices (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Refactor mpt3sas_wait_for_ioc function (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Separate out mpt3sas_wait_for_ioc (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Added new #define variable IOC_OPERATIONAL_WAIT_COUNT (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: switch to generic DMA API (Tomas Henzl) [1684444] - [tools] perf tools beauty ioctl: Support new ISO7816 commands (Michael Petlan) [1709243] - [tools] perf tools: Restore proper cwd on return from mnt namespace (Michael Petlan) [1709243] - [tools] perf tools: Fix crash on synthesizing the unit (Michael Petlan) [1709243] - [tools] perf tools: Do not zero sample_id_all for group members (Michael Petlan) [1709243] - [tools] perf beauty: Use SRCARCH, ARCH=x86_64 must map to "x86" to find the headers (Michael Petlan) [1709243] - [tools] perf intel-pt: Add MTC and CYC timestamps to debug log (Michael Petlan) [1709243] - [tools] perf intel-pt: Add more event information to debug log (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Fix table find when table re-ordered (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add help window (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add Selected branches report (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Fall back to /usr/local/lib/libxed.so (Michael Petlan) [1709243] - [tools] perf top: Display the LBR stats in callchain entry (Michael Petlan) [1709243] - [tools] perf stat: Handle different PMU names with common prefix (Michael Petlan) [1709243] - [tools] perf record: Support weak groups (Michael Petlan) [1709243] - [tools] perf evlist: Move perf_evsel__reset_weak_group into evlist (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Start collecting pathnames in the BPF program (Michael Petlan) [1709243] - [tools] perf trace: Fix setting of augmented payload when using eBPF + raw_syscalls (Michael Petlan) [1709243] - [tools] perf trace: When augmenting raw_syscalls plug raw_syscalls:sys_exit too (Michael Petlan) [1709243] - [tools] perf examples bpf: Start augmenting raw_syscalls:sys_{start,exit} (Michael Petlan) [1709243] - [tools] perf intel-pt/bts: Calculate cpumode for synthesized samples (Michael Petlan) [1709243] - [tools] perf intel-pt: Insert callchain context into synthesized callchains (Michael Petlan) [1709243] - [tools] perf top: Start display thread earlier (Michael Petlan) [1709243] - [tools] perf trace beauty: Use the mmap flags table generated from headers (Michael Petlan) [1709243] - [tools] perf beauty: Wire up the mmap flags table generator to the Makefile (Michael Petlan) [1709243] - [tools] perf beauty: Add a generator for MAP_ mmap's flag constants (Michael Petlan) [1709243] - [tools] perf callchain: Honour the ordering of PERF_CONTEXT_{USER,KERNEL,etc} (Michael Petlan) [1709243] - [tools] perf cs-etm: Correct CPU mode for samples (Michael Petlan) [1709243] - [tools] perf unwind: Take pgoff into account when reporting elf to libdwfl (Michael Petlan) [1709243] - [tools] perf top: Do not use overwrite mode by default (Michael Petlan) [1709243] - [tools] perf trace: Beautify mount's first pathname arg (Michael Petlan) [1709243] - [tools] perf trace: Beautify the umount's 'name' argument (Michael Petlan) [1709243] - [tools] perf trace: Consider syscall aliases too (Michael Petlan) [1709243] - [tools] perf trace beauty: Beautify mount/umount's 'flags' argument (Michael Petlan) [1709243] - [tools] perf trace beauty: Allow syscalls to mask an argument before considering it (Michael Petlan) [1709243] - [tools] perf beauty: Introduce strarray__scnprintf_flags() (Michael Petlan) [1709243] - [tools] perf beauty: Switch from GPL v2.0 to LGPL v2.1 (Michael Petlan) [1709243] - [tools] perf beauty: Add a generator for MS_ mount/umount's flag constants (Michael Petlan) [1709243] - [tools] tools include uapi: Grab a copy of linux/fs.h (Michael Petlan) [1709243] - [tools] perf script: Support total cycles count (Michael Petlan) [1709243] - [tools] perf script: Make itrace script default to all calls (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add All branches report (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add ability to display all the database tables (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add ability to shrink / enlarge font (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add ability to find symbols in the call-graph (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add support for multiple sub-windows (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Rename to exported-sql-viewer.py (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Refactor TreeItem class (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Add data helper functions (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Factor out CallGraphModel from TreeModel (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Remove use of setObjectName() (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Add a class for global data (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Separate the database details into a class (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Make a "Main" function (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Change icon (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Set a minimum window size (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Provide better default column sizes (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Use SPDX license identifier (Michael Petlan) [1709243] - [tools] perf trace: Introduce per-event maximum number of events property (Michael Petlan) [1709243] - [tools] perf script: Flush output stream after events in verbose mode (Michael Petlan) [1709243] - [tools] perf script: Allow extended console debug output (Michael Petlan) [1709243] - [tools] perf stat: Poll for monitored tasks being alive (Michael Petlan) [1709243] - [tools] perf trace: Drop thread refcount in trace__event_handler() (Michael Petlan) [1709243] - [tools] perf trace: Drop addr_location refcounts (Michael Petlan) [1709243] - [tools] perf evsel: Mark a evsel as disabled when asking the kernel do disable it (Michael Petlan) [1709243] - [tools] perf evsel: Introduce per event max_events property (Michael Petlan) [1709243] - [tools] tools lib subcmd: Introduce OPTION_ULONG (Michael Petlan) [1709243] - [tools] perf arm64: Fix generate system call table failed with /tmp mounted with noexec (Michael Petlan) [1709243] - [tools] perf symbols: Set PLT entry/header sizes properly on Sparc (Michael Petlan) [1709243] - [tools] perf jitdump: Add Sparc support. (Michael Petlan) [1709243] - [tools] perf annotate: Add Sparc support (Michael Petlan) [1709243] - [tools] perf record: Encode -k clockid frequency into Perf trace (Michael Petlan) [1709243] - [tools] perf probe: Support SDT markers having reference counter (semaphore) (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Move struct tep_handler definition in a local header file (Michael Petlan) [1709243] - [tools] tools lib traceevent: Separate out tep_strerror() for strerror_r() issues (Michael Petlan) [1709243] - [tools] perf python: More portable way to make CFLAGS work with clang (Michael Petlan) [1709243] - [tools] perf python: Make clang_has_option() work on Python 3 (Michael Petlan) [1709243] - [tools] perf tools: Free temporary 'sys' string in read_event_files() (Michael Petlan) [1709243] - [tools] perf tools: Avoid double free in read_event_file() (Michael Petlan) [1709243] - [tools] perf tools: Free 'printk' string in parse_ftrace_printk() (Michael Petlan) [1709243] - [tools] perf tools: Cleanup trace-event-info 'tdata' leak (Michael Petlan) [1709243] - [tools] perf strbuf: Match va_{add,copy} with va_end (Michael Petlan) [1709243] - [tools] perf test: S390 does not support watchpoints in test 22 (Michael Petlan) [1709243] - [tools] perf auxtrace: Include missing asm/bitsperlong.h to get BITS_PER_LONG (Michael Petlan) [1709243] - [tools] tools include: Adopt linux/bits.h (Michael Petlan) [1709243] - [tools] perf intel-pt: Implement decoder flags for trace begin / end (Michael Petlan) [1709243] - [tools] perf intel-pt: Add decoder flags for trace begin / end (Michael Petlan) [1709243] - [tools] perf tools: Improve thread_stack__process() for trace begin / end (Michael Petlan) [1709243] - [tools] perf tools: Improve thread_stack__event() for trace begin / end (Michael Petlan) [1709243] - [tools] perf db-export: Add trace begin / end branch type variants (Michael Petlan) [1709243] - [tools] perf script: Enhance sample flags for trace begin / end (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to enum filter_trivial_type (Michael Petlan) [1709243] - [tools] tools lib traceevent: Rename data2host*() APIs (Michael Petlan) [1709243] - [tools] tools lib traceevent: Rename struct plugin_list to struct tep_plugin_list (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to structs filter_type and event_filter (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to various structs filter_arg_*. (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to struct filter_{arg,value_type} (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to enums filter_{exp,arg}_type (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to enums filter_{boolean,op,cmp}_type (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename enum print_arg_type to enum tep_print_arg_type (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Add prefix tep_ to all print_* structures (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix TEP_ to all EVENT_FL_* flags (Michael Petlan) [1709243] - [tools] tools lib traceevent: Rename enum event_{sort_}type to enum tep_event_{sort_}type (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename enum format_flags to enum tep_format_flags (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename struct format{_field} to struct tep_format{_field} (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename struct event_format to struct tep_event_format (Michael Petlan) [1709243] - [tools] perf script: Print DSO for callindent (Michael Petlan) [1709243] - [tools] perf script: Allow sym and dso without ip, addr (Michael Petlan) [1709243] - [tools] tools lib subcmd: Support overwriting the pager (Michael Petlan) [1709243] - [tools] perf tools: Report itrace options in help (Michael Petlan) [1709243] - [tools] perf help: Add missing subcommand `version` (Michael Petlan) [1709243] - [tools] perf tools: Initialize perf_data_file fd field (Michael Petlan) [1709243] - [tools] perf util: Make copyfile_offset() global (Michael Petlan) [1709243] - [tools] perf tools: Add 'struct perf_mmap' arg to record__write() (Michael Petlan) [1709243] - [tools] perf auxtrace: Pass struct perf_mmap into mmap__read* functions (Michael Petlan) [1709243] - [tools] perf tools: Remove perf_tool from event_op3 (Michael Petlan) [1709243] - [tools] perf tools: Remove perf_tool from event_op2 (Michael Petlan) [1709243] - [tools] perf bpf-loader: use PTR_ERR_OR_ZERO inetead of return code (Michael Petlan) [1709243] - [tools] tools include: Adopt PTR_ERR_OR_ZERO from the kernel err.h header (Michael Petlan) [1709243] - [tools] perf ordered_events: Prevent crossing max_alloc_size (Michael Petlan) [1709243] - [tools] perf ordered_events: Add 'struct ordered_events_buffer' layer (Michael Petlan) [1709243] - [tools] perf test: Add watchpoint test (Michael Petlan) [1709243] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh without ping's debuginfo (Michael Petlan) [1709243] - [tools] perf map: Turn some pr_warning() to pr_debug() (Michael Petlan) [1709243] - [tools] perf trace: Use the raw_syscalls:sys_enter for the augmented syscalls (Michael Petlan) [1709243] - [tools] perf trace: Setup augmented_args in the raw_syscalls:sys_enter handler (Michael Petlan) [1709243] - [tools] perf trace: Introduce syscall__augmented_args() method (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Avoid optimization to pass older BPF validators (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Check probe_read_str() return separately (Michael Petlan) [1709243] - [tools] perf annotate: Handle arm64 move instructions (Michael Petlan) [1709243] - [tools] perf trace beauty: Alias 'umount' to 'umount2' (Michael Petlan) [1709243] - [tools] perf stat: Move the display functions to stat-display.c (Michael Petlan) [1709243] - [tools] perf stat: Move 'metric_events' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'walltime_*' data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Propagate 'struct target' arg to sort_aggr_thread() (Michael Petlan) [1709243] - [tools] perf stat: Move 'no_merge' data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'big_num' data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Do not use the global 'evsel_list' in print functions (Michael Petlan) [1709243] - [tools] perf stat: Move *_aggr_* data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move ru_* data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'print_mixed_hw_group_error' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'print_free_counters_hint' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'null_run' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Add 'walltime_nsecs_stats' pointer to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Pass 'evlist' to aggr_update_shadow() (Michael Petlan) [1709243] - [tools] perf stat: Pass 'struct perf_stat_config' to first_shadow_cpu() (Michael Petlan) [1709243] - [tools] perf stat: Move 'metric_only_len' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'run_count' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Use 'evsel->evlist' instead of 'evsel_list' in collect_all_aliases() (Michael Petlan) [1709243] - [tools] perf stat: Pass 'evlist' argument to print functions (Michael Petlan) [1709243] - [tools] perf stat: Add 'target' argument to perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Move 'unit_width' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'metric_only' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'interval_clear' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move csv_* to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Pass a 'struct perf_stat_config' argument to global print functions (Michael Petlan) [1709243] - [tools] perf stat: Pass 'struct perf_stat_config' argument to local print functions (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_stat_config' argument to perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Move STAT_RECORD out of perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Introduce perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Move perf_stat_synthesize_config() to stat.c (Michael Petlan) [1709243] - [tools] perf stat: Add 'perf_event__handler_t' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_evlist' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_tool' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_stat_config' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Rename 'is_pipe' argument to 'attrs' in perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Move create_perf_stat_counter() to stat.c (Michael Petlan) [1709243] - [tools] perf evsel: Introduce perf_evsel__store_ids() (Michael Petlan) [1709243] - [tools] perf tools: Switch 'session' argument to 'evlist' in perf_event__synthesize_attrs() (Michael Petlan) [1709243] - [tools] perf stat: Add 'identifier' flag to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Use local config arg for scale in create_perf_stat_counter() (Michael Petlan) [1709243] - [tools] perf stat: Move 'no_inherit' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'initial_delay' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Use evsel->threads in create_perf_stat_counter() (Michael Petlan) [1709243] - [tools] perf trace: Show comm and tid for tracepoint events (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Hook into syscalls:sys_exit_SYSCALL too (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Rename augmented_*_syscall__enter to just *_syscall (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Update the header comments (Michael Petlan) [1709243] - [tools] perf bpf: Add syscall_exit() helper (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Split trace-seq related APIs in a separate header file (Michael Petlan) [1709243] - [tools] perf report: Create auxiliary trace data files for s390 (Michael Petlan) [1709243] - [tools] perf trace beauty: Reorganize 'struct sockaddr *' beautifier (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Augment sendto's 'addr' arg (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Augment bind's 'myaddr' sockaddr arg (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Add augmented_sockaddr_syscall_enter() (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Augment connect's 'sockaddr' arg (Michael Petlan) [1709243] - [tools] perf bpf: Add linux/socket.h to the headers accessible to bpf proggies (Michael Petlan) [1709243] - [tools] perf bpf: Give precedence to bpf header dir (Michael Petlan) [1709243] - [tools] perf trace: Add a etcsnoop.c augmented syscalls eBPF utility (Michael Petlan) [1709243] - [tools] perf trace: Augment 'newstat' (aka 'stat') filename ptr (Michael Petlan) [1709243] - [tools] perf trace: Introduce augmented_filename_syscall_enter() declarator (Michael Petlan) [1709243] - [tools] perf trace: Augment inotify_add_watch pathname syscall arg (Michael Petlan) [1709243] - [tools] perf trace: Augment the 'open' syscall 'filename' arg (Michael Petlan) [1709243] - [tools] perf trace: Use the augmented filename, expanding syscall enter pointers (Michael Petlan) [1709243] - [tools] perf trace: Show comm/tid for augmented_syscalls (Michael Petlan) [1709243] - [tools] perf trace: Extract the comm/tid printing for syscall enter (Michael Petlan) [1709243] - [tools] perf trace: Print the syscall name for augmented_syscalls (Michael Petlan) [1709243] - [tools] perf trace: Make the augmented_syscalls filter out the tracepoint event (Michael Petlan) [1709243] - [tools] perf trace: Pass augmented args to the arg formatters when available (Michael Petlan) [1709243] - [x86] perf/x86/intel: Disallow precise_ip on BTS events (Michael Petlan) [1709243] - [x86] perf/x86/intel: Add generic branch tracing check to intel_pmu_has_bts() (Michael Petlan) [1709243] - [x86] perf/x86/intel: Move branch tracing setup to the Intel-specific source file (Michael Petlan) [1709243] - [x86] perf/x86/intel: Fix regression by default disabling perfmon v4 interrupt handling (Michael Petlan) [1709243] - [x86] perf/x86/intel/uncore: Support CoffeeLake 8th CBOX (Michael Petlan) [1709243] - [x86] perf/x86/intel/uncore: Add more IMC PCI IDs for KabyLake and CoffeeLake CPUs (Michael Petlan) [1709243] - [tools] perf tools: Don't clone maps from parent when synthesizing forks (Michael Petlan) [1709243] - [tools] perf top: Allow disabling the overwrite mode (Michael Petlan) [1709243] - [kernel] perf/core: Clean up inconsisent indentation (Michael Petlan) [1709243] - [tools] perf script: Implement --graph-function (Michael Petlan) [1709243] - [tools] tools script: Add --call-trace and --call-ret-trace (Michael Petlan) [1709243] - [tools] perf script: Add --insn-trace for instruction decoding (Michael Petlan) [1709243] - [tools] perf trace: Introduce --max-events (Michael Petlan) [1709243] - [x86] perf/x86/intel: Add quirk for Goldmont Plus (Michael Petlan) [1709243] - [kernel] perf: Suppress AUX/OVERWRITE records (Michael Petlan) [1709243] - [x86] perf/x86/intel/pt: Annotate 'pt_cap_group' with __ro_after_init (Michael Petlan) [1709243] - [x86] perf/x86: Add __ro_after_init annotations (Michael Petlan) [1709243] - [x86] x86/mm/mem_encrypt: Disable all instrumentation for early SME setup (Janakarajan Natarajan) [1679265] - [fs] cifs: fix copy_file_range to allow write on the same file (Leif Sahlberg) [1689100] - [infiniband] Revert "[infiniband] IB/usnic: Remove stub functions" (Jonathan Toppins) [1713753] - [x86] Update stepping values for Whiskey Lake U/Y (David Arcari) [1704801] - [powerpc] powerpc/perf: Trace imc PMU functions (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Trace imc events detection and cpuhotplug (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Declare static identifier a such (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Add privileged access check for thread_imc (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Rearrange setting of ldbar for thread-imc (Jiri Olsa) [1608796] - [powerpc] powerpc/include: Add data structures and macros for IMC trace mode (Jiri Olsa) [1608796] - [scsi] hpsa: correct-static-checker-issue-in-reset-handler (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: update driver version (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: correct device resets (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: do-not-complete-cmds-for-deleted-devices (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: wait longer for ptraid commands (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: check for tag collision (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: use local workqueues instead of system workqueues (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: correct simple mode (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: bump driver version (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: correct device id issues (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: check for lv removal (Joseph Szczypek) [1713772] - [mm] mm, slub: restore the original intention of prefetch_freepointer() (Rafael Aquini) [1714671] - [fs] Revert "add KABI padding to dentry structure" (Waiman Long) [1714253] - [crypto] crypto: drbg - add FIPS 140-2 CTRNG for noise source (Herbert Xu) [1687905] - [infiniband] RDMA/qedr: Fix incorrect device rate. (Manish Chopra) [1713580] - [scsi] scsi: bnx2fc: remove unneeded variable (Nilesh Javali) [1665308] - [scsi] scsi: fcoe: make use of fip_mode enum complete (Nilesh Javali) [1665308] - [char] ipmi:ssif: compare block number correctly for multi-part return messages (Tony Camuso) [1712159] - [kernel] kernel/sysctl.c: define minmax conv functions in terms of non-minmax versions (Alex Gladkov) [1683922] - [kernel] kernel/sysctl.c: add missing range check in do_proc_dointvec_minmax_conv (Alex Gladkov) [1683922] - [tools] tools/testing/selftests/sysctl/sysctl.sh: add tests for >32-bit values written to 32-bit integers (Alex Gladkov) [1683922] - [kernel] sched/nohz: Run NOHZ idle load balancer on HK_FLAG_MISC CPUs (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] nohz_full: Allow the boot CPU to be nohz_full (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] sched/isolation: Require a present CPU in housekeeping mask (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] kernel/cpu: Allow non-zero CPU to be primary for suspend / kexec freeze (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] power/suspend: Add function to disable secondaries for suspend (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] sched/core: Allow the remote scheduler tick to be started on CPU0 (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] sched/fair: Use non-atomic cpumask_{set,clear}_cpu() (Desnes Augusto Nunes do Rosario) [1666614] - [lib] lib: reciprocal_div: implement the improved algorithm on the paper mentioned (Petr Oros) [1706982] - [kernel] kernel/sysctl.c: fix proc_do_large_bitmap for large input buffers (Eric Sandeen) [1667092] - [kernel] tools/testing/selftests/sysctl/sysctl.sh: add proc_do_large_bitmap() test case (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: allow graceful use on older kernels (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: ignore diff output on verify_diff_w() (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: load module before testing for it (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: remove superfluous test_reqs() (Eric Sandeen) [1667092] - [kernel] kernel/sysctl.c: fix out-of-bounds access when setting file-max (Eric Sandeen) [1694160] - [kernel] sysctl: handle overflow for file-max (Eric Sandeen) [1694160] - [kernel] sysctl: handle overflow in proc_get_long (Eric Sandeen) [1694160] - [s390] kvm: s390: Fix potential spectre warnings (Thomas Huth) [1702344] - [powerpc] mm: move warning from resize_hpt_for_hotplug() (Laurent Vivier) [1660737] - [powerpc] pseries: Use pr_xxx() in lpar.c (Laurent Vivier) [1660737] - [infiniband] RDMA/iw_cxgb4: Always disconnect when QP is transitioning to TERMINATE state (Arjun Vynipadath) [1664673] - [infiniband] cxgb4: kfree mhp after the debug print (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxbg: Use correct sizing on buffers holding page DMA addresses (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Make function read_tcb() static (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: Remove kref accounting for sync operation (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: cq/qp mask depends on bar2 pages in a host page (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: fix srqidx leak during connection abort (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: complete the cached SRQ buffers (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Remove a set-but-not-used variable (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: use tos when finding ipv6 routes (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: use tos when importing the endpoint (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: use listening ep tos when accepting new connections (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb*: kzalloc the iwcm verbs struct (Arjun Vynipadath) [1664673] - [infiniband] RDMA/iw_cxgb4: Drop __GFP_NOFAIL (Arjun Vynipadath) [1664673] - [infiniband] infiniband: cxgb4: no need to check return value of debugfs_create functions (Arjun Vynipadath) [1664673] - [infiniband] RDMA/iw_cxgb4: Fix the unchecked ep dereference (Arjun Vynipadath) [1664673] - [infiniband] RDMA: Introduce and use rdma_device_to_ibdev() (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Check for send WR also while posting write with completion WR (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: only reconnect with MPAv1 if the peer aborts (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Use proper enumerated type in c4iw_bar2_addrs (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: remove redundant null pointer check before kfree_skb (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Remove pci_unmap_addr() wrappers for DMA API (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Declare ib_post_send() and ib_post_recv() arguments const (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Simplify a structure initialization (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Fix SRQ endianness annotations (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Add support for kernel mode SRQ's (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Add support for srq functions & structs (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: Restore the dropped uninitialized_var (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: Make c4iw_poll_cq_one() easier to analyze (Arjun Vynipadath) [1664673] - [fs] gfs2: clean_journal improperly set sd_log_flush_head (Robert S Peterson) [1693660]- [netdrv] bonding/802.3ad: fix slave link initialization transition states (Jarod Wilson) [1714387] - [iommu] iommu/vt-d: Disable ATS support on untrusted devices (Jerry Snitselaar) [1649210 1692246] - [documentation] thunderbolt: Export IOMMU based DMA protection support to userspace (Jerry Snitselaar) [1649210 1692246] - [iommu] iommu/vt-d: Do not enable ATS for untrusted devices (Jerry Snitselaar) [1649210 1692246] - [iommu] iommu/vt-d: Force IOMMU on for platform opt in hint (Jerry Snitselaar) [1649210 1692246] - [arm64] arm64: makefile fix build of .i file in external module case (Jerome Marchand) [1713052] - [s390] s390/protvirt: block kernel command line alteration (Philipp Rudo) [1651711] - [s390] s390/protvirt: add memory sharing for diag 308 set/store (Philipp Rudo) [1651711] - [s390] s390/uv: introduce guest side ultravisor code (Philipp Rudo) [1651711] - [netdrv] net: aquantia: fix undefined devm_hwmon_device_register_with_info reference (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Make aq_ndev_driver_name static (Igor Russkikh) [1706905] - [netdrv] net: aquantia: remove outdated device ids (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixups on 64bit dma counters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: get total counters from DMA block (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fetch up to date statistics on ethtool request (Igor Russkikh) [1706905] - [netdrv] net: aquantia: extract timer cb into work job (Igor Russkikh) [1706905] - [netdrv] net: aquantia: introduce fwreq mutex (Igor Russkikh) [1706905] - [netdrv] net: aquantia: user correct MSI irq type (Igor Russkikh) [1706905] - [netdrv] net: aquantia: use macros for better visibility (Igor Russkikh) [1706905] - [netdrv] net: aquantia: improve ifup link detection (Igor Russkikh) [1706905] - [netdrv] net: aquantia: link status irq handling (Igor Russkikh) [1706905] - [netdrv] net: aquantia: create global service workqueue (Igor Russkikh) [1706905] - [netdrv] net: aquantia: link interrupt handling function (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add link interrupt fields (Igor Russkikh) [1706905] - [netdrv] net: aquantia: implement hwmon api for chip temperature (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add infrastructure to readout chip temperature (Igor Russkikh) [1706905] - [netdrv] net: aquantia: enable driver build for arm64 or compile_test (Igor Russkikh) [1706905] - [netdrv] net: aquantia: improve LRO configuration (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Increase rx ring default size from 1K to 2K (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Make RX default frame size 2K (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Introduce rx refill threshold value (Igor Russkikh) [1706905] - [netdrv] net: aquantia: optimize rx performance by page reuse strategy (Igor Russkikh) [1706905] - [netdrv] net: aquantia: optimize rx path using larger preallocated skb len (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix rx checksum offload for UDP/TCP over IPv6 (Igor Russkikh) [1706905] - [netdrv] net: aquantia: use better wrappers for state registers (Igor Russkikh) [1706905] - [netdrv] net: aquantia: replace AQ_HW_WAIT_FOR with readx_poll_timeout_atomic (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed instack structure overflow (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed buffer overflow (Igor Russkikh) [1706905] - [netdrv] net: aquantia: added newline at end of file (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed memcpy size (Igor Russkikh) [1706905] - [netdrv] net: aquantia: regression on cpus with high cores: set mode with 8 queues (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add support of RSS configuration (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix initialization of RSS table (Igor Russkikh) [1706905] - [netdrv] net: aquantia: increase max number of hw queues (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix RSS table and key sizes (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix rx checksum offload bits (Igor Russkikh) [1706905] - [netdrv] net: aquantia: return 'err' if set MPI_DEINIT state fails (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix spelling mistake "specfield" -> "specified" (Igor Russkikh) [1706905] - [netdrv] net: aquantia: cleanup err handing in hw_atl_utils_fw_rpc_wait (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add support of rx-vlan-filter offload (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add ethertype and PCP to rx flow filters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add vlan id to rx flow filters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add support of L3/L4 ntuple filters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add infrastructure for ntuple rules (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add rx-flow filter definitions (Igor Russkikh) [1706905] - [netdrv] net: aquantia: allow rx checksum offload configuration (Igor Russkikh) [1706905] - [netdrv] net: aquantia: invalid checksumm offload implementation (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed enable unicast on 32 macvlan (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix potential IOMMU fault after driver unbind (Igor Russkikh) [1706905] - [netdrv] net: aquantia: synchronized flow control between mac/phy (Igor Russkikh) [1706905] - [netdrv] net: aquantia: make function aq_fw2x_update_stats static (Igor Russkikh) [1706905] - [netdrv] net: aquantia: remove some redundant variable initializations (Igor Russkikh) [1706905] - [netdrv] bnxt_en: Add device IDs 0x1806 and 0x1752 for 57500 devices. (Selvin Xavier) [1672208] - [scsi] scsi: fnic: Remove set but not used variable 'vdev' (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: no need to check return value of debugfs_create functions (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Update fnic driver version to 1.6.0.47 (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Enable fnic devcmd2 interface (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Adding devcmd2 init and posting interfaces (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Add devcmd2 initialization helpers (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: fnic devcmd2 controller definitions (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: fnic devcmd2 interface definitions (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Impose upper limit on max. # of CQs processed per intr (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: RQ enable and then post descriptors (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: delaying vnic dev enable till after req intr (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Warn when calling done for IO not issued to fw (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: fnic stats for max CQs processed and ISR time (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Add port speed stat to fnic debug stats (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: use fnic_lock to guard fnic->state_flags (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: vnic_rq_clean change BUG_ON to WARN_ON (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: change fnic queue depth to 256 (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: support to display 20G port speed (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Use vzalloc (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: switch to generic DMA API (Govindarajulu Varadarajan) [1656236] - [pci] PCI/PME: Fix possible use-after-free on remove (Myron Stowe) [1701834] - [pci] PCI/PME: Fix hotplug/sysfs remove deadlock in pcie_pme_remove() (Myron Stowe) [1701834] - [pci] PCI: Blacklist power management of Gigabyte X299 DESIGNARE EX PCIe ports (Myron Stowe) [1701834] - [tools] perf arm64: Fix mksyscalltbl when system kernel headers are ahead of the kernel (Michael Petlan) [1709242] - [rpmspec] perf: remove bpf examples (Michael Petlan) [1709242] - [tools] perf tools: Stop fallbacking to kallsyms for vdso symbols lookup (Michael Petlan) [1709242] - [tools] perf report: Don't crash on invalid inline debug information (Michael Petlan) [1709242] - [tools] perf cpu_map: Align cpu map synthesized events properly. (Michael Petlan) [1709242] - [tools] perf tools: Fix tracing_path_mount proper path (Michael Petlan) [1709242] - [tools] perf evsel: Store ids for events with their own cpus perf_event__synthesize_event_update_cpus (Michael Petlan) [1709242] - [tools] perf vendor events intel: Fix wrong filter_band* values for uncore events (Michael Petlan) [1709242] - [tools] Revert "perf tools: Fix PMU term format max value calculation" (Michael Petlan) [1709242] - [tools] tools headers uapi: Sync kvm.h copy (Michael Petlan) [1709242] - [tools] perf record: Use unmapped IP for inline callchain cursors (Michael Petlan) [1709242] - [tools] perf python: Use -Wno-redundant-decls to build with PYTHON=python3 (Michael Petlan) [1709242] - [tools] perf report: Don't try to map ip to invalid map (Michael Petlan) [1709242] - [tools] perf script python: Fix export-to-sqlite.py sample columns (Michael Petlan) [1709242] - [tools] perf script python: Fix export-to-postgresql.py occasional failure (Michael Petlan) [1709242] - [tools] perf Documentation: Fix out-of-tree asciidoctor man page generation (Michael Petlan) [1709242] - [tools] perf tools: Fix maps__find_symbol_by_name() (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of linux/if_link.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of linux/vhost.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copies of kvm headers (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of drm/drm.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of asm-generic/unistd.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1709242] - [tools] perf annotate: Fix parsing aarch64 branch instructions after objdump update (Michael Petlan) [1709242] - [tools] perf probe powerpc: Ignore SyS symbols irrespective of endianness (Michael Petlan) [1709242] - [tools] perf event-parse: Use fixed size string for comms (Michael Petlan) [1709242] - [tools] perf util: Fix bad memory access in trace info. (Michael Petlan) [1709242] - [tools] perf tools: Streamline bpf examples and headers installation (Michael Petlan) [1709242] - [tools] perf evsel: Fix potential null pointer dereference in perf_evsel__new_idx() (Michael Petlan) [1709242] - [tools] perf arm64: Fix include path for asm-generic/unistd.h (Michael Petlan) [1709242] - [tools] perf tests: Add breakpoint modify tests (Michael Petlan) [1709242] - [tools] perf annotate: Properly interpret indirect call (Michael Petlan) [1709242] - [tools] tools/lib/lockdep: Add dummy task_struct state member (Michael Petlan) [1709242] - [tools] tools/lib/lockdep: Add empty nmi.h (Michael Petlan) [1709242] - [tools] tools lib traceevent: Change to SPDX License format (Michael Petlan) [1709242] - [tools] perf llvm: Allow passing options to llc in addition to clang (Michael Petlan) [1709242] - [tools] perf parser: Improve error message for PMU address filters (Michael Petlan) [1709242] - [tools] perf tools: Disable parallelism for 'make clean' (Michael Petlan) [1709242] - [tools] perf auxtrace: Fix queue resize (Michael Petlan) [1709242] - [tools] perf python: Remove -mcet and -fcf-protection when building with clang (Michael Petlan) [1709242] - [tools] perf arm spe: Fix uninitialized record error variable (Michael Petlan) [1709242] - [tools] perf tools: Move syscall_64.tbl check into check-headers.sh (Michael Petlan) [1709242] - [tools] perf tools: Make check-headers.sh check based on kernel dir (Michael Petlan) [1709242] - [tools] perf tools: Fix check-headers.sh AND list path of execution (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename static variables and functions in event-parse.c (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename various pevent APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename internal parser related APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename various pevent get/set/is APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_find_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent field APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_data_ APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_register / unregister APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_filter* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename traceevent_plugin_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_function* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, tools lib lockdep: Rename 'enum pevent_errno' to 'enum tep_errno' (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename 'enum pevent_flag' to 'enum tep_flag' (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename traceevent_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent_set_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent_register_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent_read_number_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent print APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent parse APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent find APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent alloc / free APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent plugin related APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename 'struct pevent_record' to 'struct tep_record' (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename struct pevent to struct tep_handle (Michael Petlan) [1709242] - [tools] perf probe powerpc: Fix trace event post-processing (Michael Petlan) [1709242] - [tools] perf map: Optimize maps__fixup_overlappings() (Michael Petlan) [1709242] - [tools] perf map: Synthesize maps only for thread group leader (Michael Petlan) [1709242] - [tools] perf trace: Wire up the augmented syscalls with the syscalls:sys_enter_FOO beautifier (Michael Petlan) [1709242] - [tools] perf trace: Setup the augmented syscalls bpf-output event fields (Michael Petlan) [1709242] - [tools] perf bpf: Make bpf__setup_output_event() return the bpf-output event (Michael Petlan) [1709242] - [tools] perf trace: Handle "bpf-output" events associated with "__augmented_syscalls__" BPF map (Michael Petlan) [1709242] - [tools] perf bpf: Add wrappers to BPF_FUNC_probe_read(_str) functions (Michael Petlan) [1709242] - [tools] perf bpf: Add bpf__setup_output_event() strerror() counterpart (Michael Petlan) [1709242] - [tools] perf bpf: Generalize bpf__setup_stdout() (Michael Petlan) [1709242] - [tools] perf bpf: Make bpf__for_each_stdout_map() generic (Michael Petlan) [1709242] - [tools] perf bpf: Add bpf/stdio.h wrapper to bpf_perf_event_output function (Michael Petlan) [1709242] - [tools] perf bpf: Add struct bpf_map struct (Michael Petlan) [1709242] - [tools] perf report: Add --percent-type option (Michael Petlan) [1709242] - [tools] perf annotate: Add --percent-type option (Michael Petlan) [1709242] - [tools] perf annotate: Display percent type in stdio output (Michael Petlan) [1709242] - [tools] perf annotate: Make local period the default percent type (Michael Petlan) [1709242] - [tools] perf annotate: Add support to toggle percent type (Michael Petlan) [1709242] - [tools] perf annotate: Pass browser percent_type in annotate_browser__calc_percent() (Michael Petlan) [1709242] - [tools] perf annotate: Pass 'struct annotation_options' to map_symbol__annotation_dump() (Michael Petlan) [1709242] - [tools] perf annotate: Pass struct annotation_options to symbol__calc_lines() (Michael Petlan) [1709242] - [tools] perf annotate: Add percent_type to struct annotation_options (Michael Petlan) [1709242] - [tools] perf annotate: Add PERCENT_PERIOD_GLOBAL percent value (Michael Petlan) [1709242] - [tools] perf annotate: Add PERCENT_PERIOD_LOCAL percent value (Michael Petlan) [1709242] - [tools] perf annotate: Add PERCENT_HITS_GLOBAL percent value (Michael Petlan) [1709242] - [tools] perf annotate: Switch struct annotation_data::percent to array (Michael Petlan) [1709242] - [tools] perf annotate: Loop group events directly in annotation__calc_percent() (Michael Petlan) [1709242] - [tools] perf annotate: Rename hist to sym_hist in annotation__calc_percent (Michael Petlan) [1709242] - [tools] perf annotate: Rename local sample variables to data (Michael Petlan) [1709242] - [tools] perf annotate: Rename struct annotation_line::samples* to data* (Michael Petlan) [1709242] - [tools] perf annotate: Get rid of annotation__scnprintf_samples_period() (Michael Petlan) [1709242] - [tools] perf annotate: Make annotation_line__max_percent static (Michael Petlan) [1709242] - [tools] perf annotate: Make symbol__annotate_fprintf2() local (Michael Petlan) [1709242] - [tools] perf bpf: Add 'syscall_enter' probe helper for syscall enter tracepoints (Michael Petlan) [1709242] - [tools] perf tools: Drop unneeded bitmap_zero() calls (Michael Petlan) [1709242] - [tools] perf vendor events arm64: Enable JSON events for eMAG (Michael Petlan) [1709242] - [tools] perf report: Add GUI report support for s390 auxiliary trace (Michael Petlan) [1709242] - [tools] perf report: Add raw report support for s390 auxiliary trace (Michael Petlan) [1709242] - [tools] perf auxtrace: Support for perf report -D for s390 (Michael Petlan) [1709242] - [tools] perf trace: Use perf_evsel__sc_tp_{uint,ptr} for "id"/"args" handling syscalls:* events (Michael Petlan) [1709242] - [tools] perf trace: Setup struct syscall_tp for syscalls:sys_{enter,exit}_NAME events (Michael Petlan) [1709242] - [tools] perf trace: Allow setting up a syscall_tp struct without a format_field (Michael Petlan) [1709242] - [tools] perf trace: Rename some syscall_tp methods to raw_syscall (Michael Petlan) [1709242] - [tools] perf trace: Use beautifiers on syscalls:sys_enter_ handlers (Michael Petlan) [1709242] - [tools] perf trace: Associate vfs_getname()'ed pathname with fd returned from 'openat' (Michael Petlan) [1709242] - [tools] perf trace: Do not require --no-syscalls to suppress strace like output (Michael Petlan) [1709242] - [tools] perf bpf: Include uapi/linux/bpf.h from the 'perf trace' script's bpf.h (Michael Petlan) [1709242] - [tools] perf tools: Allow overriding MAX_NR_CPUS at compile time (Michael Petlan) [1709242] - [tools] perf bpf: Show better message when failing to load an object (Michael Petlan) [1709242] - [tools] perf list: Unify metric group description format with PMU event description (Michael Petlan) [1709242] - [tools] perf cs-etm: Generate branch sample for CS_ETM_TRACE_ON packet (Michael Petlan) [1709242] - [tools] perf cs-etm: Generate branch sample when receiving a CS_ETM_TRACE_ON packet (Michael Petlan) [1709242] - [tools] perf cs-etm: Support dummy address value for CS_ETM_TRACE_ON packet (Michael Petlan) [1709242] - [tools] perf cs-etm: Fix start tracing packet handling (Michael Petlan) [1709242] - [tools] perf build: Fix installation directory for eBPF (Michael Petlan) [1709242] - [tools] perf c2c report: Fix crash for empty browser (Michael Petlan) [1709242] - [tools] perf tests: Fix indexing when invoking subtests (Michael Petlan) [1709242] - [tools] perf trace: Beautify the AF_INET & AF_INET6 'socket' syscall 'protocol' args (Michael Petlan) [1709242] - [tools] perf trace beauty: Add beautifiers for 'socket''s 'protocol' arg (Michael Petlan) [1709242] - [tools] perf trace beauty: Do not print NULL strarray entries (Michael Petlan) [1709242] - [tools] perf beauty: Add a generator for IPPROTO_ socket's protocol constants (Michael Petlan) [1709242] - [tools] tools include uapi: Grab a copy of linux/in.h (Michael Petlan) [1709242] - [tools] perf tests: Fix complex event name parsing (Michael Petlan) [1709242] - [tools] perf evlist: Fix error out while applying initial delay and LBR (Michael Petlan) [1709242] - [tools] perf trace beauty: Default header_dir to cwd to work without parms (Michael Petlan) [1709242] - [tools] perf test: Fix subtest number when showing results (Michael Petlan) [1709242] - [tools] perf stat: Get rid of extra clock display function (Michael Petlan) [1709242] - [tools] perf tools: Use perf_evsel__match instead of open coded equivalent (Michael Petlan) [1709242] - [tools] perf tools: Fix struct comm_str removal crash (Michael Petlan) [1709242] - [tools] perf machine: Use last_match threads cache only in single thread mode (Michael Petlan) [1709242] - [tools] perf machine: Add threads__set_last_match function (Michael Petlan) [1709242] - [tools] perf machine: Add threads__get_last_match function (Michael Petlan) [1709242] - [tools] perf tools: Synthesize GROUP_DESC feature in pipe mode (Michael Petlan) [1709242] - [tools] perf script: Show correct offsets for DWARF-based unwinding (Michael Petlan) [1709242] - [tools] perf trace arm64: Use generated syscall table (Michael Petlan) [1709242] - [tools] perf arm64: Generate system call table from asm/unistd.h (Michael Petlan) [1709242] - [tools] tools include: Grab copies of arm64 dependent unistd.h files (Michael Petlan) [1709242] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh when event exists (Michael Petlan) [1709242] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh to ensure cleanups (Michael Petlan) [1709242] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh for powerpc64 (Michael Petlan) [1709242] - [tools] perf powerpc: Fix callchain ip filtering when return address is in a register (Michael Petlan) [1709242] - [tools] perf powerpc: Fix callchain ip filtering (Michael Petlan) [1709242] - [tools] perf list: Add missing documentation for --desc and --debug options (Michael Petlan) [1709242] - [tools] perf stat: Add transaction flag (-T) support for s390 (Michael Petlan) [1709242] - [tools] perf json: Add s390 transaction counter definition (Michael Petlan) [1709242] - [tools] perf list: Add s390 support for detailed PMU event description (Michael Petlan) [1709242] - [tools] Revert "perf list: Add s390 support for detailed/verbose PMU event description" (Michael Petlan) [1709242] - [tools] perf cs-etm: Bail out immediately for instruction sample failure (Michael Petlan) [1709242] - [tools] perf cs-etm: Introduce invalid address macro (Michael Petlan) [1709242] - [tools] perf hists: Clarify callchain disabling when available (Michael Petlan) [1709242] - [tools] perf tests: Check that complex event name is parsed correctly (Michael Petlan) [1709242] - [arm64] arm64: perf: Reject stand-alone CHAIN events for PMUv3 (Michael Petlan) [1709242] - [x86] perf/x86/amd/uncore: Set ThreadMask and SliceMask for L3 Cache perf events (Michael Petlan) [1709242] - [x86] perf/x86/intel/uncore: Fix PCI BDF address of M3UPI on SKX (Michael Petlan) [1709242] - [kernel] perf/ring_buffer: Prevent concurent ring buffer access (Michael Petlan) [1709242] - [x86] perf/x86/intel/uncore: Use boot_cpu_data.phys_proc_id instead of hardcorded physical package ID 0 (Michael Petlan) [1709242] - [kernel] perf/core: Fix perf_pmu_unregister() locking (Michael Petlan) [1709242] - [kernel] perf/core: Add sanity check to deal with pinned event failure (Michael Petlan) [1709242] - [kernel] perf/core: Force USER_DS when recording user stack data (Michael Petlan) [1709242] - [include] perf/UAPI: Clearly mark __PERF_SAMPLE_CALLCHAIN_EARLY as internal use (Michael Petlan) [1709242] - [x86] perf/x86/intel: Add support/quirk for the MISPREDICT bit on Knights Landing CPUs (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Simplify breakpoint enable in perf_event_modify_breakpoint (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Enable breakpoint in modify_user_hw_breakpoint (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Remove superfluous bp->attr.disabled = 0 (Michael Petlan) [1709242] - [kernel] arm64: perf: Add cap_user_time aarch64 (Michael Petlan) [1709242] - [include] arm_pmu: Add support for 64bit event counters (Michael Petlan) [1709242] - [x86] perf/x86/intel: Support Extended PEBS for Goldmont Plus (Michael Petlan) [1709242] - [x86] perf/x86/intel/ds: Handle PEBS overflow for fixed counters (Michael Petlan) [1709242] - [x86] perf/x86/intel: Support PEBS on fixed counters (Michael Petlan) [1709242] - [kernel] perf, tools: Use correct articles in comments (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Clean up and consolidate modify_user_hw_breakpoint_check() (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Pass new breakpoint type to modify_breakpoint_slot() (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Remove default hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [arm64] perf/arch/arm64: Implement hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [powerpc] perf/arch/powerpc: Implement hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [x86] perf/arch/x86: Implement hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [arm64] perf/hw_breakpoint: Pass arch breakpoint struct to arch_check_bp_in_kernelspace() (Michael Petlan) [1709242] - [kernel] perf/core: Change perf_mmap_fault() return type to 'vm_fault_t' (Michael Petlan) [1709242] - [x86] perf/x86/intel/lbr: Optimize context switches for the LBR call stack (Michael Petlan) [1709242] - [netdrv] cnic: Refactor code and mark expected switch fall-through (Nilesh Javali) [1665302] - [netdrv] cnic: remove use of VLAN_TAG_PRESENT (Nilesh Javali) [1665302] - [netdrv] cnic: use kvzalloc to allocate memory for csk_tbl (Nilesh Javali) [1665302] - [netdrv] cnic: remove redundant pointer req and variable func (Nilesh Javali) [1665302] - [scsi] drivers: Remove useless trailing comments from mmiowb() invocations (Nilesh Javali) [1665307] - [scsi] scsi: qedf: remove set but not used variables (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Update the driver version to 8.37.25.20 (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add return value to log message if scsi_add_host fails (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Print fcport information on wait for upload timeout (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check the return value of start_xmit (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Log message if scsi_add_host fails (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check for fcoe_libfc_config failure (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add comment to display logging levels (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add port_id for fcport into initiate_cleanup debug message (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add LBA to underrun debug messages (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Print scsi_cmd backpointer in good completion path if the command is still being used (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add driver state to 'driver_stats' debugfs node (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Change MSI-X load error message (Nilesh Javali) [1665301] - [scsi] scsi: qedf: remove memset/memcpy to nfunc and use func instead (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Remove set but not used variable 'fr_len' (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Update the driver version to 8.37.25.19 (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Fix lport may be used uninitialized warning (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Correctly handle refcounting of rdata (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Cleanup rrq_work after QEDF_CMD_OUTSTANDING is cleared (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check for tm_flags instead of cmd_type during cleanup (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add a flag to help debugging io_req which could not be cleaned (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Don't send ABTS for under run scenario (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Don't queue anything if upload is in progress (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check both the FCF and fabric ID before servicing clear virtual link (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fc_rport_priv reference counting fixes (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add missing return in qedf_scsi_done() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Wait for upload and link down processing during soft ctx reset (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add additional checks for io_req->sc_cmd validity (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fixup bit operations (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fixup locking in qedf_restart_rport() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: missing kref_put in qedf_xmit() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check for link state before processing LL2 packets and send fipvlan retries (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add missing fc_disc_init call after allocating lport (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Correct the memory barriers in qedf_ring_doorbell (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Use a separate completion for cleanup commands (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Modify abort and tmf handler to handle edge condition and flush (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Modify flush routine to handle all I/Os and TMF (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Simplify s/g list mapping (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add missing return in qedf_post_io_req() in the fcport offload check (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Correct xid range overlap between offloaded requests and libfc requests (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Do not retry ELS request if qedf_alloc_cmd fails (Nilesh Javali) [1665301] - [scsi] scsi: fcoe: make use of fip_mode enum complete (Nilesh Javali) [1665301] - [scsi] scsi: stop setting up request->special (Nilesh Javali) [1665301] - [scsi] scsi: qedf: no need to check return value of debugfs_create functions (Nilesh Javali) [1665301] - [scsi] cross-tree: phase out dma_zalloc_coherent() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: NULL check before some freeing functions is not needed (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fully convert to the generic DMA API (Nilesh Javali) [1665301] - [scsi] scsi: qedi: Adjust termination and offload ramrod timers (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Abort ep termination if offload not scheduled (Nilesh Javali) [1665300] - [scsi] scsi: qedi: fix spelling mistake "oflload" -> "offload" (Nilesh Javali) [1665300] - [scsi] scsi: qedi: remove declaration of nvm_image from stack (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Remove set but not used variable 'cls_sess' (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Add ep_state for login completion on un-reachable targets (Nilesh Javali) [1665300] - [scsi] cross-tree: phase out dma_zalloc_coherent() (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Update driver version to 8.33.0.21 (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Move LL2 producer index processing in BH. (Nilesh Javali) [1665300] - [scsi] scsi: qedi: add module param to set ping packet size (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Add packet filter in light L2 Rx path. (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Check for session online before getting iSCSI TLV data. (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Replace PAGE_SIZE with QEDI_PAGE_SIZE (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Fix spelling mistake "OUSTANDING" -> "OUTSTANDING" (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Cleanup redundant QEDI_PAGE_SIZE macro definition (Nilesh Javali) [1665300] - [scsi] scsi: qedi: fully convert to the generic DMA API (Nilesh Javali) [1665300] - [x86] x86/kdump: Fall back to reserve high crashkernel memory (Pingfan Liu) [1682984] - [x86] x86/kdump: Have crashkernel=X reserve under 4G by default (Pingfan Liu) [1682984] - [x86] Revert "[x86] x86/kdump: make the behavior of crashkernel=X consistent with kaslr" (Pingfan Liu) [1682984] - [scsi] scsi: core: avoid pre-allocating big SGL for data (Ewan Milne) [1698297] - [scsi] scsi: core: avoid pre-allocating big SGL for protection information (Ewan Milne) [1698297] - [nvme] scsi: lib/sg_pool.c: improve APIs for allocating sg pool (Ewan Milne) [1698297] - [kvm] KVM: PPC: Book3S HV: Save/restore vrsave register in kvmhv_p9_guest_entry() (Suraj Jitindar Singh) [1700272] - [fs] ext4: avoid kernel warning when writing the superblock to a dead device (Lukas Czerner) [1695021] - [fs] ext4: cond_resched in work-heavy group loops (Lukas Czerner) [1698815] - [fs] ext4: ignore e_value_offs for xattrs with value-in-ea-inode (Lukas Czerner) [1698815] - [fs] ext4: protect journal inode's blocks using block_validity (Lukas Czerner) [1698815] - [fs] ext4: use BUG() instead of BUG_ON(1) (Lukas Czerner) [1698815] - [fs] jbd2: check superblock mapped prior to committing (Lukas Czerner) [1698815] - [fs] ext4: remove incorrect comment for NEXT_ORPHAN() (Lukas Czerner) [1698815] - [fs] ext4: make sanity check in mballoc more strict (Lukas Czerner) [1698815] - [fs] ext4: fix use-after-free race with debug_want_extra_isize (Lukas Czerner) [1698815] - [fs] ext4: fix ext4_show_options for file systems w/o journal (Lukas Czerner) [1698815] - [fs] ext4: actually request zeroing of inode table after grow (Lukas Czerner) [1698815] - [fs] Revert "ext4: use ext4_write_inode() when fsyncing w/o a journal" (Lukas Czerner) [1698815] - [fs] ext4: fix some error pointer dereferences (Lukas Czerner) [1698815] - [fs] ext4: fix special inode number checks in __ext4_iget() (Lukas Czerner) [1698815] - [fs] ext4: prohibit fstrim in norecovery mode (Lukas Czerner) [1698815] - [fs] ext4: cleanup bh release code in ext4_ind_remove_space() (Lukas Czerner) [1698815] - [fs] ext4: brelse all indirect buffer in ext4_ind_remove_space() (Lukas Czerner) [1698815] - [fs] ext4: report real fs size after failed resize (Lukas Czerner) [1698815] - [fs] ext4: add missing brelse() in add_new_gdb_meta_bg() (Lukas Czerner) [1698815] - [fs] ext4: remove useless ext4_pin_inode() (Lukas Czerner) [1698815] - [fs] ext4: avoid panic during forced reboot (Lukas Czerner) [1698815] - [fs] ext4: fix data corruption caused by unaligned direct AIO (Lukas Czerner) [1698815] - [fs] ext4: fix NULL pointer dereference while journal is aborted (Lukas Czerner) [1698815] - [fs] jbd2: jbd2_get_transaction does not need to return a value (Lukas Czerner) [1698815] - [fs] jbd2: fix invalid descriptor block checksum (Lukas Czerner) [1698815] - [fs] ext4: fix bigalloc cluster freeing when hole punching under load (Lukas Czerner) [1698815] - [fs] ext4: add sysfs attr /sys/fs/ext4//journal_task (Lukas Czerner) [1698815] - [fs] ext4: Change debugging support help prefix from EXT4 to Ext4 (Lukas Czerner) [1698815] - [fs] ext4: fix compile error when using BUFFER_TRACE (Lukas Czerner) [1698815] - [fs] jbd2: fix compile warning when using JBUFFER_TRACE (Lukas Czerner) [1698815] - [fs] ext4: annotate more implicit fall throughs (Lukas Czerner) [1698815] - [fs] ext4: annotate implicit fall throughs (Lukas Czerner) [1698815] - [fs] ext4: don't update s_rev_level if not required (Lukas Czerner) [1698815] - [fs] jbd2: fold jbd2_superblock_csum_{verify,set} into their callers (Lukas Czerner) [1698815] - [fs] jbd2: fix race when writing superblock (Lukas Czerner) [1698815] - [fs] ext4: fix crash during online resizing (Lukas Czerner) [1698815] - [fs] ext4: disallow files with EXT4_JOURNAL_DATA_FL from EXT4_IOC_SWAP_BOOT (Lukas Czerner) [1698815] - [fs] ext4: add mask of ext4 flags to swap (Lukas Czerner) [1698815] - [fs] ext4: update quota information while swapping boot loader inode (Lukas Czerner) [1698815] - [fs] ext4: cleanup pagecache before swap i_data (Lukas Czerner) [1698815] - [fs] ext4: fix check of inode in swap_inode_boot_loader (Lukas Czerner) [1698815] - [fs] ext4: unlock unused_pages timely when doing writeback (Lukas Czerner) [1698815] - [fs] ext4: cleanup clean_bdev_aliases() calls (Lukas Czerner) [1698815] - [fs] jbd2: discard dirty data when forgetting an un-journalled buffer (Lukas Czerner) [1698815] - [fs] jbd2: clear dirty flag when revoking a buffer from an older transaction (Lukas Czerner) [1698815] - [fs] ext4: replace opencoded i_writecount usage with inode_is_open_for_write() (Lukas Czerner) [1698815] - [fs] jbd2: fix deadlock while checkpoint thread waits commit thread to finish (Lukas Czerner) [1698815] - [fs] ext4: use IS_ENCRYPTED() to check encryption status (Lukas Czerner) [1698815] - [fs] ext4: track writeback errors using the generic tracking infrastructure (Lukas Czerner) [1698815] - [fs] ext4: use ext4_write_inode() when fsyncing w/o a journal (Lukas Czerner) [1698815] - [fs] ext4: fix a potential fiemap/page fault deadlock w/ inline_data (Lukas Czerner) [1698815] - [fs] ext4: make sure enough credits are reserved for dioread_nolock writes (Lukas Czerner) [1698815] - [fs] ext4: check for shutdown and r/o file system in ext4_write_inode() (Lukas Czerner) [1698815] - [fs] ext4: force inode writes when nfsd calls commit_metadata() (Lukas Czerner) [1698815] - [fs] ext4: avoid declaring fs inconsistent due to invalid file handles (Lukas Czerner) [1698815] - [fs] ext4: include terminating u32 in size of xattr entries when expanding inodes (Lukas Czerner) [1698815] - [fs] ext4: compare old and new mode before setting update_mode flag (Lukas Czerner) [1698815] - [fs] ext4: fix EXT4_IOC_GROUP_ADD ioctl (Lukas Czerner) [1698815] - [fs] ext4: hard fail dax mount on unsupported devices (Lukas Czerner) [1698815] - [fs] ext4: remove redundant condition check (Lukas Czerner) [1698815] - [fs] jbd2: clean up indentation issue, replace spaces with tab (Lukas Czerner) [1698815] - [fs] ext4: clean up indentation issues, remove extraneous tabs (Lukas Czerner) [1698815] - [fs] ext4: missing unlock/put_page() in ext4_try_to_write_inline_data() (Lukas Czerner) [1698815] - [fs] ext4: fix possible use after free in ext4_quota_enable (Lukas Czerner) [1698815] - [fs] jbd2: avoid long hold times of j_state_lock while committing a transaction (Lukas Czerner) [1698815] - [fs] ext4: add ext4_sb_bread() to disambiguate ENOMEM cases (Lukas Czerner) [1698815] - [fs] ext4: remove unneeded brelse call in ext4_xattr_inode_update_ref() (Lukas Czerner) [1698815] - [fs] ext4: fix use-after-free race in ext4_remount()'s error path (Lukas Czerner) [1698815] - [fs] ext4: don't open-code ERR_CAST (Lukas Czerner) [1698815] - [fs] ext4: cache NULL when both default_acl and acl are NULL (Lukas Czerner) [1698815] - [fs] ext4: propagate error from dquot_initialize() in EXT4_IOC_FSSETXATTR (Lukas Czerner) [1698815] - [fs] ext4: fix setattr project check in fssetxattr ioctl (Lukas Czerner) [1698815] - [fs] ext4: convert fault handler to use vm_fault_t type (Lukas Czerner) [1698815] - [fs] ext4: fix EXT4_IOC_SWAP_BOOT (Lukas Czerner) [1698815] - [fs] ext4: fix argument checking in EXT4_IOC_MOVE_EXT (Lukas Czerner) [1698815] - [fs] ext4: fix reserved cluster accounting at page invalidation time (Lukas Czerner) [1698815] - [fs] ext4: adjust reserved cluster count when removing extents (Lukas Czerner) [1698815] - [fs] ext4: reduce reserved cluster count by number of allocated clusters (Lukas Czerner) [1698815] - [fs] ext4: fix reserved cluster accounting at delayed write time (Lukas Czerner) [1698815] - [fs] ext4: add new pending reservation mechanism (Lukas Czerner) [1698815] - [fs] ext4: generalize extents status tree search functions (Lukas Czerner) [1698815] - [fs] ext4: readpages() should submit IO as read-ahead (Lukas Czerner) [1698815] - [fs] ext4: improve code readability in ext4_iget() (Lukas Czerner) [1698815] - [fs] ext4: use swap macro in mext_page_double_lock (Lukas Czerner) [1698815] - [fs] ext4: fix warning message in ext4_enable_quotas() (Lukas Czerner) [1698815] - [fs] ext4: super: extend timestamps to 40 bits (Lukas Czerner) [1698815] - [fs] jbd2: replace current_kernel_time64 with ktime equivalent (Lukas Czerner) [1698815] - [fs] ext4: use timespec64 for all inode times (Lukas Czerner) [1698815] - [fs] ext4: use ktime_get_real_seconds for i_dtime (Lukas Czerner) [1698815] - [fs] ext4: use 64-bit timestamps for mmp_time (Lukas Czerner) [1698815] - [scsi] scsi: smartpqi: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Don Brace) [1665565] - [scsi] scsi: smartpqi: bump driver version (Don Brace) [1665565] - [scsi] scsi: smartpqi: add spdx (Don Brace) [1665565] - [scsi] scsi: smartpqi: update copyright (Don Brace) [1665565] - [scsi] scsi: smartpqi: add H3C controller IDs (Don Brace) [1665565] - [scsi] scsi: smartpqi: increase LUN reset timeout (Don Brace) [1665565] - [scsi] scsi: smartpqi: Reporting 'logical unit failure' (Don Brace) [1665565] - [scsi] scsi: smartpqi_init: fix boolean expression in pqi_device_remove_start (Don Brace) [1665565] - [scsi] scsi: smartpqi: call pqi_free_interrupts() in pqi_shutdown() (Don Brace) [1665565] - [scsi] scsi: smartpqi: fix build warnings (Don Brace) [1665565] - [scsi] scsi: smartpqi: update driver version (Don Brace) [1665565] - [scsi] scsi: smartpqi: add ofa support (Don Brace) [1665565] - [scsi] scsi: smartpqi: increase fw status register read timeout (Don Brace) [1665565] - [scsi] scsi: smartpqi: bump driver version (Don Brace) [1665565] - [scsi] scsi: smartpqi: add smp_utils support (Don Brace) [1665565] - [scsi] scsi: smartpqi: correct lun reset issues (Don Brace) [1665565] - [scsi] scsi: smartpqi: correct volume status (Don Brace) [1665565] - [scsi] scsi: smartpqi: do not offline disks for transient did no connect conditions (Don Brace) [1665565] - [scsi] scsi: smartpqi: allow for larger raid maps (Don Brace) [1665565] - [scsi] scsi: smartpqi: check for null device pointers (Don Brace) [1665565] - [scsi] scsi: smartpqi: enhance numa node detection (Don Brace) [1665565] - [scsi] scsi: smartpqi: wake up drives after os resumes from suspend (Don Brace) [1665565] - [scsi] scsi: smartpqi: fix disk name mount point (Don Brace) [1665565] - [scsi] scsi: smartpqi: add h3c ssid (Don Brace) [1665565] - [scsi] scsi: smartpqi: add sysfs attributes (Don Brace) [1665565] - [scsi] scsi: smartpqi: refactor sending controller raid requests (Don Brace) [1665565] - [scsi] scsi: smartpqi: turn off lun data caching for ptraid (Don Brace) [1665565] - [scsi] scsi: smartpqi: correct host serial num for ssa (Don Brace) [1665565] - [scsi] scsi: smartpqi: add no_write_same for logical volumes (Don Brace) [1665565] - [scsi] scsi: smartpqi: Add retries for device reset (Don Brace) [1665565] - [scsi] scsi: smartpqi: add support for PQI Config Table handshake (Don Brace) [1665565] - [scsi] scsi: smartpqi: fully convert to the generic DMA API (Don Brace) [1665565] - [net] rtnetlink: always put IFLA_LINK for links with a link-netnsid (Sabrina Dubroca) [1711933] - [net] ipv6: add inet6_fill_args (Ivan Vecera) [1711956] - [net] ipv4: add inet_fill_args (Ivan Vecera) [1711956] - [net] rtnetlink: s/IFLA_IF_NETNSID/IFLA_TARGET_NETNSID/g (Ivan Vecera) [1711956] - [include] if_link: add IFLA_TARGET_NETNSID alias (Ivan Vecera) [1711956] - [net] rtnetlink: move type calculation out of loop (Ivan Vecera) [1711956] - [net] ipv6: enable IFA_TARGET_NETNSID for RTM_GETADDR (Ivan Vecera) [1711956] - [net] ipv4: enable IFA_TARGET_NETNSID for RTM_GETADDR (Ivan Vecera) [1711956] - [include] if_addr: add IFA_TARGET_NETNSID (Ivan Vecera) [1711956] - [net] rtnetlink: add rtnl_get_net_ns_capable() (Ivan Vecera) [1711956] - [tools] selftests: forwarding: mirror_gre_vlan_bridge_1q: Fix untagged test (Hangbin Liu) [1710283] - [tools] selftests: forwarding: Tweak tc filters for mirror-to-gretap tests (Hangbin Liu) [1710283] - [tools] selftests: forwarding: lib: Avoid trapping soft devices (Hangbin Liu) [1710283] - [tools] selftests: pmtu: maximum MTU for vti4 is 2^16-1-20 (Hangbin Liu) [1704659] - [net] sched: red: inform offloads about harddrop setting (Ivan Vecera) [1710999] - [net] tls: fix copy to fragments in reencrypt (Ivan Vecera) [1710366] - [net] tls: don't copy negative amounts of data in reencrypt (Ivan Vecera) [1710366] - [net] tls: don't leak IV and record seq when offload fails (Ivan Vecera) [1710366] - [net] tls: avoid potential deadlock in tls_set_device_offload_rx() (Ivan Vecera) [1710366] - [net] tls: prevent bad memory access in tls_is_sk_tx_device_offloaded() (Ivan Vecera) [1710366] - [net] tls: Combined memory allocation for decryption request (Ivan Vecera) [1710366] - [net] tls: Skip zerocopy path for ITER_KVEC (Ivan Vecera) [1710366] - [net] tls: Fix copy-paste error in tls_device_reencrypt (Ivan Vecera) [1710366] - [net] tls: Add rx inline crypto offload (Ivan Vecera) [1710366] - [net] tls: Fill software context without allocation (Ivan Vecera) [1710366] - [net] tls: Split tls_sw_release_resources_rx (Ivan Vecera) [1710366] - [net] tls: Split decrypt_skb to two functions (Ivan Vecera) [1710366] - [net] tcp: Don't coalesce decrypted and encrypted SKBs (Ivan Vecera) [1710366] - [include] Add TLS rx resync NDO (Ivan Vecera) [1710366] - [net] Add TLS RX offload feature (Ivan Vecera) [1710366] - [net] Add decrypted field to skb (Ivan Vecera) [1710366] - [net] tls: Use aead_request_alloc/free for request alloc/free (Ivan Vecera) [1710366] - [net] tls: Refactor tls_offload variable names (Ivan Vecera) [1703389]- [netdrv] qede: use ethtool_rx_flow_rule() to remove duplicated parser code (Manish Chopra) [1663274] - [netdrv] qede: place ethtool_rx_flow_spec after code after TC flower codebase (Manish Chopra) [1663274] - [netdrv] drivers: net: use flow action infrastructure (Manish Chopra) [1663274] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Manish Chopra) [1663274] - [infiniband] RDMA: Cleanup undesired pd->uobject usage (Manish Chopra) [1663274] - [netdrv] qede: Populate mbi version in ethtool driver query data. (Manish Chopra) [1663274] - [netdrv] qed: Define new MF bit for no_vlan config (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "faspath" -> "fastpath" (Manish Chopra) [1663274] - [netdrv] qed: Fix the DORQ's attentions handling (Manish Chopra) [1663274] - [netdrv] qed: Fix missing DORQ attentions (Manish Chopra) [1663274] - [netdrv] qed: Fix the doorbell address sanity check (Manish Chopra) [1663274] - [netdrv] qed: Delete redundant doorbell recovery types (Manish Chopra) [1663274] - [netdrv] qede: fix write to free'd pointer error and double free of ptp (Manish Chopra) [1663274] - [netdrv] qede: Fix internal loopback failure with jumbo mtu configuration (Manish Chopra) [1663274] - [netdrv] qed: Read device port count from the shmem (Manish Chopra) [1663274] - [netdrv] qed: Fix iWARP syn packet mac address validation. (Manish Chopra) [1663274] - [netdrv] qed: Fix iWARP buffer size provided for syn packet processing. (Manish Chopra) [1663274] - [netdrv] qed: fix indentation issue with statements in an if-block (Manish Chopra) [1663274] - [netdrv] qede: Add ethtool interface for SmartAN query. (Manish Chopra) [1663274] - [netdrv] qed: Add API for SmartAN query. (Manish Chopra) [1663274] - [netdrv] qed*: Advance drivers version to 8.37.0.20 (Manish Chopra) [1663274] - [netdrv] qed: Change verbosity for coalescing message. (Manish Chopra) [1663274] - [netdrv] qede: Fix system crash on configuring channels. (Manish Chopra) [1663274] - [netdrv] qed: Consider TX tcs while deriving the max num_queues for PF. (Manish Chopra) [1663274] - [netdrv] qed: Assign UFP TC value to vlan priority in UFP mode. (Manish Chopra) [1663274] - [netdrv] qed: Fix EQ full firmware assert. (Manish Chopra) [1663274] - [netdrv] qed: Fix stack out of bounds bug (Manish Chopra) [1663274] - [netdrv] qed: Fix system crash in ll2 xmit (Manish Chopra) [1663274] - [netdrv] qed: Fix VF probe failure while FLR (Manish Chopra) [1663274] - [netdrv] qed: Fix LACP pdu drops for VFs (Manish Chopra) [1663274] - [netdrv] qed: Fix bug in tx promiscuous mode settings (Manish Chopra) [1663274] - [netdrv] qede: Error recovery process (Manish Chopra) [1663274] - [netdrv] qed: Add infrastructure for error detection and recovery (Manish Chopra) [1663274] - [netdrv] qed: Revise load sequence to avoid PCI errors (Manish Chopra) [1663274] - [netdrv] qed: Mark expected switch fall-through (Manish Chopra) [1663274] - [include] qed: remove duplicated include from qed_if.h (Manish Chopra) [1663274] - [infiniband] RDMA/qedr: Fix out of bounds index check in query pkey (Manish Chopra) [1663274] - [netdrv] qed: Fix qed_ll2_post_rx_buffer_notify_fw() by adding a write memory barrier (Manish Chopra) [1663274] - [include] qed: Fix qed_chain_set_prod() for PBL chains with non power of 2 page count (Manish Chopra) [1663274] - [infiniband] infiniband/qedr: Potential null ptr dereference of qp (Manish Chopra) [1663274] - [netdrv] qed: Fix an error code qed_ll2_start_xmit() (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "Dispalying" -> "Displaying" (Manish Chopra) [1663274] - [netdrv] qede: Register l2 queues with doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qed: Expose the doorbell overflow recovery mechanism to the protocol drivers (Manish Chopra) [1663274] - [netdrv] qed: Register light L2 queues with doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qed: Register slowpath queue doorbell with doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qed: Use the doorbell overflow recovery mechanism in case of doorbell overflow (Manish Chopra) [1663274] - [netdrv] qed: Add doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qede - Add a statistic for a case where driver drops tx packet due to memory allocation failure. (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "attnetion" -> "attention" (Manish Chopra) [1663274] - [netdrv] qed: Add support for MBI upgrade over MFW. (Manish Chopra) [1663274] - [netdrv] qede: Update link status only when interface is ready. (Manish Chopra) [1663274] - [netdrv] qede: Simplify the usage of qede-flags. (Manish Chopra) [1663274] - [netdrv] qed: Display port_id in the UFP debug messages. (Manish Chopra) [1663274] - [netdrv] qed: Fix QM getters to always return a valid pq (Manish Chopra) [1663274] - [netdrv] qed: Fix bitmap_weight() check (Manish Chopra) [1663274] - [netdrv] drivers/net/ethernet/qlogic/qed/qed_rdma.h: fix typo (Manish Chopra) [1663274] - [netdrv] qed: Fix reading wrong value in loop condition (Manish Chopra) [1663274] - [netdrv] qed: Fix rdma_info structure allocation (Manish Chopra) [1663274] - [netdrv] qed: Fix overriding offload_tc by protocols without APP TLV (Manish Chopra) [1663274] - [netdrv] qed: Fix PTT leak in qed_drain() (Manish Chopra) [1663274] - [netdrv] qed: Fix potential memory corruption (Manish Chopra) [1663274] - [netdrv] qed: Fix SPQ entries not returned to pool in error flows (Manish Chopra) [1663274] - [netdrv] qed: Fix blocking/unlimited SPQ entries leak (Manish Chopra) [1663274] - [netdrv] qed: Fix memory/entry leak in qed_init_sp_request() (Manish Chopra) [1663274] - [netdrv] qed: fix link config error handling (Manish Chopra) [1663274] - [netdrv] qed: Fix static checker warning (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "transcevier" -> "transceiver" (Manish Chopra) [1663274] - [netdrv] qed: Prevent link getting down in case of autoneg-off. (Manish Chopra) [1663274] - [netdrv] qede: Check available link modes before link set from ethtool. (Manish Chopra) [1663274] - [netdrv] qed: Add supported link and advertise link to display in ethtool. (Manish Chopra) [1663274] - [netdrv] qed: Added supported transceiver modes, speed capability and board config to HSI. (Manish Chopra) [1663274] - [netdrv] qed: Align local and global PTT to propagate through the APIs. (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "Ireelevant" -> "Irrelevant" (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_ooo_submit_tx_buffers (Manish Chopra) [1663274] - [infiniband] RDMA/qedr: Remove enumerated type qed_roce_ll2_tx_dest (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "b_cb_registred" -> "b_cb_registered" (Manish Chopra) [1663274] - [netdrv] qed: Remove set but not used variable 'p_archipelago' (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_iwarp_parse_rx_pkt (Manish Chopra) [1663274] - [netdrv] qed: Avoid constant logical operation warning in qed_vf_pf_acquire (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_roce_mode_to_flavor (Manish Chopra) [1663274] - [netdrv] qed: Fix mask parameter in qed_vf_prep_tunn_req_tlv (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_set_tunn_cls_info (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "toogle" -> "toggle" (Manish Chopra) [1663274] - [netdrv] net: qed: list usage cleanup (Manish Chopra) [1663274] - [netdrv] net: qede: Use FIELD_SIZEOF directly instead of reimplementing its function (Manish Chopra) [1663274] - [netdrv] qed: remove duplicated include from qed_cxt.c (Manish Chopra) [1663274] - [netdrv] qed*: Utilize FW 8.37.7.0 (Manish Chopra) [1663274] - [infiniband] RDMA/qedr: remove set but not used variable 'ctx' (Manish Chopra) [1663274] - [netdrv] qed: Lower the severity of a dcbx log message. (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "comparsion" -> "comparison" (Manish Chopra) [1663274] - [netdrv] net_sched: remove list_head from tc_action (Manish Chopra) [1663274] - [infiniband] qedr: Add user space support for SRQ (Manish Chopra) [1663274] - [infiniband] qedr: Add support for kernel mode SRQ's (Manish Chopra) [1663274] - [infiniband] qedr: Add wrapping generic structure for qpidr and adjust idr routines. (Manish Chopra) [1663274] - [netdrv] qed/qede: qede_setup_tc() can be static (Manish Chopra) [1663274] - [netdrv] qede: Ingress tc flower offload (drop action) support. (Manish Chopra) [1663274] - [netdrv] qede: Add destination ip based flow profile. (Manish Chopra) [1663274] - [netdrv] qed/qede: Multi CoS support. (Manish Chopra) [1663274] - [netdrv] qede: qede_fp: Mark expected switch fall-through (Manish Chopra) [1663274] - [netdrv] qed: qed_dev: Mark expected switch fall-throughs (Manish Chopra) [1663274] - [netdrv] qed: Add Multi-TC RoCE support (Manish Chopra) [1663274] - [netdrv] qed: Add DCBX API - qed_dcbx_get_priority_tc() (Manish Chopra) [1663274] - [netdrv] qed: Make some functions static (Manish Chopra) [1663274] - [netdrv] qed: remove redundant functions qed_get_cm_pq_idx_rl (Manish Chopra) [1663274] - [netdrv] qed: remove redundant functions qed_set_gft_event_id_cm_hdr (Manish Chopra) [1663274] - [netdrv] qede: Add driver callbacks for eeprom module query. (Manish Chopra) [1663274] - [netdrv] qed: Add qed APIs for PHY module query. (Manish Chopra) [1663274] - [netdrv] qed: remove redundant pointer 'name' (Manish Chopra) [1663274] - [iommu] iommu: Don't print warning when IOMMU driver only supports unmanaged domains (Jerry Snitselaar) [1707616 1694210 1689183] - [iommu] iommu/vt-d: Check capability before disabling protected memory (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: fix sg->dma_address for sg->offset bigger than PAGE_SIZE (Jerry Snitselaar) [1694210 1694029] - [iommu] iommu/amd: Fix NULL dereference bug in match_hid_uid (Jerry Snitselaar) [1677737 1694210] - [iommu] iommu/vt-d: Fix NULL pointer reference in intel_svm_bind_mm() (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Remove unnecessary WARN_ON() (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Check identity map for hot-added devices (Jerry Snitselaar) [1694210] - [iommu] iommu/dmar: Fix buffer overflow during PCI bus notification (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Fix memory leak in intel_iommu_put_resv_regions() (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: Fix amd_iommu=force_isolation (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Handle domain agaw being less than iommu agaw (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Use memunmap to free memremap (Jerry Snitselaar) [1694210] - [iommu] amd/iommu: Fix Guest Virtual APIC Log Tail Address Register (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Fix NULL pointer dereference in prq_event_thread() (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: Return devid as alias for ACPI HID devices (Jerry Snitselaar) [1694210] - [iommu] iommu/rockchip: Free irqs in shutdown handler (Jerry Snitselaar) [1694210] - [iommu] iommu/rockchip: Move irq request past pm_runtime_enable (Jerry Snitselaar) [1694210] - [iommu] iommu/rockchip: Handle errors returned from PM framework (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: make sure TLB to be flushed before IOVA freed (Jerry Snitselaar) [1694210] - [idle] intel_idle: Get rid of custom ICPU() macro (Alexander Beregalov) [1710976] - [security] selinux: do not report error on connect(AF_UNSPEC) (Ondrej Mosnacek) [1707828] - [security] selinux: Check address length before reading address family (Ondrej Mosnacek) [1707828] - [scsi] scsi: core: add new RDAC LENOVO/DE_Series device (Maurizio Lombardi) [1700912] - [infiniband] i40iw: Avoid panic when handling the inetdev event (Stefan Assmann) [1659180] - [infiniband] cross-tree: phase out dma_zalloc_coherent() (Stefan Assmann) [1659180] - [infiniband] infiniband: prefix header search paths with $(srctree)/ (Stefan Assmann) [1659180] - [infiniband] i40iw: remove use of VLAN_TAG_PRESENT (Stefan Assmann) [1659180] - [infiniband] RDMA/i40iw: Fix incorrect iterator type (Stefan Assmann) [1659180] - [infiniband] infiniband: i40iw, nes: don't use wall time for TCP sequence numbers (Stefan Assmann) [1659180] - [infiniband] i40iw: Reorganize acquire/release of locks in i40iw_manage_apbvt (Stefan Assmann) [1659180] - [netdrv] i40e: Changed maximum supported FW API version to 1.8 (Stefan Assmann) [1659174] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Stefan Assmann) [1659174] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Stefan Assmann) [1659174] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Stefan Assmann) [1659174] - [netdrv] drivers: net: remove inclusion when not needed (Stefan Assmann) [1659174] - [netdrv] i40e: Memory leak in i40e_config_iwarp_qvlist (Stefan Assmann) [1659162] - [netdrv] i40e: Fix of memory leak and integer truncation in i40e_virtchnl.c (Stefan Assmann) [1659162] - [netdrv] i40e: Use struct_size() in kzalloc() (Stefan Assmann) [1659162] - [netdrv] i40e: Revert ShadowRAM checksum calculation change (Stefan Assmann) [1659162] - [netdrv] i40e: missing input validation on VF message handling by the PF (Stefan Assmann) [1659162] - [netdrv] i40e: Add support for X710 B/P & SFP+ cards (Stefan Assmann) [1659162] - [netdrv] i40e: Wrong truncation from u16 to u8 (Stefan Assmann) [1659162] - [netdrv] i40e: add num_vectors checker in iwarp handler (Stefan Assmann) [1659162] - [netdrv] i40e: Fix the typo in adding 40GE KR4 mode (Stefan Assmann) [1659162] - [netdrv] i40e: Setting VF to VLAN 0 requires restart (Stefan Assmann) [1659162] - [netdrv] i40e: add new pci id for X710/XXV710 N3000 cards (Stefan Assmann) [1659162] - [netdrv] i40e: VF's promiscuous attribute is not kept (Stefan Assmann) [1659162] - [netdrv] i40e: Introduce recovery mode support (Stefan Assmann) [1659162] - [netdrv] i40e: print PCI vendor and device ID during probe (Stefan Assmann) [1659162] - [netdrv] i40e: fix misleading message about promisc setting on un-trusted VF (Stefan Assmann) [1659162] - [netdrv] i40e: update version number (Stefan Assmann) [1659162] - [netdrv] i40e: remove out-of-range comparisons in i40e_validate_cloud_filter (Stefan Assmann) [1659162] - [netdrv] i40e: Further implementation of LLDP (Stefan Assmann) [1659162] - [netdrv] i40e: Report advertised link modes on 40GBase_LR4, CR4 and fibre (Stefan Assmann) [1659162] - [netdrv] i40e: ShadowRAM checksum calculation change (Stefan Assmann) [1659162] - [netdrv] i40e: remove error msg when vf with port vlan tries to remove vlan 0 (Stefan Assmann) [1659162] - [netdrv] i40e: change behavior on PF in response to MDD event (Stefan Assmann) [1659162] - [netdrv] i40e: Fix for allowing too many MDD events on VF (Stefan Assmann) [1659162] - [netdrv] i40e: Fix misleading error message (Stefan Assmann) [1659162] - [netdrv] i40e: Able to add up to 16 MAC filters on an untrusted VF (Stefan Assmann) [1659162] - [netdrv] i40e: Report advertised link modes on 40GBASE_SR4 (Stefan Assmann) [1659162] - [netdrv] i40e: The driver now prints the API version in error message (Stefan Assmann) [1659162] - [netdrv] i40e: Changed maximum supported FW API version to 1.8 (Stefan Assmann) [1659162] - [netdrv] i40e: Remove misleading messages for untrusted VF (Stefan Assmann) [1659162] - [netdrv] i40e: Update i40e_init_dcb to return correct error (Stefan Assmann) [1659162] - [netdrv] i40e: Fix for 10G ports LED not blinking (Stefan Assmann) [1659162] - [netdrv] i40e: save PTP time before a device reset (Stefan Assmann) [1659162] - [netdrv] i40e: don't allow changes to HW VLAN stripping on active port VLANs (Stefan Assmann) [1659162] - [netdrv] i40e: Implement DDP support in i40e driver (Stefan Assmann) [1659162] - [netdrv] i40e: Queues are reserved despite "Invalid argument" error (Stefan Assmann) [1659162] - [netdrv] i40e: add tracking of AF_XDP ZC state for each queue pair (Stefan Assmann) [1659162] - [netdrv] i40e: move i40e_xsk_umem function (Stefan Assmann) [1659162] - [netdrv] i40e: fix WoL support check (Stefan Assmann) [1659162] - [netdrv] i40e: fix i40e_ptp_adjtime when given a negative delta (Stefan Assmann) [1659162] - [netdrv] i40e: fix XDP_REDIRECT/XDP xmit ring cleanup race (Stefan Assmann) [1659162] - [netdrv] i40e: fix potential RX buffer starvation for AF_XDP (Stefan Assmann) [1659162] - [netdrv] net: bpf: remove XDP_QUERY_XSK_UMEM enumerator (Stefan Assmann) [1659162] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Stefan Assmann) [1659162] - [netdrv] i40e: clean up several indentation issues (Stefan Assmann) [1659162] - [netdrv] i40e: increase indentation (Stefan Assmann) [1659162] - [netdrv] i40e: update version number (Stefan Assmann) [1659162] - [netdrv] i40e: remove debugfs tx_timeout support (Stefan Assmann) [1659162] - [netdrv] i40e: check queue pairs num in config queues handler (Stefan Assmann) [1659162] - [netdrv] i40e: Change unmatched function types (Stefan Assmann) [1659162] - [netdrv] i40e: Add support FEC configuration for Fortville 25G (Stefan Assmann) [1659162] - [netdrv] i40e: Limiting RSS queues to CPUs (Stefan Assmann) [1659162] - [netdrv] i40e: Remove umem from VSI (Stefan Assmann) [1659162] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Stefan Assmann) [1659162] - [netdrv] i40e: extend PTP gettime function to read system clock (Stefan Assmann) [1659162] - [netdrv] i40e: DRY rx_ptype handling code (Stefan Assmann) [1659162] - [netdrv] i40e: fix kerneldoc for xsk methods (Stefan Assmann) [1659162] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Stefan Assmann) [1659162] - [netdrv] i40e: suppress bogus error message (Stefan Assmann) [1659162] - [netdrv] i40e: Allow disabling FW LLDP on X722 devices (Stefan Assmann) [1659162] - [netdrv] i40e: update driver version (Stefan Assmann) [1659162] - [netdrv] i40e: Protect access to VF control methods (Stefan Assmann) [1659162] - [netdrv] i40e: Replace strncpy with strlcpy to ensure null termination (Stefan Assmann) [1659162] - [netdrv] i40e: Add capability flag for stopping FW LLDP (Stefan Assmann) [1659162] - [netdrv] i40e: Use a local variable for readability (Stefan Assmann) [1659162] - [netdrv] i40e: Replace spin_is_locked() with lockdep (Stefan Assmann) [1659162] - [netdrv] i40e/ixgbe/igb: fail on new WoL flag setting WAKE_MAGICSECURE (Stefan Assmann) [1659162] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Stefan Assmann) [1659162] - [netdrv] drivers: net: remove inclusion when not needed (Stefan Assmann) [1659162] - [netdrv] i40e: Remove unnecessary print statement (Stefan Assmann) [1659162] - [netdrv] i40e: Use proper enum in i40e_ndo_set_vf_link_state (Stefan Assmann) [1659162] - [nvme] nvmet: ignore EOPNOTSUPP for discard (Ewan Milne) [1696369] - [tools] tools: bpftool: fix potential NULL pointer dereference in do_load (Ivan Vecera) [1708560] - [tools] tools lib bpf: Provide wrapper for strerror_r to build in !_GNU_SOURCE systems (Ivan Vecera) [1708560] - [tools] libbpf: Remove the duplicate checking of function storage (Ivan Vecera) [1708560] - [tools] bpf: fix build error in libbpf with EXTRA_CFLAGS="-Wp, -D_FORTIFY_SOURCE=2 -O2" (Ivan Vecera) [1708560] - [tools] tools: include reallocarray feature test in FEATURE_TESTS_BASIC (Ivan Vecera) [1708560] - [tools] tools: bpftool: allow reuse of maps with bpftool prog load (Ivan Vecera) [1708560] - [tools] tools: libbpf: allow map reuse (Ivan Vecera) [1708560] - [tools] tools: bpf: make use of reallocarray (Ivan Vecera) [1708560] - [tools] tools: libbpf: move library error code into a separate file (Ivan Vecera) [1708560] - [tools] tools: bpftool: reimplement bpf_prog_load() for prog load (Ivan Vecera) [1708560] - [tools] tools: libbpf: add extended attributes version of bpf_object__open() (Ivan Vecera) [1708560] - [tools] tools: libbpf: recognize offload neutral maps (Ivan Vecera) [1708560] - [tools] tools: bpftool: allow users to specify program type for prog load (Ivan Vecera) [1708560] - [tools] tools: libbpf: expose the prog type guessing from section name logic (Ivan Vecera) [1708560] - [tools] tools: bpftool: add support for loading programs for offload (Ivan Vecera) [1708560] - [tools] tools: bpftool: refactor argument parsing for prog load (Ivan Vecera) [1708560] - [tools] selftests/bpf: add Error: prefix in check_extack helper (Ivan Vecera) [1708560] - [tools] selftests/bpf: remove duplicated word from test offloads (Ivan Vecera) [1708560] - [tools] tools: bpftool: deal with options upfront (Ivan Vecera) [1708560] - [tools] tools: bpftool: add missing --bpffs to completions (Ivan Vecera) [1708560] - [tools] tools: bpftool: drop unnecessary Author comments (Ivan Vecera) [1708560] - [tools] tools: libbpf: don't return '.text' as a program for multi-function programs (Ivan Vecera) [1708560] - [tools] tools: libbpf: restore the ability to load programs from .text section (Ivan Vecera) [1708560] - [tools] tools: libbpf: allow setting ifindex for programs and maps (Ivan Vecera) [1708560] - [tools] tools: libbpf: add section names for missing program types (Ivan Vecera) [1708560] - [tools] tools: bpftool: use correct make variable type to improve compilation time (Ivan Vecera) [1708560] - [scsi] scsi: lpfc: nvme: avoid hang / use-after-free when destroying localport (Dick Kennedy) [1588024]- [xen] ALSA: xen: Introduce shared buffer helpers for page directory... (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Initialize completion for defer messages (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: constify snd_soc_dai_ops structures (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: Remove duplicate assignment (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: Fix uninitialized adev deref (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: Add pre/post bank switch ops (Jaroslav Kysela) [1683051] - [include] ALSA: soundwire: keep track of Masters in a stream (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Add support for multi link bank switch (Jaroslav Kysela) [1683051] - [include] ALSA: soundwire: Handle multiple master instances in a stream (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Add support to lock across bus instances (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Fix acquiring bus lock twice during master release (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Fix incorrect exit after configuring stream (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Fix duplicate stream state assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix for Lenovo B50-70 inverted internal microphone bug (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix race between creating and refreshing sysfs entries (Jaroslav Kysela) [1683051] - [include] ALSA: ASoC: uapi: fix sound/skl-tplg-interface.h userspace compilation errors (Jaroslav Kysela) [1683051] - [include] ALSA: uapi: #include in asound.h (Jaroslav Kysela) [1683051] - [include] ALSA: timer: fix wrong comment to refer to 'SNDRV_TIMER_PSFLG_*' (Jaroslav Kysela) [1683051] - [sound] ALSA: x86/cpu: Sanitize FAM6_ATOM naming (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: don't select DPCM via simple-audio-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: don't select DPCM via audio-graph-card (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Corrected fixup for System76 Gazelle (gaze14) (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Avoid superfluous COEF EAPD setups (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixup headphone noise via runtime suspend (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Fix unused variable warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: toneport: Fix broken usage of timer for delayed execution (Jaroslav Kysela) [1683051] - [sound] ALSA: aica: Fix a long-time build breakage (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support low power consumption for ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: update pcm hardware constraints (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codec: hdac_hdmi: no checking monitor in hw_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: save PGA for mixer control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: save output volume for mixer controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: initialize setting when ramping volume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: core: fix undefined nocodec reference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: xtensa: fix undefined references (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Propagate sof_get_ctrl_copy_params() error properly (Jaroslav Kysela) [1683051] - [sound] ALSA: hdea/realtek - Headset fixup for System76 Gazelle (gaze14) (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: add CometLake PCI IDs (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support low power consumption for ALC295 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: Fix an uninitialized variable compile warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Fix a compile warning with CONFIG_PCI=n (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Fix a compile warning at CONFIG_COMMON_CLK=n (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sound/soc/sof/: fix kconfig dependency warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: spdifrx: change trace level on iec control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: spdifrx: update pcm hardware constraints (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98090: Fix restore of DAPM Muxes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: RT5677-SPI: Disable 16Bit SPI Transfers (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Consider eld_valid when reporting jack event (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Read the pin sense from register when repolling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add reserved DMA memory support (Jaroslav Kysela) [1683051] - [sound] ALSA: synth: emux: soundfont.c: divide by zero in calc_gus_envelope_time() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: Map BTN_0 to KEY_PLAYPAUSE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: add sof-rt5682 machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_generic:refine code style (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_generic: add DMIC support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: CNL: add ipc dump function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: APL: add ipc dump function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: IPC: add ipc dump function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: intel: hda: add hw_params_upon_resume flag for hda stream (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: handle real stream interrupts only (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: store stream capabilities (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: simplify handling of IPC IRQ (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: ipc: use snd_sof_pcm_period_elapsed (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: use snd_sof_pcm_period_elapsed (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: PCM: add period_elapsed work to fix race condition in interrupt context (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-pcm: remove useless dependency on hdac_ext (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: set bus->idx as 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: set I2S slave before enabling DSP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: add SSP info to the chip info struct (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: add the SSP Host Device memory space (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: cnl: add pointer ops to use DPIB position (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: topology: add support for stricter ABI checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASOC: SOF: ipc: add support for stricter ABI checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: add Kconfig option for strict ABI checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: avoid Oops if DMA setup fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: stream is already locked in hw_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: remove redundant null checks of dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: skip hw_free on codec dai for which the stream is invalid (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix valid stream condition (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: unlock the device on startup errors (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Update the support rate list (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Use clk_round_rate to handle enabled bclk/wclk case (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: Headphone Jack sense inverts on the LattePanda board (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: Fix missing break in switch statement (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct region base typo in wm_halo_setup_algs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: fix spelling mistake "incompatble" -> "incompatible" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Use DSP ops pointers to stop watchdog in error handlers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix to use list_for_each_entry_safe() when delete items (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix return value check in sprd_mcdt_probe() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7213: fix DAI_CLK_EN register bit overwrite (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: fix kcontrols for effect widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_audmix: cache pdev->dev pointer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Fix potential uninitialized variable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: add I2S2 control path from UL2 and UL3 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: change supported formats of DL2 and UL1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_audmix: remove "model" attribute (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-audmix: fix object reference leaks in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs43130: fix a NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: fix a NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add Geminilake Realtek+Maxim machine driver entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Make boards more available for compile test (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_dma: Fix invalid license ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_psc_i2s: Fix invalid license ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel: tse850: Make some functions static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx: fix fiq dependencies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: acp3x: Make acp3x_dai_i2s_ops static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Remove set but not used variable 'mclk_rate' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_micfil: Remove set but not used variable 'osr' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: Enable TDM support for DSP_A/B modes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Configure wclk and bclk of master codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix build err while CONFIG_I2C set to module (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix spelling mistake "plalform" -> "platform" (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Apply the fixup for ASUS Q325UAR (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Register irq handler after the chip initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: usx2y: fix a double free bug (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hda: overwrite hdev type to HDA_DEV_ASOC (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: fix unregister device twice on ASoC driver (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: use dynamic buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix a memory leak bug (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: fix misuse of x (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - EAPD turn on later (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed Dell AIO speaker noise (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: select relevant machine drivers for SOF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Make sure BDW based machine drivers build for SOF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Build support for SOF core and Intel drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Kconfig: expose common option between SST and SOF drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add platform differentiation for APL and CNL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: add SKL+ platform DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add support for HDAudio codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA trace operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA stream operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add hda-bus support and initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA PCM operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA firmware loader (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add PCI device support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add ACPI device support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA IPC mechanisms. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA DSP HW operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add HDA controller for Intel DSP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add APL/CNL HW DSP support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add legacy IPC support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add BDW HW DSP support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add BYT, CHT and BSW DSP HW support. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add utils (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add xtensa support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Nocodec machine driver support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add PM support (Jaroslav Kysela) [1683051] - [include] ALSA: ASoC: SOF: Add userspace ABI support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add firmware loader support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add DSP HW abstraction operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add DSP firmware logger support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add support for loading topologies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add PCM operations support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add support for IPC IO between DSP and Host (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add driver debug support. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Sound Open Firmware KControl support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Sound Open Firmware driver core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: simplify dai driver initialisation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Read pin switches conf from devicetree (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Add missing return 0 in remove() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: add asoc_simple_parse_pin_switches() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd fix irq mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: align quirk override handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: align quirk override handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: fix compilation warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Add support for runtime pm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Update is_slave_mode with correct value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add Spreadtrum multi-channel data transfer support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: rt5682: initialize mutex before using (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: return the get_irq error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup 6ch settings to 8ch (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Handle the error from snd_usb_mixer_apply_create_quirk() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add new Dell platform for headset mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codec: hdac_hdmi add device_link to card device (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: Remove set but not used variable 'stage_type' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: save fixed-up hw_params of BE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: tobermory: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: tm2_wm5110: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: speyside: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: spdif: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: snow: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smdk_wm8994*: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smdk_wm8580: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smdk_spdif: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smartq_wm8987: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c24xx_uda134x: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c24xx_simtec*: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c2412-i2s: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: rx1950_uda1380: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c24xx-i2s: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c-i2s-v2: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: pcm: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: lowland: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: littlemill: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: jive_wm8750: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: idma: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: h1940_uda1380: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: dmaengine: Convert to SPDX License Indentifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: bells: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: arndale: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ps3: Remove set but not used variables 'start_vaddr' and 'pcm_index' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - add two more pin configuration sets to quirk table (Jaroslav Kysela) [1683051] - [sound] ALSA: core: Don't refer to snd_cards array directly (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Drop superfluous id-uniquification behavior (Jaroslav Kysela) [1683051] - [sound] ALSA: core: Fix card races between register and disconnect (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Fix racy addition/deletion of nodes (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Correct unlock sequence at snd_seq_client_ioctl_unlock() (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add quirk for Focusrite Scarlett Solo (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Initialize ext-bus-specific fields in snd_hdac_bus_init(), too (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Initialize power_state field properly (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Protect racy pool manipulation from OSS sequencer (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Simplify snd_seq_kernel_client_enqueue() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Cover unsubscribe_port() in list_mutex (Jaroslav Kysela) [1683051] - [sound] ALSA: Revert "ALSA: seq: Protect in-kernel ioctl calls with mutex" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix missing regmap requirement (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix racy display power access (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: fix error handling when try_module_get() fails. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix master clock management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl: fix wrong number of channels (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Coding style fixes (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Simplify error path in snd_timer_open() (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix race of get-subscription call vs port-delete ioctls (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Protect in-kernel ioctl calls with mutex (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Remove superfluous irqsave flags (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Align temporary re-locking with irqsave version (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Use kvmalloc() for cell pools (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Revert active callback sync check at close (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add two more machines to the power_save_blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Fix spacing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: remove headset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: update module refcount if module_get_upon_open is set (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: conditionally increase module refcount on component open (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add quirk for the Teclast X98+ II (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add quirk for inverted jack detect (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm1133-ev1: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: phycore-ac97: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm030-audio-fabric: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: p1022_rdk: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: p1022_ds: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mx27vis-aic32x4: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc8610_hpcd: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_psc_i2s: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_psc_ac97: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_dma: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-ssi: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-spdif: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-pcm-fiq: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-mc13783: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-es8328: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-audmux: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl-dma: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: eukrea-tlv320: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-pcm: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: fix sai driver name initialisation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Use the correct dobj to free enum control values and texts (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix OOB-reads from strlcpy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: change mic bias DAPM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: Support synchronous mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix big-endian check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix endianness issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-tdmout: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: rework quirks settings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-frddr: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-toddr: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-fifo: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: remove link components before cleaning up card resources (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skylake: add remove() callback for component driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l35: Disable regulators on driver removal (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add adc volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add support of master mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add reset management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add regulator management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Avoid calling snd_compr_stop_error from WDT expiry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98357a: add missing supported rates (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Add Playback PowerTune Controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Add Switch for Setting Common Mode Voltage (Jaroslav Kysela) [1683051] - [sound] ALSA: xen-front: Do not use stream buffer size before it is set (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: Mark RXFIFO_DATA as volatile and precious (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix spelling mistake "faied" -> "failed" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: Correct PDM_CTRL0 reg value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: adjust waterlevel in frame unit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: add compatible for rk1808 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: fixup pdm fractional div (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: optimize clear logic (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: add default regs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: using left justified store mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: change dma burst to 8 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: fix regmap_ops hang issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Update copyright and use SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix the smatch warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Change author's name (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add quirk for Tuxedo XC 1509 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Move to ACT_INIT state (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix modular build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090_ti: Enable codec clock once and keep it enabled (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix build error in mt8183_da7219_max98357_dev_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: TS3A227: fix build error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Make use of local variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Remove redundant NULL check in wm_adsp_buffer_free (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: aic31xx_set_jack() can be static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Check for buffer in trigger stop (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer TravelMate B114-21 with ALC233 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: eukrea-tlv320: fix a leaked reference by adding missing of_node_put (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_utils: fix a leaked reference by adding missing of_node_put (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: fix a leaked reference by adding missing of_node_put (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Align tplg pointer increment across all kcontrols (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: support driver alias names for FE topology overrides (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add Spreadtrum audio compress offload support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix SND_SOC_LOCHNAGAR_SC kconfig warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: set power_check callback for widgets that shouldnt be always on (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add button press detection (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add headphone/headset detection (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: skip missing substream while applying symmetry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_da7213: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [acpi] ALSA: ACPI / utils: Introduce acpi_dev_get_first_match_dev() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: remove set but not used variable 'dai_name' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: Add support for inverted jack detect (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Fix typo in comment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: fix spelling mistake: "missign" -> "missing" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Add machine driver with DA7219 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Add machine driver with TS3A227 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677-spi: Add ACPI ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add multi endpoint support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Fix Common Pins (Jaroslav Kysela) [1683051] - [sound] ALSA: us122l: Use alloc_pages_exact() (Jaroslav Kysela) [1683051] - [sound] ALSA: Replace snd_malloc_pages() and snd_free_pages() with standard helpers, take#2 (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Make snd_timer_close() really kill pending actions (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Check ack_list emptiness instead of bit flag (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Make sure to clear pending ack list (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Unify timer callback process code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_audmix: Fix kbuild failure (Jaroslav Kysela) [1683051] - [sound] ALSA: emux: Add support of loading GUS-patch (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix speakers on Acer Predator Helios 500 Ryzen laptops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Add Audio Mixer machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Add Audio Mixer CPU DAI driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: enable S24_LE format support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Only enable with common clock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Allow 192000 Sample Rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Remove mclk references (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Restructure set_dai_sysclk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Dynamically Determine Clocking (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Move aosr and dosr setting to separate functions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Control clock gating with CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model BDIV divider in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model DAC/ADC dividers in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model CODEC_CLKIN in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model PLL in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Initialize private_value in snd_soc_dapm_new_dai (Jaroslav Kysela) [1683051] - [sound] ALSA: aloop: Support S24 sample formats (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Don't suspend stream in unrecoverable PCM state (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix NULL pointer dereference in snd_soc_dapm_free_kcontrol (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sirf-audio: Remove redundant of_match_node call (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix incorrect extern (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: fix the issue of 64 bits division (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: Fix crash at suspend/resume after failed codec registration (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Simplify alt firmware loading code (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix possible OOB access in PCM oss plugins (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of ASUS X430UN and X512DK with ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset mic of ASUS P5440FF with ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable ASUS X441MB and X705FD headset MIC with ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: test memory allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: lochnagar: Add driver to support Lochnagar 2 sound card (Jaroslav Kysela) [1683051] - [mfd] ALSA: mfd: lochnagar: Add support for the Cirrus Logic Lochnagar (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Properly Set Processing Blocks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mchp-i2s-mcc: add driver for I2SC Multi-Channel Controller (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: rename asoc_simple_card_xxx() to asoc_simple_() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: separate asoc_simple_card_parse_dai() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_card_init_priv() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_be_hw_params_fixup() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_dai_init() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_hw_param() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_shutdown() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_startup() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple_card_utils: share common priv for simple-card/audio-graph (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: add asoc_simple_debug_info() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Update DA7219 DAI clock name to align with codec updates (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Expose BCLK and WCLK control through CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: fix channel swap issue when stream starts (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_asrc: add constraint for the asrc of older version (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4270: Set auto-increment bit for register writes (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support for Acer Aspire E5-523G/ES1-432 headset mic (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer Aspire Z24-890 with ALC286 (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: oss: Fix Spectre v1 vulnerability (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Fix potential Spectre v1 vulnerability (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer AIO with ALC286 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: dfsdm: add mmap support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: dfsdm: fix debugfs warnings on entry creation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: dfsdm: manage multiple prepare (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct some minor issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Don't use register read to determine slave/master mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Break out clock setting into separate function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: jz4740: Depend on MIPS instead of MACH_JZ4740 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add WDT expiry IRQ handling support for Halo core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add HALO MPU fault logging (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add support for new Halo core DSPs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: Reduce repititive code on mtk_regmap_update_bits. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: Fix UBSAN warning. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out DSP specific operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out parsing of firmware ID header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Refactor firmware status reading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Move wm_adsp2_set_dspclk to CODEC drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Don't export wm_adsp2_lock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Shutdown any compressed streams on DSP watchdog timeout (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add locking to wm_adsp2_bus_error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct handling of compressed streams that restart (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: free link string in error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: free stream_name of dai_drv (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Don't trigger jackpoll_work in azx_resume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph: add graph_parse_mclk_fs() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph: rename graph_get_conversion() to graph_parse_convert() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add simple_parse_mclk_fs() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: rename simple_get_conversion() to simple_parse_convert() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: recording has no sound after booting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: fix jack type detection issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Check JD status when system resume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt8183: skip for i2s5 in mck_disable (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: use 8 byte header for IR context to get isochronous cycle (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add support MOTU 8pre FireWire (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: fix mismatch between snd_opl3_drum_switch definition and declaration (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - add Lenovo IdeaCentre B550 to the power_save_blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add BYT_RT5651_JD_NOT_INV quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add support for active-high jack detect (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: spdifrx: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifier: Make gpio property optional (Jaroslav Kysela) [1683051] - [documentation] ALSA: ASoC: dt-bindings: add regulator property to simple amplifier (Jaroslav Kysela) [1683051] - [documentation] ALSA: ASoC: simple-amplifier: remame dio2125 documentation (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: use 'version' field of unit directory to identify model (Jaroslav Kysela) [1683051] - [sound] ALSA: sb8: add a check for request_region (Jaroslav Kysela) [1683051] - [sound] ALSA: echoaudio: add a check for ioremap_nocache (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: create tlv before soc_tplg_init_kcontrol (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support headset mode for New DELL WYSE NB (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support headset mode for DELL WYSE AIO (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: merge alc_fixup_headset_jack to alc295_fixup_chromebook (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: hdmi - add Icelake support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: automatic selecting BCLK in I2S master mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: fix the typo of function name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Fix clock configuration for 44100 sample rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: fix the issue of widget with prefixed name (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - add more quirks for HP Z2 G4 and HP Z240 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed Headset Mic JD not stable (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer TravelMate X514-51T with ALC255 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: avoid build error without CONFIG_PM (Jaroslav Kysela) [1683051] - [sound] ALSA: usx2y: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Avoid NULL pointer dereference at snd_hdac_stream_start() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: axi-i2s: let both capture and playback be optional (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: src: Avoid a potential deadlock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix registers declaration in regmap (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8824: fix the issue of the widget with prefix name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: prevent snd_soc_dpcm use after free (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC:intel:skl:fix a simultaneous playback & capture issue on hda platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC:hdac_hda:use correct format to setup hda codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC:soc-pcm:fix a codec fixup issue in TDM case (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: fix davinci_mcasp_probe dependencies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ams-delta: remove duplicate 'const' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: remove compat dma probing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: use default dai name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: improve channel capabilities handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: change trigger traces (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: add i2c dependency for SND_SOC_SDM845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Fix clang warning without CONFIG_PM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: src: fix compiler warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix DAPM routes for capture stream (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: Fix probe deferral following prelink failure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: avoid limiting params->msbits in hw_params() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix set_sync service (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix oversampling mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix race condition in irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix exposed capabilities in spdif mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix iec958 controls indexation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ab8500: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix S/PDIF DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add quirk for MOTU MicroBook II (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd add loopback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic3x: fix reset gpio reference counting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: skip useless write in slave mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix race condition in irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: remove useless callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix dma configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix stream count management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix 16 bit format support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix IRQ clearing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Kconfig: fix dependency for sdm845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Add Maxim98373 support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: gen: fix SSI9 4/5/6/7 busif related register address (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: fix construction of PCM frame for capture direction (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: use more identical mod_alias for Saffire Pro 10 I/O against Liquid Saffire 56 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Extend i915 component bind timeout (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Improve logging messages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add support for multiple compressed buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Refactor compress stream initialisation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Reorder some functions for improved clarity (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out stripping padding from ADSP data (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Fix an IS_ERR() vs NULL checking bug (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: sound card name from device tree (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX362FA with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Prevent uninitialized variable use (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Fix of-node refcount unbalance in qcom_snd_parse_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Fix of-node refcount unbalance in apq8016_sbc_parse_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Fix of_node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Reduce click noise on Dell Precision 5820 headphone (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Fix of-node refcount unbalance in DAI-link parser (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Fix of-node refcount unbalance in fsl_ssi_probe_from_dt() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Allow compressed buffers in any memory region (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Update cached error state on trigger (Jaroslav Kysela) [1683051] - [sound] ALSA: ppc: Fix of-node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Fix of-node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: Fix of-node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: pcm186x: Fix energysense SLEEP bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: pcm186x: fix wrong usage of DECLARE_TLV_DB_SCALE() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix multiple "IIS multi" devices initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix secondary platform device unregistration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: glk: Add DAI links for Multi-Playback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Add Geminilake Dialog Maxim machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Headset button support in broxton machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: Rename hpvcc regulator supply to cpvdd (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau1977: Add support for setting MICBIAS via DT (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Potential small memory leak in dapm_cnew_widget() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Add missing DAPM routes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8741: Make function 'wm8741_mute' static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: fix register setting issue in RIGHT_J mode (Jaroslav Kysela) [1683051] - [sound] ALSA: SoC: imx-sgtl5000: add missing put_device() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Fix missing of_node_put() at simple_dai_link_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Fix refcount underflow (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Ensure proper sample rate on pri/sec PCM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: remove set but not used variables 'mask, cr1' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: free created components in tplg load error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Make some symbols static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Kconfig: select dmic for sdm845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: fix sysclk_df type (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: fix TXCLK_DF mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Add support to disable on-chip PLL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Add runtime support for DSP_A and I2S modes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Fix frame polarity for DSP_A format (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Set constraint to always have 32 sample bits (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Remove capture support for codecs without ADC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsi: fix spelling mistake "doens't" -> "doesn't" (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Expose sample resolution through proc interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Prevent potential NULL platform data dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Remove unused SND_DMAENGINE_PCM_FLAG_CUSTOM_CHANNEL_NAME flag (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Update TDM usage to be more flexible (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Add support for master mode BCLK rate adjustment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Convert to SPDX License Indentifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Comments clean up (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Change indentation in SAMSUNG_I2S_FMTS definition (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Simplify pri_dai, sec_dai pointers usage (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: add missing put_device() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: Specify DMA channel names through custom DMA config (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Add support for secondary CPU DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Get rid of a static spinlock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move quirks data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move IP variant data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Drop spinlock pointer from i2s_dai data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move SFR pointer to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: es1688: Remove set but not used variable 'hw' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Disable PC beep in passthrough on alc285 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Headset microphone and internal speaker support for System76 oryp5 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cros_ec_codec: Make symbol 'cros_ec_dai' static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt8183: make some functions static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Remove unused including (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move registers cache to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move opclk data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move core clk to the driver common data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Add widgets and routes for DPCM support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move clk supplier data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Restore support for the secondary PCM (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Comment why read blocks when PCM is not running (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: remove new_mach_data field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: cnl-match.c: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: icl-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: hsw-bdw-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: glk-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: cht-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: byt-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: bxt-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: icl-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hsw-bdw-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hda-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: glk-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cnl-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: byt-match.c: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Convert to single component with multiple DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: dmaengine: Allow to specify custom DMA device (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Extend use of chan_names provided in custom DMA config (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Improve of_node test in dmaengine_pcm_request_chan_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix prescaler setting for the secondary DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Use __printf markup to silence compiler (Jaroslav Kysela) [1683051] - [sound] ALSA: tlv320aic32x4: delay i2c access by 1 ms after hardware reset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd fix rx stream assign (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8741: Set OSR mode in hw_params() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8741: Add digital mute callback (Jaroslav Kysela) [1683051] - [sound] ALSA: PCM: check if ops are defined before suspending PCM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: use devm_kzalloc for all structures (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: use pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add clock select (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add soft reset on probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: set .ignore_module_refcount field in component (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: don't increase component module refcount unconditionally (Jaroslav Kysela) [1683051] - [sound] ALSA: gpiolib: acpi: Introduce ACPI_GPIO_QUIRK_ONLY_GPIOIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-digital: convert license header to SPDX (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-analog: add missing license information (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: regulator notifier registration should be managed (Jaroslav Kysela) [1683051] - [sound] ALSA: i915/snd_hdac: I915 subcomponent for the snd_hdac (Jaroslav Kysela) [1683051] - [base] ALSA: components: multiple components for a device (Jaroslav Kysela) [1683051] - [documentation] ALSA: component: Add documentation (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Revert capture stream behavior change in blocking mode (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix function name in kernel-doc comment (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Define snd_pcm_lib_preallocate_*() as returning void (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: fix up for snd_pcm_lib_preallocate_pages_for_all() API change (Jaroslav Kysela) [1683051] - [sound] ALSA: SoC: stm32: i2s: manage clock power (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4725b: Remove unnecessary const qualifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Add support for Cirrus CS35L36 Amplifier (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix implicit fb endpoint setup by quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add quirk for HP EliteBook 840 G5 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4725b: Use C++ style comments in header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: Kconfig: Show knob, and depend on MIPS || COMPILE_TEST (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4740: Add support for devicetree (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4740: Use SPDX license notifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: Prevent clk_get_rate() calls in atomic context (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Line Playback Volume, Line Boost Volume, Line Right, Line Left, Line Playback Switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add FM Playback Volume, FM Left, FM Right, FM Playback Switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Mic1 Playback Switch, Mic2 Playback Switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Merge sun4i_codec_left_mixer_controls and sun4i_codec_right_mixer_controls into sun4i_codec_mixer_controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Mic1 Boost Volume, Mic2 Boost Volume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add sun7i_codec_controls, sun7i_codec_codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Mic Playback Volume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add MIC2 Pre-Amplifier, Mic2 input (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4725b: fix spelling mistake "Deemphatize" -> "Deemphasize" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: fix semicolon.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssiu: correct shift bit for ssiu9 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: Add jz4725b-codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup rsnd_ssi_master_clk_start() user count check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: harden use of lookup tables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xtensa: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: txx9: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dwc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: fix out-of-bounds accesses to DAPM lookup tables (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: Clean up proc file creations (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Move card id proc creation into info.c (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Minor optimization (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Drop unused snd_info_entry.card field (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: pcmcia: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: i2c: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: drivers: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Add standard helpers for card proc file entries (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: emux: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: opl4: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ssm2602: switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: compress: Add helper functions for component trigger/set_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: compress: Clarify the intent of current compressed ops handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: remove some unnecessary NULL checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ssm2602: Fix ADC powerup sequencing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Check for NULL widget in dapm_update_dai_unlocked (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: spi: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: sh: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ppc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: parisc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: atmel: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix build error without CONFIG_PCI (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: Fix stop handling on compressed capture streams (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add support for new T+A USB DAC (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Always register entries recursively (Jaroslav Kysela) [1683051] - [sound] ALSA: core: Don't allow NULL device for memory allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4118: fix missing header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd: fix spelling mistake "offest" -> "offset" (Jaroslav Kysela) [1683051] - [sound] ALSA: arm: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: unload physical dai link in remove (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: add SND_SOC_DOBJ_GRAPH type for dapm routes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: clear platform pointers on error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl-asoc-card: fix object reference leaks in fsl_asoc_card_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add warnings for widget overwrite when adding route (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Only power up active channels from a DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix oops/use-after-free case with dai driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: fix use-after-free issue with dailink sname (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: add btcvsd driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: arizona: Add channel numbers to AIFs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup TDM Split mode check for CTU (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: synchronize connection check for simple-card/audio-graph (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup MIX kctrl registration (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: mips: pass struct device to DMA API functions (Jaroslav Kysela) [1683051] - [sound] ALSA: hal2: pass struct device to DMA API functions (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Serialize codec registrations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use a common helper for hp pin reference (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix lose hp_pins for disable auto mute (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Headset microphone support for System76 darp5 (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: remove a superfluous function declaration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add Spreadtrum audio DMA platfrom driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: modify dapm route loading routine and add dapm route unloading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix memory leak in soc_tplg_dapm_widget_create (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Fix memory leak from soc_tplg_denum_create_texts (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Remove widgets from dobj list (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Reduce number of dereferences when accessing dobj (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Use standard device registration for beep (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Apply ALC294 hp init also for S4 resume (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Record the current power state before suspend/resume calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: remove useless test (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed hp_pin no value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cros_ec_codec: Add codec driver for Cros EC (Jaroslav Kysela) [1683051] - [documentation] ALSA: ASoC: Documentation: Add google, cros-ec-codec (Jaroslav Kysela) [1683051] - [maintainers] ALSA: MAINTAINERS: add maintainers for ChromeOS EC sub-drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix missing slimbus dependency (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Cleanup DSD whitelist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: apq8096: add slim support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add audio routings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add capture dapm widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add playback dapm widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add basic controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add CLASS-H Controller support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add support to wcd9335 codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt_rt298: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt_da7219_max98357a: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090_ti: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_da7213: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bdw-rt5677: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: broadwell: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: haswell: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add helper to change platform name for all dailinks (Jaroslav Kysela) [1683051] - [sound] ALSA: dice: add support for Solid State Logic Duende Classic/Mini (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Variable "ret" in function rt5651_i2c_probe() could be uninitialized (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: add static inline fallbacks when CONFIG_ACPI=n (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Fix clocking calculations when not using the PLL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Implement the set_bclk_ratio interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: use for_each_link_codecs() for dai_link codecs V2 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Fixup build error for mt6358 (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix tight loop of OSS capture stream (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add Opus #3 to quirks for native DSD support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: add codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt8183: add platform driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Allow soc_find_component lookups to match parent of_node (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Use the common error path in __snd_pcm_lib_xfer() (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: Off by one in latter_handle_midi_msg() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: make const arrays static, reduces object code size (Jaroslav Kysela) [1683051] - [sound] ALSA: proc: Avoid possible leaks of snd_info_entry objects (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Simplify proc file destruction (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Drop unused snd_pcm_substream.file field (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: comment cleanup about destination address of async transactions for MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Cleanup snd_pcm_stream_lock() & co (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Remove down_write() hack for snd_pcm_link_rwsem (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: More fine-grained PCM link locking (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Fix multi-CODEC setups (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: support rx MIDI functionality for Fireface UCX (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-specific operation to fill transaction buffer with MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add model-dependent parameter for address to receive async transaction for MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: support tx MIDI functionality of Fireface UCX (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add model-dependent parameter for address range to receive async transaction (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: change prototype of handler for async transaction with MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Correct the setting while select ASRC clk for AD/DA filter (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: add driver flag for runtime PM (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: implement runtime suspend/resume (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: remove redundant clock enable API (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: add runtime PM callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: get clock handles early in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: runtime power management support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: rename to asoc_simple_card_canonicalize_platform() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: use for_each_link_codecs() for dai_link codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add soc_cleanup_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: reduce if/else nest on soc_probe_link_dais (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: merge card resources cleanup method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add new snd_soc_flush_all_delayed_work() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add .num_platform for dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Avoid confusing loop in snd_pcm_unlink() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Make PCM linked list consistent while re-grouping (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Unify snd_pcm_group initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Call snd_card_unref() inside in_pcm_file() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add mute LED support for HP ProBook 470 G5 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for Fireface UCX (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring to parse of clock configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring for dump of sync status (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-dependent operation to get clock status (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-dependent operation to switch mode to fetch PCM frame (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-dependent operation to dump status (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: obsolete proc node to leave one node (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: unify protocol layer for FF400/FF800 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: rename protocol layer for former models (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix unused variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc.h: add explanation of legacy/modern style of dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Remove expensive print in irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: remove error due to probe deferral (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-spdif: don't print EPROBE_DEFER as error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: don't print EPROBE_DEFER as error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: don't print EPROBE_DEFER as error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: lower log level for potential probe deferral cases (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: put of nodes if finding codec fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix oops on re-probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: add default pdata for i2s mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Set DAI format for dmic codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Kconfig: select max98927 for sdm845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-audmux: change snprintf to scnprintf for possible overflow (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514-spi: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: change snprintf to scnprintf for possible overflow (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Fix PLL source register definitions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Don't defer probe on optional, NULL components (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Make snd_pcm_suspend() local static (Jaroslav Kysela) [1683051] - [sound] ALSA: pcmcia: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: arm: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ppc: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: drivers: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp: Move PCM suspend/resume code into trigger callback (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Suspend streams globally via device type PM ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Make snd_soc_find_component() more robust (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: fix init platform memory handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: parse AES audio parameters (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-digital: Select REGMAP_MMIO to fix build error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-digital: remove few unused variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4341: fix waring unused-function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: program stripe control for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: program stripe bits for controller (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add verbs for stripe control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add register offset for stripe control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add api to program stripe control bits (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skl: Fix display power regression (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix typo for ALC225 model (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: Hold client_mutex around soc_init_dai_link() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: use correct drvdata in snd_byt_cht_es8316_mc_remove() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: move the codec PLL configuration to _init (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: SND_SOC_DAPM_MICBIAS is deprecated (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Add recalc_rate function to return DAI clock rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: MCLK should be enabled before DAI clocks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: defer card probe until all component is added to list (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Remove set but not used variable 'first_ch_bits' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix a mask wrong issue in snd_hdac_stream_start() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix mismatches for register mask and value in hdac controller (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Disable headset Mic VREF for headset mode of ALC225 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add unplug function into unplug state of Headset Mode for ALC225 (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: fix CM6206 register definitions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt274: Variable "buf" in function rt274_jack_detect() could be uninitialized (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ADAU7002: Add optional delay before start of capture (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: Potential NULL dereference in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add quirk for PoV TAB-P1006W-232 (v1.0) tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add support for jack-detect using an external GPIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add quirks module parameter (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Revert "Fix DMIC map headsetmic mapping" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add support for jack detect using an external GPIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add ACPI ID 10EC5640 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add quirk for PoV P1006W tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: update BSDSR/BSDISR handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sgtl5000: Allow SCLK pad drive strength to be changed (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atom: fix a missing check of snd_pcm_lib_malloc_pages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: enable SPDIF driver build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: add SPDIF audio driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Kernel OOPS while entering DAPM standby mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Add MICFIL SoC Digital Audio Interface driver. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: eliminate left-over from Raumfeld machine driver removal (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt298: fix boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rl6437a: use __be32 for a __be32 buf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: store eq kcontrol byte in __be (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: use logical AND (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: fix endianness issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mt6351: remove unneeded variable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tscs42xx.c: fix boolean test (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8824: fix boolean assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98927: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5640: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoc: rt286: fix boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt274: fix boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4271: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98383: fix boolean assignments to true/false (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5670: remove unused mux/mixer define (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: remove unused mux define (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: fix kernel doc descriptions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: remove unused constant variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98090: remove unused constant variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: declare trigger function as static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4458: Add support for AK4497 (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: fix a missing check of snd_ctl_add (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: fix check on snd_card_register (Jaroslav Kysela) [1683051] - [sound] ALSA: ice1712: fix a missing check of snd_i2c_sendbytes (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: add a check of the status of snd_ctl_add (Jaroslav Kysela) [1683051] - [sound] ALSA: oxygen: initialize spdif_playback_enable to 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: virtuoso: add de-emphasis control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support Dell headset mode for New AIO platform (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix an out-of-bound read in create_composite_quirks (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Always check descriptor sizes in parser code (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Check mixer unit descriptors more strictly (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Avoid access before bLength check in build_audio_procunit() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: davinci-mcasp: Add support for GPIO mode of the pins (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: davinci-mcasp: Move context save/restore to runtime_pm callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: davinci-mcasp: No need for IS_MODULE/BUILTIN check for pcm driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirks for ASUS MeMO Pad 7 (ME176C) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: sst: Fallback to BYT-CR if IRQ 5 is missing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: sst: Simplify is_byt_cr() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Add ACPI match table entry for ES8316 codec on BYTCR platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Set card long_name based on quirks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add input-map support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add external speaker mux support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add jack-detect support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add support for SSP0 (BYTCR) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Minor refactoring (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Sort includes alphabetically (Jaroslav Kysela) [1683051] - [regulator] ALSA: regulator: fixed: Let core handle GPIO descriptor (Jaroslav Kysela) [1683051] - [regulator] ALSA: regulator/gpio: Allow nonexclusive GPIO access (Jaroslav Kysela) [1683051] - [regulator] ALSA: regulator: fixed: Default enable high on DT regulators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: Add DAC mono mix switch mixer control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: Add jack-detect support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Variable "val" in function rt274_i2c_probe() could be uninitialized (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: fix error handling in xlnx_formatter_pcm_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add workaround for silence of rk3288 ACODEC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: support ACODEC for rk3328 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: reduce naming prefix (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: cleanup DAI link loop method - step2 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: cleanup DAI link loop method - step1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add link_info (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add 1 CPU : 1 Codec support again (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add asoc_simple_card_get_conversion() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: reduce naming prefix (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: cleanup DAI link loop method - step2 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: cleanup DAI link loop method - step1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add link_info (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add 1 CPU : 1 Codec support again (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: enable audio formatter driver build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: add pcm formatter platform driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: remove simple-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: remove audio-graph-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add asoc_graph_card_get_conversion() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: check "reg" property on asoc_simple_card_get_dai_id() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: boards: use snd_mask_set_format in all machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Atom: simplify boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Baytrail: simplify boolean test (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Baytrail: remove unneeded variable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: assign booleans to true/false (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: remove unneeded semicolon (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: simplify boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: remove useless cast (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: enable MCLK in STANDBY (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: save model id directly in of_device_id.data (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: make the driver visible in Kconfig (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4341: Add driver for CS4341 DAC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Fix recording no sound issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: atom: Make PCI dependency explicit (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: prevent potential divide by zero bugs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Fix a small memory leak (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Fix a NULL vs IS_ERR() bug (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Off by one in of_q6asm_parse_dai_data() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Fix a double unlock in pcm512x_digital_mute() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: change license header format style (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell/Broadwell: fix setting for .dynamic field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: Grammar s/the the/the/ (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dma-sh7760: cleanup a debug printk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: set jack only for a specific backend (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Revert DSP detection on legacy HD-audio driver (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: clear pending irq handlers (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable the headset mic auto detection for ASUS laptops (Jaroslav Kysela) [1683051] - [sound] ALSA: HD-Audio: SKL+: force HDaudio legacy or SKL+ driver selection (Jaroslav Kysela) [1683051] - [sound] ALSA: HD-Audio: SKL+: abort probe if DSP is present and Skylake driver selected (Jaroslav Kysela) [1683051] - [sound] ALSA: HDA: export process_unsol_events() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX391UA with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: fix model-id of unit for Apogee Ensemble (Jaroslav Kysela) [1683051] - [sound] ALSA: xen-front: Use Xen common shared buffer implementation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: Kconfig: Remove the deprecated options (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: Merge davinci and omap directories (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add mute LED support for HP EliteBook 840 G4 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring to handle model-specific registers (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for packet streaming on Fireface 800 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: allocate isochronous resources in mode-specific implementation (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring to handle multiplier mode (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share helper function to switch fetching mode (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: fix for state to fetch PCM frames (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: use the same print format for 'without_header' tracepoints (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: fix wrong assignment for 'out_packet_without_header' tracepoint (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: fix wrong handling payload_length as payload_quadlet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: add display_port_rx port routing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: add support to Display port RX dais (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: qdafe: add support for display_port_rx (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Add support to compress offload (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm: add support to MP3 format (Jaroslav Kysela) [1683051] - [sound] ALSA: soc-compress: add support to snd_compr_set_runtime_buffer() (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: make use of runtime buffer for copy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Add more platform granularity (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: tidyup prefix for snd_soc_codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: tidyup convert_rate/channel method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: tidyup mclk-fs method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: merge simple-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup prefix for snd_soc_codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup convert_rate/channel method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup mclk-fs method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: merge audio-graph-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: fixup asoc_simple_card_get_dai_id() ID method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Invoke pcm_new() for all DAI-link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Implement the digital_mute interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: fix do_div warning in spdifin (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: add error logs on probe, remove dependency on NHLT (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: remove useless tests on HDaudio capabilities (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: stop probe if HDaudio capabilities don't exist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Harden DSP detection with PCI class/subclass info (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Add CFL-S support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add powersaving widgets for DAC and ADC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: enable i2s driver build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: Add i2s driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_rt5660: Add a new machine driver for kbl with rt5660 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg spdif input (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-toddr: add support for spdifin backend (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Dereference pointer for memcpy sizeof in asoc_simple_card_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Fix SND_SOC_EUKREA_TLV320 build error on i.MX8M (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add support for Huawei WMI micmute LED (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: fix front speakers on Huawei MBXP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: remove RSND_REG_ from rsnd_reg (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for Fireface 800 with MIDI functionality only (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: localize a handler for MIDI messages on tx transaction (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add driver data for register for MIDI high address (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share register for async transaction of MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for second optical interface for ADAT stream (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share helper function to get current sampling rate and clock source (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share status and configuration dump (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share some registers for status of clock synchronization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: care multi DPCM codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: use cpu/codec pointer on graph_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: tidyup "convert-rate/channels" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: care link / dai count (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: add dai-link support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - make pci_iounmap() call conditional (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi: Always set display_power_control for Intel HSW+ codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: Add missing display power-off at driver removal (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Make snd_hdac_display_power() void function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: Properly free the display power at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: Drop superfluous AZX_DCAPS_I915_POWERWELL checks (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Refactor display power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: tidyup asoc_simple_card_parse_daifmt() timing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: use cpu/codec pointer on simple_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: fix build warning without CONFIG_OF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: add rt5663 codec select (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: fix the audio jack button remapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Point of View Mobii TAB-P1005W-232 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Prowise PT301 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX433FN/UX333FA with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX533FD with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: ALC294 mic and headset-mode fixups for ASUS X542UN (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: Refactoring PM code (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: fix reference to wrong register for clock configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix the mute LED regresion on Lenovo X1 Carbon (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Add copyright and module author (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Add configuration for headset codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Add TDM configuration for speaker (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Fix signal paths (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Calculate LRCLK divider (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Fix power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Remove useless assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Enable headset button support for new codec (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add jack button support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add jack pointer and unsolicited event bits to callback (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed headphone issue for ALC700 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5660: Add a new ACPI match ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ak4104: move to GPIO consumer API (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: cs4270: move to GPIO consumer API (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Use of_node_name_eq for node name comparisons (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: use dma_ops of parent device for acp_audio_dma (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: use DMA addr rather than CPU pa for acp_audio_dma (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook Gnawty (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Use of_node_name_eq for node name comparisons (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Remove direct OF name and type accesses (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Use of_node_name_eq for node name comparisons (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Fix mic issue on Acer AIO Veriton Z4860G/Z6860G (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Fix mic issue on Acer AIO Veriton Z4660G (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support for Acer Aspire C24-860 headset mic (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: ALC286 mic and headset-mode fixups for Acer Aspire U27-880 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added max98373_reset for stable amp reset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: use cpu/codec pointer on graph_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: care multi DPCM codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: use cpu/codec pointer on graph_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: care link / dai count (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: fixup asoc_simple_card_get_dai_id() counting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add missing TDM Split mode support for simple-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup mod ID for CTU regmap read/write (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: indicates Channel and Mode for debug (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Add Tegra186 and Tegra194 support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra - Probe up to 8 codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook Clapper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove raumfeld machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix UAF decrement if card has no live interfaces in card.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for ICL (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix speaker output regression on Thinkpad T570 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: au8540: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add support for AMD Stoney Ridge (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add SMSL D1 to quirks for native DSD support (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix starvation on down_write_nonblock() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Call snd_pcm_unlink() conditionally at closing (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: compatible string as shortname (Jaroslav Kysela) [1683051] - [platform] ALSA: platform/x86: thinkpad_acpi: Add audio mute LED classdev support (Jaroslav Kysela) [1683051] - [platform] ALSA: platform/x86: dell-laptop: Add micmute LED trigger support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Support led audio trigger (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: Don't disable pcm3168a when CONFIG_PM defined (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: introduce module_param wakeup_delay (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: introduce mode switch delay (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: sdm845: Create and setup jack in init callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: sdm845: Add board specific dapm widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Implement configurable dismod handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Update PDIR (pin direction) register handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Clear TXSTAT register before activating serializers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Add FW reply for MCLK/SCLK IPC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Make DSP replies more human readable (Jaroslav Kysela) [1683051] - [drivers] ALSA: leds: trigger: Introduce audio mute LED trigger (Jaroslav Kysela) [1683051] - [drivers] ALSA: leds: core: Introduce LED pattern trigger (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: tidyup registering method for rsnd_kctrl_new() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support ALC300 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add auto-mute quirk for HP Spectre x360 laptop (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Fix whitespace (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc.h: makes snd_soc_of_parse_audio_prefix() inline (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Fix a NULL vs IS_ERR() check in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - fix the pop noise on headphone for lenovo laptops (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: fix spelling mistake "Frequence" -> "Frequency" (Jaroslav Kysela) [1683051] - [sound] ALSA: Revert "ALSA: Replace snd_malloc_pages() and snd_free_pages() with standard helpers" (Jaroslav Kysela) [1683051] - [sound] ALSA: Replace snd_malloc_pages() and snd_free_pages() with standard helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: control: Consolidate helpers for adding and replacing ctl elements (Jaroslav Kysela) [1683051] - [sound] ALSA: control: Fix race between adding and removing a user element (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Fix invalid snd_free_pages() at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: wss: Fix invalid snd_free_pages() at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - fix headset mic detection for MSI MS-B171 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add ASRock N68C-S UCC the power_save blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: Fix incorrect bit shift at AC97-SPSA control write (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: notify events of change of state for userspace applications (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: apply small refactoring to handle several type of event for hwdep interface (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: queue events for change of control surface (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: add new hwdep ioctl command to get state image (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: pick up data of state from tx isochronous pakcets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-dmic: Add pm_qos handling to avoid overruns with CPU_IDLE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcpdm: Add pm_qos handling to avoid under/overruns with CPU_IDLE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Fix latency value calculation for pm_qos (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup define position (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup typo SND_AUDIO_GRAPH_CARD (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: tidyup asoc_simple_card_parse_daifmt() timing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: tidyup "convert-rate/channels" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: tidyup "prefix" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: tidyup "prefix" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add snd_soc_of_parse_node_prefix() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifier: add VCC regulator widget (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: Add support for cpvdd regulator supply (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple_card_utils: remove "option" from asoc_simple_card_of_parse_routing() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: tidyup asoc_simple_card_parse_convert() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: accept NULL parameter on asoc_simple_card_xxx() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: remove asoc_simple_card_clk_register() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: makes rsnd_ssi_is_dma_mode() static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: tidyup rsnd_parse_connect_ssiu_compatible() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Add support for Secondary MI2S interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Update slot_width for Quaternary TDM port (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: use platform_data for machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: fix interface for Chromebook machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: acpi: define common interface for machine driver configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: acpi: fix: continue searching when machine is ignored (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: fix Kconfigs, make HDaudio codec optional (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic3x: Add support for CBM_CFS and CBS_CFM clocking modes (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Use device_type helpers to access the node type (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - fix AE-5 pincfg (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add new ZxR quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: clean up indentation, replace spaces with tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5663: Fix error handling of regulator_set_load (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: fix spelling mistake "Inavlid" -> "Invalid" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: clean up indentation, remove extraneous tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: arizona: fix indentation issue with return statement (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320dac33: clean up indentation, remove extraneous tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: asihpi: clean up indentation, remove extraneous tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Convert a few more users to using pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5663: Add regulator support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4118: Add support for AK4118 S/PDIF transceiver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm186x: Fix device reset-registers trigger value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: remove set but not used variable 'dma_buffer' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Fixed build errors (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8822: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8822: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Recalculate audio map forcely when card instantiated (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-abe-twl6040: Fix missing audio card caused by deferred probing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: fix memory leak of i2s_data on error return (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add DT property for single-ended output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Rename output widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Set dai_link id to each dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec: add missing route for ADC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: enable acp3x drivers build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x system resume pm op (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x runtime pm ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x tdm mode support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x i2s ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x pcm driver dma ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Interrupt handler changes for ACP3x DMA driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add ACP3x PCM platform driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: create ACP3x PCM platform device (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: add ACP3.0 PCI driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: add ACP 3.x IP register header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Power down links before turning off display audio power (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hdac_hdmi: add Icelake support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out common init code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Fix dma-unsafe read of scratch registers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add missing slave_config setting for I2S (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: No need to initialize max_xx_thres when it is not used (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Remove redundant check for mcbsp->pdata (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Re-arrange files for core McBSP and Sidetone function split (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Move out the FIFO check from set_threshold and get_delay (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Simplify the mcbsp_start/_stop function parameters (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Clean up the interrupt handlers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Skip dma_data.maxburst initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Clean up dma_data addr initialization code (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: add support for APOGEE duet FireWire (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Call pci_iounmap() instead of iounmap() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add quirk entry for HP Pavilion 15 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Optimize for non-PCI configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: use ring buffer for rsnd_mod_name() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec: fix crash on module removal (Jaroslav Kysela) [1683051] - [sound] ALSA: oss: Use kvzalloc() for local buffer allocations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_ssi: Change to use DEFINE_SHOW_ATTRIBUTE macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add TDM Split mode support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add SSIU BUSIF support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: handle DPCM converted rate/chan under core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: move HDMI information from ssi.c to core.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: use defined io_playback/io_capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: rename rsnd_runtime_is_ssi_xxx() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: remove endpoint bidirectional check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: remove error check which never happen (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: remove endpoint bidirectional check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: remove endpoint bidirectional check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add quirk for APL RVP boards (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add SOF information for APL RVP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: remove GFP_ATOMIC, use GFP_KERNEL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: boards: fix Skylake typo (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: use standard interface for Atom machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: use standard interface for Hdaudio machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: change ac97 dependencies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap: Remove unused machine driver for AM3517-evm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: remove read-only status register from snd_kcontrol_new (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak5558: Remove redundant snd_soc_component_read32 calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: Fix the dai widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Only add routing once. (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Define registers for CM6206 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix incorrect clearance of thinkpad_acpi hooks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe: Fix wrong MI2S SD line mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add quirk for boards using pmc_plt_clk_0 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: rsnd_mod_name() handles both name and ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add .get_id/.get_id_sub (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: move .get_status under rsnd_mod_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: cleanup hw_constraint for LEFT_J/I2S (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: On OMAP1 and OMAP2420 only 16bit format is supported (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: constify regulator_desc structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: constify snd_soc_dai_ops structures (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: constify snd_soc_dai_ops structures (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8825: remove unnecessary unlikely() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: mrfld: fix uninitialized variable access (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm97xx: fix uninitialized regmap pointer problem (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: smd845: constify snd_soc_ops structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix less than zero comparison on unsigned int (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: rename SND_SUNXI_ADDA_PR_REGMAP to SND_SUN8I_ADDA_PR_REGMAP (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Rip out the lpe audio runtime suspend/resume hooks (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Fix runtime PM for hdmi-lpe-audio (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup clock start checker (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix oops w/ for_each_rtd_codec_dai_rollback() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: fix insufficient PCM rule for period/buffer size (Jaroslav Kysela) [1683051] - [sound] ALSA: ca0106: Disable IZD on SB0570 DAC to fix audio pops (Jaroslav Kysela) [1683051] - [sound] ALSA: dice: fix to wait for releases of all ALSA character devices (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix noderef.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix master clock naming (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: add clock dependency for sai (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Actually fix microphone issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-i2s: move code from startup/shutdown hooks into pm_runtime hooks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm2000: Remove wm2000_read helper function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: fix mclk support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Log addresses as 8 digits in wm_adsp_buffer_populate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Rename memory fields in wm_adsp_buffer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add mclk support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: set sai as mclk clock provider (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: fix trivial checkpatch issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add support for hw_free on CODEC to CODEC links (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: minor white space clean up (Jaroslav Kysela) [1683051] - [sound] ALSA: i2c/cs8427: Fix int to char conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: tidyup SSICR::SWSP for TDM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: enable TDM settings for SSI parent (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add hw constraint for capture channel (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sta32x: Add support for XTI clock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8822: new codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra_sgtl5000: fix device_node refcounting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: allow the sun8i-codec driver to be built on ARM64 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: Add new driver for Allwinner A64 codec's analog path controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec-analog: split regmap code into separate driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec: Don't hardcode BCLK / LRCK ratio (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-i2s: Add compatibility with A64 codec I2S (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: don't pass GFP_DMA32 to dma_alloc_coherent (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add 2 more models to the power_save blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add Kabylake Dialog+Maxim machine driver entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Add KBL Dialog Maxim I2S machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Add SND_JACK_LINEOUT jack type (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: don't pass GFP_DMA32 to dma_alloc_coherent (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add I2S/Left_J TDM support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add hw constraint for channel (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add HW constraint for non RIGHT_J (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sta32x: set ->component pointer in private struct (Jaroslav Kysela) [1683051] - [sound] ALSA: au88xx: Add fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: opti92xx-ad1848: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: oss: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: caiaq: Add fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Add fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add missing entries to Kconfig (Jaroslav Kysela) [1683051] - [sound] ALSA: isight: fix leak of reference to firewire unit in error path of .probe callback (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add mic quirk for the Lenovo G50-30 (17aa:3905) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort DHT Rot Pnt Volume in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort max98373_bde_gain_tlv in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort BDE Limiter Thresh Volume in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort Digital Volume in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: enable mclk-fs on codec node (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: use 32bit TDM width as default (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98988: add I2C dependency (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: simplify cleanup process when failing to register sound card (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob/fireworks: simplify handling of local device entry table (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: release reference count of firewire unit in .remove callback of bus driver (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: block .remove callback of bus driver till all of ALSA character devices are released (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix the problem of the front MIC on the Lenovo M715 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix headphone pin config for ASUS G751 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix input effect controls for desktop cards (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add error checking in ca0132_build_controls() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Clean up patch_ca0132() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix microphone inconsistency issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98988: make it selectable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98088: Add master clock handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8782: add support for regulators (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add ASUS G751 quirk model entry (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add quirk for ASUS G751 laptop (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Use the standard fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skylake: Add fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt274: Add fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm186x: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau1761: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add custom mixer status quirks for RME CC devices (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: update quirk for B&W PX to remove microphone (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/sigmatel - Disable automute for Elo VuPoint (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: A lightweight function to discard pending bytes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add fault detect recovery property to DT bindings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: enable and disable extclk if given (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: checking NULL vs IS_ERR() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skylake: Add missing break in skl_tplg_get_token() (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: use managed-resource to maintain cache of stream formats (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: use managed-resource to maintain model-specific data (Jaroslav Kysela) [1683051] - [sound] ALSA: fireworks: use managed-resource to maintain response buffer (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: use managed-resource to maintain data specific to M-Audio FW-1814/ProjectMix I/O (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: use managed-resource of fw unit device for private data (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Cannot adjust speaker's volume on Dell XPS 27 7760 (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0: Fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: sb8: Fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: add PCM rules to obsolete PCM constraints based on LCM of SYT_INTERVAL (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR exit commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR 600 ohm gain control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Remove input select enum for ZxR (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR input/output select commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR DSP post-download commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR init commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add DBpro hda_codec_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR pincfg (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR quirks + new quirk check function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix surround sound with output effects (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix AE-5 control type (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix mismatch for register mask and value in ext controller. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: qdsp6: remove duplicated include (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm9712: fix unused variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel: add SND_SOC_I2C_AND_SPI dependency (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: avoid AC97_BUS build warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-utils: Rename dummy_dma_ops to snd_dummy_dma_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98088: add OF support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: Add a MIC pre. route (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_component_dais() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_component() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup SSI clock during suspend/resume modes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: qdsp6: remove duplicated include from q6adm.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tidyup for_each_card_prelinks() dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5663: Remove the boost volume in the beginning of playback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_dpcm_be() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_dpcm_fe() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_comp_order() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_components() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_rtds() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_links() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_prelinks() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rename for_each_rtd_codec_dai_reverse to rollback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: convert for_each_rtd_codec_dai() for missing part (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 exit function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 specific controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add input selection commands for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add output set commands for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Clean up ca0132_alt_out_select (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add DSP setup functions for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Merge post-dsp functions + cleanup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Change firmware name and usage (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 regular init setup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 pre-init and ca0113 functions (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Change ca0132_mmio_init for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Set AE-5 bools and select mixer (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add pincfg for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add quirk for Sound BlasterX AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Define new verbs and control params (Jaroslav Kysela) [1683051] - [sound] ALSA: xen-front: Refine indentations and constify snd_pcm_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix the audio-component completion timeout (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677-spi: Drop unused GPIO include (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Minor code modification (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix capture unstable in beginning for some runs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Fix the boost volume at the begining of playback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Update calibration function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Remove HP volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Improve HP performance (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: remove redundant include (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514-spi: Get the period_bytes in the copy work to make sure the value correctly (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add snd_soc_is_matching_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: manage platform name under snd_soc_init_platform() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: remove duplicated include from q6asm-dai.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hisilicon: fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8328: Fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: fireworks: fix memory leak of response buffer at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: fix memory leak of discovered stream formats at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: fix memory leak for model-dependent data at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: fix memory leak for M-Audio FW1814 and ProjectMix I/O at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp: fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Enable runtime PM only for discrete GPU (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: fix memory leak of private data (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: fix memory leak of private data (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-digi00x: fix memory leak of private data (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0m: Register irq handler after register initializations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix implicit definition of pci_iomap() on SH (Jaroslav Kysela) [1683051] - [sound] ALSA: don't call skl_init_chip() to reset intel skl soc (Jaroslav Kysela) [1683051] - [sound] ALSA: enable interrupt after dma buffer initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: Revert "ASoC: Intel: Skylake: Acquire irq after RIRB allocation" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: remove dai->driver NULL check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: add support to card rebind (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: remove unneeded static set .owner field in platform_driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add missing INTERLEAVED PCM attribute (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: remove unused num_dai_links (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: avoid nested code on soc_remove_dai() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5668: remove empty rt5668_i2c_remove() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: fix unused variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Fix UBSAN warning at snd_soc_get/put_volsw_sx() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: switch to new ac97 bus support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix simultaneous playback and capture on different channel (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: fix possible info leak to userspace on SNDRV_EMU10K1_IOCTL_INFO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add missing return value check for snd_soc_dapm_new_dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: skl-topology: Use kmemdup to replace kzalloc + memcpy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: q6core: Use kmemdup to replace kzalloc + memcpy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: txx9: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nuc900: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tscs454: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5668: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hda: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: bcm: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel_ssc_dai: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Ensure reset bit is cleared before configuring (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: clean up a return (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix a couple uninitialized ret variables (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: fix memory leak in ff400_switch_fetching_mode() (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: use address returned by kmalloc() instead of kernel stack for streaming DMA mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Update hardware pointer before start capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: usleep_range() needs include/delay.h (Jaroslav Kysela) [1683051] - [sound] ALSA: regmap: split up regmap_config.use_single_rw (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hdac_hdmi: Limit sampling rates at dai creation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Avoid uninitialised variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sgtl5000: avoid division by zero if lo_vag is zero (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: don't use p for dev_dbg() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: don't fallback to PIO mode when -EPROBE_DEFER (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: adg: care clock-frequency size (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: gen: use tab instead of white-space (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: remove redundant check for !port condition (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Move CODEC to CODEC params from the widget to the runtime (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add support for multi-CODEC CODEC to CODEC links (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Move connection of CODEC to CODEC DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Cosmetic tidy up of snd_soc_dapm_new_control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Move error handling to snd_soc_dapm_new_control_unlocked (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_link_codecs() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add overflow detection support (Jaroslav Kysela) [1683051] - [sound] ALSA: mips: Cleanup indirect PCM helper usages (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: mips: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: rme32: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix several mismatch for register mask and value (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Convert to using pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Don't schedule DAPM work if already in target state (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Add driver for PROTO Audio CODEC (with a WM8731) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: merge .nolock_start and .prepare (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssiu: Support to init different BUSIF instance (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssiu: Support BUSIF other than BUSIF0 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoc: rsnd: dma: Calculate PDMACHCRE with consider of BUSIF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoc: rsnd: dma: Calculate dma address with consider of BUSIF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssi: Check runtime channel number rather than hw_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssi: Fix issue in dma data address assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: remove is_play parameter from hw_rule function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add support for 8 bit S8 format (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add support for the DSP_A/DSP_B formats (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add support for 16/24 bit slot widths (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add warning message to rsnd_kctrl_accept_runtime() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup not to call clk_get/set under non-atomic (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Initialize allocated buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add short circuit detection support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix soc-core.c kernel-doc warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: q6routing: initialize data correctly (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas6424: Add channel fault reporting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas6424: Save last fault register even when clear (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas6424: Print full register name in error message (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-util: remove dai_link compatible code for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-util: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: use snd_soc_dai_link_component for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-util: remove dai_link compatible code for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: use simple_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: use simple_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple_card_utils: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: Add a S/PDIF enable switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: Add native 32bit I2S transport (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: SOC_SINGLE register value error fix (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: tas5720: add TAS5722 TDM slot width setting support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: tas5720: add TAS5722 specific volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Add support for FIFO usage caused delay reporting (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix cancel_work_sync() stall from jackpoll work (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Clean up jackpoll_ms option handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg pdm input (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: add DT module alias (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: add Kconfig prompt for the generic dmic codec. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau17x1: Unused exported functions changed to internal (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Improve legibility of if-statements (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Improve stylistics of file comments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel: tse850: switch to SPDX license identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Change MCLK to 48Mhz (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Set constraints for DMIC and MAX98357a codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht-bsw-rt5672: Add key-mappings for the headset buttons (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add quirk for Thinkpad 8 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5670: Add quirk for Thinkpad 8 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau17x1: Implemented safeload support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sigmadsp: safeload should not have lower byte limit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hda: add asoc extension for legacy HDA codec drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: use hda_bus instead of hdac_bus (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: add HDA BE DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: use HDAudio if ACPI enumeration fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Machine driver for SKL+ w/ HDAudio codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add table for HDA-based platforms (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: move hda_codec.h to include/sound (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8804: Add ACPI support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Update calibration function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Change DAC/ADC volume scale (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added 10ms sleep after amp software reset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-tdm: restrict formats depending on slot width (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-fifo: report interrupt request failure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: imply clock and reset controllers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: Properly initialise hw->rate_max (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Don't fail creating new DAPM control on NULL pinctrl (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Remove clock framework ifdefs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Convert to using pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: intel_hdmi: Use the new non-cached allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0: Use the new non-cached allocation for 440MX workaround (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Remove substream allocation/free ops (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Use new non-cached allocation for non-snoop mode (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Check the non-cached stream buffers more explicitly (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Add non-cached buffer type (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Simplify snd_malloc_dev_pages() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Don't align the size to power-of-two (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Do error checks at creating system ports (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: add error check in snd_seq_system_client_init() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: signedness bug in snd_pcm_plug_alloc() (Jaroslav Kysela) [1683051] - [sound] ALSA: hdspm: fix spelling mistake "Initializeing" -> "Initializing" (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Return 0 when size < start_threshold in capture (Jaroslav Kysela) [1683051] - [kvm] ALSA: treewide: correct "differenciate" and "instanciate" typos (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix HP Headset Mic can't record (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: fix unbalanced pm_runtime_enable (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: fix check of pm_runtime_get_sync failure (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: fix device initialization in the compat layer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514: Fix the issue of the delay volume applied again (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added speaker FS gain cotnrol register to volatile. (Jaroslav Kysela) [1683051] - [sound] ALSA: update dell-wmi mic-mute registration to new world order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix NULL pointer deference on CODEC to CODEC DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: virmidi: Fix discarding the unsubscribed output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Acquire irq after RIRB allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm9712: fix replace codec to component (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirks for 2 more devices (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adav80x: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Add delays to capture path to remove DC offset noise (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: mixart: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add exit commands for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Change mixer controls for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add Recon3D input and output select commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add DSP setup defaults for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add Recon3D startup functions and setup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add bool variable to enable/disable pci region2 mmio (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add Recon3D pincfg (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add quirk ID and enum for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add alt_functions unsolicited response (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Clean up ca0132_init function. (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Create mmio gpio function to make code clearer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Make DSP name configurable by codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Declare firmware controls from codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added software reset register to readable registers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct DSP pointer for preloader control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677: Fix initialization of rt5677_of_match.data (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: compress: make BE and FE order inline with dpcm (Jaroslav Kysela) [1683051] - [sound] ALSA: intel_hdmi: remove redundant variable cfg_val (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Set delay value for the capture case (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Modified DMA pointer for capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Make ACP->SYSMEM DMA non circular (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8994: Fix missing break in switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: add SLIM tx AIF_IN dapm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: remove unused header files from common.h (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: remove unused header files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: apq8096: remove unused header files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: make common.c as proper module (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8903: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da9055: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm5100-tables: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7213: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: twl6040: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8996: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4270: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8990: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tda7419: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5631: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9850: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: dice: fix wrong copy to rx parameters for Alesis iO26 (Jaroslav Kysela) [1683051] - [sound] ALSA: echoaudio: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: mixart: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add mute LED quirk for HP Spectre x360 (Jaroslav Kysela) [1683051] - [sound] ALSA: seq_oss: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-dmic: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcpdm: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-i2s: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: smd845: fix memory leak (Jaroslav Kysela) [1683051] - [sound] ALSA: synth: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: i2c: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: drivers: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: fix spelling mistake "acumulator" -> "accumulator" (Jaroslav Kysela) [1683051] - [sound] ALSA: es18xx: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: opti9xx: mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: opti92x: mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: galaxy: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt: Use refcap device for mono recording (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: remove support for card rebind using component framework (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: smd845: remove auto rebinding (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: apq8096: remove auto rebinding (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Correct Asrock B85M-ITX power_save blacklist entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Fix unmet dependency warning for SND_SOC_SDM845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8994: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm9081: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8995: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8962: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8996: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8960: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8955: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5640: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8961: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Fix a typo (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix invalid use of sizeof in parse_uac_endpoint_attributes() (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Drop unused 64bit division macros (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Use no intrruptible mutex_lock (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix leftovers at probe error path (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Remove dead codes (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Minor cleanup of MIDI event parser helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-pcm: Use delay set in component pointer function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix build due to CLASS-H Controller support (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: remove redundant pointer 'urb' (Jaroslav Kysela) [1683051] - [sound] ALSA: sonicvibes: remove redundant pointer 'dir' (Jaroslav Kysela) [1683051] - [sound] ALSA: ens137x: remove redundant array pcm_devs (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: remove redundant variable attn (Jaroslav Kysela) [1683051] - [sound] ALSA: cs5535audio: remove redundant pointer 'dma' (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: remove redundant variable max_streams (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: remove redundant pointers 'priv' and 'rtd' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8540: remove redundant variable osrate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: add sdm845 sound card support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Add support to parse common audio device nodes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add CLASS-H Controller support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add support to wcd9335 codec (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Operate UAC3 Power Domains in PCM callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add UAC3 Power Domains to suspend/resume (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: AudioStreaming Power Domain parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Initial Power Domain support (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: virmidi: Use READ_ONCE/WRITE_ONCE() macros (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: virmidi: Offload the output event processing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: change functions to static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: add support for multichannel output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sirf: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra_alc5632: fix device_node refcounting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: Kconfig: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4613: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7210: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4554: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4642: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8988: fix typo in rate constraints (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra: i2s: Fix typo/broken macro (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi: Use single mutex unlock in error paths (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Sleep for 10ms after entering D3 on Conexant codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Turn CX8200 into D3 as well upon reboot (Jaroslav Kysela) [1683051] - [sound] ALSA: ctxfi: cthw20k2: Replace mdelay() with msleep() and usleep_range() (Jaroslav Kysela) [1683051] - [sound] ALSA: ALSA:: ctxfi: cthw20k1: Replace mdelay() with msleep() (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: quirks: Replace mdelay() with msleep() and usleep_range() (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp_modem: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: bt87x: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: echoaudio: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: maestro3: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0m: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: lola: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: mixart: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: riptide: Properly endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Proper endian notations for BDL pointers (Jaroslav Kysela) [1683051] - [sound] ALSA: trident: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: ymfpci: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: xen: Use standard pcm_format_to_bits() for ALSA format bits (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Fix PCM format bit calculation (Jaroslav Kysela) [1683051] - [sound] ALSA: wss: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: Fix PCM format notations (Jaroslav Kysela) [1683051] - [sound] ALSA: au88x0: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: ad1816a: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: riptide: Fix PCM format type conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix implicit PCM format type conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: virmidi: Fix too long output trigger loop (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Use standard pcm_format_to_bits() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm186x: Declare PCM format with snd_pcm_format_t (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Use snd_mask_set_format() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix interval evaluation with openmin/max (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Add snd_mask_set_format() helper for standard usages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: Fix snd_pcm_format_t handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Use int for format bit position (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Fix missing __user prefix in copy_user callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: zte: Fix incorrect PCM format bit usages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: align axg card driver with DT bindings documentation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: use IRQ_RETVAL in the fifo irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix build warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Add a fix voltage regulator for DA7219 and ADAU7002 (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Fix missing PAGE_SIZE definition (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: declare snd_sgbuf_aligned_pages() unconditionally (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Fix missing __force annotation for user/kernel pointer cast (Jaroslav Kysela) [1683051] - [sound] ALSA: korg1212: Add __force annotation to cast in user-copy callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Use standard lower_32_bits() and upper_32_bits() (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Declare the common variable in header file (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: Declare common variables properly (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix a sparse warning about snd_ctl_elem_iface_t (Jaroslav Kysela) [1683051] - [sound] ALSA: msnd: Use NULL instead of 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Use NULL instead of 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: msnd: Fix the default sample sizes (Jaroslav Kysela) [1683051] - [sound] ALSA: msnd: Add missing __iomem annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix multiple definitions in AU0828_DEVICE() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add support for Encore mDSD USB DAC (Jaroslav Kysela) [1683051] - [sound] ALSA: cs5535audio: Fix invalid endian conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: vxpocket: Fix invalid endian conversions (Jaroslav Kysela) [1683051] - [sound] ALSA: vx222: Fix invalid endian conversions (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix poll() error return (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: fix widget handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Atom: fix inversion between __iowrite32 and __ioread32 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Atom: simplify iomem address and casts (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: make sst_dma functions static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: BDL definitions should be __le32 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: fix endianness handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5631: add Volume to the name of volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_utils: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_asrc: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl-asoc-card: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: add support to snd_soc_dai_get_channel_map() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514: Fix the issue of the delay volume applied (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-spdifout: select SND_PCM_IEC958 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/i915: Allow delayed i915 audio component binding (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Generic DSD detection for Thesycon-based implementations (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Don't exceed over the requested size (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: catch invalid timer object creation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove clock divider and pll setup from zylonite and magician (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg sound card support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: export snd_soc_of_get_slot_mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm input driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm output driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm interface driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm formatter base driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra: improve goto error label (Jaroslav Kysela) [1683051] - [usb] ALSA: powerpc/ps3: Set driver coherent_dma_mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the "Connect Tablet 9" tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add quirk table entries for various devices (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add mono speaker quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add IN2 input mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Set OVCD limit for VIOS LTH17 to 2000uA (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix using the wrong GPIO for the ext-amp on some boards (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add IN3 Boost volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Parse HOST_BUFFER controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Allow up to 8 channels for voice control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Take prefix into account in control name length (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct algorithm list allocation size (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Ensure DSP boot work complete before preloader_put return (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Allow changing from a bad sample rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg spdif output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg toddr driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg frddr driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg fifo base driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: Add documentation for power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: apq8096: remove component framework related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: remove component framework related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: remove component framework related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: remove component fw related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: add support to card re-bind using component framework (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Add __force to cast in snd_pcm_lib_read/write() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Nuke snd_pcm_lib_mmap_vmalloc() (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Use kvmalloc() for buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Minor code refactoring (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Simplify error paths (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Tidy up coding styles (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Make audio component support more generic (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/i915: Associate audio component with devres (Jaroslav Kysela) [1683051] - [sound] ALSA: drm/i915: Split audio component to a generic type (Jaroslav Kysela) [1683051] - [sound] ALSA: emu8000: Use swap macro in snd_emu8000_sample_new (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1_patch: Use swap macro in snd_emu10k1_sample_new (Jaroslav Kysela) [1683051] - [gpu] ALSA: vga_switcheroo: set audio client id according to bound GPU id (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: use PCI_BASE_CLASS_DISPLAY to replace PCI_CLASS_DISPLAY_VGA (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Tidy up logic for Processing Unit min/max values (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Unify virtual type units type to UAC3 values (Jaroslav Kysela) [1683051] - [include] ALSA: usb-audio: Add support for Processing Units in UAC3 (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Processing Unit controls parsing in UAC2 (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add support for Selector Units in UAC3 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: For capture have interrupts on I2S->ACP channel (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Send correct channel for configuring DMA descriptors (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Add GLK Realtek Maxim I2S machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix routing (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: remove redundant pointer 'ins' (Jaroslav Kysela) [1683051] - [sound] ALSA: ali5451: remove redundant pointer 'codec' (Jaroslav Kysela) [1683051] - [sound] ALSA: sb8: remove redundant pointer runtime (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: remove redundant pointer private_data (Jaroslav Kysela) [1683051] - [sound] ALSA: es1688: remove redundant pointer chip (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: remove redundant pointer opl3 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: off by one in routing_hw_params() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: fix a range check in of_q6afe_parse_dai_data() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: allow soc-core to pick up name prefixes from component nodes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: add rate merge to the BE stream merge (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: rework runtime stream merge (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix snd_interval_refine first/last with open min/max (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Reporting button presses (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Disable jack-detect over suspend/resume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add button press support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Allow disabling jack-detect by calling set_jack(NULL) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Fix workqueue cancel vs irq free race on remove (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add support for externar amplifier enable GPIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Move getting of codec_dev into probe() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Remove is_valleyview helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Lenovo Miix2 8 tablet (Jaroslav Kysela) [1683051] - [dma] ALSA: dmaengine: add support for reporting pause and resume separately (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau171x1: Connect playback DAI to the DSP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: make SND_PXA_SOC_SSP depend on PLAT_PXA (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: replace "p" with "pK" (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Allow drivers to set R/W wait time. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8824: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: add support for an external clock in devicetree (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: cmd: Add missing newline to debug message (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: Use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: Do not overwrite slim dai num_channels (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: add slim rx routings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: add support to slim tx dais (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe: Add missing slimbus capture ports (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sti: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8825: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: do not close port if its not opened (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: do not close port if its not opened (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Use snd_pcm_stop_xrun() for xrun injection (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: trace XRUN event at injection, too (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Allow topology to override machine driver FE DAI link config. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel-i2s: Remove unnecessary audio PLL clock (aclk) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: add support for the es7154 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: correct required power supplies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Simplify trigger handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Reset bytescount when starting transaction (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Do not generate interrups for every captured sample (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix Capture DMA channel names (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Always subtract bytescount (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Always stop ch2 first (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7241: add es7241 codec support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: add button detection mode control (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-midi: use irqsave() in USB's complete callback (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: caiaq: audio: use irqsave() in USB's complete callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: Add VDD and AVDD power supplies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: check if mclk rate is valid (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: remove 64kHz rate from the supported rates (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: remove .set_pll() and .set_clkdiv() callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: select SND_PXA2XX_LIB for drivers that depend on it (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ac97: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-compress: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-topology: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-dapm: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-devres.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-utils.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-jack.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-dpcm.h: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-pcm.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-ops.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-dai.h: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-io.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: snd-aoa: add of_node_put() in error path (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mt6797: sub dai use list_head (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: sub dai use list_head (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: make SND_PXA2XX_SOC_I2S selectable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove bindings from pxa2xx-pcm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: provide PCM ops for ssp, i2s and ac97 components (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa2xx-pcm-lib: fix indenting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: move some functions to pxa2xx-lib (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: clean up function names in pxa2xx-lib (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fold pxa2xx-pcm into its only user, pxa2xx-ac97 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove the dmaengine compat need (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Don't fall back to generic when i915 binding fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: don't merge format from invalid codec dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: extend channel merging to the backend cpu dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: qdafe: fix some off by one bugs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: improve runtime update predictability (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add AZX_DCAPS_PM_RUNTIME for AMD Raven Ridge (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: add extended ops in the hdac_bus (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: remove memory allocation from snd_hdac_ext_bus_device_init (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: split snd_hda_codec_new function (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: ext: add wait for codec to respond after link reset (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: Remove usage of struct hdac_ext_driver, use hdac_driver instead (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: Remove usage of struct hdac_ext_bus and use hdac_bus instead (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: Remove usage of struct hdac_ext_device and use hdac_device instead (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Move in_pm accessors to HDA core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas517x: add tas5707 support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifer: add simple-amplifier compatible (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifier: rename dio2125 to simple-amplifer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Sort DMI table entries alphabetically (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add BYT_RT5651_HP_LR_SWAPPED quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Simplify card long-name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix DMIC map headsetmic mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix IN1 map headsetmic mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Remove IN2 input mappings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix IN1_IN2_MAP quirk not being logged (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Change default input map from in2 to in1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add BYT_RT5651_DEFAULT_QUIRKS define (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Kill snd_hda_codec_update_cache() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC882 & co (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC262 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC268 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC259 & co (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC662 & co (Jaroslav Kysela) [1683051] - [sound] ALSA: Fix references to Documentation/.*/MultiSound (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm: remove unused struct q6asm member (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: add proper error check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: apq8096: remove redundant owner assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: support dt based module loading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: support dt based module loading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: support dt based module loading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe: use of_platform_populate/depopulate() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm: use of_platform_populate/depopulate() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6adm: use of_platform_populate/depopulate() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-utils: Fix unregistration order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cx20442: Don't ignore regulator_get() errors. (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Apply PRE_PROBE fixup after ALC269 codec variant setups (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/via - Use standard verb containers (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/via - Simplify control management (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/via - Rewrite with error goto (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/cirrus - Simplify creation of new controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/conexant - Clean up beep code (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use common helper for creating beep controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use common helper for creating ALC268 beep controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use common GPIO mask for ALC660VD ASUS fixup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify Dell XPS13 GPIO handling (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Convert some manual GPIO setups (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify mute LED GPIO handling (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify alc885_fixup_macpro_gpio() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Consolidate gpio_data and gpio_led (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add GPIO data update helper (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Manage GPIO bits commonly (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Allow skipping spec->init_amp detection (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: add codecs devicetree binding (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-pcm: DPCM cares BE channel constraint (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Configure channel 1 or channel 0 for capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Change codec to channel link as per hardware redesign (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: remove redundant check of PLL ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt1305: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: fix missing rename from 'reef' to 'sof' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify alc269_fixup_hp_line1_mic1_led() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Sanity check of unexpected cap_sync_hook override (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/sigmatel - Use common helper for mic mute LED (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Allow multiple ADCs for mic mute LED controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/conexant - Use the mic-mute LED helper (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use the mic-mute LED helper for HP and others (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Use the common helper for thinkpad_acpi mic mute LED handling (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Move mic mute LED helper to the generic parser (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: rename 'reef' to 'sof' in ACPI matching table (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: arizona: Set compressed IRQ to a wake source (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Simplify handling of alg offset and length (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add support for Motu Traveler (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: cancel chunk alignment for protocol version 2 (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add a flag for AES/EBU on XLR interface (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add a flag for chunks for main 1/2 out (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: suppless consumption for unused element of array in stack (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: Tidy up open/hw_params handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: fix copy/paste issue with SOF/broadwell topology file (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add entries for SOF-based machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add firmware/topology information for SOF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add Geminilake Dialog+Maxim machine driver entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: move SKL+ codec ACPI tables to common directory (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: cleanup before moving ACPI tables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: broxton: reduce machine name for bxt_da7219_max98357a (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: add fe_ops for kbl Audio Capture Port (Jaroslav Kysela) [1683051] - [sound] ALSA: ARM: pxa: change SSP DMA channels allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: stop using get_seconds() (Jaroslav Kysela) [1683051] - [sound] ALSA: ctxfi: use enum type CT_SUM_CTL where appropriate (Jaroslav Kysela) [1683051] - [sound] ALSA: ice1724: remove unused array (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Fix Acer Iconia 8 over-current detect threshold (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Nuvison/TMax TM800W560 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra: fix device_node refcounting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: add devicetree support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: PCM1789: unconditionally flush work (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: add rt5682 codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: TSCS42xx: Add headphone auto switching (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: TSCS42xx: Remove Playback/Capture in names (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: TSCS42xx: Add mic bias boost control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4458: make structure soc_codec_dev_ak4458 static const (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak5558: make two structures static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: twl6040: make pointer dmic_codec_dev static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: apq8096: set card as device drvdata (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add rsnd_daidrv_get() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add hp and mic detect gpios same as simple-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: move hp and mic detection to soc_card probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: move hp and mic detect gpios from simple-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Chuwi Vi10 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt1305: Use ULL suffixes for 64-bit constants (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add config for rockchip dmaengine pcm register (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: put device_node on remove (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: add iec958 controls support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Add NULL pointer check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: SSI parent cares SWSP bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: has .symmetric_rates if SSIs are sharing WS pin (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh7760-ac97: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dma-sh7760: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: migor: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: siu: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ssi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hac: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Add callback for DAPM route load/unload (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Give more data to clients via callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix potential DAI widget pointer deref when linking DAIs (Jaroslav Kysela) [1683051] - [fs] gfs2: Fix loop in gfs2_rbm_find (v2) (Andreas Grunbacher) [1690483] - [fs] gfs2: Rename bitmap.bi_{len => bytes} (Andreas Grunbacher) [1690483]- [vfio] vfio/pci: Mask buggy SR-IOV VF INTx support (Myron Stowe) [1678076] - [netdrv] net/ibmvnic: Update carrier state after link state change (Steve Best) [1711282] - [netdrv] net/ibmvnic: Update MAC address settings after adapter reset (Steve Best) [1711282] - [scsi] scsi: storvsc: Reduce default ring buffer size to 128 Kbytes (Cathy Avery) [1691370] - [scsi] scsi: storvsc: Fix calculation of sub-channel count (Cathy Avery) [1691370] - [powercap] powercap: RAPL: Get rid of custom RAPL_CPU() macro (Alexander Beregalov) [1706827] - [tools] tools/power turbostat: Increase default buffer size (Prarit Bhargava) [1711260] - [char] virtio_console: initialize vtermno value for ports (Pankaj Gupta) [1460636] - [rpmspec] redhat: exclude kvm_stat from pathfix.py's tenure (Vitaly Kuznetsov) [1692804] - [virt] kvm: arm: Skip stage2 huge mappings for unaligned ipa backed by THP (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Ensure vcpu target is unset on reset failure (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-v3: Retire pending interrupts on disabling LPIs (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Fix CNTP_TVAL calculation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move RSB stuffing to before the first RET after VM-Exit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Fix size checks in vmx_set_nested_state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Check for in-kernel LAPIC before deferencing apic pointer (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix KVM_CLEAR_DIRTY_LOG for memory slots of unaligned size (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: reset MMU context when 32-bit guest switches PAE (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Whitelist port 0x7e for pre-incrementing rip (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Convert guest TSC to host time domain if necessary (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Allow user to disable adaptive tuning of timer advancement (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Track lapic timer advance per vCPU (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Disable timer advancement if adaptive tuning goes haywire (Vitaly Kuznetsov) [1692804] - [kvm] x86: kvm: hyper-v: deal with buggy TLB flush requests from WS2012 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Consider LAPIC TSC-Deadline timer expired if deadline too short (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: avoid misreporting level-triggered irqs as edge-triggered in tracing (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix spectrev1 gadgets (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix warning Using plain integer as NULL pointer (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: add a selftest for SMM (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: fix for compilers that do not support -no-pie (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm/evmcs_test: complete I/O before migrating guest state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Always use 32-bit SMRAM save state for 32-bit kernels (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Don't clear EFER during SMM transitions for 32-bit vCPU (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: clear SMM flags before loading state while leaving SMM (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Open code kvm_set_hflags (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Load SMRAM in a single shot when leaving SMM (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Expose RDPMC-exiting only when guest supports PMU (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm: move kvm_load/put_guest_xcr0 into atomic context (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: svm: make sure NMI is injected after nmi_singlestep (Vitaly Kuznetsov) [1692804] - [kvm] svm/avic: Fix invalidate logical APIC id entry (Vitaly Kuznetsov) [1692804] - [kvm] Revert "svm: Fix AVIC incomplete IPI emulation" (Vitaly Kuznetsov) [1692804] - [kvm] kvm: mmu: Fix overflow on kvm mmu page limit calculation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: always use early vmcs check when EPT is disabled (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: allow tests to use bad virtual-APIC page address (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Fix an inverted list_empty() check when zapping sptes (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nVMX: fix x2APIC VTPR read intercept (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nVMX: close leak of L0's x2APIC MSRs (CVE-2019-3887) (Vitaly Kuznetsov) [1692804] - [kvm] KVM: SVM: prevent DBG_DECRYPT and DBG_ENCRYPT overflow (Vitaly Kuznetsov) [1692804] - [kvm] kvm: svm: fix potential get_num_contig_pages overflow (Vitaly Kuznetsov) [1692804] - [documentation] Documentation: kvm: clarify KVM_SET_USER_MEMORY_REGION (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: complete IO before migrating guest state (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: disable stack protector for all KVM tests (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: explicitly disable PIE for tests (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: assert on exit reason in CR4/cpuid sync test (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: update rip after emulating IO (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: avoid spurious pending stimer on vCPU init (Vitaly Kuznetsov) [1692804] - [kvm] kvm/x86: Move MSR_IA32_ARCH_CAPABILITIES to array emulated_msrs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Emulate MSR_IA32_ARCH_CAPABILITIES on AMD hosts (Vitaly Kuznetsov) [1692804] - [virt] kvm: don't redefine flags as something else (Vitaly Kuznetsov) [1692804] - [kvm] kvm: mmu: Used range based flushing in slot_handle_level_range (Vitaly Kuznetsov) [1692804] - [x86] x86/hyper-v: Fix definition of HV_MAX_FLUSH_REP_COUNT (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: remove check on nr_mmu_pages in kvm_arch_commit_memory_region() (Vitaly Kuznetsov) [1692804] - [kvm] kvm: nVMX: Add a vmentry check for HOST_SYSENTER_ESP and HOST_SYSENTER_EIP fields (Vitaly Kuznetsov) [1692804] - [kvm] KVM: SVM: Workaround errata#1096 (insn_len maybe zero on SMAP violation) (Vitaly Kuznetsov) [1692804] - [virt] KVM: Reject device ioctls from processes other than the VM's creator (Vitaly Kuznetsov) [1692804] - [documentation] KVM: doc: Fix incorrect word ordering regarding supported use of APIs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix handling of role.cr4_pae and rename it to 'gpte_size' (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Do not inherit quadrant and invalid for the root shadow EPT (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Comments cleanup in mmu.c (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-its: Make attribute accessors static (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Fix handling of stage2 huge mappings (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Enforce PTE mappings at stage2 when needed (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-its: Take the srcu lock when parsing the memslots (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-its: Take the srcu lock when writing to guest memory (Vitaly Kuznetsov) [1692804] - [virt] arm64: KVM: Always set ICH_HCR_EL2.EN if GICv4 is enabled (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Reset the PMU in preemptible context (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: fix formatting of a comment (Vitaly Kuznetsov) [1692804] - [documentation] KVM: doc: Document the life cycle of a VM and its resources (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM/MMU: Flush tlb directly in the kvm_zap_gfn_range()" (Vitaly Kuznetsov) [1692804] - [documentation] virtio-ccw: diag 500 may return a negative cookie (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Add count cache flush parameters to kvmppc_get_cpu_char() (Vitaly Kuznetsov) [1692804] - [virt] kvm: properly check debugfs dentry before using it (Vitaly Kuznetsov) [1692804] - [powerpc] KVM: PPC: Fix compilation when KVM is not enabled (Vitaly Kuznetsov) [1692804] - [powerpc] powerpc: Avoid circular header inclusion in mmu-hash.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: MMU: record maximum physical address width in kvm_mmu_extended_role (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Return LA57 feature based on hardware capability (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: fix switch between root and guest MMUs (Vitaly Kuznetsov) [1692804] - [virt] KVM: Minor cleanups for kvm_main.c (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Fix architecturally invalid reset value for FPEXC32_EL2 (Vitaly Kuznetsov) [1692804] - [kvm] powerpc/kvm: Save and restore host AMR/IAMR/UAMOR (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Improve KVM reference counting (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Fix build failure without IOMMU support (Vitaly Kuznetsov) [1692804] - [powerpc] powerpc/64s: Better printing of machine check info for guest MCEs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Simplify machine check handling (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Context switch AMR on Power9 (Vitaly Kuznetsov) [1692804] - [virt] Revert "KVM: Eliminate extra function calls in kvm_get_dirty_log_protect()" (Vitaly Kuznetsov) [1692804] - [x86] x86: kvmguest: use TSC clocksource if invariant TSC is exposed (Vitaly Kuznetsov) [1692804] - [virt] KVM: Never start grow vCPU halt_poll_ns from value below halt_poll_ns_grow_start (Vitaly Kuznetsov) [1692804] - [virt] KVM: Expose the initial start value in grow_halt_poll_ns() as a module parameter (Vitaly Kuznetsov) [1692804] - [virt] KVM: grow_halt_poll_ns() should never shrink vCPU halt_poll_ns (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Consolidate kvm_mmu_zap_all() and kvm_mmu_zap_mmio_sptes() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: WARN if zapping a MMIO spte results in zapping children (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Differentiate between nr zapped and list unstable (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: fast invalidate all pages" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Voluntarily reschedule as needed when zapping all sptes (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: skip over invalid root pages when zapping all sptes (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: x86: use the fast way to invalidate all pages" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: show mmu_valid_gen in shadow page related tracepoints" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: add tracepoint for kvm_mmu_invalidate_all_pages" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: zap pages in batch" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: collapse TLB flushes when zap all pages" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: reclaim the zapped-obsolete page first" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Remove is_obsolete() call (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Voluntarily reschedule as needed when zapping MMIO sptes (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: drop kvm_mmu_zap_mmio_sptes" (Vitaly Kuznetsov) [1692804] - [x86] Revert "KVM: MMU: document fast invalidate all pages" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Zap only the relevant pages when removing a memslot (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Split remote_flush+zap case out of kvm_mmu_flush_or_zap() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Move slot_level_*() helper functions up a few lines (Vitaly Kuznetsov) [1692804] - [virt] KVM: Move the memslot update in-progress flag to bit 63 (Vitaly Kuznetsov) [1692804] - [virt] KVM: Remove the hack to trigger memslot generation wraparound (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Refactor the MMIO SPTE generation handling (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Use a u64 when passing the MMIO gen around (Vitaly Kuznetsov) [1692804] - [virt] KVM: Explicitly define the "memslot update in-progress" bit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Do not cache MMIO accesses while memslots are in flux (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Detect MMIO generation wrap in any address space (Vitaly Kuznetsov) [1692804] - [virt] KVM: Call kvm_arch_memslots_updated() before updating memslots (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [kvm] kvm: svm: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [virt] kvm: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do not start the preemption timer hrtimer unnecessarily (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Fix typos in vmentry/vmexit control setting (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: cleanup freeing of nested state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Sync the pending Posted-Interrupts (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: expose MOVDIR64B CPU feature into VM. (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: expose MOVDIRI CPU feature into VM. (Vitaly Kuznetsov) [1692804] - [kvm] kvm, x86, mmu: Use kernel generic dynamic physical address mask (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: remove useless is_protmode check (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Ignore limit checks on VMX instructions using flat segments (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Apply addr size mask to effective address for VMX instructions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Sign extend displacements of VMX instr's mem operands (Vitaly Kuznetsov) [1692804] - [kvm] svm: Fix improper check when deactivate AVIC (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: cull apicv code when userspace irqchip is requested (Vitaly Kuznetsov) [1692804] - [kvm] svm: Fix AVIC DFR and LDR handling (Vitaly Kuznetsov) [1692804] - [virt] kvm: Use struct_size() in kmalloc() (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: set offset for kvm unstable clock (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Reorder clearing of registers in the vCPU-run assembly flow (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Call vCPU-run asm sub-routine from C and remove clobbering (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Preserve callee-save registers in vCPU-run asm sub-routine (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Return VM-Fail from vCPU-run assembly via standard ABI reg (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Pass @launched to the vCPU-run asm via standard ABI regs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use RAX as the scratch register during vCPU-run (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Rename ____vmx_vcpu_run() to __vmx_vcpu_run() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Fold __vmx_vcpu_run() back into vmx_vcpu_run() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move vCPU-run code to a proper assembly routine (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Create a stack frame in vCPU-run (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use #defines in place of immediates in VM-Enter inline asm (Vitaly Kuznetsov) [1692804] - [x86] KVM: x86: Explicitly #define the VCPU_REGS_* indices (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Remove unused gpa_end variable (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Fix comment for KVM_PHYS_SHIFT (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: fix spelling mistake: "auxilary" -> "auxiliary" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Prefix header search paths with $(srctree)/ (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Remove -I. header search paths (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Fix TRACE_INCLUDE_PATH (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Mark physical interrupt active when a virtual interrupt is pending (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Describe data or unified caches as having 1 set and 1 way (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Expose sanitised cache type register to guest (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Move kvm_is_write_fault to header file (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Assign the phys timer on VHE systems (Vitaly Kuznetsov) [1692804] - [include] clocksource/arm_arch_timer: Store physical timer IRQ number for KVM on VHE (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: timer: Rework data structures for multiple timers (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: consolidate arch timer trap handlers (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Reuse sys_reg() macro when searching the trap table (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Fix ICH_ELRSR_EL2 sysreg naming (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Simplify bg_timer programming (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm/arm64: Factor out VMID into struct kvm_vmid (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Statically configure the host's view of MPIDR (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Drop VHE-specific HYP call stub (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Allow for direct call of HYP functions when using VHE (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Introduce kvm_call_hyp_ret() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Release all hardware TCE tables attached to a group (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Optimise mmio emulation for devices on FAST_MMIO_BUS (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Allow XICS emulation to work in nested hosts using XIVE (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Replace kmalloc_node+memset with kzalloc_node (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S PR: Add emulation for slbfee. instruction (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Fix entry number check for add_atomic_switch_msr() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Recompute PID.ON when clearing PID.SN (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Restore a preemption timer consistency check (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: read from MSR_IA32_VMX_PROCBASED_CTLS2 only when it is available (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use vcpu->arch.regs directly when saving/loading guest state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Don't save guest registers after VM-Fail (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Invert the ordering of saving guest/host scratch reg at VM-Enter (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Pass "launched" directly to the vCPU-run asm blob (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Update VMCS.HOST_RSP via helper C function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Load/save guest CR2 via C code in __vmx_vcpu_run() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Cache host_rsp on a per-VMCS basis (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Let the compiler select the reg for holding HOST_RSP (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Reference vmx->loaded_vmcs->launched directly (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Capture VM-Fail via CC_{SET, OUT} in nested early checks (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Capture VM-Fail to a local var in nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Explicitly reference the scratch reg in nested early checks (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Drop STACK_FRAME_NON_STANDARD from nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Remove a rogue "rax" clobber from nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Let the compiler save/load RDX during vCPU-run (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Manually load RDX in vCPU-run asm blob (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Save RSI to an unused output in the vCPU-run asm blob (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Modify only RSP when creating a placeholder for guest's RCX (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Zero out *all* general purpose registers after VM-Exit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Check a single byte for VMCS "launched" in nested early checks (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Compare only a single byte for VMCS' "launched" in vCPU-run (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: add selftest for releasing VM file descriptor while in L2 (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm/arm64: Add kvm_ras.h to collect kvm specific RAS plumbing (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: work around leak of uninitialized stack contents (CVE-2019-7222) (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Forbid kprobing of the VHE world-switch code (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Relax the restriction on using stage2 PUD huge mapping (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Always initialize the group of private IRQs (Vitaly Kuznetsov) [1692804] - [kvm] arm/arm64: KVM: Don't panic on failure to properly reset system registers (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Allow a VCPU to fully reset itself (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Reset the VCPU without preemption and vcpu state loaded (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: fix possible null pointer dereference in pending_irqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: start using the GIB (Vitaly Kuznetsov) [1692804] - [s390] KVM: s390: add gib_alert_irq_handler() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: kvm_s390_gisa_clear() now clears the IPM only (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: add functions to (un)register GISC with GISA (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: add kvm reference to struct sie_page2 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: add the GIB and its related life-cyle functions (Vitaly Kuznetsov) [1692804] - [s390] s390/cio: add function chsc_sgib() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: introduce struct kvm_s390_gisa_interrupt (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: remove kvm_s390_ from gisa static inline functions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: use pending_irqs_no_gisa() where appropriate (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: coding style kvm_s390_gisa_init/clear() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: move bitmap idle_mask into arch struct top level (Vitaly Kuznetsov) [1692804] - [virt] virt/kvm: Replace spin_is_locked() with lockdep (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Mark expected switch fall-throughs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix TRACE_INCLUDE_PATH and remove -I. header search paths (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: check returned evmcs version range (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: nested_enable_evmcs() sets vmcs_version incorrectly (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move vmx_vcpu_run()'s VM-Enter asm blob to a helper function (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: Fix region overlap check in kvm_util (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: fix some -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nSVM: clear events pending from svm_complete_interrupts() when exiting to L1 (Vitaly Kuznetsov) [1692804] - [kvm] svm: Fix AVIC incomplete IPI emulation (Vitaly Kuznetsov) [1692804] - [kvm] svm: Add warning message for AVIC IPI invalid target (Vitaly Kuznetsov) [1692804] - [x86] KVM: x86: WARN_ONCE if sending a PV IPI returns a fatal error (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Fix PV IPIs for 32-bit KVM host (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: recommend using eVMCS only when it is enabled (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: don't recommend doing reset via synthetic MSR (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86/vmx: Use kzalloc for cached_vmcs12 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use the correct field var when clearing VM_ENTRY_LOAD_IA32_PERF_GLOBAL_CTRL (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Fix single-step debugging (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: don't announce GUEST IDLE MSR support (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Don't generate UNDEF when LORegion feature is present (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Make vgic_cpu->ap_list_lock a raw_spinlock (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Make vgic_dist->lpi_list_lock a raw_spinlock (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Make vgic_irq->irq_lock a raw_spinlock (Vitaly Kuznetsov) [1692804] - [kvm] KVM: powerpc: remove -I. header search paths (Vitaly Kuznetsov) [1692804] - [documentation] Documentation/virtual/kvm: Update URL for AMD SEV API specification (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Avoid return error when flush tlb successfully in the hv_remote_flush_tlb_with_range() (Vitaly Kuznetsov) [1692804] - [kvm] kvm: sev: Fail KVM_SEV_INIT if already initialized (Vitaly Kuznetsov) [1692804] - [virt] KVM: validate userspace input in kvm_clear_dirty_log_protect() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Fix bit shifting in update_intel_pt_cfg (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: radix: Fix uninitialized var build error (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: ucall: fix exit mmio address guessing (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VM-Enter + VM-Exit handling to non-inline sub-routines (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Explicitly reference RCX as the vmx_vcpu pointer in asm blobs (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Use SVM assembly instruction mnemonics instead of .byte streams (Vitaly Kuznetsov) [1692804] - [kvm] KVM/MMU: Flush tlb directly in the kvm_zap_gfn_range() (Vitaly Kuznetsov) [1692804] - [kvm] KVM/MMU: Flush tlb directly in kvm_set_pte_rmapp() (Vitaly Kuznetsov) [1692804] - [virt] KVM/MMU: Move tlb flush in kvm_set_pte_rmapp() to kvm_mmu_notifier_change_pte() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: Make kvm_set_spte_hva() return int (Vitaly Kuznetsov) [1692804] - [kvm] KVM: Replace old tlb flush function with new one to flush a specified range. (Vitaly Kuznetsov) [1692804] - [kvm] KVM/MMU: Add tlb flush with range helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Add hv tlb range flush support (Vitaly Kuznetsov) [1692804] - [x86] x86/hyper-v: Add HvFlushGuestAddressList hypercall support (Vitaly Kuznetsov) [1692804] - [x86] KVM: Add tlb_remote_flush_with_range callback in kvm_x86_ops (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Disable Intel PT when VMXON in L1 guest (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Set intercept for Intel PT MSRs read/write (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Implement Intel PT MSRs read/write emulation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Introduce a function to initialize the PT configuration (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add Intel PT context switch for each vcpu (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add Intel Processor Trace cpuid emulation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add Intel PT virtualization work mode (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: add new capability for Intel PT (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Add new bit definitions for PT MSRs (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Introduce intel_pt_validate_cap() (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Export pt_cap_get() (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Move Intel PT MSRs bit defines to global header (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: aarch64: dirty_log_test: support greater than 40-bit IPAs (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add pa-48/va-48 VM modes (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: improve mode param management (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: reset guest test phys offset (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: always use -t (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: don't identity map the test mem (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: x86_64: dirty_log_test: fix -t (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix some typos (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: convert to SPDX identifiers (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Remove KF() macro placeholder (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Allow guest read access to IA32_TSC (Vitaly Kuznetsov) [1692804] - [kvm] kvm: nVMX: NMI-window and interrupt-window exiting should wake L2 from HLT (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nSVM: Fix nested guest support for PAUSE filtering. (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Remove duplicated include from vmx.c (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: report failed stage when exit reason is unexpected (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix size of x86_fpu_cache objects (Vitaly Kuznetsov) [1692804] - [kvm] powerpc/fsl: Flush branch predictor when entering KVM (Vitaly Kuznetsov) [1692804] - [kvm] powerpc/fsl: Emulate SPRN_BUCSR register (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nSVM: fix switch to guest mmu (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Add trapped system register access tracepoint (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Make vcpu const in vcpu_read_sys_reg (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Simplify kvm_timer_vcpu_terminate (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Remove arch timer workqueue (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix unregistering coalesced mmio zone from wrong bus (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Add support for creating PUD hugepages at stage 2 (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Update age handlers to support PUD hugepages (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Support handling access faults for PUD hugepages (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Support PUD hugepage in stage2_is_exec() (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Support dirty page tracking for PUD hugepages (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Introduce helpers to manipulate page table entries (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Re-factor setting the Stage 2 entry to exec on fault (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Share common code in user_mem_abort() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Log PSTATE for unhandled sysregs (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Consistently advance singlestep when emulating instructions (Vitaly Kuznetsov) [1692804] - [virt] arm64: KVM: Skip MMIO insn after emulation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Allow passthrough of an emulated device to an L3 guest (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Introduce new hcall H_COPY_TOFROM_GUEST to access quadrants 1 & 2 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Allow passthrough of an emulated device to an L2 guest (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Update kvmppc_st and kvmppc_ld to use quadrants (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Add load_from_eaddr and store_to_eaddr to the kvmppc_ops struct (Vitaly Kuznetsov) [1692804] - [powerpc] KVM: PPC: Book3S HV: Implement functions to access quadrants 1 & 2 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Add function kvmhv_vcpu_is_radix() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Only report KVM_CAP_SPAPR_TCE_VFIO on powernv machines (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: ucall: improve ucall placement in memory, fix unsigned comparison (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Dynamically allocate guest_fpu (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Use task structs fpu field for user (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for Guest Non-Register States to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for Host Control Registers and MSRs to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for VM-Entry Control Fields to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for VM-Exit Control Fields to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Remove param indirection from nested_vmx_check_msr_switch() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for VM-Execution Control Fields to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Prepend "nested_vmx_" to check_vmentry_{pre, post}reqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Check ept_pointer before flushing ept tlb (Vitaly Kuznetsov) [1692804] - [kvm] KVM nVMX: MSRs should not be stored if VM-entry fails during or after loading guest state (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Don't modify MSR_PLATFORM_INFO on vCPU reset (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: add cpu into VMX preemption timer bug list (Vitaly Kuznetsov) [1692804] - [kvm] x86/hyper-v: Stop caring about EOI for direct stimers (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: avoid open-coding stimer_mark_pending() in kvm_hv_notify_acked_sint() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: direct mode for synthetic timers (Vitaly Kuznetsov) [1692804] - [x86] x86/kvm/hyper-v: use stimer config definition from hyperv-tlfs.h (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: Add hyperv_cpuid test (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: implement an unchecked version of vcpu_ioctl() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: Introduce KVM_GET_SUPPORTED_HV_CPUID (Vitaly Kuznetsov) [1692804] - [kvm] x86/hyper-v: Do some housekeeping in hyperv-tlfs.h (Vitaly Kuznetsov) [1692804] - [x86] x86/hyper-v: Mark TLFS structures packed (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: Introduce nested_get_evmcs_version() helper (Vitaly Kuznetsov) [1692804] - [kvm] x86: kvm: hyperv: don't retry message delivery for periodic timers (Vitaly Kuznetsov) [1692804] - [kvm] x86: kvm: hyperv: simplify SynIC message delivery (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: remove unnecessary recalculate_apic_map (Vitaly Kuznetsov) [1692804] - [kvm] kvm: svm: remove unused struct definition (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Skip all SYSCALL MSRs in setup_msrs() when !EFER.SCE (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Don't set hardware IA32_CSTAR MSR on VM-entry (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Document the need for MSR_STAR in i386 builds (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Set IA32_TSC_AUX for legacy mode guests (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move nested code to dedicated files (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose nested_vmx_allowed() to nested VMX as a non-inline (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose various getters and setters to nested VMX (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose misc variables needed for nested VMX (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move "vmcs12 to shadow/evmcs sync" to helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Call nested_vmx_setup_ctls_msrs() iff @nested is true (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Set callbacks for nested functions during hardware setup (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move the hardware {un}setup functions to the bottom (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nVMX: Allow nested_enable_evmcs to be NULL (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move nested hardware/vcpu {un}setup to helper functions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VMX instruction wrappers to a dedicated header file (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move eVMCS code to dedicated files (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Add vmx.h to hold VMX definitions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move vmcs12 code to dedicated files (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VMCS definitions to dedicated file (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose various module param vars via capabilities.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move capabilities structs and helpers to dedicated file (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Pass vmx_capability struct to setup_vmcs_config() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Properly handle dynamic VM Entry/Exit controls (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move caching of MSR_IA32_XSS to hardware_setup() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Drop the "vmx" prefix from vmx_evmcs.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: rename vmx_shadow_fields.h to vmcs_shadow_fields.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VMX specific files to a "vmx" subdirectory (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add requisite includes to hyperv.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add requisite includes to kvm_cache_regs.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Alphabetize the includes in vmx.c (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Allocate and configure VM{READ, WRITE} bitmaps iff enable_shadow_vmcs (Vitaly Kuznetsov) [1692804] - [tools] kvm: introduce manual dirty log reprotect (Vitaly Kuznetsov) [1692804] - [virt] kvm: rename last argument to kvm_get_dirty_log_protect (Vitaly Kuznetsov) [1692804] - [virt] kvm: make KVM_CAP_ENABLE_CAP_VM architecture agnostic (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S PR: Set hflag to indicate that POWER9 supports 1T segments (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Change to use DEFINE_SHOW_ATTRIBUTE macro (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Don't trap host pointer auth use to EL2 (Vitaly Kuznetsov) [1692804] - [kvm] arm64/kvm: hide ptrauth from guests (Vitaly Kuznetsov) [1692804] - [arm64] arm64: add pointer authentication register bits (Vitaly Kuznetsov) [1692804] - [arm64] arm64: add comments about EC exception levels (Vitaly Kuznetsov) [1692804] - [arm64] arm64/kvm: consistently handle host HCR_EL2 flags (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Add configuration/documentation for Cortex-A76 erratum 1165522 (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Handle ARM erratum 1165522 in TLB invalidation (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Add synchronization on translation regime change for erratum 1165522 (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Force VHE for systems affected by erratum 1165522 (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Add TCR_EPD{0,1} definitions (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Rework detection of SVE, !VHE systems (Vitaly Kuznetsov) [1692804] - [kvm] nVMX x86: Check VMX-preemption timer controls on vmentry of L2 guests (Vitaly Kuznetsov) [1692804] - [kvm] KVM/nVMX: Remove unneeded forward jump in nested_vmx_check_vmentry_hw asm (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Unrestricted guest mode requires EPT (Vitaly Kuznetsov) [1692804] - [tools] tools/kvm_stat: switch to python3 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Trace changes to active TSC offset regardless if vCPU in guest-mode (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: vmcs12 revision_id is always VMCS12_REVISION even when copied from eVMCS (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Verify eVMCS revision id match supported eVMCS version on eVMCS VMPTRLD (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/vmx: fix old-style function declaration (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix empty-body warnings (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Fix kernel info-leak when enabling KVM_CAP_HYPERV_ENLIGHTENED_VMCS more than once (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Replace spin_is_locked() with lockdep (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Move and undef TRACE_INCLUDE_PATH/FILE (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Use exported tb_to_ns() function in decrementer emulation (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: Fix -Wformat warnings (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: fix spelling mistake "Insufficent" -> "Insufficient" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "kvm: x86: optimize dr6 restore" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Optimize clearing TCEs for sparse tables (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: tweak shadow fields (Vitaly Kuznetsov) [1692804] - [tools] selftests/kvm: add missing executables to .gitignore (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Don't use streamlined entry path on early POWER9 chips (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Enable 32 bits kvm vcpu events support (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Rename function kvm_arch_dev_ioctl_check_extension() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: enable nested virtualization by default (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Use 32bit xor to clear registers in svm.c (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Introduce KVM_CAP_EXCEPTION_PAYLOAD (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Defer setting of DR6 until #DB delivery (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Defer setting of CR2 until #PF delivery (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Add payload operands to kvm_multiple_exception (Vitaly Kuznetsov) [1692804] - [x86] kvm: x86: Add exception payload fields to kvm_vcpu_events (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Add has_payload and payload to kvm_queued_exception (Vitaly Kuznetsov) [1692804] - [documentation] KVM: Documentation: Fix omission in struct kvm_vcpu_events (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: add Enlightened VMCS test (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: nested state migration for Enlightened VMCS (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: state_test: test bare VMXON migration (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyperv: don't clear VP assist pages on init (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: optimize prepare_vmcs02{, _full} for Enlightened VMCS case (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: implement enlightened VMPTRLD and VMCLEAR (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: add enlightened VMCS state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: add KVM_CAP_HYPERV_ENLIGHTENED_VMCS capability (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: refactor evmcs_sanitize_exec_ctrls() (Vitaly Kuznetsov) [1692804] - [virt] KVM: refine the comment of function gfn_to_hva_memslot_prot() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: reintroduce pte_list_remove, but including mmu_spte_clear_track_bits (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: rename pte_list_remove to __pte_list_remove (Vitaly Kuznetsov) [1692804] - [virt] kvm/x86 : add coalesced pio support (Vitaly Kuznetsov) [1692804] - [documentation] kvm/x86 : add document for coalesced mmio (Vitaly Kuznetsov) [1692804] - [kvm] kvm/x86 : fix some typo (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Change hv flush logic when ept tables are mismatched. (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Use 32bit xor to clear register (Vitaly Kuznetsov) [1692804] - [x86] KVM/x86: Use assembly instruction mnemonics instead of .byte streams (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Fix invvpid and invept register operand size in 64-bit mode (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: check if MMU reconfiguration is needed in init_kvm_nested_mmu() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: check if tdp/shadow MMU reconfiguration is needed (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: introduce source data cache for kvm_init_shadow_ept_mmu() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: make space for source data caching in struct kvm_mmu (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: get rid of redundant kvm_mmu_setup() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: introduce guest_mmu (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu.c: add kvm_mmu parameter to kvm_mmu_free_roots() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu.c: set get_pdptr hook in kvm_init_shadow_ept_mmu() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: make vcpu->mmu a pointer to the current MMU (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: optimize dr6 restore (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: optimize sparse VP set processing (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: fix 'tlb_lush' typo (Vitaly Kuznetsov) [1692804] - [virt] vgic: Add support for 52bit guest physical address (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: WARN if nested run hits VMFail with early consistency checks enabled (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: add option to perform early consistency checks via H/W (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: write HOST_IA32_EFER in vmx_set_constant_host_state() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: call kvm_skip_emulated_instruction in nested_vmx_{fail, succeed} (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do not call nested_vmx_succeed() for consistency check VMExit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do not skip VMEnter instruction that succeeds (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do early preparation of vmcs02 before check_vmentry_postreqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: initialize vmcs02 constant exactly once (per VMCS) (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: split pieces of prepare_vmcs02() to prepare_vmcs02_early() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: remove ASSERT() on vmx->pml_pg validity (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vVMX: rename label for post-enter_guest_mode consistency check (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: assimilate nested_vmx_entry_failure() into nested_vmx_enter_non_root_mode() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: rename enter_vmx_non_root_mode to nested_vmx_enter_non_root_mode (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: try to set EFER bits correctly when initializing controls (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: do not unconditionally clear EFER switching (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: reset cache/shadows when switching loaded VMCS (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: use vm_exit_controls_init() to write exit controls for vmcs02 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: move vmcs12 EPTP consistency check to check_vmentry_prereqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: move host EFER consistency checks to VMFail path (Vitaly Kuznetsov) [1692804] - [virt] KVM: leverage change to adjust slots->used_slots in update_memslots() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: implement PV IPI send hypercalls (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: optimize kvm_hv_flush_tlb() for vp_index == vcpu_idx case (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: valid_bank_mask should be 'u64' (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: keep track of mismatched VP indexes (Vitaly Kuznetsov) [1692804] - [virt] KVM: x86: hyperv: optimize 'all cpus' case in kvm_hv_flush_tlb() (Vitaly Kuznetsov) [1692804] - [kvm] kvm/x86: return meaningful value from KVM_SIGNAL_MSI (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: move definition PT_MAX_HUGEPAGE_LEVEL and KVM_NR_PAGE_SIZES together (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Remve unused function is_external_interrupt(). (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: return 0 in case kvm_mmu_memory_cache has min number of objects (Vitaly Kuznetsov) [1692804] - [kvm] nVMX x86: Make nested_vmx_check_pml_controls() concise (Vitaly Kuznetsov) [1692804] - [x86] KVM: x86: adjust kvm_mmu_page member to save 8 bytes (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: support high GPAs in dirty_log_test (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: stop lying to aarch64 tests about PA-bits (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: also test 64K pages on aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: port dirty_log_test to aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: introduce new VM mode for 64K pages (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add vcpu support for aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add virt mem support for aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add vm_phy_pages_alloc (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: tidy up kvm_util (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add cscope make target (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: move arch-specific files to arch-specific locations (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: introduce ucall (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: vcpu_setup: set cr4.osfxsr (Vitaly Kuznetsov) [1692804] - [kvm] KVM: LAPIC: Tune lapic_timer_advance_ns automatically (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Do not flush TLB on L1<->L2 transitions if L1 uses VPID and EPT (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Flush linear and combined mappings on VPID02 related flushes (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Use correct VPID02 when emulating L1 INVVPID (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Flush TLB entries tagged by dest EPTP on L1<->L2 transitions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: rename KVM_GUEST_CR0_MASK tp KVM_VM_CR0_ALWAYS_OFF (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Remove redundand permission bits removal (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Propagate errors to the guest when failed instead of ignoring (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Provide mode where all vCPUs on a core must be the same VM (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S PR: Exiting split hack mode needs to fixup both PC and LR (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Remove some extra semicolon in kvm_target_cpu (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Validate all tces before updating tables (Vitaly Kuznetsov) [1692804] - [documentation] arm64: Add silicon-errata.txt entry for ARM erratum 1188873 (Vitaly Kuznetsov) [1692804] - [arm64] arm64: arch_timer: Add workaround for ARM erratum 1188873 (Vitaly Kuznetsov) [1692804] - [virt] signal/arm/kvm: Use send_sig_mceerr (Vitaly Kuznetsov) [1692804] - [arm64] arm64/cpufeatures: Introduce ESR_ELx_SYS64_ISS_RT() (Vitaly Kuznetsov) [1692804] - [kvm] signal/x86: Use send_sig_mceerr as apropriate (Vitaly Kuznetsov) [1692804] - [x86] x86/kvm: Use __bss_decrypted attribute in shared variables (Vitaly Kuznetsov) [1692804] - [x86] x86/mm: Add .bss..decrypted section to hold shared variables (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: Inject #UD for SGX ENCLS instruction in guest (Vitaly Kuznetsov) [1692804] - [x86] KVM: vmx: Add defines for SGX ENCLS exiting (Vitaly Kuznetsov) [1692804] - [documentation] KVM: Documentation: rename the capability of KVM_CAP_ARM_SET_SERROR_ESR (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Mark kvm_get_preset_lpj() as __init (Vitaly Kuznetsov) [1692804] - [virt] kvm: Don't open code task_pid in kvm_vcpu_ioctl (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Share the parts of get/set events useful to 32bit (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: export the capability to set guest SError syndrome (Vitaly Kuznetsov) [1692804] - [kvm] arm/arm64: KVM: Add KVM_GET/SET_VCPU_EVENTS (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Switch kvmclock data to a PER_CPU variable (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Move kvmclock vsyscall param and init to kvmclock (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Mark variables __initdata and __ro_after_init (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Cleanup the code (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Decrapify kvm_register_clock() (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Remove page size requirement from wall_clock (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Remove memblock dependency (Vitaly Kuznetsov) [1692804] - [kvm] kvm/arm: use PSR_AA32 definitions (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Handle Set/Way CMOs as NOPs if FWB is present (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Add support for Stage-2 control of memory types and cacheability (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Handle mismatched cache type (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Fix mismatched cache line size detection (Vitaly Kuznetsov) [1692804]- [lib] rhel-kabi: Add RH_KABI_FORCE_CHANGE() to radix-tree and idr functions (Don Dutile) [1692079] - [lib] XArray: Fix xa_reserve for 2-byte aligned entries (Don Dutile) [1692079] - [lib] XArray: Fix xa_erase of 2-byte aligned entries (Don Dutile) [1692079] - [lib] XArray: Use xa_cmpxchg to implement xa_reserve (Don Dutile) [1692079] - [lib] XArray: Fix xa_release in allocating arrays (Don Dutile) [1692079] - [lib] XArray: Mark xa_insert and xa_reserve as must_check (Don Dutile) [1692079] - [lib] XArray: Add cyclic allocation (Don Dutile) [1692079] - [lib] XArray: Redesign xa_alloc API (Don Dutile) [1692079] - [lib] XArray: Add support for 1s-based allocation (Don Dutile) [1692079] - [lib] XArray: Change xa_insert to return -EBUSY (Don Dutile) [1692079] - [lib] XArray: Update xa_erase family descriptions (Don Dutile) [1692079] - [lib] XArray tests: RCU lock prohibits GFP_KERNEL (Don Dutile) [1692079] - [include] XArray: Fix an arithmetic error in xa_is_err (Don Dutile) [1692079] - [lib] XArray tests: Check mark 2 gets squashed (Don Dutile) [1692079] - [include] XArray: Fix typo in comment (Don Dutile) [1692079] - [lib] XArray: Honour reserved entries in xa_insert (Don Dutile) [1692079] - [lib] XArray: Permit storing 2-byte-aligned pointers (Don Dutile) [1692079] - [lib] XArray: Change xa_for_each iterator (Don Dutile) [1692079] - [lib] XArray: Turn xa_init_flags into a static inline (Don Dutile) [1692079] - [lib] XArray tests: Add RCU locking (Don Dutile) [1692079] - [lib] XArray: Fix xa_alloc when id exceeds max (Don Dutile) [1692079] - [lib] XArray tests: Check iterating over multiorder entries (Don Dutile) [1692079] - [lib] XArray tests: Handle larger indices more elegantly (Don Dutile) [1692079] - [include] XArray: Add xa_cmpxchg_irq and xa_cmpxchg_bh (Don Dutile) [1692079] - [tools] radix tree: Don't return retry entries from lookup (Don Dutile) [1692079] - [lib] XArray tests: Add missing locking (Don Dutile) [1692079] - [lib] XArray tests: Correct some 64-bit assumptions (Don Dutile) [1692079] - [lib] XArray: Correct xa_store_range (Don Dutile) [1692079] - [lib] XArray: Fix Documentation (Don Dutile) [1692079] - [lib] XArray: Handle NULL pointers differently for allocation (Don Dutile) [1692079] - [lib] XArray: Unify xa_store and __xa_store (Don Dutile) [1692079] - [include] XArray: Add xa_store_bh() and xa_store_irq() (Don Dutile) [1692079] - [lib] XArray: Turn xa_erase into an exported function (Don Dutile) [1692079] - [lib] XArray: Unify xa_cmpxchg and __xa_cmpxchg (Don Dutile) [1692079] - [lib] XArray: Regularise xa_reserve (Don Dutile) [1692079] - [lib] XArray: Export __xa_foo to non-GPL modules (Don Dutile) [1692079] - [lib] XArray: Fix xa_for_each with a single element at 0 (Don Dutile) [1692079] - [lib] xarray: Add range store functionality (Don Dutile) [1692079] - [lib] xarray: Move multiorder_check to in-kernel tests (Don Dutile) [1692079] - [lib] xarray: Move multiorder_shrink to kernel tests (Don Dutile) [1692079] - [lib] xarray: Move multiorder account test in-kernel (Don Dutile) [1692079] - [tools] radix tree test suite: Convert iteration test to XArray (Don Dutile) [1692079] - [tools] radix tree test suite: Convert tag_tagged_items to XArray (Don Dutile) [1692079] - [tools] radix tree test suite: Convert regression1 to XArray (Don Dutile) [1692079] - [lib] ida: Convert to XArray (Don Dutile) [1692079] - [lib] xarray: Track free entries in an XArray (Don Dutile) [1692079] - [lib] xarray: Add xa_reserve and xa_release (Don Dutile) [1692079] - [lib] xarray: Add xas_create_range (Don Dutile) [1692079] - [lib] xarray: Add xas_for_each_conflict (Don Dutile) [1692079] - [lib] xarray: Step through an XArray (Don Dutile) [1692079] - [lib] xarray: Destroy an XArray (Don Dutile) [1692079] - [lib] xarray: Extract entries from an XArray (Don Dutile) [1692079] - [lib] xarray: Add XArray iterators (Don Dutile) [1692079] - [lib] xarray: Add XArray conditional store operations (Don Dutile) [1692079] - [tools] xarray: Add XArray unconditional store operations (Don Dutile) [1692079] - [tools] xarray: Add XArray marks (Don Dutile) [1692079] - [tools] xarray: Add XArray load operation (Don Dutile) [1692079] - [documentation] xarray: Add documentation (Don Dutile) [1692079] - [include] xarray: Define struct xa_node (Don Dutile) [1692079] - [tools] xarray: Add definition of struct xarray (Don Dutile) [1692079] - [lib] test_ida: Fix lockdep warning (Don Dutile) [1692079] - [lib] xarray: Change definition of sibling entries (Don Dutile) [1692079] - [mm] xarray: Replace exceptional entries (Don Dutile) [1692079] - [lib] idr: Permit any valid kernel pointer to be stored (Don Dutile) [1692079] - [pci] Update email address (Don Dutile) [1692079] - [lib] ida: Change ida_get_new_above to return the id (Don Dutile) [1692079] - [lib] ida: Remove old API (Don Dutile) [1692079] - [target] target/iscsi: Allocate session IDs from an IDA (Don Dutile) [1692079] - [target] iscsi target: fix session creation failure handling (Don Dutile) [1692079] - [drm] drm/vmwgfx: Return 0 when gmrid::get_node runs out of ID's (Don Dutile) [1692079] - [drm] drm/vmwgfx: Convert to new IDA API (Don Dutile) [1692079] - [dma] dmaengine: Convert to new IDA API (Don Dutile) [1692079] - [powerpc] ppc: Convert vas ID allocation to new IDA API (Don Dutile) [1692079] - [media] media: Convert entity ID allocation to new IDA API (Don Dutile) [1692079] - [mm] ppc: Convert mmu context allocation to new IDA API (Don Dutile) [1692079] - [net] Convert net_namespace to new IDA API (Don Dutile) [1692079] - [misc] cb710: Convert to new IDA API (Don Dutile) [1692079] - [block] rsxx: Convert to new IDA API (Don Dutile) [1692079] - [scsi] osd: Convert to new IDA API (Don Dutile) [1692079] - [scsi] sd: Convert to new IDA API (Don Dutile) [1692079] - [fs] devpts: Convert to new IDA API (Don Dutile) [1692079] - [fs] fs: Convert namespace IDAs to new API (Don Dutile) [1692079] - [fs] fs: Convert unnamed_dev_ida to new API (Don Dutile) [1692079] - [lib] test_ida: check_ida_destroy and check_ida_alloc (Don Dutile) [1692079] - [lib] test_ida: Convert check_ida_conv to new API (Don Dutile) [1692079] - [lib] test_ida: Move ida_check_max (Don Dutile) [1692079] - [lib] test_ida: Move ida_check_leaf (Don Dutile) [1692079] - [tools] idr-test: Convert ida_check_nomem to new API (Don Dutile) [1692079] - [tools] ida: Start new test_ida module (Don Dutile) [1692079] - [lib] ida: Lock the IDA in ida_destroy (Don Dutile) [1692079] - [lib] radix-tree: Fix UBSAN warning (Don Dutile) [1692079] - [include] rh_kabi: Indirect EXTEND macros so nesting of other macros will resolve. (Don Dutile) [1692079] - [s390] s390/pkey: add one more argument space for debug feature entry (Philipp Rudo) [1710033] - [s390] s390/zcrypt: fix possible deadlock situation on ap queue remove (Philipp Rudo) [1710033] - [s390] zcrypt: handle AP Info notification from CHSC SEI command (Philipp Rudo) [1710033] - [s390] s390/zcrypt: revisit ap device remove procedure (Philipp Rudo) [1710033] - [s390] pkey: Indicate old mkvp only if old and current mkvp are different (Philipp Rudo) [1710033] - [s390] s390/zcrypt: use new state UNBOUND during queue driver rebind (Philipp Rudo) [1710033] - [s390] s390/zcrypt: fix specification exception on z196 during ap probe (Philipp Rudo) [1710033] - [s390] s390/zcrypt: rework ap scan bus code (Philipp Rudo) [1710033] - [s390] s390/zcrypt: make sysfs reset attribute trigger queue reset (Philipp Rudo) [1710033] - [s390] s390/zcrypt: improve special ap message cmd handling (Philipp Rudo) [1710033] - [s390] s390: vfio-ap: include for test_facility() (Philipp Rudo) [1710033] - [fs] flexfiles: enforce per-mirror stateid only for v4 DSes (Scott Mayhew) [1709556] - [fs] flexfiles: use per-mirror specified stateid for IO (Scott Mayhew) [1709556] - [powerpc] powerpc/pseries: Fix build break due to pnv_npu2_init() (Sam Bobroff) [1704567] - [powerpc] powerpc/powernv/sriov: Register IOMMU groups for VFs (Sam Bobroff) [1704567] - [powerpc] powerpc/powernv/npu: Allocate enough memory in pnv_try_setup_npu_table_group() (Sam Bobroff) [1704567] - [powerpc] powerpc/powernv/npu: Fix oops in pnv_try_setup_npu_table_group() (Sam Bobroff) [1704567] - [mm] mm: defer ZONE_DEVICE page initialization to the point where we init pgmap (Waiman Long) [1666538 1634343] - [mm] mm: create non-atomic version of SetPageReserved for init use (Waiman Long) [1666538 1634343] - [mm] mm: provide kernel parameter to allow disabling page init poisoning (Waiman Long) [1666538 1634343] - [x86] x86/resctrl: Initialize a new resource group with default MBA values (David Arcari) [1688127] - [x86] x86/resctrl: Move per RDT domain initialization to a separate function (David Arcari) [1688127] - [x86] x86/resctrl: Do not repeat rdtgroup mode initialization (David Arcari) [1688127] - [x86] x86/resctrl: Fix rdt_find_domain() return value and checks (David Arcari) [1688127] - [x86] x86/resctrl: Use rdt_last_cmd_puts() where possible (David Arcari) [1688127]- [s390] s390/pci: map IOV resources (Philipp Rudo) [1659411] - [powerpc] powerpc/book3s/64: check for NULL pointer in pgd_alloc() (Steve Best) [1710310] - [md] dm thin metadata: do not write metadata if no changes occurred (Mike Snitzer) [1710030] - [md] dm thin metadata: add wrappers for managing write locking of metadata (Mike Snitzer) [1710030] - [md] dm thin metadata: check __commit_transaction()'s return (Mike Snitzer) [1710030] - [md] dm space map common: zero entire ll_disk (Mike Snitzer) [1710030] - [powerpc] powerpc/tm: Fix stack pointer corruption (Desnes Augusto Nunes do Rosario) [1707635] - [pci] PCI/MSI: Remove obsolete sanity checks for multiple interrupt sets (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Remove the leftovers of the original set support (Prarit Bhargava) [1686678] - [nvme] nvme-pci: Simplify interrupt allocation (Prarit Bhargava) [1686678] - [include] genirq/affinity: Add new callback for (re)calculating interrupt sets (Prarit Bhargava) [1686678] - [nvme] genirq/affinity: Store interrupt sets size in struct irq_affinity (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Code consolidation (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Move allocation of 'node_to_cpumask' to irq_build_affinity_masks() (Prarit Bhargava) [1686678] - [kernel] genirq/irqdesc: Fix double increment in alloc_descs() (Prarit Bhargava) [1686678] - [include] genirq: Fix the kerneldoc comment for struct irq_affinity_desc (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Add is_managed to struct irq_affinity_desc (Prarit Bhargava) [1686678] - [kernel] genirq/core: Introduce struct irq_affinity_desc (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Remove excess indentation (Prarit Bhargava) [1686678]- [md] dm: make sure to obey max_io_len_target_boundary (Mike Snitzer) [1712607]- [mm] x86/dump_pagetables: Fix LDT remap address marker (Baoquan He) [1639560] - [x86] x86/mm: Fix guard hole handling (Baoquan He) [1639560] - [x86] x86/mm: Move LDT remap out of KASLR region on 5-level paging (Baoquan He) [1639560] - [x86] x86/ldt: Define LDT_END_ADDR (Baoquan He) [1639560] - [mm] x86/ldt: Reserve address-space range on 32 bit for the LDT (Baoquan He) [1639560] - [documentation] x86/mm/doc: Enhance the x86-64 virtual memory layout descriptions (Baoquan He) [1639560] - [documentation] x86/mm/doc: Clean up the x86-64 virtual memory layout descriptions (Baoquan He) [1639560] - [fs] cifs: fix page reference leak with readv/writev (Leif Sahlberg) [1708033] - [fs] cifs: do not attempt cifs operation on smb2+ rename error (Leif Sahlberg) [1708033] - [fs] cifs: fix memory leak in SMB2_read (Leif Sahlberg) [1708033] - [fs] CIFS: keep FileInfo handle live during oplock break (Leif Sahlberg) [1708033] - [fs] cifs: fix handle leak in smb2_query_symlink() (Leif Sahlberg) [1708033] - [fs] cifs: Fix lease buffer length error (Leif Sahlberg) [1708033] - [fs] cifs: Fix use-after-free in SMB2_read (Leif Sahlberg) [1708033] - [fs] cifs: Fix use-after-free in SMB2_write (Leif Sahlberg) [1708033] - [fs] cifs: a smb2_validate_and_copy_iov failure does not mean the handle is invalid. (Leif Sahlberg) [1708033] - [fs] SMB3: Allow persistent handle timeout to be configurable on mount (Leif Sahlberg) [1708033] - [fs] smb3: Fix enumerating snapshots to Azure (Leif Sahlberg) [1708033] - [fs] cifs: fix kref underflow in close_shroot() (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] SMB3: Fix SMB3.1.1 guest mounts to Samba (Leif Sahlberg) [1708033] - [fs] cifs: Fix slab-out-of-bounds when tracing SMB tcon (Leif Sahlberg) [1708033] - [fs] cifs: allow guest mounts to work for smb3.11 (Leif Sahlberg) [1708033] - [fs] fix incorrect error code mapping for OBJECTID_NOT_FOUND (Leif Sahlberg) [1708033] - [fs] cifs: fix that return -EINVAL when do dedupe operation (Leif Sahlberg) [1708033] - [fs] CIFS: Fix an issue with re-sending rdata when transport returning -EAGAIN (Leif Sahlberg) [1708033] - [fs] CIFS: Fix an issue with re-sending wdata when transport returning -EAGAIN (Leif Sahlberg) [1708033] - [fs] CIFS: fix POSIX lock leak and invalid ptr deref (Leif Sahlberg) [1708033] - [fs] SMB3: Allow SMB3 FSCTL queries to be sent to server from tools (Leif Sahlberg) [1708033] - [fs] cifs: fix incorrect handling of smb2_set_sparse() return in smb3_simple_falloc (Leif Sahlberg) [1708033] - [fs] smb2: fix typo in definition of a few error flags (Leif Sahlberg) [1708033] - [fs] CIFS: make mknod() an smb_version_op (Leif Sahlberg) [1708033] - [documentation] cifs: minor documentation updates (Leif Sahlberg) [1708033] - [documentation] cifs: minor updates to documentation (Leif Sahlberg) [1708033] - [fs] cifs: remove unused value pointed out by Coverity (Leif Sahlberg) [1708033] - [fs] SMB3: passthru query info doesn't check for SMB3 FSCTL passthru (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic tracepoints for simple fallocate and zero range (Leif Sahlberg) [1708033] - [fs] cifs: fix smb3_zero_range so it can expand the file-size when required (Leif Sahlberg) [1708033] - [fs] cifs: add SMB2_ioctl_init/free helpers to be used with compounding (Leif Sahlberg) [1708033] - [fs] smb3: Add dynamic trace points for various compounded smb3 ops (Leif Sahlberg) [1708033] - [fs] cifs: cache FILE_ALL_INFO for the shared root handle (Leif Sahlberg) [1708033] - [fs] smb3: display volume serial number for shares in /proc/fs/cifs/DebugData (Leif Sahlberg) [1708033] - [fs] cifs: simplify how we handle credits in compound_send_recv() (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic tracepoint for timeout waiting for credits (Leif Sahlberg) [1708033] - [fs] smb3: display security information in /proc/fs/cifs/DebugData more accurately (Leif Sahlberg) [1708033] - [fs] cifs: add a timeout argument to wait_for_free_credits (Leif Sahlberg) [1708033] - [fs] cifs: prevent starvation in wait_for_free_credits for multi-credit requests (Leif Sahlberg) [1708033] - [fs] cifs: wait_for_free_credits() make it possible to wait for >=1 credits (Leif Sahlberg) [1708033] - [fs] cifs: pass flags down into wait_for_free_credits() (Leif Sahlberg) [1708033] - [fs] cifs: change wait_for_free_request() to take flags as argument (Leif Sahlberg) [1708033] - [fs] fs: cifs: Kconfig: pedantic formatting (Leif Sahlberg) [1708033] - [fs] smb3: request more credits on normal (non-large read/write) ops (Leif Sahlberg) [1708033] - [fs] CIFS: Return -EAGAIN instead of -ENOTSOCK (Leif Sahlberg) [1708033] - [fs] CIFS: Only send SMB2_NEGOTIATE command on new TCP connections (Leif Sahlberg) [1708033] - [fs] CIFS: Fix read after write for files with read caching (Leif Sahlberg) [1708033] - [fs] smb3: for kerberos mounts display the credential uid used (Leif Sahlberg) [1708033] - [fs] cifs: use correct format characters (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic trace point for query_info_enter/done (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic trace point for smb3_cmd_enter (Leif Sahlberg) [1708033] - [fs] smb3: improve dynamic tracing of open and posix mkdir (Leif Sahlberg) [1708033] - [fs] smb3: add missing read completion trace point (Leif Sahlberg) [1708033] - [fs] smb3: Add tracepoints for read, write and query_dir enter (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoints for query dir (Leif Sahlberg) [1708033] - [fs] smb3: Update POSIX negotiate context with POSIX ctxt GUID (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] CIFS: Try to acquire credits at once for compound requests (Leif Sahlberg) [1708033] - [fs] CIFS: Return error code when getting file handle for writeback (Leif Sahlberg) [1708033] - [fs] CIFS: Move open file handling to writepages (Leif Sahlberg) [1708033] - [fs] CIFS: Move unlocking pages from wdata_send_pages() (Leif Sahlberg) [1708033] - [fs] CIFS: Find and reopen a file before get MTU credits in writepages (Leif Sahlberg) [1708033] - [fs] CIFS: Reopen file before get SMB2 MTU credits for async IO (Leif Sahlberg) [1708033] - [fs] CIFS: Remove custom credit adjustments for SMB2 async IO (Leif Sahlberg) [1708033] - [fs] CIFS: Adjust MTU credits before reopening a file (Leif Sahlberg) [1708033] - [fs] CIFS: Check for reconnects before sending compound requests (Leif Sahlberg) [1708033] - [fs] CIFS: Check for reconnects before sending async requests (Leif Sahlberg) [1708033] - [fs] CIFS: Respect reconnect in non-MTU credits calculations (Leif Sahlberg) [1708033] - [fs] CIFS: Respect reconnect in MTU credits calculations (Leif Sahlberg) [1708033] - [fs] CIFS: Set reconnect instance to one initially (Leif Sahlberg) [1708033] - [fs] CIFS: Respect SMB2 hdr preamble size in read responses (Leif Sahlberg) [1708033] - [fs] CIFS: Count SMB3 credits for malformed pending responses (Leif Sahlberg) [1708033] - [fs] CIFS: Do not log credits when unmounting a share (Leif Sahlberg) [1708033] - [fs] CIFS: Always reset read error to -EIO if no response (Leif Sahlberg) [1708033] - [fs] cifs: Accept validate negotiate if server return NT_STATUS_NOT_SUPPORTED (Leif Sahlberg) [1708033] - [fs] CIFS: Do not skip SMB2 message IDs on send failures (Leif Sahlberg) [1708033] - [fs] smb3: request more credits on tree connect (Leif Sahlberg) [1708033] - [fs] smb3: make default i/o size for smb3 mounts larger (Leif Sahlberg) [1708033] - [fs] CIFS: Do not reset lease state to NONE on lease break (Leif Sahlberg) [1708033] - [fs] smb3: fix bytes_read statistics (Leif Sahlberg) [1708033] - [fs] cifs: return -ENODATA when deleting an xattr that does not exist (Leif Sahlberg) [1708033] - [fs] cifs: add credits from unmatched responses/messages (Leif Sahlberg) [1708033] - [fs] cifs: replace snprintf with scnprintf (Leif Sahlberg) [1708033] - [fs] cifs: Fix NULL pointer dereference of devname (Leif Sahlberg) [1708033] - [fs] CIFS: Fix leaking locked VFS cache pages in writeback retry (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] CIFS: fix use-after-free of the lease keys (Leif Sahlberg) [1708033] - [fs] CIFS: Do not consider -ENODATA as stat failure for reads (Leif Sahlberg) [1708033] - [fs] CIFS: Do not count -ENODATA as failure for query directory (Leif Sahlberg) [1708033] - [fs] CIFS: Fix trace command logging for SMB2 reads and writes (Leif Sahlberg) [1708033] - [fs] CIFS: Fix possible oops and memory leaks in async IO (Leif Sahlberg) [1708033] - [fs] cifs: limit amount of data we request for xattrs to CIFSMaxBufSize (Leif Sahlberg) [1708033] - [fs] cifs: fix computation for MAX_SMB2_HDR_SIZE (Leif Sahlberg) [1708033] - [fs] cifs: print CIFSMaxBufSize as part of /proc/fs/cifs/DebugData (Leif Sahlberg) [1708033] - [fs] smb3: add credits we receive from oplock/break PDUs (Leif Sahlberg) [1708033] - [fs] CIFS: Fix mounts if the client is low on credits (Leif Sahlberg) [1708033] - [fs] CIFS: Do not assume one credit for async responses (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credit calculations in compound mid callback (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credit calculation for encrypted reads with errors (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credits calculations for reads with errors (Leif Sahlberg) [1708033] - [fs] CIFS: Do not reconnect TCP session in add_credits() (Leif Sahlberg) [1708033] - [fs] smb3: Cleanup license mess (Leif Sahlberg) [1708033] - [fs] CIFS: Fix possible hang during async MTU reads and writes (Leif Sahlberg) [1708033] - [fs] cifs: fix memory leak of an allocated cifs_ntsd structure (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] CIFS: Fix error paths in writeback code (Leif Sahlberg) [1708033] - [fs] CIFS: Move credit processing to mid callbacks for SMB3 (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credits calculation for cancelled requests (Leif Sahlberg) [1708033] - [fs] cifs: Fix potential OOB access of lock element array (Leif Sahlberg) [1708033] - [fs] cifs: Limit memory used by lock request calls to a page (Leif Sahlberg) [1708033] - [fs] cifs: move large array from stack to heap (Leif Sahlberg) [1708033] - [fs] CIFS: Do not hide EINTR after sending network packets (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credit computation for compounded requests (Leif Sahlberg) [1708033] - [fs] CIFS: Do not set credits to 1 if the server didn't grant anything (Leif Sahlberg) [1708033] - [fs] CIFS: Fix adjustment of credits for MTU requests (Leif Sahlberg) [1708033] - [fs] cifs: Fix a tiny potential memory leak (Leif Sahlberg) [1708033] - [fs] cifs: Fix a debug message (Leif Sahlberg) [1708033] - [fs] smb3: add smb3.1.1 to default dialect list (Leif Sahlberg) [1708033] - [fs] cifs: fix confusing warning message on reconnect (Leif Sahlberg) [1708033] - [fs] smb3: fix large reads on encrypted connections (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] cifs: we can not use small padding iovs together with encryption (Leif Sahlberg) [1708033] - [fs] cifs: Minor Kconfig clarification (Leif Sahlberg) [1708033] - [fs] cifs: Always resolve hostname before reconnecting (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in cifs_reconnect_tcon() (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in smb2_reconnect() (Leif Sahlberg) [1708033] - [fs] cifs: Only free DFS target list if we actually got one (Leif Sahlberg) [1708033] - [fs] cifs: start DFS cache refresher in cifs_mount() (Leif Sahlberg) [1708033] - [fs] cifs: Use GFP_ATOMIC when a lock is held in cifs_mount() (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in cifs_reconnect() (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in cifs_mount() (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'sep' (Leif Sahlberg) [1708033] - [fs] cifs: Make use of DFS cache to get new DFS referrals (Leif Sahlberg) [1708033] - [fs] cifs: check kzalloc return (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'server' (Leif Sahlberg) [1708033] - [fs] cifs: Use kzfree() to free password (Leif Sahlberg) [1708033] - [fs] cifs: Fix to use kmem_cache_free() instead of kfree() (Leif Sahlberg) [1708033] - [fs] cifs: update for current_kernel_time64() removal (Leif Sahlberg) [1708033] - [fs] cifs: Add DFS cache routines (Leif Sahlberg) [1708033] - [fs] cifs: Save TTL value when parsing DFS referrals (Leif Sahlberg) [1708033] - [fs] cifs: auto disable 'serverino' in dfs mounts (Leif Sahlberg) [1708033] - [fs] cifs: Make devname param optional in cifs_compose_mount_options() (Leif Sahlberg) [1708033] - [fs] cifs: Skip any trailing backslashes from UNC (Leif Sahlberg) [1708033] - [fs] cifs: Refactor out cifs_mount() (Leif Sahlberg) [1708033] - [fs] CIFS: Fix error mapping for SMB2_LOCK command which caused OFD lock problem (Leif Sahlberg) [1708033] - [fs] CIFS: return correct errors when pinning memory failed for direct I/O (Leif Sahlberg) [1708033] - [fs] CIFS: use the correct length when pinning memory for direct I/O for write (Leif Sahlberg) [1708033] - [fs] cifs: check ntwrk_buf_start for NULL before dereferencing it (Leif Sahlberg) [1708033] - [fs] cifs: remove coverity warning in calc_lanman_hash (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'smb_buf' (Leif Sahlberg) [1708033] - [fs] cifs: suppress some implicit-fallthrough warnings (Leif Sahlberg) [1708033] - [fs] cifs: change smb2_query_eas to use the compound query-info helper (Leif Sahlberg) [1708033] - [fs] Add vers=3.0.2 as a valid option for SMBv3.0.2 (Leif Sahlberg) [1708033] - [fs] cifs: create a helper function for compound query_info (Leif Sahlberg) [1708033] - [fs] cifs: address trivial coverity warning (Leif Sahlberg) [1708033] - [fs] cifs: smb2 commands can not be negative, remove confusing check (Leif Sahlberg) [1708033] - [fs] cifs: use a compound for setting an xattr (Leif Sahlberg) [1708033] - [fs] cifs: clean up indentation, replace spaces with tab (Leif Sahlberg) [1708033] - [fs] smb3: Fix rmdir compounding regression to strict servers (Leif Sahlberg) [1708033] - [fs] CIFS: Avoid returning EBUSY to upper layer VFS (Leif Sahlberg) [1708033] - [fs] cifs: Fix separator when building path from dentry (Leif Sahlberg) [1708033] - [fs] cifs: In Kconfig CONFIG_CIFS_POSIX needs depends on legacy (insecure cifs) (Leif Sahlberg) [1708033] - [fs] cifs: fix signed/unsigned mismatch on aio_read patch (Leif Sahlberg) [1708033] - [fs] cifs: don't dereference smb_file_target before null check (Leif Sahlberg) [1708033] - [fs] CIFS: Add direct I/O functions to file_operations (Leif Sahlberg) [1708033] - [fs] CIFS: Add support for direct I/O write (Leif Sahlberg) [1708033] - [fs] CIFS: Add support for direct I/O read (Leif Sahlberg) [1708033] - [fs] smb3: missing defines and structs for reparse point handling (Leif Sahlberg) [1708033] - [fs] smb3: allow more detailed protocol info on open files for debugging (Leif Sahlberg) [1708033] - [fs] smb3: on kerberos mount if server doesn't specify auth type use krb5 (Leif Sahlberg) [1708033] - [fs] smb3: add trace point for tree connection (Leif Sahlberg) [1708033] - [fs] cifs: fix spelling mistake, EACCESS -> EACCES (Leif Sahlberg) [1708033] - [fs] cifs: fix return value for cifs_listxattr (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number for cifs.ko to 2.14 (Leif Sahlberg) [1708033] - [fs] smb3: add debug for unexpected mid cancellation (Leif Sahlberg) [1708033] - [fs] cifs: allow calling SMB2_xxx_free(NULL) (Leif Sahlberg) [1708033] - [fs] smb3 - clean up debug output displaying network interfaces (Leif Sahlberg) [1708033] - [fs] smb3: show number of current open files in /proc/fs/cifs/Stats (Leif Sahlberg) [1708033] - [fs] cifs: add support for ioctl on directories (Leif Sahlberg) [1708033] - [fs] cifs: fallback to older infolevels on findfirst queryinfo retry (Leif Sahlberg) [1708033] - [fs] smb3: do not attempt cifs operation in smb3 query info error path (Leif Sahlberg) [1708033] - [fs] smb3: send backup intent on compounded query info (Leif Sahlberg) [1708033] - [fs] cifs: track writepages in vfs operation counters (Leif Sahlberg) [1708033] - [fs] smb2: fix uninitialized variable bug in smb2_ioctl_query_info (Leif Sahlberg) [1708033] - [fs] cifs: add IOCTL for QUERY_INFO passthrough to userspace (Leif Sahlberg) [1708033] - [fs] cifs: minor clarification in comments (Leif Sahlberg) [1708033] - [fs] CIFS: Print message when attempting a mount (Leif Sahlberg) [1708033] - [fs] CIFS: Adds information-level logging function (Leif Sahlberg) [1708033] - [fs] cifs: OFD locks do not conflict with eachothers (Leif Sahlberg) [1708033] - [fs] CIFS: SMBD: Do not call ib_dereg_mr on invalidated memory registration (Leif Sahlberg) [1708033] - [fs] CIFS: pass page offsets on SMB1 read/write (Leif Sahlberg) [1708033] - [fs] fs/cifs: fix uninitialised variable warnings (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint for sending lease break responses to server (Leif Sahlberg) [1708033] - [fs] cifs: do not return atime less than mtime (Leif Sahlberg) [1708033] - [fs] smb3: update default requested iosize to 4MB from 1MB for recent dialects (Leif Sahlberg) [1708033] - [fs] smb3: Add debug message later in smb2/smb3 reconnect path (Leif Sahlberg) [1708033] - [fs] CIFS: make 'nodfs' mount opt a superblock flag (Leif Sahlberg) [1708033] - [fs] smb3: track the instance of each session for debugging (Leif Sahlberg) [1708033] - [fs] smb3: minor missing defines relating to reparse points (Leif Sahlberg) [1708033] - [fs] smb3: add way to control slow response threshold for logging and stats (Leif Sahlberg) [1708033] - [fs] cifs: minor updates to module description for cifs.ko (Leif Sahlberg) [1708033] - [fs] cifs: protect against server returning invalid file system block size (Leif Sahlberg) [1708033] - [fs] smb3: allow stats which track session and share reconnects to be reset (Leif Sahlberg) [1708033] - [fs] SMB3: Backup intent flag missing from compounded ops (Leif Sahlberg) [1708033] - [fs] cifs: create a define for the max number of iov we need for a SMB2 set_info (Leif Sahlberg) [1708033] - [fs] cifs: change SMB2_OP_RENAME and SMB2_OP_HARDLINK to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: remove the is_falloc argument to SMB2_set_eof (Leif Sahlberg) [1708033] - [fs] cifs: change SMB2_OP_SET_INFO to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: change SMB2_OP_SET_EOF to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: make rmdir() use compounding (Leif Sahlberg) [1708033] - [fs] cifs: create helpers for SMB2_set_info_init/free() (Leif Sahlberg) [1708033] - [fs] cifs: change unlink to use a compound (Leif Sahlberg) [1708033] - [fs] cifs: change mkdir to use a compound (Leif Sahlberg) [1708033] - [fs] cifs: add a smb2_compound_op and change QUERY_INFO to use it (Leif Sahlberg) [1708033] - [fs] cifs: fix a credits leak for compund commands (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint to catch cases where credit refund of failed op overlaps reconnect (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'cifs_sb' (Leif Sahlberg) [1708033] - [fs] cifs: Use kmemdup rather than duplicating its implementation in smb311_posix_mkdir() (Leif Sahlberg) [1708033] - [fs] smb3: do not display confusing message on mount to Azure servers (Leif Sahlberg) [1708033] - [fs] smb3: fix lease break problem introduced by compounding (Leif Sahlberg) [1708033] - [fs] cifs: only wake the thread for the very last PDU in a compound (Leif Sahlberg) [1708033] - [fs] cifs: add a warning if we try to to dequeue a deleted mid (Leif Sahlberg) [1708033] - [fs] smb2: fix missing files in root share directory listing (Leif Sahlberg) [1708033] - [fs] cifs: read overflow in is_valid_oplock_break() (Leif Sahlberg) [1708033] - [fs] cifs: integer overflow in in SMB2_ioctl() (Leif Sahlberg) [1708033] - [fs] CIFS: fix wrapping bugs in num_entries() (Leif Sahlberg) [1708033] - [fs] cifs: prevent integer overflow in nxt_dir_entry() (Leif Sahlberg) [1708033] - [fs] fs/cifs: suppress a string overflow warning (Leif Sahlberg) [1708033] - [fs] cifs: connect to servername instead of IP for IPC$ share (Leif Sahlberg) [1708033] - [fs] smb3: check for and properly advertise directory lease support (Leif Sahlberg) [1708033] - [fs] smb3: minor debugging clarifications in rfc1001 len processing (Leif Sahlberg) [1708033] - [fs] SMB3: Backup intent flag missing for directory opens with backupuid mounts (Leif Sahlberg) [1708033] - [fs] fs/cifs: don't translate SFM_SLASH (U+F026) to backslash (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number for cifs.ko to 2.12 (Leif Sahlberg) [1708033] - [fs] cifs: check kmalloc before use (Leif Sahlberg) [1708033] - [fs] cifs: check if SMB2 PDU size has been padded and suppress the warning (Leif Sahlberg) [1708033] - [fs] cifs: create a define for how many iovs we need for an SMB2_open() (Leif Sahlberg) [1708033] - [fs] smb3: create smb3 equivalent alias for cifs pseudo-xattrs (Leif Sahlberg) [1708033] - [fs] smb3: allow previous versions to be mounted with snapshot= mount parm (Leif Sahlberg) [1708033] - [fs] cifs: don't show domain= in mount output when domain is empty (Leif Sahlberg) [1708033] - [fs] cifs: add missing support for ACLs in SMB 3.11 (Leif Sahlberg) [1708033] - [fs] smb3: enumerating snapshots was leaving part of the data off end (Leif Sahlberg) [1708033] - [fs] cifs: update smb2_queryfs() to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: update receive_encrypted_standard to handle compounded responses (Leif Sahlberg) [1708033] - [fs] cifs: create SMB2_open_init()/SMB2_open_free() helpers. (Leif Sahlberg) [1708033] - [fs] cifs: add SMB2_query_info_[init|free]() (Leif Sahlberg) [1708033] - [fs] cifs: add SMB2_close_init()/SMB2_close_free() (Leif Sahlberg) [1708033] - [fs] smb3: display stats counters for number of slow commands (Leif Sahlberg) [1708033] - [fs] CIFS: fix uninitialized ptr deref in smb2 signing (Leif Sahlberg) [1708033] - [fs] smb3: Do not send SMB3 SET_INFO if nothing changed (Leif Sahlberg) [1708033] - [fs] smb3: fix minor debug output for CONFIG_CIFS_STATS (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint for slow responses (Leif Sahlberg) [1708033] - [fs] cifs: add compound_send_recv() (Leif Sahlberg) [1708033] - [fs] cifs: make smb_send_rqst take an array of requests (Leif Sahlberg) [1708033] - [fs] cifs: update init_sg, crypt_message to take an array of rqst (Leif Sahlberg) [1708033] - [fs] smb3: fix reset of bytes read and written stats (Leif Sahlberg) [1708033] - [fs] smb3: display bytes_read and bytes_written in smb3 stats (Leif Sahlberg) [1708033] - [fs] cifs: simple stats should always be enabled (Leif Sahlberg) [1708033] - [fs] cifs: use a refcount to protect open/closing the cached file handle (Leif Sahlberg) [1708033] - [fs] smb3: add reconnect tracepoints (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint for session expired or deleted (Leif Sahlberg) [1708033] - [fs] cifs: remove unused stats (Leif Sahlberg) [1708033] - [fs] smb3: don't request leases in symlink creation and query (Leif Sahlberg) [1708033] - [fs] smb3: remove per-session operations from per-tree connection stats (Leif Sahlberg) [1708033] - [fs] SMB3: Number of requests sent should be displayed for SMB3 not just CIFS (Leif Sahlberg) [1708033] - [fs] smb3: snapshot mounts are read-only and make sure info is displayable about the mount (Leif Sahlberg) [1708033] - [fs] smb3: remove noisy warning message on mount (Leif Sahlberg) [1708033] - [fs] cifs: add missing debug entries for kconfig options (Leif Sahlberg) [1708033] - [fs] smb3: fill in statfs fsid and correct namelen (Leif Sahlberg) [1708033] - [fs] cifs: Make sure all data pages are signed correctly (Leif Sahlberg) [1708033] - [fs] CIFS: fix memory leak and remove dead code (Leif Sahlberg) [1708033] - [fs] cifs: use 64-bit timestamps for fscache (Leif Sahlberg) [1708033] - [fs] cifs: use timespec64 internally (Leif Sahlberg) [1708033] - [fs] cifs: Silence uninitialized variable warning (Leif Sahlberg) [1708033] - [fs] fs/cifs: Simplify ib_post_(send|recv|srq_recv)() calls (Leif Sahlberg) [1708033]- [edac] EDAC/amd64: Set maximum channel layer size depending on family (Gary Hook) [1690984] - [edac] EDAC/amd64: Adjust printed chip select sizes when interleaved (Gary Hook) [1690984] - [edac] EDAC/amd64: Recognize x16 symbol size (Gary Hook) [1690984] - [edac] EDAC/amd64: Support more than two Unified Memory Controllers (Gary Hook) [1690984] - [edac] EDAC/amd64: Use a macro for iterating over Unified Memory Controllers (Gary Hook) [1690984] - [edac] EDAC, amd64: Add Family 17h, models 10h-2fh support (Gary Hook) [1670609 1690984] - [md] dm mpath: fix missing call of path selector type->end_io (Mike Snitzer) [1686227] - [rpmspec] redhat: do not generate debuginfo for self-tests and samples (Ivan Vecera) [1708375] - [netdrv] broadcom: Mark expected switch fall-throughs (Kamal Heib) [1684380] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Kamal Heib) [1684380] - [netdrv] broadcom: tg3: fix use of SPEED_UNKNOWN ethtool constant (Kamal Heib) [1684380] - [netdrv] tg3: allow ethtool -p to work for NICs in down state (Kamal Heib) [1684380] - [netdrv] tg3: optionally use eth_platform_get_mac_address() to get mac address (Kamal Heib) [1684380] - [netdrv] tg3: extend PTP gettime function to read system clock (Kamal Heib) [1684380] - [netdrv] tg3: Fix fall-through annotations (Kamal Heib) [1684380] - [netdrv] tg3: Mark expected switch fall-throughs (Kamal Heib) [1684380] - [mm] x86/mm/KASLR: Fix the size of the direct mapping section (Baoquan He) [1669075] - [netdrv] net/mlx4_en: fix spelling mistake: "quiting" -> "quitting" (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Fix error handling when initializing CQ bufs in the driver (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Add masking for a few queries on HCA caps (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Fix using wrong function to destroy sqp AHs under SRIOV (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4: replace pci_{,un}map_sg with dma_{,un}map_sg (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4: Get rid of page operation after dma_alloc_coherent (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: drop useless LIST_HEAD (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Remove set but not used variable 'pd' (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Utilize macro to calculate SQ spare size (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_en: remove fallback after kzalloc_node() (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Remove unneeded NULL check (Alaa Hleihel) [1691235 1691228] - [infiniband] mlx4: Use snprintf instead of complicated strcpy (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Fix several coding style errors (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Fix return codes of unsupported operations (Alaa Hleihel) [1691235 1691228] - [netdrv] {net, IB}/mlx4: Initialize CQ buffers in the driver when possible (Alaa Hleihel) [1691235 1691228] - [netdrv] mlx4: use __vlan_hwaccel helpers (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_en: Fix build break when CONFIG_INET is off (Alaa Hleihel) [1691233 1691228] - [netdrv] net/mlx4_en: use __netdev_tx_sent_queue() (Alaa Hleihel) [1691233 1691228] - [netdrv] net/mlx4_en: add a missing include (Alaa Hleihel) [1691233 1691228] - [infiniband] IB/mlx4: Add port and TID to MAD debug print (Alaa Hleihel) [1691233 1691228] - [infiniband] IB/mlx4: Enable debug print of SMPs (Alaa Hleihel) [1691233 1691228] - [infiniband] RDMA: Fix dependencies for rdma_user_mmap_io (Alaa Hleihel) [1691233 1691228] - [infiniband] IB/mlx4: Remove unnecessary parentheses (Alaa Hleihel) [1691233 1691228] - [infiniband] RDMA/mlx4: Use rdma_user_mmap_io (Alaa Hleihel) [1691233 1691228] - [netdrv] net/mlx4_core: Fix warnings during boot on driverinit param set failures (Alaa Hleihel) [1691228] - [netdrv] net/mlx4_core: Use devlink region_snapshot parameter (Alaa Hleihel) [1691228] - [netdrv] net/mlx4_core: Add Crdump FW snapshot support (Alaa Hleihel) [1691228] - [netdrv] net/mlx4_core: Add health buffer address capability (Alaa Hleihel) [1691228] - [netdrv] mlx4: Add support for devlink reload and load driverinit values (Alaa Hleihel) [1691228 1663198] - [netdrv] mlx4: Add mlx4 initial parameters table and register it (Alaa Hleihel) [1691228 1663198] - [infiniband] IB/mlx4: Create slave AH's directly (Alaa Hleihel) [1691228] - [infiniband] IB/mlx4: Add support for drain SQ & RQ (Alaa Hleihel) [1691228] - [net] openvswitch: return an error instead of doing BUG_ON() (Eelco Chaudron) [1700468] - [include] net: add netif_is_geneve() (Petr Oros) [1707002] - [netdrv] team: fix possible recursive locking when add slaves (Hangbin Liu) [1700679] - [netdrv] phy: Fix ioctl handler when modifing MII_ADVERTISE (Petr Oros) [1691676] - [netdrv] mii: Add mii_lpa_mod_linkmode_lpa_t (Petr Oros) [1691676] - [netdrv] phy: marvell: Rename mii_lpa_to_linkmode_lpa_t (Petr Oros) [1691676] - [netdrv] mii: Rename mii_stat1000_to_linkmode_lpa_t (Petr Oros) [1691676] - [include] mii: Fix autoneg in mii_lpa_to_linkmode_lpa_t() (Petr Oros) [1691676] - [netdrv] phy: remove unused code in phy_probe (Petr Oros) [1691676] - [netdrv] phy: check if advertising is zero using linkmode_empty (Petr Oros) [1691676] - [netdrv] phy: marvell: remove set but not used variable 'pause' (Petr Oros) [1691676] - [netdrv] phy: Add support for resolving 5G and 2.5G autoneg (Petr Oros) [1691676] - [netdrv] phy: Add more link modes to the settings table (Petr Oros) [1691676] - [netdrv] phy: Fixup kerneldoc markup. (Petr Oros) [1691676] - [netdrv] phy: Convert u32 phydev->lp_advertising to linkmode (Petr Oros) [1691676] - [netdrv] ethernet: Convert phydev advertize and supported from u32 to link mode (Petr Oros) [1691676] - [netdrv] bonding: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [netdrv] bonding: Give bond_set_dev_addr() a return value (Ivan Vecera) [1705509] - [netdrv] ipvlan: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] bridge: Handle NETDEV_PRE_CHANGEADDR from ports (Ivan Vecera) [1705509] - [net] bridge: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] dev: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] dev: Add NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] dev: Add extack argument to dev_set_mac_address() (Ivan Vecera) [1705509] - [netdrv] phy: phy driver features are mandatory (Petr Oros) [1691720] - [netdrv] phy: add missing phy driver features (Petr Oros) [1691720] - [netdrv] phy: Add missing features to PHY drivers (Petr Oros) [1691720] - [netdrv] phy: genphy_10g_driver: Avoid NULL pointer dereference (Petr Oros) [1691720] - [netdrv] phy: phy_support_sym_pause: Clear Asym Pause (Petr Oros) [1691720] - [netdrv] phy: Replace phy driver features u32 with link_mode bitmap (Petr Oros) [1691720] - [netdrv] ethernet: xgbe: expand PHY_GBIT_FEAUTRES (Petr Oros) [1691720] - [net] net: phy: Add limkmode equivalents to some of the MII ethtool helpers (Petr Oros) [1691720] - [netdrv] phy: Add helper for advertise to lcl value (Petr Oros) [1691720] - [net] phy: Add helper to convert MII ADV register to a linkmode (Petr Oros) [1691720] - [netdrv] phy: Add phydev_info() (Petr Oros) [1691720] - [netdrv] phy: Add phydev_warn() (Petr Oros) [1691720] - [netdrv] phy: Move linkmode helpers to somewhere public (Petr Oros) [1691720] - [netdrv] ethernet: dpaa: remove unused variables (Petr Oros) [1691720] - [netdrv] ravb: Disable Pause Advertisement (Petr Oros) [1691720] - [netdrv] ethernet: Add helper to determine if pause configuration is supported (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for set_pauseparam for Pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for set_pauseparam for Asym Pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for MACs which support pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for MACs which support asym pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper to remove a supported link mode (Petr Oros) [1691720] - [netdrv] ethernet: Fix up drivers masking pause support (Petr Oros) [1691720] - [netdrv] bcmgenet: Fix speed selection for reverse MII (Petr Oros) [1691720] - [netdrv] ethernet: Use phy_set_max_speed() to limit advertised speed (Petr Oros) [1691720] - [netdrv] phy: bcm63xx: Allow to be built with COMPILE_TEST (Petr Oros) [1691720] - [netdrv] phy: et1011c: Remove incorrect missing 1000 Half (Petr Oros) [1691720] - [netdrv] phy: ste10Xp: Remove wrong SUPPORTED_Pause (Petr Oros) [1691720] - [tools] selftests: net: ip_defrag: cover new IPv6 defrag behavior (Guillaume Nault) [1660282] - [tools] selftests: net: fix/improve ip_defrag selftest (Guillaume Nault) [1660282] - [tools] selftests: use posix-style redirection in ip_defrag.sh (Guillaume Nault) [1660282] - [tools] selftests: net: Clean up an unused variable (Guillaume Nault) [1660282] - [tools] selftests/net: add ipv6 tests to ip_defrag selftest (Guillaume Nault) [1660282] - [tools] selftests/net: add ip_defrag selftest (Guillaume Nault) [1660282] - [net] ip6: fix skb leak in ip6frag_expire_frag_queue() (Guillaume Nault) [1660282] - [net] IP6 defrag: use rbtrees in nf_conntrack_reasm.c (Guillaume Nault) [1660282] - [net] IP6 defrag: use rbtrees for IPv6 defrag (Guillaume Nault) [1660282] - [net] IP defrag: encapsulate rbtree defrag code into callable functions (Guillaume Nault) [1660282] - [net] ipv4: do not handle duplicate fragments as overlapping (Guillaume Nault) [1660282] - [net] ipv4: ipv6: netfilter: Adjust the frag mem limit when truesize changes (Guillaume Nault) [1660282] - [net] ipv6: remove dependency of nf_defrag_ipv6 on ipv6 module (Guillaume Nault) [1660282] - [net] ipv6: fix typo in net/ipv6/reassembly.c (Guillaume Nault) [1660282] - [net] core: dev: Attach extack to NETDEV_PRE_UP (Ivan Vecera) [1705501] - [net] core: dev: Add call_netdevice_notifiers_extack() (Ivan Vecera) [1705501] - [net] core: dev: Add extack argument to __dev_change_flags() (Ivan Vecera) [1705501] - [net] core: dev: Add extack argument to dev_change_flags() (Ivan Vecera) [1705501] - [netdrv] ipvlan: ipvlan_set_port_mode(): Add an extack argument (Ivan Vecera) [1705501] - [netdrv] vrf: cycle_netdev(): Add an extack argument (Ivan Vecera) [1705501] - [net] net: core: dev: Add extack argument to dev_open() (Ivan Vecera) [1705501] - [net] vlan: conditional inclusion of FCoE hooks to match netdevice.h and bnx2x (Chris Leech) [1685894] - [net] Do not route unicast IP packets twice (Ivan Vecera) [1704923] - [net] skbuff: Rename 'offload_mr_fwd_mark' to 'offload_l3_fwd_mark' (Ivan Vecera) [1704923] - [net] devlink: Add 'fw_load_policy' generic parameter (Ivan Vecera) [1704902] - [net] bridge: Extend br_vlan_get_pvid() for bridge ports (Ivan Vecera) [1704863] - [net] ipv4: Notify about changes to ip_forward_update_priority (Ivan Vecera) [1704697] - [net] ipv4: Control SKB reprioritization after forwarding (Ivan Vecera) [1704697] - [net] dcb: Add priority-to-DSCP map getters (Ivan Vecera) [1704639] - [net] xsk: export xdp_get_umem_from_qid (Ivan Vecera) [1704606] - [net] net: Add lag.h, net_lag_port_dev_txable() (Ivan Vecera) [1704297] - [netdrv] team: Publish team_port_get_rcu() (Ivan Vecera) [1704297] - [net] sched: sch_api: set an error msg when qdisc_alloc_handle() fails (Ivan Vecera) [1677094] - [net] ethtool: Remove unnecessary null check in ethtool_rx_flow_rule_create (Ivan Vecera) [1691738] - [net] flow_offload: fix block stats (Ivan Vecera) [1691738] - [net] sched: flower: only return error from hw offload if skip_sw (Ivan Vecera) [1691738] - [net] flow_offload: Fix flow action infrastructure (Ivan Vecera) [1691738] - [net] ethtool: add ethtool_rx_flow_spec to flow_rule structure translator (Ivan Vecera) [1691738] - [net] flow_offload: add wake-up-on-lan and queue to flow_action (Ivan Vecera) [1691738] - [net] flow_offload: add statistics retrieval infrastructure and use it (Ivan Vecera) [1691738] - [net] cls_api: add translator to flow_action representation (Ivan Vecera) [1691738] - [net] flow_offload: add flow action infrastructure (Ivan Vecera) [1691738] - [net] flow_offload: add flow_rule and flow_match structures and use them (Ivan Vecera) [1691738] - [net] netfilter: ipv6: Don't preserve original oif for loopback address (Florian Westphal) [1702813] - [net] netfilter: ipv6: Preserve link scope traffic original oif (Florian Westphal) [1702813] - [net] sctp: implement memory accounting on rx path (Xin Long) [1665243] {CVE-2019-3874} - [net] sctp: implement memory accounting on tx path (Xin Long) [1665243] {CVE-2019-3874} - [net] openvswitch: fix flow actions reallocation (Eelco Chaudron) [1700468] - [net] openvswitch: fix missing checks for nla_nest_start (Eelco Chaudron) [1700468] - [net] openvswitch: fix a NULL pointer dereference (Eelco Chaudron) [1700468] - [net] openvswitch: meter: Use struct_size() in kzalloc() (Eelco Chaudron) [1700468] - [net] openvswitch: Fix IPv6 later frags parsing (Eelco Chaudron) [1700468] - [net] openvswitch: fix spelling mistake "execeeds" -> "exceeds" (Eelco Chaudron) [1700468] - [net] openvswitch: remove BUG_ON from get_dpdev (Eelco Chaudron) [1700468] - [net] openvswitch: fix linking without CONFIG_NF_CONNTRACK_LABELS (Eelco Chaudron) [1700468] - [net] revert "openvswitch: Fix template leak in error cases." (Eelco Chaudron) [1700468] - [net] openvswitch: Use correct reply values in datapath and vport ops (Eelco Chaudron) [1700468] - [net] ovs: fix return type of ndo_start_xmit function (Eelco Chaudron) [1700468] - [net] openvswitch: Derive IP protocol number for IPv6 later frags (Eelco Chaudron) [1700468] - [net] openvswitch: kernel datapath clone action (Eelco Chaudron) [1700468] - [net] openvswitch: Avoid OOB read when parsing flow nlattrs (Eelco Chaudron) [1700468] - [net] net/vlan: remove unused #define HAVE_VLAN_GET_TAG (Ivan Vecera) [1700369] - [net] vlan: include the shift in skb_vlan_tag_get_prio() (Ivan Vecera) [1700369] - [net] vlan: introduce __vlan_hwaccel_copy_tag() helper (Ivan Vecera) [1700369] - [net] vlan: introduce __vlan_hwaccel_clear_tag() helper (Ivan Vecera) [1700369] - [net] sctp: initialize _pad of sockaddr_in before copying to user memory (Xin Long) [1699076] - [net] sctp: use memdup_user instead of vmemdup_user (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_STREAM_SCHEDULER sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_EVENT sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_ENABLE_STREAM_RESET sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DEFAULT_PRINFO sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_DEACTIVATE_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_DELETE_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_ACTIVE_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_MAX_BURST sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_CONTEXT sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DEFAULT_SNDINFO sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DELAYED_SACK sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DEFAULT_SEND_PARAM sockopt (Xin Long) [1699076] - [net] sctp: not copy sctp_sock pd_lobby in sctp_copy_descendant (Xin Long) [1699076] - [net] sctp: get sctphdr by offset in sctp_compute_cksum (Xin Long) [1699076] - [net] sctp: call sctp_auth_init_hmacs() in sctp_sock_migrate() (Xin Long) [1699076] - [net] sctp: move up sctp_auth_init_hmacs() in sctp_endpoint_init() (Xin Long) [1699076] - [net] sctp: sctp_sock_migrate() returns error if sctp_bind_addr_dup() fails (Xin Long) [1699076] - [net] sctp: remove sched init from sctp_stream_init (Xin Long) [1699076] - [net] sctp: call iov_iter_revert() after sending ABORT (Xin Long) [1699076] - [net] ipvs: get sctphdr by sctphoff in sctp_csum_check (Xin Long) [1699076] - [net] sctp: chunk.c: correct format string for size_t in printk (Xin Long) [1699076] - [net] sctp: don't compare hb_timer expire date before starting it (Xin Long) [1699076] - [net] doc: sctp: Merge and clean up rst files (Xin Long) [1699076] - [net] sctp: set stream ext to NULL after freeing it in sctp_stream_outq_migrate (Xin Long) [1699076] - [net] sctp: add SCTP_FUTURE_ASOC and SCTP_CURRENT_ASSOC for SCTP_STREAM_SCHEDULER sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_EVENT sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_ENABLE_STREAM_RESET sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_PRINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_DEACTIVATE_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_DELETE_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_ACTIVE_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_MAX_BURST sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_CONTEXT sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_SNDINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_SEND_PARAM sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DELAYED_SACK sockopt (Xin Long) [1699076] - [net] sctp: add SCTP_CURRENT_ASSOC for SCTP_STREAM_SCHEDULER_VALUE sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_INTERLEAVING_SUPPORTED sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_RECONFIG_SUPPORTED sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_PR_SUPPORTED sockopt (Xin Long) [1699076] - [net] sctp: add SCTP_FUTURE_ASSOC for SCTP_PEER_ADDR_THLDS sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_LOCAL_AUTH_CHUNKS sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_MAXSEG sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_ASSOCINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_RTOINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_PEER_ADDR_PARAMS sockopt (Xin Long) [1699076] - [net] sctp: introduce SCTP_FUTURE/CURRENT/ALL_ASSOC (Xin Long) [1699076] - [net] sctp: set flow sport from saddr only when it's 0 (Xin Long) [1699076] - [net] sctp: set chunk transport correctly when it's a new asoc (Xin Long) [1699076] - [net] sctp: improve the events for sctp stream adding (Xin Long) [1699076] - [net] sctp: improve the events for sctp stream reset (Xin Long) [1699076] - [net] sctp: allocate sctp_sockaddr_entry with kzalloc (Xin Long) [1699076] - [net] sctp: initialize sin6_flowinfo for ipv6 addrs in sctp_inet6addr_event (Xin Long) [1699076] - [net] sctp: frag_point sanity check (Xin Long) [1699076] - [net] sctp: kfree_rcu asoc (Xin Long) [1699076] - [net] sctp: update frag_point when stream_interleave is set (Xin Long) [1699076] - [net] sctp: add sockopt SCTP_EVENT (Xin Long) [1699076] - [net] sctp: rename enum sctp_event to sctp_event_type (Xin Long) [1699076] - [net] sctp: add subscribe per asoc (Xin Long) [1699076] - [net] sctp: define subscribe in sctp_sock as __u16 (Xin Long) [1699076] - [net] sctp: process sk_reuseport in sctp_get_port_local (Xin Long) [1699076] - [net] sctp: add sock_reuseport for the sock in __sctp_hash_endpoint (Xin Long) [1699076] - [net] sctp: do reuseport_select_sock in __sctp_rcv_lookup_endpoint (Xin Long) [1699076] - [net] sctp: Fix SKB list traversal in sctp_intl_store_ordered(). (Xin Long) [1699076] - [net] sctp: Fix SKB list traversal in sctp_intl_store_reasm(). (Xin Long) [1699076] - [net] sctp: define SCTP_SS_DEFAULT for Stream schedulers (Xin Long) [1699076] - [net] sctp: clear the transport of some out_chunk_list chunks in sctp_assoc_rm_peer (Xin Long) [1699076] - [net] sctp: use sk_wmem_queued to check for writable space (Xin Long) [1699076] - [net] sctp: count both sk and asoc sndbuf with skb truesize and sctp_chunk size (Xin Long) [1699076] - [net] sctp: use the pmtu from the icmp packet to update transport pathmtu (Xin Long) [1699076] - [net] sctp: fix fall-through annotation (Xin Long) [1699076] - [net] sctp: Use skb_queue_is_first(). (Xin Long) [1699076] - [net] sctp: not traverse asoc trans list if non-ipv6 trans exists for ipv6_flowlabel (Xin Long) [1699076] - [net] sctp: fix invalid reference to the index variable of the iterator (Xin Long) [1699076] - [net] sctp: remove useless start_fail from sctp_ht_iter in proc (Xin Long) [1699076] - [net] sctp: Make wrappers for accessing in/out streams (Xin Long) [1699076] - [net] sctp: whitespace fixes (Xin Long) [1699076] - [net] sctp: check for ipv6_pinfo legal sndflow with flowlabel in sctp_v6_get_dst (Xin Long) [1699076] - [net] sctp: add support for setting flowlabel when adding a transport (Xin Long) [1699076] - [net] sctp: add spp_ipv6_flowlabel and spp_dscp for sctp_paddrparams (Xin Long) [1699076] - [net] sctp: add support for dscp and flowlabel per transport (Xin Long) [1699076] - [net] ipv4: add __ip_queue_xmit() that supports tos param (Xin Long) [1699076] - [net] sctp: add support for SCTP_REUSE_PORT sockopt (Xin Long) [1699076] - [netdrv] pptp: dst_release sk_dst_cache in pptp_sock_destruct (Xin Long) [1671606] - [net] datagram: fix unbounded loop in __skb_try_recv_datagram() (Paolo Abeni) [1692379] - [net] ipv6: route: purge exception on removal (Paolo Abeni) [1669049] - [net] vsock: cope with memory allocation failure at socket creation time (Paolo Abeni) [1671619] - [net] ptp: fix Spectre v1 vulnerability (Hangbin Liu) [1664624]- [infiniband] RDMA/bnxt_re: fix or'ing of data into an uninitialized struct member (Selvin Xavier) [1664798] - [netdrv] RDMA/bnxt_en: Enable RDMA driver support for 57500 chip (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Update kernel user abi to pass chip context (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add extended psn structure for 57500 adapters (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Enable GSI QP support for 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Skip backing store allocation for 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add 64bit doorbells for 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add chip context to identify 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: fix a size calculation (Selvin Xavier) [1664798] - [infiniband] infiniband: bnxt_re: qplib: Check the return value of send_message (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Increase depth of control path command queue (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Query HWRM Interface version from FW (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Make use of destroy AH sleepable flag (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Make use of create AH sleepable flag (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid accessing the device structure after it is freed (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix system hang when registration with L2 driver fails (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid resource leak in case the NQ registration fails (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Wait for delayed work to finish before device removal (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Limit max_pkey to 16 bit value (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix qp async event reporting (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Report out of sequence hw counters (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Expose rx discards and drop counters (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Prevent driver crash due to NULL pointer in error message print (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Drop L2 async events silently (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid accessing nq->bar_reg_iomem in failure case (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid NULL check after accessing the pointer (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Remove the unnecessary version macro definition (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix recursive lock warning in debug kernel (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add missing spin lock initialization (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: QPLIB: Add and use #define dev_fmt(fmt) "QPLIB: " fmt (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Modify a fall-through annotation (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix a bunch of off by one bugs in qplib_fp.c (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix a couple off by one bugs (Selvin Xavier) [1664798] - [powerpc] powerpc/fadump: Do not allow hot-remove memory from fadump reserved area. (Gustavo Duarte) [1524686] - [powerpc] powerpc/fadump: Throw proper error message on fadump registration failure (Gustavo Duarte) [1524686] - [powerpc] powerpc/fadump: Reservationless firmware assisted dump (Gustavo Duarte) [1524686] - [infiniband] IB/hfi1: Fix WQ_MEM_RECLAIM warning (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Implement CCA for TID RDMA protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove WARN_ON when freeing expected receive groups (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Unify the software PSN check for TID RDMA READ/WRITE (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to read next expected psn from hardware flow (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Delay the release of destination mr for TID RDMA WRITE DATA (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Do not flush send queue in the TID RDMA second leg (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Fix the allocation of RSM table (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Eliminate opcode tests on mr deref (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Clear the IOWAIT pending bits when QP is put into error state (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Failed to drain send queue when QP is put into error state (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add missing break in switch statement (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Fix a build warning for TID RDMA READ (Alex Estrin) [1660618] - [infiniband] RDMA/rdmavt: Adapt to handle non-uniform sizes on umem SGEs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Prioritize the sending of ACK packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for TID RDMA WRITE protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Enable TID RDMA WRITE protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add interlock between TID RDMA WRITE and other requests (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID RDMA WRITE functionality into RDMA verbs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the dual leg code (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the TID second leg ACK packet builder (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the TID second leg send packet builder (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Resend the TID RDMA WRITE DATA packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA RESYNC packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA RESYNC packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID RDMA retry timer (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA ACK packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA ACK packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA WRITE DATA packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA WRITE DATA packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA WRITE response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID resource timer (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA WRITE response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to receive TID RDMA WRITE request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add an s_acked_ack_queue pointer (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Allow for extra entries in QP's s_ack_queue (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Build TID RDMA WRITE request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for TID RDMA READ protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Enable TID RDMA READ protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add interlock between a TID RDMA request and other requests (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Integrate TID RDMA READ protocol into RC protocol (Alex Estrin) [1660618] - [include] IB/hfi1: Increment the retry timeout value for TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions for restarting TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID RDMA handlers (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to receive TID RDMA READ response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA READ response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to receive TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Set PbcInsertHcrc for TID RDMA packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to build TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for flow and TID management functions (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the counter n_tidwait (Alex Estrin) [1660618] - [infiniband] IB/hfi1: TID RDMA RcvArray programming and TID allocation (Alex Estrin) [1660618] - [infiniband] IB/hfi1: TID RDMA flow allocation (Alex Estrin) [1660618] - [infiniband] IB/hfi: Move RC functions into a header file (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for OPFN (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Integrate OPFN into RC transactions (Alex Estrin) [1660618] - [infiniband] IB/hfi1, IB/rdmavt: Allow for extending of QP's s_ack_queue (Alex Estrin) [1660618] - [infiniband] IB/hfi1: OPFN interface (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add OPFN helper functions for TID RDMA feature (Alex Estrin) [1660618] - [infiniband] IB/hfi1: OPFN support discovery (Alex Estrin) [1660618] - [infiniband] IB/{hfi1, qib, rvt} Cleanup open coded sge usage (Alex Estrin) [1660618] - [infiniband] IB/{hfi1,qib}: Cleanup open coded sge sizing (Alex Estrin) [1660618] - [infiniband] RDMA/qib: Use GUP longterm for PSM page pining (Alex Estrin) [1660618] - [infiniband] infiniband: qib: no need to check return value of debugfs_create functions (Alex Estrin) [1660618] - [infiniband] infiniband: hfi1: no need to check return value of debugfs_create functions (Alex Estrin) [1660618] - [infiniband] infiniband: hfi1: drop crazy DEBUGFS_SEQ_FILE_CREATE() macro (Alex Estrin) [1660618] - [infiniband] IB/{hfi1, qib}: Fix WC.byte_len calculation for UD_SEND_WITH_IMM (Alex Estrin) [1660618] - [infiniband] IB/qib: Fix an error code in qib_sdma_verbs_send() (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Reduce lock contention on iowait_lock for sdma and pio (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Close VNIC sdma_progress sleep window (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Allow the driver to initialize QP priv struct (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add OPFN and TID RDMA capability bits (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Unreserve a reserved request when it is completed (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Consider LMC in 16B/bypass ingress packet check (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Limit VNIC use of SDMA engines to the available count (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Correctly process FECN and BECN in packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Ignore LNI errors before DC8051 transitions to Polling state (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Dump pio info for non-user send contexts (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Fix a latency issue for small messages (Alex Estrin) [1660618] - [infiniband] RDMA/qib: Remove all occurrences of BUG_ON() (Alex Estrin) [1660618] - [infiniband] IB/qib: fix spelling mistake "colescing" -> "coalescing" (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Use VL15 for SM packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add mtu check for operational data VLs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for iowait (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Prepare resource waits for dual leg (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Error path MAD response size is incorrect (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move UnsupportedVL bits definitions to the correct header (Alex Estrin) [1660618] - [infiniband] IB/hfi1: set_intr_bits uses incorrect source for register modification (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Missing return value in error path for user sdma (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Right size user_sdma sequence numbers and related variables (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move URGENT IRQ enable to hfi1_rcvctrl() (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Rework the IRQ API to be more flexible (Alex Estrin) [1660618] - [infiniband] IB/hfi1: PCIe bus width retry (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Make the MSIx resource allocation a bit more flexible (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Prepare for new HFI1 MSIx API (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Get the hfi1_devdata structure as early as possible (Alex Estrin) [1660618] - [infiniband] IB/hfi1: tune_pcie_caps is arbitrarily placed, poorly (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove duplicated defines (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Rework file list in Makefile (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove incorrect call to do_interrupt callback (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Set in_use_ctxts bits for user ctxts only (Alex Estrin) [1660618] - [include] include/rdma/opa_addr.h: Fix an endianness issue (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove INTx support and simplify MSIx usage (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Reorg ctxtdata and rightsize fields (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove caches of chip CSRs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove unused/writeonly devdata fields (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Rightsize ctxt_eager_bufs fields (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove rcvctrl from ctxtdata (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove rcvhdrq_size (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove rcvhdrsize (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move rhf_offset from devdata to ctxtdata (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move normal functions from hfi1_devdata to const array (Alex Estrin) [1660618] - [infiniband] scsi: RDMA/srpt: Fix handling of TMF submission failure (Jonathan Toppins) [1685313] - [infiniband] scsi: RDMA/srpt: Fix a credit leak for aborted commands (Jonathan Toppins) [1685313] - [net] xprtrdma: Reduce the doorbell rate (Receive) (Jonathan Toppins) [1685313] - [net] xprtrdma: Fix sparse warnings (Jonathan Toppins) [1685313] - [net] xprtrdma: Fix helper that drains the transport (Jonathan Toppins) [1685313] - [netdrv] enic: fix build warning without CONFIG_CPUMASK_OFFSTACK (Jonathan Toppins) [1685313] - [infiniband] IB/usnic: Fix out of bounds index check in query pkey (Jonathan Toppins) [1685313] - [infiniband] IB/usnic: Remove stub functions (Jonathan Toppins) [1685313] - [infiniband] rdma: fix build errors on s390 and MIPS due to bad ZERO_PAGE use (Jonathan Toppins) [1685313] - [infiniband] RDMA/ucontext: Fix regression with disassociate (Jonathan Toppins) [1685313] - [infiniband] IB/iser: Fix dma_nents type definition (Jonathan Toppins) [1685313] - [infiniband] IB/iser: Pass the correct number of entries for dma mapped SGL (Jonathan Toppins) [1685313] - [infiniband] RDMA/rxe: Use for_each_sg_page iterator on umem SGL (Jonathan Toppins) [1685313] - [infiniband] RDMA/vmw_pvrdma: Fix memory leak on pvrdma_pci_remove (Jonathan Toppins) [1685313] - [infiniband] RDMA/vmw_pvrdma: Support upto 64-bit PFNs (Jonathan Toppins) [1683475] - [include] IB/mlx5: Remove dead code (Jonathan Toppins) [1685313] - [infiniband] IB/mlx5: Ranges in implicit ODP MR inherit its write access (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Fix frwr memory registration (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Add wc_flags and wc_immdata to cq entry trace (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Fix concurrency panics in QP post_send and modify to error (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Fix loopback send with invalidate ordering (Jonathan Toppins) [1685313] - [infiniband] IB/hfi1: Add limit test for RC/UC send via loopback (Jonathan Toppins) [1685313] - [infiniband] RDMA/iwcm: Fix string truncation error (Jonathan Toppins) [1685313] - [infiniband] RDMA/iwcm: add tos_set bool to iw_cm struct (Jonathan Toppins) [1685313] - [infiniband] RDMA/cma: listening device cm_ids should inherit tos (Jonathan Toppins) [1685313] - [infiniband] RDMA/cma: Rollback source IP address if failing to acquire device (Jonathan Toppins) [1685313] - [infiniband] RDMA/device: Call ib_cache_release_one() only from ib_device_release() (Jonathan Toppins) [1685313] - [infiniband] RDMA/device: Ensure that security memory is always freed (Jonathan Toppins) [1685313] - [infiniband] RDMA/uverbs: Fix an error flow in ib_uverbs_poll_cq (Jonathan Toppins) [1685313] - [infiniband] IB/ipoib: Make ipoib_intercept_dev_id_attr() static (Jonathan Toppins) [1685313] - [infiniband] RDMA: Provide safe ib_alloc_device() function (Jonathan Toppins) [1685313] - [infiniband] IB/core, ipoib: Do not overreact to SM LID change event (Jonathan Toppins) [1685313] - [infiniband] IB/core: Abort page fault handler silently during owning process exit (Jonathan Toppins) [1685313] - [infiniband] RDMA/core: Verify that memory window type is legal (Jonathan Toppins) [1685313] - [infiniband] IB/core: Don't register each MAD agent for LSM notifier (Jonathan Toppins) [1711086 1685313] - [include] IB/core: Eliminate a hole in MAD agent struct (Jonathan Toppins) [1711086 1685313] - [infiniband] IB/core: Fix potential memory leak while creating MAD agents (Jonathan Toppins) [1711086 1685313] - [infiniband] IB/core: Unregister notifier before freeing MAD security (Jonathan Toppins) [1711086 1685313] - [infiniband] IB/core: Destroy QP if XRC QP fails (Jonathan Toppins) [1685313] - [infiniband] IB/core: Declare local functions 'static' (Jonathan Toppins) [1685313] - [infiniband] RDMA/i40iw: Make sure to initialize ib_device_ops (Jonathan Toppins) [1685313] - [rpmspec] Update the kernel rpm package description to mention backports/bug fixes ("Herton R. Krzesinski") [1701064] - [netdrv] bonding: fix arp_validate toggling in active-backup mode (Jarod Wilson) [1654214] - [scsi] scsi: bnx2i: fix indentation issue, remove a tab (Maurizio Lombardi) [1665626] - [scsi] scsi: bnx2i: remove set but not used variable 'cid_num' (Maurizio Lombardi) [1665626] - [scsi] scsi: bnx2i: add error handling for ioremap_nocache (Maurizio Lombardi) [1665626] - [wireless] iwlwifi: mvm: Send LQ command as async when necessary (Stanislaw Gruszka) [1687265] - [scsi] scsi: bnx2fc: Fix error handling in probe() (Maurizio Lombardi) [1665625] - [scsi] scsi: bnx2fc: Fix NULL dereference in error handling (Maurizio Lombardi) [1665625] - [scsi] scsi: bnx2fc: Remove set but not used variable 'oxid' (Maurizio Lombardi) [1665625] - [scsi] bnx2fc_fcoe: Use skb_queue_walk_safe(). (Maurizio Lombardi) [1665625] - [netdrv] hv_netvsc: Fix rndis_per_packet_info internal field initialization (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Add handler for LRO setting change (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Add support for LRO/RSC in the vSwitch (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix unwanted wakeup after tx_disable (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix IP header checksum for coalesced packets (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: fix typos in code comments (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix hash key value reset after other ops (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Refactor assignments of struct netvsc_device_info (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix ethtool change hash key error (Mohammed Gamal) [1691375] - [netdrv] ice: Disable sniffing VF traffic on PF (Kamal Heib) [1659176] - [netdrv] ice: Use more efficient structures (Kamal Heib) [1659176] - [netdrv] ice: Use bitfields where possible (Kamal Heib) [1659176] - [netdrv] ice: Add function to program ethertype based filter rule on VSIs (Kamal Heib) [1659176] - [netdrv] ice: Separate if conditions for ice_set_features() (Kamal Heib) [1659176] - [netdrv] ice: Remove __always_unused attribute (Kamal Heib) [1659176] - [netdrv] ice: Suppress false-positive style issues reported by static analyzer (Kamal Heib) [1659176] - [netdrv] ice: Refactor getting/setting coalesce (Kamal Heib) [1659176] - [netdrv] ice: Always free/allocate q_vectors (Kamal Heib) [1659176] - [netdrv] ice: Do not unnecessarily initialize local variable (Kamal Heib) [1659176] - [netdrv] ice: Add more validation in ice_vc_cfg_irq_map_msg (Kamal Heib) [1659176] - [netdrv] ice: Don't remove VLAN filters that were never programmed (Kamal Heib) [1659176] - [netdrv] ice: Preserve VLAN Rx stripping settings (Kamal Heib) [1659176] - [netdrv] ice: Fix for allowing too many MDD events on VF (Kamal Heib) [1659176] - [netdrv] ice: Use pf instead of vsi-back (Kamal Heib) [1659176] - [netdrv] ice: Use dev_err when ice_cfg_vsi_lan fails (Kamal Heib) [1659176] - [netdrv] ice: Refactor link event flow (Kamal Heib) [1659176] - [netdrv] ice: Add missing PHY type to link settings (Kamal Heib) [1659176] - [netdrv] ice: Add reg_idx variable in ice_q_vector structure (Kamal Heib) [1659176] - [netdrv] ice: Remove runtime change of PFINT_OICR_ENA register (Kamal Heib) [1659176] - [netdrv] ice: Fix issue when adding more than allowed VLANs (Kamal Heib) [1659176] - [netdrv] ice: Remove unnecessary wait when disabling/enabling Rx queues (Kamal Heib) [1659176] - [netdrv] ice: Add ability to update rx-usecs-high (Kamal Heib) [1659176] - [netdrv] ice: Add 52 byte RSS hash key support (Kamal Heib) [1659176] - [netdrv] ice: Use ice_for_each_q_vector macro where possible (Kamal Heib) [1659176] - [netdrv] ice: Validate ring existence and its q_vector per VSI (Kamal Heib) [1659176] - [netdrv] ice: Reduce scope of variable in ice_vsi_cfg_rxqs (Kamal Heib) [1659176] - [netdrv] ice: Resolve static analysis reported issue (Kamal Heib) [1659176] - [netdrv] ice: Return configuration error without queue to disable (Kamal Heib) [1659176] - [netdrv] ice: Create framework for VSI queue context (Kamal Heib) [1659176] - [netdrv] ice: Calculate ITR increment based on direct calculation (Kamal Heib) [1700995 1659176] - [netdrv] ice: Bump driver version (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code to control FW LLDP and DCBX (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB rebuild (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code to get DCB related statistics (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add priority information into VLAN header (Kamal Heib) [1700995 1659176] - [netdrv] ice: Update rings based on TC information (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code to process LLDP MIB change events (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 4/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 3/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 2/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 1/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Bump version (Kamal Heib) [1700995 1659176] - [netdrv] ice: Fix incorrect use of abbreviations (Kamal Heib) [1700995 1659176] - [netdrv] ice: Fix typos in code comments (Kamal Heib) [1700995 1659176] - [netdrv] ice: Remove "2 BITS" comment (Kamal Heib) [1659176] - [netdrv] ice: Update comment regarding the ITR_GRAN_S (Kamal Heib) [1659176] - [netdrv] ice: Update function header for __ice_vsi_get_qs (Kamal Heib) [1659176] - [netdrv] ice: Remove unnecessary braces (Kamal Heib) [1659176] - [netdrv] ice: Remove unused function prototype (Kamal Heib) [1659176] - [netdrv] ice: Add missing case in print_link_msg for printing flow control (Kamal Heib) [1659176] - [netdrv] ice: Audit hotpath structures with pahole (Kamal Heib) [1659176] - [netdrv] ice: Do not bail out when filter already exists (Kamal Heib) [1659176] - [netdrv] ice: Fix issue with VF attempt to delete default MAC address (Kamal Heib) [1659176] - [netdrv] ice: enable VF admin queue interrupts (Kamal Heib) [1659176] - [netdrv] ice: Fix for adaptive interrupt moderation (Kamal Heib) [1659176] - [netdrv] ice: Implement pci_error_handler ops (Kamal Heib) [1659176] - [netdrv] ice: Put __ICE_PREPARED_FOR_RESET check in ice_prepare_for_reset (Kamal Heib) [1659176] - [netdrv] ice: use virt channel status codes (Kamal Heib) [1659176] - [netdrv] ice: Remove unnecessary newlines from log messages (Kamal Heib) [1659176] - [netdrv] ice: Create a generic name for the ice_rx_flg64_bits structure (Kamal Heib) [1659176] - [netdrv] ice: add and use new ice_for_each_traffic_class() macro (Kamal Heib) [1659176] - [netdrv] ice: change VF VSI tc info along with num_queues (Kamal Heib) [1659176] - [netdrv] ice: Prevent unintended multiple chain resets (Kamal Heib) [1659176] - [netdrv] ice: map Rx buffer pages with DMA attributes (Kamal Heib) [1659176] - [netdrv] ice: Limit the ice_add_rx_frag to frag addition (Kamal Heib) [1659176] - [netdrv] ice: Gather the rx buf clean-up logic for better reuse (Kamal Heib) [1659176] - [netdrv] ice: Introduce bulk update for page count (Kamal Heib) [1659176] - [netdrv] ice: Get rid of ice_pull_tail (Kamal Heib) [1659176] - [netdrv] ice: Pull out page reuse checks onto separate function (Kamal Heib) [1659176] - [netdrv] ice: Retrieve rx_buf in separate function (Kamal Heib) [1659176] - [netdrv] ice: Enable link events over the ARQ (Kamal Heib) [1659176] - [netdrv] ice: use irq_num var in ice_vsi_req_irq_msix (Kamal Heib) [1659176] - [netdrv] ice: Restore VLAN switch rule if port VLAN existed before (Kamal Heib) [1659176] - [netdrv] ice: update VSI config dynamically (Kamal Heib) [1659176] - [netdrv] ice: Get VF VSI instances directly via PF (Kamal Heib) [1659176] - [netdrv] ice: Don't let VF know that it is untrusted (Kamal Heib) [1659176] - [netdrv] ice: Set LAN_EN for all directional rules (Kamal Heib) [1659176] - [netdrv] ice: Do not set LB_EN for prune switch rules (Kamal Heib) [1659176] - [netdrv] ice: Enable LAN_EN for the right recipes (Kamal Heib) [1659176] - [netdrv] ice: Add support for PF/VF promiscuous mode (Kamal Heib) [1659176] - [netdrv] ice: code cleanup in ice_sched.c (Kamal Heib) [1659176] - [netdrv] ice: Remove unused vsi_id field (Kamal Heib) [1659176] - [netdrv] ice: fix some function prototype and signature style issues (Kamal Heib) [1659176] - [netdrv] ice: fix the divide by zero issue (Kamal Heib) [1659176] - [netdrv] ice: Fix issue reconfiguring VF queues (Kamal Heib) [1659176] - [netdrv] ice: Remove unused function prototype (Kamal Heib) [1659176] - [netdrv] ice: fix static analysis warnings (Kamal Heib) [1659176] - [netdrv] ice: Fix issue reclaiming resources back to the pool after reset (Kamal Heib) [1659176] - [netdrv] ice: Enable MAC anti-spoof by default (Kamal Heib) [1659176] - [netdrv] ice: Determine descriptor count and ring size based on PAGE_SIZE (Kamal Heib) [1659176] - [netdrv] ice: Reset all VFs with VFLR during SR-IOV init flow (Kamal Heib) [1659176] - [netdrv] ice: Get resources per function (Kamal Heib) [1659176] - [netdrv] ice: Implement flow to reset VFs with PFR and other resets (Kamal Heib) [1659176] - [netdrv] ice: configure GLINT_ITR to always have an ITR gran of 2 (Kamal Heib) [1659176] - [netdrv] ice: use ice_for_each_vsi macro when possible (Kamal Heib) [1659176] - [netdrv] ice : Ensure only valid bits are set in ice_aq_set_phy_cfg (Kamal Heib) [1659176] - [netdrv] ice: remove redundant variable and if condition (Kamal Heib) [1659176] - [netdrv] ice: avoid multiple unnecessary de-references in probe (Kamal Heib) [1659176] - [netdrv] ice: Fix issue with VF reset and multiple VFs support on PFs (Kamal Heib) [1659176] - [netdrv] ice: Fix broadcast traffic in port VLAN mode (Kamal Heib) [1659176] - [netdrv] ice: fix overlong string, update stats output (Kamal Heib) [1659176] - [netdrv] ice: Fix for FC get rx/tx pause params (Kamal Heib) [1659176] - [netdrv] ice: use absolute vector ID for VFs (Kamal Heib) [1659176] - [netdrv] ice: check for a leaf node presence (Kamal Heib) [1659176] - [netdrv] ice: flush Tx pipe on disable queue timeout (Kamal Heib) [1659176] - [netdrv] ice: clear VF ARQLEN register on reset (Kamal Heib) [1659176] - [netdrv] ice: don't spam VFs with link messages (Kamal Heib) [1659176] - [netdrv] ice: only use the VF for ICE_VSI_VF in ice_vsi_release (Kamal Heib) [1659176] - [netdrv] ice: fix numeric overflow warning (Kamal Heib) [1659176] - [netdrv] ice: fix issue where host reboots on unload when iommu=on (Kamal Heib) [1659176] - [netdrv] ice: fix ice_remove_rule_internal vsi_list handling (Kamal Heib) [1659176] - [netdrv] ice: fix stack hogs from struct ice_vsi_ctx structures (Kamal Heib) [1659176] - [netdrv] ice: sizeof() should be avoided (Kamal Heib) [1659176] - [netdrv] ice: Fix added in VSI supported nodes calc (Kamal Heib) [1659176] - [netdrv] ice: Fix the calculation of ICE_MAX_MTU (Kamal Heib) [1659176] - [netdrv] ice: Mark extack argument as __always_unused (Kamal Heib) [1659176] - [netdrv] ice: add const qualifier to mac_addr parameter (Kamal Heib) [1659176] - [netdrv] ice: Add support for new PHY types (Kamal Heib) [1659176] - [netdrv] ice: Offload SCTP checksum (Kamal Heib) [1659176] - [netdrv] ice: Allow for software timestamping (Kamal Heib) [1659176] - [netdrv] ice: Implement getting and setting ethtool coalesce (Kamal Heib) [1659176] - [netdrv] ice: Add support for adaptive interrupt moderation (Kamal Heib) [1659176] - [netdrv] ice: Move aggregator list into ice_hw instance (Kamal Heib) [1659176] - [netdrv] ice: Rework queue management code for reuse (Kamal Heib) [1659176] - [netdrv] ice: Add ethtool private flag to make forcing link down optional (Kamal Heib) [1659176] - [netdrv] ice: Set physical link up/down when an interface is set up/down (Kamal Heib) [1659176] - [netdrv] ice: Implement support for normal get_eeprom[_len] ethtool ops (Kamal Heib) [1659176] - [netdrv] ice: Add ethtool set_phys_id handler (Kamal Heib) [1659176] - [netdrv] ice: Configure RSS LUT and HASH KEY in rebuild path (Kamal Heib) [1659176] - [netdrv] ice: Refactor a few Tx scheduler functions (Kamal Heib) [1659176] - [netdrv] ice: Fix unused variable build warning (Kamal Heib) [1659176] - [netdrv] ice: Do not enable NAPI on q_vectors that have no rings (Kamal Heib) [1659176] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Kamal Heib) [1659176] - [netdrv] ice: Fix possible NULL pointer de-reference (Kamal Heib) [1659176] - [netdrv] ice: Use Tx|Rx in comments (Kamal Heib) [1659176] - [netdrv] ice: Cosmetic formatting changes (Kamal Heib) [1659176] - [netdrv] ice: Cleanup short function signatures (Kamal Heib) [1659176] - [netdrv] ice: Cleanup ice_tx_timeout() (Kamal Heib) [1659176] - [netdrv] ice: Fix return value from NAPI poll (Kamal Heib) [1659176] - [netdrv] ice: Constify global structures that can/should be (Kamal Heib) [1659176] - [netdrv] ice: Do not set LAN_EN for MAC-VLAN filters (Kamal Heib) [1659176] - [netdrv] ice: Pass the return value of ice_init_def_sw_recp() (Kamal Heib) [1659176] - [netdrv] ice: Cleanup duplicate control queue code (Kamal Heib) [1659176] - [netdrv] ice: Remove ICE_MAX_TXQ_PER_TXQG check when configuring Tx queue (Kamal Heib) [1659176] - [netdrv] ice: Destroy scheduler tree in reset path (Kamal Heib) [1659176] - [netdrv] ice: Fix to make VLAN priority tagged traffic to appear on all TCs (Kamal Heib) [1659176] - [netdrv] ice: Call pci_disable_sriov before stopping queues for VF (Kamal Heib) [1659176] - [netdrv] ice: Increase Rx queue disable timeout (Kamal Heib) [1659176] - [netdrv] ice: Fix NVM mask defines (Kamal Heib) [1659176] - [netdrv] ice: Avoid nested RTNL locking in ice_dis_vsi (Kamal Heib) [1659176] - [netdrv] ice: Calculate guaranteed VSIs per function and use it (Kamal Heib) [1659176] - [netdrv] ice: Remove node before releasing VSI (Kamal Heib) [1659176] - [netdrv] ice: Check for q_vector when stopping rings (Kamal Heib) [1659176] - [netdrv] ice: Fix debug print in ice_tx_timeout (Kamal Heib) [1659176] - [netdrv] intel-ethernet: use correct module license (Kamal Heib) [1659176] - [netdrv] bnx2x: Add support for detection of P2P event packets. (Manish Chopra) [1638306 1663271] - [netdrv] bnx2x: Replace magic numbers with macro definitions. (Manish Chopra) [1638306 1663271] - [netdrv] bnx2x: fix spelling mistake "dicline" -> "decline" (Manish Chopra) [1663271] - [netdrv] bnx2x: Utilize FW 7.13.11.0. (Manish Chopra) [1663271] - [netdrv] bnx2x: Remove set but not used variable 'mfw_vn' (Manish Chopra) [1663271] - [netdrv] bnx2x: Use struct_size() in kzalloc() (Manish Chopra) [1663271] - [netdrv] broadcom: Mark expected switch fall-throughs (Manish Chopra) [1663271] - [netdrv] bnx2x: Bump up driver version to 1.713.36 (Manish Chopra) [1663271] - [netdrv] bnx2x: fix various indentation issues (Manish Chopra) [1663271] - [netdrv] cross-tree: phase out dma_zalloc_coherent() on headers (Manish Chopra) [1663271] - [netdrv] bnx2x: Fix NULL pointer dereference in bnx2x_del_all_vlans() on some hw (Manish Chopra) [1663271] - [netdrv] bnx2x: Send update-svid ramrod with retry/poll flags enabled (Manish Chopra) [1663271] - [netdrv] bnx2x: Enable PTP only on the PF that initializes the port (Manish Chopra) [1663271] - [netdrv] bnx2x: Remove configured vlans as part of unload sequence. (Manish Chopra) [1663271] - [netdrv] bnx2x: Clear fip MAC when fcoe offload support is disabled (Manish Chopra) [1663271] - [netdrv] bnx2x: Add storm FW version to ethtool driver query output. (Manish Chopra) [1663271] - [netdrv] bnx2x: Add MBI version to ethtool driver query output. (Manish Chopra) [1663271] - [netdrv] drivers: net: remove inclusion when not needed (Manish Chopra) [1663271] - [netdrv] bnx2x: remove ndo_poll_controller (Manish Chopra) [1663271] - [netdrv] bnx2x: Provide VF link status in ndo_get_vf_config (Manish Chopra) [1663271] - [netdrv] bnx2x: Ignore bandwidth attention in single function mode (Manish Chopra) [1663271] - [block] block: remove CONFIG_LBDAF (Ming Lei) [1708452] - [kernel] sched/pelt: Fix warning and clean up IRQ PELT config (Phil Auld) [1637824] - [kernel] sched/pelt: Fix update_blocked_averages() for RT and DL classes (Phil Auld) [1637824] - [mm] mm, sched/numa: Remove remaining traces of NUMA rate-limiting (Phil Auld) [1637824] - [kernel] sched/fair: Fix cpu_util_wake() for 'execl' type workloads (Phil Auld) [1637824] - [kernel] sched/fair: Consider SD_NUMA when selecting the most idle group to schedule on (Phil Auld) [1637824] - [kernel] sched/numa: Migrate pages to local nodes quicker early in the lifetime of a task (Phil Auld) [1637824] - [mm] mm, sched/numa: Remove rate-limiting of automatic NUMA balancing migration (Phil Auld) [1637824] - [kernel] sched/numa: Avoid task migration for small NUMA improvement (Phil Auld) [1637824] - [mm] mm/migrate: Use spin_trylock() while resetting rate limit (Phil Auld) [1637824] - [kernel] sched/numa: Limit the conditions where scan period is reset (Phil Auld) [1637824] - [kernel] sched/numa: Reset scan rate whenever task moves across nodes (Phil Auld) [1637824] - [kernel] sched/numa: Pass destination CPU as a parameter to migrate_task_rq (Phil Auld) [1637824] - [kernel] sched/numa: Stop multiple tasks from moving to the CPU at the same time (Phil Auld) [1637824] - [kernel] sched/fair: Fix scale_rt_capacity() for SMT (Phil Auld) [1637824] - [kernel] sched/numa: Move task_numa_placement() closer to numa_migrate_preferred() (Phil Auld) [1637824] - [kernel] sched/numa: Use group_weights to identify if migration degrades locality (Phil Auld) [1637824] - [kernel] sched/numa: Update the scan period without holding the numa_group lock (Phil Auld) [1637824] - [kernel] sched/numa: Remove numa_has_capacity() (Phil Auld) [1637824] - [kernel] sched/numa: Modify migrate_swap() to accept additional parameters (Phil Auld) [1637824] - [kernel] sched/numa: Remove unused task_capacity from 'struct numa_stats' (Phil Auld) [1637824] - [kernel] sched/numa: Skip nodes that are at 'hoplimit' (Phil Auld) [1637824] - [kernel] sched/debug: Reverse the order of printing faults (Phil Auld) [1637824] - [kernel] sched/numa: Use task faults only if numa_group is not yet set up (Phil Auld) [1637824] - [kernel] sched/numa: Set preferred_node based on best_cpu (Phil Auld) [1637824] - [kernel] sched/numa: Simplify load_too_imbalanced() (Phil Auld) [1637824] - [kernel] sched/numa: Evaluate move once per node (Phil Auld) [1637824] - [kernel] sched/fair: Remove #ifdefs from scale_rt_capacity() (Phil Auld) [1637824] - [kernel] sched/cpufreq: Clarify sugov_get_util() (Phil Auld) [1637824] - [kernel] sched/sysctl: Remove unused sched_time_avg_ms sysctl (Phil Auld) [1637824] - [kernel] sched/core: Remove the rt_avg code (Phil Auld) [1637824] - [kernel] sched/core: Use PELT for scale_rt_capacity() (Phil Auld) [1637824] - [kernel] sched/cpufreq: Remove sugov_aggregate_util() (Phil Auld) [1637824] - [kernel] cpufreq/schedutil: Take time spent in interrupts into account (Phil Auld) [1637824] - [kernel] sched/irq: Add IRQ utilization tracking (Phil Auld) [1637824] - [kernel] cpufreq/schedutil: Use DL utilization tracking (Phil Auld) [1637824] - [kernel] sched/dl: Add dl_rq utilization tracking (Phil Auld) [1637824] - [kernel] cpufreq/schedutil: Use RT utilization tracking (Phil Auld) [1637824] - [kernel] sched/rt: Add rt_rq utilization tracking (Phil Auld) [1637824] - [kernel] sched/pelt: Move PELT related code in a dedicated file (Phil Auld) [1637824] - [char] ipmi_si: Potential array underflow in hotmod_handler() (Tony Camuso) [1665131] - [char] ipmi_si: Remove hacks for adding a dummy platform devices (Tony Camuso) [1665131] - [char] ipmi_si: Consolidate scanning the platform bus (Tony Camuso) [1665131] - [char] ipmi_si: Remove hotmod devices on removal and exit (Tony Camuso) [1665131] - [char] ipmi_si: Remove hardcode IPMI devices by scanning the platform bus (Tony Camuso) [1665131] - [char] ipmi_si: Switch hotmod to use a platform device (Tony Camuso) [1665131] - [char] ipmi: Fix failure on SMBIOS specified devices (Tony Camuso) [1665131] - [char] ipmi: Consolidate the adding of platform devices (Tony Camuso) [1665131] - [char] ipmi_si: Rename addr_type to addr_space to match what it does (Tony Camuso) [1665131] - [char] ipmi_si: Convert some types into unsigned (Tony Camuso) [1665131] - [char] ipmi: ipmi_si_hardcode.c: init si_type array to fix a crash (Tony Camuso) [1665131] - [char] ipmi_si: Fix crash when using hard-coded device (Tony Camuso) [1665131] - [char] ipmi: Use dedicated API for copying a UUID (Tony Camuso) [1665131] - [char] ipmi: Use defined constant for UUID representation (Tony Camuso) [1665131] - [char] ipmi:ssif: Change some pr_xxx to dev_xxx calls (Tony Camuso) [1665131] - [char] ipmi: kcs_bmc: handle devm_kasprintf() failure case (Tony Camuso) [1665131] - [char] ipmi: Fix return value when a message is truncated (Tony Camuso) [1665131] - [char] ipmi: clean an indentation issue, remove extraneous space (Tony Camuso) [1665131] - [char] ipmi: Make the smi watcher be disabled immediately when not needed (Tony Camuso) [1665131] - [char] ipmi: Fix how the lower layers are told to watch for messages (Tony Camuso) [1665131] - [char] ipmi: Fix SSIF flag requests (Tony Camuso) [1665131] - [char] ipmi_si: fix use-after-free of resource->name (Tony Camuso) [1665131] - [char] ipmi: Don't initialize anything in the core until something uses it (Tony Camuso) [1665131] - [char] ipmi:ssif: Fix handling of multi-part return messages (Tony Camuso) [1665131] - [char] ipmi:dmi: Use pr_fmt in the IPMI DMI code (Tony Camuso) [1665131] - [char] ipmi: Remove platform driver overrides and use the id_table (Tony Camuso) [1665131] - [char] ipmi: msghandler: Add and use pr_fmt and dev_fmt, remove PFX (Tony Camuso) [1665131] - [char] ipmi: Use more common logging styles (Tony Camuso) [1665131] - [acpi] ACPI / glue: Split dev_is_platform() out of module for wide use (Tony Camuso) [1665131]- [scsi] scsi: hpsa: bump driver version (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: remove timeout from TURs (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: clean up two indentation issues (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: mark expected switch fall-throughs (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: switch to generic DMA API (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: Use vmemdup_user to replace the open code (Joseph Szczypek) [1672669] - [netdrv] ibmvnic: Add device identification to requested IRQs (Steve Best) [1665717] - [crypto] crypto: authenc - fix parsing key with misaligned rta_len (Herbert Xu) [1707546] - [block] block: don't drain in-progress dispatch in blk_cleanup_queue() (Ming Lei) [1694879] - [block] blk-mq: move cancel of hctx->run_work into blk_mq_hw_sysfs_release (Ming Lei) [1694879] - [include] blk-mq: always free hctx after request queue is freed (Ming Lei) [1694879] - [block] blk-mq: split blk_mq_alloc_and_init_hctx into two parts (Ming Lei) [1694879] - [block] blk-mq: free hw queue's resource in hctx's release handler (Ming Lei) [1694879] - [block] blk-mq: move cancel of requeue_work into blk_mq_release (Ming Lei) [1694879] - [block] blk-mq: grab .q_usage_counter when queuing request from plug code path (Ming Lei) [1694879] - [block] block: fix use-after-free on gendisk (Ming Lei) [1694879] - [netdrv] bonding: fix event handling for stacked bonds (Jarod Wilson) [1708390] - [netdrv] bonding: show full hw address in sysfs for slave entries (Jarod Wilson) [1708390] - [netdrv] bonding: fix PACKET_ORIGDEV regression (Jarod Wilson) [1708390] - [netdrv] bonding: check slave set command firstly (Jarod Wilson) [1708390] - [netdrv] bonding: count master 3ad stats separately (Jarod Wilson) [1708390] - [netdrv] bonding: add support for xstats and export 3ad stats (Jarod Wilson) [1708390] - [netdrv] bonding: add 3ad stats (Jarod Wilson) [1708390] - [netdrv] bonding: 3ad: remove bond_3ad_rx_indication's length argument (Jarod Wilson) [1708390] - [netdrv] bonding: adjust style of bond_3ad_rx_indication (Jarod Wilson) [1708390] - [netdrv] bonding: update nest level on unlink (Jarod Wilson) [1708390] - [netdrv] bonding: fix indentation issues, remove extra spaces (Jarod Wilson) [1708390] - [netdrv] bonding: convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1708390] - [netdrv] bonding: fix 802.3ad state sent to partner when unbinding slave (Jarod Wilson) [1708390] - [netdrv] bonding: use netpoll_poll_dev() helper (Jarod Wilson) [1708390] - [net] netpoll: do not test NAPI_STATE_SCHED in poll_one_napi() (Jarod Wilson) [1708390] - [net] netpoll: make ndo_poll_controller() optional (Jarod Wilson) [1708390] - [netdrv] bonding: don't cast const buf in sysfs store (Jarod Wilson) [1708390] - [netdrv] netdevsim: fix sa_idx out of bounds check (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: add ipsec offload API test (Ivan Vecera) [1708373] - [netdrv] netdevsim: add ipsec offload testing (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: use dummydev as a test device (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: clear the return code at start of ipsec test (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: use a local IP address for IPsec tests (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: hide complaint from terminated monitor (Ivan Vecera) [1708373] - [powerpc] powerpc/watchdog: Use hrtimers for per-CPU heartbeat (Steve Best) [1708327] - [netdrv] ixgbevf: Update driver version for RHEL-8.1.0 (Ken Cox) [1659166] - [netdrv] drivers: net: intel: use secpath helpers in more places (Ken Cox) [1659166] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Ken Cox) [1659166] - [netdrv] ixgbevf: add support for software timestamps (Ken Cox) [1659166] - [netdrv] ixgbe/ixgbevf: fix XFRM_ALGO dependency (Ken Cox) [1659166] - [netdrv] ixgbevf: off by one in ixgbevf_ipsec_tx() (Ken Cox) [1659166] - [netdrv] ixgbevf: fix msglen for ipsec mbx messages (Ken Cox) [1659166] - [netdrv] ixgbevf: remove ndo_poll_controller (Ken Cox) [1659166] - [netdrv] intel-ethernet: use correct module license (Ken Cox) [1659166] - [netdrv] ixgbevf: enable VF IPsec offload operations (Ken Cox) [1659166] - [netdrv] ixgbevf: add VF IPsec offload code (Ken Cox) [1659166] - [netdrv] ixgbevf: add defines for IPsec offload request (Ken Cox) [1659166] - [netdrv] ixgbevf: VF2VF TCP RSS (Ken Cox) [1659166] - [netdrv] ixgbe: Update driver version for RHEL-8.1.0 (Ken Cox) [1659164] - [netdrv] intel: correct return from set features callback (Ken Cox) [1659164] - [netdrv] ixgbe: don't do any AF_XDP zero-copy transmit if netif is not OK (Ken Cox) [1659164] - [netdrv] ixgbe: fix potential RX buffer starvation for AF_XDP (Ken Cox) [1659164] - [netdrv] ixgbe: fix older devices that do not support IXGBE_MRQC_L3L4TXSWEN (Ken Cox) [1659164] - [netdrv] net: bpf: remove XDP_QUERY_XSK_UMEM enumerator (Ken Cox) [1659164] - [netdrv] ixgbe: Use struct_size() helper (Ken Cox) [1659164] - [netdrv] ixgbe: remove magic constant in ixgbe_reset_hw_82599() (Ken Cox) [1659164] - [netdrv] ixgbe: use mii_bus to handle MII related ioctls (Ken Cox) [1659164] - [netdrv] ixgbe: register a mdiobus (Ken Cox) [1659164] - [netdrv] drivers: net: intel: use secpath helpers in more places (Ken Cox) [1659164] - [netdrv] ixgbe: Fix race when the VF driver does a reset (Ken Cox) [1659164] - [netdrv] ixgbe: recognize 1000BaseLX SFP modules as 1Gbps (Ken Cox) [1659164] - [netdrv] ixgbe: Replace synchronize_sched() with synchronize_rcu() (Ken Cox) [1659164] - [netdrv] i40e/ixgbe/igb: fail on new WoL flag setting WAKE_MAGICSECURE (Ken Cox) [1659164] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Ken Cox) [1659164] - [netdrv] ixgbe: allow IPsec Tx offload in VEPA mode (Ken Cox) [1659164] - [netdrv] ixgbe: don't clear_bit on xdp_ring->state if xdp_ring is null (Ken Cox) [1659164] - [netdrv] ixgbe: fix MAC anti-spoofing filter after VFLR (Ken Cox) [1659164] - [netdrv] ixgbe/ixgbevf: fix XFRM_ALGO dependency (Ken Cox) [1659164] - [netdrv] drivers: net: remove inclusion when not needed (Ken Cox) [1659164] - [netdrv] ixgbe: check return value of napi_complete_done() (Ken Cox) [1659164] - [netdrv] ixgbe: add AF_XDP zero-copy Tx support (Ken Cox) [1659164] - [netdrv] ixgbe: move common Tx functions to ixgbe_txrx_common.h (Ken Cox) [1659164] - [netdrv] ixgbe: add AF_XDP zero-copy Rx support (Ken Cox) [1659164] - [netdrv] ixgbe: move common Rx functions to ixgbe_txrx_common.h (Ken Cox) [1659164] - [netdrv] ixgbe: added Rx/Tx ring disable/enable functions (Ken Cox) [1659164] - [netdrv] ixgbe: Fix crash with VFs and flow director on interface flap (Ken Cox) [1659164] - [netdrv] ixgbe: remove redundant function ixgbe_fw_recovery_mode() (Ken Cox) [1659164] - [netdrv] ixgbe: Fix ixgbe TX hangs with XDP_TX beyond queue limit (Ken Cox) [1659164] - [netdrv] ixgbe: remove ndo_poll_controller (Ken Cox) [1659164] - [netdrv] intel-ethernet: use correct module license (Ken Cox) [1659164] - [netdrv] ixgbe: fix the return value for unsupported VF offload (Ken Cox) [1659164] - [netdrv] ixgbe: disallow IPsec Tx offload when in SR-IOV mode (Ken Cox) [1659164] - [netdrv] ixgbe: add VF IPsec offload request message handling (Ken Cox) [1659164] - [netdrv] ixgbe: add VF IPsec offload enable flag (Ken Cox) [1659164] - [netdrv] ixgbe: add VF IPsec management (Ken Cox) [1659164] - [netdrv] ixgbe: prep IPsec constants for later use (Ken Cox) [1659164] - [netdrv] ixgbe: reload IPsec IP table after sa tables (Ken Cox) [1659164] - [netdrv] ixgbe: don't clear IPsec sa counters on HW clearing (Ken Cox) [1659164] - [netdrv] ixgbe: firmware recovery mode (Ken Cox) [1659164] - [netdrv] ixgbe: fix driver behaviour after issuing VFLR (Ken Cox) [1659164] - [netdrv] ixgbe: Prevent unsupported configurations with XDP (Ken Cox) [1659164] - [netdrv] ixgbe: Refactor queue disable logic to take completion time into account (Ken Cox) [1659164] - [netdrv] ixgbe: Reorder Tx/Rx shutdown to reduce time needed to stop device (Ken Cox) [1659164] - [netdrv] ixgbe: add ipsec security registers into ethtool register dump (Ken Cox) [1659164] - [netdrv] ixgbe: Do not allow LRO or MTU change with XDP (Ken Cox) [1659164] - [wireless] brcmfmac: add subtype check for event handling in data path (Stanislaw Gruszka) [1705386] {CVE-2019-9500} - [wireless] brcmfmac: assure SSID length from firmware is limited (Stanislaw Gruszka) [1705386] {CVE-2019-9500} - [base] driver core: Postpone DMA tear-down until after devres release (Maurizio Lombardi) [1698053]- [of] of: Add missing exports of node name compare functions (Neil Horman) [1665660] - [of] of: add node name compare helper functions (Neil Horman) [1665660] - [include] gpio: Add API to explicitly name a consumer (Neil Horman) [1665660] - [drivers] spi: spi-gpio: fix SPI_CS_HIGH capability (Neil Horman) [1665660] - [drivers] spi: use gpio[d]_set_value_cansleep for setting chipselect GPIO (Neil Horman) [1665660] - [drivers] spi: gpio: Advertise support for SPI_CS_HIGH (Neil Horman) [1665660] - [include] spi: support inter-word delay requirement for devices (Neil Horman) [1665660] - [drivers] spi: dw: Fix default polarity of native chipselect (Neil Horman) [1665660] - [drivers] spi: Support high CS when using descriptors (Neil Horman) [1665660] - [include] spi: Go back to immediate teardown (Neil Horman) [1665660] - [drivers] spi: dw: change snprintf to scnprintf for possible overflow (Neil Horman) [1665660] - [drivers] spi: dw: fix warning unused variable 'ret' (Neil Horman) [1665660] - [include] spi: core: avoid waking pump thread from spi_sync instead run teardown delayed (Neil Horman) [1665660] - [drivers] spi: dw: Convert to use CS GPIO descriptors (Neil Horman) [1665660] - [include] spi: Optionally use GPIO descriptors for CS GPIOs (Neil Horman) [1665660] - [drivers] spi: dw: fix potential variable assignment error (Neil Horman) [1665660] - [drivers] spi: Use of_node_name_eq for node name comparisons (Neil Horman) [1665660] - [drivers] spi: dw-mmio: add ACPI support (Neil Horman) [1665660] - [include] spi: add support for octal mode I/O data transfer (Neil Horman) [1665660] - [drivers] spi: Fix formatting of header block (Neil Horman) [1665660] - [drivers] spi: Fix core transfer waits after slave support (Neil Horman) [1665660] - [drivers] spi: Deal with slaves that return from transfer_one() unfinished (Neil Horman) [1665660] - [include] spi: gpio: Support 3WIRE high-impedance turn-around (Neil Horman) [1665660] - [drivers] spi: Make GPIO CSs honour the SPI_NO_CS flag (Neil Horman) [1665660] - [drivers] dw: spi: add support for Amazon's Alpine spi controller (Neil Horman) [1665660] - [include] spi: Add driver_override SPI device attribute (Neil Horman) [1665660] - [include] spi: make OF helper available for others (Neil Horman) [1665660] - [include] spi: switch to SPDX license identifier (Neil Horman) [1665660] - [drivers] spi: always use software fallback for SPI_CS_WORD when using cs_gio (Neil Horman) [1665660] - [drivers] spi: add software implementation for SPI_CS_WORD (Neil Horman) [1665660] - [include] spi: add new SPI_CS_WORD flag (Neil Horman) [1665660] - [drivers] spi: gpio: No MISO does not imply no RX (Neil Horman) [1665660] - [drivers] spi: dw: support 4-16 bits per word (Neil Horman) [1665660] - [drivers] spi: spi-gpio: Remove set but not used variable 'pdata' (Neil Horman) [1665660] - [drivers] spi: Do not print a message if spi_controller_{suspend,resume}() fails (Neil Horman) [1665660] - [drivers] spi: gpio: Fix copy-and-paste error (Neil Horman) [1665660] - [drivers] spi: dw-mmio: avoid hardcoded field mask (Neil Horman) [1665660] - [drivers] spi: dw-mmio: add MSCC Jaguar2 support (Neil Horman) [1665660] - [include] spi: Introduce one new field to set word delay (Neil Horman) [1665660] - [drivers] spi: Fix double IDR allocation with DT aliases (Neil Horman) [1665660] - [drivers] spi: fix IDR collision on systems with both fixed and dynamic SPI bus numbers (Neil Horman) [1665660] - [drivers] spi: spi-gpio: add SPI_3WIRE support (Neil Horman) [1665660] - [drivers] spi: add flags parameter to txrx_word function pointers (Neil Horman) [1665660] - [drivers] spi: dw-mmio: add MSCC Ocelot support (Neil Horman) [1665660] - [drivers] spi: dw: export dw_spi_set_cs (Neil Horman) [1665660] - [drivers] spi: dw: allow providing own set_cs callback (Neil Horman) [1665660] - [drivers] spi: dw: fix possible race condition (Neil Horman) [1665660] - [acpi] ACPI / APD: Add clock frequency for Hisilicon Hip08 SPI controller (Neil Horman) [1665660] - [md] md/raid: raid5 preserve the writeback action after the parity check (Nigel Croxon) [1702309] - [md] Revert "Don't jump to compute_result state from check_result state" (Nigel Croxon) [1702309] - [md] md: return -ENODEV if rdev has no mddev assigned (Nigel Croxon) [1702309] - [md] md: add __acquires/__releases annotations to handle_active_stripes (Nigel Croxon) [1702309] - [md] md: add __acquires/__releases annotations to (un)lock_two_stripes (Nigel Croxon) [1702309] - [md] md: mark md_cluster_mod static (Nigel Croxon) [1702309] - [md] md: use correct type in super_1_sync (Nigel Croxon) [1702309] - [md] md: use correct type in super_1_load (Nigel Croxon) [1702309] - [md] md: use correct types in md_bitmap_print_sb (Nigel Croxon) [1702309] - [md] md: add a missing endianness conversion in check_sb_changes (Nigel Croxon) [1702309] - [md] md: add mddev->pers to avoid potential NULL pointer dereference (Nigel Croxon) [1702309] - [md] md: batch flush requests. (Nigel Croxon) [1702309] - [md] Revert "MD: fix lock contention for flush bios" (Nigel Croxon) [1702309] - [md] Don't jump to compute_result state from check_result state (Nigel Croxon) [1702309] - [netdrv] bnxt_en: Reset device on RX buffer errors. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Improve RX consumer index validity check. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Drop oversize TX packets to prevent errors. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Wait longer for the firmware message response to complete. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix typo in firmware message timeout logic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Return relevant error code when offload fails (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for mdio read/write to external PHY (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Propagate trusted VF attribute to firmware. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for BCM957504 (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.47. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Disable interrupts when allocating CP rings or NQs. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix context memory allocation. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix ring checking logic on 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Adjust default RX coalescing ticks to 10 us. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Support for 64-bit flow handle. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Increase context memory allocations on 57500 chips for RDMA. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add Level 2 context memory paging support. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Enhance bnxt_alloc_ring()/bnxt_free_ring(). (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for 2nd firmware message channel. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Introduce bnxt_get_hwrm_resp_addr & bnxt_get_hwrm_seq_id routines. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Avoid arithmetic on void * pointer. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use macros for firmware message doorbell offsets. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Set hwrm_intr_seq_id value to its inverted value. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.33. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix ethtool self-test loopback. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: query force speeds before disabling autoneg mode. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Do not free port statistics buffer when device is down. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Save ring statistics before reset. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Return linux standard errors in bnxt_ethtool.c (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Don't set ETS on unused TCs. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add ethtool -S priority counters. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add SR-IOV support for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Disable MSIX before re-reserving NQs/CMPL rings. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Reserve 1 stat_ctx for RDMA driver. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Do not modify max_stat_ctxs after RDMA driver requests/frees stat_ctxs (Selvin Xavier) [1664477] - [netdrv] bnxt_en: get rid of num_stat_ctxs variable (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add bnxt_get_avail_cp_rings_for_en() helper function. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Store the maximum NQs available on the PF. (Selvin Xavier) [1664477] - [netdrv] bnxt: remove printing of hwrm message (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix _bnxt_get_max_rings() for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix NQ/CP rings accounting on the new 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Keep track of reserved IRQs. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix CNP CoS queue regression. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix filling time in bnxt_fill_coredump_record() (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add software "missed_irqs" counter. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Workaround occasional TX timeout on 57500 A0. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Disable RDMA support on the 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix rx_l4_csum_errors counter on 57500 devices. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix RSS context allocation. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Copy and paste bug in extended tx_stats (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add PCI ID for BCM57508 device. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add new NAPI poll function for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Refactor bnxt_poll_work(). (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add coalescing setup for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use bnxt_cp_ring_info struct pointer as parameter for RX path. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add RSS support for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Increase RSS context array count and skip ring groups on 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Allocate/Free CP rings for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Modify bnxt_ring_alloc_send_msg() to support 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add helper functions to get firmware CP ring ID. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Allocate completion ring structures for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Modify the ring reservation functions for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Adjust MSIX and ring groups for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Re-structure doorbells. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add 57500 new chip ID and basic structures. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Configure context memory on new devices. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Check context memory requirements from firmware. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add new flags to setup new page table PTE bits on newer devices. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Refactor bnxt_ring_struct. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update interrupt coalescing logic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add maximum extended request length fw message support. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add additional extended port statistics. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.3. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Remove unnecessary unsigned integer comparison and initialize variable (Selvin Xavier) [1664477] - [netdrv] bnxt_en: get the reduced max_irqs by the ones used by RDMA (Selvin Xavier) [1664477] - [netdrv] bnxt_en: free hwrm resources, if driver probe fails. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix enables field in HWRM_QUEUE_COS2BW_CFG request (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix VNIC reservations on the PF. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add a driver specific gre_ver_check devlink parameter. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use msix_vec_per_pf_max and msix_vec_per_pf_min devlink params. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: return proper error when FW returns HWRM_ERR_CODE_RESOURCE_ACCESS_DENIED (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use ignore_ari devlink parameter (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix TX timeout during netpoll. (Selvin Xavier) [1664477] - [netdrv] bnxt: remove ndo_poll_controller (Selvin Xavier) [1664477] - [netdrv] bnxt_en: don't try to offload VLAN 'modify' action (Selvin Xavier) [1664477] - [netdrv] bnxt_en: remove set but not used variable 'addr_type' (Selvin Xavier) [1664477] - [netdrv] bnxt_en: remove set but not used variable 'rx_stats' (Selvin Xavier) [1664477] - [netdrv] net: bnxt: Fix a uninitialized variable warning. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: take coredump_record structure off stack (Selvin Xavier) [1664477] - [netdrv] bnxt_en: avoid string overflow for record->system_name (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix strcpy() warnings in bnxt_ethtool.c (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Do not use the CNP CoS queue for networking traffic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add DCBNL DSCP application protocol support. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add hwmon sysfs support to read temperature (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Notify firmware about IF state changes. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Move firmware related flags to a new fw_cap field in struct bnxt. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add BNXT_NEW_RM() macro. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for ethtool get dump. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update RSS setup and GRO-HW logic according to the latest spec. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add new VF resource allocation strategy mode. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add PHY retry logic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add external loopback test to ethtool selftest. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Adjust timer based on ethtool stats-block-usecs settings. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface version to 1.9.2.25. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: combine 'else if' and 'else' into single branch (Selvin Xavier) [1664477] - [netdrv] bnxt_en: remove redundant debug register dma mem allocation (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add bnxt_en initial params table and register it. (Selvin Xavier) [1664477] - [netdrv] sfc: mcdi_port: Mark expected switch fall-through (Jarod Wilson) [1685478] - [netdrv] sfc: ensure recovery after allocation failures (Jarod Wilson) [1685478] - [netdrv] sfc: Replace dev_kfree_skb_any by dev_consume_skb_any (Jarod Wilson) [1685478] - [netdrv] sfc: add bundle partition definitions to mtd (Jarod Wilson) [1685478] - [netdrv] sfc: Replace spin_is_locked() with lockdep (Jarod Wilson) [1685478] - [netdrv] sfc: remove ndo_poll_controller (Jarod Wilson) [1685478] - [iommu] iommu/amd: Set exclusion range correctly (Jerry Snitselaar) [1702766] - [iommu] iommu/amd: Reserve exclusion range in iova-domain (Jerry Snitselaar) [1694835] - [scsi] scsi: mpt3sas: Fix kernel panic during expander reset (Tomas Henzl) [1677693] - [mm] mm/vmstat.c: fix /proc/vmstat format for CONFIG_DEBUG_TLBFLUSH=y CONFIG_SMP=n (Waiman Long) [1705607] - [mm] x86/mm: Drop usage of __flush_tlb_all() in kernel_physical_mapping_init() (Waiman Long) [1705607] - [include] x86/mm: Validate kernel_physical_mapping_init() PTE population (Waiman Long) [1705607] - [include] generic/pgtable: Introduce set_pte_safe() (Waiman Long) [1705607] - [include] generic/pgtable: Introduce {p4d,pgd}_same() (Waiman Long) [1705607] - [include] generic/pgtable: Make {pmd, pud}_same() unconditionally available (Waiman Long) [1705607] - [mm] percpu: stop printing kernel addresses (Waiman Long) [1705607] - [x86] x86/speculation: Prevent deadlock on ssb_state::lock (Waiman Long) [1705607] - [fs] debugfs: fix use-after-free on symlink traversal (Waiman Long) [1705607] - [lib] debugobjects: avoid recursive calls with kmemleak (Waiman Long) [1705607] - [mm] mm/swapfile.c: use kvzalloc for swap_info_struct allocation (Waiman Long) [1705607] - [mm] hugetlbfs: fix kernel BUG at fs/hugetlbfs/inode.c:444! (Waiman Long) [1705607] - [include] watchdog/core: Add missing prototypes for weak functions (Waiman Long) [1705607] - [mm] memory_hotplug: cond_resched in __remove_pages (Waiman Long) [1705607] - [kernel] genirq: Fix race on spurious interrupt detection (Waiman Long) [1705607] - [kernel] printk: Fix panic caused by passing log_buf_len to command line (Waiman Long) [1705607] - [mm] mm/hmm: fix race between hmm_mirror_unregister() and mmu_notifier callback (Waiman Long) [1705607] - [mm] mm/rmap: map_pte() was not handling private ZONE_DEVICE page properly (Waiman Long) [1705607] - [mm] hugetlbfs: dirty pages as they are added to pagecache (Waiman Long) [1705607] - [fs] mm: /proc/pid/smaps_rollup: fix NULL pointer deref in smaps_pte_range() (Waiman Long) [1705607] - [kernel] sched/fair: Fix the min_vruntime update logic in dequeue_entity() (Waiman Long) [1705607] - [mm] x86/mm/pat: Disable preemption around __flush_tlb_all() (Waiman Long) [1705607] - [x86] x86/corruption-check: Fix panic in memory_corruption_check() when boot option without value is provided (Waiman Long) [1705607] - [x86] x86/time: Correct the attribute on jiffies' definition (Waiman Long) [1705607] - [x86] x86/percpu: Fix this_cpu_read() (Waiman Long) [1705607] - [x86] x86/tsc: Force inlining of cyc2ns bits (Waiman Long) [1705607] - [mm] mm/migrate.c: split only transparent huge pages when allocation fails (Waiman Long) [1705607] - [mm] mm/thp: fix call to mmu_notifier in set_pmd_migration_entry() v2 (Waiman Long) [1705607] - [mm] mm/mmap.c: don't clobber partially overlapping VMA with MAP_FIXED_NOREPLACE (Waiman Long) [1705607] - [mm] percpu: stop leaking bitmap metadata blocks (Waiman Long) [1705607] - [lib] vsprintf: Fix off-by-one bug in bstr_printf() processing dereferenced pointers (Waiman Long) [1705607] - [mm] mm/vmstat.c: fix outdated vmstat_text (Waiman Long) [1705607] - [base] PM / core: Clear the direct_complete flag on errors (Waiman Long) [1705607] - [tools] x86/vdso: Fix vDSO syscall fallback asm constraint regression (Waiman Long) [1705607] - [x86] x86/vdso: Only enable vDSO retpolines when enabled and supported (Waiman Long) [1705607] - [tools] selftests/x86: Add clock_gettime() tests to test_vdso (Waiman Long) [1705607] - [x86] x86/vdso: Fix asm constraints on vDSO syscall fallbacks (Waiman Long) [1705607] - [drivers] clocksource/drivers/timer-atmel-pit: Properly handle error cases (Waiman Long) [1705607] - [mm] mm/vmstat.c: skip NR_TLB_REMOTE_FLUSH* properly (Waiman Long) [1705607] - [mm] mm, thp: fix mlocking THP page with migration enabled (Waiman Long) [1705607] - [mm] mm: migration: fix migration of huge PMD shared pages (Waiman Long) [1705607] - [net] net/smc: improve smc_conn_create reason codes (Philipp Rudo) [1703471] - [net] net/smc: improve smc_listen_work reason codes (Philipp Rudo) [1703471] - [net] net/smc: code cleanup smc_listen_work (Philipp Rudo) [1703471] - [net] net/smc: cleanup of get vlan id (Philipp Rudo) [1703471] - [net] net/smc: consolidate function parameters (Philipp Rudo) [1703471] - [net] net/smc: check for ip prefix and subnet (Philipp Rudo) [1703471] - [net] net/smc: fallback to TCP after connect problems (Philipp Rudo) [1703471] - [net] net/smc: nonblocking connect rework (Philipp Rudo) [1703471] - [net] net/smc: move unhash before release of clcsock (Philipp Rudo) [1703471] - [net] net/smc: fix return code from FLUSH command (Philipp Rudo) [1703471] - [net] net/smc: propagate file from SMC to TCP socket (Philipp Rudo) [1703471] - [net] net/smc: fix a NULL pointer dereference (Philipp Rudo) [1703471] - [net] net/smc: wait for pending work before clcsock release_sock (Philipp Rudo) [1703471] - [net] net/smc: allow pnetid-less configuration (Philipp Rudo) [1700797] - [net] net/smc: allow PCI IDs as ib device names in the pnet table (Philipp Rudo) [1700797] - [net] net/smc: add pnet table namespace support (Philipp Rudo) [1700797] - [net] net/smc: add smcd support to the pnet table (Philipp Rudo) [1700797] - [net] net/smc: rework pnet table (Philipp Rudo) [1700797] - [net] net/smc: cleanup for smcr_tx_sndbuf_nonempty (Philipp Rudo) [1700797]- [tools] tools power turbostat: Override CFLAGS assignments and add LDFLAGS to build command (Steve Best) [1705959] - [tools] tools/power turbostat: update version number (Steve Best) [1705959] - [tools] tools/power turbostat: Add checks for failure of fgets() and fscanf() (Steve Best) [1705959] - [tools] tools/power turbostat: Warn on bad ACPI LPIT data (Steve Best) [1705959] - [tools] tools/power turbostat: Also read package power on AMD F17h (Zen) (Steve Best) [1705959] - [tools] tools/power turbostat: Add support for AMD Fam 17h (Zen) RAPL (Steve Best) [1705959] - [tools] tools/power turbostat: Do not display an error on systems without a cpufreq driver (Steve Best) [1705959] - [tools] tools/power turbostat: Add Die column (Steve Best) [1705959] - [tools] tools/power turbostat: Cleanup CNL-specific code (Steve Best) [1705959] - [tools] tools/power turbostat: Cleanup CC3-skip code (Steve Best) [1705959] - [tools] tools/power turbostat: Restore ability to execute in topology-order (Steve Best) [1705959] - [tools] tools/power turbostat: fix goldmont C-state limit decoding (Steve Best) [1705959] - [tools] tools/power turbostat: reduce debug output (Steve Best) [1705959] - [tools] tools/power turbosat: fix AMD APIC-id output (Steve Best) [1705959] - [mmc] mmc: sdhci-iproc: Add ACPI support (Mark Langsdorf) [1576966] - [mmc] mmc: sdhci-pltfm: Convert DT properties to generic device properties (Mark Langsdorf) [1576966] - [tty] serial: 8250_dw: Add ACPI support for uart on Broadcom SoC (Mark Langsdorf) [1576966] - [watchdog] watchdog: sp805: Add clock-frequency property (Mark Langsdorf) [1576966] - [watchdog] watchdog: sp805: set WDOG_HW_RUNNING when appropriate (Mark Langsdorf) [1576966] - [thermal] thermal: broadcom: Add Stingray thermal driver (Mark Langsdorf) [1576966] - [hv] hv: vmbus: Change server monitor_pages index to 0 (Mohammed Gamal) [1691383] - [kernel] hv: vmbus: Expose counters for interrupts and full conditions (Mohammed Gamal) [1691383] - [kernel] vmbus: Switch to use new generic UUID API (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Check for ring when getting debug info (Mohammed Gamal) [1691383] - [x86] hyper-v: move synic/stimer control structures definitions to hyperv-tlfs.h (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Return -EINVAL for the sys files for unopened channels (Mohammed Gamal) [1691383] - [hv] x86, hyperv: remove PCI dependency (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Offload the handling of channels to two workqueues (Mohammed Gamal) [1691383] - [hv] hv: vmbus: check the creation_status in vmbus_establish_gpadl() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Remove the useless API vmbus_get_outgoing_channel() (Mohammed Gamal) [1691383] - [hv] hv: kvp: Use u to print U32 (Mohammed Gamal) [1691383] - [hv] hv_utils: update name in struct hv_driver util_drv (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Get rid of unnecessary state in hv_context (Mohammed Gamal) [1691383] - [hv] hv: kvp: Fix the recent regression caused by incorrect clean-up (Mohammed Gamal) [1691383] - [hv] hv_balloon: Replace spin_is_locked() with lockdep (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Use cpumask_var_t for on-stack cpu mask (Mohammed Gamal) [1691383] - [hv] hv: kvp: Fix two "this statement may fall through" warnings (Mohammed Gamal) [1691383] - [hv] hv: kvp: Fix the indentation of some "break" statements (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix the descriptions of some function parameters (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Use get/put_cpu() in vmbus_connect() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix synic per-cpu context initialization (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Cleanup synic memory free path (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Remove use of slow_virt_to_phys() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: add numa_node to sysfs (Mohammed Gamal) [1691383] - [x86] hv: vmbus: Get rid of MSR access from vmbus_drv.c (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix the issue with freeing up hv_ctl_table_hdr (Mohammed Gamal) [1691383] - [hv] hv: vmus: Fix the check for return value from kmsg get dump buffer (Mohammed Gamal) [1691383] - [hv] hv: Send one page worth of kmsg dump over Hyper-V during panic (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Remove x86 MSR refs in arch independent code (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix the offer_in_progress in vmbus_process_offer() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Add comments on ring buffer signaling (Mohammed Gamal) [1691383] - [video] use the new async probing feature for the hyperv drivers (Mohammed Gamal) [1691383] - [rpmspec] kernel-packaging: Remove kernel files from kernel-modules-extra package (Prarit Bhargava) [1705216] - [fs] xfs: don't ever put nlink > 0 inodes on the unlinked list (Brian Foster) [1693063] - [fs] xfs: reserve blocks for ifree transaction during log recovery (Brian Foster) [1693063] - [fs] xfs: rename m_inotbt_nores to m_finobt_nores (Brian Foster) [1693063] - [net] xfrm: Honor original L3 slave device in xfrmi policy lookup (Herbert Xu) [1702198] - [net] xfrm: Fix inbound traffic via XFRM interfaces across network namespaces (Herbert Xu) [1702198] - [net] xfrm: Make set-mark default behavior backward compatible (Herbert Xu) [1702198] - [net] xfrm: remove unnecessary check in xfrmi_get_stats64 (Herbert Xu) [1702198] - [net] xfrm: fix gro_cells leak when remove virtual xfrm interfaces (Herbert Xu) [1702198] - [net] xfrm: Make function xfrmi_get_link_net() static (Herbert Xu) [1702198] - [net] xfrm: fix ptr_ret.cocci warnings (Herbert Xu) [1702198] - [net] xfrm: Return detailed errors from xfrmi_newlink (Herbert Xu) [1702198] - [net] xfrm: Allow xfrmi if_id to be updated by UPDSA (Herbert Xu) [1702198] - [net] xfrm: Remove xfrmi interface ID from flowi (Herbert Xu) [1702198] - [net] xfrm: Allow Set Mark to be Updated Using UPDSA (Herbert Xu) [1702198] - [net] xfrm: Add virtual xfrm interfaces (Herbert Xu) [1702198] - [net] xfrm: Add a new lookup key to match xfrm interfaces. (Herbert Xu) [1702198] - [net] flow: Extend flow informations with xfrm interface id. (Herbert Xu) [1702198] - [net] xfrm: Extend the output_mark to support input direction and masking. (Herbert Xu) [1702198] - [fs] xfs: don't account extra agfl blocks as available (Brian Foster) [1656687] - [scsi] scsi: hisi_sas: Some misc tidy-up (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Don't fail IT nexus reset for Open Reject timeout (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Don't hard reset disk during controller reset (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Support all RAS events with MSI interrupts (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: allocate different SAS address for directly attached situation (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Adjust the printk format of functions hisi_sas_init_device() (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Fix for setting the PHY linkrate when disconnected (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Remedy inconsistent PHY down state in software (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: add host reset interface for test (Xiaojun Tan) [1702614] - [hid] HID: Increase maximum report size allowed by hid_field_extract() (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: remove data[128] usage on stack when sending HBM request (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: move doorbell writing before flush (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: Optimize writing ipc message from queue (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: avoid binding wrong ishtp_cl_device (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: Enable Ice Lake mobile (Tony Camuso) [1688112] - [hid] HID: increase maximum global item tag report size to 256 (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: Enable Sunrise Point-H ish driver (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: remove redundant variable num_frags (Tony Camuso) [1688112]- [s390] Disable kexec_load via kernel_lockdown for s390 (Philipp Rudo) [1659399] - [s390] s390/ipl: Provide has_secure sysfs attribute (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Create ipl report and pass to next kernel (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Signature verification prototype (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Load new kernel to absolute 0 (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Unify loader code (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Simplify parmarea access (Philipp Rudo) [1659399] - [s390] s390/purgatory: Omit use of bin2c (Philipp Rudo) [1659399] - [s390] s390/purgatory: Reduce purgatory size (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Fix detection of text segment in ELF loader (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Fix potential segment overlap in ELF loader (Philipp Rudo) [1659399] - [s390] s390/zcore: Rename ipl_block to mitigate name collision (Philipp Rudo) [1659399] - [s390] s390/boot: pad bzImage to 4K (Philipp Rudo) [1659399] - [s390] s390/ipl: add helper functions to create an IPL report (Philipp Rudo) [1659399] - [s390] s390/ipl: read IPL report at early boot (Philipp Rudo) [1659399] - [s390] s390/ipl: add definitions for the IPL report block (Philipp Rudo) [1659399] - [s390] s390/ipl: provide uapi header for list directed IPL (Philipp Rudo) [1659399] - [s390] s390/ipl: make ipl_info less confusing (Philipp Rudo) [1659399] - [s390] s390: introduce .boot.preserved.data section compile time validation (Philipp Rudo) [1659399] - [s390] s390: move ipl block to .boot.preserved.data section (Philipp Rudo) [1659399] - [s390] s390: introduce .boot.preserved.data section (Philipp Rudo) [1659399] - [mm] s390: clean up redundant facilities list setup (Philipp Rudo) [1659399] - [s390] s390/als: remove duplicated in-place implementation of stfle (Philipp Rudo) [1659399] - [netdrv] fm10k: Fix a potential NULL pointer dereference (Neil Horman) [1659172] - [netdrv] fm10k: use struct_size() in kzalloc() (Neil Horman) [1659172] - [netdrv] fm10k: TRIVIAL cleanup of extra spacing in function comment (Neil Horman) [1659172] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Neil Horman) [1659172] - [netdrv] fm10k: bump driver version to match out-of-tree release (Neil Horman) [1659172] - [netdrv] fm10k: add missing device IDs to the upstream driver (Neil Horman) [1659172] - [netdrv] fm10k: ensure completer aborts are marked as non-fatal after a resume (Neil Horman) [1659172] - [netdrv] fm10k: fix SM mailbox full condition (Neil Horman) [1659172] - [netdrv] fm10k: remove ndo_poll_controller (Neil Horman) [1659172] - [netdrv] intel-ethernet: use correct module license (Neil Horman) [1659172] - [scsi] Revert "scsi: fcoe: clear FC_RP_STARTED flags when receiving a LOGO" (Nilesh Javali) [1701545] - [tools] tools: introduce test_and_clear_bit (Peter Xu) [1694926] - [net] bridge: fix netlink export of vlan_stats_per_port option (Ivan Vecera) [1703551] - [net] bridge: fix vlan stats use-after-free on destruction (Ivan Vecera) [1703551] - [tools] headers uapi: Update linux/if_link.h header copy (Ivan Vecera) [1703551] - [net] bridge: fix a possible memory leak in __vlan_add (Ivan Vecera) [1703551] - [net] bridge: add support for per-port vlan stats (Ivan Vecera) [1703551] - [net] bridge: mcast: Default back to multicast enabled state (Ivan Vecera) [1703551] - [net] bridge: pack net_bridge better (Ivan Vecera) [1703551] - [net] bridge: convert mtu_set_by_user to a bit (Ivan Vecera) [1703551] - [net] bridge: convert neigh_suppress_enabled option to a bit (Ivan Vecera) [1703551] - [net] bridge: convert mcast options to bits (Ivan Vecera) [1703551] - [net] bridge: convert and rename mcast disabled (Ivan Vecera) [1703551] - [net] bridge: convert group_addr_set option to a bit (Ivan Vecera) [1703551] - [net] bridge: convert nf call options to bits (Ivan Vecera) [1703551] - [net] bridge: add bitfield for options and convert vlan opts (Ivan Vecera) [1703551] - [net] bridge: make struct opening bracket consistent (Ivan Vecera) [1703551] - [net] Add netif_is_gretap()/netif_is_ip6gretap() (Ivan Vecera) [1701208] - [net] sched: register callbacks for indirect tc block binds (Ivan Vecera) [1701214] - [tools] selftests: tc-testing: fix tunnel_key failure if dst_port is unspecified (Ivan Vecera) [1701210] - [tools] selftests: tc-testing: drop test on missing tunnel key id (Ivan Vecera) [1701210] - [net] sched: act_tunnel_key: Don't dump dst port if it wasn't set (Ivan Vecera) [1701210] - [net] sched: act_tunnel_key: Allow key-less tunnels (Ivan Vecera) [1701210] - [net] ethtool: Added support for 50Gbps per lane link modes (Ivan Vecera) [1701215] - [net] ip_gre: fix parsing gre header in ipgre_err (Hangbin Liu) [1702212] - [net] vxlan: Free a leaked vetoed multicast rdst (Ivan Vecera) [1691695] - [net] switchdev: Add extack argument to call_switchdev_notifiers() (Ivan Vecera) [1691695] - [netdrv] vxlan: Add extack to switchdev operations (Ivan Vecera) [1691695] - [net] net: Add extack argument to ndo_fdb_add() (Ivan Vecera) [1691695] - [netdrv] vxlan: changelink: Delete remote after update (Ivan Vecera) [1691695] - [netdrv] vxlan: changelink: Postpone vxlan_config_apply() (Ivan Vecera) [1691695] - [netdrv] vxlan: changelink: Inline vxlan_dev_configure() (Ivan Vecera) [1691695] - [netdrv] vxlan: Allow vetoing of FDB notifications (Ivan Vecera) [1691695] - [netdrv] vxlan: Have vxlan_fdb_replace() save original rdst value (Ivan Vecera) [1691695] - [netdrv] vxlan: Split vxlan_fdb_update() in two (Ivan Vecera) [1691695] - [netdrv] vxlan: Move up vxlan_fdb_free(), vxlan_fdb_destroy() (Ivan Vecera) [1691695] - [net] bridge: Add br_fdb_clear_offload() (Ivan Vecera) [1691695] - [netdrv] vxlan: Add vxlan_fdb_clear_offload() (Ivan Vecera) [1691695] - [netdrv] vxlan: Add vxlan_fdb_replay() (Ivan Vecera) [1691695] - [net] route: add support for directed broadcast forwarding (Xin Long) [1562384] - [net] erspan: build the header with the right proto according to erspan_ver (Xin Long) [1663862] - [net] ipv6: make ip6_create_rt_rcu return ip6_null_entry instead of NULL (Xin Long) [1688617] - [net] tipc: handle the err returned from cmd header function (Jon Maloy) [1693452] - [net] tipc: check link name with right length in tipc_nl_compat_link_set (Jon Maloy) [1693452] - [net] tipc: check bearer name with right length in tipc_nl_compat_bearer_enable (Jon Maloy) [1693452] - [net] tipc: change to check tipc_own_id to return in tipc_net_stop (Jon Maloy) [1693452] - [net] tipc: tipc clang warning (Jon Maloy) [1693452] - [net] tipc: fix cancellation of topology subscriptions (Jon Maloy) [1693452] - [net] tipc: allow service ranges to be connect()'ed on RDM/DGRAM (Jon Maloy) [1693452] - [net] net: tipc: fix a missing check for nla_nest_start (Jon Maloy) [1693452] - [net] net: tipc: fix a missing check of nla_nest_start (Jon Maloy) [1693452] - [net] tipc: fix RDM/DGRAM connect() regression (Jon Maloy) [1693452] - [net] tipc: fix race condition causing hung sendto (Jon Maloy) [1693452] - [net] tipc: improve function tipc_wait_for_rcvmsg() (Jon Maloy) [1693452] - [net] tipc: improve function tipc_wait_for_cond() (Jon Maloy) [1693452] - [net] tipc: fix link session and re-establish issues (Jon Maloy) [1693452] - [net] tipc: fix skb may be leaky in tipc_link_input (Jon Maloy) [1693452] - [net] tipc: remove dead code in struct tipc_topsrv (Jon Maloy) [1693452] - [net] tipc: mark expected switch fall-throughs (Jon Maloy) [1693452] - [net] tipc: remove unneeded semicolon in trace.c (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_doit (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_name_table_dump (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_link_set (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_bearer_enable (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_link_reset_stats (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in in tipc_conn_rcv_sub (Jon Maloy) [1693452] - [net] tipc: fix memory leak in tipc_nl_compat_publ_dump (Jon Maloy) [1693452] - [net] tipc: fix a missing check of genlmsg_put (Jon Maloy) [1693452] - [net] tipc: fix a double free in tipc_enable_bearer() (Jon Maloy) [1693452] - [net] net/netlink_compat: Fix a missing check of nla_parse_nested (Jon Maloy) [1693452] - [net] tipc: fix uninitialized value for broadcast retransmission (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc bearer (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc node (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc socket (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc link (Jon Maloy) [1693452] - [net] tipc: enable tracepoints in tipc (Jon Maloy) [1693452] - [net] tipc: handle broadcast NAME_DISTRIBUTOR packet when receiving it (Jon Maloy) [1693452] - [net] tipc: check group dests after tipc_wait_for_cond() (Jon Maloy) [1693452] - [net] tipc: check tsk->group in tipc_wait_for_cond() (Jon Maloy) [1693452] - [net] tipc: compare remote and local protocols in tipc_udp_enable() (Jon Maloy) [1693452] - [net] tipc: use lock_sock() in tipc_sk_reinit() (Jon Maloy) [1693452] - [net] tipc: fix node keep alive interval calculation (Jon Maloy) [1693452] - [net] tipc: fix lockdep warning during node delete (Jon Maloy) [1693452] - [net] tipc: don't assume linear buffer when reading ancillary data (Jon Maloy) [1693452] - [net] tipc: fix lockdep warning when reinitilaizing sockets (Jon Maloy) [1693452] - [net] tipc: fix link re-establish failure (Jon Maloy) [1693452] - [net] tipc: improve broadcast retransmission algorithm (Jon Maloy) [1693452] - [net] tipc: use destination length for copy string (Jon Maloy) [1693452] - [net] tipc: support binding to specific ip address when activating UDP bearer (Jon Maloy) [1677371 1693452] - [net] tipc: remainder of commit ignore STATE_MSG on wrong link session (Jon Maloy) [1693452] - [net] tipc: buffer overflow handling in listener socket (Jon Maloy) [1693452] - [net] tipc: add SYN bit to connection setup messages (Jon Maloy) [1693452] - [net] tipc: refactor function tipc_sk_filter_connect() (Jon Maloy) [1693452] - [net] tipc: refactor function tipc_sk_timeout() (Jon Maloy) [1693452] - [net] tipc: refactor function tipc_msg_reverse() (Jon Maloy) [1693452] - [net] tipc: Add and use skb_mark_not_on_list(). (Jon Maloy) [1693452] - [net] tipc: correct spelling errors for tipc_topsrv_queue_evt() comments (Jon Maloy) [1693452] - [net] tipc: correct spelling errors for struct tipc_bc_base's comment (Jon Maloy) [1693452] - [net] tipc: correct structure parameter comments for topsrv (Jon Maloy) [1693452] - [net] net/tipc: remove redundant variables 'tn' and 'oport' (Jon Maloy) [1693452] - [net] net: tipc: bcast: Replace GFP_ATOMIC with GFP_KERNEL in tipc_bcast_init() (Jon Maloy) [1693452] - [net] net: tipc: name_table: Replace GFP_ATOMIC with GFP_KERNEL in tipc_nametbl_init() (Jon Maloy) [1693452] - [net] tipc: make some functions static (Jon Maloy) [1693452] - [net] tipc: make link capability update thread safe (Jon Maloy) [1693452] - [net] tipc: remove unused tipc_group_size (Jon Maloy) [1693452] - [net] tipc: remove unused tipc_link_is_active (Jon Maloy) [1693452] - [net] tipc: check session number before accepting link protocol messages (Jon Maloy) [1693452] - [net] tipc: add sequence number check for link STATE messages (Jon Maloy) [1693452] - [net] tipc: mark expected switch fall-throughs (Jon Maloy) [1693452] - [net] tipc: extend sock diag for group communication (Jon Maloy) [1693452] - [net] tipc: Auto removal of peer down node instance (Jon Maloy) [1693452] - [net] tipc: optimize function tipc_node_timeout() (Jon Maloy) [1693452] - [net] tipc: eliminate buffer cloning in function tipc_msg_extract() (Jon Maloy) [1693452] - [net] netfilter: nf_conncount: fix argument order to find_next_bit (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: speculative garbage collection on empty lists (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: move all list iterations under spinlock (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: merge lookup and add functions (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: restart search when nodes have been erased (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: split gc in two phases (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: don't skip eviction when age is negative (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: replace CONNCOUNT_LOCK_SLOTS with CONNCOUNT_SLOTS (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: use rb_link_node_rcu() instead of rb_link_node() (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: remove wrong condition check routine (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: fix unexpected permanent node of list. (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: fix list_del corruption in conn_free (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: use spin_lock_bh instead of spin_lock (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Add list lock and gc worker, and RCU for init tree search (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Split insert and traversal (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Move locking into count_tree() (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Early exit in nf_conncount_lookup() and cleanup (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Switch to plain list (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Early exit for garbage collection (Florian Westphal) [1531074] - [net] ptp: uapi: change _IOW to IOWR in PTP_SYS_OFFSET_EXTENDED definition (Hangbin Liu) [1677215] - [net] ptp: check that rsv field is zero in struct ptp_sys_offset_extended (Hangbin Liu) [1677215] - [net] ptp: deprecate gettime64() in favor of gettimex64() (Hangbin Liu) [1677215] - [net] ptp: add PTP_SYS_OFFSET_EXTENDED ioctl (Hangbin Liu) [1677215] - [net] ptp: check gettime64 return code in PTP_SYS_OFFSET ioctl (Hangbin Liu) [1677215] - [net] ptp: reorder declarations in ptp_ioctl() (Hangbin Liu) [1677215] - [net] tuntap: fix multiqueue rx (Guillaume Nault) [1686563]- [edac] EDAC/amd64: Add Family 17h Model 30h PCI IDs (Aristeu Rozanski) [1696603] - [x86] Update stepping values for coffee lake desktop (David Arcari) [1704800] - [security] KEYS: trusted: allow trusted.ko to initialize w/o a TPM (Jerry Snitselaar) [1694208] - [security] tpm: pass an array of tpm_extend_digest structures to tpm_pcr_extend() (Jerry Snitselaar) [1665130 1665129] - [security] KEYS: trusted: explicitly use tpm_chip structure from tpm_default_chip() (Jerry Snitselaar) [1665130 1665129] - [char] tpm/ppi: Enable submission of optional command parameter for PPI 1.3 (Jerry Snitselaar) [1665130] - [char] tpm/ppi: Possibly show command parameter if TPM PPI 1.3 is used (Jerry Snitselaar) [1665130] - [char] tpm/ppi: Display up to 101 operations as define for version 1.3 (Jerry Snitselaar) [1665130] - [char] tpm/ppi: rename TPM_PPI_REVISION_ID to TPM_PPI_REVISION_ID_1 (Jerry Snitselaar) [1665130] - [char] tpm/ppi: pass function revision ID to tpm_eval_dsm() (Jerry Snitselaar) [1665130] - [char] tpm: Fix the type of the return value in calc_tpm2_event_size() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: fix an invalid condition in tpm_common_poll (Jerry Snitselaar) [1694208] - [char] tpm: turn on TPM on suspend for TPM 1.x (Jerry Snitselaar) [1694208 1665130] - [char] tpm: move tpm_chip definition to include/linux/tpm.h (Jerry Snitselaar) [1665129] - [char] tpm: retrieve digest size of unknown algorithms with PCR read (Jerry Snitselaar) [1665130 1665129] - [char] tpm: rename and export tpm2_digest and tpm2_algorithms (Jerry Snitselaar) [1665130 1665129] - [char] tpm: dynamically allocate the allocated_banks array (Jerry Snitselaar) [1665130 1665129] - [char] tpm: remove @flags from tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: take TPM chip power gating out of tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: introduce tpm_chip_start() and tpm_chip_stop() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: remove TPM_TRANSMIT_UNLOCKED flag (Jerry Snitselaar) [1665130 1665129] - [char] tpm: use tpm_try_get_ops() in tpm-sysfs.c. (Jerry Snitselaar) [1665130] - [char] tpm: remove @space from tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: move TPM space code out of tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: move tpm_validate_commmand() to tpm2-space.c (Jerry Snitselaar) [1665130 1665129] - [char] tpm: clean up tpm_try_transmit() error handling flow (Jerry Snitselaar) [1665130 1665129] - [char] tpm: encapsulate tpm_dev_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: access command header through struct in tpm_try_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: declare struct tpm_header (Jerry Snitselaar) [1665130 1665129] - [char] tpm: print tpm2_commit_space() error inside tpm2_commit_space() (Jerry Snitselaar) [1665129] - [char] tpm: return 0 from pcrs_show() when tpm1_pcr_read() fails (Jerry Snitselaar) [1665130] - [char] tpm: fix invalid return value in pubek_show() (Jerry Snitselaar) [1694208 1665130] - [char] tpm: use tpm_buf in tpm_transmit_cmd() as the IO parameter (Jerry Snitselaar) [1665130 1665129] - [char] tpm: don't return bool from update_timeouts (Jerry Snitselaar) [1665130] - [char] tpm: don't print error message in tpm_transmit_cmd when tpm still testing (Jerry Snitselaar) [1665129] - [char] tpm: add _head suffix to tcg_efi_specid_event and tcg_pcr_event2 (Jerry Snitselaar) [1665129] - [char] tpm: Fix off-by-one when reading binary_bios_measurements (Jerry Snitselaar) [1694208 1665130] - [char] tpm: Simplify the measurements loop (Jerry Snitselaar) [1665130] - [char] tpm/tpm_i2c_atmel: Return -E2BIG when the transfer is incomplete (Jerry Snitselaar) [1694208] - [char] tpm: Unify the send callback behaviour (Jerry Snitselaar) [1665129] - [char] tpm: Fix some name collisions with drivers/char/tpm.h (Jerry Snitselaar) [1694208] - [char] tpm/tpm_crb: Avoid unaligned reads in crb_recv() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: add support for partial reads (Jerry Snitselaar) [1665129] - [char] tpm: tpm_ibmvtpm: fix kdoc warnings (Jerry Snitselaar) [1665129] - [char] tpm: fix kdoc for tpm2_flush_context_cmd() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: tpm_try_transmit() refactor error flow. (Jerry Snitselaar) [1694208 1665129] - [char] tpm: use u32 instead of int for PCR index (Jerry Snitselaar) [1665130 1665129] - [security] ima: Get rid of ima_used_chip and use ima_tpm_chip != NULL instead (Jerry Snitselaar) [1665130 1665129] - [security] ima: Use tpm_default_chip() and call TPM functions with a tpm_chip (Jerry Snitselaar) [1665129] - [char] tpm1: reimplement tpm1_continue_selftest() using tpm_buf (Jerry Snitselaar) [1665130] - [char] tpm1: reimplement SAVESTATE using tpm_buf (Jerry Snitselaar) [1665130] - [char] tpm1: rename tpm1_pcr_read_dev to tpm1_pcr_read() (Jerry Snitselaar) [1665130] - [char] tpm1: implement tpm1_pcr_read_dev() using tpm_buf structure (Jerry Snitselaar) [1665130] - [char] tpm: tpm1: rewrite tpm1_get_random() using tpm_buf structure (Jerry Snitselaar) [1665130] - [char] tpm: tpm-space.c remove unneeded semicolon (Jerry Snitselaar) [1665129] - [char] tpm: tpm-interface.c drop unused macros (Jerry Snitselaar) [1694208 1665130] - [char] tpm: add tpm_auto_startup() into tpm-interface.c (Jerry Snitselaar) [1665129] - [char] tpm: factor out tpm_startup function (Jerry Snitselaar) [1665130 1665129] - [char] tpm: factor out tpm 1.x pm suspend flow into tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: move tpm 1.x selftest code from tpm-interface.c tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: factor out tpm1_get_random into tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: move tpm_getcap to tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: move tpm1_pcr_extend to tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: factor out tpm_get_timeouts() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: add tpm_calc_ordinal_duration() wrapper (Jerry Snitselaar) [1665130 1665129] - [char] tpm: factor out tpm 1.x duration calculation to tpm1-cmd.c (Jerry Snitselaar) [1665130 1665129] - [char] tpm: sort objects in the Makefile (Jerry Snitselaar) [1665129] - [char] tpm2: add new tpm2 commands according to TCG 1.36 (Jerry Snitselaar) [1665129] - [char] tpm: tpm_i2c_nuvoton: use correct command duration for TPM 2.x (Jerry Snitselaar) [1665129] - [char] tpm: add support for nonblocking operation (Jerry Snitselaar) [1665129] - [char] tpm: add ptr to the tpm_space struct to file_priv (Jerry Snitselaar) [1665129] - [char] tpm: Make SECURITYFS a weak dependency (Jerry Snitselaar) [1665129] - [char] tpm: suppress transmit cmd error logs when TPM 1.2 is disabled/deactivated (Jerry Snitselaar) [1665130] - [char] tpm: fix response size validation in tpm_get_random() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: replace TPM_TRANSMIT_RAW with TPM_TRANSMIT_NESTED (Jerry Snitselaar) [1665129] - [char] tpm: Convert tpm_find_get_ops() to use tpm_default_chip() (Jerry Snitselaar) [1665129] - [char] tpm: Implement tpm_default_chip() to find a TPM chip (Jerry Snitselaar) [1665129] - [char] tpm: rename tpm_chip_find_get() to tpm_find_get_ops() (Jerry Snitselaar) [1665129] - [char] tpm: Allow tpm_tis drivers to set hwrng quality. (Jerry Snitselaar) [1665129] - [char] tpm: Return the actual size when receiving an unsupported command (Jerry Snitselaar) [1694208 1665129] - [char] tpm/tpm_i2c_infineon: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (Jerry Snitselaar) [1665129] - [char] tpm_tis_spi: Pass the SPI IRQ down to the driver (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_get_random() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_get_tpm_pt() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_probe() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_shutdown() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [pci] PCI: Fix __initdata issue with "pci=disable_acs_redir" parameter (Myron Stowe) [1704979] - [s390] s390/pci: skip VF scanning (Myron Stowe) [1704979] - [pci] PCI/IOV: Add flag so platforms can skip VF scanning (Myron Stowe) [1704979] - [pci] PCI/IOV: Factor out sriov_add_vfs() (Myron Stowe) [1704979] - [pci] switchtec: Add MRPC DMA mode support (Myron Stowe) [1704979] - [pci] switchtec: Improve MRPC efficiency by enabling write combining (Myron Stowe) [1704979] - [pci] switchtec: Fix SWITCHTEC_IOCTL_EVENT_IDX_ALL flags overwrite (Myron Stowe) [1704979] - [pci] switchtec: Set DMA coherent mask (Myron Stowe) [1704979] - [pci] switchtec: Remove immediate status check after submitting MRPC command (Myron Stowe) [1704979] - [pci] PCI / PM: Allow runtime PM without callback functions (Myron Stowe) [1704979] - [pci] PCI/P2PDMA: Clean up documentation and kernel-doc (Myron Stowe) [1704979] - [pci] PCI: Remove unnecessary space before function pointer arguments (Myron Stowe) [1704979] - [maintainers] MAINTAINERS: Add x86 early-quirks.c file pattern to PCI subsystem (Myron Stowe) [1704979] - [pci] PCI: Expand the "PF" acronym in Kconfig help text (Myron Stowe) [1704979] - [x86] x86/PCI: Fix Broadcom CNB20LE unintended sign extension (redux) (Myron Stowe) [1704979] - [pci] PCI/ASPM: Remove unused lists from struct pcie_link_state (Myron Stowe) [1704979] - [pci] PCI / ACPI: Identify untrusted PCI devices (Myron Stowe) [1704979]- [documentation] x86/resctrl: Update Documentation/x86/resctrl_ui.txt (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Remove unnecessary check for cbm_validate() (Prarit Bhargava) [1504489] - [maintainers] MAINTAINERS: Update resctrl filename patterns (Prarit Bhargava) [1504489] - [documentation] Documentation: Rename and update intel_rdt_ui.txt to resctrl_ui.txt (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Introduce AMD QOS feature (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Fixup the user-visible strings (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Add AMD's X86_FEATURE_MBA to the scattered CPUID features (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Rename the config option INTEL_RDT to RESCTRL (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Add vendor check for the MBA software controller (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Bring cbm_validate() into the resource structure (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Initialize the vendor-specific resource functions (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Move all the macros to resctrl/internal.h (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Re-arrange the RDT init code (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Rename the RDT functions and definitions (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Rename and move rdt files to a separate directory (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Prevent pseudo-locking from using stale pointers (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix initial allocation to consider CDP (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: CBM overlap should also check for overlap with CDP peer (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce utility to obtain CDP peer (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix out-of-bounds memory access in CBM tests (Prarit Bhargava) [1504489] - [x86] perf/x86: Add helper to obtain performance counter index (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Switch to bitmap_zalloc() (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Re-enable pseudo-lock measurements (Prarit Bhargava) [1504489] - [x86] x86/cpu: Sanitize FAM6_ATOM naming (David Arcari) [1504489] - [x86] x86/intel_rdt: Use perf infrastructure for measurements (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create required perf event attributes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Remove local register variables (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix incorrect loop end condition (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix exclusive mode handling of MBA resource (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix incorrect loop end condition (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Do not allow pseudo-locking of MBA resource (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix unchecked MSR access (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix invalid mode warning when multiple resources are managed (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Global closid helper to support future fixes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix size reporting of MBA resource (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix data type in parsing callbacks (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Disable PMU access (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix possible circular lock dependency (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Make CPU information accessible for pseudo-locked regions (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support restoration of subset of permissions (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix cleanup of plr structure on error (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Move pseudo_lock_region_clear() (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Limit C-states dynamically when pseudo-locking active (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support L3 cache performance event of Broadwell (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: More precise L2 hit/miss measurements (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create character device exposing pseudo-locked region (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create debugfs files for pseudo-locking testing (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create resctrl debug area (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Ensure RDT cleanup on exit (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Resctrl files reflect pseudo-locked information (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support creation/removal of pseudo-locked region (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Pseudo-lock region creation/removal core (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Discover supported platforms via prefetch disable bits (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add utilities to test pseudo-locked region possibility (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Split resource group removal in two (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Enable entering of pseudo-locksetup mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support enter/exit of locksetup mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce pseudo-locked region (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add check to determine if monitoring in progress (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Utilities to restrict/restore access to specific files (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Protect against resource group changes during locking (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add utility to restrict/restore access to resctrl files (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add utility to test if tasks assigned to resource group (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Respect read and write access (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce the Cache Pseudo-Locking modes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Display resource groups' allocations' size in bytes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce "bit_usage" to display cache allocations details (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Ensure requested schemata respects mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support flexible data to parsing callbacks (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Making CBM name and type more explicit (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Enable setting of exclusive mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce new "exclusive" mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Initialize new resource group with sane defaults (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Make useful functions available internally (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce test to determine if closid is in use (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce resource group's mode resctrl file (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Associate mode with each RDT resource group (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce RDT resource group mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Provide pseudo-locking hooks within rdt_mount (Prarit Bhargava) [1504489] - [x86] perf/x86: Make perf callchains work without CONFIG_FRAME_POINTER (Jiri Olsa) [1699780]- [kernel] sched/fair: Do not re-read ->h_load_next during hierarchical load calculation (Phil Auld) [1701762] - [s390] kvm: s390: enable MSA9 keywrapping functions depending on cpu model (Thomas Huth) [1660913] - [s390] kvm: s390: add deflate conversion facilty to cpu model (Thomas Huth) [1660913] - [s390] kvm: s390: add enhanced sort facilty to cpu model (Thomas Huth) [1660913] - [s390] kvm: s390: provide query function for instructions returning 32 byte (Thomas Huth) [1660913] - [s390] kvm: s390: add MSA9 to cpumodel (Thomas Huth) [1660913] - [s390] kvm: s390: add vector BCD enhancements facility to cpumodel (Thomas Huth) [1660913] - [s390] kvm: s390: add vector enhancements facility 2 to cpumodel (Thomas Huth) [1660913] - [s390] kvm: s390: add debug logging for cpu model subfunctions (Thomas Huth) [1660913] - [s390] kvm: s390: implement subfunction processor calls (Thomas Huth) [1660913] - [powercap] powercap: intel_rapl: add support for Jacobsville (Steve Best) [1482401] - [x86] x86/cpu: Add Atom Tremont (Jacobsville) (Steve Best) [1482401]- [crypto] crypto: qat - Remove unused goto label (Neil Horman) [1660313] - [crypto] crypto: prefix header search paths with $(srctree)/ (Neil Horman) [1660313] - [crypto] crypto: qat - no need to check return value of debugfs_create functions (Neil Horman) [1660313] - [crypto] cross-tree: phase out dma_zalloc_coherent() (Neil Horman) [1660313] - [crypto] crypto: qat - move temp buffers off the stack (Neil Horman) [1660313] - [crypto] crypto: qat - Remove VLA usage (Neil Horman) [1660313] - [include] block: kill all_q_node in request_queue (Ming Lei) [1702865] - [block] bfq: update internal depth state when queue depth changes (Ming Lei) [1702865] - [fs] block: fix the return errno for direct IO (Ming Lei) [1702865] - [block] block: do not leak memory in bio_copy_user_iov() (Ming Lei) [1702865] - [nvme] nvme: cancel request synchronously (Ming Lei) [1702865] - [block] blk-mq: introduce blk_mq_complete_request_sync() (Ming Lei) [1702865] - [scsi] scsi: virtio_scsi: limit number of hw queues by nr_cpu_ids (Ming Lei) [1702865] - [block] virtio-blk: limit number of hw queues by nr_cpu_ids (Ming Lei) [1702865] - [block] block, bfq: fix use after free in bfq_bfqq_expire (Ming Lei) [1702865] - [block] paride/pcd: Fix potential NULL pointer dereference and mem leak (Ming Lei) [1702865] - [block] blk-mq: do not reset plug->rq_count before the list is sorted (Ming Lei) [1702865] - [block] paride/pf: Fix potential NULL pointer dereference (Ming Lei) [1702865] - [block] blk-mq: add trace block plug and unplug for multiple queues (Ming Lei) [1702865] - [block] block: use blk_free_flush_queue() to free hctx->fq in blk_mq_init_hctx (Ming Lei) [1702865] - [block] paride/pcd: cleanup queues when detection fails (Ming Lei) [1702865] - [block] paride/pf: cleanup queues when detection fails (Ming Lei) [1702865] - [crypto] crypto: chelsio - Fixed Traffic Stall (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Fix passing zero to 'PTR_ERR' warning in chcr_aead_op (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Inline single pdu only (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - avoid using sa_entry imm (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - remove set but not used variables 'adap' (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - check set_msg_len overflow in generate_b0 (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Fix wrong error counter increments (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Reset counters on cxgb4 Detach (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Handle PCI shutdown event (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - cleanup:send addr as value in function argument (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Use same value for both channel in single WR (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Swap location of AAD and IV sent in WR (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - remove set but not used variable 'kctx_len' (Arjun Vynipadath) [1664679] - [crypto] drivers: chelsio: use skb_sec_path helper (Arjun Vynipadath) [1664679] - [crypto] crypto: chcr - ESN for Inline IPSec Tx (Arjun Vynipadath) [1664679] - [crypto] crypto: chcr - small packet Tx stalls the queue (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - clean up various indentation issues (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Update ntx queue received from cxgb4 (Arjun Vynipadath) [1664679]- [platform] platform/x86: intel_pmc_core: Convert to INTEL_CPU_FAM6 macro (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Avoid a u32 overflow (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Include Reserved IP for LTR (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix file permissions for ltr_show (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix PCH IP name (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix PCH IP sts reading (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Handle CFL regmap properly (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: convert to DEFINE_SHOW_ATTRIBUTE (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Decode Snoop / Non Snoop LTR (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix LTR IGNORE Max offset (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Show Latency Tolerance info (David Arcari) [1658080] - [platform] platform/x86: intel_pmc: Convert to use SPDX identifier (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Add CNP SLPS0 debug registers (David Arcari) [1658080] - [x86] x86/cpu: Introduce INTEL_CPU_FAM*() helper macros (David Arcari) [1658080] - [include] locking/atomics, asm-generic: Move some macros from to a new file (David Arcari) [1658080] - [s390] s390/kasan: fix strncpy_from_user kasan checks (Philipp Rudo) [1665182] - [s390] s390: correct some inline assembly constraints (Philipp Rudo) [1665182] - [s390] s390/kasan: improve string/memory functions checks (Philipp Rudo) [1665182] - [include] compiler: remove __no_sanitize_address_or_inline again (Philipp Rudo) [1665182] - [s390] s390/kasan: increase instrumented stack size to 64k (Philipp Rudo) [1665182] - [mm] s390/kasan: support preemptible kernel build (Philipp Rudo) [1665182] - [mm] s390/kasan: add support for mem= kernel parameter (Philipp Rudo) [1665182] - [mm] s390/kasan: optimize kasan vmemmap allocation (Philipp Rudo) [1665182] - [mm] s390/kasan: avoid kasan crash with standby memory defined (Philipp Rudo) [1665182] - [s390] s390/head: avoid doubling early boot stack size under KASAN (Philipp Rudo) [1665182] - [mm] s390/mm: improve debugfs ptdump markers walking (Philipp Rudo) [1665182] - [mm] s390/mm: optimize debugfs ptdump kasan zero page walking (Philipp Rudo) [1665182] - [s390] s390/kasan: add option for 4-level paging support (Philipp Rudo) [1665182] - [mm] s390/kasan: free early identity mapping structures (Philipp Rudo) [1665182] - [s390] s390/kasan: enable stack and global variables access checks (Philipp Rudo) [1665182] - [s390] s390/dumpstack: disable __dump_trace kasan instrumentation (Philipp Rudo) [1665182] - [s390] s390/kasan: reipl and kexec support (Philipp Rudo) [1665182] - [s390] s390/smp: kasan stack instrumentation support (Philipp Rudo) [1665182] - [include] compiler: introduce __no_sanitize_address_or_inline (Philipp Rudo) [1665182] - [s390] s390/kasan: use noexec and large pages (Philipp Rudo) [1665182] - [mm] s390/kasan: dynamic shadow mem allocation for modules (Philipp Rudo) [1665182] - [mm] s390/mm: add kasan shadow to the debugfs pgtable dump (Philipp Rudo) [1665182] - [s390] s390/kasan: avoid user access code instrumentation (Philipp Rudo) [1665182] - [s390] s390/kasan: double the stack size (Philipp Rudo) [1665182] - [s390] s390/kasan: add initialization code and enable it (Philipp Rudo) [1665182] - [s390] s390: add pgd_page primitive (Philipp Rudo) [1665182] - [s390] s390: introduce MAX_PTRS_PER_P4D (Philipp Rudo) [1665182] - [s390] s390/kasan: replace some memory functions (Philipp Rudo) [1665182] - [s390] s390/kasan: avoid instrumentation of early C code (Philipp Rudo) [1665182] - [s390] s390/kasan: avoid vdso instrumentation (Philipp Rudo) [1665182] - [s390] s390/mm: add missing pfn_to_kaddr helper (Philipp Rudo) [1665182] - [s390] s390/cpum_cf: Add support for CPU-MF SVN 6 (Philipp Rudo) [1683278] - [s390] s390: report new CPU capabilities (Philipp Rudo) [1685086] - [net] net/smc: fix smc_poll in SMC_INIT state (Philipp Rudo) [1700812] - [net] net/smc: fix byte_order for rx_curs_confirmed (Philipp Rudo) [1700812] - [net] net/smc: check port_idx of ib event (Philipp Rudo) [1700799] - [net] net/smc: check connections in smc_lgr_free_work (Philipp Rudo) [1700799] - [net] net/smc: reduce amount of status updates to peer (Philipp Rudo) [1700799] - [net] net/smc: no delay for free tx buffer wait (Philipp Rudo) [1700799] - [net] net/smc: move wake up of close waiter (Philipp Rudo) [1700799] - [net] net/smc: reset cursor update required flag (Philipp Rudo) [1700799] - [net] net/smc: correct state change for peer closing (Philipp Rudo) [1700799] - [net] net/smc: delete rkey first before switching to unused (Philipp Rudo) [1700799] - [net] net/smc: fix sender_free computation (Philipp Rudo) [1700799] - [net] net/smc: preallocated memory for rdma work requests (Philipp Rudo) [1700799] - [net] net/smc: fix use of variable in cleared area (Philipp Rudo) [1700799] - [net] net/smc: use device link provided in qp_context (Philipp Rudo) [1700799] - [net] net/smc: call smc_cdc_msg_send() under send_lock (Philipp Rudo) [1700799] - [net] net/smc: do not wait under send_lock (Philipp Rudo) [1700799] - [net] net/smc: recvmsg and splice_read should return 0 after shutdown (Philipp Rudo) [1700799] - [net] net/smc: don't wait for send buffer space when data was already sent (Philipp Rudo) [1700799] - [net] net/smc: prevent races between smc_lgr_terminate() and smc_conn_free() (Philipp Rudo) [1700799] - [net] net/smc: allow 16 byte pnetids in netlink policy (Philipp Rudo) [1700799] - [net] net/smc: fix another sizeof to int comparison (Philipp Rudo) [1700799] - [net] net/smc: move code to clear the conn->lgr field (Philipp Rudo) [1700799] - [net] net/smc: use client and server LGR pending locks for SMC-R (Philipp Rudo) [1700799] - [net] net/smc: unlock LGR pending lock earlier for SMC-D (Philipp Rudo) [1700799] - [net] net/smc: use smc_curs_copy() for SMC-D (Philipp Rudo) [1700799] - [net] net/smc: postpone release of clcsock (Philipp Rudo) [1700799] - [net] smc: move unhash as early as possible in smc_release() (Philipp Rudo) [1700799] - [net] net/smc: fix TCP fallback socket release (Philipp Rudo) [1700799] - [s390] s390/ism: ignore some errors during deregistration (Philipp Rudo) [1700799] - [infiniband] mlx4: trigger IB events needed by SMC (Philipp Rudo) [1700799] - [s390] s390/smp: fix CPU hotplug deadlock with CPU rescan (Philipp Rudo) [1700836] - [block] s390/dasd: fix panic for failed online processing (Philipp Rudo) [1700811] - [netdrv] s390/qeth: fix use-after-free in error path (Philipp Rudo) [1700803] - [netdrv] s390/qeth: cancel close_dev work before removing a card (Philipp Rudo) [1700802] - [netdrv] s390/qeth: conclude all event processing before offlining a card (Philipp Rudo) [1700800] - [scsi] scsi: zfcp: fix posting too many status read buffers leading to adapter shutdown (Philipp Rudo) [1700775] - [fs] xfs: prohibit fstrim in norecovery mode (Bill O'Donnell) [1697749] - [x86] perf/x86: Fixup typo in stub functions (Waiman Long) [1688789] - [x86] perf/x86/intel: Fix memory corruption (Waiman Long) [1688789] - [x86] perf/x86/intel: Implement support for TSX Force Abort (Waiman Long) [1688789] - [x86] x86: Add TSX Force Abort CPUID/MSR (Waiman Long) [1688789] - [x86] perf/x86/intel: Generalize dynamic constraint creation (Waiman Long) [1688789] - [x86] perf/x86/intel: Make cpuc allocations consistent (Waiman Long) [1688789] - [x86] perf/x86/intel: Delay memory deallocation until x86_pmu_dead_cpu() (Waiman Long) [1688789] - [x86] perf/x86/intel: Export mem events only if there's PEBS support (Waiman Long) [1688789] - [x86] perf/x86/intel: Add a separate Arch Perfmon v4 PMI handler (Waiman Long) [1688789] - [x86] perf/x86/intel: Factor out common code of PMI handler (Waiman Long) [1688789] - [x86] perf/x86/intel: Introduce PMU flag for Extended PEBS (Waiman Long) [1688789] - [x86] x86/speculation: Add PR_SPEC_DISABLE_NOEXEC (Waiman Long) [1671512]- [kernel] exit from RHEL 8.1 early ystream mode ("Herton R. Krzesinski") - [net] Bluetooth: Verify that l2cap_get_conf_opt provides large enough buffer (Gopal Tiwari) [1700507] {CVE-2019-3459} - [target] scsi: target: iscsi: cxgbit: fix csk leak (Arjun Vynipadath) [1664683] - [target] scsi: target: iscsi: cxgbit: add missing spin_lock_init() (Arjun Vynipadath) [1664683] - [scsi] scsi: cxgb4i: fix incorrect spelling "reveive" -> "receive" (Arjun Vynipadath) [1664685] - [scsi] scsi: libcxgbi: update route finding logic (Arjun Vynipadath) [1664685] - [scsi] scsi: libcxgbi: find cxgbi device by MAC address (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgbi: remove redundant __kfree_skb call on skb and free cst->atid (Arjun Vynipadath) [1664685] - [scsi] scsi: libcxgbi: remove uninitialized variable len (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: validate tcp sequence number only if chip version <= T5 (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: get pf number from lldi->pf (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: add wait_for_completion() (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: fix thermal configuration dependencies (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: add DCB support for iSCSI connections (Arjun Vynipadath) [1664685] - [netdrv] cxgb4: Don't return EAGAIN when TCAM is full. (Arjun Vynipadath) [1664670] - [netdrv] chelsio: use BUG() instead of BUG_ON(1) (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/chtls: Prefix adapter flags with CXGB4 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4vf: Call netif_carrier_off properly in pci_probe (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4vf: Revert force link up behaviour (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: Add VF Link state support (Arjun Vynipadath) [1664670] - [netdrv] cxgb4vf: Prefix adapter flags with CXGB4VF (Arjun Vynipadath) [1664682] - [netdrv] cxgb4vf: Enter debugging mode if FW is inaccessible (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: Enable outer UDP checksum offload for T6 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Fix up netdev->hw_features (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4: Mask out interrupts that are not enabled. (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Export sge_host_page_size to ulds (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add capability to get/set SGE Doorbell Queue Timer Tick (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Add support for SGE doorbell queue timer (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4vf: Few more link management changes. (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: add tcb flags and tcb rpl struct (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T6 PCI device ids 0x608b (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Program hash region for {t4/t4vf}_change_mac() (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4: smt: use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: sched: use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: cxgb4_tc_u32: use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4vf: Update port information in cxgb4vf_open() (Arjun Vynipadath) [1664682] - [netdrv] cxgb4/cxgb4vf: Link management changes (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4: TLS record offload enable (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: clip_tbl: Use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] net: cxgb4: fix various indentation issues (Arjun Vynipadath) [1664670] - [netdrv] net: chelsio: Add a missing check on cudg_get_buffer (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove DEFINE_SIMPLE_DEBUGFS_FILE() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: number of VFs supported is not always 16 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove set but not used variables 'multitrc, speed' (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: use new fw interface to get the VIN and smt index (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Fix mac_hlist initialization and free (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4vf: fix memleak in mac_hlist initialization (Arjun Vynipadath) [1664682] - [netdrv] cxgb4vf: free mac_hlist properly (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: free mac_hlist properly (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix thermal zone build error (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix thermal configuration dependencies (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add thermal zone support (Arjun Vynipadath) [1664670] - [infiniband] cxgb4: use __vlan_hwaccel helpers (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T6 PCI device ids 0x608a (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix the error path of cxgb4_uld_register() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: use FW_PORT_ACTION_L1_CFG32 for 32 bit capability (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove the unneeded locks (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Use proper enum in IEEE_FAUX_SYNC (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Use proper enum in cxgb4_dcb_handle_fw_update (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove duplicated include from cxgb4_main.c (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: add per rx-queue counter for packet errors (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Fix endianness issue in t4_fwcache() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix abort_req_rss6 struct (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove redundant assignment to vlan_cmd.dropnovlan_fm (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: collect hardware queue descriptors (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T5 PCI device ids 0x50af and 0x50b0 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove set but not used variable 'spd' (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: add support to display DCB info (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/t4_hw: mark expected switch fall-throughs (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/l2t: Mark expected switch fall-through (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix endian to test F_FW_PORT_CMD_DCBXDIS32 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: print ULD queue information managed by LLD (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: move Tx/Rx free pages collection to common code (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add support to read actual provisioned resources (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T5 PCI device id 0x50ae (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: collect number of free PSTRUCT page pointers (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: display number of rx and tx pages free (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: collect ASIC LA dumps from ULP TX (Arjun Vynipadath) [1664670] - [netdrv] libcxgb: replace vmalloc and memset with vzalloc (Arjun Vynipadath) [1664670] - [netdrv] enic: fix checksum validation for IPv6 (Jonathan Toppins) [1685309] - [infiniband] RDMA/vmw_pvrdma: Return the correct opcode when creating WR (Jonathan Toppins) [1688010 1685309] - [infiniband] RDMA/vmw_pvrdma: Use atomic memory allocation in create AH (Jonathan Toppins) [1685309] - [infiniband] IB/usnic: fix spelling mistake "miniumum" -> "minimum" (Jonathan Toppins) [1685309] - [infiniband] RDMA/drivers: Fix spelling mistake "initalize" -> "initialize" (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Reuse code which sets port state (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Make counters thread safe (Jonathan Toppins) [1685309] - [infiniband] RDMA: Cleanup undesired pd->uobject usage (Jonathan Toppins) [1685309] - [infiniband] IB/{mlx5, ocrdma, qedr, rxe}: Omit port validation from IB verbs (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Fix incorrect cache cleanup in error flow (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Utilize generic function to validate port number (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Make function rxe_pool_cleanup return void (Jonathan Toppins) [1685309] - [infiniband] rxe: IB_WR_REG_MR does not capture MR's iova field (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: make rxe_unregister_device void (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: move the variable into the function that uses it (Jonathan Toppins) [1685309] - [infiniband] RDMA/rxe: Add link_down, rdma_sends, rdma_recvs stats counters (Jonathan Toppins) [1685309] - [infiniband] RDMA/rxe: Distinguish between down links and disabled links (Jonathan Toppins) [1685309] - [infiniband] rxe: fix error completion wr_id and qp_num (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: clean skb queue directly (Jonathan Toppins) [1685309] - [net] xprtrdma: Make sure Send CQ is allocated on an existing compvec (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Rework SCSI device reset handling (Jonathan Toppins) [1685309] - [infiniband] IB/ipoib: Fix for use-after-free in ipoib_cm_tx_start (Jonathan Toppins) [1685309] - [net] xprtrdma: Double free in rpcrdma_sendctxs_create() (Jonathan Toppins) [1685309] - [net] xprtrdma: Fix error code in rpcrdma_buffer_create() (Jonathan Toppins) [1685309] - [infiniband] IB/ipoib: drop useless LIST_HEAD (Jonathan Toppins) [1685309] - [net] xprtrdma: Prevent leak of rpcrdma_rep objects (Jonathan Toppins) [1685309] - [net] xprtrdma: Don't leak freed MRs (Jonathan Toppins) [1685309] - [net] xprtrdma: Add documenting comment for rpcrdma_buffer_destroy (Jonathan Toppins) [1685309] - [net] xprtrdma: Replace outdated comment for rpcrdma_ep_post (Jonathan Toppins) [1685309] - [net] xprtrdma: Update comments in frwr_op_send (Jonathan Toppins) [1685309] - [net] xprtrdma: Trace mapping, alloc, and dereg failures (Jonathan Toppins) [1685309] - [net] xprtrdma: Add trace points for calls to transport switch methods (Jonathan Toppins) [1685309] - [net] xprtrdma: Relocate the xprtrdma_mr_map trace points (Jonathan Toppins) [1685309] - [net] xprtrdma: Clean up of xprtrdma chunk trace points (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove unused fields from rpcrdma_ia (Jonathan Toppins) [1685309] - [net] xprtrdma: Cull dprintk() call sites (Jonathan Toppins) [1685309] - [net] xprtrdma: Simplify locking that protects the rl_allreqs list (Jonathan Toppins) [1685309] - [net] xprtrdma: Expose transport header errors (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove request_module from backchannel (Jonathan Toppins) [1685309] - [net] xprtrdma: Plant XID in on-the-wire RDMA offset (FRWR) (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove rpcrdma_memreg_ops (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove support for FMR memory registration (Jonathan Toppins) [1685309] - [net] xprtrdma: Reduce max_frwr_depth (Jonathan Toppins) [1685309] - [net] xprtrdma: Fix ri_max_segs and the result of ro_maxpages (Jonathan Toppins) [1685309] - [net] xprtrdma: Don't wake pending tasks until disconnect is done (Jonathan Toppins) [1685309] - [net] xprtrdma: No qp_event disconnect (Jonathan Toppins) [1685309] - [net] xprtrdma: Replace rpcrdma_receive_wq with a per-xprt workqueue (Jonathan Toppins) [1685309] - [net] xprtrdma: Refactor Receive accounting (Jonathan Toppins) [1685309] - [net] xprtrdma: Ensure MRs are DMA-unmapped when posting LOCAL_INV fails (Jonathan Toppins) [1685309] - [net] xprtrdma: Yet another double DMA-unmap (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Use kmem_cache_free() instead of kfree() (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Add support for immediate data (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Rework the srpt_alloc_srq() error path (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Remove driver version and release date (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Make kernel-doc headers complete (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Join split strings (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Improve coding style conformance (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Fix a use-after-free in the channel release code (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Add support for immediate data (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Rework handling of the maximum information unit length (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Move srp_rdma_ch.max_ti_iu_len declaration (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Propagate ib_post_send() failures to the SCSI mid-layer (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Handle large SCSI CDBs correctly (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Document srp_parse_in() arguments (Jonathan Toppins) [1685309] - [infiniband] include/scsi/srp.h: Add support for immediate data (Jonathan Toppins) [1685309] - [infiniband] include/scsi/srp.h: Move response flag definitions into this file (Jonathan Toppins) [1685309] - [net] svcrdma: Optimize the logic that selects the R_key to invalidate (Jonathan Toppins) [1685309] - [infiniband] IB/srpt: Drop pointless static qualifier in srpt_make_tpg() (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Fix OOPs in uverbs_user_mmap_disassociate (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Fix ioctl query port to consider device disassociation (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Fix OOPs upon device disassociation (Jonathan Toppins) [1685309] - [infiniband] RDMA/umem: Add missing initialization of owning_mm (Jonathan Toppins) [1685309] - [infiniband] RDMA/device: Expose ib_device_try_get(() (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Mark ioctl responses with UVERBS_ATTR_F_VALID_OUTPUT (Jonathan Toppins) [1685309] - [infiniband] RDMA/cma: Add cm_id restrack resource based on kernel or user cm_id type (Jonathan Toppins) [1685309] - [infiniband] RDMA/nldev: Don't expose unsafe global rkey to regular user (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Fix post send success return value in case of error (Jonathan Toppins) [1685309] - [infiniband] IB/core: Add advise_mr to the list of known ops (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Signedness bug in UVERBS_HANDLER() (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Start using dev_groups of class (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Use class_groups and let core create class file (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Refactor code to use cdev_device_add() (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Avoid destroying device while it is accessed (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Simplify and avoid dynamic allocation of class (Jonathan Toppins) [1685309] - [infiniband] RDMA/iwcm: Don't copy past the end of dev_name() string (Jonathan Toppins) [1685309] - [infiniband] IB/core: Move query port to ioctl (Jonathan Toppins) [1685309] - [infiniband] RDMA/nldev: Expose port_cap_flags2 (Jonathan Toppins) [1685309] - [infiniband] IB/core: uverbs copy to struct or zero helper (Jonathan Toppins) [1685309] - [infiniband] RDMA: Mark if destroy address handle is in a sleepable context (Jonathan Toppins) [1685309] - [infiniband] RDMA: Mark if create address handle is in a sleepable context (Jonathan Toppins) [1685309] - [infiniband] RDMA/restrack: Resource-tracker should not use uobject pointers (Jonathan Toppins) [1685309] - [include] IB/uverbs: Add support to advise_mr (Jonathan Toppins) [1685309] - [include] IB/uverbs: Add helper to get array size from ptr attribute (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add an ioctl method to destroy an object (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add a method to introspect handles in a context (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Delete RoCE GID in hw when corresponding IP is deleted (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Implement an ioctl that can call write and write_ex handlers (Jonathan Toppins) [1685309] - [infiniband] RDMA: Start use ib_device_ops (Jonathan Toppins) [1685309] - [infiniband] RDMA/rdmavt: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/rxe: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/vmw_pvrdma: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/usnic: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/qib: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/qedr: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/ocrdma: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/nes: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/mthca: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/mlx5: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/mlx4: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/i40iw: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/hns: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/hfi1: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/cxgb4: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/cxgb3: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/bnxt_re: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Introduce ib_device_ops (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Optimize clearing of extra bytes in response (Jonathan Toppins) [1685309] - [infiniband] IB/core: Add new IB rates (Jonathan Toppins) [1685309] - [include] IB/core: Add 2X port width (Jonathan Toppins) [1685309] - [include] IB/core: Add CapabilityMask2 to port attributes (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Validate port number in query_pkey verb (Jonathan Toppins) [1685309] - [include] RDMA/uverbs: Fix typo in string concatenation macro (Jonathan Toppins) [1685309] - [infiniband] IB/core: Enable getting an object type from a given uobject (Jonathan Toppins) [1685309] - [infiniband] IB/core: Introduce UVERBS_IDR_ANY_OBJECT (Jonathan Toppins) [1685309] - [infiniband] RDMA/nldev: Export to user space number of contexts (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Annotate alloc/deallloc paths with context tracking (Jonathan Toppins) [1685309] - [include] RDMA/restrack: Track ucontext (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use only attrs for the write() handler signature (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Do not check the input length on create_cq/qp paths (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use the iterator for ib_uverbs_unmarshall_recv() (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add a simple iterator interface for reading the command (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Simplify ib_uverbs_ex_query_device (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Fill in the response for IB_USER_VERBS_EX_CMD_MODIFY_QP (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_request() and core for write_ex handlers (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_request() for request copying (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_response() for remaining response copying (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Get rid of the 'callback' scheme in the compat path (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass ucore for write/write_ex (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Remove out_len checks that are now done by the core (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: fix ptr_ret.cocci warnings (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass udata for ioctl() (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass udata for write (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass udata for write_ex (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Prohibit write() calls with too small buffers (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add structure size info to write commands (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Do not pass ib_uverbs_file to ioctl methods (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Make write() handlers return 0 on success (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Replace ib_uverbs_file with uverbs_attr_bundle for write (Jonathan Toppins) [1685309] - [include] RDMA/uverbs: Add missing driver_data (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Sync unregistration with netlink commands (Jonathan Toppins) [1685309] - [infiniband] RDMA/cma: Move cma module specific functions to cma_priv.h (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Check for NULL driver methods for every write call (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Make all the method functions in uverbs_cmd static (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Convert the write interface to use uverbs_api (Jonathan Toppins) [1685309] - [infiniband] RDMA/verbs: Store the write/write_ex uapi entry points in the uverbs_api (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Require all objects to have a driver destroy function (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add helpers to mark uapi functions as unsupported (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Factor out the add/get pattern into a helper (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use a linear list to describe the compiled-in uapi (Jonathan Toppins) [1685309] - [infiniband] IB/core: Make function ib_fmr_pool_unmap return void (Jonathan Toppins) [1685309] - [include] RDMA/core: Remove unused header files mm.h, socket.h, scatterlist.h (Jonathan Toppins) [1685309] - [include] IB/uverbs: fix a typo (Jonathan Toppins) [1685309] - [fs] coredump: fix race condition between mmget_not_zero()/get_task_mm() and core dumping (Andrea Arcangeli) [1696081] {CVE-2019-3892} - [scsi] scsi: csiostor: fix missing data copy in csio_scsi_err_handler() (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: drop serial_number usage (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: fix calls to dma_set_mask_and_coherent() (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: Remove set but not used variable 'pln' (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: no need to check return value of debugfs_create functions (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: fix NULL pointer dereference in csio_vport_set_state() (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: fix incorrect dma device in case of vport (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: switch to generic DMA API (Arjun Vynipadath) [1664680] - [netdrv] thunderx: eliminate extra calls to put_page() for pages held for recycling (Dean Nelson) [1644011] - [netdrv] thunderx: enable page recycling for non-XDP case (Dean Nelson) [1644011] - [cpufreq] cpufreq: intel_pstate: Also use CPPC nominal_perf for base_frequency (Prarit Bhargava) [1696131] - [acpi] ACPI / CPPC: Fix guaranteed performance handling (Prarit Bhargava) [1696131] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Corinna Vinschen) [1659169] - [netdrv] igbvf: Replace spin_is_locked() with lockdep (Corinna Vinschen) [1659169] - [netdrv] intel-ethernet: use correct module license (Corinna Vinschen) [1659169] - [netdrv] igbvf: netdev: Mark expected switch fall-through (Corinna Vinschen) [1659169] - [x86] x86/MCE: Initialize mce.bank in the case of a fatal error in mce_no_way_out() (David Arcari) [1698959] - [x86] x86/mce: Restore MCE injector's module name (David Arcari) [1698959] - [x86] x86/mce: Streamline MCE subsystem's naming (David Arcari) [1698959] - [x86] x86: Fix various typos in comments (David Arcari) [1698959] - [x86] x86/MCE/AMD: Fix the thresholding machinery initialization order (David Arcari) [1698959] - [x86] x86/mce: Fix -Wmissing-prototypes warnings (David Arcari) [1698959] - [x86] acpi/nfit, x86/mce: Validate a MCE's address before using it (David Arcari) [1698959] - [x86] acpi/nfit, x86/mce: Handle only uncorrectable machine checks (David Arcari) [1698959] - [x86] x86: Clean up 'sizeof x' => 'sizeof(x)' (David Arcari) [1698959] - [x86] x86/mcelog: Remove one mce_helper definition (David Arcari) [1698959] - [x86] x86/mce-inject: Reset injection struct after injection (David Arcari) [1698959] - [mm] x86/mce: Fix set_mce_nospec() to avoid #GP fault (David Arcari) [1698959] - [x86] x86/memory_failure: Introduce {set, clear}_mce_nospec() (David Arcari) [1698959] - [x86] x86/mce: Cleanup __mc_scan_banks() (David Arcari) [1698959] - [x86] x86/mce: Carve out bank scanning code (David Arcari) [1698959] - [x86] x86/mce: Carve out the crashing_cpu check (David Arcari) [1698959] - [x86] x86/mce: Always use 64-bit timestamps (David Arcari) [1698959] - [x86] x86/mce: Remove !banks check (David Arcari) [1698959] - [md] dm cache metadata: Fix loading discard bitset (Mike Snitzer) [1701618] - [block] null_blk: prevent crash from bad home_node value (Ming Lei) [1696951] - [powerpc] powerpc/security: Fix spectre_v2 reporting (Gustavo Duarte) [1694456] - [powerpc] powerpc/powernv: Query firmware for count cache flush settings (Gustavo Duarte) [1694456] - [powerpc] powerpc/pseries: Query hypervisor for count cache flush settings (Gustavo Duarte) [1694456] - [powerpc] powerpc/64s: Add support for software count cache flush (Gustavo Duarte) [1694456] - [powerpc] powerpc/64s: Add new security feature flags for count cache flush (Gustavo Duarte) [1694456] - [powerpc] powerpc/asm: Add a patch_site macro & helpers for patching instructions (Gustavo Duarte) [1694456] - [powerpc] powerpc/64: Call setup_barrier_nospec() from setup_arch() (Gustavo Duarte) [1694456] - [powerpc] powerpc/64: Add CONFIG_PPC_BARRIER_NOSPEC (Gustavo Duarte) [1694456] - [powerpc] powerpc64s: Show ori31 availability in spectre_v1 sysfs file not v2 (Gustavo Duarte) [1694456]- [kernel] sched/fair: Limit sched_cfs_period_timer() loop to avoid hard lockup (Joel Savitz) [1695651] - [crypto] crypto: ux500 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: talitos - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: sun4i-ss - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: stm32 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: rockchip - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: qce - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: picoxcell - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: omap - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: n2 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: marvell - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: ixp4xx - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: hifn_795x - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: ccree - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: ccp - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: cavium - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: caam - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: bcm - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: atmel - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: sparc - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [s390] crypto: s390 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: des_generic - Forbid 2-key in 3DES and add helpers (Herbert Xu) [1687908] - [crypto] crypto: mxc-scc - Remove broken driver (Herbert Xu) [1687908] - [kernel] ntp: Audit NTP parameters adjustment (Ondrej Mosnacek) [1680034] - [kernel] timekeeping: Audit clock adjustments (Ondrej Mosnacek) [1680034] - [kernel] ntp: Remove duplicated include (Ondrej Mosnacek) [1680034] - [kernel] timekeeping/ntp: Constify some function arguments (Ondrej Mosnacek) [1680034] - [kernel] ntp: Use kstrtos64 for s64 variable (Ondrej Mosnacek) [1680034] - [kernel] ntp: Remove redundant arguments (Ondrej Mosnacek) [1680034] - [kernel] timekeeping: Use ktime_get_real_ts64() instead of getnstimeofday64() (Ondrej Mosnacek) [1680034] - [netdrv] hinic: Add pci device ids (Xiaojun Tan) [1662040] - [netdrv] net-next/hinic:add shutdown callback (Xiaojun Tan) [1662040] - [netdrv] hinic: optmize rx refill buffer mechanism (Xiaojun Tan) [1662040] - [netdrv] net: hinic: remove redundant pointer pfhwdev (Xiaojun Tan) [1662040] - [netdrv] net: hns: fix unsigned comparison to less than zero (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix sparse: some warnings in HNS drivers (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix WARNING when remove HNS driver with SMMU enabled (Xiaojun Tan) [1661885] - [netdrv] net: hns: fix ICMP6 neighbor solicitation messages discard problem (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix probabilistic memory overwrite when HNS driver initialized (Xiaojun Tan) [1661885] - [netdrv] net: hns: Use NAPI_POLL_WEIGHT for hns driver (Xiaojun Tan) [1661885] - [netdrv] net: hns: fix KASAN: use-after-free in hns_nic_net_xmit_hw() (Xiaojun Tan) [1661885] - [netdrv] net: hns: use struct_size() in devm_kzalloc() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fixes the missing put_device in positive leg for roce reset (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix object reference leaks in hns_dsaf_roce_reset() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Restart autoneg need return failed when autoneg off (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix for missing of_node_put() after of_parse_phandle() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Use struct_size() in devm_kzalloc() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix use after free identified by SLUB debug (Xiaojun Tan) [1661885] - [netdrv] net: hns: make function hns_gmac_wait_fifo_clean() static (Xiaojun Tan) [1661885] - [netdrv] net: hns: use eth_get_headlen interface instead of hns_nic_get_headlen (Xiaojun Tan) [1661885] - [netdrv] net: hns: Mark expected switch fall-through (Xiaojun Tan) [1661885] - [netdrv] net: hns: remove redundant variables 'max_frm' and 'tmp_mac_key' (Xiaojun Tan) [1661885] - [netdrv] net: hisilicon: hns: Replace mdelay() with msleep() (Xiaojun Tan) [1661885] - [netdrv] net: hns: make hns_dsaf_roce_reset non static (Xiaojun Tan) [1661885] - [netdrv] net: hns: Make many functions static (Xiaojun Tan) [1661885] - [bluetooth] Bluetooth: btusb: Add support for Intel bluetooth device 8087:0029 (Gopal Tiwari) [1678084] - [bluetooth] Bluetooth: btusb: Use bt_dev_err for Intel firmware loading errors (Gopal Tiwari) [1678084]- [vfio] vfio/pci: Restore device state on PM transition (Alex Williamson) [1700254] - [vfio] vfio/pci: Parallelize device open and release (Alex Williamson) [1700254] - [pci] Revert "PCI/ASPM: Do not initialize link state when aspm_disabled is set" (Myron Stowe) [1694143] - [pci] PCI: Fix incorrect value returned from pcie_get_speed_cap() (Myron Stowe) [1694143] - [x86] x86/PCI: Apply VMD's AERSID fixup generically (Myron Stowe) [1694143] - [pci] PCI/IOV: Remove unnecessary include of (Myron Stowe) [1694143] - [pci] PCI: pcie: Remove redundant 'default n' from Kconfig (Myron Stowe) [1694143] - [documentation] NTB: switchtec_ntb: Update switchtec documentation with prerequisites for NTB (Myron Stowe) [1694143] - [pci] PCI: Fix Switchtec DMA aliasing quirk dmesg noise (Myron Stowe) [1694143] - [pci] PCI: Add macro for Switchtec quirk declarations (Myron Stowe) [1694143] - [pci] PCI: Add Device IDs for Intel GPU "spurious interrupt" quirk (Myron Stowe) [1694143] - [pci] PCI / ACPI: Mark expected switch fall-through (Myron Stowe) [1694143] - [pci] PCI: Remove set but unused variable (Myron Stowe) [1694143] - [pci] PCI: Fix pci.c kernel-doc parameter warning (Myron Stowe) [1694143] - [pci] PCI: Allocate dma_alias_mask with bitmap_zalloc() (Myron Stowe) [1694143] - [include] PCI: Remove unused NFP32xx IDs (Myron Stowe) [1694143] - [maintainers] maintainers: Add Hyper-V IOMMU driver into Hyper-V CORE AND DRIVERS scope (Vitaly Kuznetsov) [1663292 1669989] - [iommu] hyper-v: Add Hyper-V stub IOMMU driver (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyper-v: Set x2apic destination mode to physical when x2apic is available (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyper-v: Enable PIT shutdown quirk (Vitaly Kuznetsov) [1663292 1669989] - [clocksource] clockevents/drivers/i8253: Add support for PIT shutdown quirk (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyperv: Enable PV qspinlock for Hyper-V (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyperv: Add GUEST_IDLE_MSR support (Vitaly Kuznetsov) [1663292 1669989] - [x86] hv: vmbus: Make TLFS #define names architecture neutral (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyperv: Add interrupt handler annotations (Vitaly Kuznetsov) [1663292 1669989] - [pci] hv: Refactor hv_irq_unmask() to use cpumask_to_vpset() (Vitaly Kuznetsov) [1663292 1669989] - [pci] hv: Replace hv_vp_set with hv_vpset (Vitaly Kuznetsov) [1663292 1669989] - [pci] hv: Add __aligned(8) to struct retarget_msi_interrupt (Vitaly Kuznetsov) [1663292 1669989] - [vfio] vfio-pci/nvlink2: Fix ancient gcc warnings (Sam Bobroff) [1524679] - [vfio] vfio/pci: Cleanup license mess (Sam Bobroff) [1524679] - [vfio] vfio/pci: set TRACE_INCLUDE_PATH to fix the build error (Sam Bobroff) [1524679] - [vfio] vfio_pci: Add NVIDIA GV100GL [Tesla V100 SXM2] subdriver (Sam Bobroff) [1524679] - [vfio] vfio_pci: Allow regions to add own capabilities (Sam Bobroff) [1524679] - [vfio] vfio_pci: Allow mapping extra regions (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Fault user page into the hypervisor's pagetable (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Check mmio_atsd array bounds when populating (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Add release_ownership hook (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Add compound IOMMU groups (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Convert NPU IOMMU helpers to iommu_table_group_ops (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Move single TVE handling to NPU PE (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv: Reference iommu_table while it is linked to a group (Sam Bobroff) [1524679] - [powerpc] powerpc/iommu_api: Move IOMMU groups setup to a single place (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/pseries: Rework device adding to IOMMU groups (Sam Bobroff) [1524679] - [powerpc] powerpc/pseries: Remove IOMMU API support for non-LPAR systems (Sam Bobroff) [1524679] - [powerpc] powerpc/pseries/npu: Enable platform support (Sam Bobroff) [1524679] - [powerpc] powerpc/pseries/iommu: Use memory@ nodes in max RAM address calculation (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Move OPAL calls away from context manipulation (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv: Move npu struct from pnv_phb to pci_controller (Sam Bobroff) [1524679] - [powerpc] powerpc/vfio/iommu/kvm: Do not pin device memory (Sam Bobroff) [1524679] - [vfio] powerpc/mm/iommu/vfio_spapr_tce: Change mm_iommu_get to reference a region (Sam Bobroff) [1524679] - [powerpc] powerpc/ioda/npu: Call skiboot's hot reset hook when disabling NPU2 (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/ioda: Allocate indirect TCE levels of cached userspace addresses on demand (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/ioda1: Remove dead code for a single device PE (Sam Bobroff) [1524679] - [rpmspec] redhat: add TC selftests to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: add net selftests to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: add pktgen samples to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: rename bpf_samples to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: remove bpf_samples dependency on glibc-static and build it by default (Ivan Vecera) [1691376] - [tools] selftests: bpf: modify urandom_read and link it non-statically (Ivan Vecera) [1691376]- [netdrv] ibmvnic: Fix netdev feature clobbering during a reset (Steve Best) [1699018] - [netdrv] ibmvnic: Enable GRO (Steve Best) [1699018] - [x86] x86/perf/amd: Remove need to check "running" bit in NMI handler (David Arcari) [1640238] - [x86] x86/perf/amd: Resolve NMI latency issues for active PMCs (David Arcari) [1640238] - [x86] x86/perf/amd: Resolve race condition when disabling PMC (David Arcari) [1640238] - [netdrv] qed: Fix qed_mcp_halt|resume() (Manish Chopra) [1697310]- [x86] x86/kexec: Fix a kexec_file_load() failure (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: include linux/vmalloc.h (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: handle empty command-line (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: return successfully even if kaslr-seed doesn't exist (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: Refactor setup_dtb() to consolidate error checking (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: add kaslr support (Bhupesh Sharma) [1666078] - [char] random: Make crng state queryable (Bhupesh Sharma) [1666078] - [include] include: pe.h: remove message[] from mz header definition (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: invoke the kernel without purgatory (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: allow for loading Image-format kernel (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: load initrd and device-tree (Bhupesh Sharma) [1666078] - [arm64] arm64: enable KEXEC_FILE config (Bhupesh Sharma) [1666078] - [arm64] arm64: cpufeature: add MMFR0 helper functions (Bhupesh Sharma) [1666078] - [arm64] arm64: add image head flag definitions (Bhupesh Sharma) [1666078] - [kernel] kexec_file: kexec_walk_memblock() only walks a dedicated region at kdump (Bhupesh Sharma) [1666078] - [kernel] powerpc, kexec_file: factor out memblock-based arch_kexec_walk_mem() (Bhupesh Sharma) [1666078] - [kernel] s390, kexec_file: drop arch_kexec_mem_walk() (Bhupesh Sharma) [1666078] - [kernel] kexec_file: make kexec_image_post_load_cleanup_default() global (Bhupesh Sharma) [1666078] - [include] asm-generic: add kexec_file_load system call to unistd.h (Bhupesh Sharma) [1666078] - [include] asm-generic: unistd.h: Wire up sys_rseq (Bhupesh Sharma) [1666078] - [fs] xfs: don't overflow xattr listent buffer (Bill O'Donnell) [1683531] - [drm] drm/i915/gvt: Add in context mmio 0x20D8 to gen9 mmio list (Paul Lai) [1651589] - [fs] copy_mount_string: Limit string length to PATH_MAX (Miklos Szeredi) [1655272] - [include] redhat: Reuse other arch's cpuhp_state to protect kABI (Robert Richter) [1658476] - [drivers] drivers/perf: Add Cavium ThunderX2 SoC UNCORE PMU driver (Robert Richter) [1658476] - [documentation] Documentation: perf: Add documentation for ThunderX2 PMU uncore driver (Robert Richter) [1658476]- [arm64] arm64: apply workaround on A64FX v1r0 (Mark Langsdorf) [1692306] - [fs] kernfs: fix xattr name handling in LSM helpers (Ondrej Mosnacek) [1558179] - [include] LSM: lsm_hooks.h - fix missing colon in docstring (Ondrej Mosnacek) [1558179] - [security] selinux: Make selinux_kernfs_init_security static (Ondrej Mosnacek) [1558179] - [fs] kernfs: initialize security of newly created nodes (Ondrej Mosnacek) [1558179] - [security] selinux: implement the kernfs_init_security hook (Ondrej Mosnacek) [1558179] - [include] LSM: add new hook for kernfs node initialization (Ondrej Mosnacek) [1558179] - [fs] kernfs: use simple_xattrs for security attributes (Ondrej Mosnacek) [1558179] - [security] selinux: try security xattr after genfs for kernfs filesystems (Ondrej Mosnacek) [1558179] - [fs] kernfs: do not alloc iattrs in kernfs_xattr_get (Ondrej Mosnacek) [1558179] - [fs] kernfs: clean up struct kernfs_iattrs (Ondrej Mosnacek) [1558179] - [fs] kernfs: allow creating kernfs objects with arbitrary uid/gid (Ondrej Mosnacek) [1558179] - [tools] tools/power turbostat: Add Icelake support (Steve Best) [1698546] - [tools] tools/power turbostat: consolidate duplicate model numbers (Steve Best) [1698546] - [mm] s390/mm: silence compiler warning when compiling without CONFIG_PGSTE (Thomas Huth) [1698848] - [scripts] unifdef: use memcpy instead of strncpy (Thomas Huth) [1698848] - [s390] s390: align struct lowcore to double page size (Thomas Huth) [1698848] - [powerpc] KVM: PPC: Book3S HV: Perserve PSSCR FAKE_SUSPEND bit on guest exit (Suraj Jitindar Singh) [1689768]- [virtio] virtio: Honour 'may_reduce_num' in vring_create_virtqueue (Cornelia Huck) [1697505] - [s390] setup: set control program code via diag 318 (Thomas Huth) [1592336] - [s390] kvm: s390: set host program identifier (Thomas Huth) [1592336] - [edac] EDAC, skx: Fix randconfig builds in a better way (Aristeu Rozanski) [1501612 1649988 1571534] - [edac] EDAC, skx: Fix randconfig builds (Aristeu Rozanski) [1501612 1649988 1571534] - [edac] EDAC, skx_edac: Add address translation for non-volatile DIMMs (Aristeu Rozanski) [1501612 1649988 1571534] - [acpi] ACPI/ADXL: Add address translation interface using an ACPI DSM (Aristeu Rozanski) [1501612 1649988 1571534] - [x86] x86/mce: Add macros for the corrected error count bit field (Aristeu Rozanski) [1501612 1649988 1571534] - [x86] x86/mce: Use BIT_ULL(x) for bit mask definitions (Aristeu Rozanski) [1501612 1649988 1571534] - [crypto] crypto: ecc - regularize scalar for scalar multiplication (Neil Horman) [1687888] - [crypto] crypto: ecc - check for invalid values in the key verification test (Neil Horman) [1687888] - [crypto] crypto: dh - make crypto_dh_encode_key() make robust (Neil Horman) [1687888] - [crypto] crypto: dh - fix calculating encoded key size (Neil Horman) [1687888] - [crypto] crypto: ecdh - fix typo of P-192 b value (Neil Horman) [1687888] - [crypto] crypto: ecdh - add public key verification test (Neil Horman) [1687888] - [crypto] crypto: dh - fix memory leak (Neil Horman) [1687888] - [crypto] crypto: dh - add public key verification test (Neil Horman) [1687888] - [scsi] scsi: hisi_sas: Add softreset in hisi_sas_I_T_nexus_reset() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Change SERDES_CFG init value to increase reliability of HiLink (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Send HARD RESET to clear the previous affiliation of STP target port (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Set PHY linkrate when disconnected (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: print PHY RX errors count for later revision of v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix a timeout race of driver internal and SMP IO (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Change return variable type in phy_up_v3_hw() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: fix calls to dma_set_mask_and_coherent() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Do some more tidy-up (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Use pci_irq_get_affinity() for v3 hw as experimental (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Issue internal abort on all relevant queues (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: change queue depth from 512 to 4096 (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add manual trigger for debugfs dump (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for DIX feature for v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add missing seq_printf() call in hisi_sas_show_row_32() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix to only call scsi_get_prot_op() for non-NULL scsi_cmnd (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Some misc tidy-up (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Correct memory allocation size for DQ debugfs (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix losing directly attached disk when hot-plug (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Reject setting programmed minimum linkrate > 1.5G (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Remove unused parameter of function hisi_sas_alloc() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: remove the check of sas_dev status in hisi_sas_I_T_nexus_reset() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: shutdown axi bus to avoid exception CQ returned (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: send primitive NOTIFY to SSP situation only (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs ITCT file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix type casting and missing static qualifier in debugfs code (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: No need to check return value of debugfs_create functions (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Set protection parameters prior to adding SCSI host (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs IOST file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs DQ file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs CQ file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs for port registers (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Debugfs global register create file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Take debugfs snapshot for all regs (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Alloc debugfs snapshot buffer memory for all registers (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Create root and device debugfs directories (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for DIF feature for v2 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Make sg_tablesize consistent value (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Relocate some code to reduce complexity (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix warnings detected by sparse (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: change the time of SAS SSP connection (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Relocate some codes to avoid an unused check (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for interrupt coalescing for v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for interrupt converge for v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Create separate host attributes per HBA (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: use dma_set_mask_and_coherent (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Remove set but not used variable 'dq_list' (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix NULL pointer dereference (Xiaojun Tan) [1662038] - [nvme] nvme-pci: add missing unlock for reset error (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix rapid add remove sequence (Gopal Tiwari) [1665354] - [nvme] nvme: remove the .stop_ctrl callout (Gopal Tiwari) [1665354] - [nvme] nvme: add support for the Write Zeroes command (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: fix null dereference under heavy load (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: fix timeout handler (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: fix timeout handler (Gopal Tiwari) [1665354] - [nvme] nvmet-tcp: fix uninitialized variable access (Gopal Tiwari) [1665354] - [nvme] nvme: don't initlialize ctrl->cntlid twice (Gopal Tiwari) [1665354] - [nvme] nvme: introduce NVME_QUIRK_IGNORE_DEV_SUBNQN (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: remove dead code (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: don't ask if controller is fabrics (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: unset write/poll queues for discovery controllers (Gopal Tiwari) [1665354] - [nvme] nvme: pad fake subsys NQN vid and ssvid with zeros (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix out of bounds access in nvme_cqe_pending (Gopal Tiwari) [1665354] - [nvme] nvme-pci: use the same attributes when freeing host_mem_desc_bufs. (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix the wrong setting of nr_maps (Gopal Tiwari) [1665354] - [nvme] nvme-pci: rerun irq setup on IO queue init errors (Gopal Tiwari) [1665354] - [nvme] nvme-pci: trace SQ status on completions (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user to pass in nr_poll_queues (Gopal Tiwari) [1665354] - [nvme] nvme-core: optionally poll sync commands (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: fix spelling mistake "attepmpt" -> "attempt" (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: fix endianess annotations (Gopal Tiwari) [1665354] - [nvme] nvmet-tcp: fix endianess annotations (Gopal Tiwari) [1665354] - [nvme] nvme-pci: refactor nvme_poll_irqdisable to make sparse happy (Gopal Tiwari) [1665354] - [nvme] nvme-pci: only set nr_maps to 2 if poll queues are supported (Gopal Tiwari) [1665354] - [nvme] nvmet: use a macro for default error location (Gopal Tiwari) [1665354] - [nvme] nvmet: fix comparison of a u16 with -1 (Gopal Tiwari) [1665354] - [nvme] nvme: fix kernel paging oops (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: support separate queue maps for read and write (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: support separate queue maps for read and write (Gopal Tiwari) [1665354] - [include] block: make request_to_qc_t public (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user to set nr_write_queues for separate queue maps (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: add missing nvmf_ctrl_options documentation (Gopal Tiwari) [1665354] - [nvme] blk-mq-rdma: pass in queue map to blk_mq_rdma_map_queues (Gopal Tiwari) [1665354] - [nvme] nvmet: update smart log with num err log entries (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for file backend (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log page cmd handler (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for bdev backend (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for admin-cmd (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for fabrics-cmd (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for rdma backend (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support in the core (Gopal Tiwari) [1665354] - [nvme] nvmet: add interface to update error-log page (Gopal Tiwari) [1665354] - [include] nvme: add error log page slot definition (Gopal Tiwari) [1665354] - [nvme] nvmet: add error-log definitions (Gopal Tiwari) [1665354] - [nvme] nvme: remove nvme_common command cdw10 array (Gopal Tiwari) [1665354] - [nvme] nvme: provide fallback for discard alloc failure (Gopal Tiwari) [1665354] - [nvme] nvmet: remove unused variable (Gopal Tiwari) [1665354] - [nvme] nvme: add __exit annotation (Gopal Tiwari) [1665354] - [nvme] nvmet: allow configfs tcp trtype configuration (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: add NVMe over TCP host driver (Gopal Tiwari) [1665354] - [nvme] nvmet-tcp: add NVMe over TCP target driver (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user passing data digest (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user passing header digest (Gopal Tiwari) [1665354] - [nvme] nvmet: Add install_queue callout (Gopal Tiwari) [1665354] - [nvme] nvmet: use unlikely for req status check (Gopal Tiwari) [1665354] - [include] nvme-tcp: Add protocol header (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: Add unlikely for response allocated check (Gopal Tiwari) [1665354] - [nvme] nvmet: fix the structure member indentation (Gopal Tiwari) [1665354] - [nvme] nvme: implement Enhanced Command Retry (Gopal Tiwari) [1665354] - [nvme] nvme: remove unused function nvme_ctrl_ready (Gopal Tiwari) [1665354] - [nvme] nvmet: support fabrics sq flow control (Gopal Tiwari) [1665354] - [nvme] nvmet: enable Discovery Controller AENs (Gopal Tiwari) [1665354] - [nvme] nvmet: expose support for fabrics SQ flow control disable in treq (Gopal Tiwari) [1665354] - [nvme] nvme: disable fabrics SQ flow control when asked by the user (Gopal Tiwari) [1665354] - [nvme] nvmet-fc: remove the IN_ISR deferred scheduling options (Gopal Tiwari) [1665354] - [nvme] nvme: Remove unused forward declaration (Gopal Tiwari) [1665354] - [nvme] nvmet: allow host connect even if no allowed subsystems are exported (Gopal Tiwari) [1665354] - [nvme] nvmet: don't override treq upon modification. (Gopal Tiwari) [1665354] - [nvme] nvmet: mark nvmet_genctr static (Gopal Tiwari) [1665354] - [nvme] nvmet: add defines for discovery change async events (Gopal Tiwari) [1665354] - [nvme] nvmet: support for traffic based keep-alive (Gopal Tiwari) [1665354] - [nvme] nvmet: make kato and AEN processing for use by other controllers (Gopal Tiwari) [1665354] - [nvme] nvmet: change aen mask functions to use bit numbers (Gopal Tiwari) [1665354] - [nvme] nvmet: provide aen bit functions for multiple controller types (Gopal Tiwari) [1665354] - [nvme] nvmet: add support to Discovery controllers for commands (Gopal Tiwari) [1665354] - [nvme] nvmet: use IOCB_NOWAIT for file-ns buffered I/O (Gopal Tiwari) [1665354] - [nvme] nvmet: allow Keep Alive for Discovery controller (Gopal Tiwari) [1665354] - [nvme] nvme: support traffic based keep-alive (Gopal Tiwari) [1665354] - [nvme] nvme: cache controller attributes (Gopal Tiwari) [1665354] - [nvme] nvme: introduce ctrl attributes enumeration (Gopal Tiwari) [1665354] - [nvme] nvme: consolidate memset calls in the nvme_setup_cmd path (Gopal Tiwari) [1665354] - [nvme] nvme: warn when finding multi-port subsystems without multipathing enabled (Gopal Tiwari) [1665354] - [nvme] Revert "nvmet-rdma: use a private workqueue for delete" (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: move controller options matching to fabrics (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: always have a valid trsvcid (Gopal Tiwari) [1665354] - [nvme] nvme-pci: remove duplicate check (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix hot removal during error handling (Gopal Tiwari) [1665354] - [nvme] nvmet-fcloop: suppress a compiler warning (Gopal Tiwari) [1665354] - [nvme] nvme-core: make implicit seed truncation explicit (Gopal Tiwari) [1665354] - [nvme] nvmet-fc: fix kernel-doc headers (Gopal Tiwari) [1665354] - [nvme] nvmet: avoid integer overflow in the discard code (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: declare local symbols static (Gopal Tiwari) [1665354] - [nvme] nvmet: use strlcpy() instead of strcpy() (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix nvme_suspend_queue() kernel-doc header (Gopal Tiwari) [1665354] - [nvme] nvme-core: declare local symbols static (Gopal Tiwari) [1665354] - [nvme] nvme-core: rework a NQN copying operation (Gopal Tiwari) [1665354] - [nvme] nvmet: use strcmp() instead of strncmp() for subsystem lookup (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: check for timeout in nvme_rdma_wait_for_cm() (Gopal Tiwari) [1665354] - [nvme] nvmet: remove unreachable code (Gopal Tiwari) [1665354] - [nvme] nvme: update node paths after adding new path (Gopal Tiwari) [1665354] - [nvme] nvme: remove ns sibling before clearing path (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: use a private workqueue for delete (Gopal Tiwari) [1665354] - [nvme] nvmet: don't split large I/Os unconditionally (Gopal Tiwari) [1665354] - [nvme] nvme-core: add async event trace helper (Gopal Tiwari) [1665354] - [nvme] nvmet_fc: support target port removal with nvmet layer (Gopal Tiwari) [1665354] - [nvme] nvmet: remove redundant module prefix (Gopal Tiwari) [1665354] - [nvme] nvme: fix typo in nvme_identify_ns_descs (Gopal Tiwari) [1665354] - [nvme] nvme: register ns_id attributes as default sysfs groups (Gopal Tiwari) [1665354] - [block] block: genhd: add 'groups' argument to device_add_disk (Gopal Tiwari) [1665354] - [nvme] nvme: count all ANA groups for ANA Log page (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: fix possible bogus dereference under heavy load (Gopal Tiwari) [1665354] - [nvme] nvmet: free workqueue object if module init fails (Gopal Tiwari) [1665354] - [nvme] nvme-fcloop: Fix dropped LS's to removed target port (Gopal Tiwari) [1665354] - [nvme] nvme-pci: add a memory barrier to nvme_dbbuf_update_and_check_event (Gopal Tiwari) [1665354] - [nvme] nvmet: add ns write protect support (Gopal Tiwari) [1665354] - [nvme] nvme: set gendisk read only based on nsattr (Gopal Tiwari) [1665354] - [include] nvme.h: add support for ns write protect definitions (Gopal Tiwari) [1665354] - [nvme] nvmet: use Retain Async Event bit to clear AEN (Gopal Tiwari) [1665354] - [nvme] nvmet: support configuring ANA groups (Gopal Tiwari) [1665354] - [nvme] nvmet: add minimal ANA support (Gopal Tiwari) [1665354] - [nvme] nvmet: track and limit the number of namespaces per subsystem (Gopal Tiwari) [1665354] - [nvme] nvmet: keep a port pointer in nvmet_ctrl (Gopal Tiwari) [1665354] - [nvme] nvmet: check fileio lba range access boundaries (Gopal Tiwari) [1665354] - [nvme] nvmet: don't use uuid_le type (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: centralize admin/io queue teardown sequence (Gopal Tiwari) [1665354] - [nvme] nvmet: fix file discard return status (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: centralize controller setup sequence (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: unquiesce queues when deleting the controller (Gopal Tiwari) [1665354] - [nvme] nvme: add disk name to trace events (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: mark expected switch fall-through (Gopal Tiwari) [1665354] - [nvme] nvme: add controller name to trace events (Gopal Tiwari) [1665354] - [nvme] nvme: use hw qid in trace events (Gopal Tiwari) [1665354] - [nvme] nvmet: add buffered I/O support for file backed ns (Gopal Tiwari) [1665354] - [nvme] nvme: move init of keep_alive work item to controller initialization (Gopal Tiwari) [1665354] - [nvme] nvmet: add commands supported and effects log page (Gopal Tiwari) [1665354] - [nvme] lightnvm: limit get chunk meta request size (Gopal Tiwari) [1665354] - [nvme] lightnvm: Remove redundant rq->__data_len initialization (Gopal Tiwari) [1665354] - [block] nbd: restrict use to AF_UNIX sockets (Mike Christie) [1673307] - [block] nbd: don't allow invalid blocksize settings (Mike Christie) [1673307] - [documentation] doc, block, bfq: add information on bfq execution time (Ming Lei) [1686682] - [block] block, bfq: save & resume weight on a queue merge/split (Ming Lei) [1686682] - [block] block, bfq: print SHARED instead of pid for shared queues in logs (Ming Lei) [1686682] - [block] block, bfq: always protect newly-created queues from existing active queues (Ming Lei) [1686682] - [block] block, bfq: do not tag totally seeky queues as soft rt (Ming Lei) [1686682] - [block] block, bfq: do not merge queues on flash storage with queueing (Ming Lei) [1686682] - [block] block, bfq: tune service injection basing on request service times (Ming Lei) [1686682] - [block] block, bfq: do not idle for lowest-weight queues (Ming Lei) [1686682] - [block] block, bfq: increase idling for weight-raised queues (Ming Lei) [1686682] - [block] block/bfq: fix ifdef for CONFIG_BFQ_GROUP_IOSCHED=y (Ming Lei) [1686682] - [block] block, bfq: fix in-service-queue check for queue merging (Ming Lei) [1686682] - [block] block, bfq: do not overcharge writes in asymmetric scenarios (Ming Lei) [1686682] - [block] block, bfq: port commit "cfq-iosched: improve hw_tag detection" (Ming Lei) [1686682] - [block] block, bfq: reduce threshold for detecting command queueing (Ming Lei) [1686682] - [block] block, bfq: fix queue removal from weights tree (Ming Lei) [1686682] - [block] block, bfq: fix sequential rq detection in rate estimation (Ming Lei) [1686682] - [block] block, bfq: unconditionally plug I/O in asymmetric scenarios (Ming Lei) [1686682] - [block] block, bfq: do not plug I/O of in-service queue when harmful (Ming Lei) [1686682] - [block] block, bfq: split function bfq_better_to_idle (Ming Lei) [1686682] - [block] block, bfq: consider also ioprio classes in symmetry detection (Ming Lei) [1686682] - [block] block, bfq: remove case of redirected bic from insert_request (Ming Lei) [1686682] - [block] block, bfq: make sure queue budgets are not below service received (Ming Lei) [1686682] - [block] block, bfq: avoid selecting a queue w/o budget (Ming Lei) [1686682] - [block] block, bfq: do not consider interactive queues in srt filtering (Ming Lei) [1686682] - [net] net: switchdev: Add extack to switchdev_handle_port_obj_add() callback (Ivan Vecera) [1690125] - [net] switchdev: Add extack to struct switchdev_notifier_info (Ivan Vecera) [1690125] - [net] vxlan: Add a function to init switchdev_notifier_vxlan_fdb_info (Ivan Vecera) [1690125] - [net] switchdev: Add extack argument to switchdev_port_obj_add() (Ivan Vecera) [1690125] - [net] bridge: Propagate extack to switchdev (Ivan Vecera) [1690125] - [net] ndo_bridge_setlink: Add extack (Ivan Vecera) [1690125] - [net] rocker, dsa, ethsw: Don't filter VLAN events on bridge itself (Ivan Vecera) [1690125] - [net] switchdev: Replace port obj add/del SDO with a notification (Ivan Vecera) [1690125] - [net] ocelot: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] mlxsw: spectrum_switchdev: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] switchdev: Add helpers to aid traversal through lower devices (Ivan Vecera) [1690125] - [net] staging: fsl-dpaa2: ethsw: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] staging: fsl-dpaa2: ethsw: Introduce ethsw_port_dev_check() (Ivan Vecera) [1690125] - [net] dsa: slave: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] rocker: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] switchdev: Add SWITCHDEV_PORT_OBJ_ADD, SWITCHDEV_PORT_OBJ_DEL (Ivan Vecera) [1690125] - [net] switchdev: Add a blocking notifier chain (Ivan Vecera) [1690125] - [net] switchdev: SWITCHDEV_OBJ_PORT_{VLAN, MDB}(): Sanitize (Ivan Vecera) [1690125] - [net] selftests: forwarding: Fix test for different devices (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add learning test (Ivan Vecera) [1693316] - [net] bridge: Allow querying bridge port flags (Ivan Vecera) [1693316] - [netdrv] vxlan: Allow changing ageing time (Ivan Vecera) [1693316] - [netdrv] vxlan: Add hardware FDB learning (Ivan Vecera) [1693316] - [netdrv] vxlan: Don't override user-added entries with ext-learned ones (Ivan Vecera) [1693316] - [netdrv] vxlan: Mark user-added FDB entries (Ivan Vecera) [1693316] - [netdrv] vxlan: vxlan_fdb_notify(): Make switchdev notification configurable (Ivan Vecera) [1693316] - [netdrv] vxlan: __vxlan_fdb_delete(): Drop unused argument vid (Ivan Vecera) [1693316] - [netdrv] vxlan: support NTF_USE refresh of fdb entries (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d_port_8472: New test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add an ECN decap test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add an ECN encap test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add a TOS test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add a TTL test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Reconfigure & rerun tests (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add unicast test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add flood test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add ping test (Ivan Vecera) [1693316] - [net] selftests: forwarding: Add a skeleton of vxlan_bridge_1d (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Add link_stats_rx_errors_get() (Ivan Vecera) [1693316] - [net] selftests: forwarding: ping{6, }_do(): Allow passing ping arguments (Ivan Vecera) [1693316] - [net] selftests: forwarding: ping{6, }_test(): Add description argument (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Add in_ns() (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Support NUM_NETIFS of 0 (Ivan Vecera) [1693316] - [net] skb_scrub_packet(): Scrub offload_fwd_mark (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: extract ping and ping6 so they can be reused (Ivan Vecera) [1693316] - [net] selftests: forwarding: README: Require diagrams (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Extract interface-init functions (Ivan Vecera) [1693316] - [net] selftests: forwarding: tc_rule_stats_get: Parameterize direction (Ivan Vecera) [1693316] - [net] selftests: forwarding: multipath_eval(): Improve style (Ivan Vecera) [1693316] - [net] selftests: forwarding: Move multipath_eval() to lib.sh (Ivan Vecera) [1693316] - [net] selftests: Add test_vxlan_fdb_changelink.sh (Ivan Vecera) [1690309] - [netdrv] vxlan: changelink: Fix handling of default remotes (Ivan Vecera) [1690309] - [netdrv] vxlan: Fix error path in __vxlan_dev_create() (Ivan Vecera) [1690309] - [netdrv] vxlan: Unmark offloaded bit on replaced FDB entries (Ivan Vecera) [1690309] - [net] bridge: switchdev: Allow clearing FDB entry offload indication (Ivan Vecera) [1690309] - [netdrv] vxlan: Notify for each remote of a removed FDB entry (Ivan Vecera) [1690309] - [netdrv] vxlan: Support marking RDSTs as offloaded (Ivan Vecera) [1690309] - [netdrv] vxlan: Add vxlan_fdb_find_uc() for FDB querying (Ivan Vecera) [1690309] - [netdrv] vxlan: Add switchdev notifications (Ivan Vecera) [1690309] - [netdrv] net: Add netif_is_vxlan() (Ivan Vecera) [1690309] - [net] inet: Refactor INET_ECN_decapsulate() (Ivan Vecera) [1690309] - [netdrv] vxlan: Export address checking functions (Ivan Vecera) [1690309] - [net] vxlan: Remove duplicated include from vxlan.h (Ivan Vecera) [1690309] - [netdrv] geneve: correctly handle ipv6.disable module parameter (Jiri Benc) [1692390] - [net] ipv6: sit: reset ip header pointer in ipip6_rcv (Lorenzo Bianconi) [1691626] - [net] vxlan: Don't call gro_cells_destroy() before device is unregistered (Andrea Claudi) [1692499] - [net] xsk: do not remove umem from netdevice on fall-back to copy-mode (Petr Oros) [1690568] - [net] xsk: Check if a queue exists during umem setup (Petr Oros) [1690568] - [net] xsk: simplify xdp_clear_umem_at_qid implementation (Petr Oros) [1690568] - [net] ethtool: don't allow disabling queues with umem installed (Petr Oros) [1690568] - [net] ethtool: rename local variable max -> curr (Petr Oros) [1690568] - [net] xsk: fix bug when trying to use both copy and zero-copy on one queue id (Petr Oros) [1690568] - [net] add umem reference in netdev{_rx}_queue (Petr Oros) [1690568] - [net] xsk: remove unnecessary assignment (Petr Oros) [1690568] - [net] xsk: fix return value of xdp_umem_assign_dev() (Petr Oros) [1690568] - [net] xsk: don't allow umem replace at stack level (Petr Oros) [1690568] - [net] xsk: refactor xdp_umem_assign_dev() (Petr Oros) [1690568] - [net] update real_num_rx_queues even when !CONFIG_SYSFS (Petr Oros) [1690568] - [net] core: add __netdev_sent_queue as variant of __netdev_tx_sent_queue (Petr Oros) [1690127] - [net] net: do not abort bulk send on BQL status (Petr Oros) [1690129] - [net] net: bql: add __netdev_tx_sent_queue() (Petr Oros) [1690129] - [net] net: ip6_gre: fix possible NULL pointer dereference in ip6erspan_set_version (Lorenzo Bianconi) [1666315] - [net] net: ip6_gre: initialize erspan_ver just for erspan tunnels (Lorenzo Bianconi) [1666315] - [net] net: ip6_gre: always reports o_key to userspace (Lorenzo Bianconi) [1666315] - [net] net: ip_gre: always reports o_key to userspace (Lorenzo Bianconi) [1666315] - [net] tcp: handle inet_csk_reqsk_queue_add() failures (Guillaume Nault) [1690157] - [net] ip_gre: use erspan key field for tunnel lookup (Lorenzo Bianconi) [1664570] - [net] ip6_gre: simplify gre header parsing in ip6gre_err (Lorenzo Bianconi) [1664570] - [net] ipv4: use a dedicated counter for icmp_v4 redirect packets (Lorenzo Bianconi) [1664209] - [net] virtchnl: Fix off by one error (Ivan Vecera) [1690114] - [net] virtchnl: white space and reorder (Ivan Vecera) [1690114] - [net] i40e: Update status codes (Ivan Vecera) [1690114] - [net] ethtool: Add WAKE_FILTER and RX_CLS_FLOW_WAKE (Ivan Vecera) [1690091] - [net] geneve: allow to clear ttl inherit (Hangbin Liu) [1671251] - [net] geneve: add ttl inherit support (Hangbin Liu) [1671251] - [net] tipc: fix a double kfree_skb() (Jon Maloy) [1684290] - [net] vxlan: Fix GRO cells race condition between receive and link delete (Andrea Claudi) [1687046] - [net] sock: consistent handling of extreme SO_SNDBUF/SO_RCVBUF values (Guillaume Nault) [1686564] - [net] tun: implement carrier change (Guillaume Nault) [1686566] - [net] ip6_tunnel: respect ttl inherit for ip6tnl (Hangbin Liu) [1664944] - [net] ip6_gre: update version related info when changing link (Hangbin Liu) [1664900] - [net] ipv4/route: fail early when inet dev is missing (Paolo Abeni) [1685424] - [net] bonding/802.3ad: fix link_failure_count tracking (Matteo Croce) [1657905] - [net] bonding: avoid possible dead-lock (Matteo Croce) [1657905] - [net] bonding: fix length of actor system (Matteo Croce) [1657905] - [net] bonding: fix warning message (Matteo Croce) [1657905] - [net] bonding: pass link-local packets to bonding master also. (Matteo Croce) [1657905]- [infiniband] IB/usnic: fix spelling mistake "unvalid" -> "invalid" (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Get rid of ucontext->tgid (Jonathan Toppins) [1685307] - [infiniband] RDMA/usnic: Do not use ucontext->tgid (Jonathan Toppins) [1685307] - [infiniband] infiniband: remove redundant condition check before debugfs_remove (Jonathan Toppins) [1685307] - [infiniband] RDMA/rdmavt: Fix rvt_create_ah function signature (Jonathan Toppins) [1685307] - [infiniband] RDMA/drivers: Use core provided API for registering device attributes (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Remove unnecessary enum values (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Move ruc_loopback to rdmavt (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Move send completion logic to rdmavt (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Move copy SGE logic into rdmavt (Jonathan Toppins) [1685307] - [infiniband] RDMA/rxe: Remove unused addr_same() (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: avoid srq memory leak (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: replace kvfree with vfree (Jonathan Toppins) [1685307] - [infiniband] RDMA/drivers: Use dev_name instead of ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/drivers: Use dev_err/dbg/etc instead of pr_* + ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] IB/rxe: fixes for rdma read retry (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: avoid back-to-back retries (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Refactor lookup memory function (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Avoid NULL check when search is successful (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Change pool state enums to capital letters (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Replace spinlock with rwlock (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Simplify rxe_find_route() to avoid GID query for netdev (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: remove redudant qpn check (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: vary the source udp port for receive scaling (Jonathan Toppins) [1685307] - [infiniband] iser: set sector for ambiguous mr status errors (Jonathan Toppins) [1685307] - [net] svcrdma: Remove try_module_get from backchannel (Jonathan Toppins) [1685307] - [net] svcrdma: Remove ->release_rqst call in bc reply handler (Jonathan Toppins) [1685307] - [net] xprtrdma: Clean up xprt_rdma_disconnect_inject (Jonathan Toppins) [1685307] - [net] xprtrdma: Add documenting comments (Jonathan Toppins) [1685307] - [net] xprtrdma: Report when there were zero posted Receives (Jonathan Toppins) [1685307] - [net] xprtrdma: Move rb_flags initialization (Jonathan Toppins) [1685307] - [net] xprtrdma: Don't disable BH's in backchannel server (Jonathan Toppins) [1685307] - [net] xprtrdma: Remove memory address of "ep" from an error message (Jonathan Toppins) [1685307] - [net] xprtrdma: Rename rpcrdma_qp_async_error_upcall (Jonathan Toppins) [1685307] - [net] xprtrdma: Simplify RPC wake-ups on connect (Jonathan Toppins) [1685307] - [net] xprtrdma: Re-organize the switch() in rpcrdma_conn_upcall (Jonathan Toppins) [1685307] - [net] xprtrdma: Eliminate "connstate" variable from rpcrdma_conn_upcall() (Jonathan Toppins) [1685307] - [net] xprtrdma: Conventional variable names in rpcrdma_conn_upcall (Jonathan Toppins) [1685307] - [net] xprtrdma: Rename rpcrdma_conn_upcall (Jonathan Toppins) [1685307] - [net] sunrpc: Report connect_time in seconds (Jonathan Toppins) [1685307] - [net] sunrpc: Fix connect metrics (Jonathan Toppins) [1685307] - [net] xprtrdma: Name MR trace events consistently (Jonathan Toppins) [1685307] - [net] xprtrdma: Explicitly resetting MRs is no longer necessary (Jonathan Toppins) [1685307] - [net] xprtrdma: Create more MRs at a time (Jonathan Toppins) [1685307] - [net] xprtrdma: xprt_release_rqst_cong is called outside of transport_lock (Jonathan Toppins) [1685307] - [infiniband] IB/ipoib: Log sysfs 'dev_id' accesses from userspace (Jonathan Toppins) [1685307] - [infiniband] IB/ipoib: Use dev_port to expose network interface port numbers (Jonathan Toppins) [1685307] - [infiniband] IB/ipoib: Ensure that MTU isn't less than minimum permitted (Jonathan Toppins) [1685307] - [infiniband] IB/srp: Remove unnecessary unlikely() (Jonathan Toppins) [1685307] - [infiniband] IB/core: Fix oops in netdev_next_upper_dev_rcu() (Jonathan Toppins) [1685307] - [infiniband] IB/umem: Set correct address to the invalidation function (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Add GIDs while changing MAC addr only for registered ndev (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Fix comment for hw stats init for port == 0 (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Refactor ib_register_device() function (Jonathan Toppins) [1685307] - [infiniband] IB/mlx4: Refer to the device kobject instead of ports_parent (Jonathan Toppins) [1685307] - [include] RDMA/core: Allow existing drivers to set one sysfs group per device (Jonathan Toppins) [1685307] - [infiniband] RDMA/umad: Use kernel API to allocate umad indexes (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Use kernel API to allocate uverbs indexes (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Increase total number of RDMA ports across all devices (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Rename ports_parent to ports_kobj (Jonathan Toppins) [1685307] - [infiniband] RDMA/nldev: Allow IB device rename through RDMA netlink (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Implement IB device rename function (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Annotate timeout as unsigned long (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Align multiple functions to kernel coding style (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Remove unused timeout_ms parameter from cma_resolve_iw_route() (Jonathan Toppins) [1685307] - [infiniband] RDMA/cm: Respect returned status of cm_init_av_by_path (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Protect from reentry to resource return path (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Release task struct which was hold by CM_ID object (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Consolidate task name updates in one place (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Un-inline set task implementation (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Check error status of rdma_find_ndev_for_src_ip_rcu (Jonathan Toppins) [1685307] - [include] IB/mlx4: Avoid implicit enumerated type conversion (Jonathan Toppins) [1685307] - [infiniband] RDMA/netlink: Simplify netlink listener existence check (Jonathan Toppins) [1685307] - [infiniband] RDMA: Remove unused parameter from ib_modify_qp_is_ok() (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Fix RCU annotation for radix slot deference (Jonathan Toppins) [1685307] - [infiniband] RDMA: Fix building with CONFIG_MMU=n (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Introduce and use cma_ib_acquire_dev() (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Introduce and use cma_acquire_dev_by_src_ip() (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Allow accepting requests for multi port rdma device (Jonathan Toppins) [1685307] - [infiniband] IB/rdmavt: Rename check_send_wqe as setup_wqe (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Acquire and release mmap_sem on page range (Jonathan Toppins) [1685307] - [infiniband] IB/sa: simplify return code logic for ib_nl_send_msg() (Jonathan Toppins) [1685307] - [infiniband] RDMA/ulp: Use dev_name instead of ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Use dev_name instead of ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Use dev_err/dbg/etc instead of pr_* + ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA: Fully setup the device name in ib_register_device (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/umem: Fix potential addition overflow (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Minor optimizations (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Avoid synchronize_srcu in the ODP MR destruction path (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Handle a half-complete start/end sequence (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Get rid of per_mm->notifier_count (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Use umem->owning_mm inside ODP (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Move all the ODP related stuff out of ucontext and into per_mm (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Get rid of struct ib_umem.odp_data (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Make ib_umem_odp into a sub structure of ib_umem (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Use ib_umem_odp in all function signatures connected to ODP (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Do not use current->tgid to track the mm_struct (Jonathan Toppins) [1685307] - [infiniband] RDMA/ucontext: Get rid of the old disassociate flow (Jonathan Toppins) [1685307] - [infiniband] RDMA/ucontext: Add a core API for mmaping driver IO memory (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Fix error unwind in ib_uverbs_add_one (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Properly return the error code of rdma_set_src_addr_rcu (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Remove is_closed from ib_uverbs_file (Jonathan Toppins) [1685307] - [include] IB/rxe: Revise the ib_wr_opcode enum (Jonathan Toppins) [1685307] - [include] RDMA: Remove duplicated include from ib_addr.h (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Consider net ns of gid attribute for RoCE (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Introduce rdma_read_gid_attr_ndev_rcu() to check GID attribute (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Simplify roce_resolve_route_from_path() (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Protect against changing dst->dev during destination resolve (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Refer to network type instead of device type (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Use common code flow for IPv4/6 for addr resolve (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Rename rdma_copy_addr to rdma_copy_src_l2_addr (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Introduce and use rdma_set_src_addr() between IPv4 and IPv6 (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Let protocol specific function typecast sockaddr structure (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Avoid unnecessary sa_family overwrite (Jonathan Toppins) [1685307] - [infiniband] RDMA/core Introduce and use rdma_find_ndev_for_src_ip_rcu (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Schedule multi RC/UC packets instead of posting (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Move flow resources initialization (Jonathan Toppins) [1685307] - [infiniband] IB/uverbs: Add IDRs array attribute type to ioctl() interface (Jonathan Toppins) [1685307] - [include] RDMA/core: Document QP @event_handler function (Jonathan Toppins) [1685307] - [include] RDMA/core: Document CM @event_handler function (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Assign device ifindex before publishing the device (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Follow correct unregister order between sysfs and cgroup (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Restore lockdep check while downgrading lock (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Define client_data_lock as rwlock instead of spinlock (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Use simpler spin lock irq API from blocking context (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Remove context entries from list while unregistering device (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Use simplified list_for_each (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: No need to protect kfree with spin lock and semaphore (Jonathan Toppins) [1685307] - [infiniband] RDMA/{cma, core}: Avoid callback on rdma_addr_cancel() (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Rate limit MAD error messages (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Fail early if unsupported QP is provided (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Use device.groups to initialize device attributes (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Use cdev_device_add() instead of cdev_add() (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Depend on device_add() to add device attributes (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Replace open-coded variant of get_device (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Declare closing variable as boolean (Jonathan Toppins) [1685307] - [infiniband] IB/core: Add an unbound WQ type to the new CQ API (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Add generic function to fill in flow action object (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Add UVERBS_ATTR_CONST_IN to the specs language (Jonathan Toppins) [1685307] - [netdrv] ibmvnic: Fix completion structure initialization (Steve Best) [1697103] - [rpmspec] redhat: limit headers_install_all to arches we care about (Denys Vlasenko) [1692404] - [lib] ida: Add new API (Jonathan Toppins) [1697588] - [edac] EDAC: Drop per-memory controller buses (Frank Ramsay) [1686477] - [edac] EDAC: Don't add devices under /sys/bus/edac (Frank Ramsay) [1686477] - [x86] x86/platform/UV: Use efi_runtime_lock to serialise BIOS calls (Frank Ramsay) [1677695]- [pci] PCI: pciehp: Fix re-enabling the slot marked for safe removal (Myron Stowe) [1695922] - [rpmspec] redhat: Enable gdb_index (Juri Lelli) [1696747] - [fs] ovl: Do not lose security.capability xattr over metadata file copy-up (Vivek Goyal) [1694757] - [fs] ovl: During copy up, first copy up data and then xattrs (Vivek Goyal) [1694757]- [netdrv] mark the intel igc driver as tech preview (David Arcari) [1495358] - [netdrv] igc: Remove unneeded hw_dbg prints (David Arcari) [1495358] - [netdrv] igc: Fix the typo in igc_base.h header definition (David Arcari) [1495358] - [netdrv] igc: Add support for the ntuple feature (David Arcari) [1495358] - [netdrv] igc: Add support for statistics (David Arcari) [1495358] - [netdrv] igc: Extend the ethtool supporting (David Arcari) [1495358] - [netdrv] igc: Add multiple receive queues control supporting (David Arcari) [1495358] - [netdrv] igc: Use struct_size() helper (David Arcari) [1495358] - [netdrv] igc: Add ethtool support (David Arcari) [1495358] - [netdrv] igc: Remove the 'igc_get_phy_id_base' method (David Arcari) [1495358] - [netdrv] igc: Remove the 'igc_read_mac_addr_base' method (David Arcari) [1495358] - [netdrv] igc: Remove unneeded code (David Arcari) [1495358] - [netdrv] igc: Remove unused code (David Arcari) [1495358] - [netdrv] igc: Fix code redundancy (David Arcari) [1495358] - [netdrv] igc: Remove unreachable code from igc_phy.c file (David Arcari) [1495358] - [netdrv] igc: Remove obsolete IGC_ERR define (David Arcari) [1495358] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (David Arcari) [1495358] - [netdrv] igc: Clean up code (David Arcari) [1495358] - [netdrv] igc: Tidy up some white space (David Arcari) [1495358] - [netdrv] igc: fix error return handling from call to netif_set_real_num_tx_queues (David Arcari) [1495358] - [netdrv] igc: Remove set but not used variable 'pci_using_dac' (David Arcari) [1495358] - [netdrv] igc: Remove set but not used variables 'ctrl_ext, link_mode' (David Arcari) [1495358] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (David Arcari) [1495358] - [netdrv] igc: Add watchdog (David Arcari) [1495358] - [netdrv] igc: Add setup link functionality (David Arcari) [1495358] - [netdrv] igc: Add code for PHY support (David Arcari) [1495358] - [netdrv] igc: Add NVM support (David Arcari) [1495358] - [netdrv] igc: Add HW initialization code (David Arcari) [1495358] - [netdrv] igc: Add transmit and receive fastpath and interrupt handlers (David Arcari) [1495358] - [netdrv] igc: Add support for Tx/Rx rings (David Arcari) [1495358] - [netdrv] igc: Add interrupt support (David Arcari) [1495358] - [netdrv] igc: Add netdev (David Arcari) [1495358] - [netdrv] igc: Add support for PF (David Arcari) [1495358] - [netdrv] igc: Add skeletal frame for Intel(R) 2.5G Ethernet Controller support (David Arcari) [1495358] - [s390] virtio-ccw: wire up ->bus_name callback (Cornelia Huck) [1695630] - [s390] s390/virtio: handle find on invalid queue gracefully (Cornelia Huck) [1695630] - [s390] virtio/s390: fix race in ccw_io_helper() (Cornelia Huck) [1695630] - [s390] virtio/s390: avoid race on vcdev->config (Cornelia Huck) [1695630] - [kvm] KVM: s390: make bitmap declaration consistent (Thomas Huth) [1695090] - [kvm] KVM: s390: drop obsolete else path (Thomas Huth) [1695090] - [kvm] KVM: s390: clarify kvm related kernel message (Thomas Huth) [1695090] - [kvm] s390: vsie: Use effective CRYCBD.31 to check CRYCBD validity (Thomas Huth) [1695090] - [kvm] KVM: s390: fix kmsg component kvm-s390 (Thomas Huth) [1695090] - [kvm] KVM: s390: unregister debug feature on failing arch init (Thomas Huth) [1695090] - [kvm] KVM: s390/vsie: avoid sparse warning (Thomas Huth) [1695090]- [powerpc] powerpc: use mm zones more sensibly (David Gibson) [1654978] - [s390] s390/mem_detect: add missing include (Philipp Rudo) [1695615] - [s390] s390: avoid vmlinux segments overlap (Philipp Rudo) [1695615] - [s390] s390/decompressor: add missing FORCE to build targets (Philipp Rudo) [1695615] - [s390] s390: move ipl block and cmd line handling to early boot phase (Philipp Rudo) [1695615] - [s390] s390/sclp: introduce sclp_early_get_hsa_size (Philipp Rudo) [1695615] - [s390] s390/mem_detect: add info source debug print (Philipp Rudo) [1695615] - [s390] s390/mem_detect: replace tprot loop with binary search (Philipp Rudo) [1695615] - [s390] s390/mem_detect: use SCLP info for continuous memory detection (Philipp Rudo) [1695615] - [s390] s390/mem_detect: introduce z/VM specific diag260 call (Philipp Rudo) [1695615] - [s390] s390/mem_detect: introduce SCLP storage info (Philipp Rudo) [1695615] - [s390] s390: introduce .boot.data section compile time validation (Philipp Rudo) [1695615] - [s390] s390/mem_detect: move tprot loop to early boot phase (Philipp Rudo) [1695615] - [s390] s390/sclp: move sclp_early_read_info to sclp_early_core.c (Philipp Rudo) [1695615] - [s390] s390: introduce .boot.data section (Philipp Rudo) [1695615] - [s390] s390/decompressor: clean up and rename compressed/misc.c (Philipp Rudo) [1695615] - [s390] s390: rescue initrd as early as possible (Philipp Rudo) [1695615] - [s390] s390/sclp: simplify early hsa_size detection (Philipp Rudo) [1695615] - [s390] s390/decompressor: get rid of .bss usage (Philipp Rudo) [1695615] - [s390] s390/decompressor: rework uncompressed image info collection (Philipp Rudo) [1695615] - [s390] s390: remove decompressor's head.S (Philipp Rudo) [1695615] - [s390] s390: clean up stacks setup (Philipp Rudo) [1695615] - [s390] s390: add initial 64-bit restart PSW (Philipp Rudo) [1695615] - [s390] s390/hibernate: fix error handling when suspend cpu != resume cpu (Philipp Rudo) [1695615] - [s390] s390/decompressor: support extra debug flags (Philipp Rudo) [1695615] - [s390] s390/build: add *.o.chkbss files to targets list (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid packing *.o.chkbss files into startup.a (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid constant startup.a rebuilds (Philipp Rudo) [1695615] - [s390] s390/boot: block uncompressed vmlinux booting attempts (Philipp Rudo) [1695615] - [s390] s390/decompressor: correct EXCLUDE_FILE construct (Philipp Rudo) [1695615] - [s390] s390: move _text to an actual .text start (Philipp Rudo) [1695615] - [s390] s390: correct _stext offset (Philipp Rudo) [1695615] - [s390] s390: get rid of the first mb of uncompressed image (Philipp Rudo) [1695615] - [s390] s390: remove unused _ehead symbol (Philipp Rudo) [1695615] - [s390] s390: put expoline execute-trampolines into .text section (Philipp Rudo) [1695615] - [s390] s390/decompressor: discard ___kcrctab section (Philipp Rudo) [1695615] - [s390] s390/setup: do not reserve the decompressor code (Philipp Rudo) [1695615] - [s390] s390/decompressor: support uncompressed kernel (Philipp Rudo) [1695615] - [init] init/Kconfig: add an option for uncompressed kernel (Philipp Rudo) [1695615] - [s390] s390/decompressor: allow to pack uncompressed vmlinux.bin into piggy.o (Philipp Rudo) [1695615] - [s390] s390/decompressor: allow preprocessor in piggy.o linker script (Philipp Rudo) [1695615] - [s390] s390/decompressor: extend .bss check for early code (Philipp Rudo) [1695615] - [s390] s390: add custom target and make path extension optional for .bss check (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid repeating objects list in Makefile (Philipp Rudo) [1695615] - [s390] s390/decompressor: reuse lib/mem.S for mem functions (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid reusing uncompressed image objects (Philipp Rudo) [1695615] - [s390] s390/als: avoid .init.* sections usage (Philipp Rudo) [1695615] - [s390] s390/decompressor: rename entry point to startup_decompressor (Philipp Rudo) [1695615] - [s390] s390/boot: make head.S and als.c be part of the decompressor only (Philipp Rudo) [1695615] - [s390] s390/decompressor: trim the kernel image up to 1M (Philipp Rudo) [1695615] - [s390] s390: remove uncompressed kernel image build (Philipp Rudo) [1695615] - [s390] s390/decompressor: correct build flags (Philipp Rudo) [1695615] - [s390] s390/build: remove obsolete -mkernel-backchain flag (Philipp Rudo) [1695615] - [tools] tools/power turbostat: return the exit status of a command (David Arcari) [1642739] - [misc] misc: hpilo: Do not claim unsupported hardware (Joseph Szczypek) [1665635] - [misc] misc: hpilo: Exclude unsupported device via blacklist (Joseph Szczypek) [1665635]- [fs] xfs: set buffer ops when repair probes for btree type (Bill O'Donnell) [1689281] - [fs] xfs: end sync buffer I/O properly on shutdown error (Bill O'Donnell) [1689281] - [fs] xfs: xfs_fsops: drop useless LIST_HEAD (Bill O'Donnell) [1689281] - [fs] xfs: xfs_buf: drop useless LIST_HEAD (Bill O'Donnell) [1689281] - [fs] iomap: fix a use after free in iomap_dio_rw (Bill O'Donnell) [1689281] - [fs] xfs: reallocate realtime summary cache on growfs (Bill O'Donnell) [1689281] - [fs] xfs: stringify scrub types in ftrace output (Bill O'Donnell) [1689281] - [fs] xfs: stringify btree cursor types in ftrace output (Bill O'Donnell) [1689281] - [fs] xfs: move XFS_INODE_FORMAT_STR mappings to libxfs (Bill O'Donnell) [1689281] - [fs] xfs: move XFS_AG_BTREE_CMP_FORMAT_STR mappings to libxfs (Bill O'Donnell) [1689281] - [fs] xfs: fix symbolic enum printing in ftrace output (Bill O'Donnell) [1689281] - [fs] xfs: fix function pointer type in ftrace format (Bill O'Donnell) [1689281] - [fs] xfs: Fix x32 ioctls when cmd numbers differ from ia32. (Bill O'Donnell) [1689281] - [fs] xfs: Fix bulkstat compat ioctls on x32 userspace. (Bill O'Donnell) [1689281] - [fs] xfs: Align compat attrlist_by_handle with native implementation. (Bill O'Donnell) [1689281] - [fs] xfs: require both realtime inodes to mount (Bill O'Donnell) [1689281] - [fs] xfs: cache minimum realtime summary level (Bill O'Donnell) [1689281] - [fs] xfs: count inode blocks correctly in inobt scrub (Bill O'Donnell) [1689281] - [fs] xfs: precalculate cluster alignment in inodes and blocks (Bill O'Donnell) [1689281] - [fs] xfs: precalculate inodes and blocks per inode cluster (Bill O'Donnell) [1689281] - [fs] xfs: add a block to inode count converter (Bill O'Donnell) [1689281] - [fs] xfs: remove xfs_rmap_ag_owner and friends (Bill O'Donnell) [1689281] - [fs] xfs: const-ify xfs_owner_info arguments (Bill O'Donnell) [1689281] - [fs] xfs: streamline defer op type handling (Bill O'Donnell) [1689281] - [fs] xfs: idiotproof defer op type configuration (Bill O'Donnell) [1689281] - [fs] xfs: clean up indentation issues, remove an unwanted space (Bill O'Donnell) [1689281] - [fs] xfs: libxfs: move xfs_perag_put late (Bill O'Donnell) [1689281] - [fs] xfs: split up the xfs_reflink_end_cow work into smaller transactions (Bill O'Donnell) [1689281] - [crypto] crypto: testmgr - add AES-CFB tests (Neil Horman) [1687897] - [scsi] scsi: iscsi: flush running unbind operations when removing a session (Maurizio Lombardi) [1695007] - [crypto] crypto: vmx - fix copy-paste error in CTR mode (Herbert Xu) [1693350] - [rpmspec] Fix cross builds (Jiri Olsa) [1694956] - [lib] sbitmap: order READ/WRITE freed instance and setting clear bit (Ming Lei) [1694521] - [block] blk-mq: fix sbitmap ws_active for shared tags (Ming Lei) [1694521] - [block] blk-mq: update comment for blk_mq_hctx_has_pending() (Ming Lei) [1694521] - [block] blk-mq: use blk_mq_put_driver_tag() to put tag (Ming Lei) [1694521] - [include] sbitmap: trivial - update comment for sbitmap_deferred_clear_bit (Ming Lei) [1694521] - [block] blkcg: Fix kernel-doc warnings (Ming Lei) [1694521] - [block] block: Unexport blk_mq_add_to_requeue_list() (Ming Lei) [1694521] - [block] block: add BLK_MQ_POLL_CLASSIC for hybrid poll and return EINVAL for unexpected value (Ming Lei) [1694521] - [include] blk-mq: remove unused 'nr_expired' from blk_mq_hw_ctx (Ming Lei) [1694521] - [block] loop: access lo_backing_file only when the loop device is Lo_bound (Ming Lei) [1694521] - [block] blk-mq: use blk_mq_sched_mark_restart_hctx to set RESTART (Ming Lei) [1694521] - [kernel] blkcg: annotate implicit fall through (Ming Lei) [1694521] - [block] block: Replace function name in string with __func__ (Ming Lei) [1694521] - [block] block: fix NULL pointer dereference in register_disk (Ming Lei) [1694521] - [fs] fs: fix guard_bio_eod to check for real EOD errors (Ming Lei) [1694521] - [block] blk-mq: use HCTX_TYPE_DEFAULT but not 0 to index blk_mq_tag_set->map (Ming Lei) [1694521] - [include] block: remove bvec_iter_rewind() (Ming Lei) [1694521] - [block] block: don't use bio->bi_vcnt to figure out segment number (Ming Lei) [1694521] - [fs] btrfs: look at bi_size for repair decisions (Ming Lei) [1694521] - [block] block: avoid setting none scheduler if it's already none (Ming Lei) [1694521] - [block] block: avoid setting wbt_lat_usec to current value (Ming Lei) [1694521] - [block] blk-sysfs: Rework documention of __blk_release_queue (Ming Lei) [1694521] - [block] blk-cgroup: Fix doc related to blkcg_exit_queue (Ming Lei) [1694521] - [block] block: kill QUEUE_FLAG_FLUSH_NQ (Ming Lei) [1694521] - [block] block: avoid setting nr_requests to current value (Ming Lei) [1694521] - [block] blk-mq: save default hctx into ctx->hctxs for not-supported type (Ming Lei) [1694521] - [block] blk-mq: save queue mapping result into ctx directly (Ming Lei) [1694521] - [block] block: mq-deadline: Fix write completion handling (Ming Lei) [1694521] - [crypto] crypto: user - fix leaking uninitialized memory to userspace (Herbert Xu) [1657880] {CVE-2018-19854} - [char] ipmi: fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier (Xiaojun Tan) [1689480] - [infiniband] usnic_verbs: fix deadlock (Govindarajulu Varadarajan) [1688505] - [infiniband] IB/usnic: Fix locking when unregistering (Govindarajulu Varadarajan) [1688505] - [infiniband] IB/usnic: Fix potential deadlock (Govindarajulu Varadarajan) [1688505] - [netdrv] net: hns3: fix improper error handling in the hclge_init_ae_dev() (Xiaojun Tan) [1687060] - [netdrv] net: hns3: fix netif_napi_del() not do problem when unloading (Xiaojun Tan) [1687060] - [netdrv] net: hns3: Fix NULL deref when unloading driver (Xiaojun Tan) [1687060] - [netdrv] net: hns3: Modify the order of initializing command queue register (Xiaojun Tan) [1687060] - [netdrv] net: hns3: remove the Redundant put_vector in hns3_client_uninit (Xiaojun Tan) [1687060] - [netdrv] net: hns3: reuse reinitialization interface in the hns3_set_channels (Xiaojun Tan) [1687060]- [powercap] powercap/intel_rapl: add Ice Lake mobile (Steve Best) [1483427] - [x86] x86/CPU: Add Icelake model number (Steve Best) [1483427] - [watchdog] watchdog/hpwdt: Update Kconfig documentation (Joseph Szczypek) [1664861] - [watchdog] watchdog/hpwdt: Update driver version. (Joseph Szczypek) [1664861] - [watchdog] watchdog/hpwdt: Do not claim unsupported hardware (Joseph Szczypek) [1664861] - [watchdog] watchdog/hpwdt: Exclude via blacklist (Joseph Szczypek) [1664861] - [fs] autofs: add strictexpire mount option (Ian Kent) [1672134] - [fs] autofs: change catatonic setting to a bit flag (Ian Kent) [1672134] - [fs] autofs: simplify parse_options() function call (Ian Kent) [1672134] - [fs] autofs: add AUTOFS_EXP_FORCED flag (Ian Kent) [1672134] - [fs] autofs: make expire flags usage consistent with v5 params (Ian Kent) [1672134] - [fs] autofs: make autofs_expire_indirect() static (Ian Kent) [1672134] - [fs] autofs: make autofs_expire_direct() static (Ian Kent) [1672134] - [fs] autofs: fix clearing AUTOFS_EXP_LEAVES in autofs_expire_indirect() (Ian Kent) [1672134] - [fs] autofs: fix inconsistent use of now variable (Ian Kent) [1672134] - [md] md: Fix failed allocation of md_register_thread (Nigel Croxon) [1665346] - [md] It's wrong to add len to sector_nr in raid10 reshape twice (Nigel Croxon) [1665346] - [md] raid5: set write hint for PPL (Nigel Croxon) [1665346] - [netdrv] amd-xgbe: Fix mdio access for non-zero ports and clause 45 PHYs (Gary Hook) [1669565]- [x86] x86/retpolines: Disable switch jump tables when retpolines are enabled (Waiman Long) [1688258] - [x86] x86, retpolines: Raise limit for generating indirect calls from switch-case (Waiman Long) [1688258] - [net] vsock/virtio: fix kernel panic from virtio_transport_reset_no_sock (Stefano Garzarella) [1676595] - [net] vsock/virtio: reset connected sockets on device removal (Stefano Garzarella) [1676595] - [net] vsock/virtio: fix kernel panic after device hot-unplug (Stefano Garzarella) [1676595] - [powerpc] powerpc/livepatch: return -ERRNO values in save_stack_trace_tsk_reliable() (Joe Lawrence) [1659856] - [powerpc] powerpc/livepatch: small cleanups in save_stack_trace_tsk_reliable() (Joe Lawrence) [1659856] - [powerpc] powerpc/livepatch: relax reliable stack tracer checks for first-frame (Joe Lawrence) [1659856] - [powerpc] powerpc/64s: Make reliable stacktrace dependency clearer (Joe Lawrence) [1659856] - [powerpc] powerpc/64s: Clear on-stack exception marker upon exception return (Joe Lawrence) [1659856] - [infiniband] iw_cxgb4: Support FW write completion WR (Arjun Vynipadath) [1671320] - [infiniband] iw_cxgb4: RDMA write with immediate support (Arjun Vynipadath) [1671320] - [infiniband] rdma/cxgb4: fix some info leaks (Arjun Vynipadath) [1671320] - [infiniband] rdma/cxgb4: Add support for 64Byte cqes (Arjun Vynipadath) [1671320] - [pci] pci: remove unused functionality (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] aacraid: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] be2iscsi: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] mpt3sas: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] qla2xxx: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] qla4xxx: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] megaraid_sas: add removed id table" (Tomas Henzl) [1622638] - [scsi] lfpc: remove Lancer FCoE (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] lpfc: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] lfpc: add Lancer FCoE to the removed devices" (Tomas Henzl) [1622638]- [kernel] printk: Export console_printk (Prarit Bhargava) [1642870] - [video] fbcon: Silence fbcon logo on 'quiet' boots (Prarit Bhargava) [1642870] - [scsi] scsi: ibmvscsi: Fix empty event pool access during host removal (Steve Best) [1692463] - [scsi] scsi: ibmvscsi: Protect ibmvscsi_head from concurrent modificaiton (Steve Best) [1692463] - [scsi] scsi: ibmvscsi: Improve strings handling (Steve Best) [1692463] - [x86] x86/mce: Handle varying MCA bank counts (David Arcari) [1668779] - [block] virtio_blk: add discard and write zeroes support (Stefano Garzarella) [1692939] - [arm64] arm64: kaslr: ensure randomized quantities are clean also when kaslr is off (Mark Salter) [1673068] - [arm64] arm64: kaslr: ensure randomized quantities are clean to the PoC (Mark Salter) [1673068] - [tools] perf annotate: Fix getting source line failure (Michael Petlan) [1614435] - [infiniband] IB/hfi1: Remove overly conservative VM_EXEC flag check (Alex Estrin) [1680018]- [scsi] scsi: qla2xxx: Fix NULL pointer crash due to stale CPUID (Himanshu Madhani) [1685013] - [scsi] scsi: core: Avoid that system resume triggers a kernel warning (Ewan Milne) [1691903] - [scsi] scsi: core: reset host byte in DID_NEXUS_FAILURE case (Ewan Milne) [1691903] - [scsi] scsi: core: Synchronize request queue PM status only on successful resume (Ewan Milne) [1691903] - [scsi] scsi: sd: Fix cache_type_store() (Ewan Milne) [1691903] - [scsi] scsi: sd: use mempool for discard special page (Ewan Milne) [1691903] - [scsi] scsi: core: Remove scsi_block_when_processing_errors: message (Ewan Milne) [1691903] - [scsi] scsi: core: Allow state transitions from OFFLINE to BLOCKED (Ewan Milne) [1691903] - [scsi] scsi: core: remove unnecessary unlikely() (Ewan Milne) [1691903] - [scsi] scsi: st: remove redundant pointer STbuffer (Ewan Milne) [1691903] - [scsi] scsi: core: Avoid that SCSI device removal through sysfs triggers a deadlock (Ewan Milne) [1691903] - [fs] scsi: sysfs: Introduce sysfs_{un,}break_active_protection() (Ewan Milne) [1691903] - [scsi] scsi sg: remove incorrect scsi command checking logic (Ewan Milne) [1691903] - [scsi] scsi: read host_busy via scsi_host_busy() (Ewan Milne) [1691903] - [scsi] scsi: sd: Remove a superfluous assignment (Ewan Milne) [1691903] - [scsi] scsi: don't add scsi command result bytes (Ewan Milne) [1691903] - [scsi] scsi: core: check for equality of result byte values (Ewan Milne) [1691903] - [scsi] scsi: scsi_transport_fc: use 64-bit timestamps consistently (Ewan Milne) [1691903] - [scsi] scsi: sg: clean up gfp_mask in sg_build_indirect (Ewan Milne) [1691903] - [scsi] scsi: core: remove Scsi_Cmnd typedef (Ewan Milne) [1691903] - [netdrv] ibmvnic: Report actual backing device speed and duplex values (Steve Best) [1691862] - [kernel] sched/fair: Fix O(nr_cgroups) in the load balancing path (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] sched/fair: Fix insertion in rq->leaf_cfs_rq_list (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] sched/fair: Add tmp_alone_branch assertion (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] sched/fair: Fix infinite loop in update_blocked_averages() by reverting a9e7f6544b9c (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] tracing: Do a WARN_ON() if start_thread() in hwlat is called when thread exists (Jerome Marchand) [1693050] - [kernel] ftrace: Add missing check for existing hwlat thread (Jerome Marchand) [1693050] - [kernel] tracing: Do not call start/stop() functions when tracing_on does not change (Jerome Marchand) [1693050]- [scsi] scsi: lpfc: Fixup eq_clr_intr references (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix build error (Dick Kennedy) [1692882] - [scsi] scsi: be2iscsi: lpfc: fix typo (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.1 (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Update Copyright in driver version (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Enhance 6072 log string (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix duplicate log message numbers (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Specify node affinity for queue memory allocation (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Reduce memory footprint for lpfc_queue (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Add loopback testing to trunking mode (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix link speed reporting for 4-link trunk (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix handling of trunk links state reporting (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix protocol support on G6 and G7 adapters (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Correct boot bios information to FDMI registration (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix HDMI2 registration string for symbolic name (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix fc4type information for FDMI (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix FDMI manufacturer attribute value (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix io lost on host resets (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix mailbox hang on adapter init (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix driver crash in target reset handler (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Correct localport timeout duration error (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: nvmet: avoid hang / use-after-free when destroying targetport (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Convert bootstrap mbx polling from msleep to udelay (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Coordinate adapter error handling with offline handling (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Stop adapter if pci errors detected (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix deadlock due to nested hbalock call (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix nvmet handling of first burst cmd (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix lpfc_nvmet_mrq attribute handling when 0 (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix nvmet async receive buffer replenishment (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix location of SCSI ktime counters (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix SLI3 commands being issued on SLI4 devices (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix use-after-free mailbox cmd completion (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Resolve irq-unsafe lockdep heirarchy warning in lpfc_io_free (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Resolve inconsistent check of hdwq in lpfc_scsi_cmd_iocb_cmpl (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix error codes in lpfc_sli4_pci_mem_setup() (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix 32-bit format string warning (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix unused variable warning (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: resolve static checker warning in lpfc_sli4_hba_unset (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Correct __lpfc_sli_issue_iocb_s4 lockdep check (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix calls to dma_set_mask_and_coherent() (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: use dma_set_mask_and_coherent (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Remove set but not used variable 'phys_id' (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix a handful of indentation issues (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix error code if kcalloc() fails (Dick Kennedy) [1692882] - [security] security/selinux: fix SECURITY_LSM_NATIVE_LABELS on reused superblock (Ondrej Mosnacek) [1683296] - [security] selinux: add the missing walk_size + len check in selinux_sctp_bind_connect (Ondrej Mosnacek) [1683296] - [security] selinux: fix avc audit messages (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: replace BUG_ONs with WARN_ONs in avc.c (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: log invalid contexts in AVCs (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: replace some BUG_ON()s with a WARN_ON() (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: inline some AVC functions used only once (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: do not override context on context mounts (Ondrej Mosnacek) [1683296] - [security] selinux: never allow relabeling on context mounts (Ondrej Mosnacek) [1683296] - [security] selinux: stop passing MAY_NOT_BLOCK to the AVC upon follow_link (Ondrej Mosnacek) [1683296] - [security] selinux: avoid silent denials in permissive mode under RCU walk (Ondrej Mosnacek) [1683296] - [security] selinux: fix GPF on invalid policy (Ondrej Mosnacek) [1683296] - [security] selinux: overhaul sidtab to fix bug and improve performance (Ondrej Mosnacek) [1656787 1683296] - [security] selinux: use separate table for initial SID lookup (Ondrej Mosnacek) [1656787 1683296] - [security] selinux: make "selinux_policycap_names[]" const char * (Ondrej Mosnacek) [1683296] - [security] selinux: always allow mounting submounts (Ondrej Mosnacek) [1647723 1683296] - [security] selinux: refactor sidtab conversion (Ondrej Mosnacek) [1656787 1683296] - [security] selinux: fix non-MLS handling in mls_context_to_sid() (Ondrej Mosnacek) [1683296] - [security] selinux: check length properly in SCTP bind hook (Ondrej Mosnacek) [1683296] - [security] selinux: policydb - fix byte order and alignment issues (Ondrej Mosnacek) [1668222 1683296] - [security] selinux: Add __GFP_NOWARN to allocation at str_read() (Ondrej Mosnacek) [1683296] - [security] selinux: refactor mls_context_to_sid() and make it stricter (Ondrej Mosnacek) [1683296] - [security] selinux: fix mounting of cgroup2 under older policies (Ondrej Mosnacek) [1683296] - [security] selinux: cleanup dentry and inodes on error in selinuxfs (Ondrej Mosnacek) [1683296] - [security] selinux: constify write_op[] (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netnode (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in avc (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netif (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netport (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in sidtab (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netlink (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in selinuxfs (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in services (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in avtab (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in hooks (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in policydb (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in ebitmap (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in conditional (Ondrej Mosnacek) [1683296] - [fs] fs/proc/kcore.c: fix invalid memory access in multi-page read optimization (Bhupesh Sharma) [1627539] - [fs] proc/kcore: add vmcoreinfo note to /proc/kcore (Bhupesh Sharma) [1627539] - [kernel] crash_core: use VMCOREINFO_SYMBOL_ARRAY() for swapper_pg_dir (Bhupesh Sharma) [1627539] - [fs] proc/kcore: optimize multiple page reads (Bhupesh Sharma) [1627539] - [fs] proc/kcore: clean up ELF header generation (Bhupesh Sharma) [1627539] - [fs] proc/kcore: hold lock during read (Bhupesh Sharma) [1627539] - [fs] proc/kcore: fix memory hotplug vs multiple opens race (Bhupesh Sharma) [1627539] - [fs] proc/kcore: replace kclist_lock rwlock with rwsem (Bhupesh Sharma) [1627539] - [fs] proc/kcore: don't grab lock for memory hotplug notifier (Bhupesh Sharma) [1627539] - [fs] proc/kcore: don't grab lock for kclist_add() (Bhupesh Sharma) [1627539]- [net] Merge branch 'linus/master' into rdma.git for-next (Jonathan Toppins) [1685304] - [netdrv] net: cisco: enic: Replace GFP_ATOMIC with GFP_KERNEL (Jonathan Toppins) [1685304] - [infiniband] RDMA/providers: Remove pointless functions (Jonathan Toppins) [1685304] - [infiniband] RDMA/usnic: Suppress a compiler warning (Jonathan Toppins) [1685304] - [infiniband] IB/usnic: usnic should not select INFINIBAND_USER_ACCESS (Jonathan Toppins) [1685304] - [infiniband] RDMA/vmw_pvrdma: Delete unused function (Jonathan Toppins) [1685304] - [infiniband] IB/usnic: Update with bug fixes from core code (Jonathan Toppins) [1685304] - [infiniband] RDMA/providers: Fix return value from create_srq callbacks (Jonathan Toppins) [1685304] - [infiniband] RDMA/rxe: Simplify the error handling code in rxe_create_ah() (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: avoid unnecessary NULL check (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: increase max MR limit (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: Do not hide uABI stuff in memcpy (Jonathan Toppins) [1685304] - [net] rpc: remove unneeded variable 'ret' in rdma_listen_handler (Jonathan Toppins) [1685304] - [net] svcrdma: Clean up Read chunk path (Jonathan Toppins) [1685304] - [net] svcrdma: Avoid releasing a page in svc_xprt_release() (Jonathan Toppins) [1685304] - [net] sunrpc: remove redundant variables 'checksumlen', 'blocksize' and 'data' (Jonathan Toppins) [1685304] - [scsi] scsi: target: srp, vscsi, sbp, qla: use target_remove_session (Jonathan Toppins) [1685304] - [target] scsi: target: add session removal function (Jonathan Toppins) [1685304] - [target] scsi: target: rename target_alloc_session (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Fix check for return code from ib_create_srq (Jonathan Toppins) [1685304] - [infiniband] IB/ipoib: Fix error return code in ipoib_dev_init() (Jonathan Toppins) [1685304] - [infiniband] IPoIB: use kvzalloc to allocate an array of bucket pointers (Jonathan Toppins) [1685304] - [infiniband] ib_srpt: use kvmalloc to allocate ring pointers (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Fix return code from ipoib_cm_dev_init (Jonathan Toppins) [1685304] - [infiniband] IB/iser: Remove set-but-not-used variables (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Prefer unsigned int to bare use of unsigned (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Use min_t() macro instead of min() (Jonathan Toppins) [1685304] - [infiniband] IB/srp: Remove driver version and release data information (Jonathan Toppins) [1685304] - [target] scsi: target: Remove second argument from fabric_make_tpg() (Jonathan Toppins) [1685304] - [infiniband] IB/iser: set can_queue earlier to allow setting higher queue depth (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Set right entry state before releasing reference (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Free uapi on destroy (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Fix error cleanup path of ib_uverbs_add_one() (Jonathan Toppins) [1685304] - [infiniband] IB/core: Release object lock if destroy failed (Jonathan Toppins) [1685304] - [infiniband] IB/ucm: fix UCM link error (Jonathan Toppins) [1685304] - [infiniband] IB/core: Change filter function return type from int to bool (Jonathan Toppins) [1685304] - [infiniband] IB/core: Update GID entries for netdevice whose mac address changes (Jonathan Toppins) [1685304] - [infiniband] IB/core: Add default GIDs of the bond master netdev (Jonathan Toppins) [1685304] - [infiniband] IB/core: Consider adding default GIDs of bond device (Jonathan Toppins) [1685304] - [infiniband] IB/core: Delete lower netdevice default GID entries in bonding scenario (Jonathan Toppins) [1685304] - [infiniband] IB/core: Avoid confusing del_netdev_default_ips (Jonathan Toppins) [1685304] - [infiniband] IB/core: Add comment for change upper netevent handling (Jonathan Toppins) [1685304] - [infiniband] IB/ucm: Fix compiling ucm.c (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not check for device disassociation during ioctl (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove struct uverbs_root_spec and all supporting code (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Use uverbs_api to unmarshal ioctl commands (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Use uverbs_alloc for allocations (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add a simple allocator to uverbs_attr_bundle (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove the ib_uverbs_attr pointer from each attr (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Provide implementation private memory for the uverbs_attr_bundle (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Use uverbs_api to manage the object type inside the uobject (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Build the specs into a radix tree at runtime (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Have the core code create the uverbs_root_spec (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Fix reading of 32 bit flags (Jonathan Toppins) [1685304] - [infiniband] IB/ucm: Initialize sgid request GID attribute pointer (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow all DESTROY commands to succeed after disassociate (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not block disassociate during write() (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not pass struct ib_device to the ioctl methods (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not pass struct ib_device to the write based methods (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Lower the test for ongoing disassociation (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow uobject allocation to work concurrently with disassociate (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow RDMA_REMOVE_DESTROY to work concurrently with disassociate (Jonathan Toppins) [1685304] - [include] IB/uverbs: Convert 'bool exclusive' into an enum (Jonathan Toppins) [1685304] - [include] IB/uverbs: Consolidate uobject destruction (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Make the write path destroy methods use the same flow as ioctl (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove rdma_explicit_destroy() from the ioctl methods (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Prefix _ib to IB/RoCE specific functions (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Simplify gid type check in cma_acquire_dev() (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Return bool instead of int (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Get rid of 1 bit boolean (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Constify path record, ib_cm_event, listen_id pointers (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Constify dst_addr argument (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Simplify rdma_resolve_addr() error flow (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Initialize resource type in __rdma_create_id() (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Check for verbs callbacks before using them (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove {create,destroy}_ah from mandatory verbs (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add UVERBS_ATTR_FLAGS_IN to the specs language (Jonathan Toppins) [1685304] - [infiniband] RDMA, core and ULPs: Declare ib_post_send() and ib_post_recv() arguments const (Jonathan Toppins) [1685304] - [infiniband] IB/mlx5, ib_post_send(), IB_WR_REG_SIG_MR: Do not modify the 'wr' argument (Jonathan Toppins) [1685304] - [net] net/xprtrdma: Restore needed argument to ib_post_send (Jonathan Toppins) [1685304] - [net] net/xprtrdma: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [nvme] nvmet-rdma: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [nvme] nvme-rdma: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/srpt: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/srp: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/isert: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/iser: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/IPoIB: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] RDMA: Constify the argument of the work request conversion functions (Jonathan Toppins) [1685304] - [infiniband] IB/iser: Inline two work request conversion functions (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Consider netdevice for RoCE ports (Jonathan Toppins) [1685304] - [infiniband] IB/core: Introduce and use sgid_attr in CM requests (Jonathan Toppins) [1685304] - [infiniband] IB/core: Remove extra parentheses (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Fix locking around struct ib_uverbs_file ucontext (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Move the FD uobj type struct file allocation to alloc_commit (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Always propagate errors from rdma_alloc_commit_uobject() (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Rework the locking for cleaning up the ucontext (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Revise and clarify the rwsem and uobjects_lock (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Clarify and revise uverbs_close_fd (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Revise the placement of get/puts on uobject (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Clarify the kref'ing ordering for alloc_commit (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Handle IDR and FD types without truncation (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Get rid of null_obj_type (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [include] IB/core: Allow ULPs to specify NULL as the third ib_post_(send|recv|srq_recv)() argument (Jonathan Toppins) [1685304] - [include] IB/mlx5: Introduce driver create and destroy flow methods (Jonathan Toppins) [1685304] - [infiniband] IB: Support ib_flow creation in drivers (Jonathan Toppins) [1685304] - [infiniband] IB/mlx5: Introduce flow steering matcher uapi object (Jonathan Toppins) [1685304] - [include] IB/uverbs: Move ib_access_flags and ib_read_counters_flags to uapi (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Remove cma_multicast->igmp_joined (Jonathan Toppins) [1685304] - [infiniband] RDMA/umem: Refactor exit paths in ib_umem_get (Jonathan Toppins) [1685304] - [infiniband] IB: Enable uverbs_destroy_def_handler to be used by drivers (Jonathan Toppins) [1685304] - [include] IB/uverbs: Pass IB_UVERBS_QPF_GRH_REQUIRED to user space (Jonathan Toppins) [1685304] - [infiniband] RDMA: Validate grh_required when handling AVs (Jonathan Toppins) [1685304] - [infiniband] RDMA/hfi1: Move grh_required into update_sm_ah (Jonathan Toppins) [1685304] - [infiniband] IB/core: Simplify check for RoCE route resolve (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not use uverbs_cmd_mask in the ioctl path (Jonathan Toppins) [1685304] - [infiniband] RDMA/rw: Fix rdma_rw_ctx_signature_init() kernel-doc header (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove set-but-not-used variables (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove ib_find_cached_gid() and ib_find_cached_gid_by_port() (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Remove unused and erroneous msg sequence encoding (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Replace ib_ucq_object uverbs_file with the one in ib_uobject (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove ib_uobject_file (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Tidy up remaining references to ucontext (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Replace file->ucontext with file in uverbs_cmd.c (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Replace ib_ucontext with ib_uverbs_file in core function calls (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Move non driver related elements from ib_ucontext to ib_ufile (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add a uobj_perform_destroy helper (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Combine MIN_SZ_OR_ZERO with UVERBS_ATTR_STRUCT (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Use UVERBS_ATTR_MIN_SIZE correctly and uniformly (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Remove UA_FLAGS (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Get rid of the & in method specifications (Jonathan Toppins) [1685304] - [infiniband] IB: Improve uverbs_cleanup_ucontext algorithm (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Simplify UVERBS_OBJECT and _TREE family of macros (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Simplify method definition macros (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Simplify UVERBS_ATTR family of macros (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Split UVERBS_ATTR_FLOW_ACTION_ESP_HANDLE (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Store the specs_root in the struct ib_uverbs_device (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Remove now useless rcu_lock in dst_fetch_ha (Jonathan Toppins) [1685304] - [infiniband] IB/core: Check for rdma_protocol_ib only after validating port_num (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Remove redundant check (Jonathan Toppins) [1685304] - [infiniband] RDMA/umem: Don't check for a negative return value of dma_map_sg_attrs() (Jonathan Toppins) [1685304] - [infiniband] RDMA/verbs: Drop kernel variant of destroy_flow (Jonathan Toppins) [1685304] - [infiniband] RDMA/verbs: Drop kernel variant of create_flow (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Check existence of create_flow callback (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove unused ib cache functions (Jonathan Toppins) [1685304] - [infiniband] Revert "[infiniband] RDMA/hns: Only assgin the fields of the av if IB_QP_AV bit is set" (Jonathan Toppins) [1685304] - [infiniband] RDMA: Convert drivers to use the AH's sgid_attr in post_wr paths (Jonathan Toppins) [1685304] - [infiniband] IB/mlx4: Use GID attribute from ah attribute (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: Use rdma GID API (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Use sgid_attr from the AV (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Replace members of sa_path_rec with 'struct sgid_attr *' (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Pass the sgid_attr through various events (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Keep track of the sgid_attr that created the cm id (Jonathan Toppins) [1685304] - [infiniband] IB: Make init_ah_attr_grh_fields set sgid_attr (Jonathan Toppins) [1685304] - [infiniband] IB: Make ib_init_ah_from_mcmember set sgid_attr (Jonathan Toppins) [1685304] - [infiniband] IB: Make ib_init_ah_attr_from_wc set sgid_attr (Jonathan Toppins) [1685304] - [infiniband] IB/core: Free GID table entry during GID deletion (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Consider net namespace while leaving multicast group (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Delete type and id from uverbs_obj_attr (Jonathan Toppins) [1685304] - [infiniband] IB/rdmavt, IB/hfi1: Create device dependent s_flags (Jonathan Toppins) [1685304] - [infiniband] IB/core: Expose ib_ucontext from a given ib_uverbs_file (Jonathan Toppins) [1685304] - [include] IB/core: Introduce DECLARE_UVERBS_GLOBAL_METHODS (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow an empty namespace in ioctl() framework (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add a macro to define a type with no kernel known size (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add PTR_IN attributes that are allocated/copied automatically (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Refactor uverbs_finalize_objects (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Export uverbs idr and fd types (Jonathan Toppins) [1685304] - [infiniband] IB/mad: Use IDR for agent IDs (Jonathan Toppins) [1685304] - [infiniband] RDMA: Hold the sgid_attr inside the struct ib_ah/qp (Jonathan Toppins) [1685304] - [infiniband] RDMA: Convert drivers to use sgid_attr instead of sgid_index (Jonathan Toppins) [1685304] - [infiniband] IB{cm, core}: Introduce and use ah_attr copy, move, replace APIs (Jonathan Toppins) [1685304] - [infiniband] IB/core: Tidy ib_resolve_eth_dmac (Jonathan Toppins) [1685304] - [infiniband] IB/core: Add a sgid_attr pointer to struct rdma_ah_attr (Jonathan Toppins) [1685304] - [infiniband] IB: Ensure that all rdma_ah_attr's are zero initialized (Jonathan Toppins) [1685304] - [infiniband] IB/mad: Agent registration is process context only (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Refactor flow_resources_alloc() function (Jonathan Toppins) [1685304] - [infiniband] RDMA/nldev: Return port capability flag for IB only (Jonathan Toppins) [1685304] - [net] RDMA/smc: Replace ib_query_gid with rdma_get_gid_attr (Jonathan Toppins) [1685304] - [include] IB/cache: Restore compatibility for ib_query_gid (Jonathan Toppins) [1685304] - [infiniband] IB: Replace ib_query_gid/ib_get_cached_gid with rdma_query_gid (Jonathan Toppins) [1685304] - [infiniband] IB/core: Make rdma_find_gid_by_filter support all protocols (Jonathan Toppins) [1685304] - [infiniband] IB/core: Provide rdma_ versions of the gid cache API (Jonathan Toppins) [1685304] - [infiniband] IB/core: Replace ib_query_gid with rdma_get_gid_attr (Jonathan Toppins) [1685304] - [infiniband] IB/core: Introduce GID attribute get, put and hold APIs (Jonathan Toppins) [1685304] - [infiniband] RDMA: Use GID from the ib_gid_attr during the add_gid() callback (Jonathan Toppins) [1685304] - [infiniband] IB/core: Introduce GID entry reference counts (Jonathan Toppins) [1685304] - [infiniband] IB/core: Store default GID property per-table instead of per-entry (Jonathan Toppins) [1685304] - [infiniband] IB/core: Do not set the gid type when reserving default entries (Jonathan Toppins) [1685304] - [include] IDR: Expose the XArray lock (Jonathan Toppins) [1688319] - [x86] x86/cpufeatures: Enumerate MOVDIR64B instruction (Steve Best) [1482754] - [x86] x86/cpufeatures: Enumerate MOVDIRI instruction (Steve Best) [1482754] - [nvme] nvme: allow ANA support to be independent of native multipathing (Ewan Milne) [1690940] - [nvme] nvme: multipath: Change default of kernel NVMe multipath to be disabled (Ewan Milne) [1690940] - [nvme] nvme: convert to SPDX identifiers (Ewan Milne) [1690940] - [nvme] nvme-multipath: round-robin I/O policy (Ewan Milne) [1690940] - [nvme] nvme-multipath: drop optimization for static ANA group IDs (Ewan Milne) [1690940] - [nvme] nvme-multipath: zero out ANA log buffer (Ewan Milne) [1690940] - [nvme] nvme-fc: fix numa_node when dev is null (Ewan Milne) [1690940] - [nvme] nvme: add a numa_node field to struct nvme_ctrl (Ewan Milne) [1690940] - [nvme] nvme: update node paths after adding new path (Ewan Milne) [1690940] - [nvme] nvme: take node locality into account when selecting a path (Ewan Milne) [1690940] - [s390] s390/mm: Fix ERROR: "__node_distance" undefined! (Ewan Milne) [1690940] - [nvme] nvme: call nvme_complete_rq when nvmf_check_ready fails for mpath I/O (Ewan Milne) [1690940] - [nvme] nvme: properly propagate errors in nvme_mpath_init (Ewan Milne) [1690940] - [nvme] nvme: fixup crash on failed discovery (Ewan Milne) [1690940] - [nvme] nvme: add ANA support (Ewan Milne) [1690940] - [include] nvme.h: fixup ANA group descriptor format (Ewan Milne) [1690940] - [include] nvme.h: add ANA definitions (Ewan Milne) [1690940] - [nvme] nvme: remove nvme_req_needs_failover (Ewan Milne) [1690940] - [nvme] nvme: simplify the API for getting log pages (Ewan Milne) [1690940] - [include] nvme.h: add support for the log specific field (Ewan Milne) [1690940]- [md] dm writecache: set "Tech Preview" taint using mark_tech_preview() (Mike Snitzer) [1690587] - [md] dm integrity: limit the rate of error messages (Mike Snitzer) [1690105] - [md] dm snapshot: don't define direct_access if we don't support it (Mike Snitzer) [1690105] - [md] dm cache: add support for discard passdown to the origin device (Mike Snitzer) [1690105] - [md] dm writecache: fix typo in name for writeback_wq (Mike Snitzer) [1690105] - [md] dm thin: add sanity checks to thin-pool and external snapshot creation (Mike Snitzer) [1690105] - [md] dm block manager: remove redundant unlikely annotation (Mike Snitzer) [1690105] - [md] dm verity fec: remove redundant unlikely annotation (Mike Snitzer) [1690105] - [md] dm integrity: remove redundant unlikely annotation (Mike Snitzer) [1690105] - [md] dm switch: use struct_size() in kzalloc() (Mike Snitzer) [1690105] - [md] dm: remove unused _rq_tio_cache and _rq_cache (Mike Snitzer) [1690105] - [md] dm crypt: don't overallocate the integrity tag space (Mike Snitzer) [1690105] - [md] dm: eliminate 'split_discard_bios' flag from DM target interface (Mike Snitzer) [1690105] - [md] dm: always call blk_queue_split() in dm_process_bio() (Mike Snitzer) [1690105] - [md] dm: update dm_process_bio() to split bio if in ->make_request_fn() (Mike Snitzer) [1690105] - [md] dm rq: remove unused arguments from rq_completed() (Mike Snitzer) [1690105] - [md] dm integrity: replace open-coded allocation size multiplication (Mike Snitzer) [1690105] - [md] dm: Remove VLA usage from hashes (Mike Snitzer) [1690105] - [crypto] crypto: hash - Remove VLA usage (Mike Snitzer) [1690105] - [md] dm: Avoid namespace collision with bitmap API (Mike Snitzer) [1690105] - [md] md/dm-writecache: Don't request pointer dummy_addr when not required (Mike Snitzer) [1690105] - [scsi] scsi: qla2xxx: avoid printf format warning (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix issue reported by static checker for qla2x00_els_dcmd2_sp_done() (Himanshu Madhani) [1664534] - [scsi] qla2xxx: Update driver version to 10.00.00.14.08.1-k (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Avoid PCI IRQ affinity mapping when multiqueue is not supported (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add new FW dump template entry types (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix code indentation for qla27xx_fwdt_entry (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move marker request behind QPair (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent SysFS access when chip is down (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add support for setting port speed (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent multiple ADISC commands per session (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Check for FW started flag before aborting (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix unload when NVMe devices are configured (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add First Burst support for FC-NVMe devices (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix LUN discovery if loop id is not assigned yet by firmware (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: remove redundant null check on pointer sess (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move debug messages before sending srb preventing panic (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Use complete switch scan for RSCN events (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix fw options handle eh_bus_reset() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Restore FAWWPN of Physical Port only for loop down (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent memory leak for CT req/rsp allocation (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix SRB allocation flag to avoid sleeping in IRQ context (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: allow session delete to finish before create. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: fix fcport null pointer access. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: flush IO on chip reset or sess delete (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix session cleanup hang (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Change default ZIO threshold. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add pci function reset support. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix N2N target discovery with Local loop (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: no need to check return value of debugfs_create functions (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix DMA error when the DIF sg buffer crosses 4GB boundary (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add protection mask module parameters (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix for FC-NVMe discovery for NPIV port (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix NPIV handling for FC-NVMe (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Enable FC-NVME on NPIV ports (Himanshu Madhani) [1664534] - [scsi] Revert "scsi: qla2xxx: Fix NVMe Target discovery" (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: NULL check before some freeing functions is not needed (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Split the __qla2x00_abort_all_cmds() function (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Introduce a switch/case statement in qlt_xmit_tm_rsp() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix a typo in MODULE_PARM_DESC (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove two arguments from qlafx00_error_entry() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Make sure that qlafx00_ioctl_iosb_entry() initializes 'res' (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove a set-but-not-used variable (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Make qla2x00_sysfs_write_nvram() easier to analyze (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Declare local functions 'static' (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Improve several kernel-doc headers (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Modify fall-through annotations (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: fully convert to the generic DMA API (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Simplify conditional check (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove unnecessary self assignment (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Return switch command on a timeout (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move log messages before issuing command to firmware (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix for double free of SRB structure (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix recursive mailbox timeout (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix NVMe Target discovery (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: don't allow negative thresholds (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix comment in MODULE_PARM_DESC in qla2xxx (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove set but not used variable 'ptr_dma' (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: fix typo "CT-PASSTRHU" -> "CT-PASSTHRU" (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix an endian bug in fcpcmd_is_corrupted() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix double increment of switch scan retry count (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix duplicate switch's Nport ID entries (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove stale debug trace message from tcm_qla2xxx (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix premature command free (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Reject bsg request if chip is down. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: shutdown chip if reset fail (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix stuck session in PLOGI state (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix early srb free on abort (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add mode control for each physical port (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix race condition for resource cleanup (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix dropped srb resource. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix port speed display on chip reset (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Check for Register disconnect (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Increase abort timeout value (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Allow FC-NVMe underrun to be handled by transport (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move ABTS code behind qpair (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove stale ADISC_DONE event (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix Remote port registration (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove ASYNC GIDPN switch command (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Reduce holding sess_lock to prevent CPU lock-up (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move {get|rel}_sp to base_qpair struct (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add support for ZIO6 interrupt threshold (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix out of order Termination and ABTS response (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add logic to detect ABTS hang and response completion (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add appropriate debug info for invalid RX_ID (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix deadlock between ATIO and HW lock (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Serialize mailbox request (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Terminate Plogi/PRLI if WWN is 0 (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Defer chip reset until target mode is enabled (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove all rports if fabric scan retry fails (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Force fw cleanup on ADISC error (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Turn off IOCB timeout timer on IOCB completion (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Decrement login retry count for only plogi (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move rport registration out of internal work_list (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove redundant check for fcport deletion (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Update rscn_rcvd field to more meaningful scan_needed (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Use correct qpair for ABTS/CMD (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix process response queue for ISP26XX and above (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Migrate NVME N2N handling into state machine (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Save frame payload size from ICB (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix race between switch cmd completion and timeout (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix Management Server NPort handle reservation logic (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Flush mailbox commands on chip reset (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix session state stuck in Get Port DB (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix redundant fc_rport registration (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Silent erroneous message (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent sysfs access when chip is down (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add longer window for chip reset (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix login retry count (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix N2N link re-connect (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Cleanup for N2N code (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: remove irq save in qla2x00_poll() (Himanshu Madhani) [1664534] - [netdrv] ice: Do autoneg based on VSI state (Jonathan Toppins) [1687903] - [fs] xfs: use the latest extent at writeback delalloc conversion time (Brian Foster) [1661968] - [fs] xfs: create delalloc bmapi wrapper for full extent allocation (Brian Foster) [1661968] - [fs] xfs: remove superfluous writeback mapping eof trimming (Brian Foster) [1661968] - [fs] xfs: validate writeback mapping using data fork seq counter (Brian Foster) [1661968] - [fs] xfs: update fork seq counter on data fork changes (Brian Foster) [1661968] - [fs] xfs: eof trim writeback mapping as soon as it is cached (Brian Foster) [1661968] - [perf] drivers/perf: hisi: update the sccl_id/ccl_id when MT is supported (Xiaojun Tan) [1677815]- [x86] x86/hyperv: Fix kernel panic when kexec on HyperV (Kairui Song) [1684451] - [rpmspec] apply linux-kernel-test.patch when building ("Herton R. Krzesinski") [1690534] - [netdrv] net: ena: update driver version from 2.0.2 to 2.0.3 (John Linville) [1690106] - [netdrv] net: ena: fix race between link up and device initalization (John Linville) [1690106] - [netdrv] net: phy: add phy_speed_down and phy_speed_up (Petr Oros) [1690131] - [netdrv] net: phy: add helper phy_config_aneg (Petr Oros) [1690131] - [nvme] nvme-fabrics: convert to SPDX identifiers (Ewan Milne) [1690909] - [nvme] nvme-fabrics: fix ctrl_loss_tmo < 0 to reconnect forever (Ewan Milne) [1690909] - [nvme] nvme-fc: reject reconnect if io queue count is reduced to zero (Ewan Milne) [1690601] - [nvme] nvme-fc: use nr_phys_segments to determine existence of sgl (Ewan Milne) [1690601] - [include] nvme-fc: convert to SPDX identifiers (Ewan Milne) [1690601] - [nvme] nvme-fc: initialize nvme_req(rq)->ctrl after calling __nvme_fc_init_request() (Ewan Milne) [1690601] - [nvme] nvme-fc: fix request private initialization (Ewan Milne) [1690601] - [nvme] nvme-fc: rework the request initialization code (Ewan Milne) [1690601] - [nvme] nvme-fc: introduce struct nvme_fcp_op_w_sgl (Ewan Milne) [1690601] - [nvme] nvme: cache struct nvme_ctrl reference to struct nvme_request (Ewan Milne) [1690601] - [nvme] nvme-fc: fix kernel-doc headers (Ewan Milne) [1690601] - [nvme] nvme_fc: add 'nvme_discovery' sysfs attribute to fc transport device (Ewan Milne) [1690601] - [nvme] nvme-fc: fix for a minor typos (Ewan Milne) [1690601] - [crypto] crypto: arm64/aes-ccm - fix logical bug in AAD MAC handling (Neil Horman) [1689185] - [mm] mm: enforce min addr even if capable() in expand_downwards() (Rafael Aquini) [1687667] {CVE-2019-9213} - [pci] PCI/VMD: Configure MPS settings before adding devices (Prarit Bhargava) [1659270] - [pci] PCI: vmd: Detach resources after stopping root bus (Prarit Bhargava) [1659270] - [char] tpm: separate cmd_ready/go_idle from runtime_pm (Jerry Snitselaar) [1677735] - [block] loop: set GENHD_FL_NO_PART_SCAN after blkdev_reread_part() (Ming Lei) [1683593] - [block] loop: do not print warn message if partition scan is successful (Ming Lei) [1683593] - [block] loop: drop caches if offset or block_size are changed (Ming Lei) [1683593] - [block] block: loop: remove redundant code (Ming Lei) [1683593] - [block] block: loop: check error using IS_ERR instead of IS_ERR_OR_NULL in loop_add() (Ming Lei) [1683593] - [block] loop: Fix double mutex_unlock(&loop_ctl_mutex) in loop_control_ioctl() (Ming Lei) [1683593] - [block] loop: Get rid of 'nested' acquisition of loop_ctl_mutex (Ming Lei) [1683593] - [block] loop: Avoid circular locking dependency between loop_ctl_mutex and bd_mutex (Ming Lei) [1683593] - [block] loop: Fix deadlock when calling blkdev_reread_part() (Ming Lei) [1683593] - [block] loop: Move loop_reread_partitions() out of loop_ctl_mutex (Ming Lei) [1683593] - [block] loop: Move special partition reread handling in loop_clr_fd() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_change_fd() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_set_fd() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_set_status() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_get_status() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down into loop_clr_fd() (Ming Lei) [1683593] - [block] loop: Split setting of lo_state from loop_clr_fd (Ming Lei) [1683593] - [block] loop: Push lo_ctl_mutex down into individual ioctls (Ming Lei) [1683593] - [block] loop: Get rid of loop_index_mutex (Ming Lei) [1683593] - [block] loop: Fold __loop_release into loop_release (Ming Lei) [1683593] - [block] block/loop: Use global lock for ioctl() operation. (Ming Lei) [1683593] - [block] block/loop: Don't grab "struct file" for vfs_getattr() operation. (Ming Lei) [1683593] - [crypto] crypto: cfb - fix decryption (Herbert Xu) [1653188]- [misc] VMCI: Support upto 64-bit PPNs (Cathy Avery) [1683479] - [mm] mm, page_alloc: fix has_unmovable_pages for HugePages (David Gibson) [1688114] - [pci] PCI: pciehp: Disable Data Link Layer State Changed event on suspend (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Assign ctrl->slot_ctrl before writing it to hardware (Myron Stowe) [1688393 1537397] - [pci] PCI/AER: Queue one GHES event, not several uninitialized ones (Myron Stowe) [1688393 1537397] - [pci] PCI/AER: Refactor error injection fallbacks (Myron Stowe) [1688393] - [pci] PCI/AER: Reuse existing pcie_port_find_device() interface (Myron Stowe) [1688393] - [pci] PCI/AER: Use managed resource allocations (Myron Stowe) [1688393] - [pci] PCI/AER: Use threaded IRQ for bottom half (Myron Stowe) [1688393] - [pci] PCI/AER: Use kfifo_in_spinlocked() to insert locked elements (Myron Stowe) [1688393] - [pci] PCI/AER: Use kfifo for tracking events instead of reimplementing it (Myron Stowe) [1688393] - [pci] PCI/AER: Remove error source from AER struct aer_rpc (Myron Stowe) [1688393] - [pci] PCI/AER: Remove unused aer_error_resume() (Myron Stowe) [1688393] - [pci] PCI: pnv_php: Use kmemdup() (Myron Stowe) [1688393] - [pci] PCI: cpqphp: Remove set but not used variable 'physical_slot' (Myron Stowe) [1688393] - [pci] PCI/ERR: Remove duplicated include from err.c (Myron Stowe) [1688393] - [pci] PCI: Equalize hotplug memory and io for occupied and empty slots (Myron Stowe) [1688393] - [pci] PCI / ACPI: Whitelist D3 for more PCIe hotplug ports (Myron Stowe) [1688393 1537397] - [acpi] ACPI / property: Allow multiple property compatible _DSD entries (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Implement runtime PM callbacks (Myron Stowe) [1688393 1537397] - [pci] PCI/portdrv: Resume upon exit from system suspend if left runtime suspended (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Do not handle events if interrupts are masked (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Disable hotplug interrupt during suspend (Myron Stowe) [1688393 1537397] - [pci] PCI / ACPI: Enable wake automatically for power managed bridges (Myron Stowe) [1688393 1537397] - [pci] PCI: Do not skip power-managed bridges in pci_enable_wake() (Myron Stowe) [1688393 1537397] - [pci] PCI: Unify device inaccessible (Myron Stowe) [1688393] - [pci] PCI/ERR: Always report current recovery status for udev (Myron Stowe) [1688393] - [pci] PCI/ERR: Simplify broadcast callouts (Myron Stowe) [1688393] - [pci] PCI/ERR: Run error recovery callbacks for all affected devices (Myron Stowe) [1688393] - [pci] PCI/ERR: Handle fatal error recovery (Myron Stowe) [1688393] - [pci] PCI/ERR: Use slot reset if available (Myron Stowe) [1688393] - [pci] PCI/AER: Don't read upstream ports below fatal errors (Myron Stowe) [1688393] - [pci] PCI/AER: Take reference on error devices (Myron Stowe) [1688393] - [pci] PCI/DPC: Save and restore config state (Myron Stowe) [1688393] - [pci] PCI: portdrv: Restore PCI config state on slot reset (Myron Stowe) [1688393] - [pci] PCI: portdrv: Initialize service drivers directly (Myron Stowe) [1688393] - [x86] x86/intel_rdt: Show missing resctrl mount options (David Arcari) [1689043] - [xen] xen/balloon: Fix mapping PG_offline pages to user space (David Hildenbrand) [1652790] - [kernel] PM/Hibernate: exclude all PageOffline() pages (David Hildenbrand) [1652790] - [kernel] PM/Hibernate: use pfn_to_online_page() (David Hildenbrand) [1652790] - [hv] hv_balloon: mark inflated pages PG_offline (David Hildenbrand) [1652790] - [xen] xen/balloon: mark inflated pages PG_offline (David Hildenbrand) [1652790] - [kernel] kexec: export PG_offline to VMCOREINFO (David Hildenbrand) [1652790] - [include] mm: convert PG_balloon to PG_offline (David Hildenbrand) [1652790] - [include] mm: balloon: update comment about isolation/migration/compaction (David Hildenbrand) [1652790] - [mm] mm/page_alloc.c: memory hotplug: free pages as higher order (David Hildenbrand) [1652790] - [mm] mm/memory.c: do_fault: avoid usage of stale vm_area_struct ("Herton R. Krzesinski") [1684734] - [kernel] cpuset: remove unused task_has_mempolicy() (Waiman Long) [1548268] - [kernel] cpuset: Remove set but not used variable 'cs' (Waiman Long) [1548268] - [kernel] cgroup: Add .__DEBUG__. prefix to debug file names (Waiman Long) [1548268] - [kernel] cpuset: Minor cgroup2 interface updates (Waiman Long) [1548268] - [kernel] cpuset: Expose cpuset.cpus.subpartitions with cgroup_debug (Waiman Long) [1548268] - [documentation] cpuset: Add documentation about the new "cpuset.sched.partition" flag (Waiman Long) [1548268] - [kernel] cpuset: Use descriptive text when reading/writing cpuset.sched.partition (Waiman Long) [1548268] - [kernel] cpuset: Expose cpus.effective and mems.effective on cgroup v2 root (Waiman Long) [1548268] - [kernel] cpuset: Make generate_sched_domains() work with partition (Waiman Long) [1548268] - [kernel] cpuset: Make CPU hotplug work with partition (Waiman Long) [1548268] - [kernel] cpuset: Track cpusets that use parent's effective_cpus (Waiman Long) [1548268] - [kernel] cpuset: Add an error state to cpuset.sched.partition (Waiman Long) [1548268] - [kernel] cpuset: Add new v2 cpuset.sched.partition flag (Waiman Long) [1548268] - [kernel] cpuset: Simply allocation and freeing of cpumasks (Waiman Long) [1548268] - [kernel] cpuset: Define data structures to support scheduling partition (Waiman Long) [1548268] - [kernel] cpuset: Enable cpuset controller in default hierarchy (Waiman Long) [1548268] - [kernel] cgroup/tracing: Move taking of spin lock out of trace event handlers (Waiman Long) [1548268] - [powerpc] powerpc/powernv/ioda: Fix locked_vm counting for memory used by IOMMU tables (David Gibson) [1674410] - [pci] PCI: dwc: Fix MSI-X EP framework address calculation bug (Myron Stowe) [1687935] - [pci] PCI: cadence: Correct probe behaviour when failing to get PHY (Myron Stowe) [1687935] - [pci] PCI: mvebu: Fix PCI I/O mapping creation sequence (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Remove obsolete drivers/pci pattern from ACPI section (Myron Stowe) [1687935] - [pci] PCI: dwc: Fix scheduling while atomic issues (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Move mobiveil PCI driver entry where it belongs (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Update PPC contacts for PCI core error handling (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Add Gustavo Pimentel as DesignWare PCI maintainer (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Add entries for PPC64 RPA PCI hotplug drivers (Myron Stowe) [1687935] - [pci] PCI: mvebu: Drop bogus comment above mvebu_pcie_map_registers() (Myron Stowe) [1687935] - [pci] PCI: mvebu: Convert to use pci_host_bridge directly (Myron Stowe) [1687935] - [pci] PCI: mvebu: Use resource_size() to remap I/O space (Myron Stowe) [1687935] - [pci] PCI: mvebu: Only remap I/O space if configured (Myron Stowe) [1687935] - [pci] PCI: mvebu: Fix I/O space end address calculation (Myron Stowe) [1687935] - [pci] PCI: mvebu: Remove redundant platform_set_drvdata() call (Myron Stowe) [1687935] - [pci] PCI: mobiveil: Add Kconfig/Makefile entries (Myron Stowe) [1687935] - [pci] PCI: mobiveil: Add missing ../pci.h include (Myron Stowe) [1687935] - [pci] PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type (Myron Stowe) [1687935] - [pci] PCI: endpoint: Add MSI set maximum restriction (Myron Stowe) [1687935] - [tools] tools: PCI: Add MSI-X support (Myron Stowe) [1687935] - [documentation] pci_endpoint_test: Add 2 ioctl commands (Myron Stowe) [1687935] - [documentation] pci-epf-test/pci_endpoint_test: Add MSI-X support (Myron Stowe) [1687935] - [misc] pci-epf-test/pci_endpoint_test: Use irq_type module parameter (Myron Stowe) [1687935] - [misc] pci-epf-test/pci_endpoint_test: Cleanup PCI_ENDPOINT_TEST memspace (Myron Stowe) [1687935] - [pci] PCI: dwc: Add legacy interrupt callback handler (Myron Stowe) [1687935] - [pci] PCI: dwc: Rework MSI callbacks handler (Myron Stowe) [1687935] - [pci] PCI: dwc: Add MSI-X callbacks handler (Myron Stowe) [1687935] - [pci] PCI: Update xxx_pcie_ep_raise_irq() and pci_epc_raise_irq() signatures (Myron Stowe) [1687935] - [pci] PCI: endpoint: Add MSI-X interfaces (Myron Stowe) [1687935] - [pci] PCI: dwc: Fix EP link notification implementation (Myron Stowe) [1687935] - [pci] PCI: spear13xx: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: qcom: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: histb: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: designware-plat: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: artpec6: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: armada8k: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: keystone: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: imx6: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: exynos: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: kirin: Add MSI support (Myron Stowe) [1687935] - [pci] PCI: pcie-cadence-ep: Remove redundant variable mmc (Myron Stowe) [1687935] - [pci] PCI: cadence: Add shutdown callback to host driver (Myron Stowe) [1687935] - [pci] PCI: cadence: Add Power Management ops for host and EP (Myron Stowe) [1687935] - [documentation] dt-bindings: PCI: cadence: Add DT bindings for optional PHYs (Myron Stowe) [1687935] - [pci] PCI: cadence: Add generic PHY support to host and EP drivers (Myron Stowe) [1687935] - [pci] PCI: cadence: Update cdns_pcie_writel() function signature (Myron Stowe) [1687935] - [pci] PCI: aardvark: Convert to use pci_host_probe() (Myron Stowe) [1687935] - [pci] PCI: aardvark: Size bridges before resources allocation (Myron Stowe) [1687935] - [pci] PCI: aardvark: Remove PCIe outbound window configuration (Myron Stowe) [1687935] - [pci] PCI: aardvark: Introduce an advk_pcie_valid_device() helper (Myron Stowe) [1687935] - [pci] PCI/xilinx: Depend on OF instead of the ARCH (Myron Stowe) [1687935] - [md] md: convert to kvmalloc (Nigel Croxon) [1661200] - [md] raid1: simplify raid1_error function (Nigel Croxon) [1661200] - [md] md-linear: use struct_size() in kzalloc() (Nigel Croxon) [1661200] - [md] md/raid5: fix 'out of memory' during raid cache recovery (Nigel Croxon) [1661200] - [md] md: Make bio_alloc_mddev use bio_alloc_bioset (Nigel Croxon) [1661200] - [md] raid10: refactor common wait code from regular read/write request (Nigel Croxon) [1661200] - [md] md: remvoe redundant condition check (Nigel Croxon) [1661200] - [lib] lib/raid6: add option to skip algo benchmarking (Nigel Croxon) [1661200] - [include] lib/raid6: avoid __attribute_const__ redefinition (Nigel Croxon) [1661200] - [include] lib/raid6: add missing include for raid6test (Nigel Croxon) [1661200] - [md] md: remove set but not used variable 'bi_rdev' (Nigel Croxon) [1661200] - [md] MD: Memory leak when flush bio size is zero (Nigel Croxon) [1661200] - [md] md: fix memleak for mempool (Nigel Croxon) [1661200] - [md] md-cluster: remove suspend_info (Nigel Croxon) [1661200] - [md] md-cluster: send BITMAP_NEEDS_SYNC message if reshaping is interrupted (Nigel Croxon) [1661200] - [md] md-cluster/bitmap: don't call md_bitmap_sync_with_cluster during reshaping stage (Nigel Croxon) [1661200] - [md] md-cluster/raid10: don't call remove_and_add_spares during reshaping stage (Nigel Croxon) [1661200] - [md] md-cluster/raid10: call update_size in md_reap_sync_thread (Nigel Croxon) [1661200] - [md] md-cluster: introduce resync_info_get interface for sanity check (Nigel Croxon) [1661200] - [md] md-cluster/raid10: support add disk under grow mode (Nigel Croxon) [1661200] - [md] md-cluster/raid10: resize all the bitmaps before start reshape (Nigel Croxon) [1661200] - [md] MD: fix invalid stored role for a disk - try2 (Nigel Croxon) [1661200] - [md] md/bitmap: use mddev_suspend/resume instead of ->quiesce() (Nigel Croxon) [1661200] - [md] md: remove redundant code that is no longer reachable (Nigel Croxon) [1661200] - [md] md: allow metadata updates while suspending an array - fix (Nigel Croxon) [1661200] - [md] MD: fix invalid stored role for a disk (Nigel Croxon) [1661200] - [md] md/raid10: Fix raid10 replace hang when new added disk faulty (Nigel Croxon) [1661200] - [md] raid5: block failing device if raid will be failed (Nigel Croxon) [1661200] - [md] md-cluster: release RESYNC lock after the last resync message (Nigel Croxon) [1661200] - [md] RAID10 BUG_ON in raise_barrier when force is true and conf->barrier is 0 (Nigel Croxon) [1661200] - [md] md/raid5-cache: disable reshape completely (Nigel Croxon) [1661200] - [md] md/raid5: fix data corruption of replacements after originals dropped (Nigel Croxon) [1661200] - [md] drivers/md/raid5: Do not disable irq on release_inactive_stripe_list() call (Nigel Croxon) [1661200] - [md] drivers/md/raid5: Use irqsave variant of atomic_dec_and_lock() (Nigel Croxon) [1661200] - [md] md/r5cache: remove redundant pointer bio (Nigel Croxon) [1661200] - [md] md-cluster: don't send msg if array is closing (Nigel Croxon) [1661200] - [md] md-cluster: show array's status more accurate (Nigel Croxon) [1661200] - [md] md-cluster: clear another node's suspend_area after the copy is finished (Nigel Croxon) [1661200] - [powerpc] KVM: PPC: Book3S HV: Add KVM stat largepages_[2M/1G] (Suraj Jitindar Singh) [1581563] - [tools] perf mem/c2c: Fix perf_mem_events to support powerpc (Steve Best) [1685084] - [powerpc] powerpc/perf: Add mem access events to sysfs (Steve Best) [1685084] - [netdrv] net-next/hinic: replace disable_irq_nosync/enable_irq (Xiaojun Tan) [1668958] - [powerpc] Fix access_ok() fallout for sparc32 and powerpc (Joe Lawrence) [1673980] - [x86] Remove 'type' argument from access_ok() function (Joe Lawrence) [1673980] - [arm64] arm64: move untagged_addr macro from uaccess.h to memory.h (Joe Lawrence) [1673980] - [powerpc] powerpc/uaccess: fix warning/error with access_ok() (Joe Lawrence) [1673980] - [netdrv] igb: shorten maximum PHC timecounter update interval (Corinna Vinschen) [1637098] - [netdrv] igb: shorten maximum PHC timecounter update interval (Corinna Vinschen) [1637098]- [rpmspec] redhat: speed up binary rpm compression (Denys Vlasenko) [1686921] - [netdrv] net/mlx5e: RX, Verify MPWQE stride size is in range (Alaa Hleihel) [1683589] - [fs] debugfs: Fix EPERM regression from kernel lockdown check (Lenny Szubowicz) [1686755] - [infiniband] IB/hfi1: Close race condition on user context disable and close (Alex Estrin) [1682927] - [rpmspec] redhat: parallelize modules compression (Denys Vlasenko) [1686404] - [arm64] arm64: Add workaround for Fujitsu A64FX erratum 010001 (Mark Langsdorf) [1666951] - [s390] vfio_ap: link the vfio_ap devices to the vfio_ap bus subsystem (Cornelia Huck) [1686044] - [drm] drm/cirrus: fix connector leak at unload (Rob Clark) [1685773] - [powerpc] powerpc/hugetlb: Handle mmap_min_addr correctly in get_unmapped_area callback (Steve Best) [1685181] - [netdrv] net/mlx4_en: Force CHECKSUM_NONE for short ethernet frames (Alaa Hleihel) [1663914 1651509] - [netdrv] net/mlx5e: Force CHECKSUM_UNNECESSARY for short ethernet frames (Alaa Hleihel) [1651509] - [include] Fix RH_KABI_SET_SIZE to use dereference operator (Tony Camuso) [1670118]- [x86] x86/tsc: Make calibration refinement more robust (David Arcari) [1686254] - [powerpc] powerpc/hugetlb: Don't do runtime allocation of 16G pages in LPAR configuration (Steve Best) [1686756] - [rpmspec] parallelize "make mrproper" (Denys Vlasenko) [1686865] - [rpmspec] use "make -jN" (via _smp_mflags) for modules_install (Denys Vlasenko) [1686308] - [fs] xfs: zero length symlinks are not valid (Carlos Maiolino) [1589618] - [drm] drm/bufs: Fix Spectre v1 vulnerability (Rob Clark) [1663467] - [drm] drm/ioctl: Fix Spectre v1 vulnerabilities (Rob Clark) [1663467] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.0 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Update 12.2.0.0 file copyrights to 2019 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix nvmet issues when link bounce under IO load (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct upcalling nvmet_fc transport during io done downcall (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix default driver parameter collision for allowing NPIV support (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Rework locking on SCSI io completion (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Enable SCSI and NVME fc4s by default (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Resize cpu maps structures based on possible cpus (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Utilize new IRQ API when allocating MSI-X vectors (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Rework EQ/CQ processing to address interrupt coalescing (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: convert eq_delay to usdelay (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Support non-uniform allocation of MSIX vectors to hardware queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix setting affinity hints to correlate with hardware queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Allow override of hardware queue selection policies (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Adapt partitioned XRI lists to efficient sharing (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Synchronize hardware queues with SCSI MQ interface (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Convert ring number to hardware queue for nvme wqe posting. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Move SCSI and NVME Stats to hardware queue structures (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Adapt cpucheck debugfs logic to Hardware Queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: Remove unused FCP_XRI_ABORT_EVENT slowpath event (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Partition XRI buffer list across Hardware Queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Replace io_channels for nvme and fcp with general hdw_queues per cpu (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove extra vector and SLI4 queue for Expresslane (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Implement common IO buffers between NVME and SCSI (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: Remove excess check on NVME io submit code path (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: remove nrport from nvme command structure (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: no need to check return value of debugfs_create functions (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Update lpfc version to 12.0.0.10 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Adding ability to reset chip via pci bus reset (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Add log messages to aid in debugging fc4type discovery issues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix discovery failure when PLOGI is defered (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update fault value on successful trunk events. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct MDS loopback diagnostics support (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix link state reporting for trunking when adapter is offline (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: do not set queue->page_count to 0 if pc_sli4_params.wqpcnt is invalid (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update driver version to 12.0.0.9 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix dif and first burst use in write commands (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix driver release of fw-logging buffers (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct topology type reporting on G7 adapters (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct code setting non existent bits in sli4 ABORT WQE (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Defer LS_ACC to FLOGI on point to point logins (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: ls_rjt erroneus FLOGIs (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Cap NPIV vports to 256 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix kernel Oops due to null pring pointers (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix a duplicate 0711 log message number. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix panic when FW-log buffsize is not initialized (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fix block guard enablement on SLI3 adapters (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Use dma_zalloc_coherent (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update driver version to 12.0.0.8 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: add Trunking support (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Implement GID_PT on Nameserver query to support faster failover (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix odd recovery in duplicate FLOGIs in point-to-point (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct LCB RJT handling (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fcoe: Fix link down issue after 1000+ link bounces (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct errors accessing fw log (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Reset link or adapter instead of doing infinite nameserver PLOGI retry (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix LOGO/PLOGI handling when triggerd by ABTS Timeout event (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix lpfc_sli4_read_config return value check (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct speeds on SFP swap (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fix remoteport access (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variables 'tgtp' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variable 'psli' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variables 'fc_hdr' and 'hw_page_size' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fix spelling mistake "Resrouce" -> "Resource" (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: remove a bogus pci_dma_sync_single_for_device call (Dick Kennedy) [1665288] - [netdrv] PCI/AER: Remove pci_cleanup_aer_uncorrect_error_status() calls (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Synchronize access to remoteport via rport (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variable 'sgl_size' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update driver version to 12.0.0.7 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: add support to retrieve firmware logs (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: reduce locking when updating statistics (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix errors in log messages. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct invalid EQ doorbell write on if_type=6 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct irq handling via locks when taking adapter offline (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct soft lockup when running mds diagnostics (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct race with abort on completion path (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Raise nvme defaults to support a larger io and more connectivity (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: raise sg count for nvme to use available sg resources (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix GFT_ID and PRLI logic for RSCN (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: remove an unnecessary NULL check (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Default fdmi_on to on (Dick Kennedy) [1665288] - [powerpc] powerpc/mm/hash: Increase vmalloc space with hash translation mode (Steve Best) [1676974] - [net] sunrpc: fix 4 more call sites that were using stack memory with a scatterlist (Scott Mayhew) [1679183] - [net] sunrpc: Don't use stack buffer with scatterlist (Scott Mayhew) [1679183] - [powerpc] powerpc/pseries: Perform full re-add of CPU for topology update post-migration (Steve Best) [1678209] - [fs] proc/stat: Make the interrupt statistics more efficient (Waiman Long) [1675168] - [kernel] genirq: Avoid summation loops for /proc/stat (Waiman Long) [1675168] - [powerpc] powerpc/pseries: fix EEH recovery of some IOV devices (Steve Best) [1676889] - [block] nvme: lock NS list changes while handling command effects (David Milburn) [1672759] - [powerpc] powerpc/radix: Fix kernel crash with mremap() (Steve Best) [1674186] - [crypto] crypto: ccp - fix the SEV probe in kexec boot path (Gary Hook) [1658806] - [netdrv] HDLC Frame Relay: mark driver unsupported in RHEL8 (John Linville) [1660627] - [netdrv] DLCI: mark driver unsupported in RHEL8 (John Linville) [1660627] - [netdrv] ethoc: mark hardware unsupported in RHEL8 (John Linville) [1660627] - [netdrv] dnet: mark hardware unsupported in RHEL8 (John Linville) [1660627] - [netdrv] dl2k: mark hardware unsupported in RHEL8 (John Linville) [1660627] - [netdrv] mark qla3xxx driver as unsupported (John Linville) [1658840] - [netdrv] sfc: initialise found bitmap in efx_ef10_mtd_probe (Jarod Wilson) [1668656] - [netdrv] sfc: suppress duplicate nvmem partition types in efx_ef10_mtd_probe (Jarod Wilson) [1668656] - [netdrv] sfc: extend MTD support for newer hardware (Jarod Wilson) [1668656] - [netdrv] sfc: add missing NVRAM partition types for EF10 (Jarod Wilson) [1668656] - [netdrv] ibmvnic: Fix non-atomic memory allocation in IRQ context (Steve Best) [1671474] - [netdrv] ibmvnic: Convert reset work item mutex to spin lock (Steve Best) [1671474] - [powerpc] powerpc/pseries: Export raw per-CPU VPA data via debugfs (Steve Best) [1608797] - [powerpc] powerpc/pseries: Export maximum memory value (Steve Best) [1608797] - [netdrv] ibmveth: Do not process frames after calling napi_reschedule (Desnes Augusto Nunes do Rosario) [1635577] - [cpufreq] cpufreq: powernv: Remove global pstate ramp-down timer in POWER9 (Steve Best) [1670030] - [of] of: __of_detach_node() - remove node from phandle cache (Steve Best) [1669198] - [of] of: of_node_get()/of_node_put() nodes held in phandle cache (Steve Best) [1669198] - [edac] EDAC, sb_edac: Fix signedness bugs in *_get_ha() functions (Aristeu Rozanski) [1641574] - [edac] EDAC, sb_edac: Fix reporting for patrol scrubber errors (Aristeu Rozanski) [1641574] - [documentation] proc.txt: Adding 'HardwareCorrupted' field and description. (Prashant Dhamdhere) [1658233] - [netdrv] qed: Fix command number mismatch between driver and the mfw (Chad Dupuis) [1663500] - Revert "[redhat] switch secureboot kernel image signing to release keys" ("Herton R. Krzesinski")- [arm64] revert "arm64: tlb: Avoid synchronous TLBIs when freeing page tables" (Christoph von Recklinghausen) [1685697]- [firmware] drivers/firmware: psci_checker: stash and use topology_core_cpumask for hotplug tests (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: re-introduce numa mask check for scheduler MC selection (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: rename llc_siblings to align with other struct members (Josh Poimboeuf) [1687101] - [arm64] arm64: smp: remove cpu and numa topology information when hotplugging out CPU (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: restrict updating siblings_masks to online cpus only (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: add support to remove cpu topology sibling masks (Josh Poimboeuf) [1687101] - [arm64] arm64: numa: separate out updates to percpu nodeid and NUMA node cpumap (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: refactor reset_cpu_topology to add support for removing topology (Josh Poimboeuf) [1687101]- [fs] gfs2: Fix missed wakeups in find_insert_glock (Andreas Grunbacher) [1678907]- [firmware] efi: Reduce the amount of memblock reservations for persistent allocations (Bhupesh Sharma) [1682988] - [firmware] efi: Permit multiple entries in persistent memreserve data structure (Bhupesh Sharma) [1682988] - [kernel] cpu/hotplug: Create SMT sysfs interface for all arches (Josh Poimboeuf) [1686068] - [net] netfilter: nft_set_hash: bogus element self comparison from deactivation path (Florian Westphal) [1678574] - [net] netfilter: nft_set_hash: fix lookups with fixed size hash on big endian (Florian Westphal) [1678574]- [security] revert "Add a SysRq option to lift kernel lockdown" (Lenny Szubowicz) [1684348] - [s390] s390/setup: fix boot crash for machine without EDAT-1 (Philipp Rudo) [1677357] - [s390] s390/setup: fix early warning messages (Philipp Rudo) [1677357]- [netdrv] net: hns3: add 8 BD limit for tx flow (Xiaojun Tan) [1676771] - [netdrv] net: hns3: fix a SSU buffer checking bug (Xiaojun Tan) [1676771] - [netdrv] net: hns3: aligning buffer size in SSU to 256 bytes (Xiaojun Tan) [1676771] - [netdrv] net: hns3: getting tx and dv buffer size through firmware (Xiaojun Tan) [1676771] - [net] netfilter: nf_nat_snmp_basic: add missing length checks in ASN.1 cbs (Florian Westphal) [1676602] - [char] ipmi: fix use-after-free of user->release_barrier.rda (Xiaojun Tan) [1677550] - [char] ipmi: Prevent use-after-free in deliver_response (Xiaojun Tan) [1677550]- [x86] revert "cpu/hotplug: Add SMT policy options" (Josh Poimboeuf) [1683690] - [crypto] net: crypto set sk to NULL when af_alg_release (Neil Horman) [1679450] {CVE-2019-8912} - [drm] drm/i915/gvt: update force-to-nonpriv register whitelist (Paul Lai) [1643972] - [kernel] MODSIGN: Also check platform keyring in mod_verify_sig() (Lenny Szubowicz) [1568532] - [kernel] Fix for module sig verification (Lenny Szubowicz) [1568532] - [security] efi: Lock down the kernel if booted in secure boot mode (Lenny Szubowicz) [1568532] - [firmware] efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode (Lenny Szubowicz) [1568532] - [x86] Copy secure_boot flag in boot params across kexec reboot (Lenny Szubowicz) [1568532] - [fs] debugfs: Restrict debugfs when the kernel is locked down (Lenny Szubowicz) [1568532] - [mm] x86/mmiotrace: Lock down the testmmiotrace module (Lenny Szubowicz) [1568532] - [kernel] Lock down module params that specify hardware parameters (eg. ioport) (Lenny Szubowicz) [1568532] - [tty] Lock down TIOCSSERIAL (Lenny Szubowicz) [1568532] - [pcmcia] Prohibit PCMCIA CIS storage when the kernel is locked down (Lenny Szubowicz) [1568532] - [acpi] acpi: Disable ACPI table override if the kernel is locked down (Lenny Szubowicz) [1568532] - [acpi] acpi: Ignore acpi_rsdp kernel param when the kernel has been locked down (Lenny Szubowicz) [1568532] - [acpi] ACPI: Limit access to custom_method when the kernel is locked down (Lenny Szubowicz) [1568532] - [x86] x86/msr: Restrict MSR access when the kernel is locked down (Lenny Szubowicz) [1568532] - [x86] x86: Lock down IO port access when the kernel is locked down (Lenny Szubowicz) [1568532] - [pci] PCI: Lock down BAR access when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] uswsusp: Disable when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] hibernate: Disable when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] kexec_load: Disable at runtime if the kernel is locked down (Lenny Szubowicz) [1568532] - [char] Restrict /dev/{mem, kmem, port} when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] MODSIGN: Enforce module signatures if the kernel is locked down (Lenny Szubowicz) [1568532] - [security] Add a SysRq option to lift kernel lockdown (Lenny Szubowicz) [1568532] - [security] Add the ability to lock down access to the running kernel image (Lenny Szubowicz) [1568532]- [net] tun: forbid iface creation with rtnl ops (Sabrina Dubroca) [1680969] - [net] revert "bridge: do not add port to router list when receives query with source 0.0.0.0" (Hangbin Liu) [1679896] - [net] sctp: walk the list of asoc safely (Marcelo Leitner) [1679920] {CVE-2019-8956} - [net] netfilter: nf_nat: skip nat clash resolution for same-origin entries (Florian Westphal) [1677647] - [net] netfilter: nf_conntrack: resolve clash for matching conntracks (Florian Westphal) [1677647] - [net] netfilter: nf_tables: fix flush after rule deletion in the same batch (Phil Sutter) [1677672] - [net] gro_cell: add napi_disable in gro_cells_destroy (Stefano Brivio) [1674408] - [net] sctp: call gso_reset_checksum when computing checksum in sctp_gso_segment (Xin Long) [1669386] - [net] ipvs: fix dependency on nf_defrag_ipv6 (Andrea Claudi) [1660808] - [net] sctp: check and update stream->out_curr when allocating stream_out (Xin Long) [1651877]- [x86] cpu/hotplug: Add SMT policy options (Josh Poimboeuf) [1677405]- [kernel] open the RHEL 8.1 development ("Herton R. Krzesinski") - [pci] pci/quirks: Add quirk to reset nvgpu at boot for the Lenovo ThinkPad P50 (Lyude Paul) [1677022] - [arm64] arm64, vmcoreinfo : Append 'MAX_USER_VA_BITS' to vmcoreinfo (Bhupesh Sharma) [1672962] - [md] dm thin: fix bug where bio that overwrites thin block ignores FUA (Mike Snitzer) [1679211] - [pci] PCI: Fix "try" semantics of bus and slot reset (Myron Stowe) [1662901] - [acpi] acpi/nfit: Fix bus command validation (Jeff Moyer) [1673958] - [pci] PCI/MSI: Return -ENOSPC from pci_alloc_irq_vectors_affinity() (Myron Stowe) [1667773] - [fs] NFS: Don't use page_file_mapping after removing the page (Benjamin Coddington) [1664190] - [fs] NFS: Fix up return value on fatal errors in nfs_page_async_flush() (Benjamin Coddington) [1664190] - [md] md: fix raid10 hang issue caused by barrier (Xiao Ni) [1630921] - [md] md/raid1: don't clear bitmap bits on interrupted recovery. (Xiao Ni) [1677360] - [virt] kvm: fix kvm_ioctl_create_device() reference counting (CVE-2019-6974) (Paolo Bonzini) [1673843] {CVE-2019-6974} - [block] blk-mq: fix a hung issue when fsync (Ming Lei) [1674399] - [block] Revert "block: cover another queue enter recursion via BIO_QUEUE_ENTERED" (Ming Lei) [1673966] - [tools] perf tools: Check for null when copying nsinfo. (Jiri Olsa) [1676451] - [iommu] iommu/amd: Fix IOMMU page flush when detach device from a domain (Suravee Suthikulpanit) [1672476]- [kernel] namespace: Add padding fix to user_table[] (Prarit Bhargava) [1677103] - [x86] KVM: nVMX: unconditionally cancel preemption timer in free_nested (CVE-2019-7221) (Paolo Bonzini) [1673841] {CVE-2019-7221} - [scsi] scsi: sd: fix entropy gathering for most rotational disks (Ewan Milne) [1676735] - [scsi] scsi: sd: Contribute to randomness when running rotational device (Ewan Milne) [1676735] - [rpmspec] Revert "Drop -doc subpackage" (Prarit Bhargava) [1657609] - [net] svcrdma: Remove max_sge check at connect time (Don Dutile) [1638869] - [net] svcrdma: Reduce max_send_sges (Don Dutile) [1638869] - [arm64] arm64: mm: Introduce MAX_USER_VA_BITS definition (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Rewrite stale comment in asm/tlbflush.h (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Avoid synchronous TLBIs when freeing page tables (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Remove redundant !CONFIG_HAVE_RCU_TABLE_FREE code (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlbflush: Allow stride to be specified for __flush_tlb_range() (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Justify non-leaf invalidation in flush_tlb_range() (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Add DSB ISHST prior to TLBI in __flush_tlb_[kernel_]pgtable() (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Use last-level invalidation in flush_tlb_kernel_range() (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: EXPORT vabits_user to modules (Christoph von Recklinghausen) [1672997] - [arm64] arm64: fix ARM64_USER_VA_BITS_52 builds (Christoph von Recklinghausen) [1672997] - [arm64] arm64: Kconfig: Re-jig CONFIG options for 52-bit VA (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Allow forcing all userspace addresses to 52-bit (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: introduce 52-bit userspace support (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Prevent mismatched 52-bit VA support (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Offset TTBR1 to allow 52-bit PTRS_PER_PGD (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Define arch_get_mmap_end, arch_get_mmap_base (Christoph von Recklinghausen) [1672997] - [firmware] arm64: mm: Introduce DEFAULT_MAP_WINDOW (Christoph von Recklinghausen) [1672997] - [mm] mm: mmap: Allow for "high" userspace addresses (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: apply r/o permissions of VM areas to its linear alias as well (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: purge lazily unmapped vm regions before changing permissions (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Don't wait for completion of TLB invalidation when page aging (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: Use __pa_symbol() for set_swapper_pgd() (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: Drop the unused cpu parameter (Christoph von Recklinghausen) [1672997] - [arm64] arm64/mm: move runtime pgds to rodata (Christoph von Recklinghausen) [1672997] - [mm] arm64/mm: use fixmap to modify swapper_pg_dir (Christoph von Recklinghausen) [1672997] - [arm64] arm64/mm: Separate boot-time page tables from swapper_pg_dir (Christoph von Recklinghausen) [1672997] - [arm64] arm64/mm: Pass ttbr1 as a parameter to __enable_mmu() (Christoph von Recklinghausen) [1672997] - [mm] arm64: fix erroneous warnings in page freeing functions (Christoph von Recklinghausen) [1672997] - [mm] arm64: Implement page table free interfaces (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlbflush: Introduce __flush_tlb_kernel_pgtable (Christoph von Recklinghausen) [1672997] - [lib] ioremap: Update pgtable free interfaces with addr (Christoph von Recklinghausen) [1672997] - [mm] x86/mm: Disable ioremap free page handling on x86-PAE (Christoph von Recklinghausen) [1672997] - [arm64] arm64: KVM: Enable Common Not Private translations (Christoph von Recklinghausen) [1504991] - [arm64] arm64: mm: Support Common Not Private translations (Christoph von Recklinghausen) [1504991] - [kernel] cpu/hotplug: Fix "SMT disabled by BIOS" detection for KVM (Igor Mammedov) [1668147] - [tools] perf tools: Compile perf with -g instead of -ggdb3 to workaround gdb crash (Jiri Olsa) [1667109]- [fs] Revert "gfs2: Fix loop in gfs2_rbm_find" (Andreas Grunbacher) [1658528] - [net] bpf: fix sanitation of alu op with pointer / scalar type from different paths (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: prevent out of bounds speculation on pointer arithmetic (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: move {prev_,}insn_idx into verifier env (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf/verifier: per-register parent pointers (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: restrict unknown scalars of mixed signed bounds for unprivileged (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: Simplify ptr_min_max_vals adjustment (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: fix inner map masking to prevent oob under speculation (Jiri Olsa) [1673631] {CVE-2019-7308} - [include] KABI: struct class padding (Prarit Bhargava) [1670035] - [include] KABI: struct timer_list padding (Prarit Bhargava) [1670035] - [include] KABI: struct irq_domain padding (Prarit Bhargava) [1670035] - [nvdimm] libnvdimm, pmem: Fix badblocks population for 'raw' namespaces (Jeff Moyer) [1672315] - [netdrv] net/mlx5e: FPGA, fix Innova IPsec TX offload data path performance (Alaa Hleihel) [1648230] - [kernel] exec: increase BINPRM_BUF_SIZE to 256 (Oleg Nesterov) [1447445]- [include] KABI: struct kset padding (Prarit Bhargava) [1669796] - [include] KABI: struct kobject and kobj_type padding (Prarit Bhargava) [1669796] - [include] KABI: struct delayed_work padding (Prarit Bhargava) [1669796] - [include] KABI: struct work_struct padding (Prarit Bhargava) [1669796] - [include] KABI: struct hrtimer padding (Prarit Bhargava) [1669796] - [include] KABI: struct user_namespace padding (Prarit Bhargava) [1669796] - [include] KABI: struct resource padding (Prarit Bhargava) [1669796] - [include] KABI: Protect device_driver struct (Prarit Bhargava) [1666316] - [include] KABI: Protect radix functions (Prarit Bhargava) [1669079] - [char] ipmi: msghandler: Fix potential Spectre v1 vulnerabilities (Tony Camuso) [1672582] - [vhost] vhost: fix OOB in get_rx_bufs() (Jason Wang) [1668665] {CVE-2018-16880}- [md] dm: don't use bio_trim() afterall (Mike Snitzer) [1673657] - [md] dm: add memory barrier before waitqueue_active (Mike Snitzer) [1673110] - [x86] x86: uaccess: Inhibit speculation past access_ok() in user_access_begin() (Joe Lawrence) [1670113] {CVE-2018-20669} - [kernel] make 'user_access_begin()' do 'access_ok()' (Joe Lawrence) [1670113] {CVE-2018-20669} - [drm] i915: fix missing user_access_end() in page fault exception case (Joe Lawrence) [1670113] {CVE-2018-20669} - [drm] drm/i915: Force the slow path after a user-write error (Joe Lawrence) [1670113] {CVE-2018-20669} - [x86] x86/microcode/amd: Don't falsely trick the late loading mechanism (David Arcari) [1654904] - [fs] iomap: get/put the page in iomap_page_create/release() (Artem Savkov) [1664298] - [scsi] scsi: qla2xxx: Add new FC-NVMe enable BIT to enable FC-NVMe feature (Himanshu Madhani) [1671569] - [message] mptsas: pci-id table changes (Tomas Henzl) [1666730] - [message] mptsas: Taint kernel if mptsas is loaded (Tomas Henzl) [1666730] - [kernel] genirq/matrix: Improve target CPU selection for managed interrupts. (Gary Hook) [1669557] - [kernel] irq/matrix: Spread managed interrupts on allocation (Gary Hook) [1669557] - [kernel] irq/matrix: Split out the CPU selection code into a helper (Gary Hook) [1669557] - [net] sit: check if IPv6 enabled before calling ip6_err_gen_icmpv6_unreach() (Stefano Brivio) [1671680] - [net] geneve: should not call rt6_lookup() when ipv6 was disabled (Stefano Brivio) [1671680] - [net] netfilter: physdev: relax br_netfilter dependency (Phil Sutter) [1650382] - [net] netfilter: nf_tables: add NFTA_RULE_POSITION_ID to nla_policy (Phil Sutter) [1670563] - [net] netfilter: nf_tables: Support RULE_ID reference in new rule (Phil Sutter) [1670563] - [net] rtnetlink: fix incorrect handling of device stats passed to userspace (Ivan Vecera) [1668298] - [net] netfilter: nf_tables: handle nft_object lookups via rhltable (Phil Sutter) [1659725] - [net] netfilter: nf_tables: prepare nft_object for lookups via hashtable (Phil Sutter) [1659725] - [net] netfilter: nf_tables: selective rule dump needs table to be specified (Phil Sutter) [1659725] - [net] netfilter: nf_tables: Fix for endless loop when dumping ruleset (Phil Sutter) [1659725] - [net] netfilter: nf_tables: Speed up selective rule dumps (Phil Sutter) [1659725] - [net] exclude sock_reuseport from kABI protection (Paolo Abeni) [1665984] - [include] KABI: struct device padding (Don Dutile) [1664445] - [include] KABI: struct dma_map_ops padding (Don Dutile) [1664482] - [kernel] swiotlb: clear io_tlb_start and io_tlb_end in swiotlb_exit (Don Dutile) [1664484] - [kernel] dma-mapping: remove a few unused exports (Don Dutile) [1664484] - [include] dma-mapping: properly stub out the DMA API for !CONFIG_HAS_DMA (Don Dutile) [1664484] - [kernel] dma-mapping: remove dmam_{declare,release}_coherent_memory (Don Dutile) [1664484] - [kernel] dma-mapping: implement dmam_alloc_coherent using dmam_alloc_attrs (Don Dutile) [1664484] - [include] dma-mapping: implement dma_map_single_attrs using dma_map_page_attrs (Don Dutile) [1664484] - [include] dma-mapping: fix flags in dma_alloc_wc (Don Dutile) [1664484] - [include] dma-mapping: deprecate dma_zalloc_coherent (Don Dutile) [1664484] - [arm64] arm64: default to the direct mapping in get_arch_dma_ops (Don Dutile) [1664484] - [kernel] dma-mapping: fix inverted logic in dma_supported (Don Dutile) [1664484] - [include] dma-mapping: bypass indirect calls for dma-direct (Don Dutile) [1664484] - [kernel] dma-direct: merge swiotlb_dma_ops into the dma_direct code (Don Dutile) [1664484] - [kernel] dma-direct: do not include SME mask in the DMA supported check (Don Dutile) [1664484] - [kernel] dma-direct: use dma_direct_map_page to implement dma_direct_map_sg (Don Dutile) [1664484] - [kernel] dma-direct: improve addressability error reporting (Don Dutile) [1664484] - [kernel] dma-direct: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [xen] swiotlb: remove dma_mark_clean (Don Dutile) [1664484] - [xen] swiotlb: remove SWIOTLB_MAP_ERROR (Don Dutile) [1664484] - [xen] xen-swiotlb: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [kernel] swiotlb: Skip cache maintenance on map error (Don Dutile) [1664484] - [kernel] swiotlb: add support for non-coherent DMA (Don Dutile) [1664484] - [kernel] swiotlb: mark is_swiotlb_buffer static (Don Dutile) [1664484] - [kernel] swiotlb: remove a pointless comment (Don Dutile) [1664484] - [kernel] swiotlb: clean up reporting (Don Dutile) [1664484] - [kernel] dma-direct: reject highmem pages from dma_alloc_from_contiguous (Don Dutile) [1664484] - [kernel] dma-direct: provide page based alloc/free helpers (Don Dutile) [1664484] - [include] dma-direct: Make DIRECT_MAPPING_ERROR viable for SWIOTLB (Don Dutile) [1664484] - [kernel] dma-direct: respect DMA_ATTR_NO_WARN (Don Dutile) [1664484] - [kernel] dma-direct: document the zone selection logic (Don Dutile) [1664484] - [kernel] dma-direct: fix return value of dma_direct_supported (Don Dutile) [1664484] - [kernel] dma-direct: always allow dma mask <= physiscal memory size (Don Dutile) [1664484] - [kernel] dma-direct: implement complete bus_dma_mask handling (Don Dutile) [1664484] - [kernel] dma-direct: refine dma_direct_alloc zone selection (Don Dutile) [1664484] - [kernel] dma-direct: add an explicit dma_direct_get_required_mask (Don Dutile) [1664484] - [kernel] kernel/dma/direct: take DMA offset into account in dma_direct_supported (Don Dutile) [1664484] - [kernel] dma-mapping: factor out dummy DMA ops (Don Dutile) [1664484] - [mm] arm64: dma-mapping: Fix FORCE_CONTIGUOUS buffer clearing (Don Dutile) [1664484] - [iommu] iommu/dma-iommu: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [iommu] iommu/vt-d: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [iommu] iommu/intel: small map_page cleanup (Don Dutile) [1664484] - [iommu] intel-iommu: mark intel_dma_ops static (Don Dutile) [1664484] - [iommu] ia64: remove iommu_dma_supported (Don Dutile) [1664484] - [iommu] iommu: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [iommu] iommu/dma: Use fast DMA domain lookup (Don Dutile) [1664484] - [x86] x86/amd_gart: fix unmapping of non-GART mappings (Don Dutile) [1664484] - [x86] x86/amd_gart: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [mm] arm64: remove the dummy_dma_ops mapping_error method (Don Dutile) [1664484] - [powerpc] powerpc: Do not redefine NEED_DMA_MAP_STATE (Don Dutile) [1664484] - [powerpc] powerpc/iommu: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [s390] s390: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [kernel] dma-mapping: always build the direct mapping code (Don Dutile) [1664484] - [kernel] dma-mapping: move dma_cache_sync out of line (Don Dutile) [1664484] - [kernel] dma-mapping: move various slow path functions out of line (Don Dutile) [1664484] - [base] dma-mapping: move dma_get_required_mask to kernel/dma (Don Dutile) [1664484] - [base] dma-mapping: move dma_default_get_required_mask under ifdef (Don Dutile) [1664484] - [include] dma-mapping: merge dma_unmap_page_attrs and dma_unmap_single_attrs (Don Dutile) [1664484] - [include] dma-mapping: simplify the dma_sync_single_range_for_{cpu,device} implementation (Don Dutile) [1664484] - [include] dma-mapping: return an error code from dma_mapping_error (Don Dutile) [1664484] - [pci] dma-mapping: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [include] dma-mapping: provide a generic DMA_MAPPING_ERROR (Don Dutile) [1664484] - [kernel] dma-mapping: move the arm64 noncoherent alloc/free support to common code (Don Dutile) [1664484] - [mm] arm64: fix warnings without CONFIG_IOMMU_DMA (Don Dutile) [1664484] - [arm64] arm64: use the generic swiotlb_dma_ops (Don Dutile) [1664484] - [kernel] swiotlb: don't dip into swiotlb pool for coherent allocations (Don Dutile) [1664484] - [kernel] swiotlb: refactor swiotlb_map_page (Don Dutile) [1664484] - [kernel] swiotlb: use swiotlb_map_page in swiotlb_map_sg_attrs (Don Dutile) [1664484] - [kernel] swiotlb: merge swiotlb_unmap_page and unmap_single (Don Dutile) [1664484] - [kernel] swiotlb: remove the overflow buffer (Don Dutile) [1664484] - [kernel] swiotlb: do not panic on mapping failures (Don Dutile) [1664484] - [mm] arm64/dma-mapping: Mildly optimise non-coherent IOMMU ops (Don Dutile) [1664484] - [iommu] iommu: Add fast hook for getting DMA domains (Don Dutile) [1664484] - [iommu] iommu: Remove the ->map_sg indirection (Don Dutile) [1664484] - [iommu] kernel/dma: remove unsupported gfp_mask parameter from dma_alloc_from_contiguous() (Don Dutile) [1664484] - [mm] mm/cma: remove unsupported gfp_mask parameter from cma_alloc() (Don Dutile) [1664484] - [kernel] dma-mapping: move the remap helpers to a separate file (Don Dutile) [1664484] - [include] dma-mapping: fix return type of dma_set_max_seg_size() (Don Dutile) [1664484] - [include] dma-mapping: translate __GFP_NOFAIL to DMA_ATTR_NO_WARN (Don Dutile) [1664484] - [include] dma-debug: Check for drivers mapping invalid addresses in dma_map_single() (Don Dutile) [1664484] - [base] dma-mapping: make the get_required_mask method available unconditionally (Don Dutile) [1664484] - [xen] dma-mapping: support non-coherent devices in dma_common_get_sgtable (Don Dutile) [1664484] - [kernel] dma-mapping: consolidate the dma mmap implementations (Don Dutile) [1664484] - [kernel] dma-mapping: merge direct and noncoherent ops (Don Dutile) [1664484] - [include] dma-mapping: move the dma_coherent flag to struct device (Don Dutile) [1664484] - [include] dma-mapping: remove dma_deconfigure (Don Dutile) [1664484] - [base] dma-mapping: remove dma_configure (Don Dutile) [1664484] - [include] dma-mapping: relax warning for per-device areas (Don Dutile) [1664484] - [kernel] dma-mapping: add the missing ARCH_HAS_SYNC_DMA_FOR_CPU_ALL declaration (Don Dutile) [1664484] - [kernel] dma-noncoherent: add a arch_sync_dma_for_cpu_all hook (Don Dutile) [1664484] - [block] deprecate elevator= kernel parameter (Jeff Moyer) [1665295] - [rpmspec] kernel.spec: disable kabi checks until RC (=?UTF-8?q?=C4=8Cestm=C3=ADr=20Kalina?=) [1671007] - [iommu] iommu/amd: Unmap all mapped pages in error path of map_sg (Jerry Snitselaar) [1668448] - [iommu] iommu/amd: Call free_iova_fast with pfn in map_sg (Jerry Snitselaar) [1668448]- [arm64] arm64, vmcoreinfo : Append 'MAX_PHYSMEM_BITS' to vmcoreinfo (Bhupesh Sharma) [1666679] - [kernel] sched/debug: Initialize sd_sysctl_cpus if !CONFIG_CPUMASK_OFFSTACK (Joe Lawrence) [1667840] - [init] Small change to the message about certified hardware (Steve Best) [1671765] - [x86] x86/kdump: make the behavior of crashkernel=X consistent with kaslr (Pingfan Liu) [1640799] - [x86] Add back support for Intel processors (Steve Best) [1670529] - [net] SUNRPC: Clean up initialisation of the struct rpc_rqst (Benjamin Coddington) [1650494] - [x86] KABI, x86/paravirt: Protect paravirt ops structures (Waiman Long) [1669957] - [include] KABI: struct module padding (Prarit Bhargava) [1669480] - [include] KABI: struct stack_trace_struct padding (Prarit Bhargava) [1669480] - [documentation] iommu: Fix passthrough option documentation (Gary Hook) [1658391] - [iommu] iommu: Add config option to set passthrough as default (Gary Hook) [1658391] - [kernel] redhat: kernel: clean up taint flags (Jiri Benc) [1654313]- [scsi] scsi: qedi: Add the CRC size within iSCSI NVM image (Charles Rose) [1670186] - [fs] iomap: don't search past page end in iomap_is_partially_uptodate (Eric Sandeen) [1657588] - [netdrv] cxgb4: update supported DCB version (Arjun Vynipadath) [1668571] - [x86] kexec, KEYS: Make use of platform keyring for signature verify (Kairui Song) [1640486] - [security] integrity, KEYS: add a reference to platform keyring (Kairui Song) [1640486] - [security] efi: Allow the "db" UEFI variable to be suppressed (Kairui Song) [1640486] - [security] efi: Import certificates from UEFI Secure Boot (Kairui Song) [1640486] - [security] efi: Add an EFI signature blob parser (Kairui Song) [1640486] - [include] efi: Add EFI signature data types (Kairui Song) [1640486] - [security] integrity: Load certs to the platform keyring (Kairui Song) [1640486] - [security] integrity: Define a trusted platform keyring (Kairui Song) [1640486] - [security] security/integrity: remove unnecessary 'init_keyring' variable (Kairui Song) [1640486] - [x86] Fix kexec forbidding kernels signed with keys in the secondary keyring to boot (Kairui Song) [1640486] - [crypto] Replace magic for trusting the secondary keyring with #define (Kairui Song) [1640486] - [acpi] acpi/nfit: Fix command-supported detection (Jeff Moyer) [1665812] - [acpi] acpi/nfit: Block function zero DSMs (Jeff Moyer) [1665812] - [md] dm: add missing trace_block_split() to __split_and_process_bio() (Mike Snitzer) [1645283] - [md] dm: fix dm_wq_work() to only use __split_and_process_bio() if appropriate (Mike Snitzer) [1645283] - [md] dm: fix redundant IO accounting for bios that need splitting (Mike Snitzer) [1645283] - [md] dm: fix clone_bio() to trigger blk_recount_segments() (Mike Snitzer) [1645283] - [block] block: cover another queue enter recursion via BIO_QUEUE_ENTERED (Mike Snitzer) [1645283] - [md] dm thin: fix passdown_double_checking_shared_status() (Mike Snitzer) [1668039] - [tools] bpftool: Fix prog dump by tag (Jiri Olsa) [1667305] - [arm64] arm64: ftrace: Fix to enable syscall events on arm64 (Don Dutile) [1668035] - [arm64] arm64: implement syscall wrappers (Don Dutile) [1668035] - [arm64] arm64: convert compat wrappers to C (Don Dutile) [1668035] - [arm64] arm64: use SYSCALL_DEFINE6() for mmap (Don Dutile) [1668035] - [arm64] arm64: use {COMPAT,}SYSCALL_DEFINE0 for sigreturn (Don Dutile) [1668035] - [arm64] arm64: remove in-kernel call to sys_personality() (Don Dutile) [1668035] - [include] kernel: add ksys_personality() (Don Dutile) [1668035] - [arm64] arm64: drop alignment from syscall tables (Don Dutile) [1668035] - [arm64] arm64: entry: remove unused register aliases (Don Dutile) [1668035] - [arm64] arm64: convert native/compat syscall entry to C (Don Dutile) [1668035] - [arm64] arm64: svc: Ensure hardirq tracing is updated before return (Don Dutile) [1668035] - [arm64] arm64: convert syscall trace logic to C (Don Dutile) [1668035] - [arm64] arm64: move sve_user_{enable,disable} to (Don Dutile) [1668035] - [arm64] arm64: kill change_cpacr() (Don Dutile) [1668035] - [arm64] arm64: convert raw syscall invocation to C (Don Dutile) [1668035] - [arm64] arm64: introduce syscall_fn_t (Don Dutile) [1668035] - [arm64] arm64: remove sigreturn wrappers (Don Dutile) [1668035] - [arm64] arm64: rseq: Implement backend rseq calls and select HAVE_RSEQ (Don Dutile) [1668035] - [sound] ALSA: usb-audio: Add vendor and product name for Dell WD19 Dock (Jaroslav Kysela) [1664249] - [infiniband] IB/hfi1: Fix an out-of-bounds access in get_hw_stats (Alex Estrin) [1667104] - [infiniband] IB/hfi1: Incorrect sizing of sge for PIO will OOPs (Alex Estrin) [1667095] - [drm] drm/nouveau: register backlight on pascal and newer (Ben Skeggs) [1664899] - [drm] drm/nouveau/disp/gm200-: enforce identity-mapped SOR assignment for LVDS/eDP panels (Ben Skeggs) [1664899] - [drm] drm/nouveau/disp: move eDP panel power handling (Ben Skeggs) [1664899] - [drm] drm/nouveau/devinit: don't fail when PMU/PRE_OS is missing from VBIOS (Ben Skeggs) [1664899] - [kernel] locking/rwsem: Fix (possible) missed wakeup (Waiman Long) [1668014] - [kernel] futex: Fix (possible) missed wakeup (Waiman Long) [1668014] - [kernel] sched/wake_q: Fix wakeup ordering for wake_q (Waiman Long) [1668014] - [kernel] sched/wake_q: Document wake_q_add() (Waiman Long) [1668014] - [kernel] sched/wait: Fix rcuwait_wake_up() ordering (Waiman Long) [1668014] - [kernel] sched/Documentation: Update wake_up() & co. memory-barrier guarantees (Waiman Long) [1668014] - [kvm] KVM: PPC: Book3S HV: Flush guest mappings when turning dirty tracking on/off (Laurent Vivier) [1650386] - [kvm] KVM: PPC: Book3S HV: Cleanups - constify memslots, fix comments (Laurent Vivier) [1650386] - [kvm] KVM: PPC: Book3S HV: Map single pages when doing dirty page logging (Laurent Vivier) [1650386] - [kvm] KVM: PPC: Pass change type down to memslot commit function (Laurent Vivier) [1650386] - [vhost] vhost: log dirty page correctly (Jason Wang) [1657578] - [netdrv] netxen: taint as unsupported in RHEL8 (Tony Camuso) [1654825] - [hid] HID: hiddev: fix potential Spectre v1 (Benjamin Tissoires) [1664611] - [net] resort to custom code for sk_buff padding (Paolo Abeni) [1665984] - [net] add padding to cipher_context (Paolo Abeni) [1665984] - [net] add padding to tls_crypto_context (Paolo Abeni) [1665984] - [net] add padding to ipv4_devconf (Paolo Abeni) [1665984] - [net] ip6mr: Fix potential Spectre v1 vulnerability (Stefano Brivio) [1663472] - [net] ipv4: Fix potential Spectre v1 vulnerability (Stefano Brivio) [1663472] - [include] add KABI padding to file_system_type (Eric Sandeen) [1665320 1650565] - [include] add KABI padding to multiple fs ops vectors (Eric Sandeen) [1665320] - [fs] add KABI padding to dentry structure (Eric Sandeen) [1665320] - [fs] add KABI padding to inode structure (Eric Sandeen) [1665320] - [include] add KABI padding to file_lock structure (Eric Sandeen) [1665320] - [include] KABI: add an iopoll method to struct file_operations (Eric Sandeen) [1665320] - [sound] ALSA: emux: Fix potential Spectre v1 vulnerabilities (Jaroslav Kysela) [1663477] - [sound] ALSA: pcm: Fix potential Spectre v1 vulnerability (Jaroslav Kysela) [1663477] - [sound] ALSA: rme9652: Fix potential Spectre v1 vulnerability (Jaroslav Kysela) [1663477] - [sound] ALSA: emu10k1: Fix potential Spectre v1 vulnerabilities (Jaroslav Kysela) [1663477] - [powerpc] powerpc/tm: Unset MSR[TS] if not recheckpointing (Gustavo Duarte) [1663853] - [netdrv] r8152: Add support for MAC address pass through on RTL8153-BND (Perry Yuan) [1658433] - [hid] HID: debug: fix the ring buffer implementation (Tony Camuso) [1669469] {CVE-2019-3819}- [netdrv] net: hns: Fix WARNING when hns modules installed (Xiaojun Tan) [1662120] - [netdrv] net: hns: Fix ping failed when use net bridge and send multicast (Xiaojun Tan) [1662120] - [netdrv] net: hns: Add mac pcs config when enable|disable mac (Xiaojun Tan) [1662120] - [netdrv] net: hns: Fix ntuple-filters status error. (Xiaojun Tan) [1662120] - [netdrv] net: hns: Free irq when exit from abnormal branch (Xiaojun Tan) [1662120] - [netdrv] net: hns: Clean rx fbd when ae stopped. (Xiaojun Tan) [1662120] - [netdrv] net: hns: Some registers use wrong address according to the datasheet. (Xiaojun Tan) [1662120] - [netdrv] net: hns: All ports can not work when insmod hns ko after rmmod. (Xiaojun Tan) [1662120] - [netdrv] net: hns: Incorrect offset address used for some registers. (Xiaojun Tan) [1662120] - [include] ipmi: RH_KABI macros to pad kabi exposed structs (Tony Camuso) [1658175] - [scsi] reserve space in structures for KABI (Ewan Milne) [1664397]- [include] PCI: Add reserved fields to 'struct hotplug_slot' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields to 'struct hotplug_slot_ops' (Myron Stowe) [1663534] - [pci] PCI: Add reserved fields to 'struct pci_sriov' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields to 'struct pci_driver' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields to 'struct pci_bus' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields, and extension, to 'struct pci_dev' (Myron Stowe) [1663534] - [pci] PCI: Add missing include to drivers/pci.h (Myron Stowe) [1663534] - [pci] PCI/IOV: Use VF0 cached config space size for other VFs (Myron Stowe) [1663534] - [include] PCI: always include 'p2pdma' in 'struct pci_dev' (Myron Stowe) [1663534] - [ata] PCI: Remove pci_set_dma_max_seg_size() (Myron Stowe) [1663534] - [pci] PCI: Remove pci_set_dma_seg_boundary() (Myron Stowe) [1663534] - [include] PCI: Remove pci_unmap_addr() wrappers for DMA API (Myron Stowe) [1663534] - [pci] PCI/AER: Abstract AER interrupt handling (Myron Stowe) [1663534] - [pci] PCI: Uninline PCI bus accessors for better ftracing (Myron Stowe) [1663534] - [pci] PCI/portdrv: Add runtime PM hooks for port service drivers (Myron Stowe) [1663534] - [pci] PCI: Make link active reporting detection generic (Myron Stowe) [1663534] - [block] block: don't lose track of REQ_INTEGRITY flag (Ming Lei) [1665684] - [nvme] nvme-pci: fix nvme_setup_irqs() (Ming Lei) [1661439] - [lib] sbitmap: Protect swap_lock from hardirq (Ming Lei) [1666192] - [lib] sbitmap: Protect swap_lock from softirqs (Ming Lei) [1666192] - [scsi] scsi: isci: initialize shost fully before calling scsi_add_host() (Ming Lei) [1664918] - [nvme] nvmet-fc: Mark NVMe/FC target mode driver as unsupported (Ewan Milne) [1664838] - [netdrv] bnx2x: Assign unique DMAE channel number for FW DMAE transactions. (Jonathan Toppins) [1638306] - [fs] block: don't use un-ordered __set_current_state(TASK_UNINTERRUPTIBLE) (Ming Lei) [1664580] - [netdrv] qed: Wait for ready indication before rereading the shmem (Chad Dupuis) [1652417] - [netdrv] qed: Avoid sending mailbox commands when MFW is not responsive (Chad Dupuis) [1652417] - [netdrv] qed: Wait for MCP halt and resume commands to take place (Chad Dupuis) [1652417] - [netdrv] qed: Prevent a possible deadlock during driver load and unload (Chad Dupuis) [1652417] - [fs] gfs2: Fix loop in gfs2_rbm_find (Andreas Grunbacher) [1658528] - [fs] gfs2: Get rid of potential double-freeing in gfs2_create_inode (Andreas Grunbacher) [1658539]- [vhost] vhost/vsock: fix vhost vsock cid hashing inconsistent (Stefan Hajnoczi) [1619848] {CVE-2018-14625} - [vhost] vhost/vsock: fix use-after-free in network stack callers (Stefan Hajnoczi) [1619848] {CVE-2018-14625} - [netdrv] bnx2x: Add VF spoof-checking configuration (Jonathan Toppins) [1646842] - [netdrv] net-next: hinic: fix a problem in free_tx_poll() (Xiaojun Tan) [1642016] - [netdrv] net: hns: fix for unmapping problem when SMMU is on (Xiaojun Tan) [1640526] - [netdrv] net: hns: add netif_carrier_off before change speed and duplex (Xiaojun Tan) [1640526] - [netdrv] net: hns: add the code for cleaning pkt in chip (Xiaojun Tan) [1640526] - [netdrv] net: hns: modify variable type in hns_nic_reuse_page (Xiaojun Tan) [1640526]- [irqchip] Mark GICv2 deprecated (Wei Huang) [1609391] - [scsi] qla2xxx: Use correct number of vectors for online CPUs (Himanshu Madhani) [1644058] - [scsi] megaraid_sas: mark Aero controllers as tech preview (Tomas Henzl) [1659972] - [scsi] megaraid_sas: add retry logic in megasas_readl (Tomas Henzl) [1659972] - [scsi] scsi: megaraid_sas: Introduce new Aero adapter type (Tomas Henzl) [1659972] - [scsi] scsi: megaraid_sas: Fix Ventura series based checks (Tomas Henzl) [1659972] - [scsi] scsi: libfc: retry PRLI if we cannot analyse the payload (Chris Leech) [1631843] - [scsi] scsi: libfc: check fc_frame_payload_get() return value for null (Chris Leech) [1631843] - [scsi] scsi: libfc: hold disc_mutex in fc_disc_stop_rports() (Chris Leech) [1631843] - [scsi] scsi: libfc: fixup lockdep annotations (Chris Leech) [1631843] - [scsi] scsi: libfc: fixup 'sleeping function called from invalid context' (Chris Leech) [1631843] - [scsi] scsi: libfc: Add lockdep annotations (Chris Leech) [1631843] - [md] dm crypt: fix parsing of extended IV arguments (Mike Snitzer) [1665290] - [kernel] redhat: kabi: reserved padding for kernel sched data structures (Rafael Aquini) [1664858] - [kernel] redhat: kabi: reserved padding for MM related data structures (Rafael Aquini) [1664858] - [vfio] vfio/type1: Fix unmap overflow off-by-one (Alex Williamson) [1662291] - [message] mptspi: pci-id table changes (Tomas Henzl) [1651803] - [message] mptspi: Taint kernel if mptspi is loaded (Tomas Henzl) [1651803] - [block] kabi: reserve space for public data structure (Ming Lei) [1551939] - [block] kabi: reserve space for blk-mq related structure (Ming Lei) [1551939] - [block] kabi: reserve space for bsg related structure (Ming Lei) [1551939] - [block] kabi: reserve space for integrity related structure (Ming Lei) [1551939] - [block] kabi: reserve space for CONFIG_BLK_DEV_ZONED (Ming Lei) [1551939] - [ata] ata: Disable AHCI ALPM feature for Ampere Computing eMAG SATA (David Milburn) [1663347] - [kvm] KVM: x86: Add CPUID support for new instruction WBNOINVD (Andrew Jones) [1659491] - [x86] KVM: x86: Use jmp to invoke kvm_spurious_fault() from .fixup (Andrew Jones) [1659491] - [virt] kvm: Change offset in kvm_write_guest_offset_cached to unsigned (Andrew Jones) [1659491] - [virt] kvm: Disallow wraparound in kvm_gfn_to_hva_cache_init (Andrew Jones) [1659491] - [kvm] KVM: x86: svm: report MSR_IA32_MCG_EXT_CTL as unsupported (Andrew Jones) [1659491] - [virt] arm/arm64: KVM: Add ARM_EXCEPTION_IS_TRAP macro (Andrew Jones) [1659491] - [arm64] arm64: KVM: Avoid setting the upper 32 bits of VTCR_EL2 to 1 (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: Fix unintended stage 2 PMD mappings (Andrew Jones) [1659491] - [virt] arm/arm64: KVM: vgic: Force VM halt when changing the active state of GICv3 PPIs/SGIs (Andrew Jones) [1659491] - [arm64] KVM: arm/arm64: Fixup the kvm_exit tracepoint (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Consider priority and active state for pending irq (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Fix off-by-one bug in vgic_get_irq() (Andrew Jones) [1659491] - [kvm] KVM: X86: Fix NULL deref in vcpu_scan_ioapic (Andrew Jones) [1659491] - [kvm] KVM: Fix UAF in nested posted interrupt processing (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Cap SPIs to the VM-defined maximum (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Do not cond_resched_lock() with IRQs disabled (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic-v2: Set active_source to 0 when restoring state (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: Fix VMID alloc race by reverting to lock-less (Andrew Jones) [1659491] - [kvm] KVM: nVMX: Free the VMREAD/VMWRITE bitmaps if alloc_kvm_area() fails (Andrew Jones) [1659491] - [kvm] arm64: KVM: Install stage-2 translation before enabling traps (Andrew Jones) [1659491] - [kvm] arm64: KVM: Make VHE Stage-2 TLB invalidation operations non-interruptible (Andrew Jones) [1659491] - [arm64] arm64: entry: Remove confusing comment (Andrew Jones) [1659491] - [kvm] arm64: entry: Place an SB sequence following an ERET instruction (Andrew Jones) [1659491] - [arm64] arm64: Add support for SB barrier and patch in over DSB; ISB sequences (Andrew Jones) [1659491] - [kvm] kvm: nVMX: Set VM instruction error for VMPTRLD of unbacked page (Andrew Jones) [1659491] - [kvm] kvm: svm: Ensure an IBPB on all affected CPUs when freeing a vmcb (Andrew Jones) [1659491] - [kvm] kvm: mmu: Fix race in emulated page table writes (Andrew Jones) [1659491] - [kvm] KVM: nVMX/nSVM: Fix bug which sets vcpu->arch.tsc_offset to L1 tsc_offset (Andrew Jones) [1659491] - [kvm] KVM: VMX: Update shared MSRs to be saved/restored on MSR_EFER.LMA changes (Andrew Jones) [1659491] - [kvm] KVM: x86: Fix kernel info-leak in KVM_HC_CLOCK_PAIRING hypercall (Andrew Jones) [1659491] - [kvm] svm: Add mutex_lock to protect apic_access_page_done on AMD systems (Andrew Jones) [1659491] - [kvm] KVM/nVMX: Do not validate that posted_intr_desc_addr is page aligned (Andrew Jones) [1659491] - [kvm] KVM: arm64: Safety check PSTATE when entering guest and handle IL (Andrew Jones) [1659491] - [virt] KVM: arm64: Fix caching of host MDCR_EL2 value (Andrew Jones) [1659491] - [kvm] x86/kvm/nVMX: allow bare VMXON state migration (Andrew Jones) [1659491] - [kvm] x86/kvm/lapic: preserve gfn_to_hva_cache len on cache reinit (Andrew Jones) [1659491] - [kvm] KVM: hyperv: define VP assist page helpers (Andrew Jones) [1659491] - [kvm] KVM: nVMX: move check_vmentry_postreqs() call to nested_vmx_enter_non_root_mode() (Andrew Jones) [1659491] - [kvm] KVM: nVMX: Always reflect #NM VM-exits to L1 (Andrew Jones) [1659491] - [kvm] KVM: x86: hyperv: consistently use 'hv_vcpu' for 'struct kvm_vcpu_hv' variables (Andrew Jones) [1659491] - [kvm] KVM: x86: hyperv: enforce vp_index < KVM_MAX_VCPUS (Andrew Jones) [1659491] - [kvm] KVM: nVMX: restore host state in nested_vmx_vmexit for VMFail (Andrew Jones) [1659491] - [kvm] KVM: nVMX: Clear reserved bits of #DB exit qualification (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: Ensure only THP is candidate for adjustment (Andrew Jones) [1659491] - [kvm] x86: kvm: avoid unused variable warning (Andrew Jones) [1659491] - [kvm] powerpc64/ftrace: Include ftrace.h needed for enable/disable calls (Andrew Jones) [1659491] - [kvm] x86/kvm/vmx: Remove duplicate l1d flush definitions (Andrew Jones) [1659491] - [tools] perf kvm: Fix subcommands on s390 (Andrew Jones) [1659491] - [arm64] arm64: add PSR_AA32_* definitions (Andrew Jones) [1659491] - [pci] PCI: hotplug: Document TODOs (Myron Stowe) [1664454] - [pci] PCI: hotplug: Embed hotplug_slot (Myron Stowe) [1664454] - [pci] PCI: hotplug: Drop hotplug_slot_info (Myron Stowe) [1664454] - [pci] PCI: hotplug: Constify hotplug_slot_ops (Myron Stowe) [1664454] - [pci] PCI: pciehp: Reshuffle controller struct for clarity (Myron Stowe) [1664454] - [pci] PCI: pciehp: Rename controller struct members for clarity (Myron Stowe) [1664454] - [pci] PCI: pciehp: Unify controller and slot structs (Myron Stowe) [1664454] - [pci] PCI: pciehp: Tolerate Presence Detect hardwired to zero (Myron Stowe) [1664454] - [pci] PCI: pciehp: Drop hotplug_slot_ops wrappers (Myron Stowe) [1664454] - [pci] PCI: pciehp: Drop unnecessary includes (Myron Stowe) [1664454] - [pci] PCI: pciehp: Differentiate between surprise and safe removal (Myron Stowe) [1664454] - [pci] PCI: Simplify disconnected marking (Myron Stowe) [1664454] - [tools] perf vendor events arm64: Revise core JSON events for eMAG (Jiri Olsa) [1663353] - [tools] perf vendor events arm64: Enable JSON events for eMAG (Jiri Olsa) [1663353] - [perf] drivers/perf: xgene: Add CPU hotplug support (Jiri Olsa) [1663349] - [scsi] mpt3sas: mark Aero controllers as tech preview (Tomas Henzl) [1663281] - [powerpc] KVM: PPC: Book3S HV: Keep rc bits in shadow pgtable in sync with host (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Introduce kvmhv_update_nest_rmap_rc_list() (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Apply combination of host and l1 pte rc for nested guest (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Align gfn to L1 page size when inserting nest-rmap entry (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Hold kvm->mmu_lock across updating nested pte rc bits (Suraj Jitindar Singh) [1662029] - [tools] perf python: Do not force closing original perf descriptor in evlist.get_pollfd (Jiri Olsa) [1659445] - [mm] mm: thp: relax __GFP_THISNODE for MADV_HUGEPAGE mappings (Andrea Arcangeli) [1613993] - [rpmspec] spec: Add libperf-jvmti.so into perf debuginfo rpm (Jiri Olsa) [1653570] - [scsi] scsi: hisi_sas: Fix spin lock management in slot_index_alloc_quirk_v2_hw() (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Update v3 hw AIP_LIMIT and CFG_AGING_TIME register values (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Use block layer tag instead for IPTT (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: unmask interrupts ent72 and ent74 (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Free slot later in slot_complete_vx_hw() (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Fix the race between IO completion and timeout for SMP/internal IO (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Move evaluation of hisi_hba in hisi_sas_task_prep() (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Feed back linkrate(max/min) when re-attached (Xiaojun Tan) [1642819] - [hwtracing] intel_th: pci: Add Ice Lake PCH support (Jiri Olsa) [1485529]- [kernel] userns: also map extents in the reverse map to kernel IDs (Chris von Recklinghausen) [1652679] {CVE-2018-18955} - [net] ipv6: route: Fix return value of ip6_neigh_lookup() on neigh_create() error (Stefano Brivio) [1662789] - [net] ipv6: frags: Fix bogus skb->sk in reassembled packets (Herbert Xu) [1645839] - [net] redhat: blacklist auto-loadable net modules in modules-extra (Marcelo Leitner) [1642795] - [net] redhat: move sctp modules to kernel-modules-extra (Marcelo Leitner) [1642795] - [net] add reserved fields to neighbour (Paolo Abeni) [1655084] - [net] add reserved fields to rtnl_link_stats* (Paolo Abeni) [1655084] - [net] reserve bits in netdev_features_t for future features (Paolo Abeni) [1655084] - [net] add reserved fields to sk_buff (Paolo Abeni) [1655084] - [net] add reserved fields to ipv6_devconf (Paolo Abeni) [1655084] - [net] add reserved fields to fib_rule (Paolo Abeni) [1655084] - [net] add reserved fields to sock (Paolo Abeni) [1655084] - [net] add reserved fields to genl_family (Paolo Abeni) [1655084] - [net] add reserved fields to proto_ops (Paolo Abeni) [1655084] - [net] add reserved fields to proto (Paolo Abeni) [1655084] - [net] add reserved fields to genl_ops (Paolo Abeni) [1655084] - [net] add reserved fields to dst_ops (Paolo Abeni) [1655084] - [net] add reserved fields to dst_entry (Paolo Abeni) [1655084] - [net] add reserved fields to lwtunnel_state (Paolo Abeni) [1655084] - [net] add reserved fields to packet_type (Paolo Abeni) [1655084] - [net] add reserved fields to napi_struct (Paolo Abeni) [1655084] - [net] add reserved fields to net_device (Paolo Abeni) [1655084] - [net] exclude wireless_dev from KABI protection (Paolo Abeni) [1655084] - [net] add reserved fields to dcbnl_rtnl_ops (Paolo Abeni) [1655084] - [net] add reserved fields to xfrm_* (Paolo Abeni) [1655084] - [net] add reserved fields to switchdev_obj (Paolo Abeni) [1655084] - [net] add reserved fields to switchdev_ops (Paolo Abeni) [1655084] - [net] add reserved fields to l3mdev_ops (Paolo Abeni) [1655084] - [net] exclude ndisc_ops from kABI protection (Paolo Abeni) [1655084] - [net] add reserved fields to xfrmdev_ops (Paolo Abeni) [1655084] - [net] add reserved fields to tlsdev_ops (Paolo Abeni) [1655084] - [net] add reserved fields to netdev_rx_queue (Paolo Abeni) [1655084] - [net] add reserved fields to netdev_queue (Paolo Abeni) [1655084] - [net] add reserved fields to rtnl_link_ops (Paolo Abeni) [1655084] - [net] add reserved fields to ethtool_ops (Paolo Abeni) [1655084] - [net] add reserved fields to header_ops (Paolo Abeni) [1655084] - [net] add reserved fields to net_device_ops (Paolo Abeni) [1655084] - [net] add reserved fields to flowi* structs (Paolo Abeni) [1655084] - [arm64] KVM: arm64: Clarify explanation of STAGE2_PGTABLE_LEVELS (Christoph von Recklinghausen) [1643586 1643522] - [arm64] KVM: arm/arm64: Rename kvm_arm_config_vm to kvm_arm_setup_stage2 (Christoph von Recklinghausen) [1643586 1643522] - [virt] KVM: arm64: Drop __cpu_init_stage2 on the VHE path (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Allow tuning the physical address size for VM (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Limit the minimum number of page table levels (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm64: Set a limit on the IPA size (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Add 52bit support for PAR to HPFAR conversoin (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Switch to per VM IPA limit (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Configure VTCR_EL2.SL0 per VM (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Dynamic configuration of VTTBR mask (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Make stage2 page table layout dynamic (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Prepare for dynamic stage2 page table layout (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm/arm64: Prepare for VM specific stage2 translations (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Configure VTCR_EL2 per VM (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm/arm64: Allow arch specific configurations for VM (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Clean up VTCR_EL2 initialisation (Christoph von Recklinghausen) [1643586 1643522] - [arm64] arm64: Add a helper for PARange to physical shift conversion (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Add helper for loading the stage2 setting for a VM (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm/arm64: Remove spurious WARN_ON (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm/arm64: Fix stage2_flush_memslot for 4 level page table (Christoph von Recklinghausen) [1643586 1643522] - [hv] hv_balloon: avoid touching uninitialized struct page during tail onlining (Vitaly Kuznetsov) [1662277] - [x86] Mark AMD EPYC guests as supported (David Arcari) [1663356] - [netdrv] be2net: Disable queue dump in be_tx_timeout handler (Petr Oros) [1646838] - [vhost] vhost: Fix Spectre V1 vulnerability (Jason Wang) [1663469] - [mm] mm/hugetlb.c: teach follow_hugetlb_page() to handle FOLL_NOWAIT (Andrea Arcangeli) [1575028] - [tools] cpupower: Fix AMD Family 0x17 msr_pstate size (Prarit Bhargava) [1659883] - [tools] cpupower: Fix coredump on VMWare (Prarit Bhargava) [1659883] - [scsi] scsi: csiostor: remove flush_scheduled_work() (Arjun Vynipadath) [1663973] - [powerpc] KVM: PPC: Book3S HV: Fix race between kvm_unmap_hva_range and MMU mode switch (David Gibson) [1663225] - [fs] userfaultfd: check VM_MAYWRITE was set after verifying the uffd is registered (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem: UFFDIO_COPY: set the page dirty if VM_WRITE is not set (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem: add i_size checks (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem/hugetlbfs: only allow to register VM_MAYWRITE vmas (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem: allocate anonymous memory for MAP_PRIVATE shmem (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: use ENOENT instead of EFAULT if the atomic copy user fails (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: allow get_mempolicy(MPOL_F_NODE|MPOL_F_ADDR) to trigger userfaults (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] userfaultfd: clear flag if remap event not enabled (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] userfaultfd: disable irqs when taking the waitqueue lock (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] fs/userfaultfd.c: remove redundant pointer uwq (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] NFS: nfs_compare_mount_options always compare auth flavors. (Steve Dickson) [1661619] - [infiniband] RDMA/hns: Bugfix for RoCE loopback test (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Update posting & querying mailbox (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Fix the bug while use multi-hop of pbl (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Init qp context when modify qp from reset to init (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Bugfix pbl configuration for rereg mr (Xiaojun Tan) [1663359] - [security] selinux: add support for RTM_NEWCHAIN, RTM_DELCHAIN, and RTM_GETCHAIN (Ondrej Mosnacek) [1660564] - [scsi] scsi: megaraid_sas: driver version update (Tomas Henzl) [1656261] - [scsi] scsi: megaraid_sas: Use 63-bit DMA addressing (Tomas Henzl) [1656261] - [x86] x86/kvm: mark as TechPreview when running as a nested hypervisor (Vitaly Kuznetsov) [1519039] - [rpmspec] kernel.spec: Fix kernel-tools files section logic (Prarit Bhargava) [1661247] - [crypto] crypto: ccp - Make function sev_get_firmware() static (Gary Hook) [1632894] - [crypto] crypto: ccp - Allow SEV firmware to be chosen based on Family and Model (Gary Hook) [1632894] - [crypto] crypto: ccp - Fix static checker warning (Gary Hook) [1632894] - [crypto] crypto: ccp - add timeout support in the SEV command (Gary Hook) [1632894] - [nvdimm] nvdimm: Use namespace index data to reduce number of label reads needed (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Split label init out from the logic for getting config data (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Remove empty if statement (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Clarify comment in sizeof_namespace_index (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Sanity check labeloff (Jeff Moyer) [1634345] - [nvdimm] libnvdimm, dimm: Maximize label transfer size (Jeff Moyer) [1634345] - [mm] mm/page-writeback.c: fix range_cyclic writeback vs writepages deadlock (Brian Foster) [1659528] - [input] Input: elantech - disable elan-i2c for P52 and P72 (Benjamin Tissoires) [1658602] - [fs] cachefiles: avoid deprecated get_seconds() (David Howells) [1655613] - [fs] fscache, cachefiles: remove redundant variable 'cache' (David Howells) [1655613] - [fs] cachefiles: Explicitly cast enumerated type in put_object (David Howells) [1655613] - [fs] fscache: fix race between enablement and dropping of object (David Howells) [1655613] - [fs] cachefiles: Fix page leak in cachefiles_read_backing_file while vmscan is active (David Howells) [1655613] - [fs] fscache: Fix race in fscache_op_complete() due to split atomic_sub & read (David Howells) [1655613] - [fs] cachefiles: Fix an assertion failure when trying to update a failed object (David Howells) [1655613] - [fs] fscache: Fix out of bound read in long cookie keys (David Howells) [1655613] - [fs] fscache: Fix incomplete initialisation of inline key space (David Howells) [1655613] - [fs] cachefiles: fix the race between cachefiles_bury_object() and rmdir(2) (David Howells) [1655613] - [kernel] ebpf: record usage of eBPF (Jiri Benc) [1654279] - [kernel] add rh_features to /proc (Jiri Benc) [1654279] - [kernel] add support for rh_features (Jiri Benc) [1654279] - [fs] fs/lock: show locks taken by processes from another pidns (Miklos Szeredi) [1616125] - [iommu] iommu/arm-smmu: Support non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/io-pgtable-arm-v7s: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/io-pgtable-arm: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu: Add "iommu.strict" command line option (Xiaojun Tan) [1643114] - [iommu] iommu/dma: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu: Ensure that page-table updates are visible before TLBI (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Implement flush_iotlb_all hook (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Avoid back-to-back CMD_SYNC operations (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Fix unexpected CMD_SYNC timeout (Xiaojun Tan) [1643114] - [iommu] iommu/io-pgtable-arm: Fix race handling in split_blk_unmap() (Xiaojun Tan) [1643114] - [infiniband] RDMA/hns: Update some attributes of the RoCE device (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Limit the size of extend sge of sq (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Bugfix for CM test (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Submit bad wr when post send wr exception (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Bugfix for reserved qp number (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Refactor the codes for setting transport opode (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Move all prints out of irq handle (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Fix an error code in hns_roce_v2_init_eq_table() (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Fix usage of bitmap allocation functions return values (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Support flush cqe for hip08 in kernel space (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Program the tclass and flow label into the hardware (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Use macro instead of magic number (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Modify qp will return errno when qp type is illegal (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Assign the value for vlan field of qp context (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Only assgin the fields of the av if IB_QP_AV bit is set (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Enable modify_cq for uverbs. (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Update the data type of immediate data (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Use delay instead of usleep (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add illegal hop_num judgement (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add 50GE type of hnae3 device match (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Do not overwrite the error code during error unwind in hns_roce_init (Xiaojun Tan) [1639578] - [infiniband] hns: Remove a set-but-not-used variable (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Update the implementation of set_mac (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Update the implementation of set_gid (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add TPQ link table support (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add TSQ link table support (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Fix endian conversions and annotations (Xiaojun Tan) [1639578] - [scsi] scsi: hisi_sas: Add SATA FIS check for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: add memory barrier in task delivery function (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Tidy hisi_sas_task_prep() (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Implement handlers of PCIe FLR for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: relocate some common code for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: tidy host controller reset function a bit (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Fix the failure of recovering PHY from STP link timeout (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: tidy channel interrupt handler for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Drop hisi_sas_slot_abort() (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Update a couple of register settings for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Add missing PHY spinlock init (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Pre-allocate slot DMA buffers (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Release all remaining resources in clear nexus ha (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Add a flag to filter PHY events during reset (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Adjust task reject period during host reset (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Fix the conflict between dev gone and host reset (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Only process broadcast change in phy_bcast_v3_hw() (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Use dmam_alloc_coherent() (Zhou Wang) [1639541] - [netdrv] xen/netfront: fix waiting for xenbus state change (Petr Oros) [1638456]- [x86] expand cpu feature/bug bits (David Arcari) [1662434] - [x86] add kabi support for cpuinfo_x86 (David Arcari) [1662434] - [init] Display a message about certified hardware (Steve Best) [1660523] - [scsi] scsi: t10-pi: Return correct ref tag when queue has no integrity profile (Ming Lei) [1660719] - [scsi] scsi: storvsc: Fix a race in sub-channel creation that can cause panic (Mohammed Gamal) [1650149] - [uio] uio_hv_generic: set callbacks on open (Mohammed Gamal) [1650149] - [hv] vmbus: fix subchannel removal (Mohammed Gamal) [1650149] - [uio] uio_hv_generic: defer opening vmbus until first use (Mohammed Gamal) [1650149] - [hv] vmbus: split ring buffer allocation from open (Mohammed Gamal) [1650149] - [hv] vmbus: pass channel to hv_process_channel_removal (Mohammed Gamal) [1650149] - [hv] Drivers: hv: vmbus: Reset the channel callback in vmbus_onoffer_rescind() (Mohammed Gamal) [1650149] - [uio] hv_uio_generic: map ringbuffer phys addr (Mohammed Gamal) [1650149] - [uio] uio: introduce UIO_MEM_IOVA (Mohammed Gamal) [1650149] - [hv] vmbus: add driver_override support (Mohammed Gamal) [1650149] - [hv] vmbus: keep pointer to ring buffer page (Mohammed Gamal) [1650149] - [uio] uio_hv_generic: increase size of receive and send buffers (Mohammed Gamal) [1650149] - [uio] uio: add SPDX license tags (Mohammed Gamal) [1650149] - [fs] gfs2: take jdata unstuff into account in do_grow (Robert S Peterson) [1660519] - [drm] drm/dp_mst: Check if primary mstb is null (Lyude Paul) [1658711] - [tools] perf tests: Use shebangs in the shell scripts (Michael Petlan) [1613523]- [mm] mm: put_and_wait_on_page_locked() while page is migrated (Baoquan He) [1649214] - [netdrv] i40e: define proper net_device::neigh_priv_len (Stefan Assmann) [1658743] - [netdrv] i40e: fix VLAN.TCI == 0 RX HW offload (Stefan Assmann) [1658743] - [netdrv] i40e: fix mac filter delete when setting mac address (Stefan Assmann) [1658743] - [netdrv] i40e: prevent overlapping tx_timeout recover (Stefan Assmann) [1658743] - [netdrv] i40e: Use correct shift for VLAN priority (Stefan Assmann) [1658743] - [netdrv] i40e: always set ks->base.speed in i40e_get_settings_link_up (Stefan Assmann) [1658743] - [netdrv] i40e: don't restart nway if autoneg not supported (Stefan Assmann) [1658743] - [netdrv] i40e: enable NETIF_F_NTUPLE and NETIF_F_HW_TC at driver load (Stefan Assmann) [1658743] - [netdrv] i40e: restore NETIF_F_GSO_IPXIP[46] to netdev features (Stefan Assmann) [1658743] - [acpi] ACPI/APEI: Clear GHES block_status before panic() (David Arcari) [1662442] - [misc] VMCI: Resource wildcard match fixed (Vitaly Kuznetsov) [1652868] - [mm] mm/page_alloc.c: don't call kasan_free_pages() at deferred mem init (Waiman Long) [1655964] - [block] block/bio: Do not zero user pages (Ming Lei) [1662502] - [vhost] disable zerocopy by default (Jason Wang) [1582756] - [block] kyber: use sbitmap add_wait_queue/list_del wait helpers (Ming Lei) [1661426] - [lib] sbitmap: add helpers for add/del wait queue handling (Ming Lei) [1661426] - [net] Revert "sunrpc: Ensure we always close the socket after a connection shuts down" (Dave Wysochanski) [1657449] - [vhost] vhost/vsock: fix reset orphans race with close timeout (Stefan Hajnoczi) [1660445] - [misc] genwqe: Fix size check (Steve Best) [1660126] - [fs] aio: fix spectre gadget in lookup_ioctx (Jeff Moyer) [1660963] - [block] block: save irq state in blkg_lookup_create() (Ming Lei) [1660299] - [md] dm: don't reuse bio for flushes (Ming Lei) [1660401] - [wireless] mac80211_hwsim: Fix possible Spectre-v1 for hwsim_world_regdom_custom (Stanislaw Gruszka) [1637113] - [wireless] nl80211: Fix possible Spectre-v1 for NL80211_TXRATE_HT (Stanislaw Gruszka) [1637113] - [wireless] nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds (Stanislaw Gruszka) [1637113] - [block] blk-mq: enable IO poll if .nr_queues of type poll > 0 (Ming Lei) [1660826] - [powerpc] powerpc/rtas: Fix a potential race between CPU-Offline & Migration (Desnes Augusto Nunes do Rosario) [1639266] - [x86] kvm: x86: Add AMD's EX_CFG to the list of ignored MSRs (Eduardo Habkost) [1625111] - [scsi] scsi_sysfs: make unpriv_sgio queue attribute accessible for non-block devices (Paolo Bonzini) [1584504] - [block] scsi_ioctl: introduce unpriv_sgio queue flag (Paolo Bonzini) [1584504] - [block] scsi_ioctl: pass request_queue to blk_verify_command (Paolo Bonzini) [1584504] - [fs] ext4: missing !bh check in ext4_xattr_inode_write() (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in __ext4_read_dirblock() on error path (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in ext4_expand_extra_isize_ea() on error path (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in ext4_xattr_move_to_block() on error path (Lukas Czerner) [1659481] - [fs] ext4: release bs.bh before re-using in ext4_xattr_block_find() (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in ext4_xattr_get_block() on error path (Lukas Czerner) [1659481] - [fs] ext4: fix possible leak of s_journal_flag_rwsem in error path (Lukas Czerner) [1659481] - [fs] ext4: fix possible leak of sbi->s_group_desc_leak in error path (Lukas Czerner) [1659481] - [fs] ext4: avoid possible double brelse() in add_new_gdb() on error path (Lukas Czerner) [1659481] - [fs] ext4: avoid buffer leak in ext4_orphan_add() after prior errors (Lukas Czerner) [1659481] - [fs] ext4: avoid buffer leak on shutdown in ext4_mark_iloc_dirty() (Lukas Czerner) [1659481] - [fs] ext4: fix possible inode leak in the retry loop of ext4_resize_fs() (Lukas Czerner) [1659481] - [fs] ext4: fix missing cleanup if ext4_alloc_flex_bg_array() fails while resizing (Lukas Czerner) [1659481] - [fs] ext4: add missing brelse() update_backups()'s error path (Lukas Czerner) [1659481] - [fs] ext4: add missing brelse() add_new_gdb_meta_bg()'s error path (Lukas Czerner) [1659481] - [fs] ext4: add missing brelse() in set_flexbg_block_bitmap()'s error path (Lukas Czerner) [1659481] - [fs] ext4: avoid potential extra brelse in setup_new_flex_group_blocks() (Lukas Czerner) [1659481] - [scsi] scsi: lpfc: Enable Management features for IF_TYPE=6 (Dick Kennedy) [1658755] - [scsi] scsi: mpt3sas: Update driver version to 27.101.00.00 (Tomas Henzl) [1659035] - [scsi] scsi: mpt3sas: Replace readl with ioc->base_readl (Tomas Henzl) [1659035] - [scsi] scsi: mpt3sas: Add separate function for aero doorbell reads (Tomas Henzl) [1659035] - [scsi] scsi: mpt3sas: Introduce flag for aero based controllers (Tomas Henzl) [1659035] - [md] dm: do not allow readahead to limit IO size (Mike Snitzer) [1658757] - [md] dm raid: fix false -EBUSY when handling check/repair message (Mike Snitzer) [1658757] - [block] blk-mq: change blk_mq_queue_busy() to blk_mq_queue_inflight() (Mike Snitzer) [1658757] - [md] dm rq: cleanup leftover code from recently removed q->mq_ops branching (Mike Snitzer) [1658757] - [md] dm verity: log the hash algorithm implementation (Mike Snitzer) [1658757] - [md] dm crypt: log the encryption algorithm implementation (Mike Snitzer) [1658757] - [md] dm integrity: fix spelling mistake in workqueue name (Mike Snitzer) [1658757] - [md] dm flakey: Properly corrupt multi-page bios. (Mike Snitzer) [1658757] - [md] dm: Check for device sector overflow if CONFIG_LBDAF is not set (Mike Snitzer) [1658757] - [md] dm crypt: use u64 instead of sector_t to store iv_offset (Mike Snitzer) [1658757] - [md] dm kcopyd: Fix bug causing workqueue stalls (Mike Snitzer) [1658757] - [md] dm snapshot: Fix excessive memory usage and workqueue stalls (Mike Snitzer) [1658757] - [md] dm bufio: update comment in dm-bufio.c (Mike Snitzer) [1658757] - [md] dm writecache: fix typo in error msg for creating writecache_flush_thread (Mike Snitzer) [1658757] - [md] dm: remove indirect calls from __send_changing_extent_only() (Mike Snitzer) [1658757] - [md] dm mpath: only flush workqueue when needed (Mike Snitzer) [1658757] - [md] dm: avoid indirect call in __dm_make_request (Mike Snitzer) [1658757] - [md] dm thin: bump target version (Mike Snitzer) [1658757] - [md] dm thin: send event about thin-pool state change _after_ making it (Mike Snitzer) [1658757] - [md] dm cache metadata: verify cache has blocks in blocks_are_clean_separate_dirty() (Mike Snitzer) [1658757] - [md] dm writecache: remove disabled code in memory_entry() (Mike Snitzer) [1658757] - [md] dm raid: avoid bitmap with raid4/5/6 journal device (Mike Snitzer) [1658757] - [md] dm crypt: make workqueue names device-specific (Mike Snitzer) [1658757] - [md] dm: add dm_table_device_name() (Mike Snitzer) [1658757] - [md] dm ioctl: harden copy_params()'s copy_from_user() from malicious users (Mike Snitzer) [1658757] - [md] dm: remove unnecessary unlikely() around WARN_ON_ONCE() (Mike Snitzer) [1658757] - [md] dm thin: use refcount_t for thin_c reference counting (Mike Snitzer) [1658757] - [netdrv] nfp: provide a better warning when ring allocation fails (Pablo Cascon) [1645456] - [netdrv] nfp: use kvcalloc() to allocate SW buffer descriptor arrays (Pablo Cascon) [1645456] - [scsi] scsi: lpfc: rport port swap discovery issue. (Dick Kennedy) [1656635] - [scsi] scsi: lpfc: Fix discovery failures during port failovers with lots of vports (Dick Kennedy) [1656635] - [scsi] scsi: lpfc: refactor mailbox structure context fields (Dick Kennedy) [1656635] - [scsi] scsi: lpfc: Correct loss of fc4 type on remote port address change (Dick Kennedy) [1656635] - [hid] HID: multitouch: Add pointstick support for Cirque Touchpad (Perry Yuan) [1656673] - [powerpc] KVM: PPC: Book3S HV: Fix handling for interrupted H_ENTER_NESTED (Suraj Jitindar Singh) [1649980] - [powerpc] powerpc: Select CONFIG_SWIOTLB (Gustavo Duarte) [1648466] - [fs] nfs: Fix a missed page unlock after pg_doio() (Benjamin Coddington) [1651287] - [arm64] arm64: fix possible spectre-v1 write in ptrace_hbp_set_event() (Mark Salter) [1637585] - [fs] fsnotify: Fix busy inodes during unmount (Lukas Czerner) [1650462] - [tools] perf vendor events arm64: Update ThunderX2 implementation defined pmu core events (Robert Richter) [1501638] - [tools] perf tools: Fix undefined symbol scnprintf in libperf-jvmti.so (Jiri Olsa) [1579484]- [block] blk-mq: export hctx->type in debugfs instead of sysfs (Ming Lei) [1660040] - [block] blk-mq: fix dispatch from sw queue (Ming Lei) [1660040] - [block] blk-mq: skip zero-queue maps in blk_mq_map_swqueue (Ming Lei) [1660040] - [nvme] nvme-pci: don't share queue maps (Ming Lei) [1660040] - [block] blk-mq: only dispatch to non-defauly queue maps if they have queues (Ming Lei) [1660040] - [x86] KVM: LAPIC: Fix pv ipis use-before-initialization (Paul Lai) [1657702] - [fs] autofs: fix directory and symlink access (Ian Kent) [1611967] - [infiniband] IB/iser: Fix possible NULL deref at iser_inv_desc() (Don Dutile) [1657574] - [infiniband] RDMA/core: Fix unwinding flow in case of error to register device (Don Dutile) [1657574] - [infiniband] IB/rxe: fix for duplicate request processing and ack psns (Don Dutile) [1657574] - [infiniband] IB/ipoib: Clear IPCB before icmp_send (Don Dutile) [1657574] - [infiniband] RDMA/core: Do not expose unsupported counters (Don Dutile) [1657574] - [infiniband] IB/ucm: Fix Spectre v1 vulnerability (Don Dutile) [1657574] - [infiniband] RDMA/ucma: Fix Spectre v1 vulnerability (Don Dutile) [1657574] - [infiniband] RDMA/uverbs: Don't overwrite NULL pointer with ZERO_SIZE_PTR (Don Dutile) [1657574] - [infiniband] RDMA/cma: Do not ignore net namespace for unbound cm_id (Don Dutile) [1657574] - [net] xprtrdma: Reset credit grant properly after a disconnect (Don Dutile) [1657574] - [input] Input: hyper-v - fix wakeup from suspend-to-idle (Vitaly Kuznetsov) [1588888] - [kernel] kernel: hung_task.c: disable on suspend (Vitaly Kuznetsov) [1588888] - [kernel] redhat: add a comment with warning about RH_KABI_EXCLUDE usage (Jiri Benc) [1656933] - [rpmspec] Sign the aarch64 kernel (Jeremy Linton) [1659158]- [netdrv] nfp: flower: add geneve option match offload (Pablo Cascon) [1655604] - [netdrv] nfp: flower: add geneve option push action offload (Pablo Cascon) [1655604] - [netdrv] nfp: flower: offload tos and tunnel flags for ipv4 udp tunnels (Pablo Cascon) [1655604] - [netdrv] nfp: flower: set ip tunnel ttl from encap action (Pablo Cascon) [1655604] - [netdrv] nfp: flower: extract ipv4 udp tunnel ttl from route (Pablo Cascon) [1655604] - [net] sctp: hold transport before accessing its asoc in sctp_transport_get_next (Marcelo Leitner) [1656271] - [net] sctp: fix the data size calculation in sctp_data_size (Marcelo Leitner) [1656271] - [net] sctp: fix race on sctp_id2asoc (Marcelo Leitner) [1656271] - [net] rtnetlink: ndo_dflt_fdb_dump() only work for ARPHRD_ETHER devices (Hangbin Liu) [1657120] - [netdrv] mlx5e: fix csum adjustments caused by RXFCS (Hangbin Liu) [1657120] - [net] drop skb on failure in ip_check_defrag() (Hangbin Liu) [1657120] - [net] rtnl_configure_link: fix dev flags changes arg to __dev_notify_flags (Hangbin Liu) [1657120] - [net] socket: fix a missing-check bug (Hangbin Liu) [1657120] - [net] rtnetlink: Disallow FDB configuration for non-Ethernet device (Hangbin Liu) [1657120] - [net] rtnetlink: Fail dump if target netnsid is invalid (Hangbin Liu) [1657120] - [net] rtnetlink: fix rtnl_fdb_dump() for ndmsg header (Hangbin Liu) [1657120] - [net] rtnl: limit IFLA_NUM_TX_QUEUES and IFLA_NUM_RX_QUEUES to 4096 (Hangbin Liu) [1657120] - [net] socket: fix struct ifreq size in compat ioctl (Hangbin Liu) [1657120] - [net] fix pskb_trim_rcsum_slow() with odd trim offset (Hangbin Liu) [1657120] - [net] gso_segment: Reset skb->mac_len after modifying network header (Hangbin Liu) [1657120] - [net] Use __kernel_clockid_t in uapi net_stamp.h (Davide Caratti) [1638022] - [net] tun: Consistently configure generic netdev params via rtnetlink (Matteo Croce) [1657910] - [net] tun: napi flags belong to tfile (Matteo Croce) [1657910] - [net] tun: initialize napi_mutex unconditionally (Matteo Croce) [1657910] - [net] tun: remove unused parameters (Matteo Croce) [1657910] - [net] team: Forbid enslaving team device to itself (Matteo Croce) [1658725] - [net] sched: Remove TCA_OPTIONS from policy (Davide Caratti) [1658516] - [net] sched: cls_api: add missing validation of netlink attributes (Davide Caratti) [1658516] - [net] sched: gred: pass the right attribute to gred_change_table_def() (Davide Caratti) [1658516] - [net] sched: cls_u32: fix hnode refcounting (Davide Caratti) [1658516] - [net] sched: Add policy validation for tc attributes (Davide Caratti) [1658516] - [net] bpf: use __GFP_COMP while allocating page (Andrea Claudi) [1658231] - [net] xsk: do not call synchronize_net() under RCU read lock (Andrea Claudi) [1658231] - [net] bpf: fix partial copy of map_ptr when dst is scalar (Andrea Claudi) [1658231] - [net] bpf: Fix bpf_msg_pull_data() (Andrea Claudi) [1658231] - [net] bpf: fix shift upon scatterlist ring wrap-around in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] bpf: fix sg shift repair start offset in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] bpf: fix msg->data/data_end after sg shift repair in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] bpf: fix several offset tests in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] vlan: add support for tunnel offload (Andrea Claudi) [1656804] - [net] 8021q: move vlan offload registrations into vlan_core (Hangbin Liu) [1657658] - [net] ipv6/ndisc: Preserve IPv6 control buffer if protocol error handlers are called (Stefano Brivio) [1658010] - [net] ipv6: Allow onlink routes to have a device mismatch if it is the default route (Stefano Brivio) [1658010] - [net] ipv6: Fix index counter for unicast addresses in in6_dump_addrs (Stefano Brivio) [1658010] - [net] ipv6: mcast: fix a use-after-free in inet6_mc_check (Stefano Brivio) [1658010] - [net] ipv6: rate-limit probes for neighbourless routes (Stefano Brivio) [1658010] - [net] ipv6: stop leaking percpu memory in fib6 info (Stefano Brivio) [1658010] - [net] ipv6: Remove extra call to ip6_convert_metrics for multipath case (Stefano Brivio) [1658010] - [net] ipv6: Display all addresses in output of /proc/net/if_inet6 (Stefano Brivio) [1658010] - [net] ipv6: do not copy dst flags on rt init (Stefano Brivio) [1658010] - [net] ipv6: Only update MTU metric if it set (Stefano Brivio) [1658010] - [net] ipv6: don't get lwtstate twice in ip6_rt_copy_init() (Stefano Brivio) [1658010] - [net] ipv6: Put lwtstate when destroying fib6_info (Stefano Brivio) [1658010] - [net] ip6_tunnel: Fix encapsulation layout (Stefano Brivio) [1658008] - [net] vxlan: fill ttl inherit info (Stefano Brivio) [1658008] - [net] ip_tunnel: be careful when accessing the inner header (Stefano Brivio) [1658008] - [net] vti6: remove !skb->ignore_df check from vti6_xmit() (Stefano Brivio) [1658008] - [net] ip6_vti: fix a null pointer deference when destroy vti6 tunnel (Stefano Brivio) [1658008] - [net] ip6_vti: fix creating fallback tunnel device for vti6 (Stefano Brivio) [1658008] - [net] ip_vti: fix a null pointer deferrence when create vti fallback tunnel (Stefano Brivio) [1658008] - [net] l2tp: use sk_dst_check() to avoid race on sk->sk_dst_cache (Stefano Brivio) [1658008] - [net] macsec: let the administrator set UP state even if lowerdev is down (Sabrina Dubroca) [1645540] - [net] macsec: update operstate when lower device changes (Sabrina Dubroca) [1645540] - [net] tcp: do not restart timewait timer on rst reception (Paolo Abeni) [1657988] - [net] tcp: really ignore MSG_ZEROCOPY if no SO_ZEROCOPY (Paolo Abeni) [1657988] - [net] tcp, ulp: add alias for all ulp modules (Paolo Abeni) [1657988] - [net] tcp, ulp: fix leftover icsk_ulp_ops preventing sock from reattach (Paolo Abeni) [1657988] - [net] ipv4: tcp: send zero IPID for RST and ACK sent in SYN-RECV and TIME-WAIT state (Paolo Abeni) [1657988] - [net] neighbour: Avoid writing before skb->head in neigh_hh_output() (Stefano Brivio) [1643336] - [net] ipv6: Check available headroom in ip6_xmit() even without options (Stefano Brivio) [1643336] - [net] ipv6: fix possible use-after-free in ip6_xmit() (Stefano Brivio) [1643336] - [net] openvswitch: Fix push/pop ethernet validation (Hangbin Liu) [1657226] - [net] cgroup, netclassid: add a preemption point to write_classid (Hangbin Liu) [1657226] - [net] ethtool: fix a privilege escalation bug (Hangbin Liu) [1657226] - [net] llc: set SOCK_RCU_FREE in llc_sap_add_socket() (Hangbin Liu) [1657226] - [net] dcb: For wild-card lookups, use priority -1, not 0 (Hangbin Liu) [1657226] - [net] packet: fix packet drop as of virtio gso (Hangbin Liu) [1657226] - [net] netlabel: check for IPV4MASK in addrinfo_get (Hangbin Liu) [1657226] - [net] netfilter: seqadj: re-load tcp header pointer after possible head reallocation (Florian Westphal) [1654259] - [net] netfilter: nf_tables: avoid BUG_ON usage (Florian Westphal) [1654259] - [net] netfilter: nf_tables: deactivate expressions in rule replecement routine (Florian Westphal) [1654259] - [net] netfilter: nat: fix double register in masquerade modules (Florian Westphal) [1654259] - [net] netfilter: add missing error handling code for register functions (Florian Westphal) [1654259] - [net] netfilter: nf_tables: fix use-after-free when deleting compat expressions (Florian Westphal) [1654259] - [net] netfilter: xt_RATEEST: remove netns exit routine (Florian Westphal) [1654259] - [net] netfilter: nf_tables: don't use position attribute on rule replacement (Florian Westphal) [1654259] - [net] revert "netfilter: nft_numgen: add map lookups for numgen random operations" (Florian Westphal) [1654259] - [net] netfilter: xt_IDLETIMER: add sysfs filename checking routine (Florian Westphal) [1654259] - [net] netfilter: conntrack: fix calculation of next bucket number in early_drop (Florian Westphal) [1654259] - [net] netfilter: conntrack: get rid of double sizeof (Florian Westphal) [1654259] - [net] netfilter: nft_set_rbtree: add missing rb_erase() in GC routine (Florian Westphal) [1654259] - [net] netfilter: nfnetlink_queue: Solve the NFQUEUE/conntrack clash for NF_REPEAT (Florian Westphal) [1654259] - [net] netfilter: nf_tables: release chain in flushing set (Florian Westphal) [1654259] - [net] netfilter: xt_checksum: ignore gso skbs (Florian Westphal) [1654259] - [net] netfilter: xt_cluster: add dependency on conntrack module (Florian Westphal) [1654259] - [net] netfilter: fix memory leaks on netlink_dump_start error (Florian Westphal) [1654259] - [net] netfilter: x_tables: do not fail xt_alloc_table_info too easilly (Florian Westphal) [1654259] - [net] ipvs: fix race between ip_vs_conn_new() and ip_vs_del_dest() (Florian Westphal) [1654259] - [net] netfilter: ip6t_rpfilter: set F_IFACE for linklocal addresses (Florian Westphal) [1654259] - [net] xfrm: policy: use hlist rcu variants on insert (Sabrina Dubroca) [1657272] - [net] xfrm: validate template mode (Sabrina Dubroca) [1657272] - [net] xfrm: Fix NULL pointer dereference when skb_dst_force clears the dst_entry. (Sabrina Dubroca) [1657272] - [net] xfrm: reset transport header back to network header after all input transforms ahave been applied (Sabrina Dubroca) [1657272] - [net] xfrm: reset crypto_done when iterating over multiple input xfrms (Sabrina Dubroca) [1657272] - [net] xfrm: Validate address prefix lengths in the xfrm selector. (Sabrina Dubroca) [1657272] - [net] tls: fix currently broken MSG_PEEK behavior (Sabrina Dubroca) [1657225] - [net] tls: zero the crypto information from tls_context before freeing (Sabrina Dubroca) [1657225] - [net] tls: clear key material from kernel memory when do_tls_setsockopt_conf fails (Sabrina Dubroca) [1657225] - [net] tls: don't copy the key out of tls12_crypto_info_aes_gcm_128 (Sabrina Dubroca) [1657225] - [net] tls: Set count of SG entries if sk_alloc_sg returns -ENOSPC (Sabrina Dubroca) [1657225] - [net] tls: possible hang when do_tcp_sendpages hits sndbuf is full case (Sabrina Dubroca) [1657225] - [net] tls: Fix improper revert in zerocopy_from_iter (Sabrina Dubroca) [1657225] - [net] tls: Fix zerocopy_from_iter iov handling (Sabrina Dubroca) [1657225] - [net] netfilter: conntrack: reset tcp maxwin on re-register (Florian Westphal) [1647310] - [net] configs: Enable CONFIG_IP_SET_HASH_IPMAC as a module (Stefano Brivio) [1655301] - [net] udp: fix handling of CHECKSUM_COMPLETE packets (Paolo Abeni) [1655656] - [net] udp: Unbreak modules that rely on external __skb_recv_udp() availability (Paolo Abeni) [1655656] - [net] udp6: fix encap return code for resubmitting (Paolo Abeni) [1655656] - [net] team: no need to do team_notify_peers or team_mcast_rejoin when disabling port (Hangbin Liu) [1653197] - [net] sctp: not increase stream's incnt before sending addstrm_in request (Xin Long) [1651428] - [net] sctp: not allow to set asoc prsctp_enable by sockopt (Xin Long) [1647272] - [net] revert "sctp: remove sctp_transport_pmtu_check" (Xin Long) [1643330] - [net] fix XPS static_key accounting (Ivan Vecera) [1651781] - [net] restore call to netdev_queue_numa_node_write when resetting XPS (Ivan Vecera) [1651781] - [net] allow fallback function to pass netdev (Ivan Vecera) [1651781] - [net] allow ndo_select_queue to pass netdev (Ivan Vecera) [1651781] - [net] Add generic ndo_select_queue functions (Ivan Vecera) [1651781] - [net] Add support for subordinate traffic classes to netdev_pick_tx (Ivan Vecera) [1651781] - [net] ixgbe: Add code to populate and use macvlan TC to Tx queue map (Ivan Vecera) [1651781] - [net] Add support for subordinate device traffic classes (Ivan Vecera) [1651781] - [net] net-sysfs: Drop support for XPS and traffic_class on single queue device (Ivan Vecera) [1651781] - [net] Provide stub for __netif_set_xps_queue if there is no CONFIG_XPS (Ivan Vecera) [1651781] - [net] allow to call netif_reset_xps_queues() under cpus_read_lock (Ivan Vecera) [1651781] - [net] documentation: Add explanation for XPS using Rx-queue(s) map (Ivan Vecera) [1651781] - [net] net-sysfs: Add interface for Rx queue(s) map per Tx queue (Ivan Vecera) [1651781] - [net] Enable Tx queue selection based on Rx queues (Ivan Vecera) [1651781] - [net] Record receive queue number for a connection (Ivan Vecera) [1651781] - [net] sock: Change tx_queue_mapping in sock_common to unsigned short (Ivan Vecera) [1651781] - [net] Use static_key for XPS maps (Ivan Vecera) [1651781] - [net] Refactor XPS for CPUs and Rx queues (Ivan Vecera) [1651781] - [net] devlink: Add helper function for safely copy string param (Ivan Vecera) [1647914] - [net] devlink: Fix param cmode driverinit for string type (Ivan Vecera) [1647914] - [net] devlink: Fix param set handling for string type (Ivan Vecera) [1647914] - [net] devlink: Add Documentation/networking/devlink-params-bnxt.txt (Ivan Vecera) [1647914] - [net] devlink: Add Documentation/networking/devlink-params.txt (Ivan Vecera) [1647914] - [net] devlink: Add generic parameter msix_vec_per_pf_min (Ivan Vecera) [1647914] - [net] devlink: Add generic parameter msix_vec_per_pf_max (Ivan Vecera) [1647914] - [net] devlink: Add generic parameter ignore_ari (Ivan Vecera) [1647914] - [net] devlink: double free in devlink_resource_fill() (Ivan Vecera) [1647914] - [net] devlink: Add extack for eswitch operations (Ivan Vecera) [1647914] - [net] devlink: Add generic parameters region_snapshot (Ivan Vecera) [1647914] - [net] devlink: Add support for region snapshot read command (Ivan Vecera) [1647914] - [net] devlink: Add support for region snapshot delete command (Ivan Vecera) [1647914] - [net] devlink: Extend the support querying for region snapshot IDs (Ivan Vecera) [1647914] - [net] devlink: Add support for region get command (Ivan Vecera) [1647914] - [net] devlink: Add support for creating region snapshots (Ivan Vecera) [1647914] - [net] devlink: Add callback to query for snapshot id before snapshot create (Ivan Vecera) [1647914] - [net] devlink: Add support for creating and destroying regions (Ivan Vecera) [1647914] - [net] devlink: fix incorrect return statement (Ivan Vecera) [1647914] - [net] devlink: Add enable_sriov boolean generic parameter (Ivan Vecera) [1647914] - [net] devlink: Add generic parameters internal_err_reset and max_macs (Ivan Vecera) [1647914] - [net] devlink: Add devlink notifications support for params (Ivan Vecera) [1647914] - [net] devlink: Add support for get/set driverinit value (Ivan Vecera) [1647914] - [net] devlink: Add param set command (Ivan Vecera) [1647914] - [net] devlink: Add param get command (Ivan Vecera) [1647914] - [net] devlink: Add devlink_param register and unregister (Ivan Vecera) [1647914] - [net] ipvs: call ip_vs_dst_notifier earlier than ipv6_dev_notf (Xin Long) [1645064] - [net] ipv6: fix a dst leak when removing its exception (Xin Long) [1645064] - [net] netfilter: ipset: list:set: Decrease refcount synchronously on deletion and replace (Stefano Brivio) [1649089] - [net] bridge: remove ipv6 zero address check in mcast queries (Hangbin Liu) [1639666] - [net] bridge: do not add port to router list when receives query with source 0.0.0.0 (Hangbin Liu) [1639666] - [net] netfilter: ipv6: fix oops when defragmenting locally generated fragments (Florian Westphal) [1642341] - [net] xfrm6: call kfree_skb when skb is toobig (Sabrina Dubroca) [1628851] - [net] sched: act_police: fix memory leak in case of invalid control action (Ivan Vecera) [1638022] - [net] sched: act_police: add missing spinlock initialization (Ivan Vecera) [1638022] - [net] netfilter: xt_socket: check sk before checking for netns. (Ivan Vecera) [1638022] - [net] sched: act_police: fix race condition on state variables (Ivan Vecera) [1638022] - [net] sched: cls_flower: validate nested enc_opts_policy to avoid warning (Ivan Vecera) [1638022] - [net] sched: act_pedit: fix memory leak when IDR allocation fails (Ivan Vecera) [1638022] - [net] configs: disable CAKE, ETF & SKBPRIO qdisc in config (Ivan Vecera) [1638022] - [net] tc-tests: test denial of 'goto chain' for exceed traffic in police.json (Ivan Vecera) [1638022] - [net] tc-tests: test denial of 'goto chain' on 'random' traffic in gact.json (Ivan Vecera) [1638022] - [net] sched: act_police: disallow 'goto chain' on fallback control action (Ivan Vecera) [1638022] - [net] sched: act_gact: disallow 'goto chain' on fallback control action (Ivan Vecera) [1638022] - [net] net_sched: fix a crash in tc_new_tfilter() (Ivan Vecera) [1638022] - [net] core: make function ___gnet_stats_copy_basic() static (Ivan Vecera) [1638022] - [net] net_sched: convert idrinfo->lock from spinlock to a mutex (Ivan Vecera) [1638022] - [net] loopback: clear skb->tstamp before netif_rx() (Ivan Vecera) [1638022] - [net] skbuff: preserve sock reference when scrubbing the skb. (Ivan Vecera) [1638022] - [net] netfilter: check if the socket netns is correct. (Ivan Vecera) [1638022] - [net] sched: make function qdisc_free_cb() static (Ivan Vecera) [1638022] - [net] sched: use reference counting for tcf blocks on rules update (Ivan Vecera) [1638022] - [net] sched: implement tcf_block_refcnt_{get|put}() (Ivan Vecera) [1638022] - [net] sched: protect block idr with spinlock (Ivan Vecera) [1638022] - [net] sched: implement functions to put and flush all chains (Ivan Vecera) [1638022] - [net] sched: change tcf block reference counter type to refcount_t (Ivan Vecera) [1638022] - [net] sched: use Qdisc rcu API instead of relying on rtnl lock (Ivan Vecera) [1638022] - [net] sched: add helper function to take reference to Qdisc (Ivan Vecera) [1638022] - [net] sched: extend Qdisc with rcu (Ivan Vecera) [1638022] - [net] sched: rename qdisc_destroy() to qdisc_put() (Ivan Vecera) [1638022] - [net] core: netlink: add helper refcount dec and lock function (Ivan Vecera) [1638022] - [net] sched: act_ipt: check for underflow in __tcf_ipt_init() (Ivan Vecera) [1638022] - [net] sched: Add hardware specific counters to TC actions (Ivan Vecera) [1638022] - [net] core: Add new basic hardware counter (Ivan Vecera) [1638022] - [net] net_sched: change tcf_del_walker() to take idrinfo->lock (Ivan Vecera) [1638022] - [net] sched: Use FIELD_SIZEOF directly instead of reimplementing its function (Ivan Vecera) [1638022] - [net] sched: act_sample: fix NULL dereference in the data path (Ivan Vecera) [1638022] - [net] sched: act_police: don't use spinlock in the data path (Ivan Vecera) [1638022] - [net] sched: act_police: use per-cpu counters (Ivan Vecera) [1638022] - [net] net_sched: notify filter deletion when deleting a chain (Ivan Vecera) [1638022] - [net] htb: use anonymous union for simplicity (Ivan Vecera) [1638022] - [net] net_sched: remove redundant qdisc lock classes (Ivan Vecera) [1638022] - [net] sched: cls_flower: dump offload count value (Ivan Vecera) [1638022] - [net] net_sched: properly cancel netlink dump on failure (Ivan Vecera) [1638022] - [net] sched: fix memory leak in act_tunnel_key_init() (Ivan Vecera) [1638022] - [net] sched: action_ife: take reference to meta module (Ivan Vecera) [1638022] - [net] act_ife: fix a potential use-after-free (Ivan Vecera) [1638022] - [net] sched: act_nat: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_skbedit: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: null actions array pointer before releasing action (Ivan Vecera) [1638022] - [net] sched: fix type of htb statistics (Ivan Vecera) [1638022] - [net] net_sched: add missing tcf_lock for act_connmark (Ivan Vecera) [1638022] - [net] revert "net: sched: act: add extack for lookup callback" (Ivan Vecera) [1638022] - [net] tc-testing: add test-cases for numeric and invalid control action (Ivan Vecera) [1638022] - [net] net_sched: reject unknown tcfa_action values (Ivan Vecera) [1638022] - [net] sched: act_pedit: fix dump of extended layered op (Ivan Vecera) [1638022] - [net] sched: return -ENOENT when trying to remove filter from non-existent chain (Ivan Vecera) [1638022] - [net] sched: fix extack error message when chain is failed to be created (Ivan Vecera) [1638022] - [net] sched: Fix memory exposure from short TCA_U32_SEL (Ivan Vecera) [1638022] - [net] net_sched: fix unused variable warning in stmmac (Ivan Vecera) [1638022] - [net] sch_cake: Fix TC filter flow override and expand it to hosts as well (Ivan Vecera) [1638022] - [net] sch_cake: Remove unused including (Ivan Vecera) [1638022] - [net] act_ife: fix a potential deadlock (Ivan Vecera) [1638022] - [net] act_ife: move tcfa_lock down to where necessary (Ivan Vecera) [1638022] - [net] revert "net: sched: act_ife: disable bh when taking ife_mod_lock" (Ivan Vecera) [1638022] - [net] net_sched: remove unused tcfa_capab (Ivan Vecera) [1638022] - [net] net_sched: remove list_head from tc_action (Ivan Vecera) [1638022] - [net] net_sched: remove unused tcf_idr_check() (Ivan Vecera) [1638022] - [net] net_sched: remove unused parameter for tcf_action_delete() (Ivan Vecera) [1638022] - [net] net_sched: remove unnecessary ops->delete() (Ivan Vecera) [1638022] - [net] net_sched: improve and refactor tcf_action_put_many() (Ivan Vecera) [1638022] - [net] sched: always disable bh when taking tcf_lock (Ivan Vecera) [1638022] - [net] sched: act_ife: always release ife action on init error (Ivan Vecera) [1638022] - [net] cls_matchall: fix tcf_unbind_filter missing (Ivan Vecera) [1638022] - [net] sched: act_ife: disable bh when taking ife_mod_lock (Ivan Vecera) [1638022] - [net] sched: act_mirred method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_vlan method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_skbmod method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_skbedit method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_simple method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_police method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_pedit method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_nat method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_ipt method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_gact method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_sum method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_bpf method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_connmark method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_police: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] core: protect rate estimator statistics pointer with lock (Ivan Vecera) [1638022] - [net] sched: act_mirred: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: extend action ops with put_dev callback (Ivan Vecera) [1638022] - [net] sched: act_vlan: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_tunnel_key: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_skbmod: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_simple: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_sample: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_pedit: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_ipt: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_ife: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_gact: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_csum: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_bpf: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] tc: Update README and add config (Ivan Vecera) [1638022] - [net] sched: fix block->refcnt decrement (Ivan Vecera) [1638022] - [net] tc-tests: initial version of nat action unit tests (Ivan Vecera) [1638022] - [net] sched: allow flower to match tunnel options (Ivan Vecera) [1638022] - [net] flow_dissector: allow dissection of tunnel options from metadata (Ivan Vecera) [1638022] - [net] tc-testing: remove duplicate spaces in skbedit match patterns (Ivan Vecera) [1638022] - [net] tc-testing: remove duplicate spaces in connmark match patterns (Ivan Vecera) [1638022] - [net] tc-testing: flush gact actions on test teardown (Ivan Vecera) [1638022] - [net] tc-testing: fix ip address in u32 test (Ivan Vecera) [1638022] - [net] sched: cls_flower: Fix an error code in fl_tmplt_create() (Ivan Vecera) [1638022] - [net] sched: fix flush on non-existing chain (Ivan Vecera) [1638022] - [net] sched: make tcf_chain_{get, put}() static (Ivan Vecera) [1638022] - [net] sched: fix notifications for action-held chains (Ivan Vecera) [1638022] - [net] sched: change name of zombie chain to "held_by_acts_only" (Ivan Vecera) [1638022] - [net] act_mirred: use TC_ACT_REINSERT when possible (Ivan Vecera) [1638022] - [net] tc: introduce TC_ACT_REINSERT. (Ivan Vecera) [1638022] - [net] tc/act: remove unneeded RCU lock in action callback (Ivan Vecera) [1638022] - [net] sched: user-space can't set unknown tcfa_action values (Ivan Vecera) [1638022] - [net] Add and use skb_mark_not_on_list(). (Ivan Vecera) [1638022] - [net] sch_netem: Move private queue handler to generic location. (Ivan Vecera) [1638022] - [net] sch_htb: Remove local SKB queue handling code. (Ivan Vecera) [1638022] - [net] act_bpf: Use kmemdup instead of duplicating it in tcf_bpf_init_from_ops (Ivan Vecera) [1638022] - [net] cls_bpf: Use kmemdup instead of duplicating it in cls_bpf_prog_from_ops (Ivan Vecera) [1638022] - [net] act_pedit: remove unnecessary semicolon (Ivan Vecera) [1638022] - [net] sched: don't dump chains only held by actions (Ivan Vecera) [1638022] - [net] sch_cake: Make gso-splitting configurable from userspace (Ivan Vecera) [1638022] - [net] sched: unmark chain as explicitly created on delete (Ivan Vecera) [1638022] - [net] sched: cls_api: fix dead code in switch (Ivan Vecera) [1638022] - [net] sched: cls_flower: Use correct inline function for assignment of vlan tpid (Ivan Vecera) [1638022] - [net] sched: fix trailing whitespace (Ivan Vecera) [1638022] - [net] cbs: Add support for the graft function (Ivan Vecera) [1638022] - [net] sched: add skbprio scheduler (Ivan Vecera) [1638022] - [net] selftests: forwarding: add tests for TC chain templates (Ivan Vecera) [1638022] - [net] selftests: forwarding: add tests for TC chains creation adn destruction (Ivan Vecera) [1638022] - [net] selftests: forwarding: move shblock tc support check to a separate helper (Ivan Vecera) [1638022] - [net] sched: cls_flower: propagate chain teplate creation and destruction to drivers (Ivan Vecera) [1638022] - [net] sched: cls_flower: implement chain templates (Ivan Vecera) [1638022] - [net] sched: cls_flower: change fl_init_dissector to accept mask and dissector (Ivan Vecera) [1638022] - [net] sched: cls_flower: move key/mask dumping into a separate function (Ivan Vecera) [1638022] - [net] sched: introduce chain templates (Ivan Vecera) [1638022] - [net] sched: introduce chain object to uapi (Ivan Vecera) [1638022] - [net] sched: Avoid implicit chain 0 creation (Ivan Vecera) [1638022] - [net] sched: push ops lookup bits into tcf_proto_lookup_ops() (Ivan Vecera) [1638022] - [net] nfp: bring back support for offloading shared blocks (Ivan Vecera) [1638022] - [net] sched: use PTR_ERR_OR_ZERO macro in tcf_block_cb_register (Ivan Vecera) [1638022] - [net] tc-tests: initial version of fw filter unit tests (Ivan Vecera) [1638022] - [net] sch_cake: Fix tin order when set through skb->priority (Ivan Vecera) [1638022] - [net] sched: act_skbedit: don't use spinlock in the data path (Ivan Vecera) [1638022] - [net] sched: skbedit: use per-cpu counters (Ivan Vecera) [1638022] - [net] tc-testing: add geneve options in tunnel_key unit tests (Ivan Vecera) [1638022] - [net] sched: fix unprotected access to rcu cookie pointer (Ivan Vecera) [1638022] - [net] sched: act_ife: fix memory leak in ife init (Ivan Vecera) [1638022] - [net] sched: refactor flower walk to iterate over idr (Ivan Vecera) [1638022] - [net] sched: flower: Fix null pointer dereference when run tc vlan command (Ivan Vecera) [1638022] - [net] sched: Fix warnings from xchg() on RCU'd cookie pointer. (Ivan Vecera) [1638022] - [net] cls_flower: fix error values for commands not supported by drivers (Ivan Vecera) [1638022] - [net] nfp: handle cls_flower command default case (Ivan Vecera) [1638022] - [net] bnxt: simplify cls_flower command switch and handle default case (Ivan Vecera) [1638022] - [net] sch_cake: Conditionally split GSO segments (Ivan Vecera) [1638022] - [net] sch_cake: Add overhead compensation support to the rate shaper (Ivan Vecera) [1638022] - [net] sch_cake: Add DiffServ handling (Ivan Vecera) [1638022] - [net] sch_cake: Add NAT awareness to packet classifier (Ivan Vecera) [1638022] - [net] netfilter: Add nf_ct_get_tuple_skb global lookup function (Ivan Vecera) [1638022] - [net] sch_cake: Add optional ACK filter (Ivan Vecera) [1638022] - [net] sch_cake: Add ingress mode (Ivan Vecera) [1638022] - [net] sched: Add Common Applications Kept Enhanced (cake) qdisc (Ivan Vecera) [1638022] - [net] Use __u32 in uapi net_stamp.h (Ivan Vecera) [1638022] - [net] sched: flower: Add supprt for matching on QinQ vlan headers (Ivan Vecera) [1638022] - [net] sched: flower: Dump the ethertype encapsulated in vlan (Ivan Vecera) [1638022] - [net] flow_dissector: Add support for QinQ dissection (Ivan Vecera) [1638022] - [net] sched: flower: Add support for matching on vlan ethertype (Ivan Vecera) [1638022] - [net] flow_dissector: Save vlan ethertype from headers (Ivan Vecera) [1638022] - [net] sched: change action API to use array of pointers to actions (Ivan Vecera) [1638022] - [net] sched: atomically check-allocate action (Ivan Vecera) [1638022] - [net] sched: use reference counting action init (Ivan Vecera) [1638022] - [net] sched: don't release reference on action overwrite (Ivan Vecera) [1638022] - [net] sched: implement reference counted action release (Ivan Vecera) [1638022] - [net] sched: add 'delete' function to action ops (Ivan Vecera) [1638022] - [net] sched: implement action API that deletes action by index (Ivan Vecera) [1638022] - [net] sched: always take reference to action (Ivan Vecera) [1638022] - [net] sched: implement unlocked action init API (Ivan Vecera) [1638022] - [net] sched: change type of reference and bind counters (Ivan Vecera) [1638022] - [net] sched: use rcu for action cookie update (Ivan Vecera) [1638022] - [net] sched: Make etf report drops on error_queue (Ivan Vecera) [1638022] - [net] sched: Add HW offloading capability to ETF (Ivan Vecera) [1638022] - [net] sched: Introduce the ETF Qdisc (Ivan Vecera) [1638022] - [net] sched: Allow creating a Qdisc watchdog with other clocks (Ivan Vecera) [1638022] - [net] packet: Hook into time based transmission. (Ivan Vecera) [1638022] - [net] ipv6: Hook into time based transmission (Ivan Vecera) [1638022] - [net] ipv4: Hook into time based transmission (Ivan Vecera) [1638022] - [net] Add a new socket option for a future transmit time. (Ivan Vecera) [1638022] - [net] Clear skb->tstamp only on the forwarding path (Ivan Vecera) [1638022] - [net] sched: act_pedit: fix possible memory leak in tcf_pedit_init() (Ivan Vecera) [1638022] - [net] net sched actions: add extack messages in pedit action (Ivan Vecera) [1638022] - [net] net:sched: add action inheritdsfield to skbedit (Ivan Vecera) [1638022] - [net] tc-testing: initial version of tunnel_key unit tests (Ivan Vecera) [1638022] - [net] net sched actions: avoid bitwise operation on signed value in pedit (Ivan Vecera) [1638022] - [net] net sched actions: fix misleading text strings in pedit action (Ivan Vecera) [1638022] - [net] net sched actions: use sizeof operator for buffer length (Ivan Vecera) [1638022] - [net] net sched actions: fix sparse warning (Ivan Vecera) [1638022] - [net] net sched actions: fix coding style in pedit headers (Ivan Vecera) [1638022] - [net] net sched actions: fix coding style in pedit action (Ivan Vecera) [1638022] - [net] netem: slotting with non-uniform distribution (Ivan Vecera) [1638022] - [net] check tunnel option type in tunnel flags (Ivan Vecera) [1638022] - [net] sched: act_tunnel_key: add extended ack support (Ivan Vecera) [1638022] - [net] tc-tests: add an extreme-case csum action test (Ivan Vecera) [1638022] - [net] net_sched: remove unused htb drop_list (Ivan Vecera) [1638022]- [rpmspec] always run make with HOSTCFLAGS/HOSTLDFLAGS set (Jiri Olsa) [1624124] - [rpmspec] Pass global build flags to tools build (Jiri Olsa) [1624124] - [rpmspec] Pass global build flags to bpftool build (Jiri Olsa) [1624124] - [kernel] kbuild: Use HOST*FLAGS options from the command line (Jiri Olsa) [1624124] - [scripts] kbuild: Rename HOST_LOADLIBES to KBUILD_HOSTLDLIBS (Jiri Olsa) [1624124] - [tools] kbuild: Rename HOSTLDFLAGS to KBUILD_HOSTLDFLAGS (Jiri Olsa) [1624124] - [scripts] kbuild: Rename HOSTCXXFLAGS to KBUILD_HOSTCXXFLAGS (Jiri Olsa) [1624124] - [tools] kbuild: Rename HOSTCFLAGS to KBUILD_HOSTCFLAGS (Jiri Olsa) [1624124] - [tools] tools cpupower: Override CFLAGS assignments (Jiri Olsa) [1624124] - [tools] tools cpupower debug: Allow to use outside build flags (Jiri Olsa) [1624124] - [tools] perf tools: Pass build flags to traceevent build (Jiri Olsa) [1624124] - [tools] tools lib traceevent: Use LDFLAGS in the build commands (Jiri Olsa) [1624124] - [tools] perf tools: Link libperf-jvmti.so with LDFLAGS variable (Jiri Olsa) [1624124] - [tools] bpftool: Allow add linker flags via EXTRA_LDFLAGS variable (Jiri Olsa) [1624124] - [tools] bpftool: Allow to add compiler flags via EXTRA_CFLAGS variable (Jiri Olsa) [1624124] - [block] blkcg: handle dying request_queue when associating a blkg (Ming Lei) [1655485] - [block] block: deactivate blk_stat timer in wbt_disable_default() (Ming Lei) [1655485] - [lib] sbitmap: flush deferred clears for resize and shallow gets (Ming Lei) [1655485] - [md] dm: fix request-based dm's use of dm_wait_for_completion (Ming Lei) [1655485] - [nvme] nvme: fix irq vs io_queue calculations (Ming Lei) [1655485] - [md] dm: fix inflight IO check (Ming Lei) [1655485] - [md] dm: remove the pending IO accounting (Ming Lei) [1655485] - [block] block: return just one value from part_in_flight (Ming Lei) [1655485] - [block] block: switch to per-cpu in-flight counters (Ming Lei) [1655485] - [block] block: delete part_round_stats and switch to less precise counting (Ming Lei) [1655485] - [block] block: stop passing 'cpu' to all percpu stats methods (Ming Lei) [1655485] - [md] dm rq: leverage blk_mq_queue_busy() to check for outstanding IO (Ming Lei) [1655485] - [md] dm: dont rewrite dm_disk(md)->part0.in_flight (Ming Lei) [1655485] - [lib] sbitmap: silence bogus lockdep IRQ warning (Ming Lei) [1655485] - [scsi] scsi: Fix a harmless double shift bug (Ming Lei) [1655485] - [block] blk-mq: re-build queue map in case of kdump kernel (Ming Lei) [1655485] - [block] blkcg: put back rcu lock in blkcg_bio_issue_check() (Ming Lei) [1655485] - [block] block: convert io-latency to use rq_qos_wait (Ming Lei) [1655485] - [block] block: convert wbt_wait() to use rq_qos_wait() (Ming Lei) [1655485] - [block] block: add rq_qos_wait to rq_qos (Ming Lei) [1655485] - [block] blkcg: rename blkg_try_get() to blkg_tryget() (Ming Lei) [1655485] - [block] blkcg: change blkg reference counting to use percpu_ref (Ming Lei) [1655485] - [block] blkcg: remove bio_disassociate_task() (Ming Lei) [1655485] - [block] blkcg: remove additional reference to the css (Ming Lei) [1655485] - [block] blkcg: remove bio->bi_css and instead use bio->bi_blkg (Ming Lei) [1655485] - [block] blkcg: associate writeback bios with a blkg (Ming Lei) [1655485] - [block] blkcg: associate a blkg for pages being evicted by swap (Ming Lei) [1655485] - [block] blkcg: consolidate bio_issue_init() to be a part of core (Ming Lei) [1655485] - [block] blkcg: associate blkg when associating a device (Ming Lei) [1655485] - [block] dm: set the static flush bio device on demand (Ming Lei) [1655485] - [block] blkcg: introduce common blkg association logic (Ming Lei) [1655485] - [block] blkcg: convert blkg_lookup_create() to find closest blkg (Ming Lei) [1655485] - [block] blkcg: update blkg_lookup_create() to do locking (Ming Lei) [1655485] - [block] blkcg: fix ref count issue with bio_blkcg() using task_css (Ming Lei) [1655485] - [block] blk-mq: remove QUEUE_FLAG_POLL from default MQ flags (Ming Lei) [1655485] - [block] block: enable polling by default if a poll map is initalized (Ming Lei) [1655485] - [block] block: only allow polling if a poll queue_map exists (Ming Lei) [1655485] - [block] block: remove ->poll_fn (Ming Lei) [1655485] - [nvme] nvme-mpath: remove I/O polling support (Ming Lei) [1655485] - [nvme] nvme-rdma: remove I/O polling support (Ming Lei) [1655485] - [nvme] nvme-pci: remove the CQ lock for interrupt driven queues (Ming Lei) [1655485] - [nvme] nvme-pci: don't poll from irq context when deleting queues (Ming Lei) [1655485] - [nvme] nvme-pci: refactor nvme_disable_io_queues (Ming Lei) [1655485] - [nvme] nvme-pci: consolidate code for polling non-dedicated queues (Ming Lei) [1655485] - [nvme] nvme-pci: only allow polling with separate poll queues (Ming Lei) [1655485] - [nvme] nvme-pci: cleanup SQ allocation a bit (Ming Lei) [1655485] - [nvme] nvme-pci: use atomic bitops to mark a queue enabled (Ming Lei) [1655485] - [block] block: move queues types to the block layer (Ming Lei) [1655485] - [fs] aio: clear IOCB_HIPRI (Ming Lei) [1655485] - [lib] sbitmap: fix sbitmap_for_each_set() (Ming Lei) [1655485] - [block] blk-mq: don't call ktime_get_ns() if we don't need it (Ming Lei) [1655485] - [block] block: add cmd_flags to print_req_error (Ming Lei) [1655485] - [lib] sbitmap: optimize wakeup check (Ming Lei) [1655485] - [lib] sbitmap: ammortize cost of clearing bits (Ming Lei) [1655485] - [block] block: avoid extra bio reference for async O_DIRECT (Ming Lei) [1655485] - [lib] sbitmap: don't loop for find_next_zero_bit() for !round_robin (Ming Lei) [1655485] - [block] blk-mq: use plug for devices that implement ->commits_rqs() (Ming Lei) [1655485] - [block] blk-mq: use bd->last == true for list inserts (Ming Lei) [1655485] - [block] ataflop: implement mq_ops->commit_rqs() hook (Ming Lei) [1655485] - [block] virtio_blk: implement mq_ops->commit_rqs() hook (Ming Lei) [1655485] - [nvme] nvme: implement mq_ops->commit_rqs() hook (Ming Lei) [1655485] - [block] blk-mq: add mq_ops->commit_rqs() (Ming Lei) [1655485] - [block] block: improve logic around when to sort a plug list (Ming Lei) [1655485] - [block] blk-mq: Add a NULL check in blk_mq_free_map_and_requests() (Ming Lei) [1655485] - [block] ataflop: fix error handling in atari_floppy_init() (Ming Lei) [1655485] - [block] block: add io timeout to sysfs (Ming Lei) [1655485] - [block] block: use rcu_work instead of call_rcu to avoid sleep in softirq (Ming Lei) [1655485] - [block] blk-mq: fix failure to decrement plug count on single rq removal (Ming Lei) [1655485] - [block] sunvdc: Do not spin in an infinite loop when vio_ldc_send() returns EAGAIN (Ming Lei) [1655485] - [block] block: sum requests in the plug structure (Ming Lei) [1655485] - [block] blk-mq: Simplify request completion state (Ming Lei) [1655485] - [scsi] scsi: Do not rely on blk-mq for double completions (Ming Lei) [1655485] - [block] blk-mq: Return true if request was completed (Ming Lei) [1655485] - [block] blk-mq: never redirect polled IO completions (Ming Lei) [1655485] - [block] blk-mq: ensure mq_ops ->poll() is entered at least once (Ming Lei) [1655485] - [block] block: make blk_poll() take a parameter on whether to spin or not (Ming Lei) [1655485] - [nvme] nvme: remove opportunistic polling from bdev target (Ming Lei) [1655485] - [block] blk-mq: remove 'tag' parameter from mq_ops->poll() (Ming Lei) [1655485] - [block] blk-mq: when polling for IO, look for any completion (Ming Lei) [1655485] - [block] block: fix attempt to assign NULL io_context (Ming Lei) [1655485] - [block] block: Initialize BIO I/O priority early (Ming Lei) [1655485] - [block] block: prevent merging of requests with different priorities (Ming Lei) [1655485] - [fs] aio: Fix fallback I/O priority value (Ming Lei) [1655485] - [block] block: Introduce get_current_ioprio() (Ming Lei) [1655485] - [block] block: Remove bio->bi_ioc (Ming Lei) [1655485] - [fs] aio: Comment use of IOCB_FLAG_IOPRIO aio flag (Ming Lei) [1655485] - [nvme] nvme-fc: remove ->poll implementation (Ming Lei) [1655485] - [block] block: have ->poll_fn() return number of entries polled (Ming Lei) [1655485] - [block] block: avoid ordered task state change for polled IO (Ming Lei) [1655485] - [nvme] nvme: default to 0 poll queues (Ming Lei) [1655485] - [block] floppy: remove now unused 'flags' variable (Ming Lei) [1655485] - [mmc] mmc: stop abusing the request queue_lock pointer (Ming Lei) [1655485] - [block] ide: don't acquire queue_lock in ide_complete_pm_rq (Ming Lei) [1655485] - [block] ide: don't acquire queue lock in ide_pm_execute_rq (Ming Lei) [1655485] - [block] pktcdvd: remove queue_lock around blk_queue_max_hw_sectors (Ming Lei) [1655485] - [block] floppy: remove queue_lock around floppy_end_request (Ming Lei) [1655485] - [block] block: remove the rq_alloc_data request_queue field (Ming Lei) [1655485] - [block] block: don't plug for aio/O_DIRECT HIPRI IO (Ming Lei) [1655485] - [block] block: for async O_DIRECT, mark us as polling if asked to (Ming Lei) [1655485] - [block] block: add polled wakeup task helper (Ming Lei) [1655485] - [block] blk-rq-qos: inline check for q->rq_qos functions (Ming Lei) [1655485] - [block] block: add queue_is_mq() helper (Ming Lei) [1655485] - [nvme] nvme: provide optimized poll function for separate poll queues (Ming Lei) [1655485] - [block] ide: clear ide_req()->special for non-passthrough requests (Ming Lei) [1655485] - [nvme] nvme: fix handling of EINVAL on pci_alloc_irq_vectors_affinity() (Ming Lei) [1655485] - [block] block: add wbt_disable_default export for BFQ (Ming Lei) [1655485] - [block] block: remove the queue_lock indirection (Ming Lei) [1655485] - [block] block: remove the lock argument to blk_alloc_queue_node (Ming Lei) [1655485] - [mmc] mmc: stop abusing the request queue_lock pointer (Ming Lei) [1655485] - [mmc] mmc: simplify queue initialization (Ming Lei) [1655485] - [block] umem: don't override the queue_lock (Ming Lei) [1655485] - [block] drbd: don't override the queue_lock (Ming Lei) [1655485] - [block] blk-cgroup: move locking into blkg_destroy_all (Ming Lei) [1655485] - [block] blk-cgroup: consolidate error handling in blkcg_init_queue (Ming Lei) [1655485] - [block] block: remove a few unused exports (Ming Lei) [1655485] - [block] block: update a few comments for the legacy request removal (Ming Lei) [1655485] - [block] block: remove the unused lock argument to rq_qos_throttle (Ming Lei) [1655485] - [block] block: remove queue_lockdep_assert_held (Ming Lei) [1655485] - [block] block: use atomic bitops for ->queue_flags (Ming Lei) [1655485] - [block] block: don't hold the queue_lock over blk_abort_request (Ming Lei) [1655485] - [block] block: remove deadline __deadline manipulation helpers (Ming Lei) [1655485] - [block] block: remove QUEUE_FLAG_BYPASS and ->bypass (Ming Lei) [1655485] - [nvme] nvmet-rdma: fix response use after free (Ming Lei) [1655485] - [nvme] nvme: validate controller state before rescheduling keep alive (Ming Lei) [1655485] - [block] block, bfq: fix decrement of num_active_groups (Ming Lei) [1655485] - [ata] libata: whitelist all SAMSUNG MZ7KM* solid-state disks (Ming Lei) [1655485] - [nvme] nvme-rdma: fix double freeing of async event data (Ming Lei) [1655485] - [nvme] nvme-pci: fix surprise removal (Ming Lei) [1655485] - [nvme] nvme: Free ctrl device name on init failure (Ming Lei) [1655485] - [nvme] nvme-fc: resolve io failures during connect (Ming Lei) [1655485] - [nvme] nvme: make sure ns head inherits underlying device limits (Ming Lei) [1655485] - [nvme] nvmet: don't try to add ns to p2p map unless it actually uses it (Ming Lei) [1655485] - [nvme] nvme-pci: fix conflicting p2p resource adds (Ming Lei) [1655485] - [nvme] nvmet: Optionally use PCI P2P memory (Ming Lei) [1655485] - [nvme] nvmet: Introduce helper functions to allocate and free request SGLs (Ming Lei) [1655485] - [nvme] nvme-pci: Add support for P2P memory in requests (Ming Lei) [1655485] - [nvme] nvme-pci: Use PCI p2pmem subsystem to manage the CMB (Ming Lei) [1655485] - [infiniband] IB/core: Ensure we map P2P memory correctly in rdma_rw_ctx_[init|destroy]() (Ming Lei) [1655485] - [block] block: Add PCI P2P flag for request queue (Ming Lei) [1655485] - [documentation] PCI/P2PDMA: Add P2P DMA driver writer's documentation (Ming Lei) [1655485] - [documentation] docs-rst: Add a new directory for PCI documentation (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Introduce configfs/sysfs enable attribute helpers (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Add PCI p2pmem DMA mappings to adjust the bus offset (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Add sysfs group to display p2pmem stats (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Support peer-to-peer memory (Ming Lei) [1655485] - [nvme] nvmet-rdma: support max(16KB, PAGE_SIZE) inline data (Ming Lei) [1655485] - [nvme] nvme-rdma: support up to 4 segments of inline data (Ming Lei) [1655485] - [fs] aio: fix failure to put the file pointer (Ming Lei) [1655485] - [lib] scsi: Remove percpu_ida (Ming Lei) [1655485] - [scsi] scsi: target: Convert target drivers to use sbitmap (Ming Lei) [1655485] - [scsi] scsi: target: Abstract tag freeing (Ming Lei) [1655485] - [block] mmc: block: Fix unsupported parallel dispatch of requests (Ming Lei) [1655485] - [scsi] scsi: target: sbitmap: add seq_file forward declaration (Ming Lei) [1655485] - [mm] mm, memory_hotplug: do not clear numa_node association after hot_remove (Waiman Long) [1657422] - [fs] iomap: partially revert 4721a601099 (simulated directio short read on EFAULT) (Brian Foster) [1654713] - [fs] splice: don't read more than available pipe space (Brian Foster) [1654713] - [fs] vfs: allow some remap flags to be passed to vfs_clone_file_range (Brian Foster) [1654713] - [fs] xfs: fix inverted return from xfs_btree_sblock_verify_crc (Brian Foster) [1654713] - [fs] xfs: fix PAGE_MASK usage in xfs_free_file_space (Brian Foster) [1654713] - [fs] fs/xfs: fix f_ffree value for statfs when project quota is set (Brian Foster) [1654713] - [fs] iomap: readpages doesn't zero page tail beyond EOF (Brian Foster) [1654713] - [fs] vfs: vfs_dedupe_file_range() doesn't return EOPNOTSUPP (Brian Foster) [1654713] - [fs] iomap: dio data corruption and spurious errors when pipes fill (Brian Foster) [1654713] - [fs] iomap: sub-block dio needs to zeroout beyond EOF (Brian Foster) [1654713] - [fs] iomap: FUA is wrong for DIO O_DSYNC writes into unwritten extents (Brian Foster) [1654713] - [fs] xfs: delalloc -> unwritten COW fork allocation can go wrong (Brian Foster) [1654713] - [fs] xfs: flush removing page cache in xfs_reflink_remap_prep (Brian Foster) [1654713] - [fs] xfs: extent shifting doesn't fully invalidate page cache (Brian Foster) [1654713] - [fs] xfs: finobt AG reserves don't consider last AG can be a runt (Brian Foster) [1654713] - [fs] xfs: fix transient reference count error in xfs_buf_resubmit_failed_buffers (Brian Foster) [1654713] - [fs] xfs: uncached buffer tracing needs to print bno (Brian Foster) [1654713] - [fs] xfs: make xfs_file_remap_range() static (Brian Foster) [1654713] - [fs] xfs: fix shared extent data corruption due to missing cow reservation (Brian Foster) [1654713] - [fs] xfs: fix overflow in xfs_attr3_leaf_verify (Brian Foster) [1654713] - [fs] xfs: print buffer offsets when dumping corrupt buffers (Brian Foster) [1654713] - [fs] xfs: Fix error code in 'xfs_ioc_getbmap()' (Brian Foster) [1654713] - [fs] xfs: cancel COW blocks before swapext (Brian Foster) [1654713] - [fs] xfs: clear ail delwri queued bufs on unmount of shutdown fs (Brian Foster) [1654713] - [fs] xfs: use offsetof() in place of offset macros for __xfsstats (Brian Foster) [1654713] - [fs] xfs: Fix xqmstats offsets in /proc/fs/xfs/xqmstat (Brian Foster) [1654713] - [fs] xfs: fix use-after-free race in xfs_buf_rele (Brian Foster) [1654713] - [fs] xfs: Add attibute remove and helper functions (Brian Foster) [1654713] - [fs] xfs: Add attibute set and helper functions (Brian Foster) [1654713] - [fs] xfs: Add helper function xfs_attr_try_sf_addname (Brian Foster) [1654713] - [fs] xfs: Move fs/xfs/xfs_attr.h to fs/xfs/libxfs/xfs_attr.h (Brian Foster) [1654713] - [fs] xfs: issue log message on user force shutdown (Brian Foster) [1654713] - [fs] xfs: fix buffer state management in xrep_findroot_block (Brian Foster) [1654713] - [fs] xfs: always assign buffer verifiers when one is provided (Brian Foster) [1654713] - [fs] xfs: xrep_findroot_block should reject root blocks with siblings (Brian Foster) [1654713] - [fs] xfs: add a define for statfs magic to uapi (Brian Foster) [1654713] - [fs] xfs: print dangling delalloc extents (Brian Foster) [1654713] - [fs] xfs: fix fork selection in xfs_find_trim_cow_extent (Brian Foster) [1654713] - [fs] xfs: remove the unused trimmed argument from xfs_reflink_trim_around_shared (Brian Foster) [1654713] - [fs] xfs: remove the unused shared argument to xfs_reflink_reserve_cow (Brian Foster) [1654713] - [fs] xfs: handle zeroing in xfs_file_iomap_begin_delay (Brian Foster) [1654713] - [fs] xfs: remove suport for filesystems without unwritten extent flag (Brian Foster) [1654713] - [fs] xfs: remove XFS_IO_INVALID (Brian Foster) [1654713] - [fs] xfs: remove [cm]time update from reflink calls (Brian Foster) [1654713] - [fs] xfs: remove xfs_reflink_remap_range (Brian Foster) [1654713] - [fs] xfs: remove redundant remap partial EOF block checks (Brian Foster) [1654713] - [fs] xfs: support returning partial reflink results (Brian Foster) [1654713] - [fs] xfs: clean up xfs_reflink_remap_blocks call site (Brian Foster) [1654713] - [fs] xfs: fix pagecache truncation prior to reflink (Brian Foster) [1654713] - [fs] vfs: clean up generic_remap_file_range_prep return value (Brian Foster) [1654713] - [fs] vfs: hide file range comparison function (Brian Foster) [1654713] - [fs] vfs: enable remap callers that can handle short operations (Brian Foster) [1654713] - [fs] vfs: plumb remap flags through the vfs dedupe functions (Brian Foster) [1654713] - [fs] vfs: plumb remap flags through the vfs clone functions (Brian Foster) [1654713] - [fs] vfs: make remap_file_range functions take and return bytes completed (Brian Foster) [1654713] - [fs] vfs: remap helper should update destination inode metadata (Brian Foster) [1654713] - [fs] vfs: pass remap flags to generic_remap_checks (Brian Foster) [1654713] - [fs] vfs: pass remap flags to generic_remap_file_range_prep (Brian Foster) [1654713] - [fs] vfs: combine the clone and dedupe into a single remap_file_range (Brian Foster) [1654713] - [fs] vfs: rename clone_verify_area to remap_verify_area (Brian Foster) [1654713] - [fs] vfs: rename vfs_clone_file_prep to be more descriptive (Brian Foster) [1654713] - [fs] vfs: skip zero-length dedupe requests (Brian Foster) [1654713] - [fs] vfs: avoid problematic remapping requests into partial EOF block (Brian Foster) [1654713] - [fs] vfs: strengthen checking of file range inputs to generic_remap_checks (Brian Foster) [1654713] - [fs] vfs: exit early from zero length remap operations (Brian Foster) [1654713] - [fs] vfs: check file ranges before cloning files (Brian Foster) [1654713] - [fs] vfs: vfs_clone_file_prep_inodes should return EINVAL for a clone from beyond EOF (Brian Foster) [1654713] - [block] blk-mq: not embed .mq_kobj and ctx->kobj into queue instance (Ming Lei) [1653124] - [fs] fs: fix lost error code in dio_complete (Ming Lei) [1655364] - [iommu] iommu/iova: Optimise attempts to allocate iova from 32bit address range (Robert Richter) [1639202]- [drm] drm/nouveau/drm/nouveau: Check rc from drm_dp_mst_topology_mgr_resume() (Lyude Paul) [1658810] - [x86] Mark Intel Apollo Lake supported (David Arcari) [1653799] - [infiniband] IB/mlx5: Fix implicit ODP interrupted page fault (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Improve ODP debugging messages (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Use multi threaded workqueue for page fault handling (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Return success for PAGE_FAULT_RESUME in internal error state (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Lock QP during page fault handling (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Enumerate page fault types (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Add interface to hold and release core resources (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Release resource on error flow (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_core: Correctly set PFC param if global pause is turned off. (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_en: Change min MTU size to ETH_MIN_MTU (Alaa Hleihel) [1658085] - [netdrv] mlx5: fix get_ip_proto() (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Fix page fault handling for MW (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Initialize return variable in case pagefault was skipped (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Skip non-ODP MR when handling a page fault (Alaa Hleihel) [1658085] - [net] net/dim: Update DIM start sample after each DIM iteration (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Avoid load failure due to unknown link width (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Fix fence type for IB_WR_LOCAL_INV WR (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Removed unnecessary warnings in FEC caps query (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Fix selftest for small MTUs (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: RX, verify received packet size in Linear Striding RQ (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Apply the correct check for supporting TC esw rules split (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Adjust to max number of channles when re-attaching (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Always use the match level enum when parsing TC rule match (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Claim TC hw offloads support only under a proper build config (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Don't match on vlan non-existence if ethertype is wildcarded (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: IPoIB, Reset QP after channels are closed (Alaa Hleihel) [1658085] - [netdrv] net/mlx4: Fix UBSAN warning of signed integer overflow (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_core: Fix uninitialized variable compilation warning (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_core: Zero out lkey field in SW2HW_MPT fw command (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Fix MR cache initialization (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Remove extraneous error check (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Take only bit 24-26 of wqe.pftype_wq for page fault type (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Fix memory leak when setting fpga ipsec caps (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Unmap DMA addr from HCA before IOMMU (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Remove superfluous version print (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Allow transition of DCI QP to reset (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Don't hold spin lock while checking device state (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Move mlx5e_priv_flags into en_ethtool.c (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Fix atomic_mode enum values (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Delete unneeded function argument (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: RX, Prefetch the xdp_frame data area (Alaa Hleihel) [1658085] - [drm] drm/i915: Synchronize hpd work in i915_hpd_storm_ctl_show() (Lyude Paul) [1658376] - [drm] drm/i915: Add short HPD IRQ storm detection for non-MST systems (Lyude Paul) [1658376] - [drm] drm/i915: Clarify flow for disabling IRQs on storms (Lyude Paul) [1658376] - [drm] drm/i915: Fix threshold check in intel_hpd_irq_storm_detect() (Lyude Paul) [1658376] - [drm] drm/i915: Fix NULL deref when re-enabling HPD IRQs on systems with MST (Lyude Paul) [1658376] - [drm] drm/i915: Fix possible race in intel_dp_add_mst_connector() (Lyude Paul) [1658376] - [x86] kvm: x86: bump KVM_(SOFT_)MAX_VCPUS to 384 (Radim Krcmar) [1635205] - [block] blk-mq: punt failed direct issue to dispatch list (Ming Lei) [1656653] - [block] blk-mq: fix corruption with direct issue (Ming Lei) [1656653] - [pci] PCI: Add support for Immediate Readiness (Myron Stowe) [1483409] - [x86] x86/PCI: Remove node-local allocation when initialising host controller (Myron Stowe) [1483409] - [arm64] arm64: PCI: Remove node-local allocations when initialising host controller (Myron Stowe) [1483409] - [cpufreq] cpufreq: intel_pstate: Add base_frequency attribute (Prarit Bhargava) [1648207] - [acpi] ACPI / CPPC: Add support for guaranteed performance (Prarit Bhargava) [1648207] - [block] block: fix single range discard merge (Ming Lei) [1654096] - [scsi] SCSI: fix queue cleanup race before queue initialization is done (Ming Lei) [1642404] - [netdrv] net: hinic: fix null pointer dereference on pointer hwdev (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic: fix a bug in rx data flow (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic:fix a bug in set mac address (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic:add rx checksum offload for HiNIC (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic:replace multiply and division operators (Xiaojun Tan) [1654207] - [netdrv] hinic: Fix l4_type parameter in hinic_task_set_tunnel_l4 (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic: add checksum offload and TSO support (Xiaojun Tan) [1654207] - [netdrv] cxgb4: Remove SGE_HOST_PAGE_SIZE dependency on page size (Arjun Vynipadath) [1651082]- [x86] kvm: x86: Report STIBP on GET_SUPPORTED_CPUID (Eduardo Habkost) [1644870] - [kernel] power: remove possible deadlock when unregistering power_supply (Benjamin Tissoires) [1657623] - [md] dm: call blk_queue_split() to impose device limits on bios (Mike Snitzer) [1657340] - [pinctrl] Revert "pinctrl: intel: Do pin translation when lock IRQ" (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: cannonlake: Fix HOSTSW_OWN register offset of H variant (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: intel: Do pin translation in other GPIO operations as well (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: cannonlake: Fix gpio base for GPP-E (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: intel: Don't shadow error code of gpiochip_lock_as_irq() (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: cannonlake: Fix community ordering for H variant (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: intel: Do pin translation when lock IRQ (Benjamin Tissoires) [1658075] - [firmware] efi: Prevent GICv3 WARN() by mapping the memreserve table before first use (Bhupesh Sharma) [1638640] - [firmware] efi: Permit calling efi_mem_reserve_persistent() from atomic context (Bhupesh Sharma) [1638640] - [firmware] efi/arm: Defer persistent reservations until after paging_init() (Bhupesh Sharma) [1638640] - [firmware] efi/arm: Revert deferred unmap of early memmap mapping (Bhupesh Sharma) [1638640] - [arm64] arm64: memblock: don't permit memblock resizing until linear mapping is up (Bhupesh Sharma) [1638640] - [arm64] arm64: Fix /proc/iomem for reserved but not memory regions (Bhupesh Sharma) [1638640] - [tty] tty: wipe buffer. (Christoph von Recklinghausen) [1655051] - [tty] tty: wipe buffer if not echoing data (Christoph von Recklinghausen) [1655051]- [powerpc] powerpc/perf: Remove sched_task function defined for thread-imc (Steve Best) [1657153] - [s390] Add reserved fields to mm_context_t (Philipp Rudo) [1656874] - [s390] Add reserved fields to thread_struct (Philipp Rudo) [1656874] - [documentation] kdump: correct crashkernel=auto threshold (Raghavendra Rao) [1656698] - [fs] NFSv4.x: fix lock recovery during delegation recall (Steve Dickson) [1656410] - [x86] x86/spec_ctrl: Synchronize RHEL8 percpu SPEC_CTRL MSR states with new STIBP logic (Waiman Long) [1655662] - [x86] x86/speculation: Provide IBPB always command line options (Waiman Long) [1655662] - [x86] x86/speculation: Add seccomp Spectre v2 user space protection mode (Waiman Long) [1655662] - [x86] x86/speculation: Enable prctl mode for spectre_v2_user (Waiman Long) [1655662] - [x86] x86/speculation: Add prctl() control for indirect branch speculation (Waiman Long) [1655662] - [x86] x86/speculation: Prepare arch_smt_update() for PRCTL mode (Waiman Long) [1655662] - [x86] x86/speculation: Prevent stale SPEC_CTRL msr content (Waiman Long) [1655662] - [x86] x86/speculation: Split out TIF update (Waiman Long) [1655662] - [x86] ptrace: Remove unused ptrace_may_access_sched() and MODE_IBRS (Waiman Long) [1655662] - [x86] x86/speculation: Prepare for conditional IBPB in switch_mm() (Waiman Long) [1655662] - [x86] x86/speculation: Avoid __switch_to_xtra() calls (Waiman Long) [1655662] - [x86] x86/process: Consolidate and simplify switch_to_xtra() code (Waiman Long) [1655662] - [x86] x86/speculation: Prepare for per task indirect branch speculation control (Waiman Long) [1655662] - [x86] x86/speculation: Add command line control for indirect branch speculation (Waiman Long) [1655662] - [x86] x86/speculation: Unify conditional spectre v2 print functions (Waiman Long) [1655662] - [x86] x86/speculataion: Mark command line parser data __initdata (Waiman Long) [1655662] - [x86] x86/speculation: Mark string arrays const correctly (Waiman Long) [1655662] - [x86] x86/speculation: Reorder the spec_v2 code (Waiman Long) [1655662] - [x86] x86/l1tf: Show actual SMT state (Waiman Long) [1655662] - [x86] x86/speculation: Rework SMT state change (Waiman Long) [1655662] - [x86] sched/smt: Expose sched_smt_present static key (Waiman Long) [1655662] - [x86] x86/Kconfig: Select SCHED_SMT if SMP enabled (Waiman Long) [1655662] - [x86] sched/smt: Make sched_smt_present track topology (Waiman Long) [1655662] - [x86] x86/speculation: Reorganize speculation control MSRs update (Waiman Long) [1655662] - [x86] x86/speculation: Rename SSBD update functions (Waiman Long) [1655662] - [x86] x86/speculation: Disable STIBP when enhanced IBRS is in use (Waiman Long) [1655662] - [x86] x86/speculation: Move STIPB/IBPB string conditionals out of cpu_show_common() (Waiman Long) [1655662] - [x86] x86/speculation: Remove unnecessary ret variable in cpu_show_common() (Waiman Long) [1655662] - [x86] x86/speculation: Clean up spectre_v2_parse_cmdline() (Waiman Long) [1655662] - [x86] x86/speculation: Update the TIF_SSBD comment (Waiman Long) [1655662] - [x86] x86/retpoline: Remove minimal retpoline support (Waiman Long) [1655662] - [x86] x86/retpoline: Make CONFIG_RETPOLINE depend on compiler support (Waiman Long) [1655662] - [x86] x86/spec_ctrl: Temporarily remove the IBRS code from process.c & bugs.c (Waiman Long) [1655662] - [nvme] nvme: flush namespace scanning work just before removing namespaces (Ewan Milne) [1656028] - [netdrv] i40e: Fix deletion of MAC filters (Stefan Assmann) [1646847] - [scsi] mpt3sas: Display message on Configurable secure HBA (Tomas Henzl) [1649314] - [scsi] scsi: mpt3sas: Add support for Aero controllers (Tomas Henzl) [1649314] - [scsi] scsi: mpt3sas: Update MPI headers to support Aero controllers (Tomas Henzl) [1649314] - [scsi] megaraid_sas: Add support for MegaRAID Aero controllers (Tomas Henzl) [1649384] - [netdrv] nfp: flower: enabled offloading of Team LAG (Pablo Cascon) [1649876] - [netdrv] net/mlx5: IPSec, Fix the SA context hash key (Alaa Hleihel) [1645857] - [hwmon] hwmon/k10temp: Add support for AMD family 17h, model 30h CPUs (Gary Hook) [1640681] - [x86] x86/amd_nb: Add PCI device IDs for family 17h, model 30h (Gary Hook) [1640681] - [x86] x86/amd_nb: Add support for newer PCI topologies (Gary Hook) [1640681] - [hwmon] hwmon/k10temp, x86/amd_nb: Consolidate shared device IDs (Gary Hook) [1640681] - [net] tipc: fix info leak from kernel tipc_event (Jon Maloy) [1643279] - [net] tipc: eliminate message disordering during binding table update (Jon Maloy) [1643279] - [net] tipc: fix unsafe rcu locking when accessing publication list (Jon Maloy) [1643279] - [net] tipc: queue socket protocol error messages into socket receive buffer (Jon Maloy) [1643279] - [net] tipc: ignore STATE_MSG on wrong link session (Jon Maloy) [1643279] - [net] tipc: fix failover problem (Jon Maloy) [1643279] - [net] tipc: eliminate possible recursive locking detected by LOCKDEP (Jon Maloy) [1643279] - [net] tipc: lock wakeup & inputq at tipc_link_reset() (Jon Maloy) [1643279] - [net] tipc: reset bearer if device carrier not ok (Jon Maloy) [1643279] - [net] tipc: fix flow control accounting for implicit connect (Jon Maloy) [1643279] - [net] tipc: check return value of __tipc_dump_start() (Jon Maloy) [1643279] - [net] tipc: call start and done ops directly in __tipc_nl_compat_dumpit() (Jon Maloy) [1643279] - [net] tipc: orphan sock in tipc_release() (Jon Maloy) [1643279] - [net] tipc: switch to rhashtable iterator (Jon Maloy) [1643279] - [net] tipc: fix a missing rhashtable_walk_exit() (Jon Maloy) [1643279] - [net] tipc: add missing dev_put() on error in tipc_enable_l2_media (Jon Maloy) [1643279] - [net] tipc: initialize broadcast link stale counter correctly (Jon Maloy) [1643279] - [net] tipc: set link tolerance correctly in broadcast link (Jon Maloy) [1643279] - [net] tipc: extend link reset criteria for stale packet retransmission (Jon Maloy) [1643279] - [crypto] crypto: ccp - Add support for new CCP/PSP device ID (Gary Hook) [1634201] - [crypto] crypto: ccp - Support register differences between PSP devices (Gary Hook) [1634201] - [crypto] crypto: ccp - Remove unused #defines (Gary Hook) [1634201] - [crypto] crypto: ccp - Add psp enabled message when initialization succeeds (Gary Hook) [1634201] - [crypto] crypto: ccp - Fix command completion detection race (Gary Hook) [1634201] - [crypto] crypto: ccp - Check for NULL PSP pointer at module unload (Gary Hook) [1634201] - [net] sctp: increase sk_wmem_alloc when head->truesize is increased (Xin Long) [1645419] - [net] sctp: count sk_wmem_alloc by skb truesize in sctp_packet_transmit (Xin Long) [1645419] - [net] ipv6: re-do dad when interface has IFF_NOARP flag change (Hangbin Liu) [1644594] - [net] netfilter: nf_tables: don't skip inactive chains during update (Florian Westphal) [1643746] - [net] inet: frags: better deal with smp races (Sabrina Dubroca) [1645397] - [net] geneve, vxlan: Don't set exceptions if skb->len < mtu (Xin Long) [1642842] - [net] geneve, vxlan: Don't check skb_dst() twice (Xin Long) [1642842] - [net] sctp: fix strchange_flags name for Stream Change Event (Xin Long) [1641852] - [net] sctp: update dst pmtu with the correct daddr (Xin Long) [1644478] - [net] sctp: not free the new asoc when sctp_wait_for_connect returns err (Xin Long) [1644155] - [net] l2tp: fix a sock refcnt leak in l2tp_tunnel_register (Xin Long) [1642749] - [net] sctp: check policy more carefully when getting pr status (Xin Long) [1637786] - [net] sctp: get pr_assoc and pr_stream all status with SCTP_PR_SCTP_ALL instead (Xin Long) [1637786] - [net] ipv4/igmp: fix v1/v2 switchback timeout based on rfc3376, 8.12 (Hangbin Liu) [1638598] - [net] netfilter: nft_compat: ebtables 'nat' table is normal chain type (Florian Westphal) [1645377] - [net] sched: exclude TC from kABI guarantee (Ivan Vecera) [1628454] - [net] netfilter: nft_set_rbtree: allow loose matching of closing element in interval (Phil Sutter) [1641993] - [net] netfilter: xt_nat: fix DNAT target for shifted portmap ranges (Paolo Abeni) [1634258] - [net] sched: Fix for duplicate class dump (Phil Sutter) [1631179] - [x86] KVM: X86: Fix scan ioapic use-before-initialization (Bandan Das) [1653835] {CVE-2018-19407}- [scsi] scsi: vmw_pscsi: Rearrange code to avoid multiple calls to free_irq during unload (Cathy Avery) [1590875] - [netdrv] net/ibmvnic: Fix RTNL deadlock during device reset (Steve Best) [1656076] - [s390] s390/qeth: fix length check in SNMP processing (Philipp Rudo) [1655612] - [s390] s390/ism: clear dmbe_mask bit before SMC IRQ handling (Philipp Rudo) [1655611] - [net] net/smc: use after free fix in smc_wr_tx_put_slot() (Philipp Rudo) [1655611] - [net] net/smc: atomic SMCD cursor handling (Philipp Rudo) [1655611] - [net] net/smc: add SMC-D shutdown signal (Philipp Rudo) [1655611] - [net] net/smc: use queue pair number when matching link group (Philipp Rudo) [1655611] - [net] net/smc: abort CLC connection in smc_release (Philipp Rudo) [1655611] - [net] net/smc: unregister rkeys of unused buffer (Philipp Rudo) [1655611] - [net] net/smc: add infrastructure to send delete rkey messages (Philipp Rudo) [1655611] - [net] net/smc: avoid a delay by waiting for nothing (Philipp Rudo) [1655611] - [net] net/smc: cleanup listen worker mutex unlocking (Philipp Rudo) [1655611] - [net] net/smc: short wait for late smc_clc_wait_msg (Philipp Rudo) [1655611] - [net] net/smc: no link delete for a never active link (Philipp Rudo) [1655611] - [net] net/smc: allow fallback after clc timeouts (Philipp Rudo) [1655611] - [net] net/smc: remove sock_error detour in clc-functions (Philipp Rudo) [1655611] - [net] net/smc: make smc_lgr_free() static (Philipp Rudo) [1655611] - [net] net/smc: cleanup tcp_listen_worker initialization (Philipp Rudo) [1655611] - [net] net/smc: fix smc_buf_unuse to use the lgr pointer (Philipp Rudo) [1655611] - [net] Revert "net: simplify sock_poll_wait" (Philipp Rudo) [1655611] - [powerpc] powerpc/pseries: Fix unitialized timer reset on migration (Steve Best) [1655053] - [powerpc] powerpc/pseries/mobility: Extend start/stop topology update scope (Steve Best) [1655053] - [x86] Mark Intel Cascade Lake supported (Steve Best) [1641425]- [x86] KVM: VMX: re-add ple_gap module parameter (Gary Hook) [1652953] - [netdrv] tg3: Add PHY reset for 5717/5719/5720 in change ring and flow control paths (Steve Best) [1655515] - [pci] PCI/ASPM: Do not initialize link state when aspm_disabled is set (Myron Stowe) [1655246] - [pci] PCI/ACPI: Allow _OSC presence to be optional for PCI (Myron Stowe) [1655246] - [pci] PCI/ACPI: Correct error message for ASPM disabling (Myron Stowe) [1655246] - [pci] PCI/ASPM: Fix link_state teardown on device removal (Myron Stowe) [1655246] - [netdrv] ice: Change req_speeds to be u16 (Jonathan Toppins) [1644403] - [netdrv] ice: Fix the bytecount sent to netdev_tx_sent_queue (Jonathan Toppins) [1644403] - [netdrv] ice: Fix tx_timeout in PF driver (Jonathan Toppins) [1644403] - [netdrv] ice: Fix napi delete calls for remove (Jonathan Toppins) [1644403] - [netdrv] ice: Fix typo in error message (Jonathan Toppins) [1644403] - [netdrv] ice: Fix flags for port VLAN (Jonathan Toppins) [1644403] - [netdrv] ice: Remove duplicate addition of VLANs in replay path (Jonathan Toppins) [1644403] - [netdrv] ice: Free VSI contexts during for unload (Jonathan Toppins) [1644403] - [netdrv] ice: Fix dead device link issue with flow control (Jonathan Toppins) [1644403] - [netdrv] ice: Check for reset in progress during remove (Jonathan Toppins) [1644403] - [netdrv] ice: Set carrier state and start/stop queues in rebuild (Jonathan Toppins) [1644403] - [netdrv] virtchnl: Added support to exchange additional speed values (Jonathan Toppins) [1644403] - [netdrv] ice: Poll for link status change (Jonathan Toppins) [1644403] - [netdrv] ice: Allocate VF interrupts and set queue map (Jonathan Toppins) [1644403] - [netdrv] ice: Introduce ice_dev_onetime_setup (Jonathan Toppins) [1644403] - [netdrv] ice: Use capability count returned by the firmware (Jonathan Toppins) [1644403] - [netdrv] ice: Update expected FW version (Jonathan Toppins) [1644403] - [netdrv] ice: Change device ID define names to align with branding string (Jonathan Toppins) [1644403] - [netdrv] ice: Make ice_msix_clean_rings static (Jonathan Toppins) [1644403] - [netdrv] ice: Update version string (Jonathan Toppins) [1644403] - [netdrv] ice: Use the right function to enable/disable VSI (Jonathan Toppins) [1644403] - [netdrv] ice: Add more flexibility on how we assign an ITR index (Jonathan Toppins) [1644403] - [netdrv] ice: Fix potential null pointer issues (Jonathan Toppins) [1644403] - [netdrv] ice: Add code to go from ICE_FWD_TO_VSI_LIST to ICE_FWD_TO_VSI (Jonathan Toppins) [1644403] - [netdrv] ice: Fix forward to queue group logic (Jonathan Toppins) [1644403] - [netdrv] ice: Extend malicious operations detection logic (Jonathan Toppins) [1644403] - [netdrv] ice: Notify VF of link status change (Jonathan Toppins) [1644403] - [netdrv] ice: Implement virtchnl commands for AVF support (Jonathan Toppins) [1644403] - [netdrv] ice: Add handlers for VF netdevice operations (Jonathan Toppins) [1644403] - [netdrv] ice: Add support for VF reset events (Jonathan Toppins) [1644403] - [netdrv] ice: Update VSI and queue management code to handle VF VSI (Jonathan Toppins) [1644403] - [netdrv] ice: Add handler to configure SR-IOV (Jonathan Toppins) [1644403] - [netdrv] ice: Add support to detect SR-IOV capability and mailbox queues (Jonathan Toppins) [1644403] - [netdrv] ice: Fix error on driver remove (Jonathan Toppins) [1644403] - [netdrv] ice: Add support for dynamic interrupt moderation (Jonathan Toppins) [1644403] - [netdrv] ice: Align ice_reset_req enum values to hardware reset values (Jonathan Toppins) [1644403] - [netdrv] ice: Implement ethtool hook for RSS switch (Jonathan Toppins) [1644403] - [netdrv] ice: Split irq_tracker into sw_irq_tracker and hw_irq_tracker (Jonathan Toppins) [1644403] - [netdrv] ice: Check for actual link state of port after reset (Jonathan Toppins) [1644403] - [netdrv] ice: Implement VSI replay framework (Jonathan Toppins) [1644403] - [netdrv] ice: Expand use of VSI handles part 2/2 (Jonathan Toppins) [1644403] - [netdrv] ice: Expand use of VSI handles part 1/2 (Jonathan Toppins) [1644403] - [netdrv] ice: Change pf state behavior to protect reset path (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 7/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 6/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 5/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 4/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 3/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 2/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 1/7 (Jonathan Toppins) [1644403] - [netdrv] ice: fix changing of ring descriptor size (ethtool -G) (Jonathan Toppins) [1644403] - [netdrv] ice: Update to capabilities admin queue command (Jonathan Toppins) [1644403] - [netdrv] ice: Query the Tx scheduler node before adding it (Jonathan Toppins) [1644403] - [netdrv] ice: Update comment for ice_fltr_mgmt_list_entry (Jonathan Toppins) [1644403] - [netdrv] ice: update fw version check logic (Jonathan Toppins) [1644403] - [netdrv] ice: update branding strings and supported device ids (Jonathan Toppins) [1644403] - [netdrv] ice: replace unnecessary memcpy with direct assignment (Jonathan Toppins) [1644403] - [netdrv] ice: use [sr]q.count when checking if queue is initialized (Jonathan Toppins) [1644403] - [netdrv] ice: remove ndo_poll_controller (Jonathan Toppins) [1644403] - [fs] fanotify: fix handling of events on child sub-directory (Miklos Szeredi) [1652432] - [fs] fsnotify: generalize handling of extra event flags (Miklos Szeredi) [1652432] - [netdrv] net: hns3: add common validation in hclge_dcb (Xiaojun Tan) [1640945] - [netdrv] net: hns3: fix for multiple unmapping DMA problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: rename hns_nic_dma_unmap (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add handling for big TX fragment (Xiaojun Tan) [1640945] - [netdrv] net: hns3: move DMA map into hns3_fill_desc (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove hns3_fill_desc_tso (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Resume promisc mode and vlan filter status after loopback test (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Resume promisc mode and vlan filter status after reset (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Enable promisc mode when mac vlan table is full (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for rx vlan id handle to support Rev 0x21 hardware (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add egress/ingress vlan filter for revision 0x21 (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Optimize for unicast mac vlan table (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix loss of coal configuration while doing reset (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Modify hns3_get_max_available_channels (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Change return type of hclge_tm_schd_info_update() (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for netdev not up problem when setting mtu (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for packet buffer setting bug (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Set extra mac address of pause param for HW (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix speed/duplex information loss problem when executing ethtool ethx cmd of VF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add get_media_type ops support for VF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove print messages for error packet (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add nic state check before calling netif_tx_wake_queue (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add handle for default case (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Unify the prefix of vf functions (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix tqp array traversal condition for vf (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix ets validate issue (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix parameter type for q_id in hclge_tm_q_to_qs_map_cfg() (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix client initialize state issue when roce client initialize failed (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Clear client pointer when initialize client failed or unintialize finished (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix cmdq registers initialization issue for vf (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for setting speed for phy failed problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Check hdev state when getting link status (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Set STATE_DOWN bit of hdev state when stopping net (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove packet statistics of public (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove tx budget to clean more TX descriptors in a napi (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Refine hns3_get_link_ksettings() (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove redundant codes of query advertised flow control abilitiy (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Change the dst mac addr of loopback packet (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Only update mac configuation when necessary (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Preserve vlan 0 in hardware table (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix ping exited problem when doing lp selftest (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for loopback selftest failed problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix error of checking used vlan id (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for multicast failure (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for vf vlan delete failed problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: modify variable type in hns3_nic_reuse_page (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add vlan filter setting by ethtool command -K (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Set tx ring' tc info when netdev is up (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix desc num set to default when setting channel (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for information of phydev lost problem when down/up (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add support for serdes loopback selftest (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Refine the MSIX allocation for PF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix MSIX allocation issue for VF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: fix return value error while hclge_cmd_csq_clean failed (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Modify inconsistent bit mask macros (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for using wrong mask and shift in hclge_get_ring_chain_from_mbx (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Correct reset event status register (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Prevent to request reset frequently (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Prevent sending command during global or core reset (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add configure for mac minimal frame size (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for l4 checksum offload bug (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for waterline not setting correctly (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix tc setup when netdev is first up (Xiaojun Tan) [1640945] - [netdrv] net: hns3: modify hnae_ to hnae3_ (Xiaojun Tan) [1640945] - [netdrv] net: hns3: simplify hclge_cmd_csq_clean (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove some redundant assignments (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove back in struct hclge_hw (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add unlikely for error check (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add l4_type check for both ipv4 and ipv6 (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add vector status check before free vector (Xiaojun Tan) [1640945] - [netdrv] net: hns3: rename the interface for init_client_instance and uninit_client_instance (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove hclge_get_vector_index from hclge_bind_ring_with_vector (Xiaojun Tan) [1640945] - [kernel] redhat: Enable -Werror for architectures (Laura Abbott) [1582754] - [drm] drm/atomic_helper: Remove dangling variable (Laura Abbott) [1582754] - [s390] s390/tools: fix gcc 8 stringop-truncation warnings (Laura Abbott) [1582754] - [tty] kgdboc: Fix restrict error (Laura Abbott) [1582754] - [misc] misc: kgdbts: Fix restrict error (Laura Abbott) [1582754] - [scsi] scsi: ibmvscsis: Fix a stringop-overflow warning (Laura Abbott) [1582754] - [s390] s390/extmem: fix gcc 8 stringop-overflow warning (Laura Abbott) [1582754] - [s390] s390/perf: fix gcc 8 array-bounds warning (Laura Abbott) [1582754] - [kernel] kdb: Use strscpy with destination buffer size (Laura Abbott) [1582754] - [fs] configfs: replace strncpy with memcpy (Laura Abbott) [1582754] - [fs] kernfs: Replace strncpy with memcpy (Laura Abbott) [1582754] - [kernel] disable stringop truncation warnings for now (Laura Abbott) [1582754] - [sound] ALSA: intel_hdmi: Use strlcpy() instead of strncpy() (Laura Abbott) [1582754] - [sound] ALSA: trident: Suppress gcc string warning (Laura Abbott) [1582754] - [lib] kobject: Replace strncpy with memcpy (Laura Abbott) [1582754] - [tty] TTY: isdn: Replace strncpy with memcpy (Laura Abbott) [1582754] - [target] scsi: target/iscsi: Make iscsit_ta_authentication() respect the output buffer size (Laura Abbott) [1582754] - [fs] fuse: don't need GETATTR after every READ (Miklos Szeredi) [1650538] - [fs] fuse: allow fine grained attr cache invaldation (Miklos Szeredi) [1650538]- [mm] mm: mremap: properly flush TLB before releasing the page (Rafael Aquini) [1645122] {CVE-2018-18281} - [x86] x86/spec_ctrl: Change default Skylake Spectre v2 mitigation to retpoline (Waiman Long) [1651806] - [fs] gfs2: write revokes should traverse sd_ail1_list in reverse (Andreas Grunbacher) [1652763] - [fs] gfs2: Fix marking bitmaps non-full (Andreas Grunbacher) [1652762] - [fs] GFS2: Flush the GFS2 delete workqueue before stopping the kernel threads (Andreas Grunbacher) [1652761] - [fs] gfs2: Don't leave s_fs_info pointing to freed memory in init_sbd (Andreas Grunbacher) [1652759] - [fs] gfs2: Use fs_* functions instead of pr_* function where we can (Andreas Grunbacher) [1652757] - [fs] gfs2: slow the deluge of io error messages (Andreas Grunbacher) [1652757] - [fs] gfs2_meta: ->mount() can get NULL dev_name (Andreas Grunbacher) [1652754] - [powerpc] powerpc/vdso: Correct call frame information (Steve Best) [1651281] - [i2c] i2c: i801: Add support for Intel Ice Lake (David Arcari) [1637435] - [usb] xhci: Add quirk to workaround the errata seen on Cavium Thunder-X2 Soc (Robert Richter) [1649829] - [x86] x86: numa_emulation: fix uniform-split numa emulation (Rafael Aquini) [1620341] - [x86] x86: numa_emulation: introduce uniform split capability (Rafael Aquini) [1620341] - [kernel] perf/hw_breakpoint: Modify breakpoint even if the new attr has disabled set (Mark Salter) [1643174] - [x86] KVM: vmx: hyper-v: don't pass EPT configuration info to vmx_hv_remote_flush_tlb() (Paolo Bonzini) [1636610] - [x86] KVM: x86: support CONFIG_KVM_AMD=y with CONFIG_CRYPTO_DEV_CCP_DD=m (Paolo Bonzini) [1636610] - [x86] kvm: nVMX: fix entry with pending interrupt if APICv is enabled (Paolo Bonzini) [1636610] - [x86] KVM: VMX: hide flexpriority from guest when disabled at the module level (Paolo Bonzini) [1636610] - [x86] KVM: VMX: check for existence of secondary exec controls before accessing (Paolo Bonzini) [1636610] - [x86] KVM: x86: fix L1TF's MMIO GFN calculation (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: cut down decimal places in update interval dialog (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Fix emulation of VM_ENTRY_LOAD_BNDCFGS (Paolo Bonzini) [1636610] - [x86] KVM: x86: Do not use kvm_x86_ops->mpx_supported() directly (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Do not expose MPX VMX controls when guest MPX disabled (Paolo Bonzini) [1636610] - [x86] KVM: x86: never trap MSR_KERNEL_GS_BASE (Paolo Bonzini) [1636610] - [x86] KVM: LAPIC: Fix pv ipis out-of-bounds access (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Fix loss of pending IRQ/NMI before entering L2 (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: re-animate display of dead guests (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: indicate dead guests as such (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: handle guest removals more gracefully (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: don't reset stats when setting PID filter for debugfs (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: fix updates for dead guests (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: fix handling of invalid paths in debugfs provider (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: fix python3 issues (Paolo Bonzini) [1636610] - [x86] KVM: x86: Unexport x86_emulate_instruction() (Paolo Bonzini) [1636610] - [x86] KVM: x86: Rename emulate_instruction() to kvm_emulate_instruction() (Paolo Bonzini) [1636610] - [x86] KVM: x86: Do not re-{try, execute} after failed emulation in L2 (Paolo Bonzini) [1636610] - [x86] KVM: x86: Default to not allowing emulation retry in kvm_mmu_page_fault (Paolo Bonzini) [1636610] - [x86] KVM: x86: Merge EMULTYPE_RETRY and EMULTYPE_ALLOW_REEXECUTE (Paolo Bonzini) [1636610] - [x86] KVM: x86: Invert emulation re-execute behavior to make it opt-in (Paolo Bonzini) [1636610] - [x86] KVM: x86: SVM: Set EMULTYPE_NO_REEXECUTE for RSM emulation (Paolo Bonzini) [1636610] - [x86] KVM: VMX: Do not allow reexecute_instruction() when skipping MMIO instr (Paolo Bonzini) [1636610] - [x86] KVM: SVM: remove unused variable dst_vaddr_end (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: avoid redundant double assignment of nested_run_pending (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Fix bad cleanup on error of get/set nested state IOCTLs (Paolo Bonzini) [1636610] - [tools] kvm: selftests: Add platform_info_test (Paolo Bonzini) [1636610] - [x86] KVM: x86: Control guest reads of MSR_PLATFORM_INFO (Paolo Bonzini) [1636610] - [x86] KVM: x86: Turbo bits in MSR_PLATFORM_INFO (Paolo Bonzini) [1636610] - [x86] nVMX x86: Check VPID value on vmentry of L2 guests (Paolo Bonzini) [1636610] - [x86] nVMX x86: check posted-interrupt descriptor addresss on vmentry of L2 (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Wake blocked vCPU in guest-mode if pending interrupt in virtual APICv (Paolo Bonzini) [1636610] - [x86] KVM: VMX: check nested state and CR4.VMXE against SMM (Paolo Bonzini) [1636610] - [x86] kvm: x86: make kvm_{load|put}_guest_fpu() static (Paolo Bonzini) [1636610] - [x86] x86/hyper-v: rename ipi_arg_{ex, non_ex} structures (Paolo Bonzini) [1636610] - [x86] KVM: VMX: use preemption timer to force immediate VMExit (Paolo Bonzini) [1636610] - [x86] KVM: VMX: modify preemption timer bit only when arming timer (Paolo Bonzini) [1636610] - [x86] KVM: VMX: immediately mark preemption timer expired only for zero value (Paolo Bonzini) [1636610] - [x86] KVM: SVM: Switch to bitmap_zalloc() (Paolo Bonzini) [1636610] - [lib] bitmap: Add bitmap_alloc(), bitmap_zalloc() and bitmap_free() (Paolo Bonzini) [1636610] - [x86] KVM/MMU: Fix comment in walk_shadow_page_lockless_end() (Paolo Bonzini) [1636610] - [tools] kvm: selftests: use -pthread instead of -lpthread (Paolo Bonzini) [1636610] - [tools] kvm: selftest: add dirty logging test (Paolo Bonzini) [1636610] - [tools] kvm: selftest: pass in extra memory when create vm (Paolo Bonzini) [1636610] - [tools] kvm: selftest: include the tools headers (Paolo Bonzini) [1636610] - [tools] kvm: selftest: unify the guest port macros (Paolo Bonzini) [1636610] - [x86] KVM: x86: don't reset root in kvm_mmu_setup() (Paolo Bonzini) [1636610] - [x86] kvm: mmu: Don't read PDPTEs when paging is not enabled (Paolo Bonzini) [1636610] - [x86] x86/kvm/lapic: always disable MMIO interface in x2APIC mode (Paolo Bonzini) [1636610] - [s390] KVM: s390: Make huge pages unavailable in ucontrol VMs (Paolo Bonzini) [1636610] - [s390] s390/mm: Check for valid vma before zapping in gmap_discard (Paolo Bonzini) [1636610] - [tools] selftests: add headers_install to lib.mk (Paolo Bonzini) [1636610] - [tools] selftests: kselftest: Remove outdated comment (Paolo Bonzini) [1636610] - [tools] selftests: android: move config up a level (Paolo Bonzini) [1636610] - [md] md: Avoid namespace collision with bitmap API (Paolo Bonzini) [1636610]- [cpufreq] cpufreq / CPPC: Add cpuinfo_cur_freq support for CPPC (Prarit Bhargava) [1654361] - [netdrv] nfp: flower: add ipv6 set flow label and hop limit offload (Pablo Cascon) [1651639] - [netdrv] nfp: flower: add ipv4 set ttl and tos offload (Pablo Cascon) [1651639] - [netdrv] ibmvnic: Update driver queues after change in ring size support (Steve Best) [1651947] - [netdrv] ibmvnic: Fix RX queue buffer cleanup (Steve Best) [1651947] - [netdrv] net/ibmnvic: Fix deadlock problem in reset (Steve Best) [1651947] - [netdrv] ibmvnic: fix accelerated VLAN handling (Steve Best) [1651947] - [netdrv] ibmvnic: Add ethtool private flag for driver-defined queue limits (Steve Best) [1651947] - [netdrv] ibmvnic: Introduce driver limits for ring sizes (Steve Best) [1651947] - [netdrv] ibmvnic: Increase maximum queue size limit (Steve Best) [1651947] - [netdrv] ibmvnic: remove ndo_poll_controller (Steve Best) [1651947] - [powerpc] powerpc/powernv/npu: Remove atsd_threshold debugfs setting (Steve Best) [1653661] - [powerpc] powerpc/powernv/npu: Use size-based ATSD invalidates (Steve Best) [1653661] - [powerpc] powerpc/powernv/npu: Reduce eieio usage when issuing ATSD invalidates (Steve Best) [1653661] - [powerpc] powerpc/powernv/npu: Add a debugfs setting to change ATSD threshold (Steve Best) [1653661] - [net] libceph: fall back to sendmsg for slab pages (Ilya Dryomov) [1653395] - [s390] s390/qeth: utilize virtual MAC for Layer2 OSD devices (Philipp Rudo) [1653246] - [fs] vfs: fix FIGETBSZ ioctl on an overlayfs file (Miklos Szeredi) [1651362] - [fs] ovl: fix decode of dir file handle with multi lower layers (Miklos Szeredi) [1651362] - [fs] ovl: fix missing override creds in link of a metacopy upper (Miklos Szeredi) [1651362] - [fs] ovl: automatically enable redirect_dir on metacopy=on (Miklos Szeredi) [1651362] - [fs] ovl: check whiteout in ovl_create_over_whiteout() (Miklos Szeredi) [1651362] - [fs] ovl: fix recursive oi->lock in ovl_link() (Miklos Szeredi) [1651362] - [fs] ovl: fix error handling in ovl_verify_set_fh() (Miklos Szeredi) [1651362] - [mm] mm, memory_hotplug: check zone_movable in has_unmovable_pages (Baoquan He) [1643839] - [netdrv] hv_netvsc: fix vf serial matching with pci slot info (Vitaly Kuznetsov) [1637519] - [netdrv] hv_netvsc: remove ndo_poll_controller (Vitaly Kuznetsov) [1637519] - [netdrv] hv_netvsc: pair VF based on serial number (Vitaly Kuznetsov) [1637519] - [netdrv] hv_netvsc: fix schedule in RCU context (Vitaly Kuznetsov) [1637519] - [pci] PCI: hv: Fix return value check in hv_pci_assign_slots() (Vitaly Kuznetsov) [1637519] - [pci] PCI: hv: support reporting serial number as slot information (Vitaly Kuznetsov) [1637519] - [pci] PCI: hv: Replace GFP_ATOMIC with GFP_KERNEL in new_pcichild_device() (Vitaly Kuznetsov) [1637519] - [char] ipmi: Fix timer race with module unload (Robert Richter) [1649812] - [arm64] arm64: hugetlb: Avoid unnecessary clearing in huge_ptep_set_access_flags (Christoph von Recklinghausen) [1635192] - [arm64] arm64: hugetlb: Fix handling of young ptes (Christoph von Recklinghausen) [1635192] - [mm] mm: Preserve _PAGE_DEVMAP across mprotect() calls (Jeff Moyer) [1647647]- [crypto] crypto: vmx - Fix sleep-in-atomic bugs (Steve Best) [1653662] - [netdrv] net: ena: update driver version from 2.0.1 to 2.0.2 (John Linville) [1634044] - [netdrv] net: ena: fix crash during ena_remove() (John Linville) [1634044] - [netdrv] net: ena: fix crash during failed resume from hibernation (John Linville) [1634044] - [netdrv] net: ena: enable CONFIG_ENA_ETHERNET for aarch64 (John Linville) [1634044] - [netdrv] net: ena: enable Low Latency Queues (John Linville) [1634044] - [netdrv] net: ena: Fix Kconfig dependency on X86 (John Linville) [1634044] - [netdrv] net: ena: fix indentations in ena_defs for better readability (John Linville) [1634044] - [netdrv] net: ena: update driver version to 2.0.1 (John Linville) [1634044] - [netdrv] net: ena: remove redundant parameter in ena_com_admin_init() (John Linville) [1634044] - [netdrv] net: ena: change rx copybreak default to reduce kernel memory pressure (John Linville) [1634044] - [netdrv] net: ena: limit refill Rx threshold to 256 to avoid latency issues (John Linville) [1634044] - [netdrv] net: ena: explicit casting and initialization, and clearer error handling (John Linville) [1634044] - [netdrv] net: ena: use CSUM_CHECKED device indication to report skb's checksum status (John Linville) [1634044] - [netdrv] net: ena: add functions for handling Low Latency Queues in ena_netdev (John Linville) [1634044] - [netdrv] net: ena: add functions for handling Low Latency Queues in ena_com (John Linville) [1634044] - [netdrv] net: ena: introduce Low Latency Queues data structures according to ENA spec (John Linville) [1634044] - [netdrv] net: ena: complete host info to match latest ENA spec (John Linville) [1634044] - [netdrv] net: ena: minor performance improvement (John Linville) [1634044] - [netdrv] net: ena: fix auto casting to boolean (John Linville) [1634044] - [netdrv] net: ena: fix NULL dereference due to untimely napi initialization (John Linville) [1634044] - [netdrv] net: ena: fix rare bug when failed restart/resume is followed by driver removal (John Linville) [1634044] - [netdrv] net: ena: fix warning in rmmod caused by double iounmap (John Linville) [1634044] - [netdrv] net: ena: remove ndo_poll_controller (John Linville) [1634044] - [netdrv] net: ena: fix incorrect usage of memory barriers (John Linville) [1634044] - [netdrv] net: ena: fix missing calls to READ_ONCE (John Linville) [1634044] - [netdrv] net: ena: fix missing lock during device destruction (John Linville) [1634044] - [netdrv] net: ena: fix potential double ena_destroy_device() (John Linville) [1634044] - [netdrv] net: ena: fix device destruction to gracefully free resources (John Linville) [1634044] - [netdrv] net: ena: fix driver when PAGE_SIZE == 64kB (John Linville) [1634044] - [netdrv] net: ena: fix surprise unplug NULL dereference kernel crash (John Linville) [1634044] - [s390] s390/zcrypt: reinit ap queue state machine during device probe (Philipp Rudo) [1653668] - [s390] s390/kdump: Make elfcorehdr size calculation ABI compliant (Philipp Rudo) [1653245] - [s390] s390/kdump: Fix elfcorehdr size calculation (Philipp Rudo) [1653245] - [block] block: fix 32 bit overflow in __blkdev_issue_discard() (Ming Lei) [1638826] - [ata] libata: blacklist SAMSUNG MZ7TD256HAFV-000L9 SSD (Ming Lei) [1638826] - [block] block: copy ioprio in __bio_clone_fast() and bounce (Ming Lei) [1638826] - [trace] kyber: fix wrong strlcpy() size in trace_kyber_latency() (Ming Lei) [1638826] - [block] floppy: fix race condition in __floppy_read_block_0() (Ming Lei) [1638826] - [block] block: make blk_try_req_merge() static (Ming Lei) [1638826] - [block] block: remove dead queue members (Ming Lei) [1638826] - [block] block: clean up dead code that is now redundant (Ming Lei) [1638826] - [nvme] nvme: fix boot hang with only being able to get one IRQ vector (Ming Lei) [1638826] - [block] ide: don't clear special on ide_queue_rq() entry (Ming Lei) [1638826] - [block] null_blk: remove unused nullb device (Ming Lei) [1638826] - [block] ide: don't use req->special (Ming Lei) [1638826] - [block] pd: replace ->special use with private data in the request (Ming Lei) [1638826] - [block] aoe: replace ->special use with private data in the request (Ming Lei) [1638826] - [block] skd_main: don't use req->special (Ming Lei) [1638826] - [block] nullb: remove leftover legacy request code (Ming Lei) [1638826] - [scsi] fnic: fix fnic_scsi_host_{start,end}_tag (Ming Lei) [1638826] - [block] block: remove set but not used variable 'et' (Ming Lei) [1638826] - [block] block: remove the BLKPREP_* values. (Ming Lei) [1638826] - [scsi] scsi: return blk_status_t from device handler ->prep_fn (Ming Lei) [1638826] - [scsi] scsi: return blk_status_t from scsi_init_io and ->init_command (Ming Lei) [1638826] - [scsi] scsi: clean up error handling in scsi_init_io (Ming Lei) [1638826] - [scsi] scsi: push blk_status_t up into scsi_setup_{fs,scsi}_cmnd (Ming Lei) [1638826] - [scsi] scsi: simplify scsi_prep_state_check (Ming Lei) [1638826] - [block] ide: cleanup ->prep_rq calling convention (Ming Lei) [1638826] - [block] block: remove req->timeout_list (Ming Lei) [1638826] - [block] blk-mq: provide a helper to check if a queue is busy (Ming Lei) [1638826] - [block] blk-mq-tag: change busy_iter_fn to return whether to continue or not (Ming Lei) [1638826] - [block] ms_block: remove unused pointer 'set' (Ming Lei) [1638826] - [block] sunvdc: fix compiler warning (Ming Lei) [1638826] - [nvme] nvme: add separate poll queue map (Ming Lei) [1638826] - [block] block: add REQ_HIPRI and inherit it from IOCB_HIPRI (Ming Lei) [1638826] - [nvme] nvme: utilize two queue maps, one for reads and one for writes (Ming Lei) [1638826] - [block] blk-mq: initial support for multiple queue maps (Ming Lei) [1638826] - [block] blk-mq: improve plug list sorting (Ming Lei) [1638826] - [block] blk-mq: cleanup and improve list insertion (Ming Lei) [1638826] - [block] blk-mq: cache request hardware queue mapping (Ming Lei) [1638826] - [block] blk-mq: separate number of hardware queues from nr_cpu_ids (Ming Lei) [1638826] - [block] blk-mq: support multiple hctx maps (Ming Lei) [1638826] - [block] blk-mq: add 'type' attribute to the sysfs hctx directory (Ming Lei) [1638826] - [block] blk-mq: allow software queue to map to multiple hardware queues (Ming Lei) [1638826] - [block] blk-mq: pass in request/bio flags to queue mapping (Ming Lei) [1638826] - [block] blk-mq: provide dummy blk_mq_map_queue_type() helper (Ming Lei) [1638826] - [block] blk-mq: abstract out queue map (Ming Lei) [1638826] - [block] blk-mq: kill q->mq_map (Ming Lei) [1638826] - [kernel] genirq/affinity: Add support for allocating interrupt sets (Ming Lei) [1638826] - [kernel] genirq/affinity: Pass first vector to __irq_build_affinity_masks() (Ming Lei) [1638826] - [kernel] genirq/affinity: Move two stage affinity spreading into a helper function (Ming Lei) [1638826] - [kernel] genirq/affinity: Spread IRQs to all available NUMA nodes (Ming Lei) [1638826] - [block] block: kill request ->cpu member (Ming Lei) [1638826] - [block] block: get rid of q->softirq_done_fn() (Ming Lei) [1638826] - [block] block: get rid of blk_queued_rq() (Ming Lei) [1638826] - [block] blk-merge: kill dead queue lock held check (Ming Lei) [1638826] - [block] block: remove req_no_special_merge() from merging code (Ming Lei) [1638826] - [block] block: kill request slab cache (Ming Lei) [1638826] - [block] block: remove request_list code (Ming Lei) [1638826] - [block] bsg: move bsg-lib parts outside of request queue (Ming Lei) [1638826] - [block] block: kill legacy parts of timeout handling (Ming Lei) [1638826] - [block] block: remove __blk_put_request() (Ming Lei) [1638826] - [block] block: get rid of MQ scheduler ops union (Ming Lei) [1638826] - [block] block: remove dead elevator code (Ming Lei) [1638826] - [block] block: remove legacy IO schedulers (Ming Lei) [1638826] - [block] block: cleanup kick/queued handling (Ming Lei) [1638826] - [block] block: remove non mq parts from the flush code (Ming Lei) [1638826] - [block] block: remove legacy rq tagging (Ming Lei) [1638826] - [block] blk-cgroup: remove legacy queue bypassing (Ming Lei) [1638826] - [block] blk-wbt: kill check for legacy queue type (Ming Lei) [1638826] - [block] block: remove blk_complete_request() (Ming Lei) [1638826] - [block] bsg: convert to use blk-mq (Ming Lei) [1638826] - [block] bsg: provide bsg_remove_queue() helper (Ming Lei) [1638826] - [block] bsg: pass in desired timeout handler (Ming Lei) [1638826] - [s390] dasd: remove dead code (Ming Lei) [1638826] - [block] block: remove q->lld_busy_fn() (Ming Lei) [1638826] - [scsi] scsi: kill off the legacy IO path (Ming Lei) [1638826] - [scsi] scsi: provide mq_ops->busy() hook (Ming Lei) [1638826] - [block] blk-mq: provide mq_ops->busy() hook (Ming Lei) [1638826] - [block] blk-mq: remove legacy check in queue blk_freeze_queue() (Ming Lei) [1638826] - [block] blk-mq: remove the request_list usage (Ming Lei) [1638826] - [block] ide: convert to blk-mq (Ming Lei) [1638826] - [block] mspro_block: convert to blk-mq (Ming Lei) [1638826] - [block] ms_block: convert to blk-mq (Ming Lei) [1638826] - [block] sunvdc: convert to blk-mq (Ming Lei) [1638826] - [block] null_blk: Add conventional zone configuration for zoned support (Ming Lei) [1638826] - [ata] libata: Apply NOLPM quirk for SAMSUNG MZ7TD256HAFV-000L9 (Ming Lei) [1638826] - [block] block, bfq: fix asymmetric scenarios detection (Ming Lei) [1638826] - [cdrom] gdrom: fix mistake in assignment of error (Ming Lei) [1638826] - [block] blk-mq: place trace_block_getrq() in correct place (Ming Lei) [1638826] - [block] block: Introduce blk_revalidate_disk_zones() (Ming Lei) [1638826] - [block] block: add a report_zones method (Ming Lei) [1638826] - [block] block: Expose queue nr_zones in sysfs (Ming Lei) [1638826] - [block] block: Improve zone reset execution (Ming Lei) [1638826] - [block] block: Introduce BLKGETNRZONES ioctl (Ming Lei) [1638826] - [block] block: Introduce BLKGETZONESZ ioctl (Ming Lei) [1638826] - [block] block: Limit allocation of zone descriptors for report zones (Ming Lei) [1638826] - [block] block: Introduce blkdev_nr_zones() helper (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Fix sd_zbc_check_zones() error checks (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Reduce boot device scan and revalidate time (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Rearrange code (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Remove an assignment from sd_zbc_setup_report_cmnd() (Ming Lei) [1638826] - [scsi] scsi: sd: don't crash the host on invalid commands (Ming Lei) [1638826] - [pci] PCI/MSI: Warn and return error if driver enables MSI/MSI-X twice (Ming Lei) [1638826] - [fs] f2fs: remove request_list check in is_idle() (Ming Lei) [1638826] - [scsi] scsi: osd: initiator should use mq variant of request ending (Ming Lei) [1638826] - [scsi] scsi: fnic: replace gross legacy tag hack with blk-mq hack (Ming Lei) [1638826] - [infiniband] ib_srp: Remove WARN_ON in srp_terminate_io() (Ming Lei) [1638826] - [scsi] scsi: ufs: Disable blk-mq for now (Ming Lei) [1638826] - [block] sx8: convert to blk-mq (Ming Lei) [1638826] - [block] z2ram: convert to blk-mq (Ming Lei) [1638826] - [cdrom] gdrom: convert to blk-mq (Ming Lei) [1638826] - [block] floppy: convert to blk-mq (Ming Lei) [1638826] - [block] ataflop: convert to blk-mq (Ming Lei) [1638826] - [block] ataflop: fix error handling during setup (Ming Lei) [1638826] - [block] ataflop: fold headers into C file (Ming Lei) [1638826] - [block] amiflop: convert to blk-mq (Ming Lei) [1638826] - [block] amiflop: clean up on errors during setup (Ming Lei) [1638826] - [block] amiflop: fold headers into C file (Ming Lei) [1638826] - [block] swim3: convert to blk-mq (Ming Lei) [1638826] - [block] swim3: add real error handling in setup (Ming Lei) [1638826] - [block] swim: convert to blk-mq (Ming Lei) [1638826] - [block] swim: fix cleanup on setup error (Ming Lei) [1638826] - [mtd] mtd_blkdevs: convert to blk-mq (Ming Lei) [1638826] - [block] xsysace: convert to blk-mq (Ming Lei) [1638826] - [block] paride: convert pf to blk-mq (Ming Lei) [1638826] - [block] paride: convert pd to blk-mq (Ming Lei) [1638826] - [block] paride: convert pcd to blk-mq (Ming Lei) [1638826] - [block] ps3disk: convert to blk-mq (Ming Lei) [1638826] - [block] blk-mq: provide helper for setting up an SQ queue and tag set (Ming Lei) [1638826] - [block] null_blk: remove set but not used variable 'q' (Ming Lei) [1638826] - [cdrom] cdrom: don't attempt to fiddle with cdo->capability (Ming Lei) [1638826] - [block] block: remove bogus check for queue_lock assignment (Ming Lei) [1638826] - [block] null_blk: remove legacy IO path (Ming Lei) [1638826] - [block] um: Convert ubd driver to blk-mq (Ming Lei) [1638826] - [block] skd: fixup usage of legacy IO API (Ming Lei) [1638826] - [block] aoe: convert aoeblk to blk-mq (Ming Lei) [1638826] - [block] ide: remove redundant variables queue_run_ms and left (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion convert BUGs to WARNs (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion hints on fastpath (Ming Lei) [1638826] - [scsi] scsi: core: add scsi_io_completion_reprep helper (Ming Lei) [1638826] - [scsi] scsi: core: add scsi_io_completion_action helper (Ming Lei) [1638826] - [scsi] scsi: core: add scsi_io_completion_nz_result function (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion: rename variables (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion: comment on end_request return (Ming Lei) [1638826] - [scsi] scsi: core: use blk_mq_run_hw_queues in scsi_kick_queue (Ming Lei) [1638826] - [scsi] scsi: sg: remove bad blk_end_request_all() call (Ming Lei) [1638826] - [block] blk-mq: complete req in softirq context in case of single queue (Ming Lei) [1638826] - [block] block, bfq: improve asymmetric scenarios detection (Ming Lei) [1638826] - [block] block: remove redundant 'default n' from Kconfig-s (Ming Lei) [1638826] - [block] blk-mq-debugfs: Also show requests that have not yet been started (Ming Lei) [1638826] - [block] block: Finish renaming REQ_DISCARD into REQ_OP_DISCARD (Ming Lei) [1638826] - [block] kyber: fix integer overflow of latency targets on 32-bit (Ming Lei) [1638826] - [block] kyber: add tracepoints (Ming Lei) [1638826] - [block] kyber: implement improved heuristics (Ming Lei) [1638826] - [block] kyber: don't make domain token sbitmap larger than necessary (Ming Lei) [1638826] - [block] block: export blk_stat_enable_accounting() (Ming Lei) [1638826] - [block] block: move call of scheduler's ->completed_request() hook (Ming Lei) [1638826] - [block] blk-mq: Enable support for runtime power management (Ming Lei) [1638826] - [block] block: Make blk_get_request() block for non-PM requests while suspended (Ming Lei) [1638826] - [block] block: Allow unfreezing of a queue while requests are in progress (Ming Lei) [1638826] - [lib] percpu-refcount: Introduce percpu_ref_resurrect() (Ming Lei) [1638826] - [block] block: Schedule runtime resume earlier (Ming Lei) [1638826] - [block] block: Split blk_pm_add_request() and blk_pm_put_request() (Ming Lei) [1638826] - [block] block, scsi: Change the preempt-only flag into a counter (Ming Lei) [1638826] - [block] block: Move power management code into a new source file (Ming Lei) [1638826] - [block] Blk-throttle: update to use rbtree with leftmost node cached (Ming Lei) [1638826] - [block] block: use bio_add_page in bio_iov_iter_get_pages (Ming Lei) [1638826] - [block] blok, bfq: do not plug I/O if all queues are weight-raised (Ming Lei) [1638826] - [block] block, bfq: inject other-queue I/O into seeky idle queues on NCQ flash (Ming Lei) [1638826] - [block] block, bfq: correctly charge and reset entity service in all cases (Ming Lei) [1638826]- [rpmspec] redhat: fix bpf_samples build (Jiri Benc) [1611579] - [fs] mnt: fix __detach_mounts infinite loop (Benjamin Coddington) [1628736] - [pci] pcie: Enable Broadom iProc PCIE and mark it is as tech preview (Mark Langsdorf) [1576958] - [pci] PCI/ACPI: Add iProc PCIe MCFG quirk (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Add ACPI/ECAM support (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Remove PAXC slot check to allow VF support (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Reduce inbound/outbound mapping print level (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Reject unconfigured physical functions from PAXC (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Disable MSI parsing in certain PAXC blocks (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Fix up corrupted PAXC root complex config registers (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Activate PAXC bridge quirk for more devices (Mark Langsdorf) [1576958]- [s390] s390/mm: fix mis-accounting of pgtable_bytes (Joe Lawrence) [1644481] - [mm] mm: add mm_pxd_folded checks to pgtable_bytes accounting functions (Joe Lawrence) [1644481] - [mm] mm: introduce mm_[p4d|pud|pmd]_folded (Joe Lawrence) [1644481] - [mm] mm: make the __PAGETABLE_PxD_FOLDED defines non-empty (Joe Lawrence) [1644481] - [x86] x86/cpu/vmware: Do not trace vmware_sched_clock() (Vitaly Kuznetsov) [1650273] - [fs] fuse: fix possibly missed wake-up after abort (Lukas Czerner) [1649244] - [fs] fuse: fix leaked notify reply (Lukas Czerner) [1649244] - [fs] fuse: fix blocked_waitq wakeup (Lukas Czerner) [1649244] - [fs] fuse: set FR_SENT while locked (Lukas Czerner) [1649244] - [fs] fuse: Fix use-after-free in fuse_dev_do_write() (Lukas Czerner) [1649244] - [fs] fuse: Fix use-after-free in fuse_dev_do_read() (Lukas Czerner) [1649244] - [fs] fuse: Add missed unlock_page() to fuse_readpages_fill() (Lukas Czerner) [1649244] - [fs] fuse: Don't access pipe->buffers without pipe_lock() (Lukas Czerner) [1649244] - [fs] fuse: fix initial parallel dirops (Lukas Czerner) [1649244] - [fs] fuse: Fix oops at process_init_reply() (Lukas Czerner) [1649244] - [fs] fuse: umount should wait for all requests (Lukas Czerner) [1649244] - [fs] fuse: fix unlocked access to processing queue (Lukas Czerner) [1649244] - [fs] fuse: fix double request_end() (Lukas Czerner) [1649244] - [fs] fuse: fix use-after-free in fuse_direct_IO() (Lukas Czerner) [1599195]- [firmware] efi: Fix debugobjects warning on 'efi_rts_work' (Waiman Long) [1652190] - [rpmspec] kernel.spec: Do not zip modules on noarch builds (Prarit Bhargava) [1646471] - [iommu] iommu/amd: Clear memory encryption mask from physical address (Gary Hook) [1640384]- [powerpc] powerpc/mm/radix: Only need the Nest MMU workaround for R -> RW transition (Steve Best) [1651276] - [powerpc] powerpc/mm/books3s: Add new pte bit to mark pte temporarily invalid (Steve Best) [1651276] - [powerpc] powerpc/tm: Fix HFSCR bit for no suspend case (Steve Best) [1651275]- [powerpc] powerpc/powernv: Fix concurrency issue with npu->mmio_atsd_usage (Steve Best) [1651267] - [tools] perf tools: Remove ext from struct kmod_path (Jiri Olsa) [1581390] - [tools] perf tools: Add gzip_is_compressed function (Jiri Olsa) [1581390] - [tools] perf tools: Add lzma_is_compressed function (Jiri Olsa) [1581390] - [tools] perf tools: Add is_compressed callback to compressions array (Jiri Olsa) [1581390] - [tools] perf tools: Move the temp file processing into decompress_kmodule (Jiri Olsa) [1581390] - [tools] perf tools: Use compression id in decompress_kmodule() (Jiri Olsa) [1581390] - [tools] perf tools: Store compression id into struct dso (Jiri Olsa) [1581390] - [tools] perf tools: Add compression id into 'struct kmod_path' (Jiri Olsa) [1581390] - [tools] perf tools: Make is_supported_compression() static (Jiri Olsa) [1581390] - [tools] perf tools: Make decompress_to_file() function static (Jiri Olsa) [1581390] - [tools] perf tools: Get rid of dso__needs_decompress() call in __open_dso() (Jiri Olsa) [1581390] - [tools] perf tools: Get rid of dso__needs_decompress() call in symbol__disassemble() (Jiri Olsa) [1581390] - [tools] perf tools: Get rid of dso__needs_decompress() call in read_object_code() (Jiri Olsa) [1581390] - [rpmspec] redhat: Enable kernel-tools (for kvm_stat) on s390x, too (Thomas Huth) [1631222]- [drm] drm/atomic_helper: Stop modesets on unregistered connectors harder (Lyude Paul) [1631575] - [drm] drm/nouveau: Fix nv50_mstc->best_encoder() (Lyude Paul) [1631575] - [drm] drm/atomic_helper: Allow DPMS On<->Off changes for unregistered connectors (Lyude Paul) [1631575] - [drm] drm/i915: Fix intel_dp_mst_best_encoder() (Lyude Paul) [1631575] - [drm] drm/i915: Skip vcpi allocation for MSTB ports that are gone (Lyude Paul) [1631575] - [drm] drm/i915: Don't unset intel_connector->mst_port (Lyude Paul) [1631575] - [drm] drm/atomic_helper: Disallow new modesets on unregistered connectors (Lyude Paul) [1631575] - [s390] s390/qeth: fix HiperSockets sniffer (Philipp Rudo) [1649773] - [s390] s390/qeth: report 25Gbit link speed (Philipp Rudo) [1649772] - [s390] s390/qeth: sanitize strings in debug messages (Philipp Rudo) [1649770] - [s390] s390/qeth: fix initial operstate (Philipp Rudo) [1649769] - [s390] s390/qeth: unregister netdevice only when registered (Philipp Rudo) [1649769] - [powerpc] powerpc/64s: consolidate MCE counter increment (Steve Best) [1633550] - [powerpc] powerpc/64s: move machine check SLB flushing to mm/slb.c (Steve Best) [1633550] - [powerpc] powernv/pseries: consolidate code for mce early handling (Steve Best) [1633550] - [powerpc] powerpc/pseries: Dump the SLB contents on SLB MCE errors (Steve Best) [1633550] - [powerpc] powerpc/pseries: Display machine check error details (Steve Best) [1633550] - [powerpc] powerpc/pseries: Flush SLB contents on SLB MCE errors (Steve Best) [1633550] - [powerpc] powerpc/pseries: Define MCE error event section (Steve Best) [1633550] - [powerpc] powerpc/pseries: Avoid using the size greater than RTAS_ERROR_LOG_MAX (Steve Best) [1633550] - [powerpc] powerpc/pseries: Defer the logging of rtas error to irq work queue (Steve Best) [1633550] - [powerpc] powerpc/pseries: Fix endianness while restoring of r3 in MCE handler (Steve Best) [1633550] - [cdrom] cdrom: fix improper type cast, which can leat to information leak (Maurizio Lombardi) [1650476]- [drm] drm/amdgpu/pm: Fix potential Spectre v1 (Rob Clark) [1637115] - [drm] drm/i915/kvmgt: Fix potential Spectre v1 (Rob Clark) [1637115] - [fs] gfs2: Fix metadata read-ahead during truncate (2) (Andreas Grunbacher) [1647982] - [block] block: make sure writesame bio is aligned with logical block size (Ming Lei) [1648750] - [block] block: cleanup __blkdev_issue_discard() (Ming Lei) [1648750] - [block] block: make sure discard bio is aligned with logical block size (Ming Lei) [1648750] - [block] block: Clear kernel memory before copying to user (Ming Lei) [1648752] - [block] block: respect virtual boundary mask in bvecs (Ming Lei) [1648756] - [block] xen: don't include from and (Ming Lei) [1648756] - [block] block: remove ARCH_BIOVEC_PHYS_MERGEABLE (Ming Lei) [1648756] - [block] xen: provide a prototype for xen_biovec_phys_mergeable in xen.h (Ming Lei) [1648756] - [block] xen: remove the xen_biovec_phys_mergeable export (Ming Lei) [1648756] - [block] arm: remove the unused BIOVEC_MERGEABLE define (Ming Lei) [1648756] - [block] block: don't include bug.h from bio.h (Ming Lei) [1648756] - [block] block: don't include io.h from bio.h (Ming Lei) [1648756] - [block] block: remove bvec_to_phys (Ming Lei) [1648756] - [block] block: merge BIOVEC_SEG_BOUNDARY into biovec_phys_mergeable (Ming Lei) [1648756] - [block] block: add a missing BIOVEC_SEG_BOUNDARY check in bio_add_pc_page (Ming Lei) [1648756] - [block] block: simplify BIOVEC_PHYS_MERGEABLE (Ming Lei) [1648756] - [block] block: move req_gap_back_merge to blk.h (Ming Lei) [1648756] - [block] block: move req_gap_{back,front}_merge to blk-merge.c (Ming Lei) [1648756] - [block] block: move integrity_req_gap_{back,front}_merge to blk.h (Ming Lei) [1648756] - [fs] gfs2: Fix iomap buffer head reference counting bug (Andreas Grunbacher) [1647073] - [scsi] qla2xxx: Update driver version to 10.00.00.07.08.0-k1 (Himanshu Madhani) [1615896] - [scsi] scsi: qla2xxx: Initialize port speed to avoid setting lower speed (Himanshu Madhani) [1615896] - [scsi] scsi: qla2xxx: Fix incorrect port speed being set for FC adapters (Himanshu Madhani) [1615896] - [block] block: brd: associate with queue until adding disk (Ming Lei) [1644602] - [block] block: call rq_qos_exit() after queue is frozen (Ming Lei) [1641558] - [block] block: fix the DISCARD request merge (Ming Lei) [1646776] - [block] blk-mq: fallback to previous nr_hw_queues when updating fails (Ming Lei) [1642218] - [block] blk-mq: realloc hctx when hw queue is mapped to another node (Ming Lei) [1642218] - [block] blk-mq: change gfp flags to GFP_NOIO in blk_mq_realloc_hw_ctxs (Ming Lei) [1642218] - [block] blk-mq: adjust debugfs and sysfs register when updating nr_hw_queues (Ming Lei) [1642218] - [block] block: remove bio_rewind_iter() (Ming Lei) [1642208]- [fs] jbd2: fix use after free in jbd2_log_do_checkpoint() (Lukas Czerner) [1644694] - [fs] ext4: initialize retries variable in ext4_da_write_inline_data_begin() (Lukas Czerner) [1644694] - [fs] ext4: fix build error when DX_DEBUG is defined (Lukas Czerner) [1644694]- [pinctrl] pinctrl: intel: Add Ice Lake PCH pin controller support (David Arcari) [1483413] - [netdrv] nfp: flower: fix vlan match by checking both vlan id and vlan pcp (Pablo Cascon) [1645220] - [netdrv] nfp: flower: reject tunnel encap with ipv6 outer headers for offloading (Pablo Cascon) [1646644] - [netdrv] nfp: populate bus-info on representors (Pablo Cascon) [1643998] - [powerpc] KVM: PPC: Validate TCEs against preregistered memory page sizes (David Gibson) [1625821] - [powerpc] KVM: PPC: Inform the userspace about TCE update failures (David Gibson) [1625821] - [powerpc] KVM: PPC: Book3S: Fix guest DMA when guest partially backed by THP pages (David Gibson) [1625821]- [kernel] locking/lockdep: Fix debug_locks off performance problem (Waiman Long) [1647560] - [kernel] locking/lockdep: Remove duplicated 'lock_class_ops' percpu array (Waiman Long) [1647560] - [kernel] locking/lockdep: Make class->ops a percpu counter and move it under CONFIG_DEBUG_LOCKDEP=y (Waiman Long) [1647560] - [kernel] locking/lockdep: Add a faster path in __lock_release() (Waiman Long) [1647560] - [kernel] locking/lockdep: Eliminate redundant IRQs check in __lock_acquire() (Waiman Long) [1647560] - [kernel] locking/lockdep: Remove add_chain_cache_classes() (Waiman Long) [1647560] - [fs] gfs2: Put bitmap buffers in put_super (Andreas Grunbacher) [1647073] - [scsi] scsi: hpsa: limit transfer length to 1MB, not 512kB (Joseph Szczypek) [1643956] - [netdrv] nfp: report FW vNIC stats in interface stats (Pablo Cascon) [1645032] - [rpmspec] spec: Add bpftool debuginfo package (Jiri Olsa) [1633018] - [crypto] crypto: chelsio: Fix memory corruption in DMA Mapped buffers (Arjun Vynipadath) [1631750] - [cdrom] cdrom: Fix info leak/OOB read in cdrom_ioctl_drive_status (Maurizio Lombardi) [1627732] {CVE-2018-16658}- [kernel] srcu: Make early-boot call_srcu() reuse workqueue lists (Waiman Long) [1644375] - [tools] rcutorture: Test early boot call_srcu() (Waiman Long) [1644375] - [kernel] srcu: Make call_srcu() available during very early boot (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_state.ofl_lock to raw_spinlock_t (Waiman Long) [1644375] - [kernel] rcu: Remove obsolete ->dynticks_fqs and ->cond_resched_completed (Waiman Long) [1644375] - [kernel] rcu: Switch ->dynticks to rcu_data structure, remove rcu_dynticks (Waiman Long) [1644375] - [kernel] rcu: Switch dyntick nesting counters to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch urgent quiescent-state requests to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch lazy counts to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch last accelerate/advance to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch ->tick_nohz_enabled_snap to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Merge rcu_dynticks structure into rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Remove unused rcu_dynticks_snap() from Tiny RCU (Waiman Long) [1644375] - [kernel] rcu: Convert "1UL << x" to "BIT(x)" (Waiman Long) [1644375] - [kernel] rcu: Avoid resched_cpu() when rescheduling the current CPU (Waiman Long) [1644375] - [kernel] rcu: More aggressively enlist scheduler aid for nohz_full CPUs (Waiman Long) [1644375] - [kernel] rcu: Compute jiffies_till_sched_qs from other kernel parameters (Waiman Long) [1644375] - [kernel] rcu: Provide functions for determining if call_rcu() has been invoked (Waiman Long) [1644375] - [kernel] rcu: Eliminate ->rcu_qs_ctr from the rcu_dynticks structure (Waiman Long) [1644375] - [kernel] rcu: Motivate Tiny RCU forward progress (Waiman Long) [1644375] - [kernel] rcutorture: Dump reader protection sequence if failures or close calls (Waiman Long) [1644375] - [kernel] rcu: Provide improved interrupt-from-idle check in rcu_check_callbacks() (Waiman Long) [1644375] - [kernel] rcu: Make need_resched() respond to urgent RCU-QS needs (Waiman Long) [1644375] - [kernel] rcu: Inline _rcu_barrier() into its sole remaining caller (Waiman Long) [1644375] - [kernel] rcu: Define rcu_all_qs() only in !PREEMPT builds (Waiman Long) [1644375] - [kernel] rcu: Remove !PREEMPT code from rcu_note_voluntary_context_switch() (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in update.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tree_plugin.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tree_exp.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tree.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tiny.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in srcutree.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcutorture.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcu.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in Kconfig (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcupdate_wait.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rculist.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcupdate.h (Waiman Long) [1644375] - [kernel] rcu: Remove now-unused rcutorture APIs (Waiman Long) [1644375] - [kernel] rcuperf: Remove the "rcu_bh" and "sched" torture types (Waiman Long) [1644375] - [kernel] rcutorture: Remove the "rcu_bh" and "sched" torture types (Waiman Long) [1644375] - [kernel] rcu: Stop testing RCU-bh and RCU-sched (Waiman Long) [1644375] - [kernel] rcutorture: Add RCU-bh and RCU-sched support for extended readers (Waiman Long) [1644375] - [kernel] rcu: Consolidate RCU-sched update-side function definitions (Waiman Long) [1644375] - [kernel] rcu: Consolidate RCU-bh update-side function definitions (Waiman Long) [1644375] - [kernel] rcu: Pull rcu_gp_kthread() FQS loop into separate function (Waiman Long) [1644375] - [kernel] rcu: Inline increment_cpu_stall_ticks() into its sole caller (Waiman Long) [1644375] - [kernel] rcu: Fix typo in force_qs_rnp()'s parameter's parameter (Waiman Long) [1644375] - [kernel] rcu: Eliminate initialization-time use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate RCU-barrier use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate quiescent-state and grace-period-nonstart use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate callback-invocation/invocation use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate grace-period management code use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate stall-warning use of rsp (Waiman Long) [1644375] - [kernel] rcu: Restructure rcu_check_gp_kthread_starvation() (Waiman Long) [1644375] - [kernel] rcu: Simplify rcutorture_get_gp_data() (Waiman Long) [1644375] - [kernel] rcu: Remove for_each_rcu_flavor() flavor-traversal macro (Waiman Long) [1644375] - [kernel] rcu: Remove last non-flavor-traversal rsp local variable from tree_plugin.h (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_data structure's ->rsp field (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_node tree accessor macros (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from expedited grace-period functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from no-CBs CPU functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from print_cpu_stall_info() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_spawn_one_boost_kthread() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from dump_blkd_tasks() and friend (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_print_detail_task_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_init_one() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_boot_init_percpu_data() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from _rcu_barrier() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __rcu_pending() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __call_rcu() and friend (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __rcu_process_callbacks() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_check_gp_start_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from force-quiescent-state functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_do_batch() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from CPU hotplug functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_check_quiescent_state() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_kthread() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_slow() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from note_gp_changes() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __note_gp_changes() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_advance_cbs() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_accelerate_cbs_unlocked() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_accelerate_cbs() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_kthread_wake() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_future_gp_cleanup() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from check_cpu_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from print_cpu_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from print_other_cpu_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_stall_kick_kthreads() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_dump_cpu_stacks() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_check_gp_kthread_starvation() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from record_gp_stall_check_time() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_get_root() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_in_progress() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_qs_rdp() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_unblock_qs_rnp() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_qs_rsp() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_qs_rnp() (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_data_p pointer to default rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_state_p pointer to default rcu_state structure (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_state structure's ->rda field (Waiman Long) [1644375] - [kernel] rcu: Eliminate rcu_state structure's ->call field (Waiman Long) [1644375] - [kernel] rcu: Remove RCU_STATE_INITIALIZER() (Waiman Long) [1644375] - [kernel] rcu: Express Tiny RCU updates in terms of RCU rather than RCU-sched (Waiman Long) [1644375] - [kernel] rcu: Define RCU-sched API in terms of RCU for Tree RCU PREEMPT builds (Waiman Long) [1644375] - [kernel] rcu: Fix typo in rcu_get_gp_kthreads_prio() header comment (Waiman Long) [1644375] - [kernel] rcu: Drop "wake" parameter from rcu_report_exp_rdp() (Waiman Long) [1644375] - [kernel] rcu: Update comments and help text for no more RCU-bh updaters (Waiman Long) [1644375] - [kernel] rcu: Define RCU-bh update API in terms of RCU (Waiman Long) [1644375] - [kernel] rcu: Report expedited grace periods at context-switch time (Waiman Long) [1644375] - [kernel] rcu: Apply RCU-bh QSes to RCU-sched and RCU-preempt when safe (Waiman Long) [1644375] - [kernel] rcu: Add warning to detect half-interrupts (Waiman Long) [1644375] - [kernel] rcu: Remove now-unused ->b.exp_need_qs field from the rcu_special union (Waiman Long) [1644375] - [kernel] rcu: Allow processing deferred QSes for exiting RCU-preempt readers (Waiman Long) [1644375] - [kernel] rcutorture: Test extended "rcu" read-side critical sections (Waiman Long) [1644375] - [kernel] rcu: Defer reporting RCU-preempt quiescent states when disabled (Waiman Long) [1644375] - [kernel] rcu: Refactor rcu_{nmi,irq}_{enter,exit}() (Waiman Long) [1644375] - [documentation] doc: Fix broken HTML directive (Waiman Long) [1644375] - [documentation] doc: Update removal of RCU-bh/sched update machinery (Waiman Long) [1644375] - [kernel] rcutorture: Maintain self-propagating CB only during forward-progress test (Waiman Long) [1644375] - [kernel] rcutorture: Check GP completion at stutter end (Waiman Long) [1644375] - [kernel] rcutorture: Print forward-progress test interval on error (Waiman Long) [1644375] - [kernel] rcutorture: Adjust number of reader kthreads per CPU-hotplug operations (Waiman Long) [1644375] - [kernel] rcutorture: Reduce priority of forward-progress testing (Waiman Long) [1644375] - [kernel] rcutorture: Limit reader duration if irq or bh disabled (Waiman Long) [1644375] - [kernel] rcutorture: Increase rcu_read_delay() longdelay_ms (Waiman Long) [1644375] - [kernel] rcutorture: Add self-propagating callback to forward-progress testing (Waiman Long) [1644375] - [kernel] rcutorture: Vary forward-progress test interval (Waiman Long) [1644375] - [kernel] rcutorture: Avoid no-test complaint if too few forward-progress tries (Waiman Long) [1644375] - [kernel] rcutorture: Also use GP sequence to judge forward progress (Waiman Long) [1644375] - [kernel] rcutorture: Add forward-progress tests for RCU grace periods (Waiman Long) [1644375] - [tools] rcutorture: Remove TREE06 and TREE08 from the default test list (Waiman Long) [1644375] - [kernel] rcuperf: Warn on bad perf type for built-in tests (Waiman Long) [1644375] - [kernel] rcutorture: Warn on bad torture type for built-in tests (Waiman Long) [1644375] - [kernel] rcutorture: Force occasional reader waits (Waiman Long) [1644375] - [tools] torture: Stop overwriting Make.out file with obsolete version (Waiman Long) [1644375] - [documentation] doc: Improve rcu_dynticks::dynticks documentation (Waiman Long) [1644375] - [documentation] doc: Fix broken RCU-requirements link to LKML archive (Waiman Long) [1644375] - [documentation] doc: Add design documentation on interruption of NMI handlers (Waiman Long) [1644375] - [kernel] rcutorture: Fix rcu_barrier successes counter (Waiman Long) [1644375] - [kernel] rcutorture: Add support to detect if boost kthread prio is too low (Waiman Long) [1644375] - [kernel] rcutorture: Use monotonic timestamp for stall detection (Waiman Long) [1644375] - [kernel] rcutorture: Make boost test more robust (Waiman Long) [1644375] - [kernel] rcutorture: Disable RT throttling for boost tests (Waiman Long) [1644375] - [kernel] rcutorture: Emphasize testing of single reader protection type (Waiman Long) [1644375] - [kernel] rcutorture: Handle extended read-side critical sections (Waiman Long) [1644375] - [kernel] rcutorture: Make rcu_torture_timer() use rcu_torture_one_read() (Waiman Long) [1644375] - [kernel] rcutorture: Use per-CPU random state for rcu_torture_timer() (Waiman Long) [1644375] - [kernel] rcutorture: Use atomic increment for n_rcu_torture_timers (Waiman Long) [1644375] - [kernel] rcutorture: Extract common code from rcu_torture_reader() (Waiman Long) [1644375] - [kernel] rcuperf: Remove unused torturing_tasks() function (Waiman Long) [1644375] - [kernel] rcu: Remove rcutorture test version and sequence number (Waiman Long) [1644375] - [kernel] rcutorture: Change units of onoff_interval to jiffies (Waiman Long) [1644375] - [kernel] rcu: Assign higher prio to RCU threads if rcutorture is built-in (Waiman Long) [1644375] - [documentation] rculist: Improve documentation for list_for_each_entry_from_rcu() (Waiman Long) [1644375] - [kernel] srcu: Add grace-period number to rcutorture statistics printout (Waiman Long) [1644375] - [kernel] rcu: Print stall-warning NMI dyntick state in hexadecimal (Waiman Long) [1644375] - [maintainers] MAINTAINERS: Update RCU, SRCU, and TORTURE-TEST entries (Waiman Long) [1644375] - [kernel] rcu: Make rcu_seq_diff() more exact (Waiman Long) [1644375] - [documentation] doc: Update synchronize_rcu() definition in whatisRCU.txt (Waiman Long) [1644375] - [kernel] rcu: Check the range of jiffies_till_{first, next}_fqs when setting them (Waiman Long) [1644375] - [kernel] rcu: Add diagnostics for rcutorture writer stall warning (Waiman Long) [1644375] - [kernel] rcu: Add comment to the last sleep in the rcu tasks loop (Waiman Long) [1644375] - [kernel] rcu: Speed up calling of RCU tasks callbacks (Waiman Long) [1644375] - [kernel] rcu: Add comment documenting how rcu_seq_snap works (Waiman Long) [1644375] - [kernel] rcu: Use RCU CPU stall timeout for rcu_check_gp_start_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove __maybe_unused from rcu_cpu_has_callbacks() (Waiman Long) [1644375] - [kernel] rcu: Remove "inline" from rcu_perf_print_module_parms() (Waiman Long) [1644375] - [kernel] rcu: Remove "inline" from rcu_torture_print_module_parms() (Waiman Long) [1644375] - [kernel] rcu: Remove "inline" from panic_on_rcu_stall() and rcu_blocking_is_gp() (Waiman Long) [1644375] - [kernel] rcu: Remove unused local variable "cpu" (Waiman Long) [1644375] - [kernel] rcu: Remove unused rcu_kick_nohz_cpu() function (Waiman Long) [1644375] - [kernel] rcu: Clarify and correct the rcu_preempt_qs() header comment (Waiman Long) [1644375] - [kernel] rcu: Inline rcu_dynticks_momentary_idle() into its sole caller (Waiman Long) [1644375] - [kernel] rcu: Mark task as .need_qs less aggressively (Waiman Long) [1644375] - [kernel] rcu: Improve RCU-tasks naming and comments (Waiman Long) [1644375] - [kernel] rcu: Use pr_fmt to prefix "rcu: " to logging output (Waiman Long) [1644375] - [kernel] rcu: rcupdate.h: Get rid of Sphinx warnings at rcu_pointer_handoff() (Waiman Long) [1644375] - [kernel] rcu: Improve rcu_note_voluntary_context_switch() reporting (Waiman Long) [1644375] - [kernel] rcu: Make rcu_read_unlock_special() static (Waiman Long) [1644375] - [kernel] rcu: Add diagnostics for offline CPUs failing to report QS (Waiman Long) [1644375] - [kernel] rcu: Record ->gp_state for both phases of grace-period initialization (Waiman Long) [1644375] - [kernel] rcu: Add CPU online/offline state to dump_blkd_tasks() (Waiman Long) [1644375] - [kernel] rcu: Add up-tree information to dump_blkd_tasks() diagnostics (Waiman Long) [1644375] - [kernel] rcu: Remove CPU-hotplug failsafe from force-quiescent-state code path (Waiman Long) [1644375] - [kernel] rcu: Remove failsafe check for lost quiescent state (Waiman Long) [1644375] - [kernel] rcu: Move grace-period pre-init delay after pre-init (Waiman Long) [1644375] - [kernel] rcu: Add RCU-preempt check for waiting on newly onlined CPU (Waiman Long) [1644375] - [kernel] rcu: Fix grace-period hangs due to race with CPU offline (Waiman Long) [1644375] - [kernel] rcu: Fix grace-period hangs from mid-init task resume (Waiman Long) [1644375] - [kernel] rcu: Suppress false-positive splats from mid-init task resume (Waiman Long) [1644375] - [kernel] rcu: Suppress more involved false-positive preempted-task splats (Waiman Long) [1644375] - [kernel] rcu: Suppress false-positive preempted-task splats (Waiman Long) [1644375] - [kernel] rcu: Suppress false-positive offline-CPU lockdep-RCU splat (Waiman Long) [1644375] - [kernel] rcu: Prevent useless FQS scan after all CPUs have checked in (Waiman Long) [1644375] - [kernel] rcu: Replace smp_wmb() with smp_store_release() for stall check (Waiman Long) [1644375] - [kernel] rcu: Fix typo and add additional debug (Waiman Long) [1644375] - [kernel] rcu: Make rcu_report_unblock_qs_rnp() warn on violated preconditions (Waiman Long) [1644375] - [kernel] rcu: Make rcu_init_new_rnp() stop upon already-set bit (Waiman Long) [1644375] - [kernel] rcu: Fix an obsolete ->qsmaskinit comment (Waiman Long) [1644375] - [kernel] rcu: Clean up handling of tasks blocked across full-rcu_node offline (Waiman Long) [1644375] - [kernel] rcu: Identify grace period is in progress as we advance up the tree (Waiman Long) [1644375] - [kernel] rcu: Use better variable names in funnel locking loop (Waiman Long) [1644375] - [kernel] rcu: Rename the grace-period-request variables and parameters (Waiman Long) [1644375] - [kernel] rcu: Regularize resetting of rcu_data wrap indicator (Waiman Long) [1644375] - [kernel] rcutorture: Correctly handle grace-period sequence wrap (Waiman Long) [1644375] - [kernel] rcu: Make rcu_start_this_gp() check for grace period already started (Waiman Long) [1644375] - [kernel] rcu: Fix cpustart tracepoint gp_seq number (Waiman Long) [1644375] - [kernel] rcu: Produce last "CleanupMore" trace only if late-breaking request (Waiman Long) [1644375] - [kernel] rcu: Don't funnel-lock above leaf node if GP in progress (Waiman Long) [1644375] - [documentation] doc: Update RCU CPU stall-warning documentation (Waiman Long) [1644375] - [documentation] doc: Update memory-ordering documentation for ->gp-seq (Waiman Long) [1644375] - [documentation] doc: Update data-structure documentation for ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make simple callback acceleration refer to rdp->gp_seq_needed (Waiman Long) [1644375] - [kernel] rcu: Remove ->gpnum and ->completed (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_fqs tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_quiescent_state_report tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_unlock_preempted_task tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_preempt_task tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_grace_period_init tracepoint to gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_future_grace_period tracepoint to gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_grace_period tracepoint to gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make rcu_nocb_wait_gp() check if GP already requested (Waiman Long) [1644375] - [kernel] rcu: Move from ->need_future_gp[] to ->gp_seq_needed (Waiman Long) [1644375] - [kernel] rcutorture: Convert rcutorture_get_gp_data() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make RCU CPU stall warnings use ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert grace-period requests to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert ->completedqs to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert ->rcu_iw_gpnum to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_gp_in_progress() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_nocb_gp_get() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_try_advance_all_cbs() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_implicit_dynticks_qs() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_gpnum_ovf() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move RCU's grace-period-change code to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert conditional grace-period primitives to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make quiescent-state reporting use ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_check_gp_kthread_starvation() to GP sequence number (Waiman Long) [1644375] - [kernel] rcu: Make rcutorture's batches-completed API use ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_gp_slow() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Introduce grace-period sequence numbers (Waiman Long) [1644375] - [kernel] rcu: Make rcu_gp_cleanup() write only once to ->gp_flags (Waiman Long) [1644375] - [kernel] rcu: Diagnostics for grace-period startup hangs (Waiman Long) [1644375] - [kernel] rcu: Exclude near-simultaneous RCU CPU stall warnings (Waiman Long) [1644375] - [kernel] rcu: Use the proper lockdep annotation in dump_blkd_tasks() (Waiman Long) [1644375] - [kernel] rcu: Add debugging info to assertion (Waiman Long) [1644375] - [kernel] torture: Keep old-school dmesg format (Waiman Long) [1644375] - [kernel] torture: Make online/offline messages appear only for verbose=2 (Waiman Long) [1644375] - [tools] rcutorture: Make kvm-find-errors.sh find close calls (Waiman Long) [1644375] - [tools] rcutorture: Remove obsolete TREE08-T.boot file (Waiman Long) [1644375] - [tools] torture: Use a single build directory for torture scenarios (Waiman Long) [1644375] - [kernel] srcu: Introduce srcu_read_{un,}lock_notrace() (Waiman Long) [1644375] - [kernel] srcu: Add address of first callback to rcutorture output (Waiman Long) [1644375] - [kernel] srcu: Document that srcu_funnel_gp_start() implies srcu_funnel_exp_start() (Waiman Long) [1644375] - [kernel] srcu: Fix typos in __call_srcu() header comment (Waiman Long) [1644375] - [kernel] rcu: Make expedited grace period use direct call on last leaf (Waiman Long) [1644375]- [netdrv] nfp: flower: use offsets provided by pedit instead of index for ipv6 (Pablo Cascon) [1645132] - [netdrv] nfp: flower: fix multiple keys per pedit action (Pablo Cascon) [1645132] - [netdrv] nfp: flower: fix pedit set actions for multiple partial masks (Pablo Cascon) [1645132] - [netdrv] nfp: flower: ignore checksum actions when performing pedit actions (Pablo Cascon) [1644400] - [kernel] sched/fair: Fix throttle_list starvation with low CFS quota (Phil Auld) [1638526] - [net] tipc: fix the big/little endian issue in tipc_dest (Jon Maloy) [1640712] - [rpmspec] kernel.spec: Include kernel-signing-ca.cer public key (Prarit Bhargava) [1638465] - [block] block: don't deal with discard limit in blkdev_issue_discard() (Ming Lei) [1631255] - [powerpc] powerpc/mm: Check memblock_add against MAX_PHYSMEM_BITS range (Gustavo Duarte) [1561402] - [powerpc] powerpc/mm: Increase MAX_PHYSMEM_BITS to 128TB with SPARSEMEM_VMEMMAP config (Gustavo Duarte) [1561402]- [s390] s390/crypto: Enhance paes cipher to accept variable length key material (Philipp Rudo) [1644387] - [s390] s390/pkey: move pckmo subfunction available checks away from module init (Philipp Rudo) [1644387] - [s390] s390/pkey: Load pkey kernel module automatically (Philipp Rudo) [1644387] - [s390] s390/zcrypt: fix broken zcrypt_send_cprb in-kernel api function (Philipp Rudo) [1644387] - [s390] s390/pkey: Introduce new API for transforming key blobs (Philipp Rudo) [1644387] - [s390] s390/pkey: Introduce new API for random protected key verification (Philipp Rudo) [1644387] - [s390] s390/pkey: Add sysfs attributes to emit secure key blobs (Philipp Rudo) [1644387] - [s390] s390/pkey: Add sysfs attributes to emit protected key blobs (Philipp Rudo) [1644387] - [s390] s390/pkey: Define protected key blob format (Philipp Rudo) [1644387] - [s390] s390/pkey: Introduce new API for random protected key generation (Philipp Rudo) [1644387] - [s390] s390/zcrypt: add ap_adapter_mask sysfs attribute (Philipp Rudo) [1644387] - [s390] s390/zcrypt: provide apfs failure code on type 86 error reply (Philipp Rudo) [1644387] - [s390] s390/zcrypt: zcrypt device driver cleanup (Philipp Rudo) [1644387] - [s390] s390/zcrypt: multiple zcrypt device nodes support (Philipp Rudo) [1644387] - [s390] s390/zcrypt: enable AP bus scan without a valid default domain (Philipp Rudo) [1644387] - [s390] s390/zcrypt: Use kmemdup to replace kmalloc + memcpy (Philipp Rudo) [1644387] - [s390] s390/qeth: add TSO support for L2 devices (Philipp Rudo) [1644381] - [s390] s390/qeth: add support for IPv6 TSO (Philipp Rudo) [1644381] - [s390] s390/qeth: enhance TSO control sequence (Philipp Rudo) [1644381] - [s390] s390/qeth: make TSO controls protocol-agnostic (Philipp Rudo) [1644381] - [s390] s390: qeth: Fix potential array overrun in cmd/rc lookup (Philipp Rudo) [1644381] - [s390] s390: qeth_core_mpc: Use ARRAY_SIZE instead of reimplementing its function (Philipp Rudo) [1644381] - [scsi] scsi: mpt3sas: Remove unnecessary parentheses and simplify null checks (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Use dma_pool_zalloc (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Remove unused macro MPT3SAS_FMT (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert logging uses with MPT3SAS_FMT without logging levels (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Remove KERN_WARNING from panic uses (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert logging uses with MPT3SAS_FMT and reply_q_name to s: (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert mlsleading uses of pr_ with MPT3SAS_FMT (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert uses of pr_ with MPT3SAS_FMT to ioc_ (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Add ioc_ logging macros (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix calltrace observed while running IO & reset (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Improve kernel-doc headers (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Split _base_reset_handler(), mpt3sas_scsih_reset_handler() and mpt3sas_ctl_reset_handler() (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix a race condition in mpt3sas_base_hard_reset_handler() (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix _transport_smp_handler() error path (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Introduce struct mpt3sas_nvme_cmd (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Annotate switch/case fall-through (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Remove set-but-not-used variables (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix indentation (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Update driver version "26.100.00.00" (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: As per MPI-spec, use combined reply queue for SAS3.5 controllers when HBA supports more than 16 MSI-x vectors (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix, False timeout prints for ioctl and other internal commands during controller reset (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Don't access the structure after decrementing it's instance reference count (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Incorrect command status was set/marked as not used (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Don't abort I/Os issued to NVMe drives while processing Async Broadcast primitive event (Tomas Henzl) [1638649] - [netdrv] net/mlx5e: Do not ignore netdevice TX/RX queues number (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Use non-delayed work for update stats (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Initialize all netdev common structures in one place (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Always initialize update stats delayed work (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Gather common netdev init/cleanup functionality in one place (Alaa Hleihel) [1643103] - [infiniband] RDMA/netdev: Fix netlink support in IPoIB (Alaa Hleihel) [1643103] - [infiniband] RDMA/netdev: Hoist alloc_netdev_mqs out of the driver (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Consolidate checking of the proposed child interface (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Maintain the child_intfs list from ndo_init/uninit (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Do not remove child devices from within the ndo_uninit (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Get rid of the sysfs_mutex (Alaa Hleihel) [1643103] - [infiniband] RDMA/netdev: Use priv_destructor for netdev cleanup (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Move init code to ndo_init (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Move all uninit code into ndo_uninit (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Use cancel_delayed_work_sync for neigh-clean task (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Get rid of IPOIB_FLAG_GOING_DOWN (Alaa Hleihel) [1643103] - [infiniband] RDMA/ipoib: Fix use of sizeof() (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Do not recycle RX pages in interface down flow (Alaa Hleihel) [1643103 1643047] - [netdrv] net/mlx5e: Replace call to MPWQE free with dealloc in interface down flow (Alaa Hleihel) [1643103 1643047] - [net] net/xdp: Fix suspicious RCU usage warning (Alaa Hleihel) [1643103 1643047] - [netdrv] net/mlx5: WQ, fixes for fragmented WQ buffers API (Alaa Hleihel) [1643103 1636183] - [netdrv] net/mlx4_en: Use minimal rx and tx ring sizes on kdump kernel (Alaa Hleihel) [1643103 1615267] - [x86] mark coffeelake-s/h 8+2 as supported (David Arcari) [1575461 1575460] - [x86] x86/spec_ctrl: Synchronize STIBP changes with RHEL IBRS code (Waiman Long) [1643233] - [x86] x86/speculation: Propagate information about RSB filling mitigation to sysfs (Waiman Long) [1643233] - [x86] x86/speculation: Enable cross-hyperthread spectre v2 STIBP mitigation (Waiman Long) [1643233] - [x86] x86/speculation: Apply IBPB more strictly to avoid cross-process data leak (Waiman Long) [1643233] - [x86] x86/speculation: Add RETPOLINE_AMD support to the inline asm CALL_NOSPEC variant (Waiman Long) [1643233] - [x86] x86/CPU: Fix unused variable warning when !CONFIG_IA32_EMULATION (Waiman Long) [1643233] - [x86] x86/pti/64: Remove the SYSCALL64 entry trampoline (Waiman Long) [1643233] - [x86] x86/entry/64: Use the TSS sp2 slot for SYSCALL/SYSRET scratch space (Waiman Long) [1643233] - [x86] x86/entry/64: Document idtentry (Waiman Long) [1643233] - [x86] x86/asm-offsets: Move TSS_sp0 and TSS_sp1 to asm-offsets.c (Waiman Long) [1643233] - [x86] x86: Add entry trampolines to kcore (Waiman Long) [1643233] - [kernel] kallsyms, x86: Export addresses of PTI entry trampolines (Waiman Long) [1643233] - [kernel] kallsyms: Simplify update_iter_mod() (Waiman Long) [1643233] - [scsi] scsi: csiostor: fix incorrect port capabilities (Arjun Vynipadath) [1628866] - [scsi] scsi: csiostor: add a check for NULL pointer after kmalloc() (Arjun Vynipadath) [1628866] - [scsi] scsi: csiostor: update ingress pack and pad boundary value (Arjun Vynipadath) [1628866]- [netdrv] nfp: flower: use host context count provided by firmware (Pablo Cascon) [1639609] - [netdrv] nfp: flower: use stats array instead of storing stats per flow (Pablo Cascon) [1639609] - [netdrv] nfp: flower: use rhashtable for flow caching (Pablo Cascon) [1639609] - [netdrv] nfp: avoid soft lockups under control message storm (Pablo Cascon) [1639609] - [kernel] sched: disable autogroups by default (Phil Auld) [1568166] - [s390] s390/keyboard: sanitize array index in do_kdsk_ioctl (Steve Best) [1637591] - [char] ipmi:ssif: Add support for multi-part transmit messages > 2 parts (Tony Camuso) [1622053] - [scsi] scsi: libsas: fix a race condition when smp task timeout (Zhou Wang) [1640426] - [scsi] scsi: libsas: check the ata device status by ata_dev_enabled() (Zhou Wang) [1640426] - [scsi] scsi: libsas: always unregister the old device if going to discover new (Zhou Wang) [1640426] - [scsi] scsi: libsas: dynamically allocate and free ata host (Zhou Wang) [1640426] - [scsi] scsi: libsas: remove irq save in sas_ata_qc_issue() (Zhou Wang) [1640426]- [video] fbdev: make FB_BACKLIGHT a tristate (Rob Clark) [1643333 1589158] - [netdrv] Taint kernel if e1000 is loaded (Neil Horman) [1643617] - [netdrv] iavf: fix a typo (Stefan Assmann) [1627882] - [netdrv] i40evf: remove ndo_poll_controller (Stefan Assmann) [1627882] - [netdrv] intel-ethernet: use correct module license (Stefan Assmann) [1627882] - [netdrv] iavf: finish renaming files to iavf (Stefan Assmann) [1627882] - [netdrv] iavf: rename most of i40e strings (Stefan Assmann) [1627882] - [netdrv] iavf: tracing infrastructure rename (Stefan Assmann) [1627882] - [netdrv] iavf: replace i40e_debug with iavf version (Stefan Assmann) [1627882] - [netdrv] iavf: rename i40e_hw to iavf_hw (Stefan Assmann) [1627882] - [netdrv] iavf: rename I40E_ADMINQ_DESC (Stefan Assmann) [1627882] - [netdrv] iavf: rename device ID defines (Stefan Assmann) [1627882] - [netdrv] iavf: remove references to old names (Stefan Assmann) [1627882] - [netdrv] iavf: move i40evf files to new name (Stefan Assmann) [1627882] - [netdrv] iavf: rename i40e_status to iavf_status (Stefan Assmann) [1627882] - [netdrv] iavf: rename functions and structs to new name (Stefan Assmann) [1627882] - [netdrv] iavf: diet and reformat (Stefan Assmann) [1627882] - [netdrv] configs: enable CONFIG_IAVF=m (Stefan Assmann) [1627882] - [netdrv] intel-ethernet: rename i40evf to iavf (Stefan Assmann) [1627882] - [netdrv] i40e(vf): remove i40e_ethtool_stats.h header file (Stefan Assmann) [1627882] - [netdrv] i40evf: cancel workqueue sync for adminq when a VF is removed (Stefan Assmann) [1627882] - [netdrv] i40evf: Don't enable vlan stripping when rx offload is turned on (Stefan Assmann) [1627882] - [netdrv] i40evf: set IFF_UNICAST_FLT flag for the VF (Stefan Assmann) [1627882] - [netdrv] i40evf: Validate the number of queues a PF sends (Stefan Assmann) [1627882] - [netdrv] i40evf: Change a VF mac without reloading the VF driver (Stefan Assmann) [1627882] - [netdrv] i40evf: update ethtool stats code and use helper functions (Stefan Assmann) [1627882] - [netdrv] i40e: Add AQ command for rearrange NVM structure (Stefan Assmann) [1627882] - [netdrv] i40e: Add additional return code to i40e_asq_send_command (Stefan Assmann) [1627882] - [netdrv] i40e/i40evf: remove redundant functions i40evf_aq_(set/get)_phy_register (Stefan Assmann) [1627882] - [netdrv] cls_flower: fix error values for commands not supported by drivers (Stefan Assmann) [1627882] - [init] init/main.c: Enable watchdog_thresh control from kernel line (Prarit Bhargava) [1643161] - [s390] s390/purgatory: Remove duplicate variable definitions (Philipp Rudo) [1642447] - [s390] s390/purgatory: Add missing FORCE to Makefile targets (Philipp Rudo) [1642447] - [s390] s390/purgatory: Fix crash with expoline enabled (Philipp Rudo) [1642447] - [s390] s390: disable asm code expolines if cc does not support it (Philipp Rudo) [1642447] - [netdrv] Revert be2net: remove desc field from be_eq_obj (Ivan Vecera) [1639867]- [rpmspec] redhat: add optional bpf_samples package (Jiri Benc) [1611579] - [powerpc] powerpc/time: Fix clockevent_decrementer initalisation for PR KVM (Steve Best) [1641615] - [net] ip: frags: fix crash in ip_do_fragment() (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipfrag: let ip(6)frag_high_thresh in ns be higher than in init_net (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipv6: discard IP frag queue on more errors (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: fail fast on IP defrag errors (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: process in-order fragments efficiently (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: add helpers to process in-order fragments faster (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipv6: defrag: drop non-last frags smaller than min mtu (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipv4: frags: precedence bug in ip_expire() (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: use rb trees for IP frag queue (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] modify skb_rbtree_purge to return the truesize of all purged skbs (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: discard IPv4 datagrams with overlapping segments (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [fs] ovl: fix format of setxattr debug (Miklos Szeredi) [1636875] - [fs] ovl: fix access beyond unterminated strings (Miklos Szeredi) [1636875] - [fs] ovl: make symbol 'ovl_aops' static (Miklos Szeredi) [1636875] - [fs] vfs: swap names of (do,vfs)_clone_file_range() (Miklos Szeredi) [1636875] - [fs] ovl: fix freeze protection bypass in ovl_clone_file_range() (Miklos Szeredi) [1636875] - [fs] ovl: fix freeze protection bypass in ovl_write_iter() (Miklos Szeredi) [1636875] - [fs] ovl: fix memory leak on unlink of indexed file (Miklos Szeredi) [1636875] - [fs] ovl: fix oopses in ovl_fill_super() failure paths (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fadvise() (Miklos Szeredi) [1636875] - [fs] vfs: implement readahead(2) using POSIX_FADV_WILLNEED (Miklos Szeredi) [1636875] - [fs] vfs: add the fadvise() file operation (Miklos Szeredi) [1636875] - [fs] Documentation/filesystems: update documentation of file_operations (Miklos Szeredi) [1636875] - [fs] ovl: fix GPF in swapfile_activate of file from overlayfs over xfs (Miklos Szeredi) [1636875] - [fs] ovl: respect FIEMAP_FLAG_SYNC flag (Miklos Szeredi) [1636875] - [fs] ovl: Enable metadata only feature (Miklos Szeredi) [1636875] - [fs] ovl: Do not do metacopy only for ioctl modifying file attr (Miklos Szeredi) [1636875] - [fs] ovl: Do not do metadata only copy-up for truncate operation (Miklos Szeredi) [1636875] - [fs] ovl: add helper to force data copy-up (Miklos Szeredi) [1636875] - [fs] ovl: Check redirect on index as well (Miklos Szeredi) [1636875] - [fs] ovl: Set redirect on upper inode when it is linked (Miklos Szeredi) [1636875] - [fs] ovl: Set redirect on metacopy files upon rename (Miklos Szeredi) [1636875] - [fs] ovl: Do not set dentry type ORIGIN for broken hardlinks (Miklos Szeredi) [1636875] - [fs] ovl: Add an inode flag OVL_CONST_INO (Miklos Szeredi) [1636875] - [fs] ovl: Treat metacopy dentries as type OVL_PATH_MERGE (Miklos Szeredi) [1636875] - [fs] ovl: Check redirects for metacopy files (Miklos Szeredi) [1636875] - [fs] ovl: Move some dir related ovl_lookup_single() code in else block (Miklos Szeredi) [1636875] - [fs] ovl: Do not expose metacopy only dentry from d_real() (Miklos Szeredi) [1636875] - [fs] ovl: Open file with data except for the case of fsync (Miklos Szeredi) [1636875] - [fs] ovl: Add helper ovl_inode_realdata() (Miklos Szeredi) [1636875] - [fs] ovl: Store lower data inode in ovl_inode (Miklos Szeredi) [1636875] - [fs] ovl: Fix ovl_getattr() to get number of blocks from lower (Miklos Szeredi) [1636875] - [fs] ovl: Add helper ovl_dentry_lowerdata() to get lower data dentry (Miklos Szeredi) [1636875] - [fs] ovl: Copy up meta inode data from lowest data inode (Miklos Szeredi) [1636875] - [fs] ovl: Modify ovl_lookup() and friends to lookup metacopy dentry (Miklos Szeredi) [1636875] - [fs] ovl: Use out_err instead of out_nomem (Miklos Szeredi) [1636875] - [fs] ovl: A new xattr OVL_XATTR_METACOPY for file on upper (Miklos Szeredi) [1636875] - [fs] ovl: Add helper ovl_already_copied_up() (Miklos Szeredi) [1636875] - [fs] ovl: Copy up only metadata during copy up where it makes sense (Miklos Szeredi) [1636875] - [fs] ovl: During copy up, first copy up metadata and then data (Miklos Szeredi) [1636875] - [fs] ovl: Provide a mount option metacopy=on/off for metadata copyup (Miklos Szeredi) [1636875] - [fs] ovl: Move the copy up helpers to copy_up.c (Miklos Szeredi) [1636875] - [fs] ovl: Initialize ovl_inode->redirect in ovl_get_inode() (Miklos Szeredi) [1636875] - [fs] ovl: fix documentation of non-standard behavior (Miklos Szeredi) [1636875] - [fs] ovl: obsolete "check_copy_up" module option (Miklos Szeredi) [1636875] - [fs] vfs: remove open_flags from d_real() (Miklos Szeredi) [1636875] - [fs] Revert "fsnotify: support overlayfs" (Miklos Szeredi) [1636875] - [fs] Partially revert "locks: fix file locking on overlayfs" (Miklos Szeredi) [1636875] - [fs] Revert "vfs: do get_write_access() on upper layer of overlayfs" (Miklos Szeredi) [1636875] - [fs] Revert "vfs: add flags to d_real()" (Miklos Szeredi) [1636875] - [fs] Revert "vfs: update ovl inode before relatime check" (Miklos Szeredi) [1636875] - [fs] Revert "ovl: fix relatime for directories" (Miklos Szeredi) [1636875] - [fs] vfs: fix freeze protection in mnt_want_write_file() for overlayfs (Miklos Szeredi) [1636875] - [fs] Revert "ovl: don't allow writing ioctl on lower layer" (Miklos Szeredi) [1636875] - [fs] Revert "ovl: fix may_write_real() for overlayfs directories" (Miklos Szeredi) [1636875] - [fs] vfs: don't open real (Miklos Szeredi) [1636875] - [fs] ovl: add reflink/copyfile/dedup support (Miklos Szeredi) [1636875] - [fs] ovl: add O_DIRECT support (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fiemap() (Miklos Szeredi) [1636875] - [fs] ovl: add lsattr/chattr support (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fallocate() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_mmap() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fsync() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_write_iter() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_read_iter() (Miklos Szeredi) [1636875] - [fs] ovl: add helper to return real file (Miklos Szeredi) [1636875] - [fs] ovl: stack file ops (Miklos Szeredi) [1636875] - [fs] ovl: deal with overlay files in ovl_d_real() (Miklos Szeredi) [1636875] - [fs] ovl: copy up file size as well (Miklos Szeredi) [1636875] - [fs] Revert "Revert "ovl: get_write_access() in truncate"" (Miklos Szeredi) [1636875] - [fs] ovl: copy up inode flags (Miklos Szeredi) [1636875] - [fs] ovl: copy up times (Miklos Szeredi) [1636875] - [fs] vfs: export vfs_dedupe_file_range_one() to modules (Miklos Szeredi) [1636875] - [fs] vfs: export vfs_ioctl() to modules (Miklos Szeredi) [1636875] - [fs] vfs: make open_with_fake_path() not contribute to nr_files (Miklos Szeredi) [1636875] - [fs] ovl: fix wrong use of impure dir cache in ovl_iterate() (Miklos Szeredi) [1636875] - [fs] new helper: open_with_fake_path() (Miklos Szeredi) [1636875] - [fs] now we can fold open_check_o_direct() into do_dentry_open() (Miklos Szeredi) [1636875] - [fs] lift fput() on late failures into path_openat() (Miklos Szeredi) [1636875] - [fs] fold put_filp() into fput() (Miklos Szeredi) [1636875] - [fs] introduce FMODE_OPENED (Miklos Szeredi) [1636875] - [fs] ->file_open(): lose cred argument (Miklos Szeredi) [1636875] - [fs] security_file_open(): lose cred argument (Miklos Szeredi) [1636875] - [fs] get rid of cred argument of vfs_open() and do_dentry_open() (Miklos Szeredi) [1636875] - [fs] pass ->f_flags value to alloc_empty_file() (Miklos Szeredi) [1636875] - [fs] pass creds to get_empty_filp(), make sure dentry_open() passes the right creds (Miklos Szeredi) [1636875] - [fs] alloc_file(): switch to passing O_... flags instead of FMODE_... mode (Miklos Szeredi) [1636875] - [fs] make sure do_dentry_open() won't return positive as an error (Miklos Szeredi) [1636875] - [fs] create_pipe_files(): use fput() if allocation of the second file fails (Miklos Szeredi) [1636875] - [fs] turn filp_clone_open() into inline wrapper for dentry_open() (Miklos Szeredi) [1636875] - [fs] fold security_file_free() into file_free() (Miklos Szeredi) [1636875] - [fs] vfs: dedupe: extract helper for a single dedup (Miklos Szeredi) [1636875] - [fs] vfs: dedupe: rationalize args (Miklos Szeredi) [1636875] - [fs] vfs: dedupe: return int (Miklos Szeredi) [1636875] - [fs] vfs: limit size of dedupe (Miklos Szeredi) [1636875] - [fs] ovl: set I_CREATING on inode being created (Miklos Szeredi) [1636875]- [rpmspec] redhat spec: Add new perf tools file (Jiri Olsa) [1579484] - [tools] perf tools: Fix use of alternatives to find JDIR (Jiri Olsa) [1579484] - [net] net: sock_diag: Fix spectre v1 gadget in __sock_diag_cmd() (Paolo Abeni) [1637576] - [thunderbolt] thunderbolt: Add Intel as copyright holder (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Convert rest of the driver files to use SPDX identifier (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Print connected devices (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Make the driver less verbose (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Remove a meaningless NULL pointer check before dma_pool_destroy (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Initialize after IOMMUs (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Do not handle ICM events after domain is stopped (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Add support for runtime PM (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Remove redundant variable 'approved' (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Use correct ICM commands in system suspend (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: No need to take tb->lock in domain suspend/complete (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Do not unnecessarily call ICM get route (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Use 64-bit DMA mask if supported by the platform (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Fix small typo in variable name (Jarod Wilson) [1588929] - [mm] Revert x86/e820: put !E820_TYPE_RAM regions into memblock.reserved (Baoquan He) [1639450] - [mm] mm: return zero_resv_unavail optimization (Baoquan He) [1639450] - [mm] mm: zero remaining unavailable struct pages (Baoquan He) [1639450] - [mm] mm: skip invalid pages block at a time in zero_resv_unresv() (Baoquan He) [1639450] - [mm] docs/mm: memblock: update kernel-doc comments (Baoquan He) [1639450] - [mm] mm/memblock: add a name for memblock flags enumeration (Baoquan He) [1639450] - [block] blk-wbt: wake up all when we scale up, not down (Ming Lei) [1640035]- [video] fbdev: make FB_BACKLIGHT a tristate (Rob Clark) [1589158] - [kernel] EDAC: Raise the maximum number of memory controllers (Aristeu Rozanski) [1634077] - [netdrv] i40e: disallow changing the number of descriptors when AF_XDP is on (Stefan Assmann) [1630760] - [netdrv] i40e: clean zero-copy XDP Rx ring on shutdown/reset (Stefan Assmann) [1630760] - [netdrv] i40e: clean zero-copy XDP Tx ring on shutdown/reset (Stefan Assmann) [1630760] - [netdrv] i40e: Remove unused msglen parameter from virtchnl functions (Stefan Assmann) [1630760] - [netdrv] i40e: fix double 'NIC Link is Down' messages (Stefan Assmann) [1630760] - [netdrv] i40e: add a helper function to validate a VF based on the vf id (Stefan Assmann) [1630760] - [netdrv] i40e: use declared variables for pf and hw (Stefan Assmann) [1630760] - [netdrv] i40e: Unset promiscuous settings on VF reset (Stefan Assmann) [1630760] - [netdrv] i40e: Fix VF's link state notification (Stefan Assmann) [1630760] - [netdrv] intel-ethernet: use correct module license (Stefan Assmann) [1630760] - [netdrv] i40e(vf): remove i40e_ethtool_stats.h header file (Stefan Assmann) [1630760] - [netdrv] i40e: fix possible compiler warning in xsk TX path (Stefan Assmann) [1630760] - [netdrv] i40e: add AF_XDP zero-copy Tx support (Stefan Assmann) [1630760] - [netdrv] i40e: move common Tx functions to i40e_txrx_common.h (Stefan Assmann) [1630760] - [netdrv] xsk: i40e: get rid of useless struct xdp_umem_props (Stefan Assmann) [1630760] - [netdrv] i40e: add AF_XDP zero-copy Rx support (Stefan Assmann) [1630760] - [netdrv] i40e: move common Rx functions to i40e_txrx_common.h (Stefan Assmann) [1630760] - [netdrv] i40e: refactor Rx path for re-use (Stefan Assmann) [1630760] - [netdrv] i40e: added queue pair disable/enable functions (Stefan Assmann) [1630760] - [netdrv] i40e: Prevent deleting MAC address from VF when set by PF (Stefan Assmann) [1630760] - [netdrv] i40e: hold the rtnl lock on clearing interrupt scheme (Stefan Assmann) [1630760] - [netdrv] i40e: Check and correct speed values for link on open (Stefan Assmann) [1630760] - [netdrv] i40e: report correct statistics when XDP is enabled (Stefan Assmann) [1630760] - [netdrv] i40e: static analysis report from community (Stefan Assmann) [1630760] - [netdrv] i40e: use correct length for strncpy (Stefan Assmann) [1630760] - [netdrv] i40evf: Change a VF mac without reloading the VF driver (Stefan Assmann) [1630760] - [netdrv] i40e: move ethtool stats boiler plate code to i40e_ethtool_stats.h (Stefan Assmann) [1630760] - [netdrv] i40e: convert queue stats to i40e_stats array (Stefan Assmann) [1630760] - [netdrv] i40e: fix condition of WARN_ONCE for stat strings (Stefan Assmann) [1630760] - [netdrv] i40e_txrx: mark expected switch fall-through (Stefan Assmann) [1630760] - [netdrv] i40e_main: mark expected switch fall-through (Stefan Assmann) [1630760] - [netdrv] i40e: fix i40e_add_queue_stats data pointer update (Stefan Assmann) [1630760] - [netdrv] i40e: Add AQ command for rearrange NVM structure (Stefan Assmann) [1630760] - [netdrv] i40e: Add additional return code to i40e_asq_send_command (Stefan Assmann) [1630760] - [netdrv] i40e: fix warning about shadowed ring parameter (Stefan Assmann) [1630760] - [netdrv] i40e: remove unnecessary i variable causing -Wshadow warning (Stefan Assmann) [1630760] - [netdrv] i40e: convert priority flow control stats to use helpers (Stefan Assmann) [1630760] - [netdrv] i40e: convert VEB TC stats to use an i40e_stats array (Stefan Assmann) [1630760] - [netdrv] i40e: Set fec_config when forcing link state (Stefan Assmann) [1630760] - [netdrv] i40e: add helper to copy statistic values into ethtool buffer (Stefan Assmann) [1630760] - [netdrv] i40e: add helper function for copying strings from stat arrays (Stefan Assmann) [1630760] - [netdrv] i40e: Remove duplicated prepare call in i40e_shutdown (Stefan Assmann) [1630760] - [netdrv] cls_flower: fix error values for commands not supported by drivers (Stefan Assmann) [1630760] - [netdrv] net: drivers/net: Convert random_ether_addr to eth_random_addr (Stefan Assmann) [1630760] - [net] ipv4: don't let PMTU updates increase route MTU (Sabrina Dubroca) [1638845] - [net] ipv4: update fnhe_pmtu when first hop's MTU changes (Sabrina Dubroca) [1638845] - [net] xsk: add a simple buffer reuse queue (Ivan Vecera) [1634774] - [net] samples/bpf: add -c/--copy -z/--zero-copy flags to xdpsock (Ivan Vecera) [1634774] - [net] add napi_if_scheduled_mark_missed (Ivan Vecera) [1634774] - [net] xsk: expose xdp_umem_get_(data, dma) to drivers (Ivan Vecera) [1634774] - [net] xdp: export xdp_rxq_info_unreg_mem_model (Ivan Vecera) [1634774] - [net] xdp: implement convert_to_xdp_frame for MEM_TYPE_ZERO_COPY (Ivan Vecera) [1634774] - [net] xdp: Helper function to clear kernel pointers in xdp_frame (Ivan Vecera) [1634774] - [net] xsk: i40e: get rid of useless struct xdp_umem_props (Ivan Vecera) [1631809] - [net] xdp: fix uninitialized 'err' variable (Ivan Vecera) [1631805] - [tools] headers uapi: Update tools's copy of linux/if_link.h (Ivan Vecera) [1631805] - [tools] selftests/bpf: add test for multiple programs (Ivan Vecera) [1631805] - [net] netdevsim: add support for simultaneous driver and hw XDP (Ivan Vecera) [1631805] - [net] xdp: support simultaneous driver and hw XDP attachment (Ivan Vecera) [1631805] - [net] xdp: factor out common program/flags handling from drivers (Ivan Vecera) [1631805] - [net] xdp: don't make drivers report attachment mode (Ivan Vecera) [1631805] - [net] xdp: add per mode attributes for attached programs (Ivan Vecera) [1631805] - [net] sched: cls_flower: set correct offload data in fl_reoffload (Ivan Vecera) [1631522] - [net] sched: call reoffload op on block callback reg (Ivan Vecera) [1631522] - [net] sched: cls_bpf: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: cls_u32: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: cls_matchall: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: cls_flower: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: add tcf_proto_op to offload a rule (Ivan Vecera) [1631522] - [net] sched: pass extack pointer to block binds and cb registration (Ivan Vecera) [1631522]- [rpmspec] kernel.spec: s390/zfcpdump: add -zfcpdump kernel variant (Philipp Rudo) [1567291] - [kernel] rh_taint: correct loaddable module support dependencies (Philipp Rudo) [1567291] - [powerpc] KVM: PPC: Book3S HV: Avoid crash from THP collapse during radix page fault (David Gibson) [1639555] - [irqchip] irqchip/gic-v3-its: Allow use of LPI tables in reserved memory (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Register LPI tables with EFI config table (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Check that all RDs have the same property table (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Use pre-programmed redistributor tables with kdump kernels (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Allow use of pre-programmed LPI tables (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Keep track of property table's PA and VA (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Move pending table allocation to init time (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Split property table clearing from allocation (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Simplify LPI_PENDBASE_SZ usage (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Change initialization ordering for LPIs (Jeremy Linton) [1625746] - [firmware] efi: add API to reserve memory persistently across kexec reboot (Jeremy Linton) [1625746] - [firmware] efi/arm: libstub: add a root memreserve config table (Jeremy Linton) [1625746] - [firmware] efi: honour memory reservations passed via a linux specific config table (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Cap lpi_id_bits to reduce memory footprint (Jeremy Linton) [1625746] - [infiniband] RDMA/bnxt_re: Fix system crash during RDMA resource initialization (Selvin Xavier) [1637122] - [infiniband] RDMA/bnxt_re: Fix couple of memory leaks that could lead to IOMMU call traces (Selvin Xavier) [1637120] - [arm64] arm64: KVM: Sanitize PSTATE.M when being set from userspace (Wei Huang) [1635721] {CVE-2018-18021} - [arm64] arm64: KVM: Tighten guest core register access from userspace (Wei Huang) [1635721] {CVE-2018-18021} - [fs] fs/cifs: require sha512 (Leif Sahlberg) [1610619] - [fs] smb3: simplify code by removing CONFIG_CIFS_SMB311 (Leif Sahlberg) [1610619] - [fs] smb3: add support for statfs for smb3.1.1 posix extensions (Leif Sahlberg) [1610619] - [fs] cifs: allow disabling insecure dialects in the config (Leif Sahlberg) [1610619] - [fs] smb3: if server does not support posix do not allow posix mount option (Leif Sahlberg) [1610619]- [security] cap_inode_getsecurity: use d_find_any_alias() instead of d_find_alias() (Joe Lawrence) [1638647] - [powerpc] powerpc/cacheinfo: Report the correct shared_cpu_map on big-cores (Steve Best) [1639265] - [powerpc] powerpc: Use cpu_smallcore_sibling_mask at SMT level on bigcores (Steve Best) [1639265] - [powerpc] powerpc: Detect the presence of big-cores via ibm, thread-groups (Steve Best) [1639265] - [x86] mark amd rome as unsupported (David Arcari) [1638506] - [netdrv] qed: Add support for virtual link (Chad Dupuis) [1638013] - [netdrv] qede: Add driver support for 20G link speed (Chad Dupuis) [1638013] - [netdrv] qed: Add driver support for 20G link speed (Chad Dupuis) [1638013] - [netdrv] qed: Fix shmem structure inconsistency between driver and the mfw (Chad Dupuis) [1638013] - [netdrv] qed: Add missing device config for RoCE EDPM in UFP mode (Chad Dupuis) [1638013] - [netdrv] qed: Add a flag which indicates if offload TC is set (Chad Dupuis) [1638013] - [netdrv] qed: Do not add VLAN 0 tag to untagged frames in multi-function mode (Chad Dupuis) [1638013] - [netdrv] qed: Fix populating the invalid stag value in multi function mode (Chad Dupuis) [1638013] - [tools] perf python: Fix pyrf_evlist__read_on_cpu() interface (Jiri Olsa) [1628229] - [tools] perf mmap: Store real cpu number in 'struct perf_mmap' (Jiri Olsa) [1628229]- [fs] gfs2: Fix iomap buffered write support for journaled files (2) (Andreas Grunbacher) [1637944] - [xen] xen/manage: don't complain about an empty value in control/sysrq node (Vitaly Kuznetsov) [1623344] - [drm] drm/amdgpu: Silence harmless WARN_ON() during MST disable (Lyude Paul) [1638137] - [netdrv] net: macb: Fix regression breaking non-MDIO fixed-link PHYs (Petr Oros) [1638259] - [netdrv] net: macb: do not disable MDIO bus at open/close time (Petr Oros) [1638259] - [fs] proc: restrict kernel stack dumps to root (Waiman Long) [1638044] - [base] firmware: Always initialize the fw_priv list object (Waiman Long) [1638044] - [base] firmware: Fix security issue with request_firmware_into_buf() (Waiman Long) [1638044] - [fs] sysfs: Do not return POSIX ACL xattrs via listxattr (Waiman Long) [1638044] - [fs] vfs: don't evict uninitialized inode (Waiman Long) [1638044] - [fs] new primitive: discard_new_inode() (Waiman Long) [1638044] - [arm64] arm64: jump_label.h: use asm_volatile_goto macro instead of "asm goto" (Waiman Long) [1638044] - [kernel] sched/topology: Set correct NUMA topology type (Waiman Long) [1638044] - [kernel] bpf: 32-bit RSH verification must truncate input before the ALU op (Waiman Long) [1638044] - [mm] mm: madvise(MADV_DODUMP): allow hugetlbfs pages (Waiman Long) [1638044] - [x86] x86/pti: Fix section mismatch warning/error (Waiman Long) [1638044] - [kernel] uaccess: Fix is_source param for check_copy_size() in copy_to_iter_mcsafe() (Waiman Long) [1638044] - [x86] x86/mm: Expand static page table for fixmap space (Waiman Long) [1638044] - [fs] fs/lock: skip lock owner pid translation in case we are in init_pid_ns (Waiman Long) [1638044] - [x86] perf/x86/intel/lbr: Fix incomplete LBR call stack (Waiman Long) [1638044] - [kernel] perf/hw_breakpoint: Split attribute parse and commit (Waiman Long) [1638044] - [kernel] bitfield: fix *_encode_bits() (Waiman Long) [1638044] - [kernel] posix-timers: Sanitize overrun handling (Waiman Long) [1638044] - [kernel] posix-timers: Make forward callback return s64 (Waiman Long) [1638044] - [kernel] alarmtimer: Prevent overflow for relative nanosleep (Waiman Long) [1638044] - [x86] x86/entry/64: Add two more instruction suffixes (Waiman Long) [1638044] - [powerpc] powerpc/kdump: Handle crashkernel memory reservation failure (Waiman Long) [1638044] - [s390] s390/mm: correct allocate_pgste proc_handler callback (Waiman Long) [1638044] - [x86] x86/numa_emulation: Fix emulated-to-physical node mapping (Waiman Long) [1638044] - [x86] x86/paravirt: Fix some warning messages (Waiman Long) [1638044] - [kernel] sched/fair: Fix vruntime_normalized() for remote non-migration wakeup (Waiman Long) [1638044] - [kernel] bpf/verifier: disallow pointer subtraction (Waiman Long) [1638044] - [mm] mm: shmem.c: Correctly annotate new inodes for lockdep (Waiman Long) [1638044] - [kernel] sched/core: Use smp_mb() in wake_woken_function() (Waiman Long) [1638044] - [kernel] bpf: fix rcu annotations in compute_effective_progs() (Waiman Long) [1638044] - [x86] x86/mm/pti: Add an overflow check to pti_clone_pmds() (Waiman Long) [1638044] - [x86] x86/pti: Check the return value of pti_user_pagetable_walk_pmd() (Waiman Long) [1638044] - [x86] x86/pti: Check the return value of pti_user_pagetable_walk_p4d() (Waiman Long) [1638044] - [powerpc] powerpc/pseries/mm: call H_BLOCK_REMOVE (Steve Best) [1637116] - [powerpc] powerpc/pseries/mm: factorize PTE slot computation (Steve Best) [1637116] - [powerpc] powerpc/pseries/mm: Introducing FW_FEATURE_BLOCK_REMOVE (Steve Best) [1637116] - [watchdog] watchdog/hpwdt: Disable PreTimeout when Timeout is smaller (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Update Driver Documentation (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Update version number (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Module parameter alias (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Display module parameters (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Claim NMI from iLO (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Initialize pretimeout from module parameter (Joseph Szczypek) [1632945]- [mm] mm/sparse: delete old sparse_init and enable new one (Baoquan He) [1625105] - [mm] mm/sparse: add new sparse_init_nid() and sparse_init() (Baoquan He) [1625105] - [mm] mm/sparse: move buffer init/fini to the common place (Baoquan He) [1625105] - [mm] mm/sparse: use the new sparse buffer functions in non-vmemmap (Baoquan He) [1625105] - [mm] mm/sparse: abstract sparse buffer allocations (Baoquan He) [1625105] - [mm] mm/sparse: optimize memmap allocation during sparse_init() (Baoquan He) [1625105] - [mm] mm/sparse.c: add a new parameter 'data_unit_size' for alloc_usemap_and_memmap (Baoquan He) [1625105] - [mm] mm/sparsemem.c: defer the ms->section_mem_map clearing (Baoquan He) [1625105] - [mm] mm/sparse.c: add a static variable nr_present_sections (Baoquan He) [1625105] - [mm] mm/sparse.c: make sparse_init_one_section void and remove check (Baoquan He) [1625105] - [target] scsi: target: iscsi: cxgbit: fix csk leak (Arjun Vynipadath) [1628864] - [target] scsi: target: iscsi: cxgbit: use pr_debug() instead of pr_info() (Arjun Vynipadath) [1628864] - [infiniband] iw_cxgb4: only allow 1 flush on user qps (Arjun Vynipadath) [1628865] - [infiniband] iw_cxgb4: pass window scale in flowc work request (Arjun Vynipadath) [1628865] - [infiniband] iw_cxgb4: remove duplicate memcpy() in c4iw_create_listen() (Arjun Vynipadath) [1628865] - [netdrv] mlxsw: spectrum_switchdev: Do not leak RIFs when removing bridge (Petr Oros) [1638268] - [tty] tty: vt_ioctl: fix potential Spectre v1 (Prarit Bhargava) [1637123] - [powerpc] powerpc/time: Add set_state_oneshot_stopped decrementer callback (Steve Best) [1638287] - [powerpc] powerpc/time: Use clockevents_register_device(), fixing an issue with large decrementer (Steve Best) [1638287] - [hwmon] hwmon: (nct6775) Fix potential Spectre v1 (Dean Nelson) [1637464] - [vfio] vfio-pci: Disable binding to PFs with SR-IOV enabled (Alex Williamson) [1637871] - [netdrv] net: hns3: fix page_offset overflow when CONFIG_ARM64_64K_PAGES (Petr Oros) [1638385] - [netdrv] net: hns: fix skb->truesize underestimation (Petr Oros) [1638385] - [netdrv] net: hns: fix length and page_offset overflow when CONFIG_ARM64_64K_PAGES (Petr Oros) [1638385] - [netdrv] net: hns3: Fix get_vector ops in hclgevf_main module (Petr Oros) [1638385] - [netdrv] net: hns3: Fix warning bug when doing lp selftest (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for mac pause not disable in pfc mode (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for mailbox message truncated problem (Petr Oros) [1638385] - [netdrv] net: hns3: Fix return value error in hns3_reset_notify_down_enet (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for reset_level default assignment probelm (Petr Oros) [1638385] - [netdrv] net: hns3: Reset net device with rtnl_lock (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for phy link issue when using marvell phy driver (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for command format parsing error in hclge_is_all_function_id_zero (Petr Oros) [1638385] - [net] xprtrdma: Fix disconnect regression (Don Dutile) [1635418] - [infiniband] RDMA/uverbs: Fix validity check for modify QP (Don Dutile) [1635418] - [infiniband] IB/srp: Avoid that sg_reset -d $srp_device triggers an infinite loop (Don Dutile) [1635418] - [infiniband] ucma: fix a use-after-free in ucma_resolve_ip() (Don Dutile) [1635418] - [infiniband] RDMA/uverbs: Atomically flush and mark closed the comp event queue (Don Dutile) [1635418] - [infiniband] RDMA/mlx4: Ensure that maximal send/receive SGE less than supported by HW (Don Dutile) [1635418 1623100] - [infiniband] RDMA/cma: Protect cma dev list with lock (Don Dutile) [1635418] - [infiniband] IB/ipoib: Avoid a race condition between start_xmit and cm_rep_handler (Don Dutile) [1635418] - [infiniband] RDMA/ucma: check fd type in ucma_migrate_id() (Don Dutile) [1635418] - [infiniband] RDMA/rxe: Set wqe->status correctly if an unexpected response is received (Don Dutile) [1635418] - [infiniband] IB/IPoIB: Set ah valid flag in multicast send flow (Don Dutile) [1635418] - [infiniband] RDMA/core: Avoid holding lock while initializing fields on stack (Don Dutile) [1635418] - [infiniband] IB/rxe: Drop QP0 silently (Don Dutile) [1635418] - [infiniband] RDMA/umem: Don't hold mmap_sem for too long (Don Dutile) [1635418] - [infiniband] IB/srpt: Fix srpt_cm_req_recv() error path (2/2) (Don Dutile) [1635418] - [infiniband] IB/srpt: Fix srpt_cm_req_recv() error path (1/2) (Don Dutile) [1635418] - [infiniband] RDMA: Fix storage of PortInfo CapabilityMask in the kernel (Don Dutile) [1635418] - [infiniband] IB/core: type promotion bug in rdma_rw_init_one_mr() (Don Dutile) [1635418] - [infiniband] RDMA/i40w: Hold read semaphore while looking after VMA (Don Dutile) [1635418] - [infiniband] vmw_pvrdma: Release netdev when vmxnet3 module is removed (Don Dutile) [1635418] - [infiniband] ib_srpt: Fix a use-after-free in __srpt_close_all_ch() (Don Dutile) [1635418] - [infiniband] ib_srpt: Fix a use-after-free in srpt_close_ch() (Don Dutile) [1635418] - [infiniband] IB/srpt: Support HCAs with more than two ports (Don Dutile) [1635418] - [infiniband] IB/rxe: don't clear the tx queue on every transfer (Don Dutile) [1635418] - [infiniband] IB/core: add max_send_sge and max_recv_sge attributes (Don Dutile) [1635418 1623100] - [infiniband] IB/rxe: support for 802.1q VLAN on the listener (Don Dutile) [1635418] - [netdrv] cxgb4: impose mandatory VLAN usage when non-zero TAG ID (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: when max_tx_rate is 0 disable tx rate limiting (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: do not return DUPLEX_UNKNOWN when link is down (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: expose stats fetched from firmware via debugfs (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: remove stats fetched from firmware (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: specify IQTYPE in fw_iq_cmd (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Fix the condition to check if the card is T5 (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Support ethtool private flags (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Add support for FW_ETH_TX_PKT_VM_WR (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Add flag tc_flower_initialized (Arjun Vynipadath) [1628863] - [s390] s390/zcrypt: remove VLA usage from the AP bus (Philipp Rudo) [1637865] - [s390] s390/ap_bus: replace PTR_RET with PTR_ERR_OR_ZERO (Philipp Rudo) [1637865] - [s390] s390/crypto: fix gcc 8 stringop-truncation warning (Philipp Rudo) [1637865] - [s390] s390/zcrypt: code beautify (Philipp Rudo) [1637865] - [s390] s390/zcrypt: add copy_from_user length plausibility checks (Philipp Rudo) [1637865] - [s390] s390/zcrypt: Show load of cards and queues in sysfs (Philipp Rudo) [1637865] - [s390] s390/kvm: fix deadlock when killed by oom (Philipp Rudo) [1638264] - [fs] xfs: fix data corruption w/ unaligned reflink ranges (Brian Foster) [1633476] - [fs] xfs: fix data corruption w/ unaligned dedupe ranges (Brian Foster) [1633476] - [fs] xfs: update ctime and remove suid before cloning files (Brian Foster) [1633476] - [fs] xfs: zero posteof blocks when cloning above eof (Brian Foster) [1633476] - [fs] xfs: refactor clonerange preparation into a separate helper (Brian Foster) [1633476] - [netdrv] nfp: avoid buffer leak when FW communication fails (Petr Oros) [1638233] - [netdrv] nfp: don't fail probe on pci_sriov_set_totalvfs() errors (Petr Oros) [1638233] - [netdrv] nfp: wait for posted reconfigs when disabling the device (Petr Oros) [1638233] - [netdrv] liquidio: fix hang when re-binding VF host drv after running DPDK VF driver (Petr Oros) [1638224] - [netdrv] r8169: set RxConfig after tx/rx is enabled for RTL8169sb/8110sb devices (Petr Oros) [1638210] - [netdrv] r8169: add support for NCube 8168 network card (Petr Oros) [1638210] - [netdrv] r8169: don't use MSI-X on RTL8106e (Petr Oros) [1638210] - [netdrv] r8169: don't use MSI-X on RTL8168g (Petr Oros) [1638210] - [powerpc] KVM: PPC: Book3S HV: Fix guest r11 corruption with POWER9 TM workarounds (David Gibson) [1637766] - [drm] drm/amdgpu: Suppress keypresses from ACPI_VIDEO events (Lyude Paul) [1631918] - [infiniband] IB/hfi1: Remove race conditions in user_sdma send path (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Eliminate races in the SDMA send error path (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Fix destroy_qp hang after a link down (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Fix context recovery when PBC has an UnsupportedVL (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Invalid user input can result in crash (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Fix SL array bounds check (Alex Estrin) [1637068] - [powerpc] powerpc/fadump: re-register firmware-assisted dump if already registered (Steve Best) [1637383] - [powerpc] powerpc/fadump: cleanup crash memory ranges support (Steve Best) [1637383] - [powerpc] powerpc/fadump: merge adjacent memory ranges to reduce PT_LOAD segements (Steve Best) [1637383] - [powerpc] powerpc/fadump: handle crash memory ranges array index overflow (Steve Best) [1637383] - [scsi] scsi: qedi: Initialize the stats mutex lock (Chad Dupuis) [1637245] - [fs] gfs2: Fix iomap buffered write support for journaled files (Andreas Grunbacher) [1637944] - [fs] gfs2: eliminate update_rgrp_lvb_unlinked (Andreas Grunbacher) [1637944] - [fs] gfs2: Fix gfs2_testbit to use clone bitmaps (Andreas Grunbacher) [1637944] - [fs] gfs2: Get rid of gfs2_ea_strlen (Andreas Grunbacher) [1637944] - [fs] GFS2: rgrp free blocks used incorrectly (Andreas Grunbacher) [1637944] - [fs] gfs2: remove redundant variable 'moved' (Andreas Grunbacher) [1637944] - [fs] gfs2: use iomap_readpage for blocksize == PAGE_SIZE (Andreas Grunbacher) [1637944] - [fs] gfs2: Use iomap for stuffed direct I/O reads (Andreas Grunbacher) [1637944] - [fs] gfs2: fallocate_chunk: Always initialize struct iomap (Andreas Grunbacher) [1637944] - [fs] gfs2: Remove gfs2_write_(begin,end) (Andreas Grunbacher) [1637944] - [fs] gfs2: iomap direct I/O support (Andreas Grunbacher) [1637944] - [fs] gfs2: gfs2_extent_length cleanup (Andreas Grunbacher) [1637944] - [fs] gfs2: iomap buffered write support (Andreas Grunbacher) [1637944] - [fs] gfs2: Further iomap cleanups (Andreas Grunbacher) [1637944] - [fs] fs: gfs2: Adding new return type vm_fault_t (Andreas Grunbacher) [1637944] - [fs] gfs2: using posix_acl_xattr_size instead of posix_acl_to_xattr (Andreas Grunbacher) [1637944] - [fs] gfs2: Don't reject a supposedly full bitmap if we have blocks reserved (Andreas Grunbacher) [1637944] - [fs] gfs2: Eliminate redundant ip->i_rgd (Andreas Grunbacher) [1637944] - [fs] gfs2: Stop messing with ip->i_rgd in the rlist code (Andreas Grunbacher) [1637944] - [fs] gfs2: call ktime_get_coarse_real_ts64() directly (Andreas Grunbacher) [1637944] - [fs] gfs2: Minor clarification to __gfs2_punch_hole (Andreas Grunbacher) [1637944] - [fs] gfs2: Don't withdraw under a spin lock (Andreas Grunbacher) [1637944] - [fs] gfs2: eliminate rs_inum and reduce the size of gfs2 inodes (Andreas Grunbacher) [1637944] - [drm] drm/nouveau/drm/nouveau: Grab runtime PM ref in nv50_mstc_detect() (Lyude Paul) [1628749] - [drm] drm/nouveau/disp: fix DP disable race (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Don't forget to cancel hpd_work on suspend/unload (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Prevent handling ACPI HPD events too early (Lyude Paul) [1628749] - [drm] drm/nouveau: Reset MST branching unit before enabling (Lyude Paul) [1628749] - [drm] drm/nouveau: Only write DP_MSTM_CTRL when needed (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove useless poll_enable() call in drm_load() (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove useless poll_disable() call in switcheroo_set_state() (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove useless poll_enable() call in switcheroo_set_state() (Lyude Paul) [1628749] - [drm] drm/nouveau: Fix deadlocks in nouveau_connector_detect() (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Use pm_runtime_get_noresume() in connector_detect() (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Fix deadlock with fb_helper with async RPM requests (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove duplicate poll_enable() in pmops_runtime_suspend() (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Fix bogus drm_kms_helper_poll_enable() placement (Lyude Paul) [1628749] - [md] dm table: require that request-based DM be layered on blk-mq devices (Mike Snitzer) [1637682] - [md] dm: rename DM_TYPE_MQ_REQUEST_BASED to DM_TYPE_REQUEST_BASED (Mike Snitzer) [1637682] - [md] dm: remove legacy request-based IO path (Mike Snitzer) [1637682] - [md] dm linear: fix linear_end_io conditional definition (Mike Snitzer) [1637682] - [md] dm linear: eliminate linear_end_io call if CONFIG_DM_ZONED disabled (Mike Snitzer) [1637682] - [md] dm: fix report zone remapping to account for partition offset (Mike Snitzer) [1637682] - [md] dm cache: destroy migration_cache if cache target registration failed (Mike Snitzer) [1637682] - [md] dm cache: fix resize crash if user doesn't reload cache table (Mike Snitzer) [1637682] - [md] dm cache metadata: ignore hints array being too small during resize (Mike Snitzer) [1637682] - [md] dm raid: remove bogus const from decipher_sync_action() return type (Mike Snitzer) [1637682] - [md] dm mpath: fix attached_handler_name leak and dangling hw_handler_name pointer (Mike Snitzer) [1637682] - [md] dm thin metadata: fix __udivdi3 undefined on 32-bit (Mike Snitzer) [1637682] - [md] dm thin metadata: try to avoid ever aborting transactions (Mike Snitzer) [1637682] - [md] dm raid: bump target version, update comments and documentation (Mike Snitzer) [1637682] - [md] dm raid: fix RAID leg rebuild errors (Mike Snitzer) [1637682] - [md] dm raid: fix rebuild of specific devices by updating superblock (Mike Snitzer) [1637682] - [md] dm raid: fix stripe adding reshape deadlock (Mike Snitzer) [1637682] - [md] dm raid: fix reshape race on small devices (Mike Snitzer) [1637682] - [md] dm: disable CRYPTO_TFM_REQ_MAY_SLEEP to fix a GFP_KERNEL recursion deadlock (Mike Snitzer) [1637682] - [md] dm verity: fix crash on bufio buffer that was allocated with vmalloc (Mike Snitzer) [1637682] - [md] dm writecache: fix a crash due to reading past end of dirty_bitmap (Mike Snitzer) [1637682] - [md] dm crypt: don't decrease device limits (Mike Snitzer) [1637682] - [md] dm cache metadata: set dirty on all cache blocks after a crash (Mike Snitzer) [1637682] - [md] dm snapshot: remove stale FIXME in snapshot_map() (Mike Snitzer) [1637682] - [md] dm snapshot: improve performance by switching out_of_order_list to rbtree (Mike Snitzer) [1637682] - [md] dm kcopyd: avoid softlockup in run_complete_job (Mike Snitzer) [1637682] - [md] dm cache metadata: save in-core policy_hint_size to on-disk superblock (Mike Snitzer) [1637682] - [md] dm thin: stop no_space_timeout worker when switching to write-mode (Mike Snitzer) [1637682] - [md] dm kcopyd: return void from dm_kcopyd_copy() (Mike Snitzer) [1637682] - [md] dm thin: include metadata_low_watermark threshold in pool status (Mike Snitzer) [1637682] - [md] dm writecache: report start_sector in status line (Mike Snitzer) [1637682] - [md] dm crypt: convert essiv from ahash to shash (Mike Snitzer) [1637682] - [md] dm crypt: use wake_up_process() instead of a wait queue (Mike Snitzer) [1637682] - [md] dm integrity: recalculate checksums on creation (Mike Snitzer) [1637682] - [md] dm integrity: flush journal on suspend when using separate metadata device (Mike Snitzer) [1637682] - [md] dm integrity: use version 2 for separate metadata (Mike Snitzer) [1637682] - [md] dm integrity: allow separate metadata device (Mike Snitzer) [1637682] - [md] dm integrity: add ic->start in get_data_sector() (Mike Snitzer) [1637682] - [md] dm integrity: report provided data sectors in the status (Mike Snitzer) [1637682] - [md] dm integrity: implement fair range locks (Mike Snitzer) [1637682] - [md] dm integrity: decouple common code in dm_integrity_map_continue() (Mike Snitzer) [1637682] - [md] dm integrity: change 'suspending' variable from bool to int (Mike Snitzer) [1637682] - [md] dm delay: add flush as a third class of IO (Mike Snitzer) [1637682] - [md] dm delay: refactor repetitive code (Mike Snitzer) [1637682] - [md] dm cache: only allow a single io_mode cache feature to be requested (Mike Snitzer) [1637682] - [md] dm thin: update stale "Status" Documentation (Mike Snitzer) [1637682] - [pci] PCI: Reprogram bridge prefetch registers on resume (Myron Stowe) [1637155] - [input] Input: xen-kbdfront - fix multi-touch XenStore node's locations (Benjamin Tissoires) [1637027] - [input] Input: elantech - enable middle button of touchpad on ThinkPad P72 (Benjamin Tissoires) [1637027] - [hid] HID: i2c-hid: Use devm to allocate i2c_hid struct (Benjamin Tissoires) [1637027] - [hid] HID: input: fix leaking custom input node name (Benjamin Tissoires) [1637027] - [hid] HID: core: fix grouping by application (Benjamin Tissoires) [1637027] - [hid] HID: multitouch: fix Elan panels with 2 input modes declaration (Benjamin Tissoires) [1637027] - [input] Input: do not use WARN() in input_alloc_absinfo() (Benjamin Tissoires) [1637027] - [s390] s390: vfio-ap: setup APCB mask using KVM dedicated function (Cornelia Huck) [1508118] - [s390] KVM: s390: Tracing APCB changes (Cornelia Huck) [1508118] - [s390] KVM: s390: fix locking for crypto setting error path (Cornelia Huck) [1508118] - [s390] s390: doc: detailed specifications for AP virtualization (Cornelia Huck) [1508118] - [s390] KVM: s390: CPU model support for AP virtualization (Cornelia Huck) [1508118] - [s390] KVM: s390: device attrs to enable/disable AP interpretation (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-2 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow guest FORMAT-1 CRYCB on host FORMAT-2 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-1 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow CRYCB FORMAT-0 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow CRYCB FORMAT-1 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: Allow CRYCB FORMAT-2 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: Make use of CRYCB FORMAT2 clear (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: Do the CRYCB validation first (Cornelia Huck) [1508118] - [s390] KVM: s390: Clear Crypto Control Block when using vSIE (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: implement VFIO_DEVICE_RESET ioctl (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: zeroize the AP queues (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: implement VFIO_DEVICE_GET_INFO ioctl (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: implement mediated device open callback (Cornelia Huck) [1508118] - [s390] KVM: s390: interface to clear CRYCB masks (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interface to view matrix mdev matrix (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interfaces to configure control domains (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interfaces to configure domains (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interfaces to configure adapters (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: register matrix device with VFIO mdev framework (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: base implementation of VFIO AP device driver (Cornelia Huck) [1508118] - [s390] KVM: s390: refactor crypto initialization (Cornelia Huck) [1508118] - [s390] KVM: s390: introduce and use KVM_REQ_VSIE_RESTART (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: simulate VCPU SIE entry/exit (Cornelia Huck) [1508118] - [s390] s390/zcrypt: hex string mask improvements for apmask and aqmask (Cornelia Huck) [1508118] - [s390] s390/zcrypt: AP bus support for alternate driver(s) (Cornelia Huck) [1508118] - [s390] s390/zcrypt: switch return type to bool for ap_instructions_available() (Cornelia Huck) [1508118] - [s390] s390/zcrypt: fix ap_instructions_available() returncodes (Cornelia Huck) [1508118] - [s390] s390/zcrypt: Integrate ap_asm.h into include/asm/ap.h (Cornelia Huck) [1508118] - [s390] s390/zcrypt: Review inline assembler constraints (Cornelia Huck) [1508118] - [s390] s390/zcrypt: Add ZAPQ inline function (Cornelia Huck) [1508118] - [net] ipv6: use rt6_info members when dst is set in rt6_fill_node (Xin Long) [1625864 1625803 1625117]- [netdrv] amd-xgbe: use dma_mapping_error to check map errors (David Arcari) [1637666] - [crypto] crypto: qat - Fix KASAN stack-out-of-bounds bug in adf_probe() (Waiman Long) [1629547] - [powerpc] powerpc: fix csum_ipv6_magic() on little endian platforms (Diego Domingos) [1625579] - [net] smc: generic netlink family should be __ro_after_init (Philipp Rudo) [1632435] - [net] net/smc: fix sizeof to int comparison (Philipp Rudo) [1632435] - [net] net/smc: no urgent data check for listen sockets (Philipp Rudo) [1632435] - [net] net/smc: enable fallback for connection abort in state INIT (Philipp Rudo) [1632435] - [net] net/smc: remove duplicate mutex_unlock (Philipp Rudo) [1632435] - [net] net/smc: fix non-blocking connect problem (Philipp Rudo) [1632435] - [net] net/smc: send response to test link signal (Philipp Rudo) [1632435] - [net] net: simplify sock_poll_wait (Philipp Rudo) [1632435] - [net] net/smc: Simplify ib_post_(send|recv|srq_recv)() calls (Philipp Rudo) [1632435] - [net] net/smc: Remove a WARN_ON() statement (Philipp Rudo) [1632435] - [powerpc] KVM: PPC: Book3S HV: Add NO_HASH flag to GET_SMMU_INFO ioctl result (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add a VM capability to enable nested virtualization (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add nested shadow page tables to debugfs (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Allow HV module to load without hypervisor mode (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle differing endianness for H_ENTER_NESTED (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Sanitise hv_regs on nested guest entry (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add one-reg interface to virtual PTCR register (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Don't access HFSCR, LPIDR or LPCR when running nested (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Invalidate TLB when nested vcpu moves physical cpu (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Use hypercalls for TLB invalidation when nested (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Implement H_TLB_INVALIDATE hcall (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Introduce rmap to track nested guest mappings (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle page fault for a nested guest (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle hypercalls correctly when nested (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Use XICS hypercalls when running as a nested hypervisor (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Nested guest entry via hypercall (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Framework and hcall stubs for nested virtualization (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Use kvmppc_unmap_pte() in kvm_unmap_radix() (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Refactor radix page fault handler (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Make kvmppc_mmu_radix_xlate process/partition table agnostic (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Clear partition table entry on vm teardown (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Use ccr field in pt_regs struct embedded in vcpu struct (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add a debugfs file to dump radix mappings (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle hypervisor instruction faults better (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Streamlined guest entry/exit path on P9 for radix guests (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Call kvmppc_handle_exit_hv() with vcore unlocked (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S: Rework TM save/restore code and make it C-callable (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Simplify real-mode interrupt handling (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Extract PMU save/restore operations as C-callable functions (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Move interrupt delivery on guest entry to C code (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Remove left-over code in XICS-on-XIVE emulation (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S: Simplify external interrupt handling (Suraj Jitindar Singh) [1505999] - [powerpc] powerpc: Turn off CPU_FTR_P9_TM_HV_ASSIST in non-hypervisor mode (Suraj Jitindar Singh) [1505999] - [powerpc] powerpc/64s: Remove POWER9 DD1 support (Suraj Jitindar Singh) [1505999] - [netdrv] net/mlx5: Add Fast teardown support (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Set vlan masks for all offloaded TC rules (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: E-Switch, Fix out of bound access when setting vport rate (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Avoid unbounded peer devices when unpairing TC hairpin rules (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Cache the system image guid (Alaa Hleihel) [1636554] - [netdrv] mlx5: remove ndo_poll_controller (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Check for SQ and not RQ state when modifying hairpin SQ (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix read from coherent memory (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: don't set CHECKSUM_COMPLETE on SCTP packets (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Set ECN for received packets using CQE indication (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix possible deadlock from lockdep when adding fte to fg (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Check for error in mlx5_attach_interface (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Consider PCI domain in search for next dev (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix not releasing read lock when adding flow rules (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: E-Switch, Fix memory leak when creating switchdev mode FDB tables (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use u16 for Work Queue buffer strides offset (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use u16 for Work Queue buffer fragment size (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix debugfs cleanup in the device init/remove flow (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix use-after-free in self-healing flow (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Make function mlx5i_grp_sw_update_stats() static (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Use priv stats in completion rx flow (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Add ndo stats support for IPoIB child devices (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Add ndo stats support for IPoIB netdevices (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Initialize max_opened_tc in mlx5i_init flow (Alaa Hleihel) [1636554] - [netdrv] IB/mlx5: Fix leaking stack memory to userspace (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Reorganize the makefile (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: clock.c depends on CONFIG_PTP_1588_CLOCK (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: vxlan.c depends on CONFIG_VXLAN (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Move flow steering declarations into en/fs.h (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add CONFIG_MLX5_EN_ARFS for accelerated flow steering support (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add CONFIG_MLX5_EN_RXNFC for ethtool rx nfc (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Ethtool steering, move ethtool callbacks (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Reduce command polling interval (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use max_num_eqs for calculation of required MSIX vectors (Alaa Hleihel) [1636554] - [netdrv] RDMA/mlx5: Fix shift overflow in mlx5_ib_create_wq (Alaa Hleihel) [1636554] - [netdrv] overflow.h: Add arithmetic shift helper (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Fix uninitialized variable (Alaa Hleihel) [1636554] - [netdrv] RDMA: Fix return code check in rdma_set_cq_moderation (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, move vxlan logic to core driver (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, add sync lock for add/del vxlan port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, return values for add/del port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, rename from mlx5e to mlx5 (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, rename struct mlx5e_vxlan to mlx5_vxlan_port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, move netdev only logic to en_main.c (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, add direct delete function (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, cleanup an unused member in vxlan work (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, replace ports radix-tree with hash table (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, check maximum number of UDP ports (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, reflect 4789 UDP port default addition to software database (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Move XDP related code into new XDP files (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Restrict the combination of large MTU and XDP (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Gather all XDP pre-requisite checks in a single function (Alaa Hleihel) [1636554] - [netdrv] IB/mlx5: avoid excessive warning msgs when creating VFs on 2nd port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Use PARTIAL_GSO for UDP segmentation (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Remove redundant WARN when we cannot find neigh entry (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix tristate and description for MLX5 module (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Better return types for CQE API (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use ERR_CAST() instead of coding it (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Add missing SET_DRIVER_VERSION command translation (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: fix uaccess beyond "count" in debugfs read/write handlers (Alaa Hleihel) [1636554] - [netdrv] IB/mlx5: Honor cnt_set_id_valid flag instead of set_id (Alaa Hleihel) [1636554] - [infiniband] IB/mlx5: fix uaccess beyond "count" in debugfs read/write handlers (Alaa Hleihel) [1636554] - [infiniband] IB/mlx5: Fix GRE flow specification (Alaa Hleihel) [1636554] - [infiniband] IB/mlx5: Remove set-but-not-used variables (Alaa Hleihel) [1636554] - [infiniband] RDMA/mlx5: Don't leak UARs in case of free fails (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Update NIC HW stats on demand only (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add counter for total num of NOP operations (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add counter for MPWQE filler strides (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add channel events counter (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add a counter for congested UMRs (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add NAPI statistics (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add XDP_TX completions statistics (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add TX completions statistics (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: RX, Use existing WQ local variable (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Convert large order kzalloc allocations to kvzalloc (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add UDP GSO remaining counter (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add UDP GSO support (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Rate limit errors in command interface (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Prevent warns in dmesg upon firmware commands (Alaa Hleihel) [1636554] - [netdrv] mlx4: remove ndo_poll_controller (Alaa Hleihel) [1636553] - [netdrv] net/mlx4: Use cpumask_available for eq->affinity_mask (Alaa Hleihel) [1636553] - [netdrv] net/mlx4/en_rx: Mark expected switch fall-throughs (Alaa Hleihel) [1636553] - [netdrv] net/mlx4/mcg: Mark expected switch fall-throughs (Alaa Hleihel) [1636553] - [infiniband] IB/mlx4: Use 4K pages for kernel QP's WQE buffer (Alaa Hleihel) [1636553] - [netdrv] net/mlx4_core: Allow MTTs starting at any index (Alaa Hleihel) [1636553] - [infiniband] IB/mlx4: Test port number before querying type (Alaa Hleihel) [1636553] - [powerpc] powerpc/numa: Skip onlining a offline node in kdump path (Steve Best) [1637118] - [netdrv] net: aquantia: Make function aq_fw1x_set_power() static (David Arcari) [1636533] - [netdrv] net: aquantia: memory corruption on jumbo frames (David Arcari) [1636533 1630377] - [netdrv] net: aquantia: bump driver version (David Arcari) [1636533] - [netdrv] net: aquantia: renaming for better visibility (David Arcari) [1636533] - [netdrv] net: aquantia: whitespace changes (David Arcari) [1636533] - [netdrv] net: aquantia: implement EEE support (David Arcari) [1636533] - [netdrv] net: aquantia: implement WOL support (David Arcari) [1636533] - [netdrv] net: aquantia: definitions for WOL (David Arcari) [1636533] - [netdrv] net: aquantia: fix hw_atl_utils_fw_upload_dwords (David Arcari) [1636533] - [netdrv] net: aquantia: Make some functions static (David Arcari) [1636533] - [netdrv] net: aquantia: bump driver version (David Arcari) [1636533] - [netdrv] net: aquantia: Add renegotiate ethtool operation support (David Arcari) [1636533] - [netdrv] net: aquantia: Implement rx/tx flow control ethtools callback (David Arcari) [1636533] - [netdrv] net: aquantia: Improve adapter init/deinit logic (David Arcari) [1636533] - [netdrv] net: aquantia: Ethtool based ring size configuration (David Arcari) [1636533] - [wireless] ath10k: fix memory leak of tpc_stats (Petr Oros) [1637528] - [wireless] ath10k: snoc: use correct bus-specific pointer in RX retry (Petr Oros) [1637528] - [wireless] ath10k: fix incorrect size of dma_free_coherent in ath10k_ce_alloc_src_ring_64 (Petr Oros) [1637528] - [wireless] brcmsmac: fix wrap around in conversion from constant to s16 (Petr Oros) [1637528] - [wireless] mt76x2: fix mrr idx/count estimation in mt76x2_mac_fill_tx_status() (Petr Oros) [1637528] - [wireless] ath10k: transmit queued frames after processing rx packets (Petr Oros) [1637528] - [wireless] ath10k: protect ath10k_htt_rx_ring_free with rx_ring.lock (Petr Oros) [1637528] - [wireless] ath10k: use locked skb_dequeue for rx completions (Petr Oros) [1637528] - [wireless] ath10k: sdio: set skb len for all rx packets (Petr Oros) [1637528] - [wireless] ath10k: sdio: use same endpoint id for all packets in a bundle (Petr Oros) [1637528] - [wireless] iwlwifi: cancel the injective function between hw pointers to tfd entry index (Petr Oros) [1637528] - [wireless] ath10k: disable bundle mgmt tx completion event support (Petr Oros) [1637528] - [wireless] ath10k: prevent active scans on potential unusable channels (Petr Oros) [1637528] - [wireless] ath9k_hw: fix channel maximum power level test (Petr Oros) [1637528] - [wireless] ath9k: report tx status on EOSP (Petr Oros) [1637528] - [wireless] iwlwifi: pcie: don't access periphery registers when not available (Petr Oros) [1637528] - [wireless] brcmfmac: fix brcmf_wiphy_wowl_params() NULL pointer dereference (Petr Oros) [1637528] - [netdrv] be2net: don't flip hw_features when VXLANs are added/deleted (Petr Oros) [1637133] - [netdrv] be2net: Fix memory leak in be_cmd_get_profile_config() (Petr Oros) [1637133] - [netdrv] be2net: Mark expected switch fall-through (Petr Oros) [1637133] - [netdrv] be2net: fix spelling mistake "seqence" -> "sequence" (Petr Oros) [1637133] - [netdrv] be2net: Update the driver version to 12.0.0.0 (Petr Oros) [1637133] - [netdrv] be2net: gather debug info and reset adapter (only for Lancer) on a tx-timeout (Petr Oros) [1637133] - [netdrv] be2net: move rss_flags field in rss_info to ensure proper alignment (Petr Oros) [1637133] - [netdrv] be2net: re-order fields in be_error_recovert to avoid hole (Petr Oros) [1637133] - [netdrv] be2net: remove unused tx_jiffies field from be_tx_stats (Petr Oros) [1637133] - [netdrv] be2net: move txcp field in be_tx_obj to eliminate holes in the struct (Petr Oros) [1637133] - [netdrv] be2net: reorder fields in be_eq_obj structure (Petr Oros) [1637133] - [netdrv] be2net: remove desc field from be_eq_obj (Petr Oros) [1637133] - [netdrv] be2net: remove unused old custom busy-poll fields (Petr Oros) [1637133] - [netdrv] be2net: remove unused old AIC info (Petr Oros) [1637133] - [x86] x86/spec_ctrl/compat: Call IBRS_ENTRY only after valid kernel stack (Waiman Long) [1636843] - [acpi] ACPI/PPTT: Handle architecturally unknown cache types (Jeremy Linton) [1636567] - [base] drivers: base: cacheinfo: Do not populate sysfs for unknown cache types (Jeremy Linton) [1636567] - [fs] getxattr: use correct xattr length (Lukas Czerner) [1637049] - [x86] Mark Intel Cascade Lake supported (Steve Best) [1636651] - [x86] x86/boot: Fix kexec booting failure in the SEV bit detection code (Kairui Song) [1632514] - [scsi] scsi: megaraid_sas: driver version upgrade (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Support FW provided TM timeout values (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Return immediately from wait_for_adapter_operational after kill adapter (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Update controller info during resume (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Do not do Kill adapter if GET_CTRL_INFO times out (Tomas Henzl) [1635565] - [scsi] qla2xxx: Update driver version to 10.00.00.07.08.0-k (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Check for Register disconnect (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix driver hang when FC-NVMe LUNs are configured (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix re-using LoopID when handle is in use (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix duplicate switch database entries (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix NVMe session hang on unload (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix iIDMA error (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix stalled relogin (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix unintended Logout (Himanshu Madhani) [1633373] - [powerpc] powerpc/pseries: Disable CPU hotplug across migrations (Steve Best) [1633587] - [block] blk-mq: I/O and timer unplugs are inverted in blktrace (Ming Lei) [1634330] - [block] block: fix deadline elevator drain for zoned block devices (Ming Lei) [1634333] - [block] blk-mq: Allow blocking queue tag iter callbacks (Ming Lei) [1634328] - [block] block: use nanosecond resolution for iostat (Ming Lei) [1634329] - [block] null_blk: fix zoned support for non-rq based operation (Ming Lei) [1634324] - [block] blk-cgroup: increase number of supported policies (Ming Lei) [1634335] - [block] block: bfq: swap puts in bfqg_and_blkg_put (Ming Lei) [1634334] - [block] block: don't warn when doing fsync on read-only devices (Ming Lei) [1634331] - [block] blkcg: use tryget logic when associating a blkg with a bio (Ming Lei) [1634332] - [block] blkcg: delay blkg destruction until after writeback has (Ming Lei) [1634332] - [block] Revert "blk-throttle: fix race between (Ming Lei) [1634332] - [block] blk-wbt: remove dead code (Ming Lei) [1634326] - [block] blk-wbt: improve waking of tasks (Ming Lei) [1634326] - [block] blk-wbt: abstract out end IO completion handler (Ming Lei) [1634326]- [dma] driver/dma/ioat: Call del_timer_sync() without holding prep_lock (Waiman Long) [1607654] - [netdrv] bnxt_en: Fix VF mac address regression (Jonathan Toppins) [1635846] - [netdrv] bnxt_en: Do not adjust max_cp_rings by the ones used by RDMA (Jonathan Toppins) [1635846] - [netdrv] bnxt_en: Clean up unused functions (Jonathan Toppins) [1635846] - [fs] fsnotify: fix ignore mask logic in fsnotify() (Lukas Czerner) [1635537] - [net] net/af_iucv: locate IUCV header via skb_network_header() (Philipp Rudo) [1635332] - [net] net/af_iucv: drop inbound packets with invalid flags (Philipp Rudo) [1635332] - [net] net/af_iucv: fix skb handling on HiperTransport xmit error (Philipp Rudo) [1635332] - [hid] HID: i2c-hid: Fix flooded incomplete report after S3 on Rayd touchscreen (David Arcari) [1635746] - [i2c] i2c: core: ACPI: Make acpi_gsb_i2c_read_bytes() check i2c_transfer return value (David Arcari) [1635746] - [i2c] i2c: designware: Re-init controllers with pm_disabled set on resume (David Arcari) [1635746] - [i2c] i2c: core: ACPI: Properly set status byte to 0 for multi-byte writes (David Arcari) [1635746] - [fs] fs/quota: Fix spectre gadget in do_quotactl (Lukas Czerner) [1635521] - [fs] xfs: fix error handling in xfs_bmap_extents_to_btree (Brian Foster) [1633171] - [fs] xfs: remove invalid log recovery first/last cycle check (Brian Foster) [1633171] - [fs] xfs: validate inode di_forkoff (Brian Foster) [1633171] - [fs] xfs: skip delalloc COW blocks in xfs_reflink_end_cow (Brian Foster) [1633171] - [fs] xfs: don't treat unknown di_flags2 as corruption in scrub (Brian Foster) [1633171] - [fs] xfs: remove duplicated include from alloc.c (Brian Foster) [1633171] - [fs] xfs: don't bring in extents in xfs_bmap_punch_delalloc_range (Brian Foster) [1633171] - [fs] xfs: fix transaction leak in xfs_reflink_allocate_cow() (Brian Foster) [1633171] - [fs] xfs: avoid lockdep false positives in xfs_trans_alloc (Brian Foster) [1633171] - [fs] xfs: refactor xfs_buf_log_item reference count handling (Brian Foster) [1633171] - [fs] xfs: clean up xfs_trans_brelse() (Brian Foster) [1633171] - [fs] xfs: don't unlock invalidated buf on aborted tx commit (Brian Foster) [1633171] - [fs] xfs: remove last of unnecessary xfs_defer_cancel() callers (Brian Foster) [1633171] - [fs] xfs: don't crash the vfs on a garbage inline symlink (Brian Foster) [1633171] - [fs] iomap: set page dirty after partial delalloc on mkwrite (Brian Foster) [1633171] - [fs] xfs: sanity check ag header values in xrep_calc_ag_resblks (Brian Foster) [1633171] - [fs] xfs: recalculate summary counters at mount time if icount is bad (Brian Foster) [1633171] - [fs] xfs: fix a null pointer dereference in xfs_bmap_extents_to_btree (Brian Foster) [1633171] - [fs] xfs: remove b_last_holder & associated macros (Brian Foster) [1633171] - [fs] xfs: repair the AGI (Brian Foster) [1633171] - [fs] xfs: repair the AGFL (Brian Foster) [1633171] - [fs] xfs: repair the AGF (Brian Foster) [1633171] - [fs] xfs: remove dead error handling code in xfs_dquot_disk_alloc() (Brian Foster) [1633171] - [fs] xfs: use WRITE_ONCE to update if_seq (Brian Foster) [1633171] - [fs] xfs: fix a comment in xfs_log_reserve (Brian Foster) [1633171] - [fs] xfs: only validate summary counts on primary superblock (Brian Foster) [1633171] - [fs] xfs: substitute spaces with tabs (Brian Foster) [1633171] - [fs] xfs: fold dfops into the transaction (Brian Foster) [1633171] - [fs] xfs: always defer agfl block frees (Brian Foster) [1633171] - [fs] xfs: pass transaction to xfs_defer_add() (Brian Foster) [1633171] - [fs] xfs: replace xfs_defer_ops ->dop_pending with on-stack list (Brian Foster) [1633171] - [fs] xfs: cancel dfops on xfs_defer_finish() error (Brian Foster) [1633171] - [fs] xfs: clean out superfluous dfops dop params/vars (Brian Foster) [1633171] - [fs] xfs: drop dop param from xfs_defer_op_type ->finish_item() callback (Brian Foster) [1633171] - [fs] xfs: automatic dfops inode relogging (Brian Foster) [1633171] - [fs] xfs: automatic dfops buffer relogging (Brian Foster) [1633171] - [fs] xfs: add missing defer ijoins for held inodes (Brian Foster) [1633171] - [fs] xfs: replace dop_low with transaction flag (Brian Foster) [1633171] - [fs] xfs: pass transaction to dfops reset/move helpers (Brian Foster) [1633171] - [fs] xfs: remove unused __xfs_defer_cancel() internal helper (Brian Foster) [1633171] - [fs] xfs: use transaction for intent recovery instead of raw dfops (Brian Foster) [1633171] - [fs] xfs: refactor internal dfops initialization (Brian Foster) [1633171] - [fs] xfs: check da node magic in _node_lookup_int (Brian Foster) [1633171] - [fs] xfs: use a local variable for magic number in xfs_da3_node_lookup_int (Brian Foster) [1633171] - [fs] xfs: refactor log recovery check (Brian Foster) [1633171] - [fs] xfs: move extent busy tree initialization to xfs_initialize_perag (Brian Foster) [1633171] - [fs] xfs: avoid COW fork extent lookups in writeback if the fork didn't change (Brian Foster) [1633171] - [fs] xfs: maintain a sequence count for inode fork manipulations (Brian Foster) [1633171] - [fs] xfs: check for unknown v5 feature bits in superblock write verifier (Brian Foster) [1633171] - [fs] xfs: verify icount in superblock write (Brian Foster) [1633171] - [fs] libxfs: add more bounds checking to sb sanity checks (Brian Foster) [1633171] - [fs] xfs: refactor superblock verifiers (Brian Foster) [1633171] - [fs] xfs: refactor the xrep_extent_list into xfs_bitmap (Brian Foster) [1633171] - [fs] xfs: introduce a new xfs_inode_has_cow_data helper (Brian Foster) [1633171] - [fs] xfs: remove the xfs_ifork_t typedef (Brian Foster) [1633171] - [fs] xfs: simplify xfs_idata_realloc (Brian Foster) [1633171] - [fs] xfs: remove if_real_bytes (Brian Foster) [1633171] - [fs] xfs: move the repair extent list into its own file (Brian Foster) [1633171] - [fs] xfs: pass transaction lock while setting up agresv on cyclic metadata (Brian Foster) [1633171] - [fs] xfs: remove deprecated barrier/nobarrier mount (Brian Foster) [1633171] - [fs] xfs: clean up IRELE/iput callsites (Brian Foster) [1633171] - [fs] xfs: kill IHOLD (Brian Foster) [1633171] - [fs] xfs: bypass final dfops roll in trans commit path (Brian Foster) [1633171] - [fs] xfs: drop unnecessary xfs_defer_finish() dfops parameter (Brian Foster) [1633171] - [fs] xfs: remove unnecessary dfops init calls in xattr code (Brian Foster) [1633171] - [fs] xfs: remove all boilerplate defer init/finish code (Brian Foster) [1633171] - [fs] xfs: use internal dfops during (b|c)ui recovery (Brian Foster) [1633171] - [fs] xfs: use internal dfops in attr code (Brian Foster) [1633171] - [fs] xfs: use internal dfops in cow blocks cancel (Brian Foster) [1633171] - [fs] xfs: support embedded dfops in transaction (Brian Foster) [1633171] - [fs] xfs: pack holes in xfs_defer_ops and xfs_trans (Brian Foster) [1633171] - [fs] xfs: reset dfops to initial state after finish (Brian Foster) [1633171] - [fs] xfs: remove unused deferred ops committed field (Brian Foster) [1633171] - [fs] xfs: make deferred processing safe for embedded dfops (Brian Foster) [1633171] - [fs] xfs: fix transaction leak on remote attr set/remove failure (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in log recovery intent processing (Brian Foster) [1633171] - [fs] xfs: pull up dfops from xfs_itruncate_extents() (Brian Foster) [1633171] - [fs] xfs: force summary counter recalc at next mount (Brian Foster) [1633171] - [fs] xfs: refactor unmount record write (Brian Foster) [1633171] - [fs] xfs: detect and fix bad summary counts at mount (Brian Foster) [1633171] - [fs] xfs: fix indentation and other whitespace problems in scrub/repair (Brian Foster) [1633171] - [fs] xfs: shorten struct xfs_scrub_context to struct xfs_scrub (Brian Foster) [1633171] - [fs] xfs: shorten xfs_repair_ prefix to xrep_ (Brian Foster) [1633171] - [fs] xfs: shorten xfs_scrub_ prefix (Brian Foster) [1633171] - [fs] xfs: clean up xfs_btree_del_cursor callers (Brian Foster) [1633171] - [fs] xfs: trivial xfs_btree_del_cursor cleanups (Brian Foster) [1633171] - [fs] xfs: return from _defer_finish with a clean transaction (Brian Foster) [1633171] - [fs] xfs: check leaf attribute block freemap in verifier (Brian Foster) [1633171] - [fs] libxfs: Fix a couple of sparse complaintis (Brian Foster) [1633171] - [fs] xfs: use swap macro in xfs_dir2_leafn_rebalance (Brian Foster) [1633171] - [fs] xfs_bmap_util: use swap macro (Brian Foster) [1633171] - [fs] xfs_attr_leaf: use swap macro in xfs_attr3_leaf_rebalance (Brian Foster) [1633171] - [fs] xfs: don't assume a left rmap when allocating a new rmap (Brian Foster) [1633171] - [fs] xfs: kill __xfs_buf_submit_common() (Brian Foster) [1633171] - [fs] xfs: combine (a)sync buffer submission apis (Brian Foster) [1633171] - [fs] xfs: use sync buffer I/O for sync delwri queue submission (Brian Foster) [1633171] - [fs] xfs: refactor buffer submission into a common helper (Brian Foster) [1633171] - [fs] xfs: remove xfs_defer_init() firstblock param (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in inode inactivate (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in extent swap (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in reflink cow block cancel (Brian Foster) [1633171] - [fs] xfs: replace no-op firstblock init with ->t_firstblock (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in dq alloc (Brian Foster) [1633171] - [fs] xfs: remove xfs_alloc_arg firstblock field (Brian Foster) [1633171] - [fs] xfs: remove xfs_btree_cur private firstblock field (Brian Foster) [1633171] - [fs] xfs: remove bmap format helpers firstblock params (Brian Foster) [1633171] - [fs] xfs: remove bmap extent add helper firstblock params (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmalloca firstblock field (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in bmap extent split (Brian Foster) [1633171] - [fs] xfs: remove bmap insert/collapse firstblock param (Brian Foster) [1633171] - [fs] xfs: remove xfs_bunmapi() firstblock param (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmapi_write() firstblock param (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in insert/collapse range (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in xfs_bmapi_remap() (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock for all xfs_bunmapi() callers (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock for all xfs_bmapi_write() callers (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in xattr ops (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in attrfork add (Brian Foster) [1633171] - [fs] xfs: remove firstblock param from xfs dir ops (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in dir ops (Brian Foster) [1633171] - [fs] xfs: add firstblock field to xfs_trans (Brian Foster) [1633171] - [fs] xfs: allow null firstblock in xfs_bmapi_write() when tp is null (Brian Foster) [1633171] - [fs] xfs: refactor dfops init to attach to transaction (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in reflink cow recover path (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in cancel cow blocks operation (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for rmap extent swap operations (Brian Foster) [1633171] - [fs] xfs: remove unused btree cursor bc_private.a.dfops field (Brian Foster) [1633171] - [fs] xfs: remove xfs_btree_cur bmbt dfops field (Brian Foster) [1633171] - [fs] xfs: remove dfops param from internal bmap extent helpers (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for collapse/insert range operations (Brian Foster) [1633171] - [fs] xfs: remove struct xfs_bmalloca dfops field (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmapi_remap() dfops param (Brian Foster) [1633171] - [fs] xfs: remove xfs_bunmapi() dfops param (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for all xfs_bunmapi() callers (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmapi_write() dfops param (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for all xfs_bmapi_write() callers (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in dqalloc transaction (Brian Foster) [1633171] - [fs] xfs: replace xfs_da_args->dfops accesses with ->t_dfops and remove (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in extent split tx and remove param (Brian Foster) [1633171] - [fs] xfs: remove dfops param in attr fork add path (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for attr set/remove operations (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for recovery of (b|c)ui log items (Brian Foster) [1633171] - [fs] xfs: remove dfops param from high level dirname calls (Brian Foster) [1633171] - [fs] xfs: remove dfops parameter from ifree call stack (Brian Foster) [1633171] - [fs] xfs: rename xfs_trans ->t_agfl_dfops to ->t_dfops (Brian Foster) [1633171] - [fs] xfs: cow unwritten conversion uses uninitialized dfops (Brian Foster) [1633171] - [fs] xfs: update my copyrights for the writeback and iomap code (Brian Foster) [1633171] - [fs] xfs: add support for sub-pagesize writeback without buffer_heads (Brian Foster) [1633171] - [fs] xfs: allow writeback on pages without buffer heads (Brian Foster) [1633171] - [fs] xfs: refactor the tail of xfs_writepage_map (Brian Foster) [1633171] - [fs] xfs: remove xfs_start_page_writeback (Brian Foster) [1633171] - [fs] xfs: move all writeback buffer_head manipulation into xfs_map_at_offset (Brian Foster) [1633171] - [fs] xfs: don't look at buffer heads in xfs_add_to_ioend (Brian Foster) [1633171] - [fs] xfs: remove the imap_valid flag (Brian Foster) [1633171] - [fs] xfs: simplify xfs_map_blocks by using xfs_iext_lookup_extent directly (Brian Foster) [1633171] - [fs] xfs: remove xfs_reflink_find_cow_mapping (Brian Foster) [1633171] - [fs] xfs: remove the now unused XFS_BMAPI_IGSTATE flag (Brian Foster) [1633171] - [fs] xfs: make xfs_writepage_map extent map centric (Brian Foster) [1633171] - [fs] xfs: rename the offset variable in xfs_writepage_map (Brian Foster) [1633171] - [fs] xfs: remove xfs_map_cow (Brian Foster) [1633171] - [fs] xfs: remove xfs_reflink_trim_irec_to_next_cow (Brian Foster) [1633171] - [fs] xfs: don't use XFS_BMAPI_IGSTATE in xfs_map_blocks (Brian Foster) [1633171] - [fs] xfs: don't clear imap_valid for a non-uptodate buffers (Brian Foster) [1633171] - [fs] xfs: do not set the page uptodate in xfs_writepage_map (Brian Foster) [1633171] - [fs] xfs: move locking into xfs_bmap_punch_delalloc_range (Brian Foster) [1633171] - [fs] xfs: simplify xfs_aops_discard_page (Brian Foster) [1633171] - [fs] xfs: use iomap for blocksize == PAGE_SIZE readpage and readpages (Brian Foster) [1633171] - [fs] iomap: fix WARN_ON_ONCE on uninitialized variable (Brian Foster) [1633171] - [fs] iomap: Switch to offset_in_page for clarity (Brian Foster) [1633171] - [fs] iomap: add support for sub-pagesize buffered I/O without buffer heads (Brian Foster) [1633171] - [fs] iomap: add inline data support to iomap_readpage_actor (Brian Foster) [1633171] - [fs] iomap: support direct I/O to inline data (Brian Foster) [1633171] - [fs] iomap: refactor iomap_dio_actor (Brian Foster) [1633171] - [fs] iomap: add initial support for writes without buffer heads (Brian Foster) [1633171] - [fs] iomap: add an iomap-based readpage and readpages implementation (Brian Foster) [1633171] - [fs] iomap: add private pointer to struct iomap (Brian Foster) [1633171] - [fs] iomap: add a page_done callback (Brian Foster) [1633171] - [fs] iomap: generic inline data handling (Brian Foster) [1633171] - [fs] iomap: complete partial direct I/O writes synchronously (Brian Foster) [1633171] - [fs] iomap: mark newly allocated buffer heads as new (Brian Foster) [1633171] - [fs] fs: factor out a __generic_write_end helper (Brian Foster) [1633171] - [netdrv] amd-xgbe: mark driver as tech preview (David Arcari) [1633209] - [fs] ext4, dax: set ext4_dax_aops for dax files (Lukas Czerner) [1633239] - [fs] ext4, dax: add ext4_bmap to ext4_dax_aops (Lukas Czerner) [1633239] - [fs] ext4: don't mark mmp buffer head dirty (Lukas Czerner) [1633239] - [fs] ext4: show test_dummy_encryption mount option in /proc/mounts (Lukas Czerner) [1633239] - [fs] ext4: fix online resizing for bigalloc file systems with a 1k block size (Lukas Czerner) [1633239] - [fs] ext4: fix online resize's handling of a too-small final block group (Lukas Czerner) [1633239] - [fs] ext4: recalucate superblock checksum after updating free blocks/inodes (Lukas Czerner) [1633239] - [fs] ext4: avoid arithemetic overflow that can trigger a BUG (Lukas Czerner) [1633239] - [fs] ext4: avoid divide by zero fault when deleting corrupted inline directories (Lukas Czerner) [1633239] - [fs] ext4: check to make sure the rename(2)'s destination is not freed (Lukas Czerner) [1633239] - [fs] ext4: remove unneeded variable "err" in ext4_mb_release_inode_pa() (Lukas Czerner) [1633239] - [fs] ext4: fix spectre gadget in ext4_mb_regular_allocator() (Lukas Czerner) [1633239] - [fs] ext4: check for NUL characters in extended attribute's name (Lukas Czerner) [1633239] - [fs] ext4: use ext4_warning() for sb_getblk failure (Lukas Czerner) [1633239] - [fs] ext4: fix race when setting the bitmap corrupted flag (Lukas Czerner) [1633239] - [fs] ext4: reset error code in ext4_find_entry in fallback (Lukas Czerner) [1633239] - [fs] ext4: check allocation failure when duplicating "data" in ext4_remount() (Lukas Czerner) [1633239] - [fs] ext4: sysfs: print ext4_super_block fields as little-endian (Lukas Czerner) [1633239] - [firmware] efi/x86: Handle page faults occurring while running EFI runtime services (Bhupesh Sharma) [1627557] - [firmware] efi: Make efi_rts_work accessible to efi page fault handler (Bhupesh Sharma) [1627557] - [firmware] efi: Remove the declaration of efi_late_init() as the function is unused (Bhupesh Sharma) [1627557] - [firmware] efi: Use a work queue to invoke EFI Runtime Services (Bhupesh Sharma) [1627557] - [firmware] efi/x86: Use non-blocking SetVariable() for efi_delete_dummy_variable() (Bhupesh Sharma) [1627557] - [fs] gfs2: Special-case rindex for gfs2_grow (Robert S Peterson) [1628360] - [fs] GFS2: Fix recovery issues for spectators (Robert S Peterson) [1628298]- [powerpc] powerpc/pkeys: Fix reading of ibm, processor-storage-keys property (Steve Best) [1633551] - [powerpc] powerpc/pseries: Remove unneeded uses of dlpar work queue (Steve Best) [1633544] - [powerpc] powerpc/pseries: Remove prrn_work workqueue (Steve Best) [1633544] - [pci] ACPI / hotplug / PCI: Don't scan for non-hotplug bridges if slot is not bridge (Myron Stowe) [1634816] - [pci] PCI: Fix enabling of PASID on RC integrated endpoints (Myron Stowe) [1634816] - [pci] IB/hfi1,PCI: Allow bus reset while probing (Myron Stowe) [1634816] - [pci] PCI: Fix faulty logic in pci_reset_bus() (Myron Stowe) [1634816] - [pci] PCI: pciehp: Fix hot-add vs powerfault detection order (Myron Stowe) [1634816] - [pci] Revert "PCI: Add ACS quirk for Intel 300 series" (Myron Stowe) [1634816] - [powerpc] powerpc/numa: Use associativity if VPHN hcall is successful (Steve Best) [1633569] - [pci] PCI: vmd: White list for fast interrupt handlers (Myron Stowe) [1632816] - [pci] PCI: Add function 1 DMA alias quirk for Marvell 88SS9183 (Myron Stowe) [1632816] - [pci] PCI: Rename pci_try_reset_bus() to pci_reset_bus() (Myron Stowe) [1632816] - [pci] PCI: Deprecate pci_reset_bus() and pci_reset_slot() functions (Myron Stowe) [1632816] - [pci] PCI: Unify try slot and bus reset API (Myron Stowe) [1632816] - [pci] PCI: Hide pci_reset_bridge_secondary_bus() from drivers (Myron Stowe) [1632816] - [pci] IB/hfi1: Use pci_try_reset_bus() for initiating PCI Secondary Bus Reset (Myron Stowe) [1632816] - [pci] PCI: Handle error return from pci_reset_bridge_secondary_bus() (Myron Stowe) [1632816] - [pci] PCI/IOV: Tidy pci_sriov_set_totalvfs() (Myron Stowe) [1632816] - [pci] PCI: Enable PASID only if entire path supports End-End TLP prefixes (Myron Stowe) [1632816] - [pci] PCI: Expand documentation for pci_add_dma_alias() (Myron Stowe) [1632816] - [pci] PCI: Add DMA alias quirk for Microsemi Switchtec NTB (Myron Stowe) [1632816] - [pci] switchtec: Use generic PCI Vendor ID and Class Code (Myron Stowe) [1632816] - [pci] PCI: Make pci_get_rom_size() static (Myron Stowe) [1632816] - [pci] PCI: Add check code for last image indicator not set (Myron Stowe) [1632816] - [pci] PCI: Avoid accessing memory outside the ROM BAR (Myron Stowe) [1632816] - [pci] PCI: Make early dump functionality generic (Myron Stowe) [1632816] - [pci] PCI: Cleanup PCI_REBAR_CTRL_BAR_SHIFT handling (Myron Stowe) [1632816] - [pci] PCI: Restore resized BAR state on resume (Myron Stowe) [1632816] - [pci] PCI: Clean up resource allocation in devm_of_pci_get_host_bridge_resources() (Myron Stowe) [1632816] - [pci] PCI: Add ACS Redirect disable quirk for Intel Sunrise Point (Myron Stowe) [1632816] - [pci] PCI: Add device-specific ACS Redirect disable infrastructure (Myron Stowe) [1632816] - [pci] PCI: Convert device-specific ACS quirks from NULL termination to ARRAY_SIZE (Myron Stowe) [1632816] - [pci] PCI: Add "pci=disable_acs_redir=" parameter for peer-to-peer support (Myron Stowe) [1632816] - [pci] PCI: Allow specifying devices using a base bus and path of devfns (Myron Stowe) [1632816] - [pci] PCI: Make specifying PCI devices in kernel parameters reusable (Myron Stowe) [1632816] - [pci] PCI: Hide ACS quirk declarations inside PCI core (Myron Stowe) [1632816] - [pci] PCI: Document ACPI description of PCI host bridges (Myron Stowe) [1632816] - [pci] PCI/MSI: Set IRQCHIP_ONESHOT_SAFE for PCI-MSI irqchips (Myron Stowe) [1632816] - [pci] PCI: Limit config space size for Netronome NFP5000 (Myron Stowe) [1632816] - [pci] PCI: Add PCI_DEVICE_DATA() macro to fully describe device ID entry (Myron Stowe) [1632816] - [pci] PCI: Unify PCI and normal DMA direction definitions (Myron Stowe) [1632816] - [pci] PCI: Use IRQF_ONESHOT if pci_request_irq() called with no handler (Myron Stowe) [1632816] - [pci] PCI: Call dma_debug_add_bus() for pci_bus_type from PCI core (Myron Stowe) [1632816] - [pci] PCI: Mark fall-through switch cases before enabling -Wimplicit-fallthrough (Myron Stowe) [1632816]- [s390] s390/sclp: Allow to request adapter reset (Philipp Rudo) [1635273] - [char] ipmi: Fix NULL pointer dereference in ssif_probe (Tony Camuso) [1635366] - [char] ipmi: Fix I2C client removal in the SSIF driver (Tony Camuso) [1635366] - [char] ipmi: kcs_bmc: don't change device name (Tony Camuso) [1635366] - [kernel] timers: Clear timer_base::must_forward_clk with timer_base::lock held (Waiman Long) [1632820] - [pci] switchtec: Fix Spectre v1 vulnerability (Waiman Long) [1632820] - [kernel] cpu/hotplug: Prevent state corruption on error rollback (Waiman Long) [1632820] - [kernel] cpu/hotplug: Adjust misplaced smb() in cpuhp_thread_fun() (Waiman Long) [1632820] - [base] memory_hotplug: fix kernel_panic on offline page processing (Waiman Long) [1632820] - [mm] mm/hugetlb: filter out hugetlb pages if HUGEPAGE migration is not supported (Waiman Long) [1632820] - [lib] debugobjects: Make stack check warning more informative (Waiman Long) [1632820] - [fs] fs/dcache.c: fix kmemcheck splat at take_dentry_name_snapshot() (Waiman Long) [1632820] - [x86] x86/process: Don't mix user/kernel regs in 64bit __show_regs() (Waiman Long) [1632820] - [x86] x86/dumpstack: Don't dump kernel memory based on usermode RIP (Waiman Long) [1632820] - [x86] x86: Avoid pr_cont() in show_opcodes() (Waiman Long) [1632820] - [x86] x86/entry/64: Wipe KASAN stack shadow before rewind_stack_do_exit() (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Increase l1tf memory limit for Nehalem+ (Waiman Long) [1632820] - [x86] x86/spectre: Add missing family 6 check to microcode check (Waiman Long) [1632820] - [x86] x86/nmi: Fix NMI uaccess race against CR3 switching (Waiman Long) [1632820] - [x86] x86/vdso: Fix lsl operand order (Waiman Long) [1632820] - [x86] x86/vdso: Fix vDSO build if a retpoline is emitted (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Suggest what to do on systems with too much RAM (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Fix off-by-one error when warning that system has too much RAM (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Fix overflow in l1tf_pfn_limit() on 32bit (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Exempt zeroed PTEs from inversion (Waiman Long) [1632820] - [x86] x86/mm/pti: Clear Global bit more aggressively (Waiman Long) [1632820] - [x86] x86/paravirt: Fix spectre-v2 mitigations for paravirt guests (Waiman Long) [1632820] - [target] scsi: target: iscsi: Use bin2hex instead of a re-implementation (Maurizio Lombardi) [1632184] {CVE-2018-14633} - [target] scsi: target: iscsi: Use hex2bin instead of a re-implementation (Maurizio Lombardi) [1632184] {CVE-2018-14633}- [netdrv] ibmvnic: Include missing return code checks in reset function (Steve Best) [1633553] - [netdrv] ibmvnic: Update firmware error reporting with cause string (Steve Best) [1633553] - [netdrv] ibmvnic: Remove code to request error information (Steve Best) [1633553] - [s390] s390/qeth: remove duplicated carrier state tracking (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up drop conditions for received cmds (Hendrik Brueckner) [1633841] - [s390] s390/qeth: re-indent qeth_check_ipa_data() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: consume local address events (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove various redundant code (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove CARD_FROM_CDEV helper (Hendrik Brueckner) [1633841] - [s390] s390/qeth: pass card pointer in iob callback (Hendrik Brueckner) [1633841] - [s390] s390/qeth: re-use qeth_notify_skbs() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove additional skb refcount (Hendrik Brueckner) [1633841] - [s390] s390/qeth: replace open-coded skb_queue_walk() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: on gdev release, reset drvdata (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix discipline unload after setup error (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use DEFINE_MUTEX for qeth_mod_mutex (Hendrik Brueckner) [1633841] - [s390] s390/qeth: convert layer attribute to enum (Hendrik Brueckner) [1633841] - [s390] s390/qeth: reduce 0-initializing when building IPA cmds (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fine-tune spinlocks (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix typo in return value (Hendrik Brueckner) [1633841] - [s390] s390/qeth: invoke softirqs after napi_schedule() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: uninstall IRQ handler on device removal (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove qeth_hdr_chk_and_bounce() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed up TSO transmission (Hendrik Brueckner) [1633841] - [s390] s390/qeth: prepare for copy-free TSO transmission (Hendrik Brueckner) [1633841] - [s390] s390/qeth: check size of required HW header cache object (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix up protocol headers early (Hendrik Brueckner) [1633841] - [s390] s390/qeth: limit csum offload erratum to L3 devices (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove qeth_get_elements_no() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove unused L3 xmit code (Hendrik Brueckner) [1633841] - [s390] s390/qeth: run non-offload L3 traffic over common xmit path (Hendrik Brueckner) [1633841] - [s390] s390/qeth: move L2 xmit code to core module (Hendrik Brueckner) [1633841] - [s390] s390/qdio: reset old sbal_state flags (Hendrik Brueckner) [1633841] - [s390] s390/qeth: don't dump past end of unknown HW header (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use vzalloc for QUERY OAT buffer (Hendrik Brueckner) [1633841] - [s390] s390/qeth: switch on SG by default for IQD devices (Hendrik Brueckner) [1633841] - [s390] s390/qeth: indicate error when netdev allocation fails (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use true and false for boolean values (Hendrik Brueckner) [1633841] - [s390] s390/qeth: don't restrict qeth_card to DMA memory (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up card initialization (Hendrik Brueckner) [1633841] - [s390] s390/qeth: do basic setup for data channel (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use qeth_setup_ccw() to set up all CCWs (Hendrik Brueckner) [1633841] - [s390] s390/qeth: reduce hard-coded access to ccw channels (Hendrik Brueckner) [1633841] - [s390] s390/qeth: extract helper for MPC protocol type (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed up L2 IQD xmit (Hendrik Brueckner) [1633841] - [s390] s390/qeth: add support for constrained HW headers (Hendrik Brueckner) [1633841] - [s390] s390/qeth: merge linearize-check into HW header construction (Hendrik Brueckner) [1633841] - [s390] s390/qeth: add statistics for consumed buffer elements (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use core MTU range checking (Hendrik Brueckner) [1633841] - [s390] s390/qeth: simplify max MTU handling (Hendrik Brueckner) [1633841] - [s390] s390/qeth: don't cache HW port number (Hendrik Brueckner) [1633841] - [s390] s390/qeth: allocate netdevice early (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove redundant netif_carrier_ok() checks (Hendrik Brueckner) [1633841] - [s390] s390/qeth: reset layer2 attribute on layer switch (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix race in used-buffer accounting (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed-up IPv4 OSA xmit (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed-up L3 IQD xmit (Hendrik Brueckner) [1633841] - [s390] s390/qeth: add a L3 xmit wrapper (Hendrik Brueckner) [1633841] - [s390] s390/qeth: increase GSO max size for eligible L3 devices (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up exported symbols (Hendrik Brueckner) [1633841] - [s390] s390/qeth: consolidate ccwgroup driver definition (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up Output Queue selection (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fine-tune RX modesetting (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove unused buffer->aob pointer (Hendrik Brueckner) [1633841] - [s390] s390/qeth: various buffer management cleanups (Hendrik Brueckner) [1633841] - [powerpc] powerpc: Avoid code patching freed init sections (Steve Best) [1633545] - [powerpc] powerpc/tm: Fix userspace r13 corruption (Steve Best) [1633543] - [powerpc] powerpc/tm: Avoid possible userspace r1 corruption on reclaim (Steve Best) [1633543] - [drm] drm/i915/cfl: Add a new CFL PCI ID (Rob Clark) [1626883] - [drm] drm/i915/aml: Introducing Amber Lake platform (Rob Clark) [1626883] - [drm] drm/i915/whl: Introducing Whiskey Lake platform (Rob Clark) [1626883] - [char] ipmi: Move BT capabilities detection to the detect call (Frank Ramsay) [1618774] - [char] ipmi: Rework SMI registration failure (Frank Ramsay) [1618774]- [s390] s390: detect etoken facility (Thomas Huth) [1634069] - [s390] s390/lib: use expoline for all bcr instructions (Thomas Huth) [1634069] - [documentation] vm.txt: Adding 'nr_hugepages_mempolicy' parameter description (Prashant Dhamdhere) [1626547]- [scsi] scsi: ipr: System hung while dlpar adding primary ipr adapter back (Steve Best) [1633217] - [target] scsi: iscsi: target: Don't use stack buffer for scatterlist (Maurizio Lombardi) [1631342] - [rpmspec] Forward port weak-modules support from RHEL 7 to RHEL 8 ("Herton R. Krzesinski") [1596884] - [fs] xfs: Close race between direct IO and xfs_break_layouts() (Eric Sandeen) [1622191] - [fs] xfs: remove unused iolock arg from xfs_break_dax_layouts (Eric Sandeen) [1622191] - [fs] ext4: Close race between direct IO and ext4_break_layouts() (Eric Sandeen) [1616303] - [fs] ext4: handle layout changes to pinned DAX mappings (Eric Sandeen) [1614154] - [fs] dax: dax_layout_busy_page() warn on !exceptional (Eric Sandeen) [1614154] - [fs] dax: mark tech preview (Eric Sandeen) [1627455] - [mm] usercopy: Allow boot cmdline disabling of hardening (Christoph von Recklinghausen) [1589928]- [s390] s390/crypto: Fix return code checking in cbc_paes_crypt() (Philipp Rudo) [1633266] - [drm] amd/display/dc/basics/logger.c: fix build error with CONFIG_FORTIFY_SOURCE=y ("Herton R. Krzesinski") [1548068] - [acpi] ACPICA: AML Parser: skip opcodes that open a scope upon parse failure (Jeremy Linton) [1609885] - [acpi] ACPICA: ACPICA: add status check for acpi_hw_read before assigning return value (Jeremy Linton) [1609885] - [acpi] ACPICA: AML Parser: ignore all exceptions resulting from incorrect AML during table load (Jeremy Linton) [1609885] - [rpmspec] spec: Add missing BuildRequires for bpftool (Jiri Olsa) [1632756] - [powerpc] KVM: PPC: Avoid marking DMA-mapped pages dirty in real mode (David Gibson) [1628412] - [powerpc] powerpc/powernv/ioda: Allocate indirect TCE levels on demand (David Gibson) [1628412] - [powerpc] powerpc/powernv: Rework TCE level allocation (David Gibson) [1628412] - [powerpc] powerpc/powernv: Add indirect levels to it_userspace (David Gibson) [1628412] - [powerpc] KVM: PPC: Make iommu_table::it_userspace big endian (David Gibson) [1628412] - [powerpc] powerpc/powernv: Move TCE manupulation code to its own file (David Gibson) [1628412] - [net] net_sched: fix NULL pointer dereference when delete tcindex filter (Andrea Claudi) [1627648] - [net] net_sched: Fix missing res info when create new tc_index filter (Andrea Claudi) [1627648] - [samples] samples/bpf: xdpsock: order memory on AArch64 (Jesper Brouer) [1615959] - [samples] samples/bpf: xdp_redirect_cpu load balance like Suricata (Jesper Brouer) [1615959] - [samples] samples/bpf: add Paul Hsieh's (LGPL 2.1) hash function SuperFastHash (Jesper Brouer) [1615959] - [samples] samples/bpf: xdp_redirect_cpu handle parsing of double VLAN tagged packets (Jesper Brouer) [1615959] - [samples] samples/bpf: all XDP samples should unload xdp/bpf prog on SIGTERM (Jesper Brouer) [1615959] - [samples] samples/bpf: xdp_rxq_info action XDP_TX must adjust MAC-addrs (Jesper Brouer) [1615959] - [samples] samples/bpf: extend xdp_rxq_info to read packet payload (Jesper Brouer) [1615959] - [powerpc] KVM: PPC: Book3S HV: Use correct pagesize in kvm_unmap_radix() (David Gibson) [1625498] - [net] igmp: fix incorrect unsolicit report count after link down and up (Hangbin Liu) [1625538] - [net] igmp: fix incorrect unsolicit report count when join group (Hangbin Liu) [1625538] - [netdrv] cxgb4: update 1.20.8.0 as the latest firmware supported (Arjun Vynipadath) [1622555] - [virt] svm: nested virt support off by default (Bandan Das) [1571993]- [powerpc] KVM: PPC: Book3S HV: Don't use compound_order to determine host mapping size (David Gibson) [1625860] - [virt] arm64: KVM: Remove pgd_lock (Wei Huang) [1627474] - [virt] KVM: Remove obsolete kvm_unmap_hva notifier backend (Wei Huang) [1627474] - [virt] arm64: KVM: Only force FPEXC32_EL2.EN if trapping FPSIMD (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Clean dcache to PoC when changing PTE due to CoW (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Skip updating PTE entry if no change (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Skip updating PMD entry if no change (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Move DEBUG_SPINLOCK_BUG_ON to vgic.h (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Do not use spin_lock_irqsave/restore with irq disabled (Wei Huang) [1627474] - [virt] KVM: arm: vgic-v3: Add support for ICC_SGI0R and ICC_ASGI1R accesses (Wei Huang) [1627474] - [virt] KVM: arm64: vgic-v3: Add support for ICC_SGI0R_EL1 and ICC_ASGI1R_EL1 accesses (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic-v3: Add core support for Group0 SGIs (Wei Huang) [1627474] - [virt] KVM: arm64: Remove non-existent AArch32 ICC_SGI1R encoding (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Fix lost IRQs from emulated physcial timer when blocked (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Fix potential loss of ptimer interrupts (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Fix possible spectre-v1 write in vgic_mmio_write_apr() (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Update documentation of the GIC devices wrt IIDR (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Let userspace opt-in to writable v2 IGROUPR (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Allow configuration of interrupt groups (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Return error on incompatible uaccess GICD_IIDR writes (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Permit uaccess writes to return errors (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Signal IRQs using their configured group (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Add group field to struct irq (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: GICv2 IGROUPR should read as zero (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Keep track of implementation revision (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Define GICD_IIDR fields for GICv2 and GIv3 (Wei Huang) [1627474] - [virt] arm64: KVM: Cleanup tpidr_el2 init on non-VHE (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic-debug: Show LPI status (Wei Huang) [1627474] - [virt] KVM: arm64: vgic-its: Remove VLA usage (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Fix vgic init race (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Enable adaptative WFE trapping (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Remove unnecessary CMOs when creating HYP page tables (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Stop using the kernel's (pmd, pud, pgd)_populate helpers (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Consolidate page-table accessors (Wei Huang) [1627474] - [virt] arm64: KVM: Avoid marking pages as XN in Stage-2 if CTR_EL0.DIC is set (Wei Huang) [1627474] - [tools] radix tree test suite: Enable ubsan (Waiman Long) [1630244] - [tools] radix tree test suite: Fix compilation (Waiman Long) [1630244] - [block] blk-wbt: don't maintain inflight counts if disabled (Ming Lei) [1622790] - [block] blk-wbt: fix has-sleeper queueing check (Ming Lei) [1622790] - [block] blk-wbt: use wq_has_sleeper() for wq active check (Ming Lei) [1622790] - [block] blk-wbt: move disable check into get_limit() (Ming Lei) [1622790] - [block] block/DAC960.c: make some arrays static const, shrinks object (Ming Lei) [1622790] - [block] blk-mq: sync the update nr_hw_queues with (Ming Lei) [1617959] - [block] blk-mq: init hctx sched after update ctx and hctx mapping (Ming Lei) [1617959] - [block] block: remove duplicate initialization (Ming Lei) [1622790] - [block] tracing/blktrace: Fix to allow setting same value (Ming Lei) [1622790] - [block] pktcdvd: fix setting of 'ret' error return for a few cases (Ming Lei) [1622790] - [block] block: change return type to bool (Ming Lei) [1622790] - [block] block, bfq: return nbytes and not zero from struct cftype (Ming Lei) [1622790] - [block] block, bfq: improve code of bfq_bfqq_charge_time (Ming Lei) [1622790] - [block] block, bfq: reduce write overcharge (Ming Lei) [1622790] - [block] block, bfq: always update the budget of an entity when needed (Ming Lei) [1622790] - [block] block, bfq: readd missing reset of parent-entity service (Ming Lei) [1622790] - [block] block: don't warn for flush on read-only device (Ming Lei) [1622809]- [kernel] locking/rwsem: Make owner store task pointer of last owning reader (Waiman Long) [1631842] - [kernel] locking/rwsem: Exit read lock slowpath if queue empty & no writer (Waiman Long) [1631842] - [x86] x86/microcode: Update the new microcode revision unconditionally (Prarit Bhargava) [1630931] - [x86] x86/microcode: Make sure boot_cpu_data.microcode is up-to-date (Prarit Bhargava) [1630931] - [arm64] arm64: tlb: Provide forward declaration of tlb_flush() before including tlb.h (Waiman Long) [1630521] - [x86] x86/mm: Only use tlb_remove_table() for paravirt (Waiman Long) [1630521] - [mm] mm: mmu_notifier fix for tlb_end_vma (Waiman Long) [1630521] - [mm] mm/tlb, x86/mm: Support invalidating TLB caches for RCU_TABLE_FREE (Waiman Long) [1630521] - [mm] mm/tlb: Remove tlb_remove_table() non-concurrent condition (Waiman Long) [1630521] - [mm] mm: move tlb_table_flush to tlb_flush_mmu_free (Waiman Long) [1630521] - [kernel] clocksource: Revert Remove kthread (Waiman Long) [1628402] - [cpuidle] cpuidle: menu: Retain tick when shallow state is selected (Waiman Long) [1628402] - [cpufreq] cpufreq: governor: Avoid accessing invalid governor_data (Waiman Long) [1628402] - [cpuidle] cpuidle: menu: Handle stopped tick more aggressively (Waiman Long) [1628402] - [kernel] sched: idle: Avoid retaining the tick when it has been stopped (Waiman Long) [1628402] - [net] netfilter: xt_hashlimit: do not crash when reading proc file (Florian Westphal) [1630131] - [x86] x86/boot/KASLR: Skip specified number of 1GB huge pages when doing physical randomization (KASLR) (Baoquan He) [1564824] - [x86] x86/boot/KASLR: Add two new functions for 1GB huge pages handling (Baoquan He) [1564824] - [mfd] mfd: intel-lpss: Add Ice Lake PCI IDs (Gopal Tiwari) [1483477] - [mmc] mmc: sdhci-pci: Add support for Intel ICP (Gopal Tiwari) [1483496]- [mm] mm: get rid of vmacache_flush_all() entirely (Waiman Long) [1631297] {CVE-2018-17182} - [mm] mm, vmacache: hash addresses based on pmd (Waiman Long) [1631297] {CVE-2018-17182} - [mm] mm: Allocate the mm_cpumask (mm->cpu_bitmap) dynamically based on nr_cpu_ids (Waiman Long) [1631297] {CVE-2018-17182} - [infiniband] IB/hfi1: Invalid NUMA node information can cause a divide by zero (Alex Estrin) [1622222] - [nvdimm] libnvdimm: Export max available extent (Jeff Moyer) [1627874] - [nvdimm] libnvdimm: Use max contiguous area for namespace size (Jeff Moyer) [1627874] - [netdrv] ice: Fix and update driver version string (Jonathan Toppins) [1611786] - [netdrv] ice: Introduce SERVICE_DIS flag and service routine functions (Jonathan Toppins) [1611786] - [netdrv] ice: Enable VSI Rx/Tx pruning only when VLAN 0 is active (Jonathan Toppins) [1611786] - [netdrv] ice: Enable firmware logging during device initialization (Jonathan Toppins) [1611786] - [netdrv] ice: Implement ice_bridge_getlink and ice_bridge_setlink (Jonathan Toppins) [1611786] - [netdrv] ice: Add support for Tx hang, Tx timeout and malicious driver detection (Jonathan Toppins) [1611786] - [netdrv] ice: Clean up register file (Jonathan Toppins) [1611786] - [netdrv] ice: Implement handlers for ethtool PHY/link operations (Jonathan Toppins) [1611786] - [netdrv] ice: Refactor VSI allocation, deletion and rebuild flow (Jonathan Toppins) [1611786] - [netdrv] ice: Refactor switch rule management structures and functions (Jonathan Toppins) [1611786] - [netdrv] ice: Code optimization for ice_fill_sw_rule() (Jonathan Toppins) [1611786] - [netdrv] ice: Prevent control queue operations during reset (Jonathan Toppins) [1611786] - [netdrv] ice: Update request resource command to latest specification (Jonathan Toppins) [1611786] - [netdrv] ice: Updates to Tx scheduler code (Jonathan Toppins) [1611786] - [netdrv] ice: Rework flex descriptor programming (Jonathan Toppins) [1611786] - [netdrv] net/mlx5: Fix SQ offset in QPs with small RQ (Alaa Hleihel) [1623367] - [x86] x86/spec_ctrl: Make IBRS code work with SSBD mitigation (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Auto-enable IBRS on Skylake (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Extend spectre_v2 boot option to support IBRS (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Boot time IBRS initialization (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Add IBRS code to the 64-bit assembly entry code (Waiman Long) [1565180] - [x86] x86/cpufeatures: Increase NCAPINTS for future extension (Waiman Long) [1565180] - [netdrv] ice: Trivial formatting fixes (Jonathan Toppins) [1611783] - [netdrv] ice: Change struct members from bool to u8 (Jonathan Toppins) [1611783] - [netdrv] ice: Fix potential return of uninitialized value (Jonathan Toppins) [1611783] - [netdrv] ice: Fix a few null pointer dereference issues (Jonathan Toppins) [1611783] - [netdrv] ice: Update to interrupts enabled in OICR (Jonathan Toppins) [1611783] - [netdrv] ice: Set VLAN flags correctly (Jonathan Toppins) [1611783] - [netdrv] ice: Use order_base_2 to calculate higher power of 2 (Jonathan Toppins) [1611783] - [netdrv] ice: Fix bugs in control queue processing (Jonathan Toppins) [1611783] - [netdrv] ice: Clean control queues only when they are initialized (Jonathan Toppins) [1611783] - [netdrv] ice: Report stats for allocated queues via ethtool stats (Jonathan Toppins) [1611783] - [netdrv] ice: Cleanup magic number (Jonathan Toppins) [1611783] - [netdrv] ice: Remove unnecessary node owner check (Jonathan Toppins) [1611783] - [netdrv] ice: Fix multiple static analyser warnings (Jonathan Toppins) [1611783] - [virt] KVM: VMX: fixes for vmentry_l1d_flush module parameter (Waiman Long) [1616248] {CVE-2018-15572} - [virt] KVM: x86: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts disabled (Waiman Long) [1616248] {CVE-2018-15572} - [virt] x86/kvm/vmx: Fix coding style in vmx_setup_l1d_flush() (Waiman Long) [1616248] {CVE-2018-15572} - [x86] x86/speculation: Support Enhanced IBRS on future CPUs (Waiman Long) [1614144] - [x86] x86/speculation: Protect against userspace-userspace spectreRSB (Waiman Long) [1616248] {CVE-2018-15572} - [x86] x86/speculation: Remove SPECTRE_V2_IBRS in enum spectre_v2_mitigation (Waiman Long) [1616248] {CVE-2018-15572} - [cpufreq] cpufreq: Fix a circular lock dependency problem (Waiman Long) [1599154] - [kernel] cpu/hotplug: Add a cpus_read_trylock() function (Waiman Long) [1599154] - [virt] xen/spinlock: Don't use pvqspinlock if only 1 vCPU (Waiman Long) [1618486]- [mailbox] mailbox: PCC: handle parse error (David Arcari) [1630382] - [hv] vmbus: don't return values for uninitalized channels (Vitaly Kuznetsov) [1617954] - [mm] kernel/memremap, kasan: make ZONE_DEVICE with work with KASAN (Bill O'Donnell) [1629578] - [mm] mm: fix BUG_ON() in vmf_insert_pfn_pud() from VM_MIXEDMAP removal (Jeff Moyer) [1622171] - [mm] dax: remove VM_MIXEDMAP for fsdax and device dax (Jeff Moyer) [1622171]- [i2c] i2c: i801: fix DNV's SMBCTRL register offset (David Arcari) [1628861] - [fs] ceph: avoid a use-after-free in ceph_destroy_options() (Ilya Dryomov) [1629884] - [fs] ceph: fix incorrect use of strncpy (Ilya Dryomov) [1629884] - [block] rbd: support cloning across namespaces (Ilya Dryomov) [1629884] - [block] rbd: factor out get_parent_info() (Ilya Dryomov) [1629884] - [block] rbd: support for images within namespaces (Ilya Dryomov) [1629884] - [block] rbd: pass rbd_spec into parse_rbd_opts_token() (Ilya Dryomov) [1629884] - [net] libceph: weaken sizeof check in ceph_x_verify_authorizer_reply() (Ilya Dryomov) [1629884] - [net] libceph: check authorizer reply/challenge length before reading (Ilya Dryomov) [1629884] - [net] libceph: implement CEPHX_V2 calculation mode (Ilya Dryomov) [1629884] - [net] libceph: add authorizer challenge (Ilya Dryomov) [1629884] - [net] libceph: factor out encrypt_authorizer() (Ilya Dryomov) [1629884] - [net] libceph: factor out __ceph_x_decrypt() (Ilya Dryomov) [1629884] - [net] libceph: factor out __prepare_write_connect() (Ilya Dryomov) [1629884] - [net] libceph: store ceph_auth_handshake pointer in ceph_connection (Ilya Dryomov) [1629884] - [pci] PCI: pciehp: Deduplicate presence check on probe & resume (Myron Stowe) [1583983] - [pci] PCI: pciehp: Avoid implicit fallthroughs in switch statements (Myron Stowe) [1583983] - [pci] PCI: Whitelist Thunderbolt ports for runtime D3 (Myron Stowe) [1583983] - [pci] PCI: Whitelist native hotplug ports for runtime D3 (Myron Stowe) [1583983] - [pci] PCI: sysfs: Resume to D0 on function reset (Myron Stowe) [1583983] - [pci] PCI: pciehp: Resume parent to D0 on config space access (Myron Stowe) [1583983] - [pci] PCI: pciehp: Resume to D0 on enable/disable (Myron Stowe) [1583983] - [pci] PCI: pciehp: Support interrupts sent from D3hot (Myron Stowe) [1583983] - [pci] PCI: pciehp: Obey compulsory command delay after resume (Myron Stowe) [1583983] - [pci] PCI: pciehp: Clear spurious events earlier on resume (Myron Stowe) [1583983] - [pci] PCI: portdrv: Deduplicate PM callback iterator (Myron Stowe) [1583983] - [pci] PCI: pciehp: Avoid slot access during reset (Myron Stowe) [1583983] - [pci] PCI: pciehp: Always enable occupied slot on probe (Myron Stowe) [1583983] - [pci] PCI: pciehp: Become resilient to missed events (Myron Stowe) [1583983] - [pci] PCI: pciehp: Tolerate initially unstable link (Myron Stowe) [1583983] - [pci] PCI: pciehp: Declare pciehp_enable/disable_slot() static (Myron Stowe) [1583983] - [pci] PCI: pciehp: Drop enable/disable lock (Myron Stowe) [1583983] - [pci] PCI: pciehp: Enable/disable exclusively from IRQ thread (Myron Stowe) [1583983] - [pci] PCI: pciehp: Track enable/disable status (Myron Stowe) [1583983] - [pci] PCI: pciehp: Publish to user space last on probe (Myron Stowe) [1583983] - [pci] PCI: hotplug: Demidlayer registration with the core (Myron Stowe) [1583983] - [pci] PCI: pciehp: Drop slot workqueue (Myron Stowe) [1583983] - [pci] PCI: pciehp: Handle events synchronously (Myron Stowe) [1583983] - [pci] PCI: pciehp: Stop blinking on slot enable failure (Myron Stowe) [1583983] - [pci] PCI: pciehp: Convert to threaded polling (Myron Stowe) [1583983] - [pci] PCI: pciehp: Convert to threaded IRQ (Myron Stowe) [1583983] - [pci] PCI: pciehp: Document struct slot and struct controller (Myron Stowe) [1583983] - [pci] PCI: pciehp: Declare pciehp_unconfigure_device() void (Myron Stowe) [1583983] - [pci] PCI: pciehp: Drop unnecessary NULL pointer check (Myron Stowe) [1583983] - [pci] PCI: pciehp: Fix unprotected list iteration in IRQ handler (Myron Stowe) [1583983] - [pci] PCI: pciehp: Fix use-after-free on unplug (Myron Stowe) [1583983] - [pci] PCI: hotplug: Don't leak pci_slot on registration failure (Myron Stowe) [1583983] - [pci] PCI: hotplug: Delete skeleton driver (Myron Stowe) [1583983] - [netdrv] be2net: Use Kconfig flag to support for enabling/disabling adapters (Petr Oros) [1611768] - [acpi] ACPICA: Reference Counts: increase max to 0x4000 for large servers (Frank Ramsay) [1618760]- [net] udp6: add missing checks on edumux packet processing (Paolo Abeni) [1625954] - [net] udp4: fix IP_CMSG_CHECKSUM for connected sockets (Paolo Abeni) [1625954] - [s390] s390/pci: fix out of bounds access during irq setup (Hendrik Brueckner) [1627462] - [nvdimm] libnvdimm: fix ars_status output length calculation (Jeff Moyer) [1616307]- [scsi] scsi: lpfc: Correct MDS diag and nvmet configuration (Dick Kennedy) [1628323] - [iommu] iommu/arm-smmu: workaround DMA mode issues (Mark Salter) [1624077] - [x86] x86/microcode: Allow late microcode loading with SMT disabled (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] tools headers: Synchronise x86 cpufeatures.h for L1TF additions (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/mm/kmmio: Make the tracer robust against L1TF (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/mm/pat: Make set_memory_np() L1TF safe (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Make pmd/pud_mknotpresent() invert (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Invert all not present mappings (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Fix SMT supported evaluation (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] KVM: VMX: Tell the nested hypervisor to skip L1D flush on vmentry (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation: Use ARCH_CAPABILITIES to skip L1D flush on vmentry (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation: Simplify sysfs report of VMX L1TF vulnerability (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Documentation/l1tf: Remove Yonah processors from not vulnerable list (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Don't set l1tf_flush_l1d from vmx_handle_external_intr() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/irq: Let interrupt handlers set kvm_cpu_l1tf_flush_l1d (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86: Don't include linux/irq.h from asm/hardirq.h (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Introduce per-host-cpu analogue of l1tf_flush_l1d (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/irq: Demote irq_cpustat_t::__softirq_pending to u16 (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Move the l1tf_flush_l1d test to vmx_l1d_flush() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Replace 'vmx_l1d_flush_always' with 'vmx_l1d_flush_cond' (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Don't set l1tf_flush_l1d to true from vmx_l1d_flush() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: detect SMT disabled by BIOS (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Documentation/l1tf: Fix typos (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Initialize the vmx_l1d_flush_pages' content (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Unbreak !__HAVE_ARCH_PFN_MODIFY_ALLOWED architectures (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Documentation: Add section about CPU vulnerabilities (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/bugs, kvm: Introduce boot-time control of L1TF mitigations (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Set CPU_SMT_NOT_SUPPORTED early (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Expose SMT control init function (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Allow runtime control of L1D flush (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Serialize L1D flush parameter setter (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Add static key for flush always (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Move l1tf setup function (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/l1tf: Handle EPT disabled state proper (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Drop L1TF MSR list approach (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/litf: Introduce vmx status variable (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Online siblings when SMT control is turned on (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Use MSR save list for IA32_FLUSH_CMD if required (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Extend add_atomic_switch_msr() to allow VMENTER only MSRs (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Separate the VMX AUTOLOAD guest/host number accounting (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add find_msr() helper function (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Split the VMX MSR LOAD structures to have an host/guest numbers (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add L1D flush logic (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add L1D MSR based flush (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add L1D flush algorithm (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add module argument for L1TF mitigation (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM: Warn user if KVM is loaded SMT and L1TF CPU bug being present (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Boot HT siblings at least once (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Revert "x86/apic: Ignore secondary threads if nosmt=force" (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Fix up pte->pfn conversion for PAE (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Protect PAE swap entries against L1TF (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/CPU/AMD: Move TOPOEXT reenablement before reading smp_num_siblings (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpufeatures: Add detection of L1D cache flush support (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Extend 64bit swap file size limit (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/apic: Ignore secondary threads if nosmt=force (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/AMD: Evaluate smp_num_siblings early (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/CPU/AMD: Do not check CPUID max ext level before parsing SMP info (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/intel: Evaluate smp_num_siblings early (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/topology: Provide detect_extended_topology_early() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/common: Provide detect_ht_early() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/AMD: Remove the pointless detect_ht() call (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu: Remove the pointless CPU printout (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Provide knobs to control SMT (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Split do_cpu_down() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Make bringup/teardown of smp threads symmetric (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/topology: Provide topology_smt_supported() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/smp: Provide topology_is_primary_thread() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] sched/smt: Update sched_smt_present at runtime (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/bugs: Move the l1tf function and define pr_fmt properly (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Limit swap file size to MAX_PA/2 (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Disallow non privileged high MMIO PROT_NONE mappings (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Add sysfs reporting for l1tf (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Make sure the first page is always reserved (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Protect PROT_NONE PTEs against speculation (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Protect swap entries against L1TF (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Change order of offset/type in swap entry (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Increase 32bit PAE __PHYSICAL_PAGE_SHIFT (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646}- [pci] PCI/DPC: Remove indirection waiting for inactive link (Myron Stowe) [1485556] - [pci] PCI/DPC: Use threaded IRQ for bottom half handling (Myron Stowe) [1485556] - [pci] PCI/DPC: Print AER status in DPC event handling (Myron Stowe) [1485556] - [pci] PCI/DPC: Remove rp_pio_status from dpc struct (Myron Stowe) [1485556] - [pci] PCI/DPC: Defer event handling to work queue (Myron Stowe) [1485556] - [pci] PCI/DPC: Leave interrupts enabled while handling event (Myron Stowe) [1485556] - [net] net/mlx5e: Offload TC matching on tos/ttl for ip tunnels (Erez Alfasi) [1615121] - [net] net/mlx5e: Support setup of tos and ttl for tunnel key TC action offload (Erez Alfasi) [1615121] - [net] net/mlx5e: Use ttl from route lookup on tc encap offload only if needed (Erez Alfasi) [1615121] - [net] net/sched: cls_flower: Support matching on ip tos and ttl for tunnels (Erez Alfasi) [1615121] - [net] flow_dissector: Dissect tos and ttl from the tunnel info (Erez Alfasi) [1615121] - [net] net/sched: tunnel_key: Allow to set tos and ttl for tc based ip tunnels (Erez Alfasi) [1615121] - [net] net/sched: act_tunnel_key: disambiguate metadata dst error cases (Erez Alfasi) [1615121] - [net] net/sched: add tunnel option support to act_tunnel_key (Erez Alfasi) [1615121] - [iommu] iommu/amd: Add support for IOMMU XT mode (Suravee Suthikulpanit) [1504485] - [iommu] iommu/amd: Add support for higher 64-bit IOMMU Control Register (Suravee Suthikulpanit) [1504485] - [x86] x86: irq_remapping: Move irq remapping mode enum (Suravee Suthikulpanit) [1504485] - [firmware] dcdbas: Add support for WSMT ACPI table (Charles Rose) [1502286]- [documentation] scsi: documentation: add scsi_mod.use_blk_mq to scsi-parameters (Ewan Milne) [1600014] - [scsi] scsi: core: Update SCSI_MQ_DEFAULT help text to match default (Ewan Milne) [1600014] - [scsi] scsi: core: switch to scsi-mq by default (Ewan Milne) [1600014] - [pci] PCI: Match Root Port's MPS to endpoint's MPSS as necessary (Myron Stowe) [1502324] - [pci] PCI: Skip MPS logic for Virtual Functions (VFs) (Myron Stowe) [1502324] - [pci] PCI: Check for PCIe Link downtraining (Myron Stowe) [1502324] - [pci] PCI: Workaround IDT switch ACS Source Validation erratum (Myron Stowe) [1502324] - [of] OF: Don't set default coherent DMA mask (Mark Salter) [1581822] - [acpi] ACPI/IORT: Don't set default coherent DMA mask (Mark Salter) [1581822] - [iommu] iommu/dma: Respect bus DMA limit for IOVAs (Mark Salter) [1581822] - [of] of/device: Set bus DMA mask as appropriate (Mark Salter) [1581822] - [acpi] ACPI/IORT: Set bus DMA mask as appropriate (Mark Salter) [1581822] - [kernel] dma-mapping: Generalise dma_32bit_limit flag (Mark Salter) [1581822] - [acpi] ACPI/IORT: Support address size limit for root complexes (Mark Salter) [1581822] - [of] of/platform: Initialise default DMA masks (Mark Salter) [1581822] - [net] Bluetooth: hidp: buffer overflow in hidp_process_report (Gopal Tiwari) [1623073] {CVE-2018-9363} - [irqchip] irqchip/gic-v3-its: Reduce minimum LPI allocation to 1 for PCI devices (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Honor hypervisor enforced LPI range (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3: Expose GICD_TYPER in the rdist structure (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Drop chunk allocation compatibility (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Move minimum LPI requirements to individual busses (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Use full range of LPIs (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Refactor LPI allocator (Mark Salter) [1550500]- [netdrv] hv_netvsc: Fix a deadlock by getting rtnl lock earlier in netvsc_probe() (Vitaly Kuznetsov) [1625609] - [netdrv] hv_netvsc: ignore devices that are not PCI (Vitaly Kuznetsov) [1625609] - [netdrv] hv/netvsc: Fix NULL dereference at single queue mode fallback (Vitaly Kuznetsov) [1625609] - [netdrv] hv_netvsc: Add per-cpu ethtool stats for netvsc (Vitaly Kuznetsov) [1625609] - [pci] PCI: shpchp: Separate existence of SHPC and permission to use it (Steve Best) [1622953] - [powerpc] KVM: PPC: Book3S HV: Don't truncate HPTE index in xlate function (David Gibson) [1625513] - [kernel] rh_kabi: Add macros to size and extend structs (Prarit Bhargava) [1564570] - [pci] PCI: Remove unnecessary include of (Myron Stowe) [1622672] - [wireless] iwlwifi: Remove unnecessary include of (Myron Stowe) [1622672] - [wireless] ath9k: Remove unnecessary include of (Myron Stowe) [1622672] - [netdrv] igb: Remove unnecessary include of (Myron Stowe) [1622672] - [pci] PCI/ASPM: Convert to use sysfs_match_string() helper (Myron Stowe) [1622672] - [virt] KVM: s390: Properly lock mm context allow_gmap_hpage_1m setting (Thomas Huth) [1623513] - [virt] KVM: s390: vsie: copy wrapping keys to right place (Thomas Huth) [1623513] - [virt] KVM: s390: Fix pfmf and conditional skey emulation (Thomas Huth) [1623513] - [virt] KVM: s390: Fix storage attributes migration with memory slots (Thomas Huth) [1623513] - [virt] KVM: s390: a utility function for migration (Thomas Huth) [1623513]- [lib] vsprintf: Add command line option debug_boot_weak_hash (Prarit Bhargava) [1625687] - [netdrv] i40e: Fix for Tx timeouts when interface is brought up if DCB is enabled (Stefan Assmann) [1616147] - [misc] ocxl: Fix page fault handler in case of fault on dying process (Steve Best) [1624644] - [edac] EDAC, sb_edac: Add support for systems with segmented PCI buses (Aristeu Rozanski) [1621849] - [netdrv] xen-netfront: fix warn message as irq device name has '/' (Vitaly Kuznetsov) [1576160] - [arm64] arm64, kaslr: export offset in VMCOREINFO ELF notes (Bhupesh Sharma) [1624246] - [rpmspec] redhat: Move gfs2 and dlm out of kernel-modules-extra (Andrew Price) [1623511] - [powerpc] powerpc/topology: Get topology for shared processors at boot (Steve Best) [1620039] - [fs] gfs2: Don't set GFS2_RDF_UPTODATE when the lvb is updated (Robert S Peterson) [1622057] - [fs] gfs2: improve debug information when lvb mismatches are found (Robert S Peterson) [1622057] - [fs] gfs2: cleanup: call gfs2_rgrp_ondisk2lvb from gfs2_rgrp_out (Robert S Peterson) [1622057] - [x86] Fix x86 32-bit invalid cpu boot failure message (Prarit Bhargava) [1571456] - [net] net/ipv6: init ip6 anycast rt->dst.input as ip6_input (Hangbin Liu) [1615671] - [pci] PCI/AER: Don't clear AER bits if error handling is Firmware-First (Myron Stowe) [1621933] - [pci] PCI/AER: Remove duplicate PCI_EXP_AER_FLAGS definition (Myron Stowe) [1621933] - [pci] PCI/portdrv: Remove pcie_portdrv_err_handler.slot_reset (Myron Stowe) [1621933] - [pci] PCI/AER: Clear device status bits during ERR_COR handling (Myron Stowe) [1621933] - [pci] PCI/AER: Clear device status bits during ERR_FATAL and ERR_NONFATAL (Myron Stowe) [1621933] - [pci] PCI/AER: Remove ERR_FATAL code from ERR_NONFATAL path (Myron Stowe) [1621933] - [pci] PCI/AER: Factor out ERR_NONFATAL status bit clearing (Myron Stowe) [1621933] - [pci] PCI/AER: Clear only ERR_NONFATAL bits during non-fatal recovery (Myron Stowe) [1621933] - [pci] PCI/AER: Clear only ERR_FATAL status bits during fatal recovery (Myron Stowe) [1621933] - [pci] PCI/AER: Honor "pcie_ports=native" even if HEST sets FIRMWARE_FIRST (Myron Stowe) [1621933] - [pci] PCI/AER: Add sysfs attributes for rootport cumulative stats (Myron Stowe) [1621933] - [pci] PCI/AER: Add sysfs attributes to provide AER stats and breakdown (Myron Stowe) [1621933] - [pci] PCI/AER: Define aer_stats structure for AER capable devices (Myron Stowe) [1621933] - [pci] PCI/AER: Move internal declarations to drivers/pci/pci.h (Myron Stowe) [1621933] - [pci] PCI/AER: Adopt lspci names for AER error decoding (Myron Stowe) [1621933] - [pci] PCI/AER: Expose internal API for obtaining AER information (Myron Stowe) [1621933] - [kernel] rcu: Make expedited GPs handle CPU 0 being offline (Gustavo Duarte) [1610262] - [rpmspec] Generate BootLoaderSpec config fragments ("Herton R. Krzesinski") [1619766]- [net] erspan: set erspan_ver to 1 by default when adding an erspan dev (Xin Long) [1619118] - [hv] x86/hyper-v: Fix wrong merge conflict resolution (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Check for VP_INVAL in hyperv_flush_tlb_others() (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Check cpumask_to_vpset() return value in hyperv_flush_tlb_others_ex() (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Trace PV IPI send (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Use cheaper HVCALL_SEND_IPI hypercall when possible (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Use 'fast' hypercall for HVCALL_SEND_IPI (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Implement hv_do_fast_hypercall16 (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Use cheaper HVCALL_FLUSH_VIRTUAL_ADDRESS_(LIST, SPACE) hypercalls when possible (Vitaly Kuznetsov) [1597652] - [netdrv] xen-netfront: fix queue name setting (Vitaly Kuznetsov) [1576160] - [scsi] lfpc: add Lancer FCoE to the removed devices (Tomas Henzl) [1602033] - [scsi] megaraid_sas: add removed id table (Tomas Henzl) [1602033] - [scsi] aacraid: add removed id table (Tomas Henzl) [1602033] - [scsi] qla4xxx: add removed id table (Tomas Henzl) [1602033] - [scsi] lpfc: add removed id table (Tomas Henzl) [1602033] - [scsi] qla2xxx: add removed id table (Tomas Henzl) [1602033] - [scsi] mpt3sas: add removed id table (Tomas Henzl) [1602033] - [scsi] be2iscsi: add removed id table (Tomas Henzl) [1602033] - [scsi] rh_taint, pci : add information about removed hardware (Tomas Henzl) [1602033] - [kernel] kernel: add SUPPORT_REMOVED kernel taint (Tomas Henzl) [1602033] - [net] sunrpc: Change rpc_print_iostats to rpc_clnt_show_stats and handle rpc_clnt clones (Dave Wysochanski) [1610373] - [net] sunrpc: Add _add_rpc_iostats() to add rpc_iostats metrics (Dave Wysochanski) [1610373] - [net] sunrpc: add _print_rpc_iostats() to output metrics for one RPC op (Dave Wysochanski) [1610373]- [net] xdp: exclude XDP from kABI guarantee (Jiri Benc) [1568551] - [kernel] rh_kabi: introduce RH_KABI_EXCLUDE (Jiri Benc) [1568551] - [powerpc] powerpc/powernv/pci: Work around races in PCI bridge enabling (Steve Best) [1620035] - [block] blk-wbt: fix IO hang in wbt_wait() (Ming Lei) [1614198] - [block] blkcg: Make blkg_root_lookup() work for queues in bypass mode (Ming Lei) [1614198] - [block] null_blk: add lock drop/acquire annotation (Ming Lei) [1614198] - [block] Blk-throttle: reduce tail io latency when iops limit is (Ming Lei) [1614198] - [block] block: paride: pd: mark expected switch fall-throughs (Ming Lei) [1614198] - [block] block: Ensure that a request queue is dissociated from the (Ming Lei) [1614198] - [block] block: Introduce blk_exit_queue() (Ming Lei) [1614198] - [block] blkcg: Introduce blkg_root_lookup() (Ming Lei) [1614198] - [block] block: Remove two superfluous #include directives (Ming Lei) [1614198] - [block] blk-mq: count the hctx as active before allocating tag (Ming Lei) [1614198] - [block] block: bvec_nr_vecs() returns value for wrong slab (Ming Lei) [1614198] - [block] drivers/block/drbd: remove the null check for (Ming Lei) [1614198] - [block] drivers/block/aoe/aoedev: NULL check is not needed for (Ming Lei) [1614198] - [block] drivers/block/mtip32xx: remove the null check for (Ming Lei) [1614198] - [block] cfq: Suppress compiler warnings about comparisons (Ming Lei) [1614198] - [block] cfq: Annotate fall-through in a switch statement (Ming Lei) [1614198] - [block] blk-wbt: Avoid lock contention and thundering herd issue in (Ming Lei) [1590363] - [block] target/loop: depend on SCSI (Ming Lei) [1614198] - [block] xen-blkfront: use true and false for boolean values (Ming Lei) [1614198] - [block] lightnvm: remove minor version check for 2.0 (Ming Lei) [1614198] - [block] scsi: Check sense buffer size at build time (Ming Lei) [1614198] - [block] libata-scsi: Move sense buffers onto stack (Ming Lei) [1614198] - [block] cdrom: Use struct scsi_sense_hdr internally (Ming Lei) [1614198] - [block] ide-cd: Remove redundant sense buffer (Ming Lei) [1614198] - [block] block: Switch struct packet_command to use struct (Ming Lei) [1614198] - [block] target: don't depend on SCSI (Ming Lei) [1614198] - [block] scsi: build scsi_common.o for all scsi passthrough request (Ming Lei) [1614198] - [block] scsi: cxlflash: Drop unused sense buffers (Ming Lei) [1614198] - [block] ide-cd: Drop unused sense buffers (Ming Lei) [1614198] - [block] blk-mq: fix updating tags depth (Ming Lei) [1611900] - [block] block: really disable runtime-pm for blk-mq (Ming Lei) [1611902] - [block] aoe: mark expected switch fall-through (Ming Lei) [1614198] - [block] block: make iolatency avg_lat exponentially decay (Ming Lei) [1614198] - [block] blk-cgroup: clear the throttle queue on fork (Ming Lei) [1614198] - [block] blk-cgroup: hold the queue ref during throttling (Ming Lei) [1614198] - [block] blk-iolatency: fix blkg leak in timer_fn (Ming Lei) [1614198] - [block] block/bsg-lib: use PTR_ERR_OR_ZERO to simplify the flow path (Ming Lei) [1614198] - [block] t10-pi: provide empty t10_pi_complete() for (Ming Lei) [1614198] - [block] block: blk_init_allocated_queue() set q->fq as NULL in the (Ming Lei) [1614198] - [block] nvme: use blk API to remap ref tags for IOs with metadata (Ming Lei) [1614198] - [block] block: move dif_prepare/dif_complete functions to block layer (Ming Lei) [1614198] - [block] block: move ref_tag calculation func to the block layer (Ming Lei) [1614198] - [block] block: don't account for split bio's size in cgroup stats (Ming Lei) [1614198] - [block] pktcdvd: Fix possible Spectre-v1 for pkt_devs (Ming Lei) [1614198] - [block] partitions/aix: append null character to print data from disk (Ming Lei) [1614198] - [block] partitions/aix: fix usage of uninitialized lv_info and lvname (Ming Lei) [1614198] - [block] readahead: stricter check for bdi io_pages (Ming Lei) [1614198] - [block] scsi: virtio_scsi: fix pi_bytes(out, in) on 4 KiB block size (Ming Lei) [1614198] - [block] block: move bio_integrity_(intervals, bytes) into blkdev.h (Ming Lei) [1614198] - [block] xen/blkfront: remove unused macros (Ming Lei) [1614198] - [block] block: allow max_discard_segments to be stacked (Ming Lei) [1614198] - [block] block: unexport bio_clone_bioset (Ming Lei) [1614198] - [block] md: remove a bogus comment (Ming Lei) [1614198] - [block] block: remove bio_clone_kmalloc (Ming Lei) [1614198] - [block] exofs: use bio_clone_fast in _write_mirror (Ming Lei) [1614198] - [block] bcache: don't clone bio in bch_data_verify (Ming Lei) [1614198] - [block] block: bio_set_pages_dirty can't see NULL bv_page in a valid (Ming Lei) [1614198] - [block] block: simplify bio_check_pages_dirty (Ming Lei) [1614198] - [block] block: Rename the null_blk_mod kernel module back into (Ming Lei) [1614198] - [block] blk-mq: fail the request in case issue failure (Ming Lei) [1614305] - [block] blk-rq-qos: make depth comparisons unsigned (Ming Lei) [1614198] - [block] blkcg: Track DISCARD statistics and output them in cgroup (Ming Lei) [1614198] - [block] block: Track DISCARD statistics and output them in stat and (Ming Lei) [1614198] - [block] block: Add and use op_stat_group() for indexing disk_stat (Ming Lei) [1614198] - [block] block: Define and use STAT_READ and STAT_WRITE (Ming Lei) [1614198] - [block] block: Add part_stat_read_accum to read across field entries (Ming Lei) [1614198] - [block] block: make bdev_ops->rw_page() take a REQ_OP instead of bool (Ming Lei) [1614198] - [block] pktcdvd: remove assignment in if condition (Ming Lei) [1614198] - [block] blk-mq: issue directly if hw queue isn't busy in case of (Ming Lei) [1614305] - [block] blk-iolatency: truncate our current time (Ming Lei) [1614198] - [block] blk-iolatency: don't change the latency window (Ming Lei) [1614198] - [block] block: remove blkdev_entry_to_request() macro (Ming Lei) [1614198] - [block] block: skd: Use pad printk format for dma_addr_t values (Ming Lei) [1614198] - [block] bsg: remove read/write support (Ming Lei) [1614198] - [block] blk-iolatency: fix max_depth comparisons (Ming Lei) [1614198] - [block] block: iolatency: avoid 64-bit division (Ming Lei) [1614198] - [block] block/DAC960.c: fix defined but not used build warnings (Ming Lei) [1614198] - [block] null_blk: add zone support (Ming Lei) [1614198] - [block] null_blk: move shared definitions to header file (Ming Lei) [1614198] - [block] block: Add default switch case to blk_pm_allow_request() to (Ming Lei) [1614198] - [block] block: fix infinite loop if the device loses discard (Ming Lei) [1614198] - [block] block, mm: remove unnecessary __GFP_HIGH flag (Ming Lei) [1614198] - [block] null_blk: remove NULLB_DEV_FL_CONFIGURED on turning off nullb (Ming Lei) [1614198] - [block] mm: skip readahead if the cgroup is congested (Ming Lei) [1614198] - [block] Documentation: add a doc for blk-iolatency (Ming Lei) [1614198] - [block] block: introduce blk-iolatency io controller (Ming Lei) [1614198] - [block] rq-qos: introduce dio_bio callback (Ming Lei) [1614198] - [block] block: remove external dependency on wbt_flags (Ming Lei) [1614198] - [block] blk-rq-qos: refactor out common elements of blk-wbt (Ming Lei) [1614198] - [block] blk-stat: export helpers for modifying blk_rq_stat (Ming Lei) [1614198] - [block] memcontrol: schedule throttling if we are congested (Ming Lei) [1614198] - [block] blkcg: add generic throttling mechanism (Ming Lei) [1614198] - [block] swap, blkcg: issue swap io with the appropriate context (Ming Lei) [1614198] - [block] blk: introduce REQ_SWAP (Ming Lei) [1614198] - [block] blk-cgroup: allow controllers to output their own stats (Ming Lei) [1614198] - [block] block: introduce bio_issue_as_root_blkg (Ming Lei) [1614198] - [block] block: add bi_blkg to the bio for cgroups (Ming Lei) [1614198] - [block] blk-mq: dequeue request one by one from sw queue if hctx is (Ming Lei) [1614305] - [block] block/loop: mark expected switch fall-through (Ming Lei) [1614198] - [block] drbd: mark expected switch fall-throughs (Ming Lei) [1614198] - [block] blk-mq: only attempt to merge bio if there is rq in sw queue (Ming Lei) [1614305] - [block] blk-mq: use list_splice_tail_init() to insert requests (Ming Lei) [1614305] - [block] blk-mq: fix typo in a function comment (Ming Lei) [1614198] - [block] blk-mq: code clean-up by adding an API to clear set->mq_map (Ming Lei) [1614198] - [block] paride: remove redundant variable n (Ming Lei) [1614198] - [block] partitions/ldm: remove redundant pointer dgrp (Ming Lei) [1614198] - [block] loop: remove redundant pointer inode (Ming Lei) [1614198] - [block] block/floppy: remove redundant variable dflags (Ming Lei) [1614198] - [block] Block: blk-throttle: set low_valid immediately once one (Ming Lei) [1614198] - [block] Blktrace: bail out early if block debugfs is not configured (Ming Lei) [1614198] - [block] block: Document how blk_update_request() handles (Ming Lei) [1614198] - [block] drbd: Do not redefine __must_hold() (Ming Lei) [1614198] - [block] blk-mq: avoid to synchronize rcu inside blk_cleanup_queue() (Ming Lei) [1597067] - [block] blk-mq: remove synchronize_rcu() from (Ming Lei) [1597067] - [block] blk-mq: introduce new lock for protecting hctx->dispatch_wait (Ming Lei) [1597067] - [block] blk-mq: don't pass **hctx to blk_mq_mark_tag_wait() (Ming Lei) [1597067] - [block] blk-mq: cleanup blk_mq_get_driver_tag() (Ming Lei) [1597067] - [block] block, bfq: give a better name to bfq_bfqq_may_idle (Ming Lei) [1614198] - [block] block, bfq: fix service being wrongly set to zero in case of (Ming Lei) [1614198] - [block] block, bfq: do not expire a queue that will deserve dispatch (Ming Lei) [1614198] - [block] block, bfq: add/remove entity weights correctly (Ming Lei) [1614198] - [block] block: Make struct request_queue smaller for (Ming Lei) [1614198] - [block] block: Inline blk_queue_nr_zones() (Ming Lei) [1614198] - [block] block: Remove bdev_nr_zones() (Ming Lei) [1614198] - [block] include/uapi/linux/blkzoned.h: Remove a superfluous __packed (Ming Lei) [1614198] - [block] block: Remove a superfluous cast from blkdev_report_zones() (Ming Lei) [1614198]- [net] tls: mark as Tech Preview (Sabrina Dubroca) [1570255] - [pci] PCI/VPD: Check for VPD access completion before checking for timeout (Myron Stowe) [1618820] - [rpmspec] redhat: remove bootwrapper subpackage (Gustavo Duarte) [1578399] - [virt] kvm: x86: Set highest physical address bits in non-present/reserved SPTEs (Paolo Bonzini) [1614808] - [virt] KVM/x86: Use CC_SET()/CC_OUT in arch/x86/kvm/vmx.c (Paolo Bonzini) [1614808] - [virt] KVM: X86: Implement PV IPIs in linux guest (Paolo Bonzini) [1614808] - [virt] KVM: X86: Add kvm hypervisor init time platform setup callback (Paolo Bonzini) [1614808] - [virt] KVM: X86: Implement "send IPI" hypercall (Paolo Bonzini) [1614808] - [virt] KVM/x86: Move X86_CR4_OSXSAVE check into kvm_valid_sregs() (Paolo Bonzini) [1614808] - [virt] KVM: x86: Skip pae_root shadow allocation if tdp enabled (Paolo Bonzini) [1614808] - [virt] KVM/MMU: Combine flushing remote tlb in mmu_set_spte() (Paolo Bonzini) [1614808] - [virt] KVM: vmx: skip VMWRITE of HOST_(FS, GS)_BASE when possible (Paolo Bonzini) [1614808] - [virt] KVM: vmx: skip VMWRITE of HOST_(FS, GS)_SEL when possible (Paolo Bonzini) [1614808] - [virt] KVM: vmx: always initialize HOST_(FS, GS)_BASE to zero during setup (Paolo Bonzini) [1614808] - [virt] KVM: vmx: move struct host_state usage to struct loaded_vmcs (Paolo Bonzini) [1614808] - [virt] KVM: vmx: compute need to reload FS/GS/LDT on demand (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: remove a misleading comment regarding vmcs02 fields (Paolo Bonzini) [1614808] - [virt] KVM: vmx: rename __vmx_load_host_state() and vmx_save_host_state() (Paolo Bonzini) [1614808] - [virt] KVM: vmx: add dedicated utility to access guest's kernel_gs_base (Paolo Bonzini) [1614808] - [virt] KVM: vmx: track host_state.loaded using a loaded_vmcs pointer (Paolo Bonzini) [1614808] - [virt] KVM: vmx: refactor segmentation code in vmx_save_host_state() (Paolo Bonzini) [1614808] - [virt] kvm: nVMX: Fix fault priority for VMX operations (Paolo Bonzini) [1614808] - [virt] kvm: nVMX: Fix fault vector for VMX operation at CPL > 0 (Paolo Bonzini) [1614808] - [virt] KVM: try __get_user_pages_fast even if not in atomic context (Paolo Bonzini) [1614808] - [virt] KVM: vmx: Add tlb_remote_flush callback support (Paolo Bonzini) [1614808] - [virt] KVM: x86: Add tlb remote flush callback in kvm_x86_ops (Paolo Bonzini) [1614808] - [virt] X86/Hyper-V: Add hyperv_nested_flush_guest_mapping ftrace support (Paolo Bonzini) [1614808] - [virt] X86/Hyper-V: Add flush HvFlushGuestPhysicalAddressSpace hypercall support (Paolo Bonzini) [1614808] - [virt] x86/kvm: Don't use pvqspinlock code if only 1 vCPU (Paolo Bonzini) [1614808] - [virt] KVM/MMU: Simplify __kvm_sync_page() function (Paolo Bonzini) [1614808] - [virt] kvm: x86: Remove CR3_PCID_INVD flag (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add multi-entry LRU cache for previous CR3s (Paolo Bonzini) [1614808] - [virt] kvm: x86: Flush only affected TLB entries in kvm_mmu_invlpg* (Paolo Bonzini) [1614808] - [virt] kvm: x86: Skip shadow page resync on CR3 switch when indicated by guest (Paolo Bonzini) [1614808] - [virt] kvm: x86: Support selectively freeing either current or previous MMU root (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add a root_hpa parameter to kvm_mmu->invlpg() (Paolo Bonzini) [1614808] - [virt] kvm: x86: Skip TLB flush on fast CR3 switch when indicated by guest (Paolo Bonzini) [1614808] - [virt] kvm: vmx: Support INVPCID in shadow paging mode (Paolo Bonzini) [1614808] - [virt] kvm: x86: Propagate guest PCIDs to host PCIDs (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add ability to skip TLB flush when switching CR3 (Paolo Bonzini) [1614808] - [virt] kvm: x86: Use fast CR3 switch for nested VMX (Paolo Bonzini) [1614808] - [virt] kvm: x86: Support resetting the MMU context without resetting roots (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add support for fast CR3 switch across different MMU modes (Paolo Bonzini) [1614808] - [virt] kvm: x86: Introduce KVM_REQ_LOAD_CR3 (Paolo Bonzini) [1614808] - [virt] kvm: x86: Introduce kvm_mmu_calc_root_page_role() (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add fast CR3 switch code path (Paolo Bonzini) [1614808] - [virt] kvm: x86: Avoid taking MMU lock in kvm_mmu_sync_roots if no sync is needed (Paolo Bonzini) [1614808] - [virt] kvm: x86: Make sync_page() flush remote TLBs once only (Paolo Bonzini) [1614808] - [virt] KVM: MMU: drop vcpu param in gpte_access (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Separate logic allocating shadow vmcs to a function (Paolo Bonzini) [1614808] - [virt] KVM: VMX: Mark vmcs header as shadow in case alloc_vmcs_cpu() allocate shadow vmcs (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Expose VMCS shadowing to L1 guest (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Do not forward VMREAD/VMWRITE VMExits to L1 if required so by vmcs12 vmread/vmwrite bitmaps (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: vmread/vmwrite: Use shadow vmcs12 if running L2 (Paolo Bonzini) [1614808] - [virt] KVM: selftests: add tests for shadow VMCS save/restore (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: include shadow vmcs12 in nested state (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Cache shadow vmcs12 on VMEntry and flush to memory on VMExit (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Verify VMCS shadowing VMCS link pointer (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Verify VMCS shadowing controls (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Introduce nested_cpu_has_shadow_vmcs() (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Fail VMLAUNCH and VMRESUME on shadow VMCS (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Allow VMPTRLD for shadow VMCS if vCPU supports VMCS shadowing (Paolo Bonzini) [1614808] - [virt] KVM: VMX: Change vmcs12(read, write)_any() to receive vmcs12 as parameter (Paolo Bonzini) [1614808] - [virt] KVM: VMX: Create struct for VMCS header (Paolo Bonzini) [1614808] - [virt] kvm: selftests: add test for nested state save/restore (Paolo Bonzini) [1614808] - [virt] kvm: nVMX: Introduce KVM_CAP_NESTED_STATE (Paolo Bonzini) [1614808] - [virt] KVM: x86: do not load vmcs12 pages while still in SMM (Paolo Bonzini) [1614808] - [virt] kvm: selftests: add basic test for state save and restore (Paolo Bonzini) [1614808] - [virt] kvm: selftests: ensure vcpu file is released (Paolo Bonzini) [1614808] - [virt] kvm: selftests: actually use all of lib/vmx.c (Paolo Bonzini) [1614808] - [virt] kvm: selftests: create a GDT and TSS (Paolo Bonzini) [1614808] - [virt] KVM: x86: ensure all MSRs can always be KVM_GET/SET_MSR'd (Paolo Bonzini) [1614808] - [virt] KVM: vmx: remove save/restore of host BNDCGFS MSR (Paolo Bonzini) [1614808] - [virt] KVM: Switch 'requests' to be 64-bit (explicitly) (Paolo Bonzini) [1614808] - [virt] kvm: selftests: add cr4_cpuid_sync_test (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Read kvm->arch.emul_smt_mode under kvm->lock (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Allow creating max number of VCPUs on POWER9 (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Pack VCORE IDs to access full VCPU ID space (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Fix constant size warning (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Add of_node_put() in success path (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S: Fix matching of hardware and emulated TCE tables (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Remove mmio_vsx_tx_sx_enabled in KVM MMIO emulation (Paolo Bonzini) [1614808]- [net] tcp: Add tcp_clamp_rto_to_user_timeout() helper to improve accuracy (Michael Cambria) [1605024] - [net] tcp: Add tcp_retransmit_stamp() helper routine (Michael Cambria) [1605024] - [net] tcp: convert icsk_user_timeout from jiffies to msecs (Michael Cambria) [1605024] - [kernel] Revert sched/fair: Consider SD_NUMA when selecting the most idle group to schedule on (Lauro Ramos Venancio) [1585746] - [kernel] redhat: makefile: adjust KBUILD_CFLAGS to reflect kernel.spec for powerpc builds (Gustavo Duarte) [1582568] - [rpmspec] redhat: spec: build ppc64le kernel with -O3 (Gustavo Duarte) [1582568] - [scsi] scsi: csiostor: update csio_get_flash_params() (Arjun Vynipadath) [1503574] - [scsi] csiostor: Add a soft dep on cxgb4 driver (Arjun Vynipadath) [1503574] - [firmware] dell_rbu: make firmware payload memory uncachable (Charles Rose) [1584401]- [scsi] scsi: lpfc: update driver version to 12.0.0.6 (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Remove lpfc_enable_pbde as module parameter (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Correct LCB ACCept payload (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Limit tracking of tgt queue depth in fast path (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix driver crash when re-registering NVME rports (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix list corruption on the completion queue (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix sysfs Speed value on CNA ports (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix ELS abort on SLI-3 adapters (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: remove null check on nvmebuf (Dick Kennedy) [1613913] - [arm64] arm64: fix ACPI dependencies (Bhupesh Sharma) [1556832] - [arm64] arm64: acpi: fix alignment fault in accessing ACPI (Bhupesh Sharma) [1556832] - [firmware] efi/arm: map UEFI memory map even w/o runtime services enabled (Bhupesh Sharma) [1556832] - [firmware] efi/arm: preserve early mapping of UEFI memory map longer for BGRT (Bhupesh Sharma) [1556832] - [acpi] drivers: acpi: add dependency of EFI for arm64 (Bhupesh Sharma) [1556832] - [arm64] arm64: export memblock_reserve()d regions via /proc/iomem (Bhupesh Sharma) [1556832] - [arm64] arm64: kconfig: Ensure spinlock fastpaths are inlined if !PREEMPT (Waiman Long) [1607924] - [arm64] arm64: locking: Replace ticket lock implementation with qspinlock (Waiman Long) [1607924] - [arm64] arm64: barrier: Implement smp_cond_load_relaxed (Waiman Long) [1607924] - [scsi] scsi: lpfc: Revise copyright for new company language (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: update driver version to 12.0.0.5 (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: devloss timeout race condition caused null pointer reference (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix NVME Target crash in defer rcv logic (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Support duration field in Link Cable Beacon V1 command (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Make PBDE optimizations configurable (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix abort error path for NVMET (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix panic if driver unloaded when port is offline (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix driver not setting dpp bits correctly in doorbell word (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Add Buffer overflow check, when nvme_info larger than PAGE_SIZE (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: use monotonic timestamps for statistics (Dick Kennedy) [1600946] - [x86] mark intel knights landing and knights mill unsupported (David Arcari) [1610493] - [netdrv] igb: Remove superfluous reset to PHY and page 0 selection (Corinna Vinschen) [1612824] - [tools] selftests/powerpc: Fix ptrace-pkey for default execute permission change (Steve Best) [1498799] - [tools] selftests/powerpc: Fix core-pkey for default execute permission change (Steve Best) [1498799] - [powerpc] powerpc/pkeys: make protection key 0 less special (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Preallocate execute-only key (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Fix calculation of total pkeys (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Save the pkey registers before fork (Steve Best) [1498799] - [powerpc] powerpc/pkeys: key allocation/deallocation must not change pkey registers (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Deny read/write/execute by default (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Give all threads control of their key permissions (Steve Best) [1498799] - [s390] KVM: s390: Add huge page enablement control (David Hildenbrand) [1508102] - [s390] s390/mm: Add huge page gmap linking support (David Hildenbrand) [1508102] - [s390] s390/mm: hugetlb pages within a gmap can not be freed (David Hildenbrand) [1508102] - [s390] KVM: s390: Beautify skey enable check (David Hildenbrand) [1508102] - [s390] KVM: s390: Add skey emulation fault handling (David Hildenbrand) [1508102] - [s390] s390/mm: Add huge pmd storage key handling (David Hildenbrand) [1508102] - [s390] s390/mm: Clear skeys for newly mapped huge guest pmds (David Hildenbrand) [1508102] - [s390] s390/mm: Clear huge page storage keys on enable_skey (David Hildenbrand) [1508102] - [s390] s390/mm: Add huge page dirty sync support (David Hildenbrand) [1508102] - [s390] s390/mm: Add gmap pmd invalidation and clearing (David Hildenbrand) [1508102] - [s390] s390/mm: Add gmap pmd notification bit setting (David Hildenbrand) [1508102] - [s390] s390/mm: Add gmap pmd linking (David Hildenbrand) [1508102] - [s390] s390/mm: Abstract gmap notify bit setting (David Hildenbrand) [1508102] - [s390] s390/mm: Make gmap_protect_range more modular (David Hildenbrand) [1508102] - [s390] KVM: s390: Replace clear_user with kvm_clear_guest (David Hildenbrand) [1508102] - [hwmon] hwmon: (ibmpowernv) Add attributes to enable/disable sensor groups (Steve Best) [1524684] - [powerpc] powerpc/powernv: Add support to enable sensor groups (Steve Best) [1524684] - [net] net/smc: improve delete link processing (Hendrik Brueckner) [1548452] - [net] net/smc: provide fallback reason code (Hendrik Brueckner) [1548452] - [net] net/smc: use correct vlan gid of RoCE device (Hendrik Brueckner) [1548452] - [net] net/smc: fewer parameters for smc_llc_send_confirm_link() (Hendrik Brueckner) [1548452] - [net] net/smc: remove local variable page in smc_rx_splice() (Hendrik Brueckner) [1548452] - [net] net/smc: use DECLARE_BITMAP for rtokens_used_mask (Hendrik Brueckner) [1548452] - [net] net/smc: add function to get link group from link (Hendrik Brueckner) [1548452] - [net] net/smc: eliminate cursor read and write calls (Hendrik Brueckner) [1548452] - [net] net/smc: provide smc mode in smc_diag.c (Hendrik Brueckner) [1548452] - [s390] s390/ism: add device driver for internal shared memory (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D diag support (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D support in af_smc (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D support in data transfer (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D support in CLC messages (Hendrik Brueckner) [1548452] - [net] net/smc: add pnetid support for SMC-D and ISM (Hendrik Brueckner) [1548452] - [net] net/smc: add base infrastructure for SMC-D and ISM (Hendrik Brueckner) [1548452] - [net] net/smc: add pnetid support (Hendrik Brueckner) [1548452] - [net] net/smc: determine port attributes independent from pnet table (Hendrik Brueckner) [1548452] - [x86] mark whiskey-lake processor supported (David Arcari) [1609604] - [s390] KVM: s390: add etoken support for guests (Thomas Huth) [1612110] - [char] ipmi: do not configure ipmi for HPE m400 (Tony Camuso) [1583537] - [scsi] scsi: ipr: Format HCAM overlay ID 0x41 (Steve Best) [1498222] - [x86] x86/stacktrace: Enable HAVE_RELIABLE_STACKTRACE for the ORC unwinder (Joe Lawrence) [1587952] - [x86] x86/unwind/orc: Detect the end of the stack (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Do not fail for ORC with regs on stack (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Clarify the reliable success paths (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Remove STACKTRACE_DUMP_ONCE (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Do not unwind after user regs (Joe Lawrence) [1587952] - [infiniband] IB/rxe: Mark Soft-RoCE Transport driver as tech-preview (Don Dutile) [1605216] - [scsi] scsi: smartpqi: bump driver version to 1.1.4-130 (Don Brace) [1503736] - [scsi] scsi: smartpqi: fix critical ARM issue reading PQI index registers (Don Brace) [1503736] - [scsi] scsi: smartpqi: add inspur advantech ids (Don Brace) [1503736] - [scsi] scsi: smartpqi: improve error checking for sync requests (Don Brace) [1503736] - [scsi] scsi: smartpqi: improve handling for sync requests (Don Brace) [1503736] - [netdrv] ice: mark driver as tech-preview (Jonathan Toppins) [1495347] - [init] init/Kconfig: remove EXPERT from CHECKPOINT_RESTORE (Adrian Reber) [1568995 1557617 1525389] - [scsi] be2iscsi: remove BE3 family support (Maurizio Lombardi) [1598366] - [x86] update rh_check_supported processor list (David Arcari) [1595918] - [kernel] kABI: Add generic kABI macros to use for kABI workarounds (Myron Stowe) [1546831] - [pci] add pci_hw_vendor_status() (Maurizio Lombardi) [1590829] - [ata] ahci: thunderx2: Fix for errata that affects stop engine (Robert Richter) [1563590] - [pci] Vulcan: AHCI PCI bar fix for Broadcom Vulcan early silicon (Robert Richter) [1563590] - [kernel] bpf: set default values for bpf_jit_harden and bpf_jit_kallsyms (Eugene Syromiatnikov) [1569061] - [kernel] bpf: Add tech preview taint for syscall (Eugene Syromiatnikov) [1559877] - [kernel] bpf: set unprivileged_bpf_disabled to 1 by default, add a boot parameter (Eugene Syromiatnikov) [1561171] - [kernel] add Red Hat-specific taint flags (Eugene Syromiatnikov) [1559877] - [tools] perf tests: Add Python 3 support to attr.py ("Herton R. Krzesinski") [1561505] - [tools] perf scripts python: Add Python 3 support to stat-cpi.py ("Herton R. Krzesinski") [1561505] - [kernel] kdump: fix a grammar issue in a kernel message (Dave Young) [1507353] - [scripts] tags.sh: Ignore redhat/rpm (Prarit Bhargava) [1582586] - [kernel] put RHEL info into generated headers (Prarit Bhargava) [1544999] - [kernel] kdump: add support for crashkernel=auto (Dave Young) [1507353] - [kernel] kdump: round up the total memory size to 128M for crashkernel reservation (Dave Young) [1507353] - [arm64] acpi: prefer booting with ACPI over DTS (Mark Salter) [1576869] - [acpi] aarch64: acpi scan: Fix regression related to X-Gene UARTs (Mark Salter) [1519554] - [acpi] ACPI / irq: Workaround firmware issue on X-Gene based m400 (Mark Salter) [1519554] - [x86] add rh_check_supported (David Arcari) [1565717] - [scsi] qla2xxx: Remove PCI IDs of deprecated adapter (Himanshu Madhani) [1572233] - [scsi] be2iscsi: remove unsupported device IDs (Chris Leech) [1574502] - [scsi] Removing Obsolete hba pci-ids from rhel8 (Dick Kennedy) [1572321] - [scsi] hpsa: modify hpsa driver version (Joseph Szczypek) [1471185] - [scsi] hpsa: remove old cciss-based smartarray pci ids (Joseph Szczypek) [1471185] - [kernel] rh_taint: add support for marking driver as unsupported (Jonathan Toppins) [1565704] - [kernel] rh_taint: add support (David Arcari) [1565704] - [scsi] qla4xxx: Remove deprecated PCI IDs from RHEL 8 (Chad Dupuis) [1518874] - [scsi] aacraid: Remove depreciated device and vendor PCI id's (Raghava Aditya Renukunta) [1495307] - [scsi] megaraid_sas: remove deprecated pci-ids (Tomas Henzl) [1509329] - [scsi] mpt*: remove certain deprecated pci-ids (Tomas Henzl) [1511953] - [kernel] modules: add rhelversion MODULE_INFO tag (Prarit Bhargava) [1544999] - [acpi] ACPI: APEI: arm64: Ignore broken HPE moonshot APEI support (Al Stone) [1518076] - [rpmspec] compute content hash for kernel-headers (Rafael Aquini) [1613003] - [rpmspec] compress modules on all architectures ("Herton R. Krzesinski") [1614556] - [rpmspec] add gcov rpm packaging support (Jan Stancek) [1601733] - [rpmspec] don't ship spdxcheck.py (Jakub Racek) - [rpmspec] clean stray bpf files (Jakub Racek) [1593309] - [rpmspec] Copy symvers.gz to /lib/modules (Eugene Syromiatnikov) [1609695] - [rpmspec] Add kabi-dup related code into specfile (Petr Oros) [1585672] - [rpmspec] kernel spec: Add and enable kabi check (Petr Oros) [1585672] - [rpmspec] Enable warning checks for configs in rpm build (Prarit Bhargava) [1589858] - [rpmspec] remove workaround for rst2man-3 from python3-docutils ("Herton R. Krzesinski") [1602148] - [rpmspec] fix dist tag used for hardlink in kernel-devel post ("Herton R. Krzesinski") [1596397] - [scripts] get_maintainer.pl: Add optional .get_maintainer.MAINTAINERS override (Prarit Bhargava) [1595727] - [rpmspec] drop kernel package dependency on python2 ("Herton R. Krzesinski") [1561505] - [kernel] Makefile: Move RHEL definitions down (Jakub Racek) [1576568] - [rpmspec] eBPF: Add bpftool package to spec file (Jerome Marchand) [1559607] - [rpmspec] fix conflicts with COPYING file while installing newer 4.17 kernel ("Herton R. Krzesinski") [1579563] - [rpmspec] do not build kernel meta-package on noarch ("Herton R. Krzesinski") [1579512] - [rpmspec] kernel spec: remove copy of arch/x86/purgatory/sha256.* ("Herton R. Krzesinski") - [rpmspec] spec: Add new arch/powerpc/kernel/module.lds file to kernel-devel rpm (Steve Best) [1572553] - [rpmspec] kernel spec: fix recent build errors from brp-mangle-shebangs ("Herton R. Krzesinski") [1575966] - [rpmspec] Add i386 to ExclusiveArch to fix noarch package build ("Herton R. Krzesinski") [1575152] - [rpmspec] Build kernel-abi-whitelists package (Petr Oros) [1571189] - [rpmspec] kernel spec: build bzImage for s390 (Hendrik Brueckner) [1570041] - [rpmspec] kernel spec: arm64: package module.lds in kernel-devel (Mark Salter) [1569014] - [rpmspec] Re-enable debuginfo packages and fix build with current dist tag ("Herton R. Krzesinski") [1568901] - [rpmspec] kernel spec: build kernel-debug on all architectures ("Herton R. Krzesinski") [1567367] - [rpmspec] don't build kernel meta-package if we are only building kernel headers ("Herton R. Krzesinski") - [rpmspec] remove use_vdso macro ("Herton R. Krzesinski") - [rpmspec] build perf and tools man pages instead of relying on a separate tarball ("Herton R. Krzesinski") - [rpmspec] disable debug build if arch is in nobuildarches list ("Herton R. Krzesinski") - [rpmspec] remove fedora changelog from spec file ("Herton R. Krzesinski") - [rpmspec] only support ppc64le builds ("Herton R. Krzesinski") - [rpmspec] remove x86 32-bit package support ("Herton R. Krzesinski") - [rpmspec] remove arm 32-bit package support ("Herton R. Krzesinski") - [rpmspec] remove configuration generation support from kernel spec file ("Herton R. Krzesinski") - [rpmspec] remove broken out patches from kernel spec file ("Herton R. Krzesinski") - [rpmspec] import kernel spec from rhel8 bootstrap dist-git ("Herton R. Krzesinski")/bin/sh  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  !!!!!!!!!! ! ! ! ! !!!!!!!!!!!!!!!!!!! !!!"!#!$!%!&!'!(!)!*!+!,!-!.!/!0!1!2!3!4!5!6!7!8!9!:!;!<!=!>!?!@!A!B!C!D!E!F!G!H!I!J!K!L!M!N!O!P!Q!R!S!T!U!V!W!X!Y!Z![!\!]!^!_!`!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!z!{!|!}!~!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"""""""""" " " " " """"""""""""""""""" "!"""#"$"%"&"'"(")"*"+","-"."/"0"1"2"3"4"5"6"7"8"9":";"<"=">"?"@"A"B"C"D"E"F"G"H"I"J"K"L"M"N"O"P"Q"R"S"T"U"V"W"X"Y"Z"["\"]"^"_"`"a"b"c"d"e"f"g"h"i"j"k"l"m"n"o"p"q"r"s"t"u"v"w"x"y"z"{"|"}"~"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""########## # # # # ################### #!#"###$#%#&#'#(#)#*#+#,#-#.#/#0#1#2#3#4#5#6#7#8#9#:#;#<#=#>#?#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O#P#Q#R#S#T#U#V#W#X#Y#Z#[#\#]#^#_#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#{#|#}#~#################################################################################################################################$$$$$$$$$$ $ $ $ $ $$$$$$$$$$$$$$$$$$$ $!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$t$u$v$w$x$y$z${$|$}$~$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%% % % % % %%%%%%%%%%%%%%%%%%% %!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v%w%x%y%z%{%|%}%~%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&& & & & & &&&&&&&&&&&&&&&&&&& &!&"&#&$&%&&&'&(&)&*&+&,&-&.&/&0&1&2&3&4&5&6&7&8&9&:&;&<&=&>&?&@&A&B&C&D&E&F&G&H&I&J&K&L&M&N&O&P&Q&R&S&T&U&V&W&X&Y&Z&[&\&]&^&_&`&a&b&c&d&e&f&g&h&i&j&k&l&m&n&o&p&q&r&s&t&u&v&w&x&y&z&{&|&}&~&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'''''''''' ' ' ' ' ''''''''''''''''''' '!'"'#'$'%'&'''(')'*'+','-'.'/'0'1'2'3'4'5'6'7'8'9':';'<'='>'?'@'A'B'C'D'E'F'G'H'I'J'K'L'M'N'O'P'Q'R'S'T'U'V'W'X'Y'Z'['\']'^'_'`'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o'p'q'r's't'u'v'w'x'y'z'{'|'}'~'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''(((((((((( ( ( ( ( ((((((((((((((((((( (!("(#($(%(&('((()(*(+(,(-(.(/(0(1(2(3(4(5(6(7(8(9(:(;(<(=(>(?(@(A(B(C(D(E(F(G(H(I(J(K(L(M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z([(\(](^(_(`(a(b(c(d(e(f(g(h(i(j(k(l(m(n(o(p(q(r(s(t(u(v(w(x(y(z({(|(}(~((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((()))))))))) ) ) ) ) ))))))))))))))))))) )!)")#)$)%)&)')()))*)+),)-).)/)0)1)2)3)4)5)6)7)8)9):);)<)=)>)?)@)A)B)C)D)E)F)G)H)I)J)K)L)M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)[)\)])^)_)`)a)b)c)d)e)f)g)h)i)j)k)l)m)n)o)p)q)r)s)t)u)v)w)x)y)z){)|)})~)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))********** * * * * ******************* *!*"*#*$*%*&*'*(*)***+*,*-*.*/*0*1*2*3*4*5*6*7*8*9*:*;*<*=*>*?*@*A*B*C*D*E*F*G*H*I*J*K*L*M*N*O*P*Q*R*S*T*U*V*W*X*Y*Z*[*\*]*^*_*`*a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*s*t*u*v*w*x*y*z*{*|*}*~*********************************************************************************************************************************++++++++++ + + + + +++++++++++++++++++ +!+"+#+$+%+&+'+(+)+*+++,+-+.+/+0+1+2+3+4+5+6+7+8+9+:+;+<+=+>+?+@+A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z+[+\+]+^+_+`+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+x+y+z+{+|+}+~+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++,,,,,,,,,, , , , , ,,,,,,,,,,,,,,,,,,, ,!,",#,$,%,&,',(,),*,+,,,-,.,/,0,1,2,3,4,5,6,7,8,9,:,;,<,=,>,?,@,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,[,\,],^,_,`,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,{,|,},~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,---------- - - - - ------------------- -!-"-#-$-%-&-'-(-)-*-+-,---.-/-0-1-2-3-4-5-6-7-8-9-:-;-<-=->-?-@-A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z-[-\-]-^-_-`-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-z-{-|-}-~---------------------------------------------------------------------------------------------------------------------------------.......... . . . . ................... .!.".#.$.%.&.'.(.).*.+.,.-.../.0.1.2.3.4.5.6.7.8.9.:.;.<.=.>.?.@.A.B.C.D.E.F.G.H.I.J.K.L.M.N.O.P.Q.R.S.T.U.V.W.X.Y.Z.[.\.].^._.`.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z.{.|.}.~.................................................................................................................................////////// / / / / /////////////////// /!/"/#/$/%/&/'/(/)/*/+/,/-/.///0/1/2/3/4/5/6/7/8/9/:/;/</=/>/?/@/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/[/\/]/^/_/`/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/{/|/}/~/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////0000000000 0 0 0 0 0000000000000000000 0!0"0#0$0%0&0'0(0)0*0+0,0-0.0/000102030405060708090:0;0<0=0>0?0@0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111111 1 1 1 1 1111111111111111111 1!1"1#1$1%1&1'1(1)1*1+1,1-1.1/101112131415161718191:1;1<1=1>1?1@1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1[1\1]1^1_1`1a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1{1|1}1~1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111112222222222 2 2 2 2 2222222222222222222 2!2"2#2$2%2&2'2(2)2*2+2,2-2.2/202122232425262728292:2;2<2=2>2?2@2A2B2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z2[2\2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2q2r2s2t2u2v2w2x2y2z2{2|2}2~2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222223333333333 3 3 3 3 3333333333333333333 3!3"3#3$3%3&3'3(3)3*3+3,3-3.3/303132333435363738393:3;3<3=3>3?3@3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z3[3\3]3^3_3`3a3b3c3d3e3f3g3h3i3j3k3l3m3n3o3p3q3r3s3t3u3v3w3x3y3z3{3|3}3~3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333334444444444 4 4 4 4 4444444444444444444 4!4"4#4$4%4&4'4(4)4*4+4,4-4.4/404142434445464748494:4;4<4=4>4?4@4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z4[4\4]4^4_4`4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4{4|4}4~4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444445555555555 5 5 5 5 5555555555555555555 5!5"5#5$5%5&5'5(5)5*5+5,5-5.5/505152535455565758595:5;5<5=5>5?5@5A5B5C5D5E5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5Z5[5\5]5^5_5`5a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5z5{5|5}5~5555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555556666666666 6 6 6 6 6666666666666666666 6!6"6#6$6%6&6'6(6)6*6+6,6-6.6/606162636465666768696:6;6<6=6>6?6@6A6B6C6D6E6F6G6H6I6J6K6L6M6N6O6P6Q6R6S6T6U6V6W6X6Y6Z6[6\6]6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6w6x6y6z6{6|6}6~6666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666667777777777 7 7 7 7 7777777777777777777 7!7"7#7$7%7&7'7(7)7*7+7,7-7.7/707172737475767778797:7;7<7=7>7?7@7A7B7C7D7E7F7G7H7I7J7K7L7M7N7O7P7Q7R7S7T7U7V7W7X7Y7Z7[7\7]7^7_7`7a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7p7q7r7s7t7u7v7w7x7y7z7{7|7}7~7777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777778888888888 8 8 8 8 8888888888888888888 8!8"8#8$8%8&8'8(8)8*8+8,8-8.8/808182838485868788898:8;8<8=8>8?8@8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z8[8\8]8^8_8`8a8b8c8d8e8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}8~8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888889999999999 9 9 9 9 9999999999999999999 9!9"9#9$9%9&9'9(9)9*9+9,9-9.9/909192939495969798999:9;9<9=9>9?9@9A9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9R9S9T9U9V9W9X9Y9Z9[9\9]9^9_9`9a9b9c9d9e9f9g9h9i9j9k9l9m9n9o9p9q9r9s9t9u9v9w9x9y9z9{9|9}9~999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999:::::::::: : : : : ::::::::::::::::::: :!:":#:$:%:&:':(:):*:+:,:-:.:/:0:1:2:3:4:5:6:7:8:9:::;:<:=:>:?:@:A:B:C:D:E:F:G:H:I:J:K:L:M:N:O:P:Q:R:S:T:U:V:W:X:Y:Z:[:\:]:^:_:`:a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:}:~:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;;;;;;;;;; ; ; ; ; ;;;;;;;;;;;;;;;;;;; ;!;";#;$;%;&;';(;);*;+;,;-;.;/;0;1;2;3;4;5;6;7;8;9;:;;;<;=;>;?;@;A;B;C;D;E;F;G;H;I;J;K;L;M;N;O;P;Q;R;S;T;U;V;W;X;Y;Z;[;\;];^;_;`;a;b;c;d;e;f;g;h;i;j;k;l;m;n;o;p;q;r;s;t;u;v;w;x;y;z;{;|;};~;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<<< < < < < <<<<<<<<<<<<<<<<<<< =?=@=A=B=C=D=E=F=G=H=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z=[=\=]=^=_=`=a=b=c=d=e=f=g=h=i=j=k=l=m=n=o=p=q=r=s=t=u=v=w=x=y=z={=|=}=~=================================================================================================================================>>>>>>>>>> > > > > >>>>>>>>>>>>>>>>>>> >!>">#>$>%>&>'>(>)>*>+>,>->.>/>0>1>2>3>4>5>6>7>8>9>:>;><>=>>>?>@>A>B>C>D>E>F>G>H>I>J>K>L>M>N>O>P>Q>R>S>T>U>V>W>X>Y>Z>[>\>]>^>_>`>a>b>c>d>e>f>g>h>i>j>k>l>m>n>o>p>q>r>s>t>u>v>w>x>y>z>{>|>}>~>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>?????????? ? ? ? ? ??????????????????? ?!?"?#?$?%?&?'?(?)?*?+?,?-?.?/?0?1?2?3?4?5?6?7?8?9?:?;?<?=?>???@?A?B?C?D?E?F?G?H?I?J?K?L?M?N?O?P?Q?R?S?T?U?V?W?X?Y?Z?[?\?]?^?_?`?a?b?c?d?e?f?g?h?i?j?k?l?m?n?o?p?q?r?s?t?u?v?w?x?y?z?{?|?}?~?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????@@@@@@@@@@ @ @ @ @ @@@@@@@@@@@@@@@@@@@ @!@"@#@$@%@&@'@(@)@*@+@,@-@.@/@0@1@2@3@4@5@6@7@8@9@:@;@<@=@>@?@@@A@B@C@D@E@F@G@H@I@J@K@L@M@N@O@P@Q@R@S@T@U@V@W@X@Y@Z@[@\@]@^@_@`@a@b@c@d@e@f@g@h@i@j@k@l@m@n@o@p@q@r@s@t@u@v@w@x@y@z@{@|@}@~@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@AAAAAAAAAA A A A A AAAAAAAAAAAAAAAAAAA A!A"A#A$A%A&A'A(A)A*A+A,A-A.A/A0A1A2A3A4A5A6A7A8A9A:A;A<A=A>A?A@AAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZA[A\A]A^A_A`AaAbAcAdAeAfAgAhAiAjAkAlAmAnAoApAqArAsAtAuAvAwAxAyAzA{A|A}A~AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBB B B B B BBBBBBBBBBBBBBBBBBB B!B"B#B$B%B&B'B(B)B*B+B,B-B.B/B0B1B2B3B4B5B6B7B8B9B:B;B<B=B>B?B@BABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBQBRBSBTBUBVBWBXBYBZB[B\B]B^B_B`BaBbBcBdBeBfBgBhBiBjBkBlBmBnBoBpBqBrBsBtBuBvBwBxByBzB{B|B}B~BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCC C C C C CCCCCCCCCCCCCCCCCCC C!C"C#C$C%C&C'C(C)C*C+C,C-C.C/C0C1C2C3C4C5C6C7C8C9C:C;C<C=C>C?C@CACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCUCVCWCXCYCZC[C\C]C^C_C`CaCbCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyCzC{C|C}C~CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDD D D D D DDDDDDDDDDDDDDDDDDD D!D"D#D$D%D&D'D(D)D*D+D,D-D.D/D0D1D2D3D4D5D6D7D8D9D:D;D<D=D>D?D@DADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYDZD[D\D]D^D_D`DaDbDcDdDeDfDgDhDiDjDkDlDmDnDoDpDqDrDsDtDuDvDwDxDyDzD{D|D}D~DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEE E E E E EEEEEEEEEEEEEEEEEEE E!E"E#E$E%E&E'E(E)E*E+E,E-E.E/E0E1E2E3E4E5E6E7E8E9E:E;E<E=E>E?E@EAEBECEDEEEFEGEHEIEJEKELEMENEOEPEQERESETEUEVEWEXEYEZE[E\E]E^E_E`EaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzE{E|E}E~EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFF F F F F FFFFFFFFFFFFFFFFFFF F!F"F#F$F%F&F'F(F)F*F+F,F-F.F/F0F1F2F3F4F5F6F7F8F9F:F;F<F=F>F?F@FAFBFCFDFEFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF[F\F]F^F_F`FaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFvFwFxFyFzF{F|F}F~FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGG G G G G GGGGGGGGGGGGGGGGGGG G!G"G#G$G%G&G'G(G)G*G+G,G-G.G/G0G1G2G3G4G5G6G7G8G9G:G;G<G=G>G?G@GAGBGCGDGEGFGGGHGIGJGKGLGMGNGOGPGQGRGSGTGUGVGWGXGYGZG[G\G]G^G_G`GaGbGcGdGeGfGgGhGiGjGkGlGmGnGoGpGqGrGsGtGuGvGwGxGyGzG{G|G}G~GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHH H H H H HHHHHHHHHHHHHHHHHHH H!H"H#H$H%H&H'H(H)H*H+H,H-H.H/H0H1H2H3H4H5H6H7H8H9H:H;H<H=H>H?H@HAHBHCHDHEHFHGHHHIHJHKHLHMHNHOHPHQHRHSHTHUHVHWHXHYHZH[H\H]H^H_H`HaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyHzH{H|H}H~HHHHHHHHH4.18.0-552.3.1.el84.18.0-552.3.1.el84.18.0-552.3.1.el84.18.0-552.3.1.el8.ppc64le          !!""#$%%%&&''(())**+++,,---..//0001122233445566667788999:::;;;<<<==>>>??@@AABBCCDDEEFFGGHHHIIJJKKLLLMMNNOOPPQQRRRSSTTUUVVWWWXXYYZZZ[[\\]]^^___``aabbccddeeffggghhhiiijjkkllmnopqqrssttuuvvwvxyz{|}}}}}~~}}}}}}}}}          !!!"!#$$$%&'''(')'*+++,,-+.+/+01234555657589::;<<<=<>??@@AABACDEEFGHHIJJJKJLJMJNOPPPQPRPSPTPUVWWXWYWZ[[[[\\][^^_[`[abbbbccdbebfbgbhhiiijkiliminooooppqorosotouovwwwwwxwywz{{{{{{{{{{{{{{|}}}}|~~~~~~~~~~~~~~~~~~||{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{zzwwwwwwwwwwww      !!"#$$%$&$'((()(*+,--.-/-00102030405-6-7889:;;<=>?@@A@B@C@D@E@@FFG@HI@J@K@L@M@N@OPQRSSTUVVVWVXYZZ[[[[\\]\^\_\`[a[b[c[d[efegehiiiijjkklllmmlnnooopppqorrrsrttruurvvrwwrxxryyozzo{{o||o}}o~~oooooooooooooooooooo o  o  o  o  oooooo !! "" ## $$$%$&&'&(&)&*&+&,&-&.&/&0&1&2&3&4&5&6&7&8&9&:&;&<&=&>&?&@&A&B&C&D&E$FG$HIHJHKHLHM NNONPPQPRNSSTSUSVWWXXYYZZ[[\\\]]\^^\__\``\aabbccddeeffgghhhiihjjkllmmmmmmnooppqqrrssttuuvvwxxxyyxzz{{||}}~~oooooooooooooooo            ooooooo   !! "" ## $$ %%&&'''(('))**+++,+--+..+//+0+11+2233344555665775885995::5;;5<<5==5>>5??5@@AA5BB5CC5DD5EE5FF5GG5HH5II5JJ5KK5LL5MM5NN5OO5PP5QQ5RR5SSTTTUUTVVTWWTXTYTZZT[T\\T]]T^T_T`TaTbTccTdTefegThhTijTkTlTmTnToTppTqrqssqtquqvTwTxTyTzzT{{T|T}}~~~~~ooooooooo           !"""#"$"%"&"'''(')"*++,,,--..//0001122333445566777887997::;;<<<=>>>?>@@A@BCCDDDEEFFGGGHGIIJJJKJLJMJNJOJPJQJRJSJTJUJVJWXXXYZZ[[[\\[]^^^_^`^aab^c^d^e^f^g^h[ii[jj[kkllmmnnnoppqqrrrsttuuuvwwwxxyxzx{{|x}~~      o  !!""##$$%%o&&&'''(('))'**'++',,&--o.o//o00011022o33o4445o66o77o88o999:::;;9<<<==9>>9??9@@oAAoBBBCoDDDEEDFFDGGDHHDIIDJJDKKDLLDMMDNNDOODPPDQQDRRDSSDTToUUUVVUWWUXXUYYUZZU[[U\\U]]U^^U__U``UaaUbbUccUdUeeUffUggUhhUiiUjjUkkUllUmmonnnoonppnqqnrrnsntttuuuvvtwtxxxyyxzzx{{x||x}}o~~~~~ooooooooooooooooooooooooooo                     !!!""!##!$$!%%!&&!''!(())**++,,--../001122334455667788999::;;;<==>>???@?ABBCCDDEEFFFGGFHHFIIJJKKKLLKMMNNOOPPQQRRSSTToUUUVVVWWUXXUYYUZZo[o\\\]]o^^^__^```aa^bb^cc^dd^ee^ffoggohhhiihjhkkhlmmlllnlohpoqqorrrssrtruurvvrwwrxxryyrzzr{r|||}|~~|rrrrrrrrrrrrrrroooooooooooooo         !""##$$%%&&'(())**++,------------------------------.......---,/////////////////000000000000000000000///////////////////////////////////////////////////////////////////////////////////////////////////////////1/////,222222,333334355363733839:3;333<33=3>3?@A?BCD?EFEGGEHI?JKLJMNJOJPJQRJSJTUJVJJWJXJYJZ[JJ\]^J_`JJaJbJcJdJeeJfgJhJi?jkl?m?n?opq?r?stuu?vwwxxwyyzz??{|?}}?~~~~~?????333333333333333333333333333333333333333333333333333333333333333333333 333                              3 33 3   3                  33   3 !3 " " # $ # % " " & ' (3 )3 * * * * * * + + * * * * *33 ,3 -3 .3 / 0 / 1 / / / / 23 3 4 4 43 533 6 7 8 6 6 9 6 6 : 6 6 ; < 63 =33 >3 ?3 @ A A3 B33 C33 D E33333 F G F H F I3 J33 K L L K K3 M N M3 O33 P Q R S33 T3 U U V W X V Y Z Y Y Y Y Y Y Y V U U [ \ \ U U ] U333 ^3 _ _3 ` ` a `333 b333 c d33 e e e e e e e e e e f e e e e e e e g e e h e e e e e e e e e e e e e e e e e i i i j i i k k l l i i m e e n n n n e e e e e e e o e e e e e p e e e e e e e e q q e e e e e e e r e e e e e e e e e e e s e e e e e e e e e e e e e e e t e e u u v v v v e e e e e333 w x y w w w333 z33 { { { {3 |33 }3 ~ 33 3 33 3 3 3 3 333 333 33 3 3 33333 3 3 3 3 3 333 3 3333 3 3 3 33 33 33 3 3 33 3 3 3 33 3333 3 333 3 33 3 3 3 33 33  3      33                           3 33 3 3  33   3 33   3   3 3 3       333 ! "33 #333 $ % $3 & ' &3 (33 ) ) * ) )33 +3 , , - - .3 /33 03 1 1 1 1 2 1 3 1 1 4 4 1 1 1 5 5 5 5 6 1 7 1 8 1 9 1 : 1 ; < 1 = > 1 ? 1 @ 1333 A B C3 D D E F3 G G G G33 H H H H33 I J I3 K3 L33 M3 N N O3 P Q3 R3 S S S T3 U V3 W X X Y X X Z [ [ \ X ] X ^ X X _ W ` a W b W c c W d d e f W g W h i W j W k l W m n m W o W p q W r s W t W W u W v W w x W y y W W z { W W | | } | | | ~  W W W W W W W W W W W W W W W W W W W 33 33 33 33 3 3 3 3 3 3 33 3 33 3 33 3 333 33 33 33 33 3 33 333333 3 3 333 3333 3333 33 33 3 33 3 3 3     3 33                       33        3  3 3  3       33 3        !   "  # $ # # # # # # % % % % # # # # & & & & & & &  ' '  ( ( (    ) * * * ) + + + + + + + + + + + + ) , )   - - - - - - - - - . / - - - - 0 - 1 1 2 1 1 1 1 - - - - 3 4 - 5 - -3 6 7 7 7 7 8 8 8 8 8 8 8 8 8 7 7 7 7 9 9 9 93 :3 ; < ; ; = = ; > ; ; ; ; ;3 ?33 @ @ @ @ A B @ C @ D @ E @ F @ G @ H @ @ I @ @333 J K K J J J L L J M J N O J J P J Q J R J S J J T J J U J J V J J3 W X W Y W W Z W W33 [ \3 ] ^ ] ] _ ]33 ` ` ` a a a b a ` ` c d d d d c c ` ` ` ` ` e ` f333 g33 h h h33 i333 j j k l33 m m n3 o3 p q p r p33 s s333 t t3 u33 v33 w x w w y w3 z33 { |3333 } ~ } }  }33 33 3 3 3 333333 33 33 333 33 33 3 3 3 3 33 3 33 33 33 3 3 3 3 33 3333 3 3 3 3 33 33 3 3 3 333 3 3 3 333 3 3 3 3 3 3 333 3 33 3 3 33 33 333          3       33  33                             3333  3 33   3   33  3  3 33 ! " " ! # $ % % % ! & ! ' ! ! ( ) ( *33 + , -33 . .33 /3 0 0 0 03 1 2 3 1 4 1 5 6 7 8 1 9 :33 ; < < < < < < < < < < < < < < = < ; ; > > > > > > > > > > > > > ; ; ; ? ; ; ; @ @ @ @ @ @ @ ; ; ; A ; ; B ; ; C C ; ; ; ; D ; E F ; G ; ; ; H ; ; I ; J ; ; K L ; M M M M M M M M M M M M N M M M M M M M O M M M M M M M M M M M ; ; P ; ; Q R ; ; S T T T T T ; U ; V V V V V V V V V V V V V V V V V V V V V V V ;33 W3 X Y Z3333 [ [ [ \ \ [ [ [ ] ^ ] ] [ [ _ _ _ ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` _ _ _ a a a a a a a a a a a a a a a a a a a a a a a a [33 b33 c c d c3 e3 f3 g g h h h h h h h h h i h h h h h h h h h h g j j k k j l l l l g m m g n n n g o o p p p g q q q q g g r r r r r r r r r r s r g g t t g u u g g v v v v v v v g w w33 x y z y3 { | { { { { { } ~ { {  { { 33 3 3333 3 3 3 3 3 3 33 33 3 3 3333 33 3 3 3 33 333 3 3 33 33 3 3 333 3 3 333 3 33 33 333 3 3 3 33 3 3 3 33 33 33 3 3 3 3 33 33   333        33333    33  3 3 3 333      3 3             333  33  33        3 !33 "33 # # # # # #3333 $3 %33 & ' &333 ( (3 )3 * * +3 , -333 . /3 03 1 2 1 1 1 13 3 4 5 3 6 3 7 3 83 9 9 9 9 9 93 : :3 ; ;3 < < = =33 >333 ?3 @ A33 B B3 C3 D E F G3 H3 I I J K J3 L M L L L N L L L L L L L L3 O33 P Q333 R S R3 T U T T3 V V W W W W W W W W W W W W W X W W W W W W W Y W W W W W W W W W W W W W W W W V V Z V [ \ V ] ] ] V V ^ _ V ` V3 a b3 c d e33 f f g f f h i f333 j k3 l l l l l m n l l33 o33 p p q p r p s p p t p p p u u u v u p p p w p p p x p p p p y y p z p p p p p p p { | p p } ~ p p  p p p p p p p3 3 33 3 33 33 3 3 33 33 3 3 3 3 33 333 3 3 333 33 33 3 33 3 3 3 3 33 3 3 33 3 33 333333333333333 3 33     33 333333333333333333 ! """"33#3$%$&$3'(')'*33+++,,---,,.+3////30111111111111111103233333433335553367896:;<6=>=?663@3A3BB33C3DE33F33GGGHH33I33JKJ3L3MMMNN3OOP33QRQ33SS3TTU3VV33W3X333YZ[33\]\\^\\\\\3_333```a`b`33cc3d3e3f333ggghggijggklgggmgggggngoopqoorsotggggugggvvvvvvvvvvvvvvwvvvvvvvvvvvvvvvvvvvvvvvvvvvxvgggyggzgggggggggg{|gggggg}~}}}}}}}}}}}}}}}}}}ggggggggggggggggggggggggggggggggggggg3333333333333333333333333333333333333333333333333333333333333333333,,,,                         !,""""""#$",%%%%%%%%%%%%%,&&&&&,'''''',((((((((((((((((((((()))))))))))((((((((((((((((((((((((((((((((((((((((((*((((((((((((((+++++++++((((((((((((((((((((((((((((((((((((((((((((((((,,,((((---.--////--((((((((00000000000000000000000((((((((((1111111111((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((222((((((((((((((((((33333333(((((((((((((((((((((((((((((((((((((((444444444(((((((((((((((5(((((((((((((((((((((((((((((((((((((((((((6((((((((((((((((((((7887997:(((((((((;;;;;((((((((((((((((((<======<<<<(((((((((((((((((((((((((>>>>((((((((((((((((((((((((((((??(((((((((((((((((((((((((((((((((((((((((((((((((@A@BB@@@@@CCCCC@@@DDDDD@@@EE@F@@@G@@@H@@@@II@@@@@((((((((((((((((JJJJJJJJJJJJJJJJJJJJJJ((((((((((((((((((((((((((((((((((((((((((((KKKKKKKKKKKKKKKKK((((((((((((LLL(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((MMMMMMM((((((((((((((((N(((((((((((((((((((((((((((((((OOOOOOPPPPPPOOOOQQQOOOOOOOOOOOOOOORRROSSSOTTOUUUOVVOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOWWOXXOOOYYYYYYOOOOOOOOOOZZZZZZZZZZZOOOOOOOOOOOOO[[[[[[[OOOOOOOOOOOOOOOOOOOOOOOOOOO\\\\\\\\\\O]]]]]]]]OOOO^^^^O((((((((((((((_______(`````````````````((((((((aaaaaaaaaaaa((((((((((((((((((((((((bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb((cc((((((((((dee((((fggggggggggfffffffffffffffffffffff(h((ii((((j((k(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((l((((((((m((((((((nnnnnnon(((((((pppppppp(((((qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqrrrrrrrrrrrrrqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqsssssq(((((((((((((((((((((((((tttttttttttttttt((((((((((((((((((((((((((((((((((((((((((((uuuuuuuuuuuuuuuuuuuu((((((vvvv(((((((((((((((((((((((((((((((wwwwwwwwwwwwwwwwwwwwwwwwwwwwww(((xx(((((y((((((((((((((((((((((((zz((({{{{{((((((((((((((((((|||||||||||||||||||||||||||||(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((}~}}}}}}}}((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((,,,,,,,,,,,,,,,,,                                !""!##!$$!%%!!!&!''!((!))!***++*,,*--*..!/!00!11122!33!44!55!6!77!8889!:::;;!<<!==!>!?!@@!ABBAA!CC!DDDEDFF!GGGHGII!JJ!KK!L!MM!NN!OO!PP!QQ!RR!SS!TT!UU!VVVWWVXX!YY!ZZ![!\\\]]\^^!__!``!aa!bb!cc!dd!ee!ff!g!hh!ii!jj!kk!ll!mmmnmo!pp!qq!rr!ss!tt!uu!vv!ww!xx!yyzzz{z||z}z~zzzzzzzzzzzzzzzzzzzzz        !!!""!#!$!%!&!'!())**++,,--..//00112233344536677388393:3;3<==>>???@?A?B?C?DEEFFGGHHHIJJKKLLLMNNNOONPPNQQNRRRSRTNUUVVWWXXYYZZ[[\\]]^^__``aabbccdddefgfffhfifjfkkflfmnnooppqqrqstuqvvwxwvyvzq{{{{{|{}~qqqqqqqqqqqqqqqqqqq        !"#$%&'q()q**+,-+./*00102q3343536q7q899::;;:<<4.18.0-552.3.1.el8.ppc64le.configKconfigKconfig.redhatMakefileMakefile.rhelverModule.symversSystem.maparchKconfigalphaKconfigKconfig.debugMakefilebootMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefileoprofileMakefilearcKconfigKconfig.debugMakefilebootMakefiledtsMakefilekernelMakefilelibMakefilemmMakefileoprofileMakefileplat-axs10xKconfigMakefileplat-eznpsKconfigMakefileplat-hsdkKconfigMakefileplat-simMakefileplat-tb10xKconfigMakefilearmKconfigKconfig-nommuKconfig.debugMakefilebootMakefilebootpMakefilecompressedMakefiledtsMakefilecommonKconfigMakefilecryptoKconfigMakefilefirmwareKconfigMakefilekernelMakefilelibMakefilemach-actionsKconfigMakefilemach-alpineKconfigMakefilemach-artpecKconfigMakefilemach-asm9260Kconfigmach-aspeedKconfigmach-at91KconfigMakefileMakefile.bootmach-axxiaKconfigMakefilemach-bcmKconfigMakefilemach-berlinKconfigMakefilemach-clps711xKconfigMakefilemach-cns3xxxKconfigMakefilemach-davinciKconfigMakefileMakefile.bootmach-digicolorKconfigMakefilemach-doveKconfigMakefileMakefile.bootmach-ebsa110MakefileMakefile.bootmach-efm32MakefileMakefile.bootmach-ep93xxKconfigMakefileMakefile.bootmach-exynosKconfigMakefilemach-footbridgeKconfigMakefileMakefile.bootmach-geminiKconfigMakefilemach-highbankKconfigMakefilemach-hisiKconfigMakefilemach-imxKconfigMakefileMakefile.bootdevicesKconfigMakefilemach-integratorKconfigMakefilemach-iop13xxKconfigMakefileMakefile.bootmach-iop32xKconfigMakefileMakefile.bootmach-iop33xKconfigMakefileMakefile.bootmach-ixp4xxKconfigMakefileMakefile.bootmach-keystoneKconfigMakefilemach-ks8695KconfigMakefileMakefile.bootmach-lpc18xxMakefileMakefile.bootmach-lpc32xxMakefileMakefile.bootmach-mediatekKconfigMakefilemach-mesonKconfigMakefilemach-mmpKconfigMakefilemach-moxartKconfigMakefilemach-mv78xx0KconfigMakefilemach-mvebuKconfigMakefilemach-mxsKconfigMakefilemach-netxKconfigMakefileMakefile.bootmach-nomadikKconfigMakefilemach-npcmKconfigMakefilemach-nspireKconfigMakefilemach-omap1KconfigMakefileMakefile.bootmach-omap2KconfigMakefilemach-orion5xKconfigMakefilemach-oxnasKconfigMakefilemach-picoxcellKconfigMakefilemach-prima2KconfigMakefilemach-pxaKconfigMakefileMakefile.bootmach-qcomKconfigMakefilemach-realviewKconfigMakefilemach-rockchipKconfigMakefilemach-rpcMakefileMakefile.bootmach-s3c24xxKconfigMakefileMakefile.bootmach-s3c64xxKconfigMakefilemach-s5pv210KconfigMakefilemach-sa1100KconfigMakefileMakefile.bootmach-shmobileKconfigMakefilemach-socfpgaKconfigMakefilemach-spearKconfigMakefilemach-stiKconfigMakefilemach-stm32KconfigMakefileMakefile.bootmach-sunxiKconfigMakefilemach-tangoKconfigMakefilemach-tegraKconfigMakefilemach-u300KconfigMakefilemach-uniphierKconfigMakefilemach-ux500KconfigMakefilemach-versatileKconfigMakefilemach-vexpressKconfigMakefileMakefile.bootmach-vt8500KconfigMakefileMakefile.bootmach-w90x900KconfigMakefileMakefile.bootmach-zxKconfigMakefilemach-zynqKconfigMakefilemmKconfigMakefilenetMakefilenwfpeMakefileoprofileMakefileplat-iopMakefileplat-omapKconfigMakefileplat-orionMakefileplat-pxaKconfigMakefileplat-samsungKconfigMakefileplat-versatileKconfigMakefileprobesMakefilekprobesMakefileuprobesMakefiletoolsMakefilevdsoMakefilevfpMakefilexenMakefilearm64KconfigKconfig.debugKconfig.platformsMakefilebootMakefiledtsMakefileactionsMakefilealMakefileallwinnerMakefilealteraMakefileamdMakefileamlogicMakefileapmMakefilearmMakefilebroadcomMakefilenorthstar2MakefilestingrayMakefilecaviumMakefileexynosMakefilefreescaleMakefilehisiliconMakefilelgMakefilemarvellMakefilemediatekMakefilenvidiaMakefileqcomMakefilerealtekMakefilerenesasMakefilerockchipMakefilesocionextMakefilesprdMakefilesynapticsMakefilexilinxMakefilezteMakefilecryptoKconfigMakefilehypervMakefilekernelMakefileprobesMakefilevdsoMakefilevdso32MakefilekvmKconfigMakefilehypMakefilenvheMakefilevheMakefilelibMakefilemmMakefilenetMakefiletoolsMakefilexenMakefilec6xKconfigMakefilebootMakefiledtsMakefilekernelMakefilelibMakefilemmMakefileplatformsKconfigMakefileh8300KconfigKconfig.cpuMakefilebootMakefilecompressedMakefiledtsMakefilekernelMakefilelibMakefilemmMakefilehexagonKconfigMakefilekernelMakefilelibMakefilemmMakefileia64KconfigKconfig.debugMakefiledigMakefilehpcommonMakefilesimKconfigMakefilebootMakefilezx1MakefilekernelMakefileMakefile.gatelibMakefilemmMakefileoprofileMakefilepciMakefilesnMakefilekernelMakefilesn2MakefilepciMakefilepcibrMakefileuvMakefilekernelMakefilem68k68000MakefileKconfigKconfig.busKconfig.cpuKconfig.debugKconfig.devicesKconfig.machineMakefileamigaMakefileapolloMakefileatariMakefilebvme6000MakefilecoldfireMakefileemuMakefilefpsp040Makefilehp300Makefileifpsp060MakefilekernelMakefilelibMakefilemacMakefilemath-emuMakefilemmMakefilemvme147Makefilemvme16xMakefileq40Makefilesun3MakefilepromMakefilesun3xMakefiletoolsamigaMakefilemicroblazeKconfigKconfig.debugKconfig.platformMakefilebootMakefiledtsMakefilekernelMakefilecpuMakefilelibMakefilemmMakefileoprofileMakefilepciMakefilemipsKconfigKconfig.debugMakefileMakefile.postlinkalchemyKconfigMakefilecommonMakefiledevboardsMakefilear7Makefileath25KconfigMakefileath79KconfigMakefilebcm47xxKconfigMakefilebcm63xxKconfigMakefileboardsKconfigMakefilebmipsKconfigMakefilebootMakefilecompressedMakefiledtsMakefilebrcmMakefilecavium-octeonMakefileimgMakefileingenicMakefilelantiqMakefilemsccMakefilemtiMakefilenetlogicMakefileniMakefilepic32MakefileqcaMakefileralinkMakefilexilfpgaMakefiletoolsMakefilecavium-octeonKconfigMakefilecryptoMakefileexecutiveMakefilecobaltMakefilecryptoMakefiledecMakefilepromMakefileemmaMakefilecommonMakefilemarkeinsMakefilefwarcMakefilecfeMakefilelibMakefilesniMakefilegenericKconfigMakefilejazzKconfigMakefilejz4740KconfigMakefilekernelMakefilekvmKconfigMakefilelantiqKconfigMakefilefalconMakefilexwayMakefilelasatKconfigMakefileimageMakefilelibMakefileloongson32KconfigMakefilecommonMakefilels1bMakefilels1cMakefileloongson64KconfigMakefilecommonMakefilecs5536Makefilefuloong-2eMakefilelemote-2fMakefileloongson-3Makefilemath-emuMakefilemmMakefilemti-maltaMakefilenetMakefilenetlogicKconfigMakefilecommonMakefilexlpMakefilexlrMakefileoprofileMakefileparavirtKconfigMakefilepciMakefilepic32KconfigMakefilecommonMakefilepic32mzdaMakefilepistachioKconfigMakefilepmcs-msp71xxKconfigMakefilepnx833xMakefilecommonMakefilestb22xMakefilepowerMakefileralinkKconfigMakefilerb532Makefilesgi-ip22Makefilesgi-ip27KconfigMakefilesgi-ip32MakefilesibyteKconfigMakefilebcm1480MakefilecommonMakefilesb1250MakefileswarmMakefilesniMakefiletxx9KconfigMakefilegenericMakefilejmr3927Makefilerbtx4927Makefilerbtx4938Makefilerbtx4939MakefilevdsoMakefilevr41xxKconfigcasio-e55MakefilecommonMakefileibm-workpadMakefilends32KconfigKconfig.cpuMakefilebootMakefiledtsMakefilekernelMakefilevdsoMakefilelibMakefilemmMakefilenios2KconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemmMakefileplatformKconfig.platformMakefileopenriscKconfigMakefilebootdtsMakefilekernelMakefilelibMakefilemmMakefilepariscKconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefileoprofileMakefilepowerpcKconfigKconfig.debugMakefileMakefile.postlinkbootMakefilecryptoMakefileincludeasm8xx_immap.hKbuildaccounting.hagp.harchrandom.hasm-compat.hasm-offsets.hasm-prototypes.hasync_tx.hatomic.hbacklight.hbarrier.hbitops.hbook3s32hash.hmmu-hash.hpgalloc.hpgtable.h64hash-4k.hhash-64k.hhash.hhugetlb.hkup-radix.hmmu-hash.hmmu.hpgalloc.hpgtable-4k.hpgtable-64k.hpgtable.hradix-4k.hradix-64k.hradix.hslice.htlbflush-hash.htlbflush-radix.htlbflush.hpgalloc.hpgtable.hbootx.hbpf_perf_event.hbtext.hbug.hbugs.hcache.hcacheflush.hcell-pmu.hcell-regs.hchecksum.hcmpxchg.hcode-patching-asm.hcode-patching.hcompat.hcontext_tracking.hcopro.hcpm.hcpm1.hcpm2.hcpu_has_feature.hcpu_setup_power.hcpufeature.hcpuidle.hcputable.hcputhreads.hcputime.hcrashdump-ppc64.hcurrent.hdbdma.hdbell.hdcr-generic.hdcr-mmio.hdcr-native.hdcr-regs.hdcr.hdebug.hdebugfs.hdelay.hdevice.hdisassemble.hdma-direct.hdma-mapping.hdma.hdrmem.hdt_cpu_ftrs.hdtl.hedac.heeh.heeh_event.hehv_pic.helf.helfnote.hemergency-restart.hemulated_ops.hepapr_hcalls.hexception-64e.hexception-64s.hexec.hextable.hfadump-internal.hfadump.hfb.hfeature-fixups.hfirmware.hfixmap.hfloppy.hfs_pd.hfsl_85xx_cache_sram.hfsl_gtm.hfsl_hcalls.hfsl_lbc.hfsl_pamu_stash.hfsl_pm.hftrace.hfutex.hgrackle.hhardirq.hhead-64.hheathrow.hhighmem.hhmi.hhugetlb.hhvcall.hhvconsole.hhvcserver.hhvsi.hhw_breakpoint.hhw_irq.hhydra.hi8259.hibmebus.hicswx.hide.hidle.hima.himc-pmu.himmap_cpm2.hinst.hio-defs.hio-workarounds.hio.hio_event_irq.hiommu.hipic.hirq.hirq_work.hirqflags.hisa-bridge.hjump_label.hkdebug.hkdump.hkexec.hkexec_ranges.hkeylargo.hkgdb.hkprobes.hkup.hkvm_asm.hkvm_book3s.hkvm_book3s_32.hkvm_book3s_64.hkvm_book3s_asm.hkvm_book3s_uvmem.hkvm_booke.hkvm_booke_hv_asm.hkvm_fpu.hkvm_guest.hkvm_host.hkvm_para.hkvm_ppc.hlibata-portmap.hlinkage.hlivepatch.hlocal.hlppaca.hlv1call.hmachdep.hmacio.hmc146818rtc.hmce.hmediabay.hmem_encrypt.hmembarrier.hmm-arch-hooks.hmman.hmmiowb.hmmu-40x.hmmu-44x.hmmu-8xx.hmmu-book3e.hmmu.hmmu_context.hmmzone.hmodule.hmpc5121.hmpc52xx.hmpc52xx_psc.hmpc5xxx.hmpc6xx.hmpc8260.hmpc85xx.hmpic.hmpic_msgr.hmpic_timer.hmsi_bitmap.hnmi.hnohash32pgalloc.hpgtable.hpte-40x.hpte-44x.hpte-8xx.hpte-fsl-booke.hslice.h64pgalloc.hpgtable-4k.hpgtable.hslice.hpgalloc.hpgtable.hpte-book3e.hnvram.hohare.hopal-api.hopal.hoprofile_impl.hpaca.hpage.hpage_32.hpage_64.hparavirt.hparport.hpasemi_dma.hpci-bridge.hpci.hpercpu.hperf_event.hperf_event_fsl_emb.hperf_event_server.hpgalloc.hpgtable-be-types.hpgtable-types.hpgtable.hpkeys.hplpar_wrappers.hpmac_feature.hpmac_low_i2c.hpmac_pfunc.hpmc.hpmi.hpnv-ocxl.hpnv-pci.hpowernv.hppc-opcode.hppc-pci.hppc4xx.hppc4xx_ocm.hppc_asm.hprobes.hprocessor.hprom.hps3.hps3av.hps3gpu.hps3stor.hpte-common.hpte-walk.hptrace.hqspinlock.hqspinlock_paravirt.hreg.hreg_8xx.hreg_a2.hreg_booke.hreg_fsl_emb.hrheap.hrio.hrtas.hrunlatch.hscom.hseccomp.hsections.hsecure_boot.hsecurity_features.hsecvar.hserial.hsetjmp.hsetup.hsfp-machine.hshmparam.hsignal.hsimple_spinlock.hsimple_spinlock_types.hslice.hsmp.hsmu.hsparsemem.hspinlock.hspinlock_types.hspu.hspu_csa.hspu_info.hspu_priv1.hsstep.hstackprotector.hstacktrace.hstring.hsvm.hswab.hswiotlb.hswitch_to.hsynch.hsyscall.hsyscalls.hsystbl.htask_size_32.htask_size_64.htce.htermios.hthread_info.htime.htimex.htlb.htlbflush.htm.htopology.htrace.htrace_clock.htsi108.htsi108_irq.htsi108_pci.htypes.huaccess.hudbg.huic.hultravisor-api.hultravisor.hunaligned.huninorth.hunistd.huprobes.huser.hvas.hvdso.hvdso_datapage.hvga.hvio.hword-at-a-time.hxics.hxilinx_intc.hxilinx_pci.hxive-regs.hxive.hxmon.hxor.hxor_altivec.hgeneratedasmdiv64.hexport.hirq_regs.hirq_work.hkmap_size.hkvm_types.hlocal64.hmcs_spinlock.hmsi.hpreempt.hqrwlock.hvtime.huapiasmbpf_perf_event.hparam.hpoll.hresource.hsiginfo.hsockios.hstatfs.huapiasmKbuildauxvec.hbitsperlong.hbootx.hbyteorder.hcputable.heeh.helf.hepapr_hcalls.herrno.hfcntl.hioctl.hioctls.hipcbuf.hkvm.hkvm_para.hmman.hmsgbuf.hnvram.hopal-prd.hpapr_pdsm.hperf_event.hperf_regs.hposix_types.hps3fb.hptrace.hsembuf.hsetup.hshmbuf.hsigcontext.hsignal.hsocket.hspu_info.hstat.hswab.htermbits.htermios.htm.htypes.hucontext.hunistd.hvas-api.hkernelMakefilemodule.ldsptraceMakefiletraceMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilecrtsavres.Smath-emuMakefilemmMakefilebook3s32Makefilebook3s64MakefilenetMakefileoprofileMakefileperfMakefileplatforms40xKconfigMakefile44xKconfigMakefile4xxMakefile512xKconfigMakefile52xxKconfigMakefile82xxKconfigMakefile83xxKconfigMakefile85xxKconfigMakefile86xxKconfigMakefile8xxKconfigMakefileKconfigKconfig.cputypeMakefileamigaoneKconfigMakefilebook3sKconfigMakefilecellKconfigMakefilespufsMakefilechrpKconfigMakefileembedded6xxKconfigMakefilemapleKconfigMakefilepasemiKconfigMakefilepowermacKconfigMakefilepowernvKconfigMakefileps3KconfigMakefilepseriesKconfigMakefilepurgatoryMakefilesysdevKconfigMakefilegeMakefilexicsKconfigMakefilexiveKconfigMakefilexmonMakefileriscvKconfigMakefilekernelMakefilevdsoMakefilelibMakefilemmMakefiles390KconfigKconfig.debugMakefileappldataMakefilebootMakefilecompressedMakefilecryptoMakefilehypfsMakefilekernelMakefilesyscallsMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilemmMakefilenetMakefilenumaMakefileoprofileMakefilepciMakefilepurgatoryMakefilescriptsMakefile.chkbsstoolsMakefileshKconfigKconfig.cpuKconfig.debugMakefileboardsKconfigMakefilemach-ap325rxaMakefilemach-caymanMakefilemach-dreamcastMakefilemach-ecovec24Makefilemach-highlanderKconfigMakefilemach-hp6xxMakefilemach-kfr2r09Makefilemach-landiskMakefilemach-lboxre2Makefilemach-microdevMakefilemach-migorKconfigMakefilemach-r2dKconfigMakefilemach-rskKconfigMakefilemach-sdk7780KconfigMakefilemach-sdk7786Makefilemach-se7206Makefile7343Makefile770xMakefile7721Makefile7722Makefile7724Makefile7751Makefile7780MakefileMakefilemach-sh03Makefilemach-sh7763rdpMakefilemach-x3protoMakefilebootMakefilecompressedMakefiledtsMakefileromimageMakefilecchipsKconfighd6446xMakefiledriversKconfigMakefiledmaKconfigMakefilepciMakefilesuperhywayMakefilekernelMakefilecpuMakefileirqMakefilesh2Makefilesh2aMakefilesh3Makefilesh4Makefilesh4aMakefilesh5MakefileshmobileMakefilevsyscallMakefilelibMakefilelib64Makefilemath-emuMakefilemmKconfigMakefileoprofileMakefiletoolsMakefilesparcKconfigKconfig.debugMakefilebootMakefilecryptoMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefilenetMakefileoprofileMakefilepowerMakefilepromMakefilevdsoMakefileumKconfig.charKconfig.commonKconfig.debugKconfig.netKconfig.restKconfig.umMakefileMakefile-os-LinuxMakefile-skasdriversMakefilekernelMakefileskasMakefileos-LinuxMakefiledriversMakefileskasMakefilescriptsMakefile.rulesunicore32KconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemmKconfigMakefilex86KconfigKconfig.cpuKconfig.debugMakefileMakefile.umMakefile_32.cpubootMakefilecompressedMakefilecocoMakefiletdxMakefilecryptoMakefileentryMakefilesyscallsMakefilevdsoMakefilevsyscallMakefileeventsKconfigMakefileamdMakefileintelMakefilehypervMakefileia32MakefilekernelMakefileacpiMakefileapicMakefilecpuMakefilemceMakefilemicrocodeMakefilemtrrMakefileresctrlMakefilesgxMakefilefpuMakefilekprobesMakefilekvmKconfigMakefilelibMakefilemath-emuMakefilemmMakefilepatMakefilenetMakefileoprofileMakefilepciMakefileplatformMakefileatomMakefilece4100MakefileefiMakefilegeodeMakefilegoldfishMakefileintelintel-midMakefiledevice_libsMakefileintel-quarkMakefileMakefileirisMakefileolpcMakefilescx200MakefilesfiMakefilets5500MakefileuvMakefilepowerMakefilepurgatoryMakefilerasKconfigrealmodeMakefilermMakefiletoolsMakefileumKconfigMakefileos-LinuxMakefilevdsoMakefilevideoMakefilexenKconfigMakefilextensaKconfigKconfig.debugMakefilebootMakefileboot-elfMakefileboot-redbootMakefiledtsMakefilelibMakefilekernelMakefilelibMakefilemmMakefileoprofileMakefileplatformsissMakefilext2000MakefilextfpgaMakefileblockKconfigKconfig.ioschedMakefilepartitionsKconfigMakefilecertsKconfigMakefilecryptoKconfigMakefileasymmetric_keysKconfigMakefileasync_txKconfigMakefiledriversKconfigMakefileaccessibilityKconfigMakefilebrailleMakefileacpiKconfigMakefileacpicaMakefileapeiKconfigMakefilearm64KconfigMakefiledptfKconfigMakefilenfitKconfigMakefilenumaKconfigMakefilepmicKconfigMakefileambaKconfigMakefileandroidKconfigMakefileataKconfigMakefileatmKconfigMakefileauxdisplayKconfigMakefilebaseKconfigMakefilefirmware_loaderKconfigMakefilepowerMakefileregmapKconfigMakefiletestKconfigMakefilebcmaKconfigMakefileblockKconfigMakefileaoeMakefiledrbdKconfigMakefilemtip32xxKconfigMakefileparideKconfigMakefilersxxMakefilexen-blkbackMakefilezramKconfigMakefilebluetoothKconfigMakefilebusKconfigMakefilefsl-mcKconfigMakefilemhiKconfigMakefileepKconfigMakefilehostKconfigMakefilecdromMakefilecharKconfigMakefileagpKconfigMakefilehw_randomKconfigMakefileipmiKconfigMakefilemwaveMakefilepcmciaKconfigMakefiletpmKconfigMakefilest33zp24KconfigMakefilexilinx_hwicapMakefilexillybusKconfigMakefileclkKconfigMakefileactionsKconfigMakefileat91MakefileaxisMakefileaxs10xMakefilebcmKconfigMakefileberlinMakefiledavinciMakefileh8300MakefilehisiliconKconfigMakefileimgtecKconfigMakefileimxMakefileingenicMakefilekeystoneKconfigMakefileloongson1MakefilemediatekKconfigMakefilemesonKconfigMakefilemicrochipMakefilemmpMakefilemvebuKconfigMakefilemxsMakefilenxpMakefilepistachioMakefilepxaMakefileqcomKconfigMakefilerenesasKconfigMakefilerockchipMakefilesamsungKconfigMakefilesirfMakefilesocfpgaMakefilespearMakefilesprdKconfigMakefilestMakefilesunxisunxi-ngKconfigMakefileMakefiletegraKconfigMakefiletiKconfigMakefileuniphierKconfigMakefileux500MakefileversatileKconfigMakefilex86MakefilezteMakefilezynqMakefileclocksourceKconfigMakefileconnectorKconfigMakefilecounterKconfigMakefilecpufreqKconfigKconfig.armKconfig.powerpcKconfig.x86MakefilecpuidleKconfigKconfig.armKconfig.mipsKconfig.powerpcMakefilegovernorsMakefilecryptoKconfigMakefileamccMakefileaxisMakefilebcmMakefilecaamKconfigMakefilecaviumMakefilecptKconfigMakefilenitroxKconfigMakefilezipMakefileccpKconfigMakefileccreeMakefilechelsioKconfigMakefilechtlsMakefileinside-secureMakefilemarvellMakefilemediatekMakefilenxKconfigMakefileqatKconfigMakefileqat_4xxxMakefileqat_c3xxxMakefileqat_c3xxxvfMakefileqat_c62xMakefileqat_c62xvfMakefileqat_commonMakefileqat_dh895xccMakefileqat_dh895xccvfMakefileqceMakefilerockchipMakefilestm32KconfigMakefilesunxi-ssMakefileux500KconfigMakefilecrypMakefilehashMakefilevirtioKconfigMakefilevmxKconfigMakefiledaxKconfigMakefilehmemMakefilepmemMakefiledcaKconfigMakefiledevfreqKconfigMakefileeventKconfigMakefiledioMakefiledmadma-bufKconfigMakefileheapsKconfigMakefileKconfigMakefilebestcommKconfigMakefiledwdw-axi-dmacMakefileKconfigMakefilehsuKconfigMakefileidxdMakefileioatMakefileipuMakefilemediatekKconfigMakefileppc4xxMakefileptdmaKconfigMakefileqcomKconfigMakefileshKconfigMakefiletiKconfigMakefilexilinxMakefileedacKconfigMakefileeisaKconfigMakefileextconKconfigMakefilefirewireKconfigMakefilefirmwareKconfigMakefilearm_scmiMakefilebroadcomKconfigMakefilecirrusKconfigMakefileefiKconfigMakefilelibstubMakefiletestMakefilegoogleKconfigMakefilemesonKconfigMakefilepsciKconfigMakefilesmcccKconfigMakefiletegraKconfigMakefilefmcKconfigMakefilefpgaKconfigMakefilefsiKconfigMakefilegpioKconfigMakefilegpuMakefiledrmKconfigMakefileamdacpKconfigMakefileamdgpuKconfigMakefileamdkfdKconfigMakefiledisplayKconfigMakefileamdgpu_dmMakefiledcMakefilebasicsMakefilebiosMakefileclk_mgrMakefiledceMakefiledce100Makefiledce110Makefiledce112Makefiledce120Makefiledce60Makefiledce80Makefiledcn10Makefiledcn20Makefiledcn201Makefiledcn21Makefiledcn30Makefiledcn301Makefiledcn302Makefiledcn303Makefiledcn31Makefiledcn314Makefiledcn315Makefiledcn316Makefiledcn32Makefiledcn321MakefiledmlMakefiledscMakefilegpioMakefilehdcpMakefileirqMakefilelinkMakefilevirtualMakefiledmubsrcMakefilemodulescolorMakefilefreesyncMakefilehdcpMakefileinfo_packetMakefilepowerMakefilepmMakefilelegacy-dpmMakefilepowerplayMakefilehwmgrMakefilesmumgrMakefileswsmuMakefilesmu11Makefilesmu12Makefilesmu13MakefilearmKconfigMakefilearmadaKconfigMakefileaspeedKconfigMakefileastKconfigMakefileatmel-hlcdcKconfigMakefilebridgeKconfigMakefileadv7511KconfigMakefileanalogixKconfigMakefilecadenceKconfigMakefileimxKconfigMakefilesynopsysKconfigMakefiledisplayKconfigMakefileetnavivKconfigMakefileexynosKconfigMakefilefsl-dcuKconfigMakefilegma500KconfigMakefilegudKconfigMakefilehisiliconKconfigMakefilehibmcKconfigMakefilekirinKconfigMakefilehypervMakefilei2cKconfigMakefilei915KconfigKconfig.debugKconfig.profileKconfig.unstableMakefilegvtMakefileimxKconfigMakefilekmbKconfigMakefilelogicvcKconfigMakefilemediatekKconfigMakefilemesonKconfigMakefilemgag200KconfigMakefilemsmKconfigMakefilemxsfbKconfigMakefilenouveauKconfigomapdrmKconfigMakefiledisplaysKconfigMakefiledssKconfigMakefilepanelKconfigMakefilepl111KconfigMakefileqxlKconfigMakefileradeonKconfigMakefilercar-duKconfigMakefilerockchipKconfigMakefileschedulerMakefileshmobileKconfigMakefilesolomonKconfigMakefilesprdKconfigMakefilestiKconfigMakefilestmKconfigMakefilesun4iKconfigMakefiletegraKconfigMakefiletestsMakefiletilcdcKconfigMakefiletinyKconfigMakefilettmMakefiletve200KconfigMakefileudlKconfigMakefilev3dKconfigMakefilevboxvideoKconfigMakefilevc4KconfigMakefilevgemMakefilevirtioKconfigMakefilevkmsMakefilevmwgfxKconfigMakefilexenKconfigMakefilehost1xKconfigMakefileipu-v3KconfigMakefilevgaKconfigMakefilehidKconfigMakefileamd-sfh-hidKconfigMakefilei2c-hidKconfigMakefileintel-ish-hidKconfigMakefilesurface-hidKconfigMakefileusbhidKconfigMakefilehsiKconfigMakefileclientsKconfigMakefilecontrollersKconfigMakefilehvKconfigMakefilehwmonKconfigMakefilepmbusKconfigMakefilehwspinlockKconfigMakefilehwtracingKconfigcoresightKconfigMakefileintel_thKconfigMakefilestmKconfigMakefilei2cKconfigMakefilealgosKconfigMakefilebussesKconfigMakefilemuxesKconfigMakefileideKconfigMakefileidleKconfigMakefileiioKconfigMakefileaccelKconfigMakefileadcKconfigMakefileafeKconfigMakefileamplifiersKconfigMakefilebufferKconfigMakefilechemicalKconfigMakefilecommonKconfigMakefilecros_ec_sensorsKconfigMakefilehid-sensorsKconfigMakefilems_sensorsKconfigMakefilessp_sensorsKconfigMakefilest_sensorsKconfigMakefilecounterKconfigMakefiledacKconfigMakefiledummyKconfigMakefilefrequencyKconfigMakefilegyroKconfigMakefilehealthKconfigMakefilehumidityKconfigMakefileimuKconfigMakefilebmi160KconfigMakefileinv_mpu6050KconfigMakefilest_lsm6dsxKconfigMakefilelightKconfigMakefilemagnetometerKconfigMakefilemultiplexerKconfigMakefileorientationKconfigMakefilepotentiometerKconfigMakefilepotentiostatKconfigMakefilepressureKconfigMakefileproximityKconfigMakefileresolverKconfigMakefiletemperatureKconfigMakefiletestKconfigMakefiletriggerKconfigMakefileinfinibandKconfigMakefilecoreMakefilehwMakefilebnxt_reKconfigMakefilecxgb4KconfigMakefileefaKconfigMakefilehfi1KconfigMakefilehnsKconfigMakefileirdmaKconfigMakefilemanaKconfigMakefilemlx4KconfigMakefilemlx5KconfigMakefilemthcaKconfigMakefileocrdmaKconfigMakefileqedrKconfigMakefileqibKconfigMakefileusnicKconfigMakefilevmw_pvrdmaKconfigMakefileswMakefilerdmavtKconfigMakefilerxeKconfigMakefilesiwKconfigMakefileulpMakefileipoibKconfigMakefileiserKconfigMakefileisertKconfigMakefileopa_vnicKconfigMakefilesrpKconfigsrptKconfigMakefileinputKconfigMakefilegameportKconfigMakefilejoystickKconfigMakefileiforceKconfigMakefilekeyboardKconfigMakefilemiscKconfigMakefilemouseKconfigMakefilermi4KconfigMakefileserioKconfigMakefiletabletKconfigMakefiletouchscreenKconfigMakefileiommuKconfigMakefileamdKconfigMakefilearmMakefilearm-smmuarm-smmu-v3MakefileMakefileintelKconfigMakefileipackKconfigMakefilecarriersKconfigMakefiledevicesKconfigMakefileirqchipKconfigMakefileisdnKconfigMakefilecapiKconfigMakefiledivertMakefilegigasetKconfigMakefilehardwareKconfigMakefileavmKconfigMakefileeiconKconfigMakefilemISDNKconfigMakefilehisaxKconfigMakefilehysdnKconfigMakefilei4lKconfigMakefileisdnloopMakefilemISDNKconfigMakefileledsKconfigMakefiletriggerKconfigMakefilelightnvmKconfigMakefilemacintoshKconfigMakefileamsMakefilemailboxKconfigMakefilemcbKconfigMakefilemdKconfigMakefilebcacheKconfigMakefilepersistent-dataKconfigMakefilemediaKconfigMakefilececKconfigMakefilecommonKconfigMakefileb2c2KconfigMakefilesaa7146KconfigMakefilesianoKconfigMakefilev4l2-tpgKconfigMakefilevideobuf2KconfigMakefiledvb-coreKconfigMakefiledvb-frontendsKconfigMakefilecxd2880KconfigMakefiledrx39xyjKconfigMakefilefirewireKconfigMakefilei2cKconfigMakefileadv748xMakefilecx25840KconfigMakefileet8ek8KconfigMakefilem5molsKconfigMakefiles5c73m3MakefilesmiappKconfigMakefilesoc_cameraKconfigMakefilemmcKconfigMakefilesianoKconfigMakefilepciKconfigMakefileb2c2KconfigMakefilebt8xxKconfigMakefilecobaltKconfigMakefilecx18KconfigMakefilecx23885KconfigMakefilecx25821KconfigMakefilecx88KconfigMakefileddbridgeKconfigMakefiledm1105KconfigMakefiledt3155KconfigMakefileintelMakefileipu3KconfigMakefileivtvKconfigMakefilemantisKconfigMakefilemeyeKconfigMakefilenetup_unidvbKconfigMakefilengeneKconfigMakefilepluto2KconfigMakefilept1KconfigMakefilept3KconfigMakefilesaa7134KconfigMakefilesaa7146KconfigMakefilesaa7164KconfigMakefilesmipcieKconfigMakefilesolo6x10KconfigMakefilesta2x11KconfigMakefilettpciKconfigMakefiletw5864KconfigMakefiletw68KconfigMakefiletw686xKconfigMakefileplatformKconfigMakefileam437xKconfigMakefileatmelKconfigMakefilecadenceKconfigMakefilecec-gpioMakefilecodaMakefiledavinciKconfigMakefileexynos-gscMakefileexynos4-isKconfigMakefilemarvell-ccicKconfigMakefilemesonMakefilemtk-jpegMakefilemtk-mdpMakefilemtk-vcodecMakefilemtk-vpuMakefileomapKconfigMakefileomap3ispMakefileqcomcamss-8x16MakefilevenusMakefilercar-vinKconfigMakefilerockchiprgaMakefiles3c-camifMakefiles5p-cecMakefiles5p-g2dMakefiles5p-jpegMakefiles5p-mfcMakefilesoc_cameraKconfigMakefilestibdispMakefilec8sectpfeKconfigMakefilececMakefiledeltaMakefilehvaMakefilestm32Makefiletegra-cecMakefileti-vpeMakefilevimcKconfigMakefilevividKconfigMakefilevsp1MakefilexilinxKconfigMakefileradioKconfigMakefilesi470xKconfigMakefilesi4713KconfigMakefilewl128xKconfigMakefilercKconfigMakefileimg-irKconfigMakefilekeymapsKconfigMakefilespiKconfigMakefiletunersKconfigMakefileusbKconfigMakefileairspyKconfigMakefileas102KconfigMakefileau0828KconfigMakefileb2c2KconfigMakefilecpia2KconfigMakefilecx231xxKconfigMakefiledvb-usbdvb-usb-v2KconfigMakefileKconfigMakefileem28xxKconfigMakefilego7007KconfigMakefilegspcaKconfigMakefilegl860KconfigMakefilem5602KconfigMakefilestv06xxKconfigMakefilehackrfKconfigMakefilehdpvrKconfigMakefilemsi2500KconfigMakefilepulse8-cecKconfigMakefilepvrusb2KconfigMakefilepwcKconfigMakefilerainshadow-cecKconfigMakefiles2255KconfigMakefilesianoKconfigMakefilestk1160KconfigMakefilestkwebcamKconfigMakefiletm6000KconfigMakefilettusb-budgetKconfigMakefilettusb-decKconfigMakefileusbtvKconfigMakefileusbvisionKconfigMakefileuvcKconfigMakefilezr364xxKconfigMakefilev4l2-coreKconfigMakefilememoryKconfigMakefileMakefile.asm-offsetssamsungKconfigMakefiletegraKconfigMakefilememstickKconfigMakefilecoreKconfigMakefilehostKconfigMakefilemessageMakefilefusionKconfigMakefilemfdKconfigMakefilemiscKconfigMakefilealtera-staplKconfigMakefilec2portKconfigMakefilecardreaderKconfigMakefilecb710KconfigMakefilecxlKconfigMakefileechoKconfigMakefileeepromKconfigMakefilegenwqeKconfigMakefileibmasmMakefilelis3lv02dKconfigMakefilelkdtmMakefilemeiKconfigMakefilehdcpKconfigMakefilepxpKconfigMakefilemicKconfigMakefilebusMakefilecardMakefilecosmMakefilecosm_clientMakefilehostMakefilescifMakefilevopMakefileocxlKconfigMakefilesgi-gruMakefilesgi-xpMakefileti-stKconfigMakefilevmw_vmciKconfigMakefilemmcKconfigMakefilecoreKconfigMakefilehostKconfigMakefilemtdKconfigMakefilechipsKconfigMakefiledevicesKconfigMakefilelpddrKconfigMakefilemapsKconfigMakefilenandKconfigMakefileonenandKconfigMakefilerawKconfigMakefileatmelMakefilebcm47xxnflashMakefilebrcmnandMakefilegpmi-nandMakefileparsersKconfigMakefilespi-norKconfigMakefiletestsMakefileubiKconfigMakefilemuxKconfigMakefilenetKconfigMakefileappletalkKconfigMakefilearcnetKconfigMakefilebondingMakefilecaifKconfigMakefilecanKconfigMakefilec_canKconfigMakefilecc770KconfigMakefileifi_canfdKconfigMakefilem_canKconfigMakefilemscanKconfigMakefilepeak_canfdKconfigMakefilercarKconfigMakefilesja1000KconfigMakefilesoftingKconfigMakefilespiKconfigMakefileusbKconfigMakefilekvaser_usbMakefilepeak_usbMakefiledsaKconfigMakefileb53KconfigMakefilemicrochipKconfigMakefilemv88e6xxxKconfigMakefileethernet3comKconfigMakefile8390KconfigMakefileKconfigMakefileadaptecKconfigMakefileaeroflexKconfigMakefileagereKconfigMakefilealacritechKconfigMakefileallwinnerKconfigMakefilealteonKconfigMakefilealteraKconfigMakefileamazonKconfigMakefileenaMakefileamdKconfigMakefilexgbeMakefileapmKconfigMakefilexgenexgene-v2KconfigMakefileKconfigMakefileappleKconfigMakefileaquantiaKconfigMakefileatlanticMakefilehw_atlMakefilearcKconfigMakefileatherosKconfigMakefilealxMakefileatl1cMakefileatl1eMakefileatlxMakefileauroraKconfigMakefilebroadcomKconfigMakefilebnx2xMakefilebnxtMakefilegenetMakefilebrocadeKconfigMakefilebnaKconfigMakefilecadenceKconfigMakefilecalxedaKconfigMakefilecaviumKconfigMakefilecommonMakefileliquidioMakefileocteonMakefilethunderMakefilechelsioKconfigMakefilecxgbMakefilecxgb3Makefilecxgb4Makefilecxgb4vfMakefileinline_cryptoKconfigMakefilech_ipsecMakefilech_ktlsMakefilelibcxgbMakefilecirrusKconfigMakefileciscoKconfigMakefileenicKconfigMakefilecortinaKconfigMakefiledavicomKconfigMakefiledecKconfigMakefiletulipKconfigMakefiledlinkKconfigMakefileemulexKconfigMakefilebenetKconfigMakefileezchipKconfigMakefilefaradayKconfigMakefilefreescaleKconfigMakefiledpaaKconfigMakefilefmanKconfigMakefilefs_enetKconfigMakefilefujitsuKconfigMakefilegoogleKconfigMakefilegveMakefilehisiliconKconfigMakefilehnsMakefilehns3Makefilehns3pfMakefilehns3vfMakefilehpKconfigMakefilehuaweiKconfigMakefilehinicKconfigMakefilei825xxKconfigMakefileibmKconfigMakefileeheaMakefileemacKconfigMakefileintelKconfigMakefilee1000Makefilee1000eMakefilefm10kMakefilei40eMakefileiavfMakefileiceMakefileidpfMakefileigbMakefileigbvfMakefileigcMakefileixgbMakefileixgbeMakefileixgbevfMakefilemarvellKconfigMakefilemvpp2MakefilemediatekKconfigMakefilemellanoxKconfigMakefilemlx4KconfigMakefilemlx5coreKconfigMakefileaccelMakefilediagMakefileenMakefilexskMakefileen_accelMakefileeswMakefilefpgaMakefileipoibMakefilelibMakefilesteeringMakefilemlxbf_gigeKconfigMakefilemlxfwKconfigMakefilemlxswKconfigMakefilemicrelKconfigMakefilemicrochipKconfigMakefilemicrosoftKconfigMakefilemanaMakefilemoxaKconfigMakefilemsccKconfigMakefilemyricomKconfigMakefilemyri10geMakefilenatsemiKconfigMakefileneterionKconfigMakefilevxgeMakefilenetronomeKconfigMakefilenfpMakefilebpfMakefileflowerMakefilenfpcoreMakefilenfp6000MakefilenicMakefileniKconfigMakefilenuvotonKconfigMakefilenvidiaKconfigMakefilenxpKconfigMakefileoki-semiKconfigMakefilepch_gbeKconfigMakefilepacketenginesKconfigMakefilepasemiKconfigMakefilepensandoKconfigMakefileionicMakefileqlogicKconfigMakefilenetxenMakefileqedMakefileqedeMakefileqlcnicMakefileqlgeMakefilequalcommKconfigMakefileemacMakefilermnetKconfigMakefilerdcKconfigMakefilerealtekKconfigMakefilerenesasKconfigMakefilerockerKconfigMakefilesamsungKconfigMakefilesxgbeMakefileseeqKconfigMakefilesfcKconfigMakefilefalconKconfigMakefilesienaKconfigMakefilesgiKconfigMakefilesilanKconfigMakefilesisKconfigMakefilesmscKconfigMakefilesocionextKconfigMakefilestmicroKconfigMakefilestmmacKconfigMakefilesunKconfigMakefilesynopsysKconfigMakefiletehutiKconfigMakefiletiKconfigMakefiletoshibaKconfigMakefiletundraKconfigMakefileviaKconfigMakefilewiznetKconfigMakefilexilinxKconfigMakefilexircomKconfigMakefilexscaleKconfigMakefilefddiKconfigMakefileskfpMakefilefjesMakefilehamradioKconfigMakefilehippiKconfigMakefilehypervKconfigMakefileieee802154KconfigMakefileipvlanMakefilenetdevsimMakefilepcsKconfigMakefilephyKconfigMakefileplipKconfigMakefilepppKconfigMakefileslipKconfigMakefileteamKconfigMakefilethunderboltKconfigMakefileusbKconfigMakefilevmxnet3MakefilewanKconfigMakefilelmcMakefilewimaxKconfigMakefilei2400mKconfigMakefilewirelessKconfigMakefileadmtekKconfigMakefileathKconfigMakefilear5523KconfigMakefileath10kKconfigMakefileath11kKconfigMakefileath12kKconfigMakefileath5kKconfigMakefileath6klKconfigMakefileath9kKconfigMakefilecarl9170KconfigMakefilewcn36xxKconfigMakefilewil6210KconfigMakefileatmelKconfigMakefilebroadcomKconfigMakefileb43KconfigMakefileb43legacyKconfigMakefilebrcm80211KconfigMakefilebrcmfmacKconfigMakefilebcaMakefilecywMakefilewccMakefilebrcmsmacMakefilebrcmutilMakefileciscoKconfigMakefileintelKconfigMakefileipw2x00KconfigMakefileiwlegacyKconfigMakefileiwlwifiKconfigMakefiledvmMakefilemeiMakefilemvmMakefileintersilKconfigMakefilehostapKconfigMakefileorinocoKconfigMakefilep54KconfigMakefileprism54MakefilelegacyKconfigMakefilemarvellKconfigMakefilelibertasKconfigMakefilelibertas_tfKconfigMakefilemwifiexKconfigMakefilemediatekKconfigMakefilemt76KconfigMakefilemt7603KconfigMakefilemt7615KconfigMakefilemt76x0KconfigMakefilemt76x2KconfigMakefilemt7915KconfigMakefilemt7921KconfigMakefilemt7996KconfigMakefilemt7601uKconfigMakefilequantennaKconfigMakefileqtnfmacKconfigMakefileralinkKconfigMakefilert2x00KconfigMakefilerealtekKconfigMakefilertl818xKconfigMakefilertl8180Makefilertl8187Makefilertl8xxxuKconfigMakefilertlwifiKconfigMakefilebtcoexistMakefilertl8188eeMakefilertl8192cMakefilertl8192ceMakefilertl8192cuMakefilertl8192deMakefilertl8192eeMakefilertl8192seMakefilertl8723aeMakefilertl8723beMakefilertl8723comMakefilertl8821aeMakefilertw88KconfigMakefilertw89KconfigMakefilersiKconfigMakefilestKconfigMakefilecw1200KconfigMakefiletiKconfigMakefilewl1251KconfigMakefilewl12xxKconfigMakefilewl18xxKconfigMakefilewlcoreKconfigMakefilevirtualKconfigMakefilezydasKconfigMakefilezd1211rwKconfigMakefilexen-netbackMakefilenfcKconfigMakefilefdpKconfigMakefilemicroreadKconfigMakefilenfcmrvlKconfigMakefilenxp-nciKconfigMakefilepn533KconfigMakefilepn544KconfigMakefiles3fwrn5KconfigMakefilest-nciKconfigMakefilest21nfcaKconfigMakefilest95hfKconfigMakefilentbKconfigMakefilehwKconfigMakefileamdKconfigMakefileepfKconfigMakefileidtKconfigMakefileintelKconfigMakefilemsccKconfigMakefiletestKconfigMakefilenubusMakefilenvdimmKconfigMakefilenvmeKconfigMakefilehostKconfigMakefiletargetKconfigMakefilenvmemKconfigMakefileofKconfigMakefileunittest-dataMakefileoppKconfigMakefilepariscKconfigMakefileparportKconfigMakefilepciKconfigMakefilecontrollerKconfigMakefiledwcKconfigMakefileendpointKconfigMakefilefunctionsKconfigMakefilehotplugKconfigMakefilepcieKconfigMakefileswitchKconfigMakefilepcmciaKconfigMakefileperfKconfigMakefilehisiliconMakefilephyKconfigMakefileallwinnerKconfigMakefileamlogicKconfigMakefilebroadcomKconfigMakefilehisiliconKconfigMakefilelantiqKconfigMakefilemarvellKconfigMakefilemediatekKconfigMakefilemotorolaKconfigMakefilequalcommKconfigMakefileralinkKconfigMakefilerenesasKconfigMakefilerockchipKconfigMakefilesamsungKconfigMakefilestKconfigMakefiletegraKconfigMakefiletiKconfigMakefilepinctrlKconfigMakefileactionsKconfigMakefileaspeedKconfigMakefilebcmKconfigMakefileberlinKconfigMakefilefreescaleKconfigMakefileintelKconfigMakefilemediatekKconfigMakefilemesonKconfigMakefilemvebuKconfigMakefilenomadikKconfigMakefilepxaKconfigMakefileqcomKconfigMakefilesamsungKconfigMakefilesh-pfcKconfigMakefilesirfMakefilespearKconfigMakefilesprdKconfigMakefilestm32KconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefileuniphierKconfigMakefilevt8500KconfigMakefilezteKconfigMakefileplatformKconfigMakefilechromeKconfigMakefilegoldfishKconfigMakefilemellanoxKconfigMakefilemipsKconfigMakefileolpcMakefilex86KconfigMakefileamdKconfigMakefilepmfKconfigMakefiledell-wmi-sysmanMakefileintelKconfigMakefileifsKconfigMakefilepmcKconfigMakefilepmtKconfigMakefilespeed_select_ifKconfigMakefileuncore-frequencyKconfigMakefilepnpKconfigMakefileisapnpKconfigMakefilepnpacpiKconfigMakefilepnpbiosKconfigMakefilepowerKconfigMakefileavsKconfigMakefileresetKconfigMakefilesupplyKconfigMakefilepowercapKconfigMakefileppsKconfigMakefileclientsKconfigMakefilegeneratorsKconfigMakefileps3MakefileptpKconfigMakefilepwmKconfigMakefilerapidioKconfigMakefiledevicesKconfigMakefileswitchesKconfigMakefilerasKconfigMakefileregulatorKconfigMakefileremoteprocKconfigMakefileresetKconfigMakefilehisiliconKconfigMakefilestiKconfigMakefiletegraKconfigMakefilerpmsgKconfigMakefilertcKconfigMakefiles390MakefileblockKconfigMakefilecharKconfigMakefilecioMakefilecryptoMakefilenetKconfigMakefilescsiMakefilevirtioMakefilesbusMakefilecharKconfigMakefilescsiKconfigMakefileaacraidMakefileaic7xxxKconfig.aic79xxKconfig.aic7xxxMakefileaicasmMakefileaic94xxKconfigMakefilearcmsrMakefilearmKconfigMakefilebe2iscsiKconfigMakefilebfaMakefilebnx2fcKconfigMakefilebnx2iKconfigMakefilecsiostorKconfigMakefilecxgbiKconfigMakefilecxgb3iKconfigcxgb4iKconfigcxlflashKconfigMakefiledevice_handlerKconfigMakefileesas2rKconfigMakefilefcoeMakefilefnicMakefilehisi_sasKconfigMakefileibmvscsiMakefileibmvscsi_tgtMakefileisciMakefilelibfcMakefilelibsasKconfigMakefilelpfcMakefilemegaraidKconfig.megaraidMakefilempi3mrKconfigMakefilempt3sasKconfigMakefilemvsasKconfigMakefilepcmciaKconfigMakefilepm8001MakefileqedfKconfigMakefileqediKconfigMakefileqla2xxxKconfigMakefileqla4xxxKconfigMakefilesmartpqiKconfigMakefilesnicMakefilesym53c8xx_2MakefileufsKconfigMakefilesfiKconfigMakefileshKconfigMakefileclkMakefileintcKconfigMakefilemapleMakefilesuperhywayMakefilesioxKconfigMakefileslimbusKconfigMakefilesnKconfigMakefilesocKconfigMakefileactionsKconfigMakefileamlogicKconfigMakefileatmelKconfigMakefilebcmKconfigMakefilebrcmstbKconfigMakefilepmMakefiledoveMakefilefslKconfigMakefileqbmanKconfigMakefileqeKconfigMakefilefujitsuKconfigMakefilegeminiMakefileimxKconfigMakefilelantiqMakefilemediatekKconfigMakefileqcomKconfigMakefilerenesasKconfigMakefilerockchipKconfigMakefilesamsungKconfigMakefilesunxiKconfigMakefiletegraKconfigMakefilefuseMakefiletiKconfigMakefileux500KconfigMakefileversatileKconfigMakefilexilinxKconfigMakefilezteKconfigMakefilesoundwireKconfigMakefilespiKconfigMakefilespmiKconfigMakefilessbKconfigMakefilestagingKconfigMakefileandroidKconfigMakefileionKconfigMakefileboardKconfigMakefileclocking-wizardKconfigMakefilecomediKconfigMakefiledriversMakefilekcomedilibMakefiledgncKconfigMakefileemxx_udcKconfigMakefilefbtftKconfigMakefilefsl-dpaa2KconfigMakefileethernetMakefileethswMakefilertcMakefilefsl-mcKconfigMakefilebusKconfigMakefiledpioMakefilefwserialKconfigMakefilegdm724xKconfigMakefilegoldfishKconfigMakefilegreybusKconfigMakefiletoolsMakefilegs_fpgabootKconfigMakefileiioKconfigMakefileaccelKconfigMakefileadcKconfigMakefileaddacKconfigMakefilecdcKconfigMakefilefrequencyKconfigMakefilegyroKconfigMakefileimpedance-analyzerKconfigMakefilemeterKconfigMakefileresolverKconfigMakefileks7010KconfigMakefilemediaKconfigMakefilebcm2048KconfigMakefiledavinci_vpfeKconfigMakefileimxKconfigMakefileimx074KconfigMakefilemt9t031KconfigMakefileomap4issKconfigMakefiletegra-vdeKconfigMakefilezoranKconfigMakefilemostKconfigMakefilecdevKconfigMakefiledim2KconfigMakefilei2cKconfigMakefilenetKconfigMakefilesoundKconfigMakefileusbKconfigMakefilevideoKconfigMakefilemt29f_spinandKconfigMakefilemt7621-dmaKconfigMakefilemt7621-dtsKconfigMakefilemt7621-ethKconfigMakefilemt7621-gpioKconfigMakefilemt7621-mmcKconfigMakefilemt7621-pciMakefilemt7621-pinctrlKconfigMakefilemt7621-spiKconfigMakefilenetlogicKconfigMakefilenvecKconfigMakefileocteonocteon-usbKconfigMakefileKconfigMakefileolpc_dconKconfigMakefilepi433KconfigMakefilertl8188euKconfigMakefilertl8192eKconfigMakefilertl8192eKconfigMakefilertl8192uKconfigMakefileieee80211Makefilertl8712KconfigMakefilertl8723bsKconfigMakefilertlwifiKconfigMakefilebtcoexistMakefilertl8822beMakefilerts5208KconfigMakefileskeinKconfigMakefilesm750fbKconfigMakefilespeakupKconfigMakefileunisysKconfigMakefilevisorhbaKconfigMakefilevisorinputKconfigMakefilevisornicKconfigMakefilevboxvideoKconfigMakefilevc04_servicesKconfigMakefilebcm2835-audioKconfigMakefilebcm2835-cameraKconfigMakefilevmeMakefiledevicesKconfigMakefilevt6655KconfigMakefilevt6656KconfigMakefilewilc1000KconfigMakefilewlan-ngKconfigMakefilexgifbKconfigMakefiletargetKconfigMakefileiscsiKconfigMakefilecxgbitKconfigMakefileloopbackKconfigMakefilesbpKconfigMakefiletcm_fcKconfigMakefiletcMakefileteeKconfigMakefileopteeKconfigMakefilethermalKconfigMakefilebroadcomKconfigMakefileintelKconfigMakefileint340x_thermalKconfigMakefileqcomKconfigMakefilesamsungKconfigMakefilestKconfigMakefiletegraKconfigMakefileti-soc-thermalKconfigMakefilethunderboltKconfigMakefilettyKconfigMakefilehvcKconfigMakefileipwirelessMakefileserdevKconfigMakefileserial8250KconfigMakefileKconfigMakefilecpm_uartMakefilejsmMakefilevtMakefileuioKconfigMakefileusbKconfigMakefileatmKconfigMakefilec67x00MakefilechipideaKconfigMakefileclassKconfigMakefilecommonKconfigMakefilecoreKconfigMakefiledwc2KconfigMakefiledwc3KconfigMakefileearlyMakefilegadgetKconfigMakefilefunctionMakefilelegacyKconfigMakefileudcKconfigMakefileaspeed-vhubKconfigMakefilebdcKconfigMakefilehostKconfigMakefilewhciMakefileimageKconfigMakefileisp1760KconfigMakefilemiscKconfigMakefilesisusbvgaKconfigMakefilemonKconfigMakefilemtu3KconfigMakefilemusbKconfigMakefilephyKconfigMakefilerenesas_usbhsKconfigMakefilerolesKconfigMakefileserialKconfigMakefileMakefile-keyspan_pda_fwstorageKconfigMakefiletypecKconfigMakefilealtmodesKconfigMakefilemuxKconfigMakefiletcpmKconfigMakefiletipdKconfigMakefileucsiKconfigMakefileusbipKconfigMakefilewusbcoreKconfigMakefileuwbKconfigMakefilei1480MakefiledfuMakefilevdpaKconfigMakefilealibabaMakefileifcvfMakefilemlx5Makefilevdpa_simMakefilevirtio_pciMakefilevfioKconfigMakefilemdevKconfigMakefilepciKconfigMakefileplatformKconfigMakefileresetKconfigMakefilevhostKconfigKconfig.vringhMakefilevideoKconfigMakefilebacklightKconfigMakefileconsoleKconfigMakefilefbdevKconfigMakefileatyMakefilecoreMakefilegeodeKconfigMakefilei810MakefileintelfbMakefilekyroMakefilematroxMakefilemb862xxMakefilembxMakefilemmpKconfigMakefilefbKconfigMakefilehwKconfigMakefilepanelKconfigMakefilenvidiaMakefileomapKconfigMakefileomap2KconfigMakefileomapfbKconfigMakefiledisplaysKconfigMakefiledssKconfigMakefilerivaMakefilesavageMakefilesisMakefilevermilionMakefileviaMakefilelogoKconfigMakefilevirtKconfigMakefilecocosev-guestKconfigMakefiletdx-guestKconfigMakefilenitro_enclavesKconfigMakefilevboxguestKconfigMakefilevirtioKconfigMakefilevisorbusKconfigMakefilevlynqKconfigMakefilevmeKconfigMakefileboardsKconfigMakefilebridgesKconfigMakefilew1KconfigMakefilemastersKconfigMakefileslavesKconfigMakefilewatchdogKconfigMakefilexenKconfigMakefileeventsMakefilexen-pcibackMakefilexenbusMakefilexenfsMakefilezorroKconfigMakefilefirmwareMakefilefs9pKconfigMakefileKconfigKconfig.binfmtMakefileadfsKconfigMakefileaffsKconfigMakefileafsKconfigMakefileautofsKconfigMakefilebefsKconfigMakefilebfsKconfigMakefilebtrfsKconfigMakefilecachefilesKconfigMakefilecephKconfigMakefilecifsKconfigMakefilecodaKconfigMakefileconfigfsKconfigMakefilecramfsKconfigMakefilecryptoKconfigMakefiledebugfsMakefiledevptsMakefiledlmKconfigMakefileecryptfsKconfigMakefileefivarfsKconfigMakefileefsKconfigMakefileexportfsMakefileext2KconfigMakefileext4KconfigMakefilef2fsKconfigMakefilefatKconfigMakefilefreevxfsKconfigMakefilefscacheKconfigMakefilefuseKconfigMakefilegfs2KconfigMakefilehfsKconfigMakefilehfsplusKconfigMakefilehostfsMakefilehpfsKconfigMakefilehugetlbfsMakefileiomapMakefileisofsKconfigMakefilejbd2KconfigMakefilejffs2KconfigMakefilejfsKconfigMakefilekernfsKconfigMakefilelockdMakefileminixKconfigMakefilenfsKconfigMakefileblocklayoutMakefilefilelayoutMakefileflexfilelayoutMakefilenfs_commonMakefilenfsdKconfigMakefilenilfs2KconfigMakefilenlsKconfigMakefilenotifyKconfigMakefilednotifyKconfigMakefilefanotifyKconfigMakefileinotifyKconfigMakefilentfsKconfigMakefileocfs2KconfigMakefileclusterMakefiledlmMakefiledlmfsMakefileomfsKconfigMakefileopenpromfsMakefileorangefsKconfigMakefileoverlayfsKconfigMakefileprocKconfigMakefilepstoreKconfigMakefileqnx4KconfigMakefileqnx6KconfigMakefilequotaKconfigMakefileramfsMakefilereiserfsKconfigMakefileromfsKconfigMakefilesquashfsKconfigMakefilesysfsKconfigMakefilesysvKconfigMakefiletracefsMakefileubifsKconfigMakefileudfKconfigMakefileufsKconfigMakefilexfsKconfigMakefileincludeacpiacbuffer.hacconfig.hacexcep.hacnames.hacoutput.hacpi.hacpi_bus.hacpi_drivers.hacpi_io.hacpi_lpat.hacpi_numa.hacpiosxf.hacpixf.hacrestyp.hactbl.hactbl1.hactbl2.hactbl3.hactypes.hacuuid.hapei.hbattery.hbutton.hcppc_acpi.hghes.hhed.hnfit.hpcc.hpdc_intel.hplatformacenv.hacenvex.hacgcc.hacgccex.hacintel.haclinux.haclinuxex.hprocessor.hreboot.hvideo.hasm-generic4level-fixup.h5level-fixup.hasm-offsets.hasm-prototypes.hatomic-instrumented.hatomic-long.hatomic.hatomic64.haudit_change_attr.haudit_dir_write.haudit_read.haudit_signal.haudit_write.hbarrier.hbitopsbitops-instrumented.hbitops.h__ffs.h__fls.harch_hweight.hatomic.hbuiltin-__ffs.hbuiltin-__fls.hbuiltin-ffs.hbuiltin-fls.hconst_hweight.hext2-atomic-setbit.hext2-atomic.hffs.hffz.hfind.hfls.hfls64.hhweight.hle.hlock.hnon-atomic.hsched.hbitsperlong.hbug.hbugs.hcache.hcacheflush.hchecksum.hcmpxchg-local.hcmpxchg.hcompat.hcurrent.hdelay.hdevice.hdiv64.hdma-contiguous.hdma-mapping.hdma.hearly_ioremap.hemergency-restart.herror-injection.hexec.hexport.hextable.hfb.hfixmap.hftrace.hfutex.hgetorder.hgpio.hhardirq.hhugetlb.hhw_irq.hhyperv-tlfs.hide_iops.hint-ll64.hio.hioctl.hiomap.hirq.hirq_regs.hirq_work.hirqflags.hkdebug.hkmap_size.hkprobes.hkvm_para.hkvm_types.hlinkage.hlocal.hlocal64.hmcs_spinlock.hmemory_model.hmm-arch-hooks.hmm_hooks.hmmiowb.hmmiowb_types.hmmu.hmmu_context.hmodule.hmshyperv.hmsi.hnuma.hpage.hparam.hparport.hpci.hpci_iomap.hpercpu.hpgalloc.hpgtable-nop4d-hack.hpgtable-nop4d.hpgtable-nopmd.hpgtable-nopud.hpgtable.hpgtable_uffd.hpreempt.hptrace.hqrwlock.hqrwlock_types.hqspinlock.hqspinlock_types.hresource.hseccomp.hsections.hsegment.hserial.hset_memory.hsignal.hsimd.hsizes.hspinlock.hstatfs.hstring.hswitch_to.hsyscall.hsyscalls.htermios-base.htermios.htimex.htlb.htlbflush.htopology.htrace_clock.huaccess.hunaligned.hunistd.huser.hvdsovsyscall.hvga.hvmlinux.lds.hvtime.hword-at-a-time.hxor.hclocksourcearm_arch_timer.hhyperv_timer.hpxa.hsamsung_pwm.htimer-sp804.htimer-ti-dm.hconfig64bit.h6lowpan.h8139cp.h8139too8139too.h8129.h842compress.hdecompress.hac97bus.hadvisesyscalls.haio.halim7101wdt.hallowdevcoredump.halterastapl.haltivec.halx.hamdphy.hapds9802als.haperturehelpers.haquantiaphy.harchcpuproberelease.hdmaaddrt64bit.henablehugepagemigration.hmemoryhotplug.hhotremove.hsplitpmdptlock.hhasdevmemisallowed.hdmamapdirect.helfrandomize.hfastmultiplier.hforcedmaunencrypted.hfortifysource.hgcovprofileall.hgiganticpage.hhugepd.hkexecpurgatory.hmemencrypt.hmembarriercallbacks.hmemremapcompatalign.hmmiowb.hnonoverlappingaddressspace.hphystodma.hpkeys.hpmemapi.hptespecial.hsgchain.htickbroadcast.huaccessflushcache.hmcsafe.hubsansanitizeall.hwalkmemory.hzonedevice.hhavenmisafecmpxchg.hhibernationpossible.hkeepmemblock.hmayhavepcfdc.hmemoryprobe.hmighthavepcparport.hserio.hmmaprndbitsbits.hmax.hmin.hcompatbitsbits.hmax.hmin.hrandom.hselectmemorymodel.hsparsememdefault.henable.hsupportsatomicrmw.hdebugpagealloc.hmemoryfailure.hnumabalancing.huprobes.hsuspendnonzerocpu.hpossible.husebuiltinbswap.hcmpxchglockref.huseshighvmaflags.hwantcompatipcparseversion.hipcparseversion.hirqsoffactivatemm.holdcompatipc.hweakreleaseacquire.harmgicmaxnr.hasn1.hassociativearray.hasymmetrickeytype.hpublickeysubtype.hasynccore.hmemcpy.hpq.hraid6recov.htest.htxdma.hxor.hataata.hbmdma.hgeneric.hpiix.hsff.hverboseerror.hatl1.hatl1c.hatl1e.hatl2.hatmatm.hbr2684.hclip.hlane.hatomic64selftest.hauditaudit.harch.hauditsyscall.hauto.confauto.conf.cmdautofsfs.hautofs4fs.hauxiliarybus.hbacklightclassdevice.hlcdsupport.hlp855x.hpwm.hballooncompaction.hbareudp.hbasefull.hsmall.hbcmnetphylib.hbcm7xxxphy.hbcm87xxphy.hbcmabcma.hdrivergmaccmn.hgpio.hpci.hhostpcipci.hpossible.hpossible.hbe2iscsi.hbe2netbe2net.hhwmon.hlancer.hskyhawk.hbfqgroupiosched.hbigkeys.hbinaryprintf.hbinfmtelf.hmisc.hscript.hbitfieldkunittest.hbitreverse.hbitskunittest.hblkcgroupcgroup.hfcappid.hiolatency.hrwstat.hdebugfs.hdevdev.hbsg.hbsglib.hdmdm.hbuiltin.hinitrd.hintegrityintegrity.ht10.hiotrace.hlooploop.hmincount.hmd.hnbd.hnullblk.hnvme.hpmem.hramram.hcount.hsize.hrbd.hrsxx.hsd.hsr.hthrottling.hmqpci.hrdma.hvirtio.hpm.hscsirequest.hwbtwbt.hmq.hblockblock.hcompat.hbnx2.hbnx2xbnx2x.hsriov.hbnxtbnxt.hdcb.hfloweroffload.hhwmon.hsriov.hbonding.hbootparamhardlockuppanicvalue.hhungtaskpanicvalue.hsoftlockuppanicvalue.hbootxtext.hbounce.hbpfbpf.hevents.hjitjit.halwayson.hdefaulton.hlsm.hstreamparser.hsyscall.hunprivdefaultoff.hbql.hbranchprofilenone.hbridgebridge.hebt8023.hamong.harp.harpreply.hbroute.hdnat.hip.hip6.hlimit.hlog.hmarkmark.ht.hnflog.hpkttype.hredirect.hsnat.hstp.htfilter.hnat.hvlan.higmpsnooping.hnetfilter.hnfebtables.hvlanfiltering.hbroadcomphy.hbsddisklabel.hprocessacctacct.hv3.hbtbt.hath3k.hbcm.hbnepbnep.hmcfilter.hprotofilter.hbredr.hcmtp.hdebugfs.hhcibcm203x.hhcibfusb.hhcibpa10x.hhcibtsdio.hhcibtusbhcibtusb.hautosuspend.hbcm.hmtk.hrtl.hhciuarthciuart.hath3k.hbcsp.hh4.hhcivhci.hhidp.hhs.hintel.hle.hmrvlmrvl.hsdio.hmtk.hrfcommrfcomm.htty.hrtl.hbtree.hbtt.hbugbug.hondatacorruption.hbuildbin2c.hbuildtimeextablesort.hcachefiles.hcancan.h8devusb.hbcm.hccancan.hpci.hplatform.hcalcbittiming.hcc770cc770.hplatform.hdev.hemspci.husb.hesdusb2.hgw.hkvaserpci.husb.hleds.hpeakpci.hpciec.husb.hplxpci.hraw.hsja1000sja1000.hplatform.hslcan.hsofting.hucan.hvcan.hcapiavm.hcardbus.hcaviumptp.hcb710core.hdebugassumptions.hcccanlink.hhaskasangeneric.hsancovtracepc.hstackprotectornone.hworkingnosanitizeaddress.hisgcc.hoptimizeforperformance.hcdromcdrom.hpktcdvdpktcdvd.hbuffers.hceccore.hplatformdrivers.hcephfsfs.hposixacl.hsecuritylabel.hliblib.husednsresolver.hcfsbandwidth.hcgroupbpf.hcpuacct.hdevice.hfreezer.hhugetlb.hnetclassid.hprio.hperf.hpids.hrdma.hsched.hwriteback.hcgroups.hchargersmb347.hchecksignature.hcheckpointrestore.hchelsioinlinecrypto.hipsecinline.hlib.ht4.ht4vf.htlsdevice.hchrdevsch.hsg.hst.hcicadaphy.hcifscifs.hallowinsecurelegacy.hdebug.hdfsupcall.hposix.hsmbdirect.hupcall.hweakpwhash.hxattr.hclangversion.hcleancache.hclkbldi8253.hclonebackwards.hclsu32mark.hperf.hclztab.hcmacma.hareas.hcmdlinecmdline.hkunittest.hcmm.hcnic.hcompaction.hcompatcompat.h32bittime.hbinfmtelf.holdsigaction.hconfigfsfs.hconnector.hconsolelogleveldefault.hquiet.hpoll.htranslations.hcontextswitchtracer.htracking.hcontigalloc.hcordic.hcoredumpdefaultelfheaders.hcoredump.hcortinaphy.hcpufreqfreq.hdefaultgovperformance.hgovattrset.hcommon.hconservative.hondemand.hperformance.hpowersave.hschedutil.huserspace.hstat.hidleidle.hgovhaltpoll.hmenu.hisolation.hlittleendian.hrmap.hcpusets.hcramfscramfs.hblockdev.hcrashcore.hdump.hcrcccitt.hitut.ht10dif.hcrc16.hcrc32crc32.hsliceby8.hcrc7.hcrc8.hcrossmemoryattach.hcryptocrypto.h842.hacomp2.haead.haead2.haes.hakcipher.hakcipher2.halgapi.halgapi2.hansicprng.hanubis.harc4.hauthenc.hblkcipher.hblkcipher2.hblowfishblowfish.hcommon.hcamellia.hcastcommon.hcast5.hcast6.hcbc.hccm.hcfb.hchacha20.hchacha20poly1305.hcmac.hcrc32.hcrc32c.hcrct10dif.hcryptd.hctr.hcts.hdeflate.hdes.hdevchelsio.hnitroxnitrox.hcnn55xx.hnxnx.hcompresscompress.hpowernv.hpseries.hvmxvmx.hencrypt.hdrbgdrbg.hctr.hhash.hhmac.hmenu.hecb.hecdh.hechainiv.hessiv.hfcrypt.hfipsfips.hname.hgcm.hgf128mul.hghash.hhashhash.hinfo.hhash2.hhmac.hhw.hjitterentropy.hkhazad.hkpp.hkpp2.hlibarc4.hsha256.hlrw.hlzo.hmanager.hmanager2.hmd4.hmd5.hmichaelmic.hnull.hnull2.hpcbc.hpcrypt.hpoly1305.hrmd128.hrmd160.hrmd256.hrmd320.hrngrng.hdefault.hrng2.hrsa.hsalsa20.hseed.hseqiv.hserpent.hsha1.hsha256.hsha3.hsha512.htea.htest.htgr192.htwofishtwofish.hcommon.huseruser.hapiapi.haead.hhash.hrng.hskcipher.hvmac.hworkqueue.hwp512.hxcbc.hxts.hcuse.hcxlcxl.hafudriverops.hbase.hbimodal.hlib.hcxlflash.hcyclades.hcypressfirmware.hdamondamon.hdbgfs.hpaddr.hreclaim.hvaddr.hdavicomphy.hdaxdax.hdriver.hdcachewordaccess.hdcb.hdeaoc.hdebugbugverbose.hfs.hinfoinfo.hbtf.hdwarf4.hkernel.hlist.hmemoryinit.hsectionmismatch.hshirq.hstackoverflow.hdebugger.hdecompressbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hdefaultcubic.hfqcodel.hhostname.hhungtasktimeout.hmmapminaddr.hnetsch.hsecurityselinux.htcpcong.hdetecthungtask.hdevcoredump.hdaxdax.hpmempmem.hcompat.hdeviceprivate.hdevmem.hdevtmpfsdevtmpfs.hmount.hdimlib.hdlcidlci.hmax.hdlmdlm.hdebug.hdmbioprison.hbufio.hcachecache.hsmq.hcrypt.hdebug.hdelay.hera.hflakey.hintegrity.hloguserspace.hwrites.hmirror.hmultipathmultipath.hhst.hioa.hql.hst.hpersistentdata.hraid.hsnapshot.hswitch.hthinprovisioning.huevent.hverity.hwritecache.hzero.hdmaengineengine.hraid.hof.hopsops.hbypass.hsharedbuffer.hdmadevices.hdmatest.hdnet.hdnotify.hdnsresolver.hdp83640phy.hdp83822phy.hdp83848phy.hdp83867phy.hdp83tc811phy.hdql.hdrmdrm.hamdacp.hdc.hamdgpuamdgpu.huserptr.hast.hbochs.hbridge.hbuddy.hcirrusqemu.hdisplaydphelper.hhdcphelper.hhdmihelper.hhelper.hdpauxchardev.hexportfortests.hfbdevemulation.hoveralloc.hgemshmemhelper.hi2cch7006.hsil164.hkmshelper.hkunittesttest.hhelpers.hlibrandom.hloadedidfirmware.hmgag200.hnouveaunouveau.hbacklight.hpanelpanel.hbridge.horientationquirks.hqxl.hradeonradeon.huserptr.hsched.httmttm.hhelper.hudl.hvirtiogpu.hvkms.hvramhelper.hdstcache.hdtc.hdtl.hdummydummy.hconsoleconsole.hcolumns.hrows.hdvba8293.haf9013.haf9033.hatbm8830.hau8522au8522.hdtv.hv4l.hav7110av7110.hir.hosd.hb2c2flexcopflexcop.hpci.husb.hbcm3510.hbt8xx.hbudgetbudget.hav.hci.hcore.hpatch.hcore.hcx22700.hcx22702.hcx24110.hcx24116.hcx24117.hcx24120.hcx24123.hcxd2099.hcxd2820r.hcxd2841er.hddbridge.hdib3000mb.hdib3000mc.hdib7000m.hdib7000p.hdib8000.hdm1105.hdrx39xyj.hdrxd.hdrxk.hds3000.hdummyfe.hdynamicminors.hec100.hfiredtvfiredtv.hinput.hgp8pskfe.hhopper.hisl6405.hisl6421.hisl6423.hix2505v.hl64781.hlg2160.hlgdt3305.hlgdt3306a.hlgdt330x.hlgs8gxx.hlnbh25.hlnbp21.hlnbp22.hm88ds3103.hm88rs2000.hmantis.hmaxadapters.hmb86a16.hmb86a20s.hmn88472.hmn88473.hmt312.hmt352.hmxl5xx.hnet.hngene.hnxt200x.hnxt6000.hor51132.hor51211.hpll.hpluto2.hpt1.hrtl2830.hrtl2832.hs5h1409.hs5h1411.hs5h1420.hs921.hsi2165.hsi2168.hsi21xx.hsp8870.hsp887x.hstb0899.hstb6000.hstb6100.hstv0288.hstv0297.hstv0299.hstv0367.hstv0900.hstv090x.hstv0910.hstv6110.hstv6110x.hstv6111.htc90522.htda10021.htda10023.htda10048.htda1004x.htda10071.htda10086.htda18271c2dd.htda665x.htda8083.htda8261.htda826x.hts2020.httusbbudget.hdec.htua6100.htunercx24113.hdib0070.hdib0090.hitd1000.husbusb.ha800.haf9005af9005.hremote.haf9015.haf9035.hanysee.hau6610.haz6007.haz6027.hce6230.hcinergyt2.hcxusb.hdib0700.hdib3000mc.hdibusbmb.hmc.hdigitv.hdtt200u.hdtv5100.hdw2102.hec168.hgl861.hgp8psk.hlme2510.hm920x.hmxl111sf.hnovatusb2.hopera1.hpctv452e.hrtl28xxu.htechnisatusb2.httusb2.humt010.hv2.hvp702x.hvp7045.hves1820.hves1x93.hzl10036.hzl10039.hzl10353.hdwdmacdmac.hcore.hdynamicdebug.hftraceftrace.hwithregs.he1000e.hearlyprintk.hedacedac.hatomicscrub.hcpc925.hlegacysysfs.hsupport.heeh.heeprom93cx6.hat24.hlegacy.hmax6875.hefipartition.helfcore.helfcore.henablemustcheck.henclosureservices.hencryptedkeys.henergymodel.henic.hepaprboot.hparavirt.hepoll.hethernet.hethoc.hethtoolnetlink.heventtracing.heventfd.hevmevm.hattrfsuuid.hexclusivesystemram.hexportfsexportfs.hblockops.hext4fsfs.hposixacl.hsecurity.hkunittests.huseforext2.hextrafirmware.htargets.hfadump.hfailover.hfairgroupsched.hfanotifyfanotify.haccesspermissions.hfatdefaultcodepage.hiocharset.hfs.hkunittest.hfbfb.hbacklight.hcfbcopyarea.hfillrect.himageblit.hcmdline.hdeferredio.hibmgxt4500.hmacmodes.hmatroxmatrox.hg.hmodehelpers.hnotify.hnvidianvidia.hbacklight.hof.hradeonradeon.hbacklight.hssd1307.hsyscopyarea.hfillrect.hfops.himageblit.htileblitting.hvga16.hfcappid.hfhandle.hfibrules.hfilelocking.hfipssignatureselftest.hfirewirefirewire.hnet.hohci.hsbp2.hfixedphy.hfm10k.hfont8x16.h8x8.hsupport.hforcemaxzoneorder.hsmp.hfortifysource.hframewarn.hframebufferconsoleconsole.hdeferredtakeover.hdetectprimary.hrotation.hfreezer.hfrontswap.hfsdaxdax.hpmd.hiomap.hmbcache.hposixacl.hfscachefscache.hstats.hfsnotify.hftraceftrace.hmcountrecord.hsyscalls.hfunctiongraphtracer.htracer.hfusefs.hfusionfusion.hlogging.hmaxsge.hsas.hspi.hfutexfutex.hpi.hfwloaderloader.hsysfs.huserhelper.hgactprob.hgarp.hgccversion.hgenericallocator.hbug.hclockeventsclockevents.hbroadcast.hcmosupdate.hcpucpu.hautoprobe.hvulnerabilities.hhweight.hiomap.hirqinjection.hmigration.hshowshow.hlevel.hisadma.hmsiirq.hnetutils.hpciiomap.hsmpidlethread.hstrncpyfromuser.hstrnlenuser.htimevsyscall.htracer.hgeneve.hgenwqegenwqe.hplatformerrorrecovery.hgfs2fsfs.hlockingdlm.hgigasetbase.hcapi.hm101.hm105.hglob.hgpiopca953x.hpcf857x.hsysfs.hviperboard.hgpiolibgpiolib.hfastpathlimit.hirqchip.hgraceperiod.hgrocells.hgve.hhangchecktimer.hhardenedusercopyusercopy.hfallback.hhardirqsswresend.hhardlockupdetector.hhasdma.hiomem.hioportmap.hhashkunittest.hhavearchauditsyscall.hjumplabel.hkgdb.hmmaprndbits.hcompatbits.hseccompfilter.hsoftdirty.htracehook.htransparenthugepage.hbootmeminfonode.hcontexttracking.hdebugkmemleak.hstackoverflow.hdynamicftraceftrace.hwithregs.hebpfjit.hefficientunalignedaccess.hfastgup.hftracemcountrecord.hfunctiongraphtracer.htracer.hgccplugins.hhardenedusercopyallocator.hhardlockupdetectorarch.hhwbreakpoint.hide.himakexec.hioremapprot.hirqtimeaccounting.hkernelgzip.hxz.hkprobeskprobes.honftrace.hkretprobes.hkvmeventfd.hirqbypass.hirqchip.hirqfd.hvcpuasyncioctl.hlddeadcodedataelimination.hlivepatch.hmemorypresent.hmemorylessnodes.hmodarchspecific.hnetdsa.hnminmi.hwatchdog.hoprofile.hoptprobes.hpcspkrplatform.hperfeventsevents.hnmi.hregs.huserstackdump.hregsandstackaccessapi.hreliablestacktrace.hrseq.hsetuppercpuarea.hstackprotector.hsyscalltracepoints.hvirtcpuaccountingaccounting.hgen.hhdlchdlc.hcisco.hfr.hppp.hraw.hhdmi.hheaderscheck.hhidhid.ha4tech.hacrux.happle.happleir.haureal.hbatterystrength.hbelkin.hcherry.hchicony.hcypress.hdragonrise.helan.helecom.hezkey.hgeneric.hgreenasia.hgyration.hholtek.hicade.hite.hjabra.hkensington.hkeytouch.hkye.hlcpower.hled.hlogitechlogitech.hdj.hhidpp.hmagicmouse.hmicrosoft.hmonterey.hmultitouch.hnti.hntrig.hortek.hpantherlord.hpetalynx.hpicolcdpicolcd.hbacklight.hcir.hfb.hlcd.hleds.hpid.hprimax.hprodikeys.hrmi.hroccat.hsaitek.hsamsung.hsmartjoyplus.hsony.hspeedlink.hsteelseries.hsunplus.hthingm.hthrustmaster.htivo.htopseed.htwinhan.huclogic.hwacom.hwaltop.hwiimote.hzeroplus.hzydacron.hhidraw.hhighrestimers.hhisax163.h1tr6.havma1pcmcia.hbkma4t.hdiehldiva.helsa.heuro.hfritzpcipnp.hgazel.hhfcsx.hhfc4s8s.hmaxcards.hni1.hniccy.hnokeypad.hllc.hsendcomplete.hs0box.hsctquadro.hsedlbauer.hst5481.hw6692.hhisttriggers.hhmmmirror.hhotplugcpu.hpcipci.hpowernv.hrparpa.hdlpar.hshpc.hhsaamdamd.hsvm.hhugetlbpagepage.hsizevariable.hhugetlbfs.hhvperfctrs.hhvcconsole.hdriver.hirq.hopal.hrtas.hhvcs.hhwconsole.hrandomrandom.hpowernv.hpseries.htimeriomem.htpm.hvirtio.hhwlattracer.hhwmonhwmon.hvid.hhwpoisoninject.hhwspinlock.hhysdnhysdn.hcapi.hhzhz.h100.hi2ci2c.halgobit.halgopca.hboardinfo.hchardev.hcompat.hdesignwarecore.hplatform.hdiolanu2c.hhelperauto.hhid.hmpc.hmuxmux.hmlxcpld.hnforce2.hopal.hparportparport.hlight.hpcaplatform.hsimtec.hsmbus.hstub.htinyusb.hviperboard.hi40ei40e.hdcb.hi40evf.hi6300esbwdt.hi8253lock.hiavf.hibmbsr.hibmveth.hibmvio.hibmvmc.hibmvnic.hiceice.hswitchdev.hicplusphy.hidlepagetracking.hidpf.hieee802154ieee802154.h6lowpan.hdrivers.hfakelb.hsocket.hifb.hifcvf.higbigb.hhwmon.higbvf.higc.hikheaders.hillegalpointervalue.himaima.happraiseappraise.hbootparam.hmodsig.harchpolicy.hdefaulthashhash.hsha256.htemplate.hkexec.hlsmrules.hmeasurepcridx.hreadpolicy.hsecureandortrustedboot.hsigtemplate.htrustedkeyring.hwritepolicy.hinetinet.hah.hdiagdiag.hdestroy.hespesp.hoffload.hespintcp.hipcomp.hmptcpdiag.hrawdiag.hsctpdiag.htcpdiag.htunnel.hudpdiag.hxfrmtunnel.hinet6ah.hespesp.hoffload.hespintcp.hipcomp.htunnel.hxfrmtunnel.hinfinibandinfiniband.haddrtranstrans.hconfigfs.hbnxtre.hcxgb4.hipoibipoib.hcm.hdebug.hirdma.hiser.hisert.hondemandpaging.hqedr.hsrp.hsrpt.huseraccess.hmad.hmem.hvirtdma.hinitenvarglimit.hinitramfssource.hinlinereadunlockunlock.hirq.hspinunlockirq.hwriteunlockunlock.hirq.hinotifyuser.hinputinput.hatiremote2.hcm109.hevdev.hffmemless.hgpiorotaryencoder.hkeyboard.hkeyspanremote.hleds.hmisc.hmouse.hmousedevmousedev.hscreenx.hy.hpolldev.hpowermate.hpwmbeeper.hsparsekmap.htablet.htouchscreen.huinput.hyealink.hintegrityintegrity.hasymmetrickeys.haudit.hplatformkeyring.hsignature.htrustedkeyring.hintelxwayphy.hintervaltree.hioeventirq.hiommuapi.hdefaultdmastrict.hhelper.hiova.hsupport.hionic.hioschedbfq.hipadvancedrouter.hfibtriestats.hmroutemroute.hcommon.hmultipletables.hmulticast.hmultipletables.hnfarpmangle.harpfilter.harptables.hfilter.hiptables.hmangle.hmatchah.hecn.hrpfilter.httl.hnat.hraw.hsecurity.htargetecn.hmasquerade.hnetmap.hredirect.hreject.hsynproxy.httl.hpimsmv1.hv2.hrouteclassid.hmultipath.hverbose.hsctp.hsetset.hbitmapip.hipmac.hport.hhaship.hipmac.hipmark.hipport.hipportip.hipportnet.hmac.hnet.hnetiface.hnetnet.hnetport.hnetportnet.hlistset.hmax.hvsvs.hdh.hfo.hftp.hipv6.hlblc.hlblcr.hlc.hmhmh.htabindex.hnfct.hnq.hovf.hpesip.hprotoahah.hesp.hesp.hsctp.htcp.hudp.hrr.hsed.hshsh.htabbits.htabbits.hwlc.hwrr.hip6nffilter.hiptables.hmangle.hmatchah.heui64.hfrag.hhl.hipv6header.hmh.hopts.hrpfilter.hrt.hnat.hraw.hsecurity.htargetmasquerade.hnpt.hreject.hsynproxy.hipcns.hipmideviceinterface.hhandler.hpanicevent.hstring.hplatdata.hpowernv.hpoweroff.hsi.hssif.hwatchdog.hipppfilter.hipv6ipv6.hgre.hmip6.hmroutemroute.hmultipletables.hmultipletables.hndiscnodetype.hoptimisticdad.hpimsmv2.hrouteinfo.hrouterpref.hsitsit.h6rd.htunnel.hvti.hipvlan.hipvtap.hirgpiocir.htx.higuana.himonimon.hdecoder.hraw.hjvcdecoder.hmcekbddecoder.hmceusb.hnecdecoder.hpwmtx.hrc5decoder.hrc6decoder.hredrat3.hsanyodecoder.hserialserial.htransmitter.hsir.hsonydecoder.hstreamzap.httusbir.hirqallcpus.hbypassmanager.hdomain.hforcedthreading.hpoll.hwork.hirqchip.hisadmaapi.hiscsibootsysfs.htargettarget.hcxgb4.htcp.hisdnisdn.haudio.hcapicapi.hcapi20.hcapidrvcapidrv.hverbose.hmiddleware.hdiversion.hdrvavmb1b1pci.hb1pciv4.hc4.ht1pci.hgigaset.hhisax.hhdlc.hi4l.hmpp.hpppppp.hvj.httyfax.hisl29003.hisl29020.hiso9660fs.hixgbeixgbe.hdcb.hhwmon.hipsec.hixgbevfixgbevf.hipsec.hjbd2.hjoliet.hjumplabellabel.hfeaturechecks.hkallsymskallsyms.hall.hbaserelative.hkarmapartition.hkdbcontinuecatastrophic.hdefaultenable.hkeyboard.hkernelkernel.releasegzip.hstart.hkernfs.hkexeckexec.hcore.hfile.hkeyboardatkbd.hkeyskeys.hcompat.hkgdbkgdb.hhonourblocklist.hkdb.hserialconsole.htests.hkprobeevents.hkprobeskprobes.honftrace.hkretprobes.hksm.hkunitkunit.halltests.hdebugfs.hexampletest.htest.hkvmkvm.hbook3s6464.hhandler.hhv.hhandler.hhvpossible.hcompat.hguest.hvfio.hxics.hxive.hl2tpl2tp.hdebugfs.heth.hip.hv3.hlcdclassdevice.hplatform.hledtriggerphy.hledsblinkm.hbrightnesshwchanged.hclass.hlm3530.hlp3944.hlp5521.hlp5523.hlp5562.hlp55xxcommon.hlt3593.hmlxreg.hpowernv.htriggerbacklight.hcamera.hdefaulton.hdisk.hgpio.hheartbeat.honeshot.htimer.htransient.htriggers.hlibcrc32c.hlibfc.hlibfcoe.hlibfdt.hlibnvdimm.hlinearrangesranges.hkunittest.hliquidioliquidio.hvf.hlirc.hlistkunittest.hlivepatch.hllc.hloadppckeys.hlocalversion.hlockdebuggingsupport.hdownkernel.hspinonowner.htorturetest.hlockdlockd.hv4.hlockdepsupport.hlockupdetector.hlogbufshift.hcpumaxbufshift.hlogitechff.hlogologo.hlinuxclut224.hloopbacktarget.hlparcfg.hlsiet1011cphy.hlsmlsm.hmmapminaddr.hlwtunnellwtunnel.hbpf.hlxtphy.hlz4decompress.hlzocompress.hdecompress.hmacemumousebtn.hpartition.hmac802154.hmacintoshdrivers.hmacsec.hmacvlan.hmacvtap.hmagicsysrqsysrq.hdefaultenable.hserial.hmantiscore.hmarvell10gphy.hphy.hmaxrawdevs.hmaxlineargphy.hmdmd.hautodetect.hcluster.hfaulty.hlinear.hraid0.hraid1.hraid10.hraid456.hmdiomdio.hbcmunimac.hbitbang.hbus.hcavium.hdevice.hgpio.hhisifemac.hmsccmiim.hocteon.hthunder.hmediaalteraci.hanalogtvsupport.hattach.hcamerasupport.hcecsupport.hcommonoptions.hdigitaltvsupport.hpcisupport.hradiosupport.hsubdrvautoselect.hsupport.htunertuner.he4000.hfc0011.hfc0012.hfc0013.hfc2580.hit913x.hm88rs6000t.hmax2165.hmc44s803.hmt2060.hmt2063.hmt20xx.hmt2131.hmt2266.hmxl5005s.hmxl5007t.hqm1d1b0004.hqm1d1c0042.hqt1010.hr820t.hsi2157.hsimple.htda18212.htda18218.htda18250.htda18271.htda827x.htda8290.htda9887.htea5761.htea5767.htua9001.hxc2028.hxc4000.hxc5000.husbsupport.hmegaraidsas.hmemsoftdirty.hmembarrier.hmemcgmemcg.hkmem.hswap.hmemcpykunittest.hmemfdcreate.hmemoryballoon.hfailure.hhotplug.hhotremove.hisolation.hmemregion.hmemstickmemstick.hjmicron38x.hr592.hrealtekpci.htifmms.hmessagelogleveldefault.hmfdcore.hsm501sm501.hgpio.hviperboard.hvx855.hmhibusbus.hpcigeneric.hmicrelphy.hmicrochipphy.ht1phy.hmicrosemiphy.hmigration.hmii.hminixsubpartition.hmiscfilesystems.hrtsxrtsx.hpci.husb.hmisdnmisdn.havmfritz.hdsp.hhfcmulti.hhfcpci.hhfcusb.hinfineon.hipac.hisar.hl1oip.hnetjet.hspeedfax.hw6692.hmlx4core.hdebug.henen.hdcb.hinfiniband.hmlx5bridge.hclsact.hcorecore.henen.hdcb.hipoib.henarfs.hipsec.hrxnfc.htls.heswitch.hfpga.hinfiniband.hmpfs.hsfsf.hmanager.hswsteering.htcct.hsample.hvdpavdpa.hnet.hmlxfw.hmlxswcorecore.hhwmon.hthermal.hi2c.hminimal.hpci.hspectrumspectrum.hdcb.hswitchib.hswitchx2.hmmcmmc.hblockblock.hminors.hcb710.hcqhci.hrealtekpci.husb.hricohmmc.hsdhcisdhci.hpci.hpltfm.htifmsd.hushc.hviasdmmc.hvub300.hmmiowb.hmmummu.hgathermergevmas.hpagesize.hrcutablefree.htablefree.hnotifier.hmoduleforceload.hrelcrcs.hsigsig.hall.hformat.hhash.hkey.hsha256.hsrcversionall.hunload.hmodulesmodules.htreelookup.huseelfrela.hmodversions.hmouseappletouch.hbcm5974.hcyapa.helani2ci2c.hi2c.hsmbus.hps2ps2.halps.hbyd.hcypress.helantechelantech.hsmbus.hfocaltech.hlogips2pp.hsentelic.hsmbus.hsynapticssynaptics.hsmbus.htrackpoint.hserial.hsynapticsi2c.husb.hvsxxxaa.hmpic.hmpilib.hmplsmpls.hiptunnel.hrouting.hmprofilekernel.hmptcpmptcp.hipv6.hkunittest.hmqioscheddeadline.hkyber.hmrp.hmsdosfs.hpartition.hmsibitmapselftest.hmsproblock.hmtdmtd.hcfii1.hi2.hmapbankwidth1.h2.h4.hofparts.hpowernvflash.hubiubi.hbeblimit.hwlthreshold.hmultiuser.hmutexspinonowner.hmyri10ge.hngsm.hhdlc.hnamespaces.hnationalphy.hndblk.hbtt.hclaim.hpfn.hneeddmamapstate.hmultiplenodes.hpercpuembedfirstchunk.hsgdmalength.hnetnet.hactbpf.hcsum.hct.hgact.hmirred.hmpls.hnat.hpedit.hpolice.hsample.hsimp.hskbedit.hskbmod.htunnelkey.hvlan.hclscls.hact.hbasic.hbpf.hcgroup.hflow.hflower.hfw.hmatchall.hroute4.hrsvp.hrsvp6.htcindex.hu32.hcore.hdevlink.hdropmonitor.hegress.hematchematch.hcmp.hipset.hmeta.hnbyte.hstack.htext.hu32.hfailover.hfc.hflowlimit.hingress.hiptunnel.hipgreipgre.hbroadcast.hdemux.hipip.hipvti.hkeykey.hmigrate.hl3masterdev.hmplsgso.hns.hnsh.hpacketengine.hpktgen.hpollcontroller.hptpclassify.hredirect.hrxbusypoll.hschatm.hcbq.hcbs.hchoke.hcodel.hdefault.hdrr.hdsmark.hets.hfifo.hfqfq.hcodel.hgred.hhfsc.hhhf.hhtb.hingress.hmqpriomqprio.hlib.hmultiq.hnetem.hpie.hplug.hprio.hqfq.hred.hsfb.hsfq.htbf.hteql.hsched.hsockmsg.hswitchdev.htcskbext.hteamteam.hmodeactivebackup.hbroadcast.hloadbalance.hrandom.hroundrobin.hudptunnel.hvendoramazon.haquantia.hatheros.hbroadcom.hbrocade.hcavium.hchelsio.hcisco.hdec.hemulex.hgoogle.hibm.hintel.hmellanox.hmicrosoft.hmyri.hnetronome.hoki.hpensando.hqlogic.hrealtek.hrocker.hsolarflare.hvrf.hnetconsolenetconsole.hdynamic.hnetdevaddrlisttest.hnetdevices.hnetdevsim.hnetfilternetfilter.hadvanced.hconncount.hfamilyarp.hbridge.hingress.hnetlinknetlink.hgluect.hlog.hqueue.hsynproxy.hxtconnmark.hmark.hmatchaddrtype.hbpf.hcgroup.hcluster.hcomment.hconnbytes.hconnlabel.hconnlimit.hconnmark.hconntrack.hcpu.hdccp.hdevgroup.hdscp.hecn.hesp.hhashlimit.hhelper.hhl.hiprange.hipvs.hlength.hlimit.hmac.hmark.hmultiport.hosf.howner.hphysdev.hpkttype.hpolicy.hquota.hrateest.hrealm.hrecent.hsctp.hsocket.hstate.hstatistic.hstring.htcpmss.hu32.hnat.hset.htargetaudit.hchecksum.hclassify.hconnmark.hconnsecmark.hct.hdscp.hhl.hhmark.hidletimer.hlog.hmark.hnetmap.hnflog.hnfqueue.hnotrack.hrateest.hredirect.hsecmark.htcpmss.htcpoptstrip.htee.htproxy.htrace.hxtables.hnetlabel.hnetlinkdiag.hnetpoll.hnetworkfilesystems.hphytimestamping.hsecmark.hnetxennic.hnewleds.hnfconntrackconntrack.hamanda.hbroadcast.hevents.hftp.hh323.hirc.hlabels.hmark.hnetbiosns.hpptp.hprocfs.hsane.hsecmark.hsip.hsnmp.htftp.htimeout.htimestamp.hzones.hctnetlinknetlink.hhelper.htimeout.hprotodccp.hgre.hsctp.hudplite.hdefragipv4.hipv6.hdupipv4.hipv6.hnetdev.hflowtabletable.hinet.hipv4.hipv6.hlogarp.hipv4.hipv6.hsyslog.hnatnat.hamanda.hftp.hh323.hirc.hmasquerade.hneeded.hpptp.hredirect.hsip.hsnmpbasic.htftp.hosf.hrejectipv4.hipv6.hsocketipv4.hipv6.htablestables.harp.hbridge.hinet.hipv4.hipv6.hnetdev.hset.htproxyipv4.hipv6.hnfpnfp.happabmnic.hflower.hnfsaclsupport.hcommon.hdebug.hfs.hfscache.husekerneldns.hv3v3.hacl.hv4v4.h11.himplementationiddomain.h2.hsecuritylabel.hnfsdnfsd.hpnfs.hscsilayout.hv2acl.hv3v3.hacl.hv4v4.hsecuritylabel.hnftbridgereject.hcompat.hconnlimit.hcounter.hct.hdupipv4.hipv6.hnetdev.hfibfib.hinet.hipv4.hipv6.hnetdev.hflowoffload.hfwdnetdev.hhash.hlimit.hlog.hmasq.hnat.hnumgen.hobjref.hqueue.hquota.hredir.hrejectreject.hinet.hipv4.hipv6.hsocket.htproxy.hxfrm.hnlattr.hnlmon.hnlsnls.hascii.hcodepage1250.h1251.h437.h737.h775.h850.h852.h855.h857.h860.h861.h862.h863.h864.h865.h866.h869.h874.h932.h936.h949.h950.hdefault.hiso88591.h13.h14.h15.h2.h3.h4.h5.h6.h7.h8.h9.hkoi8r.hu.hmacceltic.hcenteuro.hcroatian.hcyrillic.hgaelic.hgreek.hiceland.hinuit.hroman.hromanian.hturkish.hutf8.hnmiipi.hnohzhz.hcommon.hfull.hnodesshift.hnonstatickernel.hnoptracer.hnouveaudebugdebug.hdefault.hnozomi.hnrcpus.hirqs.hnumanuma.hbalancingbalancing.hdefaultenabled.hkeepmeminfo.hnvdimmdax.hkeys.hpfn.hnvmecore.hfabrics.hfc.hmultipath.hrdma.htargettarget.hfc.hfcloop.hloop.hrdma.htcp.htcp.hverboseerrors.hnvmem.hobjagg.hocxlocxl.hbase.hofof.haddress.hdynamic.hearlyflattree.hflattree.hgpio.hiommu.hirq.hkobj.hmdio.hnet.hpmem.hreservedmem.hoidregistry.holdsigsuspend.hopalcore.hprd.hopenvswitchopenvswitch.hgeneve.hgre.hvxlan.hoprofile.hoptprobes.hosfpartition.hosnoisetracer.hoverlayfs.hpacketpacket.hdiag.hpadata.hpagecounter.hextension.hoffset.howner.hpoisoning.hpool.hreporting.hpaniconoopsoops.hvalue.htimeout.hpaprscm.hparman.hparportparport.h1284.hnotpc.hpc.hserial.hpartitionadvanced.hpataofplatform.hplatform.hpccard.hpcipci.hats.hdomains.hiov.hmsimsi.harchfallbacks.hpasid.hpri.hquirks.hstub.hsyscall.hpciedpc.hecrc.hpme.hpcieaerpcieaer.hinject.hpcieaspmpcieaspm.hdefault.hpcieportbus.hpcipcwatchdog.hpcspkrplatform.hperfevents.hpersistentkeyrings.hpgtablelevels.hphylib.hphysaddrt64bit.hphysicalstart.hpidns.hpkcs7messageparser.hpldmfw.hpluginhostcc.hpmpm.hdebug.hgenericdomainsdomains.hof.hsleep.hsleepsleep.hdebug.hsmpsmp.hnonzerocpu.hpmbus.hpmusysfs.hpnfsblock.hfilelayout.hflexfilelayout.hposixmqueuemqueue.hsysctl.htimers.hpowerresetreset.hgpio.hsupply.hpowernvcpufreq.hcpuidle.hoppanel.hppcppc.h64kpages.hbarriernospec.hbook3sbook3s.h64.hcoprobase.hdawr.hdenormalisation.hdisablewerror.hdoorbell.hdtcpuftrs.hemulatedstats.hfpu.hhavepmusupport.hi8259.hicphv.hnative.hicsrtas.hindirectpio.hmemkeys.hmmslices.hmsibitmap.hnative.hofboottrampoline.hp7nap.hperfctrs.hpowernv.hpseries.hradixmmummu.hdefault.hrtasrtas.hdaemon.hfilter.hscom.hsecureboot.hsecvarsysfs.hsmlpar.hsmpmuxedipi.hsplpar.hstdmmu.hsubpageprot.hsvm.htransactionalmem.hudbg16550.huv.hvas.hwatchdog.hxics.hxivexive.hnative.hspapr.hppc64ppc64.hbootwrapper.hsupportsmemoryfailure.hppdev.hpppppp.hasync.hbsdcomp.hdeflate.hfilter.hmppe.hmultilink.hsynctty.hpppoatm.hpppoe.hpppol2tp.hppspps.hclientgpio.hldisc.hparport.hpptp.hpreemptnotifiers.hvoluntary.hpreventfirmwarebuild.hprimenumbers.hprintquotawarning.hstackdepth.hprinter.hprintkprintk.hnmi.hsafelogbufshift.htime.hprobeevents.hprocchildren.hevents.hfs.hkcore.hpagemonitor.hpidcpuset.hsysctl.hvmcorevmcore.hdevicedump.hprofiling.hpsample.hpseriescpuidle.henergy.hpsipsi.hdefaultdisabled.hpstorepstore.hcompresscompress.hdefault.hdeflatecompresscompress.hdefault.hram.hptp1588clock.hpwmpwm.hsysfs.hqedqed.hfcoe.hiscsi.hll2.hooo.hrdma.hsriov.hqede.hqedf.hqedi.hqfmtv2.hqsemiphy.hquotaquota.hnetlinkinterface.htree.hquotactl.hr8169.hradioadapters.htea575x.hraidattrs.hraid6pqpq.hbenchmark.hrandomtrustcpu.hras.hrationalrational.hkunittest.hrawdriver.hrcatiremote.hcore.hdecoders.hdevices.hmap.hrcucpustalltimeout.hneedsegcblist.hnocbcpu.hstallcommon.hrdbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hrdmarxe.hsiw.hrealtekautopm.hphy.hreedsolomonsolomon.hdec8.henc8.hregmapregmap.hi2c.hrelay.hrelocatable.hrenesasphy.hresourcekunittest.hrfkillrfkill.hinput.hleds.hrfsaccel.hrhkabisizealignchecks.hrheldifferences.hringbufferbuffer.hallowswap.hbenchmark.hrmi42dsensor.hcore.hf03f03.hserio.hf11.hf12.hf30.hf34.hf3a.hf55.hi2c.hsmb.hrockchipphy.hrocker.hrpcsecgsskrb5.hrps.hrseq.hrtgroupsched.hmutexes.hrtaserrorlogging.hflash.hproc.hrtcclass.hdrvbq32k.hbq4802.hcmos.hds1286.hds1307.hds1374.hds1511.hds1553.hds1672.hds1742.hds2404.hds3232ds3232.hhwmon.hem3027.hfm3130.hgeneric.hisl12022.hisl1208.hm41t80m41t80.hwdt.hm48t35.hm48t59.hmax6900.hmsm6242.hopal.hpcf8523.hpcf8563.hpcf8583.hrp5c01.hrs5c372.hrv3029c2.hrx8025.hrx8581.hstk17ta8.hv3020.hx1205.hhctosyshctosys.hdevice.hi2candspi.hintfdev.hproc.hsysfs.hliblib.hkunittest.hmc146818lib.hnvmem.hruntimetestingmenu.hrwsemspinonowner.hsamples.hsataahciahci.hplatform.hhost.hmobilelpmpolicy.hpmp.hsbitmap.hscanlog.hscftorturetest.hschedautogroup.hdebug.hhrtick.hinfo.homitframepointer.hsmt.htracer.hschedstats.hscomdebugfs.hscsiscsi.haacraid.hbnx2iscsi.hbnx2xfcoe.hchelsiofcoe.hconstants.hcxgb4iscsi.hdebug.hdhdh.halua.hemc.hhpsw.hrdac.hdma.henclosure.hfcattrs.hhpsa.hibmvfcibmvfc.htrace.hibmvscsi.hibmvscsis.hipripr.hdump.htrace.hiscsiattrs.hlogging.hlowlevel.hlpfc.hmod.hmpi3mr.hmpt2sasmpt2sas.hmaxsge.hmpt3sasmpt3sas.hmaxsge.hnetlink.hprocfs.hqlafc.hiscsi.hsasata.hattrs.hhostsmp.hlibsas.hscanasync.hsmartpqi.hspiattrs.hsrpattrs.hvirtio.hsctpcookiehmacmd5.hsha1.hdefaultcookiehmacsha1.hsdiouart.hseccompseccomp.hfilter.hsectionmismatchwarnonly.hsecuritysecurity.hinfiniband.hnetworknetwork.hxfrm.hpath.hselinuxselinux.havcstats.hbootparam.hcheckreqprotvalue.hdevelop.hdisable.hsid2strcachesize.hsidtabhashbits.hwritablehooks.hyama.hsecurityfs.hselectmemorymodel.hsensorsad7414.had7418.hadm1021.hadm1025.hadm1026.hadm1029.hadm1031.hadm1275.hadm9240.hads1015.hads7828.hadt7410.hadt7411.hadt7462.hadt7470.hadt7475.hadt7x10.hamc6821.hapds990x.hasc7621.hatxp1.hbh1770.hds1621.hds620.hemc1403.hemc6w201.hf75375s.hg760a.hgl518sm.hgl520sm.hibmaem.hibmpex.hibmpowernv.hina209.hina2xx.hjc42.hlineage.hlis3i2c.hlis3lv02d.hlm25066.hlm63.hlm73.hlm75.hlm77.hlm78.hlm80.hlm83.hlm85.hlm87.hlm90.hlm92.hlm93.hlm95234.hlm95241.hlm95245.hltc2978.hltc4151.hltc4215.hltc4245.hltc4261.hmax16064.hmax16065.hmax1619.hmax1668.hmax197.hmax34440.hmax6639.hmax6642.hmax6650.hmax6697.hmax8688.hmcp3021.hntcthermistor.hpcf8591.hpmbus.hsht15.hsht21.hsis5595.hsmsc47m192.hthmc50.htmp102.htmp401.htmp421.htsl2550.hucd9000.hucd9200.hvia686a.hvt8231.hw83781d.hw83791d.hw83792d.hw83793.hw83795.hw83l785ts.hw83l786ng.hzl6100.hserial82508250.hconsole.hdma.hexar.hextended.hfsl.hmanyports.hnruarts.hpci.hrsa.hruntimeuarts.hshareirq.harcarc.hnrports.hcorecore.hconsole.hearlycon.hicom.hjsm.hnonstandard.hofplatform.huartliteuartlite.hnruarts.hserioserio.halteraps2.harcps2.hi8042.hlibps2.hraw.hserport.hsfcsfc.hmcdilogging.hmon.hmtd.hsienasiena.hmcdilogging.hmon.hmtd.hsriov.hsriov.hsgpool.hsgetmasksyscall.hsgipartition.hsglalloc.hshmem.hshufflepageallocator.hsignalfd.hsignature.hsimplegpio.hskbextensions.hslabfreelisthardened.hrandom.hslhc.hslipslip.hcompressed.hsmart.hslubslub.hcpupartial.hdebug.hkunittest.hsmp.hsmssdiodrv.hsianomdtv.hrc.husbdrv.hsmscphy.hsndsnd.hac97codec.hpowersavesave.hdefault.had1889.hali5451.haloop.hatiixpatiixp.hmodem.hau8810.hau8820.hau8830.hbcd2000.hbebob.hbt87x.hca0106.hcmipci.hcs46xxcs46xx.hnewdsp.hctlfastlookup.hctxfi.hdarla20.hdarla24.hdice.hdrivers.hdummy.hdynamicminors.hecho3g.hemu10k1emu10k1.hseq.hemu10k1x.hens1370.hens1371.hes1968es1968.hinput.hradio.hfireface.hfirewirefirewire.hdigi00x.hlib.hmotu.htascam.hfireworks.hgina20.hgina24.hhdapreallocsize.hhdsp.hhdspm.hhrtimer.hhwdep.hice1712.hice1724.hindigo.hindigodj.hindigodjx.hindigoio.hindigoiox.hintel8x0.hintel8x0m.hisight.hjackjack.hinputdev.hkorg1212.hlayla20.hlayla24.hlola.hlx6464es.hmaestro3maestro3.hinput.hmaxcards.hmia.hmixart.hmona.hmpu401mpu401.huart.hmtpav.hopl3liblib.hseq.hossemul.hoxfw.hoxygenoxygen.hlib.hpci.hpcmpcm.htimer.hpcxhr.hppc.hprocfs.hrawmidi.hrme32.hrme96.hrme9652.hseqdevice.hdummy.hhrtimerdefault.hmidimidi.hemul.hevent.hvirmidi.hsequencersequencer.hoss.hsynthemux.htimer.htrident.husbusb.h6fire.haudio.hcaiaqcaiaq.hinput.hhiface.hline6.hpod.hpodhd.htoneport.hua101.husx2y.hvariax.hverboseprocfs.hvia82xxvia82xx.hmodem.hvirmidi.hvirtio.hvirtuoso.hvmaster.hvxlib.hvx222.hsockcgroupdata.hvalidatexmit.hsoftwatchdog.hsoftlockupdetector.hsolarisx86partition.hsoundsound.hosscorecore.hpreclaim.hspaprtceiommu.hsparseirq.hsparsememsparsemem.hextreme.hmanual.hvmemmapvmemmap.henable.hsplitptlockcpus.hsquashfssquashfs.hdecompmultipercpu.hfiledirect.hfragmentcachesize.hlzo.hxattr.hxz.hzlib.hsrcu.hssbpossible.hstacktracer.hstackdepot.hstackinitkunittest.hstackprotectorstackprotector.hstrong.hstacktracestacktrace.hsupport.hstandalone.hste10xp.hstp.hstreamparser.hstrictdevmem.hstripasmsyms.hsunpartition.hsunrpcsunrpc.hbackchannel.hdebug.hgss.hxprtrdma.hsuspendsuspend.hfreezer.hswap.hswiotlb.hswphy.hsymbolicerrname.hsyncookies.hsyncfile.hsynclinksynclink.hgt.hsynclinkmp.hsyssupportshugetlbfs.hsysctlsysctl.hexceptiontrace.hkunittest.hsysfssysfs.hsyscall.hsystemblacklisthashlist.hkeyring.hdataverification.hextracertificatecertificate.hsize.htrustedkeyring.hkeys.hsysvipcsysvipc.hcompat.hsysctl.htabletserialwacom4.husbacecad.haiptek.hgtco.hkbtab.htap.htargetcore.htaskdelayacct.hioaccounting.hxacct.htasksrcugeneric.hrudercu.htracercu.htaskstats.htcgibmvtpm.htistis.hcore.hi2catmel.hinfineon.hnuvoton.hst33zp24st33zp24.hi2c.htpm.htcmfileio.hiblock.hpscsi.huser2.htcpcongadvanced.hbbr.hbic.hcubic.hdctcp.hhstcp.hhtcp.hhybla.hillinois.hlp.hnv.hscalable.hvegas.hveno.hwestwood.hyeah.hmd5sig.hteraneticsphy.htestbpf.hhmm.hkstrtox.hlistsort.hlivepatch.hvmalloc.htextsearchtextsearch.hbm.hfsm.hkmp.hthermalthermal.hdefaultgovstepwise.hemergencypoweroffdelayms.hgovfairshare.hstepwise.hhwmon.hof.hthreadshift.htickoneshot.htifm7xx1.hcore.htigon3tigon3.hhwmon.htimekunittest.htimerfd.htimerlattracer.htipctipc.hcrypto.hdiag.hmediaib.hudp.htlstls.hdevice.htmpfstmpfs.hposixacl.hxattr.htorturetest.htouchscreenelo.hproperties.hwacomi2c.hw8001.htraceclock.hirqflagssupport.htracepoints.htracermaxtrace.hsnapshot.htracingtracing.hmap.hsupport.htransparenthugepagehugepage.hmadvise.htreercu.hsrcu.htristate.conftrustedkeys.httpcieeprom.htty.htuntun.hvnetcrossle.htypectypec.hdpaltmode.hfusb302.hmuxpi3usb30532.hrt1711h.htcpci.htcpm.htps6598x.hucsi.hudffs.huhid.huiouio.haec.hcif.hpcigeneric.hpdrvgenirq.hsercos3.hunixunix.hdiag.hscm.hunix98ptys.hunixwaredisklabel.huprobeevents.huprobes.husbusb.hacm.hadutux.halim5632.han2720.hannouncenewdevices.happledisplay.harchhashcd.harmlinux.hatm.hautosuspenddelay.hbelkin.hcatc.hcommon.hcxacru.hdefaultpersist.hehcihcdhcd.hppcof.hpci.hroothubtt.httnewsched.hemi26.hemi62.hepson2888.hezusbfx2.hgl860.hgspcagspca.hbenq.hconex.hcpia1.hetoms.hfinepix.hjeilinj.hjl2005bcd.hkonica.hmars.hmr97310a.hnw80x.hov519.hov534ov534.h9.hpac207.hpac7302.hpac7311.hse401.hsn9c2028.hsn9c20x.hsonixb.hsonixj.hspca1528.hspca500.hspca501.hspca505.hspca506.hspca508.hspca561.hsq905.hsq905c.hsq930x.hstk014.hstv0680.hsunplus.ht613.htopro.htv8532.hvc032x.hvicam.hxirlinkcit.hzc3xx.hhid.hhiddev.hhsicusb3503.hhso.hhwahcd.hidmouse.hiowarrior.hipheth.hisightfw.hkaweth.hkc2190.hlan78xx.hlcd.hld.hledstriggerusbport.hlegotower.hm5602.hmdc800.hmicrotek.hmon.hnetax88179178a.hax8817x.hcdceem.hmbim.hncm.hsubsetsubset.henable.hcdcether.hch9200.hcx82310eth.hdm9601.hdrivers.hgl620a.hint51x1.hkalmia.hmcs7830.hnet1080.hplusb.hqmiwwan.hrndishost.hsmsc75xx.hsmsc95xx.hzaurus.hohcibigendiandesc.hmmio.hhcdhcd.hpci.hppcofof.hbe.hle.hlittleendian.hpci.hpegasus.hprinter.hpulse8cec.hpwcpwc.hinputevdev.hrainshadowcec.hroleswitch.hrtl8150.hrtl8152.hs2255.hserialserial.haircable.hark3116.hbelkin.hch341.hconsole.hcp210x.hcyberjack.hcypressm8.hdebug.hdigiacceleport.hedgeportedgeport.hti.hempeg.hf8153x.hftdisio.hgarmin.hgeneric.hipaq.hipw.hir.hiuu.hkeyspankeyspan.hpda.hklsi.hkobilsct.hmctu232.hmos7715parport.hmos7720.hmos7840.hmxuport.hnavman.homninet.hopticon.hoption.hoti6858.hpl2303.hqcaux.hqt2.hqualcomm.hsafesafe.hpadded.hsierrawireless.hspcp8x5.hssu100.hsymbol.hti.hupd78f0730.hvisor.hwhiteheat.hwwan.hxircom.hxsensmt.hsevseg.hsierranet.hsisusbvga.hspeedtouch.hstkwebcam.hstoragestorage.halauda.hcypressatacb.hdatafab.heneub6250.hfreecom.hjumpshot.hkarma.honetouch.hrealtek.hsddr09.hsddr55.husbat.hstv06xx.hsupport.htmc.huas.hueagleatm.huhcihcd.husbnet.huss720.hvideoclassclass.hinputevdev.hvl600.hwdm.hwusbwusb.hcbaf.hxhcihcd.hpci.hxusbatm.hzr364xx.husb4usb4.hnet.husbpcwatchdog.husepercpunumanodeid.huserns.huserfaultfd.hutsns.huvccommon.huwbuwb.hhwa.hi1480u.hwhci.hvdpavdpa.hsimsim.hblock.hnet.hveth.hvfatfs.hvfiovfio.hiommuspaprtce.hpcipci.hintx.hmmap.hnvlink2.hspapreeh.hvirqfd.hvgaarbarb.hmaxgpus.hconsole.hvgastate.hvhostvhost.hcrossendianlegacy.hiotlb.hmenu.hnet.hring.hvdpa.hvsock.hvideoau0828au0828.hv4l2.hbt848.hcs3308.hcs5345.hcs53l32a.hcx18cx18.halsa.hcx231xxcx231xx.halsa.hdvb.hrc.hcx2341x.hcx23885.hcx25840.hcx88cx88.halsa.hblackbird.hdvb.hmpeg.hdev.hem28xxem28xx.halsa.hdvb.hrc.hfbivtv.hhdpvr.hiri2c.hivtv.hm52790.hmsp3400.hnomodeset.hpvrusb2pvrusb2.hdvb.hsysfs.hsaa6588.hsaa6752hs.hsaa711x.hsaa7127.hsaa7134saa7134.halsa.hdvb.hrc.hsaa7146saa7146.hvv.hsaa7164.hsaa717x.htda7432.htm6000tm6000.halsa.hdvb.htuner.htvaudio.htveeprom.hupd64031a.hupd64083.husbvision.hv4l2.hvp27smpx.hwm8739.hwm8775.hvideobufdmasg.hgen.hvmalloc.hvideobuf2core.hdmasg.hdvb.hmemops.hv4l2.hvmalloc.hvirtcpuaccountingaccounting.hgen.hdrivers.hvirtiovirtio.hballoon.hblk.hconsole.hfs.hinput.hmenu.hnet.hpcipci.hlegacy.hlib.hvdpa.hvsocketsvsockets.hcommon.hvirtualization.hvitessephy.hvlan8021q8021q.hgvrp.hmvrp.hvmeventcounters.hvpvdpa.hvsocketsvsockets.hdiag.hloopback.hvsockmon.hvsx.hvtvt.hconsoleconsole.hsleep.hhwconsolebinding.hvxlan.hwan.hwantdevcoredump.hwatchdogwatchdog.hcore.hhandlebootenabled.hopentimeout.hrtas.hsysfs.hwdtpci.hx509certificateparser.hxarraymulti.hxdpsocketssockets.hdiag.hxfrmxfrm.halgo.hespintcp.hinterface.hipcomp.hmigrate.hoffload.hstatistics.hsubpolicy.huser.hxfsfs.hposixacl.hquota.hxilinxgmii2rgmii.hxmonxmon.hdefaultromode.hdisassembly.hxorblocks.hxps.hxzdecdec.harm.harmthumb.hbcj.hia64.hpowerpc.hsparc.hx86.hyentayenta.henetune.ho2.hricoh.hti.htoshiba.hzbud.hzisofs.hzlibdeflate.hinflate.hzonedevice.hdma.hdma32.hzpool.hzramzram.hwriteback.hzsmalloczsmalloc.hstat.hzswap.hcryptoacompress.haead.haes.hakcipher.halgapi.harc4.hauthenc.hb128ops.hblowfish.hcast5.hcast6.hcast_common.hcbc.hchacha20.hcryptd.hcrypto_wq.hctr.hdes.hdh.hdrbg.hecdh.hengine.hgcm.hgf128mul.hghash.hhash.hhash_info.hhmac.hif_alg.hinternalacompress.haead.hakcipher.hgeniv.hhash.hkpp.hrng.hrsa.hscompress.hsimd.hskcipher.hkpp.hmd5.hmorus1280_glue.hmorus640_glue.hmorus_common.hnull.hpadlock.hpcrypt.hpkcs7.hpoly1305.hpublic_key.hrng.hscatterwalk.hserpent.hsha.hsha1_base.hsha256_base.hsha3.hsha512_base.hskcipher.hsm3.hsm3_base.hsm4.hspeck.htwofish.hxts.hdrmdrm-backportREADME.txtlinuxmmu_notifier.hamd_asic_type.hbridgeanalogix_dp.hdw_hdmi.hdw_mipi_dsi.hmhl.hdisplaydrm_dp.hdrm_dp_aux_bus.hdrm_dp_dual_mode_helper.hdrm_dp_helper.hdrm_dp_mst_helper.hdrm_dsc.hdrm_dsc_helper.hdrm_hdcp.hdrm_hdcp_helper.hdrm_hdmi_helper.hdrm_scdc.hdrm_scdc_helper.hdrm_accel.hdrm_aperture.hdrm_atomic.hdrm_atomic_helper.hdrm_atomic_state_helper.hdrm_atomic_uapi.hdrm_audio_component.hdrm_auth.hdrm_blend.hdrm_bridge.hdrm_bridge_connector.hdrm_buddy.hdrm_cache.hdrm_client.hdrm_color_mgmt.hdrm_connector.hdrm_crtc.hdrm_crtc_helper.hdrm_damage_helper.hdrm_debugfs.hdrm_debugfs_crc.hdrm_device.hdrm_displayid.hdrm_drv.hdrm_edid.hdrm_encoder.hdrm_encoder_slave.hdrm_fb_dma_helper.hdrm_fb_helper.hdrm_fbdev_generic.hdrm_file.hdrm_fixed.hdrm_flip_work.hdrm_format_helper.hdrm_fourcc.hdrm_framebuffer.hdrm_gem.hdrm_gem_atomic_helper.hdrm_gem_dma_helper.hdrm_gem_framebuffer_helper.hdrm_gem_shmem_helper.hdrm_gem_ttm_helper.hdrm_gem_vram_helper.hdrm_ioctl.hdrm_kunit_helpers.hdrm_lease.hdrm_legacy.hdrm_managed.hdrm_mipi_dbi.hdrm_mipi_dsi.hdrm_mm.hdrm_mode_config.hdrm_mode_object.hdrm_modes.hdrm_modeset_helper.hdrm_modeset_helper_vtables.hdrm_modeset_lock.hdrm_module.hdrm_of.hdrm_panel.hdrm_pciids.hdrm_plane.hdrm_plane_helper.hdrm_prime.hdrm_print.hdrm_privacy_screen_consumer.hdrm_privacy_screen_driver.hdrm_privacy_screen_machine.hdrm_probe_helper.hdrm_property.hdrm_rect.hdrm_self_refresh_helper.hdrm_simple_kms_helper.hdrm_syncobj.hdrm_sysfs.hdrm_util.hdrm_utils.hdrm_vblank.hdrm_vblank_work.hdrm_vma_manager.hdrm_writeback.hgma_drm.hgpu_scheduler.hgud.hi2cch7006.hsil164.htda998x.hi915_component.hi915_drm.hi915_mei_hdcp_interface.hi915_pciids.hi915_pxp_tee_interface.hintel-gtt.hintel_lpe_audio.hspsc_queue.htask_barrier.httmttm_bo.httm_caching.httm_device.httm_execbuf_util.httm_kmap_iter.httm_placement.httm_pool.httm_range_manager.httm_resource.httm_tt.hdt-bindingsarmux500_pm_domains.hbusti-sysc.hclkti-dra7-atl.hclockactions,s900-cmu.halphascale,asm9260.ham3.ham4.haspeed-clock.hat91.hath79-clk.haxg-aoclkc.haxg-clkc.haxis,artpec6-clkctrl.hbcm-cygnus.hbcm-ns2.hbcm-nsp.hbcm-sr.hbcm21664.hbcm281xx.hbcm2835-aux.hbcm2835.hberlin2.hberlin2q.hboston-clock.hclps711x-clock.hcortina,gemini-clock.hdm814.hdm816.hdra7.hefm32-cmu.hexynos-audss-clk.hexynos3250.hexynos4.hexynos5250.hexynos5260-clk.hexynos5410.hexynos5420.hexynos5433.hexynos5440.hexynos7-clk.hgxbb-aoclkc.hgxbb-clkc.hhi3516cv300-clock.hhi3519-clock.hhi3620-clock.hhi3660-clock.hhi6220-clock.hhip04-clock.hhistb-clock.hhix5hd2-clock.himx1-clock.himx21-clock.himx27-clock.himx5-clock.himx6qdl-clock.himx6sl-clock.himx6sll-clock.himx6sx-clock.himx6ul-clock.himx7d-clock.hjz4740-cgu.hjz4770-cgu.hjz4780-cgu.hlpc18xx-ccu.hlpc18xx-cgu.hlpc32xx-clock.hlsi,axm5516-clks.hmarvell,mmp2.hmarvell,pxa168.hmarvell,pxa1928.hmarvell,pxa910.hmaxim,max77620.hmaxim,max77686.hmaxim,max77802.hmeson8b-clkc.hmicrochip,pic32-clock.hmpc512x-clock.hmt2701-clk.hmt2712-clk.hmt6797-clk.hmt7622-clk.hmt8135-clk.hmt8173-clk.hnuvoton,npcm7xx-clock.homap4.homap5.hoxsemi,ox810se.hoxsemi,ox820.hpistachio-clk.hpxa-clock.hqcom,gcc-apq8084.hqcom,gcc-ipq4019.hqcom,gcc-ipq806x.hqcom,gcc-ipq8074.hqcom,gcc-mdm9615.hqcom,gcc-msm8660.hqcom,gcc-msm8916.hqcom,gcc-msm8960.hqcom,gcc-msm8974.hqcom,gcc-msm8994.hqcom,gcc-msm8996.hqcom,gcc-msm8998.hqcom,gcc-sdm845.hqcom,lcc-ipq806x.hqcom,lcc-mdm9615.hqcom,lcc-msm8960.hqcom,mmcc-apq8084.hqcom,mmcc-msm8960.hqcom,mmcc-msm8974.hqcom,mmcc-msm8996.hqcom,rpmcc.hqcom,rpmh.hqcom,videocc-sdm845.hr7s72100-clock.hr8a73a4-clock.hr8a7740-clock.hr8a7743-cpg-mssr.hr8a7745-cpg-mssr.hr8a77470-cpg-mssr.hr8a7778-clock.hr8a7779-clock.hr8a7790-clock.hr8a7790-cpg-mssr.hr8a7791-clock.hr8a7791-cpg-mssr.hr8a7792-clock.hr8a7792-cpg-mssr.hr8a7793-clock.hr8a7793-cpg-mssr.hr8a7794-clock.hr8a7794-cpg-mssr.hr8a7795-cpg-mssr.hr8a7796-cpg-mssr.hr8a77965-cpg-mssr.hr8a77970-cpg-mssr.hr8a77980-cpg-mssr.hr8a77990-cpg-mssr.hr8a77995-cpg-mssr.hrenesas-cpg-mssr.hrk3036-cru.hrk3066a-cru.hrk3128-cru.hrk3188-cru-common.hrk3188-cru.hrk3228-cru.hrk3288-cru.hrk3328-cru.hrk3368-cru.hrk3399-cru.hrockchip,rk808.hrv1108-cru.hs3c2410.hs3c2412.hs3c2443.hs5pv210-audss.hs5pv210.hsamsung,s2mps11.hsamsung,s3c64xx-clock.hsh73a0-clock.hsprd,sc9860-clk.hste-ab8500.hstih407-clks.hstih410-clks.hstih416-clks.hstih418-clks.hstm32fx-clock.hstm32h7-clks.hstm32mp1-clks.hstratix10-clock.hsun4i-a10-ccu.hsun4i-a10-pll2.hsun50i-a64-ccu.hsun50i-h6-ccu.hsun50i-h6-r-ccu.hsun5i-ccu.hsun6i-a31-ccu.hsun7i-a20-ccu.hsun8i-a23-a33-ccu.hsun8i-a83t-ccu.hsun8i-de2.hsun8i-h3-ccu.hsun8i-r-ccu.hsun8i-r40-ccu.hsun8i-v3s-ccu.hsun9i-a80-ccu.hsun9i-a80-de.hsun9i-a80-usb.htegra114-car.htegra124-car-common.htegra124-car.htegra186-clock.htegra194-clock.htegra20-car.htegra210-car.htegra30-car.hvf610-clock.hzx296702-clock.hzx296718-clock.hdisplaytda998x.hdmaat91.haxi-dmac.hjz4780-dma.hnbpfaxi.hsun4i-a10.hgpioaspeed-gpio.hgpio.hmeson-axg-gpio.hmeson-gxbb-gpio.hmeson-gxl-gpio.hmeson8-gpio.hmeson8b-gpio.htegra-gpio.htegra186-gpio.htegra194-gpio.huniphier-gpio.hi2ci2c.hiioadcfsl-imx25-gcq.hadi,ad5592r.hqcom,spmi-vadc.hinputgpio-keys.hinput.hlinux-event-codes.hti-drv260x.hinterrupt-controllerarm-gic.hirq-st.hirq.hmips-gic.hmvebu-icu.hledscommon.hleds-netxbig.hleds-ns2.hleds-pca9532.hleds-pca955x.hmailboxtegra186-hsp.hmediac8sectpfe.homap3-isp.htda1997x.htvp5150.hxilinx-vip.hmemorymt2701-larb-port.hmt8173-larb-port.htegra114-mc.htegra124-mc.htegra186-mc.htegra20-mc.htegra210-mc.htegra30-mc.hmfdarizona.has3722.hatmel-flexcom.hdbx500-prcmu.hmax77620.hpalmas.hqcom-rpm.hst-lpc.hstm32f4-rcc.hstm32f7-rcc.hstm32h7-rcc.hmipslantiq_rcu_gphy.hmuxmux.hnetmicrochip-lan78xx.hmscc-phy-vsc8531.hqca-ar803x.hti-dp83867.hti-dp83869.hphyphy-pistachio-usb.hphy-qcom-qusb2.hphy.hpinctrlam33xx.ham43xx.hat91.hbcm2835.hbrcm,pinctrl-stingray.hdm814x.hdra.hhisi.hkeystone.hmt6397-pinfunc.hmt65xx.hmt7623-pinfunc.hnomadik.homap.hpinctrl-tegra-xusb.hpinctrl-tegra.hqcom,pmic-gpio.hqcom,pmic-mpp.hr7s72100-pinctrl.hrockchip.hsamsung.hstm32-pinfunc.hsun4i-a10.hpowerimx7-power.hmt2701-power.hmt2712-power.hmt6797-power.hmt7622-power.hmt7623a-power.hmt8173-power.howl-s500-powergate.howl-s700-powergate.hpx30-power.hr8a7743-sysc.hr8a7745-sysc.hr8a77470-sysc.hr8a7779-sysc.hr8a7790-sysc.hr8a7791-sysc.hr8a7792-sysc.hr8a7793-sysc.hr8a7794-sysc.hr8a7795-sysc.hr8a7796-sysc.hr8a77965-sysc.hr8a77970-sysc.hr8a77980-sysc.hr8a77990-sysc.hr8a77995-sysc.hraspberrypi-power.hrk3036-power.hrk3128-power.hrk3228-power.hrk3288-power.hrk3328-power.hrk3366-power.hrk3368-power.hrk3399-power.htegra186-powergate.htegra194-powergate.hpwmpwm.hregulatormaxim,max77802.hresetaltr,rst-mgr-a10.haltr,rst-mgr-a10sr.haltr,rst-mgr-s10.haltr,rst-mgr.hamlogic,meson-axg-reset.hamlogic,meson-gxbb-reset.hamlogic,meson8b-clkc-reset.hamlogic,meson8b-reset.haxg-aoclkc.hcortina,gemini-reset.hgxbb-aoclkc.hhisi,hi6220-resets.himx7-reset.hmt2701-resets.hmt7622-reset.hmt8135-resets.hmt8173-resets.hoxsemi,ox810se.hoxsemi,ox820.hpistachio-resets.hqcom,gcc-apq8084.hqcom,gcc-ipq806x.hqcom,gcc-mdm9615.hqcom,gcc-msm8660.hqcom,gcc-msm8916.hqcom,gcc-msm8960.hqcom,gcc-msm8974.hqcom,mmcc-apq8084.hqcom,mmcc-msm8960.hqcom,mmcc-msm8974.hsnps,hsdk-reset.hstih407-resets.hstih415-resets.hstih416-resets.hstm32mp1-resets.hsun4i-a10-ccu.hsun50i-a64-ccu.hsun50i-h6-ccu.hsun50i-h6-r-ccu.hsun5i-ccu.hsun6i-a31-ccu.hsun8i-a23-a33-ccu.hsun8i-a83t-ccu.hsun8i-de2.hsun8i-h3-ccu.hsun8i-r-ccu.hsun8i-r40-ccu.hsun8i-v3s-ccu.hsun9i-a80-ccu.hsun9i-a80-de.hsun9i-a80-usb.htegra124-car.htegra186-reset.htegra194-reset.htegra210-car.hti-syscon.hsocqcom,apr.hqcom,gsbi.hrockchip,boot-mode.hzte,pm_domains.hsoundadi,adau1977.hapq8016-lpass.haudio-jack-events.hcs35l32.hcs42l42.hfsl-imx-audmux.hqcom,q6afe.hqcom,q6asm.hrt5640.hrt5651.hsamsung-i2s.htas2552.htlv320aic31xx.hspmispmi.hthermallm90.htegra124-soctherm.htegra186-bpmp-thermal.hthermal.hthermal_exynos.husbpd.hgeneratedasm-offsets.hautoconf.hbounds.hcompile.htimeconst.huapilinuxversion.hutsrelease.hkeysasymmetric-parser.hasymmetric-subtype.hasymmetric-type.hbig_key-type.hceph-type.hdns_resolver-type.hencrypted-type.hkeyring-type.hrxrpc-type.hsystem_keyring.htrusted-type.htrusted_tpm.huser-type.hkunitassert.hresource.htest-bug.htest.htry-catch.hkvmarm_arch_timer.harm_hypercalls.harm_pmu.harm_psci.harm_vgic.hiodev.hlinux8250_pci.ha.out.hacct.hacpi.hacpi_apmt.hacpi_dma.hacpi_iort.hacpi_pmtmr.hadb.hadfs_fs.hadxl.haer.hagp_backend.hagpgart.hahci-remap.hahci_platform.haio.halarmtimer.haltera_jtaguart.haltera_uart.hambabus.hclcd-regs.hclcd.hkmi.hmmci.hpl022.hpl080.hpl08x.hpl093.hserial.hsp810.hamd-iommu.hamd-pstate.hanon_inodes.haperture.hapm-emulation.hapm_bios.happle-gmux.happle_bl.harch_topology.harm-cci.harm-smccc.harm_sdei.hascii85.hasn1.hasn1_ber_bytecode.hasn1_decoder.hassoc_array.hassoc_array_priv.hasync.hasync_tx.hata.hata_platform.hatalk.hath9k_platform.hatm.hatm_suni.hatm_tcp.hatmdev.hatmel-mci.hatmel-ssc.hatmel_pdc.hatmel_tc.hatomic.hattribute_container.haudit.haudit_arch.hauto_dev-ioctl.hauto_fs.hauxiliary_bus.hauxvec.haverage.havfvirtchnl.hb1pcmcia.hbacking-dev-defs.hbacking-dev.hbacklight.hbadblocks.hballoon_compaction.hbcd.hbch.hbcm47xx_nvram.hbcm47xx_sprom.hbcm47xx_wdt.hbcm963xx_nvram.hbcm963xx_tag.hbcmabcma.hbcma_driver_arm_c9.hbcma_driver_chipcommon.hbcma_driver_gmac_cmn.hbcma_driver_mips.hbcma_driver_pci.hbcma_driver_pcie2.hbcma_regs.hbcma_soc.hbinfmts.hbio.hbit_spinlock.hbitfield.hbitmap.hbitops.hbitrev.hbits.hblk-cgroup.hblk-mq-pci.hblk-mq-rdma.hblk-mq-virtio.hblk-mq.hblk-pm.hblk_types.hblkdev.hblkpg.hblktrace_api.hblockgroup_lock.hbma150.hbottom_half.hbpf-cgroup.hbpf-netns.hbpf.hbpf_lirc.hbpf_local_storage.hbpf_lsm.hbpf_trace.hbpf_types.hbpf_verifier.hbpfilter.hbpfptr.hbrcmphy.hbsearch.hbsg-lib.hbsg.hbtf.hbtf_ids.hbtree-128.hbtree-type.hbtree.hbtrfs.hbuffer_head.hbug.hbuild_bug.hbuildid.hbvec.hbyteorderbig_endian.hgeneric.hlittle_endian.hc2port.hcache.hcacheinfo.hcancore.hdevdev.hpeak_canfd.hled.hplatformcc770.hmcp251x.hrcar_can.hsja1000.hrx-offload.hskb.hcapability.hcb710.hcc_platform.hcciss_ioctl.hccp.hcdev.hcdrom.hcephauth.hbuffer.hceph_debug.hceph_features.hceph_frag.hceph_fs.hceph_hash.hcls_lock_client.hdebugfs.hdecode.hlibceph.hmdsmap.hmessenger.hmon_client.hmsgpool.hmsgr.hosd_client.hosdmap.hpagelist.hrados.hstring_table.hstriper.htypes.hcfag12864b.hcgroup-defs.hcgroup.hcgroup_rdma.hcgroup_subsys.hcirc_buf.hcleancache.hclkclk-provider.hclk.hat91_pmc.hclk-conf.hdavinci.hmmp.hmxs.hrenesas.hsunxi-ng.htegra.hti.hzynq.hclkdev.hclock_cooling.hclockchips.hclocksource.hcm4000_cs.hcma.hcmdline-parser.hcn_proc.hcnt32_to_63.hcoda.hcoda_psdev.hcompaction.hcompat.hcompat_time.hcompiler-clang.hcompiler-gcc.hcompiler-intel.hcompiler.hcompiler_attributes.hcompiler_types.hcompletion.hcomponent.hconcap.hconfigfs.hconnector.hconsole.hconsole_struct.hconsolemap.hconst.hcontainer.hcontainer_of.hcontext_tracking.hcontext_tracking_state.hcookie.hcordic.hcoredump.hcoresight-pmu.hcoresight-stm.hcoresight.hcount_zeros.hcounter.hcounter_enum.hcper.hcpu.hcpu_cooling.hcpu_pm.hcpu_rmap.hcpufeature.hcpufreq.hcpuhotplug.hcpuidle.hcpuidle_haltpoll.hcpumask.hcpuset.hcrash_core.hcrash_dump.hcrc-ccitt.hcrc-itu-t.hcrc-t10dif.hcrc16.hcrc32.hcrc32c.hcrc32poly.hcrc4.hcrc7.hcrc8.hcred.hcrushcrush.hhash.hmapper.hcrypto.hcryptohash.hcs5535.hctype.hcuda.hcxl_err.hcyclades.hdamon.hdavinci_emac.hdax.hdca.hdcache.hdccp.hdcookies.hdebug_locks.hdebugfs.hdebugobjects.hdecompressbunzip2.hgeneric.hinflate.hmm.hunlz4.hunlzma.hunlzo.hunxz.hdelay.hdelayacct.hdelayed_call.hdell-led.hdev_printk.hdevcoredump.hdevfreq-event.hdevfreq.hdevfreq_cooling.hdevice-mapper.hdevice.hdevice_cgroup.hdevm-helpers.hdevpts_fs.hdigsig.hdim.hdio.hdirent.hdlm.hdlm_plock.hdm-bufio.hdm-dirty-log.hdm-io.hdm-kcopyd.hdm-region-hash.hdm9000.hdmadma-buf.hdma-contiguous.hdma-direct.hdma-direction.hdma-fence-array.hdma-fence-chain.hdma-fence-unwrap.hdma-fence.hdma-iommu.hdma-map-ops.hdma-mapping.hdma-resv.hdw.hhsu.hidma64.hipu-dma.hmmp-pdma.hpxa-dma.hqcom_bam_dma.hsprd-dma.hxilinx_dma.hdmaengine.hdmapool.hdmar.hdmi.hdnotify.hdns_resolver.hdqblk_qtree.hdqblk_v1.hdqblk_v2.hdrbd.hdrbd_genl.hdrbd_genl_api.hdrbd_limits.hds2782_battery.hdsalan9303.hdtlk.hdw_apb_timer.hdynamic_debug.hdynamic_queue_limits.hearlycpio.hecryptfs.hedac.hedd.hedma.heeprom_93cx6.heeprom_93xx46.hefi-bgrt.hefi.hefs_vh.heisa.helevator.helf-fdpic.helf-randomize.helf.helfcore-compat.helfcore.helfnote.henclosure.henergy_model.herr.herrname.herrno.herror-injection.herrqueue.herrseq.hetherdevice.hethtool.hethtool_netlink.heventfd.heventpoll.hevm.hexport.hexportfs.hext2_fs.hextable.hextconextcon-provider.hextcon.hextcon-adc-jack.hf2fs_fs.hf75375s.hfalloc.hfanotify.hfault-inject.hfb.hfbcon.hfcdevice.hfcntl.hfd.hfddidevice.hfdtable.hfec.hfile.hfilter.hfips.hfirewire.hfirmwarefirmware-map.hfirmware.hcirruscs_dsp.hwmfw.hintelstratix10-smc.hstratix10-svc-client.hmesonmeson_sm.hfixp-arith.hflat.hflex_array.hflex_proportions.hfmc-sdb.hfmc.hfont.hfortify-string.hfpgaadi-axi-common.haltera-pr-ip-core.hfpga-bridge.hfpga-mgr.hfpga-region.hfreezer.hfrontswap.hfs.hfs_context.hfs_enet_pd.hfs_parser.hfs_pin.hfs_stack.hfs_struct.hfs_uart_pd.hfscache-cache.hfscache.hfscrypt.hfscrypt_notsupp.hfscrypt_supp.hfsi.hfslfsl-diu-fb.hbestcommata.hbestcomm.hbestcomm_priv.hfec.hgen_bd.hsram.hedac.hguts.hmc.hptp_qoriq.hfsl_devices.hfsl_hypervisor.hfsl_ifc.hfsldma.hfsnotify.hfsnotify_backend.hftrace.hftrace_irq.hfutex.hfwnode.hgameport.hgcd.hgenalloc.hgeneric-radix-tree.hgenetlink.hgenhd.hgenl_magic_func.hgenl_magic_struct.hgetcpu.hgfp.hglob.hgoldfish.hgpiogpio-pxa.hgpio.hconsumer.hdriver.hgpio-reg.hmachine.hgpio_keys.hhardirq.hhash.hhashtable.hhdlc.hhdlcdrv.hhdmi.hhid-debug.hhid-roccat.hhid-sensor-hub.hhid-sensor-ids.hhid.hhidden.hhiddev.hhidraw.hhighmem-internal.hhighmem.hhighuid.hhil.hhil_mlc.hhippidevice.hhmm.hhost1x.hhp_sdc.hhpet.hhrtimer.hhrtimer_defs.hhsihsi.hssi_protocol.hhtcpld.hhuge_mm.hhugetlb.hhugetlb_cgroup.hhugetlb_inline.hhw_breakpoint.hhw_random.hhwmon-sysfs.hhwmon-vid.hhwmon.hhwspinlock.hhyperv.hhypervisor.hi2c-algo-bit.hi2c-algo-pca.hi2c-algo-pcf.hi2c-dev.hi2c-mux.hi2c-pxa.hi2c-smbus.hi2c.hi8042.hi8253.hicmp.hicmpv6.hide.hidr.hieee80211.hieee802154.hif_arp.hif_bridge.hif_eql.hif_ether.hif_fddi.hif_frad.hif_link.hif_ltalk.hif_macvlan.hif_phonet.hif_pppol2tp.hif_pppox.hif_tap.hif_team.hif_tun.hif_tunnel.hif_vlan.higmp.hihex.hiioaccelkxcjk_1013.hadcad_sigma_delta.hstm32-dfsdm-adc.hbuffer-dma.hbuffer-dmaengine.hbuffer.hbuffer_impl.hcommoncros_ec_sensors_core.hssp_sensors.hst_sensors.hst_sensors_i2c.hst_sensors_spi.hconfigfs.hconsumer.hdacad5421.had5504.had5791.hmax517.hmcp4725.hdriver.hevents.hfrequencyad9523.hadf4350.hgyroitg3200.hhw-consumer.hiio.himuadis.hkfifo_buf.hmachine.hmagnetometerak8975.hsw_device.hsw_trigger.hsysfs.htimerstm32-lptim-trigger.hstm32-timer-trigger.htrigger.htrigger_consumer.htriggered_buffer.htriggered_event.htypes.hima.himx-media.hin.hin6.hindirect_call_wrapper.hinet.hinet_diag.hinetdevice.hinit.hinit_ohci1394_dma.hinit_task.hinitrd.hinotify.hinputinput-polldev.hinput.had714x.hadp5589.hadxl34x.has5011.hauo-pixcir-ts.hbu21013.hcma3000.hcy8ctmg110_pdata.hcyttsp.helan-i2c-ids.hgp2ap002a00f.hili210x.hkxtj9.hlm8333.hmatrix_keypad.hmt.hnavpoint.hsamsung-keypad.hsh_keysc.hsparse-keymap.htouchscreen.htps6507x-ts.hinstrumented.hintegrity.hintel-iommu.hintel-ish-client-if.hintel-pti.hintel_rapl.hintel_th.hinterrupt.hinterval_tree.hinterval_tree_generic.hio-64-nonatomic-hi-lo.hio-64-nonatomic-lo-hi.hio-mapping.hio-pgtable.hio.hioasid.hioc3.hioc4.hiocontext.hiomap.hiommu-helper.hiommu.hiopoll.hioport.hioprio.hiosys-map.hiova.hip.hipack.hipc.hipc_namespace.hipmi-fru.hipmi.hipmi_smi.hipv6.hipv6_route.hirq.hirq_cpustat.hirq_poll.hirq_sim.hirq_work.hirqbypass.hirqchipirqchip.harm-gic-common.harm-gic-v3.harm-gic-v4.harm-gic.harm-vgic-info.harm-vic.hchained_irq.hingenic.hirq-bcm2836.hirq-omap-intc.hirq-partition-percpu.hirq-sa11x0.hmmp.hmxs.hversatile-fpga.hxtensa-mx.hxtensa-pic.hirqdesc.hirqdomain.hirqflags.hirqhandler.hirqnr.hirqreturn.hisa.hisapnp.hiscsi_boot_sysfs.hiscsi_ibft.hisdnisdn.hcapilli.hcapiutil.hhdlc.hisdn_divertif.hisdn_ppp.hisdnif.hisicom.hism.hiversion.hjbd2.hjhash.hjiffies.hjournal-head.hjoystick.hjump_label.hjump_label_ratelimit.hjz4740-adc.hjz4780-nemc.hkallsyms.hkasan-checks.hkasan.hkbd_diacr.hkbd_kern.hkbuild.hkconfig.hkcore.hkcov.hkcsan-checks.hkcsan.hkdb.hkdebug.hkdev_t.hkern_levels.hkernel-page-flags.hkernel.hkernel_stat.hkernelcapi.hkernfs.hkexec.hkey-type.hkey.hkeyboard.hkfifo.hkgdb.hkhugepaged.hklist.hkmemleak.hkmod.hkmsg_dump.hkobj_map.hkobject.hkobject_ns.hkprobes.hkref.hks0108.hks8842.hks8851_mll.hksm.hkstrtox.hkthread.hktime.hkvm_dirty_ring.hkvm_host.hkvm_irqfd.hkvm_para.hkvm_types.hl2tp.hlapb.hlatencytop.hlcd.hlcm.hled-class-flash.hled-lm3530.hleds-bd2802.hleds-lp3944.hleds-lp3952.hleds-pca9532.hleds-regulator.hleds-tca6507.hleds.hleds_pwm.hlibata.hlibfdt.hlibfdt_env.hlibgcc.hlibnvdimm.hlibps2.hlicense.hlightnvm.hlimits.hlinear_range.hlinkage.hlinkmode.hlinux_logo.hlis3lv02d.hlist.hlist_bl.hlist_lru.hlist_nulls.hlist_sort.hlivepatch.hllc.hllist.hlocal_lock.hlocal_lock_internal.hlockdbind.hdebug.hlockd.hnlm.hshare.hxdr.hxdr4.hlockdep.hlockdep_types.hlockref.hlog2.hlogic_pio.hlp.hlru_cache.hlsm_audit.hlsm_hook_defs.hlsm_hooks.hlz4.hlzo.hmISDNdsp.hmISDNhw.hmISDNif.hmailboxbrcm-message.hmailbox_client.hmailbox_controller.hmaple.hmarvell_phy.hmath.hmath64.hmax17040_battery.hmbcache.hmbus.hmc146818rtc.hmc6821.hmcb.hmdev.hmdio-bitbang.hmdio-gpio.hmdio-mux.hmdio.hmei_aux.hmei_cl_bus.hmem_encrypt.hmemblock.hmemcontrol.hmemfd.hmemory.hmemory_hotplug.hmempolicy.hmempool.hmemregion.hmemremap.hmemstick.hmfd88pm80x.h88pm860x.haat2870.hab3100.habx500abx500.hab8500-bm.hab8500-codec.hab8500-gpadc.hab8500-sysctrl.hab8500.hux500_chargalg.hac100.hadp5520.haltera-a10sr.harizonacore.hpdata.hregisters.has3711.has3722.hasic3.hatmel-hlcdc.haxp20x.hbcm590xx.hbd9571mwv.hcore.hcros_ec.hcros_ec_commands.hcros_ec_lpc_mec.hcros_ec_lpc_reg.hda8xx-cfgchip.hda903x.hda9052da9052.hpdata.hreg.hda9055core.hpdata.hreg.hda9062core.hregisters.hda9063core.hpdata.hregisters.hda9150core.hregisters.hdavinci_voicecodec.hdb8500-prcmu.hdbx500-prcmu.hdln2.hdm355evm_msp.hds1wm.hezx-pcap.hhi6421-pmic.hhi655x-pmic.hhtc-pasic3.himx25-tsadc.hintel_msic.hintel_soc_pmic.hintel_soc_pmic_bxtwc.hipaq-micro.hjanz.hkempld.hlm3533.hlochnagar.hlochnagar1_regs.hlochnagar2_regs.hlp3943.hlp873x.hlp87565.hlp8788-isink.hlp8788.hlpc_ich.hmax14577-private.hmax14577.hmax77620.hmax77686-private.hmax77686.hmax77693-common.hmax77693-private.hmax77693.hmax77843-private.hmax8907.hmax8925.hmax8997-private.hmax8997.hmax8998-private.hmax8998.hmc13783.hmc13892.hmc13xxx.hmcp.hmenelaus.hmotorola-cpcap.hmt6323core.hregisters.hmt6397core.hregisters.hmxs-lradc.hpalmas.hpcf50633adc.hbacklight.hcore.hgpio.hmbc.hpmic.hqcom_rpm.hrave-sp.hrc5t583.hrdc321x.hretu.hrk808.hrn5t618.hrt5033-private.hrt5033.hsamsungcore.hirq.hrtc.hs2mpa01.hs2mps11.hs2mps13.hs2mps14.hs2mps15.hs2mpu02.hs5m8763.hs5m8767.hsi476x-core.hsi476x-platform.hsi476x-reports.hsky81452.hsmsc.hsta2x11-mfd.hstm32-lptimer.hstm32-timers.hstmpe.hstw481x.hsun4i-gpadc.hsysconsyscon.hatmel-matrix.hatmel-mc.hatmel-smc.hatmel-st.hclps711x.himx6q-iomuxc-gpr.himx7-iomuxc-gpr.ht7l66xb.htc3589x.htc6387xb.htc6393xb.hti-lmu-register.hti-lmu.hti_am335x_tscadc.htmio.htps6105x.htps65010.htps6507x.htps65086.htps65090.htps65217.htps65218.htps6586x.htps65910.htps65912.htps68470.htps80031.htwl.htwl4030-audio.htwl6040.hucb1x00.hviperboard.hwl1273-core.hwm831xauxadc.hcore.hgpio.hirq.hotp.hpdata.hpmu.hregulator.hstatus.hwatchdog.hwm8350audio.hcomparator.hcore.hgpio.hpmic.hrtc.hsupply.hwdt.hwm8400-audio.hwm8400-private.hwm8400.hwm8994core.hgpio.hpdata.hregisters.hwm97xx.hmhi.hmhi_ep.hmic_bus.hmicrel_phy.hmicrochipphy.hmigrate.hmigrate_mode.hmii.hmii_timestamper.hmin_heap.hminmax.hmisc_cgroup.hmiscdevice.hmlx4cmd.hcq.hdevice.hdoorbell.hdriver.hqp.hsrq.hmlx5cq.hdevice.hdoorbell.hdriver.heq.heswitch.hfs.hfs_helpers.hmlx5_ifc.hmlx5_ifc_fpga.hmlx5_ifc_vdpa.hmpfs.hport.hqp.hrsc_dump.htransobj.hvport.hmm-arch-hooks.hmm.hmm_inline.hmm_types.hmm_types_task.hmman.hmmap_lock.hmmccard.hcore.hhost.hmmc.hpm.hsd.hsdhci-pci-data.hsdio.hsdio_func.hsdio_ids.hsh_mmcif.hslot-gpio.hmmdebug.hmmiotrace.hmmu_context.hmmu_notifier.hmmzone.hmnt_namespace.hmod_devicetable.hmodule.hmodule_signature.hmoduleloader.hmoduleparam.hmount.hmpage.hmpi.hmpls.hmpls_iptunnel.hmroute.hmroute6.hmroute_base.hmsdos_fs.hmsdos_partition.hmsg.hmsi.hmtdbbm.hblktrans.hcfi.hcfi_endian.hconcat.hdoc2000.hflashchip.hftl.hgen_probe.hinftl.hlatch-addr-flash.hlpc32xx_mlc.hlpc32xx_slc.hmap.hmtd.hmtdram.hnand-gpio.hnand.hnand_bch.hnand_ecc.hndfc.hnftl.honenand.honenand_regs.hpartitions.hpfow.hphysmap.hpismo.hplat-ram.hqinfo.hrawnand.hsh_flctl.hsharpsl.hspear_smi.hspi-nor.hsuper.hubi.hxip.hmutex.hmuxconsumer.hdriver.hmv643xx.hmv643xx_eth.hmv643xx_i2c.hmvebu-pmsu.hmxm-wmi.hn_r3964.hnamei.hnd.hnetnet.hinteli40e_client.hiidc.hnetdev_features.hnetdevice.hnetfilternetfilter.hipsetip_set.hip_set_bitmap.hip_set_comment.hip_set_counter.hip_set_getport.hip_set_hash.hip_set_list.hip_set_skbinfo.hip_set_timeout.hpfxlen.hnf_conntrack_amanda.hnf_conntrack_common.hnf_conntrack_dccp.hnf_conntrack_ftp.hnf_conntrack_h323.hnf_conntrack_h323_asn1.hnf_conntrack_h323_types.hnf_conntrack_irc.hnf_conntrack_pptp.hnf_conntrack_proto_gre.hnf_conntrack_sane.hnf_conntrack_sctp.hnf_conntrack_sip.hnf_conntrack_snmp.hnf_conntrack_tcp.hnf_conntrack_tftp.hnf_conntrack_zones_common.hnf_osf.hnfnetlink.hnfnetlink_acct.hx_tables.hxt_hashlimit.hxt_physdev.hnetfilter_arparp_tables.hnetfilter_bridgenetfilter_bridge.hebt_802_3.hebtables.hnetfilter_defs.hnetfilter_ingress.hnetfilter_ipv4netfilter_ipv4.hip_tables.hnetfilter_ipv6netfilter_ipv6.hip6_tables.hnetlink.hnetpoll.hnfs.hnfs3.hnfs4.hnfs_fs.hnfs_fs_i.hnfs_fs_sb.hnfs_iostat.hnfs_page.hnfs_xdr.hnfsacl.hnitro_enclaves.hnl802154.hnls.hnmi.hnode.hnodemask.hnospec.hnotifier.hns_common.hnsc_gpio.hnsproxy.hntb.hntb_transport.hnubus.hnuma.hnvme-fc-driver.hnvme-fc.hnvme-rdma.hnvme-tcp.hnvme.hnvmem-consumer.hnvmem-provider.hnvram.hobjagg.hobjtool.hof.hof_address.hof_clk.hof_device.hof_dma.hof_fdt.hof_gpio.hof_graph.hof_iommu.hof_irq.hof_mdio.hof_net.hof_pci.hof_pdt.hof_platform.hof_reserved_mem.hoid_registry.holpc-ec.homap-dma.homap-dmaengine.homap-gpmc.homap-iommu.homap-mailbox.homapfb.honce.hoom.hopenvswitch.hoprofile.hosq_lock.hoverflow.hpadata.hpage-flags-layout.hpage-flags.hpage-isolation.hpage_counter.hpage_ext.hpage_idle.hpage_owner.hpage_ref.hpage_reporting.hpageblock-flags.hpagemap.hpagevec.hpagewalk.hparman.hparport.hparport_pc.hparser.hpata_arasan_cf_data.hpatchkey.hpath.hpch_dma.hpci-acpi.hpci-ats.hpci-dma-compat.hpci-ecam.hpci-ep-cfs.hpci-epc.hpci-epf.hpci-p2pdma.hpci.hpci_hotplug.hpci_ids.hpcspcs-xpcs.hpda_power.hpe.hpercpu-defs.hpercpu-refcount.hpercpu-rwsem.hpercpu.hpercpu_counter.hperfarm_pmu.hperf_event.hperf_regs.hpersonality.hpfn.hpfn_t.hphonet.hphyphy.homap_control_phy.homap_usb.hphy-qcom-ufs.hphy-sun4i-usb.hphy.htegraxusb.hulpi_phy.hphy_fixed.hphy_led_triggers.hphylink.hpid.hpid_namespace.hpim.hpinctrlconsumer.hdevinfo.hmachine.hpinconf-generic.hpinconf.hpinctrl-state.hpinctrl.hpinmux.hpipe_fs_i.hpkeys.hpktcdvd.hpl320-ipc.hplatform_dataad5449.had5755.had5761.had7266.had7291.had7298.had7303.had7791.had7793.had7879.had7887.hadau17x1.hadp5588.hadp8860.hadp8870.hads1015.hads7828.hapds990x.harm-ux500-pm.hasoc-imx-ssi.hasoc-kirkwood.hasoc-mx27vis.hasoc-palm27x.hasoc-s3c.hasoc-s3c24xx_simtec.hasoc-ti-mcbsp.hasoc-ux500-msp.hat24.hat91_adc.hata-pxa.hata-samsung_cf.hatmel.hb53.hbcmgenet.hbd6107.hbh1770glc.hbrcmfmac.hbrcmnand.hbt-nokia-h4p.hclk-da8xx-cfgchip.hclk-davinci-pll.hclk-fch.hclk-integrator.hclk-u300.hcpuidle-exynos.hcrypto-atmel.hcrypto-ux500.hcyttsp4.hdavinci_asp.hdb8500_thermal.hdma-atmel.hdma-coh901318.hdma-dw.hdma-ep93xx.hdma-hsu.hdma-imx-sdma.hdma-imx.hdma-mmp_tdma.hdma-mv_xor.hdma-s3c24xx.hdma-ste-dma40.hdmtimer-omap.hds620.hdwc3-omap.hedma.hefm32-spi.hefm32-uart.hehci-sh.helm.hemif_plat.heth-netx.hfsa9480.hg762.hgpio-ath79.hgpio-davinci.hgpio-dwapb.hgpio-htc-egpio.hgpio-omap.hgpio-ts5500.hgpio_backlight.hgpmc-omap.hhsmmc-omap.hhwmon-s3c.hi2c-cbus-gpio.hi2c-davinci.hi2c-gpio.hi2c-imx.hi2c-mux-gpio.hi2c-mux-reg.hi2c-ocores.hi2c-omap.hi2c-pca-platform.hi2c-pxa.hi2c-s3c2410.hi2c-xiic.hina2xx.hintel-mid_wdt.hintel-spi.hinvensense_mpu6050.hiommu-omap.hirda-pxaficp.hirda-sa11x0.hisl9305.hitco_wdt.hkeyboard-pxa930_rotary.hkeyboard-spear.hkeypad-ep93xx.hkeypad-nomadik-ske.hkeypad-omap.hkeypad-pxa27x.hkeypad-w90p910.hkeyscan-davinci.hlcd-mipid.hleds-kirkwood-netxbig.hleds-kirkwood-ns2.hleds-lm355x.hleds-lm3642.hleds-lp55xx.hleds-omap.hleds-pca963x.hleds-s3c24xx.hlm3630a_bl.hlm3639_bl.hlm8323.hlp855x.hlp8727.hlp8755.hltc4245.hlv5207lp.hmacb.hmax197.hmax3421-hcd.hmax6639.hmax6697.hmax732x.hmcs.hmdio-bcm-unimac.hmdio-gpio.hmediacamera-mx2.hcamera-mx3.hcamera-pxa.hcoda.hmmp-camera.homap1_camera.homap4iss.hs5p_hdmi.hsi4713.hsii9234.hsoc_camera_platform.htimb_radio.htimb_video.hmfd-mcp-sa11x0.hmicrochip-ksz.hmlxcpld.hmlxreg.hmmc-davinci.hmmc-esdhc-imx.hmmc-mxcmmc.hmmc-omap.hmmc-pxamci.hmmc-s3cmci.hmmc-sdhci-s3c.hmmp_audio.hmmp_dma.hmouse-pxa930_trkball.hmtd-davinci-aemif.hmtd-davinci.hmtd-mxc_nand.hmtd-nand-omap2.hmtd-nand-pxa3xx.hmtd-nand-s3c2410.hmtd-orion_nand.hmv88e6xxx.hmv_usb.hnet-cw1200.hnfcmrvl.hntc_thermistor.hnxp-nci.homap-twl4030.homap-wd-timer.homap1_bl.homapdss.hpca953x.hpca954x.hpcf857x.hpcmcia-pxa2xx_viper.hphy-da8xx-usb.hpinctrl-single.hpixcir_i2c_ts.hpm33xx.hpwm_omap_dmtimer.hpxa2xx_udc.hpxa_sdhci.hregulator-haptic.hremoteproc-omap.hrtc-ds2404.hrtc-v3020.hs3c-hsotg.hs3c-hsudc.hsa11x0-serial.hsc18is602.hsdhci-pic32.hserial-imx.hserial-omap.hserial-sccnxp.hshmob_drm.hsht3x.hshtc1.hsi5351.hsimplefb.hsky81452-backlight.hspi-clps711x.hspi-davinci.hspi-ep93xx.hspi-imx.hspi-mt65xx.hspi-nuc900.hspi-omap2-mcspi.hspi-s3c64xx.hssm2518.hst33zp24.hst_sensors_pdata.hsyscon.htc35876x.htda9950.hti-aemif.hti-sysc.htouchscreen-s3c2410.htsc2007.htsl2563.htsl2772.huio_dmem_genirq.huio_pruss.husb-davinci.husb-ehci-mxc.husb-ehci-orion.husb-musb-ux500.husb-mx2.husb-ohci-pxa27x.husb-ohci-s3c2410.husb-omap.husb-omap1.husb-pxa3xx-ulpi.husb-s3c2410_udc.husb3503.hux500_wdt.hvideo-clcd-versatile.hvideo-ep93xx.hvideo-imxfb.hvideo-mx3fb.hvideo-nuc900fb.hvideo-pxafb.hvideo_s3c.hvoltage-omap.hwiznet.hwkup_m3.hx86apple.hclk-lpss.hclk-pmc-atom.hpmc_atom.hsoc.hzforce_ts.hplatform_device.hplatform_profile.hpldmfw.hplist.hpm-trace.hpm.hpm2301_charger.hpm_clock.hpm_domain.hpm_opp.hpm_qos.hpm_runtime.hpm_wakeirq.hpm_wakeup.hpmbus.hpmu.hpnfs_osd_xdr.hpnp.hpoison.hpoll.hposix-clock.hposix-timers.hposix_acl.hposix_acl_xattr.hpowerab8500.hbq2415x_charger.hbq24190_charger.hbq24735-charger.hbq27xxx_battery.hcharger-manager.hgeneric-adc-battery.hgpio-charger.hisp1704_charger.hjz4740-battery.hmax17042_battery.hmax8903_charger.hsbs-battery.hsmartreflex.hsmb347-charger.htwl4030_madc_battery.hpower_supply.hpowercap.hppp-comp.hppp_channel.hppp_defs.hpps-gpio.hpps_kernel.hpr.hprandom.hpreempt.hprefetch.hprime_numbers.hprintk.hprmt.hproc_fs.hproc_ns.hprocessor.hprofile.hprojid.hproperty.hpsci.hpseudo_fs.hpsi.hpsi_types.hpsp-platform-access.hpsp-sev.hpsp-tee.hpsp.hpstore.hpstore_ram.hpti.hptp_classify.hptp_clock_kernel.hptr_ring.hptrace.hpurgatory.hpvclock_gtod.hpwm.hpwm_backlight.hpxa168_eth.hpxa2xx_ssp.hqcom-geni-se.hqcom_scm.hqedcommon_hsi.heth_common.hfcoe_common.hiscsi_common.hiwarp_common.hnvmetcp_common.hqed_chain.hqed_eth_if.hqed_fcoe_if.hqed_if.hqed_iov_if.hqed_iscsi_if.hqed_ll2_if.hqed_nvmetcp_if.hqed_rdma_if.hqede_rdma.hrdma_common.hroce_common.hstorage_common.htcp_common.hqnx6_fs.hquicklist.hquota.hquotaops.hradix-tree.hraiddetect.hmd_u.hpq.hxor.hraid_class.hramfs.hrandom.hrange.hras.hratelimit.hratelimit_types.hrational.hrbtree.hrbtree_augmented.hrbtree_latch.hrbtree_types.hrcu_node_tree.hrcu_segcblist.hrcu_sync.hrculist.hrculist_bl.hrculist_nulls.hrcupdate.hrcupdate_trace.hrcupdate_wait.hrcutiny.hrcutree.hrcuwait.hreboot-mode.hreboot.hreciprocal_div.hrefcount.hregmap.hregset.hregulatorab8500.hact8865.harizona-ldo1.harizona-micsupp.hconsumer.hda9211.hdb8500-prcmu.hdriver.hfan53555.hfixed.hgpio-regulator.hlp3971.hlp3972.hlp872x.hmachine.hmax1586.hmax8649.hmax8660.hmax8952.hmax8973-regulator.hmt6311.hmt6323-regulator.hmt6380-regulator.hmt6397-regulator.hof_regulator.hpfuze100.htps51632-regulator.htps62360.htps6507x.huserspace-consumer.hrelay.hremoteprocremoteproc.hqcom_rproc.hst_slim_rproc.hresctrl.hreservation.hresetreset-controller.hreset.hbcm63xx_pmb.hresource.hresource_ext.hrestart_block.hrfkill.hrh_flags.hrh_kabi.hrh_kabi_attributes.hrh_kabi_aux.hrh_kabi_memcg.hrh_tasklist_lock.hrhashtable-types.hrhashtable.hring_buffer.hrio.hrio_drv.hrio_ids.hrio_regs.hrmap.hrmi.hrndis.hrodata_test.hroot_dev.hrpmsgrpmsg.hqcom_glink.hqcom_smd.hrslib.hrtcrtc.hds1286.hds1307.hds1685.hm48t59.hsirfsoc_rtciobrg.hrtmutex.hrtnetlink.hrtsx_common.hrtsx_pci.hrtsx_usb.hrwbase_rt.hrwlock.hrwlock_api_smp.hrwlock_rt.hrwlock_types.hrwsem.hs3c_adc_battery.hsa11x0-dma.hsbitmap.hscatterlist.hscc.hschedsched.hautogroup.hclock.hcoredump.hcpufreq.hcputime.hdeadline.hdebug.hhotplug.hidle.hinit.hisolation.hjobctl.hloadavg.hmm.hnohz.hnuma_balancing.hprio.hrt.hsignal.hsmt.hstat.hsysctl.htask.htask_stack.htopology.htypes.huser.hwake_q.hxacct.hsched_clock.hscif.hscmi_protocol.hscpi_protocol.hscreen_info.hscs.hsctp.hscx200.hscx200_gpio.hsdb.hsdla.hseccomp.hsecurebits.hsecurity.hsed-opal.hseg6.hseg6_genl.hseg6_hmac.hseg6_iptunnel.hseg6_local.hselection.hsem.hsemaphore.hseq_buf.hseq_file.hseq_file_net.hseqlock.hseqno-fence.hserdev.hserial.hserial_8250.hserial_bcm63xx.hserial_core.hserial_max3100.hserial_pnx8xxx.hserial_s3c.hserial_sci.hserio.hset_memory.hsfi.hsfi_acpi.hsfp.hsh_clk.hsh_dma.hsh_eth.hsh_intc.hsh_timer.hshdma-base.hshm.hshmem_fs.hshrinker.hsignal.hsignal_types.hsignalfd.hsiox.hsiphash.hsirfsoc_dma.hsizes.hskb_array.hskbuff.hskmsg.hslab.hslab_def.hslimbus.hslub_def.hsm501-regs.hsm501.hsmc911x.hsmc91x.hsmp.hsmp_types.hsmpboot.hsmsc911x.hsmscphy.hsocactionsowl-sps.hbrcmstbbrcmstb.hdovepmu.hmediatekinfracfg.hmtk_wed.hqcomapr.hmdt_loader.hqmi.hsmd-rpm.hsmem.hsmem_state.hwcnss_ctrl.hrenesasrcar-rst.hrcar-sysc.hsamsungexynos-pmu.hexynos-regs-pmu.hsunxisunxi_sram.htiknav_dma.hknav_qmss.hti-msgmgr.hti_sci_protocol.hsock_diag.hsocket.hsockptr.hsonet.hsony-laptop.hsonypi.hsort.hsound.hsoundcard.hsoundwiresdw.hsdw_amd.hsdw_intel.hsdw_registers.hsdw_type.hspiad7877.hadi_spi3.hads7846.hat73c213.hat86rf230.hcc2520.hcorgi_lcd.hds1305.heeprom.hflash.hifx_modem.hl4f00242t03.hlibertas_spi.hlms283gf05.hmax7301.hmc33880.hmcp23s08.hmmc_spi.hmxs-spi.hpxa2xx_spi.hrspi.hs3c24xx.hsh_hspi.hsh_msiof.hspi-fsl-dspi.hspi-mem.hspi.hspi_bitbang.hspi_gpio.hspi_oc_tiny.htdo24m.htle62x0.hxilinx_spi.hspinlock.hspinlock_api_smp.hspinlock_api_up.hspinlock_rt.hspinlock_types.hspinlock_types_raw.hspinlock_types_up.hspinlock_up.hsplice.hspmi.hsram.hsrcu.hsrcutiny.hsrcutree.hssbssb.hssb_driver_chipcommon.hssb_driver_extif.hssb_driver_gige.hssb_driver_mips.hssb_driver_pci.hssb_embedded.hssb_regs.hssbi.hstackdepot.hstackprotector.hstacktrace.hstart_kernel.hstat.hstatfs.hstatic_call.hstatic_call_types.hstatic_key.hstddef.hstm.hstmmac.hstmp3xxx_rtc_wdt.hstmp_device.hstop_machine.hstring.hstring_helpers.hstringhash.hstringify.hsudmac.hsungem_phy.hsunrpcaddr.hauth.hauth_gss.hbc_xprt.hcache.hclnt.hdebug.hgss_api.hgss_asn1.hgss_err.hgss_krb5.hgss_krb5_enctypes.hmetrics.hmsg_prot.hrpc_pipe_fs.hrpc_rdma.hrpc_rdma_cid.hsched.hstats.hsvc.hsvc_rdma.hsvc_rdma_pcl.hsvc_xprt.hsvcauth.hsvcauth_gss.hsvcsock.htimer.htypes.hxdr.hxprt.hxprtmultipath.hxprtrdma.hxprtsock.hsunserialcore.hsunxi-rsb.hsuperhyway.hsuspend.hsvga.hsw842.hswab.hswait.hswap.hswap_cgroup.hswap_slots.hswapfile.hswapops.hswiotlb.hswitchtec.hsxgbe_platform.hsync_core.hsync_file.hsynclink.hsys.hsys_soc.hsyscalls.hsyscore_ops.hsysctl.hsysfs.hsyslog.hsysrq.hsysv_fs.ht10-pi.htask_io_accounting.htask_io_accounting_ops.htask_work.htaskstats_kern.htboot.htc.htca6416_keypad.htcp.htee_drv.htextsearch.htextsearch_fsm.htfrc.hthermal.hthinkpad_acpi.hthread_info.hthreads.hthunderbolt.hti-emif-sram.hti_wilink_st.htick.htifm.htimb_dma.htimb_gpio.htime.htime32.htime64.htime_namespace.htimecounter.htimekeeper_internal.htimekeeping.htimekeeping32.htimer.htimerfd.htimeriomem-rng.htimerqueue.htimex.htnum.htopology.htorture.htoshiba.htpm.htpm_command.htpm_eventlog.htrace.htrace_clock.htrace_events.htrace_seq.htracefs.htracehook.htracepoint-defs.htracepoint.htransport_class.hts-nbus.htsacct_kern.htty.htty_driver.htty_flip.htty_ldisc.htypecheck.htypes.hu64_stats_sync.huaccess.hucb1400.hucs2_string.hudp.huidgid.huio.huio_driver.hulpidriver.hinterface.hregs.humh.hunalignedaccess_ok.hbe_byteshift.hbe_memmove.hbe_struct.hgeneric.hle_byteshift.hle_memmove.hle_struct.hmemmove.hpacked_struct.hunits.huprobes.husbusb.hassociation.haudio-v2.haudio-v3.haudio.hc67x00.hccid.hcdc-wdm.hcdc.hcdc_ncm.hch9.hchipidea.hcomposite.hehci-dbgp.hehci_def.hehci_pdriver.hezusb.hfunctionfs.hg_hid.hgadget.hgadget_configfs.hgpio_vbus.hhcd.hinput.hiowarrior.hirda.hisp116x.hisp1301.hisp1362.hm66592.hmusb-ux500.hmusb.hnet2280.hof.hohci_pdriver.hotg-fsm.hotg.hpd.hpd_ado.hpd_bdo.hpd_ext_sdb.hpd_vdo.hphy.hphy_companion.hquirks.hr8152.hr8a66597.hrenesas_usbhs.hrndis_host.hrole.hserial.hsl811.hstorage.htcpci.htcpm.htegra_usb_phy.htypec.htypec_altmode.htypec_dp.htypec_mux.htypec_retimer.htypec_tbt.huas.hulpi.husb338x.husb_phy_generic.husbnet.huvc.hwusb-wa.hwusb.hxhci-dbgp.husb_usual.husbdevice_fs.huser-return-notifier.huser.huser_namespace.huserfaultfd_k.husermode_driver.hutil_macros.huts.hutsname.huuid.huwbuwb.hdebug-cmd.hspec.humc.hwhci.hvbox_utils.hvdpa.hverification.hvermagic.hvexpress.hvfio.hvfs.hvga_switcheroo.hvgaarb.hvhost_iotlb.hvia-core.hvia-gpio.hvia.hvia_i2c.hvideodev2.hvirtio.hvirtio_byteorder.hvirtio_caif.hvirtio_config.hvirtio_console.hvirtio_dma_buf.hvirtio_net.hvirtio_pci_modern.hvirtio_ring.hvirtio_vsock.hvisorbus.hvlynq.hvm_event_item.hvmacache.hvmalloc.hvme.hvmpressure.hvmstat.hvmw_vmci_api.hvmw_vmci_defs.hvringh.hvt.hvt_buffer.hvt_kern.hvtime.hw1-gpio.hw1.hwait.hwait_bit.hwanrouter.hwatchdog.hwimaxdebug.hwin_minmax.hwireless.hwkup_m3_ipc.hwl12xx.hwm97xx.hwmi.hworkqueue.hwriteback.hww_mutex.hxarray.hxattr.hxxhash.hxz.hyam.hz2_battery.hzbud.hzconf.hzlib.hzorro.hzpool.hzsmalloc.hzstd.hzutil.hmath-emudouble.hop-1.hop-2.hop-4.hop-8.hop-common.hquad.hsingle.hsoft-fp.hmediacec-notifier.hcec-pin.hcec.hdavinciccdc_types.hdm355_ccdc.hdm644x_ccdc.hisif.hvpbe.hvpbe_display.hvpbe_osd.hvpbe_types.hvpbe_venc.hvpfe_capture.hvpfe_types.hvpif_types.hvpss.hdemux.hdmxdev.hdrv-intfcx2341x.hcx25840.hexynos-fimc.hmsp3400.hrenesas-ceu.hs3c_camif.hsaa7146.hsaa7146_vv.hsh_mobile_ceu.hsh_vou.hsi476x.hsoc_mediabus.htea575x.hdvb-usb-ids.hdvb_ca_en50221.hdvb_demux.hdvb_frontend.hdvb_math.hdvb_net.hdvb_ringbuffer.hdvb_vb2.hdvbdev.hframe_vector.hi2cad9389b.hadp1653.hadv7183.hadv7343.hadv7393.hadv7511.hadv7604.hadv7842.hak881x.hbt819.hcs5345.hcs53l32a.hir-kbd-i2c.hlm3560.hlm3646.hm52790.hm5mols.hmt9m032.hmt9p031.hmt9t001.hmt9t112.hmt9v011.hmt9v022.hmt9v032.hnoon010pc30.hov2659.hov7670.hov772x.hov9650.hrj54n1cb0c.hs5c73m3.hs5k4ecgx.hs5k6aa.hsaa6588.hsaa7115.hsaa7127.hsmiapp.hsr030pc30.htc358743.htda1997x.hths7303.htvaudio.htvp514x.htvp7002.htw9910.huda1342.hupd64031a.hupd64083.hwm8775.himx.hmedia-device.hmedia-devnode.hmedia-entity.hrc-core.hrc-map.hrcar-fcp.hsoc_camera.htpgv4l2-tpg.htuner-types.htuner.htveeprom.hv4l2-async.hv4l2-clk.hv4l2-common.hv4l2-ctrls.hv4l2-dev.hv4l2-device.hv4l2-dv-timings.hv4l2-event.hv4l2-fh.hv4l2-flash-led-class.hv4l2-fwnode.hv4l2-image-sizes.hv4l2-ioctl.hv4l2-mc.hv4l2-mediabus.hv4l2-mem2mem.hv4l2-rect.hv4l2-subdev.hvideobuf-core.hvideobuf-dma-contig.hvideobuf-dma-sg.hvideobuf-vmalloc.hvideobuf2-core.hvideobuf2-dma-contig.hvideobuf2-dma-sg.hvideobuf2-dvb.hvideobuf2-memops.hvideobuf2-v4l2.hvideobuf2-vmalloc.hvsp1.hmemoryjedec_ddr.hmiscaltera.hcharlcd.hcxl-base.hcxl.hcxllib.hocxl-config.hocxl.hnet6lowpan.h9p9p.hclient.htransport.hSpace.hact_api.haddrconf.haf_ieee802154.haf_rxrpc.haf_unix.haf_vsock.hah.harp.hatmclip.hax25.hax88796.hbareudp.hbluetoothbluetooth.hhci.hhci_core.hhci_mon.hhci_sock.hhci_sync.hl2cap.hmgmt.hrfcomm.hsco.hbond_3ad.hbond_alb.hbond_options.hbonding.hbpf_sk_storage.hbusy_poll.hcaifcaif_dev.hcaif_device.hcaif_hsi.hcaif_layer.hcaif_spi.hcfcnfg.hcfctrl.hcffrml.hcfmuxl.hcfpkt.hcfserl.hcfsrvl.hcalipso.hcfg80211-wext.hcfg80211.hcfg802154.hchecksum.hcipso_ipv4.hcls_cgroup.hcodel.hcodel_impl.hcodel_qdisc.hcompat.hdatalink.hdcbevent.hdcbnl.hdevlink.hdn.hdn_dev.hdn_fib.hdn_neigh.hdn_nsp.hdn_route.hdrop_monitor.hdropreason-core.hdsa.hdsfield.hdst.hdst_cache.hdst_metadata.hdst_ops.herspan.hesp.hespintcp.hethoc.hfailover.hfib_notifier.hfib_rules.hfirewire.hflow.hflow_dissector.hflow_offload.hfou.hfq.hfq_impl.hgarp.hgen_stats.hgenetlink.hgeneve.hgre.hgro_cells.hgtp.hgue.hhwbm.hicmp.hieee80211_radiotap.hieee802154_netdev.hif_inet6.hife.hila.hinet6_connection_sock.hinet6_hashtables.hinet_common.hinet_connection_sock.hinet_ecn.hinet_frag.hinet_hashtables.hinet_sock.hinet_timewait_sock.hinetpeer.hip.hip6_checksum.hip6_fib.hip6_route.hip6_tunnel.hip_fib.hip_tunnels.hip_vs.hipcomp.hipconfig.hipv6.hipv6_frag.hipv6_stubs.hipx.hiucvaf_iucv.hiucv.hiw_handler.hkcm.hl3mdev.hlag.hlapb.hlib80211.hllc.hllc_c_ac.hllc_c_ev.hllc_c_st.hllc_conn.hllc_if.hllc_pdu.hllc_s_ac.hllc_s_ev.hllc_s_st.hllc_sap.hlwtunnel.hmac80211.hmac802154.hmanagdma.hhw_channel.hmana.hmana_auxiliary.hshm_channel.hmip6.hmld.hmpls.hmpls_iptunnel.hmptcp.hmrp.hncsi.hndisc.hneighbour.hnet_failover.hnet_namespace.hnet_ratelimit.hnetdev_queues.hnetevent.hnetfilterbr_netfilter.hipv4nf_conntrack_ipv4.hnf_defrag_ipv4.hnf_dup_ipv4.hnf_nat_masquerade.hnf_reject.hipv6nf_conntrack_icmpv6.hnf_conntrack_ipv6.hnf_defrag_ipv6.hnf_dup_ipv6.hnf_nat_masquerade.hnf_reject.hnf_conntrack.hnf_conntrack_acct.hnf_conntrack_core.hnf_conntrack_count.hnf_conntrack_ecache.hnf_conntrack_expect.hnf_conntrack_extend.hnf_conntrack_helper.hnf_conntrack_l4proto.hnf_conntrack_labels.hnf_conntrack_seqadj.hnf_conntrack_synproxy.hnf_conntrack_timeout.hnf_conntrack_timestamp.hnf_conntrack_tuple.hnf_conntrack_zones.hnf_dup_netdev.hnf_flow_table.hnf_log.hnf_nat.hnf_nat_helper.hnf_nat_redirect.hnf_queue.hnf_reject.hnf_socket.hnf_tables.hnf_tables_core.hnf_tables_ipv4.hnf_tables_ipv6.hnf_tables_offload.hnf_tproxy.hnfnetlink_log.hnft_fib.hnft_reject.hxt_rateest.hnetlabel.hnetlink.hnetnsbpf.hcan.hconntrack.hcore.hdccp.hgeneric.hhash.hieee802154_6lowpan.hipv4.hipv6.hmib.hmpls.hnetfilter.hnftables.hpacket.hsctp.hsmc.hunix.hx_tables.hxdp.hxfrm.hnetprio_cgroup.hnetrom.hnexthop.hnfcdigital.hhci.hllc.hnci.hnci_core.hnfc.hnl802154.hnsh.hp8022.hpage_pool.hphonetgprs.hpep.hphonet.hpn_dev.hpie.hping.hpkt_cls.hpkt_sched.hpptp.hprotocol.hpsample.hpsnap.hraw.hrawv6.hred.hregulatory.hrequest_sock.hrose.hroute.hrsi_91x.hrtnetlink.hsch_generic.hscm.hsctpauth.hchecksum.hcommand.hconstants.hsctp.hsm.hstream_interleave.hstream_sched.hstructs.htsnmap.hulpevent.hulpqueue.hsecure_seq.hseg6.hseg6_hmac.hseg6_local.hslhc_vj.hsmc.hsnmp.hsock.hsock_reuseport.hstp.hstrparser.hswitchdev.htc_acttc_bpf.htc_connmark.htc_csum.htc_ct.htc_ctinfo.htc_defact.htc_gact.htc_gate.htc_ife.htc_ipt.htc_mirred.htc_mpls.htc_nat.htc_pedit.htc_police.htc_sample.htc_skbedit.htc_skbmod.htc_tunnel_key.htc_vlan.htc_wrapper.htcp.htcp_states.htimewait_sock.htipc.htls.htls_toe.htransp_v6.htso.htun_proto.hudp.hudp_tunnel.hudplite.hvsock_addr.hvxlan.hwext.hwimax.hx25.hx25device.hxdp.hxdp_priv.hxdp_sock.hxdp_sock_drv.hxfrm.hxsk_buff_pool.hpcmciaciscode.hcisreg.hcistpl.hdevice_id.hds.hss.hrasras_event.hrdmaib.hib_addr.hib_cache.hib_cm.hib_hdrs.hib_mad.hib_marshall.hib_pack.hib_pma.hib_sa.hib_smi.hib_sysfs.hib_umem.hib_umem_odp.hib_verbs.hiba.hibta_vol1_c12.hiw_cm.hiw_portmap.hlag.hmr_pool.hopa_addr.hopa_port_info.hopa_smi.hopa_vnic.hrdma_cm.hrdma_cm_ib.hrdma_counter.hrdma_netlink.hrdma_vt.hrdmavt_cq.hrdmavt_mr.hrdmavt_qp.hrestrack.hrw.hsignature.htid_rdma_defs.huverbs_ioctl.huverbs_named_ioctl.huverbs_std_types.huverbs_types.hscsifcfc_encaps.hfc_fc2.hfc_fcoe.hfc_fcp.hfc_fip.hfc_ms.hfc_frame.hfcoe_sysfs.hiscsi_if.hiscsi_proto.hiser.hlibfc.hlibfcoe.hlibiscsi.hlibiscsi_tcp.hlibsas.hosd_attributes.hosd_protocol.hosd_sec.hosd_sense.hosd_types.hsas.hsas_ata.hscsi.hscsi_bsg_iscsi.hscsi_cmnd.hscsi_common.hscsi_dbg.hscsi_device.hscsi_devinfo.hscsi_dh.hscsi_driver.hscsi_eh.hscsi_host.hscsi_ioctl.hscsi_proto.hscsi_request.hscsi_tcq.hscsi_transport.hscsi_transport_fc.hscsi_transport_iscsi.hscsi_transport_sas.hscsi_transport_spi.hscsi_transport_srp.hscsicam.hsg.hsrp.hviosrp.hsocarcaux.hmcip.htimers.hat91at91sam9_ddrsdr.hat91sam9_sdramc.hatmel-secumod.hatmel-sfr.hbcm2835raspberrypi-firmware.hbrcmstbcommon.hfslbman.hqeimmap_qe.hqe.hqe_ic.hqe_tdm.hucc.hucc_fast.hucc_slow.hqman.himxcpuidle.hrevision.htimer.hmediateksmi.hnpscommon.hmtm.hqcomcmd-db.hrockchiprockchip_sip.hsa1100pwer.htegraahb.hbpmp-abi.hbpmp.hcommon.hcpuidle.hemc.hflowctrl.hfuse.hivc.hmc.hpm.hpmc.hsoundac97codec.hcompat.hcontroller.hregs.hac97_codec.haci.hacp63_chip_offset_byte.had1816a.had1843.hadau1373.haess.hak4113.hak4114.hak4117.hak4531_codec.hak4641.hak4xxx-adda.halc5623.hasequencer.hasound.hasoundef.hcompress_driver.hcontrol.hcore.hcs35l33.hcs35l34.hcs35l35.hcs35l36.hcs35l41.hcs4231-regs.hcs4271.hcs42l42.hcs42l52.hcs42l56.hcs42l73.hcs8403.hcs8427.hda7213.hda7218.hda7219-aad.hda7219.hda9055.hdesignware_i2s.hdmaengine_pcm.hemu10k1.hemu10k1_synth.hemu8000.hemu8000_reg.hemux_legacy.hemux_synth.hes1688.hgraph_card.hgus.hhda-mlink.hhda_chmap.hhda_codec.hhda_component.hhda_hwdep.hhda_i915.hhda_register.hhda_regmap.hhda_verbs.hhdaudio.hhdaudio_ext.hhdmi-codec.hhwdep.hi2c.hinfo.hinitval.hintel-dsp-config.hintel-nhlt.hjack.hl3.hmax9768.hmax98088.hmax98090.hmax98095.hmemalloc.hminors.hmixer_oss.hmpu401.homap-hdmi-audio.hopl3.hopl4.hpcm-indirect.hpcm.hpcm_drm_eld.hpcm_iec958.hpcm_oss.hpcm_params.hpt2258.hpxa2xx-lib.hrawmidi.hrt1015.hrt286.hrt298.hrt5514.hrt5659.hrt5660.hrt5663.hrt5665.hrt5668.hrt5682.hrt5682s.hs3c24xx_uda134x.hsb.hsb16_csp.hsdw.hseq_device.hseq_kernel.hseq_midi_emul.hseq_midi_event.hseq_oss.hseq_oss_legacy.hseq_virmidi.hsh_dac_audio.hsh_fsi.hsimple_card.hsimple_card_utils.hsnd_wavefront.hsoc-acpi-intel-match.hsoc-acpi.hsoc-card.hsoc-component.hsoc-dai.hsoc-dapm.hsoc-dpcm.hsoc-jack.hsoc-link.hsoc-topology.hsoc.hsofsof.hchannel_map.hcontrol.hdai-amd.hdai-imx.hdai-intel.hdai-mediatek.hdai.hdebug.hext_manifest.hext_manifest4.hheader.hinfo.hipc4header.hpm.hstream.htopology.htrace.hxtensa.hsoundfont.hspear_dma.hspear_spdif.hsta32x.hsta350.htas2552-plat.htas5086.htea6330t.htimer.htlv.htlv320aic32x4.htlv320dac33-plat.htpa6130a2-plat.huda134x.huda1380.hutil_mem.hvx_core.hwavefront.hwm0010.hwm1250-ev1.hwm2000.hwm2200.hwm5100.hwm8903.hwm8904.hwm8955.hwm8960.hwm8962.hwm8993.hwm8996.hwm9081.hwm9090.hwss.htargetiscsiiscsi_target_core.hiscsi_target_stat.hiscsi_transport.htarget_core_backend.htarget_core_base.htarget_core_fabric.htracebpf_probe.hdefine_trace.hevents9p.hafs.halarmtimer.hasoc.havc.hbcache.hblock.hbpf_test_run.hbridge.hbtrfs.hcachefiles.hcgroup.hclk.hcma.hcompaction.hcontext_tracking.hcpuhp.hdamon.hdevlink.hdma_fence.hext4.hf2fs.hfib.hfib6.hfilelock.hfilemap.hfs.hfs_dax.hfscache.hfsi.hfsi_master_gpio.hgpio.hhost1x.hhuge_memory.hi2c.hib_mad.hib_umad.hinitcall.hintel-sst.hintel_ifs.hintel_iommu.hintel_ish.hio_uring.hiocost.hiommu.hipi.hirq.hirq_matrix.hiscsi.hjbd2.hkmem.hkvm.hkyber.hlibata.hlock.hmce.hmdio.hmigrate.hmlxsw.hmmc.hmmflags.hmodule.hmptcp.hnapi.hneigh.hnet.hnet_probe_common.hnetlink.hnfs.hnilfs2.hnmi.hobjagg.hoom.hosnoise.hpage_isolation.hpage_pool.hpage_ref.hpagemap.hpercpu.hpower.hpower_cpu_migrate.hpreemptirq.hprintk.hpwc.hqdisc.hqla.hqrtr.hrandom.hrcu.hrdma.hrdma_core.hregulator.hrpcgss.hrpcrdma.hrpm.hrseq.hrtc.hrxrpc.hsched.hscsi.hsctp.hsignal.hsiox.hskb.hsmbus.hsock.hsof.hsof_intel.hspi.hspmi.hsunrpc.hsunrpc_base.hsunvnet.hswiotlb.hsyscalls.htarget.htask.htcp.hthermal.hthermal_power_allocator.hthp.htimer.htlb.hudp.hufs.hv4l2.hvb2.hvmscan.hvsock_virtio_transport_common.hwbt.hworkqueue.hwriteback.hxdp.hxen.hperf.hsyscall.htrace_events.huapiasm-genericKbuild.asmauxvec.hbitsperlong.hbpf_perf_event.herrno-base.herrno.hfcntl.hhugetlb_encode.hint-l64.hint-ll64.hioctl.hioctls.hipcbuf.hkvm_para.hmman-common.hmman.hmsgbuf.hparam.hpoll.hposix_types.hresource.hsembuf.hsetup.hshmbuf.hshmparam.hsiginfo.hsignal-defs.hsignal.hsocket.hsockios.hstat.hstatfs.hswab.htermbits.htermios.htypes.hucontext.hunistd.hdrmamdgpu_drm.harmada_drm.hdrm.hdrm_fourcc.hdrm_mode.hdrm_sarea.hetnaviv_drm.hexynos_drm.hhabanalabs_accel.hi915_drm.hivpu_accel.hlima_drm.hmsm_drm.hnouveau_drm.homap_drm.hpanfrost_drm.hqxl_drm.hradeon_drm.htegra_drm.hv3d_drm.hvc4_drm.hvgem_drm.hvirtgpu_drm.hvmwgfx_drm.hlinuxKbuilda.out.hacct.hadb.hadfs_fs.haffs_hardblocks.hagpgart.haio_abi.ham437x-vpfe.handroidbinder.hapm_bios.harcfb.harm_sdei.haspeed-lpc-ctrl.hatalk.hatm.hatm_eni.hatm_he.hatm_idt77105.hatm_nicstar.hatm_tcp.hatm_zatm.hatmapi.hatmarp.hatmbr2684.hatmclip.hatmdev.hatmioc.hatmlec.hatmmpc.hatmppp.hatmsap.hatmsvc.haudit.hauto_dev-ioctl.hauto_fs.hauto_fs4.hauxvec.hax25.hb1lli.hbatadv_packet.hbatman_adv.hbaycom.hbcache.hbcm933xx_hcs.hbfs_fs.hbinfmts.hblkpg.hblktrace_api.hblkzoned.hbpf.hbpf_common.hbpf_perf_event.hbpfilter.hbpqether.hbsg.hbt-bmc.hbtf.hbtrfs.hbtrfs_tree.hbyteorderbig_endian.hlittle_endian.hcaifcaif_socket.hif_caif.hcancan.hbcm.herror.hgw.hnetlink.hraw.hvxcan.hcapability.hcapi.hcciss_defs.hcciss_ioctl.hcdrom.hcec-funcs.hcec.hcfm_bridge.hcgroupstats.hchio.hcifscifs_mount.hcifs_netlink.hclose_range.hcm4000_cs.hcn_proc.hcoda.hcoda_psdev.hcoff.hconnector.hconst.hcoresight-stm.hcramfs_fs.hcryptouser.hcuda.hcyclades.hcycx_cfm.hdcbnl.hdccp.hdevlink.hdlm.hdlm_device.hdlm_netlink.hdlm_plock.hdlmconstants.hdm-ioctl.hdm-log-userspace.hdma-buf.hdn.hdqblk_xfs.hdvbaudio.hca.hdmx.hfrontend.hnet.hosd.hversion.hvideo.hedd.hefs_fs_sb.helf-em.helf-fdpic.helf.helfcore.herrno.herrqueue.herspan.hethtool.hethtool_netlink.heventpoll.hfadvise.hfalloc.hfanotify.hfb.hfcntl.hfd.hfdreg.hfib_rules.hfiemap.hfilter.hfirewire-cdev.hfirewire-constants.hflat.hfou.hfpga-dfl.hfs.hfsl_hypervisor.hfsmap.hfuse.hfutex.hgameport.hgen_stats.hgenetlink.hgenwqegenwqe_card.hgfs2_ondisk.hgigaset_dev.hgpio.hgsmmux.hgtp.hhash_info.hhdlchdlc.hioctl.hhdlcdrv.hhdreg.hhid.hhiddev.hhidraw.hhpet.hhsics-protocol.hhsi_char.hhsr_netlink.hhw_breakpoint.hhyperv.hhysdn_if.hi2c-dev.hi2c.hi2o-dev.hi8k.hicmp.hicmpv6.hidxd.hif.hif_addr.hif_addrlabel.hif_alg.hif_arcnet.hif_arp.hif_bonding.hif_bridge.hif_cablemodem.hif_eql.hif_ether.hif_fc.hif_fddi.hif_frad.hif_hippi.hif_infiniband.hif_link.hif_ltalk.hif_macsec.hif_packet.hif_phonet.hif_plip.hif_ppp.hif_pppol2tp.hif_pppox.hif_slip.hif_team.hif_tun.hif_tunnel.hif_vlan.hif_x25.hif_xdp.hife.higmp.hiioevents.htypes.hila.hin.hin6.hin_route.hinet_diag.hinotify.hinput-event-codes.hinput.hio_uring.hioctl.hiommu.hip.hip6_tunnel.hip_vs.hipc.hipmi.hipmi_bmc.hipmi_msgdefs.hipmi_ssif_bmc.hipsec.hipv6.hipv6_route.hipx.hirqnr.hisdnisdn.hcapicmd.hisdn_divertif.hisdn_ppp.hisdnif.hiso_fs.hisst_if.hivtv.hivtvfb.hjffs2.hjoystick.hkcm.hkcmp.hkcov.hkd.hkdev_t.hkernel-page-flags.hkernel.hkernelcapi.hkexec.hkeyboard.hkeyctl.hkfd_ioctl.hkfd_sysfs.hkvm.hkvm_para.hl2tp.hlibc-compat.hlightnvm.hlimits.hlirc.hllc.hloop.hlp.hlwtunnel.hmagic.hmajor.hmap_to_7segment.hmatroxfb.hmax2175.hmdio.hmedia-bus-format.hmedia.hmei.hmembarrier.hmemfd.hmempolicy.hmeye.hmic_common.hmic_ioctl.hmii.hminix_fs.hmman.hmmcioctl.hmmtimer.hmodule.hmount.hmpls.hmpls_iptunnel.hmptcp.hmqueue.hmroute.hmroute6.hmrp_bridge.hmsdos_fs.hmsg.hmtio.hn_r3964.hnbd-netlink.hnbd.hncsi.hndctl.hneighbour.hnet.hnet_dropmon.hnet_namespace.hnet_tstamp.hnetconf.hnetdevice.hnetfilternetfilter.hipsetip_set.hip_set_bitmap.hip_set_hash.hip_set_list.hnf_conntrack_common.hnf_conntrack_ftp.hnf_conntrack_sctp.hnf_conntrack_tcp.hnf_conntrack_tuple_common.hnf_log.hnf_nat.hnf_osf.hnf_tables.hnf_tables_compat.hnfnetlink.hnfnetlink_acct.hnfnetlink_compat.hnfnetlink_conntrack.hnfnetlink_cthelper.hnfnetlink_cttimeout.hnfnetlink_log.hnfnetlink_queue.hx_tables.hxt_AUDIT.hxt_CHECKSUM.hxt_CLASSIFY.hxt_CONNMARK.hxt_CONNSECMARK.hxt_CT.hxt_DSCP.hxt_HMARK.hxt_IDLETIMER.hxt_LED.hxt_LOG.hxt_MARK.hxt_NFLOG.hxt_NFQUEUE.hxt_RATEEST.hxt_SECMARK.hxt_SYNPROXY.hxt_TCPMSS.hxt_TCPOPTSTRIP.hxt_TEE.hxt_TPROXY.hxt_addrtype.hxt_bpf.hxt_cgroup.hxt_cluster.hxt_comment.hxt_connbytes.hxt_connlabel.hxt_connlimit.hxt_connmark.hxt_conntrack.hxt_cpu.hxt_dccp.hxt_devgroup.hxt_dscp.hxt_ecn.hxt_esp.hxt_hashlimit.hxt_helper.hxt_ipcomp.hxt_iprange.hxt_ipvs.hxt_l2tp.hxt_length.hxt_limit.hxt_mac.hxt_mark.hxt_multiport.hxt_nfacct.hxt_osf.hxt_owner.hxt_physdev.hxt_pkttype.hxt_policy.hxt_quota.hxt_rateest.hxt_realm.hxt_recent.hxt_rpfilter.hxt_sctp.hxt_set.hxt_socket.hxt_state.hxt_statistic.hxt_string.hxt_tcpmss.hxt_tcpudp.hxt_time.hxt_u32.hnetfilter_arpnetfilter_arp.harp_tables.harpt_mangle.hnetfilter_bridgenetfilter_bridge.hebt_802_3.hebt_among.hebt_arp.hebt_arpreply.hebt_ip.hebt_ip6.hebt_limit.hebt_log.hebt_mark_m.hebt_mark_t.hebt_nat.hebt_nflog.hebt_pkttype.hebt_redirect.hebt_stp.hebt_vlan.hebtables.hnetfilter_decnet.hnetfilter_ipv4netfilter_ipv4.hip_tables.hipt_CLUSTERIP.hipt_ECN.hipt_LOG.hipt_REJECT.hipt_TTL.hipt_ah.hipt_ecn.hipt_ttl.hnetfilter_ipv6netfilter_ipv6.hip6_tables.hip6t_HL.hip6t_LOG.hip6t_NPT.hip6t_REJECT.hip6t_ah.hip6t_frag.hip6t_hl.hip6t_ipv6header.hip6t_mh.hip6t_opts.hip6t_rt.hip6t_srh.hnetlink.hnetlink_diag.hnetrom.hnexthop.hnfc.hnfs.hnfs2.hnfs3.hnfs4.hnfs4_mount.hnfs_fs.hnfs_idmap.hnfs_mount.hnfsacl.hnfsdcld.hdebug.hexport.hstats.hnilfs2_api.hnilfs2_ondisk.hnitro_enclaves.hnl80211.hnsfs.hnubus.hnvme_ioctl.hnvram.homap3isp.homapfb.hoom.hopenat2.hopenvswitch.hpacket_diag.hparam.hparport.hpatchkey.hpci.hpci_regs.hpcitest.hperf_event.hpersonality.hpfkeyv2.hpfrut.hpg.hphantom.hphonet.hpkt_cls.hpkt_sched.hpktcdvd.hpmu.hpoll.hposix_acl.hposix_acl_xattr.hposix_types.hppdev.hppp-comp.hppp-ioctl.hppp_defs.hpps.hpr.hprctl.hpsample.hpsci.hpsp-sev.hptp_clock.hptrace.hqemu_fw_cfg.hqnx4_fs.hqnxtypes.hqrtr.hquota.hradeonfb.hraidmd_p.hmd_u.hrandom.hraw.hrds.hreboot.hreiserfs_fs.hreiserfs_xattr.hresource.hrfkill.hrio_cm_cdev.hrio_mport_cdev.hromfs_fs.hrose.hroute.hrpmsg.hrseq.hrtc.hrtnetlink.hrxrpc.hscc.hschedsched.htypes.hscif_ioctl.hscreen_info.hsctp.hsdla.hseccomp.hsecurebits.hsed-opal.hseg6.hseg6_genl.hseg6_hmac.hseg6_iptunnel.hseg6_local.hselinux_netlink.hsem.hserial.hserial_core.hserial_reg.hserio.hsev-guest.hshm.hsignal.hsignalfd.hsmc.hsmc_diag.hsmiapp.hsnmp.hsock_diag.hsocket.hsockios.hsonet.hsonypi.hsound.hsoundcard.hspispidev.hstat.hstddef.hstm.hstring.hsunrpcdebug.hsuspend_ioctls.hswab.hswitchtec_ioctl.hsync_file.hsynclink.hsysctl.hsysinfo.htarget_core_user.htaskstats.htc_acttc_bpf.htc_connmark.htc_csum.htc_ct.htc_ctinfo.htc_defact.htc_gact.htc_gate.htc_ife.htc_ipt.htc_mirred.htc_mpls.htc_nat.htc_pedit.htc_sample.htc_skbedit.htc_skbmod.htc_tunnel_key.htc_vlan.htc_ematchtc_em_cmp.htc_em_ipt.htc_em_meta.htc_em_nbyte.htc_em_text.htcp.htcp_metrics.htdx-guest.htee.htermios.hthermal.htime.htime_types.htimerfd.htimes.htimex.htiocl.htipc.htipc_config.htipc_netlink.htipc_sockets_diag.htls.htoshiba.htty.htty_flags.htypes.hudf_fs_i.hudp.huhid.huinput.huio.huleds.hultrasound.hun.hunistd.hunix_diag.husbaudio.hcdc-wdm.hcdc.hch11.hch9.hcharger.hfunctionfs.hg_printer.hg_uvc.hgadgetfs.hmidi.htmc.hvideo.husbdevice_fs.husbip.huserfaultfd.huserio.hutime.hutsname.huuid.huvcvideo.hv4l2-common.hv4l2-controls.hv4l2-dv-timings.hv4l2-mediabus.hv4l2-subdev.hvbox_err.hvbox_vmmdev_types.hvboxguest.hvdpa.hveth.hvfio.hvfio_ccw.hvfio_zdev.hvhost.hvhost_types.hvideodev2.hvirtio_9p.hvirtio_balloon.hvirtio_blk.hvirtio_bt.hvirtio_config.hvirtio_console.hvirtio_crypto.hvirtio_fs.hvirtio_gpu.hvirtio_ids.hvirtio_input.hvirtio_iommu.hvirtio_mem.hvirtio_mmio.hvirtio_net.hvirtio_pci.hvirtio_ring.hvirtio_rng.hvirtio_scsi.hvirtio_snd.hvirtio_types.hvirtio_vsock.hvm_sockets.hvm_sockets_diag.hvmcore.hvsockmon.hvt.hvtpm_proxy.hwait.hwanrouter.hwatchdog.hwimaxwimax.hi2400m.hwireless.hwmi.hx25.hxattr.hxdp_diag.hxfrm.hxilinx-v4l2-controls.hzorro.hzorro_ids.hmisccxl.hocxl.hpvpanic.hmtdinftl-user.hmtd-abi.hmtd-user.hnftl-user.hubi-user.hrdmabnxt_re-abi.hcxgb4-abi.hefa-abi.hhfihfi1_ioctl.hhfi1_user.hhns-abi.hib_user_ioctl_cmds.hib_user_ioctl_verbs.hib_user_mad.hib_user_sa.hib_user_verbs.hirdma-abi.hmana-abi.hmlx4-abi.hmlx5-abi.hmlx5_user_ioctl_cmds.hmlx5_user_ioctl_verbs.hmthca-abi.hocrdma-abi.hqedr-abi.hrdma_netlink.hrdma_user_cm.hrdma_user_ioctl.hrdma_user_ioctl_cmds.hrdma_user_rxe.hrvt-abi.hsiw-abi.hvmw_pvrdma-abi.hscsicxlflash_ioctl.hfcfc_els.hfc_fs.hfc_gs.hfc_ns.hscsi_bsg_fc.hscsi_bsg_mpi3mr.hscsi_netlink.hscsi_netlink_fc.hsoundasequencer.hasoc.hasound.hasound_fm.hcompress_offload.hcompress_params.hemu10k1.hfirewire.hhdsp.hhdspm.hintelavstokens.hsb16_csp.hsfnt_info.hskl-tplg-interface.hsnd_sst_tokens.hsofabi.hfw.hheader.htokens.htlv.husb_stream.hvideoedid.hsisfb.huvesafb.hxenevtchn.hgntalloc.hgntdev.hprivcmd.hvdsobits.hclocksource.hconst.hdatapage.hhelpers.hjiffies.hktime.hlimits.hmath64.hprocessor.htime.htime32.htime64.hvsyscall.hvideoatmel_lcdc.haty128.hbroadsheetfb.hcirrus.hcvisionppc.hda8xx-fb.hdisplay_timing.hedid.hgbe.hhecubafb.hili9320.himx-ipu-image-convert.himx-ipu-v3.hkyro.hmach64.hmaxinefb.hmbxfb.hmetronomefb.hmipi_display.hmmp_disp.hneomagic.hnewport.hnomodeset.hof_display_timing.hof_videomode.homap-panel-data.homapfb_dss.homapvrfb.hpermedia2.hplatform_lcd.hpm3fb.hpmag-ba-fb.hpmagb-b-fb.hpxa168fb.hradeon.hs1d13xxxfb.hsa1100fb.hsamsung_fimd.hsh_mobile_lcdc.hsisfb.hsstfb.htdfx.htgafb.htrident.hudlfb.huvesafb.hvga.hvideomode.hw100fb.hxenacpi.harmhypercall.hhypervisor.hinterface.hpage-coherent.hpage.hballoon.hevents.hfeatures.hgrant_table.hhvc-console.hhvm.hinterfacecallback.helfnote.hevent_channel.hfeatures.hgrant_table.hhvmdm_op.hhvm_op.hhvm_vcpu.hparams.hstart_info.hio9pfs.hblkif.hconsole.hdisplif.hfbif.hkbdif.hnetif.hpciif.hprotocols.hpvcalls.hring.hsndif.htpmif.hvscsiif.hxenbus.hxs_wire.hmemory.hnmi.hphysdev.hplatform.hsched.hvcpu.hversion.hxen-mca.hxen.hxenpmu.hpage.hplatform_pci.hswiotlb-xen.htmem.hxen-front-pgdir-shbuf.hxen-ops.hxen.hxenbus.hxenbus_dev.hinitKconfigMakefileipcMakefilekernelKconfig.freezerKconfig.hzKconfig.locksKconfig.preemptMakefilebpfKconfigMakefilepreloadKconfigMakefileiteratorsMakefilecgroupMakefiledebugMakefilekdbMakefiledmaKconfigMakefileeventsMakefilegcovKconfigMakefileirqKconfigMakefilekcsanMakefilelivepatchKconfigMakefilelockingMakefilepowerKconfigMakefileprintkMakefilercuKconfigKconfig.debugMakefileschedMakefiletimeKconfigMakefiletraceKconfigMakefilelib842MakefileKconfigKconfig.debugKconfig.kasanKconfig.kcsanKconfig.kgdbKconfig.ubsanMakefilecryptoMakefiledimMakefilefontsKconfigMakefilekunitKconfigMakefilelivepatchMakefilelz4MakefilelzoMakefilemathKconfigMakefilempiMakefilepldmfwMakefileraid6MakefiletestMakefilereed_solomonMakefilevdsoKconfigMakefilexzKconfigMakefilezlib_deflateMakefilezlib_dfltccMakefilezlib_inflateMakefilezstdMakefilemmKconfigKconfig.debugMakefiledamonKconfigMakefilekasanMakefilenet6lowpanKconfigMakefile802KconfigMakefile8021qKconfigMakefile9pKconfigMakefileKconfigMakefileappletalkMakefileatmKconfigMakefileax25KconfigMakefilebatman-advKconfigMakefilebluetoothKconfigMakefilebnepKconfigMakefilecmtpKconfigMakefilehidpKconfigMakefilerfcommKconfigMakefilebpfMakefilebpfilterKconfigMakefilebridgeKconfigMakefilenetfilterKconfigMakefilecaifKconfigMakefilecanKconfigMakefilecephKconfigMakefilecoreMakefiledcbKconfigMakefiledccpKconfigMakefileccidsKconfigdecnetKconfigMakefilenetfilterKconfigMakefiledns_resolverKconfigMakefiledsaKconfigMakefileethernetMakefileethtoolMakefilehsrKconfigMakefileieee8021546lowpanKconfigMakefileKconfigMakefileifeKconfigMakefileipv4KconfigMakefilebpfilterMakefilenetfilterKconfigMakefileipv6KconfigMakefileilaMakefilenetfilterKconfigMakefileiucvKconfigMakefilekcmKconfigMakefilekeyMakefilel2tpKconfigMakefilel3mdevKconfigMakefilelapbKconfigMakefilellcKconfigMakefilemac80211KconfigMakefilemac802154KconfigMakefilemplsKconfigMakefilemptcpKconfigMakefilencsiKconfigMakefilenetfilterKconfigMakefileipsetKconfigMakefileipvsKconfigMakefilenetlabelKconfigMakefilenetlinkKconfigMakefilenetromMakefilenfcKconfigMakefilehciKconfigMakefilenciKconfigMakefilenshKconfigMakefileopenvswitchKconfigMakefilepacketKconfigMakefilephonetKconfigMakefilepsampleKconfigMakefileqrtrKconfigMakefilerdsKconfigMakefilerfkillKconfigMakefileroseMakefilerxrpcKconfigMakefileschedKconfigMakefilesctpKconfigMakefilesmcKconfigMakefilestrparserKconfigMakefilesunrpcKconfigMakefileauth_gssMakefilexprtrdmaMakefileswitchdevKconfigMakefiletipcKconfigMakefiletlsKconfigMakefileunixKconfigMakefilevmw_vsockKconfigMakefilewimaxKconfigMakefilewirelessKconfigMakefilex25KconfigMakefilexdpKconfigMakefilexfrmKconfigMakefilesamplesKconfigMakefileauxdisplayMakefilebpfMakefileMakefile.targetconfigfsMakefileconnectorMakefilehidrawMakefilehw_breakpointMakefilekdbMakefilekfifoMakefilekobjectMakefilekprobesMakefilelivepatchMakefilemeiMakefilemicmpssdMakefilenitro_enclavesMakefileqmiMakefilerpmsgMakefileseccompMakefiletimersMakefiletrace_eventsMakefiletrace_printkMakefileuhidMakefilev4lMakefilevfio-mdevMakefilevfsMakefilewatchdogMakefilescriptsKbuild.includeKconfig.includeLindentMakefileMakefile.asm-genericMakefile.buildMakefile.cleanMakefile.dtbinstMakefile.extrawarnMakefile.gcc-pluginsMakefile.headersinstMakefile.hostMakefile.kasanMakefile.kcovMakefile.kcsanMakefile.libMakefile.modbuiltinMakefile.modinstMakefile.modpostMakefile.modsignMakefile.ubsanadjust_autoksyms.shasn1_compilerasn1_compiler.cbasicMakefilefixdepfixdep.cmodules.orderbin2cbin2c.cbloat-o-meterbootgraph.plbpf_doc.pycc-can-link.shcheck_00index.shcheck_extable.shcheckincludes.plcheckkconfigsymbols.pycheckpatch.plcheckstack.plchecksyscalls.shcheckversion.plclang-toolsgen_compile_commands.pyrun-clang-tools.pyclang-version.shcleanfilecleanpatchcoccicheckcoccinelleapiallocalloc_cast.coccipool_zalloc-simple.coccizalloc-simple.coccicheck_bq27xxx_data.coccid_find_alias.coccidebugfsdebugfs_simple_attr.coccidrm-get-put.coccierr_cast.coccikstrdup.coccimemdup.coccimemdup_user.cocciplatform_no_drv_owner.coccipm_runtime.cocciptr_ret.cocciresource_size.coccisimple_open.coccivma_pages.coccifreeclk_put.coccidevm_free.cocciifnullfree.cocciiounmap.coccikfree.coccikfreeaddr.coccipci_free_consistent.cocciiteratorsdevice_node_continue.coccifen.cocciitnull.coccilist_entry_update.cocciuse_after_iter.coccilockscall_kern.coccidouble_lock.cocciflags.coccimini_lock.coccimiscarray_size.coccibadty.cocciboolconv.cocciboolinit.cocciboolreturn.coccibugon.coccicond_no_effect.coccicstptr.coccidoubleinit.cocciifaddr.cocciifcol.cocciirqf_oneshot.coccinewline_in_nl_msg.coccinoderef.cocciof_table.cocciorplus.coccireturnvar.coccisemicolon.cocciwarn.coccinullbadzero.coccideref_null.coccieno.coccikmerr.coccitestsdoublebitand.coccidoubletest.cocciodd_ptr_err.cocciunsigned_lesser_than_zero.cocciconfigconmakehashconmakehash.cconst_structs.checkpatchdecode_stacktrace.shdecodecodedepmod.shdiffconfigdocumentation-file-ref-checkdtcMakefileMakefile.dtcchecks.cdata.cdt_to_configdtcdtc-lexer.ldtc-lexer.lex.cdtc-parser.tab.cdtc-parser.tab.hdtc-parser.ydtc.cdtc.hdtx_difffdtdump.cfdtget.cfdtput.cflattree.cfstree.cinclude-prefixesarcarmarm64c6xdt-bindingsh8300microblazemipsnios2openriscpowerpcshxtensalibfdtMakefile.libfdtfdt.cfdt.hfdt_addresses.cfdt_empty_tree.cfdt_overlay.cfdt_ro.cfdt_rw.cfdt_strerror.cfdt_sw.cfdt_wip.clibfdt.hlibfdt_env.hlibfdt_internal.hlivetree.cmodules.ordersrcpos.csrcpos.htreesource.cupdate-dtc-source.shutil.cutil.hversion_gen.hyamltree.cexport_report.plextract-certextract-cert.cextract-ikconfigextract-module-sig.plextract-sys-certs.plextract-vmlinuxextract_xc3028.plfaddr2linefile-size.shfind-unused-docs.shgcc-goto.shgcc-ldgcc-plugin.shgcc-pluginsMakefilecyc_complexity_plugin.cgcc-common.hgcc-generate-gimple-pass.hgcc-generate-ipa-pass.hgcc-generate-rtl-pass.hgcc-generate-simple_ipa-pass.hgen-random-seed.shlatent_entropy_plugin.crandomize_layout_plugin.csancov_plugin.cstructleak_plugin.cgcc-version.shgcc-x86_32-has-stack-protector.shgcc-x86_64-has-stack-protector.shgdbMakefilelinuxMakefile__init__.pyconstants.py.incpus.pydmesg.pylists.pymodules.pyproc.pysymbols.pytasks.pyutils.pyvmlinux-gdb.pygen_initramfs_list.shgenksymsMakefilegenksymsgenksyms.cgenksyms.hkeywords.clex.llex.lex.cmodules.orderparse.tab.cparse.tab.hparse.yget_dvb_firmwareget_maintainer.plgfp-translateheaderdep.plheaders.shheaders_check.plheaders_install.shinsert-sys-certinsert-sys-cert.ckallsymskallsyms.ckconfigMakefileconfconf.cconfdata.cexpr.cexpr.hgconf-cfg.shgconf.cgconf.gladeimages.ckconf_id.clist.hlkc.hlkc_proto.hlxdialogBIG.FAT.WARNINGchecklist.cdialog.hinputbox.cmenubox.ctextbox.cutil.cyesno.cmconf-cfg.shmconf.cmenu.cmerge_config.shnconf-cfg.shnconf.cnconf.gui.cnconf.hpreprocess.cqconf-cfg.shqconf.ccqconf.hstreamline_config.plsymbol.ctestsauto_submenuKconfig__init__.pyexpected_stdoutchoiceKconfig__init__.pyalldef_expected_configallmod_expected_configallno_expected_configallyes_expected_configoldask0_expected_stdoutoldask1_configoldask1_expected_stdoutchoice_value_with_m_depKconfig__init__.pyconfigexpected_configexpected_stdoutconftest.pyerr_recursive_depKconfig__init__.pyexpected_stderrerr_recursive_incKconfigKconfig.inc1Kconfig.inc2Kconfig.inc3__init__.pyexpected_stderrinter_choiceKconfig__init__.pydefconfigexpected_confignew_choice_with_depKconfig__init__.pyconfigexpected_stdoutno_write_if_dep_unmetKconfig__init__.pyconfigexpected_configpreprocessbuiltin_funcKconfig__init__.pyexpected_stderrexpected_stdoutcircular_expansionKconfig__init__.pyexpected_stderrescapeKconfig__init__.pyexpected_stderrvariableKconfig__init__.pyexpected_stderrpytest.inirand_nested_choiceKconfig__init__.pyexpected_stdout0expected_stdout1expected_stdout2util.czconf.lzconf.lex.czconf.tab.czconf.ykernel-docksymoopsREADMEld-version.shleaking_addresses.pllink-vmlinux.shmakelstmarkup_oops.plmkcompile_hmkmakefilemksysmapmkuboot.shmodMakefiledevicetable-offsets.cdevicetable-offsets.c.000i.ipa-clonesdevicetable-offsets.hdevicetable-offsets.selfconfig.hempty.cempty.c.000i.ipa-clonesfile2alias.cmk_elfconfigmk_elfconfig.cmodpostmodpost.cmodpost.hmodules.ordersumversion.cmodule-common.ldsmodules.ordernamespace.plobjdiffpackageMakefilebuilddebbuildtarmkdebianmkspecsnapcraft.templateparse-maintainers.plpatch-kernelpnmtologopnmtologo.cprofile2linkerlist.plprune-kernelrecordmcount.crecordmcount.hrecordmcount.plselinuxMakefileREADMEgenheadersMakefilegenheadersgenheaders.cmodules.orderinstall_policy.shmdpMakefiledbus_contextsmdpmdp.cmodules.ordermodules.ordersetlocalversionshow_deltasign-filesign-file.csortextablesortextable.csortextable.hspelling.txtsphinx-pre-installsplit-man.plstackdeltastackusagesubarch.includetags.shtest_fortify.shunifdefunifdef.cver_linuxxen-hypercalls.shxz_wrap.shsecurityKconfigKconfig.hardeningMakefileapparmorKconfigMakefilebpfMakefileintegrityKconfigMakefileevmKconfigMakefileimaKconfigMakefilekeysKconfigMakefileencrypted-keysMakefiletrusted-keysMakefileloadpinKconfigMakefileselinuxKconfigMakefileincludeclassmap.hinitial_sid_to_string.hsmackKconfigMakefiletomoyoKconfigMakefileyamaKconfigMakefilesoundKconfigMakefileac97KconfigMakefileaoaKconfigMakefilecodecsKconfigMakefilecoreMakefilefabricsKconfigMakefilesoundbusKconfigMakefilei2sbusMakefilearmKconfigMakefileatmelKconfigMakefilecoreKconfigMakefileossMakefileseqKconfigMakefileossMakefiledriversKconfigMakefilempu401Makefileopl3Makefileopl4MakefilepcspMakefilevxMakefilefirewireKconfigMakefilebebobMakefilediceMakefiledigi00xMakefilefirefaceMakefilefireworksMakefilemotuMakefileoxfwMakefiletascamMakefilehdaKconfigMakefileextMakefilei2cMakefileotherMakefileisaKconfigMakefilead1816aMakefilead1848Makefilecs423xMakefilees1688MakefilegalaxyMakefilegusMakefilemsndMakefileopti9xxMakefilesbMakefilewavefrontMakefilewssMakefilemipsKconfigMakefileossdmasoundKconfigMakefilepariscKconfigMakefilepciKconfigMakefileac97Makefileali5451MakefileasihpiMakefileau88x0Makefileaw2Makefileca0106Makefilecs46xxMakefilecs5535audioMakefilectxfiMakefileechoaudioMakefileemu10k1MakefilehdaKconfigMakefileice1712Makefilekorg1212MakefilelolaMakefilelx6464esMakefilemixartMakefilenm256MakefileoxygenMakefilepcxhrMakefileriptideMakefilerme9652MakefiletridentMakefilevx222MakefileymfpciMakefilepcmciaKconfigMakefilepdaudiocfMakefilevxMakefileppcKconfigMakefileshKconfigMakefilesocKconfigMakefileadiKconfigMakefileamdKconfigMakefileacpKconfigMakefilepsMakefileravenMakefilerenoirMakefilerplMakefilevangoghMakefileycMakefileatmelKconfigMakefileau1xKconfigMakefilebcmKconfigMakefilecirrusKconfigMakefilecodecsKconfigMakefiledwcKconfigMakefilefslKconfigMakefilegenericKconfigMakefilehisiliconKconfigMakefileimgKconfigMakefileintelKconfigMakefileatomMakefilesstMakefileavsMakefileboardsKconfigMakefileboardsKconfigMakefilecatptMakefilecommonMakefilekeembayMakefileskylakeMakefilejz4740KconfigMakefilekirkwoodKconfigMakefilemediatekKconfigMakefilecommonMakefilemt2701Makefilemt6797Makefilemt8173Makefilemt8183MakefilemesonKconfigMakefilemxsKconfigMakefilepxaKconfigMakefileqcomKconfigMakefileqdsp6MakefilerockchipKconfigMakefilesamsungKconfigMakefileshKconfigMakefilercarMakefilesofKconfigMakefileamdKconfigMakefileimxKconfigMakefileintelKconfigMakefilemediatekKconfigMakefilemt8186Makefilemt8195MakefilextensaKconfigMakefilespearKconfigMakefilesprdKconfigMakefilestiKconfigMakefilestmKconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefiletxx9KconfigMakefileuniphierKconfigMakefileux500KconfigMakefilexilinxKconfigMakefilextensaKconfigMakefilesparcKconfigMakefilespiKconfigMakefilesynthKconfigMakefileemuxMakefileusb6fireMakefileKconfigMakefilebcd2000MakefilecaiaqMakefilehifaceMakefileline6KconfigMakefilemiscMakefileusx2yMakefilevirtioKconfigMakefilex86KconfigMakefilexenKconfigMakefiletoolsMakefileaccountingMakefilearchx86intel_sdsiMakefilebpfMakefilebpftoolDocumentationMakefileMakefileresolve_btfidsMakefilerunqslowerMakefilebuildMakefileMakefile.buildMakefile.featureMakefile.includefeatureMakefiletestsexMakefilecgroupMakefilefirewireMakefilegpioMakefilehvMakefileiioMakefileincludetoolsbe_byteshift.hle_byteshift.hio_uringMakefilekvmkvm_statMakefilelaptopdslmMakefilefreefallMakefileledsMakefilelibapiMakefilebpfMakefilelockdepMakefileperfDocumentationMakefileMakefilesubcmdMakefiletraceeventDocumentationMakefileMakefilepluginsMakefileobjtoolMakefilepciMakefilepcmciaMakefileperfDocumentationMakefileMakefileMakefile.configMakefile.perfarcharmMakefilearm64MakefilecskyMakefilemipsMakefilepowerpcMakefiles390MakefileshMakefilesparcMakefilex86MakefilextensaMakefilescriptsperlPerf-Trace-UtilMakefile.PLpoweracpiMakefileMakefile.configMakefile.rulestoolsacpidbgMakefileacpidumpMakefileecMakefilecpupowerMakefilebenchMakefiledebugi386MakefilekernelMakefilex86_64Makefilepm-graphMakefilex86intel-speed-selectMakefileturbostatMakefilex86_energy_perf_policyMakefilescriptsMakefile.archMakefile.includespiMakefiletestingnvdimmMakefileradix-treeMakefilescatterlistMakefileselftestsMakefileandroidMakefileionMakefilebpfMakefileMakefile.docsbpf_testmodMakefilebreakpointsMakefilecapabilitiesMakefilecgroupMakefilecoreMakefilecpu-hotplugMakefilecpufreqMakefiledamonMakefiledriversnetbondingMakefileteamMakefileefivarfsMakefileexecMakefilefilesystemsMakefilefirmwareMakefilefpuMakefileftraceMakefilefutexMakefilefunctionalMakefilegpioMakefileia64Makefileintel_pstateMakefileipcMakefilekcmpMakefilekexecMakefilekmodMakefilekvmMakefilelibMakefilelivepatchMakefilelockingMakefilemedia_testsMakefilemembarrierMakefilememfdMakefilememory-hotplugMakefilemmMakefilemountMakefilemqueueMakefilenetMakefileforwardingMakefilemptcpMakefilenetfilterMakefilensfsMakefilepowerpcMakefilealignmentMakefilebenchmarksMakefilecache_shapeMakefilecopyloopsMakefiledscrMakefileeehMakefilemathMakefilemceMakefilemmMakefilepapr_attributesMakefilepmuMakefileebbMakefilesampling_testsMakefileprimitivesMakefileptraceMakefilesignalMakefilestringloopsMakefileswitch_endianMakefilesyscallsMakefiletmMakefilevphnMakefileprctlMakefileprocMakefilepstoreMakefileptpMakefileptraceMakefilercutortureMakefileformalsrcu-cbmcMakefiletestsstore_bufferingMakefilerseqMakefilertcMakefileseccompMakefilesgxMakefilesigaltstackMakefilesizeMakefilesparc64MakefiledriversMakefilespliceMakefilestatic_keysMakefilesyncMakefilesysctlMakefiletc-testingMakefiletdxMakefiletimensMakefiletimersMakefiletpm2MakefileueventMakefileuserMakefilevDSOMakefilewatchdogMakefilex86MakefilezramMakefilevsockMakefilethermaltmonMakefileusbMakefileffs-aio-examplemultibuffhost_appMakefilesimplehost_appMakefileusbipMakefile.amlibsrcMakefile.amsrcMakefile.amvirtioMakefileringtestMakefilevhost_testMakefilevirtio-traceMakefilevmMakefilewmiMakefileusrKconfigMakefilevirtMakefilekvmKconfigMakefile.kvmlibKconfigMakefilevmlinux.hvmlinux.id/usr/src/kernels//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/alpha//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/alpha/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/alpha/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/alpha/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/alpha/math-emu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/alpha/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/alpha/oprofile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arc/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arc/boot/dts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arc/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arc/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arc/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arc/oprofile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arc/plat-axs10x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arc/plat-eznps//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arc/plat-hsdk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arc/plat-sim//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arc/plat-tb10x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/boot/bootp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/boot/compressed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/boot/dts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/firmware//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-actions//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-alpine//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-artpec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-asm9260//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-aspeed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-at91//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-axxia//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-bcm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-berlin//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-clps711x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-cns3xxx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-davinci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-digicolor//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-dove//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-ebsa110//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-efm32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-ep93xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-exynos//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-footbridge//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-gemini//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-highbank//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-hisi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-imx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-imx/devices//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-integrator//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-iop13xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-iop32x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-iop33x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-ixp4xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-keystone//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-ks8695//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-lpc18xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-lpc32xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-meson//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-mmp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-moxart//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-mv78xx0//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-mvebu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-mxs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-netx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-nomadik//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-npcm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-nspire//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-omap1//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-omap2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-orion5x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-oxnas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-picoxcell//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-prima2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-pxa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-qcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-realview//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-rockchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-rpc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-s3c24xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-s3c64xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-s5pv210//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-sa1100//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-shmobile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-socfpga//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-spear//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-sti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-stm32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-sunxi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-tango//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-tegra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-u300//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-uniphier//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-ux500//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-versatile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-vexpress//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-vt8500//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-w90x900//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-zx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mach-zynq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/nwfpe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/oprofile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/plat-iop//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/plat-omap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/plat-orion//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/plat-pxa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/plat-samsung//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/plat-versatile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/probes//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/probes/kprobes//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/probes/uprobes//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/tools//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/vdso//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/vfp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm/xen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/actions//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/al//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/allwinner//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/altera//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/amd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/amlogic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/apm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/arm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/broadcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/broadcom/northstar2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/broadcom/stingray//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/cavium//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/exynos//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/freescale//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/hisilicon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/lg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/marvell//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/nvidia//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/qcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/realtek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/renesas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/rockchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/socionext//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/sprd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/synaptics//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/xilinx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/boot/dts/zte//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/hyperv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/kernel/probes//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/kernel/vdso//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/kernel/vdso32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/kvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/kvm/hyp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/kvm/hyp/nvhe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/kvm/hyp/vhe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/tools//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/arm64/xen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/c6x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/c6x/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/c6x/boot/dts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/c6x/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/c6x/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/c6x/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/c6x/platforms//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/h8300//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/h8300/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/h8300/boot/compressed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/h8300/boot/dts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/h8300/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/h8300/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/h8300/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/hexagon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/hexagon/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/hexagon/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/hexagon/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/dig//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/hp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/hp/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/hp/sim//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/hp/sim/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/hp/zx1//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/oprofile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/sn//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/sn/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/sn/kernel/sn2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/sn/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/sn/pci/pcibr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/uv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/ia64/uv/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/68000//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/amiga//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/apollo//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/atari//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/bvme6000//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/coldfire//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/emu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/fpsp040//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/hp300//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/ifpsp060//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/mac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/math-emu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/mvme147//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/mvme16x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/q40//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/sun3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/sun3/prom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/sun3x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/tools//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/m68k/tools/amiga//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/microblaze//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/microblaze/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/microblaze/boot/dts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/microblaze/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/microblaze/kernel/cpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/microblaze/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/microblaze/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/microblaze/oprofile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/microblaze/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/alchemy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/alchemy/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/alchemy/devboards//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/ar7//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/ath25//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/ath79//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/bcm47xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/bcm63xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/bcm63xx/boards//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/bmips//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/compressed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/dts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/dts/brcm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/dts/cavium-octeon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/dts/img//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/dts/ingenic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/dts/lantiq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/dts/mscc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/dts/mti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/dts/netlogic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/dts/ni//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/dts/pic32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/dts/qca//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/dts/ralink//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/dts/xilfpga//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/boot/tools//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/cavium-octeon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/cavium-octeon/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/cavium-octeon/executive//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/cobalt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/dec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/dec/prom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/emma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/emma/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/emma/markeins//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/fw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/fw/arc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/fw/cfe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/fw/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/fw/sni//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/generic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/jazz//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/jz4740//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/kvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/lantiq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/lantiq/falcon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/lantiq/xway//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/lasat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/lasat/image//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/loongson32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/loongson32/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/loongson32/ls1b//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/loongson32/ls1c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/loongson64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/loongson64/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/loongson64/common/cs5536//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/loongson64/fuloong-2e//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/loongson64/lemote-2f//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/loongson64/loongson-3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/math-emu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/mti-malta//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/netlogic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/netlogic/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/netlogic/xlp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/netlogic/xlr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/oprofile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/paravirt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/pic32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/pic32/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/pic32/pic32mzda//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/pistachio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/pmcs-msp71xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/pnx833x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/pnx833x/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/pnx833x/stb22x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/power//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/ralink//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/rb532//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/sgi-ip22//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/sgi-ip27//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/sgi-ip32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/sibyte//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/sibyte/bcm1480//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/sibyte/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/sibyte/sb1250//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/sibyte/swarm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/sni//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/txx9//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/txx9/generic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/txx9/jmr3927//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/txx9/rbtx4927//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/txx9/rbtx4938//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/txx9/rbtx4939//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/vdso//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/vr41xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/vr41xx/casio-e55//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/vr41xx/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/mips/vr41xx/ibm-workpad//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/nds32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/nds32/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/nds32/boot/dts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/nds32/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/nds32/kernel/vdso//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/nds32/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/nds32/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/nios2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/nios2/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/nios2/boot/compressed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/nios2/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/nios2/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/nios2/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/nios2/platform//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/openrisc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/openrisc/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/openrisc/boot/dts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/openrisc/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/openrisc/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/openrisc/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/parisc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/parisc/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/parisc/boot/compressed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/parisc/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/parisc/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/parisc/math-emu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/parisc/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/parisc/oprofile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/include//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/include/asm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/include/asm/book3s//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/include/asm/book3s/32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/include/asm/book3s/64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/include/asm/nohash//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/include/asm/nohash/32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/include/asm/nohash/64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/include/generated//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/include/generated/asm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/include/generated/uapi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/include/generated/uapi/asm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/include/uapi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/include/uapi/asm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/kernel/ptrace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/kernel/trace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/kernel/vdso32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/kernel/vdso64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/kvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/math-emu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/mm/book3s32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/mm/book3s64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/oprofile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/perf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/40x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/44x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/4xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/512x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/52xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/82xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/83xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/85xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/86xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/8xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/amigaone//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/book3s//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/cell//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/cell/spufs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/chrp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/embedded6xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/maple//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/pasemi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/powermac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/powernv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/ps3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/platforms/pseries//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/purgatory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/sysdev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/sysdev/ge//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/sysdev/xics//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/sysdev/xive//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/powerpc/xmon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/riscv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/riscv/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/riscv/kernel/vdso//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/riscv/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/riscv/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/appldata//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/boot/compressed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/hypfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/kernel/syscalls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/kernel/vdso32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/kernel/vdso64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/kvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/numa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/oprofile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/purgatory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/scripts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/s390/tools//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-ap325rxa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-cayman//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-dreamcast//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-ecovec24//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-highlander//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-hp6xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-kfr2r09//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-landisk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-lboxre2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-microdev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-migor//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-r2d//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-rsk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-sdk7780//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-sdk7786//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-se//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-se/7206//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-se/7343//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-se/770x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-se/7721//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-se/7722//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-se/7724//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-se/7751//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-se/7780//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-sh03//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-sh7763rdp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boards/mach-x3proto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boot/compressed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boot/dts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/boot/romimage//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/cchips//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/cchips/hd6446x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/drivers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/drivers/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/drivers/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/drivers/superhyway//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/kernel/cpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/kernel/cpu/irq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/kernel/cpu/sh2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/kernel/cpu/sh2a//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/kernel/cpu/sh3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/kernel/cpu/sh4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/kernel/cpu/sh4a//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/kernel/cpu/sh5//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/kernel/cpu/shmobile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/kernel/vsyscall//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/lib64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/math-emu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/oprofile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sh/tools//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sparc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sparc/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sparc/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sparc/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sparc/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sparc/math-emu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sparc/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sparc/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sparc/oprofile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sparc/power//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sparc/prom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/sparc/vdso//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/um//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/um/drivers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/um/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/um/kernel/skas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/um/os-Linux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/um/os-Linux/drivers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/um/os-Linux/skas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/um/scripts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/unicore32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/unicore32/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/unicore32/boot/compressed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/unicore32/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/unicore32/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/unicore32/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/boot/compressed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/coco//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/coco/tdx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/entry//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/entry/syscalls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/entry/vdso//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/entry/vsyscall//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/events//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/events/amd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/events/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/hyperv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/ia32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/kernel/acpi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/kernel/apic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/kernel/cpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/kernel/cpu/mce//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/kernel/cpu/microcode//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/kernel/cpu/mtrr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/kernel/cpu/resctrl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/kernel/cpu/sgx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/kernel/fpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/kernel/kprobes//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/kvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/math-emu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/mm/pat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/oprofile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/atom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/ce4100//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/efi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/geode//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/goldfish//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/intel-mid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/intel-mid/device_libs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/intel-quark//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/iris//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/olpc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/scx200//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/sfi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/ts5500//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/platform/uv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/power//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/purgatory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/ras//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/realmode//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/realmode/rm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/tools//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/um//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/um/os-Linux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/um/vdso//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/video//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/x86/xen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/xtensa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/xtensa/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/xtensa/boot/boot-elf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/xtensa/boot/boot-redboot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/xtensa/boot/dts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/xtensa/boot/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/xtensa/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/xtensa/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/xtensa/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/xtensa/oprofile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/xtensa/platforms//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/xtensa/platforms/iss//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/xtensa/platforms/xt2000//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/arch/xtensa/platforms/xtfpga//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/block//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/block/partitions//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/certs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/crypto/asymmetric_keys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/crypto/async_tx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/accessibility//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/accessibility/braille//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/acpi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/acpi/acpica//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/acpi/apei//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/acpi/arm64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/acpi/dptf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/acpi/nfit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/acpi/numa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/acpi/pmic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/amba//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/android//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ata//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/atm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/auxdisplay//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/base//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/base/firmware_loader//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/base/power//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/base/regmap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/base/test//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/bcma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/block//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/block/aoe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/block/drbd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/block/mtip32xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/block/paride//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/block/rsxx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/block/xen-blkback//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/block/zram//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/bluetooth//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/bus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/bus/fsl-mc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/bus/mhi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/bus/mhi/ep//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/bus/mhi/host//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/cdrom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/char//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/char/agp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/char/hw_random//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/char/ipmi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/char/mwave//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/char/pcmcia//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/char/tpm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/char/tpm/st33zp24//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/char/xilinx_hwicap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/char/xillybus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/actions//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/at91//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/axis//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/axs10x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/bcm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/berlin//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/davinci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/h8300//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/hisilicon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/imgtec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/imx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/ingenic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/keystone//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/loongson1//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/meson//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/microchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/mmp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/mvebu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/mxs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/nxp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/pistachio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/pxa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/qcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/renesas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/rockchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/samsung//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/sirf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/socfpga//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/spear//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/sprd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/st//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/sunxi-ng//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/sunxi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/tegra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/ti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/uniphier//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/ux500//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/versatile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/x86//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/zte//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clk/zynq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/clocksource//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/connector//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/counter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/cpufreq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/cpuidle//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/cpuidle/governors//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/amcc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/axis//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/bcm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/caam//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/cavium//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/cavium/cpt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/cavium/nitrox//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/cavium/zip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/ccp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/ccree//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/chelsio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/chelsio/chtls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/inside-secure//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/marvell//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/nx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/qat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/qat/qat_4xxx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/qat/qat_c3xxx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/qat/qat_c3xxxvf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/qat/qat_c62x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/qat/qat_c62xvf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/qat/qat_common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/qat/qat_dh895xcc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/qat/qat_dh895xccvf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/qce//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/rockchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/stm32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/sunxi-ss//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/ux500//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/ux500/cryp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/ux500/hash//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/virtio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/crypto/vmx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dax//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dax/hmem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dax/pmem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dca//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/devfreq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/devfreq/event//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma-buf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma-buf/heaps//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma/bestcomm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma/dw-axi-dmac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma/dw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma/hsu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma/idxd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma/ioat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma/ipu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma/mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma/ppc4xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma/ptdma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma/qcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma/sh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma/ti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/dma/xilinx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/edac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/eisa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/extcon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/firewire//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/firmware//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/firmware/arm_scmi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/firmware/broadcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/firmware/cirrus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/firmware/efi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/firmware/efi/libstub//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/firmware/efi/test//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/firmware/google//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/firmware/meson//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/firmware/psci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/firmware/smccc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/firmware/tegra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/fmc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/fpga//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/fsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/acp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/amdgpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/amdkfd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/amdgpu_dm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/basics//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/bios//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/clk_mgr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce100//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce110//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce112//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce120//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce60//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce80//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn10//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn20//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn201//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn21//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn30//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn301//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn302//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn303//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn31//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn314//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn315//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn316//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn321//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dml//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dsc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/gpio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/hdcp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/irq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/link//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/virtual//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dmub//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/dmub/src//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/modules//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/modules/color//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/modules/freesync//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/modules/hdcp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/modules/info_packet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/display/modules/power//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/pm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/pm/legacy-dpm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay/hwmgr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay/smumgr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu11//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu12//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu13//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/arm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/armada//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/aspeed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/ast//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/atmel-hlcdc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/bridge//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/bridge/adv7511//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/bridge/analogix//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/bridge/cadence//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/bridge/imx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/bridge/synopsys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/display//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/etnaviv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/exynos//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/fsl-dcu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/gma500//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/gud//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/hisilicon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/hisilicon/hibmc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/hisilicon/kirin//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/hyperv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/i2c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/i915//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/i915/gvt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/imx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/kmb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/logicvc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/meson//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/mgag200//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/msm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/mxsfb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/nouveau//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/omapdrm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/omapdrm/displays//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/omapdrm/dss//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/panel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/pl111//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/qxl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/radeon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/rcar-du//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/rockchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/scheduler//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/shmobile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/solomon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/sprd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/sti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/stm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/sun4i//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/tegra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/tests//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/tilcdc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/tiny//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/ttm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/tve200//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/udl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/v3d//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/vboxvideo//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/vc4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/vgem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/virtio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/vkms//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/vmwgfx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/drm/xen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/host1x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/ipu-v3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/gpu/vga//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hid/amd-sfh-hid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hid/i2c-hid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hid/intel-ish-hid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hid/surface-hid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hid/usbhid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hsi/clients//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hsi/controllers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hwmon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hwmon/pmbus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hwspinlock//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hwtracing//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hwtracing/coresight//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hwtracing/intel_th//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/hwtracing/stm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/i2c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/i2c/algos//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/i2c/busses//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/i2c/muxes//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ide//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/idle//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/accel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/adc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/afe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/amplifiers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/buffer//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/chemical//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/common/cros_ec_sensors//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/common/hid-sensors//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/common/ms_sensors//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/common/ssp_sensors//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/common/st_sensors//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/counter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/dac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/dummy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/frequency//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/gyro//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/health//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/humidity//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/imu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/imu/bmi160//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/imu/inv_mpu6050//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/imu/st_lsm6dsx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/light//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/magnetometer//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/multiplexer//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/orientation//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/potentiometer//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/potentiostat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/pressure//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/proximity//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/resolver//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/temperature//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/test//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iio/trigger//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/bnxt_re//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/cxgb4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/efa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/hfi1//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/hns//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/irdma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/mana//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/mlx4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/mlx5//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/mthca//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/ocrdma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/qedr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/qib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/usnic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/hw/vmw_pvrdma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/sw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/sw/rdmavt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/sw/rxe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/sw/siw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/ulp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/ulp/ipoib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/ulp/iser//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/ulp/isert//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/ulp/opa_vnic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/ulp/srp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/infiniband/ulp/srpt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/input//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/input/gameport//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/input/joystick//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/input/joystick/iforce//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/input/keyboard//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/input/misc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/input/mouse//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/input/rmi4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/input/serio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/input/tablet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/input/touchscreen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iommu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iommu/amd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iommu/arm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iommu/arm/arm-smmu-v3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iommu/arm/arm-smmu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/iommu/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ipack//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ipack/carriers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ipack/devices//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/irqchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/isdn//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/isdn/capi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/isdn/divert//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/isdn/gigaset//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/isdn/hardware//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/isdn/hardware/avm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/isdn/hardware/eicon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/isdn/hardware/mISDN//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/isdn/hisax//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/isdn/hysdn//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/isdn/i4l//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/isdn/isdnloop//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/isdn/mISDN//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/leds//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/leds/trigger//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/lightnvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/macintosh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/macintosh/ams//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mailbox//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mcb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/md//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/md/bcache//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/md/persistent-data//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/cec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/common/b2c2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/common/saa7146//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/common/siano//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/common/v4l2-tpg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/common/videobuf2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/dvb-core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/dvb-frontends//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/dvb-frontends/cxd2880//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/dvb-frontends/drx39xyj//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/firewire//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/i2c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/i2c/adv748x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/i2c/cx25840//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/i2c/et8ek8//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/i2c/m5mols//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/i2c/s5c73m3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/i2c/smiapp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/i2c/soc_camera//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/mmc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/mmc/siano//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/b2c2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/bt8xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/cobalt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/cx18//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/cx23885//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/cx25821//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/cx88//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/ddbridge//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/dm1105//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/dt3155//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/intel/ipu3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/ivtv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/mantis//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/meye//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/netup_unidvb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/ngene//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/pluto2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/pt1//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/pt3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/saa7134//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/saa7146//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/saa7164//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/smipcie//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/solo6x10//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/sta2x11//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/ttpci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/tw5864//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/tw68//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/pci/tw686x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/am437x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/atmel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/cadence//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/cec-gpio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/coda//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/davinci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/exynos-gsc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/exynos4-is//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/marvell-ccic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/meson//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/mtk-jpeg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/mtk-mdp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/mtk-vcodec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/mtk-vpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/omap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/omap3isp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/qcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/qcom/camss-8x16//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/qcom/venus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/rcar-vin//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/rockchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/rockchip/rga//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/s3c-camif//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/s5p-cec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/s5p-g2d//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/s5p-jpeg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/s5p-mfc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/soc_camera//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/sti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/sti/bdisp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/sti/c8sectpfe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/sti/cec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/sti/delta//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/sti/hva//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/stm32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/tegra-cec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/ti-vpe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/vimc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/vivid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/vsp1//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/platform/xilinx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/radio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/radio/si470x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/radio/si4713//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/radio/wl128x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/rc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/rc/img-ir//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/rc/keymaps//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/spi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/tuners//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/airspy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/as102//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/au0828//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/b2c2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/cpia2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/cx231xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/dvb-usb-v2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/dvb-usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/em28xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/go7007//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/gspca//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/gspca/gl860//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/gspca/m5602//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/gspca/stv06xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/hackrf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/hdpvr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/msi2500//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/pulse8-cec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/pvrusb2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/pwc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/rainshadow-cec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/s2255//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/siano//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/stk1160//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/stkwebcam//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/tm6000//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/ttusb-budget//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/ttusb-dec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/usbtv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/usbvision//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/uvc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/usb/zr364xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/media/v4l2-core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/memory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/memory/samsung//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/memory/tegra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/memstick//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/memstick/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/memstick/host//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/message//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/message/fusion//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mfd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/altera-stapl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/c2port//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/cardreader//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/cb710//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/cxl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/echo//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/eeprom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/genwqe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/ibmasm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/lis3lv02d//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/lkdtm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/mei//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/mei/hdcp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/mei/pxp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/mic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/mic/bus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/mic/card//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/mic/cosm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/mic/cosm_client//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/mic/host//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/mic/scif//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/mic/vop//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/ocxl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/sgi-gru//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/sgi-xp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/ti-st//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/misc/vmw_vmci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mmc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mmc/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mmc/host//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/chips//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/devices//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/lpddr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/maps//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/nand//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/nand/onenand//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/nand/raw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/nand/raw/atmel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/nand/raw/bcm47xxnflash//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/nand/raw/brcmnand//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/nand/raw/gpmi-nand//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/parsers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/spi-nor//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/tests//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mtd/ubi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/mux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/appletalk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/arcnet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/bonding//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/caif//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/can//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/can/c_can//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/can/cc770//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/can/ifi_canfd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/can/m_can//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/can/mscan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/can/peak_canfd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/can/rcar//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/can/sja1000//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/can/softing//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/can/spi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/can/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/can/usb/kvaser_usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/can/usb/peak_usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/dsa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/dsa/b53//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/dsa/microchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/dsa/mv88e6xxx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/3com//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/8390//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/adaptec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/aeroflex//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/agere//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/alacritech//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/allwinner//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/alteon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/altera//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/amazon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/amazon/ena//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/amd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/amd/xgbe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/apm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/apm/xgene-v2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/apm/xgene//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/apple//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/aquantia//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/aquantia/atlantic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/aquantia/atlantic/hw_atl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/arc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/atheros//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/atheros/alx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/atheros/atl1c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/atheros/atl1e//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/atheros/atlx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/aurora//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/broadcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/broadcom/bnx2x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/broadcom/bnxt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/broadcom/genet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/brocade//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/brocade/bna//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/cadence//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/calxeda//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/cavium//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/cavium/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/cavium/liquidio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/cavium/octeon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/cavium/thunder//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/chelsio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb4vf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto/ch_ipsec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto/ch_ktls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/chelsio/libcxgb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/cirrus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/cisco//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/cisco/enic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/cortina//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/davicom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/dec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/dec/tulip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/dlink//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/emulex//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/emulex/benet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/ezchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/faraday//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/freescale//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/freescale/dpaa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/freescale/fman//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/freescale/fs_enet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/fujitsu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/google//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/google/gve//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/hisilicon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/hisilicon/hns//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3/hns3pf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3/hns3vf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/hp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/huawei//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/huawei/hinic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/i825xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/ibm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/ibm/ehea//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/ibm/emac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/intel/e1000//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/intel/e1000e//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/intel/fm10k//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/intel/i40e//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/intel/iavf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/intel/ice//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/intel/idpf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/intel/igb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/intel/igbvf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/intel/igc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/intel/ixgb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/intel/ixgbe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/intel/ixgbevf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/marvell//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/marvell/mvpp2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/accel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/diag//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en/xsk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en_accel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/esw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/fpga//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/ipoib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/steering//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlxbf_gige//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlxfw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlxsw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/micrel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/microchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/microsoft//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/microsoft/mana//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/moxa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/mscc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/myricom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/myricom/myri10ge//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/natsemi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/neterion//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/neterion/vxge//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/netronome//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/netronome/nfp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/netronome/nfp/bpf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/netronome/nfp/flower//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nfpcore//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nfpcore/nfp6000//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/ni//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/nuvoton//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/nvidia//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/nxp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/oki-semi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/oki-semi/pch_gbe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/packetengines//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/pasemi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/pensando//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/pensando/ionic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/qlogic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/qlogic/netxen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/qlogic/qed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/qlogic/qede//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/qlogic/qlcnic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/qlogic/qlge//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/qualcomm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/qualcomm/emac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/qualcomm/rmnet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/rdc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/realtek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/renesas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/rocker//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/samsung//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/samsung/sxgbe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/seeq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/sfc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/sfc/falcon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/sfc/siena//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/sgi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/silan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/sis//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/smsc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/socionext//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/stmicro//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/stmicro/stmmac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/sun//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/synopsys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/tehuti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/ti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/toshiba//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/tundra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/via//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/wiznet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/xilinx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/xircom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ethernet/xscale//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/fddi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/fddi/skfp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/fjes//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/hamradio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/hippi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/hyperv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ieee802154//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ipvlan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/netdevsim//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/pcs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/phy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/plip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/ppp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/slip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/team//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/thunderbolt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/vmxnet3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wan/lmc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wimax//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wimax/i2400m//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/admtek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ath//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ath/ar5523//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ath/ath10k//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ath/ath11k//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ath/ath12k//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ath/ath5k//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ath/ath6kl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ath/ath9k//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ath/carl9170//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ath/wcn36xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ath/wil6210//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/atmel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/broadcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/broadcom/b43//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/broadcom/b43legacy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bca//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/wcc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmsmac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmutil//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/cisco//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/intel/ipw2x00//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/intel/iwlegacy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/intel/iwlwifi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/dvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/mei//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/mvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/intersil//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/intersil/hostap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/intersil/orinoco//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/intersil/p54//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/intersil/prism54//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/legacy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/marvell//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/marvell/libertas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/marvell/libertas_tf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/marvell/mwifiex//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7603//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7615//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt76x0//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt76x2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7915//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7921//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7996//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/mediatek/mt7601u//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/quantenna//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/quantenna/qtnfmac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ralink//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ralink/rt2x00//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtl818x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtl818x/rtl8180//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtl818x/rtl8187//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtl8xxxu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/btcoexist//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8188ee//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192ce//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192cu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192de//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192ee//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192se//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723ae//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723be//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723com//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8821ae//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtw88//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/realtek/rtw89//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/rsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/st//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/st/cw1200//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ti/wl1251//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ti/wl12xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ti/wl18xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/ti/wlcore//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/virtual//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/zydas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/wireless/zydas/zd1211rw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/net/xen-netback//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nfc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nfc/fdp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nfc/microread//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nfc/nfcmrvl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nfc/nxp-nci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nfc/pn533//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nfc/pn544//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nfc/s3fwrn5//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nfc/st-nci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nfc/st21nfca//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nfc/st95hf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ntb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ntb/hw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ntb/hw/amd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ntb/hw/epf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ntb/hw/idt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ntb/hw/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ntb/hw/mscc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ntb/test//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nubus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nvdimm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nvme//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nvme/host//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nvme/target//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/nvmem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/of//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/of/unittest-data//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/opp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/parisc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/parport//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pci/controller//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pci/controller/dwc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pci/endpoint//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pci/endpoint/functions//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pci/hotplug//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pci/pcie//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pci/switch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pcmcia//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/perf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/perf/hisilicon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/allwinner//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/amlogic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/broadcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/hisilicon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/lantiq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/marvell//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/motorola//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/qualcomm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/ralink//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/renesas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/rockchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/samsung//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/st//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/tegra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/phy/ti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/actions//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/aspeed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/bcm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/berlin//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/freescale//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/meson//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/mvebu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/nomadik//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/pxa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/qcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/samsung//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/sh-pfc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/sirf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/spear//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/sprd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/stm32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/sunxi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/tegra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/ti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/uniphier//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/vt8500//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pinctrl/zte//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/chrome//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/goldfish//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/mellanox//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/mips//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/olpc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/x86//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/x86/amd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/x86/amd/pmf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/x86/dell-wmi-sysman//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/x86/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/x86/intel/ifs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/x86/intel/pmc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/x86/intel/pmt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/x86/intel/speed_select_if//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/platform/x86/intel/uncore-frequency//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pnp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pnp/isapnp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pnp/pnpacpi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pnp/pnpbios//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/power//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/power/avs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/power/reset//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/power/supply//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/powercap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pps//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pps/clients//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pps/generators//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ps3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ptp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/pwm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/rapidio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/rapidio/devices//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/rapidio/switches//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ras//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/regulator//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/remoteproc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/reset//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/reset/hisilicon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/reset/sti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/reset/tegra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/rpmsg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/rtc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/s390//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/s390/block//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/s390/char//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/s390/cio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/s390/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/s390/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/s390/scsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/s390/virtio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/sbus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/sbus/char//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/aacraid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/aic7xxx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/aic7xxx/aicasm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/aic94xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/arcmsr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/arm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/be2iscsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/bfa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/bnx2fc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/bnx2i//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/csiostor//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/cxgbi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/cxgbi/cxgb3i//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/cxgbi/cxgb4i//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/cxlflash//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/device_handler//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/esas2r//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/fcoe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/fnic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/hisi_sas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/ibmvscsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/ibmvscsi_tgt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/isci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/libfc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/libsas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/lpfc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/megaraid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/mpi3mr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/mpt3sas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/mvsas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/pcmcia//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/pm8001//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/qedf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/qedi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/qla2xxx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/qla4xxx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/smartpqi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/snic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/sym53c8xx_2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/scsi/ufs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/sfi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/sh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/sh/clk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/sh/intc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/sh/maple//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/sh/superhyway//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/siox//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/slimbus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/sn//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/actions//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/amlogic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/atmel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/bcm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/bcm/brcmstb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/bcm/brcmstb/pm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/dove//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/fsl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/fsl/qbman//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/fsl/qe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/fujitsu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/gemini//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/imx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/lantiq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/qcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/renesas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/rockchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/samsung//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/sunxi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/tegra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/tegra/fuse//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/ti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/ux500//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/versatile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/xilinx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soc/zte//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/soundwire//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/spi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/spmi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/ssb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/android//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/android/ion//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/board//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/clocking-wizard//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/comedi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/comedi/drivers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/comedi/kcomedilib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/dgnc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/emxx_udc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/fbtft//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/fsl-dpaa2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/fsl-dpaa2/ethernet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/fsl-dpaa2/ethsw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/fsl-dpaa2/rtc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/fsl-mc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/fsl-mc/bus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/fsl-mc/bus/dpio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/fwserial//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/gdm724x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/goldfish//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/greybus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/greybus/tools//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/gs_fpgaboot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/iio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/iio/accel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/iio/adc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/iio/addac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/iio/cdc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/iio/frequency//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/iio/gyro//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/iio/impedance-analyzer//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/iio/meter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/iio/resolver//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/ks7010//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/media//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/media/bcm2048//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/media/davinci_vpfe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/media/imx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/media/imx074//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/media/mt9t031//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/media/omap4iss//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/media/tegra-vde//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/media/zoran//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/most//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/most/cdev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/most/dim2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/most/i2c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/most/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/most/sound//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/most/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/most/video//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/mt29f_spinand//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/mt7621-dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/mt7621-dts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/mt7621-eth//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/mt7621-gpio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/mt7621-mmc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/mt7621-pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/mt7621-pinctrl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/mt7621-spi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/netlogic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/nvec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/octeon-usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/octeon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/olpc_dcon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/pi433//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/rtl8188eu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/rtl8192e//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/rtl8192e/rtl8192e//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/rtl8192u//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/rtl8192u/ieee80211//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/rtl8712//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/rtl8723bs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/rtlwifi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/rtlwifi/btcoexist//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/rtlwifi/rtl8822be//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/rts5208//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/skein//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/sm750fb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/speakup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/unisys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/unisys/visorhba//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/unisys/visorinput//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/unisys/visornic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/vboxvideo//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/vc04_services//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/vc04_services/bcm2835-audio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/vc04_services/bcm2835-camera//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/vme//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/vme/devices//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/vt6655//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/vt6656//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/wilc1000//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/wlan-ng//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/staging/xgifb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/target//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/target/iscsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/target/iscsi/cxgbit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/target/loopback//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/target/sbp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/target/tcm_fc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/tc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/tee//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/tee/optee//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/thermal//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/thermal/broadcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/thermal/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/thermal/intel/int340x_thermal//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/thermal/qcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/thermal/samsung//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/thermal/st//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/thermal/tegra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/thermal/ti-soc-thermal//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/thunderbolt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/tty//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/tty/hvc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/tty/ipwireless//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/tty/serdev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/tty/serial//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/tty/serial/8250//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/tty/serial/cpm_uart//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/tty/serial/jsm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/tty/vt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/uio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/atm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/c67x00//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/chipidea//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/class//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/dwc2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/dwc3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/early//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/gadget//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/gadget/function//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/gadget/legacy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/gadget/udc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/gadget/udc/aspeed-vhub//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/gadget/udc/bdc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/host//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/host/whci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/image//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/isp1760//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/misc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/misc/sisusbvga//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/mon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/mtu3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/musb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/phy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/renesas_usbhs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/roles//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/serial//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/storage//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/typec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/typec/altmodes//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/typec/mux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/typec/tcpm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/typec/tipd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/typec/ucsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/usbip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/usb/wusbcore//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/uwb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/uwb/i1480//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/uwb/i1480/dfu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vdpa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vdpa/alibaba//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vdpa/ifcvf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vdpa/mlx5//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vdpa/vdpa_sim//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vdpa/virtio_pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vfio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vfio/mdev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vfio/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vfio/platform//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vfio/platform/reset//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vhost//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/backlight//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/console//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/aty//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/geode//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/i810//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/intelfb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/kyro//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/matrox//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/mb862xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/mbx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/mmp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/mmp/fb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/mmp/hw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/mmp/panel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/nvidia//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/omap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/omap2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/omap2/omapfb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/omap2/omapfb/displays//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/omap2/omapfb/dss//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/riva//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/savage//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/sis//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/vermilion//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/fbdev/via//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/video/logo//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/virt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/virt/coco//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/virt/coco/sev-guest//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/virt/coco/tdx-guest//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/virt/nitro_enclaves//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/virt/vboxguest//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/virtio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/visorbus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vlynq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vme//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vme/boards//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/vme/bridges//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/w1//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/w1/masters//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/w1/slaves//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/watchdog//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/xen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/xen/events//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/xen/xen-pciback//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/xen/xenbus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/xen/xenfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/drivers/zorro//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/firmware//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/9p//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/adfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/affs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/afs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/autofs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/befs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/bfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/btrfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/cachefiles//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/ceph//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/cifs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/coda//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/configfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/cramfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/debugfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/devpts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/dlm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/ecryptfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/efivarfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/efs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/exportfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/ext2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/ext4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/f2fs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/fat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/freevxfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/fscache//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/fuse//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/gfs2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/hfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/hfsplus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/hostfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/hpfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/hugetlbfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/iomap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/isofs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/jbd2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/jffs2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/jfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/kernfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/lockd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/minix//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/nfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/nfs/blocklayout//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/nfs/filelayout//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/nfs/flexfilelayout//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/nfs_common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/nfsd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/nilfs2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/nls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/notify//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/notify/dnotify//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/notify/fanotify//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/notify/inotify//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/ntfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/ocfs2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/ocfs2/cluster//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/ocfs2/dlm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/ocfs2/dlmfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/omfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/openpromfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/orangefs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/overlayfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/proc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/pstore//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/qnx4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/qnx6//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/quota//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/ramfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/reiserfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/romfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/squashfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/sysfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/sysv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/tracefs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/ubifs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/udf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/ufs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/fs/xfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/acpi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/acpi/platform//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/asm-generic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/asm-generic/bitops//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/asm-generic/vdso//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/clocksource//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/8139too//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/842//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ac97//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/advise//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/alim7101//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/allow//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/allow/dev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/altera//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/amd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/aperture//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/aquantia//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/cpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/cpu/probe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/dma/addr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/dma/addr/t//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/enable//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/enable/hugepage//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/enable/memory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/enable/split//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/enable/split/pmd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/devmem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/devmem/is//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/dma/map//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/elf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/fast//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/force//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/force/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/fortify//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/gcov//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/gcov/profile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/gigantic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/kexec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/mem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/membarrier//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/memremap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/memremap/compat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/non//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/non/overlapping//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/non/overlapping/address//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/phys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/phys/to//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/pmem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/pte//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/sg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/tick//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/uaccess//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/ubsan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/ubsan/sanitize//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/walk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/has/zone//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/have//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/have/nmi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/have/nmi/safe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/hibernation//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/keep//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/may//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/may/have//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/may/have/pc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/memory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/might//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/might/have//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/might/have/pc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/mmap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/mmap/rnd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/mmap/rnd/bits//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/mmap/rnd/compat/bits//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/select//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/select/memory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/sparsemem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/supports//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/supports/atomic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/supports/debug//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/supports/memory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/supports/numa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/suspend//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/suspend/nonzero//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/use//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/use/builtin//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/use/cmpxchg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/uses//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/uses/high//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/uses/high/vma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/want//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/want/compat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/want/compat/ipc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/want/compat/ipc/parse//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/want/ipc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/want/ipc/parse//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/want/irqs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/want/irqs/off//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/want/irqs/off/activate//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/want/old//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/want/old/compat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/weak//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arch/weak/release//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arm/gic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/arm/gic/max//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/associative//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/asymmetric//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/asymmetric/key//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/asymmetric/public//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/asymmetric/public/key//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/async//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/async/raid6//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/async/tx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ata//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ata/verbose//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/atm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/atomic64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/audit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/autofs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/autofs4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/auxiliary//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/backlight//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/backlight/class//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/backlight/lcd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/balloon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/base//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bcm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bcm/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bcm7xxx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bcm87xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bcma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bcma/driver//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bcma/driver/gmac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bcma/host//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bcma/host/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/be2net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bfq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bfq/group//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/big//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/binary//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/binfmt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bitfield//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bitfield/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bits//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bits/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk/cgroup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk/cgroup/fc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk/debug//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk/dev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk/dev/dm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk/dev/integrity//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk/dev/io//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk/dev/loop//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk/dev/loop/min//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk/dev/null//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk/dev/ram//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk/mq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk/scsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/blk/wbt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/block//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bnx2x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bnxt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bnxt/flower//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bootparam//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bootparam/hardlockup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bootparam/hardlockup/panic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bootparam/hung//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bootparam/hung/task//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bootparam/hung/task/panic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bootparam/softlockup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bootparam/softlockup/panic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bootx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bpf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bpf/jit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bpf/jit/always//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bpf/jit/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bpf/stream//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bpf/unpriv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bpf/unpriv/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/branch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/branch/profile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bridge//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bridge/ebt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bridge/ebt/802//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bridge/ebt/mark//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bridge/ebt/t//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bridge/igmp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bridge/nf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bridge/vlan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/broadcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bsd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bsd/process//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bsd/process/acct//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bt/bnep//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bt/bnep/mc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bt/bnep/proto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bt/hcibtusb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bt/hciuart//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bt/mrvl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bt/rfcomm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bug//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bug/on//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/bug/on/data//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/build//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/buildtime//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/buildtime/extable//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/can//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/can/8dev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/can/c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/can/c/can//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/can/calc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/can/cc770//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/can/ems//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/can/esd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/can/kvaser//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/can/peak//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/can/plx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/can/sja1000//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/capi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cavium//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cb710//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cb710/debug//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cc/can//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cc/has//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cc/has/kasan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cc/has/sancov//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cc/has/sancov/trace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cc/has/stackprotector//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cc/has/working//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cc/has/working/nosanitize//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cc/is//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cc/optimize//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cc/optimize/for//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cdrom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cdrom/pktcdvd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cec/platform//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ceph//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ceph/fs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ceph/fs/posix//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ceph/fs/security//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ceph/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ceph/lib/use//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ceph/lib/use/dns//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cgroup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cgroup/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/charger//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/check//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/checkpoint//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/chelsio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/chelsio/inline//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/chelsio/ipsec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/chelsio/tls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/chr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/chr/dev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cicada//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cifs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cifs/allow//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cifs/allow/insecure//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cifs/dfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cifs/smb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cifs/weak//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cifs/weak/pw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/clang//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/clkbld//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/clone//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cls/u32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/clz//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cmdline//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cmdline/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/compat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/compat/32bit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/compat/binfmt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/compat/old//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/configfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/console//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/console/loglevel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/context//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/context/switch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/contig//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/core/dump//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/core/dump/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/core/dump/default/elf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cortina//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cpu/freq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cpu/freq/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cpu/freq/default/gov//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cpu/freq/gov//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cpu/freq/gov/attr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cpu/idle//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cpu/idle/gov//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cpu/little//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cramfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crash//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crc/itu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crc32//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cross//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cross/memory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/ansi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/blowfish//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/cast//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/dev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/dev/nitrox//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/dev/nx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/dev/nx/compress//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/dev/vmx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/drbg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/fips//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/hash//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/michael//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/rng//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/twofish//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/user//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/crypto/user/api//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cxl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cxl/afu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cxl/afu/driver//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/cypress//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/damon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/davicom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dax//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dcache//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dcache/word//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/de//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/debug//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/debug/info//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/debug/memory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/debug/section//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/decompress//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/default/fq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/default/hung//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/default/hung/task//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/default/mmap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/default/mmap/min//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/default/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/default/security//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/default/tcp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/detect//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/detect/hung//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dev/dax//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dev/dax/pmem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/device//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/devtmpfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dlci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dlm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dm/bio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dm/cache//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dm/log//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dm/multipath//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dm/persistent//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dm/thin//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dma/engine//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dma/ops//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dma/shared//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dns//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dp83640//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dp83822//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dp83848//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dp83867//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dp83tc811//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/amd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/amdgpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/cirrus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/display//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/display/dp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/display/hdcp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/display/hdmi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/dp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/dp/aux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/export//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/export/for//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/fbdev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/gem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/gem/shmem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/i2c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/kms//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/kunit/test//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/load//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/load/edid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/nouveau//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/panel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/panel/orientation//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/radeon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/ttm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/virtio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/drm/vram//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dst//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dummy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dummy/console//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/au8522//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/av7110//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/b2c2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/b2c2/flexcop//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/budget//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/dummy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/dynamic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/firedtv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/gp8psk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/max//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/ttusb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/tuner//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/usb/af9005//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/usb/cinergy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/usb/dibusb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/usb/nova//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/usb/nova/t//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/usb/technisat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dvb/usb/umt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dw/dmac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dynamic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dynamic/ftrace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/dynamic/ftrace/with//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/early//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/edac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/edac/atomic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/edac/legacy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/eeprom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/efi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/elf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/enable//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/enable/must//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/enclosure//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/encrypted//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/energy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/epapr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ethtool//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/event//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/evm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/evm/attr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/exclusive//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/exclusive/system//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/exportfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/exportfs/block//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ext4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ext4/fs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ext4/fs/posix//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ext4/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ext4/use//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ext4/use/for//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/extra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fair//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fair/group//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fanotify//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fanotify/access//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fat/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fat/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fb/cfb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fb/deferred//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fb/ibm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fb/matrox//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fb/mode//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fb/nvidia//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fb/radeon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fb/sys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/file//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fips//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fips/signature//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/firewire//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fixed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/font//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/force//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/force/max//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fortify//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/frame//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/framebuffer//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/framebuffer/console//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/framebuffer/console/deferred//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/framebuffer/console/detect//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fs/dax//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fs/posix//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fscache//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ftrace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ftrace/mcount//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/function//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/function/graph//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fuse//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fusion//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fusion/max//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/futex//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fw/loader//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/fw/loader/user//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/gact//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/gcc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/clockevents//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/cmos//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/cpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/irq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/irq/show//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/isa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/msi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/smp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/smp/idle//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/strncpy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/strncpy/from//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/strnlen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/generic/time//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/genwqe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/genwqe/platform//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/genwqe/platform/error//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/gfs2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/gfs2/fs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/gfs2/fs/locking//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/gigaset//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/gpio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/gpiolib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/gpiolib/fastpath//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/grace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/gro//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hangcheck//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hardened//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hardened/usercopy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hardirqs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hardirqs/sw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hardlockup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/has//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/has/ioport//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hash//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hash/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/arch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/arch/jump//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/arch/mmap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/arch/mmap/rnd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/arch/seccomp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/arch/soft//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/arch/transparent//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/bootmem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/bootmem/info//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/context//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/debug//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/dynamic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/dynamic/ftrace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/dynamic/ftrace/with//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/ebpf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/efficient//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/efficient/unaligned//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/fast//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/ftrace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/ftrace/mcount//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/function//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/function/graph//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/gcc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/hardened//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/hardened/usercopy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/hardlockup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/hardlockup/detector//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/hw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/ima//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/ioremap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/irq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/irq/time//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/kprobes//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/kprobes/on//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/kvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/kvm/irq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/kvm/vcpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/kvm/vcpu/async//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/ld//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/ld/dead//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/ld/dead/code//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/ld/dead/code/data//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/memory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/memoryless//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/mod//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/mod/arch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/nmi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/pcspkr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/perf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/perf/events//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/perf/user//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/perf/user/stack//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/regs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/regs/and//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/regs/and/stack//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/regs/and/stack/access//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/reliable//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/setup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/setup/per//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/setup/per/cpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/syscall//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/virt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/virt/cpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/have/virt/cpu/accounting//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hdlc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/headers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hid/battery//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hid/logitech//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hid/picolcd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/high//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/high/res//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hisax//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hisax/16//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hisax/avm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hisax/avm/a1//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hisax/bkm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hisax/fritz//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hisax/hfc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hisax/max//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hisax/no//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hisax/sct//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hist//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hmm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hotplug//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hotplug/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hotplug/pci/rpa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hsa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hsa/amd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hugetlb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hugetlb/page//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hugetlb/page/size//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hv/perf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hvc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hw/random//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hwlat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hwmon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hwpoison//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hysdn//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/hz//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/i2c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/i2c/designware//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/i2c/diolan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/i2c/helper//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/i2c/mux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/i2c/parport//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/i2c/pca//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/i2c/tiny//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/i40e//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/i6300esb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/i8253//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ibm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ice//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/icplus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/idle//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/idle/page//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ieee802154//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/igb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/illegal//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/illegal/pointer//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/appraise//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/arch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/default/hash//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/lsm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/measure//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/measure/pcr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/read//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/secure//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/secure/and//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/secure/and/or//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/secure/and/or/trusted//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/sig//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/trusted//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ima/write//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inet/diag//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inet/esp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inet/mptcp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inet/raw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inet/sctp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inet/tcp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inet/udp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inet/xfrm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inet6//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inet6/esp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inet6/xfrm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/infiniband//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/infiniband/addr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/infiniband/addr/trans//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/infiniband/bnxt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/infiniband/ipoib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/infiniband/on//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/infiniband/on/demand//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/infiniband/user//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/infiniband/virt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/init//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/init/env//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/init/env/arg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/initramfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inline//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inline/read//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inline/read/unlock//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inline/spin//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inline/spin/unlock//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inline/write//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inline/write/unlock//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/inotify//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/input//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/input/ati//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/input/ff//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/input/gpio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/input/gpio/rotary//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/input/keyspan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/input/mousedev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/input/mousedev/screen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/input/pwm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/integrity//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/integrity/asymmetric//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/integrity/platform//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/integrity/trusted//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/intel/xway//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/interval//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/io//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/io/event//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/iommu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/iommu/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/iommu/default/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/iosched//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/advanced//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/fib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/fib/trie//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/mroute//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/mroute/multiple//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/multiple//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/nf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/nf/arp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/nf/match//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/nf/target//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/pimsm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/route//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/set//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/set/bitmap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/set/hash//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/set/list//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/vs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/vs/mh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/vs/mh/tab//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/vs/pe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/vs/proto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/vs/proto/ah//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/vs/sh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/vs/sh/tab//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip/vs/tab//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip6//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip6/nf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip6/nf/match//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ip6/nf/target//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipmi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipmi/device//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipmi/panic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipmi/plat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ippp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipv6//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipv6/mroute//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipv6/mroute/multiple//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipv6/multiple//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipv6/ndisc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipv6/optimistic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipv6/pimsm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipv6/route//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipv6/router//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ipv6/sit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ir//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ir/gpio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ir/imon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ir/jvc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ir/mce//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ir/mce/kbd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ir/nec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ir/pwm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ir/rc5//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ir/rc6//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ir/sanyo//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ir/serial//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ir/sony//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/irq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/irq/all//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/irq/bypass//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/irq/forced//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/isa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/isa/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/iscsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/iscsi/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/iscsi/target//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/isdn//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/isdn/capi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/isdn/capi/capidrv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/isdn/drv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/isdn/drv/avmb1//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/isdn/ppp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/isdn/tty//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/iso9660//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ixgbe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ixgbevf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/jump//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/jump/label//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/jump/label/feature//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kallsyms//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kallsyms/base//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/karma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kdb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kdb/continue//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kdb/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kexec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/keyboard//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/keys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kgdb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kgdb/honour//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kgdb/serial//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kprobe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kprobes//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kprobes/on//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kunit/all//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kunit/example//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kvm/book3s//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kvm/book3s/64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/kvm/book3s/hv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/l2tp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lcd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lcd/class//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/led//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/led/trigger//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/leds//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/leds/brightness//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/leds/brightness/hw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/leds/lp55xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/leds/trigger//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/leds/trigger/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/linear//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/linear/ranges//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/linear/ranges/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/liquidio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/list//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/list/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/load//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/load/ppc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lock//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lock/debugging//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lock/down//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lock/spin//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lock/spin/on//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lock/torture//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lockd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lockdep//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lockup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/log//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/log/buf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/log/cpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/log/cpu/max//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/log/cpu/max/buf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/logitech//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/logo//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/logo/linux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/loopback//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lsi/et1011c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lsm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lsm/mmap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lsm/mmap/min//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lwtunnel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lxt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lz4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/lzo//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/macintosh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/magic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/magic/sysrq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/magic/sysrq/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mantis//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/marvell//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/marvell/10g//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/max//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/max/raw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/maxlinear//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/md//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mdio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mdio/bcm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mdio/hisi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mdio/mscc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/media//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/media/altera//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/media/analog//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/media/analog/tv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/media/camera//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/media/cec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/media/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/media/digital//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/media/digital/tv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/media/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/media/radio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/media/subdrv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/media/tuner//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/media/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/megaraid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mem/soft//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/memcg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/memcpy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/memcpy/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/memfd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/memory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/memstick//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/memstick/jmicron//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/memstick/realtek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/memstick/tifm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/message//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/message/loglevel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mfd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mfd/sm501//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mhi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mhi/bus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mhi/bus/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/micrel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/microchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/microchip/t1//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/microsemi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/minix//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/misc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/misc/rtsx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/misdn//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mlx4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mlx4/en//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mlx5//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mlx5/cls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mlx5/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mlx5/core/en//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mlx5/en//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mlx5/sf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mlx5/sw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mlx5/tc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mlx5/vdpa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mlxsw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mlxsw/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mlxsw/spectrum//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mmc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mmc/block//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mmc/realtek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mmc/ricoh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mmc/sdhci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mmc/tifm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mmc/via//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mmu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mmu/gather//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mmu/gather/merge//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mmu/gather/page//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mmu/gather/rcu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mmu/gather/rcu/table//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mmu/gather/table//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/module//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/module/force//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/module/rel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/module/sig//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/module/srcversion//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/modules//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/modules/tree//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/modules/use//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/modules/use/elf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mouse//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mouse/elan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mouse/elan/i2c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mouse/ps2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mouse/ps2/elantech//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mouse/ps2/synaptics//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mouse/synaptics//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mpls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mprofile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mptcp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mptcp/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mq/iosched//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/msdos//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/msi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/msi/bitmap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mspro//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mtd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mtd/cfi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mtd/map//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mtd/map/bank//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mtd/map/bank/width//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mtd/of//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mtd/powernv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mtd/ubi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mtd/ubi/beb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mtd/ubi/wl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mutex//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mutex/spin//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/mutex/spin/on//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/n//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/national//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/need//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/need/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/need/dma/map//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/need/multiple//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/need/per//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/need/per/cpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/need/per/cpu/embed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/need/per/cpu/embed/first//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/need/sg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/need/sg/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/act//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/act/tunnel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/cls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/drop//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/ematch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/flow//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/ip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/ipgre//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/key//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/l3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/l3/master//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/mpls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/packet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/poll//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/ptp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/rx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/rx/busy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/sch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/sch/fq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/sch/mqprio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/sock//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/tc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/tc/skb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/team//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/team/mode//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/udp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/net/vendor//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/netconsole//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/netdev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/netdev/addr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/netdev/addr/list//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/netfilter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/netfilter/family//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/netfilter/netlink//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/netfilter/netlink/glue//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/netfilter/xt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/netfilter/xt/match//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/netfilter/xt/target//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/netlink//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/network//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/network/phy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/netxen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/new//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/conntrack//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/conntrack/netbios//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/ct//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/ct/netlink//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/ct/proto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/defrag//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/dup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/flow//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/flow/table//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/log//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/nat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/nat/snmp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/reject//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/socket//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/tables//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nf/tproxy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfp/app//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfp/app/abm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfs/acl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfs/use//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfs/use/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfs/v3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfs/v4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfs/v4/1//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfs/v4/1/implementation//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfs/v4/1/implementation/id//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfs/v4/security//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfsd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfsd/v2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfsd/v3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfsd/v4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nfsd/v4/security//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nft//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nft/bridge//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nft/dup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nft/fib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nft/flow//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nft/fwd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nft/reject//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nls/codepage//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nls/iso8859//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nls/koi8//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nls/mac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nmi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/no//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/no/hz//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nodes//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nonstatic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nop//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nouveau//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nouveau/debug//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/numa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/numa/balancing//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/numa/balancing/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/numa/keep//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nvdimm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nvme//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nvme/target//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/nvme/verbose//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ocxl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/of//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/of/early//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/of/reserved//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/oid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/old//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/opal//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/openvswitch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/osf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/osnoise//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/overlay//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/packet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/page//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/panic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/panic/on//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/panic/on/oops//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/papr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/parport//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/parport/not//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/partition//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pata//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pata/of//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pci/msi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pci/msi/arch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pcie//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pcieaer//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pcieaspm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pcspkr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/perf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/persistent//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pgtable//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/phys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/phys/addr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/phys/addr/t//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/physical//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pkcs7//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pkcs7/message//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/plugin//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pm/generic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pm/generic/domains//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pm/sleep//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pm/sleep/smp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pm/sleep/smp/nonzero//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pmu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pnfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pnfs/file//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pnfs/flexfile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/posix//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/posix/mqueue//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/power//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/power/reset//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/powernv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/powernv/op//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/64k//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/barrier//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/book3s//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/copro//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/disable//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/dt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/dt/cpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/emulated//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/have//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/have/pmu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/icp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/ics//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/indirect//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/mem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/msi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/of//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/of/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/p7//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/perf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/radix//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/radix/mmu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/rtas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/secure//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/secvar//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/smp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/smp/muxed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/std//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/subpage//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/transactional//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/udbg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc/xive//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc64/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc64/supports//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppc64/supports/memory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ppp/sync//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pps//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pps/client//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/preempt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/prevent//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/prevent/firmware//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/prime//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/print//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/print/quota//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/print/stack//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/printk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/printk/safe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/printk/safe/log//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/printk/safe/log/buf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/probe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/proc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/proc/page//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/proc/pid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/proc/vmcore//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/proc/vmcore/device//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pseries//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/psi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/psi/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pstore//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pstore/compress//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pstore/deflate//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pstore/deflate/compress//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ptp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ptp/1588//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/pwm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/qed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/qfmt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/qsemi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/quota//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/quota/netlink//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/radio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/raid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/raid6//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/raid6/pq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/random//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/random/trust//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rational//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rational/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/raw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rc/ati//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rcu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rcu/cpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rcu/cpu/stall//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rcu/need//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rcu/nocb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rcu/stall//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rdma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/realtek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/reed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/reed/solomon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/regmap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/renesas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/resource//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/resource/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rfkill//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rh/kabi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rh/kabi/size//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rh/kabi/size/align//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rhel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ring//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ring/buffer//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ring/buffer/allow//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rmi4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rmi4/2d//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rmi4/f03//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rockchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rpcsec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rpcsec/gss//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rt/group//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rtas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rtas/error//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rtc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rtc/drv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rtc/drv/ds3232//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rtc/drv/m41t80//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rtc/hctosys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rtc/i2c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rtc/i2c/and//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rtc/intf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rtc/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rtc/lib/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rtc/mc146818//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/runtime//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/runtime/testing//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rwsem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rwsem/spin//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/rwsem/spin/on//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sata//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sata/ahci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sata/mobile//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sata/mobile/lpm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scf/torture//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sched//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sched/omit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sched/omit/frame//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/bnx2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/bnx2x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/chelsio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/cxgb4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/dh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/dh/hp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/fc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/ibmvfc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/ipr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/iscsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/mpt2sas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/mpt2sas/max//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/mpt3sas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/mpt3sas/max//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/proc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/qla//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/sas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/sas/host//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/scan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/spi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/scsi/srp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sctp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sctp/cookie//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sctp/cookie/hmac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sctp/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sctp/default/cookie//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sctp/default/cookie/hmac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sdio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/seccomp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/section//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/section/mismatch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/section/mismatch/warn//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/security//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/security/network//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/security/selinux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/security/selinux/avc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/security/selinux/checkreqprot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/security/selinux/sid2str//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/security/selinux/sid2str/cache//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/security/selinux/sidtab//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/security/selinux/sidtab/hash//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/security/writable//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/select//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/select/memory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sensors//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sensors/lis3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sensors/ntc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serial//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serial/8250//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serial/8250/many//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serial/8250/nr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serial/8250/runtime//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serial/8250/share//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serial/arc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serial/arc/nr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serial/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serial/of//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serial/uartlite//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serial/uartlite/nr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serio/altera//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/serio/arc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sfc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sfc/mcdi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sfc/siena//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sfc/siena/mcdi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sgetmask//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sgi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sgl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/shuffle//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/shuffle/page//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/simple//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/skb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/slab//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/slab/freelist//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/slip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/slub//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/slub/cpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/slub/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sms//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sms/sdio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sms/siano//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sms/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/smsc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/ac97//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/ac97/power//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/ac97/power/save//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/atiixp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/cs46xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/cs46xx/new//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/ctl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/ctl/fast//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/dynamic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/emu10k1//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/es1968//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/firewire//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/hda//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/hda/prealloc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/jack//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/jack/input//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/maestro3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/max//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/mpu401//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/opl3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/opl3/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/oxygen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/pcm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/proc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/seq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/seq/hrtimer//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/seq/midi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/sequencer//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/synth//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/usb/caiaq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/verbose//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/via82xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/snd/vx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sock//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sock/cgroup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sock/validate//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/soft//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/softlockup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/solaris//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/solaris/x86//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sound//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sound/oss//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sound/oss/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/spapr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/spapr/tce//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sparse//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sparsemem//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sparsemem/vmemmap//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/split//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/split/ptlock//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/squashfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/squashfs/decomp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/squashfs/decomp/multi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/squashfs/file//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/squashfs/fragment//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/squashfs/fragment/cache//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ssb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/stack//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/stackinit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/stackinit/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/stackprotector//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/stacktrace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/stream//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/strict//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/strip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/strip/asm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sun//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sunrpc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sunrpc/xprt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/suspend//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/symbolic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/syn//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sync//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/synclink//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sys/supports//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sysctl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sysctl/exception//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sysctl/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sysfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/system//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/system/blacklist//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/system/blacklist/hash//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/system/data//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/system/extra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/system/extra/certificate//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/system/trusted//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/sysvipc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tablet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tablet/serial//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tablet/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/target//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/task//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/task/delay//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/task/io//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tasks//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tasks/rcu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tasks/rude//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tasks/trace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tcg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tcg/tis//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tcg/tis/i2c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tcg/tis/st33zp24//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tcm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tcp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tcp/cong//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/teranetics//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/test//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/test/list//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/textsearch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/thermal//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/thermal/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/thermal/default/gov//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/thermal/default/gov/step//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/thermal/emergency//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/thermal/emergency/poweroff//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/thermal/emergency/poweroff/delay//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/thermal/gov//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/thermal/gov/fair//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/thermal/gov/step//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/thread//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tick//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tifm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tigon3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/time//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/time/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/timerlat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tipc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tipc/media//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tmpfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tmpfs/posix//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/torture//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/touchscreen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/touchscreen/wacom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/trace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/trace/irqflags//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tracer//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tracer/max//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tracing//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/transparent//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/transparent/hugepage//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tree//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/trusted//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/ttpci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tun//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tun/vnet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/tun/vnet/cross//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/typec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/typec/dp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/typec/mux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/udf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/uio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/uio/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/uio/pdrv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/unix//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/unix98//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/unixware//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/uprobe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ali//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/announce//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/announce/new//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/arch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/arch/has//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/autosuspend//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ehci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ehci/hcd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ehci/hcd/ppc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ehci/root//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ehci/root/hub//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ehci/tt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ezusb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/gspca//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/gspca/ov534//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/gspca/xirlink//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/hsic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/hwa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/leds//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/leds/trigger//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/net/ax88179//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/net/cdc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/net/cdc/subset//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/net/cx82310//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/net/qmi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/net/rndis//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ohci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ohci/big//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ohci/big/endian//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ohci/hcd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ohci/hcd/ppc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ohci/hcd/ppc/of//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/ohci/little//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/pulse8//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/pwc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/pwc/input//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/rainshadow//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/role//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/serial//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/serial/cypress//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/serial/digi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/serial/edgeport//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/serial/ftdi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/serial/keyspan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/serial/kobil//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/serial/mct//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/serial/mos7715//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/serial/safe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/serial/xsens//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/sierra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/storage//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/storage/cypress//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/storage/ene//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/uhci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/video//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/video/class//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/video/class/input//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/wusb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb/xhci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/usb4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/use//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/use/percpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/use/percpu/numa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/use/percpu/numa/node//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/user//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/uts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/uvc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/uwb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vdpa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vdpa/sim//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vfat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vfio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vfio/iommu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vfio/iommu/spapr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vfio/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vfio/spapr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vga//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vga/arb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vga/arb/max//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vhost//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vhost/cross//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vhost/cross/endian//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/video//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/video/au0828//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/video/cx18//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/video/cx231xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/video/cx88//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/video/em28xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/video/fb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/video/ir//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/video/pvrusb2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/video/saa7134//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/video/saa7146//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/video/tm6000//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/videobuf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/videobuf/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/videobuf2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/videobuf2/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/virt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/virt/cpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/virt/cpu/accounting//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/virtio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/virtio/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/virtio/vsockets//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vitesse//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vlan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vlan/8021q//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vm/event//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vsockets//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vt/console//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vt/hw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/vt/hw/console//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/want//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/want/dev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/watchdog//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/watchdog/handle//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/watchdog/handle/boot//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/watchdog/open//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/x509//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/x509/certificate//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/xarray//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/xdp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/xdp/sockets//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/xfrm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/xfrm/sub//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/xfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/xfs/posix//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/xilinx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/xmon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/xmon/default//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/xmon/default/ro//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/xor//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/xz//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/xz/dec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/yenta//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/yenta/ene//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/zlib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/zone//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/zram//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/config/zsmalloc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/crypto/internal//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/drm-backport//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/drm-backport/linux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/drm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/drm/bridge//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/drm/display//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/drm/i2c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/drm/ttm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/arm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/bus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/clk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/clock//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/display//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/gpio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/i2c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/iio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/iio/adc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/input//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/interrupt-controller//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/leds//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/mailbox//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/media//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/memory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/mfd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/mips//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/mux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/phy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/pinctrl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/power//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/pwm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/regulator//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/reset//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/soc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/sound//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/spmi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/thermal//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/dt-bindings/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/generated//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/generated/uapi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/generated/uapi/linux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/keys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/kvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/amba//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/avf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/bcma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/byteorder//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/can//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/can/dev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/can/platform//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/ceph//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/clk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/crush//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/decompress//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/dsa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/extcon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/firmware//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/firmware/cirrus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/firmware/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/firmware/meson//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/fpga//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/fsl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/fsl/bestcomm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/gpio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/hsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/iio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/iio/accel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/iio/adc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/iio/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/iio/dac//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/iio/frequency//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/iio/gyro//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/iio/imu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/iio/magnetometer//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/iio/timer//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/input//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/irqchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/isdn//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/lockd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mailbox//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/abx500//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/arizona//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/da9052//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/da9055//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/da9062//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/da9063//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/da9150//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/mt6323//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/mt6397//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/pcf50633//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/samsung//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/syscon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/wm831x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/wm8350//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mfd/wm8994//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mlx4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mlx5//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mmc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mtd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/mux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/net/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/netfilter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/netfilter/ipset//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/netfilter_arp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/netfilter_bridge//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/netfilter_ipv4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/netfilter_ipv6//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/pcs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/perf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/phy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/phy/tegra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/pinctrl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/platform_data//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/platform_data/media//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/platform_data/x86//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/power//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/qed//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/raid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/regulator//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/remoteproc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/reset//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/rpmsg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/rtc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/sched//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/soc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/soc/actions//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/soc/brcmstb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/soc/dove//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/soc/mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/soc/qcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/soc/renesas//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/soc/samsung//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/soc/sunxi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/soc/ti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/soundwire//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/spi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/ssb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/sunrpc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/ulpi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/unaligned//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/uwb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/linux/wimax//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/math-emu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/media//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/media/davinci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/media/drv-intf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/media/i2c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/media/tpg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/memory//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/misc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/net/9p//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/net/bluetooth//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/net/caif//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/net/iucv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/net/mana//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/net/netfilter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/net/netfilter/ipv4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/net/netfilter/ipv6//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/net/netns//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/net/nfc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/net/phonet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/net/sctp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/net/tc_act//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/pcmcia//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/ras//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/rdma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/scsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/scsi/fc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/soc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/soc/arc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/soc/at91//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/soc/bcm2835//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/soc/brcmstb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/soc/fsl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/soc/fsl/qe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/soc/imx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/soc/mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/soc/nps//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/soc/qcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/soc/rockchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/soc/sa1100//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/soc/tegra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/sound//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/sound/ac97//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/sound/sof//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/sound/sof/ipc4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/target//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/target/iscsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/trace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/trace/events//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/asm-generic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/drm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/android//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/byteorder//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/caif//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/can//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/cifs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/dvb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/genwqe//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/hdlc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/hsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/iio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/isdn//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/mmc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/netfilter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/netfilter/ipset//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/netfilter_arp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/netfilter_bridge//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/netfilter_ipv4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/netfilter_ipv6//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/nfsd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/raid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/sched//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/spi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/sunrpc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/tc_act//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/tc_ematch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/linux/wimax//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/misc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/mtd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/rdma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/rdma/hfi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/scsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/scsi/fc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/sound//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/sound/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/sound/intel/avs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/sound/sof//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/video//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/uapi/xen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/vdso//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/video//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/xen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/xen/arm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/xen/interface//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/xen/interface/hvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/include/xen/interface/io//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/init//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/ipc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/bpf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/bpf/preload//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/bpf/preload/iterators//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/cgroup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/debug//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/debug/kdb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/dma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/events//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/gcov//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/irq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/kcsan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/livepatch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/locking//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/power//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/printk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/rcu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/sched//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/time//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/kernel/trace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/842//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/crypto//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/dim//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/fonts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/kunit//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/livepatch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/lz4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/lzo//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/math//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/mpi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/pldmfw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/raid6//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/raid6/test//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/reed_solomon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/vdso//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/xz//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/zlib_deflate//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/zlib_dfltcc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/zlib_inflate//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/lib/zstd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/mm/damon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/mm/kasan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/6lowpan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/802//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/8021q//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/9p//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/appletalk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/atm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/ax25//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/batman-adv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/bluetooth//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/bluetooth/bnep//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/bluetooth/cmtp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/bluetooth/hidp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/bluetooth/rfcomm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/bpf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/bpfilter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/bridge//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/bridge/netfilter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/caif//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/can//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/ceph//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/dcb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/dccp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/dccp/ccids//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/decnet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/decnet/netfilter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/dns_resolver//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/dsa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/ethernet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/ethtool//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/hsr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/ieee802154//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/ieee802154/6lowpan//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/ife//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/ipv4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/ipv4/bpfilter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/ipv4/netfilter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/ipv6//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/ipv6/ila//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/ipv6/netfilter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/iucv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/kcm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/key//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/l2tp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/l3mdev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/lapb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/llc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/mac80211//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/mac802154//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/mpls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/mptcp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/ncsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/netfilter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/netfilter/ipset//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/netfilter/ipvs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/netlabel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/netlink//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/netrom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/nfc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/nfc/hci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/nfc/nci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/nsh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/openvswitch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/packet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/phonet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/psample//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/qrtr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/rds//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/rfkill//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/rose//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/rxrpc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/sched//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/sctp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/smc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/strparser//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/sunrpc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/sunrpc/auth_gss//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/sunrpc/xprtrdma//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/switchdev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/tipc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/tls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/unix//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/vmw_vsock//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/wimax//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/wireless//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/x25//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/xdp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/net/xfrm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/auxdisplay//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/bpf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/configfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/connector//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/hidraw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/hw_breakpoint//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/kdb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/kfifo//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/kobject//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/kprobes//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/livepatch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/mei//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/mic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/mic/mpssd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/nitro_enclaves//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/qmi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/rpmsg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/seccomp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/timers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/trace_events//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/trace_printk//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/uhid//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/v4l//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/vfio-mdev//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/vfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/samples/watchdog//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/basic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/clang-tools//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/coccinelle//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/coccinelle/api//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/coccinelle/api/alloc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/coccinelle/api/debugfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/coccinelle/free//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/coccinelle/iterators//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/coccinelle/locks//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/coccinelle/misc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/coccinelle/null//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/coccinelle/tests//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/dtc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/dtc/include-prefixes//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/dtc/libfdt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/gcc-plugins//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/gdb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/gdb/linux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/genksyms//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/lxdialog//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests/auto_submenu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests/choice//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests/choice_value_with_m_dep//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests/err_recursive_dep//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests/err_recursive_inc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests/inter_choice//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests/new_choice_with_dep//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests/no_write_if_dep_unmet//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests/preprocess//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests/preprocess/builtin_func//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests/preprocess/circular_expansion//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests/preprocess/escape//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests/preprocess/variable//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/kconfig/tests/rand_nested_choice//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/ksymoops//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/mod//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/package//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/selinux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/selinux/genheaders//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/scripts/selinux/mdp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security/apparmor//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security/bpf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security/integrity//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security/integrity/evm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security/integrity/ima//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security/keys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security/keys/encrypted-keys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security/keys/trusted-keys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security/loadpin//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security/selinux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security/selinux/include//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security/smack//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security/tomoyo//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/security/yama//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/ac97//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/aoa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/aoa/codecs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/aoa/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/aoa/fabrics//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/aoa/soundbus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/aoa/soundbus/i2sbus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/arm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/atmel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/core/oss//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/core/seq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/core/seq/oss//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/drivers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/drivers/mpu401//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/drivers/opl3//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/drivers/opl4//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/drivers/pcsp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/drivers/vx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/firewire//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/firewire/bebob//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/firewire/dice//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/firewire/digi00x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/firewire/fireface//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/firewire/fireworks//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/firewire/motu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/firewire/oxfw//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/firewire/tascam//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/hda//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/hda/ext//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/i2c//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/i2c/other//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/isa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/isa/ad1816a//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/isa/ad1848//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/isa/cs423x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/isa/es1688//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/isa/galaxy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/isa/gus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/isa/msnd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/isa/opti9xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/isa/sb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/isa/wavefront//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/isa/wss//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/mips//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/oss//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/oss/dmasound//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/parisc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/ac97//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/ali5451//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/asihpi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/au88x0//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/aw2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/ca0106//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/cs46xx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/cs5535audio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/ctxfi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/echoaudio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/emu10k1//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/hda//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/ice1712//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/korg1212//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/lola//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/lx6464es//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/mixart//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/nm256//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/oxygen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/pcxhr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/riptide//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/rme9652//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/trident//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/vx222//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pci/ymfpci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pcmcia//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pcmcia/pdaudiocf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/pcmcia/vx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/ppc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/sh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/adi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/amd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/amd/acp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/amd/ps//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/amd/raven//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/amd/renoir//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/amd/rpl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/amd/vangogh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/amd/yc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/atmel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/au1x//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/bcm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/cirrus//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/codecs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/dwc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/fsl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/generic//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/hisilicon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/img//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/intel/atom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/intel/atom/sst//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/intel/avs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/intel/avs/boards//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/intel/boards//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/intel/catpt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/intel/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/intel/keembay//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/intel/skylake//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/jz4740//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/kirkwood//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/mediatek/common//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/mediatek/mt2701//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/mediatek/mt6797//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/mediatek/mt8173//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/mediatek/mt8183//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/meson//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/mxs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/pxa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/qcom//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/qcom/qdsp6//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/rockchip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/samsung//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/sh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/sh/rcar//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/sof//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/sof/amd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/sof/imx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/sof/intel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/sof/mediatek//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/sof/mediatek/mt8186//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/sof/mediatek/mt8195//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/sof/xtensa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/spear//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/sprd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/sti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/stm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/sunxi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/tegra//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/ti//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/txx9//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/uniphier//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/ux500//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/xilinx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/soc/xtensa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/sparc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/spi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/synth//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/synth/emux//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/usb/6fire//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/usb/bcd2000//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/usb/caiaq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/usb/hiface//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/usb/line6//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/usb/misc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/usb/usx2y//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/virtio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/x86//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/sound/xen//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/accounting//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/arch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/arch/x86//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/arch/x86/intel_sdsi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/bpf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/bpf/bpftool//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/bpf/bpftool/Documentation//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/bpf/resolve_btfids//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/bpf/runqslower//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/build//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/build/feature//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/build/tests//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/build/tests/ex//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/cgroup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/firewire//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/gpio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/hv//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/iio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/include//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/include/tools//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/io_uring//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/kvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/kvm/kvm_stat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/laptop//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/laptop/dslm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/laptop/freefall//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/leds//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/lib/api//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/lib/bpf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/lib/lockdep//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/lib/perf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/lib/perf/Documentation//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/lib/subcmd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/lib/traceevent//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/lib/traceevent/Documentation//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/lib/traceevent/plugins//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/objtool//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/pci//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/pcmcia//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/Documentation//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/arch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/arch/arm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/arch/arm64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/arch/csky//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/arch/mips//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/arch/powerpc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/arch/s390//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/arch/sh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/arch/sparc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/arch/x86//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/arch/xtensa//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/scripts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/scripts/perl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/perf/scripts/perl/Perf-Trace-Util//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/acpi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/acpi/tools//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/acpi/tools/acpidbg//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/acpi/tools/acpidump//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/acpi/tools/ec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/cpupower//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/cpupower/bench//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/cpupower/debug//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/cpupower/debug/i386//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/cpupower/debug/kernel//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/cpupower/debug/x86_64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/pm-graph//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/x86//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/x86/intel-speed-select//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/x86/turbostat//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/power/x86/x86_energy_perf_policy//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/scripts//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/spi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/nvdimm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/radix-tree//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/scatterlist//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/android//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/android/ion//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/bpf//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/bpf/bpf_testmod//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/breakpoints//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/capabilities//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/cgroup//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/core//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/cpu-hotplug//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/cpufreq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/damon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/drivers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/drivers/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/drivers/net/bonding//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/drivers/net/team//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/efivarfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/exec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/filesystems//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/firmware//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/fpu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/ftrace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/futex//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/futex/functional//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/gpio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/ia64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/intel_pstate//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/ipc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/kcmp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/kexec//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/kmod//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/kvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/lib//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/livepatch//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/locking//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/media_tests//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/membarrier//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/memfd//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/memory-hotplug//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/mount//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/mqueue//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/net//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/net/forwarding//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/net/mptcp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/netfilter//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/nsfs//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/alignment//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/benchmarks//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/cache_shape//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/copyloops//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/dscr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/eeh//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/math//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/mce//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/mm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/papr_attributes//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/pmu//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/pmu/ebb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/pmu/sampling_tests//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/primitives//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/ptrace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/signal//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/stringloops//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/switch_endian//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/syscalls//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/tm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/powerpc/vphn//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/prctl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/proc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/pstore//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/ptp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/ptrace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/rcutorture//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/rcutorture/formal//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/rseq//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/rtc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/seccomp//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/sgx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/sigaltstack//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/size//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/sparc64//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/sparc64/drivers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/splice//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/static_keys//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/sync//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/sysctl//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/tc-testing//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/tdx//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/timens//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/timers//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/tpm2//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/uevent//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/user//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/vDSO//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/watchdog//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/x86//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/selftests/zram//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/testing/vsock//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/thermal//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/thermal/tmon//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/usb//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/usb/ffs-aio-example//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/usb/ffs-aio-example/multibuff//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/usb/ffs-aio-example/multibuff/host_app//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/usb/ffs-aio-example/simple//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/usb/ffs-aio-example/simple/host_app//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/usb/usbip//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/usb/usbip/libsrc//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/usb/usbip/src//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/virtio//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/virtio/ringtest//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/virtio/vhost_test//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/virtio/virtio-trace//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/vm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/tools/wmi//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/usr//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/virt//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/virt/kvm//usr/src/kernels/4.18.0-552.3.1.el8.ppc64le/virt/lib/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mcpu=power8 -mtune=power8 -funwind-tables -fstack-clash-protectioncpioxz3Tppc64le-redhat-linux-gnu                                   !  "# $ %&  ' ()directoryLinux make config build file, ASCII textASCII textmakefile script, ASCII textemptyOS/2 REXX batch file, ASCII textAlgol 68 source, ASCII textC source, ASCII textC source, UTF-8 Unicode textUTF-8 Unicode textOS/2 REXX batch file, UTF-8 Unicode textISO-8859 textPOSIX shell script, ASCII text executableELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=30dcf3787b135d36371457aabb1f89d116811509, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=b693ded46b5d11151251f67ec1f76cb954c73a0b, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=ccdfcc95f11ebec4f393027d87cc4303310d9e48, strippedPython script, ASCII text executablePerl script text executableBourne-Again shell script, ASCII text executableELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=36edc582462599f068c687812f2fba6900f6be8a, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=60b9a383bcba2ab176e856c051acc9aa5933e4e3, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=1dba9dd0b1d0b864bd97660907b3e07ca9eb42ad, strippedC++ source, ASCII textexported SGML document, ASCII textELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=8c7abe8a84035656aac0229f7986144f8bd56402, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=25f03d148e41a706ca27c1bb3d89898255cfa27f, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=733f7748e42f7817d0307ab6eb858eb7a2620c18, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=13586708be2d216345638536e4da6a8e7b6ec835, strippedXML 1.0 document, ASCII textawk script, ASCII text executableassembler source, ASCII textELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=57eb630eb139792961c7f511747ac65fb6046458, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=7bc6a0c0690ccbed12a767d8f520cb2d31afc125, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=896f7832bf4a460728bf3b2b465f93731d954692, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=5e5653fdb78b7464e59f389941b577ca7b783144, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=5a8738c6aca2713db25260a1870a25aca0d96c41, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=5fcc1dd89ef5311db79415e43657236e0acb68ae, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=427203d7a6a282b30fad895b3f2275904cf0a346, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=8cfd85f30194831093d02fffeac9531bb5248eb0, strippedASCII text, with very long linesautomake makefile script, ASCII textbisonelfutils-libelf-develflexgccmakeopenssl-develutf-8f28a78827a14fd8be5191ec30794fceb76a2c8da8413d83d879cd5a0e9308bd5? 7zXZ ݕ!`m] b2u jӫ`(y0?^cw b5o2D{|b oKZ{Tʆ~ o.]W,y9Hh0+Ǎ<_R4x6yHQkbcUخ ^{j|r7V ULa+1 XCh*0妜F~n&ḵj9toz Z:wƩA@ 't1OrTz6EeVz*e'xeʸS%ޢnd0Dzq#t+i῰/FR@+Ľ< DjDE1|&m3}II99@~h"рT Z~B{o0eB(򈭺* ?o ֎Ɗ 苍˥߭=*لJXfU RBt}{Z40bb+Jǩ8 9IL[v*:W@=lEǻh]fYm ,&j91!118B4l7P~-%152Ʌ2[&L&pH04v4ͣN?n+ Dz`fdS~%fۀ!3YWCJs"YTBy: x[w(\/D*{o A~ًh@0B- +N_Uc@y$_ቩh:H<- ٮ'ٖC86yW-Jl~A0NϨx^س^9[!}'3q؉yX@QY2P|nz֢{="[@gysxSDIN]¢w׷ Oip< no5Ġs{0,w6e>jP!P%%OTZ k_4`@Yd)=p/mM84\sh Zeh2k:KW&ԯ̨eLqj9OHjK"c{>pi llG“R2=-O _?0OW]e̽A2K"*"Ma"b v}#.!] hv af77l٩ƆjtcoW؋ѭ$nw14ϰzQtIY*ȼي,+̏0S[ gXt/ N.^^22-bf>ͫe"UG7ln'ɜ>#sbMbcጏ ^W5Q !'c}k[t% (4VE @Ua\Uy[EI,[Z9S8(VG  38kJ)4 R[])`Q;sݍH$uSؗ{oɍP٪7lEN QhIRZIa٠v9ȣﵳzxg47pH\ qфs*D`f1]+]8ƣZ372ȫKG8-$xIabWTd !:S7s-'Ko .CE?dy2yR,97"%+x.)cFȕ_Af6>::)0 Џ-U4{DYV=s~-WrZׯ}%ẇk]! vY⻮0DҬ\xuhE4\ȡ7up%)E!r*3X!؜98ӕi56v-BXc9vj%3-#{s*am1tj5xV it(y]f@pna[_D˻> !"Ya yHk4AOk\Ivj'@l8ͼ.!OWaJQrD@̈́>\,fE=Y;{HYg M.tn-u[.R봚L@(6~|ol 5gbxCojELP%.;+d^J*U0|i{fN}:4U,.WH&cȒa8 @I!ZEI9H7nz̰͵dTU "$.wk$M :[sgacϋ~aCQvr88ҰLWa{y-%1WbEƫ”tru:K#/ol{sL4x# (*Oy[JHz֮G_M+g4؝$`,h* tuݼ.s[l\'erM3*֐u~ ϫʴ=lHixá'W>.ak'ya7aTTt yF w}h]RU^F̒vyr_OwP8y-G˽fw- ΤX>TGKEJO!pS49L2DM 5H݆] N/ Ɍ ]-:> t~-Nf Q逹dVqd:br=nm,&Y'-gDV<m+JK% /L#i~c܉1Zd $h] >v\VTOBx$QA,{){Qt֖v ^^biR vuad0곱kBym_'Wc!|VT0Z{hO-*'֯E1r 72ik',u)Ⱥϝa3; *D դ/fM&\PELl'z1>TǣK} /lAޅi؄ͅN)6晢$.`~aϬz6wLrI搒_\27؜Pkw!\zXVxY Aq'}ّ쨔WTn~4TA+ vgy |  &6fyfVfD{X5ՔA{|^ڪfNu$۝&R[^4ѐ>| 0T6Ob'YP:OTs]# nE\r5dXұɵ=~*Yϸ֡ 16Ͼ3O~ [a ,K.<'An0y1={Ea1F]KL_d Ù,}@̷q:)C-?)o>U钋#(z#;*ʛG}92)u9aߙjp֞[M'cm vs:C»N4j)0Ģ$/$T~' ָ>v]_@E4T!R %_(Y9 vY.Fh5 *–B٪e86`k>[7M;e8N)yEꆍׁ| ;Y-B'l)Mvzcł0f!c-@6č2UgKMuY,էDZPCS^K"]~I'>&W^V&D@n5,?~4U-槚!9jY l^TT1Y.7wg`v V3*̭" λ؈zMV@=¨{ezw[7TK1-7-0TM <6( UiˮN/{hwaZG6Yj \c]ፓU7)*,+I:Mȏ;ihmcX"8dHU:,gVkũe{]fJ`?+.`q "ps?In z>C=JA}^0w(EZɍE_=Fj xUg)'+Ὰqd`ˏaQ3F}0[ $~ejLq|kr9 e@+6SR/t`Y,fq Užyb|&dQ}43 g{1@ŤL<>T#VLW!Ţ-IV<`wJjS~_(tf؆ߐGݞw~0Ѝ4P߹&=EOڐJ?cp0IWȐ4+-1;y]gw^sN2(E#_>л:dk3@8{yɟ`b$kA,S @r& Rvӑ3%M0VZH͝G) R<]{&d?<`qyeBI\+b lp-Nx<-NsyV<: Vzkޢ8#O#'y#"BFb# KU6;Dz|tNÔOB¦/ [GlPk_\ 'azE>"I#x] `"b)/ZqmwW t^n5t<`N6%գb= Y<1@!yw `yFpdN^ǡ8VvỦRn@ӫyV'9*jbT.N EOE ؇qUs`#ln?d_nKT _s{\ƌ(esܗ+6A' K$mwE͂NQU8NRg*PE%@6Jy q{w|n3aPyce1j9u;㏳Dg!C_hj?m]$0[:~_v 4 ÓEFj?Qv:ru8S9xZǺ91d1#?,7w_:90<7HiX\T$>HbRmM%Ph嚶s \Qx~<f"^sy%#CLA[F|u ($dt`mu?d5 XrW\E>wcIb^:&sUZ~<:b4Av ˲/wLGq\lj+Љ@6迨v7~5x&?%Pr缫i1dj㰔 iQ)F3,BGd4t ΍g Qrr ey9k{R41gXr|r2MƷM0䮔Mtj\o=HdG-¿ g" w\d h@9cc3{stǡ`Wq%'HD&`q,25%%J`V:O}<9l`lp$G1g{4 Jw)nX`3\Tݶ@joyo*H ;F7J~ٸ{~L- '9jl._ |IznEd]t.͸-Zz[vE셥~`Όa+ <\k6,6ۡblmm?:M3Y)"PtWo’>Ʋ[DS'!v $Vfi!VZ)I!PoM-m^lgޤ9 {ĉNlګ }솈SPaY:TΗL{Cr# 8/BbCţxܖ0JɌ,-i&|H5tbH77` '+.?MYk9#*L:!/nCQO {ބrY^?e 0V7?]<$hK[h߰iʓSq+>7 X{: P2iU+[}f3EכV|3"UhҪzTJg[IKfq\9.bz_:vvL=B<C'2$en!y3_ZW4BŌ7 ZdW'ѠtM~)aqZM x7͖Tsr[02V֐Uԕ ,*Zn "^gar|[AIl}C,1Z|&ڨ`F86!$IlUQ Sz+i䨘fq`iecGh!4"E<XGH{~7zTmH4h6^b#=G{7^)iF[xuo(aihxEC vyԽnٛ󲣗GUsudX B~I#{$izϞoԧ)/yA6Au/7ل-%S1W-ϿBUA-Z~!?N%/Jnx R Tp{b_"Eq*G6| 9bq__=0B=؀L: XL F3Rt"ֶߥu_۠~dKT-fo࢒ گб^|cwҭOy+R5kG_%55pƹ+as4. H+$Ӕ 'Xf L5 g(jϮs[ʾV\[;-SK!)DC'3|ta[RF9htQDŽ%&\F%@̴+]|?k̬ hdlk0 dn=N0-+NpƮٻYs5>D,D̹‰&#]:cVW(b&D:&gWF6*:xsE Ƌ\.bR9]t?,`ȯ5r=_kS׻pE DlnId| #ڔRכb<  gT< wROd7/{x޹uǙ/3ۏx<:* 028(fokMRQ;- wP@eT^[P)9r5a[ 5U@BZIuGAҩ"UenxHjUnkBt ɪ#9n\JsT&X[3 KAJGimX1G;ܜtV)\3jgj`ޡ~4%Iȹi(\ B̪)5ɨ[*-8% &z>gQ5[s nI!ֽ`]6d l=TUW]R2$Us1^m)+r a/]Z2Ol0qHWJHκop~r?]ec~Y-lM3b@q.C0FCYɑ)]mQTDZg켒UFFBLr*"D@vt% ^Ր!uN #<=c$,J1vkKc{9MĞNO==n>=t;+t}h5li)( ʬToJʭ9IdA&ok8s 8vy*NDŽA%ӏ{%V g"ebaK*In\"2`LWx, p3 ?KQx@\ |r۩ș@Ҙ%yf^pe!ţnJ8wnr|=eeOCn omc!ʙ:$\f InOQ6z3??5tziUKfٝ1|C !{KȄOUd>f 9T}RG>Bp"CM}0B2u86w^ޱ- hbAmG~2 j(H ُAB {MpQPi q=6fx<#|hW<^4A\a7tV<VZ)[{#z;TО@Bԡtp|ozPf!YuE-PyCh^rwpg\ U*5yԿb ili@YS',H:#cm7P (7S Ϗou8d?J0{lUbn5/KyDb'aH5rD(}*|lrEgO:P9oL;譐On1]GMUBi˿4OQa#M2z>߸3z4S六` Xt9(ěR s5"J1 /H% 58>dص7 ;t˻P69S g+a&WMd^04 7sΔ)J6ɇhI݈ɲ/mHJҴfqhuP8NRTq RG4sԁrx5u_sn}EUϫ* }̓5SaD_ao7|&*>d=PIbqSYO^ݷ@/v :Z[]FCoWee@Qm10 xN^)bDn;_2Q/G}66-r=40R24: ;Ξ0"%;vMҪ'%$B(M# Gg!;N5 ;vZCu؜p=ljg`[>x8, HGG+OlpD9 /XSBߒwU ዌ]|vg]ő4eϛTɏtJ9۾m>av1S7\xV%c0 H2'$I4Z=ġKe= uky=@ (UlM? +.&)"iM,۳J9y4._凬0+NҙQu,Wú.PIBRHZu{c 0r~"b}6L\0_9kL0y_TG) š\uf1a/T&Sy[b+@VswֶHP=V`Fve,[l`^\FƤDAyuL<;PA27",Wg@!wfo}o6״{,2>9u$xi܏t=#mua,>yI%~P-/"!J^Tw7/koz!j5w|:;ީCĴ;47%V^k@'rw:)TkDS֎/sUQ L6|%@YS hn`r '0C C6U ƻh,] H#׹!9ɆXAwA/p[I r8 kq7xNI:"cbu@zXId{@Xu ^^d- "!Xe`v~IE6x3rӡ%6Pْ!"g@Xx?&=uN0ĄdiГѭpI(a4|[+DvC$D ZiE#AYcL:NFOPuF7~F:*X~)^}_2kɾj5i 泂W<9UDzuϝz|ԕ7ūo:$ӷkygA]MDSlp'De-vQC'HƟEx?I'WHu1 px&MIͤ Bd#wC&Kn˳8@ G`#ޙT?%z,!TsR[*t+G%3fǚF"};& *n)} n@=h~OKL3 ˈ3)鑏J_<(Ćuqyy)zTclA C]yڏ^˧+yܜk!~%ȋhx^SY-Hip+#:cp3DuЍOcg5P;[qb8F}5ìk{"7Q+wdn퐖ǸX F '鑁nxB1YQPK޼n

YZޮT?qlt 7{cKWq⫐<)sNPPyƌkC{x gNOJYqDb,Bf~ Hvt cPI mzʴQHe=n|.V Y hSb]S/6`\F5e",L~YIZ?-(H{wE5[j0E^]-GZ]}*B)1B߀߿ZNk9s/9oF,<{DE9"l5GYJ55}U z?SPB2@i>$Ka]sl źR͙[O7$ucm<_wר:]i"{Kq<njX\Ƒ$&"(Ёt%1r]X3T BU"bS~xF- ktī)PEoinխ>Y+~Y 1 g5N,Md̃p#>S";YpN$iXk?]uk2"ΎwtL]wӷNWʽ`-J3oJBV5?]ٞ<;ЏtFڋ [Cq~iz|mϛCݔ4 v8\ʦ n^^@JtPWqb20,ߔvzabfo\֨:")ـO 7IRP3}RfBۚx&ҳ?>L Tv26I_iXxv*S}qM_ S "xCrPJ20Sf\ ` ;=a&"nߐox&>@1:!B,$&ZQ`B,'C8xB; `|7>Tn?}Jl>BǦQbu:n̹k e*rI|&=1Gz` [-X@/2+T ZLta}@=L VJ廙pkixȂPa{R"p8eﻹv-GEuk_ &:΅l/UFH0`h]\ ۴; +`AH|&f5= !ϩ4sLyF+fҫŭ}\^/*it]UH]n ѠR9+1\cibEG^AjoVΔ^:^TA[0a8!&J{_Cu?Dʧ]& 2jcπj-pT#ɋkK=k1CKLFP&Ӯ 械H ctF6/njVS,Fmty#L3f>LUN";,eT&G+"a+cW^}@NPCZ\#MDi+{3"oju_f'y;q>fK?Kcjasߨ6مbG|\~ .RS-N}6o܇u;;`wjWep $zv HUs/Yǘs,֓PwPl2'\ǨV h언U9p)ȴ9.PT!=v(k!_S+<̆F zJeP2`Co֎ϽqSWg !=:`/X1Y(R@h B]V r@iqNSŚ [iTƵFk F)p6r`c(Z=u0f݊ :*]w?.;qniu&9̖Y@qs K#F[:%61;zf\k 颕1~y*k6I^k?wDH_(ykλPYL-h:l C.wyY`} p_[gX&&# ȶ)V3kdH2\8A[p` H\ }-ͥX0:wкwbʻ^ ezzKJ:(_sSxV# m8ǺZɖXUU63<>$w0g cojY [W#UVhLP ysdV53"RU=m6di5tkݑ'&5rt\ N:~Î;=ehnE!KwJdo+kҕj Ma_H=b ˙I\+[`̚1hP J;qF[~^O /Q ?ruJ 7H{r+oȥ(1Y O̿P|Y)Ѐ,8NT1VnNMĜëbQվe} fH@tH]oEp$f8?|$84'~r^#}Gmk@ CK PUO8MX[ 4 h_s8;H5#q&C3ҽlawN7W '#CƚDz\N3P MwüKźH\ %&H(u]t@b-i~5O3.8^2i؄<xaTr1ٿ<ᙬh"sOq[8+x]9Q I@g9RwcOV 8H -Pj[h?iX`( *w~6g=Gs _;'pOq_H_zRKj^a,qQwlaejÁkiݏν@bс`l(ӧ<4:鿊gG /sf|I(}4vKsC _I8O;S S>^g&[ &GeuQɬ )0X-2.p1^YQ23lH@A$0DM;d옅e= w3S`TR'ںEn!rI_v]UM{,8FA@8뽆\#lݛw^L̃ޮ*a]ڸd=t>01$K-"^bY;6 0 ^̇ț?C2{m6w<,K X(s XY)d5^,k1ñ{>`0_":X0 qH$_#̅.䄂|? :3=zYtk]S!4cnp^2zgڬwNMBjGmCW,]A Nb>?]䪠;,OK+02c3̇ F& B$T4g^U'FPMc3ѽݮ<-,"`^%`[k\tfkE`J)Թwلӳ$9y( im3worgk|}2,JcS(ov G#jv‹ǨQ1#&A V? 9-8ё fjRAp vh^bQdi1s8Vn{5&ݹʭ-ѨGfh=caCdE^;DzQWkAϨvt*^84NHZ;aSLhAmM#hNP-1Y՜U]-,SV7RzT>+sb0_7 j7&\21WRe?y 'VA/1u<po62lڙѳITQ>LNp]Y33ƎɝMYWdcyEZJ59'%$6Ix[`e<#m Z+ՓveČ:eR Aw P-@ ߳Er={m"yy \9$v8\&`\]z6G*لSsER aTLԈ2-Q>/Tq=ۃzkt[oDB_ΌooyL3kBy"Ї̳ q<Tw{ysUax]" ogVuƎ[V" /^ϒޫ зACpΎ 1q}\q6t}}m 2En@쫰F; c8<,~zT/z[۴EcA}>W_tS (+ft, \__4J .0twm)#cZNմm\d*2)C)l#QKw _nb iE vINW%(Z+y;F4nTh_$kCVb f`XF4$(c!äQ2c+`[EnʨJ8 k>:-] x?ɢY&zt/_4b/${sv+[R[3iFac]z@7.mWD8P+9уU0?w\/D`0w`R1nK GEw!;5ňAyJIvWQE>IɾEbnСl)+=ŕ tf@a*OU{)磤6Y9Y՛χpU.,n&N=HBhgC3`g]wQ'XT2@<<ሖC 'ac؞|`Rϰa$@\}zTB4X?xsv,sqp0/7,I*Uv_Re=-n\`~%S gg>DU [zªlODtQf2E(z6c.4 {;'mеpb$ bI;Kܤ “k}M\:j<7Ak3[dU kfWxj=sSjc_3MYr\q'rÒ :IxclT2Fzr DJ\>?DD̄CLf)ޡ4OJ \OGA;\1Me/hZM3^ks W=o4vI--k9G(fdx/jJ"jza<ӺQ]Ќ#Tj΅BA* 7v[-+ :ce'*`5ն+R>KeL*=P@Ll\a1rFO/At'$j64C*.sΉt u*OO( <66BZŒOY;k=r8(ޝ [ ;LI[b:KV9_'EL)\P+aL-j^Sĸ=DZr>tD VB~+@CSi:ws"y!=o{ /xw8va2({-%՟7.-ڵv7MEa%Y qbNjsG;]_ŧ FZ*N0{el<·cOi`7R@FDA5yIȟt0ާcJ c7@R Gq c +Q)遈# 7 qKn''`QvdU]DkpaU\,G g|+n{ԢS wݕvH|}9qp*H |ѧr? ˾*YG!ϥk'SUO_h;]raJ I+ETdRʃr,ǃ+0t˗s0aIS{&䍭3wbHwl8Ғ0r LȏJI,bqLpU=շè}pm/3y#Ȱj UBhzd  KjtΎ8ki[60iJe=-D(y$P[`*^+p\!/r-W_Bbw* Jy'^g=நܚjh y9WG$d3 ]a\Q7{/ %󕥘@a2z_͒ՅM] 6{Ԭ Q&g>h ~iC u=dlSFA7[@/"(IlWgXktk=S%DB:.vzŎ XF7;ˆuXRd11|8I\(5$yK7.8 *&渎7V:ӑZcjnSDd:"yEsy}  u"g׎٪qj"`G,zqHkHrTd)50 *YNR:nl8m~3&QDC1#z"ϏDtW]IA#@t ~QuJA8LIt _⿂c([++vM1].{*?*%s VP$ߝ$6]zKۭUXM̤$+M%e׭޲J0$",n +`+B︲78y J(RDc9˝u!Bv5SqZf8u@GD#<9gG+'i?0rG) KO'x' rUIS|]WS4 p`![!=6 c[~|F,ߑ$BqR)|g;v@ {S6WYƭ 4et89mNf}qռWUۃ9W@t *"pL;f3#D .9(yB H@GZ Jl~ny~s{dmB ɢ4 M!B,xCVʊ8HM s3Y0+PU],+(0p"zUn|ѩ?"V)YYzoOJ $h1UlJt@Yٛa]i;A=Tɠ><틒Qyc4H$5ݘJk>Ox;?P3]Y mUb𘡰&,_Z\Y:89TbMa۴C;=/qաbypKo |a'nlǃ`S)/ xj"3oP%9*..[}&?ұ0x0IOKA0|v+ÿT-jԵC(i`p -4y~NO'.N}D_c;AWiը\!VPr<`uؔT4z,8>]:(uy_/k`i K 4Y\Rualuq2x;!!l s+AbHMYbBǕbs?c\3_a(G? U\٪ZR}Ւ7/uPD;X.aw%Id23"-'EfdzԁN1]06Q٧!oSbulM0RR/xx_GN֮| =ggDEe0ퟃSsUwy%T_XWujPŲv<^u6o^_c~wK 0e{Gl@`.\LcMZ |"2 ?pn#$Ӟʒ*˴7Hrh4׶ ޚalس{{67wPIv]9v,fN'x7O{(Xع1ZcFKu\] 7> hF'q3&'KfwPPgJU J.pDgKݏW;0[K1N ||;G9Y ~ހV0ld Y;KLLOhxec{%y22?#M[es#" =?֒= aL Zׁ_)T?[2B-+tW/`yʻr>iŨJ%lJBlMx&CÅ5xN|36]^!;>kA^H4@{o `Cu݃-&_H_uҼD vh>SҌz%?tQ[Eb3`ȷCԸw&ZӢ1bXoPLѡ&~睔3)lx-*Tj?!*9xL_qb>{y5psa}D+uZyf,C{ymk*JZ@^kcn!*]y VݽD#!CJ'D0SoguIî^CwKIX,$B-.rU*bfT=G(>8KˁK(Hpe6cVG-o\PC 97$(IDuWIN6AlJ%+9Po]8EEkN]kpswpQ;n1XWd>_ɁOQQ R lጏb %('\oLv;:A]x `(--IFrvbww&_X$ؔ̾^ʌ(^-o_Xq9J`dZܝՓP#v(ECF#qpOOfcaf|/{KB/' '^7[I32P?nR:/_ɶ^+V^gDmLP@em6*H.2m@t5B?Db7g@cz++łeZ&O+yQtLtHd< mt0 sdA, +ek+en(OO ۬x࿞ڍeVϒW'2ԋnB;E핚,V|P9ǯcݕp뙟YE]0rZQezU.#1 ueJAw\Qǟou5++d擶4޷lBI 2Quئ%-? j] Φݯ#)kv1k3ҁs:|633 p%/=vJTbt/?*WڰMja [g I<d_ajݶ ] Ya(jޅ6EoCkP2+ }#l^HQ#ip]Ðwzhw4f?!v#_O(ֈW)[Emi ?1#.PDypVvtp?w>:/뽔:m^G US5⊻ kv`CsЈEr1:5NǤOCHbkv#by j!R/S8ؘ̝>q<ρ8j$!3 8&ROme&wn[ҨeF3yi,mH!n* "+0Wl_m2 J*8B?ʤ}  VE\/46\{"Um tp9gM&to58l57 فz#q(i̡kD*GLo}^ hcl)d} FOO]0}$X%JaBDXYWbDc0g+w`7H*;ewdv>Ev!9>JXCgp<ϻ]JI^`Ky[TkzHSg?{ϴ n'e44Ik^_q̠ Eи7eDr j>6%2gJj͗RʃMXkr&|WQ:I@Qhx]7:Q|v VX| t^H=XFMwh{'˳t;Xe nQ|_Cbz ;F*hҷ3f>D_K= 7gD&|tNO>?Rx׿ob՚2.>YKkb~2-jAwH,\ K.{H𺃯a\C\4@Gp /3H~tD6B-Pڱ,JLblXL|S4PA=5' P<+(Cl 6P|C롓,N7X ^_1puXۧ%گjXKƠqq htWGB(̱"<^_ƔqrՀ/fSV^ =snnUN~j"g661Ԗ3|v|$\$~;_տC;mOXY^ar zPr YDdTOmk c Ih j%y刨LdmL 1_P~LE*!la1P̘pTe}@:CnI9Vy{3Iߣ瘝0߂L+D); '*Lɂtn|iCtG`xI92r&UkmՏ;MdV1BOn5 ;DK|vku/i \Q#yו*)FP/vnZ&sĮ6VI0%zQAy 6a+HGS4-C;V莫`ޅ?lRl6Dt>\@` M<$P슎&^@:W=$@Ue@^TT'RnN{6$sAF01˖GY#Wh;̒w?zD[؜n2iw9ʘ)H(8?vt ` :?5o[HݓQ4;-%d@RBw {h<5IU1@F‹ :X:Ru稏'r:,YXH[vhYb Q4%b[z-y3hI,<&Kbpfd6Óʢ*<5FTZa=?(aoΆD+*J=/ lԩ݀<<0ưL>/ΰr٠I_bݔő l  B 5,=\UhwӦŸ)B,E L!>mcʖi8%أorߥ͟ `HU=EgM8~N 4 X)+|6D3)?Oa0AV]HdqkATx`ߐW CEε vBnyjە=G?irC pl,eպ3I"d$$me|Rp Q TPI|Rz|& DHr\YA&q^;GC~٢3 zA'Xu7W,w~b@wEP%.HH^V⚠rIa`2YɢZ 2&9ҡ]*{Pj!<(WI@OfZ:/p; ;)boWL"MOwȧ)'BG|c v(ES|\ vp ִx]+ )fyQ4gzV yĞd(*Cd9{m3o2U3@RɛfZIlOK ExVQKus2^c|>Lӡhh[X|x}D#֢s1494c{٤Rf:Eǂv2+C$zѨf8rkF+cͬwv!M0$/f]yZgl:O hˆڣp7Y{.p}˛ ;fVꗬGY^ ١BosY&e'+4X*E0 tZpTiu̷?sأ]k4H׃wWrf Qly*|6kȭ+M7kVT3OĦy5+t(5/Q'#f:s /&>M`἟~PKDEs^AJTǚAå؆9M&'k_Vl{x((Wl9m݊j0uL)icj;O"bjjB*BS4i}EGw?}YdlK~ 8 7}um';55 ,SC,[޽Qn>4[}Ey*WYWi/@IH{|ZpiX9'oB2O4H$!r'GjLu0Ye/ZȐ7EiIhv"tS]fߡ5,kRt BlosmZYehy;~+uF3pK:= ~*po$&")DΖ验f^9CH7f,5Z„mDg r]$զohQX&m+l49S7]䢖p J0$ 3PTtNSv4BBzuT_w.iivV+9ԵEڎ:{+%O?D-'ꪻ (Me~u&˽7N~!!Y8ir%*%sOBƶx@C'qh`(ɟuݱ=m-ћ! Ek_r{|_8p?'[<,&nffN|.aO! ' 79zQ$dVפE ?.̹l*u%U* h9T40at)~)E<f|89Nx i;b! pVt@F&}r9bq7527yIY#܄~ XR,:_-GnU(hG<b{kn gV-`->Ӳ@'Z&cXܶHWXqyC#Z.g>IBh#\>6?9e1j]P,%)Wl pQps*U~\!'MacIgʀF/Ql"F9h|Jsl)[(Y5ZT۰Jz@O= ]]2.5Iv&S;[td{⧼5P qP(P4K'(n,.Gl3J7/5T~,=R$- QC Yxs?#FϋՁ]/Y TQ~uի!B|tHr)1g3J[:fI[U#iH!@d:n1+6:58"jOWi%`׌ 1HuElJ,:Ĺ$F  -$/9Q>CH&<ʛOMԮs`&)E2wx|a%L glEC0{[WE8kM-?&ie]l5)u.7=(tvJ]pJ A&SEZCnm<zw, ("}W9P@dev9kCZFkUߛ|h -yhcF<ӟ4K5d.Dȇw7S^<<oJH).{ }F٦ټ;Aߕ6eso'x2Ĥxe) Rml7V/l>9i~% VPЅ \oʅ_LݓG.%5 dyY^m.XbB׺atN`IRuefbY\*b^MF GUb)cjyMl.>{|0p(H j}`YM[L΂Fkkŷej&nau_G_g]NԏNŸ_Ba:K>B; bXx>xdw"\\!(R1T`K{fyvQJ~)p"s1w{J ]9Y,dg՚I}efXEQgK׳,#~]&yk%G¨#C:ÐH /쏈I VT^īr E@{VBB73UӌG_ 1JX:M.2Q}"ī0PYt80[V)u5p?dQnUz D{qnw eP%_l&e 6H=nےPŕ辝k8rKQY܊SIm',vUۿ9orot7-[wzKطtS(1)0F9cBp @c߹6ށ<'_T.5&FsNX ^fkHY=K\gK'WJhqTh.멸*~pM ɗȜ +BT~?[p+Ek8 F4Ȍ"U{y=-h)Š*B =;(lj3z-߃a R|C~ 糏X ƻ8A;qe~A09`v Cٜ>Ud,B2CRHh9dڦ7a% +oU*FDp@k q?'#ͣu^1\t߈/j$,]#/&:„XWkq9U T]ۑqSV4Egc>w=HмSr jY!\lζRAlHT\k/H7E#&6"2/пbJLnu՚ HGYwq#đ2k }IIY{b0ހAya ~BN,)+Л*օ;~_{Y "/weTwS`IR*iC 8Q`҅忦Ũi'(a' >h-rS?9) z&fB}P2#QOQթ K "=g͑ԪnH LC[;K&)Y+8!Y\.;VɄcJ`Sme/,c[)oDp'Q''e'P+X rD:^Id]x/:6jd(&%´WmXx>Ahl_Ca*.cHtOf&7]Щ<`s B J.[K9JDg=qf;g-wAn{3hci:y_`V}7]eu#%,Ht"1PdtSk>ϋ6.<x-?7<^ ^"sL@oD7AA \\k0"e\"pV(I&z! eBDeLr &3Ջ[4)GӮY BMyM~D'mWY=W7²"_ ́io$.5+YҬVKSȬ)kG7"<ۋd!$馉jr<'Kz9k/NdF2lm'!͛ke,\Cn{[S1-]k~j@V5">AU>%P>||722w~){F[]Rnϟ1r|o5yK*,)B pOVf=JG:4s'!Rqne٠j>P)jcr`@Z-'1 [b`R>+gݢnx;;|pukSpA_7 m+$: v9it'<9)gb%$UVK"?ZaIp'Dy<.`HPh/fMG2{42GX簱F oTݥDAx4@6 Vl~ c.Μ4 471 4lؓM@3~"'6a ~V-$fRdizҏub'*S 3/ɵ CȺ)ߕT@j3VRp919]CG 藷jRXDm>DT<*Jvh`ǭPi*ƹ u;K_!T(<.g+`Åmlvo1_pLo&F7}Ur{A~,yuXo&vRl4kzH,jН>YmY~g5@1)G>qlZ0uCW!!wMBC쯔Mv{>#j.Ul}nj.U7$i/=$MR^!T:4Y)L16F0,ՙse8oW ]jWR/kR:d%vxӄz&UĜc py#yskS(%"qa(01QYwn&?k3_]B3*&1 3OWp)PS0hyZIɟ~X}Ɲ<)wM1/03 15At/|1*=~ ,}RƐExLu,x5=^[TR~d8eK53x <c2הsY m,03nkl)`% r}sGHz C[&A`gŅ5UdM ⤒NH)G 66ۂr4eKDXs ja`p:n*yt/BpKAa7[AR|n;@~UT .qw܄RSX8*H{#M7_T|}P^o""4%X( G(U_3:1>KMo$cCč=4 ɗ@6<=ʯ5MPGzr 0ECϮ%K59a?쒓kv&3aD>T6&۲4c]ٷw/ONBUz,[zzڎ@i,NV ֩WV$gSIH{N˞~uTl54hv׼$ZW,f썘ݺHI%M?"D5U]QQJcJ<:dvbr=nĚ"VtrVZm#޺m[<+)O<">%tSk{BB6Ep_olwk1/Cb80Et!Yҕl+c*@ٕS{7DtQ=:~\AȖRK(gzD56^q`v|~NE">4RfNJ;ff(YXr)?Q- $\d#,xӸ}t6]ha։[8bu!)1i͖¾1c%XOe㵼)+שAnpyT?:onQW?ǧi4)q=p1 @ϩoT43NU66Er{8Qn}9"8@C>oP.uY&Fc)րOy Q䟔FV]_ .`!Ys9dwUٴEǖ\bCV:LWMc8XpZucRT0ngds$w;SKӲc\:S(0b2|TwH׹[lX`2yqo|-l|6Yj6֔L%0R X$ Lc3ljam1;KKpr8$Y&%/n8*aYY yA@cYh?7̃ J_S˳ > 4pѼ?9ZqwAѮD#+ҹߛ /cҢvXcAhaXSiEg6萼=H%[5~)q(=;9dNA1p] i;DŽhFfLJK6:X ڛW夃0"N7 r|x%_VL.Hĵ_ D=z*[67$2f›TX_fؑ@w$@.⦟*Wv|s{ڶA|PDcRD;-FD=` ObHƧqsׂ|fDz@Ys!3B9 ~f#N-:Dp;]Eǽmq].cvbe]k@@Z D9rs..Jka^E8B.?2#\Um`V^-w[r8C8;Z(L7nF/%/'|8IӞq/̧b )QcA[atfagoS!_2/ݤW<ޱ-GhmCJi/SʹV2sLVLKɢb!_0J,MU ,^NWyocǃW VF2Lq-$%zy'6e~VlPຨibN8 79oU)B80Z$nA2빔,#n-rXxjx(}FK ,>&;׷O,ZϤpM?LIC sȽ 8ME~>z-L#O6ICۖ- ⲡuӴ0B&KChɑm'2̆SiGnWdluwLU, P:{]4˸y,.NײX$7S04%C&6MC+5n"2qYqQc E|)tUgƬQzRHKi/sp%ֺdfXv ;:0YCz걝%(UV3yV&N@l3cO'Zr'㼃^,#?މIή:d?۞K1lx t|W\ =HN-.,fEprO;I/8{_GD #(:hj[VWHIpPorz2wg.!z R}i׾w[L$^W<1e\#}tJZ(c%OA<~BgЋ `UQ8v1O ED"ø$;,ߏ>MV'=w=^>28m՜fT~u`H o4|.yoC8G9:mh!0xM#@dduZ0mq ]55Mv[ƒKO!Tf{N9v5/s[hݝW?Svgt{x'LmJB Qm'4,,83w4^! BܥJ--<{wx`,),Q2pfKsQ X?Z-lIWż]50:tU:8F $IfaldRz$ f8 96pkEߍb.16ޠ "g/5R#s_%EݦS.NP&J6j4TiE*G@ uʃ\8*׎Pf!ΏG9`No9u_6PU/%0SxzQAik(}#a1 ADu,)j= „QyR[7jv)/ti%_VAvj+k[^V]Wa\4ü^ UAO7?! Olf!sniǮZ~Ol7՞{Mv&ޱF-rMo ;?-(CvDRQ.*- YS#.9.XQc)"3Xtb/TW bfh,)NLixGf5'B l&FmN9-H~iTL ?]\3G&E3 "fA8ЌSvW:lԴ6ee{SJ@@^+R^cڈ`H_^7+zb@uI@p1Db"#‡|C~c[1h%1m ^DqO*yL&s[9+dڎ  DFĄ"(Jlf@ 2S9 glEg8P펡 )QwSEձQ*,£G/6BGV*%h=V#qFVDM,hWS#-JWkZ5a&? @̨Լ+_Hi1/PkpMo徨ӪinhkLɟ]WxYT5z"#UQqŘkE%Bǭͧw* (yo5xo͗^ 5q(hU9@F]篼m/dh*pS" iߵ>鄤Jqs(F<} _X|Sō8$чeKQ$*G͂šC bIFG&HK^S)';@F=D' +hNqK,k|8wp@封rLnNEB76C$bey9AH9E$ރGL/N*P?}E5PxȥQv_10 gQa7iui-|դj8'W$iyG5ć`+%DhkeXo D~y4PMrk_J֩!0,ŕ=KT7D7h Tݝ:)@4{"_ ϐ6MA)3{7BfCA(c KĞ)]Wٖ+I#sQkr߂uE(@d& +zEh3ٯ\\!DM,_s)KV_ΉpR Kai,EVx[ Հ>7ymKa6Gq8aXI4)a c&ы6ءrl;!$A5;>f}QgUD&)i+ p뺝mh2\Ǧ*'dPf T U#? XNpsW1ZRt\g~,{ΞZ~M䅙)z~+OL;30Jm|ʖ\k.Ï'iYC+Q O-?Гo-@t@Qh_ӆh ͕PQI?jgЅ?&S H8\Ҩ;rqw֘,b$h}Âf \J?.ٗ,7kVVP9q]2(Ă%YLmo5l5TfM7n/'uT2a}$PV}w/9UZJf.EoZB^VmQYJurZO$ p~ At=V Qn|J);*" ki \Z+i#9=pR#;?LqNȤ[`38x0߽zc/ 3@* EdM) :9׹mF6ݻw>| y*0׍Em2~6À `Oo,2cr!p`!Ȝ赱q9\ROF=7*,);/k -4+`q4!) ,\nk3Tfb'q UkOS~?#zs,MtɽGUQ/{G)0?Ӗ#e{s!Io:Df㊀%z.r 7׶pauc'\HhT!6{FP0xX5)$N¸MJ(R+t:l{I# XY wW s/aQn囒rWY*# Ѩy &0kPsPU|\ *rU o/ݦ$#18p( M4L@&^|6_<fs“vxإGz;%Ú ߩ/Ô̬*c%BΘ(vл=,bu,bsfOODHiˀD$.RBR#^G-߱%*!HII1 F94}S7fbD]Y9T DEg'Q#JU8$h5` U{q&(kx-%L݉nkZ3M~Q[S9 TDD{t[bz@\2$Ϊ$m6z|,-RZny'7{U˩F??`,5"YqWFv@잘5ae' '%(\W/eAgsa6+ŹG6*TW<_Bs:Юm;%Nw_Yx f@-zljMLXmd\卑nHRb)4ٴc ~FM?j۞ܨp}} SD_$xg-[jh-9y{F~6UŃ JE@M 1~ט?%+X'V)]_&TPkw P^lLE40ꡯvVyD[5X2C*Q7c->\uV0 # Kf/?Zu} 5{q "ˬTEHp3tEJ?-@v~sLʾv(UW^~/c=0:Lr}X!8[g<wPOO=*P@}`Oj\Fn6-%Yu2R akԲMldz,|-Rb]=>*߷. 9 RORUhFaŸ5 %RgDIX=Y*Ϋdm7f JJKqˇ +hU1ڤ(JO%GQǚL3EB^w;̫7a#ɐ mv*¿ |g^5Q"F)to%xV3V=^ٶ1f{B=/zUxK*CSK ҔdᯕUQՏ<^(FIՀ?mnɅ])uǷa߿ 5Mxoݸl54#嶧k}0hF`}"΂ϟסMb>V^FF(Jq aҨUa760NtzJ"k:EU0N8JV-ozܦ7c<]<ywU֣ Rt y{j|jNU9CCߨ;UUK^xIto 8S>}>ب.+TJsSln;蓫`g(Tu!^!`[yy @{@h;H7iIaXa9d\vMNbn˂'X̊(f(d&~Xy]@=]%`T@?}ui)Cƭ =H'$}O[b!0o#0a?w"g[)(~&I`vj}e$qG:{Ej+օn:냾g(UT.ذ MG+ E[;49!ứ ! mYts.?q=DzG u%M^WX14uW :1L㻚Eub8VXn I?#<|Ry/q~`K$^:qyAD9hhĖ ۆg "i'bVOR (xZc*:s*Nb`"3߇7]A#9dHlcL  5CFAi,uǡk{'adS ~WW5KCzԤlĕeu1ÏER$V/.q0P Ҏ ^ljLeRbPr7q'^Sz|H;;'&$H} `@lmB썠()ܩuIw\j:x?wIn]'o.hyif\RtG^YY=!({9SxVt3G7RlH[;BxVlKA$H[ I6ozp.7d;)M}CP>}q z;Fz5EϳH4zݖUp\7u&aACOVD<e||;\_L^G}NG<چ&l&f.NTs?@gQS9Tl BԚX 3jvI1&a ßE49"H8:?J+.z0ݶ>>Nww{Jia1@4 8H|=$fn)H+Rp:dM?q>-@J0з=W--Y! $|Qr@G19vq#g:/Ҕ«eS(aqxNbvyT@&/y p2Zy({,vUBmQ +<}nI}4'[8(T8&Ej_l&ӗHH`}oNqEYky~.ֺ2ݣ !"XkY`|qp)9 $ڗoЏl3;p 2=.ANkg Xtݕ8()Y@ 1=~$jHrOZy,qMkƸի٬Kt p g}øTDHS}r>1Ϟ*$чX5o*܄{YwO5TmS%l78F@=E ̺"I@ Ӧc:1tjf^WTc*j;Pu i3&F*}Y,,CP'n7avZPx|<t9?o]Ж3/oȶ)V,=/35T9!i*i&c0(Aⴵ[nwIG;4s/2&q1( M~J(xc sXոfm%L l+cLZd~P$6FjH=pqL #Se6 v5~@宋ݲ g"cm=~-)zI~;`V+Z[~l3_i9[뫒.Oɦn&0&uq16j.. t;Īn`-a<#$%K{ʝH1+{Ù_Hس5y%ng׍ ǐAf1H*nXC1ޱa1$xXha(r7W+.T/e= o=+ʢo{;/缊T5U-F#5 ԯsG\ R=nG^d_ɬeZW{ i$=T.q |KőnuдBm{[)DrOz,lO BezX>_ljXjx;d,& ,yjhWp$a?͹:mԇ6g<\~]ZLm5XYY4)wQ @)qM ʩOt"@MZkd]}tN q5Yֻdw( c's "U$Cok3ZGPS(Y/ֿtTo^ʡxPL$g -xVʈf=Zi[.-y]cB* s 48ġ0/2_yJkR@Z%j`h2|cMޗ*w7}Ptt\[|7U" Tۚs- h4.15#(A> MpMlrq) .<ĪI CfnOV|OK~hS>}C /:;Ǻ]e6ڏ7z@Mky6`Lޅ2R;0ܷTDaHPulJv!TM3"MOk?#m9̾an Aa!wm'7:"6˱mh2GC?] D2}Lk<ʅ[At> /o): KՋ@3J!@rJt%- *&  Պ_ ~4Xk]ZВgȣْD3Y8]Hƺ)f,[wg]jiFbwf(n Ƙ~b\]G:{-⭟Nqhci(?N`J EDH;" nyW/Y{J0ӜY0=[^8J׬#l?> ;V\~`83-el=<8KFrɂnRk dZ}|ƒo Zs֎a,1Sn+x,1#T~v<‎fGUX'܋Hh}W3$[W4 lNC5:<_dRqgcKd.1:n$2Xd#Y.EuFh6Iym-[x>0 G'Kt>F0gYܝ,ud u|GgTV;Ip~5HAYd`QMc#4Ig$XeR{NLYTAjGi@ϓI{O歔26WsO LA@v6+ʀ/+1^6KUgGZω}㔀7#Μi? tW_ɣmŹOI{Ɂ6FTѴ ١XUJjU0Ljʠ06`L tU+M 4G{КV%&ʘ9#8v1lĿ=\w,~®ք]i)&՘z ٿ>0r7"N/p}GAg%l~ک xGdԵvz.:n$,QR%B5v3@6"PueL +#r|H"Ҩ_i}[9GHL[Yε=FCB ' n\U-"O˥⫼Xk%0Skzml@Fq?O #dCW WdfՓ ;[bd"6bLlv[)$M-(tM aRS>+"Z|mn߻op# /lI!fȭ( v} (gGˠZep1`/y/2#;!ڀ?= )>MCGO}tUpU '8o~mf>0߁gC y>% ֹJM8Q/xk۷/D40XU"{sU-( ̟=| փ;Zהơfվ7wc}@drU=' |K#Ocb+/ˊ=.HK}kғcQ'H3 IS;=0Wm/?'f+&gm69I|44kvQCqSrk";MT-'gy" qJj0P0㬧0",]iN ϟ):^Vv3V0t]Fv^mH_Jr…j3n)P()u 344q2Ĕ4ICr{J>ef]Pss%>N+h=zpN. xVi|-(_f(ʑI:H UI۵x쑌1$$ݳzR)p аeNToc^imR+2<秗"I0|Dd07{%<0 ן@v2ݷ TR 1Bt7΄' So9уo : hG(+o:\^692OE!T; |{՗ܮ:De":,[5m [{ڋ͒HCfsG Z{=jh:0Ѓ~5li'^`}a.PrfÑt,}"cݬ';" 6s8XI Eůke*zdXUn?\0WEWiSດt5Y4d$cjL GB:m ت=(7@OCڧq=o?' MZX\&ȯxoFH&*.ہ;St&;V~7|Aڰ HdӲ] v&^\֌ lo׬l*fBoЌ5/sam mLCZdsv',N%o%"袖Čެ(og XᒝqrF" ^/1N Ý T*5:)C]`R HǾJ * 8] PorR7ZF ;+e( <3 !w"fQP*]84P4O7 =%vfչBoM(?yǿ} e᭝7'2/~:@.NUć/S)y!MGby1!ngRTf&ikfe|V#/%(>$D9S0P|s ƟB,`7"7 ;@ )SEq h2DcC*U(YZD~kT4h‚37N9w5R^Is6~#;hr_<1\RC#&Տ䞛4 `EsK֭2w ?<{iL7UK8GV0kn OKm5Ծi}hՔW_vwlhUA[nSD)LX_}oca&*B@+0~&ASI~#9wTXguG[uaǩ_cSh07U.lbz*Bx2/vteqAjԫ 9a\7 fFw4Q B+f ' t{QoI(.VPU8Yc(V|~$}֑\1&3ՐǨ~:;^-0t7)3eΖR|ݳUwa8 ǡ֔<[E]=i/pTP8pZE6lhZmףqʼnWK;AYg4ݵ9r<яTϤ no9l>Q#_\"ŝR T2g+w#5 ܩ]|c<z韖.k A0M<,;dET`F]),.83:PW _*3&Кe$b4^z}6n:ɧkW Kw݈g~k$M|װ?LQaC mpqDZОo?o 6 _ XtLS$I~r!$GqE I-ׄ hd Kh*U([k>-2Sk=?S5jLjv&ô“!&;`' -Q|LF;.bL9jcn@(6<ZvarԱW)z:)VGtris9KU ZN^,7^+$Ǯ;Bv9Kbq8`#)زv"=A*(= kDXKZWj:h$ ^v2v)VdK8e6E%Fs(KiQRrqEq7LmNb(1p=AS[}﹄P.ʾyUhR`"hBT# \ P>кa!h)&'Ze lƻ LJ~qvj~Vۏe%a}TdP ekOЛpJٴ~mAnBY6htj-|e x )01vlԚy}Tl%IzRG-YO5YL d+XB͊ 2|MQR1Oh)AR.˛%<@{H $=_ժނ1m:>!yպ1ar)\79ۇ=.s"MpCYK+f̒fB;v<T@ 1mVLd))ʑ?E:Re[|1gfc=ԡRibr`dg%ӊ“.qC\,k%ꑽBZBU=x .37z|.|``šnnl$%U3UWuj֝}ܨ@wKц(zPL(k .x}r=.͡pQ[4*j)["ᆖZL= xFjB6I^Uw)r8>(T+-SC=ILBKG#. <8gN"kZ\{( =ц"˟AO oyȗִK#玝fp@BBZ`q*抢LCDWk.@l N>)Ӷ9qpbtަ,mjbSTւJa#p7r6  tSɖja:H%@m9Wo򫄘Mm@hbVV'e.zfHiO9>SSu i76iU"gz1&lȋјӻZAm5 :AΑ(5nt냎DM\ jP`O@ȢP{qꑦPL ) q i뻫E:jFھAX/ڟ4 x|>aF,z󴡇yJ%g Ŧ(XW?*Z,Ax;H aߐڿ7΍w Lez刵sD=&bvҦOS$ {yQP C!qKJT!ws}ub=Y*18Xp 2L@4##\-`AS0SO4wDFپ@;ɏpXAI>n&T):~<ܣɗc\r _5@5lP a'`!NpbdSi* emN[Vz+ 0YDiL˒yt7;'I}םYQ-eFcF[^r4g~/t[ydOSb\m~KP TX#Ha'a_C sdJڪ0qvunbL ]RtOcpctˊW^I+Eu}C /pmW{B*$bcz,}{a% )Aiϻ@>~l.j5:~^^G?:2 ξ˃ P|ffJJ.C Iefv ?Gׂ'lx E0s1%’Il΄" pV@~aW89} `, U :}| Ɓ[TiKig9ѪK( DUЉZI}% [C7tVK+Oq؁)\<&Pʒ  Ѯ6a=K4ιC~tډt*ߍ*ŀ1GO)ľR0@z?_j<}{(N&*Ǔo bRZ'A7u5v*f#':ޔS qNhXarocTA-)PDè17e10\ d p@ W[D1L(L5jj~u&mBx瑆TvC%݀5SPcLdQf:1 rF@3&+̞&J\_X+ik(42hHբ +n̮گ-@rvÁ7Hw@c:.b~a4ߊf܈FR`T 6W %Kd})| *lm/ Lo_TWݭ)[1MCzGZuR,k`c\&.wP2 p~ڹ囊0\%%݅QYc?~" !(h@C?bSi팂зKTR/wVNH9En4byl:8t)f!:]-GvdNbMyܟH0jhM79W3C+Tb=RMg!һ wMa#iy1VOKsޕ^ZTw4J'C3B@k_jʌ YFnyO6y0.Hϗ Q|ksi=o݅X VlX}m}D_9<}|WVRd[aW"VwP 4VdC?m 8zxU_L.} h㵔TE=Xnn3ByG%!vd{=P :^/9C<<а3Ȣy##ŕ@|u*_3Q`hTsTlF_gy|uje,41I U/43I&Z]@+"p<ۚ,+qQ*X3DP!6Dnq)F4>X(Y0ʵ݌ ftqYm;sK(̋q/4=iLmw~u `됗\OJЭɍ<-&Q犲t[}iz˴_~x2#_̘?JG~2_#$+E]%KdGV± OWTd~4TH \cvDĐ=RG)kAJ|i>|JX' y3"y L]]`Ac2`sCd7]-ۖ*˭.qze1˻ֵKژ):q\|CgҫTJGg < 5Pb5Vٮ4eAMcAd^_YuX#Tv>G+V\nv(ňY9R᝟О~ryoBw;cn^ykZ-ݮWs1vFxI= bqT^H%M?U%k5'-VPVK)6e ]䩞W l>=][+֛/ BYܙ6Ck滣.mXb&ʛBcN^\71{Ye(A+YY)&~@ƺr]s$Qeߙ7_ĉl :3\WrQ/w~߹x ^0ӂ䵨Lqnô 3'WF4o?# (jG'tc"jyHn[}Ml<>dkOo6P3 j}MvGF f,7%R'- Y 氠]68Q߶)i ܵ@/ !E\e^16(Zx[`;m_SGgt!W1#ԑ%"ؕ[FY ɏ'";q@qLLo,"noc<̂e{H #Ӊ6<Ҕ ($8S{f?fS/z{XckUA'Hi7c 1="qX'z+'X 2ln#CBLor2;{H͋\оOm^!o5CSQ]"nξ_D'FqZ#ʛn8sMs>/fN# iY`H00Hqb=߰bmR+yʹε_~Ļ޴(+U+}t8z_MI,Nv8$Zx]! cRkgujZD24u.yߊTWPY"w@XDxܠ ٜ?q0Z-H]#& =rz]~Ř?̆Hyp FU#t@JhNB&ƒ[<阝Uh!bZWPW|">ćۚ$ݕB_Pl>AXBIM+: )8^X(gqO P1KS@?}kHçwIwOQ2ncOgFIDOH|7e[u>RBd;g$#τpjYҦٟ”8I_POrrʠ`sN%و!M<ܖ,K,\)dwn _Q|K`SΊ$r&)-ɇoKJZGv3X#wq>R>"m ;Ed[ax6XCJsXͰi`Ƥ NxcҼ=tjAwS7r3 DǮ(EwMΠ L2*چ3A;eid7BQ!yrP+Qe\wX@<=DD!A @Ĝ}7 lN}v{Z'G?F`KJJ isӥf_ 4~f=ڝ1dJ@2.{Rڅ1 sGBsvҷdcI,_fȳ WOJP!#L$Vh~VwE) -6[H|W}e߹[*[yыͫ(2hf6~:bg*ڊkoSq{lJw+one63l@ϖyf1#2ae+@r!* )`BVݨ(2 ?sp@WC`8jǞ{*0jl1GSݪpdkn6_S XJΏz O5k Wb  E sgT_ojі1t^2y )UopԸ jּ%ՕD 67|JW&GґizUL^uU[- /Qwe}%!>mr~^x-1B By^&7l2^M; $zbf>L) ڿf߳ŠsEףCW&'MG:OxD]N036rZAMnMZ~q%*cqEQ3cnQ*)YY-pA ^6ݐ/κ3UfÕ." ز+F |L2)ѫ|:?n)^&ۘf5&B ZVWTY?[ƳoP;fΌ ȸܠ{M>JMeЇgV( vVi! &0dTdj:]|eWr(؃݆28a.uVC)6GV=m=+F ?9A.Xp.W){։%z.2VF\/%ߑ.us+D{.71Ih -R̔n˦~Kl$gq+ŀՂcOJ(0yDYvF2ǎyɀ/ɈHktJk.1yF#(td1PfXLA}VAB#zi4Kg<I eT=M2jo?pOsxQN JTO{~w3qp=`VbeC xjw5(竓eS8=lzB~5;>I P:F!{CXGHKpmœ-ƾvVB4=4<PŹ6umar!M)C8]hb= M % %nkvy)=ʭz-WK/'D$kQ,cC n3HyDZ2F>+w]|_žh ]/^;Aհ8258'^hɘ{0TM|t?~tGہ \ꖇEقMF(9P"L6#cUF.!g>@G$rK@Ui(%tD)6~][ͱʵ6㙓Y4+ 9‘) 9oͽV|ɶȅ, yu7iՃOF<+ewou1 ٳ"MGȁLa ~ /}j7t1PFUM`-x= jpV S=g/׳f\z(rL41A1E޲Ց?8cC{9㚤ÿbA<G>K޸It+ =N~q栗-f X^vb ID@{[wA ~ X]T&~ޭZ\*|:ѽMDvExA/BTmp5pjfDri^ȶ!!2 b9I",k[́TsM#!+5VQkM/3DFzs%\axIڣ[G?ѻELfwR-M'>tQyYF8ĸy p~?H;˒ %HHQBÇŽ%yQn {uޓ5Q,If̏B0 hYxF%uvIJb7_)U9ؙqe8ze-H9 XehCjD!JflyHR00Yje9wqn/ *>%Ut0*Kh_*E p$h=/tst NUCji凄c536;_o\5kKFN3Uxb_p_T]m̱({)UuIͷ4b ݸoU|kʡ"jEVdCg_\X*m5:Z3=41b/1k#[q`nQcdw\ '#פ£&2RoSqܱ᪳\+(*aPچ6(BJcr|=@h|K4@nc("f Ԣ/]0H}ShYt+K;Ib9Ӻ:`5h~9jxrRL_:|&)hQXvN{r .˩/ʗMJebcD4NUbmy=0 60l*(P#g:,pf(IÑ~&61Gqa64P(X,WC:1>ج5 9z ɇ /AZWGk!셯%򻘑[, ֌8BZI\a9fJOۢs@,y.ϳiTXW\ߤywo4˵rdj m/,+.ɋ!vwdRpPNYNERB䇫Lg-#,ewU`28Qi W<\GuMWo96;NS{n觙B F}DVXV'働iUW4|!|R},˽SPY3bWբz[S--?KHjFER5H'80FhYIbGK',xmb QeO1 k|BLw|\Pfe=Jn0p7~JHLζsJD6fb8C7i9l惘p'ٯ-d,;s!Xn]s 0,uı -< }͋vWA0D6W}d}3N2kJBx5 ɋXDDegDZ7?wIx`6`jǶ%"g}+,=^֪m=V>,3q"%IҦWzhH~v#拖랭ʵԀcV9վ%/M j\6$ʓlO3t(1e-pʝc"NY"s1˼zԝT~a5gJ3AzDU"@=Pw|wt'O@i+¨1|_]GP@gkc"RKϊ#5"a.8c`rz!_׃1@66CMUK\8<@"@x&|U:_ܜ/N%VlsQȪ ysSтGM8 1a qn;ɂ3n*o8Mg°V6 6uB`3܅nbJrYZaIx ,(~g>;jBcNX1ժeHMgsaBYi$xXpӱT^Պ~Ɉ~ /ZI^]z$Ф\FYκ̄s5λ-|k)AܵxԚ}Wr}AVIN)}ؚLE_b]W.yvħ`Bsk鶹5i8U$^ޟW!o\jl7A+N뭹QUOo,L_ ŢMhb(E 04VQFvH汫Ur5D8|a(zǨtoc]ߛMHLek@73z I(c^G}@2+/i~ P0SΡ}W*.riFXZIQb|c9'$}V\ҵLKIe\1yַN<=R%)NfT Vpc&E!z(v< V=’knSR<[.}+3G4!תQ Y::)c<)rXI% cI-X`*r*X-²;SgZ*BՄ#-dA 2wǰgn:qˢ&S"W%[?n,:!Wk25xB%k'0ٛ-y RilnYCa]"L_)иu) [AKG38d 8!8ZB4;;lQZe!w?I Ө݋hL18 ^Yz"ttA4*찘L4~p`?t@]$q==)#`f3-X`gKwR=j;' /wt8Il`?3 4ɘv XcrX(uLJ"ޣ^(!czg`ڏP%gaR4G]Q؇`[+UF028|StBאC& /4p`.0Ze;¶) )4dC2[* ` K(lFHӳY|rl Ok hfxa7CqR#E0]"6\c跍hQ2X4b5"[a;/n_w 2%#l}HImoС)KN9)ӣ$F At ϲH[vu'4u()8/&LWR6gDqiF&T*&x7N 9<,{r[jba|6' ǵDPGsuz¬cb&6M:u/]4Z o`VFޚ=62fP3J}%#jcQ>u݊7ji9x\KŎYx{uB[LٶZڤ,*KފAWwWo{2u2Ĵ%?V ]|J r`LL)I(Q{j&+PiٲF&4w*?&x sZ̅_=e9P;ϱr5л&|ֹLɺ= sUTO~|#dfI t FX1i4]F3 2}m2,oVȪ[j/BF߀8ܚ>(+YCwr-8;v0xIiy1`ǯpZʧm{!ps雥SuHFO i\` 1G$[9UYB V Ւ HҀώ湛 bŀSL~ a{dR!]ZM-d@mrޟs2p H-`jt ARWk].E} sM^-X۽)/06/TE Y4<*' cDTz-V1Cv qsh$聋X{bP!}D(SA }T+u;ߛe.||([bnq?I=l{82w_}p_]R oR=V$o#<hZs,ᖀHu$Hwҡ]T%:L棥dӈ? gXwF]ۀ;JGC8b枯^aԕA(Yrݻ,<.21g^ljZ6]~pVC(X{ [)W)q$NqDq3^#._ASj<1 9E Åϐߏֻ^chZȠP%ec'3.*+-w^]o/X~2ˮfM*>d2܉y&{y ȁ'ϨwYٜVeL=6.|/j3 ]O *jܜ:Zk7$; cp( ul*&ȼRaNpGHSZTBA;[ y4\b]^?9SN"YY%\$aкR@Joڝ(˙@dCo?YFduP:qf-b&gYI T#;Y@ u zT?(gSvJGy*\Kؤ?f*0ͥA 9ޜOK, P"kĆr5#&i;2K' vIOoP BKΫ i59kpfvCQh0 S:-VwIȹ=`?7[ʹHE%6vӉkaQB,+/C7ۺmhY ;ϤK_b}{8R;&(n!e}+ jD@~. 3jO_#͏gݓ}Gs!F2Qސ^aZBȠbd4ea 94wy!8gQP$}v oygb'nr^Ŋ}M,le7#~V-E ܞ/;/^jwN'?g$$ECgCV2gpE$ VW=uK2A8fuGn/W}9' ;NE3ٗ"Q@i e3;)SiY徠XWAqdҤtY&{杻R"`7n~kwuc|n;lm\aTӱXT0B:-,OW "-~AXnNur]]řq MO@ b5b Quy ~'mDii!\;7t}pr`]~% Sz$pnR\Y s| mf Vͮ46G=zp %\m‰/ x'/c*{QQ$dQ?µ(!1N#%kO&TO`S+/r@9[0%v+HJTКr4/(U"hʎREq@@y.}joL!M!=ih&R!6*yB" P/Z >"ľ0%aa(ϕiX-H*w06ew)PHJF8~HW ?aBFV^Qb-%ފ.X>M;q;eE\ya!cXFtd[j@oyT-E~$ET,y3/EBnHOgXn?2} {X_x\'A0TY@_}RB%+:d+8%;5 "n;`:Π7vU."T{>b:IXT-=g%lYGa9*)-2@ (0t/x;^@ѥw8O1^'sӱ~R@jzi+PB3b3u9G6*k$ͯgN0%2jW\UxUN5:=y>PPյȶ!0%v鄱Ѿ޴Sv. Ta**EO8dFUХz(ם>d+M@P(`Rػw灠1fhzIWF#=6fL52CŜyGm?dlUKh4յȐH .Q5V%ঈ9i^].rL琼 wZp? EQ  RfΘІטyRd 5Y#=s񻾄adK:n6WUmoX{tUfKmyG5ktޮiͫKJ.$W<hg4.Q$`/lp#"Ec`Ãwqݝ/ٞ+V|t:Y_XHz\gEҝJJ!d@g׸Mǵ63W@0G6#]}$i!mGJ'>ף{JAL3 {ad$Iϡj*rG|(Q\׮@r-y.= @_0>l^5.7@A.JrCX?CR׽=&ƷE;vgDnDŵc$t2F~2jR*#gĀƙEKQʸv}xź M]uxnTx%\NkLQu:^4EX|a/AP^x;87#egϿ(wxܛRM=E6dN᙭ Q=Kc=ܻ`0dU\͎ lYB&v ;P5<;c̓Yu ImYj#M@ocFMU %W Ud' 7??2drɤZ T_ڣ{)?;Rrs ͉B:Z= X J(.?Y1ėD,O63HR_;odž,) 6hml`3'2nQEKa0:hP;I55 gQC? %t}oN1ymts'C}/|i]?, \UdnC.2QzA!I<IdSָu40ɷ_8y6f*,-uQ;&:@ zj}PH2&sV9<ΛNB Vv*6o#zO 4}^-vu6 7!I(^nRQUPDЭɃ^U iGoG/+?:c582/L;!Q:Z Mx2p|QIld5̡k-W2k2%# 㪸bT)r"&Z2F윕3ȚJ;}P %a8h'ĺ>αV/n$wjmz&=C&x^e(q1M9Z5?ێ(XHɚ݋ 2.,Y/^eDOOx>"T1Gz;T%9FYG4Thc}Pb*=D7Մ[LRzqN-r6y[|\Ehmڻ"Z£YVtbhvq9Wz*qUQL_ُaf&zk[\3贑6Hq |a &I#G(m[ &ll_u;Ch7m^@5h lC6h!Cy|4*m ]FЙ/V⼬OEoM{$np8JDEEuV*V| |prol{3S-&,O] ÒC9@2Ql&yڿy߿O Xݟ K|Η"%PYI4G>Q ӍjuJn҅͝M5kvAa=Oxӎ*߹wutqEar#zHw,pc9J q.EŊZfb'1&9L0wԲpҟ{"eHHB&&|@vWe}uC9'nЀb/2:ɕ /]7Wŧ?24@߱r&5}'J_iUhl+^U ؞d/JP} tJut %`!FSvyIlmHS%D'քu.{hn+^#'`TϢ%a'k-[ 2߂GYS8V7Xpi:t֔bɿ*]obR`_G֗{ Q-?D/ț&Wm#z{qpථ42LrAQMh+&t0Sc@w8>0xW yҿz(Ȗ@ 5PUOm3C_e)ԩDRF\lpߊ#tw2z +B|;LꞬ]>u;V YP#;:vYUejÿM #0pLV({ 7smbUw !+דکP97t.v7t8WֳV提V<lԖ>a~d#5sx9֭018w¯s",M#-SdL[.k[ +A&}Mۤ#J9VPJbЈww9*#1}毂EUI@ˢ-o&Rխ[YjryLx?G Zm*`۝t:d@*E-Jky(XIY_=VƚJD,2#Ͳ%vw]CZǵްPƍ`4Q'hA7AMvp9{[/Na&='NcmD giU(.yTDW(}:G>3ȿӐ0,(ɀɭRfQA}"R;;JP(ο- %ԧ)J&JYLN(h਄cr2\qQ/OY&g^E2Mq?6"\s( B88v\03?nÖ6Ӈ` SAt8AUqB_nek'a1N+^Ooܨu)pP3ȑ@5"p>ZJQWMk&ɖc -ˆ=Xjk}"!u\cq@/o=Lwz=SzL+=NB\izEoewVT#n:IdD7i)#W wXWTb+7?܆2 1 l;BaS/i5NwH%щ5 ~'r HI_M^ϰ|?ˤӫ;tN;$WmN*lT̞,pr2΀{J OӴEGTlsEve'o Jܕ} "lAУ?7e37V%*9…OB^9tMv^s]Le~cvliEgetq;|zxm3R~xz ܭR(W9_+./˖k[(XiМCH'ɮ(+VhN@V9dkA!oJl ӓhnfj[E܈F7 ǩ"戽ڄE}v< Y4`CdK'su6Z2I;Z1ɛ9Gu 2XHehA=+"tPLw_+=S0Տж 㜴^@)bsvcR+vIv`'3/נ`;AxW.u)ə1uFvXF_<P +}]ɔ$p"%==NLiC=U6咂_E5vCd | de' S;b,/s<0|Ӱ]5ww;[nRuқ݆PG k/[r  WX}SQ-w&  _ ldH.G׎ز?m~Ö:wR Tv}sa6%3-'E iM΢2JhTb>{OAUx#M+oWx{DPVB)D =;3vqel}Py3u#.joਡsknMxb8VrL* 'bw)g'Y{4L cR;8$c@W' _*(2\1֐ ףKxNwҡX t``CNz61e4u&7B~G$^~_H˗:]x'rtU=PEn 4d⭽p[D Q |ҖgC*3i<8( 14EQ)CgC;1>>jr.W׹YJA .i  υ|䟳cbCD#zQߏ0;{Fʣ:]"vMjG+qG[BhJ29 (/=+ .]d]L"}VڕkK[^PEMi`q)9AiH)~b6ߛ% $qP[LWYKzԁ @VG|Vv2 |bYhub 1GFT~EҬHrB݀aaX‘|S~Z M6qRZ`6? O-E`,{Ȼt5^*VoB lr`n}ްzY)_db*py)7Akط@`HG:#-"ӅFl2 q ۖ+U;za gQVR\"_\Wn뤅 j$9&ᱫRuUp:!`"=ODÀH}cC,b*>ݚżs0{_e")/ @!@}9b=sӼ,enr)*"%H%ʑm3x hܒ<>x֐/|iE-f5F XhAڏ% 9&;S1k89M#wfп~|J3̨43X=P]4($ŸVF"|Hs(a]z Zr¶4uSe,|\?M#s${ðVΥ#<ϟ+;LLYw+k"_E'3Ҙ>b =Z>bnM4\rKźC|qՇ#Woǔc/CVǠ!.@4T!/z% /?at: UYk"(\e9kPn`l15DSrN/h4(&M [ #M/AÅWiNu< h0Uo#3&v≫Of }:HBxU6^I@d.!I|e/vgEPHC'ޥP+d*cq_`!M8Yag1BώShk59ҳ~6R0}[ȸ[98Z=9F[XdG*޷:?-ɣ6_P'{8jdD eV@B2op/9$|HdZ,vd0n/%(6W|<<iU"wh1 ZGK1mw,ı{#P!.k(oRac1L΅Kh;ak] zJ¿n"Mev(Xg ό֤քjS}Ҋb-ܔx?^i~oYRq*:C\[/W.K٬I ǜL:ۚ466_q >OgpDUf{faR$ynr06wa4Ui y5񩴆^YVASWRMpjMN:ѡCPE7@0d AkG3cF Z bHPT21'^tX%H\=e(Hun1dCmNgfK7</ʼn/V+Euj|_ν+$>]/DfE췎C'g[ /ƁϬAM1RqA[/QB@*V y,>P" 4^9qsGP qC^*/ :9朖Ѫetz+Ƈ=BNmIڝ7gr&c=%ף!4ՙr5!|8#f X@!s<ڙ_0{4o{%q-,^z_Nupf`@FNmv7btDhI-)#Cr㛳qH?`uy$ il:dڥbG\%iHE+2$i3PH \LvIe ez/L;͝wR-XKRλ !W#P(KHгp )qdBCXGsQ\8W0wbp̙1lQQ :G}xS>lo>;$TyJ$kc4qp8\*JXʳVw>&Jzap}g̎iY̓he 2umIrݺ!fWB Wi cq0\YydY3)>SA4e,\prV[20lMz3:ph$UPUWG=d[}+O}]QEK7V,rؘrTT $rrq~Vn%|X`*dXh~z klisY/n3U,BfCj@x>ʃf \7gVf`%Ky&O|i(91L]й GذQ<@lXp>-ʈV^s{>b Mhhzm  !Nݘip'LS.U&V}]Q}Q7A:cX zLE~9y*`-K-  amC3xaSTi%p.IN"W#4xKk"߫٬s[ݹ2ȧLTUy<.6bǥ|0 "J b̴ <ҁLc3.)th}}Bo/gGR 0z~ek.Zc?#Km5NnU&\_^|y+,bCIw 1VϿ I|vՃ_*g*Rf2iF^y=J D\Gur3bCڟ-w|=R27K.=wQ.+Yt?p({i MN:dY u<:ɯFԲkt j)HqBIS6zuI2p#tG5'K3SjPf- /4|V;n;uU÷=gNo9x[ ?*,5}%-`Æ0ndYZ,<]<쇞 ٛzfҳ8a'+;`A MK KX$imf AMt< J1UHѿ* -Hg8l'˿ vLtákPߡ{ DsC)@O'# . po3[e3>^$N+Y03C~dTah/Kz̩/]$Zm2~VSHkn/ONReSIc҂0~Ȅ@Q19DKC82>IZJjKP2:=<5l:?+!t= 0k&TbʙG߫˜̞eN @2JHضxk~Y ?<ﱇ;~l(CX:)ۣfsyWȿEffT1e{F";%;*a@QaD}W|ү7m Kj: e2mq{j;g^G9̲~yvQe`jm\ܬ8 z24Akos1vGvcgC̊3D<܂kFKPge?Ԩ.1fP QxE8ځ [D WƲ{HG.7Ka/W:zq}6&N#a)Y w0C?l DbH p # xL3Wi+%s":ϲn<-[rBbSVH lj KCuWf+%@ #ȓ?AĈjS%_D&mvw3[Î|7><=e/XVW\tPTHVg^apepR,A( )Vٮ5 ѤkU_aIw|ĕ"Mf(fPNL J8UrڒK77 ۢ|Q-yw2"{j}9xt>4Ԃk1Oq9_ nKnat0VM0"Qބ$!NA9_?/lH?a 5`H 3׵*e{IsIAW/.tB|q o-j݁lPτu7w__Z=zc@hƄE5 "1!SHj hFLmu$ n,cӈNRaOPYS3 }` GB ,g8i'|YT* ˫Tt)=̷ez%Pb'晼z2ND<Ӛ2A\ެXq q34qrOnQVXʟ`AK04v]dWAW .N-!*xB xP)IbEIH3Qtcs}SODTDs<, YT0ɵҙ.n3V٫,d px ? 5I"cDg. !R:8(ew*a27S T-Z!#riuvjDügI84 -nيw>ASvX$Xm0~jU=[L(Rn݂> y429 ~T E|UIie,y|Wme\ϯg̜N ӲZ !2\H( ܤOXh7yw_SO_I·΍ՇK$ꈴ?,j/V@ B{q0cg_ lsU `5!QU;ژ:ٹ(INܪY[vNȪ0>vFL%l]r_:ֈ:''IwY7byWy ƶO7Cd  W(ZZSG{d14_7jyAoӻ9@3>EWY$c꒥c:Bȿ^T[QcK$ &)W;\ѥT~If% >0'L ,Ȟ?Ʈ䱹5m@N~ @ ?eѝtPHLGxL"HJEn/G $g1wAβUEؔ,]bDO~^pMs\h T.FewdJPMgcJ9:,ZR \(^:r?>ePMǑ=Pݔ / vfl2}>KgpmҢJɃۣsi\`e/Q q&aJ—,PXLm8*,auv:Gcd ۩368-Ws5 ѧnʺ utDt>II7 ?WvLhx= ȑ¶ #z0&,NΕ#ZwN/-g^]Z`O9!ɰ_-1[+rvjc0&r|YEզ(CIU*wst??ojRKt2S[L|69d mKq?)STUxޚ(4KtKj ,k)?l\0o8BTZN:;Iϡ>\0d $Hʼn4] UH .XQ$b kn{:z^gdȭ?C.?! g2~P0=Z˜Rq̹ !gِv:@% _(YgazPeMKdi}hrLw8Q\W)uhf<!.:$d.\}5Dž-c7$ Nl&m< mߠ0q<? +{W(XSz IωʉM%":p_@_E~w.)yedvu`ptN';ŧ-<0C&6 $@W%bAXA{A3&û=g_XTiR,[A p&ȓ8梺{ {[ObD :&;V rS=wODluMmEY鵍_`66hUпDjumpFqd&C:;KJN[jG}S&B>Nzhqs XUP {[}K)sr,RyP KQĆ1ctK>p[v?=I x ][Z+ w͑#LSog>ah*"KGW N]3"tID(@)t=.k:IU$ 諸[e < hρ i簡j{WE^j6+n(9- aJAVP/k!E} Զ?gM6|J9HYz}2ĵ(eG?΋gmE{''+!ɥ# B=f6vOg>FϏߺM7vȓE2VIi5SCce:tg>ޢ8&K3I1+0g5{%9xI^zR{wN &Z t'Ԙt8l0!׏4zLs(BV +2P XC%lV[9%ga+Dv"9t' Oὦg3غfgTnb"&TwuCU۽5[2t_;\ut` jWv72iFQUD@ʳ4F;ȹm-V ߶8>0[WPHqj;T/1}|PݗDNrLfڈ-K$6.@eAgt" $Y(J+ep"Ba ҩ-:%}E1RƘF!6g9DF(Mn:SP#IňK71NQjg7ޤZ[e{^rd^(|;| Q k,07v5E@xk,^l0tU&R /!!\ kpϺXH5a*"IĆ[Oo;WːHkr]Rra!tBItB"%Ư5oN̅Fktsly)%1 c3:nJrXZ|3Lu.6uatznV>}:Y%$/m(&W"7YYʷIɤ4ࣀ!̚ǠҠdAN)"=PvIw15ߥUE@\d־Y,碉 }-+`d2kWe|FCYPc!)7H1x3|p {F3ᢞ[-4El / ?V/ѮhںJeg߯'=ͅ'{Ŋ 3(wM_[d.{]&w$=9]T_4wKNǚDŽ7}8ǚеV//%h5c{K'zDܳޢQrЅw%K vy8.@0,iDsrY$ uI mWhӇHq-/7p7S8x7_L|LIe !ʫr F W{#GꤊL ~{zJF%/=QnJmݒ̭:SMG3"4gp,s$jDqe7YYW:άdq6 ZH̢Ф["q]8jfDXEsl\6,=8|82񣇆 ܔfiFd6H2hIs\Vj#9)@;$`ş\1̧b]\ɸGY$}41tOUraWȡ(;E&.AĉOʑ v,ί(-S?*гͰ)"S- bXCAT"O_RQD;{7:13!ιj%|7|iug,+1&I̖bt\w!a<46KF~ZQdP-eK69|6ܦjC-igU޵hLlD$5Ρ`la5y:d@t24ZLYxL%3~DiubAxdX?H!YŽyVoyN#*6G]^U{I"BV+dCyhEТ ]7C'&*cI\+atx>5I_ e Q>( ~%r_26q+LT}:HENxy3**5ѕU*۫Є6\d7MC5o)>Q<æ>(i0ArvjHs2"kzX2ʤfJ`MIPkf<$'W;{Zzx XL#!odjgj}&S++s2{)FsZ9?GO"n "~=)C N}pfQB6K@1a궧wWv9<ZtgKR$9}} gY;9#Fܳ7ECScVD&>n_շ κJ$sF&l-60`M8%"vDy!Yi&f$ZqW| ~uG9kA urP u@8 8r,,nf3VqC*з̪c^QxS(l7~bj0f0 `J<[H1Y" =f-l0AO"O,cܣO @}(򾓊#tٖ0`JW$URF%>a[y<(+gðS$Wrɼ!zkC4ٰYk?>/ D" Np >``M]]S斉;M)&ζc6RBKO t`'B +\7t~&nѐuΛzV\UZy~uvj\U"("9cA8l *vqDOHaDZgHGV(Hy$NZubLTӪu8\6i21/](m[u"NhJhr4l5s[c\ޑDlfwkEQ}r'O~-f x3qk1rdR7lB|il\L4=3͑~6>3o:]1ǧt{M527|y?F#`*RXecUtEO6}ԥ|RwaQZ1^ &p>동m60IESE9R|q+EeI1A s"B"V% NF̡z1`]!Q<9F 700R Ter_UDYKgS.H-])/wVdǗ u$x#EF>^_v`AΝݣs V,-Ee'iu?o[ެG݊xYusMGM<cV3&AcAf\[ Fd9Wp­9G|vd[qJ6I8N!!ШcT$4ՓC'Onci(&Eml)>QI_r GwK[xwYr6\䟉XvUS>B%AYMTx8pKpp6ޭ-ZoƟ]?G5(9Jknd8&.UՔ P96]Շ %Q8otټn&7.ȝx,:z$nbf5|Y] P_~AqRHXg"@R z\FRqd+ *c򚟌Mz0\%8Lb(N% ÖkbgJn"c:&*2l+26:Qֆ^{&̄hi}pwqu" Y|7㾶@օ,Lj*}#j'Ϭr D uEL) Q=]ȺN" rGˉ*S w~v3Yz %> /R&~a`lrR8 ɢ8WqJِ0-Zu]4!,"0lm,&Qqb {rՖ7{Fo]iCgR틠dg2Vx%庄ȹP? o%K8ׄZNMyȳq ٚR7H$ xe7W"[CWId Z2X@:!nBdM) {'D:@Us, 22Ȥ\Rg"8K}-)3 y1ESnMU,wLVk/-B Ɋ.! GSC "]rؚ-]e¡ԒPhsc/Ϣs l_R7e jG( ]ռ R,k);Xo=JX1z3w9'WRxN'K%Y%FǼܦΙ@}/K8"߂qUCfV)jglf| ]q= FAk@I5&'+;!N25]9:ˈx"b|ll#WI?>|a4(s.hб=9N;g]Ş E*հaH9 ˸Wl4 !33ȧq"u쳘hټ~p ,nGMQB|2kd|#FZ9ou,gT\>Yq][5(M#<[<7C%O2Wnh^1蕋$ho`W0y VeF(Fbb+(@}t#@6-8Dg,ߙ;oBP4?Q Z\G0s4ۇ,c(}:+ɐT=\J| Al&2;@m^Hc}N-uAnO5/z~"|v4hB1e㣩Ц)h;-蜙x6/19p;'f<|=q﵄L-a})(dSӓ;YNN)a kL2彌ٳᢋ3=ȴ8mtޢ3GwqV9oH4li9@ {qeb7ɺ2` pJR+粬gJI]dm㺒s2ȡ7 o삦 q5/k? tsڃ}~#盫Q_1Po_6%)/i nK#)YŽ-x3CWm#u:' :b!S}Ri~3En=/Lc@Úp_5|Bۓ']b9'1u0΂3]H 6(O^MckxyxtģHfY V18K P}Ҿ/'Z](ԗ*J>pA:5zղ-M]DCd/!(^(Xw&g.{F {oB{ܦv_!=_㩮f˿?0-cj C:Yz"k&aEk^ς~E<)M S=3`tg^~HYަA?ezɮUNz>.7vvcʴ0*;KHPDՄS$) bx^xhˡY"1eJVGp aYBԎ95c:+E2a>Cljό8Ta" A@l*k( p튡>t>>yyjKc ç`C:pT/H,D ׭] eP (NCT] PP"*%Inh6/C5DX څNMP.We L}w > /i@CSqp'y|YGQwxQOQwd}fKUZ`-ɥs[z l|`#OP΅@/xT)r-m=oCQU_cbDRsC!LDYoj2Rƶ]5CT>#!xnY)`^5`V޵=F(%^jf{NzIOЦ{C6S.+|H;wbD!2HA ldي;L-#,U?tce[ޖoCBʄ Z(w꨷\>Dp񨬝Ё!NG!SXiSBO[V}13E[FJ!FkеwHh^ҮPF!2Ѝ[9xJ8s_2){߲DUӳ(1q,7K&zaL $ST=M:P ! ݊$ftbA.h*0\o:ζJ. +Vݦ!uNjhJ+Gw8>AbO鋝 C?L,,Um;k|&u;byMhQ)ʃu{} F9JX> Lh6jniy̦ͲOjNngq]kPt _3TTS0 =E,19@DF-Q"tar7p>hY RW= MǺV稒Dat7ןoG Ti.пfgu0K[\uyGbitu-6; iO^\'`/y W d #^Jr; *v=*A|rhuyƶAMͿIƳ dsΝD\DXIPvQd͗4+'+jmi‹<2B/@ [}5hTH#JݡcH!˸፞Ý H{ 9r&̨0(NBR{0IzVjTܹoᅢΩ]L`A5s=3`B/VRAo~s(*E piti"W\&I,ǰBxmQM.'D2#=kZmՖ3_Q'w-Y5`.,As$?d>JUG-Jߢ8G3(RkTY讖tWw`|y|0Q( >x`>0(*d @Q+567F~o,]ZA{Wc1U>R[wDzڶr{<ِEF % /K5ͷcQꈷ uW {ͳe%I OJԻ[j$ ƫ=zzw7Gqɪl@Ɲ*`\ F@|ɍ{4.)$5\U P׌|;Dr3wd:k ջڢYͅsk<3tJZ-ˁmEΦQg){#3KXPBDti~߀zurЭ+' G䓪i-R MQ)(cx(yaAd/gE4C$|=WCDL/ e?*I$O_y+k4{wk,OW6E;]HaL"E&yS خvfj.51iz$)koKrs%^#(x#t*/qIhGDPNPK2єyG{Ba2+?Z\uk壕pyn:B)0 u=6ȍnV+N7' aJSGܶ 8A>eCmX"Є?hZ#H/9vD[q:ēcW=g{ L\hcmG`nf5 U˱NRٵJ L56 ]LMF=7Gϋ؞34 {ynYk!"^hD͸}NviV U]}?TMXذxPNY8dF^δ>S|%B?|!ڮ\ےQ"#P$ L%Č/: I]8mI QI@"R!.~VtxnEv $s$]6VTvN;ʆT4PxL h&y?c!34ibOO]"MLQQbj3Y`+}jtf_h%ӥ(JJ;T\UXb/;.w׸Ҍ Gy4%7̯qa +SUWnU@a,@b+墶{WP{`u6 iU )ӖЃM!xLLsbLߙQB_[?!0ὡԂ>8l4nXcy~~sto#؅Q 9զJZ %WV_GgY\m}3'U[HR7 ̷nylNpvFՇ'/AD_GkbgwH]r&;z#~vl9)%.SoZ4ѽiTE9Kl,dyHGקϸfK\@!Per<&?YPr ,A_P?޼Ui@,bvy +mE Y1E:BrN]S3"MD!ėp ?_3)h(z;#QE Oh4%C35HDgc@H6O~S6ݽl}5|`գܬ^ n 8U&1O2H~ȗ*ǩ<`D=up^Lʔ uڿ˸=o(d[,t4 0;DfJ()W2_pM\@Щ'9qLJtNvP$ؕ u$z'Y+(1ZHUu\bzYWJΰt ,! Wq`g ֤t/Ţe,Mႉi#rL7HH)iop P6н, !sV䆟d\K5ٸ:jɹ[/*KRA䇩klh3E1)(" $U!Tkmpqd*Ӿ%@JrݧNN֜s70=pz'{ ƪ(hѳ,+LK3 Erj7ϣc<_# v~ 걈VFnmCDuU>W4/:GkȊR#c? EzLbs(q`i*E=y& s}ϽH%҄Sґ3%! 9Mv+WMX kX_ 5K$/.Gו-|Q \}]jNO%+I“@o[pre<@]0Ѧ+[m0H څ 9+`+1/QFA鞮n> Am:U Rqv8mq &JL/jA; @x0${&W.@!WQvO3, Ŏ#fxrAIF$S$%LOC0X(Zѯ_W3 k{K1>eOa{Gg@#l`N̍v桪Z^b$pgu[ #Y le2p9 UD l)CpA SbޥP`I:@я9#8eӚQʸoLEL7X'S*ȝׅV4:77.6]"y}IMEeu7ֶID3dROFzKO6Mr1K`GHsj%ܸ/R~2-𩬞)r ҷfr|NkagNѣEHK.2 5w m[ |j J,\źҪcx֫}㽜B@l0 /;fDcIy_;XbhJ b/U1o+8Rwհ F'!9?&o2S t=3!c#IIJfrg F^rݒ6*`xN?+B$Ngo}oҩx#%ς^]`wy*b)pl % ;o _a0b%y"!2Ps:/b3Z`0vAQ vez`d@nJTYo+7Vh]Z@y Rc 1h;<r3{R}eg"ZrEB&V~MbScK a{D'Oe}!O֞dpJ=_&mo\և3b,cͷ>z! Xq|Ը&͎bp0e͚nM (ãyАjrn7ٹF؅po,QNр~5ԙhUh}N=](ىA5/&<۪3Y3Yƚ~#s,l^[c_D_)dnz[ƹՊ,+  I/cVM l*jcPU‚|JsG.)ͥizS1ד'/ፔ\1[۾4ȈLDq2(jemhdM;ߚĉ(ULmXX@4R] s4?/\-d9yjE^F*ΘQB-_٬n8}F hu;r2H2vE7[v[+݁;0=h/]4 8f"5U#6DLkj$GPǂ=t \~<.MA~=o{w˄Om4 I]ӒQJ1K Ԝ%ӱ;7 >;I.X=OR"Pi$S%]9Q\te?ۢqۑ[q,27VX2RUG|MWLKz3(`A>'Y}5/.=yNq 3[?ʯ.&ߊ$/ ʠWO #\^G&Nm2; NRbgQo)ڀM<%0"*h8ڔIϟeoɥm7~!,G/<'D M~; :5uq&/{Q*~}!\n:lj*' $ۤrsp]=Ʈ.?7 眥E2[ QanGT#̌KwOX GO'Ol,'rM=[,WRJc6HdN ^-y[js+w h<8C`BJKdQ: |@mпks:d3:h ƦmEB/wP'M񭇩 ýIgu4'ŎoW;)Ts Qmq<{tuĸ: A ,7زz~F_nRf8)m@ت5dؖ&TӇ<{1Jnp=)5 tB1j fvݬcCjc1iɋ'z.YMY1onΌic "{WQL3EmB"4lw}`=٦j3XL_|G.oPTFv#I81PpH^`Aָ=l}-ϽKU6f1Zq˴:q'&Bg?q5=LPAsEJ./CV44eE]+253gx,F]G*e5CuG"otNo1Ie!g)-;¯~`jڰ~X\_\{#2,P5gze{B̈aDI_8|Hp4ȃ4$Om / u V%L^u^Ϡ N3i0ј]˯L's,gbbD+X/ oE] .wX0}syua)+س# /A*k jTxܨ 0U4IQ2s,Hi^H - y fY"c4tyM۠Rm\VVjjݟ/ӹ NoWE_Gkn`'m1x|`}o͇L}OoW$) {γf T.vzcY8Ώ#Be /2ઊ8PrkUTWAiAۯsZ_z&O,o s5ȯ= C*ē3|1]LB1yԉm%Xfo<\z1v c,V֌gP![Bȕvmb#l*0v]XtL*Id:}|[,dpEu3IAf{1;OJ}s%RQ\Ȭ'o\ԡlEWeE;j@VFD'ܧ72U('w$h~H\;C$U9c9$s>,GUS}wρ^}BC^o=-/H||6-#t@VnQlaJ؋Q2(UO_;3ţao4$|jttʃUsA[j& &֊5K=2o ަ}epP g2P>C?אRW(Es޵wظ농X{ҩMMvZwm3]14//C*S2mFBǻA6Zg)Vdtujw )7\Aޡ-A$KyԸ>U=% LdW[~R#T@rwk-[%-` vSIVT tv]@g,wsCj9rNϯptΣ PT|ؼ3Tb+ICjW_ZbBm_4gR_M )ep=y.-[D0#:XCdt\Pbe%:h9%En)vj[L=7$Fz|#\CH f_M(kz^O^+<1=d8##FrMǺ\q_ij^ m)7 \VDsmr Lqz$>B%ajRR}lB@u6O6ؙpܿVe"8a[S0vK'-$Wrʖom.(ZF\5 ?N-W! ?zۤU= ӛv:YZCF%"r 9p_烞 o\8ϤUR8@~N5qsze֤$v/ 5ʏX'(k&bo8뜻Dm!QzEY]{OxUbg7nw"=LYdwtpEV&p&;;7j>9.6F a`*"QWiG?;Y@ 'Iܮ7߆߂Xq,#UIгY}IujA$͇xrAe ;PK5iZ7|m@rmΑ(D63T3^e"Q\>,MT4ɒ><[wŸ e_^zAApwfM ,o- = nʊŧL\!; #y9)P[NsDrCI,mSʚ_C8My}|\UR+~$"sjZjR4e8}1qV,uAWVh4=p5I i e73FJf`-MNd=vO!‡71[:i N|ȫzcc;m2a࿗uꚴ̰[ck 'QV`\3Q b-ـX!M6# &PuTl~4"ktR~zs6d]] 0ǘs;MksQ YL2Krl()xVpC|C'M@v L Rsb~uG v񺙘sKqkP+L[ ]䍱2ZZP7 [Њwk6 һfv1KTePìZF?|% 3ʴ"b gCb&f$tz\"mؒ:鼡9Q%}ZþdI|Jutqqڜ%hWӥSLW 3핪s9rnq#f3Xᰔˑ̌(iag?~u=!#fzu8Yɵ-)Nj+j?%O#ik22~M }@m竁PT :1=!l^,Rp Cgh>Ί)J AONʼ*}\Cg5.-F9!n@T;)eG=H3?ѧt5xl\hx;Mnߨ&,v*D%|u_T?^*?TSjMLjѸmqq"y3lZ}!` %u[( M{=5q;1NoomJ P5>GgD!a$ZPGX :MA2)G9Jieogjrpq[[6gSTD.߬v뜷Ud鮻MST2a#c;>2~6;]GD%C#G=}#/ qp, 1M'õԳBtM8DCqs#eHXMVh#fOUwDکIاzgx\5zɫmƎ)ѷDۄjswC N`Ժ@ !YRe6%dK@,: ` LBmښ?qI(>Ј16.I|)X-r4Lr8ŕ>l\^nz&@Tݒr˫C=FT]1E5j@.^|so=АOTI& gf#xwM'q6J&*@ŵW(_;^e[i7PM /AvE;0G|s?W2sQ~.ôXLz)yR;!^HZ8r6)fLh2$QXp1.(,Lp*YD~2ˡW%m}},BҞ6o_􁖺 L!_PKv:+~c806'&=ٲ_s ?.G5<0rܜl;ʑ('H@Fi~l/D>uL7&MIdiU:c| oT`Vqu^!}S>/[rdvBz b'ֲBB|P2AF q?;3c؛r^|f\ȍGtF׵ Hp+J^d^K˔ewѥn*O&,m0kg'|UuX)J@8]U5A8-1}O]%T7t-,@(Xyl:A1/80o5UދQ9dkbؙ'MFBwW< ^K=wRFAwr1$bQ0OAZh?9m0QP!1va>nP06G,њo,&]5ؽ%rxǫj]Jx0]K5l/AosWńIlvO=GpMDdD<つ, lP'%~]Z+n¶&R~ŀݤȊE:Jcm]^Y7_WK)ЇzM{Գ<IuQJV xսfp<8,o€i,Zᇚp]٭hʎ z˩9ur&ۦ 8H~H ]6Z|u[<!ծIjW`}uz rZ̈́tqI7 [XLP/W2V,fOIk܇>k#sJ+aKk^wӣ >^Ϧhz4&;l- ]hG Y:m*bcݾgbiP=%*{ZfP 4 l: <\GJk<(o']ʠ}"}hP 9ׯ&VZ!"e}̷-g/UnVJwЏpu)hfh 9FEixXX|Dιx̮_QɑRxC~ie =K[b),8BpGg _j=JZ/JSC|1~0nݝV5׋R& Ip+{}J>YMnYBe Dght*r+,}w}Łs18z*J‹QMYpeJ30gʺ[EY+Ac{A)E+9`~;FTŌh9INee-Xp0&][rVġ [ H4&NZӂEa~Ŷ5rB Ðv]؆>\8JBZޔ#TNH5uVs~Ś8\S0.6f&,1exp{yt}9`ZgX8?\}"fW{̋؎nY ~߰=Z]_AWsBf-H ųpW` "1^^.i0W8fYhG"eZ8]^Fgڵlǫ{7>!֣j)o*~9c̬AE[ȠF].WjՆ N-Fa7x{y#|qKk$-fJX9t%ֲ Gg "\ 9{d6ox ^BIۗNz rmQ$-|J),ј{&wYf#—vT2+$^30"ID9:&vW,^G1g0'.,J,ηRn},IB|cAWMt"$:$-;R-2ZPaCn ,%O>c+)726\;!H)M\:6Jҍ6R/qc j-q@˧a9bqX,B"yl'8 Rr( RDQ` -IՑ,jK 齃KDA48ESWqi/n(ۏrJ23E~DwW:oؿ-[Ў/!UCM΂R1-+BЉU90ҽŦ"iZ<_rQTӹTJw5F6r'LM. KZъz=uA'NkK'ėۇؕ&o151*8EraJ0U>R 6cik5Vc-N7՛(~,<Lwn&EFsr,Lڸ ;Bf;^PAui(1C ߼nɪdRLso5X&:S"Ǟ`Cd>}4/3LD+<7Z6I]0/Yhx2„u`"ǀ(]|O5^h<ċwfAdQéuiDnAiYT,^j@]dGޏ+ً0=T^ Hh4E#9赙"(^x0w$1H%ySn k: ؝2YL[ٻ6,NX>6Gx/ud¢=(Bl7:_ HbpV,!,'c!5tG;e'=1RUL%筏l*;R66 ib}#1zh<68"E-4Y}ʪ3 V(i`ֆh4ӎu2j/f nJB#RmfOR,j~ej,5t,hʼM<%'\b{.6%PWQ1<3?lV+W.=MWG"ƾ`<YaUJZT߸@&PFMdu 0[ |_X=ڬnltEӞlm ui ѱږ:Nǚl:N s׋a7 uv8KgT xQb!Qc8ZpPn_T"|tm,{[cO 0^:H-j+y,鲐2xU!SϐP7˛ÏCx#(G( ^TA^h:aAjL7+Phk/ ( c>d#T6SF3#,6I`໶\Z^3hw`o葲 1+60{f5ÍQ]peEEwq;vdk_ ZςcUV[h9ʿw[8& 5(Aܺ,o sK_]ׇlJbPlg.TœgI71 1c ׁϑȝ"0L  >wm $}n]`gȲo\>CkEm6/(|I]R++rBvGb*An!tiiyX>?EqOً ȅ')JMhYPuK+%N-AQcs,WN,A1b%]IܱPϷWdL3˞- ǮEzxw#m|L$'t({㉮di#+SSgzE}ATl!Ns7r<MdLΤg(*;_dBmb \hqO2NOm ǠFLۯa!_ .փ9YKY$j-+>3[$Hs f:CychFBRP˴I =.*>EP'BLR i̞ݲq'&*F^Sy\"lB$̧{Mzw_:YebIUyi L먹BXnh jl>)66ݲ|ԼKc%@`s:IG c7Qi1hJ‘]y|Mm>VOνrNL| m/AC2Mkӯ 5.)w@Ӱ8+d/;Y-?,"RZݠiȁR=]Xx*BT,ivN#MPrJYYo^Wg٭ZJÎ/J-vc:"r:iLs+A7:Dl !tg]?DH6e N__ 8Ye ĹSIB|GˮhM:2gck>O[q8K>|Dw9%@i,\ݩ>:ZbC^reA!=9?1XQ;`XzoMpx`r)MI"`6E9*Ro@u̓ŧ^*{g?&S<>xoc&ך-\ffQ:2pl8kbo!LF;Wc-`<@p=}PV2jjUP~cĆbY̏- Ѷ){7Jo3gIWdPH^)Ҏ[pm kaPr^}KRh'^s`?`c`"Z!!!k;D~Z7%pЗg2 h>T=[qX^CJVn =7cKEfldyzOu?ޑP4B>.4sR ʚg'Q#ۭJ/O뭷jӧ7:f'+n"p~Q"Ъv%5r!zc8 mǰ'|#e*}A8TG9vRWMZyI%rp;γg 2Nʼn˫|j&7{DN;AIxAF Pk)>s "Q>[SC|TripgSڡ}.ftT{.bȂe6jaz6EϤ*z7dV"B)t<(Q_NV%rMyJG3uET 嶷%i۫FLD?>5:l$6ׄj}hSEB+ $ MꓳZ)@T/jeCٲnEVD O莜V{(;jPI*|LR^Fp:?MpަX@D iX92'1Jaq^F"FYb6E,u#+MP#0AU#e-pV w2TvKv}X =ϟ2j Gm'"qc4U>$M]=پG>z&gȉus0|&fa| [;q"Mʡ]xΙ]eH.VOd4ϖ³Te7zʿ+\hQ>UCpE/0aQxiK#c[7XO4nB%߾Dh!l}zu/;MGMz"ݜ-InuwG' >F݃-ǀΗq=:al w'X ꄾ`e ثk~"b<t"32yEN{+@Nh`>%-PjNYUx\C~Mi1W7__shT(i'iZ+Rٷ䢐ݪt H"͗Qr: 2Ipe1ax8 ^mR!@fyix>bEcyl/ÄAӦƃݤ] Q 8Fw6VZ'!K %0rN,cJ9LT cdkZc]%bvR(|~#rQYK}yV_Q\1<ZKeBBTNYfLJB2`m;<~ ?ssX<.&p:$6xN !!)C19`v| ]݀ZC@ FTkK[y˿FA0o`dIB*-?dD v){t6XN+9GoȐSy" Z$)I[BLjQny>2} M(PUnϳpqԐ(I}*:J9T[{e* ĒGgQРv=/ki{z0Sz8AK Ok5AdWjˈW>n~<Ʊ5Ah LDlҋ#܍; Ն^yys'6riFx,{#ȕ}u0Yƒynٚ/gg,2~-nD`aՂl0΄?WxYc~YP$Ek`_t_衢qg,!ANQZ+,-%e`Sχ* & 9w~bjZk.FE 31d'eX㐑ݨg޳[id M~eXǛS\/Q"kGT=<.W1M S[nHH ֲf2pn`jK)t5p̞2z ;4B!JM$nkj*᪌E2R<::v0&aSТֲ7Z"6lϺry'hKMo%J3Q=iJoJ Fh92 2Bx;cX;gᚚ\{DeB]S1R&/ؓNm05fĸI?P?DVм$)WdfFq*]JD8UfiDß%~>Ob;]DD0E\ vv(Fzqj)^e~`m1{6#2Bڢ>ZOk=@Ls(R]|aCpgsImI|[.93aO~*C۹AcMuǁv٨l('+²=*}hAO(BUD'S7, wUS9^`~l_&[/3|̙E|O`ŅsC+Ca#Fa"Uv?\ Xah0PgFɈU̵5I (k"pmP! ȷv"P>,/J+*2> BߒN1t8FixWa!0eW`֚$ ʅn"|V `z+YB~FС뢍?D\jrp yLEbx@v[7ö8w5Mt sQ2MU`ly|]j> Re 0wXCZ4u7饆Ff$i<]h%ox]SYpɝ\K 7'8T3,QNwVdFz3?B^ fx9`uZ^$Z"(!Gk6NkM ^j;B®3DxlQ'7(B՗Dg,~mY D]d'H^}ׅq5@L1Z `@ݾ$i=m[*l/&>Ns.^ki8׺V_D%%+G*RegAnH 4i+,C,eHp6IQ()2U%y`HX\Z*{tq7  j7^(;K2Y[oQ! ٍ3\*ޔƅ#`3;ts:-/t7S&*&Sۋ7) \;9̒wjIu5-.ehMO|;SMKթbC'@yubhAeBP|^,tXw'w!SB@JG^)GH&"+o9L00͊㝐|%,_yk;FSS8rQB؈ tPVp\Qf<Ax%,beU0Wt?Ssڸ@RuD)r'蓱m#>[= S8tc.4kC6>eyϰp kL0 ~@n0+VJ8 -6tؖI:q<N5E͹}4c}ndA"p!9~Tq8!M9k2L@(jY2mָEg`䝰B'P/x8f-=֬zAxjcl,})/q n:K+ܳ>=4de0jԐM S^GErÁâ[ŌT;ȽĿ>Dt r/񮕱B7{=]' `cR GKc8CY;dXƿ>sXJxa~n|3a<d46ycb L.< + %G`ۙQd¨-طl]2n~jQ8αv>dEoCZS/5kr|=^'(ڰyg=Z_YL Afŧh G\Z+¥wdcQ%Щܑ>|jCNEOmoCx J`N}$ikjKc6 W \CUk4.aUDNWqJle}5R[ףNbrĬ łwp "㲫?ChZ+A VOCPjEh779{(M͵XnN?*"v8Ax|ҥa585(t-=wKb݋5|k#ؖ2]Sy@WLKi旗7U`R`t;D\/W8dz:}6Cˣ% +_~6u浑wQ+|:OV/ќmEPGS*sJ2WAunX?RJBo>i} nr>g~| I)FFZ}.D:<3Ro1. ©d}5r:Ynp;TN*K9z ޑ 4:=Ӑ\0_Zić͘ΣXQ6M1Z'mf>3el&lB++]\(;X C Kː 2/-dvPef?΄XsK$+ѡؾjj|'O3g鐫ۨ * ^\ڏwXI9+.ҾsY-/ab$)_oYww~5ӥFƂb.\0KE&u?'B(CiOV^c3gtX]"LhGuٳrfmWDrPx,Qr"j*\aeiN%x 4y T?֊|>{taEɐ7trY-X]]jyp!U:Djk9D꺊9yե|H"Fg%~ٿ, #ZeS0^kSFܺ$`L|+J6ZRz)ox~ XGіP a =`mc4+gb1Hީbl$ZT _ҭe2ژX}N_+K)''.k$ =\#)UhE*2:<*[@:Q${ QsBh' D*mJT:2^NQMd~3)II8:8jǜGc|\[ffGtcb3'{Lr @ΏdTBF+D+G_jǛ}M"%)߆ 1m>߇W.VI[HO!޽vv9KT|ߌصV EC͑+ŋ*޽A ۂYE^vKhyl7Q(ie ®H\$ux*r^\EHFPg teJև)фV:dsY )[j@ܦ&:6óɸ&5^lL8p@kBU-gzf1ÏD,R(O$uj6 gpd)/2S[+9گFJ*Ѹ,pH^Z 2R=")d=aaʆt@] NN@}[ܜB]"jS/a.j&ü<.fJ&U755i!3S`fT^jm`xI򠵛T@D2[;煓ܗYnlQ"cb?IhH*6dH[;C'ɩaQn0_uܓ`^ ЄS27_nb)@x@`za|0V0W5 {s$\017t0:O)95 뽓mzތPdZk2yNጀB*V;qk*yD]yw 556FmN:Z-N_#e\dGp2dቒ0r l&P,\ɁRcB_|jyBI6C:a\piQ)U{։ Yқ|$=U!MF ̆AYI/Wu:LݰAN3^*Fjt7͜l(A;; .$H-AC8ȍnVM <38&vz_,pd[?`!0?LoaONu (U 6 d<0*^!T6 , 4R$Np)? |F%K۱|shA*o@pbH^I_nTd {5RC ٰ@xyrpRr0͙as K{.Jn2 ̙ 8oՔC*>d%@oh=fw՚ u u<)æ$#%i;ǂ pظeOF8Vxhy$?:\6g7gd[[_3 @bZf Za.S+\C-#AF-M,y<$Jdvaj1yf R\J TXoܰ~; = 8Sp=byB:Pa+ʏ] uI`Sdr4E~ɬ"F9X C)48l]gѺzIx]\ Umbdg:F7D^w"Q}WFjy=OA(da.aކCl b݀q$EgQpzEfW׭|W|nP[:9I'G$T,gD,p({qr V~`(` CÒzGQ7| "7RGmRՏ7ضBYt]>lE!!x<pbZV` mzvOW]x޲3_ehN5(O8pˁynAxN2j_DS0A,8>L Puɬi!lpԢz''pm}ݺ{l?dIA^Nt-iR[Iz&Z6\[kXm()^P^`yrz\#5 n#.,5'BW.ᭀ+Ҿ=*w̍i=Mެ >@Q?){ W2-)!D \^}gʠD)tXR"C9!]BM!\ +'`޵ސ}nxJL}1vr70H%%M>(%d+5 m3S9ĩ-3-|^ۧ6p$il?\g̑>e6x}L5/|+D&rѿw]nЄwe~?SA)HJ?siݢ'1S6|C|h 8;a@h!B;n7&c$M. ZAѲy% l}"s Eb\<f!Si R'@g~Mxݭ%іls-gjM\aZgz0U\x65"վ!$DvD`ǎb#~G["A\ 9>{-eV/2} kנ A}0=j,Ycě]胪>RL!: շY A_ړRU! 6Z,tK.]$B@D_J:1`B6wbT 0왛}*A)]Uho>7ƴcbj&?} y  "c?}XАzJqrx?G3ne)˿S IWFt axw(pwC=qʙ!)RE*(pZ.Ver% w,5#Y),NX7&qCq[eHnU)k܊\zF%%zLvs0MRDH!%aa!g(?5TFA鯰BÕ*I!QiJ/ srR5]}11vTS?3Շ!3y_i b; 'gĪ; r` `(+WWG%HJMnS^#H*4 `ʿU4tZH-܋29d32'0k#A5p=bp٤zXF-3zX:[;]I)C w~6.61,ooL`#iXtAh#LTD.4 GhnNz@e78hA>FC\YJ6# E@t3b\$ ǻ$Wr,돒c&_(M͚x{CK]4z5^0klB;MKkBRhkֈ[O0)٭GhxW &Tr>YԼ S| gՋ'Rf3Y"o[WyS9KsD qP=q)(o^Go[552Sl g)}1$|3B na3M_D}AT*Aۇ@B/ 𢁱K65^7,0؇&+XbaǼaiq=(cBx7#_wIH$y+OF镲{d]0C1=k$W^:_LmJjOxCi831rF\_Mՙ| 'Y E!|zIA]\[ 4.MBGN€8ud3X#ӢDmjAa*rrYL (qOAhm7_.Njg*PM2K(m~ 㒃Ji8w xA@~屮gZO?zؐ BGx}!)+!19_آDu="2,T _Oiwf֍ɣTp;u'g·@H0,2\ڵKՍL]}V̼ V ixYƓf̰'z[s):qՔyg3Uxl} PP@Sb3Xa (vgOy%#3z0OH>*3kVAdVvI~nF0E&M]q뽮 UYk$6iaPTİ.cJ$,OIēS #p |?o:KC|lP9YM0JBmhryWHE開Nt=dOuFhPjC6XR"^;`a(W[Hy H8beB+\Ujƃt~o)3d$~ha04 p9 I",.2d/`U RՕ}09yu+Rl=Vy l,g(s9N Fg8 #vQ.J=B2Ni*$>YCL8*م?˒`\n0=Fahx@e%QhW3Bkb7m Qwژ S+ ?t RR+hA&iu^Nm6UңGʺkm'.*x _$ P:uZv}C˃#W۞L y Z!2M:Y&ErgOEFDɄ6/<SY'l֕AUQ>W೧J`QZR4htF0ktD듾| 'rT;#w:/i )"H4 Y;AR"m]ы1*-%^@ Cplm0=^Ř lZ!>ljl#/c=Omcˇb[`G7p!UZ#:~%3jĺҶB2QR^=>EkwɊv"%q%G ?`KA'ղ#uWLdDG#arWJ em(uuA>sdTP 5&HcIRaۄ#Y9voI-«d "K*£F0xg[5B:S4jVs``[Ջu 0h>cS|gZ;U ė1߆+A -Vf(:+C_Fcbo_N] .$T=*Ʀ&T6'D>Fa 9[Vb|j@hrԍŊ~sYu@KYڱS̡Dc 6]N N8ُdP.H, *ۼʟ \Բo/Um|9ɭE:NTpt18ݯG凉GGl&~ww:^ ٭̌K\Mq!,ɱ6x2Xf]G[M*햄4R</ 9vn Sw+(Hvs,οFr-]]0V$#0JWxNbYb+PocwK٧" k0H.U!>'VWA=֞Z}ĕ;7 yn1Bqa$CwQ]FM~kIt`Ti-?3"m:EQ4.i҅jo7#HĹ 5l]?3=aPK/? ֩ku={!u-%xb{or6 #"$H,ҩCgIrRJ08Й>?޶"` q{"P-&>Ka KdUDpq`gR=bp~ZDqs캎?7%\ř+6 B[0!RZ:oiĴ뗵*bz{4:"̽:7$^| =2#ŧ1cs[Pߧ#r<:l( `}_S'W'j㢏d22\ƪ#SAG9!i鳓ۀjQ=3=TҞm}}`F3#ԁ {8 dN+:sA׀.TL\BW}v0aN}S .b| ?CȽ'[»?x}Q)]]xv#G384hA*^ci׭;O6ݥ7̕E毿'g==9ı)Jw;%؊v&Jf1狺&v<z xͬʫ@U?xZ-l %Hz Eg5x-߾&}~,vټ .'T 1LO!Bs@[P ê'&'Tm UTA 'h^'tBp[r"oݘ]F fHJӂ}4BmX],m+J6_h/*0Yh}9RYLd縦$prQJV#婐N1+ه%`{q*j Ti2E3 j6РCLQ"+Nh0m#!aJ{f*f%uS$a 9t,VR7/qJ1ƁP}>طQM-ixT+80픦x gBF\%ow U24Ի^h ywAWZMC`Y-ْǤ ?/\-hbJmY1Aؕ /_J4;tЈFক04՞ %%/"+RXzX}XdWF;k: ˏڃzC8'ͩ'5,[]'JZO<\.>)=& l-p)^د"l>Wl18j3h QnL25s&prov.ޮv`C/ț(ELm/nn9Gi$;~wxC< Aʐ}-yuANʫz]eћE;x-Gow)  ,\2' X z=mhKF6pʫx CM GAe{McPQbiI9%fF-EL,ş=H$O۠Y;NEo79R^jsqa3*SBys1.yoG B` ,В( -XۀZnU_=`pITU11cW:e3kS~|лmY)(딥U/,S(}YWS]b]Ȝ*9s5G.bE%9f=u[P5`Kv?xVc,I5dbp4EF_ڴj"Kcf}SZ5@]wO%B:IB}n472? \l}-Mئxy o)?6,EBA]=:Νx;a^+O=FaW/6#[H+ WBYl!O(񞘠ʝtVs,Jn-Q:" qkĽkι-7SekYI `9b2- (01^6 "Q%|gy}CzfxeŵqcmHFm +`bTEN e?g=5n"}_&~u$hJ+bEpnR^fLBx&STv99N,"e1ɅJ4sՐw7gZbRIa籱Vz=薝t=y$a+I jэZPUHh; q_R ߗllcjJRm_E7w_@`-f3e@r~ʸUvѡz%~PH>!>4K)\ 6sfޓys*wQ$(3 uG.+~÷ 7e48:$^0$':07x-Y&DP](?vW; m\btQ+'J#ͮHCH*n蜉q?(evԑz~=닇Ey.J)>LkM5ibk6nptW[$|ddQAB?RS$0Q\_NzO7v\91л'I**{T .yxPeո9g3~n\T;J] #![5چA}kDdT(C[*]HSd\l:)4hJ^h.i~K =Uu "L:B]a+`1b!]Pt1?kq,~3 cva@q7 ~\,P ܞ'kv#" 4va$Wڞk`DQ-[8Hom{gFDaN&f1d"(k/}1e[+= Sxjڗl,p~He$-[,$JT~se 2E{Lv4K"Cs0-ꨩᗁ]B $K/&#Gfč̰'@~B2rV9wG8"B :I?uXl/}֖"an(g Q析,/1+c5tD41x!MF>Z8n P_#i|1fej^2Y!T}dO6l\ؚ9,23-=[D -cK\6=!@KTl_\am3/P-Nkߪ VJn7h|"g6,_t-F6l\ˀޥ#}Vȋ/̜caGZ(YD"D{0 Vg4̹NuJb4J)f*GzSYn vn⾿0PCyLi WWqMLoUI.SCg:n: aU0@$, ˂_>Х~Os޶UYYbK %=Xxj>=fay[/(j\"I(9pS=y-P\&*8,$Y h y u|vvv`ֽ&СtV;D|:伳rz;xjH2eAC@;F4 u.* j{zCVQ(cdO=dzЮaf=Hs.ӊ޴{ }mK1?ex/vE .d`9.7o:0O@qtP!RڗA !݄>ͦ"14c˨nw_Yе$3T6oelE{jjm!%>ak`UqVFq0klDz/6`}6L(eP%Ҕ@+lRG3Y*ֱ͌bP@Ĉطjydawb2=E*@`FùoWa8ЋfZFGMu "҆8kxÀՄk~q.sR6l0><&w_ EA~P@} Zk+P{ȏ,<{6a!iP3]ZpK@)RFFuA٫b޻MЙL\4L!ueS4@fq>ey@CCbQ7uY[YŻ0 ,$P [|l=Ry rStO@N)nq:j6P֜Q)+ʴ4@N=OW!Xz( v n%-٬ʪe P˱k<#!:2*D-«D1T.gc G'j_ 7`Xz6PjRsu]os10vxWj͆W?q=AFXm@}2iR,ok!QK)F!{Gc Y%6AWDz6¼\8i E3EQ-$64៨rϰ&>ܸ} vAY2wF3'& 4e^p(\̙<ظ*3-5ÅaXΛR0L:lP:_NT y,Y "o#4A`V1 z׬  /1=_IWx+OH91ʷ*w*iF أ'?_ mT1g-P_%!5>ŧn2&,_w2bh+/,6Ǭ 2_S.ی#D/΅4)23˴=,C5fWAO%Gq\|iA+kVDf,v2>"'G$ey YUc'fJRi gN[-Ϡ y)j'>WOȰ~r˛h7%Hr[ZLPt&v'k oDs*yJ]BC+y0^dܑa Kkh,w*mƭ?hJ3À )&ޞtfp(f^q>J7 ߪwUnX+d[TٟCY x!u'h51OU6Ė?uU ( ~moYzx ,~5NoD.ni- :Ӆg^x d*%0NsTWaWOs#LM@d +)5xX0CizK`'ߜvәۯ'FhP‡[!EK( N-Rx%ݰCIaq12wM:E$_;d,`M7KriߗlO6MsG)/t&ܷp9_o#Ah9Ԩ:i-6QtIrLLH`:#|mC. a_׽n֪pD"q"ф3`.u,Th2ƭJ7^7>~Du&0='A$^%؈NFOEb`~Aq ]NX"75 a|~<3kmEଠ# fϾ؎V{US-3x>c;.֙j^Xgiۤlh%}G m1^5HX:3V(4ygC$RҧGS^I }x1o3Ѓ .tDH2nK~Bd9>YHP۟FVPC e.*(R&nMmjs44l~@w+j&E[hҾ{\GvYwfjWOp]Y1VL`:WR$ϽI]T bwk/R+s)F`c/&i9hM/&Z8#s)s/):Te*q"p3k[P @f+KL!B΅+T6s9ckJZ̵'g̍yLaJdyVUCGؚq~h`rÀum9IM <͸oX:p2lO†?'}100i`9LɌ)(~rVWlWmHNxB6jdN JzEno47q7a_'j@,/"v)4 /Os3I7.e?MBņБ4}_3(jŨ  _FIp 'uM:ѶϘ,uss2B[*s ug|b9]&h+ª#IhT$1Zo[@ sL&X1A Tز.C8uJ ơzrf;U\v迫~phĩ=Bn&i|߼pfJxxGKnM6~GA42疭E_z$v.Bl%8M K@ w)Toy2p / %ggxQ{C.\O\UX287K豞>pr^Q~ch6gwoWGkLW$A% +>#J=`CJ@xhl~`b ^Eq R bl^Z2ꋎُ<Wߵ͗v@mj|2еP]32Y3_=%pzZ)OO 6J8AT?U(={20mf -8b0..p-_oǝkTI-e83\9k-!Zy+DEi݉Yd)F'I&w^$ d`%0Wc^WgA4V՟IWl>e?-L1ȳNOڎOG~QOzyݭ DIpݡPGΞMBȆb. (1m#Aӡx,"FamR"dq^})a@k~o9h-#j*|X.(6!3xISðA 5a%*3QV*hڭU15wMح& k"ux{COfm %w;PND!:ʗL98*Cw0I.Dt?#3f ,).OJI^D91HLUD 8hqyXSrkNfo%FAR= e0UhUڞCÇy4%7X1mm"%WE}O-v9I @" +<ܹ8Qރ KSiSG-jMPm1Y_|o"Q%U”a kQ& uh!*zVxdhWr[['_R#W .(O!P̖!IMtFVFMA^#1>agG{͓aX>g+zSi vuQ?A4Aw-{3qVs3{>]zy >8 "Շ}Q+IQR"ӱ4ƭndUWf L@w)4y>u$2P8i3*m}xf8KظbM-0x9pJ/C. wEpEn:uoD5'5XG|J|?:'߬4ooCnKȞU5\\]pgS]?uM#uI*$}4-Pk֎eE7 q}E*cuq6 Fq/T۳+PJME5WYE޴D(0@;*EzR9QCH_'玊 f$*Y9"^ь(%i:1 @x 'S+I@[%ګHfv4"S.w2 ΞOpj= n&gmRKi E6bD.1twPb 3 [ qi`7%4p=tPPwOf!JةUw(Ji%a@,"{=q ֍Bmg)yh !`^Г_DPj`r SUxm"7MȆ"N6d9wN]u4'҇?nHB4pяH Jv.`K{揟P6m)ҩU30WV_&grZ;=:C?1 GNZσ\Mtp@OdVu[pI^'_:3#wqG33]$d.em~|#F?ԵdiL==.X'hQ"!4B)󍳇idzNj!B)C:VU/*cfȐe>r>)k7ECc<ҳCؙ~i 5jNG]ۑF{1| >24[X&H. օ- `Q%-VƟjwnq9C-=:=Pyi(g%jD9Q'G \ȓ2-#=5Yl{__1=|W&?`, /E۶b#Can6[|UutT3.̚Pe1.U1 T8Jk5zQstJ[׵q0{Sc)zYLsH hWPs)$J%Էr:&o$E'~FjZl95LeF Gԉ?s9bg='+grNǂl}? AQ6%RҶÈ}Ζa8:Zzb8S n)Bl kѺ•.Kk}kD|] |4;AͳJeN}V> t x1Qu D\<2 z4r1,#[Dmr @ p5x 5GtK(0ܺ6{jtXSU@|g+K>9^C+`#(QlR~<*[ok5E?0{ qmTaG ;z]b$!G|qN i /ܛ"%ƅټ>iރN1\V Vh Bx(ar4P@g<<F倴t99[@r=6]oL`+'vd:,^$;؁S'0_ =/ͷCI (/J1VrLZos^v BuqMt+֓~Yv)9p& /c(p60te!1dE5 .M`Jv9# z()7a23lf͓oi;К̙gzM ؄jsI:i*oߣF>ac LRP~b m6 :1Nfc>)U'{<&Cru<߾Ҵ ab! `{VT,('K5] '\žMZAͿq%P=1ÆBBG%((#Bdb%.b;7:r?U U1\q -9L<ϔF2tt0\@Os7qrj s$ x㙊bl *z"B2#/?>+ C$ \V)pu"غ!5QX9JԀ&&ǸQ3e l^{ ۛlzlpyUƘ2,2iC߽el{beJDsrƲ My 0v{tqꟲ\L)jSCUM +Y iIDiy=\"SC^DNe?VKS_~1{2 Sd߽E>"7dO"Ig2/-h9!xAh LhN c]Lpdݞ6ٜ5AKo*T~myXv%?WjzwLN"0^L3AgOZIW<7sq_ׂ⍒DX-~Qa'إ|Xg4J|la坥(#qxtci QvV_!gAe)>7=Ê PᶩWg1=؅$ggiqXꯇ*7Ǧn&"5LH'GR1*Nͻm[O?׸%XU@3b^}p?5T2 (^*B%yxgVQ$:GoΣv?B>Zm^ 5\9k=ۘ&Jڠ/ODѹiQ$1!^>Yy*ۼL5[x]TmWo_wzBB${CuL4xǻ.CsJV츟N%5%țW|Jt[J0S@(Dklƃ!(gzEb2aBM '`{*䁘诞N6r7kg,Y i!]N~,gf5EtX4+{Y$eÃ`(N\xQOj|V(sJt*Jlj+~[hH-0q֪ZSD)?dʢ,3Ϊ|xhm j{5/ܽ6j6u/9~箾Q h[Tv _ D{/)Cl2ol7HH[|' ֱxJZ`ytktzBq>ihbvxnWwOxg qy"%N]ۉ%o ' DO[$`1͌6Wp'σZ.l\ 'eA05"a>*â;$šPwSFֲzRF8 ̪M1q~:; )g)<[@z!71KY)k^}yx*~IHw0+i# Ϲ7-*#uIVZEZhIV_+? ?vw?(zGp/kG5eB䆻2|>|)R9UOS yPNci%r ~1]7*A<5 ÅϤrJnyԴb96Lr ^5=Wo,-}(?7-kQ^Ģ00؞.ƴcG!JXj$Y{҇?qA=E(&36.`G3^\qEnoq\T5;=ስpJM1XtnsM~y0ܖTHFxdAxaI .5&+ AgTCzjuhnKdH2'w$?'K=l"Rޠ3T qk9y;У tvm3n9FjM!{nW3JT!+{`%h9Wl)e"0^kqs$)+SYRLUԙ]3gA*#iۄD4l!\aBc0Ʌ=\V;iyJus=@ 3}C510%EBte D~6y_-4'9–! ='>H0QG6W{!  w< Ŗ\1aOT&ezYFjDy1eiXC^ qEcR~PK6SA7陭cĊvI=?/m2"$%Z MUKsJא!98< kA]y`DClљbm8bdlJX?!^=f\r/w+ qis\sg yWN UvHDy*â Ԕ`vͶ/wP4ؖdE<;w|WqMU=8rAb̍O>/ґ #/T5YUuDì)k2EBW` mC&ua p^m+DŽK#Lw>o` z$Wj;o>q8dѨiEW3臶qZ 'P}ďY)%ҪOūUv7Dֽk@ؗ1L1-Zgé.;sK6 [Z#leo>U Meؕ8%n/dP;2FCObEʐj]\AOXw724p.Fc&'`D-f`L^Yt8FE22X\?Q>AaS܁DT}6L<֑-ȳM.KL}f81k^ Q܋җ s!Nl|k{gKAؠA姯)\0R7Z*[dZJak&)={N{ADi[knaIPpZLIPk=y?fCsDT`y n#w$ 8`nC]6A- Y)QD/̎ka oàr}WPqן11Q Op{—R/wR/ ZJx02cY#T%}oF;Tt)z%Ĩ7*yZ W?ӡ̨ ׽d(3MhxAFhT A뼷X59T䜑JU#9 $PuK˂O  wY}r%;wT8R:/ y^Dgte>لw hbZj0G ,^MNx()#H%]wg5m[%+gc =8Y (\,G)6$[e%nk=lAX&L)]PNu0q>a |MNmckK>#h >/clsnQaѯb$Gs , Xk[d\"?6v LU>i*߀Cd)x=~zMDqt(>e+qA:!($vC*j9G㣗6. EjEcU׏#@W6DBXKI/zsY&J\~U>QD+Tt߲+Bq3PO׊P偈LY6pFR 82DNi~C֚ ރ,iO)f{o ~|VM#m?S$]Yx:m-Km4mvtH d<ڪ;ghnȽvbm%Wf}``uȿ] yADM*m|pΑBZ:?cLTE.  0$hY\T^YTR"y̝1n3Qe"2յZe>f5?E{)R2xKpu>-̝θ*f!GBjr_kRNpBтv'Mm+SA;`g7y~y,x*"GέnՌfmvtp%$ApAIhVL:eu&$ U>Pfye,$uMLV^Cݮ 48: 8Z1^=}^a}"3xfd4ztX Xz/5>&(J]lydMX^ݏVYHs 8qq%hFM Z>xl5?c ǹ sɵ"H{s3XQ /hV-MqV(8r eQR j?1|0YUT)jO'0u I Mj㧢],#93^^WƜES~tw4.QfMc;; ej N϶g$KaT{] `)cmKRnt(Ѷ5szsצcH`A[ $V9dhWH1u+'m]e7j7po1r6A9;n*Y <_$QU?>?~M)yd#i /ŽpkSژ,⣪V)+95LT(k ,ioj `<󯊢`8tT4/I[M!F8t-ق#))Se _\``~ꐂ@%0ւ[2* wQ'/ЬC$ RQ/ׂ8}BsQ l=oMxFtD#V6{b]ͥ#جqvwUX#Kk19W&,j`Y 54;rPf"atpZvfh{߲s`;kP&qU8J)LIHs.? ),Dx{-n:1 Ѵ8.GHV\GZz1j\̐q2l#":D3MyNk+v~|ptpڢ|ĢHye(Bl.$0霷@~}2׌bebTq9P)>u{`*_< oz:(%:LsפM'~Y Ü ޚpDb[DA"E'9~"-1,AwI9V>T;0dQLnֻZdQىr3T*7J*GHaz_F*HbYd/bHu⸥]fF[cφi9++"s3%m<np~K5nSpS9B&Q1+C6og2l۽7q+os;ԂdpI=/$b}3ysSS\ iGv8|YA[OcK,xֺ(VT{?{K Z`[bÂ'ݢjbZ֣#u%`4zĤ#Vm\kqtb OV>mCrjmR\`1(?j{u{O /#wwi fU8i7\vݸ)U3@صߐD7x}V{.)Qi327F"BT'-I_lQ ;ԣ{GvN*/ 'HQ^ !U(B<(e@ ?|2l ]Ƕ0x;6퀽ΞH[iJiaƲˋJ~Dbc.#Jgzn\Ah3Gj{8ñ5c\N$v=t0yOs+i{{ (.%4gfLzLS[,d jsB-ԫԕ%$رl&=3౻ w%a=n)7Tֹ8Y=TFxש`^`6W@ѡB΅ 'a¿dnq̎Xr/L[۾ؘҐx mE5fkj^!z+ם&|خSƺ<* d9,19îzyt38+КwHV>ז 6'n'] B, |w5d%TXcTS!]`ܑQ^Lgbqr2c*$B ?wj9E#pXַ\?'?~ΓF" BϬUb#P2,*0^W&0ϯe~Y4-7@0N},zs聠MP j/D!ħm'@9ѓ.LѨȐء:+IZVfBuUY箮& rCc\.j}a'l5Qn~A|0MB1;~6%F˙G#@Qs>n7^Ő3-j'e`U݉KJsT8wC>jaFFiLԞefp i?B3<=5(ʋ&3S^Rl(WztޖF%ݸ/u@#' <eSI?3ƶ^Ғ˪y+[-.z}V\ɤqC8S\ӎ؊Ar*SU++IpQrN'!:5րE53PUXflyu gGU~ }` vAh_!(GVȘUz$$w R;C(W$>{ԗ@J^>B{ 'J6:[?ݡ5d\[J蒩Kzgzsbb{:$m{|jΑKKlz 쑽W}B*%V^1+1'yqMN@쎲*RzR{<)[q{W8 Z#i{  |EgGY _2ޜqn%<%%h|2J} ~%Y C];; ~`tbIX:mϞ\vH#x7Tn5рo4YkBSIv%%H51E,O{zM9o\ +)6k:}_K*N8s"[ mבi"<}{R\/W6C^hݒhdS^=9oIVvOv's؊i{y:9pkZm*4>^$A|}V3*:VZ 8WX2[J1iF lP2(3wp^ʳxHӡ)_"iNenue~ g@]MI{آw(mƧ#t] ӭi!-r|WT\'xLM !?سpG!?mE@O u8l)ocFV3YyΉ`dq MiK X'\i;U%V{L*|GjٚMJ+ ⚃ӶZ~rr}n s?YZbFxviʮ/v/rx_XG w#"MUpL@kW^wE LD^]G&]ey'nXZT3TR4ufeP^.PZPa!7+9܉Zud"9ފ`<}ԠD)%/O tP=V ix(9A"[#z֏)Y#/}#PtG7HDg.8gYZ ̍P"}2RuoԣhmTSx56 r^@Q@w<l‚=.M={HF"W"#6x5a=Emաa(%x =n BGlXyI&9¤T .Į%YɲeGf_V,QWċn*nG"N Pai\b2d ,x@/ZؐN,{'ucT CP|Mqh, 0ƥ> /#@=do۷YkM̓q=:IFu=lfRSD#K_z9IA#7-B' ]ĄF+,yYVͷ˸_:-?/gɢ:&w&7i' p7^n /_<`z5%*YA_jrd/^ve賬tfgy)VPF6{k˹T"{eTT3d Lnj)F!!((ެ?i_u}8uPl2bo@?Q ]0X(_7uX: &ZvbsVƀh AxSZ8@3$ڜܛPߛWa%37R_>_% $Gƈj]8 QksZqM/ȏ|r´ ueN.-aashU&:Opgc_ S jgN`Q 2O2}t$Ǹ&&«u[,Hqj(>Y˅]$%d5x(Daؕ%Ꮚ9T5tβ_'dO\u,M@x7uTm}Pn0h]JCUfd|ʡ9% Hpq}_Yot3I̞%z4Z@/o fd:*̵L8AE 5/\UVBP߷Psk=7lfɳ׍Dx\# |Y3nK9?sػz^մ7?|(,E"j9W8|T}!(a7KA)aQKlSywյ6ZfejOq3oxL0Eg,@B9/Ǒ:HiE܊%$ 6ȕF4o L+l2.Ӓ zzջ_zϐCAؘX(|uT6wr2~%$T9L5Y8a6H\leGs8 @`;OA:lD/ؠIW0TxA78j8j6$m#HGWV${\B;>*.7xq`̧ZqU( FJZⰘ6^Zw}|Uyi 'zUY=t1"0=#@* 3ٶV.* (by%(6mTHV,!$_Nb=kd֖:vKHT%';!t{Uے ZӫS#d^JdCud[3 I/s)8uE¤^?x|Xj纫_Lw kiETp|~90>P(WoZ4] xz\Vupl+. ՓGh^u=tRI\j'b肦64QyY|spP_u{:Ш$6t1[ZGdE &$\'@u=wY23I3hCccP|RUHֱ.Ս|h:CǗju{#1S:A|g +W`{ BJKϛ# 2*nDvFt"Du!J:uaQ4Y”$$a%Tv`YKGnz}ZgԏZI^cKHK5y3ld^fWMA ?^]<`\d8<) &L6zfŮͮq1f%aϸ9ˤxWœt3dPԨ\TZqQh rΎ:8`ii^r2/B՗ ,iĔsw?ZCn.c::HT S'd[W4: ƈa3v%^3챼 vD 8ZE[JڢmBR,-:#sp^aS0iSc[GCgϻtݞB0Pzg4NBe /t@nW#aֿ XUt FB-vnnW,5USFߎnP0).O+ymu[K48' :<μWd5]_[^L JTb ilMf%+P!zϻt/wvl/(ټaHWO:9a&yEZylWi t,qRs=d(ye<5&wQMFxM.e^<3ZM(aܦ:96&埱bnTӓLR,]!/Ϻ%_oT9=?XBLjq1c|69kuɃP#3uzOm=AM]߇$tlp:KQKA$Nb5(zZcɻC/v .* &PDj&\JoDgm!`cQ&oLx$}gq]yѢWT>3uqv%xL]EVVƵ V`ٕ1`YqQ ɰUm&1"=V㤇 {7l"hz -RtHG(e/cJ/!] Tk7^AIA.`tHIC^ Q뻍/wS؄bIF 3;,O9r!HE'qp^_(G5&mcBsXьlG,hu&;-"nEdhI;G'*?زA| {Z&bI'$-; {fg,Nev(< ]ah/h|^(jK;V8ȁ8>z ' cM^ t ܗd?..2hgGDצw biuzV~%Һ&ɾ!Nz}M:a5jߩTCӮin C}օҝ:{4"H8}[åkYs:֘]A#3@( ~D(6S vf[n;mgH+YWyܛq+b(p-iTTeQ.84bGz/jK.ۯV#X2wB|kΦ5:tϩ LQvcWLyb*}(u݈Uc 㾦z8R)`t@Gy̓;m=m4*IT1̲﷽řs4GqwDt|eRn6$ߡbsez [ų_@~) L\XlR2%v!f? f!\-5]()7huUvb;].`])gu}\H#+K\0)'DotsKښW>|Dl*]U9|F/SdrrwplRo:" [|QoB :[uƚB0^@hR)Jr+bXB^UY9&Qus{Y? ~js4p Bw)@N&3YnNpechIw*+r jMS &iJHLvSB ʡQadsZx9)/vae`g?{DZ5(f-DMmBPo`94}r}l1i^\9#1P(u+\ 54>\ᡭ;򠭯(B 2&M0m 8ϊ&=e^ #tSeV  XzpCI@A͆|0(n 1.()VTuY1M&׿h]7+o TQN:D5Q=ep[WbM^8s `u׾$cd}|@%`{2 1R]%0>H3ʟ>r`ɊRkbւ|Ss%F0 (V^26$UwKfT v5s D%0ŸI)cX0MNԼ liiMcC$Y32M-3[tjm@jR>Rvt^m l_GdzN͓Wg bG ,Cis"DECfN[Ty;cTҩ5l5s g}AdWZ%oQRU,!J:I87 &:7lD ӊJ^aK&e47έ/7F_B}K^tB ˖\!6FlhMu 58if}z!eYI{k:7ѳ}Hi>c6XcƼ*P^%o< EDS=N HH- q&RP&v-Plw+cm"Fd`.ټmf @0;<㧓mEgw`t${SM/{is?]ɐϭ@eӑhH#YeΨ~z^{Oދ'p %&N6h#*ZxӣO@1J('οl;ONNg.7ǃ[*Bk/OJGɂ|BPgL-J*~/OU@ i\-6lCV#rZڛd~u]_kR 'Y.Hצiit662@mZVnᆶ$$MD)G)sEnS7Kb0 syt4vҏfMPZ^#Eϗ q۱ `JHvߝ,O0h.[Y5}&wCx"P$_ ۙ$,77\+vQHbck_xlU*<%(H:͌^GD5#Y2.Q<+jC15lw2;Kza؅Õ1w#0.pO.L}i;v_>J8}&|y[dt s=:NpFQR }1{LOVf$_3W'>:Jnac>=SӰ*mM˅K!ab2Z0o( ϩ.YV  [OT|^#>%K୑%l@En4`2ڰ^ZdEF"6DsY'jm&IS<-<%tF(<×2զ|} U+-ёpNp';qyAǬ [Ĵ.4uJÇ KGnr`'gɚyyZ#/EZn>vC /\5laB$6ެU;uHA8 Ni6aAhBҢ*OG߿:sԱg-U-JHi7z ɂ<I8FfaKO{@uSrP\J)Q5}5V>#vvCTSN%gzR5gOc@.F y5ƄpXyӹma|7|âzTK ge Ϲ 4EՓ׽e%45mď~[xHPQPaG6"L`=nĵӫ?R&Iӽ_/r"x)sӅIAKm4;c H>ĴB{Tbj1A]m(Ilwh%[6σ 0T4(1E"oߎ :A/fH>\P p 4.[vߥe7 3]j{9ra75\Ph^22_GvykΕnIVQݒ;,/HӍ)$Sds蟋P^[lv<9k(>9.88ML+իbkFI8|mliј) [-ӈ$!cr ՈOSSƘ{ˮ /b߅J ͭJA5tHw/N$(o_;8 _⵬1ߌwL |rd'tAiDc.f\%-J^[ JA \BrZϴ0Pk >?mNǒ@'=vw]fѲDӸy)z>S1qBLrzozi N{fp`$jײ] n-,o]=dIJ.J}kk%^;u!!@o:N$,e@ X۶B!"Uϱd;Hrr}]' ϩlG.1#@'m:?X}ɏ9 z"\8-gd}Vg :@~~Bb?Yʋ%EQU t`y#TkpraS7{z>G;`1Xs#Z?{0*cϱ%֍,rz5Pf "a Y#|a;O3y=\u 6E/iv[*dOkWa[ 8ImUtK^ln-YH.~َ:甕̀kz8}HŏmRbmȯ z_S>֒!%R?#o\TQѥ]Ny9uTxPzܜDf\kp],m*t}hnKzȼn3qT. &T-rφPH26Ġ5UR37-K)doNP)"/Crv] F )ZfneJWda_a:V?q5l:f\*I p#To3)p<+ <fd@CX!p>6UM6ǎ!>}J&O! %D{&g߽dEaL8KYvUkUI',olz@.0/GlĭbTg¥G&'k0O>3ш̚r‚dTzQȰO$ʓ@y:%́P\ A'tNaXXK=s'[:ryb[͢;|Jу'ywlTg8;-~[oA`ٞ2GϮ,`d~M"<}2,objP+\rKrjsٶ$Y fᑪxlWu`!z N"odn,ak3Qc՛FԘ D STFq{`IΓJFkb4T% d0rٿsYpr,ݓIaq{zm3a@U1;B&s@?'c C'#1×}ng6?%kAlǍ A䃷~(u4cXػs`12/`pҜM9,#0v Zf]y6>15_$MykX(X'˷=XېxuH- IPŊ?=Jsݴ y#! c^b5<Oad:cR/tR☨ wpJ4ޟ$^ "!C9=EvTo-1wSZ}Hpt rm@l6[&D(R FZ{%}AzA5\>mPJX@`@Ml)M#PkR?S9=6@lDE$>>2){ PಌS_ҜStT9G<-8|YF{@f>w0ib%D}rs G<g33CO鞙d7?`a"W …5^0y1nNV&KE}jQrYo_.":8>j`_۬]8V7dIbj7V%5p9q{q5o <{H.=Ǿ53= y|^FHDdIo?9nYQ'f´'[-PqV4MHy7G-cBԳU9Ұ7 Ƃf ㏪nQkIClXi0m/`C|%\5! r"`FEp}2/*)%7_xIQ뤺,hNБvR/Ř̏L~r&VwI%Ƌ *L'jբLwZQq9^Nv`:ITY d6&PwةS$4;<6W6!ZN_W/fVG/< uJhuLH׃I 6T`X &jw*BJ]<辆Tg^Sh{J\GL:5K oZ N6m5B;>`'tٮ:N'EvT˻/R H6 j] /\@SmRk @ `rGT#OW.&Z\ 9vƂLzgfuD|e}SRAzK㒽(R-Ü*nHm!QԅZ6fC ;eEm+Ҿ׭q3CkT#nM};t70L2ZزwqUk @K7ۅ>/B3()Z_C^8!9?ЖMpזwW)v#^Yݨ9\\C#Ki:TXbЌMRr0!A"J*$S*(]O{kn]2~L;zQ)O]T%U~e^N\Ɲ~Q!DYPޞz R}<\C zӸFu#0(P̦JYdr߀ND93 ;!Mfj't90<cĉ2u̳ui=5ԧLg6TӺӏw5x%9F)0S;l{";dG'5@ AM`0yH !J{=&8;Xx"R#Wh 3}gx )'cd'̪,n(Ykģ;T#릍8kEo, YUS求 UЩQcSx7Jd-̺Sz'DR${ fW(R_FƻK_0<f,Mmrw}tCi H6 Q*y?px'sѫؑ@ɺP7gIONxE[k?Z'0JӨՇ9ǖ)LYb~lUSOdY_oI8P+84UL|@̚F9*),4}^᤺uth~] wmD5ہ7bAC͊y6,%8גΏ0|t; UCM=A53kt2N{. K h>e |m-l)ZT~bk戂[G@p ?ɒ ;$p'ata߳w)nǁ"zX`}g)5G1j@Vf]CKOs ׿>֋U9ݧe`Vr-Im &+(»]a/ݕ4VRpBҜJJNU|OEVb%jyQ: z"¡h,dg&3:~Y9(VK5 b\Ry0Bq4LJD&kڳjn^ޞqc7w_h2V OHFnmw=(4rb^/-[uo?[,A7es>(Hp*%ٛ!> |喁q t^YX@בQB*zXV_jhm'p(VezH4V/;ҙ˨_brՋ~yx[J ,rɐk_؀+zf[v 7l w^IzN܋{l)1A eu7jiAKl<2rQɢDHI% :9g5U,;C¼ڲtžn&pH[lnʁ1.x)?h^(EGOGs*l1鈟 )E(ʖ9fTh׫(2J7bK.oS՟LBn`^B "zte1Q6RN@HDNR y[IӸñ_%( @quŗA0p'4{!@'aR.@?э.(*@N=d $C?NX2Lig+3oYfx2ݵ#*ׂLA5^B5v0Vh7P.oX{լRd 7[$aveWdWc:hyVͻ)Yw㖆M뒡b?jd BwRmV@dTIDG/wr߂$+&ʆn [ت?)Ƀ)kEe &2Jǒc:k68 s7+| '"ԍ"&=~cFJ]W? 8 FM 6O.vke~}po 2}>M<̕rg-{ȰϰK6}N TYy|eqLYT$eM`D{bҧ#[mG3fy(XnO_*u|$N)M=nKas Qvp`%}4\!A+mZڞ%+ -@~gi]Z{*&`s޺AF_M$ۈ)B$,^ +`͉Rr,,N%7I[8ǥVcDh1B*XGa m^w:Has.36DaK9 ˣm'D֙|4W|5\vUf $,jN吺GmWAxW=s1e!4V(e27#izLuje tqBك6DHuM_WV8$C;cxސ5!:Y99Ѵ9}TG#E|W :1;/ET\JC6 [[@7uG:1)VsFY{rd%h>˅fעhOԵ5g⅋FKS䓖kc'`ukYo>-c&۪h!d3g BHM1rȥhf(-Y1ycW8LTٲYY/Ρ7@ɱ Ó5*1PΈVS EFu&xed4T;s6$Դ$4 1^F}\Q_@R )~w4#P`1?$% l_oہE6З憒(ohT\ ?uI9\ /W=6yZ ܷ3`;m? Si g. u 'E"Vp98gf6Z dfm\8g-'WVJJK)b7> \ܧ5"uCvSQ4߬c_߷9%%gm(##=hܧmFv>ô)g_L~7xj+i h:B^As cԒzP#(?,kEI-xxo!ZN)& x+%sB'`| P}/XFxWh <.TXūYVhj[ʆeTrVKxW쩱ZՔBFR.n?-b?eB627 CÃ5q8 OP1pC3*h;@O_мL}v7ۮQP;n jM0Mb5bD^,%zEekۛRKT)pBH#f)VvƣH)Q׆NM<& x &gL¾~|e4[1y<]Mx:FPd?!l'aˉ f#So7&F@uhX ,JHz7ٹVCqLO -Յ*v1!JvwBbؗMcG`-G(&gZ܊Fǧ)tɀ@(4λ O*: ʞ%_`֬ J`Q;}aF ]MrξP[2y[ 5lf8įvƿ:b98|Z`&ㅹj"2-Aŵd w(mg[6V*Kshn',hlfE_"K:*|QNeDJC(ItmPC;%іCTsT9Ե#oXq䛌9p:FDcIөpַݞSRSZb\3 0"'+cI[_ vH;a]Wbd}Q;kS-K9N;>'t`4״#Sg2aQ= FŎ }gcE0f_ڥu: d(C ~B|6i—߅Yr 1"ڣ uj<^)LwdүE% C^Vy\劦~hf.JVšVCL{a-+iS20 ֳƜ$`EF {Ś+¸^*1`d#+duw5z\d@ݟ3ue+f:C`gwn.f_Xh./tGJߔ֩ܡ}4Vl{𓣐~7'{PpOMw[mb,S'0i' HLz?؁+mwVاk9&ѷFFO{,5ZL]Gob`,ǧKfv+ma!h3ISK& o1#=ͲİY-Dཡ\dnRo>VuLg'CݻeҤakz%Q>H}FeWR ̼*$\.Nt;]d{++%Tr$v_kwL]3®\Wc[]>s(?1+_1netXjM!R4IkSRtF9 P1 eی~ =*Wm] gBҷ (۫`-;#!;*vB-Z] OIdpp荃*fcUD#'ȂSU=4& eHA{gP:b2 }ߦ$Q @zjL^9B=(>ərOq+kZƶ7+mpl:,C \0Ѳc+{9j$64r}%.kfhчӣSa%닔~Q᎗[=HK ]ʬnjM06v5x1\0<=b8JyX!uMIQ 9Q{ 8F"-r. PT!\i.½q~2 le|=TLXq" I&Rֻϭt6}ݥ˴/|aeߡ{rhUm7OI 2MLgg4@bw=cF" xZo%s&$վ[_FWߎ?vU?x^Bi]t<2[yҭu?tu`<(q-1Kg%FﷵAhDwC9xnclH*@6SI~ȜG)H)#ol82YI 4g@KA\{PHO `NLoX\}yCzbsLFuCG hnG.8Qp85}/ER-|Nă(X/SрɅFD2(B *[v1ظAPYB/$Zx*wh.)dn7  dakr+pIIn#>m=Ab"DD5ᲐΉ4 SWaVc"bv [Ld;և!. pڟ-梟ID8x/ʷG3dRX+` -u} fPP?Mz4u~bݬ_ ,oPtN 7P2j΀t$.YEj~#;LqKGC#mZ^ dy\~ ttɏ/+k0go R@ w+fXKvGU:=!{>x`} 4oM#ts娒_6DlBVͯ A=b._]"˽k]wfy fT{HHbmOayc`v )YS2RC؇5_6qf4 `( @k#>P:HER5iqf.Xe{Z< ]+OLN<<)h8AQj;{bSw 22†a:]h.Xm@*>iu&7lC9pOґɼZKG][U*JPz(&BjQb00MZ$#xu!M jPdPduq!ٵZSLɊt:,ao5$ڈ>&0so3pYQ򱦿9:_Qub*~*˯G:%w*%dWȻVr4 }XҿN:»-r6`[&*Dr3ci)FNlU?zJʐ6{`b3A21Acҽ23s׉;C̵mK߮0XLv fERa4~px$cP13{xKiJBJQ2+<(v2<Ԩ tNkWz&>-& Kӏ$4I bhP4_ӣX WrDtԫ(a W.aSv -5R}uRmZŜʲuќLymY{-6zޯ/K.CR#+`{EEKώdy@in5ylpv~7"^ {OEPO˽*c fxE\6{І<X8lב tP[A9ŸUMC '?U#"LЕ"xUY™?X] $m{-IsN%|m~/͋ESR0У'p{pM;|uwOqd+2L;Duf}cY^y@2yэ:J^F_tO[(Q;k8w&]R2Bq`zDh%]K0s;9QY\H7,j s@q53}]b $WW/mQ"NLl;H$V@YnJ%viS92vx:zS ߒ)ybxPnD㊀wS=%MRc^+̧l4S([afdy17 ,vi;" 6NW]ժ9+nU;n1 GM046`5F/,jF9~KϱC(.B}k1p}{2=#Ƴ `Ǝk2ZL{Yȼz@Id;{v R]r,nf]z)5k(Y֧1;k&[o (Q{Y2u.Oھaď E$iWU &Lw%˓׸x>(co_|B#~ۆnGp0Jj_&F+*V99dyւR8Z3Vv+= bSmJAh^7Wu2w#m>GjZF\ѯ5nŧ8৪#ՇJuSplxD?A|j1מ֌yd kuJ-+ [&R&JpWzBE̚(tN'rP[Jb]p*@pj>;dLpH5`OE7Q8 a9 7@zy dK37FL*fS&W̗"wڣÕ<$qFk&|#ٝ^niε7uC 6C콼 W=0eER/{Q( .izW ?ȞLk[aaou9NIsWv+T>]4ղ8y2!j.ˆTAKDP0ÂyoZIy\h E#Qh92126iyϘG1B^ƬmP M%S4y;z}dC򘠋R~ȔnZֿ{moe Hwɷӓbr\i$+6阌*)KKfguˑeM'D \!X_Y򑁯01 ]NN>6Kc9fgȡBKCoLNN1!dtb$y_U1]S`WrT¢$qPюZ(@xDˤ6Tag-D/ͷb4-"Jci[KC w]4iX/;;5zqe 9#+p`V, hIָvmz({20%GCiªkMnv#^lphfG^WE_e28رaEe )O"/2 OeAðUS5W4ld_SIꅤAJ1&7fVj2M55u3[#X4E% ,oh(VWҭ֓>W?CWp|FsN;@knf얤ɨ36 B">Nh3T"Hҟ"ェ-A߭ ]Tmu@ K:-l-Nu[WF՗f'l֑uzKZ̯>Ii1~+;k;)TbSLH'MBs#nxB9oi0#T֣{|g/)0%' >fg8}&C$ӌڿ3t2P':ybڃUMa*&|s2YkFf9؏k[8@/ޯ 2Ԩ?0i<\@AͰ]ofxn`W,!%ZԶ>+Z`/7Xaa..'xzr|K 9fUr 6r]Y6Z~^}S5Ks6dd+W}`T}jVρ5&fp7$VxfAwX;ްޓÐ@͍KGQνg昄&gBix!%8J#iRԄ_JXr]+tI3%5"l#O(v\⮊e ٚ|xw[PP|(:=urmlpQir"j/P]̀)A_ {_IQ8ZdmV/V:Zxb= D;J3M|ْU7Ջ螕9]̈́b7~pj= P_ok#<Ցc/,w*!sP~#ψ:㶂'#9d~Çd4h p'|z2s< ʦ!ִ hKvd:BJ%FMtM({3Y؜zQ3UWGGJ#ы 6 ~23q? }yHZ,S+VŻ{߬;  uk!a{Ss0 jņwQQD vc|r%cڷFfڶ݈.1_e7&qC^dT+rOO>r!}! C3b -nB&̲G "wEdm1[WS.j܆U|TOȭ 2Ts+°0=uҸr(?uSWbn,#G1I8]o&%nxrPC~`+P3=Z} bĖՌ+|*A.d{SKtO"mU?NoNm yHoz *Y,UKO> 7 [.U9c5ŗ3|UpMhןFhK]LB>[ʯ b-oz{0챇v^8by.p8Tvk6L>I=$ zԺƠI9M}ɪy _tXh2K&E8⹋p)dKD)T*&+yP4mbF*ϋ$c\ Zc>VoV<մu nZ uQ E.*N2`V*!_|=~l[?$:HGX,!BG@$EQ bXXGMOSNaZxT*sz\|!ۏkԇw b9!! ~hGQxlc O̸}T΁袹%|,x{q!EYj ]nIρE.dm9iTT78 +f@+wRJ,C%k߯‘sYcu ҹ94P䴦ѿ஽?ӪiϺ4*79;>X9Ewj|ġ?/ͩYkkAݘUD.P0|~rL`6'92Nb쿖!30n BxJq b1 ʸy@ uXUD߇abT# *GHӺjبGu{o`M~iݭ*vǹYFJ1!9j֨L6b!ҹ{.$rMrVxźՑğä́ƯD"'~,C 1ͥ! e袭 f3pȉ6 VA(hY!DxVc&c ov~p,uȐ[:XeL'`^!( =VjsbghCʪmQbR@%=U.A5Tֆb%&E;C`]FRi(S9Gf.Ő6 2F_9%z~g/ eACU&6_\&ʪj(eD#4dpuopp:9Xf=LEf^Klz=fo‰Cr7 "1-eaJ/z Yi@FL/ spWh՞Nz<ʮiz'C_x5%g|ʦR̛QHhW-"ƾ*Oe*_P IdU2hd |{ >35b{=8sS>/j%fxUcw[,HK$kXԺx)lqzC/}(e)3]W,7Ue ªr2 ]u޹ɇnƛ-s&Ӹhʖp'F=6雽w0LLS\w 5;R?6)O@_g >kpΓc1(p5 "A:Α_hQ,T !VMۗ2LlJ,RoW'j`s얏=vsW"A%aMz:7>> 1.FA3EQgQ!bM|X@9 EX \v ʲt5nk >,V jbɑzs=ZeKA1XY,֘߁ӛ:tjrR^~8H$+{Z5|浢.}ANK'L?"keΟuFɼUs *d鮹/WqjJpeĀ. !p.)c}ku>ZZA7,COuysי^ +zu;'g/U6$4@j4Nuû?~SC_4߯?v$Y1ӓ,(ih'C)tB0qdx6PK1wS h 6?=N^#T`m4Y|JC.Ѭ NEcdւ*"~U!|AgJb(ߞJW ȴjy~!p#҃BTL dR;I`JWVPsa'DPnGl$ۯ;)P=[m{ɤ{3\-һ, 8^h6/rMH+.CiMT轪nlEmuT0Zcs;70AưbFpЎvZƄ5hNҲ֓HJ}7lt›1%P+íԚ 'B)#Ir 6T4PN D%O{9e?5l cRh@W_~4=_1.gd#Cuئ|7seiK"4HiqBZ^}80Y6ي2y`he5LǹVM@[)h\SM0ueQ1{A$;[qX[x=$=ݜ.Ў5xy<=Sb h uFxuЈXc课S7>Y01cz==-K!w.ޣThy,ꪯBqkuuܟsjdQ{rU !ZIq:t=KnG>UȤ3a]A=|iU;j>\b<)q]M61TL[[Ԇ#,/ܹI>rmœB)W׫_Ӝf4ԭrޣaMq|:Ϊ=wL0p-@:XYs_*-PggBntVdal%fϕ؎l8sֈl_- 'V9ʗ4:ҽR90u`Q+r༠>$$FDZxjP _TRYP۾‚ !I6s<׭P8谎#0Y]CrYj[ӺP変aw.AA`Tr\|Yu-%!yp(/ugߑ!?^ Y06.ҮPFٝ& ^7?_3+cO4!=EOYx6At' jX(oaRJuyn;8;bݦBy-[< ɼoO#mQv,0l=śѪ~roPbփ8΁͛sY{Zpv5?y;cr"9<VC'QXjMbWfsiC''[}En0LUP3'̃|@wiEΛ}wTx)cCJiF6|K !d9#uф= 0r|y;6)/1  >D_I+kjudHWq/ EpODRwʭQ 'SgCOvFyR8~7NwDm'_PZ/11 D*[ Ve$HZid\")D/ak1tN?{8D=oәBݣq\r:…MR6ZΒP#-!jgMРOPwz6#ԩo%bk!Sc*J)Bt>9\5hDQ@a28$ܪ֯NR.+ˇsMiY׵ Q6MKkg$G`v!QB9^dU;c-՟li)YtXijLڭ6² {V8w[(@:1:m޿@/cQ釠yʂH{nC)-3i:ثoR@gSOxmcଭ'LNס[rQLƘR!G5G;2ڕI Fy46a~?k+yF mXցޒ6e+.\׉eZc֤<`wz>G(.rax$ b̷D[KG0=tzޱCzh䑇8qiqYtY%8@8Cc}?xpX?Ez& |_zOp~R2JLb7%d"%0G/%иv;Sz-0E%R1AiS@mB6zIo>[q;JrUMyC3vɣ e9׼E9` [rhb!>S7lS@#x,+D ٦XL*sġoB؆hxfV &}~qА=5kFmh6=\<kvs.pٮHgs̏׽Q=Nݘ_FMKx]1t I:T@,@AHzưE5/:إTP̶n˦2*!e*_R+g6CR`wD@)0tRR;j±09HlK+'{BAg<*Mdsooz:*uKN'sI*ԉ&@eǗs.\q5|f!@p xpT֠"-ȇB]џ'776ۦEO<2o^{C0-nu ,") 9@S CbVxq~ZXjIxMϻ*?4X[ϨS"3x8'yTzQm <$8eb֢ 0.'}팻uUXTjnXxq{6`9KnRh>uLL[ơ܁폤 *ϸJ7ͷcpc)1\Tu94W5g|=$OY|K,¼:eJ9cS?;k%s_GI뗱4R%1Yex2a- peUsDDѨJ46aDECY !z;Hb03IS=THVU杖hz}Js 0Syӌ90n6Bztn^;CcO/ ZӴz(nj5]h!_ĞŁ-"I#F"woڗ\ I(Jħ"&7IS :Ûֵk ^X rL5СYZ5Bn53@ŏUӅDD&\ "-}mVeUx-dA[ˎ0?.Acth0""wuAŹ:qm,83܁H8 DP䑮XP$Yfeg@0@LaZѳ6H wԙe0A iU ! h}{PEV_8!#k'?zV.VZ𨆏+"vx%Xe$fӽU$j#8Md[ ~@S`X#j'1k96_u][f̜'#ʛW ~|*8m9ϖ mzHѵ` 2u3!>z6LS/3j (Hy3eV$0[0VHCg FӦj'ҙfun;? ƥi~v:_T+'_I"ǘskQ@.kE9&a>9ص~h%w [:,saoCh> }.+$qׇfr(,ze >/h[nmee^آl3މK]j(O4&+1+qWqʽ|x`Dqy ԣ@6pEOlWg잿f]P ܦuPc|G7$q9O6K RGέ \h'3:a\N0wpŻS"80úG@uiHQ&)઎pxBrdBOh @݆5 Yk0Լ𪽄[,\46w7Cѝmh\|q82 izȺ3}CP9e  @/up֠TQPQ<=K$s!G5a˄I߄Jv5)6# ΄ R>L(A^åhˎ1a?Qooi 'Ȓ*Ǔ;sTm@5h+8)%U 1<+A*sԦhմ 7ry4Bk] >ǥpl[c<Ϡ#Ri  *d}Gp7D,e3OkcUtMA_|X VKp l}a۾y0 imY2й$\Tcd&|8뜗(S}o䃫gdh)cK(餲IG#qؕI1#!҆]+?9ǧш ך.Q?p&g(97Sweݾ.i2@(i?iB g-Dk7hhVK B:G?=ӄ+(l0>NP5miܗ)x Ug] ` o@8v`BQq RsзCȰL߱4 =_d_"&UΩZA?T< zu"J}%z 3n֋Y_#G3CZ1AEe: & R4@Fk`&O<~~-PWRy0O~FЙ@m5k;4u 0ٝe&FHM*801 SDwNQɖxnaȥR'6ک_ ½s+C "yG 8gYr?=_edkCfپmÉvX,)3,i}dD^v/mh/=㯵ZEu-zIi=2GvZ0|tY 枰^AE]l#lYG1VYc(*m|t*9h LJXxRsxrLO*/Plmo#wT4z×"'?L,O#uOURJF#Ȯ^K)au@|Q=4FZ1y'mߵ& C/u!kf$ɟ3}02[trHgUΚ/Ev|^g# MQv5N dmVBv!!-" ),eSC2_! ^:yA=4hP{ST 5{ɮkvUggʵh Vs'"i3VMzؚb_$&XR@ N3y l7" R֪b-{_V6f#8pS?|We|{pPlͣ[X.:1I{vڊ0-xL_,0 @O(^*a %۽ks3FUxLMA 줒:v0DsEP,ۢy9fJ*7m脥^\L꿐L:\$-*n} Vk HJysWn~+&1ejjrtN)6]H ԩͷ$Miȕ 0r7ԙ"d K,VR@^qπ(B}(ĹCw }tO>x! E ő54VCGلIKi՜0U&sv]Y#߭n+2 ZUpSNpp|9#YV9@4ё4S'g08^ulQ/rHUVΫ}&XFXcwl<"yME\;tAl(fإqrz~p:wTk砓zJR S46E751rFsaFyzu "z']TtN Fd`O!Ly@\M ::A&ϪݻlOu@HRj\9k6"5M3=|,3\hL1̜ED/#N#*(XzCn4R+BI675QB75P#JcVG5%y5-q{c# 5, c/+e]:CG.5cl`uؙsL8sY4vXַVIvŃAUXN}8%m`송ka-f%qMΐ%%ooXODeTBgkszyŰ.N?n[5:PA _a'?z?8 O&4] HT9$pG1 7,fZ[+گ:;b18Fy+@:cKW4tKQjZT Z*vA;2 h S^v wd?Qk\>M="{iFڮ"P@5ƵbGA?g*RRWREXbQ uhF%`50c5[.sA*TY#X+ni )zqNjqYISG%}DԽ@7D/ }}\w:nl?XF.uf̗;V))ް$Xǁ(u38^y$% V08hkBz-37c8d{9$CnWH8ciX<ֽbUX<3uaY,L`AWܕxiE{8y2B6&۷'w﷘ ,_*V^y0o1(3PKIԅ!E,BmJg ֹb?n`MH^ K+^ ^פ>C3΅uUiMQܔlŕ,`%&B47 NXOv6,-: fd{(1nZĴر2t^-\ A-Y}/l,NSgF:PW"Fwt(}!>-If;Oq0f N*0e>&.6?)&"z|R>}Lp2˘׸ٺ=5uRviuCB{{w9\%ZFUmݭ#:~Vt4.vi(CW40ƉSᷪwJxvf㰬>IAazEB lXnj/gIUuJwk ۮ/Jҡ+najA[aK tuD*mD B+Ƌ. !sl%⧌Kky9H:N”8i)Xr i܄A˳`A+WNfWyx] dwM{i%8켱Qj᳻ j+bS_ V*А*CJ(H Pv6: rGuo0ޢR^"hBDk^LR/(OI6ӘzSHqDaх7&2B/ݯ"kkawfyڔ0n馠6y7Ҵa_hd(sd.xpH\C 'd06ʇV5GhzV"ra4BsȨ䜆TGPR:0(Ԍp]JN9@n㴥 ~1"j1=g"¥0"+skx0lfu|Cgw,)WT>fSn1XHa4ۉV/2}4MmpHG M Lz$;YflNnBЕUۋX]M 3n8}fWewC'U 71S'^-I3' !r0 fʠxH6focod+B ( ]*ь㵧 c?xT)q |h@$mu&åsOЬ0$32i3,.P 6X'(-7,]wkB!lMeǭ/Bwg^,(HE>Yl8n@hbQw@VQd:%6Fh)G] YWFrrPѳ+]̈*Tm" 08ңn4A sqNkZ1JVk2z\hI^6V gTe/kX|%WVkƓ1(K͓Y Ƨhsh6LF@?7i1XY~ B-23mb\J g*}0cF0EE(9-S7$"8tY?vp>Ts.Sdg0QhcxvqMx$ͬM皎j$kNWaaUD~xʵ2dLZB,i1ѣ I$հ?ne+;5>h^VrŹ#LFxE|۪.7@G%-2d*FSV%vtbϝ6.3Q}SؤVkFb(@ԁdw*yJ"<U.M`6PER8@2Lr:$,m OrSGcH F xv>ɂV2$"nXZrgwG"<>0c` o\Zj=ν"'{U?*jKaljztjc l rncD<`?!F6=+2 SX}GN!BBkWԗ  2(`r"I(\cHܷ<ªt7yĚ=:,5ވg *B5dNP5e/!JAO_ Gvޔ:@S,x+)vM BC5٧9|N=f(76T^3S]pÕ|eSs=?Z6۰tmK:%p%{c8_XhVK +JigÅUwH*= "GBm#WJz-.'H(-yR-H3NXMnR4**B7EZH ܞbϟ[2 RuʷN#UX8c8 OSe!xmգOTQEQpe/p;7AJW4j&1K*v**v%L`2;߽L. ŚpGcLGJtӽߊ  L?6˾Ta6fuR}eJQl^Yqc+q,易iϼI&1h?51e6S]kl1x˜Yy n :߹`WJ'BȖM ^Bquг^V]G7DH"xg7ҡn#q%3"vyOoZړ !A!VkJ!O=;<e=μA%{К(P嶈OY]Q+DRzDm_g(͓ 07>u$E:<؈JRD0p!DWVغ2;#9ղ:Q5w]k#^s?.dђ5@VW_>q&+ˆG1i?@a?sr젹7v<δX;x+y|2":ly\-OpSh@ @Μ >;E.jI.; D[j3I DɎ 9o}|RRjmJ"x%:G U?IġѫB|3A;.b#oIG'77zr.эr{cГT$&ҌYe-*+HT2Gw$tgp;Bc:ҼqX~<<:'?iJ'ʥMޥ05'mNՔЦqbR==6CI"{l\E(+Ŋ 8DXFܼLN>k_~% t&3W^wx9$CF'a"aYȮupItP]@*0"S4Wm]מk_}#mO#DZ~v{Gp禩vv `D=s!)͂'iqm^Wә 40rS%FT0TD@ M%iѲQ+݉,E3ӻYH{-!\UϛlO&6P?1{57``_ @>5MmD߂`@6&en[V,΋ +!{cLay5鈬ew#=8mAGvT536mw s\HK4e'LqfnZ,~0^F<W}w #YBa_!K':!Uh; (KknIz6{,22r19`A}K >Yw{`ێzJytH]qͳh &;5f/il9VЇ)ѥ$:;<߀m lBDuvTGzjeqf'\IJ߹7c',8*W.od4;?P_=g u{Ė4 9^ ѹ;vC=wX<=oaG6&ҽtM6ZSk|xj%^7ؕѻ z(UprXx?q<<;;Y0cCvFzLB^biu[IP盳`‡zn10YgtoHBK$>W!=8W桽dFMxY;sX7 A/Ff&Y }%ԎMG%"툓:,"6'W`qH3qlEޖ[6mv+OƖ̟F F 7?%\ݸ^Tu"\iݐ-is]<`NnUr{?햻âomJ[S%(pYNAV . =:#-pφ{ծDp7O/"(% ك%:9o[BhGi 㺀ˡ+cA<ؼEV'q^n[m)F'd;3/JV%Dm=BPDaa/Ns믞99MCo@6vTA@XqŇ2cQ粿An le!fqYJPGvOk;C"MX9bd!c !2R mL>mzNJyDʻ<§sǦ+Yywt,%XoPbic_~.]}Sꟲ[ 3t/~9-5K7s"}:iJ%i{%l'=E@ RbuCV!$_D)N>0ZW)ے@sifLȘY~BITyPQ<KjurW]y:^;ě즓W֑e=Zڨzu Fk%欘E0Kͦn}D*z޹Pzuۭ7բUODζo"cK qcH1OuL~–i5Tܛ!d{W؄j-ZV3aXBf`έФƞ(i xyxh O#'+u{3:o/+6)yZ\|m_}msbB=sGc OIh =Y{K}/eș;ws*+`C BBZ*Cje$ v":BY8$*~wA"WJMA[,efF8:ܣ!.pn3tȄ'̘)-[$8<΃d \'b<`Tk/kuWU-MQF8!\o87rtp>LO0?4j*kX=C }r';asTSn?ydnv\Uz>ƽfl?9F j)D0E-k]Tz[UDX-A?]b4xy Aq dz5.fgx*FQ6<{wDTǥZ)E4DtZtnj&Bxr.||4-HUg@ eaW1=CFXKQFwXEbz bI*Q:,FPGu =4&{U|Uc#zƊrKFR.@ 6 $ p]}x؍zd䠨q֏ L K;t=g!t[<~5ƚfF D6/9F 8қ$%4Qb)˫͏e`^C®|19fW`/ #5 LeeL[ .&@Nk%N5*F?!l*aSh`I<;zCC}y/QuZY򷩪.ҙdȄ,bc灂}2آ[G˜We H?-ctGK^$Jk%  ZPK,[^5-`{FMDOlB\V)e dq$MLH#ОʬD& YQ~bTVBzJ>hX.֭Kz8Ay!0R>Xca$ݣtÔuiH6-Jj|V$IGy%y?m\bv~r@ۑHSDKc34%HDo W]nA@k#˔5p3uoP`ZH-_$pu@? e}e)_)#|y-SQv疱+]_iXOG&1;aA wp B"r;:پJvwaM_ȣI.hGm,2T'mڽk׿0_ ӊ7j7 Ypt;$f*GJJ,;|S@F`\T2@&gL'7 E`1*i]vW1~KRSc16I?uP#mWm&ѦEWu/ OW- 6ˆٽE&yʰ7y~l}86%#a発cm>`?5Q_*@qrI7ꯟSWkݗ;Qp#;U ds/*m5\Irǰ4k~_.,`WDZ>t|xaHX;A]EOߨZz]wlOvx\z`km~>FEQ6MR"ґ+OǴP0gYWXdEm,V>tκ锁ƺA뛎Ʃh !9* iH@U@*%i4/;YLujPi2-f~'̷Q$@d,m^?fዼG*un>ThjMٹ*8gRxGf7+yƦu!qfB)=]; "y Ff5Onkw,$kay\Pſtݡ^1pM]cl񇋿/JcQ<5 EO"&p8{ gkrXJĕFo WtYyIH_6OtS[}9L{k Ɣ?W(\ 'a{{YAp:Q{r|;znR(RI#wJ`5]φFB\"7 tmZ2FڎFW@K4w p,Q@ Pk~\nI.mo} ;OJKS'Ur=P0l=@ ImJ8y^2d/oh-Fۛ QwPWȰu5ľ]'|ag42#?붰ϚѪ8V"]<(ڙlNJn^ "~w#4,5|MR#d0,i d* Qԑ&DO5kDFv2mL{hS{^˩AOx 棄9s9 YNvpb63lu)iL-s!Z2 TqלЧ9 TS1xձZcj :K+,v!vOٌ%ch`T?+xz>kjxοeN)ES,猺I9 K?zԯD6¢O+Cjii#Y!<z1ۤd;lZݷKBIuAf8_l y %֠ԪljB)bPfVRY`$7L&{O`J -+\B-FnYEm*ZKBD,Z% @gS\{MĨCm!*\M{ tK8շ#''c_`yav_. >JY޻kK^'=Dk7H~;v|:C<If?NϞ03w^/efWykcJpZPR^Ӏ/_xq>5csU[La>+QKjoLལ?fFtK >=&|5$ş( :--62_ f N׫N{jQ/O̕ <Bgj +:֪~ `n4EɭoY%2@F&wk} lJeEiIz5hZ>#魳pXhZZVzq ?H%DDU n1 6H@ FFf]q٥ ZS9ķ'ee%l1tb[0!̅ʯO]Py_\pĘiھոobN}Y2Q!aŤ1Ap薞yl@mUFJ4{zMseUXw_mPa6^78Y\D&wx`Qc+7}G!EԿ?}+y $9C/2Trw炋II{ctdȮ#\Ӟgk('q)38pQѕ L>< ՚قzi<̎om W«c* ?*{Qζg f┴g@ a/cnM4$^eNrz^[\:B0\(B ކՄJj%iAšrcMK{5-}/;5p-( CcF ^KaOFMF֟9l8T*q>#+3+84]\!bAr| !~3?b I)]oialZ)1x!dE!0_э_\.)DXJ,pTf$O3^V%1"?(+<0WH{s-`OycCTWm Ee?ȟ"O{w/vÃP+fjȂEӥˆb &UL5 sd <e \d@_VQQ 2-ʈzJ,IJ65'Aw?%'if>d$fۦ¹4Ukv`O&,&d$Hs>'!b\{m^qA!eQu2Us.G ~IaC=C4Ft2[gAI;t0{'GҼ۸^0;XAT#EVaKVU_,Ӑ-d&k۲}%"X1@/S*;_J.,:"x`\lŵ/¿ixX}^#qGo :> \&eIcc̺BB0:Wp) bi[bl@r,26Pa,Nx^ji'E&sDU@޹D@#3#:pO81*N7%^zW%>e /((ZmHʠ\##u2З9$;#2{'Tfl-*'rnV䘹ُM`{S n.8ep0n' ,)TgTB65"ѤDwj",cy5H^+3RҊ.phP?]9,~8K^OCYXc+D #$)+ .je6y7kŖ FX 咘e5Mó|8*~/q!~__ƘYȠ[]͘=6n ^ 4cYZ ~0ؙe.0/wlylveT{zJebpKO{V+ˏCc1w R6i7IW"\X7`XJH&U!.7NM| b<7؛>5\!w=%zk[Dc[Kc)'s#Gb>\ALLx;h0t`$C֧XlD_⣺-j5sdp]dv `_Hr$w.(6\{< Xe'ޤ}#_#ckwQPXQ!_+kӌ  /3/8O74=ȔN ¹UC-BI/~3slzP2 =?^ m$Xv>>=^Ug5-Z?C,nKŝȼ 8)1 'moz$M)хIxFΘnjC? pT l_˯٪8STqJ>29ึ60F0 ybCSBt;\{Z}c*|=hz"f![ɭ0uvUxj%P3v c.ܽ4jӤ.irL"|Jjoʏ]J@#jE< =ۮP,!"oK k4͙Wl – ' qaBV;v4,8q+.c^_"-G57BA5J{&E4huˣaUL\&6i4htF !BT_ܧ'PzMU;[өĒwmy: ,2AYiakOЗ)͋\l)>`rk&s{36򛪵RP ն~Mh(lQ,6JztX7FoMoټ1sIYXV˩촖k+ĕl! i=JpXOχюFަ6#uӒu>Gbξ84:IFԃ 8{$FI>yuw'_=8>%]:H "xmC5,gaӲw1Xr,uڋK{md|?A; i[yjك[˹/UﴡYuAzuXBrã#R ZkL(zIaU?@@:ifW 0ِeE])CT"˾¿=,w,I4»ɏLI/%nFN Јc]Chf9^3Ěe>O,ݿ 5:BbMVY\E%エFSrs3MR_MEB "-#h4= l:519R jwr сM?r5I\S dN^[6ĩ*ڟ&Yc޻iw!'dl53_R1sK$t6d7K%,i(fZ puc9N'gZr\^ѥR+饟vTOn=N&&ޔoyUtА#c۽}[3/- E+.];NƸV3Șj Yktm$8lz"+kBD?c9װ$偽[6ZL]J'a 'I?XpⷬBc]N8B=&iiynL,h) Ȧa.s'=DR7"֞ם >M̀S{+;lV.)LMС UPE1 &smQL콷pm 4hZ.[~2Jfю>fdt|-':EG&I.bip(Uݿ otbs׏LX 9TIAF%x1kKP&4jzaqy,]"%].fV*⺾ ֻ]WMr"gc{ia:9o<$$LJo;J9-ML΋ܛ2 $aT!}{,>m﫫&Q|24@Vq+ ^hi(\=SP;GpNsu ?fHsPᖜTaw+ѠN*k]Wy%ԌAiz;NOdC9>iQ A*Wz~9> MLݎ(m;09* |`k,ԙ1akNidlv&haO01fdk2M;`a5?U378]*V%byqH, +g2fc#81_A[dF$QbVpDowE6裶W-Z^kvD\XuT{N >L% rDby(g=w&nslflx\`22A^,5O$FOۋE CS;QRPT<k#>[sq0PE="Y~ Upe|#)#B.ls\0z3;zHn}8JcJ1Log}ށU BA]mG--Dhpbd ӛ i7MchίkI^5\{ɚMx7?rq:DnBP7|)ͿJM=L3ΨϽ \(ʊ[)ƫ, &\׌D+BigU\\ͯHsQve27qcs]l m2.[lew^FgmG/,!/!"XVU*?5H3~ذTxvEfQnDb 9%E h`:EU4cN @\XKňTL .M[R.zO[xTrwtT^C ϩiݑL#_Y/s\Bv5=Y{\0Tєs݉YS ɥ6@u>K^xʿ^Yh٨Nˆ\ >C}vٯ! Js''fz/ v٢ 8r `R9^pxdwF>Jx0qyg$T;V"mgܾlZ/lKXC5<3 ^~kA#z|8 [-,..؃af~q5j49"Hd̯ EU=D]yÚҧ,EόvM2SwiNݿ){)%MT4pt[MIcX>ȑYynEy#&*"]Ie#4ߘ(jzq0JwSD>o/NֵpoUl#@s]I Ro% ȁ#Ȍwjۤ(Q`ڔ' a&žj@-uXv'k-GCݪk TAVq3,O^ nT"i ͒1 -.~>}ٕ-@~b9ݢHK'-̇N7")P 6d+y&?*};w蒵I#(SIB^z}ֺɱKAŷvtULntTHW6xb q !QCzu8\lآWޘɟ Di.yM$Zq=#e-wOMe$b/a&Xz-p28FIZֶٮcjhW-' s]6M)9=s9+<Y2AKDJW{^96o: )ë9:!v ;1V#{d5Ɵ^P6y{ i[Gp0v{7s Qɡ&x <[S(y e S)X]ۏu%Ayz|";_ɛ=։!Uej *v(; G6s'x' i[&Z_Dڮvͨ9,1A٥ňK e~I5kD{;K UNn:Ƽ ǒxYmUpIYg&IԈX'D4_5z?4CXjVڍM/a5SX˥DdGQTt+S9VpqO{CW!On#fy /wPA_+:D1ڌ[3 _J[i;t?lHJdeH Dcr+dy%ѱ az`0ˎpW+F0"y9оy5;&3w2?!Cx:]i-٦6lg˨{4~h~ûA 6(HE$AU"~qskx.A7{M!;xXq$" ѥ-zkγN߭!JB\usM;5Rd!ctNۚ z[އNU' g6{ _B AHK5K{ѡؘ: 'ڵ9y=HVhZ\hJf"4cʮ7|[1d!t7G- `f,Q]R=m[^Bb=AFunfӤqh}Ы:8Y>%1TԳ̠=/ k󛦠Cf|cb.>gm!cs٣|h=MT$ZAcE;p*-7ZKf833q3'{ŎsoGwJ>&VTlBँJ6ڔYY{׆rxlr.M a|T:cn3`\JC2/PkoOAo>[M{L }fR2%tmyn'@h=D ]aV@}%?kje$:#Գ{Цj& rp-tr<3l`&t1HD1~^HFQH)0ޤ݋w [RA_a!uKȅe…i[niwLR27x4|.|>[},D?9~;|n]E k :EDh)V7JQ \۴uoD]H+:i̐5n8%"^J"94֍b}aDz6TOR\dC@K0NNULtⱡx{6`Φ/RZK|Iό"UAD?BqU.Z,?`Q5`&?6se B,1[>ı8pՇDX{ *]}:}! ze/knrȌx.D¤]Z%FhsS>Q,|T!Z4 ݬǃ9@`VIuNFtG#7\6U&1r*fRw .83!2σH U4q`BLa *g\*'E<Ϗ{sʼ,[.`7dmf^OȂ~o˽ϝixK.b@9]i40[܅=3W_:qz[C[l*;Z6C {@?>{Z>qu4 >`A# F} 9'7Eqi#WɨOLFoo*l?ړV?}c;8sAI&hyD Oo.ryKފ ޯ(ePx-n>ȇpā k Ñ4vOEFKl+E0N3]Nfc2Xi4<ÌPPD{vL 1p!g8w׽W)Gd_#c @ >N;)F>䏛f!D M#]Ny5!\Wgl褒}`|лF[OPf piHWU-;Eo.#i9@mI?@c+aI2s-<췷F#)O2v)8^1Hirk s4u j>"xT [@O9`:IK(-#oe;xz`/UX4D^iwE%`n~9E qJ/5Hip Ri|5DhK0! DknO#ɿݺR>J_֔5nf~者J)qeƴ*j1/Op ]߱hEtro%B"e6Y0 yi*r̃ K+wbaQgL)0X!(zᖳ] bzPm}rEhf%b\ aޣ@DJJ,,VB~Ea(S6 /4·cC9iV) 34Rt<7{:X@~8Dѯ.}O=X M[';DC,Jvra[3&MU)6N*PG& c:gO2_Yb׊!vCYmr €Nܠ9LZ9ɝq-n̐H2M'\g6y`Zybb4EA,M%wcu j)XsdJ^x$Mqp _ؐC i"׀q@aT Ӹ 6l9ًb/Qtg@0CJ>\y@ _pf"V 2 >p8ӷJ5*C;3iDžG40 )_ƴ%uB ӟ&nф fjv~8ڕ˃65mAAH & (T`p;]BO T\XB*mLG5<Ը[ѭ}dp΀{̪G_4;pS0߸8HHjl6GUXp ?۽)%Zf0騞eظ :Q"1oy^>rhhxf0߽=ȳk^dyP,Ș=$YNDswA^;q {ᔣW| "lZu0WCfrڏTqUB,T]\'b%]=ٛ~3689fA+k4PF`?cFW?0ܘXÕwBu_YQL5i ͣ7S2B5N JFyٖU2U( \B I_mF ;.Xqvv݇t0׸=Uy!~َavB; :<Z\.ՠaƟjGN hmG\Υo"AhptVu ̼l%%X+E )i'>hH0yI5["(kwh5J}|8+&]P_ΒIo!8ܸΠ@$ Ͽ-K߀æ꡻/%.cZö`|KOv,L Lm笠-N Q akFGRxLU|:sjQŒ1k|J `IDr3M}JgBՇn9ƃ-t+i9,ھd0[i 4S>:5!?@ZcLmm{<8nb2(, %q 3.  ؔK_cKB{`011ټʫ LF܂J!nlڅUDՠ; xM{( ~T,st˹AEdq-5З`2cx+Y ph俵nqY0lk5 &]_X2/X k,$X7ҭ=s؆^[:%!6[֮{pZ(<720wus csm>2;M І:GޗcY_y_am̄,kCG#cRs:Yt#8]qG"]ɗ$~ŏMwA)mN\e~ሥPDpxFʞFsts)w᳣zEW|ϲz R%r .V׳oj FC8_wC ?%nR=k ?ɱ P~%H6"t TOO/3ѶֲibU ! <>-1^1jj":гmž:1e}S6Ejm˾xaMG1>q1 Ԯ)I4VEb\j@,Hop7X!5]!GPTr9BOpzn70ݰs p<3 9cG j=蝟MdAs"ã?KY(6XʰVעP\`M0p/gч7?2Y)8Ù9kuct&nCwq.3rƘ4-`Z؆ n8H]yEC#b;'VSy;bHfjO B(Q1PRH=FzBq}?tKܰoE~ ܥ/:`jnzJ^fw:}絆l .vtsU$/s sYmWADA=CZ*G ǞxL7^^zʭtvdFy^ D@W[>?t95jyyDcaLF1UQ8]0~f}FOq(sqŻtsxX)U>j~DP8K!M%;#[Ĉ(xf:nކgHŒY&SB`6aL\!4ZuY3>o$fMWb 0CN+*%ucUyzFBda|Ц#=jN))4G`PAfXD0M+$v?qjUJhmsޮ01I4% T9ndA1uvd2Ns (YS 7#C42.7 !6HPXl#~Gy GB.[nIl& ֎.9Ub 3OBjqs%P{ߥCE(&Astl2- fMe{o]G\5h2?N:$h3|>PtܖgY ^Z)nl_:n]G0reOοw灀 Upw>-%4*hmȹj(JVOczŤ $##ȥ!o2#*~>?[ N>6u?\xCL/yqRMWԭ!bBaVF׋9^N*$yGAuXc^}fee$J,"v+#$~@GàޛoZ%>fQ$?JJj=a7!йF6&v܁Sp#.9ge$$E^R jgd.p)#!;x,\ dx38jnLEwD%ݛ ]p4#~YBN̥d4y90k+SM% Pn"-\"8Q?YDM{΍:}5S$Jg㦄V\x35Da܈. 'e&ί TMêV59癿.W+ X,ez 19kǝCϓ+ Yh/k h).8r@=WӶ4'x*llSJip@OJ$6HN\$-bf¢H;WeG`4Q.%1D{뼇!aKW?!$ *AT{YG>J(az5;(&1mbp2!I- LVAKoE(я-WG.t{ #q ;}|ͬw.Ac}q7P5ඈn#Rab}X2 :6Q9H ԺQ`a;2!:ZZ͐GF)4NX% b̿b;8p!Ή`jqvH.׻U PsΜr-Ĥ/lغFY#gWkbϛ8]p@D cc ?xd j9XV&1a?PBZU sdg{Qxʄ}Fx`6!Kɞxlc'p%dy!AХ\/~Vc{G5F"+i_4{Nבm]K7%cٌ)KZr;)ֶ?`{^TH=x[5A&'Gˑ/ł3e'uSkZNq6Xm<%;$H3 Xj7b(E=O*8F݁S3\^{7W-GWrRe9lv/5}JK= b;K^.H" Iтr.07Lz.0ԾjcuC7mR@bl {Xğl^dϙkyCfjPJE<eߦ-!5E9o]żM霉JF^G1PjaT"'4?ENo?-mkc!8섐׬d wGt<+)|7MHsy QAfP`t֊~jL+ ̬i H~ 8j6N :'[$>Tro|tG#b M 1+-x KOQ!B9%F=YI+%~_-No˅Lϫ\Ƽg*}`9rt3؆DYW/Sk\Q.T~][u:&x]eZSF{".RBNb7zz=9~~">a"QJw]Ka $32 l9_#Nr:R] .HLlǗPqWU/j \P[~ְؘ+zr+d6˫́&J{0*ͱ\_,[EȃX\'0i2K,.be/-86 1<K`E=.OnF;~*z\6Dl FF(}x;_Dk]7'ɽF28'{.jIar%BSIE'>τi . oK% &P'F#*DV*L,lgףIήɊ8kÒ滚ɳeb7ņQ("MEրxsԡaXY٥ct"2Z&uA5h6 å;H5#obidt9B*.@&inuJBםVM*x|Dm SHՄ1}e4NHlFDPfz?xi 2K_6!,hg9Ik be8 *_k6?D fYL( ܋:ﻉfExuT41rk"Dł ThE>'r\r=ugsxuaX`dR2|LmCY )+&d=C& 񚂍NT_os;~J4;kg1he_:s{m>/ΰh{<ͤloS ѯ#< .ٯrY]/hZ'n~ɉ(l% FۨD,$Π"8Fp~E O҇Xt䪆3_wV41xT|X{8FZzkMZò.J|φ{F0Ê#&Kӡy%J }}C6 :~q*9mEiŷsnqt6LJeNltw zmC+:I|ǯm5˓B"ҝ%G!' ?Vb:brPuqz*7CGj&(&:(SF:ҏ%Ek^^;5dxA)W3ታ( 0OyN35vWsRPh /rbdxhg,myB;DY`j3[?E2"0\>p~Տĝg"O{̶\Z_ D\9?#b*֗2w*:r3_飹 D(H/&Am@SK/5[56Qb_F.s=$ j@OVQa Aoy5;DO3lZ_:DCtE7qX7`)6 )DszZ(mq8 Qyel(1Km1+y61i5wl%4\M8ftO}E.m6kPc& dz7yzȁOexRi' btz*6jOI UtV 4a_ 0xj?|䛩jG1V0Mi+7jamq, fc`R:EX3TCwo*Y '?)t%"2;0mF.ZBy3E 0U[|`PDMq }"zxWRCCs 7 k1Ӎ[&;sS1 |)JVndPLvѦo.L;Qĩ1~000!x ehs;2۪=OIqJ9Rn6G 'Vجf%>ӑ$9W< ϢӚeV oEX/h[}(Qx H!@GGcuSq'#4Au(D] {9r@] vYG -0*v+WLե75hq@j iP|舂%cK]ct,f _~ ~E͊l_}¯eh(Xۈb:ay%{o`tO?r|<;eߘLn*yBu{uypE@l }/v\*_/(Kwtфx(mHL M<}/θamQM$-XD >uDFw]\nfvc0FIו2ZT#Q gx+ۢ7 QksG>l'AFr'̘Q0Sѥ+ xVh'jAԀ"byldDz3"OP7>s~SGb"5}l왛)ykSۀ;0Awx)$Z>BfQ||,+댉mr wّdK<_?73Cx49kB_Q(HQ0w%9Oב[H`l#lE"/yrM>S/Hc.=Ipd,ƽ'\AHFx+Oᥝ_.R[5ᰁP.NGi1ӍM@!O)j@/*[O~=р#n ;&Uo'>ysÍsFf&#*uV |bUdt%3Dlri`iפ]wx88~xû:V*EñOJ_D~mKɈv ;0a.xmEP<~@icI~Z{œm:8DRdgYYϤ~otR[k/ R9 Fv:"mqnURrh(Ft6`.DgE Uͳ^C$>QoU1m*h;p@A g  \x">V#4'"Β'3xfĀ̮!]Js?(J b4~)d (4DEmn8c'H@qIk:+9!塨C'pn|dk&( 1?!]+| Hk9EgT {W0d+ *5Prdq:gbd|Cv,QcZoS~{=.Dq_3ZbOi: bE_~gK pv퍓t |A X.*fVE;FEV_}L,Yz] b-`ydOq?y[N1gnMv $r?՝D|'lQxúY1og Fr2km!-> (I_lXh_?}l+]/3:'+̕M <Lk!1vKM#DOƘkThGgINIZP\?wc4/X ?Ze!%46fh-z]E<8;R )|OD*^x)wFzl+TsKХ>#E-{ K`(8N?|%sBA/qXf,,8gŮKXZ| @Jb\0t= 1Ӹz?&.Geuw{9o7{[IWĎ3:g[sFhP; _;X_CfI3ĴL?E n/r+] {^boQ@.%~_aZ?(ioen~g!Hmx)bW[1Bqw51ؽG;fVßr4tIgh 5\E P|1qA+<0SOxZä_sХѪ”v(F:N1Lɭ]Y>e:Vaw|aZZ\C`)`58|EW!RPg mtBivq(}Y#,K@&N ȬBMJ^'k\(I 4˸|Cs%z)Hz${R q$k͘o T^={uHX 㐖34qM*ЯS7Ny߈ʲ8,$ ΀ #^孇A(.)6;9靟 ?f2$NϟfPs2Lsf])hl9CagAwEyk'q1}zW?6mU3b<܊t.JhZe55| ]`Zt\&F3$Sv<63p_7py0MRqH\?1f r6p|ZtJwE46F|ն HwbN†ukQFβ$z:3"#9~=Սio ) Q.c}t,vjȵ89@ >4+8`H;d8g-g:Nh1Vֳċą35 x^x`t wk(;j)W\lgͧ7<J" zSc kXkCgkˤuw4X \u;XF1hH"P{VLX+6s\8hl) 8271`YVcU@fYW#/Ʋ<$H@Nl۹#<*W)͝e&W[p6xB_cPvu5jG@ \Mb,'xPh.\\$:l*+)hAuد TJFGD#WDb]Uw@O& ucX.P_f1j*ш-Xy5x3 gPTm#ŗg:N:n̸YOR%pmgaG K|/O6J ~`TMgD{K:զk:>le7"ZAWK.ӵ0#1:@rc6/SS>^7*sVw1LB2~[ŀAۼԏtTj[)\G2Wa7+T 4'gwFs9i|1fׂtie-4?Dec[`'Fv#tE[|c1^6@ew_5El{Yο9[;YEVQ4FTc`ڟ0R̥_{V0o6J?98ESEy1E40] ~ T9E+X,>Qr}&%ŝ!o`O:xSvd˞ qP ~rG/Mi8܆ΠM`C$+|8y8ɣer7o.kSp4+L f.6 5Njz ܠg@X$66&#ⷕa˟u-cPz^ܙ=:b]p ŝwp3h0Q4 ZSlfy5-D^yJ1_TO&Z_ X*_`ԏ`"X>S]HzBe?s֣q;0́NJuنrh½aY(c}he9o7h$|FlO0nxǢLe ԙn<((Ĵ3xx^ҲOY"w&q-zTE?<j$2I: z6 n #:Vdۃt"(@Y[ t* 5KZw:0ǻۙeb7CFws)^\]zabaʩ5a _k".Z:U@.1By2LKD#~,_jcV6 Tc+oܳ/Lk˛=9#"w|pkF b=͛O!v=@b825:/zɿs.@DM9+5ېېlmMBͱG]߁~E$uKR{H ܬ=ut)$RD]uu';WM8ֈZ0tLRk*uXXQ]u2X:v-D(B-QȄh)3otV Խ=`<c9I *z?$N$ +zRiB @҉Q@/ЇX!޸Gʧ?̍~`n"!iNRΊtѡӖ{Ը.x$P aiۢؠNkhloK0Rx[FՉn4qHt!)ɹq44ŊT 9 [;-JOћmvsfJFb"A/,i:\do!NFEjrU"CHw0X>:C>rʌvsxyfDQ~GD1 nW,-tzCd'lf.M' ;V7QI&rMiCDVѩuFF"#$^kb+]OK^BT4b?Iژ -Z|p"4Z[Ɯ êB qu6 Ƞ,_,˝a t>EXvHJgw pajeW IGL¥9'σ :?mL>*{ ;_uwFƚ8,nRsc$~3 2}򷿨;Z1q pe{LhKK`Y> "A Nyrfۛ[@.ߋ"?EV ۵suKhdZuba&$h[%CكP"ģr(atpN(oÈ8*~CUN[7GR;hEiPnFYmk58 0S<[˜4/ DۉI}q#~2 I߯JHYWRv6m˚ Q#K`hB1턫غ=#h.4lLm֒73}c}uu0)f:-f(̄t0J%w[rህldd #3\ [9UcN&b 9,Qw{a4HIR *.C=fssu/QZEƊW醆O FÌF8սQKo=Z(zI0@"\ϟGr6S8>ӘRfsDM}N뚇Z>F*LPZ4_J"b~:uEu/8(W @~PP]V,`e@{J/k4֝`g"(F4AV?'1Xĕ 6~1pS1iLd`[{އMgT ~ nAGLSNU %7lg8 /H!!1$)\'HJ鲢Lg ؓ|ɖ o 9&kϲ܈4"(㴈mA_T76<ňH8!902%{ϡ!P >"v/*61#(8QQ])AC^z⾛{6o$!xulbA_! lǬ<[z,'6Ѡ[ G\n]m*@iR-#OMzzTL/m^W<|80MO ro ODǥjc;o8% kWcKCq)y#9FѹiN~DYr6JYtȥs&@oKpnB>n!&N=E(+}@p?tzy12,M `b]mfN7P,hn!wƑcc,|Nс-ynƣx9HV@}DgLpP"$z.flȐs و_'RIW ʒ=滯N* ! ǁS/^[.Zbа_9lq̛o*mET}p@ֿ4~ŹX+$l۠7% E i^Lq (ZMc>S>P && -+/?~pbz ,TNVi#b 4!.2uV>Q (y$q}L^h1dcZIk{sE&Vό%uH]`W`KrWS=.`ʷeۥv؈ܾ Xt})ĝlOiji9]vNVUթ"QP2Wcrtb,eGQeoKۛ:H_XukdD4-rԉ!İt':3 &J ȱ^"j= +Q= {u2l\, [0'DY0bR}2KT= ;HF|nOZסbm!i,)5b`n}>_:8xZF!ld!@5j+iFnw!F]HEh|5:I&w73r`/kI^|rk?2!BL̏ZA.r(d^ f|d ǨYjnp3~McRqF^6A-VtygaT\g?:"O\su&\ZTEW7J &Wnlײ9"YTs>&r_Nϑfj4(Pӝ|7޸g2( `Aݫ-NQ@O861g`ke۱%A3(2ݬe˃|cdl.Ldy)AӌZmE=s؏CՇ)rZMuiHsGSu8!)Tf4''.T53LU~LfD̊@LA׬ǎ/5RE-wOzgNZVM&`\:û7\e'|\1(1J0sW\ο!ب#7@mӤ #4C76c[4fsUrx5ïgަJVYg;$r"BU!o]L|^UPW9!hM_KFpI/w3|h;a 3jpN;d"u2pV !): k8o6msUWb]nag"mf7A4Bg(0D5&fPXVBMKI!>KfYBV&Yxu} H%|_b6ɵ"%W0d[89퇱%ɔZrεf20JA5SKm6҄O#{f;*x6@E\-x >(<7c| \`1=AصΧX~w HŧDAsF-ؾ)ea b%PReI%f`3Zr'0&n #BzOGL4siroƼyRژ}GLCiKJM3XvQL^eԍgHX䍒>S2JȖSTbͪ/͋L 6mY?A vW5XL(|j` jhu4v~`>ӟ.wDeO:f^C1!-R(^R<0z{ܧIr Lr]c{Q<[`Jr@8 E1NPp}C6j톑Â!M9 BNB ѯX$?kM&(ì60pf FÂ@m~ͯCxX7yn  t@hWVJL*I(ܒ,TҒ?WiHܯ!GW;xc6Sm*QM|pL+|~VJ&UWTר"pDXj-+׻@D kHiHσIv+5+1|c%=l_)\/R@ήWj@;zIߛ\<ȯF3ZZxRMF2ʻ6UU>E7X>1Y}ZuDXs4qMbC`59]7n&oF`Cp5T+sD'T4ⵟ0V=M-eәlŐ% żIS UAt>G.چ|C ~g``qKCyXL428_l U(li`%58Gr'V[aԙapɲg'+ES$ET&ފ!8DHX,&ԙIwGe%6V7_?!5}jC:  OYc{Ec6"H 5a͞W 2%I'M)?*4 Pq~ǙtGuRL=[1^ռ *@77cV.SحcbGK?Jb D| !c1{ Aa\u^HYJcP1.%͸1Ej_ҾtaYs0$BQ9yӤۥJ,eV:NN!V8NP.l"H:n{vZHzq‰Ku=0׈oW3W(5d6G^ tFأUYT'ɯrG˻EgE>= EݭAshQk<ߥGKgk$v[k! f?i'%ژSTk2?jcFABd.Cqjg QaŀRQZ\),Zx[P:> 9QVPⷥ)3BqٸTܯߐ1a9KaL@mmGZxXv EVS ! Gf%SV\i{qTv$ +L,|Б]Xa+#Eข]HOn`6cTm8wjVmǴ7+9A|UU^Ĩ9xt KabI#<{G- !/@IJ٤D~!`-bCr# zM}Bd,@ ;Se0s*;%<( ,| MvmﳕH"s,F*8D=e:N9PKψ_tcRe~SMyX#n qASǢ+GmwX#ҷM~BOfhE#Ah7zm ?1ΌbwG%CUC @(}T?gv%;#͕ybZ K ,.[-nȶ@|O@mČU {hgO&=Ggv @(cXģVOW -QL T{v9myqP=Cor>="&=Ii YEZ2YVP\0""LSd@IvfWVQ-WLRM-9pg(0]մ|Bx瞤uiea0`r^%VT,v9}>x kV܌g((֧&{=$-z˛?Xw$i #N(fADy S|#0zc~kkYtZ̐/78)?wNNQM*tW6Ntf,u7 g۽ i hOAHomS>: R#'~,t_g𷂟60py.OwW?$NNek2 l oYW) H_tM>H l=Bh}UȕvOzhdyh} i9ۍN\AΤ}%R뇞y>VG!hu? *}0ۋOYH^Zehr9)a>*E|'#N}R:YTHc5(v,Ь%^;fdOief%Oa'Lr+=zO?ߴ)ߋYnBea]mbyoI4~ax";Q= ݕg|1Z 3HrwQ^nc.oCE,hL׌j+S#B5M[cnK) |=?rݏVZniB#?A޷J~-Z{N}--y "WoK3>+ؘtOQ-hX|ۙf!]]e![ Lx%F5q݄<̬&D6SbO[Evv )@6Q{wQf)v)IzgNwئEf."{ǫ~`QUywexvh}9%;6Y<,A.c6.eEmIZmIa@ $CJgc'lcWFG?MX)g@L ]9v{ g dfgT]"ȢGTQt:2'XE-sm.Ɯ%t$ȉ[L~:Kp;DE"R& AKtvFuNsLYƹ+fUDe{n eqiνn8̅;+7'@8PURE]굕|X!6}NrVP=q^#9q ΅vCk6-=5Cb y&,ҖL4-ߐ(ၦm<6ЃlK#hWlcq5aFǩQhs x3Vz'DӘW=O!$_eJ|6\tXSFꐷE@jBD/5w h,,xD~xiX#t>QYH_eoַ='_U2ܜ` ԋkb!量70N}ø~Y9y ;*V+7UmABa>{%biV o+wN7߭/.Bᑵ1Np쇽쪜>iT$cGH`K=|2jNǞp2|~#:o/mE64/A/(tBT>՘ D2,s{ +nun{ hhZ`lQD5V ѷT9 u"蘷YԺAFCgF 0wnjْ!L4b`9MPY^-më 38PW@mĻfg|Y 5E?9< pQ 0&ԕ,L6G;= cӷwc#2u0!63b2z[Ma?%7`YxzqW(bԧ9V(8Rs" hÅp ZxDD"Hq$Qgѧ^ʜCaNn$"Wk#1).l/pTEd~Bգ\{VK2mnL%GhYSZ;?<0QP1FҒyՃ,D"戀…c\sXg<P|Ll/0D~ }qz0-jJ"[DYbjU=!7ߴ/;S^:Sө)kr@'74H3(ۧX$ꂻY1khmUw k4w?u G>ny?J_[O6ΑgWnېfe4I6,r^q3ZZ]& mAˡ].B:;]>'d_8cc\c\ϗ"UوJTܭg;j l-Zñ7#&㾄.\)@Rԗ Y&ݦŸΚ Sf,7>~]߹X'.̐\)bX6 *OnXHװѴB=FȝhzB@T7J';?1M8[2KdILZs6vhTϰZdKFŋpB`^׵1oo>LFGK={]wOFUOxㄴ:ɷ Cn::l6L\9|1aY! 6AZUڡESmM"1,%?Igp^y<@8Z/ઉ3,$"Y9P/$MFunjpA1Dd{wrTv㹬9ʡ`ј1?/T@3`j4bSwnQRHj1R{Ea杢c֯u4P==&nʅo 7bхפ/ޡYe%wY88IU_?K1D{Q"MYȗ ]oh2(̚]EǶԴ)7S֌{7ǐՀ w_/ܐX*kvViîyW+ODzy|Z&xǁ.w? δzEJ3qeFibZaאqx<$0W \:&(o}dP&Ӫ?yLhH @?ҙؔ5`uz } )*ANC ۵ Wt7G@IƐ5;X(/\̉9'$cd0kv+U(m6x{t殺Ul(AR%#9{Z7ɼAL_)a:+VNb._Q<8ıQ)6.n vaD HV5/ Sxp9 P2&)"lfhPϩ2rb9(jz/?/!ze/`6SQN8"L1ѡ+Uk]F:+oR PP?8w="儰/[A}s]w,(z1f ndi_&KBU1V=" ${Qێ>ȻTH$S‚Ϫml8J+(6q(3lީEe}ǧK:b 1h OdBRF}^q@ّrqs^_u5z̫yyiR2X5#ɾZCPkljxC@|/ ڦA/5&sMKq󻡠k){6iU9Ř ߽TQDqibAr52Xz\OQc#c>^o :D6_ !52 x Ǖܷ۞@ҳ\+C-%͟高!GjGfE}A..CU]/l'9$.-ٷx_TN4RWԺ 3[?(OU-ңN0F48cu>etՊ~,fnu*l RHXv{< LHˠ)JKoCjKT5"6w}6/%,,J 1 R|p y]A7Q"itjxž>u02` 2a&m?g]@FX/g {'{{syZH=!P =VOe*'Sj `6'r"zTZ"%g2UۖqgU-GGX[rh/`ѕ]u"@/>SOz@7o^n&A1e:L[T^=coj: q 2{B~>e0Eg#ba ݟ{TzqB1ܯsR /=W'oO>;RHxU]i7/Yx"|E;p_؃:e_cQ\O2'hP K )-BJ|o׀%\%x S KH?7y0"mŵd 4YSoSG23ct5Qcv'yxd7.iK]SuL0@T:J|yG/̊v>k`݃\b# BnY{^s^WrϜaaKijTY8 pyDŽ0R8LpuxYrAᤄַCȆ%d<{4^<m&)!^a\բ_^xx#o-BDϿRg)m%JN%Ӳ\oTrkޟռU ߽Ú+oY4مӫ'J 2vKʕ4a7q4?h %rAajS) ǿT)TwUt՞v5s!gmG!:gɓd &g %]ojm&zK3?R΋$|9aMK: 窝/ZB)8+Z9k=53qޕ)^V.qcp@[kfDN[mk;&UĶ9sQ,jzD 2(KtLW 6r] SBָ^avyƫvGOpy09fVI'9Jda0cB12W~g d"K@4 ]AB`?+㫘xzu H|Vt9=17uT3X8"5zjk늩G34ʖ J@h*Gy6CT9\4>W'dchIJ-0\Jo|K!?_V{IIUi~AyF/kS/=@Vqwpux g_̛gEICSp`JngGXtk|B)lo$?.Q2X1%AfB`򜖺ްӒ6b㡩]W}a!lEG쿑r^ⰉAv ;lTG :yGu#>"mg jAvirrt?6|pEԊ v35hawy"ݶu9gx rR+ǥ".Ex+QK'DŽሀӗ>!tL.ޡ䶞 "aPE/2Lj*m c':+f:]o4rmP:E9Mx0 LG/l"Vm gO2@,ؙQq68>|- "]W^jH"m3ڔ?VJzqݑ'V3)b7m7YBXBXg=QC <[Mp.6ͧF+ld 4} ]Il&Ǐ!1 >#mT΁>IJ'I>Tٞ|| ݝU&w,ڢ R{ףhrk/y#P'U}eY=klL3xo{1 8-- YWX 2cD.uGC *&f̧;R[w!;Y;h%2B7\T+xAyo| m8"\rPݪR5>{x%Ʉ⯐j3t( DA=vgORjwX.d 0ެx*@8켥Χeζh9H9=`q7`tB y6GYG:yg .l $_ԿcG5c"#Ǽϡ \D) u> lo 5x|2ˇЭ.\4^ߢ*C-}E0~ԑ:J.V ~ Kwѕ?SDP##7V̱y%pۅ1=Ba0>7<*Z.U(Jr)RU|$D rDE=]Rm,U\T~X_۸65~F`xR5IF=1JA+Ppar8B L1ֽ! 3I7GXcњ{.KY 4`q6Bva.hI[Y-y >J=gSE0:̿:IqMֳWfNNerV Q3Sb0lv8{qB"M$lAHNh53= P+ImUi=FP)jh^q=;^aٯutE}ԒB.Wnyڸh]c 0q'(S`A$;1&n,l^LjM%`c3t7t. IFv)@mhiUAF3Nʹ75hAcQϦWDP@dV$ -h\P:ףXLItr\_DFXo{PTs~Z5 ` }}qp9LѮr3c7`'`F^U+f=f_QkE{N?.]2.l UeƑj`M %}|!@-">#%pۙW]zyg7dnϳfؤSNY֖mKZqsB ~y0I9s.)L^L&U>%L~~ZpJ.&KlAHsᡎ.c5si1޾y@FknbǗל֟۫7{0s6n u.72I0(v QetqDK69Q^N4yN TLMX K%:ҼjBu5=.j :Ca_ƚh.a̓E [\&{羖llJ  *RGP-/[Vn En'bKKt^[{1kws@9&nR> S"yLM\~|@Ȏxπ:IXi.KBr hsBbI0I9C2y61tadZ[VrV+EMA^XT 6Wd3&Q,531Zgxz8vk}H DXuXQ m2g$ 5.R\3/S@0c[FrUNrJ|EU;8ڡs9|K?pfzvtߌDѩHOFu \;ϫt w4 5p5)6cq|9^hcrh ٖY"ά{=^06&"t ]߳ ?_q|߈Nmy Wݭ SoZ+K R3ttkD|CfJ2u?dȦ4s͖2VEi)P(|/3Wi}s ָ7O[ޒ[P>*"rK=:Ғ2S2U_g500Dz8 խS8gߒlb$DL ~h-l{x"v7kfIl)\:0UɱMƬWpR:ny٪MPļhDgRtvf?@D 'P_n_7B(:DNl]sy{*2o-mKRXT`+2`8ced.T"h)̘h|wrNot&Z@ y=3؀/qV7~+L "$`Mx0-2'EC5G$˵z͎r\:?ZZHg;|422ě96eAScXPA`NJ7`w Eut>Hh;S>P [g 0` +f=x3U&tP&@`A˃ tho4bCNgp^VnXo͋8<vI;lv5;03WQv4V#]T9ܑqݒZ diI!93{R ZܪqXŀCɌa xgZnY]S{^gsŬEd[EE5!lǛ|kdsHۤ"7IQ^{p'- %kq/,Y9rdRpN~Mq~[aڅD&јY (h04*W%QӚcuiUL`3ҥ c1Y%ay^nՌI> >@VH#^q+N(y 6/4" Li.*#jm얪2"]q }Bw{9kIlk5uO}2y֓G$DHrgG4bY2Q/q ۉ@3@!=\қiL35çEjXɉ]MW[6PJt(1mcT6q/}Q[]U&܃Hn#&#'GN%@8`Q!V+n|+(=K_d3:!8"Jꈕ+lVa=x(ͯ)/NV'LX%X>Y/# V1+ͮP`){^|}EtP@mPe];:$i y]S'1+L8e90jN^77bHv{8)˹LO#=Pw8ٺ4W=w]V¿oUgpS"&3&6o+aUB5Â>yڡdVQ {grg3S4ydאbV^ LW~KC\%_lk c<ۻ$ˀ: \  Wb9Z;VK5B!*ۋQ݆,X%Ӭ~SGԵ57?D2t֘m]IfEF(Bmj(첅昭9-rqݞMPdS&+V\(al"Aʔݪ\RKBiiXQ9oDJT [Z8mf8MܭֵTo(J9PnЛW`P^"tź(Bj͖?&P,'!(*# 8_[[u.'B6\(8NJc626'Jm%lGn2{aߔ7Ĕ̗A5MUpwcw'f&z:+oyE&L4Xx8OG6udyPL5Sms "6c;vx` ]gSt_u(_3D7FѾ>ЌpdNfKLw 2zTAr~eMGtCvBA8C8H!|Ñ\bVBJs"(Ը6D >#'i*[_U _^T\ô%s|E[na Ćk#ʞfKT \(`NAZ}P20=&>+N`Hc҆wE[>}!|wʲWA؛JeGH$[X-{W):mmR}X{DXRa3H+S4~斀@ HmaP Ss`uw(aUV?hߤ!|-1ETaEnZ+a`!$G"5}h#mM7!a2Z*78!uњzV)Xz3}6C~!=gXǼJrOu$ЫL/fGS(HvE!&>5B%t@UΔ~:o]!鷞7mߡfʏ . OH,dY J13{ #Dk?SSܽ ηW#qSf]o@.hH_83 454Ҡ?0NTQ7PDʲ*W"vw7IR T ]*]vJqli)˚M(%NvƶC) !oF0_.r4]{'jKlڡǪUD \*։r8`{fJ) [ĂXR9h>|;XwSh$oo pJK^o p!6]ST4w`e/BYŶ@Nd^} /7L I ^B7@bEw\!(~Q[wX43{/  QR}C!Podj,74kU>ӽN[v= 8iܝ"ĂO8|a|lvl`\1J˔:[F潒NC+(H[50'z'1huXJ WZJRr7bhLɍRl[.,VPDW. :θ"wf׀́_labv<zx5d]*$@nS`GjLxwRJ;@4_Td+.XPEiֆMgtVvDwS^EʿrǴPYÉz&Ix-i|Pxvc[(ȁ )=xRl?v&W>.wu"oܚ2y2DR3=%\$mWP"69lN}<[NNa:Ş ($:-\kN0yyG;{ Gv-$q=aм2͐f"0|KL.7Ƌ v+S3E|ĵbh4\ A6) ,է| fĚ7:'ZJj 81iH-4H$^D<4;9xIަBpvU.S‚3r80u,r?"YWȠq"p0:@Z16b1,H &t]]K;ӫW'ew<)6CnlrGeVMw)[_5ASJc>Z+)|dd/^-xp3|Z;钀2'ˍnhbA{5ifKtyĨOʺ|OaٺBCDtGA 퉰JO?KTO%J}tjuַ@eh⫽ 75FŜfHrҽ26~H׼`ƻw^pEa lVi!1EֱC.&DHmƙ=g9(@O0yĂߕ6U8YQ0#4ix3zlcbThpMjxY'$y ] VQ-9RieX4UP5{ Nj6#;BUWD=u6k4)rc)%ʢV_ )=А4e#JDmr@Md\pEs/Esv)GЈfU&{ePܯ#=e<31Fϸz.5'huC:E(^XEP>{Sk%ODHAnyԆ*GrD3GT0N#"6D؞Z|D\,qjӓ,p;8m}isFx*y =)$?rXoÐfF9bDWs }"% ZG1C=S>A2 5R [8\W}Ng4yFL1+a$͡N !Y=wWxYmo , qHT2 [g#tDN4X+A z?t6n<773N̠xWH pCDgh> I[ͪx2QQbqj ֔QHϬ1+u fn8Xd~IG&/␆?^V'- U_eK4'pW\ʨ&%D!dPh֐o6:QLG4%ߵLhB@lf7%fъK?0CDauV:ݵݿ3H*[(( +`"V"ލiVa&J8.JcW1lUͦAk Udv(_Y#8Ey~bJ| UeOrg"~5ڪv@RqwC5G2XS' $ƨ7_gvrJ*=LDdL}* U.6 `a+vT O1ܐx | $iTo$&ƴGeնPq'ԜdAr^A\dU?eV#c$'a#b#WGb6JވlV?u]\hM&@uU- `L. N&:?rAJ3XWߣ౟O%rF%\_ KA.*N$c7ͧ_[9=HK%~5>Y iKt' Xv9tJ`.Ԩ?`0Ml~Cnylb# 5KmsL7J~ĥ9&oXzcg7ճ0;#KZgq% _D&"?e[旻qgC//db\ݹ{ kp 1{7 onA-`&4ɞ!3hF| h ŶzץogIc{;%3RH ?nHh*7U XH=8[J9 zv'%RR~DŽo!oʇFRp/ 12ʊj/I,+s4[^aJbÇv -0ٵ yF8̻MY%?|L|~6w(ӏCsHx - W1jQ[k2 w%o,E|NJQw&#x:Bqc\nv3>(u L<:(Eە2zyws}zXMpKvi7C]VEEuZd~U6x|/֩\AY/ۤApx0%b0 y%F׮"*H$}sm1n"m )pj>*e>K/jS[.H%>UG|ĈO']p ]헾οLPDSFT[-n sR91a~ҝ$l8g#mX%3(r fRBEb0L?!yE͝X5ZߋT=lZb^RW97i/\7ioZ"W6Q [ G2Z<[+H{"ClAX|m#ɇweeYʖ ,B" ۞VTM:y} <3yos:=0١s0C{]ה}hnEQ7ByVۆu+1tHj " g-IԿ촯eVY-3 cSD[WO hCFx׷=/4+[7 WɅr{[ӻAyH]>ق Pj#ݾ ˳cnU_e'Оwڄ /ᓇ`’/{]eYlҽԻ{{2`T]2L3n &" +7zNm@LѼȺ`:G Y,o]&@%du&}x W㱩L2*ma3dPÀoJUGx>OOk@M;4lV;``Ϲh~_MdtnXĵ=aڃ1\C -mJn*ܖ+,WӮ?zJ6LjO Kʚ@t)աWp+FhZg͓VMY7oR~^Q:ä_l e#$2)XrO?$:[Z{?o'{ҼmBZ.Ø>Hc(ZBC)-\^w)*lL'dw \R8 ֗w6r6~ĤkCMiwH_'ɡn67+[:;TS 9[fa6sty ``uWYimZ_EX׹VuArIm++&4ar𘐆[E#}b{/0~[p Y,kjP[!cR F)N,6#@B{5{Kc;pϢ1vϾ,_lXqB լcؚ" &~3XN:| /e7e~ܮ@¶=8xGEC0^ꖪ0wsZ4Vhh)ې|P0ImOCLj1ّLҖug V\HQ ֧ ']= Wsϟsi~Z m T7vӼy>F*ϭu;T?u .#qHEʣ:gI>sXBIoBђ=oc,635gEl{W$7 k;*%nܞQk*k/7F^Gy-[U1mS7;?u1MU| LZT䩊 | akM8 Ap?rO6=Dܾ6C^?ʜ !W8=ՏzGA @A($UIls~|#1o oFjD.sHZ)HdwV4E N߲v #6<޵rhr+PaTF;.^=~*`~\]1B rCU|y@{9!!uu| E@X-YeB{DGI8*v"Jd!q,RiVV2~ɮ3j4 ZЬQ*D#.ܦV("s[\f?Y#M&F>E=zUR,Aw2 }8^Qy*gAQCB/R! SutY6aq֒-9=ƻ@2B>|WMy$ .(fUK{ rMw76T>dV7svP@m~|KQ= "+=Sqqi4Gxi䦅V(Iݤxv9fmHv8qlj0 EG̍)QZq[Ou4fK^u-(-/8x-U +,@LlHD|+}ġ9G1º_,b+k1Zz)0u`'=<|t 쀕 N`CЩ¥$DŒnqt<&DQG\5!8?KQqd3sӿg[-6§"\zo뿙FDktDޖ4 2 4柩$vGw˿{>nf{VjhM'hD y %|ּ 3QMbN JZƏt&p:R ׎,Xuơro=unE_L]ю: A;MJu$@Plae&AIޗ߁kn9SU6v{1B߷6o%@IJoZ;#Cq9鍚H7Bֿ;'_-W^Џ*}Y`ھ}P dTyWʧXAUz,-sZf`0)R 'ڞ 8;OP:q}oVHGj;wU2uݿCvu>~_'WAЦ3%SHuI5牞9ԋĚ`V}e7M]N;,&-6I|~ kTS^2=*1kD}(k$x_O'MPu{zp(G;'dĢ[;:Cj6}QxGv uaK+vo1T ӷtXխGZ6;߻g>VFf3%p bL.'jO[Uӂ10?=, sDa;;m4گ ?*{8G5ոx ߮DtwjaWaL ~K'AܬɼhA`)eۢPB$)yI,KU^&ʽ,x&#\Y7E /S ý:gls@IFb:#٪}s٨ t|4}!2kل?GPB7.70lQ̮@ho}I= ;k)zopQ@?WӉmu\X@$9: 'z #3^+SeJ(dfO"INL2nqNdxO:(a+|Ԓ30*|M Eg,iİ>tvZ(x0BtL6SyIS* ͆yR`\2<&]Op0 |Rx@#HGYy*ЋtI$CY ]ۡf`FvRAoRj jf$nyؗ`a!ե +Kv&!fO`B0Ҳ 8?h怀gA/޵:55AT/(:2a4nSsهdu#fYLRtn'}>gVzH٠mFW C!|9$Oh P B)lI0sF<*w ۊYq?vRb 7Rhr>^C}qe|7 ikBeMP+F kEǡ,@rWQ,9rY01`.e;W3Bjs=s"&ʿz!K)80W.5,59/pL_v?#89>DZ$:5y\[uF=agaOaLaM'OLVP%iu~+Ϛ V}ӛNb)Zie˗:AOe֯!ш Fkt}!vC LyN?ggP\RXn].9~aMTOXe({5=y=(sR4BO!S~_[QO551bBI IP sP:*9gyxq~1XW6,&_DL|s\V]mL֘Oa]Z4}A^à:dd`*hsލIwl&]C)Y ylS~dYh̖Qu<;aN}{TBy.%psóYK*t\!!P0;LLXG]9qf"G]O"BFbм! } oȨ %{/K$΢./jo }l?UagK_HbU< v/t@CQn>mmo+Y1}Yã캍Iո62%BҴKަ5.xz bgzKP;͈=HMeN-m2\vlSas%~dG^ OR%{Ѱ nyMYcgDi+ f H^ʺ㴚h/,S=Pi:D^Jt4Z/J5j09d64ЪSc!H,` P=DjDZA̅Jt:g}a"Ҙ%o_l35P$WˌDYVg@ &!bܿF",o9z#0jh d6;*}٬5~@8k~;nsL6HU~[:& aX浈 >z^`">^6d` \setś) i)Jxq}YN_Z`ajZ؛Qހ_or(qA&a6|/ Y':.tBmb$3T˨?eL粈\׊Q46A#~dB>o]Rnֆgdi SrP3Z ]fVL'_Ά> mIPUz'Mhw/DZ9mT^";Y SGs! NM4 4[yukY!l/=p/ ^uu B{ k .Up|; LYNρ͓N?^"Oά÷{^ShgO"kp\5 J.QP Ы3np2Ln t8EY&%}լ ~[` %lj~~pvsR6Hm7npd-~ B,J9k3'U)䙱qud4i;iAO]Ί%WʉN$ N(p!Y׈\ `u?V*ga/4'nt^)>8z21J%k˲KXs㶛Sa<7g ZO0!r8ʻvYb/EpZ+$.}{y멳FX2_GdUp=,gu=v7{׍K cpӗ%=e\q. _F2@wbjЂ4noca :G'HsuPz4c 08 =1-\clעk%3HMzˤbf'zC91s p<N ~RW5"dU9ڂ%@P"IļFc"GnbD_4;aƜU#\~lh|3QTD:1Ơ>m ØpLM,ŁNпBZ7&WaVp6qԔ3t ->&dY0DKEg#U/9^ ߏO\w<^a=-6>[!zhwW? ǤM eΈ3kf?+#0%ȳdxxQUƍsfɘ:}xeYJ W#IzkDyaA^ rKeH]- qڴh~Aʣ%YB4 ]M%dP͊```$yv3Iao߀ZA,io͇ >_}93 qcX'?)E{"c ļvmO!v>r`޴|;{R O PLw@ 6fUR&Xnse_jC o:pbˡT͂ܛGNqx=pWtc7Ds@|rp~ml;apA(}l_k)Bkk8H…?(([ic_=Wj*1DڻF ܍ r DZ" ߗ(_XTqwȟUrBjy0SI~%:ޡUzͭ`'T3i.ʸػLnj8҈0X4z/߄;TFAY% CtIK3i}}лZ.q_J0to1Wܜ֚g2g*E]Xov!s9 )y#]mc  DJE>SݠPw#fV%9;ziA@MjDF0?ߍ㥝vato^1'KbŅgȄB3!*XOip{`tA鼍+7DIk-/u!`{rtǥe}X~&81\#Cyg#AYͿ#ca@ Lz{_7Q~&6ŤFkVۜ<"b>xJ}U̓iio \xJ14Scpn%G7ưbaRl8↓t?u͔hW>6E.JS_Ӌ&7?V܂Gֹ]Խ$.,C~cgƢ=PvAԟΚzK՗ij*)CH!0߫DIy*L(ώk Lҹ2A$L߯MJUb[Er=sq0(Ӓwb?z.Q>ju-8,O퇺ɨ"B݃d$1YNDd ܵ@{㐐þ4\Yӹa1DC &[ Ü{ʇ;{ @O`eBijrg+& MrP_1%7l҄5r"(*s@R~_TSY4% ;(]|C'M̪Rqʀ$ iaM U+sGX+)D@ڙTdý8#L0>˃+ly뽩je/D].&h) 'E" ^M_;Gf~ Pn$Dˍ롢2oH~Q Y@fˆ-%u[3D4QOvJZMsX#`eY!& $gŲ*c1B儒 l֚K4bƶ vTZ;2 U$,x18<"G*5lh15Tx{jYǙ晡; Qhv ڴqO YQHD(_X ja2ܪ5~\>ʉ+@o5pd6TETp4v&;AFj .)+5O){ͼa rA"+g6q*Ԁ_?YȵSJ'ǁ3(BpA3Ym% g$|W|U'3ӺAvum |UWO;xyѹRcϓ`=po= l0T`@XR$F?HX+;9BضF۷ b>o5K 79%Zy~ri%O/ii2TITɕ= [`,C)h!vzǞ {|-+gF:rB wv8WN7߃ ⾙crVG+7lKYԕU3v Q=\3}K׈h=l{ɧ$c¯/ʅ\i&ASM(l" upl<EqoI)}07Q[fy*#QvZ)[xj1ՒztAHh-#^;#hVĪac:FiSR /Q؟1SG=A^@!G"C9\䜟uCzzA•Fgg}\X€X"ջ5Me"N!S`ˇXW&0vG<:czjb[sUY<ШCl0/\7Gu eHypw'&= 󵃷mKuP#IݲPEpeRҮ<3o,,3]cۛ mT8>(̈rդU%KzPQ*!"C@](ԪGӇit7'i)|I%>N8\#YPj$1lk c ޤf]Mբeg H(PMu\YeqߏGBMdgY׏NX(3A?+&hU6}XP- ԇ?vn&o]Μpf]nZ0 ̡N7aHG+o4{J"5_4 8 #9$[AL^晏nO1a}yݎkR&Y4K\)eA(W&ˮH5|k|r} 4Qu*jyVGO%=藶eKrZEk-@g#\,UnŞlvdoqTCrP4|mӒeXbuO=n_6H ey 鞄մĭ 6#31 w"r_GEU%Ԧ٠*#?q+ޅM%&EYv7%R=:4װC2Wovm;K }Ko.m 1i4.~|o iHq,=J#f3 k&y=5j|tSUnu[I qdB4W2E7J{$m!|KzFa)P}DbY%1Rx2)A_H: 6 F  Ca1_QJA&sLy/joKG3.N2Hgf)")$t)T8gW!@xr^,&#Xl(,#0lސfyC ju !֩8v1 i Ƨǒv8%/ \C}:Js++QGMjNex'3)AH$Ե5*ӪEwkqGi"gWNFeX~֐{?k򒲹#)iG2/2:XԧO.)a5)fqD 06ޒ?Pjv7h DkÛkc~X7L#XE8RagG*4[3R'0M$qE!wa~қr-2%EXs*t78mdzT{8 QOvƬA| p}EC}_?iRL3+)H2ӫ3sGaPآf^u 73##ؤ^Ѯ9Ypf=%QWCZI]-xUrU@kD+TC!JI;6tcpc۪Ժ{A#B,Z|UY3bx۴ .;=P]Y(ޞꂱ"VC1![S3 Zަ/yV ݗgH?;giG^f ېo0[.}LF nm9=Ĵq.r; D>\}<)|N'jB8zjye0Z嵛d4dSk+FM¾ d TkJQX&ה_WY%}r'Qi9_b5i:݀\KZ3hr_B[p*m}Ͳ7wϣ$z55- t֖S25=PR ÖtZi;Dő"J,"^H5Hݕ}rG˜|@(l?yp fS 8WkA1!^lwd[{wu&\ܬ&آJH\x}p-X\y!vJ0uvD Z9HUa߃ݭTY&j#0s]w}ʠUޝj!m]AYfī1رqj^0rLHIߕC-sO|oI D,٭wG¶ VF?/j>5!_ (6#Ί<9(~'4<^hWʍ?Ď3'}(gaR"tՐ72s?25YPV q RC4.JSB u" 4=v~2 !tXQ҇{d l ,\7P>\5wPg 1BC lŘO+P-=jR Αߞ EeZ{k}l4jKpˆ.zyV =&}z`$?:%G d':X */ֿcktPx's6 OSJP_ C %t`'KNh/lmZԄTPfmWLJGQ'?@7Q*q=c9 ':()s7RBfLIcwX= kw@? 9V-+& %RgM|FWm *9N- %1\Y<~U@egp_ϵ߅"]FF3odmqqLWHA;Vs7dC,Fh솬*3DJ'\Jiȯko@@)쫺.\$ysr)S)=nw/QnF"E,Qh#{@ Wf'_ IDC,ƨyTOƠWn "Z{>2B8|$LhU`e((\46J{*Q9OU4Lɺ2kxryB;t1I#q^;xpC%Vk)>b!LIHN6_K/-2Ğ4`5-HZ7AKw:nLj2o:fRNٚӺ:gL3jf:f3tp?{<6dVvL%H]@EQD4ƽV0 |C }X>Zws9&؎,Sw=S5d &3,VP|ZM1u,-sdaҍ Di̡#tK8<˫=,J;ѹŎg||tmDٹUߣ_RcMq6L-8LcM-,5&=# EpP^2]hrjq})%sYDC~bʙp. *G 8s mSM2Ku)Ǥ_ 'yGTN;ZW~BA>/hSpnLv;GcPH$c8#$}?v!mpiHoBمzeE&!w л/Bt]J,P؏EE@/˝"[.RȃVU;mby2hQ ^0#=I)g֙nA'.VNDC炲6Z>2Kk=624 Q/?kbFkd&g_96ހWWF탐,˼؄))8(0e!XےQL+ yY6F)uxE솰򺻛JDiˣ \`(\4UWH6i!9feQ/#؋Køص[kkTN FWWnSH^}E.5"u>q^"ь SwyGiEo\]Ze@X|z>tS&Ъ@ =YH&m6U1vMQ(h?^1M^19x&H= c=tEYG*Iu!I bL&]~"YcŨ.P) BS eD=N80޽"PL>x.7U 'E)svqMX鰯pE*6AHFJYN6 IIwӴvZy"$lۨX}(E{KKwn V<0m#!AIPoi~ō?+ c(Ƅ;=H˫q£F*C 4UQ`|rԕ-Af$x=G li(rru_3:4fzNƧ ǁ|8& G:fc!zM j$ 0:Ѓ¦X^S]=(Qh1s_EJ kO`[Gq#o6dx<:{0>uF˂k29gؤF I;3^(m.-^b© ʦ^^^<_Lm >sqlūN`ƾ?fg*|izTn[CT/ f "ޫH0^sʄk_ 0$P_&;;CTawb2g,Q/o>Twe9 *f"Z1lR`FS .l `P p(L}SCIF5cUĦ\Zě08Zhd2-B{$2'3ЈXdž!Ps;I&D+[ܳfGP:@Iƿn)&qz9.Pb}s`ƾ5+Y_kptPHisHRُu.>2ߣ"HtC@׶>M,%ڿz=o371-s ms0[wR7ʌl3 =hl _j26\55s u}f\ꁗa~R6eH 7R's)s/ƭWa Pt7X =';{gŏ"N¾I7ȥU<W?CFOx;jFg)53z+~1TxqkQ_vDJv8SslF-u.iTCE6|m8E6XEy㩡CBy:V;?R ڏυ<[&, ^c jwQ8&*nLy1nv%\9'O ,}2bLw2\ j-A\\ IX/,&݇ R&96ZIfWU . dPr26EfTBӨ۟V퓻t~K5G4dc%p4ECegBł7vhz6u ?HH1?-o h<$尵BS2 />3h!!2+ :H*D`p !{l&e[poGq+j11椝,}Jr6tgݩuoF3|Ϣ8(0huqv!vEN<|Y{& 1,:^lf?g%8zzc+BltS ~5(wCEkps -뎴,dEOoE-w5*1ř4IcQ O` wox-l/?soK?. ǿ0Ig%1mˋ'Ϭ_K4(jhdNﱔ],?jrE3QI|޴3qkUrVQ`L"N<(_g[`#r<܂ȨD:t&jԦ+S1n4?@5Fbe;kȢAyl^9D >^ ^sX<8PXgI wi nqf). G?a <-^$H)dn~_ջ=a8G$%5H E|Ut;K6 WL?SZ)g?⁑2zFOħm NS}7aĄ_C)J;/rI42#9A'kF9ZXWG"d.g 7Ew:Uɼ@O=# 'i3xu$#JLS&¥7ApN]9J;_dLƖ.d#n\s?D]yUS4 FreY*]a?0q0jAU>bq%ټ$GZx%46]~dKJ#:_›8SV8?@ {up<=%a^#(xb$#p~}6&xe$|.[T)( ^u61{K4{S_m2Y2 zmJӸ;@Z*Q"( q?-%h+{sW9APH`3V )}C 7? :}{,KH?UҎ X˔ZJ^0*+;wHɉϱ/c/fNv>' ̡ـ Ƽʪ&!9JwjuX=i5 ^ƹ H^/ ɉwȡp#E-z']u0HaSXePr:s=qE .Gl߅=^-Ozc,BECeL@;̂YDmJ {_lkHXgm\6p:< DD{S F%!Kyu #p! eMS)%H* !=g/tί<3 $g u=h`kCyĵdqB11^Qf{Xl̑v) *@Ky@-]MsZ{A{Z+o$W4xG xQS)1:mwjH/[&5.f9AIq;ʃ;:Tƻk5iYpPN,x u(TI S5?5Y!'K??hCkSv՝c{!hvӬ'$RX5YS3b1١}'nI38_;47zbf=f}AͶqg%.|;#aoÅIˎ{ȵy!CgѾN{; AQ Hob$Nx)o)]CJac]ݒ&1Tl!u 4mûkWx/ud*v;qx$}#Ӻ)dPKiIЛ[ Oeޖ胔ԃ `@N@)p;ZK(Z JBXbBLyA%ı߭_T9-|=ڡ)#<лTOymT|p_B7s.[^\{+-tضxه: eY |3q'IzXw 5c¤{9!xI0+7یȫ :8pa՞+q{GQ}"TVc4;fƋf]QE +_<./jwQ銩y]ɛqt۟]':4}Z^N zP=aIpܐӎ*BDfH\v:(`h $:nіxF4z,kw|$ad6/7m}[Rg2t; ?jrJ}r{t)s勤A$*I}C۫IIk&b^4L_-;WYteHb;!% 7T. ܻL6B_/IhTG_*Zz8z. $bj6'3O˪\_%s T>ѓ#؎WGpxF:'M.k|$Úޡزf; )ƞSd4ơBBw2\yOlGBӾw1K,epf^NNW*| n}*ح'vS9\W?S/#`/TBrHԥ~6T-{*IMӈOӉҎC7e FCYJItI4=8Tr+E/!a!mDhrK'TeՕ/ؚb|ffGx` Z=p}RБ{E:ɸD'i-W_A}\h_ fAI6O_)`USRhn(9$`$受j0xn-e&t4OUGF~0K9mfKr|($Yhe/' ?Ua84wM!գč.3Z73զDT5nd"e 5j(h`hfƸ+  صQMWUT `NN&T8.J7*pZpŠSHϗ|,̍PYrܧZCLC6矊H{ZfQ5۵ty'/4vo; YMc1Ac7bza0 ~%TR h~_.|nΰl.LkqZK&S#),4xRߓ VdU6Vz?s3k{έ &Jt}lb$6- k;~}{1@*hj^!gfzm [! l^^FѪ; Eg{{aT}/(!eŚ7oBWȵc!Q8?t9(V^}izLw t,8R}#__El hw}7\%)hjp 0qL$(nd:Ix"JO7I(~I!/,V ;ofhw0܎p7mb6Mrpݽ@%9u´}`.IK=a 6D%Xp_S<)=OG;_X_ 7Д䶶+m 8)hn:ŵAQ q^p޸2yIL~'Qf-va_";$e`VT7jӵ#10/{r9"_a*>YEG0F/2!b] `PjkF i.H(sܭ0~apI5v|K`t=t"T!<˓Ȭ"{H @LkAN}*qsZ[Cѥ[dyh7s{bQ˚/oOQp+Bqi%+9UN|HW_!早qZ .XiA&p٘L<CH9H()YBU 2 3wVYV6җ cGKh}7Ao(qa/kvq$H^+`_Fɝ SxI6iԦSdCQ,p_-I868 *oLIYWф!KOor!Gk?guwz5Vt.KCLˉ*/s*52X[FF|Kݟш,&~ ߏ$!a!L`!q?ׯLԪ1.Ʀ0LPQs'kxfBm댭pk\ 9fK O !dsx1,O@0۪eij}!gu-$ DߗrZD[ܚ< ۝CvxQvNm)@:bh>3cwmA7;t1sƜX}SWSG[vyԌn'l#y~bdf %b.? "ӧ oE t6\av%a-ܾ"뵤Anh/S妐ydF~7 MY{ &-8f9 ި(,=raTjl8N%*~x;M;j'#c . dY(2*aBFiMOLM'~D[U\IniȷDlU-zĉPk$Rϱ sЛ5ln?J2Nٻdw+!"!dRO*d*Ytńh-٘نlMKnpmWv5nmށE'ќ嵡wEc:2)<44AǰR\`*ǿ)Lⴍ>Kv]h)q*S d6ɟ@7멷س; V ]6 ˯K51Ŷc巓I腙mTeu  u}@ͯqzދ{ʲE U:*Mh dW ږ ?;T"s3ע:gy{HY[L':D9Y<n=fP *Ty>NZ˄lyh'do{&2!q WUU6l. @ TחmUTb%qb y;c)9}==z>hKЧ4ꀒm2t[3`6q/(J9n=\X_2R z.ۓ)Qf :y@$ն}V'3_.)xc:OM|gU9()ѻ'Dpxe \ya7MPSvɏp4lAm+IEMyoYG]t{0x<3 j'k mmVMzoCAԔ nz03z+*߿-7};P9M)-K?ӭ*J4<< $ CEޯѿ8`:dSmTe|KxF _ά$g.V9^1~NVVpG"NPs3q4[OCcn7؉. 7V,Eט{"FV_9y)6n#fe7X g)_$cCDBB<1Ƣǎ_s`89(8bOυ$R>k.j"!,pV" K@T+ƓWۻ&:%^Bv+a v=phMB%ǰ4Hi F2shY]ǣ:5Byse]߳J N\\@-آ3gv06j}-}Yѐ98;%:r|*!^xrv W]"_/9qW-\/J#S~WWac}mL^̿*3O4}NC((tYQD{h.wm&x34f7ER;I@78>Nc% Fr/e]>nl~ɐGU+e2/=;Z-lR͂ Po:`hz3% iPk))s :&`bq<";qW^^7xNyj[^$>@R?&.1V|SIV[bPs Hp\WG8p]%8KФ4u!fvRLw&Gjyʮ;j-OM)s |V3>hpYL?lNbdҼ͠;$,h'K9PG=؃Q?e"=uJ<̌Vi-!Ђ~DZAƑ}I&SVw@{b3Y ]7;tK?۩^AD%\!-?M R>F7 D'R8_#bb -֪+&CqGPx!k>"y֙ZMHFaF"I QUrrAzNb:m wWx˽U{;B3hʰ85AՃrU'S2F-Mvy {.!8DP^N>2ش4Z81=B!$ ΔpjSAW0e\E_~hwu TLn{W[o^č*)M$e\ ܎ZLqd+ȸ'^ĸɭf3J+pRRl0eМ[kbe29iٹ@<đwаzl)YFc[؞x#ibD&'PItʲfG;"u}')cj;z8٨l,55?B^ =">?՛*2'٦LÐJK8ycz8XH8! #hx^-eTTSfRP T!+w[eb!SH@`HYʼnKVyt?Df5b[=3F++c_{<qQzؔid_tt|>72Bwl3 .&M@栂-[!Ltm)L0%#zzxATp2BDl7-ҡc2> ʏ^+Qc264Sw/C"^ 'ᶎ\TXp$?{-tí\~!Sď?[п)2g7+ϵlua}̽p A%TdҌr;UX(Lc  hԞ".o:h@UBmN׃jQ>}zh /jkmf# o /Ef jQcOq%(p0*1sJz/+ Yjda&C%ei:4mSXT<7ڥOpO%uHɤȲF[өܡ!av$?\fFKą ]F pm(0lJ/Q VdVnϑ9}Y\ e ˱aafty/pG=1Ӑg!1T1N Q7"XkZ>ZZSIP--*8Ժ0e]8iDu2EʠtU>uvYz0s˔_`@0`MUqZۤ]Yd H% 7ƕѤE7_-u"p5Ao!{VDyGix&>${Z )^9 3Vd;Q$t(=t18>V{,$TԨ _P3ks0D5+"Ibq(?/cvz')NNuV!G&d'=NXkkxGGRֵQ2x?1K1OףÛtz/0@i*,ZW!vDSlH]SꪛRN~y Hմ;.\.qhp7Zv[}NQ iGG/Q ^H)}8e4{u塿zObnݹ%uYrnR/RA\u]%l}1n>Z1zq=!o-=6mLfvo.DCK̇PV wHeqa?$&q1J GެIGuU DCO7)UJ!Ƃ[c H%v#hyR}1GbNJ.ڞ>E0B E&>| +sy-$!ւu&(q]1w&3ya;pOё@k8s!UǏb).@GRl50; ϒI/]"A$kuN]ԇc?LB#ƌ EޚtX3zOz,R}9: "UMYQ5 GNEBiv55Lw-A .KVTp.d%ѻVT )j{ ˏ*Z~o x+^ /aKICW#q0Ni.Z[w}3r)j jBm4u LR5ަxسVJ *7KtF6X Dkݏ?\nբ[q@,;R*:iy+1'e 'YCJ^9+%4KaSӤt8)' ٕVvp1vS\܉@.g':Lg6&<Ӥ;sD [tD J3joFDvk-p n0-N8D?-)$`iH DK.٥ o_Q뀵$ڌ3O{ F?B<5]%ذrR5{,q&qEʛѡS7Yvw]5^$)X mOָ!|ͬt.jwFJ@B w6rm%U^V^/1yITz78UKc"- !b7fp43{6h.ApeGA/}ĞOE3EF.C>%%`p:> (\yiR]Kd]v"Iem[ߌamX;0"/64ehQË6wgS@+O#s5:>HLjk#Q_ux,uVȞ OrE><z{,Fāv=jR/AQ|ts=KR$0x8Kxq\+HGWUM^s.LZWe â Z&0WG+ w@mޞD] iYcH8$7eӓΙU϶%<4_`Wy&&rS}--}63iYؚuή`ǼdJnb:]:DWKL0; 0$|)x= ƀ7N ംY]EiRv&YPgVхAH;b(k ;\%%UKWs-kte-8,wSr'9d ]2|bu8PϓrphO^俻2tZb?dqBSREf7&wkw@;uAM[A6w!8A,K4@LX!A5WF bɄXp546 0'ScQfJPT/G*O:oeWo^'+~52mEE#l{}Z'XҴtHݧMP*y{Y( UzL pB cHV[݈& E-_R!P;#+pJL" h}nb',ꗘN]J#҂VxF_tJ" yҮR"d(=ҸG:Y (8DܢS~b1B@XFY#9bi3&IL="խ]rEp7oY={uO}ԄiWtᄯT֒P=fQMk )Ѷi7Ľi|p@q᪺C9l8EIQA O(iZɤe,J,r1 |#)Lu<jO8=9 rY(7tԼpDfG!{&5='^ïsvd8 o Í(Kӎ&ceğ2Tywg}'m@oW49Q. $p>&#~s?M7Y tj$jRO]CP5QZx+(1.39/ |ljz<ޤWG]iKf `*I+3K*r_Ɋ'>ZGo5g2H53Ck7gxҰF qb*nŤ%1WࠄKto;։P+cN*D;|DoLNs~SxI`24f)I4`˙-zlwh 5 Khe {a'{kLH09|!):0twu\Mf.[ޭP[,]nO 7Rc cg՞w|-Һ4PLI83WqC1Z'_iNfS1uZn:vݜ jIģl4S|}e=}ڤMPnR0{J |Bbփh{BoSҚaҦWd}J][ZW!oG"Mc9[gM7J (2mV&G1(/hZu7[K:>E3tR!zsh.mc*St-| I۪&rD<>o 1o^ E3*Ƶ X qcH]Y7 NSZ1 0kXX蘓NکY7 +i;n¸UۈuqVK7XP7 V~+[ Y0B  ”E#zR͍pmEEApܐTU\xieT!$-S?F ̤b;P5,_YOڅ3eN3ׄPk-~)֌)IBf'6 -wdeRB[6>`+sj ߒ~|T(C2%wR]bh?}쁽o,[}? v~ %I5!kyԄmf>li{;KD +Q;Iܨh,GdPesZ6٥d MQעͼ& mgYxMz6 b|b>4gRlKW=a`CvՂ~ZO!DmkiD:^.zcṋ[JԵ\\:<\q9ZX$+ˑ5-iJUbTCg[/QcV+SYS`gU[KBڤߤ7R[ioc`GdڬQ/٢y|&ԟݗŴ&D$u3EwiA"@dZYJUPSAgmZ1mp}H#_XghH32 0.^;?2md.Wᡞ1w|!̟[YOS]KHB[țY֬,9,*\dWRR>W=tET#:B5ǃĦZY  (Lۚro敄U7EUc4[-I!1uPb5Iv5 %P@d':ٺ]]șm5Zw[<+]Z;Ң'|_eC&+;l7_t W:q$ /(Ć'o5u ufs_ +;C;CG44A"~TlTe% lO1dоU\Y]w^B9"UM?J\P缞LC櫤:KZҊԀ+2D.-^§Wiɭ/vY`}J8=C]5[* fô>x"`["{ kק,+5f278Qn֓ 47GcT[vԍS h=)11yG{W-{o&ϛI<ۤА{-ǝXKe#к'o(&caojo>{ICJT\e.WPV{ognVɲzr uК:#c;35# S#ݨ ES^ <-L3EN 1`ye>g">HU( 0]Ŕg8|Ka,07T:8gư7k#W=deE*epT2B%i]_gOս5 ۓ8 TGkncwSIpbBP,m= j̟Lo?݁_|;Ь_(Y QH2heWKi̱qO%>M/Ѓ'Gz D )HzMiC>pm|K]0vj5OZjIϿU0deQDLN5o;sva28V0My;ɰ:ݓ,7 hi/{ +Z?ES5XD BTNBx _niXlkǓ{ -ͼ~ݥ -B,/+2z>6cM3& * PΊ1{*AE~MٺG8I$sHT1M0PdA*ĸ٭ b>f?M^7kLm<NN^?)mu"egwRuň ӇJ̖| =ǂ/<z(:_[U-:|-ҷc$?#0:lk}$O7(4ɔEAUQL_< ]4n]NMע`چ<^1ѱji-pw; qV#7'R'bI 6m^0TpL{LJ:ㅇnڈP_gNJ+'#h^(u„u3 IaMֻS̾iE9 {b륓Dx3)3ɜ5Lf#vԺ'+鿧J|9[ncx?jje \듴R]"<1.HSy8!:+cz*PAE_MBNjhZ^u-pQ蜻#qDѬTX`RZkS,ʌqTR®v&>P(tqB* &d)'>- ã^s7b ƘUE>#*|TG8y1|8oyU%T9d[b$/s"xri\/@֠+cTMmt"'2WT[ gg'Hkb~fW:|*`)2iQԧ2;űdgm[-vM,hl,d8,_肧LJc:3jSuX* A'l<RE޾ץ?"SԾ-*H}J䷙mue`zqkTmɎ;cӘ 'n 1θ5p88jG/% 429tߜ!c?nLU$Uob S i&t!f5fy-j_ߔ;4"U0uk~ՄXgWmJ|@w% 7-RsIL&7]fϊ9]|!˓RL81>E9XDQJ;8"9{t%c#띓06o>21GKV kLiXHgw':ZO-yIlVi?qL@:- HkilyFI!mwL;.o ѐP*$–8?o&' w| }BhnG^܂ՎEl݊WZz i Sjcq#V4hq_M.d6^/ +n-P?Fڲ{,O&Z$ZIB8* I'JoeטQ9KOEk0ԧ{[ э=YOoϢOJ}0^,Ǵ765ߖ)z+혍JGNT::XKe B] p\Yp~v`cU q@lx8dyMԔRbBUG%V.bCn7m㏕:^qW8s^z[ˏ6!>j#L+VS +hQ HVhAKekB#S@MlŲHMҿveqvrzG::~(@'\=.}Tu!|_~]WTQϵ3c4=AL,SShIUtΣpq` _{E(`?ZMHE=WɾDW>J쏋Z=xxTdr<'=pװ%l 1ټ+SCVD A9>NBIwh9j dT+ѬK7ȑ!G)hkqrw-i|BJhT\ i< )smEMz/JNŭb[&%lb9KO9 ^Q}C/:P'~3-Ʊgm&]0:}sD(%A7.v /krI}ŖqhQp8l{ rnooχu#P6L\tPqTQӝ>qV,vvZkp63rF}cjӭHdCp7 {gCP9^>|l ??!`vЪ0oYEEH /sܲV#,ds͢o!W^%Psō޼|q鸌FőI>8 z ?w,sTKt5s9jS3={G_> &$,T(\%Z8v87 ?gV_(FC&tCR ^ =g7RqABETf`oC9t}.v}M{“kdF[^wZ!g@&ǎڡ+κ "L>ИSU"+, ζ=\|5s;iq$LvHgM5Y*36ܹ{ѼN2WCҕt$ױO \$boƸ)h= % *ySN=^dB.Rڳ"S )TmOq5_N=W-8tX`nM >-4)h'S]vU9 Tb})M'3ib[ i Zz .@>Rfр]dӺd7? Nݺz!G"q';ōG?D&,ִ OݒP9[p-yt0Ͼ ~gZy9VKdI a5*2]Ņl ~eO!͗P>^cd"2;i)-i?3z$'v ?&hNsFu #¤SG͆?nw{8C5LϓxB?J1"SXv:Qc@6ixcule{"7-FR VMH#ntff\1rٲT$5k<<eE9NƙH;:#2\\qh-.I UZzvo)AgIS*G.Aڊ9 n=~׃| l.>V~ёC *&1-c # J]@Uϐ1.e~v+$hTq9_~=^C>BҔfۦLu4N A|xXjd|ȶ; y4YCx } :hՐfw_w!IXGidhQ+|X74θ򋼝k2`D\70_]U"S]^R3c*O!LMaZN>Iо:rz߲Dz{qMFqnVö$2d!!f1Ǥ黕SsY?_ Fohu_=ʘ |_ςF0/:ΌNTT!5sW9F.ۣl#x!`$쨾(rS]6\H]eU"favcrt–|{a_êvz <oh0O}.G`qY*> bU ?5}GM.Cmhx3\mx1L y\{?Sx%p9&8s`*,@p}'\eaW$P[H8UsgnR)\6%UAF&x oXDw1kWv۹[7=_|V 10X^pW}s0l{Pj \h}Ъ} q*Se8>D" _3%B {n(>4?Vorr{IUށ` i1WD-r,0prrQ+P*8Mt:4BD L01[#ZL}uEB.p'g71jMx ; LR).d)0 ZyGl_;!fILo#H2]vv1o٫h+`>7V=XVP*eWЍDj*q?%c<A0;{9uZ>~Pj_LI/A1Uq ̷o$֦[Aȋx2@vr,Kb_cSlf9'"X">c 3^i&(\"MO^)WQaFm4e!"19ktEThw(CDY/ӶѡO=< 9A6н@Z"& %C6ګEL5sY2܎C=T97vö 61o1C04U闌lk'0+.NջSF*mCDmű"_͚cmQ\0g0l2T Ā_X$!5b.)n iGņ7oYx=A` DmQ\0Qs8&=K>w&=(pζ~&a&I86 zyyteRr-' Uz8E;8 Bo{np[@Bɋ 7eʂujw\%s˚\03Mxg6[>s$sd^,z[ݤI"5"J쪴̖ N78 jpq;>ۆ>-Jp,KRmu)0I ~V/G3Yrc,8:ouL>Io&koHQ&3%D-$ [8Q(o[ֵ0mO1Qlr3nc8pU?@h7 g԰ J@EN_pʏ̈aH"y$Vs"I Ӊ]To!A1Փ`&hR{\lz TgVkH{&yF7i|[QE6֦ tYfV6$ 5 MC͌ D "ŰyC&Z8SΦrxSܯXv5iز4;L%.f}<&X34JPy2eJԩI7RG FT@9M=8!s7"=Y.},̟8Jg:"p GQ_'q|OdD@\&RD) _@z {t[򤛐3B1 ~k~Lǁ4*#,\;ݨGwe0)ftqHG+Yd=Е__x2wQYDɖ[^Ik_oK2Z"ʍBo2|tߧQTFx%4DdLpqr`-M3Bs gTݯl%lHg˛jr-Ԓ%Pί,ږ%t+.nyN{qdeK+v+K%*اg=SLIBKc}O 0ѕ7CŇMcG\"@Ѽ%4j\cmV^UؔinrK=4ңrM!zHNAO~jGHRǓ*INQ9/- 57`+"ާl&JW54VT 4&6\Ͳ&w" 81:VwA Y3}ZA? qOM:";SV6]HCC#bEpW/yʚ})922`A)-m&mă#07Uu~7Z\XJ x69j 7h=λ=n?e7>.*D 礒F %~ ;5k`H$iTG; ^TDl1RAnf MlL(΋ |Wh,)H:e)"Ңq P߭ }c'&XAfzʙG~.2)?EDe^h=<"T-G~D@EZ4&*i?6 3 zRFG D1# 8/VIkfV'~lOfvP:%rƉ|W/bR3ʬQ7[q!j/&JgmKNm.[1jZ}q%H7uP˒}f5 }АuI_9cr_uK wU}/a?7׻ˏh7leZ=c ċϠ˽ۘө!+, Gc3a8*8[Ծ¡lz#/Y!0>k7i@Z|qAA>,-=tE-l]I$P¢J~eBS/YGG"2M[{"yS-,BkβG cG]Whdș;DdJVн~08 <&[Q(G~Q~UEb7mpOReIJ7*V6ϣ.[0~,qm7]X+W_F|^ǝmUbxFV(VY:b '6N.-_}:![Sqpޔԛ8$.ǚ;I/Sjer\N*t˟X~tQ=J}*U&fbB!lha"?ш$ZGO>.9^+K3n]{}w 6vQwB핔&=zqQph KE+Y;b'"sYx Z"v麻p~6$h2)0܍YܷTRm)Gg[bC|ר~ mZU2){C(sQDV2j!U0 Rwg&V8?usN\XvJl?@`#;+%qr򻣂Db62\FL4nkS<^{_%Z8f $g}?W{/+p׍}DNqsqaݙ>_$g1})z8HSRgKb>l)Dm)eܽphy*͐ąAK EsIޑ~ռF Dt5yਁ6$,Oh=]MZoLr܆w&}ip޸}, zogW'\L|I|{Ӯk3)3=).`]  iJKA|^8t|[A֚Z)+m[9cV mW]@e®U3]`0ؖ2d_gƞ[$Wju7@ѽku+Z{cڒXNH۱{:Qp+S` Ɂy<--elU=1Ԁ雏we}K X/&գJӇ07M .@FNY<<@΀_ i <Н2DVH.Br7LI84 R6b{NphJ E D XՐԉ) ߁rg/9..;Bh+,Ǩ]!t[%!O껪[d,fW$7_z31l(x$_>8[7,H ; N)>X;=Ρco]u`u̱&ʫ}}X?P|ϲ od(JXHѶh3.o"ފlP\wuׇ,c0TR OU@ ~xM\) b4˒"A ՞Ӱg4qg+qV+~51G>-ceB,x (kh^ҒB^h=$FA]m%?oUg7Բ*#%NhNw l }TȾf" j|;R}%9qpMO9#=;%/^4c?(*:pR"Wh<)C FS,EzR$rRNhhСlC,N5Ni SbZ)4rO$d~@Zo jBX`'9U8/D'0 7aҶjlYwrþo)/@.; ⱶId0!tG!vp_{# J{g%UVc{ *?+n dƑ[վEc;RYHYs89F_-"7DžE-Ro,Xm|6A|{}L}N5oc"EV^uvL!g̗?BE3A lUP[xƲFR.9Bw0bK&9Ŗ+z Mqb v-s?d=yLTmА_"| o,(.8Z4o*柽+*3r&;F&BͧQ/?5J Ȩ'rMSO'&b^o\S'$sOBDܒ{zMgE'*i4$ A¤tBz i/s] Z B,-ᡠEN.D2>Lȿvⱛ^ p جiQYodsvJR(̋1hi>+)|wct s1j ֯UQ' <(}h集1g  gU~ky כ)H|x̔ꤼxZu+>-PlB ܆<gm <i# }7ct?7p%R)}$ '_rcAF:TuUI*^gsV-zud wǖYTjճTnj&~ګ (7b+0"~_ߕxt*)+@SCL^ oԩ,)SRa8"Xfi‡f2zRGE0@t"}lF}Ll%ЫTg^hXZC){ԫ1".r4\hF ,JNƼbK[ݺ:zG.J8&U{%wPB A8 W 0l,")^:M:$AX8b$Ĩvּ+`Gkjk˚#CKci[7AIOٯ)# K_S0spi rƵ!G=S~Y"((mV  0b(7 s'p< cTDI"{n+ ,- טli-0(C} n)ˬ0TBSvniF#4=6{"ѵi,]7&žIˈ]l@Q?f}7v0RK"_(wx‰gٔ{1A45EbSǟ7ŌC{\ nbr =xտH@_%@ G'.t5sɼQ5br>P ^.pUb]W2"kY'yg,rY1~]eUۄr2MJ*Y|rF]~/MF/OGa\FHB*?&vl}NP$^4a w+_Qէ? gJ!+E Ο,뒿nz^}x5ka5(K $ܪ^?D&nV/BgV߅nHYhó^2}śUỆ3<@ծ `*0>kGłj/,; ـp #!@2m9z7+e_} E,esebcLtFSӍR:Vu Q4&`Tm}m sSTZYa-Ww~q1l`:%mi 0Nh`ȇ%VmP $v%[%-ǘ|;|zM#GfxŁGNSr\.Yi)h@@+Wi$ K(> le>ȅ%jDQQC;43g!DkBC #gzmי{X)jD11[5|7]]|Q|u3B~i@~p8 cTݎ'!Y!{4l1\܉~W~YSN.h#U'@j6UʼpxtY3@)[jځ:?} |Sj3D߰fcr+nr{ys.+C`87F_zId!""%{'a[Fn)q4[28 Z>Nn-, wEnɄUuC cmwq(UqU>%xI wopeRa+zdײΉOny-NK2]hP"N:Z8z<$9^=.4I +%RxXŦ _뭄D47aT:Rf$Fׯy?rV]Hy)7 Q. v ʪlu@maqOIhR ;\)E6e𬘃XHXh˗0O$q6z=x/g<:}PEtw "W*yQF,fwjمFY_b@E̷99`KVLS!hq[^k#2O<, N=U G]1D=A^@hH7 Yf:Lo  Ƭ3]Ul[lAk/4F#t,SEn]?AkRkɮ K1}* hԿu#Vi rzTK7ףl>WG  )?NS UVD>68֏rK~ R A1a@^q;6(0N] 2$/Ӛı"Ds0n>.2>BR 8>d([[)2?GpFߝ8''ɂ-&A=)9Vl{ +Y!0P)'XQ4wgMM۪5;d{ [qBKm”e6֓ 6WqV*#U{8^n)j V1،$sd Ԅ.$gos k+B!,~ޓeq 1h8;1}i |_X@bAQ&ksH0s`Zo ܆tA8=_}:Frrʅ,+Y\آmRy˖uyO5k9rjaʫq:$y]F:vFm_j96ØKjJ)u^,J46ώdСT-oCJW~Bv)7(5dvy 0KTM/[[>j4{>@QgR"ჾᯬo|1̛ۗCoӍ<&/<ȬM"9~ϗ*ҹjgLT{cYdm1$N8->՚ؒ_ wl:aJke3ef.$76m!"w!4]Y"yK%E.D'Eެ7,SnwÏqjDq˖ƌ#MA=E*Ǫ%{ɒC> t>1PP7%}XhAůmLQITXќ#_J+PD!]<ZhOݡxC Ƅ'dyH+tMU\b?ûlhW!WE}>-IA(d?ccB:vZ%cP>N*b;d(I(M2枪@,:=ӈyCe>ԛno# ga$FKȈ&Tve&N=V7l x)Wj/tC .CH!j\xGB>xIhՑ*q +KNn&X{w k{}݄4/e8x"QMA&S NV^@|s،l7_C} GӾU&t׌pm% JyNLlpws DҼ 32OC=c8T߄3P iFy ?kcݣ,({U7U=4:}*|ur]ԁ) #A}1$=`* TW.8jl ;deY Ƙs fY[D?яT*{Z80֛nV3zDDY^; 'zȍH alt ΓgcƊ(&׸d?kʤފq"y5@Y}6l9E;{ƁܭTB֮VdgF9N ȴ!|4GGtK+p)4ꃌXw~9UQ5 ?[l!y1kZ;a Jz2rظ9mA0V)G!xZ.mq) ,/w+Uka"k@ ݰpi ׀(̖GOg4vU`` Hr}='ed&i|t/Rve4oثݼEc:790XT RJ4)bGJQ$҇{ރjh*I|@S1XXGAWy^=0Ѓ}+DyK XHŌaIZ\EFZ C*2ì] WPpy_fk+HOU*.=DzqPbFNj94ĩ!Q3@Zty8l)y%J뇿miS@c;5neBt/"Z 3ƏDNbkӽװtGDfwxy!܏7'M1bAl.iB >pb<[Q#\fF,5M_Z%YIݧf_^mg#=6KQ'̠՘ZtD)&rjo9m?A'84o F:Hu~T_xF GHeWy=SV#'EH b~_(+%hY:o+8:N_<}!GuC6F|qɵ9hDixM&_Q}cҼrO3#G^\b%_ ~UnɈm(#.!w/ki8 © __ظ4gݲxcT3K"U &`Hh@B8ҋ'H)x1L9dl"ބF.cQ֋+R܏.?B6#m258>hrBqo3 7WPq}; (Pe]pIJ=/$ٔ:h9q#BST3XlO}5tB ɝºz: LcLl$B?0ۅ{QQ[ZqL BKO f;Վ3@iG@;XW+>]!KSv+섳ĆujĈyA;ܾ9I"j ֏[JH[{|voU[X*{!e PcYJ=晪A <%BfqpIT)d֣ۿ>9$n'BB l(Zp1F bB+Lvt=:RZ oa;Y#]tA6Ctr!GP/2L n>ۣ͢>r|m«*SJauܾmC窉˭.${%Ü;@h30 B1;$q"gD7q0mOR g0|4v!?~W]L2tůZ ]3iTXtO.c:X[dy4qf{W( uYf5 !+%5 lOnQ%CHf P.x Jlz5-f$},A p[PZTӘDZP>ONVY8?*N.GeW#^WNֻ7f` !3 Gyvr7xuv* mY(ɏ%2+]_.4q#עs#(/yDetm) Yqdz ?HZqa /T!H`XׂJf;cc%|My4+"sbfu1>])vS0bN}K{A8" +:w.tȼ'i8}xݐ7^li+"2Z'ݒL֠sMˤ/mZE R* jؔzi%7arDvփ4bPh+$<; RUp3Q%. ]0ʞ$xV䯷@x#~ԭ6jo'OZ9xiwDbIWߠԻsYxq vK&-Ap :{uSr7; ]HGth|m.y8#c$\~  /[LR9"q14l+U=\KS`H>k&l:9@X27=ɮ:J.} \SU&g*S W_&fBt(򿦔$ƪ5 S b96nmCkRzՖrvH*HM3=W aסQ:$#l$-b".]tx9 SCyɦtYb@4F59UŦľgk bĩh=b\# S鋝 22~ӰҶwZ/}оN)u`V' k3 :o ;pUEhx4FQ6 b(mA<5"e Ӵ7E|PYgVHG%^{q^GXw *XC\iңg۩ v'd}s KzhT 44)# ~o IbH3J-c_N7q@>#؁,˼жINBZK/^uό-k|\.s6xUxC<7D/f-/IKlkXq3Re8I&Z K lc< V~AQp ?JMዼ#` GoJGe%l_)2% .^((xQ=ʿӱɖqNӇT*0$r%sE ޓ@Ww-2TYdx aע=)r~W1%S6AOr#;զY2u9$x?}~e XKu v*?ǵIs~r>Vk1R,2pې3-Z]bJ3 dI|d'F&aQ,<^2!ɺI~lY>ȁDE'$d#q)D* ;o:ܟlkQDdtn4s @6M8C*3;_c2 ~F)#Oaѝ  tٟU .ugV5o/E=l{=pg' y s3gu8Q˾E ayc+L)(όY=T]=dR|q8F?׉RFc[?rcnD  ȋ-Xa:~}}|Zrk∔Nơηcq$};ZR&Q@ >(֮:8Ju@\`sǏ ]CΗhPg@5󖺉'X$"M.WXͬzцV50"/3s*_T'Uו- mrFJt;;]K R·Cى֧ impSm$lbGo?pN4*9Ԃys!89r;t^_]Fc%2®?;SC>&>LK뮺?c{Ɓ )H>>aˇOun\y@gv'X$*HqJ:w.Fq Z"j:EʹT[3T3/+kKZĪF 9MxS'k/BQ2nQȡ&KGg*׫09.Q#~6\.lc]X34).1@ Pu۲vc:LYzl .M&j$h"Mu-֯G~6 YOu&"$:I$Ÿ ;WhsHFw"va"l<>{z;'09?;p|VъΌr䅒9waˍZ˿bQ5 WնZi4'vFsx4٧MCxcpPuOMX90T7?cNj\ jV,Z>^;%g$LsXo3Os/U'FODtמ.h.FuDU{emTta1ӱf\ A_o&[}嵦6l { 0͘* g]Cpok@/<3%l<[p5ܶJRUH JZG 󘸫S_~^{ͤK*eӃzt;X)i[x+߆)#pu=LY#ebLq<_xezj)'1S(8<p@>xD't'.I5m%Zc$Lz*h=ͯ##8@l4ڞ.E6z>HB| .ɩn!69E@{NeHz'ۇ=ŦS ax~_XUmq旬De%i 0aTG=dRtͤ& k4x]Y1`|.i1$3YǛ2,##oPI1R(R|ZtWd0m}J0&5,Siu,@V,#Q7%7kFɕ<r)KXFs$`qEت?`5Cn< SZpޡ;_V|Xʱv&ӛlԃ gX7H:%w;~@$5MV]n@8pv@||JTĤv!u|16~eԾ,Mt] \rnm[7S7/b*1,~uDa)^)?4{w>ܛ8g}Y[pok?d@WNdN6 C+'|҃~lm|H{ W%+pn>>}i150#OבMaU+2)mzôDqPJLw"1k :|b?g,,w )ΓܰJtk#8gC@ݳłU0DTnVʞCZs*q~ł滄KZ faH+1@dq*YgxB `x>lzx/27o̊ jbO[A4|T˼ ӊd-@ɹΪt=Bg^Y&',WC-;yhG+P)0cɞ3QZ=De r!™߸UPH~m/7;L`CĈ|fbW۝KS#ӆ+BL{26rj(L /~x;^*f9- R'<9xRs] R>^B5mT7@jS3c7&E9G!,Pr BH8>?Tw^k=maljn1f~_aCS!3ŇL飴l/p|ܰ᠋uԣ]i&7'I S1䕆2RK\wL@`Rocwª&d!0R雍9eVgP+H:Aobv34ǍfZcŠԸ,ij\YwBepy(̛uS0,pUAgh]nuxRa> 1!ma\rX}…%Iy)d:?T܎O $fYgYB@ybގGF&z4n\-#ҵҪh{PM#3PHj+z56}V E qO;2u!5"?0hhCK51j PHmfvȩȹH6sݡ̠# u!l!vtbjŁ&)9s:*|I)f~]Y8z43Kz?eۓ yrbc$;[.-`,Arq]pJQ24N, P]#Ʀ[]gCY rg5>:T[ר;MVF{&9%E$meIHH1ic-A-z&Q0(Lo.~wGAebm]sxRԛVi sh~է hW- t8pMNv!f(Y#6ChG|m„Pner}wZwa>_mf=%D΁/G=\]n{G!hͳU*2#sx֨vh_:\zȵI[_Hm|URB_(̓]QzE&Ձ47v#?c}oۆ`A=SBWt CN ax M꿈2d4_dft4;pr'Iz@ {e7@򸉃hɓзgDZݻ4ie׶ڭGtg&ǎ[?Shۇ>E?e0 sC {-[~\.x$Ė$b\ wo aŢ,Auy[s*2TԄ\?&h"w']m&k9$+T1k'.8:쵰STҏƇ>x`uvPT.,(=s)b br3n|\_ѿnX6Z0ccā9}F8R{/ Q8Lcws}BJW>k-y-Y`(uZz=YMPAnr{C]̯ibiHh(Gja4͠Msv!#_ m _r^p]6N'}̚-q~bӡJ^R_g(w a &]1ht4cElF$ɘ$ Ʈ%C/v9vxHj6tΞcB| \u;%%bFkTëp'S:fz5JKϫHSpνzU"5Q q\[X ]zLTYX&;-)듀}}iz]Ϣ  x }_=g&STxdi+BaجN{}"\]vRisa_oK>kȓm4|})X+T3s)ϟmnot^hp>JO% Pl:ز4 9<і0-OeȜΒعIcl,1uE *H^]H2P[KVl[rqC?8]Nt-'0h urNf$ug}qPcYڎATچwP/T:3.]|GVc&]:HSgRV0"ۈrsm܄3=^pwH)N5$r˝JI7* >,0no0؍|JuKe pġr4 / fuYW@IeAR0,"hi7ظ.]јe-A%#Z@*kXc7-:k@0#S*Up+D+֍`78f󎫯z< v&,6v*NSm&i hTVx?7m1kk-%[ ̒}yU4+/*=U f屍 K?Ӿ*v\H~G":!C9~%5+h5,X.efk61p½/M?U$.˶&y,s[ $V)O`^aTThJ)[GTR5%^]+ϝYZƴbG|=Իj, ۭR?6O“ BMhKXHW 42$5UGM[Ӎs:b8යm5> {ݽ%H]Ѧ(K_VN=mE%>5ϟx {.u¦%E+Әpǭj8 0?cA xobZqǡR1c>s{<[dGp[AҩmzHhc>k.f9Y|AwQK.]6WŰge\8~vr(wHbݿ6-{Ȉ$"C*&7مՙd<]OϔBA^^c#6\1ٴ_< !mG^GLhbZ'UP͕!V'&eGS8X@#"+Įsñ&}3.`Ь*N~+mH\EŰB"ľJ*D![P>p3|hh+A8&oc3@nܞeBGN3iᰂlwKt$L-Fg&}ug\JoP ?< R{3LOAiq4&3̨:3>I Z@}wU@VDkfvpsj^Ҳe+.6XcE86HէrJ֡P?R%xg{a!{Z_D;}`4a y:[y-x[|z}ѐ¹g?9Cn=u%7q7dZԨL+Husio-~Վ_q&ę~^Oy-%o1/,asVAȈyp1uNgvaO@WΑKQνڅUZ2Mz&li)F_ (Qqc.|KJ<Bc# #IJ:z)aw3 j„yQLʖ#/6%$smi*I xjFq=CYĆĥ߮*H{ϓ~:R##W-$p1K6HHg(ҧպK~<b^ڲX-o^Aqqj&s'Y@[fzGF`jBOp<1 ݅/sH 3I>McGR WX*+WF)Uw вY1P3 ḘV/L)?eV'Mch\0/ng ?e󩩙PxU!dt_D@t%%Vf~3d+9e S=ڑW^_m.^yHԸ'@Թo%%&I8%q6Tݶwfz4U`><683r  '3&Q5QEGZz%"K xvuh^ `?"8aUf]h׺-y: #\bGE" Ux5W6juAsTY^ـM][t ҄E.%ɄWJTzbl:FD4%Y!(Tf yͩxgzl` M}@\4"C:rZ׫ǡ$!l,wy>|XF2_^=ƛV{wUVZMgιkn K.iBCKWx1@sv51;b1&Cy+ h"0}NNKO63:)vp;˫]Zw,bN,O`M_]Lc s!H bڥpP69FΑg[T<ȮB]i%M0YLi~[D6Y* ?&0YTqhs\:4Hg ܱ٢,< %j^|ړĞI\%]^tql>E罓VFA4vNl@d 8'ʪQ zS؜<6,t-pTTWao|RZm`8N_/U#(ܪI]|M h:MYn]&}{j}RG8JBv /4ίVwc\<8ԋ噑. ok>"7Uܧ|lCw% ~ia)KJФY$mS[k|7R߶ M_W}u8RNA ?uU|b#UH>QI aӖZ y䡙0˔}Sڭkfb~@CЍV>Ko-0UztMDlJ VwZmZGMci~%n;FMRA\yl۩Msb u)ٵĈpD(l&l@}ǀ'_khU M:|$B/Cg8snwoYfE"|կN{Dz[;y@  %}wΌY+37J5(k>TTY>u ꜶBSg$i\,KӪ=/2Bkخp)R+IO5JrdT:6;ſc~Y-2T)2nCs]$W."uZ,MعF˟G&F[KXRz`Q Ny6mg)VN]TwWkYlrԵGj2 wWvjv9Ek~ةCG9Y]'LܛX/rS) q\P4ww9 zÅa ƷiD qо{`rbm~W,:&-}l!vیW'%+mbqYra%?.J+95%} XPs *ϜZҬo-Cʼx!a.g  5d#CSC.ǠNtq7̀T^nЭUn NH,t޲:֔FSIΰBjx)R[AMMOzo׭ kk."x' JeQm?b`@+`ÝXpY곘0EvUf)6AbO@Iw6ѝƞQUV)EJ\aT&X8q\_]ڢV[Lߎ+|ۉ g'z4sdlD86~ʉl!Ոyũ0XuM#7S䕆܎f3`|X_BU$c-vNwR`.9+R}f] %!KaDRJ֋lXܯ+hym-+1tE?ެ#'dM! _RDf-5e/?gB#R~:ѿý^ h&M20sPP>m& eRo^N%c {嘦cĀ;"CѺ`тEr>5;׵bL{UKS:K44SHHˆlG?A&mJmޅ!`OzWN  @ /T\} [`OGTcC\<.KҽvY ZH +A_m!*g0toPnJIΜEfKWR-.N93cEi'u7&G&Cը-NsqucV\tA I0no6_gI:*wT9𡓊A>Pb^hh?)ͨ00qDTKbϽ }˔ptc1v9%_C$6sH5cOowt>lB=J eh Di="k摋+u MH<ѕ>b"4~ 8yCl0gZ/HENj,?GR|O[#8P΁JM!5˪AYٻSPd\3EKu+F]cc سݳq e9rj-NP/d IuՓ.×KYج ګ*z#8`$%>k)׈R^N [e949؇3?+m5>æboɟ]U5IXG>N;hwW-q~NyP#\gZgjC*gxJ_\`VK we@..Ńy ^ԙrnkM:tnunwQ')ifs8 V!ezZAq &ůC%v*|nw^> u| Z7z[lf祒D r5GɶR@瘢jBJaxC-kw{P\;v:'*; 4DWk0)$.e_fV0H<i~b .ocn^pcstꁤr*$6Gt& /*#KSA?ʧoCk̘ {lE[Q\Na.R>\P0ц/!Ɩ)]76eho"dd"k;^sMO?Z?0fTz'~ |+_=‹Vs7EG"_ K XN/3lJ*߂o$2ҷ_gwX Lbk%{[ORziٺcZU뱕*yr iP>O݋N1GE693ߏ7 ˵&#^ޔg+>_z?Cr:#dM<6?r+w'YH2A0be.,`:z$4CP?W$}:* /# DTR/.Ϣ~n" w!WUB3 FŎv?B b(_!2ؒ dMvw*0?T13Vl̊۹6w&rydsB|h(WczV 9f[}ZAU}Fk+`u'fE]S(]X֕1m-'韤fB^p.ǐHzc%#/cL 9|X7ak: x"nK J'[}ә/'K ӎ5C#d!D$n ,(b~D_|}Jp*ڞ]"N w%&~"Ubݸ52]ʸR8@(a@PA"{ܡm_ qgB&[6z1m2N'ws&uX(ԡ] &`!>0,M|Lp Z[o+ <w¢rpՊ?rj k[s(91:ٞT98AɚԣmYFݶs",v n,6G]1IiNQe ϳ[yLjL}MQ浊F38>4֔ 31Ũ? (vŶca &#\GniLp!rѧerU o /sٝТf'i7 o#VU䔻WcY\\n ga2mп)^u쀓̲PڿMIMoҋQtZTyT_O:ʬ"5yHcٱ xVm';9>$]^]ތ|5~*}ޯΝV9BG+jsl~z{Bj7̼:jfU#[_'VOۛWlkk$\ɈmyVgHQM_`n,+>@h=#D0`jFbY C(d+ C,}]#wxDިrV,Ln\>jT > &ܜ.d5L{&pXTSڭz?Q}ǃ${(s:sxTA|AOT בUzGno‡e:"g ZePO7[EXadLbVD*yѡX ^@X\5%hgspo:ZtCQ裻9YL]v 0 r@M,pcwxt7. 2U`mSB@+WB3c9uiy# .y]:m#BH$s/lѣ`\w8` Wlhwu`^v樸l XqżŠ\JpIE ).*S5ځ`w?>}GoVQjΉ U 29d+W 3xN&jVLm)/܎wKP Uc\qfFyUX- A@k(\}We/A^۾}y=&nIKv1Rg*Մq%8éO{t2KWeðqs:q)meIzu(P˩ 8gP'!4rPW-%ɤ93c(ڙ';yX# .Dl؄O{KI67@UY2 wi@g2G` O#0n|weÎцzBn/$iu{%iN"M) JDkKHr4 MھGCC-.Q1y`j. yl#[Aבe@pPrZ&+WR1R_P 6  䩫bq*3ǡæfMVfA$ dyG mT8?ѓ&._D0}t|XM;?kҤ* (q6 Xz!YJ/š<3ZP7H!X0ڠ'Mɇˠ ɂY?&ne7fcD)KbF|Ð~)h;/, ,R2K~%!.^~dR]Qv@"mUCPĽظ}LW4WvKL-32ޭ?WE r5a#-=tYUrUůMR"Uuaj;_\'^j nLh[3wXbተ#ӒτuS ԪQIu!(P/AlǬ].zx . 0}o>9Ƀ ce|u%D]$ea2%dI>@' S#WQϻj,u"P:Dqu0}U\'dhti)brȭ +^`k9 &޴(tZǑn ds֜j <.l.ۼ#a6w]S]]J޸@Xk7>эP9iC𱷘0X &`Rs qPʹk 543}%jx9o_nLB ZH>!7 %cƨU2@T cuw_+_PA_k1APwIv ]ɲoq&i<~LFf CB9`{1Xt<)'~ ̽/qEv`Of۵̆tm{ϋڪ5~ONǢ\ugW8ŠJWK+ERQ{m=N Z%4tEtv(˲/˹J.BH & tEy7>[)[k#cBk@׋WQBᖐsm ~c"+>jR`KG٠C61W!- |~iK,PYocs)f"tx e̟LS>}RH` l>6*wB4<&[A1 iL+w9k$S \Nn :R69:%~,>kaA|(4֭G|EW:rbX6_j5`~OIpw&iIG}#7z_?'O|f¢@)L6Ae]#YHt*] %N[t{G@, X,R;XksѼIf8(p8p_Q35 U'Mې+3B(ֲdRQʊt/P%EG(UL6g''A( .|:U `U6e\*1hP^WYV(g FҾέs?$Nax/qso0Al'(J+}QJ{V#AuԊO֍:(8M1n5S 2%5,b!/M\ʤؼ.ecs#i&S{9%$? s_YOrdUP(HeEG oW7HNnn *3( Z yI 5gW ~}_֗ YOj~؅Ex=Vn3 ӏw*nNiAB+:99{x6L ]9$7m(lѸH1.m*j'+/,ywV<*@ap]yAlࡕaMQ&4xoX}24Up=O)(NUM[N9 [% wD &ɸc!=2KKu LxS0GN\P,|Hv*7䗏1P=TO@ˍ/J6plb-l}_U5?"V G,vkW[s }S1 95K++Za;C"+$jL׳/"[w@Q"M|K?牷ޠ`ёjqG}6`6?7usm>+=o;cI^?6p+O%wHֿ=X bo%RS7h}o@,^Ԗ [ [@p5Vz,D_`W!h1dC/,3F<% UL Qq&Tjy6͒~b GD3h- =E0̲}*ѫ2'uA=Iţ N6qcP/zYMT@010i~?6z^_~oȊ0ǫ$z!8 b:H$Z, f1OykĞ~'N<}N6Ό Z̷!>)oK㇑kFPh7mon^-.sE3;nb!#Ih#ߒxG~N(qIeqoV=1pv=e,r%d)Wpb A"1|}T@,8ϐ(!FK1{_~Sռj|ٚ'ex\ I9Lx |%F dkJ2h]=PEh8rl辂˞"/Cn?2;SOfOsjt*|ѾV.bD+k7Fw-4<;e pzEesEt3~yv۩>7=X_J<{`k}yQ?Ԏj8kޠa9FO<]1%)K !&M>1 oUƙoc:QRJ\+6Do3W/|Ms{ Uo끙qOsS>d\ѼC~MXTsi'`7"ꀃs|-!awV1M G9bG5AU`U)Y#U9\ O>YPmc]D,bvP6GB9$ /龬IL(Vs3ǟr̲ChAC4M,#wHfB:“ñJE~"rXV %ߕԔLʬa*@)zQ_G Aُ1!K/>AP]kV;YF8rAR2NkSkk>lp+>C$ǜK>L"@Kk0 jqE"d7ތ'Ÿѱ+g֋u#I4C5oCY(+,˳bϯJe(I&JO+aĄ:~^Ma@xJAkb0"-LS@[GB2 8jE e 0{3ro+DM=IEZ:(Ew]Fp`/[צ |:載A H|sbAD0?l2p㇛S0U$&1`yyǟ-=bHPS3r[i:. jpɘͰ@Y`|h'tyS )>YǴ/ܽfr* + *<@\~.q# 9b1֦{q]YZZ9r #|=8%U6BPZ.apgn^ӟo9jd»/f5vUgꁇVu(թ΄Yw"0-$ߵDnuN[u*lSk.ng8% 6R-=#U#IsGC4wR$ʿTyMvM3³ 4FeOw' Rr=0dư>Ɣ$R^D֞M \=v_#/1}N|h7D@EJQ@Vl&[5fCnWrU"jh\.KU\9rP^"cC+N.K˼:ݢV e󆗚ZBJ>zY(xelu$Ԝ%k{}&a Ʈf]0oQ~SF &J&Ixfs*~4_ronu9+$:{@t"p$ NfޱhE!x$e&iiP;M Db]Z#(%g ];;8`㋸±,h2ML5$ m{p{U Y.%p Cx 4B.BXj^ŸD E˕q󢀧Y675E(:rpIwTZWt0 1/F&%cGAX1 h4I3|Po峔W3ĖZ@ HEs R#*0k|]3Eej<3'I_9.@ĕPb,rnrډ-Rk7. #n͞rRR <3qQxDS1 ӔWiJG(ɴSQaN5qr˚/tĜip/Gp3>wթRy=Wa^v3*1j?pXYjg'Ѽdۓ!Ă |z1Unzb紎峚3 :?nC€ [H'SH7]sKhU `"B}nJ)Ƈh2?7A3MIR ?j5bW+$'U_1yȇ%qZ<^YkW";K^(%v{Ld9F豷d(c!h 㨺 ?iJ!A<\!wNZ#h i9a $K(є*"B\Vա#E~Gv*>n+xhĮ<wJxO펱K4ZyTPX  ;CPiNKRF.@H䙡!0A[J uQG1!wAw)uB2;d[C\,&koq9UVS?. 6G.<G)qjhL -ݱ\ô8R 2:+kp6{jf$Z( 򋚿fϢ7H~[#;yS#C_`iRǺl4pP >pw#<[[9>U֩ ~gӢ ¥Y @[Pk=2ثu3kYDQuշ5pAXۭ])t .w${WS in5[MfPrV(&mdTfRQG}  N]/^^pc#=sv@//Dc F_CuyTԤlppUs;y_pbkl8 :ޅ`:1W. .7-y]>'B ҶJxi΅ kՎ}< 򑻱C;ȕ~﫚GSۖkWx`TRzČ:6#X:~_Q\0 T90 i]t}r5!_;lcuuHPE%@v2U(\({`Us G6b<)*6M}'qsj>{|/.LIÛiRK6,.)|9 '"ӌ%yqewM4y3_3o'FMHCFmJ"RZU?7U8 3uUWUl֖\(Vv#Ж,OIiܪzq֝#H/*eYZd/2oA!r"l[`[*I@-hu\y*ʚ"o#}#uS*3RM(u)mi0D)b/د>p@%%pm;*=gӺjd.CuhNA5dqZ8 ȤxEt.l vG+IIJso@w"|1 + #Boًs}uۮKor#>Y!TýO=4Qjmw9^Z48\]]:2-&o@*IY"x DH7f]LyxhR_ml2&$L5Iޑc t=I -,&>t4\fS1E2rJZ*m)ӊKR_} |yIt |˷+J2>):DʝNHnQ(c+]> b.sR{W'>(Z0lo^fr4)\C_Fk }w F~~Yg={6}8un0b-| u2&K{|[ƁIďI^걸شtk&.S FJWwbBkyتMVҟ`$cYL$)Hd;03{V8K̳HU+˂c-r1Hic >o<ES7 JxLX⵲ 'cY~7-qEhn8jN9I$;;Ĺw ۺٓ!U8s8a~E:&ln\ >Uh2cBדOAO) H8]ԁFEOg#>K yLo%RοG)@YQ̪^s.otU[Z`u"12 ILJbJM^GҘUoHmޙTH?.nIBGАq.QsH]"FhMV(iV^W![0]kov[dyukP[Φ,]ݿu`T_˂<V'-_0 $>I|]oS8R1R'Vb}b/{wLъDYv73687癒+HdsL׻4 q`@&|ov7̃m(a&Y,\}=Ҽ j )p}*A$^GJDlH%SyhnUMI̒E;B>< j )-gx*uoq 3!>nR"Jk,4B+H;^JiE! @ư6fs㻝E?  dG1A4^6-&B0+\SynJR@Siݽ娧x3dխ' xvgCV+K @OU[o>T7=?aF8|[h|-1Uw683'}rBn47 +uh131D/v%-XULQs5B[ف3'#|[ qa,AA$VynBʶ.c-(n3<纺/vIhO鬒\iX*}5B\~2Jv(tP5맔xmkOQfFǮj1| L|qJ6‚Lox5nk^/sMlsDřm4DnkCQ滆V5u [(Rj!?)u?t N/̽S%U#gkguz4lK4>@CIV˔Va 1s$A#T^wȿhre%V$Ǹr5bE~VU؞l)  YE[͡FqT`QLKQ΄h:9OJd#-hV7=q-$*>i2`;׷8U7' Cܓ\ ؛DQbcêleic[@5$jI3@('${Q^Y v!]ӤU" 3Y"_7wmZɣ4vgLia=ujgb3ވ B<#^[iaiA_YU匪ޥ"ö[]쮣I(m;| 3h3)Gб[U9;"0uğcP); 3!f9<3?/\mQaiy \wI:wMSc XA+79Nm O>.PQɩ@\.׬$߰^|~]9i?ZHy4%<6[b#@h[i4Tg|^I? 9^~~1H ƈ!Bfˬ3 r.*"U<8"rh/ 1؀*POtgi Ul| l\ֹoNaďAWӟHv{Nq%F3UTFWedCEѢ%ݮl6YႷ(/iPB*2BѱV=kɥQnzWDccd6oHL{ڰgCV!hIb> ^m.m bӝ}Ts]P/,YVTyy3 8'U-F=WK <>EC h=#jEH_ ۟PkC|Ah(S*hXvd!WJ3(11{ n҃џCЯ' OfTa$j(qD" v=_ʿzT'6_󣊕|L .]#IջrAE<1V}aČw =-u ,n8~#?y<8 0WBβYUEpFI4Y-Z}!> -ɀEf k#"5bj@0ٽ "h8Cwd6JYul6*[3 s̟C\%};DXۯ,W}aYg)\74X7*)Nw]`#"1BU|!Ky)`j;7u_BF4cxBx ok ` hZ٤ &ePXpp5SWWI3Cv0"!B]/P@݁rH̠X&e1ƠcR?dTZ M ȚmN+Ԗ0ύ ʢ7SU~4(^k]<{'P0^\#8*B_h&$Z.EDrnﶨ ېf7T6 _>1e>ih tgL EѬEDz*zrlXiňj ꞕ p ޛUck9TZ5lKY@G G<{s3">yz;U.+KkM|J:e StH(ۺ07z?ˁw?!`89] s;Z)rE ;ljN/ 8jC09vvPt9_ `p1{>44!o3/s.'X>`U]-3}9l,6vێf;jdY rTϟp4whj=,GbΤucf{Do@kb(cزtL7(jl~"dzm %^k:"$-VL ƞ#fsMl8HٸW`)S70F,(} kmѭs٩|f;N$nw' 's鲵ފ|Yu!cSxJ |(vˁ2g ݥُ ѝZMp(棚@#B4*uo`je3W1& zH: HiǠcׇЉ1CSD-{,քrmSH ƢtjIp.bƼ&sk>VAi0hYn>{7-$jBJ"O4Ӝx0jo"Ji82OSm~ K I @Lb\Yr6ٺ ?>Ti,Bo 5ܰAxP) ۛa0+Z%O?~ {(zA.ac:Q/WZN9A63v:?˙(wEa>^c1/ D[.["PW:7`VG'ȕG_H%W\ 0z+-,=U_r#J#&K2ϡόNjPt Fŗ8cXrj̡{tS"+Y.QBYD8ĺXͨ5yClܛAќ[@5?E/gy' c=b E7e&IU jWF;N4rP{M#Iۥ0`~[ECaÜ2˔: TR Q'ϫ5&U/5I0dG{+޸;;mXNBJ  vI/2P{mN(MWuC!/84WȦYB=+ԙj+bW8Ov՛:I4%2Knthmh^ _Jڮ5Ϯ7\J"g$g!S{R{x ~VtԳsA;wi/xoyIy]m«it脺2ʯF:-PBzQ #ȵ_+F.(E{ܰ\ˈbzu?v"H ٌYڈ%gr;Ea\ mҽgyD_$ xܲah#^6dn}4}m_,t '' m5教 '3y|NrWVF> SݗM-U*?saFFzwr%ܤISvG[㤐 Oy=2逛Z,j|4:R΁-P#MM/*.EE;%--eQ__չnfS܁/iMW 6*ʢIV2ԛU2UaԧԬx',6 Cj/`Ko2DOKQZ:7Z)ṻmŶ4ZuoE%?fhP 1_b VKi^d$cV2ou`t-F}s QԂxs7 WUi?4kKKnDqi{qo9%ئe&B)s+geL%7EǛ8A2UKhγt{ MA卦3Sdp.}59t=-Et՛X8$WCUVa>5BW~szeџ!T%c V贡%;TڥAytJ︈뜀V+$)'ѽBſ3 ]FRlff]$Lq\-rpJlԏyKxIrgG=*wiT%SoduZ"6ɣ}du"]=-ј lUR V̔ މ~^0qn49+3G*EUJJ `YIY4RD<,9ZЧ κV=aZqceO+g]U+n؍5WE=#&sR쏶M?AtR%]t.uȻ6 Ff^@oӱ(&>^K2=NџsL-b=،4xJl{ʳ(3g`'q2?`q<ń5F7>Oץ#ɪ)H=of)Ш*w߼:5ՂH$'VuP94x9g;ݢt5$J(P({ϒ¥g2(Ϣk/;Gl͔$g5^?70;lF$2ջX_'%ђ,L|Zp Q !jVI(7j;+kwJ_Hj›^A:F!1*hrUSU|m2VyAX p^hepvi=C~d vzc-ow$ds@;Okܖ/M)EV逞@F^ujUOif {\C|-d@XRT'D@e3fr緍5;g/8cOx;fɀXH7 ?P&5ÉJyv% JarHf7U8; eRj!K ׅ*$nOA"ӹ15Pj%6HWOG u1ßk``=VM ?]iB_m޲}ؖ'4']K+D,*n֕\lwԕaf& w0eoPw<}D\vaO?).`x8$U= ݮesXі0|`-08`|mJ7ĞzK6ÇWat }f&KK~@o+BAXD8Gn; c+Xu?7-KP[Te1e_J$ϖ[C2%fkښfݕd4y4_1#;5*k"D6 O龱y@˼#.[+~p|acLK(?Ѣ"oc,$3K Xh'D1[oX?8c N|Jz>_h3᷻4@l: e4)ы/-ͤhJ'EoODP9!2]oKr}DmUYiR>tAwZ?/3n?`! b?U ̼Q'z6`tL$`o !)J9#anؕm/c5>js^=ɋFOC✲~p%vB 4Įly#|$tśpayllIᤕ`ǠKCILILFЉ0FUuFۘƷe{#+$my.UQ-8m|cAgAT=oozn"O;قp,Lf/J":Yt<ԩBlPEױjBP^ɃHϜBJUuO-ϛ: z|< wf$N4x*C'q~p5}:"zjt'mB(*/O-OY&崧WLY5A|lӤJ=Cϒ0 ˦Ȯqߜ tO5߳& `D; x#jS."B IA06혵27:1O!5^_춖Mx0W=d ߣh.`δhj0:J5CfiXeÏɣa 'ц+K%tsm'_U* FR_K[BH?T0?Q<&٘3Kaڍ5_,x/ǿlzy, hdQy7X51baq{^P=<5eGeUq[QCpGЌr.,ó92|8OKO!w@(r(6j2!ׇNJBK۰Q(ˌ;3ԄrDaLXVb=6JY~:`S4KLpJp8hиbn:厓m:2_Ŏ1n=RPOK"Pj`2H)Da r[aE.a fҠe  'jivx2+" evƮA-+5HZe*}\>mɂɌ^&XkFJI9T娞Բ~j"E0GG"5U2cavkrXkd%2jf9b(9C m}d;ľ2U~厉h?-ٞi^B3R_&v.>YB"n:Hhr uwTgMq }{oR{ʱLX}1C!Sê#USm@h6RCTErPpUoM 4!)' Vaı6wO#;L0ɗ5r;$ECg;j%)hG\fmZ"/]Ci$AѲrVF+ lֵWjQ$ 6ͱCA4"(NY|?Vu~""ASN! _y =XcD%]8\ann<"ǺNu_3[ y."[Ej҄6ϩy) ݮ̈:G^"Tů1!mL?u9 ^wBgY4juvب/-J#]ډBTQ4X|{*,'U5&;".PПºOP<!wSM-d[?&*#b^0Zl4l_CU $/gZOً*}\G[g td_"̈́Y{<6`\ ^q~Y @0Qɹ7"%[~īu=ij:76֎bU V/ .M`ķYЂ鼩DrW=of> WIVfWx%cK-'r۶[DS=ȬXV|`*+~ՓO,JYSvL`WfmkMAsCuzjzpqE nA>EK=pn ~j]2Ժ8G6QfeMն 9i`Qҩ"^HB=/RϊL g?aͅ3|b/x@ݽdB8aE6 35uM hՆW'f؟wRļC|vΦݜ$#6p6~:$?;)3s[ {UA:G[ xݍg+˝y=-=k)R5xLJu`茁o7[CE[+B `kU62#Q.պs*W;Q$n]7Zͪ7S᜻7lTwDA-SfE\{X5SK?:1)H,\O塕@5g<'"$/Kc({E]2na2)C#sl GeGBTѴY֏jxo("^gH[XwXSH:׬# Gs4EhϺC8Nط~eLJ`ӵ2Ź*,4@ ox ilvu zݫ ށ#mS6EVKZex;oԲjx3#S'6&#\d*Ize5˚eY 9f<&[C\%*b=OW}= tv<&_4B0nU{S7UaZIp~FDN-z2͏i_aW:OtI}X\0F~cSZ:lfs݉5qѿY+bc!!wv my@֙y4V:/B.oFeS;O1͉: P l oX:7ҡУ'GȸҀN׻Ң y DI3@zXr,lpXʶ\;0ґ*޹Ao` ;M74bkouJ7o5cP[Q]x.-לڐX)rkM/:n3F.|XG7 ȶ +]AoqϏo,0feٟޭf@e'1r&z׼"KG*[0%ꌕfh\#Ow_#A)#;]zwN<Ĝq穾Ck/T|9;QmY+M&[QUC9?a)+PVG :Nr,M;Li*^lJSJRS}\,[έcy׀fj2| TgvO'$O`Efu);7[^s%nglhNcH#ZO}ɤ@@ɋqc@ v%[3)ki~b\,j5GnU4H%hkpYˉ\VzEኹFknr -oilRHkM(GL ! =%8@.ZWVg0{%I-'ڻ@Jr[t&Ռϝ -h KIâ5|ÿ"TBڛvfS\/~Ckas_ˠi-G yC+ȗ෣ӳ;RC]:4ɡ~F}@RFSH*|bjqw4|ާ?h\x8bR{Ј&ୖ7~K)vªZ4@KKe~9C?*թdjM:԰TB*$Tz?jB0* ^4.O:ǒC&AԫMU *rJ46Dgle]3C. ~:ݗF# 4XOR>j(OH;b3SZܤn;̽ H:KYld@eZDefW*A*a8`AT"5{r N3@/2,-q=5!1C: g ʱθ>suxi]E.;=\'ޝ *`֛j 7n015+CE標D"`]gc+*\ Kf25li'}uP Di ?! DHʑdhHUZO8s˧HX_;Cd/Ҝaָ=>1˵´P%R„O}~t:va#@9np5y:r{cd y"V0+.? 3y쿪cݵs~$ZSYmwqF Ӟ`?3VN⫥o]"icM%:MTi华Rߩ:Ȁy{Z] ViSkgIwؽ Kasp Iuv0~KhjZ.@N Jɜ2Y܌wDZ-LLkx)J/!aspHK)nШo#kQKYH[ܯ5Ǩ7Ơ%*pܺ|^Q86JyJ^,mUNN7E~I%6N Ո37ʍw'5YgXߵH C>yVW)<͹-ݵZㄗG ]6lK hnpd,MXùHrї?*]".U_FM=>8e ,NXIf/5䞭$;8d5ۍQ U;MWUҟ6]X_} _D_*y[csF-K(!Y# Y KurޡQ8_z,ZKʁyFOcn2>\Pnʆ(aP@)@˜/@f%cH\8ߙ GZ.d1+#f~%HHPO*|0^pFAEH5/Pgu\C+oo_€vʟ|hU ޠ|Nd>A%SuŃ!uhD5ؖ~~PZ ꞧ*zʃ?$Sƀk ilK4Du !S)#x$qT`>*ƴz˅Qo@gTj1\;άv|ulak(-dg?&_~ǝoecYdg%B!ZN2,;9տY-D5dDo.^U;H7z@Hi[F}RQCn.#(=Cvf:[I"3#y2p/d?s G^I*΀VZyb/ %bG@Dua0tSftߢM[fK'yZ'k]dP%9" w *rs p??Y#"᠉(&0oE1KV g(ӈm7|UAOm`FBfM#1 Q{SĄC(4Y+ Jֵ᪰hRtf*6XFW"7L%?ƙ&yZ`%&߻L4/gsx)\8btMj)u]}Oؑw8i8NEt~d.aa.v@8&]vF73~SAbO jd~8bl[0[| '+=l`Т\݉. mZUc:iGUw7"DZ 5eo 3Y9mV?q99ԴfGG>fp9I/K΂DI9W cGkG_${=n"c7euS~y<*ҫᯊT%BpaaLF+yoKbMfFb>nUaۙ2O[StنP7ɩV`@Hwg:BT-aP}}mda4J" =RpQRmW{f^]lXmdaok[zIr] |o؈w<+23(}]P9}>Zy{2W%蜇=r5Jt"}K-MK)zp'x 7 ?q.ӂM˻+e FDesLmE%rhP{qB9Z aɂ"sW]Ls:w1  S/; '।;[ϥ@|8PBׇ=tZjFR>&#۹+j+&lLڷ xu?μ.\]Oz:`ܳy~)kH(y#56Uw&6 MuC)5RRXי>TҟJ{K@)~l-9/]|Yv::ۭrH9o1 {Di`r)/tp`Ua~kQȚ-Us_,=]=S䊥f)˳pQU\+/LwV;ώ[us3)^/\LvV|%yא[=TgkG%xjCP ;/Gap໴FUF ϞEDI_]x3sCFED_}d-[sw:bo6IL6LµRueetg3 YXdlF"LMf_-P֔C5($%>#"/06R;Ukj`hϵ;>@JuF`]6LDfL`36"Q޸ ^ (Q#_HS~;xrMa>左 lA=bdV0uxxGsc %hƉ~mrXdYێ0i; +e¿K ^hZx;'E_B-uǐ9|`n鯉Dc+Vʓ)i{Qm51&ȼԁv\-b^ѱg?TH 7 [v>S'sh tG| P8{Jπu+ BΟW#=y:>N' ̙x)\$2C J. ` `r)R{?wϙ iO>!zhowAM1m>=&>jn4fG!G]c@# Y,fҦ3ux[ycQʶ)r Y&7Su[r=U(;4S#;[D`"Jc75P\-ګ/b%׹GY/߀CGr$Z'XR1Y*{̀ꜳ >wP&(ԑh6bJߍ<B"L鸼<]rPb1P3ׄ.5d&#S7^ݻ!V)Ok#rQ L(iuӁ) e8=-\<|dBEm96FӵѰU*t>Nȼ2s>R Π7nSWbV =99;* 8D"w쒪60=#NE}>C&տ(%mu1Bb{y'JkQVycٷњʔ18-5,DQYKg;E$g;OݒE)!PĿnP0e](lmFŤNTk4J8H~/B4][u @72ˏ!z\ oO&J o >"kFqj&zSX@e>Bt}yW\=iNߚƯaǨ-KwpYrȺתW!_w\nʮUxs#|ilr-aZ TNIfm VV*Ο=:y\&{)ghXM# 3d }6҃gڇΨ]s'BUz +pv@#H489m%Lۋv*{Qd7T}Aܫvz-^^2(w05G j+eߩg^SGB W>1a_k7}ྲྀћ`9(v0mWa1]mB4Rҋ ?Qh|N_p lcpf{PQazm~%6Gc6Mu _僶Gh`YwMsgR|%.2MvL:=~+6 I ̅LҢŗ4V q"ǙNLp:jMPAZK4(o1f>>[ZA?蝡0z}՞_$Dpӯbʉ ה&LS Yad3nY)V8J< l@>㢘x{8nDS'(B=n@l0t^gdz#t~Sy[IU (=0ndnktz''M@f4j`}8 ~kA$0:mcMU1nlvUCvk5C5 f^ l~>C'~䰉Od=ZSH ].Y18XYS` Wg̓+j q/T1JVV5y4 85TWn#  t`lstg0{zzDZۊdwXxs~ιZ}-'Rnc@imAXlH:I_Z} [^# 4ne{}NxW- `?~kK\Q 2]f…fZ5I{kC+:aݸo1K`qapW=3h?YceJi% y|2M`mS`w=O cLhŸ܉X㒗&# [ u:o4qr 1U1_g0ux~>lzض(9*ū2>\oG*OsK X8wvGf*VE6JTKN|ffТKNnZ@`4 {&CVް>LFÂNیz Y{ )A 9& QK iL1ȵ?Laq/Ʃ5cpUp\+tDPB4?X"۷]^PUtg~.",uKzHfoK ;c{%Xz+jWP΄dh-r2"u/1v+@aH˧?>tL&wc$/vyn,xyNu[(}HHpKĺÐ{'LGR.b0 i$FDž ]?e+_]=nD_ڬqchr|Pr X}tbUzP^-,1U+?M׀[hkA\*r˞Lp:/%SEU6( UR'*7 EJ'|bQa_5%I2IF5I 09FWj)=gڴØApG}5 RFE*blUe7(g]`M2ܪ4m-(b!cPD!=TWv wH49ѴM²ס|{5p(j-pX՞2AM)ly$ _/2%@l-ĪY.rWGhD$)M|)ۮg"Cvh~TJY1(b? .6G6b9ߏ׭h9JU_~ C Fcv1JsF& vPI;t;KJ*2rn@/m.\Ӫ&C_m(Yd|ՔAbʿ&9#{UTA"%ŋ<$tj憀CDYywi1'-^pA/l̰k(alAߧB?WLʃijOY-EoKޑyL\n7e86ϳM0Eyo )‡mNG ]Zf]Vځ;' rSrZ'Kz.~l$[PE[ jc j D<仚 */Fy%0`)q\ hxP%c;ovKtSq%)mS{g#TQnv%U3{tWLI<1!{.1[Z22t@mkG3%rj:Uv0py@f#Kw2ӼJ uR0O[nW{n']gETMW/b'T0f J;O1axR}ߗlRb5F$kޮ$k3?F-Xi !¨& a+2kn\@.uB$HЈ!lU9w{~P8Wk<(3ǺL`^yrU`qʟP1yN=ږM8R z~F3m |8KvIj52#,s(gw/7T,Sr7kq=2jؽ` ;G Nm%Ѷb`8c#\^C흫42M^95g)DgB' mr-n !x_*pv9ěc_5X($dzrw{Sޠ:ˊM3iPO~xSN `RJ6~F-ԁh<z5fu_ صA65:kh v"UVJ~Gx"PWSc"Otb?ȏc?nѷTy71ݾYΥDy>{;><@/ԡM̾=l2؜Ÿ?"ϸ:xU~ɿ(qy"*gQlI6\wK\0Zt%-VXa%Kt"e[%2K'64lhvd}sj {xD,˳櫶 :_MKx4g<ْtbq# ۮF!rOb |1Nor]QY<º!ޮ_ގ% C~A:-s揁f@ڎHDLRK0-dM;L]!*Ey]޼wꌟĖww ;2'j6@*uk\ cco 5i =]FI %Vh"CCUy°)u}XV2~sffBb;o JTg>-('":ޏۼD#GyCyW`sT=(݉k-\n%C (ՠcEUw"1L$:0(^6jҤK S&u$ s9;4e,pøMSp;8] x F#h%¶VOv0NyO.o!І  c$Z(:YSOp`vp?v+sxiaCp4Z CMWnX=֋\W0%\ Cݙ4דOf,Ŵ rKa 3\"(C,dMنx|li䥶< ̋I`:ݕt5c0$p&K}#9rpAt%ձORn{M; QAz4LFFioE*[[IJkBzqN:(LQ؝Cgu^v ٪>*˨ߋխ^Hx_ɧj<itC@Qw``{ĺڕ,y:wngNfw.ʋ-?wgbA9< Jt Hy3J 3^+a0>yB(U*RYccb4Nf_ߪ:%-5/O8Dȍm4v`]B 䖊Ǜ 6o]γq{K$my~_c5$ibUj_5Mó7Ҹ@)+χZ ^aC06TjѺzJ7tVp& NSp"&r h\_J; > #YjXMQ/T 8Dɋ=u]6%#tJ H0Έ۽0kc\,aޖ^6a:$^A y(i{|Η8`z$G4˺jbɏI{!"h"ٻVџ wpCҹqj]n\4/;) 43父@-OjtbR-<>}F  eO')%@CupO-){*tAW1[[pOv4 k;rmr)O@vu'%BKx]vToI|FIj¾az+3DgvN!Ҍ@8 Zˉ3GInH sw/!j&fPm* y᾽M~A6&XyhfF2Oҍ輿k qϤ^ D'c@V/ eP`)Wj^_*iB@18Uz;}Rߪre= KlE.S` BYش_ [Knv t bB6GʛqE6@ h+$_?pӕɚe|*r9ASۿn&!0S/es?ॹ>7Xi?Pkr1nzk_郴1Busk7PX9l̪{h%lҽmxTJcF(+ gK5Xht^1ݖCV'}V᤭NNxD,:|"Z.!^ ̈́K4m}!ya]y.pY:di]"]]x'{V1ϦOGZ3X /[Jmxܥk3$e:70n(lr]YF@&`0;$ 'IDK4>wMNKXU:y'rE%B #ң 1T&+}Z1XfQ*ۡ^73,a.[aEӒIrWJ: {6/V@$;ڿhȋ-xށU.̥xת߂2Ue}h(ҡzTt} ~]'?e} c"]ť,u7GaYY٫)6 t/I173{xQna-u;#:@ˢ )J/,Riq^_=@S6-sɤ_*ŕ/9zqpx 3%KfDTn O]j  c#3ifCezCùaրKʔPH(Y,w䷄iJdze誚t`PGK3Ջ@d,}`[.t| L0PܔDCE* l6qs#4y_J $-cf\raUEaxB8ԸoN0RƮo9nsfyOH+=I 3 #w>{s"ztl!W4+lGh(}A˕Lb N\ a =bq&lD})!>;Faf(Ì'}ģ2,<_׫XPD,(%7k0~n"eݣ.ċ3\_C; 3°T8bHP£`yr=Ye_KG.SB<<е3A ۓcTD4nqJ"/AM?3i|r> '֊80 ~ZȆȚ@Zn|nȨd=Tڧf`RFj~޻!h,#di(څtTa;)744rtŽr dbvԗpD(s+r+4dI៙9n:R~ꔴ4wu?0 LϘS?# 6Tq4]mț5. rW.uz{mvI p;ri83wx#F{7`"c-aPj2xI,(j7dcz)yOWW2O{)HEFhv8aOV) EM34Uw"źPPթkPDBWMK*s4:?o6Q2I4Nl= к=ZV~z I6,9q'otu$##hC0)P,U (z+\98UQ5`} m7gdN Q覣PM9T񄊯4 E#8OZ kPL Աj911/8Ѧc;O|dqO;XM8ZF B!1(]r,oÑEJq s~IA),m6@)xcX-t% \ 9.q\o@#!˨;dnFZWXym] Z3Sߖ;rx$'N#SP,%ZPr a21b^~ъqCHf-n$YV fW u 8j4KY@xЪʠcM`Dtо~V^&?/S(~K-=LB뫛TFu\Pʇ闙ae˃"Gya| 5ekKXےY&C@hP0%-ZN!Ult$Bws  =6hKJgT Eeȗk1ijHaؗJ'EÕ{&>Җ.wkznWѽSjc4C0柴ZO(ɑwr93 ~-di65/\ސ KGmĮh"Q"ҬM,45#0"UeWi؆%uSwRMl-K:P.-7P\_ >E8ϭϩY=k<ĸ檄 휥&]}z"g Z .<͌#Ǐ~srؓ6<ÿ{Zs,kҁ o҅G-B0utO6xх9ab$ڵubW 4c[ VQL]UeWXG[DV@yz|fEs@jjA :)hIOjKp<ʰr_\%tūhY\73{_T.M;^T5Gт blAUl,h ҭ"o{9[1 N&|h"i@#hOVL a(+)˯ǫ.xƭFMAm ex#2"kV61_ٽS?5RNl`5W( a 2}fdjPbȘ+տQ<ː%xj QWL&zmFzmlgۧ9/RYNa7ʹ1=Y5yjpfˣs2r5zNR]+zy6ڡ>LЅ vNEiԃڦ 0 .Fﵢ+Sޮ=szCa].mNmériPu@'J7IO9tib7R~˳)5H:#xUY`̄n`pZEܞz Jn҄h%-1D ?C~P?)HAPW,x5(^ jtTG.sq/y𤑁RX3_ u!}!Z+ahf1O9bpK?gzg4ZQVH8u^6aBct M4 Ef4ǐX]V M>\6]܎uN -/8^K 6zʂƣJY~j^I;]c6B&z(UbH\sD!2Uѯ<@FDѶCM^h$?fjnzKw<8w ?wt)aΥ2#xvqEi%CܩRC̨|Bp/HgϜT ԊϗS*M cOp^GV}Mi/ys/І}(,< fvh߈P 2 Me1"w>cj**X8T?o>j1gI{D,[W)ipQ\#Z)70;tPHPb ,X)FWs gCoTXs84ttbB2;,]:us2 [@-.n,CN~8xڶE*{  *&Tف\6q"Z֓I5Wv ~V-,3 ˟oTgRœ&vE/὇U!2{`݆ԯx(9윬!+BͶKb;ns3TZ^GJUtԁ/Em"x!fcYjH6- 3a@NL޹q*uZql}sL8W ɠ :n\eW\@:14%M!&b8jWN\=YMh؄H`jv"dVƒ/ae{`fP\mE>X6p4x]KfV5vy«6%V_ p0('pζ}ju{'f^M 蛒 (\7 YKϤ]aPD_MBʽ𸠌1EG_@$ə@qdRo7`k1}6ZuO6j "&`4&a?FlCD[K+88 p e]{h91d{@OɀzUMǓTP[n"CC?{P<1XFN?Wgta;5Q8V,̟Wt˝ݝI,=a#\w…x v0AusaC%s͛"K͓TI#䋧YZ:1f\mA3{*Fa"YZg& s_>ul{oJ%Ը\/}oRA6N3X:o=ɠHFk`r1]m*~*v)@OD_e8ttUgt@XsA%>ѣ|6$韽Co\Ch:V!<6iԭS.`ģ:ΝNskxww!\#Dkc x $ѝ0@IVKze~h'O*EڟNmgǚ7Xz1rՐ(Ί.>.q?>`[#$KV! bƧjg3N3D}@9;oV_äHsYq* ڵOMBO9qȐ1 #e8fBaS/UhY,M"dF(Mڶ<=o9!ƙC'哤zdsQL~jg ѱ?/`Uֻ*R=U8 o!S ^m./MZrY\tq>2wnkk1H]f}rlsJ'z/hߘ\Xi-ɴ`}]eAq1f ,P3[W|(>N[^ZVo[NXГbrHyٜϴ <JAHmG1xfILsťJS 7}VH@ kqZU!w'3/j^lt2X}uk xVTI.?"8W;zrJ1D-44wze7'J_ ngZټSQFP¿UCufȝI0IA%pl++yk2v6v5{LNe VIB cZ{W_׿א]獶P^2;ds&~WF.N74%Hp)iF YLYUo?rΒҖ!!  ;fwc,(SIo.%k]Y0bն {杒dӳTZ7@F$-fR=&YPI{ B0F- /#c3fpYs5 ݁AK+f*vkf6 O?Ѱ}}g6_vDm*ʾdN?Ⱥ=|^qhsȺ$6n3k:Pkw6N(/o?]oyFCw,mEC7n=qvH_TPȳ+h_*G#ŕ3s敨&as0е{}ՖԝlӲ`_Ӱ475:U.ҜkET*7#2:;I +ڣ-t̵+K[8 -\@sJ|('Ѓc5MNO8`Ca2 F*v75q!,qnޠژEncδ?xڬ؝0ף"DZQdfg@;^idjt uf 1@XߩͷIj #{B7x*mJAz3Yz4 ԆDR8Q3ZTa;4z"sgS2M̘=c=Cjp'4—:Ux `Z i섮8j^iv!MR,fj z֥$|3\Y- ^횀Iy;[bMjx0)=KzōҸ5 'Hږ?:v:?=Hb{0W-1WmKơqO ,PUYiZ)f:61RQó|;*5 0wj@w^I7"8K4 IV0DhE]@PnE]^(UX(M\J84b ϟ9N<08ŮhqLjj`bëO3 ~hBk"V6Yu֯ f߮ r"K\nˮץk#uǾh>Ӥ=i 2n` ;b-p j?_^א>SLxm~r\O-*%hr$Nmęq2 Ɗ˴pK.+{}eϲU,0]gcts^yTg{ wH:bЭ#ۮ<V~ȉ ̓׈|}lE~ټy.U7*'MdsH^F.[^6}/{|sJ'DTɃoJok2[e3o=FBڹ4=AkAp1VfE;Uø=]מ| rPMK)g9wkγiqeO#iʾuh3b~&Cp@({-wma_&pD)Ml͕KOV<ЃNPgʼnb!?CsTwpqa*] |MWPW_XH<ElB:5Wd_ 22by '8//bo]\yq!fݴWZ`Iӷ,v$t^I܁nT&~KέVcqЪyt?Lx: 7Z$Dҝm(sJLr' Z4)w`}{x9y'O{5"(`F+iKB"1.j"+@mF.Z4/|۴anZm2 $2"Q2h;6'_V7RuS5)Ԙy2pgu'͡-zP}噷ɧ$ꈮF[Qe[eWP]tN2Wݻِ;;!(ꯏGSd1x+&2RJϑNt' b9+hYӷ[=D3,#8'n<$V]0r:S$1ɈoOC 5szwtD/{6g]GhҸX!$|#?yt2Q(o}5hRAͿWnBdu8.Â^ɀN}0᫪K(e;]/P ;o$?ךn[LXQ'rG3ýe4u $*"uCylwz*8<;ܝ4FM.|Xx_RA%[ QXjkv|  Frj3! ~rHNblqA VjҀ+/R&. KjnS Rw ߭/vŧ֒C,(!f%M'/:q9YK^+׽y).^/*\MZ[kV6&=1UM/IT*p쏮_Af*G CeˤYϖ>RJ9|.v|;Y:&G qs蹭y y7PaWU}[Rʦ['dcVQ/eW(7Y% pԯDP:i=$O ϩPGQM"f#";MÙ\=K1JIg8V>}1p Dd{BLZbж#  ;jjb K*a_/-\RW Q2@4bJ=~=xh`V/jk8ϒ(!'}dJ!']NXXy`\1| S&}ΐR*dFz]䤳ʨإZ>|K% ԩ򐅦KH@F:kf{.u@B_16嵈̡d4TV Rh6l>Z,&p Bk#ҏ E/ XbXgp"ϱnߥ `߹|D= kOx)Z``_xYjxk%$w]+ )#Q<^S䔝ϼhC(A"R[ 9%2:9k5L7-Z( nog3.-BF2i8]er︷oBa_ʺLÃ\-Vg3EghfI`FA:~mad}1)G麬P9oEm<\$kY-9U!7+-R핼$][_O"ac9W)7'H3;ѱ{N`n&\+tT;iїv#5o h;޸:ZG2|o 4-CЪOW٪+&ɜ*l܆th*©qF4B Ua>-R5_9A-Gxm c<Bfj. zU? ,Hn/חMò;hp/_@c&Xo&)?gf\J UVh{sס*=+TdZv)`pCmvHf`Ĕ;E2?M/Wq,(a|oTa%nʲ H2nE+2]W cdmG!W76qp6`x u>cK{Yp4MzX $p'^d P+y9& F,ImXwsfFW-Rloy6P^Q Q G 77flbRR!A33YSes7iig'ckM`^JXY\(X +O1B;T[B8p⏗AV2םףּQg$OaާF!*Ź5,_*OɏZ k! [D^P>@xUe]\y z_k=S"K *XJ e1wׂd4:pV;6yFb}KC}J11! gD?o .6Bp][ŏړ׌REڡ{߷A F])3@m{;0 >Uf*y^D<ĸT nq}qZwy;tRWԒ'9i_#kS^sg~ĥ&.ݸQr qDu#v}xO:H#b"g1*kővW;*roz<!@4PR;$ O)칤Q5%7JPk/=V7n ܴ1!є=bԠ_:X?ETݫO$DaSҴtu4W%GGîVh7fЋё6V6W%D^ =m "xPO mz n` [i fx4&fo?Qq U.0朶58BAX06")}lތq]= Xu'刺`ɕCؒ4gӣ(9F՞@@;wLO7' _|I\₈S 1NSfwfҼ=LJLPq}b3rf0sB">hH"}HHW~4&Mn#VΤelzKߠjn7N&&4 ?H3?$~M[/9:=d[x჻p׊8c )Ǻ\f'U0L)̤U1pMXYHW8p !R[V H4Y,P`y=kY K] Uy̆r6cq1"b&AHK:i/OݜuTel}\WoF4Pnz ˟]K d+F3v^Vӑ-cpq$T2AQ܆1˭Z ,&wAdY&IPm-?7C+1to6+.zp}ayE6&$͸o0"s>#VvDsa NJ#Wyx/ll{“ixFdzH ZN*&NG&/R"/NsK7eF :NcˡE~N\+ oŮXp\Lqjpevl*XqC"76F+!*T4U,)k1Ps WnʳPS\F΋ֻU'1u`6/G RKoе]JJ (waj+V堷dq D=z[eyY]0E?MuGnw7֚=$i ypseGc&~0C@kH2i?ې#2sR2+}Hɶ F2L! Ì]P܋Ԑ\0)&*Hw덣B-q+rX+\Y5a$ȣ*'/w fGgӥv-oCI&-kIPb68ٟn⍜#TZuopQýfb g7\|߭TܶCqu樻 w{cؑ[P(؟9L)8 ;"ҏngO/MYRnu^Au4qXj#7h|24;m-jR!/4b"LȩaM1GOC"?.JU",#}/v2bi{薝mJiTZ,5Й)0zʟ8><ϖPP9ns<[bdBؘ'GGԊh#9f#gxJggȚ4t)TJ&.< X!([آ-Hbܳ,*&y-E sm2qڴA;gQxVOӨ'bu{d"UϳŁ4 |7p ~fZ\O^OB/dBsJ %Mza2]%>Y|{`ꁠ5Y< V-_64 t˯!=*1RnC7Vˊ3䄺FزP1%K%8t7w bud^;b( 6WEzW_(_*R7@P)O<  E09FKf Q^ ԝ Cq4sFIa"7WfYSaP 4$,5>/rM资HV _nP:~I #ǚ̮E_hdsB&OQkjmL]zIYD?re5ܾt*dgSD&f-ّkojK%vu}F}c?7X}ѯ&'*ҺZ gI^CSmI+L&[Xe>W*"!HW^\ ߵTFqwF@.Ew@udL=Z\^&P'3&x3kF3`|E42"f/n`#`+jKP/]oJ')UI5,n5Mk.+{3BΎ`C "\1Сv-p^",aƭvoz uDuJ'ۮ2,b8ݠSNV@1DeVٕvN[ǢxlB0 \U9]uz@a, 4׿B g`Sⓢy\jvinRe{us\pL般f?0WgP$s~O )61my-1]g<8xR(۳WQ.bNVJѢ#7O*/y d<㖌35s8Z3l lnp} Pw%%X9~EF,ؾn"dyF gA"=i"HKQn|p&^hLb>ZVv9Dm,MX9T鏇WOޒhuj# 5y%ޠq@gW%PLvz*.yF1:pvѰ,~2x}R y l# ((~3l Ɛo$LKuz]8MKvfRTrXh_ۄ5d8&c?mpBC<(&yzAt 2 ZEj,}tsi)&;a O}2{ӡ )dX23l="llݞo1F^: ]YvʮZ\R_~aP{*ԥG𷤑cX Ts0e[@0"ӯe_oC1 Ɍm`R:2zj`ɘ<[ZtCRD{@->EĤ@ꑃ[AC3@ lG#KxQL_vgKZADL4D((`e0'<]|&;&~-Z`vȐWOb)IKEm }'魭E yhΣFA~۞K-Q˷#0`;{@lHGvzr+N!Jڦ+~!)08VYSrrͩx l$z&ki&hQ]U43#,|cy&C:9pa:>PEo̳6/KGA/s _T{3w5ݱJȠnK6L~!f~KU<$c{D2ܖRڬE;,f0LH륌;![]F<LȽQ]og2.k@/TG:/.Z,+.5~ibyH|`\j/va{tcfKsG<< q=kvչlRۄ_tzhdC2޸<2 yRW%+{C @lfmni2' !%2'EldS݌EC%iG՞ۢů R4nֹR`on(GRoG2 TYONv^ ٿslt^q]N\.cLQm1}ЁAqşIP.P|C$ L@Ub^] UCұ Qg ̽LR[Ոl!a^ i~g'M`q#]ۨhi>Eith7q@iMYV+ 5´AAMeq2@pFz;uM4Km4yOjuTͤ^lgqVb,OK/JQ֛cͳ@3,s1%7ѦKK+ղr7-o([K@? U5̡0n";%R"si) o!#ÿh}DgLJ\>uDc]x3fN ~GRV3c(Qw DSVtu<~kQP#aj,6,мzP*< ?gߪ(2ŋ"Ys) ӜY8dʘVX%rj^O~O4@k/V]!zXa )\úY0fUY%Fo~jcȖ5=H@VN+9TdzspeԎsܛ <|u_TNWAWZ{L^J]8VLaPͦ/.FP P屮ʁ KK gȑI8^D̅yӃ=ٺͫ"ifETgVl]S 4i F们闉J{:ܑ9yscm55"@\; hkR h츱 gq mcEók'{$F^ǚ|H"V !lт ?RNVIɭ wNK2NJ!)[@d;GSΊ_>uM }d3d]XA_zyNDiCyavЌ%v; .sUyP˨ea-MMdE3Ca{H)!G)L!誴u.ZO o)ꥪWt;xγhޙbxd춭(1n\<4hXry ]p#c y>P x*S%O0XܼKHeDAAa`׺3ܽ=t35kY/5Ж;g`OgR+ɩ8_]BA hcGFk|NmGxܽl6X1ǂM8SX4#$)C'1nDhߥJnӡUxv EZCb.$2|pcUKaVO}[WGI㢮^Ɋ5Eg}+6@ /\2bOө'nuɫe\9LTD.Gj2Id O\-Lea~Msj&$2ocɜ!4#L5׶=0ی!?AViGϞC{h9V(qݦ:ƗIȞ3 :,iB}EC{L옟Lam@>=KLڵymXG-.֐%U6(SƲ%$YnȚ:@tLxspT$+)&G#)YeNwK.2twyuY'oGIG1ZxC\?yzLjRV!C{;>V V)Ty=96CkUNw8"_wF?; x]iI ¢-ըfTO԰4s7Ag>%<7<92E=~EnI9\QIDamx[P/3M|dw'%6oͱ-$2Blv 2fx3@"zRuܦ8xIkiѶwA;9_ZHP*:iBwelqcQ@&,F ?W]>#7: ll`]DէVt ][Yb"p6Mm bx\H7b2P)RHrW2h/:@tB= ~ܢ%dP4z0ǩUΞ9éƩ}2.e]ȄA%;$p_c!rMl/5CЩWG*:7\'I3vit-WtH 3wH`NܠbPă Iږ5bD8QPgrRGW/=ɨ~m~t=y㍘ ۃO f W)6J(^\,/knr]"Cвr>̈b}$_W)|־bN0*.[tNۮ.%3hv|5NAs9IgGφpWPah7%9_B~YMg2٭P(ޙ7H ѭ̊}/?xb14]U. HJYhD:h67Wb>+h'Vn?8i3naw\x*BZ}—)Ů osJ'^(nfІz(obnCmf]g1S6J|P sQ^g!䎾QvYQor "ʼnJг} ƚfX궂\-VjH@} l*UP(;q M4 0Uz<7k K`6. (DKbdW73qc8qs+6VJKo=UxG(։~8>O88<cJ%GİF$[PF뎢#ju R]5anS 2Ԧ.L{gWłL~Y 6vd0i6!׹@h7=0J&ǰ@n!SϼJ S;\xmXZK-áRmlW_gbugn5(k HAj`Bao.K4BF$ev1 * 2;juU6Vʧ5́^ƸG)2X;,šMZkV{%`g +R=6N-0 uF@K.$ȝ c/`O~Vu8TXl+N+>?S@l~}D;'թ/ Fؠ!ܜ CJ3-wGww.` ԩSt|j)o@?;FNylKh?Pf ;0Pа6 Lu@bL>_Mj})71l8Ma@N7\$ Bx< f/1Q_ qv^ ?_c>Cꅈ٬h]8Ud9 Lkm%sϫ̃4xd_@F]8PoQ:$,Bc9m;d&/}jw44|b#d}TYͥ'/Rǘv!2 P1 ӵ=фQH2w c;ppi["WTꐛ~x\! EQRƹn+ u M!53_/@|=Xg33 PɆNk~|>eA8f). O@jSKlW]' VEZs@.S&;q> ?7>k* S&Ɉ;[zEx9 Mislwyڌfs0SH1zRFGi4 Z/>s9̷[?tS>,# N4Qޟ!&x_LHCFwZR|7m@P*q?)yZ;/o,"wr9O"?!'(gmxwMB%#W~$V{JT ƅSJN:y>]#1mDx4"cF.֜Qp;g]6Y+K>G{ ctaþƦwKUt^uRjsob0-"Ԛ`c=MXS7ޢZ? jOp\d=w_@'a7]WC)E= тON.\ bv7K RӉ[{Ty1 y I_V\9wl4\jwnQG_'EfOL)mUFwZu)G#γ2h1%?ǿuu3yx# 4?ig>ȷ7o~xlW&/}нy{nJD5o>ニ!DN%{h& 06 ~h֗-&EyqGfp39Cv3zJ EyUqߒ̾UMC6Dv`k3IXD(:Yc!)$~Qu\~0!Q>+&r( 1`:hpKh{dcE_#iS=&c3tڐoХzt\[_tg7)Y|n֧}*9K!L z:vyANJ24#?5p$OۨA4+b!+yM TۙBak* lR?_`)z2z14KahdT36 hX7k t=&&޽w=>OIk֊YH:.+{)gEbϬMX.ʘcM$}'~ɆQ"Iچ-biJ#٭)c6uL8ɢhu[Q<ЪH>="guAjgqd)pIꧯ4s/J1BfW&HؤT[J B@࿨H:hubaj퇷KNoPk~JʇP M'FP>x\Q,>we-3-jjozisbsiqq1/Q\BE,u5/=t3G}[[CP{5xֹ d-#^.Os/tO| )rzPWK 'M{('iVSz4qWop[GkE9CLC*qF"-Nc>Av4܏HN8LmЕ:Ir<(WjS\$Jr r{(u0 ՇID}M=8MřHs w3A#ކk8ed r ౹]cFIO5RϲłHL_/ i 0*%~q@gYw&J{/*fBiLA@u纏uCOi|F3t¶=]=!7A6YP1DҪs ޛ#gQ0LWkXcWdAf0~ &d5G PҀٳ[l8_.*a`˅L$񂠄J:cp}]2e4wm``j 2Zuۋ;ֈm |!yUq$E st̯!̲EmFB@,0 xtnҀFLܚ-8Ç2T n r,H?S֜:x7Kqj0,yV(Q}0jى!ϡB舊wV!酟O̥Q?6*)C5X_nF=Qp2 HKt\zؖ';+7]zYBwL GH^FE3 (ͳO=AxE/ݱ}F &K18:K/-z24[~?nXa\Ǐ\T3H.>6t8q՚*@^Iߦ|Pud3 r J}#?>(z@1Mz|͌/ӏ/Xm:G]gOO|PE\J1恛 uFLj7CJy2d( UK/ Tsw|T0fg}|%\D̖$sBFFz>B )v1eTh@tR}-Nd8Ȋ b5] RQXRWPD z&w>ޱ37~'2=iE 9$6 |Z@LꞚ6jF8Yɉ9|)H vw+]Rcmsǜ$RX+*˽iB÷\qEރe2&~T`Fˉ I 2g@.rbP`kVmdp;Pyn!W [U}Kn=pՠn'=D);qLfa" a2--t=⪾S,$pLso}'tY^E˷tVi8E:Kfwjx*T:߿ 68>y:Zc\(Y$@-^3WǤ7Vr~bm2!EpnҮQG:Ob+E0+> 0UN-\_+JTs\)ٿt'|wTa)e0ju8cVwͶcÀ;\ȞZw5Y[) ھu'|Lט#U!%Z4Jp=3ȥ-cAд(N)9T#_鮭>D5Ysv!e<[C y|6mR坾%l2JG-5+d#ѬָW#F$HJ֋V2d v`&CaA= %ɣ,@oNrpp9m1&pwoC2Ac -jc[a!P24Z<O\"ڎ2bY. 06~X#|lIGR ؖ*+2Ȧ.ySkn(.`WV yy-љDQOer8DhbtB},:Y(1OǢMV?zK謡DXe |o2<˓7tCoS$A/b<{kݭD[hk#c߁LPKΪ>K)د! $=c,Z9,awv^9e&S>ٍ`@ր!<=(lux4Ǿ)+V. ˪w▼zoQnt`[^dGWoBCh ݩ#.%f+-$gsZ}c@:jS(/ An$IKumd)/śϭq|pyԶd⣱1@c+weJY8)7TهkEvzܫβΔ#\EAFBH82uqa## Qݪd28e<-? eM@Z}m&{OL8O`it/q}$a4a⬀^pǤ++AalS'v''"n eOY0R=Th[[ l%fg> BGG~;>iJE +7-\Lz)-+ 4 :~^g8[2f"J+btR,2"l(zc!?3gqv{s&uh)~lcLɕ pbӌ= #*Àp1 c\"Xֿg: o>D/Og9)}48NpPBd=[h$ڰzu QP7U Kp4ESvJOTIUGMEI&Km4Uk#-ߍ "+&sBk+CP&Gn^}p ^sfrd< +8 y%]?b ൓XwzGfK +H_ɂJ@:,^q< ~(Y:FH?8WbE 5V;[XұIoESV(N1jt7؆> ? Ǽry:h?s %*a`FUjVa ;dہo}! ɋrFGf]]j6N|B8\*EЁG@7ZbFRXh43Hq%"j#TZMtFQ##-Apꔂ5<xaZ6]0JH;`ouhdǺ+J'f=NUlN`+[l_ل a1~#$˕bFcѼR%\T@Aj 3VSr`U= kqx%{#j,"$-QӮgzι]*dӃtu52/6";) Au-O]Cvc4I}:bԫI(9'O΂sXQ e;ATwZ.{IP*֍ ~~w锯}e[ӐiXSdLA/1֞4cI  g[@0E*-%\۩ǦhΒG94_6̌v*7sy7hd>Ze}?q1 +ͻ yLq(@i ,VD2 g$h`4ݓhZ7'~ZBG#aeVwOmS)^jN172piF a؏ -,n 6>% P wf,/`E{ih`t; H?R̛=yA:ؿQ}fۈGWi ?`R#oOfΒ)tbV5@/Qh|o)84*x (h6$'X> f_2%dZ X6}7a޷VzF8} }H^ν #4g٥bШi ~[,0|'eiWF `TT|BmikU5`0W0ԙGFeI8Gd 1%ƀ7xIuьdޙ4QA?d^fL;RvK#Ei!~ɀAu$۶/B ̖24yČ#-7F1}C;DU4Daᄇ_5/-)F@ߣ餯A vs4[+MXhĪ;WUlCS90*"|C;EՍ:8EpQzp [k2nA&)n'+ŅA+T %cE? A/ZzI"Kp.g%F֪UK0 \6b(29c2&'[Er=u&C2 .JA G6&8wV_n'7ME:b5{U8AQL z%M73[K|8%s%QGZQ>=zr;5Dv݀*}"~$pMLQ3u3,A%RBսbPӐ57޿4E^Z V\i1xuKW]Ƨ5Ҍ#M]RL=Ȟo')e+iKg E;!PP6UejNJV= 3zE`D1 YZTQqrٮXfJq+%r+v8{[F~H* CMmEoi-):$ RBX_P%FF^:ޕMjq'$=KB` b ,b<`W6T~h\9I?6~7`I"Ith-8tc(Ͼ Q .`f(çn8Q:}VhogCB B\DgK+2m5+·V~)խ7 o&68PM27 aB0փ!'Z>%ՏSi4Ȱ7 ` O4;A|SꐵM6' iAհIomvgpZosu&5x PA=tmWHbζ|l$ONdBڢJbZ5ws)1xi9Y֠t 8jxSH;xwhqa>j$k}+VD{QYͷ x7 jͬv ƦXF!_B?7z8Q^D9:tG>(lzTD/m y`רXA*ft.a9VI]M lxy]'n[,k>9ɓsmK*Fɭȱ֥a-?.y@8kEhcZFN?]Gm:nw{-."R@Q47%tXo]F@wjz;~7&<@M{ AR8):'Vd f^΢I P5&̺2uݯkz <>H^`}$9*t3Ypܥ(w`%u-<$)#|hRlZzoN4QmMQޜJpe+X>Dg0NЍ&DŽ0F,`7hC<$K$ ^v$JA)+Ye6 @=ίB{>8oB~o9~n6D*Ojb#av3 a[ĄA&] Jʓ#ϖ0bۗ2#Cۤ16LoLP=-@ƻy5Ɲ􁿱sDd~ I;2,!9V۸2b=Tɯv'TmbUF-~\=Q1#eT5n @#N=@尷XK`z;?~(?̑ A:*DwP0]=Зߡ5|Q)CDj.Y01E&}T~_M7^ iv" xw%T(eT0ݟ=T/!˔ñ!U{[ {ر֡ZmUNH|oR]WJ4UXM7+ř[l-8c5_>h.6,tvnQ ZxP`Q @s=U=-pgEUҹ&;CNl)us]uw+\P|p6n+u2 1Җr^ɦ>s$XSzcBntI'm-6ZvV?y_N_>22~ppbq>:ZH02Z.½լ,w 2+ oiUStәo*¼Lf([w+xumޒ$͇kv8J{0(r-s!>ԐUa3-yzV0=X9Eb:j$$I3i<- DЧ+d BHD MAmSW(?J+/msU-JzsRtfTj_a6S5I'JIѬp=S ~F*ҕP%E,s5rb#ĊVs6xH, zKڃwjx_A&D^ $ !݆YO(E[0\Z4'(}m<$A+&~p!vG:o] u$}R\JDLg1[ЩDP0fqV@ KArc/uql ^PO^1SX]鏱߰k- nJUbn9]^۱+K&҆ BOGl_݈Uy9l!P~Q>+JnY{,\$L߰~*ow?n߱5CK$  5t&Gj41+{U'a>p}W0uu#u ,HAUƃ1 Y8euhC#:>A!u֣M8=  fs3MҋC=xZ$OPGz(4G,*~t-BgW> K Ϋkc'6 TyI:\i@ɪY 4l \Z^ȼx{L$ʒUυenj$N0"@8̃ Ϧ1m چ+3ARpnS@ uEk]k| /t:킀nʄBфf,1؝@0A:Ub_9%f4ge3's#>ܭ ʭnW`/=D+E') W8W[j)TP<`%o3'sorWf+m zz>bOU* xCgӒq*0WjqO=, d#&cY /mLm'^CmX"(S*g{>3$ccD7OuXrgi|#q;fcZ;3 l))]>*mȱźꀴ=]v;Yf.kBr zHO@Dg7i)y}ߪ51}ӳ@u p&iGBV3PuJu Rz VzBjq)+ܒc&>>6n% Ac:'}ld, k 2 f6*cxB3b,q')Z,u> 7/,.0JZm$@X'>@.p-¶mNⴁgNvcCvK.(anеUHjnt)hBdڱ=,.".Xٗ!7k~x""q9W5-6͡ϴ9*Lmx^1. SyI!*Sm桞D&&(BY1զVˍ_zwӠD^{U]#QpT1ANߛWc/=GЦG5P,n<2װp.K ݆ה N$8*UX2ʬ[l&2 W7\;W8@N夐cNz4ܸM Pd#5ҜB0M:AxM}6bz}[^Nm}skr5ʑ;(@S+`[$=γ*`u6{ __P283\J̗&.TjDka"mC薒_+[2HaH͓,:GJ0#*AZ=+!̈́,+=P罼<oCآs(yDiKD喼MZ@QO!'þRL6`l} '= po/ܑ; t~Jx#x A0^s_&w- d:D. ,1-ϑM Km;SꝎ͂ =`X k]"lăc*hd(uxG8IP dZH`td"[.cq ۲2h~X򩵚th?½w8{; Q2HA 6_xVcgoB۰Ub@̧͞BQ=v4D]}wQfX _q4TZ&{<S7W4If; ›9(Ul1J\;ƊvOul-~ga05I Į1I[bƅɒC26oPӿ}$.O*Uu|?ⓕ#v-ہ(G^5fez銋AҬY9S>]XYce)`s.VO$EKڇMcGlݙ޲hL|P?Q>[EtI$@g˜_u/p'+Ft;6lԋ/]ѐ!LP 3ZA^r:E}\qH66\`a3 9BϟaY6XSc(o\otLIWNn#4߆AkIk{te\9ESvA/&n!:UīxVl^uaNk&f÷7G:.bFnųyFy;zkJYݚ~DUv=q1?"(0t;S꿙:BƧ\Z \ʣYb`Gi*|Fk1~qedީ@boa/9EIeN{NufKiSke~vIcy?yQ9lԭz$^u\U3  5}yLT kQ C?O,vl F_&K眸H2yfҘ91Iy)jP:qIUr߁_LF!Qx~ax"G񞌗tbGCTy{c5߭%A Vrk|Ӥ b%Gl3Ψ'č!ikH${`:CXX3u|͔yi7_$֏lF Ul;T\-Alke[҅9Gt7=?-bv8 y&>RQ*gz;-%FTfTd~6m"C dC6;`+2~_U<`#K篵/0#K `8૵k\Ea{2xdZ Sh诳YbG\ `:@(q`ߐ9,2rH.dɆ,f+ǚPB0ٙv1E+w7e8I̋WAK.ASѾKF{t6M3i&c8H8 k[oʒIy x۶ow{ē*N詰mpaա NmkU (^V]?åU~6vK#*ض ?TP;djq}b:,*`GqL;u4z(ERk!?qƘȿ8 ѥ3qNdގIԈwfm(SB 8Ne'_P١Y dM/5D~lGgGכ&LH|Fʝb0g`z ,,%@Dۼ geURkT d\2) ,md$jAEXX{yɆjBzY\TmZljvx]ZOuBu~ 9?ۖ!y>{JmmzvT Y;8u!T1or"!]qt){& 5Ur j7gHq?l^QH o b:%,eĻ0eZ#i?8);%QG.K Mg-(LSCZ`vp̱+]{*|]UaB;usf#ǯP?b:hbFĴeě^?<PM2/(~k-!Dwލ.|^RW;JlAA< \N#e9{BoR!2zC5:?{*n5WUxTYE 2K J19wFt}?GgE-iQ+B ZQ)Z_G*f}vu\,\IZ5s$uAhΜ]Z<40@'' !64 OW&A=uQb\ 1 ̪y0k5 ?.7CW|Ws%Yxz$ R5o!z/W~XJJIKI|T{*8 bƪ`iq۪/Lg2v/"GprFfŮq7ЁyZ״]eRwE(K<@1,`\@OHI,}ia$V+Y&fE}bwk~)%܉c8&_d\-,޿G&J\[tNƅ_<!zCH6~:|A,qR7A]QZˡfs`d&+wI5H[#~m XBZ6 ³ep< ̰]GxkLqUķtiw0@W\"ܓE5"S?&^1(+1ORe"&i}bֈ2zw+Jo|2Ʒ4mAlG~… [bEx{́;gWd!hPF5ur7JiQ|SQ '`,KN j¶ 1y H]`$9tx'7uȧil7p޴14"@ns ],KJxS17p{)ʎ)kDMdjwc˕SS3F4 hU,!|w6阔,e]h>w"26_@fQnčщJQr$aSf,@*u~$bbזkkT;, :ZI=ְNgmZ;}i + V`ү~ﲅ_E, ,q^֎@7+ ?]iE3TKya3%?57Q?mvIhvBRqnC VObMEf[ǤDh]^{ I.gٟ2n&s&Vi84+Xq/F)U {*r?A+(禬A^Z͢ڸ9ǝX/^m^7eL8fV!*kf!L|h~L|o`h}!XcGlX ]7HoSi Į >}K_X;"/bͣ݇KuxK[+3p_h!UXJ>L:Ev_vw\ٝ+WGĊ>TrZۏr_kt'y̏.pbѴǏQPq#6,h#'6Gbhwn|]痜<-UQJ2~ʁNacoV-8 %y(/~Kr|@P%WTØY4qz~#y2XRSpcv&BFs$|3%~\iejSwA&"@%cZeo?hNnM]7_0@@\f [x!-0.Tg(_#$*4`L"/V6(CPcL ALbwh[kY-y%ᭂhTdL/lDkיIB@ѤŶR9v5~BR9WY! e4tk3XjR2óbwu<IeVy<"yI]|w妚Jr}| G_yTaFӽ5^MԳ3ЃFCO7 ~.Y;4\";n> $ȡNLYqÄT\k}%$C>hT|S&FnU. /W 9Խ[+Ck/RK1 2nWp$cʤ 5!ǻ.^^hb?`6VqjO$,@8b'bS/pTV>ٽ)m^fg21?Y^ (> :yztq&zZj2R\]#wT8oj++41ﱹ;q5|@X&5Tdg1ʮ)Kyb7&cV(VFSx:jbٯ{eW\w3I .30Gp[Ņ|7x^fcN=#>dd. ,2V'C"(>rp'ѤZ?ulȕ}n۴Eç)ںRF=K|8݀`y#՜'}Y2p (K諁VnXw Jv\8K|S1rU\E> F?V _;U.,˿B.Ȇ>$'S)h('T$:B8b ,6n/`s dcػFZ W;{&˄*qlm9fN=N=0 a6 Rnd`#0u Txq3.t豼6KZyVt؛*uS2~ VV'=mOt\a w}n`)v;n`7_=.PnqfnIH% w9@92;ԅUDn[>>NP6$3S 3Ba1!}:IOrQo4Y_h@aiq"όԠ+ ;>MQ@[JyGtV)*+ouvι_O(wV&3p•(S #9/fpG0+PcPϾTipaPYMܬpTJ4O/[ttzF u wyW+qoe vOێ_JV 90J3Ir~*)Yo1rN&1x~8 sf|">B5GfX8U]8(M Y|rX5`yܷs5@vo%$A*ӫ[v1witD2W&HzP4ڨxƾMX3 )OHں1s `I+,Ep^Ю=/ hTdCe ~eb/-/ꡌYa4NtXv8Z94 JokP}'j/qh1O%-ޔ!ؓ.\DE+H:µ4^cYi`Um< v fka{gH#Dg=JāJa%i2 @P['[S<8T2l=9D .H\ ~6mr -kլ@HԨ)z4LbPl&\%ޕË|'W&8kYaE(,hT380l \v dk/q>ʔ [`W@}?ʂqT֋c DiDXOݯiLR!&Mq[R*s}e!ei'& S nܷ&Rף%OKo4$mlwAݰdb!g?v XvG[vR-y@ O\s9ݍi9n3Yhk d-ˠ4'FS &IJMn+ &BQZzmC=HR jz+W21O0T#1 Y=1g2INGG/qhϤgSϒ;jRECg(`.k=T4JDCpvfvX0s`gS"m_&C˃WdGvx96TDT!3cl2[. 7yƩtiڑaHߘc |i<02 )+oVYxgG }P?(*ijtI#d8 B^/I5kL cBkzNɖȤ.PҍFjqbqF3s*E+%'tZI-t=r+MHunU^W5@\ y ;~(W"o U?X`Cx/Wd5 r$Eo pF+%6mc@Qoз跠EPc1Kb5pQP6Й\Y&V;9iA+6qRoT%m;^z5UE}͕ź Wי5*%$6@!܉|z9:s0TPь'<2Pq!]DzYou L%5]CPߴ8'|+nԡ8La P]ԈLd00J#2%m3o =չ)̾aωi3jѱ!3)s xv9+=RRX 4cO4H(k\S3OnhٶcI&F\<*[B'_PQ&`3U87;R ty#O' +dYwג^+2Zkq8GU}0x? +aǭ\'&ñf\#uW k\mSSZ?s4?Qcn?s6p*\ $*إ^ 0#l!ֳan&T7ra L]cKP;K"j){+ 'ҹ]܆P 5ܯuIBDjpK 62c +NbvXPJDˀNѸЀd5Ll "rq$njZZ],b=Db3bb$Olb,IھyѬ Et/FmRzplC!&4\m}<2HꨉLz#MҋY"46Rs}[$4 QYJXqDġ^i͠ Fz>dG՟Y4g|5tz ^fzpyCa}?IB}e/K@6f?]w ?ib(λ_QN D!GԸ3v"F $ W,=? .2Be EgĔ$dSهңG'-EDaZeaq˧;Ć|h䱏mpXBM1yWm~%D$Җ4ԩ/ 伏Ɨ6_`NDlhTdURҲbBD+﷊SCoa-L!(~hӬ$ky"JV! +,/{m`&ΰ&ZHo2~0ov*b="Pզ<`Șku"~Ke(X`' ^I7Gz/lGX ^̘C:Ť.]EVPQ.*|Kgz|B]Ov-'@'Ǫ0e3L'7پ8㫺d/{tKwSMC[^L=1ZvhWܞiq/7ž7.7U lNPF)H1*6n!l!a-X3c!œmGmPd4_x!buj3L_.c,_(j+U hL՝N:,k] XFmP.w\)G۵p_Qx]x۳=UDvXr!༐B!QK2Jcf݉YFBK>EOoxS"u 1*>jjcܗz AhX) I9 g'Уc|Ő!"$?_Xr ,RR+Z 8|-1CPGn'-zl9e0z`uC2ܞCCW0~^198"TY׌`QB6 # D4AtȒhrGA!gM+: Rɪ13"e'ԣ\A|qSp`*zk`齤qED:.Rf)lQws9zVRFR% ^e҇vF7'B/pqSb)CtJҬ@`8bHvbg]+$/#l/!QF!1b{tL2mV-3`ĊZqƽz >$== f~P9h#0+JƎsN0.,M2RMD<嫻Ms FJ3۸^Q:MbB/%A0 ɔNۼ[P@G/NՐLl"ZљN(Z nKF0:K)?F `B+VGAd{u K;=axe@°]\˧QݮM6JYA%Q(D>=&4~NaXHgAgt6n@nEt6)ap{qI`<]-˃ʒ|5%S*)<^g5KִycBwg za$>gJMewmHЄ=k[$90a³Dhn[@{6.-+uG;?[ "iXwm.~GY@+?`C^p,0 4TQBRT3xJ]ڟYevD>YFǗad'#Pv9LFwɞ^cM/]0FeBs=, Q8P4GPWX [*9C.bv4g۫ I^b0g"RuhrDWQSĻBZd*oD۪p:0$l& ݑyz5/eesol%@su|^v Oo}E3uF=BzwW-}I\4pvت3u;4n$21I=Mrڛ!MW@NzSD^4wAtü}Ӄ ծR8yrJy5׶4\n] A/% e`s!-۹lO*,5^9(ms|kG*^:}3~,` L겝ǝ ډkx {dp* -EF/Ki[o !lm+ՐGܘR/UfZ4ЫB =a*'FP&CŹ!Cs^*;8:UO˽ 'pNRwȘ6Cf! BOda9;a~UR#2VE29zN)8DAY]cER``B?MݡnOwFsIrzT[4%Gvb.ҕ@!+dzPt糨]lܠVv<1.qf7Yǯ44lۏS>!=sdM@zazFFƃ0׌]^gϛA,) X%>hX BBhE"XFJR/_OUUnRb&4X{ڏaD EYafvRuceo;a^, #,?̣n$ڼZlTH-Hkgtf-6:;'*34tB*^[;*) a`yl-Ձ3ĕǦI *2h,D$Xxh$>nk u(riJbwY3ф&ێOd ,*eMy१YuY:|S$\ I>gjcʙ.U>tHb٠P;g Oؕ\׀Ĝ=Fav}7P{0Qo-\,Fo`"1 ] |CXFQʿ>z_=NeK!, ֨ql5*9޸f#.nNiN\urSjP< ժWGoeh>J^Li/`t|d2ڄovRRI y2lؾ#w+Ɇ'-c)5UuH0ٕ)S"pxsݲDUogκ xSR®Eu(gTfϕ'8]z:K$Sgg>Iܿ  kKݢ?euɏ1÷DUDɠb:'Lrv+^ Ǔb|xI݇5`3n3>TXR2H1(`ٳwl<pF4mhOF5 ${ĘAw!v: w!;85gwNS7U 5w%s-Z%uSKV-g袣󈷇'=ŨqtQzSi%3~*Z%_-ꢓ@$Vt qC#Y9: ʪr_C^B/RV#E"xբ˓+~@Z$H W%^൐=ƢIp̎Zvb렭p/ !M8\)D]"pp}438bxn2F)YsK- \V_C |9V"V df5(K+8iŲ@IX8Q,gYƺD.q:9qkӓaQ=?t ^裒K"z]LQ~F+CYЪ+O@Z*}'~J-0[8p#- e ־V½vteNPE(ٟMf0ʜgsvu"U=3?- =DOX{3/u#o5ijP:Yx7DŽB/́6Pk!b- =?مVӉ;J2zQ ڙt˪rs坯4|5-@@fg9xF=n\޼n[p!|† P*X,nDm\&ul¸iE.\oN+h\ݶ[ vܥ ҒcTV~2HOjCք`[JTfqdU -k_Smx+ id9Wouj"H+5[Syl:q|fi pT\“Rr!I6azq:&^EkRx0/23X u'.;|_/rM ?#US!랬DVw>8uybN?r{p|KP.!FY)⡄Z+]]F?bo갷Rg[S d.2fv;)>ڐnefUew$@;~_N& qOrO]К8r:8h~u4S\Bx k>HP2{K/j4ڡ,(~W1d><׆L%"%'S}j67{qtxAoEM/Fo$Jq_xBDzVA# ~W@/H4ҸݭOW#dx}O6~ʍMe]s>^31q !^Lwa6\-_S5__lĜk*WD4ļa -p43q77!!H6UJ2"Ty!$cۄ| D]Xi}Wbz 2f9ir6~tbL]B/j)1 /ǃ^  L`_(b߶(ᜭ 4+1 ФAQaCy>֙k)BR+j"6D_C:U~1o~vZ LZ.v76B>[~g+Ce|B}"CDt#ȉe#]zNrq$r UO"x63{4DR=sx6f2](&:Фٚ;5ۣuy y3 놴Tt4{KRpQ wGmL3)]UQ}혆gBđ=%M& bdMe+3 =l[3.sO:nP+bG^ȄhN" e+^fm, c4m禞0XXñ2Ѡi6bPYiJAIU"CfcCi٪ x)uzګo{2.ۖV ԻMg| DʿܼB=5a 1wS9!? TE÷l6k;|V>,8۞&OGϺYye 6'68MADo\t !FJ]A{{Iw"TN|_Z/i#|Zrb?-La?uL pd, /T=`HuqeD<4h#crW0`F4*\CG'uvo$%'LwZ Bnڲ^d$6)W6&ay%yФc_Ewr<3рV.#ⴺB/|#IP% 4fÛe?CCĠL;p h1h\-?sSdW!4sO13A0*/Z֓i'a&.W4@9mA}ղԚJ_ynZ;bwq<&[(9}t -z^Q*hLn㾟GP!@lpg0OL&SэSϧ'NFXhlٍGmUg7Hvk %/X`ϐ4p ˍr(<h\/v ! !;8q8!6Ca&iԖ)L~Oz!TnN/mJ( CW6-Dھ" |Bs՟@_=Tǩ\_ SuD5)]=N7ߋy`!lOi&6;I`N޸؋k_ґH - B܉5Ց"¾o'ftTROuv7O|``P?%RjzB(noUHœj%O;FZA`jun3>ӫyy)bOn*3Pu|Sr/: GQE4uqЇVF"ͼo ۨ!|yMC#[Ͷf>WsÐ  O6-Gj(^0Eћ*]U <׉486Z_sw#_:,;\El]p}XsxDga&RF)AmsČ%0Nͥ $rG$ yV\oߟ؏;FN|(&4 (!nĖp5ߒ9tt Z _;Vc-o!^2 veQn0BN* ЍPIu{oG(Jʥvc 9\Y!ZRWn1k`\`w-5ݒgVB}Ԝ>c{j(m*{' K?sOHX-7Qzp#_%+U7$)dWgx|GW R_;:IXShHs=O7[Z6B:UIٿ>\Wp Iz`JM%fQ+lɧ[yB})W&1ӆ+ s{# SCdk=1ֿ'dH<}>,6ݽWX(?QQoF}C"{+"ÇD&($vҭqDaj)tOJ".-B#1t\0[8|'P^:'|5wXʨOn!u'[nx j~xDwk:kΤBQ|b0}>`،ɰ#m.&] 9yOj,mD  @Y4\l8۵WO]F,{Ƹ,iNp2 2\6Q_CY,BlH #~{%d,t^=:֐g{bnEgA7r,cNFEm(7Wj} C9_%  }F=Nb^m(>& L9]VNNcUhfU:G.Hq1n?^Xj0A@緇$vK6nR:b>>1GBE'>ixMؖYSM^JWsU}NAΚWo2; ՑA`!⏣3QH]wQnH1;GetТ>?㭓'g }ͳZ7궻2oR;hԣ*`z PQP$/|mȽNxZZr'p%aqI9 F^dk+6'W-#ȼÃ"2) VѼˮ~WXZ+dQB%`ogg˱:EGJ9e,A S=wvHT|_/sbǹ4! %dB)쳧$|9ST}3E&?&!)A |Śs nءЛز9+=1Hͤ5(, :3GZ?@}s0%."vkQt+->}Gl<1?qjTj4 Y͵xOY-98KjjTY|)ٻ/ i/q^/qY5>bz1lWu2t3/Hb? L=۩isPT V {mNp ɎAPEQ`n*G~_^6Ƒǂ4DKg1=2W@ tA:A7JRKu!*%rW]_(o٭OxUҰ2@q_ ͹8?6gaԙ{5nv7NIK>qQ%8 J6htD )–[Ds9.GviHCt۬ffV-P?k k3K5RћjUԅ\?d<|cqXe%)F_]|x|` _+U*={\,zHxGO`wY;|!7gm(P Z Xz<~4HP#&|x}stz#&탗-NV#@;&W!.&ՃjHnYdMn|;;F%GJ7GiGk6S|.$=h?!1DqjW>28QD LNb"S٠*ث`R_t׸ ]"l ̇Hm Y]6kǟ#C>(ec(26|Ych}D<-cbea&涖oz zjZ#Ty d?眂yH FʥIBR`_+aƧ#)4CAY`$ ul) `uc7 ɟ noBE7#؆ۖmBFzq~Z0q[~i oo`[nx9ͬ3d={>*yM:bx#>]Ov LaXf'FP sI'pL##Β3G"ofrSx FmX'G.3ctoW9wӎ.jA(OqYC&]ld@ݙ8)SmF/%z=ba'賎 Nt1 q`gQ1̤&,{Ee2x1Npr|l} c5s_1? Cxc58Sk~jЧQ$yG5Rܹ$ #4hNM VdO&qcy#m{mYr9Ql]冏N w:Î ~i|!2ok/C}OghkU7[;^:ROGG:5c Q/kȃEԐF>qQm4ѭˎȰzA O+}Ttdu}ŇIG ,7려tN[?'ai5wjH-sï,^u.4\O`Lt5ld%q~HwW6sNVNFT~D^u_{ W[lTh^􃊕q 'Ϩ垈p8_Di"qqMrW .l~J.KV*6VqD&F"1's~{ ~NGw)#0$7- K ]p_iίr5*hw?`e>t_y҈Qeل.!! n45kU5PRiOv7S dES)N_"$vɐ߼dE^>c#08N ݊,LoZ(E "-(Ŗt8tԸKSsn2#Y&'F?-.扎 ^-w!5wsjܜhxY s^&YN5cCȽ5Rxx$[eZguYA9PfMq~mnP^Gw:/)._ue4o>$X:ƀ Si`X*1!A˸Q-;m`4-0ADE}6XMX9[m80(Os>Ř]ҍ;%$Zb%a+R]H? CY]7jKz*SeB``N `O)XE]I0"Ht @پU{Ӿ\š@=UXcYə.V+KRF:VO] {BtbJڧ]l$4 H9 E#sQ`_B ټp?7^# LM{~v;Xzu~&͕n4$J\ &V |{rzNX򩓔r{n;ۈQF!H !/W9 p,XX r_XӛNoj˛xtÕu&CۉXNC/^wh_Lmvivc 2^绻Y2q?xPGx{ >3V7q Ґ ,qR/&֗|ᮔy?oXqC2K9n.{>Йv|ÞyZYW1'x-a 7OֺEXXm:@NAR$<Y98o\@!׈Pt7V{ÕG u>6⟛E<9V z8k[.Uٗc(U9_g)pJbbuJ0 ls @BœOV@P8K^L;-aafH%blR_LOR[+ԺGa3:`6ЖyIEZ2 0J֙)ůh#XQ]l|89 SE0*6]m `׈-%6 6\xHyONTR-lelʼn[P=!Ո^%ӡjcjAǾ'.Xk^!pPׁYv }* V[ݑV*0,D>s:u9f ljS/GwH=v):1A>oJWAݗfQt߫hkcTU vX<$ :fD=QY w\FYW³z p<PudPĨH9Z5|Lze8ŊV К*ܒ#U 0F4`:yk㉐Dǻ|C\WTCg/%5KF!P&c6E sFiW:݁ =X?T ?B[wȦoGQY3E&4̭o6N V#K+zwH6}-YXR#Sjo!4!X`B4;>hc@)sLRi0X`$65*/NwG>=+G%]^hr_vh?͉ѠM(rB{Z|լ\*Bdō=0 N Z QtՎEw,/\G0emBr޻#lymĥyX!|󇬭d.ퟄ>Гq@ǿT6<*K Ylp5{6gGg7k}xb&\YCye+FGdKy6;ŃymX@D) ҍ+m=pVC O$h6>QPk?bër$`ؤ w{UƵim!xu!LK+^ͧtZ/(zM )F ("V6GK 3 .0cAQH./$$;1R=ªY2/y̹t*x=Eu9bScpX !|mKi {rC9ҤzO#\Gm_%D[ycΐ+(#oO>:Z>"D# NϷ&a+KBHB1 4fNIއA8H)@#ȒtWFT6lӻ@HzL_[b ,:7a;,Da1;]B`+:BYKiL$mI ~luMOrϩ9WeR6|XÆ/9闐6FCȏz 솲Of%p1NO@Ȝ9Ɛ $k:=mQmgKS-o)x0B'^SzW׍Ot!,hQ]s=aexu3~}&pj.4`\j39(Sq6ʠN/Lm{5@7qV>' $S5#JSOZCmSAJSu"+}ARWyaG(@!^YyBrz3!A5rWAw"4V 4Y%h.ՠ4FZqZ V~{x.5`d nj:P'q)|(Dڗ*R;& 9тs tKp=F2#I}5}q, Ei( 1ַus@ݕPv .zziwjuvI.i1+GK~2#t͔ͬ2}79Ck1 #c"=j~Q[wəSˡ oD%Gr Sd.ڮ|}/脌F\IJxќw($Fݽ4-8o-ܛ8t]Z mTu6+NV06tZ`43SɎ*4{q|a4qWOJ71M[gYO8E}Ǵߨ[r% fmCTo)SE#o0{L{'iR&o&\ojH <:P4hxSѶmu&rxeccv ne+_DxB^RJy8=\׺nuתN!7Ug^ӟt9nkU2?LfU=$:xQaG/<%e,F(lK#RJC=?Iyեi WC5AJLC7EqJS*,1:!~([&UF2wtR̰6~>+'{q|gWցJe"0Y+ )5lWw#㍇}@g:94 ULHY]HzDO&s|0ƞ/݆olK#6`z!Qd8t[,~U @R6v~0}mp))a3/^+[^}B Ko$Io2 ~;KM[aR;m, iI.2s^f~$ܷ$ f iYv8b:`+;HpUABGPy eWzԈa>H1Vzg{O =gZ ƛsU[O:2 K Aԧ)^;Z#LFI/R}A*I(3%~vlTKM!83K mkw/3xgެR+Ul3a>=^gC~ѿ]!EC\ Pzˣ`u3@O%N{AA =8gDbR3񇯎ҜP<C%NPLc+5!9ʲy=Iu/$ͩq. e/,$bkOVtqDM7{7Wu{>W(Ha y\G嶊A~oyQ"ʼn1{!(#cI@Y PPj?/'+yCf$0"|H"4c} |(Y^k;q:xscQ7kkGyy~+nK) \vSu']؅v$ˡ-?-RW|@GĕXz3f_>| 铈X5+t;erv "aZlX1}+pQٻ_#V@,i-#}p[^ZƐhQQ]{lHqU^\(%@WO:5"]B //)KZެR)(5r`JQ2̯r 4wdY~0 ɳLNd[sAX\I=05({çϤR:x&CCz/'D,3%8.)ؔbbxp%}(]Q)p,[ ?-aw]N0/htpiB k'Lhd 9N(R綈x}Q$vh^,Z9:g' 9;UDORs gq[Rd?u1q%o{"" ĠD~PmGn< W6U[h<> $K@ỲH_A*{p먤v\Rs3%?@6d%)o/k' ?(hӅ)Almն0*55-`_N؅P/qcF.0 623/Kg9m"‘`YpO ]h(%T K$GL!Sd*t@EޟR@mmфw 3+N.Cti ҙt0NtHҵz= ,)#>zm-xu7gkýiWgwqWoda/Dz=-GFCKHhF#w֚]ox7QajG5-O'N;$9_WKXb14ZerD`QuәcyR|wK-Xkf&YU`^ $ [: Xn_9דcn8@Z?nQe&l;_d:: -nH)kmU^X\}  @,p .BמFG HCrʃg^^cIhFx7.=QB٣7W/o*L5}uVSƐKL !#>9D)suSgg|N (aek.L%hl{Spj g_4# _WMr9nK6bzb[Pbt./l%TBŤi>bS>,v& cۻ^yğR-C$w*}u/Aw, 6MUYXĺzxg"E'% f9m,Vzn*R)pJ{UdIA:<.RRnY$]ad!_U"oLvcP^1)7UMOLUW+ÛL'#@j4DZlxʧ!^'9f@GhZ3]/̑X V<U\؁^ %&a+X3<* ʘ8 Qtnu,IV~m %(DӤk7߯;CCm<~K9UK BIvS{B6с!,PX -u88јo+=HyMvvlM|ѨmX}wd:,oDqpAKCc[uP^:jF[l%$.)fwC=3բFu2%j>DlOt- y^96w, ^xbxgsi,qbpa$vA7ANǼneJAZ^2yŘ|$} 'ob?oZ8]S|ÁhbJ( :@2\hgucİBk-u+MiNa%ȱc _|ܭn%z46lCϫLwCOXLbA>qx;_%r o}/!ޠnDl0kGj'a$qv Zls) tniehX5Q׫fo+8g̝]J?ļLfgiob@;?3IΝ?\}d&y 4O^b"0"i9j\wP G!o뇵yQ(u&C<<ߒ=s4SZH'@ ;ָ%t VI|k%)Y %pDz.=3gL?NQsv3/ :05Da8wM >-(n&A"1Ι0xG C0.VϐNPcŨyt`>-ᵿj0g~ɪMv)MޖtRv>DX\[r\ TB懐 Jޭ;C;7ŷ17( gNiL(z{ExIW8=y5*i])𞐯GRY* &yqu Mk#?A*NT *qS囈eJ>^b9p*\哲,"*ht*"fzTZUVijBf̣C|q47UK?}|e=9-Ds1-y}Փyʗ7sX`j<?⓷HbAS͓{6}# V_=j3"M]UGwwH3ϋwXqX%4 $]EBŏ'NDhu@4168L; f'RZVdu搏:&s{(~߳%AK9S,[N&mGMyc3["0|~zI>'Y|x Ӝ"lԷiUbfk6Rz:TY}q*4 "%`vCrrS߬󣨹P<2HHS4jYc?]L.uhMC(?_A!M,tG\@u7t2 ÞW\O. N:M58ga[ԟ, J%Ӕ߃LA0i9eiO̓\bI9apCchrGB!lUdpf#WI+t%*fXdҕnWx~A8YD0*:9>$,Pfr1a3Q?槓d !]^2ǾPƈo 9""պd'w-H^ zE5#:N=adP$l7%S`%8dH 6z慈:CQKq,NOKid{螐qb{ydL3pB?Wv܆@#O.8$Xd߽h[7V:j\ziSwI}/(t%Q5OiR/3[i\5ŀ8;pFfi1r3/(ԦB" W]h`ۦthDFg&!U&ipAvy=GKJ/Mb&"a%Qi/0Ia8xupns]ͽիO_7WX6/Qrn 39z/,{"^ʫC>A\ԻN9Fvҡo0x)Ѐb& ID˄NSUTepg;$a"*kY<{<QnP328לEl7Xjtq/x%jĢ,䴹/63,ۀVHp;$&)1I4~p˫L2EmGT]46Cm`$2 CRPXD_WZeX`Ś[WxF  bi`n0 ќ%UD`3`<$/|sN- [{=ߣf!$*Iv$idpEz'Kw-(K"g+yˑlMw{ZzҊZmgi&.nA@7D!#EΡiCF")@x2Eud%X3VIr4^\1t R% =KƒZ[#VzmzwBӅoR\ahKH~ٿ?tݺero|R0Q|-UdIm%Qj<4n5jk ,:?c|iUr mKCWr7Lp0{ûCՊ}3Pxrz<MCJm\JQ;8Znr֮7oEr(vW¶VVS\_N X&3uwo_L|~Q#~h'mxdZhS3H u.rlL+K yZihq$0h_ k90iH^*g=ܺk;irp60mcHpm*p' U;zI;{^;DmGdgP%Nr3vBF,a/+B&ڧШḪ̌ [WPyԮ$fH̀~!CGd)úvvdtxf5=V̼ zx(~ Vr \d,JH;'B˾i^vt=qsbLK[Lͻ5O`ɉM20K^NY!f7u޲1+`BlJ޺1(Nb"T?LwKT)uYS/ZmOĕ6/xI-âQ 5x,Y M~:]NYc?Cl~GZcM}%-gp&ӺS۠8&ۚ_S&4}}gN8j,-c28O3/R>;Rgt ?Xi(9WX(a;;&tKl1'PK[qpCBfpu @[U7sEK;f79i{~ sUr:iWGc{aז8GKmyt.^ 7ej?L?gqIrp83_5wn\_΍b@nNYPasUDopׅ\C DzgEk+ i}3* :[<⼳2\;|>O k8L0__UBg+PBo@PXC&?|NVH'vՂ&IX̦ڼ96ZT ߒ! zM-O;F`/FJeBγ k֩;cD2pl|H/KGGsP9'Qy?'ǖ>۟w ZԚTs#=\ x^9[y ft5>.X)ñRQlMrhoBBOAky~s$HNN_-4n P~-\$I`3ntָ 'IuL  0A ZCQrYo5_E2T`@D!=Ϻ=c㚷KKIV6QMtᾚ2ݚU!DJPӻVX]Jpշr xJgo<+&Fw=^lV7s@D5@?5M`0uަ+՟T CEzS^O^kbhѠeƉxg\.<_9ɇ=WawW] 3ODO; ڭ#8c9 A[mZQ~9<rTg_84:Mp8 }eDyTͳ!|mٝ%i,9"唉lYI85!E9,;$QbL 5xx²ZPS'tm#?c,LAU %1fuN{j·{S݉.F=oV=ʐJH}s Z{"W@CB! Bo;.:' @Utۢ0mGg`D;6".uc GGՍ܂*Fr팴d6y0sC%{GWDe3 aFQAz E؏^JtuWIڈG,Eٺ'2L _3Ps~|w -unc/5Vh>s,mOdӣX RC͖I.aC{ҤA2>k3aJ̬-7zLEriwڋ#5r:R!?cK,@(怔+Cװ2WU =l=,̻{w۔Edȓt~-g1~1X3BVƼw䈔<(YYL,229OTFd `Bt30VĉQ?*xwXC)6XًZ%׆0GэVv޴֝pV]Ins8o_DD["jq³Q챩ڿfK518^8'A */ zMlX[ꚅj盦}(0,mfM4Plat -5X5DXrHBrWWWx*V1RC>;v聯܀΢&[&7 `b@J&g \˩z)k.{'1qẺl#Z(FOĵd@ )  J1u=Sw "ij&Q"XegEj<]qԋ+ x#&TB=pSM}S!DNѮ-WQ•JsA @Dm\ve ZHoڹgّڼ%{-14 |#l6R 5PI[. DT1Fsv4C&@9{|0P涑9o}%%iw2|J`X|I6W'Qڢ]I$2AK*^LPKB+np18&NgFr9PuXN" Ի,囉͌| ˠTwE^츰(zZ^r7w2X;$<3.1`](&r-)ֹ- '[7UIA}e*^2!Lb WEP=oS. 4FE+3彮6E9 ]H j_b fƁ^Cu%V<2sB RM_(wTDdi)( %l@Zc2ÔA܍v?g Jg'9 < |eZъVpa4zyfqſN6P:dj!xK.Jє.f/Hc O纚J_E`ef32{D& (X`iȑT;'QUdlPKY}lzj̰ۆTaaO@6ZTTQrjWe-(E̖)#NOT0#"ų{_~t$"Y<\z_aB gRXI(ù@<>'j`P CUgaVS Ơ…\r)|eV[W/yNY>zCu<[(Ȓ8L2Bo%x7pL ЄՍ'NBرX:t6S^#Dz>1eUy]jpǝ 6BPWڍ}zE/wNo_3%68$<9}źs]w+N`{ϛJ7} BqŠ]1p5D6I} Ei<5`uT^s~b~]dL+.zUYaGinZ|È.KPߠRENq PghOڮV"cknG JnS*G!W0``0Ыc~;}TW|HR@. v(`,*N\X*d s{b^twwn]3t͈S@! P&WL)*3'1_eOu%x=oyt dhR N\RSADN`Pc]L5>'~Nb)%ˠһ1L|l2e<׆I9#@ݥGeg3ex2!hO"*Ew":cB[@S d%(-q.ޓٻn&v\"UdAK@Q6Xoa:  /8ַSfŐc‡a\3BP0v)[QIW"B@-RcA3^8EޮcŹRimrfүaAͯ./ Grۈ[zɉh16!,NÔL+*BfVdOēߘ`1vXMqZkvlQQ;*i"}3잢,}`yTqW cThq B7/zWKXVk/_Rad68Z<;¾t֭GJF6)|{O?9gȳV2#|钨tKJ Ըe4gP榽fFeD'jr > +~w2Rs+Xw΃6{p,jҷ_fm 4>G=_}Tq K;'W {(J>"SɱW@*sLc@ӖXOڠ hCs^-"?63ڣ}{Yc.{}G@n;3ȼ<ω.b2ⶖ֪rAďN3~\Ppr'xu=C1M*ܠn}uPddpER"1 C x97&nu(am1U7 3f0BZS˄p?z|/j)Ƽ;Ba_bJdZhD2zK'?lD \Rk"pE5C>8Es1 ۘRBĚQЩ*N"dRrWạ_ 1k}ƂAGc((E{+|zGF (4hhƏv0Vִr`D2EldIG| ŠU;V0R.(Ô eV2rs{X쳓좼OK`א=N(n.cL:B9*JѯJߍ&*~RucYdHϩՀ {; %U:VNAcU~칬1~s 9vUF)kPc}z j'm}t%aɳa+H'h[1ķ>Ggg=ϔVR87?3《"[}R5ܿI!=, $1L\ϭ'BpB -ȒhSZ{5} ֚JI;XޭM)]B2#=[ NDmy"q{h5 g (,A>P~*n4\~eԚxR`\͒+NFp6Fw7zO 3Őj?Nq{uc }9z$֦%]~ʉ9ԭd ,-{akJ^ù -`ʘZq Y:A$LҚ|qk]XFt4rswۆ#Xܬ?ً6!Tsj'T09yQ=*i25tGJbt78LjcEzBm2O1ԓH-lrdp\rzp.'cGqg ,~Z jkמߠ}w=ʢo٦yJ[hX;$r *c{Po,D[*MɃJ cyQ=YS]/w`{ ogw9]~ H}ҿ3p&/Zs.7O!]gc1.ăSOY؜ϤlOmʗx/+CgFP}Eٹjr@}XALNidp H.eɦ#*,#I8&vMn5`uf5;Z?Q\ 7b=<hg3o&%" 0t2{pI~n#%]0=}ffi=G[[?&c |3KYڨoF]:/7i/qOO5xZg/紡FTZw9SVCj:e@ t`n5D)[ &Wpg@ SqaCHIArbxERѾYL**hTW>˓PR o)"&r|, + {$F5۳p[sA,uh0D|С?|,RAަwۂ%G3Q oͲOmkNqY6_Ll-3BmO]'O0 NEÑ7W^>ND3 \y&FV ˣIDO&a}L!1P8Sts]4,=0r5ws ̘N, *}-Y CBvm yVK߹ݽL7qgC}ރd<uX {v87EXSP$Om?bC8u dnwJW0t"rfJ TV3RܿKmG;@y|y/[V0|HAW[S,kA%ͺlҳSZJZ3Nʟ Ӟi",9x 9lDڡu8XbW喍c؃f<)`F ;('x7!Bo܃z sZBH4Cq.;cr{Vұ;q1U5QdxiJ+\sd7q"w !B du4ֈ*HZrF{ :T"n S̰^TFzJ?NXj[IA&w 5Hh!Xۼ?Ͳ{C=cSmAE>S5bZO`l]3e@rX"N#Z}29œ(HWN&$b}:WKWl9w^҅0ԝ\s Gt\gR 7+ R1{ϷcMg1fjxiJ|)ڧZی,-W-R(v$ˮ!i/|C`7(vS#ϣ[Һ^L/~%42WQ }#VQx$LI5慊lY3.tԟaT*%YP-o)s|ù_5΍A=2RJCı,iB fGTkXpw+8v|C4Ue9qAJX hҞjx.sf%Q)B]rZP.&iJ *ƣhA/0rVw3~] l\pd0pj{ʂ+]N2hNS7/j_(TnV f+JqIHg\zޒAa<Is _4c@N+-9Ikұ/IZ|}eJIpOZkzߊc:[U3_(#/&T`O=imuL6к|.}uwP&pҡrnlMdWU"X5+LؚE]nH1H=fQ7L\*_s@Oi܂H8ӹHSD5jxm-KgWh .Sj7LИ-\ӧD1yAuhw= С՜'XѦ hɻ[WEC wk4ɇ+e^8d[6%LC''}N&id7!-T e&' 2F$Lwo5 4MsM~:e%Ӧ #:3jBָW|OQD o}v)ҸC|~4?9wTA/>*<_*=e.e]};uM$SphtBƌ_{YYj0Zz:хevT#s]loqWHUix ZnwnR*O㭭-cs&>GWAͼqNQ6nO!SFhHRL?c0Xʦ&vY f&넠ع7NVynĨЫlZ|2@~x7F4Vlڽ:U0?:hf辰F7ǣy0='}±.DlsϔBتR_LsoU"tw(t[ce7_ a/4ufa {yO)JX FjXspdU-tЉrs26f|sIAȭ12ɒ >n3o}QZ~]m68E8?p ) M铲A3k5jZʱFw ֔'^]ٛqk%흗'(G 2v+bVj'بf"Z 6yW P #hE 9UGU!A^5ĤpF@ֹ)QuT7lWoy@^Ƕú/QE33%S*;\ogWK RIG --sr^ѡχ=>- /`ot>:z6ڨVMV?)R$<ǐo3)/JhcY)x>#{21"tޮz#97f:E ib/J<Tfd @mR, X˼DLjxzk`;Nftry8pB Qx=ެW5s tʄ؛b(' +fI|v8l14~!n ^ƨ5(!8%%M!0o5MnLXFևD8j* Ӏ_Qfb"r[,sY=(A$gB ڋp"}<iB%shJ˻+rվ ́׉nvIŇ=pA 5ڼ|с'^F~j NkS  A`7,U=^ !Tp ;©tvX)=YH|>?^<]Xi}~ `N^o[^|Fk׸4/B=^G* y dl絛 jL@N)`^b|3(NQ$YSF>->uLu<Cu$'kѯGQUCp1Sc_ +nb1LMv!{iύ mr|tj;Us}S%y=7ɴl27]*c."rOx C,$ލ޽pPSCAւ}?=ѻC'ds1zYmucluw@>kz}2Gׅ h60?OhW )C#\[mIdxW"X1eR=vCX pXϡ 6[>ԏHA3Ye7F`(KZ}樻Ơj1k=^mw+ _Q{A/9@$ptY*-0y%MFdoI]Sbָ5M*![/,('3w!z4d$.PD?ηO2kb ^ ݭkXjo^sl={RNQN|FTZpЖПpXL5U/'()( {XNYmDrG ~hJqE^p@gabE1vWރTiZ)ɹtB7mY?QwXNX2V⁙]/fv{! d_[OxSX?d&);{8Ɍr\$I5xF@m\s""~~ ǥIuBvlTb|f1ak.hX H#r5 rmJ3Sק' EtKaY- M7-CΕX\&٭[CR*NɃ@:sрf=rY |+k ySc!בN=^WXIW-n 'rQ׏h!.Nd޵F;4^ qG ꌜs*E2:pī'*toc%ONr%39tЅ HyNRTuʱwd-1G!X36Kp)ho(t /WʗXwb0]PwF;d1YՉMVR$k"T!1sڼ; ؊cBdi6\IN%8!62]arBupndf3u.*;'u2Ep1־γfot 9ܑfշ`p%9$'܄ϛt=!4*3BX}G+ BP5 .:Юp3Ifu'CxOSwSUKa0A8ݥ_]C!O~&mP1!d5汅sb@U%`t~YG/ :P{vˑ#]aY_9NŬLH{YwYr\snS}|ޡZcm-u |A<@p~5Ac)ϼXXƩ̹Df7CvӖ rN[l~ j24vEND cŚuì$#uSBszYLo2~m2t^KYa3aw0R61">̶˗k,Fl.3~ߚsA:&V )CF6`#d!vq "P.:]9-K?IV4[<;]td<"q|$TM4Z]O(H@m~ 2\gӁN vrfa}MHZ$sGvO'::1 i DwLG>fmɦk-rIkH񄘑#k.}T<=9>#62WBs6#5l@u*AZ0ǔO:6HƖ걊{\` =+X5~3B˄9N4ۿEU(sbm6 b>?Ic<8YrǢ͔"ЁPemHXPu!VH!{geŊ|/dbLw6׷6eC~I4`fl݃GBT N0E=. -]LFF^p3Oղ&tofeHQB(4Lk"dqkeD?j8,U5-'GWu;.JG"8.0zt;$`xA*?e0Wp %?8&rM>A=|j3Eo9?-DϹ`VjY)\: A&;y뻳wFWז+uƄ;LEtֆ㳙-Zl</x _}UpXi︋@3G@ o;[3hi)ƺm1$|ӀD"?]pd}ҝmK4|}*\O[8o.C(ҩ/QR$d=053e 6zc2 )9 ϖ@Mfl ncJALĝMxnkh@1JRS,V+RsPq ړ^V*B? T7N>>vŚm4P4^8>h)a{W$&c0ADq^ʼi;e\o (q&R  HQd4p#Z=-mS.CbpQJ=nπƒջ_cg4=RuGcQPQ6d;*.~z016HYu-ŨǖJ|}&y G먲y}J:7{#$LXON+9B.Zh91+쏶l#+B~kdȶv)~Gѕ.З]T[ɜ۫[9 ,@9I)'%R,K@0,svkjxzBӵzw*lFqg|MP9 OOMWcQjecNZr%θݣ.*o2D]V';)` '5j[e{[7 8oV buAVimUpW=jd'Om_{PhLc?7czs}g 4mPa?q ӣ:fm7E-h4W{8d1^%&9{2ǓIH'Օ$),Z"p6Kn 6W8Q'{]\hM.Fn>j^>f^t%}ȽP ^6բ z )`Sx:!Zrlj%V*رcVG]!;8rx_U>;WԣC!|Q@" 뚨L0鍄vkm6]gHo7ű/$di0 xl-߼#˺Q~ۊ}4-.t9ƖH7.+ʜx~!*nz :(T!!OsS,nKFEPx`Ȱ,Xf@.k_GPG1 Tu%lz::mDMA_eȡl׿ Mo?Swj$D%r1g^z i؇A JKd/(/h-Yj|ND=vr4@ҍrrR2fnwXqh',m=-spq~9}j1{+=N~jSX$:޵Q:%ȏ՜73$ kc'Ư3[19r8Z[Gl@9\yuiv%]jfe$'>+ewSC"UG K2O ޵vxzU /|]{ꪖ.PMRvm-h6ۡ_6.euB03-Q*-\9)sh?X̮6/d nñk1$uW#lJt%aփRzi2YdntjYXV߂`IY&ZdW6v]*}N)*Iٯ\NAU12- /d?L83%DdyT/= aGQoMie$ir~G!HpKk;DBS)H/kz^/B'* K>t n@|)(5 ,v3t |p YftX-0eOv)a> j9N fփ*BRN T/Df߁fx0\K""u2& :ĉk/r x }Xf mbJ袁3S]i'@B#)-93\9W`f̬yIN3*} VVSt;^1s\'#AppkF)Q$io'KHVbLj˫9DӰ\ SFo6Q6,u\#OIe= :%)tGdT2߶G}ؑDtOfz+#BH04-TMq7^X2hwcR ku}LR:w|؊tt=~Er@yRɻ}6EIHQ+ F ~:{TyJsh}ՂeJJ=y岎0N4)p%wD,ta'/-WyU1BB'MtruA9o;0)*E" gɑAb}zt?=3T`Mg0Cj[@Rj#o~WYYyׯ<$N"wO|QR]TT+Q ,,+4p}>]@Г1MM큛/f&,V{ ļջtgo5$,w0۩ =wG sW:gG+.Iu@)E石 :񋝅yمްw9Xܔz(lz%w~o`cǭ{]|KQn8AM͕r˚DhįO2%zl6a\WQiô;4 _VnWꂅɻBZsБlPXH yG;Pe!Jy@`R Zy]`itκ 9j$[Z~ eZMucs> i80SDLEc;`ʁCG\ոtBT)5k VgO0e8ϧK]FN»& (>*`(12o:s RK]a880~OZ-GS$FoC%6, IBlSzIzԩ58Ƥ\6сEt%-jԸU8 piR6')+]ornE3mqˉfjuV]kkPm*- VAwl g._/!VHHX$Z{+Cftz2'`. O^0G yVu"k/Laת 8ͭ5\$0V~ʧC%g4[n)Uw{rQ`*AS?-2\)ɾOwe {:JT% 3cٕ2P0 Dk~ҒVo/8waTyS崛 N X?%[|^ȸ:nq W|p4_^s€![h7e+ eqMbd3jEHv/=z1+|pH/Ƨ #g+5XC"ˤޅ!!c S13 &|.k_<*{GM4Q?Xar]Keub!OS91ά4gO;㋍%A{saj:~<' ~7HsTLXLd1SM\/$WDO n CpBQxͯMԂא3❦{60ᱴ.td'qGE7kzZ c$H7 e•]$cY6ܟkkI/%8*$),k$^T: ^qc2õ;:y&;?J9_pP>"Xq.2s:"Db+J?1?yϟU(TL{_pƺ0*r4dFc)1.:k1zjkLu<BE"mEK30In1=nl:>~L eXZaNt@ܙ4_ #a嵋!odT&0mu( Gю  :l=yruҦrh#= oG 1W6O np )Fd@F$k?ǹ7!!FP'ngGkc}\|QF"h,xDjt4 T5N5vL>mڼ{A2:!e4ao4Rľ (V*Aw ae9Ζw.wBR^a\VU84nfv&&4,_aJxk@6Ir*tA;sL=K:̺-ׅaI%"u-k̐SR'2Dz} R.7FjSv0r@B_sB:>>1I9.v2АVVBȼx@r wݫXvuGL޹vS3뒟un^KR, _e"&i ZL(b-t-a?G3( 6OHTKg!0ݸ=fzrA0ЊMe4?2C^T47@tes Q $/0:/a'F+4q{Ÿ&lɇaޠ*s-2 N\¬vrK+BX6,Vƭ 4 O=Y/"ݽ;9 G2'tfſs&6,MS:pnSLoҔ 3uHHʗMӛG lxG%[;j)`pt:ۖSA@Jnyk>īu\T"wx"a&kl"hֲղ+ " <ͧ0́ձ 3W?f=`yEaJ%4 G`e#a2mE?]{_Sau Lۖ>2X B)N#J#fL)ȴ-[s?ê}s e¾Rb@0=lO>BC3Y-蹖W0Ar}6䯓 Z Y5`ȢYZ++,lnbeM!M,wL|-]X6P|rűJq"w*@fH5t jf E[m-◉X~ZgKVU~}нKK^'3]/ZC~tcFh3ϳVV]J>r[+MC) CSdBUAޕ"s߲ÔVN&V\oM#Wtvт5.>E2vVt'Q}#Rl9ru Cy{c65g\{D=_~# n+лrTy6^ v_U.\5gPYS\B 8SDK9Uzt&ﭲnwʑ[hف AxዕW9]}H%+`xqN>oUlhJ~{"QRO ٗxȺl[J?5Ta!(w~oD(pq\-2co/ @FVek")lr y%!0D/? >=W*RJ|QP/KXĊP9\B]=3Vg2iJRuy*6ﯗCv 0xTk{x$2M ;A`QC!HҪ=H[}UU^㹼mLړwEdd]4=lREMnӌx.YR}2Fe%mo $jCv)( ;g몵Bsr*qص;%p GY _:^4LqLl+STXY%28]p#%~wSb?U-dt;a;mXuc$ #&uu<r,Xbdo6EZ\uMH`Xɥ3~S7I[Woo\0 ͷet5l!BXND="#"&EZi24rmНyЕfpM VmtQ U_.ɚrq>~-$5O_Y[[.U-0ԛV>::eܠfҋgP4".g gA@jՅE& A>Ҽl[l?CR?_4s[7,C|u4@x|QntM5d\F%E 6^@*0_dB٧5aO›:V+{A#ӤE`UaoJ7}GO}~ ϼ226!F?*BFNp GEa^`d9=Iԛ+dڷQ1] H1qY7%5jj"[Z12q[{^#qͷC MLǐsLEGgaǃ2XX]ȠE%S}RvCՁb(_VC:ᩤ(vF:O/IZaYTK{*uTZtt?ޛρDr'r [`KӖa KRx&e*:;̮~錰E K n &,Ēn"Xwq`~EA1"$jof}>cAX!o*>#|\K.l<YAݴvߙWn$7$ߠu+NXOX"h)йoToȿp{΃)3un$cBXzS1Rolylsۏq܊7S߷ʳ9(]R෦{\/s>R;?xZOkr[HC ˷ÜQrXpÏdHB$PClA[=$?7z PR 5kpkMxbBDֶk\9Osi Y_pSeq F%j, '|z162F2JJ[:x"ILiRӈh߲#t%!=wWQ]m۲ݔKOug(/i^ tB|RڪIv+A~*> %ҌA PK$vaFIԕ9=fsCO;H jTr ؁Wȗr_-]I2IՃO&duLט̲jy'͉˞g9.jxQ%BlWWXI̮8Ũ+"@OzW2ލ p8\qzۏ٥$SQ^^.%6in]!D=T! v]eCSeh^o/ʆų6wq׵PKI!3f "}˂΢@fU²_Td^>;N55𖯏`6),YW*a4)|֞9yPah%p%19JBɓG7b>-\[v7V\/zּ<+[ j=+i0~Nq{9#`-M(#!%=׏?4Ux㞤U,4)T4of[QD)E n,H0,Q=eCJ=jZHwe(db̻rl=⌕/Q́q-:rj,4(2aь K'KAC;&A틅z@lI{o:[Ed Ώrz'FN%'D^+9U$!iDAͤ J/5b{LvuVХ=RfSܞ@z tN `5z7B'F;奊fϮ6bb&pLcLk@B0]/`Hf}/*D#`ׯ)& #4 !q,\i@'et~sD"`Q(b IG*2 (4%8k J=Z'Xj7 "lM>vc!j:^ݯ^ՔEPu R>,)[ix4⛒dl敞Eg`lBAyZK{ɸK/zҀV^T~B`a%5R`l&!dZ.<9K<$ M8Vn ]@&BމL%]кtH0VL@B=< zJb/Z̀GO\||-RUFs~`2rH? A3-3m BZ*2a -9n /T4Ct7GF2WA7CkU,P[h:iSoxaE,fK\<*^DB ۦsU3TBjx\5VTikB'U LDz\vqc`+X+E߅!??߆VK<on /c>P|9RG@kyn3pqNi5S1N~ DTS]dV}ġ,p~ß7Z(` CXUj~RaN @|!T4Zq?ۣ)ιrlU{׵J{ 8@?fqEu +; Cp俎 aC|O]aW?7ΓFלtQnPrRٵa#fJ»XФOԎ3[8jE7T2v//,\z!g]Xx#"RGVXuWCȱHaH=̄ۀ oזeCαrS[6SB8kk) q3X,py~zAF aa]ڟ}iq7q(❵ Ō2+l|x)zS h-F40y0oX-92i$wG9AQ8z?u]3́ƪ6vQݟiNq_ilz+C:(e i;4T}ܜ.1gks%I+4rܝMq,!UFaE^_(;ЮU ;iP X z>gmëR G5*GL0jv_0'C$bT8ե p &c5 K Nqw(1L02`ކDv 9`J_co&T&ZI~642눿yؖwbU Ag{S9;&Σʚ ˚bܭf& u:P |;GuQƗguJ3HE3t)!3;ᮆ$vÈهBd+S(AS`x'bH]b5:4Z9TMT<t=Ebitr,s Ű5{)!:w+#RG-tĖ[ԅqAݜ:ͩV|T}E:m^5(JmSRP 1RX2r̊ZfO.zJs2HczC9ͺnoܣl}";FUsβ~%Hn[k&e7Yny*icrx hJ5n0 -q)4}ߤκB[o4 vPvBcyST6uv!;APgo;âyC͂wjsu:Y꟡tqLOwGd5ʩ6}sBa^c I%G$}չLo^N΢r&t,cPRkAi/~x Vl/tسԺǬ/ $zx: XR\MN@ V.oTL;{vi4;QbkédSF'$5`pUY&[,mo*y+Q85ǓO-¯jr#')֓@I J+1<^`GM~'oWց{f (Sr̠?~G>6u!;:m Em_{S,u(Q?w04kZW\||LN5h^Y CW}n,ȶ[]`:5`l ߈0Ez4q4A/&FyTklV<7CZ63H$Do) LP0UReކʙntEWJy*JD=幫S^%86!OdRigvNp[z_Xk-Zk:j/[dj8G/w0l,Iz.N]RksmF{.RR?s+N_!Ux̶+Fd|E @_LNILvg(~ N?6|ҮV*;IRK?ܦXT3-SL~Y\6@PQRܾ{m颐FtG=KR$sqZ>x>\4Eu0<$ +Z|*3_n4amZNV"4.B(v*(Slm@2![1_PJy;)Pu 2ڛրL|n &fNQ譋7S"])z3Vpq8eˢv.3ZQWe⤬v0A1BW̻8!_w^#\oMR/;9bEgz&cCAi"6abڧ^Iql\N&~Lv,ڕ`4*u:5d]Ud)JJ(/T:-si4ڢf%[&q[P/$&șc#a{Ht."Çu8Y'kZxRPUP I/=&p6}ϸk(^}ԥlf~eM~~l]&ߞdQgF<˽F:۔eq1FKU.d{`>` حLkjFcBE*wjh.6}ԗMn5Yo\NRVh2TI)~?N5/[hg7mҟyܘ*: o&N):e;c?e)r~A}{ BZG^}ޛ)D諸ѼƝ H" OYɷԘ*ڻ|Y|q={Rr[36p31X'+LSCiQpf; otp- UvMKz#o8'2T ;QB tL =Bv2Z-ƺ'vdOedX.xeUs)'k ꯦe5L+mÜb{#\[s!_W-^;b_ԓD=X4gv̮oIX̤zML( $ᅱ>䲭uF{eEh" d5UZ`zg RW&M3jeEjidЭV88k(䌮>Hհu,.].WkϧG ub`g{GLhL|/,[ T{h#S:dFl\ɏ;P@-E:j%"jX`N5nSE~p6m-?.Kڡk 4 Σj t<:0 `17@/5Zӷv \ Yi7Q[ت![KdL32zzqj-ڄؼB|oSzfrӴ!UvVwIHvY{Guū&]"QIy\'ٿc`V#-+j'߫Crm zjv9װ,a`%fcPceVt# _pUSDkJwKfNºWߐjXl(Ko[.0}!S{ݘS˨Ѿ{8-_ԕ)ERJ޸θ=+/Ŷb\39)w-@}Q :d{Aʮ4}fى4GU sOCԉ=requg%+ x=Qwᴭ8>qtR#t V M6G8Ā!#pes jڪ@ loVYStԆ |uʤj5)0#̴*twU;1i7iQbI-mGNm*4&MʼRť¶x,iyOfކm!,'sh:[Qn fDuFx'%~FŇ>4KEoBqwXQ)Da*O?rZ }nna-6һGB4Vi 4y4G/Y8`kVhQ@OZ l70~ <á^^#KnSjY=L08dݗ(a_+c<+d}ЮYݣ̉|b\4 ș]*Mc82kĒV,ew z0 zt> 4Cܛa5//R8l?r|Dij˓&'W WTXݯPJS䙃ֺ[㩪tK2 ra#Z]aXi:%QK$J~*F2B;2-Ţ4Ǜt ZUӶ6Uθq:g!޵aAw!7wb@9p>ܼfi&Ö# dxy|beH jMEBXeVf;V /5YN [4qQkUL&hLj~UatI$!o/[ æFt/ $߆T71@t70e4\N;Xifv Df#L/k ְ 'Œs(Yt<:c? al&?$`=7svNx+Sن֦pTp&ˁɻAm v _Њu87a-UwD(c eO/-Ӧ?,U>8zք;aav~ܞkߪ9GVi׳5l(ݿjR+* 3E&^J~t\Tact{_VuIc0)r> ^)NxZKM|Ȕ& 7?CZ1$%_gG(d##հ sm[ FĵxQ1rILK*wt[ D< ?M)_4{3dh5#G41u7 AGV#jNCG=jQTv)j:HLO}ª6jUaxW$g"Fylf>w]{$GH$ _:TyU[# LYjrs)X &,'K5"Jzԡ~8lJE_ !](S^\4KXt_Ҍ$2aSHlC/>_87,&\TT0lV8os}X99v袅C\?"tn''ĵ ?@ΆD`;kj__ pfe7 eN֘eC Q;p+^\s/'K­Eq u"@E?^6("kwsϑ~ݏ+ rNZϜ OƖL(p}cm%Уpx` J)UYic>wB$sE\*ɡ4+S@:vy#EHօI?:¬3ImLQO[zbʋ12,&0mI E6iXAsgX"&(^D6~A܂7:ۍ-2IvIx }AvMJUQC<)>jK )Q/na:ndy[ziNʒE/*}d2o*+K.@|MXM@-Db72de( Y.W"F rBF;Dj.~HʓPmrR<1MҡwA[{a^_Ԕr7m,^Am5\H#fpJ*qK=q BHQtm'Ђ5m,5tYSN{aziM?}LdGZjg۰ F'6w){s|% [E 9/f%IAE<“js4&x10TYI0:F}R-#A35{4̍Ԡ11Xo+=FggYY.M>JMOhZ¯"-!ޯ%g_aAEul#@_b ]Jh'a.vDajhpxa*܋ :v"LNlx#E* geBЧ'\i%yls]E#.Ls5S d'. wG?uy Fp ݽo-`eB 1m4}bl}/>S&6ׄaǀPd8Hǭs)ωqdIg(X*jys!^Q`lѧ/M4{x'>zŏ!}FHIkcD0$IG8d^jUyj3k|i&1$I<ܸf1px^WRҍd=ӫs1%8%[i߼XJYk\â&Hxm.ѯs|>"h{c;ydj`|T򠈖 3O-  ?ڪ0([⮧ 1_d+Ɯ )aW+N=,Pn,ذ啜[٫K"T0%ԥR~J.]݄wOtd\B/{XOb,IYI[u[)f*կnB\<įY=8z0ϰ.DÁ F-:ōJ13 )1nG0,uE9e˃[?-H룿 0\[]HcOܲym\5m܇c)" S8=D|N"śF!<--+;eי78DoP2ȅsd饙;BL8J:YۮK.TP@ӑ F}3z0l|aF3U9h$p_ݞ^[͍]F+Ԡ&5NQC|NN~wo %#ez8*0jG+ N#jNZ?dUKl ea {uѬ5 e!  ۻqg:e'8 {-#VBpTЍ`E03QDŽzPD496u* 3(U۹b4&Gx\i֐ڌזHF.qr)l A$tv$ˡlVFˆhWf(԰Ԕ{4G KzmI{[u_W>nVNt"v1=yq)pc%F4-9!7ә^EsLW+r5/4LJDȡEejS ?Px#E["׌V9bU mQ1gf ewN+y79ࡳQu:vunՌDiTƋ8唤G]aG5'=}z\ugHo:h5`ĢWn݀TdXOrSskX8i# E_Xo͌i5jsJnP 8o?R/ ZrTB_! Tԛ21;m;La yڧYI{KߺAB]j"=v[J-@k2}ӈ]ؕ[)M&)B2%tÖ6t6lAW[~䅥\kt?#V' Oh̓ѻ BƯSuٹ@DPYMҨn9 tߤ_fo w̟[?^c༶''cpf5 ͹"ڌ}h|% r*a~d) +cXjD ZFk=IZ Jqv.H>؟{-g1X!|&7-iP?ZAOAUr0.9_vG^.('|pl+;Gl#;9.eKԚȻ|Cz/i"IS7" YaHsA֖@AXyؗ5&wל͡K6]wS50JZZ;Ĵ%şH߭Ǧs"ڙēJ0`Zw _YChQa簉>I^llFi~ky࢘khћ7 (cbRs?zdٕm^܈7ܠB8Đ;=S}BZ E-p l6}f10h3|o 9 ťrKoыf(, {) c!\jʠmAL]N}m562=ȣ6AAQBn2azeRkE(h/U(_Ϝ^k6EyPGWQͧHCAQU3hpc#fxLr^a_Q ?JkF*p7,\Q=A&Z82ӌ Ewtx_{{2*W_e;ZjaJE_F XKCF2MT 蠌 5ΥتִPhālof"zV!:Fݨ(d[؃NV[ZV׃iP-4ᘅcz8 N!7J%^q^9%{pei'AE-4JQ =QLjR\v)Qd- 7IBNےo0Ye]=>#.Njy ٪UrHD"tpPk.!#ްGe[h#rցL٢+Y_>W_OMr>O>P&d_Wt{X/e=I8:/^~PɡHv8wU3Y^ VZ4,Yl-iZܫ|󘈫͊O8ZxW]?8`ӤXfGCӤǮV@. zdHWJWdp=yι-q#*J_56&C%@c a-^kż&#rV萅[V6lr4Ce,%p(($$9X: .ErʹDDQRD򞍚n8zk3~qЉW?9{|inl .'Dw\HhyP֮Hi'"±KmY\LWNͭ1p7rRdY2WFݺ09-)9("MCFmX,(Kጜ6$;1Up *y>tD7<%r 5j t\ei][ Ծ H,oS_].*%! J#r h*P~6)MO(| .]A3O ÜBfk#щ^j=|Ŷ<щhC.;`.H+3b04j2L1m89`bv}CeFWҸ!~SZMr:PI"=>(|pʧf48ڢ8$Gy(S=2XAY%r @@S8e~Cy燑f˺+$dQ aƔ%I'(<Q25r+,?_4e<1J \ rۈYvJ 7v|?C(1gy-06(:esYެiVÍbDK~Tu$)wp`y$:-D}!Utp6˝?8PXK M!^H)BJكȂkAv%#FT`VZc;V/+Ecb^$?mş  bea; rTB dUDU$a QɣOQ$T(?9!&'|{1`oq4ڨ^n PL]I9-}ĉ=btŗ3Twd &;8piXʈܐHyMx^-BfSal.]YvQwH0U)TAŌGfNR@_W,\ -`e(K~<=f<%Hp ӻ$y9xҫք}9ĩIE380)_ uk;fv˱Z=bIYh0I+j!%o$؞{$/\g<pxuCiSmU16|`oAVVRvP9>ʷ7UIF /ǔ؝-Gةi6!Z֛ȑJ7gFN@ST\]5[*orK9r{_GQ!^j3vGBmvA&(ɿUlӬQ?#_ X %Ra_L%c(űU0 \I3p y?Km` Zzb@mQSV)+v? |;AToB`2?Je5 46vV_+xVu46Ω.CY=p7<mvK3YVn_ 903 Ht9{ilY?VְnB.Ƶ#i7|_b7g&2 yZc6oePYP(YUp6Q8N Jz璓''MM&b|Jq9V}D ̑PP7;TƦSjO@![!H5Da,CkΙ8ftS6-,:됝kRcjYS {P5FdsP؅zy .@qȪڇ8te$2/|O5Ӄ;V\/WO4c!0&NjĶvУt$aBN8i]9;\r9>ʀG' ak3&dظabNڤ5LMވ˙6Ūkҡq|? @3 FR2"NEC=a "й~2R)nZAu(E BG{?.y1(U-H7!5 ʖ-hVw;Ob8 bYN4c+WTRQ tG%sKW$yVKExP;97-.LZ>wM0>A7C{ $[kw2 elZ)f )שˠr>P-ŋG֫ v6{H:$:qGNꗹ;"p8B5#IEL =8'$XhE3Ƣ#Lʜl?c?}28dVHL==f6? ޳j w.K3Y?uUL|]~ *SmBxvc_9T{usufq݉ߗpr%@@'vYMGӡ%?wPUIY&:7W ,5P}cCHH,XYνw;Oke40W%S&n'_}LTQ}/R¬~Li t[Zk=`2IR3sA1j M}]-VvJCX RyRemjCt[8ĊQ奔K]K?5"AGaՈI[찶7IV i54 AW?0Q̳B3{+x ƲZǷEMKR\UƵt!(). P0]G'q/%\-ƽ>! twdn+3nԠcƲYg^'э-K1h̿.Pq˿^ncU2f&j,i<(kܾ.}n\hF链-V)r~u#110"Wnz,R',FJe&"XT D^F^ՠ(|֊;{oVҙcRNI$ܛ)0%U~`ƾd1_W[сk0*&uB 8삿ŽWzB?Y2Bn=upĤB3&/=Eñx aZ>!ކ ҷ2g0=;3Yf(6 [ai#-|/7? Mn-Mcmt4S \@L+L> m|kzthQShݜP/>9Jor]]SH5BA4奣y!F&L&;ϔehax0,u_Pথ9l˅ce^Y]n6ą_Q>fU_RI7Bո}VAe˭N,#EX}߃8] Kp5LwzBIÁTY@F3'/(Մ3'5&} VikootVO81o:h:h$# Bc2Vh*r8?Ou#w!Re9y=|1|a:V7@9vV`:8v5OV6_ã Mw?RO-MH[,= ܵJph -SXSѥvbyV'o[d -p)VOyT/n8r(%:93L!I/6Z9@CSjpި,oeg4t/jk|,P%6SIõ=>́}"[~({I3D$G@ KN;Rpjt|5.仯.IX'㯍 [E 8DHƝ1W~U[w y9 3J,LFwbZh6Z,h܆ .4roFߵjQzݏw {]KR~ƅUe; -Xɷ|pk4p姛,7 Yd "8SX>ȦGҶ4ŝf "hD˴'w`l[{ehaZ %ɜ(tj;yi)d_3ק]v9-LKLxoFIY-0>bՈieMA#U)D3]sW 8en¹jMɁ$qK(^ |M,@H{3,=ܸpPg f-[x05á|P-jcE Ppâ1k %]f5a g!`{0 ,9Ǖ?9i"cH27 ozExD;c0Bng?"Qvtfh 1׆\Ԡd- x2; jkk&PAl ^O'H׬Q6fWU+Q3A.WV ](|5oX}{j,p__JW"v@xե+xwEIfL5[)XhQDT{ifzԊ HI/nq!@MOWx\OE<?{85PG* GB"J,q1ft]coE:!(h`ԟ +)%!j8IeWvZoST pE,JVR jns=G4:{$ͲNH0wL5@r=b?$_! x LDĊ;0\gl` J|⍐8#ea׆¨/Bx7FƱpo/peI֮A"rJI-fG+t~#U: eŴIlF E?jv8ui' Y Ųgxu Ji; I]q(Qn wEd4_."6o:*fA66J MV[Ri+ػ4O,ݽK'*, i~RM%tq8]gqBHi%O"9aj e`rS+= U]? џ,qk]bQҠR*Q& ^i]X:F7-NHiқLnN R[V<@OYTET z گ &tB uG0:oMZ7C <nDzm>eOOuYt\w (^>b8e.4;>s$vf| /; [v(=MeHOk<*P\Ц_+ qZp;#ZkJiwI* c&Ps9;fvCPUdeFXr8Y4@YNй&%XQ_ .Mto}Mk3|m B>rs$Iɞd;DO:/}*y#1 (޲=̤  'i8t|Jj9\.Z v̋u&ӹy4XٟXEUaM(Ƿs|1ܾR RvMҐ{ˏu8xLh54r5؅AE*G<(Zh~Q2<.5L||^KAqd69fǼQoMe*[ @a\1 58ܳX)F CbR[3kI8ku}8|kjO&zSD.52o\Y,[ =|C2#5ȹ]5xɊМ ccܞ0T6H u7m^K3\hvߨ[L8J o8M6Sa{ w {\#jsy5"s# ̪+||mE8 i5Vi"=8 F86˹.ݱ+µ \T~:hb+)j:ۚ;ʪ4'G? zlx+IC{= +Q# aP;ٖ W#s sa 1/r9ͦ-DiXe3 Kg4SZ f#5Bٵ9ZD9zZ} a.BJaKV%}rkhߜ<:߇˯D:W]Il(K.0}"*3 :Q!ɝY  lಣ}b.SxOhע>0Hq|?{f'H˘olë;g],l`,po"OJAr´ *|Jэk߬ę/y8߀O,,~H*Kp1lG`1>)"O'hAN h|r<5z͒6m)t˸ޔ&x3,ʞcI ق)O,ʴ (IMȕ 9NK 8x *qPWےHApAbH3W Zk갍 eKS=a\b?")e*wg@]!^RD4uT‘f28j2^f?]P$2`ԡ [O?@j/K˝o>iԟj {5eAu -Bz(ZnYyַ.@L%F#૸ip,!{ddAP$VI)(G3{ 0vރ6gT̎ T2oTls'b"$Q4|zǬNݧbm5aZl&%'Q#Y_Pb88[p G6 䧪0zXO,fS83 m47KZ/].B9 ʰ᮶Ψӈzu¥d]V A'8{ 9w)!-"+FA\;Ay^>wb` c@ v5YnW~`{|ڽ?;8hn>*\ ALʪP7{c( N%J.xE]X r}t'( ,m k!?D4nFY3~Axt V2?L,E+b"BzDzIbE椸 ޘwY,{_X)3$-,_ eY !y@Lhcy:d%#c{.sjM ^'i)sdY̜,h"9:Rf@=<;P:`Abt-n9Mn 5䥒76=dh)![yPpnrd^ {}J‰[&iյ-,܍0&ҡ~UxO%iҖZ )騦fsO Td;=a6!@+I3<{(*ꃿx5ʰ$!(Pԫ|ťvSՄS-p DQ~F^kTd+Kr9[F@i)6,"&nM\Y /yT ?9nD!Tٞ*g2"$d*#9O&zw!ֵ-[)!gy2/6` N?}"G$T??skC$p֟>cȞE(o ]m2#ۿ1".oTNymRʪ~ 8ˆZ3xE61OsyÂt(H%UW|o<Ya|t"Z1?AS yv5ڑ̟^jfh_zn@x] DfBnMW<_;Sd7)3΄LvFqkfg w;j2%& -?vMWVY`7RY\9Rk q)gW `b\& R`zєOHNM j{qzr~+*{AdO4//ZZ~&A5|㘷VGgB=d]oS?kVk[:^&W 0M9/!ivC8NӃU7 B{~_q_$J`{'ql3rA0:0.lgHTacGt))lG<0Cݩ)FaS-1\BV}0:aĵ{|t~F;"{ة #9yFi `: ܓԱGBJ4[Ъ\[3*yY+`j+ձ}lbX}Gi4 `dt|6E&t!WͽCƂ}f͸.e3+)6ҖOcC#}Fg.ٵ3]5'p ,x YܗWwLPEwnoP<pOPܽ'.>b2ʸB΢9`֊rkt{_=(ȾT_X@Evw;I=~3vR (agtWO+ʇ/LY(VZO&/;oYk8:a iSs^KA&"ɹgTݟTe1-7uǵ n&;׶ii{O66'- EwHկYW8|Ap'Μۥ#ng5x{%&mRhR }>N+6rWo| iLP*c̡/F(uH48ϩ1lgxRBZS*2V 8>.6 W@N\"z̰d+ve@t/3\"P:*SWp3|" c롓u+#RטQLX_/5J/#NW#7lu /ldͱz\RgIxRY^j*2v,'cK& Sݑ؛:66`q,d+!xb2y+ZS$>Xn2u0:PG5~Mu5ɪN=; !$DvCWЭ:40b87l߷5>*($u}sؼxy:pFpDs͢l:Uªg*kB)K"L7YtnQ8ދeq;MBQi&͇p-,=qYB}-Qݍ(I6[%uME ;b+RIxq'xˇ~SӲ__7>Q|97zX)e+?'Ő2 DvP i@00%@&pL:[]čC}73 1Eʙj l:ЎFS:3;ƫ;LyWBc"<^i8!f L:kv{s%}6.¡9}*[Dfï_GNP͖_G ZHx1̕{OKnȡx- ^oNIt>AtU+{ ~њ=%pz O̐5 1?h0.$8؉1MOANl!舫迱se 24!.+'`];Έa2T~5*WC= nY )=*ЄE򰠚G hfyc&:l>*j7uㅀ]ҩb}<-yԐ"%^iާwطY v7ŹK?'k):+cOuN&Jte0]S,_Tk$h~ q6nmZ4|}rTTN?b|ZLqbރ"yLX$Y"}&G~wNUbfɕ:,Fak?.rkpUl)XiUUVCf%^#羣Na#KڷG:jdйn'e]c$RUqUsե~Gڄ|PoR5$sHΆ-4&ojdm4y(V`6"}Y?zKL;w󷫿B u[ڏvCF4r˝ ڰMeHA& |ҲKtzx>q-L Y$;-8 顯;G3*g"?3gk_Rp'G G;D`U]b)N@dAX >l_[bmIy0}~zېrퟠMĤdǪw0RejtSOZLGϤU ҹju,L7蜯O(݋vpѝ\B.etZ̭;]bSzlIkkbW|b'j^)|A?4 gjXpJ,^kUPsA:[PSGn(@\*®(FSQ;w|u ܖDf ݦwQ$dM[l@3B|-^yXO蠒Z{|" ϭ\+)#LN0D穐aiCeZ*^9s'wwbV u K>h<^*@v4Lre5K¯٭|-Bk혆|֍. y v8Qes),ѪTB+ƨ7g)*vH7 9tô/V (x'9ϏN74bt$wW+3Ė&, RF%֫A~~u`}C4 Y$hGm=V|{_zA|h $I咏QQJ[]|HQ+q"2A{,{O>Ea_m+VJ=|A֏ "wqEU}'3ڇۋtJ[`hh&q0Ƈ-FdąM3,}ytùܩ#1*w' BSDqbi!L5$v%Ś2C$:@Tlkh&~ĺ-spӶr`٫5 gQ%> =6N$L3pgWu6d\h`sƎȁ޶ruX~_~ ~(a^n!aڈΒ;^aèV4d$p}׬d A:U[0*;d(t2BKiūsVvx>%fHhEpPCa"._;j2=Wn"wl)\O?kC:~5>p2lGCuDD}M>,?(fVڡ?45ٺV)[[ҡ}2ide/OѰlq=qӅX{'ĺo*2d1N}ŏ@6'8f.՚/3Bt{FUYJIe;Н#3{E%]pM?ZM5;"(79ȅX+Pb)"%4/%eߔLO_Z A|zq,J.yÐ" (s6\b<{fdWAlNY'v̊'9PUOCo:B=| xR_oUXMT !r, lK,G0NB{~W"aK.fކ0yKr/ MD6*$jVT٦@)\kIK[XJ$B '\w=)a#y?'uB:QؑDOR@mK go=h$& -3K+{&!́S|k/|jd\ˑԣ ZT-V_)|Hm im}Lrĩ(d BmO]bq֌$f@i&4NG\&E{qzmDi1l]LsyO_np7poNp[`vz9s t_},Ut Uk"R߻]un)>kzA^Vµ..": <;=g1D~-W썇ALc7RpÛ`aIlVGTPzRlxu39ϗ5| /$+=5hs g!LZI`XqS)/ o ׹$7w686Υg_x(?뼊2ޭ@<5}Ӽ~{uA(Ğ?HuiĞ>rs@V)w58V_$Zi)!㎘i* }q"p==fOA&z42?5a=!h!oNBa3Gx *aE:zz⊋Vw.WΦ¯DC^JjK,AJAln@;bUj3,FhԁzX9FljW؇ ItBhoۢLuP6h+5{Wά٠'`r(*qqL6aea.Cqd#U ?~oRhQj( N.;hە R2?סD*uQ;~hC^i:t= 9Vd2_"Z?=m=auWy.;%}!$m 0f\([0*^3q;dfuׂ8T6nK Ae1@P>qn1v տFL#YhHnw;*ţMKeOx( u&8/W?M(IP8뾞IWu\j=L,~6ˉbC'x.'-4kKF-ս0Wϡ}THh -{+_s]((B7=tAfn_FeJ}3@AM Ȃ9Uڠaxr$;*r ؇wdthigI״It?P4<Аce->{- Ft赪ۨr40R1ݙt .ybyH mt*b9(sN1`]R*Kn*4|Y#\Ĥ|s`%)6 jjLJoDMv;NhQZϐC`9^ fd~<Fz&!k]KԶ/|Ԛ xt{lA7*suU1Jp 耤ʙyoz67pۑ-RMm ~;ޤ|qYlr[_U/db"um EDO96ն~DžŹQB֍(} 9K TAcZVqr$cQlرF+׶ kj j,5ND!$켙)}&ڢm&^ NmDίĺrSmtu^a,Ãvk^ "Ya6@)A4vEĺ)om\: TZ:pi=ÕTAɾ˩lZUmtf "4eO&;$`h{3$76.#MCfB$4SlwΎ|EZ*n {á*|^zܹ3ٽ yFj;ǥvxQ9Pfh8 W"n|~]iψ~'8PHaMR x Pع3XJ:KN3X @o5b6Qgהg`S;))HLYњezIBq.ъeD6/J5NgU˂Ln3گM7{P3ee43$kv<%A\ܤ 1N 4KLEC˙BA!D (@r8xzK@s|}11g6@IYIgyR  ~Fɀp^Ekab5*x=7l23f]U}Xlrxm$bw]=b :JΕX*G~ԢO5F"REU7(c2dr8+O0WͲ^Q΀ Cvy}< K1gO%U rYGvMJ0Ɵ&#e(厤iN&/hSZq5XWo/"9:G2^ Ṽʎ-BT/,GSMUzuJ)2ӆ'YQqFwSݞk"+[b`sQGXgEL p ] ~W|?Fo:|KfptBP1| ە]v,DUà96`C*y褨8ﯸkY'!d#1N}ǤB3~i(]Oj]gd̩Q;pn9;'aX .' fԹqh%$\`msrC*TfŞ%ߑZdE_jB< v r̐l&k@S*a;N.,oޒ}.AvbOSaT @ K`x.cZ%Gk/nXEVͪm:pP>u|'w zX6t[S,,}AWzJ0lyc$l)\vR߾25)]O`wvA-ϭҺ~?'@ ]}s'|=IP)>մ~n[2qD>/ RKn<g~^[U)l+iqFVd!E uS]Ȭ628< }AFɋ_BfmX̍nKbPx.z\'V <7H7C.ꐞU6Ļq٩#\,43^`ႜhY%qdaL [(Ժ&+v )*JK29G\W]E7QDC/Yύ1" y&vg$ibíaB0TgB.eM'[JJ0.@}U0 2D~ˇ:2@̓T9Hl3ہӰc2kɮ_;OrY.&{~V!OonrYG WheIey%O~30BTh$w 3\$: ӋM͊= G׮7j)Tk5/EV" ,S֭ "ev+ۂ}1fKZ7i1[x ՟k\}omr r# t5LLzxHuo{t6#7EC8q8H(R,v\9ۀ70GUȋx RO\Plԕ5s; 'Rjʋ9GVEB!#ҟ&F!А@rlVc'3})~JȃV{NAX)ǹiۧ"r(b炀J''\ >( sRZNxЪ#n⩘f@͐ /{Il>Co$ ݓ@MR#"Xs $+@h?Ffgf:~ ZGš"Wr:U-ݝN= nF4F5ʢœT':PR 7,\Rl^Ca<;^,zj6DdxTW٤5ٚp7'^}HL½ j0>[9gj  3;%82Z ry7 ,x$xz3ل%YM!)<:>%_zyMFϱ (%_|ؤt:d񥛞&Z+&OIϥvS4,eFp^H+nKxB=A;"` E|t48ʫNnjA|-F`O(Ak1>m \jݦTJHmkC>{G`~bs%5tKUL>$a֤4*zJ\mePlڪ`p?5 Ek(˵<" KΞ7fhjbSn?i266U ߩxSy>(j\{37ݲBoؼ5]Q ? 7(^~jD;>g?A٣ہ>(ɐV<eTЧجgob{N._Dh/w*^ HLnR/._ O,6wnKky@] +p.L_}G-kȊmp)CYLt =rPzֱ]&'PTG\˜W'/[ŐII޷C)F[sk2,H#&wUrWN/.,>4Xr闔Ք~O׮N[z{67n/^͂K7,G9JjFc]wjܑ̽iFy֬#)MqX N^;;M-~vڥ3uybH@#.^B{(rsjyJb {%eaMM Irz7aIP6']&+lE#r]nOQ<媮BY6H|pad~Taڕ޺? \sCaY(3afIXߛ U (o Ϊ`*~W" ]Qza_+9 tfG俓Oݒ50 Ɛ*~o>3'J)~=.ǩ.7cxZX,1ԎJ+/qwvR;A.8X-947X',r%-O\l)}\!=5J||Pg:ҩT6vo34RpehbPͺs|X > ۞o=ФWA}nI4W[S3NC dNJ褯 \eN EXoßY Y4Z'u4fs[$@ {2~q6`^QHW n>eZ~ٓa}UI1 :7-P'b8+_q |Un^$E -_ʹ_~3Pٰ¶< *6wZ";>Kz'ɋ:6LJ$79I.r,1XZW>3{|]f'trUvGMH#hM_@_)ϕL >tVc\Sh@1҉`vFnj-8,M[Zהfm_)`?sh1 jA,m0}7{^6yZcJI?#?$2*ktzI]9dmb$~h*? Ia<`~r(#0 rϋwqMeLpC5@#e堀Nk ջVYQ9-0Sz#)С\4A|vFZ]{C҂]OZO~R󫞛Rb/7I_.ivP'3qd⇉33wLOy.s Hw%^n/6s[b W-3ZG=K BDWc2ՀE"s'< e$WxU1Ճ[YA;xcrYJuCd4WuD+J8#+ּj_#09Z{aJ͏B<]1!; JüBc*6՞(?=sI7$D8scxYqKՃp Ʌ!Ӹ[7^(gSB_\Ml+좈?guHq;>>태:Hxd/wKi`"xVOYsCHD:HM+yvyzFpo Yo]XCdeJcHdAT 5G O>,W SPhٮi{2kټZz),ɫ+{8d!!dJ ѺКѯ 4s*L !,nF?3=bY^PaNc--ag60_j+T`$*G +p$Xz>^ЗR-qFL#3'%>A].Z:kj(Sr~,Tf5<8{*㭞zo|?5v%>=R7VI"-%gHEyfjb`dݦ& \_MKmqe~Iڨ%_sRE]ŽaOH%>$R 3.q l>t?<41 9~j|mc&Orɶ&^)o'q>( J&yp!KM!Bpč%OlI]`<_F͎>p40_a2RX&}?k|?)}t쩇8T/:N)188Cn$[06rW?(g\4PHLec9VV J@+pa_Mڌ|sfW&.8~`NllIf-}5 $!iQwsҰSKx d`OG3_%{]ĸ\5ehKV4~Ro ,d1twh;Ek0ǫsPdYaxS}ՐȾj6T1AD9㟤p*.!ݙ*vn2yhV剮U&({%Dԋ$wk`(Y qґ+ eLTMF Eu(9l^)ɃFJM!I.{u oPdx? Nv!\/Est!:ݪTN>p Uws;|b3fUV!XfYK5nWGRQ\Nx[OcGT]7^Nc'G1bbQhq34AMWt %Z cR13~Z47GwIH:Di6ae m >dBP-KU;? !@. <Π堋x+lz&]6|7q&,N뺁a_@2 iT|N_O&*# yRNX1X$.`.Xu ]}u)[l`DF.*IK܀VA];"c2 !?L[rzrѵc5E1 IZft+RxLtgE\q$PQ-U2rǪ ,:A+M2>H $qXZs~=]>pAVLv>Lk5487 ZصIy7*OYVK3s3H.u3f 5?mD}tkyI!^RJeU0l*D!ex?,'e*Ğ4K81p QIs)TyBxQ6u ~uUYz mV׵_/7A $Nn^xb5`m&38eUmꊀm 13ݾ'I[ζU&)mvƬn(po=޽HQlGB)NQt<57 ҶޞQ6N9[n S}N ̣U\ <9nG,Gy3 W ~FX6;A'JkJj- dD@A ;/A|/_RSRcKh W*F;/|nׄ_U= Rmj|[m =\gCU*"ixpՍ;3k+zw;~\3r.|jjG W&6 $K%6|W0zk̑#pfыn6Ĩ)ʝ!%#4s}G29=+d5hFY.X//O8Q%H&#/=z$ZIFkpٳC'W&}c_ӍHz71Viz(l5Z SK 5;?07pb`pt!?ǚ{j;:x#3mA{sp-R1_%Ys%Lm"22}3v?Q`u}M,<-$F6adEl ~Aiw8\>֗}u" O&=0 peDҺەp^^X3YX~voyBІHN]eMou,9s5k>mY@:N 9z_"3)QϽx/4T#dܗݶo0J@f ;|BΦ$_v@T&Gy24tT[Rʟ_<pwdGRlA^,QT j KhYXMڃ #q|wJۘ<C(NZ̧qΉҌzc];3K0P ^Ƿύ#TO\ƖQe (X*.ҝ#_*,޾f]&au{FA]}E>p'úN.ۭF_:R]F*95`((Y.%M;!\[f8BGk-v8{N0*͔ Mku)g)qLFjVQ$ 90B#kJ6I*"[a1Zv ~2'tW|<_92e2`.!=+>pe+8DQ"ĵ#_x)M {V'CXpuNqdz݉}/C#oeJB""R׶夗v˜U{aY*WNS&/ |d[J3@y#o:VWxU0mqtr2WLG+G ae EV^' `&ƔWع%X`u&W=3l-9өV7-k̛/$iD>g/e㩁p ۦ\ૉ`q=鶞kujg5ւpGduP\vIPjbZ^'#ia')*),uv{Y,P@N.]'7"u5rn.Q d"?BXfu̵K/ &.X^8f3ͨP-QuwZ Q2"^.l?[M/SÉ]#(?n.> مr$,Qgau)'R&EtVaռ3o1_˝w73&|as-haĩѶHw9Q va^ΩaQ>6"z"[B#XДg0eoGM@X<vDqۣV&B#5&C3ADDZng<4+s*|<y#EΈ9V v}1Z¿Ǣ:tUO^ 5F??wLG*Aб[kǏTd񷶠9(fGo]EI¢1`2v Q;K<5+sq},lIcՄNzYQ>̩;:"=-/4|r.;f[5hEoR>n0c7?_1QF~$>sQwe.DZWzfV0|Vp?6[ZYGsy?`y \않H1? +Czh7Y4_l/:^N2dS (w r0$ҏ/&dx^ CuWdkwL1{rC ! 5<;Nh!:B%8 i9Ct ) jG("x\d=0x3$S b#V"v!zasUV%([TZ<x%s7xl+SǯF'h |*+&CJ29{zz:R}έ +74Vܿ_j2rB8z`Z俘uV\dp1?8[j.cM4Y8,RDZxN>^ZVh[aē3@1 26BHDi 51 )UFѡeNH)Y{'̫=Ƹ\I0ZFAD1ܛV~ǨohBа"j,1T*g |Y8옾/ĖK@ I =K_l;1cJ-.0ST'.gm1Co [裄`.HIǶV狍\[Q0/˝:T»,< #z6X=.^hW^PSgw]o`<_Lj`ч^j);"UMq tJ ww9&@Mo d֚o^?v5OH0%Bg@8 K6 ;PS/"T4tZZϤncLK11k.vOhƽ= {frMֲM`ySo1âQykQrL*Z_t{N\jC,-S_,b}\m v3TD&1qպAQ+%Ja1W5t\~/mn<tDx41L^r|q_ŘdKWpl>ni <=ÿ-Ti4~ 3@f55 U& |R Lя&1xxq^ ֜96" ѷ)+("TQ )/٪tx-\~?[ϰ(uR/MJ2I0yi*jQA[G;ȃ9pYtfꚶCݢA(;!1eSmrþje$[^m%|.n8f1EMhK q^Dp |"3͛TWe,Y=dCkS>Հ٠g]B]pCkp I陫thRo> =f6飻uuت&J"g /U]ư6*FƬ`f4& 8MfΟ kOg nsuvEGw8TvUwP0=VvcOc]DCz5&.nsi JhA>OL=]W) Q{D&"od)?H33p:ܜl u~2՜įȸ:vpɤ-.;] NZjZTnfiIC=,ZP y DbXش_hRd7TAG y  y(]ϧ9N_AAҕBTT{ 刼H05[*QpJޖ7d*Vm@Ykge B}@R+&|=2%V\`pС9t*( X6SH:'#1LJ`C+oq4JcskGcyrhR?RCcbAmTA~9B2}r:{iEZ5Ҹ_} Q|\ЋvMcbYnI hlT ! x6/]!_J"{ %}C Kg& Ӭ7\" ` ?gHЩVc EFDeJʴ4B])ֳ8Cɟ$2&BqNqCf㜻(.UKpGm{[%;F."G@zn55fJ#<@-$=f%*7▏yd]~M|2ˇ"Ե&b‘@g⚢&FCw.PgCE_xXLf9!giU& e[ePL+6x2DeQ&"{Dv33LvYd ‹lw1U][`͙I @vJL'$Kg}5*RWͻ9\GƵ:(xuuz2o{H*1YzyuB o-A%AVr85 ?"ݿCqCdC)YҒ W,F$Fte維p3JaɊfSoyǁ %* S\MNn&k G < OJO\טۚ&Uӥ/)QF9l@8gΪ?1: nh+v$@-Zj sl' v1-|P3ބ|Rl90j{ӢȆME;&1x W>l`ApBtV'E$ 9KcRSAhÚҿiqCr%8H.Ũ!""7%(=TBzS?Qʥ!͋h G&a]T8.bX5[ ~%GAFVwYZfcX^*zc?UB:REVy#5!TM☼ ϿYiXo Z5ifͷ/B+{P$JguA%e>Óc[iYN}+TL 95G֕fy2卦׳-y`Z{EyB':CInjw]Jw~D>smF2kIB=mNB[-bb!@_NQAsV0cs=9E?&*ϥC}+o/PڢkzXC?twߍz㼡W녹.B9ht=|"qfk܌:y#ZZ] RpRq+1iBΚ9-¤@͸kevl![Hh2{hrc^uy S疮vS@6A(gc;ح2vG͈O_.-|2-} Xuee9,rYʉבz턃Xq|R2r 7Sܤw:Nt5r&B֮۠1Gib?hnȳcSq6ƺMu m]нmUfc#%_vWr}Ǔ"j @儦 Q s?E4&?:"t+BS0ΟWED#+mQwE^Iy dT<a:?Rʛ%v:UW3/AN%/jzL4OqaI@짫 @cRRAeTof%TTZ~r-x۠tpH78ӲC]b CRhǗHɁÑ6&xh '|^|GMW\ '!pHq2P5uTGDJlTiuo#@쬬iCMh f}b|ʖݍ,5(YmNEa Eu>')ϯ0IܐwtM=ᐉ;? W0 gQgطyͩ<Ǟ?@Fډ 往*mK;gC#OMn_9Ζh72hٴ3f8hZz: "1O.>!klٲ߅c(셼 0G &{,X`6O:QhZDɷBo B:$F  Kz.ŨdVYmt+ӆD4ނĄyffՑI;.x@U2,mzL8kӺ%[Zہ $]UyӲ[5uUt~ڴN$dOstbXI!!cf2Qz7nuh jz23_R@@8(<{T$=Ӕ bN6-w(5 aaڀͻ6UL򘢲GcLF}B$/Jq E.c⁚\t1-: 2UJkϵ8Lpj_#5PUJ|lK@&"mlP[.֖+~$OZ"{Y45 c@9,޶Ȓ&`o/y6?Jh+l]OݛYk B,K1jp%G1T,Xͬ09j.δ H=j|B$G\6aJSPڟFǂP^vqZ> YE]PqɾVha~dIUʎS50%T= 6* IRO''8|q:kf#n15@@jq74J>NNi6Z8lkRtdСhn2У>NY9xwކS m_hxe0/yﳡ8I f@\%NуoYNw%UT9r MZH;utw[ Bh": }/I١]X{qQ7UIVxl氛ɷA<i]VKpy((1^! W|"{rvaCɑHr:2Sل=YV8T[o%O ʠ N5h6<(?vAaPQTG>mNeZ|h >ܨYܐќFb[Ern6[?𝏊R-u$|Hda J~ !ʚ!>upH4h ix04z͆ܜ66Y( tY?O_B=!7d.of)wnkZǏCG\_ ҆5Eb !dvTWSLa#8[K(5TA{O(l%a (*(v~4gTCmu=@)%5[ݸnJYg1 1[Qh1l۠w򻤩JZ93p XI1e%Pd ViEqM붨uCB؂gXϠ$@Ua?_O}&d2*A^X,Qld'/9?61]j)e{N/3W17)B0|>'Rڶ}haPHO}U-2C;3 *Gski/ؐM_N$6zNA [¾ W*_X[1vt٠߅_Z@$4ޢp+ļPfPz>3'յAdY"n4Nu5$rjY_kKbL8DžJEahgHQ0dqIzㅭlR'cMh$/켾m >v@[G\լ1J,ًMɟi?uX[Cke=MF; &wvlWe!X{8~jJ4DŽ1VQ9h;/@Ƨ~=[g?^29ݶ.T|ўo"`rgk"@@<1oڍήRIQGw}h2'!f3uYHB Lun{H3d]FPA% Ay^{c^x߶o9 &I># n6|6#lߕ%"l٨\Sz)_c>1QBXntQ+AՋ1H#8i:Lz1*h. ˽ 6JqM` 3Lkǀk]%R$zcZlx jV7'lI {Ψi&]d ! X;'\/KZ8ܥ:QbL#O3,&zqj(׍y%C_uzZdc)zm3x NsQh#}}<>1O9ϥ&,Ug)X1.UJd`~lY$'Y(/#-3J~,WDRF'۳^AN:ZJ"oTB sɧe !Uy+<6\+'sL`mD._hSHhA`èxJeEݸ@%6@=,r0ۓ?ufsXǯ;\~G~.uA`b#_* q9c>bQBTD>碲N4_4j4Jq.*6WVVx?:.R-6=B3s lynNsl܍ z̏1 9j=r,z*fɲE׭+Ŧhw5EMG{pMK[x| km;qX"I=FcFP- p֖/;eAᘑio e0Ew|ϒ^rU*\`x?ҿΟ;}]H+zQEEZ.(Q=|dg0R@nͪ] | Z X}A$@5 sپ2:$r5d~Xi`'t$Ou .bt&FarިN1֫Zz{~ӅoU]:ْ> S]&&*?!:co@P3,88Vebx O닸o8WŝֽooJq|xmE[2("CC wJ/Y W2|(yygy[OYv?8!`oAyp |Dؾ0&te5L) 5tLLbZ8Pf 3Xd#1ٺ<(@K] 02PČ^Ms}_4>Bw: di 2y^xy;%R4dj.P`iCc fueHnwgfɌ5{5"rKJL8Q70u1g/tZ`b YKqxy钓"$88v0 ѹ u*p:J؁s|tu2spzH̼#$?3^|8\>Ш4E@Dn̠ (ֳ:r|)U;`ߔbxj6yz{W u$Dl\$~U6Um؉fI ]5 ~rpS@iGWTGஈt;e#MdtshFN} 򋅟u2גoLR"hAη8 oC$E}sxiY~zo< [s}RwJ0l,葞(V.Z Ӂ:rԥR 'S~%:(`[Wr+G戲]*cZhrY!(װb?b_g"V-1jʫazWnVk^7ٺ-7w"unbtkصv%-{"Os0݂X5 E.Ps$7&3zYpoגU?q+!Urq‰#O3_D6E'[,DR)tŤ9a) \Y_zȰ|*de*p+s3/:LF Fs,}zR*aKj )i~]oF?ȌAFx'Kre-Z6izawܲx%(bfvȚw oڙ%r}3.%^Fh_żmSjs|@8FJ\__\պnM7ѸgJIUxL/f˅cn"OIKC(Ɓ9z5}K;Kze7qLò@#1@d&TzWl*07;|Bt-5&+"dC%>mQʱu$ˡj~qz;Ͷעx\Y떲 FBw?gY6PʾM8*8Jn Mdϑ(/&1Ķƛ]M<ŃI9`swD a7PI;Wwn(ՔnqiJjF:6N$+(q2[L",F=[N`UeVb)?*#@܆/մH`Q>s|X7=vkѷ;!$̥vX,ma?o[ &* I[Ξq'Sf .-2KY2NB2 mjIAR;υ<@ADP4y.e `uG"|̶Qd`6 l>d)+@r͹hg b _U+ }&Zֈx$a*nD7B8J$wG fBXK|˂U Yr KXbš{.A2-ʅjY ^@c'O}Dk5_xE%`?aus.$߻@j#zw3]cՐmgu圯.( Ft/@LC~)w@HƎlz=4̹o'rzF;34ǡ b&Qq'{+%np4⠔EƐ~Ma'6Km(v h ӲDAYuZטgҒ}*YKxX9 }v+G./3MWJ% HƣkNC * z j=;|d7sG) RGZU^4'2rpOXBplH}7|ЙU 0(sFa kw;ب|ae2% ńtQ8Z9aO)=3Ë(2R?c ,`7_>x+4 %b._x0I#kitIX|f?G7TڥT6һpէevrNPc: ֭lrpQ[M 2 PZ;Q2 y@ϣ_gkGTmø.0H ɯ@ qf6$%=Tak2F,V6Rg^j25Vp̭)X7Zǯj-KMx}tSh-&%?48U` MW~Cm nfvd 6@yߗ2y>EZ@A1ǽn4.}<=+*y+#;ZgT3Z,2[Dԁ1;~u@&>K#IH6~Ke:!}BD&Rdsc^X'Ujy腸&".βt48Wk.VHo[J^G6XjQjgf:H>sLHWa8=dN,ȥ-]E jy8u^;mC⇄%>b#"%Dd(se^tAw Oȫ$ԗZR'~VSK&Nkmkӆ xͭjg]Q費d;׼Y:si=jAۿ7v;kc_K^[p5_䛿(RYVHRd~O$~Gҷ`/>D LɰoO 2x goPAjb3sJy[KaBeW3D a12fy끭T 1mtƯ!E:ݕ,O⠞ rYfT6?nBq4X,ᨓ҃3G=Fr_E&烇&$oP2r~WgSB"+^VˬjI?r# h`LX#6mgV(&Y2&vh+H811Als`[5 7o_tK>µBſ6ɨic\fh7=-RbcS cem9 P.糿taD bWGXgM$KG>UW/g^;ѓ?SzBe$r8<#`2v^YhFM-ssj r,]@()XkO/Zܳ@qTBM>_T([_|Tt3;*^,qu^vvI1߲p<_ԩ\fSHޥp$}j_~&g0ARýyU2敁ܛq挔rTj.PRtFT0~'%9(H|6K_sPwsܺ.^AAׂnڬoa[ 6Kf3N, $`bpym|:'\ *BW1φ< F Ƞ]&}IǓL-yʟΰ[MloG(%ix$ose+!"@J5|1!M? DmyduMd1'cݍByB5R~] ~:;+T8E on _oux銝:GƱăi& 86t$(-DimD׶2u\{Vdc#ux:^E(@:AYRJ-a0i{ӡi@l߲ M+dy":^zs&z JAcrko> iZ;tX$Ҝ Q& CMx@^>;![2W;W5ifOR\r3>,#py}DNܹl f^FvDx VVJ}OX(fÝ0C 2P %rI;Nú=1HeZZiqsW CQpGjS\Rl'E VH8]k*KHOZN]eCˑ)ì0@jy]=}No䌤~;-i8,A<3m(CF-dXqkP[O܏>(%qfuߙ 'U^$5B'5d*;>,[Q'Q=_x~b#kȖ[ eoFh[M 3Ac;n1,iDg4WƩ,<\;]`jəQƃ7ONsr$~a@j}Vf4Jo -B؁(lR axuMB.N134 8%M#~K[v弮@@MLzrkxj8B@ Qf7X+&4uIN(@ fɻC|,aAz"Ӣx~BNP!sͩ$K%1*.m_o`r 5_ˠ<-q)tҎR"ַ J4})k2r,C}QJqa}lv~:gH z Ow=OѭT)p'E1Hfz>1祄aT@ /Xe&rNcm^C g-_Ԃ``!u>&feC aLfgFC]=܀MP,f$fދt`$}CڦS ' nb̳Θ_PNIwăC ӷJS¥$NlwJ#ۺ\*MX ò MB].Ƴ%2H}/QS5&I͟e-!_Wav7u"f8EQ C=5nE';| +dEbbßGOqt%o#T:>GJb5ъ߷ZUg475A@^Zv1,KI|m۞GnN gy1+3=Q}q~]op`9&KkwZDH'J\_N,$ǻI6@qn|SRE-cPvðGrs$=6=B\/JC=E F=9z[ӷ6LYܒ `z+ARR9-v]WmH?F6'K?g "Q;j$4:[3?@z057Z*YC4 1OL^>R&-ʕ7ϩ)zZ,7r8N޲v㪉s c%uӷ6UZⅾ%ML[ ANΌ =XlUZvw`P8*l=QEڎ(U 8 %n,UCx@F2g9dM,S))0\>i,&|~N(yEjXe@T_dbTYڌ}!]=IKV!q# ׂm{eN/p3_ruɈX *zoИmDBWSPć4LʑK (->ָ`HC)a!nwPv3͇jMd\0@˼O vNb5?W7Nb}fSӻi,BS>ϗ k]#1 `Ͽ' ?EjZ3&*Ĥ{Tb >pРf~2ڲyd&"0AD7elQDÁl?,O KHQU&7{/+ 9r;HLέi^v}2RY&蠢훲_vbOXCi-^_/ ۽F}ȫa I*O*l1/Xpf("+LzL5bHY`q^TV7+Ӆ_7W6zkt5>œV%Qky[+-`%oƪê-z"@/E (uq.Y%u#_41tDOX<>E< fk$w RnPt_-F% ,sYau@_>ercEx.6/ON>'^lR| b|:̦sg7[w|yGs5*)5gFN̛2Uo*MHOU ?[~g (e\E7z{m;T).R:WdG:FI.\)t݆^P^YK$2#8vy`?8u0w5wn?~*P9$4V+w 6 x;6 4>jV${Ym v~pv7>ĭAwJa1Zv_ ǮXߤNm[hKc"^3)b:,nߐBC b#03y(4?ZB ~gf OA3%l.ØE|39zEQ kgaEq$e h)7Bwmz5HEŢ|; 'YYŕ缋w[Xn`节]&4mǽyl8UC5cG[Ȃt:ԍZCw&ɔCT.4\{ԕqZʴbAXOʙ$:lBj@>v*.CutNQOZ:Ơu&ozM$$_*%KEڭke%*c)I6O\ Y2Bv+:5]4\ש1yGU5ˆXܧF6(uڽΆ8:Hxauwc&q5Dfʇ(n{u3ԧ~Ò39aW OdQt0KP>^.R\K TidqvK`@Tŧvt CB:n R*?}½sF1dhAD4d/WV>j~G_ W.FF@vE8rڨiؑXńj!ckP rM;O&ͽ՟O@-NolpJ[lnK__Fd ڬ/Wԓ5:olImk_Fu^}_L!XU1tRh%ڬ7Ǿt{,JZ9SMY3wxe&kf0(zq_z,NIç&b>KXB)B*$;u^zK~Hz[VkLT f{-8 &4C+jGM,HŸzld& %NI^Y&Sz[ۥ\t:C Wpw}Lly*}( 9CE A%X"=tQz"B_X?6.,|4?#o8@{YgX rL-?e"1Ww4HkeJb]O^c9,lǺtDQU G+Ti+%lg!E#=3;0{Vv5)7# V@,QlۋCjyӕ2;{&e|"W%&C >jUOѷ[Rc~b$CQ nr[Z ̨os69LÀL'okh4߼\ ]u 2Z6`&V9w!˛98 t"LF2`z3P׊8A^HgS `tGD! K9B; x](I,yuDv`Nct B.|+j2@zLC\LNjSܸ@ yq\/O+Pj8RdQ1BIbM=k\>>s*o0[IB@ C <AG"R+LD`/w3),Ȫ(/'2iD˚Y*jq)1<Zc3T Jh}aBCKm#)Z6qT^Fcm: ,yr=Rt6[B)%?+H .u)f,K1JH%c=+ Hr@DloXt؆$BwkTߵI쐎qiv y!)@u? eQ.gODzI 0\^'\I9]3c:X9mȶ/݃?!tHv4os"sZQ[d 1Ul$ X=9`+ 9y.9s*jM1!_W(cɺr7 5trb8Ȭ7-7][JV]Խ%H]ǜJks{,hS.{TI@"#lDŽ0{%ISfo_ǥi)=F~M9H?6)8X.lNI8ck+sdމfz}zP殇+@`VԧW^$~ԯѬD7;kװ;% UPWEIY:L>T1pҏC'~0vBA(BV&\7Dh&O&A6'B3}2K(l-MSEIf/uJ 6S oӋ<R.EiNIvT1MX\wH*YLzM}9+¸"{0@ G%% P$j~їQEחsNUv%+>Ҫۊ^"kUR۴Eݾ[ ԯ%ۙBpJJ<ؕ"1RiBڪ]g궆SW ,#u*2.ݠPxR^OJeY$5mٸ/*@= -Ī/IQL(XY mRD K+?ġ7ĹʹԕgʼnhCٴso%W#{9ϒ) >ؔm/-C]^0e X& UXX u. 1kR/eX!Zn!g@3LĴc-o<'*|;"4 R5k b05BBK Z25iciZ-  o9Σt;(+cr^o6Ou[OoM8wr4gtjȾ WkxǥR:% C1jxdu*fOY7]JX,h! cX gwBMr _2vtZss'T?pMMh3t>oF5$.D{P{Z(AиD$<|5LdM6Lл6K$:,drեG_ƿL)2,GcT˰/_⣃mTKǡ/%ݳ/|k@[{V68q h^@lڛNV C}.Z/aXWǾj2Ěs%;(YVugGgK𯂿jh%3!KZ{ T΄t 6/ eZ/FʯύgHRݏ^ &ʢfoͭ?UFo)Vn&@jY~6 mtҭSMl^8clXc60#_VXUlr]rTrI+7Ҟ"' B`#ā ɛSm cxU^`$j:zu4 x*(7-u8gYZvl\/>rZO*9tb9> ?w`j0n]xAR=FXݣ%+ٛk C'oo^q~׍~^8:e*mZ dTtk(Ƕ1g{sP:そ䞒߇;Ģ4xxR+"5@N;Ɛ[,Ӵl:Űl_Oy뛝&E~S4'(t2Jb]4|1ZЬ`ε4$,yr#VYq|hυL ;ԤגV1k!oߣ\z_򪮻ޗذ9}EY{lFb>,r :OH;ꇠ6 @Xq',yjv kq[C0bRWt@(;c8FaX<Lm*bpPGϸname_z^qџN\蕹+kjLJ339,U2۠'=Ȇ̅mխ?  iCn4s!gŷ:H#z1Ǿ׊?Q!jOlmpA꜀\ꄇ\p98Ir4ю#t+=h-LCQ9g2FP˹/ Cpr;YV(b @_ȭc]cs/Z޺ e吢-~Lse ˃B.t?[I >XF .X1-/)LO|hJ=uk<%) V<&FT\^9m^b)Q&"ibvK?zlڭ%s hn%s)Aed?t:I\zgvuQEyqI"tt<7Lړ|񧷝@DJ>5+s3O ?+D N(튊82dP+ĦלUE}d:4Ţԥ{珕,8a6'*a夋vn=t4teY c5 Tv,؎ 5?ZŸ`i*x-ټʗTB wzz?e!=dU_AU!W4(fЖ:/٧Đ<7<窰B议A:IdE'`!hrgJyE}> IC ];ů30]p{),d1{I8k#Հ :C5C|4K{J(BݫGs;䓻sDw"`NH^;?fnFmXaaNWR<oW1σt%P),6xyivr'~~MlAZKÄGΊ:Ԭ9ԕi$#WêffAeEVndYOPXeƧOcW*4\}jƸauo i7\{I-Г##ޯ,*TNuMPFAI220o$qk(W2E/&IaՏ(i;BT(u vv bhh! [UsDAqYNTR.sxtjA]Ds{,q2MK VØH0du7P3@LEϭ:!$k̀*H$KArQC7=Lc`I)f3*֧*9O+ҦFBHB <]tQԼ^*}y"h:h(*/jiEA]nGu= b~nw͗<zͅ3e`ҽHh+HHH;E3_B[4f̞3sʜXa}SՖ?K e(rzWO{nHrM̈́ՓALzDOp٫a k^T#ˎ㫉]\nqvtqvS#_5Wdpl79aHq _$ Qu ~r 2޾l@qXڃ'.zܦEנzj&D`t\1ДQE8~gP*~MJN2wHqZv8)x0xnT'0ф*'U8#%a"cZD_hs?ٿ}/ߙ@H."?B}*;9|KآԷ4"C%Fx>$=naǚR޴4TZ-75ֻsǹ"zr2;XYTunmJܜaHÊF[Ifsr I׹ETxЩ@3;7{׵ilW;_˶t u0Kq*Sw]Lwctp.d1U>H鬉PWM  8@ 6#ѦjC҄>۹R`z-ۃ &z/D5IݏAsWbo\!b%=Y5E"# ^Ք 7W2TGI}LdG(_x] T6~"+TXm"{hu"8pCGƵ"'jZr3(>}+n.POq(h{$se18wuS\{kp{sˇ9?ܷ6wOw HѲ" $MRрK4tmc fnK4ݬ'K֓ o% +_ \ և?L}7;gṅ5w.߫\&xT4fjNBҺ.Y%T.m7 8/pSMV)٣ TA&Z0%8yrw#b;{1z݁8ZIЫkL^S f=ql,]?%yA~=UQrّ7R|(X&iIM̓bBڳBV)h ?h./QZe{]+ơ U8& 4WsJ5ȇlf'b̑*{-8ŞZB*S\eM\&_MSօ&vHisD=0Ϝ~_ךDӺ5zKMl_&YZw:b[6h@k<4Ң!.Da(BR\)M%:@;>Qͺ=!{%t@gcALxayGZSQR.x`J"O̹ A; |ޭ={xI!*֥w{MisB æ "4p BٲRyM#δԧ℩IԭŰj\O*< CKChc$qÞؿ 4B]O81BES"&yss%LSeLRW+~f13,X cR%\JG.V5*x[[ʨ24KjFV0(ɗUGَK)#hZ vyT;ɇHFDܸEjZ?g(EćQVάx-0Cì` c;؁Pz"xQqrs>{wwR´`[z"^yHևO"C K);vU_eH2"z Vc>ίg!JbZm}}?ouo;9z ^eyMXm! UKc=NPLP.N-4E>ΔLn Pd8Ꮅb4{kbWcSPwj3bho*p2F1hr2˻NTѰ,<`;U^CGrOMR7WLK YƂ }C\gWZgxfJTU a'@N5Z xpxJ+jD_B eZroN9B=+p>6`F5>PC)AC>*&)6ѽVf~wFz&հSAmuGS0h:-J3ઙZP"m V+au)ۜd8(pݛ<452)UXox=5 Q܎j>&7e6w)yn<>Z91 i;@ID -⋳acAe3_* }rE"1Ljۭ2сOmW8fFq$hZ#zi &7JoŇ}Z9J7YcB9`f$T÷)Fȉ< mr$3B>(54RA|v&xc·E q>1yPVhW"U2G [8& (JXH/L7&3ltM1rbY O#UU3q TJ26Ek>:縭:2%Z1 =w"vc2i٫تXm}戊L3b*b |&&^l;̀*Jm=w_Ua%8I2n@@Q6r ?*nۯ TiȪ1վqk'2U96 Kȏ3H\Toķ:{TPh0SrI:~,kf"ʹ*L]DFg;3؋bSgn+ga((nsV*^5{s|~,O>YGLVtq8"߯+ t S6|ԋ8SUEnQK0i3Y)HU_$uXhaiDR+h0kզzc4ֹ;Wi;^!`A#0oFaq2m>C0I"W`˯A+2C~Lf|deq'|eK"YDXdBKakGB?U0DqMrx%_9}8Ӏ.R.3nڛ.vM;9F) 5jJ" 0Iaۜ쫌7p0IZάgSS ,^߷g{.S24\fMdBÓXh!q_6sVEP _ 3.pk~(m.Zm [a\XYSp ͇il=)M7TgU j.%g/8(NB.>ÆA'']S#)k jNeM"lyd k(1}ke!”m<~K"PWk( &=mkP9̬Ե`._z/V kαKY5+]SՌXN3ּW\̾F;$׬jLfc WK $>WG@ )p:.W}IJ)3|8K Òj>Id(Ԫ.3R!N~  o=M~0M.J͢-5<:"` f0gd0})#%zfGõumWpDz%I5zvwX5mGȮՆV<z UF1a o[/}O8LS2*^bF3[om9/cmL`==fSp#YϮ.Ѽ =ʭ7hɻfyWS %ahDb@,P5L3+pW|O&2iɟHa!M){Q[~r92?(%Ca h8UD=4tX«l oGq0fN`~2bQwS'~avsRK9P^W+'8c; ynaU6-w>c7\#Ktn-3b9qPeg8nJMW LH:k%Npz1g-#;mskPkRqRZC=Fn9{ u띾k.uȻn3dL+GZj>Qx%C19*! כ"3>ήfn&ۥkC]pY%ER-Oк27J_ۼo$+P$Gj/ƼS#@ŃSRwl9&MlG[EIr:ϳ˧KDSorH3,*.f^E ^@g$+Oj@i=|)5TO)>+sy~\̣ @7% qBUNV}2%.% *Ȓ%њl lgݔ(7Ae"G?ԨOMqz\_MLЋ^M`^PyOC}YS \S)< 0iB>33VXesUGDTATs/:@wѕb`2QKl9ʗW;V#T}UF!kށwD$r[URJ~ݤyGa  tXWkx|K0tU"ULcXZ^eI蕲tm U/|buqif0HF՘z#/n`, uRKFF; -\`R,!V*WzZSvLhYyJ'j]kL~ݶ4Uy.h\}4QN_25TtoS>[QZL~zuE"uUdwh@ں/?]?UqlÌ@릎 0$zхAE؀خ C2xbb5W=k%`pU/~jGh( =.^pV+3CZ1pƿizO}kIOִsB ~oGĉUeօ@%0]ޒRRӗӐ, AWv Ͱq'Lq#0-!ࢼ!uB1&5Go ,QQV+KnSA{%fQFuQd'w^~:oo&~a}s 8Ŧa0UK(6f%ϊ8BjW2~Ad}z}+ Ag14r6d!Ba{M PA;<#103&7aS9="hQ!s6.,uR^ᓲըC(4MD+W"ʣf+4bɂD}hn TR0ٜqOca>Q#,OM UH- :?ȗH* CisͮVJbA[ʕZ +)X yo'o"BhQT"uz*YDs',?8ihҸF&s:enb`xC*s!N%"yn>P_J;R8]F ĕ 8F(zBJVWu˩0XDc\ЂN.c~ -yHGR/<50OQ~{Kj'vdZR+fܕ&s0;}8i*U@#7E;WLdzFh nn==F=Z4f"C'UwTX0m99avFX̛otX4[X#z(Õ"qn+tEJ1oKJBtѼ}q3(OY*+% 8HF74 P0KA|7 M"mv (_Rbu;T.ĄdS$s՘;>=7YOvWk8% Ski2tQCjrҿؽ<6uQ F ƍo;[pQ*1%S.L*e)fbҌS_nxCܴ~4j0N&cPgpO 8MX) ǜY!QᕋdB+joNӲ qwX:9|ܘ,_&]1@:Xx2|7vU-' Yw7Ia.oM~Y"o06q٧/tT;[2m3Y"%tAۭ{rWk#sw\@ti>'ذu#D?ʍEd#Nv|\螕r΅v3"r KT׀:!*@/H4SaEd2>"&0@}vaK7yhxP[[@tBY1,8h\#5H^: V=Z-`5D/a9!#nqvC2C6ĵwDMSrQb_HpiC!6@Pk4? &&QҋwVf|w2|h12V# 7\]Uƻ rx) ƟS^JόeoXN7A&ӯ*b9bQ(?P!@'LEv^`_R@ޔ?EB;lvQspȋ buf@lh QX I4JL`D^$Wq܀ܯ18rK`_:!,;t M:i#t/y _ss0,#}tc&BO,Ƌ[+㌏U5~+J+µ(*'iZ~; /lgbBIf~9`KUDY~eɣx=FOuepG8wndX1gu Zל=*jZJxR)j#z|> 'ME5r,bmՙzDlG"P1y-|?BMw6y !T;ߧc?mu=}3E(z%TX$^ոW:T2aC:|depǕ:;7 H2^@%"#T>ZBx~Ic-)}r\l LĜ?1s4l>w–rCDkz:dvF &oDP *Y`4SVV2=UR>P_1VtJ`a-#xpɁbw!]v}s et%اe_ҬǙm0ݚ|pޏw+\ 5:9:gzl܍28t` hMˆ5T1^񛥔7 "NTx=N (pE`r!=ύMG]'ArS47UJ !;CrBYBj?;0nE,\UۈYj'N*gՓ!٨JmŌ/#bԉXѠhJI]G{腬G0:kh S\,tLY>2>djpj-DePϬ]G" .ƶ ]E&; VM/U` ^Ex@EJ7ڗLQ^W(b̡aly3RITQ.b+ӨsV+RK($_ܝgHMLjLYtaS>Ϻn!_HĽ7)RӇ (D[u[XdDˠR11I 'Cw'N{D}9oDX):BݎFHκTԖF:ԏY׆h&4D#ԅXPIyć@k_&* +0ޡz|/9z<وt,V3UGZG,@+s[̵b]?#ZKf.\ry;2Ped*,Cmo B&IƸHbzd#3b1 Lhf%M(gܨj6Ti])(,PW7w!/2n5?2zV}^#qBLV gٲؽOlq>|4vMsm&[Q`_Q8'7^5mmɵW_H@*TW ]%1@c*1x}d;sNprq.jF|m|:Y¨y0;Gir T͢ |O"Crq|3ptmfزL'4JUD >WtSR}`ֱ۽ԬZ {y䝶Vʦ/6B1ީJK#pbC\rM caD+T6U}=l@!vs'qbuHf,IfPÛϜ QwVW+taLXO7d.xs>wFUXPd$6Pv<|Ja5Jt”KnNΩ)w2 (YO+ -.թH4g2O ~ *AL@0tx=cr~9Eq; 6T4{oj{Lt#Bcj48FipF) {mYҭP3WoMvp S1FU+Qj5<+ճ rS u-åT2D_0A)feŬ(2r2eUK ]El⧘~Rh2K޻MA3hu5i̶64LOڽǧ Z3.5 $+sxlu>B%2#gVه+2'tH|@^`5E qBḺp'|BCQ4?$NCfzMD)2[utLFLyU{p*[x]ŵrwޏR>U ՜o 5k1䕴IѶ+ϫw*3<+r.5DT YiE`":pǙbJ͇o[np9i: ?1Z[ Rdʖ@y0:|B0 @.)4,8OY` @ŸXߓ`v.{Co޶F> ƞB獏iAt!&/M4)Cbyc=Te ֑TyL :$uw57k)cTM.S bVTfR@: ye!]z/U>W)$0x~4l 7}a3a#3Pm`R83zeEݜ9[0;68Q/oԍ(+_",:Ė[A*|\ArtrO] [N"TkE:ڍvx~.ϳR^_ U;4)w@,0">H(CwWʤ$>gh4Na3˾)3E1U_Loi@S=6'e2/HK9%7s;8 8GHi0:l欇fS'"7>ZbȕF֌ZF|C@c˸a{ƇC;Z:9U>Ibw޵P٥O:@VazD!ZfPTyRvH]}hG& HΦQl}cqT@3xD̃Qn YsGfeLBTr>""4x)_/ Wu׏$8=wreŭ[#Ǝ|5F Р!LZ G2I8ˈ(%G_ (LKsiC)ۆQӄDES h9ǖ?Mif ߰$*U| u$y^iCmQ84kpz<[ˬۣ>W ƴj5[íB`DqGads_ݠh3?IB HdQ\>N bL2L/j1;A(`p:e.4a?%婣B'NC,Ҝӂ3@n']E<@ɻ VZJvP EZ6bh.zL@wk?G 9p 4dv_tXۏ)!LӝcM{jeTtU:`}f^Kn,zռݖ- 9CzZKDM=lz]C7>!DIi"_Ъui]ۅI𭞾0Ԯc%}."M^4#Oa)Py}>&pI4;e$$wbi!F8/jqSfwх=spSC&3-Ǐpfzm=Dž7=MY!shoO!}=O1i<0k )ٺp%?a(>B@KOmbqx2U`!=22_`TU}T&*ܞ?<-;fh@2G'U4!y% ZذڔYhajLSO%!ʮ+m[%Qhr$"pHS i"Gf=WKEykҟ1?=MuEz0nk$)d@Qƚź5j:% et0ۀh#wx97gkxWqv=XlniX`-MS&bGHwv"hH$%/;&]5ZK/ WLh}KSBMG+$lrRP.:p 䜉nn#k"V?C&%\OlRY_5KEQA/oC ޺e>b]-(McDT0V nO"FT|M~6]=ڕ} S5eFQ%ROtoѩD7I_&`mʤ  'KO3FpgCX0=i""Yl91qF ҽ\`r3G[(oE0z3 f|J87$Ab(;N^26| mRghu1KIŹmIqx 'ȉDFOA;W  yR7eJȻw~8(eqPRUҧa+6Eݨi7gwkLn8OIh/PN0(W2Pr{=rKm<8_ߜ H9ɪl8:~}ȩ[8 |I ^8+\'vb_(+Dx%NNi3/ٿSzMV*$'LXHn}i2[`Mev>~Ҙnwz)IcbI*a`LIˇta_wIex ]hae^3迼wG6 mpŋ.M+I}}oyn }UD\ֺͣЀ+8,e909y6; |X^At+m/fy @ UVʱ76hB.MI=$|ڨm=Zpo|Fy;DZ#E=' OH`4g68?T׾tlHYgDRfK#}^T&U*V5  "'958oWIsW̚4&v`H_SW$ *cru7% mBmȮlwUaI<}|@D-1gIM`y5Ѯ҉9/[a,g'iz&s[k.xKH`bf83MJ!Z_[87ԐCpQ _"& ݰ 1Tt59g=!_~@J͕^z??!BΡo=dKK}"Zӓ}ڐܦPY:$Qp_YRty~IvΡd !5\] FsB7UA +MShuAݜKkh@csl7u씍TXk.AYRI}RĦ2)nV:B<0l++E1Y-MNx\q0sH[Zח KLO=I D.,$f ,}/!eݯچSj%g<|‘@ )_!fzQÀ%GĭZtn5?1?]_x8/_,m9{_]3zpHz{H&4sp6{4@FQz"v#n+Ǔ%!L aͅŷ'bjr` a,ɪ酾 `[="{aF41I}vB(q!Ɗn-l#80N۾0/|z=NFB>:61SeF!v_ï~,dpH4'V%VXzЩ^*w 29(R[}Ⱥ:EQcM&ѧԫ \^s-q&3#89CKo{+0VhΎ BFс3@5Ov/F*)PP]^z&5 .]0Ń щ!BRU~ɝ%=^RŢýUeyoKp5`?)Iθ yde=KlGJA> AxR6ʒu3)ǟ4P-fӝMвxRR#7{P -ltmB-{'.a Λ_v64HÕ`: .lsZkL!itX_%,pbfve<$x"r# UxsV'rϢj=[LaE8W&QPOreZC|Y]6(wج|3/㒍{Mb3$ {NJyhVZBtC@꒛&xe-7ͮzQk iBAL}+nbt !΍,"6'#"i`ܲ43*PYJA|-)*qz`=3MMkW@t;yRRQB?=*m4jwu|?Cc-2,m05X~*αQ s&8KQq_!vt2*?H? \đ7rRNf.aO޼OA6]6$r0je֝`$۪ I@SNVJM8 f~ie6Z-l2}rOY5v8*x_uE8q .^h\ad>#J }3?^Q$ev"Y[p،/Œ# cv6:y^.EvkGX"Ph 'ؑFg&㕤(񼠁=n|w;ZsuxȮ3 QNb"CKC劲p?VŅ9Cb$غuIВM ' *=T>@%KtKeO Al׺` rI @:9B/0?DR nv?d_ː\}`<o9'C+WöL|{fJhٳp-A%FS5ǟ(ҿ[7u5Ѡ&J&F#,0IpKN"vUC $YKl%ΨATN]ϊMgr ~L{5ruWQi@fEh2 ,zK_[ !q#yp8z[߱k m$ȏm>8FQ9-یeMK5@AS,˿At\Ī/]Erl`= ןVXɅlICPoVMy{I]e޺c{/QSLh21F{Cuy;06 u/1n㓑Jf~>X%jUQl&*"h7 /)UH;t]N8t>-mʤ'OB:o-3L2 iس$Ɉ-+7`QF e3z|G)F,@g`fA9D~uN1nOk~d1}{$GNt)Y6[RgV8ϙ]$s"!lBd[@ں]cLM}#ιvQwGk.сצּf^f;6J@ xfOEɨhK=*,QA5:ttI7R5Q# (@a0ԃ$1pw&prIY+<ù'`Z.ϛpmᠠ\l@_5<{Θ8}G%h/JO),F@;eQ]뇼ዏ?gi7V '+ y~')HKeEo>1`3z>gY}\apNt=vFVKM)(naT$ij#Q\76d!"ke|uYN5Q{F(PS㕔phv~I"݊ )*QD&W扞':$'գ4n >]H~ݙgٕ:p>1@\!Q5ShbxD8 `h}2?zTBL|@5PD~27t‰[K *+S4Gz\`o+?PsُeS҈y.nA (ߏ9$ Q"إq3 = +? q %?NW|k”+:E4{XE)^&U~:|~F 2$kic`ڮx`;okߦFd;+ޜT< ~a$@LqG QT@y|L˞بtߥ*trG'nˡ>` HI3 Agy*_Or߶i=ƦI[Rj6WqUe Q؇C2% x\K3}`vTL1A'ߙ駵2BVa*R h+!%:tR>cDԔ Z.Hy尼.8g;ǒѶ%蜁Ou_u]qxP G<_x&R*Я{ב)|wQ"Szf0˸88~VŜf T\2s9Œ$yYYt|8(_"JZJet܈[j $?,&Oa#, r7,x@~>B46Ҩ®^5f`_OaIjkŘKYB}pO#)xMӼ0͌mcIq&1.C$d_!U~|ϵUT?a`5K,:ys!–sT'G1TG ɗ/+ DUВ^B8\BY62u["]Z:tȵYhO6`ı[Uo8tz:}}]u9׽58iu j6:x,i$}}MP}Rrw~Ӻf{m3ǣipIs=9x'*ɄRp:\߇VIgV0nNF.%,4\jugf^f X4htu1Q"zm^wЩܔnQ^J !f &'.R`wAAP;@?<@K^AcK5x R4J7{6q/[_bRsM ]?4)*jM5-VILIcȭwdw$śc(5UER}/l,rEz* 各PTYz_Ӻ:~ ]QD$6LLzLW.C3w@h62.+饱$gz2K˱ۂiS'e*')ξg ɎQgǎlï .)KJ 5 `|D@SaDam֔)$٨xY|nU W50V ff/±P%'Z+9C\I*DII>.U4A9!}Jc4|K gdiN'mlGgOT5ā>g䞉v-4pҚư֌& {:,?B\Ϫ y,-%/6uM 2b2lI y -dandEp mamPQz(~9ŷأ lBH n,u \ ǤxK6[@8{6Hx'?>rI9:>biPV'"H t^hJ+N'2xJ&J 9f{!MEm: Ym亲V#u@Azi_>+L+NW::IGYixs }OЦn߮) QDL~\͘qJ3=҆,vA;KI}L: 0z{>X\owۓ5Vյc+G46C1ϧ/YbG3ۿ6,xUH$o|\ oiR7sM4rpֵb&W#x6饻nb@2gCcaA&4C ٶS˪+p# ;<'T]"&~RP eg5{R f)0Z1nǣ˷$5l=&BffiOԵ> NzJE`:UaSc 1ygac [>TkEpIՉO<犕 ! +lckeJeă-(OoXO P2 񤛝0$?F0aI7ʀKH&gGQRaRvri5Ŕ*6#ۡ"avD9~UXz|?U`'o2osm70v|kOLo%m%̔ _qԝ_LAy]$n9"Dr<9)&!khBv+&-'e[5RyC݂AdQziqDuSw}ku7.d;A" iq0f!C. L\~JU.~ Ѭ(wx^sF2 m+s!Lm1_񐯌xPu+ie'9RzWJ$5uG>QE٢+ 1fOaBjA,,Uu~@Y`~7dٵ٤wXʀh3<-HɥMԙ܊1wi- a#Z}QL1W,%rkFn`oO!؄.;n˙/X-W4y:V>?}nDf |jBeRljiu] M||JxR*yL5@_NI83ģ̮%2$dXX tUC@p1S ;\Rԛx 4iI<Xq? ;eۯ2Ix%!kҭ(L+@",Hm;v1 JU/G.U}#eL(h4{.ӯ5ɶ>.K3"kmcsT@+R . }S0UO\g `6/ >EzL>ܜ{L'V>HrX-t)/Hh}+ {䧸"˥Re2+ԭǔxlIpgH![6qr Mc.zq<|Ӱvr$Ƹ&_w#4sɨ,pf )/^GI Aּ{葂!8 |˅Ǡ(}#U@ix`,NNڭх.)#('i:ai&BЪBRkĻ{ɫq' 2ՋV]%cJ>b'G0H܃.1:+o* }&u[n@HC N"WzT5%A ]y0R k\G&Y4Ae { g(- Z'y& xw~۬MnrW\ϓl>MIC}.HvT{a~]UIR')SsXYLWuEN#P:dٹ$%1wº;! a7,׶V+їB] $m NH *1,X"]߮~ 7XIaxX#)Hi B#a UVv,͡8^^_96d UHԻU6tTfO%ȂMT߲Ԙk%%7<^+HD_rY`sG'ԪG98YMUာ% z"b( |4u(oO.<~# a$6UϨ`OA #0r\Hb8prG{Kz{jRCݸ8HFJsIAix4芢ݶaʻۉƈKl45{;V'MޯFi/ |9ۥ$2R~|E:VzaW$pbV(R{9?ܓ4S`9r\(,0 7V4k 2QK657z(ZVyrQB:;0b#׋nRp(D MÓZ/ ֕Wk360j6;ꪣv|H ^r2M$^I72gt:J{a< Ul@Rm=DfVjz :?LZ8xs*:w}7w:\A(baL/kYBh8pAs +]_(f#.zT)%xrK<^"ŝ1PBHQz(ZkKh?{Y5 ziJywL29@h{M$s"ԤJ']˿ɸF(]ʏd/v"ò\AD!E(o,)jMqwq&L4˾~zi"-e츃%>I hETgLXeD)G"/o.VdSITpFZQv,Ay$3G?Fp2(GCSm՛Z̰TNrup0 k27{g J M0Ԇ[\C:R}U ?C+ .ɐH0CJlB7xSjm@Zu٘)_Zn"a\!o0def_~[5\c ڼZ@`^S>_6Ҭx# =\,%кC޵ojz lir#|QtB"۱yJ2&H8Ӌ'bްj }x\1DWMSHn \UnjNu_[V>&(gZBZy)x{~soPLVKv1VMğbE+,cRrZ8XJ#` à3aぐQ2i\1"ݴ?~%Y|\m z/O{=&IߵG+M^ك]2n!dqcg|LTFgL9;oV|;u)rNans'X~XEK.OM: <4H:\zGԳԢ49/siH, AU\ـ{dǎܝQ* Qs\Kw|Mc7xd%+Qu7W}^񄋀|XJdյYf=MBF&LLNUQۘQB*~JBm]*\ c9 BM0l+pirf]L,l=H2? @e 0Y{P5FՅ0 Jšu"N) n ,K+-(#۔ j_I̺O{{Bi0V$t /,B̨(k_Oc u8Vn@  M-tg:(Yξ<,chU5 5L@9!{ ؗ^ lm3hxIB%X" Q}8N-KS%j}2E :FV7$%;~\RkQsuG!HgLG8p@- Cg& #j_n7QcuP!;~ԉ+rc' ؽʙ ϟd.b/2͖dj'UAկ sj-kiy'볟a)S BPDʆ(:S.;~;#蓐h e&W1IdTj0tǷ#DR^mes`*ifIq>/;Q:-{WQJGS*h|6.‘IpkV#n]k/r͙OAA{8]aJi *0O ^D:e;}Vcه&MZv;Y@'!} z'%zur.}TSi҈Wە9*U&fC@h ,`|AÁĽ@{BfJW즋*ĕ>F֕{fwߖ\j-%fӏ5ڵxܚ ,V4wu IM7pЩI1b !8tG"ȧp]!-`&8:%^u!znM9J1Jާ5)Y {ޡ,Jxz4jˇ_-lU.4 3ѺVU8xo<9̘{e[?_:˂IkJjqWb֜]d?jIyҏlqG^O}w*j_ɮ/ _媃sUPDʮSAPԶ =Ov`2ah>c,t./ɹKdS`? :#z3_>MF `N |˿ oA\@[*&Uy6DZ enLڵ {H9My6A|*pChQ2|x|Vp4?`Qh-Rۂm]8;duC8=0O׈o2&V-%H.Zݝ M֩a$DdL‹b[B ސ.=8bXiKܺ{m~A-lt;zj: 'EJ@+MУ5a0@B"5]fnBA4=9mYNIh[ IV_薪wʫ!(/fZǻ-*jPlkF9!G:0nY KGkd?Ld6&3͓=VSa3rESwk3Y(׶NN'cøa`~ ʸS㴟uA*t@^wͽvllx*Rh@]?~f8YtH*ra?%prQ\‚.CBe lP8*n pmor\ǮES4#/]<5jL|ԣ +@]Qx't-U!vc E9zHPtrt=GAEm!g )oXdwDzt+/k-}pe4BM* З]X01W)$YY1_@ŇKAWKETd՜L/v5bΉ;G Qr_dg? \/C[C'' k{3/xy}">:1/ogiƐNIwRJ9tЄL?C(ΥIo%~O# SM`?gX<~cZ(&%O>O4ؑ7nM3T2UMéފ4ft*ΪMӤݻ!'=q| U(*z?Vu~GwCȊz @z1J}b=",a .ܝv }|H-NDTLV͉Z ;U=R ӡF ;Z#C)T `73Kv8"62~LzYVNP~mR޿)`mx9-| :5RFgįBW[Ǜ1ɍtۧzYM 7VfWѪo6t; SnI?WكŕO  4VJe ] |t+a21Lᆁ3D~+_V2+TB7Yn+ t$ww%U5;uWIyn ~bmc_,髽N4V0 @s:O;%Wa\Y~CBg=@Nc\̮7M]ߣL]:n"ac?K8:;zD[{ WSR;m B|j;N( rC8 \pB1w Ҕ6\pQNŴV4 | nS-C2Azc5)GF|;-a7$Gaē^.` 0RbŮkP_g|>@q3! G VjY: 2ZE?qv^a/:7TϮs@.ne~hQXٕ[QW6gp r2޾տ%v,֮dZ{-cښ I%Du}آ0ތk6W:^{z5 |y;|x0S}A FV,NV?WkAj+Ň4qVk;9M^ylZ]pb2wςg K肺,y9*fyobg@˫#3D:d>{*$ 5\L'k&I4Ui&Ԉq#Rh՛$vjCb]D幧Qܺ Jc=![eaHm@*B‛wv]{6g@:k`;/_ t=gOHso`;$ȃKzkĿͨAňS75 qu\=?!5/]! }Mҩj2Qc}DÚS/pM(8|0$•g 1Y; *Z#9jq /7@3@ ^^WuKg PNMBB);Vr3>i.[mjUǘV=@],PE2V,WrBev<[&`e?BV8bs5b_Kko/1qPl vmlTنI"&.d&Mܹ$=2s_zd̫%o@ζRYY &GVʦ#=F197px)(w؂xʶY0hbb1_u39v^xQbKU##{$R8v.}IȚ^~2!j eį^-9'z I aoBgcv>{C,:s7!:}LS=Iꡞ4*@K̅zEH N,,AxI|IP[2v^W"dVyg  {]V U4yŋ/ܶ3?c &b57F}MUI8LJ^Xy:&rx,lӘ6hd޾bM'tXGy1 F痩a.&t=eKDR.]NLj~S -Σӳበnզ!իU͞ oO\ єJ6;a>]~j!v;M'@Ps F=&2[\FɭttA?q/iG/K<[~C>N V?rvc~} Y*6+629hgߠhnMVK{@bauTCwxo JO:ס;~c:G@6Laf/բvvzuw=fs2VX#aY}u<Ȯ` z,G`4]V8 #oYYҸe}ũIЬ0@D\ZݚBԵ,7M|6yb][\"2O&Tol|i/e3 x^+r=14ɖA˃/HPy /ggZ$e"ijeĨuXI"_ōCBԫAtƣEco% QA)D0a5f%sD5Ǯԏɫ8OgCi!ha9 Q w mḅ*D34,сZ&"хK~x k$ C]>"_7Q=bjLؒ[@gfX{,tF/I,אuI;=ElzBbqC̜I)4*BO置'4sJe%/da6Nm:g )m J4}v"X8JOeKJ@ *1b;_sSr^'1FxI=`$m_Ndo 򏧹 —;]<(qC+ p[P |2yIGQƎbD8Ckh/s6\-T>J9HD6= 0=y(ޏ%ELg,yFgCZ]z{փ@DZ0zw&eYRzb2 2Ե͒/= cLnL4˜F !]~=FA֢.5>I[(L[ PԓZ`>ю9mWU LC=/8#`E]$E(jLяjT B 64eX˱Ĭ oڶG@vOx1Xi1(2 \eEi߸*0%64}yز!0dvRf0w9J]~HmR\q1^_CbaLehF,ޠ-ћ_"[1yUTD9wVӶ [[FdWXFO od'Xnr: )׋㩊E?k`=q!3Q0i7>V% Dt=z8IIE59zQ-Up&XQS7sy.b_"z9(hpoCH|^yL|ӳ(cBRx r"6Shqŝ=iOϚ#L ƙ9_wpQCz*C^j92jgƢn i`Z>g1[O`x"ˀNhj)5*Xs0; %:nIVl۟424STE<_(F?7axsM#He!PCV?>%.;UZST2zjBݹfLu0yo%ܬ,h㺅DM֎h0eWH}@ѿ+l-5pesKvԂp^ٮjha{ @̗-;@_|wf4l9^ }A6SE0~/2m3+?cjٱo>"Ѽf~v]#P Qo f֗$Kɦmq@O#ULѨL{a:ÂLYsLG.u*%^Oޒزct"I$?Hw" /K"ˤ6\qhçeEnBӒ>̮wwѷ6kv{9"khr[N gC pҞվ;]Ɍ9'.m_)L@^y4g]hkyOi[2I? [)6۳_ ΰUڡoFʛɜp2T)zzo&ΡD Q;7e 71bJޛ4Ea GpY;]d 4k"χA@hĈ@cq1>~.PTouԆ$]'#py%+ XIŠR?}>n.(3.XS`:S#gN)GOfקvl79bqHݍIaMrPk/GrWG! ^7fTGzr }V?ܧ0VxS4EA^>~dߣdU#.ӂE 07n^4u.ֿ5@m`0L@NO/AHͩN|k(~7" yA&`ïU@^]zr׏9f9wh48H j 722c͌Ps`Eڭ3vi>;UyT%P|wl!X[(%uInDl+֣1 WuVxVK$-§<_`1VҋY= yCX-J [ dcV]QPj XMu/4IB"Vur)#;C2>OE ~j_n@R:lܝfj+,\]H1<E-c*gE/I1kA#8V~yr[-F8˙V p|x08ФTɶV9&rr8?jmPwMVߟ0TnM鲦73ٷ2nQL@YG0;ۥ>e.;zd?hK*V1-tra0_kZozKKX@9XKq2g&?GXNZkZ'\_DBN\6$wkcJ5$7'k.ϴJ^j 3[۶\ߐFD~ڱJMם샑zy)LVzup[jqNtqg_  yMH(M5/Fh &Kњ39,(oqL~>d2/土Qd 7;>"g+ U3T-ZY/Il VŦ̊]s5zݮFզJJ8Cӳ2NB;?3nV2^G9~8,doJD$0DH 8?9oȈ+k<͙z}9bs?UJY8t~4P:پ1Q2t7scu pNfuXقxlzѪ+O_Tc⸮tDxEU-T'sV0mE'qwl0eBO=E+)r~l#UKlU ,n }2Mc}|3ZD{l,m&3e"Hu2Uz`\wV $tS[ +~Ç dICþvrop B |}Tڥ<[Vfѕ@,rD"6aݺM$q,ħQώ'0 .cU`(Zml+$;ʻ=N0zQjJ`?2 @*{ :{JŠɢJ'UDRIVst'V/]Yh<|U菰!{\8j` }?(xܷkwG78Vhgơ|;7DcFA;v5ӧ0+lVt3fѾ4uha%QsW?m 4"kjV|h#&o>A8X9ܩPhfN͂SZRC?_nf?x**xIӯ^\!֬5$9@sbktLu?zI+#s;GwcDSp5Ĩe `Įf ! H?؀; $s!nOu р)¢Ü}[t e`@~mC]w;Gƈ5N"d<cVK|Uu(MEqQZ*J F]gnS@ˉA~RS9ֻEcK\3SuUoxr1umAuu`ƮrVE[ϧJR?(ꣿMiEɷ):j*n07}M!57-%RP]6yD{ Ե OǷXdJ. 7HKc-kv0-#a c 3uR.n8CMpnLvyv=M!eD@n2du҅K 6ގa=mքQ>H!_}0v]H01:ݍa6; 61*›Ijڅ0poʏHO {| >Qt: %r琜 6 )(}bpW/5r@ [ŷLqK\HKG.htr\A~RX>|J@ +@eYOr[UcdT3ys\}ga%NW||*YhkGgV |z\)4oT15NOU-j:?O,21 Oj2FR;iZSc)ˌ}ۈQlre67hvFo8eJʈ2Y d. 5kQm]K|ϏPYa@YMNw7ZͣbRTݮ9X b :OH\̌p: H>}%eFjޞAdé.|֛0h]qfl? dR=mԶ kìUxrUg{s)o(*mͣw(8)\vk(Eaz H=2Hs%JQ ݜ\e' `neX~ ;d ϽbwPbTxFQGp`̹_݂Έ|MͯyP?!տ(21x5rE*&Kwx)ӮW뺸ZƮIE9d=.ۡie%XPt#7]@2pB^󁋱i%L?bT'T2/[~~ )/b;'IWOZƜ lJ"HP6)L³iٰspE}HVNLFsU$4jhj΋tiH_F$4Q(4CWhc㞜櫒V _WIK_BȔu606&&O &4 7ooⳜ eA輑Itj*}7H' eRnS>:)UF>%? r8*Qr (+ΗK6H+dYڹ6]~?Y%.` ))]oWrV h>1yޮ*j+˩ppɬ(L\շY}'1 T1\j.JL嚡2^){YQ%|w"IBonʇ^#Ho%U9<]| f ?LJຯ9 v8*2\{fu8T=MC&Sqj0` C#I(ȥz4/8ܯ?m)@Ru$_F>7X%mz7kllXH`%3Z's>9rh c>0>̟iWe8Pi:5yRDM_fvئgfrEӈ ^jd>1tɰQ9йMllӿ饬 $m`d:ڳRͺ Gh^XJnE( yʬkQw}B%GX2: 7lq̯A =5"*=_ipUcm@6Ͱg_Zm)Ttz-]otd22J@Ȁ|Z#1T)uNT[EcCTLE}\ԃv) 3M7l\Bdph.^4=|/F](VI)Σޕ=3:Щ5 CfnxHge }MoZcUUW 8jOASgt{*6[< ϺBԄHoj,bFdۄ=wYSh/e$|BE Y n#o4 =2]4l]6 phEC (,Oa2 '5wwb8 wYy[j>I-F4qa^D_İV@^;` @TWː(n815Z bAƭE pCI~- ^PLixfa噾OIL9v(QrոMy>.R_' D4:C~֫SayI]Lz|z>}ڶ/|&62WK* >kweX&X;0 ?b_F$il8&2/\˫ hZ&R(cEFςn?0&A\]j68+DQP)$;g478pcRҋ ,D3yp YbǾTj7A9ok=ۂ}JDux\wDP6kk. W^-7+\?}"4wY一ؙVu͛қr!cG]xFbM, TzX s+?[/[}=0lhoiA@iףc=.ֹmf [:e"@r>uꒃC,p-Rʾ#_|@KDЖkRv %*'8Ke jOI@jgH;)fo拒ϭ_, ĠBҦ]9pN/ #s:Jb,F_RfP X\3WX#?I(bK{_k0e:[F"|?O`*o\JsVT؜e[Xg0懌ٸ^SP$حO>0fݷ`h>[`sY6޸ʮ9k|ѐeS(`C I<- zEDʀ33oo03ܴx=!, g"&M Xk-ۼ8}`}骝 uɎ%mb4bu8X @;⤂Ѻ<龪].מ p8>L)S v7!IR"&Y7\Csvv|}׭ɕ bPwtJJ[ "EXH* z'[A9ei6N4hKy/Op?PHSnr@w"j"-|HЗ/KZiLĪS jjCg Yۅ¶*L]KM% ^ѻ}r-p"L@B) Q_H=BZ'1UW/0,PQ7@#+(~a'HT;џͬ2&pEKrhe`k]ndHO{{Sـ9ȍ0Sr GKnxJU]@$H]r!ˉ3$Vdu*US,6>Sψj DC,BH D4 A }s-WNk\LLl+n@rGɼGU n 2(/qυavnd7/1%.Tfi(&E+,XLQ8K'gXvǃ@nNJK Yy )κ QIA& ʺYhclKk/2w?T!0Sͮڣ|rc$bmD%pVI83sTgCġ$5#N"N~TLٵWSFlQ?G$tϻ6%Bx< rƕWPRw2eHz3_IVwe\ͷoRzq5o75ゾ ]+^j݁F C1\ nJlCsmavܿ>P(k?Bqo)[dj)/iwsD9KQ''l&e`&vl"!fP=]vOzCmv0jBbEBLˑؙʁW52vJPIJR}vYnMw jp]Œ"=]/cֻǶ YQ\>Rt&r7 LE<borIqE5:/ɡL0M`r?Fqzq\2n{ gP2=.Fל[D"aڛL:b0j;46qI{~i(ħB5H@i/+1p^,fHzj$P8rc0c0D {Av+OYuPƐu^"!䱚uVv;C?ETJ#ܗ.N7nA+[ѳ-j3-ev| KOvRVBHei! ^Bʰ_\οP'D.QX\%8͏w2jLv` :3 2!% _Xw:w[J߈h& A=Mmb& R(켍&0 i.PZ+jL/*NV؃)qt7fWL Txmu5-]>ֻhzi>e^.:z(XuWQ]$H5PvoA60Mj/msg%MO`p-&KQDnGqtD U{;|Z3`{k5Uj&j#wd3Ш~⮛5Uw~!BycT}sZrjtN.*]UBKɿvW1Lvga,ǎ]Oa BYixѶVݣ+Yj9Jr5+BEvSv@JSmTpY;;mc_tnGIdҴf_O *9bem} iY.cVX[#qt񕖜1 &~/ i x=\lh<N+O*ПHi6jrDKU)g(93xQ[38֕90ڠ}!>xѢN B$X!R\54[#jT({-4vziz2ЯI 9C^`~_mѰT=4<6=ڦӑ/@|-'ug`)YT8\N=ݷ{7b?`/1h5RBF {Re8oi`[M%3y;k8N ?օP9鐛ip@MGL+MwORuuNXV3J8|ND=?50zzV@DǴm+*[6]Іc `҆d5V CTJ ;Ϧ<kx8MD %,B9ivȑr<$ٺt.g(Es؊{a؈0ߺ&dJR uU|Mq0 )y;[(b3ǘd  XMGςYW>Oo#$.ATuǮw^ebN$fi˹̃hc67+B A'QC?KP}h rR] SS70x: 1a!1W~ؐ XhA4P=yď;e"W8+wFUl6MB(|u]XJ>"~D,yyyY{-E :Bz|x:UkCPg dR>q,y顓 \nsyG1ƾH1KS{uM7d$(~|1A夕q92D>%s`z[-֍hvĉdԙ7B+QU7_2Lמ}/Oێ;w@xEX`etuuEyd%9 S21)1P Р&WwAk7Q@jRpiRk {2ͳv5-a7\i7H2  sPq_4}hXxa=Rx\eT "_ i~4 wX~~Yu5낇ht/$ CGxbH{I˚`u8/X̓4\-`e{[ ,0bހ|x/8B>Bzo'OQ9mR}'; A 89Se?gff`tXPmWe;b͒ >!фvsgu!yNݠ:n>uGf5 {K]yXȹ2Ql 3D=RnTb|"Ex_[Dyq%_Du"ˌ}KݑY@6y(6Q;+>-UíW9Dԟ?EN`:$^Fd1j4ފfP)2.!þv+$SS}Z̗-#Uƾx>0%fGҩuK4gn G|irεg^ iiл*"u7]/FFE<| =7t L˰9߾inihWj%$Y3dIoꌯ2/i_ XK<OW|=N" tc3HtO1)1Rv,8g"ڢ!^rh۸] (0a>t, .Z%ct\x"KlXڢyVR6dy ф?LS- y [iZjm%Mj8Kpv_l!Jc|KY+LzOD;k5㒢)Gs`?@栦=ݺׇImdi_}52 u5mbˎ\AJְ=+T/B`0WQ4fcy2"?3jRćLN]'p)Dm\֬Dolzpځ`Vlߓ*߻tlc|b _">z8A']7TDRRe*,ڱ=91sGoVlK|YȎQȑ6y >̾GSBTM%Ry?{?.^hQHjy9.}ү>L[Sѹ|qd"`\6 X'rL@_ BdQ"-67r륑 3F^@1ӄb:haJ~z32-?4dlVk}8A kx]z2l`H tҟ  *" M$^ 0sSr[a UŠ?6@pv *%*=8vF-)^v*4 a|MxGpH{λi5s[C ObD^v.3hDt/N;+Gz~&=uEapR='xr u쓩&:S 3 cCxA^^0֞S\Iŵ!]q{dtr Qx׊({)r 1!eO^+QzP1APlkJ˽c M \1̮'TjY^`]9Mx4$;Q@b K[9ȧ\k;XI/;\3B6EgZ.U(,_}!x?.7pބn*Cgޢ(H(-6XI|**ҐQJⰾnrD d'7JurI@S9k`,oyUuO^ ]ť]"Lu`YBC9xOEh8{Fc?w 0( ba -)$F\ZhR_܉(cy0E5σā)b^Û%~w DR{acc?qvW2SIϭ^O DS4Jw >e'o+ʻZ*>`HjM$+_5~FvCUxBd4,: kI^ t\M)󑵳RRI*8@~YYePԕJHߗPA#[ U}e"EB4gIjqF<!'nL澊4t3'Թhx %7VG7I~?F{dݮal-HQ,l궝 :RJ#Vdvw-t(@V+O"ꤡkI^.kwN%@F.Cٜ*~vT3(S mFrToOǽR\?G{ZspDѼ p! wi$js!O&0˻{R ;!Ժ[Fi'GbvWNw*Zg6K+ޏ!V:$b >oI&H̱w̜8]>1Rg;p/=2[EػNX.E o-Wɻz2^(&H3}B;@:9 hZq̯(HMz9Z)`o/:~#^&܃K\^ oMU|41n'|!&3F ӽ[7S0neS7k>i4ֆ;^갲G۰odGt5bfup "v]os#@ɖ]M9`1#Pd UNKޟ8,FE+ C058})$8ۧb8a;,kLqk߫2XXђ> S,6t^4y-㐯,:%sЊ?mSĝ>sPYy "Bi -lH$G=<.!khmN} 0{JVwJO>ves漶2=D]{ɞT;@34p!#,_vZ–'lW]Yz0RP̮GƱKm7+E;BLq볪!:]>!f&VR}ˆ5sJBg=AIa%r9t,3=?x uI>BSpYS$4AiCaHoʘ Jcݶ/'8x|HW`\2wS#'.gO F&Os QN}/Jc,@0!Ywӧ&HV`;|;,@]4sIddHg_A2EjH?vQb:x/7gv bc}Fȩq;ok'gyi?9xU ͱz3IY?,\  !%YK!b\v`%С̟Lj@QӼidN7d7;v7Od㐙ť t̅0B.lV/R"/qH_`?BVpW"LuXXoSJx B~3,LViD4ZZlW ;O?Pc`zOEJ%-VմtV1C}aIN@ߜ:+6R7|%ՀH籬e)?Ē 0 ,[$8)mxH,wt41|>-g r@jN 1+>cw\S*~4}u t.7š^"rč|{QVϣBF:?xƀhy %U VS7M"b9R)Wr]@v4o'ySJ=r&1u‘|O J5 M46ϻ 4/ =Xu%ߘ?}iz닟l{[Ѵ?bfHj F#@p@R-7o!B^^Ҩ.-XE\tg-)A5;ڋ!ivz\$5VB~ P }MP@yQ5['~qiRsO-U_#5XU:VXz k$kz/s*S/C-,G5R{#M27U~/B,ux/R; -lgp_den9/+:C{0u26CqN hgnJ+Tkҫoy:#Olڞa7R00 ZR2lŅ:߲ʑt0d-A;sȂY,WDl&`IV.V[TZi#]/m%ۧIҐ~yCH΋[cytKOѻh%$0_V n:/[oIRBNNP cF {!>LH ڳ4R$W=% $AkNZy{6 Nts(M+ݓdm~ڿ;ˣt'sEФ!ﻛI'_dK\hgt"&޸%xH{"0 ZLp|DYO^';,q](i92<"//XdY`3Tz a0tWHDi֍<"[!wZd8{R@uhc7ZaM?S*N?a ;/.[ Qk_vd9p5vI?CҞX+˟O\]&]Ŭ{V~bXb;`mp_ԩg \<&>[i-2U:p x5w%R`>h}Yw - tD5N50 .@/!jJʲ5?n$bF HMtA7EKxь XQ ˫7`.B\w*;A8GݭGT9YwQ $f%O3fy?Ce&=YHb\G'b)Cd7@ESG\ ^^ |`fU}?v>|!e ZCZrSdR*g Dp S@7R369L\ )0pj[5_(op^V(_Q5@+Wo=TXD@N{I ]a4|Έ!m! 2-ERNW X(&%7vL[*n bc֔?k3]~Uq{y?l5C&)ރN6C3q@g䣏mV[@ AY_,@Dmob?ތQP>;&0J"w![p'X -~]|g׉\g_Ճ|6j\r0K=4LҚ/"ViZ_ɊGń)(!qz,P.d3Gڣ{shwd"? ;;GܽG/BmZMaKMŸ2b9,j|Qg7u}H8ENk? яxnӚ%P| ZFWR @yhC/5g\#i{F3ɒqI?Tɝ~9ĨU.֝ej_g(k0Î"Գ;  x(.}j3gV0CƮ/REA kxMe""慛pXYN? iGS?~B_#ݬSQYu\.I="z!l=M3'2.F{X $$cB9$ky f2Ӑ6Z(M5oH 8L).ƦXi-k/&]N-g)zB>D.;RVJl.#ׅwKˎE=vn\:zS%Oj 6VT/" 2wʽ{bЛmBN#4CڇLWc@a 4@9Hgdijƍ^0ô֤B{"rȗq9KDf}Y1hόu@(cСE2b~+=+*9L ~e9M-A/Ç8`XA57s-E&W}>  LQ,jG q=[=Lьߖn!3ڏ.@x1]||ZTXʐKHmQ2sSEf4-`sQ~wvGNwux`63^g}oV^s ѕGNOөG d9ўrHXI~~[:|wslOWYa J $QI'6@*Z1i;C#ߗZvU݋/6/j~y~+sK?|_)~LiLwτ4M!yUn .dy+yF{9ˏO~3(S XQ [xX;︧dMԽ0&K0'ȩ^K|bC aq(R- m+|:oG3&U :}j]j`hU#Ud"T$?w.*ULV.?RW  \!š_N 5(r8dvr+OWd"eMsL;1椮i3HZ#CQI\@7[?۔gx_'wD(DŷVVlsk >O)3?N^;/ F^asF7s tjiOBx-H\`$ybeW?Ah6bgeN;sNBDH!:Ftk;w, =M@&!5VXXwvA;4.rWgf]؂4Hf~ \-WI;$@ڡ뙊lHޟփ~:{JCZF ]ڬC'eLug:Fz@ ]op7AC9[xRuP Pg(춽An~ZT&ڲ!*b%l7"_A1n01ߺӕF)ET S`%~Cm}@N@v 꾨pΐJY敖^N0("Ây뫖 X~AyI42HX^~4Nil@FQj3Bl AO{CF?37‰^Crɿe_^-)r }4'gԍ#">7R[[+_Gmm^ X)8ɰKJ"B9jK)@jԦY+HRRU}Jd^c{ SA=Աׂ_aGTwx2.M#)Q{' S{b[!D$юDPMCl<拾[;;9_&W Gz@0spL8_֞Ձk=!klë[fI~BƁ?}d3;Nc8}?o$x e/υIGHqL~q23"Ood. O  om~B\f&la?E#<3@SlwۃݮJO Zˈ@7ڎu[Qi<>7In+lUWKn!%y"\`ϛ`'#DdŢ煵ၵ6Jr×F0Bj`fS44%|Q IL&w6W TcUn.v)ƭ'WQgܜʎoO'[dcѲfZ$fŶ{A c+aXb:kj/n-Ot2~-^B!ΗW%w*wD,]Z # 8Z~oH1j> \+0E%hSR9"_|8;jG66,=ynM7YlY#C Du_+CۏUwi8֭S~!Q#3b5UI,j[z+Ę:|_V1wiG0!|5 /UsVٵp#F+-y*|F|>uJ.^jII_rL"UY>8X*ouOVV7{ {r/Ұ)33{DTܐJN-=nȮA}0>4-h3X;>]ޞ}]d: m7q]3:\18iY$5ʽ(0FSPV%)K-, 5IrpKEiDdHzcT.\^cҍj udH*PlIou"H̖2rH& UZ٬"a?\!ErN;3xo+ܼwjs(]6Xa~Gk>(C}-"S qeM,mn?[g4bϠ4b`uhIuxܑP%lBUnHy{6בCS1.iL\SS+{a{h&6yM@006#΍gޏ$(p'S;rY+fDn]wH{ӚUFkK5p31!/w}&9!H)1w=h:@r3LK KیrsΏB (^bmgλG_#9kɧtSըd1u$keSj(h L#']Pj7!9QZRK쐷/Rm`<'_`Ol|!'To&{+HLr/$jUiٛ.dKD07 A@L;b:v< % 7EW}Aư%Jen¯wkգ ]isOn}5Ƭvx9㌷+ kl ] jJ=)|Ĝ-lЅ zYpHVĂlPDGYmS:\͒,)ԤxVAli@Ta1!+b"c|V~D:;B ]]OsI傘<$FuD7Ϊ7Y#n!}zZxQCGC23ȊݞpaJ3D7ʻaE ti/W)N>@h!pWdo/T}Lv#Aҧm[ i喉t?͟n+45vސL/Wj)gj'Iz>nmJ~Q?Φ0MK.d"7cj-2mb= L]jGă3Rvڐ 5 .QIGY:pMYhXCQn&$4[tSoG$QzKȅy3\࿕^?6bT=C )5vzvjKbj9Md?6Բa]!hͭc3":}Y2"fsP7tׁ%C4az0Ax10G™B5!J=i,"Xv aGq)> o0Z b&T]q{W*Ss=Q%fޛ `\%a?*[-2QkD (5e"qgEG kY/m>;R w2lp_Rd Kȶ+. !BGO7u F0 $1Njs\}S]xx}КeRRSjzpKZG┼id[/ZPi!e)>MB3-1,ΛDk;B'. \D @VF0WvT+ EpU!kb2r쟿uIT t…C.9[ Y[yv02?y:r3,cK"!@f^5yZAR=]eN Y3(r>Q*=Po-#qhӡ'1mmt9j}kwݼ3 RWq8wE{JNÛБu)J6Ivf\gm܅SqW^An:N5Vㅲ{КGh b6" x:xw$z4%Lx8Yd`&ѩZ !y{|4Ŗ`.:$|$5[7U]R"(Rb>kϐX?[%R9*TGi8ՋB3EѶ ^O褭ЛOI|IIï1amurIXnK42Jn6r7.}/  TVy'))l"<6"yڋхH#iq=vBk-A)H/QG 1j/75[R3mS&揘*̿᧙f&ʺY9;cKZf}lS@}6wU`UM|;Rm)) lb)*1hQsenp3'WygOv{+ӳXG*B"zǯZx!AWǸaW\mv MsE^`>#i[wx[$زIosd;~PozVQe$EhK=I{D˄@VԮpg;^*X,cmߣu2/-4B +{)ɸ/@^YN/(i%Qٮ>UkZGb8vU biL&ws-_Õ:q6JOwQyh7i5a_嘝 ZgQHٚ{[S.OYs! ^D*rKM^)I髟hcSJii G=BJn5K2 TX}e:/nM:3;“0^ȗJYμd&fMdg[ZqCU8H'͗Yd+UÖXɃ^>zVvQ׃ls!?v :JGjVMn*%GC32Y=q-6<7n`|@b 6AYe9eM_Ih8EA 9{:5$ Q_ʥ'-e?\EYM1=1R/G|hYWL)M:jw1;64.f@Lt 1 ;-o-hPye. &`fg)Zs) _{,#t@VXx8!] I-py[F YJ2c.T>/3=Tװ.m'QݴBx(}Ӥ\sk>4≮)7HP2-&e2._j\[nDM  b[K 7*TF)&~ n7˼w4yO I3.я6g8!T-+ldC6s[J|1"'1[OI7b|]{$K9O-]rKYȲ8ǒ/ Vu Wn :k \gʲ<ғ. : Gsͻ/ͺ5 }W,II0d)T >̯kgNlN}~}Ϝw@핤aX*i8Y7w i%[?l:hrQs->QAGns{6·k5a=NH`#48OD|!9]Eё;"~,8c(U6ogYEk2I  ^?ml;|,{'xkx}He $7Ar?CN?: xfsq(P'bebnU@{RԿVxWOܩhΟ\yD}&͎K=l,EVO5抵֚!ism\gԓf`V7dPPr "Cvj>5pW#aiL'`Q5-Cʬ%c8 ,Ց{h"Bf0ZiOʧ"YPte$5-~a?ة`="Hw0J9ڇ,%Z4H?:?H6*70(CNY`_*ID30Itrn/^ZUE`lжS֏K0,Č?nj |))A" $!ne"J[`dg2'a"}:ï̙l_ .ʽ^2ѪQ7c )los?pQEKl ]q+fJǝM? H lo@ٹWg~y~Iw)ڿta#`1Vf,cϥFQ7/$ʗ#\LxWyl]E<`TH6.oxY({["g  A#̕jq^zTȑ߰GTbmk]xÐ?(5'Zu|ttI#ևw=|Cwu" ̓(d;Pclh8Iwy@J^,k{>髑 EF;[XInuY (N5lTe ,(R =w4F6sSel/a!gc M5[+dAU,  1w:2YLp[)xou3y h!-Lh<ηb Kh+ʀ+άenL ;ڣDp-3)8<0k^bW3.a7Ѩ)EEu+F{*)I(R-Ӵ+iOءG`SQo "1L-T ~`%(24֝'GK嘜 !LU޹A&}hpT+yJHt H(G䢤|IGߨ 02b|BͨAK5:V#E3Mv &1FEJۿǪ~ c_L<ƼI%2=aIҝSns bޫgԱո:h}Uqz+Ϟ`yPMJ)~6}U?%[ũma 6O[0ՐG6@s< _n4|V$ś$B'oYF2ql'`;Zm( i˒ Mv׎b%eTeLK)n #4+iA&Vx.[ ѹ.$K,wOnb'"n,H ʱM-P2Դo 'B(gٴfF,Ա|-0AzfWa9N2lB8??,I48FS$7q"pg K]6!4VXn@NI(-Os$a_fRYZdP #KjsZU7 YuO0l>M{²u!}QbӶ%jX]a‚]!6!+@es~C"4k~+oC H/%PfgKZkvƩh4Wť7wbo3GSQL WMעMBf@IE3Z%פ?MU #ŻM[*#Z HlEݠ>}&-}܍O"gQRiq6ܴPѶP54VzN}jH`~Oi,.rVbU8Dw)]4m۬細pf8|g>;&N rAjUSt7-]wD;%,{C j6܌x{ oaG]1u sD9Z_Cn8:*9yl8 4!PJ~ RklS;jϵvd;I]rsB}'ꃼcQRZ *YIgKoè7Z'SNƂUlI`;@IZ%?:('Ke+##ݗ qϥ=OrĬKU%CbG!%QlI_u,CwԹf݃ ytؐ"jB3\?LrQQ7g7 yYGnPJ|pH,mOMߞ:Eָ XHt0wy ͚p7!^|Z `ld,WuH1q9 #t,XͲ?OppGBm&4 z̻. wOդ՜k ?}d+crh\~lF|Fmp.$vґmUt#[g(&i~b&@Wu\+UZ"A;`]@tzԽܐ)fdXօa;rQphaD052Hfe^JIr`b֋\8.gB:KCXj/lZKj9#}biTX[sR8Y[;eD[hwE^q6mΥ ܐ]DMOlu!̟Yru/w}HƶtE>>ΐ@iYT [&2nU(~jYV'oG')#ETl 4QUD7 )&1;{ cDt/zL{ 0anB>WhGd965!Ŭ#JrvVso?u<7(4M @#3l kװa_vl$0upЀ}5T8jE̾;=LFj㝤ҔW>}dasH$L`sbRrnv' ӡO֤e8˂ #` қ_lQ4J +_ul}q#=7V ˮ3(hg>2?~Um"f`zlrZ=bg zr--%j/+m!~|5MLـDz+R=8zt X6F\Eu,r̗@U^5}?MjN[{zg֡~?edzbiHgԗp2$5BF$ ?m3)@+q>GB٥ :x^_NvP d@tl'h1py/^e{dBEa^  jDYewR 1kZaa>lKt^s?֛gKJ4Kx33*9ѷ2Ojf,z,@Pi/RK㡧 VKV 2D[[g·jqsY1svR?uRTijX5=j?MLZF;mA𞇡^*;גqnJR{==clD=لh)et$r^4M)罄d}H&I'J|)m+Nh3EH_U%1xT^r_٪P[m ?u &|4}~j%a}qB}pbM޸g|yގ |'Dbc9F  *<\X͑u;tu85,u \\GoWagl]0$͚8Duat0  Zvx(#WmsY--)Q\ghO-*yaxo_z{'&K2".PMUVzw+[1dbL±n)wn\։g2w32ŘzK8x [efu:̘ Gr:7 ־l(2%OpSҿ!-:s.wl*بTɲX6U|T8|ҟ/\LlV<+ _ٻrz>yʕ!YȓƑ9SS<$o?fc͇X_I~|h`'閨bhR^I u=|~ 6كQ洔Wz5=%-;[qJ$A:,G^v>35PԠ@Eݫ^+Q|GBTfOv?s;ؤTkϿ! .܊> fyJK4vYM@v`(``cc2a1+EcOg^tQgVfm6 9 =AS/@/AA(wxTMhd [aa?P5R<aj(%9H1Qi7--<4} JR!wRB͹u ͥ[v@zUA̯͡۵ !・gs8^bN'p$Y*h(>iGI2D tg0Ʌ\m:0`_i:bbR4 Oaí 㓢#X?&KZd`0zkP-t(wQ@.PK(HY"Ρ܈ S)WDcesp:D谵I]j#8bJN|˧rT2(ӠUxA^ U)NR^Υox czaΓofþȰ:i$hP} Ix}F7n44Ov@Ù$[gWώ 8ʲ5Tm3PN:0bX# .UVDB(}m6GڜbG5Dz EAup]]8ݸ(@G2q>y;.FZ{$ĘQ*ULl!'K(㢸y:k)I3 il.5"6x Ɔ*?|Q*Et_)?;5S\`3{㺱ih(4?cE`'sFp% &՗)S5JCl(JSG,k6-xNj6,!.eKa:njP+X{">Y%k$Pl3Lʗ_3qq+7[U`@2~u Boۮھ37y4^ȞGKԳG$=$/6w {dYyFzGV WLWRmʹQ!ԭ(0Fi-v| 1odTe޽'u<9mQx0ӻ:]:zFE-_" (f5.mG3h-9F vd鎤vyp GD 4:q!}= &T @J|?&PiR JiUL<ڵ{8.9X)|a;Ol1BJ%ʼn<>hz**M`>8kh샎h^y80` ]WkҬ>ly]U ًӣ;zЙ;O9lBp(N,NĘvڌ\|(3V9Xb;>x{yG,1=2|[-fL9?WV1LvX&F;YtE/]y*Mx4 1};},cr5>0jMh[۾{Y'}s¼m.zOU9>J:![ r>nEHmyk:T=8}JdfVyQ"#a͂(A3g3FKjy+֪k/[ FĽ܂J["y-2eutYTkUL=q@"#nD`,]\V>[b crM_`$fGEu /hx8d7rzM""N2a+xH/e#y #slén3Vꫡs~jX) Ud7h䤗 ߿ 0aG4ȧL)WG+M-$K2y GI*\<%(j}Z$oľa{%Txz ݪ8"$$<g89 "lGGJTE\zHzk|/oýT&e6\kkK6C>I>ީ1!!A-"Xo~lwSbi9^>[VX6KodNTH J(؇F;RWpt 8J09̫gsŽ:-3Y v?~K3g: !XP+m»l>8[ pMRiǺG'DJ5Uo]ݥ0)tck|[aޥИQh{wX!WhAg;0ԑiQi@kptŜ>:xUtA8`{;aR@ &urP~6-/pw EDQ$_NQh0xY;eA넓]i`qgJK2#.4kbݵ4ƈ[NXq`ʌkEdF"!]wA4`FlIGHQ̪\yFa|q8v ni0ZkS4X>4dya5K܇u[ HP{ }|֯fg\jͭ*5!u3ftY?b$%~lVxيe<Ș,t&ߍꛁޜ␼%`8);Ě|| sЄ[[?IUPF7?BR#{yX1#$1N?=Mm<ݬ 8mGUՓ2)-t)w6Fre]Q,j8!XIN^ɟX~GD|= '3N]"kNɎcӽJ*s9ZEc ,-= " 6iNuJEA} gaz#zH/֭ gL tYK8*&vnSCpJvG}].R?z2^8FwV4y(Uj $W0s\_-4̧[SG7a lnybJ>mSIx._:!:Mߞ؏  ^uS!W\=EB{cbQHҩ$rܮƞҋ6[ ;8?3#2-uhPp'* ǍEpʪP d.MSa]NBnu<ä1 \a:%~>KtyV'RגJfS@7~8ce{GZ.I;G#ԉGBhbcwIJ 4@ъ8Z z ThNewwt ',M׋G*ky5 _P][{GmeZ=Tr/U;!{D\*d!Wx, 6 idS]hbx 4#/{+veRe]O0B;w",UVchqQ@mf0yO vVJ٠\S FoW_ְQi_)a3OY}|ay-D /g~g;spTzIo92Ioz3bGMEd;"XfY&g of N C23!X%'g{]8{7 @Dl(~$>^ܦ4'j4=Q a8w@K̿( str/kK2i!}]`(l{ 0j v$Rt772Q}jI-3:/[Ō*'uʤ$WĮNƉHkл:~=@MNF;QL*:7[mc9-M@`9~MP+ԅl`j<дuo_aԾ)G$M[:H_{ oY ~K Mkf:T>n]uryq_gS'F=sڝ R&l=RM2b 1قxboUR)MлoA'"JgOjSW^à`Q @]IG :SXlu4+"|Q,@4#_g4<,6M!ZIèIŵyg[ O4 w_BcA¶S"u`-Vj(ɬ,L$_uҧf˸NwkHVz@m"/^4ÁH|6Ƙbcz:Ի-Fhca;k9]`| 5vHlu e6T7@v ΊpubI:tXlQW3&>cAo,ѫ_vQMW#Uj=#\Ώ7MQ^l5G$8|)A|=j{ *"' NCd" rpB*¡2Sfn_X,\BFؕZ/[H~ _܏n{0L=×ܨO\!i&)(G;a3AzQl?a[߸KKr# X `H o~#+1-'3_D j _fQҫ`g@I{V$约񇄛(ZgFsѐf|҂`֌SAlJwzZ>kXj7!MSޘaՔ8EZwqn&|=a$!3t N*l>}V#2Oʤ@%,YY>sCX}XFBުAe (xh&e$ו]aaw!LHib\,LdypEy TFjt s[^OӨܶvj0'q|'7i ܒX&CqFo"*.bu-T0MA7 ҳ峫A(ȩE|Jtѽ*պ6X-ŝT!sՋޮ گK|ϊ{SB7ROJ1k[dǍr{kʧ¦.Şt;fsN0|aH ѥ8(͑Hs|o^}M֨y] W8ִ|[_(W^/(cm}Nք4whf \T)VdowX7$&;zƛYːrhT<X%XL*9oۻejX/PL<3h:@Z`9f!W,= WQkg$Zr?1@]SH`ܮ؀<>:7= Ŕ@b8 1|(R 觤v;>}?Xp܉uB*yYm|ffޒA bShh, HO ={t]c)9Tr8i LDBɋ^g -lk>dfI/5nFxrexjsuثhѵp7E@m͊v~HX&JeUM>gVPʘ ܠ1VIlԮדQ(5W*F0&&&hE4A#Xy*%("?h0 oW^ECDr^6?tTpԎλM-;KP[%rrQM@EA.wyn }b-k,:a2oCrbuq/Nc,Dǀj@ey VQU\@ g# ,$,3 6GRD'_<~ƦV65tNƕ<xP:`VG^3GJ|KlCQBc:IwX/WKq_[Z%O76'7nPq?MdwdN\$fكOFR^'%B(|Pb_}:Ǣ\1аE^R: q5o|ʧ822HDvq·\DȀUS_\L캀ԿEJ2Iی{T'rfA|#?kU:=I1a[j^r` P({|nV\w8nH>j/c^٢!L8ox>ϠLfT8;nE˘A2WqDPklT_KW\I6Gv6]v^L$ l NjL+sSa5 Ŋ Y=:@xV:}d,c bwybYjnQy";{} _҅u VoU8i<ףI*7TSe4{5/\0 oPB &;wd0g- ?D:)jx Q2 -囹XCOV^Y5_s>Uz{"%˞ƫzzfJQb7Gz[܌eS_OR}%ʯ1!% 8xs{?V8D iȄs@t{.Q;'ӌoZ [>2qw Ak;"7ʩl S3UYD#vl?bغ۶F]s-uGVm^i8Obz ۣN7nAy\]0]#Uר-@sZR;}ENo(7ˑ!QKЫ`D6N8wكh%4|bP'lT\Ӊ*TtS1z@;R^f_uZ:bE}Q> g32F׏8`w[lˊA~ԢO9Y0 :CKVscJC:2\ƕPBuv\]$<&1k4FyGьBf+u<)?4lMR?ێNjD+$zOTˍcL {^X9;~:_: a&jhuo ?*ۈf0 KI`#Qa$a,JAZPP@Xh 8BljteLFh#G?GۉuPYf"G;7ȹ/?EDC:J(.(rT 3gET84C3Xtlw.auytIMBm F[`FpKi|P쑕Tj;gf/= LBH#'4iI.-ºnO߂xR$kvsJ7E6Ĝxu]Vm/NF_8-r)t,'DjZ+,#qfLN"& 9MWlʀok h!;A: vm__n5q5X寕oʛh Fieԅϳ eZ- S+J ,um LU8Z@Я"z*a+\z9yν|pu*-m?kbEsNT&DX3de-%8u);3(!A?e[>XqiSM.a&{5m|=pk22LTc\j}l9/7L2TjIXb"\̀8Q&{o])z:|Me4S~AlkT*)DĨ!'7Cěi_ w;{L& N2}z",1;a<:`>? M`.Q8sɵ瀨>/,0y!<[r]a4L˳U%շjh O Ra ǟ;?FZQ5Ϻ=זqB  %MFVZ'B"2(*^li>mAc;2]2ͼi$k>s=2þpRz]}Hũh5.{I_k\cXIunjbE'*z%.mn QXՄqiۀ_Mio%I$8х.@SgPOAR'L@JR)ˁ37J1Y Ч5$XF>@3ު)x$[И5_Z+{,g1Koe\C2!_aDcȊk' ep`B+;1U}傱{ nZrxyav ,ʡXVB8m=Xb}t#̩XB#Xp*θl c85z,g1%iaS8SwjZ(BO~4JK$4`._ƶCT>r$LON*qAoJ;+XS}*Oq Nlp&Z qe50m|{]6hCXwO,ؐqUp~//ނvlN9oʡ^76WITKɵ30Hs1VgKixH9b GҫbiGjɃ ,Mtt>`@#tkfkUM&?$ڇ[?{nص_>6*Sؓu Ò۩/uł0rPvm&fr jʶj=09ZOz12a@߅)%&bͿDx xйDB'8/(DS-&x32l ǵ{ܾ[!AƊ{K`6 BOc%X7u*CC{,OV23\[0P ţp)yql8摅cHD7 ~KC6O3>f:'M hٔ[6Y8"c݇x lDa]!N4jDk/onUKa"MouDGǎD z?NkM[16cٗ<OЁ1N()-N 4I*Y4Mb~UV ߛkg(9$A컊D061^QMxJDп0UMgiM_B:B ςg7t{e.~NS0 !4y+L@*C۠H,andpnExb_jXp/P3,iGk0EDF2 ϙv0p|:BYE&ЪmݝA)tn?"T-E3jl4 phGˈbreRՋ=,Ŀ-S^X #-<Xپ& :4-7n &jk@#feqje+"9"eBTxV6Zho9a|͏fm@ʭDRУUvJJ͌x'^uϤh5"V[fuQϢTOk1}cT Tf412>Uќ@RQy'`:ZdZ[,wlqа[GAlFO_|Qָ}U=D*LG|,8!IomVW~X95iř'eeuDVW+59GRi@aRcM uSژ 7!IGT 'RA{QĴ!IEl8ʹAǩ4yni8?3)l{3^UobU 3WXWё`@qr?"B47fvTI~IH&w{~Ц_&O5!l4]=;/ yi66a0jݳ,L"6w>6sHPtMϽBGѥZW.pwc*\ӻb鳐y?c$g>Ĥz 0} 源2{.'!:`#c=Kyb%V߻c8KbKWU^ڄ]Q͑zeet].Uwq5;I]ddkJ\r$cZsg91}YT\bOh-2)WX\h.4JХ<6xg}Dh<FAs]<<x,.NuIaQ8`BcBIl˝-u{UL8ӏ_a cZ3Ӑ,̊MdKjEԜYc~ntL>A^2a!5 g0c3*Ψ% vS#㝖+hd;[GΈ`f =ΫQyaʺL ٖn*7%^-z~4nU= pʬ`ey/0);.ll!J97熦 I^8WL~7WVoD)PΰS  j멽drb[\ܱ o&_ 3ZNZ=`T}Cmw+z;bPC) 7O@f_^HQ /Mu,kj=m"UG?`1}pvmk8&N. < fdN[O@\J_NTJňͳaP +)#:.cf|A@<>rV~rDGmiүAr4>\=M9}ׇ|BW{, S;A7{_ͱ9袘,] `m|KC@ aa0eqLMs`b? [AQsV!IףgܥD{4oե_ PGP [ mچ€hv=7P#rgSͬaKR)i 5sPz+J76`%I{+yگգ2 .24lsrٰ)5lE~=Q]:߅iu}ɚiN2 HyKAl,~[p*P&$eyP{2}R$NIDV@ t(%k+a?lUG2˄&m RFXK< a6:\M;,Qg)mf (y%'Rڦ"uksxUkԻtc߅KY77EJ&qB!z_gPɧ哶8~UNBa0ua}~oV ǔ]WnOCt>KzѝF᤿?iey\ 덂=kk{2.ivYpkkUqM_*.OG»E5rжypS4yNCi&vFI,4x@N'=Ѕ%Շ?i[Dok9io ddVs]w "$sҀ@r3CzZ-;gEdo̐D EXbP+"U!.c Lo Nt[9oLiWgC^RzGTuVmZRq'8GkH HXbhp{n l8d7ݪhp'TDn"_!|܎O<^m֔rϘޔ8o;bcu[-ȳ%؟;yZ pa@ J$M{×u&cYT ĄQ% %9.*y#yWgo&TjnTKJ5xPVqt2?&̘&ds 6"6ݢtΠ0h2CwAU47`Tcc\yaP+G?6n_b^72o]ĚM琢eWXc0ƊjtZS5K"dK$`p<ۜt.ɩeت1 L"YʿH.ؼwcڽuB!}#2` }c?Rb]=}M̨덳qs1td&\g/^l(Eb mh(iGxQr%*W.Ng<ڈtk1k6D_ A!RcnĘQL{#!qvG7aҶGq̐e{*n.#H( w:I56/hZςn ǐ}˞1c;g y\b;kuUrWa !Xx▦ȯ `flU1xRbI{!.ܶ` +}PII Sp}~:ufްh< F 841z fђJOCFzbɱꀤEA=N4px314P<3Fw-OsRW,xm֪kj*p9<,stcx?ԧ۠i%b1%wfa!Mțma"+imz86]RSW˪`g" sUKZ뭚$ST~"_H5]`pM@Pc$dHzN/-YT= b4!,Amo窉Jה*C1y(5p<7,UterW<+V%(X0FYϹapuZBlkc+kB;Qc0x^@CO+_d6՟^^ݍNe0XFJn358qI%";e/Zln-K>nF.#l M5n&: 'u#o"{Xt%rh#L:J)| %JC5P-hd[zPFʿ uIR%*&8ŋÛA U (ը)QAԯD?2Ӷ=VD%IB]-:8\6j"ڮNvweXGINcPZr?[g"pI ?CS8ǹc"KUt(jmnWGaJX͇s?ʱVE8[[eS"lEV7eL1yTB-Ϫ7=6}JނlHdSI6"0PqBeR4 h<^%X}[b_?՗bZ3Y-$(3&E-kH G@5zZmH%9"b.5_yNps<`p\} f? M/u= [넿@D9`5ƫEr\ Ah 9;MS&"nx\vb? j 8[ ܓ7g]FJ|1U4.Y<9% RPU8 Wk!;I!p$1tR$B_)@w!+\(&}E ƃ8#_N+s-ͱB|kՐ;Q6?[\Ɵuh[QWIpo 4~CԤ!q&ez5Ac?`{S*M-D_^I֎ -㞁̪A!eEb `v2>6IG/?+ҵpY-2ǂ7^-ѽқ=K) dsΠeCZ;p,Kndu9s-W=cU.gPqE t5@/ 0n=qe|UO6L7sQAW,&M^1qCXcl 6 ړf90ciFih_!> BV9 =`P~ξ/ߖa|a\EVߡ,.΁8FeeG&?M۟)ǽ,֟XE/p|8R1 qKLcI9d qBJCS$pB[ BA¯0k4">;< P֒N{.&%!IB|eOdyX찚AL1ى63Z DzZDMwTw7˔2<ց4SϼDB?HuI>gmVJWJOKÏ6{%i5BH<0PWvu4M!4Z5"?<%BS)s?-%ujt ,w P;&Ο[^ ';=۪r$"Dz tKuILSSR.L6sC"S^WalӺHIM; ti}Z>ZIfw:x#~6/S2 qrt=ׇ뺤3Bhdn,@kn@ mRjJ@ÌUYҏZq3Aٴ=Wt5߅^,7(xr=٤Ռ@se%nŽ4E,W~z%Ex l \,c"7|d*s&eti7Kvpy\tzd ]KD~܇hpZ(,uǡyj8UJEOdү)BC~qB1V\Nt\^DotLlj(+";Fz+oх[1BD\,6FO1d =ajx&-nYEI$3I* /@)2滺f^8vjŢ2=5Ǹx{+ۈÉɞIx8?l͸@/]I% 'ӭW4`f 8G-yW:NNKH m񤥊dm$|,kpȺ8hIp=Pµ0{\s^1)tcfqL,?#XHA y]-\HݸRe&an)Qp~oVgē uO<ۙOnp*J5, 4|r±% U;=QɪY䵨W7 ޥ $"(3Rѐ.!OgG6Bv/oi5WAW !I3^3j*٤FcVLXC>/sD=ܷ%+qQt7go=\i-c}F."-ąr,]&Ԏ›OZA >Hm%\ħb,Q%Tq`c {3$Xy0/6~l"Sm ov_Xh~!N}uCD ?2Bo*Bc4cY-.3;jRcUQ0GR|-O@*XG(B5][,&˧Z A - %V+]}3=ETmve~+)2J2[WfXN.Ó;%6}pD)4KCgQ< mыH_JTFHϜUK}h^ѭH)J^⤂]6.&V~IvP , hvZEኖ*RdhW7aϝIWGFFta7UIe3ʹ"|slӰDۓ<2>Yy]7ujhf P%KST(7OE~UcwR"z1X05 Z/@+[R$;v!2zPvJw,n sɦX}V/WO3ZAK&X GePnT6{0Ht__d>@N0F~EFrlQvÍ#,'~9&Zu#p&1K)Ӄ^pv k4.ucCAz#9BZ-Jd\]QI9O9x!#'}P̓pl)13;ReW[:. IU( rWevycu j;RL9kARsXdu ylCÿGCD"H.ݯliw'NYa֦#g Qg<{3: ƫ71C)Mj+`834`Pܕ3MLd|ɣtD73Шq7 S2k"ƬǗ*E$XM.VZUj8&fkS[Y֓U%(Rv MS- oA>*M!8ȟ0܋cflmH%% 1X%.v*ƣpғEN L12wBv7];%P凓].-ma=V{[ m^`t4lPe5'*H͛e)3߹~EL4XD=*;ޱ Z!JFe ?-3WƥBtEߋ<.wP=y~ h֝}'X@Z5Wy2cc!=dY]%dJg%I}t]/Ih )?PJMoY׸u2:v?WV- $9{VLa^]c?^gXi^Z>O?9ɴ :I3%MySqa8 N |(髣(܄8wy1cČGdFoط RB} 7rVW&kPWCV.o2:=(k0QN" yALGF9 _抍֩px4LЈGYwc0ݫzuc`vMSuZBDm,dmbvoK p!w4렵+}:Mdf`0em",~60s'D\ mw]k0R @w^VPqZCJ aBQuѶSOD/zܫxBbw:Iƻbm! ]N(h$'j7/[4C,4lCvcpMc͋GYgi<TUeyʉ& I/%l-G8Ё:w- r7ؒ5d9%5$$@ ]rW{{jbҎsq]WKeiȮcCP3 kƨ?P=kyzthG|?$m (0U7@7n4s`#9q0u>nA fv{7ڲk̅>4CUş6#g\"KT렏#G@t}Ӏzloeo>J"{,ӿ mOic RJC,&,Xe"iz 1T d h%hݛ.ꮂ8B[7nt [Ӊ51.e27Kl.NlsI-]lk Pf(16#1pAo `3GY3Aܔ-&ﻬz]'2WU m!JdmȚ16IzݳR}7>3Ǹ&Oy['l.wy"N[{ӽNAoI̶!SOv]̂ #:d:Q 44N;+>sә7dn"ct'ahPݤJyLyRPD{ Hi ﯈u'A}@ި>oieMoktkjkʇ~;u}ɢ`K +Gno)ox|3$ $&:Ӆ6߫.^IވFq8HY ?VfKHܧjo;%'n7d@+5g)GZY*u[!%gx$L@Wp|sy'х_t=ʟ)A $܄+"!̀F!MSvy6(8 2J"y"gjԅd+-.waOD/V!_4-[<3'K%)(#rơA3q :kEH'T =[$^|#!m口: Ff1t}^T>damMi0KK+Y 5z$c{n xQݻ͖ Bڥvj5n/X;@Pbo@J;[dLQۣh;ȁgac$XiUﳢ(.O:Aj+l _ r$0kXs"x;j>mB@iH([DiKV$$ޟaQ8Dt2:Mɗ>@v6_WfW}{CUxԬ1;k=uDVRr:Nun"'Q^cͽo{ri(ULuVc-$ɀx+_x݅㸣)Qd뽑jP]Z5 UҥmV(;tdKn24\2Jys@$ LK_~x8A)%8V-!GgF&31* `鸕 HA\bDx9B"哗պ v]R :3L6ɗ342rյKϝq?׃-:f!,t9׵>#+;lasWWV|J0KgnK+n@DZnrpY{.}*% pS=2Q/54~h3\ 9z;Zc XNYM^8 Eo'qԦ vcC0I]i3%@('4Hfsө@iU\Ғ䙯iL(?8LuK1S0j%h{I`>̒ݣpӗ&Qh&m._N3fг2E1ɸ=SxVz2IIN1/tzo9 nZԣ##N.Akph}?KPay5qIǑX-CzlP1RS3R~4[-˭wAS ^Y77egEqB WS 1B2Ip%$R)3IF9!YF>QW7fJhOqZVPxkzUh]'G[R>$`5 TPYMbƼ6QV<_uԈ},/fjl [O"ԹWd0汦}1Jǂ/#K!(FD|VY?@ $AvZ]:Es2C]y_颃ZsvcB7akRR#}˲3"JQN@qk֮b{ gzKA}~SD oqRAoHlo(ﮪvS eF2qY5_aC aFg,ʵe#4Rqu]Y${G_9Urm9|¦kӊc{V "Q`h~RHWu/`<+;1O[0Ch֕|D\GUKgscДJjp_]`{ꦮWSr<_>_WiLl?ruH@J}μPؕ-{H rN+͖SVwt k&o~ Rs &)|akg%nd70*\<7=qP'(^ce$L8%#ݏ%%"R ?jCF-:{3Ili-=#1kqǫjM0} ʙb_πanuV[ nrYH¶}w< 5(y薢י@.">#t`z_>C^v:[ΌR:448j,U{kyЮGҋf6=P]K%bC?V't䜝.?^}Ѡ(u\$Dc< e}G}'o8!c B~EMHvUQ#fX9Ga\^;m'1&rmd?d=O_sb03E1?nsߴ$ ^ׄ$}p0DZ@Tby"V*aTy&JK Ê1kJ_D}mzD5$+9} /#O`y! !Ys]ĀidoږIJWI>{duLncR:8IKF9ޟ,-fyxWιf~mS/t :Ē'(D@!V,AEXf؈_̉"&'6kdv<3QT*W!z.ziKTp}+Nكe M7"7՚ `W[ F+Q{OAPs,q]LMiڵ΂`V5bNթy50*p!R" y;5>'1 $R8*Ӟ +Bj`0Ic:C,t|jh"*6MnqcwU!eS{ȹ0R^΄'@2.zAS *]ےˌՁ̿n^&Y}1窴Fn%!BQiIЩ,u# yM\bE\ - m H'L.d~+CJűNpů>>я’*ovs܍L~kL~^L4RY72w ;e9r’ ]RNȥRe Zl̋p (uT$kÃ,j5]6Vp;|] #ZA$%'7~>wnFg/N@: r)?YeL~I6(^R2D>ju5DѲ OV.|D+:!}Vuw+|6#ѯ;q+%{M\8 ޢx#'howtebGl[W,\n GU05&'\zWٓ!\!9s)>~#ZEjŽVY` 3gtYm&"*k@[pzte,Jz왽1 PR>p"GAzΥ|:Ayjtt2dy~wr~KPVYux7IjIbj&]-Pw:>&S&>{u dzODWS'pzP"i0i"pV4j;yr$&%Tt'Jom˒jXEsٕIn`/{KU:G?/ Ts hpm;q>dPJ +P8]L[KM0[8d:1bPt'a$XS/NClsX!7jNMaNy;(ŋE.gj<[w-( 7ٌRx lXyvu VҏA߮vk _*g"ҕcs-4*M^Q4rF`Yg8: UJ LhÛx(Մ~X.`|b"!klT5PHYaPt[D04*թaM{3NEPmb{{MnȞy_" 1Qe%8c:5Mrh 2ǿhB" ב(u] &/nϷH*jPUn_$I'IֹfPQ+x!(Y `&%<3iA@& 'ܦBv[X8rd}$~,eH#a],ok#hoߴ|F~H6/i>$C|$ E-gw WNXXPXx89 sXw@T QUf~8jLCP 8^$VKgeu,і;%W83E2xXtnn-uܵW<7ޯ\3ԺEf1RwGF\^qu͐|g%s3]/t9P+'I pZpGw'"*@|Ψ( ?$)aq*Q[RJyTL_>!s1Yr:UHMb(p~Cqs+ F??9Q?#qj};R߭w%RB צl2}V"A{Ya"Ƣp'T,^/k~V6xdc{J}^rP519uWSD4e%ЄEQ+(#0BT'[.W 꽓8$a~I/nVn~ bRd2OTn7 B֐\< ,YB>@t;l|î\p5 DكoxLHXe .GTg\4 O`&iKlMt X;}ZN!r"RftP6++ L|`͈>εT2@ŊЭ =Q% -SКd֏>`9{~3]ѥ~KDՅ9}SnH-H^YBsv ODYm [ <0ͣHlЎዏFP~>^K]5(vU.LPS[T1ݻ&UmЗ,.R{:zM(Uv)\:(uBfq߲a`Q/jZGzdQ2ڞfV*P`h4 b=0TnlSy!\\;Xb *մ&_⤷f)7vQU(>THV%WXeμ9=]cqq_\Tmu;D_6 &itĥ`)YŐpFOZ)Ұ)H]nQ}0gq@YvRRA ro $Mh r"PuNn_QAD3{k17R[Dli~$Zdמ(^Ӱ’ KA.t?W{n}Qhf1: :"2TZ|0;au6 ^ƕ5'VWC#ҥO>ݚ6{ܜ7S>XTr=1/$9WH?Q Yݕ(T/2Έ@eC[nwLYF痕9t[Xm!{c4^]-V$P1c d?JKN&AY@$ vڝ=q AXƓ'/]&Ė/}@y0-`mOgU?{992a"ՉD*p<(l9yO}__6X+1V?o5.d0 sܿʼn"&xanr))7ZG@<lo )K6o@]K>*3s#ʑCL ;""VZ+F5OR=x]\R㡥:YLUr;׌Ev||"vn\nBq1G%LhA1Ŝt} ΢}+^$ޯЗh< vo[hIe) /_ʥ" ݻ +\ tPHCMc4R҅L,QSw)BKq7k1B5mcZg^OV)+B` ԊZi4deߚH=A龴 "~U/z1L0 [Lm_ ֦3Of ֡0L@%QA/bo12Vhˍe,i^۫,%'8< ĉ.tOwdQX𕍢fmL`֮sxNK[tKjU!` /I`pϪ}UXk_XZ`@ :HqlrƟ;v56'bQg˭'hn U=#rH#9tjFW皛 8[ 4EȌ!qf"7bF"M>bXbd[!S zU[av60[2 W lU9N9Eq }kн'd& Æ1]WIg$j~v})]h|-5)r!͡n;ov3EA`{܋C^+\WB0R!Q^Bg0R|[B KBo2Gc~5ig#6Y9*֞/#&Z[!nC,9 Xk\a |:+|uB_rٯ+䐼γs[^!O L;Xqc-`QVa*_62ɏ>G砠k̿q(TTi Oa{ܑ= fsPF'vh)Wu=yôi(K,L֬^#0 Ej%AxL],"rntװvV uŚb^Ds,rC2׃?-vN\@UW-崧\F6ڑeoȊ*rxyrQd 3f`>R-K`];]<@`qfoB&UFp|+(PfdcB-y_+kca0f1G&cF615&K6hMøfH}i+17NܳI hej[.N[bZ(7G湒t5zUlQCJ I!qwsB)Tmw AU{Y,cYRXқ )e I_dd hAw+KS᜙<)գ}y dt65<ٟRtN~}[@YjH @In,f:Q{g㞄U*pX .>_8xV56)e6H;WYw:*4d)eњXubiL6Me`uF7DVF:q]W98ah<954u'pr$?k'H ǜd#ޏaz1 {gl4'G^Լ,i09B'\-Cv'=~i8wR?MW'^˪x 报ejL#攤? L3ب !}u+Ini.7EՄ@ÏptP- ʂdX r2:M]XWI\y$MvaVNMG 8 52GL7.:2+՘!s@'c[Qokma.}Qtѧy- >.zMpZM=5ʹB: `8o$f_3b zUGFpfc iSP*zCtjRbz$l" {jjUWn߈4.Xn2%&Ԅ:Lh O6SEٝxVkPB|; Q/$ ;;'K/̇7_+cb[ J܂0;Fjϭ2iK &ϙb#.bXIҡU,4{J-UeXwM*"[+ʾC\64uϛ<ng'g,YZI &翟y?r0E@1%be۾'r[˅{mC9*`zz9-P)L #dOGˊܕY9 =f '"2%ˠ`Զ*WgaC*K e7 pA6\c ^W@uul6Xh1a#X|dž$fCdڦdi"%ӰioD"jPTp0@vv3rTV^MuY0M&Ħu bg5j XJ'kEzE#Kol)Kgy'夗-)W4 u6R'ZZl|i_ŝGÃ:M`vmFt!\C ܈L܇ctݦܺ P^ OzkȂ߼x' ȋ1z n260y`׸{xJi dAqAK> <̺nEEbp Sm~Y%`ڝ>:6+IZ%͉VjtFuQqU0@1 my{AZF'0,Sj 뀀%2<5T8@aB~׈ 9IJy ZZ7ja B_oek³c*#-GmK}9?d"BΜj5f݁~3se(L(l4)Ih3zX.?wZxk%&iOV9,TLմ)fzβ V[ "2!Z~IˤNʗg7a ҨL 7&0pǶKg_׽|>QJd'P]̎]=]Rdw/ĬJ7@D3e)dWd!ǫ>i:a'G8R',}83aLEVOrM kZm+/[9?e? 0!)8$|< t=L 6LTCX-?%K[X3T@8yY _l u6Xm >3 %FR VG|=Yь=u_"e!R#eI /b/i^˷?$d]'2O6VaۣeL=l0;|0|&Hs)U"q+ҕqfvN8q|^U>gX&sg{ ,@QBjCNgb1 )6>Mr }]_KQ3Q:x%5W3i 4\֢P>=7@W|xxNKB "B=fN1R0c~,ݐ[&R=#%gw g lj7< rnW%Jup8Hk'*8M9/03Pl4`1@eYQE;Z! 0p ! {~osΣ$P3 h"J$Ós#D_ZE1=GM@Űڲiy՗ =טN112p:<>B=DyhYts ~_ s-­e{t͑I 03>iv3oFq@jBȲޠrR6 T<:D{ ύE@gJFܩȶJ8<IJBoPVuLUCY"qFS|氜:ݥv3Am$ tU\h?7^nscYdb=S~ik5Tu 6<,ԄQ݁s"n!K|j~D;W<viC-Bٓ"E.:Ā6֚k\W8?q3ڧ-謄LD\_ b [BX ,ӿz+b3=2O!!@Bk‹e٫t^DGHT^=@"lʊt*G.}T߀^dƋ4Ɨ]-ȲnyDgYEC<@Zwsigv+ _:j yc m72/=B61=Ґf{1I0e˅U O2QsП@. ڷc>my};%8Ù(3#k:8~M"0{'M&]O$~CD霪XZEë:=G´ޘ2en=A-duIhs8/%K6s$nA;6˺)-Bf/q4^IM)`!KhKEȎ~TnpEDaQS&_vnq-49ٻ]MۣN h:,7ȭhaeDøD5Qmq!iYt?z&άGOLp& P{mD6 Ȕkŧ4iyO>j;,ic.yy(L;˫?3-.Ѐ^Ɉᐬ]xUqE9Zؽ( CW0rsXM-qέS'VBJ[" N7LMP(xԍȸvGRuTuf=vY!" ݋EٰETbx1~?E@5i#B?lEwsڢP hLKED>7p3F (ݻx;^;iYcqtJkl5y4?!QθZgiʁ Ȁ "R#]oo*Ōn2;v4_-Ur 4vkgmj9Ӗ׻=-5WIiژ\V 11qAr6l~5res*[K<UNWm6n(fmܟ 1P`;@+TWe;|XـAJ b>tAi yD^{{dP<O(sf\uV.s=-c )@rZqRo @hPP8hx4{do 1 3ԟlڸ"&^1cV>-,uVyw6IT խi}dƱoPRKY.,C @%[|ʚ.Rtǂ߂ڋ KP8>t3Y76 t;U`T%2ȆSD t^v4j[N,/r~. 4엊)H"|y>B$%nin=@ExD,+|]xB4`v24V'~ga@/Px(mM]-wweO=v,#@U*.Y]|M Q~a*4ԿhVC:Re ` XAU17FA%<""uZ#1)EGd6nn:u9ww*:Di DA\B8rhk `6]Dɜ'2ˆqhȌUK|2H)Mha~B CIM&/ϨK]+IQn_zw'EHJIvtiؿa[[!ucg^;xs4VU '  wC^=S'תh4ކ[0 ŭF[*բ\dSi} n|RJTw}7kiX'=eSw@0*NlD~HPZ1LF`/z!9\T0B̔9)=aeǀSNY6-В)ذ*Vz9$tgU -  »kGKjjG g:T*u.zXȜ Bae9́#(W_pFH%N I;"A_uBԲ15D -@  Lg}pi&^)1.bwr?:+ Ү $@W_l)y.suh;טcxM'|_R"V=CԭegI ތ|g;#+ilJLP|P7-.G{y`ʰ^ʦXcc*XU4e:obkW+7d!9F a\pSg C{Iى+'e.:У 60o--- bN>ǹ!v<(KJgN\0 n4E?lY)rih6~0` %GtG9bIv}%P k&$νW.h9/PqDžZC}'{`ua@Lc~ >f0cZt2t2aP%Sae{vFa(|Q0iE֓_VTk5wʓM&\WYcӾڔz+;jo 4*80F#Uqk\Ӊ/+[JHHĶ_Fv @׻!h3t H6$~"Re9T-.*^N pmhe@˵^mLqUAUOx c?3} ( %xJG}-C}в*qCl4TK"mLԲwK- 36))ītv% ߾.|H>`<945"o+2O r ķP9a@V5 0CP K L"}ӉPHU$Q{BOF :},g~[,+K\j 393x)q5ab4Ud?%{(̚5C@djw%pu[ߕǫEmةZ߆;!޶G¼4-$mP%.~}B57 ? \jM$e{jm[f]OƤ=K䁒uEb?s͡ UȚPI5ÀpΧMNP|fGlkq eHM=g>'N&Pվf?/P0x)*uYvH!B}~4z ;-P4žݞDHWDYAQ%!&ϬTG_]I3a,' *F# $P)T`Y3?: -d|u#Ab/wn cWZ L;{j3 UV¯!XuċF7lH ƻt'҃ɗ/S wjw<$p;J_0 I]熬Rͭ1qw":]&u(L0SABJ5 #2:h1Jͧ)#X:0M`X\1s@oM"깰]])IrعĐA M͝0s7v@LOBU"l<M"nH4j$8:`L#箲XRq`Y &tZO3_M;boJH/!*jkpgg'^xx@X7@Z,:*6P RXa!APbqגw!^|9_QX.Gv;=,RRy`E;sk-:sNHTjvB ׷ ~P8Lkj?LCQܵ#O|X>b mma{ȣbzZ?\]Zy|qqzV3Ӿ3Y ):dƖeRG_ÛXE bFŝ9E?fVdbv>њF2~/`RP#n?b>}EcKT#oSi1M:/[0bi6@uJm+_]@"rVP$r7dhl+'Q'hD_)gw;=G=yyfpv#߭^ >l*CC|003{*~0#8ʊÕ6}׈ї|`* M:)dblh\u D7V0H"TKz'jukBW$eu)|Nּ_h~;7>/1F݁Qȟ$ìB@dkpODY=kWUqRe+.ßpc{q޺ F]7GnNl54p@oh֋ς!Rlw,ts μͥyCS1 S s9GQ@pvϝ;R@Peh0 *. ǫBk.-omvx7D IǤMjڂWWv">%kP׳hsb .B4L>9U h Oo9jP|Q'F?dĕrv]V:V-?zX{Gh@0J#ϒ`_…\eJR%-n%W "'-H%vی'UJ2ac(Ӄ!W>ZpAm7/p?ԔmkN`P_ڦ,l-m3~{G"%DMs386 nИ>BU* BRqE@P`H=$ H,,rIU-27K ".֛#rI"E%fǜt Ho[;Q1EN%\GaK8ӫذ.Kc%N[MA^:J r^m`:qzaX֟dzAh (tRMӡX`r0YY!CIor `=aOW4iq*kl^Z2g.-hdߌڈ'"CԬ*O'MF*\SNEv5|,MޏIC~jĴi\;ϟ' c Jn̨k`IYհ絇iDKb"ҫE]9y;qIZնh'e6u-/c:ջm1卆-T|)8[]3g6 ZNٓ MFl_ 9{WcErI2_Z/MXLSu"X&D.zʋ\Lѷ9<9 y$fM`;|12@<6*>#2gbORكxZ@drƵhY^h|$$ 쏳3sf>#P< :7gI?AzyfeKmRe ?s5 ;G*C⣬K'$}PVFLCsڹ(FGO,] R-̤l-!ixx/_OۣNցQAiW,¸@QYBc"a|j |0aϰ-5\em CIdhu EgiiKz1 eRg:kTx7e)׵j4ף\}J䱴|:º O{|W㰭>,EGi'6 =$Pʻ9zyRx1j=a^4fifjա|^ TA\pUbsb;gXKjkaU9cT/_Q!OlL_*34wV;o .Ĵ$jA&IϚ[H мWgA}[~SrR7Zu/jz$;QӤHZ1ǶIb)*z% "{luH=ݒKnSP:2 | f3X#_NAVUY|aY9zm50L!DhylGh=90G?eT!fC|>6QSz!5{AN8!*I "$>}2hgT><&qڙ8#%\a$/w96 ם(@JURB+Zܜc) oަ: }:1tLL+֊R0/}Ĝ)0Zp+az7y~o-B냯~ JPBv#r6鿥Z'd1[ w?3!ϝ.N(ʯل9)#;՝t֭BG(\p08ry;*Mp+q[=beQp=x̡\Le\ȁCb,?k5騨 XQX ui-@1LS+~ݰ<WžE5Qh5!/퐴zv;@O'zTgwQ;pIL|l3budu0j%0QYwQDYuGO]}6+:nWLaU uq|#K̿Q"coGKeME U M?xב Đp80ڊOm͈2Jf kC);3ZB1ZaoKaܿOʖ-HJ$DJwi)!(F=_̶_)GE#S'64MMo;+f#ux n57&սR~?AVY9>N[ddI[Z?gFg'l0T ž@01&XbwXLGR@pAUi$|Wi.F3`@;|GhAػ,+g}߬顳gTɹ$^})#\ ;c`wc<mK5Sh'qU$^pnh mȰpglm+ZD-7EPiNWHj80935}[s^͎_#qF\6KKb)M2-̕jAº.kTo:t7?(IRT7}TiIݛ#굴TƐU>]K "CgmXbX ,}_Œ"a=)Wah>$ w`p!cQ2!u @ozUeX]2GBUȬVIbY=Ns4N$Jm:D:N- ! eenS+-C4C71yAP H ;@ܮR bXF_$N]b`o,w#Ɣ^՗($Pq'$X= <o+U+4ы3ыRnֺ>RގtˤC?ڈמFXظQ>%%:yh GO7m(ge̸%Io}2G= x77"0.0}VH B ˡc.y9q2qԾ>E;AF"g{%)ee"A%Eҝ}Sx\u ueV[Ģ07iĢQKK(o?$-c$PԨq[e ni\tgWt6Q:v8#1CkabWF_ic(f~>/,Jl@LZX@{&.WM#_㕅R1_&y/oQ%z*kJݕlnpIܪN@hN񎧁 "TC)vuBZ*cjV-oXkR cZK;;cLuw$zs:@L$S;[l%Bad|HӰ288,n4:LEf VufSJRc(D8 :"@[ Yo~O}Qkzu52ބMĘ+YJ io:';q22N6T)"5aɳs[z*r|m.&QHj2{R;I9ԷS?5vb@7 }DoD(K>g7jn-^"LsuA ffuIB)w3;i⺿`c@9ݹL4.6HƺVgt![S.hlT.~EMƞ#J8Xx8ֽ~tɑVw}l kؼ]+r=h#7bCU||Ew{tpx+ -by[" 7 u0eܶMkf'C&N]뮓gkySKF/]证EAyԜSq>ȷT –od3FL!W)0BdTYjOɗ͐QWeN僯 lx3.:`A^YEcKsU@#/!@ԿhQvWЗ<`YQ exUx֚HM`^j (r)h ˇvqᕔa+1(*Q+hbV;עB Eg|N7ƶ,| M3SϮ ٯiYZ t]5~ָ{eTu' t Oا_xvW %gƾjx>޽]XGI:9nlq3%ۃZ薕n{[xW0un^Jve!ds9K.+F Jƨ5r]W'e*Ȃ@U.bTZBgxάF <~xA^ڦƁZ3 ÷bG?%#,sOeƍ;ND̆ GX4,r}v7r}Nl"&SPj&˨ U T@߶+g ،T}jDV;vkÝ[m:O}|$qfʐr J;U0l(|L-y,[j8ԵX (d#iF3?-bA0[??zaaDS۪c>ϋ7Ήwt{ ՔUcNۊTjD:,dTm$hOP/`(`~c")01-r$Q Q87R!\!~r)+뾣gl9>PdySr|[ P$5`2QW{8 把(tc9K16ij Зo;K`Ï1wUX&/K#X8r~,j$=՚"mxu^߸T+4m^c}d( #oQwٲCVI=q A8"'o \_0]jAOs^83m؆/@TExz+" 1$MS9сޠ *]&M;~f+ƴ颢 nOp]~b[!⑇7vP f5D9&nU"!=N u|J:jRV6y[ȈKfbARt,Sm@D0BG{CQf%T(F2 K#u#U (?N`뀳#M{k~^\Xdج\f1q;)U;a#hzbT*|ژu[Lpח?bGEuNh^ލ"lI>}HDhKN"ng_YkQt|>"$#L.iܐbQI-9Z9˓a,4p5nPTmi50dUfdl b -^Ox}ՀY8>қxF8 dg#%nQKr{w8"pX=e4>ĸT . b~f|nZW|lna ] TVeDKGO`))UZ=)/U<ġbU7;ئww[z:isdLjh%s8brQ~p&b2R  A]bZm@olp'm|lNarBG P9 v?3$,PVYMG,a} D0{022FM6y jܴ\}G _Ʉh'Dkg(""j1^]\D=K/L$g $6x(\cGS bCg(nѹLLcpstO&`RO[8yP} fH35 釲e͔:m6Ǯkaa F`˓+w ISbhSXuH?L#GOb:,.H6/*lQ❶?yH9UX]4=E? y[7*z7*pw[5:Y&D,I\ sd Nׇ2SkFV"7x`*4I|VRv& I"K(@Fyd%X}CDRΏkxϫIzoYhj0pI`0kp%BmUsJk$V9B֠/HWa@9Zwz=5ٰH]^KI) )P;F> Iҧ N8+vW+DvYZNGpm9L5}w?l8y \@b&w2Ł'2wpOunmN^}x{ΘC4$9%k%WR.ע Œ7^<&k"?El)!L;mY#O~S?Cy!S@U%"[c /=I7GSz[-C,A'$lIAGmg&"c!9ηbHbMtq#qӯ8ΝvNt%U:LfEe $U5Lι/n:ѭGGXU(=ZtVnUHJ5Dj:X1kN n$dW4ﭤh4+ ܡOkt=؛p ]%V.?++!*H*\M~щSX{Bh|I ~{ElF .Ň%@$Lpv[ZPƫyng٪ (4;ޣ(]b'.,vI DS&^r%1.dݽuU6l$NThɱVCmG;1^ =jmӰܶnQTxjwdDܑq4:بu-> nw(мhS#CkFqP$yid2qo ~~fL߹G5]p+DwVP$8\nָAox$#es )j +l--ZQ>sԸ)/= 5P$rǙ,-}cx#gbB_e>AQiR\f2“dqaȴA;ZrQ^]^'\:+#ӻM%ƘH|`mפk9 zY@t RD7X'*M{yfr`lzdYXA`+ŅrgA٨@MqL[>'ħdbo-<Nd\ qMDHE`峗]U/ ;ū"#M.]O; DZ0!һU[=^hRa}ՃbNIK%f: qJ`҅6@L`OCaj3Ȣ-+Jڄݗ'ρ ŹCwϦʰLĢa,#j_zh*/9)^p(YRDdo';#>$_]ΆZ2%jg'MIJm6]v׋ęrv6-"a3OZG Vy |Qh,*5[C9tNW@qr5EȞά=!CkTf 5>wNM&@n4V5dSPuJ{K'ؐ:hnœcS5^`gS%8Fdm ,Ş J2(q?W^c5[H·4p9avk|u09"J\&&p+$Oa7[gi=`1#DF~O#E:<\Ȑۗ4s'6{ &Ә_>:JX9rz+9aϜ"<@r _5); n3$GxXbQ\JɦQ4؏%FD-_"[w 9ueRoM4%Q\PŲyK~zS6aj˱My Pg6ˮ +}k3ѮĻ$Ew#@djz~?_۷AMkr/.꣉Q΢MAJKd?:Si58y,4Pgۆc3nIhU?Ӊfz[ <˕̉fjBeLpF4ɧ^usrJ2=KujS_JPƚ5e#d7_Vǡc g,~0hVJ #Ę\Fő|[%`%XKZ/DJ -B} 8,7m3m`7]"k hI'9т`ҩm*p&IȀ4.JCXm۶jGACArńUw.zM4#S"rPqOު*DR(Ed&U R\fz?QF\X MeR(`ںQ ap+xaWDvI OMb?}7%Ԓ,5+ǐ.tް<~my i&T˳h7%> +mfU )SZ嗴eq@u{~E)lISXjL ߮F*]e?j!i{c2ԇXh!FR"NjOp+2q*i?#;P07 "nnȕ7d Ͽ%#oӨW݈SzvI/  [TY3ukj׵raaƢ{6̂L6"4?=pT\NyLѿaۤ5us&)dJk<2r{3'K'u /yع퟽jVTʫK_ ;`2vpo[FHžspȩvշ`5nYl{uMS#1sKm{_qGj (j#2i=7$>,!| )2"f)RQt v1U8|s T}O: ?tP9'ex'g.nbK'Xm]/ ZQn&E~_r֪݀#f1?n 0ud_%1`)VuV'Hxfve 򰐏oaE,`[8\˳VB1w?%7Ls|*t*Xt- 9bb-#HLj&+Wp_[Ԝ(ȟ0˙Е-ַy&y>8;sH9 q! Bw&0d͢Khҿn qQ'Crؕ{*6FR=FC ЗKqnZ>4[Ƌ,Ǟmn.8}_(WŔ.4?mʷYr̦#P>_s`:۸9令3xn⋖ d0~]EI8\-Oo*Bj!W2`f@> SLaEnK6^KEHQ]*0J2|8ݩN H BB(oh  C5huK\$DKg^Z0di궒T [Y`*4k tϒɕ*A4:!_Xs`iY&?~7X=בC%U-Zv8NULW< &t5$8H~Oaz̓n\1E;{7Ho,I!9عI1Bc5{Q@CR÷fr-vk%/psebnszuo%v$οc7u3KG6aV5Lagб Ȳ&'D[g=EWD2VϒLT7wG~2)(XFʹt@!j9DZ:ZF<]z& 6z=hhK8#V|3t֎'#d(0; E{GChoɎQѶ-fDf'Sk\¯h}*V,+I)+,IAWP}]d+AT^v䅤w9S +Њ;i?]ilpDNp=9`F /!b@/9#Ŵ^̄Am}hg$Cm,+aJzESL:-kn%H*l%laHʥk"d]{;dw *(~ >TQ4v(lvtnwh"ԋ]bsqƑD︉@k>a2x M 5@t R/`72ڳ-cǘ*DO:VE=n)|- E>viA>o_73nU ʍ{q^h?HUs0Pa0; *k~$"OrM(5.[OD'e~?y,lZŮh=" 1pvU9*G:u=׍n#ܾ҃ΔrS.X:_Bx'7D.ĿK{Ů,Ҫ2e^Y_KYz AOg2#ָ9lMN`ia< dT'ˉA|SG l%T*ñN\4ĮwK.B!~V:NGMᇗv|44G-doM4:Y4Pd pzs S@.U%`SK󷙴ߟ:FP-+eN,PToCNfp.I<eVcg>ƾ`VW f %TN-FVBcdX~2cG[:zFBKJ@^!okLw`ӣL8 .FV* _^MahH8OtdZ4ޗ'" ~(^ՆBȑEiU)~.7KR2w߄&[㏠⣱?>S54 {r]n+guK[ҵ.fMUB.d\BD糌Ԫ%)%\^b~-tǩf攒T7Iƨ bnXY 8U!st@>J]bZqʩN(n&f2@o6~@x?|֠^%G-XGF:%Al”E_]\N"«/2"Pӌܲ9s#WM)F8u%ٴ 9xg<f9ʁ"d7.^Ɍ-+Kt%["˗I (a+޻;t@YQS >n% +?ƄS+]X"؂>|kY2RA{*PץR4wMG+F*"eݟIn:0@SYrvw2^οoQojBiVxM!BhEy<2V/jIQiO-Y;JHFp%@r[WW=2Mϋ+f|F{s*ݜ?,6א`|}^utS w:E~?T(I GQDT5>ڙ|Hk`ĥKa >-3}1(T͚>>8z |#Z5LŜl-]O+O{R ! [f2ò%pg&ğ{:!=%ǂ;3x HhKM<[gTD.2βZ"k _ԓs%}t#,f•k=d hI{>"DQ H8&r!-r>Q1Hdбf $O&fx Գ=g3RZ.eRvwp- 7)Z8@^!:n~x<^S$b/+fm ªcL]wGSЬ*,:epݧ1 *b89l_"EȄ?Yk!UivAic9`? ҭH$S.~R@R{7|$V]~b+3_8n#Cf~TWssM*NvܫjY A+%5hǏe*Q`# -AU3,ƴO pe_;Xi I g ͡0r5DP@xHJq\~[o'G8ҷh;arem8h90VXJ 'Q.j'a6+y>ҥo (o@/UpQdf Fߠ%5,`CY|+J,/V0J%&59Its\$ܐnHW˲R; S{̊tΛD7hFsH1B\pyBV׾3[%r]Zf>_䒲Gr{aɑG"箠ǶqO8Z ȇ 1c/L|W>.je\Y3[+ɵ#KT{ FhA~hYGv( /k)e$at>|=ݹ2fs<ũh = ]17'c^~ز9/$e*W*p7 ̥yt^T`0t?n^O!s3>GcX4I1/=GAIzBމ^ Xk )ш?0q!U\UmC;nh#Rہ V3@9T~"nK tmc̭.`,-1 &P?9 'OhЌJLa].+s%)MW77 9NO%4⤎h\qiZ-}tA:$&g٭&tno"qh3`cMFƑx38gN\TÑF[bK')=_ï_6,;C.9*I8:qx`Q s+/A콟UVtO&s iJ8},Dze<[aG(vA]ʮU胠4fCXPFKURYVd>(dLХ3W!s%A)M˱voDw%P?}]=l~dCK D8J,!>sbSpd7a';e4h ѧ+E1|Ca (ez<< :yت;6TI wdR#ӂ;Cqse-|8BIcT!ˡ6#N4qb}ck-4._˴ڞ``w4(FUn_ab}e8˧:5+ +wդhwf#5Qlil_hm@Jϥ{U͇3LIU 5 RMhM!xVn5ýcucgdiDhNM7RjY>B8ÁmKMg.N̈ 0l9n Y3+wU,p\ 7DF83^.+͑GH|P'8H .N0zFK-,_ wх;vXH= ؽFgu ]milp+׹ֳP'Њ_e" gc5C)Jr|e+f RW)nB_gQ5qGcPfZl )m3$Γ}>U #g:(^u(߼wQ8QYC}`zۭ>9_012`C&?)2Z`hԭ <ɠ%bBXSJUxJ)FkɆtwt r8j\rUUrЎ4RGХo FZzcE#_izy15rZި9Y'Z_{4:xYƌ]CP]9S]rV%&v %Xk~ɑo8񿮧r+i-XU>c(h-j GESgy/|F 3V-m 苳[Qdž4wuyuڹWo眿;Ad%w]}u6ѫL&:o"쎝A3ECr_a+cd@$\˅9ZgToMd<'F̫Dh T= 3p_J\#1(ɜl.q .BJT4Y!V(˭fv8T+}<&bm-ԟu ]3?_gkВ 7OR_TTJ_{Ry/= Zσ,3HPҎ@vW<*KyoO'm#U ŋtJ'&Y)$YC,4[(AR.W㷵do*KM+,O6zA;M yE%U֡ d/RD^A._r@My,:@גA DeߌK\T,1`N~/'}aә I?:j+o<qW>~t~&aKړ]MU26_NA> .*0 ВgqMIE=p۝  VcHjEr#]\ __r"/u7iu>0O۩ /AI×VK񪙴Rp^~jF?2_ # !1f )ܰ5uL, @O= e N% L~rz1geݏn^DrEX^\^uZ7•(}Ⱥ0ajw^6Lyұ/߄dT17 Lw۪ ᎚ mw5:.MĹUAiP%ޕ0aTFP>gRi>&xG窨#Τ}3 #P~l &n0$h5fDk&m_ `ftt1?\goBMLyp~t?=ERI1wg Ub<Ʃω~u;qbu6))M߯0.#*S ƍ~(p<" )N?ݸ\CwF+ WnBk+:\0PGc8x&حVPQQn'Hj+7}bc)6eӁ\ñOz>e2Qnע,#%!w7kzE7&FR/?k2 F HIl*)'6 %%Q 'ѳ *n vVJHsDq}(fsey3ެņF{mءd3f!ݺsY0_i[PW1M7}[g1Ї8)fQPt!l-+h9ϒt+f24_ /\ w]cM&=4&Ȓ~[6"V7vqb^:fIrJ[fK y{&3󒫚QZ~F(H]B1%^mD\_ؑ= (ˤeVhL EQ) g}SMUtvԦuKiוMX&Q >XiO! >6._ք;ns?|zFn"l] Y`w'SfrN27 ^$YO{8M^ŀP5TyXNMҲӄ{l3@ޏ% E09I4)Q-g[o=h(KT|0삠X<6 J2-rnm+࠴z11H:,Ɗ$%`QeU1)p7~3vƔɗ2vcFDA}m?[vsx>܎_TTl\@W*v9&6 ^^[rEɟ,tŭ~7*%*MNZfҶWQySuq]ׇ5 b`<<`g_X>@žZOq:xay6/d+UHj%4Y{ȴֻš*O0QV_ )ɻU7_MIqPY ap|v8!Eid8NOf o LͶ2 kYDgV?Kes3?U!#pLK5l:&c$`HAMύegd{_W䌎$ձ%&U"Lw@XzB{qbZ^u+"4fE$ > ,?ЎjI+|R;m:#[+޽+V f["pԻm%@reߠ`Vqu1(IT]{(wa4RܖLou+kNi:&/ۥupv[;EH<l`Ҝ9c!q!Vnp sël]Lq5:sS?ap?J%H9wG C/GO!!>K|iyVJ@'[_SQ@ʾކEYm9]l_m–叀@?e%NXa&'Qtp_dDCXgT5.d{*Рzg׎_b,5_\nn"`ܡeGڟ!&1\Z2'oQ)UU>7&@ uV/w NJoEk-> ]7!MxLH(A?ps&7ɶ0p#em /A@7 IUI$Y=@DǖZ$`@\>~$rN/WKaU!wʙUϤX3G(QeY{}eyi55A <NՕP.Y6ƥ`;pי %XL $Xu]?DFB8b(3rGQOa<-, ?˸ư 2LxGRagzL?uEHncTF m4y6Ao,ׁ%,˨{wM 4,gG;b\kJ#mq^W8/t@_ǝ2n,za/+tQ!ߑ-J9t-%b_^@al΋/PX\o%ZP$^:h J_W4Fyjis6"my1CWF?=1 .mCrewNC8Gߍz IJDtӲ5 ZL8 @uH|HZa2[Cwv8d]ܷ=[ S1f~-NW`/@modȩz#h,](|⦢HϮv \0Y^ϗ#0C-u&y1*m0Aײ0xGY#omݑ>]j벘$ʁάSANPr>f>ʛ;tpΏBPM2'nH͘h}&hcǮED?`.8ԔwB>=TW{/Pdc >-y8yU֥ޘZ>v2 c:և]VWjrI/=HY:Y0vU-oϣ޼ ̅

[3s66/Or4@?Hv $Fqpک YfD:*ī1l a+m @,}ky\1;Yh% z<|{ oSmz;U0$ȭ){` N.pRtxc 'ES˅Az]=WUq6-ƜRYTp? }" .*bKU{Ԟ#9NnPVl:f1+:6OԀ|D-OC=짿_<]}(i u7*O >@`'b 56(i~T+bs?ㆱWLPk[OKdj.Ύ5Ib*OC 6Rgաǀ4ÃiBC/W;XEntfߘV/E#Ad@e/u 7;ߩ\ Y ;ΊZkյ,gxzdXBKaB_3rbFLq,Чf(#A"[yIGiIg[T ZU=i> M\΂OMJf]!mn+?{e"Kx T/a6~%%h[a7-ްu~g #P)gdoAiONmA=K`EzDK5gˣAJcJ6"1.j3Aɼ=ّ4$ŭj]cIb녋sHEfoSShSX݊^" hj`u10g!nsR~j'Gxk=;zL 5uGG~'Pų+3yHٚK=Y$l"˔jtB`PwU Y]A ȟ &L çTY;xP! e~M3[%+Ba87TO':߯0,8r|rJ r= 4L<́‹b<8]kq>AkjO2 [8rhA:YucBP4&@9xg) WDdj\~ v3@~ [J35"ċV#/.W1~wu匽%i)Ni!^VTzt6%Za$ssƮX{Ȣ¬ ]6/|=s"EU5.>dfI$I5iLD-̵D^ /G݆^bw$;%,YkSQd@f:_ Am' 151S0cP`*u/Nq;񋂢;/KGS'>NarW-5ib!%M=t9-uaYBM-mEAhZ.Rbzk#gvx+Yk0W$1xeܻ+/ЩzLf,pm"/`{MD;.lNGYo^fF? j ЧV!&(n>^tht''<(M{J")`$s㾘 _3$? y M` !B>4] T+q[a['z >S^K1Y[Sv g)2}xQKOWyQZ.Mw#P1Q_:OvQmG_ *2l YoA;MRV?Փmvo_\ xIxEK5X UKZz5h#֚  q\\ٿ3ۓ[s`$=MnJ]Ț9s"&ONRҐg\ݖ.mR-((8SN}jk@Ķ "i}{ Naݲy@䕝JɱFp4[*.֑;P~QƧf,JJw!(+~&icBX^nBiçi}!+jiپ c.kEIgE||(!AAb>? k a]nSq6pR gkSʉO,4f=;zK?W}bcJDgNW))lv&B K.Η+m_]:Rp*`3ߚ6#*H 7kL|̸@eC҅ 7f&=)6Q0S:u,SG~~_ܗ+0zHThR;94IoH,j\O{$ql! sV;T}&v?K J V+ոkTPl˩X*wQwYW x1:zc$uooLOtw.!@2Y_~C*Lut2hILh#.|TR6RB1Ҙ& ^c^AZpC 󿪳0cp`0 8 χ 8,jNݠâ_,i|t3shy`T>K[֗HI,1lhH#' 2bUntXltqv&4`2w95cվy K'Yfv;{+诅eڥ7j!) >ٱUZ Zݩֽy,2xۉ¶U/G+wtX!JTq"/_V#C{UVC:ދ ̴W |zV+i![ɥAypݱCi |k\`Pt K1 \)4o4jaXgR?a~DNZ@xRN"Wq'ġCEnK%`z8?DCh)4@|P> a'} vB#L2XOB;Ȕw|SǎWRT1k;|rWZ7 ϿʱxLH}hX`!yPBd#6$aF qiI@BUv*s?V@Y(+) J|zRo2\<}y_&]L#(jcOC$Rd@x7»R>"#7>Ht{T,]|G`YeՀ q٢%6qy#+0'{2hS7bceD0h<)7ӌafcxˆN4!t=yBAC|ƫ}[9Cvv SΗmEDH_ "1oOexSq! DpUuc8{[As2;az>Ӱtvrب4r^>MUH6C"ׄʋ:} Lҥj 3pGȡDw+y/^%6SS 3BDba?:GI,~SƑIXqu~#rI{OUJKx eŴ.Qt'6N\C{ZX`-:'V#E;sKu%׿lǸ8?ti57ILʬ !H5OF Hd M"ϸdM1Dzn#,q7~7.|Jʲ`3YJ ؎@ hZFr x*Y i4y`3xoŋ*pN- vP?6"fQ޶2y8 'ua1p1oQqQ%8ʤ![J<ڶUU-/BlSh\?fp`Ϫp r5xn„^wfZ^n-^`A2,֔ #"o2v٘ )jk`3-]wR`u&v&<ʒG@v SDg: \3/E>3*%'&nĔ)f}=/'DD1I /F{g1W$hma{gz}l{ ̌\ҭ%Q^8!7t|q\}_>pDr`W6o2LW w<_ 9LBF^(-aPpVmpl6ܣRky>P#:ָ?DF0J Ns.nt8O^߳ޯ<0CbxKx z Z(M% Hhp۸hU9 gg**XOu_? ۰ݶG9+*Umwn'g;(zM=/L#&ZÝ)wM`hd1Ģ΀P-gdT E.;U;xJ@^wIpۉ9ԑ.<x164Aӧ՟ lú ՝14Ћ0NEE&aE'.h-*U;Uȳ56keulp%+-)h?ˡbgU8?M#ON_1$@O@{|aBkSISAVCdsˁNց5?}o]FC2PMX]נo!up7ŜLcpQ>\0Gd |w_kEN|T١:v+BGVhol*n,BH6}!X2:; &?U׾ ˙?#iF'!8 3Qs"`<>()p\KV+P 8e?qõs~]S][@B9<۬?svu5}H٨.&ƺĤ"a/$,! 00Ly1rP=edDY`U^է8m֢ҽ]ͭPI1*fy?Iv` ]Äg%P1O禂u&3%{Z%ŸECZAPMǛKA,Uh7Qbr,LKG?O12f 3xIj daCb+i LOS8_`ùXm[R ٯ}0iMt[BMMߟr0 {ibC?8Js'~(>n!,Oܱcմ,9YY'Jc?0'Y v|قȣʵ _o 0TqH:Q;hXpT'+F +b=uC]9 ̊& FuiQG#@EJ=sr}/Axiq7W-qv~-"'Ie.2pօf5ʂ\9̯8fxUl\ڨ-c<N  !-7B6=T,;G~ 8iZZC<~{3>~Dgo/㎩ϑׯOw Tѩұva+fr|@;77Y_F,@W)!&$yy'/¾ڽN'ٵ%r]4fȲ6!أdkHikLlD۱c9}e? ]0*LmzmNWvDZ?xZRO&aqFyh,e؉bַ8_c>rnoU0ʽd #Ln?"P< (3]خi$~y+F|E\2 ҏԵD]d!>XP!>`D%Ckx 5H޵"a0zCC-ǐ9ʋ:Z9hZbsg+ Zd)UgGHnCS2/bO${sks4Hg2Ջ?#"r:3t}3^dAd]eGr~ zX!3fck"R|,ңkIЁ߬pYNt%;R_-9Ȳj/~VU)@!'1Z̪1l3xC⧵10U\/QGIr$ji`{V0l?j ifs 2f'a龘C1cn|CF7gA_9B |gBVI?YT댝A?)FtRspۮf 4l}; ~߱T' _(1_[+kqWveИ*#oO-1? -KN(ӆ&#mT.'=4KK8GR{Y/-ɦ<(=]_w\7\`kk6 QY~XIWQ/MM zph閳 مdb}WtH8՟=!@riVkiڣ Nvs1Pi{Cd+">CoۣoA%V`JI^yʓ+ԧ':(Um@´(kX'wkqpx2ŧ7v00?ܻ |vҒjܺ3EY/T jrQ MĩW&)D$^qse/#ZfH琚"֊h"vjiZg%eYb;M-K1k758=UUy^=C9eLBbt4 ɋsQk22sp2agϮYSgN}i6A4b'bHwO0'hgکɎyJj i0M*XJgutԤTCUO-_x to .6;3ܩQΏ"P Ғ('D95o{d)-lJ-í~;h'ãϣffV.~Ҿ$O&egS96tc80Ujݳ>@hM^ Y1 9liOGJr}Ucsg3z'_J=)6!)d?g0Nc3` N<3f,jgUh.}`kB R]'%'$~!Wo#.Fq fR-M۬:DK,]MJ3d-}ir#}|Poxv)h 2fZ wfKM5BMαb^fC^<9P]%h<)~Fc` p, `tfRK1b43G GJL ~'(]#FaPģP4^v]6N(wO̖r;H@>r ^,ҍ+d~Y*$=*!t3RI]ˎ5PȂ\Qn?p8B7fSb,OL5jKRpfzG;{/t'eli>n~YgbKjd-d'f Z8dž&L#F4)<9鞾{*lTm2 Q?:U#ESB(*7t\gq5q.T)] F\u5_ 3gs6;0hW?0C,> 0uPffu!^*9)4zPoV1Fz$GP~}뎧zS󆺘>o=jws%bAmXTCM9lkk"bQݬ+&%Ģ#Asvwxսx /0Lh*=FW7^M\΅BE=ݢ5]nBA80}VdΞ!R4󶻄s@oJSG +<&MHKԖGPOA3)oS<'q";JJbk!|*@0GLL H7G/eSPN,H/A p"Xen$3@Yuj2Ux+$:ZG /{ܴzihgo;q6mhjvQs{颛Gxu^ht ۂjQ`}#I:PP[E/S㭺2P#=u S`ݎX+~14m 'gz 2i`@z\y0UZ77,e;k"Mb_ )/̟HT+xU?`kn~XfD`%P= ~.qG \ _3xW `Ay`6|r;au9*k#BWȍaIXI]CV . 0-osP/]iOK=!E/S}v%1ՠiƚj+hg8_!(KY0t;#+W)Wåʦʬ\*Aްbꄞfjӗl N $M/39WNy{di$oITfh-ZNpƅw<do'JLM_ex ٧1a>Ci!Ǒu,l7h1pd. +yI'(͐'J?|Z[Rml +CZFcHM Cc!+qYdH|CVcB^"}G{e0^ƫAdh] d 鵊9ug9"D>Ō\sBw &ÿrOWQM"eh^d &Vi\r~UrȽϼzOkQ7(8ve98ze]R Dޭڎ4j&"* 7Y_t?vgN&귖QTrս'Fw@FA2z%يMS5=灨9&4b&*=uPXt[T Tʩmg^ %97=aYXիR`Q%OVTvJSnVE TR,Y* vd^|*&|#iajԔ_kR4# ۜgFU T̐g,FӳkD5O% (3`r~P4GچϟQSW$N27Y*O{Yiπܺl%Kg~jeڠ3"u-ǵ%A-u>x;:+1BSv3P9V&t"{HPhĜ9);ܿ4tOeN'f],gu!JU . ^Џƿ1i$4`rhVdKUHtZ) 2u-8MޕT@W1tO5#n˧D.k:2aRn0B3u:>T;^2JޠP'+Jנ`V]~kXp ZO3aHk&T|@cEϢϥ|Eѝh)Зn1538N\8D*]DZo+ TW1rn`[~/'- :mDV8Hz;֤E2wҍ*@4q !Sy24l0t6O G~-qac$(W}=,>ck;9Ke.U9xEʰOPP9yH.?K`f9asǗg}S=/20xanuD={!οê٫^y]̉ӠDM(rmz/'i6bڹGЀ2{49W%"LmSFqVYoS$nm=Lg1i GV;Hͩ D;i8+KWg5ױGJ݆DG+*7{ىmڛ2&cp\A/ރ 9Nn-zi덚?pk:ǥxr]*iynC:7E7 eBv 防!q'DD ?"LxoB+¸ҿZ+թc\Ua{o"{DlQU_1 <$U F>GVDp z<~nggHi#9#t]㞡>ӦךxRk^끃ߐR^jj[ҲHA.Hyñ 3k0ٽx^>s?P"HMD/|B ea&*+wmPx[4f>86ca`uYQykE.egT^"w&%($  4v=l<3FDNTKv$ z|=NM)d,k=$J\\;Sܩ0q]HpH K~䶧EAQ& fK&ǴѻEȞtln&k;>\F鬀,C.?*hhd7BIXo ^SPq`(2ְI qgz )6"1/1@Է_QHj.HH&f5Cb,z+Z@AC.5졶O7`2f?P>] U[Sd d8&T0AM6.K݌~o. V{_6M R~ckb$n.گnl,߁|N1)V+5C];F湦#&S; B G}LɼظTIz*]֗+$, UȇwFJ:\0͓s|\]UK!["ɣ3LxXƶ4 7!u?<,l԰p$n6[iuAw>I T߫@#J=hY8MIAOGY%>s7 `q^[X۾6h1"v?.Ġ$6ܙ(Pf6';R'g|z2tB=-֪k4C&BoYnuӳM0W r[{]lANw#7/Z"~.;^ּ*>IP2MX1dkrY_C#00C|4A9T|vj8NUr BK;39Xk }dGn*)[VgLSuyMR%/#ט*_ɇ ڎ/s>hFN@YJEZ.S;c .#F6\F:b8c{A>O뷦̿#Iб ^㇯|IJpr#ѷ# Be 2o$ u]H.dCB{j/Lp(c0!,Q޽#֩L/=b\eg".2o;P_ۉDt@t֒ȔtDcMi)y.l3QFkI_?8k$hi _{DrCUڂ`!I(@(u8I_Bm;I~p5zZ8b=hʱ\֡K/ 1t>H̀X'B5j'>4bx˲3⇩&ʋj]/3r7OKȬco ȫyvv.?HG+S#ܜGEjB'nMO9+QC vۥ8qFe0I#??7ARg ;K鸷Rbl03uie}o;qjǰw],4!@x[$Z \K\0e|skjԙ0B8ui+= 5¿|3e3턂ދ5W.3v]-A9D]=PKwhڕŒQG[`X_ v7>ag l\WUKa 9 n)?_0Xvj>ne?BjJN V6s)]25Rs\ ,:Nܙq6ln\m&tElfLhH*@m<]fTQ9)P~QvUi +kOy`h@n|WNx޴Io45`iCFKHLOn ۝νl] vE8z`0gN-G8h n,ħkzc?%sU˅L;) J) 䠌L`Yd5: WG HP%Iʹey-4!A&BQ1o*d@cx7\p;i`CfL%'^E-so/%E`AoW9 paL!_(e7)rOUG63vYt.:1[}Ȁ1&㽼׾ƘJ>X̑O9B x_'J0xC-TaYUG[^y--١#It|.9tp?9"G,X .Qa&HB%iᶅcV'9q z^C@ߔ|x$ٙnf[jSpYmz8xfG$fϽ u^'8Ӣ%i{KsVN=d/C ⊅0 kUpxJbUX)l+ lR| l{'p".&*~..SB 9Mc@{Rffc 'etURt!WW,~(I{Io#7,+C%,,W4ol69ZbHP(P߶yn%[hsV#jz@L~VmU4-w6D,_ԥ;:Q_͝Qͻ~jߪ{h( @ۖ55p@X6hg1;K55kKKRUzL6_U.X@GF 䨧@ՙ:"9ß otU(lܑ,6Z Ѐj|;Ȥ*n0_xU7 Hr Fj|%;ToW{k'Rmֱ TuMmjbx6Yc(^ATYJ̇-,xOaC CO(%Jwm$s*jMQy{+q^[\'zO !(by2òUҾ,%#l5 ߖRf{:-e4DuUTs0;æojQlЍZ:c:!{՟MÿGF?A2gn--Tf 94aa{%4g)kl$*;;fO$Z X I'Fm8 "enǎB2@7=fy"`0m?إ^ Aյ]z6KEDDNi|2RԘDdQK`m=o/0mآH`Uܬi_~_ȬdG5V+}+ɮsZy0X$Fᓖh^eibsWcNn0"ȘˁSLJ/$]12p}'ȈvP&܈&=FusxUTË1B͉u o( i106PT@>ODm㫔L졠jv-]1wS\Sxπ1.QRRc֤u=[ sv F̄d⊢8VO=5 e߇zgoJKŞ.޴@z[e6CwrL\}tCd[}ϤH ?yO9ڂG% Qv=9e+7.(ҵCMݷn`'WC3"fwulc ׉6ˆd D>/\0[roN4pN?% rloR=dڝv)/2 \M9,_e^bzrv-}[QկmF/ ;7תg)Z00Y*0M-h??d \Ze~󇶽j= @r~ е% ?͓?Pηyj{x,𤪗)ȇsⷬ᫭wٞ\6˙%#%PΘjpc(ވ ±$$٨bSՔQg/lvx2LfMaɘ&TQLn;0zB.k4 U '_5=vj:ds>`wo!)&r_| ~Aև*TC5TgnPD6Tj8wb zH'g&*:$ou1SIu&i6#u|Kh^Q ruYQzf>XcޘN\[̓ r|d !_%H DV} 6KTjlIW"XMΣvFpB2|=r~b0TC=>s>";$@)wkʫ4F# wL`J_͵gf{1鰟̈́ՇNmhV59w` Hu>JN02W\@0 瑹2Ы|2gP0 wWjCc|tkbMB\c pB0ގ J-b/MϞ1{EhHUE%Ím(8 n"` N .tO{say(w}P`G$h-FF]k7-^ew-:lىŦЬ>rՐ+ |o`%>5jVxq5i`Y2'v :m=h6&R@ qJbl8 ]Vw %FD,Jk-#wEGvVR.5̫Y5B$-WԛÄěl{A^#G)4K (S'giO ^)6&~e~]@mMWھ=u@M,evpBwG^U d44ֵnx: 2K-09i2AY}' R@Ŏ7`ݣQÕ0C9Pdҟla<ߤ?yr0L>04RK?hem u:  b CxXN!bcu 3^/UC+3[k x7ݡVwvaie)< C{VGkbVڊ댲QTוjQ'}ܑ!L ϪWĻLm]F3cW8kb3;ґQk[L 4Lta:am(M[xU!pz3ٌ 080KY)q%bƍ-T?/S2PMse-O[lB]"XG70|p E_mLzʀ"qg<$={U>KM8NWYڳ]FqZzKe *x#"ХhXkķȺ;p3q^`t 8k,`mv)kS0z:8v5*¦vǿ)c]UU˒gc^&'ZG_=3YltL*Q{īOAQ;  Dp%KrTm0y:{|wSo<.נL>@sG^'S6QU?U-diԆlU6H):XM٠lN$ U.n)O+)KfLMvPw׊O .ġ?*jqh^}68ͩ}|QG,njd,e3tcG0ľrL,L=kϝKBiVLy=)RkHBď-]G< D5XE+)s^U_0:q8rɀOXՎNZ-$剧 (^@,"{xK|x@w*,Qk҈C:+ (򱽖ĸCajh1W{]l?I i"RX+@YZ2;+K-\yz]EZX[,";!m"n˾&nS;Q y T~Ї{;~Aڛ<0rqW϶7R0R,ͱP5<rъ>l牖zG׭j&[iOqщ_KU]iGMbFVQW%¢r8,\<])P2%;Ň %2%-fϷR]FT)cU_WeZ06_GBc,JkAv́ ;*cdS@pQ{kԌ%]*P Pw-;Ы ,A|2XM==S;[N;Rq4C(`8*%{L]@}"ziIPGkVnvn 6N9Bid. /Pʖ#RHt:װ*NjY0:_j;x3b #䫫 IGlδ3Xd_ (0A:<ӘtrƻD4_%Ўlpv$iZiҪYll /nLQXb޻ rKkoUo #xYntmb+|XxQѺW_&SK’wLw|A GɆi8ԐA۔|r;KrCju#&e5eNeab9.8pdB SDvm[,b 4$ ֭r_AwFJ#!Yda-2<dˠy'+7[XoZ+\26`M"wK,&`:5ss~ErmSF,i7\ӯ#-l|eUU)oMm`b&ǪEEnCY#^8-5zϩCDU3c4MȂS/;{-ud;igbi7QsyHs .Ma ?BA͞{/m"5%?+Lc5rPb~/]^A$"NYE0uav82vs\yU; &,I%}w PS<@RXs1@|#h{RT@G`{mi 7q%#{(x<r:eۯ^a1SXD&,>KCzjE-*W2҂%(`FO$M{6='J.2`@P؜Sg>k8rx^f#n1 /==3UҼmtldtAe!<{ 0# z^֘W <)t܋&1 d9O69?bh+K\=8)yj53 `}8pJ<k2|Ya@[niU+)(H1߻n@3zjfe8oؚ#P1nT/ξRb:O1:gi+R ;Պr7xb@`bg_#M) CbsT]4󦊟\ ޚCF=}ei? `1:a TT\Cq[s*̚EZT:/`\mp#T4Yn;Ɩ+_ך(=Q"D.gh4#]1{\htˉۑ7v~¼"~@H C,$!t5TT`.Yu.1ςEAiH/ؖh#3AH54ʑ}x! WBj9Fy$h'8ӤWLB;׷X(T͒redةT({.%B\m!A4ir\)cѦo{Sq3Btoz]78;&:,o{MۜqVz(1Î!r0*w3}_9r H s" YtPӀ=ifN`R[ya"mAS^m\EK< 1 G0۩Z[:nx2@(F]ƂnGCᖕiNMI/^"ql,SEp۸502z`\$mDKy ) FxG 4Ꙣ-餎i> >+=(0 >Q _R#B>1)] F7t&*t64`!BX%N˜a+ hAב5%BX1eR!*љ;3-6i6dYs|1!M΀bpgNJ.;HϜG+}yɂU/iԹ6 r;NBֿ ь5s+.t &lDW vwrBM1!OvS b#@ I!ӼK=qhi)Uϖ0JbGܐnwŻx6ToGJv#a) /J7eYA3TŽ@$ oFb*=%D{UӲIj5ḑe.׀ӭtOZ?NYv?ѠG> N(a^3J7? INz~cNW=RKІz߭ _lkΣ1 JHac1Nӆ=WE˅ek_Zif;]= )GɦlZgspO@z^;j"*oq  4^/~)BxN.@CQq=OMUhւ*o2? ̌i }-Ύ`(F@5h7 ,S M&e#ŠEl !B1U]hY#!N W0Yc"2ݼA}ノ0s_Gb5VO)q6.[*m(8flw*3t*x#p5Tg)kpŽؒp;hg'gTHZPkjx.LJL#̻[Q!SL0L-2Pnrgl8Tt 6^:Y'̻ؑ|:p~HCt̷romZb2ٜωd2d R9A>3+F|J ~d޽,|U /܉&]0@nf,@_{};.ɶ FM?QG((/O`nք4vꄊEG5`ȱsTy?/Om%@ѱ94)ANJ|# \:k{(nε cYy%zl&kSq-c#('-'",DPF!]IB-#i?LNRN&5g%AAŇl8ks0_ |6xFLB|<6g Ҏr"ZC3w6ae?`;uB2't> 7[fכfuz5F;:RO_ yV! q;IFQ> 9>Ԥp-<I{i*u+7ٿqy~.0N-a$o&4:`s'sPiā7*j_[Sqȴzv3τaE8q?+cS<߭U ܩã@bw6yÔU y1MY[ wen~bW| Iu4(MӬ||0Zu[,l6e>aVΞ!L/mЙ)r5WʥX &˅7qw0/βq*~&JZ;D'6KH}y&L೽I'Sh*{E܀ߖ뵕eH#V0;β$/,c-8R3@V3Y0eŕ]n۱ijբsK`_u],&Pbl,ZDq >GXx'6#4"QTV?X-1ܹP*]wa^?3 /5˽$^q pO]6N<()9ywhRhEI)V{f ʋӪv=Fl1Y!MwH4ℼ~ߪj~ޛ BN|Z 4:-TtCDRd#vr4"p0)9Aկ3JcXnԄ4R3ә F:fIOFKQ ?f3JoK]2(P6=Prj5c ý|m t4 dMRQ|4Pљ ǧAI{lHNQS^F-Pn@K;mvAjl3̄65-l3"x *(Sӿo3*+ۙT,p:0n|n-Y:+^ nQ= Dݓ;v⭔N9ucIjapӎ.,hS z/i^u@ s_LٵA6SP?ڍŅ` (@z ]~5W|FF, iP^a{'y(?ڟ?UDdM$9TT2ѾMSLHP֖pp.Xcsi*ZP1NEL?oԌa&{!. NPg1O 2~.sF 浜bql_&RFrJ{*9[8=(/z%6/r7c+y͕_גPb%$gsdÇ#eH220I<ź(?&AK#i q섢I"{.aRʈs7Y! ~((t 'Cv5T-M ݱ:& Y$3:gaHlTyg|yR~2f9/MO[>bʼ,4E L fj^KPϺB*T$$쨍];Kv9֥eqivL}UC O HJ͚쯺(u7^ _龍@u0hLO4B-:ތ=:J){A8ٮ7J8k@z<1nqY\,WN)eƼ9}%SjU F#mzK 97tGש!Od2_eȗ`m״Z#2E'aHܙr'I5g>ߘ Ne_ d_ "n[6`^|ZH Jnz,-]Uk7Lڔw3]m\f5>)+7sI~z68'n,Pu"7&GQQͅŎ 9ZK-EXC>svCu`Q$՝a*˴t'_$+(ץ˄BmHAͦOjHPsHr: Bd᛽?s)}a' pgy/*\9 s oOӫ!46m8t IF"]!O49ˊֈ)dS(쉑HdYUڵ>aIV& s?J/}7=Ld г}HG.ZhQ"lePJNX 2E}KUkz]mtrSªxڦ0b`WuG2:,0"J I{OIhʤM#eΚe3*S.7g;deMVb@1n(Zc3*6Me{tTgI, j.JH숹fVS۸|d|ǙPvラBW0Z.oJ daPke_pJ'(0걚"a9yGڿVP|n 2u6ٔ# #a|d)2, G'S†QY?'v^<ڤ>ءPF61xyP{x54a 1W1 L@j ]]mB)ۿdt-溣w.RMՊ+o eh^ySW\Kt]*no,|:IlnWiV(A$)՗JiZ<&sln/] {I (펶7%uzH)95MkR^rn{k3Q7DP^zRB&Ӻe~gB/ꙵ(c/- AQޤP%]!#P6{|mk4J r@ `{ t\50>1~f01 .˻Rp,ߏBp/tT Ώ¤u{d/r4z0`߼ hMk crhߞ8CK[Bcze` [m5 ONgS#|, YŸl;jpJI> _ 5ff xkU0hE,lCf [6 o+Uln*PrZ ln{ Ȯ7*If+v B~,>s ~$?D;Yx~N'_qs67}獼bgzye33IQdZ~2%SPԑ.JOR0W^?oUư02SbŪiL)65@#6ͳx$9E}VuZ۫ xgNOjl J6C%6 9sV_sBo:/lZ$Ւ1Sɭc%7KeL'yxօՉ3o!P^MuŗGHZ߸ KY"[9zMQV1WF42[I\&1 Ьڿ2fua3J^ƿOX24d} z/p3 /j~RdTѦ7X{2A%f D5W Uy;x^]ӯ~%_j!>"x8J:?2tkXw0ߣNe9'c1; \+H?W2Y1 meesuc6Bv/‰#hG^lq@[KoyfFHV *=Ƨ-uB@ʅ|:6޾?.51ՉxIo1P%ʳdtvF?CGg LY9tݣ}COW݀H1|A`h I.K=&b2'̇2E b$#M܊H %6u*B+Ťľ{5+c]nTy5lbKˡy'U&1tP/ɮn3 Լ=k.N~?{LǻvR'$JXݬJ >NA8gJKSoc4N EA%tڜT/HKk m2]d#fWLZ}jܤpiKCl,մ;y~tZZj9]v@&UG`8t l0Iy^7La5|f0֒d5rx(JT$۳ 8K*ͯǬ) ǁߔRJRP"9ĥ{Q`m][/)B30EU!)m`/dd" wfZGML_9t)ɳV9M97?~[s6tvVWy`-~Emcw *{2thFtj `9o' 鏩 u%Qpb=}rJN5ӞAy5 lti)JV&sFu2Jn*7r@c(-]Ԕּ|}`몍lS_ 9v(ZF\cHEKԋqc-v%dL|IpyMsd,Ҽ2,dƒv(1Sr +[7Nw$ ²4 e+NfGo)gU`[!!w`kM> Yy`捛y$HN{W_*o$qxS2mo>smn"/w@c>^ik Dž6xF$B&G3[HTJj&XKgzHRx@GL㰾0ިFL!w;{Nj usVٕI]s_еsDy{%m ,sD%yo,R4\'λyokeJ|O>\ (KX8 d-$Hu:rCM]5((+* wX끄z#ߨu Gpu :+znoG߇*} 3OÜa&FǍ"5 rx vT+%lv`j ' h\Xn/ @}apMOr6] I1(K5 'C߆&X?8l ZC`#֕1N8S5RJF.kWrqQ6FyLr,Ub~. p5^LOu:}ΰ|څ@qN56@A0uߐk.P9I78HS HT)Ni"s3#C51vH,q/Avz1$+;[[tOWN`8>iǏ@"!NlcGnh`t!I$Xx4lY"_7l0)EDWD{i_OqrP9qi|̮/Uep)\[ ͱ_` 1U7#&(s[=z$Cn"_$%+eKȼ7Ǯ<z՞r9&1(hAh? 9L,k/*z\N @ LN90 6]cr%V*\ !FutpGLsr k1)Ge`-D~#;'b_ e1ߧMKN53v~^A:~:ݾH9 Js38HTj٩"7PKg9,)1I=Ϝ {LP2cɉ@n74rDx0%%m@$睒l9e{O{Ư=MJaثB1L򄉨ߙ+%WH*W 21Zi6 fa5)trސ%rNE#u\u=y$)6]gwqX@U01ۏB@91Y_oc~Nz(؝~BIW m4,p.}wvšVf]}nZMTIsw2z o, J Ȉכ5gU(+Bpx5cD;| %TqGH}+#jw^,]*[FvubE(KH> 7Z l ˎH5H %Hchwj$CaML g {| 5>Ȏ.2gQ'ʔ +ֳj^ =;yt?UlMP~x,3şuTij2N*rhKn&-705,̣a[D~ģw͡[ǺPUGDQZ eS=P*{;bkYH2g@/Al.lʤ3ȃq*bd~DK{]P,05vP2?ZVBeEt'G)qI*BDiQ@Ѐj;HnMpA~k#G,ۥX ʙb3 h:"i6~hp2$y?1ˠ߹NHc;3 ؆iPiH/"c҇ P Tw,@B^ѐd݀pe~|!q?L@GûD=@/B iԌ:Tshcn"EJ`j )ipa}Zg{%gPbfX?Wr/XxDvJ[ڕNJP@$kC[>\ 8E|g3ԈByRS.! e>[3!'[5<+7q/ͮ0醌jgbzĈ` n{ 6NJ,fx^oGlw5{Sf ׽FLGO Bz(@kO{S99p/W&oP覜Ll=b(kQQL"&تg2-1 PA-$X/<䬷7OgS XCҖd9\?,_1m]R'H'+; Ϋv{x a%=ru9 / EK>0da%%_%؞SAOY NzKٔIm-.$2 x.t5o;# 1OjS2ab#@"|ݫΣtz{~*5-/o}KF6"K;'F\eiig]vNU՛G 7Uz m*|ia]B(K9FI-0;KmUrSޘ8`}=,t;WfAeS޵F.rww-G\}i0p𝜬˱XF]7<%y=+̹AMbڨ&Ìzy} g.v~Vx$5ͺmk'olWnw: Z6}n!ڃ*Α'kd{BjgaXq32 C8PdFips'ipKx^@bm5ť19ZN} t$m{ CtBs &XSqnUsclTgag7vUoj裈g]:8߹EM^2#R$&689@]k¤>)&qM`sXpcmF anm2mCTQIeY.&UX0%ݰk\ԇBTwWd`yկ@CSa" N-;@ˡFCeXiO sYewU8>q;7ݝN֣> |~Nˣ<`Me9Sˬ ?|H|e}t)PZ7SQø$@>XKqDrȲ;p\g=c DL^))iee53ZB!ܼLHVlBRh%/77=zt|ę&PdcZn pJ'Ĩ4p?05ZxpXu#%Rp\ M6SU,I?_k}g =.M3p7eu~րlG3Z -;[vSOYjWP! 1qȏ@(e],lbNiг[O~ 99Fg6^7ni@Vx=YC[_zMK8=Yg˹~,[r4pbp9kl ^U?,k(|M0Mh4.w[hC(ҽWi j ),o'd$aWQ/qxIE-АEi@SJ؍%R=h]3=mu0VBL6hmVX5Qd9W݅-'<) 5̓j h4G%"}>푱?F4NfZ:,p!]> RR"1 :IKc?,xt :Ǻ,o*@0ߨ^#i&HԯXlteǸtHJИb:ًKӜ n#h@܈%:U=d3Iag-D#׵ Lhj!1)Q݆-Mc%.J<{A  ւAXdh1.]O}GBp>!bWRyQ.q:tǷ8UN߃CL}YBR7Y_qg %VjflѻQ{w*X%E3"&S[P(s<3'\kT,P"ms$zADS2t9$*T*[[r8S lS9wWqh(@".7k͡31%n>v؟2ULcciSOn(tvk0}dXpהgW9m nrP!ߗ sTOEЦ{ b ΂]tcؒg_J@3-B_qlH\7ĚΈU 'ufˏ <5XINOZiITqx)tpE 1 ]ZojK?6cݣ3xW.MU#@6)ї{Eۦu.3xb79F z۳|D٦j`E7_ W}Lb)g\Gt7u7EEDu*z}t7D_őCd01zNGvt)sGJ£ؤ6x*A#]ACw۞ %7Ɩ1w#g LY)BC /i}<)**ėqɀ"wQR"[ ժx+r?Ry͚RrQ2+35,Q|aHdCPJ_ڦD}r{mhRXP7fJ֜9zKw:/٧`=%a%qZQsOu:>_ bCC:ŚJH04q+'nuK|^@^D5vV꒾clgx;]1kCM%sbpʌ4̢K>(DC}tn&*S4 Tҭ){6)Q sucn*;`E[ {lј8[rݼiQƺ4@xͽůrG|}3&Vn3%* Ȼ4"񏝜lw?o7#^2>!*&HhM)yxUsX 19`XwRLa=ja[$%>5^]^y]֏c۝I89sgV>,2i9I oޛL*8ͳp۪ <0tRbZE)5ra:#SžY-3wP4'yoIa/8^eSBY9H(%CR$ T`-uwm "o.#^JtڮJ@p7fAFD8K24qoAȬ>Gct'԰];9RsTsCD`a], i:MW~zh́ˑDy29iέh/ƪ Fu)GVlENw2~^5iǼ'yiwnoF"#@:0 5Ēq$(n?Ղ?ܫcI<ͫEARhkjv\F= .hrfd d[c۵ۢp2[q#`)/f, 7ZXBHB8J)csc{E|Ѕ.h+nvv\2ۤ9^#ȏeĞAYS°)V/ƉYdؼ~CR+Zx翤rR3j5gAB}{Mp; N'SǙ@o#^Ƭ02~gduf*-bpʽ:L M5#rzo 'jX˪`O+V_0r~ө1rPTHRu4YEUa?kxe%$hq}c-Zy}u'hcN7+UT(@~ׯ2l1UP=M.ϒԟA- 1%1Q'u飕Kl]Ǜ"֌eG+?7#~A'SOA=݈ch-zm&5ѧGK󏰚;,Hk'4?E p@[ "'=J ^y{ c y ⋿wXuF)wf۲/)0~1-kQ\#thͫ$TaH+0~ %{NWXrDdO@zmcKsХ(gJ$f6;)2قV7 7t"|)kUTGA rI CHe$ѵw0ǣZUod@/>s#$Bvهnۓ'juQJ:N FQ[h)E ! I%:%4L*)p7y?xdУIQ@J@hAk3VPt dY= oW8>⇏l#s6*UZPڋ {8 dȏD ]6ԡT-1Mfkژ )FC;)^K%LM7}#C0jweB\/|H۷>ao?-fm)Pf7;'xI% A,a[oP`xɕSެY!|¯ 6ài5<(gŠIh~nLG) k{S3 ȁ duCܿo؍@ kF-ۜ|0m7@UNAma9pr.ȕh8Ee[+d6u"3ٖ]_/x G3\n+XqU daڰBt}@'0a}D,{ O\ns4N72I딓mG 4Mo4K I[ZCͤsYW>zKNy_3Eq)!}˽gd4\b~5#x6#t!& uYoQ;9{eP?O;Q7=7%◳@^Sv*EHo((p(|$n7UͧEdlRZ+E§.83S68\y$[ vGepvLrPa7^I:9Z{$ BV+'d~mB.?I(&3>1HՇRކYGXEH\Ad#^=u]ukWn*1sQܒҘySxrS9+f[}yqxH>"%Cuȫs;nm/F8c,ƹLNB5I8AJp7ɧaH0W̑!6I(5v,p 0t 9SPyZBפ,3i@qL:Vz7KJw\n Iԍ1-[g߶M3y\4xl;K`Dewtvnjfm@|QE14kUBb1C}@%߀81z@IeLe9=@brzst-_8|s"gAΣD,~BtYغ QRZ-%.u 8=5X&UčTF"~MxQ@!ٖ(%R!df=~*:THXcZ$_r({^4c-[p|Jb1Yqgp+ao>fD\"JuYjft|~ⲉV|% Y)<[4 W揯'r=4Q\~NErod(;*FMq.J%ع#`%C Q nuLZpxxi\X fO˾#SW?vך*3+6&>fhSo+nu_g DX/q=^[I( ,ډ|2\c@fG6KLnшgd,x1eF:TR?׮X:%3KьJ>溁.FPCr:ns zU{.2_q:~,Ot$< 4F KfIA|@ZPzR]YH&5X.`ӊ(@؟H a"h{2nEQ yoZL)meWT̷6{>Um(^8Ka!`PKR盿(؝x[ ҀJ o< g9%P1J #3nf!x>^kbb{ꖋMrS¿g]$RHNu׮28+QQҼP: (BV՝&B=S^ E̺x]Wr&L!LE(7T*$9%w=E0?Ht Dٞ(+Mx`tEUZrs#HjEaizOz7Ҝ酋sKU\xd(h402eN#fEd9E Iэ`q}vB3 u{]}'['ōG=jٮĶ*|3AKAw\F ?jRf @Z{=qmjbw+BcP~$y[%*4|Xd+vN[H8msq&c"a@tKܒbܬXHČ x c_fM>NJ-(1)Ӟ9{f/\[c޾4Eb{5ߙu4WVnvv;VȽXK@"vVB*jkQMɨ,6-@Ymx`4ѢX,#A"fI@cymmZ_2άWqjZúӅ1Ȼkj0j3/>[vOXHcYM;҉.e`N@\ kë+v͕m''ہ *{Lw}DC"ew3t>gXYt>@>sOӅMur'}+_|YS&ǁE )0qjg 7Ӳ] zZ8'9RrmW]vP]6 ϐa;-#v؆TMASd^wW=a(Dv 52o7xzbM$AߛǤA&?^JGOZ0h5q),s2͚g UdqRZCEEme7"!L˞kZl=C7l䖃ŷb(cd4 /d:5JW@h1zSCB.t\1GIT:B ݔ)q O?L6j-+vHc[oYpm8VnWPZD4It-Bfpؘ̬].[zx+֒#4˗BɌ(^^|vՏzһsQ_?)XsۻkD ɢ%x6f4_Q+憐~RZIqaAGͺTש̋.|G?FS,z<13akMײ١ؒ?5y2$u7 x PV3Зg`rW_Շ|Lɿ}S^ Ƣ=:˛Ez-]mZbYLʬ pYy~87"G#K/M`SS|qz8w'>1f/{ JXt%7:]Q \f+/FR$̊=5AmDK* b3u]!QGx p%N$QB̕6|OЇUP>$?d eA73%}W* $<[/e|ԍ[3 f iϘȈ]E26e5ݑX%`y;K \! ƠzXWi_>Jp+~h_lJws('_#KE7nИJ3e_RV:!kN V2-oFplVS}ODR%@9l? Jla OjhG y%T^Bg 4=YOl}b'b01LV*N=WIoJ9Bϟz P,hnjdlF7C.ս6^6 )^ˠ6 B^6Qtj)vB=e5:(_DztW, ),LV *(#]O$|f5_hI a,ȷKmoކQ },TI uq|+PgJ@mcaYPā7˩7+mmdp&õϦxĕId':q]Uj=Oo/)4ϴ]I"ƴID?]1;iv]SP4c}GJIN*|d-q2ǿ'Dh{H"'0.;U>t_lUM&8;rUMkN'5E3~}(?^Ƅ""v d̪_`YcS- i S3rs~™^lh!Xc=%n>m*V]9u,EGo"ٖIdCnjdPxX>/UȶB?c~j!ߧ h~-n^́S-H0ѢO圝\eŽ w!Bk"akϰfJ,C(νo ihV.~-Դ}V=4#~,ޘ+¤V%CFbϸ¼bmfܖȧ7p?ZRVa1j *0*%><9bm*k;~&tTlyq4d [|q|5;ks)Ƿ(06 g7rPفz&b;"%K%Ψ9^A U}" ABFO>?,RWЩ,)k7&yW5!NB.hVңV&ɱ ~,j'*O؁b+`b]6fNױ,O N-P=ZqMs6JII.92 @~rIj;bews-.b>nۘ,^pdM7l>!ڞX{Х2f0@GS0KV`EI:1j ZmY-/5[[ʸ\B͈UE6g <4j/yos>AG˞2E2>r@ymu+;'Ro.#yTN՞M$Y!t3SzojEڙy0nգK ;)qQg)o+NT3;!o2^*NX=!Cf4UAXofEi e#07|Dg6Pο)XXB/,[T՛Ta[n|,)ę'WxzwArP̶ ljMPu>HAobjUՋ]vcUnS.зmR]T O`j>Wcg%bk6a[ezVPK{ilkTd)Åkq☓֚׿4LMM UΝiUOy͟b)Í|/Ό! sVpOazN=Ligo@= CNu ܫnLtKEn],ĵsr,S O1x~ky-P>1TM Җs][Ji0s>Vj&,`HrEhټ`>:@:evN^m9YlaZQ9v[=2W-gej>؛!G߾g[“wA&e'3f^%"5ÄOtm,_2[g弄sry@#HiSRKtT5lH30%vI@=Zd ?)D)fW@VxZT'S(5'o-\Ao9(5 d?kk1C6㵗AZ+Yb4Bdi"8 ܐ4>C~g{xIs-7Ka@ʃ$^m!qv[oqH䏬.<: …Ku Y+vQ+3J  .Cqe6?m0}*C| P2ManKr.xfc.$D#yl )4~0z40a::!gp0|g"~ }~Y3NYD`*,c;ZK4GQSDW=Rp70̭ݰ8 \(0 qUxб>:hϋVTto3˸86V3ú7Ly"1-p)*ivmjvin梖؃ݧd5EδZoLi0IDu 7K O?& k'-UT3G'O3,7K~~0a#b yؐtֶs=::Z64g5͉2x ]+.. )*Ow/DFI*AUL9OR U7o6b؇OWW ꡀT+r߳TѪ[I=듳0G\jԂ]ȠVf_|q όW?as7h W&,Į{- "iH+T99$a@ec֡dͩ1E)=vP4[0!Z\R״ U*(\W ^$j,u:?{c\pG }l׮Azi7vXB-pK4 )m =Y3)c]}[%a!22ճ%m,wOdx+O;_ev(o9y5V]䓼7bp2>Qh@IWb+ ) Wx~҈(R3*>Qi!6."Ttd}#p7Q]m1ZF5 s*lP5?-O ;,Ry>O?jQAyU۷ @?8H(!8\C.w|JeKq%/Ⱥ5vħPtk"ͶO1v *R/LYl۱H(4hnDN -L2N'I7Cz 6ke}6Qt&\TU4Qz %u=3:_NRqyx|{BšcAF{5jITxC/ kxO-H5>\Wa"[&ԞVbV-~[/c):&J:E$E%|Cd TUֈIқg)fyr[3&3x!|4׹"&@ֻ4ܟUpDs`Qstǜ9ڴNqc,ʨ HnzA+'*`AnwE >B';wL_e_dΣ6EU6-:7?+:nJIN,?/)댒=k_/7BJ80WCqCU=)&X"qV?J\̐J-67Z3n0d]鳡Ն&"~')(Oiգ!jxu @6ΉdO vzոuۿ۲ͧsQ`^۱֞Qi$Xq1O{9&esRuX'b:efV3z|$B'H4C)pHKIߧ NغMwۜ]a:6 e~If\3;sT(ډo^t:adk.K P3N__rg0?OB-B\ţ bLy]BySI%=j诱OMOm8⥖|s[I֧s= M7> FEh`*/~[ әHc_[[b+4sa>a?dy c c3+̔_E\j#08k:M^жe} ak@$+Ɖ-p,Iu'%;0Zɛ,wN=8b1L^KgRt*/h:\ᆴ((GDbO䧸 ]X? ?~bTd67SMY(T ^rLV6z/u2,hE}(c^;Ch/a't(*zJb6#E1WiU=S89VMf;ǵI dRIkd7:$`|sUfK<,Syluw6 /_ôwh#4fTJ/YЮ' pfhsw;?OdMe0~eDn03F@# zó7._\/$-g/yϔ{A}1rnRƴkYHCZ'iN?V!$x KLb9_aí),qwo@M l(.`H|!T?0kHs*6/\A9;K?XNHK@pʉ mUlEI\Ҵ5 Kd{L2P PӠs=7̈́{!_Vk }g̾=xI̒^^`qRٺP6>?9S)K>V+0.hO$iYp)v- 3_*Mţ yoٛ)$uzEe3LMoPEIv L=B5tM'bՖ/Yv|ڍѣ'EٷăC2.m-'UsT;粺Z9<:[@Kepk]>7 qD%EjHKo X5Ώ5w1W'̎t5{+gֱp(zgaZrEps8%lHC2>RvA@b)M)ͪ,Y9~$XߘiIͶB\xLV P8So7!rG/Ҋ_@<@w9|z(zms箰评T=fJL qLj0h0췸~LQ*Zriw6F`lL_ b-FmNl.^\a>ʡ_-[y'Fc5[eL_C'b4ٖ0h5z xn[ ac[,mgę?V+bZLP;@_'DOOLM_i%Rv=ˏRf ' #`< ?6$`]3eN[ER0xk7; sҐ`6ȊW!rDQGnq&ЌҰKc9=XG2PocbtQLg󫮈bdӋl=B|綹`T6%!uM!i:hnHԢPey'*62"5׍Y (CPAW v忉 Mxq٬]qu$$ugvTIh⹘5$Pf3F-q_Y|r^ӣ̌Jmh8ٷEBW㡗q S'O"um=;Lo~FjO|i-&6k ;\J[q| ;l c7E SϾ3-e{NVCc< khoMiwak ,/O!^"N z@%\*>`F" 0务4ccyM12SxPOɥIAng3)G>DX-i z*8ꋦ3jpqc.~67iDL魸y o|%)Ѥ|!.Xtwzdp`Xڣq 4ZM_O$ F^ٵ{ᣛ us+@H^h\a ~feLt. ,S'qRJW$ChḶJ2Tɬ2BB1$L9:E1z3n^yAlB`JɃYI3쏓V2 vgB虯#1i+5Bؠq u ۶Gkᮩ/k2>ɸB.+.b1-7nSm&/Z[ՙMv#A,seD" ;/*Ċ1k7D?P:oY&ʏ1;f>B M/PAJgʥv'˗ q[!3`ݜ[rqlB)w2m]_ *Gy9/1>UjA4Z˧84R)}[fb;d })qO/1nLF6kYaF ĺ%{K>7~ [QuJU|NqJ[0g:I=cy?,CXbu -}\-p%cBDCS"K\ҼF7buwĴz$÷cYH 4}e>nh.kfo2zYT4~7ɆF`K;:{~$NX7~)%Hh8y$x9k$y[F@[Nc;㹨`sgu\#C^G=b!qXl)փр\ڪZ>3bsKGFMt~G4)ꆮ@)*8n6}eT h_z{awc\Υ$(8/or7se.'ŶpJP[>:{з{%#eҵt#UUٲq!['] fKi,T@ABPoQ.R`p;VEi)xCȟZgĔbȿoOO9ySP+NAUQŠV3ܵ†^ ܉<=W ;.[&=rҊvHUAt7+u>|O.nX@O9bU'QinD#:(B(yFL;wO'}l"і7<$6+RELc[vpw#?Px'I`Di*O!:?sv+,kU9Ab07(ٞ\ڧmq-($Gr\eǾHS?ejE.:RRt]\#Iyn+QfUh(b{:xS0]fIV#6^uR= 85STbl4v>_\f=VK;>+k[/)1|haei8%©TM1q\)Ď.6:!4Sb$4vs-8όMm>4 Y@<d͉ãvO(3-Ҡ+Q҄ lvZ٭UL)@jmt?pE'OT 8j:~5Q5KV%w8aO [RJ޺Ζo@bgH:W-{d7޹N]=2yNu7P Fq!sڔilmRlj -pF;ssVh,ɸ&4cLl&Ur.xLhd*BT2_Fv ?+2RL#fڒQD2uLHt<H8Q<{"A G+bzYC}gW^#o*6x5`+yӡ6͕h$if꺎lڞ VYn*в^9KaA Xɠhgwy)i6O+:b,@/:;bcVS[W>bUD-w$m6CLWFa_dKNBl}0$KQ}P>7O`ՠwan'b8HÖZCSݎFA4U'#'ʪ<m">5Fbc"3ihՈt/2|Fnӥmti(b7e8?xՆTb}ӯ' V'm_I%D0n_eAF9#?:k{Mպ4tMr8Q0| ˎu͒݉qgBL Y%F4Պ%!ŏRTclr]c1FǪ2( MUs\=-KY>8#up@X'~3{&Al1imא+X^q%s_°٬1n]DžKP?j;~XxP3 ˆI?QHp9ftiNL&kI $}>di5h Uq Bڑ?׾dUo#xr@0ɻF96$&g ^#o).*y"Sd g}ck2v'Νo1WIJauช8ip7`aBm~֠F~㋕n)GSg jQ;#ݻzsBɔ,R4j Lڦ f\6nuDe7K4KkZcl3=҂tR-S·yp٪TԈ u2!yJ=o`-2@CET!M*9mrԫk*m2dBiq{<ѯtgί.J {sj'Yϒ+P\zFcoqmȴxnqC{KE (ڑlx536iX!97?‚]k1b0ВUD|(Zf/pȮ4R)nW%SLK c kk\y{]?|Zu%M:|GN VL $x"LݣCf(/E=?B^cԡk4&,_`oʛnD(f\] BTJਙذ@69 J񁝫hDE ݶkk**F9u u"@vƹ>TWSK/aJeS!"oFLgv@@\Xݝs4{}KsSs+# u4JOr$ьz 8nsf#zyåwtJ5.,/ިDx2 7cbdmɗ05A9,ogU,O}f1/j}$,ԨҨt+oujyzeex3io&7kA|naٱSl{1es5jwbzh%}wt1GTu\ç1Ƽ޳[Q_^vOf =T;_1n&%%h)6%$!JPaȦeIekqo=/J`.jiH([d!nJ|`ZGF`sBiÔJK d~~%=zI;̳)jl*̆1đ*Ծʞ1;Rp;sPfqFpW &>}c5 TLtgR-3Ç0 |?R<11V&7T!ZVFXNS8àLňuLjol> OX6)8Ei+UHӓZpf]ɨ߀0B ! 8miF/xL4/2 hro, u ^025H7$>g}p.%R>{xF͙_>_,]`dD8Д?EisA._ڼҭ=գܮ4gmRU9njMbLCoNV}s|q9 9gԝQ6|i H$?)exB)fDԟe9+\=k鼟GPDɰm*0Š/VR\}Vfe>\Rskּdliְ͚CeCCr͌~{EtR`Ur= cUf / dvxRW1(FUvÿwq>&"~+buF.4Ud2P*Ts͹iu+[gQ({CJH}'={"ŷTkıhA#x`AU* ", "RعhKWD L~G^O#LBhեf/! AN<$IHKb۵pB*8GB5mϡ+1pӺƎ AS'f暚X*'te%|Q n'2=ٿsucF^V3$^8}էٯRDѳDMKT[3@wʮ4PsA刲Z &k *R^PvnX4M<un".9̞cC$eow诇zս8<7wo G|8ZgaFc37 Osab^Wf=( Kk+8TnExvQDnV󶊲tD'" $ftG3Nee}4E$0PQE"\'<ƩbC2rx=k 2eۚ幥/zRY6ޜ2eӅ֑9^DXtfEe|&gN %܀: ۧfꯣ¬RsV.NVU&fNM& FBZvҎi&(@ˎr-qW,i*QB7B vecڬl iŎlNb밁8珮pry*}L9E@RN$q6skDiзef2HuInƓ!>Jo=Fwj%Lv3Gni0]N/(P vIoW=J9Pqt V5L-4ƦSٜqg%W^2$6Aq_ J|/(MszQBMU^ Uc`-HUWr n RlkHъK{y<V܅u yQh9ry$sP 4 ;buEpmʘ&,c(>^wz2Y 2ʣtFLv!gJ/ U }Ed ,4əEHfIG]NKS<,5Z/_-k~l |;QiT*51rO#6[G?|EL7MH"+6 %2<9+Qh1N;I#skd.Q)yT;"6;(֖{-=P*B^ ǑG˲5b#LHYCgk Z^.Ц+^≲dQA|hPsDc'(Yr_㣡 m{;wUwK kRI.!}جL:s#x\f15kl3zvsAFm@u!$ Ǔ ^YYgw=dk7n3EJ ZDFK)DLԇҎ y%֑/AU a7Z $! #jeTi1KamG-=dXPbc]E;c*Ę h΂5|4|K1eUƶz2W;K7RZz*èb'BADuTKPPz~g?1m/AC8 L.?85rHE6o:*qp˾i;-eH"u.'BЧPRGi5nC O s܅hAxqb,$r(/-ˁ R]Kq[bM8^{IRx˝zgfUGNZ#+۹h^dk/v0Խ$#~P~e$ ~t579Fj% >5T?n-!f!b6 |7ҔoK9U^iutÔ$gb z-5s~`; &HMpv\~w8-vOe6q?LG%O4 EWC#aױ2$4 n6тHHܫ4 xKr5P@@CUi@S|\hoONdx‡oSC\c4Ecݼ;?J`duY!mu,齊DRV\j L Xϲ&t8c l?z-n&9%;w!Rfc*.8$C,2'} (O9npTkRpdC45`7-R>vq*b5tyŀʹ*ljqI!2a~lAVD[2a`3PFǔjXqr@Q!ʽH=u ~ uvMƎRPqbr d' iسdqT V)n̑ <[Ȋg<{o5ʒ`Sem$Xۏ)n,*?b[I8!#\ǡ<'y:. nK5jFzp±Ւ>|#C<7g]trƶ|o 2)dAct^[2""'Ykw{c6KO:"/+"k(acٌ5 @Lf^<}` =ࠗ'\@џH, ,KƇ 0 8,~t4q٩-I^d%ݒą ~&:U_ZUlPG~K`R!HlVjf |Z[X/ ّk.멢]23i|J}97?oW~ nt0OيxT򛛕"C9c4@4r9>v8^"Ȁ[EG3ù|Ly[ߒQ^J5߇kGTa$yl#<Ӟyc\\D5Zn!zo惌q{(tx1 eBܖ`@Y=CrZF/Z z7{D\N"y;]zWـ/fsgB$E~{pXsc2PIWm|r5 K(8ΏS!k!/T`M(BUnfS1hDUOQ839,MC C]C3'gA`,!2(p0P5d99oל41s',Fn뗕Ruh5${^/Ř,615~b"*1BwJA k[xŮ?f>d-ޚ·5}zY1R+s9󫃸ڮ0{[%s#Lp:A@rCRrLFo6ֶP.ct1rdW7MO_&4wZ ebŽ%]"a܊BRႠ+K+xԀF<>I54S-At&VM7*[!mL;>qr=Êls2PTύygv0`t"tݴtJbDaBB.>9Yd8=}Xܐ*ѭ\mnx:bq(B:jc y"djW"/{40`XQm ؓ6ME'  .],~;\2/"A$)v ) ׯMwB5z[>: +ًk FƦ n>!ea_l4 k>/u7a)qۇX1Lۢja-REtN 1Q`st[#Hg^r! Xufo*2'ۅ`cV@&yW?S:(5$! @X̄wKUT$PW]}=Kϐ keSJ6Ywyyg]_ 7SؙXF{Nhoh\>kcC# "WLec*=T0Y,'HKgQv*L"$S6_]9ETզ16x-eeoqklKM>.S7 <[kB (mϫ(c0l%t_X4 V#u֧to[[Ru@ 3$gmȬ N:4-TRT-akq;x XeOZp Ѷ ooh:,W U6ڨߡaB}[;Q+85v+ Oj ' T^6h;ӽ#_ ;ܙ *,ȴU`|`|1*o˭jl1>Q | 9wv}i8V KU""&F~#=A{IN[cGA6&uP&zPw"#ZZ%4NMOy#06ʐ̃7l_ -69wDzG*8S TRYYdеP9ԞrWA jeu*)+i5m:V RU0U;O=KK0IoCڟb#n5&nEж ȗjMq!$>eS Sۧ,zP~1)$~覃b3g3MQGJj%}BY)-^ע~$e3nGE̕2 7Pbʜ):u.c "PVai /*-xmI>S6?cR]f5&Z㹛m`]v}ARLڙ~:4GSv{Ua %gң8)c%8ITY L? in)$m}m.-!ftǟJdEBmx=Pg6`joҽ-w3ly{gTZP ע!" O3diүa>lQc]'^O @Wpn;cYm)T5/$%Y1Z(ݗ 'FC#Et' aX9j0qdPlZ:&#'ʪ_cj1sY3bzҟmx(Lbg|d t_ȍ'B:_<4Lm r!g\ш8FdNlfMG9q(6z6t)>Xg\۠-W;uQJcZɳP- iED Ei/m<tcK䎈᷇B5cp9k7Y<@飙PGAbnO/!R։ޱ bq2~㪺PyS~ce8kK!RJ z'0=EA,eUi0 &8Ъ8:j6<&9;Qн.:e|!OAy=@ut7*dLa} KQEI7lΥ:-@P#|D!S(OvpVA'*2~ej D-kn ЅUF#U:l9GФƒefvS/,d)lFV+ΧRp [[e6w /-פchTo&'YfpF_⺩Ajއ]@p-GEYtypcsk{sE-]:Hu#pH ɧAS۫WhlxSw:xTNc@ g~9L3M~=vUx8mǕ\uP"Qҥ}^7gWalEO ª|%ӳPn9r*dY:КAUn9UN!ma#Y$֎&# -n3}UZRHX%,-pL_vvZ S| Y*dxi_s`> {i:F3(% 7kKW' rkJTbcH=ttq/ٹ4 S>@oo XWIBh(3COfpCEM#1èƛ'0@C4 p*8mѱh`x.u8WKqsda31X?VKt>> \hixP /&͕II<*aM|Z.`z%GomDhOW9r7W׎!o6g/+C2n-374 ܰ7i:3k(CÞHFI  ]w~Bi$]^Y:ծ٧32@Urzgh#Y|y}7:EA ñtu)FLyOMi=LI11T~7U< O F4h;2d`BN}gM6MG9&a@G̚H#J'q 6T k_qIS}c) F" Sjn<ۀDSVб-\I%9IQܥ@, |d-) 8Φl깁=E4'r4q^f+$KN;^ꨩ1 6n-&&~SSL2@_9DpaIx;pE#wdixNF\ rl5n-nj 4&(7h}{䇗G81um i/5@ֶN~DΜ䓟ڙ0eø;SM]) dkka`C@9(,j_RW /0߰A($|} c# Wvm+ ;OAhhIt@MLEm=$ 3zC4<0%d 06 !cG*ʏҽ3榚x m؁6x6%TOc@x7e;cm k6)U1{ERp͖39 |fSP7e; ".)  ms~JnгpΜr. zҬk{eh@QZeԣJ3DTbQ' ,/ U6t_Js4ɢK*w6JrSBUoPu퀼BtOC]>P:bmiN>s"_)%%R21a $ra 0j\0k!!B"MX#8m=H56mۻU|@ YqO>p%ږb =b=f?˗ekO^{iKc֠p RJׄE $<!(ts5٫ـ%} Er(gr T*ӥ]!F&JT '1cy$]*D~4)F{þE`+n*Х*I>)9@~qg X9ЁVEkӺ6 Rc4>552O7ݨV t3bxiOmVtBpW:s ipϒK yPo}0dmXjk3gn"l1x[zp5ˍgд}}ɦbGmMT}x?_7Ym_Y2RצfuzZA2[H UMM:y[  c}BGL%W4AIٖbM64uu#1h.@t|] :EE37 [d~Ot /S"p$䷟!/.|>[< e><`uZjp ^rHtu*#{Qo=#T)QZPoEvB(DH+Bu%;޽$:˕y_[3>pewyZl;]׹,([ :)曃^ˤ-0*bu R#_c~r&h%DeỈ y|ffٚqp]g_+k%9A6)$;0=i7'@,1 n VMX}bK3U#qXS Jm SU{~@cA\T3=ҞχMSCLaq8)t)2BTE1oiyuB&^ kcwS֞6락-ifPk+:+Ү&U5E[xQ$1}Fd"e=+NHG,T踅NV(ainݘw̗ܨt$ai1n^h]vQF8E!֭\-+q(L4P>w mϫaA-E}h k+T+Ջd7/ Tвz'mBƨIifSi4Dᮁt;|BSCv2_`))3>")2i@>XQ^יH U] 2 c)n;7 B,o}Vg͐5< Q?xvy; ? [7ȃa.t*!d&ة##N阳\Fl͡3K jx-{<3gTJiUM(r}d.֌YM} ʪ `;= JeA@mqȞ.\4Yw̽0%K b2;k5US1fyEZv4 /bab%1r)n(okZ% uoK(R/Op%<cEM{]^|+mJb5GhBxRW9]k"jife'y:?3 - F)N\:Pdb;ryf9'#DU1q[!AN:bܠ)0ڙl0Kd4lP+R(u Ⱦ;(-tDB]{f~DʁdtwI.,݇F+\ej :חj11>[A:υbw9ZIpxQtlRسwMvM&pPxd>UcLe"$K*$SA1=Ĭi}͑9O pŒy 4RgGаq*lDzv3cD*5NJf0kڊ)z"\_~J/D[&P\ݏp[LͷM2Q"a\v@YY1+^'Ύ[y- Qt,2(`Z{R5osax&V'D1һBggh@"_[=sTs<>a-9YZFL(萗6/1)`ˮJ |[ f8^O-%$%)i;( ]H҄g8d:=e6!okǾ,QniOz~$S^𨏚Y`mmT35܀%Ek&d*yx E3.XV;ku E\Thya܃ቄwZI e=g.^).=Cl>y~@5`;@GBTt`pjmH&pf4*I|N-vTӥRĕ5Rߙ}*`uS<}Yd(Ax[p,+aGα!+?8s lEN$H7{j8Mi''ta|zl>V&f T ɻfXE u Ԍy|6D[2mayk&!LhS52QcZ+0@W]m!gzB;wh&X}Erm<4U/1^Bpw`3 Kɤ6.^/00}ـq& o*KWK͘Q@v%ca9, :8#/E6n4N̲PGADc`0&)ӿgչ$&ͽ ~8 !~cN4UDn׮biܟ}8]j܋+_q/%?dZ6:4vHSg2Ǧa$߯I?$I)y\D f DȟV dgsANR]p=XM6*e*"7 ~p O%Aj[Kף{@β=vuT m!ÕFbgU1 ONPS-(:ome}':hB\ 2g|JHz1ٙy23*=XE!2!$;JG6$y Ȟ{فEʹ#|Huۏ^nٌ#mn¯- Y=`E `႗L4Y _;\d62]Q۱(BObzPwoTU M3䪼R[^oqaGL%|E4Q䡀sOӪ6VcRM|`@H~xcˆEǓUk. t :<ίy6ZkGb4XXǫ߉=#98S>vFȲ]E-<~H42k~ Dp=!$c҅t,]$4Y5D8syk ?FI#J~ `@!ၱƅgWX+C_s4ZX0:? #? Fs06p囆xJBhķb4kgQWeSҢPweg7qYYt4}X!6Z.pRT؉OTW< q"ߋLmQ ,zL%sqbu×*|3ϑ[__*dqD/с7ă9XQ-X,I|[W E#wy!x:RItJ `Jǀ3gGῨ<S,A\ܡϴ2_K Dӡa9F>5 F˖ s!%xa"&lʞ)Halz BWLP "}|jZ@sIPXl[#8[g iC$L Mt3Y[7WPWjd;6yrC91Ht78n Kpr&Á pN*]Sh_\WQJ%ڞKЄMSQjb8a'd{i GBbK-ͻ2bD $hPA0a.PQj$"pMN$ab*xg!NV>b}ؓw%f ̘ Z>QV,ѝ f(P8'글oҹsCX \t7x7Ft_fXLPrsRd(~b(7zv]D%:Xe 9ϟ/{u"2Ӏi~Umw2`f݇Ø_KlAc̻ ~)\>k^w Y[6C~yqk[Y0Ad\;h q)  4(fKqRVC721P֮E {Nmlr5^4 ȘT0eUӛ`L7K[{™ ݣ;DY`l.`̝wKLRmM)Eׂ[s'sS~-t|6 zHswSE;K<}}TWoW5M^yrqX%J T]5̟w,T`BRP^T"t1? I-?q8U͓,Qc8Lҳ#״|HdxUQ2S ?芘%iEAOH6y჋K)I]CGt-na}CQ[),R!|;s;BKNcfqXN/g@I_JLN瘺\^REȟ݃'tu=謇\O Cq{0k|j=N% FLq;ZɛbLȪlZΥ[ě\ HAK?WhoPnG{mBRj߉e}T gO# "32eWNAgʠ{moW:I3r%mX"t[W1)WFyaaUNˤLͷZ=#hmPcD';pQ0K&D6ߙ758Es ] l,o e+>[C5,ٕKw|(. }x18aoB$R+ϩ'!=a|HܗO>@,=oy uӼ 9Pi3T<;x?uWmj徲8&w V EPZ=Ed"Ȫ=4Ɨp_~T)3m3(6Z~cLTþdV*UsH|wAiY:C#oG/_]bF$sK;+/;`E6G\.{-dt%㰊ǀsޛlEuAQ+l#6vl!=NM0\:qa--Ph%nEe:Oe&wyNe_zѸ  ~zly{\?Ha6f="M&|~Γ]ӽ?e^%z0ޫⱸറ_q$+ ߝ] -~ҐqA9 l׏=ڡF$Jn~qPc O3΢/M1'T'\ߙ:/5 {oHQ@8vɖoj;m &4U~"F,\mPf:9WNm(F!ô- z3Q{V?οϒX,/p KriބD f޷c('éN X]IB*ѧT'& ;*U}M@%mj1_.NwJ~p2"`SpVe q#]cQQ #A ̯H,0 U^,)k!`QTڴ EFut3U/2*s4_0P(y%#[{.6ݱGv/u%UP7Wh .[w5%rs$f>{𶛲[$7m;R'QIG|vjȄ ̈py2`M6 -Vd(PP.B%%e_qM3n}yVd}8Jpq:pz@P,OltɊ.+.6/t$P%FyO0;5z7jCfR,귇xh$ &ICj™  zJ%g7d=K;hYX.N e/t[۹ W)iow<6:gV @d a0<9R;2FMSNj"t[J64E6{ kNkmZQT;M|ų_PZ&; 8jR,`=.uP˅ Yޥrܚ{JK+xORr ׇؔ8U?-*.{eDP3i8||O&"chQ31^OFݟؤ%ƜLZPL+A`ƅE{N|8GcF/+uc6v:ں ƽ&O(^NθY qERG ~=yHQCe~!ԯwl:9 ?e'"(4Ԗ392V'DiH ےT2b!"{{)RyG"C\ZbQӤ «F=9_vv`t+ ʚ&DzB~`򧇘1HMq%9~L/zvNb\lƩ/Q¶ ULftvKjYӎ:qV!U Iz'd :1k쀰D Aau gk`G9 +F>sH,[8 *$m_#ȁWڍCy<VcmNPTM Lm`z%V&5%:^1l \єZ!Sk5Ӯ4t,_|G[vEmes>,3Nyt` ]wEyqV^*Y ԲfMP~8!1t)˅I6 ȲeJCB!(bi~kǍu2\Nt4f?R f[ lf"Xp4#6ܺeJk ng؋8B6p1ge 96{jVeA^kIQLwaz;\c@4W7{) 7¹O&nZ&]fSaf2_͓`~_ZV{` wN+?Fuk{oR62 bC=-89F4O-6~c8X_Og '2IO-éCE[4gqyBezbe8/iM7ClpN& 7]A7_ݿ_{)(B)ud.L!iUTM* 0i4E5+'/ 8ti 'ɂh9 q6di-|D:TZMu=c2"U@[GV>iKـbn3/ O'm>ȵ@F) `?GNRe o Go_'bm t6&z$*x'&0l*ɼ e"D1=0*EYQMFߑ@"U&S|C z~vy2_/_'nVRS8h,jeXi6W &fQ/- ORM-Ȁ73Ѥ)1Ym7ǭ]B,CJyޭpLa)a&}ho& x_Nfy_ aMQeU# T(^\ޔ-X=*?Py#-C ۲ s?MGjGQ3(F}wsDa !]>|=jOn[fotO*U + Bf  Di!"/#I1(bS8e%4d*wZ&EڳU#jmP_3@>) ħPr&tEM0mBA B?6|?w#E6xE߂BL>YVX6bUaJx/,έZ(w4ᤣψs$%L}]lCI(κyiịaJH (׎ic|i((evViz)w{~f'Hc (_E]RH#q*谥K9R>k^{ u5|%,d5>,bwoo*D?K)<ȈY7pkPkX8C8ŗXR2j g$6PF%% ‹!]6}6KC*o{:hV83Yŧ=R(!z`xefcH>om,$Bslmniކ(A8~OnHn'#GSڸa@y_ܫO _NPgOKgqs9uY6e q8ȉ+g' }n]C*s_CћfҔ`d3<W)c`J!'91T4`>J_:hr*2 %|eQצl\8RMA n7eRrPﹴe:%_΢JU G L)} N<9l)PUѮ @{\`Z5*T5XRi{<6z*g<+a#$]kzY<.xPw|%b2fۼ&-OG N0 ZBvEִ'f+~;|Rab钠B?OӚUx+mئaEꋎi(O5CHm0+\B7hc%69hj+}G+_)֬~}oe5~ȍn _$+r2 aX{!y[P.(1sxa}t<֪߆5۠Cf4J $w,l`wvJS ~YkC}/=-vXd2dpZ[,,O3Jۦ&0zm8~Ftj̇JzIcN\xkgGylq3u|q=/ɨZ8:J!*rq;cf [b3IB`z`È'a0OG3VzbegsԓCDɉZƒv,̛@Dό@cqs%X^AY (`%5b)KSe!n{0?|wމ[޼YT榇Pq->qޔ}.ebsUe)8 .zqh'@5ZǚoMܓ:CnQ)XhY >%F黶7D_#䴺3=A+VN@.3E[(e'`䱃=kSqqUnkl0BQe3ߨ|fd&@a+Q̰~Q]Dʲ M$^x z_rfI&coi?u.XUΊЎ-kWNޓ &"+ȡ(ġswcP+e"Y }܏5Cd x.& E7^Jm)v_HJ~b ӚcIKښش߻$6ľoΐsupmSD:?^|A(ipBLF ^ ,ԣ ~_ naUIrlڣp )M~y YiBZðAkKΠ !Nʿ3:]iC-y"=gW=6D[]Q^#^ rޓHI{d  #-gjCh9hr/Oקq=o*r;-SqIy B{Pg<#~dPUus19{#kp/jI_o}R)дsCmc Xa8Mʆ~ F /S:/7dN@O7˔\-/پNvedF;zD'@׵ cy xEfL Qd)FC~tQ9o 8ɧΣ6cf«w ~>^Ϧ #6Xs6l/dM ;*bþ =h^/Ɣe:V *crCcr+z`:LEm/ltp#; 'G iuZх _w)5@sjMڟ[l,bP$6RdS=cOZDo~iW;*9k- κWC2/XWh ~);HlDUJ@J#ɪwխ{G^ C^2TftnG]աXi q"ZD'}W7׀Oւu1K_{4B"o_?F>ml󶧁EzU^p ?t/I-+$oM,[чWš?NȻE7O% !Ǻ&kV~kMdǁ&Vv1ac[xVI;2þ:7F:|GAM`ޜ9W;P"(m'n>rawM*¨TZk jcj.#6ʼn!][1=0 Ƥb eq+)fsF>SG|ImF`UR7RWI%g.:1-_X\85sEk8hx,&Gt,tm@Ԙ4yF&قAmZ-RqFaF}/E ZMn#%^> Nಷgg*!LSl0jQsSχ Rtw#`XjqS1q:こ[Ho׻iqˉ%DMGޓZX%ǫK{`ӑWyV߯t6i(KBOnɩ'M?m⛷L,b:2͕ՑFA)܊9c07;3.8LAõhynaE>M\_ PP?tuzP\WqE(k{e=)(БK6Y vŐnW`/+=%W#=%fXxo'RH]?]K M@+)dr}NsFtȋ#gM\cC|>eP2-דAS70@\l5R)]GKOFd*MhAaC]^cp>:PNt>/jejs4l +A_H6@Y%Ѫsegkׂ& s!FݘTuO3,xu^) +'$C`U)v-*{ 4i>ڳ{de9K^ %ϲRmidvmd8'=Y=+GiJJ(E{y @`UVIX? ڂ4vDT E.|iT:EHTS,- NmqmPEMO] YQs ]T,Hi/"*Z4a%ẃAJ\&F+buہemzLNΡ%е*[D[-}ŀP,A&4JfR>{RKCYݕsK E^f+uP%X @sV\{bABs7tvhI(WI@B=V߻  3i[^5 ]r~o'0x( J K SK/MP+WϘt;+* 7>A]+)[l xM.>Zߞц"T<#[_ tZ6EhNau .ؗ@P4,FC|* y kdhPCiLq$w2 bss 51 O+ h{0a矦4{I[|8v;}W#v^J`o|fO&oGDEVW_iMiP{6.]Y eKǂBW9`g;PmVSj{tpzv!͓m|ٟ/;,*q@ cjiȸ "~ZU\GWcNh~:ڗI Gs8mRjI ό̑Tۯ re8J޸$h5gQRsykA'E7X`*OGWjp sC[t|Ti?O-*4b}xCI[Г>2n/$PP[MN{r`or*"piTzG] rI牘4U*YZkA@ @c<$4H0[Lbpt|GY+4 3͓ t>ϷaofG hx3Rcc7TfN縸x1ruJ ^ߥ5m䇩:-wZqL/)wcDLVqpjO{zj:8zB퇓kià O !ʼn9޲IP1C_%f.f7.`OCmId6Xx}z7MBL~;Lg.l٥vƶͯm$cTBs/B27A5s&~dhSmv{OLbEȴdyDcg7ۊ ?UJbӠP"B҄ x(ݳ{]BHHu{̴ V31j2l7CqA"p*kDAYƍ2 r& E]A,fS@Ҭne\+k b߲ei=o{Nqm^m!W@Dh,Ǚ dxQډqmӪZ IX@*+U-i!}-hbj]W Z7q[&] &"6f~~ՐL#ɓrh틴.ip\~/u [N:41"zl^a ǀm}XDv?/ >! k3)BY63ܭe;uJUFNA?SEWԃ'e5s _-E,WS(a)\~H;'TZJp4>\0 t?Fz#jxx- ƉHH9 }hƔ3zOwЗf~kU7s'z)AIj9M;Uғ:gi7]5HQ#8.1f:U_|DTٕ3 JsO=wy?`8z+7 HH[ynӰa.N~J94$7AKñ*ͬQ压sJDE6@u#XP5cS g( ^;nAeJ^tMm z''.<_=Y|Fr\&QM<=,ܫ>AdHX fCR~Q_m:%߰>="΁ԍOTXB0#h.ɢTy0!,?N}_@,٣ gop9v5e@|p_:K[Wgz.u*Pҿd̦uKhͩG]7$ìXk#5(i Cw~kdr'ѡ;qZ\tM3hY=pҩُ䱫U|M6It!E|(5u!D\\.4@#d}3U_p~Hl:sҥnraqxw_񄺸5B0~bȮ!Nnohΐ4A08 gܧ3eF(wqš'QO"Z8HbV'xXgq .Rcu[}PǨpQ-!8F^/aOQȸΝ#!eZ+ۡPQV3Ժ2n*d󃽎?NdP_OFenp? {(Ti5°կbPV_l {ʻ{f@3P;9V<N`Jb}R+V:F RVE-e=ׁC zܴ\2kO7~ܛ\3)d;eGl8ԏ |QY1@9=S /:=z3MY9/nR# ́Fb#Ar>cMzB Ysr /݀Yf=q6t9-{u.%U ru)r<:O= FҜi$?a^\?ot`ae W S .[gɃW8CIxܸFq &(M: P[kֿrlMkc{NϜDvɈj>ټ7ҏV_ӡI#C}BinP7Tr ?aQ%X y^Eᇽ*ijW"HL]ga$=*<ؓTj|DAS2ywk-޲ØFoBX*ԟy;4gd~'[eF?ȓ - c9 . *tB;9 J*}oz0^Oh?{>8Fi`3C_(7ʚ`ܾ@|ZfZDepMː7 fLK䩮k]ly\h\QhF'@R"kiq`\#%e+gBX.8ITm̓f;Ni,7Sq1kz|YvNv>Il!eku Rļlۯc^éAMѩMIVϊƀ(<3+Bf3ƈļzxŨP+0G(E90" _Ǝ=Wj+P|c'*t )c{fAWdwc8`%v}W d 'gf*MNZΣ7A#6u./J;uUg!$`΃Σ ;Ո)`V/5lj`.w3kl Om6L50DO6Ek*ac ϟ`nEl:0Vv ]qQΉSU#QW%#R1oX{񗂸ZKhL5Ѡvv)^c<>wܽ+I%l@7Mψa{;Lǒ\F qLOV?`1SmF 4 7 'ZGoRhc+zȓRAã/9 X°9߰kהxs x{ 4Qdq(T"rhH[~9@ly৪r]xr(gͅoKqo? @5p39ntm>^:|ky ó O_i^]o3;CnPI^&_f uȋl{6}*WҌ0>gld6(84>2o֑,4n_-fmKRv2ď͖q*,ߞoK~1)FWos)=,'A,…sKU$jKUڥ^')eӽ7\bG?13}!_ I,jۆ)*v.r8?Om6"N>_|tl0ўɧKY/(#:6M^ni҅iB89*>MbXQ;R!f+4t+I!}gI 2ihCM,zBm# F#~D|wdE d;#V"@꣙E~+7Lk<]5 gvgTedjƍ+HyC&<0YE4{AkX=U ^2S8jC‘]i4F"l1Xm_B/D8e n" HvRyw"uێw]"{pUwpoHzIIpmNW[Ʀx>Yb(>d 9:֎Qt=whW|O"D1noZMwʑQ^>p[/uHzb{()(_u֍* U;_Y 5髇ab6{a)R. {(;|w! nA仇)VQ#PƯPvB` EdBx)(مyYiV1xIPW 4@=ϴX5ศEFiǛw` H 3'pVߝT?`]0*_IŞ};&W(}c1ne(zdh {%T<9_>[}9--ådJx .D p"xΧÙNmw>HٕED݉c,^J=]o ky5΄ #,^wf&SJۤly!b£vmhn2pꉤҝc b6wV n3o2}>I{x@-eZr18[1@ /cwB 𾭽p&Duzy?7k&^.og3Jk@6畗'fb*6<&OuH,.3񤀩6/@Gj\e$g jϹ| drG]alq2y!t*9n,Mٴ<}/4+YSobld1ʻAh@."~mk| !=-O4!mx0OUvg-ٲO%nz4^rbHg3O dȶc5ufH.o=)U a>sDm,֫G6g&oܻIoJж绒]R( lwB)o[=*W(Y_ 5@G84veSckuWy,,q`w˖DcSY`^&L#IaʓyYպw}< XR!yRE*WafJ V̎Tw 4$#N{ODy(Edw#z"6/mVf|pxCKMEd :N0cy |j./xjN33$EN19%HEYk#IxKŷ? IgԬ>#/$H@~ӳ6E.ОFN)fl% {A_v[>d.S%bp;9 g~zIZ8θX hlJ/zh!^^ fq b}u0b0i^_"y'td7}vpɁ$N3G>4J%DfפTN\$vDݒ=ա ]tm,sKSXB"Ρ3rAoc `cL%etXQo$&97-'6u풖6 ;_۟a!#c,:g =2"iҧ5YH)Q3bDh2 rPXvk\&ndd;c -5 tJTWUٓp<"+nïj([Y+ n뵎L/ΏU~LE2Oȶ7E'1@( RN.$3 \WK@V=я8܋Hy$p^z&y]x0,bwP}V7iLEcu[ITij bڻiH.s\`grRo. % , A:D{8G90~y8HmQϢu Wp R)t(֘- deXmpG.e[KJ[%ODM1]jqޣnZ((LX^6,uDtg J{0B;p 7쇜%5.]2^cK!rnE$`ho} jv4z;@p&a^B׎ԄXEIY wލ(! /JqSG%q'/{%a"oKwN6!)$ 1U*]K!XlHc!srXlF&5_Wg0BԴy }&HgmĮRvqiGA7骣{RV>֓Y/p6UˊtTkin HѬoՄ w1Z"XVgᓴ5NT`!&jgXԞn2deVg|EH@C pDY8u\!XLTi9K[Hzs7Fk $[MʷD4,pxMWD*˜IAa:$a9guC']'P/l[-Q܎cXy]S-]5edp:61涑2[/`U!iǃLR5CFKj_Hfts% G)X"MnL)A.:+2MM];rdk6ae5E$x.0dqHKm5~_ElnAKuș|{2!Z:׽+ȅrAnA_O 3d ?,4Rapd}2ký^#}٤̞!~5lsaW(krSR}vvhXλ X(S Xո<~XI8 H:c|L#{QiZdrܡ?MӴlMuKWYIc@Qm[#IKS'|dX#d'Є8$ 2t tM禔V?XdE(9C7aټj4mF'J홖;I⤺ $zj \ژxMy#LC$<=+-Z6 fKf=6V/E$}41h2ƌ~A FN3dv UTn,MQvN,gk,]‘hzUaߍ^~,NanE-ƈ*>t ogG0 ߵ?J2PRu-4f3ӼvTۏŪoe/@U'5LбOz*#'rbqC ·\'gNgvU=eQ޸19i3<5H<~50ZZR4Rt?MouG` y z?eVz?%F9?vM< !-E6 112FȇWxr= O&ҪS0e=|kτ5R70bAw>uI-%jJD4C]h6'fBg^L%!^>x,EX<[^W!NGIE%X 0bBWlu\%ca_"M\UIhJ _h)a7)]ema u@?&1z4cW|=pI4rEyKX/9[`DŹ]J+݅,a&#ȭ܋&8 ;Hؠ\IyJߢ_rPIֶ*z\0pgCA&t оF=Iý6+D)_'V/Qu@}ȕ6.Sr[=NnX̷4!}PjC?+,&V=m@w 7駢wK]Ony{Ztp>ߗAD}"G, ފ4\) ? YW+XH.@1SAW诒뿡:Wk&Ffg} t4&oMsMS}UG.q "p7#JS; ѹ!(xA-e3c`z!^m)4K Rh$wEK7lX?&|%ƲxU1)[? )T/,($JI$GͱJ "듰L4򁤾lSM*?-GچK@ jp+EA 7.*Q(~ܖMF0zTu` pKuen G>Xl=&5_;xW]ّƂ 0T=Guo%Pm4o]]8B'N`ŋu>T7Z;P4Bi4isGeM*mL%EՌ5u%P ΉXg)-&Fm2,)|Tdb3%; X&ZwlѧgDyoU9{CqTtW5ͷ>T>D*DF"jii8ծ:]u<'.m~DptIë6z n,qJdރͰ& gfu0hs~Ljp*]׺(⿪EenD8FlKR" `NK׷oǐM<;J!W̩ 0c," X4# k &E qVRvj۔ +$&$:248GBiu"PNf !-)2}Tf7yX& 8A@#0*]L@JF(mb2֝ (*ETdXtɭ][.W< ݡ.~?fS830|1"&&ҟMa[8.;E{c_TAIf!NaFX#4mWV?}ƚ^epه!amO76{"Ϯ)S%O`f$ېȦiZ:`l) ;!пm,4dǶK,7ͯ3/QM:Spb\x=Vm}WmFVcI0-Tt]ꈷ%b3 #c-WH ! r@[iKkTT?]@(s't)~"[`u9|Jܻi\b[wŭ0}FܜX GI  EH)ت@r"_" D+:LE-juvtoTQ .,<D.:J+9†O\,I1`( Sd &8QN6QKls# 'Y-K z |PalBD3KG`0O==D $Hj.ehک)0zh(sǮ2ZCpɒ?m: MBRlXٓbJ_:<{Q ro(5nG{V|iZԂS.,G@5 X.y%nxx̩ͨwp ׭N-s@c:\ZѫXϧ$V 0:|ϐI6P4`:ѬjMJ`)p/@e fYU 9о YRu0_)12O7Csr(#ՠmǎ/164$vӡ;b:pȜ 3z<ؙQ+,vQMI&e@2Ӽ8"M^„;bu .0f2{!qUǒ*Iwe.ߍ!zJ_HFh`wF'q`ZalM)Mٖ5?e%;5&OB$_Q` 7ő6}+'|`Rԉ\̫78A H9Sr2 Z1l dŅ|ۨ0[c^(z]+V]$u2" QӕLLw<ij^Qp8epӋY$UGEgv>!s7k&L/Dpxݲį$c}nxqv(r~Tpt?Vb^Npp hF_Fi@gʊ kq-H2yW(%K%f1{L#a-Wm..{ey$dq#E#iȨ:Kx[`s-0sk'#XWud&*+T !~cXH.roB5qn ]G ^ZF_Q1.wu!ŞėJowfz'ƼˢaF mX+T͔A#`=r;ssIw)?F{x0DD@_ aD3!hO;=^:2ՊCn擩f׀nM)~m%*`Ժ >KJhr({BVķ!0x[,=3IcaE]1(`O b)0.}~.įfW.(W휢<5-o`# m|L*)cA[D=jG5ǃWRwu;SS1rzv*Ъl":]pgZ`ϫO#P4Sɺ;q::3h7DŽf5-+EKӔW24>*BӳuܵsV&mJE%_d.2P kدT@M*JB'I Dka/Y`c[|`Fh! # ϓʎ+dd }!}7KtkI $R_x:^cvƐ5Ln=ISS*7)(>l.YcQpGosȭ] -bzK璁|2$%ה]Q ߳PԭHv@!a\m[롨XǾ[N0{!.Ma;9UVrd,,l"m"C=0Girlf2vDCx](UtM(Kڟ|>%D8MHq2\anKtlٺbp{3jҭ[*a`ڭ%6U` .6X oQ:9+SRw6f8侮s7pz&f=xx~gk]2 ފD}hӒ`[&/FA~P}G{i Jo |۔8/M'B,L>^ouL1=x5 09 ,jbYH;EJ;OQ}۫MYy{ͤ&` Wb2%i]:vh*.tԡm~`a7mjxs9 ZrϕϚZZjPc(zN6ޘQ]UO2C4D$JBk&6-K̿eHprqGGFՉ;@|`WxD#.y֫C"Nׅ]ˋNčGɯ:ǩ,{win8^*"GR|w=2~@zKg#nYN7\e 4hG\2)tpˡ.= \*-t nO^&} Vޔٲ|ݷV[oZ^Bu֟Gt:WhBO2*pWNį3`=c@S~ϩ&`ﮄuQh[/|h'`i2v(&hIS):ڸ!`uijo܍(v`{_ &9 ou? u_$ln+9h&PY)+{Z_ !Tgza-1 2V4}4iyB٦Bija h%[0U& !7K/Es4Bk@9C,6u>9 AVOif x}ջ@<9$U(ǶQ,Y(Y F+1Tme(Z3#msMO8;sXda>h_e\|$eV"JקL!)~gDNշ>c Cݜ{n-_?x< Zd |[J:;3jlKCm⍌MGCibpknlw+$0u0EN'#Ux'90tijE!@ԩGR*{&z;ƒ{>OLŘ~xMMK$.//KAe 0= uD vւuʤ<ѵuA`\@^+hcLFuP1ػ +8yN,7/sʑLe`Y"pO&͇ $_t!g+aIRk"B`՞Dufۆf ѳcm%z/;*>/ٕ'O2cNV$]\6}>l>jkZI@gC,8q#IwsFBCGj(}d} ,W$`x4,ncH'8.jcQrN׋B*墨0$?+3mx,A#6\ xBTW& @qx3VpcD\B*ve3+,{Am?!40> N8O8_ݲZ2ZO Tݭqݬxm?1Qz^HWQ݌O^tn?7s82H BmD;,^ơYx76f!䈃qV"4QUT)󴸤u*0O&sx_#Zذyׇl+:Yh7uwp#kvH&CZWB8HGfM 9@RIH/x_ 1YDڹ.э*]!림ٰȋ F4pWGt̃ 1Ij "e{[! F9)@@ yO@OosQx-@i]!%aeg;Gv  Wf4~Ul0̱lጂ׋Dbp ض& ]j6p5}9\-buy<4B±YK^u>`W0^ ) ;8u\-s6 dBi2A5H \2nӥTr$lq:\}ܚ#I$><ҕ8&~"8$7MjX'"5wf? p0>#NE[b?f Ǝ@[TH3qVp`B^&3 MK֠n5oTlMs(qZ|Zj:?`x5k@D$Ȗ׷Q@;9&H'h 0&3g< A(I5]y^̵#QT$?LPqU V&z@cYXЖ`U!^V#hiW2)#3iF/N&?ĜCC,j~ݜre 9v~}ś婹R8iS+<WU*;5} "av+.Ny6rǜM\xFY*gep[v6 5&,^*SZ.P5Z`usfIGL&~٬,2ZSYuJ˷MqS@̳ΩImu4nTT t&r73% YR  eپK~د:jX/!z\=k]SH=nVo3_6VQ ruV?Ky3ssZgY i|dmRGNu}H絪r]R _G!i (׿dj43_lqU bz#i:Tu V%bwtЂAό[럠takʙaO|K%J '(O[HϗE+䱨AѺֳE7ڽ-S. e3S@"ʟ&3^Hmj$>LxkQ AV?2]c l:,Fu;XC \19euEi&oY/ a M>C{)(ǜk>VlnC ~gYG "; R?hxldPn/pO 1 Ӽk^cl.plӿpQId#7A(Df׺n|w,gD fg)5 "]t6זW=/,Sh ڴQMOVsR)!L ve6ͭjj qq i7) גh#~Xy⣵ZJ7r݃r u>HS!s J(X?@N~W L䖺XأL/ΪmXVC D˶4}#)g ϣQe5P_R~K.e[u8y?p;DZ54bX9Nq nco`K(W,@[^6uoD!A ؁X8挴$"B IU|^> yk^_.." &c+~chE/B&HxDKӸ/0hgpo4ҙy*PsDE<>ou2І@qn̪ׄt,*=;qTsBozvsw4΋\uvc~$'&{ʊ7fȀs0̾ޜdEǶ|9[~gaʍq9qe9#mDpq\xE*uT- >j4'}uoS^wZ ׀},ij[Wal"E!ܱveۻfu8.'Ds2^bC}՟|1!4tĠt܀o = >7g%+ƒk}3fǭGKa?X0Q 7JfgfI0DC-+{S8֋ڴWFf$KrJ0-t8o =TlBWjbS6 G*C= T,U ;`Vo֬,&6ae7 rG됧iXk[\3Ǝ,ۙ~[4 3&e1Tu~$vy\D$+x=>Qm=TUN^|JeiIMcmy9KǒnwXh"бeǓ9."5T'gAXv/ՎTNa ͵/r Y ) 9љ ԄK^K2qjG dr`14p r^>@ܐd!6I% s` 2B1$_Emq,/5*oM<}$7z~Lxq25?X#yIF^k\ Q_k;!jXݼ][ee. f7d?+?+=iŖjR}R+ߏ9Oǎ wl0>MpQ2 ] ݿ D-c.tW]yOO[GԒ$Kƕ%`j9Zϥy 9{d|il_ATJgc;EB]&М<~folu2or]*NIkrfƺWM+̸krltuy%Qvʥd{[4=7)2PdYܑ <)IÑEf|/$ԅfuNEw2$F\q\vCsKV'JY:j;jY"g+ ː!o{J%!sl#ƶ 'Sݛ_l_PRވaǜVu%vbD=eH1SBޘdAmaQy<}E_ɉ1E1qE8qݓuydj4{G{J7 Pϓv?_XfMou2~۩)IRKAMI (k x^o#rTNj彯W,s~Q.@Ls*: Êr[z2Bau"ID)#n`"?[7;8K_4%Juj) L"zl@|TiUSF ( -;)bUS!P"2_vDh8p0y4ݗWr_ y8fydɦS CM ? *dmPZCcF6Ĭ1cthSFJ g[ s|{vfV_eUUk%,x,1ͷh0d9.[৊՚!ᣋ25s_Tڙs qkx57bd<}6b[R^ό`H$ \WN06zH =ӰHXXa+ D(\9tXF)2|*=2a_ [$P7'+o>0쥫biʽ >aR4rhtr$ N G+!Fk= c6/cVy*#8nyղ /+F$pC-+=ROu z!"qA?Y!~Opȫm& $k / Av}vTBƌcHfrU'ይhEw~K3:koߘ$Vbדh yu=%(FC,fCwQ'S69 ƶ:3O$sTeA8n4)\Ytv0ߔ+`5NQaQwo ~*>&vǛI'|:퀫&xp*9gwVXV o\7b|bo"SRU?ʔAe |6~qiR-JɏķϚfC54G3Dj[ x}n{O4&"E|AƏ nl>ow>T+C"^|eِ6ar/` "{Q%tbjr$Ds$sb^pIbfniw?_ʺq,Gf%΋G pDtIܼnLR2 w. x C)tgZFb;->aDڋv8~f1'5C͋6F?@=y>e*(D$ "<*B]/Ij!KşWO EN^Ζ-+՟(fW4hOe5ӹ\=Y?KN43@FOaP\ʠb6yFE& ]7n55@-7]9;zYgчwt}bYMӗ$Ofj5qk т4m&ϤL&WNPD'H!tfHv~z;&H/bgGozb?`.y{{mqZmTV%[ȅNl xjz]*{( XAVW?ῇ1p?" ѫ\udѵBHZd99jy;#αGu/x53l"a 0(8&Mt _0ֻ=CӈfmT -:1' ҾkE%@.I?^|1[1wQc 4Ae(t/H$vfҎ1%-+zbaE=w]ciS슦3DbMϦ-1O1l7)&he9npn {6VJ\Y̌hbq<T̷V'#)w$gD|3z]dHK'Z_ޅ'b8\wktwmCEK ppOWo_b!)r݂IL.JShr–YuKV4DK`>=CJGu?/Act sU:gƪ!G̙6i}{:@oVT1(…i+1%Yo{HK?p$t?s&wl<\,2Pzʁ)=_T5+I0N艹_֯Q*]z %qW}ە3 &E0.K'??֖=^k/o, '-W< hD" _EnVƢNЇfE{.F?T[['Ko8]/$ D(?le%w|.4:kÎ1l;TV#E)El 8_ǍT9<8ŞzL:%v$~f@}Bթl=Ƨxq3/p8b\&WcWwstZMd5DݿɊ7aReaO~$oxaATn\eӇYDmRFkr0n%*1XXu_Se'[ʷanJ7QɐMF4|@Ad Np;Bއt!(Re1_5&ǭ, qk,\ ؄1`86?W-H 2HWL!2;|Ujs\=CkCQEMRDۀJ^َ{J-ȹJbY9Hq :U>B9ųePp8[\#J5ԏqFsG|Fu2x} 8-kc\1KPLQ^b%4;mX(#)pGQNqi\P8-y˿Bl roYfK7(wLC?OCmJ x0_<ҕML) <^o啂R-df;EbZY%EԈ?O&>߽1.!yLuܟ âA?r yIh DW|C$gKENЄ+5R+˓&kwvm{mK6E N*/hu÷8`Eg O=r6M1zaԠ NnjikMpgv`9mb}9{"JKHEQojicV.Eۮ _W Jl= ZGtÁFe"~.aݻ}l?iTj6eqÛN - - xKNcTJ8)m8MYv|g{\čTpg[ pRdӷp}C +;CKc5#`ᘏpSekzw3hw)ZT[Mv_ U;Oe,sgq6pgZ~f3CfՉT9TW(eZҸV<b{< >ǵ,ciZP, UsYj{WIٞO1n.-e:Z BIU!Ԁs%*[q+kH-r9=H~Z%:v-/JyL>[&1X_&sLnuA)s"@oOZ2&[%߰AXlK'p ZԹ3ʎfS_]xӮ(8m`jA8fp4_~5%㥫݉V/`D.!AK05߼5,'h '?1j_bsvnM|Gb|wӏlYs XE;G34EqXA\*9o!\x1U+.uN ]S_V{+ "bPC9SsҧfԸ4+~qPF|Ta _Hcx[` 6!hP:m7ǨnDTsI]uJ"cհhL GVB݅1"aW[_ҟsҗwGV"($Ӫ>8[PK Q47f-_Tiz%2>(i:`"gk`fˡ)WjxwIi]ٌ6ʣ_N+N+N؄`R$jVie/zjo1j"#dN&>;  BZJ mZvaXױ1 6~f %>U6}[,qR#d!'#T$?'G+Z,/UGCVuu1;nqѐ WQ,4jlNv=M+؞/Rn wlt܆dih#sihf"2)>6*mY+yun?B<\A^Q#hZ" 86rsԅ|s.TjBU-z;y/9.frʹ"!COޚr8: :؛['`sC`AI~H߼y YyDn\L7wOpmCbH XyT.]QsR9shxNBfGSM;`6wy5TD!=,Ht@E*MvH3@G̓%C}e.({Ces 'Apr" :e.Xm hr˾EOh]v"u^`{EzJYV] 8 K%9tnfwlq=U 6 bQlM͝-D !KjE/ a4 4_| b'3?;6WSG=Z% J겗e5H.CCif 2>M jQh22/<;V\t6ff~\ǗޫֻOP rH\QgN.6NhKKvk{=yٖ}fl'2~.Gӌרwy@WBHrO2i-A)goH"|hX  f-'g ewW}_棖Qu_R`/&hπL䳇 R345a7KT`m%.Fϟt֦7V/ a%8q&nG!R`64ěvNQC &NM".EVO&55ME uЮzbRGj{>S0/e{VgAn +1ɖ<4Y8d?)3UX=sХ7WJxDnTr1ٌSC\E j3Qw;zK).de/5S];]@gZ*lEfZY\x+d0` %*உh.}#ڶ{`QbT•pY7YG)5WU\~D*~x'q_mb!"$k:"4KPOB e{ڎ`/JUSh /s˳MS(~/[oL`]mJ O* Y'}ROIZZ# S>c!&YFeN9FvxGBX$m_0ň>m|eAdf#dzW ]Okl UiRIfi+qε}a|o(DlY ziP-FvYi$v-y쟈Ӟ.Jx$J;gEeg>.O#ѵ-_ _[6wg$4(b(^<m_&A;&=?dhe&p8 Ia2C~#>R-Zy4W86+t㎈iN- o춘1V4v?ڑhw ?kᧀN &KXDjy՗b_ 0hS=2=N.˧y/GgiBU2L@bC38d NJ({EQcFFV31V_sKP`BU 9Y+LRT_ {v'%3VP%-Q˷y #3(л V)J[ɻь= 4G-O󠤟6Z2\DK =3M48 L]Z3 l uu2Ij?< QDڂ\.ƨՌy-{?/{kbGXJ@c.ӄz;Pr@s/iCQ1hRC^PֿP ><:=@3!xs `3;d],9& J\㮪olvc `VI篊KC+ad_u)ؔ'w4# 0|djXDd ;irC+ή~%@h9J8"3Ӛko_Uodպj~I8ؓT }MlcoEzw>9`{ J7-ZkPKFf0 M]=;8x1*)mD }~ӧs$Qco[$s؏0hD%n5qV11a GX87@qxT2T;9[?PWP 'IcIM~ e {]sxuqIk4xVw旛xgᓎ*V+LHn7B8/Iʴdy#*Jx7Z;Vqx3|Ӗ);ے, Pg[ {BLzr gMp2)lsX(!MiS/2H}9~e%4Ze \lb<8YVS*jܬF< /_ȍ޸fP/!hG々JLQ33몊|ņv}1S4Ur7ΚO`15Aq88gۯGA#Vr7< 4մN81aCxN]HS[I&bPH5lp&S1KFA,h7q׀N<$f`2? 2;B#XMA_ $f"WzAZ;T!FZ~ I.- ͺTȮGv`=#iac?~.Xw$MʔKg-\rR5 !ͅS#YC <**Q8`>dĊ:{%:T׍f|2G~ڄi"87o" )苤u _bG}gP& n_h ^E1ӽ]u[d/ 9Zay3ֈaMEύdzǻGy^Y'Bu8fd@ܽ_NpW [ 5}Q5MR?l\eï (L4VW;FI"j!- -J?noȁpILD2 p ,A IڰhCZ,\\޷YD+:%e/+{|9=bÌ":C o ΅g=tCe^iRO=6sߕZЫxhߒ,=4u-S1;O'|? d~_ulYZk'"T%]۱xsba- GA>&h>5Un\(ܰ:5s}g__Wَc;U]&?iD<0Nǔ:DcuRpf!]՜ҹ] DZCuR,{rB&HѮ7)OKAd%>`qԕ ip-jXa<$3Ǔe lRvAbwVJaNnk[ܶQRH0|/_-o痥KnOVTHHrCu}Ir~3̵ tKjKH7 iTm zkzq;XEW~2wi[h *OSf֣"L?hy}ث&0{`ff{iޭ5:NWKH?< )B-3n=AClc3rnv•ab[1uPg\:5̓FcE%ܕI|:vr5H{mZAcnܞ&T]2ۂ[G5o~~3"Ivyf`G_Q7^V {=R\,0ާǻB!&9 )"HeVa9{9*[v3tDpw'h11sZ4 ]$99wA`*Ac8yXl 6a/?җQGF?-q mĊ#aEdkQxdjqWn#TBw.f0<MS;bz~K `? MNvk[X@:Ox, 4qXq-[®jWnj^?ܛu#/[$C)yW ' RX l߬f *9%e 6Fzg9WcnӨ+iM,K !RnA68I|$̖ǁKb"عײr5%uӁНL14DJ7KǤg Fp7]L n0bk|߃TɷL&D5)")ih^3KR` T۩ ;:_K#F񳡔1Vg, q|3WxXթJPt+EЛS(m*^nT9w:)8=]&XÛM֌)PKLFpTwD1;$8"$ׁbɫ"vMoHeUʇy:a-y{RhDӨ7=|fsPV`OgēqƟ4nW?J 4pݘ 5>l^rCUTLpXduBJĶ dE"a\±'0 GD&l7]5t@tX8q>|zFذDMibOJ! ɘw}uX72\( S-O&6 ؆bvp88 d>L[ OJ ;JLW@@PPGī@^i 8l D7_[nQmv dq͠迹QUVH춂F/ܠ:S>E):F J~*wؼ\|2)n-2#$X9|;X%K3&6`nr 4c8 N>z=6-l0F0d\*٤R0!zuIh;Id"<[gI}Vע&(`4uqbMM|ig0mKӴ6%mDp4BY!$}Q? {Ծ)Wl h=gt^'VmOO_b$;(ozntGX/D@  msI\'{]18wyf3f›|bSϴ@ObiEhƹU[mqiύԶRNqwV JN[+*:flOk&tẌ]#!7Yi5q{MW [ +Cģט j8\csD47{Oug/-k N|.F(4W NWzm4+>f#P*Rg}{`~Sm `4II펁?ޛ'wvA{ 'fĩW}7 ӇIqd%֧UJ/lf>4˺QOC ~*X%,8!˚'"31,;ˏOVn2#R|eI/|6Aec[Gܑ،"8>2&=ux,9AwM4YT<5Df}bP2JHѹd8M83zy蜾02L\@jy׏9h$hyw.qFKX8#|OЃXI\fAGw@,!7O}˩/ G;׿YEJ/=[ nϩ3 ج19>BmH Q3~F#ZIe"NuP[`BT_+?3N1OTMS&ܥ]Gh9WBILŭ?Ec:ݽVOZoZ\Y 狩E1`3>n;kX|L[?=La׻%g\8 ɓvȬe)sxXtǸcbVyߘ-s:.tw`נv[mW{]})Ad)6k;!\A| j){B=&zoir)ORVMS"D'֒E^GPqcvvQ(E] #kAXZx};cyM;?$[k! 8T$wsg`gCE)jxsh%Ul5C'0/݈+Fb7W^:"jcLlnt#e0BHLsgP~;ɟ/gU]HYZ[:.tO}8l{?04o6 õWȥ|ͺIVg^s5~ TXF-9R\Pg4&^;l*Os9.je3w}gg䷤BIxIiXu'T^5Pt$~YaEAﰶQX56YӗH'UR0zOOmKeZOtyg#$)B)%IĝwoCt=1]x00Ĝ&(.3/<|įD?ƙ0`:i} |m8IP(4OhjP3QA3v ޚiStO;0L ?3Pv?Y?E'49B5| <ʒ=-O.OWD&&bGkBM"*T"7Q[hV q 'D!'9Be{ږ/T XU瀐6KɸoQ  +ؽ EB_6|SQr;?0D~eN 5e-A+ b,LO(_|k]]u0VhǮAY;r2)[fjmd=!"5 KAF0P>VgY9Q24bXN# x<$}p--?ku)ZBI!(TFa4jSU~U/io.W.$=_a ٔzb0+*RɋxͶk #ӧ@F*턆Y7&]20fQ vzu֌N[ifbV3%ʿyf!4`iFN#E#BS\Ԥ3g]aW5J!dcxQ7̓F_׊EP.0<>ѯvvC1 nB|p6)Cҫy[~"WIA>T٢_XKx-ۖyg]s[2aUfzQLZ+扏ǓkU(<>txレcjG_Ev9J.S^t Ōlw8OXkծ6k=q$0 pQRlq˞"Do5ci9*șrH9ORt'Ͷ1ӳ,:e~yܘ Cl'"Yڲȋ9nW<;g-8nH98UOd; x"D%^r kf'@5 G8\{=;ePlTald뫿'h;lr" Em]$Qa~ Q)F4E z|pU*ab/T{1]%?}y#|\Dަv)<{'|S̓Zm۲&:pT]Tı IO& QW(VMܝ`~M|4>VK̵"psIHa)fŴ":lǃL؝C>K\{PZG;Q?FCG-i3nm.L0U֠g풺X9rjx6-a|#SB BҾR}_c3[faۭz K*JfKiWeCdB>k<]FQAJ mp+A;3[:LW􍸾^WJ?Vf2&F}X (N.)XfqoEk/Fx(\(2 i-K6_q~n#6zHVmR2ّVK1k `^U BwYYLw72%hY"+?\V ?lAn +~!l{/ވ.,NKU06M#:^9խ{ɨn6kB[C#å)nN n7Z\O;Oo@xh )O⛸ҍ-RVn N127{E¶@JKDpn0Ϫ:>MP7\ ]{䋘 ?Bm~b gtQp1$ԱL[7 Im_"DAW-a4 SJuIK q]͂jS4Ԧp+]AE{^זnR`9NQ@SfJZ|LeDbR.g>YQQzX@\[v[ 45ZLS`&z(=cײ1[v"e%0LS{3ăĄ0f;t{Fnc禇Mɚ/_p)45 R`0nD/5p54 SoXstoi4d ^YXH]&),`pISz7Vu.v#%[G+ ? B L\(XD г_ײmw 餦}w`ҭB]e5؞":v/|x ̯I [-zjSW`>#{u՝`)HdbnzBM6ՔЃl*%+hT-%΄HЄbv;͑z&ƃ:#jd5ǰc@@uLןm>+yU(m0S@]LJh0d4rVNWحDp'U~DDkC^.BLJ~ C :*=-4bbFNM׃- }G?ߧ=t]D1<VQPz'ҭ^fZ~BBTILut=;jb+<GoW0Ƴ0K.n^{? G!A0/[.}6#:cWBD㾢3èd ^sqDuJH['RU]CYSYOIJn3F[ w x4+\zE %|K#r%.yI ( +@#8mѻȻv22+E;D Iͮj4 ܻuut<ۡ0  O+/:} ݽpCDӹԇOD( n8ϿQqʋw:R2I@?=~c^ _ "TEA+N}'`(5?$$,2"%~߰*[J%W择Nk;=Eax. Nf-3ԴxyѓDV4PyHroLPߖދ0lŸ/T @-RI8iq .qO@BER.$*^@Y[]Pw ?ݳJڛ ( Ï 6a>j(VB^ #s[y2Qæjmس32* a3R~O$ȀqUΊᄔl bKU EfJjv,e.2ΏJ [Z-Xwڸbq0]z0vx4L=fov|Ք|/HM:o4NwH,&3GdEtj-8.2zH=yD&SajZe-TGucʋѵMO-Ȉ@&\'4~ֈBPT_%Qz@;-0#?L#b?ⴁXqIsu@1161g9gכ!xߑ0(NnXe3rF̰)Xp"@{}DZqʍ/a|&CoZ[<#ׄ$saڧ{&( smR,U;A+@eeSy~۠WV4PSzcoatit>Hs9pa q[ 5@vDTvȩrP lavb-@\;hL7rw1}Ew:,AS=`ɦiUTT_@aZ-~ͷ!TĶO,X _.ػ\-U.ߒϑ_I3D bS)I'%-D;_f@.'/~ac3h";JH?OQ&o\s ^ 0h~d (bGTqaԧlqzȇ̌za&$NNm74,J{xY"R'QH3WvTW,yI-S$m%uV n#e1Fh$̀ifi!&m}5@u/`-8눫 suTW +FWLƗyhܩgMcւ'C{5pū^JKfj$XDՅ$2]TZz(æS8rIc(J9"F$uUZRґrp"q+h2oE͈QάYOU`]d,KGSX]Iy_'XPkrm4nNKc7(L^q%aHu"## Oݣ )8Д@^ٹ?S1&5}%x=~'5J|[&B!qߛ:Q>/(m <s W /yt'ehRQ $T!05`.X.@Α[AǦi}H),@튷B.X=YEp/-ShBEDXs MsBK4{C5N(['8sB/!L-2[DY]tuq`͗d5n҅i7\wL>MSYB*CyLnQնťWxUg1Q޵nHN`VwK3:TatH>ˡ֎R)5@HB*2lA2'q 2ߝ7I; a\F&.@tZcKV+ǩKz,8?ZVӹ?T-+Hv]C=ٱf]*X;A).M#F n/d@/<+ }B*\9Vmj><I[9q@K kv$tkm\a#6[9[2T(ǔFʴ.4i)P.Zh'xp%9^)Pw<(wD=Ϫ9ozQ ;ZĸuCW¿x"gւb0Sޯx$ ك;N݇mG+f~0>Y͛^8@z_Has@eS+^Hɥbt{UEG2^n&e%K%侠`)W50dpG!2J p8;)Z#g%JVoyaZ,mk G#hsJyE9{8iA|D;C;M;V˝ {AW` t΅B1!TnKdt']GB0e`yosYJQT3zi zDD:kz(Jc533frv< {[)4iT:_doeR]v^G`Y0 νNMdYp'³E7Pi=. L'8Ugk= B,<=֑ώV{<0mtʇWa6{ZkD}_+ܫEhoX oC2E8۴SbڎIwf]ֽSrq{]>z.4]+?#iJ0v&CWGȔa lAC K"_We1:TLYsR?,uo5;1@ol3QMA&/saidw}wagEAi: )kZ{q)/!ƬFJ~U&hPe0ŶsW~>΀ ˬw(N\4gԗ0GRؿqKQJ_HNca>Z|-%pOdZ1+7B\Vn" Fi aQy3/4BN?D3VpITo%u}1!F}Ky;/v\3Zιr~*cŧmيPBY|" #M90An))y E,'u[g"0f2x&DCVb͟=U [%IZϑzS/l?. Y5"^*x_!JۓFj6 @UN<ӷlnFt, ߮cAjSCk6D\l+ˀo,n-^z` ۇpz'׎J]t56%ṛ3*ҿޘnjl9lHI D@q'vj*$_]VߊY.kԳx-b4W+.kl=%)66ͮe2{XlG:Y%pMl_ܭg3,wzd4 Xeu:&/ u(.KAEx/TiуOoJ{ra\M?56"k𫚥IVZfnӦ:ɹ͞x7X>}0;%&e`DuuN&۹aWdh8C?F/$ٮ-\0Rq+m׊ʚ+c}N]DmL|tT]H"_|kk3͢ (Z2d򪃾+/ŞL(ݧrLlqp6X0 qZ:R nF߾#ZwƑV?* owQ?[Q*SlH6Q[I3 (;&mu4flVKtOuЯfE`#mL\zڽWG NB#m ԉM|쾟ZٳvGl"[ 9C,[.\+lPrWES*ڹQp"m% [:K%o\:wPL U&)ּx.pKz|Qܜ<:%.6fpgj3O˨qqfǖN1:{I%p+ٵ_̑1*_TIM6 >og &x  CX N2}S*os JNmVa=7MpX?!^x׺#cj|YTꉲk3m}uvl  [-q~m/OEܜjVlOE5]аڗnmg V)%TS-i@? uc_:3*[ƤCB_͖7t4Ǎ[XZM瓖>mcDcaPAvEw|Y|BV.GRAV2p sƾsY+VWi:I92;Oʝ 4 #>hO;NUr+̿]tdN&>]+ϪRҾRicm1RKfɡc[.צ-@Ry3&8jG\աW;}&6ƞ5@~Tg`k6KuF9E냖5o= 4dZLgƷ@GIE+}Ř׋.u6M58ґ%ৎۜxݑE7̨NN+# I[eP6:@ڧ<bem T!) mp܆olM-3k_b"\4yWQQZkgIUH4!mϬy%A]D!>Csr3)Dx8OskJD,c3QrlKW3* n˹]?+5k.]HX >ZvcAO)3|h0+"Of 5lsb"~=ɲ!ҡs4#ܾj/\QW(ic3}cVMv0zF%y ڍ2ц̧SXSb( D?kItdz[ts f"V.Zv<`[fZW9JཙnuioN1lp-rjrJm>(UK-i+ z8ʗP6P!We5kmC-ho"tp.2 , fхjqs\ÌA /|"lWa٢8{ ?J"*YC)$NR0Ty屧 W zO];&O m^pv @5C#C%yݹ 2_2AFwf 9LK2kXⷮrwC_pXLr7WOEO=K*ʁM TѬ@L2&Egi?-UV #i L[?8N35/ QppJTSeS֠*i {tlg=1c~?38~X-Yw4#$ -ML2iPʦF}e[і  9g$v k%Zcx+ΌmBR:p4e5TwGjb))h2gEϙj@s-o,ĺx?3+i gWYƤ2V js"%TMxq!C-q|ވI#W5V we_b8rXL^'N1|9lʬ NJ0uxJ%6K[{QZD?JPmeoH2o=+zOk{JuY(V`ZbJj)~\DۉWl_1Uqh@k&S2 ]z4>vq,~pN0 Qkh8E%exKGkfn!{̠^LԳ ;׮{\XڛQm X\n`&hA>\~HE7`圠<})WYB zEc t_N20t6y _4GyjvQ !R=Y? ~f*oC%n;eondV:7 W'H2c{A6b`/,r)ixm/aٹ|~VF %GHf?|C(=Z&iWb8NK.N(@?DdF-X TVi ~f4RہB4~0tLc2LZƚ_e5U\"kO'_Lb,RRcM9sK 3s0ʩ3/]7%P|!__Pv<,u#\6wT *O0Ȫ~2~=+I)xw{̂$J^+$Du@{0W$q-dBϣI[1,Y3g" ]I6#j9|N/!Įy+P(~I11njsa!MWd\R rVuDQPC0[Mбxkl5_R h.:|ςy8e,|+:t3~TeɷC)S3TAm$$\9Eo\&m2Bʸ%`n*jCIk3'өD$Kidb)WN^%d[Jdg3wve75:`R=1$w{BҌ j$Y Sw<ne{*"#ANφfy*4Ta!I )ٹt`iZNo9^ _?n-琟`CG/e0=xUb9iP#?C p3im|<6kO=ax[S]pm;"xS4Z-Q%XوCh"InM#INE>O򝑸}odĥ*E+, mD 6VXT"ގ<1λ~o=L%00kSҥ`7f-Ixi?8`B9r/۳p\zb,=:G:nI7; n8?$A18&՗B!@ARCڦ<1m{$dاV+|$COckA q`-ㆨoLxs!><7QtP8ճW ^F`fȧ {c:UJ,dvOz OIO41cW^U`t}Q'b΃n%XTN]&eZϮL]1S oCDW+ *}|6gH`>iZ(=!O9{ #|gWƦ_\Y>%BK\8=x:qjU`wĽ^=M ٴQ( q-Z(Lf K|^J0ƱkJM)Ȩ\EM{- 'Ӌ琉턇fdôl߉}3$! W&QbEBcPd} QlD8K$) vDZQp[Qw^k~ςN^U?ID%j'|%@ۮRI+ɼn0bކirbɝr2qFGaC4F9=).)N%"f"6u|A#ļ\=[4782-WkL0S~x4qg5D.a%@rg`cG x_ Znc:W=Q$O#}3* AX53Ό1gl0EeRb e#;? 0]x_bM w"^fD;J 36\1r$ gRkG23Gz] b 1I"+L'e'"giIhe5"Kk1p엵ĖRAˋ/Vb>dC>`AFLM8G4a SQ0HAʼnm 7)>t 5R2n(0Mϣ1vu'suh!1 ? %TiݕDWix (1u#Poӄw0%(OB|:8DI{62t^dNntd! #o ^܅R֤իb(_)F09; K>RsF1DG|=HAéKIeL2+ę0˨uRgMfU# 4.OӈAQTpr|Axv%Rക]NsMMv$ \1=ʾ‚V F_A"}۩OfTCႝA?9ʜSTs7V@C͕/8e/FTc44ΫZ֍0I+5MA$CWAP~}̔IdJ.nH8̐.sд^AylK_w$y8M|U %2fGMSs¦z(-(6z5:'O\qJ75P |/Da}>1Ǫ/>/d,ojK[Z)?ԜReIh6.Q64xAڪK< 4HI}Rj1|t)ҽd C1;V߆ M#8W(FXEyC,Y]Ai^/NMYbrB \ZقF rP<4%󊐴9kФOR) 4V(?dBR͞.|b2jU,44%FVm|q?;†{@xUD\1p KO'fp+sY|+7vc욨 xTBý?dRf@D% S<`GZkk_N'z]+3}9_*+KK? 9s*?M?4ғ׷?^AyKfEYҸz?a%i^sK\5#-9,jg]=gWZTP+5;+FLލh<%,2(ѧ6u@5sf^g1I pTZZdoV,Ss:k"zR`V0:U/ ğq}L B MU=uu9 ?T3Cl1\m'`$~ n*=ZԌ E/Iuyrƅ'}}DJ@ Oic%1$T(".~o>CYNӔg>fzWX.ٵ}ldAQ6rS'W&33wT! |(P XOrيa?>tU7SrT* ?fMj@" r(ޚ7߈g/du ZTRie:C,Un z=څ&ܲ9{AL/1hQ5Xjb3>9܅ UpZњdDQkt^>wLn+Ƶي\`z'+Xً][+0xG,r\-IOp̽ʿp/OR,|Kf7QOx&oiXeg;W#{!;Lv&ق{<[{E_DI\ n6qR`&!r:eKffI)\/t)_ Y^(M:4[de,7z+8:q7 +OɃ eP"\l|֟X|jg|%g[#.fKGTjg%$pzd򢹎x򫪚vk{w]]*ve=> 3+dL}Z"]r>NI-lX6*1 l($V*-dʙ>x2&. ]4+f{qz ZdUӲ4V7^{=I4[ܟw]u+8H!笐83V"(6R5nf"Q qw_@ 6;&(Dט)$=9]ߩs-DD"b-5%\P1Ȟ2O&AszqšWKz#p9]׾a&Yt9=PԪf~/tsl^TR7ZI]Дh< ̷ ,7T پɭ 1Nv#hݥ󕇴 gK^o/rNjMyNA5tTWSx^or2;qC!@` ^Aޒ5&yj8tlhӢMB3cŧ^Cl^ oQib\"ɄzΒHr4C`jt -BBi֡Z;"!wxiޛotpjSk*$oD{!E﹀4'#%Kouzck?Cm>]XT@yTMYx}5 CvtJVg [hV7޹2kmUӞ9e'ZQl䋃)KF-ՊKea@tOf.5XΞk}[֙XW V}Y{Ÿ)1 چbXWMؠЗM~#'MhTL9] ))"1XdANŗ6JԚw0Fdsn F^! tv ՓnT~g:q]KyxXbz>K((Z8kx. "@D\:j*u؍2=[Y"[P9ronu l}ToJIbqp1+tbsog(>3L{u,^UmuӐZ۱P#i0⪆L*u=r+B#`Rf䪠ܵA4Lg Rq-iheڶUGyTPߺ@i#ڭ/j oXVCr!栅}ʫo$̔z_Vm$x]%9YĺKH|vo`~BN22蟝l QU]TQgy޻IoL_+mX^1r:"xK2 RCQT9ѷm(JI { *PQ7gq\8ua/,`|kxYz"Џ>tDuܾ-Jibp9!kx,*+eP1q&hOHzz]`d=Y00bͪ{P{u7H#xU6QF=)z.!Ńc`T +]Q!ܙw\uCC>TUjx8a-g%¡l7dz8B`Y5>lGT8Tra!4;~=pwE>-TT}/t t!}e}6D zuo|[#zzDLa_NeLY;e1PQ9 O48}+ gN@2G On#E# KM":kC׮,`d 7&^c5$3MΪ^1vW|)-K}9i& kοL!:T4X,Ws^1l'O2_7qszyCgNF̈Na&@mYomh7^e=4ggt 64"ѓ8Ƌ9Y.gTY^@ pã'Ox,Hu "Rjo_,/D1u9hCc R|4u]c/!IS5UR'iQzQ}oZͮU5&zaJ( 8* 3||ޥ*Jc_|ےa&tiו&E9EQ O CN.QTv&w>+ zɘI\j{ w$'9\llƝO\{&K?ϐ9ι_V:uRKMq;6҆ZMn]C2j{A "#>Qb O,nkQX?&mHrz9Udr @b#cxʸ.&͗wmٟ(e% gjEMM  JI%ǽzڊbN kd3ܰ}DG=Dq ΃Jim؃ ellc]BܯWG7~JrUY#[bkh1l媀фZ ܫ,J::GҕU½/8L$mw^!|E7'9Qv5YP rZ<<:SlիPq0~F¦OŘQ ZcOsڊ܃@5RD;q/IΦ}70 9HUzzUq_ GU[ZK ק2:X L J>̝RD]9 7q}tƭU@\6E!CO ɼ *2ԻrpUwѴiZ ƫY0xn^I6&NFgoÕNhIC䀸9 ^j]WNOix@G*|AЃ)+Kk'Fe)CKx9=w>o(_la\ ͊P4IY[ z(p k+o4M/uC;²61ƗkD4Ʈ0nF*kGT1g#WMե6dYl.AO,J*]5P= 2٥NUX~؍:xCRө8o8$0x9_ysx26$gK̰ﭘ'xlO{=ٍGY!X(QI\ͻPT]AӴn {)2Vr[{+oHAP*P$e lJ `,%yHS#UAwc3 b6u)Jp y={1aEZw'cmQ{Q9sf͉Jd|4b Y\?ì^G o쒲io>Hli<{5aKހ"F*B/o` ) *} 13dGwHS~/x^5zܯu\fP\Nv6S3+ 5TwX@5)sk4zޑ[䁤YPBgTC#^c;ֵַQ/ ٬|wġs1 6f_A^R?h7'~zO.y OJ#x8c]/@Jה^<{(B(}<7þꤎ7Iy`BkY.2NOEnfu P; Rk(_Tgj3ݴ ]PN{lZ6+lQdC1i$ J 1)?P~89 T`F Zx&LOv%KdF ]UNOj`B3t ܷ>зV{,D-XٻAh=}fQ #C=@.uJqcѲ 7ifK^rYiێ ]塱| aeۅd5wb2"yhN|Ը :",}t￝L6T_M׋]x1w&Hvkd[?B9 Glix>[,GGp5ӥ5BjN g @+S $4 ,”7 2&D3lD?mcZ~wFQo ̟67.| {id 4+I: l[[*{U &Xd q]QbQ@H7UV)]p+CtLUm"w׸a"?5EU|xGwfnj^#qޓzYe]k'!*&@8A EX:.I!\,Φ:45-aʅ *.(cr2@oVw)9a[o]̇ 'ٸ>4;e ~֕hgāDu ;JP"`7zzL$Fs 'M uQ)*&'gg+oSBGaM>f௓7&// w3.NR昋 g4]]$J<V>93 O-Q/N{C8TCTIܤ:" v2}37g݂V/<tn' n54C\@G 1Exyi ZK7'؅`&W* gnW ~lxkR쳽_J~ڷ7NrCM T,*pslϳz#t9 a:(Ί;KV˕,Wx=&6g3'/9"X/K]C" ?x?CJt-s濇[${ 8?;&^b#:$"ZOIJE~&:ܕ4sTeוLAhY' H6dp x5isO"w52HG2Cz:ngFiM)%$9c$3+%Dӭ@߆\]5L3gλJ@tlݭ[7I*jW ^U @KT+J~qӣ%F,úa9_AoY>L~=>ýCպM]n^FUELgA^_{2'`/Dbe ]Fm(2S$7 /0 *У?QQ|8D`aI>cAP VbʂzE@eˤ0<`{eCR Lճ{r9A ׸ ]؀Ns]Xɚ G+oWPs.޲UB4?%(1OXfz//+ӕGtv\.ԔŔzւ Wrxi2QF'[>![TؕS\x1_KMmxIZR_*D<$CW"ݴ£zrFn01_Nѡǔ״T@oEXӅW=Q;u>"up 6ٲi6Ǫ39c9=i~LRN o@R@7e5fHֵ7wsbCsl&Tq3<\,c= @I9v ۾w.sQS5:h$aIߦ/5RR{DW%)}z&ۣLG WsQ|c]N.ިt؇]jcAs7"Eꚦ(OEps:0HH评cp39`y`^Z-<~2mʮgQD/ӝDC)WqT48MxAQC.C:Q#2֚gT^vM? Ct<Q3OMHhmH[JEѷ _s1P@З]Sl񕬰j,(s1wY}x;',}Gy3um=;nKW,ƣ}g,J ey=8d :jyv+`CZFSmhj5ne{>B S-(mvE/A2k l] k{MH-{y jSnfXׄevwej޴С/(!yg$AQR%I-=&9FP hHze16'> po`aY]Ih}Z ׏}D }ic.asbK:9dL]9f:*_0^-Ƞ\M/3x!̇i!`‰|<ITFO'\7Ě7(0zaK+ x;=NsK^TWuTuhu41{:6ϯL0X,m)ՃB8(~um^]gX_&mL HI./{:ud&k泚C+堆K-0ʾ6qf` @Î(s { yzdvbYkp0BSƒR^M"/F\1FC<=6ue+ (/tHSWt*Ydz_~.૜%09وj ~fsÁ_'ѭV`XPvW%W9x9@#lhEi1Q/EChRH: |Cњ,EB㫧LBr;Q)*P؄_94jD{s:J}ӤTG~;|D9Pn R#n=ŷ>iburŔnh7pR$%=m,9sb:9} b<{vO\ɷţ(}}A.(fPeƊ{v6a8V1BS/]_>كH9b .ݭBhugVܼ[kd=x3uȮ"O,qZK#YV'ע%AۍZt%΍mF qk45W~bNg8h $CbҒ&>ejLK&TPs#zI+r5pv}4<e eBUk );ƯI*Z<xtbQ/>bRC3z&wU\4_Opi\k8fZ*=LafC5a`gUmm4v9b]P7hQ;_ildz~X@~i0僯0 -"!4Fh )1daȭ.[2 uT]Ǹ) #Zbp#BJ,Z %ծb4rwG$܍a-N56}~0d$5VYokW\l}CA"PjX?m@##0qA;0>Ǝu)1#5-7Iͺ̡*п tU]'j>&3!7-fhdN%cVe з~p5ʈFxgnO~W ?ORGXz*;!>)KInkt3}ꔄU]m虄EkqW,1@"Vz$[ъܓW;'%2Ri`SB|[%oplAB=C.؊cyKW`d9]BBkmk_Ӹ@6yY9Wp(-]U*[_A@& Cmz i?En|ہ5/)R@TӕDT7ֽ•ȓ)n:):Tuaci0@mp~ZYS`PXyI\;47̉ uQ v5v S76 2dg-I u{ˬ-}ӏ>&i ҆ɂH!^s)ND6]xA# ]@5lYDQ FѼ$Yh[E^UTe&TX~j#іr%=f.9>fL^߼;<~_Ba7 RY3-2ѽH~YҾRf=.'Bzq@+(s*'w/JnشH.j #Bʽjm]zdz-x$qW  {@e9'~(I0? ixn;rFkκon`͔,>ũpʼyzNŸJ'>y] #|\7.l45f~/R_;K~zT/Sc,M^5NBхL% ͡`i/%in߷bf-oQg,b*WPuA*4vR+K";G5ʬUp%qݣz 'Bԕ$gЁЎ*@,2ܝjdY; t}C^k\0.O"+ [sTi4^A7~wutoHyj`;F1l2JLoƣd*Lb2W.I׹rd9/o>mNT|O/ge Ӈ")uT0lGChR~q:l%ol$]*!tbxh/K ,D?Hӹon㰱Cb2lrCJ7vlN⩋ %JRۈ/* co&`n)'$3һ(U!yB,4Sѩ1X}ԇPMbVAdZ#a % ᗕtɯQ?C2fFrL m&z폡|i &|.yprwT m4(<&wi{%HVZLf=io G.ljVQ%|K"ْIyA);%_hF)lTHj_? cӟVDEo8鋓yOۃf)V,\݅7U) [\ ºT$k_Ee/L̤j}c*-o.vMS!b`BB4Y_ZH}/稫A'r{g/ڂ3_5U􌝀pj4)6I(qA{d^h ?C[dY+?yy|@W~6@NgE &vmv P, z:   e}GFTyl v -wjVutA{(䍄];[fdq6]v10 h-.؇um<%'ْN)$lʽ ^51D_Vf|@zbH_ @kKgjAiϾHkWY ҨJuȱӴC'Wh[L)`vCbt‡C7Yϱv͉c]-GV @X41ZaUwo/f7꫍2́7zX/?X3PdVWu!8hU(7OYxk9#!ZEb@'H^079+|[-C$mq:UR"aB[.ҽL]8nOy}J?dbWQtU>V5M]˦ڈu1d/9||о}Jgi͛u8xgZMhS"AeNl#YDK(VxY<[/!mQAW f?) `޶ ],mT _3" vQN܎!h[CeHyHX rhFwr[l.榴A Î-ْM o]5wο"5+Lr mr="y}k{G7d{y߭aFw2 I Å;LɻcXśz'{N )*NNx7\CȋUtfcG]?$Qb1-R#ҵVʳY!sՊ3bdnZס93FXumNt J$3HM`gӦD=$"Ig%Co99R ըdq7(jp[ 0,] #q s x4PTܞF˵Lk&ueY-1@1p -ʲW YZ  8 KmV((n`-" Nfʪ F:25& 4s اX^E >%׶P+@u,F֢uO$lv "?DKw8?wfDUYG."ײX"8!\1a%s,fG,Mkf Fu wRHEAԐ1g Ϻgy9|w0WsޏT:yc4뵹[nqʥe2+;f~q4s5r~0{`s\yLouz7 (Z=:k݃sc8Lu\%SWyFG+=o{@FmSVh&pCb:W& 0;TC/E&㜬1u.Ay]Dξ֘q$]xb*^7 Q b# HE~h9>-Q_ga AVu1u2O)d,6wϯs0FInlw3D? `Tv/qLco6 z0="~zEP@J-}Ӛ3'Rv}Nޔj0P+ "]_MQ+)'߄}Vȫä;C+Oc&1]s{&R=YEٵټ1k#=gkmrпʩMiB-S!bo"!^;oيV'. s\+=fFn-ݽFQ@z(@hCA[ܵ77} RsAl]M8=&zxۡ0m7 wUU ĔbZ Aj@L_:ͧ]%dQ{NKYn/ȗ 6p{xs0TSЦj>J{=ZngMjJe@eڷiAh @Hñ`yS{W׊#k;x[$쐌wBCr94G /E8o.@H=A,m޳ێzJ6E߮%xq-{hPEc* hxPBƓksH+9H8/_>kNǰ6Ó|p&+Gip+O+ҿG&^v./QԷ;~1JkG @dWpgyUC q+]kgzʺ5; DK  Hd;^i3+K )Q g4_ROC$UٻZ%BS&/ Q AV89:عȸVn;q3}>}xEqRw+4w;XK_ɫN򁑞ɵp̑zhPmv[;@f\tsn3h]]2zϫS|n/';nehiKKUQz:"{f<BY&[71QPnY]Dp5(=sSUE^ LB<|BjG|`vj2OY|NLL2QiT͗e950l 0/ evcNv25.Zc, х`nh^F LfNZQx7˻ ox8qNA_ ˂ӵI^>\{ȢBCϱS->+= m fbOj ٧)7e[sm(Bx׬Gˆ!2Ŕ9}&)6o9AV%7 wO,X(YEAA -senAeYϥe7[T2rL˨؛9Δ(;l*}rt 0kl#!ǥTZ1aj#2ަYZFb"Mη.4BtBUIr)Rnϣ6Ynț[ x_!RD-!@&T7t+ɘwd=~״aK3!Hv^\XP$ 5Σ%:z@]Z Nf[ڜ%ie"'s@5Ld<8idVZHK7 0@+͇rǏžcȩEeXy58?2&B48zAXwtk2>iesgs܋ ?'7Sķi#_"6zy"O/+oRTc.V ȽN&KԞk!_IX)n^xtyɦ8|qIv+4bO `4ͫӍʹx`U$Z~yE,Q{/imhl8p6'"ݶ(3EC?_G[-4lVS~;xhs>s|-pIzU1S@ 3|ly:HK[nS`~\^.Abj{6^8K$3W`[\ N2@rD{2˦M8o7ǬғUĶPy yy'Yn`s qdM|g=N/DŽ5eCZA@tc'-hJx(𾕺=EϚW4H[erBD|f;uD N*>1!O.ݴzQ'@n\r3>WeʅErͨcgRQ y^a15 1AWcgC5HS Q) +rqZAdɭD v^$bZ"=s6U0@uB݀BN/j̯YZ{W ,=4":bx.dmuhkgGxxY3Vq`&#e~dr1xR)\gR^Uy9|}=j KB>yyG3Z5SD# w.o fv>H |'P^VO=V0xq0+<ڨtΠՈ.z>Ox3Z;:Y.׾a?_[9 &j=AD)vgI>#DޙI ٫FH0%M`]u OБ}[c6a^Hݽ A 1ʳ56>ڣb))}p뙜UB?;k4?I[mapܱ. k2D`d[H+M3BjS: ˫XI+=Ca, T_4a= ۱"oU"eX8HIyئ>Neb6o'>!- (x;0C#-rP5fU-RbT| EϏ4/CX\ױM&}Aa:6&dlXn$U\}4D<eō ,?9sք̯ݱW^ѷT^ D"V|kbe:;[oMPQ8ň5::pY1d6F`e*\YA}[1ԉY~v"j GRŹtz=Iyr`\Pwhp^R>_/5' ZWxWțF\ƶN|.sTk!Añُ}0#gp%P |*"6ԭ}_vt Qjw #`XgfV]u'[!μ6V4NO<ջhq0,v~ݿ±bqUێb\6+]psS M%{pW]٦Q/`lvrL4|l)"=8Pg I̖HfvnBB؄^/\&{,2od6C|,%#be (ؘDQT*.v|՟Sb^ Hw@\KO`TF69~:55\ͯ%,jt؃fÉF4Fp?#(p[XD" ox !#+ T?@.%Ε`Ei*Xk9* 8DK,|D{)]Cbo`0Hr XN$YP]v#$ D=a>|F|yYǥ"$?=\p! r#im,IfnaAȖkym@#"^qDte[jݜw) 6mޗZ! gxAROX9꨷aZ)Ѥ\2=ɤ7΋[ < ²2wyIs`4 9%a0ԅsQ) 91M~riz[keeHeQu[#ē-;kGlno IݩԾrKXcByVJTeo 볢P gpPDzeI$srQjQنՓ!_2mխ1ϩŒ qhm$u]ב˄~8+.Lj4q6f<@nP g.L(!@1x`Zj{)(*b4Z^OwYȦs|he'19ZX$Auҵ3ռ=ekԛU{"p>o]*7i 6Je:,%jJy "X OA⹬U0EìҵA_̬i>I_=Z$+ kidꞦ ee\ Bj)Ӯ3_ߺV2;C#v  ]~Zr׊hOs_I}IO.PYfO,.&$bŬEm^YӃB XX*|j)㇁SWǿt|f%\A:5l~O[<:\ɷ2o FOeؕc\cm):>!6A-i]V ?ki&oڊ2IbPP$UE셛ݳ t,ѡ}vl]n{g7X . 44N]O,iWˑtV mƟS:l.N@ηNv0E%_8֎k>o CP5 ?+ӵv·jV~I(Y4Ls(jK=46qhOL5Y(Jrg3-es߉?vj^bFqu8. .(u2ܞҹ`j.SLTg̓˳ϿR Vlst O6OׅZ7)7W阴xY9j1F)Ї5}tKSIH&z[KPsg?q6qN^˰UnLLUD7w!9'Z GqBe[Gٓ+} "*J;iwZW8Bu;ؐsR/%zcirܑ TYJ6s>XxSd=WT*ׂsc۸ [kLw9}n!llSMŬ@ 9SUR5h 4ߧ% ^Zsh )zţqWYtГ f4ONJ\J ~w0 3|KK{Ze5?P; 8ǸtlIpϕ.݃<!!)!h$|eGx,te&a4Z9$X0`3k&ӡ0*-c@PgpzSޱ.>9QO$l b$>,7ƚ߁l冖gPM"mXghݓtl"q]h,_Mc6E.倕]qW{j;>V.YhOf:'bMs6KFR$~9dMvȄvoA EStlZ E8lNߪ`9]ƁQŠalĞ* e_ɼs `p"w-c  %y֨ڹ"t3njF=D|pcD۳kDH\@2XU>u?<2XgטJM`ѻ+Dv39kpC hldŒa-HecL]cW"hP~ E-`~!t"c2;hOl'y jѫn,J\Mv e:)7 %Hj&1]s>rro+RVQJRbXKwv( =siy"پ+e%k 3+0.nԲ{1 Z{v_X O][.SM$V}cQŽ!hi{a>6"K[zObmOFH)f+2]ᒎӾ #RWňzc]CJ/c9őתkQ$ C\bqk^vljHl\ f;pE_7Upraa&4QټttЌ"O[UM`5f(;QbqF/ 6S hXMo7( ·I -'\NUVx?]5f"lf(Y!"8j/$sb45H!k"U'˴AGWz|^jRiV^"hCzN kxv<6 & 5"[S.zLusR]YĶ6 gn`ށNDE(x_ 3GAdQeI mdѓCVw=,,Gg86u3Viy/̿s-.6#_y m6ZgGJ[Lv}a [">XRcpC@NETןu꘺V n~86ӊq4z8d-+@T*7[]{`v=:y OP:yAo/mV#7WV}PT@c΀A-?Beppn:DF0fzԖ$ә!ޓ ,O=?WĿI+CPf|9AW2`7 ͈ BI)6ckOX%9Z)q[oU=u -w䓳psW̝ 2-:D1!Ǣ`tdS X~v>W>v|MfܓS~!K90kaEkPCӒ+Nz^! #`^^*޳s~ PrB|f*z|N׶.ڤu?fѐHxRcAX[1fا6om ӀQg46M*Y1?3[bp$RѮ&K`}$g h*nRǤjzɻ,Zku۹_с^Zu,cj)߇7a3p3ja>-o6e? Fa1! 8AOgq^ J;MAuY_ z <$5] = +*(f\,NeK8ܣL v`=Z<G/s%&h&U)9{`e[{ gky|T_lT%Lp$i Ҁa'EG4#;@ ;"kA_[WFե3:"B'l-[4HOVFS93}l5lU@6,6~ǣe-NWwVP#>8x8V#5?`Ҍ1h]]%_5 [n,(hUCp߷6<=ݎk-BbCCZ#R\7#}Iw_v+PAn.rp +ջ߹?QuPnP0pjEJs2%A

\K Yk5t ek:Ցu9愣N{.va3f=ܳ Hsy=z~˟!A.\'G!%nB*T Ibzг#QN;e7l z&7gsيVbxG*޴.#z^mz\ln|åƕ)#|j\>>j&jۜAlSW3Ʌ@;6;eOaѲ!Z~J8eHUUtZ6zŪ14?yScĿ-6" %^=Q$2E b,NxIR=8!yỒyA-]YѳTqń Rؾ+o@յDI2 U"C]ĭx+c&"mTPH< Wr* P)#~'KHT5F=v#za30Io^i'ÕeruH ;0v2GKV3LɌaHe W0S?`9`o|j`QJ@N.DKZu461:_ooqѾ)8ީ&/z9 <&,/|Ӊ`m\8Rz0:]NOU5ĄYO? @B%P'jEwF\U+ks7~{N;U Oxh~RaTewpAk e) ,]<8@hFöU×6h{FmVf|aKs 5Pr#с4F)񂂁C"Sk H27VI숇LJˆ5W0kp;MQxp"{c)bUxJG%U0^x b+3PABh螣Q笑5]yYoN_C^1M6BDpb  ç *SEKwZbKϨKkfJ3[$0X&Yܧ =66͒X7Ǩ !a0-~u=RC+u8 PBwl/7;U?:|}4>P!o:o [գarxgvM|DSad6$(xT.A8JfٲQW[!FX':TuN>X望$\Q c7~@S[?,ǚpsӃc΁ГQ캤٨5d*|Z`58!݄߹iडnɌx&S<νcDSzV_Ll>ː`YdS]Wp/>"x`?Y [t߾_0[w3RrAL쵦07UXCO98ּ#fg ـ~4wyމFb4NL:≶cI1dKfaYcVoSV7-"F'l)c*M|h3.1x￱1+5c;rqqc)N(cw(>]Tх!8qNMW9ف;D ܷXNvrPUMdie# V &dEB@K1= LBEbUmzW1Qp(ͤuu{ͱkVLnpc^|{\l< Dd!q P@ʘ+3., ~~t<"r1K#ti[zOM|ʔc!>~ a]"WE/:1teҩXxk!uk+]3u9m𣫼aҿn+o&Ν3若0=FX2@0Xן)ĜLXC>iXi#5hD߈ԄXQs&VȖD*תR=š Aw댛=)`1a'ɔB(ê~sIJgw ꖎ Bp'\ .Fh %% 1xlĦZFIPep +D$Y/ϣwa^LKSjyp 7yT'SRl؁^F֌Kb=FŨ~8k W b Hӈ?Y6J`J<Э =e8Ɏ3AȦ+Z ʎw>41Q*[eIww i(񀣂EL05 " Fzxf!?mO]b5b1(W(sf?Ire$a)Z`=eKc!Yt6"41(yk,Mp-l)s~ZSTOܤB}}L% >X(s)O>no-i)H9gok<t~b ذDL4V3&\uWcsFrz0x {0d3nyC { 8矧BVು(}Y=f06) CFЈNg7Bxʇ$x LTI6.=TŘc[ܑ,MoWhFIeBs}Y)Cz-IW{Յ1_xyP/$c+8w[ 95 UX~;NORInm UahO}Ixd (7?1en2Ql(c{Z"᭕G_z<Ǟ~^. ι?z{Ar$JbvN8-,Q@  %'K<56ǿc? OЁi9(fD@ʊj*v_1*,?(^hA(P4nouyӊBد9!8xY5cKB-JmSj!k_qu3cAV7*I2e@)G0?71O\/vsǃF;ܕ\Z 7CQc]͓fns30:h,Վ|{Oȟ;tq4=km})iZ#UBl؀zPK_gc/<5#m?/=n-LM"<2zeBțV BUN9 80HK| &' fOc5+)'ob*Jg<Dss\+ߑM4P*I A[#vY=䀦5?igb20:,-NTݐ*F_Բ{:*3.A>-NcNx*!(h`ﮊ8Ñs7agI i\\RaX@Nk\27@E\ߪ$z 3Ĩi:6ʉ x!p}{Vs5}‰$}v`2 lDv G 98(=&H]oʴ1z oאo?<=#X"0msan;EGO*޹ c.8.Tc%ٕ+{M+vem64eHsܘ?KP(/RUm ?ZM*勄=;Tt_Toĸ񄙠AZ*靛m[fV@s+٦&bαVL@C 4`Z;H0! ;bc6v[fx|hbP1:PHE*#;xs95œ^!\PxH1oVD٫wԝdnUl=ތb\6<-cWl2oþ IP̞Ot*?I45S``xVC Jr%IhuVҨ Iuk6gw5PB1&<$S-z $Q^G? s) ~:қx8"Zkjw(r#$G:ԮV ߎ%Lq?NSlhHUN{FbpSRZ!hmJRxEwxЧ>Sj)iGǎ1,ȅ eƺLؙ*|O PtuX^ѳ AV(/W7;qg|YIO7Pr2` f ryB:nBMB:U: ˄vÅz$z|$/2D,&y'kI:)9c -|S l2+\\iۨ\Ùk|#`/]>PQ\A!u&'szSΰ,B^@ʩR?e};3! 軅U%[Knfn}o@F@l] !H<)7Uops^⣐vpH=jFYQ _vS)l{KaxȈ/Q ~)a}{*g!xfzW10"}@v: %u&|_DA kM ݌W =3 չ]^!CΡ4J\x> @CW *ׇR>̲q6v-pfT]z$I!S)dW[$=ƲָUVgAE KH}%7x"텩CFeN<|9ei .߀Փ(0Uf=C ŀ3]L _R)뼡]e<;v ;H]}OțjFQKGc\Ճ? vT4-My34ˌKķ8dDmHfq)F(WɁg kGB;[4]vE$!P݄uZ<9oԒ=D&c1<Qw ύ^µcYOBJ(>zڨYI>^xc%yG͑Q;'fi/6 :)dP웥"SE,*~<;چpYm6;.=P H;USvJbrTt Q.щѳsZl{z,R<#ŦQvTtY6|v{ܫyPR15 YjYL8Pg=RTx qck&KJK4*,L| 'C '0NkTAE Tڢ$u ͭd4nK qO;qW,|ʑ X_ò;ffPީ3x Zzb/ٱ*oVg/Y33\9gߵa }AS:MFޮB3&PJcYKr?WDCW~?%<0D GIҙo5'"'Q΃Doh EmaA/-Owi#nY1v`X~uMԞL܅TԚJaE\;$2m+G+WP>8k] öFJ!cOE)=B׽ WU鸩л! Il}|dd{E=<嵷!/+e>Rw7堍0*>!FR6T8nǧѥr-;Έ`HQu\wHW`/eTKz^mKRT { FЛI# ]돵_#$)21:٣ ڋT1VaAyp>"[ T2w%lA?+}*(MܥKBfgTɓ^VMd2۞5oSb+iQOO2!, l4 [ĥ϶ vCkR>n'G:©Iu M=MTXu؆y{yBHFUfbҪ Zإw'bGfDŽ!XyPh3g;@8&αo͞ቔu(\74f2u)41'*OS9`8(? הhy*|n^#AT  3u:@AjnqNQ.`5q?up'y}( SUh{/Nl콉y4~|1FO/fYʹK<vmJc9rnMy^W%$ֽ5GE%tqJ3+7 gOR< ZNF)}wOpr#N8T"@ 4f!hNTꥶLA!:e(xu4;C.ǏQrk*# sSm^|VPҧnvWE;&]D>?'ݻqB=_I&ƛr^cŃjm[Ec PX@&S߼^h $N{Po[!̄Ccs쯝 7U uQ2?N)'eRvI0%ymx ɯIy97}=Ѩ׺ה[3Q6_iϞPf˯m%$<֕9Z̸YiGl]̨ҕݫ$K{ 笄QAER{@wҫee\RA4@ { aݍKT >?2Zx ?1y#O޷oZ8qoƏ@X =cvt>&zظQ*PvYՀp {pJ{ުvd=>nd.X*U~uxWq:v8 Vq}ւS< ~VF5~ ザ2W?)=!:,1mjD(dFӎHQoi[9&\;$urѪdD`űaAl/%ATI!'d8h@cG_X9r mL 2=N]!FuW9j4d @ @uQ-ݙZ7y狙eQ 1(hh26PuU"7njgV.*Zy//Yp\JwAtZHs\~r0h6GN350Jyt0iyHoO ?(%UXA҈aF>gA6YfkY?`jbAj~X=Fdd#T%{ b釤9#ar|(G9!vSPX4AsRNzC͑H2(pwX<埛)i𚀿%΁mubMh[)^? 81iI'[xl|FdE=PA\@R5e #_ EGl.6n,4޵hȮ5z/$CEft  cL>6)3Hټԭ'Yk{sb\/SGT5C8!oc2=.u4/9ZY A1hNu5fA˵L;0ԸfxaĠ|m|ѼM8^'1%F*r]'Tqt1!E6jHd"{bm>ǭT{Nn~7K3O}9M0#\%g!ݸO߄k2<%Ř^`dؿ >9XL, 4R4w"jwEI=UH>5 BDN&2 e7 HK_yYfmvAWʈ"xZˋ}ai*j&UmS[(2򅎬ib)Wh qt{U/[ G*\NxҲ^yYێԱ/O 6yXQ}.ę3a%Jͭd| Ѷ;ei~^QjNў4S ?u3/ /#X9ۯ4rah3 TRH\-Pr˸RZ W eK&%5~+<0ߜLFrbM@@HZm&Ci,.t^hT(SUIO8(/2SPgooTFOdAE&y@`+z@>4;hh5e.L5u8\Ht9"Pg_)7 *0763IaZNbyUJ/}>?\j&*[1hΖS陆1'7U/\5|/ ~%u ,\fYj7 % yI]41G/~a%!̆ێ] L1.54f1dƭ ]?+2JG$hv\#q8Wbqs",{[$\} JELbo]+v<ĿpwYBe~ *g?hd.HvZs} nSA@m3`0FESDF\W_JE +kJ:%jj=~1t̜n =o رH;XDzo&s:*7`Uךzk5TVi˜bi guMTkDlNf>ku,N$+Qg<'$yՐgӺZGx;=^MA[?l~ԡ7]CuڀYR~fmީ|&`,Hw~L^Hl%H;R[BQSr7H?WsRgJ.}L^VMbᩘ2\Yלb:ʿ4qdxx"dcfMaSkʻ_*i}F먮S}^c;xjIrk@j(S*2:Q> F+`WTDGfVe1ع< qCv\Rݠ 8M@ }-=}?-ݘ G BV=i`5o*"^Ҳ;m#GakBk>5fl (*zpPaboDZ#@v2y!PũY1}s ɽ`LqP㺙pe:sCkpun)MoRt0@]=n7;YOTZNjEK = cK=z$ZaA}>-q`.Bo.f\D.KFKnԖuيF,&l, /Zʧ>/yᰦ3qFYTA?K9BH?a qK3 H]og(H! $F{vrX?_*"DM&¿MI&iZ9"n%?aRjIЍ}s~=B.cc\lVL5Fh!AT(U?Zz=2(^97HRm7ɶ@}XCүL9EWM6QVуaiPt ጓ'&EPL-|F.1s̪\iUazMJS*oY!Z#\K=y%,5.%[\Thgs~p-pTB󺆴tGn=Rvqv _<;Je\qJg-{w Qя uAn^QfX򕺊Գ('M.98BgsH}ͤD{81#vgpw,{-ׄaU3ݓ0/ok69$ʃq=z2_/4DKXXMR_[Go/VteВY{qcm iTmTgC:JϜ[ӛtXKU*QVQh5k'X+/%TMuƏQp09(CGio7Rnw Ɩ#tfqBnߪ] e4Vow%w '';U woLt;m”>gqdR:R.]$Ml-[r}7+-}@ n9{V:w)FWqPYQCcpa3{ ])~g}k2p#cfzU?c)yہqLyNj:oR",|OPO@\J"3m&[U)~a3?kUz`u6X#L^5ILR=f/}n)тbT>';n#C45_йL-֘W2(3ϩZknʹg{d lлm[\BC_&&[w Ȭ&PM[8Y2m`d5rd)UPbWBDt %bWᤙB3!)`؅`}DqsX l7%APn'Iܘj0V+n@ 1'"6 ,uU9iwhcտly뇏GoK5 ^g圥='z"f(|Ow6mxgF3|D4~74ū]"<&=bvYHȶ:::nItOV43 t} HJfbvq*P9i 2Pijjt7R2gb%BVxnoZΏǚr7DaE̊=(}g{% LkY kFbm2^DbS}{2CBS K, W\µLذB9*k^܆`G6)=-9&@ !@zB;UUZz/W+*27(NZm ~0ݷD;% "o~k %~Apxѕ->G@wKx>(J+ /M]RuB.ZB:niO"/J@u8qZ QFhPxh%XC/'AjdN%'h/9мRJ!QxVX3KtheqN: LgwWPǞDH)TconqBj;ElJ`= |kN\3jކʵR^q -O(j~*G`w8&uiq$i!"׉eL]"V dq2*GvrpU9YǑd+-\OMol6 }$O1w7Aߍ`pA4Æ7~"Ax r}4Q1YKsX% -q&j4F1(47LLspQT+W].fbY^-R%6y@"_MKFeǣ/2"L. z\`ҨW@m}AϏau<%[I(E)}RN)|]y|-b^W6"$af؂b_} p:wݸg =B%~F gEmZY[3 ]E>ڻ>|@@%eJ?6kpE?5ܝŶGdz<>ODlO-̭5׼06փiFAzy8A@b('b-n$:Z6Ê' Ma9wqRc< ~{e'ZcDe|7PQn*;䑏$QPS>R5ԗl4Tbo5xƑf5+̍2ŨBk(7EeL'k]Nz"Brkb=P 醡LOZ?189if%Σ#TZ%FD?US!ҡxp{a!J^&1v{"X BVb[⥠71U?(qЕqn\ ?hU#4S4^%<+MJN{M(Z !u|p(ݽw_П^vQ^kfK믏h` ʑv_r+#WkppQ+Nh1^\#轉abQB[ [TRנE}؁d5f1\ &1ГQsRs6-V`OgE]x5 ;Ǫ\:4qiq5;(٣^~iE㠬v$w+?3%I S?^V/QJg}nU z1`: ɱ.=g_MưE*#sC#K?()|!8"9K^&Ʊշ̴B*?Ԕ ` ];̇E흞 ʄ%wv T7d&FLoRq6##ȂFV~SOŅL7}YB "s~f8ޯ֝F:-宗ͤy׏!PvR1;ImED[ۂ ͣ˷p$-Y^~ .49Ga9nU;Onpo[nw/&CX\bx^ptzy:/e8>7wkJK"2e#"K4l_2tK4f 93+ ӵtLQRTN:ld;QqEy~;l`[H^ԳtVwrN ;D|8PՔ\e$kJMiiLW72mḞ"Qg)"c G(K|_\t~w >b^d7 ۛu022"|Zo"oψbWCrK79DSۯ(JgSdshr@{{?Goۓx "~.jQlalOwAl.}Dܙ櫇 Ҙ 2nީ5VSS#F4N!ԡ߀yI_7r 9J[dg[5+ r8\C˩~ʱӼQ0\Z!6:Π9ZF^DGE,ڣ )re[;\[hFc) > h[޴i>hG4}<󸋥I o A: )nSO\+9|DiXr<.hk0ya>C+yUgƗ=8Lska۬H=9Xx.1jh/ JERdٖ@jt"G{soSAHҊTmtY^QϽZ՟%79nI:N Dn%nzѤ1XcQC{aO0eQp\c- 6oa"&FBaGt@ܕal%t!H5I"jkϜuL,6If_{i~5tL&s<= `9hN}`a ^ଆJ5t2["&7=(zIMPfesaxRlRo ""C+nGـ|/]U"H. }]7MdlY"qA5`Ms` L%+F27=s-υM{plnt^<`8u {Iw8# }S׌?t:J"dGlj`"ϲ/wF]11`N+ =S‚n>О(#3bkNc~&*j}$?'c :"6IKw4A94 7 ~wkÒŠ,ʀK x՘v o*V*6UBS,6R,PErhL T|C-Cb(FF6& u.bfnkBGH #Dg^ O.w]#E9,US%[8LsUoЀ)3?c:k?Pg D[gY)JЀdFB>+ FI` *KDLӹڬ0yB H-PR43$2jȢ}X Y'$5K$[Zi6+e0H; QʀkNuDՀ{,zY7= zdJ?F ِ䊕@KdK#(Ձ $Rmhs'(H+s:._xJ;>$u1v}TLȰSw-K2 `Bz_K TO+֙\Ll={ vv5 pDB9[r"T{D.MX H*&wk׍al3H=JN*O@fXO.I+7'ZY1 U}cUIUq k$ǯ#DuyO,Uj oN9t=wFWFItRUᣪ+40WQЀ"(Xͧﱶ٪#}_jrc3B*=>Ax,k !T|J' 20/qb^z0oP(B1zoPP2mZ!:NjK]Ch"EX w:#>;ێڕ&RjK8~?aB&K z ۱ ',P~ [- ÚTv)T7V U(H(ωekwEj5㲪 ȅ,_xS8.!4a~nCzS@ Ai"; ZK"W~c󃻱X|6>lJBB`d0EɄxVt^}:Klˁ[+'V24h-Sڙ׌ lAc@v@no~ڄxB5GTWרj+?~Ojʙ rzpXQpjrB8&a.|r=] r%rxNV]R4,ֈ{m?i&As'ډ%Q_OVf?F3YJnz 3ˎ%Fw? .d3+F(x 5`/&l\zM[ux(o$88_~ !pe$k92;~\t}ۗgJB1hREYH58ʜr)xV(A*/ <|69WBu! E; @5y=Bq_BЩNn:гiꐆn9Ά4Y$+2dpfgت7)5bnMa?LQ/ \{E9}}V5eߖvp).2/ `iwmgv"CH0w_q|m 㖥yYe˭)XRH@;O7{(G#]6]٭LCl%WTބT!|TqY`aQ ULKKto:[VĸHܧ228d (tXfj0<7 hFU;]7DkX7-sVѺ:IxB_,Ҽ#P L1!1`x G\Uw^2W ݳeQn E'hSx-y袼gOQ[%:o!@f0C 1PsZ Dp=,laR&l*˶zG&Pf@׺\msX|N.KV7Ew_ɕ;IM*)Q Tyg'FOQ="Jq+s:cU`vDx]s"wl2; u]}(/ L9CzbϙɁPx񧷑]l7FFe[" Yyi6ouYg z*NX2QIIJXGmM?Di0۸#V`r3-y$y=06lV\K*EtNc.g]JO\NGyyNk sGs\Oa?X|J3ߠP'&xuyZ=ô͂}(%5?20( [Q8FB+!9جtllk`ۭ⹒2I[n_e<4#$[= JHh$m;s7=ùzԾm=i֢mk4GgھLQoi>78;2Rp|W4D2 1Ӽ( RпVӰݺmYIwC7y`&X* G oET\;+V ՛$(u i[i q:eDḐ@ sWy]د܁+GGlT/&6A>nmD~UW NM1i=ь䋱C7@6ʢeBdW5֣Ei/qQw$v^-5n?Ҕ,ZYVͱ7S4it20RcKi2ܪ WEVE V;~BFͲC ^C,ZFFMl[h[nhQ=(Ge.9DUy%ꫝdq4~"hNEo|<$+U1eϽ`;ޮ6S`cIz( Ф؆'ӯ^J'^5%T#q A0ovAIFX:LI 5̕6V1 θ(4]oa[@ǒs1  @ΊCS\~3:UyU8MUW6 0CUt nIIp*`(#z܎FYT]b ] 9r'5RHn]g[e'S9i0Ty}}+@.CD$F#9$CqZ"l$ZkFӾ]-p4UcN>| 37uYlDQus%i͞^:ThQ4&)E*6UsFYnS&:X>?^vn "Z~_sSO@x .NHu߫ НXN7!BT)U:*B|gu:d7 M֚%d*ۋ<|Ih.eFgF{1X]1pP#??E&}#6"ِ~iS"[BP(&Ұ~rMj[ڶxZ*[ڴ Kw`NF##e:BwR=Śf6!x.3qԵ_ޑl1h:[ NfZv`2ݠ(A̷gmď/Г"7U aCXZ  \I9y# 4ۨrmeI{U [%shsÂ]SvH* c[3FIۋF3>0c?ew3G!^BɄ-L;-NrR >a(A8ўZyq& LsQ/TxP .҉[d toxn1bV4MKpW`DžU@˿e.u"ƽ~~Z\Xw '1㘿(b8n4$^Į*zu1qM_#PഃØ&#wqfw>A! 9 %t'~BK$l+m?.MiTDAD1ܶ&fU]AvaFVr$ZJ%v@ Ȝ+(mB/L5O |tFy%z JӐv溦qXqއq̰Jv ,c?y)if&`1W&MGr̬=G<6lH2A~'$d^W&` _hh@\ J2ee8\r3QlCtм$5Ln>H)7_t5koe=IM6HJ>cmu6e&9:\@hyď]hH~v+F<.,-涋\qZ>.U3nWr4>Qӎ-v hrpEH1yŵGc\)b7_=ٿ;6F]9ѓ-s#㪁%":j$XJhz1o@X}{|A4 ѝ=jps$pG鍪zR/?bٮ/SUo|lo4+3yMj.M7SQ|Ul=½h?, W $M49RR@V,J$SW԰NGQ;#51 5+x2r> -29>;wW*+ UTe(sMඒ 8")%}b;&:TZx0'p i?_>n4J-D7>+dQS Y QD4U+_)d1<"Ƅ:2((I`VCnbG}b8mšB? |"ǢTBϮ*fO@mwL2q f]lh*ģRGWA)EQ_ V3:FJZq%ip#jeZWPD%"f䴼@; *T QM3o $T PSs9i|ZN)(]=wO܃Z ޜˆF;ɧTw.le"1'UrMaJq|ۯ2&,8<4;.۶LtـϻGJĹPԁ@ysS(w(5 w0fS\S9SNj!ȇٓh gf ״@~q$AUN,<bufF *M~+ŋSHXw pPO"q*kw ϚeyAuq+7&.]xז(!l xJa0NF_+]FR[WNsߛ˅D?ڃ-B]Iz*{xSNm䯯-zJ#H;ڜG[8^ط%Us$M Z)dKt:Pnӏ)bfoƳtq9NISn(+|C5naɿٴL=%)U#-͐{VLm޸pb:ʔ%9nvX\l/9>|@_S\>g㊃Ր 0# ldTU1(VohLl%)STh3ȱMÎSn㘢z԰s_Fj@V"6q#;gy3V,,$O}3Rw4dӴ@Ks7K9$2ʶd;, Zkf t`Jcx0^ V="B[,򻳆jy9xăH61|rxlV07-6k{ڂW&HrvZ-((9k_ZPt9AU4v8)z4zxh*Onƺ6!OFgJPQ{9D-a;v۸=d!h7%4XBc`Çif&r2s_=?Dd(llE5r 7 UBI_phK_! Fz kG-8a174H$pNR;hE΀JWʁDED})tKtZ>J|cj9Q9*-c2GD)21]x ,*ByO_Oteb=>E]͌VZ&@Cn3ߠHQ9e.x࡟u::8P-dqe "P:]I_rjARB$_0=k-vLBO IjƦ(mJ,'Nfe#Pq4›$uq4[pSQ!N}̯d]b&WMh@+ 9gWޜK~z1 I ;vb!uk qv~E pi4j|λ(ݥϟ { ;M[2Jfi,ÏQ&lcJO̱6`qjv5B,o \9ml.9+{!|+t/Z &opDlro. *6"̅X*sSyxA-. G dE+>χOq,c]tF##v1>9ŃC gG6؟=qkkj8v=֔Ts~<#s5 pU4[QߕCTV?]L$c5@25璊(1gG _WUo-:'L&CZiGz]T! N5Nʧ'Cu8'HV>)8fŸSܕ$JZF>k$Bk_.$q5VJ3S}b^n"c w!0f y0D?Nlu`*]>|q8E;%/+ .;% qYEzÐl6Z Pxa&M J>&yA|+CkO4˫[,kzVKDgYיXDVϦGNQ,NGt-@Qr+O&,w)IwQPRfi-h֟܍[4{9t9+YrvߍAmIkj:?{cY3iGgp_ yհ"hocS䵔CIA9*?GXr+A;~øcؒAAPJuH5=VE"y\ *2 #emK1±H›5^4_/cW#v'vPc ]Tg|=tk~4LB ")y~4m=O)G ^'VoP?\#(Gn ;d^fǸH oSl^RDtw N)1̻Wiϸ~ 5gD'QS[\~I8M)1jeLfu*f+ iP!N3[QEaEEIi)Qo_XD:#OE'wD߶+n?35 r0˖d:M@PZɏ W7C Bze >B`|âFP{r~H/@EBtxlBR7ѳ% ~a&/`RjX➿/bPB10(b5#X[?pVWCPF.hˁT޽>Q튾DZJ >ˢ?bʙZ]{$mzwp;'kbax2NՂy+%I7! ԳkʀBD޲dzy@[yIbE&T#(6zPS[+Bj҈a| rG",Tv <:$mKOe_|pG",?< ў9AhoC -T-ΗO.5=9'aws`n`aGTh>t9a=46Dw{Z@ Ug:tJQ ٜv&)CQi/1u?ڬ$,ޕʍK+zBsb_Vww2x&14UL}ud0ʹ[L9w-.UqVlfoq;I”vߤ6 4Xx-bƷyi C핦 )V7 I ؁yRٌveAH~ڕߎ [\dKϘ}/7=AIFw<;x^nJ ]Y!9EdƆ2}d7߭~9Gϳ$wAVA*ۺ5i4~;i=!x=bO tz' :*T1kd?5w^n%tN z\W#P D/k0ߓQM(i Ϙ}ӕ<- 2}E8>pj'( -n-, N5@8md A)&yrD5 i0]qeQݣim[ΟiF<(@ =]hG5ry.w3 -> Z+&;g^j9SΟ 5TVuEԔǞC68NʳQl\KںR¿V`ҁIQ'{1\S|BKsJ pѳM SN.>cHFg8B<7u(#rc2]Ԗuyև炍4N /4`AϺnjDAsF|AݍbLH-Mp"#41<ܴ aE?IO5[C;TϷn'5->ďka叝_nh6 ReO=Vs8ȄcJ9`ھ&Te?nH!. ZaXτdbu~[Qb΁_½$M,^lWD#Y@|'!ʥxyvqaPaU{p]_n5s8FLg(ocqF[6E*WRXqvU[Ny@CIR @H4?dkEv+4,2EaXθ|73B@l?=%h)4 |=qUVKqw%)-KFRE+-a:/:d<<5xp m\Yۭ93:{,*PAͪY&n7〼-=K}fqxdݡ0X7#: _L* lWeb f =K6 ܳOyܥ.urEsNzxEAZ9NGlrEiV*M⋻kܬ\*}'}m'ݱ2*wV}h>whJ@bzAL7GHkY ]xX(᱅/A><]t*Z7Jzvj1/t> !!\we?i+ee0()[% DʷPˤS!W_Uǔ"\ w9 hE۞sC9~I|jy褬tcrrVfUizlD-1|dH`1عfWl%ƍ+s@b4x $̃ r+| _\TRDm_`c8$u$lgY`h#86k6QF+F*8vy:[u@WT/[&QP6ʡ.Z{Nuy4afj'j \QD:モymKǞ#\D u6=*cXHJǥ~琁yQa藿d8uRdC8gC5-IA+oY Itׂo3{?c3m޲Pmx?+Q*!EeG>fbѼ6+G,֍;XfN̂F&ؼ! 2s'JW32W'7Z5zSGiNxF_kl3\&S6+ T'̏&4hESDq֖4,EVت2US-&%-Hѥ!Ze[ 1ۙ{[f8q^}Ok qԡk\F.Gݎ;amzTnv%(lÞd_k >^{}Tw߱ʆsF>95r/x U/',EDfkl%o\aNȀ=!}XnX0vVh.[M)BOH ;'Ԏ[<5zyWdj8]g~ 鯁]xfPjk5L;g&y -d4\94$b#Uƛ|w F j][m?>&=c>'̓ }~ilz[ld) qn:V6O9 h=> shD1}.$kr;5 E YKE\㲟#jqӥ?$"ҏg.U *lJ+=&/J-N =ZL$U&t3$[ ǗDT߁e߂޺ .`W]QM6@! )"2.jۓT)8i̗Zߊ}>yD,}tenڔAヤXːMdPs2H~⽩ђi4#C Ј61pۍ,R26*IMBM* YF'Gޓ=n=Q=Wv.+lV18Wh<UqwQ"g I#w j+3OAFǽw^\4L~[Xio8{ښ?y/y炪a ( /=yf"B\ԱJ}5 늛#GpYϚ`i7&4cpZ7`KU;uUj)׻ {O4<&3+_Ha]=իaU|Et~I, b#' wϺ-x|:-RdysHs W`yRhV6X~$޳)!Eh&aʎv$9b$M,)z0ؙvR%NLA Eͪ6ݳ uӃAC^d LhP[^_8B|Je!dO)Q 8&d:??jyM~GtX^4:]af7^a-%r](9UuN!HidlN b8OL㖳E]#;&>S$2_,?6W?S7S=F &[|!g 8d_N r T\cFױ0UJ&?u*(OЊh888ב:@@oW=r>HWT΀Mi/d)!RԕB#.N;`0 6=E"3Z;CKkLph 9P|c|+kMa-W}S\E)?f~(0LALһBKgafMAE_t/찰/F4تJ{أ*(9 EԊdI4-HX O68hB:[3|rjɝ10!zm'8W 䰁=gHC2î4NqP2Qޠ,l`ckJrI8u@:fn՚q44kfl#-A7.y)2F&CY;nPdER?$M-:U!+s@Upu;U?Wbp_|R"mFe-%.K2 ju66,܍#H+;SotfCDHb~́jm &|7k?<AJx%n~\\x=ј7xg F7r6^/n_969bMݸ!A-$(O8$.^,/UNKe`}N[VAem m(^zϋ gZY X N)"@FRe@xBy\Fz=W֗Q Y￱x!r[C~luR,0g^ʡV|1~=#'\XDݏSz=m~o ҹW-Fp`X vk7F܂74[ ̇hy7a;䔔q]"y54]}y;v 1g+'ބVjvC Հ0rȧFQۧ/ڶx1fn]2cWKJ,W[{a$x@+F &+هbQU U8k2c_b/kv+ Ryy5^OYEk3d eU>M=\ٱ*QX ]6)%)5ߋ93:&M.lM@ ,4|l ߝiyӰC Dqo|_JѢ zFB _&hL&};[ySpzV{jE55BR2Iz'b OО˘b1K!{$j# '3s E{;H'<4uϪՎ( Np7'`k6R2Vڍ*a9bxkYF%Z?E:0|)Zw{RS85p 6,:{_`.+ 0̖^0/7Kei/p- 6?X3Rp;+ 䗕yb!|&Oz" NG ϩG/җ. 1\`W?k9UVLk[|xܡ*S=u0azjW\Dx~$8qԜ;Kn7]!n4{2n L`xG }/ Igad^%SfE7Gq=`nXuHҜq;]!S@6˛i_ájJȅ3ƊO t.%:T: PS+ okr gƷv54~O~>ճX?v_ϐ{;q+&hk#z}rpJ:S`k =j)jmϪt ew]Ni2AYvivP5'5g;}6vx?/ lrOJ+2ZkdSw:{,O*ŔzDkTyMf'YZȃGj#=Kv!nThun 3;~n ({#@#Z=؟bda<n!C8:\nCpLeI6&Ϯs/+(7oh`aD.k*u9Qjl> FN2o4 L ?{-:lפ5:.%oSLK;ֳb '7f~˜$ބf=c3Ŝm<8䬵x.bPZ!.x׋GzBKyUC +v+l=Jr_bhA$AJ%TWNA5(`S,0EUqmo Rd)Via2J49+~YfӜ5Ҏr.R U0œ:{'_\ RֳVjPgc)xBMqa!aWw+ k]q+L?ǝ2E n"&~8vП,c G AVyࡘ⽏[+~=_)A)S1eJ.q9as3_dG54!b3^mN K:‰,I/leK Ո!@ϓq8[%g! X&}\_ Ej"bCGDJ;A_8orY<ʬ|&tF428b&7f(4$N~Yq\zg;66ҘSh5ޘ'ֆK> (` "ϲ,Z|(okҺǾBxwݏl^ZPE JK: %ʈ$ wRd @Wh}L ߧ? {#PS3v&UZaV $Q y7)|n iy[Q]H n^kR]Chv&SYޢXK)rQQ[֗ǦpwsYpy?c8]0Br3ݗFsvL: @{nȓXѕu2fNMhOyxv!\sFmp3tu? Ɵ4 ef׽"9 ~mr RЯ)Z^M`Z R9bK){iY\}8:~wr0/٪MzrOwL y(FmazGL<@UcӢx6/g%@~ocřYvR.Ƈ,Jm~ϕ*qsf$@_I~+=sMETʯݖcTIeA]a?r/L g! lOJܞ U|DvB(KЯwwW"B$Em䂔bV+YfݔuhW{FO ;u؊SBtngPkCmWE%_n(*Xp 1Ho_(wu1jZGaA͆J+BS_`@p[w-"G]]#N[.9f1-CT'vJ${fRI-CQ8I-\ -fm|n' v2m.@"Q.࣊dDlFJI f?ۉc%{2b9MԺzq@ҧ]md砬`YotgXa{ 5 kqƕ"DGtEaZ]QzƫDnjV@}W"j,أfr!Q;)7"q&n}sIiɰ᝔ԏ}3C@fYOJT)\6LLw73gpٮB֧1I?B۞|ØmΰXn <,{SbU`1UyW䒜F?/!+݌moQ&G3U9͎|4ɱzNJCR:;M 6&JS=M̜.Ej kց=.QЉ޶K1kzwI Q119^Z)oZw(eL 0ׄaWEDH t8^pƅ'PZ k,J'WFJ=,O3qXǐk{QԒ@ÁceP[Oaˌ+ 9tORurq ㅾGz_Qꑓ5>la%(#GhYf*:ԒMޏ)J@#jdiJ|'\Lź8z-:ybENQţU=uAq,LS34鐂-N(椰r3r;kuGGʇZim ^|3z8&}Yקfvc. ԨnmJ.iӭӨK@Iw/K.sfLq6ӟ%KO}|ƞHja,ل3zuuuy3@H) ,N3Q4J咀TiS6wDvUji=d!Q$i5c1. GU>,vi"wyK}|q3GF}چrm؎8, aceF{F_3+;>3U}6hk=ak,Nd&)(D&UDvDζ f{ Sz#[b@=? c>WQcKp[p1'~],5.Z@*(QQxy\͌gnή81*VoԲ IwxqXXa݆J\0`Z\=zF0GNcrnQmY*"uf^s|] W%" U=e9y v<(t 8h̒M//w7ic|=ǩS:x R#vPz"Zs|Q|>ݕ'I_Io)B09Wy1=pdRGӏW ˋo—5%¦y5_Lb  жw(YWSL?RaI՞ꯢʼnO/n~+1dܵyI$sS\~`[*U9]ܻо:aΛ6R)!H{a]ԮS*4o9%tF󻟤((f>%ԴSK)XnHT p"moGF+,ኑ[}]b|_EӔ ÿA<Ȟuj8?Mw4rWC Ys|C٫L}t>aDYu-4#LMGq4ipeqwcbpsas 2x}H| Ч\9޺nHZaT1&Ϫ[1eE8',Z7}?it$] (9fT#6t}H$,vh9u3-aG>mRr5Hqf[!]x?bZ_:zbk <^ ևt]YZ#<kB%8`n դFwj>x$r7[Ŭ>+;m윲TN%=y1]kؼYYucs" 7rc^9Lי;\1Vecϝ`9oR}c=@7FWfVqyKZg9vCMbJ_\Ee//LwWWZɃQG>pG7g}c/g&>3jm]Wq¨ӻ\ MtGF =g}U/g|9>Y҅GNvW.n (WЙ0%)/eMHLsJz%TجᕿCrymt6,c#倷{E؂I."PA9nuٍJZJW* .%'rMj:Xdhy9*l=6 /4wk D1ߓՙLaɪ$;="A˻!NF{7v4C\OV汄I_$'rµyCww>f4X?Ͽw$ExS.&Jte-.Z4$ݸ%Ω6EL9V@! P2i|X+'1}$?ʮX>wkq] ~}|Gqm$Xй$yb]C2n]+Wʵ\y4gc.*ƀmo: ^OԂj&_ŋbO(gx0+e v͕0Xbvy$\kvrx&[ P~~Cc:T֮g`^Uv3>>"}NR114]|~AkFM#3?Om~X VF>'ICڅ~el2`c3kB}(%VŌĂ=\: A>_zsG\Oޙ/j{sz&_Cp%*JrCۈMp<-UnΰwQ*KJšR#$Wv.k,>U|ǏgD}X ⯃-74ZaHׄYV@UGQx( Y;JjfRnjB Lɭn#B=ji#ew$q3Lhڙg"a3MmVd7 ֣זSjr0V~;mNV) }c8t0)m+w[n?f S?9;{ d:F#GsG7z6l [ khatbD1C@~r9hɦﮫϟ1C6[RDg/pa&XYoR.6!?.Y Q *0[{`(=@.юHd0s32%#z:,Z}/td\[FP$cBKSJIډQgPߘzv6z 2Y4 EED"?/3bjd(am P8C?91kƟCqfzO9ِ%}j={E۳| *QW#NebJn}dh*qe-SUzO uB{ԲLZ'Z0 _@R55dtfBGQo[.F;W1 =;Åsr=:OIt,*Dx>#m?27tU<_ZA)wBτBP|eOFniʔS̻ڲ^'Srn(6;1_60_s9,MaZϑE3!\3b( $;+C5ƒjY_$|/s B\UܩxAM;B>\cTpkGo=+1sL7ǀ=h:i9XaF@ > 6!f LC()fAWk7QwpLaHeV>+.;TwcX[Mzb1l¢.'^MLlP2Cy]w &apU ͅ(9WM#u=!7e~KH6/5da#0H'pp[&HTJWD(7ֶ\֓PFU@V3] :;~H*ud '&R~aJa  ̼RnZc,AD#T̛ 8;ѧm,v/"0|%6+Н(HRenX *:SƂ5E cu5^ź x+j)? JgTSK;84y 1e+"78Tzq.pЍtr-1"4v4`oKrhvBKVm/gpWpf&S)0M,2|K{ L uEenB(eOWZQ .NOWHeM%Jx@sF7A[<톒}9՞e ї4]_%#$@IbyOz:=x`1z籷 dDv5jT-Yޜ7W0'kxB0E~hyaz dGGɱm`/ec+z>">? rA oC5zyO+Mmzv6tmj )hG;5t tE"Ih7g d?4*TtZeCD-S'yѠKbL8sk,9~㾭R=[90Nh`[!$ICtv-q<ցxQ1GH.\|--${] MD 3C^hHOU1p5اp]bbuQ0뀶x]1Țz ZCw;6R i)D>,Zg ^(51*X% d>~=,-lP `<=#]?VL: <x(ܼ4/E Pw'!b|&/ Q!”^T6t10ea'f[h_9$U !AT6(W -QD@DHٔt2xX$Hn' N7;*8P9t&d܍g:<¤%)G+!P+̈U~o .47]M) Ȝ C.Cza3(4_ȝtC^qQtG`"K>-jî /ڦݍGy4[1 I5\"IeTW{'NyCBYԚ AeFrsF}1/ b\ >5 6\c7{;x퐏P%YBpkr8 pe^ApDS]_rFrdËIJH lu[tפ1-)rt QkMKM`-pQ %H{GepIbeZfp];>^P'=(Xy8_L~0zz\;mg1(jNMtN2g8{c$~H4; yLqL&Ob:)MOT?CWSZxrݬoYZ&AF0S^& -aIqԌ046sJO!(d i)Tb_ޗHv]QMH>= aB1PWrWC[a'^E8Jk髂]HQ'C?qiV T 2OCw)5d),(n?9Z {z&ߺZ~g|5PrX:~zÓP:)y+8${l,ok\za7t1DF"sϕ__=cЦUZ5#yYaeR:ZNf=]ZʕT|qɚ*]nigQY/Eez Czm`C *[[[oTȞ\ɵ&J MKs#pV`qfjCLK%ٱ1k_V.U<,<}4,Z0= son@'ۙ&v+z)߼xAoF ^FTK7J [yhב0?36Ph^b kϙ z3J7 b1='bK~`ӄܥos f"\]mk~~zݎ{7kx?MtMszR]ɍ|݀.khxhb=Άit5J2qIB~2Mؼ$|&|0(9oCh$wR)GĭCFŠ!po=tz;4z葇Ls)뽚Jχg |;Һ_R{B!H81^$@ dT29#d-<2d%;g0RtY_SCksd-a}]؀١5|ol""%/e_}rÚ Tj֜R(Q;q%AjZsVz{N-<{'F ,QAUT5"෩Ə݈_ od%䍪7n9oӱdJ}4DCz'}@nG`j.x&}_agzjn_5Q!JjByJu|DbАf,h3BܢYڋri0O Z\2m,S/ $O 8NZFalgGrk\sWBg^'ͅ_E:`Ֆ+3s-9W KĜ0DaLѓC*׆ca'kopru7h{ q8Y.'J% LmI]tڇЭlo:ro^~|D~2r饥-'>8pA-)sQi%]ȱYEZY]sn=W~G A$=%f95B>_jj+MrkwVbK-Of 'ce…m] +;'-Ԟ ;$ dSI,(jJXwփÜ,MeyKx䪮OZşrw\roh'8#Lڃ[čɃ>B3g7i߼0G)dKA($<=_;SFC@|Y\z~Y чEV TA7D;OјjU#c PZSJQ!.(v1 d`jhPKDY) rHj|Q`Fh/9PI1t0 (Q4 §SO9\ $7"0pY\Wή ]%]NH^G%M|I®F4dCQ(,Ү[Xi"*V5e}d.x.^xVt T.t'g6:U]Y7!‡- -i1p9Bal؄)Т1̸;:(Poڛ_ǖ7)3e~<THwR&vB6{{,=xնSXWY aч}@%S7VQǷCf3 PM"2i 4s!SJ>j.vBA70_0Fb6td/>>4JY~{Ǵ*OZLLˮ4Zyg;Rޡ1ute\B,U=_m]֥T|a@:|8a>i 7Z˶ҕ><)E:$l"e?z7QC\,?i֘ m?'Hs$qg./U~0*A9 +h]hT ؼ vix }]eC}?$1C3V2c dryQ\ƕ}pr¹9d?X`3c $x3?/TNst1odtKH9bDbXls̉*&5ԯ"`Qre ]47qFYs{c#QDvoJO3xr]vA,<\+awgKYCeo냕rX_!Er 6[ÖytP A7AKNxZ_^"ld tDS쪧R=Rc~ 6ʅZaZoEv2cx$|*1t<֔*儾ghUF-Jx~ ;+;_"yB&{1XzJ+I4z]| PCtPP}[fY,wfإ"9V٠d/=e}r4p n|MM`ba' &%@@M;Ƒ8T{p*abUŷ=kаL)"'4t>B5A @/T=AJC,Sm1eX;<{BVT^ ):KH&[ݤeKd0[y /W򗔬lŏ([)Kl5PnHԢ,Yڝ=t"JZ! I.cws5c F%ƖtަIrrPRL"{6.tY=_fyIpKeBT_YAmPS"{y;}s7.Ә.Njt3Tc)"[+ԳPK$=Z~5=rdU2`&r^d@D, P:H[NjY,Um]Eg+2J#$GH%O2ef +bh=gͰҘ''}%>*|2)AaҸdzKŽ%] Ay\.*ݛu黂6uaFo(X,1J趼S$"{$;(3s$q[˺RSRՌ]-ͨ:\ΚnIե}oD$׬!/NC WL{$r17@^Tdb*2{Qr<1h{Db=iqNĠE# S5@`b{s2 [Ѐ(C|Oxmy"$X^PY#_:@}|5yݠ]mvN4pSp%W pA!pS'>/P=cSo,>at΋-Ur~9&*VK$MGMvPBb tX@ PN9@T? 7 ReK2# < EGD+PCp&ޅfUR坽mNRdEVn`c߳^5؊d+^hf)&?M7%EL['3M \@ G=.{ _R- KyވxCE\7kvVϰD,3` |WNdV6!~dWZFxAa}FZ9|iFkCZ @8*"q|1}(&7KNJ;w }^\Ϋi Td!IJqbg5^W2`>)lz.=鎞Onc1H|X0΍]=w|SG֖sJOƩk/w%5:Le5[f=x36չ!='^M8#qۣ9SUd,GTP6 row,-S7ֲ~[pe!3N(sw04f$m^#6al6 .9M+R̘uy7# H=WQs4 k{@ca+) >'[x˄gg= (3mcsv!P qS/I΃ =G<ח:V jpP #XܝxTVx7gWK}ߔaYS䀗q}[@㬺Ҧ` u%qPnSMUh8ڇ+#h;דKf\mR#i>\ rgS7XZOGH< w%HWMRW#99uGG!cv3CSN s/8uh&tSSԩueLha&v ߞ +E 1'9jG,n)b0Ee|u1tS#󝼝gkCʋ#Lr5 wc̮8{d {9  )L&4Z M%PpyXF`'lީ3 ,:ly"K 豼PR;Nԙ@ L`HAaZs8OgφG[[خQmUSTKܴgO4ISŃƢ|w^a(Ӻ&*C`1E$D>N<=|AEFc \k vd +X| wp{ 0˨ Ai󲐕.eX2իQ6HJ`zQ15'pT9hױ+~Z[ mB! s:X` Buӝw;5~r/KBZJZ)b@;DI е*kU6v(O 2'ez 0 D5njH!>lSfcȢc孃Ɩ"F#^m`=I%S)GkK9` uccd^~ٺYU l ^UÇ?BKiIkG ap+?ԓca[/z NA !f*ب{UYHCgħɜ˺$L|MkhUn)7vI'!ջ*㝭vX3uu?qhdqvqryzͺDLm- կmr}QQЗa(^Rzxq-^(tסޒ]3#VS(I*Ҥ ĜTUHFCCDX憪kvhYĞ YH~8e5|dB1@X8l Hg[)ˉ.0k q\ ?w9>? ^1]~j#a PP(; 9_LT'4nupp.2v 6-kl=?}jwt_Vg9Zۚ~$\w/BΦRJDJC+/z_ ;<>"sUӊU,Fk笗 *ft!Q xVijEXT\ի7NLFPe³)z3s]bЧnVHH:+!ⓩ_oɞO_0 NMj=I7-^~=ׂ+_O D"r;DD ƘV`8sP#߶D R^];HBE|?x1bS.z"s+HIq5ڑ!{"ۭ`?KhZ ]KQqC_,ȅ Xwzd k'6z C|d1+Z`so_z,y5-t Kź`sO6@i\LܽQK_L~|]+vdG??|D LbG7BF7m9x  jmn2qFxv-Z Jtq_өq SgLfϐh9@w y&;[|rI&ͥǾ8Ŋ \BH<Oekw-,mݝ_P=+Q(XZ0(ЇW{1 >n\eBS2!bu:W}d/3;~z?K2]g:ՍG^[~JVT䉆`ǝ mΒ=45YɈ嚚@Q7:y1.l2r %~;_my@~]d$0pgfKG`|@Î(Pג͑5H:joB 䒆NPyg9q2fU'<٣/M96a*?=Elel0ܢ)zgx՝Ȋٿ1~[>1z\vd f ץ'ci&:`˱h5Bky膀(ޞ` zESnbg$m)6.wcKTgÀZ9} -mi3rޞuGDJMEҸ,)g~.Nn6Y‰}f.6]hsHG[+O^Тy64{\e1>R޿x7s~Pyh$1V@2Šk+{q0 26]G,:3?#b߱nm< 3{YSUbؾCP}bahcF2u`Ď2YU{uJQjU_n0`qddgm,3AR5V|_@{z'VŽ~DLhe I/!R9{U1}: +DǙE[ ^Z!Cn|u/݃.?Ϛ⮃FKWdD:?5'9MmJ|ICT ͑|Drwھ3 m^[(/z*-m'.cL;1ޢxpx OHؿͰocc;7n }"oxf!Ua{AvP'8(B fn*WSߣtSg>RJotF&kZo;\¨]y}\z ʇ5K62CuПnt}.GP &&4­̅|1Ob'추߹3F*5>&@h{..Z[Xt"!I&.(%TߧqO)xX}ŝh}V#;h czI{s6{%@rsieIr&_ip?,̴Sh]W8jwUpeze)8\aF轱ҧpIآ?u $4~{I% e)U-cC)?QCOP/nbIJĆYԯs]xv=DJa؝qeB/u\9<)gA2ir`4Y:)EfbqsRMhlFZ_OG!/ ogyzW#먬Wx5%Ok LA:M͜PH2+r ,Vw EY_Fz [f >t[L*zl'gq[YƋRV>dGss˽ʧ<]Ff![s-!%ːjE"Q%\$ieOĻ yOw  & Ba4\%pF ]~l:LFemm+n`  tG3QSU {71^9Jk "#4 b-Fo+h2X4W YXe0VJn7m $G>ZS8|TMyYV6HN$-vi-q[Ϛ{xSQS9QJ-;ʹf ܞa&\g: OT诂#Iv|:sFcKF~ ׮U,7@a. >Q~knjfyǢ{&lVQE%*iϢ+nT~ {"$RpتjDglJS h `ʧ iiҴʀ,t/a ɧ"Snt =**~xzߑ'na[G)NXu猺$y]:Dt#.@뱺;!^ZصYPZ\-D).Re^A+9=I=8 W^XM `;qjIsb&b<^@B hZsb*c *)W+x=M`R Ϟ\h{(a8E[jIusy<9S^|T^N/2x99EѩemQEM;}t}{%Qad8WŖjnQm ltFcyFXL:.K0->'|.~ Bj2tYӬg1Ke;o2ng?Ń l wKH?5 Ф`J/(TŤ# I K>NcPB{'>ZȞX/~D& eW=*=N> (9\k3uH .Az*nbxRuRM8)C6JHFĉtKt2:Lvr.9Hwp |vh+3<r/8U?+ Гs;cúc#CmUEbrw#9;.gWí^B+Sҩe.s)>>#ɻdxcLf8oeO`$@uX39]r3p(s>LCF͍n=Q0 ~a ORm( 1ږ)GY TWxQAV8٤O;ٿA+/Ql〱1KT GF175 +UPUiCwHT A;G[ѢAZQ2>s䐩ar~hY4q0{gwwC qN Kt-ѣQbmu4ٻ/iBk & -~M}X^%%HzqY+fֈB}{geƩ h@Ņ^$R8f8F(Q"aJ;V m$~ՆW)+,_^V\ق(ҶkjJu LUN3M'mîot9u:gib&٨+a$V9{0RprH2]:h#d)1W>0?_ªqy>a[L&}i:o%g,9,3. Qޓx7]_w {zp{Qf[IGE>8sۖ)Ȫ8 I(>2h8+Xhԋ!/t2/9t!)4A%GBGddI Z8]Z GA=$4S.WIQe[I0*XLdmMuV;Rneа6GF'; sa*ǀ #(iڰę0-- I! #*Eum. sΰG-TT3d;>MNEќҥ y.k Up%܋mt<՝F)|H$X 5Oe|n'/it0="Lħur3@6<xI+/^4^7mċ?uL˙fkɛTgYfȱ98"Rۃ0G]Z\^V0r> .+eNj3?]ا:B.MgsnBև+S112c3X;PBof+s?VHO>MxJn0?K{PVEﰇ*d*5f^ I أ5}*uOAZm(EK<6Xħ ڏ̛:R."O:IO1P7[`/5 Q#ghY0sD9t=&3[-tubhDFIlO:ԉ:,Bxy7D/l  <FD(aoXGCR [$\h>ɜd|zQv #L[o'%Wg_&oڡt/MM͖*5~gX"wgx/(;>/:b`K`((9"CD+-^Abm\G[ E?-ӄL<哔hVN'RmR>ޫkw.FMⸯc& 7Xy>]AʶR ~gDU]]fWuѦ(jn41|-%#` Ç`ݥ/:m㶹]݇0:\1f.k\N?x|A' _0:GV8ݜ r⊶BL^~U5hMv˿v8NY&oM{\74BOۭ;9Ԏb["PmJ[(8FbO)De2aEmsP9L9Ζ?Xzʞ-2gq&ֱa"f8N\WңP2c'Jr JRw|/|CO U% #"?p{2.wO@i#l1'/)-9VKK)O>(+Cog45!ڋKҔX﬑2T2 q2mBy)a  - β-G=F+5 TBPw8<=sɩ. :'`0 \"竽(1[FvۑF5 g+jD&*M1'‚cʷp._ TyO*'*esa;K)2g>iAS0P_9}(5^"~^F"B4,Wʾаhxf;v,k٨6}êƒg9| TN)a4`XL3 Y% DR\N~tr8b ךSlNf[bvgR ]h;(0OF[+^$!z9i]]yp>NkB${-taiL4Mڢm()+ǘ+ֶ8[lS|RBZ.0v~TdYXL'rLr7MjPX$jEk ^ՏG%sdpd:ڛj`\~|#ˀ'Dlmߩ$f9ST"`5ǃRoJްxny8:O8%w䊞d (l$VBD_A%}lōAClr'{yܬ͆t:űlcp<5$eT󚵇ә_dHg{ Q|=<G6OlNy<9 x N/$'[TU~':kt wjk`2@JЀI̋C'n6.S/ _RɎ$-fZ{"o.*1jbTE)0 m+u5<=kc: #0ע՜[BC˥ X;,$_pP -sl+Ɍ:6П鰐ƤŪS4!2qnPv_X'b e2hhTj_)Z/(n!Yc-)B& Az\>A2ΥeX8VW1uǟFbXQuג + )2]= ->E$8ґPܮn.>4w f "-"Ǜul 0( dn' ]v΍Qh%m5ڕymyL !*rah4db-01*[B-o F6~ :RpoEu*>-epҼ ;71%b Q)]IgWFݣXޅE~#v +J[еb@o.8cZa0<\|xOx[g" ,k),ZxnOvQDqFOVK-^:c\0>w_U8qR1 :G0=\⡐j S{ٷd;ZcRti-l5êVuVNe`00tdv$ -)*Ł"Ġ}5xP3u#j0OE(/6 f<K@,<+D=OW֙oJ5#;d/OE+Z&3Qm]7Zf rM!8E q`f&\Y{ 7IMdPP"cgF+Y9UorU܀hO0\jt[j䳆I1PqG5F+FAaLz]tt&u9f?*FnU>=0˔L΢@G֌C|/1`iӆ>= yצ=/^+W/`E 5Qµl. b&8XBZ0{h0ʫ`qSS҆3qD)ā":t;1kX{)Ss2\Sbn (rRl(7&|=ǣv3}IyqNILwb rOhO\^l =ߑSV-hl(*Du$ ?IqdnxJR:h*Gᇔ;zu]_?z iu(Ѽ€7-Ko=Gq$ }j ֪UäMre: b1pZ^w^t%Bduo֑d/OE(¸ =#)E2E ^fZu6>jkj2Er*vH_Y%1*'{~/bU: x:p&Jn(w18ha»0{t~K$`,>sgq^S8pq:)~,vpe'҆*_c]/$GwO_^HҐ)t4y -E)uLzCfXڭA嫍;ìO@5עټ0XP彿 nZZjhģ-NW'4=b8r@L# &sj0u]#SѼi;Wx2e>ы0sA@Ƃ2Lna\SI >zӢ? I#{ a-fS, N],`pINk|Y zV`䊤'XÃb'd0_; =O5뛃pQD\GgbTPԟ`XszJ[@W^#6QEl{,H7ժ|ТepSVCDtfeE|x&԰G0w&f[Wm!uJGTP>ݯ,eNjFqemx_*]LÊ='ͺVeN`gـN_/Z/ߩ(N4bYCyn_UQ .Øde';5#Cis;7NQz(~|g'vT 0`Ú)k?aSݡY'n7OLrea\%E7ެ;=6}'pʢAHY`wgp/O|]T8ۚMV3Sw]+~U4= #9fM1.֏a` q i , DZ` m?8R5۔6ᗢr ma-;/B3Vd6_ߘePX;քs"QU$ Oc?I>zj 0 ўfsߙz*+ y:&]~z_|$m!Y l½O|sI62d ?d~ bC5ܳcf(nuqکuУz.?W<s+ۚ¾R$4R{3HYYofjYwf 1=/>KDNVr%o?93IOgz ;:614j@}“=Zj>jNDcR ᧒q{~5ϸvc|黟hb`Pdlt4#N6$;!e))s-o]ּS|տ>]T0%$Ogh q?GU;c> )ƛ^iLc kl[$<ٙgat:b@r9%-kV&C|vWs1*L6~{]o>3#"y8dJL(>A?Yru}tw7N`ge+^LH-!&eEFL;ѥEz b\9Zvx&=b2؅/΄ ))֓e+ϳ~7h7}aQ7^Nf*Ⱦ~wk0?J8aIR=N9_ox_$mi < Ƈ+BYE$|ѯ>:'B9 Tu_reiJF>t]5T xJ>oW-Gdu{ ۾ 6~&ƙdBj[4lfyz369|ђQ>͟%7m,t3?6+%X͜VQZ:T5%PO_)a[ xo jxMa˼@߯+$B W5Q{ q,~יS9ܼ6\b؈j<1=F0xOA(x Ϗ/K$#+IiہrfBbH(sgoBNV} I V@tВxX) 57}Xߺd4M#VOeɻ.1y+d0-@1#M<;QU^S#y-U-@A k|ر[c]8?pX@r d_rE xh ߮ӇB0׭cľHȔ 3OʦL+Q2޺q2Q;ܱT Z@X)msDbx>f]yq LOfSKxSUNkj2SG41,\'<{/''EcsU0Yt-j{k SL2%n3 RgےJD/PBZe۱r.%o?Ï/G7L"|8j"!!S*s='=d+J]><bHyG14Bˍ3,(3S5_"M[9&[nOUPч]h0)y 1BXv, 3R46x yڇ<_nFp'~~Ă8Q>Xe0.\[ uX4arOfn h WH|&tRe_VA1aZxT/u08-fさItEHŽ.40VuP!RCgM҃L ͟HL a{Z9 䇚J*ɜ?6ZRX#(S(RE^@I:Ӌ۔aYƭ:*B|Oc$0 >~3|K0Am*T5Lu''y&pNT3Β?U Z7}fh(4>VE z; 뱑U| !>OA ˱F"ď|8Kdwr4}<MDJ?|*m qZߊg&bm"t;ÐJMRsʹbcv}S,##!!DJ+48Y3#x=y( fEBJ<` L*Ɵlp:d+Įfɛqo.fn6,`+z%>{i~Uaն1,>6Ep lE,0{D0J=vD3*Q.ENEtD蔉z<'h;1/I-KRڄv|r@ԽQ}e"L.g9ޝU8w蝵s'hSVDbWQnwx{Ӛ1M++ @{ʶW/Y g316n33Z՚#OhI u#P`6<+*7f4̉D1DQ ěF˰i%H=V|"<Yx=Ȅ!t=_WW}>ǀٕ0Zg.p`:-/F_i;#-H]@K呬4f =pοR I=lsǦҢ!DS@*|'YFF=3:T‰VNls`0{2`G3@.2!0䞿6lVJ{`[ o( 3i 2&An]je"s@ZÞi9_\VV!v9}xӄj8H*.2s+"ES-ƒ6CS}VtyJ'X%|AOcqs}Vwod+i]]xi TȻz iӃڿwBGDK:Mn04q?BDjwc̀zWįy;ղ O?JFc8xom vnPYQc%pqܦIuʈ~|a~F%pNFn4t򙼖GAg46:8oJY/S#X[JP@a5E.ϬYԺjʤΫ虧P־rYeaCJ/4[v,OVe|%,}bJ2p -Ls k4 $E?@L?Fhz KL]'#nk;5q<ФH I W+Ə|XtNj 酭lѠ0>pqk.YVP<ƤuU'%S2RqΘ`a0_ :"T-m(i5Vs5Ͽ.ݖվ E)$Yvb ?uu.(yjj"V[9BLέS2\E濠(} f[EV3ximy>w^g4P: bк-;|D^es}ʼ$mV OěpJ&3{"O/6\E' p(xG(Mǘs׫#ݏ%A[,k} s$Ftv 4rZۙ>EWP%h@mUCM϶Nh&R&5MgO[mQ8pn*3(XWw>&4 TXO/5Kk-QM Mh\[et,f4Pde q13H]l8ֱP6R/%X evxЛ~Ro"HU*,g.j&aUp Q7W/zσ+HP߱SILxkjRttխ#_P%Tˀ[?n "t_IH=.Ϳ'C+Gh@d{ ǻmvzpw =п?wl=br F^`eE|IYPuQ[wMBZpW8v0@+ -PرMekn?bHmYlkl/2v]$Ylj7Pi+R*m/7EB }It S<\o ifTޣ3KQ)҄2lCKJ:_3uN9k${Sެv&KEbgX/Xiq i8m>jmzT9a >Q_Qgix$S?π0NpA.-0O[i Z3D oZ.\ȆVGn L{&'5*{+vwGl8'IDQ6~P{~j l lҜ7`E$T?1ru Kbx1A: q-;e}OpZ:Kc  QѾ_0,%^S0ɥqUrY#!'ݺ[aC \ȝ)6,`xSWdƇ* ohtSDk<7  C0=WMkF!ӳHv|y_bp)fC}q4꺮m-`"X( 5ĝAvB$O+jlE BZ-gU$:VP,2_?RGG@D)eh!a`DxOb3k۟ӯ97^^AՈD}]b"{Flb`Lwf]$Xʫ5_0 l Drϐmt} /$x0H=Gvc΄F.Z1[i_k32Q, !F+S){rePn/\< ᱲN|~&/  7WƉJ5Foqڎ/FiCj: AP{jfy </rǗUܽY֨q*SA |nHZV3aDK͡)',b$ڒ_'Z2 ܭE="յK+^(Li E?|5 ?wJj\EM90[n%.Tfr)BgޚA2}vwI#sӼ3g*6vV1Z 3*Fw 1ҸRS6Ŵ6yqIDQ."J>{JRl$OS dg<eAF`4|){4P8P Rt? 98,FO#̿qOE;FGg7HBFMPF[08-"’֝.b[֪f\krV9D@;OԂ/Z,ۙq!/'B{PGӃ;hO-4,gZ~ӦXbEj6X@IW&9:5o#ɔ,$?[:$QVl )[0=h SdT{q_)٣C(h˛;;4ppGGSJhFas%q,u$Ru hԘtti1X擈'3dPDx1NOd9q`;̱$)lNI|0OS$ݦqM  UHui ֛']eIz^$3!u^6EieE[R %UP]^R u gU9/FeKG#a F9zV*KEl6M1?upң-y.|YMn7^L+@'ًrAq:9',1*=w^S܏8 ٴ)&RiIsfm5~;!Ws^w2_sl*.*MQ=Hp~}k-6_:ޝ(Iz&9HbhDS.R&{m |+ ٵjN+wrCx$7"~?'D K,Z 7rK:vy,4UIy=TI|wqj7~S?&~[?Ɔ9"Ag*H>]E-"s[2όZ V%kyyC[0' jKw~ +:P7Kf[r:aKġ]i8,Sa4DPs4*ϽOtj?7u$m`m4 St1 )&b $g.M7MW9_N\R3"e4 ƙê 6\t4M f"{[|=hkpePвjF%Q/y;bJֹF=rmfZ/549/mb>ST4bp0.]ӥ @{&=;>ɰC̮]f ~(I,<ۤRGa!-'3š=FP¸*R-;+cQb]YH6iEۋ &R=vgo֩ǿ 6EzO'N/&PE2Ζ AMrˆ .w$Ir&R7ń8OGiU<ƮPNکDcx@(K 1ҡG,n4y,Zsj}[q%XA7XҥVԴ 4$U,Q FG=db l :8Gwq.ٿEЗ[( #_s8`GPV0(V/}7RVgڥ"R_AR4bLdw/v`gʃpwjX_{Df(*8,T9.3VZh`:a,Ky4.?sD*Һ[,=H4Y($s#CaorkF"\0Љ$䧑^+V[GyYёa@P4QN!w`TMq[N5x0jJ ,;Gdr` 8OO=tq^;r|,[24cJVsz%ѹ% Aaު[n% !P&iv~z^}9^QBFAPd՘|]/2ƅ![ķT T]rJ ,$MAo%f=RW R\-͈/G;`X4) 4knTDQn_-9#uͮ-+U 0 k!"sb~7U}No-P"b'@]N,؅{eUN漏Q@Ttg{0#XO''HGԙO%T$^5ʾ7gƕ[j\MB ⶌsR5x=ӥI+ek-9D}AmI[)!0mV&=^x\ tm6piq.l-/&ybmPxW {t?H~v.2#EY8wbkwԵx$"6Yrqo|*K3Ֆk`NNwFJf@ji~e-RJBY#V FM~ˆۓU*+Q \6gz k|엋!UϞZ[D5Ҹ/*g1V&;䏎g"B'~e+G嶈Qϼ4~sP~ CmcvJ">$.Lˆ;.Vt  fjOSeR@$1ѭ6'}"=A(>?"6El:O}nwWl>-!s SpΉxąoP Wp~.yUY8dOfAoU?;7yy1{0\ת5#y'DNf?4/aTݟ2:.-4tz5ZC aٽ;ELL#2n_cP!!{QcfNLk4؝tB̐y]`q <ǑKh19#:g~c̭.Qc/M9v`* |G{m?Y69u@iU80"k{|8P[YEFѓ:"GVCvE1\2U;@YS"Evֲ֑B(>D`|S~@V8dq@ZS͸sM96i%+L>J*RYGW8'KB]2X^EBj ߑ{ȗV(u8_[`RPFI{B5J/(P_J U9IpOrU+Dp|:9͖2g'\KN}\hJfo/)"c% kJ7ď ]/FYgWA(}T%Q]ipݨy/X_#R@ckfOoef‚? qX1D;내26$ZY D|J@*wsӚܫݷ/^U b++Q$Oe=nحV~yw4c(4C9{z֗Z?J2YakOm"Lt$'CLKQBm} B9.}:+BӺ !"?m߿DѶ85-JVr*r+1Ǿ0]J Jƣmi0-S~,EU{c_FJ6ƀ,B8fb/*OL'={HL=;ä545CwVdkO 7\z} Fra?7vѺDzKQJ!BsHEN.npj0ةpkNdu3=3"WIHMK+gbڶ.hʹUX=n;S{k BOyj菬†GBwYlR?OK{OCJzHN85=aiQ?9Y"Ef#`yFM\<DjL% ;TԴpzm]֦]2Z]DJ\͆SiWas[(mL 5poXux\\ʍYUi`Ȅ]\V1hgʸd#Ch !01Hr ѤdnYȩ9L4G %AfYYgrm'5X8K[V(zY,{([lE\BѦeeigJ{y,Ofg0 A>8_L7luic @e$F4M= ?QN(*=$3rYs;CP+8|jR9ف"{Fxtƪ X]n'M&M΄o18]t-Nɓkڇ4$|CS MO VȮ#qHE]9vDžM:5)0R}Jeu Wb I||Gv&&WЧ`8>CLxg"䘈'ue$a1}"e`e”j>Y":!=\[:k73тOb "I lE Ofpҫd{돳]T>5s3l#WEF7gėqR=*'_**@zPZ{_Խ+Pt%᩾4E)XBAB)I~o6e40:JatÌ3^>ӽ\m" /!%x*C5R߲VWJ; . sh9yJ#8fANhn m_->rJ`{m i ݡz5 vI 3d<ƻk̾JyY飱jĀOKL.I}b@HEqâd)6"ŷ7̓)tc13+,?dv5d<$ ze\lzꪈꍖkg[ N%1y4Rr7D `0ګĿ&놧?Y]E-+SʊnH/* g{w_v>O"Ǟ2"k{? /Q^eRc^6hWt\oASe,c 5Jwq-:[$gXI&h#t拸pvKm)ո*;O*tH,2.ԖN}?.ze޲%djc,;NT !=DQP3=[;LGczPͺyz3S-)kÓZGDc7T. ?JyC{^lftZ@zyF&Ӳˢ;A;م98&;>Ç2Jmݾ@ʴq5|Ä҇5v X4Y}Sy}Fd?dz.qo)S>mezjqץuTη/,L#6Wf%m*ZLf=}&'mZ$]9^T]w0JU+~qXQ4@tS.,T:y)%{h1IS39i- 3f F#bc` G\2 iq ??JPZE Fv8ˆjtNfD ՊcFՙnkfӮh4t!f^]j9 XO)@rSێkyEz\]La W"c*07qS_J:Tu.K1sbuX!>qې;n+O)+SEhtJ~$cƃ92Zjx;ޡ 2Nsj+VIyT߯5BiJ!}HaJ f5*3DJ3ݲ( P9gF&~ C쏬"4໾T'dLZi <%S%dP,l~GT%M_N֡+_`%( p+F>-eȵqRpc~ům248]XcI{spEM`Z)g&{SPD9eTq]Ǹښt帜m^;8D6:G߲ѷWAYݏր5 h(l {}_r-I"r[oigyic1 70QS*꠶^,dʝ P찱;C/A ́|t/>@&M@$"Je'N U u0묱 YkIr]J6reܳr>96W=&}6%}W_^{׫o11fyXi2;0e?LhnH7k)^ @(> o0{YF&1Q E0·lt䦬Rm^"]EI059PCi, 1D+I A7Z!!f~QYĮZB=ajh ֒1zdzͺ.V=(vA0 V>XVjJIgsRmOrDv3ml#N@ͿnI2 8OJӖ~Mݛ&Ǘ \!%VRӳy_zSzPm20 O*ֵ 3kmZp`5K{}Ui\V9][_WՏmRq(02֍+@iupHB|sŀQՁiRbFx\TnHd(21 A–K3]@ 5;ǻChno5uP3yM 2"s@xUhҴC4U;x> j$nqzwN@4V#m6'ftC~X0W`rDG3"]Tjk&ȱ4'vuNt胎*kZoVz$u#djj|J IRlJPQq 5E"bK\~#ּ3Тie҃Q LO 0Wg$t" rWtӣ^w kO(x< V0pSYӠv#6*.L R`֬F- ى6;HV~q qsR273IOzPSkiJkiHcT[w}P"FYS7ѽ-qPp$M33HhnAl; GaStvw9$v6nkh-ʂ.vݵZD *YT}VXNm8P#QUD9&\I7ą&f3Of|!WX}W5Zc&Ȏcdq4P[,̤WŴx-0Ϛz9d>hmOʵ |Ґ}U^ZRV^oUW_i ߗ"bIM\t\)OZU[5Qs6=Kn_4iT\ɞf&-&k-{D1yyC4}hYV2S*R|r UA*|7V{"cA1kRf.Q**Pyfs0boBX(so.vf0L[k? hWBg=/0;15/,(q|_prSXOtRjȸ= _hܹsy#Q}3oͪW>iR: \ҴRo| Aљۆ[?: ׸M"M+FV}t}2U;Мg[(M'9쿆dz{4C5F^(uEBȸbw05'^Fg\˹, uzQc2_x!K \EAX:`[4%9s DRD05-Hb\*#!Iq &ApPQݿH˔ŔRsCZ:G5$'DWf蹫3<~qf϶:rD2,^9S qu-[J֯S$P>8HD .ی6p*BF¢YOH]=dZoP3咅OT7w[,j%Cb1Z M$oǟ_Fs$[e1 }N `)聃FVKML?d#:K<[< c7\Σxίl0K:4pªncV>$Yt 17l- Ilѿ^Zf8MovXZMwpp_̘8%*&uEc:{$?Tn _AgZ%D8ҵAOqA^RQe$T_ԘTJ>,ή5$y3ӄBGS"Q1gvTmhU^M=˥j30uoo]:y,WLư%} s6eE6`ÁKWd)XKt2:'ɞPv)`w=ny.>u %(uFUid%IDl}e+&g`(T]m%>N傐<Qˆ{ g@;$/PAh&vַ "5۾&gͭ9hӕ7'η2Ra[m6>=$Pfʖ=ws]&C9H,Wg~Un<Դ!\3q2Dh KUoi@VєEH,œcv $'#W,Ф1o,\*Mà5ٻ `69KmBf|lɔn>!'I9G8v>W$2Jow>m?lhf:HƳ-Y&^ˢqXRl6c1ySs BUE\䛩)9h$ƜՋֺL!TCNU6iڣ,Bm6bnov "~BF~=aTK {gV)hD!\~ Q=@$}`NOޘ%æ:Rs=Bn2g(EN"kmS3f$]yd'ŗe@midMp>{/`?U׻aiPLˈW+\Y2dE9XBXݟxUUxP.%ƽמ)jd4bZV{՗"[EؼEWSbF +FTx > yp=>[YDJJogkt8ǭQ i'!\Rm;F\y$P%fv]xLIJ31d1H[ݿv1a.WAxъ]kKYFmGm]]ҡۗ۶>R"H=ɡqq#'Й6g~_v aH44 ͔CK>#qޠBw=k-33xTyjzOهzn29LuY] z1ODr;HF'k3Roìp`6`wxˑǬ"$M@(2\fGAԅ9mjGx7dLqkeY:U-ϵ*%ь$LtVقUm*bLY/SNvouUjʰ@x=~bĜO~ᒆ\C#|q@}@%!uNa_FR{Y*\TrW#9[ʔep)~9Im˱-+>5*j,6߰ߓ6I/9]:^LQ_/1prqv3`I\&lmY'Ki5؉.s724{%NV (\j!'I)n2jz#U)ZB2^BW!`z>1]D|q8+5 ]"Yҩ\EBz` H"u<S?U3@ ^JU)>Jvί+p=?~jHV 4?4R[ԣ@á7Yz\Ӿ}-0 d|zޡ-p NsZ:;bFs~Sh1 AIl 4)(e݌ȯ`L'h$QDj.+G P4՝VV)u`m"tt.PHGY' [`5kv< CVԂʒ ,2ge7 R4>q]`wywZ. Ͳp2Z@sr]FHPkp׫zD8x xn{aGB~I$V8 dJpRaa8v夠=aώ VOA <J[~ށZPg`xjJ)g3vJ?bFRE#?[m93gsDw:`ˣ/K> X '>WB@DP:E\ K k_Viڰr+DbT:S?EfCDtum*Zxhabxj|=mԠRA0gI2/=]~]&n/j=UeⱶH+:&l#/\ 'hsPrő(WԟXˏM[6)t/Q2#^GcF \Pz xE|hKiBO{왚=)^1)j१(A6Z;!Gy3;>YS4'ރ6!ӓ̐[s{Q ŷNbAoDܛ+<{WU%%DZz19T 0\M74uk{!{Z%[^A 5I'=6SيfkM\a8LB0E cɝhVލ|.Efm}ujBUv80x*J=`7Έ㛣[{Km";R3^%ǙqD^Pmĭeqie oB yvg4`B}l%J˼YwcB:~`Х0^LFl Ṇq_ K=x~QYJwa'H 2uxjZrBE݈BM}MsT#oKA&Ѡ`8{mY0LOOfJG)! X|P\i8/_&j h?뇗zx AXT;#mFyc7$hUjEK)"VY_b1[3Y;N~?X0MGfd uwXJdN{UcTA{:1pj{7("Ŝ(X)pBM L,I+IsQ q嶫2X$Z͘gʯ^sL*>2&st9}.)}/'E/b;"y:ӥ,Q hossfWk(Ej6à 39ԑ5׽}͌Z$+u{V,gP.)4=q1. ڝ%%zardr$z3X0սdϻyj3?0 Ȟh? ٘fM#Al[Ux6yuD<]h. 5-f[ʊySRۦ"nYVsmct*K;(ͷ%hD@͒q_AˉfioFh6t H;t-@[*2=Щa]JKٛ >٥(0S*7ٴޯ0R3 IX;V.&[xu, 1AŁwIU WDxSB zKcp=ӁͼnK\q_l5?+@ԛNKO!|2r:1oވh/IEHlXGdESw"aYD*WxHi 0Yd+}uH&!٢S267Z3K'z!^T۲XA6 '7gUv#F {8Qy1LQ&1greqONU` 5Gf*2JMb! f#u^HO4)Ր^>[{Hk>Bɧjb9yٱzB{oiFSy DON.2:툀fnCc+Vj̇(h z |_M1G0-i#fz1y| b8 2ev1Nup{`nӋDaR%IR2٠1 +i>G\,~}u|>.E]KY v/^)z ߳pWַ9+w2 0Pb6pXʣ>F bq #[]^ 25ɕzAw0vR:] 1G$91?zU<=JAƌև/6av]RVFwv87v[XrcyÓbc5]1 /T]o-5ԉ<|3{X+ٚkUEA=\Dvƴ^vxjtgR y;DIoF\Y5ԏ`c9r,~H]zyoU&V;"sPBJ!oڐ 8\ %79pz{1^f6.Kԍt<}i'YYYRfXa[bO|ga7ӓh1R߱>e zslحo҇n]fFCXVw o xg_b]Z\3Iq ͙`SY9)5h*+Y5+"\CzwZ7f`$St*يhCbY]ϝmI5: Om1  Dve鸿:f+Yo bu ~*Tb.((7tsfc-ņRЮq9N鄹{+DY7iM^v_@Y3k9{=98CbÇo'8#'5"P(E.+Jzjo$wd2|qΎy="YC>%%  ~xrQVv%:`gǟB|-!_/`*j80k&/=6݃6y}UMpeu :8Upd¢|Uk~B{ |)q]$X;m&؋4d/40LBhzt[,@8EO*$]t>p$A$@Pf藄QP8FfQR^\l+# '!6? `޼Y _ȹ_$S.w<" =NI1Os >yP%P6ةD2'1e (N]?ɘ1w߫RiIQ@)iKܓb6x9ԓmm60B%,齧 X _ſ/::B֩0PF*ԭs=_zqK߫ "T&KIjYVN7iSy5%$Qt7V&!;B; }DґWhH5#ݿ^kL1 2ޟM>/[|| 5ozH"QG%g6\^1E~-oq.ĉi u:K=8%C3UMc,zu Bە+W ˎ7"CN}_mm@ ^fsgM{l{-9 bs&L.{r(AwC^Ƶ=yXv=ՠg/?Mjɔi0m@X)K*;=RbQ&_ee+ P1zg jq=Q ;d|B%'42.)τЍ{Ʈbׁސ:8 瞭~S$;y.k\ A(j?/Ϣ,OVʷ 7*QZ08p u!g's'-,?'ZBv{A2SqG ~5b4iy[;WZ[#P^Lop;ETؙhYhx> 5UKܓ+ ]JbppaZʯ;֚w% O̴7#US[ !wr4U+U}u_Lx JU-E#4b?H'ݻ?kv؋n%qSyFu|!$:*i3t F)`<y-}Zx!~Y+LЩg!7Zl3ђ$*~!C!1j v-a3W?)5:ss̾1>Ba/}T"l܂DXXqcHp64-Wdk]Rmg'L7@j};L:K*J9 g{o RFeEV h|jJMĠ+ZLP|_,cۧ1WLUc#ѰX8{?z*xuU&?7vS(u!ch˿x̅/7ò8L>f!(PI-s;&NfhJ99VcT k‹zi絛SyҾ<7L`u]Z:POqCʓ3BXs+~ 1MH-Nj`Kw{'{JW„QLERvUyMHQb% ZPi~I3ѳ pW 59]_HJ7?ZSl؊9(2 STQĽ>?Tk4Ej+L> JS.of9B X*S{wV'E0\ِ7^Ps j*Tu YCwD#bą5{ln1&y4&/ 9-R8C(++mězIWUX{Q.vX %0هXlzBhwaU@;!}, ?dtL]G_z@=tY VW3&2Yc ~$]jgٗ,ќĻñA1_ ?0YX2 0+UF_Wx3q*!a^鑌Le#KGM#D3j}fB)41mtT>E[uJ$S/k}A< ؾˣSb޻ܾ<56`x4‰w26OG41vod_ݜʗ.9wpsG+=%lԼ$MC{%'p؇L?$ɍOf!7^ ֆN v&ǫphXa#ڦRƈ,z5A' 61WIM{vkj*v TT(bz=K//y/4nK0!6X3ŞEsMIBI(*1>8m~PIJ2^̆mZRUG:[YE>!3R|o/wjGܧִ zS+]e]`R$? L#+!e4a9E~8=iIBNUHqSu̙RI[ErRQf!D\t ga2yv_ExS R"gSv7 :W&m@9eS&*%٣zq$=jE; {mjN𩼃7f5GU)c`DIK `:>}7xz wWxٮ쨠hB4>{q{^_l&1sv)aMWV "͚a.73*="KjgښlM( -. i(FA4VpWWY.B!%L<򼱾𘪟 `%;y;'F=YeN@}Vu+j.fխ "Owe[ +MtMʊM(Goi s21۞BUUQ;B%V#Fخ\0||? =tf-( aw?Y ic˓s`YO7Z5@3̌V_ddeMi .lŚЖeꉠd^P`T I:jLm/D?G9RiԔR%G{E2-k:!p,2ff]NL+6e;V'5FW" TA$Iގ` '"}D–ٸ&8o,Mq% ;{%ږ'\OQVݹ`ڞ]R0p5?&u'Q;ؚϭ=U@Qiy59[o"**1(rN%KWhrUW*WKj5_>Ѭ:nkMvMMu+ٴ;xj:*HE7iԑE63ZDwTD `"ʛl!meuj /ٶU;q{ )޾cR /Gۻ^s+.^WҎd+ki{,5ŌEzǷF^E, h?qꀌL+0B (dD,\ gGKuno7zݵ';hcbt0O4dK#(j_NfC$FwRK Q |99D`+Lѻg~'ɬ*})fk6i-1aP΀s8m_?&IWf+Bt w2\x=̨] xC3}$~!@kbndHVu|Npiro 0<Y9:~k7~&ՔdI3 @${ ݧtMӶmn|!8Is>QK#ŠQM> pkM C=P-v7d<`r|l FhPj:5q\%H|iKẀOC LvP^{m@O @L.j %MBg@EU e0L( Lte湉[_@Xo,ڻQ+rknؿs,2#!]WC}L@y0,gl OCה,a)wjxQE Si /HG1csn"MmB|wLS=I3gATwmQ T+{v&"}WpsOJcUzUL/iUܔϦ-,W]Q?{$DD [t<>J ^n)=x%Uw.&FCiN7HílaRr fF"3c;nx "Kƚ+^X=4{A tJoኆx^ =(GuP)B.O ,vvwYbQ3ǻSa  Otibewn߄'~ ]z#A]]9b^7%һCqu>:-hKW[N w5J @7[Aq )-=dM&|V- DD ^`ٖ` 3Eln6#dkR6=}50K'ʅp:,#讝v>GJD%3]K \>dB(M%%@ >D7CAc=˭  z2YX5Jg+'YČXЫS)k@^V1ϴC_Ky`^/akpL-΀JVb# iU/I+&qrwzѕ\ U'յ+yT-Nb:v$lw;l<*B|Y` /S$xt?7[z.’0]ɚQ߹W)b]G#9]Z#<[w]V-k Y@FgdQ~ƏѫsWh< fx́gJSd3iQcrbl.T#W/EQLe:;V!hӰM >09uMr"9ἵ XToÄ;~9=LxIK("n"g{ R.{v",__ dpƏDxk!3cl c$Bw Ҏ@\mI"2dڭ/n{)+@ s%ۃkƏY\{ ot 7NUn9KP嫷1^ 7=Lニ6aeH!ƒ71{a ͨ w%ܘ'E"ύpDpO d,k_}X1޸_τPLd)ixA?H]rVxl71RXؤvMn%kD| 4:Jq A@yz3x9 aG;W '' '#5Ë]kxS62+ ()ym"%ԥ+EA$Nf6~ԛҡlDF"@^h4.>q @e_eiM h"lvq%mmTDRQ:1o]̀*GWt*zZ_xC2i8@, ,Xp7|a8Gl&(*߸Dž~IF<4;eS$ȷu ٨l\wcɐ{/|F$!\5΅ xwa}O~}c} ʯ[[}m;,@V0͊1xN<~۲rN*Ev'1MC//q_ x[H"n`>d.,=ȷ+ (Rļ>=M_dfJ̺"p3vniVzZDž,53z tB@}jUXϰE1B [RK먬}Ѫm]{g_as608*Ҽ{]gpIo*|cOׯZslCss-a*]XUyWcC@C7MB4X Y$$̀̎Z],F;MىwqDJ5e do݆B>dK:o;?ՎlHhd&.I]a6غa5rnma*o 2K,C& LIҚR/6=YoQ+UfDC ^d1Keѩz6_B ~3xykw!jvt ;pe-#sj %( ?rD-dњW&=q$.Zk`vn~ZI# Cvg)y_m95ۖp[h%Ph[ݤ.l)>p#BRTSsGzz|!kʨ27[յ/;Iiୖ^]aPs̬\EkpZ mK7ګ?K_}hɐ0Q--kz/Q4L)X$4qNZ\ǐ2#MZ> 4\>"K޾$,s,G2`L3Byu#Q#zrΚtЪy1ާ$O@\1ul\lByqVttr`g3nj׻,/ȟԨk?,uH\'i-K7}n]swuZt?[{p= %/~pN_.}Ѫӣ8 ?*ro,m/di{vwȘ4DZQ^5(OJ'n#xM)~1"Y0c}CƄ1EbB \7j t`Hb X}&BnsN&4Es;mM;xn2B筶ִG<Q]SP'7=\jQZw"/(Wvҧ>5Ԇ.+y⻷7PwStA9,ʁˎ(њbzBSh}UhK$\ 4ڌܶh'2*>pR!Ea.W[d*=%,Ȁ)1G($ն;Zn}Kz>BSFӻYT*; F޳Eun$pڳegQew>LcϞ'%V"Kre_C.H̋ Q&;?m90%gٷpQ?fhdVJS ;E V,3S\SST ej#ÞJjxσ9S /Jze#p=uIbWǻچA=9AĦGH¡T`h+^pR;HҖ6LJ>Qtí&ksL:4=OJB]? 0 :>߃zMX&i ީ_aC9ؿ\ϭ_7Us5l9眄kRf}1o4vٜA&{futEx/cwr˞b߿v>zIH񡶀IRܬ7GL&9j!'K뿵VY|)XF8EVowƔ*Sd3df <.5ԭJ%`}E-3JWB"qjddwlPv|PH ..z5_i.nJ  ;;)g#{hO^FҊa Hc6pR4u=02 f}t;* Yn[5E^,A 9!čDW"K0DUl~;݈4svigpT*X`e6 ߽H:C'yOZ!G*J$ a5nGv*uT7y>m)sn~t9utmyu?r2Am`h 1zZ} #"s(]H)TwU moys\K'X MWvҟMmVUS0 >_V/8@q;_4Hu4iho15vK;'tط4A)iXS]!&/J~XK0Mv)زZŶ2  bƬ\AoA"Y BvWDYE\ z.9ɎpGuzϦ߸Ǖc?Lx<m"WiÅ37Tj]k7,U6hv!t%,+ RDu1JJS-(+iWMI|"rJR*mJAm<&̦{kjg>#==?xujaDm.yY .AscQރb(V(6$߇TrlZ(h71_Jc ?L)| IBBiԛX\ ?R2=5gSe" )`B_];@ 1A=%* x˒Y~}Uf 6岳ANQ&xbd%32:Z'ᰰcx鏚vDHJ-)xs 8Mzͮ~O1jS+_(m9s"_j*ZD-sp 5`qݐK0Cnd'IjDžeicI*n2j˟' YLolʈS$)ǂ;H%qMpzG{Z5=QZE:<RupMj\Ch*|<Qx#zASaXoLK!oWהwitM)}^#`{he@|&i8j~lݶ ވf+Jh쵍0sv ȑBeõ]Rywtʼn ǿol=62 p^ٸhA2XNѴ?e%|Q%Gx-ƌBzEPu-7XM-;=uC 8_REibL$D_.,xلn#$ݟxs:.)3e{l&x8t\|ȵ'F_s|`m˥lxqUnj?.d9:]wI)j0D# AM'[jEH8F>'d\Q1euUZDZD ,̥v{+ ҍn\P2:,B^^ ^K|qtq fLp]bґZLT@(@R-(7UN>OpiBe>'NַP"4*,ƲXwr5|ȼ;kG=L[:eשyȁFdy1[qjxTA-RSLbMYư0̳cޫOxaDS:@J_Y䨼Qz&CxJ0oN t%.m(5V+>m۷Y6z!Z8B0a{\,3,=f'ʁ`+ ?, NYP9A%߳}F^oɏ&mrƜQ[v~\?z-kHbgJKR5[0bnK_(Lv 8_IIbŢ_(z,, m|9;m"]j%1vK.&ėoʨ2}PhC #&Ͻ1vd4?3Un; vN5{kViph$@_ȲDWZT߈ G;e{ qV5+!"E`-G ՙx;p__<3[|6kF&w PpGưX1qln70E?k/Q{b]Op?m]eL~Y.-k p":O֯T'gzaL b]EaTo2CdmH EoM-$- c簸K'* )۝0-̄qwxE*i*䱛*D>9p@,V!Ƹq_"rpk.S3L*lɪ/7QKrla {L$jaebU>7"6SY߭B{I6@:y[2"Usnj `a6 Z_9%f<ǀLkJkY $^Jq#n)B7<dMQ wK%JQb`3iRFj7AZײ˝eh~}B% SPpeÎbZc籲f+ "`Z:~Q+ի ̢T(vLBL?,ϜɥC(>r.7O=x`؄b*?vUpb@T6{ ֟29`% łe5lfS7{vy  (N0Dשb3LfuFR0&0^a#P/[]FFt>s>泶T4^+X,ʈ { dEc ʕ \JK@MۮkԵ >QVoL6fYOnP/[<Fao5v7W Y$'O,J+)ݽC/0؊njу2* 40D *鉞-R/-PA ռ9 (0D m?S1t#UxL5͠m'f?m8Ț/-|Wubdkt/F^]RʹuTyxWq፴_wg6M*6#T &(>篧Õ(:2cP_m5FT<2gFh&(vr¯vlXP̶7}Rԣ ykoH Iot#@K3_RpăُUH~)ҙV,:Rfڣtázµ oEiAJ\QŠ*E ނs虻vU>D(Af0<`VAc:61U&WCr@ʱ+ї7zVTiP#HfKboȫui=a2+,TF$7ʛsaŰ#U l79_xdЊEF.o[ #E-byH P;+Z'9n5~c71s#y"r1"$lF^C q{D,b1eKfhCQ0QIh!j; M~="M3Gh)Z*d) 4?}oriᲾmRh~lI]%o~>jC1-hFFl@|fF9'j<L{ĎW+~~Ć=M RmO}2_ʵi:ӺYG7װJZ9J u#Zkx>o>?1ӊC\ŌMcjN?ůkك*;ט;qims^GՐYųi.lr߉V,E+n؎8ߗ%f\IH4`2$VY:8ŲK~IYbq)V'f_rveDjTix+poؼ W=%;HlܗhrBҜ@\0p56=HNC'4>g^E!AM*׿^@*ClBhd 3Ӵ^H\*$pDEm[G@#ZVjptc^";p~ ۨZHc q9pɭGbe: >3&,1I=1 5ame*Z݋;U??B5CueX3_.r3'{?J8DZ]U]~Lb6[e;d2ݚXר$q-}8z 7fz4OP U7Ul;{6sX逰K&{:xR*@:4ːJ[DVY ?O9}r< 㾸80X U-ߧ(7΢҈ ~- e\^3q~5 6"*P{tMe/ukS3hMHCh|߰0ܽɨﭶ޾ ws6Y̞7ۧ**`1ǭv?DR'T NV&L;#tH*HNZ~H_7KG΀-$`5lQRv')ebt1=dߐݐ|tIAؽnVGrtqIŪmo 6 ӏRA2GTPex-sɻ%4|X@ tPfwj VXEh`Dɵƒ8P=hE8&FX(bY܃S}_߱T|̩TS]£͓ǘG .1NT IGᰈٲ|"fbefKxpA<)torXE~uk3TTG) %54V 閚#uXKNaVxB3?m % iPid8uٽA#A7 [O J)t~XMϔ`Ox˴I}x eo+ ]qWn~oWJiI,G>+X%A8ūhL#җfN;69%mY"B^,{AiwnOX"imƒq2NҴl;P0Hָd31Rz~_?4ax) jrnXn+7\`J$)Esu È2Wt壉 KVdk*<R2Ƽp37ޜbN޷<uEj Wher1Ƃ.XF-,sz j\ ,F$B&duc|ԕRmm¿+|H~ڀQ$oWsً݅[rx͆c5:ci@AΗp;0MRsbq_({:gh*jZ|nW궏0Lr+\(v/^)=_z\LRl 9$ObI(NX::q|Q ǧ?:\z5EE;n҇biITw6%I֥T]wS#EXRc;NnR|l b+%Nx)?L ޣI_9 pk&sǰ. \Jz(k:Q[(ٴFONQPoUȡ`ZA^'x[D~>g(51(&qepN3үBmGHdd{be+֒leyB+y* \0'i*MLV?V2r;jCx;iГ=g؀4Ip|8uOA0Y54iw ǐ2Β5N5:Y#*> Gk8s\F~}n7br[ YPdݡwx_fC+Ey4& ,[kjywe۟I@xQ C>vP-}kKUfvQi V;{4<계Ltvt)drj`懶ά-Nߧ~(>IebaM >oՑW7ΨeË(4 7]K3MK3F 2 ?7òr& gV &㐔|#Sk8tr%;N:L85zXoDMꬌ,cur`~̌,0!#(93waŁ0ZlPTT*cxrhv}{ꑲVDjn Ȫ;X7MP zwW,w~rCMe6$1 (m[<yh?eJx VWZ,x3YfQCEG!~EFGauq@7l5Nl4npdNKK>ۉ;T[4O::J30(nF!]RږАƩᡐcbJ +eGOX6[ )qZW6_;9"( %v=e3#W 0) t(?JOfDĈMFÌ/s7F}.M ]kjB邆g#B0sl0YmXȕ2<ޙb%Ѣ+ĉ-MyڳڗTA#~ J7z (A"ik)[Ms){'@l׼蝰],ZoEda$LG=:45ƃ 5 9=wGTSI1x~sh Cs!)G|#`}'b)^WI&e֚!vм30bM(-V`ˆv«@g'.@6!ߣh"DmnEj3se-^x H |b~ x]=)_ !j~]YG\0)Vw&Hbc3Ȗ#s悗Wgsv:ڰظMOaj~}Y̨N@_ޣ*HSԣ\"0s'=}%:L|Y]gJaVUJ}hZ(j+_()&MdPK*M*Nj>)qRӧblP9: Nhc3xө1K{+YAd;Ũ e:&InB7ADxmC\O+aPFr7Q*fX72,S;6v,[q?/%"uKʱ(|p!M>9Whjdۚb0zGLpG̚^3걿UdGt%\%Ĩ}dz| 7u#8H3\Uq@frrjP˿ "cU|/R _~ /OBcjIϐOX08N90;(g{'lCT^ ;r EeW1&KSTt C<0m4ZOdX3fuK-i ( (ɶfX _ ρYvBF%h*#Aog̉> ln܋4B&_ݷ[@xYMBC@ /X H.[D7'du<yѕsM kYH;K"K=5xyyc6Ku8ANSO6' Pɿ-E) <}jKnKp_.ٲ!QZ!X&.AyDm,~]ʚ3zñk9ފ=-6Dͨ^O- f3]dd ڴ؛ wz]R6[5R&3Y$QJd[@ KӪ]QN@s㓰B= ˀ0t:/|Vd)p.axT7_B3r&9j $ /gY*\h<ȗ]^͙䌥d=|vSă*A%j_G3V%_R4|;H!fvQTrҸʨ\E;W>Ԯ͚q+YtheRQBo&wQ(/ >8 +tv*q2cF>,*p*LtL2"]rAfXynQ2EՎiBWky~5dKж;ǹ(eUz[XX?Ug)a8ʦŮ_cmSwW^ªV[]5S^$P!*/9yeGutETgwtJ@ۢCipb1ambYbe&/Õn`jj0b:qzQ(;<wzN.>#i _bIS7XrhCC\%iBMW` %22Fףyt}8 [j{yޚ_R +6u-CՋ;~5w~V]:ds1wT&5e=F)D].V֤e\ۀ ;cᢍ$ ,ZHu3))m5.1mۃn·tu34s~@4Q4ܱ2la<2:umױm]NΣwIE -[s&rXڙe1RN=^_-bKs[ f/-w`DŽv^|_eWΣr*9ZplK&Z~]38WJ6ߩ;#QͮVY?#w6G *CEV uGW׏tBY ru>t]m8gijq@tˣjO5@*XRͧ`F䢈Msno #l}enFi>3 '5p<c< ŽyfXAcB,*[jـI Pi c3uȡY oy|5~y!xruPR(KLhL^Qfbɷ+yU>4|Źg ^UYvt݌dI!i|Fo v${!o5 pNj!2i}ř)OCCC\$y+nr}{VrHʝJzvPwD:!kQ]BHWh&c+O3%M~Y{H p+\V,tR?z$'a|t}xc+ϊվ.C%otF"і?!qxMjPse_?hh :#fg b`<!^Pn܀@;)<bIxrN_NPOPa $:uӣRrEO/ œ5C?+2,$st0Ν!qU.Q!Ӏ+@ CydJ~?B* ->?!^BgER {V.̎;Zxaq g?L~Ol K~aqxJ UĥL.3*I/c;FhaYx!(:Cۗd|/k0BV~fvxes7aw[DF--w|/0/y(97^)霺dm(o d;"1Ij i`iRg\ )9`u |gfhOmHiu!IMj6<^|hxcg@Wf)CNC&0=17bL޹Yzt4D}~p>%KGx4e;%l>dPT( ^w?)s ">D2t\QHO`ψ{|F" 9S⨥Wcd%n 5v!헼G]*dq ]Й;u^)WIB.Bݖ=+>X<>T}rM;Jӻ˘$v—^H^_ xa5 ~<=֜\ M ąnU Gۣ+Xkʬ+RLFG97s8B^NuDPWCVի+D N~[8v9 nj7$f*& LQBSNvkGD"lDf69tcx4aCx-0/wj TT>6#-Mj)Z;;~[_);ⵊ@{hFnZT3sNv]M$nfɮ"0SI~"x;>M"YoOԡ.-,Q792Q k/dQ,EHNTRWAby'AxuM΍ͨy#I^&L.{?o(\LNi9;I,,X~%_nYH˼S?62ʼnC~ɢp#.ԹY7tFo)f=o,a0aG'2Z+B_l!&v|]6t~@"m<3z7ֶv4?vwn)~^7)4i-=J|aA7uQ|T4ciQJT-p B#PKX\<3:T  O*cBvA2]>e-')?ǘJ, /ނĵ^׫5w26bPLJIӊnŸZ$6v<$ q5=IJ# xyPY!Ng1gW4::-Գ|#RHKØм> ^OwV<;Pgmxaa `H;֗ t G/?i,k؈Ȝӳ;ՙ/pɥq ՚KTP (q1hr#KɕnJY: k: 14|[w~iRsϓֱXj] S/*jwyGNoQ=m/)e/t{6Owi'R,Uy.Y.cF'MTN`1?-*HvNhLjTt{{PVDtb -$\E AbYMj?€P:C)I-v5BOqʰ{N\=Mukv;Y2UbdDG+˾M'p@W 8/8em]3(@gRS(c5sq7:#fmj9&cᙜ[0]{C@b ;zOe0gsy|wF'_(D:TR9]A^S) Cg9zU1$v;/9se*5 dH*%V|fmՍE0E(t)B++Nrl:Lnq];A-IJ_^X;_0Kb lB k rݾ|$XV@5b"gV=#BX#ͭWST=Xm.lMHm >=y*we0z/s8$ ;97t3rXZNT[o7ر9oy/a1#zMVnڣ̩H fo+guD &Dh0]Lc#?Sx~ vP\BӨ[*=#`f>g:$Lt6"޲^Mvn :5 r40yW.dݩِ7E$",Â^3"^SQ[? pBXm(V>f+ %j43vu<ꃉK̴ÿB K'LKPU]_4v*oc}UscV΅ʉ0n_dž3'FTnmޮxE#6Dů)㫤8}tSh`W:zxo~e@P$/KrGQk@7xHTdEW<)nn{ٰzכ'^+W;H5zxwY";"W/(aٷ!d($V1Fd>YK$'jX1*lYC%t:q>{S5nqڈ\[G1 dzR[@LIj#@~aOv-@1~F'3ab#9ĜoU-ǃO 8jڛ2.C΋/3Մ dmҳtHyæ#+ģ4[1}P_'Wc [󹲊t r'\K8h8c0`se D]>FY8rk Bc%/ ~f^Y )U4fkl995K(/?''|N^'I]ᱏ]A!;}o:ȟW챣;wGkpuj\ ofE0QUGiz /iR=X Ȳ_D3!Dˋɒjb|Bu,ΩtO̤ϖX1_eb*G*IօZd"&X0ą?[0k MbAYNu'NU@=T}ẑX"cB)K`N0XƐ\*8ؼ` NM<2`ҫUZQW+̢߹(!=Sy,SpqVqag FF(VNY?GN <ƍr ib(c\w\"V>lx{V{uuMKY#dxOV1 yFLMGR,֓WjmHg/ eTQkeuWug3*˥.tI1#Ɔ(9W3(pXR릯G".1:aOw &hOtU#@sM)l} U (bI4ѢYh,@u'‚%F.4C7p7S gPLppSq5+܄ tV:W,|( FO/ތ>~7{ߤ G5?v9ݷrC)Ep*-Е`[ ˴q,@{) !6U=T0/oY%gw 6  x~ɔyTg- @NL&0bп)PV̓*MgYR^6^c 6{PĎbg&WBF1YKp}B.鿹qP_Gi2IxOkoy\qUH4F =G\ُy-h$tP3ݨIx 8ʙ]f=yZ@ZQݷu@0ڡv}z"U&#+yxI|h?Ә~w6>y>@q4OV ;XEOXqTgR1-gYnu*b3ґ 6 S>a5L>剖iNENlg:a aWg©O,RωRp% Ѻd%vNݍizn QfqsHGqٶqQP 83uj%}DbP5b"HqH܍pVz]8h9ß(TjSùzR(8Dv9?^<Af ,Jotxd"%0,27r4K?}V zK%$d.KG1:2҉Kg?f8{%As9_ eM=KZTeuGkN'EuoQM-S;-m;~2'qBr~L71]4(4S=s/X-atcg[=-XSu}hT.tqT օ^Wid86W`{ayr?H4?mK QA"g/|H4(J'e* J N >TK+ XYRο״ooA0MPB ծMm]JHL .%X ge/ư= /x5hZfߘ_l5;ۖ]<)RhQ˕[< D K#y*Z}fZԐ'}!qZnΕ#a1nt*ኡ .P1j#C~ #/^ـrCb"Ph;L:ց{0mor+D~v$&va'pdj(vHEW-X9V9;]]Zy!6Y&ob,P52U bЅNie" l826Ci18Yz7m9e/1V\m敔r mzKO, 3 k̓1_» K1K"]/Ye-rm2>}"%C Vsp?w"@cG=zo^WIxg&J<3B+B|O_. fLJև|Αq}d:u1gsZ\$X!FJg SC[v7H: Pes)'l?Ѐ'ՈCfZ$+Dvآf* ' FTǝrA̓`r$Zo\x='&@xoVQRdM \2 %Ťe$0.-GiAd_Pӵr]ܛ]3wQI)oPGl.@ZK\82VތgM! 0VG*S/B,Dtn(R8SZtk^ . =(hȨIi`ǯАQ&aB Bͮt<[vHl=Mxוsdz:. B4d2աYER1!+?dmjAzE#vSxdH}vV"׎W3/DB& v)s"J!JOɪ[j)=60%S[21a?7(*LJ+/pr)MqYJsi@ r,0jd2\iK(¢9Oyd1򅋇*=D {GZ:E=# ={4t{jՈ 6{wej)5`a sWzK\t3 }kcldփ1?C{팵ǿn9R4򴖓wQ6B.b* Hk|*چNOw7p)r⿤SOX?\+eY oJ6@V|\@|vZ)V: X-sBcmy K;D7DKẓa5KvTsY3>4Ma'VQLww4z^|"BTߴ 8tݨ,y1gOq2,c(>;yJѹSŁWXp•iHČ3 kq[(vQk \ڦ<>$B%WIit rk7n|b߃ߊ EVFnVd%A_Rm^KH^]U0D,&Dk1M2a8eD.U0ty )T) QRHR4H,3km%zMژa{$ י |lOoB88ܢ;pX%\~$:6U0E@ B|n7}H1"ier>pJLKK^TJT _?eAmF3<2k&tPb+dj̣t&`'EH*FS㽅ZE Hrȱp`q'qTJl* cˆ5=3Y覌=i+ʼnX:b(l'ᘒoUfLS9iwzJԌYJL3蟝E~fnӗaR(:~< |yڞV1)6KuF M>x]z/9/^@BK5 nP}GG@LOD < $SA8u`cG*`'pg&'_딗gܛh\iB;Н>>qk hiO+BEVCHh%Mm[ꈲ-y`GmMGݧ$5aK׈)գob^aN @ؤ X:\Y@LLUןJ^oq\5ylSbsbh؞:#U nL@H.AG?w!}S 5Јۻ tOI(p@w5C? _%_o%$%"h$}J48ͱZK!=(f˻W \qƑhFlH+RWSH<|?$O$#HMimvSY M$ zGեXa[z1N_,bj $p k)6tK_xѽWy$@DbA }/@ ,$O^K58ԍls)VV+&Lq[ e*Ǟ{nPf`|TA {J!/ pK*@ąr xjɣաU5!Gf%AAd/gYuuc S ltM4S;jfҮ K@GbBMɮn@SwL`!$:?DJbҌM0}X\V*BkK=|^9^H̡n^shȱF{ulXN&~A-jǗy: rވJ8|: iV3 4\DÇ! Qs,86AItB m$/ڧ_wjBaԢ,{Z8U-e="EuY_xvvWu1~K%.jXanLmYǹsb4U,~HE FH ;YB0u# X1K=juw܈yzAԏșI ZIF#Ty ,҃_/r<}saPۄOb3[cuGSoK 6p}( G[HI8X)ߣ X$d#HI뷆M7┶TGtHC=ʷ@ƫpeIG45ɧcs*(`U|`V̉?jr,Դy붮SP~6;B^a3 $퓉E_S5/y؆'!LIEEp0k]ѿON0VZz'EW$et\ d<%NS:b钩eD9f Oo#&L AXb13d搣8\Dh\H?B!Yi=,5?ؑ*'\>@ꤢBb]=r?Yg3 1[}WNOnKfj-kc2KI2#}>Qf]61,p?i;଄<Ζg$?5{ͣaqwNJrH,OE,51&m/\Y4ʜ~" 3&/L<\QM٭f/O@!;SFEB%Qf#r1sV>ۊ\it!dH7쇂y[`)g6V|2"c͹9Ce=W+U.&[ NSVoIzdQMIFW=yP2!73La֦w'92PsSOԏB9 Dh 0^$1P=ՙRz@B@ &cl^%^\flu)??XIG}- ŽRm\9h_>N{ԋ 4=Jzn5*{ghUn-2sbj k^;>|+E͐xp75٘g/GDRW[P/}MY*"9EGUuÍ%$ se I:0^#OAdd3Z.%ݙy*cmd+_Pv0ծKK ](H BobW36c7sXt@keɺLkLovBѧi aֵb76HA}LG]z g~Ѓ?IqVZ0pw$+J*m?6kTPj?[)j~N3uֲ= |LJl1ӟ1: aAl8u? /9.J>ŒʼnDի :=酁vc[ə@-,X!*a\HI3Gba4"p C!["z~Zm3:[x+.~1F䬊\6T;*g⻤F7"HFoQkQ:4ȟ><{YaH. s9v(N)VhȄh͍4[$5c em5BIϣKU( &`SI!e60~.*`$5k簪%ɵ_Y#a,i)vdv..%5WmlzeNLanqV1a"} F+АIij^깈!/M䃢i= (Z:'^4. x(k{ ?ʡma|M5yN+\!Lч{U5as'JmCEV7|o>W4:zrYt>#t#g-_+~_MPȰJt-}jA9hp\#ShRmi68~3 t5@ױEh" Pc2;tC? 7mŰxCLfebIx,_Ǔ3* hf2\+Ÿw{cE?گ^ꀢE*dM0q&<~@ }9x|P?¬v @d!iW`"62f TFsjj*1i vHnduSYO*]!ʎAVMǞ^tV%`mB#bl"-Th}<<͹-v0EY=*4+z̿ŋx&RJ[*H$*Ol'#m3GzG]HkΝ 12_ -푼溂QB AܶN`O !ΞIvm ixh{\XZͬbKXm" ʝ4_a>~p;\z"(Xà A# _ BS5췱wH"\)Qڞ PւA F?Oቃ'""/>|F !oH4U|-]]GqX)7vĔ 3kmzx592oDp8dA612J`Zo>胿KPTV{;R jтMQጺq_8ձaF($gn-0:jȤHK_up_=Ñѣ(l=ޖZ.z$33pos >]YQz~B3f7vokfT 35u4qMp;/AF >=RGd`*%ëL:$X8-v֡v '}DF>.Paf– =m2 wK\ !qߍv駝.X|Vרo>U6-Jd.Gkٜ\h4<}D ʚ8$yeсr<ہ?=$`g@3>@#Z*} #.>T23FiMկ#s3|O}<9;g )QR^>v Gq!L}ܕ{>96b'j 5$~a/0_bRke49f4i'`7r:)r:Pr&[a"}~n֭6D&CK< &3~J.b59 7Fy:CξQo-E'Â[Ǩ_Y" U.뇰h2!&j$!gX! r0qd=C͕cG0 H_MO$o*1xK? 6-o p(NޥsHÀd>  *#Gu=.<;v(CpT;,@o*z9|# W(tF?6FQ=JfI*WE1Gq 3ѷ3+E?2K2kG`Ba} cV##"P 2xlnh_DA#5842yiR7XA 5fx惬S͇\j&06c:JƂdOLKGZP~'@5h{2H9ʼVy;sm2PFiŏUR"%{Q N (mgzNLˍvY uy B R<0ҴQ͡-6[6/ *8> Sw Z [j dmsio%debҾ>T(UPypuYzZfԭӄZS?/Pzѐֶ(bE s}v&0a^Huh]VÃ" rX" vPCz&|V7YR1cPlO0(sP2`v0CdДpNd;a66{eo6wXP*ј bqg#,.v5DެeÊGCyJ^$C>( _:Q+M;Gn1* G/ ΐ#DaT٩nmLA$Qt-JGrRݔ'0ޒ=x6>jsXRaVѷz+(C~Eh;|޾֩vb2C8!sDMx{K*W1@L7~*i3|@%^@+|l-|\"sY.&͔PpT59`bwb Gkc d73>j)FcM FjcjYtPH9f @=3_5K\&l~!y~@oC(pVf!B j Lr?zs:38k:`1Uqn\` 4'dL3n,ffls]d xLh(ײ@*|=(X܌(8BcR1!vm`JrȗWAXU6*nJG'rb" Ke`9GĠnTT%S8v06N%hs\,ZKL`W+:4_$sdwOcyGJ(ݤ(HuVD,r61IRQ-;d7|MӽA+/ EbO{]½Fm +KMsRB϶fp""0=s fI+d%FiX h5Y%kmQF5VKk#CqňuW #ec(2"tHSA66M \0tn}m is%n\gx=֙Kk4R|pПQo謧6F' hN0xgt4@Wiۢ?a#[5eK&Z#,?@C6ua O Z^rJ ]" ڛ5{s8fe;u/Wo6@)!97Z[rqWb>x?ى90dKYկhvUi#z.Q@9b[2I? Gafq)kҙfQxr,mﰯscq\-X͠$hMޭٖD LZ۞.u=M!'&D> ,<ʞ ,[_ٶzrH & :ܮ[[-<9 S/Sh[`Ba!}%܇@t)}GtY<dvTsxs젅pEgd(iһ F%v:b=ё~E\1ӣ6cK5;8&kۯ}?fNqg{\5x!\L[7 e0CO6~a.x[I#XЙ׆2U-c/ -(Ad!X ۱ǾfE,y/6h<=g铹R cg2G ͮ1 XVOjEl9x{nܖy){Γ7^@ս㭌;f`׋cd$'wjò-x%k[+uuC2~Oѵ9HBZ )%H?܏$5v1o C odgGzܩ.|ȓD$ɘ`:{9nXDKO+SVֹ?Oߕ@M~53og Km*9W=^HCxz3 fmk0QkH5:%;1u("еI p)zXi1:<8Ѹp P&\'`C:g܏T^܋QTDϖ]k<'3FcuaF?odqΥ56- 1d6qN2UfVDoU0 b7wWcB QYt0?J_y՘”Յf~Tg_J_Y6ero(H)Tp_ݤzǣCbԝfO'fUs ܍_@oMGH26rﰢ&%po>CG\#L@bt&w[$6S7kԊg^H( ?4J8|S?lꭜHuIx~`gkcˊuh/[qPzlF|.2JyS@2i1p>L0)>^vDo_ {\/݆=[Wr I2O} TI8YUzۊDB9]2%YA'p ֶd`ndiDEۥohlPL8Ҝ^Pc!L8";IsQLWfvO!7 ϣq3kP31u.cE>arε$D)(=hQЦ1K7cA irlg<:5E#ޖ]JѡSX,aCy?BC׺ J +daaXw2| >$cXLu. l,I}wGfm[v{ǖEkK`qFx[Je d-)9OV7~=,pހLc]w]'=k*}lk$MKՠ7 0 Pu`PZP9i_z%qa[(֤(W ﱒ2v)ʜDt)Mn A*W~ݘu,\J  HڲD,Tglo\nS&9i|a5)]c%f`q˝m~ xH6.X`!玵wd=6rw9:(Q%8'O$+7$dp!FpD:$8JboF6SϴCᑳ>\ƧgsfZ Le٘Ϝ~ v#;& hgS2daIEM=k ^ꄟVtrErjTcyZ^M$@sHy}`\::h_WN J&ّrXgy (xUsl.d@ ).0xlDho{DP:S靪.Ml1lB,,M9K&^j^JAT? L%HͰ 2i4Ő ԑ<Ny^윥+r`p=\!Uor{ـseͤl@fedA\w3uVMߵ(o4q91m67?oWxk=E+2N:SιU/kR WTjnj=)]b6ͫY}#j+Ջ)9rISmTsr&,8+mz Л7.D@S4xL֓9[p>EobQ 8f|F"pO%%EhM% [ae5zU0 שh-gi?9i9<;Uh=7.NY9vl3REuN94PK_j }̻3=ah. f`͉|;~7]$nҐ#VIG(!쨵[ Fz;,MC:M q\C/jaW ~{L;dݨo,nK+[{[s˜|,qbA?y81) %:=`PtP9I%\2t*3 &%L=?+ZH -j]S(Yqb.}!`%Goi>! uX6=xXU u[?Mt;+k,y 칡GƓqy9gi[&/K. sʞGW %)"|jl 5a!H"4+ qc҆.Q'^Ϡx1,/SV]<=9[Um<q;Xk̈$'U>nKVpzSrłAIlan˨jmz98 b)*%KK%l,j׌\E; 0G!-/ `qdzN Sy| XՁPoܒ y9D.SDlP [qcRm\8k4Zi"j^3S\r%q[E]Fj0mpX| { 䯭tIE<כ4h/E(g1jȡ|xlPTH|?@IwXWL=(O^HL[Mm9܇BI%l(N@3`EНMO>dPbn(\;ּ)Ӣd\bOnL^J~` .Y}Bus=iU@I uHKF$(c6|F gdL uڍ:ӜKm/}'"9V;rsԽ~lA*{ '_}R{v VK\B.m+~ J)3e=|v@Yp5zJjffb-|1ډCAQb=(v8O (D`kKgǀ7Um {lٔW=X*8:w죸 KhTY=?K^nجx9r7ېK& ˷e6O7vcGO.j1ʹ>>1p O/nRqMc0YpǺG5s$t*[$e07ulmeuvt+Qn^^nɈw8b^ĉn}=w9X:  buVO-uk:NO\<Bn _ظNj> ctP(IR@*9+|ʏyyw!n Յ5(,`*ʞŀB% ~$v8\9T>'5kv?DI*I lBHOUp}dwJ Q,LRo5^Gʦi "RFتtݖ2[ۖ\ڡPbg4cpTǀƶi# ֐9^$)+a%wj!˟+큖=%=te\ܞ]/G|G9#zS`^D/L. h!/ж~S@+v[kggqP^1 L&'8;,_Je7"CoM?Sl,Ugv}|qoמ :"KGT3r2x%cu@% l*/?@Oi9*>L1oW)>-BZK^QN"+:'ChVBVM5L&Yj2Q&Q35t4W6?jĐ+ATOb3'%ƕ[9! 9f'%-p Z1%movoF4ݦ۞['硔G dCCBÊ{M3  m%@/Fe]0pb[,pB+9}8"\({S[(kq;H_,m ɛ Y[,lV`ҨFP&sN# :Y)m̖aFc`T1k$ӚޛT[BL[b89eƣ+S~5D'bTB|~Ւa[rzN`ӟ>^A5釡KGy*_4:NG-e7U9 A/UX _Mܥ&Kw;M6l< G* rYLV̖jؗ_2Ϊ T ) df]?P 'zBk@3J8 FrJ++Er֊#iSZ7Ɉ;qw-EP dbׇ!e`;g~pY͝o(1&3cϽTq!i68(m"ڇ|gQvS?b^G1HF+I4$H?a},!6ucNFq#42|:pA5^ #yr5*ξS].я}5y8I6X0Z|c U hm"ݡLˢ@"hҋiݦᩯ,%I.y .c-Q(7HrN|$"-b gAœ+5]L54rH6ߠdT" {Oƙ6mE9l|߻w:7Hq_Y Z:wګ;..~ǫ$K0[z|Bm*%GzU,KtN5b 2@uԱ 7ܖ`Wt:h)ܛx_.XU1f!cS ǃ3~/5_|4[ٴwD Z2l爉e2 we'߭qTH9!S!OLQd3ގڷ>Dz~4Uy*)Cd܈]`jZfKshVaU_pa]^$v5:m2x8@OJa SYI&,_qOOɃYjQP;! 8{`,XBd[+myv y4mLb˹%Ύ\yzK~ǫv0OyU^pB vgc^eYFAɇQU.}|lо?UV(`bx PE^YtF\@S:ǃ!d}d2a|VypLD=`I6bpKz}WB)3Ƀ;tޓOBX&G("xkt "8B3 [[TBwF3Dm;YeHv,Ʉz. 3qKB&^be5ፗ{+K/v* #4-ù%OC4rL*RlU]$VU:sכ3k9H!6.0H: bl#d+,h-/@@+e_"٨z@0![*z/DV$ym,49K$NҁQ*N [?|_E#hUQ{ǏWggRݏQ@ҹ\?ZRԚ*=}xg:M{YZfG-*.'b-үW[IM}e1 ϞRSDaՂRN)^bIɯ FAPgnټɈe$Q ‡! Xӝ9W"HL&ߑ%uj:cʡwX1MvIaH8<CqGp˔N@[0TH+73;!-_tVLԖQv BHrI<$|'[x;?8\@I^JQha!kvOsStm~|csƒX:RJInKgd׍<pxl'yIj A`gY~ ^.ՠ1uy奷bNμ"j`<|@GЉM=j@ Ͽe\FIgV23}M1"(۔ -Ҩ wy?!˪K1Nh'aͿFUg@b,4t>f(Vl'7N=.9 ڞ "$ dtxl,fIQt hԑbU.擿&\ t 1ہ,N[IKw) 9WP梙כyY@T#)g:Y202[te0 3DhHQ#-k.6WD m5+W κ"&1a6Xu}S% ʭ,#Ju"SGYa,.y\! }o^r_ޤjvU:F( zzK_(E?VduU$=U &/&BsDF)#^+Q7.k~RBKZt:@Bot"haOimNлr>j{\6IUb@7ElɎMs;nbH '^ԯ\:߂BLErrިΜ*dž0 Ig佊WSVa,ƴ`dɋG]F b"Bh}GB3|]:/dѡs'MҌvt]Xb&@붿=n`~/"nЍ ]Y;fUh Ot-= Jb|oH5MF GL}svHia`[be#;`.uj*+@6EqiR0&_W8DDKNi,oEs̔ue)aF";@Yw>yU@i2©X`eItKW0ݾuh_Ps!+2Ӟ'cu͹]а?%8Q(} yd39xMxvn)>tϝ0CDEG+!ȀV݌N#YgNylQvE;m-9́}HQۡP+@E&2O)ʂUUg5Xt: '7iI5οH5S YeZZA:bCK mRVTw?~["=旙RE$ejqۨ( u,(͜& #4 =! 3S9?F3RݘCNCUa :5]p!d-O|Yߍ<_F:~E(HW}4@MXrCdТtt*RI&fԷqyRYUOVբ]~&5iBd̝&%}-Qa('E񃫟B.[! :$'H1+wS^~[cQ*{jHBNN|n팖Oۉ{kHmg5*$>(OwoV2HO=0`C36><>,.๚_dx>FD7Ł?5pɯܢ̮yl v&rJ+w8pz6"9Ԍ%4dsזE}ȉ?w뙱.Qh}8Ql`%q)dt\=xxdT¸K-VD\|7NFR=;ǹ?Q;~kO'H'dzf1API֏'^P~Fy}΂! wn-Ts> wdb@}3VUe9x7T'y wx~ꤴ:#(Tvۀ Áөp{yEVjC[,@X+үHaرͤÞgê|GԒk"iXUt+{9'vr]rmac(xv 0v[`6LYedxsqeZٲIC4aåǗ_eTBd KZJ5,<].Wvyz&ⰳay$V{/` 1|3|jbtkz.FCh/#Kv85x8@49* nW9:_AePH&P\8hƮYZS)U*wnG`9?otmm4J<8#dUA@Yz]EjZOIXY6[)L@e''cBDii ⩍O% a}~IE L ějZ$Fx1mվxܹ`I\U.rZEcDB7Ɛ,vTn"2n} l6 )z7^ֿφަ l#lF\Pc!Lw { :-9ػi֥(}ՠCA}&c`~ dV4u02n.-|ˋg]3AKa|m_B肰l@ִ;!38hLANk#ٙ\7˦zv//KrGUQ]9 G [^;j:!«*[[ fUZ}eV+1-ðyŤNy> _9-ϩy 𞠨T56#߉Yvk筠`d70`-j!}V<Нf|Jh#xJ~oU N4 q68AџPK']{W~N۝ɷ5ŦƅPZV!Ĺ^@gVV2@ǀ |i!L/mS(p6`xӥ|LL@óBkjE{B&v.|cJ*ΗkU ?%Xݑ<R׃Oߔgu0Ӏ}z.ڼ,B3y3 6QTβ9Jg,PrkI#{ZЖKo<=s}u9OuZ`LjꜺƐX~c]Ey+f^Z9e}Y V’ZX;g1A獏YzG4)?ݝWwDq-2WI)C <љXtFpOZXs1׷S E8r05-L%1xMunXXnPTpO!-OL$ ]EQ_9VϷ<-14U]DE'2vI?s}5(Z휸v.de6TY!ju vMX:yd=S*3^:UVVx.ո2=_쓗1'+b v4Cu74.?ض]D9wsbUA9cqjsNVeWbs41[jc8^CTӨhĐGORgNn̎ԁ=~?B7"eIY3Z3ӣx7cDrSɀ@0Q>cI1D2N3ͅkb_mO'D85L3e萗Dڢ}myE题ͣ)xmT(4ώGHJV}NցYxw3c B4-p/LfhrC_ZELf~1Oa^*K?w0lj!*e=/{5lB<)/˻U3Rv8UW,a#S`|q H/Qb/qBQ3vp{FHCsdhK=.GaM:f0'g~߳/m [TYH!;*MKTO*8pDKƀR%) m@BA/>E)Vkzo@ɳ! ,M[ya!IkXky,ZR~&:8\Nob{nɞ5 F[⎭r~Ӎ /edwFwEzr?z#sAvܯuH }L`^_r66v/uHHZ6/@;Zt &Z=-e1V>nE%iM[g\P@x^ wС;@@ 雝A܈ldo.2)!"\x 檿t35:F](8n\In<sJ{!V|،TrrI RP3GW[p8JܧO>Vғ)nR=AhHJKh>į'ڴϨS)KGϟ@땥rHT3³Q t)ѯ[~7NXt@lzV*oW[&.TޞpKf'%7o}hq@Tl'z"`1&wH(g0e W+߽Ӂc_̡L0C'fP= I#lSt^AL<΍U/rJiPy/jm _1/kʹ%,,j~MZ*v Eޢ ə0naoD[FSS;Lh.Z*FlޯEC¸FRxdf#?ZFlAL^9U&ӟ1aA;ՊYMf̖y"RF])h}{|NM1 J22+Wn;漊]5\S h3d. Wu nlw 1JtX{|W!F܆i_CJXޅWz]85NY}i,Yx(IXoNHʼn_CK؟i^2>4,ntq;LmU( UK@lW,9v&UTU 26r8G/ sF0qW&+ww1A}k!*{FhDÕRwꃁɦ` qh5M|f2+zFI$% x\]0+r!c gO4&'trkZ([iemΠ N%F^t2れ? 79M01nTefZOO \*niM0OxP{54+WOޛG.]#ೖ8y0W#["Vl~eyn0( 9I71gj ~f VƯe ŔFjT=jwWp"v(^Zw}Ҽ  06r˵M&Cr)tN9\*+u`@0 _Aht aςKU[=q¨]ȴ R)/32!jjCie,{1K}6#nHۖk/A1@`uiHI恁5T_o4ѵ9,H~>ͤ5bǚ7 FkGb>]Omp#K V9ԠC;g9PbhKC&Qj(:]v*nbd Ћj&yXadwjqFt^\~%g'A(^#;F00y ޳n5ɿ)JSfTF_dZg &%E^7?E~BM#ΩVLZ\٘D&bj)Ç%Ƶ= )q 1¢AźvVc1Icp'-FkS<0+ SI~Y wuܪo/݁.v|-ϳܔ[@W.O,hb9@SΖř]YF_qPwFsƛk~\( 0uo?oc B'h0?>i1_9u9v\>M26'CNpGt<ϖ>Hy-R}BL$ 䝔 o T}E!R7K2@X0Tfѵ_.ϒ8|ceWIZ]BI#yڍ; ~9? "k_kݚJ_D3vc(ʟPzW'5kN1MT" )eEes6m s)yds&s8i $GʢVjָ˧T 7ݫkRpͧb^kX`rxLO z{)) )y w9#)no?P<`E[f"mj |ag s5T qg^#xn%i^,dS4~" 0Aaʞ(MT27 8"ы~:cYŠh4[0^˥"7l"8%6nxRHkOx@k\-\P_g`#z4(9k #rq Z&kNzghd8MA8,|LF#>e^GxR&3E2r"5}Y]zpWs|d1 dooj_I4*nZ<7Gl#?r&my]&)3t+7S/s&LfCOlEW^I/t2A o'R؅r/Ria~̴ă/*岎Ol"Z vWf[Ej{Gz@P@#ы#hgXqMx{UbW,Z|}v4"Bzp?*'m? z),cx94{&QsE~ qTʯ"*½y *oDȼrm|"lD +zYEVtKj˜&:~RQVc&] ?&]j&;X!L\\YVR*@إl ^]9RmBX%}~;LbCȜg63>Fcr^rjZBWSLIV&fOK=6"|bi WmR̩"TWŽ*6)~CWiV+߆wo/Yҫk F:?epH|h N/(ꤴDg~ Uhh|rh(WG IkaV)$t`t k2?£{^εo,o:2gi(>]=Gw?,=ޖTӹl;PsR"KCCfg&P~K Si#:&]id:tPҚǠƁ&,9yI6l◭4[ǧl`cU$?,4C[^7RވtToÅ| Vc5e>-)F.Xzs(-7̱$٫}ː0f9Psl CYl]نW?5qYdX?bзj'VZtm@[\6&n.m@*k9. FS϶KSj&D_]`YiN-F):10{69v5`op,qL-__R9lLXdKHUꯁd nU~)G% P͸w~(4$:{Lα󥋚7 ސzBנ]ZBU(G |-Eĕ =^]LuT[l^Dt},^x?xzr 7lz}PL,O[<''iAu7䭮)÷5yS<&6|-K_|Ȓۦ%pkrj{YJ-Y^'t: 7,q7rD H\:r-)6`SnB8mlMZLA-_ M9TT4o9fŏ_恠EB3BGmk3AJTQzǸMcD_pP(Icmutf-7ŠOވU! QvuZ6Gߗ1H{y #Sa7%i-\ъhx#1\'`J GO\ڶAn˙1Nƕx'Vm׷XeG8\gA}7J~f(3^6b7[ZOD!P=8;Sq c1~}Q>1V֥ CkѬKQ:{I ?pQ%&p vh>J/m*n~!(eR(5mP\bɰ]wCTBF9bsT-_>riB8x0Giֈ/%sƝniP8vfr8iBA([6 D0Zv666 M&@Kq|:AZl MQOx:'NHLPoц.w;O[eEg:S$[ 8MS }剤 <71 xp rϟə)OK_ӗᥬd% ay@Jh(Zր\]ݤdT465@R2JK:GNEz cGc: v㧂.?-@"`L#"UCD4S je ;ZCu򡠱yɇ|3)7o|DLJ縤)Igb^%)\^⒔i0BNowJMXB5֦se׋z}Yu"pw+? UmdUd!:Hz+#,#H]SN Mq 4U3ݘuw!1x<}" 1KEZ:hbʚλ z)Tx06p+? :5sEݶ~V(mԴB!"G*S{֫/ Qh/P#~S.QKubhanK1@ģEE03IW%pu\,9bƄ'-<r{4އq ^l^wE"O#=^5x7[إHư HSZ`KXЃ̦}_Y; == %~8t=){Ռ]|zZTUEv]NFS㫌xtճ3j  iQ4p*y}Ê|f,W)ˬ>}=]O=^"r]sxOcZBw~P6/'fF48A"ٓJ49ZC,S;ec8[ vlrbl&B+zLJO=h.HL-Q 7m‰;]݋܊4Ub4ֺM**1`p!?wPrD /(wQۯAi[#P~ESz=Iӊ)'`(E-Ww!~)[ҾA^YfK🥳¿`Å.[:hROf=+.̨/A^n[RF2cڨѾ¤U5rqWdmh=ۙC{x|{Z (^61?\|^ٱgJ}Phz[esd4Ǭ1b.&e%[,OXi~2MIW(?'ȵ"o޸i4GDk՟"=vw4ȉRg ^gFFifk|2}/[\SAȮ~A1eEđĂ; >B3e6I(rQm9d􆹆(+!`+(ː+mAʇ6 F ~Ҽ FM+阥*>usJN vǨct{"J{O_fz 2`$j@ hC&P&&yͣnF?zQgO#igXMIIr?]-ݜw'V G}v@JGJƍ)f9T4D&,Omċ0G˝r3}j)|ǁxއ{.IqQ.ٗ~-0#_J ׍4tד0𠇞]3u3OTZ1>@ZswRb)l7:yK-#V\ Q+x&0(n/|lA h8;2$_8yqs;CJe~\1}ߧhBOVýLxh`Hp0v#Q nȺ/9=ŮY̸y<(*xAy&AgJkj* =rs4 nmȝ۱f}Ms _ 靭/qaW _R^׿x[1>ƃ: r0@xM}(t!"ϻ0m8=Vg嶼W/.H%[FZ7^jCpwF‘]6seخb&G)_l!)mø+=8CQ2v z3K:}7 ,Co?>ECyD3.IǦ(sN5?b! K{S#K[dhHLz=ʗiy2ZX٦ WS[/ʿ` 8qTr?"g|"*H<M퉚jiDnڜ[DOGI3~!G)g["l>@ GH Jt*,'WBUx}2ϤZ4԰v=hdeŚ^4hifO4'Đ3ai^` OYyR BQS ݞj}0MkE~V95M{7m呷E/% ٶo|B)K*vebreV'x>i" 9a?4D~u tnz,qrGڼԹR6w~I+}$anZ{GTj>f:UIfkp5<gț~ $?f b^ Il6'T|6`7,)IU1= g_NœK);E1>=1# &Si\QrgnqCbzzψ$Rr RX੊XEYܧM6,b4ct+ȶ!Ooޱ6n ?@Py8mF{|@c?Tӧ}[hQനKE`Oq$~!Ren)m5O"U<+&Ft!MJ)[ &.k [JN3ye\ю"|[(L[.~NhTS3IC Tq@[ 1J"EiBJ"IE9,oa_-e'cـYV!7VmGB>_%$γ",]5'J!Tuam~xf=y:kTirE7{T̫p䨎i% >fkD.y.B-C+u`±%֢IYl_Yw1s4^3kyWAX^tՉA .')XCEB{gU47us17H5fF)}Y<\N!)ٛRّ.P[ש]o-]`[a"~rd?e9BDG-鋇8 X#z/LlP.w5YrKʋ]jNl#0w=D Jwrû`!zfGÕ;j1SgPFK"T [[iDA[toUw[ɟP@4;dԒS"<4ӏQ\iJT^g@}-g1@E5Ok+W.%HC51KL&^DcOi$V.svx8 Gxq@,,㼻WBvdH:|εpr<"2pC%נFZĊz(P9ٚhiG(]XO&ws &O{p0_6M L3/VNLge tᎳJa?~v_oT}N21DekֺP6G9s!sU PftbڡƏC]HhKBW;[ z}kޖSݘ`śnpԔb`bȏL~@v/L΃ctT.6quBq0'[kxuz屎z%ԐAע NEu JLS[~ۮ ZJ6܋(7>$XAp0,D|HVjfpZ~0i֪UR$ {dֈ?#+h Xx avdkFvr3guUpCMm X{UG>z2J6WvԫG_^nKxÿ0Ҩ߉‘B4:%5s)8W@;M|$#/Ks rKj~ɤidj#{NA0=Rao_H!",VU$ A~a2AtЗ[R ' l 5SW[c^\h}Y&œGqCXO4 … |ՌvJ{޲NK8݇llq }u?nt1[|VWE(~{ FA Edp !rvs|jQ}E-l;Ԯ`9B2ry@ M$H'5~|#4.9 w8#gȎ= %OvLkmͮM3NO@Ch\J~zR6`42y70-{I1 QH^j+ylsGZGnFW-.VI JcAH: w24r^j QVud,Vp#f{h4lr \<,{]9$!ϸ6{k#?v' o^y}7IUr%صBniIOrv*'<dcM40#Jiaz8?fICÚn`I*ib_P<`G67N:ue*]T~U  Wr#jt 2#څn=u֦O|\)vO>%JZ@:Ÿ׬DH95F%LAwՎpWb-`Q$+!b *'TUQG0y$z\or THG${ ŠF$j.zLR*%H֫d-}G8\@|g% # rIVRȀT$vgoŗau oZEwsEU\.' /x}̡ ̼ pҚ&~m=G{ d鉩 [ל{"IT+m[d)R7[Rm;$YQ߀mܡ$5xp$,E߭\^U3#"Z%Smvǵjl&`QJa†,:8 5W3o}E{Q!YQB}J> _m6C4=!e^U5_qn&|aUOFJqm=#toѯb┱IMvut,Fb571zFCJ_H͖xgy׾=\G%W3J Q߈:)=qbW9U6;B/KJ@_^ u%q; C(ܩ.*)P5ޫ$qtj%yiy̲nUÁhZ!cMPL^u6B8ULNnw .fJl%{ o04'HL]? 3Y_7A#|RJE?O@$z6=sBMrDڃ"qS'yֆ qBI6ں.q]`8t; sJ .M[=bt>eubqajNs)f]` BbPRP<۷mu8| {M>g {!KVn Pu-w(jjN֗'Bqm@] AooG^ °S;+P@*>9$CzD |`,D6*f! BƦ)s.ԚLU3(JTզd1{YNjvNqGᆳz? ~tesʥ|dMSQH55]3(A Ҋ5fI$&%N',jq^oI0cVC!ғ\[ߴJX{D?MR/nLcPdxh^Q@r0vb?[ùĘ>x<[o|!dA˞w2)E'Z+{~X/ds{ܜ_Rn<@$;LygOoW>y P|NP~h|b YnҞvq$,h1ԸΓRٝ9A1o|ėc1RaU kT}_hʁ k@K V,6GƧ2\"BꯩG>ԇԻz0iJ54ş"7-AfGbK|}2 :|32qeC4,2)uYh+?}?[^KN 4GՍ 5)ތ fٿ7v9?+pqU9'ﲑ _H9iڸ[BK2k9<Z̵32%&G>@+ЋIF)x4g+lAřuVv(Bmx6v˥濈vxMRf<=ZFkP"^a/]qnkq<U [':}\N.fzwPHnlv޸vm"ʢ'紾ͫJb֯si$[άUDzݵHE@=6Hb]E%1[~o Iفɏ5'Q %IY=+'f"u?~!v:d!q} Wzw:ٱ"gc?2$jpET j ڏteU.: J;cLv8ZzmՉJD ԁ^XITDWi34сV38J*HSdsྠ]f՛KO;FL4Aw "Ykm/gVgluVDmzc9H1ŃGjQ.LroGB6JkȿqΦQ+͊x.1́Rgr/1\{COoz>'E bt03k!=4$0!`V[(G:}dXMDGf}=s_Q_PK+OKbf3JD7gYSι",.7Jھ# >"* i:DR` DTKSLmR`G[9Y\Akr p 7DIo ᳑ űG_ &1VO> &]!I A*`0N+/>;VȀfh 5o+@S#WR¢/3On[ ur?y J4PC¾73V +\ b{|;&(aR+U/oT̎0}Z 4R9Cc8 ˥Mۋ/,h 9Ol/GuBAg+c 3>ah̄[TQ3Fl\)DQ-}jEb ΐ=FO{[=6>" S[v{Ⱦs;[p)L\E}PcO#1X8F-U|z5:̝l DXx)GDxTe2aS?^9=ͭ9 ``Ux#rI%L4hBXJmP9'{! SG:pD.CoLObۯ3kI7TOԛC5C2׊!~Wfk ,2:Q Nnf*WI5蒣RM1 YuDFL?E Z= +Qs$IХH$PNx)u[P9D{mZDkZA}\rǤƫ~bXS_sPnh g8xģ8[ƛ,…U7[uĔ vc!Y,c4I0*\(3cy 慡 ãZ3;^MdUD|]V%ҫ9:ujZ7ֱ5mveO1_P0ç&h~SIw IcNҒ4uBe AQ3Pkb j.=p5IJ8F86_2l~<"XQr5^~nqʞ/QECǒ<{Ds o!OZ^hΟ$_&[&>+w+Kgv>> i!SK דdpͬs#Dq]E)RPg޻+C^E]`=ꇍ4LEuhZ;;G#t"6.IΗ+)uDO|v>F6DXX/0)vmW?4YS3[Y} ^e]IF`xa1SaXrPӸPa,ޥ 8p|=MlkFx ~rH ׭ 0gsqAR6%zs[|+3^ɩ_A)0c?=IDtQEюђKĽܔ1+qO0%ceWցd-tT]HFh47CIY(N*cFWTTysa4A!0WV%Cfal>_7m?Zajv)_:`E\0ꜰUX6gp^Fwf'Y IBJ}2z{˫0%NQ|ri.N]-3|p$c1}ٗvxRHaG@9]9OڃWn& 0B+dS|2cF^ d5C>v[C&N/ a%{ =K?AfAF9եnZiΣ7+Z\ꌀ@`x5YFtg g7DjoPfN}Jk 9Qk@bx`u[~v0JpAh{K>S?9 qiu}{*1"9wPDw-&aCsJ4X#xuhO.cP)P0<+`v~7aW$܁o e.+O[>=tei[fS3#@5k"B5+pPI 6SQl5]˓77>7Acɒ0эA:/k\,g28!ġ {nP)T+P$nW mgd&pTHQ2|O1FKp݊G^­j)6Ms ,&ȧL0\xŃQ0jOe,E%Cˍ"o[V~?HI جg;yXš93-%RL,Ǻ 2j9C568(jlL"̍g뀶YT2܃]^`j@s3Sަb=0@_^euИ>UcQ _]f5~cƨ RZ( C& Ws1UwO8%&-N+Gne>ױBM.1FEԛyN! ^,Ʋ?&:o8_ P{n xџrE d-6b^ޭ-UHSZ@ c Dd":Z绳GF%=6cZN1 TLJ:` uvA 6运7!9]^ުA4ruFnm;~mMe;ɴ|$> azc"'|KVu h1%O&d ύdpn}ҥ&Gy&v34+8lbOux.Y̰kMýشfGY{<Y:oERxz98^&1Ѱk2&(}ڱͼ؄2)4NQy+:\j6KީT?ql%p)qKD"੥TWaA<"l)v6qwE"8ގ K[b֝PG8@%T3;.fkTHbf,%LvWa\yJMl|}C΍~c1_5{lb,ns)W5}w:ϻle5g ӭ~b*LIhX6ez+ >R $cciGgCd.R M<4 8jǩLGJ_z?eV:wKq}moԫm`))ڿjG۵N|K`(q4͂,TxJW#&h{nׂԇǒBN_7n哨-K1c&J{8~M]%f] =LD_ pMS8Μ;!X?bKGc$`T:'b$3ki{.uLs|!p#TT~~9:u(>]HkWI8P&r;VvSfU  Y )d-o9G]|΢s<V(H7Gj惹,a "mGY}%Y԰'@9:#WcDod Il|=y[*G0P[AO͚Mw4Z̜]5|X`(ى˧diJ(3Z?@*Ȱo& Pu~hZM ~& `l)!M}c,5DAaFB'^&ߔ.Elmc=l,%W-3Bp%BGhqx ggHn6bFˬX>_-%\b r;&YBZsf+x&JDA.U|8qo7x#fSw^V\>4؄(jOՉpf F2g6uLJ22t>>f&]^fKP,_':ZوXHHa{KOOwzO@ ăi|"`o;^C~ EТ]t^?p]jJdڑ(U2 r9H&#ɋt'^IIv9W3{3 QT,$@5\=++ܫ$;7 eA!h[l:h2ސzYXpAlutX(ITMdA Vcf`x:VrVh+yHT(W!ngcjtV0)+A1B+]EWU,3%&8' C"dP.Ǭȁl'"VcmG `3hpc8)SZx DL$6ob'M5$7| [E1]&[UU&i|S@ m6>/AjRjF>MAa ͋B!rRAX/q=`K hXfO)lvQq jLdAsgss`nORAS}N(2l 0H+B^opuR(a_nz|Es= Ebwy V)rD Jod5bR"<.l [SЮI1Q>4,hE`Ųx_}1z|D`d.q"v+:V|ڨ4p^Mjv=ʍmcBU,B$Ib/.q@VK 8%mn*YrNUUD]92!Zm.v|6b2^$UMWG݈v^A$9=XWI脵{s_uY&<#X"LnrM,!! de onZ 1j̨Ԡ,(O+,X6/{@Gء҆dUKrLe+i7pw t(s4"96'5ieH{vg%Af~~*$ɠ&#cNxT]($L6 wݕ*cFNkN?#K9P8BD:IDW+9D;!U1A}[1uvHFdZ7_=΃ëW ƒ&ޚު9TSu=u^u;e"Ib42y_QZ$Ld<9oErQU}j { :>T{)$|X~Nxe^=:_2&DEyq wB1N{^TZ k&QZ9G*kLKfca1́$7KC|6a c5o2=R5,"=?.DBoEm3487G2XJ0,d͎zBaL0e}TcS)䥊h]:IxNӅWHlg]_Q"y&O9v.Ȩi.hSV_|3]Z sfkbg2/;DZ&?k.N+w Me8},/R~\) #97$'q_bk{GaR\MaOsOp .fSn\ >h%RJ3At$pbb"[eR+cA98՟&WNv0ʹ3%|pj~KM xb>>a ynhlv2p~5 85A  Ċg<Q:/Yflp#+e 3Ǹb !R֑x/b\'eσBTHscc@`5]Y3|Hu1} ge;oгFO-cx/ 6y)3uG 䱜o 3DTEi'(0Y⵪8C ӰXXݰ.#tIV(' ^¼ANӥ3eoJ_S80] Ǡ@.i\eÊa銬џ̘Ag`8-{ o]86Gı½LhV6ɨ=,7$n?;RԕW3]0= N ELkpH~&ٱ֧&WIdM;_4xo*.lLpS}]3`p ̣RUph‘H Q+*(<@IB 7V,ET,;s:5`=nQ{SQ1+:qՂ O)26>O">dLյa01苾 䨳BQ @& \n ˴mm1n a;A"m9~m&% E~]V篟eP?o<^\WJ`CM}El4g.߸X!NvB^qSdgṫ+!m=a֫2Qdj"|aΦLS^W1 QfcmGT"m\iV5UlTpVƁ)i&aZkh#ڨ䠏~"qF{O;un%rh֌J?'D ?6kDTP$Ya>FL;fvm${0\@n?8'`|H^>Փ#I~T*2")KXHe p+ؠ3DK)9DŽӣ]E1oZZkg AVv?[gKRe2 _LKQ۸_@bEgW<ض*/BO%cd^bޞNYKPg|>6АU=ĢW#4J;BAT ~p}fÉfT}Z;_2<P Zsq)a#5$1O |t3OJ¯1~Ks_^EUf xh>DoY#O]I ǥ:Ρ,80wy,T1V~xׂHbV#zmZTFYྼVDC9Hޠ8#|k,"Uj5WQY8s j}|F~%t뼍ci :nž>^:^,B$p (d&݋lSѧ'CbcqjB̔<̭X\SYڟBd<+^*_<]QWIrq ʎhr%k]|!,@lC!NaK{ZEN"f..OmaQC;(QqGNwA|bL>T雉SْP.1Tgh=ةaX 4j\(mwQEH* U9 =,",:-wU6p'`ׇ $}‹*ש֕)ĐU*%o;<]8ְݯ^jF:ݭ"h8εt˪%p74Ve%_']ڪB򦞶]t'ԙ|eQ@Ccɣp{ݤBmtxU@#[iYJ2ohuƸq'>.-M~Ђ_ ˠ~0wOxH@NsS o 5?iؠXM쌜 21wsRZ鯈2sq|] !y'8u}^av's|-)11=iFE@3}y2&h6j0U>V*<4/?&g ,Mak7ޒ$ *=G4DP`p0yX@bM w[AENg+-vn3^ 2]soQ*&͔ Qtr-8wS[iRNPO݌טS3o[)Ei\&10De])V쯄tA6Z ԦE٣OXvsiK]2$̝+xU^PNZzW'yM+^д&aSF`YC)n)@_FiYm&k=Ndk%Tcl eG9+*HzL4[6@XOr?J~GK.Je k2'Pu!j}A !kXAig7f\=qWiLӠ\Ipd-Ġh;1|m|3)iU rHN5[6e#ﻍ7IsK26SWn"Ϲ dUYxv2/omED3]P!A{Phj_{6%jV1[|gz7.A6EL&By+>h~L_5C[E zi|s˭Pрe2&g/?((I%Nɲj^҄,4-+gj[{Pt l%m 5 x@Fk3՟:|I.5\v*e{/EuXM}/12zƧ6To蝼nO=d.&TC8qRFdAA"U%փ>q"Oq:mCĉ%i];`{A^LB4Z,AX:`>#:٨Q7i wՓtɗE*R@'D3^^/*IN?m~1l!H$GŢͰ5&}YΑdϏ3Z +LA[!t-!R')d&BE}xm2b|B7?+Nt@#yA<VUzQ8Go+gw,մW7ր$$Ӣ_B!mq;r2kbZsS9c *Y2`΅EAGdFj ě>P5Y;dtsw=SDec9j |E+KnrT""QƁv0ujAk|l'8W~Ӈh s:J%DՂrEEu`.VcxRZ0قh豔"H M(PF.bJ|t\$bnyH grkA1\zZ #AV^ g!+QtAXWcooLt'CB +s:bV7s v zar'}^1qD)|[~HnM]eoFC3Ŗz%8+>stHjN!}Ţto5V&W@zC KݝD"5|s2xm`DG_`l#?&2ukQq:c$}d]*_Y{Xd浸$@aNP<2;,q̃;A i$%epytZNLBdyWGnYeG0l?{h0怓Z %ʐTlKAL^VۓH,a>q ;c&Ex6q=3X3va;JU|0maijq;۱\9EIJCr/I/fQ : l 氓FPL˫rx* zA5gjĸ)ȜCz+* \F;W=o;#l+]A]xK]p^2͗-3h݀dv a4K¢MlD%ke$9L$븻0pM\LxrbR.t/b\unŗ 4+.T]3"M|.;\eFӄO5"yX~6 !(V 'rBF۸ZopPaC!E%OWgu_wKEU&c zQ#N| *SZ}MNmDm2̉56z>e^{oQ-T Avl tX |ZM59fS(TyϘb#hG[tfcvlzOBćOG]&H4m=ޭVLdC^y哀k[~nuԢ: W`| `'ĩ iyff?PP R K=G[!rR :H)01߰rP 2>4_=9~9%}We#,V *1Gy?T`B~Q3gt^^F<|%`HN6T1".R ^e6qΠ%i9u0fX{h!Ye84o䷔5]/XM©{FUhBtOǼ1&,}JQ$i2X? T/#Ѕ3|挷7?/ILiˆdpoYy{2 jo .J1qgfi4Ka&\K®YVaI5X3^LIiXOCqDjJ@\ R3xRj:qDsm!l Qܦ[\WP^9E"z$}+N蝚5;~~T„x!qUP>UPESp6 V5Ac-EzC:vy4/kM|nDh>&EIfVL`8gc{QS.Z?+ :yu?J*Dz%s-]W"K(5*W$'C~E!`^|h?/w,뀨ķŞ*(avBp~.om3Ӿ5Tg\ނ,TX>'|zhޯ+DMq$=|VD"`a)~KbR0 MremV]6I;j+K fJ8*bZoS(֙FPeMjOk؝H,#{#jnū{&[3ubt@\'fxشn4H31Wy~ w\%Wޒ}7<bTtp$xP}dtkX5ޮG S:MsW&=_\:ㄇK}oUe!,1idg_Zփw,UNfx4K&JMfX}hmpkEIQ¬`ܥv>[7L5"%zXRnnXEϗUP sm8l~;1돒5|.8PߋىvƞqB!-sDpp%_VEP>L5_[;fk׾  vr;SWw+-r?V>79!?435#T?6$n3;ܒV]Z!lúsi:s'[PZq&@W\K,]ErRߦYW/| >6L<$ p rƄsM5wЍdd1*/-e xeЬjhXw( !,B\ioѷF8-~dp[k(M'txp'nv֯jRcr3lSi`dP rM &P;OeHߟA&h03?R*(;H8=8oߏ%[dTmkEv:TlKWh)n̵v,bS8[+$*ᕋEZrIֲv ]:l,赒тSא;IYgD 6[\i' RűJœ蜘X m;VJ~1kJ?-!oU3tҎY+2_(T2q m5V@pWA:!Zb8_k}xw~֞% bplӊʕ4QX( h.^$~Hƭݕd=7!+WcNw͠O/t6P"p68ݕ^@;܉Eq][&,3ĉyI[eVIYT@ҽGh#Oe{V 2/7=i"z+b:Pօ `E ReAs:KW\p=HDՎ !)DY}v9M|-KSY{(tl_/0Z &]JE+rR:Ŀ'\wNȤ'TW-@wIa}@+K\}O0WfocZHW$ @ `̎6a*]y|ɖ6,7-uCD=W=GK#VoA$ÖKmR?pR`^ҩS>p0"܆vWr0UL.Pc|47aq ~rQ]\guVSBU2w?,hcxfI o=zr"N=6EXYNSVa%Yq.n9v5 Mjc!9,8Q0HF2"+?Y8AI_SXOexW18p;'>Q5kf{k]_VR']"b0 B91̎ e^XkSswܦ';`<#v۳y6ip]ID]"V=R>*[Z]8)Cf9AgEk̔Ԓ䲗g ͗֘3:ҩOX9:K\~D"@w?kZ,kq6͇cMtohTңbMi׷do@"x7,XwYz3?7(?ǎ[,M.(ܣ}k12q>=t*kQZ5^&u8j`h w(N: cI=Eb1D^/^h63EXCQt7:U9ں }Dezb\cz%'eIǥg?hӯaLb u*1㌓KML{m4?+7Eraȟژ)zb;kq+9~dCY~e!!mbЙ:ǒN %OyhJh ;vMw7UȘ4x4+q<%)&pfmgL~}.ɤJ@}ꄼ,7]xy7P6Y/"ü;\KeQ6Fl4~I{ySF xe\?'f= Ў:fٹ|kV:'qp[+`OG"jbO8|EE 6=Ǥ s<"VW)) ctI>)[iM킜 G[+-B=E3QC_-&:rF4lǠ7E%@N_+@p[ #SWȷ_m5m"Y\z62`b8un\B\۔pw)_PS,pXfsf扯-)" HmP-n?Osg?fQJx"d1~?Nȟ}AJ.],"Kxe}XK$͸2Q%r8Fk6].}XZs_[I|բ5&twQC:6rq+4->=h7Kؼұbn`~ыY+Iĝ|Ȼ)K n؆#)sˠ<$Qʙ64BR+6wt cA9Wutb; Oag‹lfe/(=][y(p5$)L8ܘ3>$TGy)ofТ\`m )ଗQ.ʬex]`:CLb;ALX@HwB^Fu=Atz͏k\5)EK#W^⸻Z분@|ٌo<]X(Ą܌p`x\DFCō7rS7p~9IM5 @9%bתNmq%ُ7n& }{BE(ޝ Y%t\* /B$&`h(1g18`SW<+}',vd1͙1f/]PDu A}_NFNR֋X_E{O~z/?tۨCdXYLVu xd_g`DV?ҀԘ Gߙ)04 +5Dz53HJ,8KPu]aMO XW˶{/pxBK'}:gzC䭒R$]rK`PzD=AD#[GƤ][+,!P哝\5jgBM%![h?Sd}9r Z去y觼Zh쪳&ߚ }=(:K"xu;8 [omkdC8"g腆U(&̵aV]1Ӗv랚jVU=~]`Is׳ny[ӳ&|zJ.ZE5?G;M4x[@p#ȮUv)v%뵩x؍~/s[9B#N=nZl ,B}ni׬) JLԭ<ɉ \?=I0NU{g"?|_R:L(h'v?ňw0ws,tSvJ团/EW{YC)?JOc|Rs lZ !7lG+4[Q@:/|+\≉hcڽ!QI|nz)Wk8fƫ-emҨJĂsD4{noԙؙx`,_0X/C{ y ֱp*[J3ݑ4;ɫ8iM0>UU-#2eGXy3tZdyCe&h{˖^t堽N -.Q# MCk!L钝熹~c9 W1##01ab}$%;+҈ A7Mb[ wܟ JXNs0-a,֠kF-2/CgfS.+"'!$ %\bиwR頻˴I+Iܵ~>$Eveg`OEb.RO)Gݒ7˧EN)K]K>mdEK -1ߧ&#vx.qˤ*hr͗NcJۚH44$ mA(4*.&CKgyY-.U ;37]3LFb˷K=!~ -gNO|8מJ닑W:Dpw)4" Y ~U)] jXa !PmOPdNuנ༝4< UM3VaO]n @5Хd%M~HMc?ħRʿ3巊W/1aYrԲ^PAX A3x H) (v7,Y8_չDK00ظ1 _m0o'; ˭ b:80)Œah ^s]h-ڗ\(hmG4{y, qD:*=8[2,s9LKX*~:wQ];/QM{c[GS{; o a49| o*,=_z(ާ)gVo` _$r048Kǖr<~݄h0ԡ4N20f Y n9UᒞM&N֘&!W KVh]%j@$⺵߰ﻐ`hHX*yB6g>+Y,7Uz0&+*Yf(2#pSSW5npx 1g5~RT\"hzaw^+,iiP+3( <!2sU"x0i\ZoE~邻:nb R’خvfOYPU$:nPW'y|wJZMވ ^d~wA򴹯pu|?Qh,cjSz R72d܈i16"ȵ%8K܎>M^[!As{8#'IP81v7''J ᠦY Fxq1>݄xgaZ-kWpS#D f p(wEg?i`o-'BL\4D{n!{\ ,(WQDq%2}!bC/F& Ly HφذO ]yX:V@I5К[(`X[Xr_~%t[$0I9Yw+P793k~y|hr S=WO+׶{x)VPӶ2!@˭3gZx7KLD;>TNnHD,5:,ǷǼNII9+ sx(p6]j4|{&u0GYf#ƙt&ѰcE̿S!W葿[ uHH_Z6NdG؀('aՠu;gM\!Thw+ 4"r)zTCs﷑f9ݐyܤ=Lȕ Eg3Ge*Z&QQV4ˎ>O}|8?B/~+SwBd-\t:a8b!O$Y+pXa lCQ~[cI>k\z3 [qT^N>e"EJi+7m-.}O@"+uCLǒI7[3 <>0gr}0wWy,A @RZ uK+>4ຨdg2jBn%+7p+K,jDzNe:'sD v,#u $ז[Y9)8LKȎs2JH<\J^Y"ISXL'`$o}ZU}˧q? {_WKhqlݏME &g,7i`*ƚQX,NoCjv5O}Vﭭ5hVtȮ ZgL7$+ R$1ڈYqHG{;Hq ?+ĵL_TW]cX\14ppy)0䏉a"s%+m@xv^(\g-ߏ(`DK3wxc甚*L'g6[@58/LjA2/F誥KpM*+Izw15#s"C)qr.> Tg'DAYʼyO(p;v; d9gTxuCуK5AKf"\ X } I9S0z.օR !WMh1+/EqtVA *Y?<o#bQ厅]YXɣwY'ꯄ#ByD =0b~* ]+H|p߱%‡+/I1)Sl"AyZ*kߒF{U%+UD̒9O*rx=vl&J4$S49`J$mftc޽@eL%`v\i¸xY gI>ގWUz<H|.0$]e`D][5<|uaUY >Zߋ[BSFs'<-?atQU(zJ{>ލ )YB@ }!q ,VM)Q?[ N2oQ qU"٩٦Rf@[@P:)]s'mǨDJ<9D7 isƔԝD̛ܥ%Orպg'"4J"4pꛏjيDۢYN7FҠtҶ%%Mר3.qW(R6Y'ՙMSsm<2LYN)QBZZ`N-Hye""EdҕYA;fgzGzo"[ohd,  mٮ^>Gsna'\cRǖַӠUEKJh', YڂB8hbYABxP'( .Y$hdL+grC]@zkj8*U/]̨<Z4vQj擧fs-lcl2e`Ӟẻ. Q~`+MƉ0~ cnr!I"}Xip-eF]*F!n'fPW5⩓*j>ub5ʖ[2K0HӶ⯢xh.,Jt s-DiڵnY!y$ϓZFQE5W\zp\w;sU}4` JdCROuGUkعʿZ$;,*0 {F'+k ToXz?LR 69T'(oSiY"!`,ZccһaD_tl[/ _b<>{=p+YimnG ͸}!>u{]>L^b64f#Hlژ^P0=}^^ %ݱB4lNu\S b.O ɏb~j>,L۾ M[fsة2jy_nR <|(?C1_j^Ml#J '~.q~}ԜxlOHbhbMt|-ABL Ҁ~OL}xi5̩V$. ֦ڟrZ+J%KMtnۚ,oƵp뫻hR;vX6充h!}=<جbafTB9F?廂A;ƉYD(\~f&b we2Nj8k=Ye]\sv:r"lsBC>փssh˺RBudt~.S#R0e#ex JmUґi|%(/[@V $A% [@ɚk eZ)QORMxuvo1_힏v>7F3u.p<^$%8hT VzLpY$#d엂\U9G58>`%5 Uüfuuc94;d󜮝 !{pA^ʧuc$7*tqDjSDz*q+ < EL>I-QH$&c0אrJ9u'}uT))!lJM5达($+ԥѿh]P@n8-5;v#6¸t-#1,68\}LXklཽcM9-@5S S qÖ=mAojie1<J 1Yk&g 21 -jv{ֳx#RhZn@LNҩ괔?‡Y>s6b ̍e^vټCYx),ڐܕs~ 36>b `Kf Ȗx%irKOJ0` S1悔<(Ԡœum[5"s]b8PL=!+] -3X|n^(^~QV4gZs՗ ,u; :XhZ<HeD.b`;oa^^?rFtBI*Oi6.tWwPc1E|9CX~?üssgJΖf ?[\u Z'D+Ѻޓ~gC#í,\_;E^@G4#ߩ`ZPq\@M5kb,G3&s?H:s>5+N>;m*{ʬ~*nn(۟];5W%,1MvAѶ \ kIv#|ONI'2r Hr1`'T},j~@|0;[ g7,^er(Ddne|7N+ypmZ1/ʫ7J4{v^$jHNKPHF1Tg^hcC0y-rP?>A%8Zk3BB*Y;Zdqjc3fn!HMٜUZ ) dVoo"Y_PzOzm&wEX*rQq'["qm6n׽: vD v9ΤU(uqș_E`[|`?De߀ȅ,t7X p9ZxN#ɡ >8EfDZ'խJPm~p.v,mOׯx.$jV6?%4X$޺DOan& O(=?\dнpDXPlH\TuB!v5x/' bYfA"˷T8ܾ)/_yTJt1 ×E׃ 7į:cN>:=a2 %v.(o[ʳ (t>M(*w͎ܖ^B[DrJ$֊gT+AfgdX4YWbEm.[|k3wr'p!-R<AL|]p71D>ď7\"[~A~؉蚫ɧma|2Jkٛc ,5xxaneXtë" +Iu'ֵ T-y#6q~mb4lj.bB0nP7iZ[@BP s: x?ٞM >` 0nl ވ$lx?m:fPGR!9`|[АE馾u4WxQvpa-dMx=bo-fZIIɁnrޤl_/^ X& ~a_&d$Ũn=^< G5FeKNw̏ڧwIê=@&[C3sCWڇ˞PlRw^u0RE_ ؁HwY HD/LX6JU"?6j,Ug2R(,7ĜA!5ѐUCE,;{r`0}YPx5w|j)^V:}Ae6LEa)ǴDV;pF;Oz> UItN>π^<>[``}g"C@bZ_L k60ĺ`@+Z&gi)a fRIqHceex7$ /_<"59B[\VMf;wG p 2kTǍ}@]^G&m7-Pn)tklM߳[1ɱ"t:WmގYV"y̰] O5 piO S> ;Ǎk祻+*`R.Unq4ϾObd>xP|Z1ѻGW CN=Y\T97E6QIxzHGI7#be9Ӓǀ}J_0eR0 92Q Y7Xh*>cvҞLQ"E?fy^py᳧js<q؅'*5ۤN[3nrΟKτD]n 9vgeYr%KhEi:w^'YlI}!?W v9tD GZc'ap(8 ߚaZC `lв9ݍd{餥kRQv;HmʹN.^piiIv= *:j]1iGg' {݋sZw.Pz9T5-|qHN@+4߄DV0 ~ʲƔ61iw-r=^`Z;9'S0Ll]!a&}'ب* qPlPPǚc=")`Jr[y&MFFCpj=2=9 (8uS^mHk:q˽ڲF3aiܹ1iҎ&s\VbO+]gzd\B&gl@Ճ" ˏ}n=MUc3 |VHqe+k~[]QzqRqwd).Q7YL550zzp\l1\PJe1|d6F„M۾p,2zJFf $ \)œnT?x\;C_NfL'ZN)(ygy+4gvc˙]QLERBkQT};TD q?ɴ|F5c{147*%A@]IEXo;'N(g  T9Mo݉˙m8d L8'qL8| :3~wZ>l{8kZh] AnkUB_It$̏{B` $̅6 bdM/ە _,dSAGl"(p(dv$œ-y}jjŅ ƼclwiOJ␶~̒㶨4trĜś'6W+DJJ?pO/٧x3mgJzE+لniI&Ծ{;hxm%ׄ#}˖/$nMͯ iR-?F\MMk+g`FBlo0DY[x#cV`e?4긁!~P2#l+j5t(Ùv8dj3\lzO&oCf-x̧AI۽V'6 X`W^>zsך#7p@S$ePmv\!+WOB-@ʬ=v E{nPecY]ߨ˸]E^njL;C.ODY7 i'}oAzEE !Plmf(4 эCG=\%)[JNS Gpz#W :r|?z&{$q\-+¿wߞY /WŌ!9:SYHΓg4 .n0gp/ݕ~OP3kVT>#2(E+-257E>dTuKCVx߭jMmNP!YR_7XUqga!)F5MLfIDƙ#0UȮ,&/ݹ p9IhKηU]bVa֮ϸrrF}<6Yb*?zb5 Lp u(./;$Mw嵆UlvGhUr>rYu2 '+Kݾt&aB-\nc;ޮ vk٠o^i?Kذ5/ Alzirz7`s[]\ǯ ,n7 @zF'B{L! 74_s Fu.wMcy=逍A-В Շgb=-)aOUOtX&:|E2D."Cs !a:s<߷?ڃs>sͻfXfMDJaq6[H,X+3Oύ fs{ ߱wÏ 9$Kʡ@"-1kCkt:ɀy$YZaSݪgcgG`[ׁDM]rJ\/my(I P A5bu֍7Hmܨ=lecbbsy,VQUłwG5qma4;xnhTë |$!s%p%C+8,}ld0o}qBb"̫Xヘ:#mkS%RiCܗSSsoſuS䫧vPU; Y0^߶a&;)zQkpqKt8Q%dJpy%=.sKNͺCC VMZR.]L7~S`,? 75A%QJd0̿K! (Ʀ b{5ϒÁ3Ͼy[DiB4qyrLZ)V=&*ZVTۿzC\t#[_,7+BYBKjhixjm؂k%Ƒ~>an2;7ޣd %3vy)O^6Jg\S5e-_'`Ba6W-~j.eg io?~D紈a]f!d^$ĨϿ9/7@,Pg9$Ukx";Z֐C)T/1jVhsUZ+R`92\7 y #0/Lp*JJ3Dum´g:OHs`yQ[V9 R@`~LڈJc{6F^mN(uNT5 _I|DzGQJ6/*R?p3\˾*SLwtvZ"F@oSVE"ܐ }Lq﹐̶T#CYlHUCLD|۫\Յ ӞK~ *:jRYHM,tIx쪅l@"g[4EOК"o5%z2{lj,ʣGXb69S`\: 5+$VtmNb9=h%Kĥ~&E.qu߿Dh81}u Q|,XZ?kTJx70) j? Ox[Rtw}_QLUhe 5Pwcgt{,Aw76REa7oJ|N9M&e*yq>GlRqfXUx ew?E,G(kC@1r6uXd^2Xl^l6GH ;2*MK:U֬"j ;Ez- dd't*\z^3m0sꐽ6]"eOW9o◖3t5{`Z ;b(o"ץBJtNglTz?Đ쫣 836>EG@YSWlen0Azu»K>ߙA`wWb*HxLLʰ:C>ZuF>gRТN^ n*lO3O(_]Ou[}g!p,?Щ{q=A/c2P&f`PPo DƵn{JzC'Je͘Χ~ӏҿ>rW=8IO6w>08+ $5;U#n1N,!l; ~9,!]ȡKvLäJ@P{r29`$+%w? Q:6 D{>홍ra/*(VMZG}Z:8=Q_ Є s]S(6oؠ>;ڦMA9c^YPp/azk]_<6 /v(4M7qaL>gg,pPjwHb7_&mcʤ#ߤL8~zP <.>+]oʦF& N&,颯ޠS)d'=KJDٿ{lSubO PIAL@[/ `v4ȩ8BcG\ka6hJ-N?IQ AZv$]7ɓ "kSRw@`߲B9xd֐G_]Be EYSv~.b72 ȼUc]q<04.`؁SòNWx=͍\J ȯ4s (::.I[~DH8ҁl>9XS!X-s O8Qb;R'{ӽ>^9-ݎ{ DL X-x^r ͳ>)"?TrE&t{ѐ<1M^SǟQoFvJ6 @v*PQv53#:;Ep#X5(I7s=d`i3$^@^TnhevB װe2$VΤT7k@gy^ AҸv/# "3+󣤅ߥy#}; ,>]HF?gT7fG>QңTWL2Z` ǸRQB[kaɀ AKIIwfvI\fvS[J0Pn;{ ײOrt@7t ":?"gWЮrt0Mm/>E 0U6ODh`W#[d 않OPiOv '@xsnJTF^jGy\~NƱ' ) [̷KGc{aPV͐nxe";gGY 4\W஧aOutsu 5D`w'N~ 'n7)+AT "qۏ#Ubk #,m'fEŰzXij-w,5FNY8PQOEO~Q.p(I5t]JSAVjdm>)- `T룝>!nh ]J숚 u6?V7Pa⛅abZv>2)x* &Þ=a\TӫHF Ǵs uT$Gst;P8wo:$sug1~Cim?R a,k" EuTL;K8bǽ ΁5 ?qCNr s>!))y1(]Ƨla`Y-soJuHIA*Iq*NCi^!yi.ֽv0'&edpy}^(Y)rBj悭m&4ՌN]cFS0bJ5%wj"ߵ[rIjd@C7' ?5 >a]"D"⻍'/ ? a:{;hjFƳ[ݒNqX־8,>&3AրOȍfVS". 7 8dCd﹕[?*xX dzYdߠxˆj|  yv|Η(r 5x(J]YH {tir&$kպT.}X vP&hd,7T#\&,;~ް!i֓8V֑uYؤNbeqoPdM &{ )V1"+&%y3 lEo-C|GSBί_MᄞH1٪b`RD+40mUDPM3߬#jD%=axDFd{-Sp#q@@$쀮Z+2 sV=vQf##{lRPp =ň1"Q-+ꎯ@m\C|J$N;\w8|tPqzS)y AO=u95客Û"b~1՜*pÞ0Z #(}E1n[\m@ Q:s,Lsdu:FM>"]gl,.l՝O_Lݭ6/"֨ @vg̋[OΜEұȣhzlg"\l=Ƀ|R1!qpRլK(Tw1ek]C~×;|au 7ĝ\p/ܐcl=Bxf)š Fu $ԦoSec.4v SuO{oRj s@l ᠑L/W ;k8;5>Uռ-5&0)d+6\ګ(Ah SAԿҹ4OL4oH1мz"gda2䮨oYo'+iv2yg7G!?ز;HٻTߡc2#ۛ dsVfpEq[pӤ7Tpթ{.v\0SHQ59M[Hm7t(BdDޖD kUΌh/|t ٻv`^]V=woD[-wH<#7_m_}WN,]|-PH]N6 ܜ9Kh݌hHmP\eB?ւJ3<ϕG)ߧT8넜tM)Ur yAomKK9|'1 Y"yqɚp|VEkf91铃SwR"¨5 xu*!$thMVY03Q DgC%V5L 3ՈAÃhjVR б/ )WWc@J9|$:{lDة6Ip@o MOV g>6*L`A_r9 ۬ԫ#u B Odr33/uޛ<ڋJr*wɉ~ʣ+3rj_ NsrqqI"NmkQaH0o p⒜jSbcnXg-Ծ"nr"g PKb,eNiutS,)R8|tСJL ־M7p5US~]A)IʂԺ*_3a_s66ܯ&m|Z6GEF\| h$2w*ya-Hٹϳx2~Ig.w)JÔZQ LZhޟq~xUHZB* ;Sj^z}Ҕ[ _θ:l"5 3N^ψj!,Lhh>PɤHU>6ڣsY{F |]Z& {R ,Hy0@~z(:&S|< {4(^uA i*,Jl-%?ٛ4ܚwW#|KA{|\G-!|c%%Ջ`O{5ssbsjM0 &v/tOzcsΒJ?d+!Me2+7V(N\K9(EHHaٸ) ҩJ0 DQP664'u8!d0Y۟6j[(Gx(xf^z?Z(za\ HHjwM0o~wlϡ܏nVٔ=u뽴}.f )mXu5c¬u }o*0V;#rd[Ԣ$_r `YW.EϒX좌oȊ VOQD 4R[OS3aiHZ"\nrpXdydS0 ,$TVI&ySpEmsguy:?lSVLYQ{- s?!3*(1pdLZ.)Y[ZQ}Py-Bنg%m8 aʚLa|7''ȤiL-Dәcu\-xSQ4/> 3~ V#Sc2^d([]@Uy}~J YS˪GA n1"^SvοćknV9Ro.Z*ml;sn[}db7N|GXցS>LeKq@+FoɭH&~Y8>-T&1o6 u-]e5!ee/{L:5Z͏I|e˂|OI]n5E29ҎofK.>#ywHOe_]-e_Ok4[+ $̓Q2jCw8NHYZP3']_UprVF=30O{͗[?J:9hLBNZ/ ƻ\9a-jTny<1̅b Դ(HNZ~2vmzIi /cVVT'.:lJ |WXU`Ju5APЈ̜ӨU?72/Yz'\AZ<15jjg&DzG/uN^8 ?d3¹l~Qs 09`%S:l *%!Xg M5H׿f\ ۏ뽞TsM\{Ͱ[Ʉ_ELZ zI)hOr?<ڛ =(=3Di$JFړZlưXڳڕW:g3L*THZňM$@qoc5 O=Hߢ,E7:خtHy4qkgê}S(V M3.L|zHVKTB-:5T=?,s< ߐd&-S9(AT@*dh|#=Ve y٘R&\ lu'Y^?~.NN维;Ξ12{[}IYk ,w-;&3"|Uв/)@r7U$:7n.B.ZNGзQ.Os-:%s`p'zϕ¨1lxHs ~fgf&c?}~P9(-HI,O@OeMw~(0G/k:دn(QBTٌu8se, ؐا3 LvH*\QǕ'`ۢ'͗u'I@ϳDZfjmfN6_U9ks/m7n6)bʨ0TWt+Ւg S:vpCFeM t'Kw"ojDAJ*c)yI{씦Jѷש ]S3o`H!E%7= uߨw@a17_KbmgvZeU]^dw˧`lC%t,*a<; ]9Y2PʫL=0ԭrIhd.E?á>^).mD<1o]Ͻ#\.HKm yXq5,CcšD!U)Y֑eCh&`6ئՎRdi$ !\vM+F&PUjQZ01_Su᰽89r2_YjkOJsRȕj@!-SМ`YfWF۞Zd)EYԡ+@n>AaP Ǖb-^o+qM6#44sXWbJn+/;<@S:F;VQy]d h5u ) %΄^LUMxPP:8;v55JP\#j]P')ۺ=F50 GEߦm垞}C;h0G] !xqpؒ9(Y&B4tl`Z#ԋ387Ǎ\FTzhzieQ/ L8W+_G}?-aWȈ%)h ~zKK!  (> xS_ȍeZ"2Fܝ]19.Yeׯ0x ǘOrc)$n<;ʢGM~XB$&L }V` te& 8Ba:G8ߧUj2-q K4 oQ^oQ SہfOsԐf[^ 3n\6 c1+4kET"' N;~ӄ#4"zBn.%0X5>MnM]-P79a+vS]V Zw|WѭW4I8.gK2Ja'/{f#6搛9J^Z!qAӼM?}::>bgGV-]dE6/j>!*Ru*|˧XS6έ`NAJQ%0G-5(6\1T~#m9gWyXߢK:M=g24 [`oY:@l&s^sSɥo>s(d: Vo^PQxsAly-D*@&O,I`D?6{['^ގE"|;ò3PoXR3UwR|7Jm u:LB-SN;`T $G\a3#չj˂^ƀ+%ru{[yQ>Ğ+{vhK,C;l5)D *׿9A~Tݵ^zR=l2ʺ{P * 8}#H,0jYh-X2RE "K1_ÿs,kww,ϾBBKn. r"y_w JS+bk@^ł&#)'B9 Xi%ߟđ!FN nx?(CN@1iOލ5M_i.ق ǎCd~|EI@|Erʱ '(֓Ǭ*66=nMўuq6_{ae:D \nxa<SX;c3+:o\d9M3xX}Jb*?vlycvnTV_ԝ-coi~Fd)Bt h6Vru"c]<NǫQ咟ɰ{*f.=8;tH56ZΡjw\vyYʑeQ; 6>WN@ hLd'$0I&?U*r 9S8J%Ͷ>[7ke$U1|Hk-;jꥼd=()WwT*fH;uZ5/Eň1[;R=Δ,~.tl͹Y=rQA:$ڐ4EdSܝn>k3  f6WS]/Mj̐jXQR7Y \iN>G<|lt}XvJ|cMt ]nPK6K1UߠWP?+`Vy*v ةz4U_sG(fW IM{v>աB4cGaJ$pb;# WҡEoRLnZU٠icv17/ ZuϧSˌ 2 ZaGeBkD+oyb0(8?ArrIڋ&dAM 9ܽ>GhԽȋlx+kɮE-ymN$'Is6ؗ'Y|q?$Hн;̫jM\̩6OG!ܮ];sE)lcsvaPEt" r_^,l[*/#ْTh|ٲ7z\(f6ך(A*^N^ REW1R`Rld$)v^1ۏ17`sږzUﶨZWk|.9Ϋ ppdU>??.l68^ دwY ?@ˊh6\@Nb/z@gߎ&6O`=iw5Wr)kpC9+}M Y@zat>x(gR ӓgZ\RpYNI?o :%<~ ,vf3HpVsb%"BWRVCl`>] f5-}.6ܴLŏj,TR_n4'ėDj7e8܅BgQyKVqF3ޯ^K4(0+ @|# =z'w uN3`%s4a6[ kxr 8td7}ɽ< iF#%#!#EKm\PRɜ"Z @4S62 Ժې}Βz/ ] *ԋtf,mb?ɖԁNNq ߜdp7ij/ji ijUDJ)eCor8H Qv<!G>K%㳠:Xj, -ws*nڔPۖ3OBЩja_n$ϬQ#!Q8i:Z<Q'N YT+gNfܷUtU[i-p`tkav.q"Eޗa+%$OH`3Lr:䟄D|:fg`(ัYxR k쏾3w[ES|KW#kxϥF[x`? قLYn]aa%g:0e &͊縱lr^WF\o #\гq `VX#ɬCU}|JM6oP294x_TǞ>9K'OoI(c4Gh7Nv$weTR~*dڔErU vB:~Q30ꡓP 94Q\4%[cܽMt~K|~OZDN+/>6ó^ { KڌE]W09ydh"Am3;yݛte]ԁ+(Nb^ KT];QY:*9'fW-}y)S".kfGIAȸThY[U&Rux0eހU9`priQI[9fvUe!PδJ+ Dē m !/(PPTWi ^u0P\)A>3|6Nu˼|}x"{qˠYxG eǡqtd@ڛN.2m4? $7-b^B6˯Vؾ"8GЭwB iJ3z3zUFe0ʣFӘW{+[4r4PCgŹq zЅ2t?X~*<%FTl!u*x IXEJ$0y|]=oyܖV sJnIǷOYqe@M3ng;^CO&v&ڑRoI5d\IP9`O: `SK2?j~=˔2T>~8nUr3+馅xL)l"dr.ӿCv$a w9dmne܅U\ ?EX8fDF'jWKh0V (Խ:ېqQX{>B!ȽM.Oj Ad'Ip)fc좔Dqj?29Pb?ı[) U2B@ 1]ߜVL9Hz#[KPA̒qPxL͙1O K[,LQ%?'0# eemXr] U|r tCXoqؿ~0uSs[BԴ8(~ӦuL&FI0y_oEaWujZ"JgLuTX񯞏P*vsl|ǯo "ٚsuEp=KYMCplC.qp!c!3<5Lm85 PsB{~2M ګh8t /a23琛Rߊxvx—pX#R Hj(,JKw𢱘)ƚADJYɟrdEBVQ Y9katuRmզׇ4ixx]}Nœzgڃ<:sCl9PoWwXf,A"Sl0=P_9cp dlBɟQL\,b+{:>o#HO1vM;mrQi^7[vv:y,wtEbO- k(}ӡ`sB,H V* >(f#N[RlL i#ү[֓E~ko2s`W`gG}"\H3hA&#R<-ph,}FҹoX i\$e|eu`31+?1Z@n*.K(xv|iQr z7ww3z.䉎8wJ5H\)*HY[d1o+-?^7}%Y结}Fe~:snҊGhwB+H(>&cqS\PsWq'%E@ r8G W+Kh11i g8A4E*4G5KjQGD®ObD= .bsGepѥu P:z9cy#lEs7,`{e1 @OigdT0!~C=oat˭D^/hᩁQ-Ч@7L=U J@FEZf\+-k^ '45b6c2_{܅IT.D"ʦs^D|^ǁ ڧ#dL0Ma颂Ǻý본,D.P=.t5>:TPJV)(7btIޭ(9n5]x@Q_JJF9DlQ#fOudD-!׏cZZ +Ǵy3בLJ@00tS)dy8u4\gukAa9(uxi?:u9FޅT ;|2W\v*0ˇңdN9FO(o233W.sc{f=CKX.w8Y3`@)fMVNr>0.4  |1 ?MN$*ՕW4!TP1yb(_t&^/͉3}^'>B$FSժo^H8DRCg`0(J/ԧ"$ ru+ܾ=CsfR' eEs^j!$9DEq);dC`տy7Q5OYgj8(#~!2-~ѣVTYS>K"k0,g*ѿs@֘gHJٴZ}Q}:MF7peprƅY,A> M7E_M+&CN0;8xYl%(y 0Z$|BBB1N\fTu<sV4)MخϨ aw|-'X_858DO[| #ܭ8n IRQ\KfL*&2'1u]:LMԝb؊f cGDZS}x0͙̄\pxڡf%G]qX;=ݼƞ(RN;ҝwc[oMٷĻbcLcVX6T#Vp6y%Uɵ0୐ic$FUsl3>#"pOh! wNȐΞɒbҴ>'[rΕ89|˹?2)tԷx.=VE5%j yaϻ0|14~[7^#=׫tG_d7*jQLKq 33jGr-0=83&qn6IIR˒t.1OdM' %ׄ_peTOo^̋/t.ρbݯ--Urԝ We~ K@8rSplBؔCAvscHm24k1src;3rĜ,0 OwA|; tܛ?Z@pTd$ F\h4~jf/ bUpKZpI&Giڣmp|b\M<51^L8͛Go+Dh5{c&6UˏD n~U1!ܦde')AqxUWӄrT:FrnZԙ&W6ƻ҅Du6FIzP@C;5@Qxn^.\y}<cR_TV"#k]f>,2K+!,TKHw1Qg! ''hXwsAc\iƎ"( rxqΐb!I|Y5.d^?MGgv 1Um7}L'gFH£N(#REf > :kHx]=ufhKQBw`|KXuh^RꇸaeӠd3Id} WMG I{Ӵzp;'H~ړL.CoW+ԍ&&SWgj\-w b5 FP1 %I/~|\u)RqJ-jGը>xD].ˍS<ĝf@Ig>\d~<f,m림4y`9 -5]BY{HѸަ+_lX[T_< d5W!Z~䙎^宑3Fr`_iív8V|H1VP(4AZę\&|/W2JVެWQ~x݂jܙAE\j ΡK3װΑ_#ٱ.L1F! w<{;)$h T&#YQ2IҳxgvJinܞs>ͮDx5oQ _0ڭ=[a81o/`^pM#3?{$ ;Y#q dhCUɽ[ 4gDDV'佒^}jX<⦌JiRMgE'2$8cR. a4pm1މQ$[N'r{ѹ5ky&uf'YltRcOa "5P7Ń#[:̮<'Hzᙃ2}""k@=}Φ \sykͱ~}Mmyj<8, ]Po eH4qgf\cEhtEav!cp:٢~*1UfKF) &=A;cy-b$E LXi`lz'bՙU✣J we,6*.N1,VМ3`ZO%( ~29[*l&[|ƫȕ$YWHpVIB6"hd)\Az괢|Һv5ػulN11y򚗧Q(}J X/|7xtqpXHkdoCF 6$X{G)o"nV?#d0#ST&'?W@ӌW{^e+XYY]ܑzJW2bAO%0>xR(ְϺ-๨B>m2iQn)N(_V$-Yۄ5Ʌ!lK K;c;;pLsNO;( #ĔI"#;^K[dx1}ـ(Q/v ` h'I'p; Q@Oiϰz#Σ'm}?!2}Mqh_:S-TyB@bi±0hH$^![4|0K+>⢶6y"g,y$אGt8&\:;UgN+}Ϊd :y݄Ӎ_0q7 Q:pJN`k=lODʒy2d$Jܾ<B.F<)*>ԮӟF{F32 ggTW0 JX̞ MT; 4v9)ҁ j0jkOZdeeU59V EsV.Bs[O*xkB-QyQ!3۴Bk yvBGiDd׋V^T✃O/ dim.VFU/a/YI2M?xJF-`vpϷbr8FkQa^<*)¬VrmxraIj`YP6?eNڰލk t:Zķ &*=@z^UImWna ZAnb Ҽ!o:>4[:PO~,_@Ð3 1q!Ca{0ƚ>'9P&%5Zo_V]=t+̯#GE𺺴p e!-QDjM'hQ.(hFGo`- F3ILc)n{`,ܞOG6{M V $േ8aFg"UáaO%_&!ɰ/*I1]@O v mYZ3iTI=*]ı~W!ӰDph8w?WjeP q͉a:S= j}2q]ӈ[DZ5cxuEg LXId-Sjh:1P#\g"A@nI*XıMBI&Mx yj@Mma}-݉2X@1# 7/ݣs \PLr0ѻYDwCR\ݳEmV}*(VվfEC8 TҜ9:q ZmNC* 4DMpvUnÔi]>WV_OR}ngϪͣ֫vjS´ؙzF``U+A޼S䭌oV-m~ ϨZQRADd9s2h # x::L$Ac (Ź¹גcY*Gp_3؊/pB f:;%$˥U[[6s k5NO!"~l|ۈ"}xSڍs=%J&Cض2"=)<`نD`S*|AfǨ[ksd5} 7zrNb<j9lμƂ@Uwȳ+zᮾ; ?b/MIBfEkOҝnT?m찰w֏lsT *RGJTrD+rgY1U=61e^ȉRg߰xuO>-Ց0؊붓{EcUH|)YƉ`7WD&St5KymӽT$HbPt'1Q_eu[b9 *HA'.UiaT c[BքFGgwa,~/\D%ƔmwTYނdEkŘ) yROuo $ƾ =@vΥMI,AjLHQj'y˅ &ڿ)5_zm[i˶я>ڻL=zBn0NWU" pT݊zÀ\.a?:~)዁7T,j+zM>Un0rr83ə\}v#\c&GZMzw g^ie!~Iv.v_7bpI@JQk/VpCFՃC^ ;6#y tCWV= KXKVG譨vB'fEKtF/tq8FXH^@8 dٿpGT ,7ܝˣRqR67-@M9qhbR;"%).XfMS ~nZ9v>ä#Ԃwf7}pDc`[A/7aI< isD(8^WzZ͜Ш O;Xpux<=k0jC=,mH͸zy]/^Ñ\},{5&ͧ{a3SXZプOҔ']7W d QδT_CI+Ibu4 JQ:Ehǫ=ufnˑ :+$4CQ^PiɊ+ &r~PLίfy$<;h>{=@b Ht>#K~ĩ8|=n&}M6-j<qzHZ&+72gGfR8NVƱܴN{x/?{Da;8׷pu6NQ(3Ŝ$ 9;X2j}?b:-9oRG|U]}f2Ch;8M^T5=o$q9G[,+T*۬p#J$C"R6ˬǮIQvW6۸7/z uwM*h+}Z'TRhL 9/SPK'(1nՄ&!Q%zb_+(6ZTie|5 7$j4i|fJ9eQaE/1h-&t-cro*Y~_j]9~rȓi(`iǟE% zX)<Й B4uSnGEm4Ө]Hn3~{PG¿tmJ܃)&c<9u6%sjR ѯ7:o` ǎ"uTl``etHO\HeL< \D%9iRShW#GɴT-;#Ļcݽo_񽐶Q{p{c#ωkye\gqK諭VI3>qD/-v̶$E'py1Ra ԁqXRx)XX '<]3<ic/QRIBęd[fK'K^ 7$3_J+xz/d?S0%Yg5rhRK[˂;!suhaS ݫaN+M3EvU.?Ǝ044oDil-տ]ۣ~d_#m$"[ GhN 51hGu]z11CO, t)NC mm8r,+cgpgC ~Źw*绮FhEbeqN`M@xQI9akXRbKPYdݹ`Ѫ N$)WB{}P&G $U3.=&oO`cv&ʟ{J9'QU!;OJm74E@?ל|]56`=Ra=IR)#0L +e"qZy;wg)҂o|nf]MLD6Ъh 2x1tƤH5d2)}5+~& .7TQ|Оq⸷0Ff`:8ETB$GL1$7mۋ204TgW{d~f}$8H D[IQc3Og F"r]Pn+|`/;I"O`N!7|{$&YD,9 ~^p0&nˈ%fS@z1b#:Ty0r91^ pJ9 v HKuNL#1z䇁cxHiq7B-oG^2&WK42a}mfsnQ'aQ'Y:|N@.-cֆ ?ͪh 2N:uML uaUզpAs"γ4NJ(Ǒ0#E ]Zaoҡ!7Mw!P~l(JV|}i-Yv !RA79 eIˌmx8v6Ǡ7&/N>_I K.pQ nji5e` {On?s.^ m+`IeZ3-+/劸e^rtmSP76Lq |&( Ű&J,'+OTOq.['ǬaqxC|̲ArTlR=+)Rc@ 1(jATM9\;YXǪЭ/k{֑Y=i H.0D!lHZ e@p^g<4SqY$|{e~;*dўⴳC`|/RTmrbyx6<։NpT9p-,elXēS ]EweOL,lw=m0*d~V}1b#DT?k^nu3-GάfA;A,#*#OkEv4<­=ޔ-)jk,\s8}O%gh *h'䲭:K—^׳ܮTu ٞ5ņԓM7"'ylLǗJe`_\:GED"G3$+am5 8+Q2bוƃ|-gM+tGu bVxP$2RuIjDQy=+R$!ê6 W_mwUL*^APQCBX8}BѠk %[]XIK"6pG^0gn啾˄X{>Ulb5l؏@L5]|n*6#tP% |5?9N²ifR##M^k%U@%۬գu.MFj )iNA^vI%L6s.[Mx>Q ̨Ƹ:,9Q1/%J'vw1-k4iVCDu_#Ltpn11BqjU jjpOݐzϞY~_֔e#2aCmM~T@(}X$zZ:_ʆ`d)5p=A/oe*r{*/eA%>h\=G2!ʲ с%6y:M7h&=5cR9ޟJ49ϔ#gnޏ4L%Ml8wakr L|/AHD3N 4SW,Ȼg<jZH\p-O@zbMn EJ>yP^lq`bx ^4@ ,]}vIJ _u;TKvdJ`ׄXC沕nUI3\سVCf?s5>LxreD0mXndjS+wVP)ˌ$yPe^+K,\މކ9j~c|T3b~jwp癲P\mu^/k@kAh\`@pk]qڋV `H:y0/[ ֏Y x{n+pn Y)c":xa7ѱSa Xn0 ;Ŀt?] |F7|[N`ՋrG/}zZ3:|2ŞCҪC"r11m:h:=^iDSB2.[cw5Wǽbe4*q׎&_VR?9~GH}fɔc2YtAoio4 MBz!^\PA2IYΝvǏ4U:-Rh`|b)\2fD'(Y ϮpK{v1(l\xw\mjo&ӫvGc KrH<j Ւxb[LB'䆼׊MJF}` o01jj|&$v6"hzk&ACȞ˷itF37CEݪya#D:9'S($2e9]|a+X'I.9&l)\ְ$|j$Z!ܭ5?9",Ϯe#3zR:I9rw,GS I;8yʜEFd{F)ZBH'o mkA {zDJuس̑35m%x2ot.PM0xh)4 ɳ$pby -ݿvHXY&HDќɥ>#aCt" :|R ƺ [;."ѭvM^5/6dUN~ҍf9ZIHcKx6~lJVqP}+$|TSր6\v H­O*@O8CGݙxu;d$(V}"f+j T?{ ؓ<Ϊgbw{z>ҚE`y%~{HjPGpI"̶Iܓ=r\ KctL)rLpbsL*˔ZQ_g=޹L}!/*,`ⲏW'SQUdCIgǐ&}5Zm$ui+UGSےI떂 1s$ HeN7*2m p %SM8) 36!b ZjtN63+Ov VOb+%WNG>K7o2I-((O#yo8|K$8_x֬;K jP&N}NL[zlk;/ yHa  $a)QE~$I. Ak.iU[?(Xnj^{4b[h 3bO_ /%˞ κ}z}el( б9 uf9 d}Z4~ jx j7XI9Ӣ3>a 9YܑSޏ&։w3'/4ʾ!Ot9Ăw=qNL' 1 _mvG.i[8k*"ٺNusx#aimJFKĬ-=ܿ`_V4oq7~ސ9 fo ƒcTFݒI% ^$e I5y7v'*AЋ*&Ʉst8tsG:16GdcV K3,FLv__QrT#hc芼KJb T.lĞrcKaNB~#w֒A\W۴Bl-dxv=`wͧZuyo{$.(aj\iQyZdv./ZSc1_? JPC[_Yl&{j24gWV;|‘f9g+P9ZtXW6'U7=1k2žkhL+ 윸z'B^ph󑈀l˪Gxn|'nT^A0v=)sj``H%tdN[Ls['G[Xb|}PC]NYb Щ8SnoH>a~SQ#wËʒSu#c/fneMOqKms _ܮ?6f(FY$. ΕsEiol_f\mcW:dR `~cdbYy(<"1Z\쀞c־[<'nO(<;o j4B]n' "'u cV8H\aߐ2`j]zPBa5cx/L xOwn@GDz~*_F 9f(gVR֠D%$ UP\)\$8XLJN+/<˫Pg鴳w08 mmϥ0+I/WUǦ| VSFpz݇{{P /hJamSM2~zk#n Dʙv&0O>jO ۃmw{*ZLmQ jlGQiT2XE +hHґW#H W+ 5F`8O=lF'M:4޸6N?RHHp3BZN󏙯hP^^vR"˱1bMDQgź 1@]hOs ܾClAzMk:|tbȀmD;!Zg:@m :gC{{Y͠O]rEU5D}N1C|":1ʩy [`O6Xl1\k"T޿c ב6d? ѮiU463=gw:A~iX̤NZ#tyn={h m3:ecz\+"r=4ڒnUޱ4YۢE% X_TJ[~Ac!<49zvC/gsa+utΜ!L+ZKA-ծQ FRRsKI]:{@XmBǰy/`{;{ӰybAUN|bo}6hʽ9`]AFZ^LmN ETfkaPs¤[UyFNs G;F,8vbb-ZHHqmѳ0? !{p&h%w(y!@̏ǯK}}"*S+Ax9 oRuY?c7*f%ɔE^ l8ξ`8WOv{RԢ0{QEtIse",?<ޢHwk#4is5EV+* {VcYB226Jf5h:.KM[K2)4@dȉE#*yqoyJ[axh}DeDAp#٪n"_4玄?0'xZ諏wZktW=bQ$yaHmH}f&V/*t9WC"sCEy˄r7 b\EA&)ҦfT!fYqvn,*υdye4%u 㚓(1b# /ezqb!zz4urϑC77Nq*RY72Z66IJ"@MNmJv֙ԋ|RIbgDQC\ oK)ЀmƶS-’W$|Mr: RB&rnop}ŨfKQ4Ci nozۇA"䭗ʞ?(hI<"Bc5[ &up$хYGD:&.CG*X!5xNom >}'-Q-ٱ9|D\. e4CJ.%I D_{ZǼQ A'ށD͔:&ǐ참}BS/{6蟙?݅L ?ifFD7 2Z] ?t2C]כ(x Ng. !| _lAd.p=SlgId_͒Z 5(T j.v]*L$s= ?Ӟ05y={-'zM#Hw6iw/WT9)DDJE@'A!Bq+n#+$Gfȴ&fDP7wGOUN͟ni =~CM{/Nܢv,z尔X]lzu0i.0n_/dxN!+VZONXD.@=88 }c. {U ?\ks%OL?>ڵZʋ;x :990ԥ\*]t-})pm~$7; vإ|mo5}{ᬞ{d0k5P䮹AYi^ SDZ1uW [X"x 5(CO~`FJDwfN@G&#$yun Ba.59$uKn3_' nr+H$_^[;_'zX>T}ͤp9SbKѴcC 3X M@~{I0VR .$`ɖ\${)>wO^,)#Dke^V}BE=ۡSۿ~{Ds`B#?%0Qd@!471C)fV v={+0|1:d2}{}+(\>z->݆x2Ioj?Z9$,fG*^qcTV湸ro ڀqZCAc""{?I6Rt "j^ڈR06%0PgP.ؚ1-nTl8j*i-Z x.;5dWcѕLQ|rp`~;p.y׏SqO"J]\OhWYJ 88Ԧe OCjq[G)uܘ XPݐ`$mՊoOC֖n5^G4'g5rUGd.sqL!ئK!|>K;AG2‎f ^5y1:GB؉ At͉"C-߃}9@笙`L?B/ y:Ay#e8u`F/501JKg#ibaL dx=MVWI%rg֦'}2AΓ>q7`-Ewn oM}z!郘W/0W1)q7֌i@Um2atUY*v9Y"!i; Eg"6KX+[_r6o@Bduj%HqE}&|>Ehr&qxR,e%[c»J9FH- "))Zt0i`eH)BZH)+C. ^o]TP3K^9T?[Ų?%?1 ,Ζy=4h- Vf?NQb龯ig"`">Ig`:bY6{vwAEK$XGL '6͏],;A$#BqX.ODu+ڍqHtT MiȂ u-nĜ aȥAI(ޤ0=p {*rAզ4~)&P|1э6AS<50wpeTeɏƏnt0 Ԇ̔ ^He+z"K8FEA'Y^U ɠS7]1P&8|V|w݉-AZ-POPPYiqesN=MW(?* TPDvWX< . jO2((YJ$K4Psy2R3W{ceo&?xaԞ)45vA40 )Ǵ* Mc~W|#aVWW]mUO6vS6};Q7ųm~^1H(_ j}sK]U)b  /;sK?RcNx7) əB8;F6HW)?s< p¥hX2֬1/U6XPPz ~uҚ!;wbDKRF~gךF Iט s3:rB7"[?T'C+OBBF)ۄ5ryTqW%ceZ.6}sQ'4)nzv0KK;3:B SMw1l$  `:хCD'I{P1Y_\FTpೆ9#P(X|>kKQ<(Mz,-4/wc6f!6ÀSkmT HR URDG S+9Ga:Pq ),)(* [5P*@lbMIZe*H|1jsIC5:en:!HHD[wN>C37qdγjP졂=mL_S!Ed6&ӡNj]N>r>Ԇ8M+o /IC΢#-o %\EKy&g!"\}xٌt!jBp uA<~C(NnE-X+l"Ra PׇWVj"3ڦRgRFyPՃWAjX!v"3pԓaEh^j1ں2Mqybf!5vH<$;eɐx rT$)Pޕ0Abj0%!( M]sKJ)),tNfnlLM9{ dqGh2MB4-GL?EWc )z}S|s7ϛحKhPo6 l XCt e1kl9j^m]"*,`{d6EK't+?Dd=43tjY 0^]*-QPȒ$ :'[:G6`1RЖsbpG0RɂDU}$jxa-yCN62xJi/CvPQ&vQ1؋ ]eBܭ sYiVއ趲aeLA-ڲ``ͷfuMtL(K 욿IPdK;"z)q*כCUKg'pϴ(N}? p&r~9h*@^ ѡ`.fmq"AtU@MrBe|ԡ[-hoh?GݓISnҍ__xyf ׂa}6K&Gw92W}Y,˷I9/M{n ZǍX`Nv }RM1O ,귬\xl˼}}x`Cf|E\L[NYCT)u)-f_>oK a.-%]U^LloE=F"-6M¿S 0l SJN@n^+amަqH)IMڒo&1VyUh9`FT] J$bKbm(`Wֆ#s%>JG%I1)S8CẦ~C(7<ӓyri"9T`,Z@T o!G>bWf>E?b2MBl?o1ՓWf ]3` RXP Yƙ9 3};oBIslZnp3a9ukkfQ-@ 2-ct!A"&4 ro<2$ݻQVcxBJ%LBP*ͫYJr!'i+ }ucZ C6rvJM9Иɏ&uovc.eYs~GWP ~j$ Hl!*\;']"#D˗(},yW3k=O)8>oߏPhd|{B/ &l@-@(ߘo=u0Zn{kel{6R"hRd3GY<}[n<_oIե9=+xUpg%1-L)vua]k֯[I[l!sHt(Mu`2wzp̙0(Mg UFe F a6Iq;'?Db?v^b;y<^|2A-M%qk3tJ: IuJ'=Ӌ2x|GZqXbz(pGj"LKB/o %cÚ wn' !^}G(5Ě0MK%τscAQ H]咕gڽrZѣ< nv0-22]_z\+2:UU5"fZdR ytd/n:nܺ1=\2@\oj|߽5ZzNB 0?YKyȤ6J1Z(_Yoz#zu 9a Ey%ABf`Vд(t1RY犩OL:\9dVG)Rr$ԭ -1^I~)̋Q.w`Z/͇rVhuoYgp)IUM{7p4NO;”ɋ`vFL;LT38YnVˏ/j,=ɾRwYлo&Y4#ݵ vfPId/{92X$l$ZB  ڢ5τnQݙ.K "Y~ɉ2;e--dsj-cSx_.gS)̞<S}ر^xM'2 ؆}k&0t-th ^#l}pn7 sQ"OJr7YX(> IT FoJvvȃg|*i]ф wS OWkW_#hMQ\K%w;rPYu"n0M{);jz!Ks1>둲PA*55Tg8؏Q Li] q YUi^%zs\@-w~ğ;ԨEcr Mu#8C4t4[%O5L\I|<"%;f\a@1ˈ,3?;M n=%EՂC!ʫ'n?DE5=%gֆڅY8\3 *T\J{piB^rb0VOpk]0t*l35{Y#%'󙁿ApJ^ֆ Ħ҆xqO,okN+>0ZJsByK_ײ `75۝$ӄLH=AU#,Ln;wbm#"|q~+7'CÌNw/C-qAiHz,r'lyNB[rژ`M5BOkؼ DN>Os3q}9ՇDZP ^5{on^ts~o }?L0жkG( : Qqm"\-2-{1d -i!~}}GGPڟZL -KK VRC4%tMMzwvJʋ dn^Sb@ ӖzΖ1TO7LO\&:sɢbg욼A%f=r#AK> -ROzLctjsثClDVgAE{Yqg 2}qFaW܉Tï#ju&z O(Ô4‹i`%LhvE8s[MG%e\hx@@\iI;g F%J t7` 0ځr3ግ,a>Hf ^܊\ @f(0mĝ/*P 0ģ :kYE\~U%݈w ">u/z(p&-?\3+fgVbBvTMF@⼄*9 #~&艴F֪&q"8*rSܽO٩/ )&TNG$ ci|-CQ\LF|j6z#T ˂l֩~+QFNr]5[b6Eu8C'J`9 j|XzϠ?Jpv1 DrIru {iXI)!%Y\{2Z@*þ7LʩDﳨBOFRh$Lwp \s- 4ؓ!#y&|LJ/^x@rl4"8Θ^~nCQzrywٸPPʄ)ӆ<+LO!,M1&7΁in^kE؛wPnH"doj&| {K'z7a;^3k@8&66PVKizL<1}f; i{ZƱ6.PUEM(HKOeF#Q> h%Nץ) *t̘xmTx[H#sg4^'/c.[CA*TyIŧI1W[8_hD/%xk՟ [e%NE`ve%5>Cf1EDm쏤sky˪~Z8ߞu򴿠Lo/[?EGCm7s>-Y1p Rys˘,eԊ2/Tm2Qy FoS<^'#e],aG=6rKhﰶ χPķ&{%0*l 5 m~):Lu8c$I- |u$DA\+$pXR*?4A].9qaC%w׆m6rn0{_Egt9W=)Pcp߶l^%g9/DFի w_ b 'Qwo(Qeе[6QKA0Fno 6u&>6O Mȶ7U0zKbqvl /fZ`/tB5}g3$ l4S-Lpǟ $vdIÒyAu,m0]lYv79o Egg MDxW@l5¾<wV4|;-6ۆ?Xlx+Ѯ!2* n+TU00J wUh ~ rohaHks%a !PN6M9{/풪Xm_>'#1 pRowq)?jpW61 ržLx|vڿ0 ɑP 68ꏽDT >LYh)hkܧأTd Iqqb0j4p)v22Nؗyo#׋pc\}vAP\G܏tXّ舦Q; $O mχwoN.T@;*Ր3Qj:q|]P^@x:—JQerw  qELҕ;ˁ8؃(jk[}ʿ{l );d$x&Yy~4s{ z}y haJʒ%ܔ.9cJAJB`@}f?7kb$&cW*%zQ=b@}k['TY to'cS$ Uj` 7pTBӣw""䊕Y=9oќԱjC ;B <*|'A$ h#zRl $$#Z!N')"7Y&•NdGoF~Î,Ղ@5TfHJ4Wo#M, BvE&l-_by=b%~ *CyX%x2'4xi?ڲinsDds}^Bgb VMlwi)YAm\=[읜Ϳv:زIJuN<MvEwïEGGlWc!}  bNH tl"fPKQ~Ui Ӿ5KU߰ZeZ%d (^7sі rF>g"MÔ5/>gFpgY'6U^F5X gc; AhzM6srEO`:=pSr_c@q 1X,!(xn. gOl0h޷{H9Wg)E9X&wŵooe~Df#eH筂Z#eAL5p< trD ,`ץ# F6t<Y`exJC= !܊GF,?8q ~Gdٜ.KNV0qV $-DՖ;ϨGIF_?܃U} g- QP<;iñ]wSb-̙?U_!>7EhMF nyK53UDs4 {MxqW[Q#dE"[j鈋\l7@`A;I1X\ _C> |;vSbЊCQ2`(W7k_sd_𹊸cVlF;$KtU7g6* PhUB M6O9 Ezr"_g&n ^-Xu ’ ;ET*_L3( ]CByܯm9YCy![ a ľ!yӼf"R^cQ~=xSԷsmOS5V*`Baur7`7p{=Fs5x d>ɠȾx)ON@E"VMބL)NR2dh&)=)%nmܰslCPRy'=Hw0VIr:]mF>h r9XgHk: ;o^iTjWY2`TZE\0'C_S%jaq@_$?^`jDv5T 7#^-!epa^p%S̹SjCѺ&o۹#_?Ŋw\7 ^AFt k2S'Zx|U`Y%O6L5SjbhtZDb~~re 98Jly,Cax/+F %zN .W0E)Cw p,OgQoi!h3R#re_=b5=:J!lVGkH|Wgv_eg'?Npe T,& d`@=w dK .zŁ>>*cn!胉6#K<$~3"#%#i/E.v M](kQ޴#K>RUmAVڅ7ty EEݮk1WoR+c )4ϵƿxl 47Odӝ2D>Vs"dSƁPd4F0{s^\mp+_=P-ԵdfJ5AFMw@"Cz`'z§?e%^ \H'f}oD& `$Y4CC&JCpUKqP ,LnIj|ҋF|kDkRpޫS|2 {^$*\2u ]D62+0cvk+Z1U!L||5`]yΜ[mG$J,ϿoRl-8(0k9ݦ*ٛ@V6rƓ*FB2F$E 8sm-lٯaM|&"Ӻ6xU;)Q&CE3PQ̀)/+`ز\k107Usk#6ڬ~qՒQQ>%/cjj?|o\o DY0nBeߍ$~9yHܡy MosV,Qwsl|'1-I'Fbjv<A1@ ,O)Q7fFMYBCT](Lh`Ƞfx3!I=p.&iYcA=0 wSb~|u obp&i| ~` O/#]H=Gb Se?عc}d7l GGzxwBEC664jG rIá]YVN^7{vRRcR8"[wV*^'Т_OY.C!| M{V.9Q!dU࣮'~ E?FfoWs^"\z.O4|HM@*bKF]jlfss; & }Kx<];N^[@Z0"h5x$mE&V={ynӉ`h"ToI.Z3WIb#-9}$b(?{Y8zBV\N \=Q:L_q`~Ԏ4R7EcL)姡nFB-%fYZʨt4KkzS7\+6ÂLUS;lXF4f>9VU -=IK݄`8!uص12E^UsTFU.|yYGQʩ@.E)hʅ3QÖT:TÔ㹔^*֭VN_ulCԿBz_xV&bH}j!_yTͅY(6! % j)*VWZ1E>)tȻFl.H ݓ ɫCfBkƙ|uj+9L)O9 TfKP/4RmZV|L!YC ?f+?BXiu)=iO'M vɚC*F+8\ e+f{EP޺̻}T9o`b0{N-lMWY0?q* EJ(~lXƎHު;]ud10KJu5^9Y(*sPb˕?Rqjgͷ8|p{y 'CU Ŭ)G jeejҘʅ#:Xaa8r S&X`}C ?ՔF:]8S1 =qn#DG1 oRfCjd8ǝ\C`72oyME'R:MIW6pԦPrdXNXhmr]P dMqQ; a脯RK=Y(u=q-ЎY"'g&S0!!bR;O #TTZ|R%B$Ggsq!P/MѐЗA㉚&$6Xq[z(6kc9s$nXY}#mb ;ȁeΊ֒2>S+Ի`9US vd悹.u\1L$5ө\0pϟ)SAZ0Nx  t wk{x'?Y[/%Xi]j @tX:1j ȌI՝LH%7 R^~)ShmgyO'z *xֱRyXH8࣢6M"UTt?D^JOp*ꀚL7ϙ6XMf-OSh%w*f3n ?V3REi!t0o Z!ǘ7$eP|njϘX -"m"pjgVX>4^0?z30SmD/xz kj3śx=? B]-pl'tt'upi@q ŧ)uQnb \ڗ0kgV4 vmu%IStF=ӅGǎq}y=n߸ Q'N4S6f!7 O74`#ѸCa'Vd|I>2qRҭKDمJʷ {>!ds(큘rVhrr&/_s Ĉ~pduwRnQR ɼt 2͙Ӈ%f̷ kUoqd0Nxc鉚~4bĻF> ?ULژ%jp?2 E? 75~;keú% N9g=%^mhpEm1Xd\{,.ڝ\M AYih'˜R6ߦ}Īi{b csbƑd8`=QM}Ώ?'6LDIx8qf͝/&n{j/e\;HĞ3KLɤ#zrR֮E8h>XN؏-4>"ei%QYk[1ȫJczIO SιxLxKlR3 I`4:NĻ]DZ^dod7ܸi\1rzS}c<޳PU8}IB[RhӏEh égeYGq³}+( Hy6+uBkyKmnL)deq30vZ]R.T,nE#W5wT`mY<]G "3:i_vgOdR4$'Ii( 0y),qmbq}gU~jIcs~bB&ZތN6xmޕ }n9(~ԕ\+?q^-?C+HLNN'|:N4] 6~? ڱMGYQ(-iU lBGH⻬pb 6#i, Hd?^Yg9zwG7'H0>SQJdő 7xKpAOK)pm`dʈ*#3hs9Uo[mnag=l>rFL8]>_-oWx:bDg"] &/mYZl,a]lIj+s6P xM=q)"$'mqf Hͩ4ɂXZu;/ o%` GR-%tOI~4`<.0q_va\og,AZtnC1KCsDg-cL$|drɦ/^r4\L&٣u!fBEF6=GY~Dsj)-xQ EP`}{u)`#=^Ԋ߷ œ~WdG'D1Iu=yLS]!,$Nwy&yEK}b`X\2k&bϥJq coa,445VM%6=UcdSC՝(!U<,W&3+;Ƞt=5jljC $MAbjtLND(f|չƂ"oDA&F\9^O"3ËaBePC;j_b-ٱ5(t^TWϓ;&*nk;BnbȺuA)aiFF6ym 4Wg]CyehVĿ0S^E6hUXfP;Qd ht&`j3gYd󗼪^,;O8j@_[2-zsg)SUF5{ c|q)̙%\2_ZAE֗!)1֋f\KV"#"|qj/f78гjIcDIwI.݂xiZĈQ=dqRp#BJ{n.']J (&S?Cy0hl$* pa[/ _}zFG%i=t.ڋ wg!̈FZOPWR#MɠOnġ =v.p^[9KGD9I-2}KnMxm˶ԯmד3Uz'u.+lIc1ÓGCŁjH8_9rSz0wo$y/rtO~Dz P"] [&WFͫj.)NnßQ>n ϔCR8} $OA92ͅzm(BV6̭^U[Q5 JJtl[V(aOf&gYiKI P߇nuVt;pف_=A/ɏS% &^x\pO١5:>D /NבVeng=6/{~*_Do9V&>ڰe833,w"N'UBo;Vv ?¦5&y(ObDqV}Yc›˅(x Bʍx hC7bh팾pv{V9r6%D6cS ŰK'D<8Blx 5sJ1l@ F2iSAt>$.>TmIoG.O7IkW"לᰘFp9f[[ EbPN%B#X;g*i8|v "ٜ焯4{@M:Í)݌Ol:a*̟C+ KlPPbM!<iYKpi,E|D3ECW"NQȳBG`w`wo$K*#FShRx􌎌 c{FKQ BW[b_r 0/RKêFpG JP&e3ҨiB혹Nٯ+j ^|)Ĝ,N.{`!͛/ɷ]Pmkdm5 1c'%]8p^oõRk;|Wg ̸`Og<س^$Dc}0@BGֲ. 1xV-Iրy~>V.f7b/\< evLM@m\9ЍvREHu,O715^Ctܲ%$LfZUUiu9Ѐb'͘So]'tS$D21b?cQOt՗8WaJ X; {ĞvƧqc}YGzOK{nkFYfb:.R8J" \cJvXQ (\i#3o]&GXiڳ~^ތ9V{ڔ1 BUv-eЇu|=+ [+ӥꠗOOh;L$ N2P[^|x zG0x2\IP}krY5m($i1Es']uU5VO>eJ4?DVnA&ÁnAw*国ͻ~6kkzAW,V$._ӵI^R~ZJ7(08v3 Vm_9:GN96ڦ󐺎rԩIIXԌx69zK/Ese@+ˡVpw∍:`;L66M$hߜZ{GS~?sB/#Z.9o s]j+C D4Et U**Pfe}~?0Խ5Hku5L¯3S'(xF :+d?>^D.|茅cb|{ԩЈ ad<`TGF%QQ{.iV@j}w, NMק@ykM>;ҭ<8)5fN-/hM@ܧ/!V𝾿+mXs> =o@N%T7beQҗImfEqr[@̐ ac)Xpކ2qfK%\#_ K㙒22 pIµ4=NYrܤNHq 6K>*UA/ u;2]|٩n3_mOF8܂,DOvUYľ0d!w}0$tH}0*uqce3I7C'y%r ۩)¹IKkwwٰc}Ŀ\\p#8^PWz/AF8|O'_z> 7;^.UPobRHSڹ 5\h:ByB0sK86E3=K!{`ԉf EpvlkG:Og=\d9f\g*ag}7VTsOu?mcq5vѬޛC-9I6tSv-55\%O>Jk+({czKbbVt 6D3'i߶2a>kAkd.7=OK #ۘ  Ή )y1>P0Mƈ*[ ˾{̮Лǿ3܈s_RLl qeeCz:*G`m%]ܹaRN6;珸U~6G75b/6t':%t7iM<7{50ƥ{po,w29eXhݨJRV%khAp\a] EG@P8:- }LU3V'P<=U>XU QgUP*),i)&8{-7 $ڭOtH_+pGR;<u@(O^;r9F4Fj YT6Z ~ӹ0] 2(ˍzU`MQcRsnO,ʥh &xRUy_Y4IH*|8/NФ{+MyV4JQ?Ψ0Ym'TW?p(55g(yC >gK7#)L}Tgyc*kώbUvB^sd52A.j{5"JojԷhU=?vu>ìd-*Ayp㌩,4FC;G P昂/51GM5 2Y5q!6xwxDAa =JڡyN[{Odjܶ*aȨeU1bCyUfqC#~^zxݯn^v'G֭ g|Ճ߉X(44T0wWPd]ijgU{nZߧԦ.;_2pXG\So!SiDPˠ93ZojB LT2q*X7 Ga7POCWVi!mL"sߤ 1HaQ⢤} F{3Z#?v=)fgtRA+~Q=@paF|gs͵!dWU57 [g 2ߏE0v\+b# Rd tcFMgӯSV\.ظZEAge}9%iک#wxg"a~7*lά(vkQ\-+~_TnjyZUp߳B`[h6gڋ`(Qі aDŰád"җ3M8<Ϙm0\Nf#8Lq)K30; ETګN{v7=CVW/(ۣӆ̅騰)'s+Grz=x?$@5MA&"ca"Y,{Պ"_6H sBS{_ᓖDaͤ'>T5wBAI7K`L!=#mk2D9*(ޑF,Z^ `WU޼c/F^kD7eNZN!݈45?EL&3at!i ౸w&lvQ Ou뚴Qh~ #qe-&NQM\hzB% a.d%WsZll{ -d;Fa1=1"V&=+T2/6JF4]8 y\c2<`ܡ\~4WWhkʾMI!\#+.C=򽈙c]w@Ѱ 4!xQdC:zdP 2d  b7@NUcEy9@F..½UmaО@fuGUW&y75 ,S&S 0*0@vdz0O 1 cA#b2vo7g4 }s_j&zNIF%& wXtgwH@]>zDghCܓp2ɀCxeBA%cT^\sTα~L6K_n&P[qws'eOŖno.mB(`ҚNGщ7HQI>VZ:Xl,]swsRrX$aT< )|wMyənUsZ10K671S15lDrIE{I$&d@m1W)xBJoPI9D}z&qoNd Fcd!"Ki(`>1;AW(_=zo.kE̓c-0p gx-yq^0z^-XCu^ ]27&jv6ȑ)T ׋A[qMx[3q,-i#1[(3r+Je RMS(%+߀ a}[/d+]$8Eã1/zį%U=4{{I-9)K*_~m"6ݬ/bC̅]g(k ;TaJ40CQZke[E-4A/*ysK='lLbO񏉔cE YYéι`9~ʑpk!nW8}3do o{o{h!T< K]Ѻ:" S6Qw$& T뤘J6]]5T_ c1kDTnUvxΠahX^\礴E."i}!e)F<1 ɟw2 G_ $aAjO&Ck][8^BEWt9ʫpm~I:dԸWRi0dm{Aqg/4ÔYx# ұqx$P9Ss}_."ga4ލ77?A?+ +\}vxFeX?z#}FTCߑnZ tn:_%rcf\W R)cÅO0n>6BI19r ɩ-"6L8LHb,dQξ ? /S%I8*B3MQIb#T?:Hj]jY8dKiVq$y2ӤLsçؘxsM"ǐ0ƿlH@pXlƏگ,Q#Äݟ:(Ci]:1~&Wѕ)[@d=^I4 쇳4OK/HeALQԳ՚o_X`/g!<փ(җ+;^ P@59MnHf`jD& W=4<>?w[ 'in\jT'ŇT'7BZJ\֦WjRz EzmfDN+/XeoKT.rC}>KIECK7fm$ H F7D` Z]FVQ@$^#9x.ܾ]eH$$.NL1Yi+S]i&A]?K 㽸I]=cs8A,1VMA60vrѥ\f 6DU?Ƭ5nKK N&?,bGXU_CHLGxi ɑJmrVI|n٣* &4T_X+LzU6@r4E)/6Zs`Z ~[DE`sIڥ,aVmq?;#F!4&*G} -L9:߹?XVT. 94qS*μIpL? ]L2^h.b@8륗db4ڪe62hZ%?v6ŮL-0i":z6ڋ.En8IoUE1Fp |CLUlKK䁒c~iqLԹw@麜UUn]Ks}xsfa9^7ﵘz H[/Yu nrfY֌_;"̔*wF]ȱ[_c/(JTj~^ydAg- ¤=(4hʇ#mП$m‡ːlҩ5G[F݁5_HRg R1]U[1 a%OdhK>==:P.琑.%$ڽj|=- xZ@MK$UyS]XkTԞDL1WST. 59#^i%f)oQ.TSǩq!lj* #~H-' AE.߳MH/ g:LLM%ΟSOVfr,$?a]q]rPF .(7G$<^ щ.,|S #Ugӹ]"-O: rfh5 isn6U;ĨSZCpt +6M"7ih}0Ur&I6u1"G ER[7* mL Q4xfmi;&p ,KY_(s yjoXϡp/9]|X24SEM6L6t(*TGOúD[;I/KUZ殗XNr\%!Q%x6 ,yƏg Bre(MXQ$gZFb gLLN+{sIJ6[< O}g'4 U @[d[0HƔ{Zc@5mVCgz.j6Kz6^6msqW ˝78RH b֣5l|J=*<E+Rgp$Tذ:J@z"K=DVw3yy-k"#O M~-Fi +@{~&'UՊzg'{)SAC!H;[%.s-q;2]8v$.egpxn|zإUo/c2_3(=t'ޖpK۷l>Q.|o1$S2tDqDmWwuuqD)_tMqwɀò 7Xqmg^fdW/lAdw{): 9?3.'$3{ʎo E]ORNlIx0_?q8IĽlN0`+.$3k ͸*K13EtTvk 'Y(GC?15 :goEe]^1~J IzFBpCgL ԙ'A,Vf>հxDjN ,$.%,)``)qf>dZQF~Nq :/Mٰ'G E@?b3#tY%@nHAjc d24w#ZRme-.b:lUmcA_WuëԊڞ5=oصSEyg6؍ U`;ZJ̖O]_c_X,6A'@$0vq|YQ~3?W n0aTs!UMGZejظ%oyY6G’FyWԋ/`}SzR͐}(ta!loROu]5ntaKkQRĨ+^Mk2#["%q;u4 cD-cEEdR?&xU^Vm>oR V)nsd&wy8!Q9>أ0Z\uӃr&BO1{=9K8f3Ė?^>1}X]HP6] uu:T'o/eg[HR/54G/5tD<|IHQ͢u?q[x(ڗ'}Oe`BX6>jע!F8vԼ-kOh}޶u zuIF}މl&s +哸TnρCc٧MJ? "ӻ؝ʼ䤜sg -o(jߌ`;zM:c#rs` a—Mo/=yƱϜI}k^;ѥK\Gm/ߤבjo}U$EL45ӮmT0˖Q=mcqs~"EC!P_t323Zȍ%K6HR+6ԕP;/ کU&c~ 5Õy$}]0y͙5[O?֔@cJx-vhq}7R7Dp*FWG3YG,mIVLDW[6gz{> #~M]pzlB kuz"X6`g.y/`~ 4)w(~'6WWeLy>< #*o7-*@ 3[gRꗋAhU:ob92x ]sHrWvS\mG?ϳFI%;4rD(9 r(Wč>X([vCtUʅ'J~؍C2)Řkjk?,[щλ7!;JݮU@КEE.$!:ҦqHf3"nuk, h,#5K:HɫXD`J!>U38v׌Z513= N;כwq0^ ۮg{~ALc'Vcäi:/* =$OVafk{ -?+w!|X#ew;ƇXQa.CjQ" cH*E>_$Q!\hXwt1)ǡZT 4{Ӏ[}=,jLزP]|8si oh+٨RA&)N 8jkQ\\#O@ q:G~8n³di ac\whT]Э6XqӟJO>??L['“΅Im a]VfZ`\SjEL!RKql1h|: ( 3)~þb q" O+Me,k1YhvO[-ez /8 c!TOy$NND KD녇ձ!?e$k<[1`i@7M!&]K<-1X3eRbr-h1kk5B槍pҏmhH{ႌ-_aXSZ0MMR"Œ|"%&qRU UA}CE1N0ݚ|aںHMew]f6^cBoK>_VǂBtUd䈩E\IS=3qjB!E J z7ts gA;E7ɿXH=o¡+1 : ]%un,QG; )JpaV(ݧQۮ([W_F/ӵup9I+AJm`5Bw疂A-ɜRٽ~\b| EU [CBBlxZY+|+XOwkvǞZiS+j_q`dG=jy<ʖ".XG!Ѵ⡗ԑy V4gZe18$wD9: WF,\ Sƈ>R!p-pSM|4U$hՉM2 a(˩v9m$Ä92 ȚŸGU݊U}(S_Ȼvyǿm<>kְxDQLN:J\e/ˆ, Bi[Z^Kkmz}& lU'Әͱ  /S]Xժ/8FWh:@ ]*JESu>?TkS ns:oll/YYC`=qms;8j?o7<+[fhqS酁q=!L\ȦO2_E(bqՃknMGG\{qcim@Gcrf ¡a/ׄґvl[+&mmrdo68ݓN1RAHjTɃ5nX5t Gp0Д146#O<Ĝ.7 m֘[$X5·$Yoħ41_CXSH=ݚ1 ㄛ( ew_\B.gk~:=`4kzpShn'1 ɸMfnRI{D ]L9|OnDLJC+j@{O'Y3,Xz.钮gNQ d(K,e*S=x^|󯺏gٲa{TpbA*7G'Ek5&xC)7ߴDazA y7Ϙ<+RR؈ Y4WbJ~~hG$K/hϵB-S<'VMXM ; RxV+i')-*^<tAIhw< [[+gVQͣ%-te/lo6C8/ygۅgKͫC ˳lI r4R߰KY>2vQr<' gw<+IQi Л)x/[Y'X> G(Mduuu9QF nLX,CIP(&l齪 iUwٌBJцu"82{}":P⒁OԔ_YZU+~nz||Ď*X$!u12JR%| ;|5(g"&sZŸ#~cLdtA(ԫ%J7f=?6HE!lO#O*^C̀pouONwPz{k[@SO,vǀ-G0<ƻW7 Q$P''RRbf\>iXOػy J ]4@-z ŝ8kK8*w o 1/G4`Ӏ[g2ٜՐ~&ZuFFEt 4)*Oӑw%exnqJA q!`Aeά#nJ(q]=yn(ORsD u*|)=RQ:? 堲b=Bun1q|GE޿fldzvq-4H4`~eɛ4*lly!$pK껉YmUoq`D%5}u`.hӤTK|4Zov.a@yiFfu4 !{ێ0d ; I khT(m(#C/FcV+z =aʥ&uSwW&!Om-$سtFxo'͝RWkLs^22.x@}!qB{+X/gh9b$*$: Q2ٹ.)PSк@{ݛ:#1م-¢6@#J**w!|`DkLav:KM)wz.' >~/Qh׌zvj;oyTj{+!uDki.1 ZH*_|GnɽMglJs>( *;]|'ALN3>%,<}y<[!iifWD+ԣwk:,DjM6 4GbV>c^rRm.Km#7tA5fvC:@=KOS7ɀR!k1;osLэ 56RjkDV Y2TBPk>H\6UmD~ NW0PȂOiG/w$ɐͫ0lѦfQvM9:nGH <}LM@v{oT#׉,hB9rpɶl 'Ti<3'AS D26u5gҿfi饀|uiEq;}Y 4;y]?ϓ#"8]?S&!%>7Ft.qyВ˫ٲז ۇAR=}~xNѴ-MiXҬΈ'[]_^:g|-J+lDkT Ben{ybf>!wk6o=ag]OXNq5PZ_,Wޭ>ڱ}|4RB\\Ogc*)d59e0](^᳏Ja|,'O+N[):}OX߲[edzgS4B!mWD pl(ԟKStp@_3Ѳ=<b# ϖb8鱠 8|Y{Ag[@&=5Qr):(5s*9-`©\Vo4MQ+酃Te{_P%4BͣΓmMzE4mv⛣k?;G&ԁ;m^eft-զG2`=ؑp1ύ=E;i+ZV2 ;J3h2s'2p `B,/p> 5: 9=u(u3Q:/H7tjJ2h^}JB$$D(N V=cϷuohj(< 9Gzwj !i짼JNpqqCRh1VBDuİX9g y5 R#JLV *K586:L2H$|b 6%r~3{5:{ +}~4$hCo-f_w.۪KJ%(- ح`E@9֕[CZH5cvYY'I o^5qv|r("ҙ&S02 ˁCG߃Ga}?[ȲR{6^f-,B[Z&0 "Zߴʭ9>;`zbbvi}#SյbVTi~O34-uFwIvlDKͺ ֯Ft|}.\Arr*g+$iW.:J21QH{2&M Z; 9rY uu;tQ4`.ҽR>zDGρNRbz=7+<}>¤i|Z.se8Gqʐ=p,tr_>O]b=ó e,Ik%MURvp<@e:bQli"m\ ?Re]^a?A(_S^s̷69x:C<[0 H`b|z*'݆u=""~ paEuQw_R*',t틮7pJE~'HP݌7UK긄  .ѧ_J7P@_l'539.ic݁.LR&:S{/(4݅G+J y)S&QvO (Plի:P<_6Fh}nv7v`6], qu?7L o;\+߳A|<ɾ~B ^Ie*Rov=[=3)Umc0 ;STK~Դ~Vk [9B$+4NW|"%4]|/<ӧ ; SQ]xt #Hx?{/ 33S~#U;1;ÅKu1r? ˞A<Վ5'R+V%}&@Ŝ=9.^@P]Fg-4vE`Shk':.$qI-(Pssy%cB.%zoϵQIhY>5&:ì8 ¢EI>'h8!٤,cPx&]'>Y;0:{BJ?v&)j\AAOk\I&+Xl m;_˅S N\31Gw@TI: Zviwnіf㽟:3C8]qq9;㹎tHE1<rؼǻ D *P,ݾYÂ1 z#Iq`zeyWiF1贳(ux8% YDTKe9UzBI\Ꭓ0Dp"y;+_UMbT}#Lhs&" T 9'ܔTKM9hu_mHaG)Jhfi*b+0qcZ7pֆJ-)lnfOODbG{-85ń8ÕEpxn8{IRoUx7 c"O.+j!jQ;CDńRخdWˮ c΋0d51ho^Deε05憞Ý: xRׇ~sZe$sA㦹gñ6fԣ=;I~g+~u/313)X'4؍Y޷"+)BPFKFCm~K,2Da tAOM1#-X^~afm \ 6 $`Oq#h>F^H{'GGݩRH(8VrLҌzx2G:4cR>%hgWk0k nJA\ >:Xi􇖅W/)z<(ĆB^Ux䃽Vzn'jh5u ,vb^ ;~&q=ü/&;A||[[rK86PҩCDpxsi_h26(2tpߏ)qbju$JNyrR1Pc mkkmr#0+Wn^Syk"kMut>|g_z{ԩvLzFM n̡iv͗,Y?FKXhY# [XK(JطJ~tY"|'oiJ{΁E_g"L<aT{վBB&`*']DeJX< I{ "u.Jon@#V4^k"qw6)@%t§]s8EIg"D[k-7'r8٧+y`4@M bvՕ)o 'Q7).ÕS43,q]dAIyf-@tYa @Zi"1Ƕ$|ۍ^ܸܽW@HǕ 籕0Î!K泪TOd"cw"z3{kPr5!қ+ѡ)LSuz킻Q}zfu8p {nVATaX'n622%XO/UgG'KJ 钠&"F gS#(8ۍM/u `{W M3WUi!Z;b0=8^R}he>زo+a_˙>N#ʽve!ٺQV `0l9?ZJd#٩p\Сe|cƔ8SFJ.?±"@[CF}쐢TvfF`8m̦O^BYH5y }煏8qnKX9IrX׈-9yA]u1OUX"tfX@5֮OnmLl+M35?G/K - Pffrj牫*sX c}+Ut>Ĝ6|}"Hhm4AXy ftAE+^wHi96dLq#v9‹?΀H&'*}/d *C˚$BdrLy,ryUMK@k#y~wAQ%-ItUxZd\!w-Lu&klP9xz#W{vaDU^釱[,; gBy Pj_xgk_m^N'XyVހ:MdNydMsәoxg6U|{=x1FRl+tZV,jg(7uX ,((FU Wߒq,Gڍ**/U2}m8.[+;Y2y֙Nm\F>CXgD1+z~=io31؃P‚ŤeA2Xɝ:V{BE6_SsLeO샇at$ʶ#w=fem# W8 pIr>z%ԻůڢR@LAuY7d4buH/l;LZ|=lĨUĩYK!,ƘNMIXӷdTSldhըDy_c^Նȍ aV*\gw^X _k)/ohS@N$r3p{?қv{Ih08#jp2ɨҕnPI3w/xeTXFg`nq{=VU9.ctUB!X.Uy~r]y819?x$K13nXg DU`wj4[`;^Lc=]N&ܪ6 >+osX{#Yut ڸafSrmր߫Q%HdnZrzqjy V̛񢣳x j_={:Z9g)؛G Ku$[u JګkwK:JbU uN-y>UCnv vjfV_'Kn:i@O:`maEL\GcȞ9C(&+U$az X. -0*\hy :=m2I4LmLZʫKL0!0%2\.6[)*\Em=Si 4_sNbn \@R͸)q I?/C$ =#t<\rE;?)v{B|`_?Ǖ6҇2dLRֺm7&rQl,sn> [c8(Pnn_BY*ēc`[:݅efe1?SN uJSJl?ZZdZ-!Lj"?;w<5pwyac]_.ߤx#gV=h[=5jxk]XrLeox^!=g mѼG'.7m-&TYS3R p O!2ycILE|38DI G {k~ qx' 6Nwo Uz.es ~4"}I1`уbjS#h[]8 @XƆ+j0$yjL_[lt!|Y.QǿOȪ]#锸@.BEBq헼ù(IĶV*ƣ$`+Dt,T7T.y H 'UH2kML0'fu B~Y Y@ө~LE :J,\P.VYP'r\cwjY u睚#hF!nFGGiM{EӼ͕pc9&Ek2dAtJO߂ @+a[\P`#hVzj k)"p[4fSPgs"“(t(z uc 4 OjiϷRKp1JSYJ'Ipm(߯E=aŇsWjLd{鑛/({#+ŬI<븨T0E${:vHTBFQa5g:-Y: 2m0Ȩ$npᦰA}$#C3QXrԎ#)틡L8yYj63|Qa^ڦ ѯ$^JɁoC %,lURYy6ˏd@Autdǃ;^/\@ՑKpOje0-J^)q~9{̔Qf.frk} P6bx@I R )lE;8X_f1l5:ȄD)Wq=A㘦 Ezqc]hgN_pqf$ P|B&(֥Guf̎a\3˧P{@:}JR2A&O "##NAMA d|fh 8.d{-9pzAߙGf_JbV8U4Tb4Q dcD0gPT,ZmК%nUc[7JrQΞ˷hh^5d ?8-tH^桷r*Тa%&9ϊ[N6T(J5ڙq.礝y5nO!bBV~n[ŖPlPJl;6)0Hp]&Msph1$+(ݎz{4[J8wOtNpd~0 yxIF`5'Gn S`';ܰHgBjA38M㉫5T{%,m`H^w$Bcp† PPYfϙ.{(  *JQߪ8.ӷ͛X8RJqKYyi%:Y:ߕs7pUk}6د$wf['ˆaH1µ[mxq[1OH]|ZzUqeRL@=VL4m:h-V%ᚚ!k+J+V&~/1kr!tMHYKV'GѦSЗN'?g֋ h% 2@v/@-{;%!N?^*é}>V`m5s3@Noߋِxj_;* i<#gh1Mp|eE+7VgWS8Ԃ5l!(y}#(x+z䘏3K\c~_ٹw([T1X{k+4rS2RN}Z;R%ΊH`At `LjR}x/)?q}%m4̗gqF>ca{ˣ@n{lsewp$h@9(yķ9KaƂM(؁:Ggr>B]wSfWiG#ź#$9 XTȆ~vܒҪݞPg`C2[- /h=ORU\S#Ί|vPk}PtG6 5'E ! kjFݘmT+hfdACQ;5m#pǍB6܏(.Xom9F&4EeT*/7aZ.tlEjOtTr^F0EJ:r*Bl+9ʍq M۪c8Ȍwm{h,S#fdR:&/TLۦFpnWx/K|!)a1*2Qm-G*Mw[j󼸔h*7tI"jLecgPhSC1Hl"GB F־Z=6[iT=O37Y_'5kH@e!G0\pAxp}G' ۂ:..)9 /3.Y} خ0gL?Z:v=̩}3D,3z>gRd%2]\NO%T-&ySjN<` ,|u)tr.8؁6;&<fBe rz#v z}]"gf,g1{bI<mcd!WKWJ`O<؊`S*3tKݩBZ<.aaR |Ԋ9K oaJ6\bT_>G>imrfT6ccN˰TJ⩣Cց+" VK/; 9؊ĭԗ>j?scvN [ߨЂ ;ǟ>D!h[9MҾ4&F<;qrAj+8t3Ҭ7-lI0 t|$~L6붥(H_>{),y%Փ$zJK#@WR ukDo+rMX@6_vLXBȫ*aȝ/*M_q6ufI0U }A5Ts#-&h]7}C8i*˜/4/zEwMY3<q=@~{#FaIYo૰hŢ)_9@hJSsyGWBPz.QD 7YNOkg^4JK"ZJڽDJ. ȤNl˕@sخn>'d5*k윦=9+jh3@`7yRY$j+g?!00J.'îī][/U#(CFx/SU{Ek#̭.mh#S[9ײBS,:$p@lP) Z>JyVߣmC9fXB0Y]q]a“n͸}JUV1HcY Ә('uCjGm^e]Poi~~aQfb!TLY= 'QZ'Ny .>wprqyo 4]lva: &.6,`(LA޼Iw~.#_bDd^KBvi SU|qEYOl?8CE3nꩳ^S~4Fb JBtK'2+uleNlW}s=ܕNce0sb[he_oze;q` ra݄Ԕ {:Z/$\ /|tXwMk 1)B. θxG|.zG |B#+":&Cb"t[6m.s=Fp:& "@1@{bb#Hh5?#?:Sv>Hfk#IW'ω BunYQJT10L )|pt`0x2n5BPC=!Ysv )W}jM"'waMmAbC e~DԺ.@ (f#t{@ǭLqբ#^-#f/[^:ie|1za.n|~~~>;H9H0Cf]#lGTw${vqUQIԃx|a{DJ۹N Ͻ̺)`Ou"CL' BUeVO^?(.@wA*ln?gF;[[l=w8rA4΍ag81tr+sEK}m^_&;ka帱Zv}2kVŖ(H HtF7EtVu]^vzո>Pw'T߹,SVS54bX($+ \F sɒwXTW@͜5?ׯ?%&8Y`@$w*r?]T#Cï9Hl@Mhk}V7n Op ꣒A,]WJ3R' g5Pt7HǕB%(%h3t?c0c4q#wc L_T$ jbHmά8-g:[Ex_TN 7}WHUiܘQ uTw# rW<_5hE WMH7 ?< y~ CM}h .ŒId=m #FU3 +xy@2m0voZ1O(1ʾ?z4Ύ)K,> %p`w["7e]iU Ne-! R#Z7SH!^_%!I5Rn~Շ6]Ȓڦy`I6O=b3 xJY{a<H9.賂־][fbִkxky g\Q`m\{/̻Ce JA¢/q8GLXBUR CtwLɂGb r8kHćQvBQѽЎ'F ^}:-q Jс :N>!P>3]Su_^=>2=T_ݵ!Kzny4 j r)7`JZyZE,@M|޺L0l0Qk=uuנt#0+dQIf¦)H+k=nl&0Wp܊tuwl"R)%_$(T++k\3ZRAJK\Q)GhK|$f,FSЍ'ӓ1^RF["m 3 c̄6&ԎR5i RZc${n16ɨO&JWKEa=&`|Ƈt\O 26pNPX!,~t`Oxz~JL0HL u3R1uY>m3PZ1HP9}T ›my4Im&I攎:53I@8W팔Y@ ǝp*~ӜUcYӗFѾcemQK6de-Ym( "/F *J}HՍ$_KޭCZ4P Wq1S4<5TSuxY6Jz-/9~`nAf[w\v.Qh!'?*q7RwPyTbjE1֣-*(~.l;2qānN[PZ`ԣEFc?OF>dq.B@f/]Xbk8Um#͓Ee^o-N–5-v= Kٗ'`.>񢄰-c'Gy8אO;G 2v-FL"lG~!Oݼlc^tӟfGap@m,3q_r'5C9a5{~di^+ uL!rB+@%ܰϞ78,mк0H_|la^.%a$[[|Qm5CL_r Gtz"K3i3E_F g$ Zdm rzB*K]w2bEGzb ]4q9G;]&),G#N>OD3X;^nt2vgYH#| {Vuը/H6- ̒Skct:h׭X'}^+{!klF(7NC'56uڤgHӜ; ֮ 7hD o?$>*|BIZR4SU2Opt>ݢNJ1-Mk8'-Y}BSA_rTw#ahUt: িOUĸtݰZ'+BpEsoJm6@A. YWyFDhlm|Fua&l:4K~DB5r[%7lϸn=2yv(G4j;亥׀ʰ?Ӛ,4몊^05|M"WķmaC3\@IgRbH!-4:nN!ϮK0^O|B6dKIyyzi^>Zݨ+a:GkgX?QBȍ0~\TAzovl}Ɨ3}8楾=.Fwg\x[6)(r<͠ʼĸ|Wvȋ{lbtvQ`d4l:uao߃mfwVO>jGHyʯbr`-Yv!/)ݓ)ڭis" TO7XovoW!ٛ-<P3M}EY+]/;*$IYE7TUW^l ^1O1n&du%\GЬȭ[ҹ%eQ-c. U8 Ԛ "g!^I0(Fy6rwѾD֘9eBf4;>'tj_q>D_&F@GK0/ l )bLNE VbPP2{(IC]XϸjĹ}+(-69R>ޕ;ѥaiRWrP\)BǿZ: .8ZWp=*\^ykJ}PC2So]R X^5zWj X'^ΦL ; peD]k",*.d|b¿DL۫I"saã%o%dй[,Y%ģ }{ .+ ՙzτΩ3 H\Tryy F;mX݂9*΋܌ xyt*%WQa|Wψg=jZpWw/=~kV[ߦ^G%aá;>=Jr2!J#+'u5VD? qI "}?Z~싖v՘fWOkTs?,]#Vãrɟ*6M%VJMf>gyF'͏Y-S>uǀВ>4~* R7 G⭧}ذ:zdjY %1N^+FtOyپ띤 INWg,2 Um |Hk;bUHTsZXFnC)vӰJ*Ѯp2i)77R{P"\qw Rl[>ܙDet+> DJZ'KٮG^aƛ,D({1kk ~E [~oQUa|[Kx]^ۤzfaϹIF+. ڗ_'>5an0c`!S‡(-JȎQ(۵ODc=8Mc j2sxܩK#aVi)IwHȓN/`ȐO] E%f8h&!/d1=ws3/\{H}#{2W2XB.0ENgn²a?+> tqe8-?0q&ة%*䀐We?>)=.AI,Y뜝/5Y &tvJYkM=+=Pf 2?(g3q~ /VKul1{ŘE%@wC :3"> zqx#E Zb|DW@L<b(u`iS=Edx ;JM\@ċ=ob&'=GvDq(*y0:3W}e]V3 χSҪtCY&x?9lŸ,&N1'5SʜZwg pW8 eEލmll~A[K|r&8m`.FƘ~w>4,ż?c7XrY@9=!ϋ>1E`,X3r-yR$ (A{&FSW8YjGHXB᪌)/L& d)^W*z/Z~$ä{q 2miitbNsP`S&,/+2xIOBS'_}h ̓!5KbԕV&^0񌇖JfsZk$a4_L 6aZ/dNTk-:]g=to/[T톌j warYo35k5bR'g,&dxY_T31Y.F+T %Z2Ԭpu0T>Ҿ߃!LfCTq;Z#ʟzpljO!'Hp_Tƽ@K"k_#n|o h E}$o&CέeuJ'bk,O&Z }0mP6V/$bB/o~k}PO41'4c05cCS*"?e^_ j!y4fM6:XIݷk0.%zKinv׸`c.}XS}]AA[Ld]yOi8ƶM\ʊtˤơN jW&!_.U~S^_<[\t'unT0L8T5Vof}!|N+ymY}j*V]`p0{JqܳDsEQ4u ƾWk 6>F2l /@ Ig&|,( Oanˤ\=J&_;a"N58ؒgn71(a}ycw|(w@ίXOk*OD<'?#3SY9 $ʭ gHEYy3Zz|LdDEj]B)҃w _@vB;< K(4Y{g0ߐ;abP@ Uĭqmή4k2,$k,E]n23Uv|bvdkz-C[u?#t\{è l7}m]v..GW-ɵ'J7sMW1oVu%&U.}6^pJ'nޝ<*/ܯZd'ϐ )LM<4#Fre50ں8$4{rU'$<;#v4Zf8Cǡs'~`Z!A_sN9!4W~GvQCEDKmr޹}qGt3$^c;B+^Gm{ܵe(+BX .g6XOq3τ/m@[X ' ˽Zθfwc͉{&kH/e, 6E1iȂ|g{MW KĶgBI;GUNp̍G.DJ|Õ <­,A!+$]K 0LF],dITH:ř>0 Y>CooLUcPZ`*p_OkD3_TeDŧw@ɫJ/YT7]拇o:d fRN"!6_a3F3 LSJÍؚ{;qύ7g㮲b#~KZCpV@4!E(.BMY7mtx8X,'h+ZÌ8>/$8 ?*6nԽ>>= l]?yC#HO)dfv Y>oPmʎp(2&u$/Pn)k-9眀T$$HK=< ))+]_a4|1b pݕjh~ʘI(<$)%)=:`Ȗvɓ8Eh#tlο ]嵩+c7g5<>  pv";'#NJN(7]G>FگoO+Iq&?fEWK5&{t'l!+/5ŃK"4Dȡx'/vw?3Fo.PpXf؇r9IIr&i 5W++ ]\OGjj6Y IfSSDئ^4f>Ɋb;qI_ֈ:OkGD9RE.LW43J b+IlpHLxtςQ׻ݏ`KפTKog1X4*Q ^WcW2|oP,il ttȷfD$ |<<-ti#[0l^u Rܲ48Rd)Esz'WTZۑxY &?ow)͟\/?͔8'xH,=<8_@#mq2p:eMf|s ۊ<_t&ȉSWS}s[<9GfnR ,3C3> #B' S[V̜?K9N{^+ 7)0nq.v9o9pѢ3.B`DiI U|+֫k d uT@=hWucwzCsĺ FN)r-j1\Mw?FELXzsL\˜w0'X7H&G܊1նx-Թ(& :fvtKH@GR`吾U`F=Hv݆0 AaPHE󠥩f\ZٮEߵBe;I-J}8_=wOӰc770qy}qezG$,d,x%KCqvQf52Kg1%J|Z6=~"0HA`nƭl#Qw!.jcS)RgLKVA˅Tq)BԶܟR#H0qP-UIUAqiigsgYT!+Fl?ɕq\⠽6u߳#Bemt˓n5"?H)Ue~0ٷe6Z vn~#|tNwXǒ{ h.¶*P N9P&.SZ_v۞6x^ũEC~x\$i/y}5|cZrXsOy;_3.$4ZxS~}V~Gd>׿OoMYؙ>5@1pP pkN'7.SQ KAo $HouF:ƺ*y(2$b8TK5r"yڛҖ{:Noh2tu ofC=ѡUOIͶ*mMvx] Wwt+hXERn>xRtt$FJZv~7d 4q(2wCӭ&k -: ="'KٰI=8qO3faܘW|+z 7H9vDoT|~ӑ]"p(IÛS]tsSCyKrz#-)1`e4/Lӵ{fSBݎ|dY݇؝&蓯.\b݄&bQ_1!Gq/mPx́vz@N.Y'ӧ0i6i:i1C&s5'a5@U켊B5\/V%.(7 %Uf'>+v[ ЅBP-?*>V`(aD 儋F>MId^U 5! jMX0wn`7dφ; np"ȵףxLqMve3Wvcê?QDRp Rnt h{)A2V7 $"=K49ׅA uUEDD|j9B>B e1QUDX`|+k}-gE:Z-2πǦ&Feo#(Ôu<>B.>9[@-h( 3W*B^=7TeN THo$}}RlhWȚ%@CZrh爐o:yfʣ^Z4 15}kNt}wʨ*csv֣VT9H0 ]蜷22܄G!BY T$MnJbE^ZcBJl']'1YZJFQA 2ϊ1SǍ9Mk_ug4,\877P9h,/s1㉪JʯI}ܯ u kQT ?Xwo=Eg ?k[_O>1ށbC=ڇitf̧ a_?jHq $2h8n+,K礤(@d6E}\oznCd%rvxh@ i.VD`uI*~D[[zT݌ K~c˅ .㒣4nZa=ށg=FyNT_MEgX<'&MG+$U.hM &j/"Z|"* ϧSXEN%=q~#v.kԱb%RkO[NK $hc;S&~iB.1{]"~05~<3',#n5`/&q| BjQe^ZTvT)A|=yƣ7y`gt@@`i^ln&|87Zr)J[(ʓ&P{7s=W‘x"6s4z)KvjXRa0Q{X^=.3f1Er{Keσ()=` aj4V1~ ^eΏoguQHZo*/Ԧ0IgQv< jp\1 V[a#&|*.21f+Zp"l'd) 3$-953>#<ϭ?H6u_(_^Y췜[ѠFYœY2c ޓA ,tpG -Ҙa_sW.$68T=O잫%l`lBj^ȷE֥|Ӫ58r*-<]R@Cȗh+um4p?~سPj?sWW̃4m_zG t%lA嵭<^R5l,i :ayiZD.7>HHDM9.vYNbD<7q3JB-6 B^*f!?# 0vٖ.&xVM44p3ʺ\S0ɋQa֤K*+'siJs E? }QDGol+O$A…ߤ9+ѽtPi)} %c]Xamm|sZLrEy&'W:%´+ƞRqjжP%ï W%F7X.TtLWL0<$Jռ3rׇrav{wYQOa_|aKso ZS$9'|ȓn'FKyy0xُRRvevګ$L0pʰQUP;e 0ho^ImΪ&*`j5VMd-.1x7gcW"Pޤϒf4ɫN2v3ۈ FmD jB,D*/7?z !\gT\1luT )\*X5`ӌ;J7]_s3=Yk,AG%]WD&/&G gtƍmSAqg@EgTg_-+$ƀ/EA10Dqy.zHa_ iOܤSU#v3zDUTZWt(wd9 Q@9CBIk:5)Ng1T<UO0ˈ^ gV+/v n !{rZҙP@\>?6}nGChà++=ܫd;H-"Mm-bd)K.$N2^ f5;TM ([n={W-hXCΗ[A cˮتh~ F#[V'@^#~˽.dK]XW#\cn LԶ .CkE; ޷Y<|>%0&UURZ)7c@zCS/W?pm)HU|Ƹbl?n9ʺ>N9uxe"Ko.Mijb\_Y(ų#CR*l2KlQL0F!wRŁ ^Sub7Ľu9w2eB܍Zta0$dH4UoE-&$goYbc!ҎRD1N)ﺗ\O?dy B 3{Pb)MHAq)tQ,Xxn_mF"w~KfgEU]OP n_},Mc!uDN3dP Q9tQm.irJA!ߣv As4QYKV cS?c+1*E\wVH*o?xFޠ-\AAR4 B|=Y*WҁCw" 槄ДQ]X7)[ȄX./jJ&STt%ltb1h{ٯ}ub3#@k8 f`JT1s;3a9rυwDZ]sSo p{'ϭ۵TjvH!Uxb(hp@K1}xCI6 _,n^Xp%&1}Q{OUDܴ  0af|(bOc/ nU2e~}C+{V=3f}M<0{K 3Jޗv `__Hy3!ei>E_ &]dˀGW볟,v1ٯb ui ϏeX`=õi34̦2즎*Ɗ#[|/'E>9? . 4e2@eQ"fzA_($4}+ S$㺋't`o?QR F-w{2 v3k8JbŎ'Skm7 Ii-?k0sON*ӔY!KXSє ʛ;SY#`gѶ`B迉}魏Dݻv 2RqJczHzAgid}q߿(5j,YiѡO3EbAJOdnQ]avf;>wL?gN&c>lxƜÍV7k'o KL!CbYoswkǭ),I W`8Ϻ: OR/EΗHoA#LR`uBe:\#G+E<K Jw9Z/.;}ɓѿ zE㳨vH4y7sa_p$)nWӑ+9&Ry;uSH`~@Xl.ђ]{(4m=6 MF%|3b rM uT q)Nme :if̞[ ezfHӇ DFpbߓ:[הEI@9Ϳio-q])Bíteg"Л xLmpe:EgsaB%4 \߭\WH&RͰdߘgL#FѦD.;Zٚ}|ZV>㞼y؈kWmyX_ 6@&)l|oЫ*7Py(8d۷I Cs[V3u]Oٞ^#dyP['s].Ҁ#PaV?dHk\"=w]=- {:sթ6Y/`턥JC=ӑ"š'A".tlV9 ] ȫ^!L)x84N(~Tm:a Ih.f}E}$;:] ql8/G=sHo#7plTU jZBf i6Zu&o$A?z P|m^v .fTB$f_֬F7}8KLw]Ԡƥr(Dix}Lk5$\g0MMUR]sk$CKEOmnV!Eaz0͊jK(Dn,Ș0٫vI6OG*5=>u)0C&s83XRA2׆ۤNT܁3t# JM$^%`I=~dPP6Oؒ<ąq﬎z7Qua6[<5hWC,PUeиSQ_Z OuAUR #GIǕl]NUgiyU!W"Ov^G¢W~-qm zlΠؕQF(!!ƾyV{u>MX_=aEQ՟ޓS>Ǿi;A4~!WR`PD=T)Cra /(ms?RPr1 2 6&1g"’)Wݣ)(}i^/CZ^w}Q tO6).[1b^Z@wgUY_ w]x(J$$HvWAX17T"Fi~+B6#TL$΋ƹk gL`ZjLs7>3q Q 8bdNNyE~vtcFN=/.xﮐf#X&k4/ؼ@ S(헀䭯h;:AvtxK[)nN jdw(m[*Ct]S|F{ )i6,5N6'KĹEzP=~(cQ?O57OZy,2mU%IEL [7ݔZwW9q2d%ɧ{qkȖO>=IQ$Tn C6OvcGAM3>WSV8iEGRqDGP+7xF(!0(8_xI8F#w$3:e45 NM.@;ĀBTF?5{Y~#ˢXm4\s%ЦjXz4 1b>Be0ƷFVx ij$/5'M-,[d7J631IZ&#<'Tuee {M3I'\NFJ]O!JWHޢmaHR Jqg 1|BCm)$`>rKgZPoum# !R{fn joHOJH&Wz::WNYs#(\&#acƄa\$z:p (+飱ؽj>ILߺưZ݀pD '#ke,zEϱQeoM  !.V0Y_`NԬXpz;fxqLmxMkjQΊC #@Bfp^SAvPڅQ3\6E*u_#.)niaTk5sz/Tr-u3 E1?#1UaLΫ{W[%FNpS};x6a7HXbvi㓩ifo^YxkQHP0,ra xv(C4,5XiPq產L^[T3 ^|G1FrhxBd2PLV8ET<4SHDqIA;{WNHkKYkc.f۰VbɟiqD`|Oյn%գYǟ@pU1r(msvN .}}2{gs ]`/ 6r Ƃl+J쭚[cFH:yXY}x/AJWiY XX 4QQ;OZoǞ]TpY29)Xymu^Qcrԡ0‹ٲ;DR6+@A%NpBIV % OW]#<ݚ`-.GݵWROn) 5WԄKD?gϘWL*d* Ƞ^n}tp6!JM=4.9JwL%oyUgFb>x9Rxo5z\>X}/ 1`$7 aAOxSOsLӟ+ұ)u[֐ ƤLS4%l .UiC^jeKxVvZ]vӸcp`je'ط`V6(& E,|]kES3޺u@1҅%q,^DD$ײᅵ5~|DZ=Ơ'iCRVots yUd!?= o;l51C}c `86+8aKyzގM/wa>KعnZ#Ctbco9Բ5d>~jgRt}Y>OrpjЃ˧$܀ÓQ@Һ_CۡEKEA^>xEhj[1,'uo#XFaPVROj/C׳J͋PO*#NXtǚF^[K4)Rg[1%- /4U캸\UZ0t˴ܽd܈ J],/u?ka. z ׃ 7L^H쁹ߢ1xkg)(4gh*tx Ox7̻$ÄKc wDԀF;OCY^04PűlBvakRVCNA߻+،dBu7ʪ˲v# vC:K3kng@e["߯S+')Ә/r,IˬC.H+)G$pkM(Zllזfh@+pz.S~[ Kш;&,s5Pi/,mQ&7@7R3阋.媫龵{~tRu1cY~;!~hy{9|0 S*{Kho#oɤЗX|րc bvvm;UPFWN!&uo]9C;9FD#m!wPE{e{mg19웕F̺rVnX)Cb7z)dYcN[;>IĦuṔ?[n` pXM1"MToŴ̽Zz0/ iIy84O<π/e'r`xkT Pu ^!M9 ph֐h}, 9?LK~ !㇑l̆RZ')gsXMqyf~*^9I>qM-M̙4:GLmj2]ӓ]8x) S: XEɧ $Zm{Y acݶh]5[iܚ>\ A=sUҵT-]=lҧ϶mmi!N\TG Zv1o3< a`W;f@/ CFgB@u2VlG-D$q"&moP~_OԏeʼnOxvYu<$Jg-X¢@21Uq&e";ɦ.iU6oiuV#4;X +)B^guCE/^wy+V"#hu <'סvz3N.4=" iC1R/ex9Sqr itBr6A8s8m' yR(T[x\.}o3'O- D BءXew2X61`n7 E\ɷ`sK'R,JO Km[<>Ћ"~pIv-Kߵvͫtp$-{D&Ϭme+?iq8 Gd /%[a43-M-V$)UA*lx.qΨU><'H!h}7yȅsp+jZk_Ejr@?ʹ>2섉{ ::UˋB.šLXncۼ<9uWȀn{Gmn:Q0~""_ eF-{":R)m>)9Ru6"+ p~'R9v;%n`o/9fiiͶ+ >67cF}\&BO'7r/ 0_ty޸1P<ւT*\n aKo ^B xRˌ8vV37:yuVJB؆21V/>!AE7Pߢ9MMN$QP|]8iW',;??kLq39aY\~QE(ypZͦXnNF{`h@r|BܘY) =p%pkgy=SxR;$2 t% h ȝmt6fdUȾקE8 G-yE;8 ]sG[Ylyuocyt OmU G8EHgS@td0b )rI!:z QUD+68YujN Nc:KZۅPPJ fO| z:2JM& .6Y߃ݙFp!Y2)qtKQQ@ĆK:G%{!-{Pm/y?| 1"%=?J,>".xEn,1iH %d}CX%o;m1 ]I2wf,;y%dkl b߰"*P;g|JҊHCsx%-}f{=+N٦٧L2ۼUŬ$)F*H1Es[lJ-'J/ W( Ad?p^猪"Jwݑh3w_]ȞY_/qCm9|MS slة^J ,ݱ GA}@@1ݳzؿ|EڳÚM+[y[h' \O}SpҾ=jtI({TeD l56Óڕw- ɴI=)gikb|XS`;.h}oES޵@Jmii$K~ Xu4!c?;AM=pP3Dw̔1Cov"<.E?S +n@0:0*M44ebvy50}MZ (5AMPMtS'Y;s?iFZA^EH1 @ZKSbm&g&Al=Ė\c X8jxCj:yRZ7bY"xphy !bEAg|VeoHU>[i3tYGt/)zmoM j0rVj* t?tFB.c~iA>I+mLJթ;ѕFiJIEQ 5~ {.32@7(*u 'sqm]rŹL!'Dc&)$gG避!]42YeU|z{>my#CKG/s1rcW+:pqIoDb}AϞ|QMDpf1`68An#vxXDs̶S ;-<'tE5|r"跣\ʣas0 XNJ f 4on=eY`,,,&,&c~d|:rIu@XTRMHѷWK h&u沜Li5(bTamS_a<*e/D $g g&:@f.'\-.|5̥҄Ei^ `qV`RU5ƣ>ECTaHM"5{O{| ~)#Y@*XaIavXx['GCmeo")^V1; "4sXx,&9J›A6PE~%4$)mԖZYϘL=sC(IBl6C7Zgmw6?Ops w%䖣㵂_򓀺3?DµlnZ\۫^cmVEM;tkNm7Cu,[]$nkE~"aeN֞jJXHLp~FPxy )|`Ku͋{"Ɲ<=ygW:6j% >pN.'PM 1נ>y:@s˘@^$OCNc'XsȽf:\M wӨW ]fCe_u82ܮ?v "|dfPo av&,(rIS}zn'E%"B|n gDQK ?`Gӱ~sִs9 _`C?g-SEvݦȎ^e"cIۅF%T1tiF[%Kwҋy,>;oוE.l}<bWᨑ9O\RceB.uWd\U7t+h'h=/O'9rF!?PfBƔ>vH? i)h^c?M-r`>~g&Z*,,Ma+kص) R1~>X {2@8)F~*ɳ\/% p*B _LOB,HhGsDV- QZDѲ_֛aas ?]D6;>6agݴov~P@ĥCU m<8aN%S 904AHC#D={A=vsWY I\3reTHrqJN_óg\ hA_o86W\^A4Pdvj,7wF`ܱEtE0W0:PN&!T> QE8Ob쳝.o9 J=&yO_5ZFH ӅP0J]/LÏkQWs|/s_C6M]^{TƂ󴌺luV VPl2?j d |Ei ֔w8.,ʣ^NU]mfR}j&Z>*vgbA;)#|/U[B_Ci#Qj(`: tma^Ðb]WZp>+6Tz-T}Kd"D䂇:L LcNʇs%j"yQ|M}(-lE꾛B(.p2k`~ݨ.z/<=a}ֿ9'ۦ~&@&,.{ >B_ WK5,mwfxgP?k?N5) j ڊsvQWQiW`’Vh@vo-?J\ %7ч^l.i/#9bCCrBoU%a9s)cf*6o2g, Ur9'>ƮNjr_33|߅ yk!ڪ:‡~H^8/eI&MԽVKzaU xR TU5E.~ Z3zT 5ʨC`+b v,Y} kHX'+(7C3sYĺXGYC z2֬[B{!$u]̀E48U*@fH XM^Ԟ jFCbGIUYiLj |*}ߕv8O& Vsரiνwb1 1#41om%+KNcM 97u79vBT04Q:Nv<4'zH>6P94Qn֮2Ú t62ƅ5}#Q`f% nRNP$,xZ @?^ %עOmА/Ky޾X gLF<2~~ٓVȉ2|ϣaRBxVMh`פ4IauW d*U~bn+k b"C5}a¢@X*M5RԖX {O(΅Lpۅo^WeXOc')?4|y̧R&܆6@v$b-T)2lId7cS;2i-n5,[q/M?Jn߾mZ&Etޕ[3"twI(R,m6g1]@qJ׀ӆIN՚SV-CU!7l_?o(\ZbHhCusM 9 t;7]B݋v#0oU uskiH=Wm8sÛH6;>`6d=QQ+nUBvĭQ8$iCr<\M~ @%x8 ʼ?$M,zƫ#ύQh7gaLϔ~u j[c 廢 lܖ:uaƙ nN\]A2D"Na.orru\+*ΏǏ&HQ8~;DFa,UYˮLbG BR!&?ņ4i~roG巬sn\;$P79Ur4痚5J@i5@zXsX:8\nkA_3*] BP3u!X?[98ċ3y2Lrl5Ǩ\t>{ paf$ ȩxy`շ3iOm D&qi*GS;' #UYer^So=3y*/s+x0D,bQX;xC*^P}eHVUA;FM,( hq۰CZP4C _ 9i U]HTY/S@Y5줦 w&p؛Fy%*ľ#HDg"eR=h–. }ӌD?vٿϡm(n!PAcYM#AfFCB= #!,y~7gt3)A7p<x|SNgX\W7)j}q 'O1KiV*?!WCIV0It ʜxYÑDnjxm'x"6z`MJ+ Ps}_/Q\sd|XdGI| ə% Sp/ ƂЬt".$_ve^+}̰b=\G_!RB`B8ѠyЁC$lھC̗/ġzًu@\ ZrMUT^v<-}7I51Bu _a*lY y4Ma"CXE"%HƧyٗsH:0DiM H!Rt=g8!!'cENRbHNk5ndmMqYMB]YDyO^gydBC55M$yw6R,׵}Wqj~y[b S=iK^἟ /Fl2m߽µ<31-A Wei8G&nHK-R)ZT[ o}ΑQЫs|LZ<_AQ䏡f}xS*<1Q9k癍AliC(XdM$Fn bHe>?t`e;pyl!~ =T~ rxEKҧpP6#pSe ?d ;c x"c&s>g`v,)p9Oi ;@iDF$f܈k&!ȴ$TպMMfE烱H7X$Λ:R)oka ]?%LSV]๚N%u)VGآEdo?Lq*oYzBzd!p͐ Br4VW*BvEnA[s~Nއ۝q\~-1ahQxj:Wɴ-bu9jiTt5fny[~#>S$>5VtفDvo˃춉yؙavRM)qut>l+k Wk‚ZCq\a9MOz~kpÜL\(&K]w8c~ p' Px˗(`b{_'4ŚBoGɣcRL,7, }LO/a|5f@OD['HdrHqջ\:"Kwy. :I؀DRkPedwq &S ڰ>I&h2e9K1qSv\E Bu=듹`!$aj1v͉4%!xڗ&w1^,LrKwkl )i@Nki8 `gW{fJP\^'( 6(~ pohS#L4Cj#]kOet1lA/vTyhsOFv%ڗa# ww 8P7MyC[R˿I<|L0bq8BUzDo!V { =SEyCj]䟥OW=pyׯ d!d۹4XһTlcO> Pܰ'Si4Sfxy,,ړG3 I^ ̷ p$8>NX ,O{f=-uhؽ 5aٯTH['+m%+/MPyK`ADٟ@W=v|r<E„p8SC=7}'`>o@(k^>%&CyŠcB^yXQ 5P61!]exꝱP G@uhWSIԜn7!/%BB!~A6Ŵ2hmЎ!ݗ:KY؀OӔU~o@lѧX뱥]?h*.0x64?0fPzQN9*5asXjOZ{c5q2ǠVՍ~0`Q"+g%R4x#ga{('Ƀ ~*k -oK2rr5:HX|׃% * .٤qRBAX2'w~J׺9~>}CYilbf1>$ܿ4e!oGG\ f/d#&cGFW謨j WD"%y' 'SOfڈg4 T\R0rm1TL. :źa]orl$AVxlFHTXA={C|B%G IWIR[j_l62c\n>f-!Ya7JԻ#<. TʩA:HD 7t Zk5ɓ9ګf,bD `(6: -Ղk]+bHbM[ӦP2rᡰ$}ql GѯV~ P)3BV)L},qU-к68D<,FVQ("㷱68Fy2 >HܺhKcKkY&ni@ ɭZl,PT7p=k.^< Y';zsGO:e-yxႧK>`Tf|~6Q9j| 3ۈA` ]J20E v""}m'C tؐC:&e6-&Խ i]gVlar=ms :8~œGͻ؎лIRW{W $JSRF(tjXgCZr6ߔG%pfo \9N3M2ڬda\["˗CKO6#$=P"xtXi&ee]8eLlgflo`4 $'c!2); ӟU+ >[ yȌ[Jzj?6l㤲,؁MKpxY~GOrT\e8嘊g35qtj2kݹeHPeH{8\XM,x5$kڝ5|s'n>~uOH71!3@z {`&YucP;7A˞ ) tfFE& 9eҔŦ߽OX,ˤSO\˝G{jns G@a>ӦJ1Qvߜԣ0:lF.=:R62!beV%!?Q|>CE-܄mzEPѴMF~2;w}с~!.IQ|dZp\d݆8IgY<ԣfO2 €uInwzNJ#Tw-q"Dp^`㰳dEvʅ}N7<2‚A(H2i:j=Nθ|L5O)P!xeU 8!i7s _ih ʪNI74znmP]vQ<MVQ̂')_M/Z.U[O뽼I|IYjBB^@?>;Pz-=Ͳ t}um拄)RDw#M@JL\5:|כYqjjC5r,b CnifQg+|8 F!.P'ymwUv,*ɜX,S&s@b-AYQ*Y (JN}Z+(*˦ij,kB߅;vS1~qj񽴔i84UaR̂t"yj3WВUr=Bخ* f]):H+Ric4qITrU9! cF)#{HW$?|69v#)_qZ%ɔ| -ADSq89 uyR-^Glv૘m8 )JwI>mHG xAmu$ZgSmO^A9-$b? ƀD]"ΟB9uTɵiP7{2!'.H+,AS?nz ' &tUVU|? \STr| շ(7WX~_+<\h3 1_ )7QQz 0S .p֭Y>(1̻S[3dy%!pAұ^ev8?: yֳyɯgOÊHrߩ2(X{+h DǴgzR.4荶_u)f% Iv3+?T"A1j s"ŭP8,xpd_ĴNU|qDq=Kb'9-SoA_3*f>$vMWյXOmưv*!靈|y)OKH*ZXTpk}5jӥDR[EWq6ܴ@;/iZ ǓS썅zجi l6d|#Vp a1(ENPj?MW' ƗVdgH+~eUk"k(y1Iɽ3%7 p-5+mǮ摍:t8-4tvR 6elߎc^_ZoMƒ8Z{TQ0Ou$M]PVoQfXG2tΪZmL^\a=lw̔1Տ]' üSPhō<CݱTS,оW/C an _^1F@g#JV\y= [. -ĄRXD(BLG6zز+;+fo-=i$*T ;r z8j)[oB9~IpD@jłºhU{l7L0J8Rr ªknQne$ZMݢR\8 u"%H~%Մ=7b7dC1Gp{!E8xOZGxƹƵIH&tPC3pnV9z2 d~φ`Z@;+Abz tLc}dxagѰȂho^$ Ao>+OD$Y;8q7)YwأMpAdkO\h7@J؞K2*5Y[E/k䯖:m 3>+~@lxU6" ATr`+\!E KvγjwTZK+\!)^ Xggp5[ޚ0ZDfKޔԳdHopڟ꯴ϝY:̿+?iVLRYm*jrv%ŌZͦ.t-Gv #0弝Rvsp4BW$E:+/nh姿A~L'$_;=J Kxz#<¶,a _UվnoI%[v$ad\dݐ&T_T!C*<0V;TTT[(V wvfMEV4._]bexn/t ?a=pNC$8H"nӄ)}jĄti³;4_T=N(}1@>jeE'0")F1^E{.=]7Ǧ+-ڈ$Ņ}om YNl CtTWR|gwzL7s=B!]e _6ފirfhYÿ[SHn[ǖ_EJے`) *`ȳȐ,@zEYkFxcLhAڌN|;)T%9i*{e42 i\2dj.,B dPiBN[)#`뇸bR:[({)v{2XsfV+So}gO(3{:5cX&ԙ| Β6rs͟/m:'>*NWvn?N7ݷ\Jmy-j:w< h5N4B{$GqAK P/#7cکz%v7iqPLر/|u7S('EYջމrXUpUT8 7Bn:rKWZR/lh'6 T@\tQDUz1]ŶBsߺ$٠ (VA"6 O?ĽZƀ:-*FcP8Ms>KeQR  >ZAN'4 (ew#f ARnTbj !R)ymuiyR>P?DmF[*ͣnڅ^Z8KkMxhcbT}+K;'q>(B.|k>nxׅL}ߠH(G޻$)y^Yauc)g, f/<=tV3kԬ秵Ys; TDƾ%'Oƺ>'VʘsXT(}OBձ{hI= c~y7š F !'w1/Tr\@!O:6 &VdmZi/.a)>LTk>TDvXR*\{,OHnH! =`FJUS|dDuH<6 )aM 7mQ "(EBfDȐ6r{Y Dm en_yN*b=q!1%[VhUlm*qPl)&ݕ 87 s8/H1\ZZhp ȳ)w)h + ihx`CGE~>Y!b7L>HߐY9UثfWJQ0"Tr*p*Ŏ_¬!1l9Arq`\pZ?i&nqKM)zWwj891~'Г׊wj[)%rBE& '&,Bm|72#ΞGa3/&c1#RW"=p[̝p[Ɇn`Jag>ql,F'- bnC #P O?Wz[W{yPG tmiCtEpsC^H1 aз!tP)( /,6 GMʰ Cv^IEߙDx8rJ7iGP®R|T%4|/P%͝L \qtLeZq}YJvrN TC`'k$)IɃ&~X^xź7,MHd/x_mH=J5`b0q;+saS9j/8E';ħlBjoZn 񼱊4Tu4eЂB$KDeڤ{Kj]eP;';$ 27rGJYx9%^CPЦcYpf=/MWP!hos %2Y2]3Wyf |\ܷB/IqJN(OcYS|XZm+7KG/;Y9tNJQxX]~Twx =,b>f+u/إ测1Ѹ`z;5BPt4/&2 i*a5No ix RY[S@#OhkH?{'km iwhT](␉k3][$dc&\W'c8 ֥L̈́1Xf2A~Ϻfyd#7נΒ0+܄SrgyeXN rffj">־+3y󾴢[ =R ibNJo I[%gu_ l7!9kUV ꊟ'Y4IJs{ADDy4;<)ݘ_KR+cӟCUta:!2/=cu„cndAWեTD<Π ]8 |ihRFZ7e;1%wUO{hxMj>͵ߵLIPϞO)`{@!FHya kiYc8.R|Z{o+"]T>Τők%:+**K*% JØy183+Z!Ʉm30܌'am] &f 3>V ,33s3CkC)|ԓg180sNJ#_.65b,(-:cN8EU >Va+YwY?;A{ K%k2o=4+]s?S$ tH15Peg8'_##(I^3,Ǜ)ҋ(N!"JL(mG9d#:c)-n~YnMdfqLVdK壐VYDM.5dyPYW" k=TrŶhfCKQ%J6z=(n ,rL70bSYuV>N|?g:zʜ b_-36I ̜d%D8a.Lk%FZp|8-M'+)'Z_!U`~ !Qd\ 5ܴsD@gMS,?4xA_\(+|G,\*O?"ь}n`.0 gDD_+n1*VIqlL,<9Ӵ>}#&Ԇ{9qC[,q yK%| 3+M&!_.8qz.]W蹟43td2Ϻ- xb!iWaݓCp$i`}DXg^~1UYiD&;'2g9 Yӣ?ѥUe+0o8e(ʀc+xUOK9h|=*MqQVD U<0aN6clw`ig#CeEYֿ}Q[ fhw>7 }CjLq7~0oݞ .Q^Iݬ.QU`JAer%^Ә%rxZ R`ѥ?D@!VukwTFa[Z-)8MЀe(Q&Ď«7P,6%=FK~{ҿł47 osN-[料n\ߏ7;yDKB3Sd oې0o=h"6N4\ nFp޽̛{gȄ| VмAnbo4)U㸌|nϯaA5GҢOrrheA(̡#kPUmp}qRpI_N,[bdòmTs5lg0`UTB ;#efK=$JmG<-G@2:4pL ץBrxzXY k*9/sykb mwEGp P. -cw Zxjai'G6 ~q+Ջ" ~&aN:>G&Y`×t?|΃hQ9+#Q{dUz ]C "rwo2[bk-!ϕ<2͔ G(zVǜxʾ5W,{  4GW)~8NQg6 Uwp "= Vx9bCFp7 KbF~=ÀkA*{ˌ'th < V1fc- >< -CbRϡP4,D0K"[Ol1N0"JN04PR-o b.>*|m%g,I8 X1&uJ ul])&ge@Q&TzH0T1~-nF0s="gEeJC dT+98K n-Y] r 2A?c/YF"07$@6fyM=\E2` +wT [fv8!DNB퉌+KPX%2~6'<l뤙7+E @k~}rw~qHIhD 48ɲy;1{큞k u0IC6+vuJF#S#<Ϩ̑ڽyT-z@* O?YEI8N^﹬AΘ+Y dg@zm`!󭀙GF, %aW5݀EDA]֔3*4ܣ;*4!̐>"*4&2WaYX*7e k/󡙕N AOz!nX2x8Bxw5<#5ۣtQ0l){R8V W"bOHTSpxvzkq0'=|kv=#PqE";⧺PyBDTʑvVo$tՅtpi%.eQf2i]qnɹaVt}Fl!/43dV0 ]:ͣ劵T%{ Z3KRl.#1N/foo .N%DCr*p<+Fs'K({,5Dx52 nj9E%Px@m/b;.D_8TxbkΒI U䠂0),e%[B/H$) Ս8KOe ++cܼzvuˍB#.{j*`5H.o5:Ide[#5P9)}C憝#9GD .4]]e67 FIZ)r|0ic>Ͱ9;2׺w<˥DA'O9֩[YlỖF JCBlX8 bڼ*R{7I'Wg65-W0qUqiI_^g5Ґ=-ՎlzTT -_7%BC--~3?v퇣I Hi}e1+VW(l`rLUft3FBȠut.}? a`YVp GsXjf6~N|/1!沷eW$CC!Xb$.G+~eX(69>dq8 dH2`*X5 eCjfwsՃ'?[jESWfkȡ (Ŕ0fAXm^1Lי9.tP. \2[L f~**ݫJs;ڛwyP s`.T,S []m!r@u綧̷*GӖ TA{BxA%MX7P =M!p.7tNwws|d&7u$!M᩠-4HO3+_3̆SOK?uݍkyYihHk*$`wC`nth,i+ȓW.!YqB! @+Щ-cG@ȽjBk"|6X?a}Sxqc8rW8vcf@ wYTd #cfjc24E2qSD 27AUu[b=+98q6IL0VԒ#\.@gl|2 {#I u;hgh MZ_) hUt2;m" VX4,YЁv粙V yCʤ {e݋~OljL ȯшbͳXq64HB ,RΌe B qߤsb}s4TEjo*L?c 5)bI[7RyBƚ V 9[> <}@CƤK­F+@*[8 '),N%NSHs82Cje/8 .GBNT*闝e"18k qDrw+FgN&677Ne9}j;zNl %5nu@[ZTM1h{FQ빆%8jfX]cԯ.oqw'4ܛz u#]N8^jh6_ABl:u z<2Wxt֐8`GrQMR'8gxq5bR'z ͵."V}BɺQذ500hћ꡾6ֲ[w$Y27?w/ N u3WJ~9, ^u@ƢQĄLPSj@GfŮ=*,@@ l O=6U4'};0xND镾Rg >% Ҩ*opYs8~YsnUQw|vm˭A-$&ʻ\,ޭʂA擀w&$b&uo7\-7 ׉z@Y0Ɉ岊/4`|OŖ.|W#37@Bޓ`n$Mh\5]7Hз -IӾ_wdJk.<[7+lkF*9`& څ'u+}B%#uBϐ5Lmxw= ihOLƶzn 򲺛OV9_0_A`d(ts1]b@g꾲pu|=b<`\RI̵+P5+bWR) ;\*K!ؓĄ7 $Eye+,0׿a{@eK2dDN)!Z4^؝a2{Fy IEmDXƠm;+؞c<#ܝv+YƜ=XTI6@`7+Ѓto`>fѸtKkwSfFNd!\)d`H42(۽WUĠV\뗗F EqHd]^8T0l*sI(p73"b:BwT@O`*}ix v[4u]Q?:hq{11T`k*j3FBQIՑ-' |ɔP<(kcM3 kxA='Qv[ o`9a&Z+L)1-X*PҴ+Zo0wC,RT 3@MnSC LvMQlBsa3>l ݼd~nl^ 4s>0ˬbrx1@ʡr"ώK #X{6~|&= YcmiI-b5N2ȡD"c,]l T` XR?.G5-Y7WI%L)s<Lwd̤rxf೰VUb% l'$G†XjSCkREtw Za-+ZNdX}'e9LO=R9RFi()4sD߃Ux4RLH/r .fϠ|V|T}ט~:FA]c]Zt dHtz@T2D)GCU9a0Hc7AF 7n!H+VcG62[ _Ƥqߤ3yf } NiS>JM3ڠ۷MCL6Pv0dE*}ȭ[rI5ٝTF0{cvCOJ:zׁۑo +њ >'s'RF$}=m B8B^fwąbYԯ)Ghspq9Ĝ^ 3,Թ .0۔2עpIBJZOk߫@q¥r #uL||O++pQPzk [yL8yտ_2 I\8xzki!oܷka;Y {n`ecm)ؚm-C5NM 盒\Қ:D1fܽ L,7Yxx_)kY@ \ >FQ n.u!%Q\ 3T;BOa)J ~۸ӏSK5sb!ẋ}lf Bhog5슁 qu2AUd/7BE\eijg3zڕ@sJȚ\eD+L'IoD)deo 2/a8)aSv̊5_.Oyjw|KOcle f_x.KL'L *?8sdqd Aψ IH~/gͲLXt~9I})'I35?"DD"ȦV%Ko/ RDVgir{?Ֆ753D0m=sʣxubZd(hcuxl'瞈 9"@!ST Ã_I%qgEd2k *Y8`ƀ%\n`d')}8v3Ep̲^V X8ةex܈DtUѪ@x}=BnC]حt́3ۧksYaۍM>{1^\rm]U+ˉDrPԕ-||h+~w4T]v}ɰkkab2*q o 'ihO):۫3vDM!_wxhG ֲ>i޼ Dݻ9gb|6".INք7D蘪R5> :݊a1>4|'XE0c;:h K vզGpq=Q0 G;}^%-B H.&G IRt3@Qx)$)Lx0]u[ݍ7/#2ndHkh!8ӞD!F K{XSrBfyD+y89Qd &xǔMIko=9WŽ/V.7\UURsa}-W1SwG` PT=t^d$#3Ɣ$_2G1׈ B`XG\@CBQZt\$;Bvk a!e:ĮF Bf)U(h%|8TV5 |WJ87' l' :n6H=}9*F8X{)Xߌ=Ä֛Pp*ZkUey,}4hV\*/S6on+BG%?xMRw%[TTarQ椯}ʉ7DtBB!^YĚQN1Rǩ^L| oLݝ IZS?u۽^a?#JyhHkugk!Y~ȳho#-:V}@ m%'tN3)2怜U8cR-*mXX*dDeQ2}(y7;v8q<"R c,[[ʊd6 ֘Ʉ#.6jcF~ɖG]:j9!meKs2Yb~SeO`&`hQ{6MO!i=`/ :dyuOcdeie9{ROY&ufA솤/=tJF9&Uzp[4Z;Je#P͠S%OТ&WnVv!ڣ/oV"Vꩣ0m98fD_O.r=EK5NEP\%%> Hw3Oz(6]Azas~HLB04lG>n-#Zz#ۜ$^;)LU2ۨ}noZ  F)xuCb Z;g X})Y7?WP*SN-:-t.Rh),3L6ȱ[>ؠ@6%GF%-¡gbZHN 5񶨾{(u휒|C7BaDHǐJmFYYԳ쵃Z7iPdk?ucg -MIU٥{Eʷ #\3j[E%{+(d"Qtį">)}Fsk%+oGQ16Z]FKH:5Ѫ[159݊^Б"&yG>>5S,S3w%*ܾ2Py;?oԈ?*gfҴ{4,j`ߌ9{4edڦ \ceCV%-7EQA+ t(/8:\8E4j.FW+E)72m?L≹]+q(73Fu4ح쑄6wnϸllx@kQY YԖhT[ѸC#PiWbg5^.-*rʔ>P_Q@yVzx:eҕ>3^zJp?iVd[7-wblCꕗk-nK,} Ac`]a7vvnpF1FdGRRJ 6?y0 (Mh~O;;gTTRz`g [Q޺o.ȅYƸ0:)Nq½RXن:7$*I} FϺ͉LYV@;'V:%D`/>|YBgGɤ^pYʈ,5sN`e)$QWPuW:lIУx*4ڨoEĦ|0/%ݲÜ)DCTHѐLU]ğ0YMzSAI W6LLy+藴bdQ6mӱHQhQD?qeu1*bfo K5^'E<9meM$LʤWALe"AڧXNk.?c;3h\r+GԐ"R@X8%Z/l^7ʠ@ܛ^tYnp/v|cE %9cI2(7L|>d|0LJʄYk/JQ/o!݈Ɔrl8րrّ$m" ~-XDgYLKp՗U GeNlI7?b]2 =D,~-u[zRzª0'wY*g̯0(84GJrA8P"ZU [C.!۫`VPYQv޿wE6_dv)ҷP"064MOP":O?ia2K:3)%@3 >c,I')C]\x ۷d[KbԐ`fh˿5:ܧ9 r'oru`Δ\/61mÝ[zr,ɽn(uÓ ¡w ԏ0A2} Fkp(޵h/E[rԃٝGUlR"Rm%z3x#ZL9FڟUO,_m^1ө9 ׏<8(HF څ(L}ygc{l"?/u"AnHpDװL?iEVEk0L^%WsTcJPC/A&@t89QPz1. ߨT^b;H!uDܧ;"8oJnxfeG%Yk =S-Z,DZR<F7?}8>G$BS^)ug%Ŷ{J٤~*by&֔ש~<~umfg[p1o,4;_ӣk^JMWR-qGYf 3;(o&d尶D*n"zA-ht~eY+andsSut>nи/h/Hȼ<9sRa`VciNpMV ,!c 6p}{vuJZՕl6ҕPn f乒KhuB~],C|]Kb !=l ?8^v吧H[t$E;FvIܾ,h ʂT^mʾ2Sfd $H鏶<פ:8oލl .1]. 4]h!a kT'?.X8M8ۀT%`LSHCKP`wվed[k?2.4g`͓> qiQu?XD}{2= ^w6rid6vç9}˰wfI䟣gUmðrY>pLA<8qi\*`OKւ] -t]|/U/u%eܓh,6[IV̹jujl7gmqݴK$Iz½.|XѲސߚ oj!Wa/NxȃwcOEpW* _rע>]G:REY̋ln2Ҁ<<#ʾ<*ti>ڸ ' Ň#%/)з%TPM !kV`_UKoGEe}FTo(MHzu" ;J(5 |mk4AnU)pXIcN|rV靔S%'crzWY1[3F!z{0Zb'k7Qq_E|BwN!'`erX'>f.'?/ V#]BX."X$ӱzқLUT F ǾɎsa: Z/hh|5E5QPMh,׻}ͬ1^(!eXCژG{|y%N9lɃCY^O*(eN1fҠwE& $N^ >~QwJ]Xow?/KN86SMz^0r"nBHi5VKxؚu;@֓5Dl E4n1,w3 .I8\ؤ(1(.Yݼ󛩘j䕺.}33xZ'%&S\5rFcHzѐE&}q]W!؁{\B[].US*;[Nt HhpkI# opz0i3L?(w%Z9p QE?g6Q}\,KPbM{h&S e.L_#ll~W+M遣뙄;%}-hf]~>5ACiErTvILzW><<#4>)B(k޽O8 1o$4\"wb@J2csTe"З*ǖeFZ=A^RҌ֘Irx,yrx-6.wM!uW+Պ]@6Ӳp_3S6 0"E-܅I話TrC(6 C1 ap|#T!_crb%ýY jE1?Kd^ wG&c ! ȕja815^&Y8/pMe Ö/.9} "59"XW;^Tf`}niΑ3A BKϿNbI q Elqqٜ7J}pn)Q񾓤@\N|0,Wc~ίFo3:w;9KMx8 AV.bQbWx !`QE_K7dtc.n)$ќ_2;p$6/igT`=~5 jSi36a8nCdž{nUeOe.zgFWjoKm-s(Izi,rg8EFJ秈ܪe- kf ]5ԾZ\JJO7 ,^xx`?RtQ5(KdR.(@ѩaO%dkTLnA-i>G[sKt91S+Dzr%7xN]z+hbڱ#@$]v+tXauIff8@YgAiLrWprM[ROcV":wq[~l,OџF2ѵb`Op"<< ԢCTX@UзsUldqS(o5=bpw<Փ ɪݔH P~XtC@,YqS#/H]A 1{2_쮎;_-?R[hl_''cc7xd|?.n>O{ 򛪳r`#Zluz񑪡򾊤n;FɴOGՀ qWGW^Nj&(葚NTN_c{%ϻߧGA:; 轢PS&oFB3yC!L,8W,)1|Z7 +i-iuHOWh1Jk-4Fc0d=~],OvTG\eTS#j[ TYK5/wypi%nk>„ʏHˊseRW[Vv#9*T3G,o@pU3b0zVGG`1ӽfdV5G8rKA\R-wV+j>:o=>'_ŽT0 f-1/Y%b*"V'vtǚ}<{7iPGgYMV 5%M⎇΁8l/䜸 @Oy. ˾ {zR;r}9>@C#&ꌑƎ8CܴQQYykw*F 9(/!d]*pבs,pe` )VgMlfm& Pw (19^QOT(u:"S *J< S qt-䟢Z]+ `=4lsOM~.Zj|1Wҙ:NU451' ai\* őt}LQ*=!:.*zD?Gza=G+R᯽ 5ZmjmC %Tc{ v #SLEOe".Ň8A7zd%M/YeAw"F&vBhɽh^wMBetLM}_[MiSמQ0ثWx#c#ƞLguب3s#oJĘ2~E "&) rؖ߈vgp!D6h-=J!ctxyBoIU>b_вH1|6uV{|>w7 "3.ڣE&`xpJ8hw]iH ];ѝKa;z+_8LJbVȻVbD]nՆ_' K`냆څORmɖѾC"hV?,Q: [+1pQ}$H'A,S{ق=:ӊM*ݑ3wGj5&GfeIp[â% p;Q +>L9dZLcˬޏ킐=k#E4}22=i 4XM{ @2P1k$L"F,DŽtھG6-nkTy/K-9d&BdUe'2FR6^ٜIEk[jqv4qo;(JΣ*A(w6[ns8\!8@TBxf0g,PV%36u!s="nB8vA>PPV/SX@jx,e;=$[qSYa'FIԯH#{qmwRq:+ecfS\lAF8kʸ)$΁ё*K3`50 5DVB00:?lhF y=dUMU5*M0t&l0 {䎐['䒀;,ǜ6JŢmO(~5Tyb;!ϓsW*-}[d PD4չ<퟈짮u욛]N{  Sxe[0FnA;u Q]* KE2 Gɤ1`~V# O  mO=]VVWq FQnZ*bI;f*kH>%1s~*pFuT7&?ҞY06[ 8FFW]ƎF9u&jdg |[,<[N8 ! xJhs?*nG|8.*+R&"Ț;L\`5Tf~-RA9Et<}5H#7=yy >2}׈%=3Ii#Q6x$g~S{U}B'1ϒ*vҕFCIpfŅD. t2^t!tF!ga]|yق2"G#4|AigD0qZ /@ԁ$ֺ 2D}ɛ$o7nV!ka;ZkrLSQ4hF[ݭc4ڬJ|X./>TXCcia 1$ZKuuŢ Xk/%e5\@ZuUif ԫ]Uzi>y5 qw9!efle.ފ̯0VlGsp1hWn{BEAa3iV9.(=^7NQ}[\u$J],$abYI٠Ɨd07*mW|Nfw!d'){527^8u3 !`=Ȩp5*I>`Bٮ`u̳vV(Nt;AKȲz<#Pŋ Sx vvu^;= ꃵV&ʈ^t: o%n1#cxߑ+4LG˨ˡ)4ShA߾fQT?Z mkܼ=ۅyj7NfHlp^UF 0BG/'9 3ܼXlK~ eq@$s2&u( $p$+M8䋡 m RP|M7{rheRt{ vꨭFL5jSt1Vzrm;YZ6!P$~cU>oLBz ';#YQxyNQi+d j\v=[v?#ge"2UckMhwk;Myc- kqsG2G1}Nľ8Vum'KmP11EJ#]5 ⯣-}#~Gy|k6ڽәz?s 3Tibr7%lT鬃u>Tx5hl(d-j^T*؀L2ElMShFGOlw\ULۃ%B|?"})\1LX`Bܐ3|Flpmo'Ȼ20?\^L<5ӧeb/a7Tr#f򟺏mwʕ4L"i( #-3!e6iz-"͢g0}).Bs5kmFQc+IP_#[kO s5:{VUs2lJR'7 0~ maE^ߟAQr%> kNg>""pEMLf&q!SB?99(bW?%nIʰ8fQUwP 敹 cèxfAM'"m#]#b_' OIh?5Uӝ\(Y䓵CylPPF6<;}ox@:x }Џ,wYyxc 1Ae$ $둨+Y3:ݢrSyFl)B*g-e4WIoC>7W͞L!s4#Ë]Kۦia'#Pe,uqIE =?\iUa-5޶ ۿd3Z5|H`ܥXM Z Mr[/5H-O>΄7ȵMhi,y7@n< ;XbLTj͈ V>ء!c*Pi"9rbPYiz"'Zm M/o:qJca_+_=iIjpc*!XʏCmϺgIar2B#<[2! 4+^`7g{ho ٪G˲qSMA{a?;$t}bYzjIQ?}FV£kG)kb%ЍUS+Q) l815%̰0,DFv he.(РNT#z| ̕aI@u6v&{H҂߬#l:iX9ws ?Q{aш]rL`TAUU%%fJ:vӪ>L$(!R?ߕ2~d@7-ڶAWT22waL7B4Q4;g+b/@o|Mts#t`4$F,gIJIM۫o0ΣiдD8[* i\TMOZגaL6z|X|5%J돨`&S)EY6T3" '4VL5o=x҅ZGF8AK6jDO3_Ίx0gC?^"~;:l@ VC ǃ(*ҜIlBvM%y#3]t5On+xgc'8* 3t[I ۀ?3*;lHUi%wZy~e <-oEP캈$Z]~1-2hm2_/F ˶kV5̓r<#6oљAJpCBI0S_HFА ~^,7_w1̈nҊ~ўfD.FMEnxp fP^j}¸yC]9nMP2x B":0՞Zo)Oŝɋ16H3 *)2̣˻v^{&q4.W%tu*yjKRP6&5C*ea%N3`;5h}ۂ;1p3*hQM)Z4c`۠Pc&=MzNPaj<„2 L*`'"_ 4Dʞt?}e,0Pui;<`+,󴧲C -f͡R]1۪7Z@Ov>^qkAS  I]GeЬ -?'hj]+C,7=Mo^xK)dn5_N>׷_|FVHnF0x%M)RbطxV*CsJǀpC@ʊSSiEwuh^9=cei4TP{:,0VbCLժ&J{xn8z⤘bzN밮X4OE^E@^8dޡ|0M9֬ė7M;>U@&,A] Z/li(~A+.x:2$u"nqc}g!zA},4>[m> J/gb*<4>h~owTR`7]C+ 6giR}JU[8Ysǚlh8. &(YFMgq#(ԇ] !B*Z3hM}ne"={F_\fY]ٔ[*q6ժyml1ƭFYxĺ#g1F{5fn|я$?'xo`L5L[UpOF۸C{u0X_8 I"RyYzZsRR#5XKJu,B4ņhYL{%J #sƀolOZ*XQMTͺ*d;Qh/ܮQgn"v")`?M4 t3u6J5k+cႍlsϨ|{khnaU8[",kGnBw7?{Pc_ :[< q `|?HnYT1 #Ƹ{{F"-)ϙxP {.CZhX(uX  $ NvI$D ]Ŧb8!HsL:׈M&1BŒeps\)&1SqFcWNѶC ì'd-#j:Ah.} d}>iu΄:%?ZAfu mOJYmKTgHWf I \r~VAn[J^bD(`. TLbsQS]neH}!>?9зs/WLcN"F|?1\ iE5wى'ÅD/ 5QyD؞ g JwıU*uxJus~U4!pGQo,~叜(5bŲ[$RRM7 ;V AX\8g:5smvP?UT:] q3 [|g\b&G?e",/uE~U 4]Ilh4@3TVB@0KndU[9yv_JA4q;gr?RK%QɼG:?/T-0>>7͔?,,Z%~ڄ952rn#hX$y1D 6<|ۺJ {u#Pf])ӜS̞w3BMv>Re?Am%*Nhf6Mы4Cv!-<|WWMt'+ِ-bG3=gdڼ2 !YF$ qMR}nqݡI̕ku{cӐG^8 TM̄%I o .ݮO^ˮdT\ -߫ΏiW茅v\hhi2HFN,~ØVL'*$USmjzӤk+Cu(vXz4-Γ]4A0:zqoR0`ƦT=ӵľrw<+N6v\Sa1ލC 1$Y,}Ȑ~pl{;O/X\;LxJYrD$y- pV[5}%#%*جaV!>^c6ɎT^Ţ=J`;E:Ff=cP`$ >u%yZP%GDBگS %Փ6bE&q'ThjRGGۀ(ƧY}+R/Rs"cay, oICaw(,N{>DFCΗ(}ɠɛlyve:M-Le,@rhۻojCssWN;g^g{dmqd|#5ؕqoMk.5!Huzp\oaʁcb`rzSt?9B x^5b n7"6`*^V)d/5W@Á!G5T0l'piePC;p'Bb :L) ݢ%,/O䲥^LѤ|P[C8pؿQ p39ĊwZ.yEy -RgL;!Z B+ġ5ٖ ,OTsâGn$y=ޝ}ni@dEF7hkApc,f#'F'6PZ.m9' lY 4Q fmce4q}&t K0)U9ȸ!cG`QEڡi+=9I8/$lAxʌ?۹CgQԹ|`\v[qF kdaSf\dCokd*BW_2u51[h<31dP"qXUYX/,[ǂ, :XF5nl?ZÞm}/GE (_ b#@2v>́߫6CAi/YƟʸmY!JO1!R 6\DUx+{ilsj|Y>~| LYs}_|&o$\{V |"ɼe~BKY%,YCpy#>h-չ6s2ʞ^xbu EڝVTɻַC=uPp4cd&9yW3E=97R(#hF(;,b/ϒL$ 'Z܄b}]w&lLRVOߎOfz=`7lN|̠ePU69|a|~li?*6!ixžJuݠ"IB*{g95p+,Ⱦ췂h,B,).P2HEL,tSAmI!98pT^] gURtY[,_[,݀m (98GAHx!n,% qQi:&fp0We%i{E9DFr a-54FDկg əOlhm>'D\.DU2)Aݢ~;c,LCk.+h{{;ÚsA4xK"N^afQ#{l]B_jo1꿪iv[፜ZR0 rz*)`_=4z?[w0_ s9=>Vr\u >|K*}02L"L0@My\H_ﶗSJOaݏz3x4 #tRfts lύat 0G2f(=J`acDk0O 8X,4ˋ WW >eVRT!m ~))긠~/*x$+Ak9tcvp|Di{b&Soӗyײ^m\Hi '[5+UѺW =iRqI@*!(#B~ұ%A%{ŕ@B>K 5Ac_0k+~&~rM-%9+s?Cd&_Dqv_ 9g_2{ ^wc>@tby-^ȤǪ :/=԰+o /k5S;4V ?6w>%:w|\w>͍Xg1՞ .VdvUTq0L2A nu3L{\ yXqbЪxhŕrA  gJwPBO@ =tVd_>8PYl>s @LtY"fyRu8}fW&ȵÇ,DH=i$gh;ʭyѴD02?}%ʔ K됊?63o٢q&F[M# &o7V*&?fdg-~ߺǞ/hRz\ JedGo1IDI)]U?{M +޾p8";_{ 纷4o}E02vY_r:fzylEG\L?k{RrK C-s)-%]z/IE3E8mHh7x˖L^9F1HZoR.91Hd 欩ͻN濕^_JIԟs˜="j#*@0khQ]i7/nkn%%eRQtWRl>10˷^4[{0OC1^U~%d\`=33Dh#{Xy*MuS$"5 rb] [}%DCب:o=[ h(c5Mp!򰰚\pwIqїGg\?G0F.qB7/`4~fc)*υ=`UX1@C3Q ' xtx6 xhڜ 5Y[UXYp:OEtK*f9b;1 xb#[4J@E59'75J..OJ%f"%?Sn<0A2b@{vj (NtWE* _hSQZDPtCiguºTطB_mkv7Pt zɮဵ[b.Hj: 1J6%i;X'jOoMt{Y)I KL֟R3 v+V/{/:QU} `n sU *Mo<[w? i-K%s!?~crh@xTB0[$qu#M`S̽>b$'K}bA_vRW7ByF艄?M~L;xO-3[UmLMo'mPGDg3xXg}$(b dRD"ʞUvJ;/ |;PA- U%*xt\OsbҚ\pmxv6%hDb^,]{i,lG5^^:=ܒ%%9⚊UǸ}oŊAi7`=R@QC@dzR>=?> f78tj=H]HRp߮PAzV=CyIven q1rCQJ;%&Ҥ_񔩬k.$8+H}|r÷~ 3 Vf~z@*Qy|OS&Jx[U)_wRjX)xuz) A\ 9!@,2ٯ{nϙ( ?gHۏ$tGzՕv[{{)&sisZ)A%Q*MHII\hfVB=^) ੷O'Wj>~I)>?\~3S$I@q3f^+j:Z XA VwOˮ'#~E*+ (x&@-x\ȵVE4.x`j>z9b(ps p;{od63 ^XB$7ұ%yO?V]:nOdS7-= ϻj篗H%NL?L[b6]œ h]YB^9>s4FbD),H7eBͮƣhՙNɃEy8Rewe0qg0欔Wtd(P(ҙɀ oͦ}ž~.4ŗ:2<;vZ̪H|h<g*Q0 $, HUf$ <EWu-dڕi}'W%UŹº" =xvmf&L$V!%6pٸQ{ s%/69: 4>t摪s(*$Lsh1@8;YꑒC>G$qtwdl;Z/U8z]>Syb )pbkۥ$5}%]r03|NOz*>) ;Ҷ@LmT:T=6`e|?="'tt!md? 7Xfd&4ybiq\s Q8+lk6MF{Y4h{*`6Ls텛3HFU@)5 R,e@j;dlu4ETq=n9Mml _=S;d9NqS0؁ңX9`" 7nNB[S-M]p" GN+BQ<IeEʧ4&{o2PPyx*Yoc!<{bWQ+8#;Adٝ 7=| 1a#Y}ޗ=yq}q^:_y"?gj#hJlR'b:XYT:%9o'۸]žjR&UsXhҏ=p]ꤖ8< ?:h:7鎕K̋+>?*U1 Ҋ7펬ѽmƖNyCÔ$Z0'ƪV2.]cސXxuO!Ѡkjtkq ie&8熩[ m4(;ڨ#>$~"rOhPZhg *;<[&ߜ|Tܾ߯_lym(OS1(G22\z>#֤eqaĎfMq_`ON;d\:{T`.s0m$M;eMW@+d H &b/RY @OƎ@rόzU%WqlG7YD+;j(ODdU.U}{Qȯo@3-nQ;O߫"Ug68D|QRhJ9ݱIȾ 嘮vuer{ 7I1*>FF4[")K?K LɴWN虑 Wf=o2ե2{R5Лbaǖ*,XMry3ڷwt\mCk&ŪMorT+GG%>@+C]$6]CT==+;kaQRuɶI dyE\Dž.L8K#cLm ,9D3'x"<^v7ъ{BUE:&LGˮֻ:A6WJx~gіY uj@{H;w--S wI՘iEVAAQQ(hI# Q)3*) R](MXw&.GT&k(+%Y%ñ;PНC>&!( 'i0][gj ]2ssCK> E3_L/~?-Wa}gfw]k.s?}ӮFAӸ|Q~itN|aTR:הUNm: *} l*9}0azF RSF>21]WU-}:AΎ^n~Sue^el#w"=Hlź.kJY5"i:haׄ쌱p$"+zt$yl.n(s0PQb0Cy<ll- Pu>jО,xiEm2tIF)) xԷMBS,/E-sr:]d):|&U xL0|"6#+MzfNwH}Y虢ě\w2n煋Wc.˝&A.=x|O^ ^X% W lJ63vdZP=,n\ПXm!@f7`dX^sY'ڢm|kpq28~ ע3,mU^37I+k->7iq (˘UCq%,zfi|d3jcB$YǓt݌Y$؅$= w].@lZLyC,$S_/IS7x!  8]%omWFGKȊt҅: M^˜ozQ\BVa2LdؾgbCF߹+W4=cׁ4AB@Fz5Jarw!L-B$U 6mt`,ZUrl\ z/]) fxyp ]Q7z5W$WJ~6`%+L yMBa9hA6H9lMpɣ(gVC .dV7!PK螐EÀ]s:OgxTѶb* 9%V|ϮgW֍UU,@5/,G< O|̳+묇R:xw< W<ȟ&H BiZENuv `_WDhd~-#ھoKtVX% NX^ } #Nɽ. :R枂Zy4Wǿ'`,i*/;LFѽiN:F?Z6͂hr_8F  E Ft=@u_y[Pu1E&9/p`2ܥ"Dӆ\&0w#lG9IXԡ{;W(9v?mz2|SŦ >Hs-kSi~_86_qL& S :1̋Mׂ}!(4բhȩ~!\Okݫh5rg{O[&mLV%ZIah3Hv*l [<A;'}MdA k .M-WZ2jnE^ \O>EP؃Çu&q _5џ`,iwa}xh5R< [d*Pa;>$n ϓŕ'jc5]ll-DQ,OB|(X)\1aK$8ncSh/";IO8zR0dnU؆UG.k7Vmw^MtمY(MT],xDMjį]uRn8ժoEZqOQ"XǶ-YS:*‡O R߷p\CU_jjFK0.6ܰ>{N=+lGʢeܧv yX@jk`oMwuT]yZcZٸ<=W 瞘𴛐Hʹ3Oq*Ѻ`tL֏΀v8c E,|M-+#mw_t*+q^2?t Y9B}dlz2z 08@x.X5f0# ^7ٖ QMnKc^"ZTSJ;1JT=}"g]@38-9=Ą񮵌uStiiB)_SBVeqr lSz /\A0.t„K.d+pci1T8u!۲7kxNwOܡC!bWN]gI,}h@2R#*#/uS ׵+WW^r7rss"ՅZf+&WyΠZWvU=E5E5=^ >L\k(T iI2"oTȓs<}HM>yLc%hIP5dc |*qWr`rү}vArIс7Z?( 7hUbe[l"㣖;Sp2Mq7Ŋ48_3-t"EN9&ubf0꾲 zpq'+M~a '#-̍1/?LMы+otkOC a4F:N*%ߚ[no<(ﭗϓ`x]G3Э:cj>v RȒfow y>uvk'3c~̅:[FkT,Rja'. t=e8֏{~'ʀb H9q(WT{*\97Icz~.g 8DV:9&H#̯f%wi΢q7Pu# QX߰UB:^8q%#ӧ[reR ݡؓ-7;LHT2rEfK#m{Eu t:|OOd QU//Au؞+v<jGj ,YZw~qPԄw})%$^ilz@eV׷霛Pmih+Җ61xo>t(_?`$ /;zdH WfYiL25yt|m%-jjfIbl&:b#<{ah/2]ؒuۚҹznG/B@ "?mzz3t@1ڂeґjHn/$/k)&C? QKgJi5lr% y0x:3D|e/LYWĻ!%Xbjr(OD7sf vW[~"Fzov XM\̻Y&/3&lrobe`}5,7CGyMZcӺ԰$w=F `京X1Z*y .5>﯁͝DU'0m*p~3 }ǧrPFIɄǃj o fo-|~H;Q :Sq*- 蟅咲xoM}Sa9;"@dmIqWC#s8 D@p+V3\X=e@AuM;O>9vSaJsA瞜11ʸCҢjQT0κfU.d?c`'s&3GFZٟ&CU??S)WrjX;dl'~56ܙ:BEX+i|[DA,Hw?n_t~O,< Gh*Y~rղRyjOk,e16>W8u/EƾH+zry .\Je:4$uԩI 0PSz9[8 &eS$ȔaJͯ$3V1G5kqbѢI %dbLjjܼ' iid;7*"_@r22S@6X/fC"2H|r#Ǔ TBnHB5!+NK u4//P|_D=TjDVy|+$ Vs\*|ۗ' )'&dIܒGYn8x &|BYh]fU32NPerUSO};t3-E5l,7bcHu2񝣭"o;%v梅qߏd`816)egTCIVm r~=.w~V>ĦZaeX|EHxZ1y%Elt#QJ3<֨Ť/!mcaH_ϳ`t{  uYRh H:Ԇv ɓ6^O'{_ )XO1}K> A_w/2*aiN;$J8=| b\+Btk$zQ!b9۽>}'抎;^LL*x 0mZxA^d6!,'?f{9>@>\pqKs~̪ٲ@ rK8 ,n?TO`Gs8poy)&!BYf%\/0s-koHrwȄ.eG2|C04nӐgLXIvV 聙Ơ!_4]Tmk$Kr /oϗ[? %8)Awv5mFz u*a%zh`$Ȟ0A"qr{$>p:}W0MUF5lXNJTdJ_RSZKbwqgB>%iRIYYD k$XGtsZ=Jd`C%7gC0Iz)uƠ j^ʖ,^HB {,+@Pd3TYI[+,=+n㩬3隔B4=rg`TCS]xM'"N@P"e ~ȗϳ y*ts|Y-4hn QAp&9iL{=vk)SyR]l}I%l`i*mlߚ'ƠX/~(S05Y1Lo^=4=;XWl{޿κA"IC&sa* A*W殔d} cy}>~( n{I&4~8 r eA= YXn*8XQhv7*ֈ޴<;%.-''c,pncO~3{m]?Bi% 8˗x.OM̠u.;~X\׀5h~WlrFij`X'&udAvCP'\ r9ޣhpJdD,S'J'V%@iua@}[ WlCQ!LCEi,]dMq̭AZGbוokfʘr!th2`a&dLm )FM=nNդr/1O+ K:-zN8 »W٠ ؎#Vפ'~FsD#~y`b lNk_y}J1Z\jIƠ]ٺ-MZe&bX$=<9:H=W<饋uݔc,o38 |xڿvu*M2rEnYxdtv0 -{tcSr]IvDݖ@ WF{$wBVIuh݊Ãn%h}i~Bj%\$< c3Ld u}v;YdVT߬ɛAp{#Gm-ؿfǩLnkBxe:!E#HaL{ɖ2M &ޚo${n;xtK9? 9O[%!J?͞rx/Q: f_]u- ʝkdکZ`O_m^Vʚ]@< xBϒn\1:N$FgTٻ )=}.Y#{^EW y lJ.wOvFo=Q{Yp7l`Qs#ijy69uMnkM[T<% f|[݋}{'qHw"'-[O&LQn"@3r=( ~TGnCQ|] K%tcd1]FxF\ F0)Bه+wl&JO%EcO]b 4ED"Hy~4t7 ֲuh Ƞz -3I7c=QTvUn0-)뚨3JZ[IlxxH8z3}CА_mvE4)GgK*D$nʨh1fcPQC $:gB_LⶖM<5[Xƞ 񢋙7RR0A^T7Y+%jFXu ʋeRu YƝ{8NvӭZ1j#Osߝ :V/6ӐTIGɬpB5&P}:=-&#М3Ņ\]X}Ѥpq1:4ȉn-cʴ&H}@4&{tg $3`?.$[S1^)Gg ߜލю CFS58n\ .k4Z3kd6/edt/q`  >Xħ/L&V$ %L➑tY+O!oiwhXEe`xsבl={fuQ;j\lqf-;N&rJ^/=+RvWRy" -"y{ L~}ogff("Pi W^ozs/oƝ6*Y/S$aegScU\uc&yPڊ8:e KbNU[%<o[ ØIJ7*t}Si@5VM/y5Vp/*uC .ajaO&NAOgNx7)q$廴.e@> oHԳq$\SjE"=oǙ;u~ibyj OHۚF!ICvINq Gpc;9¼`CUf RȾ)q8T8,ۖ3 pvVX}gA[_ڊ,QPg=) oc#3^cW&=x œLekXnFȴLE&`MS]um%s$U^):%F0GO'X̵" gԳgn6a+WظUcKAp[e;?wg4?RUMQf$L2k)nNN#+ggGήXgeN.Z;i6Y^ܥm<2o3t[j@CD|R?9% Ac@ML1d%ԦE3ELz{~*(;OYoW5!&hA3l?4 PȡјVrp:pdZ]:n-܅/g LΏ%F uуwlm=ˋ",*vC 0N1<-m./s43Mz~k {IƩluFԥY47r$6r,BdHG~"gP9;gz 7G9s'|F¾vr܄A>"uI[+\m[_ - 58v崘w^R H5"PO3w[ 6ЪJ8faKMijR`!a-ϷP2뚟q4Y ])SwJ,fgk @T2ι%ja|:Gc@޶cUTS-9>󍫥m"P|cIP+ury/JX' s#ig{d kP9 U{r,ZIm prZ6`$0>,Wۄg!uC&H@pRcK 煒(Է*TJjII_/_Y{in=U[nlt;qyj' k[,TY49yE?Zb81 v/HBВyV㷺{yq.N'g[V& GοJmMf2.}'D<+Kee8Q(bKFy;o1}uQ@0E Uk}2l4bl$;2~)K;\9 ɬ(,{J:@头E5pTQG MȠ[__KMnŶj 0Fd6Y2~*9 #J -~f z Шm=H?398M&rmHv L >xj#(H|^T->Ri3e➠5z/jmьBGv{+|V&JV:_EvlʤA|T8kYϯ!~ĖyYzϊP3X 9ا;lж+J>:$`Hн29oQypFSe:MQRk90^hi7(^ CPRF®U 6ҕ\dIsX͟&Tj$>\aٓ0fA#^}d/9sdl\9I'UCIdrj,I?2pQg>6SjQR $1@[Oivr ./ش)p;xW[ܗE殟t3-%Wn1Oo-M?Vk8HmnzsL̗Ԫa%KA=6{"JΕxTtYp ρB+M-o*6i<_?KNiC|6waV:c#ҘC:wd>.+y{Њ2JZuO m ~r'饒a Kˀ<24usڹPt`8579ft_@ Ñ.i BX)賉`ƚ@AE`H^RZײp'c }s~j[ $hdD( |#+c9'-̘'& {F~Q'SEGs(-O8j~4w6FhTA/MǬ~+D@h[@|yn  BKk/8oBP엌{Q"6h>.RZP!Va /m܂bDj~p"4 #cV)5RtL}lӔF?59FT70EAꈨ&jA!ߛQ\ ہl!JRd6<эl y-(gH.ɠ)_=/I?>pڀ5h={ȁdXؔ.g6 m@0Ow*ѲS4IPWr= 9Yw} ͳ䙨̲͂ Tt {"̂/ŽYQu %*] /&_JȺOr1D;d@Z F賡JZ[r+eW,]JFԯY3%]Z4E8NA0M 9(Ε LABwp=ޡ@ӤNyVMtQ: h<Y+{lpkKU 3S@a:GswZ.jX75 Ѽay:%A=\u-#wKnAa\3_YWY\? +k{J_0md-Y/v0JHn21ju@*^[A6?ċ(oc3 ^)?"tJ9!=qWhn,C g^T cQ1phwdUW- *ig2إ<I }|̋>.!m W`bXNrV>٘ 1w;!WlH;OZ&Y0:QrE$gM0Vq0q,$t4ik`=+?g9_(0CaVPye7/i&` :jX gP8lso1,bksfE?*hK+mJjT S(RM% u!O&_gHJؖ%6S<:rSwZLMU>rBoI넙"q]\v PփWU;O gAfIHYDAc}+7sl67x>"9Z7`2G(]K}HL0 )h.8)4P|" b Yߓt눿հn$ tqu2pރVikS{6lO>\؏Bhyzs̵`Q"zw.EUnoO_IGKrZBp40&̐^Vw`ܓ.s#rj 6cY~i٩?iqKy?,ctO#e 7a `/W^dv BHfG3N:2W+ Nh̘ ̼|;d6U۪R>")>yI[hWxGeY `NՃb.)ƄN 04tHj`k&YwQ\?[CN|ϒtds68QUNA0I)!Ac!{)1hV 3Ud⬦ ja."$(:bDiZא]yQH]39!R|]6#fjDLlxw9> pƭ+!Z!A21 3#}\L,ͯ} tw;ҥ_mqLa=NYo׽䨕E&"{۽g<;28$Vv/fN]@D3Σ%p.;Uw/N/~#.wX,a f,$#V+؉8ja$||g!䯊l16Qw(m/ jR:C5iƒR^F=Y5T=Q 5Ɩ;P=<|՟OXU AbjTYYgxMGX;j x J q}q͵-)OƇdf؟WOȦcUc.מM^yh"*/ TQ"Pa#aa} a t‡mGb 74-zERM-TI'Hn_cš̂n7{8y..+_.Gf&p/n{ay&YD" ۍ5}M1iVkwHdH`#mƯ+˅wI ʾA\w6{t_$ѽ6LlZk) )nqYuPqDS q@L0㴫8~S!q"wTѣlSyKD OZh[B|w *'앧,P/f^tq|K:ĺV㱼>7|fkOaw[o k  Dk49`>l:Z#Љ)C;ʹӇ2~/7PC(DA=>~JxT7EUa{<bTw33] JAP&WHZKU~c:^g*~\1%w!3fh(:$P(aY_ezЪ;d* dpAlPQ̄ͨASNw ?s\ ; N  (RL<\}Xm8;`7PsUB <΂=8& n܆@6ʢFDfjk3->~>H .߉#ʔ Cs8=W)81%&b0b9RwT3s$- Z;D]ᝪjsHpde?I0@E /?NI35uFFHźٟ R媙gyڃ9|6Rڹ3Y.6 mD^ g^32jq o6JEwIV5jtץjtBnDWtj>Q߃~wr[,VP@ĻF3@ISz!0=a?s7ƥ5c4 ˆ f~-ubZFpŠ{g &! GWdt3!_BDcp~ɌF9Yn1 BpÔkv^($Z\b\L$A}cKEx>\刷)ƏFmwU9 yF!8*թ[2Z.Ys C>r#Oc%Km?N(4 ɹe>45WE ^i -SN{s,gVj`S liM&biNVov] ue]Ҁ돚F[ׂ+-mTZTA>V V)xq̕NVY3d(nlQfQKJnOypKq NR3hk:>gy4>I3$$ PHäDA&~OyP 0AF2@ެDuv? Q揓I6O\/tKJP^>=ui C Dd/B\6V+g˝FRJƬg)s6硨6%6dboo@S{o1񗢂+J\EG!5/aqt*b@/W+,D=\!$5w3 ?TPD<2S`oה F:]_Bp,{淥bSҴ׍W{!~;rzs1 $ ʋ]KҙdOYL!pj<  E#l5&˃S? QLjpz4JkBO i`J{F=}7gOSUC H{v؅vSB\SR~SIfT*hD4\ nw՝y9q*s`Dмt\/q-G͇Fs jooyՈE"D}G@g[j+ֆ+}_Yژ+bB hW)ld:a#e}刑>֭. X։dWg0~[N}.i{>cSʹ'|0:QJQX/\d2d X ^` d=I 6ۂ%X?QW2/mLu .[e@]I3']#TimNc ^?@uڱ8ړ'öcŋ |H7}ؑn(qutuľ8NbΝ9F W豶7Daҿ$~"'zd[e Vhr40,Mk7QQ $P9NDr"o@(ip[UL̨EEg!t'4&޶\}Rx)[ .V0qY2/ ƋrE8 $BY2:bV"T'dN[+$:aKA[!o}4<Ley9;t⻣RxNMQjt_%Ow0NR KSC7Z ^]xJLj6 By|TLW;m~j/21˘VK<ĊnP B^7Rb0qg$`<^05K ! Bmn _gǵփh P`}/M =4&bVESǃ~ dߊe8!PH'M\[D޵>H._R |VXiN2>=6(@Nh-h}cL1պ[A̚/eߟ-d-&.Au..H0roO[(>$YFF@nD2ǚoZ77nn{5J1-Jg"sygzr9L37m_L<yd\E5l7AG>ƃWT:ӂ*H`zѽ#3 2p%v4 6_)W0h>(zH6opck}7ƫjxV5 K~Q6򆬤SJt@qG[r3 ,}9ƥ} e7(Zcke5,ձ"Bԩ'?g)%~UKT o\trJ@=A֚!Ar@]yP5Σ3* r"y㏈C6$me&߬YGv_tCLd7BXT۲A//-"kӅi*h^r{r0oX@1$~ڮ?`:$nzԶퟁ14be~zv8_lE?YOL,V!n)0{4^ǥ'RSApKbG|%GOZ̮T{_F}qaY>Ub'iFIjm ;σR-@I4ͥ-e): Q3 ]-B  ;W[?ˠqSvKD.ԸM a(wXԎ[: ?T٘[6¸ {9Fm)cйaFW lYیmӘo l'rb<䡰աywh#)Zoʬ ;e#ei`3\ÝfA0xJ,c4H$ep}uY3&?,02"/5Nx\\69WQ[x~ڥ"̏C&hd8 _T7#ĬK#NLrpe\?KG=p>#Imd`{E.= $#BD %/By 9W̫]=Cft$>D<n?eI0Ɣ_/Êcֳ'T`?-u(.GuUVrh+Bv(wAlvtC,PP[D\t ?|@cOn٥ 7-߂f_$+X_9yj!->".Pa3C$dY?!U\W%DzbOӬ1KQ/^TȄsOH3„&S{ %x690,pn oa8m1L EWӵ,CYfȻ^λU҆ xP e.: O &S;z(2b_vKhk`,gEZ-q21o9o6!~p oUwss|!%%mBQ=jDfbd<ʍ8d^ӡW<1I(3Gwjy0⸞7N^Ѯ_tdӢk*u OƸŢ7 u&BOy/*~~ N{J^ 狓$.+ήK;*B.1Ҍk n : "& g*yVVQn#C$xჼ~*}ѪYed&[ .l'e O"Au\e 3 ͅOk(2 %a)СVjȬAp y2ULԛ]O99T^qUh1/wk0gh'?$۵u"cztp3Vk%Si ZψK>N`"k6h"T{@Kd8J(wXGn[ <ىǟd|& }J>7y)Y |W$7da'oK2m@imG( # 2鎷NPwrY Cȇ|Q|ή_H6;#W/u^> l1~"+̵ޠ'MFI>>el*.ie-|4adHhXaK}\T(wVV4,߄J49kn%.0Ķ?@:!d6ÉoȖF/8 sg:$J:thvY׽ƿcYI{Lǧ^kx+Q[lfLL65M+ل& 9Go[ D6 :bQ"AbZsc}0mOŇqӌfY\>]8=8}"P˫a7OiWׄ c7 շ1& fO(nrY~6tm#tIKkw@ܮ|A,pWI#F* |]qH\ •9(!J K|I?:W(j=,\;ɨS>?̳ûl{NYO&BV#u4Dצ䵯KT"l|X=uON'$EwzitSWgHZ%U]iF :o^50#nG暤"szlck,> w.mWAQ3kMB'|&7XBaQW÷B֙hor`,SEPG@ѐ/ڮwUuu"M w$֏Fqq;˲갭6)9 Z9%䮮9btτ {ဍp9̂`)ϻ6B\3?r1|;6@ d>:|M @|W^3endYPrx6;=0ZEUS2s '% ϣЈ32h"U'"w˴ixkfAεƌU S}e|=sfɇ_/4G! <fBFov8TxW2X-Ҍ0/ cC`#:G0uoas?ziq`uy {L/5/Nݸf XtHuԢAkCzF$[F[D3C*~Ȇ'1^,n}|D@ϕm8kX~kj2ȾRZ<-"=OB5!rP!CxYWcEJ5̑$P?04>+--'uy2y|vZ  h1c'ZՏU(`k[`5h3!rc5|t\ C2)4a#-;&C>n20cghR2hQG Y0!nu{!~x `H' jPŇ8 u"^J>$B}eoj9sZ-s$չ0(&{Wc"-n.}[,2 q{zݟ)GM` \3'u+ hYb1Ts@U qP '{J(DOyBjg(d$>Ph+ȭC&5O8͹ bRQ0'WS wpp5o?iZrw7nGʊ,[2]E4_Iq?oki+3U"BJa3*ZgFLtә'h?Zo3E q446ƣ;8oG,4^}7(};Y H- ^ 94ccئIdq~ʔN׭A[peC>A&ٳjLt= SI}5> M.|/i܌Y+-I኎ko=vj߁T Rg!'4X#O*eVco=d_ 3ŜpZi|y`DDG; CT39隋q /iDj%yqaՠE|C:X4 (x6-XЩ؇EQ<;q $҃gnPf [~A#ԉ-*U`Q,O>ah{lZkdo/V ViXzHs.](,Mw; 43/<0AXL湀jԏ} 3s)"]bF ;ezOgCNJ,5pӭZUc1&J:'yد,b4 ,ݳ̻@e^B=e\rfO;͝~<6~c!X^YD/XT!ǡ޷;!]텣 >Ig`q0v'qc#dp[f$$eҸ=+GnHJ))mj?o9nPBs$Ϸh5;Qc)ۿ'40Ƃ9ha?S?]N!e a&&q0ZИ\G&LmVиtab9%嚑2gmx> )GP֟usr} ؚKI[ Wl5Y5LvKwTNW5.pT)qs&ƈd:N݇F;6dL\$bh Ȏ6t4aLH[/R:ka^a$\UՐK? 2x_u>V;EOe`}` }(ݤJp^P=Vh"b(87Ś-DGtz}AV5o2e%Rnط[f.}p.Kһ~ԉZbe**b$ ?WjLX'ƾ p sJ `5rppӃ r 1ϋ*9iz}Cv8ȯ0k'm@Omz~ {=~pRp.B]`(~EB9-2V zYdß^Gy$,3O,7I-_^ kq <( jt7lw1X$c] !2|)ͳZ -v6M']f_$h֦gl%{Ԃ2ؔ5И`==+>1ѲWԷ\]2,URr 6!$VIXj=˴ʨsfo ߈dz46W/`#Qyzb)iiu9Lbtj4|Z*Py>1Fv;̼ T2v/f#2>q H5oFiucW痝IgYY,u]RNןgCGqڨб['r-V Z2qjCζ _XҚyH2.? Ф9C~A1Bo'?eԏHc)tŞ^Wy/Y/h3 ﺄhm t=Ee^ujC_@!Z_0vzAtJ7%r]m/E$[_a\8r^+C1ׂdnMQ;u}gܩU*Y5o`8q{lFjV0;.Zܿ8`桢QJ 197iӊALA=xa1O\6ų /) [ȥh=SUcq HSM )H'BpV1:W\x#.I0y.S5};ŀO+Mv-!_8tq?\XBH#hI OlB7q GzTv؇=(4Ё& 0A=Nִcgf6g,广!4#^Ta%?^aN:3פT,-W: #J%aʺ@u t_$7`; eU격`FsU%1=MغfN>"CRCaSagɋ~)ir5CZ [qvql ~HoC@;w1 DƳ`f$rK'!դg%Vz3<8$QM54c]יo]suDq{7F́)/y$iU+ 'zyY|r$U_J/7PHjHx5TJKVf2ef #}qUiR%8^ͤlP w nL*Tu QsrTͮNHfg_NXV[]LyV+x?GLzAAS@]6?  ށ O%W6*Z &,RnAouh,Nlm#$,x猶} C3L֖wgn15T5[w]KwpiWA5i_jY EcGX™dܓQ]o'j_t{jS "w ޯ?꼗tRB%Ry53j却Hѡ1#.FOppG*NXga@XRSݦo K@uk{w($ebj,Hr( ,sb#*ng}׹jMNf¾-ۨjU}!~Fqu.j'MV)CcV/m0 /vjAbwK rW: I c{U&,Sk.?M1)]yNbBA?ێf؅Sꋵa/ZJQ%E)pa1_R!ݾv24c=޵*\CN lޘ69Ʀ?3dT> xnAKED.n焥MRT/SC $[eACѧQRWP{ c)!=YU%ʜhq\G-bg <)A[.jAXZ|K&4&aQ&ɍEGF$Jpͤe:ֺ)IN_U<N l˳SFp{/V%(GYQ\'kFʛtZƍ PtY p5cbjХ[ _ {fl劖@5uaە2 .S1<ը2dHwROHp *~GQ&7< f38ZQtejR8[ @&g, HFI;6}CƊ]Cï0A9f_VÃ2R̀b-ۉ?JuUiiK7UGe\ h3vQa\(_e),T_{=I="T+!L qwG G3Z~o)6?2Fx=\#trOTN.Ȍ,q8rߣ3)8-d>'8cLH<Ҫx':K<GvXܧ>1:>?;X,k•qˮhBW|Bm\xh<H_ciB)eqh z5$J!Kɿ%+^V0q0Ίris:Et)bwfMȦ*Zuj;}1!i@b'6QZ]#Mbo/-&(#ݬj(L]☺/ 8x~:,wh kGM maaļ0kBun8tv;?ʤh]3U D]x UݐR_uEK6 #uEƤNfauQ4QcKg[ifhF Kk=O~z(܎$4y,) jUDmfl6%jxBP# T0h}G)G&‹b;wd{h]-{Ϭga`HH!,Ȏ}Ϣ1F}¡ xbLO' Џ_77XRȭ<,dukMTyYUIHTj}GhC8w†dB0 Nﶞcd/V̹*PKK,4i1t"=l5?)^!TհZi6]b, wrX1XE 9{Hg go J7g{6W" w-#hO_iո%FyxѬOfœ J {Z~G$1 *ߞ+]!`-UVJjڃ}df81 : !hCrX5!bNm#wiKQ(KDDPfGH|{@o |HxvWa8 O:}#P|.8IueJu{:bP:,MA^xk | ,4F1;_. MAЋqG?#]ZT0gSӶOBu9(8oA--7h_߲,.6:Iw5ӫNI-@[<.$"`6$ZZzʐOCelyjFpݮ/ Z ֗oY9 Yq!^L©#8HH@49}6̥y(7ExG[PnG|CPBtI'uwqmRrџC}?5 o {%]<'A?J?BxS]>l1fӜ;^;]_}QJN:{ju{tf-%M]@+4Ҫ6'$'S1W]i6zIjJ`A⳱{%:bi%RbuֹM> :{>R*aVp-@pK`ʏsU9f vd qTV`&fc?`PauŚ&v-d5 q 04 3HA?W.Z} Vu@@! 'O$Nzdp8ѻBeС S82X(WN}8l*p˜Н ܯ~aGQ= w y~*_<:\ oYC^wV}D8$J:ڈg3O3-  Go`fE׽"U=(:2u+1%C>71qT%xR#4SD5ݭMdgO7χm7ps-8ݱ8 $dp 71߰ ,]qћ%2|ݖ!\E:)'œĊ)mWI(6_'0ܩ])$2e3C'g 71{WsRBGרz%gy~ L51?!0+!Y>\y=AS,U4ywiq\кc:=@2!44p0}{Z\~#N)topPN/aZ AAX/t{e3-ܞ՘"^m?#4, ֐N GtG 59ү;@E͎x޻]@Fo`]FV3@beoވ!Ѣ5QL2Gfȴ]DE/rc9llI;GdUX!nx!eТarsZDȰDAcvxՂoN SC#\çfb0l/o \xf o4%A 00e歙WgK }%TK푀;v`ž6p6L!+TpP 6ۇtNԩiw"T~1 &N' ?{:2ԭ?̰XȊPO_)=m:.=.o(V?_ $!Va죩)-x$g(mowzVd4,O:.+ˢ/dT`OBEU3"vDIیKD5Ăwj""̙^v/c$k 7@uX)ETOb]3L*++ÀL ^5'8seSc&.PXYXb$K! I|'4|İI&;necX;R6H16GǷDԱ #dxV_ ؖg`Yg>&2&M/PxGs%&/׽%6K)\]GD4Nz7mxzk׌Kk;l WQd D uewux /@ly!F>' Rr:LAQG ʨjάqOQhef@Ϣ!c[IP `o> PSCK5 4f}$}Y 52T?uF=;kGT|̠e̱gc_A \󘨬B4PvkEZ_B~ <X&2&rX{ޫ{Ƒ)B ki\F}wц|DTW{A 8U V/mneמ7}PGD]N3iR1%"Hn2EfEtH)Ke"0puX~eE.k,䮕9WC)p04Һ4bߓby%tqoB\ЭAwg?(=A\q:hDɂ1kl gJՠڛvVJuBe@BXsYюo\ >~uk7@-Lu@atÇ:o5ysZغ`I!]wS~sqU躇*%y}i ?c$+!Į0Tb0kF @Ž / aFa3.Nr n oCjEC(rs ׈u&K; (k* !{&¸Ż_,O}yrQH]»+L%\DTggQ+h2!u^4ZUE/U ~x]S7j}a˺sM\Adrۥ,8B{-(}#J_ &?} ²s,̓RpHBNسw#6}Q \.~}7[{C?((&߻ I;j&:xG_ &$kJn sQupBs<qxnJC)7Y_#`昅 &Bۗ{Ar3P^#~`ci1Ma'6Hԧͱ^)#wY9Sý(mz-FR@$WUQ)vZ0Sţ1X>rPf":;Kwhx55B=UhQnJ)~ Ot'͠[-aG6nc<f LRWc9M;h;]"?$-ڬyNo kbN0TK7e7عf V6)%9Y@@qH/yN+Р<~@ ~V{arW}Kס~pN(sFZn<\?]Kgo)@r 'd?wH^M3mea).Wb7n{*C=D+gA#ZǏ2Tt!Dr9st$06ҟesYQqv{mvS&駱k{!bM!*rgZm+F;a0Ur s 6V10<3R6. "M`eF=ha|e! Cg5(L:.-Js s PXS'F2T#H5 v5M%" om\a`_, Gp9ՐK+E)Њh`s$ܓ<8pN|p4+^6ɈűEwU,P6KQd&$@ЬH)M/;}@SB5x>9y*Bn,78 e}D6 YQ/Ʉ=  :>F,Kn [[csQ(SWI6e{I7;'x/^|8񃵋rj,k٣&~# w̦o0^VG8Pn2|ӡ >c g~\U¦VeC: 8í9fhAcL$k(@c\Qe.XB@(}McT4y`:[3wn_bl|yo% <*nidn)Yjr{5f5ۅ~U6L]$ya`ē](nS/5${YBQ3 = Yombt]ag6vՏ<lhȃckFapF>)"Mo2M.iޮFkHJ-CF`4> 2]3Iq,DQVNò0I]]}0'SU3dj2p `,B)b`;@tT Y;WiVdvtj5&(DkWe2YmLTb{ۄg%J{;dsz? DyfܜO> yT(rYZ ] s6-7{Bٗ-VS!qGǦ/rx$ ؋H8l@~ /q&[SH/m/ *Z G% .q( L Y2W=&8~yd,%IvMRfu?N9|W)] t/V5b$ "g,[Z93> AHTRv1t0ETŰCcnS}O^")1p" ~ʉt@D8QAK&\)=+\pI!6P~r'f벫> /P^[*Lfбmv ~;ԑ$b ^ŀ<i, |A` X0m@ " -ڒE׫' h$͌-?Œm3+cޤyꆶNaRw`'ɂJ2 Wg(H^&3F!?|vbC9d%i |; Kt!C}[c/CÚ'9zٛ ~4=lƲ:dk\=DiF'7ӷ, B|Mt@Xo)B)D1{* {{ bWi)fwM1!pRg0Jdg(PT%?;4lwn'lMAп.auKk( /O6?tisk͸a?Putc5.>țS{(fG-gYCM7m1n`2@m%FfK.!o;V*S#-o!c_{_ׇSB0>* D&k rR| ekD@V}kN+9SKwմGƞ}A8*.9 ƽ8Hk-n$x,+|hCI?X7l4Vv&)ͤ>;cEJX;.sơ@>9Bl ~v]%]AnC+!!x61z>੶6J8[l*k[Kqwѫ5y=vyOin~ZnG" OUw #χ-\@:ʞ̒r#J^Fh 9< k}D͞*:>`53.>v"3hv}$9|A! -e_Xۓj`d"E-fS 2Z9c:Z+ĭpsDz\ς_?KЖ|a1sk! M?>NF04 y_bi660.d땔PtjV>ym?-zh50p%@&OYbDqB'T{%0# F1<!MQ2= \t6 WD2 p@2۝eӡh$S65[Ed)\L2N2 hrb.Ilq[V5"q{صI,iYd8{@qQoxf%Br6 G{PJ^N2p/?|yGt *s>>RvPQsc"Ϧ,Ǻ.Q uF߿E$TA)$?LػyFN-DKJ`Yol/}Jq!G SS2D`'Iܙj);a==D=Ů X$Os"S +@S.eo3E&9ᮇ?$^S\~a jg{j[xU uYan2?Q 41bxf/mfU9-rw Q5Dlk}3 o4YU$tn%*aXΣZu IJ<-ZW;$wC@ )RIВ yRƣje6ɴu-"XRrF\|jx{"\vLd- 2HcmTAb?NMVً"I["uudl8;1!+©ܝD={Kv4IwyK{SD'O|at'*YE50O,+ط \B"lv/siK):zaG_yN"w׏dAڪJ ir i"+ŒMf{ej뮽XU0l|VUB 0Ưn2\B-R#QTp +B*T_2xH+w I_ݳ25o0鼮EAAO)CZ/Frh썵׍ߘcrĉ(uӿ.#H-E9B Hî!A[zM}E D`,`fh~]lR.6;q >OO5pU_ZsԎ72a<\pTN*aehY]Vc(E失GF?k dbca&4ĄJ߂7fG4,J7^JwȳˏEсbe Oav 32k )9/MYl56nJ KL|Ch1=wxS[*Jt_<;4S &#Be|VB< M (uF+\,⺒=6wQMoN2_&$7'Rt( BF a ++w-"f|GdO*YdaU& pui?ߏ/ S?z55_MegtEYqyK'F8Pȏ91,ԺSFDW Eq\L hoOi/ N*1R~xnIG,};X !%xtJL#!͙Gy#|RھMz2NJ|ix*)"` c:L 3㤃]fuHx-ܤE!b3ti,ws-h YW&PlW2K]C),T`_*7@Q߫MTM] eBh* sRSZI Q%NILMX|,ə& Ew/RLhp(/I{+ pm;lCc!!/KqbZ^0:e\&!5".h yFO-kC6k)@]T0WEh@r?朾&3av2T lFEgҀ +>Q)gy'Jt|l#O ]JK)~̱ bO4,QB|kջx"^Ek4uVFL6?4Ѕvba}pK(IB6*9r?MnN//2!8O-^O *y-(WD-87ud־WyyzzrfqncL)& bI$Fy|Iѷ΍h^9Ap#c^I w?|^ չ. WI9j͈?[1eR$g9#MĈ@j@ Y)8AߣN>`/,z^ ޳ h#7(YU`=̿C7g`j 3fR_@VoC%tp8|O)Rb=f6=/<hk֯M$OAHaQw)JI E?~^Y`ʳk&i4CvG:,`SKHy⏖qzrkRql ]eL&Y_~@!=oHòAC<  !Z :ր,\7`eN! 1Z;|@gqWU85ϹJ$sq, $Wzjf(at%I1BExKQvQ`pe /&[t&=vJ*QS;Z@b}/G7X= X.I!`ƚUu:%wXԒ=ܣE}̄dZWUv6"=Rz#3@P? *L WS{ySA+$ B%n0Y:`v"x54N['蒦rH&8ptyiۺ& \A«D3Խ/'"-Jg5]h)ҝ6Ho A K8PJQGv6 黔̄)z{ēOǛ/ճ}QOn9M Urzf,u E8r`j1~ͯ߁HK1K@((Kizysn* )iF4Nr0Ɇm b JUi^C 5vJ<"xDv^CUsz'E3v5BnW^JqlϢΏ{{I|&\9*To&2=ySߖCMqI\H) ٴRaSWso4Ĵ9<|GIf,p%Sg̋4 57 #N4`ŚjfCs;Pͬٲ|#XG[1oWi L^|a[Eѻ{^n)$s*6V]DqLDD RSNkV''ѦCĦkdKs|( :.J(8la],T#n~rV|=A']D=5apX J%%L{H ^ ,|]-Qu[5ڴ'bu;ֺ$pY9/܀n.{ ӑi5?P?% 1Pnh)Kyg#j[ =#ɧٶf*$=ܭZkWEuuYq ud"u}-ᝮatc~Uň Ah60 FpbEr: kN @AJ CsnxF˻vW#`A}hXsjFˀX8 7hyP{l6QSR bk i*C.dhErD$ 2+]cPY' $M6/F;4‡HK!&?NRFrAo\KgEweI)Üv pĔ9#ǖ,>Q!UL\ڶȉ %tsdX$,a_bXE&|& qnѝZa}X$s4^W+n-p.TUz}!";STdJu;%*yodm(ٳ%o3]IAMys Tx 4N.ܴwni S\1^ގLjJY;j5Iӻ1S4jU͈Z 3`~>{b%;9M4R1MRe $ʱx (܀y"[7 48uҁ{e㍦4{ew@tAu}˓DfɾCmrvA\]vI3a[F]i41N26Wc* WeZ kKIjuJ۲PV>U5K8x}[C* TcDޱiK"!T1sz\XDH2B3Zm_6t{4"1#jZ,z,0G O8xwT;G-je-<;@vr }it1FWܻˆ3OxvcZ9^ȿl#ڸԔ%4 T74Z4]LvWxNlJ~>tw#wR%5ޗH@.~/(Z9U&m)Y Cӏ.˶Հؽ0p)9`!ZCԛ dbhؑMCYF4=BhA%)WL )_JJ)$@+`#e&uHuR`g{Ld0jei!jN1-t^X9(7j{ U_"uAL,^ 򳙍w]T:3JH?#61>+j5 _ID'|ac'ג8:^c :+.b,TV/nJB܍[*pxg|9m|?-{B%D5DEDž|<'Wy9[7ĩ؟٫C.qt=8װu4k?^EnAXDT׺|tu);>{~+܈h]7t)ذm<*wrxOv w@ItPi@H1; h(ͧ (rvh'qsu_>n8rkLO֦Z]0aj_X*\Cf2`RdM#W"{YsL-mnh<:29T~-©Y-Zk*n?N(g i @ :Y?x""H}k«\ kTM()@/UF=eT;&}Ndueq,OSvɛh]W "eucbTa`ZhrvXj_"#^Ƀhȧ[ix("08ȣFNSۉ0b;jа hg]X>E45UV;/QჁuS PU] $/Jpϊ\{y sW: cJ>sӨP /c7٥Nb&OB\V{nJ̝Cg2fXoiĹm(q=~B/w>Aqw< >@'= D6|;1v"Ԧ{&@]zZޜFԪ>uQeb{r1b,r9~cYhh H֏pBL=I(A,(߿ E"ͤj]ˉx c&"aՔ>Rk WbVw⡥M1 ø o<+D]+^IJU:5=f+!bhk#DDCwzYld&6<`MـTUL s}soiٱ%@b-;ydhjܯlq-y;#[5*~ e u Fv5ge!s"plݝ4(YK{tw:x?GmBƇ ԙ +!KbV3)-oJRcʨu%su.'c[\+wV :^OhOH)3%yEFd/ sF_F2lY…:[-Š]tl~SY9216>Ej+>]%]Ud|vkX`!'XaB&^ܮZåedƛ$s3NB*c.bt6~QitzCwF4ʒuU"OV X y/E?a c6Ov9?ߔ :#\ b̍䢱d`rbZ-"@;@CkV\zAj=fܸ*8!fc EIn ޮcxK쵲)\ ũӿVL:8TB:2Iiu9YsM>6y;-RXE;ZbƉo&h/mo8N6|>rC`-iqfė7%3t܃!ڝQ2qa=3@:9SocAoSxoҚO/߬p᮰N̅oy(*Y ̺#M pl a{CeW2P;Hן KT[|V+]0Sp>h8_  Jc*N!qYw zDM:ʌ#dE^ڬnNZ& izv{XGcwzCg)u8š -nr8G{xkոSeI?]n eE,F! S>.3\ ]*{ @)8QtE ;S#jV$Cu uRيŬd%X@]92&K rq`JjQLF3;h nܐn Zp^\YHtW=97:)g^*7[ЎZ͎˝ĉN^;4#+؋kJJBH=U[肒W,4&B?X0Z@>2嘪bĝUC/i՘f̏\epdt8h~:w2Iekb=tJH(^mx_B `'3')Tzy3?^ %Cvq5 #o>QBNMb;"z׻j<0`yzʼ1X$q3]rG TsJ70R:<[c kz߭C$ Gγu3'O x| :mH[IKd-GJ\^& @ƶ^ƧvQߗ'*.vZS8)cuV>w &h GPheBb3d 6ݺ#Kf~rԻzc. ]o#d>S2LYjW-ݿ]H07ӺU^7jϓ3<ӧ)tH/ Ґ/q@-=$##;\fuB0|gj9:D47%yxf*]zy99FyT36ࢇ?ZQ:ƍيxy[cƼ/}b~ }_um:6't&oL5.HGXK%&Qp>'LmQh3x`<6qH쇏șof \C#=A\VS~p 5pرzdd@Htq2W~#r)^s̆5'p~;^R[|EZb͌5蜕 )R0@TѢWXcj_=^~`#;Rc)j pE!o<"Q4ҒマGq>Inpfjbڳ9:xd2>&i% wud1%4TB2AO Tj/_lS8Cz e> tk$hF|A.Çwa9t a }уHEd }%vpw6MJA0X n(/> <^T*kim q QSٹ㜡0EBVo=h}Ũbc 1.b6/ʻiۤCV$t*z be@y9u?dm, :O@hp[ g$31h1G~VW*^ѻV(M|?G>}-ma\t/\[ ؉Є mp3#b-Y,)uH(1+ 6=y*WΆ[bMB3:)a [*p={gQz taki%4-9@4(NRs:4ZqvCbi_cRm XPf`M'MV~Ar7t;c1w'*F~v]3gY|ã'P?E5yu_A4|AA&7ՙq_ 4$L&R=C4oYGȘ.vuMI,Vځ54O>癎1AH,cEfNN.̈z|!rPXwK2F-ZLyQY= 2nwnFK) u)U G1 5 >qr.IDgYɮR 㼪hqtwSk7\PT;`ЊhcR~i+"-/c,:o-}OyREz1g|;Ag}MFV)8T{#㍁49W aF8CKBAK )ꐒ{-4ĸћhM;_o]q .7P&WJo{ E +ТUbO}U.x1$q}a!|΄ץTIC٘rxSY2K=IaQVEǙMZ=@hYj wgKe7 xI P~R ޚF&gLGݪQB_eFa7tG:m^ JvIWҊѣ- (> d^d4HsPͨn`>0v&a1fo|xҳr&aj;`}&^nVHs}T0j+hdѲc#QQwD Sl^tMSKgy!<f=[ǶHz!KU^;Yʵ+K`~!kzyk4:GGȡs#uSEv9qv?i.^6ͤݺ\"^Lڪ%>obt\(UoKHE83C*"_9N;F/ %ڭ*`V3\ƪ׷O}z&h۠볶:聋>ZuKE8^60/cr3- N|,8(PE${hkDgxSQi(PKt2Lxs#Un=rX =IWk|ed#-@c ;׫O[k*wK5Wφ}LJ}Kfy1Hm37qo#<۸uhgϽԕF>P 'zh9].n,a):LD1}z%bi0%j9s7'+0Q_2Id\|L[*F{)+@Bv/QFIJ#ZIJm;],w29Vn*51^@ijYnFH gi’iJLֳޛ03ۼ=}zPA!,xiSD5| ~bݷLy h>o6va\]@5s X#ZE VQoEk/Eh$_7`9,FfXgX!Yb(`ceo{|A &Mz`/)FdX[ۭ ag7XЩv~0롦(  zM_oDȖ OJACj5 A- OTptݤYm .%2/5F{R|{pW'V]5І}A4 fDa#Z*]dgId'LtdKE-dxޤ*zj:ƍ 5?O/^(DNdÔܘxѷ{-_DVrmb!EÆVv;#i`s|ڛ\gvAeNҲ>w;.m&XŨR_tT/I|3<+ TcXH&KUGUn)ҭ."nZ2;9dzٴXZh+[YPgtY ET r8Q~^$ n0JVVF;@}Or&6W9(Q3@)B}g Vփq>xXw^̷B+:ќ_ҫG+&fl>ɀa( nl,pQ}1P{_ȧRuN<а NL^ 5kU(1NFzMl3g:$*G,S{} mA!@QbkIe{F4&jpJ}ͺ2wgDJPjm=G oWWgZp}]tj֠#r[vʩn|2ҍB?,`7HB2\s%+4]#&lmJq/♍SDYt V{}d p9;m-*}ZF-Уuq`׆}1?p).Tjq3؁p(/y1ɱch ~rPJ n}GdGQW_ߋ=Dӏs.Ya)˘~5ECL9ѕN[{w>d)SZsd^;o{G#f8pg #x#v9֤nb9HQvO@p bMv~Bkxל 7np{Zѧf5iz!ag7^Z<O:tB=Z<5IoL\&K4JJ E0)[7H9S]"ƥ!,E]U(c9'c\ 22_7G)$ZI3FF8q.k`5=2(,t(vv莲D/Rߟi4/>[堊dErvirE Uim7QⷭS$!:!>hJ K9"Lo "ZyK8q0  Ӷ2Lf.7ּߐ幖&*e?މNbG12Bd+4bKҪ!C])R]υ?rWPBzk"ih2 Fɟ)Qd*/Sk>_]5x3vFir^X-u@T&i"Ns'Jiz%y τ2%+ln`!lؕm;R"~u&%"s -:}OR`cx&y?2V0v>ye~bݴSʅEybc#S몰I)4` e+8qkJK 21 WwP3A#[NnDG_'a Zu I(B SUh3 Poi3vvhgpn d7&Qr/ MGi刘Dwu)'GKi>s%خ_-[ZiPi6qbZ( # W a?PKٔ6w 2Brp@V}6nW\RU_ZMI*3uCyoSNa8j+4־E22|[хk6.#ˢ,.&/ PW5k,+]iAyDt='jJ(m6;r4>Iey >'r 浵@ ͸(Y*Je67u&w[JOet͓3wSr|=x -.wJyVн%ԅ/%'?= e"̙lzPSijmP(0#u)vN§/pU}j!)!n}L0ӕmri l.l@LɂFr j|3M8j *ߝSİiZAbxۋ!jl(R [ZZևk/)3è d)]Ivz9Q)ْRUlH {b6quX7<ƒrM)}u|p A*,1ߔ}Zį.nQ7;?ݽOvw6$x͆v{׷2! T @֯VnBDʋxԞa"1z :RENn`ݚ_fd 96Fpq`y橗}U @0uAis4\u[PKr\3#vZe..9-!¼ny$jRm\\Y/MzsuȾg1#DdAK'TDFOqT vt?l+d4ˣכs̗l4E6ԛlCгțKJW] 䨀n>_kY^T|VFP;q Ka%Сw [L* Osh|^hDX0aB׻>9USZݑ`SZÂ\:h>}TƦ2U+M#wʩ-al~ fV/$*Bdžlh@ }eVҚ!(yUBl@T??˙?u5I=%Y Jb-Injzʱ?7e1Mx_ù-)nL' YPyF#1, >-[“.i&,". G4 mkR \~GP@xsEaFe$ yq-=4ƵF?&&Ű-]9a_jy~'w]_f HiL եhK]W77U1Qd fD}wp,?]OdeB̿4 c?Uz I<;>EtI4C-ѭa(_coyĽ1R? dUJbrF3ߦ`E;0Jĩ<|[rnAO\`Y?20j,S-s_*L>Rw,ּhi9cX(EgT 6< }1 ]"ȃ#{1iurֈS3 .oK4(UԘGnBR뎄Y3Bw>4|ѫ\m;[bz~?G-#sܯ@OLzŐշ?߷ >4lGa;pTkv癿j 帳' `]*I͕mI,0/F]0ECmq>rA.zBOxCNvСDA}VaBD"UIRG@JkZ^ p/l!KWZ|3=qW/Ёx8+60x06"nzIʥY4VYH~Ѹuy nP+eAk$A*_? MwE$J4S VKPTJ}kL&A$;5=}ezn/XC%ם\Z,h<89aeٺ$ZV?g_\Et!դP_~BP)46|uϋ2lح ld`ИSTYC'QY_ MFccU+bҥ/Epv;:"@ i"ghc.>ԍ P0_RfB_ 5]ato+>(ϻk!m!]SO\]XZ-7*!jcLd΄8?(ƑM֣/`_H7jY qcE:e*ǺKŹFSQ)Xtq쪩٠Hp_ s&f*H# Qwm Z0f7\49;I \qhXЙ bYUc+D6]Yor;?gQ x~ (GhܲbOIAx (VdZ38ut;ks-]߱tj]1v^3W_  86/ʁ8#7.(-]FcE1Vrr8-O9X'mIwhh>Æ?̓N/4uR52եʧa%aglfl2zzCr)&?hyf*yK%^^Les&c47~QFb{$[?WDl@I]u]T~b/$ZTS  sA"Q$_UV6asJsP~I4m%R:e}hgkxe#@hR@p1ˢϠ:W=AX%vi)bh][YwHfX2pU%ܻtYe-)hK8y<8RQ%|ai4;eSF0XǰaQJ {u(r0V}JlW7K RռZ".cugeY*"YI9$EIMr]4-Oo1L>!TМiR>gw8e{z L0wA#Ei(Na]/Vz `Ͽ__,m'a`OO $AQcFc 70H\RƖ IpRQ~[~|h~z7%686SXtQD7> l5߷a-b6chD>谴?)+s˹(y{cer稼L{-<4PY,~l &"y)9''So@L|!٨KL09bbJ>0&8%HO ,06V~k13p2H-hLo] qz;nV((-υL;|ԩA:"}YBuqIC+Qt6UVjeR͵[a);5 g03g׊drW]ymseqm}lڅj/+~ bH(֍%>zJ:Qq p܁cƦfB7G8I/ 5qm:{W.eCfre>떄h p!m,ܚm:H*ک|mkh##yCi*!Mu}[ Jr6\8>}k &+%b^ݨ"ڙ!“uw^q?7 4HfĔYRAkBGY+E:eT ЩA6Tk9*Ruw(joYDt BH(L" k A*dN $i_|RD]#ViH^ u]Z*7z\[K0J@a7ҧȋfKF"] ߄5_BHiaPH^V6Rx^yXheRجLUs#O쥺%FIrYrZbN6:cF?j+ tr\<28v+C7, V, sj tE)vP: *cɒj JR&HI^űXup^`yҜ"%b0K h(x4.h[y~$#goz1e]ّ^,Z@$HO$PogmVXGGV5O7eRlqHK,қ]ʵ>?b9I9fL!DX 700kmj~/aX=NGU^oW/Oh6]vߋޛR20 EA5cٜ13S{ɐS={ ʢ񜽯L{vCg_m!![r7U›X &+mܻ4z%{D\q}8͵Y.>0@(rlտ*2.@P>medz@UԈwkj<[/X\8psW/jHL[;kjc$ 2Ûdp%3 Rg7j`^鲃%Sޠ,Z0UXRUUim3ĉ2lLo]s_ ]{ (vKinw@U991$V_ `+]N0p_U_oðe8U(C)**wSlAbA(.xJ#I1N,oAȧw`L qʋWʼ'=iGqkӁ#^%^,y(!b~#Kk*_t(ώ\ȷm$n y)8nF=#9%$QT̰kzU( UG,)6̂|\P!@rpg􂢣PJނ|55r6v븈oXyM98]~[5r-Q?dxX|&^w6,z &f~\]#\0[oolDsd4҅ʦ7WwW2*]D6jT;Y$[ΆOY>߼_KLd~k(6s`xTt 2:ޑr!0:$JsW횛&'$t",l衿V;o$l]:L@Wp+;|I=QYM}z%`S&y1#F[k?5ȡ8\W_QWҠۘ@ƏCMѡm1lf@j_q d `"mT@&G-4k?dx8I>PHW!*׌i9ef #D z=b_? *4ބnqYiS0(=^*T  Jz ^Z$. D5xWFU&h )Nxk`1w[^).J{4PEc(k_ko;_v @yrWFKvͦ!Rz ޓ29J[HS*V,t/{vƽh}Զ J=lr_ ' Qc)rŝ~![N>.+\r"2Iy L4- 3zER4D9qJÙelYv9w.!=*j=3҂:"VW6;~uqaZj([ߓ%ER,mZDem鎸@苜6 ?o9|2a{Dݰouݮ ݘSε + Mo:В7O?>Sⲹp2:c7$CPhV1p ay:j-c am J@Υ*"ȶgAR `;*q|43%ZhؤXnXk^w})Ft n4QIs'fՓ?K*jes? Z\ "[g5S_X,{u! op x]d٘;6 -j(,xzs/>w rh5%6_JW8ȋ^F Op^~|~fpZjqg{^?⫻ /611 aoHv?Q{-Fʪ&كBPJMɚ/Pa)~6(6 mx2)xh4AsΥeb߾")Wx-o4]ԭp6[aL=u"9C=X"ו A^o6YV^81>H<ʯ;gQL6ky Һ(XU;n}_#xQ&,N@&ÿ2H#dSJo|G{qxل%mQގ ܊X eIۅu ?l=,ZK\||c5]8$ S}k[\^sm,mM>v b1HHE`OaPR?c)9sXWn{ Lcn]E_]&o%os\<ۡ#= cY-zVhU_H>%:fhAIZ 1=ɏ n!K5$14?36T{zT#@?KQ KQP)Hqem#yu%>z2<Gs$bG?~&̆nun5,^6pLKfٽg'*[F]p+[1>.B2M`ǹ)5XߍF2KIk$<"_Jj}9P2uow Dz STsWZ#nPO <(+orwPBSsߦM,3ǃ7k?y{j2,막Rƻi-Vj:KYГwm`݌ԫ]F=F&ۼoxx}'0*TTIo^+$ Ⱥ'vWJ/1lG%!F6xC(dm4~+0U6^^us "IN*@'xK_|<'"U飘ʿhԫiDBYޚ 1昞[#RH"[NEybEЫVU66KJ;"o ƣxO8N&97$끦x>wX'KK,`ioJX_`V݋\!*[sk˖>Uia,/ YͰs&c\ɡ9T~w W6ygT'0 SBj]7gl9?(A#\7S( .%ꄥr0 fS#JĸBĚJS,s[Ϫ^OB) Zl[}ѧQ#K?`c3ZK=e0tD+(+^I:jɬt~oZY;'haKgf/Y!s}IhCUԑu:r ? W*-z+`.0#a} Ĝ`gU e+ӮG!_;_C{&V3fjb)e#U/=Bh/ {y:ClrɁ*XhD1{ /@PkXQCUd֎ a^+|0NIZO\Yfj& pw|g~NIтj~ֈAe vb?ż2 d@dz&pVtEu.p=+$V=gXQ;Ls[w< f 'mY_ A 7AO6ُ;juEo8j6z^LPPQA/_Yop)eeHjYesϑ\eu .\[+z50nwp }p^ޝT еHtd"!$B9X!"ط .Yaj{*z:lkD}o\Qpfqe/jPPPj(Y=)LYZ'%6Y!XYo,fcA1s:%{qoqZ7=4Ҡ:S"-+ L-;3/X #"_~#RLgD{jd%*NK gUs#ʜyf/biɑcHߐm@\NX6^-Oh7" w*VQEC%~?^ gBAseRh6myY8gYI < ,H4;D iwܦB)y@LșdQ\h'oyaqeq _ $ ;s`HA$k*CQ͎r!uWLO6Q/Unb\fK 3q&&E4@ .yO@~*sQs¾+TN2߽9s *nٮ^]lx~@D+\ s=1X%@44\5˅^aTQ/glTN e3i3h@œSvG:;2\qI ):s Sj 4ڦE Qv}+D;/GD3$ kFR)M]k@m8% _a-QYH V/7pd3aXS'ϸmR]ƪ9T"9`ENuAniv *0xtY* ![nbW E[c k'u^f}s[ ?,J#uM.!S _ԈkaIN4Zn ڰG:{O“E[Qlnanh1*w=BrD?$r5;.ʟ.#Ж]1?c:G\%|Z:vGPZ᪙HV'*2sȤ(17dNML&$OM—?v $(J6릜K?1f2ಣr}ZyXT4?v;0B@`H(7܋~KI3&^]'K;61qB$s[P!O* % ~Fa\noij\dyF*RN\R2R-M$][!:ۇu±Y %JB][RN"AA•wzP zVE.D1&vdEY ]](.aE0+.̱TQeoӛ(;k. b'20*rHZ1g^w r&l@`׏bA =frP5Y3LY4dg2yu\alcT'ؚ9 BLgDYANF^'}L,^c5.k = a?'hcj9P+`]峿T+;̿}K ԩϗ 瞰ryK5,86`F鮱S&zyGY*\d("Qa@/BWQBZx%\jQz*[D)hluM.sqEYgh oYe){əʐ'R].zuD6P)}TA~hs4y:B`Uu73@"J1CׅޡM A̖ ȍ7| %ZJ[SA%Rrҡ|nF45qeDDYA-n7y4L1#`ͥ‡*mq KX:IgޛVP=+Ώ`Ku3gЀ2#];b_pѸgG9~juv~[ `iQ]| (4dO<3Ϙmy ] ĺw-'Lz=e~2kki Tb0wT`asT,sLm):^`쀫&QFf Nv feED+NPV˙om6L͵ӱGkxág:m2=ˢ4ACM`%1Y|{TN[ j}G8M=ð;U1"߫gSC@VV|ː1wiXx fQu1r.k Jv@K)K\+adTSo\ZX"VG"8fD=wb uoK_$u$Zf_#22  !$a[Rv*Rcn|S!d݈~MMjӥvM֏SyD2#CYo#YF^}WI֣p?>ͷQqރĹ޶I8%F"+Ƨ\9cK%$"LM%RPe!6+m#3Lt W1)" #MKsI6;F ˅lc~ϵ ^e@{sRXU2s(獖z%#XW1$tֵȾ|~Wd*|PEd%cֵPdiDrNCt Fv!+uWTG5&.[ƻgT"Dԗ\@r{m F㩚By1e?`ƴ@(/8KpG@ sWzA6*.^}a HyBI j3"g|MBU: g?A'Uc qLo6iMGF-|){&䇏j}~;XePfrnx}õ6\,L 1% SkOTH5+?1 mPuli\ҿ֪V/>ly{k<&q~`?SEqB5I]/&Lgu*z| Fд>CBX/_I43S}!zi ww2O eEUAXp2Sne0 -ll#̣6E\ϲaYP oK dV71+1|qFp>Sl{+`mLCLfi߾ӑDx?Y{mfk#-Wo=u/E5Τs;ƃ,VSGY.p82۫1t_"~wF4A#YE+RzE-hUy"!\Hq`Ɉ)%PA t ].25i?Z͎}W:2˛HP;wp{DQ]A-k>ݡ͕c+1R(g@WbD*(i;`lSe?6XÅEsݮP\1~m jkMM(,ݪY}<|ݗadRy[7ťTjU*sVD?cu6ga|)7$kb@dN5^S,0_ 9Z# J7eeKܞ-)s H*+aŸ$Y,ߓ`UZAEvñ%-Qr^ܰF!My5<0wDtIݍ;H㣄N替ZOTzd=I@$b"A 1Dc؅dw0xAl %8QAfevC.!rB@9ne(b( r~0@p B-Jh )İTM8 N/iŌbJX`2[ +rcp.Vm0rLL3sӃ'?[1f hk]; Fc5j|[/[jhC 7$}M:=YODp 1p3YDh4 ȧ:eOx';yD <^Ws~44TZ ?ݖzHmAVb3`B> 9Y%S Wb'c3.XxixArӎ/n 07[dڲ}ObN*vifQz,-^yV71k.f*o +KXﲝ_qsѕa B:5yvHIO̽zDgX@k[Ф8P_Sy:0v^}i#W/FEcSw%ulGeEC4%PxU|%.+'a(gRZ_hh8! 9:t+ͩ/V嘻 RM"y{)/@R,SZKm]q<1g펆VAG}&A0o:rRL»geots N =|neXD9w`s7F1Vi7ڴ簒ig>2Jzp źR J+UӸ{:Cȅgؓ?7e|}aνݤ/]^/My2[%Y`.Q؏2fsj{?p!g1a *6/m7cS#]Asxm HtrsJ( D1zm%ZǭxZ2;UwϮ>g`&/oD@*wi;;2 \(MJhԸ0Ɂ릊R)ɹ/PMn @=MښK$vvv'>F$Yvз>6,( MstHYs>U^r6MO410'$_/ߺO0lDr t sKcZ Xf˞搰N6!#'.4lO=UW $T$uca{O[*ϢY!!d҆Rj>9FH[jrwNFztE k|~)6lj$Ng~SըW,&?ϺMY܈LU%LT15ZUJQ|zY`}]ofUWVVdX: Fr QdVoE4Hug%xAmniйsJ4.٣M'yp%eƗsK\e#g3tL{l&` 7Pej *f.h Bqs ^:O%VM,3ޣ*cBMҢhM\jgDO nHڑLp (AL=Ԟg0lz%ٮ5P~H]"w d ݊^p+WYqXd)˗_BP%Nj}\P3bSD 1] BEΌ+Nh)8~wk@TW(Z!`bF!`X&s7gp¦T$J.?1X暝i){ҿMHb>QNi65 n3Kؤ-j^ueIBnZgE-CyFkTc% G n,&6l_i_k芿y tP ô]WFӺ)/cGVoc.qV sZۍeV<=})؛A,x0իT%g75/GBoXɪ )v:'0=m%+5 jderr{amZX. w\\bw 8U*@]%@[à;凤 w^s厤~G-OO\KN['..Sy"ty U F&} ]^ }E/'dLFG\tQiC/;!08#^N hAfKAI;v5ul2A罹Ù!rtϪ34+xlb3> u՘8ˇoBYɀ(ȕ`> "56;13d' "kb!?9Cϥ*WVD'g CWS`*XZj#jqdX[U8ͿD!颕5p6IT"Yk{O^]z!ZbF!'1|c|K =߼3VrFېL/1P'yحOH |d ~RO@ӻiàՕUӗh=BO wSaWMj|@^>PYF 7}{:2.EGXo<BO팯Z*so)f,Ny= b qH2oĎ|JpR|xߢI +( "/o4?/m4=:?64W{WV]m>@SS @)\ )] lί?mk;sN4U{Udc^7j&mHZ8 D`.׵$MǑqbh:NI >I4i/; 1dDg+,e4TRd~}_aJhp݆ӲgOIRh8MƤ=O0 4 ;89e T>3^MtWjg{B)fs4by\Wcr!:jFA!摴/qZgmQʞN L3+dg殈qs[xUԧH4+njaew|r4T@N} h*{*y2[EQO a"Gwa6[K),By+B@@H%߁~uijc>f(Muޭ x29U5AD|\qns' cf\& Ul/$b% Q5&D'Y1:}k]h 9gs=<_>zY/\6۵wz֬B{4lʝ9[VkB3o-qӛf1R%QW$♔0u Isŕj,i6G9+%?w e$}Tj߯ԴOL RS`T+(CH~DwUu̷(@ .1[仇@2dcPS"jkĮ}zEFFAQC@\v>)qlǶTrR'C4Y'u 6f4c[;72<巚_t B>]^ Uh :VE#b>mݓ @' r`Rʖ{=A>6zK.\Y(;a ŞUtqyLx00(ں)yJ_!® 3 x*|THԸı o?Z+=?D޳\_wN~YtbyOO1^]H:ȽAuFSK]2HLxר~ǩB 4D$^u^)WUw:w⢮Ƴg,t}fݔ aF6, ^}s/۳&UBT[iXrziC=@C~Nkm&?u#Uİ|ZNښ MhjᰖXTX<3͑/6wXPTvN. ݶ)'f44[; z3!.(Jpg9uG B)F`G9F_1C{e[{=眱)fՊ gP!o*q٬J*P3}F#S)X~?^cyOeoSzg󭿉91yg{ȥ954A6Ʊ;yTҴ _Λ\rcЫt\M{=~t72e ~DhES2+Օޢ]yIK,|ujmuL]i5] ǁ7jZoyyˢZ2T>9H8jZ5b7Ӌ[m˅ &Ky6Oe EˮP,aC- W˵k! $uv6U Ou?USMLbBtu4Fk,M8&έTHPk~u+븥ȊQD|_9иñ mLT=3`G%aŌ+Z1zI|! u.Uz#{ArP&A;U V VN[叺[ )WIf$<]4m uN;7*֧Q{WB_v[$d:Ub4+,4lCl@9&d~~R~_P,+ 3Nފ|%2(TҬ^yk2V(,揻Qi۷M֥%]_u-aџo޴,^-NAԼ*) Uy9,eQ- ]P 5RM5}՜RM7qXllBzCؼt?;*]*@%鐱= w5Sq0Sfc$#VT4N-1E _%z+Zv rd,|2Aζ\Vrnap5LdNe. ¹̘@QzUVlkݵ1j}[cth[!9mU 8C|αwuT{ppzB#dcؔoChhȢ.!]fR Z!븟j ])6 qc+F&ҫ>0pokaEIP ,Dd)^,@ȯ>ԲQ+OYX7BOCm5ҕa[E3+L/)}^RنJXM@M*MώhèocI[k\O=TZJ<|7+̔UGT ʸ'ݮsJ6#>G ^Uazpuى@$m))_f8g%az.01RaU̧ҁn*oo9 N܄dsQ*sf Sh wR>0wGeсwܰlo9q1Ɇd gl?23 <;S:$D1~N^dڴrH\2lϵ_'j/&>BG-Y:$ѝwpMƛLFwD,q%w [qw])-MXZ51:Q2#6<%B ͍ j4GpPjuJM)B'v!J`X" a}͘wUL;OMMsSuʲ6 KkꆑGYY__Q|hf@C>7d<`7ʾұr% R}%7uS}ݳyމަf#:KAI5ݍ/6{Ms++Nc8Uc`"%]ͿĖ)GG)J3mY!#v<:\Z)vỂ"׬J/#v2JoFi;8}׻T蒯9q>S\>ByNcg8wˊV!枿6M152WPS9o>D=y'r ѶѼjP-{@1B@oEH:J{ʚWVw.?Zf5 )]_ r{)}h;y$ *ӄk,$#qKz_Jgzr Z"ǭ?Jp")RRӞy=K-;)E;HXK{2CP.uנ"b04sdZ>-5(X ˿>@IQȧu8?;BCa5'Skt +e%yY^ 㨎ԘhP p qfxf66-M1B*co KKTt"h^;#gc N [)  75aZ͜ _S\ Z~C%{F!>/Uk"g$̅]]j ?I,Rs3[0uUZܴ cPY7)go9Zq3 c$&p> qUCh{ƞKGOa44^ =,K2uL25.IYwC2Pِ- ě$.>Y-㐾!l0qV% 0 U{"I4XlSFV `R9W5xi(`.aX=ku8>T~Kp&]z\UuCu}ߵbw'&ܝM'#Ykd_qɨVY)|~9O$l E=*K>DlirK5ܴwr&XKyY2"T8nvF7eՅ=6@%'CEN dBn'f/?v☱[2BmVQRmA^|""x {puWe [|^CwMLMwO.băIX)A%a$ſ,`x(Q)&aJJ Ϝ;LSmD!Y#H}5IGpxwdd|gd!GĞNRqP+; [_`0bd?EE8^px|+0tϝC&= 3v^d'y~¨ no?@jWpoD=j{7oUATT׸(`p:{t/9oO38UPwVBڍRD1.§\(͖o[Յ爸wU?ch|Y)G8|@,tyLȼ};O^hNi7m/ݝwH\} P2)uCw cTF]a Oi?lfH" ^co$fvY[{05" ?7Qynm0aQ\ Iüxcǎ߆rЪ eڇXc2 v+}KC3j6kfŀGW ;$^F 3"P?لv t\d0y"J.0RZ<.nd m Dz/pW6$0hUJL(' 33F^LZZ._LQQ b]g9 ˰y}apS_R?5GT~Alo!`cCz`bͭcsfVyrˊd\.sf6vCA{X^ =Y`Բޝty쐨+PӾB:Zz}ל_c%2X8z~߇IuɆI:8tũ9m69cȖo^uJQ,0Xa%blҝ.Y@"$BOoOQd oAtQ]G$ HB fuQ}!#V,y2*,zg 2iI]ź8"gglV=҃E(C!|.Hj E#,dwW|V4͚n))tcС̉N?Qڇ9}ܺI6`}hK9VYM[PQU hN/Wy?m %| Lӓg.F)jF<ܠEnŕ=*h[_lHYD;~)8tt0J.W>H9 8r$FQ𴮈!zLS+o79 4lsI~ͯ[X`ٌJ?moIGtܔe?.7m5CaA8(eXo#4 [0\\w #nwP| o`HX(: 4BΣ6plV9.6\ް sS1$SK#.Rrq>2x3Z%ڪ|~}] U8ilYMF]i# PLzy\}~o bwf24|#XÒ^)'&t`8d53cpg)G BBo2ee'-~iqkzz^T7) @ADѭZ$fe E41јcVރXB[CN6lnlx#bsKvuN(&hө^QɃna &<07Hi]D31nG|!۔JJx$:ݷӌ`FpfR!,`( g? mCFu4P[9;WcmgR^* wDto]XRkE8[~BNq܆35A:CLrW ?hǀ-H:ҝ i@@qך[^)7u,|\z'C%p9u텗aPA,`=@Vmo#ӁdaQFِBԼb4(Nc,2p0ƲGqReuZ2,1BՇ4nʨ׬& :՞$M- xCpqGh\TL8HO+-kx/ #y֐n@V? iVBIDY^ڟ*S`.ۓfw/4W\f`BzFQZ`{4]r=86Afs\TæxsIʐkP-CbH*jӾAlf[T]Q ZW3Dr߷abּ`"W~u2ylFvyd#Xfbَ롌--0!aTF r,x;kFE"N7/+a74~4Q739?:Ƀ0L) ۗ h?F)2eol>Xͳ7c:"zxmL55TR, Weu6ł6Lkܭ[&cO&<s&kh!ݦd8{Slӱt}SGJ1o=nTfX=ތ(#I[G)N“y@LZHzϴz杕DI8)1޹][ܫxK + I$娞U-PGg^7{!]Ī`5@ ]MAj1UV/S:?&;2049-$eܤ@zITeחΗRj~8$8sОpqR$5eT!AÄX|BDhD7C䊙 "}}3\bޤy_9b&s)mr&/xM?:^5?VNvFPvCU;6%ٖZ̓@܅YL y?QIHg/EH~-3t{!9,o=|&EGO ZMp&C e)Vկ}Log+dGc w,iՔ+pK#I-wɁDt[5wwnPVPB>t ѲR9`36 %u2p!!ox٤}6k~?2P/rSnPD/d]I[9Ï7"!NG'} -v:~ș!{ J:b^H:x(>?aoޱT2*Ev *mVt~j>/ܟ'QOܤ\d] ὠq}ɲHi#wó}y(~ؽjKo88j֫ʛا%9(MHrdЎ 'Y፣a.MTP#fW+J5hfbgrcF1Zj [ ѶUL Klx[nyp{I7 p6DngWmX$E%,k2Cxwf"SțPGythk?[,De4oXHކ%ڱa4 }6Oj݅pͩ>ޜQ3٤ǗFHGs۹9͢Fw%n`Qc 9LAm(1E*7G13lI5 g"2P8|y3{n"+f8hu ϴ腰90*3+Gj-&xFsqH1 2&A*qȮmXI{Zm LZn,+Ru|AI7|7al]lҡf0/Jp9 ^du%?1QxW"݄h(F j3yalUo eRUV vKŒTA/)57k$iU>/qxpPL4C Ŭjy}C݀:-M6]=NL5i9Rt^b:7c $7} sU BX_CR[ %4pNv$N˵FU-دm7$k`m5WuZA?}6I(ܬ^Ј#فe~}W ۣ»mMfCH*NmR['҃kPshQFHyeЁ_/M-tU1ц56L132u7vԑ>{R6vL_ IAc8;~,.m*sL|'^AxX4ʘQ}b Y]REYQ4Ȃ ^;qi֠~San=,pf]Q9lS2Ps΍ jHHWpNFLyנ}G7 wN6>zACRQ`:Km=a~(F9}XODf`%`~)18ݓ$ΗkdApύs@g_:Mm2NQhAg4k񬎎[͵=;M>u WT.VI|8I(7:; @VRXV XGx_c9Wlh;9BOaO s?AS߈+f}kgWxS"q 4u*[5 hE*!2 %7k-tf 8Ptk8Yc[jyl5k[YK~uPNqOa0)3E#ڲk6>zx@r'=zI`|dtcU7;[aSz .݇4$H}TQNz}ZK}rP`O8s/f9N#*JdETSqgeƲ#7;@Mɝ[+˼"UH8 +IҐ?'W$.9ʩ>m%)m6i'GSclf?UfޓJY80!m03iCO iME spH#=+>-вH(ԩfλ*:>à0]+~X^i9d0UZzQ([?zW8 N`9( (ٚQ- !\ؒ,f/g f*a}#9DEUEZkKܝ'+ie^35M/& l!hٺ_Pr$At se첵ASN ]H9nL{ح2YOM=AT4lJطg6òn+Ft7ɏ #a9JIzD$v |\'oĎ]2gGN %yFe:(ڢ*/=.o"ICks$ơČq2UU mIh=DPqHcMnĘ2e= ,7Ukkm*#iI I 2MP C"BZ9!7MǦ7Ʌ C ][B˜!Ҁ823T-BClGWZ9z(sl0 yHky}FQ?DӽF2vRʭ \V̷aލ"R yF ~щ3w<*o3` b2޷8pMH}&po:m&R.76oUޡZl3[7$>c(X~PǵBrn{w4fE&*J'fQroA޳D wgBKKsP/||uCYIYh4P,](uhaq'XOSPӐ}2DtР&g[MNKȼ70Tx_K׎HmdthO 8K|X_ӖOjy oCjf`ޮ~G_eJV4. HV||d)1zCXW@lQIBcu|fIƀY N Q/r, &&%pNGR'L҂ƷuTe$ 䝜5%P@Dh ]4(:dZfz ?Zy_ȶT >M*w0oLg%5 aakI>a'sDm_YCO4R)99-M'tnZ8p0JjTW"YM2I+\ח+ryіQ؊X7lZ0@)_$wK.{]],~P| =\o(z^jڔ,=b#߶{!,]O[*:aaڤ~Yb&[~ZMj&̣ZְR%XK0xcR @1*x#=esIf)f&P_G1C xHFW.5x&v:TWOa:H6~&:{v8/J+դ]' Mq:,@>TUq;{ E`J80Წ ̂.8]QV5N6)j$['8Q:軝<1"E.[q]_\&rܴQ/>)rF*m~Բ|穾ghm݉#A1XQُ14 RUb GgWW`UfK gfp ,QL }wq#t կr+b/ QQU:^`, B3 M># 7 'yBI&̹ǐ ES[ *as96 b['#՘ABմ6η舟m&Cn7I>6W`ꄗBsbdnlXnBŽ"%}ZȀ~;%&)뷿{뚼qr,ޭDZE(| CUbNT`QjVUEf7b-rl>?nvKV ި K=dX va~ 0}1yw2cټB[_">-7SD'Inwq82,e=4]ijL7}_}.KʱNOwH/ǔ`ޙ{KF렯hD;(tuepE_ٖbLKr#6$"sw8N Kw@ 0>O~TA@<,!)┕YOWd=3/'sYJތ&9`v%QEK>l:}az0\] 0?=\Ϲ G-8jX29\v3 5>Jr;\qA9(ʳdi@cOKN7?o гbH@lO`2ʛҽOpKfehm+1~ui<r%rtt:YWGO5Ex] L % ]r_q"ԍ)fPIoE|SsȜ jo[k`+Ԧ>YK%XY!$wİv%R00F؆N@0cw!D]Ryȳ̒n7[N zzS>CwlLQ^j/ƴ}M;^C= S:u2I]B=V`=(7Yg$ȢDYZ2%~#S s4lߘ: l*T5?e[LF`\' #9?m痶tsF3+s5i$h55Ul1nMY#ѵ˦+=ߣV~jڃTb$fQ&&P_u68"7Ђ>W3j5Pk\-&$CV Gv`gi2?fjt~Q@W%P򫎑]Rs[]R{w}0:;?~//4o"#>!mӵ]R(wvAqSkWѻMM\ko'y! -41vύSz&F ]yfĪZ` 7VDOlocB!HC;4*㭓rYũ[xB8cީpX{ Pg(4n6 N`EIEƿ$Ȱ]j1EOw:?J03tpŘYvVsf(Sڃ]KFUMyʿiٺbC't ;y nЇMFd .yz*^q=d#A.Pgf/Ĺs2DXg5}c#~O\|<$ݾnTFkE=?:RePק jvywb6^},{d}[I̓X<8?<>?xAoߺUbyn?u=6&>h7[=ӎ&*U%͍XdXocEGl8}L[| "a"hMH. }MOCw!*>+L% |"qOW1g"ʏ/,OYlI=qHkl_q$i@ wi.Z߯!/" ЪIwȐ|j 9glΧ QL ݓʣ_Wiz_A>V]}6[\YqdTR\}.޳ӊui?uYș#P۷j~47F]tΆ"S`Gz_*==z[677+O _=0Z~؏KS硂AtRĥ`E| 'A Y̾3|? FVnэڒHK$a 5ӊgTYaA*1ړr,6o|ATmw:+Xw9)lR;rk2gR.nG[W 8Q,% _ M@v;f 'H2'Og !aq68NE|:x)g]r5X|n 8j;U|a h]4n#1CлMLѩ=+WSq*r|`#gtO7~PE |!jп>].]6,S_QnyIaUluS6WS艣QKZ2W9>. _(n2 s%N4̯-՛Hw=%?N4y[: E/3Y`䅇!inJ{ۭT}G~!xۉ!Ar@/ɛUȑmR F3[z>4ܒ@Oҗ==`I~) iCEE~خe/wAv(=n&NJ6}(Z/{qk_bU!}a_<, `c*\rQ}pRXzy8OMDhV{-fĹ5N9 dQ4kiLTڿGQ_| A쯛OCӤvtX]V*s }U/K+}-jbJoH \Al% QƩt kvqTgdgRq\}Eael@$sqԡ`b3}IK03N,".X_@cfpBPK[*:tT}5? IK7a)%O' %mT'#E6*=8Qf{c+<lC`ЌɉQF[8QVd0\LF򟔟 Qi0*;wg`:u&,ɀb8naE5l!;yT0]=lnʈC躀?bָ%j}T O4 0Jq}"E#D!sB hma$O,ѹ׊e[A Q:\eǫI;V>7_}CE(7A0Sycc35P!9IBvl Cv6:O)eX?[02cF#,|Uo;!jԥ]^钯D`7Ex>IOj*Z"-|]y6"lьm&!OmFWH%{m#o8>xxy(evL(k#E"1?C%s6eCb?Ӂ{Md$!K,XS{遝4BA&f%Moh~~/n/uGY%6xm:hxR ZXQԱVB%F*s'FZٔUJQmp_sE{'1Zka=/s9L0ڇxtl e t @żtFf2~Nvn6U*H${KҮ* ` dO+6N]~\ =ewC SzxklX^|dzc5/P6se~WZWO{HkzTwq)Ew *>^ H.6=ˏ뚜C| aK-x̝v;KoZS^\fj5o2=jJR{`Kw'$%|qC{K蹵;qN=G3 j7lv? еL %q-!v A% #2KL޼[.Xg͞x6m\R9oA1yv+#]ށM3G)ՊVT(yJd߳!0 ': w_\|S;=Z!" ˚Yrqbƃdojp:2EX#SWUv5I^xPʎ:2l"8l$&fJh:hڈe̴I;D)\jJTHGDRj3%[|ӵ2 ^&sFl$O&=3҂&PIwOT]&!a%"[2~$i{[B`w&rͅmNS4lr*oYp%z|١o$ua a+!.1#LkLXO!`^R5kVwL4B{i46@]ATq.lø׉! 'Ʌճ26j'`W5/Ӈ9Zȶ,Bu`?ʍaDC+ =:f1?YvPV`.Ά!bTjdc Uro쫂q+]kֹɮN) 8mdqTVgENQDuFÔZ &c"wULZ@ϷDxn*`~PLMv ,kBAI%3sI>ƞ}eҭU$ c,<'n. 0%|m¬aTԥ10 Bs嬶>0$u=6}u(cJvG9FGljGW06PHpu5-5jwހ=L_;ԎoKS#,eWp<дOA89j M 5YA Ԓ0^*w{7vJ ˺q_l;&E GsjwnM5dOc{(C{Qѿn }PO-Y~@W0';,e]߬ES}&~Ιy)g{UJ)%YUe ° EnQ*r+!}#3pF$}1C)EJ\G_n)<: 6fzW \FO$_ɻPjj2ζCZy]eT_\|%r#jʺj6^+ =kNwKbwKu*>=9 s p_+1y/֒30S?qlXJk!xiU;9a&+zTHʁﲙ9Kf*u>$FX:ޯד$?2ry3EC\$QuQ4G\kbɯ3' ʢfaᏣ3{Gj)Mۈ`̼ nxJj'V rI >S]&ػǛDr'f @KGZ01ݩ}zH(5n4QQ*af[&Whm Vx$<њ@뉓~eƦ\c#-rGAXjzoZL!y-Yi,/Kh~DOp#i{ WWTSÎمyvL ?sUuخM ju}E>v%MϒUV@< ^.̴X^JNȿT[e DhQ !3NҰ J8~ap78V[FMI7'$YSv%ӳǦfL(<[Ggu T<7R`643&4_5K| ׵zԞZeN梙Ȩ9IheRD_v}0eY[7J]fuku̽H4{w_jar*K2 2W(;Q:] 09_Uhɍ Ɯ"$r[ڔ}p|COִUvE⃾5}¿q2Ũ E\!SEE?Fx:Y|Gwy;-\gd ^?ކ+Zgg*kԌD YV x&W0ʌ՜i,1698iO5Lo߄ߦQoikLLY@TB_2S2t6,1vn75(fx 2*'Yhc9pOwQ'Ql?2f-2_4VqޙM!c9% `;8 M\\^xѡ?iǺwUs3/eNˇ2}QCusȶꀵj=uz\h 1`0)eJ"Q=fv=s|:ڲX'ВX??P5Y:wl/jg_iYV!Yw6iLf7vVC/c\8` W4ɨQ 5{fE)gG{^f#ˡma-.(V܄m,`){(+;qRF6(ڟQw@rtJZd'I:x !H9>=_vqqH [)*~iCx0 U}*H0 }c0k "^ԕ~("\be4XX$>\Pq[E0h,Λ(qz=J/J:4~Xo^< *_4V:>Rg}UD?jOq4c3tWSJCŒ&dﳻ[ҳ(=B7f͔ռ߯sm՞74c>hE ԁ3jYj9 yTb 4Rˏ_zh"φ&=[JwR\ZM0y^$i )NL*@ ]ηBIľo{L,dBS_h8j#9}_9#sڌY҅vDlud!ۓ]Д~GKXYS¤O svqȝ=?=axA_3q~=Gx~띁6*tsqnI^J;0=Pye 2FE; .AUM*h$we{HuF|%ZL{PmY26oշ4׺z1.QkK']y>-*]I,nzġw~].i]hkF *H T%c.bC5}tlZWy7F:WMA>yMsaB'$5(P}GCFG) $ǰ.2I#@¢fI:*Z M|G촢Ԁ?3:ҷ鎹= jCA?m8?:H y>lQE$'BE9y2<  N,j1m!(8}+5OO+H"Lg| SQ\v1B#BNR*=@3Ns$4Ы1Sq ͳB( <0|&M_xY-H 6 ׶%C U误?@&äҿb3QNͷf7 5M%WczBj]p[2\A'cϙ3wd 3V^Qqȸ~.$D&xz<kE aYd`knt/g'-OU qvuZ{<\um'&ma񏬉P@;hZ[PmsE]G3P,"ߘ4?v?_24fUEZ>!nnDJy\AՐ8ŧf^$\(9,5~a@P!VBKL"a 1-Imc/0`u%AB{uƥw0iޖovݩQ, PC`jm)94O)he*Cm]c~;Y+ L&4y?3uV7T.* pG{9DF2D )ߡ@}u;š`΢]rDcճF fsl::kY`mKA0t dGx1A㹘Q|SJCC/Sϋ_XJ{qƞK1[(+($9Y#[jAAgsuLyg\פe]sys7폄jUAB#3sV :d4Jo'lیg:Dk `.[\.t)UeXe8F'Pդ@n[IgH xQWq:/=d$hJALש)ؠϝ«GܔSÌQ 5|SAT+CM 2E ori*nzr m `9 W6B8cÿ׺+H}$밶Fu;9F0tOݔ2}ݒE),NhZ4*-AqDS<VԈEH%A-N0C;Kh,\{ݓ6Ӛm{P1lo=*\'秊䐿df0Nry0٭V>iәo/E Ra͗'\GPfHo(Jm6zaSdQ  ʜ"rg!aqfbOpH0F+|3Cr}D[3y88{0RCXΚE5;zaX)ܤמ^ۯ0$u4_5tH xd,jYa̸=#&M%|M<+gG ytM›7 0wN&RPvvx[^ȥp1,͓$)AfmU /@tLT 7kkkR̯D,; uhr0{\j7"| 򢖗Ix@P8v5QKf`iGǥ*…(& 7`j,Kj%XP _tH\2_{zB+6E bzvɖzؔI+@#/ޱrSvr/faa4igC6QXx\w#YB= jze/M!s 54­1}wtmc{kv}]nU262ҵ} j}aSc !({4,4 EG<&$,QM&׌#YU?k;$˿t"QBHPGz}R L 3ۋ}Zr'<*Wn $14 f=%]yПˣM53m\闟U[Jk\~kF/ ,6eH{Y1 Bf|~$YcӴ7) ‚X+ls[8['Kj2-tiBZH.FE+7j}3'SHJ3,ZE>ځ24x۲ĩ7:L0h_hH|q1j. oo &bSOAn9Jjl  *%6c;@^ yBlT´ !. {9#dpB6]pr oh[vo_HyiuF0. -0O#Q2T.Yk"}uGj'?S"N$cwTZk\*"?N7h \X8D(Ey'#mdF5,̜^#~r+U}ᇨ

IMXyz晫aީnP\۩Er:'BγQNRXP/6{sC WE[Ki0ی&\/Hl%",  93F!jL`JεIg&EۓGm G[B K#Z*rPM< \'%5{yBL4aig3椇JL,`| ?G<'[~]WW X:Ee8*g0Mp)s?fprm1殸6"w\"RR#ᗻPh:qbw0 EB hRub;=a>M̷H[`J`ʌXJ?@۪A¹`WB)ުb]2N=#[:-/[SP!ݴ>|HC = `zdz:\Nlm a Ql4F>[DC >al`KF\7f-7"LtNKYGq'g(+$i iŝ%@8':AtN)$89@HKB5aS|xPΕ2&nBu(6aRϷtNl'  tM\& T}'byu]I]0tj< )X)Ve41HtRWֳ#fAeDi]m<7~AsƉ!y1o:> ` @p(Dz tzw_%Q!>ܜgLIG xx:;t%A3\ї d՚]G'Bfik OJcMKh7*]+g3ZOl;?AX͛p_Yxh`j^䄇C PڱGEPCF2?Z PIxr;D)Эu8ozSq O7PRu.)9r- `%Sr|D!VnQ *~Q FIӘNxC{r4@}LB- @i"c>U=H3Nj;=phSֱlŸ O0RObNA8č9 _bAatye}kƝlc)x4@8\׶k]]42S}5kfz J#ϷMpeW*r@)GA|Q,eTƋITׅJ0NzxFf0<=~~cJٹVb@uR[g&۠*NWnst'T&uF[}`YNi7 '(N7Z[hgkD4f7yFNz)RDb$Gt49kO,WV~4$>vڇii~F_s2:F?u5>ܾɦ)l|`'+d`<VYp.adX´N}Y]|MM;uxQij<\ ""!uOJI>[o 1h \$nPtwuHQ`.0=vϙcL,| * ;@e4j-}@gŋFҾI Ee#ڃLz높(Nȴ@Cg?sP@ TI)_ւD"mvr%VD78.6dwROVG͘D5$:Jz!xfL'Zטg35&KJ8 ,f#4'Gy88EpPYnkSM>PYE3.}k*2oXEPVLgV_Y 筏:d/k3rN_G8Q>ڐJ\( I?jz"iq:V$df,4*uO]{[]MOH|<mfʹF,O|H_C](3 M{k4 >RCѻI19p梄I4\h֏2emQ?+N.pu5;#Kq^q ~mH$04x*9h9~!&!SC~Rr|ģ|A<9+a7s YYa $i`peN唻+c)+ <!C{.6F2)yWmh6m![I \S`n>p#.^Qc~?ä%p-8fYV<[dk 'fpK rF5E cz-T+j:6ݻ܇]MK\e&']޻Խ\-#%<{T |VTmzV؈(:/7bO,ɕPi={ӑ{]9V}*m~0"g@)GxXs >l.O %ZI:psp U:h}ݨYWd|׿$POӖ!7c:cp$;ZSdQ225PM[17PFT>Eu]ǩ֠^qeɰi L$d~|eg1?}P:RMʋ/HN,~9pe7x\{#In 70|C$n& T">@HF @ ;3/!ոB/NxڼD`5j9tLhYCT{P(Rtf麗z G0"ˁCcX#h^9TNg3Tn"Bh[yׅ#f!;,dPn7$%\h3RO+U ,r愑Mҽ bݣieXL-pŖ͆>i/gu.C-Mp4Vf@6fvT)[R\ Dm,ފO:ͨF8/hU u>إ|R`WEշKw#&ЂE' sO(#CwW_Kಀau&5 1 r9TV眩ҀJHyU\q]A8K # tj!03p4҈m5kL'o#, GS"& Ewʠ q[NǗ'oӀ9adi=kFÑ9Gsd38+gK⇝*J_XNQȏ.U-aAKQISQHf|UN9i&#jfAnF/ :K|0' `2:jwܮ`|,# `kVjbzbrk[g1wa>P>1ciRs/ʒ5&[Srauka7;ڤ> N0l!g(|͑iv ' ,.,Ξ.fz a^\{?0< Uɉ\H 4#a,.*JQqh pŸx}1lSN"",۠- `mE $׌V03~L`A32Jj3[ƣ`sYMz:)&rQ.EI[zCϪؠCTiُT2#[C`8qhS2(=cu8x{$9}Ç_GHTdz`jk7B {ītiaQŵ%E0 `Gɂ/ bp/,nsPg,ȃJhg|[afRQlLC H#\DLEgwK-Obm|ﻂM>PO]M u~!, n8(eQVSn KKh" 0ozM쓦j$CsЀWp OهtC/"{"qY"FNǨTe5Ib1]f G@Aɟ=cSm3y 3njtI"ݸJP2@'H׆nKB{g=Ւ=U*`PHO @.(g,P$p%^&$D\a!펫/Zn() olj״AtKVqN!>%[.glhOpRQnNྦťkW4dū&>-(aל97;M% c:o⭞!MgDP~/x~$;}))nY `I4بRZ]#:DyA4ߟ`52Owʋ! /ߞ8D-&zy,H}d`S;,[DMc{RWr\bc;Un#Y,3xmF|LLVfLc0&C0MiD[HR@xV/Ξd|VGl$*,  \e${:7_ 2WaN BJYe!ygH0= IK5Ni tWih4jM[-imt""T5$ybo[S17m+ HIC7m h?*v|2O4qhh>Yϊg'}wՆX t߇,B͉I7D~u:& ‹1P Ż̬yexMmYY|I 릧'dz"]жhڹAft#M/5ǽӽrp 2Up38kA_[ YZD7‚-)ӦuNKwl\^ 7J!`Fd"@WņuU:,(mUAKshvsXsHʧSׯ<=wݴ1&lڀ’¥wMaQɕ{ή҃ m[smS$EL2;/73V vȭqa cSdKP<>ժ/H;&zeLZ$lkʡu>ǪF 'XE}QooNx#.|c&1bAҬ|O68TM&z27;w"/F#=829٢ [뛅ucvJS%&̧ ]Q)i}4)Z+G\O7@5ƢC)ɿa1vTU8q=1/v m(*2( QIZ]%HR0JqxLA; >4I&5hI)al'Xˤ%{5@})%2.%Z",y>'@ lȰpDqqST uqIiXOZB1;='kUYg~ah6>a 2άULq]<;3p)(իQOp*v D#D/NxD4$tӛ 1RXx 6S=6  W`WZr OlaژT _|i33ӛ[^n1"pȧSnm@? =c F*n1%DF^9O?KrKXB&66&e v۹HXN.)[Y/@'C1-Gdg/W@E[H}^\-pN6=['#i)EAT&Eb[mp`79ҭ=;𵒽v>9Yh"(5`Wi"=c"ԖO4Y=K^@ifZrRɇ[p =PaI)ڵ l B]ikr"~_ axhGwu^?W1$x"R&-v"7 iW|6BO)c3 *8dRȋOۄ`:4LN+0/w76(ͶzW[n9堎nk5sw _xO>Сhyi))rPeiu-|[Kߚ3"b Dh,fMn?_v1=`` U} ju+>41Yo (BOJ3>ݎC,bYx ./0N-hiU =~Yפb KXhSKϛ,h^z0:<^܂&oꤖmZU@IV̽r5 ya@1qa31.s &E?|=])<5<Tg ^YΡ`%tDd$u"Qp~]Iwش@9Jׇ"4{[%=t̡tP q:5Bx [|a#=tƝԏBLQ*Vt.v|itmPJhu06gnQiF.D0F:IgR8a$U&`hX~/|,<aPH}S2赓z0thqǍN$H_Ӷ)Qz53pUŤp +UܠjO1X`8xXS{z_ĒTC<6v'%(|is#c~Y RMO%btTNvb눙BêBA<2ُܣmɓ  z^xA"Yӹc5r_o%#υf E͐&N`mqn@ 1I)w!SɽĪ_)TG-;#I0<=Ҕo] hy0Jv_Tj ?(6>j{L!eai20R ˆ;cCN Rb MI)iTiB ِsMD{؎m/$#R$:y7WxZ4d74 -oF)[WN\` Eտ@F@edğ8mnTWsznfquvb4.>2>Ad>{7MGPf*,%eC|ڃaa95O{IF$Bv Cglrks\6?goQXcl#37mXlC]~C*F{&Hf ]TjW%@?f^kߎ~`30s.HTy298u$S^R tX}q:Oʢ  &$bQfޮ2Dz҄{ DG rV_tY_:|lD6 肔dUM)~O8 Yp鷤`U5u!yVT{a97-L,ǰ$6 V ) *.)eXw)㒘"25SAb.`C{g&hBf?g8w*Zt_HռKs}Ũ+$Isa*FC=2 hUOJ ׍Q|rݕֳA ]ӏAJ(„jftGWPJ]4~Q_G죱3^kE}){/(ʒḛK{ s!cg(/ 59g l2\{xQi,J6N:qZ-gUJxPo7Fs~V5;\mM6giGp ;=mK+_mQޙMês\p d^| PGWÚWu)6fbkitk[Jm온Nbkf6b)wHw.׍+v'}[6@L^5&$AiG9:EZ9x _NcBaF9/)^#%dULOU(|U::6)?7V 7U',` p7Bܤθ3n|֌AKG I4Ġj˾Ѱƈ໾=[E#%\ cYWLx;?6،5StC&ۏ_=4+T@UR@(9ޥO;pDWC͛G }g*k%M1U +Z"GPkmȌZ֧3 p@Scp߅Sb_fxR!kRK\eE`?KNS(C;WAu.Gm7USC۴EIY mZMTr,~\2\{tqċTZS3äՂU~=v!Y#,.P|r4ؓQA[{K7pL$PݰqU"'1瑾ortLIn4[n(K*k l) $(_i(66ƾs߿ڕiH-+<N' q S8]Rt\cxVɂ'Qb%z52J$tRhGFD8t߲Вc)3Z̃@ICS(x B`j% sPL28ҷ[$&)> d"A*nZwq@Uuu?ihЍ(ŗҰ(O4i*>?FHK"58b٧J-W_ UFǤ'9a4x|(7e+Ϳ*mIzՇXK:Zj5)x"KznbVj› h=g-$#*s]>Qu"FAF=}‘B~xe~_QSzu<**2T J~۬`P^`Q<:ܒat9`^myG@Jل:^Um*-ƫȼ;x;RAX/[ᙠM,Ts.\̶}3sh0U!V@u?sjg8s?®W*W@Ae1NmL܎v5=?"WIh/^i&# *,Sei "硴s0$=и%[8yd.e֞0/Q[;Oš&h$ڢi!lc!f[u#䶏.rPfOVY1D& 0[vnn-~أ}!Na<:,3}JUxyg||*l`v/$;lKqQHY ]P(zݍW#P?w78Tr9t'Fhѝzʹ`8IqBѵS .&l}L*aY!m ߑKȡ4Hɤq=}`% vXF Voh)E ~i iWT`/:|< LeGqqJO\ O8vq\r®yt@Bx46;+CʵiBV&^,i)c4g6V}43QDI`+c帍APol 4TE>OY!arڈ nF|RLׅk KEM>SUݡA=Zeٝ-s/3YDZ.hmlr̶Jbe^D iux;#Il D3rgTverǨ's 2ٔYrb>YX4d=kwy{~`M0joZͤBJ2t=Vn9 ZxJKu$:.&; !k">!Y \r;Z|p+wZ9pƟ]~Uň#Y0w?GY.m֜tGXI!8QV Z"B-V%9q>N-vU@z5Sb픐eoJmeFLt5<fIa>_kn_ӯ18=C2"aoXwWX73ݯغ> Dz\ ?Wؘ^''OOs;O%в8#m؊P RccpLJ2J1W,{s2؉B[Cŏ8ݎQY*߭|TJihEqC1QМHzB:<Ƃ>vpۛlGW.EXsB Ė.kc/\EݣrD. * j=Rϣ3tġ_3H9W\cm =ZCk!~! 0 0%k{l+m51BF]cPA2%k$9ďS=0 1'؛na& m7b5OpsNĆb>Fؑh؜L,a%GR9@",`v{ dWʶ gKl3՟M*z%B. PK|^jR)ZW$AIpj7܇̯9Ùf]dZsUo_[A&?aq07 v4/^':a;u?Kq>ϫA74 B]evsHqӃh+9?`dQ6 _Rvr綻L\}~,̫c #G5q3i刈 oM_Y+LqI8d/+?2>,A`)jL<;ez/ȐraAި!ʊ_}ph+dH-.}B"GV6=*C\6 YA%bk4D`\~)`2&]pq'C]w9eFm (j$0Jo/[ղ# A/&=4;aUowbސ1 EkZqO#Y/LV8ZluNeK"B'WdAq 7:Wn,Që݄z IWv(?MT/nEZȕk 2rY'nPRD4=,C.*-*0̟9E(2xD E//}@>Ksh˷AQސ8i*c$V5Wj" FfbٙۀxU#j}t̛cZ[NX1B5o $c]bp}"ך5D$3 }̹ºƨ#51)BbP`.:.28B^rlk{EjSG'=(+މ-հERo"Ɯ'Sц֕ ' _5" :,aEб8:1z0s:&5au9ris)uKMq-јYzv#L=w+Fv*0Q['[#|x%+uƴ•o >:ܴG$H钭Alƨ8S-6"F!^DqkX-JÔlu̧Eڸ1uS Tc)Ӕ!z %+ɫګb{GA P "IxCdCƮ͞Ono_HYX}A~9zyjobZ%2L.ZfN_bz[OD7Klol7MsEreI(?*F1Yˋ{qn2#H{*CsyH!2ł;jtR GS97mm3J:;Ũw$R5=l)Yź9jskhf^lwG231",[V% Æ-m%ųhٿ`\wt"EJ۶ۏPn'N#7zhq3Ak̡J1=(֜ul&PX ;ߎG&1a84^8ut#JW=#H,DrL$89-20܏d8ma)i"!D} nOڿjĚ̇Q̐Ol3$$هpl% jZ`V`4gQAEiWQi7ИdS u(&658#IHڗ0 V s9i  g]Uo:Ԋo!혱W@G^\sߢJ"I忊cGoO4Rչr\vXPKcE0C\[f {@Et!O?Ҋ3[ָ(0"T/$9  uQ {Zƈ|.z@RŚ .%7uT KIioS@bIf'R־EP'<P<"TpתeÜ'/Y>ڣۯ<. a/iX,zF뢾{ul/ĚpgPٜg8J&kQ_}؀pzYޖlo*H0A~*Yz`1{pCY~Am&<.6Űo2?׉S1ZMXPƺDUwNe Dm˷ =tB+bSZn?RrBr>EW 9Z^}fjQ^<.Uaf"8 ^cؙbQ9sNK=>{BOx z "Fx =srh? )SF瓫y⪭`'QkqPn5\jFu~ӌJ͘`*Ƛ%yZ=GTlU!Ypv? Hэp*쓅UEed`;}8i?,$ #0\:>ę͢PE1uC9YQL䛙l3!ep :[pH{O Rsڤ[ƃ1O&5m!0lfi<πHՕg|Rd ]r"ߖ[wwN}f9UΪ-SZ!xO5Z $2ij4r}lۨ7)P+=b2hVZP:GDAgf..}Hڐ>a~CܸE!g'qVoo ޝ*w@m^^߸tt&0,ry[bם .eQ܁p'?b;i}%1n}J+g4-L`5ݨ8qـuyl~TJt)_x*2_2h+&YB4nfׯqVěMehlb0XcbatPhgP{Lۯ!{$Y6w;::Y1ϔ~}rA$3V%mO3!LмSSOG| GFd5_!g:TMy/~Y-=?ԨP̎YyKkQq(|ߞȽ77w0rl" MaFZ'(\]Ћz2ffP*~|krZk}f- h |[EβXc&Xeýރʌd VlN-X*$Kn -86fHFQ'aȔN7xDf-Im?R6YQu35?Gg(ڮyB06#4B t{y sPRϬ_)2\}|G6h]/: *8Y#&^! +Ott2󖯀1/x=vOu Xj!#9Bq\Hk2ljϟŃS%93ҝ4 Q@!\ Pr8 3ԎJ *E@5aۻ]|qt2yLM&[ÜoEO'u"?WMhVNȺeLPx"P5-c PB['=hU3I2D>=)M[jqiiA|B(ª{^jxgFo:e”kyF gg!.\pYFgWY&q+[Hb]Mqzrc]lUaH渞Jۭsxk`y?}@p[$) 3!?&ҌU0QI(!}ӋIUDIvUpΊCݠQ2,H4t?Z5/DɺA˷dA١fc/:2 9pwpIܪGWk(/ۺ>>VDu/S;̀>}a+qct`Cweƞ{g+؄#z 7}:_1 pU]`7\ aApѨ"G(-k!&\x>|jN.KD"6Nk▒J%ܟ|N#cQ¿l{fb?^ 7= +EҗNcl!E3C?sE3^6|9WL3}[IsW6Y?x%Y ޅI@9)? Vioa{bv(XnV|c/9v841J I/9g)>iu?NߩMPt$RF㮍j%ۣd`ձMbGg$=|e'6pVPS3&t d}fj>x5;}5IHA)7/ yp6%2bC9ܝq6Ƃ2i LBRIƢ(/{7/lJ:1*JU Yo{oD JϮPk#4;ҠHlZ!?39 i\ad=}ߔ$By5id >Xhf;&t7 _aRSC?zpd"Gѫΐj v$R)Pu?ߚ`Nc b2sw>w_uuV#,Ɨ&@BTDZ׷y.?A^'x87~|d(/ߩM z4kEԦ&^# =Zɒ+V'u:_tOY}t_a3=j,LXkN@鮽[&zߩxS]%RpUd\6fG`6i[cR^?שhbY*~WE4ߟєKl알"W4g6:șW^8,I˖-@r.Eطi .;Oċ优#b jΨo˟2WY '!rhR\@C;!T6ӏ&8- dg:$OhV0Ѐ_#7Aaj bUCX\'Ɉ(?czc/:\gu ?<3XN"uSHC0.׍zl}7vYUae:EƅS8mI K` :VQJ. -䍷M046P/o])1.zlpJtnL壬F&a^v _ɚqdD(4)LtXrTVYր3!ʃ[h3-(GGyvXwG:MH#GؗrnHq/a6% QSLO*|GdCO2N=֧LvHa^{j*`󓀊3sRBqs'Ku="|:ݥm Krz8Pr}: GD>?^8}|!kvIFvT7 ?^شEtI! % rU7R jE{ ?PȐr.^i24DJƵwMQH6鉫<{ٽmYXbc'V4Mmz[(`r1SX&ST@keUSdH YTk)񥤏*Jȶא2n f~q0[bGnۅv=Hlit2Ql?GuPW{&r~<{@˼..am+9W6$4l?vOagN6ha٫0 nrʑB{7&i_D,H V.ЖTd^n+$~^ *͉(/:.nK⬉~ !Gr @١ZZ#S^Q[ǫ]B+Yr(PKX[įal@͎Xڋt=r0% uu(W\z +^i:tQHkD\e[ʭ[qT\&0lLщĒ^sc~&FHA`úf' GXy?H)9;Ƶ2+k' J:>w>04*=l[<43۳8NF7;L֏cρV}4qV7Nw:Yu!ˬ0X  ͪmB قgȩpe]pݐ?<{B ZjWNIPu96g۱C8 ّ|_zN9pto^V#ev@ T~/ ZX/!1=&-8pKw99O#5)(D" DA/3h,4īYGr#|h}R\#{e2@\xB'׾SC.7e'`w8Mcv>lhF _381!{F. FE$|qo($b'8)bbM۬!ŵ\yp=$$&5qP EiSCԂ ;7V嚐,k SM4E_:[%LMCJ,{5T|҂S9K᧯ۓ̘~A֦|-آ$;(N .;;tȺeU8A@X!!{:$UČJ/ϯ,Ũ/[3sUnٳZw2Jǰ7p!L?6@)&:Qš)f:V "&L.mN)6!`AI*|x¾p̸~CAfіiJVAV*-VM鵐_%hTJ?v, b6} #j&:z:@ӏpϵ9<~ ܝ0 ڑ@N/U/z1FDȉCbM&+D)hh(ˆRހA˂{-Gld@@'5R vȲZV'1$QjJpsC<D*h,=%B]&?kYYUCC EsB;D@HY%MF}hgix5[90C=}л@ʡ JpBm:bn)EkYo,%t?⤼y=&^!r0d d*`v.k[%2Q}C-W\54]U&ώ)2%'Oޠy3Ub2r;en8TLDI7M[au C͢Aj^E|?f;tچkb U-Rv4n ,C׶O.fg?mFJ5ş}/l1TF}LG7bd]Xu(Q" p VIU>t6|ˏOWkT.0֞R\vCіW"giٓu<q,?\v}yxsκpnZU7䗺|ӏURnvDqF[FgXIkhRXjq! ;$ X:Xgs9V6*.N YQ5m,-:ZsJ79=VȌD@_N-.< &TCYH ig#0SbbC8+FPQ r$߁My 7Ύ=iN-)i䤑c5̲٨݃+1>b'%׹_3b8$4yzUn th͞5SEL*+nwsz7Q*9'X-tРbTEa4 ΋/i)-$TW +d3ʣNO1b& ٖ5UޕJ~WNy*:Z^*#cGYAq f )FnXYu+[)gwT;d񮰖J>HɲG k3"q]:=xG=>u˷(Yۇt4ܡ^5xDܻm|WiDhr;8EY8h1&Rl3U3OQyiE:i4 ڳt! QOt!1ʗZzU[U>m4S̼BA*欯0nd>kPMgpa|Y(@kB <]? /Ji8D' am2 s,(iP%Kd{cT-+i%_^6'DXXrՑ6 0F5nA peP V:@A֛pϨkE'emBnXc\/} ':Q.-2w%c½gE]6dcPzn Ut KµD2psIeg7hy1rvHBWd iʡЛU;WԶOqy B9Q9KVGFHFqp&_hɐa &lšz>KsQ89۹!n[yZ()nFꓮV`yyYpe|شv:"pb99=!xڼf۾rO 29%m#i=zΨ90~D~ IضuIGX=&YH{I8 _G X4x5Q]/Vwfo`7(h" -qebӿƇyV K}U=L|PE.6r=GI}]59#/UD諻5IDK]A(x"iџ`70Sa#dYs<~d,dt[}B`w,In%|*">'R2)Rafo#WCpLϱufܠ[ ^NdMzDc iǿy<;_6RllYT? uz7v8P#{4~.ΦvgFuݢBߩAIQҦFn\DGF0Ӹ$Yb-ӏ sg~o*Tꀹr87zb>7GØ6v-\= C~hB1xARPzG8uվRw%`NVVc.,\8?k˸]B`TAwh'ZNXCSǥ+V9#DMn*.0;.nǔ|LBŭ;ESUYgh cVr]3e-$"JM72ZKM5!YS!Ns*׀F]1sH4@zO:w'xr>kY%B§F<]girňJCX&So_թ#-'Pu$f~艷lpV)|v"YоhtP~;jVgKdkx#dCURue/rB o2g-[h:+ M9\gC~8:p6蓈9u;g,m Ցf.@VUww3~ax!~CM9_;X-|F O~N6M-j:F!?SXJ'3ϋl{(4ЮԶx4V3kVѝܶ uKGxRm^H;AHZ[_gډ!?-|wB)KHfdf}0]]x,cӯ|?Ϝ$dşiW*)H)zTWɬTʼn~ gL LU|P]}xL'\BG3\JxL?%DKv,X& 0s&e M^5rňm9aK%S'i&Le| d;nЫ$Jр90A_/Z6%?=ot:|1J+RW(1_.m>^3Ě|+h@Fa4`ʇކfNH0+sW7SYzOd&fأ]T>ޡM-! Z' Q̓PBEAR*BV; fi'm,g;x_%LTխF[~:;E 4%G%\a}ǚB7/0-"jQ#dy}BKծވOi64 fG,>^S8 ˈڽeR@E{߅1[jkdOu1nHI/NC{'ۢ>[i((_k%sʔ N2C 6!s xxb9 *CrI7G TcnھQ&0o&Slvn8az(#ed9#U;,CM{Kc]{'b\=&rR$ zud0m[mMr@Y\F:01ʸ&EIα_FD@Ja = A\%˭pmM{4c+^#zmm-/7Bʘ4:U7[U JzA:]'5m ?1>#>8S%^UTh`n.cټ'G(M7ُ;qY1bNLDN9)<'0`dPp۫*oaX5sĪ#]rMdA̜'N R w@.ԀӚ8#O&fMk`*&ޡSd@`1$ZOI߷&6x읇Ep(T;EPWj>T0/ɸhXw}OQPnQDk)Wt;hYjIɑ3KzOhS)g=$f:uxHuLe!\?:v8΀D\6)5Tlu;)}NnĆc7n6̮6˦̢DN .3O^WXݙ ,z7E{:wG&];* !!C6o6 N(G qmۑP*b}oVge\b? _ ƈf{RPȒkQ~n4lV߼}"܊Zf\N 6P[-v~FKN8v ad U(/VtXͣD WrZ(Tuv.W>dLMSV H'y"kҲSDL*9 M!gi;<8Ȫ._akʰph#]KZg}Zs9vw Y>J\IaQ1ZUxՀt!E:w!I1׎\.ޛ Hjiè.X !撛k~AIGρm"N}W3`N!GdqCml=[/A{nq ڧu%cs +vLJ+CK$4 \[ѹLu_h&t\.BqoJ)S[4HiUH(AsonW-4鄸PW' ֶ>&MƆP#[%q&+]զ (ReA5ߗm\njV;xB&0vHfa]_ !3ÄD 7uD€ժg>7OqmK< e9;.{+Jicӄ  )(t]HLD֫\ИЈBsq Py jqck)WW3dWO {C:o(mM?f4m*fbQw4Kʍi? qwr 3[|zS%wA_v134Hl L)ד㍅T6'uXy%JEa5QX0ۨMZ3L5ɨoň_33c-bɴSݹ:djyņ.fLQ^[l1zzJ$Pq|b|+n#J΁Igj 7;'MW_kCXXjcM(g=?EwZ ws MJ 8y&ߓA2KWݰ <ѳ[Y>mCG88ĸ?R`QD>I`@((aG|/o2*Qo[SNi 48>p~a,޹J1֬0FneKXeMQoS{# ;ρf+LS]8R^oU[0QwY$4mzUsg,WTV)qCٙM*ېn6UF1~G[OWt}YqMV]+1Ŀ!l/.!vQHdYJ5+MN! 9P!KQ'!FQ$ ߴe (3O*~j !!tG̷XLHDXHʣ[ߺw(Zږqx ݙ^G-9N(Xvfeˌ̸]!}oirTS>"Q-@`AG/}De6;(PT'ɨ6cn(a2@ =JtQ:.B ] 5a(54>& O6x+6=Mf#f[;G 矛f9#zͼJ\ʘпTfa]R VR.Ħ6'ugGx1] >qztwf>͎d *fd hR !avN\1"$5NĜzCT*|Vݺ`靑 xq|#Y {ܽPi!Zz %ȼȔq@ﶨ }CC2Ș |䤇4Ut%=3qc~%LH, H4sxJcy>oX22:N56%9#n) ê 25Y#__|bP(D80r(`;,RnGʀK!FT_Rara|Neef{v8FMO9ORU0O0d6υ=|GmtʿV+JKI+NHZ?-i25qO&%J~5V dw9++=djX‹ \}4&NKeSzz'PMg(-0|%t#?iO~>YE (7C;+YD:XO^l@"[o랲 ljST(;&&co鯷wG!? Of~Ԝ=Ex!Ta4or}IC{kzf Et2JH: =+I3)΄Ԙ|s"'in;Gbd?A!h=H[JHEU&"/u]A*Y_%&qܦLpbP\Y2mr']yЂM:7zƟʕvMWWIG6FfGpg-rǑTvi~;$-iXa6dO} l,C6y'jLV#'&/̢)N`EZ`zpMJRƼ@֚q+AZ'kϠP각L^EXxEYkB]fy|3 h.[S:(7 ɸPoHڿL\BbߞC~K0I6]ښOYat猌pׂ^רį=/ *kZcf:PbomLa*}"h1)6:ަ-1I5~y,G 2Uۣ" 9_C03lV]!֕H9ϚVrm0fqẁ'!6N#s[l%iʵrC^`c)t2z@&BYL.g(8J*2skR}A(l5!ABT̢\ gZջMx,#SԈq5jZD%-Lլ%A_ӷc*`?lOkC @3p،԰5uL)`xJPDŽs1‘0sVNj[)RO=\y_ 7Bݲx|4 FmwD3% PnciY_GS_L_Uɢ'iV>?j nk=\-PKm0x}>3J3) loE#neE3) *B =k`6m[_Q)rL{j)Y'f|JP#CJ aLKx㲇L_.-^}bֹReyvɨ\ϼ[I2vQ6KXA[eta О"5:%xC]Q0}e`x-V\BےN'WG6`#TXڨb ٸ- Ta1$.! ztNtU(rz١ީw/<> hfpuoEԎe"̴ff368G*CE%JÖ ,ת יX:.&܅W5Fn`wġh2G3CM("J ,SCI?M-ml9(:b[DvfLq(9xPՑб^k {!ǁ09eIy5TtFκC 蝯<Wo"sR@UwZҮgYI{VO `W6jf3 d OE?h2Bws|%%@zK!ѫ7SbdHW18&Yڠ}BHa쐲#FGetJBL>Ԕ^rL%XT<Z/gY9?㖲N2E>IFwfQs;z$Q}RvXgKS7#@%+Sd}s-.2^ !9b&i5FFbÕ7ɊRi85@[X]_!0t8b&2ìPaTSu[RrR/XJ.% L>_wXaFˈz#LJcopKeZ#l,P3K u jj#x!;0Fߺ ֢ x|siH2%J10cdG! ǟo5خY,9aуgqϐ4/3y ,2ô 暭{T:X+1}`jmd!HA8FnaޘZy:'.aN+"2m,VG6LdFrf?FZt\۳@/s+)2֑0%? $ЉJ' ^^ `(G@‚r4R>.dfub!FM1(Q9Ivi5{:#)/nE4䩍p/;Ђ5^1d& ,_319{ rQY)T΄r)C8C-d19a7:c ,4 aԲfYtpM:/K38[m×cn^Уo|8kJgOl  L<1*Z8ɘ+ lˮ%R˒fހݞ"cQ3]ܼHFz̐Fv&{;]$bgM5yh7:&I-\e.i$`K+ͪߌ@ϙ1Jf_6ӕI rUK^6hJ2GV䫔d qACtTBg$Sٔ')QJ+Y]sCg*6戸(N)ʲh 0Ck>gB0=%t%̄#/X S*}"7B+]y|D~ПrwXzcfB)4a=o(m4Y{T Lza3Z`3lVc]=o-y;tE/ ҢEԮ5ˠ1kay R؞Bu~ %^7 DA Q-IBgӵSk׫{z=Xcep")^0qҰѩӼuHWAoD V|.A5tyxc)>gqFI+& hl f{2GQĉdtY^- k a]&;@Aop+(2^4uej~=72!ԗ 0?lF3;S{gx."ϬeG8};묂` ,=;__w$`?,ጋBto9M$ 4j3{CWQ m,ho&@;!4ˁ ?ԛqܶ%LL[> ^o*MQ@A稵h=*"nO?cȇpr֪^vrަrrsJd2@CkSf/F. ‹űwsWšg-|vz.*iX<̫ۄy<]B|FT Qi7 ]^ 8ߩY8J5y @9[e͛5BTQ`fcT`(b<|Rq~ez7$/؍?,^C隉Σ+??-4nAK>D!SM~;.9?(dLOY_j6&]BV%uy>,MHMPx Ō&Mccм(b?ƙT]18Gb= U4|M_v]Swr.M{yL/s+In`dR(lo5*D6>#(QˤKc| e"Հ+rQ2}`5}.=<)Uya dƴ8H%V_M5 NU_J^n΁rҲڐ4޽x,HNo#t0riQE$[\'0mqNG7s?Oˏ5~Yo7Kb$yn'BvBLv06WAt}ybѓ޿.=eѳy\/sR7FtMgzKCZ$ғl,`kFTFGҷha KVH8;}E?m˽IQ`h12 A@޵p@އÝ@+됈W?u <`ʘF)w_0 "|7t"B!SX׵* ̍wı%+yȠzan\4'oE -b?)@ln>0WE+2-t`̉IޮQw1P*]+3ZZȗ2hyY+rEQtk4cj u5hfTOR=׭:ǧqh9¯PWYN/Oɛfutms9o<;?C ;tg^p pwnQ,W= wYпD9~M[h(5tgl |Ig?Iˆj8*A~;D˷̅^l/ کvW| Ӌ?7Q -1ިVb~h©M܎HNiʯ~μ|~#ó.T"Ly*I`6|f2ǨB5:r:FnG'nP:Z|>,2,"?v^2Y q*#1(>zU:>dI.< '!&<\$({bupczm2%)w?֟[p)Snd;7M &J x]گ Kqzh{ǂH0#G}`jP{N:.3)q"._?^SWI6V DO Y8IcF0x++xG F&3 .5#QSՍGm1f7E73qGPX5/ԧ<}U3u͔/@q$* >$6.Չj-_`IÝ~eUbiā00$]v?A aog8N:,pW#CO)hpeDx ?'ɎОkNx`奤i;P.:ٷtW+x`fڗ߲w|I_/HM=3?`EH `>Fs^;8-d:KJ^ȔJC^oTl[cЂk􃵳~>-m&Ufs 4 -(Y%:r$qiKq&b7 ^Sgfoo`⩴ գ)d+iyfl@dqrη&d+0l6噲־\bmoP?IvMTqd7fέe6\bfrCXZ );/넹/$ X݂W࿚ u:U<EX.F)irUNI Zf͊l`>2k)œwDi" wbI$8 F `X쎿NQ{64q㵮:{%ߐS-volN&STD$#|fa. ŅIqLu$VhzpJ sꓭ.IZ*1X6͟%EPY5l det01|y̩( yy-@l.~F?m^^6fKex-EKl5? pKyXA (Ƕ]xU{Ppa5d]3CT1wڦQd [i)ʊ ,/4UrnWNYsќWGDis'&F&!*g3ZQ!ɕ@@;dULBա 禎KDkoZ*Htp~'XxPRy&~SV{RDG0&m1b 5 C|@ cy'ӮS%)mъS'`H,\QW}g#u3$65NjnJB?,4:38IRcd z܉rVXT5cSTfC/NbA&W+v~0B q.dӃx=*`O_?_ipzmy9VM=q8ȫ*>a'B>ٹ]u䙂Z,yS&evY|:Ś+i" ) 0&yJƋG4 x40 YrM .\κךvv wp ,6rax&}>AaM%`x"Au U)W5PŎKtUc!~@x\5IN >T lT(z4v6ɘQ3?-{M:D9OUׁl=}bcL]Hm֧ahcDS >X!oV24;eډS[GOc "X˚'wYS~r)qþ}6J89t)$|FY3mD9<9}) ן xcD/Th'0 u~[-#iY,Aь0SsFy=rl?"{jcfS]Q~|3kjl@;1{EzMUYݣH=􅉧98INzLCM4vڲ?X貙v߆O#:Z#j"ਲ[0p5cҨ]v߄{mucR6΂^LJMʃXwJ"f(L0˛) j9!tߞ6}5vJ1[}/˶ߑ|P-x.wzI${Qܯ }m)6ft~:Īk[yod>_8^LbBHyA&?"I; UYU-ʊt_{r83* K3Y"5SnnqOsG/%2!|C0h{K'D!S5VV/6ouA=ig= :7ail) 9Rh;W 6tf|Ź6O(Γ Ln 5j8Y3Տ c|8\M)[BuJ_̀7~Mgvev׺aQ-`u 3W[%NZh1ߖ|:Ufr/GਊAߏ1߽ME%yh-!?OdDVW'T}E\hQT$,SS1 vVNIKJ=7Q.җ9w8hRm5f<ׇYj"X(ʮ%iR8MBjnw()c?m!!w9$K>a?<K3v>WϘLPdj ``sL%건KV()nbUZ`t0I #o2Ή:y#{13?4:q 4!%^n9X7֬XK=I RUSb##F;Ɗ-F޷9d(8M ?`/t]I`dկr9xTBVɑޝ|gi0,A7/ww?m#I[+151:9LUV'__{#A~LW=rK]V@ bS\wf C9 y _dI$À#8yh;D;q/,zSS +(Ryu@1 w*%Kb~ yA1 {;7D0WY{kl;WKSwp c3;e/r`}F[KN(SbkC>E+)a>^ѸPevfYAtJI"˥p#ᮇ,rE-*"5f#ʉL4$?ZxkF]B_yXk'?j0)sJT@oG.qb(f2=4ہHc!> F$Nsh2]) l,bFδp]ޞȅ6z%<BhQ~['bq97jRAWGXH? irdU 1&9P|"vfsuG<:jdO H"AGJ޾3nL%.x:E/RXzYד,q0]^X8_ BOk8`9:NJ[ǔcЙme4k# 3uۜƢx7 ؀PP,@ msŨ^bzȉ-]]шn<0:5UY@c>6OC9N)e=;{>}J}FmS̄2eZ8*+װAEhEaQ` UA׮2'2m)RZOLq ^)Vuls6'+WyOr'hu_/KܖFƽG'CC *7[%]M-Ưe֬K|5rXr? 4o:qJ W*»RqT`rQ!af&521lx 6H6A>ۛ%zKx?tt*p[L C35mJ43ݽ # ,8~GGj.Õ#$~#m B7}zr(g6\ۑh4ax2~-g:8°"{뻢fLuPQHDĴCɻεOݎzx87ˮXBPhy,Q!`r[GmWxuB 1?!ZR?ܒⲯѲMhv7_'C-Oq&nb%GKvG-!N!:>yaM]xZRy-Bw 32?ؒn?U [hRn Ca܍l2Cb W;X TXRj 8! ʔN=9qqu4)1if7|s{uq񾍁_ <ȔX6F5 /w!ުya#:;L/8eM~c@䰒V}llzƳn Uby i{$A ap[ f&IG(Uo`qVVw%lifm|Z5*<2xngۡڻ]\^Eǀ>e۰&>X fKu^fYSw[CO)4pn<ڢUqX&: TW{i/5ρ3ZL=Xj%fP``ޛj{봶̃sxsO(&fW_#lU6}v/h0A xIJ&nh"LҔ20HI[ZtӈwN\uAv:m0fãU:ꑦK_/_*S[]2C5ͱqFNNrΗvB+nXXZߛ٧jpJ:Q&Fpnp.LQ4i0=Cv K PEQa4{'uRٜwB2(8,v{>|\$>Εߺ)aw`ܶh D% ܘj:e};_HNvo uQF`~$nHZwO @L щFLH VHZ0=yC^85`ݔJOZgYWsW7Vz: ?yϵiAo_rze06B)6" Ú;JTR^krl?.0Cxw9O /û@A3X3?B_E(Y_]?Q[[v8j_tU43gsb턪=ZmZ 0aykv*"$XDl\a Jꘑ@br:_̯e>/ZPC[-x_ SKr{-q씷d7kXFmE)T-[&*`!1# -dI⛙LC8B,_Ԛ-Ve# y'$> 6^k-bi3 ~؜ Tҏ QR= A2V#skMVj#LajbzTCkzAx!u`c s{Th7o`.$ZI{{dDo_)dU߭xdb?JB븁\ kըYmKri -[${qH@YSd{WLFƀ`/6%z.-CI^V݆"D+V DmfYfeQf 1Ŷ'hc%+t.vx `5VE?1w;+aX'聓}e#Pa7)iZ}钇Z~๐"ˍ["+)Mc06w$4Wȟ;-^`'BS`H:320 ]&Vw|كI8ܽGQc>CH><hĢqé(Yl.\KiY+P"?%oQe*H(Hf`Aw[{C Wž-92i£v vs !=v8 ԙu1!;E{w\.6^G>w"jn]ΧHJ`|o`:d9T\@3><8A7ɬ}[2^ .1{us)AfRZ2S,5VuB1tfkؽJm6tK'%bGwFߧ1z\D"'żtiCrls *|qGXfmo N|$Jr xLHi}C[r 4B LM=hAQ36Tu&%Ԩfsdk/kC8a?E&5'DZWNJbAg aUGMo Ҽ,xB :G4mBn[i=ظnnh6[C:pBOε$ni9֬$nYf5wj1c)(m`ֹ]X3Џ[70]DyJ]Dak9t|P3[4dZGM:8hb9&+]Jr־^YݷS{67뼠$!fMrpJPU^INÙg,vE<`]FY>h< %FNemwJ:ו5H%URg;kQ7Pz(t;6ԑ5WZ^Ů6Hߜ<{ S4Цr&$kWx{'+z3 E9^U˶U&(nX~!ܣ!pz~ey@'_3iUǀx+txTEJZ|$H6 p)T˴9p3b҄bcvUikⱼ/7ε2`:|^%',_g(f8ivD"׻ɸa XDʢ @N՞(Zk_͙M lefCQylD}`w R-=bP,*wWTbT:pQ0x8L62S2DO"q^CrSu1~ ,[fkގo(3!n I]zj ZiVIXU+'=d^#h2!2-Կݠ 5@d=ƃB^b( 7Ǚ9 j@ʹ7O^Rq~@*+ՅVd[Z%P3ng%D.^u{ X}n#3Wb~ه&VI?YNcP^^ql ;(v^4jVkXy5#Uߢ ~J>Dش5XU 5@*! uaϡ0וoxJ{ܜeSrzIyw6%r}H6hOzXj%ޞ,Vco ::ELkmg?ˆHr.M҉nɀeMk°w哕jx"jзVكo S48Y\Qlܼsn}qiᙚXZ0n5wHޚӥiO_dkSǮjDkC(l}e|CuK*Z|K|NQַG73d$u: Gsd\V15)Q9Gb@PEsz`'!kj9er{jNZU%9,U_9E.2g-!_ب 3'`^B1Rfu %ќAp9(k+|.j3]fV(g==6h+Xǣ)դG#¨4\#ɣ&&7őVs9rGԏ{~V q1x 2:T/ʼIS9PZK&RyxwA&\sO1*(ⷯGm 6guP\3,)[O!X_{3U⑈U>x.n#ODžO <| uT | ؃BYγp7nB%U?m/Y֞@ZT'|pg}zz0<\/@hq?~AGBA^8F9jLf!Àn;]򦜻ǙDE r1m% (t~qP|vd"lyMwTӛ UGPPHElZE3DR7<IKU&20nݫ '"-YJ{%ӫ@ IN@չpDw.|$C%$u`\c ٮXRl}^yB@s\ы1'K4 NKVoFu,cxNX]Nucsyyk9 M)$2zw{DT/ɒ+D\zP@տuP$'TƵ tԟ.oV!X7dф Ő̞xaqњ>K"/$\Tq J 9ݱBSV3ѥTg.H ]m<JԌߕ[d! ?v-E`iB¢Bn!S*9RҲ'.tR)q e羟5^߻R5Y֊prêɕc*?ofVE-*> twnӉ˻> =bYćL\]}?{@as$| mr F6Lpb^vw,l3wRK 0_ )^^b_l1ħy`%P\UT~QIA siT%BZo9z%eϬ)hGST R2=HiXY>- hr١ fXFFDڤ֑Ɩ\$To Ns&w3fvo;EY#mS(Bp幯B$ݓorhp$I2L=0Ug[(e481O%Zu)(PJwq|/@X3W_< Փ88j(Hz)־1?T2\q8cCsedvD\ȴJ# Q =ź{(!2I/{M3knWǏ5"='=tk_k԰̓wX0sm\nA]waMK(ߜ@1L Q2 VwZK';d[EKmmJ7g+`h_S)<N#䏥 dTMt$ͱPKbD)5.^)#}BC`JkB !,mX! <4y1h1ܸǘ J=G}Ehi}8wdZ@Vh ^ý/7A曋Y/cdqG1K2gJo.m9>VE=1ycum9JјMe=W12VX4;[!Dp{~-nz42F]o`ȫ:byv , =n6[֒j/6-MFĽjH5: .A]i*0~]NYulIDgTE25a3'ƂNȎxaOzުeӐ:(A*֧+M594DC2|;")cK<v# t|Dg!irb]G(YtBoszWؐ`wW'~$0ʶuYH#]-_P~lނ=pxQ]=FzVnOD+:/EpzXDiKq] 6%=UUDǤҎ榁 b,C7yR3w卉gnws ܔ;Y: MR7qfgMj` Ӑ(W*;1%im(чϊ5(JYb̧|Zji#z+EZYdPsP~.Q,H񓄂:dT%:Bg-b Դ-ӗ~B3IVKC_tH^Yx+ 0yH+^%ͨ!ģ4up!DDj.zx$֦lr5] Xki03 ]/BfX"rT"W\kbBx}[Ң1VD`I< { PU)c1+æu) esDā 튇WVd,;\9&e[\f<.Bͱ4py;C鹂]9Sa/=.,[]z=66a/jmh @-״tAGF wwL"}}*bY_z4v50jHbr9wF4xFۈTD:2*psdM|m8_2̵Ny~\zBxiq)GD>YH?.߮k.;Q&uG Jӂ0rb2 ? FZgڶh 9\T<5''tC=6yc~%6D眐V4A`H 5mӼ&*՞- U%v|c2Ʋ\tck:~ZM&gRBIcKB66*e3>5;/VA,GE@+v{1߂iB.=0WP_U YqHa9p$lĽo-tiL1͐bWPϔ"g#z]ZY/Pl SA+m(Ə"BC/ӢTD:s*KALX EfGݪٝnE7<¨6آ|9R#)vIk=} «ڏrI~Rd;4!doQ~jodҔ\I׫邍r2 N^sYgSU<ɛcɅPA[\6Zθdǔ,kHkuJ_7&QtMl{_)p=9~ArL,Q.){Rz;>n{ȮmJ oikf~FgYR[DTvg % ejE cwwE}* `l6SPaPT|C`l϶CWׄ;R }7-4B&yD$իƏ81Ȉj̦).2F õUr:M$4ދv%=x&e(P7%eG19ePQ3JWḟ|JτiP:][S; aqfKF){鉉`j.OJ"fM%7f&LR RF8b Y$$-ָ已CդNELjYr1*w)g_Zl87&c_wFVs@. Ϫ64 ܨZxșoSI᰹/L&sW(O0E6w_FL$_?/22m̡(lg㺆/Cׅ 61z hh`oW꺱T6j?ja߷\}R]f.<<1?{}tWRiP>,|,*y^o%dVCzZ2*y*sÖZy #ʛ"hBFY:cfq{Gq7zi5;pr>lD$^ \؉rCG -%M'Qc@/:Rj':č2&')0p:@K-]6cHܓ^E#;!MW1H%̢qsw\YE/=WN1ėD,,E>$?WrUIۣPQޚ/Qd M c 6|>m,inXQ@+hp77˟"=y .6ИL,/+,1b堍$u9k I5mWŭH:fyhvͻ~c OT+tIxe\M> u1hk=è؉cUbl7&8Lǜy57sJs m /&\v$5*F .%'δ ͏[.X W{ &Ɣa syJ> m"w0+B4m3t %3:C:d_!۱xӀAvLߍWLa)k۬b/ 9횾aL|ꑕ7ln[rFe({Ԣnd(ˆZ&3׿`x)9ZBOr2!>Hb m_۞B oDכ641 :,ҥ6Y\>`b8K!)J꒦qwJ ={^m@wv {*|qm15cR [QEKqie?]ɥafm3Fi}Qby/I7 jʥJbY!""[@O\Hdk5!o$^9` \Hǚ^/b9_k6Hj~'0B?BSx{ ՘G;Н {G/'f0EB 3Zy! QgmOQC=0Th׵I7L~#*3ڣGXrfV&G=w2S4+kpvb,l$qɅR5i)7ΏllYCRZր rUqQXʌM J:ߍآgLjnue*aHoyߦtΒ{~ bְ3NΛwsn?_UƛP 21ɨ|f+#zڗ"uZ8׬;PVs n80VlHR W>4얚I Z&wG Dz4ДPa)/ ºRaq_KE\^Lfk[) k ^ׇR@2»gq5l"[HӯwNHaH9B/c$`߿loNV1 aȇ&Vl,<Ӗ*ȟ puK 5&5# DMښB@{7vvB36Rs/S `];Md5^lLfߪtKN73Yx!m5c4FX-݃VByz&NyۢD{ oItݍq}R<3iʧ󭼤R)g͏]t+eS^`mÓ +IÝu (hbyrA .-l7#ۨ[SJ}\O^ o"37fJxJVNL2_ -=֖XZ,~~!89-ꙫ%!iM8 /cCoEAU*CIhW@R61%!=P|`y.=Jrsmݰ $nDaaԞ-nx!fING_x%ܯ /K&aN_́8h׈tj48N- :gɎt)d!;L#X ={b,s NK53,6CŌ8VƦS g:B$|r8Y^ ~W`ϪAG*$?ha.*Zg_N&8 <P ԃ-=mΟc CVt> Zr}0+ߛoJגιܥH=f ViÅ Z)g[@PGughGVP56+f:5`) .4,0+ ?㆗9"G>\C$pu5ֆTI0z&)CB!tK0(RKvGJ>Ԕ[V scImJXWRAQ% t B'"6 ^G|{DXD&ZҐ7Li1FV'VH !$<4Y۾򣐱\NNAJtYXr*5ɺJ}aVd3ˆ+C \K.;Ͽ͕!?L.|}Wd(;AΊ-HҜoK9w̱kn&Fq6jD78e0A 5hAGgѮƆzOgkP/mU_QP H]S<:p$y<&ӏu;mU\b1jK./5w-q\8('լ簮JG:hTϼ GSvzݵEp8xɆD[4@Y,M@RκE2v,K؎$LelC-#C"bԞp[F3<}ˠ;TEsG4+i'[ŬIhbK!^iސiDVbYˬ=8#s63lX}v{!t RO;w]JM.\L5bR T8y$}zff~n []dP^#ko˦DM{pHb ̵]8BiY3COLN]T3v4aܪH@/FMI]`'1¾h q?5* mo΢}5č 3_PCNMy%J=+\٠3.__eb֠oQY5?[QpjD6+E(te!UU?]|{/&Z0_Kneo4g9Cf Q|sQ?5rzd ]E0l[>mD)˸?MO(}wxC}l_%/*l w\=Gn,2= > Q(4PI)-/J{զekϝȯm;2ҕ|^zzeA56gY4*BvhPFC^}!ǵդiFjeiziڟcx`JQ-n{s|F\CiHlXVaU ټ]h_xQqۃhS݄737\q},rfr>Pydwjk%hטdzJyݴx,JjNָL'2 v6sNR9AAܙd05!%O4c4sm·7F 'oPvl 8~N_9a$56m`LQ~)-oM<'[ۄu/^R0&RTR}A-?A8:(D󔿩E*u7Ippw <1Aja]֟8"0jiܙ+ nѫGWfkdds ͇!`*PDgt;3U AOy!>.CY$cR_Zȳ8\J&"Hz8Xt ;| H tڇmXPHZ* :,n#-@Z6m6:DPЛ䎳+wd(0 Lqfw rUqrK@} xZbaXD~wIv'H"{s7Ljx.ro(z$2[L1e0.Gyjtvߖq;coV[NBK:<}Ouٝ+a]x:Ƈ#B=^qǽslޯVz+H[ڙ Ћt pK;y@zә4>Hb_Alm 5jnF*= $WǙ/3u(  ›L7eDVI+ѳ"i0Xˮ=x|ѻ%}3CBkd) x!8f&78#rw[;4莃`}hGaO#2[-/hhdm1'9c^zgL&xηx {vF#PyLӚLX۹B ]DV{.d =o&O}Bd.E?"#MXpuKڵFzW$? y[i5+6}&/!u1xME=f68*5! SS`G'F 6)ów|=ߺP=WY+n{j VbGZ~p~J[*Ělcvןcб[[R)6;ӏ?*} #/j1ᕉ7jR? >Q;CMFY{>!t\aG^".{g`(qBrhodzL={a}Sǃi ufM*Z%Pm"7YYK-EthLArU2ْC^V4L㜍|]ŚC MȘ`=3-l¯ F3H~ڇ cWƟ"<ƷXꍋڢOi&}G8{w*7)~-;aľ8(;T J;6|'S ҴĒV9si\LT6{@GK9z\CL0 R=szJw7YHRB1fҪ:K5c:7{OIqnfs0]aXN\^M-EoBi\&Jh\ƫ6eS.-z}K> U (Ő&뭤dzR e.U]uUd6TGtl)U'RϝB n&mŌtkQW;"1nɬ@\՜pf}cX%s =o ct6;rG&Wٚ mH(˨$*;E|9_]ņ$1yιB3A(df=2MPk+"l,;[ zq*cpFW8n]sl[u2 8ݣ G1^EtDҰ::_0=}Ξ/4p@*H*-O`Fx&9i|Gyn>yY ȳ~>֯lE^G,Qy'dhτ M(M98 c߈c+^ TxQubE`\NY}F_z;`4)v)Oj,@04hZ2e<K:RV?yeBIAw}|!?ip}>ҵPT{Zo#j 9\R6K;pޭbrS.a[d ['Zoprv Ė^9-l3cW٦NTn{q%ldJsJX49讶ȃe7ȟYZuB)EPz_{V;3_=q;'@e/鞾RO*a+*ة/Ui?1Qc*.D2A<a47? .q$MPl6 8[};5r"NhOT/i}0 wnNy®k{r"\q%<"(VG]IOk^LfoY^n\@Cqo"Ԇ}wsڝ)ǽQ^]\-Sɻ8= 7 ICeEiQVX C5a|Z#=FՁ,Xo|8̱sVt~1k+뭼- xP>)^f(TO\ֆ4&gWҦգQ:`;"1oC^m3!5[{,QEƫJkƍĔtA]6&#&`̽~`T37W*T/Q?Xhq™M\eЍ ߅ 2Vs1և%[3CP0ST()vw8$z0X+qU-AӯԷԜH:m}h7i50N(Uh HU +9bP)gooI1%Lx?&oRI,uusr~Miβ ;% {ב7kAaMb1Ce2TM#2SV \qsAg\v^en{B f55[1ÏzF!B=> /AsTB tvٴ4w4\|JW0_:[OX4qI/?i!-&mO'<ԚE@R~ 3DE N iҳB;\piCKb k/fE@ N}^tGZmӳ^ݮ VW zƣ=Q_j'JT@LJҕZ^]cu'H'b40 B'ꃡ0su=I ` &FMpVbTE>Q]d:^[e*GY 5.r_pmHSԖN)o3ip&a" Hck͆ mAMj]L0fU#Y r>DO.Su!m,s_f@wH\Cv r b!XT~,WY"楒u\ȇ8;>>pPyfcOaD#|IXuq1hvc{CN,LE^nMЄfqw,fómXj}`t0iuy.YWjtU%oydK ,Xy%[:U@%&$f1{1/Tñi ?X@j|w-[G,]D7'ҙl~l3goR+H!fv/ =e$̥kxrAV1݀Z\nV2+&12/z #xݽ|=Q轧Kx9z8jdrlaʬ8NDdS%{wNWb},/L8_ɫÏz'xȒB86.HzB?8a^Xnks> .JQBu  v?l0:K ZZ2#R 9_K!%dغ4+QHZP؝ '5 Y1 )90Dzu_+020dW*r?j٫uiq%Esj@ݍh ǔB}h{FǟJ;t.ΩHX4% 8Ūo:xa]#yyq}َ䚙U&(nȖ)`25X5N!ݲ7V|q={ept*vM$ʊi997"{iCwL]^d.b9ch4V\m0˖JJՒ .Eu%þ)Jw\jҞTL*R$(b4d#2ЙpY}~ ec2W!.w"TԹbHasC x= 0*D #l 4>t[IFOb򉽟Jԍ/@k¤,PwSO F-(,(3.v|NJfk'u2㻍ؤhނQ${xbSj pD=HLdutj 64Tpj3y|T%X.t> I2eUy`Y dя1\&E2aˌ{ztb {x1o݀:n!L| Sc.DeZCFBqcTc s"Q\eH䫯j04@QH赽[vBMR&*đ#k-´gߐO; }*l. |`Wp(791l¥EXsp1^"SipLهP`'Sĩ[,;=Kj1꾱w4m] Θ3+64Oc3iEgA,(vT| mc^,)0COvu b| hOAI4AcW  >f`Y.$} f}x h]=s/٨yoD=\lu/8;t$4hnŢe;Z SH)lmzxJگ q#+ ChH+2N ?sw-P6O=wҴ:aeq&?~vS֢!zScEeМ38 xKEY\ N-)׆Sp#u-w0%+ehQQS|8c$e>>Q:D:%R:S/v)G]C8K8a +hM>>\vm)-10X=|f If8W Ae\ʩq#ó|ʏ?Ճ6n4a0q;Z8z $(R00禭޹\jfuy2~7sA~\NCZjtd:%qR1":PL\W$Gp$p<'o)ЫJ* t~7Eq',Yhhhh?|rWT{Ua%O#:JRX6oC|\Ut>K;>qQ#׹ah_9)6~ 'CϢb{TR 6^֖~z؈s7Pv;?> Cjg#> $q/ލQg>we x@Wb*Wׯ߆2?LvjHW9$H[l<0 xY[N.9)m-oM? (J`9υ\ִRwF |j-RPB\H7S.@"΁s{6C?ʩ6-=Ȉi*]BS>݌5(P/+T8740> M/|.+F|$ @|Y58xI˞Kd{ͮZWj3]C>yxܪ__YqS:=k;H-g{x:VɌ\"Cj,YzflUC6URUS`x/y3Dn]~-KN^V.}eӕE=c5E#ptqI)9Gܺc~,@^N!j^qiq.?C$JWGnLxxVbMDё0)s49鿥4h<`e{,'zA 688cEkh5^E#X[ȤDi" +V]8i,A2xWdj9`*; 칤ί'$;J1 a;k c;Rx?&ד'Aʚ)p40dw8'7ϢTEUxܹ@f-1r;wڀ:SrN؄7v[ Ҟ@ivJ_dXwqZN#.=(], <5QX|ETl3G]nrjY/J/j^Brԑ{v3pw@dQxR֌<0gm̝8Pv9#OZGu1DPuNUra%}56 hI]e{۹hւߝ-- #Js;JXPSܴ+G`f2a*H('dc6 uwQR`pDObLI,m6zE' dk+{2*3Sk֜eI .?IZ! )G)5w h|Iɟdvr5dl8w?z R:V q&vAj__ۖf=Lo#u9k%VQՔ~`̰DNsh1KU@Y),ep>Evɲru^Y 3~/];|/+NBw\N]˝i}]TѽYem?_Bße)O!oB%vMMR:in` h ͖{aф$ac EϡsoNTG0ym te)^b@ {uƚsl`}Y̴FHbPG }!CC,J>X72ZŇ@ SjYkhgxI3w2ˠ =\⏘|#{\V6uqQ[ D8SKYP-wE^ }V:&I Dy%t;i*^ȮbfIXx(J؋CD .3*e<_7)w#Q.Ϊq@ ^65+hW3 Sn@q܊1sc%h,?S%Py.dC!>\.N0VWOe),F,%؞eua>Lz.S˭Ws!sv8E ԶUv;6H!5[7CZ.x눷x)ooJ$uN lW_\{jH`wcqsvQBQg?f`NT3$|kĽn*efǦuwE fB0ˍU֣<dF5'R]0CM lA D/d%V4{*rOG"ɈBA#`ш (BhNC-? #j95Jלk%/%!Aq>_AV,DhR@N ) T5hV:ijϸlr"Ŕ 0r6rY[j_2 mI~/eBiT%O&:?0*'wgHiTU}E_`3l a#%4 2?G O 6:ӫCc8㟛x2iY0fm|^Չc70u8v tәs!zlík%J$ȥCDgCe|%>rZ5~ JM-s*:~>g=NM{SNAiR31B+Qs8\y9w:r݈ Z2SW?o d:*oKj6L3+v0E5ͦunK+zE]7KyLm lw06z\29x[gMv(rp*GޙLrICj沮Ei&ێHZ.w~B0^Tڢ&h@ѹkD.2QTv5 t*UA)CQs>7=m'`!Qo%Xa/bGs;yaԆR۷T7|J|귏0Z0i={p/$seиDA61H-L˓=Z> PȚzT0t'))YѠFXYd2O=.K|󅖄U,*]Lq@;X2 =$:&ᥔg<4l[j.^2넣5LBSѫ8x*,v9sd dIAP''&Pu8M`XUEjuޯ&+Z*]Z >W;ez=wA{MO 5GOG Rw/'88'6?G<&JXn,"1Ѣ笰m3$0 l buܯ.y h|w#O#&uԪwQY ҋSWAO [Ie$V)BygiG&Y, 6ο+>5 q3H޴OΦ,F^(*~d%=3t|N%U_D n;3twkdw4HH5s_18Ɠ2nNpRYZl*w8'X5V1Y VSmhQmERvA `P SV΍̘ n?3P\j0G긒.CIQi,I88v\hmq}ao&FjcW Yϕ@?C+u 5$΅yQ kVI$M9ln^[AT 맮(Gc`/ȑ@K-By)Of{=s&T-,]57 ʼR FIhz@,Pj37#*hSj:7S`MC!iu1n֝J^A} BUT,y*f(# :Eb 1v`{no&J~؃DI;07swsꯜeXXIY9-ARS!6éE$;wP6kc"} ޷ܥ]4Oz( RlrA604N%oP4{r*>[V_$o,Yr|֥3쬘K z_4]foc Eڌ4x+{p# H.  *bÉݲ ?4E.=l ^,hT=6J( o|k,.+K|:ѧ&ĀW @D'|5hO 9Z l,WgBVC(=.4 M]N0A+ǘ^)GkQ /Lo2E5/T TYZ~p^pMhT{5ZZ(7g wb}FJ𨼱ƶWxΉۘq8h$G¿vnEћb=<(Nj ~ Ge6L[VW) ǣ+6CNG ؅z ?;\tN*sf0IRIqKY잙ԭ)iB\Np.n}D%Ep# OL>Ȋ. b00\+ (7=͈NjT>+Gzo^ĬAJ:f5KkCK®߇܇9 D¤Mt 鯭Ȟ6x6XՉ|q|jjrݹUW;yuvEY"Bp{p[9jWVW0I8%l\Իճ K#}4ymc joNs*|x}y aCډθl|xe2&SfՔ,X\ɘi /k@DEV,t{{z;so(V>+wnA"CtwhM 7$IyUP!a2Raď0"'77"f>:.rJ0+]g(j׮1RrobY>6Z4y!'@WgWmt,Tۖ,~O!˧M`Up ٖ¥3h fi)1@nX,6֊>SbGksg_x?O#`a}"Cޜ[ּ^gyg/ߊYi'#9Ć/ZϠpi~K~'FU/csJL;Iq \P֫;als 'T`EFd >2Ao~#Q[T~1ɑE@^EfpQAP˙KA'='-_JaQ  P]˜>5O5k&`kQɱet9r aERD*Ѻ!@E2<tM^`5< SI2Ma5 5@c(%+-{Tվʒ}d*7 ;#NVCN̏Ɔ+TH?(q1c%5Gn`Vs32@ TAf<^PRj\Dϝ{*N?~cmR?>+u;(&8a -pL BBbk=2( A6>h)std9b ,3Ѣ"1`ϱdp9"ۯۨ8ϵw$&X o[[9mcVD IbI=3+S7ןFu[c{Qx{ |>V+rk3^ɴҒ5jTlWx *RacPݪm(&yjnswӗʣx<vxSϬa.IDu9i ~/q#DED> Me>NJ@h#LBq[X`V[+`̕Y(5/C TZ%n$Au VnG/CJV-ڰf%nd FJwpf@L(:eX@Ê5H? ^2;Sz{M.`# #W\yW) rfUs^R4<08j\sе6ѫwBh3J^C 2FWgAK=ֱ03,yMM)]+9Vhfd±agjy*@ I$B<z;: bmx\+߀YV lE4LkԗZحW>\ >z_U][FqD4e5u(j`-P&F"WE!L{V˼?{%j|עZS@T =#Tt`),o["lai }8"Rvr VO*eep@_`\F1Qg9zBóI|ߢSہh<ɌF:X&Fj >t~Lp1&/#%.*Ζ%k'd> z7ڜ[+I<;6C=ObLƬ_w/E w)Jز*py6!6R lcWJ7Ca.UFTYo4r8]pQ/3 y Y>qBfdwPdKC4~r!dw5&Tߩ T&,;:a|Y#pT [*Ώv9uoo$BW^ɱw@Oz}4fQЬpAFSl,Rљ+k5?xhS!֯ 2Mjy0"8F"7 )e_6~p;๛}R#^r_4۸cuH8yڥv,'c-nՂ|>`*ۤ iA-uEc2+Oވ5r`JJ!꡻g% зl7]4pMӕq!,`*CǓ8p]% q;T3_8OE/SOKV,ʃ뻙xm8,LxZbO7=K^'_zqlsxyZ~ÅԳpn$ Q&[X7;~oyF}J܆ _w~wh;@g  N-msP#gE8.g2e ?Gś $Fi}fv 3:;itȷ8&~hFȿǝ$`e/.U{^Paf߀:YvOzc[ypp<9ReE*U(eNqVĪF.E;`%Ah.u/4<:[d;U1qa*/KӾL_‡1qm:B %h@LhSVHJ&Rς+*MWa$^O;!c8ױu &u峤fgv™SaP O&> 6t<1~=R6W<2BbVF\Ntt,Az[@P= v]x3l!۔ɚr׍܅iy0ܮt\^FN27 {TkZpxHB2CR)C߹9tȎX0WNnp!ʸQ2EŁ3;&{.yQƬו16(EKô*M/:-ݻ+"ba'Ga}BbKW|;`jMldCfȢG5{ + i ۣ7ۈ&`gb.YYI瑅.g|`k5ҽ:I5#heʇLEe`#bA%ƬY"]{ 7"'ByKi;1ı'籮T._ARr`ޓťB:ujFEڿ&TnP1UJN-b{މ:'sq}|\ka =֎e5OB9< _I)^4 nلL"{;.,1рU;^߾yyx+63B9ɍ>F4L:?銜zw1U6H%Roy[X8Uchh3|FDQ0[~fj ->Mzw&e9K)?5t <׶#|Tý r6htr}|Mp忞TV?ņpnjwX@rgieJ-F!+E&4ܒ{HW_/lB"[m,/FwɎΕ4Z*2*s MRoQkq(,<{K9ARs) /i鴜Kbg)H!!;'2Қ-ilSY]"z-[)2fۧK}ȻĈ\>4,/=1nqÚ"#4Tcߜ-;JD͔u"pXxlrWx e$N^v)>񡂃8ReLʸJ{UfA S# %2BE`+"E2`޲"DƟ+"਼ۚmaxl[ y%qi33S'T&#"!}|)+fwӋ$ y◚^+9WlȨ6eϮc!vM kǖɔ(Ʋ.V'B8Jr2k-}j3)P&I/Ihs Hd}$P14hϏU^Ybպjj64|s{ۋu"i>'B L݃`L|MJ)gGh~wzʭl@YA.WxSMaMd Ѩ/,= ?g }澛L;rwi6]Qvç)R=%Lv0,*Grhֹ2N{6O b?7bT`' Q ^َ]@';5@:I|x<-sGYZprWh!r )`I; &YŅޮ Oa$&s-jܯՑ 8)G`HH)Ţ1*"SXp{"IC`'Jg( keJ)M8|Q"~N@_Տ7+v,`u5jYt gJ18dnKi[&uC$rZIi_B^^hʘҴtP3&Hyh(s{A<,>v(ố3Bjad#%|  43RVY,إ]g=,;>=GMzdқ]=ʘNj~HJ!Skpٺ8 ČGOYatN{3Bx*q](DK UCMelܕ}+Gg~XxBM QIߵ\E˺VըO`Gy79Sa;=V`j" ڠC/WsqNfQ Ux-3:_M]TS @k$)`Jh3 isgՙޫVfU`9*cV&u>Lml9˂:O^_Sw_Ӝ^3 ;d̑wsZj ̃/}!|(;:y+f(n/ ^ӫdh1l1t~&i0Rb7omT$_eͱ)dZ8gUNh%`n/vx BM3Cw]0ϵK9, ɸ|m%4,-eZɲm!zE7Lqr+F-7Co~ I迄SغБ׺ k\KI ݖBFN1O<8{,S!6ijM Y7S/e)ma]i>zU  dWrRX O?Om+ P)MC_%S`QG"PT{(fc0"PnN|~OL|wѭ( ro?YioqE'q@w?/Am 7pQR#rT͘ \TL ߑ" #A+ԏ{MKQʳ@t xxVyscIeRMQ)vPm/ 5^`sfm`^[X&,.ݠ+*8Q8 Yc U8d!ùm(cLw .CO|m v8CG]GZ$H~uc# -*ؗ_>xZFUTNٕ!PHpyk?R,I=cM_srD!E,ko.\JdACFr$S Cc`WӀa-rcF*fHiYz-0C7wF1IV~ n`$wUq/̜{.!Ѧ0C$ig0x&ۨWrRMNR}]m.;/ğZmdYļ+ߪ5~@V6\N !p zu0ߪ\06Ekg!*]L'+ke.TzH:}شC~,{4C⃝[;*_(kB\s@x4dN˲4~Nq>QA3aWV)hCI̒]FSȯx߉\aY]\ߤJѬve pQH(,]wbt+VEfR9nEұe*=S2LrJEI{I ^Δt  W6fr.~ޱH 19@;D_B%fqa+K?IOU9.Rt3ids̕(\M7&'m4r( 7rEA]rdqyH{(Ws]9{6)2ZbP\FRBMlSLO;mr/QwUbOo3tȂy6#-LVJ_OT1`YT܊KRy0yˬ9K޾J$ 7{m9"=JTr?e$E+*פ#7V :] _‹7yAnqMVm3+5חQWM5H؅,d\D=WRى|ɻ~ ]U*n=&07pX n<[VL -T56ԧŰr\K9F&ZT]Q`%CA13"?a$ЂPc4UJO$ vRxOO Cڞj̔܃׬,i(| |f2za%4YUM-d>0"{hhj;Ǜf#ȝQ/y|]R趡b~L5dPpB*7,#W %|qmgˬ>`կb: ,5xlJ<!FGip_Rb,3Խ`aT*+8ʈ j7 Y-U̮6E(9 3yMSZ5gc8Ѯy|c #.d/ڟmeSMNt\EY2EE͹;Pe:zJs(} bDVce|ET<^eաgqcّ)1G#j:6e/c|L01ghǫiCyP0#fh!n\keY~:5&+(|QAt9$ZhxĿwej=~o"Dp\l DMLй;ZXYo}+qu8z,9bgtCLguxIΆ HxesC|@'R'Uzdj:Cjk[5G22A`>3:g,#WfGdZڼ[~WMpͷ%0΍-[^.u$S(gJ) 9bVì V~sCVn1GI4fXot7лRt1-x箑`xLġcLh ]~y$%saި&Fa.?(.ѲѬ{ssN>)|VPAq Qv/f[oBx{ﶟM31Ue8,O<2 mش4yB B5썀~L-2c]N cWbÊEqCÕ.c`\ξ?.в_&*Lk%D/xQJJ`$盪t )Y]zfz|>y|F!Ko OƚW6#FoV[YpI06-2-L( nޜmDaA:.)VsզjN&Gjj1bnP)nt(-8\Kڤ3ErsXfᑒ ɮkR1*O'M RVup|{;MA"HJ;qDOE"[SִI0-DnWV60q5ϚurnyXLRL =7_{Q q*MڋqrK}6m9?FM|#Zt/i38p' &KKT͋5cuݞ#xZmԴc::5~".+@~^@uvt1M6v"`針 l,Y`M PxKȞy47(W4NO!3wc2. ӵ@dkf4_;p 4O7 z FmD-xNtݹ1YZ1?9wP\7?MA vӟ+he1^d 9o>ׅza]݁zec҇WXZ#ZkTd<`?װzrT.guB K,)"2~LS5I'}H_ ")kYޯ}Wc,6ڈɍ8O _Z^N29#&z,xp['8:T?KVz.:Y5 ˒PLR(B߶-r1xHtݺTIB!Hw=ڠP㲵.JE, fӡN SXyQ_)l ̖Vߚ/GWҦAiď\Y^;@zV[0!0[4Zn$J;#<[$*~7HnFs֠yi '3\wӰn2t/u~ zKe8L_jbD 84%bc`"KCiw_DM@b蠻WCs(Gzv"bQqW5&pSh"kPg`<)! 1P练`[gko..B*?zw}$tp˷=SK69OzySWl(!OEC."^Gٵ>:\Wѝ?ٱDF&St,|֯ B\?qdY:"m&L oG17YM|H/5|^p)dQ_w17/ GƑ_1T:3#vW@VR+աu!\= ~[-2%u62A9̒&ԋlw>x~)睁 G1kk;5s8:8$y7STz@c =[GJ84Imߖ'pmIjQvU,ÀrDHΛopbU_w&kE Mux|/QX$HTt ⌿4Yu3rLM@bFŷ=*ũyAw/.֯_WTPiT=;O @%-* 9,.dfFK >^0Y@4+2@M H]Z4_8agimhZ{ B-؉Zt ȊVcK%zK+ҮMN@.++73cYww"#r@][ήbD)E 8N]eAt1oF#{שT! /3>A 1p/毜s?Jm5\Q̈́U=o}kZy|pVYBkxth\p،^Ob) Kkx*/DpV EWc_\mbzBCeL>VB Z"1 '3EwщNDfz/Eg]ɾd&R/Jv!gKΑD¡nhJ0J̽pLMipVn Gz:Q1g s g?*rWtN&,afRs\fT,*B G`%x/N7޶A%k/Vn:C=Zee=FZ݄Kx 儁Xz>{SL]_ـ=+𪌎ôYAd WU2h+r|Ӵ(dNf ~ɇx]V36pkn_}_Bdޡ >r_ qV뺩/&Dz> IKN1c!?%Fn!xd8 Tw;y)-Aihv x#Mq cO#%2g!,i(РVAJ Hys1z'[2qdYTR溔)DѾdXc[VBǔ?z-4DWzd8&U)vt:+%uȚ(ԆѳUwˣsbi9BiP):ʋFznxo(!LI3zJИ%a۟˲U`ln'KanWRm~i$VJb~+źqK陘-&<@-K镎o˨(/M+oI`b` IVY'J| r@Ua+^]eO'S*əƁy ByGmբ7ZF*_y(̼j8&:&h)'/\"5j7%P)MG`,(inYW& TҎNA>H . BoeHՎ8ŋfmaC*c3Ӟ;h,O@_gLJг|yNh5cz1{Q'"b.}9L[K/` erҴX|o_nF確1Ye3tZuK wzZi)r Ri{mGr^1Q]nH:A@6szБù'j5Ze Ľ^>ׁc-gQz(*ҙg#6E, ":.>r#B"6 V +:UyDׄODyS-2ʼyLaM4s#oz%Ts%;[вM(_y/fe) B%Q7 OW، Z'vqt$+,f2-vb@z\<-)֚jNHObe>% 2 Ta1,Cd/soE6K,{[,vKL.AZ; M\yљig_n>1~ 䑯[Wԝ ,ZH|&_VBD:aй7Ca]oKW\;ѡenr9,["40gF㿐|*D(vͺ -)2}x@R뒓06G(nEdX}4@?}Eg>YMwKP&If3d_}(ЇFhCx?96eY@1֙MGӭ6Yfpnްڦ/C o}u_K`TH/fB>n1 uӛ)8q҃VU(VơL 'giZĿNmb(] *Qz+6r;aؕ]?(*Z=CoZ~eOuܱK☪EZF鉊NWZj!ˍ^pWXy|N8ņ2qGP`Hu|" pIKqc0L` w?Pͻe$_?)U+@]bDEr3JTCޔ9Ԥ94pY xJb.//ɏF؃BT=~ws?RRАt%ZiJu9ޅr6 u|R!ZIWw*2e ޤ]~urJ^~"Bxn٬'s9tG:md("f*;q=bz>Yە'?o8}tAi*rv|q\)IH-52jg7{RD;;d`:SF#ޱ;lvde,S/ "'Vd !DL;wOۢd+0XS?qB*e=bUqҪ o9[€z =νh>d$h|wiQ5a1?v0אżՄ72믣.̂~='skQOunIQ!b-{V;T~"-fl7}.א*5$o| )y/'IyuV(|>?>`FFyARU}Ql )*fFBVfK)} x5H{WBfգ~ -<-d5&>~A_3qψAm 6͵u"@a ›%H8T^1Q14b, ^֒[`لC:SzQ7fA Kn<- K~f@r?е)+Jȑ).VOOwj5|PݗQ6(kё&E[J2ٱH{2NۀW_/0 哉V┡>`]R>U;C24j0b,\oG16`)Mf𠄜~P_BI ym *D,O_0qPS5 !VL|"x`sZZnT,j s/j`} :ĠAS&(b]Ʒ=:~;gny[~,n\KV+~!跺.?<{*^DqEXa 2_IWDKCsa^/x4̓oqd 'o4Y]B η mj4Fޕ1׷Yw Ъꥃ)rEaB4mlgñwZ+#$C7htyA%k -!_;."kmȵaaҖ kϞD{5[+`J ]Ci* cOk*Op >>tmlU>6F)t!q@٬ B"okhIcaZnLiGrq4YZ/ C=[r?>.!'Y=Th+ya:eܦor!>{LD2W"aE{hHi⭝BZ> I/I@xCI}f 3#T\< ֫&d',XtOUZSWen=vܡZV/Pc8G,=&KW/w]`8 TkK \U%N[W<7ʞW=sdX w8)fHIڒ3{ΒB^yUĮlXķUk8URx|s02R8TP_-$UrXq3t{8ck[˜*?53 -qD [yUŴ>'Թҝfߘ*!s1VMO!P ,T&6VtSt' $ܽ/,iS)3|%ӑNuv6dYGxc|~R?xk4}@c6)ȷe5 }WfTf1L_#c(JGԞDG ve^)9+ℳ#aШby)ӲvYW r+V񭗬 !fAgaoibVC4[Xe,/|V@sM8j2H6-q/ PB c xsgC2ewпM34B֘wU8Fg mq> m_9RvX"sxY]{S+\ m|hۏ F$f0u19oG锖LM-]E-gctɕX[ف8,Yq9T6fLF0 f6~MC?8h&H!^S= cY%~ TU;42+ 2i~0ٍ~1DNPϹX|- OL185Wq7#Ea]՚8+|e4(Xd:-G;:?p $tUoM9 弴iNløSn3Ԝ  +38@pVj"qI'7|lN7 E֦ dN!?'@fpmuy)懶0A.q:ٸ+ʧN ww a&׀D OVJ,/ AZe}اݍ sGsł>!_QJ RъDy2<츛{`~O}h ?25Y7==͚%/rS -ՃRR(ky2YˣF(wJ4!t@$Hu#|aDKd]Xmw0@aOt:/Hrlʣ` ] xP5OP7lڰv^ҹ}߅џ]u,n`=C"!)pHhЊ}I(]^8$\3,&h\jt@ґ dr (f B/ItyRL*>#@¼gK3Q.6VQfdmnX]ߟ5ɯf}a,WrrM2 E0qwp"Њrna6=enTіѲ̧׼)ğm8{P@}d"tUA.y~`,Hk!7N6qz2eٽid ]9d8^[k&ȓ(w%ld#5>~YNԷp1q9ň٨V?eRտ +|㹳vxՍ4@5Ss>i5du[ϛ9/xXPΎ-\1WJ @3g$g9Fiۡ'Ay aB$7C03nQD WhX\?Bg :S_u3` NOqmD*7b)͒x/7$zuBSM(!3'=KxoeB|E+'6"uM!u&솣4'ڿwYzfgWxηU]3w6=#Y]c" 6ի#F⢴ 0]SBfђoR{v>]tmi^*%&*<_cf{X =525,2ԉe;1W9^ lFWԼ;D~Ѥ/SQ 1> hv=/rN( d0gxWX2 O8$ 0-B{9fOBjkUfͯU :)Kc>ioq < A@;w:^̻q-v5%,T%5pN-'3NXEX)BSQoNRXM=%~xBU%@_744ex 5ieE6n"LSqʗ70B_ iha[t\8/U`4U0 +9޹e%x\pzt"=WOĶ-/,Kcf0 n. ;^/\iHrqh\H9i }]-W.E M*0v7|xÃLAA΁5{XҼav%Ut2hNtT= <@w*j gV7I_WNΛ sG8D ڍ/A4w*[1a(w.b29}S"`2,WL運tC< E*sT=mMM]dZ"(~K"Q\$ ^R\# gnxFLK,u^O1)J<S&\ii?p0m`sVv&uXJn⥥Z2&,TpT`(|5- $Pm0\,[2T&Uu4K ( l"HHd&t$iSZ!ϸmڳeHhRjU.t+=pA/Hw.lV#̬ K!.󩳷Z;XO҃ K'D8 VACv%* Y`%G#UtS/o+),CشzIU%dsV#vMOͫ*Qea[|;5N`MST7躸ꋲ@.ԵSC{ 軗S"+G>#Hn_uq3PS!57^HU{* jj$}.}j ~u\WJ(";27&ƽ{^6j&Qmϔ dpE/s jaC08>x Nk-fHc*.Ddi?徐-Jj0zR4 wb>߾ doFGmw2ITNR r|C(PQ% .S4o+M`<2.-OD;3!L!=c}ѹظ͋1B)x},3#dYxLs!=;[|3=Ʊ,VQj.l-tQw>NCsT ."N!IH`VQ !a<(OYXg|S ]Sƒ4d2( 4f*fc)xO č읥o)FXhDỾ&0|8Z| f֜CJ}Zѯh\< ֵ}@ySA3u^!N ;.0H`ynfEc3,r*' p2mהrث&/-EW!u8,gO$֠Ƴf-񽶺#@+%s;[L s^u~oG?[G"8i7d_w*jfj%cZ^9_ݒMKL=iQ#ΤJ1uŐ`U+jH^!w$ ̍CvwE$:A]4>'Q$jJn'+ 5g3Ec@CIM4m&Ȩa,雤%WY(clEJap$OSm{̌++r$یUN IAa(? AřgeB`*?_2m{GiT2,M"_~P0E+}|â`Sķ,Z]։6fb: H$ޢ'ji3KTh!]|W cgj'$zWh{䩚 Ӓ w~O4u@9V:'c k3~q?|@8X5ɋ#c }D.VE=mmG[g bEremENIL1 Pt: bHCjdH #s_2y* **`Ӟ NGWxD-`w]QCLfUm4[$fEpgJaEyu CoEȑ뀘> I]cˢ,u#&l/܃!r`b{9ޡwB] /]4fMȂz^w@梷aP%_ CbFGB6!J;q‘΀D}H- , 9'g MN :az³J0PڷHÎ*k7wck>B٪)tԶr4n mdgc2Ml~LF5`d6y;MiMGehe.u,SӃ"3uݏe-B$g5#% uovnT0"4w 39ڻźG0\jS nVڲɅB^ 꾾@*<*$\al`] A} 16'_L}ku05Y2fxw&tBh7T_u4o4@q(\&0qg30][ y͘;7dym5Ŷzxŀvjd0k\C@*5ݜ1MDy5tA B'}hM&$h?+ |yq.pF"hk8Y؀+(4DU.3X 8RD*Z$DNU[V؆֫꒥)P-)rlhWm-?7N6.zs%ͷ%z0WRh7NLUwJg]9fg݆bp c}\* j51wh*xrLn 2҃ m#~^C,}niWf6 ` kf_{jZ%䞝K(t^;)zьKT4um%yH.ْ צBl?[b\~9nAcr YSa1{YXкb {{}ey m l_D>DZ?M٫ fs#Ѹ`ąa5 2rbG7䢭u^Z&|a]3҆D2ht̛4'Ph;IOىg)fKӿS=c9Cal?yhM- x'؝cv]lzn;R62D+xVbÃĻD'Yt N^~op/ J{@iOV4b?hԠIYiHl 8@y~?,5 藸I$ A6Ӽ/˜@ڤ߻!H3/\JQDkc \+pMl <+'J @$d*q!&X܄{uTx P=B\n:5͝iaYC7!wrbQ^vfR>u"c~`IZikَu);/t n2]}W!븐.l!2`=xS%# Pۃ]ěO1mJgU$'#Uo~8AHno0sIՠz XX:ϻU:h;Gs>Y 䭚i?0aNd stF잩՘wL!U+˩*k{lN "߆Ux!0R0C0nD#˱DFi;|Y"|yHZta@b#@+q$S8eV4vqĞCY_*3/S0;'5m *s`@C(<}`}Td}9bWiʩ”<_+A0LMB*hoq~:AQWL\- @U<(W'\5!{fw&vA1B3fz#c9]?ic|(jnl%`B0 HhNd׭<ч7y"3n} sNTV4F>>B֓082>r*~[,=u\6:UZj`]d TwQN8! ".gðr,U#B![k{̞X=;eVbE۲%ݟ0uqy "<\geIB67ɸi.zW?ӛl0Nq}Y=K;D/q1$аrxAItk}j#X:<㼯٥ʫAdma ыVy̰8Iҧ_\g/B]aܸOe\& *-,Zb{G|(Ӑv1vկ5e3w(u@my!7LQnƹΌ\uT]ӟJ}柊>*zX?Y 2~.&J!y+-4u䘠m;Rz+v݈4:DnCi\p*M|QUK8ՍkkN-O$5K_L¶U:պ_OeA#>b|rֹ>+=V{xJtxBZ1u,MK=\ nďdo=p% or+E攷w{* :QNg:2sN6R.}'K5rT*i6;L}MĖު~InD dmŸs p[)T)+)n|K%F,f)R/TBaM3ΐ z]FŹaO{s &T[ %Z{*%[  AFh_yc|K:MjWLz)hyib $Sj#[F{|cͱ`b)bnypnd'c#!av'E%Ȍ\'¥B1TJ3d_Q: t){Od6=,CqEb2%߂p[!;)2\1~k84MrF2' bj(j_+1oί6JZ,)"ʈnj1"9`I{Y,$u! q52a:Dǹc% GWTg00Fi =Xnºa)(B8.䣌)1pYT&ʡPnhh 3d3XBXG/Lxжы؞Wc&J2-! ^u!ՍhqyY7c)p PXz ?8Hc0fK0k zPhx/&NfŪ)ӫQ@8@bhj(*g Dj[F9~U4Vx<֧4G M='.ۊuf2z~ HWsP8k7ABl?E h /k22FD{BZr6ZAia,`Ї0dN8!x޹Cnq?l'?v$e:]ybV?83ǣQ0}'1Mי =D hDeKþT1m,R?ur1^i/3u4:Z ttB1t'IkC+*9YGB$B=*҄}(s!z?J{+,1YB6 "W5]._3z$:f0X>ߧld?,aXԒ'U R;.wqC!vH[==X+>MH8T=Ҿ,$22ɖ&<ú^(d#:xiB]Ћ@c\]:mU!"̵=jZ8߄Py+X|Wo47qv8j)o wGj4nUN}6X9Q%(- "р-e||O\-TXIQ":of֬GΥB6$yiyA`u6uҝHa)e`X_O0_nM-"x0h܊tRA>_vg.+1V+#vgo~s󯱃{$prku̶ЅJvI01EJlUCo('SMt {L0.\Fw'3+=Ӥ^령aV?Ѷhlg{äVkٕ_0I8sb]I_"¦M Fo @-AJo8vWܕ;yPŽlFܓIk &~+\_[Jx[ )\GWR bŀ១y_` &ӌ~'_+)|L}׺w D'xbƅjۡօXz5ZfC<6k&JKBjˀSj.43͔8 Jœ@HD]sU'v.KջBp˽T _;LT8}ruPr?Np# xʎY49T,pj7S@3KrF㏁{*xrՆs),!Ӹ{|}C0_$G ڪ&<ָvxCPಹVZ[U͉hlkhڡ6:K's'%k~gNZ:E⁇ΧyĴc{ .&-rn3ְ:7'9Vo[E`#1XI&[hCg AI$?PIXC|T6bI._wG!IJqc̨{zeđ#v5ZU9/8ThY M9Ma dZ_?~) -?iyP7g&A\x+*vl_5 oM M#҈uO=/6(~O 94y i"MBT 387="hiz*bK 5>uo?,(A j_z V9s^ #RY3ʠC:p+iS1/Myƨ3s.=&HY f-rwƁ ;|CScžE i>jYO!1;76C },ʁeρu^L a0\9sgY;BrU߮m`dArSp.{a4^qR.ch|if)u)/JS9ߒ[[E5MYʹG㧌ܕh"fʚrG7ġ4Ȥ 5g㛧م[[|kQY}^ l:ԴK5STG􌌕Ƭ-%Uo+S3s+HayNn?KOqP[^2c=wJ:(ƻ?]0Z PJ>_U<(c[740px-ևU \;ݤÓ {wi|mp'a\N ^]|~+|h$@ =!J"@(}^U|sAxYf%\\l/]BRSK Jc葉]Tw5RO?SEGf֡3.)?ys Ұpw`:8mQϤS@(eH`j'aZ=͖zupIM@$7 EYD.n*n|Bn'IȶC%YZs&'#KSČF͆ v^KT'lCnZ%X,|__rx]Lp ŝʷi'?Z-tK.}|ƞ4?U/Bm1) >}>͘ N65Ca3 6<\KSXn7&My07)sٗ%d@NN'5  )pY+{1dߜč߈YmJ7\T-Jts,}CӬqj> U\:aidm-P4fTK DeΏ f3*J^F`Ug`G8#Dߩ7`†)臝j}uC4̕%l4@9/L@ZgLU/mld}m?:e\F(ʅdL:J0FۭyV$c#2ǡ1i+綄Ҥhj9ڧI6(ڗCڵ(ڟ+H.V}m 4E\pH/_Q*ϟ> +d^M%Mk>eG+BNNp?A\X;sӱ+c%AgA "@ t?cNJEIH?zVb(,@ ޵c|)PL=1(PSJAu`[F[Mܼ@P$<}Gp܌#Ndo4_l?RT!viK+]vSDTǡے%JH$B1LÄ%%e8&"plXjLg;\ēEq;`l/=.*{6a1{s:+?ENQ9mKe%G\"UrG(m]L!xmYa.NJhQÈ@I .'*6x\nIuߑS$)eO6ζ+jb~wƁe m04ddiѷW3x EZiJH%jCD!HSвGOZR(]kDutg"/-s/oÛxϒ91`/3<qeT:b)%ѩv Oh^i'[y=L-n_jⅆ2o;،'JªSb&)PёMռ[H'?M>/f9?3aZxH}YP].h*A$7G2AzoXN4w۹]=#}Ҁe4Ԁ c!0(&4n$Ҏﮆ4So]=q iCCTIoظ D +$^xNm9Mz sx@k$ ŞO:J<7ĂY?U=O?HNV[U*w8e%ݪp$0ch/Z:aAȝVN"MQh\k)>lL1 T"b)X:ƅ?&l8?eQCC \oa'4&y3hVx8RDyE:{س)0)&s,'v`a$:*hH`JjǤ J#8Flw$< 4НDC[L+ D%}wLZ)zJĹY=|u1ED^]X u Cw^v1wL3JTUCB= (S2_Ȁz]T]+tېT @Ef%8keW- B1{ Fm ř::;P |.C-;9JP X]o<*xh}<8W|hͨ2W=0ee"%D).PܹHN̎)0Xa7zk'\\ tU5OD̩)wsY+rD[JT^bWS+)Ht⼐6g[LB[("SUea~g閺 +"9}&答ЂvȂ5yʘ'#h;HOK`=0w33 6g&wsPLd{,©By2KDM^>pu!ੈO~n1:kLs9@0YA&ӡlzW9U6]FH; h7cRΩ*A)546sc/LaCG3&|] ? []6ڧ)VCB@h nXI7>sjOnD C {W2?ʁDSv9eKXrdc-A+;80Na(}JAoEwksO-hN|H f-.#=d<"DohH(4hk4y cIDy0VHmyPTgU&!ŪԀ?\;/~_؞5S$;6fis"V8Ĝ7 ;ɠ{K %_~aYpq?veKT#ɗq:_Evx{̓i!urn$ 7s٧ #РvKVW%i}K}UsJ]HP1U<-=c)L{W*5A<ʂĹm=(<ώ!V1"b)^*9Ltkָ;M:_)ϬZQM!s 1IdҬ3IS/tێ<pCM, ykKoل\OT"1AeԵD,KE>ם7v Su qធ'c([hAF!60ۜ~C߄bJ\\d~gM":TP/#]'HS{4±0ӈ[-@>]n*?P 3yO]9}99W>G܃8Z 6h\UC1"6e\0%'bʢ}~L_衁Um-~*,mӈ/oඬSߓ/TBt֖d{Dv% VUa [`zę3 [X nТ#C|üPz-+X Mșޥ/>C#:cp0Ԍ/Z3R=c3 C u2ͤ4P{}?C _f&u ON =u ;yǫt~f}]E7jw(v]8}|7mSdK::cash,qg9腙?5&M\㑨xbŝ:9]cWQ/JT]$jջ|H NX5U\5`߹!Klo"]ɾ,Qn[̲otv6S:l9!2cӲkeoy:KXCwei;ہ8?O4 wkWʺ!?ޫGnyI`x/Lgr͒|LRK# a?|FSؑS_㮬r@x dk_O'YR(cL>>ApV6kXSǗ\b2" -'=4~baJ2H%JDc! hS;K+vRxg! ʾ6`Ia> >qj8w`О/hZ :WAzΝCi$<y`3E䮆dݷ|k :D?#5|id}5F~n,џeUwƿ)7]DTsf]`IYQ/U!c[eq@o6gd!b_MԽd">Vfw?g>ަ1U{2Gn-s 3; LVC-̀ЌʆY"[=(VmSޏ<">EݧM̗sQ5O1m f]SԪ}ó_7NfFY^ޟv,BZ1ðÙ^I_83TLv F +kLw׬V'h׻c0s{A;K'Tx2}aƍ7׭ [j\w+n%:CqXo> ;F6o֓V;{J,`9 gu\@9 WlՎ g3n:ſE"4+^tE =TGd8FaƖ8+C>U{?\<Lw٘0Bz(䫞f^|b}^4Z+>$ p&@^#_2N9=:؈1<2 _kbV BZ16xU4?a>(cpi}3c9/5ܼ bӐ?tA oԘ d(ĝgh}m; Ԅ0ŽI ?b;Rk(j5E⿯2SWzb);TBF'6?^i^+8eXyL>JnL8,^Bk}?{tLrhޮ7e]F+ HY0T0)O9qqb?e'2fRlI_XIA|iJ#~6eguƟc2} ,Y'dcbfxH}$ k(Aa1&&$F MxX۔kb^Q#lWg^s/7!+C:`eA(({v˼XrG{ϔűeGuab4]~$P"6A'|'{?0xmR=;I7Wic[x{*l հ< h).]~c~ `v]TX~T/ D"h3ڈFo,.iH  Elbr$m q ?k#-x jF5$@,pnn{Qj,[ߪr/pl(Rr&ghF=rJ`MN3zoIN:L6nVNSk (|UUV}Ln?p*Bbf}y8tTtbfċ+1 I.135Ny#J׳RuWd&夆('Ρg_MƮ緟 ѳ~!D0uG#1.Kb+J KIgԍQ{ p/-$+ҏ6wBhMH[6XJ4J7cc)O:qijc^ zVvz.r(иgTo#Bɥ@ZOwۙ;FA#ɊNҎoҝ! ? QPS]%Rn2d4'i3/'sTRdIyAw WĄm2վiUZ'AۂwØaNk{IKw6E"Rx5}!QD"j!g>>a ۏoQ>$ Ϝ89);$VFtuZgȶlo^iPq0i3RسVB$nQ ͏t\g|r@~ư?6[.9od^?0ڇH1pF[JK Mnr $,nJj(>ȂH20Ӣ#-֗I|݇6*+Tߩ@@کĞVxL-B֫YjNJv7ڕ:+#3@Ҵg3z`k3BM|=de?# O w'=G?<0t@MuipFu#r4 "kI2VC?׮X{7ebuKՋ/ؗ={9,v#X8/N' `:jZvԇ}~ 䧢G }<76ڑC[D2Ϯ(}'7z +h03i›/ts,^&8+۾0֚ݰq;>gЧKlhHG-6n xjߋ5o2?|2q0xYQkц8LfEך4f81ۘի (jPc :j9X)H\az ohP7pPO{Gk|(¼;uS E϶šr.lSevs'xΧ8R&bn?&Nˮ`܊2aI YZKzo_}y@X!!a'jǣKI rqWj´a*tY K\hG ;GRuctaWp[|((= ly$xҢ>b# v򄿼i?(IP ep p_%ic#]vٹD6iP6ƏY[a jeIf9.=`Zr)'M]e =tl.Πaf% a| /CRODȡLͭx>b0ެ C4])ܔ0zM6 |5ĥ8_rLA<*sl:`HVQ_-2}m7]K]?rBP'| #wY k*]R@S9NhyP+vsCjR r[> 0l[K ʘ )PcʏW--h˓ sf o9N"%m`D@Hew H4Zr2R/˩U:ݚI7KbMX*,(+wa{:X=CDxS>Az܃| P}# 8@~ا  Pq_vOzOK(j:jwNjX貚:=I)\Ԓ:|*?(~2_ږ~f$upJRIJ"g g b=ȈŴͬ- 9tH>)<;<8 olSW\ "lӭ S>)h6+Aٸ\HɓJt Z`VC2l~ 7ІbQ]h( :,ߑP<5w2ook+}ć8T$Ŵ7"cWU{oFzٙ\z~M. ܉@R֬S1flvjvGrhl h=0D5qh|4l|Je{!i"=1212T  (IIFf,_35m2'ǥFG 2Sb+Jۢ烿4Ӣ>pr1~>%"#Ò ºvlٜ%#Ik*~+̔9l=(a*P0$nkCu.>$/98a+ZY-p[)=^s|2QG/uL"֩C>4zٛ7[:\( &J\(3MS_LZIbݸ@20*2;`eb½<4GM¨ ?$[ϕtoKzͧF>l[m;+׭+ϩ/WǪ8Fڣ>%uda*<`#h1GT󉳐`F*'\vչJHyX* J)l;XPJÓifh],S+/J3Zqz }l%>X"%)y;3.KD (ʿH8 ~lP qނ$Er)%zy* nTp;Oo@C/<W1Cs^c!"WiKz/UgVxqx!o2wxr4fY\$F)ɚ;(TKLGkJOQd%A;!z*ٓ il|'dnDUμ ] r*Udmp1%GH87xZ"',ETunWi)>5>]hgp/ w) -t]3,E#rg憩S@JC?ݽa.!c \D@N?l}y^߶ ۠!pF=፜d>e0W1kDawW>o-O*rW=o]Otdp礂vP- o ҕDc#081{^sתiys~n*VM'v/~VW Vp#>Zh/]fSH[(:I=ރ?m ;n t1J 'gx6m/MDԎ  ]䜣~-oV01΂MUKFfn 4 _mN[ý~bP;"UWָ ,\ qY&36׶W[聽E4BΝcdŌmf*+(9cǦ;t`^ur ?ʣzKt^P:&6˓vILS:?9ξ3SaڙYAzW8$G(6q$;/ywBe|<Ȃ|ާ˞&WHu'g k;Zo2oivtC19ÉG [`&9 "1DZmC<**P)D*gUG=&;c|],[GAUeN`~ufs4yF(;^T87јg+ Ist*qLaB^Vʗ?C]DhI.EkwEs? m` 3 4&-@M0lRD#j2ic9#]Q JDdy|r1(CVW|CT~a>'v ԕ 햤øLWm%@S?gpmSv1ZN׋Y4.8륖SZeý\ptN3pf,wrf~w2iO!00HO;\V[Pލ9$өog;[ ;-e4 .́jDU Eʸ2 i/zvf~^V/\@Dr/K"\TG?F(ƣX`Ǩwf\}mM 32Q|O34{-ͣ;9@$9{=?u63yq(~-*Zoh>), =2r O C ޓ(T3l6*obMb"aXu ~9i?V0 _F`l[  جn$A%WWETT,[XWBm>4O}G᫟@÷/"p.WQ>c0spn vP|G-KL (h?n/>*"Ba׵QQ jIʋNZ 2zX+gXF$@X+x|ɅƛCxֆ`F_hE\KzH%$ž. ;R9Lnm(C7GӾH)&^\/5zƞhE^vXр%܆L%z11#}+V]JlXb[kt}Z%x_׉g,Ae^!+Ԋnv q9}StdF&`<I$/3H+ y'+>&6`ZvlC!ǜ6S!&h+/KX8 0~rC9-D\"5;)sNd: y8%.7 K2Iy4.:kϗԳ>]Vg%\(j" SWDOjg``9R8V;ҩ==g]vl%=31^GOyHl6rDM::PrTkJp}),hJ8y #ti֎ л2Ru%F!l9ߠDޏ]0\@K*s慱|֥uOӿE.?^}}?,>qHl195T_5" Xab^tf{si “PVH5$fť{|nUT%fB&fIzhJ뿅 IJ$vZqxf2a#at 0j/*?;4<24`ݫjKkWsqY=nFy\U<1ګ[1(הS m cvϊcc>^Ӱax+zLl mJɳ\:ux@{ m4Bȭ6N{OV*#UG3L}d\axC5fs s:l*Fp*ވO/C8er!Q̷kPQePd#cSuf|9˥m bN:1|p9iGLĞ t) Ha/` O1ݪڇ~>;_oV} =DħMXLWoPѼ|c>l@C6|M4~=lPFqg&> W9ۼCO1!BCWZ YRbbqsPBz'a0#yG/bHp ).oRsJi.%iQdPYT .VָqOŁAoݒl]jg6%5(4S>Jmg\2݆#= 5],͔싚DVEO1 (n>juJ0E 2?Mx{h1r聥 G6\1,9| Q]Br=`Q~[[!h O2lGj-Ve+:SKJض&*9GȮvYig5<0*Gnے$ϋіXϓ)"24?uQFjf Ho wvݦ@/Z4Y+uJ8"Q^M%!`.Ϊl,<ّAG-Y~;=_mO]@Y tdHsX*L-L T q:aW @.U=T:P]g.cǠ=}t"zvapg D$kL+TcPb!2<obo ϳN}Dݡ~YN{ (3J6Yy%/A .3rni!ɨQY#i٠o㱩4IZaLe-A9HyhFI6SbR'*Iaլ9햶E Xa.dtrTV0XT c{#jm%*EaA)^$ M O\Z k*v#y.8,Y6@nd[0v,tٴ!~c&&Dht7@-Ԥ3+++ ډ % 8ܷ+QAJhFڼ,zp|b(>ʣd/pcC R㱫]ޱ砆/a>Ψ;a࠯CO'm($0wzr &7O<&혾$ Qf6Y)g ܧ"䦈/R0!v#{#l6Qזt .}DaK%E^:/ ;WDVJX˸dh\ho}V}WD.ks>- N/DlV_!H{`u^K:Ѽa$\M7|av% K]K#\fikWiDش:`+3qUH># @83C|i?*bX jN!J"qAԠAynD*=56I@a{DnXwDB@զ´ψsKs5۰g8WLOǫM*~t»|%"4OM21VawJCuJ|)l[!#i  ja5/PnϦټ2]HIEjM8U$Vka\ܿPfw'0MC&@':?]#dٱh!xǦ#;{x:9g$~˯?H\AҠbJF&8V'0!?3Ɓ7- 1iZ'z&C.KWcВD-ܕPX35&`?f4/Yy'q~/85_`}~]5 ض3@IE387yAv1Iw|VF`Z1}ñ?S/UkJc504YA{m 8n K$W~ݱ/K/v`^jPwg՜+sKԔK^=Wy{0Řaxsba̳SI?&hw\HY&# Lc >Xt9uN9ײy1#^TSηaq>2^f}[ q2k6E]A ^ǏۢSü B=ɉR5'B7oFzk$K(. &-Q2E!HAg҄q*xZF8+%SKtB7/,'sjן>+>f / 3\Iypϩ)58^N= Ɍ{9TV^b sx6V1Hd_wR7|n+q : ;!v;0K9P]9NjZZ+:KD$uFAQ-9 MֻG&vyz&OI̪U͐  >>}y Q *pqތyGQg<2 nXjfHYfMֻ=ytXm$Qf=qN'iٝ~8jM+FD#B&Mq>WgExI443P!M8/ڝ(mhs#l%O7hv.z 6 (VCr wt:;ЅA=&fO*'l-@)')OUbrI*}W4z1zh:@W KfjG|zy8]LbR&,l,o '^*LM 0'oνKcf71֌}Mr"3XPq.!nB*;u\A#:\~/Uy1FIm58;"D?/(Eo'hK3@S]koH RИ~G-^x]{{̤x&bLaSH„ŠRJ^Mfzg$MK]ڡsRO7ze׼=՜ oȆ +iQkh'C " 0%D#]`%UyZ3~c5xb{ U|"x E\##>Vx1/jaD@W/zeeGOS +ÈHr#{дɄ#w:Čי"FE]^cDZ.}[-TdHjNjA \_#ͱX?,-tn#kߡġ;4UpۿU i/b)qnG!*in44/랬64#^TĴw=U2sjm(tda9Fo{m d`b]I%0B,"]=i%MLDoYwoH2d+ A[am;׭N!!v_+:NI`~鏞+|>}4F Өi\&u}|e.yby拰>(CZO;twT2L =8956SsWHmd0 3kv2Z՜Qb6 `AS Ւ`j6 1 V`DʇXݽ*fh^Pk%1 ]@ 3-060l<ZЇXw1ǗLF7A;7)EymUaN"=icG5hPcؔXNd>rbJU0Ic#1H/க1fX h fR}K@4u=/TPY' U yafjNi/ƛ#f8~` !5:۞i (+0$PFyG%t{SHa~a )oo!3Wtƨiz3>Uq$$v_7qpq aF*4ůnZϛ^ < k,f4?H2l.ޝ'Gs=gA:UZ""hU}ã&ܾAxÄM}m_&uLbk殇#5 my=2 a/?\uFI o\%8llӾtE!E ;^4eP=@+ZhV ٕM>p]–se'`/cO+RO /\D6չ ]]bD>lg 2yRxOpj df Vc~jB!`˹ ^)lxeʑ&!V1 Ѧ B=jޅN"_FHK.3l)~=k_%0!s54f2 ~1c2`hTİ3D wN[ò7+"yau ]k<4^wi'TQCP67 Y-I6^g0 =1R8{R*uͭX>x6FS7Ԣc[>?G{P#KGyfXz^\3vFYU` xn<֨""nrA:22rn}W]vܞŚ|{w>9j#Ǎ i7gd}#`}G hMWE1 OD fР™waYZl._wKtdKG~:^ຫQ>tX8.vbmL^%~ z;v-$K uG2|[]PR SEht!o{>^$:8VH(vi_+V; JQ O̍{8Ӧ+ؼi$.sK0+qԪ)rz|W7qK4vl4G}@`~t{!J.'RQz)bF"Gda0n]r"Z #Ք= z#p /L|7>YwQ T.t ̯ćWdչG (d11̆YM9B>_?ro LqzU ʤ*W-j49䨫FC.h}M]Eơ?+_[U agCR"~|ŊE^zJ'3L`z_h4Zo+)6zMrRWp9#@ޤ1Y9zڄS0G" A8^̅_$ż~ꗅrd;@spڣ 6c꽾nn^Ub 7/ZToE‹ɒed !5"qzVZ~R3;a̔/νg" V:=3.u~-P BQ8ه1Rº5i-a,*9ѭ65^SrVh@oX?qH8IwHu\U's Q!i\^wopI{PA{RW]TIL`ҋnT uT譼fp˜ ,3gdJ;r?-}(j̬R;IS>$?L(Ő_|9mh߰w~|';Wޤ2_ա)cqB6 i;jS?.kE@ Fl!+i)RŷP%R\ 8f< {+u/%WbGv!yqm<=Dy? 0?%Da$gZ# TaiKSPs=X4>MP 8ONJ'cd'1Pms xȶ뀕zbDzl}cp^Иٯe'eF_ p?DZKBh< L/8g$\^M/#OTO1key!h2Co_ο+kfWrf%˶Hg?o6Mlś1[>q0Hfѣ0j*]RZ(M9ѣ ž0-EQA1~|צ߼nDݺzXD2wKlڎ1L/qg{:#jP AzgY \Y3-B.ن{XLd.._?~ BzJȳ0mM*`HPO Dwro-l҉fOU@ 䓸R׳r>"768]jb`l60 ~Y$#bԓR?یW}رxvv6FT{tz?@=6Dx3_S~YtLCއk^WqU5Gc#DT>Ф+nfAhُϱ'\^]8m..\ik19 o)Ӗs ěWw< H }D6ͅ//ڥ6aa! {,mXYxWڍ3eɉ_$F\ Isi&6r+_`_7,n8y A~wjAm-,cK ٻپ=|MBkO?!+jhp.*h7|})' cެ1kCT1Ɇt= "rm,i 1%${f^_Ԯ WpD&MP@J_˭=ީ9 '=w'd"ʩ Ӽ[tM$иuޘL.{ߜw43hE%{\,f5_T@3 ("HnHWXo6T4!$9a*X3!)b[˜-ˠb;L4,xIlsLiڃ#V6r|'m hG [KoN{3V'Jݠ*>sԠVr~֡6i$`tcXXz20ҬF2N`x#0WACc=q廭M ?PRoJ㏳W]YT.9&4lǀ< LB;`4AwVqC^$؅Qxq-@Ļ}ѴJdRbn|S<)]Z# >1+Wp8=ȅ> ]t]xٕ3):33-**awTj6zn6+;(3d*e]l'bopb[of]&wבة>ѹ+skX7F2j#^ueaEÊ s~=N>>!kryԚpZ'3tTdQ1R#ɃSU^4}QoеBҋ6#4ωGYubdwĂ.׿ $|EN01އfPjH@2Yoiqmޚ'Ah}ZvßL=c8С:E_/P*MhM5hm9MJZ"=x1f<>2\e  HO"7&WDvOPj}Dp+' >UopzȂmcI蛘`UuⲸ\ZR o@j%an}j|pĴfA FM&W!o-*"AQBn|ȅ,G^I6:چ? `HGwhӛ-ˬO&y5{jGDa\`4EK-G-dy"^Drm^x&a=U9" nieؘ@I&hX뜼5@^t.-4|-\}6`OVKɎޜGŵ7dVZZgRVp;:S_ 0ľov"5˟h ;Y~dȎ ŻrEKH.'9*)۽щPE.U[7h-1Ɍ5LBCC|ؔh%_O㗖.N$16Yޥ{54mso~VSfW>Ұ>(]jp)zΪ[T3^9-Jηrq[XA q|xl+gʛ G}Lk]c7ĀEˣT?SލGS  ]v 6\apLEFr;Vj"Us`丈. s,p91Zm_u4C wޣ?ьnLIwfMqݬ֓S~+~"a"X&OX®v ?2G;_k"0N{6OU*E>\9G2k-`:%apnfZ9p!o7yFtee3 A6Je8}\ѝ_W[*XvnQXm4AהW&/4\g͖4X MB7-J\|/g+v1)`r4`*+Ȓ9FWr}HKϩW&ߋ; PTeHS=?li3 3Y|*gl'9h6j臟:;~x`6<ܿdoaKʭ oHES3;z߲VvtkƐ@lY ȴD1 ^T-gud?/+n㦧}(G6r ]ZeejEwQhdf# ry@ Gis93^7l:uzi%hޣnVIhLz%q_S`1=L<ڵNؚ7':^3-'F`,d_fά -)gQ^Y%J'B+XI?^@pc#@?W6Yٛ1xқ#)N?Ds*M%5:Kbwv-\K3ڪOs`ØƻT*6;S{+j)wƒr |w^٪Um Iq*CXsM{ G20TĽ ddJlTv80KB1KLC W(SJ:t=;P׊ΔT~zEbįFS8ϴ!@ b|kO/4{H:U(UsE!3LWn!wUMm;!W3Tq9\@XVyϡ§B~ VWa'!ACE%Qve^yc2y me&]^ve_cL nw!M} =1ק'rKi8~oz  ,W1ƱʃK!,W\]-(PT(~!Mo"{#y*e06m_GW +iDCVx$P-"csJ6thwmD'L#Ő:Խ"8L>Ը(ɽ]^]*a:|x?찗?ј ˥٫a9B\5x-6=KDD 4rrC~vE4 e̓^h 3[ag]T aށ6Pmۺ]`G9>7m8]Ҏ=3U!]O7c+t]B0VdޚA$j%!t$Ӕf '5U: nV,:|$]w>wUp/=fmm__ЬS Uq}Y:yd`J֏?t8TWQ߱]P/6^OD9U;9&[uHTߊϊѶ{+Js5u'UMx+zR.?UӃt['2:; W0UpHM%<0zjL$YYz(iClsHߌI,/z 7 s6ZX*{?&:^&r08)QoE|""3bdv.SmFa҂/YX骬[ vݕl{qiU~Ri:(բ"#U^ʿꀰXz%ͭ.C$91]l{! >XZC\\qT+ݟxV 8&wB>9cUR$I"W\ц|D?Tlj&AGא ^9q)W4UH̞&Kh`lO4;0S4ys<#tyLqp?750Y4?0_|69qCD̬f0rz!/'1eo> ${hr˜ug|AcRɋ:I\^oee5sp4VwC)) _m+'&VJ=QpHa]E.(P^U@t{kZE"`0쬳^@ Zp'b#d\ܬvNTK!fhdH' %DNߠF]NWGT=J]d x6NO}::y\G%s&f-[\XC5SvwM9(,ȁ;VUuo;sn): ɏUh_-ݠ~mFm wP-+@ʤ?ֈӫ(/Hj+NYkXa6D>f}o"iPP)+b!/ 1Xݒ"-LeF~b mHai0P,dBYWcqGVS*e\7"42=m2LR%,A/h mRTѼx@(P- &^ $.# X?E Abn6+#ڜd?kh(ԥMQO 3[?=&D=&Ե8xsxaz,<8vQ># )z^*lP;(AIEd9=lhWyR| CK-[,P->$ 4Au C7;p@l o4$$ij,"fW)[;iSYmT䋤O,T-1;m–ȥD.v`:Ŋ E[r&O9~ȏ;h>׺yHqB@;b֤1D07ټK T wу r}I5);v! lϾhNw?/ axCݼ.:?ՕTi3j:y=Tr]!?X߀W8  5)KL9߳|&H=ZG;>IB4Zx| s͵N!^nNuN3}Ț4?XnӹXd^Z( CĐz^3sjst5/?gEԄ2` v|q v([G=~c3Y&bK@2K[z AonY|M?xQ- =X(\9ߘF?9&<ĤR- lMi˶i?ͥ,)X%0}5pHXdnSM$W>_ i*wگ-%.#Fr# h Z߄ \D0)pHQ1nGB^HweUqn)VN}@0|ۺ ZYHJ/ǏJ?*e-+A7{U)y[8ICc֘ {c9)'~ڇ\A|Y|^${WR"R+- 6'ˌl}H& $X H6ov'MSo(h K")ק-L@kttׅc6٩Ã7~jjP. 2X;c_#Q[ڋj5q[Azz?)?Ysx|kH-]4i+1l>^s箆w!Hr5M8``:;YkU*|\xJ?52(`|#X Ppd$g~k(ܬcPv!ڣa[9հA1x>)E@yTClqVqg%@#.rX-quEk w;iL."Ɇn~-UVN']/&O?, 9\xY^ndA®gE1L$0C"ԉe+ SB0w>jdo'*ے0fkUyF8Kk7,H4'{a<#өܱ?ezTC*uPsrl^ǎtsl_ReUJc [jSx2xlF/HV^#YǢ`N('HAM=sHqE C ,/mcXv.d<#1sa06rFEATp~|,¢q|Nv^pmY=)3ca6DsXތy؟jmtCKMBꩨr' EpWt6,{HL.,GN+,&yd.jn0Le%jv PiN4}g Vkw|tN9f4 ?G0uaVAp ab+ Ifjf21Bl 9\<ۃ6X`iPX5Q0]qJ9_6(ٟSE8S>sD\Y>P"TTr TBDڛ%!ܽH_al$r s)zT01# jI Om=fȈ0^qCޛ[s!*aN2nmдBT9\`,dE45"u> eW! ACjt, l"ڕU{Ǽv+~kKfވ_v(\!iLEJXF@LvpKX~+^F1_8|,aGb휟*&Xl )WHH>[^O4]gN: H oRL+ 3pe,tqAz`X+u^;foq%& TCO3ėo GV][HT|NN 0\|b>ڢ:y|9ht UQV?F55%_dE-?DY"TwNij&̣JZH*E^LI[(GeM_#Y I>ٸv+i/̾,z!nң1W3Ԗg;`j]h1qyAQrv%+芕'vvYTaQ.GȄ 8}TAm|k9x-[b=L 8Οx*:Uȷ?*1x]&e{J|O?VS̉.d6%g=l)>5G{/$S[/ȚAȠpmySm+}F:YJt,Ҝdˁzk$F;:0v]K*7BvoYL[mD ǁD!^fE,;.h?SՏtphiCO)M`M~d|a66*ɊJLG,JU`Zރ{BzY50@4,eB q7wyZUد-x"Gᾅz+ A󧷭x k?HMNxi#j9 )X!O@YvGd bW\VatcD'!E-1K;UvGx\Z>R6 _@)d?Q ܧUWL?/T:ɓj!>ZX|.j8ޫ7%=2t0aWl<Ogd88Ul*V/V'ZFQFk9pTFAI"0J.wJ҄+3OҀZK~FQd3m$^3pb]a %&!Vp6ݽ?F)NǎvY&Ugl#9T\~niGaYr':о++(BK>+#OH*~Ӂ VԤ8VQkڈr$໧z6E \qw$ N3z1crtZK, ߁^F͑梂H$?N8 Dk;j+kD^H;T%lA6hBTTFgtb_^m>T@%e ʓ݈n=4?V"<Æ^K$Ͱ4 fUmʻh^cYI]sj*kSIehWZv(~ق$P'S Vx}_ qH EX’t˜pd_Θ đY9o~̈wI+rin`Վ؟m O ^v*1dO7>3B"0gd۞O_X}`Z^U ~w@2obȵWW ` ՚1h&U[C@p=-OKIƀ2Ytmã.*fmq=_ǎ+=1RV/TUouz,B*ȱ! ͕QH+܊#m"Cmdv$kʿY$Ezϱ>QyvnO/·R+ Z̥^* ZGM_+w2u Rɴ-EhR+ 3Ǵܥn^Uz>Ifþ)ȏؾ8FѰk)T~wz"Lr2ɫy¦73Reu6ZKȩ}@ bL!˟::JhXMsX)H$5=%dIKt<5٩ yj%ᇭ2+aC%as/;O !LQy;wgycm+BjԖ4>{Ϝ^˾zbO1;֦)m]&Ul P&7  =$ &GbkOS{x'ioLC3/[P+F{3lI ZyGKOŇ+wpxbadl"1}{k@x5#ЯUKX%soB`AGb!E̕u :ë[W-1ȍ<` U)H/5ר s65!oI۰!|N0}$yӸvKj [|{#+A-1 ,KuMF輚Z\#" `HdI4`MB/;2@&֑IಾZŽ } 0i>(/5Mx4_qp]ZXo-免Y>]HmP*Q\c[dz3<]6^yF[>x.H%jߟ$W'ٛ{fr bZSEBl4VxgcaߒXݰR،TL4[;oyDj8a!J[ČI OImUG H!ht;eMTٓg#>ͿMrF"mXU+"B#kǀݫp1|c]1!4t>컞v6֭1M9Z\ĖN!"y9Ko>g*e h|X7SHMm3%M +vM=X^P #r+S4 ayAo#jɔ [H}Mi)]ٖqW=ϼ/l|X ,*o zn uH8[dYK`chrnqkrǿȉaB#7ɰ}6:zJK˻r4NslS Y':RC\MĝOns&O< z܊D}TI1~+v==vW:pJXI 6e@z؋N]xt vs@po[!\@0 \,>xc2Co1 qPo=֭ ү"{ =XkXznF AVP}R#B>$܌Ɲaw-uce=WQ-ⰽhcfeT#0qrN1}2Q̖)\< -fIhoTvhV`Za@tsD$"#Mݲ+ <Q5Yk@ P˼[M:r ŠA'qz[Ba w<&DkE Ķ΄5K!|TcJ׀0S$'[9c=#tٵW{\?hHܶeM 5B\DTxp@uZ S~їms=0j{ًܱ|䳊x\\"joպCϹQ~3L}+ѡ)-kO9Ma*3 h!œd>q8wx9rŒ{b{hzyoBv(SXmxk}?)ܡ϶n!~^=.;~`csi@Ԝ( "Ϲnm]^8 y\f0j6JՠR$qWVSXܼ) eg.{Pet8*w }~>j$a۷-lP*k?VrL '*_:gߨF;j ;ɾMuH1@6_Q ro0:I&$os#g I: #M fteN ANZI[4æ퇪:-rx1}l[ݍ5쏷ۋ0I8g_zٝ5,wk_{MLN\ ZF-:-bhðUt_|8"V0aviN xKY +[Q٨;xtx@w3Ҡ;-]vQvQlZ#I}Ig $/_U G$.eڌDJ%۪ia[DY(6-8|ZT!~UeAKj3$yE;OQ7fiZکpXC57RLP. c*fP]%ȅ_`!{ˣc[SbYM^e;N69O^(VXRccd/I PMtA ^Azr4+3.yTDXSAr#\CdysU=ѽHŴ{W`3h ҁUvmfF2|5a\/%Bag kdݥBr*=JU&dՑp&l:{7#BAWtːS5DtoȲY>rciaFX,rh*W#QK#t9᯽Dž8$_)  $qid,5ZFEC y=#-zJm5b6izv1F]X Vg^?O=Htɬ`aAJ76Zv,1)jFa!vZ%ځt!V8-O@jd;@A" ijT)&DCp#Exm_{Ø,AHGẁ_9= 0H 'J{n;6{ 2^QO\0|D.)/ NDwvS֪cT48tTcW8s)FC{jrEke֨`:me2d-l 1az$ƗHʰI%\ZcݳNIS]p-v-[F *=ql<-rbMN ˎC75qV[7%Γy)f1ӱ.R]qN@C"CWY_8~ ip9I1vgۺ׹KzZ\+9>տDBdQvJ;Fm\fJ9/=زWغ_ӯ?"Fw;Y6D]mQv 8(f p]Xi|:b|]VY)!큘PiUjDk^4bF**DŽƲy1"EWޥa8%ukyͱK{)3ﬥQ1^2,/!-n*I&Yxo୵Til|ni"N@ndY';ȭtXS}B&{8f肖+'<:SmK%CPySHKKT$zN ;b0a8/=Ɩ`zaPvTE3cd6J™o\eRSee!s8N}X8p뛿~W5 e;؛]UO NM1͘YƃW.Fdxȭ~ޥ:cV `~ beuk}όY89b~dk{ %HGG5 BH[YDk`iz`mr> +r6lJלaS&>QV{ y`<ŎU8ib!yW4]7of` S"0t4> boͤ  yB[m-'o-l T`Ӳf鐩H h)%g3<T܆,"#ҍK?8$5=#2Yboߔ+f 8 mϧ* hQ4ruUi-06S\6<M,C*ʅLhpBw(Cyx,6F`NӀt bC{7?;>ۥ%GgtFXy+KĠD~A~M;g/ ib~kXo~mKN Bb!tp;>v*2~6\Eg|AT.4>6qk}8$LdqEA9v$(Q:dV{o!6P}h4inmBhN}G垎JHS|S5zW*f2v>X& k+o<"{σpWMh / !_\aig~Sh_A,D.cS8^O?$h-7E\ԜulgbICO hɱj93+q7!Ah&ˏ\6G͒W[cݵ*s|U5>K31v%p yB[r: S/nrvQL z"S2/ JE^02uß 䄋5 bS2O'jݱF9R{. NxXA#}H/z#,WTgˇm:[ 1wxB_":P1\qJ)oHyۀz?Z (Uٍ-4kn"i%c&hV\K HPPJ(7i[ M'2a~m" 3)R)4$5(a *ctR@XAq%8zx+UGx:Pj!E%IiLz_Dgwz*mlKD ω!8B$?GE [scDOVZ:Zi,aQ5W$bnP-Epb37Ċ1 w6456AČ˩&owWCX.j4 rU3%uS:1v(?6 YZwR"ˆwY I}d+hym4~娱:5ūw^&$giU*Z. rqҿ%pd\5{]П–g!ZYwpd6*G|D=ϻ+3YRs#z6nl!73FY-U*vbtybv^F`,f{T@Ef{k2vZ`vay` 31Iߚ/ІY@/4WCV8KƇ%ۙ,H,Z(> ɝݖ3pMZd q7;(9> w4qШnt&q+ؕ9dZMA )Fʼ2/iYY5 YK+wV^H72XLp=[lTܼIq<{OpJcP%3x P2.|mׂŃ|wI)e~qy jS.vC&OYti;3dE@邇ń>- ٨B SΪ=H 3Ӻ+qo2iUyVB[h}0S d_Y}^}.}lQ)_9O /V(eD79e'>oJ%íAc- YLj:mj[V;9A[^cU.C*J=-\--̛1d\&^|QX fK?EMf /IIX/8k|rp^25]-7̗w:ybBߊ@rOE18,)}WF!g.|_}YQ-?~CkHzn&Ltu}B7YO\6Ă 'A=_ZA7oMLWڍۣ쫷ءiHv5$uiSJ!΀LraHBMhE:Y Cu`#g䏊[; e/bh+. He~_<#_^P0+WK`YO{nZ2"n7i)GjЯ"sN+ d}kh*7(L1]|07+C %}mUQX [>?E'o&#cշ dP̋ B&}h o Ӽr:9-N/jĿ!"XMEH^DU:AyUvYfTyM麓ylV .ЩyY_jd%)i+L0(E "C zj9rH eLˀ $F_.9Ң8@Y"JQC@7Z@QK-̲Um}&CKĘ()d9(=xkb -|2 !BUp'}%bsm~79EOQ%VByQn]L܌ʸV7/daeLyj&sʱ)OK%䃛t%+Ϗȶ)_ƙR]W!(x ){˾B(1E}9#7/*ʶ!vg<[2qQW4!<{5R0$sk8EY`Z|s4멳HEZwR(H"<*%T?{~X* tPL`x};6(6skA-}Kdx N(9B}tf%$:_92҄Oy *ACS45l>:W08&(K MPOt_b#YY{AjV̹>[Чz |j &2ג}Z `4Q@Hg0yhd>t&5 "q KuKSF:e1"ֺM?u-^EIg$=0ٯ}O=Lž3 +MG#s: $>:0!Zԃ[$,'et{KdjWQHs{" 8KGoNuJ b6. z9wo5̓I?dž2Y.:l!beu}Sz;a :ořK~o`!g _Z纀bhj7":`yk Ū* QmCցCEsS$vRݰ!3.KohO %\y>zG' s M Ǫ|sԸ cDPjǟT "3kҰ+96bG~_9Yeo^]k7\X֬s:Rڬy"DA_ w ,vB_C# +EJ5\pS_谗9 bObv6Fhe߀t ImDH@%<*^4 dn+ab^g6ݷZrش”LgڋDt_Y: S4J!{5tYbAj"c j'V.J\3R:v:DxizՉV|{H~Ljaa~YȲmB&e(7Xsi gn,>gu(zgWDZmvCwFa`gD0Zlgxw?腫K/~߈GfCOt9R[iSh9${)(:BD8)eROqOZ~hD qOձZx->IH)z%VV`OKOZ;GgsZ(\=J6ZzS;'WP ׍ۍ7m 5iE=걼[;El)K3+0J&vNTPߠ;sH -{X+.Tha(? r.9W>~ 8_?qnD17|32j`[y,J7t_|r߄wûrrtJ?_`8́{sģXOᒂ z&Q͜cw\1 0`Ð%_NQ俒GEY\ IWkY^9mоUczsM!Fٹn>.)Α!3S-wоiil%&g(2= \t3N: $}:5|YC3y "/ 赠!7=擱?ekC9iGK5ZQ2$'08dV/Y^Qa`\{boώXc9z {Qt}, )'K:p['bz(cB˫Ġ~*$𫤠؟ khh[1ne;7%S827֝ aLJ4r`SE> ? ""v0Jx&rH1(NlXLoS~ (t&񦗁bRWX;Uq{OSrBeOa@HPCw2L؏zƻ+J8~4I}B/1 d,f+0G(D:ٽKxHkN&ZbxjV+/>8?(|+؆MXe^[,]l4z!7ؔ!]-pղ/]ҙڻV y ! !ѾHXTgr BL҉xa(sGkFaM6do ! oP;̶Yfwx>N@/~\TrAg#Z?h0e8-*.4.EDs`%>| | '~XCN\dORyL5F>Nь3Qk|8:+_UmhfuG3u ]*Yn}hӞ>aJ`'s#du GRfoU-bC.>vs;T(1]Ki qiIRNQ\rdXHfu D*mOW" S3X"{Q+]{ <<nĜ¶R yז|f4o26}#`ƈYHztklS5P S$j&"KL?rݽqf$HT30"y: t_=}J{kvq&bJ)f*2y>AC=ֲz#XQ2MV0yJ4 <HSmpUÔbmyv3rvxIFe:22}`T|RT.·6OTt/-l8};)C s(9hS(MwRy\h2?&51śɖJ _"5dG]u+S_g.1P4nkX7yَ(b݌l& )0+7[Ő_4e"K"Q|p9%N՝L.ۅWmIk]nb,|rlxȁdz) b z9\pr)J~`״. bȑI?MO1WESE-l 5y@`6pFyM5郋 W=GLNt7t#{I0(tj YY8SoD5/\&\߶k FXy돰YKtSWq;M/ UᰥlFIqG+ 8,gn/&G 0#i[*uxdvo#_/Gzm9-ײojpIK*Az5L xiDOХf#QjB<e?ւ`F}rALD#G;#`(xin j(7V1b}0Gk$F0b소7?k:1tC39(nFW@TH(5ne!}ѧygZKҶ mn3_2sS)TV u߱?$Њ5W;v:LbfI|*OG=]ʭ"KM4A[:|26i^ ߷sƯؠe`JLyT1HSAG==PisQ Mq7e/%-U OO/Q:]AHpK]!،m,-4--P|sʩdW9D6ԇc7#H`g$~R-@2tڗiʴDUWIm~&D Q@%LTߪ -zF:ng$e1fnߖ6|u3R%PI{FFSl[ ԟvOr ?mizI*j8ᑤO̐<[V^@,ޠCu5 u5rǛa"IgI+'ƽcc: ZUXQ\-o/uvU夊`rؿ> 4実}gLB쑬i:3-e'2DIkx-KDm1gonVr \Xbf>ױ4#W1^ϽR 0PA 3s2@e17IX̪,8ќ]PDzk :'HQds𮖁T=vL.9.Է0z,8yUc7UިEF;D"d xQ,'ߵ mߏ@BPQƆh5Yz `\w礪BUd !rS[TG7r0/NңUmzP^H`&Zw&-QA^uf߿z/%f?ʵQ"iuwi՗,DeS㝛Iwrp]r 1!k!)ӯir3sLzs8aYF +QU9ע[gITMaeSh*0MAI7pw~= /`L$+:FՃٵ1@"# K3MB?ҖM OSP(VihkܖNμ03n@7K qd oip1Z95!9ΰ$r* ۬,Y9+q%UDž5K@eǬ 5H'(U?PcQ  `E^i& G]h.Ȭ}〣ɕ‚scn YM_&lPh&PRA5& kI/f?B4\KS/L6\|sj26_C *Hb{D6N>s]0TAu Fm Gd}*E$xђMND -ClFHf"H+S--CYq;|^ B'u]'gy7x$U)`P+a'ݷȧhBXT>C?.TpMr0:#iTBFQ{c@A8kF>B 5jHqu'iɘbHgVZ\ 41a~(,=I(;͂Wj9{MG~+rU*=Pq}S*z0+U: t&􊭫< _Qd#T`dO^%JFn= C%}yx6vD,w5"kB{L.~tb^5l !r/чύ4q\B9.$eF2bYȻ_0"j7WcQ<-^-ٸy;\aedlDTDc7k#I (-t@#%\ԡ +GcZۀi\z |T!mG.PE8} գ梦"}Ie_E R-}JQH<,]E6sRHi]y/*aC>ע'fȰeN`x-u;7mۙwZԡ86ObTuPHj`~~RtdҘؔS88e9>*B Z'o9Oޅ:vD v~Sx1yL0xh:Rlhb\A" Q˴"pn7|pc3(b#=Ȟ[{M5 ybrlQNaXf'/#0CB4+CBNZwEWPw^WK2뻇[-pl= A SyʖLZ"Wpܼ'N暴ڨPF_=H{p1 nWrTOG ̝n 6c˗wu3<>& }iTZqC 3M|qXÙ%+g{ڤ/9?\9#C$1[q9#= $s 82▨Fhьcx`"0HLQ~4QSy7HX#sOJ ͘dl@$cW4n50/L7,Nʢ w I>#ilCzС頝=z*@Z]9ltmIez׮C!kcLw)c||UY@Lw:t)M-kNFS>(=LR]=}a-Hm}R_^WhU+FpT#=.W0?U6)N$I'P`Ҩy~/x/55sl[ߺj_uw{JN l|.pIfۨnRdwHQcw^(90g\HJ3ƾ Jf=#/@q%fS Kye Ȗ|89Xg֨:ys},PrL1RhWSV߃wtcX rTtZz.RxACnNONAH)OAFjYC:]\6A#憢0Z;:*G%y9a!cmo"C>acĚ(4/8uy!܅6jb|ZNJ1"(|IX"f3Uk,{n&X{6ȟjhJ X6.oڕٯG&ߏ_RCO5Ϊ>Pt[fo5 c(;&mD<M~Y|ʩ7dXmp{2l]$>Ib@h"Q)i8!ƻIXɘr϶~ђ2 e'=өj۳{ i1b6w.v0r; (9J:Ј4h{-fUsR< oSQ5l⎽ 5b86K0@^W[ < 䮲"N1: Ry.ыWK3u+5w`;0ZFOOwxJ֘0cYph񧸄ӐIdTڗ7q#cމA!7{8ԩ!-X1g:T=WԕWc$7PdH?|̌)FBzrdc)%0 43DJmb*û?H `;QƆ1sy5ɇ3M "e8uYo Ww۵_c.02LY嬙Swu{πἂE\&tPT^5?z {<4/RwN+Hn_R2Npu;=U(Q{E 1i[ڸEaJS[ϱ::@./Xlv0ia:h"5%]S hFspGbX`G) !۵w8{(l[9CZR~ٹ2h/ oUTf|PB+_.OVmHh+K\00>.C%1  QZx^wv pSjmcyr1JD u@?aؠE@c<4GS,fNA6$ jЧc_G];Xx -t2@0ⴚFNE`Dubͨm\g%|9hv}s ^+%teI-~poHٰVJ`j uRC"kV /u?յ*)9Eev:Hmv‚>1$WqJ!U*8/Q|N[膚zVxQ8d,aM/;G¼1= bep?Jle9%b8mב!83bGMrzI BU50|;r ͸\ףdPWHՍ_䤂'3K @^) H*zW`c>ZÂh)c7 B/O@F); tÎnjeqA 0N#Ӂy [Hc=>ecPZYnuJ:5?Gsil+[ȳbm<ޏt"\^l[xpIO)Hz'M4 20f=z!FX0+DxVI*jo~fG/W[j |m;{FMx@Uv"VZ`M$P| oM`MoOzdu)CFK" DQTXTW^::֍ݽJU_}4 3Vä,0" KUӟ櫟MQI?+Ϋ$,U;14W8~$@:_tE ["!0NO4LQ=K_^UIQ7RJsNBb6I'me;\dѬDga`d';d]ǀi _}v7T.wǩ5?hïH](cծLQwNRl9DICHX(Ҙm toRAzi ep{ZwB^ $~RKwGc>ٽT7T~vi ԠKdH&Sc 8 KXl*1 bco$X_Yf!|Sm1ݲkTcAn4Oz@)IWRI S(/n+j7dlbufA /{AXInx0~=f׆l {K@_&'caaZ&^Kp`:[B5f85y%fЏ(Aɣޚ!Bt.Nu{bhU!@uԽKH7Kc DJ.+t{gm QHlo//pÙS'6ԣ$뽳gwEddUQXU鞱E2+z?IGuLMfnVBn| \Aj坍TC=17%8c[cpZ2蛔wu$"+`&ՍsO!t|CkH0;#JI+*x^uUfYBCam _1D}u}Cn."wa$./4@# 0,d_7k"U8R&I%Z?⏯ȧU$ᬒcM!7vcsʺ0!3Rli#PKE1wEb_<#o4`vA]*өlM>1,2CӬP(sF?cUھ<e~xO5D.=}fxJQ텞-Q㷟Bvaݩ%H4Fb\/< FtsRe\0r!7K#qhBxvc9Cgb `K x[c{` }jޣ* 9ݕ9šB?n4me Qgs0 ̝ xaul6RK4q/NqjACY{>Ý6pOu̢?3k O0@_tZxiTIw[48x[F"SХ ?2Ub>5,kL%p̃#QAz}ᑻyrԿe~R:I28ǚ0Nhݧz-3;qSM9W|uJ򥌝3#"\'>9BOh-W-,q[V%ǟ឴xf-B@9{[a!XaK<-]Qn3zJDEpWpA!U(*XoF[!Agu:ys0CKw*1ћgYxD+@ܗ贒Ӫ=쓹}2 ~*E4rF}u7/sNh J"5nԿq\.S1^׆ryFlD"䁂:kSx_TK&^;$%_j6KPb2Nvuz _!QZ-C'V@U@/BŊg BqݶF3N?6Ƞºk| ݨbo6#Xkঋ oIDdHX ;.F4\nN ct ͬe݈Q^+먫ag4BY?D+̑%[v}A5"f¬Xdg}VuwDZEOɊ?MgvINI~A@D1M%hz\G# )Brm8+G+Mn)˦Ѱƹ*:.N6(wоj[/` 7ޔK:X\qҧD ' MǑʉ<:+_S_sF҄\I Y븙RZP 8s-^e55[3*_AoBۀ%xr{Q#n\ vg΃=7rCժYErfAM"s)&rqVG;:"j Dx#pАu6|elO׿TkJ]^T;43j'cy|?liydYe9ۘ[3g x\a{+>Rm?hMv^$N=&Q.u]'_:NՀOuϠ쉆Y Ő4e ԫ-o;GǪZ{Dڡ .0/HQW7hƘdA3 ?GPoimn阿;_ ,zRސLJTDs h{*44a^JJX8bӐM ,0!%WOsya3j抰:\B b8#BE'7:dj;U-a+U?䤞 z^W (4B ٴ" !w`cFwU`RTy//*<\2S0Bք x#~W8NS/U,xSp50&"}1pH#'.X`;YT? h.!kN~T~+yda &mLAh>5\S!g5LɅ20Ic21qSBxXUүk7wK")z0Gj R/yulˁUK3V)_*JV˥ G#N1 czp>rQMܾD4i2`}oysK7N 4y1?af & tétG"~}$5]$C/|v@_Q_ŝxg)Amr=}^Y@v͏C(wwq]EW7 P?̑R!DOTg`Ggj'-ry1'{ŃqHvUֵua$U@z銭1ej^, 7*e\n…7ϴV߱3 Ts;+0jS\O&M 6q0IU?=Jm}[Z.*y5+y)E)\(=iao ~Q@ &vo"F89*"ޘ\Bꐃj(6`]A!IJ²r;pGR 8(^4PL]Pe5$|QهQx5/\L54u`I7>Ȉ>1vOcp̙$]g.:PYprKjiCu,yG*9zOG0KQ"(] _OZ 7^mWՖcIH4  Q>Yξ-t!**a? 1sg8 זj7DZ?M<n"yP6ţ5ZŽ͗fIqGYMQM$DHu~E;8bsix/A*?aiDǶ8[RZL%/*B}Gv N Sss-ۚgPpRfvh$`KjnAd/ҩl C] kN8&5 ^*Gq#BW$ xw:SH+7k@&Sh ̙@bc'L֟Ild|(f,O >fvo5ڔ KMkzE)@d&%nB_z)/_]12ux߆Š'MA1 eSQ qvfkZآofu:2z'Ү~oÁm*~8}.MXMVDvLd7V_w]O7l$&Zu]7GUB zCV_2ۢWXiX2ᵍک]@5݈/®|mujc3|Mbm yɂ坼 [5@0`~x 3Vw| F[ZAn;)ҷDPh(rhCTskR6NBZ %(yK!q=<dx|DJ[=^np d ^9].Z%%\8 V 0~"`Sf>>MV}3Oq00/ZVd5dUW\ÝnhR~I@~/ tL{(r{اydd%BYdmQBޔߌ> ɭ@:e0Q˱ӥ@ #=li3p[c8Rj-iM裌?j~(oreF#ʃX&ڎi!WfZ)@Xn&E2MQRL ni0lӬXg n+[|uZl LZ{s7zJk"CHʂJ ٧p[C_ɗP1.rW?Pf#Wpu E6%U) ]C&C# HECl(G\1\\ ge6[ٷ_qpW^X]|Fgg%aTnbvs](hM. r5Л!!&K8s nDk]K?W!=+k 襕Wi79I+-Nh:ܧo}Q_TnY8jfAu!헄e(, ՛cHa-WxqM>+k%qw>T77RtFxNDd΋@ܢJ=5>FE8.cH3. /FUN1刜s(W܃abݩ%Kٟ/0$J;`rX'~>nҷ+)?K[6=+<lZ' hmobm=F_`wqPƊ&򋔎1P|Ȏ?:*hB{˻"%OA 鄐n"oi jGR܇Q#`< i~K X_3 reYIсDLM  gxhBʢHZ!|Cc g\z7ZXtxj#PK gslnkF Lk`%M|ʴPjU4{XGX*MȴhI{Bz,dԞ[T7|2@w;Wo̎I?Mӕ !>ܩ1ۮÌXcf(R.;|JQ"': #5v'yXMYkʣ}P+-qش=Eg@]J0հ+Q::?ĔWdՐ~n$*'ʹ7Ɖ1dcDfS 9iHxBD,݌^8@*3HmzQn`8foDDpNSVƛ}SopkW0E߀ KٙҰk yc`|@M6X\-x :Ře?{nk IJ[ qUǢ:ֱk‰q:_M,"{5TA-*z%`9g~#fo%~19]Ah! ٿŒj Z78sNdtڟBYqj 0+Jz]Up&onIl-m{+3][^8(5e0"^~qM3<V 4L(?W]݂j\Y)tjl񧣰 4T(NkuLCW?nKt<PCY1 Z :[sw\,2|Zgn"! ,fo@ʩA̟4h74Ͷ'@Y&&u;2^߭ LN} 0phɢHT׭oCOIE5S@#tU;"u>+sC0  eI% (ؓ0J'FKPGNr?a07Q$JV #zܞf:DUH.-W@HD@11l˲U0%?7EFj,ߟp)$gnlAZb^ps^v[3uNpI[M}9*g0y6;gR'C>&e(@tWGg\_:J|h.U?bATkyoi }bZV Ԑ)ɝD&dH6n+ U79)Lu+d*K_eYG0@e@3[gk>qԾq2RMܰE{z/I8X dC!OcD xq/K=[ Ú6>LV]@(CktZV8\ ؠ^qx#؃|Z{,+CgQ..ɽ XݴF\iuKWc mFPKHA5P/'E'L1킞L_>9j"O{,W&QM?%:S߸=,d 2nY*Pߚ4Idq}Q iQyYLYcE~JZHxiFr?M)@}fO.x4@$ Q# Z``&7tF+h]?96"nۄ|&V>{:sJPXVσ#TXX7;RSvJMWakuCzZ;_>{dffEHme9ki"yj+ak\۹7ҞZ+j1 d|01FRC?][sh3L9;_iR*6O 6Wnj9Т~-̀dѢC/ '}]94&[;c$pwr6w^_eE'EnD3qZ$|PN،>nW٭0mVV"HĪ!kyQE 3~i= cEzO1|g\})8 Wsi?€"/<) `dvDU<sF\"PqAV (=I+l27ۢ Wl>=|xH1]]Ǵ1RQ+UnᗎsطqZVaVxeώ:>CwbX' r+g H!\l.9{d 3U;s!=㶓OEHJrחª PGSy|{/ĄfK>`Is׸lhٻtЄ4JGshy%RdO/c|$,T1r^]&UEG,jܕB)83/n |Q q/QuxQo6&`ua`mK wgu\k'uIk#'N9#)]A>f2Z:D9XDR )G`Wixܷ;LtSCc|sxa qf*o3CpۨvR5@u1';u\4ͻLm *9<ԒO4k1UB7rzao1ow@gǕ|t Q񙶏gT'nXꎡ˓vm.Ϸ9*aSBytoLtua𱿱cBP^!alӛ1Cz%UU0}uv30ّP #㯝tx\kܶU|s;$GLx֭S+:"f4[Deog-vXizWh`s5MXu +zlkJ*SF}%&IA8\j~|/jx kJl* Q4 /4u5SE['Jܲ@p􆭕pMDUWAQ/Iqν~΋[ҧEPZQBH<J )W`M+5Ӻ NBViNvx^3__2hծy7e[% ۃSv'rb|g+?y}>H01!̍e:Sk,0.#˕C1/ճ~fċ7=@sZ S;I;uq7|^5qzMDĶ}SzytJQXZ) vI*8!޻ Qmdr S5^N P!NN9:P= ij$]Z0ڴ,#|`Zb-^J,8 }TFaOެ{#Sdz; vdv-ldf$ytnXYٿ|(kl߽R U7TKg~`J 9"SxџL=nH9H&+&һIN;x'#ZRVǙ<`}]!8ٌٔ3lxfaބ\)iD)Uo,fp#kS_XPnQ3s:!fO_¾"H,,HѠt?mSon7w\'Tb&o9@nt .9Pv3#S(Q5O{~VÞ +L&9]m$=r eOHT⧛oLJ5C%r1q'pwO-b jݍzNaV߇.y_O]si!{DcnRc 3]˰k֭B7%S#/)wqy&jW: >r~/C]c2s9hr SPmLO E8jE>u ^Rh !nlɾuݨw > ,G5؃ΒR,Y*Txԑ< w}3?wkbH `h ȘRzhH0}Y/o]*, b4e+ &M:^^q ?-Nv~+ 痸,=_7 Mvw-Ҽ)pa}V1$88>DMwiwYy QA~X* v_R/>{},V%5Lz/r 8El Z*DR qJ% 6AH"~uӆM|f`6tk&,,X}ߒgոu{JuȘ RvIfDB SA׾ʧj7AUn|sTTzi9RsAVέF۝ϕeE ߟR1uMy-H_%[!ZfWU_i7$ xH D=8_Rӡ3H ԕ.Wr5*^ airl {pݖ05\ؒV9Yc~=w1]#$檣1!@ }:UݼfOVs;d^s6ndOo`dŎP&$z#c+Sz#:n> 'c>TEa/k-FQ^Zw\ރdvT9ҖWH!`-, ~+,#11Kb6;#:R|E?>"iC0s.xkTuwIK*&久l)dtxP* }X/{e*)n]UT7]e I0@-Ȋ!Ep4NЊ AHUKkJwUbEn2YTQW"S=U< SRF#(bBtAf#m~N&Q8i#\*awnGQYl-[5ϙ}7h}7]6WtqϷd{Kr&!LMAuUKM%2TZȟ9Ju& }NRǑlwO=hy5A*t is;B %n{N)hYfَOBL5/YU|kp$6g>Ω7bx:e#y2 TE"ssNVXx]^=Nzz5} 'ԲÏbgܸhgTK3maѮGR2ko#鳏bR=ِyUHT~7pg_,K4Tosu6Yfd:XӓYRIs(oNvA%2Cu~ nBkc1罰yԱjɘv n DvVѬCzIGMR&`Snrt 'B/q?JB7 wkb&-Ė>hQݧ 34A[ ~2ƣrX^eC #21_y%W^:K<, } <+:%u(m+ W4Д FiUfؕ_2Z)p]($ɇqE'Hy߇t>2m:KnkdљֈBGOݩ#QJu嫅d*]W<*P*32d3@2Bmm`g֕&"Ӹ}FasngGrZ;.U¦Uz`5&{)ʾ LRo1@ih4G`hh[]tSf9ez7&]H4 7ّMHҢ=L0K֫eH[wnV DJ5e=-5mVh3@ۊ,캽#֗!Y] :{"mҽ{z>rb]ߜ-`Vlk8qU&+[^QW]59,E`):D٫ƌ8aڊ{A;) )C; ʕ2BT~?4Y|NVAc`$ʥJFB.u֑-?eӾROC[ ZcUupz"Mq@CZ~&H$ {C=`4hzFDmW)O" #GClu# T ЦO}bP6;Z~֌79,\X,Fxa*aS[5(K\Kn1ubd?A3˶Uk׆ 璖Xe3P>mM =bLUuc 7{dWDVv!6_E^3D1OjP<  g972YŃFBv}:&JeuvC!VUuJg P=믯 PP(AzZ3MTBϵ[mȝ#PI|<=eGNHm á"Wy؟P5*9l0;T#TEwׅ#*BYb&t|pxjV|L[i?a3Xy A,݁mJ-erU{m~~r :Ӟ}#Q RA!X\өǼ^(WFڬg7X`NiColA_lNs֧@;UmYMf-PC B)Csܭ@Z*wDB8b<"#6[3 ܄vq} M\CyV(N>]3݅pmXj!8mzZ>۵K ''S\0Ȋ3 SwPZ$+Ue&P`U2냯 _E!0^DJ[.o՝{ZBu~)(,il>tLp A'2S }h?S QqR5?ҌLN& N?o xR,mp%?em93*%uvn[>s4wm54{$m" |&h nD^_BOSpElxXUƫaq3d0:N>s6ե&vnG33 Ch!P* e2ˠ$+d/ 9D*|{mh gxO*2x`ty3U мԆޘVW^.!ON+W`4nOo>n//ͫ~j&Q7gz%YM1($-j@TAԋl{|˃?i3(lʶk\(64W>0x"öNFgзS-E߆^$Vz|5u=Wp;_nvZpwyVH_0挹b k nş*YpjUֱKtli"Q3Oރ3'Wʠ MUsps?}#n@gY59& XOС>]|>]Oi(^[;-k8K!NEϴtr~w>ϡ@38VZm8#LǮ3{^:cH8w˭Y|Sц$, V}5i[Bc˱` "{쮟vjጜ!"G֐2(C6$= KTgpP_2mr(6ZƔ?LhK}|:Q"YCo(پݫg&-s#ҭ+зd! v0h`z$vxh|2{"zNcB)<ʺ" N9W׺3t F!cZq%j=: )"֓ ]ClI-)('nL2%j>}/odRE)PtJ8EaUXm$S \'󰑹iHHȌoEb;ޜ|x%Zp\$`lKīz֒#S씁YEHU&ܺAu^lDzyɟq<63 zwy'pۏ)hBG1:R+ ㏵csM۫/umfH~ %ԽBֳa¦E@i}@ +Py]Xz/ٔfSBe_ߦu5p`Pt;zȈ8-ʹ2bf\Hv_B]!h_Lz1a?)EGg1N-&qDR8.V뢹K|.&6} ⭷4f׳G3e;~ AL LVS.]VtMG$T9B!a)ѭ4R] 9,EYuVyU}" sitn4 ˗pN2-jlwV;)T$%27ѳkZyQ1:P z辔l *FH6E&ML&48ͫ䘎r=qPG! \F}Q=CTjĄ&>>WD@DDy%)29֓q5 0ԄRq8X@qa(aLl*c?H. =ARL 65XI C=ԨYY1=$Zg1[~@z pxR<ԅRBJ&~HL" B@sVc4Ę+C*&PufY,OhhtG 7[2"͑^7>ѻCHXѼG2''ͷ#oї6&n$ w pY |xLW_swD^8h#T$٧hr$&FN<ܞtQO!q׏9\L4 R DzsՎi&D\,6VN@pw;">]XAFHpJG2AR&&BGoe}/9do fYwTNMD1l!Eq.AFxqb?bK-"CP&;HƲY7پ%91aWcK7V*NK]=2 %ȭ-uh~~9a|zY*;Po!EpTt`go:V{O5U%K~yDK[w|i%OEm\AkdV@}r g2Qk2}R_^dB$6W 5ArO3ȼAI=|3/s1(oڵFg=pX=R\š-g4_\"L=k4j,YmU9h/ւ{tm/bEu){;3{P6=%xֶu9T&Zr `IQKe}V|ҵ W-ȟtFuhN pg֯z}0@R % 5cA5dtӿu:\)eS@- 7XOwebLYbC"@DhD`QF6&DW$l^7ItqiyJi_;^gmLp!-܄g:2$QpmCV'=ȩ&2{fv—52*;wDFo!=TNq wF.wX"č,5cJ%T#L"=}Tn5twFpy!nF ;Vr|XB;WYI‡C]hJk8-+F-S82Iɓ*ʜ+kj^]s6Vc=.N Lֳ@j?y1u8^¿<5ԫΟm~xۣR{hH9ѵa`21⏾S(ugQJ]$7]Q[Sq2L0=-O}X)[+3}=yjn__HAYdkqY"[s [t޶" _"1 ~}#x:^P]+;}D\#үw1tgy0R\'..n%5Vc&m^ ˺[+B:zxMղ]LLsNED("q\̙3wްԋtf ׽͖L#bRB WjG,pC1MOj1P[fC,]'L<>{—j-v|rJ1cMYXJSb?R.rO_=#3zg÷n &Ovb!0hpBd XJy t6,zޡ 5d WAq7اke#|l@~H_Ç-5椦sK@Rտ, ӿ#}LBtmTSFPXO>ވK~KtW1h ڜDqgK D𯹼+7b/Z'Hob4 YmkGw0vG4OpvOxUIWaURWY IFl{ٯxKbVFO/B|}u K:rj{@ڈ?-q}e fZ1y&vtrGZ]QOJ jx 5j0p Ј\_g(Y]2C6ȃW^`a$8Y'P0{{5h^ vh^ A[ s.9#_TqM07{/{zmAV,1M }A9 t`tX[=^;TG\kG4L/N7Bkvzɟ3Hʴ+Z[`f`2;6'KuIz(ÑX)Cاx;2\.s* hScH>+Lu q4ᵦ8KFC/3&U 3X\w;/' Qog}WI7Cud <^y ,.x1Q* OޢtD.@Vd4]ڜZR y):|UX#CNsUi{)2ա_l)kθSIY1B- ZZw[g X|ɗg0>P^I*mK&}1g=plFMƪpRzI([6b5<|Al6"V=@}ztѪXt=u$F(S>H0)ogJl΁qGDESyӌҝ~ς(۬bx9[_3/J#6\mcCH(h|WLلe NP1 өP'GtQiz K5YB14v1/ft\ڡ~T8ۨc^a. E%D "-cC̸4USnP \Q <[AEL)u 9D>uBNKB~MԚ0.Gꪘ)jg*Td U4VX!;PE,d PLAP0" Z/zYQD7{JlLUIb=<&AG!}!C\ZnB+nJyX"~E#[˕v3J(2FxuqTa6Φ,U,/)wR"ԦP_B3YS.X*"}m MTfWm%zF!]Π&451xX\_xqD!>~!|WS/@%_ F԰* -L[_aC!wU٢pJ=Ro&%7-I-a+;8W/s0v+95hHCDDE zD㪅9࢒ Gxřgq.ڳG* buشW2(;{ d@mU%1&#[$uUR*#Zl.U!(+bwwOEAބuD6 l-zAE'_?M,lioq'qaF@8.8f\iNuҮ;xT ")U->h@k$F#G1\$@nCg/y\*0dkme3 .$& E/!~"6P4ٙ ^ZBU- - gslpQҐH|oPKn.<dSXxEԐ0lsϹ2IG,dG)7l=Ue ffodzQNKod5)H指aoq;Ix#_Ȟ W@FL~5ǽ5#=\!`+Ͻ7wb9EԋV;UR(:zY[hnPt' "& S:G :ݻr߅F`ܮ O&5Y|I-Rnt/3qt,KA/X^cLMdoA+--$m t9fDA d5( :AbE Vi_oWX7W/#_+hskwtH]A4< ./ҁIRkza{^e آBBCfy>5P=3Mz;Y5\۾h3mR S΋hn&(Fgt\*֥tjύ`dY+ɶbѸnzmyb6fA&Ʈ_Ә]w{Uԭ t}I,Hx3с0-HfiQ鋡랫<<}z$Z#SlʙQ'H"1]öԄXKm1EM'hW%.ʒ0[% d} -l᠉668JR6W<H"$P [ƝmM@ ۠Z-e7׭mpqdd.-iƊ4($܆:<@y!]erglevPvGt{Iz_l፣S۷T^ q7$gj_ ?/gcb U7*}-=ݰ?&yPDei/ -3F>@rs\ĥ5GKr /7TN(&O}*[!X+I7 {fza\O.ËHv>u:}b!qS˨$ʐPV&_Y;WSfXOi<)S0þ7:W#`Mc9YīIk3/ 9^kkb35"3';/80nJz-[׵%8ɽB|jNֳۤ`tƣvuXqcQs;=5 pco+- )R=e Vt&\:7'L.ϱ( ы&nHiD$bۊm @PvrHubsD: `cSPT$$ۛ1#HKLpZDV2`ƹamýd?1t8t89֙3I]MKub~/Z>IzO@-!/dߌGv`?H>ruc˨CeLyz̺ T߈?qV5obKHw=PFW(.(.h;(*>yI 9/LΆRH 2&?و'C)pu 5O(Zse׈1o#!JP! f` ` ν$!qJ g=$kG3v#C&;'_[?zX ~ؿ`|P"[lX;V^b*4|w㧔LwՐʲT뀫y@J?p{< m E^uuyxEEaR(L9'G^^m;[h}ʬqKy(ἳJcGJMd5ХfvGf b Ղ>(4F4yv<^ ;`Чpֿrmrk]`njV$8A] ]xm۞w= h&JT(1JeU_m޻gdplnX8 -٨{Xc %2<IuMM@p[sCmI'vh$ ||_$O@u&婂NcB/ᆲFקϘ<~d@;C]͸C$1]*g:E͛C\SON^md+Ė eGYr9Ih8Fo(&?"JQ_U 6q˱<}N$nzaX4%px^'^P8eW:EP-SN FJ9t+{akGCJ]Z"qfFm`L/nm9&Ʉu Yvy~sRp cv VKYEb 3ҝdL;yM猌5|PFMΝ8]}Y<Sb9"d+~o)M}7i;l΍T{Q;_ 1VЂq|tp̉/|5"vxv'펉Apunǀ"#;OYNkQ~i9mpeG4>P (󃨋ׇ"abA*bm;b9QaUq mM8RYe|n 9qR;.OXhaPRn+OOΟf WXp?;3"K XN%bTd$Ѳ p:)qG,g(v%0$2Zm1tMr ;Aw_AA.PM-S?mORc)_V1j zi8Y>d4(]f%_*5X uq/&9˜U =t{vCYLSǮ %ttow~gs=}d:iq2L1k#շܙ11[u$!#}.Pl;VRjدI⊾7v*kphª#f1A*0yvW&k\'çڭo]^hsJoعݞRF4\ }>RF_p I4x OtK:qԣ,=ٟb-ߩhyzBFK0h[eccיkfaeZt60EL@[]/eB2mOf5,&]7" H.DCW;y3cϳoݒ\RZgr"(U&G)0?fbhşvfZ0z.I@uMQ!S JA٩/ kI1όf[9pG9*`79.1^t+mU:_xzWcEA!!L|&}v$\)cRC8 wTJ~u>Yٯq05,j  u=;4S yዉ;eQr.{P/-/T䩘q'y7U%Jeϓ_DFl~vaQic%OeMsz %`BXUkU=q&w3ux'>41ⲊeKE"u 6Hd#91:3pjWݥ ;K㤎$ug_t6,Զ7hAd]r )#}8VtCRFHSDv J^ݨ^pfr 8rqVH9eGozDTuYŨٗbq^9.J:Df:BGfD&h}z˒mGheG # ݈V ◸0cWT0n}kD(+;:iZG㼫lXz]'(mZV_.qr&QN\")];bk"7BA;w?w&uGGa%]Lf~Y8DGǤ5WdlQ8s bs\_|d9d~6IsU&;%pCO?2p4d-~uC.S50tF :pϊ'Cײհ`}xGh4P$QܠF꼱WPKG5搓Qw+׀Bt]$4= E͞O$Q[zy n>e{3Nؠ*ɼMunu+ 28_AyBMK^'9քm6+'I$Q {1pۅtܱp؁Ugª>Iob|'^ xm&vsWav";)p#gd0=}1?b*K\9v;8tO85"Ohs&%^ `~-MbU>K(!: '[}L=xtL#"~JeDgb9 iq֭}h~< (ڏK{Ul]c^e0p;QON1 z@@/ NQl.u"Fޭ[)E M>ɰLoOvGz[$7x_F]^ ɿbkKShLUa >h७i3hU*xt3 16\Ɇ@#͙=rFgc|8\Nm^oiEfP=l-ahkq(|3^}:M˿t2 !>풼)g%M,=~^93ɰוqh;z0fE70F-/zEoC\*+:ڒ`a˼ϑ|SCiH,ЮӲɢAµ;ߜW#yԫ!K7WYma(5'DŽMeg c+x#44$7M mB5XK \B^Pcx=%쑨w#̙-/% T g ԣM1d9w~+,)rZBͿҐ8ք{cwۙF-<<DdWlǐИ׎|CY+f$=Q&56IS]PzbGN;)!kV,]FQ*xFrF0î3-JdQM%/ _?Cab m?d䮭pcv. ev]M i%~ʐQOA Nv=kJ+ b.y aщT!`WF$ 96=|J2u{g$Vg[сLir5Ϻb7vA,gtOex/= C+.N-XW6o'lFi䭒 EwP*oRn)RBɊ#q:xBzB|hXU웽=y ڨ v"bzk0)w]pAV@dOP($' ! R18.vucpŁ%LLH?Z֯ PM ѻ;?5C_sc)! uLFLeP{fzIul_Z4p3#EXPN"bLE#tGO(1&ź?6M k0ޏ;!G<@D-_-sM@lؘ=&.U0ɬ1r6Hi!1X |9=ǂU P::0C9O/g$T'XLfWB>M:d$p'pQ |uȞCo<|/ &qml Lq`Kv79[T~˪KL>IΞݳ zvg& ]2Z& 50Ix#i (ьmiXѠc0|?jM32O!cuwtOnC9򧍩(>ZO*.`\BNj,F:At\+AWoAobEsgx;x5! Wy6]"٧֚@zϨ3Y^G{TlPYE3,S|Q6I0{T?Q2AP|Hͱ+O,p7'GQ??LԸBs-:VDVJ_L(͜M;cndk-؆ܐl-0Fe_î׊GlJ<[*@ݟTr%)j7V}& ?tLB_Ïik"Kd o)s8ǭVQ)misedJo[ E(iE9_ࢌ$/1Ј!8t`aUNqyĸ)'NM4{_/>]lI!mI2BH/Rj\v n֚W<{B e^?5fU69{tX}^^dGrn3 =|NufmԱM*2 9v=X^I̋pBWH'@*@[9rvg\If6{Ϋ̇Λ%a4[͍N̑],K`ȥIWQڜ@.>[(ɍړ4 \ݏgd5>:WZy DޛeXUCǎ;I޼KP{iu.m #, XDUӁ20}Rw Yd5H}U[Ə%`OSu6zT"0=/#IzsvƂA%gEBiR f^SvmRjs;\G%BN$PnBH WKD<-4?$7Fl.F|\R(") (=j4S{n4P+J%O}owAMotXRd {RXͻ镹habDl?6(2v)aLu|:2o e\ߔufR˦TBaSyHMrov:0W0B y"99[I׈{OSh*&j?eCE(AĠ>3ьaKe@B㣶J!qLqW· sa< ^kxuDngvIyWXoOԷFRќt ZznSz[>PWV0Իy~^ZJ+.cXC2wA5`gPc}Sc|X:~R>й(Zxk4* 4rFc+8AE.:Ir>a }Fn ×cɄ<jsS > %ӣ6A+9(Bq~dmwkx8*@JRR42*J4c3GI19'Sа)ZqBa9WjER@pn!x#+'իoSYg͖]ӿ>KmNpМ3> D5JN))lFG}LTh^v'[;{qF-\*,a(qǐب!݄]>=;I}⊘qi/zV%i_ā:1%&ekL1\[)3˰`n 1b!A@zb0g;MhrFwXU|$&\i \0{ Gvǭ?lG(x-NK%X=okot/Ftw{:t5aId&/Fƅ$OK'ٰ; =+D(`4@sEF7ԬgՊ'|ӤY^H*YE"JbnEy{Ŷ^Ns\)՘ksॼf >*&H@OAN87she/%RU "q'f]uA@EapшTQMSu [;1L15ػXϓyh bl)[~NC[|2'(> /OV8,&il ]'?Rj/K/2笛g<qqbjimnM?mo0 p6rSVqM+~8v6B"(UӞJjbn\e:ŭPY&sE[5 DsyD(kk30nA\ВovIf՜:{pj2P|=#v77+^<|QgUh['*zOhOX˒7=`E\%t?#ݺ{P{ &[ۋdq%Fp| 6fq{-/uRsc}+d:f< v"oLo:ۛ|7Ce=H+|/̹cRLC3 yQ6%CQY-Y$HܷUTִ9ɘN65%tj6|}"?"Fvh/G] _QqFvP&ܔlftA[״̣?+D\W4 1UH( =~;~#枌FkE(#\jeM^ G[*%5t#]" ? f 1*ԥǯE鋠?Z.]f9!BSV꭫QXo/Nn3@NӅ6cV6P` H^=]J—E1YiWhmQ쁖fzj2ۤn>v]\bQp} HKydbNb>`o]Yaj34"ۓfS [ #9(NN,rN9?s'5*-o*hsnOmP,.m?)w26VЁYB#l;tBC&?_`{"b,'a&Il:ܦgB1<ጳ"}SzEz8m^.]Ǚ^ɾ%X?X$D1;3dwTkXد(̬ 8\_7 '3!6=ACfg/[gx3giUkv rƈ}+s?fP^IR}E+_4Uŝ6pgҸ =p*fKD92jzp5/%/nE=k_PɕCww :BlPq\p晱[m`c&c.^6~vX6PoBS2 EԵqwV!8QWX~FXLUBܶ?Y7}JN6G S kfЮ)]p'efk idTRa&ί^q-et|04an _U2XKט̨Dg"/$8gX a+aIpRpr>u]lTV㱧 (st4j_2'K=‚O~tlq`{v;)ىG~m.2Bfx15_}cٵKv+4ytw"'nW$Q,UK{)ۄ]X@, {J"eQܒ,%#e?!_tr7H*uF8=jBuZ1vD9M7%ՑOyVBầh}kS5M=zK* ~e IN;5'O;Q̨@N4\96\W< 1 R-?!dջ_ !XR>]ԋ Z*e&ګ߅ߵzBr`wӎ:Xd+ggV'e2w%xctZS8@*g7S G]@5e8AaU$vR69>$o;DC&:!zPSee&P`ܨ|OD1G ժrc $Ba !Q No5,_J[ }ȼϻ ِ denM5g>u^p];iۅ[k,"2&B8+ ._[ܣ%d/r#ui~Y)NalURqL\8Xn~q /ͣ#׺F"*g"鷲Gq(Phl*}jb KT&H٬єnK"hh'58<厙)lhrn'Ba%/0=)Wvl*Knu!}!nIwetٜ :11JKV>e]2!ϺTi4.֘k|(I҆6=1ȼa#"T9|&~ra{Ak4xh4*ymMi;֎Su `YE0@fY^@GYWm\ydw4VS·JZO6%ìʼn)EMų<8fumtVL̐^NeCm/ьJ<7H.HIz|EgP5KqJwz]53C.Dt{VڮhS?HVExn Jh+ig51f;=/V 0ԝGŇ]/ j,!)YcXnҘ}5}KmsqZ>ki>G/pb}pPo]Zih9 OW%1 ,1R<#SnP4H pтZ$uY/n_^t,IR)Qfi'%Bdcx}q;ܐr$FSfN3W0蚒hۃ /8* H-%_3,P+Qo;4 &`eeoT5ܢ/Er@1,y '2zwKt#v؞#˺zawI!}Fիyw(V4 '\E b]/r:J`r62,k[re$7wv_dqaa&_={]zSx˦Y/IAU%P} wv- I9d*)qNR)iP_)QDQa-J!U)zs<~#@! imE^ P!cG/(,*|JޟAM|xǀfg`rћ]4AǯIλ>2tOOyaX^CLu~ft:dao#(&iACk.ͯKaJ=~Cgٞ )'cN yӪ( I=]xl/ĉ(BKnl!Tr=q6>|Tec7 f3%X@ig>ukj.斶Twpxo6hJE4LX+j>j12(s. DUm[S^O0+g8~ޞ-;ɴ#"Ӭ͑(P~ЩV /.:@ 7GfZke<-g?\̷7=ʣOйUx-*(1Ko}ReRL:s/JhA6v GKVi6T"jh?'eDG)}ӎ%^g|5k IGEQ\AK*JQY>8hhO[.Njoa~Sq-IحJ)+:I Xa ;~HB c(2Z6kxj1@NKx$zECbAo9 ?5͒%-a$A&_R M *8)?q[Iݱc~&Z+eKkz(ožDEiڥg'NJw!6],A6~\1vY1aP֕ t\?#ZEևPC p֧ϢI2ĕgTud :Wڢj/^@.R'[ѥb k$z]TEۯ"UP_H@y\T:T2+'퀸V5ͦȻ c$ 5_?nA+ZkʤU෡>rl 5"˝+)pj O/7s4?k߃>ˍ X玩R 1 JضAۖSգBY+еF[/83^ زc^!ZW-E~;8۴$ΤNy+įz=MٜM-;P1ۿ:^SODYF|N9=)/ Pf}8_(z!z38yt'([EsP@bK@0(E,|]G{s6-EIOy;,Piѧ9P|Sl+@e_ZXg4Hj)Y+7Ѭh/[GvgQK)GpP %ltu\sF)e|BkjmnmZRQǝۄs;#X;M)bMp jfcOx?ASޫM=KGޗ4OGe펫o7JObO5t8Pj\?hș&̠_MԺNofc0xM$;fȕ bsr*6LKphK[QNy+BV `m`vejMne-4Aq葐a}?sV>E oL(Noy͑C ەiq0YofOB\>@gƗwh%EC5o{ @ELm2 ?WVLэo">):|~:FsCwĆ>+&v2B]`q'O@j0`]$ۀf3\ӊ~*řS*ˇ 3 yCs@)ߏbGkp{Z7Hh^r yqs o@,oHy''˓{JO<unRanJa x뽀cbs+EKL:uԑئͥ=U(E~a@&Y~_v[q\$lj59A<3{n:=V_kzw+Bz=LB"OլUoS?yӼ9;5-4~I͂/t"?qD&9 |*=pa#aLu-+<3nMl+նk 8ˢlCɝ& D-+1s3mzp@ !XkQ A ? NY+Qe<)7E uD`'ʦHK 5鰹Kw/D'/j$O}}˔YLd7 I00H; \[ m >>fnTasy%OI]"T6ZBm=3 ۜ+2e`XmeW{DŽWk_C\Z֟jSΠIuKmDQxp³q ;%[ -gƣ^(GG)}h4WrtUTAKQ],KA9Bf3Ly]rI+ ^كoyIUgg?D\L:|1\nֹγ*rUs|ych s‰@<)`(@V`E٨mw#Ȗ.G+l3ƨ;" S4j)N=W&"<@-9gw(5F:&0'љӘ"VL| oqw! `p_"b~ЃЬc"yV)%*h{fBK []-&Jz ݻY|U^F4tks>&zVYX: 9@o]rP. sQZJ\L} 6Kgʪ(ᆔBQ+|Fj .9~0VG5cy]4$(6&sP!^g2U_õ78TPܘ-8"vN*)+P AF|~$*;2`v4f1g.BN?{ξo#P#.c+M^K0&T~ d 6졡!/BoMql&x1=+VCQi&|&Y [$NEC'yȶHգ2G 7ۚY"]*;iO ,yo&rpAl?#z1fZ3idj 0^Ke[*aΐSS? Y{2ƮB _1'g@kHʔy@]|}ϠGHDv2M8 / j`g%#y*;TbB̸a/n,.,G&~צ4Bf-.0ڔf*GP^(Ŀf4gˇ#b<;GJոKDepWa`JTi*bNd, L9ʔk,k+!Ǝd7sFO 8aI?,ؓ_y 98u~UcάW,IVѭVBr _0KˈueGxlKaMAymF&/b:6N0YHǫLZU|*r3vQ"r8LHU<0nq v>]f+3„iYE)(艺ǀ+|(|Q}jdf%!ݖ2zvu-6Š̻$G[WE BԖ6] ]zj OAi6#/ hJV~+'.?5O{'pǑxΆC~u7 _AzS~/#]=ZbG$Z¢N?Ls.ќ)4I܊l;U=yx!̼;!z "k]xk!RBؼU&i!ԼlE.q˛n("LIjAo- Ҡ$+7B ޔ0yt!7j ,Q-\bג~鉴>ڤ`M^ٝ}2)(]e`DimJj2Ŗ2Lz~Lmg:L - ,zUw3{`t~4: ⱢǖD!9UeNDZjX7 k_HQűX p)XB[*Z}ؠt`ViXkO/F -*4 "uu%y#7͏PoĴB9J24!Ȋ7phc;9⤻?}-ԇ"&zz# DUSM>#0!=psr'?\]mw̪.WN LC1WXX7aY(is6x-C~#n23?rTs [D6:Ǫ(& y3%jNpUˑ>)ȬJn6#X/o iAmBu\Y2:︞C[úǑU&&)Q8y*Kz _9Lj1yDr+#h08U;twʩxۡM3#wkK.odQ ou#7Pqz%qPe)U|#txPLj]7I_NH^hNolEn7M6.GH2k47:QN脣ԉ`imLQC}/]}xK?F_i&\?x0ԍ*ApgC E|2UnW?h; ޷SpQ継zmh4Sre6<m[? Yw66]-~:Ð nZT^9:N|h왦`$԰^SG;qtO2k;q,~,KzؘǬ|RcrV,*?w) 1Ń4\G d7AnyDVU ,(? CqiLDž:֍V;9Lec`&+@p)}* BίTvud7E0Zzas)( lySq;Bix2=Pt0NG{R0+>QN= ˮ>uUXf*Z3i ኋgާ38\8X$z]MkyEnxN9gKI=;"qoq!m6hnSx"ֱ_ ow$r74ubN!RX}n͌ 'c`j@z e XcTfĦ\5e* ȯҞCp_cy$J_V)$M+AZ!,sܼfάdHbZsvRf=~6z*c#bZ?%ay˫gOLLiBJXn `iBnA!d,gi}iT 8f`Wl[v +KLVOm,}Ǿy,%=Q&&i=QԢ)e$J8dwҾil3Yc[T^[$名CU`xBp)Q]eh "Z@ý{txDsTJ8=*p}iu1OWKoho@D5ZF jt>,K- ;R QS C8vɂ2+!-)xh,v62TE1w$#6 W([>1D=IN}?p{z7 2 1AG!Js~&*d*8D52UAt:O+ԊzE?/10O1/T^{K)umƏZ߹f>_&$wO;udb%U^wPTWx ;N]IQ49*@"<Z^_Bxo3Ëvgϫ- :LK3a0U0(6VKX8N'}-( eX:HK ^QX8pg; W>QĭӏӟxCؑgAH c)m52 CKɖ \ >kW5:W7ܦIk63ņZڣ>UeX\aP%ʒizn91OQ{K\QQ¦<@- j c\ T?𙣆DO>m"&/D/m|4sbAe830{c'Mx[y=e.&eI>5ʶapN,4F\,=>orfpEm=' |=3tΎK5/Yٞv4˦p<߭A&€d1!Ee|R{hLq=5֌1K#ΞVYeB3v+ⲧ]ØqYDjv}S:iĥ"AG˃5AxryCTmo2J[V)L{r- NYcpA5;bCu6C_ 9DVJ;WJ;IVF!*@a#B-ygoSt6{]rKM|x܀ .Qzh"+fPm 8imKAlS'V;Pbn.}?$݊]=0^d bl B@QKwQ-DM.5# 4p>|Xpd &j 0[O+oyIt. RNg5Sts/QF8]ey3:BQѰD kƤY+m%(BEz(y{+/Z~pO‡ӹ/k'bW,﹞һڧEO"螅X  U8+ yf_yˑ4vCs1;OSv2:m EdF hr(a\V5CI`j~I!~DƁEzѦ?=jVlux2YRmjIEtUWڜLBl[_NWĴ+C:(;k P:VsUC\Np @J6ā??h Ap ,E\t@O.KtFS-췸+Hfe:ǴBlL33-R jXU͢ΎN,HLj_L뎠go997Yn&2$D.6%/z3_Yf 5+ oK27~qF|v,3E:ȤujQ;ZEJ$d=l[)=HʳvAr983MysE)4c7/ęouqJ$JKSpZGP#f0d/P$e Jz3u"}Or"w `¸cZ['ʱ$vњ ].0˞XgAZ&SbhAo@AwOfWY@GV1$1n/=#ߥSG!15<@s*xkuΙi. ǗKYa90.,&ibǡ0s>-ޏY[] gt|#"cU=/.|O) 9 zHg_fAj.4<$|NkK,E'Lt_<^:dB#Se`JL`9iHNv wp{Hժ\(Ddg"am2XTBs:K .o!J|ϩ4_im@΢{3vVdւ4yYͩ})aF4qD\␩Qǥ*t_ͦ-ğjDU`0,}3|Wzer|H`,eG#ߘtC?xukȣatJu!K.GmwsO1km)ixD9]lh{P@ѯ)."TI! Vo4z@Nj M H G>̣Q@64xr96uV/rًwwS{VNt*Dh\%heRlTLF2Z1yC ח b" uz2녷vͬ.W'Il+ZŠf @ui|3bj9ڑ/8 ~(#0W3YFfEis"TlC1x{|Λ3>%*LBX: C*2RՍE^=!i./Ċ0ᗢvK:Ya7ڋe&ȧt8\#J*[Vݷc#ӘCO<\kF= ү@x[GH}\׀'p/brz\X.BS!\pg@Lݠtڕɕ96 12fT,2 ]^f,a޶ Ǿ6M62,PW2V!@O+07hd"E%]'B9 v\zg:?ο$az-9>Sb+'O١6m@ tu'Jѫ]>|I y F.BƎ#S5BH, "151/|CSo^T:BY}p}̯SJ=,EWNDgaK`Ӑ% Ti/f6%8:iu0osɣ|FNNqFAF!~ klnX&Q(Hkh 7O&:4NoRoJ:vLoPa'΄e5QvG1(C$+z"*zAٛ5 /!@fs- igܚv3EQ0l 0 LObN4#N쑴TZj7ņ7jevfsyI͞r-{FS׍0$5Gk;?9'Uz@tc3A- qIr'm_7v6 f3j,d<5ax צvNG4Dqم>XT9<UQo!#=j`3qAm3 vWREO ~fivL'W*z#e,r?xן*` HRzk2,: $;3-q@qxɔ.g{OA{^obSON*ppb-BRL"AIZ`dPY x5"b;Qߔy k R&|8]bU#߉pT^pvw^Ake݊eƴgRNYA*!nEdGĮ2v2~lb(zly7!QA.s2-L( `ԃZ׼rۜs \6o,D +h]Ou%$wYVdPWyh`k-dXn[gr0se^?&< }(-*$!K[ijGؘQsN ~CLjɜ{UU.P0e6^Af_oY @fEi5NyKO(:>3ܡUA)R^v/+8tF$! ?䣒kxg)7ZK̛rA|BzSFDz)x͏?u@ȇ\&ُaTXz4%O\GU̔Soyq&AƶS98zV/G@8U7S16[`Ǒhz Ox}Z*b~kx>itvy~7 DzyFۖGW(ݔ.}_琠q ڈ@T/%kÜDVV*EV<o@aBsb ˲s\2&fV\Z;_ڍ [UZ.u}jHAȱ>&GP|P@r74)I0'^Ui0I8QA0F0!9`A+ RT]9boyn&Cu 0'l/Mq1kM9|SB[ :И8fJ頵VH' O>)'!LCڞ>Ʊ:>6*9֬.sVW$!"Ρ=fr9}? .}e3|7.؜.3kS1.zZmmUjIۧDl{g|"55@t!P9T@Y4j]tB=< S.vl {^ P2cBÜq1 7$uxu ˾ YA3 jlӀzѤd<ai"9D*b 2^IJA]I .$T!w@mM%ybh@O-[N B՛$3S05]U:;~D>81I֜W;>B>ki>:."Q d`д S+ ^N']4<2 C9кt/@ȣ|/X ::ۺM(^BCV[P2YؙK:v8;kzx(D'(>;df.ɚDCX么;OM(J!mڒ`qjE/!zc3:38"$xs/fIG.kwv#H;L"a iy,u q3ڰʼn` z=>$CMtd4~WC)g.yߏ#!l\SYX공` NξQ]5EQ_R4S2 aW7>}"qwDxsD-9[3[՟Q~iA˪*X[V屵۬ڒx􅿌Gۑl>$"("/tG9a M.qMɺ iD=bx% \1.k89KPsBwo+o:s q=X3 Qi4'Ш(F76ݰ:+)W C%i6,PҤ; {}VTJsA>g52'hpQfWOQ,Wo^idd쿂qB6aQC2gtFp F*?k2٭HuXoOa<<5ڼ;%Iߡ}DƼE!61%&I?Ÿ-Oǵ맽@QzQ B_%Dj0u>e||~B#sx>(tB闸qmU::bD'1?| bZSl@[>upJּO>꟧NQc ˭?ꐣhN62 ¤(>6xrfbgG&LAS \z_7_5=Fxu8Qw)!G0<aNQi 8Woq*qzb!X فwʟc!>*v5(;/YXkip^ &J%#FYz@vEgy",8`=_WUrZOޔ'FV\KBQH(y&U(l҉?4%{XYm< { m [ _#6`I=G19ݽ|`ZM6b3?96f)T6 S5f\1{VHqs&-3ίuj"ۺ h4z2DM%p[k 0#[vbImA'V|Le{;Ug1\nki>ds)2 ܪPWر GJ<z6OZ!2sTf}OިLV4;⌶sPé[*2 ĬAbVڐd/XGҩК0FDgoc @z~ފFŞ)"SW?V7ض 壟U%胛eNg2;$xqH6$*>!7*uP2FqQFK͏rV܅fK7tYW`,<&4bMf(m&g.Uxj-~GTDi R:Aι՛5U2dz ۣ( [klV"!*cH9y}8k/bVdb0rMuy`0 h>IxcQкŧE\HnE :Ao_s3Y9ejjEC¿ɒy8/qtKE{UKT#<%M秄h/-ƀfO֓l[%\x_ZDȳ)y DDV_*AL8\*]_X @m*n+A3R̪J+QI.NjMʀ[,ӥyӂ4tµ~RfQr&d)76ߞ;Ŵ4̐_b3" Xrd@m,5Vl Xi>YakE[/sebynqUlwXjr%0}{dOcSNj!HADBD[|R0)Q  7mmQ UH15ntEUd8YB@`~0_5YW`\T&y4փ1IfO_8Y8ʚZ%45bUS2<p;!kK>kC '3r8g\NyO*vԟwŽ1Uy]64̓k3060b{JRs1Q횓m ֫ Svo7/_$TaaǩYw *~zrFwh!2^lz3$r}T7iQ{T𯁯зzJ*aInT@v#qYފ֐=>*Bi-is!WM$u53FTûcj0r_ĜJbJu^4fp@b]zcU5!TM`% Ux0Tv ZHUc!vFhܐ+~mhk,VF@cj$U2>Yxa4P<|D;kdO% ޶4RoG3LmL#fPx([`ЎbQV.|\dѪ*gfPS]xYLDs\8(%I4 ;זN+N*Y̍覿2W†=xS ^zM@뱪*в3s!paMm?Ǡܮ}Z/*v >ȶ-" `|:u+k  jkeғ]~L*_u6 bqO{&\^\O)# XS6-Ȁt. MuyuU6ޭ]_ZHkB!Z@Ov1?Z3veaiS׵ͤJ{=]@Q'zm,ƱhmvvI2+yozZxgv0hsdSC+T qDdi?|T1tJuQϪv 5.` =Ȑ KNW芋uiL@/V ־=2y }JlsjFߢh,-@=ڟ]tշER8Lj ܰ76ՍL;]1`2UAݘ %CN^T[nnɴ rfnpQ#ܖُc3K~,rtT2/ZdqħK?ФpX0]8ىd3GteEdJ:fYEi;EOKaLfJ$uX>"UWr`bkEL hdC~*YG_ʏpN*w-twW;=qVv 1=Ty{:p$liC,@AOw\1đAv=2_ZK`U^R"hxLh`j y$6zcAGY,"ƸОhҠ~VeJ+4m0YM<MX-K{0J"CD2t{SH_"pJW¸>;T&f4>9Gg(<ߋF2~ECo~ P}?(ű.LJ%ԁ8$a5ae԰r@ ō-4+|pr*tKmcq4$b+V֬T eNfldSˌ`n?~5y hע%yeT*ܮ5I so14J 9 +:2 ޽mM K[,fےQ՚W-TPLp-G*X#KrMՠ|,g,\g\O Y/sz䆷26ePBñщfV>&"A☀]|̤War tZI@s~8Oj Y_Dm= 6#`o~/*!.QQ'xb͇}ΣZ-EQqmEn[whM&>4JH47Κ"GW͋$^OƵ?zF+^hT\`5wU&މ]d[H "XEIH3o0AZqP~c%mԕ2bBLTI:9~ת" `7~nMȠzsxInl8qYάU\k=T0K[byt. \Tp/ǾM?_z}Vm^ij뺀ykL}Rz2l C qi]p4ǝ_`_*%"V ,^0: 8шR ,BYz]ހ'uv󛁔[>upńViO/#7(M">v&'+ !__gQ#yܓzg0Y+aG(U(߃[ YԒnM{aՃõVZ{ê8Mf{]rޟ{vA|AZSR"wLXr<,!kpYHu rqlpg TYP—o}L?˔X8W$Db" A/]X;[j/2mGNIQxev( ulw8'/u H=MB_ϙY݄SvV<aj"Srb7? '.f pK?@3 fĥꕤxzQXƜ| b}r 5нx'W~cKivnnrmPO]ΰipH>YO m'}eٝVW4͆z{)e,3?ߨFLHcu>7_֋:D#:P*,D^_D7a5b'#_uUB[ؠ=*d5[(rum) LwКPso GE]}hטge=vǼ5$q`hN'N'G$sdDy Ks9\ %&'z9*egSb&Qt4 ? ~ƭ"?ZsO HSJ]i2hٍᵦ5kdAVɘ3``vs%.Rkkgz&B!pז޹*'#hH D]r'Oً*BHXv*)7pw#ܬYtGn$(nc5+`o@/1'R4I vJm=kٴ?eGjj_nP!H|šրH4ۇ6NŻvqGQ5eOr7L|Ԉw<2$.Y Nx?VsEh6ci]RWi<7a{N㜷bLyF",O3nwT[ֽJc[`㥏@I2n}߷G^=G'ZSз٠VJd|$¯+2ح-A06l,dguMpw=ApP`l)g6Ȭa`YqGOr0ιʢpzZ-c.;37mRv4WG᭏Ai7Qœ]yK_t5 :BF78UwtAJ+H8Gˢwz㐀 Q:&k-{mLV*:q*#b[i'#탻|-7Ndr ӏs-OJWlJX:jiWi/n 9LXOYzL&";ѺTƈݿΞvUM`^hHMl􋺭Z-p;\sV%AyQN2AAMm5.DJ5?U[s(~hoGS+[]k4vE?P<$\wl>*L&ڝ.v^Cgɽ(@(Gϓs~>^69rh@jf|DmrK67#SCqnS>m̞9L9io5c>:[Itbfxu i!u;7O;vGoX. N!@XrHV z7wIkІ7e}\p歐AҦ ɔrRHpJZJ[m=:.|J迪h8t#7+JGcnbL܋yK!QwVk_[!B.$l()*鯇:ݑ0 jxʸY5E 1bzZ sxlb&S]ʦw=&u7 {Eԍ6VµCp/Wdy6& r*tOsz88*0~*-{}_[qG$%䘂7̠NniWy O xJ`fv|mROX,ÔUΣT̑rDOjMPCZҾ )>tD#} z[ 3Vy i1se&UM(m_:RpW ψ21j߼{"(V319>7.(IH|FghuazEW-?v) V0O_jr]['u"M5S:*Yc3Šv'j_Dj|8{Ya_W\Zd3m>]q[ hnit?tY}cpAN6DCeW2/;(s@aD.U_ytos,L+rC.h~'5N5蔫LE^!H`zĆV@6kâ)9M-Atf'$}_ ky uqmD_W a](ΌwG 池h2f#^ĠZO?DqnL- *8GAe"˦q[4zlK`gzB,jc?Qm ۑ}e atGiVҨE1A﫵H `84)pB0 bz*#p~NzO6Ēcr| Ou'~A"J/J uBݘb8;s|/T geAu&HhʳyG{smJY +,Uݢ"lN:0ߩr mNqP v$(tM h`0yɗOlH >Oi^eg6ѭщR5W9<ܵWZ:JM#v;m}AZ<̝p+RL6"uAedOwOr&9Z=c}TrA VO&?,+HmE*>ν! 8\q םW nn55IS4\l|\usÔpKx4' ` B[xhF}!=鶻{M QicPѺ7z埝7*Ԏ 2(Fvċ3WcQlRa)k4tY3>wN#Mxb^?,Wd4j+ tt`WY4߳N2C[ NX.oT63ZE=v^n6pG0]Vkmd.=6>]?ţeCXJX/ V+?Ѓہ8Œ$""ɰ&׿[z}cqeug@kwo$I>?Q-ԃ$٥X) x@aLc}ECPnAH:9>N52~du@6ho'Hp,z>.xʅRHw6R &M ayZ٣r.iR7k;p+ 5.j*AFWH\ĄQP~V+s}bgLcn(%`H6U?46SޠR?$ag9P %̙(4# ճ,_ MdzU̘.|AP*~i -i7 q ܁@h!j]W#R6ѱ|4X}| !ɁLZH:! +u)VjVܺ=EMQn[ ߊ̺r ,;8 X k`Q~""̸͇()=oM ZgYj܇dF^lU{ī ^ WS<ɘs&A1կ0_wL96:moa$^e!(Ȩ$Ͳ5>vW~d3&gEC@w(c@)NpOT^T>KK[CFyYwَ_A* , Y2vvB40PjEF;Nͽ8{ǝvdK[ 1$&#N<#>C֞'6?1J/g7MR!TE-B™kԆ )Xq%x-gۂ>|G5ZeN8:-+m:3iwpA8.2W&~r:;}-FBr_zEf]6?ҔQ5r~҅TpfZ L8Ii{q\e<8kd n5 8q7h; I(`&_ʐϩV]G@r h¾2 'B^4XMQ @gv;jWc~cK\UejԧEl[[e- M5Tp -,/iF2Ӽ4AD\J,:VkbL=K]t ZDZ~^7^$1FyH` Cq6cgYvLUDm9X57+y<[29@ڊ'0\Irr9k^WX. zZWorDB+ ^5֣cr޾Ba5{ [n Sd-8F_\G~gECuwצdWUWZ{2S3J1,D%ՕA-YeFLL q WN f uZ9r SQ -NWtn1o7U6!x9zTt~MnߑBԭBmSv%zTW&D>Z}AWr/^Jsf5})SvBzXمbk.Vc ?hL5_̩XTMYLQb(ь[x\InMـ˃x$rO |A*vL YJ{Rts(N*F7XǿZt=|ž`I˕>KJ ʾm=ZlJ:*+<؏֑';Mz&jY d'g<ܳG~%JɩuG":" U|TC-$moj/A+8LWKks*"L V?,%6Y {Q?f/˒Ưf2 hWCݚiD}1(zGyIXX+'vxa!硎p?{qд~$w}qsc"4k+[K5Cw4j_%>r|^ku:zlJغv#c{ vcD/{"k=<%1*2'U6$^}vOӷ! uVmҹ\cb51X{fzһ`#3"k9A0o]Q ez~=ESSKYT m,auUw,r;aK$H)٘?IfXXUP|acgYSRN(c5=qx-2S߿_[||xq$ld+@!%@ xr'- gPXb+ [ cLe$uFoj]E,EZ~]_["mwZ@+ !3<ˬHhg"oޞ~y;3!G,WBI"MߛghF5ȫ12NS㽵,prBt']X&ŞόgSjiM 8w;m;i&^65tDT0"vHm ;ڤuB9Yڱb厕a.+U VNAl_dMHdF`#x~ ctE^v%-غHjW\:}G0&uO{d$#c P4>Գ ߒN;\p>0}c³%9&#]nM,ÒwfDt=4P8h`EMnxyTeՎ(OQ+[cۼڱPiuEVyvJkYa8p1mGҙޕ ohtqn_j,"g !.W~+,@5zMq cXaRJY6l_MSx2/2Z=9-xX'a4qdIԪ(s+1Z[5BwaejL9OLy,C:CTf"{'`6XZ_h?>!U |d"f&߹ǟc8qfe;mJu8rzj C'SuJFGKp;_6VkoH+3٬0vzqPS#ި" #XKw i@6OG0I9۶c)>f!yD%1jTV{of>wX;j>P_`! wCY(] ݢ\ي޼1o6UE-|zHV KbŮcӳg&/;ɴ22BAGkAShƦ[ѻFW@_{Q@=4`yEd# :@n46]2tϋ9q JZz =5>8!:OVx1 .n3J N^:-V+D:-+eF]&#^& 盙^~?X zabN315Om Q,Z[~8 C\rimP-آ|7z{"/LG8\ȡՁXn  EUx(ej^-j@:1v7,I ܭr*Pw5 *IA-AEi`&/.:}IY~˪[SՋP"+ΐZ^ Txm=v=w]/ko@]G4wxY[c=Rf1$^~ Z_9b`;]pܯM'Uӿڔq uEGɅN [.'$6AHz,ߕ=97Ajw !aZ8G>^Ä~2q"}ubmaX1Ӛ6e듂R'*ZA}P#Ǎ.* Sd瓪Liqu˯zQ;~pm81YNT Vɾ'Oȳ^qx)ky#vX2oC8EŠx픟/+6kLhT%OSb:#zun ' jr9,#Ej?o7=q c+:ِ?:ٿUa#2k jٜLAgj9`\Gs=Iϳ̫&'&Ǜ5_*j%s5Db|kpZ<&Krhps9 l,r2G*)(ӓ$Ւ?< Gi]Z.gJNQ{acT .1+T,ճ˕\be' ?|&Bg.*5 +`+,J9z T %k*Ueg+)+j&F9Y㧃Uf(Ь)L-5m|h&嶖|Pڏ1u٣X`A!͠$׏*<@ o禟y܏S1r6d e#= |@g_{k3/CG+hlF!Ep蚂$P|\=b]2G׭f?9tK٩q^k\D?jȦuMHI)o@W"eK3=psZc@ Kh65!`r D0C;4 .4{ tT~+K#_"µG2T%6W/.Q"EgyHBQaXb#Mz&TqITkM}-\ aN Α$|~$`-e. ?SzĞT `YpG}Z㼑*āN?d.3Լk;ASE}2z'6 ؄$l9p7.2T@ܮ3ږf؋,ݹ{$ͦDQED{GuS@y~ U?U*kBAjZ˙D| a/3ܪ@`seED'Fͯ81_eFc$f۰785Bzid~p7;ve+Iן0ZE܂QX['ue@#Ng/7/jLOl> D9ԭtW/k4TW"?v'ʖ؃`s4De>EJDdG{*!CANRH{|0ZWJh( !c]VT>/t1/|}Zp3z&4uE%].^ˁmʽDMx\ /SpsO2 nv[=Cw#*#:pg:)XVN;Y7.5I7~6s,D5b畉bipO~=ju8Ыq(:cyLxyLu$Dn5ݪ5f_<}OFurA%$!_0!ۓ O,K 2HK گv"aXT hwL׍ӯH5 r+Q &(6emФ45dݥ!- b&g[q"t5DƘ|]-okRy+}FR(%)>f-&g<# ?p';3G,8m PԀ֓w18#wH0oiiY_8NL-` *A 1C=[tTVG| J?$$HZ4VpˍCx|xg[.;tݪAnω&)o&RCN3Io~W/׋p@՞wD$p=kHa+GJqx4}4-ӛrAxץ?XLEY+"w@w\C$/rbzzUOl岡-l35ʜg>GhPh3]O0L#L+bLϝ%; #ν1{ۅM'&']ƾZRm1b6>#ʉ~6wTP&4G?.RwHSЎt?XX.1 (x̤tuh'qP,̾+yFcR7M'C' :d8 ~e3qv?FZ$ǘTM{ҡL>eYGǯVPĞin?T,╏4L)47SK2k`+w `}~J~Ƣ% QlCvQY kv{zPD$>40%C3?=I< ^} =UV?j j5;j_\̾:Vq}RZ#es}drDH58tNB? ֦'9qwu+%Kϥވ^. 3EZ=/bfA-[rf " ) @3:EPgwl ^uA][Wcx(&KA֓ܢxBUW!e=06I Ч/( #-@kȼ; Krf,f/V+f.TM;FTW!GfktpoLP7G)*Q FA//t~ \ kV(T6UO <`FF|C4FFQնgOpU% YW{I ܴR`]5sXKiJp{3c8rq:͎5V¡ܰ͘3= ?h di,QX&_/vQRbic ۵GVwN!Qa%W |FʥmC!"$  ZL=j'G5bhJvVٌFo@ %<ڀ=Uoi 2_u( OšݦUO~x^bńuj-VꄺW'ց+3B'g^/d7Ӂx"r3m×8P]&ȶl)Te"ͫX !ĴW^ϧmmg0?4bGXGx[K˯V677v;{N4ޢ 7vO mw4Lͧϊx-.}vZdKJKA4١ 9I 0cDf+Re X #.1$7:N?Q T>~e;rn1 U盓ͼ~` GF|V@]zaeqh@ >Gy("#oC7f5 #Ec%a2X 2-oa~,{HDטMzEt55/B+DqJ d4Ќ b%E(sc'K#g\º?N(tNq_TJ2f.xp:˓Aa {o/]Ȯ'V:@\8& G[N79{~'> إVHa# n7F W6q㿔Dzn,h'V^ Jҭn_a_u+ORݮl L/'ݿ r'x4Vjy=0@gʭu 3>vJNҲj62*Jא?c)M Il7Ufq{u~6Pϭ6+ͨ5ҡD=xD %th_c'wn]E6U4 G+ie{zEbǁ UDm~8dBwF뵡l%N)KWȉOބ;pg^BAh}Ɓ$dt~BX8_p@ RKa01%. +~oW0sXJ1% gЮ.4~mAaN怷%!riP#_;$ͼJ1G#싑 z+=y^I{PMN7ZbϤO[\TM*&eב+h߳:nxi H4cU:T6QJO?葤.CDFXAdK+*Է6s7"EL= W!0l$S(?Q7&*u4(dP娘Z0cO+,`sbQ^9Ll\aūRCN%Z1'/ꇎTJk7r,QtB|We_եd@)X9Dl?lca=+٧?>i)6ˮ+zw|9ޡhJ"\=h:*Tp$8Z3 }4Su;o= i:INr=Of&24=]V(Ȩ멿|^̚cȇórȻbR@}vD -ՆZý3҆EJ[MsB}X<#>aam\􇅯jzny{W r0&Ӄ3w[s+ @).,9WLY2mTY(jCɠ|6BG7b/]E7-Lp Ұ͘TY҅=@D˟zbq#ҞGTjbbT2N/!(>\֓w4Y4Jz>+Md &(lw^mxR%_'}n^'e ~I;pQ/ UfDL [ JdMrz^-Dm[oTGR QL-i^<ܝ0}*iRg&T;9X8mo] >--bx:hg]R=C2nqLnO+sDS~ E, zhǀ,] .$nQI`uhUh%9ҥ։ZBGn48`E9,96E1VLr-{!u7 L"g9FDBO=`oΜ2@kĶ*n},zw3|X&:a``C{31a\]Yӥ:+/y?%~F"ݱAQV># ^61(\ǁ.Vct45#TY|Ҫ ^Vp 6M\2Ph/dZ7|*@=[\Jfbƃ& 1qE/nQlv:1(c=0aמj!w_Z7T)(YRM3PL;JKXJ0bB$UW~Yw@PQMGoPտNwcI,ihV +>%@lfwyR]Ead+`Ga\*TG܀2ev۰fP;CMQK/5C7 )̋-q?BGdv/T$Q.is-D?97qƒHghEKGҍ3IG|c+sk^+1(4ݿ"牦֨57<}IAAm]Gppj WFь)ؾ1=,m9e5s 5OQv3v ,E6ڒ`ʬJV'|/]mgJ.E;;*H9+ l\ 6(sKx~t)7o uorx C슜 Js'_L3fdV6ډ5!\/,)YqL._R9v'ɼf+C5=KZ;gH`wӷ|vc&4BMʐkKöd0Qs*$^3̱hftYuĆ 1(=G?˅Qfɂʙk3UvЪ̸n64]ońS 7^b 6|L1 |d 0Mܙ(w\H߶0YP٣$DP 8W7X A։,tcq2v\ ɰّK|iDmE"K쐠Mf9sD%88/ϱ8$2] I.NLC"݌3L7/,SQ 2=}''R%!UԷRp -pd[8O@4{<ÈA@ 0D-[4߂?wզ>6YELk2$,1~bQ?p5eUClMn;6D5H[YU?h⻋Z}=yj [D%d[=*jl'vtp 4,өC r,^a8&߮w8 O8~_S*B:4FKgQAi %)G`Z=y}.HpYe_g$0{B/Nx4[ 1­Lu@e8|Z#ݍ^4]O)pcjՂ}ٕ7`k}Db:.SWEͩ %gnj$j8ɽ$4Bj |vIKa—1 MՈf8@n@/./qӡwjE9&c/ϱ! &k`-H4)KgݝEd󰣏Vl$}xO99"3u'$wᱵOTkNG1YOe<!Gσ1# }dYOa*2zǓ|{*vh o ѕu?;r tKZ1SMĄW;-%JNblP^:p}eP4R@7|^wO_v'Ǖ&D*$Ƙ4;VS$zDhKLjU(:fwf=S 78惒,.דEr9q/ zd蚢3AL<WpSdoG>i3=Wlz>[g*GSͱ 編"-4yEץDrQ]z< <ˠ\ϼH: q%9thELLZT9; @ ~,:rKpʳ*= !a !s9o}A6ʲmȳ9: ?naPYL̹!?KT =֞'AVy eg=,SyW|0 ҶpѐY@$oFf}Xō|im[]dʷu}"[]e"eUKKgC?U{E/WU &blO}j;^ p!T$kC7^A%QVp4'zx~qSCX,ٚNP-XfUEU0# J/Ug'qϚQ <"(O%؅L{T}3^Y..a@^mScs]bCuد&7,q1@)>7Ș\ЏH[ujl-dQh\V^]z&z+VM5b.Wq38'K7CxrMrqQ:;ɻEw`Ҹḧ́~9ES*RϢOv$ >cF/'@-aU㝍x$lEha4c&EIgd (@9 _| @^VuJhA}l9b*%3pߎ[$ T}#KhYTv5G&fF5DoF)K~vabJ;ؔ׭.A4c|@/ۍpqb{ >]1  dlo (ρѠ]ܛv@NR3[MՓM, %F_/b'Ш wYg, ~cz&x+S34Pp# aO稻ާ0obk'ͫckfɲ<;~pRMy*㖖rxVܽsLbeAŔ&X_̟ї#&p|UNYBIA> `;s]*iH'qF^$Dұ6h!j6԰'9`%KG*!f> })X,0aNV8 àæ ӏy hP&N x xS3]Lz<ȶvhb~ۈh!̻MJ(O_qZvb Y%,iZ 7Q89'>SIq^k .t~۷ ?rCCLiM.7ӿ ꩵU;(g^- [M)ܫHqS8rˠ`{%_5_ yg;!@)Nŗ-n0IΪQ.ܣl:I65!]:@T6&6;2Av^GBK˥ Vt=v:SS`u7h. n"*, ޜj~KaF2`J C@!^~$u0\3+2pQ @`żyq!JTJ;[ХikG9/c@^)m۴ Y\5y⾌x;D*tEFߒ=}nx) [7/ Q/*%"|iUkp%l5H7Pǩh /!Wݵȷ<' Le%!tʍmK: oWwԉzI=0ـf'85v$ W6_!I ß2̱!qvפi9PN->LOs"]A0ޘ2V.3imSdL;"^ 3:52n Y G ]alv4'I&#>݌2V y!O4! +Ht홫g NxO1u`-+WNZ$pbz;*vgwx*N(lӶΊip\UW"N5e7tktԿsŠLaˉA~gN+ē57v_Z\@{:j4F#zv5]] "{PDJJJilyQD& l)ҀaM ь !-@&o%/7*hVǚ/ q/c@sdH[J갳͵ﲶnҔFo`ip4hۂ˕ʜ;g;1(q2:*Ϗ$)g/~r(֤o]NZAH օrvE,G5C楲Ǹ˫E8*!X0]mB/q) Mpǟ8ܧJ*w&UZW#$r61==R p g;a3$7@ ﺝվױZ!ur}iwl\b/Ƀj~Ѵq.WyQ~>(?xV>6v7 ;gL-][|B%& &m[ɟ2ep)+$5,wgjupmuCv Fn6q,@!Dk?n(PqƄ[?J9/:4PšYWUj*"GD*>IrwO _hYCTrGasA\XP^RDhŷg_̀%"V-7*S2?q{Yn-߃FD_[ͤRI'7\"6VK\o!*n&% L#@^HȐPj`JKgi l;@9)B ȁNInkqֿ&* 4KiW[`m#8ʏs +{TQVdDu Dd$k'Z<"oNrWB$6 !)%&F*KMU`bERaG6v2>4ЧA/ب.w7pC?A~?;EYSEG1ܐY(+?d |̕9G$OFV> \lNv5jgߕ &%L-_dWj,)!|#9`ZXtxIkwۮk0Cҳq`o }^dh,. MDzsp(LQ]1)e daAGrKo&?ٳ֤6y`z7޴[i)4F3=[B*n`#(2F }<7BY^5x_ਘ6ͭaKNTSZuTb/)7ǎ-cY\ȳVO~LBOSEʿB2Dr5=T.*Ju ztxR+&MĔU`)Ý)b#:NsJB&K-l^@1 $7RoU,V6꥛*'oSM󙌙b-Wmz>ߒQ7VH> yws/B>@ >,Oms7{(V&aCF~W7%x2а;!tef91ZE~qV#L8b>cTgIKjqf. v;;Jdʷ&_4Ip,c6<<>*>3ˊdsp (O`bgH`-ץuj$vؾ=2D~'Ry߻˿ HZ +B9I^2%+qq޲ibLz8EKuiL{Rz܋Qz s#*V ,'6ԨcՁ!p9 0PMv*);>{C(RcSrbYꏡ3Wfb1C:(0 nJR:+4?)+ HOGfc ɰNJ'0[_/q#B eꛫ u$,鋲E >@J?UdaO8zGKߘACᕨ.fvMxoB׆m_3_m)U}4U!rDwvH54VѾyVba/9  pcOS!Pk_􋬇b(ؤ/l/O>}ܵ2CEcK&?Sv" Uя^rs9\7c8ag# T9l^C&[cev߃ȝ珞WwTb~M <܂_`D8'Dx<oU]do}p " KfKz!$ԁd,ueSlpܿtq߆ucւ$T<1lTUn]Lx-Lbơ4O6DI F}SCTf:DJg1Q ch 䫀ǂAB~g ;́pn9m9jе$dDv\A'KTO` cִvs-Рx:wErd[El+pޣƙt%oVQؚr nnOr} O Rghyl6Q\W ?Btro&[xJA |NG)?QlyEIA#6)T M%| jA8W _WYpGDe8jĎy6 u=2E8*&D 8}ٻh^ZD})%V"bx̼! vާ\`g'+ziqْjz$Hϗ) o!M(EJɂ9_%7"8+Aٿ>6Kg0w:gx ^jelj,lֿ1XZ}8[)l˫\F\r ̷by@c vWŪgeY~o) jvT繢"rͶnM ̉cMFF,M=::S N:Pz%  e 3meI{܉P zF(5M~} NЃdeR1#w5&JdoX{Ee5&_) =FzhSL.?"ld,-s$nӖT@s&I 0UeAs"6щTR֍km341O_1oK沐>nQ۫u|z&_Ijxɐ얌ND)[Yh%I'Wu|t5#ɇva9w$sޠd^ 4`L m X8`uRn``==!xNPCL Qj{#YQ 0Zzr,xd/ Iܦ^ocL@a5*İ'sX܇%f{->T`k]s}¦B1# DbvA|9 \%EPbՏ%)lJ1Sq؋J Hd}L&^5ۺ [XJĺ ROAZ#1)w9SIfy?ivƐ˱[.QY&.&Q-.hb):RayC[5r?:^E:e\K3 *Ywdq{LjҲoΖy̝#r&LJNi@mK(}Pk[SOYRAH7,fRYn Rnu@sT ]"U?.߅cK ҃àxx=HsTfuHvܵo}u5|lI`#Ǝ÷ J`2sZ\- 2BߩUtɂ5v qssٸ4So97x%6 ng[C} "l/NGLE$ toˀ!fpi&JoaRF  lq̨caCk]6erʈ2 :yQ$vU&FԎ݅̕ Kr=U~>579o Y ƣ^u"xaAid{b?ICd&A72c8⳼-9whҟ,JqÄ'Ybw~C@fqzN']\QK>\&|J*)0hIWuSp3(v72wQ# J,#\if~cOvLGVOIhs`\8t!S)yx 0wG]LYn3  XȤ\?)a;OD,LY2^NT\Ϩ^5fdxHyŵHc@Э?/ىqƩ|us!,xU " fMt KZHHFR82;R E\ٯaGJʋ)C!}EoU[DFy'VZ̓]t- xζ!Tj:}z 7 >lܡz+wA_XMnHv6%+jHv9.R^z1+KK00*ǘ 2̩Ǔq0O#AkGjF ll&xOp';S[ 78u؊f~=j E㬦|˅ D JD#W Ti“k]v /X!qaI&WM7F*4dQ*A|6'e*[*tb\ t&LLZ%_uS>O3OqäwH$s6`1(;3;5Yem5ZWEMDOC²A̎4$:2mп͒:~Zp4T5Y]@\"8?qGϖ]'!qT[!Kjj~-[2o<#SMXclyQw_;uZcgݿ5051 v,٭&H+0Aj|ցda TAvEFԣB~UDlqzA5W8 _&N5bxAd!S5ɯMmY"@WVSXU#i@c9۶V efګ`v/G! gRrEI5W5QG G?Ns񃲃AL2xWQLͅ9DʰFo| ;&O}~V, `I~=GI7 Jɱ3 _(-Xa}6ɪc 7eM: 1C;mWdG]^jD^8<J1qrͭl)`y޺PA]ˏ\DC4>up֠pJ0aTPg} 5$\yO*S(eOa՜ Mj}'{vBY֦<' %)?5 DTSXipi~b8Uj4, 1k2MJ럨<L*-5u'4W9 _f r,K .fPRYJiL[мQ"z N|[_ P Krg('뷲}A-!W9/TL)_yvVǵuB+C wc N32o\ı #|Lu= ݢYƠa#la? 0r- .5PPw*q_?Γ7vP&krvcsE.q-&*X`‚NEcP_AW,;ng$؋hH ?[xNEQ5ʃ]Ce;Vq@M~W+ˏ)7m40d>!#)bbX:u؁߇"dh4Ty,J'^R SgXJW{ %XZHڡá͓`//Lyu ؚj +X# x}gme褼 ]Qp;D6KŠ&;0 ޽3!sHhV\ahQ5ȎdKם0 orߐviȰj 7KFjj̓_%pPw|ƶ~ ­8 lVl[1%41_Q=}]oւ^$̕:A ΙvrIy @*虞oi_0m$)P0a?Du ^)"|h)8̭c()Z -a:f:Ͱ.W;jCK Xn7H-qj D O><ƍ߲-Q('IoGQ;ָV;!7<*n .pUry`=nH4 m`:EՁ]uq[mx{HlLwu#$zIB*)ɏ[ļ)?[Jd.='Q#=G0Q1a' ;mc0!2k8ýΩ&t*B'*&3,]i+ NZdUyԱAY^ F k1% *u{*j6-_h~jP#:vơ+tU2"[Gem.oG(?\ryaX;W9io=JP:Q^+B$g+>vT;?69:G4ٵV?ιHNscϋ.h& 'on7 8Ũxԫv=Rc+WBʤ^.OgE3zaR&N Rp;uf6iH5 d֟2 =ookQ,ɂn77;tM #Ɖ_ⵎ_&=zW AQK |,5%:/D hmT_17a{.H)P'?,Nx4߸-I4)H54Ue$ި"glq{7 G۟R?ǚ'+סT}\ %܊w16oo&s 9 |(iX)Hȑ[8p`~5-:GA;,$Red ߎyrf nCn_O![v[#uQT )|74dvӶt['h C,^"׬9x A䖪F]ҭjf$9gwnM=4"n`y:ػHV a $GI_ر.'@æ߱_IwLZ͎ԉ"{{=cNżŷ}w# ޱVpci-H זgjlU')x٥٥0tm2*͘, yT_}>ԗe[5P[~oB).t_Rp.Kv[8.=AХf$+J&̮,#,*km]xi@q^UcxO<%Xs9 5&{55;xOْ 0O}>ӏ*q2uC\ߘ"~*5Z|hx Ȇ%uݦ*2?NbB*$%dVgR'.ʺyUi|ZmHZlX!;!X3jFaY01;Q;CיI*wv6FZMs]AYz"ʪϏ ȯcbϭRF#QNj7A(Z? AߘXsWl;Lfֲ1-8بIxC֚M"0+-Fj)1)/wXL5 3^^PX{`tVar\%9{,j-V+MhyV*vi/j´5y~ -$#!٬mȻќ^P@[7&~ d_|@y!7q8yZ N0t0%)Hm!h! Mve3뾡 gY`:PEz֣w@]VwjGC>'G "K+1}>,~}(,>'o?+TsüJYo|TИńK7!F^? 'Pdk`<'4nQS獫 rlA ٚcޱ?V&*I8Oy&z"A0Gph[^ZU PM!mSq1Rn"hu]ꏒ52R ~a mc<lDpM@D&X אY):#`ŊDMW;z71A :n8!Q_eM)7.F.n`D"|x `$;.Rm.*a3 swTyy#-@|P@?<1 hAtm%ouwtryUP˒Z[ 5i]=92!@lذ1-j^J{Kt3`+PAQNܬDo[vE7)-l2MT%S6BI+n2GYcmu,w /·"U! 5*DUlB?5&+rŋ~A*ıH2&ޗ$u:(t:}\\ylKYM]1)',ߢ0d:ƩCC7K "@,I MU%5M3f#;-B'(^{ g'bVZ8$>lbkjNlw'5ĵx*:X$6+;$oL\":/}Әi `Vտ̗ZϝpsŃOHuDV< 7xQ{efb:p| [L#ho[.Wx$cb\X-V hBX 8]\^D[2Y:uȉ$Wg` D}r'ؠ5bkDyDŽoV^e꿚{L0|Hxj%t}Gv!fն_; {fMStM Xcsf@|}l!1 *dئU]~5a+ &$ps7a}m;VGI,41ciJ=\R;0ˆ wlf=HuO %jxh6ߒ3gJ0|Y!H* -!ެB_LGٞ:a^IC#:R]fy& IR2X1 Ԑ: ;; 1[v +Nx%%ʊOqMyVUwJKiՑǝDjzbԺRtz >` AZ~=QI_`5rfh<^>hS6{Aʁ_$`+4h@3.XՆ?+N&SBgꯌnvy`pQIKٱ -5)~&YS;ʘ"h O º*b"/a d~f 5JM#t"3m+:˹\rS#dX5Ïr$xZ;r?HNɧw )GsV?$AY4Òb"S!M!ĢaO9%dDrsK ?* !' zQ0j{lme-:ε{!ZWpA3m6pS]!%顊jȁQ ZAnY; ߍ@BA1?Yzisje)'YI8[ͧOdYu埙*hf;yw>d (ZtVY\.==jl62{N|ĚKǢ}'K/afmJ4t1K"uC?h6`NKf{5>x [foq>AOkjگxKC*nҪɅpⰗ v+?&C03 b%mh+}4?/6Q@̆ 5Fjb~|,` kxfO[q.iYSp/IauW+аF?C x!:ۥHd-;x+ 284ZsӲLN8tlWirYPʶcj'N+)_BV yfEfzșsd!MIsBx\jAI:'ו!A'M(9rSvוhÂQtO81;eJvX'08`ZdYovsQ7Q@ 2~nM?z#wkc9 U_}~ڞ uܻOljh;m'r>Q NU8a7( *}^-"q'FjU@1OY Gg<ͷ jl4` ˖&VgꙐ2w@/* /eT )o& !cf46_"01zL`2M6IuT<~;y.v+6x$=lB]VS'8 乕9yK5A :=(%~.m V3f& dRdwpdW%mFmS5B9_7u)7g9)l2:}i5fDDl㪲_WߍolW&3reMaVԻr5˧qISG:U3jA#Jk:R飙BEzfLt`]6^{ЁMMoQr[F ?Z=w& ͡#>m֟]f vW5piz=>ˣC@y'#j p"Ɩk,Dܖ.j-,%y")` "͎Pf}V_YMwd5b|l*"_ݩС>'&~ t<|>Dwɡ=6prbm`-U!f2VhV-eFVS@sȭ'= QZ*6NbIL޵2SiAwUmKLƫ4! U$! }jZ.eF{^HPa.0*?/`m~3<߭/ZUܳ&*BQSV #~;q[EcW.Tن+d4w-W}2|pf&mo =nL஌m]deK_2[Yۨ‹uڌZ"dtXx˯Tkp k3S79Re4\qC.",o]R` 9_aEʰ+(qw %kEJ3u AhT X 01 ɫVN_۴GA)2(^@^RF4NS\Bi!E2Ap7-dDK9b PZ'*-cnG#0"XMIP]*/fͷUƍ L*/9p ,s%ﺝڈZZl/;rL{ݓSf't譊} xظ ny͖\粵f'w[ZѣHKͦ8CtZC9EJc6= (_/I:j˖ɀ*y]Rۊy?n+f(gQoƠz5u3x}$bj\R!xTƅmxW73ѽSvTrPNQ}L-P9žrqDl/VEȳ{ß1?:>DS~/?ull=.8BH#݂zi@sv. wfugLZEfCL * +$4$7DݫihFR[NvؿY"$sXZ<ތvbRtbq'.yW|'et]f%p!1" RlwӃc cL"J $gIs09G*t/b-n"T;=oF%Hpss3BM'˫qRX@2-. ɤILF.#N 1|&}+̔MPx$н6>?0 ( " a>;6ubMRsInZ|x iᖽ!P9WP!XF+};9tAfC5-p'tEz:I'4B3Xh ܣ[6)!$G"?tXI_-Zgd ~ƶߖ_6\;@ŝ1/&n9ciy v[-̀=)˱XcHPeU%Us@aס&m5>VVƒw *+yfg7챟vE|#}egzќ/e@)Uɦ0cwgf@]_hpzZo>kz`3gPݮB\"?0y@;k=h|wclqL YJcʓ-q3o8FZe#/-WteS=7nZ`O[85ki,Eɒ Pi㞲pUwˋ\HPALcʝڨ];w g5Lv؉+ qA"!1%*w"Аe*C"x|,dba6 yH*C .=-"$I9ZbBwk>(5p1.ti3]6۲2{k`Wl)Z9 /.qGz%ƿX! !)*D5Ȫ^[T}'(Nq>W7$*$uۓ. tl-nNF_"pvmI ^ wxg&~ƥr*bLbbIloa-jP svE \3D9E ƌ@Ly_bX]TYp%^VǢ ҂#2*nk%;v֦ bapp\p[5Pб(:{RYH ]@g& Sטkj+Y܋${|j îJקZ)ex1{A'^$@ #Ai*Ȝ՛K$hF~g$e`Uuvm?as?@zHǘx~P)|Te֓soFET `pc}"SvCPL4): L msWSlf]odz6\î_ }vyY[-$fK%hʹ[(..zJ3)SrU'^3_ӺUYE]w.&Rԓ oNr訳-w=?c; 8 )c6 K{ҽ; n1(t7bF)( ~ B*+ 9e. Ð]%&/x],V6z_2͓2,1l_J<7, L#;d0)\ϕ2BOB;.:;#bQ,0B3rYto Z- H~IAu[?QB7ʔ{>L/хtkJEڄ E(K--"!5#~45t5~@ 86$ u6PT"NAZȢT\9QiV4#z`rWv-w I]ƽa]VM9yF*Ho8RɣǛ[S)uv !9C5zpBܒpx9Y3O)J9ibϤwFي^WӎzƬ mb&pUw*Մ1` ZpE]cqAa6O~Ci6c>wv=pËvS,Fsm)@+8ná̱ fx?a6?mVH;D%o^+ߵ-# ƠvWrZ_PMf[N8sv9>iog%!,Q*=Z4bs"?]|ddZrBG%^YF G§i{ʀ& GXc0E {fU as`e;bfe3[|jd]}~vXvAƱrNdWձ fOF~JD- AFȺ'=m1ka>X5@>nv4y?E nJhf&&O) }ꍷi!x}˙H+&yVRCCb|BkpC7vb *jR sDv V|LTS..x7/I ɷXk Ui$Z/aLYaТM5r2>+G,1GGPY:R%=Ocm#tUS b 5RIE~\xIRRZR?5~s{K XLVj9[xt|{T%B%PS(?#vt0ٝ޺xֺȆ p`섆.'&I2,ϢVۺSԃ6! ,/TQ Ǝ#R rk^5b| Br2LSuchJn: Ić&;žA8͗tjx=ss\xBoǚ?kSl EP|mʍ.U'iϑ?X{KԙCd߬/ QaH>X* gMJAFpn ($'X+E> 9.1Pn _ttxBЄzWx6 /Y]>_/JNiG+Üa{ (gigȇl]"Lrn?- _a0 #3j(|stWЦ}wᠤc 'xvir2<Ղ9e%z8+7]ۧ(udp$+f|Iq g! g3`#WH@ol|p =7q|K|(M)H`5]@R[BObzA|_bBa2my%uh5zٞTDm|yaDdy=6}VK͖ M 1TŝSdM|n_s1jDS9qY9WcXcLB.[ @!qwͳ"ٳ68`Z/͢B#ytHpo/G穘XS.s`MäڽpvIOT)r:)F,MGyd NbslgXް3BJy6WZ4tvc0n5|ˢ\I_|,[(cMyEja!&PmW6SxG~GۗMePJ 30hN%f2e6MĽO 2ƳO_CP )v@?o|3@!s!a27/+zGlj C͸ՄmDMT`0ĥzr}/Ko}22}؊S";֫w5 #w1e0ځv3 $0K| KQ9ð[R3 hc}\cy^ 8|JeTkwy5(;c{Ts^b<蚁ouH$H{NE%`̥H(EE,Do@/Ȕ[R-h'= :U4y]Q65Qܟ{Pi&Mh}rMյ M&mGÑu}bahj9H(Xyg=\ {\4zT3U yЈ?f`q@=inEBUXL3)͋-t7`fc X /gcAQEdCl 1>洡o iJQCW$W:ߘ hV-&H L9aUgo,?se5m{8  ko?G?u'S&+Y,IyG:Jf:>T xRaw鍕ʄ:n<̒@M9|Q vWvh7'?v?([KmU͗ (0:|*vp`qcw(S`MU7#3#$$ܐz%$5=ְB(;bUjE+?~f}Ov ҥN1fE ·~p:I^e29ԋ́hSiکhltSgGwGZ/ r OGeyiw' AT2Wh좩| pFY02K6Xa&PJ /p K dc=e k+J?4L*1x9? YMc<)Ҵ4T(!Hji`5:FZ@3Si3DU۰{F>"bt 9ug,}aP|O ބ:*bl)?Y )f k]Ckef~+kzxs\ԅފ8Qo- ~Jl]03ƃl?ۥo^9+#.IIibzps;3{b4 fUKYbV>*KD3 "KOTxo+aL=3}oeN B?IX4beIfؘeOT kyJB,niib~ }@KI;5cueUMq"_%DA׏qѫR, v[A?s"tI` ]tOV4^aZ aֲ -QPKxgU֝n>-Hԍ1iMbJRxp?e"i2 uW C!'ÿyH+e43#%nu WcB%~%:9z) .ܗV2>m`BNQ7kPz{4kԂdf2>' STϥ#WSZf糵c˪*:Fv$chPJ-Q:>,Q**j Nagap'?b P~Q1SaA"!Ϻ8 ^MAKBmUu$#w2@cIJCQVxH'$ K 6x_'7̌r8nRcygѻ3eAdefI* nLTX){;H閐e,7$]aMTSh>c((-8Ng T }H_+Nt8Vu!; R>DϺ4 M 7uo1`LA lpkS28ClMdqidf8'ҶQHS'1ͥTv2ުku2c5(-ه`)D|ɓNMX:/6h?乼,cRRDC+!9?;m9x\.& $~fяbfxOCHGSKaAFy8@Vu^yA一\/ .\ޖ\(.].5%1Ǖa_=>O3<;[peY qqPdCw>,xFy~e{ȌXp{-3lM8e3L M;!>{͇`C< w n+&oHNP֟1X_ qhBlK:'i7; =-^Jn6 bګߡ-3 {uG#qdrDN'Q_<:P3gygwM "G ';;C?=kd"pYҏlf\d$0i~k~xa[⿳e߆3ǎ È 3n'_˩ۺJNb9Bbz С*z+BQL \Aj8Ee 3R ĩc{\<:vO/_;WJކ~.daXX%0Avo99*TXCZH R ըadKC5_>r콶xWa$YƗ/@6&B ,LP#KdIעẖPix.ۇݤH^E3R;cႧ34hwߺE/sLdD@1<ґ^+xEm(u.u:4NVe֘sЇ! ,#f&>3_gD7 lC5K[e e/ q|맂:%8Dm-%a(V!!D9h#dEfq+:?v!* o&@ϳD@C%hE&6P W.j$%@' M{/9kCi?znXQC,w;!8bzL,gt-\ϩ_ 9Dm_J*[tA_p33$c q|13DE't ˧~DK=%l\txr/KIq-}A]?X{ 3B\z2eDltu -!/o*9$s<:Dٳӡ9*? ndLEӎo!'tҝ#! EJV?ia͋‘2(cR ^CebJLzp8[{Ib$.ӷz^@iE{6R]!)ؠ5݋n@}N M(4dd/N~{SnodG].`6qdt'O{yD{0ޟQ"pר)qf8qYp];,gdߏg쳵i <#A paNb @U>t n
GlZp;D@_XV$sܙ Rc9ťPQn˿ [F0 ύ"va്2z_1c Bm.4VK0}n} дi8;ɹyc|z|y?#0"æD-.N<>)ې{J>c.t+\)7pABUcF&_ji_['Ϥ0Jt 0Rx| q_zuC)CEHe;6Ɩ-&.K.'oםi{^sRGJI).%R`/á.G%H{풄Z-R[!QILz%!jťTȎ,NvB5%wd|Uܨ*U)͠(N^$c&]eR^=Z$plP#8=aSB ]ob ӖZFc~b.3 C9ja5pxÿnЏ"N65ET_wf (;4S5'tAL/ĎWLTy)Uˉݺ Oh8Lܶ9[ R@؎IHmdX{*@J$brue3PܳJ rSuc,\ $. %C(*)F֓F\5> 0?%~N E*~b YΏNIGbVg9ެ= ~ #D6)Ҷ8%h WA3xW {fu{ H8X|E~M:>`wҵ1RGWԾ)9fYLXAXV[K}c 8SDuBjY XGɉEいg[b *8 |rxNuCxZl{nH3' o9klH5@BPUĊӇ6Ksåחldڠ\tw0v}hk"ōZdM:QCJ[L=KhFck`7,Uh4 Ibj.,?ס)oEzJuD<([^RV=`8X3u 1066߇&`o=RգDRP?loyNXUC LؚS*rԉSgP]U C 6v>ۉk~{ 'P9|N1={ ;UWD6Bvc\5d,|2isLx+A;a9 ݁~ӮnVO8. _1+24e\<.TIUD%mtT:GQ& \;uk i ;} n !(lKUklqv SbښQ#(W##dytIG|[pz6QNsI.L@\i=wXuVy 61DPFi᠅+n BTS2aXuyd_ gp!!6;"V[Ɇ_K9CĽ[!r8-bjBu!H%08> me#3{}3):>eO,$|0dvΣ{+>`'EQPNR ַ'tdxv ľ?{|ᎧTfJC`m+fp)fj k12omrn~4{B>} );fuqT=xIaWɍ|g!*#z\KM?2fZ}z \z^5VsB? +T]Ϣ*n]O/&VkFxRWw{u{#:]ke&]DG-C  KF=t46lOdQXE/e\br9_K~cU~F"W׸ҙ tJl*O\ahzvٷ,nWO'|5~D5%D+3*OJbb$/i}eQ*7H[1̬(.ګNƀF=Mzۃ:m4ua%eH-?22ڙVoeZI=1]94H[A)hI/ԭɲ$9jd1c:r P%G>*Nݜ TQùnpIzwH@`p1cFGPGOX@ #Ƭߖ&_ꍬGc9$~*pL;[c\;!DFjZ=ƚK}|7_{f|xy_ۋGʬQ'uojMCrt_ *[ 'ky'fV{M@!zpcP:!'Ŏ o6w N,eǸ YJƻClzM6b3R6V*oF Sh>V P鳅5.RV¼lTXS*q`qJ;UvpF(5e_EQݝ\DZR.elB" ‰SWxŢj&FB9@Xr.%{64+;UI >{&gEQdE<gH?/A㶬o!PGr*d&KA Vt_ (k#A߲\\W:yc>$; 6 ' %tz+GIatjw/ꇉp0TX]s~-_4b?_SU?X97z8Q٭ʲ^e+qn\lUk}d]Bp=eK{TЊV*gD@?G "Xo@jLZWaj9Lpcz*767ҋ&W !/0"V1WE^gt)#$hPQ>Ѹj$ڰRF{w :EP cQ>*VŎݤ9 {wS OohaAGoAIcD{^^I#5| '' j6Ѐٓ[iOTmuX'4Dn+At~B8kkQ!v_>^ΩnPIꧾT) rq/l۬P(9KNxR+3(ΗV~ ٧MH xTV7m7#Q l7ժR:9"+\`)&d/ðjbO>e[ny(~tC7wґtVxKD XV"Kֶi)&”S JCqӠFa[PdΔ8V '#?ߴAv\=*XFf)_ g99Xuq^a!i!X?E™-V&8V/|f,J78*,"z [M5z钔tseG 69 4 guH3br]_㛗(3INSDKKS2Ѵ,6"u4F14t'9gs囙|E.xrv]٦P)hx-<t $K$ tſCrt-#4~{ZV'ks~JJL+tN+HMDeTe%W:}`? Qnsa|@uu tnd؀UA6@omˋ,r!<-0i䔒Sԝ.v SGld,Z Ӥ~&ϗfjN6ӻI:~;j)C4F/ 5ߦ ,!Q1ŏēᆡ+]I>e7=)rm <_P"J7@Cl7*v^EvG`qv`l]-(#Ȩ%(,t4NV{b{1Yrv )sR"tz4J2YO\4/]jpah~[58*uaPI2]!HHznU;eB ?)rUrw> GSW4dMǯd{mb駱A/ѷlk&h nbɥ<$"`*]j4fR=H@.V/- uĔH/s>dl7ު;a#WE8  >UXv,a">g%% lP:,f ˽ѯh+YvC Ba ssT I!TtML>ѠpDU|i[o(_y44FS4z ƍb#A'qMkO 'h qTzR p{%Pp锐WFcI#N*Wo 1V-q#e'Uwgpq3+ƣmIGxARh<NQɬG!},eㅧ~m5l2T* Ibn5匹! ! 8]I-\^4-*wallc"% 4ȵƶa O42`Q$JVrh+;}^ 7%ZcH rxt픹+ I5׫ 4Va61{f z"n*P"bzoC1٣cYj66e1<&YTa[W m/K;d]is+^C[XjoFOV;ǚlF-usXύW^ >螷| oxH&//WⳕP{_>aPr29YnZzL h>(3?<+SvkxBX u/ ILĩ%XA8)M `C0`u;1Rwʀ`z2H+%4bzxZz@{[@\3,ޱο!H..pW(G#W#.%).ac[k)-}b=MZ [6z9wtvRك42B#e9lU:Qr`F8 MĄe-Y-XxsJT~-pKX"'8J?FKa&]9fK>n8*^3 3}&~P:uYջ ?<8|1_`ϫ38y_ > w<6h2ofE@u2G%C룅=-?|8- w/*ŕa5ZA70=j @ow <˽'b-@Zq] 6gSWQL|]e@b8 k8!BPLPezRct.RN0. +[p= 2C ;&n= C@MN N#&-UJh,L_1jmsۍ9d<_<ĥ9ԽT?ãE[lTM~E2w9OՐa-g!],& $ErQd1-(L,hFdQ; ?Q&>}KXuv>K^҇) # 8'jp Fl6y^0t9ڨP"U5#/"q_$Vm0kNLj!s2n f$LyN>&F, efჍo$}}#dj)qwbUB@-B~h*>+c,?30#Й샺#TϏO=YZBRCsK> MY$ _Ҙv`vI[d$Gi^b#r.Rѵo 4tug0mܟ؂204Q^#N#VjŎ[6`44>|*z_fb6T4`ZvXX S2}۲(h)%]ݞ6ɑrg /2dmMZ]a_C쌷ިqۙcs:~L& (<A,SK( dGGۺ'k\c$\A\nlʉ+E|?gT !jc?F; n95Lw`K ~5ŧ*eبmfPoٗFÉ{GWq&گu5&UrM lAbv GNjd9DؽXa(fvZc}P]L6@&D/y#l\=5G/L=n#WH0^/ˏL4;'Eu<;MKVMsjQI:g9 {xAqG$A9O\SIb혲k ŝzft0{Е?W[1GIwDbGZױEMIuoМrw'*hkwOu=74N%õb仗ETi+jrW Xgv~3@?,4v`ML ^] ?) eM1XSD{V΀݇m ,$ }@[vWŊ"jBy̔$ENӋFN\ .RafZs:ao"{K/&!/ޣ'qMmJ^ &BORNɫ0@us֞+Win "έ1t⣤龹%aT:PQR_KQVH k- Cj޼;F-cElz/qd),˧C|XL #\ uI|PK "yP)(S/i'd֚7tiǀʣфr9A'jYoa?J FNs-%a}3Bߩ$gFEצ$n7}V1]؀&pl΀FT^TbXwUFH姊/n H qɯ MYJdkO})=EfJ_#cUo%k:'@$z;\m[$@ 9A@B#3Tf"ĒA>?޻}~`n<!TrSBEcc}FoKỷ;&͍.!M |G벐aOGGq K棢5^WZ순BJC*k氇J B\kZO :%6qG]&'@ӣ}j$\V-Q6rt$k|MַV$n;5Cė|LS Q5 R.Dƀ=tzag Wh-t6 Rk1(ά85.t%*(@ Zs-N@ vW߈(P*%Piˇ0fDj'T_h^ Z\%bn&T ]ܫ 6b'H4 jBXM+7ݙ"9H~4T~R*MzuyB`HlGo` j#pHUl?rߓP v:wngxf$滯4Fomۘb{'|1Y= =j=4○` Κ^Kp6(ji,/uvi럧q! .d_}U6{Pȑb/=✱|q Aޠ ?+YbV^fW[5P+САZ470CI:HlR{&A:Br {w_fF,_Ӎ>-DN 5 FdZSWX[\Dxms0[M]^B`%5y KmG6$̓o"oә'Tx`) ǗýӵVw,Qf߱-~cx QHҊE?#{߼҆cHO§w`*i{NM )9TH`E(٥钝& YTvE_YeUSklA.Q')*ꡊ=bO' 5@,?sޛxO@ˤ`ֹdkH?O6aOon9AJ^{ sK.xϥc̗<,Km"{#rhū9NrO4qyZ#q7سz]k`6QNF2 8Kt[ϚPotHEDYYpfqCaR)z oy-Qy͙cᑯM_hTRYY8ƝG3ІTv$`b ϛ<4q8I v &=& Hp,F%o$8/U'z\LM Ϭll ?%F;!2\5*n3% ʖ %$=)r̦H\|gҴ b-HS:v-fcHOʣyM@7E{βAmYzD9=> &V! $ 4,dyP5pAg LVܢGW В>ܩN.FSCO^lðxps-VdPn8= S+W85M^whVxp%y=T(g6ښrdX&fH-+4Fy>0g١rr ɡv;(zI۲+*!߱q 36u#hM O@^_-hhٖv &2'@. )gwe`ZzUmIzO0<{3fb*uTTDўDG}QW҂} 2z`j4U l%z#@Ɉ\_׃U+6TkrmJʆ5v#\kA<2Rܑ"?h|ǝEIJ9P٦#&*%׆ch`a՟<P夗|iBo8\7P6/Jo6E%ALBr6O0 H>żJ&e kʫ46 xwRS?:ο:N62W] ETAp?3x*3;+5'̠WϷu^XW屢~ₔ$g9FD*ry?G2~@GU8&_SѴRQ̇Xأ$<5u9U^`ՆCڬH+z,(4iW> Г-gu'=$P˴u,BoU!1GſDPP@NG g>W2{HM`8 Ao0! bL!:mM x9B(ɣ?mR](+S zT)K2m34VOuf7p_[yyQE4㔧op8q䶜XqrH5Io&ǏkĵX9!AGsx8f%^ǏS^q$x2NtM;PSƻL-AYD3EI,84c0L](sn۬$ ufp}'}z&Q s*}{0Ђe߻ae[._bd ҂ -=XIrL)xiK9V.tu"JT9TȀcfi4[ pv- sEHsZރJveUk.(99MRɃ$y}<|)Fp $+|6qVk"= ϑ.ESƔ!S 1])FϦS-̜ӉvL>.d]p!fπT5ӯ,s˻ek!eGQ}!o # dZBk>0f#ͱ<5Zކp9+ߤuM4 5U կ :XUL!tǟD b%A%$j)l7 | CUO2L~蕁R接e"&YlsCՒW }L%g$)FhHˎ'Z…\ZK{ǯBYSAPe0GKLfv}(:8<LW):V/ wgܤhpZEU~#n4r1&-58 `E^v04[7A-*Wb3K%吝|.]B:J^~+\}og Uo? g>ˏ@%dp9O;_ѡ6?H+z(a@l3gF<ʙ s17JlX!&<c:١[ֳ"Nz͎oɺ-=@7pq&w>SWvŧDUi 4N9 />o`(6q0i.ĬvP$mXY|E")G1[ &0517&oWyKl-{YfNR׌6Uz_XBYo.M5Gu9cVR/.v\~2]Ԋ9VREӿDXd֤)URtQ7Qü8s؆УW4X_͞r┹Dڃ^UQ`T?NR#\k #&~ZEjp}iƀeNMjn0I?pHɃJ+@4ˆ{쳸iQvT'8?-8|d>5srdu!=ѕ% A{d%h׷;G1k7b~ݒk;[ wh\+o *$w!õXDH#xXۧqrĹtMqۿQˇKG#0,NϾ1F0ӊ3uYah(*&"9DXjGG5|>^q"A8M[_T܊`e16(J/zؒIS- M4qΗHԪUW@' x:=7F驘kw@ƴp|՚J :jƱWͧ+g>̢,^@Wo@O[ kH+t[h5Ûj0bϤQ5c[mkPia_>2xF_Y+ ]㹗mPy;WO>(L`zN{)T[3~8!3FC^&WSeuJ(mP6Kiϡ?bthM:6)ҺB0 hR~ֻra 0Xi[$|R@8X-z) BkE]^>YnFQ7\YoJ6 jifwX6>R+ѧQlG(YW_|[ /&KI.߾UA"RB=9g0 "X)r7i߫#K#p8?yS^Yo^x)ZTV-vR4..?Fc嗤rS^ʦimB/'wnՖG=+,ʔLL+Y/\|LJZ/CkV7{ sO{wg MGqzA`?l?vk*$ _|/6 Xx!>y֎JmkÄG6-}㈷; #<%=Tޑ j[hɰH І^x7_~;L-{[r_+>la+ݾс@{=C_:L> ~"Pư#K"6srV%+7:2գʎ\Ry=_I"^|Jh-boI¥dO 5Qx\3gM^#TSj,6@6R'?o?uc& aIutK_xh`bN ;V&J:ŽY^EVWxZܞg>CD cؙ4{wIsD $Iv2-ml,ܐϯҮj0pRD:ZU?A33u9V$Ԛ mvi@h>P."B˽XTC="pndžiݜAhJ, M $;=J+Tu vL(#z KnѶîr!4UoЃnJ7ښHbӕfv;a/zg{&TiRe뛎Npуܗp%sޮT#9%9geaTAU:н2~&$8 [#R/hdHiKj`OWÐoͷ`LeR[y.D4zt 5)KOiJKso-kͫӎ'x o[&'$Ir.??F0%r2jư1tdd7>< ͫR>Am%׎v~Uw~ĄƟ3'ZK`l3NBޡkV:9~qf3P0;!B8LF ߚTϕɝA`֓ O5B\\/zQukId#t,‹5z&F7wv̲859.PXTy-^(KZD/ScjLpkFjJ |:>sʺ%οvNȬvPMiOUfb/w0?/Ή~ L8P0Qe#zagZaf$%̅eG{ӧ/}uiQƌǠ0칧+HQdk(aJf%w$A,tAR㙔BXl!.(!xn$8>|!ADC&{a2;05KtI:8S0tb#OZo[muLiX8.tGp8B혍^7>Nϔq^篏 7{"BHWTʇQ*/g "gN0ӥ\?LnHɱ[x0ǫyl2~_\p_B7^w V)~LJTEգ0MbDxiިU vJ^*{zT8!A"$Ň53Wnh+:~ ,Q| IS7 .lrMml3 ļS.mL/?Oq&ۑr"Ӹ5f*JN5K Ҝq'kŮ%^. OvpDp3,VE2ayLC qr q䜏 LlY"1qr|ǧ|jbɥp lmxRwP1u/:(_">*yU.pQy&ގ(1je0 dbzÝjҺ*lښ#˰. F g''vA$uEj5KS%5TX2&gP/9024GD4ϴҷOd(hWz_-_v9 ZN|$zwK wA*` /K4@OY>20 }ǭ""~önX+o3p,ap^̬q<8ޕêC'tm2nf'j2:>ĿQ5/,Y\j:^ÏpDr&}[,ii8q!/+hzT">4Zh\4H9:;qZx%Ebnd{\b e\S=޳@=x?z"<ްx,4͒ύ4| 9x:&HFN93`kl+sZ(2*;oԉX:m*Rпj>al\סq〠raC1 礙ޣ*2F_<zȗi_}x.[++J|vGu~5R)Fsl΋kMŠ&7sԯ/.Δd5j3@̹n˜6%rZe m:nSZ,5!=0ފ-(o[4~e&n LaqӁ#R [PfE lLOD)BuzO}=CߐCEIӎEg^|(}ph<o%{7pd(dLNx ߟy1 {|d"\Vq`%n^KeZ.?ذ^5R.i4HLRl(eEcƑ3A#1GN ^} R޴,1 %=~|G΍F ~ }&DZ A$8fɗ);x.B="۲E]\ih5!ޅ#SmU 'i<[MrԻ u )Y+ U4?n,Ub!> {#_2Mm*:kZsೠ8(^FwD@&;pq~&znc;?UWLfXb=`J G9`'qnN!]r0ǫsY j!+(It*W8aΦU5X꾃\URK)kG;筧KuL$T'΄"gkԑwSn-=Ut>g-iÚbVrni$ri9 ҅U2E! \ nYPQbHm{ @yӾQLʻH;b8aW˖jU&]SM5TRc0"]CN8@?huGnͬre7sD"@!_!<4ż`xwv-6 25 N_^3(g}oaAq~~gDJbf[qqV]C3Q}DuYN N oTVJXqk>`q ;3r?S,Y˹$NObCb9x0䗟ڶڏn2t+7ޒ곗f,:`~H[KZOPOL)fQ|:}uWC[P,c(+Uf-inHfbǓ}oB< gZ,o}_|)C qvZ闑z!ⱝC'X- ::~20t Rz=ᨖThǃ:CK]!ufmXrM" [``wDK.E]Pi!-knc*ɝ9-01e9iͮW;֐%ī%x}ؗ"e7t uZ:#"ើc]|(-~ dz.p,oIb+`2;]~D&TLOmFrP@`n}$iPӝYc2} # 똩Q(RCnkWkb/~>`hA Ao65A)H*լ'֭YQLς\'=crͪ)9#.#W7EgMߑ6URQ(Nj}*\.=4Tg-Jn4":Ii)7ʼG| 0zӾ6W}kETQsHC`wth'wr/PnNXv{ye(mBpi'03]Z 9򏞥Ɯj37rQ>s5)`ngd۶!mDz*w5 ]P- Wo'0!ɲÂ8?7Rw +n|"fr4D&5_Do< flמPQȲ=4Ec`?YYП︈DxkqSp ׆IfOjv x}^:rujGቲBQ7wbNpe`(tS'M5+$$l.^E& )V Y\o6(@xdWEΎN~QJP` Wc4%. {< FU%?m E}nx6a.Ksl'D*٘eYR:R8Q}mASAy3*ѷ]`B'4bl/f3_8"LoBeey0u n -bͧxr%xVS?C~aP!iީJީ@˓>Bn xc‹z6!ϛukDnƝRQ6MV҃wWjVmUˊߒ+Fhӎ_f8xхGmJ鍊54{ Lo͛#r0}PyR( 45b Z /`s'V؀/U!oK.=!Ѫ=vZū֠Hse޶`?{>hC.ˌFԽt tL_Ɇw`~'+Ǔ %gz/8B6ӲAp,0_-D]Z^U!mOo#EZx.E>ANT?9UFF"Q1 =&VczƝFaHC `R~wmޯo͜Hc%e{|w菒NEJ鸕PKWi`%nehӅfCFOA*{>#0HzQM9b܊&uk턇929ϐI[U+#ŅoS r{~Gi=M!מ&X3DZnwoXx=~xwFrUo" Qhj ~W}Orm@x[-7-.3b% ˈ[ J"@Rm]u/ilRvYͧ qvv Wd#\Udp/~J$^Y b̼`VՏ4"z3=/WOp%NJ@DuΣd8,h 1j<wy5L8loZqiĺNB+Q“AT{/o4؟*}D/WRM+GA{;T;U/EОTLv0 5J4nuKƻi,߽K:.k(`lB Sz B۟ j il,*TvI0&Q Vv֪雊Pk&#U˔F2mRCBaݗy> )þIxLP [5lQ4Ezp-sY}28%*c)&6I4:bvP Fg6| $27a-G25 GOpƺA{uHd7Yߋ$xfFDcB}!޴"'3?:Z'MO_@K(˹ƭ l *%2ldƊK"%x݋gNЫ-~AV.(&zDrUXb% >wd&L]1рniŨꆒo,?sOh0Wg7`hcF.%T76 ҉<Z9EUS-nD^ + o= F)0D][tcfbA|}J;rؚz[` p; 2`:,|GqzBb^mߛ BDžzX6ci*0K_*EaQ`IhRɳo%xsU-~WUлgu|A|b@sM΃£| Y$G*W ^Xԛ,֕pWpvD[C%ȱ52֒e)<3bh 1RШsr+ƹy)Jsfsl)]EcYLG}Ù>x8!iRi[Gd%PLgȒ,|XO9Fsl{W.VXӣ0\.n"Ǔs3ޕc/M6K5$4s=ZKd|1~_/"$ڿ~!|-MߩQ& bhXUq~D,'<Ȉi䟬z _S' j$M2Ο2"ֲcB(^Tv0WyM< 3Bޏf[jTFLz(Q*޲2曦UaF\b9p%s/F:㻣k/Ev)⍌EOξU=o #oudJ/\t?Qs 0[$[pUGOC`K%6O7Ih4Sxs ;UNm ؗVhT>)-Ï[wœ4 ftuբŬt+R]w H@bIa"z>j!g&=$zрg=_$y4*y'8ޥ9Ɇ!v.Fs}=+0N{č Uj+S>aWpqJwf*xL9?eڭ c&$2x:ZFZH PZod%9* 1'5}f jߢgp/^jJ)T5mH?p~^!˲[r`~똤4QӴ͊|"R *cLisl֕\8܌;ˢ^Hp}' )5eV/̧qepHD:K[m>zaÞ9tf*M0< k\7-zEy92F$_VZh+p|z4pjrp`Z0ϥQU|Hrio/tkIBmdҸꖏ띹R|٭;򻉋5w_fFTx騅"AB|;<>Wk{ _1>\}!C8fM?ftrl)zr+hguRybh,%c"[a-A0ժLRG Q|yиy"ɒ( RFWZhGEA `Yr)E7*IoZ: Ac}“s按7"(ڈϖD% V-vI#p&8uaC>6}e(K6 O(3htJ',we*O: ~U#T5k.- )v}n? |V;`0u iv]ƌK/ev`F'P%Ͷ/Xg6A3>N+tfx>!nݟ`"g}W{1smL>&ď@b+KDQiU@se)P3e>8z?MoՆncwBvr>(Z!vst"Έ8D+|>9 pz33dQ#(iŌ?1ӫPMO&PZ@kCF#Ѽ z:7#46^_$̓*h~(1Jcaj >X|NӯC.枹$2mCꉜ[e)=-3DQiz{|q2M/SuX>y` #T Ud Yg?M(/ã3GF2~cnЕoEmj"zQ(E"Arrʮ_Z-@(d.uqEژcsUN,uvy bqGZKʋln֡I.¨@h#0l =˃{"jN^dXu@zuq*vnOv*$q/" 0{)7z壊-3P:X}ƉsUO.cVf1aw;nLԔ^ߞCDfq¨/頽o!dŒeFVm@ljmF淙yCұmvx 8=Yƈe'@B ۉLQ Ll8͕}%R}.FEIVʀQot#ƛj4k6:Nv W A{ iL׊:] 80 P۶MڌNsɋ-P`)aig@5/msִ97{j@gGak`ukKceQ~aMgJzRbc-~VҶMgJ1?,vZq!9Pr=0V88MBykX oO:ڹJ9AFc7]i"کz/I%zww@֟-"JLE!K}v(\*q88ަ|H3Q3rCkl ,Gz|m$699oK5ffYW,]UÌJOqK: sDi=T_Rd[i]x`q/ lz[@ٸƫYmŖW=KWH$\RʗZA1p1o0C-S*(] RK}sY6pgA^`0ŖxJ̸/Ry5 [tAq*k{v4ihÊ0T9gH]f_{qjLYv?Vm5= Nqk*|af^-;azʾI6@T cDnc_AKV'5co%nSA1ͮ|s:T< =/d&~]4w됷[@6LI\iU^.K!lzf]MI٦V |;XT2K-c:a)L82K><&`>GCR>t aY+^0aԽ(|v_TK/"g.ɚ3lR7e9 26BUwہ|ɩ{Ӑo2".g]O{Iq#-$SV "\,ܓ=Rg|` cC;Qz mHҹzݪ*_grc졶'h#J\ F--ʋ`p!fwk˜Oj&,5 D`I]XOr? [wrҼz 9-&@Y [gQwy,eץ]SVSFY Mqs((mKSɐa7kkOeHư&ݬh%!&Wayљp>?ut9nZ!+Apta>\ĩRBDQAʧeJe͑ڷaz. $i#ZT;,3KF7^:k0Ŭ+XA='6yYH⼬|b>Ah9,fqY}z/skx*Ө\-'%<%FUN32j6 :CBss9`@=wpltYo^36f , g)g`b7\_BW1zḎ i"D;*S0$c/[)`*]vcSN03*XIvIޒYA.GhcDǚ {:}1z!7z0J_6&QCv}GآΌl>+H  YquZFl=CIaVAo^HTvǀ~?H~nG2-Ǻ޾אplPuimb44=_zPf,xXj3Je כjViEE0^o AnU>9~E'DDGE,݃ƑΡf%la6#K7jɾ X㴱*KYXĺ#b(uV))<Ggw_14%}D"6}pjPlXU.4pjKgsǼh!N0v#+o}%PcEۦ rHiJn*•n1͉M9?x~h@@wVy:1c>(ǥWڐXȀSv=_}*Ć}&2u#UA 0bԯP?bHi wcSҺٖ_UݎhKRÀr#='4_?Ƞ?iW'c}#sDg;G>.<)k:yp@?ȭT;H%N'mbY0ɹ?PQhFV;YH_䀪(ir(ǖ?2hLUBSF(6QRlDrSJSYc͵s]ּ,/4}.਴.FĢZ(mJw[o 2t+޿/X sJ0!A-Dž 9 'V,/]NR"DeIoF&f"TEF=.X8w-' K)pa!7,4fEu"y1 !樨 *AYc@CacWmdzې_n0v<`w<.+nc B>^e,GY=Hd¬T&whQ  dJpe;~M(гKc<`WRnFZV"~GpMm^G։v ]?X(&oh{^I{`& (յ]vgƮCp _f/n ^Jt gc`nĘXmX,K(HA|~YR lPlVy ~]I0b.F" )24$sT(^1JHjzlvӛiUq6FK&(z9]cwQoaC9:r@5) /5 bVj[,>K(0qA}}P6[B^GHaPwa9;*nv'A\j#?,ݥ-Иbp-8lkN}뮘4@&Ξ¡ۇU=Vi wѻ{VQ zv+t@1&_ p[1G>q1.`JX~}4mgӣ3Bx%uMTdvP2ٞB\v`ĔYzYzb#KGfa׭繙];Uh5ksVU591<.!'?ôۿL3VAh&F7IWݘsaF`9 ԥWw`kt2b6uhf,%_L][nlB1.xsM?jT{"R}1`3 ۆE0V;^mX*u,Yd/3{e> ]:ylJ@po{8E *y5IGR?S4LbŞG rR"!SiϲWYi3(@%> dtDU*05Mk`UOgz!3ANƱлB!ajPȨD? 4*:*έ i!}z$L+!(~;xn)r:YhJiͩs:jUw&}*wc=n[(NӒ_ qLUN,X4 eyW y~ٱAxǞz|rMzrQ/Z2D2C$8s8 &:"QH(6l;LrhymC#"4Dr^Q9 e\)sRZn>3+ESЊ!ČEV+!TIDl==Q9qݤ.`/(~bu5_E}tMņN*})epOh! 㭉(L^*N݋ 7!٢{hߝytemvw6>5#)0E#j5.54tN@|23A3kCu9JO1jJoi2GxOLY/5qު!{;i$맒Y5)m{;hͬtwl%I2lOΛZ-ľ#Z^e׏yeX^in~ڠᒒǯ`5pW/>Xp ^;ɫ ⨨S}^QtI+IʯC|Nk4qA5Uk9b@|PϳzLv}E Mc302~>(DBbeŅRfs}pŒR1yA—o_?<&K3э81M/VZi/J:MaԴkKZ!t~ܜ%+HY 8F,6AcW1#lmh@זf&͢ݟ ~N']TB4-s4?同 /r5;يg1ƭ>Kv*`} Y"Pm=hˏIb;Q-d.Z5Z@zt0@n?][Py'^ |d{E$@qBF$q#b./|Ph{{Xߌ-n3%^4f>c12IN-ȷ9V)w9UDcJ6`^B|Nޗ<oȉVYb1m7 mvyD4XS4buhd F"J<3*_}OݑA٢qeآ,YА yw{ď?@Ej"l,S0L#O0`;X2dGF:H% Bb [Z|`cZ q1p?c sz/԰%(2;ޙ-cL5pw!Lyce'|ۭ2=.go%ll߅&ZOZy Vdh˪kјڛXv{{yen~#ar0qTa, a|͵'V_TIH\.Po^i$ ֠OxބH7Ԍ:g[GZ,E 7H@ MNq?y# D xm^n̸av;6YnG=cW c4%U8SmցֶD`!ofEʉb?t"u{@lޟ?81J wQ LGXT:{Ytu mU,*7Τ1bJ]-8-M[9>[HI¾̬SI!FC|IӘEưMLMRyrşdYjHXSjO͔ h3x! 0' Svs.u34mǒ[MMBd8'AheP7aFo[[:.&zg3V!ݝSzȶ|rہ_ Us Bn%$ 6YaħCW)Jп.*~:>2-B0 T%S2+1Dٍ`GU]&c3֗5h SH $Ƴr{jN `rsj0Jd҇bX?'` a5Us+M:e15qc0o*B2zkX|Gge>WuAX>(ã9k m?wU(t)y&ەΠgMrHc#," Oɒ*Q p(-b;͖(#c凩<*s82̆sy.pԐo\2[|րsOgjHJsHC7Uu4Sa 6 (ix69\ZTnl (vpa[Gh*ysksX:h#E;ٗtcj 텋S^˔j6=bɯq,xg>LsEA'%c&fw~;' wlaHƼ{G<(Jugs.TRߘϴ$FxJPܫ꒳)J [,E'Lj;Jg⇽1+@vƞUSat):ּydU`EfeZqª:2ӢN+~YgDo %ܸ5eFŅs Ʒ#*N3h4.ڟ:q8#!Yn?d]V'N\8DYwwtMh"SWìշؐfPVA BwDO%qG+a5DCYbDp}zˁMt:3ٞk:m] zلŮ A[lsIU ~ eKf3t>J_ q7>zL@~&٨6+W`$fRS6h属ٮBlߩ5_/rAcYHwM^SryT(V.=͌8QgزMȲ1PNz -7n`BwIv~0zn[̠CguJ["v{ j݀EĉjcgSaZyIڸbԊ8n2-""Dkt5_ϋu+ª.p7ksi;#0l9E>PZ/7 #ȡ~ˤއnjn} ўj`ihX]Gkj޲j[谋%ܵӢa_n~zC!_k_?zl vDfKii ۫n!w`|m,"UWvKNjڽQ\֖ڻo[J]HIMq[Ay-Pa!ԇ!uS9:UGd?[>z ڰK{pN .RCT|+"YZj'~-UMP j`r{?!E. ERځe/ҡF+sl̗@%ԣ,";"6k( y;zK{#\3kyZmN 5 ˶pXAjsQ½}.pb&1Db<`9^+$x{&տUsBSo {^ MזKX-enE}x~)4 p32bu +֑n SSja$bX$YpݫoEd}aL*{m4&vo5$fGt $3WiJAՌh*ض)G4On^rs}4n-&W!4cVǎa<2.s!Sqt1ѕ:~XQ Rg3dX+f`_/5q>4f+"zR#6ʵ+wUoeN9#KdϔqlsP278<=2} Mv (VJRԎpP@@K $ɤya,D7S}Ѿ4f>׹tt| a!-pzIfe8bY!Z>&/4%W?|Nq.unj{/r #tůsg :<@VSjIjЦ@}UқowpmdL-fF6C VO t4[ht!!LāL $j<; b0W04Oȟ>8%Cj߶N~S?]p1jq_"p3% b?>o<.'l1Ij Iⷣ$bE)k(Gp'8|g#.zU`Y9}sY˼~i[&1˙CQX;B%~+?]aG) ON>ZjX"hJsʓ-P6`8ex9z ~GDXхGSd]&#'̟B[ވAb.TAUb0<2(tָSk RQiDhCV`"Mdsh eG6oQfu*9t޽[>d#Ba̐f>֘*A7A"[/e[j-Uv)y>ߑ_~B*4y+JVa&RPrU'џC\Fi?[}v̨Fi J*4gob"O:a [IO5qLZEѾb17CެSޮuMOC*<6 Ef"a)Ìvra$R^9px% ˳,17FyP-Qw!_  6dS|>$Nͅ-[, j$Gh/$O\H-9R)X52kfO̰͌q@';,3Ա]4CI䨲C:,*A5@zIB4n^7,$%>Y71O^- jD2Ӑ!F_]p;a{ fqƴ2V$ZMOjNZy>^#Dk6{U$vnuB0 ʓQl=l<%Z@'8a%gn ~ Xkr"В?$RHs<WV ]Q5i@FVݕ%RCA/[fCY=X"!>08G8Cv!҈@ފ(Pe FUQxN_:\4Q/1\@gY, Ľ#nh?"=ްAMРľԃ$R^ϕPw)UGs^t՚| w`*wM7 e6(f)^ k /%2b5C|5#Z}ǦN,URFPTC/ndSy+OMKۣ"@CB񍮞dZM=8WM_.*Evn#odj"aopAC_N0i#7y0tq:BAvnp}!cJT݂ax˖Xy7yEH> _\6Gp/yq)9-]PqdR˹3#}&XۑI 8BKc`'>,C&cna$TjI!c5ށq~gJ'xI9VixI_w2dSe #P9T-NYWh@7d$[a"/zdCQHtjJWF1dɪeoTRDٚ`=ׯQ27 eJG]\j?"H_ص|=Nz6sֵ?خ@TZZL\: mih4ENKаH.!@p &2"+YIp:3qt?㟻F6K]ܶG8 YwQ-'"(Ss:Դ#?7bI4[CDɐԃ:x$ }#?A2ѢmAߺv0J6}' 8"f6!hXҚ /hbEq%Mދ,o3I1L{'[U?Xd;$ hH1Gٮc~(aI?NΥ0p⬘S۔g.[JIf:~O<;ViJR_4E^VqH>_M6Epv ':$)鞨rLO9PLa8N kuWrMN+.PHBִ!}m Ooz,u+Ȧ]ݵ{:8>*:eo _0N81/L %)PDs>Bh=ÍCو\82R}Q4> ܀ɸ~Tr쓐J۳(.`%5Ϊ Q>6wh yXʯP1os"7XS a,-[nOeiz^z>8;aMG Vʀw,  vģv f[|q%jCKg'Tvd!H۩ /.ue ?i\4Zs6+\°Tx.9ooB2vID~`ۨ#L dh䟷Qw'N#-Ww%1;K)EqD5RxʫMzb*QRB2,EQ7Q]E49ԣp;}KҌ|m2A/Q*>z_x"T3Rޜr$tyJ(!QnhGB*@sFǹlʡ2V_(ݮ{ZFnZ3)XVgĆ])\3;Ƥ+%hIwa\!oXm8H@,e,Z)i#(gZ-;̉6O x_D8mˌty,1 e Q~9Hzv2gjKͶ+ GT؄ --<"d:b~:!{d\53pW&ϺքHYw/(Óxpŝg.s% gاb!݇OӳŲ?O +0{hYr35_+ GbN"h&G[ '"~ѹף΅S~GmVY<'TI& z_U9 0b˴H-!2/8#Kt[~{#8eappcFM}!Ueiĭ~@Hj ~hZ@-m,&XZ"n<ψ9@S'Qߴ0vwr{r>F&d3=?ͿgDe>::WﺨUWFB?GK۶YΚZl؛H+q(9}<=?:Dc3b,: $H.O:$7rRvs*֣#$,) l pY& [ +U U?y8KoXYx%-v>7}rsOHFb4mXfƒ khJfMOX%S$"Mֿe&Dg)w'Lz[DeI!288tv0E%p|Q^<,nXҙ6*uvC7`I9㋛gǀ_c sfT^%ؼŇҶULn~J˾}FD%{)1YM#:+L_Jm{z5k\OOO0yc9Y)vˊ~ Iz4;>#{9Wnbf2Mn( swA6\negΣpy2F@+XWgkR$x=mD_[Bģ?uE^M籓[`D5J_}{ h-gW_nU[>pP0xC) g xWtB9*o Rx^f-9oP3gexF<|Lu.ɼ`IM,|yqE c#")Kk#ZwG:`p{٣CH vw%,jq# Rq/IҚ `:!aSa7م[{CS\Ӡd Tq`1IveJ!;N-{F= 폓nn?%k'}"IL›u aڌ =Z_gn48q#3^Oդ,o+G( T 7`0%F_J.RCeUaK<)3S/KQ+Ore{]h^`nFR g7K3y>$Y9 .D`d%:$]]kC.^kIjYd|F3u=n~#cG[msy|g>Ѵ):0$f{?[0Љ7"=—|@onR~jb1bB h#X٪jNF Ӫ|jA"O<6{ $-ѣ}j =K(| b($cRp4i6*cZ_>1HܒE==E3Tע5̫LO^u5AiIWqJOvLi Tɮ|I,s$ Ax.PHNZI])T :ԬtzO>F3\F磠Xö +e-V') m`ymnޏ]rnyo5&bG{|EIzW9:6"uWAߗr:>ȿM:O`6Ynp+ -Tz0G;긊rzZ2.X1gZ+YÕ%gvjD!8Gmt[ݿzlXdx B azn' rjhO:Ci3 Ȫ(ZZr TzaK1o CXlo;Ow ̙Rk/)mFo]CX}7IS9;abVH/B(c8!,̻e{=4XXefp 7!q-hwq(t'L2qA";(l{h^Г̕!hGIIu@DYxl> fa6=|x4y\ \^ɀ=o^ۛ~BWh(eLX1:L.l*n!DgLb5hKc^.iOAxhywZ@Fz_|(6tm䖲ܛ}Ԝuatie|q(.$`:v?Oڐ:4^~wUOYx5s@il6:p?&1XbeWZt;0 -C;o,w+xpM V@^)x,)sa *$MC^3Y8ԮKx _Oܠ3r2ƗQOKg&nЩ+}Pp%ܲGn2=4΀jsg]V1`;3-UaUnײڮsp+O\>G(&KYc5mEqUa\Tʆ1k~ &} R=:93Q@bTٍ&h 3?М'6d&ͪ!i~LoY^;'eExHfvlƊ#Z~c\QorC2 4u= H _ĊTCp6XAZL2ȄfO55Z# SA_UW[YĻh{2"&C8=NgK䆫b-.i˳βXlgqCd}v( |)HFa8@^iN)&C}JpMv ޶c}`wxes{:ܣB\T$eFVq1L3~#bCf$Uƶ(?7RYxOU TojE@ %M&:|],5<\|8yPz,.Cw"//֊nOL X*%\2W )eh^Ҕ'kgH;6k5 ١F牪ʸbsIDYj1zqa XZqR:_ŸE pˮs.hR\Dȑy9Bd'`|RJ&Ũ{׏50כkZXN)aQ, =GFm ?&ڀǝEfƇF4.C_jRP.ްn-nqK83J@Ԣ "hIG|E4Z~-k<@h(Ew=K9JHh)& F.ɘ!u4ϙ,|HVҭ6Lsؚ} pڔ(*/l@?pi1!; h)7QLJ86E׮0Y:?%pk;ih'?$RYCtXbdžE` SXo,9wډX= +l=%r`-rySJǘk>LqoA,lSD#7OFm\ayJu=-HdVAGϘQ{IbqjIqASkì)wp~G{m¶ Gc!jhY!7L@AV&s #e8X?9-]7b:\6՚Ih>N(zr@!zktNn{S'R\x Ν^)t-އˣ( %,>sƟGfV)I]: ?N8m)zT(mRcftjRS݆ߍtS稥IkIv6˒1.wP%IoX@$*.tXIAOѣ&K5| +Ս!?O^c~GXK2e;-S@R#hŁx5F$-iwXQhGhϏ0)|!PFEwmgq8mhY3o)# IoTzPSc,z]m*) ƪy4(Mခ e{n.IBBڬT^Y1 ?0e|A[X0KW/("k;27G7N62HCDl?)iB4gVb7ԧaqy wx OoG!:i9CC[ /:3Z᪾]"Hn.poL,9uL`;YO8zCdH^ke.}ZB}*,oe+5Q;2Hup95Po~A`Y3w Uy|=v}VMĕuH&؀3S&jϖF&-k2Hy٬+n#EĈ*e'b7ғΠҟh U=z|?(4!0iMf8L)WC4d8Kj0gT~" >/u8IG5 l.UE-AUrټ)p~2]3af"e:ʥ2R [BQdeni>[b$ yI>`Q 5O6R0\QTLlr@_D_dL/<< Ij uw=jW_'aO!794׈`[ [T_>i![aqZY$vu:]R 8Uq1l;?^%ss:l7 #B` %6o:?by03, m ;F0}Nq`grZY՘:VQYȦhS!8>Cw>&x֕&uV(Pz fZQ+i4O-P:<<=.nJBY2֜mL_ZkIuԈZU ! NYn;9cX"wX^|Axm` Hv K]a8Մe.СTI˸bO2DbcmmJUP9lW3WZ҄X l7@{rjTg: EW{Iդk@rM$7cդhQis3ٲ3 M]Zv ex|w{"S~.8)ܒE˺G``‡4 }F~o#aܳPr.'v'Ol1f+( XNy8pYSi QʃěZҿ8 $k,rgu ܧ6\>SL)z26C $C/%cș)%f4[aufGՉ+'QA=uYhT4~J(g妸 rrv#FJ{Y+;*EF:*Q#w+#<@T]چpjqXO,i4>׍h֪x͘7#@G'TŖ:]i$]VBЀX~4HwQ>`/Lw^‡ W@"*YP{X_T.VbZ1҃n80&;hEUИdg~@+*"b/L fADYs}BÐ8,$a!QUpHׄ<ðw㛱-֬3;ՋMBmgri\C8QC(ä\]qL(^iR 3hox:߷J8F C}.9n?9,KgqK$J;pR?-|Ent`KA.H #>+U8Ooqz]fNezьy xEqUm!, {>~&=j6B'xWC8  &C/nG}SC e:/E74̒[~s4!i4u0d_֝Q$h#Qor쏈^~wN̔kl+Nh ׸6/B>mmm6IWMt+Ro&ITN; #Dg@OdΧҲɮj:DA s,N^,+`>6eWf6~J @0}Ч+t *nV>P*|fhڇ4ޢfiASNUL]oHif)گE;* XSc#aT|Kn?ve>-*xo_:Cѽp!+MɳM|ūY=.͍tn?߂71u‰q#| 3 - k2r4rbnh ht^p/v v5UgVЦ T$ԤZBE<׉߽lE_U5](Wh%o-b-S|F*nXH&isbU3 ڇR֨?|ړU9{=fZؖTv%o;!sTgL߼Oj9S0)\cPgC7Q뉃hȴR*J;'vVM;g<͉_'X'j_r=V.]~Ă 'z|-M>Yפz2+6 pN+ LLMڭu/LJ]}uk-uV?V2;Ңw|ª{eMFr4niner KH炉 IaTp/O)r!ݾ=hҿ}4hl47ITHGMu={CP`fedҨ øP&@C%}TvIEGmQ 4^[ObO%n=Ga,u0Vi?Neu$/F{ke;rP2\DC;z/'BWZ9ǔzI]NfS"GxmU1y)% Ci', xv)ʹŤ8^LA !{1d7Pm<}BK ]Dz ^X@72 OVbK6T]2t Mq>4]WD;$I2`&N5 j^ SF9<65 C EVf7&Qd?b;Gz֓l6Pr/|1hD.uproekyiߢ z83r]w8'UBmpD/{;wpXM^wJ׆!"[A.:G(UmۣHg^uW43k7Y"D3AhmZSVB1εfGKCz)(=mm8KugDTnXG=EМ[(Bqm.!Bh\'>͈s3PpqNz z@j| :> Q?06_LK97JS({tٜPCSB:7iLx̎.K5}kDdKG! αP1:wIp.椤\,_;[qXIL tbTolq_Eops6e9k,ƒwa;Ye7OTv:@RȢ;7Sx &`+Ȣ$'PT &0$(q-affi%sZФ/hukw(Gs̛Z{45FZh;Jj?gn :B;<-ZJת44T45ɛg nzG}%'~=x9e]PYUc޹l::ܫN.]qmux(ԂoZIH *(X_U%9[qFM>S}suյ_ɂq9[^]+PXVk&T;[vg82mQ.D +}rꇝiH9E0pȮ^Edž$RxQ:;JtTi*Ǹ9eKi#|F^$TL=4@>eZ^ 9CQ2zٲ3="8?4b剐".L`*={MU9X&Wѝ$Q?x:)\ 24ʾר9T1QdDz7ST"7sBuBxF/W^}=ˌ@.Y z8Y|@%ˋǐBcQˉYYIZN6h  Gw0 A5z1BCjgDܿdP;҉ ʉYho^=c#8!dj+MB rJ5n+Ac8#*_tWTB,;F挻nkigo{ ,'qbwh&/`xPWkr/$Z9sC `h EG9 HFj OJPy*tvؑ@4Dr,ـ)f~ruC\:% H)X1v/F桧+ԙieDj%Rqz:A|.aϡjj8(+l"%M+A~~>at1:BG۶sCq[Dk|JXL 0"a8I ɪH~De>c)՟JJPa9U>Nn0WCkHeq$хQ}M]vK"j2_>jP$F'swcSa4J!CZ xk/6;@lɼTw8%yB| F!jRN]pўn* +9XEZ ['83a^˕+{H_e)ۯH* d!o+TjpĎ,4)~m^>efĩA'(ЎV兣yqtRkH-CS1,  s F~`D~Vfg-G܆,#ۑǒ%Nf 6 0QBy#N!ml (l[^2"19|#OO !{YOf cI ?Vh\|"vid RFS(uQ0}:M;mf.aFǞ,0KLM$"va&iF-Y'45Rh&fm0賞"P~[6OZ JB S=dDED+pї}TA3!kj[ dōKgySM nf[E^;\\B;}_ l_nSn=wzZbpjWXqrg*3;Lhѩ5)Ҥ*)6oSwȞg5ɦCf{YZ~Û-Xu_sYiִuO+RlID‡Z*Zk5( gsTuh]rbmLS1k_)aIUQ[8h:2DI+~Dg\7Q &Lqa8lԄ;^!$3Ea k&(ɪ5D5)L'(kƃLL3KmHC eDu $Kq߷Su@yqc+ىGCS"tIJ2tZdztY6È5[ p",@Cx[NwY4[X"q+@m{~pjqR8%RH]\<:vO8G:/ߡ?oڿΆکJ%p?oЅS0]oZԃ|jB8`IO % Ǜ.] 1nB8&`{ G1t Laj41pu ; eS0r] EpTB#Ъ~Clƭ Ю #+{ٳ I,z+U\7pKs*m2[EC$0;g ʹq\>$1zZ]*%ڨ ń+lhxƲKRV]N r7N2;oV'ǓH̿o.F7_GgxG.,Ok6NWuчCµyLz蟌S DÁudO+TRSŴl:,'=(V\LJ|njZ] NR@!6yWUKqA=,9wGh|nRmƋ^dНo9+%1<^~e+G01mJ `x3}e@ ›&?P}x'-r(D҄" OԽkA2[BVuUp{)nڃ3bgŤF&")DKNjÃ"(}ڵߞsb/T+۫'""#p,rp6kTv遱^D-,#CH {,+,Gʐ4O@ fe Z2.8+8Ic3vj`qWE78?|p˪ˏE,&@ֺ E j7Eb> unGlvX7e>I Q֓P;݌-f(c@o#]:9ᖔLe)WzFmu2O{XӖm(QaA.DŽ֙x{;'#Z /h٩6V!+P"*X'c6˾[ W;&U_ ao?rɩWlUեӔE5R79[y6SdlUR_(=miS||nN1{0U_%o`W $u&F#oJ^ݷf[O\,c1DmSe*bC 7zaQ^gJ 4PӃ==C+5Ҥ?x?tRZsTԐ16͌2&]>$6hXָW` xqCx[6 GIT&* ` d&ٕZ2b}M-0X?w#/fܐ@A4K.< U 3.l0M%~2-+zm8N{ {>_DAT {,ğQMk ҿzh639Li߰Dc'oҬQ~_/w#b +@ƨR_kh!|q9&xy$"<$JbjDjXu뷞ni:#v+=~;MdkR8k gXBϪ/d--e+y/ni ^0m%}b\# aZry3oߠ!s`*28>f'N83"Km3S4an܅*YKC2H?EeB'#!yٷ1cU߫&7oJ| mx+pX:37|}MTʂ@S^(IUh}Sـj? H_MCV@"PNGPy\6 t/Ź{^(6Yv* |I9;"0L20SlX< W5؈?*uqz. ;ǏCo2": 3 ʦ,4OrUx .C6:}h=m.q\7̯+'JBcƽkƙF[terH=<\oׇƱXxͅ#A71V%d꺩Ԛ[v]}$ǔ~N0ޖV@-Msw##e&rKd0?2wpW|$aCa9!Sn, tc-W܎Q߄FR{AB6K:a pD h%GV!?}qw)jGD۶ <ͱ!ӬR՞b|;_4&{\JbL`V<ԛ8Y%$zT_֜ dzGGCޮiF_s@S_+J tgw}b؎#enNkZMJ{ͱ$Dܮƣ@[ǵ-@뮕A^AGc fmߨ{Gq#*Ss|cBg= B? FB.+[m24W{&\ HɄ2);En H]+nsn9¯"bS=6$; W@կ)$< \U϶N{dƹṰ.R]a,MǓD~Rҁ8%7AcU]eؑ[COa nO. CV(!3 h}Mߏj+/mᝮ,>wzbp<݉ʒ-w|kM5+lװ&g}a3e-=Eq2JMOψYgG)ܱh=\mu]$[X{?< ` Qj̔lvWycdVׅ\ ?*-& B$}o<"ڧkC E-;l"MXH0Am%Q!4s[ 9mCiSĠŽy[,f] 6wa˿"ỵɓ )9LFHwk[U:io]?+HHhOc\J[I[6ۺa8)nfuRkLk+:cCԔ1?g'4'&E={V"PzCx<ެW1 YO㥮22Y)5-~|zpF1H?VΚxBgↈaxIxdR:RkJ apAħ_NYmkժ7L]f3Ft7>IЃOx{8, |Nz;Gw:l G^?y^{VGWyyy&ٌDfJ̗ԙ{m+|}-0OfHsf:z7 1;/M:rFYƅojls: %W qhws8;*#Dȣ~OB\>!)A'tMD}ϔB䪾mɞ!VhRrgD^zѳX &NpK%16 =!>nhXEg38|8@R ؠT7&$3oon%o؀ hmB*Cn-̭ 2BT(ltFʄ"L"7@X"6\ڒYJ{n&b tB/Eٝ Ӿ3<)}E?hY ^e ?j$"D,@sC~kZ09- bfwQa7@RTd3HE_*]˨"56@9}:!e@1!-KweNvV|gyJ2Ozp|*3{Mz_c/:L'uRMNFx)2^.- (3sp_\:*`XcsJ+쐆kMo?egʹE0K!aJ75eMrX j<0vW9hɨVZ7݂u\[[[gK^-9f% *)w)d߇,ZS$g'Dݜbaqz$`}ְI{ekaSr@ydft̅UKzMnb?f Y׎بkt>͔̌|`>z]xb>rc* Q 7A5qVޤY+JbVc_'wnkgx591>14N'{ܶUyw*gR' >թCQ\`s%fG~0XeTq>VԫJ+rH+۶M 2BD90;؅ma*7ُ Fq)5oxz4K cS5P6Z%#T*Y)FB,e2\L+T22֧bo9 hE4be|j4AlT!Ow(fjw1ky5t'MOmGo^>0+ BFDl ۧ:?3G"aۍڑ9!yrPSb۩rgL:L|d>$R˅!26vLLp]r( f>lv0 NR .*3] դWd)wY(/׫M)T`xI{5rΨ)su(Κ031!,Q`L(o6SX?qs9hN0nl|IdF;m7[\&ZĪE!^g"+MLB}2b*KO͹tKh<'U[1%|;,B [T:J\jl ui'jӁ1y7vAI a|,=K7}~FhDlY*0)H l^!мnesOdn(GR1I.xp.s9O5 'NB lSǸ;\_dRb@a }|mjql~s{˃RI4![¥@T)ErΚe4TB Rxi̞PZ]!rTS4L%f\;vj6@HZѧ|!UbŐucZI1qt,<豶;>mk czJf[@>K9T)Vl,bLeoMKFG橍9q (A.^B(5Dqqg.P)BGDU uxVVoVTcenc/*K!;7d1~"u,y,BC?s?"^b(WY'j>rQK0)RkO.%(W b)tx n9&T o. 9%Մ& a] HnB^;+6c@>welcz,,k^z:9vaѮ wKWp]%ɿیY?)S^ J5Ci͗™ 4G`Qc6%Yj īYRHɂJ˽J*Ŏ z.NۜF$7>U*PUI1Q"T 0l0 P/8!湟G7q)H 7H]ĬG-̇f`Ubx|4ū:3YEzQOVݣTTq[7RT թ5~%32QY\(vԗ }}پ[=w$'V B_Âql*CƖZ no_L-I| l72'!hI]D10}9Z+E x $R'',:h-JL f)3l=ѿ췄]j`[.aSFȁ[hHpG]M+F,ͦZ5*їE{R2j qVwa~Jq*_O^byYf%ePl[G# HXe$ju/|w\*Ώev$p0]ƭ=Y{$x~#<쪳U.NƱIΝςiNto  #`2ٱS֑-œGN+9;?ߖ^XzAWLP&[ĩtm/'EO:g#˸%wc'77`[ 3Uq/Tu W۔M( .\w)#;-vi@[R;$vuoRf9uq7? C#yxo%,jp?Q9{K)z' )S7i' B #m^ԄYNg$⡯'@&GX_>o<} ATUe蝥\k{HEd8{ NVeyrUI5e-&"TL#[nx7r6SB~1I_ 8 Smk:v_JTϬHz>ȄXpԛ1" ,M#N 7apq@t fx#HYTޖˁov*Ǎ'bI(K?pTS1ɕfP; հ/unxߋ˻KZ BvH&(M@eX^9Fcu*(Ɠͬo!T;[9K腢(3 <,tHV8'a` :媔gŜuH/F#+`IbޕxuqplT$Z6Xg Cܔ0+Y_U6VYɄrHobZd93{,`r+5=2>,HtlfGK#Z zs^THBfd+M%x@Zg=裝7@8el"]KL@ }>Ӹ3fƴ.i -)Yp}ZaQԤ6&,j^k]*V#e; K~':[-- zp.gXNiB0]!Ks*{ۀ\=qpm5,6&#Pį'h .>D>>XD Ikh(=.g߰ Q`ysl=CgΎaeQj`4g}zoxߓ%^K97>#Q@~lzC7H7m2&I#I/Daryuʷ ߇xFOQ"n3"Wmx|{4Y/&i )V4v$}CȾ 5c~ ܁5D^uʔZEF)Ǔ+|f 8G̵Em ݴt@ژt*R^<'~߳ECqU`à at 0:o ȌU2^|qS\9_J\t)&BiǘS=Vk] m1SD =ť| x1fݠ?܍ȹڐ붛8Brbo$a=qx0?ĩ-Զ1܅vkz\YSJ΃c8%MaG擅-:lXgƨztj 4л΀`P?/',`%xUX/Ptv48tF=B7Iq'?Ղ[}!^ǦsFE c~+ 98f cO!^m4hzo;l2 í,4ӢK'O'!r}(Ny~g[< _$v{"O~ &-+!NW ȡixW[ tNĢL1y,&6OV3m=8}T ,a'EIiN]r}D_[9X=uͥK+M9dl2{J؈Yը{J_cf}mU:`/m6FMRsPMo^>$ A*Y:)VlXl1]w`ݛ:Ľ~3 Wn7%04d7w觌 g94T&ib߫PH$L6Kf\ȕq,'65h4 w) +RS^GAоL]' m c~|R} Mr/~g.K" e?mCoGwƶBKoL9Zhs7zV9d#~KKH&FZϫN(qn4ۚ; 6F0D%0b4唥"auYX1X ]rԊ {ei? 2ihUg:m$H?NRp0w"o)B.8/4#Fqq kNWBjXˁxCHe WqwfeDnk{27d:} d]`br!L# Z* &+Ky$6`e#9!T!礹l/']Dg764ZɄdWک!yf@jmI;&)\μTRk&36?Q6 LiZU(풹|.D1̓o^-hml*[NS>':|J׭k,,'xOPg%~6.({|m4|Ca),5'vl@ȿUz!{k5{5HbX-bg8(@C+uبM ŵ3"7GɿD~R} x_Q}(pzu颳ҽ|Gx?f0ᜋ쯩@I(}"ݹޛ\V䥵pI8wJo) qB'p?ccf_Nafqu IՊjPV+;nmEo::^}^u3}M�eX1!5&GcT Y%TScƟ5,3[uh l|qx?'C(9$Jr.O1 bEG&g"GTyv9 Un5{w h}>í yDqo0ߏLb[밧Ip8^U9fh-A LE2I73i$ڼPë&bL٧#؉ފ*l<%q\fx[htLS?e*K6g?l! F\*cxm9J#J2b+>+2[ ~q:KQ7~3^OEW(FH",lf t%ڑ 4 B旪JI{ ,CC^`hr?(>EnX"ݢ=uRz>cl8~.lZޤVW?\TEuo`u$b{ Ia g\w)^C~JNs)ǔɪCdk^ɉQvVx6r!=/ֻ".I0[s!Ah9#pVw֜.K<܈HX%q^/ﯔ %eŏʅ~RAUz2Xdbn̞-a)QT_5ȡ|s綴Ι_! cSjz^KuN2 v"b7ⷫ!Ѷj] Bs Yݷ %r;uTd*i+t8$(fՔ[3ͳQfS0Pݮ̽'JDE\A&OƆtRP,.41хD ?s+?V19[B>y"3,|/wuapN] i.``oOhW*] %7PοE`q3!`șC}GH ZN{U2H3VtK )0a )i_O6ຎb]iH.rHG .#0 hz!_!zfCUmGiFԁItJ[BؚYKc{3p"7 G09H'~B:epz5|&`i+F#׸b/{ɟ~[&gވ B$/8eO' *a1Sr]"tSVS8qR#a"r?iz*u*_&yp4ufɽ (A #3.ўQ v_<;U.9Ü[8])VtF+){-OKysl˷` .@{~!"~1lރO 1ΓB':u =$p') 3wx,ud2IwJMjY)*|"E.љ,w")O+57) C' >MP(;Psj<.dP֋i;AA<%hzTp2'szM<g(vÁ>h rܭn$o|c/ 0"h\ lG'bԠ*O sxF.ʕ HCS4xmRo6E(YBUKʣ"ὨG\}D}˺Ԓ͎860GuƱG1\RTQzlY B31Z>{>%C El@U\L!JL?7\Js 4o'f 6dXuA^AS34+m+D791߳-lfZY$Ue uw`'GmAO x]Y1éP2.@aXn84qt_D+.) W `}}fnᓃ9X3,߸Hxe!}2Y4tiX8pJ` H.|b}JRr%\{y*N/-r͕Bxys,ZNLNVMqoRȦ1z}\P[7;~?CW&9xHXkHvZ ec='y o+jͤ\*eCrxj*cO]xSYW Q:kr`t/idcfcA!= #He"^(93LZY;csIRYn)P;r w:FUU `2G/Co  [೐k\3H9ֵ&-UH8E> :!Xi(y b*KKls|*ڗ( =7Aݙe%#Pdي̡|>)zZ2`ഉyP c-tBbCcg'[QK}nڎ4rO _jU_HO `EL*HPk Eks &d!2%)+OkQґ\:M|Qz㆜ bB,A(6`ywB;a/bn٩9z. ˆK4nBЦ{$p9+aV0QWضkBT/%ĸ#%8 S>.Ue|cwJo®؏Z3K5t Mfя& #1.Ƈu c#k :ٲzOG!p&O F2OJiEkD~YXv2ֱ_6dԼyڎ9ӽz\J$nWl.Yؗ,ID2?ganGbjxz 1-Pu[v.9dZocM==W9GD(r~@>v뉶wQپ8gE~`W!G`@ rZ;k"? W5VON#PڗW!@#Ɲ۠D'V9#Weay6#Z53u+9mge I XxC<"TZ>ZIxX f.xX)z-n}dt?FB?[̞o]a%MOV\yʊ8JM v_*@{Ŏ@?7KYJ6u+n¡RZUNG}kv7RѮoGd!_Z=)A.kd7.3=*y/҇@ɦF]9IYakD[N'iG׳;Kۿ[f(hȢ>S<HϖpnljH$ Ut&Ii}j nӐVtC϶fOm.G'vE2[tLkŢÆ;Cod5Taf%5Rb:D_7Gq_B\ {~h8Sz_CMrnSԐ%= !"O+ BVKO_[!%Nj*AEI?:O|{3\<|r*$^O (߆}_/<: cZ*fqЛv;r@nFlGxA~ t6NtD2hk4[9BEЖ,K=9w+'S62tȁU-0vEJ=7V:T*Q_gd1j_T>E:tdzH1fG(AA+)Y,֔f3"w*1h˅U^R! 8]ibd&b\SRc-FUΰ_AM=Ό,),g s.n ʈ_4~'qzAIsr OB$u6C/$sWמ|hf䱆ФOP;<ЉO=uY%KM-YQu Ē =!XK+9+ _$lŲb(xe(55 k M`S;H&*5WSӺQJ[R{jp˩(OnKv^<,j9XR.Dʥe(?8͕tV..:* @aįwXyg.#M"~Ap4QS@CDaDI7CapU OS/ | BwC'4UR_ѸAں0Y\MW+dcfQGW"t IIOӈ0\(ֵx]t>܊0؎6uhiwa]Bطxo!\+](%@K5c8cp%(PkW.ݓ滬ݳ csk(lyf1 MpQ1&׷γ@tm%a=jD~SSwهCbѤ+F;K\ʍA :O`㼉Xi؋V̨m2jgO*tI[[*v9ҖJoI栧%;"אJd'RڻoU(2ܩx -|q_4OB[VfӴ4%mp]Q/ rbi"3;$֨;Ys A%*ȅ5O]L2~L #/OC ~-Hf x"؊x4 N8vw1\|?x Ur <;úm2ͧN^WP#}v~@y ^b=az1w,>NIkh),:0p'D4^Oj>x#A£ExZ21t0+!J\!>xK EcvoN =DGVO+BKj5ذ|7{j獦Ua8Aߊlx%6rlXT@gDe L)]h&CX%#IDT#<8:]1oHijT_ҽt:aɞdwb-r ɍ))^ٕˬv̗ѫ><%Ҷ/ jo%*b4E. [K$wz]kW踁Ԇ03^jcHMXkҧ㞂FVCPy?On|$p'‹H# ĽBT5F031LyOrS"oix#xh{R bp;hyH^YE*Ym7is܀,O)/V| jpas*(#܀r iO^n+g35o,o-;( $:-JTczw%*27$T?{}~Jq]f9Ln r)] 6gwG;HZ0UU< = ԷBc,ڞ _6 o-(#+{H-{ )kc4BQ7N3*!E3JbZ ySĉSϟ@ic2oUj"!䆃!,q%h"Ю/o&Kh-ŗ,EʈCTeF"8W4)nlu4^6&$g &רLBȂg哒P3laA-WfFCD<&|VzQ֎ vdpX8saSm$:4Srd CHyByƵ3Z( *mxI^\ =ן:hzMr4;Ѱ'lJ;oH}!Eݽl;ܠZB@Cs5̸2sq )A pr7V.oWE#· o&G@8m*HU7o9ϒbk)@Z"^5Z_*]. NۼhZts0ݑJ;`-$HSbO$p]QJc--7EBЧ,-bJRȈBuh?V9Ich8,]$ qBL3Ƙ,w %4|jj* FYh* ,!g$h燕:j(=]"T$ 9'brCFS/{o!'EQ7c| +l-CfYc,χv QsuxI'ek9թp:6?W.t@#zMi*&8jHy r 9c7=QBr"u7,Qq7*/: 4zh{8aٲ*_S51<&tڲOHc ⋫"8lB@P+$K>yF÷*fEŊRkt}z{| XI(,Ge4[wځ}$ /FE[;%umߠ 56"7ah@FmYߵ \K}zl^;2ׇv Uh-%߇GEEW gԱآEO,vBjJ|q͡D C#˜}a m< ")(|1/: G/`gc'g}}$$_-Qp fX9Dh)B@` P l' ™\LcaC4 mLK߀Xn׾B5_ -'1 U#f[(CAOdk;9ꓹۂ쒦\c6j2]yr:N:덍й0t޶iXHy(5&턗 /lc?o˙:T4)-;&E(ÛGp0+50s6cYny\ϧ1'b/"I ף*?XiV0RkLYTC( S֖ԜWnX~MnAuƁopbF/ZGkHL)Lz?Plmqmyݼ$^Th>;atnpҎ 6zzZj'3d )kT&`'S>pB[:lv?g~ÞmT_]^.R$.k(_bc^WĀ~盶/*8>52 \ui ;™>}#7p U j,A$ }-Dyj(aΖ4(ճŮld0>hy+i ~uAʔ .sA09iQ캔 eoO-0 N? uޝ}߇e]t(k&"L+R )́0sS!5.$-ݸ ]|ospuf1oH@!lzuo)5>VShqhM:omD˘We9B8 Cy-l!߬>GՐ 0HyFOo1Զ(݂а]\`rvؓmXi.ժKo lj6ρ~O),G4S D#;|!cˑ\϶+e0Z*/)}Ub6a Sۿu8110"MxU~F"Q{lSxh@.dy~.8sR8 q2/(&7LK:A nBuE~pgܲXH-z:DBeb$xyDlo&KM(2kcokFKʵOW帐r HԮLV\ U~fgNV7ចDy*gjy+ʯ̔,t k6]Kyv] Lψih[N< 3EF?5C6"~K`rkFY&I+['Im[HyMkާT0S`bb!L-r;B9HFt\u1ﳫ)=?3ť-"|N-{IoT>Ru +Vf_s:Jg}@4ngm`U *D8QƹǹJ[-/$QD vܲ-{|c QT9W;뢋#"|Lg+lQa,yXW/@3ԣ4=Իj^ve?rTG1(B9xͳ7axiElZvnYB$փ _܃qO0V,z 5v|) "-.E_mL[G#+ --1DAə>K6|N Fױ#Ն@>4-.g@NA}3$W=Cd@EddTI%J@-JZ26j$$"RBb^`oc.?%^(Rζ=ŠeQ;luKXq$?^'JLNкv=}y+)~OM8V̂:of{ɸoxLH.@bΕkä3,m|Z(»M6콨XB LtݚqM('=X{?/Wɀ qM/ps7a{3iFT#Slgzv_ 5T=\1Xiq#g,ܔp._*yN+TVyr*@+OnzKTY;CWO1гu.}Kw\ $Z˅JDAşyt} nFg<:7cدZbPbHd>"q$WIϧ66G-?8kHcf@H'NN40Z T Ke,7K?:Th"8*'Z%§~bx1#is!(V]/h "Mט~$eC=D ,C#OuCvZم)_+$KouEL4{ͻI >xFY`26 H ͓@ ^=teRFڙ@殩gZg Y=+Sȡts' ~zOLpʝ^2Kth?R_[MH[ə '&bnږzc- oUsnbtg;ղTdJʂ$ة(C~ת4 9ɶWp`u9d*oR.xb 3W^>6O)H!KLż z+vǎɟ 2#&mCsj#ͪ%qBE9<wQXv1$[gۇ&Lq1b(L*$9ipԛ2kq!s Y8!Q/R-Td-Qi(c{w*ĺ~-E>l-dˁ#E? uw۲s<{FkםMwx=&qr=MFuS` ̻ⶋ}lP}mvJ0ע'(!AF0\[]PjpvB@jСT>w$ws> GY|=ҿ}|'G$;YWc[Kvl@ӷJlE0:&cC!]B4 RR5:Cg2H! Ho`+nS'ۼ<4#]8#TEI@(7@k}d\;"JmjDU=tmԲB\NKӾVI"d'- 5[v3H1S32'%0v>>pDE"&ksO !$E~+ϕqAbTNG1(B\g>~ v"_0X;t2yJeOa>y[wff !i`ưTmXV+#MawuAp:[#Ka}F4C KT_PS>ߣ^yU>x: ,ޖd'9 [ƳLn.]2cy 5ɸ`M:Ҥ^I^->`mշEn^@DK9r׍{QV/,3m<,t兛.b_3 Ղa`}DKb%W^€Q] 7 $dK8I )`>2-pvNN8`/^3OqɖQ8K5) e˩`RȓC{z9E";QMU$,uI%W7/}ko̕Oo=0= ox#=ߡXILB:#^s Ox$2tш4ׂ= 2NE^z4ƅ Bs`^i(RDK7_ɺs& =D""I, 8EhԖ*"ڥikfVc ^RwA\X'e&(@8G!"$<#kD}a>:6SX2<](]@<u˝yO:B*8JQzi?TH}S7Qp_E6H;?@m.hbp2JogJ,D/l߹^=DU( G!/-6د+,f,}ے m491fcXf!dAd9cB!TH8M SviX_Ai{4D `L%q[TWpK QKC'J4ƚ"QGC"wo`;^qU$'%hL7CIo5Cq =4>ΆLuЗv*vP w{S}~d#T5sUΰo#S3*zL+L"5愊-:hʅpJ 9 |vGA٭TfUU F{bHS>D*KUpcOˍ'_=M)dM6ñyȽx4p`hBjVa vc}ΎCM<t$ZHW[Y= ? 7Ͽ\G\JiG=\%efAc2Z"L[zq4^J4n Sy!dz0ZlE #Ev6#=UcLG&̱]j"lQûHή~H+ -%W!A2[hm]I(FubdcǵA:Iْ{UA^)ZPqR\&̴Y˿\XE2L`9zgD#ڔOaSzchadۂ߇v /ѩ[ ҁ?7Qy&~$l.Jշ́Qҍ)g@n1p[:T)^I_;*Bct:9cHK26huveL%$C\jʀu툚{CZ#n4t[qcLf觓CZ(e5aac*QDt`,2`g X{] "5P dW57p;]cg,Ta=:W60T`,aˎ40Q˜e7t2sR{*)4^Kʉ xyb-35ګ4UhTfFb+GY=RŹ(,l]t:E*" UlRH9S'vZ~)!Oq\뷼!sQW}|(5{BYDjWKRSi [p:wԺD T6f3|td@+yg ^qx^s/ILO*4T۞i3{ @FX0&53<Jy#B>]2Z k4XɆh)#B$R̊O@j_Uv+}Ӹ]ʕBIK?Rؼ(sMGrAYC9־<8lBE9zo1/̎tΛN1ԒվnJZqL~֏{U12]ުuP<Ri3Dtmhw wQz+Ih)V:kFC8F<[#K_V8x! }O05mLL+_ rd2Ȥ٭ o.܄hAw[{FC&Fit$wx(1Ǯ"0d3se!v""L9zD!i?_* 4ޥ,/ bf9+-lJТcaW%p{|ӻ8+mH]:H8=yć̦Q41aZH0b& Չen,[*P}VX=nZ<[L`b/-eO[m*O@¸l~n¨- +T$Jl+oϩ!wC(4-nS>=+4e\lI^lD:'tS23 lϣAӱg:?^aٿPoDF2SJ_E,?U뉩F*;њ;'B#F,H7 #{]QGO*sr~wldnU.frYhX[7MP^i~<3 ;qz䎆ё1Rs)MJހJz5}O˵P$ϻ5E7 wu@$#6 ;IRs̝ Qh- ssUaؑ>sWL XNA?e8D$ vשL sT=Xl͵ UMZ7&+DFВU:&m&WCJ/)2zcB;M ?^WS 49TFi8)t)5wSԎly| AZzRO{AumHb`Ӗ(]?bt֛ރp*rq엿'OKyO V<.Kdto dүq#P\CV͔ 43APADI+) 'ˆC^jX{{|2wi ojׁkx$M~O`B=BAQg$z#ȲagTFD/ N倠+L`#N*'oi &j'~:kfb`>`|nldsR$ھ\7m\OMms$6Ts7QiicX@5s_ffhY-޳̾\'s}'lk1O*2Y1+AC2bז̮N |(Uy 1XVz4 3@-bO?ւ[>x T'=d2B]O.ISӌ,aG(c*Ϫr;KN#}ϾH:b=)P .Outɾ_B{:g*uhD( l%z-xAXg[֫1%9uhJxI:KNJ"yE?Sg9of q)gyHR|O5ǹ.-=иsJ `^)?ČõKs/p{0^_B0,/zb"+ؖb N,$/|T?4X1p8wYm#D`/ kmTmgW]PyiM'inرL6a|l.#R hV533/sT?޲> 0? ^NᣋZ+Lv>d-dxWc 4l'Ϻ 4͢ 9lh{xn ["!?ce(] J(,K.cu.waA4@;V15gH7126tVrh;-g AD}\яOĜC5q\v 8誘ٕ(vX)ý́lXQ 1Wc2;@=3qt,ßu*2:UN,89/9G%Ki"j@Q#AdOh[D;%.x({2ۢ.xW'\mUV?Sq/vעlxJQ/*E??zˎb+,S_b' ̍¨DsH#2zXԛ hՓjEstpMrSv&RfGc\Q]~P K)io^ӭ;(15F>̋xǿs_s_&S('\o33L/v.$+7!#+%}t`&ZjWUo~|_*(mBx(Hy`wO4=LR^VGlO/*:Ħ.Qۉ*g6[f%"GvE%w,CUqq$B@ᤴ4z:4YoR-qbIڕjMBWƳZ;;: AĻ"_,j׍&M%UL!?vh>#Dby?~l脻9Kx ,\G +賏\>כPI?PAPNU۠ۻԊ3XӐ$|+ÆJ( /_ 8p/B_5$jIRj=L(vo,$E":CJ0]#s0|h1lRn|L}Y))UOپGkC DK{ xQdx0!Qݍ.k,@Y ,`MHHՄG1#4jz Wv*xmmYl;~qv/q~x SR ꋛ:UdwrK.y-1IƋjW=.t UoWN IjBQt{Z]HY*vu7u>oFIPmEhrN=r VSds55Q0R=>yJ$^0ˡo&s62 oIDݼm%pIc@xb/V>oHXggw/y2>>Y(NU}ghμ*R0[i'u&W[GWגխ02ԲŨ<:lJA{:ٛ^4G1B4偬p5 g`Ӷ+l'V|dgov 8֗ kchf`2 D?k¯(ZF` Yy2sSB~ hz(]#@_aٸƐnqyqj7.unדJðZW3N]ރ!yߠ.6ۿ ot!yR+1NVa!2uaZ>P섡lI/@ ֵ\HCZJ1 *H@*yP+ٖ*.fl+uG-XV%G$ʭH =v{}eܢ.G6^cY Rm0 1̸U@Lq/F838 3p4fKgڍ\vh:wL~d`V8E[t4\dAHm ? tw9 [&ĔToR%˷-,=^ h9.ow`#׃T&\1ɔuʖu;qTؼ\EKf <W1{7h]dfpsko 3ZE pZTM~Fwqu_=SA,P}q3K PB-/L^@%hPe8 +lbZQ{e]8 &NଥE^md21\ڃݘ:Ozx7/C9j]y]:8 w Enf8=WREhfv̕*H1!Q hsLڼڊwzbZJe+{t#fLCЇ" {[8 ~Eȍՙ~m!ʶI뒿SdRZCJ]鍃->W>%Wp7o'̳*V/ 6#GyDPurZSH-߉[хjžQ4㕁1jW8.̝weYZb[X@v^1D@yJGg#EQZ~1d׍뾪@!{Im>]L>CTjUn3'(žEG. LS@ti{nRyҹ~Lڨ E 3+al#ܫ!r>z8croUۗ_jmA(Zt@ZY[ZjwUսf+Y-X u2}!^-^kZ_ݺkG SCZ8wV TzFA} 烽 gw{a: V wm Cm:oh9:a)=87aSi*xjFOt|Z۹٢-AG"0攔EJu\ d5lf GXj괧iT×E^t)p_S!hgvUZ-k6 fiMP!%Y *,;Mm QQdܨ7qv6`CB(c/#MvkhB3pAS inq9qPKvS.;% LYb)+k{4{2gr\=yS Ƚ0ߢp\ C5F }7ІJ0& }X_RG,TVFAu=t(eWւ)~5e.Eom v_=(p[%&f-*t<{gWT]3u4tQŇZw2V}x5n 9W,~3wR2 @l̬b֙HhLVjo{FB T vNUdvr+mw(:t(@ 6[ZR.sԆǗpl:1`(yy=SD褊K%Ebmm@+@Ţ";ϓ+Pɕ bZ4oaEv6[,ADJ *e= .f_ ua @weX-ߗG@qyydT∡fwJsʗWqmzPp%#`𧻓Y///}jxg#a*Nʘ'JG3f~hoxM }8@c7 c{y#`1Ęq4\w귑º`]Dey:zq+l/e@v.cF(d.*mACq QT FyhEn# ^qX1Ά$xN泮m~Kjؑqjܚy$~j4Rvp6y{2K§@ڗ\' 䫆 >4)6-(J`jXI;8WK')rձ]N~sP}f/OЬ f%d<''px2D4bJ8hAKD.O f7>c 45V#q@SJt j|M u[ar]#۝~Ν I/<;Z Q~p–m\Vbx@jcXGݬ#>Qґ4@J Rs⌤A= Ijؤ/+n ąvd;ļ9Q Vv,d&A5>5%0R*ϬΌ@cD8HKe0nЦGz`鯓/HvYl_yiow)Y8qE ˩)—Jz,|2q۳B-NSR9*qME-4 f q WKY6Xui)%ETDR|+s80Qpl0$|1=%m(uVYUAwQx~p2,_TDbgO-s%h`T&96g Uk٭xjB3z%qI<ɠInT.R!/ øSQ]^XSKC/!B+4irh⹧ϪaWGH"\oh3X0"[e@" \͆) ٳ[ }Ge1;:ﻊnpp-׸-UԳȨHg>e .ckqqa9c=Sv'1Vi@j!o% ak\!M'8P%4BkJCo׮,Ov̛%p#lHbCyV`nO l?cxSː8/( \1/V _B_xb {#Z#rW5щ [LǻEn66>VxK``~BJd(bdØJ`TEʗ-DQΈ&߶;]y7g, p9#tZ̠kI;βCN l٪y6iLJsM8%}n'eU݀\)D^s š7 $R%隧z {q`46}'bAӃg548`u-X`?h5MA ?L)H!-~1m;Wtryq&L7$1s9/Ǘ)%qTmx:?GfF, :_ ܪXQ`%}e3OO=4r#2W)r~ m,$4?0Ҷ.@lx;vIY(fvpJyLo;6_MNͫu|6!,k_iU\)?z*~˸~/S߲mi)L!??:w-pO7k53Bfa6W$l0JDpr!YȻ+ijLۏbi_ SXYПU\9es1Q-jje⧉Ҧy-Ӧ|ct%)~\-y_ D1hB$a%&+OT,sW$ :C UÓj Hʲge jX2p"g QܑsԶjt}pg:WViD/LoyMd r^Xj0O%EPG beR,hg>F4!n?|cWXM5;sj(Ha;A.QB!JnbؒL L!N $84n'HC6n&A,fG$5G30V}ݽ8`ĥ$vF+g Rgr#*22^w$z5}[ @ TzE5~,7#Ju^ڝ (ޒbsԇ b3:gs.b#̋3x`sd=_끩f&uj֑&JX7q-:35z8;?t"7ilMynAzJaBC(@f=ʢopX T7B#r5fXI\8R~`):>'_3K!567cTF. Pq.wQ>wq|6FgMِ.!]e0@dTA< VIGjC#hW;E A̶^:,] ďHBraTHnS" Y N# @µ%sfGp>`s- Z==-!Wɕ\w4W F [WG#VG: v)oTQY?zY )`Qy2B5fnH3&ArKl7n?82) jR3TBSf7kL(Z\ q4 ΅Rbɬ20+xm tH#k5YG#n4'ObrYY%=&ݽ(]/Y.YhT}r`]]_Q/b]T3->WxHqȸL7EHDbAbf9 i#Ī꘦| +;:'yxcrz=(mnpILr1+v^21ܱrʿGFm$\8,prE_#C YGh?'l2A2"4gm: TyOkՐDˎT``ˡH;I?8.K EShJh5* Yظgm=bLt 2ab?EؘSMu;xΣo+ l/{NRߘ8ѤB"ڻ!(5лr?LbܵB|~6۞]ޏ#4.?Iq&z1H"X,acD7jaawb_Yԭ Rrj%%F@ضqbuoaWiF_k)yu1p,<7emcJOTs{`7-&jjZ0ΙJHt VeNJA2I(!Zzii/q1;|2RZ?i"J"lRk*-bY8Ϙ!se`A _o jIʢǿ6xw>2.uF۽sHfYd)$Y^Z*N&4Ji4~ZOXE Hx6a&e#/xntfeҦ⽕v\,I$v;&S:~*8/k[V rGZ>+p bBWqӁ1'>|8Yy EV >daC# ww ?Mϫ{2W_6xgzEi}Qv/C赛uۨnVEGX $_=R0 kJg5Ӂ6$a' {XL;ݧ`yOd_heJfŮEKGpEr)qpf?ޖձcl=`?z/\"LۄG>h׻' R.k/2z$d,Qr SagƆ6MAM7`1)t6(B'!4L..'>>멃y"Ku#t'C؇^0ө D A;l pb LC"3Vfd|~jrP,8L SۚfHQ);4qj.ᄊB;@+9v 6XBX5y{doy>]Op+N{ \fϳ'l'@(P\F*)>^iTb24x|}4v!c*o8@T\ŭU}H:_RQd5vyv',boJG:-2 #(e>|03*YKuz HtwL.#0,b#啗u` e'δiޒ[/Θ s6qoe&,)< '=XdF_S)S6,?[ %.|_k=z:DJ0( U ͤ4Uv`RWf(g]\0Vzhi_*5GȠ9Hz2myרfMr!['=VĐsҨą C9X\3WCl5:{G)"9~a& Ƽf^(x &:'t}gQ9.|6wpY>N,Ob: ?jvcaE,8UjlIvZ0nMdLJMWT-/A,/~cɖ`Ć.FGV04!.K_c7{\m/ =$%*G.ke^#[PO:Ԝ=nfT$o-0ɂ*(!R=m MnwtWnxRXbl09PrIi+H4B|Jf onAQޚ )]r 73Oph*3cꕽzb. xN"Mɰs*y]7D EҸ*WYY6m '`JBL\ &LK/jե؉_kLU7 ˁٳɒ9}әGA=Ъ6{|adhMǫN: bB:E$G/r͡M'4RoZ1nb (8JJqAW2KP\TJ;tCpum]_qb8'jKR@W3ر :VE8PT)xJ.H$LS@p%uďRIt S lٓBcRD(@Av`b;1=Am`q"% y|EWhi-=DE(q@wd m C1t;<dtoz(6D5[ dqV QSg̦R*qTBaM.^ cq|*Vitpdb-&$~u<ء.4"Ḥ(Cb,oj LO0:nf ơ~MeCklmr:/AE/ O^*+O^{ Wśxܡo1;-֒ۼ`ʸ߿@\ yݵ[SqGN/;{~NGݡUh_Pƛz/YޓemS#Sj!7}#kpN4>& wX:A g<>0.9vז}|:Mz/79mb!%ywR5\b1B౛s(HIZqseRIGF^[lYM^2T:J|vGʖJ}EeEϱo$1_筝S[KuU)>AZ1x Yuh7+Sy\ZƊ;U$˶9IJi&3D֐{!{liǷw#3 / ~Ȩ^nvͨc妃i1rr%m/4Ie"֭Dl:6A"LX; `& ?֓WmQȢؑ8*ZVei\>_FvjI'a#WKvw)QGA*MDBګMh_tEHMS®)]W®Ca?@fnNoG$t䊣7 *sZhBȋf4n5Om ݤM첈AzCN^0=f!o_m-ŪW0ֲ\kE麘R-xP+RD<4\2 V˹ᢇy='%e(M |3G%loDQʟu!kT.Yzi4 {aBloXD |PޱF4onv*Qo{`B!6/P˧սF;!ԅq S gݻ IdxOH qMP"Gc7Qd{s57ڇgQs՞>D-iYDTܞ "[1Fv9fxK/5,*ư9=3y!Zһ#U+|[Oot;4.(B/QB v4p1]qv@Py2#pTDHUJ&X_^'gj`u(mrgݜ΄oT[] /D*]}OR?wuTG@a"?5*zGygYSM Ѹ H~ F Sā'מ O1n_{lj ʠJv-9NzL#錩&"cBF^޴Ēlk '285K3~'RKE#G]ʘ[K|apnoҷ.!{m$Q\qY_EdvU !i wVSԛb(O{( LLR\TjZL7[ujb.&^l1F*XmN-Mc:*9p_m]R.ML/86t8ç4GFV]"AZ*'Hbej@1`Y_ٖb؋wxY:3~'qG-5,'(=P;AIC3B# fPS?M )#aDMbO[Yɉ&i :U=NW A׶ثϝV8`S@#sbp3k Da<"~ErдV" Qԇ㎎5|˴&et} 3owuAvkPg#m.@&c"~D5M ـA̴Ł]۰E ͘x| KUVhSFDũr}/ syV\Rg]Cs_ǼK#-2p >ܠ0JPBg4b]F9Wa3C]~*Xȵ,j(: 58+rϑ,ش#S }/B<\Ӵ*_~x΄0Cs̾Wxi1q_$cӐq I+f@$(]!z:SX3Rp+RqCJ.P>3tIy zTBz˔@SR,5:9 W+jv߹2Hy>|4XLd3P}{Q+ iВ36f ,q|l*\]+g\s Ta2O!BȉdHq\'%G7_8q$>dG}#퉼sVuƭ12Gmk!.Z:mu=  =6Y=qM}Wڌ7c!#n9{j@Bdg9GP'j_>dTl бQ;44+\C'V);ӄz~eC./?F(PC/"S^1 HɸZ|*QFyq@@s?{WE7F/ 钃^ 6/?§ae>p6dC0CJ¡_I qRWLh u[|!תEifG^" 4ZyJXqӌcDqxfp3 AFM$\g/ }P C3?opyж gЩ&Uhnu+\oYmo2xDa˧ u.64!ȸT1v%iqrBѺ //['5IiW_euu+E/ist1QU鏦JMI~-AhWRR8xB3;@ռ͵`Ї/\ Zqi!^GBf1)3ՠѷ\)ɒ WNJظ)bM٬LW#OSk9ێ0@UhW) x>hl 4& J | @S/nY&l.ȣM8`dža:ta/p-Y68x4@#\48"+zg6soW|Xey,C_ml3/u7aتi\gxrߧ, F=76m%Suȭ滇 GG3R[ۛBƼksfiY SVR mQ(sfb@>‘q_ϓF6 [UY039Uϴ]M?rFۇcK7Q'SPlv]wɯʧSpEZ`\AbeΡ^'!´U+kAXl^1٤@Xw8LV[bAx?5oM}ՖA@~KȋCcw*pgH߻ K§2s1'Z8 /j&{;⁦PEAFA/hw6N/>r^ta@"s5ֺɛa(|%N6hU\,ucda΁{2POE,d֔ pu6s &gy2G Tx%3pIȜgIAұ8C%~YDhhģB4(G,+eDq^ Q8aG1O 7hl=0yOlk4ڑEsO&H ,Ą*X,@T5ME͕H[Z UGqV)qx 6#TB<{cun _b.|%HԲ2a`Bմ5b}|h^F[<++/CښP$Bz=EbWòfQ׀ب<!Bָ\W6>Rn&x̢֨oL x_o&``At @ޥJPrDYRW(I`l$){rXk|y3)aWꢴ8ML.i㫀`ZXjJ:L/хdd,= ''*YMY`PkXHSN7erX,Mjp̧銒^Kho蠗ݹznvIUM̎FT\QP-e>.s;ntv}LB~r)sC[fsWo %LSNF3PwM\%~BZ"o2O0ȦK(ηA`aU@9FKyM8n t)y2/S525k BށkBf/V0:&KG[hC ^nSUq+*SRdHoiG_SG*C~&5]FO1$ZȉF04N#[o&UH0YБvd>+<rl wXur~o9)eYtqUvhp#IyuVb/ݻ@M<j|yK'GB%T\6_"m ϒ:1Xb+uP)c:V qo[΁V7+n#eϑ. Fd m8!б;nіS ܮ\1:+g6˹X;jGY6U8 Hpy{(ע#Zarpa^WUrvsU^* $T\CAȤyG0©Q!A`@ Ϻ9΁ MoϷ1JGە*{ny=5=QCS( [Ϗ}*l}Wẻ)qp"ćl].#1y WfbTm2%k8T|[.UZdlyVS+7DifF+Ց3NS3DiJ&IQ1aId(>38" :_Nmn =TNIZp%S,4y`'8JUrźrgp!l,Sw ̻r4]رe9ٺ^Zƀ?.wxT~#-ksMK:O!MM0EX]7֒x*BPJ+ﮗHhJiRgGzZmBxAL_)?[%e9Pb 8~U%1{n %6PՁYˍ3CV5'2r`ƴgiY9ծfE]pwܥ-D3JC{zEٿ0~ Gџ 'pt[ifZ>]F 9Nif*`8ԎyHSDThXg8G#k[>.@Fp0GXP|V~m=ɑ}]i+`*4`ŒR,xh/Z%!5/.dW%Yq 9/DGw/3\_iGX 1|_K+MOՠ!ǟGI<0N`s >tJ7"(<<=Nh@KA V9R>iJJ0eyz*zl3l*OOSz9O% HTrMI B vf4'Q4Wc>2x Ad n /əi|lEýO6t~56cY|ӴmVt$K4o_%9yI7a\vR=T$eGw#:f Is09Y*FQE"eST%cD6L' ;,XŹJST];xE~G,@$?:Tm͓9m%G"Pde%:o u(vPcpCDB:HBRt{WaR$@ݴbML>xh:Wں4|"> өwkn8H!V_QȄT ! *ξs&.^H"|&I_qNβ/V3Ob/:o% E>8 s7( /;TIYZ7]KsXv'Ĩ&zv y4I8ãQ膬嫚^]q÷ooE~I񌎷1X ȚKd v2/O3CvY 7x,B{Í"B3vfensu%(ɀG3w.bṤ$6ŷn0_ߓdQ YP\{XK5ۡDwVGTo p# Xpq=?cZF7 4nqExnFګGbOm2BYW[fuy#X )hk<}UXUt8& aA[oG.WB F|*Z+5fIIʅ8Ee !0Zk鱊[`h8s ϪDyЗ{ՕX5hӈ-kO.&6wsuDO$?$b5C,nRs o}5NE=*`T{n7K]u$C/IUX`yF ?$i}vM),!t"GW+- Kay}qnkx Y+󗔴i Ml̈@+L9lM.źjOV:4F",䱱@1z?­/T+-y4ފśhhIP$iV⫯ 5ub5Wb=s#I<;^R#3}[^DZf% w͢[#{ԡ:9H|Iz+rwX'dPȭ KEW9 /]"g F}A'Aܘ-$$0)(΃3%{[}G5_;ʶXjb\83PI DpFn{ hN@C&{ :b6fwk*.1Q /MӦt{NtVA>Lz1w ͎OfS x$MN X9I ydY [Vzgm(̯^+nG U#3X:HV&i ֗K#T&U'5<3\D6r@Vj &*n156Tr=٠ׁn^2-dL$ k3x_\с/m=E߮XF 297* `= 06mV+LaV_ƍl}aa{5ΒMp>$>4; %bj,Zo`hƭkVv ?#{ F; $'?{J!bcNQ+%1AVs9V8[eOn[L5h1🚃TcNK9FJl&|Ron0#*[ZRu5*i0RlW?Ν2.P{]i14&[yK)m+x%XD6,IF˺ubPT-)fznlZVRsQ4yzl͐#ÛIIl3>gӮ|dE yD @j#W [2hK,tۧYέf97sWU9^of6ķ5umxW| b-!(eq{~Ɣ R< %шmA#.J?H6NJ叝'EF*Kw|v"xK`)R fxTF7SP[XOC vSAV}KV2!8V+T ۴Q &)Q9"Kn J(sui%dqKT`fzcWڵCSK>Af,ɫeK6ݒe7>pRɾ0#2,*'z|_`#ΙץWtfTSpUl%~TBp4Ǐ1+2R|B?v'_W5v_CR(ɮ5.vHv]\k}${R6XUsgD z;FO<͓ș)z%ݙׯI(G =xK z7o{iVTEm~-CȞLѦkn$jY4wKpfwdWndL,ydLOY+?F If !r淶7[|?*FtWzas/Uq XcࢣD푲>dϪ]e$ԛu4#ƳM| ]]{{N3bD 5y| !C){AX31nR]K]:Wp7B¨<<5HnnJ$uDɩߘ4Ϣ θd X¿, HyiӁJAEw5 ==\ Wy{XG:7uqviȃ_/V2╓lG9}h;ŠN2?y*<&y2O 3A@qj$̰~6'EVR6+UMe>|6sb湆Tn j}+E[M'%D{VF|Õ0M˭N `*i2BΊ%C/զZd uu +skVgGsDRb !2BKQ{!ꜰE ~J#ut.~s+g3ĕUM6wzŠP1|pf[&ӤQ<&BAѪyHDP`K2+-YzcQKmdj#5YEpV;_gsZۂGPؾ®T.wWߊ[ʻpmЉd16&)OUڊP5V;}6,bhe7`etv+RD/(TOЛVj"{ոD2A\_ʩk l,gU30Zt0Cm?,݀!t~1 5!yXSPf+r8tuTƫ7r8nwQHfFl,kS5,;p D9,Kx{og@T\<;RS9yFQ$o"Bۋ6[!0z} )<?*$`@?}'ЬVF=s& W 2tv^$F PA:"م3T18I Rqrqg-]]zjoh|6j~Ee^.Ip2x|`@V&;k 3O;_S/ȢDo 3\f(F^p63%=S*Gzӈ^zM~L݌V {bR;mˏ) _Ahv/3)XT59,[>e1*I&y'9UoLlA+wیhX"o3Dɧ)nE~3-Zf %mΠ 9_+х+!c,|Th1k|wZTn>-%x<6kP6%[ۢ⮌ڟC۔׼̮ I_õOƛ%UtB7:JNTl EI eAN[fnnpl0]Ϟ@9h>"9wͳ钫rS>U+Dlt7 :DƢ^Ų-MRkSl:6]UlUP\cM)aTXE$L"U$x&J] A8fYF㹟?YZ#Ÿ x4tU2 q.ؤeu(Kb ƕgTWp?j'DQ -Ď_{Sf~F d~Ag\° ybQiᆄ˳^PU?% 񽩖9(sP8fC<|>I֚G:a]TZnL$mEOCAݰ;u%c׵} ޡSߡAezW0H!(vJkr ۙ,0xf(/cRM93ө6d\ 8cLU%xB];o*YzIjT̾{,d.G1o7_+iu6gmmq^+\J\JTC]n qzDGSt 7sxz$Vyݞ*ݝ')R`z@专㉨J6G1*|vV]@%>at; f 39Z^Q&AD$  [v3zY"4y`p:IFf\|cF70Nҧ"ݑ4t;̎%io Ɲ-=v׷7}' /W91u/!"J 8X(?Fw,#r9u"koj<,*Pwl6>$y\vj&&?(ă !? 5CمĶm-[ݙAxL鑍PRU=<"$n66}Z4v+G'@O'[ <_3YY~v ge}j'z<3$>@Ϛ)-Evb"|qw֑ #@ϸg6k' xq] /!,g~0D;JaO9];8XHƤ'f#'kjkkA sZ^Z{#8LʏH2vg/eHQٽ"7pV݁4z&wIv;?1-f Pړh|c#2C*IPVxN2ցjC|/jz=9Sjz;>bBfk~.AڠI:H[v$VMW}}v#ܵ{ϥ) (*_;Kz]lJ+灮Ow; nJ5A΃1 ߻TJQ`p\yKn-\E_8=VD&a /E>2iiοׄ.[AviqŠ+8G=07Nw nί]4uGk@vt[^=*%M;\.%ZFDPTӚ%'Rlz*4u ^ r^]j/gji‰ ^쮀SFa(&CmЄB;1jTǙ>3\փx*I$194=7*mG|xD ϧ%m喩 [s;J?I6D§,QnvPdOXf]0F LڋG?R{gCwT(b+"y)u) ex@k_Rl5S<'UQٴI Q1gcR?+{vF(ۺۂT}`ATuPjmFO}rhLji2m%2bQ;>]}7VԐ_L r+~(D5jb$P~þY* \8[=_ჿƟ7 FuB"*:It1j/պ4%{x}(XlpV03&@:M}OZ&&%懱˯:GrI0R8qd:!QEs-_3pl\.8&e=8/ѯxѦzB: {c"rdw0FϠ/yQɨkh f",(ڝuD#R:f&IIFpG7o$-"P<.lЈ:Hzi6l7m~U%=%&k쩅$fDt%"9#v%ņzcv:DdpT7eKEZDif IR`F0 inU~Zȹ~8ȜH;mszkIdCYr.K_]ٞ8|m#"'u }Rw4~x7yH't(d/ \nqAvKj M]@ ESmFD4_jпA䷶Y0hH33@8 `Qq_Q_3M~#C+K2ymqyֈtj)~<0۱NgUqzβ؄2*f  A2ׄ9 xS:ErFc`%\n]Z55IP2S1S}=6"ҦB 6,QbBQ,!ӏȎ]/>-y .C0)(mT<6O-zP!| u.^UA 2fcL1פtˮBH]"t.\H$W߇s"@bݰ7Kd<أBUkdHS@7(hǑEҸ΋(_r5f>fҢd5 =2H㠳@7!/;N^愭IWV4v}?dh5wY@oG 1P8ӊKB2XǏm L rR[M6^.g9cBK}ER\S}&1b /Мv*TGt  ;l>}L|%ĒmQ/ҞZM%5+&σp@Pa3kF})ՠjhkS "ka*ΛzE_$x۪=e_Ts!rak Qb$8KH;bmQkP:瞾}[>]EΩ*8zq afzlJ"G%;BK!8#\DX3 orω$$H杞otr8Mj Uj ?`b`0 ]E+>U غab 8=JBHM.uB3oAe@ޯŅ8m($(!wduCNp9+])TwH GtIݗEv-E&LU =4%]8W#DaWCjZWxdSO'l>.О%iי)y[K>un#n!.)DC&Ԫߣkiۍ-soy>(ѧ􏳄2HW{,nZSb*ȧc8QPnH;p 0;Z ltr+ \MN;t}@rE}ZvAgދ>i`M 06[0Jg[X3;kwO:7*̚w:zTxm܂V, l|`O ;5v#ܞ)MHo>q+[bS>s$񜸩Y.gbUݥ{z~<}ƮjPvZ-kEg\{C2JӌqM[yjp)d%!26kc-J|Աs7XtZ``RŏEE;,LudUr*83F3Ev:¿@0l6 ٥S2GV MdNdh QӊJ6@@({K5BN|o[ATseҎ?%&g;p <'fZ^`DЈ|oCe)IWf1+0Z01&ۑ(z2zy2p!,UVH!T4٘fhY-oa(jCE\m_x,)D..c3ܡj {{-RBۧakP"W~,0|%sdpN2y2kPOP8;|L.R)vۍ}RSڈzI%qK tm<5y? QVii=+'}3Gňy)3 w8*~EzGӎ+sF@86owM%ZXeg&6Z;ްPnaRgBQu|υ}*F*BfVVd/5 ?gjt@boIFz-g*no"ĵ*Z1IvIc{J#+V^`Oir klpΉ˅PdRɧ%\9 MM/}t|XrgF%mO-E|n;nղk߰ wG>|wI7nFIotlߌk靔wR,&.o.G7xmtU8"ޥg.I y=bFJ-j֌D ?۳%pstVÿWt+=\4+l瘃nTU1&(D( c!}Pߜ,sٯU&y~mVb,brlKnt 38@JpxG`Vp*g,*vRFR٦LW!bzo/H- [!sqԨ%XV2[N{8᳋Q!,ˉz]+a9&j\#mx*;I>#1&>X6')+bEbLkh &z7vH>ohdٲ@kdcK$|~@8] d.%l+_s8"x0XFDUI:ބZ%wA89etcF&`*T'#z)d HȈe2hmbw)ޛ! H4WEJH\3<蹷[G8Qu‹k֜:~-:+YYKB4#c5> y'g*O۵ +5ժfp ɚ[F6YoSqRs4&r3#BW* ?4kcu+ NeϐHb5BZFjүL MÙ`nBUɋʏv`M{vX/9ʶmi:f2`SY{v}L?;J5+@+ԁ 8$gr@bD1WꕵYbhH5n_ :1bR}oZ;`3tͷ (WNOA-V]l8C(p XWRS`oڱkwrpⴇ<^}0;n |6\HBro|%$}Q~-?%*{ȢwPO{g*HeҮ"ϕ7čZ7,ªV352t Gohcזr ਛ'36ɴiH5yڟG2k}uЧXEY Y# m#3Hi@UՍOJ"L FmZ򑺂HYAmF$\Ax9) ĻP㆟Ky̻ #eX:QS{O-I^gfu}J0x9.!"@zUKaDѧ}t+eUi3ȼVm` {vnPUWoJѭElrn%40]s^SE4 [wҿ ƥ [Ef,[K:pϪQՆ<.1ўeEGMuyf6ZP]eإ] tUA5;"bb#Yq?`:L ||qcLWnUCb)c:ԯﱔvq>"t&u]8sjxzXڨswLh_C0h%ΨA%E Q G‚@)"ն>RGL9w9Ȭ>q3!B0~x<"UV.JkaYv=ҟ:D1x),ӀކśOW^ U55p+BZ4 d / 5NI`:5U6fVN eL@T+a_ 4JpL 5u[yّfJNYXiв0rӑ_h࡜˾)2~{@+/E/gהa 4+ 6$ŧ!Z¦ ѦU H9J% εX͇tH8R٢Rf#!L/ԤǓQjcO %#ݯ &3t6oYtZ *$ ?O:ܮ3dʷ}0KIhJ*=[_s\~ Z 6t6u'YֺYvh=ćLܓxciq㋰19%A#6J=:!-|U[MRyNW;9UgUym?U/*|ÚAV">F!3!. ӝ}"pM[FF;u%||PPĹ4ʏR&a5NmЊ`+'JQ̬62AŀXroC3ܭF۷7&Lت A0 @AK*.t%`|. lZZN9ac2R@6< J\ /6+UzʇCh8O`/5$>:=D-z֫c(ɦ`#bMdio`>F!+MfS&9ew }VvxJ'IlL! sq.?Zy8l|+¶A5Cx.1ҏ eoj(r.agOJcKΥL[s0q!hd)Z fU*l.*o|`#sI5U&: rVquAA蚒a!xf@C/6({ͷGj}S̀`"LUvUH}V2ȽպBO y45{>i4/)L{5(wTCg3f:d4xZUx;0oה| /4LWzxw짅?sAV:T@|E!zN-D**1r^CWdKD5Ug84;سx>űs.UBY 6{0SI cMQjmQq8;"¡p8zVy -;zςһ3 dF.<ю3 %E{\z"vܖd v+% {4q6[$%H=拄2 dV/fPX=(7X<暶:h rL.Bw>S y!b_$K,^&U_AܴbK$hǀUc4Ӟ FOSգg{HN,nvyIpJ^Ͱ`ZQ?*nm\^q`GxE¹/?˸\-6װw 'tі.=i8ĨOkд5(1vZDٶ {nR =Z2# FmLql~k w6ZEz57;s#Uyj"!.$;;G&M8y4uyE,N s"Zls0f wAR΅%,%,xII|2r'gPAԫcV2 2E/z /uq|y.&Cf`FWMa<\ş 'Oha_ mҩeqx a1A1aNydT~.#yή)ﻈ ǖK^h $<0h6ې㽔/%&&ɦ yQ)+/۰P<h!g:)B}woE݃fU[p>qee9[V^*FǍȸuɃ9]A-cyo3prub^o>l!8<琌{r3'ɖyG(vn֔Iޤ[F(:QD4Ck#W$\)7 /XQ}F?tDu'2whT毇я97cڑQr_ιz3$0cO#jQjy)Ϝt^iOh u(ضoDwŞpx3EexJJ͙5 on1_23q ;A;o*3pVmA=QIӗ9>HcInSq>_;ߓ֢CCNNy xkN+CSճjkR?kQq=Q@ػBoaz3B:{x (PWwssuvvhL֛4&]ѩyH,!z ΫFr&O Gs(Q?FIcb "t\ &DR"ܛUwQ"~f0`+DqI.W@M~ug} cؘ!egvc/߹P%Ld^8Dahא ͌ߦE_xxZTIYē|?;)LMAss|=h/FVWqq_M +$GYI\*=wd㮪Ʋ=]f}y n^s$wç)̶Cuܺ&F̴'K&LiCqޱUVUHۺ34p I@$h% D TKW =x+%<צK0m߿ 3?ϱ?UQ pMlhuPq(Ԍ-7"{ٞӼ\̥^0ߚS.-B-}_eyZ0Z?| j?i \R `[:Î.)Io !>JVJ34:3m%6B]e42A_7YG"|ZWZWt>DZgsUGN:Is.o Ŗ,zyp}%N1^vBn5Vzqk}P|*xwm#[O9bYʍL.T;]bHqFQFde{2LR R$XarAҵ`xik,(j٭Zk@`X1e3xfgX[&R̼ri9`Ѭ/;YCT^NZ܃ L5=68e1nʙ-ܥs9X^pLtyEB#G7d1r\pf|'Յv2Ygga]a LW * r!=-pbIQDjd*J#uRFkz8d;UXǸfLź% GغDHu! Ge㌛`9 y?*SXj"%:ml=U?fT%oqxwU'OQtCyRM㊥g"aZZlSe*9iGtwGeLԩ5YK}ŻH^닳|uo4b߭.aܬRCJfFsZJئfyluڜڌi'ڷⰔ&4U2;i OQƹc .@M/ o59^ÐA Uё8Y`Sc>=z}I+NҥY͔^&h6iCYԏjUqæmq&ME)uhT:ipֽ`œh3/1ؙzJwv45(ESZs8}ɞ+mF×0Me8GUf8l`@7&~%HjFIƅYrH?<<* @e'3D^m KQ7pK}wV[-v|,mզO%{5'<%_:7<{S O}H#:~{L" O vKþƟf賠A|3#,e\ޥEpO1jYOUPuUBai`2v{Un Y4qaO`c*$!VӏecAPw圬A}#3uj φ"*Q#Z IG6(r¨(vF򯕮ߗ7zODa߫F9i c^~ `g3kE' IׅTc{ ]hZ9RP%GH-{!Wӥ986M7`7ܮX3dĄ3 \l5R(W@3(-$n70]ѫA@J\0=#湖/N )FX 6L>*xوh'3*^{d 6%ܡ1H\~Ys2ߙo-$8tS: ((IgQ_ uDF{NnB0aJ/V3O"y{0UBH%qa!-6$r@asS8n&pHoq!pfTS;5풪 0 =G2W ]h`tP΀g*6eU=Y/"̝² Ga;sopZ7]gg8= uW#=C9 ڂ GtH7 TcnQ&yG CKQN '=um]pnN]|cχROT2ׁ.5WmJpc充VzϼZP\\sq xsϝۑN{0Ќq 1וbq ;.u1|οUԕXCS1UN9zRm]ΓPbG/(1P>b~FbruYM2Ndq9v`^"XeDى.!w[%%Urɲh%d2<շoӪ~2AT@UaYx_OA+Mdgi#W1.P'_1h&-V> i?"<;rCAJwXR;4 6!@W>!{m1,U ^bo81wn毕@nl8*nc"=&_R[ĆCt6):RhVv u ͜d۠dƢRc>)0r1)qiSӅ kQx#w7t꣖/p9m}J#2ClCw TJؽv(cQkm=lll`ŋf{;rlꗊY<;XMpځ>b" A03Z%Xf߮寞*ۭ/mbh3o 42U(]䦥_vеtO;91ZDzȩHxXCQpl[蒥Z\~Y Na/x^ ,$?m@P':TH!DOo*LWT3zэgqns2Ȝ-AgH`Jot*tT{PT;gaUvH:*jy`w>ef&DzN)Amz>ն5W 9BY;rD0%6'W8;5sq@;jv:"6~R`xSq%SrEI SPY4Ir&$;,0έbd1qEIfb)&QKT^_cTiͰ0YݦFu}@ȍp+%AC+Ҫ{kj[+Jy]*R8oo괾ixɑ@E=-pmk\ ̜Ewa L"I¢v?xv~>qqEszf'NQT9ZnngjSv[E.^rH q~b AѢwݷ!| W ɣTHT&兪WOǛs#\Kn:;?2-X`149c˪Y[quO#F?Út*L b6 `/wӟӮu [",j?Z?`8MJ`=@\hUѷ9;n[mx Qog+×~+4I4YF;@wH(/dn*-7a>:|dz!P"@C\zj,>w%iр DtKc=ʩ6*Y1x{R|!cjO@Ae>߿v=VBן*z^N`y(I! ؈Ir5;îʽ2pSΨ3h]*f1ޞq |ܩqTR?& KF K3W͡r(Kr&sต)} Hn`&[ꥥPWFG{$*dPOt+]hTe坋@rҎ7Dnw&oIt\kUNm_qg)<~8za!-5Pf2Z|\Mb=fFČ/ɨQAӈ w_ *6CBI+o fNw_gpqO,0x2U:~j[UϽ~9uakMQ ,a^`w=g8f,5VFZH5"}>j^䛻FzRv̍sohX{u1gzy Go]:{:M:2$C;8$2ޓ7[z*lIީ9%9$[hǬ`#g|NqL}H1,X8c@}#Q?Xz "b$ѭ};۲쉽R7R⪲HTs^DoΰOH >:;}˪񇭆7>c;nNbWRkو"6~`Z' RZp$|\)/.(Zwn ym2l;^>Jqք$!03S v.E?9 n@bH,jd Ic\\h\;fvu>őfwB7KkX;.6ӡwӒ}yvŠ Vmwʢ˽c-FybJD>7gotm?jrs/"ۅNMYGmniӠTu!uBxm4G I^yBH匕UɎɬ];[am~&ns눣ǹj{5Rr1S_d<]"E`k`ˠ@ƻ thbR>cW9O_&N@#GCjÄZEe GoL͈Zb*A6t16P( Mh/i~[i=1s'y7P I9BK418~tU1!-75Y0.Z f/o6,(X_1SU0]b=&uc~$o p6z=BjޔE0eR DxG&zցY"hRjuҟ}6ாF*cY,c4SI%ݿ25KNBn*.Ɣ$HOSK8)Sw'ezYIYT)&4U* Đv4=kl0nmE{  ܁j2to9Il']W`X6:* x̎>)(WܼR?!^d[q3cYGP8ؔ+_?ᱨ\t̂-`p_F}cY4+s=ShkJ$]Im*S@_$mf@ʆlK:GᲡjDDUDJBib,7l[yP׋3Kp/lh?ˀ_8F]{mn뢄ဌ}yW[?֎b6jT^dx7V.tD &d\JYTD_3e# 5ؑl&+ t;VrRYA3l[`&P aiyL?ul} .?AIߟ1ux`" 0wߺ~ :GqI'HXCqaYdHKui1%:S%AB/V*ghUB | F`IMhV^=ë{yMӆAh/dLg>%t 1 񧏲ngκ}ZdI]c L,pwװk:F}z8NimzsB~56M)okxhqw}]3=<䄧YZؙDyP+氘gՃ Lr`Np|IUˉ; %{Qڪߥف L(35k ѠEi)O0d aNA{ :⇷erjT0z8@-ܮbg/VM\jnㅵ4Oi6޾tfQF.t~dh@3Xf[~ y{r DVUGmxêltWHf[@b׸\o7iW vdp)أpCl0/F,0VÍV !ocq+B<+cn n6m7\G3TЏ]L jl;y K` L.o/ N* 6g%Dd{#w\n|>#wSVBZ9=ͪyK#a $>|42/9,J#y5Ȍňzݮ.Jj2 ^)GL:P\=$ARKA-s߆*V+ue=_vԼ J[Oe CJ|XU$Ag~v?G?+>kQ/VМb(L&n0"{nxCvʲ' /3,Po:CcTuEq& !QLv?(5l+`C{\>h\X#G#Qj/`ׇ 3t}rg qpnexZ)/QEѪw@!.а%oV_?n=Cl[vzKtǗV.Ҭ_:JMzIC@H44 ̾' O=w.tm=ǝYr7caYtbAQ>Wzt9Ũk2:zTF }(<בf."_7kp)-qB\->cJRR*L*4f8V<͖-i٘M=O6~/Mu$wEc|7yCq0 }c9*fTU\Dn}ӠyC0a+y)6il=1 xy5j)*UlTh64{|[|jz%T݌a4oҲ 9Ey KoJMlJ #`.)O,agCZ/j>O%yzyJlg8AFo6"[Wy #nk߃13itF:GE',2MNu 7-8+c pif%Iqj׾рNfV9c =.Ϭ_iF_XTCs^|,a¹L#cnU4_" ]I ggQsq3)|fGc*N}YPN7#IUz'3 O+ȝ1u=p䠡K%N>Z.0Z[`(%Ǵ@F$WL{1 ̏.󔗁yŤ3#fѶbK L%(]tjFw^q "u>kXXXE\58~>l֯G:x]hsb|q38+$L ftz,LL R2GTHa.u_PXY&?Ⱥ^^/F|}ŢGȏTO;A(*0m{=g@z&<#0#HL-=laY0dԋE =fڎʴ Y,xv4P6\s4GG$gv?m`]L9ݓ[nln{! 7^h]?TT|YfJgOx LrY]d JL^mnslu{$-;x1M-dl#-cAl,<;XD`h. ]i$$AD3^{+q?|]xyQw W}xob{"*^gZ/p=XLN׼aNrw(,|K˦> Rѝ_S9l{ #P(:H|l`ɛ;!P\~m{]%=@Z?+Yhy!X纛+8ÚX3o|CI2GuӠ 9)'dϱ=8 ΟGk qPf X"'S& p;#^]u_~a2jYq:h^)nRdDvlg"jauxϏQP0tMvk))/ҳ>`!f"6$6 d``1X:Hkd1/C^՘[mL~禓jD1a+kT8㟝LKU{G v2&B:1L~mhuF0LQF O_֕m@s:J~2eտ~f#=)EL4h^wm/TR{ĥ6hhDF ]̪#R]uސӍtPTtq痮M R~E)!f{Jt UZԨ?$ ,M KQpG]ya$NqGLhi#)~vzVOfF%. /U9ٕ^|r*f3D/Jo OMM1Ć=6p\#ty;#:(9<$8F0cdy=\ i@jQ26#1a_8&xw#e"yErghD[[ff o動@ u8 ab{͚pV9QSZ)4쎮>Wiq$֎<Y QMD0@,m8̣!9ZpB7>W ?;S&ͧKԥQ_Ł3In@],9ҍ;rȜvǔVァ ψ!/3赓$&Лhy5]ih$֌D O-Ş`K>-5d=GʟA- \EIKR4o 0>͸rfs*?h#uwV,C`m;Kaͫ$<諎yA(e4?KOF@A-lmQԷ f_Ns3F1עaWs=[fKׂfXȤ~ !]! `(VOO[)h-e/fR bЅJ^2?!lݞQ F5y"SqZ&{b_֌%q`oRxmtLń|}u7Qb1FtrfCiS ۿUyOg%\(=RW^5uQtlS2Tb= cQgUL-5g9SMb}V*j#?j܏eެ^)Lܔué} Pr;moPM,ٰ@>}xڇЬxs~4[­THeG[Kkpmv"I )W[(FyB8 [׳ %ưѧ,7&\+W3GBLB"fl|:PGlMG֫Z o"H;baty$7qmu>U |*ydܜ%A ~CnFtΩGfLś A#r/v#H;fUJ*w)\ Hڑ,Nj $j=h:"UGsSXφS?dr`habh?vx1Cs 'DMce켬.+mY n;;ВO*>(2F"^Ή@,܂c$&R݁])ΏKMn|Cڧ(]gu ~l9_}}M|NRBCvfK^$;+mw5%SًVHD7B82tYjC˕xĔw?S~>{D W ZPݓ^v$ӠNQq}֚QRyLԍt:>$3 9|[+Xa!9 w,~= uJIYc6欽񤖲o/pwmCu )^&*1FK&]ԯ"Xz+KX9 7+wX\~{ y!Fm=&r\CwԁЏ49R^7<.ɛHt'ҞDpzC:bDVҼ&&[>՝dm~W, 'DD=c :A*qj9xe-f|fUeOA!BQQ.OT櫩w#B $ ]YG&5V0~6Ww@:"Z.lΝQxMEVN"%??AJ+<@ozxyS;W:‘~ gdiQpʝkVӻ|Ex A."^`t跰( +R0{kdoC(LXJ5;~4&"NVEf\p9,DZ'' 4aL}Kjŝp<螒;e/;fP8? +@5:&F&lqc"|= ,{')3-Vj*+KWI|s&[7I܎F2㱾ZX37%3>ox.Q^d' jP;²RY܀C"K2cy2!!tXn9X1eTeGx\"i~&O&fv}gYqB" \$ZE\n9xtč|N?M' F@(1%KJyz4ga} ;]p*!IJG) X?,0PP͘/"@N7f[<`fVBP O#rL:d|G7/|@|֐`Xڹ!;*Zṕw2!ecx2 >yibiC$8~Oe$ 5~%|]-נlH$i p|{sB7@CMvSy5Fy\E.Nьzߍ:#ѠUC{vKP2EN1KsOW[?#Vvp@ ޠ7.(E\"(q؄gGTnh.T>hzV8 Yߍ%\jHXkUp2ӻN#9kV> 8͢yY{.c,{h_'NtG+=֕j'C?&?{s1Pm!^7=缆B,+gIRCwg~]]NQD+\%Cm*b/ :8pj``AXQE! mQ1!'TLZ׾d92Α][rTZ| ,F2ɗtV,VT+-q[-'#C,T~GU;ʈE-¡iaM\@&I+pd3_̧iW.!jAu7+5p6,WĻuפA*[ᨋNM=oAצ|6n" %[TO&&; 3anG(埨ZMu7|+ ?X}I7"xrj\-1F:hVr>ԉ c y!ѝ|/us{gvbnX wYgGW`cŹIg$ti3 C\ Vq^=w, ]Mŏ.]Dk3} a3uպ(H (<~ ^k 6}B|E :=,RD?6|?u` dG{;+*96.*٤Jv^vQdi'S=E: _'ڸ _6jxix~u,hjeS\ɧzI8bV-^+ | Ͼ3ٹjOEi"]RB345N6Ӓa7]DOǖRVX jNȇ=O!Mŝi)kTr0$ŧ zAmm$1]?E974_r/we oH?Ycu쐚>vQ׼SJ8NkJv1F)z^Q=/ o(I Ce4ƹOWKgEnJJdyB R&kf^aȠ)] ZR9}]gaNiZ .gP49г2wۣDx5wAsIk$;p]L J/ї֡,Vד-2uiqgz4.(|[*c埞ͽ'0ZPh|ZwAL3~ \VUY]#/};s6_HW`Pf,T l|QR*p ''Ͻ p4M/crozwyO49XzC&&kZudpT:v6ǰuOJ""1*(aԐ7$tO xP a8x3 aDLߟ. He`o)1)Z[@HB|F%9 ņZ2t}Ni!.?"3ZX (AI~92黗"h6]3D*4cpp(Qt'"㴙-АduÁ2_q-xpo>U!L5$^13)Jċ59׊#*e.>pMkdHޘsc(/>JyS]/8TlZ,*q{uӣ9h-v%L ${e=RV2&ZFxI56ʝ"%E{wXV vN&._ Q[+^N\@;]f oj 7Tf<60'K#4> R kj:v{!Lnz!PyqĞ~.S: 0˿0Z;ڞjצ7 X (}]'wFn=R5ѥ6Ujn/' >SÝ5dD zzT1]`IU\.T_GZW7ZN/իCzB* a^ r 705oLj~y&UbC>I@aM{@$WO)0v;_7ls 714 5Psh{v yRT PKv`[ VfǴa&,Uj4~TWy^f|RS Ask9Izf3T]\eA:~%+Xj uN}3<<[{!dIk'4^kdsMxԡҘ.>Ir5j <$}6k;m_Jrd^z?n4 d4 *3M;?S>D>C%z.Q\#A=Mm8VNiuJ0@T! ^HZf#Gt6 Zpgrq,g7*BI}Faz5vQV7h+ӰPFMA C}`Qu' &C ~yb*_%ə3 .LwIpW'$_OW^/U#XJofY(&Ӣg5PTFp˽GtϚHXlxPatR\BANqZoxPˠ=g`K6EDs=+*@5sWCI^$ȼ xm?M16Kqd^Kkɪ&4&(=T9ZOﳤٕcL瀟lʬ!U c'x;F2ֈR ]у7}%74|~w70q7FJ63]ǘuφ6#A{HpM0 ! lp|Hh^$ XԽzmMuܩIke xe-jFsh=x P!{KbEx:0FICdRZ=]C)^ӡ{6I[ő$WA ^«MpO\~qÛp\:+ 6+ս}kڒ7 02PWxq/ctf;ao =#Kׇ~ųaMʢa ɌjDOFU Q0rhOnG9!fۤ`zdx\^Q_lR ۳Fm!Rp ay"oCqӟicdn-$P?v}OQrBlCl۰-?qmL>p/ @bɀpc4VM?xA?Vhd/%\3TM|rɨ3,qhuj5yu(7"J̳88 !<3Nm*fD3XP!#uTuVu6,,U4cO+"b I?ˍ^q_kL | '8Ʀa囀ѥIvAw3zIF8MUSoq!El>m+nͧg;cFfKa^+aXQΧR,HA0;hdlA-F8uoLDWGGnk:@|H 2bu\ Q=-H+lSʘ+Lٚ{l66Jd_JpEml!2 󤢗FBy{9~à~3\__ ?<#wo\&%,3zS;!qd :fVbb\s tvrY7$h?D[k\|wq JcJC@~C[ٲ7Mx\sH0^Zt~pA,ɺ9݊Keo@۶50X.C޷%rU{w]X05v#,iI<-~ Y7އgOj}0:+$Ui[IþL U>NSHmmDӑCS\\J\;rc *$2J cn"=4_h} AZ9Nzq[yfV|qApV\Ky1  B02(QUO٦FB+5>)HjuL_L -dj[n  _M =pRc#p**gx㤒ڊ ,$lx]ŭ{IV}XO Z\q93r0]y>c"4jl)w *o'4|ev?::.ߓ[:~b3Gxäq,L=\Tk=sIdCHCH]2# zj>KnjvEȢEQ FzWxIޝ1TtD~ŠQ>T E8_"YP][dIq[AOC,H=րUiM5{Sc=.:,q%~S>trﳯWK9,{a||d58NGJ  /֊5tZ9;4ŹɤB"K_\ [݁ @b,K4k59#HOI"5ubf_'NΑY߿r(KxPFH%+K5ꪷweB e;cңiPR3.4,K6g#">9 Ƒ̅@|S' qMʹ'tb2J>vIqm^/p)8z L\Dvxg^`uk_+gɰxhۡ?4D#v\۾ɥpTq%3vr\3g".hD}eeq'R1薗gVоP&;d552v̟ !{{8kB܅FS NvmYͷ=ھ'gvߕ fæNHU.qA۬1z0~'5]~zNz(m?[7 @PG?}B9e[/<\4 /~i"̹ЌqpzȸB8,/ e&y *S+`M~ǭĀ9k8'7Rk\{f7TKҠf_C_L"a-ao$ZcGEK&犌!P8o 2r{W(阃K L%&c/L?R K= C1KG6TdB%x M'?\v:&=eLzNAvu-5?5: zVj:u]wH -LbEp%0C!!ᑿ X^<[B_Ȫ)春@6tmff6\lxik.4ZME.?#u|ЍGdOIILZKAR3r_x*0oܱՐ}3m1Ȁg:f'0bwS6ifQb 1a{ZcFL.:HxM=b1il|"=@I\" *C̔ Wa(~gS GU1qsUπKp˂`oYUϠ) W \$;[SNfm4b=I:_ns 9nsd /Ͻս-xűFeDc%Ez=is=[uQf~Ymg>6[bx;ha1ir*v}\}xd Cڥb/[W 6vZՎљi)JvOک#wrs{|oKP;i %v8'V0ES ycWRkF`b7"l+c|g5,P;MKkI.i2L7mxUH 10r*Q\>A'/6 T tAcC?1VsG+}_!;8> Q@L]j5aD1ݝRm'?]3 q.QynbFtji ΨO+aAtJI1}!P9z‘0?h__kAN|/`:3Y։T7uB2e%=댂E7X/2t[h_K}Q]zy@(vfuȭ1g(=;Pcz[CkH؉zYBM$oŹ8~o"胵:.cenɡM?bsgVsE]by Dm݀L*;U+au25H_*wf(KRw.#upjE +($6ҹT'ba;㖧`3ɞWӚ. Pq 3_|(I.5TˏoG㩡t͍s{Z$; 3}p"zq=Vd(R"sqUrI kBnAvG e7I /Z}JQ>$E7 _R"S|#:^z3<φm5>C|SRIeiԻlnlqAl' ! vyMp aNоoVeΊɎDф)77Ѹ!ݖM DGIN&!N3*Gua"-dLoTJ_W&-f_D&AN\/1OG=fG1KDEiD`MdDfȓEPgt ?fTXFvsut >J݉7Ysu5LVhY#l tF`[ uF8F<B3a座 ",-_vIkkmDG99:#p8Q47Bo"o_# a3F f&).[/ȥ};@{\kMS> d]η˜n+~A,iOTVC)|d5KӠ洠z\f(k2[x|LPQ82>ARQZIHmthf@ 2h=p}`cnI] h0.2- 򹱘=, Y\>o-*\lq9t\GH4SDLƚy@JFz 5~[Eb H7=g|?̾ްP ."dM*+̳rr2waϓH;p>>X8 C^A\N*GERqل.msPr(DgiatLӽQCK$NYZzIf.+[T-]Р˺#差!gsؗl= ^#i0T ׊Y?X۸)ՊC1p+*)j|T?E"2DLC/2P >ȭ֠{S]xy7xƜVnk:n58x[E$ ,v2?@ЄruhdC, Tho@Z_?TMUջmZdhuKw3Lc]iF-;j,F9Mu,kh7 ##]-9pڲrmb,H` T\ŠpZgs9*01Ɲ660-2Y\gC %-Ѥ{|.ƥb+ =fz4-Xvb?قE DxlhoU!/NUԆ#{r͸L7[2&|%I93 cUo,".Ry,_DOy-(5:KM1m@U?W8hVOVknK%Z;dfx! S"!S<5 u:v &RjJ xyNL §4m?kNپ௥:7v/seQCܜdP/ thPJ֚1R^-[5g7^tA`} ݅2,J vtc2> K>+xW\Ɔ NJ:4KJia J0Sp<պ#2ꔺ1V6hd'}I[TQusf:{KW)-:Ff q_ n~y8.L=__БH̤r.f Ж-;!'K-ڄ5'֖/$˜ޯ t!Cu*q,%76c$ FvP&-R|@jrxʬz$NR9iD.%ta*R jXp'^ws}ȔctW:m B-M9fLGZã,LMKQ@6Е˳ǁ+#QtRy aQqyˌ[x1!G-|p5it~(na\)P"!/p ۏ6$Ky[y} !w*7/Ih2/GP8IiqxhZyNC$ @F<N˸&+{_>W:fTE5 [xۼ2B`Sca%)rF:r O}8.'x#u -ÕJRS (D?VyNZj5nA[ *MX?ke*fzLR?y+{!t˔yI3szH0FtaBvAnoqZθ3*=B@Ԝ:Y!1qǾҫM,s6]3 B}Zƿ.*"c[|g шܴTj;ԘǛ~ N ?>g7&M`U"se't 0NZߕCQ)RdVV {hOr&>oݠyK@DNcɖJa g-ԛ=±!Yei=3% ?0UIN C}45?Mc7\+mQ:KW܇u -/?be*#ɷS9d`[b%lGqnesW@%zt~9M[1"~c8n-z@-$z 8=萲P(YQEK }Hht*,fd#qFU z;ߝQۛk'CbWUW 8y e:{lı]h,\й\p/"pQ&?4X9cQ8[-ٳ-\F \߁N9];y%s6 =K,+ٛEWbb?5N\99-LպNn ?*A'?vLJM7bTu;9M3d.! 8fp~N'<U < p+Ү#M$^$;[]Wd(^ 8'n 7%/.d}E"Jڰz&:e^=<" "?k?=v\h6$ 2IIۣu6Ny\al>FQt6a84XJĔ'd9Glk}A!=m ]IE"7 nMٹRtdu\,iE 8c|,ḷR"sޠyMJNH{WBeUX+HH 2WETN8,dn uQ9tA;cb 6?Ĩmp܍o\Sf&|ɂ̆l>S3>|RWsy ʘ~p{5Re9{fC(4 DY䙩&z/ᘒPKbTnX/tY"xu~*8#᳌,5]ù/ߨ͌e(`,VNP]"xȶwI48هP"7`|)`_0B snr $~4e|\f57Uf43=q֦m5i73|矣D69*3Ksn&bfgWivQ~ D#|B)󹭘!<4\[;MhIͿ8T%ZP +ߍ̿\EP)m4Z,^rDZAJ_{I8TmcJ8EˠNMH̖a)K]0:!?vjLoBoB `ɬ&;x,g_ #NHs?̪A[sJ ;ѓAmiJT>,3L;xENs'lM!1cegE?y}w\df,m[S0qRy1+rG=A˗c:{'v߶̽n x*hX;_HY+mzJI~(v +oMu˳;{lCfx2Ec&09MMʵMaǐCWj8iPND5XJWK(v<ԘC$7 _nVsBD6_2cZ~FïJ~ @XjB {e %'v\0xqmp,nH5+u24Puv_Ga,"_ 0Qlƞ ]롽tNf$l=ӝohǎͳ?q|֮pJuAos]7TupxYƏʽs_\*uƒ2PDSI8* "˭Tꥋx{nɉK*R&J`Xp}>? ],)-7La;yu +4< OՁ|` =Ng& u jUVIeԨTCqԔ쎜;@-ʌ0nE ]5C {RLGh-FuCYBx`LnP!z>_&?ODCI!fOBQ* PSmZb' ,IHzEe-vk)pqL+h8*ޮX%H K qh(}<3G!E_읠TKy<4Ah Ӱ|Ў-|Pځ&L̎RҶEXum'?j9#P㈜^4zOaB{s`9;0nmp~m&B;@r ?kt0<9N`m9t8#x]lއИ⑞fwsy2uQJ?x  160YPIrCpQ# ;g9؞[o5>kG}5A]cT̯{CnmfUʹV$ib4q70=ވ&8-/r8'w-lM V z:nR7/GkIC3>2:yGZaI}Ͷ4֨ٴV<fRkjᘠb{$.>0u ņ^1&-nİS` }>) /~s3=cw8-X)#ǘ$ ?x@dE bvu0}_>1v"]#xFj8V7ZeS&mw"(:scJejPJ?I/C"'ЂC{^K{>JBUpfGIZ U^ŐM]v@_rX tlܢmd]g1zS1wi[R3sUω% RN)C*1y{9#S{4j Ẑb`sk~A׿g_,sAJ-&ͬ0fEP 8A 60RWw1?r{ H>v-W3ğSO)T1XݍK?Ѯ$>o s:S7d̻puVXj-*kWmḀ+OI~ Wq&*)-ىb=JV5F95y 1N~Hs8rۻXda/kq#ZxA\osi>&-Ǫ_+wK*SVϳI[ ;UD.z O 3AYh7W3?cu3W< f㕛?sI:Y״GղM(~קA3| |¨M!DS/_XF5I\PECBFs (Z QsIM kqX_4&OǜPFIm`43IU|(+UBJ0o-KSbbIpUI; sB2$ƋKTp.3VӛaFR5ۧI]JV}~&~ψ5fBSıkCl白L촚N3cL~r+Ƣ5$)<(̀BmMy?(/)'82߸?p5eE)_sܤViaZLlvAʉ.w@{^ $cPcu=tIya72Qo7#'F0 s$3D b[کA/jL'8kV<.IZwO,&$^뽹fu@&k&<<}Mo6קl:Tw-0]nW1dXksz5л~?Q% ,р5obWKkVO3C3lMm_3*e2Ζj_y"d=N6Nv4'/QbA'Fq03/%ݨ1(Z.)K'koA-,3-c=}hRxg\n&>U< rm}4;KF`kǝ'L o۸zx~E-j*\7;@W& 9peG:li{$NHI;pj1# h̠W)0&93 CbIzVTgJ"nEJ3͍)|Sr@2(ml{m:$JV.@{V\!Q6)GIwyp3P:ȑ!/ma>b Mc$4r2uOlz༚ۗʕ$rNwjO*MQ)i>Ίr3$%vM+41?%۔ ϛL~ yHkcR%-y\ cy9Pu%VpsKKf#refvQ'巾6r_K3Jm(LB߼fN!G_j{`!KY紃3yַDu'Cת)s͈#Ue"(?ԧ2l3Sę4~7w⇉K Lz}C8yQx/XC:R 2fB9d@WAX:4'z Ra޻;SBzfȯ1U x^zU߬<"nUR4㞆R=DBLΑꛃ"y8ӫlTjY 74ciOV>߻a|m01#K;CPƆ^NF@ѷK&t8! aB:X=MÈi~;D?J4&'G|;uk+ze`JpoWFps?jCҏB\lQc9Ro5ͯk#bARjuS'wM 'y4 Ox%G} 'q[lhX_ƇP۠^=k㩎"iHpRxc2xI(1,M[4vll@̉g 8C?ò-T&. Lڇm y'B<x`twtPāz}hD|\$o+UŠ=Ɏ  =+L7Q3Qΰ:Ȥ1R.cee}&Ab|&Ad_I0_|űĪiOnu;@!0<@hh$ot'PKoeo=6%9]E4`>Rv.sa-Ys[nҩŌULHT]NTsfM KSQApWI'y虯׾>+2}^ (aavOb<)-1t1HkJU w` -Y`Cc섾ěYm8X~lh';9lE˘''Pz+"AZŀ1Hکsl=1 A~k D%^^>sQ2]٩Q-]Gn <+uTAo"q z@%F^QR^OdD[j튐 fᾪC8ѼNI'Nx>%֚ fYG\Gv`A vaE_" i˳^wRǮlcq?@'To CcQ v۫b0Gc9Ie : q`^ á*\EѮ]"m"0'.^+|ǽ..J `.ҽpٕ ih{ +aWJֶ!7ȶ D4gm\fdCY s.Nw>>0˩Mpp-[8/GƐ%*WP9 g"IG?/$`݉ ]Ttvڇt"=^/#љ=bW>N mdB2\ug+0RSL'\Iqc8q~lַȒH%LŴql zVt͊wkDjF: :D=S8usDU7ʛb`ӁݘhELf^(9 "kݰw =BAx'U'=N,/8\~GIӘu$P #y_y(KϠ3ާg>O^FO|(${7Ǧ9Muz AҀ~1&;OLx2͂U.XD0k*hҷ@.G0HUxX?یKo-&vg_GiAtX8I{@ljǥ_!;gѠ-Ep!I[=M';1AdĭHKfA~_x%NVNoMeQrlqvWHLE [9t F%wcNu1c=ЁYJ1j!bZJ ;$ vF}=ׂIeOrxmxւh ]y$Y,{oNc_FY? a=)k"ts*-Fgۓo,&  -я)s7M|eۓi_F^{)++92v,qG>#xBj.(B@#09/O=:âaFf*ڤm]91fgl?Di1ލ%6z)v;u+Qpg*Ե-*;a+=މ݇boՙNOJ9l-$iHcV/z1NivSfFeU~Dn9"8ށȵ B}K[eξ %Q *!vN;,3ƆvX=#oaYbSN*A0Jrv~|fq%M)k!: !\[:s#mkճ"+qY # X~U _ƌɱ@/S4'$ R gǬ7OWn0*޿hVnMN4KӲy("d|rT"D2dl ԟ:0ҔoA'D҃KLOa,UJpd=X&Iuo=sS? c92զRz/Tsħ[Os 3ucԻ|K673&abf Aw"2 u dR. 95\tr+L6;sh(QЍ͛(fgr"_BXnXB4gg ;Y򚙄^SpyLHLLɊ\7;>0"g+kHG!:}xhƵ ݸwį Niֲ! fG:M4BØߕPS"b]jV;i7 X\vp;f4-L>s @pojGg >iZ^`$f]ޫm rso+Vz'Kn=ú̕rF:tsO%/ ykIO-59V]" B< *.࠿MbD 0,rϮ~{qTQrЍ]dkʍ`Bh?01>OzoBq篇&҆[_wXT>Nsl|h֏4rXhq--w_U[[Sj \2Y]ʽ6}fO˹Y+Pk_'JODٌ{(ͦ@Jѻ UuΙb{=[@q=a-[,#/tB7r]Bi: inP)7u ҅kyoiM'#N/Oo ?]:XzrQ#z΄0Y(}y'^"&9ݘXoKJ/KaH2oR-veLL*E[`xPu]ۻ#XխOHxVꟋWQ;7xq !(Dti3"/j8 f5|꼾Ξ̓芳bbvWcu] 1g?ouG)"\]p$j;:iܰ7 4nFp-O1zr4ntvtkj^`,Pf!,tB\hl  ¥"3,Ţ`+4O ;pF(ݸ4̃ԟ,n:ffr1HOһ7٫RANn|M[P*<~R9(zZ>3T]W}0 x@HMdN- e[J&:QYѯgqa@,;VKWCMs|GֽMͧjQkޝ+aۿytDW  GΏ3 )X i‹Hj MqLbڔ0I1noQP1 FZ:;m3|iFtg,{< `^PQϩy:Uy p%G0ecV.dSlVq EjtR:2gf u=Vc(xG_6' Ӯjs]Uf^Y6UG3e[) ë́~oP"鞅ѵ4q'#o儖~oz_l٨QA8RVձa |1n]8n!D{vŗr"ⵉ*ZXX7Jv{E{WBWsnJ\C.s"LQ h=>1+ț j >u%#NșUF2tMkACDՀ9 3.eM֤dRWά x.}\Q{d2D6U`6Ft5-I)Ve2Mp(ʦݤ@ BVc3z[1n74gqgb&lM*=0P?eZ].C\d?paB~BgKѱHh?]N+~s,Z6CmK4Ρbe`;+['u&H+&-j57CZI.@b4Opv4XmS8[0E.خe0U=/{活eG0S5҄:4nVUa zԱ48}d),vn&~T M5v!ldWApj ֫l7Sgpq`Q"Ͻv{S|p.-кo!iob2AzP HCٟR{6*vPN6\ ޫIUj1F-> ͤA@ fD)J:L `Zɦl@r8 Vb]<V;DRM7E9-j0ض qH1?FԓdSh mtuWi֮̇&HO|]vtĆZ&T'Ob" e <tdO qO@15@.Ppu_*@(=(qdGJ\jFAdĞԤ2_'}3%PMQ8"-'uּ:̱ B=GճL$R`eQk;˄B1ޕ39|z?NRr<6=]?0A=01<,DDŽI4 B {y ~:_yޓېch,u旅`p^tz{8Xiu5R蟯 Cqc mB=Mb8klxLN/E%{hyB],Chvbb,/[<U9$^Nce^%.MJ:_٢\PwJIlM;]ݽfJ5@~q c+?ۇCwSUROE5,Ru\%:=jzhY6&ZhGT%[l|Jmt8$kJo8#OfNڢ\$u(Q' wcXOeE[-z!%SFar)BZeJ6)u'SyhFglg\e`Ipq("qD/S!"ϖ :},qgzt)i֟ɟ`OIL]NMx`l^v &dP}Ϣc<)ZCV0F };#N^JmC_RaRC(J9"ZD K˥b2iH2݋sUp2ãi1L!3?mV_B>i;؊(0A$dey}1| 5|e<;QfEVg#s=ca7(dz])2gJE.Pt-Fy7o%DxbT{e5A<Rpyݞ?- n},*){(5y2#ϜA,|jqǣDS;5*qPhii%ȻCGQ5ʘmdبk8f _nRjS6ȧ?kz<(Y)lѝ5aa@A a3] \~ XÚlTA~zoxBʁ@I^9uؿ&_A9JkSPH<Ts 4QcKrK##Ҥ1 W- &٥`Q5Jc2xl_Vɢ)ί"+cR˨T؛u|zՃRmcz5B\0njc{l!:XՉ?ik#hr\juD"yanzn+ KX53y#. ޑ_ #Wه_,0/+(q.5wPbi7!cA24| yJ(?Nn͎^I6FBH]Uwa6BnV`dR&fR}玱 沅=ד@f1]a!cCg46 JYR]\t$Z6M2A@?}!nT5U1P]o̐w8p"b?$uX^ݗ/0)ɉH%ՠ?w:$\x! ۔$h[*ami>yK1W5=_f\4{K闲&~r2"=咍)lHLbY̹2RxbnQM#]~yljч @ސyS}Q|OEz91VH=[*!`QLO+NG_<%]if7m㡒[PS.s\K>jE6;%:k tChX/Zs+To9Ud@,>m:L[ӭĭHx%|ϒb-D94ufi1V?`&@S[y7DYIZuG)ޖ ` w/7ݬIy/BlfN1S٣CHws%VBPA@K\`Udsj@+%f]cE[HR~-~xJHyA=K). ctmSno%] ,ӛqĘjr ,drJ=DDGϴ;',aeȞV`mY negzy¾#P9H sFFr0)kdtRl\0v=~8 s'z:>D{BA=y~GCJ0x!~qy@t-~[ͤ^}@݉jo0TB=sc؛5ī&?ٖ];WyfCdx1sv0ѴE-y3g6]nh3|0tsz}rb^j"vA5ta쩭n{UqQǼyڿd Q:nzSE$g>ɗo#IC".:H6m|$z-yGGxFq BE,g73MB ֝A\)upSE$O!ɝ̽?M/@ȈMq [̹/pTgB\ ێF_"QR!MGGaD֍ΉrE*rI"\kY,crx Ϙ A =q-. rqF78EUIh1 Tۿ5|/ˁKmhbB[O}@?w96c&YHW~T͓[i_cb_?Aքzgьcd#`l ]9p57/ Py S@E7pH]b*X&<3bLSG!bE-Qhb&0NDka٭LSwRݹG "я1jbuP=VX:V3K8!]ʹ"C(}({Qy!! a&]%}ҍ _?.'PC*~^Y._ B:\ ? ^x{+NIYHM 4&?0>0ռyzb }nL@qqVLMPGy0r.d }Ʉduă-P [MQ;5l-)˫?[NVFF'ᢩ@4L/h/}x 8k_`ʽNj2]%s'*e S}ЈWuegbVy@3M ާv;R^j" -=ە2gn#9=17cO@7f Ri@Ulj\Q`ȤX&8/G#`}Rz7Ѽ3I<_\q9d"*wj8 v/0O) cM,\\Y|GK>cՓ`c&Bc8s /5`cnCsElǞΡn x!>ei_b+uJ1/*e?xPSES챭b:Вܰ!Ő꾦2d!=:-6Fgɡ  LtE8@>y+ހ\bLqT 4u@ +2--h.lj<׶b-̱ǫ>P56|$3U{DdLBa! g %eވ$p?+Pofɭr?%5H<$D8FG!2>[j8ê忟U-[ 9h=qA$CeQy4&Ľsl.:B~l_W0WS,|DsĜLB=Õv1if%E5]|hek#1s5&3Jl_iIGy: ISgU8/@%:-T־R%#W>: ĉgQm:AC-|u\ wE: K"V+~aXtk;.m2~SX1Ƚ2Jj8"}tʂ^!4y3O9р{5y![m?M!\ uGv^4>_Ѕŭn·L>!8QLWG mR>ѻ>1XzŁs5=#]_NI~Ya T͏&GLfR"<ӡ,įj #.L+n !ffџs]-LPd^ͤ+Q.rU(&}ˇH|Šw$tM9T'j|p$x?ࢴ?vJv3+;DZu` לQ!w=ppR S)jHbS"6$9,3۰U7vq 32JS:zai2N~q9B)F 5C2~%dìL}-k;15})N߽[EvY= :]*,O1{`v舂>ԗr,cW軏6 Zu+.Ϛ7&F1ZH12v@5eV崱|~3JQy޴Xjgliē:>ڡ<%֑V\Y"Wv?;%OeSf-($?^p N)9Hjr͍}1hZ?{L>kljfk^s&|/VrB=uv@!?KA\Uc SrqCn _WJ,}훨]/6Z. <VKT=GM4 # \+ "+33FfDLubSy5f@zPwX6KIc rC'd] 7)NRrD0xZ~KrZ}Ԭ#c=!Wb>۟b:LL$IXY7c6BIޜS/̬] ү;*|*`K?1W na6TdM@_ K~+XG+3+ ?:Lil_ <<.)@Bo#,Gzǜ-c3eP.oH/JB.}C > {'j@Bx=x*iVuuڤυ!ӵyM&5ne87S@o?N5Pc+Ջ Q!18_ow M'ǎ R&xMt?xR]&pCI`1=e4W^B#u0[:Q1FyU?'M3Y̫~1w[XIQUσ)(f1B]dr[r^z76) gRc)68| YZ<A#W*=% Gnh) Oю UޏCFk@iIL l݊=l㳺 F]S"q6KEM46vYvvҽzq3(Tz"_4N% u5Zequ>Onȃ->;~!EƮ/3U`wWinTa$&)~=ܞ}|~v.((z<H1hZ?MDjLlץN]d2զL=<g< n+tNyԀ~*nhw/ЕL`Ǹ]be} ՞EYo6*CxF߯]2Orܗh1~:m|՚.Zn5qDoo^Y.;cN)2l(6l.\*(R1E:Eaym YQ(Seg,D}LrwZդ:5Qr>mޭ9W[ͻo!%xP''`=BP +yMrʰ 6+vWHᥤa62ʭGR:*cy ZmxmN3I^\˫aAMk72!wFc$nU/s,(`|YǸd?b樂(T=nZyoܢяՔЈ8@$`$\8=fV8 5(w ʮA5N[k{&4DŽx$Lq1S i! s2՚UeŜI'us-wanwx-bװ PA?,5/jg5fa׍wo,4=dܑq0H#T^\5IVi?nhKT(ШYM3sc89gXP&L~=煰9B5 #EuAHX(]6EP2GӅ AMcLn—nsMdgd[Ԇh aKQ4MV66sуtί 3OYs 2\7P<>`O ,!%v| L]5:X6`{U("/dAsu/Eb4spgCЁlGܷdFkc[{,Yji8˘nʛk)X_C"/۲{.dmP0mWoq^oE:%Dx ?SYFu6t`ρn˴rTn&5+ۡ OnXy\ jNv3?n)BF|S0fkTt[\$2 tp> -`86hE I EODpUV/0lP}+gJ+/*ۯ"#|W\{{;R N6B>PQ,h`@-BS1M8;t֖/X@LB(bɞLB@'yx[ǃriMB(j?GrA[j{z,xJߠD8SDs|z=_8"jQ;:eĠT&ʀQ0+j@%м;c C\ x26w1Gs/w`64I?t߭l1g^Ӯf/4!4Y Ƽi{2$⹕S3mf4\q.%Lj: 'Y 4aSj;zPDO3~5q8,%G+r>+/ 0F'eK̀#,Gܠ~T<̤4/!sƎۂۏh6Jyn{B7?1w&-T vƊSL|uƃ0Zaz}"-[pqN S6@<8J`s1ea1d@BsXl6U0(AN1ۅ1l` ׍J(f DZo,)r d`uOE *ݛsؐ986cҎh{b5Dd-zݕbr 3ԪPvhŒ7jFͻr_[I_*R$|+Gpϲ^W7CBU#=iYOdugHcTK=(zO]Ɛ,ȧ6AnB!`dn2O,֞OYD݈>;C|^uXDD> 8>y!|a7- Uu^>Fr lջӂ4|1Na 1TUmͰrj#Sznm!ˑp\sXg/jL'"׬U0X*I揄J\¼ni衣bz60IFʑӤBČH앛Y2XbfQ,-ǫ^*rVsnV]A.6t}v?%jpϔ?n &݂+A<fChwWBgu?o0IvZ]aDXV Q3`s"#9qyFiuv=US{^Ӥ@ %.iorg9E,y}jA; XA<nD$œ(JWn:ibz ܍IZ+;5P0bqK7l7Ggduzc>j~3+/ro/oo ,9*gz]Rl͡r^qmh{JB !o<+HA7Zu9(`XcQ -hg<9cKFs", 6O0>ܮ#2'r^i2s/YklkqC_HI(>gHv*oϺ]]c+^URI'."YxQE{3htQ6ً┾[&#q|iy9n l%O7=u@_򫺋wS3,ykF:xɯ5>{qf;0IoLue"/ Dhd4E6l(tBk(>L~r՘A2E^TBTMB 0,*JⵝXC_CK}F$|K?Z߀N,[^a@̺g`juYeѸ zeiv$WGr`\?c 4k,rguSjJx7ŽQ+Dkbvś.{ZV-6X='kb>\X/nM=.Z./Q&u:W7%q=k`?Wʰ~+}pM;Z%>b.2ԋ7((+ݝQ|57JmRk碙wg͝`7aßQk׆wfV& +hfShy'%xXEs`8W$R'R8΄GJT۬RNÊ6n<0L1ze:2!ţ!99D%R0|I_ʄL L9%ddBl'fVi= v琮NBS WA"l(蒖S㱐:3'R_T[W-j!JZDz($zVKNu2Ys_h1q|24(u\u^ɵ tٰ Q$Zf1 ֘lhg>qs iK<1N\3EkewM_Jŷ.eHOp(a֩١jȆ.JiΚp˜`~Tq"e0Hjl~i'y}H`UOB+0Ko\.!<_ZⲌJ#W *t25X'HĘt2hGПg4k ՟0FOu:BFft.t@.x4yY8E\sOEof)5]0I :K^X+TG$,E4pC0;̺vpG+i%2d ߡE;Do PqVԭW7qLȎQ($z_ >bnE<[b8A-%ZlcQx=ihe:j$OhFWΛd8K.?XsG# 8Q3uZ*Z'paޛV>;`|sW+bj=|Pf ι]5T5'u8O ]6ەN)y!Zsbo~& kQneVWS ܮsƆ4w㤿ϫQA%w-9aqMlB6ڃq| F=rMb=P[ nlTe-89%ӍS$04YY6ڢ*? &`{φlQByZkDڳwh?[LJ ǯ%m(rWR[1EZ iҰqt`Öy`]*Y M 8 'B@Rr`vJśg 7oW%ZR܏5mTndn<vZ}~}bo6WquL$#~f ne'@Qn '},G^w 8of5σG$kk6f\#8Ƽa^ǁȕV=5X}<\,=wy4b%nD&Z;`@3MĽ{c'{~Ő m Y:4>V+,P fq.*I cĊjľ~d c 0e68wSLhI~xc>8}q=ԁDqb yQԿ `#K_#r(` x£ңz=ɕ*1rtTȞ cJT[XNѺ*ACjF<$aD#vOW}oTt^)Tqk(rIN :x~. b7)a#OvNl^^,"w.M|HtnDLl5 L[w+6൯w.ڲDIHf<=-$y,. Wtj bvi4~{seoȓ)y L;}cy/l/Ke\'h:iOO龼V'.2zj\ZBÝ{Iij> l GF`UfgjQDm1︟OnB`]2ZK+$YDuO{nd3TE<) ,е4;F5U}z涖" <hJ /Z2t-owJ_[I{\g!ΖJ7JPw?bP>6bk /d(0M)d2'-c˫&^/n{w=*tn'j9"T>bRNRG[w>~S"؆WM;])=56(Mk=KBxIp, ~, ?hpIlo>=CPYȱ QDUtАfS$9^!s>l!.T^+n[BE Q 9r>"RBŽr^zc~Klm&Vr֡Zj]qMcs`P_m~܄?Af2 vp4,j= k[s 2VQp=Om,Fo.(ᙢ"mRmL?RٶFtJ=c͓=K_D+p⼒ǝgi;FՈTm?E:!AiDfA׫LOC^} * 2M:2(qȯ6 w\[Q!>!Z*sGUDgC:߯?| Gsa@N8Jc%DJlӂxX5 MLy6Y|z4ԗ柨uocIB8sJ'[߰eF(XL$+$ìz_z Vy+ A &]0Q Ի׌(Ч].4k QA9Qg=7٬wPe~oi$#Wr0f!_Bw TE5jᜨy.;s@9bƝAřYQ=|6ʸ՜Dm;(^@g=Qn[Ȅ]*I FX;!: s$lub%<?v}p-|@tgR=r /X^֒J:8}2p4sg;?|($œa9{U n~=Qa٣`8y &MݮvypW7=_μZpD0{ض^/ǑZx\`g$uY @"yBYcJD6 \IEqZMc :<i N3ղI<P2?<\Ɏ_hbZ!~?h9da"WȤxUWD r \JpgMBM터+Djt V:ōy0 B/0IwufܗY4(%F q!o*[*!Rbk5A6/e#YԚ#QH>gnh֧8᩺xrAMM^.%wەe1 32KH4\vo!7q?lz2r[1C'' 6s>Dk,߰BՎG!w0'N<РٍeJӒSPnPO]#$hc9 d4ܳh"> +L x2f|8&#nW L@x }{9Jn14} dB7>,ky H-uGHL6*-b#ҹ*x {WopzA)?*Dr;]u;b|} j9'tVTD=]=;ؼ'$kNRzlr,SN Q! gwѱ;N\|Z~PiM>59az~OK q!vuUki?( n'#eBl =FXyucکb!LC(Dǔ m:&37Zw9n0=p-VupU1I+^\tZhOmLjNIu9D14R!] zDv6&\~ë+K o){>7:|#'`,_veڽ+4v'w1rZ\b1f ߣ97"H.k <BLub-9+A8J(qN6M5ཀYs˜$gr8_v R]O$ Y7?Gѧ3|)XQe/2`&b7Xz>&r'nqv-pM֗Ö/ ]H/0Q,ґ~bXyO}.HeL%9̷ZL3eURɎBRCVAMS`798dd^Xq8~R7-y ţZWQ/Oϳyets-90QIQd702:o_^V1#"TuY݋-10ecf(uܟT/=MelZqgvBwE9~}8#mJ}'6L)y sm3ŭ ("8myj@Fe&;+щE<ȩc^Y\kͪ1꼜v$D(uRy]lsN%)9] IǘO1`urIL~pP"4gH0Эc[@rn]|uUגƬȷW H_s%-[$D3;l㲲^GvLX)`V =_>2&p=2` v7+̀D̪|f]h'6e@̃ YORk/~TE- hP gwf' ?.G34IQ&ǟ* ']#}Ycخ'ƤxbU"v í0D *IeǀG}e^S-osc["@lI78oaEd> аOFޠuI;Awm/"Qfׂ: 8GC N{ :Y| KbN߁ 8&f0G.J\fNh_R xJYf݊堽n2HTiln&=J uLA3~^!=gAGMUȁڶZ=fDoZ+„){ 瑏ukekƵq\W3TǴ;8%d~QQ=uZ5XJ#j]mTm .GǑ!!\ـ=*4sY)k>oI7ed4Ug~<}r@FVZL;9eWJѷŌ.`r<8f}.^4 {~?: ziJ| Aӯ0l4G;qDP^씮 ye$9 ;ݴh"'Q@1ihStH.! 0qM{R\ 2о=693؇PNLR;^s2T3K^%4~^T<(.b=1N=PaCF*o3=떗0)+-Hi?A E-vzz ̄H+"jՌ!u?pAf5,tL2{K~o&T$Uώ]R<)Ł'ݜͿ3CVjH2Jgtׂ^*(= 9vF\-D7ڲtOŤ@Es%?!x*àn7$F/H 6|ҬfAo陽.G( {T`GW&TM + lR4:4 r+|,;OC͊E`TE!kگuw*L;l|q;=nm Q2L4}y0ǽxfuЪ-Gh|ҜOXIDf"?kb$)F쎅iKw:/|BK]NcV\gE^;޶>`D{jPLNC8P%zMdk}8-dぺ!at;XF#̍,rm˹ZB׉Ezx d+d,,Ы軂 f["m)\֬KAFԓYya/l_oK7JDZupqe"[~~ɪ|_ұ<]<6b٩DKוY˳59.5qܰ*[a`puS V>AO# ]2HGKkdI6-i{ J%:ٸhrg J&;y91l ‡P볖2x.6Tuxt9 X< ߵY.Bcw+nLgyBNLܦ(0sLKkr{Q^1i'.];U#+:|>p0*9GlW͍mbZ$ulʚT"nNЅd͝$ɍ/rB \s .6}H LL7]86(% R0tskN5OiSpg5'td7f>*mZQMxpj(+DzNM)[HRq^e&8#g9S)99f% Բ]Ad`aǕݚ&8W|у b+0޲ .R"2q41'H\{jx;k8^p Tk3Jݣ,cNyQ\m(Ô.q~WCX7o)t޹9o~n-bn >)gsM4 BZa,N"2 .B(y]ekɈYIҫ͉4_$}bQ#>8hkOƮFM¶+vCA|:7YjH)O-+}<]Eeq+9RO~biV6=_Pl/K,#PSk᥸Y%R c" kM7*"67ë*i6)\{{KpύD2n.$w".%n(E Xُtޮ4/Xx$ PDlC*ٙ'nwhU^<˦kͩxOSU8y*ЖV'~w%4i6x[P(dtQJIsӁ/,jgUN װ,sIC,{Ku~o߽S ~IP"\ˑs3Pz"۪* LY& RR*i€&WX 2;[ic *P׉4(\uUBoj[)__O4D4Y^o{Ы*-h ehEdGe @[7DV|7Ł /qلL@q|lŁ\efR%Cc̻MYɈgj25L܄i'q`VyvOP[cC ˰HM9"=+ !C hS%ddi`n)ߪIVԀ7"ʫ#k:5]IgM.R#E0]Ȋk^biRHy)X!QLL#$~qߵYlw$G̃(yĘCwVTG$F)NDe6amRa`5"897q 54n# J|4>2jD5Hnpup9aq9rw=aC_ɓsBY_ (q[:K&OwB-v6x2V|2,21V%7(#`\=(֬ȝL޲AaPo(i68:blдw;j&UIJ@=1?ixՌ8$yex/DҢ8ףw ~?}GG@qCH\'|E1W!\t<\,HǮq_s@ mMUJHz Ggk+BEFӡ:4όP*nK<>b :0C]vRMazqy.0<~@]VB]U`h2β>`O9;=&~6;Toɲ1Z`Bp'L E,[!#K]B{O=7fFxM90wQ ᤨE&pTZJ7YY(%X})r%{Ƌ,t @>A.G듊Ik&ctYq8^ iHVCa`9Bxk=>Zو#RwS9nFFrP׼qg9rĜwf1l.i۔(}XHxs}0 rz70nT9SlEZfo(㽮 /87՟aEøzͰ[\L}'G4`mY7!T tKpk%vdvx؈,L'*N!2#ȨOrf:SQHjTzy$IYjcBQHg[GHT/_|juPg~ }< 0ߺc➵yHvg!Ы=N=؁$G{IP2gS;kROG1Ĉ)t%*H?1pMFWPK8Nvg$>)oN山"IF-y1d܄jהh|zM$ɫ.Lu@s-8Km?HqQ'yO"K7#$ ?x8NnisͪfR82GAd7Gy#-nქ_DOYwn,½߱@w ׾E|8{:cKq.(Oa2F(}2ٙ]̈́LB_n @NO+ua!4{hP-MvVjf=2yT߭bP[k<xJ{sa{9^THʼ0$Bw)|W=3k ^˝͓Ίu#aX Tՠ1؎Ɖ-Fð?CpY4Yni{LQ_ -!ЖziKY3ʭX =VBÃ%\9DWM:%4RQǿha`v1Sj}?KXVJS1sl/x% j6']Wl\-~vqJ.՞frHP,~O<*y<&G;i_8h^va (5F6.uRT>s;UJ)əlc]h:B{˙:< @)pld1#jNic ȓ=SoR'xQU;[0 tI'Uyl \lo ^_0 {T_WF9[Egʿ%Vl2e#_? sDPbX.ω_<Äk8X/x%԰쌅4Vw:eFamh v^đś{E/wR̘46'xy"sq7㾞qjږB%7VgxIoj{0ZcF I5߀o+#N\Itu<=IjfӇ=F MI1[N/QԊ"T]4o{/bڸ /0;g)|ཱȞ%;OcbL-g]6*4s=W- 1 W5$%b H\9_N5&+HN6B̬WoϜJu%gI!3/Ţl(I2@6ca*Ks} 4 'Y!3t`~r$i4]yN_ $gQ2Dstux“JWĀiM T+ph츚 ?[*p7)3rs?tMDVpyE! shpRH Mns~R:bzm0zRgkH { MR1CYU\?ʧ1)\U!^̋gF"b;WR8Z\"b>+ Bsm?;Z\EcWR|(G;nH=iɣ{"lJ!}xۯ3R/=4hErF<-T^)+ι ہ3~e7? c?mHksߘ2b.XczQ'Ê+o^gh19o>K,La}%_~_ mNh抛id#U=tB1L"& r]ᵿAa>nqV9 kma J퉥^.CŦ9z e\|zX WD=qs@v/M(qi`kA4Ly( q9RIQ~Y+Z;oH3@|Q<f<04^<^^冝ue3b"wNԡr=4&='Ѓ!, TV)5?H~bsډYBU 7jK̮[s`n+i*@Ԏ%-5U{7n6, I4ǃ4 %lݚ=1ds9&&}ɟmc 䝍?^kJ+-uK2B*A; QR@ H!d%H SD6c%-ajDc~1߄0=Xll)Ŗnt pBm2m#'6#ɹ  n'/DBm4/LBM,Nsf Gi՞{a[$2Zu &IX)*':>0*#^t"@qp~f qNE:#Չ3#Ojg/>EbS<,tE1fX@,d O?bҿsY9WoY[l] ʼl>';zN<q'D:ƾA o( IB0$ENj Tdh: PJrP+H*_˶ M >]Ѕßjuc*5Og;n>W.*l9*Z.]_ܺn$'9%d)\<NWC?qdTԙ@çlHn .&J>kjHUbwgp 6@N8~ ;  OHs, 0UfAݟ+6{V9?bu2a(\ R1aoCghbpd9x(zN:r|֭N4̯Y& CYB ڒ|UwVx|%6r @ svMq$Kaj?[g #AI&{}^,LIP:W%iu05ΜzwK8%mD&H Z8LkbO/P_$t\f`$U5WKP+҆&C5JsfPtrgqzd.LTj1m֊h^^p[2_r(ӘO&#@huO& IlT$}T{V %@8յ19R4nx$}Xڃ+MmD2G@OXxMw)z1vAͼõ*!&ɰNJ[AX-QtDiMQԗSݝ37SϺ'p+[Alvyg!(wSY?.WmO^p8" ]T< n~n[1 PR*`0r*&cb|J`۾-ecleDOoBPεJ% + 3Sфk_'2|7߰H>cשKŽ~{kηIŲVPE `ڑH"rEJHȋ["2kDdo{go}:^(OI#N2ِǨu0SNrvIPnҴr\CO I$W] }0 ,YZe>QlAk|Wt#{Lk9VhEPt.=A`rՓRuJ?u(G ]kIL`|(2I4͖-Z<#5*ڏ:r7}:") feǀ0?GGj-+e׉"4r/uE>c!B4/;=|Cn-gm`V 7GRFk|uƥ'Ih/ mnѦĉɡ$}Vy%{YN |䯶On}&߭"xZּW Tn wBf z'ZQp.҇@D;z f_ (!4Q m#lA8,L)>a-22epZD7X)OKdSf쎂i "[h,OT1Ro3Ŕ ?=5<͞C6~O݅|9E{x)!14+nȠ(<@AEjVIԋW֎05ƅ;@~*|*W7H77}~3Di;u@M;o'&r)n!~.?1ѿ{WL41zmŶN䝴e*R]g}o i:CA;j9j)1D x'ӿFƏ[yA,/y2y{W;K ˬbn=Ӷ"*+q YaĘOMzOX=glP٢fD\PTv";Ϲ/4Wj{FJ m (yIh9+q!|e+}([c]=.J=6 >5-،w^ "T lOxJN<~jTH-7uJ;B#I _d{kj[Jfhg{W$}st ʑ)qY5hn)d&ucmnb~"RĎ/ {s\dh*f>+ 4gTC.{Xa$<}_ۅ!+giƋE}y,euiT 5lXgz"q>)KrGOEj۽Q!c"k $ިX^?zu&OSh p`׏CSgD$f]|r$: p2ȰKn|3w3&#fBbLP 9xu:|WoF3]CLoTXعz{nm!|GTlϴq+X OL yys .-FQYDЕ'r#X,\pOI `vW KtG)\MM%يLkY 5N H8grL.ADR k=&{op k#C zQ>bCB9LL'=\a&M03YZ&yDED$#i3E v0tKeEQrΣP=8ǻ|ngJ'_-٥iLynqd\.|´}}&qvx Z 1= ;:{EMB %B0 ) Ꮻݹ` 1gT;i]'7L5vr#|'h 3Y?H.S~3G>| NlV$p٧3=?-l]c@Ȳ!e4CmIo6Rlz젊2D#KE4<5lcDBKɔۨ(6 e܂)WXC Qm(Coy|V,SPX+I?(*}htP;s'PqlW6o=K n(уfjEK{ ZYOTazj*~5fiV}[cxʃzbC^fcJ-iHh͜>0X\`LL_ЍBkFkKoW0M3ch#֤ 8P2+Ճz!JW)a+FÌ#AftD%1#jc'Ϡv|pmܲww#'j{GNG!Q䮭_&7ҝc:i%I,L}qRg0vkYH|  3!C,aO2*yw חҬ3 \}xH#/C2*F4cYu=i$~v+7lǽ('|.kn37 `Zб4&b0Œm9rv3#*+EpO4ޤ^R+c=K#Z,;?wDzjrr`v!;BBse&nju>uʝQR&tb;{<m'%bP.x5]>lYNbͱ4aI5{Y\\]eIʯ>P"70{$ZTSR'H9ޑ`ۊ KJ>4xF_ZdSF]RX3肹q&"_Kpz i:#fr湚%V2cAw-f|嚅okؿlN.۽q@p.,z%L\+"r'<$+®N9oq_w5IEp 6yA }?*s4r\u8ʈYMY uAܭY}Qgv/  k@B \>ʀ3J`-=͇QDXD?5@,K4kvv*Ie/V"z)AleUMRQXF=EGZfq9ryPld}V"TgtY:qP/_z~ۉ AZbX4ũye|ۺvMGv n7,Ղ<1R8J_l(`Y_J-a0A`-"Lҥҿu)oz sp)G7As\;-z@Req;"DĂmjtmX#coTj=U3g:F@JEWF_u{[" #qZ 6Ckif=6Z'(~ ;61uXSU5YhD@ 1l¦yy)]Ԗ6`x!7fenΉmk[-W!bčw9/iShw#&|oFr0U5JFYDۮ4Dш-kmhW+*ȬSDmL$7N@2Qd]K~l~~eXɶorNHSƯ 7n&!%(v{FDt8% :[9H s |Ueb_dnfnjR:IQ[44 %.åe長{et{,V;(8ٗVSjߨ`9LVxcm 2{yJs9jijQt9e] `"b ̂f*{:gBK7!X@ZPqf8 :b2!V-, A^tAE`Wb2D$ 5% 7Yb]?K1eXa|w-`0*٬ol̓(Qg~xAF(Dą62&B$-Z14ѳot<0ٝ+{{4}W}FȐk뮳e_;0Y ]-w< /FFQߏ-YZs{!ydG^w3N/6r)Ex9pk<(G2nS)ܓuaV~p݈yk?;&,ԇ8Njt vW_}T) SV!.W n_\xOrcrHI4 qQ|߫ի'ݼ^\,Mf%i1 [s '-J l}[8c$kKܢ'o[Yiq$zBjE0T; *䀯=Kǡ.V;P'RV >wX:ދU 9)]$B/S75_kl#ϐ՗vLl9kpBja!,@P0fO~mOa7Cae6FYLoaG o2 TOCd03 X7 o+iN$5ߖ6*msŧ?^a zV̛܅-##7a~R!2$kEWQ ϐ eFrwX]>tQO%yɌA@)ΒqYi2ؖRhwNZ(1t-UD[a2FM UЌ".xrqp7$Fee^Tb"> j%#O yN' 8祏[]k"xٕ/ od$L6אNX䍙ұ;Nrzj6‰\J6 Ad# (' G:ZqppH%r[XRgRAVɄ]AWdz?.(ADael |".w)VzPAJ7CdI0Bv g6m""[\tfD?e2i%s mZW'!(W0`>_@MQ滥jst$0>vI s_tg) ]׏^cΰ5ZR~hjy C(8"*yåc`VW(Crz{eKc^C_y4J/u\rv@~-"#V||J߁ z=ضW]|aHO)!ĭ/};(/;z-*G/q\F۾竫ωvijk[^dlTˑԴdE6Ͳ9b ̎.Ue]F|(_{PH{:~_o"ͧtuGgӸX!g 3?Sw0,P[;M. KؚȥHҒU,ׯ }eRij4ޏ}Z/oL1 !yr1 -]~_B|enW(%p\,Mͅa?[H*<9m}fT@EnrFO^..GVs6\;2)cףW 5Ic<іl)?Ki}~?pʭma)ekZd8n[FN~ Rc6onHRN s\/+kQq'I0B}6.V}~GOKj.DpŞJzMᾝsm4h"w,ZYzܘHNJc{iKJjNQɟQAůIuۿR!䣹.=~TBjI"0c)'AW;`8q:üWPO9=~[SPװmrcb7Y*3!qr焖ǚ#Mo)#/d&3[ ۢH :TRIM/(xðfqXVUo4šV=Љ p5RH++"mC/~8gĨ̑U6E-YL+-V3d3 _Z.,hbG66y]e✞h-R-od=WaI[ $\H# ٛRK@U8E:3Ģ?݊K(XJxPtt|YdN4`_k䭗zʼn@v~=-8-kLF@T!{.ZKO(12;Apv"PlgޥĄm=ИW̓EvǙ]9GċGz#Fǟ|QfmHY3h g_ԥnK&Q6޴S0`)!}bXbR>Xy*W{'iHUMpcuRqut:4V8è

u-xXE(C*gnLպE2w} )E¤#h.x6G}=uiiEDrHm+u4[oxho`P2?o)~2wdVj.D(Sh,'C~E8h-㱢'=2XĨ#ZVd&ucWf@yM#̔:ւ.|~ -UہPwD<%6W\'Fh|#7;˩fiV ə?dsǫvQ]^Rp m[Vn;sMUr3*gFZ U{p4UM:u9(ZhhJCD%$<ၸw/+{B~{w ̪(낦7 rZ^xNiP;+s@`O9֡J-=x} aIY˽`K@k;-ԅ!ޥxĻg/8}E_!|~ ѵ VSQ:è,סjYV;Գofn ʂFFT ],S0˪65ϤQ#1@n8b( lvv1(FVzq}{rFN qUjUKث8sbmapJ4"x:*'Gbg>EjYz~שey,P̏1*f#C":W2J5%_q%17̟1oBEH"іvOiͥ+bR:F["Kq R+VRj QjRI3&e/\Y,g.&J h]LU&2Qc#|7y]C&%2u)ß<683ОԾvppt\Uj@65kiԠ7?3eʨΡ>Y8 L-MJgr:E 0*#PXs?.MAf~| ҬrO]{ orxHXZmт0y9^A`0h68)dvd1ƩM%TTMg+y:ս] pY&*.9uqn&:/3!]+hOwIzTU_]-@f_wysK9 ÂvdE%lBˈf.khGq>\ˊƊ`єNdL xPfo 5gD.[q}r om,BǘD|}A#zPp0߳7K#,~xT^UQi8ԀƝIr/WIlSTOѾ -# /&2ꦏy|o#Ewz==R ͚B\}5.is/zu^ 7?8Pl|Q Ym7h@sIFSXי18+ȼފo!TuMeMh~cf9m#k`E5Ə[)Ws )zl_mh)N į=O()/&F-pΜt۪0KM-kf*?"T5B7rJY_(Ԟp' GA%IG.-θxm2a>lEQ=xVEIA eZ_ tLRg$VY!AWC^bN1DtC#T؉C1ut]M[ݏƂ/.I< ,|F,a{NVO/]4~&MފqW|Cdk3'm}UlzQ-ZG~V=HG)J 4n~bF1{:mui)k5+5"3٦ H`YI:Yд~dyLXQ^ (_u%Y7凞0|a Wc~~9Uq{(Q'ӻ]]b~ǃa~,N9O1 |=`lYkV:LONÞq|5AF:{xxcDɢ/<@^r<}qO9M793/H2zjm֖&ӂ|FJXH)D{47y 1kxild#aM!{NS~DȷFsw eg,={Uyb Fg}fʏey\A/t'S|Dq/K<9LqﺖDJEU>N+U*;$y"=KW%Q;yh-쳫=1GQ? p0nH7t N՜-|1y e;<K<qtEǼ;viوgf?EjH'{45)#^m\̌Ez[\rSQk#IYjkIR(fds>pPcT{CbޘY|&\@ z/kiu~BT#=8(GiuA [t'{Gv6ЀLV%=wG33ä@&z _4EZ#F&4Y)!Q%*q4̧xa?B|^dZ^ABVpvc@J?lkQ3v80%uv̩=a r z#V`f0?,)q*UA5tNCYcK#ɾ[: Uq<һz:վl[«=U 7#V[oي¯`"zyy;jQF1/d"1#GwߣqgexӼ:0Crko~'9Ak%9d9XB`)-2t$PE>NAQG,X? EUJ#NsDL~; ],QOxGQ :;e'Һhwbؘg.UVsByo޴r{t0yhPz)$.f AōF5c+:'vB;s0P%4nP?go^S+-bD!< D|0Ǚ-by\ #}{ Gp\~ - ^Ĭ yhE9EyH*Sa<ɺb=@~R !8mR U9Nl"uq)BsP:ct9s֘P+j\GERB؀ȣo]bUA3|n\xsIJ$- 5(#UZZC"lғ$vqX}"1uDNsY:|[_r;D.,湬e?Ԫ4y)h_Vdk"_LϦe ܢt2l?T5F^~{(C;0(f^˲&nW.SByۖ4a՝Kޠ'x$ O7 Xԙ-_]O;ufqF-*ogڎ5m=F7bExۜEAֆ YOw+茏w([Pc.ZW9Vg$";,?E`̵*աd^o9!z9џzֿNjWX euD Ig+\I".*OzEˋQ&}RV<~of&.b s8ͦ`G7I+ȿ/tXTX?I;0?bӔp8 -x{~je$DEM_btdKo# ZYVϤchXTEX 5 }1th0ZAKc#@-eEopZ*zWܳȶk}yΦtkcR9d@.КwD'qc: ] ԇPG-;(?\%q'thX\oKɴgB(Hb[3x0Qj!>#*x\Fi^S, Qa۝Az[P(Z5 -.-H *#˹*qhfHK>D0s{В ñgF@`Cܺ=rː۴./+ۈĵc]+hi!CQ LU2ܦek(1J $bֻ Xo5CבueQ6 kR3~&OgRK!j;z4)N t]F~rB@o0׋l,yjh5jhc_VeN9=(JRHG(?ލ,(WV 3*PHڨ JAu+/c'Wa<ȺU`θ ;_W#vw[E.ZM{͵HC.޴tx”A52$Y*P2SԴnyAD#G"+T KOO3}:^K#6OP&XQ#őpҕZEVQt{gr!VHEÁrOd;Uz+T?]kM5yXvv FwZlJU4`O)F-H+Ry v6 TJ+ |V*ԾpKHrK}5'AkRן oTe=6Ӹ,@c֥цG 6 Zd_]ܝ/ZJ UD_e~dhs3,fdرb` 4s4/'Xr1އS, <(q| R\j+#u{5#P(c7AH 62LO NL88dBm 1[oMnupZ ܾOm;#yoȳ82%sTuQ;0m)Ke~AN'h-ttlSˉСsDՎ]UHU Ӷ*,@sq)SXa|ѥz|95If I[M'W@b9~MIȊ8H۰ GGdRN_'*1 >~wOecD?#U}IVjL nm5|^>9QhᔲUvUn}bؒtI+sL1Tuk5xT;WrsdZF e'!GƗc yuҎ6\K=-4:;5_ovY D $UldթʔU!&' { Ρ"uϜڦBCzT%)]]\Dؐ3(6SSJ]X%x?6X7،DkNn#.9>Z yi&F( qfQDޥj݉oW!he%6eBx5QdJS53;]41F//,X2lN6TjQ6$G 8B0V#އk4]Ƕ@.ɼO:jwLcUw 3[Q1!f"ߑ.&K2eiEu/,N{ί}5S;=|/G*@S^U JAgpV-?M'XiJ#LKɸD ;4|I#f7FP;T 3瓑!(:8dv_5P᫘ALӞb}z(UR-Wmً+ZS `*\\ %Ev฼9:چ!+1PIR\I Lv&$,R B.7n2 ++eA'̅xG٣2݊2}VF>GgP$>&W+P[Ƹe4u݁@Z 5Y];=jqpef&?ݕstޅXae_GZ^sVÀ ٗj^Eh6<S"w?0&RHd:}gDWRkA='OXnu0Lѕ`*"ȞM̬QcmPnQZ>6M鍲g>az`bu ,O>TT;Fpz9EB .ċ5H|,b2Z}; n4t>nrw3q"{\?xC=՛&g`,zn GT!CTS6eE@pN`^?h3r'f'NF*<-P[N?4QԦ0.&Bc[Vz~LΗuF.-Y"*#;nwvŨ~}H>M w$6jJ nW6ql۾{]]n(P~>I>F؝F3j¸pT>s#1L}Ѷ)3$:]\ |3r&7=7]r6pG'c ȍV/Y\kw|笚CJQ!Ժb {TLTЮ|1Ogxt]RzVQTkF91`wZU)GnYJbzMZ;ed#e2v5L~W5H4skJ^T#]bƝS>#a[rlJ~8O7(COL@L 2 2$: 9xOS$:>I"Ƴ~ u<ՉSDN?Snp"~lH\J=u,7\/6X:7*f?50U7ZWiy@&B g'6> Bݸ{5Fp%xl\Q1 {ТR`]汩.=e${BctD8Ղ"1]inY>AE%/iK?[kPoQ\d-VQƞ^#V11֡͟ХqKkt 7ӂh3[2k.]^kMg|qr+FN,yIk|}9hD@9%ńa| )-4Th#òP6Qg(p yx'K<=`y(qJ;54CAIǀ6J{ԣ瑸N10ձn8ѳpλĐ)HD: O|㉦'+׺O@Gnw`#W j2bT%aê^U AG '_]{} o@SS,۸K),bko(=~3]RDe QN8עiԚ%dq,ş{Mj{z, 0Cc <(pTŵ8G'_ =炼M{+9N3F򒻖A|5vNRc"P,-Ɲ֊[8^8y`W/L$"^CG7g? Ȇ@盪Sߎ[(L;*Gâ!˜Z1T>O[gDF!/_'j?azO5ꋠuwDT ArQ;g)\iĺE#,mB-U"OĿ7i ]|rsѴQEa ~",&po~챟q| 6U9*LKCazOtt7e>˰VJui`JIvSpOgx4T3kcl Jlh4_p)a)>(TC3 Z"/ރ@hT9aHT&Ld n nT^w%J/ 448>TlH:B30T:ʠ!P8ݰ[ vٳ6BI¤j tθYq{L7j|$iы[M!gMbe/l"&}v4?u nJoON4s4Z`G P*杻VZ2?[/3CLXvs|GDCrɾNBM|Po(̤[E]tY4-1ELWе%`͗M`2mižӐl~9ⶋL&+D=u7,k6ճ6TD>1Q\= Y'f\( `E-zڅivHs| 1W_ !xf,.S?Y0iap)3w9̒EFc_$|#G8 ,0A !$nIϤKb˲=d|0]νIb߱ $]oH?Nb|tاOwjBLFa!Q[pT8!vk#ҚH*IaG'N IIyH j-@*MLb9B/>_ymfT! 5BsZ 8dy4*1*Zrw\3P?qxjqơT @#RNUg%eD囒zdžwMZF3nB= xG$`F (jx1\b+Xd$ͅYSofېY[f2u#.OkVEU2]rm7G5l$F# BJiP1͂xS v'隀P1ݎL{Q3otSkN^k^5Q_ Swa$U’c&[ڻ-\:b# V7 RGrqm{'z/ɥĤS*K^y%X+b0()N>ͭZbVCV;4!17 ^i1wgmX'n4U0=ˉ asUx ҥ!o'8~сW< ]j&! C!M yj= d5þc8D&Pn.vVH 2 zSjiߠ16Zϴ5@GjU%9*7QH8/W3qس}٧%+w|L:Ls_mDܜk0 5+S!Ɋ%fJ;˙Ѱla! )XNjZю:ȹ^i!8UУVp"mSˇ W22uBV |94{v@m^ A0␛RDჺMkbq(Q=z }UٽZrV]!AIv'(N1{x.xRJ !Yi+ 0rO 2BX,v8$2dvaݳP#E]2m$':]tpؑ*8 hMM;$ )4E \7,5** Zd;upD֞ d+@xrUraz-g&yU)zrd6LG[:G- 1lGnlU@`!h`Yć_QucsMLLe&ZS6d2AlIĥ9nQD \HBPxQ rT/{&Vߤ9<0:&r[@Q#`0~sqx xHu‘GEPOOKlRsb=8hi^МLr TpU$$/m>k% =!I$6e.+'+]U5O 9_Eg +?V eXZ ad(yP7R,򛗒?H^=-(T(F?ñCD7 .:( ðwRD6"C@PBd0y*Zci@D+]7&Iy/z6'Ǡ@& Cӝ]K2Cu`2NNB͈g䋄<5`4rS':λ^,InU|ZIn8ĤObXξ$[g'_pW`F.Ү(O^^67nS8giH~a2PʫogYL]͓ Q7ލjt &:tVJ)N*imPVU 04}{E4&jdT!m+!hyYvY#fيu_fC Ntu1I])U>`tnAHhX27 TӅ֥-0WK y1./5:4K6J,ݡQ0Q4 9]qwD[~ٻ#y*xFtĎ^L׃SFE__ H)[Lzek, 5c "J<]zpp%g~-T2L(,r?fkBcbsYlËn-oY( q*.8bCy6 E=drU`|C0kN;M5G`-*qW~ 4ޤU\qejO4ߌ [*e#^=zsO3|+: B..lW[onvuPB^Mo.,~`\I?9RudR]N ^x_xZ p˜? {z " ?V#dnn)&Uaw2i"s|kYt*?QOlC3gs|dD`^,/o`\X|VyS$v\P>^dSZGm o8Y4 ]q<~jJ敍=3V9ROcigCUX犋 2y;Gw3dMmQLpG:8lZ07*-H%uOv~J a_Bױ=d1]-%jΗW_'5I%C`]|G]]n1Z-(Jr?<Дp.ܫaD68GܾM h6 4vFla0A1槄 YٽUϸZfI=H#.qhTثa-[gSFnC .A,c4CI6. /f(@:0Zߞ̋sB%Hd`YWR&[asʯpnto}t.<B_ҁaQ5Uϰ44i15>@0y_H2ÒPoXUgIOiTT͟]Ox:d& s-?Ϙ :KQp~~Pr/fW8HLCϊ_oP638b^]"|(Zi`c 8.YdDhO=ZSY ;CibY)ɓܫ6v|fHTVQ`~&"R85Pd _ cq9;D9qZem*B֞m/:*ԫ'g])0*\9]Lh1-f_>X/q R&'&ܳQ=Ew:q (J;.ޜJĢguv:,X]$QD XٛWPqHk^$3OZ#F]r|˭M=DtKL_)|2^BDXm"Qc9_s?݁\cMd'G)zwKЁu)w),΄A'Ӓ0:it,[7 Ť8 "hVt'8!]wS4Ye Kʵ hAfEX#otiJ]`/@*_!B/"*Muz6 jL x/G1֢~昚4Wޙiɶ< m=_ͨev6!]EpH@xU9ԯQ,! |yluA] # >h[-g{1|UIk7qYE8.?t*c$dQ$Q YL[~^Uϔ ._ CP=c]sE}3 SyEv 6-l4>ឯfò{~qzpǔ? Ce{[ub!Z oѹm{$kr8둅WK\DBJ tü5XLoBafBduR9nzRq>68nq|Ғn&.P4ë](ŤZ,9ME|5 AFN&]w;GXiaZ2ol%ɾ5Uw+ސ~uObݕ1_ri:5חr=U{Pad$INw*]6Z\%/b:zôq/`vzۥn,& 6F-5٭1(NC6)Йo ](&YYYY +=Dt+yß$Ωc^֒ רs!g | ]9͙E@*EZ_g/'D߻يz>eRX!\Hm[lUCB8B,V1̝.#U\@#; ܩ/̈ )Q3$1M≠S )SNK93#";%KY#- sB{>sfDc$`l{&z>bs842}RG}JMZڷÄ-cu9^rѿq#5j4PxZ?6$~n}Nw` QFOu K_tL.dZ\FD0*MSc_˵^':ݦҋHBώte댡&;޷@qr~ v5qkK<2) 6~B/ { g`]|"[Ȱ/xQb&jbL ԑmtOCɎ<#%4'z#og"r8[Y--L$3fnE]aSeLH~0@Rs?n+ZrD(x.e6ƍcd G=4D}X#206DaRZSNCIf;%"Ӷxvo_)L7E rϳUitמMHw2bڵI9s|PG* (" YxlаZR,uHUWAq9:! t 4/~%LWKt:Du$^UfB?@R}LtXqJE0;C&2A o$@5JInVR.\SWM{H+no+ >g_7Ŕ4mi6Wj8r4mW!o;̥kuGq:(|q+Nmv{︈&o"CeV$>=DA$ 8r{%˘EQ(ظ97S_& ?_*$(ZMŅJnjTW]Ǖ / ?w0`kyᑿݨ8&KS* nLʧN̦ ɳs\*hmTFIutAn5_Rg-Z[;}QWo N?+2;Fg)<uC*pe84_H܇a"&?<5hh8B9QC ~YFPђZtج cah!3_`Qy& `͎PCT(0XBl{ 3V`,{BxTEp 1F:3H>#߶RF4&xf~UۓIQo8>Hu{O†JVC/4l!%y \VlNWܪ)@&) }_X*W@2'C~ֈ'܇MDHn4– PJxR 1?6ܜZ6/2ة:Z<~e*G9?. A+&!Р}UISqk# Q?@ffm^vo!3Ѷ0(n8&:Af'揃9;F?= v. M%z->D-Mp a`\X*3~@W)5 P[pYގ 5p16# |/:]f ULZo-{ZP5dE2y b Z3N([u{ϑ1و'ۚeN6N Yv3'"ej+@E\ٞå"|Յ]F+Hj32MOx[<"ʋb*@~V=r# #{T(o{jEH'gaH6"c/jXq_\~$bHg$=\cd"tCh} ('K[>gaf%Ϭ #PoH6S9TT%K7l.jA 1X6('S'!|X 21\ !u/Nx+/U@z_ dq]N/ ; Rt}bQ O&9.4QO@;N딈(lO|0e>yU4 WscCW_r)5 ̡\P%hCEXUY;gytR^*>d¾X> WLrbz>ZuNL0@cƐQCCZ ~0EP?U\vR!6~- >C_*l2^pZ 3EN<Ŕ7CC Yd2X]VYSS[6y.f2n,+זuf9N~l67{cdZ/='{녯efԒ6- *vڕ %VӁ%6&O4Q6˂q[CGY HZ ^pR kP/oԅeU!>. /.Jv"IVŠguHOϨd4N~Xl{n@-j2oo+SG,} ៍=E$Q|Zw;\j @"z)nlBٝtndDWk>dbU>kҠӯG vŗx ޶̹sʍ.dJ tm nD *َO`I@>  ;RD2(6<+l77ϑN\%gui=\(4ey2R%ztFU`PDXC|AթOخfmeѵ0: /x@Zhz45ft:umqa7̇ wU]U[JYAAjQˌjT:75xr03if'vr =9. I?ʚض$KYF^ԅcHMΧ=C&2bC32P"Ge@Փth(X>eyj\Y0ʿÕPr{'4Clhske6lH1*!HQ3Bo-8cV`wƞaX^cA#5 dR1'<_!zH/|0g) s4!`wǣcl*ly-Hnw[<%+7F SVTtyU&`^i^mTSnNL dcoA 8W)32AH#>B(oi 'A"mPduRZ[8*1v#rs^{[j򅽄DNGÇ@ b1do`4psX cwx.Ue3F@L5&JjղŸYn뮋2ڲ E_jyqR9!=gPj~zHrGys_T"x4lu8W1QusJm|КE:5gv@ڨ @F.ze->TF*oc;i2Qx4cWfR<MLKZc\՜,L \F=!MC)ɏ1 WOֶ?ChH|G:oau)nG v U|D))D0 _3Zu Jm1)1|9f͞9]AŐD<. nJA*~OTA,L~mB, Drs^Ơ `si eVPWn0ta/9w񈸸}2/ СCAJJc [S6nΘ̜<BC~!55CJ-uz"LJLp2qV[Mod!wJVB{W).ˬG?c<'Iv[#1sEgn*;|&1+C=lxcSm B`0za4ѧ(Yjkys ^HqiYB`,ؗ|Ae6#WG}}K0SY;FͲLZyrmh!TI=h.+pq.\U;fuP /Ej~^.n ɺ8y-s(9п]#LRj[:Wi@rJE&{#"}KE^xiPKE@Q)𨪁5[İq-$xs-dy@YO^pATF]Ìh6{ZR<)MWat+Ί0{ۇ,-m=ڿuy8$%afyH֍kT'ِ`s|Uj #(xբ1 %Xϭ1:]+"`]Q]p0JR>IE2cLĵtc"+)' CWA +sLZ&*Cw,ͻ5H[(9,K1)D7G$(Z__i,SdUEZr)9e 6ohϲ~_<:VFoak sE<3+y+0+L?Ϝ]\9A]eWtP\5x<3 LlcW`*U ҫ""+&Fh)M?*uWj+Q{p{å :Xj,17x, 8@Uⶸ}=sstJ|t#idsu4> ?Ϝ`wHTM*ҵEFuܿPHTЎ2;2JDV'ۆ V9wVah$kh{(J+&x⟱´oG3{51l;o 9r Gm~ Ԟj4B?7Q2+Oݤ9]r޲JPIx{{9 2q0^7zvW L#qtL 2]^lVQ &S֧ĩG;YwHagjFZ¤-JL'oAaC;>qQR|U9 *8Dywret`!RQ鄮u; k*e/2-$&5jԿcm1i׺E"nOhny((^$q2*%X=!g8'$̇dr5RPd ^ObWTrcO5ǟ3NҪF ">By.L!0#O~;j|;r2hYmdN! ?o-07|K,oX֠&]'Pq,m"6Cko{֬ePqi<`p7yułtTs^FaEEPHYiɳ}?2 wYE#JV@vsjŬ"'m|{'ypjә˳2?˦vA9#`fE.{0ۈPlI~[ i\X|w_)Jd@_f`+f"n!Ovgok:d?u<2R*(jD;} {JdKi&_X0q潭Ri;s݌0#Iu,׵ rAd51߆۞%S[v@|rb-Ot'}r NHOt't p@uDvDŌrSN[u3X}R?^K24">=P|pޅ;Šˉ=ϱdh^k8J0q5Oub&jӌz+V.U>܋ڂiT:')j%ײ1^_@cb!*W>Qh?LMȷ@+jҠydp T>Z[&yc, b!E}T2 #g 񳁡w0c{MM[s& UX$ʲc}|b]qn^_ҧT$Nt\N̑d_Q 14TdQt3;\8NbĆ4Ir bg\ NtAr <"XX/Z8K@Z` UK!S>4!IxaݏSrh?r0KE5x0l<`%>)=wۧ"%gI!P#$c 4c{˹Xv@(iX4d,Q֜.SЌȇ.f6GKvfl'X^?(|Y*E OkR IwWނTmu!0"w]͟h?Fsl yy]UrT?EUW%7 X>= qj㳷BBm-d#bؕ0uCj.9=(,PCE[L#31|al"mbbM?yE?ҤgW7Bo7D+,'N-,]A3,3i0:<2<~XmNYSv캘#Nk$l~k]dWrC5lO4:9܎T9bqZIf,7Cdu }LJu_)F8(%<䠤dijDBCD0Jff@±,YwK~\xm|9s ͖<f=eM~:B;TTaJQ΄ ܰOs-+SR x>;T? DDŽ (lWw'1XTe0-*(Mx 8N'TgPsr(g?=mz{{[&:'4\HQ3V+hΐygWTQ1@+[|r<5jl=)+,쵴 k>j:~_K 4%R[8!X3ډ<ؼ53״[)!%5ҁRO?yM4W QY{!s=U)amr-'}hWYecZjeuj_-MnFD hƳvJUɐY8L}+j}}^vflиJGn!*rܽ@G-6_ յ?p'9c#DtRVn5(2nW2ʼ\wny }|8GiL(| ~$Gw ^#i/4hBDo22J#jJb;#LeT5J{[*%' Z Z};rKc;Fޓsrz7s͟㄃8j9$n2k^f17@#uZ􆱛1!@A*iGA( 3^k>b]Fx!p*И%_ἇ 1dC g#5_hlV=8"tr :k{PO2ś;)QęrF9L?xzuR!#صdR)N}Rw#2Ho1˚ױ1ǿ4%Qsm{װqCfR:XmHd/}֡^hҷ~xA֝E ]3?ִL<1g7'S)10~J_7ķk7 dZm 3t3gC*%YCwb, ),Zʆ;}v i7CH3%2v)5l͇VZwyx+bGV6գx=h;r(IFnMS%i#]e^}*zK;ɯ6LIuX? А-S+i@rIsq(Rz6[[o)jJkpS>^,AU>&kǀ?";ǧm|z9jxw=C['0W/UW&̋5hChSh/@*}s``pV2=V4/mkkr/ʹuhRjbp<NX Nx%|4 e!~K. .lR5OWyM[Т t?O`,[ jۂϢb:T CtK1*pOZexO̝3bU ؈E?nUyإ>ydH3{;D{ Z56^=X9vKl#ck &xַђ:\x̕'gk.xfR!s˧\nHP)~&$10W-v:i1g!2x!JRo[Msh߶%̰XIZ)jpo+h8̽[CetQowlp-m 5-e(EH:Yޞ!722.*B\̝ht2O I,oQi )(8iF/Ƙ?^TP^߇8~?'CH\4k[Wew \a̐%;^ `+Y(>-RqI5J;纪PQ3 6;SPW^]ps+?WHIAmE,QsTpa> =kvk'6x* ~-,WSBwȇ1ג 7& `rOɰ7;=`0uu@_YP|llGg!e66 ?-ఐHaC'@15":|Ĵe-lM^%z >6n9Ky>QCav"l3yšOb8?olEP=/2˓(ݺ28<{YVg&$.v C(bj%Tl/\vXSj;u9U8K T`Pq=OV)4ߊf~Lv/{{z-4dT*A7W);0$FP|12u /bQ] %y㶪\d.X>/Х]tV'MyMœ@r)<b%F=]*SMqhkh/'{[ &qeI샫'sȩU+r_Y~O{?615W3-Ӟ/7مVfrA\jIcW.MQ*L* \<"RaYjPg9p!MLmAע`0}A8΄>3PdLuG\|e*9:/|>BTvP[ĠXh'34~pPSSԧ+D`[#G>6)͔^;;Ap'&8 am+C]P,JzW[&xqFI !+$X{ 8-SJCc~VY"6-G!WI0I{;:d+|3ufԌZ>v^2yADoEVlu\ʨW)­Gk?Yd1 +̗Te8m L$c.<<hP`O={4&;>>x=UF^E]R(ہGU-dXV0'} (tPP&oH_uђ\O%g׏CtcRZWYAc/4Q"@_K)]={oK[CtږqZbZFEE5(7)# qysYb7mxY䶿FOԺ62 \5XZ1*}|T0xfmLnpXW҈ȵ>iK9p8ʽs+w?7\8grtӥ=]I:3T$ƗP~CS7Gdܡy*^h0gY<"ݜ|܌, (` 5w}_cGe~2"6UKb`6g4B8pv@ Q%($L?\{wlB]aؤJ-xV1=Q=c1BLl;td,!ưd|'6vbR.tqdK1⨴toCrMSySL==Z:-Fvw(>F@m]I2EH ODŽ.Sz&U"2!䴌h^}{/rh{4\o?F[gSN7sM8B7O& Dc_5Ik~X"sUgSlBmL>`{zz0'a8kA4 5Z#%izpyTb X&HrN'TF&~@u_%@]DRWeYc%I.70=QZn ok ╀'^01ia)dY,dh1X)9e1"y+O~@տ/>./hg=]xQ0PiɊFD.8#!7][F`NcGt>ڙʬzx@,{9XT-4`?{]-"A@GFIy(s4#Q $.a ^2Rz 2< IqN7?sBkX2$%8 ; &Z,4nǾ#ڭII=PeFYTQxp'ۂtRN]{EB4.ŧϫ#k<Ա<듫j$刁^Eiץ0~ !a0#nO+oOvR]Z ^(ffU\vW_6Vtrp!T+$@lxb֕zEA~ d#Ǣ )3^sªaaj@ ;k <藨n@6?*$ۋOˏXHN]/#(UчP҃IOʯ冧i~5 #t}:R-WLru/Fc&\l+qwkFs+L/ĎjCwo"O>%$$`~"j|ÃLk7 -Tdm'9(Fd)ESs&N!?xj S;i8nn@tc9T :)|g 8b;A"_ɁsqWvDPެcGsl-.AGDt|߄X1Wq5TEk*#8ijIЫ{ciڸ^WC<Հ$' #gB:g)$s~3?dLWO4~? Gg2m䯬E{˴u`xH4T]gi$sZcTa. ړ侢QS{Ihd9w(U8SӇ⹧ʩDqFԠ$J?}xsCKԌ54{Oܑ(s/})_jZIsWoqJFt\@ pެK0ԛVֿ~el2% -m̧3cDe;‘m-ɵ_BiSc{*y},VeYp/fC3Ռ!I_LӷF}nG֎8`=yM'?Mu"ȗb-_s `ٷ3l^ֿ Ndm\q/|jBf%16p~KŅv{,l@"M1*n٧,21f ws h:PT#@-!!3b4 }\7Lx2mPQ9A4v/smJU[((JVq)c7p@:)Ԇ'@n` ׾F$"ːR0*UQ\tG:\tfHh1Z_ fh=B;ēDPJŻi/1^\8 j^`Ft\B%,+ h#?ɯ,mlfZ79ijR_0xfY( LSDN)^!Ji{yndGT=>׮Q0j,1u h2c±*}M\1DMسSX |P8JԧIsyCWei}+kkb( މ!A*iMnJd!1÷XzRx2H]GIs|(Oe RZ@@ ]4_sg [H\k* 9r1|f0WN('Ѫ ,Dg1%gn7 >-PkfL82X Zϴz=/TPRcOʐ dtKb|=sN 3hC-hNXzP`3ȗ!.nX LS߂tm(꠶n@/<!2ED-ӟQedjD\w7RbX񲃗X8 |C$L߱~=D:nQ`x`xhmo>~f.[,,$) MSF4:O~w{NV!ܱ7GD7˄$;-qXV?~pDnvL>(s/;a\\JX{.^elj]djf+i!jNޔof`Qhlth 9f]D0ג,\)5XY'#qE #ldwMp/4}@$J9gRq`$ϵ/C!ރ* ,Ձ? P8+^ 1T-.;YobzJg0h[vjJ¥b-0 G0mb- )A5*GfOꔷؠ-hK37~eHCY L1 k.otv[l) ܥy76)^[roNq(hթF KS+ _4 RQ` E[-ijv"!wk=a_jlb˄+qx WˤDbi*{@kMU?Q e1bI{`_z0*ښ{n,%Ak}JdJ%&v]iMw8U 0ܼ\AYDzAy?yH룮,(h({ “M[wENow(?w3~joDrBHRgRrxMO0a7D4{8bNP;l+)ȴeΨb(#IE(]rS6`k-J])L{b /ː AqbbLBgAN7.>;5hLb:ƿSM;f?bݱωw&ykm[G8oYKW :xS8ÞwӴ!ݘM21lWKsʢ.uOg̩dZezfCOGEB(IqUwS+5䟱,ͩ(27cH3OPtR◘ G?ZieT@7 y>xK‹@T~;EKqOl&4pq8okؙkK9ivJ g o +e97Xg?9MΎv9]"Jû?j Cl.0ܕ6w>uwװ;OؖnƞרN.l.1s@iU CC]rUu0%lM#c@uV/r~dt<~JB= Πg겼-u?ƾIaq lQnŇR~%WByxPVp`K`?<}f>DgXYYQFOVR tŽfK+h?L`{+AE 2XK56:|pBkt2I~fi>W9|SƦk L%wa 8&6鱁!8SCJF8yźZ3#1lNeѕ[l#*p=AFV G<ݸΑ]D칞-Kj/CښvBuU9({Yz%qOJB'1%,W)ڂZYV$^BTL`rzul׻"Aw5JLGYCCbL#2%#+GX*4;S`u>L;8jeVq )ʟo;l^ho(پx2OF@&cA>Z($rwAB_9OU_2U@~xTk ZiXXsUJUIL*(c4$]nb K3q ,$==KNMC |fJӛ{fweET6;)i:r_6fr[lJ+rƞxG\*B"k +ZjV殔ԋjb%! 8= KҌ*.+3vKU,.C .燚c਌ӊIm,E` DM8ܪ&qg )(ޙ TаLu~ ̮ﭫ_2M1c'^ aLpި$ju^9ShT m{bk ͖TST}^m (:^2-80j#l'̇:m4WaJ!N[ƩRHPxXV%1dviXSxuM7[ * .C W!{'ZvĦE ܹEJJϥ>kcdFEgbًYVoe60hsΧ J(BܠQO>aqV]K:/FOn=mgԚXS4‹oK-{=i_>LS7$㗽x6*NT(hf4[(/?̒=;"%riOm!(Ŝ;`W(-"9_祉}&}ѹ|O1bWcX+AdJ Z\\Wǣ8dO`ͪ6eJ $/]BcǷ- b-`-ztꖂN-**8 uO1:5m݁_Z^Ӱn~,mSL&g AQlVDxB^?f7D`~p13񩪉 <J-wV7C]lD*spmQ]Ͽ`n3^ j#ƙe÷VUzjcwߟfh]<[a{*{ ڻ$~)#W08*⇢:`]֬ޡ=/@}?OߠLU<6e# sJd4#GKʝ +'x%G6)musjK R6R%z0{v<$}A<9tvK4@ʰKvqc=ԇfDRM¬ 2yyK=/a!ʙ -摝tw[n:yӯ53;钢fvC!vY̛M~vALB7i3 ݬ "MThxj#k2BDƟ%#esɪqb kcAW_{,ɩQ3' Cz; ۚR eY#-G_^E,9{ BUm}܂{K `׋~+Q,֗훫5˪;Y(c->c802oT뾣sPfw;,`eS@)ۛQXSbMG¿]%^H>YƋA̞wuG[؝iS`Rg(5sKiǍ͐b+3g"ձFl܈:YeTFTn{Iz5f)HyS=Q a ԏh9#F Z7! F) CQb O1: ~7JvVV,+l\!{m YK VXhPB'vn,}SwE>ԿY]Θˍ]42wyJBC3Mrfכ&W7(SV(UXqѼm "G/NA۹(,Q*@3+nZ3%cɞ` /$~Bv 4F,$E_GێC .R}Xp]rTk|lZ_N!L ~R5;i𞺾:f,{ɎcX3z ׺dZIŶN*jivޛܞ'0 WG4|ٶ L=RMjb "5 NB̐.)dg$,@~;L/iaڂ)$5&;1`xt*D97dʚA~._CO:> axo&I5˯}Qu7!CAH3R d@I:ZKt*qKRtnco_)U/)y]O A;߆W+DbVǨ$2r}t;mRFb,/{D,"ynY|ü0i(P!Qy췴I 7R%AUZ܇w?XVÔ$"|IT iJ9ʗuUŹbta7 Xͽ-*\3ޱ,@j^<4{Mb邏p+{T~Y W 5x"6;miZH4 "QYG#3hkގ3 uKUo%p,&H+6q=%M0;y|_Xxq۴D&!_V1 d0l W%h9H5͢+/?b~ssϔx@4++v|2q4+p.F][07{3%|@/+OYTP?h m(E_4Ԣ^ܗ[x8> P.9m6U(EU-(ʠ|9#ix2`i}rݮ ~d97J&a'ΪȮ<|X4%>(GEWBs ؀͂Ă?@gvˢfSdrl>h +&%xɓH,"Q.Wo-0x{|N1ߙwƟ5O#" ڄ]]Cxy{/2bCvMMep#; wCtn ЁdQȶC{u«T )Mk {,Z/BH4ЈSiE\QWz~!U*oZ0ub}g;a\v!o|s4pf}vOJn'bqib -Ci~` Nsr) '|Y}oN*Y/FF?CwE=f/!cF +ľ EwmhE q.zŽ q;{e.G);4R ŤԞ(ϩשN'$T=wi{_up\+MT}^'ȱs:e Re߭{^5"wdy&QV碩SϺ,Kǐ8rU@kczׇMd0 =-tnW ~)%'bsjkNq'Mb7:";'6q$5g Ag_DRPEp׸3|hf_)ӝ&LlfUqxOzSh5#CqyK`oK3Jo=mw@!<5 ҦJQVoR}k]Tt2 <PN!IeX*^I<_c'%68't[; š$gI=wƛ%5SleմOiڈ(,OgH=؜y>h:1FgۧWthE.~|(+zw1D5؂@cMN5Hf `'W!6H(tpFeXzN!u |Q7R  tYʞBBٖ{O1d(=h'ͶmIإ=zjbREZ1x0AX<rF\F&S.vxv س]X.MNɓk=F[pqiNolt/5 z( zs⽥rEt7 7&,+f 0耒KFEw_jul-.&gAFG*dbxFfMs1ʚ37/ Y>Ȯ߷x4X僊b@RldbNOo<g{8BeO+BI~Q?29u^Ԛa`Au4ZJX M-5BYe;5^!GV#?mjߑ-"7>XYB Z\&Y1C@Na*.B*ZҎ^h[ǁ\vZ^`O85U[?b4@8*Ջ=aX8Vi 'ɠ7eX`9I#IQ)m\XYa|~]Š1Xh`Oc/d= Oo:A&,TӐfO%vAU,-UYYϤpxM.Xa (cdz|KGbf| ei! / Em91 <;?<0ܩ+5$dYQNN,Fy'3 @_&x{2:Daʂ} G%s&Tm$۟*Jkvh(>x3ʪw=|?Rҕ0>OmxN>cC'@l_eNh6EG Dcw yWEZՕwh<EgiǻVeM #)GY7k9qh$/OnpO ! cz D#(Iꑖ FX߬#w u,֘`hTyLV6FЂ9mK0yU#EWS3"%! mS.i^z)!ޭ\n@[My~ eњD@݁Jlj~0X8މ mMtm{qڴtkcG-Ǘ! 9P?!yEZj3JIdbMfUۯR݊$NvhpA`6^g}cpyeGrYLXGULnEiN%3P~pŇ"Ķ&+Vnj2YIݝ-h(/h7ҟ8D$ /\>>cWAry JKǨ$"2^Гabk=4Du? fiLF'5xMJ(CJ/!]Z-x6so,ZV3p{6HA*ΨnɡU 5<_ 0XWëQif2yyAcFsz~e7@) Z&g m?H# /Xѡ`P\]XuΧ~ 1 DMvRU0Ȟ; EƀE{Ecc˛c;iv*e`sR$`X/O%g"i8HԐz n=ub P(Oliz5̨|D!/p~ [0/9 {{ Qg9m$C4`B^dy^JX[t[y^HB="r0-H8 tXUEg/>7+jD گ6[z1CL3R8".ZTߦV+n$¾̔]h=fAbFG<OpQIJ)0 pz9I2?~=?Y kWnQRK(g4&AYDŽb2u0H6~E |?4q:w}/da^2i_E& -HZݛ]\#zLZz#8X$9DNmޛB0"A_ɣ`49C 1Occ$(i5]OaP|H'Я*69G[w [ӓZ+Nj #V#$ c{c^R )3*DR 5's:\s|0!Bsw3h"Ny~ jάSFq$э!WEHc_LݒWl_=Tp>bHB)oCF8㠪Iٲ-&K= ƫM1aߣR~UyyڳCc~ GǼLմ54Y:7rH75=b[ߛ&UNAU ptLcڔr'YÊ/$k]ԃx0LD,DC8a쥽î3or?@GǍLO_Z|y/M# 'FK@)#cRLGL'zft= Pq(?8^c2I zڐ^q%vJ7.HOh  7>gB@:qh5E['Yx%uZDb"7؛ivV$ᡶQ(cSʡev,:\X,oΩ5CB)̜3˳+ sbuJnT%)tG#$GŇ0FW*G#^-.[,]ϯmOB 72oRNEt?)#+nuNw!` w˺S ;7,OnF2޿e9گ:d~,P l.Ak2q5,I-uYVMgɛ^Qdz$sq[6>,~~i^ _ >8CXVDr#8 c1Bv82goH[$ Y=˜l_3S]}wk_P5Ȥ5>Nn݁P;7Oϋ4E Of½a0Wף,!d3[;f#HӑʻJ5rdTTōd?!5D+I )9lC*Aw Zz:Tx,{q/?2+7B~N(#30KᫎTR;vp{7u, xP8Wm#TC!'PIEqݕX>A]Jrܔ 2@>IhcpNy-/w""#lֲÁZJ}p$)v!} ۅ B}k0y7w7@Q|2Q7BK%ku;ܥ..V^C˗oCʫ`[F {0<-)Pz Hy~eOߋ4+,PP:F croa.!'-w'3(͙ EC@xO&0m%[ozr-LmHWzN|@ *.f 7š7?a[չgSf rv[V2ŖPBiO )II\3'uĚn6C$S(@35lAϡ2_̷,73+W@`ƆjFg(ԻNlhO"_NL:%40=.GA6T_#3^֬] ?BiwQ%7P#ot>z 1j ޖ~X \SMF5׍nRsYY8ՀҝkSC+LZ8$[ #t{ !!uJ^ޥLRV`yb"v3i xi~M/>$s.AtNI~uʗR8]ĕV}dΒtи`RsRp*8DMME aQUoOkbQbv +VPgrD-_o|'ZIё1sHAcg,co@GY&kf /[q«+ٟσ, b ~'gNĜ^A&ڪJ;Ŷvƒ!r넏V=@ Y7Wﰷs;IpWPI`Y[V֨*BծX} #</ްއ1i~,="ew/L0=@8CoۆP~,dj1+P ƅehieXv] jVTںo<ɲHұ13pԛI,|( $i$(-0ISU6;O H?JdF-S ;+BU8`MR 6za)'4RkH:8iUsC"Dv0{q{,LmXZIV'J6 54|`{b\2"Qڽ?̴sK \P Xkl tn诺IcX\6O^nǦBts Ʒ1əyFI\{9mD wɣJݝ2myK2g g/De|PsAM@&fftܽlO?̳]pTG9%V2Ui@$5׏MZQ3VUNr;rg 3ife4ǖK$.gbj sO~KT~yqc>t2 YŁ8B2 ]ʣG[#-?*Zd3sf]6a?8:sۇdq1P:*pʹl5H}DL$?9Cލ[ӫʌ} D0\BٌH ܦA-ҟ}|j>Nvns<ěq/e Ycv7 WwיhmdC&XIjC=hB^Jg̞昏?R"Q c쑳Ti%uR i?'})qݡ q48rV,8@QipNX¥Y0MX͘qyre>Y~3sS_)#Gȃ勉;I6: b$8zV=?Dݕ9䧽cA(0HZγj-пdӘBᅋ_y׌p,mP_Q]9E ^2(3Pʈe{]UQԾ:ZZS2NloOb/p2 %Y(sLBJ> w|:Ľuw垁%C1PiMGJM{D#F 0 ཟwp<?!&`6jz(}ӗ &NWW;=Hc3 zܔ :u#R{|$(^N2G}!-:4ϚV>\tX٭Rys 4K"G#&lU9 谓؉x޼Yn,H:?P)$j3إ$-\W\4"Bӗ[s!W^o*[V~BwMqD'dCc]΃vOb戁mxnL=PRm͕қh:PEԤ>g04 *^|Fyspl_;T*RW`?؝Tgϔ<_{\)(`jFE7ĘO+;Qf&Dy8eɈn̂g8{HeEW ;(^M4i}SИ߲ՅgN^2 ""'$:ƒɶKZyD!$+_xK7dݯJeC!dpUExi F`K@D;EuCp!붒Q]Ac>Ѹt u:'3r5yA0&2jy 1e[ NFF*)/D9c 7fȚAĊIw%ҏ gXY˔/hCʿ|} %M ?p+yE2ED00m5fve2>R ĢNIf6,Y$o+мOv}-oGJw4/r.ZHP3 H6إmѸ[ڛp"}256@Vl$tOՂ42;TǙ唣zq,%W-U$W3 5ℌgV[AB2sNX"?byC 3sѭǃa9-9u˻s0;,􇆎"T, >Wus& 廔0_pL~!ˍu41_5P3S*^j2M9L*_jA+I3wJaK'@CL|VvTW *AE!d!ƫFnUX'o/ H?F5پ"mcfV<>@bmһn j7u0U4.o#3(}443-΍gL#Ĉu4n,bSjsňQQbڇcØˡdR-h N5*_+L'qJ;7nEeC߭D{FFh{,? NNys`a8lj XH17<]c DObKѻHǿqARvu)^5Hb*%LN3ω !y6ڻgyEuxIl-̫yg;΅ݲ =6ʰXq'wD-FOMkǿ\…ͺ{Ԕ ,o־ɋb5>ƉI9eϔ"x׆:JXo.c֠UЕ*-Xn֚_Nkb'QJ|mԝ,b" TX,89jǗ.;%uaQ|":IgI(- [$1Q]<{4# r4?[ wuҒ>V ?{d_Q"liE~0t0餼5!ĸ?1jBB᫮t3Enu5A(&{.ÁhORu7zܴ)4mfps`Mo-[τMJw}BewC$YN^euٰtGƭk*nws/odaxfTu Ѧ\쪏m|;lO<ΥڵF[ퟱ;"wơѶ)7EmIp{&#rf._"xw/]_sƮmk|K }n\*6e"j .p/7„qћ5 dZM*Ps.|@Ca2CCpJ;%|LJa)= K) X2H&8|Q<‚s%рAa ݦj"^*.WYJ#6KM#X=s#ީiәW2Ls 7UVq';%<] X5gׂLdw{NP:(@E2Pk5O`Za2N[fw) A 1Nژ"'\V^=˜Zo^LE@FVy_j( lbWGGPPq>6̀[Kϩ=qXtfq Põ֖ݻ5rW3CTFx` 9O {ykY4 GAOC@U0$:"ύa*A/*ĈRMQbE u' &Gx8y~4vT{ 栉Uﬡ,)2 諞 &8_v5L@tL}kKy 3b3zPxm!IDj,KP\ϭ[Jv(]'.hZÖx`-"E+75`7\&2KbnE6atz-v 6|@nR$DNpf=M`eŲ T[N5]8|z 7>W8~O;e/D&pt 5nW+uDO²-oi>bDXq;W͈7)5QD##ye 0b^3נ萷W2TG&[xH"!_#)gaq4 @/u|P(U3dTu8!waWIX#x4{άZƤU<1sl+ǪV[wb5vrEiq~81Re{Ӗ3qsxWAZ/ۡ\N;q*qrB?>1!Z)q  h?γ6sN#q0򨻮VUc4ESЊ@rƽ+&hy.II4Ahnqc:8<=,JeeȵV^¶o S *u5ʓaN " oƏՐ]+v\8_}1;#38gUp"bGOb]bʁ5q>Q-IZ)','Y4?뢈 'CGEɾ6u1PPx6i Cs %f嬄i ep2 dO" U?V5iOܥIQ_u_UAapbhB?g@!h?SX4xKӥv9Yz:]tԓMЎ8RAW?㮜mdXr9JOU^1iwNJ2MMz G*ʧ0z"6;"+T9Fp|s5W8&?wf{ɭ3 r8MuS[ҷ㕝^P{XRʫUp"ɑ7,`x}d疺I8hyI:&x$umd"|* ٕݚ9)ܹ@# 5;TV6}~l>_E]aY<ܴK ʗRΔ /Y$dC(@Y:4k֊sVwoG hgeKCW])WY UEjǑvt)#HÍɻK\Rʥh g/ FOAty fdMoo[Y356 gfzthC!>{_k2eyߏy9 I_8zaLm(W8Zp}Qq^s傌In/*Ot>%z C|P1-[i8;Os B=nc˦~vM:77Q]+Pv?#m JRqYKnj ouj_zY/\HE %iGMVmC~˼UW8hpe3،va0p3+m@vI bTlTCzi8۲=Q-d S(ɩﶡ9]Q.&ߜR&:G"s >FȰhi Vۅ7#0  &ԫurg"=W'b{Ӏիl{?-l"픥ZQ|Vōϟ@c4t;Jŵ&a֙oߘ2YICĒ7O7hRTrzp&ieo=tCG003шء)We* Ok(8{+Rj)vzN_Zua-{k mwK{}ͮ8~eET`TRz!9S6 ݧ#Qԭ~hd +`9oϺ"<z?#E˴s. ,eY)DYr3\]!;E_80taVTSk!4$}! 9 ԭ99:g7wif$}%V S`!/Iqe,aqZ#MO1\g )M2c{k221=j )L c{jTwbxqv_ua#Tw T$!E% 1V-+5s/hyU8!AA{uAHQEBl-=9Keae-7|f%l9IEq! ZG uoE']ίhVښGiO >݉tahHgEIH59z06Oh%ЈeR2sm0ExWCLKbmɄH7e9$A:G[5U%f:݌L )@pZxoMT sgTLI!̃pRGSRhTn4|#{&y%O0F?a&{RG4kx 'njɗzij qa>Vgd*]; g}YE5osREa ΁^G'1^S3y +`w~8O_[DFtWٌ~ɕ,@s0՞1%(вl&7vIC뷀Kwe/ي a@'cMo?;:$]r7ǠlPa(=j5Fhq]Wʟm[l'VS1Li炀>BZ$,w[6&DjGbh-f\1G`À9P"6yAsiPSW||/ .ޡGT-aM!)6GPbmBXM.ԎIࠡVp5^|L{;삕' IwǃЊ?y8/kKځ0^sʉ'b~ج(0z Y@e[zف8Yy~(*\Tۚ!mhH[jjrR"f/nX[zâ 4V}u'^gX#EXaV޶IGFvUz0rVV:͙%fΜ-5CCl}#DAU|eѰk"Fxw4YrhO^G+<~K#Tǫ-WȎJ}Ǐ\-#q{C78v-3%)^Z eq`-4&ѼWR움{!ȷK`]g`6\~<FeYZґ"KbDɸuX&jț 5QS4}>Xjd:$C\ٛI^^V F${r^ҳjl! tZC 'ܳ`6x88 / Qe[.rQzѻ{Lou|4y3:jl'=/&Q-SrqޤŹ2,a95Fj1Ӹո!))o9_B9xbN,khōf7<Q\ea'+RA6N 6̎y9x l! 2IL.jioHKkF&BV wa/y-$4lxsP24*&LԿdf8Q dأBUisnL0:%~Mڨ]K/ufXa.cv^q%єx%}1fvX-+kxЃkH:20귯:ZN~QX]EL?&łpt@E*,08g rO6ң 5 N?Za\-%ݰ]UW%*j ? ʭb)lo  ݎRr@eD v.˴oEKJN*=!\Y =/58`Y CyG+yѓ:Lr#1ve1ڭ7[ 7yPRt1; B%JX [3$,˒a&H{#@}[3羒STȏR)0vS`c}._%EȂk c;2o#,7륖G1N)y)ȇ=E}"#,Z֨+qZW3u6 |veP%U>79F{O~eRi4KAX GGղ3񉟃,װ~ 2Acwn Iom#NQvSPb,dSW钡9oi F.d[-ѱk2w/ d〱T&8{EYn'fp0^z8ҝt t *?C0F/31zp-*)Abk.teU{f/? w]fv.Dޓf.́!uW>O0ñfF&rf{WN4f<iv&N)Б"+v2\r!^_2ao VӆL+Z֍د|::-/._@&v^ s\,W>cC&!@|)p}"U+ l"ݔ)}(dIi._ p G47n8QޟӀp! Pc|z!<7!W~մ|9l:11 84ާ9c"` ʄ>QM~>7 c{=>2]eY1k kHwFxYKFG$kN.+@t(gcD8yM$^3$$),UKΞuIV֑{JvC5XsUK 'BGմbpSL9@9u6~t 8ئdd-O#o+Ϊ2L/;'5> m ipK?$0ǻ릕̝bC;㌁kFGunVǮ(n"rr$F)W 8ҩzzQT|D_.3gpJf drª7.1K:kO[}π>DnT!g#'X]q I|RJY 6$G…%$1McY,= ׸M5'd\9_ mYʤV JVkDěx S'/`rve]a݇pDN-ptP).i))h DތWB Rɀq"Hg~N$b&diywY2Zy9/}Z;P] Yݱ^c 7ELC ".k*J6xxnʼnRfx3eP ;7Mj6İ1o%Qt.'3X4)J, #/Tva{ІVR>D@Id̯\[k1g(9_Bn9+rhd4WzxRrդ}ct;DzH  zee)GU4Bƌie5g|H|Q Ę.5^vDZY dZAEFB켥haG ;R8XzL:+\Se s<=aYΐeo'{%At]p1̒eY̥Y \ fj( :&mC퐎GÇAڑt]5 D#jyĝX(غzv șob9%3j  b5/7Vu+t Y'c@8@AvuX*$\G"x?8A2GC}o ]2n=S,36.(@5 < ڹCq<|* o-SLs,oL{ 5)Syfʫ$&h2uYaہ lFoP_r*'  G&r%7ђ><%uꂉ4YffJh#q}P\-l{`bZ1Ds"Qw}oq;nа%v*Ʉ{#`Fb kW J{1:a03. ? \^\w;'^*j]Ћ `Ԩr}fD!loד yxKCe`a8""MCreFYtJ˻0+N݂{T*uvMPӚ4$n(k'9K}-KcA}ʥ4@;?_aMXzކ>YamFxQ ^/<[2pL|T< bxo{AS ʭW,]i-65GMs<)ǏE(=rScҷ&4fN;fm e(Bx5P5tSyxCREɧCiIu@ի\Q*]|D \Kώ-Voʣ-$9)ؼ*c9㰕lQDOADm*Ӝ*uvj i`KDzmE$H( 1,dt&dӵND `4H>{LI_niVRu+'#he^^d?=?HU\X9+/6_kBnO;RY8]vu!9̕g{(@AX?o:;,M2Ke]RCnImr0ۭJ:ՔU`(}ÒYۓvŒύ>'a\-8#ނ8DlKMrAz_]3MD5m˭I7th>k).C߱ZLX{3kZ"f?ƾXE_(eM;K]#KbV k(p3+.5ZD]@|ҝb/9;v5M#J,|Z[2CN⧵Hҝg:=qIͧ -:~'wslT%nZZk\}3"ĺdK_DzB>J|=Ľ[ba?@@iPYB'`4ϲmZq m5fWǭ^9OXyh2 Z;I&6v9Ċiȴ yl! yK[?,5(iCu "Θ5$GvoX'c!68kP( qWRQ w` ye[np7pπĈHУx 8=Zn ˖aDD]NŠ=l,=,^α\n0qd=hi9eZu.V' n;ҍCqrV3$* '@{gy\=^t (LJ+oևt㚡 GAںsZL[TdTy͋vM!'.Y~W7yQFS, #)G0ݣD#E2!U>lۿQym(%@VswUV2ԅ77=-5i+؞&O%ȪcBܚXi6& C|fVB]4zwc{Uh}(3iax+61q2I$C6/ ?7=M nk 0jrF;?L}+.l߃HYq=hN'bDe! AQ9X߼CZSH{o\M}b:v~wGѿrP&Cb:Ԍmْ& L GԲ3>]\_EK?j&54,aj~/N.;ۍ3+GU` G$~/VOQ+&qPD˫uIDu[ifͭW |H0 U {g<Ȼsܒ :P tD&Efa-V)f`ً.. l0c0HlD|Ŗl7+)I$D & "w|O*&ur :gCUi X)KY&.Bk v JéXoV",Hk\S9Nc4Re 4CC49|[M rQCޟ.]e|]Fs}zɚB,-ӎ1 )Fj.@QGq۶ijezo(f@ʈQ L$ +˷9(Z+q-$(0?c*&pθL:Q`7'S8K rYdj#.4%Rf%\9|3"V45wWZ*$*tn'8NF{] [C-gI%dUmi+P0$Z>{Iujsi+Ղrp&4@Ε !#07tǙ d`if}1O]mT eBs<6Xb@.P<$8n ic n˘ɻ4%hw5ʍ~1@'l\7kk˂{rNNs &U 'o;BL9peKh-#ŒG0A+vjVsnևK>bC^%n𩃵ke,KRݾd TN. !TeZtqCtA=@L*)p:K h)i~67ZWcʿ]pOɸV/.UdT0SW*ٲ_tևÊ.ŵ/jn[C c%G4*!LYu3 ]Y/te ݿ6*cxIރ %Jp(2dטEJER3* QJԻ8wcMo8o-]YP1yڈk%R# x*`\݅ ڪnd& =(N$,wԐ8fQG"jbL4pd0'.mJӿ?-b~%U~wyx.ШD.N8M짽SUM0KƟi2xC z*(97҃Vaq/ie|U4sk*(0L|& @\ls!W 'C(jä TR!c[6d]xuLL2ڱ$ĩI\%"e%4ӕ9u甉0~I%YZ[m(/N Hl`o9W`74<Y{cPI@/EeDj8X2-ȋ u0M Q!AH%|PG[y']r~պ *7>rp$UuG25 KO" i,19k*kW:e-C5Ht1 Yq"mNN(j9aj=y+DF}b{CwU~>o;礴װ֢T/<;4GfYl!+RZ:Ye%>UwA>]w'Ϝ@sbApKK0L yKzr(s*|*?c^?V7gXœMMzJփo|ŢS7@zL@b؉?n@9к43HpY$>$xd^L6-SֺI`bܨvw'{C"IOawp/HW "bK 2u\Dfd.$Gor8~?F"Cߘ(h@ R~u7fr:B9gэuB{~L  c7|^Jgs ܎E)t.r#eon3yuA-~e? ܾ=Fjjwƍww{}'pw\;DpBMbPnZRŶhA+azZ6xDv/\*E3Dg,.TٍF@B6P1r ,h *G}I+&w(a%g;-!أ*VKg +1J 3l:@wEHD&2) oj*>;DuOE@[ VhU20@y7&4]Z e{ fJǤ󮘑0BGq754:$aLX3)Vѯ9-A$ι^uJ{^լTuk%t2/x=bzE?DM#Iȇ *2vCYI#. li~ y;~3MY9ne,o`ř41{TE=k(΂pݸ)W"m:vR3~z,Q(hDQ"`v:aUS;8k!#`b& 8(@ ,C5 K<d^S᭮mUɆ0cT$7&!! #m0zPuRߢi9ꘜfR]EFX^=( ǥI$˿H.LJ8cng]_uKO I KzBIDscv*jx/Dɪ\gbF# ~ -PT6U5nI@)MLI_czD#N_1+ z|tBCYz/˵TAq肔NU=4iBoY66С{Fhw3MU(y)hZkOͳk9$Qw;+Mb Lؙ%lBDsG?*~<`G0~7 ՃPq깅1B7.;DBpb)1]ebVC룉x0QR,~97Ѹ=ݼ.[jИ~Qyw'ϔ(L`׀ BMm9Z9wjs(#0SxՃj`U| UH*3 u #ZMY3ұ)Rwdu%6Y x!l,#4zնOqa]($t P6 [S5J-7uE[3Kl !][B@j0^L {eϧ'}jpG㮌sSM F6.M9Oqi 5_O8x1M -r:/u aPRrtrUHpX^f%_tB| jsI e݁wBdnE 9<~1R*N7*Fm;ƀMO?#?2*vhq̷lr^{ Hz 9Lo>Vq~˞߻cqi8 U#-;(lC)rN҇*]m7`dUh`{$ɅJgfl#Yռ${#h"Mvxf9q(~nD--Fxe1a}&^n 畐b2& \.GO#nrO%P ']+m(h¼ Kt jf=`B#c2N.gWQgqA 7aӓ4 5 V\2KI}]\y?O*t*T|zNzJ&O$b`ہ"61eZY8inh1Foyq60cV+ȏ e:wMtqƎ!P*%+xp0Ш<Գ8vg' dOH)Igp۲Xsb Αn=ӆUؕMU9_ !3LNН$f M2s?67+4 *Xb1LRU6(D ZUB G#ڪG3뫢7K9ҢtA_ur_P'jj(@ˆzA7sEZq}햾>gDBMGߝbp76ibXa5KzµWAdykڼ MƈŀYW-|(Ϊ&gJ4,2qʧmJ #'Å . pdMo\(u-sͺG.!3EäRAkr4LA*%.JXgoQP^H9Ůq *LЄo~3K9ƳH2?CIph <u!lȫ k -B 0%h݈%>#`Fh"K:j8mw)Quym@0Rk]BbD9J(ǛC̗Bk'ÜM{%0E 5X/B&425yC* hhlmiW'hR?_|_qGHEh s]S+nѫ$z;D#滪Mܐ$҄B6s*: ǯXНl$mr,J:2!dc Uădm6( N%Cr\հnqX %H GSa.%6uDOȣn۹+JbN.5Q1J [ XWb@I~~Xbgus\} IamV+%6u 9J qsdIIX N UNcRq pejfd21Z:|S𶰇I7[Tt}S*u;t'}:Z"QEyNk*qP<'vZZ;H_D2 5Z"Vcs.+oC%б-ts-H$a$r#H*oB0GTi&*IU{=JJ=&:ˆc>j&ϖ8bZ]C9nT#\I,`Y/Xg)B1Y\e "zK8V05W&;#)qJpBٍWCK?wHը埠Y^';nşscՐ"#ާy@pm3F 66+2y4YR W H/ y ؙyIU:H3HD,ۻ>P zq"9L8q&qHy$0b}6*2PC!y۪Lqi0f{`n8b>Q8™|5v^y};LUuBJ';_"ԐD\zc`4iHgW2?Z;' SR(&x#8(ɡ nftNdBĢd"ppPhAWdW=+pLr>9Y9$=rՓrJn$q"BL5-I cU癖Д_ Bco*o2}Yj`l5D7QY"\ڧpOŽ"ұOL#AP,(rlj4-h Ԫo;!4j5- a_:7`1>%5L{$@hCtL#ʁW#kՔʯۜUCF~zDޑ*=ENMf|qE1FܾV%YۂUjs3E5'SJ]ǀHvˁ@qWO@ Ka.jg] ` 0'wfrGW7`jN)~SeVۭ+/#wՌONo2WwNW $Doƻ( E5ujwO푟?+KPW)S'1`&PZyc>Z߬ʍ|{~#fB뇢/ؔv4`E$pG F$ )# Lv23 W 2{VP;TA]P*14yޔ:z6Hˎ +n n☣EX`,G"oY$c9b$mXU9wƳZGr@"`fk}aTKhsoG17P LI`+1nv3!řxz%-O|[%^#kŴוp )`Hrà(`EjǷGzwCdD|VJ}hg|*S!F}K- 5 hVWj@> {EV gW ojCk?E0rv~QYP3-*AUR/Bڱa v0)l?썝 M!0{87.C)q:{x9>@1Ep#'fld, qOٸ1H˗[RvOK|Sޝ3hBlXfmOSy+NY=Mu2#; TiPavɘrxpL&mű^S[.4mYvד'xΙ#l \)SVgӕ͒-@Wx-7:ܝ=^}Ib;K}=ybMx->^qNiS׾u@Ej,GYl klT`  C[ΡO)D4 Ɨ-t*kG\#?c:C>eP!`OjE>_0bs܏C(J&û]+G-K/;iCV7UU`Sfߢlͮm_3$U{|?((t8asůh:d GսnI)Ó&~.͔3V8`Z Rh\^p)PXsG9Y5_Dq/y!aNSj0e⪚)Rg}Aͣ6qg-s_kOGn#xwgt/"&5t3ڶ=hGv!lEm˸E+joUXv9kV ^ƵnՍRuk&rX8DH'ұȷ#Mh2yCZAz?VVu i{@_*{:<>슿–@\c?YtqJc2Mz͋X6۲u!fZ0DYL#GNDf&ASSme v0IɵsŞZwifn+Q˜B_d5*F_o6>Jd%%*o3Y8ρ:LxeS܍mǞ1x7^P; U QF}Le",e7 zI4:ڛ"PDg nv[ā$#+wVPI'0k7kS-Z1RD(:/y+EL L ;24AT%wWòN4]Yx<}zy_t!(0ƹPC{|Ug'iJV5*hSVwflW'.PDU,:&$_1bYxkj.g7cw=ܦa}+2л`H:ϐwg8i/x1>[ȿ%ܝT#?=ztUD Z {c^0 @@!9f2QL2)tyj+݌D0=S6]M/p cȂ}y7V)Y:O`.X&wkB uȘ2:eX;BPo oATu@73*s\2>懯1?蒈 x0=S dSW!cG96Uc]- ͦi><TKjǍ#3DJ,be_<|ܜA KmP@1!g3.V w} 2b̯#w*UU;q{̺%cֲ\ z{0ȝ&rZ,W(,Gp|Ѳa;GxbI؃ @iIMfe% M~_$*]y2Qgbz Ż#-b/hos_/1CVIR~Fst*t#ǍoexSxo%*38?iGx6I{E bw='s>lSt%麗NpҘԨb5Q7!NK%;.sl&x-HMW%$\cVQ)N)p]n剒iިVP/HJJVi#LE $hpF~ ?A͂$X]|Ex=vgbn1ͱ\Uvt7ђ$EhvḒ<-e"$zŽX,Hh3tGZBNh _S0=UM{̂%rD7P{Su:lWQzm vsƗd+ȈJr)L^ղCd%ɗ"D mf;gaVq/݌<:*F/.^'uDw#_ Uǿ2*γJi;whgqc0_^pd\ca+wE}jz2/#VO{}v@R"kӣ ԣ Gau#gl`eg8q2YE ;"2 ~Up0"3{ma=$Yt$1vqel w{ĜBc}zdQA ;O}#C|)9~CIm\fmJ1֎u,;C\*o!{/T\R"Pa<ܗ1oLp YN0r!c}I8@ybAe7"P>(vK| 2K.ĵ59+@#GK*nO`a4d )E%9Ta&`/=m+9mjpVac u~.K%:h#Iw˛_o"`, ˢD` %OFzֈnG AbtN[Y0ďt8:s S]`VOơlwJslTQ-k3%FOL \d̠\Sڹq#]h h(m(E T9cZW4ցAup,,Re"= C*e^P=IOms$ci.hyT* fAO֏>O`,J*PCp( l'] #;#Kdb-W)z!} d+!\wej<)r`x/Q*ay я $Li@ӷLU9E̲Js2w!"P3˷8% Z0kG%n(9@cn(?^ Y U@.x{WJU-h jĽN1SR|QM8{ ‚e 1NRsZF(Y^'Eȶ&6&Ζd' [_ABе3%K `9"i|4/lǍ_]wCxRMC|Rqz7:?ҢDqỠ.[w%M&=,LP.ORjކ=&ex4o]$󕆦S%qPa^Tg[/PqL9wp=}*Zژj{*鑼FD&;V^ciÆ;9W  PԼԶdlױ @;- xqX^ˆn{>YD~ {"iJ3AհWBF؀s%՘CxJc{BKs!tD<0o;V1k ƨ-B:Ff$fheBhAYA%Vxywe^Իq Rd怮m"t0>pZ}q6*k͎ jS9[mUyxò W˖G{er %9[ky`*Fbpdpӈw<[DUFǢ+4ԴޕN r{ @RPʿ/0 wƢ%sYJ$,LhRv* 1M~&Űwr{@^ h V>Qm9WZ,yQ a#8 Nx,=BJr9:sDfLD6UΕqa ۾4"sL >H%Ukj76'T i-g:Ȣޚ.{j.VstQy3E!tI3!%ya:\NRKQA%%PS56A/oud@g;=B)AFPkO)ۛACP{!?t4~GvD58ՕFa2:1usM%3W,E4O? oe}'ݟJEԃ;tQwwe𻝹 ǪK)mp;O]0wFQee % ];R҆AS'[pMȷfm4Q:HxN\rêV2VML@7gmC,M8Z7$%ЉaF\運ђj\O/HNKnv7k5'  ׆v<#ku2WL;͐.Ά%!0 ihtBBY i4tVO8'T-aWwĿֆA-l½lvrF \'.!W v~S (ј;9S<~i FS"$ 偵,# \Q9[9~?'}1 Duw;G@6=&;JŬ@, *9yeW)߻ im8ٰM0i#uN F9E` TҁOp׶z)2.&ә>5HK1v?,9hBkr'[*۰x_lW',CzRF0$L[;|t: AyLT b ˄'$ F.A=P,[۠i'}l=ʯLYéT"-PkҳB7*#YxU۔K2dZ+P6BVZ)CFW ]ȋ /e&hVt[$> TZ{U@X|ޘ{ܷkq0V& Ϙ[f7l[EpNIwILI.H,8 7ﮱdRUt8'6iۋ6G;Qb?1:ߥRū& 'qQ7 Ыyz`dwf]CF|z v6P] Z=qӘ"ŁºWjY~T_(]%{aa'Ui8n0jjz1 z~Ǖ,uv_gXoR'^?oÙM o. K{.% \GOqjJFj,5f:]*]D7^jP!ļ!EbI6B T>k{q-jCn]|;I14ޫgR uHE%48m:q]\^ } % #!\pgyɆVk39 r=bͥmUj8?FڰǤf4ͳǧ^읚{OHWy}~Xm61VMYJ8PǺB6)!R[@_hfj>cC܃ғn<_D'e =V4N*#)͐3+Fbh!7H EDBD bz-N8`q,Iym}pdhBx~vP ].ląզ}4@B'8c&NԐ~k3ۙӔ{FK/c(Nؑ|%{BٛM_[0V=zX vθRH?H>@QQ['|IW x䑴Q8F KͅM_{ 1 Vxe;DϝG>GehmORqBZV7y3Sp1qkfޯ :fO\v0w V3 )%1ml7BHA刷)Kc9ԚB,?a(o%%']/kSdaNaVPRI+8+=,\kR`6eb\M8|n۠J?ix&&|4N;vk@{AiV#JGL #mWªvB,5yN8s-X" hJeIZ$vaӽ_X3i!ii/G٧DEcoI'gsssMgNIO:"t2,AR<)Ί UMT UqpZ#Yc4ۭ Pb=aC-#LX@7ExYPɢGƐOS]bFc%6C"6m3djP8sh?b}>`L5N# !&4&b0)J"X^1+{lus2mۥ;\/Y(1m{ 'Y/yLM'#@"mjdHrlJͨyP'sEyJF8rh >'$Fw )3X_j;b[~- b:W4G{kҁq&_pJWDKSU5ٱPTNa+ZJ,@B n C|EwZeva(p?oIs&` .xCea鬠K %3D ԮźG{((MYWx%SY\g7޷`2ߟ},r럐gB¡]}}99򳑴Y E mF<F *_lsFxe&NdV3AAa9U;,UNZ@qi;)Lj Nn}d~}L(;i}@*~)#Py01wx1g?#6ir W1+.)~|$pr'7֮THw$(I@5Tk^ Am͛/O34e+*LPb[q䚴vcN/^@l琫qX9QJ+C ZGp\=}1T `qm+k`}^о`Gt?d,SpC-n5pcl = ה%HwRYh"h",}D Pq`j]\~p+)2`Ux[ ݄z/T7ua<7#mc}l1Vf Z"- KS+U ةC6Rpf2D2}sʚӍjej> 713 )v'#.ltO DU ^ _ym 2S}˻dFQk:*H'?-*Fu#R7|x.@`/BK5>0ʫgh*񷉃3)h4c쫈nĈd乫|q:jYIOs l%Vʹ=O^Y\$?o{&DRjigFˍ. &\ }w#deeg#IQy1A z"nh4dCw/"F)F"&S!Ɇ@zvެTM/S; T{|yyD)+s@ܨnO0\ :-Tsrƹ _SiIjMfy[X,R$%E!̗yvX_4'Ksoi++mg_s4/XMQ@9'%uDrgΧs?NeڑP2Ås 1$Ob;°U5$ 7hf%İ͸e9Gy,lot*:p|}@h?JgwEhپoH^7ĺ4f&5Gh s^E2^ݮMc;SSySD" ,,L; ko8ےG8}+xٰ_2k`m2S3O| ؁bݧ)&(ͫci cPȴK'%lE"ߥ33Uݯ5f^3tFuZCs {.2ԊI$1E/+ɈJA.-^"]-ͣͧX'[+EC|?1_rIaUCFè7ޓi j٭͡ZU Wj VD* DsA;Ƚ9 I$MyO1m;E@  *&R]6,~=9x_H~ "G@=ptŔ_nF[eiJ^7-$ќ'L}yku &. C>\ђo8?|3ц]!zl2:sނ_<ټnD41y'ófFM*kg~)EHH;߬Fb%cqO<)PH貕,$eۿ1P=RZoAݹ.U#9~c8ڵsJg&iC4EC"p䑗5K.pxNآ#M.ɉ]c;}|80 s3Q$cDPpn}$>F*ʻ8~J[".*n.Ȣ_Ԏ82 T.h|l1wFEq._x(G9(ID72  NP.ԬkR;. z4y:Z4 ͟PԬ*SQyE/oW}8a3tafA#U6RY^XBwKj4?Lhp9b8GZҒaD+ đ(@zRɼA+?xqa%kHjòs}CQPܯVF= cYgMD8dOKO:Q_Mb ^j&V'}Rոllg92z;hyVk޺4ё7 !fhRG7(x} ڈ9/xÞDڹ#EZXgNʐ.kp&vRX3<ʱk=sYS/e}wgz;l `)jSYy:3D|=S j0xI2'3͙BɣړS刭Kn~4ƃ F*đ׫ Z[=Xf iZvPםG< qVө4DS= 7}{Ŧ#'NaYwO% ǞϺzKD ~yڲJzow@ jIhĻٶ+= PنQuiW$_ND9tXZ|^ e>G_}nI=B݀9xljs6i=.!4P {%3J{k6K^**,oZ]Ute, pj"U9YO UZFpn B.w( CݿdfAq_ qPA;uAd)bnf=[,0$ied@8"NW\ZF .KRx!`OlW2nVebSBN/ #a<^fM;3Kdh-`0VOx$gp!ZfaN]B36K3*G"W\bdh& Cb7F5z)jφrx2aQ HdUfRK^u(zS~n(!ġ~NmmpD^zo|+~'?4UPT<ܑH\=^f[ LŎEngmoT{n㻱+&7H7/b&\CG ŔJ iWX>/IL7x})MIx zƒ1h9QbaT*0JT>M)H!Nr*њ:p_r,X|p`VIl&jҷp\IF3HE!!$,:K8ǯoOD@jϨWK~y8ԟrSa׀A}SfXw`tdrEXRGϳ/ro%7yF  ׌;wwdaY۝5UUezV v)-XQ'ZB<3X&"9%-c%E(O`G|6H!h{3.$ouɝAGA:#ˠ030"GҋbW K*EޱL$D:\b=psI2=a9@P?mw2-kv{vB XerssNM'zPZJ7iJ;MX@+TG.~{낚4Q[R&4^\ei UeI<( C( @arzYUn˧w\4IxG.`֊rۊbzKF} j.mٍEa *_7{Q**9KƜEmߕY IJ/nVдYB =wy" 1Mk^Z+yrR {Ƃ /MSX֯qf&7uPdJOv'4믂bylmikxz-*x#sjjw1o8IHp)er2_ DR*Dxgz{詣Ӿ>g ;q >b_-H\ va֬PLYǯn "z#SSi$?)x*>0 U#R<;n1pIZ VB+`k?)Nq ӻ2COm*:&#jrUCa W(FƂAbOH^Bpߋ(OI-/yԏ(Y5vnVFOQ"<k7zRJF TLu\V}qv5J)X,joG8,}>SO6Z}@D4<] } .i~ºUĴ҉T^\]8UP1Ip|]<4.̞r)SA̬VZ!2{*IoRQ7Z*'(WrUBG£LU6p+|'rphh&i@ [7ɷ 3ҙPY nVi q(Q/!\*4귙S)!At:"ʿC[(㣺4^ÅP]gI̹:Y[hR. `_鞽ʨX }Xqĕ;X[WmLhl(PC&rIGQ7"gz7QIu (il@csINTzq4?jerI_TOwcrA=Nu53%#Rc*Kvk'(೷wQP18f@|Z-vQJB VC $r7DaRRg`H)i"[`kQB^*/u23oI<;6,)\5ԑ_/JDp0\"z;:gߜo,G{/cZȐ&^7.p?;F"]7&NY8f1H~ٕ/!8Pr$'鯟yi~賭xx|GO9?h,Y1MqADɉUz(&\+Y#G .k)"~="9W5)y{2b/2;/4@ h{b=Z߃95:Db2"{-!Q=9u35n]j&]lCrh]X3S%,k;p(j71"-c0zE&vAr?WHzTe v 2Q::,阸ydl1&&W1 0#V58R1 e'՜k.e HÅ@[ tFL[-FֆVU,e sلݛ6-fL ƶҸshD% '`,5 Ql6XD0tp֮ZC(ߚRxD|fI=^yn9-S;\V :${ٙƷǔ&"L/9d'bU?.hb gr88hƉƪ*3S $)@ ,x6w+^ouUY݉ɽ#B]V2y: p'oS=C>r@q " tm{㍌eN: +@x̑+BW׈'K]=|. Mi:@[ϲ,.mpn$H0/#^BbC^ɲ}wv(GJy!IR,)Y1r@KWzy JzΪi%ED"/="o,NvE}cAHEU/G=X0mjoj*c3ױdБ"qH8{ږf۠ %:gl"'2p]0ֽD h=鎴.KIvu|Uo ayh ({%+}͠H%LgB@pW) lUU`i,s3W]_Jb~nz6)o} &G6\x4|h=2տޟV#GA%6M*N* ;QI@ M։%w~g-klh?x *n)g^h]'"vFbwz.MMnppQI1PVҳYF蒞#2Lu&BjGNdA|bby9\cꭌURm@7^zvWb%]Oͩ jWW$YR0ir'Ɋ:,Vh>[87{`=$!p)9ũ^F*?QXن/n ҍ佬X+os.{q0cƨ5c 4i|(묙,&{FJ]3VmA%WA߇RCڂrK|ĸ3/{j4m9%r8灠"QGx (6| !Nw7e&l~1BrZu ESDߠ̃z*-NǑ\38 vo:Xey@BHfۯfN=.W#8BxjE?@yj 9H7ʓYc:%L^ x .l%'&4k&W2Di\XBb?lF?93n-Hxf !>@xh?P.=GKKnT['-S'A?CشE6O&l];:rG\{ )&R»..Ԗ$z9@FHOt&"Ŧ <;kF>1r_1T;XnZq]̂&kݶ#PEHtzgǔցe MX'6Iw!t}Y5Xݳ6щϙȚswJNiܵTJH .w1wyNE@){)!OS:O([@ ?7`vu??ޥ@z 4xDvΟܯ!= WŮ3T 8Sr2擮( |h`c n>.=| ( Kq;ʥlCz] G+nIW~Â=Sχ ű@)\#'6yyeZbئb⽢-PGմN538կGb{n *wҙZwV]1ӵ)xr/$h`͝ntvAW5<ڬz8J>1}q@+տϦ'_K8d &RP$Ҍ`0 A)qoȭ\ vKAp0-4i}{ j 3DԔ<,cĆ .cB}fKwNH*s3ܓSHx huUWPUܶ4d .B)g>HËUoEⰠnn_}/fV$oy}=VCpx09FWY¶lf:mr3)%upH^ +*_ϷxD;[^r ZO/APAa*l\$%|;7"mZ; !FsVk@4K*zՐit(oÂ/2Qѓ!ڲ@2MFr(FSGOO>,(&}.R\>::*t|N?vʚt. ѫi&-bmV25N'_Fd)6NfRy#3o͗7Q0)hYϢdOcNB Jxt|*)6`S׵Y:0B 5$FG W.[!=Pm)$b'lOh21&>x.UqE<|aZ[dUXr 97COo\sNB㔙AHOB;ZQhOJBמ8+3UP'Rj E&Z(Zti7CSZv1n6e j_Kf ++f&Z\ ͉Z؎N"hNl0_ԗ c5IIu'ǡR͡+d5y~RIm5ql56QqY? ge}Qм= CG'a46)/wPa<ԩJOZ7l`A/i93G k-!\D}] TBԤ!Eþ:NRӐ`ĸ6=2.,L^<$K`j6&Lo*`>Rvm^7xPŅ lݑjk>JGn<7~FPHr{ ylou8 qq "jD/fax8}T3ثP=xb~WܵhӬ>(F͑U{wlI))9&8\\屎ua^C} !.#s!$RJܮ2!Fz'Whh4v1ĥtXqC=v99lm8L"8"Y?3جh&&W=ix9c$K%_7.Mvռk|^)][p *٧:ݬy)\>@(@-!_\ 6!%KM " 4ZKg8{>VCvRL8!Ő0WN+O2-$8-ǁTwALy\R[dhk ב?Zc\[o(+({CҕW)?wSw{EtjXޠ N3^L73~'4@{CKZ+66\s~ƨ]7@ANm%/Ǚ[T{͊n{q 9;sb[U 7A}x@PRPb!VӶ.8mHTxG;e"Цn8En/4ylr#ļ)sy#*V9Up3M.N6dqK&oT#4q_7.d쥓2qEp=` n8Tj]6 `bSܲ= '-pԔ"_D>ZԢXfiYFc kN ΡihQ8E)OGaC2Ptdoe16-*{Ӷ5Or>s4 nr{Mf~B5 ,FRoqW+&F7A%#2҄ 'x$γs+ I8Bn']RM[QN6a^گi*T_&#%D_%kZjŵC%QqWKaqk2h7]>O m\l{BfϛPth]/80^ΖAhi)$-#̺QKpk,5 WhX}*\BIX8jtV\]<9}X䶲}tYoWGIa-*vF] n͓Aߕ.6Ģ۔n1,4Dr7Zr~#kJD-i&0=.4ƃ =]Gy.hi=-XVRK,A3:J^=D|iC(K`T޾ç'U˹U@ {n`!3i>QXK?H}:*Hs+}?{8StzՏiefRI Tt Xj#UXpi ;Xn;by.'# +,")ee/ uC@EŐ%݋9Oȩm &[{MFH6%!hЍ!Q2HoILLUO(J6B'*o*)l !9GӧWׇ`fn|E24ʗEXr4/ xQfjG' })! UF!# Q/4elyGD抇xdېa R9N>?>h j뒢BT( tNT W-2.ׇ U4I9L?H5'"@aU`W * a)frSA첢\'.Rf+keuxOY;<%@ue8( 3](lg468$J6zr=CՊ!80v"}X)m,PK\&xYCJ@|+<]A] (tƉg GHY32&lHnG!e˔ƟbR2}\6ŠfINzȽu&$xeQψ襯d('6ЙY,> s}/Xٓ6fsU]姟e"mG0t49˵VF qdH7B! S j$ei ?tH[kOt5ȺO;8^餲UZHpg?EΥL|dr)9_.< f0[Z*bH}.3ʚv ?c){`dտdү"a.>%3(ch9(?cul`Yƫ!@V)ȳ^}Ja%gdM{JEȇ0=k_RkpQXCM=J]wBb󭂖ItMbYڽsN%5 Z xJS?z%:ޖ0܈㎎/ˑGۧYژB]z|wDoOa]˽T 8K|Qod6q|0b/wO2ɾ]Fi&ZTk<] 8{+Du/h<7 WFENKl=0ÖS+&9`&S  FCx׌PEXڲ 9;Hԕw݂ո٣7 F Hl1[H D>7wA4[^zV?(oDˣd%Ӭȇt%Uu}\&xcei9Bve"~'0N"`i&7ilށlTH`$Ƶq+SbWR\Lx,I67˿sM336A mgŮadVRdJ }$'8 q*ݙTA,Yѵّ-pQPےU&ĕaĭMixSHlIhgt%R~Mg}U/iAV݁%Cs󏋇$`Y[aԊ#>]-KDZ0CX 6=5V>(n$ޤ!ldE~/ #] xڧ-QR NsrjlF*Nq<-@UkM)DSL,dĦGp[:w8=-M'W1]l+V 7*8)6+"b,Ú,I.cͿ;8NS&L$sh! 8v-N-ޚ' swoqSJMzjIn]]z:^Dnut5CԱɋbTg|x/:z@:g<SP{ ;OXD`pudxb548C& rj&79jS}ɰȫ΄wѣ𖽥܅єˢotUQE}b{4Dޤ}^&&^ıpVWES>&i(yMa#IVs, oi!=;~b XP?oN0R ́R jqިw9)^u|F P{▖3"C&e1ftb9cLݾU#fa${JC?tC0=.O H&)8 /fHJsjҚ9f+5 `ϩW* }ȗ̖\i쐳TCK'bj3*1*l9C&t_\ywȋz{)+דV)Xu+,t a29WDO]3^b˄'C 6(T-buIΒbzeE CifȵIXA*FKQev*~$*$ТK%E$hP]N> Ehm?yS#!E&븉>v PCN>8:(-Fk;g0p༿݉P5%sWVxf29z=]x$0n{T $g^t6.~ 2ގ(B6h^7G# }Lx]0ØQNnT*.T4IP9f(VBk7pacܰ09jKcT]O1|l.,&g?S'~ 7bW>HP.֯Hbiw^H@0Y֒- U`Zhl J)9b^3~cD;-t)+z@q,t"|1QhRD" mj[tN$sM16Y7y!~Th>}($O6+3vSFY4\]ƚi%)+nPqW/p!wVcwȺw]aqEx?1%0fX6Z1Zb|3 !vlN4zjrxQ$٣'Y./lZi_NR=]WU&H[`ڔYHJ#[ӻ}T~/mA)RE9S&v:@( RRY܆WuJ}Wk=Z7E\roޓ@tD.&DRv`!%Ft)ADރA*VWVwY}V ]jc%]RIYsBHy2˰Fom.֩OPUyUCv=pDF 6gܦBfWuA~$Ԡ[S ;Qĭ,ccGyP-1kڒ2'}^}V~-1}J;/.ɭpKL_Qz5i`+DQݰޥAmeseӮ zk M7l ~WyQX7!@;fSZCNP8Z{ojww+!ÞNZ vv+w?Tzڪ) G8D;qye`-).ZwCCc)~CGeJ\)GRb#W(!19F{`]¹ןǂ0C:HsլlcM1-[fF޻S7-%4ýSFz-r1Huur71Zm wsIQ @©DN0h¼rA#YcDK**;=$zQtlNW%sج 'z(4?qE{+ـ(..3f=#kE;ӠLZwP3NLCh bd8P4i\Ug#ʳ祵k=|@9GZQ 0 =A´dbQ^k7Ղ?SBz+t;6okuPt=.ܝΦ7ZI,h"AkBC\A-&}ȚdM>hJ2>tmѝK76yngoqP|n;&%um JY߲-. Xab&c>=X/nHwy Hk~I:~lW>'|,i5^&j2?]]TEz+aEy{ e{Qpg JiRBvÂ_|o;,  -4+5"wاć! rA`#BN@+m$6t7`/VOӨn+`wpd/Uפ`GBtP,l!ub8meRn )_Gup2VY3JRI1 5o"jK7^|zhЉ+ en Y b)]}*$!ǫJ2(]ͬ~AH 7G:[*@Y/C3VA2L8OțqYͦ ||PĚ-m]Ο-Sw U,-(:LJR= XL.c-cZ_Ap1$%;Xd1iuNŻކ; +o6/) ~s(σ ~ֹVobVai%FԾ25d-/U [k0g*m5,RMc:3~ 6!{\?Cp)_kօ[' Hd :ec/;͠@ iZ,N瓈BL_\z{9Ѣ+؈zx(195v&=͖ Ԧa*9׌ qji=$š63!C|{nf\/ DcqO8t8}2|GJ(0\\Ս"'b@lHPO1er}!T">K"]+p N `rcvqG } Jj?V+;dpv}ާz`A(p{>}u#.~ Ӿ6;6=Ǐe!)N6]LˆG<ۺ +_ID5vu2Mq`WjXafqOO0C~Ԓ km`paHG |S`h7< v,Qr^rC{}I] śtPKVΘZkp-7F>~M̃%ebC W'iki5;~bKl%6PYh%zӅYǏ+$fhDrP՛ k 6ڽA3v/zO;bD;v{vf +q{>\& uH+D(Yܣy.LO-U׍"9d쇭ku/ Jld P1~WEx!-#N,$!TTfR5nd3cy͎9Dg :w|ZbU 82:R6J)n&=~oh`M̙J\O2׳gx/o,YSzs RE5/dw7]8J\?.ZܣM3e`;U[|VeS?6RM=οۻ\| 8{WgI\A@[q+_誕k߾/X]/[wds.#vw/5E)d%NۑUa.Dp&;gރHI z Py8{ϥ! 7sܞ5g/±%M$*hCW eMgi#]ӱy:X}4T3eV^oGMyڗ;Memu UZ ɘLfXOo 5%M~eMuDzds.i8,lUك@5%oGF|/Nj(`gvy.,(./oAQU]i,m .0_|@5?yPo3ߝL^9w|AӪ4Fd*6k"yn"&\Y6M=0( 8jnJ'pe<-o_gAiHM] PƯi@t+G3x6}]hJlk-<hK ]>b,v˿j*,,IV`,bѺݬXR  OL6"t]~C^}{<\vn6`㠙V)XqIN(;iH*?J-@&:^7K_[X&U~9 7-:!-!H@ 9q> %uנ߰4<^iJM4en2%T+YɾJ4y@>-0X\6 80&M򬢯/&* [,!'LLdoKfFZ>КY%6K?QTAj9COC#ኹ$)&RA,Bb|- gV]4Yœ{ A_+yW:eK~^oփmzTǜ<ŌXJ`I#mF-|PJ<S0>T|9 R,'K|&/w'p?B0G- eG:ֶ-̡`1Z/ΕUe֣}G͍^@m5 {x?\A;?0HiGDWƤCɘJ4~X1BؾlkM;rJxe08-pSyg-raڟ7]F~9Z}vX߶mHʶ+d=p:[և9вoiK$F#L0@b PX 鵀_zp()l | ( ]E+M2SR,ɻ/CeJfC=[68|; ꧒F=V@7[檭Vz b{}(Pbltv֨Qg\Ac:`0S&U&b,F{ĖtcH'in:m'&Ev=!dXes=UG2544w! /&bͨ ;B:m7bVaZaN?s}yyaO˂u3%O>`\#o!~TJңUB3Qu8Socs 'N.YG19<>SGؕ,w_9I3acv6%F)GAQ2#D}Q"(剻!贸FbY9|jۚDxII}?VNR<٣(j|>>KiT5dHJ`]o5B!hDhBuKW"u=A6*'3*.kkutJQs%2zO[8{BJouXF ډn`$yi!@",˞}!iuq ,̶4Kn-%V˧tNݍrV$ˡ_ -E+PIE tP%G x0\-Cq[1\\`We>sal;Lq2++XtC퍓N/ɲ|{nq*3GHG}2ecr…3* hd #ߜf{ !5+rU|Gtm `27|E-&L.:q\o(/_fHB&UvQ0W)04Igj]gjMINw>c uˀ)ҷ}+ g>iC-vOdIyn=X" CO+hdp{49Ӵ,* mWP>b3Zts[8v@ X*Xq8N1SS˂Svwl.ܽrZPܗK95ͼ9)D^8geY׺0s-|]ƬSY2צD~XdNi7򽄕z K:z깣> Sj=xKޙ|G>"\ CQl`p '~k)Ee}Bбl *ap)bx t F2&UlkԶJ͊nJ< wn^,3|LnC;&DcJwjz? L-亙'bNu5f*m\ȣXM^HK);a7gκpϞܳ/4U'ႌ&Nxܷ\ ~s\?վqa,Qߟ|/H]Z7 @u' ;S"ȶ 8z%B#Ua3#h>(5@R"nCTSG11HscUW7W5Q4%O1+U1x$l$\顭P#Vд B@-wKnIJWފ*΁AvZU Jڀ w cvAa~nzWfvu̱c3@ @Aq@u*ya( [<*mXR.zTkm9 ܻW^ jb<KK)\HOzeC0eֲ#ME| ˞JBzG5w,\@R%#6$Kt "B~UvCĺ^ ISm<⩵yZJ/OJ kb2,#d t"eknkQuAFK!Z@(;dLÈA[lÜTZmo7R=@i ٲ;,VVNi}GJgR4muƚjF&EU٫յlhux4 8Xdt-5.I*V9@܉GAC9 aPu)ɮ+-65>,`ж9[, hr!_<],,s{exF$!9zgbiSNY ϝt7Q7}h7v,in6yLѴ& >^^T8v+h),4s#[ z|]ͦO P7E4+,R}1`,;@ RApubٜƸXȇۖ,[cgq2f!r[~Q`r'OOhB.|v4oـCɿ||EuW>`pI\(ϛSpm̡w6@q ^W$ۄ 3 5OXZ8@&9;ֱzvJZ_)]˷ Pc-@gi3 &n gS᪯o:ь6\鍚Hq 8}?xcKKٰ[㽑® +1u*I!'h? E%_L(<zvھYuwFmpsrۭ+/VPZ|]zo pœ9^}{@x-Zo@V<`RVl妀2Tkw.ehUԬ͟>GfG]j~)W*"^5 ׵=uX -=c (^R[AbN`}p1| Lhd'@]ߍҌxrk}vQ=Nov j>ևYF+Vҍ)۴{,\ )/MC|pې1N-\In.xj-.ɵ*|Z2*b[}wJu=.aPHMYvZN =7_Q +c441J0s9*[YgB !&ޣ9 *k=H^#EA&3dnyv\1,UmH_3ix96QZ/܅CSX R>Y1/hdqjzU6FH8wkV f).3sj$!<fpG-DP崘?itKLc43a2Jf+mW*#L𻫒7Z^*#Rј Dfg ۀ,NC]vxTpq觠黃7r1HH*fV뻘$\,x(-b/a2v̼. |"l ]9@֊wS آ׽WhmU HikIKy$XK⧎FpOǞhJk?Bd bN:UHcqfU f=<2<r' A k$R/0曬v΋5)Jv B/O4P#w^6D ;y,qdcp]2Hgj#BΏPx"(XeLсRRmBH`10DUpGĥEç#O]&!(*P{b6_`q_~!eCc7/b۞dc? Tޱv8 T 0vqr߷K*;~sP-E ?I.flmBH$)PNTwJ[=,2BJPzpzEZx`l7c.2H[aL=GHQ +6SS{ eYN_:Tb<,V,s#F)5a ~[8ecuvO(f]to sQgN*3 !00]F/Ȥ?32LTd/xcBh|km~2ȞZXf+%xAjŦm^, Z,)붹,V`]"S{2_OӰJHtT\($)LB%JNWjْccIU_?2s:gS|H74nU2t 1ش: ˷9x[+Nekїj(`8`nE zh0P \/`Ƌ@>=ÔonQ^ Ĉ\WtTAӗ~ / 5>7P rf+B#X>S~0{L*Ru82A܀3k;4  `箍:xdk͠Ʉ ӌM1wM=:%Ƌzܺ5TD* W1v:NFʲ(`8; +:,j~l5!)9@ajNju.$-S-uG<ε*^ Wr5KddU6LO-t^i0L#﮸piSAS!|@Q%gr5$ 0wHLLS? >s`Z}KyZP%@gTJMg9 NR+ /@?bК Fb}@3l_BGIӥ4ZNv<G_<&Y3`] ed:# ] 6<S&JFل qMA.g̮? 2p8|[2;N=5NIW0kY֐չ?N!@Ĉ7̇֜+hE#m"O=5=ؗ<,j@HɉBJ; :e6\ JU D, v{g ̪[0ݚxVgK?>)u;{))md2v!Z恞]|9&b㜰7_oD-]ǿ PMy4> &k^e~V7E~#RbhN, s ɩ! ޟ9I4tWrԂ8EռTrέw1Rb:KKq*>J{fL=MmOFT]2ӉN1LZ\.T/) wH[ Ӓ[h:[S"= 9!7gh*Lt !J!).O>lM$Jӆ "񆓮nhǤqm0T2m͓e-msFiH8IiOp{.o-녀l03@}Y x="f\a:RwLP&;oߩGqC'iT1pʿH0j- ',dS$~֬n5@m?slN 9o"j;T_S2htT a4{~j` u;둸o [*2^R Qkyem=]c$5+zw^وiaw QcA|YR.0*X2ziQE4ԎMvSgI.zFz^ϫ2/.YOn=7/}:[[H^._Ƒ6uND=*fiuC) GǾ{{5ɢA@=| : 7؟L1&I]B9*v=\0Ӥ'St.\Cnd_w/D tnrjAɭ4ۻn}U,j+([o;?T$$.M]?@ j׼$ެG>/f%SgU1Լ,S]!f6=K[w78>RD N:T(FT6ӛ+_Sy8Bdlo_ѤK(JKxEҵK1 'Ri =DR[ 1)k#\l5H:{)!bJvyx\&yWEE9|#1 j^0p`>XةrtL-A}(q|..3񍞽qhW{;Wj)#83h5GsLھ%բ==L΀|3W} @nO{Z-Nj"ЋFͷGqB'~.Xi\NB+;z8=Y;ĊͭBWt4c韡[dqx%B/js|DyyVx-d4Z ”66JQƽ+XAarp j-I= z8pb{lZ2g5gζX҉Ũ҆hwJ~ "U,&` * ό칽 ѝс ׆Oa,J3.J uTG&hF jh LDzӤ"0f! c5i5y Ȉ wH>xw/bmR9Wrg4|y%AT(g9y d7(!tZ8 ke[ٸNcͨWк$>fi~,aۨXJ/lnRپ?7,\@FA66(ߗ){>ҮuE:2ݦ]gRr"T9UC =DRBL1֘):M݊-4D@M];E=-X_$^1MeY1?=]G0Dafհt(fA\$!lo>ӆXMLl{S1Ú5ZY^dW_%& Q:~^.?m Imqr79:]DCP֨%PPceܮ e|ϕ5XQSq+}E @f:˝uلy rSH I y]?twpe:J)zJ`N h,#K +(eur%񹮮$vzfR2M1tfɟ&'Y$һɚMoD*Ty#b]Q)a3,\@`oIKx0ED&uq~ Ȯ$6ӀU~砎4{hw#j#&D)V>l.TG)qcirUw@6獵*``>Nta(w0M9UhJedA*7㾄ˡ,Q@ 1q)Ѽ53ai+BYMA)\Alw (]V¹iN[2ک9fp4HAOIm|C ûr;F0f.T _4]_s R6oPUS2H±א,.L5 `XQ"BN,2@@B%.mMjQ YC*a!0̰.D޹iUo**TO.REijN_1!g^?^X!=e!\ک}Ww . rw4 ?c`Wc|숟!h`ƳȕK*i#K>v=o~t{ ANF[w-z`JKsI+щk`>}벑B*qw >=3IF stDB!)Ԝ*U:t*uZ`^E,}V2 %e0T->7C]~FρI<|UGJzlcW>GX&`yia@W}b+Ae4snSg"0ǵ=0MxSPQRԊ^4KU:*Eo 3thә½4Oңn\v |do]6d/&YǼiv=5 o!9=geehsC딎$‹؀:^n6!aMRzεa߿j.ߝ$adpmIkڊg>U>rhY6*U>qm4$FGpݕ!I )Rv?7f[.Nx,GC;0}]Y'!UPc kfyCb9y\ <1k i\n|^VJvH/3uo僕0y}2:qDYFCұL{תxg:eozbu?>S~Ol!s5oX!D2Pe](<n Ifֳ1[p  Y^UO/r[%[rH:0+3`ZW*yugok.څQC9ui]bZP- ڝy$d-X3hTݾiRmXΛkρ;"qemOQBb9Ou(ʗ}S.O= z{z|*J8>`wI67z\`g5=r&fPس(cCWC9S"o?1t@bdTf}'Gs]4cfpSpósQ[B}d"3F(#=j xǺFs_G`+$8jש2`9;& 6*8ţ#P@;~d0ՀiRxث#0N yΩcg0oyEI7/:QeB\GŹ}YI`uqQgZ~̗j͗?: ,~*EϜX8լb6J$$4(p_ MlM\|.YA]Yt4z,q{? i[+ڸ+s(`pqC>1oQsXNA?63؇ɻmg"\Y39d}ZN U&Yc X+d46Q^gJ`ְijCـZ;GxU%uȼciX{F/d6{г(zWä) C]c/ h @ڤ-V $qAʔO8=Ȱ֘ gƨ&fU;wša]5.En%݄u 5TjE&}vp8`Nk%)E{$\ZzkPi#G/*K"yohe{>Z骵{U}e,2ND5ڕb3p#Al ҝCY<!sa,\;lqydn 8Z _Ҋ>kY>ӤkjG\Zl̟*H馗&+:7^z/>m?o N(I7{RXڵgkUr k FSge%qzIqUJ|~3K 3[M(DoxCQB}t\`0Jf@!s$s5ayK' Qea e\'{fc  k퐒=Ko"xR(\*(G7lj1/ax`BXzI}_ Y1`2X=CR[X`Du՘BjBiSR wB0xKY=c8kZ;\&eG}wJ.0CM~+hTvhGdbWC tTr2s+]N=atfx/t-@-KW|s&ظ ' =]-70n{74-]"џe覆`7(9NwVsi3/ir쓭XLś bѼ2h`MZ $}cN#MF|I_k&qȎe'wq iOa+؊-f0֡$& `l)ts A|LiZ鿄2Nr#ff@nN4dG^↋cw_*ӷݣ֤cXDWqR?kU"՞y6.G*&Ye#Z ?$ /]bٺS&ด_h|ĺIt1ܚb꨿gt}]mW3RV7DzxR"zmCJc-Dݨxtӛ*{e>coo#GĕeEDo3pʤB>M& 'bxveŘFv*Zϡe'd+|#]RA@E_y6fj}oKU&#Ȇ6nZK;,x'M̬LK7ryq$ΐjx T%KĎn=fP}0 {xskF 7ܗįPm mmwN$g-g'J*%E F ~ϸ'<,dQ3g'@SSHwi@> c`ey构!@׫8|Ḕ&1OǑWWPu!$к?rKZ~j)O 00 U;b#¼L{WOWsh%EO|eFыJA0Ԉ;=2 nz u{޸}gc2fQG#os̏0/_nw%] SS8`5VG<3l7ԙ%7WzR>J1JQHi>{7YP<^3ZST Ë=X)w֨qCʒ5w0BirZVCW@QrIǺ v7|E]}7ڠneLZUY:%[GIj~1s&p0T<vrHRmj/i6P;8H־I$Hc&:~8][,&%PǕ'uyO冱&e4gCu͏rvI,ך JiN.r,51(vv\I\K8!lNB|LvodE{@\,j/F?&Z\R" ż؈g7°Mo$ϱEܛiՕa**!ׁ}gc,u C9ߌ{1N(ġ;W/1,P3CR~R7+'+Xk'teCz*ǚF@D, IGQt(!<[ &@Xٯn߾1}BO`j? |7+D\ RwkW=~,+8s+}b'+ QGx cBi)2B7^0A 6UR}w{5m':=H3wg$5r>jkeT0Nt& X-bU@?)vY`Ńʋw6t!9Oɬt=v1׊)s7Y<Grv@zP-,sfwmI]#*\H:ʲlآIA["yU.:YBB`2Z/!c/wBL:UXdƏ#-a9rxDO:Կ!c>;hڲЕnb9m (YNbPW0u_|گ&zpo7%ﴵ&jΠ}l00 N-хP @p]f4̾dH yn)v-eI' PKPr2Mxcz>mxۘr#eZ2p59-l'Z?HQ(uEl)9SZOds6([= J61l7!\A%#y4g y%z]"j??9v@$~mG7g gSHk]ur4:DEmT{%lqǡ4u|5 >{Z2ե>"|917-ȏ'Cpm:KiW'9-X;F)8֎-@,huXYآrk ˸|P}7sT)?0to G3;KJ1zXD;5.׬<k:_a7Y b If}u-LL--L. m(J8Cm=.mg-,E0ؼcuI9m#-_b9(;?sV.L ARr%@q|ʜBZ8g[`8:aG3~>f ǣq>"Cf}8տIFE;Q±u S4(eՏ|.eŖP\E LbsЄEgM.uN^0dI >,$61m!ؓP AɰRQK`%wǗ'{ĸ r[<5c6p<9pCI 웴[MT/sOdBm3ȞTU鉼_};b#tA 6?L'sؿA03WvlEO]l lO+,Y$1T(j6"6>>=T#:!K9,&"9'i6ULoF`WZd!nՊ:?b6^{f+HYɊOϘ>&=ۛGp!][$m2Mg'|0+ _)GDDVl6}s0>pUs!vtQuKjM AQ,R*y}o * v8Afx#5GC&B 8Isj57mD$1}xo&@|<#P8/a6~ёSfOcAr,vNW QKucd::_ ̱x#@CMY=.lf\`VQ` qm߀] 1ybw鈁+ yQ͆qq2 l;v ëћb.R-ɧPOPEQИHͪm8|wW'OƵfn* cgWWp'u5dW :tqjRe˺Tsk1G4G~] SN.тzr07f]mm4yѲ -P` Q섹_ 6~yWuhVc ÿT ?Θ,=29ѫx,څdTy;+ L &o*OC,9cwfÃVGNk&CM. KCi ĀBM,/?(,虎$齼]} lVk' ͵?8\}h]b>]WNϕWczELH;7G 1R{؊7Y"Hh4E/o:&t!  '`FUU\mٷaY-M]%6jBouSlj| s9,@~~:ڮ^XwRjCBZe~,WE:Zkh{x77CZ`0x\ZEh,g3{B/1)7B@%2LҲZǏPL*5WS9`E+-1W.#'xg|v A k VpڦkۭXI C>Mpqt?4;8'4 RVե];B!icPKo &*׼>xEP~)̅y޾@q2S=Lorl$7 I561tK},#sX)i+q(Mk<˕5_֮uKKuZ*.~SkeEšO.|!^}o 78NTjD)7tۮY_ x"I[9fE-jPFfycw hFTJVZ-?Q\8)F ,xq:huF=AK %wA9 B*"iG@(".LVerS$4+̡;VyK|B+y[׌绲ao<ު‡Ok \&W5i.WkR-SK8#P3(FW" =/iv%Ɲ %uOC@s%nwU3@oc. vo~źlu؝@Fw&.䂙GG .N# hQj1НbF#Yד3iGmY8"K6|wHL8qk $K =/՜cSWdT_:9 . Iw9IP i\ YbxɨTxX eG[B MmZ7&%.Uva4xf> t~Ha$Л,6aydhLw(Xo;i$s@"C ^6MuGiBYw Lj{!7~|6(qpحpԝʻQ pP5aƗz7v!%Spɼ])` i{[҆~IWϳpaL4 lz$C.ێz}]Ġ5PȅJ]?qb +dZ,%nX鹋_,ML>J E΅ w!Q75~TZuYNyz|0"f-ڊXouv.I9/[p⡀C=DzƼH0C: -KkGְJ2QӰhƙ//ﵱH{ -gXfA#j֙  "8{2U&+1 ig0ٍKcMU~ʍwzXp F7rӦ༄e>L`~Pip,O017!ɶ-|l&6x$ Y9D(\lËÂz˜Xc Qd:Q k8hcO*߾,b- X ߮`W ^K=6rGIapa@^f2CK]PF`6=أmƬENA=ӋJ_l&zP՛dDkQGA`>5 Hu&)þnj=uҁs3X?]n!l6cգ(SS^CP^ٟe2ۘ':2e nԄ# ՒѷþQ%L!" 3.邪~U^iZqKtu:UIA'`ouw9Lջ\O'ζNYRׁc'e{y8&rB^]nOebi~e=L&[A28[eQ,GBo! (`ZZF(hr *|dQSPlg#%ƺ8 V >8@ R8^ 75n*ISFQy{ފ~w)y$%O4znl:t TR".2v|~zYw0 'S@ۘej\Ճ9GhMEvՕ,)$;&>%{<揋'(*~y{>R>:}g{cHM:| b[L4* [.bT”(ԳWY7Y1#++=+,UH/.}nC|Dbȇ.M}$a̕3c](R$K=](+_!u{@I՘"#5o_. j{pYd,-d3ʊ]?tCwq~e@(Uiu<5";Yp=龫y 1k}̙\SzAozPW(R` CשJ~hLg֮ VU)x1aO]W48]&;*|ujJuCt;⟝'K6^]s3_i9FʠgNo lPg.Pǎ1ևeyJHW'*7W{̽D |(#QlAӨ^4C{xi |!BFUsj"IMg1ɵeӇ[E>\9x02WYPI 5sR~LfSX)|\ .cQ@vZP7)~-S׻\iQr+_ńgt!&ΦKh(CU^Pe\]Z6TEwK Lky݇IPwܑ-]Ix Vr;{WNRkm/YБД{ mڈ|x "|bE!;`N`[6iyY=)5-uRAﳪS{6 [(Q 3bwSN qvU U&5fXǃ`ZLk[&D=+cm")aD-zD~hk2[3zDהE+8|ƿIKz~Q6S(Mw+EOXy6h fլG{w6Ȧv oI=70^3ѳ2^ˁP klfEO z$:B^Ƕ]݁#~DtriҪUp4y3YT,J*T^X!/`LhbƈEr`J՗ wώΔy^]j ]z6- #Xq]ĬR C*:-ۈ)q޳游m(:ƚWeUT& #^N}I%-V]KTݓsIۑBz]^zik;W˨j&tR/ܽE]oF˕s҄V{D"hLV` @G!9Kڰ T.#F9'41.!]3:5b,Эrυ-fc=}N-_0 h}ͯUl|Xqoup=V[Q@I #Bߑ?aLaDq0ax'vYL4Ql&mpFY.Ɵ&a |Ct|a]7LEU(I +X_Z:SyXainlE^Cݘ~*3s%wee/߉t_5i98c$6\l!wыa[aDDy6VN'֏jqwͪ_kH9[ qj 1Ws-h|"UJXcH#Nܸ]o [5i |Pc- cpl~fӏu}Y{ZʻMeV-iJ=Rbe4O ]2x*;|ZK!߃oxHVK&k椡[<¹\3bW)z\4δ:ZMm9 :"K=8([G76wfFn0k~Q]=5tz$fbUWpwWce=~] d(yPJ-kH{ ;RTfCA!Y*t"2}fu8]A.QĎG8O}j뼶Q!A0@b/'" udnbƔ/L;t lǥC$1O*]_4{:ߺݻ]#|82J%=ulJ@6V<2;M1#gď93\4v*%A|㜠0dE[͡ zS3HAD{¨a>R+,VCB* `]=~f,(^J j4^]u4*8nߨ]jdHEX`3E򥙟5Bⴴw^^'5\x62~]>CKM*4[~a,(>v1$'T2(JVʧz'^7߾ {8׳+Lխ+')sl֮R`2ZL$̈Ta\x!hRS !{M)/ۧՑj_~v]X7/}>6DƢе(ѐį4b,2Ao| SB1:][ Ɛmp\$QFHj.W]7"v^2E8ϧr񲹄dk4y^S,[, jXm$*UĘV.ҙm^E cǁexQG#vCjst6`Za,͝o0=w1Ӗ4hҨ%wLR*sS:2n%Z/Wz̼\i[yrDn_!U|Ր[A9I;p[,o|bM!;1=ǾL0*1D~F=RnyYxtMQox\77JPg,.;W8rz=6 5ηh0M$Ԫ(bG=S`w&Op\]m qSHe&XrtrRf\7ۏ3HdžpQ:}LPȮ T6M!vc9"?iKW!-D0H9`+:KAAc~CR GE9G8ayϾ?5ٌOMSGU[|F>k3#rQ랩Sx[GjԺ{6Ҹ\ y# c;YgrgFw϶UV|SoaG浡~)lмY!!ܶCzhX(ʾT0zI{BO[:$#Tlf"hуV_O𬩣bz[͏I8|N]A] <D7LVMm8֏cCǜ+_΀ hHk9Y}:LJf Zj* PL()u91Au IE3w e-qНU^v?Uwՙ.UPkSS =6$@ᡆؿ [tq_Zwn`&LH`pX@ԹzwmhKxw }}%Y̞߇TYĬ>.}kxF*ԻJq[9.$uvBRKվCj8bqdbVh ۏ@b[E#L3=tlj&ꭨk[\KRSz7b:7QRa-lo,ܐdڅ&ꢲFOBWe!idmٵD:hxNdԦKk ъW`Oe +*n>q8Ƶ}) ^!|T\p, -t!*G]hx} pԍ(;EO?I9]jHٱ`L@CpC5e).)>^M<=G bo,J\W6l|UTBkx(lz`P;CfJ#oLpEQqp+xU& vr2>p!lٴ=׃1!7TPz/ {ϮGku*3AT$7ĹN=d(:O2)0QQΟ dR93G)Q&NGLѧ57GH♢=[tfO Ef <ʍjCjq΋ISzm&jJ؎+⪱#{*}50FZ<P~́)fUbTNM):h:mDy CM\rޣtgh| Z.I+yX@[:C40CvU(d,*2~I::U2|R޵{BS\C"I)Ԫ^Z܎x^1ntrzΟ_&tn]ZS1OD[i濇=PKsx(W!/R_g;HmPSwˆXkq\r/,l DB&o롿ZRKUB56hD$M 1D?ƒn,ЎI+6Yzxײtc>(i3ƽ֮8ǝ6>fK^d{Ru￷>*7+Dh1t Np$aDyAcYݘnpXstiwbU sGF̜F(Y,-rI}Hrzc=?x%^sƴ`<C1<_Y.-<]ke 7fʝF5P p@ bZ+?M*=Ow} [C<y|v)=خ3uȃ?}*&ү"w翑.߄ O'9w B?rY B,MT7g PeٯuA[豣 Pyu*PDO˱fI:-[œ'CXD;kO!~O5{ E#J`{ 2r .Wݔ܋1od D-7zX*RK#T.V< q,?7q4 f M̟qDT{IccIAeއ O:\'N >Ў *cq1gJ' =4<&MwհB:n_WDu`X!noFy )^4i2M G#L w:+:* U𝦚 h=Iyo9P?WRq-& ź?q7a{} ^>$յ98ҏwH8}F Gf)ӕ d-cGn12Bee 9۔ ghf:"Nue)ctA*Z==wJ»> Ei;O46Mr~dLAYЄBWOe i5Zm).hqijA O "|>K A b^y5&gS(h<;ܕe 57uM5sO2y %"D I0QH>;_ :}׬6{]Q8//IЈtM8}p4eNK(5ߠR8XfwnNk Z>0Ox v}Lѡ 87{iM YE\XwϿFO -VN $tͅ9,5V炒 "ll[ j|?"9~AIhVS~ފ.ӹ{| a.o($DoۀFLl!+#۫b1t̿:h[Dc[H[l`"؈q¬S^GzuUԔNp860h oOS! ṷ+5NڷU0yMHJӍ* BtzCM7hJ1ԅ_bm֮ԹgEY#٥E'/ yV[fBq[Ү- - Z2)k?:'IDArmAv0'!ºajTe8Wݻ{f`Zş\ (KQDwl=?enCqDC:%pf}TtwarĤFydA0R J۲bDZU[5K{D!g; ?5)cU1#->v̈́O` @Ag꽪SyM70K(EԷY ͈{Pb|ɍ.8TLz>H#tق[sV;s&7aK`D [!m9ݠ{V> cZIs\/,Ktg+W|*;h& 0,LZm==dU 3bb}i9K4{YZu5Lר*\W;'S& :^sue!cg&ʜ S*&NzNp͹1y8qdB|FS$;ZXQIZD}H]i 71mlR^^ j)j0J}d`6p%5;,I{ѣvC,lWq*;MĕQ0C .Wi> U *Ka O;Z~P"03X0VRA);Y7|0<yvu|Nkq ^Q갊d"B ^=u S 4KJY/3 iVdiۦ1@b# 6݅F\YK0:pN٥W`-?nJ|L)@ʓ{d`6ʫu<-me߰HS86`MwJ<\=ޝB{GZ(k) fY:?Sô&X.ܔÐBLB򭨨M<3뉊*afЄJ|G b*ι,b"`z^]:AR"FEmgҥS5d-w?;jI> FCyuPp~Zm fkiI?a%5duFmdCM.X3Uwdhn209*vP&:xZOවËV/ݗ߽c, McQՅhʲh=?qI=<ތ -nD^yvZ T 1xjs C_|QfyxϠvNM;PKkc4c4`G%*puU06caH0d>WȊu3FXH#8-P^4V29 T**[]3.mAGc)l(PV{ԥx?0`1fqPK2a^LPj ut8D/|ʤEjI6=lX B>xG֙Zt&,3ˆ59 n 8;?^hS*J*?0j9{6T O؂o)ݽc풝7h `<x1VO Q2TCg#)T]З;U%<7&$lsO@^ \a4ciQOmqv'Bydi\ڇ MoGg <+ڂL=Ty&KIrScҸ dnN$ F i`*͘+,$5+\RjWlWh(5ܒQA|!Z5 oj 𬉍J S'c;JĒXl4g52 >в oȈjZ?Dyq"bZ+,^@u{F;wO68gh 8n?ըeTs X1|wwgmQ$uIۧ+ljd^W\sK7#tZ DصOz5{Q[Hw=L9oc9hZK6yTҲi5:W3ԇAukn H. W bݯ W `;G Cb WB5fꠥI|yv0eƱs{}R;qi Lz埄N{9l8n Nb+?@ťm}=+fRz+_sOpT:=>2 #Aȝe~ک\۾uu^Je^u ¡,$/`dRXXBBXLr^>|*#] y5֗L̳b4%`# ?\Dm{n"uvu,-A>8^g$+ [R^T̺ҥ/tAYDG 1#ґ yt_UXQvhL#(+q{Dq)#|ft'/Ȏ:Z{~cOM}|\mUm3w$Ӫ:wlwX'w&2GǸ.lk\ _$-yZ hL odBKmW1(x)W)@0dwN{n)0M|iڵKUB%}ޥBBMiqvev-J 4FX0 jn))KSBӽi뿟]Q = fpML,m PQa~ø{i#ۖJ_~շunzUUhRExC"OJkرh_'h;{YѶQ.oGq'nT~U|KJFx=wt6dzkZE%r)j>j_dHssꔐGN* ̴+ؼ5X[s }uqD?zAR@ݿ[SU~Dm >t2CARo1:{ sD)n=VKKS7iQMMYqضlx%k[Ð<"Bp:A x Yh`8Lay/z2Nm 8N̎Ǡ1F%b13Fךs G<^cfLuB]S{!i2XnupQo~؃> _̊",C /ћ{9s(]ϯWjTGP.A:T.lkJ'w*C]Ċ9l޼b QƚZ]e2BQY&aADž9l/`BC |+ on%xoZ_ɡWLry*|+LR_Rdf;~ꗓBdrBȴ±C+˻3w(6O7Ko#vԗ O&5#ny$Ua Æ.Ncm\8ߞ-TwxXZ8Ůy3ӁI.wP,1!Â<ő@9m 8 F=f؉/Fߣ p`mx?޶&G J_!~*Ѳ߈[2 )rA`Εpޜ9ؖ27g^ ae]Y;lg@Y"efTdb{d1xN f2XgtHm#_Je$%LrLM{lhU`gMuxOΰ:-=iF Ϸ%)jx*2%߱C$_kwjj :2L dy]_U@_,ƃONdǖ 0{f1,> gfz&9>C39& ^o^+cpx@ɑ31 LOj jaaȄ+|iaVU7ﵴvr'VfDe׹`kCGDDb&l/fT{F9ɡ3T ||ܧ"o,jǎǫʞTa k>ZuK~p>d9mLF]wsዶב9иM/܁Ncl-(\۽O:V05lc>grl>^DZmRW<  (h`^Od@J#x{{ˍɟ~S)Q π̅FtMCѭmEfzFMIsl(Q\>}"i!2MjYCW/Mn$yE;HM=\@E=p$tș]^2Mjڳՙ787.Gbv^n߱?҃c݀UL(^pMObvj4WvQ8.=o/.,N-(|?o>>1yNwiVz?čgQ6guJ5^)`a`?pJޟX8ה0FW2)w„=leP I% O6~)u𣉬mFK?jV֢kMѫ. gJ1_m@ 6^(x{x` S <IHxSʝB*`bXOc@O" >wLwQ*!;GF3JvԜR7N&u(b^V 2ooO0>&ZƝF iJ'm yMOiM^&4Ge<>a(\W5$z81*MkҎ=5?nc֪Өuxߒ!J$0~٣!at}av y|@]r*+E` z;Їi[It{lO;(ގ#kMH;H4cw%eF{*;!#=oS&dEAoPߎʑ *gݡ۬ 1 EKkR:)1s8d߽1[ߒEiZFUW3OzO}]6OddDkZ%v WfܛC7埅.)U.{2ZyC'ZC&k%FQw)BLMopn8N]]/7ʶ6kYvIm'(Y5xwi3=Cazhs3~;b KQCdn$QH%Sj"N uޙ%QMy~`c_N*ކ?I/N?gu""U2J|RjU҅EXGcB*M ԉ= %I‹dGJ.MC:piya/X=3$z"sx106e a&2 -SYlO2'2X 4CxC\BYXlvF! 0ZhOe^ Lz!2˓*. + T+`6q@T iNqD`̡k$X+K?^{n*D͹\iDMA@:U'ZJ{7xNeFCD^Q3#MѰK".ùq1tLO,BG mk>;"9"} }efڦ}d 爕4E}Y翀|U=w?繼+4⹆Nݫ_aAѨ)QT51# [/'T?9m 8+at(n'BAXn$x1!&Ԟdu6?視mݍ]u I6Y-({0)$TVP F8ry7s`bb.L. 25 Asy9\t,짲vQ9%eD!evZDO Bi]*/XAY(ծz5"MndWS>f?q$|qwqegI鿓C]ۘYktOM,&?KR(nĥ,$"̌1_U$7ܒ"Y0(e/!*M–ּo_2:Տo :ǾIS9]UsPcKY3]많YLJȤC&&HN>". hJ`#F!60赠 _r15ڻ4RڛUc=~$赊wX(_Dk@-GΫ7I⑄/vsr?yfZFHƥ`:75Ķ5~%\͇c)چ؍UK9ooe|ֱ ; Pr{7-KQ%:zr6Eae/v~#: ԅQ[k #nW/*s#0ЅPAuY 9pڸ{?+5X_Y%P1s :x¬LS1oJYs͘m"QRQ=-f|xPXf‰%ໆ7xrs=d9Ssw 'ǠT7I {"D ȆF#w0qGBih Cx(eƮ~#ӏcĉ8%0_Wp _5.ʄ\zqrvٳ"#ZQwMBm|ᖭ RCݢ%Bo&I/nh<|G2HfR-! Ꮬ4ïR[4v$hA$yv1:<{3 Rlrp8pd+m$" Jۦ xDʑ9>Fڱ(2EA=5qU95L#v0FY$"b 2/7 *=[QpQV`rA; ۈ "zc2sgji̙$ Fv%qTZYTD?T|>6?@ƃn"6e)Ԙ0ri .4Ko:ʴM] 辋YSbao%vk3]UnDNe-h7,Ϣ$=kƧڠ 1EA)9Ӓ*m#$WS[c: ܮlz<*_`kQA%X+6@7k=>e oKNQ;؇G 0#YdjMݦ4~5dϩؘf H]Jo?KX2Wi\p&\ aepH{~L! N}ʛ?K U(k:sh+udeCJLxeѹR8|("Flk~=m0LxùH7(E~ M8 T7%*gׇc$;udz"/ ͻhvՔF6NN%p-*q~L,/`.,fPL!fOe-]M4ELa*ɩ_9ul4 Ls{~㕜k$SPhcCؿ[#G\a=$457&TַrcFR#sD^<8)_ 8/ ԻyMWCiK)F12C"IܙEl(0AcǨE.3"X )ƍgrZ#YoM-6_Vb~6Mݣ6=d7焝qo1d,-hGVpf-Ʃ|ZքPBL#lIټhy)W*LRi!'Jl\HC hptPrhV7sEmOEPW=IMdQ2i5I(n㎪/"nmG(|a#nBښW"b 9Y!06bFi&.^qzN@ 5(QD}Aezjm0XOMqs0>}$4$͐8MM F'YͱW5$8hڋv.lDi 4FvNp,ۭ}n-~<$XtG@$+o)T6^-dѻZ|LnLL$7-TAc(#uJ;[S<վA3`ڭ#6 cQ$slg?uZ*Nd'k^KT{/c\L^g6h Q?Rp/T*)/r* >jh>nRрƔ6q˒,=OW᠏[V|gҼƓޡ|ЏqbMݱs<"i;پKmsLR J',vk mC60ᚽٝTf2p3u"UMQmTiD͝T5H=!52bܥn\Ha˩we+fBz*:k&=m3 U 1LgOe>=53~Vk$вcǤ?@JCٵMX0b!iA-?ԧe|[g|UJjo2mQ oC7ѲR?eJ= H_-Y`(hhŶů< U(Ҙ([m,o4 (7{?s-H:##MbyM50`i1%}gEg SLoxW DA/츣73nj[Gb\}%U׀.t01OtV)R9&T";I[)^Dt\ZmraĈ=٥5B%+ͬPtl7)*d^_8(_>mGiTeͪ%h(S3ߘZįSާ1_faxjhjLĭ wU,Us}׋yEm `' LguE~>1ݲO:._!,VkÏ / Uyj&!v4*D^#0r ls zq/l'qAYRpZn. #S61"g";ar=9*BFR=] TA_>z"j3N2X tF`ޅ1leC񂂙!R3icsb o-)0êT;uIUp3EFOdapH ]fgϲx ,$1!컃ɁdT@,꺔鳈r'}{A;WN7*Ol&(*7!fW'x80xգVKeN8Ziv|>RZ R}Z;rrJȀ!щZ,+Q@Q'ψQNwݫI)p%#V &d~CԫD+ | {6'd~.Wa;ln.us䂌M25O\#>=o^"!Lxv0)`|b͚1[|iQ^(/(8OrlGuZI~hl:Is6 B%` 읪bOy>uaab@3F5Џ<趋t0s[UlpFoh*!MK#vF@~;?OrH60Y`%X'{ۢiW03}THRwĚO|dXR&Tbt.C7^E\Ecx+x,c*}PȦhRdHJnFcj=ʍ׹]i]3nN gHtS<<'2e)0FoكfM +rcT}o?uڪuwc4%|S7^žֿ발 BHJ!5:Y$mMlSJORoȂ}0nf )%!Pvz/3Zꟷx5?w,X, _e>}\@ _ώ0fQ=\*!$T d?xm2LB-+12:ҥ "0Μc]3 en2_g/=Β0Ro 71dГB˱@~ ~^Ōb)﯁^I0?qbYW$y kLWU:n\u@0D#u?c ÷1<Q]$J O_tQk|h#A6GqEgMZ+,~d 0Ʃ0MyxtHZڐUU* { LNy3ٚT!s-PH?Z:S_+Gr*_+d瞂whaJm4\ISbM8*[̺pa-;X[Vm\-`dH;++O%)>0#BL'u e"lpz2Yz28(ˏ_%Y肆 C5cb@bnVv6}aL剼ݢ kK`N~ 1/;Qqm^xWdN`DZEb|DS %֑l LCD> ۺ,F^:ɀ9(5ZX<=/| oFFעo+,50jwMӻ  \p ]N ti6b<~dH D+Jf~ { ݊jL%`*M+bхb8CY3<&.Ѭ^zt,dK֑6`nTf4aUIJ]Ń8Y0 } \ ɡp)8R LJCfaHqGi.P ?̆@4|akt:xzn |n> 3T9#|z}1Fm©J=QKqH%r` ٲjI)/#ߒ%oP9ؾ":ɣz]-t4ɥI"?WAaмv5ԦB P$)Ϡ˩6a@ۮ[:UMvO 9U9< Hirr]M3RQz `\ .\/L(= .fy_;E4 ۖ^| L!SHTa木4 =.ך()a)ļ.?:>Vߡ!H{7P@apѼӹ9 k?KZ{mcuh^YO|8te?sa%l 1)+)y @3p)Ea\宏A3d_×RB!WQFy ;y1@dPw1-r͙2~8#bA'-n#"N<+쨏S*diwQ{57!̊o ~hrև?.q0TQd:7оHe VoH-|w%y55")޷J9Xy]D&07$tx},\| Z߬v]}Ƿ؂ 35?\SSthOŢ+CljAƼ4/϶gBB)JD>Fˋ;6dj!pimڐ3`o=Wk5QZ Цzt`{k1ouΊTd_Q'#K {f*[iE˺iAcoДaG8?h2D=9!MrTLe،uߓ#NWM;1Kr ObB9E./nfC7hR]qTTn)Oe׭3bPC n|9y~~?ok !\F/v=)tul.ڧs>տ^N>Tcr4ld.'UXUG qB$?Oar9V/`{9WS‡FG1$dz_Rn('|B_E.oj(@3I>Ӧ@nkBAАd;#gJBgv_à/,&)|C:eK&,Z( p;M=Lm8a6\,VAD_f/`_~b)>*6HY%"A3p:pWħi;D>ф & o M&@AWOY 0:Ec,9F-tj7~vG}eE˘?A)/dY؜t\sxJcVbW)P%ҀS2Eh^y7\]"QVO=OAz=A^У}0Rnջ iϲ4s)m 7YTz؂~ &Ӊhnm8E϶V[א9vs CW!"$s<:eose75T^h5%tjf|ɜ}1 ..닾_ 6qGoug6ËQր~abe[~w=&?[4h7m&6VpH&#VW*&QރcqwOջ,-,smqdrr JJ&gð.bEX|g&b [Q ̍[Dt_[kWmUSl_e(u*C%s$AS mcs\r3Q&šO'F嵚jk'gM%;  %6q0zh[zZ(JjMȪ2 0^("7|NP8iMwk6,R}c /)ک4∸eI۠]4t~ _mpcd56Jz]X,Q^'~/lS|R;/_7mBL VuEU(9[baɶtJ^3Yk`;q2\Q4{m-}oQ  sM3',-::ƀtfǚM|2[m" gzqm枅w97滈ˀHGAЀ Bc[ R3Pҧo]v+Gen>O8mFcڻ x'>e TdR2m*U;%Z+*?= ż>řMS8Ap5 ,?ܢ[W>h Its;co} '0DGK )K=,3LAiI&yio8vamtt}~ jSm(@y1cpa  7zW!!6*\3-2髼Q^S`LMzw4'ϙBFHQT3MzqNZԜ(ǷǷwa+ͷ rd*ʮ '1nH(DIUl0+; =R˚emu9%oo?H{~xILk'"]aѢ<6׺ (9pkϬCJO,y+)'WhQOf\ݎ_G@4;t1ZN3M}pTsEN;N N\e粷% `0F48 _y4'N3#Ty%iqm"'"{Y3S,۰xcFicjXZiAsQQranf"bɈ\Zvu*%~;W3pDe! 9V\iX0>:6Y]ڄ/clh$ 9_7JIPvl6qUX PѴP4F҆y}R],Ur) Ńw+9B0X#=]k;rW^nTYż`sHxz6iZ2Sp#r['YOgxm*d-ׄ8qҙ*Lr /~K%WJVj]Ffv(tO<ލ ~IL}5@*<rH"#H7ureA<iܣSﱑ[QH;A;7Hxvny]ȭE{0&gԼ c@1aZ6e@ 9M*8_Jx?ovZ 0AuHSd o1CK+S݇7$>fclVrOxx->CԚ)r)Xq!Dv/FogIK^H~oMЯ\xUNl˪؞W+Ų41f]hp` 9i6#`& >|Aϭq>χFX`kߥݝcC3pg>2i >+B97dV&z߂NK6xAwjO4ZQ|-[P 5zZo J'80r=V͓Ѻ G uZ8[.n>CuUy:㧹O}M;j|X5+\8S.H; AjSR-Qo σuqT7[QCU˺auS_Вq.a3ysLD?tInYI܋Efk=du'ZlG36)J\t8H_oGwiWieOЃe J~"7PGע=Nđ. \{ nYg?\!޾qKibn&g +4M7']AcۖAԯCF/W̼Cޠх.FQWҢgix3(,j} Ό?(֔=dli%DFq19)iVLBCyyߋoi]C]K4#x7Qݦ[ܤ9FmNl5/}Ĩp8#oecAחH:C*("h$P].ݙ)}eDKelU)꛸6B;FuĎ4G*rZTL1zjd1[^$ow*&d]DKx:q eXC\٧wCcuIdiO)B| 0R41^hwǯ%6ڠɩӼ_דA8ςVg-U`;ST97|`&yÈ:? yIJ-@%.p9SLߵl2UMM* Bo**rUW󷕤a+9yĬ]vA1KQ"G0~4[a-Z#DgM *G`ǹ"_ (JkJOtYH:{B(ίhop'AP& k&/4``ȵ Ⱦn_B\ߵkm4¤(ӡtZ"z',qPn5WE{p5uga\-ԇB̆S񼡰(G14V%d07V*DŽ5wu+>∗\J`aQRO;J&]s^noKVǺ㗡M@#u~1Q=绡Gށ!wĕ]Quj!I#u9BH16gyI~a$jsʌ5&[СIN*<.5 6;l;+|(x;.pk5OlWw{p ΙgIH\ѻ:3Hx&#h;҈|g•!-kËC2 \޼f2XTqa*n6⍶%na*-%+G⩿̪E.n&JE7h@ '0YWdʏiO!;7OnuM6#t7v r(EשSץq, :r2x> aɛ sB ޞ[Y=ts &! :g[8osRds]^A5ne‘)n moX觷Nc*OPװN t]L;Mg= A`HCbQC3Ga tҘS`V̧*86uɔʓg H j#fb,{ouFݮXLj}><̧6Ѧf'DS~9|zZr9y2%y5͆w* }pӚK{DxNOaҕҵdqJrEڡ\4T?2sYw8 `m{q'mj-M9!=bM9 6 JWլUVwإ{OWɆ VC|B[-~C01l8zZE}[9ayKYA<7R|+\44t_ur^ fzQuV9m!X ۃsg6eΆcw|kGLwlɜa257X-.f}ҼM"%|粉Xş߲ɽAR;'Jp'HMFQ^n fou4&aIo! H$ݻ4[/EOțȋ"ؾQYR\s4vNF0yV*c=9P Mk 3sO/_Wy<0@aӯU =B7̿ ~K!ҟedRA3ρB,Ύ8[1]wۣ|sBSR\$i6r t^v_zbT5D ^,|j (/5|)ֱBc4{&(.]9BXIT)jԡ72xv.skC0\utf.J[q=.+4RmOZju';67xS%D yL}sk*[803TS$le[j1| ,ۤT.>N3xa/xaC +՟ =׼~Y{:oISfˠ.•"M_db!۲lkHK}Whڂ/,V#,*$U$'2QLN{Ju`tW1~ݵB H{ښy?ӗx2Řu(+t\/""jӃ?=FX`|mŧ ̆x5]G7I +knhc3*Bw/d3jȚG7,TZeYCu{6K D:ٛ<^%aƎ*ٳRI`T5z Dt;vß?M 4Od԰E;{1jh [DR&Y׸Lp,Ϸ;K|9ѥdt @_/F7,6;; 쾦iLпz]T o|`d&=i͜n6dd S{!gfM@2ڸVt)x!}f>Mn&Bv_.`Mb8M Z x"WjS>N" žUqjRhKE*9 N4;>Ly'5bz-Uq[ғK} 9] 4 u+v306ې= # )pZ+ȖxUP" ?'y< ޵[aeBgoݙ@wg:ǵ1va@HyY*x?ӯ6:^:|(%K5٢Q}61(7e_7)36m6͓}Q!\jN0ok!y;YJϓu mu(M-ʌ*$3`^@}.!'kkmyS$K  {TzׂBU(wawSx~.\ F5'}4>t^ȮK%>E˳+,$6OA]ƩПyoɛ; `dVQ~"4Vx")CBWf5;ɛ)wooa /8,dܑ%i#afO oB u"{aŬf,m7;l;_P; $&:y~uXZZb5~Sf RsZX$}T[駎] ݶ pc+]oEJ@SG jpsc7<9a]a/˩ΰO s\'br'PcqmܥkDؘmd#b̟w]Ȁ)mVxu#JMhs T㧂4σKnN%,s0gXkX$ W46^56'LnրO }0 r0ar]w_ 7oem`E5tA3d6=`ܢBC''{雲1jEٝEsVl[Jnqq2 vcGoaMZ/[ .rDŝ{ɴ5d !QmG|uJ,_6QEה)NDKaIi}~[BM*ymg2XZ5.ec1ԭY "{Nă0i?Atӏ^ZNM$T*`Z<}[&g0yv,uq0 r֔XFCoY)Ui'aE樄\@LT+`ÀІ")idAW a0iy{yn ևG9wIv(0u: 7A`20p8e|J}&{+z3CBK,&]nL!i$AK}~-@>=#5 LtgA Q cyGQ$Ъ/ܶ(v>.Fm6a>p鬈S +5آ /(HgTaԏtSe($Dp (E)\ds߼0G5QeJN{9OSNoc d}ϊhٶ=F<jC92>v)LLj)Do!l:\)>{@u5+?E;y dxZ{JRK4ƅq [}t.D7Fg 7z.D7|`G =W_ 2Q?OF[KyΟ@u=5٦#vqtzlwVB)Ό<-_"6B~N" ~h[,mR^ϪQXE=g|HZ穋׷I iHFQn G+}s c62SO "1Dp,(vWq+?EIzZg@0G~.b8lQ(YǹW<#[Jl 'Yyۋ2Vy ?H[p k&4RsiUtC^Uo,7~8]'cR2I D`61BLʹ4 f5d,iW0a!~(FNB0iZNh~aZxW]O)3-2FZH#:HV.ٕ3CsW+ݱ*! +'q4 鱬zS{ p gCG1)!UXl{< q|i}=B2 ]r&X\bgY=K^2tF2 kn.TV\ݦ.~i-^a w-v?q['_}+~]Fnx>sol&Sى'e* `+a[$`Jpvu̥|C!Ƙn%~j;R3ʠTAg\m͋'N0=@.UPo^(IUci%Hcim@F Ŷo:_ŴbJ\rF3];w`%Ջ+UU uK u5@M GmՄ"\˛Xn#E鷆+NmW7;r n%N&EO- ˜x0?@ l< C鴱 klBӗnd6P<:CA`+7wqTh SHQqRz~s(%ˎ]q!l4\oys2=+p.$)hu*hst2N$Z)Yي[W ޖ;NPv:fqTdkr4/Kd,o0(NƵd6caz A  L@U]֤R*rU*$GizY}aepS#" |3&U8?_~_2g:B:U YH]=8$52-M.$6T)|eĸsD>o^_(+ ПD.`9+[6*RMSB/ 5mt]O_#j"4c#b>;X&sHmnN_: T] bqG]ڪd:k_S, 0o\k NoU KG2ihEou\mEiJJLd͕\v^L5֬tUW$7 k+T s[Nb [s'ւps?_3}VI|w;ֹM8l@`x)ނH,Hb@iֵ,%uِx-L;% c5ƭ)qۏjehmNY<}b'7i%*3$N:L E=]sU s}C9R2`ag#κ oԼT.KWI8`Y/JJ| .}яX :Y7BXrXRlCE߇`D?S 7AzizHN~̩s;&XbQ译=:'l;ws; ( k1ׅGyE,e)/"WBǘ\e dRoA1e93 ynqz8[жN$嘏KFkX>bLA-| "]T霔J"5 QNy~! YFAW4xw@z b|Xkhkrd<.7{ (Xɡ>ټ) &!nۆL[YClEH,:%Tiq?S2 I=FSͣq]pڮ)0Ƈ,l b'Z#h6JM"1a"GP GYIOL1,8M0DYe8\I@@Jθ[+{&Ged!lG`ER}G'cz{Cih')Iy8y0׭mc$2גԵRs[o{Y@oVo݉7Ғ'$oL-&+N1'튋DGP?׿iNlF"wa#Lo$rY PgOIJ`=:Ur\%cZRl`& Ad!Ғh_UӒg|qBˆ ʠ.tP^QBT\,zN(j'X˵NOg#7u5yE/n:֚)KhjlۃeD>״sPYwyVhC7xb>oC:^ZzeH7~"}0͵T=U6rCv<-(%sBfa|%v,͗[TD\*ȍn2"SwA4Eі S/vtu]-1?|| $*٧sDGlQX^)0UVՊBh#K<`$d޹ݓ;n 9=_6,dfTCUt+QDׅ)D8S _2 H2wM1VJ8;'isu6n(ED%C_ 9?r~jc"}n|87Ĵ*5|k麫oУ@)DZŀ:Γa1B (2h s5dAkVgƲN U'E A" RRr5;Hh@6fxhbMz}PS}~<m$7-z l%N}5zyBt9~R&RlP^ q5= sIYK3 =Hy$aޤhI0] dPy'8[k"33AC *^n@=RK<iՂ=tR7 k݈IG/BVV5Aڋi& i⊠@NV ޞ1GD Lj`ޣw^r`J&n~G=Uٳ+ßt5B"`)Ismy,;jbxX"Jo)[8IMkvi<ӊ'ЁLZq/<_"dHưVj{+5Psn6|$BG6z}LcUլNQ_YU؋z?@.QQnSrqjTK١+˞ Ԋ$nqʎ$O(ah Q0mef^Mgr3K!jjxJKN_s.6\o#oSRފX7iEA>r Ah׃5ﰩad}O/>F5k̦24VuQf)=RfNNwgP4h_l]`ߞ\[Px<~$X6}|ކȒZ$1A *N^e C3gNev]>v@TNA& _>ML{ؤWh`l"Z#,{ij箋YYLҠ%w+!00[FA4NUK!XTa[._Ds5"2Ftv ~u;Y|/P./R`U ]EB9iRE'!K 7E YɷM|y (ga  ~穏ԄHB6_E0r\w7&eZǷ^ v.;ޫ/+_Mf;I٩I?1$[~ݟcc&+?g'["MA;6Q,e.ʡ}Š- |wvR[JAU}̓N쩩rLd-2Ei̯:OEa pJF.-]aFcׯ $}_KvPsOx?m[G~O億aDd)Xm51(J=ocsU&z5K52t^gf=-M-Y@eTǷ?;tVƌer f%7gn^yqd@`(PF>\Ѡx56;eyA %DbT f5G'u)K]B* vE{ː#>6Vc0; Xݿ괊W^GGIMEM)K=TQ9WrrSCF8w񄴇?0i& 6kwe6bBq f%vjݔfvvmܱdh\a$ʕSYe̖im:߷HMu?a@, cQtiSWJrk>OK KߕUSOh2^WfE G>.lygR^XG{ :c ]A2pٮZ5 ZM 53Rw#ywlٕ^[oLnIrbƵ)<ΔA/p[A/+v ns@wK#5܄ Ź?RfE:s=ŢO-#ϸe<`Nlw`M9ze2] )~3*z@*e E.×UD{97yN=\.#vFHoQ.x ,VJ >+ {ϱoFqShPo]A<2UEd'Ͳ~FOlOUΣ2r]DeH_׫%ˈ g&`XڽWoN&0, T'?aQtq|Њ$}ԈqTy~mt\} &0 p̌[䈓&a?el.˝. G(N F**%s;0j[WkGV9]Q@Zh5V!Jji z̆X͢]5|’ObMŦOpl)w+`ʿz#;߭땯").wem\sPTG~sllY]{"3t;0@+դL9 lJM/=lfqP@]P\n>_h30Si]1&~V^E{3W:$=&um >oѮ،u{~+﫥rl(06GdihGw:,w:-i5 |̣[.lIN΅jq^XyާD7 }c7p@hp"]U'@O)$a`ɗ:s%p*DcDZֈ  \ھeYZ-pѧ# 9~%t5jzvpX 2.g!j>=PC`@Z7WMH0_ KV^|OduB/bwoY Y@״3j~Zh˜Vaſ*!Z;7^ܗ˃ K7DdH1$,e~Q -OG,S!?L0Cu8dHQ5ϰi Mjg|C9)-!8dPӡPId'("P?϶)ht_ axXYQ:񾳩HVߓ|8/᝱tR؝W|Z"Ei |X47=0 ߿%`)p*JU@U0hjc"UJ}6I⤌([l%B#c@QB7FoEc<;*2dq9Fz\h _@_7JDc,ZNfC@LlK886KmۑVսq-5@#QOyΝ -VB|;wR 1nuS{ XR*&E4N噁B ßu/f?v5hw(ܓgQhOt1 ۢ N2 Q |8q5&EXIЖ!5I#ςcVOL\B;9QxP0wDؑ <^_6k9m_wda'|Bǵ9KHR$q\& 4xט;=:*[8u͏F`9)EY5AUQ?Z:Y,uӬd f= D_v7ľ9#c5z/Vmk r,;!m`u ;qY/)`]g 6/|+L"3uyv ]3ydsHj,=ߓ(- ogPn>_[Gn1 \ g—(.d 4/ ZcJ))@Z˛@k÷؀DHNb=$he[ 聎bσ!îlô'>MBS h*C>R¦ xݴftC-Llp~Hg䩵c,Ee&׊,D+i#=8l'6|0ݦ:o\vwT5ҙ @CyzsUljfAb\%d XpsJB !آҙ1X!)w^ʂ B7Q:ƛ.`EMuKN]&21 O&;o8R#0{֯;+"XyAJOP`Ō'!H V5,Tagy͐QIHdH;#-/&䚈 e]+F:gEPyF*w]jT*BAn)yN"_|بFؖ:6 h(:W0ZUXN!;G۔7ܠVK\)c ^8$Bb>ul߹ńm0~j J=ٿ(`8}jО";d:sݢ2=.9H\Ti#T af^)<&?HgCGD{ƥZ ʧ|p Ɲ hŪA*9hbI9-{h4a1!8Iq>~T(6cV>. ^Hacw WF + 9ٰR`~L:˿dX֯GP9T#}w5ެᓗ*q1l^;ǻ1&j1 A) ,s}Io(̝l:w'Lڿ.j'xA=9e6ypB}9_u^9]*EF@ع *MF0ijH*״q!Ge&~5gtqI,3=`J{dGf}4GO)bA O)1<6cN|H& n’#Zraי~i@8`տZ]uh i=-ulüf?8vu;W 1UGKZ+_c9jHGi`/O1|\y(d-׍kljj _:#aiQ&θ`oj.T L+zVTy2lzQ*Z d$b={E(uF ;!N" nNtqTL.mf #J70o׹B:aGXc@zxj-9֍Q0#J Z.Wx~~O7ȏ^JjbPF 5C Zd" z:LI] ղЮx)3J?a4n*٩cm!u"WPcuRZ+S纡ne]vxW FZY 1,>bQ$Hi #ʬY5ZlI$5vW)i} 2`s<_t5@ז421:GRq1* Yfemi<q&UM}'WZ U&cY)~&f\ooFK_R4[ٰWt[vʎFOdK@H[7JHT <\^pm_c7"*+Y)md kU!N pCe.kK񃬔MS}6?O r`yi3A1"YVa"?ncmA>fK^_I?#nm!t/+$]LO:N/d8 |Awe"nR!/K=VP@B w+tԄ9UshȱD#&^؛6ܛ}`RaQPLs 1`R.oG1 ?t`(a7m޽bsHPyI'7c㦸Cyf8>(1hN=!sQ&w(Wũf ru\tNժj3k}׭yS* ~*<#syw#clײ-$JC=`<Ԣʈ[uy,1n+MyOUKZY`벢YY֭ iV|k:,Ձ݆,pf&98ɧ}C"nJ­n-c4$Ј+Zzq?7uxH9'*<<4A>kE67 D߳=׈w혁$Qтu=CYދׁ%)*FKK~x+:LpXɜ7 % EG/w *^vg< Cm}qA}fGT>nHk{2 `'h~]U|\jUگ1.C"4:bDmm8cA[ }k0+wa<wS 0܂N5X?Dphyh,*`GͭTr/Y##u(\宱x GQ <[ E)?;E "`"Þ.9೥| `;Ncy7LdW 0TfU_@w LG{ǯنڊ.%qG i(2yVSO9Ҙy.89r Q~gq &/U)jo;woF&a5KbO:3z.8aSeiNϱf uwv_:> Vjh~H'僩^#* )w)B'.a}ŹRУi7~ ƦTh1ozشsbQy0[C?o^/kL}Sȇ_k $^a9-xmzN(,+=y(7>89 `%D^-Fu;߮Uck( H`qa:С=] \IaL΍"'9 1mW4h1>l R7̳S}pcxYJ-I6?PKsb - }U!aOKr3JUA(:f<CYN.nQ̿L@DőoEAj+K 0[Clxۘ>/̽A=@:0R`Ycad O %. tQ^.oerMUbH(벓8=Em|)ΚqmMZwQ + [ o'SI(ЉE6+CRL7.L#q[}Pb_V`k.nW8yoNE*׈,jfEMn/94xY}FH;dn2SV9}ݣLhmY1> |ySR1&ns$[32Ev]{2I(P*;1 $ABٱXNjNڀ i0(3$G& F /&rq'ALo2ɂU>e"N$,]s)wDaC%E"۠IWDk5xv4>dnˊoOX)Wnh/ 4M +sІ7['~1z {6D+ @ y1_7!A3v^f1a{>KuA2MA#v[G)X/ҥ_p<;I }pu`([YPS/=T}<ږ辅T9!U"[Pvj"!z@QC.HnlhS֙ɫI4@#WRF).\=W [1WĄp<3c GuS4GIIt,Wk]>a햯@!68:;t^vL?^4}]()l`)Yc Gfo `C[w?Ui>Q(&4˖Zmtҿu>ha 0ۛM=@iLg kbQ:Z=`==q1 QY&t1]- 헽O%<L'PeJ9F8dzWJ"h3lu[d*TfҾi-h !6@c)Ss @m0"v6ǏӘS>y ҿ}>aӛNu9?{Vcq#j:=%E73ĸ υ1xEa%Cё;$G+&BmU鮍䙖zBUΑ`]i#oDD/>~9r5$٘e!! zu>5vjw^ML[i%$dۤ:}z+KղXGӼkVJ q̚iLs[]wkݱ+zp…N̷2 %Tf:>i GD[#pJ!h7gJ2(qD{fd:3?섧~FώJ~~h{GӖȺ’n [wz~Ư(%/!:Ls%!{C:I<7ߥ lօv-DH6W3ljaBlUq@L)DL{05Z5?A"|LO}h?q-d%fAlb+mMn<ֿ%D*C{=ͣ3C۬^&}\TW99lW2ذ&~rwͿ2ϕgLC큠LBd} :#i'H8M˃ڑZi(=o\wL~ZLJef]w 7Xv&Z\r/RsǝmQ4wkJ[M鈣CGN8T4\^9?GP(KKáGZdn3 2tY" Dk$*BGO uL! Nح@6sV (cp϶qOny)>WS ?h_(Vu]ra! \vmCf{7UP 4 XeNvPWD8t[{r@mT_>Pd3\Z*cjB7S1LqٷEm-.ǿZ1<2sK0'zcHIWx[")ݹ@;R]͘5Le/BF"c+?wk6VZiU'v]~I)'Ln%z ]L:H ҇RL%Gb ZrkޔV)9򵉠>; ѫȢd9b)P).HZ) `]I"*kKwI:Yѵޠ"*`m;qo0\xo39x_ǚ"ϋamw&+Dׁef8<6f/ 02p8M (g1b+" Sqe t]ru.Q <YnX3tX; [f. 5ʉƖu&,j:#e=zRM@c;Qf] :nVUߗiu?`tQv0_ٔuA%!2-^$3DIV5dx4>+[nG  djm3Hrϐ=@w컨/VL4^i0,坸(@G ߸;4OxO  heS_ya{ A].Sٗ\: ǃgO,g:ERoyzZs܌>rO-;Nm ݜUJf /0Y^2](? Jw=v=YCf)c{e+/f'8abuwR4f*@lE1%I2e pF]h=ۡx`oc#[rۄǂ@]Fĩn%pNw xWQ =R2 eD7.6jh\0fKнuem cq@,&dXkQ`6 uӽQ̈́goIϐ,nf mϡ\:.8gܶtsP)7c"2?6;mI$}1s040xfDt2aW/ ;dyբDyCXskee|PƁHEcRN;@aΏT4^LLiu KBXus?˫ħq2̕>"5S`~V(HI8?iCXS˺ٕ"(\ qӷֈ _,՚nLD& Zr]i=g]CմёƜϔu85èݞ|I\Zȗtj^*x\m 'Ap*yѹɤV̳?]~AN9W0JY2#&oR Nу.s6XV#ψdߥln4\?a f:2"v*77^*@യeVQ߃)G#+ʯڕæ0,BlVܹ*E@gc *^)wlL@kc  >ϑ>~1y QE$\Jdf%tb% y*o(r|ɔQ*+`ݬ@u'1{%hPCߕQgqʓg]+=+"xhlOB^N"Iijz$~ ,u BZ5*>9efp9\jNVonCg֠-R:}ZHO>|oz}h!==Y#TJzd0IlGa\d*Δ11ȧ >vacO6y>@CKXFD+f; I*qDޠW?*`ˎ)bfɣ >|ݴԚ{ۺVDmy=v-ؗy"$}ŝfǫňkx9cB!(&]뇳d7g\S\<~NCġ>C8|TqRS>pObMor}Ѱ >dzCn0W,|,qߘ:K:d`|vmopHzb@'@֊Y&,;mK,!w/( 9P*6%k}SŁ}(wNеpźv,5XXv7;ta}$)'$Aݧ ػsӻqΑҥ7'.H2[i4.3ߓb"$ªʒmUgg*v^9Z\&9O`G诡s(uI2bmfCCB©vNXv}rōHGICwf)&{AW |2>KP<2 \%4s & g&CQA.Hu!7 Z Pm>E;ˈǝ=Ё0(0:7Q(IptBܑ$l#~mT{!8]+w#G32޹.agҰopLnP-htf̲NCd{aTJlbX k}2ܹF{x_ͻv9eN`ȑ4U㤷wQ^S;Urp(H%X2eUBM:M0>F2N`_n`2̛v̿扔 ˚RfcV^/+CA{zVv6-剾dzB9z&dg~гq9Bz(-sbyFN|Z?aԑ9ߝx\#[佘~}aڽϊK٥ `{qgޚ6ףgTr^e Ө 1S鳋}_T˯u`a&鯟r"J|kj!5+OwH4dˉ3ˬ:T/AsVYT`Owy|*JEye:?hi Z 7lB*%),лP*WwUuxD$8Q bӪ(]uȒߨhQj6T.hBDE<&)m{C*t) n9LSz=l,(`do+築G6K_2ǩ}R +NX&I'䟣fy!̺/Epb .:{,7Ψ"z)Hd1UfWQ:@xD$_p+tiNer0@5W%W`PHs LN3T]IN/O^E$ 0इC O;uFJ|Eے :ɭ41hCցmc!Y<|{%NŢseAuCN5uF4|5t,t /%VcH6X #V \F2Iiack%І{۞4 `o0LFƔ%[WV[Åm›՟$@{z[,j #_qeY OFnj l zJ&DQHPWx|P*$KBcڦzPDǁ7(^Ŏ7R;EOlb慐c2逸fŁalM͈ kwƷU̿Kd|"ZIb2K#""I-~ٸ<= ϙ O9Kf;a iWr4 >S iQc>pirp ަHmTdވA凘_[%F9=gbX,I&zKlZE%yWӗ\I{n+>}h ]Uݶe䃈nz/àk(k>JN7~7P|يXkֳd|n԰i\K? ^=HוOݲYw!FTLB-#Xx]cPc˭Rx ]}ֵ?bxb,n@CO]-sɥF'\X\z }g$K*0$- dz,6"iϢ9 `b) Ӧ Ao$y?[o:L|-j@T_ɛ(`̾;eg.wӀal'G09SRƪxXHH1nbV,~Bkc{9و9ؑ$r3-,Kҏԩ'\-HXB<|=rڴtAR55LS ;<[8m Nu=5HaY7[+0oFžQՐZ"PeD ?jd5w̰a jrL?dL?G|ۅ_ۗBygeayVDcl}A3m(!*z[OOx|@>]-:,ML%H+S)b:ga'+q`{Mv' fI谆Lߢ%&W卆EY^ ,Omا:(}!>u2ZqE/\,JDfׄD4@'hʈoW_O _9tfphk5zktWI~6 <͗J[d+@U`mCZ*=5ڗm#Uݙcxft./gkS3d'߽EФ.P7/\4/qفXrg!2 zN>?ۭ7h֍EVIXNd.sȘGR3h#:u /ơ>l%s5ZBS~WLAՎx ]v/Ѿ qͬ㶧kxAгRrI2AK%hM D0&4-rR+ I>j%}ȃWjp:ZP0E-U\ `y}Ekj 'D46D !dz@Z3 95Ioy d j`ʳ1Qphȅ8 3@X7)vp JB'R@G朢ϝhjKL{+g~64,_`22"Ƈ$_Ģ|fpXa[}KM?=0S0}|'Qʝ9'(l3f93Ϝ&b|QҜLŐX7S'bqUvFJUR3hsCFƦy; 2֓-z_Pm23 'B=)PPaHs@1V}ӖD6цr!߹OGZ'+ (L`@#Z7Zb>r@hv=*u|[O ] .u eȾ?~afo{*D27I+*~X^v~2GoίӤM +FLoIv]w>8+tcr#ut ./*,vid7QT]/ (("%4@1@XÕ'{WXvsV_[yË]KP@0b!\i@b$F>Mzux0l=8PwGY '^kn |$6tIj*&H>n!A*",=Fbǽ4 i'{)-Ul ћS4i\rgq^|v Y>gʯ$M4p?)#\ 3$*5Hr-O9BRM~ %!oE<̏&؍' * Ǭמita݀HjF펎}relZxV4c-`4|lM5h+:_˱п/yTMG&U2enQtzs?"0za2ʴݻ)33ژR#`E»WEw>~۵&FDxG û:Obaz`F.p{݂a%l_VvT` B8hm=I`YBiʹPq;CS|N%BԎX߱3Y[22OE`S4ߵ86< Q#aS7X-"KM~,MNJގh7?^J-kĨê*4E uKy + P},jRg@N+m鋑!uq>*OCX6Xrʺ7o$e*zyy 5< J2 In|$ b.}^*d+m "̠C7|`e/f<+k6qMŒ/ (C'ݒYϭRq-s`C:%"w#\3&R p/1&L'☻:kbH0٩ ($~ꔣrD_YB鴤z&:!5m pzkkT:e\e=F5UH~Q;Yeju ЎE *9xzU=K>ʎĩamxW\v)=q*ڥJ/0g6vGtllǝ!gxH,uܒJRÈ3H p՟w%z^4۾@6۬] n:B"y}7*E}.k+.d*<^\x L8v21GҮn*3$WYcyAHw !H-ÿ#1HcS:{3ݞI6HDllV#/{$LJpiLN`!m UV0(ECl&{!Qs8RVafy^r0v= gPQBV 5JKۖKUtu䛘1I8MngD~UvSXÑX kD{n5ۘZ[pQܨB61V&`,QДΦXV*?)6rIi%^\!v eGD}]ut*f.yk ;&bυKc3tViRZ b [L>eCY.Vq+BY^b3V747\38g=?vBWOn0im~/-J79ev ԂV!vܞsa% #gȊ.ֵ!1䫙] AyGb)ЮDi=B"נw!1cczP\*$2;b7 ߁9lImv8 dJn%IpQh}a_/^f-|TspgQ!tCZ->,t3"fDPjojٽ{?y77Hw925TNݝxQ}G}l3{1$q.AT[I D kQEFDQG^C K Gr6:A|.4P4&gޠ-{߅,Dj~f1_0Acs:xrkPN/_s5{LZ MQghQ|_)3E7DdgexJMqB:>7 Q}LS37G 3 V4Dc0#`V>(h p0Y.!Rub.֦t|LdJU.h\6%`o ټH!hk19m a= 7h@/ tC[z ;Pd-5`pfxU]>7C`^ϼ=füXg~6Jz(}P|Xh/݉UMoN$wg?# C780 =xJw?T|{ɂay?Rk{_g8jã~azA 4S@DFݙJֆO6!$ߵHU_[;6'cqߝ0CF 0-;';cY.{t_7B',A K;CM`U3o\7D$RLx%ZfN5Kf}SXg)[͗ d*vzSAoES +==w΢Y_ Ϛ& ~\p{]PR枙گu.~'(gby2oDQom~eSjk6!onF;sKcYaO%=9;b3%qc26Ml4U9 ӆ7Ϲ'? i\'HlzϗڭpgXa6HH#hl_Hbcqq/|[W|Ȥt"X7q=4Q|>i)47ƶA0w%`Hgf#" z^@l[fSijhd#00Hsolx]#+SW%Gqe$7,J7n$:-ʿDž }l*gP@dA$^ΖzR0>b_y&D}2zٛ6*wE΋}R$ N-LgNgbgN4'ۘKߙݝvF2WPd|}>iL%2?qL䑣1z[8.ç0Ů"8d!AԒ2D[.ÜLk9W@(W'mw<ֆS2Z~C_śyTI7m7fRH~ )B`T{˸pbXR" `u6'Fd;sUƴ׵]KV ɜf޺)Z>@&~v_g}Krl)o;ՊsDic'VQee o:`L|*umuru{1ä &v򺉮aQL.(r~wnK]I>;]o.R$2Z+`,c0tGlFJrT>q;P@gY$yDĨpY]*Lܩke"}=Mфň5i ;0!Z h)AY?{_ ގغc mP\F2X(Ԧ}*ww>|Zw;q Gy5#v\[ 8G98_Z13xXIG!YgQ~B_84y';**%M1 $ZN‐Mzz4F7Lp_\7'!n+&4lɌ`&qXTؿN397U 0Z%m7jT OnN} &z g6 B& d9=d K+åͽIyw[[d3ǖX9QKRc҅ϻp`[yw3Phfq)zF.7 ͦ1239_[Ҫlh|dxNujo6OybϥLt .q7͵R hobF>1|L$KIz$jڑ/'zv|%X$hL%!F.[M#J7qsBZct"3P4h?5Rke}g/0IXL~OuuL̔}%ۗ(jb7`l[ ; i`P]9eEB:_T̉'I݇91.H^]4=;B`r{Om%ubRfׅ)@hIEXQփ{NU}هVSsHu32I-Nc/SI4k!~@cY! 2 #̿`[ɓ#kH3 >,-BBHߖT]cN::tT ^)\91j3X3W_%4|G]G&ED>"5V3u}NyiF'Q^-yP&9Ft5񅕎ub{2:>ޜyKN5 -jp!^z9*pGBDznkM=h ,/xrO-j~aiR]N7f!lжNk,(ѹ֓ ]F&c !j9똢R:e/5b9h킭h_,`OWo!b^u|:ih#Ř #4ؘ7?>K_"g.G?}x- owMbazk:$lM u8UIjU'!X*װ[@?7f"p%U"i3ox x24>K_ٹ-;#7A=$4<г)2eۊE99g b{Twt:m_?UܗP'oiZ=aB3z}eiu}J]{*\Y;1 D+__Co+;ڸxhܤv\L[6Ǯ`@Yӑ[EF)l>|ƿE), T90e\u X"Sv8r 72k)9 &iV _zsBCK ,Z/ثRPp 2Av"Rrܸ b>oT9"%' x0%S02<\DWQO԰tNǞ]tR7l D_H:\!d>[&m%wzofm1@]=Ahu9sxXTY j=|ApS:cc2JiЗ+H/ >`~늂v,pӌ3ar(ِS3r\{m1PhDk%w.^xut/ZA(^}\^ůa`҃>!"DLS6-Q3Lv PEIYyD⥷-ȫj6A,j&>fDs+nX8fΤa2}穖"C5iD&F}m'/ata-$ Qs 3|Wu*fQH qeb0X9>(4pvL\N9SeF1J9OlSě FמvyZy*՟E;uʥg5wRl|c(3T.J<-5נRttcd{p<6ST[$=|Gw޿ 76 IzL|1x5s / 8!O QUe@Qؕ#H=V , zyXMX)=ӱ9yតiH˸bwSGڍ3y% VSLbYȿA$tJR.>1[ݴ U&4$qf9u~ Đxc*Wߞ?¬ uyt翩s\O!үIzcZHp>BcU^:[n ᙺdokCNd g윫 $WhIaGz戀ҔVTr>ZRT$~-ϼ`ěg$C_eN 'zʖlmͰQs5'ޥ(0z%ܑR2C9ĚWL$A SDmdGV>HftG_=zp ncuo>ߛԔ ^5A!Ra `ޟLc_ឦ_gr@}$ĊXM)dh(Q 9k ,y؏v⹖)s8HąqԣuՑAv!eܒIi`M^d h)Wvӗ`~,Z<]29>`A=Gvι q[lU)0AtAF2fۊ]W%Z4ӷ}ѩhac >ŧe eBDǎJ!I ' jO)I@HZ2}9q"_3Ӈ9xv0>v?xg/l9?ĀfOjݵK|> ¼oN|q1X)JѓNL3i.fi[f?VT"e.\伄b=wTs!cmҶ7苵J<%V-ׁK>s ]# I/.$ ܮZ6UҘs.Ruh.]n?urUrH%گ$PyvGe2׺ސkC̊WhZW!C[01¼?C%tAZawOk ?ߢJYBbQXxGϵ$$fkwZ\Ph.XENe^Ɖc]+2sRsOZgIP YX枰`j5=;,WJm /Zͷfy2Ⱥ\9_anjOc'{MӇDʯ,uQm,"lI#2g$T4HHLE*Xg"PYn߈i*ajQk Sr-*RT._f `~%Z|i筼$;,>i@ˠO}Ma;ޙws ]q4&@CmyA*Clx޸ vy> Y>WQ= X8 1n)Ta}[47}&->܀daӿ;&KuxFpa߁ݾon9)i{< ^ -Y{(Jl bao yM,-J*kam$,RfZ֏y]\r1Ʋ(TᨾNRNN\n Xܕ܆)`xW ]ykVZahoR'10/kG59^N3  Ky|*ӋnM{*1b5ґ@wP{J:D&Z"R2XedЌe\7?8{~Ud4s4arOlAߧrVPf0_ ZJ;<р\YT-k[,Ȭ$fq|n#FxZFmN^7.e%)M Hf.5522-^}+[er>AFa ~+j5SvmYQ8m&HgrlTΊLSA06(4aJg=jeBpGD5hC $qd7YQب6e<͞% ;V+#{, sĘtX2X#"kޔln*5,f8` %D%k ﳽR 0|xܥm1T 1&ZRoO;Bgw7x4uyKi#0b4k'sxAspڿ5 o-?m%JMk-Yjc(S^<@DTVY2f/C=O#6pMzHų6Pጕ 3%1c+_/CY`,IDOPDABy%`?1L\+CBKLn$bKlmwA5s߶xd\<ÕmYm{ɚVaZF2 `P:?d|'hL bypTzBh8A]ִ@jvW6lϖ%L xDz*fmҊ!5k{2#b(BXʹɆu >vǿ*Ku'/#IfVF8A?0zQt1C' 1QlrS&K[x,fzAKlxەvD0p+m<@@B"0 Z9OǂVn &M`jN6q26ЌqBs4EʤP3Mw,ll0sg#4f92 MO5 W("<]/v`pMzq: \I:u!礯>6X>I'usL]땐|p97p~פ{]~S>%lˆ۬in ݋>Q \!,qS[4Y4E_+D=8B(2ÿAt)u]F*kMрS_aNF,:-z' }|%IUDph" em‚0AS̾708~I }n=6B^cG:z~`~B+ɭ0*3BݙtgҼ0nl) ă2&[sI%UuPéAnfn2  1 v32O``KG,WӘHM?_#yD!^gI.qX {~2ڽQ)B5Y!ɭG5`(08ꨈ *FpA6C#OK=ERmE ޿mIף}Ҋ7b"Kf%g^!S>-<-P3q蕷3N'% ,ߛ" (/ {#IioV|-ܰ鈛Tf8KH1nB9u t2oX2_KguCbHP^(y{*!%h5E}4zF׺0㈬fw xi|]){86j,vv\%eAzgG%DEVeEUB&>C]bERۍRFvŔ &6`7DG7L SJ,ZiO[,[U$}Q4'veyfݳ_ŢdlYp* W+=yCp{+Θ[&S?R)J|đJeEhXPhz{o_UmfxwȚBI ad昷ˎb^ْDRdhOl`t+z{}BWUwkU;YZ$'f#?w]d[!Oc* PSB >JǗE"QVINEEk!(  | -y)2y図m)kD.V},021*z'觛W_© ;HG͒9YeU,&~op&3nc>wfۻL}PJ2F5XDc31DP1UY 9!W]Y%CLTHtw?},ښJ4_i5av<Zl~7;F@' 8BT2riqيV쟔S2dfR۽-?<2sIGC990CN!j^`^t2$gkU2V<3W1!{Tܣ:ٗW̝h ygg,Б`rB gqN |Pg҃Cx鵾v`le,l'O&8w|M!cz_\[7Ī&}n<"vX?A*8,&EU|hNqNB6*%q%qg%\W:t It ̛@Uhe^]fx$p22]=DhěLBQ\R[V6c WitwkR䏸OC^ YrhEBr6~8 h'']V>lRyˀ|D=< *_]L^i_sm23NIvz;0s~6Ω7 _ԟtظ9r8S4Ԩg4BvLrg}Szk?&Pg"I;G[%ybH}; !BggK\\ALZϟ=Ű!dg17P */f7 V E<!$D&l94CEOX+n㤒F2ѴRPo[PfUaf6tx݀r#cY ^)- *A4@]ªlʷ,`ٮVI0N-W[r? 6|>kf nOo,0 gGMPa1j <3ߠшMc3~RHQ)_!CFqa5J4zޑʈr;(uủ;QO :q)֫'@6IE~0E,9h_vI> D(] \ i.\g!['Z:^m0NJ{6R/\9c:tcj,`@YoeS!W2p%86ïDT%D^cx <^,l]?^䅖5GkO$6ܶ߆ s/MadssqǓS1*޻!ZY\GPkҟ@穪|>SZ6oAK<}8D͙GMD"XNbwr#x .GaAS 9ѬEga=X~D"TlEPsBE̠tkneC>E=)&p!mlQ"4\ W<{kܪ 9`_cf6daG6S\15*$vXRR@&-B^TW7|LU\wבּM&>]-JY`Zz3P>iTK? )/1 鴌)*3yxt3Ma.>gFDϋ^e]aƀ&'4wqx[y[Abb{"o3# maB>5²+%)gÞjj}P^B^|al#'*GVoW}*j~m=eT:Ⱦv-K6[?<>ZhHO3GZXA]U @kr1`g ygFAbsv8=9tUft_u䂀D/R#lL}OrF h'13dBY\DΫa+b9K~vš/mgڼ'H9"o4WxI2k<,>r>0{ESdXYk|VWZ焈)Z sn) +3#}j#"S~wsw zd|1[ Y.~z𘱢>8Y/gO6/a3\Y2iWɀVjxnWzͦ:8E HaγD#X pyȭ'ED-ׇѧ5"ֿwkXg~Ԏk.lWaRuU`&_ODD<ln68TRFlm'>$?kD!KK$s4({ c6oG+{w_QGP)(IY "C̔+Kz'xF$dMWA=P,A"\+ 튧P(nٺXeR&83xZ~uf5tbV>K}-.*0=Vl({_J J>rmS͒u7/.SB,EL-@{T0Pw*_(RS/ڑ߁쳧?>`B֞[t}%YT+9PAlRt:f 5$,e֝П{/Ğ*BU [ v:@k{`} Bkzl?:7*ai޼@y$9L:*1;SqV{wAi?eWBX-P@tRTʸk!RsT kQ mmQ сy6J̤`!IīxÜzK51MN_cCuh*Q JÏ& 2oFl澛,:4dxLTT = Cݴ!#k3K2qC5jӬLԄuBAa~?sB-xn ^z&k3Slӳf0y2&e 9r5#/wǎ@YwZI:/8Ʌߟ!Z X#$dHlT0 8Wr_ T[y-\ n贊3*R5: I fzeۼڇJr*j5 ]&u Tm®d=cx $#]̳UH.C"Vvtes"i% >nۡ'9(@sM~j'ǤѲh0bp92Z`RPOn=$FX:IT>R${ItrN ${9s3z|7; t  bB.$Skpa SJ`o/ZC'=M!?P% 2EΐZo;]!f >PYljmZП bx\ז9,EV v $$_Wafp+Okwod `\z߃On[Fr%”D"z&KHYxw;gy]Zt0P-f99r^5U>TG].н_ +%l; : 4pW#Q:Y"jSMcЬںA?Y^}ƈ$-qAIY#ep1$#o3Bx[?]xdƼ Ai^],Ln!SuGI .[*6J9輵u^>6xE{qYxaa[gnQr]%DTv+Qn?$DGvnGT{S/WZL f}¨?ӵA\/(ND" M<8 kJ(}͘8xc[viQwRd]-n ?8ɭ ^ ]&L3tp[kKp<碾iRʞh'mQ /BYbً.{! ?hLpAMo{y\ o3N:"eqG5-mZ=z/r@/pS* 3_) HV=~tʠ8u. .@vQŦj`Vد az( hRmR-V+yJD j߳ZNq`F2 }uF]fgHm !IǏ:z=YE xX[O EWOVH!L+9i5 PRրjMsMfîο{/p[gT2)]o>-E]{o.X;Bq ?Xs]Rع.۽ZJJ­Ǿj'Bbth[3em9Ό1A~#?\~vFi oRw>_&$ȱp;ϡѠ黔َ"=e嶼l7]Vw$R|Ij,v8l`aS5'b<jb ` :NrH(J$AzaP|xdLnpL2LK5A2."v08* Kt}6IVvzўڞz; R\7 t,%"Dbp]d:㰸v]D*>韔!-K>cQi]ss7z%`VNk4.Ef3K#5skTxeU D43TzpQ!Ӻ}Vj}q|! Xp$zƥ6_^|> ts?a9,(+@R6 66ʦl%Ij;.d듙3h2%DC#GƼkx$ <⼏Xde ak:6lEmP>W}4#g> bՆt/D<avK vX% coQsC5H H 6V{A@l;b$yչiAjSlݗ~>1ɎEJϬ#B-pSI0S=m@E2xڎU 4?/2 =R sw2OGhH4q) ܿjlxtb~Jlz(L\ό:}!3w T "G_ƅ 8ؗɘ4OaX| h/@M. 8?`ͻ )skpB;y~%~b_dֺC_B?&Ek䀀#smlLK]B:b&1Yu9::g3[N`%֝~nbHȥqY|]M;:~6~<ZcU*xa\Vڿyx9@8n-l-րj=U- CFWGzWʀ¼6}^D:Dh0$QNhAw&%K]Q3vTnS8OGL6El6̷glҰcJ!O4}"g-{yЅSp|W}<.q"㼄Y*A%v\ʹ9Rk4aHOE0]9}0~ƛ 0ްr5 }H*=SPlET!M::"6pΧ-~rw'ωNK7@ɱkwi=?D:lLǩtO[b~ "ÃptqTpλRe"(o.ǯ"vl.dBX4V _P6nGhlfu8'*K NET]zKp'{*Bt"9j=B˧D9;;206TLW bpJƂv 5KG2M1F'#@9=*;y!z kC2y̫~jךm[ IP' ыMGbRC/f+E]O(|,HKvݭv=Gg418DZ2I]+ul%,?èe$pkMYxd&>q]Z҈N5 E&ULFHL;-)yll9q~ Kk `w(&S[&C?U$%h[| wo@=#];0"@wJ($@4 q.Nl|\jþ"fnnͤ_^>v%ꢲAK1>9s5n2smU02fu먥:i,k@ZDI̋L!ÍRv+LFҗ**Fyv1:/="(w Wډ΂ru"BFeWcR,^&sDqNzR2tT.8aKҌQ.,8_|w),ף]0]w(5ցN9M(<큄;.#3 c E\aࡓ Za9$u^JLdXGkأ됹yc0u0@8kǝzgA{*%q Q4 ,f=&b 5Fz,=M99GjiQ[-m&whdBq/dׁE|ʽ+ =uv œ8OPe(5~~M"ȽE|D,WAo4]8q`t$[zA뗯} :2{@I.1Bxc' y8^eN"^alJ =K"%DW/tM+pht!z!ÛY>K+K? od56RF¢GT#VL"eF["r"af@j lMM6-{Fl# M3SrzbRT[> W>" ](3I[=xKHhGHRRŠ+;ˠwd7BʄLu4*-6nU2!x{[ه9҇(b`U{ӵz)EӨ(XdKS'`AU$  K C:JA2J2(.1$ށ!xꀞq?9iIJ9$:yT"?K滣"EK s6vrNZEajטNVm^!@>VJ4 |Dy$~aUU$yA F\2= n[ rg6U]46'6dI)/jΡnL||0X*Ppf/6ݼDŽ]_SW^߂㯐TWq\mQwmzN%D ΒRs˰, Hsjj2M5԰F{'&ޙ}S !N0:KH( fZWgz|)Iӎ-s54tN2eahg/4׃ݱϗ/^{5WhaݯzEZvXLT4-e9L/V8VFd3jel$nLf&/mnj\=_D| F{8MUm匸Ϙ'I9~f]Db`f_犟z Nx-&g|oS#ÅR_P92闁*_7 KN(w&qB7.'耔cwt8FcwU\SUox†V\;?!&I(Dx]eU|pSA09-e߾C޵K/m:_,p_ VJnz~ڼq9}0/65ÃotU:"C@B6*bVN8ubJ,K-jD!d:u`1R܊vja$̰_g݋.G[RںD"3AioX7J?kD~io):891k-"DHØﬓY Q̢Q5)w}hfT探Ezv\4(M8EXs.B{Q^7dy<\UN Ssdz)Z'$"ߙkO>1PEN-=Lce6_ږ£(8;ɇLYFgoQQc*Q L#[\;  +xELfQt2YaiHCJKٴpbg2s`rg UxvK]l\M%3G|Ԉal)i!3Vҧ@Z<ʵiuSVRwy*^N[bYizA\}9X>c^wчPS∨T=MCop4ѝ2ʠFK2_0God mYT -L]@8/g@j9)H%f}s I$_Z#VJDd(`VGh] Ke )aW@:H ?R}Wbm@f 3O is*'ђL}9mXY>^>*Tmx^#jZcv*bhG!O;Q3T H( c<_Zd/ ~f;Rd6@jv=JZSx'p"q%K"wMȱng [} TL2!a+d`4ؠk9n=,)Fui@[3iիZB)K1uQ%\W>-+2̿ョѽoIޯx).NW{m4[BYoar#ޑ7'%Ji8ٽv> ϊHɳ+b J'1^案:SQ4|$'y;;Ͻ7dy}^!H :Iu[,F1Vv!Vl/GBx&WϻE5m4dYQ(c3UG,A)E'sateR=Ex+TC˓6Cɒ¯+~)1QX<S`v'k|62܎W%k8y+;shT"BR\]kZV *~ޫ4S4NW_V.'1 uiI͜9[T?`ΝS'׹6L \ykq)&cSo]D-6ֿYǐy7IB(W+?Xv&m QYȐ A绨_,9n!XF{ͭ Un-,Yf^Sm` '"Wym.Հ+$w`8bWGiޖsЮM&J\Qz9-dל7GtB`pr_#)wj}3nW)#IP\#nVlL?Tzݣ( 0 v<9 PMU`=~{X>[Ps+]$m_9"Ȩ{}L@gA\$t#8"ank:/º‚qJ$./؄!}˨ KLo I0Gc"P kF歍Ys<+N)o ZR Ž: /a|ƾ:pAvɥ@: w`uOwr1a-݋T%pѝM3\`nZ/FrΔ \ǣqtQ(N-|b9Xopn ilrOd &y*+CƅMn釔˔~-]|/i\11 xzlⰅfVi6zƏh*~\V'e0tDFy0R4x^"$'',Jk99CgC@E N00ݚm3AX$;)[<^%kaH7-\L}` ls8/wCUmsBLGd8tL~tZ`<:- AMwN0y]soo-|)NWD_iM"q*̓^EbGE &\]FO.{|mj8Z~õ9pZ8htv/_͗jGN-ІtިHnԼٹs܂s !{4J|B݌|x7t5VIs>n<ѱ 1 +d[i__(1g_E`5ێ)]S9"F[KROßx]t,L}6e1E3g}/JV?h\4ER&Ъ4s[yRvHIfs ^|2pN$SCvqr?\ _U"-U'cǟ *zGvmđp*w6b'6&d i"uV[l H]%/wj8*P&\U'^&*(TE+'7|Lj"?^qk+RW:UՉHRQ^*5EQA4o|,@BRܿNk=l{<^Ic&GaAo <` Xk2MToM+w(6]I_SQl.WEq+%i4tJ'i9c 54_ɄЈмƭ*)3cz狛sR@1, &MNcCfG!.3tpy^b*~Ur0D.#{v$!)jlO=תYkbDp d Do7[ɣ^лݴ͌P/r;ȇ(ē%;瞆R=V;+4pZ]8|+m}Ъ]V *ʷ k8<霜BkG:_A'!r`;7u[<5zo箑fӀS(<< ,r'xO< {o߬U t4n?($sb_6㪻rT<:Z[&&Vm$G]ceV)>K$2YD|%#UBc<j lhd!߶WuRhiR, ވR?Li4AbFv4oޗO;qb#hW0]ӌ^gK9ܴ^rB*|uht\bjO+(:|*꫌+egxDT=nCD~0P*CirAa.M!*T%:W(喛z16kJBo6ր{pJ&H' VyrSl%ؽ|X\RL&eJf֜&WSX|ŏ#.5_ڭ,%x·E FZ3N5,[QuvC~~o)m';;/k|V T/}SjYyX7 5&'3Cb*XD %{>F cjULag¥s?B 4?R}q29%R1W:prZ9)i,msޒ":}cy`WS7fs6N6>MqP궫4[EۓR_uf3t,~ʔMv%+6Y?Ʊv#X2[Hd[R31E~H"։N;tCmpCQpUpJ  eC0Dм/w&k&c3򥆕aqhHbW΀*9KH:W3AA+~W'}^ vYm1φF&\Ԑ t%?i&_!t`C7 G%9,y @(>7TK3y2]^W&N=p6PҤ]W#tgG3Z!#X-0ۍ҇6eOj6[[p8m6sӏv?308 c wW6^C b:%o/(ާsar E3]EشZ,* }s%k;' Tc>i'gI_pk1ZV`)#$s*㱋AKu\tv`+<${%[ 5,TG,s1꽞%u'^֨%}qt,kx䃓) FT~F%਱]1nҩ@c1M!4۰H5 $.8ymSv堭4"W-Ai9Z Vg(N !+ի )NmlZyR.0`,Ul9UL~P}m"B[ҧ]1FXK _>-8c!AeS/ȟ+#!46=yaMb~4C$3}zgZ>24Ź q^-dk 4Zf!ʫ Rv3㈳;x44k%50&Ja*R&Q{ЦyƳ֪gL9WbFsEcr / ˪秫$QW '|y-Gޛ$:DY Iaڷ inHRQ)QD5n&RT%hcN9gOz85UQG % a[G9)xQgF7ȄBuu̕M/VD :oi#ӱ8Mx |zx$ET(γ: VEPeCDV;w1v(N&*\cӸsk]t7k-;\jꘒ4e6`B]ix z"ߏ?k~UGa%@M#tGA1Drnp#pl[EGF/glWQ@W>: ^gC=K$vV3!w%PjæNeзyLY. lώh\J@&@T}5Ňmԝ&kķ74$m$Ψt3n56T)vDU-A .5[FT|u53  3[/@Jtf*<;L  KQ;c+qT i#Mí=|.MPڞ aN`aMq4Q]cfO\"f%uu87Zݬ:xAXŽ|T[^F]ԩ2,R V_|HQqk<ߏ;@}o Zu nbz@i%eA`✟zUE1cVƈMjGF, v{b%'dcwu<;e_1j1k 4#1:jT}O(DN|Tx"+GO!jrrrvnO.nvI(Na+| z _a8]?tDzבs]^_._QijYd_ xqhCd1i>Ә_jGj6- J-Ra&[]˸UiVN`=P2s m[;gYv9 8v#t+b; 26yll6қ DQITGɻ-I,Tѫ݋Et\řni@y#|gKB5 } Kz.p`[ЕcZٷd (* o/nGl[]ILm[Yy(x$] !G*~J%tAB#W {)vM%;Tֶ@s Ѭ~m!g\T aN^HjhD}YUvHTIkn%E'0a(<}}H%p48ct_ W[\gD#,  #V2)LL劒]XҒ%%D E['FyU?OFV뺩sߥjm.h6IJȪŶ:}ei$>랿&[15.djЮiW& <**?"P, !Sl^6O3өGjd^'%( vUwsiV?ɠO}SQ /ڭBo@74ˤ]'XD*}fB4 tjeK=/S|!-A+]2%BVDt2hE}5sk]1O./m%g&ٜɞC/i.9G"`;zLA%q,W|>+;jawU":&T q Pva .QK|9597~f\W5[0Db m; 2e\?t5mawG`4H9w5"QɨOc=W7;vEJgQ.ٗ6GgֈT P3.k %+E3̌@6Xpb'Bg>ƯpClV=:2Ś%&ۆ[.Gǡh샨3$Βk#?:hx`>ZY/xQ 85et_ 2i˽6R$ՓVu\w)).{eXA3,[=3pkd1_|ac[ _b -$xB_oe/m9bPP+2=j,,Xʢa{ ObՔkpQOa8o嚹CܷӭJϔ, .>)D16:ck ^Gq3@(O{^.|}㗃TTm0ē|W2-*'%hv1Ś=Iю(W;t]7"bS!zD-»2ExtœQ/ dl;}SNؓ{QɛmVm2NXx3'} /eh8cǢ, zL-QR˟;ktvK_Dk/>gNc& $ YPOl>'_p]oM5AU(\iڜ[j͚2TI]kJMAJno;E,F}Sڅ~>ӳxR\! }0-\ɸXaa8-x!:S5~3O7*ן詃oF@uWr -~3-$Ձdaz0pZ!~ oljJ#ѩGecѵ tP4W3]5^GyagةzIYOũOK“뜸j_ᦷd$S柰B \7 4ZMh ("bgOc,YԺZT2LMGmO%< ލ8!wF A*ڌQ{oOyk^uoV?Q47kN tt% .-U2x98 ATrp b/mKHEc ܪS#@2bx(|i)S} py1P)֗o*/"Ok94` .Wvtzkܖ$t<4P@c $;,`u3thC6$q**<Qɸ*+tkv--A~[f]kv |qTO1-BcǴ=XC9wGX | P!x" -2S?ԇw4%ͽ=.v%FAB#EmIў9 :m8Q CȂMnP)ҐR<0ɻ˽M іr?7-6<3%S B@_z3Ѷ\/?Q 5>YOL3tΗJ^p|\g~Vw5leZ|bVmhsy&b.wG2FR g$FcK׹>6eYqFg8c@ŐbrꕡY=#'׿xCסD͙'޸=,@]ųoY+0j?$MX :lNe&4ѕrJFTy6{0s^^y%dG9Kjxwff&k"%QeK.* MWtR! S,׼ }z<{F&:ro3u> tV|nCPz{" fqr&j]+Qե 'ffiߑEC??2jߩ3<,+3`D);ƚ _$})׌wJPSObJO`yOq*s1 ԕsYNs`e ,,o& moÁbM~R9'hzXO@*%/s煯9 o~ׇ {Ϛ)'TQx>_OIM*8<J[6ǏmU V+S )lE܆wmZ^=MMңկy%H>XI9k1k~B8-A+00dֻkE *Ju`ې*xńԭ/.?}ěޘjuf?PjT<|T 1 s9\V0yuF{i&B؉n]I`?s}vww[(KAjb?g?Rd%_8О:"T4Xًbk~JŽRw?Z\O`i||Kdn.0 9MLHP3yXƹQoeaW~o\y_zz(xys0YC%}d cgD^]5C.QÛ-jp>|YچYه턑yhRmr2Okxv[$0>N݄[ _ؖP_c0b-3uˌ x{Uީx9i]Z853}2lXquC غG/'|X Gs&S⒗7_j_M~Dw /05A/ѕ 9&kŪ]"y4Z lOK3cy.3ZUЖQb<8_6 >Q6ECS--}=5,! vo{{1 WxyTƳtob뭱(L9\]rd82V?,P-S[K4mZy ~y/?%̦Y{8)"W7A-^n6oZ1fʧg93 |`J F)n @ "M u אhhb?8oqbՏN.cUxcN'4@.~\ +qlwS_',5>a/7h u] :Bt<-Dꬪ9ݖd?1YcviqyK(qU\ ۭaH6ۿN"oY;g3剳Z\cui\/_ASx!b% ҥF}F]b&llPϛ{/{<3aFqjHz31!BϲDMf'PJzK/lCV&ͪwzȧM3sپu/#-̘$b&/HNzw%ڡ`cuQ~N]?m}*:;u V™:$Ұ^nBp?z͐qU ̱BNMb>LJiR3Ug/ɴjkE4{zxOWL3>\o;CEcF 5IG8!7 S{ct/Tc'[=GU ,1VAkp,n\\H IXHWyUE9jN'7ZҽB7J@;9#Hp)C@jDr7T]PGUOɳPIC榨Ҳ6OE٦ D 1)jBq48[]y#XqLSjp`v01 [o>=-k~OVtp"6k/S..MBuoHku3ҡLm1x8bdH!\eAQg x_}޴1U'] mἉAƺ 2HI×ȵS3].}V:TTJHzЩHJO-ԜSpTi['m29(3TD.!!'\&>BУA=W;bM]*}t$ҧ({8@@7tLB-diz Tw|fàQd) yIv/ٲ⠽q?* h>b|@Cن|zZ;ZFё wql[*+&XR [ UQ Zj _)% Ŷ)/ȡ1ȓxq* NS%=l=ܠ78v4hԲ)rtr<6lN]q+ <(l۸dp[76(_Y1-X8-G3w>*hOƤpBpg#4ت3q4Vu 7=2Ȼ \ʗ4N^{l:؃ enI!ccEq`0yW?d NQF|@'"kS䥺cESQ1ҚW pg fHjAZ H0mXI5HwCmFeAyw^3JAJG~ #ruYiY@pz.bFRMFg_0,b_FBbk 0_=eugpۦ\!հ.?`uOY䜢-I0< 2$_L'2 ^Hc=5&/ZlOmWaţT:sH_] }K.Я%m,bUh ȐJ7=^Ef])gY%弼@TD1ǝv{x s 0G7Qt[zصT<00)iMe?ځ[{IyX|QS cQAK@Q֧U!aHv|J8Th[A-@d c8Ǵ"A@^Efy5}Kn=FD*S)|ݹ!/ @1&4"8ʑnvFVډzG &됀@k5gJ9A7MdΏH8œiaϜ#}eɈJvyM#Fy D, Yfդ%pBp.50e'ePM)N %>8ʧbt<꿯cX6Jqq0D\ydS,}òU( Y6^M_9 niQ80 Ya'e)q.gQSxOe ;~>Ku6.*~8*]W!з~c~%"+GlCR,4$Jm_ެ-Mܠ0ס}Xuܓ$j8h@[|Ia 罱hM#^%` }$+4P2qٌn4;ha=QH^L4~O-- 9-)f|ଦ;6ئ@VCJK+sݣz3t.HvVq6cu*edm2bG0Ufγn'Ь>vGyUO2v4=\GlFT;JlʦCfaHmol 807,u8w5w̋5LHkEqFgXwvG9Vqd^Xu)6ZHxM^⫀(8@oH^3DvXvfek 6!q$͔@\{0q*= C jAujuop^I ҘD4WQ;#뜚f[5 _ %A(p`MN Х-FSCÁI|WimL E\a̎i+;fJzn=kUI/B\+Y6K  %F# %yqs^UJLM2ttLGfղݛe/5° ,[#//A l(}6ޞ$-BdufK״X>_1Kh sjRa*aDdi! 9k拷 ':Tk PkL0^mݛj#SPoBbsTDHTe^Z6U9""((ټZ`-?;?IebqGgIy:o9;͗EsSEf tl[@?1&J ˁaC.ABYJ=k 3ڋԕJ`B3Ը= gLuOP6Dr ±IE}W{5!;)/#D53nEW]) ׈18 ӦM| m+H{xRZEphZ3y߲EYE/ vSJsƃ  OTQJS|[fAEKKbxw:1lRnjk΢ٝ8ޢ[ε0TTGw(]򊳄Ҷu}W 6QxS1qcvx,Л7w]鵽{_)aǞAA+<ס忬lS{ZL~ɞl1Bt:oNÇXx|IE/n`b ضgԾK͌ ,/DDϠc+l1ZhS3\!2V=lQ[J~Nlj7I`]&>bxyG,>or^aq }9+PP~Ʈ*Ȥ.^O\kvkMJb`Áu:E퍿ɄI !_JǵiD/3Joĩ򜭴{cԗʇCayܱ(UyXaWH_x$"|>=YA$)bRA01Oo+yGih3{m#Ө٣, dcl-@[1m q?w6//rP@[-(ZTڏ@Ȫ^lu7$akLKzTfv V'R3C[LDx,g #><{4ou-[kg*uhaN,]R j҃$p {oU:69Z|#6D+mNZr )ypWe|),?$AHvQ^*׬A$ ^▙jCL8=3xfsV UʑQM|X\նr$ 2i ;A+QYp85$kh%vc6&nů'F O䒱θSV6prhN2~f!tއlN,8"̤UUhPޢ#55;&`cF6HI!WK<&t4F\jj64pZ/ DpQzrUCuR_~)*5P+w9ٗܕV9"8U/#(IhФbC:5 &q!>M~Rӂ=o )|ճv`G%Qް'BFYs2M.REKLvC(aӼsy>Bb@͠B?pI.EnSֺ$)G#z|ah>MJHax x,`xw99U 0v8$9t;lHQtN,Mjw߮7zN,;p#_4?-NhsXEƹn$mBy$&g9bƶ#m s3.mV\2tB+̘crq<mάɿx!?%"aو5v4=X0 xO_b {hYQ('cER*;Fc0ư4tNH^m-鴿P=(aV; A6E4 QEwѵλKAhBv۔ճhlDjD#B_̕aMyx)ǁ@&ddPMQiļtxڮ$^ LLO.!w~{OWd^'kXjD+mVJ'=d{ELll=Xj=Y Ә?޻&=GF^Pg@X !1ck6EI 66VZ3j&v 6rN(+h.vK?qO u< eN*BcBڸZdbJy'4h(5mjV>iwΫ[](QIɗ'KRWTU` `,Whˤ|,g@K-E^2.wU-{Jj_9шHny It*բ**'Q}G8.dc~ t c`EOPD!ԉQgz9~$f a>-LIK}{xrq2WD[iy2.%­:?yN]SWl֨u+e+z Ezpؕr]T|fz=Y7f#f u;=7A::Cw.8\뮇FYR@.+{ʩH'<sm)mK#U<͋jRȢA%]xgT;vǦzC!t!Qwy51ՑTrl4Eݔ?Gj*S\TJz;H+w,)poɺXʳPԅӎ:s7edQN[(EXρ .yO,ݽ[=&(uxLPZ85z.gMhKF>nѴOOI_Si02 qoj󥼯qg~Gh%$ S< kEy3UZCu>~<%xA򣔙vzfg?QS\aheV"3 NjA#FՐwx5"YzŸ́nvL!EI{#^p>\\0Ed;Ϫm;3eףZ$G+d \E5U)*)f޵)Q(W@)68Z81پCˎE_Ռ 90ngyB́.[N(YKuDd @A?gsY/hsj lp v*mH*: EkˊuzZP(LGX}7 biW,O/ A7;zę-^FOn\[,MP׬XD?jnV C7w+b*HE|=>=h SQCRlu? խ[2`g8̃Ws[VϚ\CŅj4YQŞ|T0o2?.&pw)GvPK?x)o紮PlU au-wAnTñ't=FpިÚ^EIңK;7"YXO:GĭBX<>E\~M܅ÞA+G ocʰ{|Ďu$̆VuUtw쟨FIG9n3>[ېY{V`Bpr4D0lBU_!H }#FO4òJɊSMO&EځR̈kb B.>jrsX};tEkTo$%O'wy/:(vAYR-j"Ø+q Q6AɼCWJb|x ƨ"FA1zA;sp4B$&J}R\_6oVo9Cy[$tW%}foǪ[{kz@s%)7=b"_Wj7"jddze`PKd<7Ϛqu/RV23{;Ǻ%9N wJ!Pl9{e ZB:-f[< )Үpv]tSYG#;a ߻\<ohFv~c>ox9k\}X( {$8o!ͳ&8,7G%?bb5')=UkG "gԺb*Դ YeHJ3mߓ\o]'JV+VfBC:UtEְ^A./˦ j/"t3dt\WK~%ERQő9]@lQ32 8mQhfꀘRD /k rn7 8! 0c}ց{՚@6n>4Ȋ5 )БlgnV`{r٫^nR$':@+<B r_ڵ`tzg*Sr 2^![Ern?͹Z :KK陔͂ȘNaVao!*ʵb1b 5*n!αqj{=̫[ٟ' D/K[f*fMX 5LNc&EH(((&Hw ;]3g x2c~7]?M90-8Sr$/ag+BlC?kM1)`Q0xo/ąe쩹^2-j? Dq!(kQ*TmHGS#]>Ql4֥Q~-3'*n®^Gf1,ʫ۱7N}hhhz4GSؙɹp$E X]yg'yhY:8ř6{~?F'AuU*^-^Y и-u3niA˗h#U*g ??Jw+[;Ϝ\^(|e3cY! &iS&پXi[r^pnw'XV1Y֩TO& ##BS-r %8t_4~o"V14;\&+QΪCAȃ)0Vny. r`U (R.=X|YHTfthLдD!6$$^jycxЪ3Xap@p+N\,s eSȧ"I8.rz%n:aXhCkeX.|"ZS^lk<G<Cd]SPP=1r:ŀ}1^b/\ 9Zpp-U_5WH.ݫ7Yҫs`C+SQRWYB57Zsr (XRزG;S|H![1T"`dA/ԍwȁ@n@khl!OjE岛գ.HR*tiVLíSه{P0}WCiN(g8h$@tG?w%`i" !Wk]:͎v|6a#ewuWS@O*1Y-z[n_niJ(Eg_LU5=#$ĆC2T8qIվ=Ş=|x)9MaSnз¾$NZP._޲'7շ Nb-%PuGu)PF~&BwRY,BpK|͓7슔<=z}<:µ Li٢# }~,Q 6ƪ]ZeMSM*$\Vz~G:SPq>ds׾ʛPָ>1zy1='QN(tNUZJ'.)< K{S!{=KoxƷƉvG-h/|ty5µ4ioӔ1u.ak~{:/PZCzC^X 8i5XݕCft#QVhKĆx@7&k^iJ;~Ꞝś 8럝MS58}pȿ ~urx!)nN2h4{c|9s:p!r5wTovǖ ]4ӰX95>/m!WR*ِ5ӷﳗ?A!/|]*.1|JoK3"(]HB V;Clԉb!r9HvljuuX:Iyz|V:u/pD4kI#b P#kePk獽ruۇ*G/7O@:3Cq;ș; N ͬ'RiHbֱzg|Ǡy=ĚUI2>H,L$]fJ϶d oQa#̵T1khj̛wD ƃu.PXFKZtlH20ǫצMBV[NF@m."/nJWK3Tav n쉐TA4J^'?bO6z̩+a2q-灩#^;ȼzG%U]-%&k#܋6ϝ!\~{E%e_i|д&ji=R!~Os!Ro$ E)C@ր:eV4i|8ɸT%$XfKR qN[*v()Mj΄Y)3;0e:oO \m!D摱 n,t6v@Wrb@kdhȥ@BϜMq 9S#j. ,V . zKquV+ꊟN)Qe|~0#So)A@CyS`Wk.-/hrA?ak!_\%;5ڔ F.!1BGM*}_u0{`ebLnp紟_cyȥa역7,t=Sydˡ\%$er}Q*9>\O%u,H'8$f Q<%MFye8b%~rq[#0*D&zm~^ᙑ+u(?Dfg!gݟyKW 'Ou?{Pn oVǵq(0ܟM[eN7qq =jqOtF[yXvPc@EtD\W+úB>P%%ϯsl9Oj^H"ZG_ǂtذP6w\Sa69}uw>l|0|ٟF4_41sGluGȳFMx?dr91L0Nhcz֓Р3UFM 0B/4.7)IIDn>sOX.Ynv;sBYM7pW@8yGfdgDG/w:`w׋cP(ݶ9_9*:2W1C}D-̞ã{جL ݊96Ō9vpf%ϏF#% f4H1;uC;5X~䫾Y] f* m{gS. ?-"j3GwYӁ(vP )[R25&쯄S OCn .N?:/:غ1UxN#?r^z?S>@>3XEQ#JLL*rx-xq &}}ބ}U+1#3*:w^c=b)-zKZQֲ;я浠ـbrZ&[;ZXОio'J440M`BpLMwoN]A#aEftn Xf+"խN:2B[_7Dt\ ?f ?]=tNHhټԽgWU]4nu>a@VR8dAhp `Go;SM!;}U\ uNYb4EusO@bs}gX@ t:M?e!u61=!HJùY$jm#L[;@{Ar?[CF?SI?^U8 BO\[ <9 "*B}Vf&zØބ^QwQ!y~O0{Eo[y*۠kon>V\w(H6{AߙRP |a,DÕ ]/\? e]λcGTTdO%f*v- |gW+YEHeH%dR ;Czj//ņ9S%E)*ﮆc.T`[2+pdc5 ձ4n#o4NO5 HO Rc{HFX)B<+(t>;x@ְ%ؕ+϶!`NJd<4V)N+^{KjDc7!^3S(#E$ ,J u9x+RiJo.S/~q?$EY6j( "Zyn6C`=>ueѸ! E?r/| Uq$ޜQۿ#ayh' cNOz15b.ճdmDH2jԗ>$`%`ز+Ĕ :Jr-$.UuGa"!!YL}U])Ƣ6/ue!hL,J7D 1`ꗙۨGi7-CF拠/+&g'.V=-x/|k'PP_=1aRL=߰ESYi|I*w8#4 blԃt׾gstc*G_szv ?xM-z?}JYw9ͅ4 fs I]e2Kr0$~>/sKp2S7 /&eFҍFL34;rø\9wHh\4m#^B1=N- Y >sټG].HM~'>4kj ih@er~O4Oz,Uy6<-8Ķ4_7+R `>rE7:L%R_rq0DEOD{MQSzUy }H= ZhPs ;\a\ x#wj[PzŠ5 =@6: YE9'FNuce,Ln#Jփv-gۿI~cKrW#b^I@ i!(a!ܲ[MTImJ2Fi=|*+/S+b~WWS fDe‚:]*l_N4ñLxf[]a低ʜ>*| .ᖣ/GM}㳥'sfe4>e Rs89.ׅʤn~LN]J_T I4hנo~m6V2!Ѡku{tb2sop6oq;b/6#S4dHF0x? Q_JVM5lM X[kZ8.40Rb3*)92%'3V Y19rÌz;:꿽)kVǣGY)fii()fGz}$;p6ZyFčF!iPv:AlJlbKxXĈcLDqR\m_9,:^$a;J1⶘.b:CT;_񤇅v㹂#!@&T/Mx,q *w/B1I0E1.=(lg5Q[~%xVO"|Gr;n*LS  LFB]9bͥlMۻGmrP `tfɾ:J/#xR*O5h:l7 NZf?j2*3svCSC|tC^pǛD@Ż來JN3u C5V2 dQǭ#E~/̨5pa9`W*eMN@ɗ\&?cqo@7ڠ\iO-Kά\oQr4mkFl2vǓSPFk;ts|jH۪ 661jes mB)\o6P hkά6xupHX\SXxrv`!ʧ9na)C2 J8| 蒣!zXU~da^+xiiYJ[coqOƪ[ @7r;3xh z>"Rvw8`•TX iM2Dtkɏ]gF"$ /J`!wV+Qo! 4x U@ڑb/D|nj׼~5cHr\ TfȪiaC(QO5u^^摈z |͸Zq aBx4Er$GU^h\AAf8K])Ѓt>ح]gs*RPb ݙʠ ɋyB)6܇t_9N/6]>>~6' PLzC) oy1,2FuD^l> }s! }l7:qKG=",^ګkY}۴6e5 } !Z͙ۧ T3XNMd;S;CB3qv& =UHDjg fʆGy6q ScJ*xPq$Yb-6,HyscgQG*0HLօՏ吸 KYHr7ȚDC\ :eʦq}>K v^iګL ]#Y~6p*|s@%CS-4%# Ug[B JGAZ4aQ?d2J(mQ 1+DÛc̷m5mE(@&T`J+2b췝rKָ7 ?ɓ!nvBBgf})t&u&ى(tM=# P^ X܉# M8 0xcmPpn+u"F,9/aJ(Oc8@~94) *KK}^ 8бx iv4L"sٴC>g7[vٸq_CB\ cW A$aA1Ϥɛ&g?sduV/ͦ@\:\lټauHui(YS?K&jEiX\k@7Stݝf=xێGJ W@|UQkGe¶'rrnmâiC2`+-3 S@#g,`ˤL߈gY"RC -VnqL_Z !2\R|=u d+f|WvZG`ܬ4q/V`yy؏upGd%{-GmHJҕmn9O>hK Y1ngWuBHǙ9!8e͜Ci8ӆmǣ*xW|;=cq\&^JTnp{r г`8{)"v4+֮Wm7D5ibJpѩ6j55e`C>3b}Ԗ~YX !TPE̤/٢qd0v|*cVU-P/Q<_ᡃ qAy$H~s2 +&*"[o'3HQe7?653jCK{lpcPXNjjŔ+x{`|?(ab#/@,!P@T<9{lT#c 2јH5ש7=.`2 B,z1|-׸ѫq3wt|1XI%bzOEւ\> Fa+y)b_ǖZCE"ͻѺ/ȘTZ"P E]Ձ v\Fo_5#:<$mZB]"HVb헭YphTgb6 »WCq"$B'9AFxA\\kW 96J֡T \g6:Xq.䄇IGNIcL$l{cC'|1lW%u3LQrRpŪClY:f=7-IQ n_ޗf)ѫy9:k f"P|Cl7nf79`OQMvXԉ7l_i@NS}S\fv^W躴Cyld>]m(i͑M(gL $\F#o2f Cp88RТF 4l{k7~ԟe H !üGBѴ|D}V;=4y(|䯑23f+@$APj*\$sl3oJHt%v =zj_M[BsQmL.y 4>e_xNXӇ坷~J.˃{% ,wp'8!?nvEW1mtgj3B吆\1{RhUs&Yc{BaǠؘߘ { #;4B"a5s^o v<ϯFv^EҵVmVC5PzXTn;AAjD҈țٓ12&m:5ˠ.42J*bp_M ܛߣ\";KD ͭ?[tX ;jAxR[ILGXta &(ѤsvM;.,$=kkb)820</j-jniA{.T]Kw91ĽzubQv/VSd!ݣ쥌VNؑ<:f#H4!劣`A'DH#!>smjs[u,ql޵?4yM~UY~NKxu!g-{LI\`3g$Gߝ$sҳK'{ienɾXYuwJx#t7/cB fMe~x{Wt}+rfZo&C9ZC F({h.nVXk\N#U 8tyc#6]\=RDmE4&q/97WNY>J$$g*h>pULFLdl1,J ){6r2nt[tڪ8͜*``y"n(y(@tTTCu83n2=DejS: knuu<+YcNy۔Ф.DaĮ04ˑ2/fJ"{ bP%yB e$$Oa}M%vǺX~ʜ]akT{=/ܩ&,̔ H;EY;㧓";jGsW`15>_F*Mt`l5Q!Pzjėx}iɒMmEUtX2ǸؤoT dVB_G⫟.:cՒ]9+`ܻj'e/Aq ,~˷Id6ږFGXɋ)za "}=W{,cK敡;wֹC0+$?DffZCUjIHQ]YZRL wn ʪO(ˎ Aammc=TԙN"inr'Udx20 gAӅww 0\QL$oXaky=92znk;NU;׋{{A)$>`TKUYdFVd@QډqՃԶJ4&v[?y:ٷm2Q+R Hwӓ#:tmF/^1/7imWh+:V8 \7Ir /kc2۪2oéݖLL+W9([NJs9l+lzڨ`i;J!XDyXiMРK@9_њnlQQ|`Z$7\>LZ^(D)擌(0 +!@,F8 3COw\؊)fw5cñ_DM@WD@Iy=_s#. &9Dz-?\@=zQ`efɎ2':}QK%PmamL!}"{{ Ό|t485^<1x'.R5 UIiWe8䃗ކGTzZ#(jc`7qmW{ސĥ@.PQ 6 8֬p&Q3sQ3d ۝{D`> hi[So9t)8V r3ݏx2IqT`:ti<!.[\vvVp#:] YǁC{E2'񛐷{I3/** h 7S.ml&r&}Y⊘Po_F0H*{[߿Tl(Q^ LR1V92*;DrFQzB 7Oo&w|ACOoUʦ:78t 35N%mUq@GO .U0TK!]G$ȖZM6~P'B^}|Lƴ~CCQ6Tj:JVa]ieSxrl./W9 02vUmO [ȅV„O!+% #&%_d#}r1(&BJU?"s+ȑBmШI"Af Y {)(<]TfncPJLD sSfC6 J΢pOijDw%+P!Qz[WyFvfaBoGa)O8|#ւ| up첁6!sձOarOeJIU[i "^j׸-ֱ,j@ǻJ#C }+5B8Wv Nf_>`5sCfNx(eΧٗ80 GJ)&|/ XN@{ciɹGgH{Uq/.E"E«FJaͩqu5J2&+E L;=aqdº/8yQ0_W۔pμ]˃Ǵ&@J_rkHR^sP-ǟFуm]#Eu xzI/RDڇ4G\^q?8kU;NmPZxg{.#YNOè3ey/{͓-.+O -5Ml%HͻrpX@rSAZB# OpYØS{;g!{а@JP9zGC眒4'Ut1|,}߅r)|0zs`9qĢ{%P ]p1+.JwzǝZ#rK؎WȾ/ˌ܀90c1d2Q~.ŢV#2JnGΒgF"E$1l0q`Rĸ)Aԓ;[i Op!:|~B)Jz|p}_E:Q6=u Ѝ1U<IFd2&@STrt ,U2S8n˭z'E5?)Ś]K u<՚V̠/çCeq<$Qߛ2}qvϮ'5+XT Ij">c;+k|0)U0qE8O7HLGה8KQF ^G !9Q{h ,,~նs//a,@VOz+JpBɄ~lo_PI)Gr=Sfcx~<[63εJ 5h|RhU58^MoH%>Tw7wx玉zYkqx[ϗ} ؗe$ 3p)﷙ͱD4U&]pEuRZ'L'O<-bCĹ*iǵ9lh{,R;іUĚ8vX[&$}"g?^ q6W}i(livY Z%7<|5~*ES=|[_2 9̘oizU5&B]˷Fkg.@56PwN"N6߿^r(- kwe܊~T-{IJc(]kt.(zY`ׂNa􅋝Q9T SkxK l#HJ޼Hlb8{.&9@GlKiVe uROo[jvWi)^_H]H]չr47tՉSl#;JnLDMUCp;oEp&9_#p`DgzJ끱q)f՝-[]`@mJF )˦bA3o}(5Ky(+GE\aȶ_-9Dt+9a(x+oP{ک6[G/̇I?C2ȣ;sP9d._UQ1|1vJRjI չMx$;^nyPжa (ovI|ϸ`=\}0\dn28eQG![j'bAEr-v<I 8ɚ` w%B_Q J7)[E_:QkmKzӃO H31~(PHv#F|NCRSQX[Usc0LSs=wwa-V3z?Z)T]RF}VÄ]2Z 7DZBxL]=b s riiƉw QJ:">䕍+W $pW{V#X v\No3]6 k"ń09艤0#dm5.I8؀'0w6Dv@9otn0byk 15U8s/EKQ2srG)`fz+6wv¹oXj=lɦαWWs*%m[yq kibBsƙt"CUy}rizZE6TvzM(wxRor3[1X+ΑPPw ä<3'W N'/ 9xeq&-ᣛ*M-~wnIq5RCf)JY'X[J-:RlzCO|:/QB@uB};VU[Tzd,K !%t">&,[>88jČ)(L=q/{/Ҡ$4BܭcP6^nޮr$Ժsձ G5WssX5s$'m&Rĸpb;:}KH;ԉM2(I{-NH~h0l#+~~X t8Jy9 % u4u`:Rpؚu5Cp2a]&)ț$?Ӥn#!oh搮aǟm#$|jߗz SeB0PԈ8nju*ciNd]vS /4ю]IC/=V'~ypkg-ep)x™JMQ;Rl!]LCSJ kwtM|"!U$WˣhYFdC%^g!ƒ V€5E!j^jbmA @`Z1g<$KSbOĈ[EI搗({Jq= !ҳ׷Ġ[RK?}+U]644(Ty I;r̶TT . l{Kw_rã rQvH7پZH;=*vSp!NM^Nx>3k39- c=_B<@JYh^4]u}*,\^ငiRKAxaJ_.V1Lf-}aҸx1!1?E)E#z8]9:)R`̞t`pzC$j2$mBsbSA1u5)j53Izwx/,q8'bT/Wd,?VhIK1r]mݯf彻JMҮf)3MɗdF.O5^^޹oPoFH;Ihv\YѮF&fS tdC 3r$63'~}i7PbxY(/Ҁy-BQtRJcm쟏o,cl2GS3]RgNnigؗH^ F6-|64~+ҕvgԵMMByLUH$UDNȑtŊZ`c,rH%څf{E,Gix^\%̎.*?Wk9.Ym^̮aWI`"H H}M.Zhf(O"6հ|@bĶ\H f1T޾H;I_8q dMԬǃZ@n5dGƼy043>6b缁l{h< 73yvEt]w[-bd>n.4d&Q3-pGˆN9"Z&M{t8.έINW8] T SmuF.m:gBOi=a5HZЎuJ(ٰw ]ITzy~HQbsCx_eS42,y)eMszm)pf< D:6{C96vJҢj 8y3Q2(!4?#m%mPhQ U#uBkhwܵ6qD8MF)Ўԗ! z4}mZ,KpcVi `\kUjͨ1UjJ=;B0r<92=.J{N̬{JHҼz灺jGOoP<{.^A-DsbhirP$_[l8*@ӕ&q7B#noeXhK젚G{OІZͻ>~k G7$$fXP+8bC6V/ Tv<: ku`nJcek3=:Ҍr#8Ьز 4r"EEz yо8 +C'_F>GeXU JzJnJ51;Nȕgij(Q*8I4~3Ɗ<|A0~k4ь#q Q%"4cqFdMqLbarsxF1ux y{W2 W;;OkZŻw5-46-l;TuпBrSI+ECMZqOʞbC/p(6 )unO|ᝀ4u"B[Ͱ$72&G!S U": ~h~@h hk5?4c{ 2$E7X46rjGw83-[,d15p9P#s6Wf5uxedeXhw.},',;5,plFM%,tWl>!467M#dF%[G ݻN&{!Ia}'_^9%QőQ{i9. W{/*+CBS"7BcRoV{&(o 6Ѡi Vw-&a)}[&.=Gl6D.\1 frWB8NM1,ڃW&og~ ZL6:+ \WbNY%A Pwt~N_,,&׏GS&nt1}dYXQwr붎h}Ѩc'.QHRBvf;ɕm ӎh۫{3 -" q7:Zrh8ZdlmU8Ey+Zd \_AԚ_?:< þω%ĵӪVY>& 9AFHEPcԡ^~w͕3=M69fMNXRKk):KZyY[-#RY{wg֞b +jN5%ĕ9GxZTNL^ۊÃA~"m}q~V[ ;ҿ\8a֤rqS*i@%culB}ShN㙌Y: 1։p2 -ΌSئ l!"/`†)8?'&iCVf ) ;'Lre'@1.?4H"F_:y:XF NӐwnU5w9El=̡Wü0;9#b9uSd|deW]J@ %xyYS)@"ZMZqIԏBFߞ)ұmDTFJےD͟:@:C/Z(dc> Uf")sl R2dY%Z?~FrXo5>˲Ⱦs5dV~빵lh|pwjɫ5w8جȀpr2>suʞ8KG|2@ еx\m_T-|+n1@Lhol<&!!vJwaE:j} (0-e:3 c*NqlMuM$^}2|ADtfS A4ꆗf&EJI՚m|:e侗_}8r&WG=̓P|ɑ˳9|7E_ʑD4[X{gi5 UoE0D4y:FcE㛫9GGIے7^=!*Mee] z^Bwɚ ShINc^YXaJ~8oE[p=,yQnGGl,4H?RΕrYm=\Vy7.Lȶܢg867QH`yZx[nj=Ĉ FnzJD=y7JTVzTϿޭ;]]7mަ$e>3yvvhYrlaZJSL$Riq+oCL:KwݾЦRWd'yu #»-k5_7`{4SZګ*[SJ8a>İ@l2}}1fS)o:'%38P~2} GljL[>J=]I& %WR .$wSiKxosd0@6dFɍS0_Opy # BBzC7Xw-c#*a)"'.Qz 6dgKhXJ!'6O49$xd*>[{{@JI1Ml{ E[S^WvzO0wKU!QiWN! &?Hύqщ 0B|&!_kiQ"TVZ МDj=0voFZAWJ<',|\02;-H'ԥ`['|"%]mzh\"K[ tTDl8rk fYmpvQ oQ ->F3v7AuaL{=  ey_(G=e[\ȤkIʁ%lzSH2`"f1o2f;͗ӍLa;Xy Lm}!q BM5. } 0ʋKNYConCLsBj#PJcI [0KfXl e.+MB@M26;9~ahLlI` I@M?R"((R%}jBHia;@ڎڭb4 X*. r`}68X?1VĮׯ~[ Avk - 3wn[ώl'sHqxCrҫ`" 5sA[P>֖0GЕX(´-ŒOFQ^%@/g*c'^af 9 )w,B~_D $B2[v~(9musbc ܗ^)Lتŕu~겚\o~m(RO,O+?>|m1 UWVKpA]]Ozs?^lgbeyĸe_ )s}*S 5Lgz/_tXy \8ZS_gvl蒡7}u>64c2߬I7q=gjM;8XN3K)_@7_: ]>PO/Jl1jgAN{+ih[|qϴOCmxCa674, [fe! Ka ^lSSGoq&GpC=DQ *ߜAX*8ko .c=Y"Xp*QK郼GZhWW2  *s/_[4n{)>_Zxbf9ސt"*O9nf.eV+H:B%Kp!Xj^]C cBؠnr\hv̇aAyƙm ޘnبVgYB v1ώzh,\j6[vK,"c qY˖7 Yû n0Д8;^ T˨qQPBٺQ~(Ξm:6ʉ(= }xܻ;ss)KY1L|h:&Oo{?,`z0~G0(n9y$1ؗCd&K񯟲&PnjX3dlEw[vxEس 08޲?Ԩ󋇥I\s&,AFBv,!AB8Ҷ\UG&} mBOo$"*o-2Mcߴe"3`TS31!<9Ɇ'ˡs.ĩmyYYxÑ2),(`SߤXN#!n=o:~W;(˨e}_;(ӈǨρ6=Q ϩ`k` 8[mS %VI+UݿdtHN 76KzF;4\e|9JsNz}'=oծkPق Al3-B3.^#"NX--}/e^+%iQ+WwAoi,K]H}PtqkI2fڄВA&z$Z !%=+ƿm4/~.vt\Z)䍉|5NEg:y2pO1Y9RAjb2,hLI*х9(}5 oPPX8dV[rF]RR|,r Oչ~mr}(~s ?a9/8W!/:%5kPE( eF!|Ѩwo[.FQtZQgl)ڊY2\?#AXI,Rʍ4?[ U_!I G_`6DBi+OyZ1VO OG:_zGyL>[ n<ݳIbfxqqQ˅gEʭ\]#n(~"8 Rˈꠞ6Tx,6^Ӈ X@8/l4HP[PSvuVqـgp宮67)*;hzؓG/p4,DA i\LNFXcE JM?WqLnA+][v '$ ]{YEJF%j{Y_hpbLpar}Lk%R.)x}M)e{Q%oG>4*Bv'w. vwe*8ģIKqkJ|㵉IM|daԇ%sdK͑fqBuAF87 ֜9ܬ[Ls]|Y{ 3[|]>$$ATĴeXaߌǓ$r2{ympe04DŽ04+8=\Mc2LY] *O;^&N*`IoMhYa oښY'7ʓgI-k/K_2bn jdה.oAn"@ThGvf7ܪkh< o4¬=y*F9BΡ6m^--ԇx۸iV X: DR+ zxC@H[qcBQ“}Auk$U$r*t&9Ӱt]ߣOvﮌD&شO}O#0T`'l//Mn~Up+нs #&KQ!=487cx@cXA!f+T7Ub@ 5QGKnM`yF<`P[p+Z$q-{Y,F:[_ʛ@|n1Cۧ۴??ˌ]J`DhY9PhDЪ^_%*!uF.*~;Cv?j!vFqﴙ\ÄF&zqXC ZlGSp,ޅJM[:*6}; <\VԀj_y?Vc URGwfEi(㉝d@T+; PI!t,λQ11)`hɍN'Ik S?#,WS\L~tt鶑i=9UY۲,Cd,))SZ%DEϮ0ǝ݉ρ֜W5˻eGN-Eu lsϡ@GCnv1}Z+WYakn$EuH F$ϟKk'n_-L{=c0"b̈́CJ:l 16>5jBp`Rdi1y+~(G' ̶#(՞? UwO7KzjB(5k%+z7XeimA3 @JsSi([AM?H~kgYGyd˴da٠D)85#:ez^T*jt2s 4p\ʩi*1E' PƙNNW>L7Hrȇ[QM;qWYx nyۨʱ!h顸X2Z֚]?jY#ݟD7?fI#._{AHIB4 "9翾{!i&kˡ9Km:. 쏌A5e׭6o./,0 '6Gޝ8Jb~ ҕj'&i*Qy5M3cE>S^G}r_ >wI;ق! r)hwU?9 @7>ةPWQ7l-Z%/]HwF`U⤦-xvE#/s"Q(PC'`VIR@?)1Q.wж @ցb`Z67ϪE^5K)\KKZRM|'3{.}Z *+ZF NpR0Ԙ5%p OS~#zXzBNrq$^U8L&[ΈO@B&Hju;ҏǷ I kOpg!N^*3{ 4컚aMÖje&5oẺ%|7m"wWͮeyUp;~T\#ƕO0yD-E0Q}'gOJm+oDmYEnv; 0_eF=*Q6G!*V?_BL<0WEDwT֙?ɏo_tPw|t4dO583z(G2v}AtzU~;*b.k&wz@x>y&<4 kK|se6lPupѫx>ɍ}e}JZ+jcWpjLk TC%ޡW}7B CglmVzU7MVƩYHi:M_)j;B"YFB`1n snE~,j/##ZPgw@ ɏr9W/&J[C|5swu?rViX ?}n|VG`C=ޟ \:tj[,ʵ-6k)e[ϻFkF+[A|kt1[xPtao=u.R~NFW,hxQH9y(s~!oa<8PM6+Drt^H> n.sՋ_hn'Yde?imkPȴO {d]DnV\{%kj]{fF65_9(|_^x34&K z!JMܙuf$U0Rr-rL6nwxPX?~{l/^?%ŭ,K@(FV:m Sׁuv/ w( Axp0ىtщ ^ 47ǐ\g%n[ #ۘElxrD>F&ߺ&JjioEJY[)Y_V܄R 0l]/gH{~8lЏ)-'{s$yꞰ )U`@}0q7 `G@+u/a\/\y@;|>'f$]RÜi5މ$B Zޥ_/ O>Y1ܯgyP)-l6K?s{[ZV!GMՉ?0CD!Yfrv9Tb2o 3jN̝V!@+TvJ_4jTs=6{G?6/3s74ꊯl%bK#UZk_29Es* _<ۺ$T;Rgrڄc9M gFKf\?QD$((mm% @3 -I{S?h j%83FtKK02$ ŲY(Ge2LH%:*ڔCP\ y{% x\aGZM>$D:lیEf4}xF Wi5G8kMS"DIY]T'fʞ} B/G a+M<+jɿ&\v.s5|) bI$"ly$HG rΦjM%O!x/Awj e*a֞H6I{yfBStj^Y3x-6Qۦ]H cru ͈JG'vqdžz3wTC" 0m_gB48kЀ(-4 YK;Xu}V5"qI$3'!Nw&GqF"Ď |*%A^U[- aHc֯Ǭ2p'i V)7a@B"3GVP (DoI%cP=Wn_OGߦ`qL/s`g 0WX%h}Tf׵ªsqJ)McVF B9'ڸsn^ȳ'L3?/VIN8@&,XJox-P +#|Ľn*NĿa9U.f.uא!3M47}h"KyqTfdHlQXuZFy[@,kc!kET4 a-k J =Lɐ+>sAw.%IY@o@4!YZ\ "T# ,@)ה,0CF 2ٳLH,rCcnmO_FZHzbwcj^՚-:DSi 5Nep,J2ʚo]K8?PCի`] S˪:7.Kx>_YEAԙ[^ 򍥜iO-1)J<WQO3vew>$ qyo>biƟ*5db8벀3~E^e]0G6In8v`'L cZ4罁yhQ) ekY{#yDA]y ۩(RbmBbexeWb>L1xfGbA*.n ͩ'+;*<<ܳW(xH8zbOj mOFef! ]c_ArZ?ZE=}4Q E"]1u˷3v0c_2)3oEvad;NX>qgsm,=fc12p׿(,IU c(u$G/yEěE]!r@:!ؙP$}窺ӏhװ`҇ޒSH٪?I3;^[ {:U҅ь@W&kdz7-~010WG'Op@F9>X^EzXB2yT; 5 lZѠ/$PN3u|/sBb BRiFڿЉsNklàHD ; \@fKr 2IW:{\HquWMKYlBW\@ Z'* _%FxUF^A5Þhc\L؂+;b+ϯwt0{a3?>χB(zMUe$(̾}TRoVp#tY-9Vr6C7#yOƂ-hġiq@(- `=H"l9:o mSZ(eR#7I[խQ Z(  YKBXy4`LV'l}J=X/9lH~LKV_``ނ&@JGt 7@pkZ̋l+-9;w7Q][xlEʔ#I{#Tw~|f^Jh ^jLB]w흕s^.%tiMLc?=/_TqGg%E SV Ĵ:C0B-@= sN0 u$FCx]8@쪦uԂ&[vbJW5^x7̨{Fw^X͸ vߴ&Ƨz yZHTܦte59v*YtLoG'?È\\waahd1s'u +Pc̾ڙwՃ6K}em0VCF嶻X]2jȡ;5 v'>nƹ8R*o !&¡ մ"{ݺ#0AMoKI $ŪJlC4dZa Pߴ+ML}+jW"\~VwMܯ5ZgD5"$+atSUlO3 &*!]7Ns *b(_,-L-CΑS,eKSFq_HILƋvӉzӌ:%$EQ$JνIda"頥|O9{W)ކwJKZOmE?`m(xo m]%!6r˗: HBf S"RK 9tsh9:J`* .8%Bi R,\gE}F +܁uR}b?~[j&n)˜V5 P2YVVMHowk7l0w^ ~r'Olg9|'fʓGc(ۄAr Z/^W|9^A!7 3UV 0KO .}.( we" x%]6#6+җ6)8b}^颩X]ny) }z\SQZA;gDdr.gUOǟ.' W :fQLw0 DH<wWRp_zv0Hk5Xr b90kx^e!#~(;DtxzC&_gx19G} Y0$OϖiyDQ=Qy%X}*%FV_xiNlpIJ)%s}(֙â?\96V:@#C ǒcSP49=x=OD*åNf5xc/ޔ/ސbo:b.G>2Dsb-oDɢZ= qn 1UW3=V=:3 (B x{g<ጘ=tz][VЫ`j0դT~ꉝ99hkusv4[cٿiRAz&=`>7ǧ"ڶLU' g,K-( 3#F(ӨBMdk?A:aNh8 _"B{ș5#q$rf2Ϛ*$G&թ\C^(% Ƣ1}.&{#J}[B5UE" <(Y{ 3݅xS,H XVV8upJ2?&Gf;*b`4>j$gNɚkYJ*9x.2{J q)lD2,SS(|J\g_@xFn(nȘ^s u6$QÓqۨ@}3GA7>Ж\?2XɨU'+`!Q''ۛ"njS*鑾qH%ؗNl(7ݲF4+@HceC$gtl(I)3 uFAJ4G ?H#.s,gTOQ\Da*zmZ:4 *( UHf:4ҭJ2 hwF3Eпg{"Xu1Pp1_pB^c/'+E'xA"jkpOhvᤞSPZv("g*̙۠E) gP"\63=ҎgV"OΩIK?;#&*=bSuS2~ve [ϩ尺l~f"yVb-&or:':rHmJQ[c.XN hY+;~|~$ICtT@m.{Dya*p>:ԗgs},4&0l$@Bk絋Ր~?%!ot)RÙ:6Jëa C^ Yf7qG&}ar>Nۑ-}mGc %c-du̖GI.$h{x5% )-ZlqKHjQO5,i^(x4~]}*2!=^|qMSօ T{ w*cljsmf1;)6eH)_]:6T u2j߰4qhi> ۞hwa,H++@^ə2T .XExnUr1k *+[k)(R!7\%e\VۜdI-]SYy=Q8nYLJnx;^6x(yOSh;i0  Nv> fk6%st,z )U{O\En ,1l?Xo燤]p9ͤ.% + !;ǂp=S`wQzoKT~M6N7Qir7 ]>Wpexo%Qg!hI 8e?^oaK*B4NN_eq̗kb6 G*u)q+"?钐#?+UiV_۩5fhZ[wBT;020F}֟,u|Mm 7OK9q~FabWdշv.x2C;$1o4Ux/٨%01]=(7dW/(B^T83&UJi dF[ C'8 d0aV,ʂ1 :&yyx~RR$ʬJc4ǗgB@aa{4[^Vhz[4rcꀃ mr;2a+ki M[()~jKQ5Ӓ4ɕ5?vsmHLIZEBrV(Swլd-INz\}0,Y%4kVSHR(df%sYHU U~ID x*CU@x770"t$D2MskCnV(7MCQtz3)+. VP΂U\[<cs5`/ؐ j2KIL~ ][q>Y{jhhޢvнsg:*8P"Rv?amfn!Ŀ8 ~5O}}\6FJw\ЌJMuWꀉ;L1EO CNrpmsB`/@.Kj1G&>U~;A Qbj" EWo>9&95iF럚U5Bg9lGdTJ(ߦ"d,QT!* t#mmbhy%?r9#/)"ADQJ̟{ʑӠDDM(ܠ)e~kÐ%26e2ſRHKr`m2žQnm$tgg5 r9,໧} >*aⲋ5%ԄYW9?L &2#z=СJod.2_%јY f'f D>?z'ֶ8mu<\L*ؑJ^N9Q P2A=5yTR[=[^h{qEQr. i(Y.@᷃tK}lXߧW d^. 6g #}L@Yyo@?r=82PM;)~!{bK}ƎXwP[p*]=4w-)8$J&%Q#lAWcޘrCL^CaEi^ʛ[ǐ-e3@COWDoAߏig4Q_heoAEU Dz嫸bEpxN Hij FXHeRiXԬ1i\}'j 1Jo߶_q e Z4`l~S.KvrfmJ*4}-,n"ľ"LGc0 dヨ0e`WStXEq \3^Q1@2~]Ej2>-WG:ˑ 7.ڻZ|ƹ ߉`Z8q"$yߦAr0Q|bs^ҏ*KDž\=d y ffo9 _h8 4&/5Q.(kΔ8$?w+`:M*4P,e6AG.Dþ-ɹf eö=6F`51B¦z=aŻ^V(hZ8;)bq{db@v|COFɲo>|}<뒁*^O>8 D/zL崙F+ȼ\7,žL %(u0#7MNg:ҝbLBMH UR`iE~žgIC.࢔odX$f*tNa LcH]M>i-iډ¿9yycT"|}4MF'e$NG2 I;fB4R^ވiDs&.ctRN{#~ CP"a,wWxդy7vD yx RJӬa<|9dMspU5t"zqbiJC3 ?7a=\!0Fqw #l03frY20n6 ]g!jۍ6ZsO>GNxWnjұpMo'μ}d^XU^nDuEGmI=/ >?P70x}lFy^e?Тpq\i /i㐚d(Qm/1c}![پ~b|LwDX$ˁ_6YUbC1a8O rKpӤB4B/jW4 N%+E }xZM^ڏ[Z?cx&pʟ4@ł* 34oTOq Itgzʁ jOxg$=Q46|[@쿵O+yU3w1dMuHt5SrG7TW&1{{;L%3Y'jT4!?a&RQ`v9n pPuVwoopzopWѭ|qEtDԈNq.c#xT:w;dﶤcഢ@b>S0 ץ8VuK0#eM4pk5kŘ:B޽d11`YXsw4i|YϪ K`DX[ѩ-] & DlE<*Enی97N0l?q GXB<ugQ,XQRM` K|uN~ 3 LEES<!(=1Ǘ}: M%k6(L-/LU}wl٘D7 W+D/wxUv$[˪wM2djVF1 B1Cr{VC:T-e*Xg뾘Np`f{juC|pqb>G0&ZSb+'SDX/ҡ\`?@ZP(,:W ^e\xօ wI䟺-T}; C6|njm٥!MϰѶmqO&*`M 29EZs^rG2/E慺9]G i_ /.Q9C%WQL$? <۩WOA&#ÈkֱAlW=/b2Mhp$ J/ܹQ4Y"ÍO`\vt,!sNE(إs6wԋEߡujW}tAmI+%$#G!*nx^1 YI@Ђ wpe(u_/S}3^ OY[տmݚwJgcb foAvϡQRGK>{jQ/wUtJ纃I E8)* ~d]/m{Tv%]pfKOMJ[JsD`'Uǧ#+ uܲ>U(28roPwp4|kҾ.ST9c$}gᚷEN~ؐ lb]O s [e{x %Ɖ.y\  3=X,*r4ZP}]s­b"7Jxy!X;1oZ2R޻Тಒp -?t Sswد%ٓ2ȴ+= t&~z\"MᛐԺkj@Pډ~D"s!(p. ᖚg)s77xGf?qh($vb/i=r>U/4O?s OM^XXVOU#4 t5N- PDd#g+":i|1p5,k&\u_BE ڵsyh̟#ȸ>f};v ۀYN0 Ӿ!R{ێ"B99A''<3AEna?<0Rjdkvv5|q*<9_BkJMAl)a}ʇ6lFg(#q2#% q<,ЉX{bOMm%č\ʶZWnR [e-̞B%Gʈ͖a&S+{XmyY"CWm]^(ŒA_@Si%s,ŜFZKY78$j.^)͓<1vLX[ wAD iNT 6@DH_Kt) f=*Tt_AS *g`btcW\;wY35/_N1bXiX$ê0!i`hG(q8 ؎1AFC|=+kJipꊨ9 #[GcoxM|"E>MMXV8ŵpbM ە=%.{8G60iZ+N vTpct:U aEME3t4 vd{"i^T V`Qacڐ |۵gO1t#'S{jȿ%DD90C qc聳-b.|7nT뜜z/ChSM'&L^H_1g̋\Q(bp}֯N;-FvIV\~r_cnȰc#|P ,Ơץ=Jn;r13S}wI? $?v46ijsħftHkfJVn: .hjB+Oʠ`WLo€]* 5F8_eP& wZVsuSSX]ݸތPw^\Q- pSǫl|6&-CSp aG۠Y.]f*"jmZ$ɬE 02/OM59U*FLtpTO ˬZy陣>hDEnD[IzMM].~ 4H0($JEk~pK6>`tܳ z5XrFVUwu$x撀5(cT=4!I]Fؾ{*ccVU1(pd- *MV݅ƽ3&ưrlסjӍi:❻5,;ɬt|5h悰pѕKIg5 N'"wP'`ɽV N5-eΦWNm](@8(G1@^뒸YC3VbRF!-񥣑}wZZ+MwܾÇy|{#_!ywתǭmU+?D5dq=n*Qvd8p]ueQnSL՝9{'-Ǻ{;m3;P8ud;ZEDw^ @V͡;$yOw'cɖPnHn Eù ӽc;-71H&D9zx*qa=Tx_~4&=֛yE> -Vr7Dc\ *ȋt?98%5> K5neq[@a5+:]x#goċv@&z93_ 9VFSBIJmNXga0ɒC*ixT#?mTbVE{Pk9q0VjU+kch,b'|("%zZm¤LuZYO_w,~+c636֢b ܴ2ap/{+֞9=_w rkl+a2kPz@;ylBB3EA*[2u}T]9hUm6VE9;Q_D=,Kb#ewʼn +o3tf)IQ 2+wrNG2.W oWd fzQ>>=lm&Sʡ˃mR!+t8|mEʸK%ʬـQY͢ dz,Y؉TKJǢa>93JLpŜ(F, 3;UTl+L|/k<(tJ:ڷ_ {LR1:]MO 9'zͬ6;KjHOLRoi5qtZSV؈˧orƌG5_~>)5zln=0?ivMAB@SSj#ۍoՋ &brГ6e.~|<(~Mq>Bk9ql0I5D^2ZU1 Y_R%E$%X[/Pm~_DupiJ2XaNA- 7(EnSF7C[+`LD%R%,epeD%^R@Dytt-*p (^ fTyٜ1+(lMfy+ɨv6ńǵ|d6H&c9C5-9&&*ڽXSs{>0(+e'#[qe(֩pȱuOw:e ?qƩ<5_ o;pF{W ~# Y?Y/g;Z]R*\h 4o0kziC\xO=emJ &"\Mc q^)E sVA(kǽ1ٵehv1EtEi=pmKd@"80ܪef4HUVB)QFe !C/x6H87].shyyNHPxDsP:ѧ:o 2)NhS3`sg+o^% luoyxTw#楉3k{l32nFWq#8ΑpK(jFhwn ?h(4Y*A]3׵*Z[ R]9V%U^`Η v xn*0+WH:wMe˵Df XæZ3T!X"O g>H cVچE֤.[6{ 9v@zp!t-(2"=#/);\>Ͻs|(Fj|s#y5M1\)QsW%62T@Eù!4@Q[N2lLnuKH{Q,Qצ9կW֏TtQyݎbK)Q<.ۇ{@@G\64819 =nE-1 :կ[#x^l|H:jlJڱ'$~$<0 >b+m~x%*򌓤jUb6y~|%75%[[QÕbYBTvgԯ!Tgwih{[@MiI}Ɇ%~:ap{aT01[k`Z7WB pᶶn8CM24}\< /W`¨6jzO3e:-EEgoH7){M& \(sy|(.nEQCo/~+ 3VrȜ{1"U`&xA`^"W#7C 1c?y{_`/k0ȽTג>|[';w޾e]']f;Nܴ!U,aF\w 8Q2(K٫M ;qq^q'*Vɤ= tce_cDPFl=o-fN0]J0 B8rEPKvz$¾Ů{?T~.+^x̧o# }ZHIO5LDq(($飩@nnvy*6(8R,TvJM T*3/;&T '{'}q29 ِb&+f8QUjROަLXU}HМZ碚Xݖt_rVXN%j>Sqy;?0~'esYϒmI94! X|;5 3df7b|lVZSArJ:@,Aʀ7s]|a;l{;YkYWNt)k`ivf0`Pd=LXjIsvC aq/g2tRp{fпhXG#aa>R !Gjpr)"f }]!$ "-*.ذ9F?hW9:ΐ:6D2Ka} C tQ*|}3ݷ xSB7WZ1 J Ңh RjnFKc&MVMe╍WeyH/7a,Rr쮁 Qn&~͡<,sz%6!^?i)Q+0Y91s!'W|K0M]oU&xW:ΓQ"ctO4hɎˁ$\ՌJ` ~wIWj :+btLZQ9Ofi4ܜ~C`,(Floۅz$}ĥ_@ D'pd ̾z քtNaŘ(ь|K:O8U}dbrxi^R`ŗܟ`[m] fO;G;u5SplrnR^`<آѬTvba:48X„naP}\qUF$8r5\1Gوџhfpb2r]&y\5r^7ֺnzAj!U%U{2]X"g-kZ_wGBdX58.{^+CO~u` ܄? .kcy?sg(S"2US"E&H 7Q.Eu=x\g(K'fdIT\u}<<<1X88zw&KLqc0c`E)PWSa8GzC5ziAҷ71-LkB[R P(Q޹Ɯ*ܧZ-D*i@qoTݏLwyŅIy0ȈS NI/֜{$z K:׼a/y"I=8u2W9 BBq1"rBG 8Rp9$-W]q09)%S>C5F/r%%;s܂(.5|&[0Զxv'qed{b J$$po6M .7s Жk$šyQfQ "%.fOkbYs_r%K0K8LH `}GMf5!Tz:hW([gmzf={z[C5moXE9ፌA^ O2NB́4G??۵yx-RCOr$* BI `]@^3Gk3]O?aP Ȳ6l Z zPt!B䙧a4$M$|!fCV "u.2_@tL2ڃm,n[*nsHt~鲠 fD[IW3S6bJmUo:rPb` |K<#/qӬIVKd#Q׋SMNkoKDk}Jt A7>dtM!L!*2<4/qqW5E*擹,/B9 o 3yjLu$e_ =6}r;/REy)+Z[Α/+v(%cy#83xwA{4H"8! Ĭlk?[̔N $a'c<:p3 뢃 iA'vQu6Z*H5X<? GC¹~su# 緼1P\#RWS@tIb2&= *b#uFYl3`юݸ"{ƚ6ezE.{dz!nbcpF*Rqm Jk7WFQ^?[mR;|>~;2;OmtS|j* ] PeN[G*C#*"*J;|X4Jbmx,0wV=r\=s !(ՙ/}Ͷ䦿7  ^[%H $|M͜]8 mCD^S`F eK RR1eh-9#ImiA Va JNN˵!R e\(! -lkPo m`mP\"|3nH#=JKY3r$vx- 3<"{Ζ_b$6z0 V##GTy$+JwqpBy¨?ҡO|;yk!h(Y&y &N _ո: +FN_V7_*]iOzY1hhjoWbzoS`)XGKn~{_#~|Լ>Fyn3m[=؛փ:EsͼBT"3CNȩ> a((4,PՍ>0@|cO!]5aZ5}aMn4L?&cR[;`F9=iEHDODRy2U#ZVn+%.#2.W mo^+Fs|bX`nd:޿'{jդtLUh`ALYK9ڢ@'w^ "*MٳdG=πPK!"M˘pQס1tgΘ8tJLj7@8&HNwYHWBSCVֶ-xX~\r @ɂyQ/6>̽0/Ͻh/ )a,/^Wf<{#]oāMk+gؽ9 p j5Ey4M}aE,j680v].|@Gv- apNO J~9VeNrLTjY`~7?5`;fGc"bk! o#R6I5T3Z]H1P)fws,qE9"l|ľ̋7vwYn$+HJuヌ1g)ކ>S%^YhE߬`N3o>Ϸ̑eQzbvR9bQԜ[ݣf4. 坋VqEX,d9n;w׫=drG Cvm2we.-덆<։|D?UVs@!Gm4~׮|$ylR=}NI;T^&- ѽ>/?0r%6ȋpx~ gC$6W. L 'cGd|3^)r$hxYM8K[Up1~4;[h%WyT,H?kqf'}n'&]a5,[Se2o<:pYkJH`9MH5wzHNXW.t<5doJA\{Q`-mѫLn!x*8GOWk=m!'|՚ #tc v K.ф+5}O58@{Fq7(\J0YHU~l]X ѦH_WeBs*rBK}lk7(L+Ug1DPFCLea֘ ^&T 5z,l_)6} zSnjvpLd`bI烛k p.Rg^\Jc:ϤW)I>sܸ<[QW,nn5|WRs|)9L ԰r {mB3&*Kb/p@6I9Lt48u:j78I`A#0#rt#_6:edT]z֓Z{3*btPM DAi#-`R#`idU%zڊ<0qXh4ry]8iL.&{:QT_vră CSJH5z hr󯷁a'\,%b"O6< vY@?f+]޼oe5/> 73Z$_ qCFSBE2P׋hDņƕ1v!Ճ1 Atb;F%B=\UR OGDR;rQ" ANU- -,\6@nfS-Bx'6La~gm7/ge(\Va.p ]3XT NdCu;&VcK03,kC(#ޥB|B!x_e1 iL'{BaǓEt*9/h3Pmp2H򗱻wGs &f0av!Ѧnݻgr{= @Zmm E0ND+gNVEC#$NBřCctΞ]m琌{6rP.-Qb? nVAc_$*,v;\b)33N:87MjFs/%3C!YP!VdvXM;+MVmў7+ȥM׍<~L@J¡OuM~YI~[&L4`O "6^Ε2A6^~i=DG`,=C9 ]j-C{ I.$/|" 0S[SHsgKPL+$>y093.8D[߽![ruBe. ,[Gk[uwj:^< D:\S Jpd$ V j2:)Ka_ΒB;k?NglNgҴ9p?\gC BP.*ט('칛xh^qH ]MVlD͋CK}/,}hG(/͝I# Mi-vBzpn;Q%SČWf+#'We _¨PTU43n{>8b*mĘ/nR! seyfVswt5 ]}uɑG*K;].#O2GN,a0"i 2d\c|}ܺ kQYDdnkmZ3j7H+H|7"tnr;":I5p3fB@/!)WdSp,鋮|H;&ΒT;49qK|"̤oP^ g/m^WWϠ@t4?s1dh ujPjN5a$kEAC=;XHYquKŸK߅c<Fnȁ-S}5Uރ> Fd̀$KB1}UBMTIJծGP!*g;?f O%nɂ"oNjjf,'Jd`J9Ċ}7IwW|Ӗ'ԴX]lTdYws)ǝ!wnZ,Bbk[1 o\2C~2's>@fݐU@Rݳl]zֈk y2!  ;@P1;+ʖe%g-% N5ǔlSQbѦ9v)\݁-/f(LTש5\)Rn~-@Ouqq aٖ 8jE7 Tpxz>Ӊʒ.+ ILl`-,A307X;rCzoQ4XU91CfݚoB0&4dh}!6d>˦E٤fLݝv;_e!8WCh<9P)kUX^R 3X`qcf;ńϿ۾2-fb06HyJw CHbUr[KbݗmCOmOP6kFN̵((; fL? *@b]c4pم;t< `qsU5Ƣ-Qd8."fR Ypq2좭88AR*axCM7ν_J{%iF\!MQcBH`gnǍMojZHzzd$mz\1sMVHhN93@iϨ);"M۫N3pϨF?IC.%pf)`8*| XӠWr)PKg]ktabX_c rP8ГT_G ]5UgNrLaE#+XԷ_fL|(lo!)zmQ1 >ʡ30Tdetwfg ȇZ :YSh8VdǪQmNH{r!2;O` -" o|҄]J6%ێsJ`?+ b;dKvlԊ($Ҫy1j4)@Pq(.~G[%Ryi `tى=.:}Cjo24o%JFO<=[;'/c?W!z-Y\ji6bVW3ٞBf =Ӟވ<%_?#(I3%].Fnt'92vsƙ*);h/1Z_RӢ`:ۆĝ%m=d4,.I*(i |yX JUmpn,, ;*5RTeICDN\dwB ~wZ{EYÆ ?p(;6z4Io%Tt a%Vj]IUԔ%ӆyPC0teiH%(.[`t&u_HҾzEttw4w\WK!U٭3-+:TYXM-1G~b97儷iDYnp6"(*~v5ogv`3}RF9ؓP$"BHCq]VɦbnbXf6/$UAOwtiޚW%Zq.0`,`#*b::s-IT $),S5ج\c7xqBfO9;|ĢQ*S/y;fg~oaq.gC!}nj_ϽX#UYlxjdqacN-'{Mrp*'Ц$? Ch5~Ti|)$U3&1o#3gz 1o?{fb:t6|eA+ J᠝zafvÐ8 w-afW9l% iU;1p\!c i|Ɉ$9mJxa]Fe@͙y~P,m^1Bxxbw3=ݡ1e_ Vv sd=b {'dYߕG7@ĸ}d3Sf9oѻsՋ6Tdn(C W z5|>l()j3as"}߸XJ 5݌D]3SG|(YmL#!+/#VbI{e1%선I%Y8G G I0tk\ݙƏvxV/$.-)@Kd3EYt\=&7/7bkNO @Du`4; ~5x: s_Q*EK>2oH&,~usUnlj)lVAQBU/ G%]t)B?BÛљ0nV큼0FX&W ?7to=f G?GTUJJ%6wYH G5>j98ú1,6nC_tpε 4sjV]l&'~sia61) $=I3u rURbtLR]~1:&Uy֧S|JLy85ʋF 0]H^ŨKi#o>&VQs]uiW|i d*"~^U@ko@4҃uL]b&!555pid?Q4R!9%7TJ =,9I=5z;~քh4%:ٍI9>\-Ͼuu昔řGeʵfh33.#nF}v?en)]C$ʄ@rOwP߾\X+芋4!|1Z9J׳BT#\!3,diXvaW#=g& e塃$";(-ׁHv2j4KZIt_"j ܪ=ZPw_7$<7fR@-ihEEת# Z3{hi;0Hb;Vdڃ⪾efaԚ8eś/U*h{ #9sT/J+ _CXE8A@U7AD.L ށ-;I gcEZ;4o n%搫QPK ^2M_\HB`P@\'P] `9Ó C:|^6go@{ $—\QV\Lзr2Bm*AȏvQlT:oO;OhO) A%wv t>ߧFN5#o 1`z?5Y YZZ!3/?uI nRn"VR:S8vOQ^ vr'8&C3Ł_S.3 Xi؜t*aJ-οc8S+AWH45'Z R0c_dC!'=?Row!&d`SM WviD)aqoZw>՗S!%է*ES `D_dDLه䍠ĸf?]qhtPjIznZ=IPi=:y+FӟhlMa; 5 ctЂg{VQ:U &|HvU/!0,/ڳ5~q1Eybe[UQ!|p2,ǯ=4_-pF]s)n*- (Jt.Wa2 OԐmóXB*ָڔI1ԝ| JR6m:t#0ZN3 5zV\odzDoyk_8|@b ZkU{OE.>nϧFS+lA4 r vkht.L1"d}y YAښZ9WtVwhPl^<ūzqѨ(ݐb򧥸.ʦ'hO T96w"QDka6SŰ[RnJY\ iQVvpx^0>f9Cqj%KxssjI„B͕, GR ̚'13呇u*t &Qw #qr#a aǷ0zR¾&2yx!КE-gAtKab1uB̪O YWeY iPBeM:? ȫչ,<WXuM aTU)+GfuV -jg6QBzmR*G Ҳ \hr{”BT4X77SkoR5FGd-@'dBZru 8<}f,D?f7>? ddIG6e]uhMrLolsBG`Kp4%U|u<&u?Y#cKҕ:tA~u^e01~ ~CsvRICBnϝ%u ˵(qp05}9 8` Btd!#F PJwFy&JH)+|vc뀆o7zT|ÜW4MR FU"c):yISR(t墼b-xQj\4F/)^=1, /k]mBQP*c-*(v"|,D^ Zb;Vt^ \mUyZ oؤPܥC-m5='b.-/jR޷NR&kѿH̍FPM(ӉIy JJd+VlMmD/8qyBqQgBIۈf"뼤ph %bpZ thn,Ն E[ʼn$¨h1c?=C;b7GMvU =hZbS,ԡ⋅yI6:RW!O9i,8J`l6#.A .CޝK<Ҟ@y>[M'O&]^7!"2Z+ v+_&B Z=LRxN '.CuJ qGwm (AHx0O‰V\Īͺ&Y:NĖubŠׂva(&K "oSqpug&_kAe v"2ab'klSb_Km&t! ~՞ˍqϟ":B@=CUpbCvN(㉢5 >mu#OMQd#9f4(Ս)P;+rAgi ,m9W7O[|0pQJ,"Qts| ;KCʉ赿.r?Ҩ OQKSɺ#0! mLtyghF rbcjTvvI"OrAX'PCod9x6 uO#dF"|2"f[ 5URRIM,۔1WGB2溙 (g{'aqE#7=]`d:I:Č^kȖԘQ\q%NdPɂtũ>y# BCK7J>^W-=z,a]ϝOL+ժe݋`'=ƕw^[{.ʄgI5D2L@b3$6ς]= Ijȗ?fodžK2b/ _TB{r'P̓w>3}lf̅N[A1Qm3n4$npT08/[!2F5ɔr\DSu>4iu3e6C"Pav׮{%HO NT~twj-ɗ0de ,芰k i r7y4I2Ɗ9/xD?v5"- >C~C:F8#kHC1xf !6L` V+/ZϮQQERRy OcMcwȂ2S +DW7-wGF[ф Kaޙ&? ``MإT߃#4Ȭ\ pE_L@gDkJ|/L;(` s^;y9 Н$AY_))\kB(*"`E[5X,$pkb@@C*9Z,Wt0A&..L96 , 8_YQ7hC T4dwN yv5uB,&o/ Θ߹j/+)sҹM*F YIJO|GRYLJ mp'|NӼ5Dj+ON;" GϒN.N; Ξ;1]7ְXUDM[%n”2w d)~|O`B)*e-t!2c{}A[z塗0K/r !Ob=Df 2յZ)2MJ3 BИK-VsJ 4[0+؊>T~[fpR}C#=IzG-(xbX fh Ԇ0d٠([p3zA9˄.̊7iov#"J@gm#ac 4xm]BmY;&[ԧ)_=`  1Kz$N7oCl YG,i8VZX"NLabn8 QãE KR*=oz# 8Cak;|Td񆇄X{K#>vQkTZl!@T[:ĔD}LyǗo?΃4`|"xQи>7-MUz jkvue*~ljgD 30> 7@n\b̴3 7JWp.A9D8I `G 1OlM9e&$;m C: w\ [W(ǎ~y}%S5*5<1-4:Z S= xkptJq]yleֻ$I%hbMኛt0<)SC#k,N==owPx.3CQT  CĻFglJtL+m ζ]w] 3{IϷ#L􀉴""cCr%8Y9:C0XuѲP\krES=#3S>!<.G.j&62CIfS5x-7]b~ D!m,!?ulJ\m- &"TȻi?kfc{F)nҊ0XjEJw7.>5wWlqه C:^&?z|T!2n^=eWG=V*al%_Iw-4rd=bL]MeQr78wimNeDlCҤC {*370 M?1*d&3vl!`_$O2;J8M6eyFu]Bqv0h?= W5i$n~xKzSmz,[99FqH %O 0儰+ \`/>k5"]&yGr"'pd'(@RGXw#-IN⋝ѨVtXO., kÙI zπ5F!7un '# XKI\ji[ˈ=MgEW*=L澫r!&# -eDWg@v{99`+P UYcR|L+|M:xx}ӊf/bPmJ,˹,9tO3Ejn2r?%!ۚ$(zJ%N%69 \Nc3JH^UI;ߕuvSMd+~F/%+d2YǦ:5uO,9D}cLn류?XTZ29c? N P-<"7;)<`F@D{$7GE: fQ_h o|#stZq rtWs̰[T S. }=*47 ZkWc)SKd^ѝ=D8Ӌ z[Ox>D 6O% pbC&1Z GIǡ589vVeirƋKߜ)4\[U1}rH  tզeeYF:[v#8ғ"n!ChYLM'NI^wo%>:emӭ%\p H1%R*Hwmy^B3MfkK k8{%8[n.5%-Ip̪*r+{y/ gENSsYMԅ\3{B~Q5R萝5_nﺯ:׸ȋm}8dt^k_-X4/D;2S~lG?E@CuD0`B_L$u'  fM,!$6''ݜg@ݯ2ߨ;NC[|iwUo&[z͖K" ~7mNק R#~@fm\>7j 4~-_hHXzvGDҝ۬ |-O)0 'O"=V#u$8z£Q(E8}#D^/5TOs\T-eƥ`퉼 :zK¿ Zl^ d``:0?nU!0Iv}U|H!Pk1të́ |Z}0#/ Fy( Y.ќ:΀\CNa'Er =C.ڇN0z[U!+g>Ŀh|tYS,]xCD!9%ʟJā$s%R6t`fIOiO`IW5&Q:J"ЏCo9cR?(1:L\u~ j@|BOzx#!~ :Z]^K-XXaSlאTcv;`QQ(|qXѺ.tp!vkS?7,1 T[O8=/:&r\>ŧ`%YGQLІOQuC@ǧBCu ݗQx{]~,ŻMJk Qiwp-[JVOڹ7*jյdK;<'ΟUڞ{ϥi1V7d"V8! y9%6u{85͞rs=|40G-06A7w /U(DT!sQ%Yy&iIѷX X,-)&uVU=3Ϋ;4so4>|w@:Zd_o![c("nJjcM՜.^)ؠ̰4H#!ֳ=id17nπj9-&_au N9ۛbPn-sQQJ\7IR_󡊸<'_ B.Z_-(J/0^ZjQ,.fuȣ\X29)ZElڋD,r'dVE/,){-%INhl InDVv3CrQؼh1Q{oL!̗ )U\81]uY$"{Ox45sGA}32TT)I͕?#C`"-`NϰSVJرjFC#fg`=-)T7Q)ϐ9 YO# T#VsٰS7 (hDNQ>i)2 !8sq#?/zLQw%{B[Bi7RnB#/ 4qEȪ(jlC%hх j`%"]Cw|@LbݚnkZ4qcoR/D먉v F4-dOC lyy-X6Q/9E og;J%˔# ǖ&|eK6<;w6R3zvE~q'd#P@@d@Jy2cg`\ DvڹґBwqTܧ|m%ua&D+)bHpHuΧYi[X  {S;jv GsP;> T ?H^/K@UTZ%a+.V9smaaYQ wb%$n/R^2Q8|2dD_+Eo z8D2bUeNRAqd. D[SY/kcLg #gg/qۄGprD|o7}fN#xS_`'($/3蚺^ 9Ur9Jt- ;5% ^t q!to^YOkjC"U-CB8R,e f&ES1 ׭sRٕ0NՁoa˃01 >g"QQC)%`'<=ê!FVz*$-f|Aޜ1RR% \\1DоΣ|Hr!b nclܫބU+@zyF: %$p%>m iR2[b, O̲k~40N OV:'n!L]YOS;)i}v̦ 2]1R:}I(|]> %!y ҄@)^Xj˙kGE,Ax 5zEٺ iIXrO0<8(dfǶ+BjnyrNQ ,]vUpU1˯(",>a v-#A/9c$G V~5@/6j GQ; ȒG"j3%k<"'yvabd6hy:*$@5 v8l⻏|*,B722?NꪑeI%zXWcd٦XqL2 f4Y3 WCAn `C@cN } w7Ek$VܵJ.-rMݸS1SCE /8?.^y[ϋ$ﵸPX]1Eȴ*F6R"NU7Wx"mTn裚I`q? V웢\Bgs Mƕ 5K޾GJMRrkOw MM|G8 6Hbz|$(Oj¸O2hƉk[Vx@1Sm w,h׌먾mE?Krڑ[/1p~z+߱5Q+;ZiO>yh\@6|.SVSX/^b[w^g#7)oBBWO*F+@#C 7&0yCPΜW1M=J.t(%D<'9b}!+WooJ`tdGuzt|h)ٚ寞(8*{ >RWni9I5oGO|uiwr6{2:(+jb릯 Fd61V~;0pʉuҙvWB6 =%2N4:`VB7Yi`(3[)F#3]}8x*YqL Jkb}K4wn/ѤȾ T[8͔_;cmwL-On ]>1ƃ :?"ݪ{{`IZ*e .׻!i:3W0.sVM:9Ю2#$AkJ| Z _ E⼊r-1/*N?]Ƶ=BLn}Dh;MŔ]KMJAٷE ćP|h/ʽa$hN؉[E  &ܽ3ڪo"ywf+] M5ᚦuCV#XZ2^gvѵ"ڬ䫋3p/L^Fe+NmbnSdR{ iX# o&J >\GR 2_JBPY1hx̀X7if0v ]zj|t٥?~&N5A$e ME2J6ɂsAMf\Dc9Uꊣ}ȰCa*Kq`bBOgD05K_d@Z[o47-76PN[)23w Qee/g$scnuvf[{$Hn?b[ghx]_[i?߇k^'8G$Z`٪R`š52،<ԎU2d1Q9LUDJNy!%pe}KqE KQ-}H.R*JP9%抿y]MD,'pKZ)Z %a7raLEQeBD8pEGQ]Х *,IžzF5cy9PrzNl+A!)5e!/)^[3B,Թ٤R a׶²,h{>H\6* Yj[[]hm'Ybv[J%FD JEq{ JvgxbL.[̺-oY%Ջ/ `{T5mF`D5\Ը#? i ѵ]K;lsyM,^t$SvXP٘c^XFHV/,28\ɍ}P?3nv֞xK(2wUr$ʩ\ l`K$c\MԻMə/Ѝ mھ& a-0wԩE9g "kyUR `$ژځe*DLCՉtA5@9Zऊ'|`Li~u%5lʀ-,I.c]ꠡyNUڐcK7*gLwПOBA2ŊS`q9xUcN2]4 &I |5-ujϫ&<$7`(GD_6 n7[~ս Z3:v~c˝>O5t )>d&fQA*M2(<7Gj@,0R V$d]/@aQr>u>z OLjZ G-\bR7%-Y)h,yi}0X\pI'Kɿ??k_a.5C997;sDzzb.ڋ?7.6 DxkAumzH6"@ǜy~1$8,-QQ6>72 C_;)bfR-߱l䘵A4D1p'2ɺH U[Jٛ}h}yye Tv1`mMYIY~*<3A̾߾/a_&#ިk:UT8= C&ϬDP6PGZz[`b{pѸ`Om`106R؋հ: G5<\AbY 2~~zi p`CXc;Q f"I ?!4k9.&y"4lQrMg(M-=[X8|TWԧ40sB*=h/KR`>89PA# 0<5X1C x*5`!_&D%dCѼ02۔ %^m|2c@f{fN_$ "~Ks57m^'V lbs,8֦* g5ē=Jo{.?n]x.SDɭ%Q E,Yƒlt# -exОX+o(.i$ZŃÏbWAԤ ( ؿHaM3uȕU'G=-pU:LZ#bF2CDʞ+(t4 -u.y F (*aY fa1uU',~0q;(9'[ap[oi_/Aʛ!`|P30TIL8ʑ<{.a:Fj+e]cm8j'Rړ˻C| Whth(K/f|q``ka {yUX]PCHe/cQEm a s9w\yۣǤsB#go#sx@9Kj63-r˴q bs}{b(P-z .fln?}Ö}(۝tO𬼈0׷\(1wBЖ# ,*[$eL5%V ԓ30 oLRIõ)F,8m O6n,ǀ{^$TW{$$ךLc(O|KCWFRim#ɚݍ:uxTU g4 8q35YM9ʮ _j 4d;Z?(ȟ9AQU/w,3):, m}BZ>/=7pf+E'ٷj dJV"%Qaگ= qI|&hhPH\ #t D"X(})_.dieؖ#`WUr[T˥.".`L!!bfZ]?b󫎼vίqIXP6KHMUt/xoJРJ)l]u" ^z-$ شM /@,4>rsث=PX4Dlt *FeXؗf׽F+zsC_ r&2Ov@SɁb[G!9wu-Kۆ@6599]G޷>`ʵiQA(7ŐʕO)YȌ!ត /9er]nϐazB]L3'ձ2k(?zC w¡.2P`nejaTYꥬch3BЎ>qȻAN~T/Oa%rIPϐFb:_f SX"L5ʹ[%2_PY؊L Z[En}L`޺LTM<[#))c~puw"'T=޽"zldJ@<[d(T Fac}2Zc:"g=f e%E@!w\Zά^J486JT 2(mF!>h -+\*M^. Fw|u%|1ȄPmpIUV6aBbIE+V{Fٸvɞچ3urbRGN/.X2-EA1P1糕 TW tI8͢P.{`Ja5j8BRcxӸi`,џ;m{N2Cmґ#oS'24G>idpN MCuuEvP>pm rp^ !G(c8{|쭾gC4$^z=6h}rvl4+$-*ưù`{SC͛Pk0RsSkcQHWw%mj GvPa~^]O4w{"[.$Hwԥa#`?/1(f2jjE}KYR>/0l)N{a5ҔR>#_xh'_0f=8>OC8M-8FFB8{Zշ̪t'yrX೐PUBCFc6 uZW|gBaK^q?]Fv R78UŒߒɇYsx ݫw ׋[8$U@S`xDE5|vCOZYFR''jBԖ솶 ~ƽ<6n_$$D: _(`Q iwYP oĝ}n6u*Ydg̃QMw陡3U@7<τVz]AB|Up}3=h2X+g7J _gJb3~"2lY_~ȱI8HnZNba~v<@j..Qg/d@ͣ䜼6tТ1?ҧM) `dA;O3ڮ)`~TtbE#@?dہgA՞<\ɛHzE-\E:5.Ym 㦲lI؝4o>2e7 XCdPF }_MCTiC;us|4Az0tNqvr7$%f_Zjß-"gu6MBDĤ( >Gfj֊#bH7ʲ0CC*Eԝ{\YnV>žt J\*LR ળaݘB葤w>q 7(P< /c#҃`1 q¨anhiUZCW𜖹Uj:"0|)l<riz1:}L! Xv!7j<2AP6URO"3D=Vy7xڻoʝHou?cFOX34 sKߋuazZ\Q? ?Y=5 2%6&!`PNXe@kZ ]4F憒 Vɍ uʲSLZp/M%ي*TvyeMZ_}bl͈nAPSz=w d?(ʙos$/^,P_9YRs;KQfzdfcCa2hl*lnIoFp ֥u}۳}lla=&|oUӭ@HF ϱu|% H ODU;5`mH;9&L77!/6mh&rP877 J|A*;M[d#:ز5ku70Jbj$yxFt_/0m}׹y"s(|WIo~쬈&kXͷ]i$6b7uV3ob?a!,uN&q ?]3:O8%{ s]ּ!lV'8kvқvIkeQar~q\r휟sL| Ķњ!A$AŠ $A*WC#y QLwxvyJG5a ]:1v_i `9̍X;9ӳ-61pk#YeQTsA9a0:B6|dDsA~]< )K3C^b X8@GAiۣ`xE<{tT+s'A ;i-=rEA /*9NJp4"Ӭb6vo!$ԟ6s'[(KRpL"(m]}1Y35k*'X@Ĭ.;dbuȝSar t LHڒ *$f|~.S6C8ȓ}K=X>'d>'D C;@Ț{FvYk!(<*S-v)1Pn6; m_}Q֢gdž2H*L3O6/"D='!ap|Wcjj~WL oWn[3Y(-2]8s sx9:*{e5"^2h芚\ל- i8a25F1m^|4inZէ u{tV44 Tv<326#F^ImQ}@-[#uNg<MV| X,J9ie0X)rDD[Xtjp=>~% ԩA7%펉0U+,x J,P@ãrU Dn'oT^ͧ/`F+V iβdd5K{@ La]=oK7=?6uxgǁ^k1VH|vƕ CxZD{]}|M'm6@_YhdCջLkf c:@6 I*D.4bҾs_9(Z0SIS{wR5;Sq j{`tӱAd@&|:#ßo 0$&N|j,1OEjA /I2W=Şԋc5Q\Xzn7!{Ukh ]DD<[bS7xniڳM: #VX=RIOyԙ+UVpMVk1wi  1M$Py6mD쟅"*eڝgcb2ͅ_(.P[|hDNZ}O8Z:"v![;XTFJ;y/Y2'ޤx;,3R,.` 7ƚ2fLh:YG8r$XÀk 4gQ ?&I#ٶ7s.^5;:SC_ݱb6rE0caCװB*yqp/CFp&[A)^[Rي~drgf:[i~lαD$F'{L{T{1 SI@DVjr3H2v~:aUեL Itn)Fzk!\r VNʅB%E);$}20*̨{&w񷷇V(9^sQ4蝯hSJIAU1 Ǒg>uǽml¹s Aji]u#L4s75Z~D/і Y(4y/+ 0^^1 DXؚ¬U Žb%6.`B'!_\$`T_ݑ@Kr'V2hǩ$OD_xܺ˹C,Gve, ~Ui^q+qt PG3X@sK%h!VCB8:EBn9"ˡ]#ě"LJB3GJd R*G>=EX[V5\rf K}/2EBZ>BH =v?U%V;UQoBKmlïJ1Erί|1 >;B̙l%N5P:&1Tj&;Ąw@ آ%]LStM]IS41U%DG#BUUiH:?G~19K\_oohEw'K4jBQr׻/,e\OQPfao~ 4T`f> Ϟ6:?Dg/6҂*aͥ*rA"dП{ idԥn P:y>Hrn kg&jn*uFh}NQD0ӥe.xDcC߆ ,!f)XUfId4"'7p1 t<VODL!G;Rv vkȥ S~l,؄Gq!̈@}ITdNz=3LOVV 1^PgbqK2V6v13c%wK%E86r^'ج2X۔4b3RFFcde:V߽Ze0~^ _%ΡWaQYZ dr͠;ֵjww@EMt}7? x:+ML L.6U+@ehRp>i!+ѢVOޱA*>qIAH٦S+ଌ9QhzN mW< 6ׯ! _|czΤ}BӞI6N;JfD'J"ʪ ١naأp HwU zol ZI&љ$MFfWDR ro0^tU+b7]SM)WC\3%X:)SC"2Ŏ.ASRӦ2ҹýF ~7Q"Č&e1 3"OWP,r$K~"Rr4Q)Η$ ,e o#9x d-*Ҥ9!2 ?2Ԧ*#ށ]Y[MTM0&S8m+~m*H@2}<k$5F&Qu-Gv gQFof!.D^H#ir܁f|_xi)#,"9k`-g>ߡ I1E׸I>0-~W̛#DiR0Hh:@&F GC7'8Ԧ]V׏g/8"7 "=J?(βYb3,x3"hT[_#XU:^0'\L Q d5B (2/`CbW-:(4v6`w5 ~r~CG2k&FT9f["6[HX%{uGGMc'r:iNh I>ӜWpCأ;,Ų+̭yC(HSh*0ygk>7]%MQ2(Uwby&ɌB-wjGyyk+qoPҼ4w:Up % ` 5;TR37\v/tizR-2c!dg h@ ۏ #r}llQB)(#sJ(],4⷇SdLP~Ԧ2CmԴ>NNI&ED+&UJR|OFHӊ] S&@_4Fkl{B tU)pll74{;ml;MB thyk40e * قC 9eamIfP  wx;p뛆 ɻ|1-Evp$JthNOo">ZCJD* yK'\|nAA"^? L~AtnRg3Q:Ns\1շsˉhȱb}"J,cHH34%fs{avzn;4()۾fѼ б^̢ 9>|嗥jSpfH5Ma%?0G{)͟YI~MaÇd_4w/fl׿8rFIWW<#g,Cwy#Gdmֈt@#k6"{ W tTS絏MWZ %#(jd9#C& ْl%=}[X{G 6ͮ"}͜$\;%x_SDK4RoC{~̉ju '? o:oq* 8X̻F3ʼnt(GK O=Ұ$ahZ+rqB' .a&*^qr:ɣ!Vn_wF5nP ʞkΝѿbnP ÿ"2~j5۟@⦚SUn=pYh-C 1DNG, Ga גGyE\aC7X׾,WcUăgh#ɬъGBpܫ٣%ΌX 1aL홙gy1|(ߞ㜌vREC8 8όz_w, VN% x2RG?򥓡{\^dx85 G$sfɳfK[Ni*#1e<ٟRRy/px>Ի]f7Uk;ؠ/}73. ˦5.BgQ4W=RرSp*P|bh_"P×ѳkO"IexVfǎ5z!3q]#T$c$ a M&+?g^. `1$WAGg`mt_noE^[*{ipuaACjL9Qk١0xKo  [YgOJtЎ)Tq[3<[~JDy=ґ )L ~-y 2ocAZ)'F0_uӯ2Nl=;>5Mx nKyXWȌdq]i({`V4h'Mf/4?:_V+x-pF;ɚljm;}br-qO7EhF30C~T[2)8K\0"9~l43Y+LHh"pjQEIu~hW /'ztJ_׉26s}@?4{~ZS;8dd፤1Ld"ͣ7K1Ow~* {H"\_TK^;a!1%rh%wvGd}ҙdӓL>癜 HǨ)oA"`C]hH%P c&hVned ¦Α'f[ySgf͕oaoV_ftO" =`hUyHR`/sGē*t@_pm}B Г8톿?h{Wd:C\=g~՜(cd`/<fHo!RA]8RXz@8LRwL(wnr^h2+X##8&RZfϾ<舋h׬HK&u8_{ZS; ;{p_JyǨeU"`|`"&o(wY%Zf *ĻZQ|B~͑+1a@%%`gkaYVPnx##NR' Q=(SOca qжw"xY!G#` 6QV3 gJ2{} NTlUH-/])Xø^c)[?mh4 r\_cֈH 2#]pܥwF1ʳ*(mRQ5b!Q>D4o16E[{ tWǎs8QPij,_ wv n5 ѫ br̜kI.mgg5sorO_=#1z*h]z,#sL(@lju@]\a訊t.x͢bE`D.EFIp氂[U.g^˝{d|gošC $1e묝W0+p+n-S>fN_bp* &KMa3|\#P>p|̱\Mk#pJU*`)0vLG$۪H~A(pۑ mE&AeciQ08d >#T-^Fwdc|D{Gw| @"X,* _j2yoTuFOч)Y~1Ƌ:(OzQ)<#vT7[3KԶjMJ w?*94v*abՀvE$R1E/=:uL/#00m𠉝;A}! 3b>j3ܴqZqr,m/$W ͗Ti%ڙOn$L$6&3>Hx=3ԍD4^~]'^t9f7a_!wrMS|g%ٟ(L~'2l*;E#p gEW8v'پ7PrDpB3Knpb!$񰐭BJuG,w]\2ڶCQDN.`V˻<{Sh^uc Zjd2a7|X9~1Rn]tU K9"L{ wR/mtl6]|@}+h/ioi>qN8@>I11֥'>SщqxXⱽ|mOPJ.}%=8g}@O&?u(61KtY0eqxk16W:%M5l߽P9jD;#nFg{ڡRQ-B>D&Q见w,=)>LCT7uL(x)yvG=ϠX8wqqkjwIӁS,hFiQٚ% د/`.0eOhUW$1n5 z ӕZ*";urn&I3ģH WAWE4nĿwp9\ sB ; N6t%ࠡN{ hi0/2wu1K^'WvJ0AeX_q,xX;FK}׷!3^ Gm(0D"/Pt3Vk2 ѠjMl,נ` ?KNm_SLE3>m42/R> hh ޴Sh:Ɖ/08a?QUis-k2x7[2x8h_WSz},VOENduMz>XmÉT 5ЃQIˋHq3,@yvPb!ePp&ڸH3Olf¯s@=|9L&3R({@Q\]v SPL6|%u 'CJFl|HcVJRѐ= {|IXVd!Sح:#(9YԍJ}"r8& @/˗#IڶJc"JcX"U9-(CUlyPd<G 3VW`ǏL{"e!@^k*t\Ħ{rT),~4DWI \ |Ԗ ;(IJbTן-5t]/L]19,ֶn"xJ9qif;@xTWVKR9ؚOH+g;k<@:eCpr- %< @e}H/Zu#ǙK?'r}fFQBlx(֨=RY'')SfSP|ioBko̜_"D̐F7#Iө80<:t1 /ˤ(*0h7QhpD'klL)eޝ\n5)N8ȟ=ǦQDZx惍&nԮ3 {_oYT=biYuy~]I֙5 ./tnq:(u!Ƚf+DE` l MR oZ֦;.T>aş+=J&,kQ!l+eY茿M$_4ULb~!stQ%'V|-Ll3)\'{& 泝jbB׭yo1д5В1 YF/wJvGc3=cSͷ`|tA' ^G< 4-W>ȏ@A_˛Ӡo[ܒ4*VCjD7L(,ƒMƧbRo~j#уgR|Ȭs]!5V.\2ww*PjE4K"fՇ[HI2N?XqM`pmϲ\FJ {azKioRޥn>7W>I&Ⱦb)7vvDC4O`JoUpvzD`71"2 ?#Gh(ߡg LK ^W=WS.@ D=49JB2܋Z1"gNɚ)zqcw(fSG m5VP#ufY۰t'HDNJ ({B:.L편Ϊ :'ގdEmYڛG88A s{K\p9Bڒ"`p+q=X ?E8F7:e+jDBJ_1ZnGZ)w6b,NL0kUb * `]*KX`1h- LѼfy}yFCT}*uϋ m ~H:Q[8Ywz} ^{9[j#\ x{Ϲ[g-.֔ ?^%閩~Q%Ϳ\#x5B1M})Rwtfͪ@\%x~Bs&%4.M)*BaS+{y-�wML;Z"vB=򜧲|$$Wtr$ڒ8ȗ";z9_+Ewɿi\YYf^\#~Ѫ 5V'6[pBjJY<ߍy]!]'<!|wI%5 }/uk~yf](ARTAH:hş2bV`=61yT4p.O3xv [ JYF׿~6H~^Kx`iCg'bGNo'#iѺ' ĕS5q^׃"|D'Vfd+\jOTe#>SUk1ƒgـU۳KLC׌o|(*`uKܠGmo^\ƒ7zCVar^m&>V v+A8&~?g+%C9K!`{20tgtUr׿ /0Hz~x)pVUAh`?~[\ɓфD"]@7ՠuQ$@QhGKSE)8SʣO2*o6 G^*;/V K*㔟%zlfz6'oOd:tT<:pjA,tM*GDZyKnu!^Gg7I\Ž?_ rGȘ6Y:I{5 z 52:Ft2id}(C0Mf2q7uuT8X.:3JN|VϑAE+F1՗@oPAȐ F"Trs0-P $c,[y. >QΦ?l;\ܻO^`yhlip/; PeQ iΚ'O`z©y.T6N_\)2^f&͡swTOt֬⌢U&@$m|dvbVd7 Gi-KCG xXW_ S|ӽ {Gl%xM3G0x>_` j8Vv{=5E:wf+5FelJWX`QYb]iW)GE0WCzvduLWz`<8L5X5Y!c+č26[#~kI#NoJ,0~!H;s:N`X⡱(>JhA:%g(̾.vI.ӐJz&z8vw}_:xb"-(.y,̾ыH!N 1Zd:)171<PR=ݣR^JK ma/n+gFk`\Z:o6G Oj"9 Z|ӥdATy S}I݁xhNܪ417^MA gd VcxCb}:%A/y^1(!DSn_Z_Χ>{=qE'K= ~(UK ov ˑiv'T';ek߭\X w"l> [q1SӜ1S݋k^-}2l{mQ zPFC1wh^JfvKQ<^HLNOxat]w6#D@Bݸs lg)<̳cɚ 8~kn~骽|8?1@[QJX4. hڽxۇG\m Xe:.i],KZ33݊Eh*xGpWA^NTѿ4 PADJxH-&I V7rs7>wY,>*:0HڊQjPp67"͜U7?! 0*v9vxyn'RUނ]Lҡ磋#~'Ut<YmrD1|p~9pƺs7]>r7N[󨤌6\}8XˉgXB@L`fw?b?#ADu^Ve~ͨ]2oˡ]ޞ?r߈[[caHz?Svt#zw>u)RE?«fZꀬrS׿'>@cGMA7 ,wHLblnnA,[\wS#_-alfj>Eh,]w84nl:s&#_cWY(nD ,H(;UýԦW]c[;QM]zD[rJ%V:K1 ǘiObxB"XJ7+./ {aBUn F}1%ExMDlr`^IS|kDiQ;&i9s%él2~uC٬?'Gw i[>g9Wz*g9Qj +kW<ğL iGw3,FL{~Cx7+Ex.eя ʬ dT |X]b#2\b@:h^ts9C&7fUί' Q>%=qEr0q H7,l@8gI*0UY#s\Pk&. kZ 8(Ape&;I se[&KCI7=B7/4ѬrgI*RiE 6;yOK(hH3+^ıt|脆sU(ީH^߯d+sy̒rƁ0E BYǀ&D ^ij\TquLIf] ngmW Ƽ͔;b5NK^{<~m(YHN|;ɢ 'wA]}&1B썍{~ب~1{KTC^}\b x.<1wf3&&NN2^E8-L%DB|XuByz&b7f_g W׏S w AƸ__Af-zIۮW%gG>NJ؄_$8Aϋi5G^Wf(w0Y:{Ri-OQKh ׎V-=QDkwN~6ZMw&;ED?,k ӏ_M qwO+K+PSpLбb.Lo l'Xh4;Onb?[9 a /1d]5bÜNG:Ũ_f]X(5,4Lln`OjS+>J/q6iL׊w[6 f_ヿx:nJ9{Xt(0ܓPUC00`trQeo[IupJ"Н#ib@dn1`j5*P |(U2X9|guۥ7$ֶ돠O WV,"z{1\Q)>Bydim{XY A; mvG@( + 79±NtFx+̈́tϰ%9&˵b+ +bzE:J p@ɾ̀VRNj\~rƫ5g *[Y "Hl݆ʚo؎*/|br;vgQn܈DxƌcCe$+pʐ+p"rsz= ;Y%uHeǾ{c;S3Qۯ975P 23-||©}1WSap+m1ß< J*K[InM wR[ޮV)'n5ܧ /Ģ pgek.u20?QЇqL'%l /f1%5tL?cNvr m&d'znr:3^ ]^72t Ő6y t.AQ +B8՟fI?Ы!-eIQ{uNK31;ր B x])qK?+M~ONA`jfȻmPԥkYCSi#cBɿP>mEvNVr*yI~&FLP;lgM{?M2i!:(i=4̰.vMXWGr/,w&~dM2C//:!vWP݂ FexhShK#e7d=$i%s޳[t7^0?y}ĬIm5TaQZohEp ^|rؐv4gX"*%?t _ Qҵ_C4ybp-IO"=YO,JÏ)}A`@=TU@ngſs2Hr[\C#4e:C:?:P#]a3<σVEq~_qusZf-N̂ j'DdT3yg03)/@w&-[:er0/<8 !Ddp8E5b[zw\+ĉ~ LJ AԔ">ƺ8u}a)SCuN~ZQ7 (His_(| *ۨ(RWYVkSYhfL>8DCpU4Ӻ}VǷ5%t|@.qr&6fTUf/a<͕w]JFLk1PPmb=0O%sHT^nB̆!՛ o*^]yL۷/I]Ϯ97ٔ#iZIH7oDp PTt'l*$_sH1NUpnc fJWȏAme< 9e‡oqՙd}^=p?@}XrS#aj^9VրuFya! t;A]k(h+-7,1-?N{K_A!B ~+T|ٻibјo!X|&јz FA,;φp&J6a \JCw edgYD5: ^EEMY0%.zLKd#V9/Qk.]Z(QϞ(Ie#5ۅS2 Y~z.zgVZ9s"9FF:Āayҫ鱆8;f5I$|i]+(~ʮehXr<;3yFĶZ^Nvxo[=p&-e Y47RQ,E(6@l::8^1 L1ڨ~_.#OHĀ\CnLU++j-ny8V{<`uZ:|"%y-؏;1uP>æ&evbڊM`2lϨH$3 VOUY ?'jRZ=MP^O|޴|0&*MZ%$Ds/Zz] 03u۞ߨ!ՙHn`&.m8M0k)AԄ ֨w#z#unˣ槺儞bl>Ŷ_o $Tf H'7x;yĮܰN? OrQ:yTEpBFD: PGyJ$?Тkn&hۈ5"]дZ.u\u0 s{罃m>୫OlMK`}v/RelxsyM?DCI\Pc%#E4JS *:B QY_80vHi7S!]G[4go/27OayhPu`aЎ!w '؋tSjxɛ;>;/^U5-ALCS=7% MN.#BtTx ݺ P ~ҸlJU26@+4?"ߛJˌrd %nCS,qe))dU3]o3nδ4,"`מošM \'%ŋΖN̎u+1Uy_OarI4f[ůQ΁2&[Ԁߛfw K 3 ; )Z$RVuk Os"N?]i佌Nz m,lN &f7 F<~)O;C@c7 + ,̄1neX,x|RTl.Yn$0_{~̰vG )q6;ㅱ+O~!JIaRL (p9}:| U/zFZVAѧB~2Mĩ {iDe"BHWIG%1o@%QY2~hZҊz;HءuYypf!j0z48/0${Z'38MGHA1kHŜpǑGj,K/C { xf!8ox פjC>7)74ˊߦ|ڢKqsylZ7D7ԄbJ\8c:WzhCE`JzN1ŏ.PF$؅+x紃zP(yu!#T1v l1ҋJH?{8A:y~<8uǾ#eY!xBbXh_K Ի5O85Z~XW!ce3.a4I{=wVW.eshH%ԢqDX(?r \cB5ewK$TkjPYwa^> g@.]3x|Sf$|֯_j ָ\ށ:7LVN/q$W-eX`e~FR/bm _σȒ$Ã1J->;Xф%3kw1hW䱶21u!I) cEoWoǽ]5q# $TDZu_υċ|%BJdLW_}CUszB} iWyS~+$vbh_^((XPX>).B a 0iiEyz![ }FkFzfoodI/ǎE j);NLBTw;;x}rQjM#P/b=h;; ,|5;p}Ddd+K{qLnIs'3ِ mj6/1`> _f94͘yncaNу<)2*ּ}qדFҭ#JDIRtPL>ĽJYXZr #NM>t}P":hujmD>#WMa(/6od=mFaѱVk"BRc% ,` B(}K Β7ƲcHre*,8g"TçE-V&v@\S}G3Zl>a Ds#ɝ, |x>GXq[)e3{4f ^QCj0{Q飑J)D 3ҴB ?8eqgEgԜ{b4?r?"v\g;ff;XKgݴc|[Gq-<ՐC&DF36i3lZ`ZPh )ϦN;* ޻T50./,ּ9 )6`Pd{P-ϕ\4h)Txs_`P f $uI]$%V#W"lKڟCdd (\K ?HgeS3 dVw ?莺aOZV_ ʩSx% AGvu|L IEK6q)ߟ 6^$7m=F_O(/L5v& H+=,Y \9#]Z5.BӊQP>!ZBSglj;[xFt!km5,S-$]|=)W %fC@+9%R˼FC`Z4qk}W:T8Ev/6i>XS$*$zxL5+Roext o(TdR Fh* [HUQT`ϊ:ZyC;nX]4\W}^{@~G[zw 1<Bh'"pK)S"[H!M&x㟊 qmv@~i ֞ҕxWC. 8V֗.r3HKГT\>~Vxbۈ~?t$I?ŊyCR=j8csG`fYK4AኯT'b\ 'Ga;fØ[뿄tN.[E< o}˫XpA{ z"O6ǾplarkR=iG' ] [Il'O BL=䐶sc@YJC$m*JwX>~̡ .9|: Pb7HLڠ#wfX 4\d&Q+r2MeOhiMA,~Sd-b^*GBKKS{f0 3$qSsXvj:,+.}nW)G!K`տ@I.vsDLvL݇uDzGu`M-icΏXG}z|&o<5TvD#!ǃ™BbBҲnٞZv=]xnb$21=g2oZrЗW{^ߟ~/TBLo~\^6IIYhhk >i? 1+\E,OH#![;9a! ~X47PX!vkghgv#pGN{ZldQ^F1})F7w< ܚ`Dh3XWgCBoK`{%Gt#XX Jĉ®^ju`ue ""wrlGAo+jM-(SaStN6#J HS qs]4GW-R7veϏgE|~h0!#57$mIc\V}/Ś{\tNA^\[lIiR&7<)kbcQ%XAH#i(c=xpC}6P3V ܴ]g٪JלY'X*ɝ@QNt,9 Yϱ!7f.]9=(5m78{QYvV(ХdI ReM=p#5[QHΩVW3_X8O8YT?$an]'*h6@,IC tǞn)c2^16HOt/mDyh P 3X"`(_ ¾~f(nT; \NȾ>2zl=-(>B. $T=Ps2X{/F"*ɕؐw}WON9Or4Qs' x" یT}64,x~:_!?^US#:o4Tj(}&YʞdEwAB]Z{Taw0;1k(?İu>hJSM+:Nߋ4R10@vjэzDT ҆-5Pim>.Z}i-kDՅs|m*'4>ѫL9l 9හb:LV{׺9y ԕvG[MؒM>3 GOގܛ+ˍnz1KǓ᲏{-QZvL9ǭ [_ \LiD5s`ew/U: 'ėf0Kl W$ڪGS<ߔUqލbAB U%F#o-}5. O|,j]d @jtR3uϢgi"EF]h\H!:Q4 g{Gsz=aK*Wqlv! ;k 7OdS )n9PF9+{*[2w=4q"9Ncډp3Bf% e_S_a㰉NF(g>efp"ӕ )nĺ弓9u_$7~@;uĥ(Rv=("b*n R̂IeM35?1H5<+*`ğ1 ^Ac[7 {5 Lޗ{lwi L2c&Gg!Ff4j' jO](|ZSU`q! *M˔#j tdQO|Vv?7Te`wz^/BCs1\bl%N9@ߴPȚ=ݒ.#hOk<6w$ʹj|墂ɋ!pr2lKanaslؚb ߊ`acԽV(?@kU63oVX?櫿+]OXފ/NʋjU?t]P>qf)/KR#oUmrlHz83mD˲|oDF۱{\e![ؖD@$"0'Mg*˪0lYglIyC^A ungQ!Ҹ&cbeFE|ᙄ)oSzֱPk&Qk0ϲ:6&H&w4}΃h c@2:5[PhAfa3Aie(i(-]$1R41$?m8.~~sW@.C5 r}F.54 ?r)0)'G9n;P}|)Z@UsAݚJM`bK58Ɂ Gl@2 nD;6)ލMz#S欸 `s,8,ME~:`[[)h <L]#hzl8j|y*$HPE9Uԓ)qP;seb"f"E ,]"htxU ;ݕA6Zakm-ʫ^]Uj^+&w@dzQwwbd̨ \b U&gf8mhjd­ h)܎% i , Q}+UѫbDXp~xN|OAFN:pYX-iXAc#'@[;HOy1'57Ԗ 0\y0oMC0҃m,2.bW?_76y$S7eV!b] hFK ([JIWZ ÀBe0|+AӅV:4aښI‰2mڛk<ȹ˭q]Br)[Q] CZ: #prcl5hRߟgs=3J%$N0#QcgX`)<0iYrUk;кksRbIˉYƢES㒝;&4GߨDQ@d`gfh.tHSF`OH%ՒIZxD.s y?i' a)[cg'kH}yy.~ͶSCI4g:20/}V,Iz(AlقBgFR cݧ.jv✅3]NIuUU'(٤ n+1>à A$AʏN]`lC'A{G޺:7NC3L>8F$3~G2A5XԹ{ibw*Nv@Nk@Un‚vm&׫?, /Ũ*jVnDv~!}㥝/X,6lY+MKu٤{^ 9= xZICWos]u0 9R OSxHrH64tOd(! rakXs#[;o[݊CI(CN 2)B'/||X9n΅:Dߠ*;"\v)S7SiQV1naˎ:Ƥl1~4Ғ&ڽ!cK)tKm6Brϒ$V!*AJt0ޘµ-u 얪0~l6,M' ,ړ(=yvP2窟Lk2*[QՀu~6O=̳,1cڻ1GEwϒ8w$eXmTտ)?G^U0\ف&jCP]yGh猓~wOը)ٻ{h}<5e@v=yGH\9:^Lgg.MQ`ymys^UЎ$BQ0?6C+ArS'li0"Dj=jan&lݨrcL.;&F^Tn]ZJKгkWi$iPd_̴A<*PBdуAǢE{֊󿳉zz'^M~hrϬTKi AR*9bs1UHĮׅϏQVsWDMWm_`;p%l1s:0 ٰbľ|F[Q[Ȇ(yjFe\p;7I.fH!ds湧xw$ҕ>ۉ5@[)Js%\%ue\ujFgJ>y_F2R1' mZp\zXr~+K׹ c6WLqgǾ5l|>Aܼ|+W3bob") Yrp%ma6gIM} =] VF)3HDX|QK>ԳyL-X _NSeyF-P' [Kqa!Z4\U~"@iH_L`+D]K,I#o@og.ez4L3>iFK( ܴzu;kks2ɞ>h)gmXl PS8\<B>Et&j2g&E+(JCa|yp̓dVp(=#u~uW[0P3~Iu$̯S38qLwcM΄gZY,_y՜]I'!`6Am>a g.`1JԤ|yi7JdA7A ܉aO+ GO.ÿݵ!,hS*칓ZՖ} 0;dn69+]Y']򕮸ule< op` Уw{b\9W'݄xjOw ܂W\+\"CW5w `Ec@VPY{vo~z Raea>6KS :lTc~c+˔gZ bE\#,'IOT}Vp# 7O=e|bWP^q0#T˗3/(?K,>^+V_s'4Cw.<1{ŷ46DBM{Sol\dlC2\p؛=BMFQ kW0L1zQ-~FéKN6}x)!̚<7%Ei+Ŏؤq^j1cZwZ㤪r3gVݾvF^738E~J8 ɠ:ǯC5_ V,x~ J4uoUR WăHWnUQ1.}U'AC#EH z=@O쎰x:l!JTSK#u!8݅`FW8\T[C`ԷgT\d*i5d&0񳑟DliCK_<)|X㪛>1rQ/L)Un$awLYB}S%FDzcdVʜwԹ[7e.H^>d ,R>x/X#]j7ۈ?zGe_0ؠ2JDgVeoT4ga<ܫY0GZkc\ 'S-a^:4RƌE6-%D+>gjm@S<.^-wU,ll*?!׍#V`C&_lRhԹ4ʇ+M9FJWT}IQ2Qh1S:䬠Bp[9]]-󿙚ĵ-|.mH˄\uA>+vᩭŮ}.btURtB?-ZѰe2}u1% 6j|[g\O9~:%E4 *=J"+\rH3jJMNG7j=g [챷oW 6^xyCBi#ZB,`pb}sY:cj:{;0 ;W%?b$67 &Mq~NL{֮EjC-AcI[MXu`BA[~ܴ) e(0+kB`&:Wh;`^PR ,5񦢭HUDti!3BSWM1{=ƻ oi,Eh >3$Gwn4B];uPevT%Cv$2!Zvhc2Yb-*Ȧ)2}Wt.t|1b%Ԫ PMD }4j3܁PiT4Obئrh;R)V`0qA 㞅C◖5_%񠘵9}N@*^tIm,_O;B[ uvTP*vh7hQfDD̅h"ܝu\#\,Yx]zuGCHa! ƒ])ૌR}q٨Y} ~Ж暶C8;D. E&G⻾M H|]߭k; ;uE52͚YK/G0b^6VGNק= wolKqO|h( ; " wFEUk=~]78__サ/s=^!u=mPnp2eL|88"nrlp*PMc ȿ0w3uL[¬HlFbʏ~e|>Õ hR^/t::vi?7b$$*uEk6զwGyC@$*| ? m/"xC^yRrIM|/v`SnTQ*W@9;i/阜.k֝N:?++<JAtl]& oS/j+34a "ݚ Vs@yUTE$-ϺuOtn0d6$7櫩ʇQi!(R#.J<V4 o\Mqۗ\#Uai+pD^QTxRBM?H"׸8kmR!vIp)Yz)[NSEK?ؽ}A֯T .!1 O)jp/vcr}B&m!م5*Q=a&UZxt:7"A0F:(HPuq&)Scp3Keyd])",d3 6WH:gwYp ~RG\ 1Cf_VmdKk(ц[47TD/0C+|cr>)GvRCM!G ] =_<Ϛ~tsj``ah꜉棶>x`1)y2֕K7? @\ƤC!lOa'GU?H,^l_-ѐ7S+R_=)݇^v]Z۝gǟ[; z8mD2qCKP :I*0>FI`z_ TˠDDEd0&+@b~zjM=bBL(tW >l9і9"rz>4" ;' gMW,ZE;Z 䈚< r`tcTp)yxhg6+t`Q0AP!#Sj)cL;W\LVf%ۨua+X?#P8`m-x,qapNh n`qv g(] 25Z¡U[x!}#swKN7+B bBkx_ z8]hC*:'Dt9y2;1z0+$\y@?Gד-Q}/:J V.nɂ\f ߏIdT]+$uBqVbTWҝu_m&E "J ,˰*<d}KˈlUIp(u_kկcGA'NwY4jiAXòg4гy}T lO7JϷIC'5T?f`ƕ&#;r;[[ΞʗZ PO3n.u`pۧ9Kq'%:Ws tHm_\*h Ԣw 3^Mɛ"u^d04IY~ 2|0o0YģbI$Nd6~[t—;x ѣ,bĮ؟j~ÉH8Zxc*` :qW/*މOQnmS<`pB2emwbwe{zirT:_':ʁ#捃 ZUou aDGWKsI00Wa*^ ְl =ӻ[h/;3F$Ǡyh BcR۔^XXlgX&i\U9&J- lp9){~]+PJvWi1,[P 07} Q$۩8=kQ[$pe]VҦtW}0C n49Pia7}A݂s tO^A|g'3tQ'2 ~(ñ,oC*@@aXR,uc (FMvt[~v998ƿ\mʱ fO u 0?B-|V`EcT{ _J>'rA /19>)ŨױT4Y(#mo8Rk_,vNt*f'T@{kήvc˪D{ׂ>b$M1h nO[6ˉaMԗ/ALKEMƦC씒+9V*|U(ڜ]F$j`Ir>bȣ:4%7Y4_(SnķwnwsTjn!-{ 80VNb!|azvG.yYҨU|}SZh|_r%>[dD6]ehKaPDZɃP_jA98)^#㮥bC -/HW񹂘o3:Lu:>N6CWv.́$-BQtuNMen@Yz@z#[EW&/;w{'BܾJmdaw T[am'R9#6 E|o3OGLYbiv^$NZC~`{%;*Ta!8n$rHWu ~|•F%%uQ`iozS=B@s]]6o_Ҝ`J@GÃܿr ֩ }`#Iu]9J)dЎ6h4X_]c^mp,."jpf85( :=cx\-U9vOt:NehV|ecW΂:1M2bim!Yl]vhL4~8ڭ70Xuf;C]7z~85V&$ٙpd.^M[l>6anח`izSҽYz+J|aS[̦U :Op@C`oK 5-`fB.]hGV (s(bE'.V_tMg(>jj;O8P-"{=saݿ!;8W.ڮ.ewOlX$gP,C+kyI4a9oǭTAuGpX锚B:sƪ 'G cU1,%Y& zxCO'-B7]b*Sjb̍xGӿp\XFQxJV5\ W([i>eFZ0Gy,!;X:`Ȣk*,%;s 71|hvvfY/ȟ w%]ɪw YT'$)PW.Xz\V;01U0Y^DuөŜ'jpeO?܍=kG"l>xvZrʢl,s@#cvݴIj/ﵥCk%pgiO_?WvyP" 9Ӭ20hI/ܫifK7Oa[mLEY]i_sBr+q-V]NGT4r[ q.t^WL@]O(:=[.vf~upm][cAGkϕlkZA?B1(`k'蕸Q`Ӛ, 9hUSѕ-70\q.MgY?rw?"Qs$wϷUpɞcb?2N1F=r? @+J|bpf/f;y3|][w)W?d͙FD ͬjDG- O[?@悢]4 2+yzkP"'K{zZ_Ђx*Mt*W?F<S堡d>Nib^ ꘀh;VB]ywCcLh;O9zI|QQUT+м(=8j-f["}ے.Rn&雽:Dž^3aj/ѲãJ﬒{c1_Y\Զv/0Q kk1s+6V- \Řu(,NZ>5'F%&3'ԽP0Eauodz' Cح#"sېp LTīkBN847 rߩe~f/kzA`agy|lPⳁ4 v\;G {ֶ0>U;W2;]#Hz tL'NӮ(,h^eB84+w :4G@dvx?ߓ$~bہߔl 78D<ϲq*+r ϛ0>FXj BF%3_WA61Uo󲓨Mֽa_! &5K] 4Pplq̂4*(b]%n%=5iFl>;HN팜6 u|ܜ*gqb}`bр/q!'㫶%Ť(hd/L2ӔY8p&lM@HԌAl~eDpl@xl ~D"Յ+@h_| +%PPD*E tƠۺR{Ea7)J;n8N 0JDJl Bl$TvD^ mFd#ڦd+orϕԠMAGyh&d%k[-Ẓ HK3e&#C"l]S6-JI3:ܨ/g𶛄Dt.~`2%~ %I.#O|6+8OYS@f4T#:@&>cd0dX$Ky!w%j/Øa_Gۊn}=DY8([It_J5iC gqYpm `aU196_56PP]1AzbnBjKQs %j6OJ:J[a!X6v "Ȼ0 '"$=7#%bc JBs`BZl!bzC`dWjSBF ;QXQ#f~x_6?QSŗL2D9Hfߔ<74}:mmh[W 7ujb9gמ_g%_qɉSSkd ȟaL_zW*(̲ۚ eG6ȟ Ĥ&Uqu;VqjzD*v"HJ`ZBݜ Nr2j^,-OkIǓ5XUBI=H?0(NTs,UNIג:;-9`͌Ț9<1D ɿ"vF@6qh;JsڢCbŵ 6.~ d=%%H댱 VFheDs}Emؕ1qr!hHB*}4/Iq۟Y@8EdX& խc漈jǤ;>HޙڏL&ȑH?1l n1WQT'VH [!ε0bM\D R>UfU m^/u'JJ ؀wL–xUrnj 8 3Kd8ن9>]_&+*)<L)QD2n-P!Pq}Px64x^LǮGVU]kfgO͋ᑯ WV{\_8wRX&V$wz8*.J PAY@6Pߠ# +^$-A[3=E;-Y|zheoz!y51&k9=Xǣ'c^K#D筕)!tc! ցJKgţn0/k*zPm7;lw_o1OR峭,3 WMP\d<_&ɷ٣oђZJY& gRZ7C]_ŧ>G elЊ,5nhl=ax=&[̄bn\N/:cJ:i%ney͜Ůˡ*ƦCOJX/G8^q5)]~aP[._iZ]Sn}6L> \{`פ*<؛+Ԡ!@Y0_z\XE 9&=pCG\,i߉^^^ )$cs%(fュLr; #@q|ߪ~;-]%.g{IPLg''@OSi[}ԋƓLX)cwit(`)升ɰ W$UM|ޫRkf4|-owv<=qn.Í?[|SK f,,s.#KjZ德vPUQҶoz5Nt@`ѳ7kp̐.fb asƵ\f|TeZ:BJASfO0`ub\:c1 !.0,i(ҮxYgG3\9%ܹ$ |^b[/$^#lXwueT>AVP(TEߚҕ'^]qqƜ87V_2of'iFc?pu%S-08CF' y8r*7x1ATRݡfB䃼?I{ k@)nKҷZڈd.Elu4zN 5e ֜`2 z~H)_cɫ{8{h}gRH Ck-L(]lc2-8rATN2q=>hG&[- r՚X['PD{FcsW|mC7C )Ns&oQ~kS2HN{PA9kh(Dy {)[QQ 8leEя;Ȫؐ=O}5 zȭO*ka]qIسoTC]6"]|@*2yG;x.[`)\"3T5*tk9/;F ;\FpiRd~@+fy晈Zoަ@yuÏ B9'rU fkg0>ѮFC?)SC]с,,Sxc<.\oR[olop}=hļ(F昄n{^_,BK#]w6h>qdYDdCM7G{cpbNJ3FtBCB`IƄy+gյL`bG0J^QG ?2)dAGeg̝µӣ c+lxdge:& iǸR - DB,ep}gRyxo1H@xOM-. _754knR>n{g"vrp`^1o 텡#6@ŒC**=˭) o ݆{N;o4QLJ)vV8搠D< kڼ.O,",Zj RZMۈt: Ħ-ƉOcSқ'_ ufo&lln]-KЗjCeȚή3pȞ!~>8e`}p": Øб hd^S@)>\_;y4=NSX[*e1<}zBJqu?+ڣt͟˄B—P:7Es;زsJ[<҅W.,!˜Rs1m.A}!1nC6(% ^})CH*s[63L2VI:HƒߪԵ!KEel,:?l8̬E(~*6/W{8]Ͼ,%7)Q9:/9BEf>֦١PITEAPf k5!ۖa;LQsA!Aeq#6Z<sUV[ghX x^۷ 9!F?uv " xփ#WRVK*zH]3p벊'Ido4CL.8Oku_Wk $n+dHr[dQ;G?un BzƮ@ct.%/~{Y9VWc2m鶾ތ [g#Enutbn6S:H"O4h2]VB)uc߇㫩^q%SuK-؈ٹhb΢@` ^ֳjL{7<1eGI]%»Ƈ]tkЉH/Yٯd,p > C +F`!;  *fEOTW^vD+}nz/MDQԭpuI-S*uQm-fb^(aο GɋEyC\a;gbv ΃Քᯡn1+E`q@l9E:'>fY45?X}h'n:yݯL~lb!X` &*euK/)R֒B;^+H߲~ ɆU,g*7șGreMNJ FZD7D&%P9K/gH鮌3T.S17LqLr<^̪?>P3(Lh>^3aYǺvS9՝|Qo؈XOToAŜ3oh_ÉPEn3cT2~1R1CEw9ȫɩ/NP){ɤ{Ene`Q},Xu"}z`~rЪoG=Ji@]Mw|^XwԈ58<~wOK eDAs麠 ߑհL j/マs,l`F(Ј*P /$˂)"~"K 0hHֈv[ms`{_Wy/Pj)"`C h@ f9aӌT]}SNi§åZT z$JIa(*^܍,1f)F=7KsFBuP^yHi v2`,8 `Slak"'^ژ)s [9lEO],xL)Uy< )}8ZvV_S({;M@Mꖰc 4ֳb<( TQ6z4 U2UБΙMNWO6_9Xr嬦Y2ID;dZtr_-fG;2`!s'BT pێ):il[l,뉁!s&5kFkGJ{ęjN.mj6Q(=gyTA"|?K6}riSwӧ})@_*[N*Rn t\-t1קSB^ڕAB蕦$9~cYov?X`+Z 8t'0pna^"ēzL /~נK>}fɂy #1YVo/Gft5%ѣFDyia| j̸zk U=|r ?rb (ՊQBOEg=bͼSEY鐼ӗ >rMZ7$KLh2g_? 1TI&JG*eGR|e+̰8zU+F8XmQTrE<hDLg_YR?z쩳BCd2D2O'zU*Y89[U@ U~춄u"Wѐi WVq=V{{aOkEkvRsքgxqЯ̞}7#`񥁜./iѠ[f1,=&̩x\ f}к=2m|+((Pc"ݺ}p`V}(݌ 0C isҩ/puo+UpH еqiǸ`/z@ݹ+e]ul?gꐁ4%CyZ;W%m8(z:)A{c{5)T37R !d%A ndw,#3|zRqm44z:c8La\lZS[41wliC ޻*Y4bIʸõm> ۦ /=/ݽ"*f2IZ"ZJ]|M5HY!O)-HF?'ڀMQ"t𗶀]JL, ޏy+::rM"< :N=&\DzC?iR 'g4:u nBF QN |h-WL68 -3#,%7lO`'0ȩ6%ʜp-~ }cy_e8YP$/[hAhBJSWA`7Z_=茶όi9d`Fp c@\ʨsx[xkf7UeYNo$-&B['v(T#:G=C,nL%n$t˟Z뛷_0DX@WNuicqܑS|9%ZKuX\Fgd I7@ڤWJݫnëĄQaeК63Ms"~jy$||ek?[ȕ⹖mkk-jžDT( w ?LlP7˺35τ P%r*OPVf;H)uƛ=@ Lam]ljI{#~wa & #Q`|HCBkO%v'w/KDPT~S)ДwN<Pq& ^"_AׄDf!18ęߨ(ˆ+_TĎE1,Mn+{.j;jz;(;rhҕ ]A_8Uz~ٕ#1޼Fu-sѰhF6HvO(Fм\O;+8ML 8U&rng8:d82z@i_4Aц SNa0fS:BY'JrT/ e+P#o|'ǟ.S!0 MTk)07N] 2<^Q&D%|bKv{4}x肍حmilHj*xY&Y_6hV3fiAI*һ$=n}߈? Ziih.hˑ"Ox,BL1C~ӹd0zyo1^d4ުBccvȨeReqRCd~*$3MXDbKf]*blx'vE(>Y8Z.5h|NKݍ)%6rra3qg?/QE4=[W)fzMJ-Rn2t/[Hᗹu$1X`f>roʼnF׍p:T֏Ov%mlh1(Qd]!Lgy m Jux>v4L\qcfFD~=t0#W2*@kțoW8.Rh6J 6RK6M5ޅP엢N z>s>+,l1Y ηywrqid`䔑, "-[`^eĐ9ɎQGtG ^bEֈU K-]TރԲ)Of:nwf|GϼPZ<3[PE] 9SPw/ɝ ]ŹeGCQ8{-Y'^wqM2}k>LyQ [P )iv-m+rBFO9 XW,m}BUUF3Ik-&\lQ :Tajn%W[*; Wu#'ٖ[?uXKN7%C6TѨ;U&1) X"HÞN;A}gCz!r9V2q57s9ܩR'wn%QxTX6AVxžӇAjJtպc1_, I6mqv×䙬>eMa1舠+Mgre:xQ@(JZc J[J`Jak{C3KUHQ-7 csUg Ԕ(SdGo揟UQ!O&nY~Tٯ1Ѻot[kis3@L-ˀQd)WVAbg]ܸvu?E-4OϊIS6(o:>ͧ@1AojӻIMn}ip4HkȪ},od^X1$$|L'8r :bykb^tg\@Ό ^xskVnO4 ~(^&3'JJ=]vx\`x;1>AE{ՖGft?gOJn"g %#+[JeyP~r~#-39**HҎƌ.n:&bIX*̾hfp>Y7W`Y6#B񽨧|L^s*pz8D[JvO0P}z6)'.!qE2qW2V&G'9W({<</J@*d%=E;H!ur~ߛLI?c64rZnagSHq+7+} %Lb3ѻE4H|*>>u3N0Oz[8\ ǧoP^yMS\qT&WÉ,՞ BkGQfls} CJ5cU 9u^ ]/>V4ʻaj~F{^#,w,f\ ?Oe]>p!>뭚G?9~:VqbTtSr#ܴ{>4o˶^u=CWз8%D+հe^X'm̩t'se?{#_tZiB2A/]Dܷyl*f*&?)=Hi}ݚ[lFgழ6Ǚ˜#&fr.1{30Xcl띤Q\g'Piu[zYP roL ˴PJ%w.4}~16j i(zaE=>Mt&6POS0L+F&ڱFգɡi K/zBSns|8qV,Txg"nA^*9cn@ݾ9f]`YL&qTzLooDqSQc|mL&bsHKw.!9YHJ&8@<כ10?2~`OհրasA&ӫFAᚿҵ59m ]ȕoΎD| J9OC!@2kjڎ|k~ASQwU3J@A:=D |#\=ZbMMT-E@>.C9c &q+m#ߏ%D'NVO-%2 )+;rE'ɒXmJ4#n~ QwWCdqe93ZUobAzPȝy-^a8e5PQ k"@)+m v7H5%hBu.Ņ0r:(8w) +rBGFu/|+#sϓ BgymSd`s`Wx6,ۖ. oPpEŐ n~zs:|;$ wuwTZ: Dh]0#@U{i翪xT~]T)Z̈́;V+ hIC F1mV|2 Ize?.IK識+^!ds@Bx A[R Ph]B6uhI  pc8Ɉ0(% SA']瞪كO{'7M~^1#쐼f w֖#Og]"ih@KPPSS^:fwCkn²wZ =iVKC*K3Gz 0Fߒ38[Rcȳu7ҮS9=?ykOOnz+ ϸ=IAѱr{yyZIB(߽TALf<0gtgG>\mϕf7KMy~VE"z*0)E2EIOY kKad\_EG3$;@9<0/aE甥SŴY{}r=oW4PW5/*ѡ 0>[St\ OX[\mZipWʲn4Q3;vZk6MK7 #W>U0[;,QU-P,(3q70lu\,1<A$\6-BN˱GB k~d05o4CW4g2 2yWyo/$,W}5޳@qOR5%IҕWr( wSf'TC=ip-pb 1l@$\oUh4Rg JD/鳔_^T@+2L f`ь2$SfDqUszfŷ`zU{`G k/0]+!ƓG;jjZfZsiFY:ik~}V@ا z1HTcC=x͝3 l}В+S*k~}ls;:{Lt碠0Jei>[$jEMIxXo*d~َ)=H }s$s'SKy>jOO;H@EJQP9>Z'I\+`8/?](\X()嶵;xᶦXQ!(|9 Fy3!WiT*P33'pm]Ax^y$q֍C|]<dB6[䯡-v!]ґd|b;G[iށq;2?ě9CnP{~KW%0-urPiSlrGa"s+m Gl =D`- Yq':eb6FuEL\u\Ȉ7e)NONc .O[G1ű57)=JՉ 5JlwL]5}?Ӎ!!lsk& rH6z#oTZJRI!/=YL/_?%u{#7FD*n*eAQ5/hs)B^p5ڙYJ_R5hKro37ud1iD O y#&%*I =X_u:W*_7MbH~ΐ5ptYkjf-id~ WP1aȀn5wzlւc (BEv0jjf ~1"y!~?- kuEVP;a)Fg -dN\93ߤ*7!i`/Xsoqֻ) h&{ò(CHLY:qo>Fцr|fl>yiFERT2b4 ޻2G8c:.}C\n9?T mSl&tu(-RHVTc ([R5*heO:5uNnnL@"%-bZ>8ި*HTPKAa},6׼ms\2eWKѝvǛa㐂ZqcDlXm8q2*D$HChFAl''aj;,(cdتbn~[flRjf7tEkP* J|]3 =pG>@H]uK w|.ْԹ]Yb S|k6GSjA1Z^OV\ kF,G)mm* jxpix UBwtMC[ nX6{=-ѿN%|T՟I,~RKA4K7ؚ!ߔh A;!>T-*}DQSW䕒ո"3[Ixc\ u̾.RC ACUQ1ϝ"a!vÃR`)fw3񗭚݄ۼDl+b$׆I/&H/@bzDنW'@3 i 2^zpo}Eg,7s&\iZh{'l6>ND3?D n;c.py1De<V8.]_J [KոH5ΠF?gM-{Ŝ;(8*``7Fp&mE9uOT1#J v#xӴq|^[8}t"05B7['ԫ'p,nXyuE]C:peaZ>lL7@gӘu=ȃZTT>!? g)LOm{*o%YǭUi3|kV_ AY7M5lN+^aY'ƸXR;IVRC^(?,Pu=/=ǞYiGOQ'^ri?Icn˯oȿ"B/0$7ydc#udrq8uB.BxtAV6n{bAG3}2$To{gJ4=Z_䂁Am.[>]4sYx0j0uC^&@q\I\6.% (æ pRt}QO8cS:Ze~TwN%6qZ]4wSM3;8H0o<wL'w0nG` 's&E_56 (\_[ Ǘ.pfUwdlfCc6#Sjזm@;&5e97^VQÙ #!8ڵ(ՒSUF g5sUa}0Pe߰iDq-L4տl]g{_Zfh]&}=uxz}_>gSw24O}~wX'.su|DLh5wZ9};~9t4Gǿr.a|^ 4%2_O4Ҩa@ltzبm E9 4TGD\憎? \2f ,bk% XpgGD>#Xxq|K{}Myz^DcCj]d^QZmK14Ck18wI8wVK\`}xF}mrS~HUJV!c4yƝEt.I ܴianmX)^}*7zs/gۚ8}\H $ZmރnA[дxv:)ՉdmILϰD.mZ1<x֫*# 4xh;5DӚO]my4]eRxywA`)^6JݳѾ=ƣԎ#^_ ɠ]N#1EF8@&s1ngo+nh 8  ͩ;g'(p2@5kHX$VP{5u.D}xĩ[Q4b3*jMXy@ʉWZj8FKjTphqf0ˤ\Ҭ#|[x>,'b8Έ}np@a\@cUjQF|!Ku\C߯Zt&wEA~SIɲ{끕:xcۄgROƺ%dV:լ}*ٜo7vk`uaŵhߥB~E5e^t9IZ" rl[BCb0aOM6 tIY$e3G<-&SD^A5 B S:^!*e`)ecЃ;3L(ƸdQav8*£"g-nYgVvf~?=k}o(R V5*kdUöɴ/3 jnYZxKjHGo:PmVɼ }*B-3#C$(L?wZ]bI.@0xOKRmAAE. _ &(w;~+&~75=ʗooJk/őG[_v" |6rUvF'p?,iZ%Y`g HwҠn*p.U4݉O=`Qb0wHBg@ ;Y.a%!XGP8K0<+#3qV .Zԝ>ލbO7`uCnkĜn^qGS3~i.9&=@@ZXv]oj"!޴_ZM3y5_l$AZx̓Lqu,I|HV> KkXD%: hc7{1æ\#K_Ϝϸ `RTH(e=pGEnm}/qIr/ ֮~b2؄|!'m.ml 5į}(z%Hǫp>fj\ՏL:`ȗb#$M{O̥@.t&U:0UDL>n*x'e3oy䯥-`p2ਥfЪǨF?n4.C]L4oy Ԇ\nur~lw`ex -N';fr" &rCY,6g"7d5F9;/KƘh zcgKH2];Aٺn2wCUrAHƏ.8vu"J!R79~obwA6"IN]o<1]\T@2%:4_dT mՕc,<ɓ^0w,E>Q?%r:K_9ghPO|@՛' s+T,GɗefE4/ 첰pC/=[G W(٭#uuHYPYx$yo]slBZ!)9';d 9v%JIj8ҜDT;ae0'"ڇŪ0 n {w5q &W%RuMpܧf(^ ò#* :G#a.NPWUUkӨ]zi߉{҈xw_\{uq_ZE|ݚ蟄z?蕫Y%Q/@TM4+ 24-y^H׻]N;!-N^VhȊR|,r6E=_e-M3KA0aI? ] ,wP]LU.Sju4i%w1RaR&\ qջV.﵌GYMΠ:ExepT,Rltƀ[]73(p;wQZ)Ex݇M@TI桰j3]KVmpNHw 俕tr=)EJ9z[fG=N>nx:o)WBV/v=^`_PJ; -ر_?e> Mt-.-{hs]`3VrYogy2n ;jX Sfbe֡ݟk,؉ :n5n+)a:BJ3_AN8@U;iMhJa"酸7c6s׳[e6LwŘxP.,kƚ`=PRS3I1\yХtU݈ju G KB):(nQXg.Z6X G4i0CD^ >sgh*=Qϧy olVߐ؊│ZaE~Mj.vm]x;flSF_5uj!)ݧYf6A2K9(oOmժ>اrVHw:!_BcxOBzg@Xga89N7E4ObOl<9D1hFcyhDS왵souO`m(ǷCb#jIyAaG<? 59F-??ȭ]:گsr-l!m8fq3 6%yNJ+ In7TW1|1N C T͂RI Η&}i9m9:{ 36}MAa).s䋿< _C= ʼn*6:3t:ZչlFC*3 6v`'@v0'Pod ZǮà^ W0>Ew{5cy$;vod\^pqxP1ULqJYp%}*7 s=6A)B=Jna^R?Ru2^+3'*}mU64-܃9ggm cZ 1w!Dr:2dȮćeL+lȽmRӞ4>FmAUI_]_3,Ȩ{IaRg@FmwƉov&cY*ʮU,*}@ 9A:{: ϭlYNغ\ڎJ_LÙ"Yq-S-_٢* ٿ0@b|4ې94*}s|%\`NnGzEf,ee \O8coK%bg aBđCx (Ga)Tl;&IXwAxHz(.nVI6LAOeҔUq/Tm+|nzR,f68bWnFzXݾjv}Q̘ BeQ*;wlҵ*sOEE]G4]H`A*5MpڋZ4.4FŴ3zׯg7o6$ۥy#WHy/^24^T'_|8¾g~'*YHWI1L4-7dȨ-0Xb^ay[fP./>8Mz,Qa ?-;eUg̵9ӑ̘2pT05 %}OzVx28Ii7 e 1# K k:UlP|_ 4ٽ6cw2\ h)2f;2yXdf6Fa'z܄8:IC̈́JL;N +v: v./v7ab0AcY37eq?_!8elj^{.4'EXvE3ߗk5CSڮRN)i$?"l?$.<7l 8,УN/q.pA$B&9*Ŕޣf*'Q0rM7F:}oLt!kF&0,Cqc>l4c7 +*rNEdD鞰KGEL.o4 ms#@Lֽ3qЂ^0dJcf(B&:s4i͏zPj=0${ ULrgeW: Iaƅ<cT͓ZABf-h+r('|I#&A蹊seη*"TYѳqߧubaT8|q9[仿Iewa3 /y>І*ѿSU"Y)Ry;E' ȴ">hi~0?7rKd.R\Xtp*F = 7̝h*pM7rz'hFP<ڽD6lTۇ7EbHqA`,t Dqڲ%&,C(1F1HfVJe$4"DMǧ15SzN Th_2w߲fA3u$E^#9YޯHOx%0p*l!Ehi[S\H{4c@PkՍ%q3#\N=DԿ/2RX2Ұ]0OZ4% Pp0:xKr< C@D;f.O@ {=3NPH%DoF`Cuꬔ+J)8 Jg_ZbTxqZ:3d֬4žJ=FVCvt=ZPk_˩0137G߲ą8GV竨 ܳvP|1p Q%X8z,aј]w5?qx&P%< ܫ`)_$[itoU=@ \ ^p;*.DEXŤ!bhTLuLd 7Lj =SaJ&-e75w]$ZBCV®{m;;aw)Q4+ ^QG*5{j k噂o*9D'?`m1Qh,(5AQ+«!C2wMB䚜ƫ/q_,_%qeR?ܱ}š\LQ ]ޤ\A)pÜwJPSyd@%0yz@)[vUPn!AzOb;0>!^\Vo&qxI{S 8TL%Ah z#,7gD*dաFҞېKn^yCe{>IaG* %\YTv-\dѿ8RJ&y"Nz8#euKG={MܲaPׇ$2q>鈧^wAQ{TL]K3v~ˬ~]f)MPxN~yl`k ;\3dSdʰd)Ò 9.c櫕yda<%J`Oud`I+yvuw8$`DkI2[eX<6Xi?{wkaOkPif(N0>4$P-iYMG#F0#Opߊ)y洪QQAiEXK! 3HN<|?TOTv,֋5a:;зeͫ+t8j;)BA& M))zhndl"9[sT@TtDy9`0${ܳ\3b`%Q0h`yzcgq0hskC"gg{YS\`lCV{M6Z@p{VY1%=7GBX+_6.6~—-s:GȚx_t3T!s]"Fr>pcw/"!/A'E(*ΰw`YͿ_5<SPu;W ^֢L{Gt1 5YJ}0M!{E0_ r:8o$ eijB@KSi%R uK^1"W?ӵ!ږk|;6C<" ]@ƾ77 J@-g4N&ptpK;F.\:A *8j)I|]X4"Y2ھ橤tF@9T eZ2*fgvը0Sq)C~&'vlD -Ǯk\;[lq :0żt4wi$^R#kFeGo/,AC64Qv PqwB0e:w%3u584,sKєMm hw̢Ug׃4C=]l0'A g_73E7>NtD+uPVsYv=[`(h\V'"OWERtOBlYKD|)O[Axحf_N!|=6x!Y}hP~܁ypĆ:d L_aoz A |[}6u۠d d~t~͚,Ekj5?&T> aOC`+u/0*}8=@ j$ShR0XKM+ h3a!*AHաl+og sF Y,n L;g{ ԑW]ݿÏ i=Np>),T`c_B?gx+И)QS{S=T!d**:8Z7myKa2]e3 ]^\f懱AZ+&Jp&t_ȞE)@GPY<(gQKP_JD ClyˠD9lc(r\xJd~m vɢ:By9=kQYFbCo3X``\9vRHZh_P}Ue.[ՠ^m=o(Ԡu #cNj"zwM\b<C⇈ 9`]s|2D$ G2ͯ>ߥ{!^:kbTғ# oEĺHI >.dԈ sv"1u"(ѷ#vʤ{+ѣ%5-EdjM#"͕!bR,HRH Jiň0ϕxeǞ%=;F]T?!IPTg*֎fEtD<5$'M-')Nd.zm"]P(tQliy7},Aj_m7oR%{qn.6ce7;>!`mm #)~D<.L\#Q^4`v:;W0uvP~.5FfG); v໴2ٜeflfqIHL6iX+u:EՑ=L]?uB;#篔:eE\wAܞ۾=>raҮW8NA&%;EDf̬|Q_nےL˓]p+ne|Zb2x4#^Q4Y2aW;TL[8R۾ܒqGq7_Zp덴G;tقj=fK=B;0Gr-yr ¾ 4[ QuIFoB듦=jЂHx\Hk3;OrOB"O RERSnJ(ַgkC ~yvey?OB}&Z2lх/Ho4X)+}>0 Gs# 9> J]'!}7EHW@JFz$ROI8YXA[#h@ixB'D>|P.N2a"4isw7Dv[kgLlվlIW 4i:ZX:B^4+pI"U}碌UնjM&)rcoi ՛ŇV8 2)Ge9Sz1_D Nܚcdp7LDd l9<Qe[\vO+/j=â@v⾰N/Yy fbʿ)nS Z3onQ PCLUh4tw癜 VH/ӝzFdoWx:&V ,!lO 785 o\6-O+{5UV'JiLO:XV7ϝ_HM3n,Oh `jŭ5;;\N] qeasȇkw/3pmmtp-_S5\d~o*Q6>KͰnޛm)MjV"xZH虝` ۭ( 樓&̖`ϪwZT/ |=/0r&#2)332gҚU`1"FJVҗS& ĪoO k6уʈ j]1Dz,fH݊Jrj h.dn[HZ̀ẂVkmǪ "G /T3J!E5e'_#|,ݱ_`Qn/M[?=8wYuCZOa}3C?e0@nKj Ԫ%΂o,Zgd&"YϨUUqh1ȇ _@@- sOv-M(AU7q#EUI'42V֬%b? ;zIM  )@ j@0?Ԓe{eIJeӱKB{N }TFXN+c\!nOxl[n|g"6VjJT2,Š+oWbɵit3Rzxù/DE MVݾ@H}21@uj6ȏ=1K:bn @F8h|YᕛHYSv|V~ j>6k@Cc!3 &ea +nṼs>ZbFb1V%(؍&^DF= xp*?')G%!`Wr9FkX<>]S~ eIXmoAҩ>OkQ :!i[^ ka¥N;5nJ瑐]_D!v&\ 矫s4pbX ,58t%Zj Aװ# dˊˡUZ+QQFj-v/3+T*h U2FIBOV3k☗ڨ“nf>z=ϜtͤB3[~Vu k/~lًrydqDo:#?:FI_qIyY|:J?ucV$;8TKX ˔{hUXt  D憒8@ %AbCNKRqr'#2`g8 K&Ԅ%Oɵdi<:vkw b>[.,#BZZ !.B;Rs(Iǫ4E,J)n7mGK6oG<16x'.P(Hy-k=e53K(KN3IVqq_*s3Cg:mR [p-:R~PLp `v$Odbp80TYR{ѯbbN#zV]X 0,gaC.@ON Vl׮ׅu6 /68B]YWɶ,{ YLANvGF4\,uLtC9}7v"?DfB ܪ^~89KߢvDUKXo~+鎥]@ƏPkf`8~:\xDzd^H9EF&o)U'JQ4(s7DaJ#Xy |Ea `KMDZ,jsrA~[i۴@¡kj66[&p4I L&w܁>+j` Jnw+E-kYH ?g渑LS[A Oۧ6k<\wCquP3aZLPJ'3} CnGFZ}F#KX#7.IϋN-6.n?%gOdClcW4ʊEB3Hމ B}78xr(#F#Dxb{?`xnpx1) '^y!v-Ua\X /j:<n}l7txEYszT̿9D)SӶ{BO;x=%fHy\,O{)ϾC)YE4'Re@Hi gxuq=I4< oaOfH_^vdB[7"_اNMnxjO'գꆱjE2Se] l4OmtIR /O=WRuXג ^3v At6_"v;do,@œ︍( ?aS.nY곘fPBQII"cFyLR4(RNM%M[ŅφZ4ĠsJV@4 k |ChnG%4)b|732/mB3hʠ T%VsS]^y,M=.o@8XҎ ^:6Sx[IхRܼh9/$0J6eT<:!l os:Q>VBZ|z {B989Id2+ǃg[ &[ ƅ&=[hcJ*G) Z~&-FhYM$R *J'.Z"Af5YKk ;?M z"_س#쪮Y >K㐘/]ʉ#f v:UnqUPp|W짏] y=d?ؤhCղ]( a0'8/d*P'lC]WKh^1< Q ژ4:SD ˘d[1Ɗŵ>a XQ "t&l>Em;p͵dK;M (G5wMa@A67aպ=KOf\ic\ \pmo*猥<7H>ͥA䟔KjD4B؁_҇L+}YkmCy9NTWAj7id./C^bĕd5_@Ow<+L9Is\,ِͩP{+AM{j4BIo,\٦2 e-P)LV'+-\тh|-4fE]S\%,Yva&ٿ(FZm͌/؈ćl|&f[OYl$OvH\C0"PE O'ut3RSYp0@ʘ$8j ӌU7YBo_)J 7 .h."-gooNtiRK 0ٶۉyiwy'&{EdޏbCcퟫJ)rdP]g^e3rAݴ,+y֎8*P&*w\ST-t,*%"(!T<"Ô= |asذR@n:eR12FERx]S4  &;?NQ0~ h~LW`?$"_ʻc7\Jܽ"J+?dlh\gvP-g=|&+Veʓ[b_+:HP u>๛̜| o[D, !2 Kֿ5q ⩚j]}B;([V#O@ԛ=dh8N"q/Kt (t10P|2hIihpj N\G3ڢQ K:;WBp&r6~_h7Pm &YEԅ(}U[HwE.m-b=vC@D\]IDɴb Pڵ֝C  W,8k.V")U˓Xpdx3eU(t ZrUtÃ"܅HjES vW#)u#4?{_F_YapRYH|'zq@T3}J9 }N7XJ8s+^**hbȪ ?N{k1G'Lז\ Պ.vC%H>FW12 z'"SU4:zfA H ~p ֭h%5HVM;V3n0+IS,5/0-PM]jk fk@c;ԓP7SC:#j W$Fۙxu'S0TjU`Ze'"hllG Yqw@l.8aXhuKi.#6>VGZ_u'vp#> 5-ccV FG r [GizvB b$oy@GjECae܄_"/o'&C]tݪv,-p*NUy(Wn@UNj LQh1屲7ݹӦ5l@%n*:AyH_79N7Y{]%SN ֚;2=hE'6J6 TFAzQȭnp4*=nw# ꄨ'.&u㞝$`A1e?_k>ǰfbL /00If85ǂ_" ;8Vbcm%|Q E=5իVKGsrG@\݈M`5Q@yc5E5NYd-5\Z()[Sh |Ner ىt'!;5^s^dkV$Tj|!aH\:[wVOđ)pgRܼH&Znv#HLtwN0Q G~ם2&RpP XeV#0XLbbOV1  +SwHѱ8R 1B.ȹu%zž.FD_^aqJ.z3zīnxJ4ڷ͸:eh wll?xjBJg"O_`Jwgf>bcP( iN戦\"<{o9҂۠xP?&BK]sReǧ AW$0rg $l~ $7?k:Y{=Y|1t1c$XӪF4e8.[]11}(Lť9*0I7*_cRyu"_X"3҆zݟCanzJ6p&Ba3e_T+ޭ*o [L\wS/o;؅h$ +0VPJ"*`G%ڪ0Tk5M|sƏ"Ay'^Q?kd-םwI*e4.s>y)>\_za VrTQ3sU.!P;s'19XWբVʄܕ0G%,37Ji#~z#rG鷣BQ6q,9u޵lAڞ:Wwwj~w&Fdy@w21Vn)Zb QסD2P7fO5Ko^:2;DIw\ֺ/ :Y] 6g ?[s3LS\af8YJ 5IEnkؘlldHuؒy TZy@kR30cVMn| 7f3]Rzj,kB׬<mw[X=.J2u\46ϦOчTnf )ˑgǨX? e!t>#l5hZm.(Kb*ufL{L$yϾBPxpX@=䥐Y`dUS %ҩyZBb6Y;SzE8&$wp5v/zU%U ZȤ8ìtE$fJ41HPo8!+ xձO?߬j5)Y);!v"gCtw8ġY]#o#tP|!.C~Ǟ?"ͳS9b$6}?Zi:ήL%= h)-PQ}TZStT_92?t!K._>/DhؙzV^@Y4|SITbtYZZ50g/!jPe1F@lxg%_Xv||d:N?ZJAF)M+PAdVk\0#<D?m AV%> pRXW5!62[Ga T^ϔse^ddqPGxI8&r1zEð)Tf ]P/)} 7;֍!2< 26^RU^K9ȩc!5aff,peI(FZY3'|3S\ň"OܥA} V/! Q΋2?R1U?F ʈ+jS,{m KIr)b < Riu}v(uN2/J#ĖөskT>r3<(a'ʝ_11߆ZB&o ynrM-EՊ$-B|)@Z/_m˶\:*ӬWNKh[@pD@'Ow 5 逦mh$Tc_KKDI3\O~$G2伹fBN[h0hkXG{2=e¤ G7,6z,tfY+)4T2;Fh  i ?/ls!6}vǗD#;/Q'=?]ᘵegBZ'(y.Vz=vL15x(~:m{)A%(2yR_>wL~OypL?E 5n: us-=DZ/ĘO)*5#ȿ]ra8-q4H'DN=N:.Ǧ=(yNpx 7Ux@%qkrx./M&ݻ7sdz]9UMF4Q,,-1 GRjiwo+TF, O6>7Lt;>ͲmgzJ/dn5^'!.|/n FB wivJF 2ޡ``A}ke/i|duG6%jT'0qSA]UEp{xml{uLW+c=P^oN '0` eAJ,Ie[d!92ypX[fB U"=p\:z_RPpoGB;ѵ9;xvlYB} =ivZڱSDKd&[X]쀀Kݞ$18^N70OoyЪLޟ.qF4N2wNp7愇{C Aça;PMƮ|h& \ʖ4B'~J0ybNJ%Dc.p8{e* ih6zòs_f:[euހ$B] <ЩI)tl]T[#IIFA΁\F[8d0P+JȅwgTP+ScM8c'_ob1heu# ?a~4-L-}'a *A=s-¹jBo=f,xs@qA[-Hj]huVh7xG R@9"م9ȀGMh؏B[%B~9UnpyxIOE=4{P8Fku r$VcЉU#)~Ux?~{iV3&[!; ?XݠPJ:uZRDZK՗D,j:o'LS-mVhNa )"qZz`WYƇ숓%d_䟱Z3\)҇Ă4'kMa=%(HY>tGX -6ifPD7TGiMC>{ct/cCpi|{*AvDQ'f+N\JX0p_Ja"MZ.V 5\g?H !|DAH25z Wb`ʼ[V@ eR aU&˾(1!dؼ~I2C(*+B].n'vu|E ĔP'.FYx}N\±= "b6lWY_;gPo1%StQZHr)[Ha<:0~{ؙW/5T.ȯۋ]~!{5J~z`\&7_Yf}+ +t v)۝UͽdLpQRK $6'9 QX5}!J'BD@;lޜ~}W4D̦ܒ:BSv/,X]F5TbFGODoi ߝ-9enx'zaDMKkǫ2:wt]n=Zk$4yzxk>Z1[u^X;ϐ篬/ɓ\W5AM:?bDM*܅dDܳgan:O^';gi]>e jn/)zBܕĥM#~oPCz3xZ}Q v2),)@1 FGf ^|ng;WTR'Ʋ#uO .M'~8..7(A&!j@(>-=Lb%_u x\}XB[_.I d0GfQg͇j@HtP72q-q.N*hyhUg ע[h WPʬP;6^G:̓PgaQr?pY]>K'w->sjČ8\ P`EZU7vH_s%oֿ*Whؿ$x L'eJi YC f/#|= A1RC@Kݗk^朵ǐD{+;%6bTJ.\VsD5xT V2\w;1fWDQ@ ΟI5Wɣ~)"㠀4'1tD Van𼝰t IqCMYrhNTDfˇ4t6S:d{ɐWVo w=g4iG'ֈwH9 Cx[}J;:Mo?ܔV%է >/m-|gZ6c&:x.sWE5ޤ&ՠXq<0%]8LJ&}ҟ!"[Yb.a"!-y5-n#H]xNy ᦄs=bH:8Z!|C:2egV͓i'`lzB]>8t\7IoT`S*\Z&Op:TY݅W.ܾN)eɄW W6tLMoa0o.hxiY Hfen,W(`AaW2j/0mM8-׳"0VEq6X0t: ,bS jI΢5q@ a g bf2 m!.:NEzp@EnTkl6Db&/J@/5Ƚx X>3=8Y@ ⭮-}WcoHM */|xGΪ_Dvu`xV8IPCe  'U='g2bVa#+Upx)J,a5q/< '.ÿdoM )Q/;;޾ Ae-m(`bN^F[3Ѩ 9`"%z~ c_ܮ4}]%Mm69eՆIK$TÜDVg,y2 (hx1}ユ7O@D-]|>{i^+*3 ɳ5ְYu'AGt҇Ӈpgd;r>0C|eӯLk ) eUsd"'OjlPB ]+ʗ)C,zK-a$Cwa f#nJYRJ7+'1笩U.7#2gs[Nw#83BO>@'?~-5a\Dih`' d6ȽhPrLBx#Q$_K_ :_i#%" I^1?}ƪJ9:<HJc @N9bD ڼ<[jh0t%V|u|m4*h;hR%W\V<=;})%*о@S~v^ϐ{j?s{|f](V$SCWEʑE0 ͎)-ֶ[=`dFyՁW9!8^Y#nH3߇ȼ)%hsXbT9ODr+TKm}Np\nl\b/!?t" |ᅅzyh+`ӗ״z&]SY[ҿw#+eDd\oI%/vmY֑[ya?F„zMM#+vh0)3,{S>f{e1WWxJ(=v6 ūw(2mE?=b,E~OgnR$ۉ2P&fL0 #S=UCGc1\l(K /?"U2a$ f9UM27mԸ 60 v7} #p~2zPsdp2ujf#ўAtdR8#{P:}\]z=# I1fO"x lU5cT6@L,T3v><=ι0WQ$w x25q8ܘjj%]C5at|xRx7rV<<ٮ蓍UnD*p٣۪{M|c*O$<[.G-!oL-d5!sLPXWxU$6Z* 9 :6*ȏ #_*Pu3U2DBy҆fn6OPyLa>0—HCӒ~եYH&3'P9JlXׁr"UA;h,Nnt+,R&<2U8;#ypg}#*ӒIsI:ߐ86qLҙVnPo[; я ><*,}Y~OܸluQ:\/(>O1ݕK:jDƽK(j*Z‘mv`~ZNJ_G_"ojo} S61_ %,?X' fs[zʲUt`t,uά<0stĢFwEb@&n.-HeX#^~gwG{[XvdV^f"JGυ_I+t#uᰲ#EVHm46, >~O+: Te+mDoѬS~Hpɷ#h CZؒuJ4Nݚ&\ A4R6ԕf ?v72Մ Q[n/!>}ԣ xȷ}DLanhybRPi>^M5cAFKh&ăGr @* k٣eQ+,/?y2 "F#oV'Zn=[b]>BKP P xʺBe]e`' նڌ\g("p1Qn= 7-.V>Ƞvwۨ=|Ӕ"EYf$Gs'x*G&؜ R|3C 5B)dzWC0r JwZkPnٶINݖ./2X0M42iyX|}%y uxckxV7 oz7Ąk52¬mYj5N>r^N6>(gY-Xէ2/;$I@򕓆jyπPQU[7M+ׇF:3"[ŏF#QoH*V/AHpOn^N/pΘ4}Jؙݖl&rn|<(PPi᪥EZ?eGoBb'U U9Ám` @Z|'WHۤАJPOXƁ.X 1KD{5 no\xs^=a5aݐ yurZz0 ՚/g% s7rL{L߹Y(hu,])Ǚr({%]⬌0@Րחѫ!;Bh2RCZJrw}ExJueA]&{;8h;#"xp`KMzqU?+,U^άXٶ׏ <9VN+t@wb{!+M f?s4e =UnJZ/t`pS(Fr .a6-ț/st'_D}ĸ Sig&~$xͤew"IYvƀ!ݾdipTkDQ4u:I^v鴛P>,0ȩhgQIf,|oE>xһp&leE}50n I$=o,prj="{ˡI} _/v@*(>VIr\5<|-:L!+x]=H?iL Aޠb :_I9 ڶx=|ӢDWҬe Õ:x0Wo1>/8}#O׬cKM$.}"Q'VI'x`'m26vl%TljT1 ~0vJ]p2DBmS1߿q^P/~Ubg]/ԤѾ_| EݷsMxYw2 PW>A—[㋓֪NV1?$F-i?;F%r2P|Q;jҞ]e.MaZ@p$Ĵ_b/{D!y.c`Ϳ`66Gڧ4w7!Iתt NDOAj$*Cw`d|[Q|RjK,-מo`§0 r gzIJl>6:ߗy=Q=7ZGpAM߻H1?^3-w:+z-5͠3@u`/i-YlX(9F$2utI}ZOgX{d;ԔY}!u%F5Z" {οLw.+&sm:m,B*A:<uPv*LU£*+Me 2BN? J2J#hrHfEb+! <ڭ]MXQYZ=E@)~WϚ獛\w9CtĥxX &p_zEKHB'ޑ/N5:q5"+2-"$窑Bj?T8?Z3os̿dNjFmȞZ9JhlqjAJPyQi/v䅧b!!K|s 8.\x%=.?hmmnqOI|6@a' fIp%5#JL{@˺{[RmGPzXvU9 X/ K-q( ]sij% R599|gscݚx4`ڂ)|gmX*S #%HOK M(BBc_lnٖ _._Ⱦ-˓HvZpNyjѰk:g]`q^}ѣ 0*'F">!E.Dž$3L-/vCطqr '&3|g*bq#lFywQ,jkI J!κZߟҎl0Aq|Arv+%=#D)>Nwe62޽~Da1;an+=_ÖAא v<)QW̙LTߞjLN#xީz+)nZx> &waDxNOMkH։ ż=)K? VX+dS[g!.Yo&~m?XUs Hudɻz܎4+s3/)ڣ\fn(㱾] $Qw+wy+w ;aܻy;QU#-<兗5/6?#j[ۉMtqb\ ;^&#aM,ORpz/3ܘiiCh KUaR ^w3ob0hMT:[`1Μ*qv"_;?ޅHp0GP:ȳhXuP.6{7שk P[77! c!YWcXf`֬yb(v*5sɓ,Ǖ;}F'Mgp3W/0k9t՗$:Jfr{ d1j E\=1Qa0 n@pB.biwF~ᅔY/2 ӉZS'[?*[āHI@ϡ1hR,Bf7Lֻanqn"dP}P*6:ђ޺qZ]޾gؒ@QdS1(Y 7nctBoiNm]>E Lsd`n/瘣iS Jd$ID/ApyB7mb<E!SUQ:+ȴ !O}^t䥷m|1+ }*bmB4/gPA6&8+EmM,tx-a^D~0~Tew;?uJ=&#,p09Z?D/oO<( `{QL4䛰ԟF¦XVgH)ȩvȋ xM8IӵEKluvEhKxW9]<}r竫$v,_!E4ft ip*HTKRraZUj/H1$Ҟ``ksag8R!9.a^e0ao7m`BUVXTc!ޢ"'d<$rw`NpsQ\h߳ i(4{*s0gcʉ&#]L_S ™OKk<\u d4lS1_;!dZ VpuF<&'컎:W\C ǫcYܜ 38 ߖl62gO(VĚek~YGLKUW8U %R4mL\W+7\k`57mU\_D0L[=Ce?$А+wnLg|7Ad 6uU?pS\т{J'h`0%-=L&XEN'x:kylƘ4LY\X?/u}}5׷cG#)@'U *n֚Ǎ^hK)]@h_><$fH+q8ʼ~b:3A~)WjJVWl;޽RV3SI*b, k:;7le*%,5,-{%`ZWم̤]=sD> [6h:3w N~PL8qYF0xb1!jGv`G UM!ɥpLNS]eR䲧 bخeEa&0&aTùYsMtPv sܛ嬠FjiH Nu}u'铈!CX$>]Mw /K+FxMsd<`?&I2Mh"+G+ Žw CYd Ƨx'p'F8ũ[\˰Mȝ~x#E*ج|{IKr{'v6i)Nx10aN|PC0Ьk\6LtܱâC͇( KtctCo_9Xl NݬV@1쓟иW%!Reb_9O3~jkنΥ xxUkx=trq)"8{;*>HTavxM|N5rجJs"泗 ѱBពݽ^}ũ\/.v(n ug4WN^&HDl͟-e& nU_Y)7.YlP?,M~CIzk%Aa~Q͕]dU=q D9_%m* ~炻QVXI ]6a1Qؓ' gO&M)QjK.NgUF$j֜h[;fo&laDוXzVPћ7/]aU&FB EMUQJ0e r,6><^0Ftd[Pyw_XQcG.l+`eJsYpmƑ*)(07|"HXCF`ɖW&6fO($n%0pyboLڻW !bu&R JVj Yw5|=ڭ FA%[yKgnn9 ѠiXM~.?~W3U=Z> SVld]Bxؠݧ燵sQ/OMс0{-Twٶ%ASKDHm w]eM!eZ{]98mCiaoU@ QK Qg Ε-:0Hc1r}]{V];ύ䐛lquI,+ 7 y=mxV .ɂZڃ{i8>߰ @ ^ePhyi!?й< .RR[ fY=*zh89Ah3ڂӂzS4[yT?灓Iw99Ehuj *wd2Du[#Nlיts۠nH'bxfP7yM`+z۰ )[-fNjQsN*E;??=S-;R4–<*x"$DĘEH~t>lm. m1da&~qGnϰC\ʑmY3h# U&$CE9s*"N7E_ CqWo + sewqO7Ne8|O* j'K /*:L%:e'ojdz֝7B3LR']=U}g$~zf-բcJᖯŕ|QͧҏƐNe c[Xfe`J\2$= | HKqҠ- ,- cA..6`!tQ߁@jiI*mg) #xSO!0*;"F]@>ɏD0!4 ":)cV.Hm3u5;,"1PZJJM_O&LpAxkϙd`#ߘ&I-Pb1~аI> h>ַBiVj\w% .ȡܱ6*Eg~7MAyI12lӳh?K+z]<8[iNLɢk< ǎ*Y> EQ,pz#pD(ӛ҇vK"MJZ봆U$Iu ::mH/S~RUG*ؤ'^WjHv{amd%c-3B@j-Y.ž5V巆'rN-QtVWTg<bj$]*Pt(E{k#b]Vt5{aEF/W*, ^rꭎ_U ھ LO0d\5btDc! &"+o2bNw&1>59:Ӛ^b7%BB t47c\rVOkbp;Gq:x:BI6/T6DR$"Yh G.'dUNp`; PScK[$Jd)>7.i.-m ,-UQEDjJrO'uV`s9.tKr81zDӗދ0&W߭^1=]饒%y[4QrdM# \ ZWXճv ]meOYt.ź$s࿙H{!EFhga}21]t X,q3&`"̡ T,ig,V/'cvQ#j0_0Yg${w`}Rpo,EA4k`4,zԔ}/b5U_|hX_y)0jN{%G6o¦ F\4׾mUM SH"ꁻױ)%^ϵsb/>KAd:AlIw;SpD1l?8;v?0۩iɤF$]D"ByQQz[rO*ul`?Y?h&@7l!Pu~b':Hf ɘ/SPY}D ]9*R _tљ9q?4RxE]SE$wu@4`r [\絏JٛKؽ"9Ifa_jد.U{5|:{eNsX[CLdɬHsqU 'H61ͻǒi/ih:̍ͯYG ˂ٶ@~  a[Ra. rCvZL4?ЗB(_rRAzMm>(_wn!g]лEtMӵW0cnP| tJsNL;ʚ5ǿހ_EcbD&wbpp4ДFR c*?8"T_GLzci!HlW ipRxO~D<!ꢊ 荲sgJQ(U"ނ (P1[ U*R|w>{>H|QEzj&>p=ziNjهo`o@oF铁,~ݛyxݴ51ӃpJL7.tϊ[Sm Üv=L#!r7߅No1  QjuV8Hxu\j:N;ȟvW?[IW28)D;(a?ݡ?QikM1{7IЄNKFr<{O\V b/PXۇ{m}`k,x]}F~Do^O:iGsԌw[dJB5ƙsK2YݮN q9},-x#]lnL~5-WBSeG+WG6"&8s?y/0ukšYҳ~ykKmj,yb9~!W+o 32WxC3 ZMy3O.-ןEf9d(^|vXrʹvJ-h"=v̚$jYRosX(\GA֋=7P>"b7:|4A%h,aDaav54P#WJET*;  <g^]/+޴za:~XV=#k> cDjY?) BZQw(*?/vCoEq&Z(HV$M)Bxp0hI_(xUzJf1ߤq03K=T")RbSd/:Qo`ȴI2[\*(xD?6K/R P-q=uK{sxٍf eNkYAŸL&xa ) \aw$)1=-q*\W@߿wNΘӬIe2a\2\B.;u#>k"P! AؓΛQ-O)73yaZ <Z[V?J{*&%+ '8RW,p7l?LA#ȩ"DžQ畔sŶEpP,w V"4Xuf$NG :3BCFÎ~_zf uk%:D y;Nj!nOeYĀ>Ȧ->QrvCœҳ)ZEF)!؏}/-gWh!,A*æxM] *!hձ#sD+%:sȵ k&sY%.V=W+&7i}twG}˝kFd-"Y Cz|9]Y~1?[g h3+"?o"0$AZizĹix}U̱=2O[IF _ɩ} $q=NJt~485BFsπ) #SŗN۫։ +M 4oY&WD Z:e{+Y%_rMPnqsb&F%^H?jLI#"9.ڰAJѶmaQSso=S~?6d$c V"w3lvސy;97Kehk+ ns\,*|φ!rBlxnv%[r4u{@+^q gA(5MAMش#LO^+X"ˋ[pf,so dCQIBW ^ !gGwdp^T*ZTQ$qKI]/{|M#dA˫Rr%bܚ3T&=`A2.z(R l?Bv Nhs@{r!mէRTSS?Ui$C29aJSEgl"Ά̀w6*5MFnEtQj2Pw,<ȣh3uI;xCSf[-Z4[*8.bSFezʕ)% 2`eL./LxgCO^ZUhsF)tV+qCJ9RX_|I.&`E +ۖŜ`6\"j#O?=AgaO+=ifGctROkhqƔ V4%+{ n6ẖJO 8mA!$8]8?P.ȶvx0b.AHm~UlH{YXeHAѷU`r@ڐ\S0A!%y*Hkj_*/XBiu/_δP 4ߌx_bBpsu>POQp~ %N nMtsA(V]\ab QS]ږiKOa{ twAl1 \{vN4/MK@BH4Bw@Sc_ܢEI:֊MVO½ .i3Nݔ@|@-nVɗ~َ4F.E.4j:s՘^4WRI<4V/Pȕud/q:Wn'2{&;}nۋ,cg<7K$7l:NPS<4oPȈ?Z\{i$Adpi@wTG^S 1ia~Tm(C:$mZ꺘G}1s516u@%(Iq̧\B"/j7|Z8o[3i,P?wNItj*ӡ|Q3zo5݋P4j]Ws@ h7d~>m`Vi["Sb4:}|5TaOX4q-8]z rb`{kRܱBÚ3yh'V92A \o=mAu eI=SšءS qJmA;I64v_(ƣĂƫƕ~3EaY I#|,p,%Qod(XJv~UL^qAW@/ KxpS_ "b2oDjhȯR©s<вI|]ۘvwI_S fN- {7dz6?4,/Ó0!jqo3y-Z!̹_j)9: [N 5JHWv?7:@ZBbv`,L# :tAZdiypn7>=6?)C|j>~|=1%|h/1: B>^,z]bmluaQzdzŏ/d V}@{)6!.k ߔ*]c+'xA1AALǩ]RjU.yaBսY2c,0q&JAůR WVOW#ƙ9+#e ˎferT8I A6|i"p/,m;P|B]cЃ=՜>ȧMDQ~O1DMvrҳFV@/M^FvYrcr tEg߉ @9rXe@ YwU8eJ8S7[=3u72K; S@z[h dصMlV$_ROէŝo> -175h䙳(4+`NE{!hE\_X맹dxUm6M^,rE(U<8 &#At'#K mT7"Qȶ$03;Fnt44jk֍h[DK[Grї)Awǵڰq`E^B$xKVd) މ>fPJj~?57^HW&k8 ;tZ|:iGd~kZp4tz ~89v[J]D v㱋{_:HLVpHν :ZklХ欒>l|>'Vmc^KOW8=KSUMX+\jޮ\ۘGgi(崅Z4LR)NKnWp8i >H+;&eu@φCnq:@  xl9W [Fb0uI%TFJ(u(4BV"#ғ,T'ʟ<"?ߡFUbS ޞd Qn²[IzST^AU7*k=?JRјQ!LQ rXVNE jɣFgG!=q qбQX=I>Ľ\g3Y 7 `\X+Y{;(wm* HQ18FH{htwO?bN3$ o%5ȈԘqbc[*4 b~^wMpE-cr WW %И3 kc'NDrѷ@u]XjgQS6Wу G~RXw_)KT؊>jNbk@tr L"ۼbpRS6%_! b5agIO|ms~JwH^(RTI;}.J#C*x9? 62?kz0A3Ɣ:D( ΀ꇣ:dk4/r?3sI]n΁_&W:3PߡtjN!y\(6N@^1$QmQo䑆C(F^1ZPmRB^%=cF" )/?8' ΨpnQ֗ gG|Ehq$ =.| ߏpZ$,cZֆ1>YEE%厐&f8pdHHȡ>0,SgC> 2{2;+r)"H:_&kN#~]O`Wr,Uo]qU9npUh!dxm[*H[Z+J- /`j틁({u&Y`pp.SB#\O M95emYD`GX?z;΄u]?e1#wug g"fn=zo^}|AߣӲԥmkC6GWh˲\f!\b>m}=ho dwК(CiI!fpc(m'Ǧ77oĂ!YN"9kgG=zG.|׎%r-4XEO6 =9 r10"{nL9}, ɽBx)(/&ւtAC<顝 U0UTekxn8?qw0Xۯ}Q}ʂtW1gŊJJ7vH#w;G'"wOV/D ,< ĊS+sL׋='٤FY$J\? @AUdI9rD}>ٹD4(oc $N* 7g+2! B:[W:]\8au4umA؛cX?UM5Mev/6U[Ȼ^{'VF@^~R) !ܓi^Wde7nFP=Ցb >eHN 5\ih)`1EvΔŀs>XS@|BGQP?AbTS!Vv2$Ls~ž|7w- D wߺTRuMqm.̡&Sk4X#I1ch$~"GrX©j$ >c: ZZ)_ xPg{ u?I՛^4us[ldG$wݻ4y,kT4YggpΜC&mWZ,?Ŷb8%,B5bͰakփۤ~DRFA-t+7hf]puE.݇bS#]8r쀗=FCM (fo{,83?sbأQl )#$ \]o]T*۽?d !)0-tJbwj4-aWXZ,6_,M`(O8glۥ nQytF{n#1 '+`4R|ԴC VoLc ~RH'ۅIH%evFZo9+W yr(a|[|uQad'ebr0p9Oͪ$~C m`End،BsFܙˡk:}-P}35UU Gd ܞ8$PUy1pn]䟚$sO|wddTuE#7^$jsP9)ru6"4бz7oCI*<$KY`"E^NhVݙ0uaP6IͬlD^Pi?=I%l~k ]q] Lj%z]!bzJ$4NP~% I{%({Ԑ{+˵LhUܐWiR1# rW{;rb–*IWr@H)/=l/}@mL;oH3Zz3َ'Ճg23 F y|$XØYQ^JgmGZr߶TJZHҷkTOQd9*ҰDEЕQY Xp3&Ƿud>c1áVŲ~/؋.Sx,}(穜YPԗ36ߵs iQiTAa=qm{ߛoGmPʐ-胔P\ | t]~qR^fo5_[]p)W{rj[brWA:&5Ǐ_k Ogfpө]Xf `*m?] 4ps7EHJ&mCw"tX8 JWMVzfM6UW9Iro~b)pfM-`lWNj8h)V EGDMjP3 _V !5;@i6\M4`-HKXada[ gHA5sj:>,wqz법n%ኬc${|}Vn M5Ǔ$S\W;-pP1VbCa|&vm <‡~/$74Y6D.u7%]?-[G|Ȗ(5xWb>x"=u1ݎCud>\kƤ \#rXV<^ѣu (BYs-ڪlA]-L! L>g̾PXP9MN7e-J=u1}FҒ- 9Y1wmoERcl>*E)E2p] ua/`^eOC}Ǥu?LhXgIw|㔇1o0pyۏgŽpo62%oH[*\2U}ntƿ.Y!+ aeH˝lSCK?"b#᧯*\:+fVEhŏJ(1u@ʇI>P yk[ۣ >1ā׶J*\Y">BPwF|y9j` lw F8Y*ehƠ'91+RmVWOaYX²FST>ܧﷴ3&|oga P…GEd:PҎzj @`,zD'=2[])~\(3۵/uZґ ;h$` {QA`ݬLLQe`dvzW]+-GHA-:ѹ(Ґ$~r; v{M$}/{w"ؒx"SN 9S]I uWAXVDiӬe_v} y rװAZC!΄mhHcx)OXFR4RF0 JuAK(86)ƨx.p yWpeҩ:bsUU|*J~b}%pL%p[CiQ^"ϡQ ;Vz3٢B_\r&ܜp0ElR^+jo_-JeP61,m*b4' _=N.yqA}0eh/:c e‰5-~ɢҽ:FOϴ8`Oe[VS+#6tI)Glki%؟IV}R@.Ʊl%/b{ v$ thգi -h6-Ubmǵe,H#*G*5Lpר8 AiO !!7 '9Φ]pTaCBiIEN\GOFUCbcMH$S.Q٤IG(>X 8\\ZKc{qC/XNBUmaФJqoP## (&b~( 듸9!ɟ䟾m}s<9b^0V=((Rq3<:"74L`|NF^\Z>y{b NK"awGA @Q lWj6Kԓ\\ qon44?/%ScT7[F讃ͪS)r0~%d ˶0j:X4d_,Qoho 'րxY.'$f[o6U;S\MўN3d`A)s35l Dz,GIw!{K~Ø1.ʯuqDLn΢1!}` Ԝc a*fӛ|J03( 苇"VvAN[,rNs;wSx~iN;%<~$"'pҐݖ=.b؝Qfs6VYI-}LZaݺZ%n`/lZ6Sk t }yM_)#88ΧƱj\I/f"ID8M`?c} fc:Z Rq!}N?Ylk<&$zG[|6'ɤp%ޞU8.w& 4ZMK=U*#ҿmY'c86 ̖&u[>'mő|^j}/"8z7N('OQ F#7DIQ!Ra WDox6E)ռ,['a#)鿱lhMl|`unopH0t[ oLI:Ns{%|]6kT^h)A-d2HD@8Gāhj#Ʀ<l1n k.Hdj+snJDz֛1_蘒9 Dk;M @IaXTt2X۬d],W8BpR*u?^P@reXIku` RR'~8+jvM}H%LGy9ؔ j"޷5i7U !XwZ0"bIn:+ sQ̭e \>dО&tPy1C.¤3k?bht X$yTDZxĹZ5¡F޾FJ4bGpk>/1㏰enapJALZ5?rrىVK\kf|]'HKj/lZTBO3b4G '"}޳kc:DETlEhwtMa˺ؕ)3W!] n&0e!δFԉ7.mG(x͔*ۙCYXETr"~}zࡢFVMzX>gMUKulDs5񚣭 e,6Z) - \=`&9zm!HC%]!?WIirC52ǣ9W,xE;ϻNep*[A_x+_|F;iT xԟ;o,{͛[vQ}Hj/cf#uhn TsV<]]# 03%Eaf(T,i.-93ρmn* !-=MXƿ'A0(Ep<<۝%\hήQ{6xKlZ8_֑2O9=TK?wL %U83xMX8%.#B&m)PD(;of~LBpgp'}[$.kMƒC ?BqF(%$ax\yXGəWLOl^>G_dw.E,I\&n{b/\p$!5/ϰ C(G+Jv3SR0;O(1PS-.oh#(+=ZT-v6 G_oa*w(dp&T7uu w@˚] ]=*HJuPYv¥G5JԼ-RvnY A${iuP) GPLѲ~$*am9]uv{ܗgn(C]sʺT O 8®>58E!AҰHI2v库}dpnTKHdY NVet"N2N~P4ʀ? Ѡ /pXZn0"~ < Y:Y&ԭxxY_ROU9?x{;{Z Qtc\crv.k4:x ajޡXeT@$͸ %\z">2l;O Xze:qg1=?_>H{%)ߠWA3{r6"8}x^EB_1,-ed\ G+ k3s\[ eȄԪn,|(8(UIjaK *~ G6)WRrюbw j  Kׇj¡Dك\6FqT?i;| q̪lw3Cc0!N f#&Q&[lJW#鬑@D+ϫŒZPa `|AE.:PGId[# yhIz|m+v)mʪ_99QX=lWuYω@X 6qlz=]"_I'd jxc׈n"ksm\՗쮙{r2se&b)㟼jE&Momtye |.!Q uny8:]w OKqzJ`.Po[;`(, #Y7l5c&jI֏h{p]bvՐi̹x*wp9AT퐾۪SڃF:g J)Maq>!mMGXlUpbt>>cotbeHS-SsO Ūoݣilj΁R`ќ:V)ptpXkU֑?s9JVMrW"Wdit%M1@4hn'VwH^3m]t k4Uľ$%R'Gm;C/LZtA?&qN ɁTqQZ\PUBȕCQ d9%t%ͽNzO] m R&O\YÈ%[|-4rB*P7A{co)-_#"KjVNӥ9 tu^] S1V%>E9j6\$TD8)ΈCv x;^OA#H}Ie+NuMVJ_qP쌁\mMBmDF=j3"*Mq=.n ܬ9O Z~_ dQ $8Y08,7=H6xv]"4tfnd'c9NފV JktO sE;ɳ>}W?k Яq|dV?l$?f9s g3"iORQEcng% `C_R2;hX+R7.Ic Ւ7@Լ3Awŧ΢cK".WPOG[&ÙW龪%8j-7EЉfTw]ny7W!SZ"f[j7^|A?6φEfk\rbC Կ`C)?Gȁrm4(YUe<Yݸ.&Lɪ6ĘHζ/ymh-v+[Ȳ$`/.kcN|Ե{=@(;?'sM,*nHo.τ9MOk/H2y" KM>/kr޷{ Mti* o ԩxZ Hs/+Y2'Ǚ`K%2 Lё^:zbh`a2F9h_5'^**hޒFnQpM{@{#i7#2²I:rf[c#o){%B[m@Xedev>YKT׍25Slc32ғ`$e:0n$Ri׀>~/XwOMuNaބNB37DGf/ EH(S.E[z]a$b#bA^cj/7&XQ++&CʡjhH(dvhO$!wޮ @Q0U9sp̤B2v M;(6XZL73n3ϣg ^iʍS\^6"o.X,DUqeDld}.EAȪ>&\j* jiLzrAy5zJzl&瘈 !þ`2EtEWcSGUs@MۅqbNb_rFgҬ*c!Ci6LطL;?P4q@@[K[*[ h2eMٛ7NLS>lUuHŜg v'?jxFqrDطz!rmC I HY%3X 7Cf^k(WUZ qg4[oQ $'VŅ=+h5|0g5мX"UwU 7&*B( , +*A['M6k|?~4ϨpoŽe"Ơ(xV6L&i3³up҆<.0s_G>3sO[~l%VܜO$Л.,h,m& a065z#^.]rCM"\67&uFdٝN@l=7}ٌD(!F&:EKק˘e+;iyKʨKH[\~€;NQtjr8vJ$LE WD%~\ r\HTm~pyeµ|9Y&*( 1]&0p!@i1o$鼒J ܖ I6W G b7 `O']M"HxI`(l8]Bsa-A`L'AasUƽ$0q~!CYRPu݀NpԢ/ wIc(aSm ,6bI8?Nb?zh ^zT6,ZV@İϠGǕ%B^Sz87 &~(OdM*!9zcĦ]W`Nj} A/k&chQ;vsh?-h0X|C}~H=R-:O|La4l Emnv5Dޅ|Y?Q^tQN: $t r9ǾRIGYLŠ? < %(%9<Ю@̸~ Hx}/qF~t$[?.y^4 P4Z˜ ɨm@}~se*Ir0?L`rʛUO'p[P೙$I"D.Y\F~򸌲:V({`,wTq"F5pM"S6p 4MW EEbx҆86$90EQQ_n]} RHOCÅ̺ %\]U:ưz muLhX[iVŃ }0r"DXS0ѢrnKm5`w4's,O}G 3t&퀵m $ P_I#=jA۫B7I_(gmUڷb&ISՄ[!]'ֆwV/ \o]'zտv\F?)c֌EPwzF1C~o9BjOw^b5)9e|@U~SD[!QwMj8ajQ~7m_p=]*rAĒL VHUKμ+k! Fj$yXwƆlNy4jw(k9MzuY>]PF5N'Oˆ-1Z&B= 4jl*k FWIFVG:܉|"+cash?_D}fUUۧ9Ug''G"mނ?Ӑ": X~D9dMy9ߨ}ɨ8~ρl|W Ϻi1, NYL-{9b1L@zY)b)䇣j2vodL?l$(KG.3XN;C3 ucV*Ѩܣ@hLP#BYMZ@oŐ&ȷI֣ܿ.fv$Zm4%݁^EK/rap"ZU $g$q6f $`AJЛ5mD#fЛiawa43B?{gi`D ;'UJE@)at7f՟h80z9Bfn8lK|2VC׌.n~vMqI! gAQ0X:x )p .E侜 7NҊO09UM(͏l-fCѠ6ϐI; XxsOFGWiH^&qMiIa9o4F mk"P|GʠEn$qFƌ:qݝP-/Z[ ^Q|N% 's Lk 9k쀺.g^%G4ÕsOB]9%(a9dkaS*Eߵf}Ee^`d3w?IEE-j# 4!R|H`<~j+*oGF\8%AS0OՊ`x&~rm{nPadq|v cŝ|)~7{MjV^f o:bB9;+~n)W23,/G& E μM\JW:4ײ5~!>KHqDUH9Fr{b'k\|'rI0_HZ`$gNV1TwP]FwR0t9|B=CTETC7\)&Pc18u= SI/$~SɿnR,>mpl7>$Qv1=8|`NmkhDUt4G4i0X ?(B -?lL~/ۑ-jRR@]ueXmO.}ISoDy?`FvS&1DM&:"Xo m*GL:q,t 3\;ȸi!&K`W^@Ѝ7͏v]Y#OϱjvS$P*y`zo8u "C*GnRlwA"pwsvh Ȱx(ڍFN,وWoz#\b_:#;sj`TwJNxxciS(F m}}dCWDwDGL@%~NC֊ښ+KC$IZWّfۋEkDk. p{2o輪& G݉S>R7>CɁIՍ@ϔr{ϹX$SWh)ys lbMbo֪d>x/ǰ.St Fh'_h A@ْai1;ɫ4Ax!Ko+G |7!o܊ m)HßFo:7[<<,-1z|N*On;$KZ#[/ }c^^ Г.0`w aAzn5ĺ!M&tk14:FZsWr5q5LTEfQэ4U\4QNTȈ7΋E'*d·T{ JoKEq\d}ANRE̺^.FdD.~n5l[ȼ==Oq +Rcp/Tl5{RC*UhLg8"Mu~)Ϝ9-=tJUnizA}wTb 9IܭI JL:"=t^X|g_ږ縫V?Ŏm)fG {w}TO'|cN2wF09/Org U; J|xZEpg6V@|Ϭ^4H{sa5gE?w%u4-?Ej-;Ff|FQsձ)ϖGѾќ+h۴hYXb$ Pa!f?@ޟr"XwvԖSB3c^ֳ33Ӕ[Q[c`~Yz(i`˷.[be}Ve#-[%yA^eⵗβ>^]]25ne;P4O_)ub|(FDv័\&2|PD%MR)@4^ 0wS>Ijѿv E<7 Vyi} SdxZZFkZ Ʃ NKEh)H" PVr2ݞ!v]?`4qĴ79a`)" zlF1Vq:X K'C |_hdo[4SҘ,r+<ÿ9tEDYB逃4{ /HaW MV Bq >6 {_5䃡a<|KTmS͘Y ̵6B#WnmErtiLhqJAc5Rp! (ZX YUN޹TQP6$@IZ3pm/ \ͩЯMXv%;ĵµ^J|& n~[/Ts òG5R0+ecI~zN憨= "c ex9hN\Jat_9n%SʯSЉ%hzza}!9z%;Jp$֏dK[2:^I7ʦiLf5n,˔u)/?1 Ξ'Z`2)O7Z&8Z87W` @:pna]By $3E9F}-hۉ58:ء )Rwjc@VQz!bu8ZF*DJNd_vɺbfnP7OeGn,SuS4Pusc=/:%w[j5nAkT[[Nc?˞gu"] >u86qGBܩ-1^ 4suf>S+qVX_KXL*rY;D-DiMp.:Fً Tw7!VsMA2C&Q+:Yr"Kf$5xKYf&vj;VD`,GTtwHsn>M8Yb!q M0T`>_Fnd <A|Fy {Bu%(|%3/ 聧:961q"1E3qҶqdAaWӂ^:|`!J﨧M5d`'~VblKAl@h\~Po;d*efKwk[GK@iTj7j9*uDsrY}nbl8JWӍ|,iwU!(ߘJ@Pn#"/PP})8jK'MA:I3B+*Zn ofuАDRQ|g`\rV٢92-<<{ ulAP̪O[ |<Ҡkc~Hs7@6scx'K5h!R}QuO[ t;"V|Q~CU&{4]2&ŲYM حafjjnlpMyFO[=)oG ?er;y *sC  [s|D}8'Ѝ٧oR6EjD&V4vYe(㺽35F0B~Bw$Gs*XK5ٺ,{??/eRCAarPKfv9dnjݫ! w#* ܸkf z s8Ի})OLjVbTױ]"ce:w> !XAei/pz 'J^̾+ic D@o5\&_[_7yⵈs {rnJ*hywhbGW?:~HoTkO^ҁ+ Z;m^9."#`J9x^$ yr#ʋ0+ׁ3!c.Sn" 5GjM֍ԇ7SU+b>@29}H9[x J +$hW\bhsYc.CpHD>1 (dy;MqHcrfkt%O"(4rN>PAX\%cI my: mcU~R٩ 紱K/Ck*F 6_DvRP~.'ߢ"as77 5c2<>`o1/ xXp㒷z0^>ؼ.,o&!dk'4]Дon+q6/N}:ʿ$  2\̲Qgx¢ btLnj*s}h`+k8d.Dz6 ('l8)q*p86g?RbɦE-5S5&J"gb|vgRBV@N U&.IgƶPk2!,:!{1kw/L,urYWg8H=X A=dzN-M.3e rUFdfk َ:z̭ Ky:I_٦u@{@uxլ8]|10A|+CC*+ƮM=|asU7y'B tPˉm ,WFfu85qrw5} ٖ :hoqH iIF[Ƚg"lU(evP nӐ_گ1=נ!X! Xasg}\sNQy3T탕d[L-MX <`]'!3?%mxVnZ\|B|d W?7\/t3h|eBVqAH8 h'|wncY qFn l,~]n҇XToH =PIUX*BB< g}b0*XWyV+6; XG`F⤋;TgeiZF]\$2+5ZA̛egEw8{t8K8X1@I@] G"縕uŘQY҇hF>p*QA)_(qE\r=+_WwtHĞʵKݬN:$:ykpE0}%mRurE9gzWoG .kʂC1(FIjp^iܠJU!+j %H;8ZC;Ʌ1q й-BSd";JJ "4FR;Ppf62HmJH;)&ЁCǂVN:vPn+mXLzX/vbHlNsRh^7V} T[J6doRlk3ZV/4):AUI M\LIO,=%oQj_v8VCӾGv [jQ`7>t e|AB~oÜx {p;`O*:\s|'+ΚD>Qb'\cq/Hϓ WTOz/Iaa[2o+))F ;r:*7O|njT.tf"[J*ΰ9ᚌ^^0GtX\ёoMX+Tn^4JOuݚ08z pG2XKvkjT62F/N% )hF (2cDV?8]fSDc4n@'?` ltLK}ȴJT$;DQ@:Z(EXh㢀]ИX(Dh{sYtN_ "hdFq\5˪La8Hz 9b6ysOB`\3"&T?ȯ읐Hpl?cf[*4Lff}m=+eq<֌F["BNl|li%GD=XpT?$(~dJğ8gs0]$`G(;E*责mna>IdØd>QKQ\cZR.d($)0rFa Bw0芨/ k#W<{ W;;_cԭWޑ_M+ (%WW!G|%M`??ڂURKGpJ1r. 6ˬ2$C x]5NGz0|s"YRq M~˛yNK&G6 )*P*#rےyDI.KCy7Q:#245}⅃ W2]ʐ]J,aQ@! q J+3΁R Bu;183o R_f@`BKGڋGS*\lJ7зm|-K yTTavoc^y%:B/ 04vTJO]uU쥌HV`2?lGXB#ةp~3Qc&.Km9c"/ɖL1K3^#0`ΘP \R|EWȾ(aMPIekZilv$&E ²<u%htCV/.+)p]ؗUc ZQCk[gNM착lEA'n` UtΡ=[ֳ4Pdp4| E!EON*ϿźQ`%79B;,,8dFqk|ġ'PWGאGlTUps# _lzO lDtSʈr6'vDTkp e ξƁ{72>(y8WLufJoI:Ly8[(m 9#pMs@3VW}*gDᥜfGUDžR'4pRvjp?6iY2#0rrA6:(Wt {x} ݿkߨg'*b%A'}-OGv CL/#d/y!jǡ\`+ҥ b,05{a}ShI.+^P6C!&p9"c&ձVmwJhWCztSS .x׼y6prIԜzozSX b6z2f-h#S4,o$qqFqB9ӷOڶw8,+;5ŠP <pK70sS8.~::cGIJoI#BKRƹ|ё.Q8:-  /Ϛ{y!]+<;y7K#ۤGEnkLu4:?.GSEc!l fIӟNN1ִn1i56 ](w%:_Zؿ*>"4b@)Uq,膚Ǽv/Q+4DQ_yC_?aRW{AY-##Kmv@q9]&R״7%`]Isѧ9p5r뭛3j Qhpg4h<:pC-s*F>Ȝ'xc$Э""9G50KM5hu pi@ǐ-t6_:t`B $qbˋ'_*_/;h9SһbYU Shz|?!.,6靹:jGY0;iH\ixs `Ƀj\_1z|mbWL3ΡQ1uJzKbay&Qv;"%^GLяx3g} .&1`Ǧdt;Wg3YE~oSz49aG )jG`OK==8|N%Y%;|o Jްt;(Symu8 o{W@qE)6zhY.݀ʷ6>>É" Pyq50j2ASO #cC1m$Upx2QbBrP hӑyۄ:-Y~R;^C.:ܪ0)"_?dBFz=d:a~вJ@y/y%VF$za^U,UrR>[/ w!F)\ (~!R(+ҧ ~gR9Q J],cru~P\vPQz~`_T[`!MD7UzYm9T1DUj~ړ%DJd MSb]53 Q[qS!E]4(%qH$Ӝ"w@A׸R_ u>ӑA:m9ؕ8T2&s))K6kE2ȬUPxFYI%\ s"y*1c?ٞQ$f: ZJ O2g#itytQ&Pm.cu8NO'0#{z,f[,gҥtzVA595Uz\C iofiea<6,TGЛgIpCRN;Tv(=Rx!"'ba~Wr|H-̻G,~㑿9)m)f_ ?}禁|yj 6cxՙ ^Z}ɿ^8^ -Y[4.J !Q. l#>e SO4r%˛v ݦ=)|{lE WWa$rOCPiDivz-M]<9FCDZmz̧HM!MS*vRHr+%kEkd< VgNlj;lٓ ke_<+ խr6_% \`32]OEr3LyhMT+ڽ"%PGwzR'n][FC2,\՚q,S>-;%*}\$s眧\ףֱ7ڲtr Nշ$؁ЉdbcQQJc/rqۅt2iHLvF:e8ϬhCf۱@I%8-ܽrRaZu=d5qpW[Y.-.u]Olhz:†>'.cKZ3˿ GT>G5<EIV?5 @2~zgMYW_) 1*( ,"5*5Dmog"ݭS u݂ 6Hfԁ?z%i8n#]EXy?;H|=V/A5u&~b+Dtx8%{gG Uמ O[VolއZKŴ[N~ ʵȼst{ gB-dIaGSN/7S7-ɧJ&Bw@moP;T*77ttS wi &3UK#{ګJ+҂K oP0~GY_*_zD6JoaF?jpPP)v[e"~T` u~5*̩.;{*\XǭYjWI` IȁZЩi:' NSU)vZC4 ,rC*qoQPeev Ip =1A1T:vExr?c>s>مxI=wXLPbΚmg)7Sڹ9k;>˗4hzޛX24Wn2چ=.khgTT$Fʋt4u\\+7۸fksiU&?ӽĻN U*@)"؃z|B_YeyBnU=>Z\k6KU @ơmqBRiˌkO*ͩz "kP@ކFg,iӈ*( o)^zp=4m$3):#5nZdW|{P&RX۬Ğ݈@FP6)pܒ@.OBH4ݟp`!bf<* ț 65EwF!J*[M+K% U÷lvXbsakrDzN-L?fDTfcf}Ns!&QB(L+w-GvK^Ty#.1\]Z=DE*q=xezkYk;vqi.9f4Ĥ) 7#fݸQawjAlHȆ]k+Bl@c/>Rmx,OC?vS` j#!]׿ӥa*ӫx_UR?؍\``>$j@̦%. 8 ֽ)c]3cQ@57,HS/A6vn^>xR >a i/R7}} z@* نw؉3-0foRֽT& ܿ21Kw #qH$QYi}Z|Je8k(V)@ƍw $rRh3(x~"*&"˃slES"xx ""hWLdkO\u#`]%~w!KP@aɴ*i;bW?Qj%589C `dId:H*O'͆):KK!8ם%cYwz V[&:,5ʄf. a+ӯ[Z:<V rDLSx`"NfLYз4 ԫʢ@l,P|&#_v†Վ0<9kt9Y""-$^vGn _xWT;v~l7bj1,pw$i)%G{s .*'x-b=]Yj/s:1"_ J'=5:51莞͢wÅ7 X/DGgyԚk(>miUkɍ bb F"Z)4 03jt AnHQ_} QN) vݑ:ۈ9/yȹO߀s3z9FGFi3 w--VufkTo(!vIOq5r0ҍJ$UKMH8"6K`oR.Ѕ`GѰ8 /xmH+>DPp%A& XnAqm>T |&Oldօsq|BjzHmhFbLkp(0E)eq2@1I,\7S/ [zP!]~1Tq7OH:BՔSw5Ւ+6WA9N,Z=t؏J %e}B_ A5p(gg P y8 neo:̌I{fxy+`#+.*yzP,iM/ OlP@xpTL}L0OChZz"U81R]D@d;!e)]_&;jӸNSYsZ 4$A;/m)#A+[d".IDGyFU$ܺ#MAAntzo5 ]|[WncT*y5%roGѯIHGc2]7@Mfr{ Lq:YR>ɴ30s6pP.yW&7Ed RfU|onJd$$:Ԃʐ] ؗD܊pFq+H-m:av::zQQXQ~i`Z$V3>RY}ǑhlR-sXO]#h:u"B &OEvn+6 $e,iěw:a;ZmnKZ(T}q|X;e+qJ6{5GH)s d3Co˽m6(d:WydNuhF-S AGzht*zql RvL8}ƩnO8\"nBkDi-`^ N'Fӄ,,t[(}sVo{H|H100~}0{۔"/$T0A٥|#L*\S.a3Ew%2*@n$F5R~zpKjⰹDNCi&(4zOk]t,k ,Ut{8?h@bK^Y-weGPͬS8#gj*HPh ȔCxs2Չpj(1WZOy.W0rU+yFv6p/("^芐]e 5Ŋ<Ԙ)DU>v:<ѩT4j^ގ)U#Ąu?r] ӿ><@~KܯI^WDh8Ol/ْF4@+v" 7{op=iAΏپYъz6I-8A5?Q15Z夑x@tkC8Tuga.=2]2NM8t}tb$$W3 Mfn:D{;0~Xwg}O\l,{T22NN ab\|UKmWȆC]>>" QYlhh=`ԕ--KAĚR m}|\ԅ Ar)  m:Qr갔wFA:WWcԳ;ͥ+?h@D| aߏ R?u'3h7wEay:HːDoeіB+ٮ] 5*K4EUt/pKE@ jjM:_P:#W-sĎVqʦs}2>1#&37:Ɣw$ȧ$Hd>%GW} J-/bngX}i A-Ar>"ئigq0J w"t۴\I>$&%@*4&3ax&KfmQ?^Z}Ϟ#z&y`.n%lMuBbQ9i l{N,NXZs 9`Ji32g3}|Y {Y#I!k{rB3&UU\x֕eoW/"1hDB&zyi5p?hoMj0vfh_un=_+y.g8܄$'¨/~t/|[Veiˡ.^;Q&niMhyL8cd x?IJ曦] i:6!rrS $cI=KȮ,_69) we(=f/@Aʉ?Ea~zF2M.v3Msj3~NfFgy#2ߔ_ǰ_`4φTeD!M:>ZI_ꀁ R3ʱ"8`lA0M_jb,I{03JY( 2^ykz ʹi C?09;#ֈ8?f+5P/3REZ "(( ,KE~rpyFU&pt{b(,8Yt*X^pw=r!̮Q< *"*4r#}=+::Jl(+LJheBӀbd]8f ir ~\b{ʀ4fqވM[phC.mTԆ/sDsUى6lN-2)tB' үxX? Yw*LpF;.Ug/Lv'G5=;Gq.߶&)>UAB ]it':"> Ĺrch,kΩ8CWW*wՕ,?OL~RR--r U%~pkF6{ unJh3&A['#XfbR^h1Tt'L0plu;yIF;DBM;^ 4fyOuNƸv3^az;4g;g-yIa1̴b 6թ)eeP ') ^B:JU[m}[$񦴨/5pDC?baa'uQ>5^x%a竄>{LVC/X#}w.NAk4%oV=.?GOSLM"_W^Qq8z0RS]yA<W5(+Žߍz D)rzws%A*,ڙ}/wR,VRS hsro[6i}:Y""͔Po45~õ)k]juST(]M [9].cI}=kD 2ں d* _]c\3"*{Sx7 oJ>3Y``!5dXYHL/ZMa'@Qkl(If3>i# T!ԦǾ~A} י5٨Sǎr=tCJGޫsê G bda|˰'`YeOT1A^%޽Z#}+Laf)uc{ucc)f סW 9pxvᜡݑTf4Q@93քL!ImDR$ omgn+25ujH`HPs0|9G4pėkwx8Qq y9'X8JB8ŹX=piކ7grOHpDnxDiIQ'2^|맱E!_ k3UM[k{:Vy*î5Mj#!~M@φ*kb4B4\Wa߻i8ڙ R+.XJh;!'߲|ԁ;An A8*wGCywbrLν潗IE S7Nd8*&hs8QQ[ OـYo$i Z#p\SKjcK(jwk PuYơ;uݣ,8{$+vꆪa=7Z&"2 :OQΕTY\z_ m8ޝ 24e}yN.~ #L]P0ef=>'¼VWl|. ns60K dZeЇ/BF`d,!OC&|J>}8 Gp\wp#οeF=Q.tu;r yᑖ<ؔ\ i"ƻY5ϰoYY_| ywѢ8?xVR!ѸJvYjf2 !#5E6^n=`F7& u]aus>q'Ѐ7"&" kYʤ_pN_ xjgb B#<Яȷi?4)t< "8Us/L97f(cT Q )g/umtI > '%r5V$W,ۉ+ͣ%PY_~ `(\W7OXe)UA T9}tRj,[Gx3ۨZL8@Zȸ)5Uk~M fSTM=ܠi1b!6AD1neM{zv{b[lŗ|MR ʄۦ)$,y'("ieKqg| :și+Х#%$MڷHGiFhMf S1oZ0~: o SUV0/:ZbYj"LؐbHZ a2!>tQg+\Q-[k [n oNo]9 "1)k0]er՘/`ȯ⧯mFrή3R8ۤ|my,U.iB%Bڥa,+Tܦ{ 4d{ی\7T3(&Ʊ~}=/:%KmRH )ݡ\-?Z\ |~Y+T[-ܕBQ{$6(ֳ#E$jΥ[oON~GЧ#llA"Oe!iڝ;W헷Z\QrpSА68h}bVusl9TХ*Hn4Sic)]a,wB ZO<rq#YFFE`uO`O½DLyrE;VeRa|tjj_1e*L+q?˿u ޶Ǧh9Ԥ܂j3<= .,Fl*Sp*)Snu`R?7!&TPƇOBF]̂Rʤ@(VQW1@""lo cuxDl5˜S#"$YU>  3|f$ZRPQO9˲&gV:'k;C#ÏV+x]s?}|= AC]Kҽ|!aߛ"vSc:KG`f/UzBD}1#F"c^.x r*Xz\=A nPh= ndk}Bż%ӏLDj>Z"]NO-ܠs.M$ϱfaa?-C+0cy֨n\dp ؽ$;qCl=N21[j01JÜh,c1h`5ZuCZ($q7&F]]KX+3)[uiT9Kܜ[IE"FO9_\F8h;?͔EĨ9cC1Q46A] ] pBÀcŀ.(\ {c^zWb+/S*"˭yˌg 8+}VL@tqc7SY*1fu_0_z?OH44USչdJ/j%i^%[9!6/j!5Nrځ$!),V֚s- .d;-V+J:B (4*?Ro>lC0~nhC*㝬Ϯ' ׿P>MۨI0~@^xK/WK -o@2,F58?TLN_Ròf' 2_ޣ0CPr4l Y+tgKW_&!V uت&k,NݭBFHn3܇@,!b1 LM`R_M|3ʉ..mꇷ֦ۄk^_ ielmJBp`/m:pyf2O-s#8kPL)>GVڑBX<| Aʖ“_{_ux&5?9 NҐvc#Ē\+XWzRm*JΖfBڹ?j[JET.-<}Z *o<4⁕iSnЧ=OG &CraEܦg겗AFu=M3Um_ <űZàd)id \pC1o] DXHYS㫬.[{VX&R5Mݹ)!Q~w5Zl+|4$i5 yx퐠zV睚B= _8XڑM+.M{orne4MרR-u:OH*J q.v qh5d`el(N}O)۩Lw/Hi}`xPTvJ=y. JL^gZ>zmgKlq!:Ǒ2GIUWDU9;#qWsM"E,%[)5"w(ugx`EɑOGx~8:ǁXekZJae!U)zOݜ"ԐmA`ΫE>@F[zu6g/Af쥆mAs o'Uxt7ɩT_wy? B/9+hePhv7O/?[T=ߖRS0/gڭ5R IH`"Y8?49,h{ovFG a)A8W3[=h'qu u[ [;ِ=%-)kx  QTZ h=㬈_Xerf$/a -Y{d Ć⎉Kpy Hcz!A=]%fb﫲G:(Lt挶q0 a Nkžep x'ϓOIa͞#wO^{hGE%"}GRO? @ܿՈHYDy \k*zQO(\bs* c?R)sPs!1sX2ˆkB;V2o8Ga)OPyw~w. _6%o[ɻfD9>_|BcL\sY[-Sf7 rpflɸάn/!u:;)Uu͇Zc<L_)ǤϴV:x[k36q/Z:Sc0zdT+9}VT3cjƝ ohd]Ü=JJ ]i5۞[-e#c豻ۓDŽ8Twr ',JO `lZچ]>$kؼ!Mk8mssSr2%:~&o iՓaC\HNA)HUB^ֆ)xHzM?G^ d-:t*S{ܵ,bX^qv͜7=GzվYSRxLjQP,C8":V51 H\K^(6d3]zBB 6h>.Q6j72]ΕI]st<6;8آWda@E{Qgߪ p8B2AgV1 2! *rWiN)݆HOt S{IbGTo9?^ķ:[UzFr8:ƻ2R>A տqj9`OD﹫vp9&;Mi ׳$텄ŕȫ+HkqV91bb?䴱a¥ͻ=m. ˛諾^y1wb GkI @ 궛^Ɍ^l~'`J\W.*Ji~q9hOUbĿ0h*Lv4TYT9VN}5uL" 5Y3bwge; -$[: `_-f[H. ]G\fG8Pڇ0\&gyK (""k,Dzusl4BpKNhߢ„v<77VjGE2AW+'@`4)W%[{αGY$`&qTTYs`uY%`ǕaVP5tk.L|Jn+FH2 Gr$k$+Em^FI;=F.ݨt.f&g)h#N# . dIոOρ h?5BH !:b6Y9oll3F._qxoL $, $9[O,"z}?d+:͌ +~*rM1>rT7ƉWGꟹk8Loye$ذ_JS-Wrk ~=(բ=̞ujySC%QRT3w~QL%ȱRvY!U"6[[F̃?EG4T)Z?=zeѺ p?9nAylăBeguz};򣳵k& hv7?yg9jnpt Ii,و9}> \(/-W( (-a[NK9J[vJS-4K*+[Nx)rG)L{j??`7}¨ )%"ʪ>fPR:rcG{fI7t'c0I DhݰWV8g[ BrEQ ˝OZU1t%L<zlhL̃Xl;8%41iIs$sjW )X3Z)CiѦqa7 X\9ULUwܧ"v7RH,GzA&zݙ\s;OQr"4Nw@w3!Z"1z> \?MlS݂Sƥ9nIF{A)s?+e][$ :?o0v;c;BHiME]ִΊ;sFi}COEmѰ灵>L-MLA"gYoDߗfo&?~# 9p1",sT%jp>T=DJ|OGGby&aS2`_Cŋ@ܳCD5I'?9]Җo5f`ƗVT|H^$C>wTLjI˦Ǿ51KEҔb:fSTI7ord}Є[AWz'*t4*> -ڥ^_&wntÏtSL[(牣ู5~= 28@(3!KR]ХpWBԶ춸q%YDƑp^ȸ# r7sr:5<@mzӘ"B8D+ʐ){B0~]/VR)||;LJr%WZjVNqCy\v2)ސ:*2N[u@StM5v&瑏6qH\-'jhׇ4%A߀/g=b:Eȋ $BϬܟIjf(\ fP{Qn&,:&D~kT.㥛Ix97#aAU>rrw&JeJM `.K@?Py\Uia$ހ/[O b{ajzeL˄Ğ8p^w {1 u6Q G xE A\9!&fȴ]ݪ{4W09TkR; BlqQڂ*@Au#淿PUG B4P9N;vth⬋a6CP gȥ&E-e vzF M.6[@ 2˳{ԩb}D7JE|1.߱/Ўq~nAs'qRlDaH#rZpa >[yYQ}Jx_](fv9*`usFT|k!TZWR!3\=B݈hpX}Ztc YS;6Ti07)@0[;MgI8 -MΫh_,j+ ӈثYЛ h_#G4KkR \l~ޏ7LL]IU7ewu;eEZE,dĦ6C!( wWO*!mrYYtXӐam?ɵ8.Ճp2,\>8 _g ȮDZ6E"$6E z-Zu "e0 'QD]ԬF9S]ЬoըQW6~GCO +8mZ9Mu\uTTn:q(4Bg2V._RhULR |[芃䓛}Kʐon9vYvg-ijNҔa]Wi*WR[raL 1@/<%Q2t1|ГԿSk=п[zdtY5 pU.Z~5!Oa AeӎK`xL8Ez8yØeذV݀p2e[[_̞ aCnӭ b4Ӡc$M/ G34r"T 1f"OXv3p,/VMX* ZJC3ѡ77QZ7x=e &g G  &3>GbVN+ a0YI1 xڻ[̎LӗSu$Ccߢhi&ApVhǬ%/b4r$/6gj(i Z]ߑJl"CiA>2dW&~Amױ0H='_޻A*YScƅg9~=թ{\3JTC0}=q}7I؃MTK5 q.#\C {q3&bd<4KOm.BXp-UCۮSսA&靿"4ͫoחh [2Sh{&srϰ]J=.Ȓ%QLqJq'{ed7?#: e\ANGq$bPVb{Rڬh/>9,I:C֮aܿ.&V]HH&­y}ȪWUBiy[ 9VN+*J}nT'XglݭS_u+/[>Fmw_فx`|KlP^k~O+(hP6Y]cZJgPZ=;cl-jEcE[3A!gxfOut{j0o;~M5Xf׊&$5KN7:B3Х; ~R9Ѹ;r7MW7nē#H'BUP38PqF J^I,[kPccC>@<^l;KjhCP?RkFi(՘W[)]r 5ĆG)C V-'2"k"BE0 qG3StX/N/ɩ;T)/罘8 "=CwwvNME~:a/oHWD +MFώȓ*ׁ#Uw6؊:K816W Co+櫬*Ce]m-͹ @4gC&F2oCqդyEF$wHD Ճs',;!ix%:S@p58i(yPh?j j2"Yen†(+Q2),Z^.c>OE$e)zu 'BjȀXn`23n|^,* _F21aO.qK"l(;Y[zXkAOP6522  ?9a(@s &΅D'qL6.Vٱ*ov}<AsA|=?\MvF;x27lSb!ܲ&tBLD|ȃ]M)W'sФ4 t݋hVoMT8ٰ-y#v+撲349<؟ѱ@ňOZJ9TڂZ%iIXEe(x_;g?eL퀛) 5<a#Y'T2~t)ReHJ͇BEzgxjgnWh*XQr,ʔ?`ymhk=&iվ:yݻ9NػgҺ1A6G7 TNc$diOKPU}2B0AGZޙXxIĊh(R.W hSTV&+;#TY?DblU0 ks45'}5* .]rp\h;es?Jc[Nte*$uةn7=r`J&ғ u o@k#T6|&)+ġO7{UfraUfe?]\M`~S#㹡ǓݞÔ$x殮Il.O0]XgT 4QVtŒ0nQ?\#1cXU`> %Y\7Dƾ(deѰH,L[c8פ(J{rCo^d,` FJ !^D0g& psav

6]\0? B]"Sᓉ ޿PJ: DQƻID)h>2@jbnz4¤ O,7b38dv37zfXq1Pd -69sQZZiJ['A'97:eNs W>Hn)/ d~|1 e i 1x2h\e&N@ Yl/^y=$gi,X_*s*rt˙v('K' 8%b,t"@NI<>ex Չ޴2<M;DËzçs䛘]!f[_e-~1,]}C K;<2r=-|mm-z0;+ZxyA݅#nf][qw\+PsxrfvXڪtde_u7aٳbĕ+V+tNgXk KgD 7f9kuʬGB7Q p\rDCr%EZ{\N%a(fbd`VaNpz>ua-5s~ȇ=e|YiZ"*WNasl:Q74D,f(c~`Zg7h%< Ug(MJdNܷͲnu r6刉^Ze-w-T\pHrI1U]eh"ʛ1bVI4öΏP-4UeWrEfD֪0d^sf }Yc׸eYڽilJ{֡q{`28BRy+ z|{F-֧Ҷbvt (Sݹ_$mfp1E-,3φPx6ޥsmŅNa{QMGjLCoPL;|^(rtP#'Y (SҒb~E+u#H%8P Xѣ(w.%vpтEdlW'jw>Wa0Zߟ+SMڛx?>[,[sR߼:$jPgu7+x*ɫBBaɒM^n2.%ƽ{KSN,̋"'fu.Igt/(})]܍D?SKM'@Ϛ>y|![ OCKI6$=l?I@RAW/YoBUlzv @o=lE[^1=uƸh+"ז`6u xI'bsFd݂S3Lk#aN8G"Sӣct:]:l+Se.Qcgij ];@gy}/rk)2tܰSV=BdG.9ENͽ[(K sԣ"ɓk^urP_Ы'NOX ź Z "w]Wp(ħH }'GhzE1VQvI>.8x ?g{Eog $1>[VJJԀ0HZZn wg*/^V,~)ebp.NF||Tr1W˹j#(|{F4phxֈFI >Bҋl\%~igU ^:?؈Zg×k$L ٺ-69&.HNh{sB>*(T.pH;$~JYܽ&<*aXJH_hOn N=ށ<^ozDlYM\}3 LN&>u0P{z N ?INXZLryl9/Q”pSI6ŝ*I} Tl)3[ H+ vS sg*H.~6uٞ ]V߮'~]}j^t@z;YowmNE9z9qh F&m-q}o&̨݋тMK3gnVJ< +Ia Nmm 01ݸ'tE?(UInN5Ѣ| (Ӱ_adSʃCGbK}ȉR`fBr䆼a꽶POC Ѫ{VjQ/Gdgk!zRq~'VBU;`ɴe\۪,6 ق=!KISB$*dqSB&L]քO3. \Ȯ]$L4ijn u"DhATT٬ojXҹeJ⨔d+#h@c(Z00҇Egc}XC{Qa cZd'J"C«raK Љq)i!α/Uz}/ ^12_s"K *Tc'?(TĔrei-$!}oVpNHqgk~?ר*X7ft!:F={'mT|܍f;k?l& 鱷TՔv?=K=ۓ7a1f(WYS{@/ Ϫ]k$DK ΅d0( Gi;:#G+'W~ATm^L4FUKcv8+cq`U Ⱥ*1 cp&}wĝQ^i' lp>Y='YN(.PӀ/I%wR5v Ah$J!a"? >Z _`)8* \uI{؎ gǍ};M!I ㅹ`*Y}lWm r@7&H7ox BTx0&Epx 9I mv/mF&[ \/Tƛ\[WW vk 'J `1H^62sǶM,if˾WyN\ RG<+:^) RMj" 62T2CտfZshZ>2։uʁGHw|k\6TZ栞 "e1ʞos#l6VjG۹Kp/vNJٿ?k~U8bO4@Y=4 YW8Nm&`J0!(&߼V n=JJbT#;u3(\CVE31^5'hoY3Mwؔt&l>? TM7on`} M&=Ïē tQ=;q@Id{S EIFg&W+NJ(w‹: MBAeQ}~HVJ:rDȇKhT+ rՆY\sAć<8x}&gnbm-ӇL-?69qy@nR0K+RVHDik⍃tIC* 1x_ُAOqVq di6=Gg63蕨oާc‘g47Cx JaY(H:.{͜+ hG*9kה{20oba7gŽa@<{i=x#1bG_Ņl^:0p;AaeE&߈YrbϷ{n7vߧ8ahԂ [hN2u!U  sͽvsaW~ٗ"kc!@FhHX̓wf'/ h`dބjaDq\N./<F{cq iLHD9(ٙ==V>{QWJU+2u\T-`8%gϾ6kgcX (ޤG{6/s"'mExb5WWt`a4[x<s(Z.;JgiqL,"Ɲq:"}t]Ӱja K!LbR&q\UBVZy}{EW^Rם/Cw>XnLmڬPq^ |~6:mzXHt֯h{Zlj=Ϸ1tn1dZ8D2a!(: ^Lj].yp M:+E~bט3vdA%ga|ϭ!:([Χr̀ m@O-cnt 5]jTf C{.šZIœ{zY(6i* 7Bӛ7ZB(7ەJ@Zy,)*Y>Njk7X.!saSK'3YS\au SY|2 6 9C{8.Y-a]Qj"}Se @8ZMDkHJ7Io<ƐY9gAG)UPpamIg*Kٌes"oGJMVUœk\,NbiQMv<?TW_uRr'/XŚD*#n/3\=>evX:Iֱgjy蟦Z=?l!a)U >Fo]^Za Wfr]t-yR=©TIJ-`4G)iW c^c(M~[!tfK4@!hoe# s;?z.2{WJe%͋M|'G0{;HZlF ([F]ş-}Y  MR'ec~CRQh|˸o),>|2 sZJބni?r ȸV W D},?W~Z|0&/"7UTrѻ4FyL6H9;>Krh3e҈:G`WuuY*(A"01! p CK {Q`%WJ]V(5QW_KzH 7a{m} yeYw=Tdѫ5JVwzDC|#9z ̐L*b+IeٻgH$ twZ\賸$7HVӱQ?ê~ tp'Gmr cΎLE^~tON+(#d$τlh\Իĸ= aN$'ϸW1iGz4:!EU#[l69?9T0KO=LL~~(x Ip\:\0{ZXv"\IMI,KJVZ~u["] vyba<=q({ENԑL 6co2a0kIY_@n{hA/4K>}ICVf[ Oi5y+N~K^iO˃J5z )2_td&|D6҅i$F6h.`8:>7; 4-,ɪ&_Ǫ9jgq tU߰PU a0ߴGH޵ҔӉ|s ЕVͯ(VMҚlc=%B}<भxZwoJul}ܸ j+ȡǧ?UHmu^OЩprQ7g hY^SN{-.Vd|dYbUW&1 &}oaɪiC~`OߴYk >ӯ@P3 [9ۜh+WCNdAK3'Ҽ Y`o:Uӷ̕/( 6Z5IYM1WG>0 w배O*yaksR5A3(:*DuNa`]U8^fN߆ր} 4 Mm#FϿQ";kϕ.vDJDni Ư 8%bRZhjk3GȯWT}JH8_C(>dfdqٹJ0 ='@\H|gϏݴP(`q|'>^k%C㟧Fc;L4x0/6 }0w$E [`I|FKA&wF1=pU*0-}ơѽ Nf]V^CITZ.HPkB#K4rǓ`rl 3 ѺF2dni={ p9@ aVrx>W0})mRyse ]!IS{2X>e@/^xW~& @ȠwW5WkZF7}ykndWПh~SV!eBQκLp5ocl|=7pt.y^4j`]s,..lIKy s虙X24zRɺUA$`}FM7'Zaծ ln^("+.Ռu- Ms¢/9|@{촨EbX꥚ jH \y(x<&7 nX%n|*^6z>G$~{iL=ԐB^JXd~^)9kaߪ]A'JJqe'2pu9@ZF=S%=0RGwZ˴Ut;eXyyu2hͦ$N{5FW"RK͋ ܉;nICfcIRi%|3 u-C8 Uk55[#Y.p4rʹZ̒+)(Jtl#4@:FR ezO5iYIKNÈ v^9,OoFAkO\Hn"3jQ!aQ1In<9&JafC)e% !N&?2 n$ %2bD~>+O<2vrqi~>"cvmAh˒uB^,_O9e]'hAZaI#xAkG\Jp=}S9EA&~\Fe2tXq! ebX12LzcSS,&ABKujI4<@!+ixЁBrLfr:89QlJN JPh6ƺl)7߈# i-|=Su;oa"3h2r|gSLi%Zg_ң+3z WfuJ c3uZAUA2k#1)b/bN/D<{ v[Ѝ~ѝbKV&bkh{>v^RA^fN MoԎטhE&Nt;L)4 u=U [`]{s޽qNtA\ f.{"..p-\K6-LDm[ |mA7h%0i^_ [٦k4'گfjCA L0>kWx[f-}`.@U%lV/5z;#툲܋.F s3?F[2=I1OD^ZqD̘Tj zЋB -/Sb̴\5rF0}٭sj9֍{#m^dKqnнGՋC(!UϲNj>@"O>{_C݈Lb˥cA F+} DҢPש,k7FHUʻPm vOSݜ}BDmEYӀ:_ΏK3|9;ݔc+ǂFPNj~i% y=6|$8*^-蘻?zY%em6O匈ZF.E ;J1OcZrd).H'V% ok*ictFAcn(lN?/mG0dɪܑ2Pm;T$}o9b &ĄfG)Jk+3=_aI]6J_`pbXcqwM^m٥ m:^RC9FjXyZ5fyN F0V1JSvQk|"Q/rџdlW뒜+A.Z l ܹo7@c,aE#ƣiYP%Wj_owKCǩF]fb XJ)p78c||\Ujj9$͵}{}uV;0L^_jF*{'~~"s)h#-]l3G7; %}[ogOdžtJH<hCW4J rbD>>XQI0YB17G xDY [4I+K@G-2MAkgb\`NF5 [qniD 1T'?fNY9V4j3!KAMFٿVcg/&pa+Ś.I f׋:?mOyyg!~,f- TpH/{uqvy򈇹F[q$Mh*P(Q'Lf  N'={y9~1K4.,LI4";SI|F|+qM,܈RVq 6֒s>u=gB1;E@wL̉f:F2~V^Ȑ R|}@|s67`\9Ii;:6IU>VT Dw/\.w*bM%hB(NaZ|,n:#:8ʺ觌]x? w\L\wʸu;!F4\hr?F/-) 2= $d1$Аp%|?-e𮦧).Byۈngi"W<«5qYV>U^p}oX~5 ,uSsI "rRG0Q[X=>0$`ĭyfAd&S186zMjH2BԖ YqE#8< ^.p5j2{~+"2ccMg$82mr>uɗ4DEqPJගtVխ` GYmFtR@0s<|G20[zV}"v9-^ɄPP?dt(aZ2:3JdiuGHV8ȨJTk7q(?5G0y'OѽGqG(‰fUԤӠ$<^+C3c[abgyC d ZA 7 'ÌrcԊ/LytNS(eIßMM6פYɏ׏8ũQmWw<xZF)jW_%"(6Kɯ&vIPqQtZ߭S@!vHLhPЬS |/ܝEGĸ,@lxURGc@ET+z). a+ zp@ o`;';^ǿz(E-`΃F\蕎fzfswo3QfNX%0v$d_gr-vH5zDg^Mpy]ѐ8M~18 ,d|TQϳ&PPzۇ9E`TEBY[#kB8 ք 's /ɽG?f`XF[Ptv"@F]ƝY%Qdԉ|"֋voДG1l'r=Wͷ"=Vn TFGgS- F->"&Y +Sz\a&i\̵nhHXB]c܎ Ql19$+6?YQ˂&*`w9Q?͇ӟ,6<C]gsZ.%e7{+a+O&I;R'-57(o:Kj l,LN+\Y X"rɵ L3V􄶑e%<s3%M*ͷ%c 7ƒ^(C7Cb=udJ9>#E  Dߜ(xf V橄A&}ż:|R>ϟ/Bz?}WknU3n5Q?0~fu 5RblMx-܄\o$! 麻(l;Dn+h<4Z//R,/ɛBySrЄ& aQ ZKmr jHJܻwiAiح 58xu|vSDLzl3IZoFzf7 ɻ>O '* B/sY0}ZSOQ<"Vt_ oIH Lņ9-_EB47(잗eh60 ˍ&WãʁI9}B&{ΰ|ߏ l BJhlbYkзBpҿ(ԅĜ^z4]Hdq`<0etߞgΔ߈ 1[f>dy[ߴp״ޱAltO<YHL:nŦG?8@~9{ 0:b,$,zcrV, OK\G}0F mc}/bQeFM ,Ԩr a&Qf tHv?lׯm.R` ,N@_mdLfSx^o^xdy[n3'cnݮ:|6c C$+62W_ޤTjQd䑅~Y%1MY 6ߨ[YZ֒Dl0} 6z%$8l6*ibc}Kagv{ůfemўf#oSOqolZ|V|ƶY n9loq7O,|3ZmHpLa)ڕ)Ƀ^ q}qHח #D8HmsYNE}ezzR!LE; ɚ 0C<]ЊD+mFӵa+O2^(i<rj~Q3TAٰ \(D{(C7/CfZjs4.cYig.'9LXp+dQCjPIަtL .j'|kq. >K/Q!p88+.0F\K$&#"K medKW!Za;@$(ݱݷ0(7VTZ1I>ɆGYnG_'2 ߿־K.+ݸ%ҦSleL)< OPZEt#d@}:0?) O(11:'cm\{(ԶG':HU [DKF<6ŋCF${CBju*Nx(4>LثDS4,n ` wK˞7XaL-_V{I(ؽdkb|M^s2)e 1Y4a\]C2pqFD9,\ײ2wbܣE>~8B v$MyWed&ewKZ(d="yܹ9!ڂi5I>$FvG5kH1SYETf?FG>KQp3f<~@Lѣvb۝[G {pu?[.L`;/Buk50y $zN%7ϧfW+UkYmDPdj]IL5 I iB:k: c)EXLf?=&˼:;'[gԸ!|*݁Ԣ q"um"L^ju`*!l Ox##"ej 9`v_Yd$w+t;Gs_IFx*bgEN")ĺZ1뺗cDR^یǴN7ԕךRa#b7QkIm4{8r˰"탬YIJP|>[ \޳ᢂGTMMvvY2JbބYOGZؔ!U,f=$80y h+߹ g6$׀ltBQB&8 טd;Pi $EaQ^@Ea݄a9tPE+GqB]'/ϗ *?16_TIuR*VixtcM ƀ>GSIk$L}x@͒i> #k$"qF›9(> P}>^11\ևXZ0#qW`C”xXYrчL ?py}q')3aAl78XqgAS-Zwwmc }B.%^Ÿ WtxD%-Q=܌e)Fғ ʱ"CbZi*lrj/]uVjK}S72E1#]TTtimO~6*/Sg8";5^[S!U/H >lԁr:v3ddJ|T7v~ՌVkjy#{5} UѴe> vwL{{GC|XdjØ^yobzPP>ѐymĖu6W/Oau9«t1o斳}͓cjL#Q)c ^@Bh&o2O=,b]czً ANv@oN#3"Bv'D)=Ƭ+.Z*t%덞8 (r:vURB`'ޣ ~BJO[FKlM80CY,cy,n"Ss#]ZVSp0[(bJm3;8ǬGTq0ٮ}}E t Sk*+nZsb ~@6gi#ĭMiwҘjQEoP[ӫ|fu'\N|JM>H+^';<4{ϱbyb<Åy7FXFȿp}s:~ɪhln.ahٿaFUfI&ɘL|unbYu1` rMw&Ї9c/òmoUs1܊<}џ|{yfϪلg?L1O̯Vr_nÝ7IOūR'f];lΗ+gg"`3&Aẙ;G5 񔣋u"f'AkG`u Qeq-)\o/:PY\q'Ufs>ْ=p fa3c./x v HVID_Ol'3YdV}sú,;EKpx'(dKf2rvYय़׮o& óW$URfP2^g 0y0?a)o׷3 =DHS`xN&=}g12|(oH튬0,#_2KќQinyЖ9N(hiʗt$Lsa)}z)7K v%V(! uWQ@z|ԭܐONZazqvkS)Wx#*iĤ5qSfy>LOa;I), >X{bM# MR`~'Tp&]4N=YV 3ނ$1_Jl_p^ ) umQғy_}wC@6^5Eoӷ iP ou嫑V63ks 0R-fҤՐ*j7.a ҽ|xuYGhL))kjNy'KՉr:!:5Dk_*2A1XMCd-I2]qma"$YCj.Nkf;WzY 8ǭ%`2\U=oNUr7zfh8SZpHht㙤4Up};d3 so%|.#i"8eE71~X42R! # maKOfR $ ֙\HXuR\4#etYTw"}Zh|[?BHcw@0f 9Um>}vֽ[`A >iC/iẗ R<[0` VGh`MAKų4-;[es5qRs?Q '(L|dw>3О~0T؈W aR:3l7E> :sӎs;W DŽD5zl?MgCߢw;|"+23o[j}8] l1E\8+ w l$RR pCf+moC~5i RDy:%T b #@Ї1?p~9֪r|"(vO%xuh_Y(q%G:9w}A%. {Ymä{R?ja۸@Py1!'MG2oUޡ3 gt /5b"8)WڻƱ|)2_G KgX&&diM "!Fvbqq=sg{b{5`eFPߠ Ue cn`dC 1<'I|%f{* oPDZ+FEVu"UBogTpN#W ĸKTGX"Ұa}{00jϒ#ϳSKh_@;ѡO #g[ \ӱwx`Ns\xCVIC5 rģUx}!}WTrE,10]4N .ʙʟeؒ7ZzӔ r%C!ܷP,* :逃k=CѕōьU֗v;O&Po[{֥inMZ& 岐D:y_H-/|[͕ ӰtNa@vA; jjٯIF.4 iG~v0\mfrӌQ:ACb#`pG[6[*wna:-0JVH`vtwTW]&zN+YI%PB0}+910r| $JD'>U<"CSƵ*1nߕ3#4H/mHm}'"QHh -\* l@WY7&mCO]ra0&e2Hq9knǡg<!f7rv-x^x>% `S_of(ITVyګ&3;g{+ޓl !ܛD.핁$mF7pܗ"l_}Γ]oh.};z  `QeH畠SqePNدGKF݌;7[kL4FuL/9pM2WVJ C)s\Ұ0f*:v ;1-H,%+2’zG"n'̵-0ѥCooq9!@pmyyB@ ȟ3M5j'}58/N_,n}׬4% v!U;PXwZҩpZL%{=mLd{-Q,ΜsGYZ}@2){H/Z!,$ 5TY(C.ZLkۋHeԜ8~F<=:d:,8EG:;YwJ[Oj_)\NxWP|Q>p~po!`muӧ$ zR*%AQ?G:Uē m2ƌ2uFb͘ό֩PScQkFad6@*1NbnGU3rP |U<&NPσT<4,)t{ m!9E$ZCI)<i0yD%_'- ԓ5Ff`ˠs5Nҷ+}`S?N-,\=s%+P=gzvd9.HTKa[yK-ԘDr<O-rj$U.fo殃a Av;8)okV@J|&ܪ9:́7Lt DdԨ nQYLN$qC6z1K(. '8Q)p۝_RTH$nf9\tVlJŅ9V_%nU9+xQq{oLܧ0m&kCӒ5lr(Lrc!幾(,Uz*4S>.6=2L6k(0%>:iji?KH?1Yaٿ<\]xBVߨBmkYi(_Lˡ]mؗ 'ARFV]b3Tʤ٦G]tRy DVq2zE8ZW#pÕ(SlCө4zF$G)=\}#5& &ڡ +d:wBWClD )ÛϏ[)O<vk,Hĭdg"Vۄ5..gmg5w?f 5RS# ݞ>D.ʴA%R#M\`֯PUQ7ݏC ?Ց' YLޯ:5ЄeDk]I4OeX>c*tTAqϋ#BL;tVYM~QEǙT740 ʮMTkxֺE.Ƭl{ϼQތq9bM+Vz C&cS!ʒ6r\8#2/0HbKegh|]7JR_6PSU4:1M4as!i(SpzOJc\$8P e3;W"9Hm2knQ+8>HY4q!}8 *f}>}5掖̈fF Wט$ Q=5?DA}/(&y?%iEh -1,}+  z. 2HӃ^;V:^z4Ky^oQKN )vW; >|EsWVء\L+{e HQ3:N_&xAd=ʢv:~"%ތ e*4DdgΞy N28 8_W+^9 *PMmplRm!fAjˬwX)"[Zn9Uen?.CVe?Ұp>J,dzuB~tq5b6i1O^yٿ4]? ˀaλn ®}JIp4,M^4 "/IsEM2A,Nʪ!&[7"mJœO"sv\ "*;hCIX(kw2 k̿*.rޤ"l걨?hg(XM.2ב0ea6ѹH0~)%緳zP>|+p=nY; FU4,Wn[c`t EqLy'? ~MlYL mD,eڧbx/`䳬="O| _Ox(,8Dw.h έPLR,Q^Iɻծ]ꪐ"DY Pv*H,KHLMyeE_f+~C,cu"3߈_b?MD(џin >dMӥ\[]fGF4Me^8NAYrp] K!h;1VVxQTyܯ!Uwbvnvv / Y#5Xs&we+ū9}%bcta3qU7A}yn}D&zA9Yhl e\X'\=R[\.g4mFlڔc?3cV,)jhM<&H Fi'gCت@m@Jcɑ ?uj3le ]!R|ڔ>9b|)L:Im?+_/ A-x\m%5"MpB:qG\n;5RYj2VG<N OzP ]Ӝ8%]Hd BnDOs"d:~(`&HFg$os3ϝ\c呶tI(L83>G/J,c#-hn x+j<hC噏u%w6h-|Q D' Rf͒{QDܟx~!dZ 5K\M؃AE߅@ȱҒ W*<ф'Y7Atkv3Ud!Կ )-a4QQߏh?S=0ȇejQOFb 4(vC7c2A i/ ͱ)Đ/ðMh_197^~69N!  k\ar[vhSD˳޷}^2ǘoAI#R3.4h` 5Cm70jyzSq]Et*=^26;{=!19 BK4ߤ ,'SYguѻ >4 =~{vF5+ѼӀPU..Q_"mfms&]!n+oKa62g-z,kV6Z`~$]Y]Yn}caLrTSqNL+ypHe㉼u Z!@lqO%4Zm65u&a-[;% *_3_\M]<@0>8Nv)]k^@ 3XF~K]_I%mjxb+=dX{lFIʳy}$%6}$N;}v1/%%e5]Z8~NѪx<"S-.aBl Egii8@(dzD @aaP!Jf7 cTLaE4;N O6\G'u̩Gjމg;|y4$ jL0뿞@3u$k rZ=]0TyέN니 BGe`fM2ViU~ԧ{$>G`]N>]IioyM]FAش^CK4"Xm;0t̖xAO]g (tP8pkJ2P{fὯA .ޅ 1r*'eZŔыc-G&uAUOS?7Ohg>zv!W]Wȼ$ea> Pٔw@y7 MATg:M!zmui\-kzu*Yx]6qXE9q\UmW|06Փ&~᥈zZ냧<0yHV6N{NQ;B"F?]mz 0.pljԊh \^C"m(6;ȻUc)VØg% =*]:xψQtc ;%>tnKYNH9g='G!b qJ,`jPp$y+NN>+1.}WgGe)?A=#nfeEu4^)4Gp_.NYc  1)@v +ȣp urw$k]P1:j1#Ō?kHPҽ"|'<9ÑlOHEҘG& o`yެV~8o{q(2X*gG[OX:#Ms 6 ;!N*A*.>x6{\"Rgx\$(8E~͌q,EwgVf=5`HP~*Yb ]7@YGGD8Ԃ>3u,5>h$ :jsvX|,[ZjϴOmcv[=m`ɬ62HQ$9o2"DnJdbGzLCgс3v;y@g߭k9S+F_3Ɇ"'6$D:\Pւ|”rm|I4< р'm)i=5M_R7HپC-I'Dy]}=obt\K'>|u_qLE~m1x-292wfZ1Z?.()tLęd6a/=aܽYqp~UpF2;>EC)ގ5Ki-PTM H12bV#<4c]GFc`Vp \!"7x̥쑇+,<)jj|(T 7(*.HLkƈN6 yuNL+O}/ ~(#\te*c_Wpzd8H*oL=맊$&Vr`GotܩZne@sxA%D.l%[r#JV AW^5x+ۨO5PWn6A)usmwZs}a\L.=&@Gn4ʩ['D"v1n;ѫ<֢_] DžzxZ.?֯^'q{N$!/-W\F\#t T Tdzzi/nR9.YտCB:!rս&P0-;j {oۘs%xJ~^ 'SE٠`) 4EL.0$7ExXm% ~z{nEB)x Wdg Q lG!Ypri ]_v#MZsӉ8kEB,H+?7k[Px'F4mo[ѻk%cU7a*BYpEUXq`ܪ0~ҧIFJJC9SޱQ'ysO(t5눙Oܔxcڹ*]?ȫ2YԀ\O$!@AG-ǴRo,z=\X$D`QvKmSZPd.q-1qze@W5Z7nటMT@ЂLbHp6ԁoj^pê,_ :Cg+7&铳Ϋpg>n'mLjN%(捶gyYt:#6j|E*@D#@7] 9Qd&Oo*tw<0#3R'uziF6Z@)5ܥ)ڳ*}<shY|;_.fcoA)wը'xT˂;ffh[;f`0F˪y! @c(#m V Gz^ntUU[™#*,1Z4m6HϨπ%uCqI?MIX)%*(w&bWJ$+}3C*8+)m]({hCsȮ$^G [XTɃr g;8@$^%ZԈ$.F}mO UŽx&L(k$VA(~.LfQ[ #sLM';dh- Vv9N|ßL&Fheǭ**m9\#*ʌ2/XBSI%vy 0w.qubg&v2'ʘ5y#'()a6{\}d:,p !]yPV-c=981s|ƊS ~,L~v&PEê!@4} ICca˧󚽷R6퍾ft jۄ#@X WEhd6Dht^lqWx}?GXBN7:Pq`^yRjC)lxKRhB;*#A/Sȱofo ) .-',C_hMQoQϒN{mq'пau{-Bm+oY Ni[}،!@ +E{^C*\ގIU2wؚ4r>WV4мc+e^t/,yeų]#Wq(25ثW İH3FW+OcQ}؁PGz1{3UvR+(^mַjRe% _c^a77Œ֒ԟ7- c8_;S/I1%5JHw@F9c+ZAfѤQPhm~ \bѕ{X,^V/h;#"5POʗЏɄ^H9%)+H=2dod'S0 DT|E*@b6?oʫ%̡sdEOO~SO.-2)i4鶹F@bj⿯wPaXtA{dX_zeQq(DLњ2AwX,D^-ڴ9 (3c ~0_Ҷٸ\w牋o+9ߕ\(TBQl4;*?.&渎A(!F*%^2LԕsɋrPvԍ|eޱUkQ+5ȮcZ˲} ڍ0v Gab+9H,څWL_r+6=eO؉1zMOW+\R76 JCtC1 h:V*Ŏ4N1_ QcHx,-/oow'knl? #M$Jk?.!0%_4g`s2sS57Ec{#:t7mU1d !כx-_{XC9򄷓G׌l JmL?w:xc`ӇYY\9[/ko\3N>KA1RzϿ,l!\) QJAФ=B],NL>ᓠo&<14aFB+(RrS/c NjK XOpI$ - Be&W !Wx<Լ*^v:yH&5A)LPO[ Ɲ8,z|DӂaL0 $GZ~FאgX%%]d_Ôc i ~{.(/*OZFVHμ*D7,Z "5o4F(vlH~5=oTni93 :*IBlCUV {*e(o ] JgȺ_*+<"a&RS>MN3uIxFm=5a@!ٲV-/?m ]UHsڑ#ދp7wR@|!$xдl`aK!^rMW_,ܖoԺl"pP{D'~UuCsm>"Z1^T\/HcCnTi%|ח*.rа;DͱÎ9L'i+.$J›M u՟="$Y:OǤ|n@?WRo_bUUM+svǫ,&Xu3p9SK*@FA2/\׫hORK%w@us':^iKS!TMܖ` 2.@X\`wyIaG0hԖ1b:~;kھE@oĵ #!&\B}7:Az8@M>~pkoWm',H#O7ћ<;N0iճAq5 =_%ï^gw[9.;ز@9>]+!Ё _Wt"Sk :k- bsJ&wEE]ieZ\OU'@`$}o|Mo ^7A\i'kZPy\YA_E7NNJ]1#=QuEƑ(#ȀP&tY4yT$n"'Bl ܿwU-jg5- S_Ղ*9:feh8>T$yLe(; uHY=lLѯ1"=swCvS\z4E&V+8Hh蛓/HmZI'r(pt8yZ)cW2ь/)L"\cT66=-51yℵ3(,ib*;df=ZOd #ccU+b9o?N JVvr'C>*;㱓a;~WɛH5@qۄne#b=p-!Q^K' ;;:ݦ]eܶZvBΖjꛂˍSd-v# f 7ʙc ԥհ&E~k@Wp`0X`ОVIST.9}>57hѽ3zCȸM(K wyw8PԖ߯nTF4͛1BcBs tk*t:ұ >e{2ѥ3hw^^G(m>VЇ*#x%3{B[JG.4 ʇ8H۰:2(!MVN$p-d|B\iЗ| d'v:GaFPL+5r}#lCO=b˾FAGioW<˛*UH=UmԘD :~Z#':L% U'~? O_-D,'c>S"xW{'"MvPXvs+US+\xjoEY; Ȃxe65҆!1PUZ5gU`Xe^pOJZj=AH=Qt-|7]lKY3#cBn(6doFZYp023QKmhh'ɗapbnxYi=sȰj3FHKěu+eF5I;}^vd5*NԿ lѽepO]H *խut{m 8X ې6W( #1i]$IGg}76whQ߻L'N;x8\x 8NiWyи,5uRx4nT<ȃ]oT^Ģ:ʹZmK_ݰ*NiJ#FĠmc__Z/toRiXݵ9զ|;^Ѧ>hd8JD VF[NOP "iMhBH6)4s! :ں/h6w*qNj  7!l|["کԃőo I #MAZQihCOQxOT~T:0Lv]OM4w5v' W gyyˇI.M9NSkՒ8fwD7c[VRs7 Thj}:S2E}2\O >!?"urD֖V{{w!GŠHoW,Eт%B*OIcin|b)Jxڼt.ܹ qJwKG5z{:%xX`k-I9ZzVPc6mY0<^<@dƯXgOeV E{L\j٪h01!7|/`xĉ|NG #81&Gib]*;xmESf?w*N&¿UGߕϯ ׹|uP87DUrF fl'cVqir{/pPL4h[ b")tfwjI؄<escf`jl8L>`Ϗ'.KG`9-xz *hS2!౑}u6y:Tz\S3B&0e}`#Pf|_`>9 Ͻx-h,@ bS8kږGMtgO$Q ]>GxI.y>׻roч_v$!QC_v6_d9*6$+4h 44, E$ ,k][1G|!?7Za`Ȱ7*Љ 5DqUM"HůFMߕǔKa݉Dz*~_6m GYyq)haΜUI%ѷY`tHb>q*^܈"Q$^lK (tp{_v?@qNeYkyiaL7?wW恖dv96*Cg\z]Oě$LbL^|LhsG֓f_i'r$-LatVIbٲ dQs5ML#30ϿeS%Y5mxt}i\ H2g6qZ7[DF + v g(f?j[>Cz窺 pc;6_䩙z!0El8T4{$k z{rWgϝr$Ta ¯v^7X>Ծy__r9}bak&zO1Nv LP%8yc | )Q (L I奈NCZ~;uT2]TXYQm(uA?`NbW"<f+Ѩz$C󾡹:94$*?(Wrv\qΙN P-f3AϛOmӷ.n#'>H(KvDȠkA޴n+?Ʃ1Jjoٽ{bqMڙ;tf`k -܅^f@REOKS~}ֈx3Mj׀i/[AVOyE@j 쏞 J l1:{S #}@qmŚ]VyYrq[Ʋ$MffjjZс[}4,Bq?r*%wd^I#ȾHVկb=C`$D(!ԹnR%0 .0.wpIEVJ0S%6 IPy޶drT~̓L#>D@H]9`y٥ 7*2`aUD}9mw3n^P0}uAuтru'F~AwJT*I}验zI+Gw7ڲ p`L5/a6ps}.?2ؑ|=^ETDEQ(2zhMդnV%tn 64W9y=`#G(X[~tVݼ,E0u/>Ȭ@`Әlc)qlK/qn,U1ꍰ*th&bc%g6Nuk ̅f|{ Drដ ɻΉBTh!| ,lZI18|ĝ'CY-`CtNcZZdRPInpce}E6#)SXL8l\lL~Kph g 3g3'BZdal/0s7dk8۹09*E,TMO2=AC(͂:TV_.w5%n\?bX ȑ)I7ӂf!G^sTR .=Ɂ]Vbda7"H8?E9"%(V# L8S&!Ju>㢳9z&}(ݗ 0nawmZΚΠCiWȢ7Nʅٶzqvl%ѣHKKgHve ԕ룪k "H'SvWLN42Ttm#4[oNm {0uHsicJL$/C˯jԲ|‰Zή$Cb"0ơdxsÀ?ܚL_vU̴fJ||Kn(phXA>lS֣*l2OcN5 "kAR$ asM?BjO]Z}tg>BlI E Xj[Ux,V0 _˅NlZA5&p<߻o\ X%(^v飶7ՎkoEls9[22U)3!Į:Ǽ4ke.,LrbA7k3䷽+ˎ9 <$~(jt٣o`A$:+n_^vv܀fto{jJA䃅 NAX܋rnC)i OCT54XfsLTδ-'W[wvDe-^9iY6E ɏӔ5bwUN쉌97nu!IIcB 0Jم&r}A:Gi]bXFBЋY d=#6ӏ^Mٕ~H$=W=:y ds #ImP?5Gy Pula?zfRD5hVȩx`LaU]IC>$0h&Z,/W? 3d/=*[(}]tۣl+_Ed/#ş$s'԰3@jmG7̹?]XZh:zF즞)L cT(1 H5B8 8$7P!RhIzgsf=)>`#-!2I4kک _OPzM;%.k5sMyziuU&{b$3Fhg-Yط=6J }-=OKma`B؋%TE?{\( N\EIN=eo5|e\}7'aҋ엤z_uTj9tN rc9c?>"-+qiq wX6+8(S WdZby n=$c-Db!t[8Pg^HL>&вؤѯ 6Â*k%8aʔi[rU-c6Pϡ|.3YShړJHWAq- j%]Wk`,۬! *_e3V-"#%t`^DJ}ɑuo~ESQΌš?>u4Ĭa&@R7ן}`09a;h\ DDxK3o9BRIqaN$n^:%a N  䎫"nxtνK!1̐#`S{ ѡ@#FmzLsh,|03oݱX+Λ{1 TSjܢRr7[v\|sOf5l?CԻKhWQ.m#E4P6m]cVPmS1+6z՞Fj]3Ngn:Ez uβm1N}DTol{Ӫuʋ5C9r g[b$AHuu2 !PW8F{Y/n]Ds%e"-%4݇F';Ɨx3ﭞ2 1[z4Ʌ;(Ȑ~#]/{ĵL_D(냸D?eu%9a;TJcXCHsV6|LnZMW2% OCdwy|m))Dw`S^&|M7+oH~ v8lX8v=Ex|h ;7'ۦ)ϮeYa &o'BF(e'J~Qmg#˨SkޚuznAcٺq"^Z&$ $GHZP KSČK^ N2Gc?ۗ  K;D[yFno1VS 7APq b Aּ5ֵxA4c 3+ Y~x$6{FlG@Z䗣,nycTz1|X"w>£8.d3z?3ýGE݊ TU簔޸Ag^:|'2]^!OW+ƻ _],DAS1QTӒi] kzw ]fs2' prUp?:A,mUN' 4ۻ+?%MoJC׳?67;j"SZ` e%IOXZPN c8`M@`l`$f3\'cJ/{L}AoaFXY \8RznԽc1FqF#S 'U^L)^qjQ`~-WdIMSl妉ʹo0!9G]=1; {X;kX\`+&mE 24poӯ҃S/3>Fcw/oJO<AC i1FC-;x[,AC nY; Q?{]Lj hs޳)"40GAsm*~>Y<꼳@_G:LjIo]_*ZdCos e6*I)nQOurg/} nM xUNz7b GМa&)=E r#tSz$? uX  7"B$~]X-UǺg7qI@~ OnVUPAFݜTg%bІXnēcMO-3m0\&>]9ߚ1|Gz)i[12Pd[A|tPZhS2rJw WbXtÚȹ}*)V8R4Bb`jԷЖ̗,I4~e_<"{Y}F +kDmܮ=q7FJ4I)ZmFo!;C mbe&vIF 3Aa ̻u NJJ| 0u2LYD 1B6T < j Fcn(XǦxygͲN'W\ +n}+8x9³$Onv ==1QtzNQR2ym`! _A?9eX܈(}[|E5g1o 6%2 #IbWm/y-1HKXIԨ˨e7܌d Mb v?lD Cw;<ϣj,.Ĩ$[>œt ѧI%ً;)&c5 k?waTom,osm`F0N@# A~bcG Gx,Zl߉^38(uƳSJt0&7n4O7=CF4do0ϟH1yX-u]Zd]+Y4}-jdk!Lx!,|)4)b- HtN4d{J~ڟ@;X J%MBOJg]LehE~fg1V8bJ9|p |P=3^HM@\Hchq3f?f˯,٧P=5z .(X_[Ӌ$S8Ev>J%h8uX.mgh."hg26@w@1~ͽ epCG'ET"zV*E1q#rȡt3ڭ$i' P-*\ *~Sg %iY(d /?\*fb;~~]K#Ȝ!Na֝gڭf0)[kIIO^7'Rv?}=7ըx?'-dOz'?ˇ`ӒRu".^M̱4CjWЧk턧 :*,؆ X7vh(fAlH+* uNO޼&IYj9PKv6+u5t?I<؃yI96%ļi,$~{m]h4Xdp[ XhN:kH*^.L~a2Zg%CUc&@*|Gm;'E#ecv}:zkaI$[Rr{h ZQyȾ8r$WMy#6lwV\Ͼ:67ċJ$Bw[R\JӤxM5#ܾ_ n&qNкAcD4ڲ}Pq0Q Ven"umҲ 7OT_ @7I[CpxɬGJ_uSޛVwڟ&ʼ>r{YN)Ō{sI7N19` [ ~-/}IBe T^%[ DFX(d 'twRMu+Qu Wpd@4+;=:OPG n:4_eAʞ9`a:)1,?:ȻYS"9|04H7 h4LP4bfg#^N >\rKGsH;XVer$ P|B"4.aDJgi~R{bD ~rUYosK2"G{{JLW-;}Vqwk6ڻl廒6_T.f"[մːCUR8HR[) $PLWbv!V2'Sgl:8.0{˯R?'b%u\R1K]+z" 0{/$pwb)vq6'_b.q|E ͗5 !aw5DGʷW;-Qxt!o"SпZA ?l ^uHDs6G|B^Y\oS(֜ȹ+fl>g_-HɪK7!Dy@I¯) [XliZKۇ'}6<WK9YG )# 0(мͶL7`'+).&^LbW|LQ[θBߪԻysV(Ib[$JnnE7Pq[btk\h"[J¤M}opB$'`Be d ج]#4c# 5 Z'.F WCa˽H $\k`6D߱t_ -l./VsWGALFr-gū笢 '}p Ka}w7’lL70@@?aV6czX3VP >*6|"}wn [jxؒDP^u7Dюp $VN@1I$LŽYXy$q+\ېu*,(tU^l(z2? E|zU0z2zvgْw&O#j2u:t۸F>PR5 `3B=c~a jɈ!0aqknvZv>BX֡^CYf j|P*hf5}މ t8n @=jÉ\Ts[PL#- HbJ!ԛL;_S&, X!^R]>Bc~0'3e*uOLoDܹ>>:?hS/805/p{Pk_T xz&]3"y(-44S:J59N)y'H?~_8 n@ar;:SA K5H<-SymL2ݭI Aޞsa\a?sP{5O d#5G: Ttg{Kб@GWm`=@7T$fzQ]ya3;z!aO C6w]j+ [7I֤b$".q\D'YZyLr|I|NQ2^#J/ܜjvdUM `uz>Gb@g_NQg*nmP7oCF$1UB("FYZP5vY3ކu6 fz}uxD$UCu^74QTaBP3;s"׸Ti*u}d`%?ysiAX`uzP/yuq6-,r(X (jSAaJ\; 8bxAe>5}fCn酣G܎\"|YKX_1c ؼuDyr fHI;>p ʕ% u  i&?l`rB!!i%mᱦzVPx  ǛIԳPcb÷j~H@Я:Y1#iKH =K; jmV`F6fr# rG$`4X==-: ~&gMH):s[.%rOvDRUP҈aQZ62J8j "rtRaJ^aXtVGL|evn Hwٳǫ^4/%s-!獄YA$P5ѼWA'Ei9x %1FA.:m! d} ]XS4YrI F_?5N~<$XR}}3sf2_1KJAz}ӈD15@&b%"]E Wqf E /PA 3@pm( >@W ~}*"rM":˫G-{:l ϟ<{`~Dc*LURҴ‘xgcM4B)?ɇJ۫pj4Ue4^)qya04frꖇBL*xpI)]6kӀVMfRe0mYzV4MH&*!Oh`'4gQ)Hܚs%SJ0,Rߍ4?P]fkTFPzÁ\L}O' \er$ nw!W<@ϭw+;}ٵ`'wW~" 梁ƛ\E=#=cW a0O:y$2aB{ߢ\T \h7 Z6JB7(xcQm#K}EC T( I.VO ~w_dRLpn,Gկp|s?bKYxѲztg<9!زv^ xpъ+DXm  wp% "&L Ov֧j&heZ@q]V`wE[5 , =vVF{KflwUzQY4Ma ݜ]\+ᘩ]Ξq#h:fz/kQ)TW{:v4L댺SH$8~AQ *3wߍto{v :wCt:dTvo0puS{%(PB)NoW\U7sy\B*J{/(^X]+n'#Q«xvA^* m3H!6J(1p^0xm66X`El"-ԩs,fG1R!7=bOA+`EOP_;1aO2FS9\kٚQˇ_)-y8oɄEzcB 4PA_BÐq"nz۷m8GwJɤU۴Pdud*cϫ!+e12/~fs^ovoa[;Qb(/xjk5c->0үWVtt͕ FaVP"dǦuVdcBfTd*r. $'{`=V\ X 9['&#kh Gϻt":q(jnΗr!_Imr_ 5צH@ :?L.\)? 1ژ__AFS TqB .0^5 $u 4˳!xAM&6ʄ6",|r+F07Hmgp^>y-\l_S'kVHǼn)\&m:ag'yv}(ٳ6 uśjdp$AH ˧&jHӐ~$]*G%1xYj~! /4PLdF TJ<\/Q蒾AcX9ۮ;a{ % #}D`+F,&OKC(bs$qpr#Fuq0O:N1͞-\K0ЙyP¹.-)0Z-( G*LmRTȦkpc8o_skPFo (1BN""=9,0n0׶7\;7eI i9bo; WktP* s^ŷVU9nVUEA%M7 J: 71h]w6M9 |.hLem"¸`ǨT'n^*F 9(U,gnd h(QOĺ"([oY zz_iw@fȤ>F8ZAtYm^&R w@5í̐Y9-tL`(L?4Ԭ9*ac:<z/A0_@`:=dyeal6􎲗9q0KAPr5e3ԚlFαwLrxD,82W^p^,S!&haH5 k 3С)nEd]sұ>m n6LGƛْظ\55%)B=ƒœZ\>?ٛ.w=g)w#S1WvE+׈(ѣ\yZs 5ECe3dFX<3IMk2ҊW\W]2H^.K[C=in-r߬ǽ׹$۴[Tڒ(U!'e!},Wkn'asnaA0wf¯!V~So;Ob_D!5y};(>XvS洵F 9,7i) c3]PbJ\$s3;d OEWc%%l ՝G#Wڼps/p 0b{*>#ESi!.r[l4qBٻ$& RdjD1N ~2n$Wb< E*&\n-IB߷$_fmص: 3Sj T%??f#5F^̮̀ ޹2èשt{!QZ KDk(};nz\= ͷ 򚦯jOG[2# r ]C7K>]+է-ATjeuUT1'.r?U s~cP} q`k ROηV.+Lm~O2row1Q<!aL+!nE %dݸtvDFYcnp&6,4_Or98TI1[Xs`ODmúmf}A 4Ҁt*R0+j嬙 }y-rgurwy~wkp][_ԤZ5~&&]R4 [pwd :"Tހ6$uYbc-a?C?"߬ثm>jpy$iR,d6Ƨ]sP&`ӬPȼc-n1o[ {R%}nTD1BGs/qdrk x`BYD5J )aHs UcxnْdaΌe 'k>\z,_٤CBl"τǫ*[6Hnm Yt,4oy~(*z8Ur@^Õ[cTUϟZ_P'4w kdsh1V;Ťι UN#(( 9g`(e;&UG+|< +e'~ y^sE=扦o! ^av%$P#+79vI[J2r Mh M!, P0vpBQî2$,쭭G9o]rޢ:0 oPN_gN~'~?W']Eݔd=Tw^"7"ͦ{Xf 036χV!)D$˨Ql=PhGP4t:R W dQD& z*ݹ Z7䈣%|I 'hР“2NC~lqq~*n"4@) O;i$*fP)R(%5 rrCSQE"l ,3vͯ1GݒS<+?(WPCUZD-T526ak91j#a,gᅉz.O$5vE)v`u~Ni@νpW&(^eJEfX~T@Kybߛ'[% Y|bHkN^5q;e_.%gp~4n_mO%kFWjW8`nptV#I *8 %P`zVAaw\6`ɜvb?*Q[(dfuO7^&"dI?g Qc S@lIW G̢(m' ' ]8uuAB͌s ՋgUngY>y ؕnwsxiК MkXd> ~RfXsѠ~ z}AߧIk^ͺC BqhzW Ӄ99CIj5kc.+;#T31PйJnE cKN8R宇kѯ `ĸ1P^ڜ`Yի햌w 4!Ȋ^objhޭQs8̣[*X_Z\ ѿΔ-1 })A(T^A1(LҬ@y"SX w| y: z|ΡH'Q%h#؝%[N,399='̆2sxl#Q1')w3gͳ#8#2ٽ@i#4K1$8,Kj*%*|FSwڛY+%[G )3\0we\NeL>7{NݫFS;IF=yxӅDC #oz#]y:-#˭,Mpl8JNd*#;v3u h =r[,y <3^|=Z鏚nFbSxk@pd3ӻu ]8(D^O0w2 PeoH2q::{:Z:&;RcuVZ@ǣT?q-'>70m@) ȴ-:fi۬8HZuCxv/l}bPu \:ƐmL!Gy6c"ۭI LR0F)(3 b@CX73 t"̬p,Nxn8Qia6 ֈn?9V+r9i^9ɰS|\KQY=')gYj/?zq!A[9Et̤gVb&Xr]=. 7b+6!b6hտEёx~!I˵ؙӅQXfQL7\:x0 @zP dʔ[Wh?բJ8mx~K2M+iBr]aWHG4^Foɛ{ShtX?~KDN{9V:z|e-;}8̪,4<W'w,˯Mޜ6hÈDAz N)ԀR#)!ķNʤ$02)NI\M[DFH_SvQp=OSQ`i +vAoRTs *뺜D%7)Oɇ 2Zhaҙb#IΑəiXel`t~it[z;,W[(I `=M>f;q8d~Ӕ/8;5ɑwc\`ZlJu߉cXɚ/ :RыPI#|KҀ!K0i)~NbFJ*Sp$m2c}VРk'QZ's!hQAei{EyKdT5}CP6Le6yݙJN850;m\ zz'=ztߋ_ < Z[fKt1uc)'l*q&$%ڌdh)?=USA.JnO 3WŽI>AhCxxs.%%V]w}RMՏՇ7wOС#%9Gb;\YX]T\(ŷte.e"9=|4mE~>QbP[,K *5<|]#Wwf5F@yDkkroT5uG~iY6fqltD=5#)KHGĸbbJ^T9~sX9$L ~w,p? xNn;n̗iڤ^mq:!Zٮ:kqP Ror Q ܆#g{a;GRb͵1*\!O)P&c\+U.__*Ng<\ Rǩk|OGfB{/-Rg:$)YaQbS|ٰR-}\ڃzrmF~%&ΘWM4h58 8i)?# DznI*q?CēQX1pEv?C2 +ߌQ]jL{! wUE"@6frTP^IjxW8VP5yz\TFlc1ߏ9jbzbS=E#ϘA_m~BEI.13y}#3.Yؗ"!ЋuMjX t*-AS=e3 +5[l+YW|\Z9bf*;T2C`UMT `:by$"rh(o ۚ֒| lF{^*W=]Eyn1ls?˗zxX r&uڏO@",d v3$VHHkvćl9dQ'~K%(M3ŵ|ٛ |~V?@y Lp2V;7;4(ͣH"LyAV*1eU./w=!cbf k72^%dz<<~H4"]J*->7{;G=l'5di;נʃ7i;@2BGR- /ոr3eow~ ˒) ֦vRx:6. blE2_sCg!P jwQ$׵/k4D`ˮ&3wYjwU~JtHS4d=4,1';.yeL9D@&K+Ioz?w@h%w((+Dkb+?b;k 5.ePSH*ͳ?+F?%xJ+IY~!m O3#jvPCpUx ހ*%,z6dxf5dћْ qaT?:xh.^%O {Y~? Tb25եPr<[N1'u(IX%uq*@eso5 syWvC}%|ZD. 5E(0?)q0鳷D0wfiBaḟ@d$Cۦ_u }LSKZS ʞᘪH[jD"{.oš-2@*M rȻNQ@+#z[!`wFBJJ^f cx̚<7f0 ݾ3<k/pgn;˹PH۽hEEEH?[hBK A*cdӛDWw*) 6i2wSNJc7{ai I[YPܓ܌((c\+~} ᰊJ.fvhB/RעߨGDx- VP64]և_&uȂX㻶6HuFLQLdYPXp3 ="|3Y+,`Fzdd!%#*UK.,D<<5hrS& լ3HctiwFd9T/t.$fk[Gvz-Y6]FÉ`shwP2Î;@3Ee08j& :,G,5^QD`-HP![@B5C}P%9Fy;.>L0gڒm_.ڑX;0W ҆+X ҈D57(~=MpIqlb^ۨZ&A*+m o~iӄ<`7*-K(Mﵬ*owXI*;üڰ{(ЌOҤ>zH:TLU*Ÿ+uӂǂA)mfDV;۳@l#VR9 T~vxKf7-7`ÈmysǢ9|Q- ,YA$]MJN][Bmf_,R<!p;Hk쨜2m)__L8}О8*egaݮFCskUsxlfnتQu LV^qz/-*Vx6~Ljz(I19$t_ >θ W68,/Q{'b&Q Ԡrj0ǰWۏ\zҋ$߆LRgƏG&(iWp77Q%/US?$"̙cF%;ťr|dۡTdUg |smf'~&=^3*ۑ|K/Va>zO} ӈ{6 'eV7nOAyP^4&c+}L2$:U d ²m~^7Vn֖E?`M{9k `si oaalR(~ ܊n ?l9MӬЉM/vsO4IŅ-)Sb$(m1lwT=&A Qd$I|U SF\]T~RFq){Aj_`-9G'D}Dc]R D;FQd(sov7,_*l3꓏EDlʒ2Z[ ;0i۪sъ;y@(2Y$D4wpyMdhE>r|iHY F(֠)фiOAikL+wRf,&"vBZ#؀-YRLoطRjOukص9 %jYs uL*4a^u$x)ƪN0?Ƴ.N?Wғ5l?tEnrlqfզ$0@"'ߜGD TдJa}&n\-IC.Jnm:M"+zs;Rs]nȈG\l!:`mڋeJD| M*r2qnLguީdŗCKvɂdjD'#qP洍Me~plBXw̵ [- Fmv P=w 4_E*ge)!/}}exݣ?e*f UYNN^ ^ĊΫmgyMߥ2\ ,WLm $sFo&]C_מCMp;cWZ ZD$b@3,\ CW0m2<ɂX'FiO"g Riwb _u͙6V _\jзuGP ,Gxe WP.O[.5cG ,g!JJ$g=s1l.9tjr_] up(yu#Jpm<&*240ƍ/@"ʡƻw uY- lYypS ᏶ fFd;.zYM|A߰Xk-xZ'g̭ =4|_&""c8Ώ#jf*dFN&Ho8L`va$B &f,H,[;>b+[LA,\P`OGFhSVzSBNM㿪^ǀ veh좼tL+qE15oDy9\YtccONUut_! n8ј& 91Lq6GVe,Q*c)Ut\As3^LBRԉ@U١xR_6KǑyXx%AJK˝"#M8{OO1thV(>L6%* BxT 瘑&qOGD_$,5GVPY*;tᓀN)NdĨ܂ mDv J,$J\-zt(aJLBjKMxTy9@W`pU<UpZY+Rj6{*i\\C`5Ԕ6ok>^\.#iO)zMt1ט\<'S!BQ+>G4Wzʿ&p^Y;ndݫ0qk%q}6xNoU[kNڑEVxs#pzB$U-O|u|v瀘9]S +.&YtKqԾh?y"/^r>>)TqEXF/Ǐb#@}ȫ> 335f)2;2br: =}p2nP Z<,+J`6 KERpN܉lnl%eե.%6嘸ፌOq޺lcユrp!8Iǀhxs_k2ǘ⽾4sBYχMߝcvnd{k//(v[u=,Lٳb֭K-[d:9A_ש"u>$9, }%u49_Yܦ|3K_bA3~ڿ.4N|^aW,vQtC-!D*ab{(S4,7c&]SVU3SbE]F?|x"? YS·?ٖvu׊+i튧U;2Ao:?d(ȄG[紧f&Cy ](;,+!$ 9Id,5Tԗ2U#9Yd3w?'#pHA)EUVI;hha(>A5CXA*ƒ%5%DL2ot}Lx@U<q+!Փo- e+"TVqtT0:kyGHda;#oh n$IgU#ˤMd[xw uAYT&nMtls+b%$9#~baNrF]2%̎Vl,#/JJ0JG ዳ7yo^0C sxf8 x*& yyGS5ӰMJDG<94r1lA9CgȲACF<utPU^? wIC`ڙdBkJ:QvvUOO#\(z6hB]eHIٲb[ FY2W:Yʱ7oFLځ9'BBE)-Q~fQkV4kk 2}/E7N*j7/Am$1Q>:]^u"  BvA+׶M+%E?xWw3I'GT5_hdQG0HTYEu9v1l(M-搈 f o#Zkb}{ }p(InٶЃ71֖WRt;ʾg7ce 7@cŮuf\ߞl`QȨQ X&FJ/kP2Huf JɕMG$ Cr|'!l#"hZհY-hCH,`wy^uKyh7 ʅEF:x=btki)G5K_nS(rggaFƒ ѤH墳FğLHf>G96|kqP_bTi-#ɕ0}w\g4[_J*͐ Jeם/ʏq'VWD!sJarfV37.G2hޡkj[HHl˫Ϟ{A{.(E`M#%XL PK:n*u Xj(k4ާw>6F?_NsGjkLW4%~Q~Chxo)Vŀg1H#?pwwb! _hm0dGG~)D&~d|Wi':qG  F̞Q'!h}jYI XqLkc9RE“rrWVu,\M񽾜pd+bm8:$O%g HÌЬ%1v.S,{˜eʲ/lZgC#b p֜N[sCׁ;Pl+(b,79v/du'PJSl0kyKFz~.4V obe^Sj)_Rn zsHx)F>`q~qۯ7ѽx/EAze; \`֍AajSdA} &ϸ< <}P(k1L oZ DJi*.CnRµ fYlCXiCgcΤTLY&kt!K v}eަNw]KAH뗡l9Et<E$loD'X /c\n7ldĎ9K@%`1Lsj_H>_:sdM/>oIB`3IQrG{1u=-߰s 7mk1dGPhϖɦf2y<^]螓T#hx[|=wg LzlEi-57AnC뒃 ;m 'Fӝ{~qgE>f_\unv[?t?@='&=ϡYвWK<+E#dTוKw.Yrt݄8z]~CSlR\'08_fg-wvځJ ~udБLvbv}+jWg.E6B $ bWpk>C nꞂ6Q܀9tO,cznqX&6 Ā( Jb~htZp7 uՖF4v&|D,3u6bb}{cB1% [˯Y$ X>kN@5bV !u Q5Õ%}Q(/ߓi5fdaVo /,TFR`ݴ<Jz=mJ ]eCjaG3{cQrUpa'*G!(D,;h234@=(fjͼ7L$0`s(tA[kaFWlWx &$%B PU@3 h4>sSbK^\*o@wJ;4n *:āoOE cJm?S7[UKoz,XcUdyS-P߄!N24cd컁Ou쭐zl#uNPٴx?P~qc>4DA+ !&y Rbqw/f >zGӼ/j1S|Z[ I;R> j l *JfK}[LRtlbIKm>a06Lg4S)Z`nPus?B=rVv 6-a^y KtU5tk?8!a[KX߀q$' ܎XGvST9f7Ӌ4/Gɓ.E瑈WY0{S>4 /fH F-„N7llS(/-$ԦQ* RCU"FZRXUv﵏rl ϛu/;8k/*9+ԺJ=O?H Cp;.0-eqs[P߶r+@\mR7_&mWoX++tmد ޘbTzǡB9ImQӚagQD~ssd}8J#_"7S? x^Ca =k5Q 5;'Vp-,'|**kWNTiipԦ7Q\RL 3 fۑPLC]Tv,|w5XAcNCV1]x[K{ڡGt%=%smsTM }>\JAhDӺv>qwVL`oZ9SArFSXJt8)xFc7mZN(2Qf铉;*QU>/9si.%t%^&><IUCpeQ9&)jqԕT g`f9֧Phs_QW]yiv]B[r"I]sM>î-T(;JS`NpG$+[;"'t H ]SoADp"i)"m_mb ZaI@ՀvgTc&n $8m- EhԶĹh&uhSyO$'|DxϜ]^:WL,ȴt筴fߐ|޾( a҉0VQo{cfabnQ9*VU҅Rs+1-.u~¥g/ X7p)-1=:m!_@ 7%n3'0]K=PI]L<Ȉ鱔6!>W㦆P*)>iS;aAoI07bg>Ŕfg-Щlr`fj[ف]j%Vh0˗SPHNБjFA9q#<{1."~um\Ir_;vp˜6'.#xG[sB&Y_ފL-`Fѵv uBae}V()gInW>M2!υHy2O#a& (mvpjQ>bF|Ŏ{u3q}D)ۆp>UF@OkŠfi8>.ωl8]rQ6vu3NіqɛQQh_M{UT-+C@VjJc_#Z˔iKwr1 m?n^>8^uU55ju_5uTh͐VgAXU$νKD~#:8[4qf)%Tz\!Y"[a:Iz4"S1mCҢ:Gi7 @pYmۚA)}Ej)%+ oXcVf|}\t#.U *}MdZr8#;Y ڽL4PJ )73e0i 3`t[CA- # ENP}!QCs54 zH(~]8dh\xB0>mJO4MfRHn磨4bł(c, HE+FK o66l& GMܨ}kX/tz8z;9/s[$XbּrѝN~@]YVE@wsjoVYg#S"n̟(w|'kRrF2+;F ns]̛[֕ ?$aKw EfDӓ7SuK<( 땎׬?`~57$i0@iuU#'T4ə+C Ĉ[O |'hԣb0tYaJ'cͼ\_K#IY-rp=W:1J=vTJiKj:AkFĪ;*sOZ 1ߩMOf=ɑ[hA3P&qآ8` ,233v5")?xc3Mj"qW%mwk^{[cx}cg4TuE"avd*;4d XJ?H/U0sz)&6esx%xQ" Qzv3}3WN~Ngy Kmc:+JcYb6|M^֩^ŗ5׎pW!LńalMBM)PR$}48.y2^ԧl($BNͬ,2F,ez*~VMQbN<V(ߑ*ihv S"SDϞ䑰*H"ϰyt ֢6j&_ =.Ypۆ\詾"OŊFfX!ƈ'{p#IeYylKa&ݟǏ%AU>RZ5?u`WpU(1hH+,d9 ƑA75*:H:Lj"ݝ+c.` ^ vlC aC&dt\{N~|Mde-DtAjNqCD=U#xp# +G-DRGAG )\N:뻎_Zo.Nd1v1Dtm8D!#z:is3`g(5ڭCi]S7ǕU2@*5KK KUzGΚ y9GWFNuͽb6 oe(!Ȃ}a;&}"oo~bPJTIt\hOX'JZh Ve1N>ŹfR tu=Y< L\ŝ zkVHf'f˙v-Cm _\jz?Kf+ǰxŗv2;Y\8̶hv*nkȱo;ˮ-*v|0ʃ|\y,ԂM9hOd!/'t?S5@-)JU''ћGVp +)4kb1/՘+w>|m8~4Z ȼlϛH?\YI؁ Wu;&^5A#vq>9^!2cb4#܎qpC8|H?_V Z->ihl˳˻ܑ4?'`4ð!'sH> Ҟ_X-.8)6y B?A&M3XrCH-xl ;MҞ- h"yJfSu9Ig `]C!HTd7#}$uGDCw4ĞmgЧuJŠl#gTTv)uGg1@?ց_S.ș%MZekv(ֲwzq]LLFuFC&鍺ovY\Dt6OkXK* zH0p>=l=oCm~MG7 F"wĚҘu{ &^[5d_8J"ҝ3"64O}7Yי9/y8p9j2mA7oObB4:fBwewe3:\̼mrdTո<Ňڣ%3\SGm(VxWL b-K@) J|ط*Ё45˴A>}E V)hҘa%v9'௤TRCAPZ:FTq5Q7"P5lgXp@V>ŕL=*q)8< SޣX[![I}zkP-:ouOu9 SÝu.o 7@8ThpeOW#~zp/ٙ KeeӐ]SYM -ruݬ Gc`7gy]޿cx]s3sW_;Nw P4=6OO*.@ 3`P4 I+aaċd4 kZJ8#fŚ7fxtṄ!}#ݖ.ﷁNf.*=2F ܢF4P 1oG?JH@hJB6Ag2 ϱ颒?J2mLzP='qYEƯlm~3ÐM),s'lL8$!"A~j.m%?(k0U4Qi>=†# |hѕsC94pV 5CX)1`gqɧs)6F@%4 U68C7n?riKIZ|Py}:n U@lD_\e0e^Id *ƒJda-'Dx!!?{_/T욺@VxR;5 a!xaO6][x<~h軔 "b|N)s>R7CI{ 7@$e'u%7Et54i{wB ._>7k ~0u O_@}OvװWpJVY(~9p-Ƃ\Xdӿ ]Z0v1X%faW7}spRzc@2q/sI󢮐\K9e}Whu6EuFN!xUj#VYHɴ˽t0{&G+CJ^t[ց絵NbCѸ81׺@f *]4Tz4@WƝ&9(vTV] Yh%뗌| Fn oB$}O_uU#P_4wUvn=rIMo| 0ļna3d4ȃ.j3ߤ8ᚆ* 4r1Go࿤PPDwBA( :^e_xFK*&RtEcirA0#W.N]Mk"ڽ۵Xx"DUݧanՉw-N1%171>&w +j?rřXJPD1>QO,L+ٷgeM gsşc )"i2 1H/< _v},nT ƀa6&eR?E4vm|x'^8(YhOvR"'vMb>rB\{O!0wWgW("\NF(ߌI|m--̖]:CDdRa̟\-B,s'b@$ݲ6]Fc'/|#45p/qJ+@3w6q@sS#Y IǰG;e v3jn̉RҌs2s|20ZH7 ]g<|ϙ5l<2XPy%o,:]bՋK@)KMrX-\ںp{!\Ezr~h}}gsGwC5;0$}У4Hno;e26I`TN"*}o2(xeUsw7G X=o5&z[9 &M|YABCr?\n(O ㆱ6#Q6`l%"k> PJGi$kH"IcR;Pڵk !.ɱ?t0suB(>u"й Jfx)k* fZ]+"a3: B&Oo,+$Mrd]Uƽ@:ߵ[~nҘQ ;5u2xj@Ûȶ@0֠#*R y^kiumDQ"0ߖic8KWxGcmg/<*Լfj;mJ w]O T ,ck!:XX>F>@K6s0Ə2TX?] Is sMeV^gŒ̆[> *PQ8U{9U%)|%h4ۥ6׉.yQu2Z t`LXKvw[y;d'1z$p$N82QEVZV>Ӈ1dGO'ֆŪ2Mv j8/AN8lQ9>,n$x~&Wl\H~~dYdo/ *"1L$現 -:\Wk)ÙGh70DZ } ivQd#x\=i-|]-S_U{ZtLdki}ǝ۸c5 rnn\2) f_֖9TdsRUPu,M 6Aj!i0 R Xd'}Y[10DS?q&ZH2v49`>V׆%w\#b.{ &Ts;A)֣`*BZPϙݾNR8:)#G0\Ƀ\DFOsb |TPi%(3*H| k+U`x-$a^)fq#kQ)]N.S¤J!ZdyvPQ?ܢЙC̘Tfo Ȱ=W0[a{Mmێ8xZǝ&nCPBo}и9' 9*Zm\QL 4ʫkMGf|&:Xpp<}  pEuvFv '*<Ӯ~))Au~1lc@^pşTԻx)O?#MW!cxe(pz`2JEX!XԦ~2>S(&A^e&;& {V>,퓧]yb4ԁ)shH+}\5mĭa#Tf]C3&pnԩjyICVBgvh%WLGYͻ#fcVLo1\1#X@fLbU`ʪʹo'Ē閩_QA7!hpXƝp)(7OYZw*?#zŻ|cF+m}+b|T8w3" )zP;0D2jX@g-⥆TCcl9՜:tckhM'2{'~NPIJ>h itF )р]T7kl-%nsW̝ ]GR3{iTJ-hl伟oV-թ:8,MMҌ3t+fo2q.1d$o .! z2CނG+v<|#P(j~l)f^?c39uR z*dOi=Jg u?) FdsF0!fng0pguV)d%8& ^w%` 2fФg!Z^+)i/>q7k`Z@߹VjЙ e9^=bU>](Ko=alwDFtsEʉ{O%#?碶ޞVȂ; x +* r3vۉe]ͧ1|"Lo;I`+K=nd2m}sjdYsؚ5?f<-qD򮱀 F =/Xk._9i(i&HB޲pGnF::g9u:+)8cIi/\bSmG*c߁5Xk:_ц6ӹr.WԜ~b BP3ob[ P"M?ZbT ~i_N&LԪw" 7i5;:[Oqr,%m xI+i;z=E }aJqŷ7I2SA89Cf|xyvҐUP^& YmV;Hڹ|"ov;ɋ_ܷj/L 6 W`h΃/G\(95Q @9ha0ǂ] A-Q]48u$3@@Y#̐u c;L~# ~$h""qG~e { ye'} "Qc6iQBQƖRtV8Br*VڵqLbЋ[})}/ۀ@[i.G0s}3$&6YdNgk 9t3s#ffTBTé+Bll%:F0|nR*АFh5qp۾)q[byqotlL?if|PDui΀"lp EM%YascdISŧ|?E|l"ZW }Sr6SsYFҋ}6":tu,j 4}{>BzV\mU ѦH$Q-LϯװҞW)#q!څg+ҢUTKd?`jֲU&`Y*xct'.ά,KحH*Zޣ߳.F?q;_׏!\sM6 QtD#\b]Fioa' -'uS3lz+ y!枛T8eLVT$5W']OGNs v+%^;:fˤ2~!(ei}Wkµ)2r@ ш+|Vb)oJ&6o. 8 MTQWMc+ ^H%dN-l:+-j>ҭ21nL7<:v&Mq 2p""7g$)-!n÷۩)9'k W뙪@b$Vlu\5uAz<+m(96X$t5]7ق_8!wpR s{;Q6UYj%6+Ln㒒e]pyiiϣ;n5'*j>ȹ}=.ys }2\!p ^|vria)d=%o K/zG'|ATMxپ0/H.xܒt7˸%5*Fa"`њ_اׅ]JzP"Q0D)*GSܼ`DYEtsW'򇪚̡1H} '?+έKC5K{xsSH;U璇>ևqwT<7脤? ɜ H:)+ 폪3L`$b&#%iw ٲ]yGu715 n,_U4iJyMs9v aF%1W̆eZg`}&UhB#;+PF>[ ]6z^O.W ȧݟ6x z&".x亅q ,B%c3\STJ>W۲"(>;1A=Zk% 5/\- $9>] fr 6.$j*XeW\_oaTe8),Kgχb("w lr}q.@\b6V"dQN cP)K&ca*}5]]RG;iU8U_`g5 dHfH=BtLk:ɱGwͩ^ 2xgY\9?Bp0S1*~Ơ8h1<Ȯg(7օًqWjjKpsOZᒙBLJ22¸n.!6^~J0E()|[j$+s%uhA-^A"137Ia 'HNqEG@ -NUƒ v \ 4HSx]#U| >⎡8) zNJK"g3KĆ*ǵ sr6mn88Awy o==N[nC7tnmo iJrcȰ=ybL,$@)n:ijVk rӞK7~AvM&Eu);]xi4̸?ۚV![".&["WEPITks3*×h5c ؖxT>K5I/L0k~hdA߹$Vf$1%̗ 4:="4IGEec3EDѓ+nib(uҸ;Ri9M 'PJ^Q:RHRD>x;Y$ŧ8W.8rE˶%xaDZ ,l۲Rme8$4z̛fdz!82MG]p hPDOR$\ FH+¾zCg_8I9 =%d¹E#AxWp|4C9k%S-TDQK\mmD:] jڲ0Ľ҉H5 'p-`" & H52Z[z3bTz\CJW]`" E^1nV/TE/Ԥ-èxC} #=ͻРwL/F.$6Uɇ ۍfعG*N7_}飮sͼ+~0}B+Eokt>ɞ%b'>RSWkZxLM ,B]X-f%fpUG%l #z] G ť> Vk@ Cf ۙjpoJރ/s ;tºl};#cJFr^'u; .[bM=/5Ji \TS+ZEs2sG5pXs_^w"ӕY9=>\X@ʀ'jԖM1-"e fKu~rih;*'f{Ovo?;L CYC\ kx_ŽL$n[L@o1US@qg39*g/ڈ*QfƏ⑺+MF X\%n\qɧ.0HIRau } S2vh =CBT P ]&?)[Yǚ>?fxO| Ud„Swz2B%p lՐj)/5Z!I*9LZY'Ft}ԠG{Wn]yԃvphyhS;˥j3:&>[&Ak;纍{B;K4$4~MTFrIjq2Y+O9ֶtO?);ܰhF5ӸQdF|a HP54^YWDiQZ$(*I#?\( ,2"hg& q[W+ Աx޲:a7DcA0/^|[ ^CKowz1K6}64N'cSꮻm,U4Թ_(3_&=uOs_>ܚל`,mk%lY*u~yj; UzHu÷7+yDCu΋Ή_pj@)g_u޴t|U6pn@3= oB,Z VZ{KfV+I)j-f땔u`v=!۾pkeD|+5>g2 $58"G!S5x31YE IBA3/4yI1^=,yRT ,%<# Ě0cZm(@RgNJjqOvp>1r8-vj,'.|[{ $h4@@p yAQ;jcHS=*w 4<. G-_ jD(/BS@K!@^i5< QVą:mKmQC?o 1 2Z{#yaS "cťAh\ĻYA,6J~2ij[G&TC6sZ{bRȩLPq4!c5Y=XjzVkd<,v) u`!AE,Ä엡78)UFlnQ,V-%<>439T`EB7qUdGaco.'jA>˒Ӭ .Tm]١\}@>v8f8dڅ ,a&w1^2qH'[!sw\^*;O❗&%ЌI #{0yekc t%M)wڔ8划к 삾Cr9-Uw2ͽ.K'KP* Јd"hEXK5SjBrYKy&-Z u|ehJJOsHp}%Efq3L,%HKv67>Z`?li BU#w_sb9 OɿέLT:jㄶ @p.I$kܠO橆8 HkſuŋmmN_kYx_|hs2鸶Mm8tYy#;=Y 5[m0~yeOF:5#坷,]w4T60a#|=+ a#_K^qrf:.s("NT:jKRp:C_V-rMUb0$'UnЅHBE;}c. 9)K\lnh3_HyNju ޼S.-j+9n#*h?}~n f4` QW`R 徦A`- gnVmzr(}XAy+~6W(UQh`K+,XBJ}bLw_zuᆇ[b t@a3 -戗F[cKxe, o {o 'רnh-on2ߥǓce+V8ә %z+EQڇma o;?eQ>?wzһ362Ǝ pZmqd25 xr5P׷GBC2"~P4]-G*H_'.}*N0yO#@RZ *ݯ\FQsM5 c cjV-K"*q]K]H/+j3r-juWn -8H-dN#:y|s{Zh/hOΪM5%hn{wQ&.Yawnү]Xv@ %L!಩QnP, ;G:3_`gnLhjjI{CgwVi;6M=;ҵS_Rw)Ie.$v#0z ko{mwwRWo=vr>MѬߎYe<7P?x_@ՌL %?~WsDOPKbq#7_7"x`b&/Q ct X6f5g},soo^Ԩ^`h|ew[+ v#{yQ:ru˗`gj@|+WӍ4ɒ6;zY / 9~rH T m[tCD řQ:w3zxn.\)IZ)~ nIFK&! &@ɽMiPxwAeI@HK넘8 f%Qx4? FΝjz>V/?G?w!;3y%%q {g'0Tuj'b0D5$ I!1g'/!#2W),z g&1[K ({7b㼯Pd*aUzHO vY㔥LDөhAyma3vphuTO!Tp6wЁMME!<)6 ZiFs c(ZuSS?{G?Ђ"2/2e: Փ]du7 ߄Sm{b'=(:R`A;Lt#F@a]~{W'lÜ%I7&*1(KP<wÚk%~HcIkU &C)QN|os|}bm Pe y9|~(X-:}PM9P |'LnF-{5j8PA^ qɖ̽&kۧ!7W݅V{{ Dcdk﷧mUjTG͂ttybD3MvwߛBZ3MrE8[PXI -aB |8E%ja&iv†.1X婵2pt,Og!3+돞v|7Y ^j5sxә+6Q:m;8(Nv9=*巵 /@cuGI#16= ΀,=ua?ĥ&b^5;|wi,Ҥ3%T.(kb3KN2[AsQ[syʬ 6|r.EPguz.0Cb1h}T ƕq4܏#yiQT8{<ZRk7mCZ!"72Ww'zX[aVZrqOm_W1Lӊp!BN5*,rJ+r$T@k9lZ뺼ɳCQLv*w6{)BƝ %E\>d_?)(')|k^d\K}W >mI aam/m?C^XCzZk=' ʛg g߫"rRj#a-"+k46,٫^|uPlgJ8:k ,En@Jr,Rbz)$"r١2K)a;מYͷFf"k/Ȑŗq~.tcŤeLqxATEwΎ:=qiձϯ%WӖT'K|Nw:ՑCb]n[tJcVpPHNd[ug|.+ ,;ѻiPndia3C)ZaঋKQK"N ӇQ0KBU0˦ ϊzm~LO'ri\/Rz_ %EU1x!|oؼDbJ*6QW3!Tmqg3HyzOqi +Ñ/ئ* PvX`^qآA9tf!B*Aā"3ؘrqv9[M:B +!ig szì뗊]|[+-c9^(T:F#թAn)<- D>3sUW\iyO"'\w"Vw*z3v48kPʢ.%\t\"i꼜w6ӓN4_Eg9 Bk9@\e|S{¡E?M?2rzc~-wDLMJr0,Q5nMﭶک81# U +oP&}ֲ,!ʮWH_"µ@P\Zdͫ`>"L T-m"$>i= W&}2cYxrG`.B Z8H [% d9A}IA3} -L}>ӮCu !I%LT0k< C])>| #tuXU#)Wn^̲hǩrݴW h59[3G`:DU}g< JfUʷb%MѿHMJ*eektk:tHdF E x$NqtْE('e@EE? =I.U&ѩAvSw)j(һx6=F鄬7~3C6[ ;lLwA^Ns]ӅS:KoYҝ`N0_  y^ y4adc#%b G+8Zf%%l^{KԺjg2V0 uNh=U_D_*A2JgP3b?{:tDg7v(U2k,YYA "N$* ӵfVpn-|czȭ`f~",qp'BRK2T 譶g|I bGB A>Ѹ jP/lrΣTݐ_Nɛ9$G\A^!v84þ9=U8VF%z)9vb{ 4g49Y]%"/e nMKDKF}ߐ並 ȪG0Fv/6y\")B!xs%LߤG"Rh1 8ߩ2C!lw!VSGMZV6͹ MH@6DzWFo؆VSBE :R- By,KՇJ܍qTfR[H3H",eTju!J5{Sb1V?Ulʂ57Ye?}K:7-E* [d('=7AaC]Od*nk,[V)^3XnN+٠X~ۍvbn*AM dLk>\yRG!Cen% u-؇pqG{*2{jőB͑Sp~N߸]ZmQ6u; BNPk%'(m)SQ/<;r8i>oҬSl٬%kиOX Bj۴g֧49w3n<(mIF#1d&l>+KKudl)qN<B1בCmv6wX?Wo/tX[]hñ9!¯t|z-}c_9+1g3s,Qŭp^fy2F>z m|߿e `nۨ1X~ ڟM[<; X]9kݞTf6B0´^'T՜Amn|[(F! Zt̎#KY vAef#.#t 4C[aw)eR 5څ[ݵ%Dž:܌d#튍3(]a F=a#ޖ%P^dV !®I>saZɯ?0֩8XlAy8e6[)^O9]#SewN}ݨnݔWe֫xңL$XTN)eH|Jl)?QVSk.ESUFƦoo_?}ckEio[JlA"U_ÅqeDkJ\nH&//H*ibʜ%k(nv(o%}?kۓ=^YrԌu2ԩ)ۼexyWi ~pZU ;!LK% `>| QNB˅M-goݦԜ^_XD0 cyx| P$΄in G%r;kKZli(3ᵆЅo2&tn4A{ ;6 n;+͞P׿K}PjdB琢%Q s54ρ(~Ƀ+M|$j 4x;†Ӯ]bOIK:Qci'I1묧.#Jep-;f_q$t!-qbn3zg0D۪*Ld Ӹef⤏SqCǐTK,\VHsO)5! Z&<.{O @o7k%fUZ19uFlѼyT~u )EC )-sIhSl46τ_%ɉ T@Pm?N#, u^BU1|HDp~7p~ 1<""|> `ɔOlĩn"7sM$'"#5Z~_LA4H-(gՃA˦vF6E2%|j,xC,m{4;4 X~^`h3{3|}LN`VYv5⚨7d2/_!xZjv=^APs*×,dգ8nPȨ?ͽ-E$aaUv||;qځI:1 ZG-u7;o/J/Ǧ#|]hYqbvAL h`j|Z9Is(~m֛ɈwmRv^yr(ƣc{\XdBX-$@m^2U|Wh ?Ō Ja?I茆ks͗mڲV,sd.Eʽ$`3 6WvnVyr2@J1H}5C;sUKN͒Z9ڐ&0,P,ܙ*/k]) t`Ƥ4>C;:8ؖ$0 2<)_]`;\oaXC 1;Q5OJKٻ+=L'=O˜>EtƢy5+6fMn dt\zj,S;RO;|A8h^&=LSGq>Y1s{aXTE@2`7)T:h# X0 L䬔ˉ[,oufHl+1w.VҺϱ}e>}'A71ĿxC3gYxucՙJq̠$K0F+ͨ.ww런T8eUsnBϘ4S:@U |%Kxh-ym{ȮK(Fi"jV?wO@w ?{oF n1:kG=p(2>pcSH$ u:[v+CoOof4twx*Onq2"?:9F{Ȟ<&DT& jr5tr"y#o2m=K)Y+5ڗ sh(i#aL8\QnQ^cRŌp00)]+>9{gTv>?ǁ9z>ܕjynJ5] sjˊ|XF>%PtKS@ptUdPGbȈ<\.ܗM[XimÎ`!~ /P+6o 2`U0Ou"qx_Wl],  t) [Owbi?FM)r^/JVj #S|/SCDB~e,r#~nzmw!p1T3A׳s&_B;0ܢzrǒYhvL' OIw8R0sof 8B#jQh0:N[idz_D*_@gR&ݎ5gǐaaL.?'7V?:+e =UeqHX9vpc\n^!iڏ{S_EA(juWClo('C9~vn8ޏ8ٙfWrpsM((qGGWIȪ 3eqWt 77 R2Vԙ'zfkcbJFbr۫3~Cy.#zM=Q0ƄLK֠ZD Z'R%M윥8. }G91\FqZ[?V]a8;1yYB]oyÅcZ{Lv^k6c4ђH%w`Fe}H56 FdHRG!76 ?OtH ~ >uomj8{sA(QenkvX8qd4XĜ: 2s~ӎ*<7% rb[ܦ^{~O)[R6pZ1vսuX7Oᾛ3ԊRE'fHӸoO/}6V{sY canHmG^0 uK*ubktE/_r5…vzZt.ҿk"sd^Ȫp4)2,LL (/9hi$¶ ~3n\_&: xuԞS=aT1]A0!z2H,vGIU4n.ڀ39.8Zޤq{y[ZL :PM,ID=JVEeHlokkd犰`(#w' lV)U ~/J #3m$|ɤl0Z Z_9wrw#Jy *ͥB/ &@OТc7(W荒0ahpz6jڡaFZh 0#+ sCKYS'ۣXxҔ2ii[kEu(_,$,4XUznm gMQea#CGwܿW5S;Nh=+9Sm>INh21Ҹgs7xL1UM( "t X[LOƽ1يd)!NtzRYC<ϋa;[fS \$C ֭L6PݒD +_{(:qp?:"K"G cI n}ZOy쬆\ihBlp Izⓗ|qm  'zT>왾 `:;W6P?(qE\oφ"w)=HkA`9*g&l@!Mqأp 4}/b<.hLv+ռbkzҥ 1a)[co4a,Vh gYPO_fBV%*fE:4_n\ϴW-g\sJd8 {k=Ϡ؋¹Oi bdn(AK[ŀbsǐ*3b/A͖c{dhL1YX|Fb(CxvzrIA|\fZU;v8sA:;pUmÛ Э @-1%](ٱ;jj|@2kD'hOIxi~5!HWo$Jx氐b6I R&H+7gP%sYDGy&Dzdfa)Ed,u#RVZ:qB1tU/D7 5K^e ?bݏGXae%)w!$W!a6zV sk} 9ŴJ4o9lb~eװ:ј혓fpj: _G<%a?Lw dO)w6ռN.mz 5SxA?52N 4 mk6!! y(˻!M!l] 9C=0i􏦑mƮW;\_l"p/4dsj{;„=S5&3"+;Z=:Wxi t 䓁cڻo验_کztk;y6R@,$sOUZLcqLS@p_ \S?:vKׁ#EcBH)M/ +}'>ə:*2IC7z5^c1n: \o$ .W;C չ!=PMrD"嗢{T sAܸYnŹ?$adT ˨[v2+fяE*ݒ DɭV\+5@O_`ݩq)Q{uκmgWVSPSx<#Z\^"@"Q<-f̬8="LSX,l`?:b)k7n\kf?P At< ~:RZx!Hћ>A{ɜ=õMF:Ǜ7WYuR_|&DaIa[' wK`ŌN] L 4 rLx7 qn9:]3Вmy#puHO)/ D{߉ CE܌ ZPK%Vߴc:E*"2 VG #v{ȓZ'/W;RT3m 8'=# 4N/ٸLB":dsLIG&3f7[ G#+vq2՛^U#>܁Nـ.Tql%4T\3*cW$DI @!2+̮ڳ$nt)CU$fVEcWA!v\J)+ѧ؀iDt%(y.+7WN#[l)ڀ\_^{[ B7OJAk_&*f]rHҼacS=džDl_2uX&x=^G%' {/SnR'L!3@]gl*f/p^*G>t9zƯ9=9-i֣ǝ%XUѷ[T{1(nFE,tF,&5 ,EDNZ_l>ze*x}?8qqJ7_̻.z\ [0NPt{juI; C!3C.nҏ5;F8w cӄmx9Zp 7I6\ڧ}tnVeˈFCuC=k$^ ZDR=x0iD'>Av: <}P b-a "@6y7M]{*m&-/1'2-GQ@}jtIf9.@;4iBF}hU&9a={ CǶ󳴤/jUAqF wQL甋[$&CR/[xsLwl @<{"f\GyK{bܚ2v ˙߇X]Ͽĩq@ۢ j#6ߣGq/+_w7 ?0*+kz)-Q P?K>"%YR3X-U܉M*nQؼYB![{+XkHD +{ ԁvAĬ8rkd8 s(t -%f fM؄yNU-Kr&fYCJ7Y!xd:4[uDm>>݆MZ@\m9{}|5bz!t2A-| w|Iֻ9y+ğ 7S|dM/U+׈ 5 VKLa'`z wX跪&sL<1Hf笕JG UsLXLL{Hٱdhϛ2MŭA//g[xtɋUx-,zEO\~Yaƴ8*2AR9H:ZыofYBS6ͷ~\+_!@00tp <[q\h[Y>_}dDyouQyrs۱U66i&RRoqR!%V[Q5:0l j@9aUl¦uIw9W}lY}WRr%@Ieݜ;!\'+fۿยE~djv1< wceXl85ݮ ֹ9 ]ϱ`7,Ô۠@U#vu(1t`u(]ݡ;&=;I۶O jp$ &DP;aCBwSWw] ԁnژҠz'/6P־ ?HR3^vĩv4 r9_F; w.M߭j0IHW$:p~-+Iꭠ:kYgopk\h7x%R?ӪhS2"7o C~FÂitCD2EA$A}_~ Oq;SLO+EXW5^7]&*ԅ:yJ߄bᆁAzD9;Z:K^-Y_](r 3+|YPPܯKuGĀ}|'+_$1 [yn755f >\3ܻ/a{HzL}:Y)2tE}s݄aZ^cp6;Xh "0f\ Xm1[)q↴R&l^RGd,Iq8Q%TO[X}dC~#KBlt~Vm\wU 7\".y,BzڿwXFh=Ҁxp4}u]x>DdH4/)Hݳ;B]M%(@y{<ϛſC(&o]Լimz $*[ƘOyS7lU`?eQỰCkPFUWЄ!cf0ltRFeߦFÙ5f\\[po1* uak!*¹Q<2VQxAc:8gaPJKlݡ_C M! ҈d+ hL=i oY9dt?'4MON:ceQ҂cL9E_8z6aG$xVʊ2 VF mѡUĝPD^H;?)@fj,"'Iu:Yd]/CZ+U-HCp7SL0rf(yj|_CuuK@i ߯RJCҴ^ a/c2.++Q,frjUi'Jz >CQU嗊D^% 4#Q 6ZB{aByP?ChLI*3.+ }%Be !d=/ncԶxSR,@PϟwK V-eꆺ78l2.W1|Ǥat1 ?lg^QC y)zDٻ r–axpI6}ND$Bdr^/t^%_"%CqBDۉ((L.ˠnQ6w wwU#CKbTR 09 T[Du ={@TvADrS`b9euOY\̨ῒEh3iZanktt5cB'`lUR>R o-`}đ%~[@ud p'orEBv$"9lV$)ӊOW1qM Lc 2屼ڛhstCR!Cc2;.?-FNLgK+6Cm¤<;'uiWE !1z>r ='4? 4,AIb4ۙ;8Ub߽] + 4vjXS Aм.Dp ~dddѾEHM3рv5k>e!![fTe5 Jb{2r'0+dΫ/munn6Nq7aO1ywbg_G +{yQQ=ԅ ? LjIg2KH t aazz LK:RypK=W7-Ez ,yv=kMqgT|Hūz .K ddn7Ht<5 3A ";f܂ek  og*73aK_C{oKU)& 1kZEx%!7 Q~Yd hJ&]6]Yihū"P 6pnzmZD 5$Wξ|[=tA)x4aVq6ۉ]OaԐW$+s&zaKמD@&NZzw\)+ #L$#& \C͊6(ݏOC犹Q xeiv@HMXܛ~Pѫ)'i}1('ˬc^|EW,{tk׹iqKݏSmAppϯ-Tz Y7V-ufPm6*}UՊ#j'_B1)=."vӏ;|G:6\׶^p}ӹx}RmPlB=+9^[ ^Zs`{a㱯okRp,]^SZKfrM9Z)J7 4}gegٯVL̆3VJD _RQEG,i@sG,&˽>!/t _bbso?w5hTEh"Tll"8 i F8Sfjk2[))[$[Z\{ Ǟ84Cޤ[< <~[__7( QLJ 8;Uth/=+(a+_"d 5[es! `ή5Ok>]&iA?|rK&@̱< Ԝ"+Rh3T o=9<8±;d5C%ƅкG0#Y [ϸ+>dK_$& ia?W-uylbGACYUiϓQ7YrS!O1AdΞXy1ڶwvORtڌRWïC!$Ʈ9]l,<͟H%T _$cL<¦#6%p".j4m$ Tn65Ϲn1c9hgFn'V6A6vYk 7Q N ʊndظ$=Z/< o Y ;fy`5ZJ NK AprjnzlK <&6^*gR m 8f{Jf$뗗xs:A2{N>AMYX܀ws{C:Ycob0nFܫvKQGI0i*%J1Qh+ I\(ۘʍA8{z mP|go]g-@Gjw+ ;++ġ?D>4{cGǧa+D>MB!R n<2Me9۷McVI'jP}@~()9r0և)zW3֊ۀ*3<C da;g/:"Vt _Wಋ)4$M>Z{K|@HGNMʑhhXuǧm`eU)>TiR}Hꭿ>6(a8HJg45櫩| mcy61Kw.@W`p CxYeיTF3kc7Ä Pw0z"E+`.סKsMvrQ~Wiqap,$"Mp&T\hZlc`QMJqYAD/|nQ]P@ X*A2 )k/ .EX״jJK)'̩x-?_>jjN S؈9gz:IE^RݩJPy 6zF4ỵ|})c %.1w?mR۲LX+1;8ϼ3|,Uר8ǓK_]`#agcZζi7jR*Q]SC GT*ٞ廫ѴC,P}fڎeLi5ybW-+$d37my D|͸X4!>FB[맅Y()Jp$Ѭ.RI 01ł'm8Ʋw={^:+95lI3q4Y8=O'1[y^NḄh^CMˀhoHagW_k[flb^IZӫ"rM nNZRuM:e93:/z&*0=#Ŝ~wݖ*lUIӧWŝ.@Ddf ϶EC[d"j^jxOA-UZR>hi͍0(- Df7 1o8q>[p4zׄI.ZK~톾6oCb/yX fa,R2DNFk O*DPs2`u%+)G!6g)&\Qͳe1,+*մ#F@xѤVB-\> S'/!=$ >TCA};N&aycC{b齋h> l`⥝C(4;] ?y.r 4O=YH[(*g--g^^Sͅ#vwȏirq%c=VLs-$ 9wrӖ_Z.<6s9Mq#Ah'?N5bW7lT\Mecn? }'up9w1Xho`C&8Bqʹ#Wt5[_HlS,~4`FI(sXICP8-&QaXP(sNu -L^TbYehr>xݨݴ3d#Hy!C޶$I1Ѯ6>:=}kxtN)2Ut@`sQHSG,n{S ~xIւSWJnn뻖Rvn0YH1>>nh bz] PA@o͠5%B?Y8*dN^4s'% B0.NW{3뚁2eף`\K GdA!IVt18 It@y}MPe;^\G0ix$RD7J ە Sa<5H'lY*G 7W\dDZ`xI IDE )#&6B~c׊ɧښ39쐘EnO|C6O/:7 t+1h ){[ ݪ{hJ`n$?+1Yz@A бTBb7F[&G=|W+313E<&T#q_EkгB+Hf#0xH̓kQRnFa:apqcM YhC_nz@qK2 y_ݳ"kLHs~\+}! #X@r$o%ivniwakM]x?_"EȔ LyUe#{S zń4PBzbR}4![-Nw'ҠE O>~ɵA$I'3JwABZ3hPthܽl uۋYn4BvJ=FYOdIuP͑~X#7O.)d+~ *rޙsy~lALNiwL"';e-ڭx1MV@$_+0G}+@U8% :8,Ǩ̇wC#k~n>4MWĚt%+q%_G; A@Q1\xkJ dP\ VHdn!܋d07X"|ȴUd.up[:^tbt1cb>bU;fcWykPu TO?ͿM~7WkSGt1ҸR,Pۋ-* νfw~ p0buP䲾s<7fIuo|VG̵#Ubʘ(d" r|Ж#&uQ:) s_7`xgJzܹ^ *z=Pu97-k"=sxzϋB;s1IrfK22'pi#E( DA5ڧ:Dȳ's`|┦Lֆ_hFLB}}I l |uMAj\i1e_1X^ώgSHt}n-͘<ác৔Kӏa}=-tSxX 4W0 WtwsBwHA5IT/}M̹A`$r)IajH8,WӃFc%,6_khQ1nzR;hJ2x_Js8B%)}kD_,?w05Vge rFM(BbU/+oO4cܳ6'RbgLHi[>H4JG-+yxn@g'%ldDv\GwUGuFf{=^Prcm0¯7Fþy˒}o# ^\ﶶ%#2Qt?7cp'F)CHݒdЛOPw@qB/o0ԉ3l=jЈ7PʝC% B\n t5C) Z$63y3B}k: %]O3Bi4H +Xa s@ʢ _S{ˡ|R !%Vfɵkx^!=A$tkA3tc2y)`{ÕIx ?anQ#g%|\ь0P٧KQ TG*T[vn45Nۈؚ7ƕ$OHEW&~omG]&=Xuok,5CLO "2Ub8 zFCnaj-ZUב+7"FvZfSr'R:mn]a-k`m"|S3b\wlS2"Ixt"&N6"?|RWa H͡`"k-oAPƸ'iˉw|rgLͫhu3Kd Je,#W;t!ו,}93~ȎԝX7rzw8vʘi}i^{g UFwGX c/^xwGt;g׹"e0L3٬1.yHnB M 7`H^nHw0 U m8s=ljI6xT%Vqt٘U(r(wꠈ8R0ܮde-Gx)Wɱ7SSumE8u 6l9%wmwFEt(4Jquz.}D2T{m qSl_x̄ypWQ4y*=TLՀ?Pɉ1@ˆy .pf8ag(?I͖UqķX%,PV[{<$/o83TTɁ O7:XQi7a_gϷIpޠط_ua-鿫.co [˜f- Urs-wV;TRp[*~ Ӯ7z0R~Lo#* Qdt1O$`^X>i;|tQM@Zz(oTİ*{DEE|C19hvv忂'ق}V>[T6Qƽ](ē;=y`6j`8]|b$@غvYVlK]vj]sol1gW%\g{7\%,x+^3Yv;בx * @nʟt@m@ͷ.BNtX38͠wy /_h\ݙty"%|s 7wCL 3a= 67EkH J8(?3ǺzMdn?ir fDB>#  XPFTVYTӿOk=iu7StR_!L1k}Y B>iӪL깽!]WaӾ8ˣ!<(Yx"=Zen1±|jfР1RX”0mվ)& pl}kTY5ۙ2"DвJgsCm,/C Q3SlioٕÀJ sFHeda!$ ~h-+XknQkST"pᰡcA-ֱ3dnzQ+9-{؎G܅?}&.6,_(~X` @!d:U^]'8`Y e'_@նhAATl8 lF4 GV!mXˈ.nP8`C*6Ad9kG"=xo6 9ZZ WN|#{u_D 6RR2α >IyꏠԮU4#P-ap חm#I@9K5yezp:JG3 ߯q -LcE܆f3;Wq/U:yʏb*MTf}sGA9;¸Gbh740}; MCZ|!Bk!5>ڬt)yYиPԏ(¸/74TL6ȥ FX=S5QaT%rmLiZP"TBGMxQ͎>Yj!>S4eT縯ëpP@;tmlmtZ~ƙFz cnKS{ۧX]cnx\QVqgW'ؗ)nkj]fCsM\!ݎ ~rfmR0H>}w<9Aqg z (cm#NU1& BdnFHCrGnff:V|B}IFdB׿Ip3wˊeVIEiI}]`@ex: :sݎ?+4W yt2j聡?cbY!~]_ՂEnݹAT: pRO`N߲3tu??g>0f3&N-HcڻA䄯P'`/wk;}"ө󨔽csC*dPd?֌D~|̡u/h`F?F$zu7)v ے#9;N[dNI3nI,"X1H:Tp槇kt$lz/}T%KM@jMqV!Ct=x\ʠ(؀IM %wYj7&7E4w>X,#fo=%Â"'[NC@8A&]s08Zu$(Y_ X@p=%ˬ@V]'t>( ת`0Q1Mexlr-'ϼ/y0#/|X ؜v( 3nQwϵ_IMқkwϰ)!WS]v+۬ZSSE[(@yxAa.b`ta%,8XޥrhWQ:y&HfUhv2|n= NX1![Op*bǚUMDVl$;@$Jn~f⯢_nb%7٦#"-vI)Ow &7Enbɳ&$:>˝m"))L5g9,)6#7ϯ!$D)5Gs, !D뺋q޿bEN!Ae?Mg ;SUq$a`m{sBX/ԆpfGWa[b:`ySY^9ud\(7(±}(95G#AࠣpF;uk>l>k/T Nf=_ᰂC2[1&gL7ckS+o7ɿK}3k `/ &pEG(9' { j|xڡx::iPSNܘBAJ{uQ+/%94tVD〕_1O37W>!:Pa6[@-7Rm0p9fCjSjBa4^Z;QjAYÔ f ~6y;U֧'Mp<Mh~y&iBLŹj )ϧ\'6@J15^+^{;H oky/@9H DLN\ׇzF 8*+tBL )}' Lmo@ZنiL)~QIیN$|6g]8Z@M‡<;M34]w\pU4 BImھr·25ɩjx~zEB>zx b0 Yl \r,Ԥ$SCl d:+a!g~B>71i<[i O(JÞ_z/B_K Lp.`FyҘe:[$d%Aתo5X{Wr-ISk PǸm\W9\RED~#/M}WL?Ql2~z$pI nyU-gMq|՚.siIEoևء-&#mNc@>lmrD0SPƎ^!nneh c%}ow1iH lnNw ~Qs. F9؟N!XfK׊E!dNDJL8Ej/Dm Z\Qz\_ /CśLMAYGL ?`2ǘ0wbBye.:!ׇ'4,?K@뮾O7l %C>:~aa$m@cE˫L(駿Od{?ms,L(>G^0Y88JS^ܔҺQŪ˯njvAbA "hq0 $,>Lnj(n)\9 m6Ҵ0m^S9{ιx2GM+K<#u-i͈<%~k: 5/?J;rU"4  ?^֬"w35ŒM"~2!wt[lZZYKޯl_ƛ1wpr͘5$aևo P/Z&)8W<; _zM] ;,vw{SNӒGfNތ ~{U<>.gOv̅ 9'ID\?_&{ ǜlxy5Hn APY2O?q]!nYfy84T?WLFl쾮0E+Zm@m{nb_{jJPE0Ɠ꾁e[y4-'m, 2u&W&L1Qh O1zotr~qD a6n9|N.oآucaV9uW^;/SQ$Ѫx)~`SL3+:XLH7,gZ24)Y%ywf*^zf[G]q(b,IU}!@(˛ h=ş;kFx3z217jg"/&r4Xg^RΧyڠY>[Il%q1V\Io1.ᓄEIZwK4bz쳎#jws&pPfa&@{!:s_ۯIb-r̷k&m gtT->8U`sU%/*9fZ#bA *k9H\b\^3"A[\yXߖh bHЂs@'kUX1Q^-(}W8ӉI ¯cPHN+K:V fC.ZV6\}e4;y-mP$.{t`ltg`kWc1xQa[A2] +ԡ4'zN 1eFUm4aCCaT 1?b ؿ|zPy0p檨!ӯDDs &$!(Z en:$>[>) ^gĭXWccW3",]s1.(QMM} ȖwiEKi@ΘäI dpS?Tb=($U7y#GwrMUgҗWxY90&cȂl߭8n.\v}mZ9A#.ϴyٟmK<%<:_CZ Z|4T } fEvsyE|%FwᘕB}~9ODd7&͂@Kew̬êm pOOTd)FXX@GydL?xOsF*Zqs!`Bi+uH10IO\A="76O>IV&1$oe%dz~^>וYprTd3 +XZ FtAL\LniN~{xsZ bG`]Lf~WoGz&X1s/4|]{nN-msM7rz]Iqғ'>y:Os$Ed\.lP3ۇ2gjn䚬Kcn٪ΝLnU7 _=Vj<&{Kߩ9 Os'tUA0)㧹ҞDJh$Rtmiq 3/C6gPcTb|1S0T(9fƧP2λ׿?s|)A/4v\Ne1z0iH_ԏޠM%v,I> (k$bsFArОKҧ1 (TbNeȾׯ%}[nI٩׉Ryu):m*it3BSB&o5I,"a'Z;:b ~52,c8POvC_T>vdNML(PN5S W#SJ7 4)9=>"G)Q]k z?EoSke >}]ܶa?az.1)***/Ѿ1!q( "\^^6Zx}gq(jb]]K4s vόO6}QkQn^-9H̥Ӓ8+r5MP,<#`tPon6쎃]n2ܢ8R;O[#%SYp?r$ߘ=C[Cq/ٺbbKj( *}Ɣ̖Qr0+N *=[.sP}T (]R MceʲkiMhd~7JẒ &u~b3zIa(Av63/Cz*,) By\qƤ#l4\@Ft kڅE uPciSL VPagո•cԴ?BosЈf\PoPe~%3z)s` 2&M E Ok$r$q xnsnsq:O~2EU񺫬5lߛӤ兽)ژk| Q8; c8M۟J ĥuSGx! ^/4hI'T}^bXNmի R3oU7xeX%7|'Rl7Bn6w$ց</<λ_/O}"ƆAc7(v7oK4_ BjE@0ox(z^l;}s~ J=[FTtr+wp%+#Pczڗw |GOHhqaȹŏ# +GpD<̔6{G?NMd *ۤo`G0"qAs(=G>x(l%>h9w5з&G0{ oOq Vh,wzdxˢ\ $^~ xv%(U@qѫRσ0v0a`ƉMjo|CE!DfI\&Ǻd.gL< &WHH1V*~'Įv{kf%oeh57uHQ70dsBWbqSw{oE#mx5$NølO 0֟}V{7/%OXXjAOW9׹ݔ[|^L+RMrN '%LQ7Oe&^>/bB"MKe̲ahIHuן=,"G~E^֞9|Æ x5m`| UvCBoj0/9x!Zݮ  8&: u(t$z}v$Sys?4Ci+,ݎf T*1}:?6>Rل4 >@zdM@*ròDj̞L,jYGٵh$J o, 3%~?%K+LEɓR,;flJGI3HSD; @$e`Ž돖lXzOf081=u6R-v]`j?u,SU&X=-XRJJcaߜN{gdەM¾=hZFtXԛ.8Mz Ǡ+~WlEԑϡjU4E 5 zZ(NQ-:z_CB1 F 2KZ;sŒ`{tѽ̙nc5$i0,J^n=j̜+Y% 2;V @+`w;iٛJ-;MV~u 7"=#֝t !E_vm4"ۍgS)Kv;),(\OW!'̜+RM8EU*hfu2m=,ӕ Ksߒkq~Bξxd:}1͆g1| Y'Q=Hhu&?9& 4i&-8Gnw;YcCTih@)ZO60^63+LŻZbr2!OTޞN̫(Poʄ˫,?Z> I;'9B|#ɣ;C BMKfecЊeE.`-YxD74;=l%*hb-/5{I/^X~hY/QU4CοgkBupX임aToOA̽ӗL2eQYfVGU)漢Jf$=>@_BDlV갯w$t5$X5.ol EٙyW׃&41J{kUx-$P_A6taӺoupmmK"*=Yjq gWng|k`} Ӎ5J66UVc[XrF:k*L.Lj>E0&V ⠤@bJ\,{.|Q+K8C]x\MuUSA(CpW߀9+ ^JQ)o YrƐ8ݫ4K,4ǂYU{}7$*7ƣRz㛂Fr, r91T$hY/ J;be/ug#)gV#U֙!FWӮ ڏ`+~Us90t>V0dz^Z*G/?V @yZͻJF4ZEx.Zs4xLܭ t<َ#(Nd l{Xn ^2n6ڥwT2aS@$S#X0XKnl f3m:pK 7}]n~/ eaRm-zlM#Y:c-K%?ZUGMXxRXo\/ <82g."'귪^/pl%WuhR|jBڶH4wLG!0~$fڰ;4C/ջ̙4̚|Ē.l)n"2k?x|!k5mi ?x$ȫs6Ɩe;):IBM#_T<7*MvgU*/ R%8<pm扟93%Dp R(8]jc"K~ծkkT6Q  -/鴊>+u8g= o?qeux"m~: c1aleELsHYګ+Me)"#´sc}e72Z 6Y{N:n(/,pmu7#қ.,?$?cYlRQM=`2CĠ?ml,|e(\_.Qqȝ* 0.RT-mB&tfM?±{1DЈ`]}8' yR[7-h{?M,ELo NĩiIQOO0oeS(ͪ kbux2Չkڒ:RiMT*:,? ĒR7brdI RxOn&n~$-}>pF<I/z :;A=X)ĥ-P^N=\6LU=TY\5WH:<:F:KO}ᕣ{;,!i<t6<+೜[{Ke~gsNQ y1+\_;dtLй sRT/n%@>-L^s8k;9ַP+,W=/po|GC]tRKIg69blO_C76oԬqݮAݞ?_'Yn`wlR}d 줡E 7L'.ӓǿT91-49|Sܶlzrx$<\(s٤kyi|(fL7 W\1SӟPRY$a'^67ו36e"b<ߣzqݰ삩ǒO۳r \ʾ6uM6?QrY97Xa"+ٞϳ R_<$L|L>fgZ[YbȥcDjP€S/,!-m!H8?ܖi !+fT',3[kEvsJ+r؂EseIFU-5{BqRč=n~I}9mjj,w@߂ qO{ -l^1Ǟğ_zX3%X(~{;<|vB N3>فRi;p`p&%tnkjή@cC?Ɂ~%kSj67.#}6Dudh9];IH@Yxv_-c6=?ްXiײlEV|I.LnQڌZVinͨNԅ ]P,h:F|f}h-9[aM~=pxF7=-VDmrq\咹&Z"$&xA9^(kq9[ӀO[~#?}D8KWmC瞵dDE2РRme/ ܒMR(/2˲UNíͷF`f}K`UYUWe'܀]ue.EO3F4gin%q"RV;h۔*r@*ErR?%#!d1,4lay>w$?t1ye* DY'rmо*iF$$\Hxu9^g͖5֑ttU`BYb,Z0F=-"0-#ӂp}omFN^/XW#g;7^|RJzhwdoyr_FTy*^7T)'tj2zȡ'#c;Vy0O H&=J1AY݀I 1fpv7?!&;h )#[MJ&ǾP#jx>.8F]VRp O65OS xz'{btx9hƂZ2w*lcp?`Q2h)(Y*Q5y֮BY4L77(-2C y$$GV, cDFOJ{I4iqavZ%]ĩZdū9JÞ\O+/8u3;?+7W8= \o0$Lwh:;}QEGG"^$綍fr.t'ԋݴV2xn0z 3P~Lň^ -2lA7rp_+EA\UԱb IzWh0h\Dt,s.QLp8aXg?}"UCQ ʹw's\d)ak̻7k@S_GBB21)% rU昕_|zao%ޘtz7?o^\AHfϡ˟3.^i^c3&N)'B=2f8f2aK5L-cZ{ܛW4w pD0"*Mns J<<_Aۗ=si>r,BhlAuQ 1kS >#r_FTl. &}k7T|vا v6\R~:}rڗmsI(rR[%/Q8c}}5HMuΣN٩d3YEG1ZA2r2Ki+zMﶴ#nڱ'8+V]wJ~\Ze㩓2Ȟ* n i%-U;g{꾱n-Жir=C&?02psΠB9F"lHVMZʅB`V"1$WuZOZa똰I]})}h ss~;PfUd^Alyx;$7.QqO"YErco*Qr\OUInkS{ ~c'z>@D u-xyǾm7Nn;Hqt~+X{=28AhA1'䮞Q/͞0hqdʹu'>] ;aa[XyþXs͂{Õ Sft$[$&s/o"׺FTwhayqKG]J@9Rwp~x1BMFQ3B5p )H˘3 T;MFnՓEvɀd )hv \3Dǘ4hH^(XBeͤ]Y:2=WE vtN4e!NMz;q ?[uݢmKVo^l\B%w#F8\ m=W_ԋySm\x lZ,5 >VSL@ ؔ6VGX"k>OC/Sc< `nfm;~&%aH/% KFr#rBt|}/ /*``E{U&AR<[u >Q!Wf(cS3KQ2ONz&/36$I2:#e[^׌2|D=cD]r<{b%wdkH.cdj_LZJHOL v&<{I: IV\O7+PNr:ÏlՎky#r4(8')@v!ERXM` Ӣ)Kn[ Y:J탃_A œ"޷Ԁ(z|m>kXD!t2$.;̪mfAU?4]~Xj91;cp]Ҋ=A3$dru@t8ĬO#ⷵ&=㢣"AQ>2svzȊ ]&\Rye \=ȴ"A_)#wOඉbKJkD\S>?cДZ)Ͷb427 $~ڲJSe4+~J P Z(ID ^/į|: B?l@/(6o'؁+P|$T a$}oɪof6q,57f~1¶ʑ_|c-[FJB@Rp +sI:dAulAN9![ zYw WJ|>BMLnIk-U#+7qN{*Cԓ/MhuFSSQx ^dn#9'6 wAB Pj%DИZr cdk 7]yfw8=&к0{v\NO Ng JfsRtǀ-` Ks>JF=WRI7<ίQSFVD fM#И ;-8Re-(J ŬUe_hu;O7ѫtWgIؖeb²$=й0I#upb^]ZNWHRz:PI>[xST"~t>,wsRvfU,`XFohźu=)3O83]-9M].V֢M.C:o4D5։q)y)vҕ mAk[)V0ڵ><4"a& Rí~*XYܨGی'[ EJe;,]Ƌc3f'A{ /h[s4+V (3f.l,G3V |Iv%m7% T"&[z I]9@pt#a×~ \Y]C(vKbB*o=XQF  (.+i=cEg5.!`?!AYB5toT^h@ip[mW0ï#s_*bG`fqFn`Xt+6p/qhXH'm]Qpr9VKUE|^t@7@O@:Rg .֞zf\e?V^2Ρ(5MQ%Na! ͺfy9nL<PhmK6R6vCcۧǑ7R>`wh[討DxQ-mMcIꥧ'='jFPa4?l0]$X }žS!D4S65 __,ݾbIHc7Sj^@TCQ1eZ!NY²%XpL a9%BI#2mnJ#`bVj'' jr%=QaY ZXC̛;2x6RiG驗AdWWϗ>;^2x%9O̧Om %\Zڡ)ńrAl;\#T 'x!Z;F|YKvms fʣbY"Bz+jua.Db$촌?]"|Dx&}x%pC%@vVl;i6N $R#FFmLWҽ=eX >YwlND %'IWWAmⴀ)y|dQ%!j"&J3۔?\hT_B0td< c 5:fu5*p-ɦl ;V=.ADFtǗBwMw3ۑ?v!k}v~v ։k悠M|Tu-jwkMoJ LSs?h7L/p˗(^{m|`fpe|͙yRv(ҕuO`nf:%`:"*%e>JИ< Kv}3^6. +ZSHTmKMi[Nzyu0d.C1A^y$t╾1H5z"_2ӒIU5.mO%qd&a$GK1mK 0:zW槳2a>γUqvy︢r%t'9!9N3R% Hpy;K R bdz̼NIe#eu ,3"npم}ݵ|/lr.E\ǽjNwDi.z"D6GTŰPNdszPsCE$'7|TLK|FD>-Dh]2uv-*q\ m'b;$WDeNhͻ;lvGE,d7] 7]-3zh !!Jd{V|O 9~(1o_7N­)1!5Aj3MT·jLm@Zh=;Rrs_7CFKqyJ<ι0~[!7pj|t91* =T&/ݿ%HTS]vH2?i=-/Gu9D@9- $p3uo;#xqVV0a>^o3A9 [tFDn#&/EJ_Fnu\$$Qnӿc_cN|~PvB i U9*!SlGГӐ2@k.; Egxa3̡" ׊tK'~?RSgpȇl2pЕi )-?W2("Kvi#g-'SWd4z}k6,N_f %0}Adf i)OփgA:L[ J~K)꣣V 3u)O%A+2D>8 ObHWʿ,;/LqAkjzjoI! *Cڝ4KSkWO9yeoac,Od`s(3?aAtKdik;m4GI{48k{o_Ɂv3iwyrgGԱ' N4E萡3NT`m>r Uvz[,Pq;agPegO%Tz9MGQ^iq積HIj o`8.{,QY ewdm*?bG( E]- YF.@=sokVgL0K>^Bj=JFޞj"w},ـRVC`+{8V8 >na7$pYH3v`*5ZݼA,3sg!߱P_%kQ_UA!n=5X/ }IW @ @ZW n-zQ"!q+7z8{m?l+}mFe2G\bR /_B㪘9ڎZzx WOh|#Ze$xUח9wnl7kBG#;_֡/ :(%H(] 6ڜ{jDc0};#KOyY+ "0 XZ$[kاۦf._j፜b@ U`IV]JS^ CѧG (X7׍%\[uÙvטtWYRёE]]b'SNx9dl@~;*lAh \{H8O[oj.I5 !É]wSUemPLFMBȣHĻonx3zb?a6C7{ As>rLA4-VDž>+;fe#]s,{ӌ ]|`[1l (Hl1$oo Yz3Lz*TUߗ(wXB^nıYmr#F_pd"ѷ 3K֫7Delj 9b7"(qC`18=5 @O/ PQT/3Dyhx:eݦD= ˙[9X1 { B&LۧJm8fxv.Yc0hr3h$p* :"lmr1{+'mƚVW"2&Wi6?O!bϮʦktP,\Y ->$0ԭh2)= t$B8L$ >-hpH!=F"׶ƽŴc6@/ٰb,9raV&`W7)F"\U} @ѾȒNDZcp52X2l^`BJވb}sIu+vXmOX[ -$aslx9$z$ʜ"igT[<75uҞU>Kl'<>T_݆uUbS^MLI]7ctOZRdNNw`wpMU8= }'<6:lO[7|~yCfq2rG֏p`#@nZm> ݁ΰҼII'+6a-eeJSGAT׹fbCY3TrH *FϠ( \ ("\@SX>j  SR!_{"-/ZŻ,k[k?Kk9ֵR9 `Olls2 Фzl]n Kc"AvaV@HRҏ~E(L^"|>)ޢ؃pV߫P7Sc@)U6)][[:giFܛYC uJu/⻰C Mna.Fe/q-]ѝjzڀDC,5@Dhs1˹>1vBPKݑD׀y!]ǑSx椅r=M '[GOu\/XѸkzUPU_(KG #{BgFzhn١YN P?-?&\"O!9cYt_矚-x!WzLP0us+4m2Ld|_Nn2,[#}A9/a-#"UkoK+7zThc7%.@ xU k9Aࡼplae,z%W/ē?BWYPktNLT)_SN|O ֎ngT:un Yk|Mw|9^Z\QgTNxn 0S#x_>ÁĨC^fD5:Rc5;+TW[磥1_f_1[|\z;-9}0Y> ;aQJQ{Z^K\m;¸|N]'܄#G~p7 f"O_8x~i-Xkur걅&cʁYT^HR$L&c:ӽbN!mce,b]u ,qHO<1eYVS,u@%{JoDHl?S  m @$>R1~Ѯ-^@zmnR}+Dp_!$CDWxm Ny_}S\ Y*nANo:7)o K_MdB$l һeES$]-a%+|Гh *89H,콓O2A&TWɟbj }ޔ82Ӂy(SN/dp\ sb|Jv1Ҙӈk eFx,Ɋx4-}`>k} G2Q4{Έ+>5f*& W:jo5 ~HeԚ~Eء|ى;kqo]pV~N1]rbH|f(ǚ7}%48&I;d.)zzH?nN(aҶY(G7 uubKҍCs>/xUيt~[jzP K ~Aѡ9~p6:f&}F'F#`O@C|/w`"V.^=Rv~$B]Kpo?Lj/å]0R՚w!r&|G__ )`n@̖ٓR-$-\;rFK/T}JpԪƳ>wWp; ygib$O%\Ti\ϱ)ĂĢedi/x/Tfr- :0@ɵ(<,/Ԧ%f[}i]P'0taտ*p6Ja٤:udRյAx[vJ/!#\ w NP*wSQ&*eYn0j/%gxG gJx:1^2>hE `_V`tzӬ jvJJQ~@|ܒX\8Zޢׇ(*t[t rU4kt  nS`i.7߆`[>p \E^45bx.g~Q\?:xV FK%-dNHFE A$9RC{m6e}Cf"Pw}NEz;5*Bk+ӗXNVzLe6DÂr_p?Vӽ~tЌYT9Yn<Dz(.b152nK3Ja;e #Dbӓ",u C?ya -]1 'K0 <( oŘEQݐs1aT:>DŽ7{&vg$AKѤq孶e+LSWOYN3vk;Nw٪Œ#82z$rN,. Q&P|")qs+y!of($w;' 23-N}z% Tx.t9er=FFe2ibֿdP-LM )yͶn|F36gYͶWcE)xƑhyH1rհ3TxI6ދUKs.wvM2fNuyp"f0a j^Abw)5 r6Rq^ȆSEq?+\隚I=-رsğQ8?zYfykDgP葏lbV&QAmRɕݏDJĹ@!-,@wX09,3δ8G{;h]LdLK@{miE)GBvc(}ScӤ׭'RЭހK,X`A Cv|{($Kmr{G$aޛLq=¾8P¼ 7`)"-^!BtBbT1 %pc4ga(ah@<ԑElb|A]Lꡓ6g+]RptCz}6|2HڜG&j[,o}C5+FpqnWv8NɛS|]"RbIEhI&.+˝wO+mӝ;|~٭Ƞ;(J1?ϞK2"=\JUKذ`P|)]&fv8u2>2uv\bON?0+yc[.N.f(+/jZFݫBYKgع :Bz>Vᝐ=ufľ^z /rn52Ag5{#]Q\l}nT#utҰh"3G E%""ഡ}hӴ ~pDMnXK!vKoٵ|tIJ'6nʵdžŊgnV*؏xŠ5Apc%S#J%dk1:&(r//zDDא *Ef2L[y[FtJ݆Aqnlx>.¿`KM2b)aa y}?]uZ> :>BJwC9'3GϾ1_GiqvrӫimJ& X8I lܭ95螉0p.: mKUځ*I <@2'ۻtakʇ=jk8j#Ӝ>g:[ZTKn:|#A@|q].u;uA @] `w29¨Nm`qLX] M2~S?x AkH?x' W4O4|`$譭Պ$m;wv| !۫77e"*G0^He)snxp@w^v)M x u-"Q{MO,Ȗ!Dn>]/]5-4w.} _#asrabe7Y@)^IcJ/nkxyj<)|*eV7):I7O5 E,@n("uMb9ͫGIŴv_}di>v99֧TGi`O +B ٖT )wVI* ۔7x~Ky*5F$K@pG^(!iH'1fypƩ5f %ek6;9j(vU*iQcanB/EhPʹSg٪ۯ_cϪ,!:oMֹ|; o8i0ײX7ϙ3.45Vͬho{A ވl6GurZވ\GzG0F˔@rqPR$U!@CtSfEjw]v?DV۵ 26](-4m]aMuE($vkY ɷZH Hgl(0>ÝIقm TY%4L9`CvXUHA=VO2ii5_+?&9zm*hRGbw)t.NW`&`R v޾g^Ͱ7滧!Ry6jPRYIT@x[^TxKj{w;9nqY`,hgRqKt zyۜ+yJJTQn%9wwP]$>fcݧiF?{& kd,G_z{Ʌ&Lvzq}I]D6^ir$dYE3uÉUN V)s.?U; vr;Tt/h69Q(R=Mmm+7(As겴t2A-4~iNظhpsL*]GU`J0!9wz2#;.h8?peiF9=`S'\HzL]xp1"v^㫯,ڊ!G+ȫnA[ 8%1̛挻v<eV` !#X>j 8aDO(1] 5m䁴ǯz4 dSOٚ3P=$P3QAYʘQVGo?]_I5/}3Eh}6ѱ >9=٤koZQzd,<ҳ3{xrH35Ky R!8IJpr A, \E Dzbzλq:~:|.*,T̖hz kWUc jc8il94wN]L\Q6J9@[ FPeG,U.EzAzO,mv{=A\R3uSSS@Zҕ=1 }crTp P[ 2*_!|5 lb"L( 9*kO yԠ <9VXh_!Tݓ??feC?s][4ϴF.Q=M{St4Mroy(~!BMnir9/mg_Uz OѴP )աpk "U,M]GQMm(oq5e ْKa5Mgq6n'_5Uzޤk~x%5|)E3] Mu"n& !3QE\WuՎtal=d@i[ <,-Z po>vuـ +Lʜ"049 ^4k͚U2"ٛwoB$(d``ĞR `J渉9}t ;O/ӠJ=@ăjceS#S(Pu> miF Xlw O[.N ~HgGW'~=SSgɳ4mF8Y' p_D3Ѽ &ӅWG|B_Ej-(P^cN/ 2,?ϑo8uLߤG JZK>5bͩ]f;Le[8!8p^rn>1Шü̡_XuGsRS708}Y9wXOS81bGf65R^Mv`orbK?e&_mtc~> Ewn+ 1#\mĞ!B=}3ʕnU4Yl\RRyhw؝i\t8r-ctTOFNm`[]zk>-%Ty UM%By1zHT&Ű*l v[BBmeOǔoC.G{^C.ͩȰ_9t2W{\+vM^~EP.AzwK-~ BHȈ3{ ~Fɾ 5˔u#c{=@C7%zv]&bc)]eh8z$J8E3a|Ҳ7~R yQ [L(FU'+1}jy@xJ1fYlT32)1qbZXt+:܍):3[:1鍝ۖZ~0t8q}5߻8ɷ5 ɉrgl;3@>67ԮF 6*ΆUL&tG_ ҼŦ&&i|f0%̫y@dqZo3NWS Dl$ȚAs ?U1 -iG71)r#{0 \Ӭeug!KL<lA-ţϩ&z`r= zah)snU*HCʅs-1RYv )@tIw ߬P22 !qJ1^@ah+wTT?Z{>֌ub+?Y>B+xl6',ǐG3UB.h XȪ| *fg+ O8`Rq$ZM)-3ҥCd;G ) wp F?a]O)ypV)8\Kĸ _D$Խ:%&Yңyb.Y4'zmY&(Vb{&;0I,+z sWw_zׄpcYA g^ q9f~:mСp~Yf6l:|ɐ\LIAGuTnQ^bش-+CJpO f]"cܙ;2eIe[4&*mC,Xdڻ3Jb ͰͯpBOJsL6) }xڝY,uKCRĊp@`>\)T rta:xHwR4N5; {%I )dӼ G#wtZq .$Sn!Mڃ$ɰhcY`t}9ʞh<$pjrѻtMQ4=Mzud,("<鮪û].e@2;I|L[肰"ۊW^/# KpIԻ4:;ER<0_ѽ. `C_28œ8yP߄4Uı)̟+\gꅬȖcm~ Cp) a}N`t9A6sݾwFuoԦy-ieǽ*0>Q3 Q}KHIqr#*'F 5󫑖Ut!!cxVf8!8^ :T>ʅ,OVHnY9k~4͢-•՛Wлc,އ,* lT&EfF~ ė`f(Na\Ld )3; `'#2v^N!,@SE9)MC ?^ۀ>m$*2~Q^x̢iՂ2GPNo>XuGe17-wfUb9.-T5ѹHqU{vǸ, C#:Eld D &?-jIwf|W*gR(xGxV(aXh4Fݺ׬<.1?ŴCC{cШ!jد  U"kJ0kJyGݸ!SseL '95$28QvAX-/n^6zkb%] yUIe. ;*ܲ mRoC:ח}WP%I߆ _cЎF SQUټ,HmL[R@8 *_{HV~0/,XR/ic5 ЀxZ.Ep\Pzo RK>`8&YKJ 3AMrO/z SW a%-7-Fѯm,BZӡ!F +<M؜{4~OTɉt9gS =ZfN^CFa.qw$~/R^?cIVL:ӎTv薀@!$($k(l 8*wa5Jw7y4//`0FX*,K<ţ6 w-7=ED>1s_;j \hM0> A8$EgSTJMgq'ӪvCJ&GVM E`k>02&EJ SuͶn< 'k~&6p}q-`2Bp!6wJr# hFWK!j.+{c"YؙIS!3I11X9[]m"I᜺L(4W=މzJ֟{b]@+<  .]6Zc_.a =ciq碗͐=SIJؘQTbGuWѓ2ß_((g#-.*7OXJStIGsW FC5?ږBNEئ1SAhc]ғP) d',CЄjN_jOw /tNRm |Dj.~gx >eVJ/4o:/9Lg4C ZOArr,Di;]0&[ tߓyt'`i  afar/ ,>z1HUY7_zĢ(l[aTYպFPar?ɔv7y:5|q;bକڑ7]HckYNomܢ`%!%7Eܧ QM%=4 MA/ Ǚՙ3+FDp'hy`9l:/5,CWŜIxPdq>42t*,M /ͳ(`)or\?#M֏+s={qET;&94#Jn]Ys WPjvHͻ:ƤL U|Ǜ 4"N( 'wlwyar,*%<)hV,U7-e Y:e6卢mږXun3Z:8;І#;Pxjvʒ~ e*^&Wikbt`$a0tҦͨۢ}DM]UM rp'c))_q>>7b%;ENzƑ{ٽIt _?@;dfNG]ȡ#^~ l`ϰH$4 .A:`:hks"Vقa`[$L 5i[:tnˎ $_SF!@ =(4 gh{9n8 gLNv~\[y&wm6EQ "ɕ3G,"k+< Л>T`n}ىDS=87eQ&x$eуu[TSD$!Eן-zU%MT~PQi M@pRX1{_L*ئ,!T _"Lc[iH(Q[ӆ̵z]_7A[?[W"9kk߻8 準%i8rhBoؘnPGNK*eېwef[f6#Est)w@{;-|=dt4ke+h9]j2d+ZZ2 F+L+S1xjRFUq? n)RA|RtC~:?s[LAԪt%JA93EA%~u?N~1*\MC/͆kj&4\Ĩمti #4"U!h>TJ̼~L@oYq~I±%9,U1!!$NwKK93@F"d l7ihpVL@I#ёjJjmˋm Xtһ?kڦB.==%F$̺eFUɻJtn>B{ycpKW64Ytb0_K'*_*܉!p* oχ˝}qDyRַ1 <R~;˵`_Q,Z_T#CySiC;D |' kH ѻ A/dEv߫4SGJaT؎Ytt4&1"'gg2ռ; `?ػ;P>6< ©G {ȰO?+1,dYxeg{ ! e;?%l0% %4 pT7{JY1~SZv4TapK2隞uw5r잶86¤OpOh6ҟz4r ub Ay sŕ8|R ܇2 hljHBjm<~|rZϵWay3q'WK1) v܏Z6ڇN%Yv1tGMoۈ߶Ș!\f&Z/AohXq<ԙH9 1772[W)yts,89sQ5 㭤ᗡS6Fke`< 8句@h+n[/1 sN2^vRTa1@?+%9XjPe-,!K`d5 %5E7A࿸;,@1+ލYEٔ!QB'{*_e"k?ߧ[:ZYs'#9I"?OS'8ؕ<r&y_vJ1K7l;ّl1GwfSo" ߢZEخ4kЮQg$fFG.s00Gm3Cd\HA]Y90!lZ [?zs¶OO,>ʋ 7ˬoF8(odׇ`|$$__&,#~hsS5&lRg^.{c0}3 W:2 (:Ǣڔ³;+@t=s{.X7!mn.Om9 K5dF fE˚OLD=Q`ˮƉj 𚿝4 l` 7.߂4qORTz:[1\(&7Yi+|c'$tܼPזWesE1`WKZAu̳sSd|Y<} ;vz|ɒBM08/(0J^C7WC,nvH՜߆Fc?Ő%Vp4'P'7:Aʊ@qA{f1%M撒_>  5jpUYC :KEΈ[[z*vOelYQ$%ݢ/1Ȼ^b޴ޓy wɁTܨZLR'aθ cC#үJ?MjQ9`)-%b,k@OtxdOu q85a::cu`u̺ys]凚M I6w`MO9îQ4lbV2N"./Vϧޥof7T2 H3NX]y}'b@t\UsaP2(8Hxl^Dl,fsXsi89CʢJ9 aF@_ɛЯ}myZvE9GcI=B,aF ~SR!ſ8yBP^͡E ھ_ >A;?wW X`QD5? cl\m%YјQf=T,Mgdzy {,>F#:\\W {*Y.}Wx'yӨpCCMNm:ހucd(YǴϯ[L~Ob\љX\,ӟ$ϦÐV6kfy6uޏjOcOΩy,X˿* b CX]4%b\ҋ}嘇c|xjPHPPWfˏοO\Ohro<ɼ%%qI{)FQx!.z~F xa|yq } ζ-4h+Ф*E&;:\4ysXœzTX׈Usb^Hr| u0ؐgE ,ŬjzvZĵ^,>[sȢ Ez7yn9zu׸ӳVF`B2٦Bȩ__eLָMY!h`gr88q˞/w2í<TP Ws,ͱ_Prr| _q+Ӭ]D"]n.>P#TA'/Zj()^Ñ$#,KRlͰ څcA\ 3%KqU(P!Ch v6aK@3s_ N?Lx:DެˀafSQ)7]|p%̫֎i;VNaRZq[l9pqꎰ|ȍK &ھ)$@ mq>j9qq9Z ] DfǾ>$@öWN*u?^~U/"&]kC >$,% ٵ|6k!i]&]Hw ݼގ*D#Kqlޑ 7`{5IHYL}M:)@U05:5ͣ]!xKl1efӣFSX 6ZMVlpCVh> }4gNƽ^ wη9GTUiV#]ۗz;.fЇd> ,K1`N Cf! ϐ"JC6Kq} sUT|)G,7Hc*,8RR G/:l+Njp"V IU- nt\Ԃsb~L6&5l$*MT.p;5 oUo/EJ$t4)鈳Sl \`Z ^/ DrXy7b= ¢sC4yͨ~]٠}_uQn-o!^"ZV Mu8wCfpY'¸FNv|m klݑJcldȹF5˪ iIC~7 ~"T`KKqѬe p wM |Ęar,ȋ(ʙ|agVN.6hoqk䄺n #,T'_!s54)֤:tAucCGiMlCT4An1mjP1D) oʠSЌDLXz3T|mB&|  #5xS&(e<䙹3"GY >RiΡeӯU? B&͜;;P8LD]ht2$yyTXѷg/hXSmYyzď2-riT:K3b{l}W3 ?oq+vdGfIw$if{`1lWX31v:](؂@X X%/> 80mKk`[ϋ&.|ղ7N{^V5tֿac${ayu#]&U)Xh&aQ_!@4R(mKd& Lk-nXqp2Zx$n #:'#.pcz匱= Q&AC2\9j xpI2M6{L<\0ʠk jsr;_Q٠@uՋO,ޝTKdX/E O/ƕ~#*.:ql.nÏӶW3 vK oۢz|k|SUʫIjRUG>Y (#@_hV 6pWP7#KJXkǰn3)Z5GƗ}m 3osm7Xާ-̊,kOhy7XDD%L;hC1i߱HƊs_O^m,9y@ ^r Bb4b-W٨>>!qz>lɁ0(F(XDw~>D\t3Ju:.H^=ҧ.C :l$:yH ?Ch,)~ѣ_%d^Bvm9j[q?AV:؟ő/ /!Du |qB;#dT81-=ieܪ) 冭Fb M,}K`n(JLZOfR.>@3!xjnf'RoYs?~1 6)4reO_A3:h^,~~~poGM2v{e*K:g[7 7^9YK~$نQ p4'8T8vH}Xv|*_* M{smFx谝"|o2jΈ "]@\hj;<LofX2*K}S"tw'_g2IYGuwh#'?\89zg}U;Oݵp9 x~2Ux7ZX_ܯ)(;ýУ@T/WKB2Wxke.2TYIPVyeyF~ !{~`v7Z}j'>#y ePGjU9gr+<]sw2*l!K*=9&r%"t|.`ħl|NH6rWVh,Rck* |Q| 4 QR^ 7F?mDq3i'͠%Vmawė\61rB/zZSAH",䧱.:O({^([kWH"nkYe%pSdG,hbrQkؾaV|Srߟ.^U଀?L3ZTH[6%S=d 7|P@7r/9.|tFs38(ӭqJ0OC+{9oB8ix;Vr0)ٕu"R]m1n}dH@n^{A7) Z"ܼQ'^e j4[Vwv< --X˫8SxĀ/3H\p8P.z>98ע7%\DSP^5W('X G)MoUN8Sbr l/l:q(h5ԟh?JVLƍl:V _7{0W ?0-s[wJez>m/:1۠/$;;*G>}#i|F^5ѻPz,1ވZ.(p42]<P]<~&3Ȕ>uT]֣wW P*3|cX@*UU\eL[۰CVؔvfDt~R kTͼP5p|Θ4:F̌Kk{m=KӤXE =(jϮo //w2|T/3"I3VwpSKTᶳ.h'n.NhYhkX7ׅ^ITMeQ8ql JfK|`!vzeuTc&|) `4C`Nڦ1 }[GZޘ#ei2FiA"eCUd:|"P6 m$$[>2'잰̸ [E?os+enҬzPӗ^FT b۷:8Jo h' 8 up>ԴLf=1ڈxL P!?[`߀8==-ޯ DLZPQ"./rm[OmdaRdE4o=^pJf8C#z^k.ut%g*>6R"yE.,КMGpkxanECWTB9W1h_L\ž:n8` r7>[Us8ff*%_wx}t)1 FE>yCR~;DIhMNbNrj~Ň׿T/E0isj}VE*nJ,u(/k޴@Me!#dGTw3|j+~ky08>=QnbEĆ YL +nATZ:(tHB `Ńo:dT~dn7<!N$TQ-ˑcVj=3kYpC0.h?Q dT; t9VRE՛J%A!Fĵwa CS ŮƏ'!rjCɌVQoԯb˾~7k'2(gS ^C? {g,Y̠m~j3d>kcVMvͻ.txt`b3s @2>/_ N7N4PمwO2mO2} -S1 ]2bPC sp1 Dx/~q${^ h|ڛD~=U]KVpz:nD/qmFi]*OEGIv|L OE%S=Bޮwb)p4Ͷ[)9JWei.ډlgV<'oK}i<εy 8yں)C&Sx+ڜ5kvtDŏ!mAԐx b2#C/wKثnF]ζ<Ѡ r=o񷈦@*N_]෌'T^̄i/ k j_*.T˘EJМ1FCʯt=ݺMEN:}(Sßx~ILRɺHhlK^24v`ch]=,j2(\{_rw<[20ЃBߗr8`&#l9 Ǐ0?QO3LNQY Q `go]#$$&''UEZY@`. rɕB*[#j(v~όd`ND n\3 vҧ1xOR_ hZc0LϢ~f7%q=.)\7,OL?^"@d#o4G= Z.eX eM$f&#Z5]`oNT-ӫ]p)4n| %I A cӗGޤN_hY48oE{Hir48l耝(;0`0Zu*MU,A(C.)_$ޚ[vxI1<<69z^F>2N尤1V7嚮pOm*F>8TGn&B}  ݃e z  `)8C;snpO{kˎJ+Y/^\*B.1+1]YT<&RK0NkrJλ'TQ?lS֐Lgq: Ə{e*S"22RpjER C*qT4Ɛɍ;`wVgA5v ?O Q*yȹY!-z"u/؄GP%-OzL-ֻCo@ ?i6iYLjm9BeH`&aB]x]ݕЬi/9ߴ7a&_ҁ.U}0cyhB#55ݦ@6#_JƹʼTRAH0Wo'|'p]28 _`W2yQjPMcܡ:=Ecśs>үOXjdxLFG @{PD֏*w]HNbmϷ嬎5eHZJtW2V$H88SKDOBBYmNJR5x> 0o>Ow65PWm ^<o)!7-FzV|fJUK>%#zȒjB5eF-z{d)Enq.lZqHe6NW$.->(䲭aӤN 0w"!_&vcw;;5l~Ξm;BAGWj,eLAJ[Tw{)pPPcZ>E)B<|ݯg8x-h-Pfi4Ϯ^Er5>\OĬױ2 N'7gJn1N)\b~+$ 'ѯ'fN3Ȋ@`yl)HoZu4s{Z"uVY*Gsv*ҷǯs@Vm3"W%¤.ˆ\C-vT9v,-szFiT$ 7p7LMQ߃Q MVd-<+\iԶhPOݚY-Y3׹ޚv+DRI02EvڸFRZ/h] \FV(-Iɲ6|E )\ptkq;*Lot0(G 9;}'G)̄[exطa~q W; ybH:j<K vo_}av 㜋 \@>5Tigcs(JdV+@Fy╊;.S9j/:Ԯ ?Q9!]ϓu's>܆6j{84"8&$^aRo:[.x\2{*^ '<]wA7"- gjsωf D? C#tq?~I=v\zg],7t9~l.ےB/٘Z-4bW5?ܗ'[&kнw\CH:P`+8Z#i WúuN&-^cZb# dĞ z5ISQ 6Ƌ[̀A㽼B/]9.L r˜}Me0K818>RX_YJy\(߾ɪ8u?u)8Et+>?H{-8E;©ޭs,=  <9`H%B:|{*"k-;fQ.#.RNаH feCR Y`*A/HhQ$JX^NGG'E$%Ke!Sf9舍]!JUX;1kȴ KXb&R-Be ;)S|&=yG[ %pS8͸佾B0Kyz/ =[:XX-iMi d'{ Ȃ (5{yK trhҲscW/ ee8Cu0[_:0˰旲}ڤ犆^a6 b ϟV%tG=`2xD{aEX7}8Jtەs/Gs3~WW)Yi sD&΅T_%Lm[6N=Kp91UI+!ɗA/?}LC7SGMpsو1|;X*>tgx;q܆Opi& ᦪ:[p~颚"r^BZ4je\L;'KY]v0?(K(dJ./q4|0xwDwp HBM 7lYKG˷YTadj:>x{@/hwoMޟv^ҔL(5x^Өr^7bug^dqBbNޠ,o5 JҔH*(3]ex-7#V=Ĵ8;v=92;^PR1h#\%~ VG֒I%ڴyltILp~$ B^ p!ХCI ~ &b CzO.,x6i&l q2H*s~&^?ØաDҋ˜ 6N>`N׺qFN%*@EYk't,mUE6m 7:7~gfou:u ߕW孯OS4M]?fTY}`'F;b*XEuQD.  o:pF3$zjpT$VZSKCT|J;8[垟¨n7('~Ph?fQ/?< Q9]$\] I<<^_?6җ)O&c|阏EL9mhTq5Zg&,8Q hm<XG"6\eԼhr%،|7 u[ʶތؠ ,ǰPt`|yI4d#ZJg,"dYgbG+vCZ9 ǁ$[Bk$:O o+(8jx?iϵH HեjҶse?NaV-5;oCY}p}zvkyh"Ro#ķ"o ذpVU}/?(Or]53 w?*LA?gf^ߣ㣎H%# fo 9X ڦ]~ha`m5< DG"D}=c ^`Lx reȶl9j" 3gr6o{rT?cV81XqzgwaqO.fm55DQ*NF*͊9Sk\kE>zK5!3nb/mXo&-PIʚÒu"q@yIxE(H[:WM'jr]6{f4\aUp. -|mrT&'a{r DFYvA_Zv¿= N!P+XQn9ۥ78b;*Aa)ptOjMpb,k)opC( :(yadʙxE u9()|`AM@왧O\ߘffҦއ:l"Bc:kjW>WPdь:&x&0K:cR8UσA98k#u+Ga: %p8TdV6B(GL!? iÂ!ZRO֢!yZ- ~a-T$$3mt\- ( 4 bi3t-ğm%-jBRå~nr<Z60Ƶ-y} -4cH@£x#0#iWsi!ܼ`|H@IH\(h@sp࡚}u> l3|=L\3Tz.OeďkO+)/6#t+HaċP:˗$j^zyQ{Uf ' ;Q AC2:K$@UHE)@1kg! X@0I !p|@p΅iRUs$a N, F87XqZuQFeh_H:\5C6j+ϳ,J]0N1(2֮ )SXIeLuTc%&0eKjFþ$45%;`"ܝ+$Xʝ/*Fr<=G^=nˀ#(n3Iva,@Pn@x w><h6V4kuVByl:Q^SId I4CZP:c>" p^k?H /(su "LC=#<'%hX32Eщ*+uɴK2Bqs"OFҍP j]];Q!\(iTߩ96wjZlO ,p`ɨp&ҚR锖je l<=U@4 AYx<\3q. 9FTtpG~Dk p UP`ULFT'5XG)-EB)%Jʞ0m%[!Ŭ!_LWUXُ7PD1oQT~ tkpё_.h_# 96D>˶p/@TjX:4X좏'>o0<-2Dx8\/'m;>:MDB)e[!7q)E.BoQw!pgɛMlZpُMl>^\.kjG4lK3:2}Y~X>}~ZFYІ[+)L@g|%-N}H =fBxL&zWzDJ[ktO&wՁPI:-n)A5TiwTG^8DN|mMm -W,cĪ15M Jg: hmW*=y#h*T_FGҒ&QhP2LH.éi?'%tp*DǽM1qVj\s#ΝJxsKQu $r^VF E*yҧ[;8%fŻvOOg.%.dfpEϸlE_{>: +=j*xGb%ޞ3;Rv#)d;Ǚ̻9KvtaX Íp|iP 5UF &1_4X<> ͩ{ߒzhþe:6ȗcwW@D ܷ3۝eZB!VNn{֬awYϷnٱ&&Hc۾$#PCS? N3Y@4I2ױp`H5NI=}*Cv& @R,LcQ( CxhKDc+o bcKPCNL<>烸w]`56VNvgU1_]BEN?Nr7]) ݲ4@nomzu>KDdWBVuZ&s3KWTB(RP9qP,PRPՏZN%nxLmB3s/%JjŌ rVgodCrebb,l^m ځ"] $z< ;kWӧa.PI'] 2rq%SֆGv†m34\Co08"Ǜ6jj9ȰP-ΘCp+9)3ÌfJru= 5sW/v΀:ϋͭ Jc/P}rV~$oguˤ;;$XԋdU2m M*<:OĊ|MAw){BeXjZWX=2%'k \W涐v"1bJIhPk n.?Hcsn2e& >b0Vh0cgdǼ.qb\p4^ 5‬!  ZhGjs =6tOo n 7uw9Otsba(ו$'5JկهJ6M}/[3-&(1ɛ7b_kVy=SSL7v?r*wϗS0=c6*OQTپ4 i̓i]߉e=,1a$DC?+A}+’WocF[7Ajİdljz ^ 2p\%DwiJ(3(D-YIqjy)zI.`P/"-W"}/uuZ+ح.z> `'5t/0a"Rj㲝 9!zLJDlcO%Fa]GK!ϋI/2heMVZ٫ >\3KiϏؗR\2lglA6 ?Ẉ T(H:*y‡x{q`"ߵܤx9µxZlEct4 P9x$vD=װyHF_> p\`џS(: 2ݻz@;.g`dD>Ol61}is/c<ԍFe34/Iܚs;k5ݲI-F)HºKqShV切Gr%={&V[8T޺fG2f#g8Qٵ@v X Ft(rl嬣" +X)Bt?MM*Cz/}GW:S>P"̬g,Ǣ$ߑ5kQO(З>%Gqֈ,<\mIIGޫ2{=tl 4lW$l9M]8ۻ;).AtI^nrOsK?7ڼu[AӴ!.@H3}3!U)tO['K !6ط)@f<ƭ$ޚh#7hԥ Eod򕢹WT;yYe@bɦYEM MsP ߖKfER"'nU:H t m-0f#yo~kI2z}#"j[ a Ÿ~+qͩMt;c?RD<4}UZ/mTUGc!ylbl;}pbl踭 IqaȔc6gFpNťS`4V#>(A7(xZ6]͚39 7_STk1?łLu>TpxU"AFki>UFJҝWXc ~mVL=v..wstht+" 7ߋhtG,_gv9;%^ޱE[OO=j{ [7cd[ ~xzpj[=H<$Ef! C /L~{x^ڕ.Ůp (@  TZls[:nw\BmeU4Sb]!?[O,6k7z, XgWͫ% KsBɩ׫YGCCU^.&B*aZ`M0I@Y#gNUvnӊؼCc;FL|?9kAS]gr`_-Da:`]&*FfJ_|X,jVϵ-oAк# #Aa8N䮅m!w*?c~t" Qaos`|"Aw{0^+#6S~VC "ڗTܰ 6l&9 e2{NC'U&Ϧ2[+1I)#.*k[}a@M%ZFF,^tⱓ =^z ,eLz9W8m7(g;sU!E2Oj1E- uSK$^Ů!1a4aVP4/fH#Xz_ cBe|T"șJ-%( đ@]SM-o*-s%p"4\Gat+ 1 aUt HԼyȎaWwa~a(l"22<2Er5Jـ̜Utਖ\v;qӂUٵ H1q4[Q<ͩĞ{qFQ3~}ujxhgYiȹN롹c.M’gE7dA #DO(N 6!!ZRzs5APVt\Xr+XLK8$M-Z²δ/}4GQǘpYbl4#|[2cJ)N#i$5)xgm'~W~Ǟ|-."IL>ց A#OG /qI.BDm{(DT5LW` H4t7$$STw&\IxKh`t^,t¸N >pxFdf} WU}WZFdkLU4vJMeoKX xaE8o6 P#glT;Ƕlk>hbT!#u꣜: L_W.%^GlQ[(o$DhH+*AuZNbBq>~Qx6ixp8_,YR@Vqz- ICtK#kzBsH|:~:h\ETI'D~.JȺǺ[8"]Z(jY_Io*Tt`_._2VvSu򑥏3SNUU ?]{(VCQG~GóĮB'N7R>w=!ɴƴI*eڟ)aSFg{ ;3*;3[AP߄5cn/J]۵*ρW\FKn!R}CS[@uGY꺳U*Xci4ʛSaOԙv(Td"!]sIϐt"4+%9VK9utHң} 7o=#pԇpc"i@M4K~ |y v@925mʳXV?23.³cq,[d-nQOτHט7,xPZȥ1l%!Nu@C7WVRBӃO$E\E#Ǿ=𿼉Jں7>gaH I(xU!OrS9'G(7Kk]O."p:TeXdKrVq0K=ZjOڎB+Dt蓝&J7Oa([dFT,غd{vSmP?*BH\ V-Ҿ,䣢JPF˛Xb~&^6fXj'`4ҫ:Xؐ>^J 0PKNg!xP2L8sv:x4¸7 ,L WA9# >ެ4ԟؓۿo)wz ajߌ<rS~ц1ZN/5AE:b4wܔWWDN3v ݠ7^s;T|qK?[\ ё_"7Ɲ1I5PR@i Rtkcf百Nuoٯ]p?YJ&%>sϥ܌^C<kFki4S g&֙M\v`~ ?cBoV.ȫ X3?'w/4KioK;| 0F?5ng6~tpӈ;eSA :#7qMUUOW(?FE3Z<}脸Oci 8ApW戅oEn)B 7~WG*Ӵ&E\SW6VdV?P!&<|b=ːA0pSyhʺczBO9z}'-ѿ^ U($kwQQhΘK<7'u~{s.>sn_uwl2-mB ZsM@1Ƭ^" ٠ʮ,u2i;}30Rm۠BX TF6SÎ)6)DuYtI?¾vZ^"Q(CnZh+^:#P¼V[|9ch<5Z@hco! r3z80OHz"ѥOB52(iwe~E腟X˸!,.7 l' gP޾GWFj0Q=ˉ!17|5F86'ۛ hQ)& `[Q=j#iJ(ixۺ>.ueMsB9=&] L(4OuwD^Yk=rˡ$T/lObA43+֚xM\JSr޶![#nm GG0+w^SIӱ.g`V `9utn -`\qjK{h]+xuӐ͓C567I|]yE۵˻q ~Oަ=&-9rҠ=po)VgZZgIuNfÜD@3s<.){6dۥ)Gr7vnD瘪8-8o_&^3B9.H+u3WWY XLyh>-ݛ5?fX)Q:ou,B:Q;O8_&0sZT0/ݍ4^&50L *{)fq?HQm պSȢr@h p@L_JHohx"N I*R9Э%wj74 co2sdH R"g O/,,Ź`|#CkU/ kIX<Y*82),c#h:nNML5|/:Rg3C!ѻ6Yk"}k[hJQG"y{+k̛ͩll?2#)/Vz= qDm|PYϹNBlN +I2+ЯMoQc'߮WfY#;' 5Wm@GsCT$"FxEb _|j_N) x+z,H91-g?\Ͱr%d(ߦ5Iu2@zdN Nbg`O :-$9}_m\.]*5>6p}`Eip O`.^aԔf* eN!'0\nȔ1X$ӝz(2iɀpVWm=KzX5B+Ov]DZF"GVR;On\~Szcx61ق4%,F)t" ~D>t:Uc dcQ]%tJpQ/;1[_n%y X~NP: 78o@mt ~#bX޾&%Hxq=97Yt 1Qo*Vo@WɅ7F!@'ji[R-?#%di+1:&9Cx/49J HD"wXRq"Gg߰QJRDj)/Ўb|/0)ݱAG]}YuYr]uc&,}yɖD8 6y*"gJQ9=D֖B_2A*we {&>actA(/TMywlNQ(>~ݑ.VĻϋo?Iy"⿂*LVh풇Ztۨ ؅rBKҿFq?B!r,=ȑ\sg3ͭ?D$J#)*9H:8h 8b(00꒴qKbg=DYHL'MM 9h% DrcDQ k)|ֵ|"J^q/+CbA}`JkSImU*"uki Qv@P)/] aÑy(43?.i$@Jjݴe^l&K}\tyhŏc^trhaə]*;=.J7.x _|׮a٘x}@U/ϖI'OE3TM*|=i&MH~Ox: HB$X4kxc?p]7,{I\şlNk6p* 8'ɗJdk d OU~ Ѻ{پ) *Oqi*d"n-<^@.v_"ewcs)a5rD* `ZӹJ^5uY3!O )_Aѐ'Wԇ m) JbF-k0O|1('/UxɯI*-\3oSzvsgrufHȾ%Lk C<$:LZ OZBCN ì r_vtXŏK]K6_~>PaUW=tSZO̕?*v,1r&6'hҳ@Q"u::# 5Oj@\{24k5s۫NG0bfÖciL%6ta} I+qdDb" Y 8ʇ=:AiWZx3y/,ƘCnU^=4x!gyϴʂL$_k|ZtެGbge(MjHNf>U9p^2 j@\0Kf\r{ʄw85#ЂRB4 Tbke2N$y3 bi]ۼmD_"jYɀQ.?Q樌Z53^/`z| +2pMvr t8mfvfh"޽m8OuRr%R涤b R\Q1g **} na W h!Kp隙7kYZ8_liaX Ƅ31V0 t:PY{Gow3uنK8lEY9#h|??"t^-Z(Ne1fx< p y vwk.iOn9 1!',P* :/}쏞 -砀E.3tɼKHm~ԗӝd;KoSp;[e-FG#lqi:b+̵1Zΰ uv, @VW"0oO^wzj-?X εg毒SzgR Xka?!-%7nFaFNiD4?#k!ï$lzsY$Sl!!e@?F߬fO@? ^ q|j㑾+m#rՌF vFyR)q\$V2~tn]Ã>^+,AwFW4 ߽h5kcO(eDml( /Vz) 8p€eN7u D]P Ku<`.g*ʤGJ|.pBr_k% 5qipDD>-ڢSb$41Gy<~7 L,z-fȾ!0skWOas$&N3x5ݲSU} mƑX𴀀]<8͚`B F'l4|U뷘3a,{Ltu5J6WC8&K`4@Rv/|x6z}Ai߱7:q/⫢阡g nˉYƟ1$슁2cis [hvf_ɛJ]_?5>Au|V(d N#eLgFՇrH|acĚ"WTZ)A){ <:>?}D"3}9\]5r Hu&ml//Ɓ7]EYP{ƹ *| W]5C?{ .⥀%υ\RV[!55 %(F}>l|>MP==y$,n +HaVu}D 88DeG'z< <5T,&VX7дޠf e_HclߩuJ4KDRNQ ,tOFR.2jYfAw )K=>EZw?"n3-![0@y?^ү1+E(k@}IvXl ~NH0kԉ5CTϾr^tG =Κ|f`>i=亸g!]W;]zŜ,w?l%$v[ mmt}o8ޱdŹو@9D8iJN{t10># !u`4k]G4\"1% )u_cIyon=jd1,j3 *+pTcb us?!Ʈ:<0Ցa0#2Tq fk`ŸkL @,ik^?pu᭴Mm!S ֭Iy:X tgsփ1X^yW,ڴ)K}$jt Pxײ޿QCGwݳy.or82G,h nl†ģNE_fJ#~ +k9`t\:O>5q 'f3haנo,.h,6#uGiH]4uRkir>BeƄ ALI,l˼}T =>ޓmS|jiIX2Dp(0Rt]qfSwghk 9Li!k D,N$wgbӴ)9Am rCc#u0TC==v"yeu+ִ3?_= JQi{ӉASeYFڗF`d` {6bt'gFx 4vR4:bVY7_Ƙz{]p)k+3*"BV};DţK-c$ډP3.VJY0qp$+ ٸ\ݢ+ e*akGMVr?Y:KD>mEM@R]ɁW$>XWl;B3dD|da)ߋ+ n j`U;OfUn:|[ ٧Zy@P>,$b (Lh"_P)ǬP^}Q0(bc vp%Y6SgI=&ғ$V5,IȃM2ft14~yv }cFQN@ĬEɳ 8ms_ÜPkIes1+3ޖ5[Ѐْ~D+@=ʪZv ʙr\uUQ`g$|rs2m2!MQb.]y`f}vd`:ȕ}pJt@?ٶ]5oUwx;h(Lakʾ<N̜C"'XWT6*f^I}8;K봟ORt1\M DSꑈ#o L+&$CV9aQ+#УԞ&+RBsQ͡Ocny9S-/+rzz^C쀽LL&$< 쑑tަ)ѓwxSx3=Xx=>qb`ߣHqUI@hN0ya7 H*+&9#mkw.K!OKTE㔤׀)SvPY/$ˀy KFOZ '/:#!׳hP>e]Pol\o1֋LtuO;V̶o0C9èf0ƪ"}ü4l zQh[[mU.|)XՂ>Vk'`r-gnAO6yv Ygno^c!M {V1sT3dW ݮȴ=°9~wnE4~+&ކmW2\WZ Jlܡ#,X-v[E G\AH 7} 3,c7aEs\g)CZ>M"b d1RVO.hb̀Y^gWnSUɫ6QahdVTzO(s57[HP8-]!ڤ+x*{mu FBb_*}?v돬!cDm$Ľooyw2;FWߋ$nZ1 )Y@,{iWIzrEQJ0'@Y-j iyxՅIfUƀF5aÝa0ȻRC)OΈx56Rv3SìaXoEs^-eXCc9bQ t##h\%q5÷ []5!MύQєo^AoLdk8ETl>ѿz0䘐{nGbJZ>D(2;ܙg-/8Oze#oP$=fIn1l }$_ǿҿ_8=+%6n1]a6DTW'0]dez<|Qr:?;uj;Z+i/8įhkFeZk2hNwFi^:p< 䙘|{b@ݑ@E4ivO|TlސeHq*65d9E8޲@3V H=#мܜ5@e9  8ʤW]apPJ&^DjCuh!10MVt 'n(Dw7e[Ĥ@xJ `j=rRkbԤBfnN%_>h>^ |S2舋ƉL xC:VQhHAϴ(PĈq)NVl+g+3 B[ф Ł.`ݕ0f~<;qw%vceeQbe> +Ra@2 JI  m:( v{ExTೂ\(GlgIInedaIoSN^s+g]aX$DhU%ks@|-eM~O/RLC4Lo(#4& %h 9A`҇SY.HKir*,Sq#Puˮ=o7*/ OJy@!oK\ym'q ;FnLVL7x eyuC$,VFr[!Voِ\ tUԐH*םNn, )mH0U,JxX|:þ's/mr٦tj8ik{L(u$X] Y1=ұ k9F)dV+TPgº=^;zˀ'-L"]*eWyJpq@>qpӔe{J2ڞ'|M(lUr„6-{toauRز+'h˷@u |XF\Uc_e5ꃌګRM v`vOaLH rZj/5pn)mV6 N ۳"< ޵WQԌ±g"!:L8KQ߈!)rH77(mkG!z8 }j7 pahTJGPbPoykc~ ;CEe- DՉ4.u^\y)xh:. Gg<#ʽLk:_r[^ 6I/;UfY{JALbaP~t?T~GGaF ԥ^AڏrĞt.J$D-'̚E#d]KNx2dQ -& ktIT$yiNbTȄh<|2$?i;M6_cw-GFz \B4<+>0! EI:t{QAKjҫf,8mE{dOE~,=3P+lxɉ8 gb2'I._8~ Z0H]jpTj){fo{9ڏE!ը>1jџFWGI׺Tx}q=%+h,boz1uȘӽRg"`p:fiWw =|p: l<2}Sv15l)?;P{m.-gz~F==u1v3Kl_Wm*u㬕m`No.Uf:[CC+lRX@3 I/fFk_/{h wxw"13aoi鑛QYɣ MtgrdX3WWِmB * g7VF #(?t5 ӡf@- TXIu*8P–jRss RYW ټKc9^ X r}N:q@@_{`F*nFK]e2N;`Y}D/F&_m8خ1ZS% U%p%?*ץv}Y\•?B^Eb}mPG99 &#+\dU:]L vbaxB.«a>93h^ȉO΄r(dX4$-.bf߬c݌}~" atKįC <&LZPW`"R:a _ۑ%WM+I)M-B]Xu Z*ES|>`dxGWt0qBo˝<ʴ1Lp DҥJfK`U7~BJg (fsTvJ=T_8l0?K=)qlRUl{AU`"HL؛VIW[c&Hh=9=Oy)H]D9d$oqAt+3 w#TlZ2E$ ћU 1/nU@zIAvkvMV UQލw[ȅ+ݺI]g.ʤP[w)i]/-ws1cyub1Ʈ&(Duqw{[ ~I{\xRU4W'HӠ],2E*&<>۱$i:<#>/37V[Kk_+[#ypBnC!)cϓ`v8Aٹȷΐi\Ɂ5.0uAJf i`Dq+sy솦 o9WmNy.Cu|d=BQ Kc2R(A:oQ5ziRa"+(䊃Z4uou %K94u+Ἓ) ,Uz6u,Žgd'v4Hs:;,=ٴъj0Zg/˙G2LAA/g$P8EH_Hr9J96M#e 6t;l)%)٫s=sBˀ}>#zӅ6386i ǿ>ZW\Xq-~7#3;JI%>A0-V2MV@{ V$ ptY 7ԙW6-9R*ºl{[Y&YL҃\59/4:΢cΆXVmdg1cW ^х*zD+PކEdP)cP);P| epT.^4 b,+ o܊YN-ԨWt@̬ ||Fsl;Q0(ҙ&^j ?}N+$㭠GIqu7S'2^/d\;L')צoNwAp踦5 Ψ_eHXURClg}%JbXR QPFԩ!0l\bĩr*-ބDv*(3JizJ7SI+exyMBzP+mlv' Oja,l'AIz SoJ7|:ܢHD{{hi E7 YHBLq-i&Uy-Ċ4w'o.ѷB ddSAwĂ&rqPKE`X X+$Ff+Lo9/ښvG; FX|X95.*V~rc(6 Tau#%3 W#QK{xu tjzFJ̈$ũMTuǻ%ljj|j2.'ðM@պ;~޽E~)r]d_ !)@#LwsQײ]  kTԐvG*VM)*wt=*]aLw7*N @FM6՝1q QJ b)F"Vd]XTTT& &_^X@GG&ѽ33ߛƏ)M,.Y~%dk -036]d~ ' W>\d~~Rs-oЕ2!F$6uQwզOX&!=&VA1}|V6ڹG+s6S3z~f \z`F-׊dM!L~¨[*`8xD=1/ tJVЗ$'L񄋲uH^Su{?Bnҕ>_6].j6 45Jx:+1K룹6"xz'-:⧐G >ɓƯMFZ .mo\![F7(M`u;܊xf 8qjzXm>p}w<`8 Ji}q!pCG%GjFT*4E57R\ jLAmaLEDx%Xt~u>.ںJg(~762=,/ƈ~H NܧD 3e(G9jJq t)D8b Vm4xA"#cI,֫?YӝhsK/VQz]5??JAGq ZHa≅SOkpj $ؙqʆAw UxIXdVy}tO#DjiSFMNf$TK3գ۲͸_EvfjyϮ&f`ܪ6R@l׊KxLT]>J) je=u\űAvjz쫞tv)2~ǗZ'BĄYy0s2vٕ`!*2fNkl Ɔ RҕiŨ+ $حop0Nmݴj"yQ PsK݅'{B-o/׍I/jlv|C9Lt_6p("` dD*r~g=/ ~օCnT='6)h)~2&)U# ^$xFy>@zA?gqzE LI$ +$WN&ciW.9 3TcKna XmVy9Re~+rAk]BuDPXG%jx/uo 'Zqe?-b_fgȅ`GK`_\1[o|K"*w{3 a@C8eG_L7KxGaMp,`$RG"3Jԍ>ŽkA9nK6-zPlY|̾*aKYYI&#VT b)N}y<%0`" b o~i4=ꂛцh;񮚡Uh(!xI谾#ky=v r7QmAc\vC;ȹ[◇nj+z$jͱ'\z5F c}O.k1|k@5N N \Gσ/a/=$Q,e(^>߸߮d4f[JtH <2&B{ Egp<͢)Alcᘢq:|m@Qo3W0bѨ]kk\"vaԷ&A'Uoy\Y~ q'=;blUSta۳L]D̘3MDdljNE1HJ"aw[zԌ5)\e/`K2Z?5sp|7F\%(9M\IdV ' gb\Te||҂[*%Xcr{V0V^y]5ܥ^ 3 g(3դK^v3?^0mZ"=l"ii{n ^ɲL.1zj;aҚ{^ ldodK9(]W tlկ.WNl^Rt@KR8[ӘN3i{*6LM`P) nt5&35xdŵPVMdϡi䩯p7Fr!1,[$̭k-$ |:e=-Vc;oP-)DLbO71X`*<*P3Bb)+]YB]TQ7xw3oO :J[u=>%A0tO07R#$&~afkA(O>_!7u3sBE#fD- ?9V?~RNj*N i1)-vN[W~Cڻw0}[3oI4ϒp2D (i{4Sh]cj e>FMf.K8])0q<J-*}&^Y6-UjmxY٠/y̙I0P4ai 5*BBג&Z [9XAJ6 9眵u|5qcIYAh&e\b /twfdi]L2OjҶC^v7ZG s) ? ~Xm{q3n5"51} YE]B>͐w則܋xctZE&O =^@Ob8aC#?9 h&:)Cm%Bo.q&!j^< i&x@()6j秩"6g"6w_]"i-D$fW IZw|z+-ai?$Rb-,7ciƓHi`K#eƢH=iUmU8 t]Z ([gabY쁵Urt%R[-p.JLvwFk^fhgU)UT8A@iP#-.?Q-`cLt,T562T㱦EQcl)gGzςՉS"!+EۏXw1Jӷ2~]yܢ _aP eB/Q,~ ؚ->m7kD@'=3!yd .諒z3׵P1 )ા<& ?P|yd00<3t ToeC xj'_Q]3<^ "9 cEVdJ(ݚ;W@"`et4>j]+Q?zOT.T :bW|Y_TQVWD%F/kyTE@8MxL2IDaPrbגzLa,N^.|VfxܝvQƋ]Irߍ5?#&Jv['mYGK ])n QT{2ʭ$s7g3r䖔`$uX,@.+{4͕IeWlĚtT?tX[dܫN(ݫ:N @iť[ V"མ'hmHLA' əh `41n'8R"[0 r mbq凮4#SZ$'"MŔ9UVn)8aNi S"C)} Z[JzEp8n$xrKrylR6hIͬ1+*$#9k !:,hcp7z'kyJI{[;1YFw}.a ߡyˆj8)@/(wDG/gX0rlء(_~cS6(WցzК]ɔ=JLq> Td̦JSUބ׍ AQiow w2(ò\eɬVx ZxOK.<,~,{vOIv¸n۵8v<LVVU6﫲4GE49N2f/hK_D_{%,`ɳ!IT3RCmgi($~PYo SrTQ,Ca_j'gɸV2J>Q02q{ kXt0B֐(:21FgR `U,.W ANLQ qwG9uCJmAvĢx64c>xRj~ۣW{MS Yr*cA&8A(_fG$?rv_Um rc?+ק9!iScvmiS0䀾BCP"dB)ӇgQz#ZaT6^sN<^$92huU³,dNMI=sp}Iv8Pze UI٪4_1Ө7]VG|uBdׄY~ Uົ$VV Z|xfK3Љah= ;z .zQk*aRf6p!n qs53~3J@~p(&=I!elDZ% tzޢgv8Bְpw]3 Xs*FQv.TvŞ* "*T\E! c9y0s[ Yе8.ߨpL0qd*loPoҤ e1&@WU#`jd$v;'֩ۯi.fSsQ[!yP { &Ӊۑ4^棆o[M=nV4Yc6%Ʌs`',`l,pGTxin[JPm3x-?? tX-]jwK} BZƆj-x`7gn]0=<?5 L@ fNAhF@eIɽşXI$MO^q@Y/([IZ-kv:gv̷>ն~s/wudsu^T2wIYlJ)Sۭp?Pr_*{@j ẑ J3SpV86N3[#5"B N1cLgR| iH0<4wr4 Fㅌm(6O!qU1gkmVy)\ R @6/ri緫r/#.%gl^6h; 1Gu2MKjuܶ RI `o5cBsѠ}S >u!X"ڶб% F|6W[PZ}@U;(6ޑӌ+c)Sܽ$h^%73nT-sh3W;)O!T/ y`@ki>jo! @5h'x2`~slFBfd)UPjN? X.AHK}k=o4"CXY5:krFQCYy#n A2W+L[3Ա \|.>-6H)*0)Lp(-ﶘpEI{1ZBRw*O,ڣ"5BIKZv>X}/I2FCPg@`# G.h <7;lr Vh53ڂαm&ՕU)5_-ql`2|dGjR&~(aUYR%ww9H{:8s_$mMg=ˍѤŕD1{޺6`:F8lC5`~0Z{/80C}M'V}x6\@8beYdJa;:.$3ư=C|j<*ա  75ZOx TV6vFqګW\fnb<AuHR@RyJFgot kVhn(HSvSjP[KMMД]ӾlZ8V'͖Ը^bl)dB"RQQB :gre.Y=?J=j:gKy .(t77z)8KO6M9y~Ti(2$]jCyx'6]yfS P,w#%\:ƙι6K,OK3[=ԥ6v3*ͬ#heyaV=CQ%x_s~n ]mdEX/Q QtWPdSJC95cP= 5D!@f QY~0ȥwc&ouTd6lƝȜZb?. ncR=ʍsWiM5pQ}Dt`: )#*O@OhW繊_4W|Z߮j,Ly%<›$뜠,IAww^\λ dIvye$sSs =c9o{5R5wFoب 6@#m(;6،1 jO\? OB@iCL/(ăR˲cY:萡Hq/i@kD^7A@3 2cLP˰NXw9~>hKz0C[[WpFeS\L|'4#-]*.];U, QsZx1w<\+FQLebVɢ-7~,W [5Ŝ;jҘq]#]zij(]+dtb )b-`h'`(y-If(UqFiG~f*}I2!'IW@.m6dH56l(BCdڤfX%_'i0aznӘ&nc @Ņ>Y5w8scNøxon+'⚉{t9K ׊α )=7qVŭ9Jʔ_g~vf[e"a1 nQ2T<;5Zo>WGKRmZ#p^]ǭu涇m,y#twlLʜsC?>F*j Qa2v!e-F!|TrKCpo8>Q{:`i& ǤdK&R/eԵ9Q#IPPϱ0I~\)Ʋ9xW)zb{/l7+pmRF(>!17Gu0+7*f$,WFA]v D3~Q, brIt\-o7Wkĕȣ'1ta i^wz!8nm=so&[owTaC4〞FR3Ÿqzm#˄ӱJ 9@JNP|' U_ur3G}!^L\PAyأ,G(e?x:dȚndM,n(7cg2`3,^8.d+'/NQd%JRA!CkR2̧DtT֝\{۷6Xs듁}<ЪX(k^LĨgЭFJF3: PR}%ˎ  O|#+ M΀vu'? U.uRRiS} 87#KԶGhτ :y4#еuQ #[X`Jc)8"n,T Y< YJNk_k;[{@ إXMEͿKH~˪ەgEXc=L{Lxr` k?f6 nO+]ESv>bX^k]G-?i0 ё]&@`CkRtχyK(DsL!uB)ݔ_WC  o/R'\tچFWDGJ* ľ |aYX!ӝnDFrr;\U \~=*Q C6\9'S`\+.7eؾ1 >_Q{ȩ>Ef'Vcb|ɲ8+c^cVqʯ'e̛DAS@rMzَ~wq` u?fELb/C-oeדٶ3[ {j d0s^BUn}QO6M:K3af2 R ሄiLY:Gjhq+WהKZb |"(գwG[k? owtzCqOef]"mJ$.eZZ1jW$FCg(5 ũQ&_n/ +aum"_,H:8ؿB5䙜ѨNj^w~wKYzeB/ %jd=}p^+){A[L啴 ke~f 'i3;G8h:D!N0}bC2J\B5ή~lx- ܭlN5` $,$|Igic۴lv pDEAly2ewj'o@buj 6_d h}0i1~> q͐*kAI_M4~I^~'8sól{)%V,?U%cGxI2ǐR eM,/'* {*+m-CyR9B`%{;[/FoGОcn}]CJ, ƪ2:,z $Sgh$nIzdqx}ph;llqҝL ݊~SxK'[v&BJG@Y+"70nɋ'J䪥qʕ [HWEF <ھۣ˸Ţ Ýjmf_YM[dRJaE/5Ljl qw!K6]eAJ.%< rBY#H׌]`+Ui<̷Mr:fHЧgXH>">=rl:cH${vGq=Ӛ-pU[-=>w:_I󞼲$k!UYfrh_B&hK_f* X} G{wjYM4/l"ַZ7|)r21+T` }s1Ji3. :Ea?Ya6} 3!3ô Q}V>ҿfP~s7J%,ʣqeqWa}^_b[eE\ H6vY\qs9'"S Kt/"Q32-|rl=>)b3gY85rsxg%u* dP f N )׽қ[ɤS6K "˵ iw+JxR3އ JH2j)dj;Hc &!GSS+xBx|<X0Wghn֜6 Bn7*?Y?7Eˊ|7L\ 'kYKpKs;4 \S mh:Rbfp 0ũu3_qoP[TyF5ؚJg]d-J5넭,CAG.n=|娻|G\Y%%њHXj*c]Sc[ZĿ&EiІ@cn,ZHu`޿@^RrGN%QN`}(0܍Whdm+00ujc@:bZirVk$%ByFt*hG#fɓi)g8#0MQ"Tx0(LJ@dو+N0 F^6;ps`+|MTqwo.cNxS6OG&`I/1`<\qɍWX=a#O_Enw%jO;_6^wB|?Ϭ-KkrBcfZzH}KeqalTa`+a<aB=uígXmYI_aiA6bW85iҢ=(#,yP?H͵[~ɾҵRJDSM'6t!e{2ɬg>N}ї{4)8[D|7f_)>TZccOw+,#[qBqL)U:/K1X VvMO0Uo S-8iLQAɷ]v T3:2ҟPMRCZ J3,A ,Eđ4*}{-<˾w׮*aqzeA:s}%zQ5O؀#i\f9Zt%&ꛝA6Gc7h,  p=0{E:}4gm $I<*Ot|@yC릶zZm=J;/=h!EfڱQOfʙ!b۔!߁ܚ˜pD8  +aM(q;) ?X}Ǭ{/ Q]Z^oQ8u4-; %=1_F"2Z/^H[U~ruz-sn63,"oUCG6%P6Z+2EpСyĈ\Cr׃ᶥG8meX(^b{; 0tue&l_#C;e\qw9A( ~~_!Ȍ`-,H5~޻I|dlV$Z>;<lj Ӓ|z#- v"ŏL척 <TK ix=XT"PU7ڡ1`# JhhYY9^+ \imAhfxSXZJlyq uV~}XvyΊ9Jb ۬䱺fL=_հ6c {&0G8j>&fT1:f?G,o d~A>&ڌemTQDH9Zv ?qSP+l^% wxɑ呑f{҄E8.8~#w%`u_H:D!| @SLe:A| d}Ļ1ql]>!^ _Bkh/FhE3B23S*DezL4vP8"7C#_(ze仜rm G|ѩw{eqR̾$y{7T%x +̊IT^"}XiJ$(x: 7!\iw>_{Seso*N^_)o74퀄Kc)/`֞Sud("ŗQQ! s[t3 (=U$*silxLU]^£xBp1QX!H:.]hmp K{`?ȫ3 \}FQĹ\|0]Qx9niԗU-F|һXf >5oEzit"Oқ-] A,es*3K9Am&ax|8y* q\/(nÇH { 2=j ??O@y"@M"حVfr[`PtMlϨk,m‡@7DH}y|B/zqG`Y&N[FfVG}&lpDGذ} FgWo^ꞡRHsc37 lIJLVFZ$80+ zK>*Vk |1e ,Vѽ^)a?Մda9+@-~,`@rwY/b,yL8]PA F5sb8\8EO2Uo%$/\i0%<[h @m;ɂQf̨k~ @6%7,4j~anN:t3ul S>d6䞓 8<[m[ /UPX.toݠ1(HE4&H6ZcduEB{YñkM_g.w9M]mu,OCPb[n-6vK6z?njeyp$6[_ͫ كA@T] y0|x |xi_DkRhWQY$Sb.[=ھ³<6&UW|y5`paLҹQ4{lAp;O*'+ cjR2?Cps1aTE}~Z|QC5 J`yГN/]Bt++:aWXN$X6R h@%$T}5M~?ُs#wh/}h iB?m0ʅ*v1ުಃhQ=D! f 6_RLܼz.|~(B ׆9&LFJ=d῔5vgXV`DxҺFz8o*Gt-~y;*HD,B=ϮĮCpJJe]]6Qg0+A6wzZKwC:\Xk:: Yզ^K\pb{u½PQ({wVƭZiD{0-fw**5NG}^\釤Th1>$S@ƞEoZAik0MǴovᖍ'hd!)Hw zZ*~hTK ϵ-K#Vh<-""d#*k,@oƎ3F  Ry_wFMP:`[} wˍH TWDsplu{,4K,/ahp`i2/(r$ *Q BHn =/h_6(^j7rWiDSOuj m"DYi)?nOҐTJEY>D8@$x<-Y2 VGS/k/\[,<V2OP ݛ<_1bl œ%N=&5Rٶ p, RJx%p;c([*9Ծ%oP,Z D6:?uG@&2޴ z2|ؕp:6c1HP4@n6cXZd6XꏛdȷM씞5Šw?,.Bh2$_q[K2&kuԅZu:5G$uяĤ뗫+*5B. +`.R\5O1oUn*y mG/"=(b*1Von{o_F:4#ROgv\==r$u-n~2"~p)̛ Nb隨CR¿%f U^sQp J4B3uNthopzn`k_\m5mK<9qNbE|&X3bwnճ9d̰f=:4ā6U;O&Q.tZ&ۆbJLפDPYzV/o &/W]s%sc2qo+9oDCc.nG5pE[Nv W rT Z&ne͹%'!\|E M͓2G3M~jO8Ce;FUL?*jw}%;4iȯ=x #UB'][!CI"wS,VHgѓt/^"Wq9êrm8<.x% }9cwI+I 6AdW=`; `~6ILZsooe)/TEhIJ*rxoW-󽽖XWNoP90 ^C <(f?ˢkW&y TFi鏧E7j^#.EBl9`71hmXNq녧ÕBo5Œ.YzB\jtX&v@qYY Jid+{q#5n *a#\;ŋYf'8[uۀSlM gCWAZ1/oN) +PEP>`#lB7єHEkU#){, %8Ri6K@_DJ,0_jSuXX;AJKo-sqyB$}L_j-mnW~P7ȕ})i;oڱvR9ihdqۆ|= #5Ҝ_up+4BMy ҇*k֢. /v7RA+^ ݁%^OgBk[j̑FFSfʃt{cvqX~Ϊ܏OHI_YQeLP}Sseu78rmhΥ?5t_7K6b$ 3 ɏ֊縇CnZ2wA#2;w ."+KFĐiqxl_8աcXg%X qǑ>p*El&3} ҿ|+rg9\f2\?5s]C^&tAyg[e-JzOV(yr[1 eŞ,NWcC [kAt,s\ [oh4 MH&H(@.-&ǨoD}pb "0dW?}?QAF߶jZE*޽%ͼNrQ򵚙 %\յT`GN6}*ӭ4x)5ˇy1CJH,%ǫcЏ lOkЇbۘ>2qzb^".45꟡W/cm1nZ1z"n w)̓GPQ´ixlѻ+ hK)Z }4 o$ʾB{c~3R_/̶U9h{-эZi:@z+HO_t d/DዻGǜtMwlWR.1 Jj:P w3c? *r6O/4Q'g] Rdzà FzɛDMpLR1ޓ$Iy\#py,(|鹊%v״p|;zQ գHOGv x;B:;k?E Z/d7rc>.'g2vLnpd~EsTY+p9Ds Cemx"ausIk-&p' ^Hef`[u9D#]H -,=MRM+j+!;.rBXTڿze[)zn~/YHFƝh!j"E#G@#G0n^rjG n 4cJЏjÔ`PdwLJH3N8'A/_A| LIp&q ب.U*縰#yЎ)'Է Ƶ];ZΎ<ܹ #dƥ<pUc)bos?H{Oref񇬫70>pǰ5yVSl+Jdz@|@ rUَ(`iUxl|4^ Iߡk=o6cueDTnt]1GXl7gpPj 686h|dbǪ 0WI ,Gp u![o.f. inʿ uyoj=)~k~h8au3JQ]qd eAcXp O>#$ؠ\)gF; >%hs4NSKʛ='abh.ͭL+]/|PwBo+vxSK:0z~{QQ iPۄ}pһ V2c[(XWt[ 4=S{.>Z\Oxݎ< yc0X!T3yQE_du}7V vwԼkthQy.>]xIԳS!5ne@Qj!Ro{[}Eݱ\OV9-;)FDFPn8Fy-L@{gnk5}J-;@JUXִY?ܒvM1lH1vjCJY8&saq/z҂xnl=c4=IOwYZ⏻0Et*ٙ.^)͔c]&u"ZBvծδKxWOm,@+_t<)Žn4-mA(ښ˸`N s42O2"ADѵV.=NW跍# ]8h^E𘑻ߨ9V:JED襌 ǧDk=TCIr_49QWm8Optlτ5X.MM$fH E+>Ҕ^g{g%K.I=ƛ0 -rN)DEu&N8 n:n.;41_GX44o2Ȥ>cta u.Qu).~E(>7?S@d'jxJU?Z澔F{=ջ/My8z#bz3zƊ#^莢ݰªLC1]OH{x,[exħޏ~fdJ폄 ʚUt(-oޯsuS%Yfw>NfkW]8Bagx !k=^W]l/.X=6%7x`qO+rBIjM$1)WNWy6XfJ2~LԹWۻH"FPq lVm9򧚘@ @W6\~ٍ+GA-+'*\U7|ej\1C#p?vu'!ԤtH8S`Am&' ^^hEBy^Hm4uBqĐ EJnͺ0sH\_EIIzđ$ #8:}:uDG3MH)O>~G4}x{\SM gԒ 3 {e3|? Y b,~0///s/@w1-yﷲGYcFsZy`,댗RPt`i 7=Όfܸ4T'om} DgR$w3t3%ωiIspM[QnO j uIhp d^蜨ϻ3?âXu:Q}&3g b+/+W9PsH1WK|VG&Z}S ~u>aCT<@-㜫Ex[e8F+qQPvgp]w΁%? ku59Y7AL4WW_qK$$˃_p C _w42}/~ :gA%OcWCࣦYb bXt´/drQ%eN7R݉q gReg=T˱ |;&HPE,`Z+x=2b`#|-?r,idGjpF>0>":&LXe)\[U%5V8L7N{i j )9|V|h<٩l D`dUR^_.B<? z;zN*Uy W\ʂk?ش[c~=dJSk̓WP IѦg*(փ&/ݴA[X :Lt˵;|1a:Zw[Du_|U7Jݯ$c؏<ɝ(pouŹNϱ5,xqi^xaSJ?6c_J)x(n/ˬLBfznATb,B})㷜X\60GGYemnqr2S%yobx_Y7/:^l|@?kDr4':Mdjbpݜ7ޕ$KV[\Հ/^SD}V{Jg8e w#s6ժ*Oh8San3Z {%B,3qfCЋ`,'lNU8qJtpWcٳȻSVR-ka^tߔS\}+õ%AV(-Kgsɱ)Nt%T9ڬ\=-&2 {\ӭ2󛴴M[P_4e\VxDPvp+o 5 GK`EťXmqR[.y.kQ_zr[fof3wI8)A?սVJZup''j˕ՏBYƯ{ZI (#-Fi;1ZTȺM ٲmYx҃WFYy:`oD@u>@]r^בϟ<'^:IZk&E4J _aC!,aNAw$84OP40^=HY&U}:yc*iͳ{fyt5R0B3' ]VY/pE/IlDA`nx_t2 ,̙I-\?jsG+ͩCvWM2:DS,^(`HΩw6N.5r8CHLp?IlDs@*zA1UͥTYR‹&Aë<(:_HG;O6ȗSlGeu_-~ +v%Z9jG~"'55tpGAlmXG\Y;}pJBfjז4%o3rp1|N|f/BR:CcW.ڂD^BB`,&Ir2uP\*HW ]XP޼op}>z?f^΢aTs{vY>|L!QG$%O_&oFjcYIkEI\qBN#~Ѡs%1kb臕qZCb8r:P21B9ꡐu]O&9o VP"@,y ,1st8:e5VM@LCDf%GC߼L%"ڌ2KQ 2 FtHJy(k3ŕ7qM8u϶LۆD އq1Z! o~ c`Kg~! [">e?* YmFڤV2/# 1|:g6NOFAo?^ѲCZqC @Cvb׬bVApo#~<&11PRjUAhgtb6۱}w hFQhM2XX ģg͋E<_~Y%V.¥;S.3a1j¥ 8-{" w #s$x[T4bjX}snA"7+5qS\ejJI$S n֡{\PH2_N\Qkw4w%т-P4 UWT 9^>÷2ӟGuM.'Xe=so2 n>o&V`eU'B[!OvRniO&/4DUkUAϚͿKL^QS;o-r+kG ӹAk:q/!-JR Cv]fUnA{̍Ze;WX)5PhDYDIn1lt'H 1ïRDĴP ˨}_xJ)za_6>֪ka,I^gXELaAw43)_@Kq>|Q)nH'4] ];팭aU^cA ^XTMAͼD0'\wGAxPGװn=xcs*/ 7`ba &LcO\3~51]THql?9,ϥAd p~7WT";m۫GZݨt%/UΉ"r Yz ђ50U쳉У:p^~<ॎsy6^n`ѳjpv*8f~JGp!wx`^<#c=8R}dMD`WK·Mt`@lWQF-qF1&C6 l^<H|B7`lqbW3YV(s1CTf1+NJq{"#&&phῐ9dCKGߵHζ'T8O5K*<⼦|DU]uED(Y ɰ(ot_E F{S`p]J5M CW \mqX^▸;Iؼ0*XP{{N=/s\AA ]] < 3XiETw~n70L ö{l]^%,=erds2O~u>0޾|*0"PЬ rN6eXE!8H1$ѲOsY=D~V?g1,ZB2H߈]"#јJ/HX"-Ux}<_éJōzT)Z{C2;YW!>l$tu l+MQ !A#A$lVDvJ@5i ¨842⬚Sbo5߫/8Y}g놁C*EotYɸR ETU+w1~cƔJg *D0MQ.Ǡ?Gqf ),(bϥ-hWM^ ^" 1yV4Yr0^( .4Qp~YzQ3k7uW}]@)C(cWD R,89O†!la,m@mR_Ym9JrTVSQxdp4a `l4YaK`r}Ub[eh%=y|-Oڪ|m^HU>D%I3YWg@*Y!b^ˢt,`lX'9L;[T%6lH ((gEA-'ki&Q<h1߯4 y w\vYϥ08R\7Q^ ]9eԤ)86 Wn4i`kS[9YX)|Hb@);f@[6MdF#4cCgB'9Z¬ZgZ yioh$mZNT~Bޠ\ƵI5 qn缎14@]w} lRi17ByBbF-H^ix[o`ۤRxY&@9IbkV~{֛$*"GESm4RqXpէ IӪ e+矦?F }$L!1N4g CXlZT/&)DG/|PcisJ6$q2.ۍLҤ9"D):KZ8E_ -lOJiCϗI܌ee bEsY߁߉K3KKX~ĝ@<879mhg{ M0a ءQ@!bp%WDB )gjjCnޙ5~02K>o8BgYw9#`_ETX ` ؓgz>gۻtFB\YV4*v\%$*(,lSk4WVRMxP@-SOF'y(.,rTk4 h2ͳۈa9 K!7]U ˟vp"+Fod 94-з?Ӿy꾩0k<-tP r4xre-?\ԃQm~(b/tRIWv*[={"Ӱ_JCAQf8x*GZO.,rqLXV3dO뷫q KW453~C CЎMe 1=O^IMq ҿ4y"Zaƅ`n KhOeUMMmGO╣6,?g$AV(xL-ȯ'Aa.LdanV<&g^$ZJbB%D<]|]eL5"n}OŸ+ 5{/V:6S8[(Vmi!!Ddb}avQ3['gqg|a{gW$uyF/qR@'b៯4ζ>jFt|5 hR°h9#n93|6C eFyyEa\7uěg 갴Go%!w$4ߍ@1G.C ےCck>&qr r(>\INm?9 ʚ;+,=VD!"-σ˾K %V^,rH[4T=!xק\Ǫ:aY/5?tN]! N@ }<͢Ɠ?IZ8>=<W taػ`8/g\eV} F?YNj̀LtnI25З[J;ɺݵ~&WL.Hx-&_pOqoq]uޖ֣Uĩq$2an[j,>)HEf暌9Cё)+,P~m<"%Ɏ(5sXA!lHYJNq́{]<1 "l=ȚE(,f`L@'au}*1WX0Vvu93iYP_ \;=~Nlp l[LTDOArpFJ{g,FYA0wv,f0~? że 0)ÛO(;s30h]2j@ B>kТp6/ޫ A)%p jn@c|{3WCp-(؄e WU";<# >Jk5z:ЁK/LUŃPQsM*܁:Ƕ0Z4ÐP25cLcyA%i| (GOHF.vKot.6(h)E=DR}4t ΀)OY9}cFTA]qs\e`ͥ 7*|Hp)W݀,rhFIrVؠ"rF[yov} gmK6U]A*&rk| y7pK Y|0$yPUAc7=pZlLiIUN S`$ϑsUH8̣צh\D9c%8bń+}29b>h$9)ל&iMڗjc =gwE2wݚ⅏tMAEQެۘa Ti5(Ĕy_C9d-R!jڞ1{P͘>`` u~^g !_tKJT 1ּ"i)V?8!]ϮXˌz/{U8q*v#&Y,aIS}MA=ڄ9BKjjA'0TOYJ.-tK!i[dBZ3oy 4 kP5IXoTԊGݵ3!tU7̅ -,s,}F-U ocm>;"4 \)nAa{Tۀ4.lsZ}<5ƛVO #IbR>}(ƺVMikӺdL-?O 6ib#^E*Zxgv-z7(xDĂxcȥT;d5)\oI ] }>\z\ZZ-rj VdYt)jpb-%g]_-}}nLJ  :VRYz^7G۫)Hڝ%D{ʰRQ@"&8 U:/l*F:ZW^UZ: dUQ}h~ΥUw*26t8mfqov,Q}T#P.Sִ3[P$,<ɸ^yܲ"R%eUM:$/DL,JIH(;V.MT Eۧ8X:xP0gaf۝Ӈe\K]46 k6,q;ʞxCT7ZMlYu ܥQsrs@wj4;vͤp `MlLOQgJ*5+aѩKS*S껙x_]RO7Ԙ 7(1ΰЇD⋆PPҤioy"S&)&1,MG O"3b+dve_B*Gp)y/J0ٱ ټW G>'00 0W`erp\ɹBSjVkv%ưAL %` +=^=1& Ѥ'uЙ1'Ԍ`4\@,/&S‹8kn?nv`-84l#~1hf _~0gԒ<gKMҵd%",CoZD7TLSY~ ґINhڀԃKqz:a8FjL*FyɊGAi2wpAJ$E!ab{Jh!ޙ̹]SzNDbJh(Y0$wij?nKtlQ,=XN|fܵ,yj c-^PD)G3vjW6G"*6ߌyQץ Ù*3 >dB#]NSnW&c)&c E[cY?/kJ9^zm ov^_Wtېt[qJ?(Y VCxE5#)״N`*3ם⪣tY'. >5%)(lԠNu[DnGl:FoɃ,Ab':]?Sɋ FQ.qS݁m]9`_o8DPݯQ޸WAe q8bA#V-_՘J;Q a#=7X/8N采7 +IRZԹ5p\8W& .]JӇfR tҁ] pzR-Y% BuyNtj )6)-6L`2ۂ Gfh FW2mU=PPޖ xhNyC|-Ź!?0G>-ר2 !m(aFNcJ&NtYpl-ArU[;ih8Zp|rǜoǰHЙT:iW4zǽŽk .Yo?~06('mKy(Lm/ty3ك`^0=]Vz,Tu62|kIl Y 978fGAIຎCHz&s8 \Й.+M)G?8+e W}'Fd殙k/qg[fY~v 6S3.3z]3 >}`#Y]·>Oݭñ $5<59y",r@ A <ijElLJGa|%S=3maQAsbs2߽){ XU%p+SEDF{!Oe,Bt1E.vsfl5x6] d`-pC <\{XWyDOה3,0y59&ͲآnwΈ/![W^gR@Abzlq,4 #-܁f/XǕŘ ҇\gD+$DohU~(qq/a5 VX9`B2:mцUab i=뻎&Vnޯhcs,H`s*;QXf^4 5ZK褞nTfjP` G?+{s.X:N/$nI 0!Ͱ\O㜈sKBq[Ac! h:JSI1z6I%0>kuzlBk*ۍu'iiEPQido21>t:ۄXip^4+Mwr^Rߛ뿣j'֑.2$]зwEොb>V=7gЬ !X# GpǓW òV.f 255- u"ÿS{&1cT0f2oq1,Z9ġ=zD –Ō\ߡܧ4_WL-ÇעkY{}d 㑸E,I9OQ~OC]@a:R36%TqUX D4%G+F.mV(}׽-|'2 f?ow"_1"2~KH1^#A]T9M/{5ow.o;(%L"d=9'#[Y~г Q)V`i) kH':3z/QhZR}IA>˕=ˇlG]÷Emh_&eϦPXvTD8r;f|}sL-A94Cqo?^(ɮ^V;6#?! A^L򊛹}1MmؼVao]:c<˩& u 4ny ľ(=١%ʹFʬjpcH vƻaOt9`F"{!,I`ϛ$ brm/ӡ$`K8jTx,MH3+da8Jw@UITA;a:Hv*\#>+bǔ.!rF^d#au*[8;ı91@+?H,XHZ zP`UoOΫ,d 40Y%=8H:uSX<69!$i#3Ѹ&Ll~8;|Y@fWVXpfG󳵗.?wcܻY  {KEήXWUNE8? d5|L { 3AK'4.#doy"QFaMI n-`~zմ1."Qco; ts)$n>+T8~5vn~/MgA( tduͲ)A=C >e?4zF_ tNY=c5,DgE{Gfy[^;8l& yڎCBZ$ʃۨD@o6ÈT^P0-1` Oa [6Ob!:?y]5}{6wT.j-X/ Rߍ :+I> %y_9r^X*^p1IjOGwCkη 7/1x'Q$GD(nNAYjʼnbvTɷVMlj1 t)47DxHʘKmLql]V]1QfO]ex0΄6lj&!j 76иO5:r7 9IeM;Üd"tjPnA^`HYQeX@͐&* ;>+ϪU3UJIG/+i]#/! O8_TR"fk"GW'?ߓ7D|ez#YI vMF+WdYD aVf"-]*/T );6~jn7K`N15&>3!9kF*.3VxթGJTa<W |sl= Nʆަ+`= TF"4()DAsz3ŚMTf{W8fRbVERxgMk"yv5yeE]$@qyM',1fip򝔤a@c>]PAe|Nt (fsƿI>gH^$>+Tܝ$T35'=yzf601AuPr &fzml :2P}f뼪G`4V mжH:!&(ZRJ並GX, 0Ren-E+U,VÄdӺrBc2{&izg=El0Djro SrXã\$~axE2h8}Xә Ѳ󋥴pz-@N`ᎏf5Fn9?Pb9 oZX%5ҁ~n6,jYÙAыAcMZJ5Fe@2`̱DW=D0e`}J7>CxƻPR6ՔRU:c`(T?dhp8ćfW9:<ߖ}wϏ&}^!PɹM(Ԃ6n1$BsR޶kdhJd Nthޝ0DҥaK r"Cb ^zݐ!FNg? Nqvi|Ͽ=@Rquq _<2>, reGzש55T)!KՓ3  .½Օ1JAl$^Ho$[SU;-đ-F?gY LiWw}݁8#f\e k|d{8r7L=Mf~S4hE 5ZрS}PG`0/#1_r N17, kk-;/4/SeD^QMns+)bNd/lyPk3V[9" hԪO'/{>K.-aYW 'ElAw.kubځR*(.a{T8Șz5uh6aUZ4S.[-)e$%6o{" _9`h}~9'ƼW)XYu_.M?Bؽ%9T0IHR?ĢOˤ%Cu}gڼ _5?%݁Z9/?d(78%xJJ"<)'f/\Z"dq2:);8E`M.Cή0`v -x8<~7*6 "5? z*,Jc+K%W٦A3+53Qf|ZM( Ƚ\=`\RJnYMgJYiώMMpF>?V讥W64T6=Ac=jf4;ѰF-Mn(5mZ 4FڎVAဃ gZ|mrPTV0;f&UdC* 2NH*Q #*CEPh>6,=:ȇylY̨}scW'T!zUbɴͧvkeb3DR~^SW@]`#;(`6 㽀"$n2 @z*i#ŔM}GEJn+əG`Rx|Re'D{qG}~RoxQ[]#ij4 42u3N-E}fa^Y}RLE ѯFB_TBo$:)G gFPˡ J׬^; lS=VROgmӳoU@DR}!Q"Ē2iɭ>&ge'l.-o'VGUv2W];%owC]ۿ̅VJX>͢Yn㭸0j%};]Znk1@j (HC͵ZհΚ9ej{9I2 Sy>ky5L5ֽ 1F7>h<.7$YP12Ln o*ܶCO*d?1Y/qp ֍ttoXm 'Fbnt( %t4 Q mM ipM*uTXvs! U=m{LjDbY] VX zu2xiw 3ov`tlِ- :++@l],8M㴯l2kC (q=2 ۡ_xcR/-/O2 +vJ}ܜ}&E# K7ÛP5t1 KV莟y'ƛiI2LtanQ.ɡ@)rO;G*9_W&)SК~XU PLp~}e#Y3=23tq)[$h[XgU6_-7,xU-&7t *UkA҂T9Of O2vOGuzB$ =Ϸasu\*pmneWVtGy%3Ѕ*ڜSD4 Nt/ A+\[F % ?>$§-B +CD EHTX"?b-co)F[P f[qKixλ+- ܱ풙Թ# b3=ل;vsVfN07Pk٧+'j&B+'Ѫy8ŋ 7A3L1I?!׬@j uXkTiL\@YHQ8]S—V]+lCY MkWyDH6cՕ]9$]TQ0|7e32 ඲(j즩?$JsSWffWdlk+gK_F0Vg*rTmRKAi=עBJ(6oTǧR1ztyXS^{Jwk':ù|ZXǧDF,]{E~8 H lT6/?Nd*}+W>wZf'ȲYCr);]ٗČ>rP1_FgbkEGMYfǃnz+aW ?'"}xK\O(I?3kPڗS\ EQ&9I{`(ap|0V9UxaCm~LmA!>X>_KR,m Ю4 R&PNUi']wcR^援#x&uF J[j'Qk6\jzٚ5!-AuP&!F^v_ &fI=Mϲ3Ȅ UrmJ(b?Bthz=s'¯Wv\L85 )o,''`i%IV){{R؇nz\3&. ?yBD*v<>P 6_A5t*"pRMM~4i"a7'|,E0Za o1Ok.d9 5i|j*,I< ПI17`>)\x+]bUQ3g-fy*"Q'4ޝr?/}4nʉJ_n{Jxi?W 'K 9fƢq oMN;n-tgO*R;v|sK5CD8 6ZC B#NǚcONЀ}ZN";l?[ɾ ۬TvQe-Ve-C@LxTM~T"\R^?o_E#S,K o.d 5X6]rlRd:%*rּ@Bj0O @ Y}.ѾG0F'P`<{;WȠ;(s&WiWyãI!;q7궒ߒM>ᝎX/7)FW: awWPYyqEҔ)qqG&MF3OBLT\`J)S|eC64E5^{mPXlN]f; ݟJ9\$!C[Y;ԑs1.1G*IlEۋs\BÊ@Ѩݫi$|LV(0ޢރZ_n?IN LT7!<\`R80 {Dy92T`= 9-aWkl6߄{n tGۢ)zfIeeͬϠ{OVz{p9fúig,;9dpП4 :o(ʼ%K.n $v_A cEIN[+G#8ubʜăē(BjBޱFagQdu1ME)1FV)+ݞWۀ 悄s"Z(JQ2'ɓ=c{Њ$!C e ]q&؟đ(ZR 7Ǹ &}ӓ.l; )ς<ϫep? ~Lm]"C]fkVrY$t 6 VnfqiZ^Y{cOȞ?'X1\@ Ltxvny ǜŜ>Z8/ NQ!$j߸P1Kejɡ}FⲑY܇j)"p|Kln~ z[>0P~ ۶ojisbua:ϸnb ՈR7z wG ]jKPG oϋXZ,$]h N$W%Acv5-W'ǹq{=scjf49DF@6C:|sd;⿍' b>6|GR "6`G9`ŕG O}#ΒzG2 -k )K("wX]ǓV?Lf[:.0k8r$akѾqlRA%bow<ҧH2ǹ+O}6UXgD4S$ '2Q{v` ,ZD2|&BA1^Pg]uWW6>(v]lѵsR?gS 9V`!Cs/E{$CCW"}Ӄ MM&dTS Y8Mb`KTD8aV2>ȡ[jOXXTOI/vV8 3\ݟȷd5&F%k%H.Iqʺn{1- &P/СvyX?!AmBv=LzsQXT k03y6krMc2Lb@&c|^N[ TgBS/7&7 (# {( `8ҊHfD@Gv]ixיdꞠ^7¿w軑`nmX، (K[bQ %U fbq`#bVKOA<0;`pgD؅BZ4wg.sl#{[^W!`$jP!?dʛGI8ѓX^$?d+B/[Nϝ:0O[p GRe`0J ] Pz+_Pr߫l~ߗr*$']2"#uIN+tUDHmH$Oى/JTJVZ֡GE;[]5oUkSɜ޲Yy-.1&+^-)a*]Fty &x/T1*{:ݧ +ڔ 3W~DG'2%£A1J+憻@RݴKԢ \Pr7D#=MRY:?ۑԯIzVW XesbNŒKa PF_AqES|7^-,x F=Yƣsbq %.r$=HT=$)Aqޛ [)?{V'c`@NcGqG'_uF':1N}nti6^}d%ۯHєf1 ہQ! ߈"V?NcIӥS6u-S m:i$t@s2mC }&+6 R']_I.K":,{pa)hV 㵝 XJ:b 1Y3&W}XH vm519xh\؎3tX 9Je@1 tŽ_/{I'{m Ow/1&!KH \~_]%Yr'ZpI׫dѤ;s/׫QoHp~>|GWԅHN^~.! Ij+qY)~ïX`7W'i<'(o*tmaW p߰c=vX[ 1]AШw۔T{,(Iuxo8#!V~C>X( ctBV[̴͏ή 챓PwPRu,rŠ0>F(J6hYŎ0~K7ɸ1%} 8,ߴHh26 q[sVZჿ,L7޶챤yR g Ho%r`$ pew%7X'|^Tp9$۩"SuU50nqF.NAQsJ~=U(k!OD;uA*D'xI;=mzb1 7>3 lzqnق2=]\uah!ߘ DBIz}Kuku*AS47AVm_@t>52Cn?vxnrKdLp'N+!H.kSsX]d,.KF&>?c{_y-Ų('dZϪ[чԶ]m[ 䬲[,p?u-">0םLgTO֤mK> ⨺n^SmFj{!i%uNTQGBAw!ԅ"[p5gf`W/π}Z<~9yNw h:2>\344K4ϨXvl Wr4vGϭ @RddtQC#D?r]{& D&Xi]Ïiu|DQBuv {zl uE8mq(&eT_70K4я[3(ز]"rUݹv* &ǽB c 5%WO$qKSz|jly8Դ2|Inװ,J15°t$$A *YidCT yiB |kfC+B:[ͯ`>w4 3ܖ+\n((zwT2ջivKbxfk O x6v/ Р߼@Wש K곭IFb\U3II׹CPvUk6iMccƺɘ˺L.]^i\L܈Y l#:A?H69 .pF,8xVjURy4H\mq^c=WmZY4 JϋrY ZDHsc/^ ʙ>UB7F<*md<c3 H]NHtMLg.Avbӟ%EyiE_z|yk~,Ikg*z2i% .2ֱf )k,E`K e~Z4Ms؉x6eв`k鍙C?EH+3`(CK }j|= NEbM9>]d8 : S*D( /:̜DEl] ~4g0,U\%'?4J~`'Ɍ@Qf$fQ<%#LGM MʾMmQdhPǪWlΈYN3t6ǫSy"6y{m*4$,)C/ 0qI~@Ur&ReVu:^0ruI95[n{%L(W[Wr2!i-E~]6UiF! ŭ~Y[Ep#( +~4=5$[zBfI7DI(Xas0|VfND8VQq Ђ"kE 0GoIXHNWE=b{zklȲUΡg}?_wωF0 E9@͏0^M3 %nwNaXy;Dd6lDfk HA#Lv⥶L1od% C2cd̯Jt5W2CnHWmSWmS֐c|GJ)To kEů}٭CX; ]4e!xtV4^a%A.\D#-8X9D&/dqlf4s2ԹCIb) 6Xgq}H+j(l .y||!G$5-Z>P71'?e*u79FݔܱPP ,h]˵J Qp? f y2XɶHd>ȋY.sLM7 Cf`G̠;ZڒNp8.^ض"<'Zٙ\ u3d,UJmD7m>/ҁ^UH! f}B7[ɧxE8fF)I #~YyQۆ3utP8-^M-xX:1.LkIR+f1 (f3s?osTD-&"SgpeB햒%VkCҏɻ$MKDՋ?So')gSI-7 T!;">i]4)SyW[τn2w1$Ts>BTxvċ֧Iiy1ю5e5m.#L Jwp(nH  ₟xc"8gEޖL!X5z*E %l6sss]Y(qgz9(UT}s|?:u|2AqhHBL%sv#^N0G?Dy6HEy)W w*qS܃]Pi/lt)]3Z[/^78>#So\4/k*K V&.]88%fհ-,00KaHP\6XNBV%rj:{a4i苃5l ͚1'za6ܟ}8*`;\J)4*oxőF8 ݄ V'e%b`N5Y_Dj| *98k'^pYK]:o]PQWzY/n4OktyZu2pU@X23RoL 3ōemcr)#S' "O fa`j  983A=2O':~ٰa9Omպ`u2~RxCnT< +؎۫ J#4tI>mj4')|D'#G-[6\8ѯj?}7Ǧ8+ gŷcoS#AlqE{RF=f4%7Za%[i$ֹyKc"B 3bIWblns6ޗYbjXPh b{2H@y2aRD,M* W|ya?Kawļ;U~7NZ) ҕS0!xx֪ 9:=Us > G yq`KPڿd 8t*HY\OZ+ց΀=*=VVmM+Gk^!Knd:uu6,GqY z=0&u'0f%ȋX :;F^jkMYϻ&t\4{MeI =/0oWB)ɿ=m=V .UɏkzDߧOlx{Qm|}pZii# e)XuOlMET¸ 0ԇ*nȇ`h/y^D_Fv}6,~>rE927Ђu*$k̾lث@PӦhނ![jl~5;!@(|IGS ŪBwPu#ABRo͹CZ{Jl'{r}g&+X@< Cnw)_yXmy5W6bۯIL2rdw #KG:LKOyhL]όn0[O|*#ocR_?,UO`F?ƖxXM󇬤̼. 2  }8z ع7UW;9hmhklM"-P` fQ8K/hU.ޙ6;=L# [ZoQ$y$ =Ŋt?:f%}#`M3&EͤZ,|N=|Y&-Jsnl& JHl(h0h*"13OGӣc$FUHAY#fN=znʳWU01G&K=FisHߵî,A`2n *]}g Z(0kWOnn`B$L<zp]u `>B,yz$ruT ‘t#"A{Kuf>i*Rf.# J/F.gW{IX Ǵ.8*QAZW'Tț،̈bI!wb[M(iqA\)h9\B-"sW'o=D7cB-} ɗ.*|^BREE$:c CMDPY(TE+Uy Z XжkY#VX ɓ[e}l De.dk-U#ԆSa@9݆ݔ] *|$.:dHv!VEc*̹ie,ZNqw}O$϶d@śj.M&Èsc .BfxQA G]O3u/7ʖǕjq$|BjP~ m\銞cI U+Z{}$. $HMY$L&GHȪ,1U6ӽ9l`(A-F\HYEDlv9!Qؕ`ߋ_J]\}Uon]]~"h~)ApS|G'Z^=j5~r"YS~Z. '֝~2\å)e͓=`[Uv$IJMBM%{d~: !iWУMk޿bdg{f胘Ew䐨7u[F0\OVZ´-U֧[e Y`:Lìug}qA#؅GJvAb8}?9fl(+|}-Q-'b7bxA]qs MȎ~R[ 0,nU,vĀ㨧HD"m>ƛr}^T2ͅ\RV嚑4Sh3h/8lvͿ Es+kOLh.Oi[ p1G/v(c+_ˬEc~?Y]Xm;RliʯgH׈znEcK$-g$^.W X_V +tS#n5~":'{8U ނ[8yQh(zi 5X⌤DCZnࡆQ·גiK 4Fr@_ͫs#KՍiNz>C%)HsNkC F*ow3~nNH1Abɪ|lb>uڄ RA$!|iV 5FB",ZC 3l=azckU\4d?6q:|ps:((i( @GuJ_GI SVYEVv"盆$]`f.YP rv~"%]F7 tE`n>-"% 0x^:>*ȕ}!#㙔lA^'m!Wqtm9Pϵ n3=wR |X}j +&tyO0TΐczEޠQ OSF0h؞Tx}9%Ū?k50xf:ӄFҕq-GRvL$HPD~ bBܳ V`[ ʟt ]? xmf% jJi= F=-CmyHgh_+V+XXCY#n]:6O:p}= ^x$S* —=DR?&;wEDr7o?%`PkjSE909Ƞ^$uyJ9|]L/@:/p҂^$6)V5L@oUCӢ3\>ǪSU#!J1[9S.F}{#0 ˩2Y\E``궨sXf{R`$-EW[tQIm{:]>.y_ $rWx$W?[zif"Xyj"CC=Fu{88apނNuRYwPIH߬btnG|@=SBF!H!D+OYp?O/f2x@ɜKv? ݜ\yiVq@X|钡.d3*k 8|fn5MΖ h_WtO Q=DL>$q ?1&3 bV]˅ΖE$XWɶ 1^&MsbTxiBZVgњq;C_T aΧK7g붢,Ȧh.QЪkfҔWcDp,z óס$-]~ $B{+;^wXbo?!R\fn.\bpv~%+P5"&ġ.[TOvxK#"ă'>TTf\H"ȔxV GZLPz^.uJmn-P偉GhIGzh[({`Q=$wX}u#[8?Cw0fW7.`2adP{V-!1?;CE+p :e2ahBu5g;ҭ xJ\H:_Eo{ӿYt,Q3\fLQPYP _LSA+qe#zFT=gN䖈XNMDަ̱Sdϳd6?KqAQ!FnKzw#V {;Ô5z g}H0*+ ɏFKM/DŅا@*df 'm^M=kGAc-iBr+^Pg\̂͹ {]s=#{|b/߬ZEL?̋+' I[aK bK语O:*¢ LAkvy',[~˓s3udSɿ<'ñ^'@\zjy Ydj# 5eKR 8`~jn /U4yƠ:n꺍"i-39*nSҿGv"xn|M9xzրkW}4z,džCXPa{!lCŷ?Snd~@rhIi{QBԆN[Qz[X 2sy@S7I|Niѡ]QACMYXciC$RV!AYE$} g<îoG^_!Qye%Q5R`T $DڶEUoZٍ)(Yh )KD,H HKZWoKEf+Jk kt:Txo[H@:^}} tw>y܄s(=de:&R )j9ogx'8~́oRbe" EW "rFG,⛇2o,>U@v́z"8H~G>p$8){J$ve@)R{ƎbcO%xwrB:9ѮҴwyi+db@i$Wi\5Z5"[.p"18»7ɽŪFc{ϙ@d6 Z8b>vePJ8oלQs z(OkWjAgt[F8op.afIUk^q?E/]go_Sނn}~C9"z2tM .33+PqO}|ф;[6\PCv>-kR$St=kM `MMVc|S&zQDSmU 3Qj YO~wj%7=@Q:.]餠l2gB[1xp >Y(ku0걸@=CG^`APcع;;/Nu`8(\Q4S-ss*LC%Vy#P7bѤ.k?+j9S6K+}[ rFϲz92Pp>-6 p;/NWH ቚ&'ek'qʱu,35kf^ HK ˁVůEÏ ƥ٬0Ȅ'OL)"D=Ff-NU$+2jؼ_񲋸БCΰ kegULz78.??tUG(\µ%P -L WZt|sTCM(Ǵ8]zEMe tlh[?>G؎z+)#s*cA|)4h 60J5mDl'e[~ <ޣ^)Rz{ }j57 D0EW'(c_6i7.ԧhσXjpݞ`{{YAa-&p7²:Y֤h6SibDn1JPjzSCMMScPo{4?yQ nan1K2 0AyvO^//Eez#7]Rާ Od:l& H(d')}*zW9`drx!+}DvQ^Rn٪;aG9R?P`HZݠ0Ne2FI)&̂teJ 컸oQ6i4czR`"ոQXԴ(pN ؟hzy7ߏL3J^ii*&e?1 lIJ5ej3A(*z\++T$5{G=9 O:j ZF~1? Kk>&{ehE^c0wr%3b%KJf'zL''W.: GF0 Y[;@ًdj`rլ{4,`zFo*tЇyc6昹lC7TcmA |&uŧ6h*;,hL^ O&_0HObQ.c w>$؛]B>]o-{qô%|J1ġpFa[)+Yg~}w2wH5&<žyD(P "DhɆ✉v_KVʬ.ARA53IgEPe=֏g$=+XW FN0½]%UWmyf !j#;J1VkX1"~S?иs`NNrW}b2YJk I|2Mzp"Rb z+vլKo]ԱUDݜفS/+%mcsᡓEG/T %w(հ렬:hAoYP| Z}CBЅW1a:7*/hab}{EQHW%_Xf@@<_4-\joՙ#|2"zR28|#F62N8YS-]ВWݤ/C_@b&FH<}g>*jMglpk-|hC6<)&ُ:zy.Km-@X4MjnccQJ~p(2DQ̢[O(4I_Vh_dux-Pw}́/M@DhG7}"sO1kh6ߢ*G:+Z')¼0qLnKvMXnҝb}6Mχ(ϸۥJ;˜kYwqܖQ:5a[NV lUɖhW# 4ڛ!vZ]lu)V֏Faߤq(c&;(T.yq_`\iBISAA|KH rO%>r)MUdpbaYzpq2\z+/gNZW;= ]}*%"hThgmN޳mVeC r*5z;i45ts 0=?ލ!a|hc'78K0|s`s",-^KAl|\`+bEeЬ)GV;vnH#4kT*m^cZ4mXM,3ʿߪ/5Ϫ5ҫDN%Fsc0ol,Xڊ!oF3/\ r(d4v q?vOCF R7 ~L3`2H2f8聕d OȌf̍&Vsڢ=K}~࿒X/_6o G'5*mD)83lL.g i \!V5O~)|~+;Tm?/0C-V^q + %1 HR=҅ؠlD5Zx[/c A#N{P )͝c{݅ZR?МvoH1#ulbNx>x,cy9.CȢkscZ9)MAcrg:` uF}W6;@_^1Ox@s9x+puoh=O<ۘ1gٺ+#!^"PV]W8GV $g һ]ʚs1J8"KA83ذUSE^_ ^f;ZAL@&#-l%69iiy[:GRR~j{=e1u7$HVE>DM?X5eb#UU?+# `|n@ nBP1χ#q,:'|>I/NݖLXw!/l_}UQ}{_{(UI38#3,Y sFo:IZWk m, 6isЯ - L`dvnwt7'O| &7$4=-o.=0Ey3=5U3VSUDz~r=LP>SFmPES([Zk,]Ns5uXĽe[>zi{= ݙ{q[ S'9!Oi(v}B5ٳ\.eQaw:CDj7.E@1lqbk.YB0Es'[L.~arQp6EjH@`XPd8ΛD#)Dt_eW. = E.7֖ =0 zX)+D[$?DC {RI2XI CqPz("N$.[Q3j E5Մy7CAmGINbߴAVfҸCz41@xk})uۣgk-x?Q8  F|Kt8ZSDQ^}*{_#>BUc&8RE@Ɣ&ڒ+}]CFy~q*wc#f?K`|=#ϋa/ Hߔ::k!JTq.L(\[GFwDy^"hnR'f~[C|hN$E빌TL }SF㶽iZ1?WI e^fĕ3cK tIIXg@w 7/hڿ}mrT10Og0pFY5IYHCa#l]D&C~Z OJH-Su-Ž@Tî'Rv?aPYBWܨD0.i=A{Lt5=(vP))ĹŲ: 'f5-GY3\S_LA7leˣ?ˆ*¯0sBb"yZ*`&˯d_.(r_pBEEbCRnE >5fpvf{wTcMu8J &h] A6fQm!km2pg#k['׊0sx=,rB3xUV}ۇs xهvCne|kgS=Jƚ- 'ho> C/#J4e2xлR+*MQ&vf0<Hť䟿0e(, i67>p蝼nf䞣wZ%X.GNM}RFX6uV[j $Egq_dA](v^3j^z^%lEe$p9WԔ-`*E_f`fwpNE%5s+YlI{f 6 #ԚAv!m:dd`(v{bqbҸYR'*â\Fۣ,aXK)BOSN>Jn9K t9G(t89J[(> za鶃| Юv^̂$,񭣧=rr j8(KEPү>,0a k5GyP~/}l=+e͘WƪLe{W{CFiD,QTw(2Sv26-2{nQGy d$F| I}sHAAu4!vΘ4M@(HL? ?(SFűIA~KW #1-'!w3QfھTvЈŜX˪q R :"{bnXB2/OFSK 5"Z/ܭTeThiޘS|bIo4[ roF,~Kx@B=ES2 ?+)9'x&sh[u-Lo,GZ FndƅTuu Y&9~f~.z ~R> `p*m'O zbKN~FAK{}㌼ kSQևh@XS- RE,?BnP`<|=rW ;J} Z9ܔbAM/X_+ZNk U(m p٧S~CsRk8uflh}sEْl5&>|dΓ'0FnTT]s*^qc0/cU󰿵7fX2hHz߻P|}+;p">}e)zTryuRuh/&YkwGgDFC3Hn>/œ C|CO N/s7978`K7'7M8#52rQlQd]ըS*ZlE w. oVzvH/=bV"/ r9 WMc+*KB9R5DBjˌ:@b0!MTu_z)}"rFBĒl&Eh$gTF؋R[ޞ֝`,{//u:/:G,E䀏EJs\@挴\do*mkeAZ͹R#2'r)ĵ 1Rg4tAQu\In<[= A`g%Yib\I`Hui9u.ɨu^ljE^ 6L77".ԏDp]j!W^M4*$i%7N[I9ϨeXላ#ps/ÁUyOpMꊦm1t^rf`1zP!Rc(–]Og嫺 @vΛ׵<\&<ɀoARv9zF97-t֭f'b=ރ2f<)N|%NfԲ#5d}[F#fKkP3(+Sv\i)k/Nۦ^3ʽ\gSHr oEͮn /|NnǴj6mn=k|-;9S#<$T;{LpbiH0H=iynlt?"8li$=p9矑+2Ơ7-Xw=rQdn-tz:*9hS(Sjs@m#pne1fEdq(ؑYAvH+-iU:3ԛ#b]"<#%|c7i;ez/&P] Wy樺'H(sU YP}/R\5J4$kĩPuqz07GdSb5!(/}nKlUd\fz(6:qav`BSyӶg+ C,H>mS|K6=j BG!y6_o$>Ŀ,88sv֥ Ȏ*gV*myP8T9r:7 y; NBv /u )KBDdm_ЁWKLh,u UT}NZmw%&K><2mzn7+,j! Lu쿫nD&C UH 3V'_gk.i>ZotCk zgґ= uo_ynE\<;.%!,ooOPl2 ޚ8)?r}< !SLɍ/X Nj6:oռO~mpW9jwd$jnd.Fu!# i Ꮶ1+W.*9 b2XI[WM-{LeSjw<:1|"Z 51n$W޾pŨTK-.t:ReG._P쨻dRó;1įes ґjJ/My?(FMdDE6:#eN5( e iInmh6DG.*g聋K BX>3!Yԣe3Zc0]]OQ;?C1}u)XXE챖YhE)z>(L4;DYbR-> Kji+sj'!crjC龖F͚eW$|>P"7@_%Ȋ% D=Q  kOD2' @2JYH@FNdvzeVN5Yxe"L0#)Hiw,yfJЉg[cN2z\R/!Yg @,75Iu@kϷQ\4j[vU;!N̝YS乃:.rr5Fżn d]cUkK/+i݂J<n17X֕¦a~A . b~yZ2ٚ]ⲨmjtN|y Sz)V;_vc-fҷY8Ɩ CE,q{>ِyrckסa-:ٓz[HDh;ld 1%b,)޲xFA?.h 8x&na4&4^a N˘k||#imS%;({I{=B%?e[6U:,A4{G҂`i8'x!_MMeY hnpyڻ!NN񹒬o&83=d1E;*85?Jpx@f BWe_V{6Ǧ:S)0&3kp(P t#XrK~Vfg_#!{$A3s7ʃ;U =xw< ˩| otLd7\c8>.ni8s45uWAejC]_ȯ ~ڧތ~D78)0PxSܵb Pb#ߊ}@PmQAcJ~9䥕-o 4ej1 >ne[w3[L9NbQ [g_W/q1A(o6Hem-oOtydlqԡȃi%J_ѣE1kchfCBR[# cI$0?(:#E\Ƞ ["a';n} \pϪ ;rḷZa7. s'ȧx`/*m_=ζ Y?%a&>,.jBm5N ŰWӯp>U\Hi23~. ߳؝_Ŧƍ{ȯu '>ל;l_^^ iN&p;˃o5&s*>}C'hwS\ '9:@#iUʛsMJO{B/8)zp?sX<e;k">$eسw ȼ!"SpB w/LJE(ATɊ\mBM~I a E|inVeeوKe*ofņ0? x筒j+%1.>xG"}l%%s{.F;,uuH|pi|>0UCcbVS)ݬU ԁ(Hf `^1=N'KJ&ujDJ8>ʄЍ T3$ `?N#p%G*grg;͘ )hnyb(iLC#4۱`{V^D AՔ&T\%?3oю'* ڗ$.r`3lq!t ֲ*gb(i- <,V ÂTG,oqf{VDL,YT=J ! : iΫ-ͼU.֋;=>N..s۬{I7H ^UdWuI.VTu\+w'#8r>3nFGƛ3@_̌20yފy#m zȌMou 6!M/`u&A0'6: PF74mG <#s 8@EUy<$(6t҇s˫|O-j]a7{*'NOWp\™7}~r߅GXKV>> "Q-6C</ FԿ8+8ŹY|`+:4-4Cxz?|n+!,IDH ylg?=s»#HuT*L7XPLPSoNL{?cpvhb㋬Bl}ʔ[_9G=k[Y8߆PU vR>5#NIn0A/% /q`|V1݉xYx@i"pWz[gg ήmñ)(A:Ր|5|h[qQ AQ4Vg>QxFfGcp8Pe`'CpKmσ/kp')u?gd/|o=MH< ʊL55 ,<؆ K/社lЦge}Ez@k ZQ&DQZY򟁋c!iOf5d+1  O~/>o,i`nefǦ3W!nNK9 Wk>-1=Ӄ|ր6m԰I~"6TEO4a Ƥlڇ$51rP9,-i9=D֦xeQd&b_2V`bƾpMzlQXѶ\%D|ޞdXq㹤z kj=巭Qiȡw5Zv1ק#:|T?^t? uB re_Kw"i{G)NOL e ^vȦզwtv?ӧ۰s*Jha7'>sNLZYIf)50@QH*)LwlA'kMK\=CK[їE#ٔ,l}tk@F}z>I6QG|WN&}AUѾ]-4q,]ljA: aTB3뜧aK*`3~(x?ٵ XzKf@,WokY@v/nBnH'vr?$ 6M9î ilE[zmR:4$*l{= wyx$DWBOë0?7fM7p7"69t0'2:<Ͽǔ;v ?Ч.N a洛D5C(=nl# ؠ͏6xʂ)jZB~ ="WJ՝d4h0x^g>RHu1\.j䮽jZe9gmk> ?zkxprIb3Ds̉C|獬KU><.]錹7QFe~.#[GaTh (Sl<88h/Hy FL-O$ʣl2G/c k L8c!uHZPOS#@Ҕ5dWOBW^wS2[vTiCDZv=ݾnI?\ԖEwOABcj84skS@.jF5#ӳt@˵k\fM7$1n ̕\StJ>tӎ*sCo' O3NDR3Ӛ|HPMOVje۱0cjR$} L b[ΨW71wVN\QS2OR_޳`gRr .|b[Ѓ* œykZY#ѬuJ+z2wA{㉎?9K˄Y'7#xCX[ǰgT7>xgw?0&ʯ;~M.fio1{㼪ogJn5VYRɣa7=c+%O+wiאLWTpKLDgon"SFTZW#e:s.q(}l߉ޠ@iT6 {9ɅyW-yEL9zTn+3Q{ /ZX2g ~M~|X*q^u׼d ^@粀 ܪΔv߼D +ǀ' ͘l_4o7u E3GG1wX9/f7wX3wo6{ԊxDbi} {6jTKQf縴ۧl(, a񾸴=`&bV =Mˈh,W_Ix~َה:P/20^T"V#XyunX s!h ;>Nѝƣ]p ЌjÊ9E3Biiȇ>kCTwR%~gCm>R.y]\-{sX,KnΣ6{,t@~S[*ϵ\+_l_xB'P&0։? Al*\`)IiŰ*@<0?.534E#ez>tu)KyX{˪/{AnҨ(iS 3Th!j`/jIYI -&7>ڳ38u-[E<>/>xuui \ܕ&K\ Nbrb!ȄGg7|Ȼ}6cYSEEp qzεyᙔ,l=>N`' weAUϲb28'BY%]lH²( ,~.2V[0gIƻcuw!\"uQ?7M>3ڠ-E;vE*[ #u7HDM$2;Ezؠ=6C/& QbFiK<Y4NPunKY*59Jpȏ2mf6 Y>浺eD"ȼI Mx4C} dۿ+H=:.'zUDl`[u51LJXܨ@#QQ5^?jO`OW&AaQ!>]H t}TlE~Fztl F.;k`Rֹ356br9:¢ƇP_mͮti)I\w z)8mɉM/8+a ƅ"iZSQ^x<=3So f/ozl?c'WS\uVǾcܘNk ns^URQb )GNCaȅ; 38Ab!(Ϋ!풖,=X('ɣ#,X̒ѧ@-+Qit,էMcAp'dt J OsBUa$I"I5bQɏX!/4*nZo̔rgu$o E<ӎj]v8 1V0fVp蔝H'Kb yb=˾+W*Ju\I8X1\ w)JYSJң &xA)d'٩]klY؆~a^anԜ)0Un6S;4<hnOpq3otK,o#<+"Y-sNeT moJQKJ|+㳖@Y\ҏ8iIx@k/5=+n .d+L@[1fyk!xoA䡎jîb< l./9+VlBk ?fP.Whá.G`vfV~7>X0kZ†Ý!71Am.}OvUչ"2m'¸N$9' R6ouo0$V9xJW_յAV`916J_5NjPFzh $|X> e Rud:ߖL55J=p޲i}ov*XV` gm44JOK&2ʽ7,_tbm9Q'2JdAni +CbeE%Wo: %Z_1(Vt+JuZ$lQA(;(7ySQF7PP&KAڽiuȍR% FǚYa\˵]쥵41̚wԩ PgH%^Y?9,jecqw-I375v[Kc D팴I"L4ߗ*CΥVyIO {yѕNM?Jo0h0q.&B zէV wS8h:l7T- 1c^'䌱=`~5徬@l-h efa#(:6T`' T}FK&/; Y>Ö·>v8R>{OM2B~^كظ㸨j36#%wu{! `%RjGGQHM*k o39' ?u`q7~Q]Cz(vj99+N(G$s"}o7V]nwt8*-~8[oy6BajpI28'N k0z)942Oqǝ+~|@l Ufy˟Ri%+p,'R(؝gP ڿbaMǭVW`O ũ.zSvv xCIタ]97aøIQ,lӖUf) Eu$s?E'u;5Ǥ9bcdƈVSE0*ƾk<ϑ )m[%ZxXqҊ!dZOX$VLlh*">OǂqJ]ʿI9~/Q2i?JwiXƇbT OV9>[IuF9dIRuARK~MPyTX}vW.z )q dBmFlA*Lqjǎ'%@ari.FkmY9oy羮;{??+i@yCLĨlVي[dq7@)+yYSllA {QXp}sGY+=݊,sTlM4wdq>?!ⱜ)Z;!@i@hd ?O% {U̪Qe\_ BZ  wU> fE _o~W \^Y]斩ƾ^f_!mlE]'Bo58HܺO?TC+f=;s tgnYq9%$@:7eFpM{ |e[aR/59?TYqU^V>BAZ~)d`֗_aW΀3mWzcX9B=%UU)ψ]u͓eQqQԮUJ#g& 26lw%F$-xB͊(~bk'49=Tla 1hߕ)/$"fY:4ڿ~(ܚ & wԏ)ȖjK[ RKYN7JkXeV's-d,&3"O!ָ uIPՂO[Z+ݒjapEnh 5Ò GY3&nQVu+JbthкH3~Y3"$y<@إ|wG8./^ax Ջ"FY6!7:Ϡ"@۫9wx@b/ǻ>1&F;D$m~Gs uk+3PV*Lb{fQX1+I"sy }aeF;z&>$jX :%rSGs\X(i0*ϟq8Z|^VCۖ !@v&7կnzfGihv1,~rWVԺ1NVW6Ki+VB7_ =_k 7^ŨJ@Q ^sT"SGcwy]yA53)ѥXUa\6IGP!#F} dv~&Af6L@NpW tu5`IN,M]YvᏭ诬$e&B C 0if7o-qg0=%<VhO:hnl͋-_Ajfz\Њcvخyw&6=nnb29RB,-;p&[P`lx*ra0+,>]Ue֯VĒ V݈ xE9uNjb=%hTRnKf)"(G_ h -3Qe(`Ie3h&Le0^ w_ЬR[--S rq=++4]f ݾ[L֍IJ6iG 8 |u4^Cb^JMKf_'{tOW1e$fX eH,b08gKeoi(-$wŒh} y:[lp<U:zs+Q7DNJc$1GQs-\"?|Ue5ӠH }j?LV ɗ-mc;q%h٫}v؈[U/=vtjI '€=VfF6ʗ@-TDnLTѪ;8x^F/Uep~DRfPTc2bu vv^^5D5$Vƶ\>+|ԥR0Z,p)h?vfye+P%_aAPVȖǬivkdyMC9hߗ"l5FZ dyT`FnˈQz0B2ު7TySb8Y\Eߜ 'a:}eN3u=:KFGb*HMIrLH M:=Ss8Af1w~\|FY[-U֊A™nc ļ4H3xK X݋*Uxi ׃$QP (a&-i4Py Kư2JSB38 ဒHì ̓&KF]&llvfۢp3JqH*Ҳ߶bj@X $N|jz ْhjU9U$(6 _Rpk׷@Nni:kz&g~{;j/`ژE+粼24NA z9_r Pz*6[D.M|N;@C>8 %!b!6pKqr)1h=$ڜ .2$9I}n:.n 4)@_o&] ~=iehx\Y4SR`U ZC4=BHs?M+bl1G9`-e@v>v 84PKw݆HuB"viS翥G/1p؆ics#J"61q:GSQ+ۇۅCEolPL9!Nv7'i1?kҜjxRX6pށ[GX<a/57B {@z̐R:Bzs8wO*(# +quL"5̂2j6qiHs:ݷ痳҃As8eS2v/Rqd}g~[XgE)EURȯ:Qglz!b{Nn,)\ٞ3yP&' ㍒A8L8%~C#*0JUI5#d.>gn#@TuMЀ??($bl OB~K=f,"+\%`< wgT~HA# VUN]]L8+L 1mt<!<$ 0upYڇ !@AZ/X\ 'lA~ 8~NN !8xITf W\e:-W+ F/n}e!ImH3h94L2_ظ/ 8nPBOE+?y%צn/t܍QB< #y fcEmYڜ+'AP;Y>AoUUa/U Z4I:P7umJt%;- `6̚FlIDp!\bWB8|@?6/U2" yXCi6ܡ}WM*vo pھ=RAD\s֤a^0N!a CN^'0UTteAO+8J1lIT{My3`ߙ(62_fݢPA=uVN ޅVM@;@IZΕZ-鲔@,ݤ/цZTU~;ҿ(Y&6@SME4r^Hg@zlj4!jVvyz2\J\YM0vE~JC̮]SrD!ޓ& ͡02‚tO `Kr~q߻$s̔.I1 a͇zYfT(8X 5 ˶nل }qz5kAYZvP㉛N#.gS=XڅI# AO01BH;[7x:x\"Wda 첧*RzC%dJu5&C 7 %"G=яS9LZ69ٲGG o3YcdmuCskJ#7C{xp@}qQº&-(΍0$ &,ޏi\f( H1yE {Aa2<)SS-lruts\aw w9/Pk^_MJul[0Xx| O=% Opϟ\)ʹMpSt? czg bVfck#Oz X]XFuf?G\ L2G۞GܖFL;'|P'qT=P xm4n(I4BpտmZFG1iYKϠx^'S{d|_a\n`|T/h;7"gM<*XWj& FҺm k`9|\jηWKGO[MLjn8 vۏ|OVߣ>-.ڡ jR9 4>&&brwXH咔87LHrwZ95wQlGzLK օi{Z^ ]p$*m_C? k=vof: ML(_d%W 3ǰoC[RvOش9&kkEWԨӜ4= ;;[ӡsTޓx% 擋6 WCwIYW;OE(Ľ@ eP[*6?!?`-K^la餴HdEӳ#xDŦ#hSl6j$)-#*g<')4khdvHq#YQ-H,*/IIF͈@@CnVe=_pC#:D+qysf;wVĽ 5, _m"ÇVn~c?"V12gIp"WLX P(nD uF^ jo wTU=< W0^#&4.Td> ;wo2.NJ}*IwH[qx\9ݜӈ?ԇƦ;9$8ofCԑ[ar j(NQߵc eѝ"2zp.Y8JWw)6q3tK,#`)!2aǮ{ )hRwMɏ$0FurܵȰ' a-l1h9fva#Sˤ>Mz-%~ U"!\y"'dl@ Эo(ә`el \ ׈ 1ڄr[3*0XaIj.U*pu! &P *yfJ}Aǜ6]>$3NR]ЀtM &okyNqCnuh RL^yt8`ό]ŽMjkh7D>YUyYxo lDW %O6h0 @2u毩oy:".Cܼ>vU* GZmZian@kǽJ ԣ,xhEx`ᗀQ]פtS6._$̚1^8Iʝ٫D ļh$Mw婯<-yw'ב $r{[nL5k#gW?3v\55ȭQi$V ]T]“ >fG1toϰ&ֆ;;(`KsfZ=Y,D3e(٧K[{;aOWUQHT֘Q?" "d1GlE$P]ƺ^o2zv6$nTPaD҉]!<(/ckb@?*B:;ôhK*'Ŷ.(x9d2şF ;ʕo4|0EA9YXfp8J ]54`N;9> LV-ʎo;[:Gіdߕv"}di $Ɏsutnz1lrڴ8q|?Iz*j+"o TSU۞0-_2x#Z;1<#]q}'gxs\xc!kli-ed=w.Js5I6;ek%5(mxuq6$'!MVUon vQx;US*(BYh~؇bK2aV~7n XX[ŷf/5ݓ>cC-!`[!8q0 SFH n(: `^pp?JWǾ5 Zm^#FϘ ;5cahtZeA0R-"*'x!ޜLy筹=︎Ns@e>M7T,Zì\^q -4 4Fc4YL_)m{* O|a +8 =6<=9dT.eW0f`GAlA&KU2xI>WDYYvp[^tR[\mkQO#Pc@t/q))XZY|.௔?>rt-_ zhy9Ѹ;O#5Jf}C[Ҫ{5xu_3ՠhP=,CU%%C=pQqL5*yc*[4I6W BV`J+9۞@sece:+7/$q`Evܩwx@nZ_C[Q>̖=]cʦLo"hoyD`o|A+-Jn4>5"NfL @. 4 \= xe8pZ*PENlH9-%2E>9/\8a}kм5~`{BizLZ%R'X"`1= 'uaۚBbim3Pgg`O;z찮!%◯H?lpY WzIXsTEt RWm>ZlU < L\ y6rk]vs+3Tx*ǼG~[kPBQP 2jvuFA x'NDF6zKVj|3iuvRsv U{U) 2A,%//__w|J2#F|G]. ZR ܾ߽7CW mYŃ`D׺s?Q.ed|ж-?QT=2 v)r To[)Ze|ڃ86Nm[OMi&$>赨=!QTG^Hee ֟j1a4LAe7;8qAj>xe!w[{hWSoSGJEͿQXhQob3a=h];Q^ ^Xmc2 [c!GW{Yؐ l"aZ+C%Dm~f¡.aa>+zUᘻPs gjn'㻾e:a66.zcۺϦYÕ~_규D1O]-1ʼfB/81;^DwJt(쐣Gc9"KvjHbd< ›Lv:> %E>[TYݩI>~ _w!BJw T^< qc(Gn(l7Ljktz- ,Z35.C1hL,^t vJ7v7LL !52F]͏{-5 *^çUE>u,wWs&S+34YZ\Kox(xh ڡ6#<h\qy2XvAS϶alYs6k ΌٴvĴV_$^ $t؃hG4 ɴcV5OQ,;{~h'm8:Zbqۃx<AmU^[h,HQ爔kN"ʡxV֚ºK7pYXRHC 0zy|ntv(1pIPFY qkj>ˡ{LP]йoN iQ{5mh&@N>9dNlf CrBSj'|{dj a7pʄ 5M0-: N.מ0<Z "drz.1}db1P&'i6/teJ@XU .Eji+BFWB-GQ}3v]p>Lgy(_mr'31Յ>j*ϖsFjQނn:* 6eqW\ʒ0M)*:۞Cf,,5_o]:Ara-Б*-YW\VmV `"'2@24П5u=-F&[T؜Ue@?Pwe{\#`ya49#EyH,*"Xr!%j"[+|Ar 'I!G:&qŷkk|ߦf(}SYѓ: AtV79m +cZ9if#IL?\fJp(`~(Dc9%}Iu_ q=q`a. z#e}$3K H3HqSx5okS¦ljޠSL[$}SE)=MPĈ%5i-.6-ӢIk\pRٱT!{ /zK5M qO1t^J.JNI<{ ^J50&7wi&_ȻzK_>.~Õ. 9DC&AN?{Zb7N[q )W"0CC9yYQC YNV0FWD#}7 i;@.cCgo,B_( {\"|7uQKڙedѺJh30sYZu$d*|o nCJrvQ|x0b¯-  ͚>aoNzgZ9N[ <g įK,D@_=<=go2xsa`e>ݣh2eP(]MaӠ⬟MŔa do4S] bX lXNo\ٵar?Y|⏓ *ݥ3ZS,/cj+9\ym2'@ 4Pv kr>0W~/):Ż.S.xDC&'NHk{ 5A^rgl-jz0P̏@ҟf$Ә5=~8weaKVkg{[kuq4ՋSpJ(L=. vu~;`iR7ÒGR<̍Po3] ˯u`|l^uI2T-˲= ٰXTd9UJvd^{/surzI.AɟOдn"N.ZFIJSXkH'vgnc^iYH9 LƝF4 jqDhWLǨmWW* :G%trA) wږ‘WAz4PS/k-dflIDŽ(RȒ 92L[vKtKT2X`ȅVS!G=bP2H6;cUE.9NPT@Fxqщ8AE1~ӿK%kI3#I`0-Wkr|s1]^jnw #^㋤HD0n@Qp[6?ֹBpk՝tZ*׷WFo}AC٥WE}iKw"k;|B&Ej]S)p~,Sp6^d! ERt]וzn¹!Ut%1w`- U6frbEqqSqA!ImX 0SP"A?]"ݦDǵE:Eؗ]h#ܟZ+i bw;<3(|.E&6M;M[c-]þ3QuP _H #yJ>Ѷ|q_/4N>waRXn&%0v;RC ؀Z?ag +W 4p=] GmYljR BscԤn|0vKf_EF'g:ԭG9r;1}^U{hW>Pwm3C/>Jqɻ){M ~߲/R  nB?F̨[/Dt{lCptd"~3ؒ^7J<*jïKPR*E(sG:\`T\7yDG\@ ED"GKXlڙNjl?}6$j"`7/Z$4s0]mcጒɘ~y-`W%tw9F^^_" Kϵ85hFM cHZi8x$]ّ$4 wb҆웨#bx =`lO bR #CcdY&avkp7k3A%EiMM'K ߎFI媷p?/ iv 2fi3 VI,ok0Vx6%g^գRx>P=[I'azVma-( -WDSW[:=s<İw-D " (/Jo]D BF=ĭY72fǻt䇼Z.1-+Qޔr!-T.hc [0̲ |,q>ѕr.Y@wxZ)6(rxT=6嫢GXmqb\(|KVnwkeȬy`R?G'g@HIE䀣pZ  ꁋNYd E#p%d^j%G4sݿ6Gq>Xc-iqνN4=AQH &?Y!4gbo>JXs7`Һ~ ;liM_ч4-–_,iQV {Z!rRM3j:ĸ/!䢈qtËb diѥ7JKRkCkd$/8#$cܷ۽!O* {) CL(>4ta*XHxl'?[u=+JHhƄҚFbIG1/זہ#It%ŧ!BTH 1xӠs8]Eu`MpN5= x*sK(*Sӆt^Zk؞ʩ̴~8)؅ wpJ00 xG5kN!nwo9H aИwaM`uΜuЖt6DHMgc^طK1&>Vq{4lM/ \zVIl63eUEU184jfo)S /(*1ZƣP`߲VtO@ns+a"#1!B+`=nBn[e:ݩ r8f%/ۿR*'TUؾB~rbUXAsa6FWͻEl`S-i/Aq0bhE)k_:{NreDž 0=qc 9Kz?9fF2bA6(LҫPHU*cgI+[L ~F' 2[Z5pk*?f3-=|5qϽDkeZ B!)"2Gn?=0}mؙ&\5$OX$as5Z7r\%P߼ [W$nF&A|#nUEkzBaCUz75_( LmKf9zw#uȦ^G^Kl*Ot&iqrԶē^@wᐋ\OρZ*a!w})j N: nhw( nTFϐ q%O쑟f]tU{v%\!`l:03[yRg9/DhWT D܇4%yʻ:N+kE4ɳɛVICܬ-Dh]y4t%dO~jLUך?“ck }8_RdΟQ3X? jK"M?]SBC>Z츀/sT>s-%9얰WnapYBD]kZ{wH;R7?JNJ͔-~`"y1_nV)Nώɂ'HLBG'Xhb@Ж X녱KT/w*2H@BSèⵌ@:-4 u{&ADS&ő3d_Y5NI@83QB2>)I@6 T.-Q''%-HE~ vA@ENmHSdfjR# 5C*ߡ9V,[?d|tG ~|:pR cOeqU$Jz3زxCW%h~%^ whwsj&#ڤQq)iT4 4(]T̶V1\}lb ;>ore[9')o4$c?ogj at ]v.?QV1f aAz_x'lf'1l_E[ë=So;wgf,\~kT>(5?Ra(a+#Z8Yەmt2 +PAmX.`mּE6U<;g=?|.MZ+kO6ɈP]^ɤ mޓ,]s8C.>>&PQ@OV<<\q` 8%^j#" 2+KgU5/blܒ.!wO"xfF, 0tߊ/M)]ra I i~# U=K^9o/:}"Ɠ[DFO;vɦ I@缠awuFs^ 27n8(5΄?zks9t>?HtF,1cUF/?Ufū$d3v`vCAa}MW+Bb7io+:>)58bN]]^.f ΜNJsH9^òe/.wޘԉt$rzAK?LQ$x>Ҽ *)5ntF|ieyɈ73̺̿ovyF]&xʽUfZM(zyې"g4Ea>&zɧ$L}ZCM/I x j8)PbTCdq44}o_)y-xn'?Ɩ;n,iwy?XǾ$}Ӵ0r{3I*2seo#?;F`U*yKfDi3@M޶K)˦3#hKj}SX%mC@*bAίj$}n={]!T!=+0z~3CI#Σa9$CH 8.hsX8_-r@@c SK`ge!牝 2^7zZyL {Gs<*TNŽquuZ/e+Oψ:}+?=[%2<,\[u]bV룸FXN"-4zU>'ւf>t P t^njk C[Mtz\l7zOj^)÷@rҖ_/ DAfZȓT'&YZ@cE V/EEI=c_;&X"5:`rDm`]D(9Ϧ 嘛7 V`[+[p +ÆYD*PIQn%76e菆'Zه(C5=v̡H@ ")2t.}ưw_VcR'D Y5=5;i0]4ʏ]'ЕIZ,ɰq.r_Opw [CNZC1ytnϿ2q`"YS-5P_@4) Yi5y/%iīHUviasS荤Le{xtCO*]6{h)=aAGU$V,kjX6DJ 9+U1%]VR%I(T} 9<I R@,k_ZxE w{ Q#"Y|ĖO)YYߟc%yGȬ)(r'?>Rf+g 毊T"ǧنĐ%;OT,M Fp<8? D'v(TX|7_6]O.H!z8M6K!~54ZR .cdt(wC{svLkMx dp-Ri@nE@p j`8bm " DBlhiq:6t~˙əNҥengXt95 JVTBf7 A=0 &")8':2H[$Jq S"/ ox{9,М5.i8VzwO A?24S]WamNY;qh| Cq=(86sxu"ݰ)0u] c.rL:2>"rBެJHdvYhwx$FA63 uNΪSBsoEl+R]ƞrӜxs $H;P>1l 9^F>ߌdlr\2}z5@\7bn6NG]CHƛBƍ][}A&<Jctr .n$vN"dP~e_8ܿ~LX#nR)hFnL` 5@w`Y glIgl2icqѹϨC3s[Ø{Ҥ@:Ym{L|0/f7?Z2U0#mB1tf4Tqۚhʭ}ҽUkZL(~%"}{!Һ@\ۥaQsz4hGsfQ]qV'5ao#~I :ʋV|9d߯tw1*}#Ƙ=&GͫYd^ܔ@Q*[[7d9"%p)+f=GcvkccU6 :heⰰg Bj_G&[x*:c)uH']k]` }3&Ilzۋt/*n}~ {bǺD?oBKQ)xGjw?jy=^fe֩FtIn*elu $>NGu}2j{\WUݫ|%xX\ |.mJFf -G]%dglhWVu(*D?~B\[](*I͵7%tk47t`4\ӻTx7RRnYh]ހt5mdM@5CVwg)i֥IGd?w" zk?3k53aG-]ĶF\~`HI>D3kO?H_㛁#[b@j55b-"ZUPϊ9bD9OBW>Ҍ;q܇DY:o&e-(ǰ{!\I-9Ikft1H/rمZ|z-g..k'ݗ+\Eph8ԝO`V;G$GӂDob ^#NC8`T|.ySCZ,T|EhG_&_տũ掭V#vI>X-l޶_VVf|ڃ mL!^x6/F#:Xey:80o'l^X_o*u uu?"@c]h _A7>4qa~@5$^ 8ʁ2,;LϢ7rsn%)/A5Amͮ!YGXmN"ukqIs( X1DABKEӨq!~0!!70<4}8.j4,!k)O/Xlj*~Jכ=]Ȑ7!^QJyvpf$x4,(9:!"v`A6oHĉ@Oc7VAUrZ#tʷۚG.l`ZNjK: ȑ!?Z$T5v= P.!DQ$_BHչ&fçVD̒CN'I=<6KdC Cx~/63ɡ>ъf%yZ>a-Om|%<3yGޒ4B!ы &e|,Ƶo"}D+&z$Zn#s~ YbvA$~ҊPhY}iE֔>(t?[(69Io`(ee ҏ՛t ܨ9@kdIEؐ6-2qt8\=>?};;~y6p/pکB 'j/pB4䴙}/V@T-nɓiЍѺNb*o֕_֪T{ƇPnW|S>$\:7ubƖu†ba6o4:roG$ r:O6|;.ʒ`}[,.mGO\ܜ?7F4Is)VmۄBcH=|Ӗ_g8R "ŷ z522G/t vx0)M1̒G6 =h$ixq[g:7[Q4IE$]kGVXrEH7Bn'A`]*xa6A_u62M9pZLlJ:,T"d7WN>|To8jQ9_D`=SثR|[?m#\ }HK5Q7w&9GG>G40W^eI%3^nMTP(ƻЋ>gL/:gp }\>#҄b(LPFvd9>74x<Ȯ v OEGRrL8["M|r|TʃiE+!*tU'BluͷY,#0˔jV3YO`޳@uAL`pmd rC^-~p(%۽<h'cyߎ3{qZyX! &Ԯs'͒d5@Hx8W=[C- ѵÏl%/fV'7-a>0SޢaTYh nf$^⮵LT)|C]w8| =V\./_dͲ;% 喒FNM'hk2cn(!D)QK|O8j 4Z8hosM Nlh:P:¥@_Ţ:QLYŇ}j^0&IM%OA~`;7,qLʑВ$*:aɡ1"]:'3u3[̛`ԙvafnk'ҩQkP*wOԞ<Va{;m܇]7lLd?<2"AckDKA~U_* R^RZu9Ď].=a\O3^+p -L""w4iSnw뻿 '#OG] oVE$ peKu_NpU=v 2a@"|PWV-I|)^յ"Yg6m!h8$H}TSAmwZe*H$?8XXAG} +][g#'P[r~}'zf(T)853TJ8eҲ?m\=/pNx Cn\ olo#E3$E`?a}N x_B\Ħ!?vї{_Ȏ3%i-|}xd;d/f2L`&T?,cWhb*ǎuNԘdN"HS+y[vq\iYJ׹@twoF8L1:H(ЦvZn-˔Rc1iD6tyH‰63,DyC;Vz?jtz7;~LEC8:1P Π_AR" [nM[ aCxMX^y`eG-_Nœ}qvbx!!.0QΩM ?[v+PEDH[z!= a'/U-yQ:h5>aŒp>]h{^ιs- 46C:Ț0Or2(;xu"6,eJS.MDmP ᖅ)?`l.k11gY9yALi)W~R)о/6v@D+{#tJD(f YzPA9/3+F_yx' #{\'^lX'hRH6@r3 $:t |>ȃSm>ݎr]jOd.3Q^YoTѲS^CXh|Ӥ3K_Qvtb/,Z 8;w ~rEF@Xf5c֭\OD@1;fdhu4>ɟĘ /hUR:Eܑ-W}Kjը&E|P֌4QC٩ `[N;IJ(O߃p[pv^hA!6aIy3rLM'*n ojpgvᤑV缹lzKZ$-pLLBoYnzi7Lou'JM޿XcOʡZspU|O/ AW fn5_T/{aSh0ƅhVZX,Y e_rˍi_4}d\9N~VE\Gď @m&_2qx،+S5ՠr7R?͕t)}x2U0M5 $yI;SG&0YTN(`Ei9kQl:N7=÷[=:!lppk d+,wŝ@[ʵ4'̵HP8tn5v3 A8\ջyeP`՚4`{n[y~[,gP>RGmFrYʅE t#%1;Bd^u,H*̰{[rx?'{laLEUC^LSX0˚hFИ{=yp@&`No ܇8B0m(Uft giC?ͽ*yfoȎEd%IN~9LqV6ɗWK`4<#e1+< Ҩ:tq ̄n{&/|D]E]eO7֏qals|甠"xSv+o8NJ2}}[HƀyyVB֑IҚlp<Am'x,8WE2$\39(!e6y&P+sZr,sbQWp1sodUk4s8"%+ "[Qk,/ ;u]4 smC-إhKh4p)Bk|VF{)gx%!D -M$l@Ő+H !qJ\ =u"P(waN]4Qm} fPO4\/ Ч(clR4x꫚*8S|7Z8ʝ&Vq]>3T`ZYPM΅:ɎdEf}-[inOƍ^N Q~+%|ϋUWS*]So?zXCr "*N< 2lө;kg O+A ֋|*fB=hV@[QJ6[7 _tEQKZfMHF?pn~mm0&JQ'|Wͤq.0:Edy$|x$OQl<VųR,7ΖPfCZ_w~6ִNrHʝ()TMnm0A;΢,$u4 !| l)c*,\w>r!jΗ4o`\<=D}yrH2 [vCs[p+bzzc o$ ]x䌑@q٢j@*8d@#Lݑj7w%jv?wŁ+KFnOeJD2o~ެ=ꆣf< Juso~+]9o( pHZu?ݍ픜KwD칍*4;`ab/bAҺzr<":? %%Xu 2`nZ +=YF%xv2~Gn9V\^`+$nSzE&t47->y٧37<:>&/exqތ鳢E!GB2˲1.>rg^՚MPE_~Q a9 VݘAu(hRgoY1'CXQd[Xb_81 jYMOGE7ygj7jE$蒏KK3V+ ōj'N+K,=u@ ,$brjOo+try,;ǥǾ'D5q jYz) %ȀC.x:sdx$i^iÎՄII>w2+dgw ͠pAjJgVBxP؂ңZS 6^Ywۨ6Wgo5talIRƚ[֜cgo߭,c{>'g,G]G}AѝB sc7Z6rx W*{Js@^M DEMovXX鞠KP,׶ܮIrkeS)## |YBM15S^+SXg2vԧ3ʜ<Xu )L a 9Z,k#Joś'2ވqmsȀP WC44i2,LC4V٩ %i8EFнZMnŦ|pH~CrrpPv&m}^^+Տh%,n4 2K@XcnپO\POGǒ6X un%WC1= /( 1Ǐ'^mUWْ~6&2=[96Ke~eZB8&ֵ@}F)et^ QgE5ГTqpH]W._Ƭ9Ѳ \\~wv)0ZXF<0yHÓݚj`$G/jf (K:X|ȵUs7º/C[k /;0EwUwxlt5$m: KRP|ssSt0bHu&G K<\_r&1߆bRs(5acaͦvItS>'LI^k~E|S :׫t.z7StEOG~'QMy9$<ѭ\Qۘ]خ,—.'JtӁko`_p*yn&|l`!P_c_˙ȡ; ~oS{_mcː7/y?dy)گH\կMe7T[{ipGr&VO^uJqњ%#jʚDE4l-pN-՝[@><fL58-Qz$zH2ȟ|fVu}MAŗZDE?5Z!:t8ͭ],1&Bv~PrUF ka9{O81>O<$4feC˄$W␞2ieK$0,WPlQ/!"]C=D-VDŽf0VO"f/ӯw;۲Eu\맑hI3e,Mk2(..ث@*U*tk27Y,Y"0yCu"l]6jxcU=!. j)l>#]1(( >U<"XZ "K >27eba^G b,/n ,Ӿl^!!/XA5Cl@N5>E~zBݪfF&%1E'9д=W %&do8+ GƸvBY{[h#y$bNэ X!)r} M~\rW:т*R.WuT[Teed+%q! %i?dV@)R Hc*' 9Ȼ5-=j†{fzp$3GGƓ+B ` eDb^\406bn:Uq33\/ƻ'[uHҕrvb{6T3c)=vH\L0Sl~pi:|1|#:aTkx{@>_A+E3bޓhye=,c(O(a2}5O \ _>UrD>aqhА/ =Aǣ 2i#Q " oՎhh},IW̼@{mIgҧ_c3Nc/jGr?5ףd,u%넃 Cm!\>GE2ہRF?]'Rۃ p C4U |B;j:Xi2bVZ̠ EݹW [0%7•ׯJ'e4G/EV*&,^ӑ\r?{VFүgXHӦOK6K= hѝ_|j5 S@0S!>y9>|VV6 ߁$fLMTN0V^^f m$}SP*_3lKZxt %'Q,ޑD1n2'q1&fwiI4wXSI=ǿ=nMqp`BY2% $-ҹcJن+ؚ1gbc652G,jTY[I".)/H k{cԎ_ޏ˛?OtDJђg`|޸LZ]݁Ӡ#*^NKQ;.'EJ"C/X<ɌӔ|Gu/D M*7]l,3gzvbo܀L(̧|{ 9l~6 B/zPJl YPӈ{~}"ym!+c&BJ B z˼&q&oa3%ɀ*fw/ W ̴2RhI;`8L'ϝP*9J+K()ϧu`5Z 5-g vbleAMqg 7ҎF2W}= q|3x6{&0,Y4xJ,Tot:BqœXI@&E)s,-6k7)hHh"oϽJKi!NItg#/3{W`W^ .wNb8i鰶F%|>7#˞`rks+F`' D)1M>)B[<-[ΓDDj tū7[<@Q]*a;w/h gBl`wO-q9cҦiY2k .1{SP÷/?_oH=>ͼ S.̼Ko@Q6:Vadž uAm=3ՔnfH $N놇NnuO1X¦7EZȢNQif5$ 1q ݹc~oV`n:Ԧ22 F$롸x tqvᢕS?(=Εa\"4j_e?^k>eIBI:@Mu-ۗ$}cդGko`peY?l$tS`6bْ݆1a iQ|/7<l΢zǓYӳz)q?@3"|0\Ӊha&U3'lyH j' {jÿ-h"omnDS1 ?ͮ-7w]LuIÕX.MIRݶ+.)N\X=]#پ@ *)즁vת˧?_'Q/䆔Ϛ+mRKYudK)DŽG+9gXsH|+TCkj:tsV 掳l`*R߳r hr@&Rn!洡6C(}!9 -0MxRx(b:[Ǩ$~WP~7rQ~gh@ޥ#p8T;F7 'x5˽/+5 APjg"jcckF>=Q!Dn| 4cwx廹1zwLW:kƜXioNWKq |QK҄W_AWPbT?Br6lB=z Qxt:Ab]uL _7_V~5 NJYLb~N.ctO{r2ԛ/% }qD4Y{au/tsg*I[nniA<,!5:=йm943_@.Jg@j-:> yGLU[fo &i))PD`HfsL1wi!R nL;<1f081W84IB[YFع&*c-n{{e$.KQh. [,WM䪘̉2wc ?"]\PY_-@ kKTmo|ټ1?^]٠@MMd]1S'|,?%wU_e>tϽew O+хf>Hkft]+yP:->eD6tRy  椣! D(f F@[ZvoJ=ޅ0rHd)TG:-7ɰHYΎւI,#bzbYx}JkO_"ӃU+ \%3~$hT]Vƈ=E: @*{$,x%([ԁ¥kvrBpvZT40'\_'-rP-wSt2χx *azh"B;$Y$BF9g=g`mPVaJxLѸu9o kDb ?5 \˕%5YLuOY_hs׌R4tNʶZXZem}ۓjOe>h=CV0m~ 8^NlI751"7sFDa*DJsPl/%;db{<@qTnۼ)U2[ZN2ﴢr)Yԝ ܧq pg@`TB.K'txLmΗ _YF O(/4[h@2v{oT;m˟0L\*uU8E_MUE~*28˝_=Kds Q"0XBʟlLlrCP!/K+w_ AZnA&52{K)MsN&5xO`o~KERȁ_ d ĞDk,+IRWs2QAQ^WL-挖(?!QCoaX_ōtb6_{<u _p~ jmGZ(D0Uu߮ n^L&Ԡx7@ap,&R_?OLuL-&P"ce,sFPm=>5/Fٟdr[ zI#CL!S:MHe,}(ŧXԓ*/ؒ=R@181RVq[v*a|"or2bgs/"+Cl'9`Z~NCWbf .+x۬q^ Fc|%^ (TÊ-)lw2xdQz?1{!S|k.cLIe3TyhfCra5m#I?S~sqh}b >TE[G6[NpEkHG.kx%(ӹ,6$ +!(IFL1s..Zv#eUE^jLOIcS-|$'ĒP|?ow",O|"4 ~ކ韜q23 }= s q8N8D=\ $F{CEm:9 <5X3HhZgh{;K0|绐-2^ѦfPvzBY\sDi_ 5R`L"J6fb)C;aw\Uרs6,\)g {ص0|ƴH6 `iDsӝ+|c~z'x%4]ߪ?PYݷNNNV=.auA;m UQmK6C~ B G8aW6 $x}UԽw9ng:",ȋ9݈5L\ y u&BPzw{o} 8Y;):շc UzX ~sFqDhn9d~D:RuLM,Ty8*5fXp۸oU^rfkFtueoaRmà"4b,vٕHKjbցO *;!7zu)CQ_֙ ;.:db񸁻 mJvƭ͟hC)K3,ab NfD^kt Xr͋ލmD  oAZͰ-el큊1 c6v6ȳ`dC-qsIc>e1cJ@%5LO]IqXňkz!RAn>dE׼Puʔl_./aH=EŹV ÿVd6'oQDOXʙY{cGsm~}oհS}z' m 3XI\A-._}@e} 50+Xү(Cwͬa?i`j''5s}搭Y\ ,2S6ZMԽY K ȗ$$^OKvVऍ1r.OQK.'*>Kǀxk/ڲ*^, ko7ܫUr)!NdHsivI'#QF)[OL4ݭO_86dl1]j2N9g4O&,lf"rN!5kk8IB4ĿR4r0%_uy$TԦ^%p5{E=[”k?ov psM*8ZלQGu`GT2I{o؊~$vhH}cwD4e+pUQ(leL7Rl~YLa'_F>r\=D*L.B(KEOK?9Yo۠qvy(Ϩ8\vLȇ7Ֆ1OFiW@Cd"*2W..H.0:F#OIb㦨&1^-YNhdO A)Ң0!cqjybޗ 'kI⾵Ȣ".7%9@?Zn 3~a":$*Ia&귣}t2y[ fϲNTui%I Bg6|TlKꇺث/bKu"%#ED-C~\I2;@2ʪ ˅. L寶PahĠaH8} sh_w;Iщ4pXQ$uB'Dm ~Y"]Amt2>6&0iC ◐MKJr0z@{l`Ґ!ay7o-3iMa EEҝGv7gg*~#fHC*%&]e|~&U[sy.;h{j X!iU#u30ڿjx2ɥ:JgNM.ogT{yW!YOm"B%뤣' |g)gy FmA*'o?$o⍦w!n7ML~9IbܓۡآCMߺigʖUBjbgKT`P$~XKM]}%=BּDUWAuӌ_l&k::YxvkW{(Щ,.@0`_5H fiM(Ӭֽ1`0?FnF0;_n; ;UG:5RTG-#{:r=tQӏ(rD}ZRipǴ☆@>G:0tXC# B'TDϣU~3{ZqylYd ~11ʖx!,99)CoLJhL*+_IAX|'РZl|j= Pg[-ejy$᷊`9уh]uK彰O=IrZ3zn>t];9kC/S-$bmk'Xi1xCNYsJ~Ylg1ݫh@NNɲk_K o.6sӑ4Ntc| f=:&NI֛jZ_NZś4V?Z@:-DfSDu]Emtͧ^;KJ YJgV pҿյT|]%4edtS:Nז GwSQ^ԍX38l\ t^n|öUvՉR4c+ EI~|fq8o.J 96~E->e ־+&s$!mHnPc oԵL6LZ eWAkϿqO]ow|Ra?|DW@ 2M`}n,R!7m$%Ai!av~PHwBV!E',-LSl-6HhX:? *UސaXƂ}M׆1p~&s_lzڗPkS%qkw˅U1[=9 a>c\P)wl*ȱދC;&@Dr?| AGwQGbD&EdqDcXNn C¬%"V[+*q-*-h?'1{F=*Cl.u\W9O!<>v*sΰWJdqØ-@uL-@RyMH3o1S"Mbr ~!%L޳lL'VS|,uCA$qwr6,7NLt$/W }22-'8Fv3[y¥Wl$")ւI8E;5j` Goqo5vI +@~ԆUq1Ӌm'~eyz7Yf&Ѷ[ا[ vتo8ߥXDk zMLi* -\]Їt!d_Pc"qa=tG$0bY2Grgvbʌۥ5}5Wh@F~@\Ar5\_=ͺRMAgb ጏFi[Ka%$)FuAfVdS|\"n;IwP%PSNd^ʻe9\[W-Y$.4 J0i,@C!aerH8[<[BQ.?O 6,F)LXhCm8oK?ҋwo1! ̟9  8ˆ\ 0 d˪/$g$`\Ej-e]Ā#({hْK뫊}$I7;ppt&1_9o!פs:/arIFL_:amK~ߢFQj [ 8%?\%b~ɛPd^ڮKa7[{,#; DRCOսSb8JLPM!fJV/DaLA4 8Žh scJqDkf4=̲:c17(%FcNܔŮn}Ć??+;~JcRtrW3$(hvޭ>ܼ)!|:O԰=] fj"\!C5@2z3bL$==vnӥ_[AQljqٵyTϨpyR5_p =_ȝ #{Xs( ׊},+qs k3| Eź?4Qaɞ0^L]U0Uzn$d{5֙ sJ/d!gnFRw2zœFNBµtݞ}E"8J]w#ΌO-UsB]KdmÉH՞2DR\Ks w\ah(FwnuC ݼcݖ?]5G0QUJxe 8|i5' HA-zyq^CY258dVį[+$R(,E؊k]-,mXlڕbY co/Aڟ8|i~ĕA|RoUfl84~\{΍31|{tB9 ,W3ILi·wjI?虑?rnJo9\NǁPB_!(^9yp他A/;:÷&sV]ER{i(Rg:PzcE;iL^`X>δK5z/C'~gH1`ɊJE2kGx5J@|^Y˛tgƝ8&ɡW a{X~IBo+m]JO⢉O$*'/U蝠/_Ub{,Vgc m}ۡ6ظ[-}1"o:p-R=s2ʆc,C4Ut0% G_4 ѷ-lFr7H󶘪(<ဦbkIsDt`VD@߆U20c Ƭ\u@4SČU{ɘ➻_:~/ʡ38m`-R.wה,pUs7?U^-φk<9z΂~0O5L/kTe~@sT 8pFOw 6P:ժLCR[ኋ_vgeB7(f4ojEpy^hwVfKڇM)o2ѮJa#hF?a6=6eJj්PP.a0/euo=/U15O:u8gvm`!L^e%AVv$؎4hٶ'dl#6 j=xUdٽ0F?*c%QT:u䳩]~*?JWڗv EJD8ۭpFlqfUUt7"OАt{T.;ڷ-apk@УiH7mɶ^L=Xj1L8oho˻\F)PF˾H"rffi4He0ݷ0H' Ή:fk@Rn5Qȅ:EԌ?@!&1uC"KnёS.M?A(t5wƉ|r)r+zΌ| ȷ#kتUH[me:(Za"j{'yaP@|+W3##fq-MZ矜?hv"4i)6jniFpU JE"s@,,F@k-x*+aH l(4,bQhp-Ɛm>n*kY_Kk*N'*>_Hχ;NM@뢄~3Cwj SaR 4rPr" /K:V}5(٣Im&2v-~铇!9nh88Xϣ_d~ut ɠz2Me:XOX0bC82F&aDB BLD)21|f:w:"@nn۩5:kO6iS/RCWΘCx̔ϞIhЏ{L/֨ࠍl1p4v*:%?kܦ*Wf{zϘmJ^\X9'n>Ӎ] ];(J?95!"f9/t]RӼ ߢ>"Ruf-hRvAoǪ~=cTutC|uڙPn"WлYT:R^L%.Îf@E 5[&TWO{ CnXrn/p#IBc(V91BaY!4MudK/N}nwfvG:9k^raF=iYU1 ظzw$7(~q}jr-SBWH|=Hpݹ.aD @FКM' 8qJ.*VyFM`%"PҸپjRy+?xQs۵"z]kj[U6~hnU>nSz(kO__i K^w@ 6~lx3KJEIgs{2_oXǏ8bΑ 8nuZ.7 /410L"फs5@  ɤ?v ]e#M2ReӰ#Q5p-+L͸aq\`F9";̧liCi̻?"j)V 8Qo3b[I%X>gbߓ XsuI^T'48.]i;c(g^[~ƉS-6^mOOj8r0$Э/Au5+?Xz+P9N?.3֥Am')E`[ƍ xgpajZzrXzw4M~MĠ\&]q0kEExdр9XYѺ'狽/TWnlUk@-_&x`$pg]{}] *Co?ΖW1۽bbб20"ÖxkW\.Cg_G6t#It9 YBUkȺ{o .j6Y"٭H-% N nrϝS|4\֜oMR[LLo;b> Jl06,uN?C., ԯDUqǻot0w#orZJjqv !1Zx)e!Zx^>3ȹDGvooԯͳSK=fA͹Rc\`;MDwPh*rt,tv~>apR^|ehk"_SwqW3(ڌ+җ|+Q7s?kc=޼m&ܑ/$RU ȔnoZ[uJ3?`kneG)9hqu&s-25gO IxDZt;djVVD@ud]2@ Fj-{M,7S"7E 4oV|xɵUà Pqd v;Aa'Ԁ86W&2C_3MQ>H%XqWf*FAnL{ףT;eH3QlN#r[fXC<ҳ{D[`Jm-Qede)\e2ʱv.0~f )١2;⏐?}sq4İt&GRZ?'I`R'K I%$}hA~0i,f6U5Fcԏ؝!'[R!#P#2k{le(J?|*Fx0 N*ran`Gp& =ekOwٚXMK Q AՏ}44y_5x: p[ sc2E lc&`EX f0\}{فzL^ST5  YWJWB A>:\RZ#$M?'%T osr |M9 {QO-qW/R8W2<^Ciz$p2(Y3cK]^uGZ6ty!5*h*ܢz Čl#ifSb}@5B/BqM@D7D3Mx2̐V[͉yKiog lZPID\Mwrު,VЮ@G1XoLk~vvߨ`/PIqN=qH$A2[|mm ԂW7j}œlȄ!lc:)g4 B^m)Dp6Hõ1r.Ѡ&l m58P/a-B7<_mIj)6;L;rKJ9…eOgy_.|C/FLͧ/Dqw0Y%\s<>PyO TBSFdZlR8RX_3ƣ(h8&qDtJ5"A `f#y[dESiOq}=~^a|trhVT;#[pFt l~jϼe7MQ,gf2!߷.,]'1hB%?5;.tP^4'Q=8ꀫ&FLȸECXHx!Sˢe/9so|ehtԗn[w:^Fx)z${ $(5THY`ڏ:0757ٴ7_b5(6Jh\zaͷ#AoPɹXiXʽ 0a^9 YJ̟}U࿨ׅ􍨒щ'32crUNE0K sxdוNG⌤>vG5Tui#~TE@oRIX" 2d̈́q& ?_*|. ƅ?ۡMezzrA6>8*ɘ&i<@wˎf65pvj_;FX2섬NبPtwaDja' ɛ͖F1wy5,H/UYt=UJk⢆1Ѝy@Sj¬3.0vJI(L4xV>0+mM8\Xd5r#+ MA̷߀Ն*E nXh Y۹?$hZR(q2\SdfR&:3):D3#u^=!;[9@Y*HHV\Ypm3&>k{Z+3>jāZny(hVbn5;?3iȄJ6⧫hw!oiMr1u8N[@Ȩ N%f[]79 @.1佺(mD%^|Pᖛ*Aiϒe7[Z1 #خXմsP.\/aksRc<`(d|J݅zQ筇7+\}b? N3 $ :F^--!`]p ⬏=ށ(Xbp=9W1݊q U# M+_6ozW"lN7t۰qe q di=wmV.n&C ːU"-" nWæ%;90̴w#9I#]`qI2 6( Sbej!% J5/8]שxoH=<¹?s#ݾqhٙ8ou>L;aG2LeA(HUjtzLoر9/[nF gW]cgù{jgJrqع UohrBG _YQtYa%Ei?Y/}Me g 7d!bV0@}6ďWVFSxGUU=Ꙏ$Gk)eVHEy Lx? oOAܚ\]ox?v\΁ĨeXIhމX&NoV- ,^a[&Ajuﭢ+`۵ebcŭ~٠4G k) ._!9X^"g5>X\f]Ol|nbu}%_k%S}mۛem/R?9^W "˖^ uq4 )1#>kqw͍1\*5Jpc*+&Aub wq\XwvAOLp4lC5$+Ufhġu5~ ~ 9܍gΧa 0;rq2nn2)r͚U jFIi1_-D3c3t;-%P#;Z&(ltHҥT<ٶ;HV"U!NF"߂"(H/*`û@]>7q~Lf&9Cftڜ!)ݧw=`{BDZ,rJ]zW-|\a,+6Xސ6 U.ߍl1Wd Fy]ߢ byb~K!3v:<42IvdX˕m:ˋx~WE6 S?!cCL\()yd/*k7Zcw,ȡZMSa}F-~n(_I7AΗ,8u^Fg윱@ cq'.Pmom/ZXީס.IQd`Rseb/QUbt蜵BGXm4Hq}**w(ȏ5?F)k+vhWYIw]daLҵF]c$m3?4 E 0JRyX4ν" ر~5®$4>@IV@āk"(D(xK4u=Hr=dgW|zwO9934tCqgr]vvsn*wf۬* Y@)u$Z #F('vZa^n. aXV [N^5f˻j۾f~'I gzeͣtjW7s`\)i8Ɯ"cT=F=zv %Ve BWqVp\J[V}?">g6܈%NI:־hY/$`MݹHmY.}Ds0Z5z})fwv[?ICa 58+:Wd+1tI5oŧlT`Ir~yߔG_&;DKr?-W>Mw 0I#))>$rK'mIM.}pz;vXJ9EMw}?)7רe)19(y],:\[LkPbƬIJ<y'nXٗUVMBPmG~vcr # W$ +H\xQܲ+LhTlJ!HLvlow[Ұ\, g* 7V2ku8q{K%vwC;šxk t 20Gll2C+ \>>pWX\';UA{B'yGE 3 XŷԟW8V4ܐ.BfkM.{ӆG0xS&0ày լn%zzt,LypjP&'N֑tJ'[ʑ".f/v Giܹ>1Qfe- t¢k<9V<j˱< zdJ@rzq>nլ"a :Lk_/mH 㚠V˫`v/zF` Y:LZX ̩E"S^Đ, Jr F+Jȑ Ȁ`RVϛt:![mTNH)TWWDZP#ԡA"p=*yTztpQ573m #UtlȸE!gN -#i~dapeR)T(&N]K~Npċ{U7PA7~zwJԤ<0zj Z3}Ll#kGU^" lk\7,kAxj,.139p 0w9~#2k~ľ|hBY+Z+)mV\[`^$)? 1\FLj}$Itt[O*%VhP]mp/2J -amhkVѝI-/L^kL!DSrsM^ptnN[yQcΠ}Z/_fe  LSY"KT?R;^?FStco !\un* w&Jd8>%WQ6$IƳq 0U/IE̱ӿOqTI%Tߓ06V|Zt.Zxk=P3My!)Lt2>:UQ׾: o,렶"L ICFX#NTपo];LS;dtmRYk mK*53"q&\D}<0"Àsplٿem&6Xqic { lt ypRmٴ|"Dhƣgg u$?QzdyfcL;f12VCUdVS͘`@g%ȂgfVx#S 쓪jڸiV d\Ǥ_Y^Jq.V p NbS >-J>8"IIcш\eT34^!5wG=MLEb4|?r\vKPsLWe5{<bqDq-(m~ys23tk1lSTeF`8ON, }k?Վ;}*^\]Yx X!PxU>4uHd'fBOᑽkh^;NӏtG"e^Zp0zߞ5{L÷;$FmsƎ(;d960+Uro % ,u]ѣ$6 =^מ]/}-+Q iرs@ΕuPn2=Eq9!c̄T^@[#"28@JX9ᵙ#] PG:e2s)TL9a X 謕cXCujbδf2K PtzβBy Z3>T&"ɤ+EdgKB n'**ӿu#\f"lIsLK໛z|=׌O诬>KVY}=OXQ0MNz R 8Ip´_S}AyFO]|X#ksR1HZz"_;nOC*&i^"}4GvBBQ䄆78;>Pۤ3–yQ+d.M#j؉fd9D1ǯ{@—+2< Ih^_Sįt+Έ'jWQCpu&c&AeK cd٣%sBUE|LZ=S=&&]Mp//|??1$ݘ ,X=32u-T5M IF:c| 唽z(7'" ' xJ5lߘ"HaKO@u?ӬmR1T9:&-cY*ii=Z-zP]Tσ:-3cyr53s'Q!ajQ{/K9sJݢ{Fv>L3M$A7; i u1W@EJ>~G ^|,€մӽFLϽoS|j8XGU9iqQXY zQ+T@\:_(aL6)Qh]ݫl)d=/9:N ~c? TB?-]N|=؍%Jyg֕3h]g=d\}p+O'ٍ(HD{ƽd7cuQעVWVVfuq%$1p]~t b:Ii"lj=Ҹ4MihPƺ-_[*)ֲfMt*f:|`BE|oT\gei=Lߧpp$"!i vzyLP騅1. ۜq xIK1vvo"|s( /O[LIN,#+Fӏ_LzPzs<  \ܱs -d 9=dN*}+A]@sZQ.9úk·:4d%!-)GD m T@(N08w6*7O+9pߣ br.2\ ˹i߾c_ۍ 5~ZԬSj d`(bVySt5Id#M{c05xZF t#VGW4%3o.QŋuO/;n!א hɽ5;P9i6*Л ^{cS0Jd?2ckǕ}W^IB%AVf wBFF3TTu`;Fp-Bvӕ5I懞6VjzL^eQ.5?gZNPs-bB ll-/\o[+|@E]cL?&k݈i ?z[YcB[b?9G $M'?\rm5s2% &5S,ە/!FJ98}1P( J D &`k=Ϩ$Ѽ-%3|m Cm% hz,H;guCBU5'.sWJiJ3KA[~zxqa9|If4Hx%3F>(%xgo!.>D7N4ZO<#݋ԊE2d(-G= AP^/"DjmҸT2`ڀP ^I` ?NN%_2!KWo V*ysjaM]Pz9`p?eYY9Ҍ2 TDͿ kfݕ^W-"Kt_DMp\6pG#5!wĎ&8[l%E-DE@iF-0W0~H~|~\=J.ܷg;Md,VZH g۽.j#%X~d=7ꦁ *6= -fQ5 mc i0@j t*JWeD>HuG)`!I85͗*]v+1aq.9n&"ϦaI*cPFGSt<%9 `.JXޕmB`'XH5<8O:X2r1ȼ0 }nt*#Ѕ3j^A.*p 'ӿK8^Gmk~Sܻ;1p3=p7ӼO#_Mט5o5C= s_!3ndi'joe B8 qpRyh;?C \tʬ?v5G8P[|6.E<3@iS)˷X^`3#_iI f58^- J}M)1򜼶oxYx_d+طǃFG Kv~͏N]>GJT d %Va? t A㭑|S8+9+\ u#Mg` 6O ng䌷@*"([yDh|p)QjEQ6T#}-MY4BK=9x:E9ZDB0@|膍]>㞬l$0#\ 5"^.VJߒe@~հ䖯 cz,L{&sBua#FhlFRgsE1BG {Muazm.Ry>Kv;Iu@=dfr< m[e/SƬ >هy*g\bTL@ Z\ D9QD,x1 r"rA+{z̬ctVDO+싸|[8zop7yH;VE3𞽃@!Rll!/T s+Ep"ߕꆒ19=] h7٤o4fUv#Fwء1byTf3OL[$ĝ@>6b2EQ m97]jueq+dn},t*xwVBr Jհ8:鶸#mjNfY/Zfi,voH ;}LX@c$H$u {xA"I  Й&UcNa.zi{Q}eEYsMf[i1"^֡_!۾1Β1y,8hqH>sc0< lK4KtHQm"90Hh*4_4d]>Y'i&eܒv?ãOˡ|/8x0p?4H:X3@6YWztW+@8gY%ESbVv ٯܚF*ߑɨxYW`urh T3:#³$D1(|6L> JL4_$7ϲ%3hKݎY@KH$aQ%N~Xyo4?׵KK,cA0m+IӪZ|}vRqII h 7[/;: [Ab(sZ) !/)DV@U7#5wäq(``iZ˹`0`PIgmkʤds&.+5l d{% 5.ϳo>Ok * ٸ+JŠL/Y|Zٻ[oC8AҼiy+o%X =L놴)}\uZ۔ )YN&*vjO\ tc1ս0ǽ&^0 \~׻>NwL:lWzn'n8gjdfy|Y@wC ; : !o[͙xgL[@ݨljꓠ|Xx2wl<%3WF~dAM>w2^ eVUL&P{)gi/30X KmgWpd5y@ 1:[r5/HrIҳ/o.U;@p3,aheS!,wl,b)FR(@Ԕ/D9be"oXP4ޭ->Mu.3WvD%Q|9J5Cj7  o D|f IEђg+ GGM>ąJ[{mMI]kE{N2%>}ص.")m='qA#2gF 9k:-CȼQĽ1[_>i6DGpKC}z=Ճ {Z =k+i9{ 8 -'됰F̄m>VN k77$Idhg$i w?h+,X,emTɶD*r٨|oy7OF$n-Lfڼ<,)_F^ϓ1LOВ_H6+2ߟ'.h_HfU"'SeDﲽ{y\'Ȥ+֪Lרg*["F52)Z^(`he||sv]|x-^150e ++J 7UP'Ξ[9ՠ,W`zuX/+,]jRJܻH?x fȏ c YMGl+@@id;`3ݳ'Hza0ڳ꽹/QUmmwb:t2!x!E4Z10-gn_g1;8iEQ!y:I˓"ӘxE3>B06x[O-z]^KXpПgٶƏإ"3XȓQІݷЄ;].ɩaȣH0cl3=(Vp&mې2G\X$F-Vo~2z i6"|Dv5΀U( z9yzҮ{oOgVSJ"y;M m>lOdнOzm3q(sG> LBa)R` dʄɭcܐeIDbQ$Āe3~ZZ <h]y ^&`ѱL*T'kumg;Iy{/32vZ˰FpJW~bg q=}4|g~Hyv{KIeylap#Gm?,P6sPI@R3J5ML3roQҌɇKl ^КɼuvR!MN?w|I@4 5;',+` |NPUvme GbFQfY"\9H((gq$.ݱC="nBص8"^k, ;bJxOKд6ͺ>MA\8y~b p_a_j C"t۳r& ŽsM%}*W(ugj*cq=Ut?/x>8yV-5 |޺kX0uEc}?BϦyt0~bZ ›,øqlutGl),1,ykFB)o]+eQw2˭}bt+I۾pWD3jwpF(2OoԠ;l @8lAam򰃫![huaζFѦa{L7׷ MNTl 7@lk-*zKީץH[/{edD򗛟d416[H#4ߚպ*մKJ-rxYHf5*w&ҋuDhA} 5$ΉQ5{/փ{(t.Gk`G6c͎!Ak&zKz a O*H7l`6ml1)~q2e-:OG=Ƚ4˝< ܤ>L{)T%rpE~Vኵ05T$(㯃sDPڇRs8[jvTq=uJwOW&!.R2^:TLiL"  ׸E3F-WuܩӈqFO,nrW[ du;(+/d @! aҁviKT}CcH!abR8.  {rDM$u_d??=5= MKOj_sb/pV-JN L9ѶsXվmDk4mQ4[*# SHOFUC?,];slA, 9?~bksZ~U`Q5`=:PVST(2 s逗XZJ|^p蘘¨3 ^L\jhsNA. Zkأ.|5ʞUY\)yD"&LR!rJ]?Đw@oXGڣ%"=x&42wp'a{U4A?0לŝDB mZq`I;۶^ۋR^#^sAQKʐ&[;LjlȅJF'M|v};)/ąakGўdvN[wQyNGM[UbJlSXa#_]\*͗ۢ0][0\Lw)uHV*ʽO3>S/`zp8qy&XW[@ԋ7Q{yI9u} v0S:BX/ޡBw C=$,MdB:j?!P(P)P,OB]vVHdʍ$@ _xj0|6L%AObSA{}<ncO56NʦLәŗJr_}ѴN?M}1̥046fZʘ&O fEV 䒆`Qr͠?1V]vv%>"f sL $o84FHyiW%%3̃ N+ڔ=S},W![7H5Ÿkd&XO@<.k6u<f4mDttvNsv3\av:q :ZF_yXÞ-$!Q2qʩ@$c&-^huS 5vX8J XaX4~XgX?Yl(Nilfχ,RЁD=/ ^)b"zLuQ@'j'>TALgg?<"@4f=@}8;RojYK44/7m6|u-! b`sTk_4J{+|Gwx8i˸џ6nl-?4V2FTk8iBd!;堫ЏpBQquuTUH$wqɰml3'H:J_*&ޥ?TPÚx@4#vAr} cpe@jozЬ^}wa?iVq ŵr q{3WQJIJ<+qeP{7b,'hh栣4t5GQ{g"RL&DŽ4!GVHg#/EVٵן;-.'c7ߢ聣Ҙ|#HxLymGgO.馑X3>3Hw=_f I* ,]#*$UQU? Q.H.1[9X]p}Kڣ} LОp&R߸/(kE`P2dJ[',/ќFr9sVS'g:>+}gzĘ^/Z/znPHLnĐNDaYZu?"Q0A9zeCES?c&WƢ^x9B$%ld8V ETPQ*5@җuR%6=n7D@494b,|ȪԌ|:+eVqH)Zh͸2pZ7CZ 0a!{.u\ywm$:_VtS wd]ů-rv^I/+Ucbk{up-9Q=O40Abz7EhirNeߏwQ Hܸ@I}ɆXg;J `Ħ{Ɠ^#Bșal6BZ8azGw#, G$;1b}Ȏ2 eZ BG4Bt բn:dZ`5jvv (4ǔDĝn uuni^Hn: ťiC MR@jyьk ֊x?]57 GnZ㑜zD˙f >@ [3!qZE]5͌ WbK+KC]jr>wS d̝ff)w!w\6r%Ú*z~Cch%uoF*5WZ5Ey}>*%R*}e &p(Pm7Bx0]*qJ gfL[(81xsѩR#jcZ_\S}_doW WdFa" `WS:SğngCϜvθᯉ*{12ȅ'u 3BJU&F}](pJPLNc83(Acd:0vl* SUj$P`τ{Fn wZET&?< E&G2_aNTm zJuj]P$Ћhb98 pw(`IGO&iO(fF6P:VY[K^J6MVe[^q gRBC#W1`U).<4{I2κO(!ft2o}<|L7>DLAlDSՓL<2 "=U[R{L W2^/$E0'UYCHcMJ>v)ZJk>[~Ѥq F֊烃@'iqY$"mb,N=\0T6t :[_.ʉ21]~ PUZdzޝ)YvIni6A+y&o$ E1~N,2< M/fܻ›]A|Y.37Ej;#?|Zuc=MZXIZ$L?歉Zծx3" x1KǙ@?[; i[uEՎe4 ]#k=`` 5eR8N\29h$YgQy!cA(͟@}% JXvLNs̔љ ISinm]8)dyIYuT,$.&jSssM{zGAui-Mɘ\Vd* J^mF; C\C-ߖ}w@d$P-ȱs FE-1mD̏:uEGCt>[:ާK1*&@MB@YI}{jX+z7:Sf, xR~iCԂt¸sKcS,)ؕ  8 $0>\hZĀ[*kKΫN=*eS 3'#ѨUB}:^ӚtH2kbk-mӾB6sf/Z65J(`vuܮ-Lt;eBiFפ!$;[ܭJo@.YX{\є3 QsXP> 8[Ev6E_bΨ(S! A/ $Yl؊QK͇G4b%@`x;w;]{af+zc*Qr%O^TSMBb-d~h ӓlx\3S30{v"{a0+y6!,@c ?% 20@GA ţr/N~|p8}'h;-x᛬r|Э}|Qal{2dUwVab"&f;Ssu'7T< :PKGm,17F=4.h7PDmP;j!S Mx*$.ԄA9ZcJB"L{4G-}Ơ@nXPnbgRRܷr\CX Gnt qQKrUx=ckQУiFhꘅ'1kGuY1Aؒ9.H uvTV-xE Lٜ*R&9xqI1y07FبVM'CI ]dKsE&0# EޑAq!.~ECdxKRoY ]RxZ^C3d+þc\Oy~٬pz`@ftN?%7'i\iGIG4iM@V)vUwK(?ND&L o9V^L몰^ F! |!oDL3[`9VQib,Njc82Ʒ6m hW!b׳m$I ﻖ7.8 d#[3E78ͼ\?P|"?,8@^lj*1RdJ;[`[d2c#4}~޿n HoyT#L[ū&+GHEI^ݤ֘p&TV~7h<ޖa(}514g}>.,ci'{* pD^1ut :ԍGB/Y$_.a6BA~5fSm/07İs='۫3Dh=X|vH?ICH(O,ފ^DӅHI9 V^~Ac.N6 VR_ZUί &hyh]Tm\t 5*o,Gl'+H{Z8H xiȱvu?;€{G6sPܕbRT g(Q*6t2ʓg񈗺 0STTE MĤ M>CILVV7|%08FjG"=M^Cդ.VYGi`]AJ58kœS&k>!@*Aǯ}o& ^R/o]|=zIEUU|*k&(T>l Dٻ7rQӞ+Td|=zJ)2i9b/+m~kjv1 |iˬK @9Xrcގf^]> %K@.eۇ>typ |;~.M>c4oJ?\;Qi,$/٣.@GUJ/H5q9YYR?^چ-_Awhn3-Ɲ!djLzO>Coh,#B%tl |Wq?rgN[ 9EY &@ä@o$K)<Ӏж(vPS BqSYמV׺F#F8MXvGGOPElU` R!$\#_8ek%L?omiַƑ ;&Ջ;γosL@-xr~upaϼEs덥~ Yy"đ `3xpwZѸ½)AZχ;h(l$A%F+BF-ޗF'*SN;&2㖁+ nbl} Zv5 *L QNYC0t6*4GU 9O@L5>gЇ n\?g)GMU8(Ot3b 9m -U!y`rQF\_zFjtcb2j_ M'>t vn> XC7E%SğA!L$KEʽ IX`f k>7ᛌ_wjf`ůPbT8r=Z3N'$!7 K-1 \ֻ-,~$́Z=#0IX_% %EWRfmL5$N Bf5:0} BXA<iiz2 DW F-I߇Qӏ֧gwu??EuFN}>=%rhٍؚOJ/n;eFta&;geW+q #>d>ўL b ҝ f]ByB87 f"kEvw4qa$rɥE)"Mwj$z˽AkU^ScY(8eݘBH ~oYIW e(V^xtWw LF<{gBᆇwY266iR5|gnʝOXUHqcB!X!81'w۞+%:ש[/+ѩШY!G9m 663aza'BYR<>b [k&W6y}u xSlr3}^8zgX~FqӮ~Κ|QR8#4bZd#O\K̼`|Aq3T+yau\  TK_/rOY/Δ崠5T+> H93p1¡( -^ĉY<9 #|N 9G6 <ί{(c手nZ?%Sz;آi=ؾL "+0*4"O[@eF9^u(@xpO[NVT 黣إY]o 3mM^0fSyPFF}߉,9,Aq=oj 0"^J1)KĦq&BdFaNKboUK<ܷj|p&cp ޏvb̸q}s3d}3|"AfeAd%V^͖. rK,pb)&G1b')m0B$?<E%&x}4=]r{u`yW7?Fe^ɡAʹlIyXy5RػX% ʡ:MRaUAUqE'59"kbwqԭś0ƭ3-UY:+U W+ _m% !.v&R&ǨE*WA ꞏ(5_+OVϛ-\% 3,r x:=4p|7&X+\ ]x|DCr-`dOP!Hk |i%|lN@UMq {b$($ڳI thXgĜ՜.B'7{q2y8K3BTal;׷>9r[pr38 cZcVx F6n&A4LiXd`,skoXJl%sˀ q0B w e {\m'쇅v hv3\Oq%F&b+:~PU+xy^א<ڂ9h| pQ"ޥS lk]竱zF4&L "C8| [tHPN{}%XEX$KI*{!Ө1P=Zhp@zS3\UaFW F ±eғoԃN 瞋¨nW|۳ xNKoet4j l1|CgJCF7n9lFG =ɫ.IM?4ri,"OD5oĕ#L8/}*OfvE`EdgA ki K9Z:ѐu*+8^T"&D{Xg ep@Pb=$MZ?QV:,߇Э 1TGj}S' o{_sK? Uqkuxs#9RS@ hlàq cwYUYP .Y %8-ckBHckg@Y˪;8ygJ5H|} #%1>YGLۖtӀi7jьk[.66VF{6vj pS*6 ^x#na#go 9 3H!^%GXmgKf5B$ /+|? ?=DD6 {(m}a1徦A^cR߇_ԉ1BC<~bjqdqFE$v0$>ɥc/kXޗ{-apa2D7oIqbng11~D)i1vUxZprSQd IV$E{?]K:j5 i"=35 =}kWZ[$'p)p(WG$!4u|ӱc[ߎ2<~\˞p*0S%7JOL+پbHQHg`i^ aBMl7vSR@\IzT͖z>|} `N+>drg7Pa@]4 g2#f˒ eh.Kr 3m]v>h`Qޢ-Rf~.ANcމw Iw1 FT4Y6q;3B밿♁fTMZt5Ǽ'sc]?|d^.`f y6i~Х<_Vs{* MHxr͋[DB X ;}bMr5g,OC^zdrJl$2|,lKeȭ?Z0^ dp\D~*:8 2Tnx ?D.͗.rUTđS/0\6{zoR KH<5N $"rs8#J,'Z=RR<At0e .>+U;06ؼ.x!6p!yz $_)XIJ&I f c^ bȄ着#--bd+㏳:蟋:/p7b忺k ,Lw/v"t5l(x.q?ZK&if/9޵ko;_5<,aĽޜkgK=*悮 IRUsi^@  Nn(o1DJfթD|)zsώ?ƒ kSCË I]l7|j-EL[\WpX2J_!r2*_*Lty>6/|}Q"?y^bKR FrRb%iMIdU_()jqlPPW0z,\QB@mU$b[SIm8*z#Fq0j{ѥS+-DfB306ACX.;,2 WTYyxF^i̧pF<$]Jat 9< T$MFExb3wlo՛-ߪAm9 ՓL>dg}v| OmcriU0)ɳK.8ckWthVMf܎ɚSj"hf!z f'Ղk/WY| 4}99jgq.;';/{1npZ".fy7A RL1^|JfQ uܹPh01VPc}=3.>e[Y7;E}3%lfdyⳮQ|+T~~/\Yn|Rb9L]>I/Pm91U1R [c riF^tj(mTDTږpԬ+LX&(jGmeуFl|aB3sINCU#CBy~@a%]QH{{bH~"1 HNp8h1Cwa:>?KjFԪ(nC~Ҷi׏w"ƲѺN-t:<`M-+l'oK}RvIͱe1<`R1wh Pȡ|XZ 35) ֠U #D}`mN6Y+KYV?m2k$ ܇UJ{Ƃ)֚m0ElwkN}"ޢ84Fdu 5oLR3nf5SF]٧ےb~3D?"/LP0~;^Qc;<) 18.~.|e"S2fZ*P\>'fX .+41ӯNG`}1hJޟBmeycۣ 7:\$sИB(H_7ڋ_N7 ?ikRۃ~5c䒪i8 =SLPcNN(iҊh#ۦ4!uTsQLxPk L{ fviѤtn\Fr(lvM}>-/jQcRhqg8 y #aoeo C z{LIQ&0(f"< |ۃ8*V%4ݧvVѐH\eʼuBE'1C?++ƏQoȽ?[;Cl f HZ]u^$w Z4L|L|iZV* < l-:;\#'1xM"aP\wnMJE4- IjLe;co'4 0߃P[x`Y(!)h*kj87]w]鍥ɷL \x'Y2A'wh7#ѧ5vqW~w̎b4IܞOuG_: xj ‘dk9 V}^c#&k y:`g|.9@p$ŀmx9 tb.玧͠gO }1\xZNZ`l7Ė"|m6-%: aLr; "Ӳ7kpA7y}Jܧ}l:Sb(r+Yz@yM vr'ң"4C^s6vx!yAl=v^Fc,dqCg&5dW)ns ьi]G^=IkBB`dMKv" _[{ױ8:3*ܧU *dh~pgcN|Q6cFbwӋ**Vrd#/̌; Am^Z~at{'M7u`<e - 7)R؟MFb`<އh: :'MvnsoD:M4[&>Jm! SqU;wJub0b@)qz\1jYY&M^@Y1I1;)ܧ'>m`pP2HЀez@H )j<k:X:EC\dɘ >~$(1 ]׫2< zeԝ]Z3`﩯&o;Iw-[O B.T.3G,t>.D+(t1+N1KhpL#Ogx6yj-juJ1Y41h6s,Rz€ 5Y*p/K_祹 ;LrdiD:pqOؒEV .}x?͓h%s[MJ :VPc65X2qt<Цٍ ^Nzɍ:p2.~D'TIP G-pxob33O~ټsأ9q)Dh}ZC}GΟNBxrqI;)܁,5#^޿A=ax=67MR,foPb  K=Z GN:ײ1 oOGjS3O~lyڛfoE5JnBF@" ۵2?Lt6DK^C:IE # Dz dFrMFBZ6Ⴡ<5R*A 4p-6=lk .>Yر[#{vXvFeI<O:(̦px+]B`vMU}Snv/ #aL y`b `ø #t#4TbX8yn .ŗ{'ґ 򁪘M#4T'_"jb.jÎQ{G5ク ,$ ݐq8Zʟ5vaf1CcU#rpVλ 0H.ϐ?%"n>,15:p Pk`q!>=\%-:.  K?h,tZrJcq!j b哮s±.pi(;~}Z덼ԨհP^z^X=OGNI,JF}L_+=xois)ٴĉחI!Ht%^@j)6gh1^tsSN~Ht'}$S^7L*d,Iiz"6s,W% \<8=sk\W4mZB"ẊT1<\D|(?1*l#*]WJxC|Ut)jy}QAr9x{wB9s8eTNt΀i,At(\IHB OG'b4ڸxjWH뇗8 Wz6\{O.jg>s(XJ6-0X|O6֎gMT 0t:$\VXDηk7 lR|T9br)垄-,ѿS)쐿5R~; 6LdJ>IUն;.>++0 aS-հ زǺ: I8ZLIcb3HX܇1=5mkHYd/  &?K?'0^[+7ByO+p8JiՠBGeBŒ Uo 7y'#90bM6Br;`hȊ^b / ;BDg_5N=6eOF}vEckPڼK1~$Em"`,4j;5={'X0ܨWM=]R 4?vHSC9#jH 5׉~noכItu 6OL,X"|A9dOo23LlMq0¯Gq Jp8+2~ TytQ uC `oPDk'B7Sj4 q>$-`ܭ+Ѱ(}Nu%g!,5)r?)މPÒm$H92 פYH^0QHImr"0hU'ta0Fg>~], 1'w m8SvT`sBFDNaY=Mu,8J^WCv4:8 4q?a&G5g( Bf=st(֚FT۝W1Tr79'םhfL \&xp W^gԎۺ%ذ5'M :06GpÑ W|uR֜GI騜9gJoq9HjQpW]9R-R_B[]7GG5SgEqO|a߷9'`nN*iR^]  G y^.*ޭsIm|tjGޟhPoC.B9^P)Z8ϲ'jw]u M[!n'kNTŶN0}Ai :kĤ;1n?Bx\k,BK*#6Y%BZn 3ϔ9)}jwƍ%@椝-qx@HIg 7[i1fv@V 0$?Vo /\)>~ Py@Υ/Zw"xmB ;0=3?4,|I! Z3)DXϣY|rӽODz=c uܜxRmC:_ M6C([ _EOfd86A.ayft|t;lB32%*3[ }E;k6tWM{:&!o\<)ҷڃlG$.R$jca&)^D6n^|).QOtp^/k*+C˅ 80$l2"U/S>K%s_oк\ck 㕆 KOЮV}#=!_cޤ(*3jA}cq۩:{< RR*jrf/hYo̱5M[:F;Mޛw:-ǦяdP: 86̸3(u Tjj6jR]޿H-HÊEkf@ FBH}WBHB(TX*J N@`^?#6-n.jϥk[q,8;oOb2O"E@b/ؾs1ib!4U5X^3~u7]svcDX.`fow!n/|+nNL)6De68PH>]&zɼGA |m=o@:*덐^[@g&37Pa,(_ TnG`w: E2AfOXx ]٣{vmeW!ߑ8HVYc|J .Y>Q &={f1}!5M],χ\O C!Y3ؿlF~a :FAgW-S #ǰfn+qPzGڼ$}Y ,(A-9!j ̋תV"C(}}%~Zv&SIE+ l+(3&wX+?.!=ɓөȴNb}!>7,8rDȮ@!q9)BdмƸ?Iݬ{&|b`۬#9ȹM\] joG7 s1WkѼ4Yl pC neH> M7 U//kWx;+o9 "$0Oi*%i8Z-[k BMiz hDbdؖy#(d:w)hd+!d5RSƁ pɝhR⓳Y&2yZ/x3U7IƑhIZqn`rQ%Y!.7՞/HmdPR )8g! '/5iQ?VC蓇:>k,KqA4 @RA5{ugFaSɖw%uL1<ʼ ]>hZ%rBMe~t>L ٨`9ľ;(;d+e A9車P|;Kl6'6K  !^zFR!VJwIh<{; UfA dzo1unj寬%rq'9c"]0#J+WbR%i3ӳWdȱIU,L!@ :@C48"J\pғv~vdƺK mH[K`AC%Ȼמ䁛>roXLSa>T^!p.mOK0rOr%"ĀP@)p_V7B)`xM%^L@l R;&๨1Zb4u1hϚ[1G]v,r;LV5`<#Yp(^bBAx=E&ce5k) Nz𴝗T*$nГBS>C?+\۴!^4\5>F'y,zT;ȼID!I(Nm'*$Mn@J `tVHޜE [U>#?~<>dCu#C8NS~{/1\X>Y7LbǷ/jn hB>Ѷ %\ma9qj&vR7 No?އ϶5fń/Tf9"ڠN9!eo'J 2P'ऌtl֞H@ [ _e0ߣi mo OH8_St>`qP\ЈTG Bgaay$2Mn ՛vl*cײUˢFZKDVaETtOQ  )>4K)ky&g|,7.WI ڥ5 %Qϡ=`6kt1ar ٔ:;`D Վ?SFb<?C{tT0@|Y#qް7MRDcE deD"'M&@9 c1Pˮ\SSPI i&SR#΄>O*{VbRyƠ!L\CB>g6#WAQa_)n]ˏt#<$_< vyRL= Y%=O7v_,+Tyue:{;o)myn}:/j`R>VJAG!-5݆?-t+qd?6|4D78GJHG4Ct |T*4b.>V#F v!HI<9yo ȝ~,c st8)Y8jF툛0/F>nuظϥ7!SѤj J1!z9ѣ+މRwI|S -iAfmFh*}|NleZm?CEҍFL0NAnD˩# ?Pc}Pugr>ܾ] Z\z& J*ѱ!Þ1~uķ< )+ Ey, ;gvk_V1^DJJH@4 q5SzBN H q fjsq_ O+L$5 >.z11LcHnȞY+ ik;@s5n#XݛTrㄦänJl!:lt5b<URmU]oӄrsOeHh#7|2[~-m/ L~w73;i W2l\ڂ Gg`ܲN+ ̟:O qd$kumʨݶhwCMCH%t`&лDEj| @ /ǢE߮LR_MF$t%ᶫeE:L~] a 13 Z HqQRN-t;h,6->.fLr7; >NNe@24΅]A(k!u0z:a੮_fɃkt(Iy 1bEp//8|q-2y5Y)p-,w$F9 (۞Ջ1ŰL[u1Cdl ?]( 5Ώc#}y ifBzw= H0z[cť>>6p l_5qoz>>E0UM6'y: iFONq40·2᠀>ѷHڵeLe&lQozCg]-Ig3YSb(wYM|쩓EMA\v=^~Tei\dtpˆs-[ԽOeD_[j ƽeQ! ݫ=BEh`kȊ$pzM $u6ߠFD'." piv ~xRuPf=jGUm* Й$΃xDF5:Uv]r(DMU ux+;َі B; &oy@:?SC000'g\v&YiHbb(>JFL זT/{m'C LwN%!L#q})f O_3Z%yvZ؍PLb+9ið Nq4Mj2#r2L9bQDx}dGeuwS($UJGNmX*R;ɉpqT+I.+9G4o e0J'%ErW%vQ [r=5A%!,6C2{ eHgH8bR"+q~Фl)s-\JF1l>>CU-k +NYu۷;='{o Xߪ܊x0[I)ZF7Mh҉g"O5,n]?+v/f8? ۂÛQ,iזҺbl+|%.KsgvUAei{;o/pJ7y [T]/IV.{{D,wt8}8 b?*qM>~HSvq. ꪧsx{<;wQ'2YI5͕T#JD(RU%S=Y]ֆmqUZ>T}HrOJE.TF2jA|y`٭N9vUKmܚ4HngiWses<l)VC呻K_ LqPqw0sGzM*l|Zd%/ԛ|~ꗵ!,TWQϫ;x$]0ؔh CRgZK%R\86]6V %ݸ;bDʜƻĤ8`9̎y>d{kkĺ>jn`NAK6Hݣ܄`PAtM)C_ȖFU~a3]"ž3[[Ffu>q? ܔNp;]D,Ƣ%L;|r<&FV-3M)ϡ3x+ %BۖbH8eF.2]p[^!ܝsHQ'w>\;:Lȋ.J[ zI+@i 퀚&/‡&Z_!ct `[ÎTbZP3KX2gPjXV ӊ:g0[ZR{uT7Ϗ_h;+&TT+gTnrg1~Gh! p!J6ŠM<57hxyL+ [v/PUы}05§q^%mIEq"6ٲT;Lz}}09b5.KNm;*A-?W'İkDEբ:u*[#fQ&dx 8QYumLc3Z0bHrf`dV7U_X1s`bl(;R( 6Fi0*ˌQ+aw*WNلqFo0yI!uv]^s6UDFD{cb o*S&A)JǼIݱUCVp&Lr5ZDbX/J ,]/:/G-ʶ[4Skcl\y&&+ HM\ <~TlE㯯sZBO%R}SS 'o!T̛ZxWD±j~Rh9?ZKncKEOkC+.M80..VfoS >v0G@Y^,Z9BFUݾ~2n0r$!=g-%H:'$^JzQ5p1 6aZQ@ix8Zx[9[jl4ez ) ZÅ" 6I!]I.$X}ܔ[ 1d$xä* >+k_{4{tu:UL42A;u_=QS6/U 82hqx lrX0m '_oW[ ?~\myƪwIf/#FzwEw5V@]0![--?|bq1*:b'0u K6<Y9]H+,7R;̥Cܲc 4wی/7`x.ph\QOF׎{"M"*4uo̾٘{[a,&5i\,mA%яz55vG;q\A(*˻HmQVi\CPvgk&5Mf{](p<>Br V'xj@HGcE$ug}-諚+[i~Xz5s! !]Z'QUN,j*xj[Q, s>͵me=(͕=JTlTfD9Bz3tJ(vs`X֏%2| B ^õ tҦUCbÞBsLtv.+E/X%_JAwB0lyLuWh4 .v᳠3lE_ޖ > ?J:|DUkm:@vU!GMِ6<(ks~UyWX߄糥JaX[|'Omwy6|b"&gYh ] jTMRy/@ $8Z>˿.j|2-PרodɃn{RYqDY!N@&6D6`KZV"~L{zP;O4674)Pt+N@z3)3ܷW[ o)7 s _)dNk"KB;褛KΙӠXC wpdxQ=tgyPqL@yj jmcnO{9@r s]cHX}b\,tڥstwpfբ$w$ځ/C9>zm(ھPՅ+>|`JqmaPqZ Yfei$Q?áb"EQۇçi]l4V4>D?&aK?{A 9Czjyeb)hqz#`sh|]Zoqƽ8|`|#%Ϯ*fRd fq qE;6$N'b:b#UuMJ[BBErڿhg7 d MjOxV;wmNED$sW~3ǿb5zQwNT܂O\/wÿiXxjtNb :!"]*>ďRL˪eϳ0"tt} g,\5'e,SQ T2ţc?̮Cdp}\gp^_}621܌ئ2hM95vMC"]?I,YJ4@`La5Hv6}.zEu 4G|&#geDq˲~ϓʍPzd}{QmWٙ~gM2 Yؾ96P_Rp'% 5 BaDWb?%(4wBs ,oH}6z7w @yFUٛK'Rpu39pKHBR}@{}KC J &'zl=zVmK<)+?zko0/G}DWqT$cs)R]x,-:xÕ^T1)}FH[sMoE)V<ِİ}_N  Fq,~ǽc\( Tq4j^Z =Ri8ssGι]D*362fm+b?k1 ;I'U#Dt|UQv:C)\<8:HUQce]PՔ] ,bAdI-9aWKQB$<*K͞`p|O\d N^5ėK=yie*g8W;jlf>b|NŬ˦kϿ|E(ILؕJ?MF*&ci9d;:pFn-'Q3 —=୻Vj2}΂=?fAz9(x}%K\azYw6C=.'5fprZkGtKOtjЅ/=Nɠ8?tw>Lig:YyVMmb0Q=)Xv1 X(54VP7 +bMҘۈ$F;b¯s)4qA#M Y f#c^VP/_`F=/73}%!Qf-AY~/6^-LihYfrט0 ~Lg mi*[,u7GF&ש{L={/@/'߱kFr*v C-m% @g!8f9/.1k4 'RWΛ';XۂPi3w=(Ij)7a)w[Ф$ae)W񿍗s3x 48: 9J,^YsLn6%a 5Ngē^Ao{CufiLTSfynr%-ȅפˊ 'A-4%wlq5IeCTn3N|j>H 5Q)PkήYC&('-D)\AvrmUIYb܅䌭 UJmV!hgH̤-QL5>c_L^QOƫm+.Hw}+Gvҝ>ħjœXpUACrEJ&2ot={ՂYasӜbԡ}G;@qH2c8~gA p,l߶)(Zp-iH &֘qww A{>[^S0)WFmh%)뽻V\J)GI>uO0a7aʢpxP:5mwX:]"-n ۑ ӻhfA (&ƞ/.3*f0bw5zTRAp!T}>1w9Rk5k̗ 5'YU 2u= Rp~N\T7 HauJ|{xBa`JzQ s_3G畹8T\&O|(?72 ɀTĤLGtM/[+PJ 濷`$J~:NNI'^T Ut:Y8ph(YCbC(kC\H&;u{7f\c5Fj~3FHI]'bD|+-~[y}7mJI_d2U2i C<.u9CY=3\GES*ULӉ-yeD ̂yg ?\L)H%w&3ܙ+H>Z{6wk2&U)r]Ck@y!-F*?7B> γul;>x LJ ֳ'hki(2d6g >x^޷N]&b6e ޑeISY,:*BZC 8\o $ӑaЍD"zu{YlxCFZ򯦖FӑzNoxwu-dr֨NG,S nµoǼhw%V^Sޅ+ .c@%c ӵ2:s-+xʔ.a  އI,vw7"^̼G^g#s*%*+\<֓ [iH2|OoUM&Y/zZyPUUڅcKa|]]LNQݢzH5QruJu.M,%x!(\ /+ zHl oSwx噏TY 'FKrwHJvD@Ĺ-I>\AI:-/YKmS`J< u%-=\ g,~./4s?"j9/ 5ZR %R5G$yЩy`MV`';ТV[=|V.ⷑ:q?WJU|6}J ޺Pӈt)otM^z-߾̒H$) 8fLq 9(/b[.QDy 쪱?a 7KF> =}KnѝW77=Tn='i fv^c6gi Y-VS`}ΥVl9ev)Q4Н}Ei4T)M+74fb^wiy0OvY")K%Edm n(qx5\&6gHrx\?Lx3n8^*e;K.xFT/tmD8k!*Fc{ւ+~l<|/FЕx>MlnAID@6bll9+;ג@3o͕X:_Q8e" "tl*%KjG م[)]gtde6t;H+VkFs@e^'frQBG ghqY (hiD4j+ \$d-3Rs/"di -4T_6W3΄T|N\snv.5.2!z4y#ϙcZU: SHfz3J?RËߛD}3G\/ą uhjzLAE$4 DDUo|wxOitPonZHXqgQlD ߽nvPcr jq昈=sBp'V5WEeRfvBxu)+JYw'%FLqӺuY~Q.8o Rdra,,cu(QNȃy#Q;Hc.WC $' **f0(^-u!xW'>O9X~N5BjRl(MkATGꭽ{%GL>IX%w95{ø9[>ANPXg#]V:Or֜V*pC"{cUgmC7&^^%Fgvk!@pLA$)"8Lc^_^"V_D "#$Ϋ"c2{'kOF!us-5φ^k'h<< Ē ir׏4"D[2Jq؏05d(HA2\G'T Q<1ޑ!/GR~7xlչ{ExJ* %~m5R> =Q f;'9@-:l"ғqMRIi{R7/PX6uR6psn Nfl`S{iO=.2GlDs]jٍlfEM zp#[!oO/10ȨR-Bkxs̻mjS g@8lǫBRE_ti1mh$ %b:S1npL'ai5%VKqq_cӄ3 $xM5VƓ֬ cZ tkAH ^{j&g-' =$a3Xu9];fc7b5l/3zǪؓy6b.?uugPzc>\ Bb2ECrY;'Ė@8;ChRٵoaU ZI""ͽok$y8Zr/< H!O(%ObnoOu6 sQ{^!TN؄P(Iik YCXBBYCcj *Q~wD}3 fr lVYo)qi${$7cTkD{oHr7vVۜ;u[;t/%k F(\K.<љ('#/a@dr!L* ".# _`݁0ٔ@ٍimyL6_+4`"ɴն}++NY"Lth[e-5nF3 @&v9m?"oJ\%)o Kƫ: =Tʪ r.s@X D6dt ,/EM$vQY\\VALt0 0YFÕXmSF+r.eAJ wZmz:-4{oArБ:}bkZ^d^_p4_ЧZs/ ݊\ݱYbj6V|˸oQU3.7d[dn[ k~\Wj .n+i]mcVVsb;ʅ~~A@a ?V O\u$=K j7vA~0 Ƕp2R5@]6-m b 6O޾ 61jh0bcN4}Lh.1DZ#2ݰ' yM+/Z׈-gcz]"Mj9RqDS]he0$PAgνIr*<ᇳUS'^_$tR^cw9k\A}tVP>MbUw+ƨ J:1 YU=d`f1^C|HO9Qٶ^^~?:}UYXմ!8U˘vr^uErJA,yA.Kv5^A>X]w*șn"ȿWHvXqN}'%06:tCQQ-ܳ3@<޵bZ 'Ts@;,%2VpiwJb9z\p7xV2U=wqTfXnrqtLnT'b:fF΂'DZås JF9İ6~Z.:fV_k!¯c<^G{ΘAG?E7wQT}6p_J8aDZň5_WAj"7gCS79ѓ[hNUBG΂zwHhVy/~`rv ǒagjq^'V*-+r zzO o쐋uqּfqN<<"U;]mbwl;Bйӧxk̦c=Aļzu}j=+VXGPk/<]<67X[]iNX,mh9 <.6hٳb4!yk @ɍ p^ex2_]] /1LeT,`s$sC%W lӂ(o` m;ehoq**ѲXh+ٽ-)fs?. ZNœp|бJ<$+5`ݏ<2T/,u,>JbNlu^  "D$iC5H %eEnS&zVϠ.HPDf芫VxӯJ~{Є`pl'uyS]u`S  |0?}iT8GkRK#tj%R{QtIiA:D'~JNS67Q} =34UkH pܞ5ShmgqxXz5L3b >0;hJ'JE/|7PjXaHnX9b9%B[2Uz^ïɫ8.[~zRUА6|%θ;^kՂ8"'pW*rU$fC__Ԇe;EEW\ǝi`tBʝL8 3/!Q$2wZJ:լSfnti&a-SعoG<)mM~,1 / гz#ʰg)gfÊY}@[m~^-<S3 '/{ۆ(IR dsTѿ{Rf.qXA%"w` _:N>j)Alp󟷩NfM|fjhBSOfH Ӷe(t ']vS[5v%)qlU-Ѫ/ף6aks`M q~LIKmqxqSZj\p ,rɦShnՠL}燍g[Xbi5]1t5'C( zBܠwiSQEsђ#!=#Z^%3<#DRqځ|jh@tDl% \ Wz%U,>MK: ^(9zY3@ڀB~Q O˞G ko9mFw=NL Œq偲U8M|P:w~qYc[^%@ xm۵`d{% ZqYߗj&\ -8tts|3[` Q a'|L"O:3 B1++uz3pR$Pq+,mSVpTE/O,X ry j8.`0NaW..U2L.q/~Nj1>c .regJUӝ\!gQ|Wfyhnvd;>!-l*3y2Ϧ{Ӆ P*FfBj-Cv0*ƇR5'秝V סH7"h, T͜#. gʐ4@t k-{t'gó JQ-0)}j}TQt#V6Fe@0j#Uq)m}Jsh*o#Ch+ADS<6uff,bDib|qc\ٺź+to-=*bis?}4=<N;22m`D[54qk PNp矚(cF^颕OkrDѭyDa0e$PA^ty5թ;۔l ƟrPkһc~eڪĒ c :#F]孾9XFԷ=Y`?tkΪAj[G'ρ2|VLb`}B|f-2dNj\ ? 6Gҡc؊fZaW >'GQMaKATI|j~#uֈ~9Q-}S?'Glq /GOQm+(rǨ,prʥE"U,dkk,4Cx#R YqhDGCPPSc{|70C^N{P[􂋼.17EPL"|s9QH/ ke' юC4ғLRh2 ʼnvu2nYaɯlw|@:ڒzȕ~Sm1GhPa:HSY:V <9hxJ(%?]=FP$J5X ¼ig5̲iH&2@ &1+7zp@pa0{TrD j)}PUwb)[@1sիav\Yk;L3QP=Ɉd.$9Q|'b 'W~@sO%%1 4Rp[yp)_26|J4y~5Hve^=^pI51>e?TMJws\*7h0kKJv&F2j?=7_ u~S͌y7N:cb8,z~wv Ndw1((P:dt8?hX%L'4̞!PNd !`k- % Y/am2܏7оmݤ|ÏEI.YQ!Bf 'C@s3/mdEH7R9V%NybePµjˏދ|:s{tiU_I{?8 Hh{h $Crz CӬnikJ 1x4lubcB2ޓA%y%pT$my1~n MeyMLvU,8! l8#ɠn׫ņ[Q߇X½2Y%7zў9&m+^pI)8">A_@LtFO%/Ji":ߧ8ˆA2Ыjqqz,zMZ)SkYo>+4  v!9enb?Pze}ݗB%MOa=?z :J6{gaʡǴ&&%#^xVhr 47$_%o tZGY"xZ 'n(C K2Q Z,! uĄWN! me{{4K<.4 XX 0W3KO[G]c܉sϯb-;ͣd#:j(b"(S@*6Z +j99oezWZ~JK{|J:_ rs[3f8GZkK%άr\X{>#Y2%[ I#.*+8ܪkw>m,ֺn1A9,!SD h>4F-].nPf~&U:GVԿ@U^z|Uyz^e"U2O>>AN< 60.cuPZ`Eg@sɂ-zv(cAJ~ؙC)':rN9^V)كsG-j,*`լBh {V6oYnٙ!c*ċy'֚zT^0?YVwl@*f!>R7mWWm/% [`]Chsl1-XoL`| ~؞~əGewL-ij exW qp Wmq#~azcyLήDݭf ΑgX\QE!8xD <$8g1wmit ̤V'&p9@QROD#E`lBj- pcoeĄv_t)kb4t-ƻ g(lSiRj~XY{Q=c*I}Ie;1I{Q3mUCxa_(# {Z{썭 o7~fui_s7;p3@}FĂ9I\GeQtb +ޓ-4n~-FvO'8EՁ環d J[# X&0xrBLI:CwC4ORcq&hJK|Wn#˷5j+q \9ݲeѫT]J>VuԐ%驶3_fD o> P{-OM8m 0暋9}M288G]3Sa t߽q/Mݘ'hƟϴeJ{tòVs;UjteC3)03k^}Ď8*kYHel@`D@" 8\+H|l~">wBhm9m9Ut5דeSzdžj[ `H IWhvF և' 蠃{a{s8KA0L'Zwp⬏o)<9cj?GGH'-{E I+1dIyqt<—jZsPٖ-v^('. V)oa{IӪ6|_q4&ٍ"y+n^I ɱ_4m|WdOXeFW,ŵg1qgϬ;}X!RpG6i#a\\eFU77!jߞ7 r%z*}T[_87ѬEKA-{-=-bXo1^-ReHZ:YI& ÈUc#-'NoZp֨ӻu3.ͣ.?@(/'j.[y}-cB-,y"IȰ`] 0qZxD4e.TpVtM_Fe@}8b: jEFF%֚۟zom%إ BAeSxMKRykH"Ǝ}*c djtmRK/ہ3E. L;I;,ʞKaBMŚ"fcc.ZJԍb^(N G^RӈewZ80 )L.I ߛWFZ9[@kǪ-"J7w`58 wNPG4?U#kL.mkPbmɯ\8H&^3ɓS܀4V__j J4nP27j/Q撔׋{m 4lΏJt%#zBU78WU:@ʇu!]]T yZF }2Jy>@{!Agzufҋ#fB!TY BaR"I`.r ȕ/+ {WKef^l ]=[hygC RNP1bm: 7UUިuK,S_Џ#b`0BIԡӭLk't>_D}R4ry%r[mܧ2s%nɾF֮3L1w9p­*%Ӯ ʹۏkPɕ,@ 1x`rts T1+& az`Ҥ[γG9.Aݯgm &?&{!WߎO|gjK@'#*`9Gweac΂bBNqU5 ۺTi\U`a&'0h6U Q:̵>aMs)z$Gu0"OͪFx+ŕ(LahG^c)sMf*:tuc'w<ݪj@l>ҕ7ٌnE x Lrj6 \+ҫMeS-EtѻkivHi#T B<Bо8CA灂Xݡ45U\ܶZꎀ U*;5R3Q#:? uv; H|%4Fo3hcm!\>izk`Gj0fqq܆aQY7Gv~ /u2CBXtxcNjJ)PxeDꡆϤ4{l6{>Cg*cv3 = H__OyLQ+)Zp q X!ǟnn2($?Wݩ+ѱ&OfF`8qͮ ݱ%;ݬVGNM]v&ͣOz,8K# W!Z9d K 9V;PZs8a;2RXgUuFfje.á90l7lqd%f*D&:; tWVq5wdyVbuyhzᰌU+=1˞"1#׊ڐcEv"VbC%q:`|t*k=fLl# >~T*Ѻ ;i!KQsSQsC:"1,PYQϗ 0K׼Ӆ"Oo\YDtfrۑ!%=aA B C/)%+6X2$!#kԩB TKp1g 3ǧs#E *d(3TEq Hd3Ynh]/|έp$\-_Oҟ[zYօ( N^((Z1o.唖:] j4eG;7XjMuMG+eb> ]܍Wa6xbB&x=Oͱ+W O \sQjgE~| MI^: <^y|VWNШtdlF %gKӭC2=qlb4N:jR_*fZKtR<Ҁ4 LAK pd\.Qê8d\WǷGdc_ĕy+*aNך?9 I4tcq Zv)M\q '36#4mu"3 |V1l{Mbjr?AJ栿n)8wde={a1j_n:ɽ$8eecwǪ0ΨAZ3/&8u?Za룛_):.S7A& Afg9k" K5ONA޶;H&߸O=V\zL _#~wearZ%lOB(.ĕ `sў7Qea@ߘ׾ٶ`)1&1ϟ&$熀 :<7~;ccEJ;j .ą0AF؈hCOVH)%wXө`z;~v;Ww6A@8.&U7J.\QaR3$grM{iLFrm"A+@?6p!eĉK VOu!¹$h)gGo7q"NIQ,cU/䧆?A"qW)hkvAte ~ V5^Dle̛k&F7"+;V~rhH,A7Vn^b0~ U[ ƣhK@-n.y B#'kn5Ve.CW#Uu;k50Є{`mήLCj9S"ODr/dflpZ _I=Pk<;Whb =TLm,6TG]5/vi)Cɑgx^]4F7]ֱN|&o,6=#&I~Fip!"l{4*QH R0g^Oin5OAD,)1Q'\SfOjH|i%4_Q1[w}KAd߫id˹Y[!eP Ch,ӍppHgjeA6櫅n cUW{]xC٧ع0;i3a8mKl7|㷒BED#%(:*Ps L)f~QE?,[,pktkp0ǀ) 3,C02ȣa~kI'g@J"NV@Î,1V ɑ*Lmriy am+ʼn6_lTybݷ]B& ldu'!*myuoJ=H(p&qi\Yx^G М50\Nz c۩bZxGG1w*a$kҙҦ Z<;A\Ͷ] 骟RgO}ly;¾W Wy: F4x"\6էZȖ"X1ƆdzKX@lIeƥ.FrbydLsYsVͻ$2Y[!u@ GPzFQ.ʶč?! x ĊWl*i =$QH}دDz3UyASOQrj6Qp"M3φeXY(V$“ݷP\*e5Ws-W.hPݍ_T@);ɛG2 p:'|x6ɴ@ (sP~2LKp*E+Hn 4wq$SDTӳ-]v^BsB r.LzfaE3׷z5^ѣPhaIAɕ *ԷYG]_> ?\&Xl;ݾH yb (v"Q^:R44FD^dMb|PY8qiarb:A*ptsBE:rեF;hD /;RFnFG?*d9i|L ixIʐ2{ plYY"u͔w]wv4S*!k2*dF E /v sp8k-.@ ޽hQŒQ<`@Ͷ GQO6ͧKq2d׼*'px#$]>[YQ3L[(aԜɔFʅejK1vlMlzBٴE7I"?؞nLma7 ^r*],fuv?sNxЋu-I݃=UtU WG".3!{9gMvklſ-r"sVRz< 85V L ,Gb`πQ[ )u++ `ՇxKnJsi?@3&2oFol'U{LdOj űKo rK5I{+^cD13=Jt:1|ҷ}CsOs[)PDF]L`' F`tF+a|:]{٧ˣTaUK6sӾ NoIyeINFI6C1)0a}y>X洔=݄+8 .NX{i9Ffo;g:fxrE}~⎺Tsen E+6pΰ"tuP]9C#e,->QxFz=m`o $ȓK;0$Ll8ռ9xx+bzLv>S΋mV(pqLS!bKxܣSqrnLY ظwF!~1 ʨJ'bOQ%#F% JQ#m'7rǕktIRkS-me<iVwh&WNcE+U2G{#Yڪ}Bڈ]Jrls)"W NжZ>A>p#vM7F[Zm' w ,]GF:xzz X`-+\-nj3)Ï/6VZ݅NSrG,˅6N<@ha[wK,$Ig7j $<;~h6v땤T}+G/1gt Cb'f㜰8KI(6^ZO QMfm(BL%<:wyƮNUېiш>Lzfvł|r|Dcw%1$4Qi D>M` ]$0ɐO}d-=SmOnET/8:ܦΗCߏHGT{7eQ*xjq /2\[SʥK=I/QvyG\fͤ:Ѡʓu/ZW 4Cp@NpdͷAIX+[6# xҽxr*J⛛n(Mr`= EO#VDCI0Ǘ MniV|:$;wp{}<7{ͻ32j@qeA_O6VxXiA@u"Bw<T,,ϡ/=%u`JFlv1j,(Y|4\qgp둜SnfA+vJL2fǢ(U',rtl(HwKؾf\UJ|Bi4q$#>QٜRt% 5pomjvpW( QUBZsef4ue]o1& 7}=jX y1"mj|FXHP7٦7TLAԓ@.8sPKB8J~tJaBYI5RD&dq4Ql {] &Wd=Ѹ Ǚ~uܮ7YNfO5uiI ^ީ6Xǂs);ds!vmu YcI':Эw޷9p I (ie2 n~LU&K{/& o72IޅKmG("5-]yMPkZOȯVY$_h@| {dtvpCd[Da@ |:)Z'rHy͏L~. ձyrWjaBPs f 0$w:r !~"Vl͔ʅkvtޯOm-F\81X6ɞ:f5:A\VYBQie Q8X{4-P9I\W;R9ʧ9ME&ɭ+OL,Y_%߃J%W^o\@G !6߲V).7\|)\ĉdFY7j V0yeNd8IErJSͭ%, 7l ^'oȉ,]S 8I@<1-y†EĪ&1\lxٞ+4lC~C&=:+ /,5\ٺ` <oGbo{%Z!ЊJ- Ui[BV d*Smv9ڿ*Y|,6#-F9^aRmw! (NF] ! 'c=2$9еaJ}>lxҞ1 $-K@AaGӁoOyiKtq-TOsH.ŦHuUk.#M/pTI,\V׎cꌚ hjd^;pq &D[U3P]f\$ ͡tE3I0&i rS`c)>IZ&㷲Ša-w+,wEĎs\+9( T'xD }aHCICV96LTH$tQ(Mn2cT,[&tT0>Yە'ݹƹ4ıY8y>gٌ&gGFԹt$Es`W6jޙOxo?<4[bdZZY.jVL]Lt,0Xl2J}EnM:7qiQ (S:i |ҀqOZ^Ԏ7'zPN1ֽzCY$,{5`b2)0Cd|9B#A mo9B{k;E`Z)Ƙ[c0F~*tn W1ib9lxk<& ܮAnW {X[T<;:f+p'XI~H&.0x%0 )GA +gYK;>D~p)i`)w+>Gg9>P%4"C$'eRpSpa,a73=5o* |t"+~^dzܠ[{}mq,F&@х' Io)dJYQ aiwn_#nqQ qqz71B' sƧrKWe%܇qoxׅ܇zw13bǽ#Dj^ 6FqyR)&UiѤ*ػ-ʖJkX|wimg{K2BbNā"1:4Mn*:7',ͷ*_/}>2Dăz5Zts R_Pf2a"_|Z?\RQsc{-:G"ZJ֎p<Ƿj8^8|i˵uGG:?6"Oi gċٵ3'B޴l$e}ISwc$*Vx^ S7va?_a~ȌnU*b(lKU[cC0/UhMg!-FJ Z<yàFz7WdYƩ ޟ~6elAcrvlQJ?2=9HDs\XWV?ْl$EH^.qcr@nΒ9預taO1%PH.{]Cd: 8F{!rhbpe^g5]u(#/s"$AkDsw\3z_ /vd If]ңqprٞ{=6 14A=6S5 o./+!%]^Rn$L+8\:+=ETTҰ?w8Ҳ9yw:&}xhM(9:9 IwFDC@ZZH!^1i}Q{o@䑯.9 !ڂ_nHB`jJatlHh40k@(=Oz+@G ,``8E hshL;eHFEYfwN}Z7$ |@RKy&q<Px)3 $ R\cێg,jRG&FV r@aRH(DRH䣬?1SJ:IE;~?J@յC90p^9\V鑓ハAf8-xN˷B&]uEj8@ۢvA#'/O4$*zF X mL8DmmS#U*/Vjꄴ| G^"ө-]pz8ìnSt ZpY9Zu fʀgik4zVН`j}tQa9=ήq-Qt 50U"m-cr>UwI.bN5F-t;XKYY3yS#}֭Tmoy0,"Fx 58x;:S{ue'n[AXTkSUe|pq? o-95x1z}GjSFҹWuHQ1`;@{'XK 922|Uhyvrqt;_ $ PcK@ y,5t{ĝ˥?2]AH晃YWI0q Ȭ҆5f¶nl@-]]wbv BJl!uAi&z@]ɂ*mXM%<;&ޣMI;O9c-5UNGOP{YcѤz Ҙjls^Z[5bHn*_ tV'5օom@Ļ-U{"ݚ%je%, }Ij͘}EwuH>'H9nE DUM^@)rR np˭;ElռC+x M&槇{x1 {הYl!:,97hͨQ]<Pk>R9&0oO{E.O|;a@qcTń|!ޮ ?h]o(Kn,p,'Y.S&K.BMz1YL61i8H^`.٘wd:LpU`,Vcٿ_-P5,~ л3)`, :Luc(옻9C VuGqc|USH2+yΧ?kHdb$O*r\8Nh,tëPʋՁVZSR'gx4靭cND .ca`X](x`S֮oJ BM r> aדp.\y%5j23tm˵"!d GA4% =`)as^^h!_`?*tE4ux9[3v MoEE y. M4?uѨ=Q +nh| ,t1LXF8p1RC̿,ƺAR& xX})tLk R/\Da5{i$B:G6yLG{4|ljjDz>o"MT܈eMke hMAyPn` D9Dd# GD"1[ '6ZH;.Z %< ;X\țq ans5<!I'$LJG؋oH3p0vB"qB0v@> *Nu 47g&b$`qCh+5mlΧDL@v @X.9<_!^յ7cCb/˅‡A5Jotb$ύ 0רY38O:k^bNNE!4Dz; kkÿ |}5PNQ؏LcwO|';4& RlFq%KRɞfiM*~3oBW 6]ڀy@i@ON j?-[.ejk U }L$-*i"xnwB!Un_;BX`VzZSnI[6.1y-V6YoK=Mo'ބ G 6b]Aw0hOY΅#! Sq 65Ţ.śYBYj 9ZFgKN0uDGր.>ҌAfy 5K=.k?D!QEy L*$*V?!kڅE~iZzĤ;R=9_3D(S]31>Ҏ+"F -0k Mt?5^ f8)ךfE91;&U)~Cd(ˮB'yMX^4VZCtu}F2ҺCfb 3)y\,o pʪ(Lc$P-=hGTP}B1)QY |T xCN3>S2O~xZ|Ѻb$%?wSܔ?~ćw2Z p_؍'c>63峑u5 ]4=X+T'GӮAΘ>lqGl4?dQܰ.!1Cw~,˝ n#ӭ0&.lǢL˼n2+nMc6"ҿ~X^@j,]N,ՁӧM'1sJ9HE~ 4-V6e%z@(ZݏYW@Q F#)QX9qATD.]: ,{]7fRȱNoL]g=쿙<-0$Tէ)7^TfI(Vuc[e`*Lrv|p>uf?IDEBZR&{oJH1/drcl-|-(U( *iTY $0l}4BYG|'sgνL}$->ОVT"Ʀ^!VV ZyL_; ?MAɖOD'`͵Y݅O &Kqz9iHuӿjE!SH#oϸ٪X^C6| DzXZBD1#,8[~2U?b̲%9dU] ȞM܊2 lGFtd PXIMhSE6T\|Fvw%0{zLG5g5fR_U9nmc4hEZkUxbG?jk]Kng\4\.גH ?."hG&-PiOBFll7<u~bttpaD<+[yoZ0}62La_&dfPCG3R{?\9"TGzr?V,}.]J]GAˉ& 8F'1>}~ 6כ A:-{:c-1P}(!ш$*˧2N/VP`nӽsB܀EN#lQj ]a.Y?̱:@|4t5OD''3Lr+ mO-*gm r&GPvgp-K,k zv2elJ";_ 9 A C & (dlꑱ%u%61 z?5sAў;p&w|'+ޟ/@H{Cl+K!B]!6N!@hL=2kcYYY]a:# _/@WkJp-N/B#D20&ykEGÚ]j>^e(:FQ.XGVI$ևE.]ؿ@ʥg^`ˣGac~܂ Kk(yHx-䉀57ڋMӤpn}GY8(?YtUhEt`IuAaP ~.&, ȄJh%2M D)n1J,v wO ִRu+GASway:Ikc1ѣx,#rl%1WTi jff%KMƏ_ߍ:pTQНIJf Z>^Dd I.qQKN԰k!.:;'C+EHV\{)z&și6r0:L+S_\hz(Ɓi-7 _`#u@w#x6IY{!RK@ӟV:7bCxC#u$Z* 5ȇhJh75FƝj'6#- wm>,4qZDε̋Dˢ&rJ:=AU+ j~o55L-`xC,._Hbu+"9`Of\XB%~_!rÎqj#4g31d1Kr *4ԃ%!DA@m u`GBcL!B_R2"^0wKN>xM滝)s;@>qK8`|ȞǾk&xL2a~Dhyɇ5C H$ňξ㟑&bÐ Ŵz=l@\%0gS,0?uHLV'8A3'TQ1 |,}ȸ4'LYDm"5f4`bPSK݀6 yYhCP(XҞɔuH9ᡠlo;פJ{I[Q[PgRxc6w#R”B mYPGw02L5 s<OG!Wm K9TNm@߽u-a~u!(^!k]C*wMLW5!{7ͅ"n= :OFӸO+lg ]qfV =,9'3 Y^@9NyA'% fgTUwl%' \hyc=KˬŔ{94]e3yĮx5LNw,g>{{-@zO̙yKBwP3 ૔F {s,a]^HY=mBx /&<WklӮms?$mGˌ>GbFڄaVDSt!(}FheHIxOK޴4GQ*Ay,҃?!}B-+\=MۤUhCqaA12 !z|X]'15fh…lFadØ5mDr&J1q.!0,'!:[JҹJ?)בOM-C='Tto|QG^$fFac/yPZ?7&._Ӓّm?#N֓Lb$s$[v@Rl*[R<Tڸn =ӤG<^WR f <wUj2aeLLPM[0,Vx_ȗP9鷊;*豌vv%8]O20ߩ&_ O|ٰY%yOp _t2Rmu_Q_!N1UOn<7 @L7ANA8W;\R GR5v[j3<5eYcHSc{gv[֘ R o Z/TW,ON?*A"PKŕDQIC; e" Ғ z~>S+!/?5\ ~qځ SdkY}jZ u"HZG5X3 tMN.V7Cw6N;!3vu/:}GgYkU kCe첰vii(cD!|*ac-Y 1a8CAD=p'B"bd /tڟ9J=ܳ>6 [m?hɇCƲ{‹al}g֕ȼ]aIdv{CՊ<0z}#Q:@ͰGzC r$B˾I$f2M[6أ!=+DJQ-NrDp3I)>RpT=w֟Tʕ?V eA +H婺dy@5X?X4#uriUZRb^hld)Rd4Y.^bE] a8Q#q v1nq]*IJy#kaA9^#6Ge}μAҸ3Wx*s_%-FE L [X_0p'6[oU\v\c)~|hI4>jlOr=*"ͼ*4[7j%EkJYM//'RG;"xx2 ⵴D&qa(?u!g$[@)(9H(ﻌ3E35SG%@@ϵHj}hye^5 <'Ajir$~4.Ԡ{{IOs7r-G 9dcm~vgu0_֫QN'y/"%1 Z`4{tNi5Xu^fn_=J!c^6n&_*4Njnrʿ;n'Q #; PJ)ZjWSg|)KƵS̵*ЏeD1.դAKJC~˰V_~S 0WNWR,¯UqEݛdO2xr3q?/Xe|&aԨ]pZS4 8prخ-M7CKoWs`e̗q ѺfTg=zX 4Qoܡ:?nnP KoDH[yu{Xӹ՛D4W#gǔr4Gߏɕ+ZZ ;pQ*ӮCFlBE?:˙][W+)\Tהɍ &0^ _|n 7H׾C>7ssܘk~~m oOBWy[qH̢oTSV]&YmOC0dvƜ&镰@pG#ǖq7lnܸy9@Mg% -hEnK$8i-"}1;Јeiﲂc2V#>1Xuꌒy׈<,İnXF7-ΘneZ?>W~c*ۿx_G4y? ~nhUF\ =q0HTkHKK.$(bjRҴgϰؼirW2=3l>4zf96L~,c 9 &s)eJyGLi1R(8"HZ~ƇT$PAma8lcӍbu^.6ZZzk"yֆ G*PkbRh*Hf&&~CSM;_ݓ]o!i6m փuGvE0ʴc|LGęh?nцmŰl ڮ=_0O Ä Lf Ԯ~@ӱ8tm0s0p\~͂5޼SâM_H+BKM!K,bǔ:݌,Xį6H^iv1Wэ,SSē=XUuQJ*jfjmbt9P9ibW#3>Kop;zeXܿE1EM_YəݼWШŽqAA#R=ivLvDWۃ@rtTޢ epleJo&Q#]NNu 8ml$e-;+J{ hh;OMA'VcECٴTlM'Zi/2_;nAh O-8Z[}TumhDHovd}QeT"%&dt`[Oϗ|;q#_g-a;D^Jx@"*kOpV!o3e? q ń֝be?geh)tvG$L~{aWYD-āi̔X.7d$YB;pP!6ꫭ7t@pY԰%[yK A N*nsg.WPR2!f`;u7<9Ib,8`:X}JϢ>eá?v'73RC֕(l3ԢYop(m!?Uyn2'F)L#DZk/,P=ZO ) &S)=R[(~NGiC4-jh<L1(v'ȝ! cN&"˫qRU>cfO"=u|ݮ -l.$D{2ELo9NL JfKhkpcư_ ߟ>0;iy?j.ɹ ˙@ibI=ȶ^rq>d!%+k a*X1y Q=OX Y뼃Ny}Gi3/EjOoQbzbr+TC54Txxy&(_QϠTZ-ù:DdRNa/ =K=4,eQ*tI=UR<,_DxZkl}:i+ ++MͫGy'G?e-:=Dž+[]VG=#Ú (7{zE2>`GF`tg`d,9oJx:/8R#΅ 6;_D`F"4Z# 9EƳGawSSuIu $!C0W%iB:rk uElŧ%DlT6?}j̋M]o񅉫Ok׸*h/7]n3knx@ ʑAh׸9ן<e9p2%f _AE~}܋ݏ x]q^/JctSHk{3&. uJsw,9yuzY%g⼡T+Ho$4dCGAؓ/M83Z %QϷ-+&YEĿ*B?zk,>T;uϢwg<" ̽W yu^6B1+1A#.9 (:Ɇcמ(ٕ̤Ml K7n"``)nD-u&ڋ84H2unFlzF9d-f'w89},( a99шUF "FO)[%vb~2X+t߾7$w~Kغ.13xZNt- v *slt* g~XYC:I 0;Y2o货? qǏ^IqmSWvo+'L=uq-Nm)>k=KR^I #p0?D`"С샢ǟOD|NELN.xbO!_SυLU= iS({x!J\vV2!qPZpj.ėfFC֚/{xoT+ >wx$AlËJ=1/VW1:/^4>1DZU)΃N+tvF0OB2w)4ٲ;|~-@+rc3rfv'\n޻~[:C. [FGVBUG8 0`{BU@H5P;&(uEZejP>@Ơvj *Okm]¼ q IUs7+79uo=6cQn\ΕzR w\'إH[u !P, fqKSu[ zKB oEpaAE1I2I*(wn维9xcĚkZ &9+JD"يP|$Զ 7gv3&6@YyiXrpkI{jn𖟍D<jQ4n Dwӝx<TwǍ~Gݠn _.[Ŏ}p>˶ctb_"kvn0ai۷~PZ2D>EWn NhIO/y˸{Zs8_oU wo8eL|ǩlV/|ix_CKm}d:d,p8f8Mjjnu֓zd睧_Z^tcVNmICW0!GE.1u` zh)ݨԒliaOtm|kFZc0hX"K/nH&aʳ'9tQED@q)߼iw%aqS5/jܐ"KRKnϧO:"E Yo)XK!0$0mPNH%[+Hm ú֯cNFOU]a1tۗ:ы83')X T$ɻɟo礃haȱ-7vfuGHI֔TV4cN 6V>;@O;~NY[aOg@ckOc #fJa\C9B 9jT7H>ȳ9\BqB1BEW=>^GS,M_>/07`zU:A0=r|Tpʻ}-P" VHRL9W8ˉ 0wKgAp˖ \3H@0W?S˴(5'Dm g{WZ+uDq !j, [\8tЈCFT5+zjd4HvN fi\Bj;0_#e~.3V`ۙ3YilCZnAs P5dƲkOͬu:iӿӷ&7Fhh{6gd=YnҖ/|C@d"]XAg(/9A]xt{;@dž{"C;/0p8fؕDOTD4CXhu1z).C5qx|+B )t^f5kh* a8%׶MM]ѭԯL>v}veHCRaZ/[.YFuh*WL<@#KI[9.OkWYQZ,c\ ʫדUht+296كDg+t-0H17>fsTtu:L^++`\{>k+SƎDA9TN7tқ0`+-{xWWq9/dpCfa`஦㓧hWQ(Ll(nCddNǪ+mCKiv$socuVP_]!tjt/3 ~ @hw}ezZg0&{/H* ԫpBD7퍡AKHОaOS)kBl5GZ*@<*$߂4mz˛›T)|طZic<75X@Qpb-*}uM ~V%:.X>K`B՚7I:54 gi1CPIڇ\N?\*{ L_;0 n=7#**!Gsyӧ^J!_aڎ*^y"jrv5<=,ز^ט{[!zL,Iiƨhs{qě)ۉ 5L0$&Ǽ='D|<\#?'zs ݗ(TB4C`gݖ^<; V2u(CrcpM)rVS1Фq *m4AH]h=Ubnhʕ5 }ǬF/<׊߃@pZ GTT5P.hi+Ze/OTAO߾s3̧Yt_m8ѰYVyV))+]gte7g^Z4~V:m*Re9tHJX"o_v;^@XfQ3L6SKL›OaJ}ez+~mYkiyt78'9UY`(\Y$~\gO2?է֜^ pVTri|7鬠:#9bK0ĬC0˖F'`{i:pFl !~]7S S㨻o3P iPn`hvm8{qmڴKzӖ6TCwJsB4YT>Ԍ/Ga/OEDu r6~NW5lCI I1Z&QȉC51e@ל="H S˳w'# Ɔ_/&i78n4j Ɛo8U&O^lt QIl: Ś,˅hI3n޷~`mٻdM' +d=B'mLѴ=idn{_pca Iy0k4A؅0RiT*w|Xuz{ vB~(1%(-ؤC{IN'O%&F92Q]ezv1œ\Ej! X߻#*E؄Q+Xė@xWW5꽹j ؤQ.5;m̖[*죧Q!C3Frg;`\JwDޅ)=JDf{ӖNKSjϠV>:| ѸsB2Ĝqa;Vhq5)gLa xhL&;?E7qvj_t3 r/SE³3`&ϩJ|p>\J[?EWt*&8nAշq3o8X6&߲Zq !mYz_e_ 8)(j{6G0rquTKr$GŌ5Y!^oq$e{{`ڭ}[.1C'pٶ^J9ٜEG1l2)%+pd~N:@EbJ0@.?"WQte#nQãlDH[q^dF@﨨)Nu)KOu=ߞgjIt 342Ӱw6H~7'tyKIk: &HQGKbuw .{" jаe%P 9,LL_GUZɾ$(Rw1Ufl}fp1,S5n :a3mHq>3U`68s07vϰ?'܄c Ǣ惼R6kyBM##)&5"bwAi8G%ҫ/+Z3"Te[?5!?d9 '|D[daO1(jJX~vkS~Lα`/GV7#;㌍a+X=E 0n<yyp}} [A?TT8s^grdd.-1E'VX#S b9vLU+jcA FX0eFٌ`olv"2;SХzt:U765_Tr{PjkDD(^wlм7,H 3jvܓM2z5ScU$Ag8^H".ͣKFP/l' ,_zEӪtߡTɟv5s\nVH\T-ȳa3J'^6l@R'R1׵CMox 0Bl1> VJ/ַ\Lj 6ѐ:' '3~<`4E_S ۗ2 IXf{([.g|]it Qؙ,%U~G9gti>`%#JsMVpZEb\H;?a\sxl1a H_E Y*qB?*oFUg*AƛeO)z~Ann/MqDpIkN~]ݽצ\2xq_wď, #WR?y4M[%XַT|\xgҢ|^gby~}%i1t+6g-Eg|NJO?-$$cve p:W,}]s뭬b]I7Vt3t78Yѷ"; qYpRyeVِ[~?~0/8\0}t_]uMR(9ӎ"'E>X,]?|jG"Gl E%:mEL51OjU>1W<:U4&"(Sb.,He$6sB>xtYHB.ś=㖏i:ܙ5)HW@Tl?jY;f9O]Żdž3<^ ؎'N}.[c"$xiAh:+ m !=ӣ84\#HiiIx9Gu|n֡Fc XRt&; = ҝ&s:6aI;Ojf"0Jp:G]QkVYt~¶p.JFv%NF~izXh8ɦ7s?ach&ڽA6RjeKˌzZ&ͺŀN8MRI>cч9Sv1>hhDTqס. /^Ƴ8@#<^ڴ<7Y㻘l0Eqo0 4B &쮤`tP'98FkHRTUqxA+ߠqv'hG1K}HI EPh1Βg>xqOzL'GjW@0F$MuƋ.;ƷI0@sacun>>Qb.H IϚ-y &kT:h/ug/|6R?~h',Y>[Iѣ?fAXMJ'I'\H*:܊a 1" 4EdCV`%6h+"k5 Vt Ԃvp\ X(/ӗ/ۭCkc";@PK'kz`L 6g`8 1{(NXSQU X{fhV]((esA|`(}BA?7Յ !Iu¤Re=Fnn'p]2Q$׺.LWk[xW:- jQ,ZU@*O# zJ_d'(>2 Ҝ/_<)^#]ZFGu2w@ Q("NRT߿5t01_$jubn]V蔷{BqTquRd\5:4bsPT>K*ϿLDWD1_jM/Kg-Nq ZH`y7VCGٿjLwHn42\^`i ?DNx7E$*- QBphX-~m\(*RBf1O=@j -ZvfD42؂Y,Gv4Y+08?"X*E (H{z{J.LIn꘴j"):jowr]=qNzs0N9 LOQB잸3˕Tc_Wl|nRH@%u6]%]zwUD63f) I$"tG{Ż€9rGGH= .נ w51n85/;lQ?[L[l8^la-V5 AFa.gέhWOş[~LՃ]^cen),9´7?UOtm PojS 8lL yUA((Qޯ5J`oԴ^MWmf{zVk?Fw!h=B^U6躪}܁cŧ l@v1  <ٚkɻ/ o19$ xMvH}jY(RԨ"SaGKu}q+g}(IB:/UkS'#o $g-ɼWc9:?bJl8@4r)%ʀbe*0x7ڕ zrK y br&юngX@<]+9u4 5k-]$Ziw<1WIj`Fph ](Tpa+`Q B. a8LFBBc+kjR^ Uc VE1.PRֲ[pӓ3eW 0fT*^ՉN50TzuImmQ9ubHuTZ^7; e F!2& HCb ~JxץK:{_0'FX48.8pfnkI$ |71?p6eE%Dp @zqxݡ.&"IJ4Ogû0 ѐ27w=הp5_$Z/prQGܹՑ'8 ~G26}l;[X͞l-|؇8#j*q2rcUli50x?q:W+6 M4`-]Te L~'^旇DgrH[Th]VgyM#eG:EiWv+dI\PWxbxK$lِS؂-$Zǡ?8h&[n:bXGt}4 =ep]HuObYx:/saVPj|,IWL}xU.!<: I{x n~ƐQaL.<,dT!PmoeABq pvx/1 ZLmO?\>R/3EKl,λ`|?\xbӨWU{L+#\Cψ3 ƀ~j_Ii`4#9Zhs$f…,<+ZYYnKrh˱o=nZ%oz pm"f;ESX|޻K#?ϳoA_si8q}ɮ2iE+)y49AV&B:N@Rm˩1i7j E ˯Nt4/uH< |]-xv fpy#'&.]Rэ$I TZ%^IKG0[f>-TlsEr3h !|H,<dsv'0M3z>9 '[.R:Ղ'SeSPrgRyB.Ԯ_50엣 3C+B$6 Z̯E(~Yӷ4بh\.1QW¶1MUXX?@GWqjA0>ҫ J N͍\JηwXnGb1$tBXpdV1ViY4XDHz[D[Mvfxeɷh ?nϦ 1uD`. ^k47\o#NJ-N~ Hn9զs7΅3:DM4(3y-ԪyM2ƗyN#p uXRֿ ̝{+ڪws_Br#o䔖Op^ *x[(UX؜!fuJDJuHP_}u1TcEzhEI|?t\yɰq:v2#XEEqf`44Z"Ζ1f6}+]y0&|59DZZCWEq;2.XJ*j"[Qn8A/ )Yc<N9T&#F܍3÷ߌ"f,_̖G9"Cf Nb{ԆckPxgL/4O+byW}Z=i4j_!+`1Ȅo > _rkx(t"w_BO"#[hVI@9Y? |Q~-#`Щ R\"#b2]{ CBYe==Sqpݎ~^]bsဿ2j ηP-af%PCxkj"vߣk &ɾQr Up4ۥ Jmw1W^H?ug,D !'V%A݋Y֕_Gx@=gЏxLUj" L#2 uw?/fW xe~"wC!sYa{ )}2bd9p΋K*4N{A1xqlƑ©n{V:$(9V],IƱY˵u?Ak0ꖎ 9aZ~"(`QZw:t gZ5xx5cf`ϧXM;zL#|3 |ѓS8Ӓa=J51~:mIvBTy s@Te"UQ l FNhziBzlV2Tl]#*[~c I{Pz)AQbew0/1sĞ/KWfC :xk'@*{ j:F ы=I h; U[k%|ۚcz6cb.HIWLST̛naTҋ:H` w] ^9lINfx/&!2@?Z >5oH}g0MA(KE;Tv}kΨ#-O3[*a#(s&zM ?3X=!*$|6\FT߂{;W^G(_igk"VQC7YHkxL 0RlJZ ϘlO2,qm2&ԅx؟?F(7=CymЯHuȸⰡ}LraUƱ=֭HJӓvHKɨ(%-t\る|"qӋ.Fl\އqR+V;TƬ1diR;*53i{1:K6@`34#)!غ\w BJfTtD,D#um(oўhXbѕDZLg96Wz`'{7,0tVu~\J* *@xr _mryp6lm˾eK_L _$"jrMYs} g*En0KsS*Z<"H? 2A4Lwm{ me5( Iu97ce L-PNW~uN/X;h PUh렑/Oh&R +?L:tq d &`uN'U}cAyHƕrOY~^tҹ4TR9w~_vüQqzI=@ezmEgoBTzұJWXJQe v3cw"\_*d)b!HU[ߑNyn.wF<(uIJma:hw` 6CIAUO{py:Q s ֖%8“2abl E?KR4TxJS[QGNdhE5 !S9P:|±@=SXs Nq.3=G\j]^5 ?x6t嶒K;Q(q((/:=0ri},yqn9F75Fh*?S/9R?g6~Kˠ6a`a UX duZ̞ޣjeb`EFlEh ~@:<߅~4LQڦ@k젔|Q^x[ôD@N[ݿXQ2(! J, ji?ȃo"@8y\>qPr3{+T!T}?AUZH)_ $FBj)鰋S)B?{gMʤp8w4:*^wD|Ҥy(i3Z`@ Awp"b<`C'hnov1eGϠ.hW)_Deu61hM޽DT1_W6b y7踁t1jz8|o7*j?ۖ[(| G hCsДֺ'22ZaUު aOmpQNH7zSSL!{ޫˉArJ'}m`?%;/Roakiq^GR+8hmE D6. Jٞ>Թ#e\ :|./?$nacIEg]vgٺ3>ot (vjȫ* 5ZՎEKI־ʩА@HڪXWNQ?إIK=pwv vǦMEbR _ϧi1+W;Z2D$<4 mmaS]gvpbn3Ip{Z?Y)p$&W.:QdU)obr +ne7aC$,I݌YOw-ъX/;x95\GȮϻX׬h6(>"f g^eGY1fsE*O[S쩐_mb6]9GxC,]\UɸE$| ;]Sl2th"`6)\ Jm2:z hws&sN[I|h1ggddJ&3rOrmRYWJ dl9ER, fD.xĞ ˰8h<$ʇhF$T~QsP9$Tsb*ueG'.{{_@J!:bw $03+h^ ^h%!_gt1[ )Tuy}%RC\g/4i_QyIzYΠOE:ς?$AtdxK7˨,O]Bsaȋ]>4PjU X {k'ROy0j*u6+L^mٓR8>\{pfaݏkiMlf eěxcjLvXyXYK#}17?$+>{㸸e5EbuP܍DZ$@Pβ'@36 T2!QW@}X~jz!玓k~Pw񘥿љ.ΘHjHlûʙ̢[P3V*v f d`튫:#^wK3@>]Ҥ-O87dݎ_߿&脐_4+d([6e ?C*A#zN^:vj7tD[YkQ۠b!7*.aiBd_'bň28ԯQ:=p5fcy氪-aLFh([X~# 7;?%h"Y+4!@9Zn~e/&^&S9IJw4A$13_';A9d(pe^Kc&&KTe`V$Aٌ,MRY<5(90"N Xhՙ]YFu4[ʧ(y/HL?ڍ{ y,ta9ޢġ%Ltzx [T&Ƹ 4K+*q¯.29_jk(ѽWy<@y,:Rŷ(%#h&z֕k2]3RBs8tLyW։]\nr5=@.Lؑk~&?MvZ޿f6wu#~HBS Rl B~d؋|ay QT> c'a1HigK; [G&H'5+a;+w̟|ɵ>@մu8 ZWw%#[ [vO[4~9wGf6Xg=yb@oadA2d6IO_E䍑A@%8 YJ˯Bx\(&@Yl^:mU0'{Ũ;o2[; @$m_ةK_JXk$|)S;snxHA*;нU2y??FM.8JFpͫ}Uݷhy@9d]{돐 ֧~jcH}W9eNoXgADH0@F ρT( LPls;~nSpg>sMWkRZ\(|=1U[o@ \HN|pjR`/:==&f7'{"&ቕ3 b=x FQN:U7-3f$9sIM ǂǞhjs558t)fvՃN y̜l9ĶFfQ*]lk7[Hg NNq+Ԉ, :Fۯtq]U\ ̑Dɇ)Ww5#O8?ı-m]o]? VXo (^4]`pʹ{*`FzĖu CAZRz~W. ~d]ۊ3R~eC eێqaeΕN3Ydٺ.:G˅b Fx5+*?u^$ hEQXrEiSv`?nVEsÙ) h#,N ٕ>EE-* :p E/ eY"P"&XeKM]ϕ0[Am(@44O4! mjdž6zoU-%Օ]1\q/E(pUo#oCYN L OxxycuRHD/}?`52)fˎyՀ 6`>x _ۺ!DvwݖF0zhp4biUH.%`R*"uYb3Ag~'º-~,ەS`Dr&9e0f>eU~ZAeŤ)o(*]#8$:Rdt>w 8؇s9qYyj3C&_%|iL)`3bW|JuIX+GzYmuWMC_FoQs;&΀Ӽӥ&|C/O>\]ɊYy7PRv>M/9xsv~G7cQ8zYCdڧVMl4ɶ9Y7iH ID1/()JْQٽƒkuH5ة+=7jio ~Q} c@}ۛ*5˜Z/hRЅ~=0/lEqAKKLUT^JQjOM+v{>!q\TT `cU6BZy ld3\gm:[dGS5 E ʕ㇀HϜy*&TM [y. u?z"9E*  ],[%^|t¾#cv# {-%IgQt"jƲ9LAyp|l<_G wևG@_>O6/&{6'spS%A.zvߡgE#(ߐ]i;aw@T"47*7+?l(v!NVprCLntbTD|$A5M3 *`MbwSPd˓_ qjcTv{eR=S\{‘7>71jLOQt9Í8x]yY]{ T1ݕQߝO%ܭTEU7Enzmgr?`8VN(*링D0-Taz &1;ԶlE;X@@\Ϩ~/u9ՍI@WovTvSG\?:)Tv%AA inefL#،C ^r$l4qb>|<}=ce"BI -v_vت(,HA[ݫ٫fg uDL TG¬5^uߊ~܁ۚ`D60+u:o^ h©nxX/, e;ż},ּ~k<D+]<37["عLm%|rluWhݤ{!^Nw8b'![ )?.-`oS{IxTLř! %CC-_'"Q-LJ(W Yw+_5W]@d{Hlc$޴%<aU[ X>( REA.=^@W`T|{\]um@d:fȳtyZb9J_H> ܒy 8 y|3V-V=za)CC{o;;3g?/uugx Tl cHb )# isUޛz RNqKm?˩ep^{0i:M?Um(ldȞa~8,U`"uȭ&)5vb;vϽ d,tt"fbZ<pH?Zw/ю j$&لwKG)כajk?2k,AUxBM*C pw[5Kl}Oѷ{RzQY!V(SZCT=E*?XyV_V]8o=10g94HuI.d4IscNc']xÎx|1?y}}nD`|(Ǩ urDL ! áDcX\%+/&_%f{:IZj_2HUO:!$V!yc|ހxX^FےMK.X?@0K$CL˶ӟ⚰9F1>K:#9߱iْ5&Y{E;h8zWFWB ^Snab#TF '}9/KҍV"CЗ8uv]?.bڠ65:lK%iYi!qMO:4ngQDg'[9瓑]TWQoniHJ9o@tw[Gaf1"0mS4m`ޙ%K^ 0Hz$!iGacv!u AQlFo>W+إ?t:+'͉rTG'.bf\w1' ެbUnE^ߝrwA؜ +Y[ΫˡFs#{hn^ շd_NTAjs}=reƵh\QBq!Qt{2㏩uoDdtռP.,׵ܦ cE*цgSb2!)%[?9Zҹ}yƃӝ.Gfff?NJ]պkԙ=4ӳ# bw"M+؊)" EI]FJjpOƮTnj_cN ydL,^.!4';̚a ڰF]{ezf P0u}U C<ϙ'C =oޖmiTA;s&jI5Y!9{ }hL2N]˜ޡ)vGJX#4O}EAt (=L<4ڻ_KYS+![cV@C`CUs7W'G:g(MT-k /a$:w VG2qBtJ(GAȋ+Ć>jI἟}hRnhI/o3w{[bl Ty<If˴|ܔG`bmQJ+oJoO4>‰_o zXPcht6_1bU|&AhpyqCPPКȊ,rs1($jnYI)D`yQ_lцSQ֭l®F9q1&؁uU?o?fi`P0$o8~~R-nOi>05s˵; AIz\?҇S~.Z`&V0?n! [5up;"u+Y2,ȫxOŊ~"oIO mt–p"JĠe4ůƋ;,hF0;#3au\M\Z|q|j T,ba?V&_fԧ[i_Pm R0 L|2.ZnInƢG.k/řL3# 1xO+:-1>Pi;\^FFG{^M@5F6v);m,U:r?;٫,3Ki'ւN|x.B:IsįDҖ$lh';kŖ8ț|?GkY %hwvӦvRHub/t#6GLQ*FRl?#{x.'wKc,s }l|,^5jeׇj9!-G:<+JL?gœ!yQ XKZ|lI 1%g Zr I;M#4c~)!oPT:dp8?%{9>Xu!?Z_) -?sqĂÐ xz^6EI\ZɔDCMDL9;_3Ȭvr% cˁ0U L1鄎n74"%2`#"hr^rOv5cz=NlR<yB,v\&M<}̐k^ZʨóZ;0X MR 8 4_{x`%xx@P˂"OVa?O9쯵>{vQ;-N;1הR7I+" Đe8&)Vvqm$44Gz[I4p3q]E Zmf@^}9.D?[zmr49^1Y+~3^ xRHS{ҹslqՇ.cvs_y <[+oo(lG Dܸ>t? m ً91?(!_k4.ؙh*BH|P)P3gɌL&\aőr6:Zוs'Y͎Ѥ2o>h|OX."Un;ݏoSb1ZoT%9 ԑC }0z0'iI[j?pIƯs׺9r+DUc~m߽MI$ ֥HIjI{_Icq=M捎MjS`$4%NF _Z)uf "2a] 2:ݾ ^+BdKL镉=Ug^؆Ps@^Ig>5ڼr<W` >0O):M3ª\m۪Bt\~1"^&rAw_ɶchq&m\1hn{,&,EAZ5n0tBH"[L fa,dĿ\D/sFQ} Wga a3~l^0>ek`2wXg TfFU١ŵF{Q,5L')֛p1x( c.weZ .N\ԪDo˯*vd@A/=Pb4 RAs1J$' J@6w\QKn]VjH75 Z>ƊKmntQ=@LK>:A =De[9owaw.mMjGURc(_BՓmyҳ"4jofAN:%H';R)~i.mrVm O`<y1a3"VxRKdpa?38,i|VB(kh'I2ۺ}_L /5͍m\q HNϟp2Sî2H]^;R^@5xE 82p[@~kkq3tmr7s0"ths@' o(u-૒ |æ)# ĭu8 ,B.wOڵ`ubHI²Y'Gڢ;GKݞ#+c鞎ۇ*bMl 2D%靖}w>QY?8;3-%;z5٠-" aK Z=]* ?_ښag;MKNuy<1l:>0B1lDN w=PA[円lw1"eۃI>< ƚ 4S "lP-/ yTܙ-:gZls>PIE.?b-^Ńބ~@,{a(RSD<(zba$ b Wa  (JђTRӼ8Fqdʬp;4By[$>}ly(n>VvCd al!x2q\r~톞L#_ØSgO <Jp;5O7 $lFSNu d:(yjt {XؼНbH9w' 2LL+ٺcm|ݎZsFYQ…sB X =';TCl) }z\걉jX fs\]/RDM?Im,Kn?UN*}-$9H#`f1e~x,LRUj\jֹļl;駯"5݉z#dmߟK~VrIky1 j։eKYixcRlZvi1tJ$]gm[ !xpm~7gf7"Ǘ 4\f0ɵ珣Q*"-أ7id7>(~N@5xhp 6v'KG[\·O;W= $6flGƼlbthuazAQxrf<*l}T\LzHx*5"/ɬ jDwwU& c#z9l=_`m1|`"JV7 dGBBY0Z7퓮3Ud.TL1LnjPL$T}qê"cɇ[3/R)[#,m<92o(Oƥ葦X1Q,S]uvG_4 v"='7`g11}rd<ϞT^Mv޻XQ$(f7:V`[U%z^o(Tp CU,ٞM궘Ǥ^;M$e mh^@wdLvɝ7,"ƇFNKWOԬ\D_,Bw#Ȕ+ሯ)fȕC9d@uEggaI@HJY=N!QX.&ZFZg,t >pq(_9u x{ܖbe$.<SMN;aL+;(hR T[FP}{s <]ww>Z-S]m+䯋M ;S*1HX–R[կj[Uv3AQ/%ξn'^RD_3ʼS$Z8//3uh4+EHEYA[Z2n#]wO0b`[^Qpc0+aU9[ U?QDhVABxc -^!ߡQGVLqV4[7hu钐m|f:>"ؖ AXe\sxOeӠLUAGOBȀTj'1i*kUlc&b2SӶaݖ9V¤8>`x9;FUΧƧL0i++I\wmWgښU'=hΆ^z K bNb!Ij|7B Eʽ7I7ZK Fǂkc6Oax]熲RQ"N]_;\0²6f V)rBSar1ikjd7}j zlVKڋTi=utg›JC!01AZ1wES7Fe1yzXjfە ^dʝ:N\|-a]hn K;&,a\d._<ݮ qO5;Ԡ#{GhQp}&si2 Ս?Mvz}Qu 4wA`mvɰ*\t`p̺ЏD̑&uUe5 1qń.G 4luIX^;^b6{(>qc"VmtMBO$\e~ R6 W]x[T$= Q:zFniueP1q&aJH<4mTPx;js{IH~gVsؑo3yk$WpeP TӔC"h(ht ek7Ngzzbn[u"D:8; 㦞=I/!"c6S)+2s7A_<>^ L""a.?.N_b>/V2#5 l-4~ ]h)cGWzҗjaQgw]V'FtPT" !̟ kZCFM"f@_Egxt^ƻ;0K\c߷_ mS 1{>+Jlk/C|D:k.z/ ae"!y,Kaz)i2/zpPOR`6\F(% dT (gP ̣H1sdmL,:~Ņ8̄Fq^i#]4r%<=3bGݯ,&03梡_PߑO[D1a:Tdd^v(sbՅYw.rt]&=Ƣ-nrG8pjkQrX!1v)@K]p9o1֌\s'/?3~~܉fIIH0"Vc7f~lVls o:y@ca2T9Y)#cosϴ*xupR xFe|x %1o|raa1gn PT7|!iՊwW2LI{-/'bXF>s ?g>I%(XbRA$o 13[OLCz='-%xzl:’9$+'!md~ <1q5ןw-,khz&{XFz5ڥԑKξa,91i,kFyE?]ѕYg7lGKg&{ 5|~NY(ѩQn\¯ɜe iAu@_ dCQW^fwPEj,BP3)DF+蛩%Js_ hfip֨N79u "EԢaVEb%F6#KUmBPZS ^Tp3F%@j^0T4~@D5RCބ’'693þrCHh@ܮ{ŏgp+$TzFe#ȽoōZSJxc.@C"Dڈ[1o6a :E7#QjMuP%@TRNGh0<ˇئj/ĺ t"pշPgTLm2#o;ʭfs[-zOi.-)ef54 TտeO)HOW܀hIZn*6 =00^w$.MO֋n3-Rrv͘e'9|&F fƐA!q$]}Cb.(F<yAy:Aa&ȡP.ls@K<zOOP&x􌍬6[^ALۃ'*^ ^\mjob={ﺴϋ S$'5>++~ Dhw;E!xjھ ƺ(9߳ݨq,rCrX% 1Dc2H5k[z w ?C^1I^h WFbKMܞ( e=զ+L결̑SDOzC 5Qnw!2/U9-d2 :b:QLٖD^qkLx=K߱MQIz_\*$:Ӝ\~'t_VxҮxzbC/^7xHV pXPqneQ,)}f5v9Z _e-hu Y Ll^rdgFkpg_X.pԍ pT)NOdVרôXBUSp(EiOJ0`ۤf)z42--~h I* 9#U^JQ88vר %b"X$W*QEnXrX }E۠IH(&[sVanF|p6Uc OK=<0 x 𢘒A>F)f# ,Ufᗐq *kJI{s%kIj |(V_37)8ZkWKfxu]{RT+oQ B8 H>au#N&EΪ(JnΉbq#li)ؐ\'T w gk,cH\MZvO'GD<8ErPypўcK"'U06EHଇLwF=,<ԦD썘Ni{xky/2@APca/BMF螌`4&Lk%E(\}sf# >UյS%z߾딻ZǒX)Nl糱o&AXVϣ2m{O֋f ?jںt |X²(6QrimhX&jR6ܩJ@|*c] [;zz%^D:_ DI`#Ki+Dy6I4 |ٽy|Zg.Temyz p?KdN"x(`9c rGRnʖܦqbf{Ѕ q'eFqw0txarAc}~^uEټ~KO-6 8B5zh"Tl\T}Ufb%# &P'tjk= 7)Ab %?o68lqӶ,?Ph,q𞑏nJSlng]DPR/E3^̣F՚BoYIOY^2~o`/Q .BԊpQyLWMMҪy 4z XpEZUbVzlwG%$+q*Z9A>MD LfǑ=***9 s3I]Z2 K}Rz"AqN}%36^'d./dTs*2ҿe؝ ]_9p~2z!xƄN>\lڻ >:'.$,D1$(CA`@7]]$eV͖\G^Lhk1&Yϙݯv,K i8kcHTI5L7}VxFXbHl4(%Qf4QȨ jS$/+d*nEjQWP>B&rs6*a O\!Ӻ_kh=G ¥J/+FF$¼~C*|x 5~tq?R+nܧWGHɑ#Ƽ* gi{['|[? gUGL jFrGy*߸N4FbRA="ȸºr^b?Ot s3i H**r.Ǚ#A#tx0 apN#;|H{$d޹ũ{yvy^/hAAIDfrk޼6=OƧ`j10fXo'k.Mɶ}n5"{e)IYJ̓ϐ 9@ݴd-H+`n#Nk o'`+,//M1P:}-lbxQfV1rwF _qdC 7I^8M[#qa; `3lFF5+<Ň>q~^,k0ĄHPgוFmX j{8cir]4:Rc̾U!Nq,FPb}gca'#w!>6m@93G 0n*MY#ir;1K/IG<B'훜h>9%> (&0ʾ sml>!Dm&NjYX^[50=m&Kzvz!p){!8.\'П<"+'<-qmtN3\ j/r .3 Z'G ٘Gq%sF-S8 sJ~ ;ۻ䁙;XjF|lR~Z606Q%Y̥d2B0[L,6Ocϖ]N& 9ApWak+z'i *%ܼ-PO)`?k篌gC +W[Sq;WDMH$1Crϻy}Эϔ< Hs ڌG(W r^Ӄa&u.t{o@$uPN1.ӠS;y͒J{:[akzhmR!(a 9/ȼK^_t)pazVύ'reNZ7M$+[HЁkZlż˫-ҲX)Vx00fC>Fz`kp(UV{m$m7Ӆݍ)GK ^Rrv$Irk\hYxeWXQR{UuoVlR61Lʿd{F~/hٓŇ-0Oe"A ,lRBÚrDgK]AȲc 2$ei̓=V?& /qHnYl\;VU<8huMD\!~abi"Рk3DZl.N4E]YHKiC;k S l>AzۃZoGْ>&h~Wz{Rn '"eNoFꎘ'd}G 7#΢`N~:6A~.\'gU)_f`J%OCt)/H爹@qLѭ3{W"%l:.kf>la0=HPǪ[3(.vٳ+$@Šk!%bqpSDõ# 'O-"bQ+^6h)!22qb85{0earcSD9pg:A6Sķ JdT\38FFqTI/ܓ@)s? i@+J:FnU)}|76ޥ8vf5mr^-,{.ۗمs)°a][VIJv4@Tۙ[՛a5AxgdUltAm'%멌## ˇE] ~@Oæ^D7GB~R Kk֭qBWtlUI9sj,I`0\y~eV~/c o=_U),sSq= Y+m ma  nkP0NBʾw-AQ<}*i5+fMu+N"fBW J@v( Ԑ_ ҫe}CTR<Q4J<*"~ =,r>o屾h"aSe!1O#$*<&At.S,IGhWP+z?'Vi9E༜ ٸmA6OVRB5(mB '~6͉K*y\)$,EMȢ@3 (584`Jv$ yn"~+/W./G;)9NB|JNtN&P>p2zCc39Pieauw4.%`q"rpW81:XHQyo&JNGK 5Ӫdt@/dTj#79h sziMeWa#$"6llA&Yf .Lp&0GFH\Sp^ I@x{>0rAxfWXuoq*u(ý ҬOҹD{: ?w M)sDȖ6F?,)lr؇e'Ǻ5[ -YYd8(Bf?hعpdUJ_]g" b^ EbȌ@ ^Ԗ->bKƣ HvWԗ䆨ڀF nVmBGlTyf` 3Z]`%yIkO9dd9$ܰ6 CcI9::Thp<8J` Fc##[ }7Mif7>e(Xt1;'\z M^1p~j>X2_my^_.lR-jJqp W˭zO+,rކMD%ө*T}M بӨd7zۉA?̧kwWBsĤ}W:}Zűi (cvxdĖ*?c>%Arl79~G;s&BN8fUҸGYK27dC!87ңOQ(L?\͝$iPɵY`pV"J?I6W4drd,;nobhViZ IN(6J%oCxujbG#1w&d쫕@JJ({&trJL;GGazEHbۈVSǏh=Zvwƭw~"?\3G_ RlްL˪3U.~נA;}n*ܡ.2 'g{2z.wfnrq|9J5ҪZmi@׋»^G*i/7QCÒil Z08%BJ lMOSɱz{t)h5De ߇`S:W?ؼ/;PUJj0ʛsoG!K[n^v{XItUDmK*E18Z%QXe\z+P+O%+2.u<>u2;SK{bΥ(Cs8H jŸ5'*MR}<%>J|-E@Ekt09h2ƙ`Dw³psHȬkEubaI\x%5 +K~oyHV%d0]c7t$rS^Ke*I]Cf3Im?/F.rYhÒS 4.ncm\21U P2P^x4Za3Y_-_f:IFx=]a+4H+?loB+f:XQY2fxK948#$Ȱ#>@ ƒ^"\Bl-r3wH?@Y%#'m/Keܨ!ٓ ك_SCk7ç}JMbۣ$}C^~Ik\:LqX.c%>j>iN(C@Cd1ڳ(sV rbVKU"sfb85xrsGpSPݘRMc}wWl!;* RVoSI!&a!\z:?9">|\FR@l$:$5G&xc&J>42hHbΞ8 s,JkRa ݓq(V|\ޡA>Y& lúR)AD÷ /ݲR5̯!g>,y;–\/qNfF+~@(׼XiY`J,ö3(Z̟s7sTG۞MVʼkT@9x&_nꥡM-8.: rd32l;W%vvenr ȦEP44a}FvBDz|*6$=mOfX{+-UZdND$ߜlC[$妢 ʬ 4,%j?픐 s+D+Vz*/,Dh}-\YtPCs@eʌ#YڪFq1bƉ!9/#ڼ{<3H/.!m(CrPvl )y(.SeX!-.-i=f\- oDɮR~rdc$(&.8$XxDD~O-W#e1WuHW*r * de[hm(ݰ%?dcZVX){/5-%4C̩#;f:I ֖#Sl|JqnXk9o+\}n*͠vcy3܎{*}ah^o1ƶ7`&(\U LCt@}:xp ).S^1BJcN`fuXa#_?\0T692^u ,:LZLTUNT[Zaek{~H2I,/RFK/%VfV֥ܔϦWƥ;}᱘7ˬ&i @佨Hd`BP= '5TQ:-%Ż/. ZƏi2!_!vۑVe, KeC7)˜;>%Bƙ-'wOGjJ1/&4tvL9ǂ vqMdNʪ3͛|W#R7"[ rDJ۠3y/IQw0I1*cD]'qOR1Jk 6=kڐh7|^a9퓐҇>|GwMѬo*_[tzjm?.!`drIv*(X ] 5w@ $J<*Wn +P:J] erۚ6.F=rWmZ$Ҋ"/THK.Z3f<I'i u9962ϏbH v!rGo378>xXD{:0&._`8YA^@/$&;/A"ijW;J3u`A kyƓeEk,t{‘W% 7S)" rv)k@2itv}B:Ǵ3 m|,-'a֯B  _giZ[yEs+_%/rziB[^ql`g`3kUyH$Dz1]au% n27d0bW^1G/X4.V@t?Xʵt71 nwAPI7jts䮿?UI=m#[/֥W82$ڤm4]JS9"l.8gMpoɡW\FQx {ZTJ@WEv,fC.9VNo ^\!:XzA -WJEdrSaF1'w7Ҹ:*4q|^--ZqW"4bAX 0(5u})|Ѩ,il1MȯV8,OLa#c\=L$%2Ah, t,u aǩɗ~BE=ਰNeT\.&t[Yp^ƣDRha $ ohG.m(z-NTqڜe ރϦ^/W%J|IDII98>W0\=e=tBp5"[;50Qd^QhUcB+6\k:Ku&tNUL4G[On-Ȝch"֤AAvSo5s_4zy$#'tb+|]^P+|SRI1"f**ᙅT;ʳUϩ,g ̳9x.f@eI@W#P,m?LIvx B0EnWɔyKm 5QL*\/J>dügk:/zHu|ٺ"cN-nF}t2\mڃ".rnh}MWB42sp_Ow'eYP&TJGj] > 5Q/*YUlvnJ(~\4_cdӝXjk&ՇQ-`>oiA]V0xߩ 2#?B%فEZEAm'ʴ :qrѭǡ]lk[` •  _F!TvF/[ Er/*ڗGU#:#qHm1]7XnZtYrxZen,-/ 5vՋYe'CjHѻCjjPM$B" .\S1jXj$3p$ܴAD mWy¡Fʽ|W8ѮߨKLѶ$B8 Jz'^>'^kń  $2WjD$|+& [TS$ ^1\9,O^wXwfTx4#U&q *,v oO /]O/C_7]'v-|$my4ޖw&}?*gT,83|׾#}}8'ϬR(ˎ 8`ڐvv9Ⱦ/ײ4D1\o-kHdžYgO{RLm,B`R")pD Uwoj$<= c0A ~ }˳zBjFuo PQraRjkаyq)oy >vp+V&Z^W*M|X̩?xLk2%6^$d)"FE%{T@.IƬdtfxdl?(5rWVӿlo2Al + ~^Xɸi5 ` ObBgaPI0KDm)Տa?hՌqh>F1`v:;ޒ} y6tfDԊj%b3`˩Gĩ x>1|` ٦(X%ubH̤&݄`B7 Kr UbFro8Tϸz),.Ǒv. z!U2FYxɘބzt!$NzZ|_r6f Лps^g<`ĝI]hR\ ud@/$+@X0& KW,rM|\C7lW7,dĈnr4{Z_'#F]y"5&p.ti0[pكB# 6a2ѭǠi]s_AnmOŀ >{f$Npĭ4~ܵi O( ,:sd.>[$zz+z'yӪ*J(Ž6È p62XX ζ\X0ܧַˌ}؀^+;t9 ƨIX jo΅p`Թ/sP`s]T5cc)^ZTg\.6NFq&mߢ@S;gk[Ucy&t2p㎋zB;+us. }DDdRFBE/U 7Ős_ !*svT2lbQr-zXD"#A؉T|Qi #ÖIdXZ$ňk˸M 鮺L>"k0 ҁ^[ǰPl0'iS5Ps̐P^QAqtSs S1SZ~ѬytUI)PohdlRo{mG;۶G.7ɠŮesixf\@Zb ,hږQP|j'Uf\ɱGkkAϹ !,}˧{%Grl؋ }a5Z[ xv͔7zdGw E;0 {0$1{%yR';}giBzq\w(.j~L(ѽqk,Ё>pWm:-$[.+&˒@RzFwoJ&V`5nlZC!BL\&j B\ c'Zޞć6/i2͸E~C6?[ "<3132{BطP;t]{llV6 ᴾ0YcvJ<)AJB 85i!eN ݴ28@͕A3 \/(&pXيBM\ޭ!}}5ٮJ.ETcZ"WG 4lI<7W]*rweB]2b5*9ubCaR֮8KH3)فCw" hS"eĢQf, u)y/ݬƙ-&l*.j*;ę\:yk"&UL " gm0BT)D#Ľx!Xa~gOIϿ"aB&15{\Rڳ2'ӂpQ(M!oUG"NB&`KN95I`+y ë%5$ayn"5#zW!V\/F7n9%&e*nt0y E1p]!|=9@Ѯ幋P`(Es%[eo%>H#y7ʨ4!Kfl_{ 4aLF8v'l}u`ZTJ?/aHT! * Csڌj{-L`܈bw/QrroR4t!U-TșMRwt :ۜH4e=d_";d"k @G] .*gޥ*NyOI=D3i7-{F̒x{a/TS6z^HB~״0(nhoטW2h4"ͻv,\gɢYxV{—bj V^嗐ttQՈ1B<*^; Zd %d;P)re~eU8`*2| ~V,1>y94 >aN_NZMu9xJѫ-QfRaK"$iMV*eeh OYV+מ i y-QdH\Ƀ-3 Q;^w$ުE& cҡKPQ_t-g(H⬂(ՠ4מ,ޜl+)^bB$?0( "Fu W-{>iG[ֶǖ*jƉY~ډ_l#쁩 Zsh ^fOE-t|V@O/nŦkܤdqPp@+_&k[?~Nj֔WLB*kЛ¸YN8GȺVu [͏T~wfAJ;q=wӐ1uOW-a,l{vt^ vH:}=J37?C|DGڛHePI$h\_NG/@rNt$>{,u}S$Wz4;`KtIe/pd)(7r턖@dU8>c{F~M=:@GXE+tr3{af n`gښVS*iR⺪+eWmbf B>SC\zZ3VflW|8c-0'Z1d[b(&`e7U+ e/#gcP[ug/YLQxʜ6=|dۣ;#ӏlLq=V\Px (Ҧ5scwǜݚ|mbP+l6m3 {b`c4j=\.+=W*~z;]$BUGhJ?S5RI SL ,jLkKێE| ߂<+D5iKۣ9蛭"!yʁ_y%8[b8=Jt^[<#lF;RTH6dF!3c= tt[Eʬ!Qkb.xRgǕYbfy|]=:TƀA37qv&|1VZ"ZBĤ׆Z݆|c-$n_9ZM@!9\Kkp#Sj2ǹѶJ!@Bca8R.x Uާmd/ 'l F8ű P  `^#wgS‡ o{;5ffE@zm0ٟX9"((߄VR0o@AP)ɱHt4 F'.@hBu^r(/;N!R["@=!pa4w׽zC;8[-4H7Mߛps;Eo-TxVຢc`DOOruuQljZ{&Y#bO2&.,%]woJ BsZ}|XU3ȯ)n f p~si2 <˅#.>+.RJ٨7w-EU)@8 3^iw-ŷdE^C l>y l8V-D q;N\ vj[|Eiizw^RTCZtiI41#1wGHf}UFou9s5,xpqWIQP > bE6c8/pܵ=}88 >՟ $]5q{0RDMF+r'@1XI0u}%6$y3sY!<ڬ#RAnL6ʩQWbr݃3 ,6zwd$ͅP#~\9tlm YqVɴ]qgN2"P=<׭d/iLy^"K׵aٶŇ_! ͝5^j41*ʼ9i26sAڑ)>jg@d43xSjMO%=d5YY?ajr3-F" U˲ A *"p_Vmxk㏱-cծNA!:[N,}f4 {DHd:}F&Kf~iBZkd(<; }xZK/Vw6'Nߋy,𣴫Ep/^>z$68LZ*RP \' aa&J;/P_*}0F8钇SYCm9oM\xc'&6iKM)%*Gܯ,hBʛ/C &gSB &;#} ڪ^!◱[ B7at#t/>AE ^RC?K:h\k@Zl.qيiFD4/tc YX}ҕtʱL:*WOo0E?Jӯ>z/hcK[56|lpࡕm7oUï3@HK2P{O>}&:Ԯ=d)rÉC4dK3ոs]=lW):ߥ[e]-Bũ+C$*B 7$ĪI{o-e>f'$*zy_ugU]V,9З-HƥGْo, ޙ= RDm&%[։It^v^ƬcfJ>lIu8+ 5R4nxxabVٲj*9j&@=nHoS,`P][b`Em" g۫^2BP>}JxEtt-WIB-(6-:5$I"Ў} XE:-G.o@[ț09WOG8!䨳`OkN١$B$6$7ߑ'툰*Q7ؼ1ߓ 4ꨥtCև}w=C&ez%e*Rr_ ug@t݊DyX<5Cf'mBA lLM(Kr2jtt2)SyVz]ّYRrD8tK/BI<-78"!*4a9\3S"b"XPʄz7!8?׬f ,Q D,X Sn1S ak/Ɍ }>ʰ}"dJG`MG4>Ꙏwtӏ줞aiAeI&JO )z4 6/I/ł,#oIwQ¾ZbuڅKOj$ pxl T;+"KcD O?uPE Ư|tlp;X%fd %. 0k'qPvP{Acca4)S`+v_8Dh w5JJ}"X K CLCK(RgntWrt fsMY aZA_^pZv DAU#L{|E$9$V!hd`0s)OId.oTsGO18!,X>I6ۈ~} A6aZEC<ꡀZs9L![Mu l/XCrUAm\䮇ww#* `FD1"1}4AGapc$mZхhb΍O+_$H(߲'ſ҉b%ܶL<C1F00`-)_,8 ]rZ[X4._~&mإ=|[-"q?^& i"؀>ʆPaw0GӾ'x_>PP' vגE7E{t#bZռx,kbjC6$:hWW{.iLIBaWNM%B^wan7w"6.+{;-VGg^BB 7w&ByTdWlg̽,^ufGΡ5{'@uJBa'Ž\p{̠_x"jǞ6 :,7$L~B͵NBEuH4鼇3'a'ũ* ͖.gd/U )6'*~u^ d٫w0qn ,ɣLiPG`[VͻUvfȃ]Ŵ>xƑ\Iy\jY[[% w$X"f!ur8.:2-Wl q^ lPN8XDA/s삨;WBxESNV?'z2h[az#B'd:`0ޡ15!:0T&7TT<1 _-SO "boƪ``]\Hc`^I*J g]C.uJGGEP>_ysXYp a0kL(V R+զch~lPShDtM1A)媎1z?1-7a_F!tdgwͅ?gTNN#I@sh|ޗ_)Kj=ńDo+W;! ;AFe;t[exu ˘T,N=D VJ8x㶰ҴsCԶ7eJ:4BwQ}ZfDkSnQQpU; Y StBIװ?E0oFC>NxOJۜV$[UlTm e/|K .|ޱ}c\ؽťö_k Y7/rhIMB;͢DYfܡhOQ;WђӚSRq8aNl- {U(H~e1bfaqՆuVKhN݅9MgYo}?8D(2iھ[9wh,^8Fyv8KU.( jf5X{QE^<:I3p ՊtJΤ`ŤHG@r.{.cю<0Ƿ!7R(_X *@Vtͣ_K<0=*n\A~eM-O-)Fd QAɪׇPkA--a@LIlĔ⎎,ZCɂޅMvM#V)fƿ135jh6YQJՄh%D=QI"$U=!U2crG>&ͫVظv](;1r#"n8/7 {ߴLTQcdh5B!fUn /żgkg>0rF0}x`g1[ /_[sڢ;uH"vyvt R⚭+ܩAuC'2j KeJA:蝑Nӿ)ICm@hB$KrCko3a;q=,6?^#m_ )# hlEP]7A{KwQՇ!  ](dz՟Hm*.oSE@b 4/;ǂ6*-wQW\c L^0禧#EZj K31}ˈm|, Smy75j;pP>;1]LеRb~/z@)IoV$[elp0 99嵯{͓5"ۀO4W90G14)|iL $D|jR !{ϙxg|hה=:;O.>b,DgFv[) خ:,J68)BϞ q'Vho7j;Ma-{>3cIsѤ8ǜ+ލ?)b;m³\q-8>GpXNT}ѧdATėjco(UюE }XM魅,dۇ۠ 81xm\{7XD/~+t(3|(#0)o֏5$(?R}5O tqC,PZᲹsE Q%E51+1! ?P!_:J(ѥÜL7U4ƒ$ ;RKkd"{FO_99fI{nJP7HpHs"AY:VcW2b6vAQNLh|a4Q=Q_{b2ƍ Y<6]K1S_7[ eX|ͳR",bl!'l"t0@p?WMR.BV.x R`aYiseV5_Y3 ]B d::¯%QM1jf׀!.χQVHOt(Pr4@).-K ;[sq݆'8\HUtUNz3ݍ Kj̰9w\H2(RRrC86W<(X\3oye4W*dV_H10{Fѣ#F︀̯xA51={;?_3Oy0VUe㐒6O`_ͺXGLSd+yYbbՎ'FxJ:$(qېV%uR D'%&9 ?^53xH_st UYsob|d"OYE*65n7C 6ImӜb󊟥1r#;$.- E鐆>aלWzhR) ѩ[m"EXc뎺E*g]GοdKBղW#Sy-okRܥ& ]\'+9H";ᆅL0r) xIt/7KorR / vY,#gd-|Sס/"G?bΠEB'W9ZٽVy<da5G91fr5xPx+~HpY{&lK݈pP #[# 'KeS/y_A `^eq{ZOqw'(YAH0 `YtCQie?bϦE/(7!'jI}Y"bydˊ}yr,eͪIt}-Pl̒rhTvEVD1;x =)rQ9Q;UetY>Ocx%YqEjPBLFZZ#P_~+w%sTCyIz6;C~qBGӵ$ 2;tS}_M/jXD50Éq"C#㶤e) eY5p:@dܢ С-]9ѲsZpG)G$鹾쾑ˢїҙPg2@N%[]sb٦D׷6Ցk h+ 唴k f=:@4h2߰@E~aXÃX |ɕV;%0uZdE= ' T,x4,ʋ́[Ql,I_y`.)VNvUp qޞ 's(cJ_,ƬX wf |?.!4nЄ-m8d8 Pnu;S@Yֱ*[PL3WLU +W'qK6e? *d\L\PȞ}!TQ~GڦdO7Rܧxa>&RH`bOlӯx&+IRm)Q3Sco͉ІXҒ {N7I0[a$l&c7[Ẁǃ;9 wP:)A~ 횥|?[TE@ LD2FH 6wTH Koj5w"d .5 B>̯g6Xʟ%FLR%Y "E}Ek&7Chk[38Ê%Meh٠aJ-j{Ih؄ԚA/Gxn Jes3MkŹStl19&8c;,g 0^Mc9|2ß1ٶ5m$75hm eCA'6sTj7NY=ӳ?0{ն`%1%a}]Ǐhp$pOέ-]xak>֌1"4%tl9ֱ Y!uPoŻsC'mw;+!`fnW=5q/``qh_\ :"|3FԩOqZԃW*|g|Aj;t#%%C5g Md!Gcs/8Lr(E2utSERÕ0[~)"v DO+m}Gۓ(k@(gDtݥgZn |J-_1X s|'_Tnm1ǂӉ%g)ݽ!SzpJD"5Qr\Ϲ?hAoҮhGBUjL@S Yz35z71m L 7{R?)+g#]?^mdz>Q X=p)ITeIJ񁧌鴏XW(j~z\::}nx36O:̲ {l,vpK`XjީbMt =T+h&q,lS8ͨ1KJFƽ8*v6WLO`1ɏGޝp'2[aPT,+2 _mX^IsITU*}eN}SrQ`i\m®NUO 71OaEjʂp7c%V8+b s`ݩ敛65AڌDNbOeE?)nȕ|H$hv-vpwHͺ(5XVDטVU|wZ*7kpT=أrt;+r/T{}u0=i" E?ssD.dX, Xc:ili#vgndjz[ŧ=udH+ߊ΁YYת]~;@gZ*}:iqPf8|JZXB%'CGK8o5y³Ev@&=凪VӾAA߲䱸"a8o~߿vu<9}ųzWԈ=#3VEoULh?S־V(V 43''zQplѲm_L{1y)/خ ݓɱ*d~OMȿکȩBFIi-:~ڷ T}k8_6ƛ9aso43I^X:OB=a-nTAK7?aނv%p1TXB\IsP2ə4'~ QҜ`VqrH?Zup`?gjb/Vs%Q>(R9(Ry IVADH`RjFRBj8r.B)$OSUt#A-a'E?@~3} ֍,8wO\`.Hϻh2 S`mNJw?u8fliq['50YU$"ISbu-s\}*ݲ4j.q F"û+q=M%2Z } /32Nq2/1NyC~92菱iEuh_LJKǗ#L/uf; } -k#7'ͩĵi \b%A?q`ve}K67 <"Xkb7{:MUҌ(%%$HYPv>WMxuC]KL>'T.zZ[+ﺒN=Q*\R:5uB '+zK-)o xkG:5MdG:}٦UKR){S "ꚏC&Pn"W)R:kNqU lAQG%I\.` eqt? E2z-悝2۫sb_{5][bzK]U[V^qM+LmoGȁ--yLwD̴@9LnI u9=H>.\d^ɽ&B`xDS/SdV|Y%mXwwšSם5Z]Y:rt]Kc|tL6d\5a 1hBl1=apP{  m y}$ӓcGe xj40U7%2>дD][azbNjYDŁo}7@ H΍1f@!x8qL;<Ӥ}a?jIEc_xF,Ѫuqjn( ,f5L)į̑#ShNkk)+(«i+Jsu_BҧvA]S[/oE@Y0]'\ԛe6{ٿbW%8\sE+T}}RWa 2xPf+. oӼ¼֯1 ׇ[]Yu&u:8G:?9Pm>XBp] LPFBdnu앪~J[> >OPWE|L۷Cy.5TTH&Z99]9 D kM_IyzNEm }rY ' ,+?]W`#^uGf;_aNkKvO3إg.ڳeǬW*Y -}  9D3GΫ =W7CNKjS4\)߉@^a@xrde\=CYX&} #(sJ.RŹ6YTeJziaiy>.)['a 쎛3.yuMƹyQ&#<.5G|áLYS'_r e+jƈ^~h1l8<\x-H5SK<9{=C^ܔ9KLud/޻WCqG?] ն~ ֈcc&cNH$b:1u0Drq"*Z^M+3細&c<QEU$ڰ|*n l QАK%Z HБ(7`ۓ6)|NMF7gA'y Jߔ^VW m| fi>  )i U,=#]UM剸k"cL%?UY*gp7IOrB4,!Dip}F; wms}2c`\kZuЭ{#'CTxh+l(-^PH :0ԍgrsbRh^E}Þ_iU$TdüY[Cb|TT}3 ܼ]ɳv ؝TfPaЖԢaFq(5EalYSOL;Hӵ !##ȁM[֎׿9 ];\lk}t'̛9\==BHEnQe=WLWvm4x["˨2$dMBEo/^&}=#"F8tNOGeBv_=MA)|˰}Uݦ@Pg2R])C>ɬD`x(t8@}w2]d %i-~5HEbd4ph<6@0)6ژe134IӬGXt"gE2o7 F-$K%" O e3$O|0@<<L!_a^\/\'/3?lKϧ$l8?kzn-R?}FӞ7 ctl(~^kcVmP \/*]~]{ _{_S4cy+ŎgAG@A4s _' i&>z+M}񄩠Qrγ ut칱L'MpSIIX-GR8g.2nx{=u֞a0+u ҶN)SMّOPp`4F'a{nzWly*ck#EEvz$Oӽb)UjZ/R"9[AK ,`Z@6+G'U?뱔#T6@iRD_ 8bpY@; MvX SsL X Q$F!M;-r֞zl+AQ9H 'äҥBk ~띌d; @1vtM"hEtP\ \Sulk_[>g|&e. \@I<,CZ Xpp>ҩ$QZ59ÇVV7ʡs6O_jRZ~EWnQŌ5hAز'NN+2"cb0<{,0~.%FdHk&ΦUr0YTgKai(ܚI3JژZayIW] MFl2e<;vL0@^x(o[5SB\_ݴkB82!0[mE Pb@tr>}u|Nkb Yr,&I։=xwbi,ROHnσ љ'yc{6AEoee6|PqY~nRu.ϭA!pz+Fx07+- azxM fךĨH: e-#x5J{MTrKHp&s>^vLd@t`/j.pڨ坽@& .,-4ubHX紨7DL3;A-kuhiؿ 6')_v|{\*fbzCZ$usiQ įS:qo뀮_t]bĠjb0w2Rqġ2%n~EJLZ ՔD  k ;@jVqΤM=cC:OU #7=_H(uhGaX]ZB. ǯDRbw~O bh\$R_ߎ,?+K!b.5M#T5rǭ5:ɪ@ 5?Fڷ_:h[KwYcf3* Ą;d5*R?ƅ]GGI|s%Rj7jYu*jɳ'Ew_UuK~v'GQqRZ n/+8#\nu+ t>sXZ&:r!E`oRvwnxaCP'kK4S@N+Br^@,b;}qM9\֑LyQ8aw0ȴ3cR{9Pn@|9gBa̖ eXK E,֜z1d)nTu2#6Xuqtb%jKǸVӊi}!Y&M"fKkZ aCi 3-UVk̚Do Tw) 5|LP/ N}6£|GBn){[Gx=,kS3n9CM-B}"2`. Oz˃vpPhU6_-4l>~X99-V T=lӒ>Ke$\r,+1 RB̀@5Z;6Sxϛ!SI=`Q 3vQ ;N/Y' P2iq5$[Z~e;%VVUS=/#D0!\ee"ܔ"XPSٗ^}qAA~_ہZ)VM> 2YK5Db B](uO{ŖNBT{o@ZF"|v69AСCAN` 1%fE9 1@"#,|Nga[gr2Xj>y7]_ڰOm"e(<#͍QܻJ&Y5qdO'WvFt8x,!cuU% DdAJж%+4A/Een*\7=HGvjz8qSYV:42 ESw5mX<0+7V /kEN9T!5.C0TNDDy~\{Y9%˅OP F >a"Wzаknp=ȴ+\}kjCj5ǂr >[3Y4O k>-q<;wc_L^M:{T%P.PG.hqZN< ZfYn'ZGG}W^{*#Bb&bN@'hzNڤّd du'/֚U7dw[C'" Jl.Z{[[fo+шkHLp?CئHj (^B;5ߑBgEVz߸]ԧV_ԇ=3b ND=9ob9>ۂ 8ݎ{]4`-ǩol}颁UxͿM EnrCэrVo x~v>GP[[Շ:F ]Q]e*xkWCv*+Y"\-cYGD4,>O2{Rp`4xd -Fh^__wEL,S+ ![l{Ƈ@e\& }pw@pv*AZz`f$n#Ok̃=tL; T "&I*AMZdj]J(;쮰횞em-SAEh9=ƘԀVWS?\޶p;hCki,mWxnIڐ W[p׈$1#H@tPEG|+IxI3{O)kdO俙 4ޅ;T3FLl_/rz^'\ma^V>(_AO.j7P&'媂~/MugK\Y}F:S&70#P?Ds~+*z4g#0&7* 2MךNftm-d^EVyF\l̓e2"QCݠMZ Ooh*hX<[Ic#γ03ᄋ(= GlGr*RoAcJ74ͤ/ [#x8}S18@2*$li[. f%, >ӂ gwObkN߶yc+O"Ru `ksl_ф'Դc 2T>)4_F\T=Yh W|!h<*MNٹQD^vyBU_Z(˃\ ] إvn$H u/8 #|po>82:A"1k.+כ FTؘڞw^l~gPUޝ@X!f4=rKj ibBh ?$hUw5Pk9hX·.jؓ,DِF'D$> U&$.KgdN0 ԒZMQ'a4pFsQ jP at.v⾵5?˨CtABz_F9ΤMk %;}RaH^H9 5ET=3mCN qQD7AqRl6'i߈Jg-3M85vgq-:ߏv1nsq!'=#iK0+S[5~.yd[ZV|'n϶qȕ1ޕ C>-r1TȷaG?hRy.lsU[A]h";HpϞ8=ڃ|2;on4O5&wur3ӆ!.482N|1*WwO!\=XԍpJS L]qdѮ =q#vĬ>Ļ @_l#G?0"37VxZ7opC@t9FP5߯I5@"4ɕ~i`&ݰDeDZ8/ dRc;r|ڂ0TBGzVĢUЄA*IʎCv40Ǹ_vRt}kiJ7x#v|on Pv!u }=^T J{~ N`WLkط`U'xeVWEȪ_1nxFG a {'@?O?S='RYCj7Mtd"Vhx[*mwB ׼fE"j6I)%E4¨Få+8u-vlw`[2rPua4?%NYsjꐚTc47ݬҜv8+xX87PY!sGl).iϰ+^/k~k.@s?3ܸ`p!B`JDW{ڧ~)d>`јe[Gha26S) !Q!7R[C ۃߌ2ee7,;ᷧK%%YCWj!΋xYo c U4xrʈ/jOR ys9Wr^Zig].GciOہCRYo|\xzv ..mM΅  z7LU+CaN!AnaG$@X 9hgn6#a)Om=aŦ@9SiY$XפU#@rPmmD朵ʶ2uS?-m[9^؄VʽCn| ]2 ~ziL|}oNq\$f9 5٨ f\?͌! BO3РnaRC@Lx;YUOC4ѶT\7X nAi؀ g嵼tRh vq{k9+|dsF)H}GJ!ךN.9QR7;;^Nˣg9v/*rA- ifHR92* +2f7RSKp_x=v߇eߴ &?ݸh^t7߯`@a_s Ihu H & C'3# \l&@]g1kw}1zW/@Q`\ +JƘ x!X%b$*C(]q sa](GAqW/l LW+KӼ LZFN>7i p t_k:eR^ܠpͣW95$ZXnH5n)]&|i 3%6<5k (Kaҍ-]kr)1+ҋɤC>U܅^Q᧡۠,Qt,C)[r꒩28.U1$@Y2Y7*@T{[GI.!KvFrQGJWbIRioj OH4%uuuW G`OܕQ:k^q\Nv7h {Te|4=-դ^{|9&.WA1}C RNjX ؁s^8-lwS[l^UVC!߹e& %7[jտd?9$xy-DuSl[-n_ڟ  ﹌izzUP;L{ojog5|2ŐEV!a׃iJJ4@ ϪE'P }JlX{CvXc^$ #{r洄Mwߩ5F-ǿ>@F.[An$aw7Xaя nqZ"2W;nozT5KxN٥q17 Cx}>֛2JӅ mA%3na%#wF;bp¬ڸ `"O\դ(cΧ5Oz;(̧Kx]-"8I<#[cjYs8 ݐ4ZK!}-k$bBn+#X&F[7GT`'% ^OBRD[^ \ly8s@L^4"%ĪISӍԪ)2¬E7Vpn#ضdy'dT
f&+oCX_C nz~V9;741!}8Mǧʏ6"geغ~aQe]Z%ܵ޷چ1Am&dkUD*9ݛ95NvNky%.kϳ/̨!B:@2! G4sN574٪G€tMJbH\ZQbZqwe*A_A>MNVk:y0.N&@3VO ^mZi3PWy(1Vx{ޫ؝2H*4BzqKLE=E{ჳh(gݱIWǫ?VJ4?^rY4?DKeH9fm%dҖ{B:t_JExy Bڱl@dJpcޫz08C?(mdR\[_QJ^Y6kED/wzD64x/vX43}Ĭ/8UT ~*ta+ы1h?gDP/X@N$ ߀K ZU{de Z2Pji-Fڕ)z3c)cH3n8#*+oHDn|0iH!.Inq޹aH۩%w9%u▧GdOwEK#:WLO*H$C[7QG*9EQ/vT֗sgYT8e\p`TDPccKJ{oIPf]u ~31ӝO{F]2i1gZP\&[\(#Y>H DQ9ܴf5QWLKŹ_]ڨSG;r5H;<RW5xK3+\ y[:A1E Q&첲w&6#C!:1ajw+wϼicSiAqo8V~u0_VEUip1WHq5`pj2c/;3uӸ*u4+C{5l19*¹"^])ZGc@>ҮQT3Px(NiwTDFL>CSxe%luP||)8&5eI#%,J }:,:P:Ra<:-1h^B Ƴ9)) @lj4qҧ4g/!BU&?g7OUvwqԐ\oaWW`OeX_@]J<z;VJqNϛhC$zA%NɴO];͍**Vo;cX&XyLx^ȷoz)nT j``!WCDn}$P[/?~iԝ&Ɗ `螞G2ϣ|oa$zdq(8!* C~`@ f56}Bܸ|^Yyrqq$+u%V[ y $Xo۬RJ4Q1X2uׇy\:irup9@he n\l0lW"r#*[rT<Od39/w-! Yr&&f[\[!f=Cd=mHO%.kѸ<^j&q_(hb(_@rAvtf)۾TB'F9R: IvSO:VcvAǑ҉bjpIEsdθBu8T&Mfy[keow1w&¨t0fkĿ{Ź 9Z#̷}?Ĥ{x9#-TTT1|>Km*#wzRΐ,nC=P8<^mc Ju >,@d(`j՚?԰@yFM }^;kNJ|rK21Մ-|# na#,1EFvVN115gwGsOU>IJa/nPx!v▋ ns 2B> j4bBu-e#b'5cxI9kD'WݶROwΤNauSsęXv]uSDrG P}'unm<jlKIW~ZʄKƷd9Ђ:yCd(,MZk7&c-ck@ސ|nٗj!nV JaVCs F7ٷ.4EJPe:E % llnxFik1(^9fx.fgn/*1@n5c^]wܸ3p;1%a|ďX3";kǃDbіroHr lQ{\ߚU ZexB5aJJ"㏫#hЬM!W H֊C f.#r'5nBVzc] 1͍ϙX#BcJnJ/3sb`u۸R@;j>!Y($G=kS%:L>U 6'_:Px#C qvO,oV8ćAYX;R nobx%Ug32T'h[җ:20lTRVS:vl'Xo>[5VsӲdHs<ljZ}GlK3=ۤt'H%)p8)帀[)`_(LD3=P~%y"Q=qrRX`n.nNn }DJ9T?6FZ{M5 UF8d Gq<"8o;BxWD:P@Sj>JH1t~h]ȴX K,9$'-/xKC,1 J0}T*A%= )N3-tќvFɰfSm34ZYLZEb8\!Xx@evXwn4зE:E]ѵakYvkoPrA ڷҪ}f+[XK;KoUMǘ Ǣ"YMSDr}Q˪+A+.-̉ϵY. U!ISq)pNo]+7sS _,O#*0v.QrE/p2MH<_۴]_U ?͐#\3ay9f-TI2SRO[XZ҃=õj!;b :{P}Y]m_VzkA;4A2]՜\_`"@7#Z-&8^cVDCr dp~^DC=RMn/l y.8'\oB>|zcS`r$cN)Y>JyǘtOJҽE PpO:x6AcUeM.?jۂ ʛQǚva0%l#EI-bVFҍZF\.EJ<|hy0zEZ}!h<ǘJ^U . cz⟽!4#E cMY7֪S+ ""vcO +;x= :ԙ'0 >+l:bn'܁/렙BT HBKh$TgN=6u-Sɐ&v u͐4r=*7$bl\!}X[*/;14Ucj]j-)- g`2Qt mLW@Kͧ_Ǚ9A!{|*pϚӰk$ SVP"Ig6tR^E6|Q(0V%R- hM$k|s胘e@?2fՐ69&OXq-2H?G*x[Q2N cw\fdĸP`4FzKfs`!á͎e_z *a#`:ϵ>7qwڭE^t"!cv!zx*lnnE ,J8˻_T>[sζvWc Z"˝Tn-˜q"422ƾ ey%/Ɵ؝=&tH~%nXp#=!7p-zzCSĺOt  ыRɽ; F֤`ԒC%(21ɺ\UޏdYL΍f?çR7l5-s/0$[),]-gummK[bZhp jڠJ/]0f//*@g(QK@ރ"&dDzYk)b;W-k󹛩y92!_6> dF"SdУN~կhYO|Ou<AZZ22V(^j8)QG`ȉ~TÜ'T1#^ 70XN˂ue,J[D1U.} ^=Zk?ρ+;t9%R;$FED%6\0 5HIz1 ۡ筱,#MDc@{*Pќ4kЀq;L'(6(<{ Ks'1OkDFv# N#C VD+A=wP|er1BԲ!I_x~\Cs|<tt Ԏ(r4v1vOK1^ ɺuy\!bą9*쫘4Q h JczӂS7պ  3‘ UX`ϬcSv!. " R!:ljzԅrN0 iQg*h)g_+ktl½v}oQ jL+ t?6ݰ"T{5'Y`ў{e Qx Hf `SC,O\#Z?r]ϭ q14KJ\`/1pE!x`BjI$Ne]nnMy{< D16r`3-v^g\lS=$G%Z vY&Q#DHX+u>7@l3++/ltS~r   ]OY:!Qw׶ϼՕ^]" OZ _{zD ď1NLFW%:%8HHjĂy6*'HX8جxLedf*/rql ă?P%Q-e& 9鬳xʍjײ} "̫;W>`|Wp:*b7 ZX{ysB,4=V ֝dʍ_ K> јf}>TqHpawIgMOfWfa:MBf+)QOOEON^ab Bƺ-f|{5_PG{$:Zz,߱qZY2@ҥ]Yھ@"M9Yl}ya"hsHcTfǸVY/qćU|~Q0f:%$ȟ^7 ]SBveNup)`Z2s3M @Wj 0@Ҷ`>tz,,uڿ|&*H ۭ,4XG l̤3 bEn7֮N6nju~$lZ;rqqm'UE?VJw ]Hl&Z$<,m^f+; v} Tr/_('hЉsQd=VEO(43^ \8E񆳵[J`C ;!>M,٠Xtmzӌ>`AJ@HgY+o%>??cRz<V(j9yZK/Oq>| ~Ŕ!b/FA[qAϗdgbn 8>p)unA0sP }K0f㯭taN(wkaB.h0NONrrljBT6/xLr l:g6i$ ͘&Ho ϦoqGSve Ž:* TU h08՝"rp2)3 RJY> ҈Ao*[1/%OzNb)%rrc'%9slPAe7ec.[/Ν؁J=^Ѳ߉ 2t=ja0粬H6!dB7pp$@!ᨳ z%94#=n#^2];8eH9CjcJ"m~I )ii'ZU*Cxy'V=crQ 4Z903]-Ȑ)WxSHu1_3C7dءi{d_.R jHncpyM7tp[Q*:~7HeH ah8![.[MDLgYm" xg r .*kg i&ƀ'׋C]" z 6 58sP*1gnrg*WwKbyh4l]j@;ϵ̛UW1|&coNf?ž62^{>fJb¼anL9ڪ`Os,[NuUO8Zomn!=9& FQe*:.q'P( " *cf:mCw!݊h~)u) m7(D.9AWa=g+9bQ>Ear7ۍ%˾6OQm)z?n!c dZR2CB.Y?)s# d5VR[^τKGg5 e}d/7ټ:11+[aU-tk/LxbayM)}QK.M%MPFDD>xduVu&|`N0QL F{ mͿ<f?_OMIH8髅^{)RL?VIgǫō0#KH;x !o(Y6N<Zd !d奇-+ H=>6܅>sw \N‹V uIWq(p}L>*І߸HL+l?\(OK4XΦzIr!9ǐBϞs2/9Q5:|ϡ970HjU$3#V78 SMÀ+5A0d}< BzBqJB8-|W5EN֦*cw3|&{%NXS:<1!޹~̇#j 6uZR=s0_I GpdOu;j*s{H{m@U(s͓s6!Ii+7]mv=!r9Bt0w'0ys8=DdVVvݶ/mޮ$MC|KrU(f>־ %(3~bM{Ư*G|KQ\p<#%N:N"p(H߂FG,ɧ9׾0.BόavGj¶=0˸o/_⻳"DςfWN[[w@+=Ti"w 2[-Ɍ\"Z+0/&=]O0x,2b#{U*#Xj yDrS0Nl'.1 TĀ/eb3j1bÒe,j }iffBy&s߿2yxPVE'TUB|~깒kܬ#@p%'%X[n+y+=_,[mmTLt :EV6]+=8ێMb3M h_WbW[-A<-S]6X~gAҕwhUK  Z !+|D40%k+agG(l;4%.z<c, N]'݃O.9yoNUQf?dGX@Ŗ>#xWro듒J_ ]^gNRˢ#w*!S*džY@taBߔX+PRVq޺ =շ%άQ"xւOxh QɡsTaLY 3=_Wd)ILy-Ivq2'c7/5^(qHk)%=17`^Xe}+ #Z;K||GD1x|f-{$WfgLmPBȗaߙuoa>TD)j4{GBS2*?sɅ$M%IL$k.uN6]]UTàjq<]~.Vb-y ,YR=,[˩Z_(B`8WRd^@_SVEuR/o*cM՝`Hb R:Qߢfcw>x6&CPIsj r#/',|~Cf,< K;P'E2}K5YC9> Y_U^ur/H,X$,Cs䀽`\ܹG9>kֲ \skq/rQkA|@$-fCuhAW(PP~I-j6(|IMcl"]ST̺ N[v sؽAū9Z5R)=_Z_ރ ICD-hNaV3}՛sOrTzr9="̐KIFd0){>%_sR_wIԄ53[~W@?=C'>6-Qdg7'XWa.0C˴mG$vIV #nA01\%#&OU{QmgD=pdYY `a|Cg`z MUVLQS[:6YZEtz|cr\~*M ֬tۙyKt˰;?۔̻ [9a m%E$h&cl$fNtRU [5rfs\elYK2{ۙ{PHCvhsLyߦԃAr.ٓUdR7x0%2BV AP~0uXgrKhE7_knd2Z,}:b-(Gt<9X zճbM?-k蝦gGdoX1fU7QV>4?4ը,X̏Q-2w] k-#8=d]wK"{8:ƵP[b\*|Rյfy8Xz%;O512q`N5. %q.pen0Z^ı\; TSVj0эi:m)s$촪lt+oAnTi#WO' S9] Q2κv7j]m?*o}C93 7-\JMB*YG>-CnLv[t=ZNY}y ӓt8!>j,L*tde噷+8p㠥eWlZgL0%~_GЦĚB=м |6񌬌>5bv::y8 1yy PBԪ"xwǏ{sRǶqk% )Zk )n't:`f}7`jDfJD1yفL"I  VަWsťF9fΈp('EU~4 8E|=Pi+.U$S/ %z+ 8x*RA` ey'֓(E;a$ĥhud ǟ;+t\=_hCP :8>P)'i'nM7|R39"el.Dz-ir%We/TV.^D W/L~Ep8(e|X) mPOcќYr֞c&5,v$t.G?qVE>ՉLH7xm6R}ré|ݨOFjG{7@68D@/Cz3d2`s&=Gߴ}Nkۑ0[tO̽wzZ6vWpy~X z"eomNGmvAW`scDeOAÔxB%!+0-s 5'~Oz Vn` L/p erNWMkgܻe)BS ߄"UG 90Z0ݢr]B,rgK~#Bl;OmlbRxIqXnOm 3k9XyAhoS˱fU$/`kU?0<@":]~C2(4RΓia"$f^> eRϖ'zKzE%S|6v MܨP S:N43ӞLP$Qw~mx{w(m}?.Liސ8w_h)g8l_4EIzešnMǍC?^>ceqYM ^@S9rd&6$K$Y`Dxxq?F\xbԤ]jm߾:noܸ!C[:#۾dӪM*s2!yFiog槧OLLE *3†ΓOtM4-#?阛a7\"/&+vF㡃iD( '%h *G|~L~I'is. p !R` )c-˗DQB6ܶd?}z+&nѦ;xE/yS;5X]k, 5u4*v{!VnHSU^A 9ݟ%;(ÜCAmChDDv[2ZXqqځ"l@ z > =M8**n c ÓWܤ_v)4*ms;˽Z;a` F/.Bq!c#x3}+I[Ɔ#`<* }+ۜ= EM i GZ\13cv1!Φa(@n Ekf 2j~i0'kp]YFlQ=UYfr=6z3JNhc܎FyTH«fZ2N>5Fx,"ǼDYɽ1Nd7/ *] S[⥖I[`!*Do O*#gM)iC[526]hUD?jUu)fV5a U]aѦ2*f׭L5bY-HVm5]c@g$xv7%Tл)RE|T8Q ~\4k5+XenT0N5 W F(F1MdDߏz~󒇰^Wxˢɢ N&D%x w4u>26ZQQ}tFSec9y &Xfuq*qY>o$ 8\(,s 0I{_15"=S}j1:˳#P>aP)E$֣5ռbIFscmURg5Azf.DA\n+[jLSgj$q6d)4Abhj;eR5M wg$2JuJt?Ύ w e̤SAFD$%o'أ#j-< ^~;5 s|*g20:F8ӤdGi"Pe;pH ;>{r+frSRԶ7wxE340x|@-oJ̈RZ kGa_-CwHN,a}v)ʥP))ч@ 8& GYg [hқ _.cWL!Yylh{IAAh KߛÞ0kR=* g̦j]gOf:r{fZ{pC(0g-gobnJr=K>mZlfyO4;tlCr'vBح̺y/बK:! n3A7Ǘ{;(;;|q0[ŸU~~:dxų+ ij:)gA.G-՟շ`K"֦6(D[|aު{qؼӱ^N1ihSbP 2grU/)MK? 㯁,Oڟ[HvB.Q;-)@C-aV[NI5^渝,NZbsU&ߟ9}˷`gd'OPԹ/JHPyBr̙Cu~>9S ΟԮdeÝg:?.bhh7+hB=.n! JsmGhe≯e(#"!dcpőI]) :ʤ8A0,\Cd%NӰ͊h.n0Cy` #3?Q$ P}ީpA3%I@34hN-aF[Hq?29k&Lh]>Ah|F0ǴJ!Sq&Fڇ_ϘPn+ B=YX9l);t(K!;{x [yB^GhwJVTw/N޵3VfJ5Xs81 4]jBsm&iaC. L$qZ3~6I0`a:oyG-j+ pJѤ[[#\A{{xb1/ Yy`&]`枢*TVfyT =,-KȀ"iu\Eٶ#mBTqn-L'C6] IhpHو:ԞCv-2g 'QNcjAwA{Bf<2g_bZ$:βK.+2NwCA :0YDUgXKx $m3^?9|޻xxQdTY`ܲ2`z6~Z(ʐGtV7ى)&z4pS l0WDV$Az_5r5 M㰍Ah#031$CLeu)`-dW9FWhk/L4 &F?#Q̿J*`0"5ۤlt5޷ e,%*Ʋ\]=A~T92br %>"dH P>ݜd4O1v2.,pǞ|0U>=7 Zi@@gEϹV.~(U- \VݮgiO(e ]ZT'VFr~|" J,l{u.zS1AqtAa2%9IM 1ӖsMnD%1%g5vb,`;^ -4\u ßa1kW0e0 J,'n=:paʓ) t)`JW_S=}G/\7i^#u y$16h=ckʁc'!݇d$u]Q]O,GXFi 2lo9wT"V/x5/Fc#0oz15I*qJT!!.&<263f,Z_F0P5ϸgڅot XZ`->W.pxlRA=y"X?&ش>~7(AZj|Al^n9>:4;fwHi5 &-FUp땰r-+Eoe':~{*Χt=%: lF.9IwE UkV,)rkϿP]8fo^Sn %|iה#ثz}2@zBx35`n/›B @QX0kyW($_\X9fHĥpYrӰ*>Z;ߞq.%fc"_4'ܷOQ'VE*b2 |/ yγ4T[]\x1qMABb-qOJwIP(,j3$ %> E*@aÅ 1*Mh@̈˛)l}?)9#m/R`w#t2MΑQ106|c.{ 01sBix ~"+@k*͓HXKnOq`uHg:.Lȼʩ<︫D-[5V4:<~-43r׍\^t߰6҉*b0=ܘP/ı\N t fx%p8\4 Sx4n$jlzC2WTLuvy<"vGVe' 3' , -) w0z*m\R^S6cb,7ŸLk osDOȡ+b͝k*B.rpƓ轭M(CD;>85?4cRi㈎q1h\u?{#jQlweʠŷIuP"]6.cj;2LYpN=ys͎ޒ{:ϘfqdvWm] pZv6Ff@䰃 ?r\2MJR+ F5ȏ¶[*Dܓs5mfQrikmՎ(3l+d͒ KPOaNcATK9m]]G*׾ 람0[b0.[řsٲWY,h:^3Dnd^#EEBP*>`Vm>87Ymu]sKmfS>-8و~l ˱i oZ`y`$-l >ۉJ!ψDH cppn#5*wӏ[ZFeIk|jS+'D#qЭE@;eWP=k (I)^ta}*W<Σ9 XY7h GK1?ڣ=TH0"}Ap+PxrU%?Hɏ:T[%/]'zӬ9O$g}1!>2'c9\W1p!*{e^)OeRe<@gCHtɘGknQ!pN&lWŐa&@cHZn>)RfԳ suoԕ٢W%uG! c:87Ń曢iXi~GDtc kD!`b!XٜBrPH`zz%a'۵pJRm?WW H'PI[c̣ A>A!Nǎ_ҏF`2ިxG /XB !'T%Vbmb4(KڟԡЃvqwA =_'DLCE" S|~Z9'!=S7Q9lZR$X:Tj#=J ۫cL*`'Zge+DG?ٟW+ X1'/'lB ទ E4=g]( /J,wuӯ0a;E{ocGY.Fml NǒVHo).zȭfGuKJ/C5Oȭ%:ĝgJ,6NwDi;/4j-pX~{]6x聬.Lp+"K,cq?I-3Niި6ӾxI%(e!T<#0m6f/1{/+M+hZF-*a0'hvHg<^&2ćN¦ ja{^ŁY->%1;- d >TU_qk1ne${kO,sPGG?Rx&mtIYaXc3l=q_1Ϗtp6=wt``2Sђ(od y8ړg{~v5if_IF/3 Ӫ?V8N3˃_t"?ЁH247ˀ,(`OA`z)diu?cLJz‚+\d1iռ|T%b^\*9zjW^lЛGPZhVa>Be~vۓXLr2?4]ɂiC %+'ڢˑ v~sQ)p5:[&QD\I/,ޜdlS/`enr}࠘ MwX-}qh֟SR]^Ub2IՓPN ; 7jtoU-&DcF#O:|v>xy-()ZfL[T0^*eN}AG)~߫c#M69=xЪЭףR8p~WP`Sj6",n,7lzq&I i75ͷoZMƊc#%d;yu/r:4ImUz-p-ʨ,ӻ@=)#z&8%ˣ-egI-Jf`A+UxOoT߄A'*gU o|K'p :YLOjp|cb{1-K.S۞ D BEo2^ܘf>p*:4OtEta V:1+$i]QT,ow'֣bfl4naXWzw~ٔV^PV*Svfp6|/%Pgavm%u :؞ 1?V]1ϰ~25@o* %+n%\wm{_U'$Miy֜sH.r5]}>shE"hצPN6A8^nKIysUE0eK9zSKtǠgҟ, B=d|ԛG^zZpJ.0ͱ4Q=1.4he|VxcI11L# 8.!(=&o*CPFEv<ʸ?ERpо#tя׵^4Iw 54"ӯ\-]X?ץ)J0:~&*Wu7?~p}b;bȝ=nJHǙ / 7R>á:ؤԮ, 3ۮ"ݘXTڹ粅&L u?Xicd:m++?)+/f8:Uލ++Z?O$NjdIqTk$y-OEpIH\<C(^r+ШuNՏ7q nZ~{,&0t#W152#DTd4 -LjaI)^ 63J>[^#$G?G%r@QҀE$[)LtYd0+7+G شlJa9 Ro253k ?z^Z/1y,0%"1W1V4WpRfgkNK w O1Iһp7 KgepM #[so HwfUYBAcJ1zX/G^i %[st= dqpO{#QڞH!H!#58e eHf@82q,~B%NEc?Q* o.MFΚ?jxrv =M)MVwH4( 0ұw:rIvQ+ϐT͸1 Pƒ_56ಾ?ωg Tqr{ysl2ҠObG#񭋬hhvMC &"ƷBG&$ltG岋"6n`իi@M&y vDdGuzeˠ]7E(tRTN} xEHw$*kYJB#\AYr(TmDG'&F,B̌ H>ןgS> m՟ف[D3'ULP>cDKTE80e_yd^Yjl3xB7ARރ>(v:mNa)xwN7θ_cp>.DHmR*;:-]VAgO},*wkԯMF"LtLEa ?!y=eInzv!+Ok4p.6ʸ\ Ǖ>09.rLc[}MM\pc!#a@ ۿ>ծJ%ẁ3ٕ"? hαk 5SBG ަJf/#K&^'cb)^$Ÿ"'u`+y_csnfUv{x PgkDg DyYr+"_w8B/:uE˳e<2 *_ ;h[c /f~ w {bFKWl.AXH)3`$!}PsyQ {Ȯq~wV((}P% &N3e1b>-o)TgBV!-vnaSo(huzrS͏ɱ ĹtYP˾i__ofXpo-G#k\/l{$=:]9/ }0 nIJRdyI%4 nqCF=> i EwXEe͗2y(=zqPC̰_( @ʨR|%,j0W uT,哺5O:IsZ[A(Q$36z*OOWuFZkPsw[ęs?vtӔw+*#$Irp'ʈ֜`Z{6V5%32sč/b;E>t(I0up_D"G?98H'265k\F#R85:{>2Pj#6ȷхLk޷kY%j~4׷? N^}9yisgD77x*uXUVe<1T Δ^.\&&!Am=mˡD9W<jI_iҀ33WKPs*.׈|YtT*e?I:Ң)iP'WK&_Bۤ5 1盌 '+Sn>[0 r5 .!\6 IwyMhJqSDt&60՟ 2WF_n{p5K6=ҷB1,E< W/xHnIҹKc+TAcfjW|* ]KN6ZE,\fRq+<=ԲUm\XRer84U!$?VQt8m#lt]VbCDe..N|Oa`|^BKW(c"q =_ewP֛P*eJP"Ϳޫ{nIX{*XTʁ_](^i; t0ҫQ^tNmae$dta(?;#/:қxb)%"hFv0˱4'ya (w7JVE*+- T . `c}4}Ax6# j\˰pN<4N|_Nqr,[6UIәS͙0dtOaEr7L/pq&q.OXU:3$na%b-y8ZI4W^yL{!" y D ӕF|6M嚣|pzJJ^ S\"CG`~^]}#nRI|c_q KoYQӇis6yZ|B"x1Q3. bpNGPb{YOHF[ei63`^|'>CGni^ ~&CLuDL8=9kUpE Ǯ݊w}$! Z\q%k+S/q16IM6H }F7|?;e ݮh'=|nknG'оc^.reԔiǝP.Ł F V#zx{)_!+ǽ)e6) :i LgP*".(7*8rD*Z4-]F!XQZ`L<#S'Vs4ozggoE}蠸N̉֜ϕ}3W>4ClE!yMW쌚QElnfP̻'i֫I:F),([.i[lc?Q9H^GíXTԌ g9!^^rr"Vn{YQdi*{9My]Yv6cE$d#)+bUȨ濔@SӎDrj {RoLqGe/5 Ub{6X&$  jf`Xb<UT-(̹,]\$Np$~e^+Oޑާa7SgIJzh`"lς%(]H[oDԲ}1Ke&^;q]e/:J33mOME+A}qg!G_*](2/w\rb}^e,^J-B1`qi,<V=,_P ױ87H?rБ>/4kwƥr跷GOIs_Ge8ټxAmmT|+q̥73U=w [qlEsÃǜ2'.;ᘩ*MqT)yLS&8A01$A;΋DL\ "d|{ċOq7J|jeĸXКs&Vm6X+I4]Dڄ1˽I#żb[\Jj<<nOUBhٹҮ?L̋B gzBCw$ea%Am}&|/AWW̋J/9Mp!VD ~j<߉^ xq1#1?F;3m@W`dAJ(m X>OU:kۢLbk&*ϟ}g^˔Yip:}@,}-\\Sbe2մQ&;\jdRwK9R\3Я; 4[vBF[1օ9 Q領,eWT6'QGl "[K4M) ż_ѓNnP =l$)) 0~d~~u Q}08Sܼc?RE+wٛW #! f ur"Ȇvf_ūKs+gKm]m ~5Kr*zfHL_{- ;)94+LrdeQw5>cf'\"N8*>njGc8_sVDrC:)07Gvj* 0z_ШUMO` { 5c8W(u'm}cE[t:$HͨB#~}xc>Zj Pm5ٿ%Ouf)jv%]-|9逖7#"R1c;4)-A~Y[ymʂ8z:վ4ɱ@Mw@rه@⮵ H %cjJME'[UΥ.BY?uR=$:to=cXYМqeL{{j-*qZ B(ZN0x0^/BEmTizUa ]"-Rq5MHmћqyBxOpv4.|4HsQUj^#}ܯO;wgp}1R:>$h1FCC[ަ!G;5zauە* LtE5Gᳱ 'Dxĺ;s'3e$V=<1$!A(5mu;3R `o)g=]g*n"[ВDV?["h_X2 GR ٕbHE'4_;T3}: Y_jf D/6eGʕ598TN% w=V6vnrےXyY~⩚xB.QߴW%>ꣃm Nɝ}kb r"ҮxEHNZ| .kZm*uZ]F>%fӡIm-unj/50 Ί W* SГi+(4,&ݳ<-#eIrÈԦF"_\<&m 7@rxz)y3}91<&n #sҐŴ,&VZXʰZex M/cNs(ˍqHe]zeo,KDǕȄ=3B\b/pi>xW3dji`[f)rfbYԺj)3QԲ-]&sl~tE2|J*0FS4Alt,خܛ0!5ߣ@d\c G3^j~h:@؏}gK_(|h0' j ݬ8[`K$ݍd-= .4d%xDa.rjzZJ5, _w,.<*SYp@0*NLŞ|usLJ3,+qxLeo=Bm}3uNdeMXP7\C|=#YRSbvߘ} =zƉ0-zS. |Zh,'Ɉns3:Q jC3;B8"سЈn[QXK lfYe{h7INoCnZ_BZ1:2m; ϰ2[.93Sd"e): ~`x +bkS~ b{o音 򼔐RMo ! Z.%x TL$SGRtOO]ş(DKhO،'t\G!S? y>c3qto&SDQޅR8y"~ʌ[jR,4,㰺^QfY]2-ՉE\)v9b$oÍ} ^BrZ3V&;꩝p2%qMjy'\޽v$T]FU;Ԕߐ[ 3E5昌x_6uda/E[}/10%>>C %2 }@cЌߣ{ysEx; bտFӲ=/=3l:s}ٓj|6Ȅ!x{mӪ-5h 'I6Hv# 8ws?UhڬkK5TK# 3tp,}| v寢ߦ 1U" тe]lRh&KkFO\1ؓ?h|)$ɔrq"f}6?җ@1<}TxIc-6txY_ٓWWKl`MbB 0 /wgTMZǢJ,sڒ\+'Ս |3s$;sM!!I㱤MR.߃;YdФ ;2WV|Edj%h1 [*zA>xa{r竹㇈yE%O)(5nt}Wה_%ѩʺ}',KCV޷:V0'ԊPW4e@ WwAâA*B$srA0sg.$w=](c=hV~Æ,6Ra.#NnR-7 p|OEaRv%5ifZ|>Cag8 ƀ]aB5.`Q0=yCytQeI//#;5}{9d'D|͝ &]и{#RxZ`` 7qoXJ nX>E\;Ѡub/pas߃8.,,s#},vN-sEk1Nf pr˕fs Cդ$&EW 樮i2.t@.BgLfjH`bm@Fm-nd-SूOaʋGYt-}6'Ϻ[f-;(.,? JKhy7ZGݫp1_wVvV#QNAb{C2#9`pn# 밟qKXXQKvn .L3N}j4]AFk<3&pz)ڳPFp KQK =1۴F;*ѿL1K mf.$C7$6*]e-놓 LjPW⎂bh:v@h? Hsuՙ[D}%&W3ZDy[a_bQ S xLxJN^|J"om),q/˹+y YRFQ$[{*)fx%^ \Em?4a X;Rئr~?U]b? p0éS.D2U^9R_ӺY=q墺%:Ch#c[_~矕lj%1XI>lWsHɌ$;ƹz6Dq׶fw?`._6kMp:wK[﹋>Fpq9c`yz5sn[|D|nXQ$( 6 $d9Z#< Os85kYFp$S{"ds2jf RӳZ{~Wޚ_x.hU$&#t,C@C/5>&J7 +'"5ˇp-Q >DPudaN "~ |ӖAWOܗac]4+x.]ϹPD߃i\Adϕ-('wگ!,9&&BdZIMfKq"4^#:6guV R.9cHw .1613Ga1л$\]R]EF: \ϲ < Shh_g|s8YW&pS-+lj蹆q ZM y O \bjYuW{^nNS!* (} 2O~ A.^dW\vE E E aue-BI.D؞hEчEnk/RxFtlobjȻjT@DŽR*qGA'S3nlH}؍ Ya:w:OS.ʒg v7'* y*M DCL xzFA\*R{4'bDz{|w^w]V; |簀9aS/[&p_vi6- %7\Y|JsӕFdБ|Dcl XJGsyH2Gz;>6;:wj.!RKބiKےf&]gbDTyYK]'=ɑ[]&ņL(|Eb^Iwـ'Wh/Ll3j n#Ʉ[v X}DdJL DAL+FT~ u`|d4"!ɶ,\ N3'֠wJ'o:v(0e>qyI#!s U;d 1"N֓edyݶd69VICG"P3N*XBVd6*cRKB/4Cز&׈dk0Xa Fv9Twoջ;~`1)=\ k,FOZh/i[iȋtg巣vѸO`_=-Tտ˺;&'FubQ?"fGgK,YO[ .xܪPƮ~VPH %S/veaK=;CHӰ]wFQbN׻3j2k8Ѹ*J|R.BL^n8S!?z9èik:aoi9.\9ݽhY-kz/Ӳ,|Y)#X4l`scĈe,M~{<|Yjt l9PK!qyxLyC 0Fk%OԌA.0X#6-Ҽ- \HOaF%d?i$TYCx;8Yy sjC¨'-CUid%>Ψ/\r6Dabɺ֝K &YTC*'kQFm{MOe80mUD?tt5"8 ;]Tz?"8NO7Ud.v]T }EwS8z!BL-^&O !j\>e'ޙ8ξ0ha1%p~uP`('mjV .9:2U{xu4.a^Bej)^'s0tk+>gBFV;?qW:}?A"}8'O=LDRK_lA ̑}6̿j]`]ہ[@ШUm%̉֟O7,"LtEAlg=( h%Z6`Gk`Q} u~haݗpo>LϪ4 k՟j:>0ɭ79yz*{m TqR25sbE$qgߡ#6jDG*Q=LgG3z#*iN&Mpv9M)NP'(ٞ]EhnYWNžp.C7zJ`aGmQwZ$8 YZbG1ӐɮH//Z_,lRl9qmEE4nЂb֌X9`ވș,*xܷur\=Wi4튐kIj""L>JݙQ8D IGjӰGUMfI,_q3*P4t:/R׸Iͭ kmP4 9:92˞caMd~Q%_S폫lxrЧ{?HEmdj?\ɝ\^$܊G-0xmⲮ_]~lEZF.[J́EUС-P\{e@QSFr\-'9G{U؃ە؜mBPqb>#z,1 W^*M ~P:OgBy i:w! 0"I>PtZ]q7)kL9 O-uD/ol1/2% o뫳v$SΞ 1W$ Oq^uDԍZTyaAb{Kc̠`ݥra͓[uwA"kW[klwW"]$aqVcaySPu12n\^)fdvf1biti~M1gЋ%s֊Z`yJ .]EDdPbzְf;UvAh:1ʢ!wUҥto;|7eYgŹ١ŸUw+%zĕ߃[ǂ6XVfybwC>:#ajAiId&QI~z"R~ ( #*q:q&4F etnp+eml;ĤTiʞ} Mqx`jpiζʥ + 5S|u#UL0$h \RKT\l΢I/pvE]٘a3Q1wsVdM^ @],*J:)" $sl*WLDQ%lHmX@φ۵9-:'}?)ַm&`F;TXxxb 9ߝHp++v&BIv|6VL R_0Q/$X&UҋDqgb$0|VȌ(A&H.aKx;O::}jR;d*ߜy7!46!=@{ʧQa\.:K4Or2,B6-|?OZbת*T 2VG:it\SO4 dyc9F6կ)Tdԏ+z('aī[9Ý; e @.ss `S V ${$ȓP6wGfŻTOXAڞH?=sɇ~}HD =QasW8gq,4u۲]F^!)P*RYZgKg%|1zzH"8rS'a8.)W&0$IFeACgpKMT+L @:ثF# \tY¯&f4R̢Khpt|ǴCa8JGXOۨ8s"~8e?>E]\>"#zbYM׿D9OO0`tChKQ!Υ}B5+ð4;#s87ðEj_PS]9iaf"JzBpTt6Y\^8#{djn_H}ͷxgאL<^5.Y+3 I z =P; -?"Z/.,#zpc,G%'x5wjKD@t78qV(2F@& 3ܰ 0T̃&& ~%y|C!sɜn 1Z2mhD>Ao":LV`/# 7ʟqjK6}Fˠ٢Qc~qĺKi?$'jk'~tsbwn]ER"@o8M*Ȕv=R]Ӥ[u/7,w;Po/Vu:K2գ*/'nw7Wʅ#W̮c.ދ\PGI Xo$yRm|I8v۸ct|A*pKX ?ғҶ;&( ێ_+QFqDFq]cq tpb/df*k GJ[8-/AP GTF0@85Y^R%CfWLǙo: b"Ձq^Hw>6"/dh0Хs歫FwNqcˈ  +`>RjNc~Xc ImU(a6v06 P&M|hQ!WԖJ'Cl o!RxM|e-yo+r%M[x\zRC-Gz*N YbcLؠ.uaMW+)^[f4C.3̫~ϳ=Gf _h6Jɠ~m~FC_a؈,|c Arސ=$)>n p4RdϏ8J -CM{LR;]EA$uB wNr&1 }g禮XS hssJS:P̉;l׎'+7ݭ/niՠqQ^ȝbT}1>%˃>iPT8 j+VQIunx"Jɀ{IF*F6df<& k+<x9W|i*ėWLP%E=JtO0׉áҽ f6ieZaN)& Egd `A~WAdUg&^K0Nkv(sP%|*|)0};]e泴`_SHdfp\~feY4 -?}t[J.^>MisJKY=Vy=}۠WLhR"[|57Ka s4#T6Rۖ6+ʁ7Al<9m|C<* @օF*xySM0:T3_*Cb|#Gr %z<2m쵍COu?H~Z9x&m)񩞆79KҲ̜`e7N2_ч;|ya wߦ"VE1ϲ2#+ ]|Aa'N /acU8C?\DU{V-W>5V9aDS4~\EVBڴ/=3nOŏkowטz:K;Q5veXq%~4:3"kFG+HN." FlyN Y?.Hƈcj0`R3sa!RI(O̬]qv/Q\w·l' /<7V=.\`nWy'̰"?qvŸe $G20hDգHXHj &{{%g-}/|:&`آ*纤M*%Sow` vOQdf|\DyxJkoU{c5 JGWؐt6AU\1s<Y'ʵ(`B.b1 Ϋz1c3:*U] TcE$Ѓ!Ac2N9w:Dk4B"_).i"~W%Ո`/J9*L]([%)Զqskוh'Wݬ;Nt|< ׳WƴPg%](.G"AcC >Ԭ"GYEI<<嚃m Z25Q˂?\" 3v7[% Mk6p"so *a׭Pꗭ I= t+ޥ/Њe^.=p!Ms?>;дDo YY!$IM1D*/xU?v2fFCby*Nx(^G$j4i_A^եĻ(:&n-r5T 3;O,z}(U+@`B9!&!HBZʅVk{ͣ"Z]-o7eoKQmf>}>A5`%>Msp):b`˧%jцN`0;<}ñUb5(w性fԞ-8DSeyLpA?L!Sχng '/9$Xd,9;(/V=mM1Sl{3 MX{>|>*% sx`w Jʲg@N.Tڋ8P=YgF>$lJ<[Ѭ[!y}!ve#=K:zWɺ1daIWm]J7R DLtFZ ܿ*GPz]y Wco'+󉭟ݕѭB/^ZBˤ`[ZcohLW= wU 1 Gm4:zc(_i`pPx e8AmJȻJB>BY4*6-\wvWVHDQ"'F6Ӧ@jHRfj ļ9h.ĤUCi]UsGL8 ԥl@#?$bKtiQU+uvh=\k?.Ք+٣dā{}]#>Rq:|:B'91ѝF'sjȚ_ pʕ垕R(U/"@g<'F~/$9Ʊ :ʾobh7贸/ր~}˲ЁƅEG\g5,]6X(h=%KrkĂ-8g)<]q}ȫAEăK7uF&ёdcd0u׃۸[5wL ˍ)>eJ!,wր|v.P`t\#h::a]4t<26W-@[]ĵ`qj( !}}ihbFF5ZT9p!3` F: %k9UM1yʡʩTeKJXUpAy2!^yKq)LTP&],\@\FXfvXBknQfvzdDh\=U9wywn8Ǟ-EߡXɵi wAٱ}u@b41U1_ 8YB`!wyAB+ }w<tDT#,/a6l}IOt> y{^g$>YƟcH@ gIIWV)}5o7~3 k 鉬I q{#u7@B:۽z?)KbWr?zo9.;4K ǕqѨ/ft/ ؆#G)[ڸ(aTiFl<#Rn7n>~P]׻KD1ôi.Yҋlޢ ʚ$/* zrJFۺy,@%L\v0gvDBa}O+ںtX\igV@,pSkZ4mH@*?'kMchxXFǏY 7Y~TLe2x`A4K&1~6)ve$74{!5 UQz`^ S)27e\ŶI9 5 ~c&c4:iQlE|6rH%31}@S@anPI؂Eq?oL>H!"(鰷IdI1sS p]"f8pjfP`%@AsC(o7wnfkQ.&R.:0U6} + |S{ qDx?vuj?)i;'7 _VU>>}|&eM^o`qI=z+ YZUUZG) T⴬AEN-W )[=~~`Aϑ)C =R'!kx[  =lՇy½=*}{|' d$evK*/cQnT#~>}/3A ݛ] ,йG#}@ghak]D3-/g/8בe8;O$J)`A;E`.@.1CjQAw8dQQg(P|qv1סhi9hmvWoWƠQ-lk ]"VB)fZv:®-jPu!=zqno/jEVxc0j$>Qh:=rj+ b/BYG68v͐OzS!Z"(ztob=?#KW|=n6,UOk(azAwVnҿ{ 7EG9-4p?1V+L]/J4ɰj9H逼#IL얮jmY#X T>A+_mxB {:@!24j'WP@wy稙Y7k*5.PĴ'ps~r$J=m_͚U #qu'ȿflpҖ!;'TcX'S@jTpؠh2NX$E1[r"BFjhryh&rI8-{D#7xeRʋrgߌb \VcQnލj;[>L5. \~7v]>}&t м)7y!,2P`wRwe^6?\;_ѤjW^-cȂpƺWxY 񘶢f"LTi @З@SkTTޛ]c0[<<LP~U0m D0Wx#۝0բ4Nh0>ŹTab  'ClmN?{g1sG+AEXi.I%tuU79ʒS~x>/l{.Icvel~Ɂlxvbdrg2M˰9 +ۖy)tltr$o)9>0>dgځ5e}Pa~(2w+3 gvjPlqHv% =|6dduH;9\1͞uĀ5)xy鴕>aE}3 !g.t.Ɣ-X/!BH"<6|6=ջ-э_-9P?~(Sql%WrW#$htaGʺ؇#¬_d C M %t ;!{^dF %`W[LDWn'S*Scp]Iy>iq&,IYϲu6ksyr50CV-"n0Qخ2)$k8+K8@sW{GnCwV1 ^ o] 0ʹ?S ]7BrHnM;`TAA9zl :P2xE/JC{zAfҁVԠ-NX|ot1T6HZrCLLFfXaMgvz$9'T,y]7Eb`JJ&Fj>Mh*f5 L!7*K.(G轇L0YHb#rL2Ln;6{썃Ssp~Sѷ [sH|x_w=ie܈z(1RWY%?'ܓ%/;4fL}?IbѷR#(9$.}b|S,^kaD~pO5:ITXa6Əmt]Xs^oPesK'' v&oYXЧRs_QU,R!:6ѩ\]-z!ݗMj_sqrh.rgW$P'O~D3x  i`;<ܢahUKRؙL\37H0VoDM'Eґ]$HƶbځST(]߱#ȥ,e]"iHa4!p#0/%lco;MtX"1p[bh~c[Q%BCYRPJ% z0q5n ޡ+-ߠ._`J. \e]i9CLӦ} ߆@w] sDЫpޗ<^-]0s&`qGMB_(p5ųu»MU ;U*Z'f*]w.@OokUHxa#f\}9;f,~f7٭Nށ4\Y;)I ā{g 7HAi!@a,~dha=܋[[L4vԲ UkN7jM8 w'>'m2D9 wpxbޟs qA9٦{r+WM4QjK+PE@z\Nޞִ2Tܕ2f\$WeFk -nNj!=uJ@ZthWk8gj[2d ]6~cj}JWb.G(JK)֭m`/F#ַ_Krt&';(y vckuIQlPi%LAGX&R% = 'b8wt|$kF+,( |/j~ڍBP4lw4/T\x@{Q)!lKj5dM(O$-#KyV/7^*X_P JMclg`Ahks(J5Ne7:꟬ZK""u`һ\̆YHdh^s̜FM(0s2hk:8Fcm>nŗGfiUfL/)=> v'lN ? tDN 7S@Yp'c,hv%w讘[تpt]c3vxp}2+,xRH4qs3פvsy)Pf]f뙁Zc6?F\:A3Մ۴g闄Lol:L"N`s6cY.a)ĊҌCS3ӱ{)LN2@)BX8 g!VĨy6)5<@ٖ}M(ݨup;(E+)2,,69g^Ս/'8}FXFBKrf8A$N8>8YPHUsu5*|"rdo]\@"GtW1$"_%&CRu$d*Ĩu?ӄ-^n9.<"#lIxHP$w Xn?;UE*)"oodYq;n`52ryM/*Kv ]2 AJ!F-$*/p$I2Cu%88opfaAH˴8#TTȌ]Ήz|n`K̔Cq,ꮉx$2]#|3~v dp,n!Iued~q~Nk`Zu-~L2wDU1t?J5 Ka[/xXqQfO,vr^_8hF.)怊Y@|sFVmS,Nw4KKvvz6)B9Fxj͜ХInr#>†ml3t3JbxB`Оɋ*wNUW&,/N;O8|!(K`j"X4 w31fE:k1{^w!#|֔pB!Dfk'6y䥨OFPб3X :N4F9~AY4^'p=kO>p|OPጬgAJPltx]B,#̊Ճu¡Z5۸H U1s|ylUa}+6jBj󺚠<>hmž??xjX{Sg%;fyѽqʛƞorŎ4GS6}ȡ>]7*L52k8g0fY4d6qf0+&I^ wS7<_8n)ô1!vZP0Oͳߵaglrsɢzfs zz)~|C4s Y]Gbb9ϙ^n^?s{/§)d#fM:GM^ {x&{VgCoL`RZh\Ƃ[TE*Oƅ۟ٙ5F̀*=!B~D~Ɗ ]} UQ"ʘB1 OC(F>pIER]rc'>< ˚8AyqEe˧rc˳je;tT۟ ry7MPM$o[[c|1 JD݇#hXM0q0Gi/|2(!<KZQ䓦T !/UĬw HOhKo"Tex]@˦)qCTS"bh\i d4dUm˞ hЙZ=;Me AųNvXW,_0d ih,u}T'>XW~ (CPI4k.(8=GQUg}"ojr'Uzek@v3􀺻cPBy҈l#Doi/LBR?i]2Gc*-Q0ykFpY>mFR{CSF2` ie 7l\ cFOLg&U8Wn]=6*p^JD! Ri@k#P`8!b _at)ՅѦ5 B/6Qv.8$|ہQ1KDܱg!%,;ʔfꄏ-<$YpSLa1:#C|ޤVwޠjɓ{.U*CC'Z+>ahnv]|d |\ Bo?낏9x!$.Hi3*L"ncE8L= VZME; ͦ9vTyxt4{H\ߜ+ gЧ&XkgwIRiui^2IK8M>(;ݿyux'ךO}˻w\J\a/7j䊱a_ ;H``F)f>3ٮŕI*4zM$Q6ɹT>'g%֊\]mw6eי=L,={«9z-0x\LUN9[Qi#):bVڏ{\|`y=)k`xXQD.t~ B u_̎aԏ*h6g )jr(goq {ԟtCj[`ryg7|>j"#˶grPO,jUA * j''vVw:gs Vn=0$Db7 kn hADW eaɶ}^S;@A?vJ`4xGi^ǔS0#> 0!oW|?Itڮe(h`ݐ]M*wp} &cŒ,0շ .>-#"Qp\21mՉ}'>2Z? `^}i8Ȍ6(kC ;*޺h6GT .`H\W VD,?'LJV<\L`byy\mwڃtg)L YJ9RLsA6_Ų}φ@=lGc QD£], {UN%vG(i`ܪ55ƍ/i\hJtf߷Aǽ.GqmA[M;*s -5(ƒo62YA|ݘ8ۺ$}ͷ6$sjQĮՄڦXx=R;)4qykTtL="! j%VK5y&2Xaېѐv[ʝQ9MN$ ED#IP}ڃm?5OӗydK6 3!^b닟n@m0╄*^$۹%X)#U&E!?Aa2HI@2m%e ~Hh!Z|K xBe.I,=Z0t6==|䷬>'qԀf;bfV~7ׂa3ݓwdl: Tظ_@;`GǢ!A\k/y83od~š֎[l>"Y7̉㎱ 0:E=b6` mբF ⷅd* tfvsK@hP7 GVfzw8/<n̿vE.ARKM_r W׍+#~0bAiID?,>x`+Ĩ݄nR=IUp(1)nqw?'3f4s8{][ .}Z>^x<[)ZEי ,6?)]3&!Ec_U*5IF?-x͟]Lݨ|# vsk.SQ|%)៿\ m f*zuBu(~v<@U'I6P;YK!N(r^:Y5Lor>C/6=U Q,s|SsN`$޽V;x K]RCY&~a֢sNMMp9s3#" C4\Ač҃$pX80ϾR#C/9* Vo8VrS2{3ڀӾu{SNs_0|ܒ {V2X Z}Cmtpfk 0ƣDFݟT9Emh܊LhV?(Job5VSE؀J} Wޓ`&唚8y!jyo>ܚ|UjteR&\_g.G E0$F\%= Gfu7G;M'O¼e( .'pv*V ؜42W*(I ,*$Ǧ1;czۀոe;ĺp \"K\r3% T"g0R.]i? \yRs>2ϓ8e~, Ey΁CNg0+dS" zqjG6mQf@ZDCxg j}FԭȘEXvXcK/G%9ܽ'[Vl^xW^46Z2E&\#VԙَI~RTM ~_;VtH!ޯN- 0QliJ/R.UȐK8Naue1ޔλGe6R1E+l$v䈚fwbBV)ydT}""v3&_W2:kj0ms{a=:$pf>nei'JcЁϷ=%\6ŦfQަR9-`ٸIyM+Z 0q+Ea&aٷ94RO^4jvPof/= C ]O>Pg+?۲^??̆`3[8.W@?$yeJ[ ),jFV21OeDjw'[ 7cK:;`kq>}ҸѲdoR=`'HjUl8IpV;|! e -n:-{U]oqg8Fd8 _I#FF{ӳ9L[9h,d"M }$RK8ZԒbJN SZ5! *f+Q>WtlK+ϖ)*@@+VUaZWI( .'!CmϣW֯zʒE>JT؉ׅA*|{Fcyuv', qQo0Nv 08FLh:X5љ* df6_Wxa?t Id[;Ž]Yԭк J@/ Kc:Ȼ ūXrr |vYVJp|spPU_y`2Mq5UQꦈgA6_q=V%,S(ᡂػhT>NƗF]5f4sJaľ*<i Xʹq\1\$+SpdrHa34p$DXLzOZ#D6XS >{+Y3o=Q{KojˎIj@Ѻ#~ʷRA`SX3ljkdJ=^)G*ܽ4k6|zj ufX`yOt1q9Z>u@> yMKWĀe;o)SqZHHcQt#]t:[".ikRafkmؕZ*e,3dh;9FŚʳ.c)HCbZ%N^ߝߝ˶npSZtHDnlT$͚]3y;W`}P.Rd&Hc^>o^ }H s0,%XJVNpaޱ>[Q B6ت gJ[(}6 \,#Vo.&j7k^Ɍ$O l+AB4{KSIlQnƒɚ<dg%QA+p9y 4~,`ko2y=3z'"6ueF鏢UbƂ#ظ)'WBL@ C RKvT̝_~8Eh-czU r/PTr U7Ҥn=DLB݌kEhV/~-1Ru Y3 (u(t%"jm&^<`FN:5S 0 RIcǕD>xxϰesN9.Z,-40qրa28ﶽD]aI;B}-EZ_΃1) lJb\O=z.p+8aZcNYH=+ E3SOMf_Oe~DpKV }p7p%Z;wS7M;O,(#zQ1uxr)%\rUΚaF0OHO-2;8M3 swGTg_*dR;@qα7k~_T~CLיäR1N.l9!iCs3OX).Eu(>I53'bX^-g 9nmuĶU2sy ECjGYQXfGT"S.^oPmT]jRTWT~PW2be,F`}A'8X0W]Rvaf`)duy&TZ_]cN%3li֬}<hJr{kbWYw}٭A{64z WӉ+U :h:O^l0OG8Ogfl$-w971{nĽK`;Mj,Joƻ%VOImJ;Rz$(Iƃ:8B- vG*  E.w;;SM>91Voa*TxbG y‰hHf0a6:Ɨ٣ցє Pȯyh8ƭUd(j$.Ӆ\zk\XOBU0Z,c^ꖷ'IMoҤa6IZOJxStSoge'bbi&1}\8A$څh>/aÃNQL ^h>JB*K8lJ$phx;li]O$qI19<=pMAd=€Ӏ ϭZyżc:"psN3<{oH#zNubmfCBbȜ?3asVJT}DZ:UBZ/AE8)AVnYU鹪޿>:f$`E%X};wMOb?F=.Mo5z#: UŠsCחm* '!H7aG9ju@>^F r lh:T_(3V1)wNj6BoIO"2hQn ^Vi~ԐUI> QS9F<[|Vy;r<#(pbV.= Ƚ &X㉍|(C_~$;lr *[u/tjKq/ڸJ֚L=B;.Y!_ w^= :cE|MZJn' 6u 5rifu4lp ?U.,-a5y`I_ m^u:RDZwi u4'.Rpj)-̈́G1шb 9RK!Fb29pW)+$XCjOOJr򖌼2V^.lpi?B\GmM%1e[ذك}-;{ims={#}pY"'FfC*qA ո " 3 <I yX4< T"p)~Ӟ6,>ȝB-ӭW.b "jU{g#1^N.K)FŊYTEQcl`khpI[F BU `D<% FC%$OҌ0>nϲ2)7gyb$.}dzdaU"90;_iu+.iSd` jb0Jš*H.g~ݱ  ճW$mbzK$#dPF%;RLuc=&Qyѩχpjir߿aMx u-='qDٻ: '.ePq_ފ~re5GQWEL/ő"M8BPKίE_uW{JE\+R"⧺avΪbuQpcCE Ǚ~K'A&k]-YeH I/6'x<[ F Pvv1#Z'彘pƜ>Qa:WcbB>!w∂Fv-LyD NWjC&.`B% "E#js?#I9Yyu^pբEpr I__1>O.!i6='M3tԀyTih5;\ơ-J(QyF-#EmgvaSk[wꚱ .~l.Heqfh}ޗS^~cGF']/7_|0vq d>5V)bj") ;`3>)̞LA6Jmjþ`-PLFN_;Wk=-|B|W`]`bZ4`@97S뻒b7w Xff $klTޯMlO;s\OFOw]vUJ5An }5\;)qяHlNL>4@AZb?X)zW,oB"Jx:Fuce[=[-d h 7(ryh7 =3aC$pUj2m^BD8IT0}+GKḷ̌Jo PS0 Կ,YyrBu,ַ~uCo: 5TZA <O(-$%Nc$ OYBp^}{cr8'HRlʦ05FG|iꨬtLU>Fs) 6+51K6|hF 0eKHYұ{WF;%sǩOɩށdR  uqwӂ ]8mT=i@`8ٵi3.N>}ڕU]NUW?"&z] b EBAB1)g7n՟E`hu~y{T35Y0}`NP~ͼ|C+'ra1 Qe.S /`T}3 C?dw0&SUd lB3_ef 6e7:-zZ^<d}r2u pB;hY# Fp` NUMQD[|D$tohSee`ނ-8C3Ga? D@8r aoH}({;iMm~͓hBHMŪkBj]4φ'>?#XZ+4ILe+:HoGd_#\VeXیUA4Z;r&#oT`y>/j^AG9jg:eޘ_E_gjGRf# @E;Hg *7:}Y7;./Be[G]:(Djbt.h 8CcNnY[Pu;uKPEsgCyŘv ܦs!٩De޻SSh;:/6KΪrewPZpw7L^ʬ*r|޿A !#juD28)rV $Žd2pQxe̊j`Fۿb!2v둔~LƠ|~Ys6 j>P_1D %gJ B J4j6`L銉s꫟wѹo{k" zm0h)myḨS$w^!g e0 hlgpokFe#My.͐>PK=P)㸈AU᳇FM e.PBǮwu&_V"wkxDž@73߫qɟE [S*`v$OX|HBX4 >|'5 (=[1),&g}Ac6LXaq8w+ͼ&['vb! Kf z}¶^?a:- %L`S06!FKo3T;քǶreb4?;ъfۦSs ;*g-Єnodf$&mYy nPWFs1X*w3Cx7V Ԛm`eB,`l>Cr#`C\QdJ| 喀K{8L[#+x@MT T!wBvml'ߍG oc{tf;P.5ptG'!]59f xa[~UsXSےFI\̓.{$HNoMGx]*ݔoծzGꎽ|=n8A?X! oʆR%ЕHb뀜-Y{XS'+bڏЕߡ̝Dz|(qJ5/uR*6h`'02:4./977`V*CQ(E p0mw9F]Ub@~RGs%U*2VTf.[;{jXԑRNXUjk@?@9/,w7`g5<ȯWe'_s{euD;HwoN +M'+r(bPnhND9I ﰶ䓲I 8\sDtnʕfTlJg(E'H(%&#mQ sBay4$p3i)툄G2U{qEp?E *s`T|Q76wu5&sd0?+*{!1Fh\`j]TM {`'"QTIusN'<`*xU*mfNd=WLY,dD{5ڡ-HCGj ) EC WTI> ٴ}]<0CKYMot><~U5Xð*-s鳬k ph _ԑ0\9~ww/d`o8@"سݲ޻麡(YP]i?8%tuaќwQc(أvRjpum$+3Cvʈx&T?8ǪO;f~HΕl )6A̓y f8 O @ Fw&򡩘&cB2|*Xߒyvuڎ╯m2&zg;kj޺DQum3NSۭ)6azewcl|vH͞+uSϠkԋtHLE+Ǻ;겢3aD$,z͝׿\e'yG-D,8C_|e3o-d3n@3o|wmŠފ> QFbӽ ͞GIME'rQa@e/ ȆfF8baQ e_^\d0~ kP"0&MْLkwyF,Es %yY V$c.dd*TZƛi&N&u^:oT_D@V,٭QγX}uLm,&98T%,^-QXB-6E/<@w|.a< kz,M+3G9UzOK  E-\uW-j-bSP^qs5 &򠡾1j#s "3@mQsV"˽]UkOXk`kܟB 3C6lGWN'F4FUd0PK u>ydL1gv ,mS"$`nX~v[A&tN1sK3az]PxZIpӵCQX4-kE>5AW!"S R 7Te.E汏8Bs^vb6=)Ewkz@Kc͵]٠7+lUZ~MqxX$" FKkH<<8]&$nhO6mh}, u8!Yv%X5e5%K^8xuwB/~#rB+׏iXPCc`U.1@[@QN1~kqR $_b(kWX|/ A+GgwcI[|U"C&ΚGFCPFV)aΓDgKQɵ" r&-̯okF@)^C i\#E\co^uo3κ?'z29W>#r䴐[mFH:xA&#[Tq,}r۾.g GI6t6`~DtMq|Vsޡ$q#Aث%uu~#w>w#:*Z^&MzYIP=?~ӖMJV"̹/'IdZQ0ԓ'>ME6ZH8h1w`.jW54P"\\$l6#6WY1ů!/1:S'w4W:Pvn\i<{x i(uv?H_)Z8w됏ja7cVuL$ y#ia s74YfWÆPI)z0]p"7Xqf˶_q.r' F7Qx d95Lm})s(H=piBy`'erh:vvsPDPccXn[,wth} /w(ր2z QQ'_QqV! Lh>8-滣5ԅk!=:@.cƼO|X"UAg3,%}nD"hfDvp?xޓ+Dl^vJ?1Ne:,W+5@D=)|귖{>VâV׽a9?.i3! 86_&JX%[BP27WQE ;'j^+U]'J5p;3L 8Z}~vv"}vFҠ_Z4hh |@΅QESIXؠٌ)' 20oho$Gv@td8f'IZ$}#V.nEA仳t5lӬ b9`ƍs.Ws-A:5A8T֏}b#Q^,c-8i -t@D%ו°'TVa.[:- m@[p] ^mL 4sZ\')%=C2:j)$|=V'21?6K$:aNWzeg6v'w!d؋sQ,(̇8@&G? mМnzrTe}N4 ԾV8G D9M%q#U*_Ȏ<,[VKTaPupBǴװkԝ׌^4t%ܬds:a)I7m٥PG >T,1~}sxj7Mز@ &kbkh{tt7mѱ +,hdx"CoVJX^!ֺjHT^UPTˢ!ߚ]W>@|glQ< [@-&2(lMlD'.앥j12Uit:5QC>Fi mlPLV͗5 Lps;)ޞ}kIG)+}yzld}*-{Uf#M@F״YuGuR&т !p bjo*-?^ FUZfahaɐu(`OhS W]l1ٕP@gُn;ޙ^y̨] 3;/Ȫ% +}lfK/,fJ4EwA"n<5w2U9'^ %d>x|_0$< t%ɤWӏ7$1\QY>uע;;@=SGܩ$JN.p#\F^e va5#f/ա 9ʰRfJS hKe~8$tYfs! taғ:J"\`6 Zۃ2ʐ߃p%Yx"8b7~FGUجO:bHUM?rGxfp& 1EJ'/Pf6څSy 8u[&鏗!඼w|eG?dm: Z %$O6M"nrJĚ a"I 4ec/`ɋ4ō`HDO9RDջ~!bPgn9r~f!<`S캄|ٗ>;NN +đRddSUxO(6x`B4 H% ncE3 G[̍&Ũ XmQ[ : Fڏ'23]{ ( {kNeڶ‘A{0lO{| HPkkClho!FouNXV>W(1V*ZjfwwZOl>_H~nu h#coon?:i95l١C%7Ș|g:f.1¯:R9ѯXkzYx#AY49ʕK ٧O ~؎D(HY䱿w[yU`}okۏōO=:lX@:q[wXN9 :`{vX9.N<[Twf>2y$ڧ4L cE.*$ jDQ*FHXQWB}{z Z4/a!$sи))Zh{0o®jAg+#}2pY~i/:HG8Ȅyc"/) ^iy&zOnފr =ޤb[.|GQg;H:d)`KS]AP:yݎRW|5h2% .~9/hay +&c^/쵇R)Qo Qzvݔp D,Kjt6L毁0GKoTFa/'/:;ht P_#y>l7*,͸Cn\\ ,\*yCC e@lt $10,pp. lU/v5$ @oے'tWJ!e UȒgQSJ]N] µQp6'~7n'z*I 6O~;=mfKSISb@}lBۗ?ٽ6!?#ML!p2e@0g ~A+3J|[V _|JK(I+oI58g#|@a/t1)kWW[}6+ ޠOݐ8jWoNT%\#%X݉pų+[NG|8kN(KIFEws9nQW| X5;LN $r3h*ɑW[8uY{yR|/ZWXnc\#pcg)G cW[h0jZoj" ՟L؏PPf5Q\((Y=Sl_\KpNvN5tIS,ޥy  2P=kbkU]hND/^ɀ~XugpQX[ Z2ȃXT~^Q}!SFEVT<.G$'j@D6U(dGjI$ 8؉o~Ly c)5Z΃̑gҚaA[(,U7L36M˖BX)拒/SW4 >NH5Z,mpKFV(4܃f AE1=A?ɚdu"n&E>oG0">|f(|G'6}.MA+ 8hU ylm7` ]ϐ)eb]FP8nZg4k;k;oѻ:o{jK{թg%[%U昣 覔֠9a@yOɲ|'ɑlG\Pz_3PFc S(q l Ӆc5}<coXHr*A]~cyӾ -F/X!Dy:n.Ʉq1:BXjZ!C4>fN_xD+[b .$05`x܂! l&}+.}l6Iv}V!) Lf\/໚4Wݿ`d ~(Ydʽ=Vz/S $ qQ~W=[ h]bzЌeC\>◴7΄* LYA\4l 6{/@ 䐠[ȑqo 6 3>B_|rIm{ #BX\dɕ(,1hNj#g@∲ q AR'1o'n~ҷ{" 9K2֝d/ªGҘKt:g(.w9)6WmwR +"aH"O7,h{ 4F1czɅя& +<#Bp*9D=X WQ4m_Y)A$;`l"3:$np62믓fpn@x7Ake3"+2l5_ymҳxRYZ*'W+8C_n BD8q̐e1c#Pq:f@)e,~vA%@㤂": (Ѩ9*Jvz3@h:7cF1 $jus"YRO$*$嵇'HY |]F[ߜwXc^`w,u.=\-͐B2DL^W` %"n@]ׅ/I"Rf;q_l9e֭n<4 Bf61t|NVJ0=nr4M-ᑰ? )l9  xrn1LnηA{s+$fmYvݗi %?@uDKr}SƵ6&^'6MT}@:nk O3 YQn2v샗M6;+jH7wK>#ڏۢ:<M5QQ>*eDScxN#P0.)9K`KE#53?#L'>";dI Y Rzp@ `_.񺺞G8rx<jL]ct-t։P]N]8r\͈&㌓G2i ߱02NwO?2[a7rcuZŚϸ QF~R^}KS{'&8(װ~{Yڧ_Y%IȊd&[`@φl1VMz<Glb^muћ#r8-hܥ_i#apBUue[`=0|B XI=+n}X+/0Vx誈R0k|(s0Y';jv.3菩h̊L8o1XQ+6oYX,0tZ:b9\&c& /.ѶʔZ<-M}|\W~=ߧ,t>1^&HsjX`fHi|WW{l E00cQ' ] 6bPXKsCOpv32ʚ5$t}vJrG3sdj2! J%J=D.eQFչ }@`rkA(ɤՏGȆY:0 ­NĹyF"_G؈pZ='ZϢX,|!AYiDvh$q8 O PC!vE$֟ w/t|w4-ft 1ZDB>}j ]]`,nꩱ&a\IÿZC3gHPn0(KFi7foG a#d wW!B.}Ft *jfq6f J6$Ś 6Gl(!$>XmO^ypYQfЙ1`oG ]%FtDT#k@4{gh;-Ÿ'Yamj@&g')bGX~bKhnE iOĶ"̼7lu>x0B IH_ϦVk1gg M9}?0l T! L=7Qn4bpm9Xe+u.zcgz0c*ZMmCy\-໹8QjYD`4J[~|!ưhFB+L9BN~v'ct(Ad:\1= V>Ӓt Jiوip?Om=De1USMgZ: K\H>]^2fODs53"_~@9v@&x'=b"2/c!SeuLi+^Wݓ+jKaB1PYO Uf#@ϸLsHei :ȧw$'!NLۜcv J%R"yI㜓%FƒՒ$XC矽 TMF ;*1huRcFrG?N֔!,~ Q"h c48kᯚ1Ћ)Ո2wDPT2Fl.h' ks7"uo V {piJgбݏzKkgŞ҇N̸b!6gd'^4( n61iF~'u12Rw,k}/oD@vP?Pˋ/w6 ֗'QDUZGb"4NQCJ[ORlӠ@+Pǣx JߣU JDl(}XG惔[JxFyX-8}?khBkxƅ_)~SʎZo BaG@IP; !wŔF6,py0[+H)aӰGE`v)qSX.UPrGW|2 WvƴϊЄGJR8.Шm?aIB@q[W4VUcۡ 9Wbvkk+Z,RN(}=mO4e:zybkt1gBW%c8 &sn+cQe\(KIW6q<5 p2  .ޏl&a%I}zΈk[0v"(m褌ITP_" V57Op+rrcDB`>Sx V w=ǹoE XrN bK\Jz#mA) 0\jD!lI N#!8W!#[a|18 =]!Lȓ$j.LT N{ !(,tי ִ}zni.5BnBL0h5i}9lU5 W=*5/>һ:㔊ϛp Klk+ d媱k I;XlƵË? ,uWg/" \cP\N1\1ӽc'q΄ՙײbfiP++yծk bcTUp,r3R,ptn񲖩o4]qђsKp qCI -]Ϡ2lѕ0+ZZ CԽO̳m!dQ-1>'T7VkD4n OUw&|m:@zP!MB)ނhBvYӸ2 Hryڔ=+)-:h2*׬N?@P&Hb|4彬3;?![@RM:|6@ /(9>&RuYVc+ S0(]7%Wp`h)gq??`Kpzca'4vY vWO03Z!ʰ%cQb,)fx2[7cB RVFa{?+QT^'koTMk0 Q$EU Z9\f>S2|o- j[pǡK=݋ =^)8^ W(/.<;M}<&Am@k&+}e(+vݪYQ>y>ӳ Nu$rX]hwtҘ+Q ;. qpJwA,@C|\־#l>Z8%ޜ!*|F.1'(Uժm B (,wp.w-Zеug!27S4USJTΧR.*Z xmjy<އa-WQ5Mhy$dAyU`{fF:MׇӌФ5n'Oԅ&L 1,$f5uf=J$`KD6%DvbfΧ?7)_ l(ut(ҺX$#jd'˽Z5gD/azquV[lzoQT/FΦH-k -yk&B|# k?EXR;3^4HJdN!Ϗ7 z,㓂) 9A&M Uw,ܼ6P巵Zb#>F;na;4`D]'+oV0Dj .pcG1zV0&92q@n,>T"X4H@;SROh׭ZX *;}t4ʳ @ձOsCQR,V<"BHxK y`ˆ"VY}I8 -tWwoDySǡ!L7 'Դfm$A]I2!|fXx؄T'H?ktB/ n@SvaaK@uیk[D(?$t78P1:ڑY$<%ߖ#ϴcWVpOMNf;fRxC) 4K9hnJMQy"\%M pXUH7pݩ5K1EA#` '7̧cm` ζ2}w l_Fh ;,[(< +?Dxf@;jO[x^ůL߳=~YO~H@P?4o[Uo]Kw` )1]yټz 偪Q)Ep',[զIc`Heeן Pb'1rEГa"-bs¦tȋtǀB-[WC",\{/t ,TBF/2pg,h;k@NoP0vZr)8b:Y>9 oMIBKeQ>5$hA_gDz-639θʿyæ$ŎjKDn?JaBkEGs5S30R7Pm-֯w7qN9Y%$RWe6m|3~f NUf,X`WԆTEN>/b:VDB("ϧ՘c)]<W;6fΩI8(VVZx8Hj]Wxoz0Ÿ4b:QEC p_*4aTjއmY_&7 m!ɣKBY`a_^d68daQ|XT%SMHk)MRˋ in{3(A hX.v[sgi6^7B3c r8>鮣1F3kydY[ @~>_c!61WV@pl fh\ nٌX"EED=}5-_̀B^dYey nNMR= gl{|3]vޒ&QVC7 8qZE i M 8Y2h?/&>D !̴ {r;cҜ57܌h]>KkO[ol4-~E``^LphA$wev5b1M 2WB™vA)`qbQ  cZAr&c4B7};Nq@rnn9_o.#aZyy=z [tr2hBAc5a=ȉؠ;4֐Q;WAw(2Ïf9\Rĺ֔ ^5ݩT(TMCdHzݟR˼Uӻʼ6vp߰9hł?3}^cMj \rC)CDB nĆKGvBA $JqEeܔ$ A$Kp^ <~=B~a"h/=!ДA4+ϲ\79%QM4e9Z,ImYʃu;*s ʻ]M&N<,||+o?>dޞt+$>[U=-K$6<@@UW1J }߯u87٬i2bˬݹ}Gԅ*soO4UaYaBFO҇91|)5( I Y # Ux."My_Gslx6 ¿\$'o`ʕ*i?wcmM[f>g$WW핢%ΒNE 2(L2Y8s"G:]K[[RJA?sFj'U_4v0o_y ` 6UةUVyqmyJGF6=Z qڪ,YK'vYqّ|QƞU=( SMxJg[6[/+tamp+xj51_In>K/lc:&D7ҺFbɲiiĺ \Gaènֻ}:R{$$}z}v%_XKPf1}6`?NIlEuXڻ^ie׆%g D>9|jiwW.^1 =-dT93B4e> *"G9bpUoP9:؄v??G'Ve{(\ CKl:6_+)]隴wh@"s鰶7p-CsJP,Gwf?N\VyB05{+WYY- _<Mj[=l!RV$"z%[yuAڢ*Z\^}~!̚zʍk(Mv*7^v!iBʝ>Bt*BYi_C5A.cMoӝI`\a0t+Gv ysIiPS}/Av") xd6&Vm]'};!ʷ'_<|0 K[IlMf6kvwbZO2Ep j nKayFڣRetcj$`c^Tgc7o9C`ig20 "13O cH>ܚ}!~1ю6|v1WCgɃp[O(wy.]C&+gX]8iCc)7S`j5lDB}„|^vD^=#yqis!u]gx7/[-7B,c׷G8m=ƁQBŚY}%-W4,)qM%ІEHU4^ OI* A$zMzxm&  H.Q쑮I#W<;Ըro ;  D@sL b]JB^8ZJ5ׇB# viiԥnVO{kN*A5 C[tL>{YNByQG<%y7x?N뢁׿J8\ś9ìR8h S?VdD <`}7noMMK-7Y"ý+[\$Gb% wQ}KY\~zsmu݈䁛Ǧ;Ng4vHVf{Bq'hO)T~ފe8sVyޙe=~}-ظr8{Î# nP/x B|3^ Ց(YfR]/LV-? @Ў@s*UzkbUg ;ML `T9ĬyF?ijN, \Rb k[PR+y=O#R6#N )~ltxLgd_jn[\Ȧ h3ЭZՇ{dzf3rkb%ay{IzKi*<#L!ږh<|)hwzM YlY*URZj}{P*ϚwԠnxVr( S'4+%(QNۻ$~deTc]_v_T8W0HBސ{Cs"bB.i~MfpARVP,k ֝h{ eS:8nN^&l`nz,&쇗\8YJˊA2̮khlJȥW q;aUJ7'bhƇ}LB.Ʋ' &*%iLh=-5KZ>U0SK%Wus 8ТĚ6~aYOҨi`ŴOVЋ5nۍ< 9 wC‡jovWq!f9 ck5Cp6 䲚uYL+F k@ ͫ1FLX1<*ډKfa 6OJާKq,(=DwF]#(khr鿃BqMձx t@xn%81]u4TH:h66VIIzUWs$g7W{ 6䐁7:Е4#(T3zd[`~:1y9v!dY>um`@bYչm<횪G+KR*R]7kbAFҋbj\@<*RPQk _{8eOCKhGe'LMkNGv[_hl"%yuaokILsjK6%'L:mj1s'{:Ϛ}T/m>A BѹPl {թnS&=n\nf CD Y50h^羓$o/͛mVPMkK?GuWt4-D9R bSX^oʊד)AyΎ-SK@2U-i 2I$#8rjQogU1CI Yd:gE+GY[Jji`aȠfcOV}$B;Dm8+^CAZ^ LN C%@5%b'-/_1\|P{{DMȢH`mHE>>9D&WݘF 4 }QqP,]W~߫(Oe<Ѹ|67T[F{?e܃0(3#BPiܴeLd_a5MȀflnHͿQ2S8\Ќx6Q/.Zb7鄙t'Qt$bj5Jr(t\f~ŬHnD?o];LK 9+\_!6H]}4)`yߔ}~ OmZ~\AZ3"EI+Ĉ\ۙGD ,opO8u'ג!$W=p@WEBhA;0. d/Yi CK3':<\ʎ.Ĩψ9XW,HBy s8=РE^ƚ3V V6YYmo^yQ To\v;L&W2Y>Yt澊ڪeb h|" . B#vFe?ICbޘ]LS.qYQnvc4ub]!da6;.`9:d0rZZ-jA䫎s( 7=ޅz1=' X:\m ѮetSOk4S_*k'1bL:͆qpJ60X]xNO dS Q8P. EG[-ZJplp!7!SC8b juG2FLpTԶL{꯬&.eɫ|^۔, o]#qvC T\L k<0A/ruUie;A9.zKPM9/ ?j;ih((_ţݱTdn& QBϯ|""{;a- u ͻѿK 4zVW|o$gyi7ټ)Q5QLۤUn*$9 Sq)oL3!Tovsz+zPfEz=OsEŵuJ_g z L2ŏǿJ2sR!+͐5PH5؈Ix3ͯ)<kr??F}q0W-%ovk ryYEzT*!A$l_sZ,y#V1~\5 ORTX*J#_<.g[NtmU{|I08lya! #K:RĚ:5Tڧn[aפwM¢@KkW4{s!7ח$i?MG/B$5m:|25dhDN$OZvƔt ^ъȴRS;俪9moQeI#c H;vƴ`#Xύ?(dnD0#́t~7"[ "wMiYPKt ݈-O[X@q"]X3bo`&iHae҄ 6 bI+vp64}<Nj"ɹe_&o2LGUzN>yvL C*a/q| ^Yf#c)RP{RSb6ۃ($fV GgLTUI"C*Fo䥷m}>7aH}yiE\ZDͧg N&>. +ݭ:zĵ%~"  B7ߵ܁Dr1E-[`)밞-D"_@,i 34b Gi pp ~b( r;#DYMޯz}:glkMaD_xۏ 1fiU Ny`Ŝ%pR #4t#~fE"#K(C5Ija"Ϻ˔%iE" Whx2(vQ넊>Y73c]n&mvL xg mN3A*NnfRVI%:QT}['Ѥ5+^xhm`%ڈݮej)]lz\gMPH-qc&i(*m9Vo؄˜96t9p ER<̣/;wEwe ͈zŝ؂gEcpQc]TI[nfCjXyZqCBl 6sc港v8ÓyoTqTͱMլPϦgR(FxtՆ )FggzoTk$ITqȄ`ΟѓTUU2B Hb~:M(0:̟_)Xg+%&(|,UJm"6ph=.KQ| ِzNtHG d8}Ř't{jhjcZrљ'pAlye{M{W)a!=~AWĭZa|ϩt*"kxqTݚ%K6ȀĀUCiDHF6sX'<K,LttI6`yƁ):~0JLs8CN<+Ev+dq6kL;*4ٔLKap|MR] .!sk9ǩadf%MS?KPoӧ|p܍)vaD 7zonlw(eB/q_. La{`O'9ohwE)zB< }EOm~6i.ua#&q@Zr%Fq$?jB񰕔ΖHH 3, pO bdսM6˒B`aG ׼o2Yb[ Ok4EOm߸O=o7Pi**DTfy6YNu,7BH:brt}V@rOIi7σFD̊ɕjԗ|T"e e3@z :g/Q Sr1hęzSCCv#Asj'gV~^1$CI ĞmQ}Xpv1>\„YAbs8,I] *S 76/3!B+͇3I;R4=*t09ٙlrI I=xv僀Kt%bx}ͦe2`6=MG|,YY/[r,K4I~ҩTa/AG}f덗A)A.&ie%E)jl. P6ڋ+&9Ҭo,}MIiH3HhӴcA_Wr:3Fgr7v`!;} k`ן; j*,LSMkۚd:>׳2#OAekP qdS>NbY{c98`MM7ԻBOѠWOylڛ'39;.xP(.|0 |G]<){ (6&mG8=~( _ɩ_p,zj؃e;KHbh_1댎aK`v_!}KW@)H" :-Zn]Þ6T-LŚ΅7sJl 1E(ZrE_Hfڤqti6s?UT9unk̏#Na9*6dRPޔuT-\_W\hD,m)S /ڿAZ٬:G=sR x5`G bGv B#[!I41C9Eԯ\1 ۥ,j^هQN4~Y Qag`ugw ,eZօx]![>3-"|Φw4[SwQ(60sTԉ wi}߸.؉P*C)y?- H>skR|R1N,9 ~H%~&M(o.prXiװA,Hͪmu(!z_GJ6'6:ꉄ ؓt6>tj4-R.c\$L*WyZc͒Sqp"DVGm a|+ (km`@EM/JG̱w8,V%1 @cFeCk_&liȐw c$Tq LȖ˳VkҮ䶡Aa~  ij6FĈVr^':x|^yx!i2f܃py7({Щnm% }SzEU0D.r6C^e`b$=&ujH XGL#+d,_qg. X/AC&^{c4#BPFF01Jd &a 8#Cu4p0 #09qc]᝞2<)2^.QP{C{?tܓ˙ JXaz7J0|1(тu KSQJZ.fbY/c^_mxm7E*mMH ]ly{|v0tr,R<۳:5ky#~B{=ߨ/NbT XZdžὐBbwK!p^|{Nk1WRVh_cFtOWdֳNkƳ|o`di+ ji?fi!}l+ۮrSF?xT C6SYEq̫mG"-1;e1VWM;p,v-AMM* Dh;9Mߠ9DЌU JR'ђ wx{[sj/'BE0s>EeC4.L9:KʚVH_XžnC%%1*זoOpt bB_<;U܀# IH@Q|5<Z)mCbz]`咒+:K&Y юN`|=tF)-`:,ᴺ5FqƜzU˺BEﲔO?[qHHEcPi6,+Nf~: b}u ߣW_EO^\"QcW*g]jU 3ę20B`ˆI 9C;7lD¨{9bï46H|13q\4;0snwIFKD&2NZodsCN=P=<7q;_K5kGW|kbqk~O&G|T~se )xa](7>nC͏Z3: A\]"eQԵ(+>O!"+آb}<댧\d4^G oƶ85K܌@ўPx49"]EN@ΟdY춞片As! [~ިUNrpP43q/~>IYXpq/.iͫL'BAUSoR:tSri>:)P1(7%Y+Y-h!a3jZ? H|G(H Pt8O].U#eQ yjΟpep$'?zdDgtϙP'?߁G~2 GQcF3-NH;Rqh0rwe/ $h+fhN"uG>藗WDʃؾ~*:݂;TJt4LNB%В؏Az(w3!vl6 J_=DF ]ePT顃7>zh43!lṈ]`wCkpZ%'בUw4J .L__QFՓ (ыl6: 1/dF/Pe̟ eqV(}mțdVI.ʳN"^3#w'b, ahUrR.2+KUMڗ?V&~3| A3d)%v06;VT-6Ԯ?GhLփ{Nwխ5 \xB-hW*wZ\`h@`a"b{y4D K,0} 7{7M(*;&_ŬKN=6A}[6ɝ9_qO p8O Fȩ*~J["*ug]UtÇMP!pBEk=׳IrA&P5 lkI@G q/\Zou=Ms16z'lsXypucTAwMƾ7EO=PKL;|H r9OY`q g& ODݑcZ_+_P[!) | ?5lO{A?h3xnlyO!h !ջ VʣJ0[J5_HBi d~y,=KV߂*Sܡb9Q bTeI|!'B̀-{Hthzy=i 2o]PeUl(`Aztߧaթ!;F&)d,YAmG<6`N*Qq2/=f\fƔAubIo k4E}ʟXq^]te2;K\.S>=:dYyYiFVO72 yc,31^32.—6-$E/Ŝbik+0!=0}A[Ut(,e?>*GK ?\!zjEhU!֊3ln5,Y*W\˭//Wۓɑ 1g8fDn }\nS=R w2@FwE?r#I1.GTS?@z0Gb'ooҩjO05j_gu ۵@Ȧ&3uuƭKb>ei L}aJyFUM0cJ71 DX"=Hr`5xnn {,'*'XkB wد!47/T JރQ*:Qm?sXzFG}TJߟ֑P-*i=`=#"֞Y;/\8`,wmQVfF=tD㨒"\jOgL0WD/]XYacA \ #wWDZjHsNAoF}`un{uah/V]Fk$ZhENɜaq}W]L]JũIjs$2.Ƴ^ȴy;[rVJ$U.VWufgޅ7Y v.zl \3PkN˗hVliĜY%a9 5m:[νET U_,Щ]f7HߎrѬg =YlU-j.tz$VI]HQcѺk, k:$ACP=Be{—whx;a{Gޥ֮ʶPH[/ wxHGM勤`9rf&xvNcΧ9GV.7 p8ymW3MgsB:U9Ⱥ"t͝-|'t*4rK$R$`H „ga~ԅޤiΦ!jٴktJI.sw`|/oPJh2g N*ߘZh3Kn ǀMs+i"?*Lal)J|x =+w.6h|MժPnxL-!-'ɽ2[ 0["m=CVwr_ܗT=Iq8 A3>!Xy{fZ+rmW*T) 1&iZ]ZtNpxBRIOn]P "؁ y|Wtx%3^Rd #\mnX%4M2\Ep}Cz0T S{[_΅<"eÑޓf6o%o˦V1n[LJٽ mv;YZKFRme.d؅?p;Yٮc'@~.' G*畕e'a?{vmRw]Dئo x% Uo$([Ƌ o;,Jq(?5E;f"6M/-8nM߅u`<}< Î_ V}ќ/^r!m ~;N6j?~\|Ձ̃SIa8 )5A{e&j4E֣DHv,\hZo^TZw*+{۾ΏYA/vMs_tn6c6q?P{qeJG];2;r6h8>hxhh?̒e7H2кJ. rB41GPK-'GRR6?HK*ʱ\D&Xˍ[çO 'gH :@&<ĐFLQ [-*%.G:m2^)ޗėHxiMv5.;= J_<Ф+Ks٬Y-3D92́XH CrLn!=V{-?nb5j }ϣnlXzcUz!sΨ 8Sە1cC x@ɴ'A'py^^]+Aǁ0Kۘ+YǪ"yNJ+llH7n"_BR7, ߒOɗiurBpi+`4羡_/ۋ!M01"yi1,m1b\Lm+.\]\x-*:H `#nTh8F| ([C]ȨakLV`!],_(L?77y.B}K !C{ݡ9Cʡ1y6GS4~ 3ZMRmaIy\qO~`GIz ї= 滻trgvN;]"F޲ k]\nU8|x B?DVV_+Q^ $,I'!k~]w@}KQNE&Hq]tʧ؟}zgul,גV`Ҷk gU2pXIZ/S]9y.oеz<6kX֑}LeZjOct]_gSB E+B5ٞ|>n~fc Pycr}1Q}ڳ/&3hX"/lVFPLZqo*&A ЯA!a+jF)JcOT?a9R6G<P#w'/AO 8 (~b: W6!AgN!&6q YT` dC˱3 aW *"&ڿX{x+us"' e ,h3JeA5%< 9:C^V2>]B1h OE5DKgs/ $8`%߅rd( !@7k2i͆ʺ@"z;MOLOZw:UWw~xr6e WӾ\BdXrգPӹu]1} y2ή-RN^M̔zsK #x!+ 8z1=`e( V)>CciWMCƠ^G oX"zB2!J9/ mG$1۔iNʻTq˧UL-?)NǀY#yVȂ 2>t(lK!A;4oCώ/I=ncRm&SV3 '%@jI? Zw3l! GRف4~24˽wq%س 3p:ZLKnrr ڀQD1JIe_3Q>ns~놛émҞMJ:05J6bV6{軱 _^ev_bl 8}2K'"s

?7 hUR:G_Zr.Hlp\^̯O3j ~-8|Lx("Qۧ~/w(*,@$5o'P~x<7FS;I)AASZ6;-\ NfpOR,8U⥺%B\|hyHhU?gÍEnN [b.m&dI+Ĩi@ zR>H^w}9>&Bne +޸濖vx7 f8Ե E%i]%hᨐ1ᢽD9Sq/ 7asy]]M]6jP[-MIt.H1"fV}*v_.rd- .;AxtyD.t aQK17C V"~hf>GAfeNA ĜxqU[*m;BlJ:'}]=* S|x00"Ԅ'3\C8շ|d/择{:Msƃ7d({Ubm-ƬGYj{N=X Y28LUj89b0/|,1(s6|Sjj G}ӣ)вko4j/Hta/h}BSt3zf=Vn/!DIJe׼Q.QB={4Dfrx;lE|3/\UBICG t0/6ke xuWia?'#ce[\WyIS2;1&͍Gє*D8Y{XW|Y? BVJҼ-(hZ6~c\8qL74Z=2! U)6A 0&%Ѵy[5Ғ]74 -d J9V堊5aJ 4aqi0YPpI[YYf-X?YW7i. SBG^ɮÍPP(SbvX-ǓRKh5q1AeNq~!vRdRZ57 =ceGw,MLV#+Ք4u[-b v=)*݀1k'VWG@ቩP>HǸ9J m_ش%%IX(:aT#q`(K9#`&9\+ S ZKvm[É9}͢I_Ak#JÒntP,=*MS^";2ұh8H\38tsE%hxl+F prUMPY!FD:4dj7א4"3 Q|K? +1(}V"3%DDQRQ$-YEɈutQuфy7jnj}/Ovæ^t&'gkϳmvwO4 M}&"UbTfWkMX7=~+mZ8߾V\K%޵qqw%L$P:(. 2}?ϗq+ UHζh A }x::\tD=C>1z$ udJdNz&q4 ," )V,~AK-8ЂG(=ĵ`&QK0`/2xJu9ʎx^>s9\%8=!SLs=c~Hx+k;67HL+ܖi~%kkk0zp O߷/$*ܡ5h;5wW԰ڡM϶%Jt848XYtǐJW_^|HZ13;yԫ y2dhktw{b h%8={U?*  %*vR.uHB8,XڄvO"|6|brf)A0 yq9vy΋a4lw`lTe u .pK_2TKdrMKFWHj1eIZ4J62f^G1;dqϟg5;:L.&Qh Гg$MD|X. %~`{6|JxdJ+׸Wmv"!c/: (K"acOx@wcws-௡NI3 Q;$ބwϣ骞44+ ThDhW]UnA8qmZ&ߗFz8`с6g8qxn,g3(ʓDLq{gI00)!=ZEVԘ8Ǥf6![SiY>m8}v %DoUP\-o9iZ ]),[|r^ZW[`u#ek0K1?ZrGt%m&Niʮ#%Q|0}%Y֞VL7GaH_1NGc⏆{\|+e~=π4%НNoU'@m xKD˗i+_g'~ܥzm7~tgddSf+y#%5}N/*wJ|M E~6N_WH%ErمIJ@G;SQ2VBNZE Br7"FEoOҰ8%~l \';$H> %s"Q}0@=Io ڋ}RO;nf}_1uNNldR{BUf|:-*{J7N-'9rrcF3tNeRm;HPn)+T[Y wdJk`8A!++'GoG.mq'U^~h?M4{Hwl-i`"x{!>,oB-F!mvwea+&ZmnRҀFMOb#˩4&$H94Xm&HiyGSp Y'rPzir!^}K-\V#JRˉ0*< \9fYcҦ9eD-@ZJHjnN1W@ZGs UwY{ p%yK!3.7R| cQL~C$`VΤ!DyBPyiQrs4Ҕ0z" ?O-~l/vzI*ϣX+O;%aaam;‚o2Btc(jÑRjT c;\ 0L3t]@24fZDxXPDN^*.Yr*ް5aߠ.x#wzVųv$`{#btl XH}^HmioO:{/Ph'F;hW9Q2qK@@ d>so"f(jJ.J@Zk31dߋ^zB$ֿug&rk8^ CAG Q,uC:wί]$bACa"f0Ntǩ>*lʄ$~hF2,dY؀"]:[r>ה}H4B> z\ !}&U} !#_yUA'6ƠG3:Ik;`9S[mU-"J '4 `W\"~Vb5RA^ò9Eh @+9"^`f\}9#Ҳvj*3G[4y "Hlh KY^ctm1-V[1 EQ͋7-.O2[pT]OJ 0{k2b@.+\5-k/ Rz]3|FhL*>?]֒)@?D<=ъxct$KD +BwOw)/;R5hxw0"7ihvű$ 5B u5)Wq&n_|9x"DX^K{fafLl(t@AHڂ `S-7?h֡'DO (zcoıhFu04B`>9g_ SqU ׽|ZC֯#D`0qPzi iMFYKΡ4;Qe?JhF0UJ. JhO<&*vOn\&Y^~8oz+6p߳3bvdXRHUĵxeZx *nyIXZ &btaP!6{eOQzH4OH nMPڇR,p`ߩW*u2z-[ԵoDŶEJyi]^v* !>c95г_UڞFUokV7 =4zذ>tN]Cs۷PvӾ5݈ǪĜ| C] N<U9!4Iܜ~+鵧zDՖiι?>ܓֽ~ C&#;Rle'w-F Tm3fBòT5xZXSq *N>INZ3kuL~xsՀ &Gr{+P(gpт 8?lW "dR?9~ Z8Y >5p۬WĒ]!@B 陰^ sjO#񫧕Dېr)F5-NNl -KZ∛˃*m=iPV7$!}auxPZ7#Z8a凞=ZeU璏~^K Ƃ[λG.[D'J#+NߏzkIbK(cぐ}.mܰŕ#Q"kpQSg.ښ4d!\q %o^w_;~SWbk0*9NJ: j"զ7D7N檼!09hN~]jpCQeיB*:B<=={pljY'?Mmr; Bl|.YJz wjn~{ÜRHt;N-QNX5`5t"SBqc[]/g"LwO3z v"J|iK׾0 j ^>i3x2[q^X~7u>QPGWn~搕(P@}^$jN!^H͋ Z_y&gnFS^34855C4 ]/#YBǔ\}M*w=e#&@ !ꆋ;CFb犖p-FՋn>ʬ5<\-3"d4]4p?81G0ĠŘWT".r@U^'{Q?ǾwWsA0+V{~EWvbA]S6Ux)o>6vԙ U@ѓ:ӟ57L˕ _,o7'`X]S\(@acq !Bq8c9I6aLmQRt~k ˣPvE?YPSꙵ'"HV Y~hŽ~_b6UˣwapĔ;W#& ُRb2b<|@6"8V,H\z"svRN,.ʪ!\ ݿt$jJf7fHFߚ T\CI8ΗI3 i7`;z\#l{^/{>xnjةE]{8΁BoF֊Xi'˶zǥgI\5z /nk`{w6Ɣ@?0˷P=\73[us/aUjْ"TTW G9sfѭ. g.?7,Ư):lNqy .мl90Ug|1@c| ACpjU5"ѯOwYqRRG_?i4ZǑ2` 1-nxoa}*f3,f˹n[Xc3僖Q*7]:z -XY{u^E0^1I)%"}yR|'W=ʐ˵Jg(3LT7Yug? }݇*XLµ Ǡz\WŌjbkm jemY ]giJTn*}lv1 U,BPs4Z-)̎3 KW&K$ض(7,Zch{$On+t7`v$HdL7줡`k|ѼU^9pr(Cf /6ߩ~f38XB< \L0Bw=@9(&> :KaqYMfUͷ$|Wb' Hu7Qo(:0`mauXJȣu,^'w Ua 3zEkA$І57n9 헧7G7;ᶨmދOg cԈT=t55 ! &'rۋ{q J^JݔQ3XOrdDFZDh߮"ƍtg;$J^,JG('vii*9,w5'|\d Q'Uxh'8C&4: Jx51]et[p_7hd˿\5uo'0 AduBpn-sze󨺦ӮG̻IZsɠ-Mw@'f"2&`#N`E7*gra(WV3՚O{w!@EKWa[FTd + c]씘_a.J`?jGInCi1 뜃h^r9Ci)=̵j1|##ߴhK0qT(Փ_FxUMJ(rC)Y;IPoL1)cU1Im_J7%7ϸb C;uB8+p0虎,)r;}~D@[J8]KN" m%&*ÚTH)nǍš9wic6FD KS>3(|mI0 w9KsDRTH胈;s4'>t8s }h)i67Kޞ@Øb7A{ɋ%ؗCUOY.8O,=spnryYas4lCC?RK)/K!_=~ХiKXiJ;ʶ#\)| B/᭨Tnyc[ kb7M[ E+h'}NPJխ 8PCeXr4c e Y؁[XO7YŤ-QC߸_,e63RuO$_ ]3;#lyiC^TM <rRA)l"5\'TTK":;`J~D=tW}۳P IQ櫋V:^͌7<%] (bϚ#;ʧayEY7)QMkwPs/"6sXðj eQŎbo eO7m>(=ycR[Ϣ߲Т?w_!;! I=brD-T$=Y;&nk9kefFJvfBJ wwi*9փ5'l`h?ئ*4ia k: ( TUMH a F|FSǖKR`pQe̡JWAVH 3EXcoJZAA l#m'ftU56晛_AjTSMsIƨNO_߾&Wl4;+dpl'}a|Q.5On癝B.f'@%[,Ȼmah,zDe=ݢ.({FE{KnVaV5>+R3`O ۍ"Qd\d1}`)=Эp}GucM dH?N0ȒB]p;Us8[/25Ii6‘^e  ^9#@+] 3 ߈aIqyJp ]60sȠ5H0ܝ7Np>fY8)*{ah _JdDRp>([|Ͻq"I_ \e&偞WADe'^f?0 lg22Wr8ࡘ8u&Ԏv{YM_T֌BxezvbVBB7Lȫvv.UW,T*I@j[!@s}qqNEq=L@&|1s6/6SJ"a99SkgS釂2Հ</Ue'Vc5޽P1%"B9<'ԳHw>SdⷦKn=N-X%{=_E=IC_zStE҃FfS<03! ^o#Fd,&Ye0D2̶582eLCb"KK߭0+?iV,o%䅖(UR7i$eϵښ{/~`!R\? %̠qrhT9Mu>ℤE"dyi(cֳG|}2pW0\*@5E^ID+uޡ IMDGs -q({a#O?\K\?E–)Eh柏Dp$ib)61=CFΘ?w  G1&4x!vqIt^goYaR[xi}aJhʶ:s֤ճsM40! DBPXGnZidRMSwFn־мt) Jeˊ1̈ĩ]F Z\~BTVkN]./cLdqqVE枾Rj{6L~7|?J|`xKZzp\Z$= $@"lҪչ+88UGF5G"pN.osP4˱ġVU`kM|_,y޵Я0Xh'O;7{% _a+pw2!nކ dO|jBꩺ%~EB TBmf'n{Wa, |kLJtN^Ly t'5u׎25n{ӾǾnDjzrʾnb$2UA*IuWw~5;_ 9A[AY|E`Z+g$ 3ϑ}K?/YIcZṆ?q ddFh~YЖqN7 @eɿY? :=k (ɼa9V)8^sQ6[IS/0;}ﺂ՟.̅{ KyZ T&_x@ZmO+u׆@SL ?>a+LVE<̬ lş Gb)*f# n39-GYL(S֎~')lic/5m5*@N1 ?#[ b#|’e㷳".dakS Lud. JB$Sh[Hx1Rs^S4"^$bw3 F8F~z;+Mwkh6v(\6#˾ i1-0'.˴WUϩj*um>޿FV0) U,TF}/wskPf٥*]pj4RӾfJfdv.tLTźiK]MuZlX cs8\GWUTPcvh[:!o TjP bУNYi;;+lA3]q+ACa\9;rѹPPU{pJ]Ihe1 U'9hzpuՍUfь!)f Y> 4Ois-S?K7=!< j:ny?YiGR!yG5 a3EtܗKb"ebfwb۷+wwEĄ̀aPzrGa~t-uQxIk+Pj&CsT$ ~eT >pLX㮹,SJ%XsI%C=q6~sl䰒^$Pv{MR݃JT!wN#Rpak)X>$2#'1̦0}W!YJ bj1 '+z;Шƃ&Iq _?ݽ pԡ,aN Oӫ[^G 2h9/3~_J UUfqNsgF1ЄAܫmscu԰*p& w#ue2zeX:7K ΕCd!]!,zGO6[Ju[oEx\&E- ",,sV(+g*pmSwI3=R1h Ql>sC*#D\P8lɰEe]ha(K*_ʣIU.%ۤ gʖhj@DHՕǐu&ul1%`p/,*c,1{u'Cf "%UۯW6ym GCPB_շtpϣ溟{W~2QJDGAW܁JchEvw s!2D(.F&d(:Qt]ق&ZkiD?\6)%IFy *WߩY)z|uU%> ? "WǸ셯CW9΄<>.bQ*<^0YZ!k J>C-)ګQ@%aUM9~ʼdvZ0oIxjh}X=> V$뙓7];{96xܻ4r.%<<`yXl31s$mF*-_X{>ěl⍀Ϣȝ8@ 7fuLePg8U^M|Ԁӑ0tTY6Pg9_Nml6rd# OД<ջBI)wA^AJJu%Q\:&xLc kaP5iÍܹ5e%Ƈ--f/QOk?n~#n SqP6.* ][֭=~)r8WTK^<5CJٶg?X0԰&vIFtiϜul_OƵCJRΜz+AD9|3yGVs j лJL8/vx%_ZO,ظd8?՛T p?8n %o(nT!%wpH 'pAR;.2+:=N{(P׺ŸFpd}f#He}=V`×ZھWh:aE a H`3ˇO(DރQݨ4P<`fױH @siS􍬦LS/>6k&(Gf4PF5q㝩C tM v>WOԥaG}ܵQm4*6pD BQ Sod,ū̅pu9rK< @)>m.6\E?8N>Ħ=%S-ܮ v SAɽNx.n36{^ kJ *˔9Q-VSJ۬I֋wbܷ5O*4+,}ZBb“qLw iG3I"Λ/o' o8JV4BKQ s{xnދ(PC N]E⳼Aچ/LNjpقuz>6MQOեoRSEl`@jH '_gn:\4N8~WUP?: ȸg(jqM:S0#O)%!"YlRMK\cTz an\$rE]Mve32X1vg-=C. P{׻! xѹ>p!1ܟ-J.V+JQ+#ʥ}yؿImypFkp#7t"1 Lj,X^>nXDǭXXrmԳ-K#W4_Ht,>ܤ@fЏ7thhKN6b,ݢhzUYjxxq GRJ_`X5)o ܜ[Egf=BX|IZ2yJ/]nǎ֙tuLȑOq)Sl!@M|&qɯ/gĪ;rʤ#㖣~89nƨad '!fgvL EطPqm:2"TjByVJF\aWJeD+:I6 ͆KQf4ayVqڍrb&uU}2V͵TFY|I`knŀ֞ԩέ [C-YJ#ZˑZ(G4m# =cCa,@dE||㘗Ő҄ f?&uF?:ٴ:T#KwD$O/R6Лyn@07$MCv~u~qqK-@̫ELJZ8fB CGWIT/,-ԲQvl\"kz"VQ,Yp &ihPw-!Z_^f d °ڈ8R`ԴE][ONFk@YҠ++r;jW}LxSFNiuJB?~^ÊJe,6xR3ō}۞})Vi~IW!I4)e^ڊ}N&F 5Fԙլۢx:\O5Hi2['j7hZvj(# 4Rd7xF0=-!2k Fd}w P烖zJwEK^<>V1LukO@D*ĦY%"0 K\ܸ;=>ŝ6%H%"Pd*W^oK?;.+ hPiF^2>ӟ17?qepX)xPgw\d6\s&5# LELSO+'ם>Dɰ rn)[;7́[ẂR:YEڇq p5WRkyU3[U  ,H]BĘ,[OUV+3kSE 9;"gHב hdH56|/B5ы1 ?!#DM;x!Ҫ&:A33,Ʉ? ir;ukn7 PJ$q EC[B5$=@"7ql* |u_ ;lEao`~<;)aҰhcPoY/O&:/&@brxNAZ+Bo-k'FN/9PAW%S>˷q΁mY^]:&*bSuC{~_9Vk F0Є&'&5] ^l(ɽ&7m2_}n÷ OZDLnjJWbXn(\KO!SٿY95Ů^^mVW5GYod>NBbLT]Wq"GX<ðLb?!Ō#|4;'$:E+V +e@Ҝ ie>D%hvB[~L ṹ l;N1b f=Y~uDj.=dWvlx]0jƔT=oD 1AQ'u<)aTOW6R!fo[67MMG<}FIDD Xܜ\m4 "P'ٍέ]nG^HʘRU+؎2r5qa׾bwߟ)7%%jV0@[:MecҙZh;;p {p_*Օ^6/<&o:W=Ou!`urW:e) IrJ_ɫz-2=T∓D&%/2H!!'H`E&1(Ak|un8~> 4?hx@bW~ZFO98Y`@ScupwG5²hUE -P)-q/#yW ż VA!Ã}߽,+U>VWmM&m+3ymCͷe؄aJ?<.+R1F} pŽ> :Mp; s3* @Ծiq4&eFA2"Bp&k0LCYrn%HjN=ݜHQv.re9OqoY-LςxnXl͎~9c7fbDb![?.oG\].ؼ͕3zچ :Slo`-zNo 1OdPvvMo*XĖ+~8&jXpSԜm0@?}5Rh&dX.o +sR9 ψdOmw_ eƚ׍mjr.I.ɰ%Ѻ3ϊa_&9@K l[ $(Y.U/M撆-Ի(ڲJ1=~\`v=&D0?JUk o I_rn*W`su$mi!ienZ;P‡ʠQ$@zd ¾tv|/#FC@+E=T V0[c4i#2ڝ12 <.Ybǚ|.to"tj:C[Āt_b³'Jpw.[Dy,|S/*U݈B>iJ?]lͭ3)!k`1d9iΞ{nUTJ*O:ʛD:b,kP/XF 9*M1S2  ޖq9z/B?go "!z.l.Icⷢ7>J<9 l{ymSkOGZ.eKzL ;8W u/zb.ZJˆb|{yUdB$PSVuAa%5VDH4aN}~0"kR4H#QrPS H `g^64}~kfES*!@jxJ0D{G5`ZS&Gn3\G~"[oNt/&J0?P%{ P'2XK3=Lkc< lWCM_2>LkluN>-/8FAl,B⹼䞈q͎?A{[Ovsc",0BbanM90,U.!D #">:ߢRh|(c8IY"6!t_e\@pH2A_@Fi#ަ9y3"I`Zۥ nwB<=SL0EH`)7K59 hgw cӒ4V|`݊ӮSRPgp=cnc D@A+/Ibu(fYLfI* YT0[h}a `lH9hyavC"rlge(ѢGmNARBG܌qAH`1 & >0Drk!}@ѨcFDK ;H|US6kPb[J.t$ ;MmӦ;iE\w .Ĝ,e6J ȓ(#D.&zCd*s6SX%nCE~a18|r̐QŌ8/Z?3MhM)^Cg"Ƨ)khϵ%!&(H; E-өJ;Gp<U9Pa?ĵ;̤?Ams{ -/[[޼Hl:)p{SDWhx>U}G[}2阼uӾ @cYBB2 +]>?\Ɂo؛*+hѴ%}oɨ a;J5J&LE덝&Ж˞r v4!ьY%в 8LFӨש|Zr(d<0.̢ҩ7yGG=Ы:oay'V!f@r X㾚ꀮ(sƾ;szڭ=>8 nζ E+Jzr]6\lN A38.5l哕B]8\z<H2PZ'* K{0EOHEgYVSH^Aj̃5sڨSəf@'3 Cb ;i`1/=uuwq`^,JۗP4$-D׳LԆI 0~^m"5rYnXaoKn aSחqnF<21<BgtڎSB*3UfNJc!מ[,}*7_F`Iua63^moGVfsCϗG$j1 l5U"{-(;Q>"^m ;m(Q+ҵ\gtHzuVJ!]\BשT})+k{$@\I ~VqȉE/ƽmAsd~^<^R"#3#>ЩWGۗLMh5|%8U0&/&NnpNƄB+W$AnGc;0xw# 8/ڄ@'7qe)pP'|lWFmzLw&c%oCp&U3/Q}lvӖ56ak/笫փChkC5R1'HtlU>7'Ÿ? FŴB*/^U-`=K>Yb:OFy}wZ ZČoQ%K{_TClW>5/7\`<2+f#'^YQ{M;_hLLl c0sCš7y2-E^ -ůER,Z;29Er7|Jt%&D_'/-*A$VH4hYR}W8w^ϛ$(䶼|V^1>ke5EZ04Tt0 TX<7%@ NSwf=b)DJQrnx|gͷ2G1?]/売)9& aw鉌~sj{3BDw'(Ef\$EhCଢ2I`d?/!sRm-2q ܯ ;Tâ0LӝW{X wEK_'z؉c&5)>=G/@ i}hkcgIc(9.ڄ::4sr|j> ;o"Sѥ/>v@+ɽP ;wkm>Qy}嚈ě a/عPN8Cnr%'}&Y [kPK2k(O&,/MP8̤(T/9oVKаoD۸ OLꄕ'W6q+UcڝK1ƢnT##ɵ, Pxӆ{0i)?M^91,o~);'N?2<5 5 ۚد_3^!>rRYM~8~El OkF:jZ7ODpSϊKnlS*c߉<;׍ @Ю|Q]"yHMalp2h#L-V 2J {7ߊ*bUO-3.Aƹe&tn&!ZWCUT)b© )Ft9|zh+lfϪ^0RvnmS^%&୎)GO_me3JgWjG _s xN,źn vV[gC^/w$mig=mACcZ56!*DU k,1j MO6LԙYG!zj$B.^Cl͖w A_ q "?(M27YADiTqX8{Dd'5/VO4R&Oxuk=bt_nUUr][⊦%lpY,!,PptB`䕹ZIme u3^Jc)"Pmn J&GHZUzTFg6y_ )mXA a Ս <ɐc{&>G fm5+=z]?Lҕ"BDFKF_>{Y ®k"")+0t[Yx樔lh~m& 7MeukL!@e< Aq$'DhóG^LІ4GC7&@Cd2;iߔн+bYpnS{ 1$AQʩM=ͮF?0c,19݊z@,XWY A+¨Ej.SWl F\/M`D .pr%L.|< ȁ5[+K\ӆ_*T`q^%|v%@Ʀuk*w`?wA@)CzG첟iǔkzn)P*dU>,=ܽNtF+EYp1>]p9" 8bکX[*aF'O3WWаH°p19hiܛ¹v Y%/|zp5rє37CU/,߂G/dыzF'lfl xDve|3 rWwHVM蕲~yJ`MzsR6pL; w1 m?+X?vmD?h6XF@r`͜R}^q%χ8YF?`5rHy&VJ#榥]naP}|TxG7$E^؏A'7B]ay6=;14iғy|^q&LDcY,l=R ݓ~U(w*#*ڗx4ZpQy *J =pTx%6Q{԰4G/ @6䭒bM\C_6^y-Ds젙2ז'5#Ku]iLoVâc|HML>jkNP;! \24t 3\wEEcѝE}:, s[ 6yÊI˥Xs i#Cim*⍒ dA^+zB2 \AwG|հ[d6~ 43RYѡ:PbqJ!HgwMndmwiZՁk0C8^N26pE0ٮ{O5$hhr%|MqCgrJmMq4BN|NpE:4=hau7*&Xf/MB~q?g(Dw]2~qg|]Z!zʁغBM{VnjLp;+io|SN-))FzQ;_H8~PF7.4͑ -¡=ijz<3۝gߐɹWިimhc__rJcmSz}1Dر8_2c>bjj3 :; hkĥ] wn&@jmE*}S<z }nԧt˨$I_wٶﴮ;?IvIwVڑ` RSV酛ٟjJ0tM?I҅Xv[BcO-lO]>agrB:s Vvq`=˧lqr2v$|sݡ>iܗ,#-~ fl>צq b]dwlKaZ Y;/G[53{gs @$n$l n ~׫|oHZn6q )wԪ6t/t ڰHnAQ41Vutb[0CVR8eϤ2D3_KNNz(2e%7kR ]*5 j՝E mE4zTKu N Ac![Ö.#QffO9 0EhẌ́ί![֠l(~-P%$AD;o+.s6hLU"/,OS( &Њ KD֤ARi.ՑK}{e>6> 2Ԫv s M?8-W4J)鷜[oNйE盜*5$nLEZ *O[Y\dٕᡎxD `6F@ؼ<HnbzcA[O_jeq|Gr45H[Jdd۷eu2Q*iTljva\vcq*vT}?v /SYkARbp)OB.1凍 < d6w`DVZ>N&s!Le5(SYKBZf1͢ p-T:'=Ϝ21)[g=^)1NUCϓ/KTϕWOqb㢒+}˯m?q$L>xb3CbݏżEmrmCw@ U2 A 2b[#=G[s]^o+(5֙2£&n-d|fHF@꓾zT~' }#}(&88UGFd'3H)X^' jL:Kd}OW5/-|`<0Ff C:(}]'.Mm0bל7U.7 hڱy ' RҼ^tUzDK,Q#;06Y_ ,$znN sn3)U5 62{+ȨU, {&_#>Mǒɷ Q`<;)V5'4_xЍWpYpm|DҰ:>  j__߻o]bw} MT 8!u^Vf)FB5(K A-[#ESͪd'jķ9Ɓ`0R*__ `KSfxÇHm5a tin3#Y3p͡ԱeF4д7 W(OD^W)X+i#xтؿ@IdNfgn)}'q˵!8r}GXϦs2꽾em4%A΃:`ڝnC̬ہAdQǫέy,޾Y)\p50ӾgptIF  'L}44c_ƚՉ Y㍌o"Wlll$T3lf)KOi)G[aڠ`~N6;5J7#Żf?^&s,!揄4_y3>iInSo%G!h U(B4"(M#hU˷%:њ~G,#!w'XhqDS,5?nZl</UZB#b`Ja,%rBkrƪwvOv ®,yh Su$#!bcF02iXJjzwXk=}`[fz:>SX=xMjT^c~C\v6c\ 3`ntK,Rtna}=j? Drkc:/VV pi6b$E2x!˿- Nx4H9tJj x)/UمJYK"CEY މYE4s)#w uG$SףjlLG]O<ԗ(RQ8F |bc9golտ04|c\0ظ.q~*P1Z C&p䈆Xu p$쿱:A) E+7&i^:QO[!LLH9(0dh `釘'YؗhvěQn*r؝ZOH4/ɵ-ȰpI$(g\dNt3kr( o^́}Yx3~R(t PS$+}b;Z}̊pP^%0mne]9TiQhvb%»{F^Q^e颒J{WahHeQjndQGo!QL$ ˤ^K1U(v%a5 5g*ַ&W!Vr/uy>e 77X5kl;MC)O6M/}yC̓f%M/aQ'6iVx `8x` ;;F.X)>U}gVC*K^y d5z̳SQ/0]>I|ZpCC(#W<{9h)ykXnrK 8=Qul%GX91ycau PIʣy>'5V5qTr_K t"N2dMsnM Ry(TO)#xIzaG>`-~6ϱčgqي-Oِ$eY9a$K2E׵l*ntO))*CJ 1)  E<9ˁՕDkd9`!u4qޭ>q ~~^Й\1zp B .}:# c~Ў2Wַy4Ѯ/B}}g׏xb1Z>#5m2ZĶڤ4C yJ~~ۉs.17 ~tk9wd ](!n!WwߙY+']m\_L3|{E͸gJNp9U6dӗrlƨЛ)ߑ.3_*$nٝڴӀ|58/lw:mH݉OB1X=_+ |XQ?= AkjhOx[<-PI7aH@F"d{MOS:5i6Tr\Q.TFTlT(]y>].%& n)[U3Ԑ`fMx3, ]QC& ߟo ;xP yZ&׶Wn7ô%O:Վl7 ৷'\G|@춓˰";ƶoaL/ѹaofp8^9wEqM9|!DC)n 枝XWyJUéɋR"d#s WJK"BCI?+kqj&V mR,g7<I;_HQ="#3Brg*m{lNLTsIva47@^ idI}cx"EhӲvퟘ,ng n@3)GgTǰU AfHH`߹򋇄K}&01fN" .fzi˗7GE l4z;)8AƉ.K)҉2@&0ПRtq;o0jI-\i#hd̠D B*^QumY+2JH~7-qT}KUTQEgVFM}RNo~?[B3ѲyYuI _ 2M3k}p4_/  >Df́Mw& @s z9MSk:Rα]- ش*~}1 mЃ*K%}dߒvln3,eAIB:Q(C8 L#:5M}h'ў59+v4X}}XWk{K7w40k _dM"0@1(.t9LM[Y MEvBIb=At2t1u$EW?(e\\r1Gu=gV)Z C닶_$0#$Z](fgƽ dh?gr&- VYe'NGR@'`𲐠o1WNҶ4xmܪہ؁ %1eF[l9wȩ g(ZLR.^.|O311VJK%9z ةzmm{c Y @W;nŐB"~H lGk8.) >l* Biխ kR̍|W⡝9ȏ#_GuМ)ϸ~M(G:M&G)^jk VbZ'=U0%4v)t#:o j(!-P=v =>vgP=\h`3Pod@8 ?TW|䬘w'a;i +9D' v$iu"k3grq^8v*-HL‚GpbP~;/5G}y+ӷl"1$:JNGaxAaxI8"a^79G0#ZG;dob&+3M~ܒ EէB =vixeMoLWB=l>0V.U!:KRn4?jS3µהp/j?pO?аow^BTK(owd@r.ٽiqch@}6`A{"x/]uPd\]_:)J'%]g c:Aǥ -z|ɵ 8R~FHj>@E9k@ӀH; QXhOk-w9|N}̏-͹=;2[h*&*bUfS猠l@L4ZgSg:}F1jmq"c!|\x² pg֘WE,yU2hLgHB\ 'Q"XP: eeG co Q{pzn$!!4Uav}yZ11rn'!_S4ǁb?8i=*qmg+h͘Q)ݿK=a3[j..V,.c5='~L&GPҽDQzKK5rcJO6M?.B|؟UQ`\6 R0k q6r/0VYʫɤf\GX&~~q1 ,v`.lC~tML8?UJk6q1s:Yad`ZTk5QGS~J6$9DQS@•yU ;"s*-e"8a! Avf:[,p7=#.foCNM 3`LLTu[EEyivZixM/vOU[P7 kzmvWlS, \.rl7z8Li;'Nga4^ʟAi+զ2GV\Izhtia/ޗUxlEHIuoWEL!3|HmxZAXgjx[6>3^[*Ǔ?((}ޕR:?BX鹃O$d1<]>AuD]dT^g^5v ?'$.jqbҜx1s#>k< x e鬞7E<< DD4݃^m5_{\F̪ T'/bb\E$#wyşj{ύiXln|._jc 1xb!yjYR{ 0"~ji)%Wr&c[%\.%{J3o4QDK mG)Qh0(qg_t$ sMU H]X{8n*ulw@^,&Oaq}j Tbwg/ʆߩWnKTxU!rin &wqoUDjr֍-ҘuWSU@Scy4nտ+r]aqQId_? 6ybzڭE]V(N™y)QԑAa.Jv'];g(97-u63$܎AЯ4ZbN' fGH)zMvUNZeyP4 Cb6L Sr)W=nH}kئ#/ .#\?r&Gvr >WCm|>VfPFQC纻W;\:Ub' o5lB7 q2H%=l|-ƐM8b|hHeNُz`f;AV5A˕kRL&5I&wIA.$ϢJeg@@ˡXl1Ԗat^ Eo ]9 لj% U *CNEW]0%>C@LudG}DesE";CdԹ6D\͕*a-9\7i l.8<ӗhieO4tk1i2g#\EO ob[Yڨ;rFJ@/,dÂ.h Gkp Ef5hWSቚ%R.m䆩wT1Uֵ q0V@+IRK&r+iA|l-4Bc`A)8V+zX qgSO;?xrF_\b X 'Y;;c. 8Lvï%bCdwT0 ՆR|dH+A8BGm/6YYQҏdN fՅ28 T D4z/ [7Ozi|~^7E3P+Ed@;iA+LK-nnio̜8/'fK/.b;=zT'>4Z,HB#dN)-쪚ӭnK1=$]rx0 1f͓?U.D\j,X:Z}c,"۞5OU⑴_=C}|G>j0=)IL:N [3VG.3@ j`kݖG@x6.i@%MjBRV%9T}f3P .a!4#eڶ]'$;c0[;'e@ew׊ZbDZ[eQBZq|[Aal5pS{1k ῑ53)6p2›Ř=AB|XQP[0 j,ߒs`qY!W=`ooX>?H/Rwc{}Q_W4۸x\Aw:J`'qqgGr3hbr*f%#@Yd53@^;x#|r4]ڽ B|r@S HuP~(H,Z~39 z%9{1{ՆbHc LmLN#y2 dS3WNY |BdKe#4fű'Y\bÐkKfUy[p-ƈ{@w&,ϩ"V\;ooL0w1ZIb4lP{vxYqO[WZ-(8:H~<݈.^z#i˹G%}.v|92\O} +:U&9g 8 |tη & B@y9gdwm3WJһqp(3-x;~[rEBw"(}%6+AEX'{#JuGLuH K`;陡.Nbk3#nEkg\ 0#UcSv7{Uqb=6 EݴG{.B άttm1$T2knwj40A1crDkx< :)(c0=?dUYj|77¾;f^ ǭq8'Oa4zSdvg:z ^p2ȖĨ\ ־6r^5ýfGMs.gt櫽B[4!}}ͯAؘlFYLԺoR:Ҧ ۝D: Gdm;c UI]<FbhX&'s*iUM×C'IJFVP^9:"F0k!4-*3)0x IXK)a3b2/n#L1;|o9ѪaC*rpҷ8Upv )~.nŘr}lD=Sb4m  20(tkn4,->6w})`\\HH0\9}kQxۭؒC"tJ!ZxX4*=^ tX9bHƢ+p/E8=Evi3Fڿ)31^9 5K{c6F :Ӟb)qyPv\ȕm竸 no-:_xc1|=#h }TE8/!eOHXTInOd`mX`m"st;Vf"?)yel9^MR-6JQp7yVn5qHdӐZ7ռp /4T_XES_ƶ(zeT̀)jʝN'CU/ P4X=cW{J\NlDljy w pwY<_&~)-!մ,^E,=:w غqe11TRR -`ʿfMIEL f$&!Iht@: &R6*~`r=Nv ڻ"|q1(֞-m,Ya %o,Z&/zLGEtv+ݟ&ȂMOIz]ﲭh/I 21Tn\8ZgȊ[A`Gdy7k[ Y^gk}8&#igA5[rae;`=B$ Nҁ΃S6Zѭj3r4Arksf/FeC ӜL uRMO〺қT٫R| R`.WgT*Be}.Ҥ _% Pr- Z%8}Zkie۝u57 N.QJ· z:=y/^_KcD7 @VyvAk=pC9l;HDTG`_{fDWcp!b6޷숯:nwB;^&m0`reۜ Shj1FB_Ԋ92RFA:*Fz j]y5ӿX _t< 9%p=o,W\:GVVOa'F-}a$K|3}W,$Ē؄+1W!9]:0Yq+ؑ]ץJOTŚ(}Ⲽ 5j8hBVlQL 'kBdV._i "ɩ6 JSO0+-$~ dA` ?WY3+ga^Wh[^?_+Z:+H!O7W'w Mxuec{bVd\eDtMz%2Oa bCHxߒM=-(h1S}VkDKuhd-*~VB#YRo۵q O=8=_5YxJb';% K-tv]-:q'֐5QJvT>Fہ;烤I_I Gng1_)[[|LY0_5 'cC`C.ĪlֶJ p%d>nuMdq&HkE?Xb`ɮ աmEODf8&;zJ |;SSŃ&5Zpm/AZyֲ`~n$B3;>%+u$Njs"dxUb|my]ϫ|(.5v=T/(DLq5+`e<Q5OE]Jb~{7# =WSje3N|Okcc$lTU1`c\+V$\\IXJV-Cqc#c BS>}}H+[>K soAP ~=-*pŶ.ɬRw sσ!91e 7fgx'U q̈́8u:gr%юXGR(8,8^ϪXJzݶwU*$agd˴x/PZnPQh/Hc>lU/Rgqe/HRGXV(=_ 1x\_n{Q.DlZK :L]eFJ <z@6RU3ꉪ;hmW?Qg"$dskX):B@*#ŞAFR7@GPZ1Oב tѲ; ^9177[X!VQT|٬%}<`ҍ/M37)gTge5 apn^VAWXRonEJ[U=zwϤ F8!j]0ǽ891jLJclU魩!x2~^G| ip˸}oOtJ*0|1pkp O]ԨU$+>a ,F6h k[5ٵUÞ2 K;1z(] 1a}93V2yx'YחY4xtˤ)5"y&7&ک?kuYY!q*S٘ct. V8m`e@Ձu 9_벹DCT)riN~1-lӜ^ݴU^Z~i͐Gmݺˈ→6#߳tWjog]C6&}QvQĜyE:%?KMFz~gBTCF sʉt7c%oEqdaLIe뜎5uçI8aAH[]xҰU\O9iuQJu 3R%ODɖH^T̹JUD6]:HQ"ho?$/ҭje<3hfmG,3;-XM EtR قbg{ˡi/68yWӫ]XM _ƠaGy˷!W(!`׌3ppyvVU8nl^I#$OɌA3͛nPJNׇk&z(ub3Qt/#0_HJ}*>M03'/<Lfvo U>K z焼rV P4OvrxXWׇ-.6b_m-yI!yg_ay{uq ) 5t YV#X6r1pKυ 5NE%ϔOoF1U?sr&'/KTfg#MPlvWN>CkT[ r*LU7t,>՝Gۨz E2=Gҗ3)2:G~-!Lzb`1TW|muhGa Õ@q4av>;^w@&Ƚex%xS$|.n+T\)%2̾ɂʻ vVCr #S|Ի-yB YǾo=(w{0֌tV--ݓ<ѿ+Pu2Hr v(% ufCmim rN)rSO{n ҂QSI1wgM]6$`+x/?v>۞}Mk2BX,H v/Ϋ4{ΫTx{[1yDLCJd0`W<§%;<! 7'j {1ќqjiȥ>JAoq"׮%JUU|J"]@ 5 i1RLοz,5$) vTD:C12NE[3*.sHv}p9h*jO?}T1e&ѳ=7lwGCȉ([j6eq<4v5%F>e?3վ&WSSnwe`pJ+ VN$lɘBWSy\'^R&jeպW]^jWё$,@Fd;"+"`$SZ8*+fO߷KZ\XE篂'Q2qQ阐 $.%F\'r>[~k$̐Lo5`2&鵺Ί|u(B l#n<A"TE;>G:m]ƴm4!q~ZdDwŠul]g4=6h>eL rwU\!˺,>Tt- (=PNayڇ:k{D&.k$l,ZiڮkT)=, ^E{|!\yU\7dNDկ|ܟMVtC*mW Hc.bh+WD7NdYd>Qd]*q(Ѓfɹls0ݭ fy]LOAm^xOҧcOE5rUh(cVLc;6"[J NboQ6hF&b czm ]+(@tnh|5>@ZW1 {@"X6)zOt<\VePɑV*SJRBʾ[!u %3_9[|^9zLt-泐J4_Wff_2)tB$.jĺw=zs3o=/t"Z#eN(KtۑM% 7~xHB:h+,!kJ9Y|h3*:+YX09?IFZ >%4M'\;vGXS/m /?C"M{.bchY~C: RX}Y/)08]oX-? k|?@"{GK@>VTKM}&; e*E8o',X&l NwνиUq4P!h0毄Ghk ?I|aW,?j0S}@MB$t*Vzc+Lueeh F\Tq|IzETٵ&K桨bV9TʑS4YMSTp\a7 ٮ UH*OV[R7F'oYi¯Z7Dr&pӪL+ʏI'JZ4wؾ:x- \ʔIb"wOu0 S,A/z2o^U ]ߏqPj# 'œCbʦ $,'.^P^IJȔI..[4ڋNHQBt>УoaN3.7ͪ{9vώk~9`| Ph}3Tjm:F"m}uwgMGʷ_iHfs9A"z H%"y+D\" Xe;,{tpm4T^GUDwpE2^J;6>6ߦ+/u7tn=}:O7&JDY75Ŝu1219xKYn6(xo_$MUYfLKYWLPWhV^BhK:̪';m<(FdS:{c;~)DI`Vx Z(jNѺV<_4Ν~[4j1ǫ Clfwhf`"ΐA$۳%p"#e%L$ZA6p p➺1> [VΒ yg gKz"@VI^f3fhs1]Gؗa@1N>$;z³G:vư@}ٰ9@Pz dm!]m:s>Lh]^?c."=FȱsG Nw?N "X!v'{?m,Κ`/<{-J߁>a eT]ByohCxkg+ɯ x/QQ4ũYZ"47_Kz4,4e@ +ǪNg.Ux#v%\z BJNߪ|@D8bC_`u3@hVo%}^ yoZSӌ>3DIB|^7s9x{y^ݨ"Gk J?aXzWle Wnw޷9 \WzQBؒ4Bj"rT;R(42 6=qf> 92G$i&2]'ꑓt88fÏe_C2`EAbuM?E)?)2i*d'mavԯn?{+Vk]G8pŪ$AZw卲r:s} 7iI@lJ tS 'S')N3L4FM7h:l_wڷR1Bs\oHLpv!!t^DOb5n#"(50]n:jd6#L;pXD<DI}̃zPu\) W*H?4쮖dD\N.aQz[&xP$wy=|5< ~#'2HvY,vNx:98Yr쨭g޹8J㋔;}5Zr*+[>>bv7w>3J d|îUSdѥU!5p6 I⌊GPN]9Jݯ;~1&틹.+Is l#N#;fv_5}6S,P0N*k\W{}9K q$R*K0bb6{y!яg*;`X"(>-.pnddKBu5e }?c ) FA巧k؋^@9Xt~tznv䄶'v08_Kko(Iє(FJ[%1c_KV} -ov!vc9ȹcCF]ֱ&6XCAhx4 ljZ3 ]'psKRaqu<4OIpUBT JpBEIⓛ_n䨻q?ׅ+Ar {^5F~U?nZK4P(6w%6/ 54s)XnH}~sl (۷/RBQgZyudeA~li`0`&}XhAB0FG,d?łu><ˌŝwFDBr`gPɘgVyhdr.GÈtUUr:Zs ȼ>*EKn ~,'lѽIlV x|Lз<pd $yɪ["Ib;xVu7KZєӤIE@<$-ĞoG{}r|^i%~)ܝa2]FU0 y [10VٚLlumSZ ]yNwl Iyw >+Eu&E%g@\+흱H)=ˬ^?3_}և|B[L - =j|Ux+-\T _ǫY|{^?3#33]*be݂x-O!c̜|S(?BQUYlPWF|Z\iś6ULoTy>[q$Rh퐱Krע)p6 r4\3 |0y_YBY7 y0ya5wY<\)ZpLh~d2ˣk6N9UKV- ]d8_MJC}QyO"+.kSȟ2"[='$>3+H$ۣ/N s6VV% =}u;l'T ħ_Fq /qu^kh^oC]ꇘF da]Q?s&vzo[DNaǿ#޺M,Q eI@ S+`-5\h6uut.ClOJHR['U~f|^R9hn+rs!Kٳy֖)V; ?j6_Nw0]ǾgD5!W,֝ь.0lJ|2\P;v[6d=]=0x]{nG90s/Bh-:!X/!A?Sp"|_ k$ּ~!}: -MpiAQ :Q=vc_41!ͫ!QWU{k!A=6i/HWd cHWtx!ZY3` W-xzÐ VvK7pg8Dh%y8XGǨB%NVAZ>m|'+§:}}܂| 䊺x{NO4,uj}C{%ƚpb`Z# dVV梼CIƁ["]9@z ZN^|?%ʫ L&w2g|/*$@ `\7/N 0 >tX3@xy>95#7v 3?T`^i:tgߖ BJ ֭o1ZԻȾ'L0֮r\3㩠`gI~W8gЈ0b X\66PUY $ah3QR,5Ē!ycg-yxQ*Ly3FVTqg hSg0.(Rja'e!>G\OҢ33Pŧ6\}vGW!s.[xLRwB_rGvp .0"d&?Z"F!j-dZx)WBysH.`eUj4Ԣ׍ܔ0[=ěh8͛5U ?Y tQkJ5/Wߍ Q.?!JuE'7H}!kKLMtޒ͍6kS3ܰ(@Eփk!L?!`! _Q IŅw'r4 a|c~bF S*zq(o6Tu]: t4_`&'qYغpUhHyI"#w m>=^gn5͍hxs#;Ny7]+(-@_CB2jYv !C"!&f%"uSK>ҀV6KQ$pP8يEsM.QsAYjb JzA<͊7ևH[H C}9DM;cOuݍ́D@φ D+^x*8(Ǖix.syț _H(E5%Wi*5vԦYHq؞u-Uӥ^?1ncimMݧsl>V&x{tݗJXC! ˉdS;B q.J&BaȬ 㚫Tm묎ihs ǥ+\y7lo֓Nh@,-Ls\],̃:vHhX Hd*6v4GUfӹ(-)RVYĞ5Vo!IbT;+o(.4I6 F'Cr'En{N@qY֫+#@"nC\UTEQq( ,;X.4O*L:kbTc0x?9^[ VQOaq)Ь!o\6gJj LŰa u&tzZpThfrg}|vTĊ{^bz: s"P=ު4|GZ4ˆKmʍ^.kt6`5.G=XccPY$ kɘ*! Gb77/ܬx; AݲA,3vko>2,W7=q<|ne'jj -I[3`TbF s R攎>nYz,ԏD6w]zgdX"AtU#|-4-]&q {Ru) ~t;c|q 9K@i/WГt>~w9 f?cAM N?ewpW%i%fSEe-1#GS<afLAӸ9%]sM8H[zD4w>CdRNu?kł.E;I,m[*teJ!Z0oBռ**r5եD pCBqܡ:O!O`}4;qBTyyl6>.=! ^MCDϤQ:NKT[ZmQ3ɮZW>!jiceUD{ :d~1eX0uKvDYr?<7& Jz(=UrhrXT+ ;nY6א-/1AsVkRZU Ζa* b!#Hin%ކ,UHj[Mz>ґKm;yf$^@vQ> =6;Ҩ+է0 ql{PՅ2Zm`[_^ň[BE`naxhD|A0W{:u\!X3./1 7}e/8z/[2‡3 [\K1o"]@?eokwַ,NXGg|.B"tk}?HJ\oz6Y0~˷A[ ÈaI ǸCQo#}>]|L΀|c%Xp-|I]IHXioN"LZ4GËMN9 'd34uĄKh(/18Iv:=B"Nrp;7FB0{~8E9Ik-^AU8~|q)@8&qFn6|U*pRg8CT=ĝN03#2vK ψ ս7P!Yʼ5ۻ5cٌڈW-]0P}e%D&I'` X@*m4qV! wC@ E4Vgi(bL]A2D#>]뼺!S NQͽH-jin3K`WDMcQp+AGgq)78o)cdXeHl$QzxZ ^M5(b+`r/yi1!x_$gHDf+2(҉ +鉣QQǗu*/Wg4~2 4f~kr4zBA޳k8 )ot9,+Iq@Q[ ]q‹@l4-g)Iyj^fEF,l)wadwޱlAډs+_ponih63)L9#VlPxzI);/]'Q}7Ar:31WPz:yuƏq0g3yD1B8 f7opEZ $Q`ZM"3A>?R֑ >qcUh <#.]Yni~{B:֖ȡtDAz , sa٘B|Т9qm%kkxR`&/<29ttScrSpĝ' BΌK3u<#5>Cg#|_$mpevGE tx:t|p`.HRgim@HʥuT3}DD"oU{`:D׋wlvlq.ӄlߢWgǐA ZظEߠ@MTp\a$ٔ_ބ uTX@P [pf-o7VѬd-31H~`z4uJa`[k30Ʀ¤{x}x-x4UTt= 8w);D^eڗfO/`DVZ A̮)>-'0\%],;\к!5{⿴jnYmøn09+cVv/yk&}st @yx~UYn,oJDMtF$ i<˨`f I{v;uO`$jBodq4qxmLF,@&cEcw\W1K6DD( 5ƂJ6Ji2Dưp@&@K.dz Ķ(T:?a}5fnj*9]>Uw4u=Y9QyN(L/PebhIƍ'RI "s;l(}JC7d=NgGzȗ%{g}t #>6#>-NDȗnh'䳱L@[ѵf x]ϾOJ5ňş֧`a C=\<iiJ)Q& rS<[vTwLAa.&Z-|tyͰf*M4CU z+bB stk|Zw,P7R ?־(UfGMߜ NKwט>T"IkMlXQj RW[Aƪj(u!ߤw+S t7F0 K\X G 񏸇wxF@h20ր<|}0_|J7Z>x?8v".sbA4jMx/]tLoo-ZLfZ-,YD#8t Sp1&*6/" Iyf' ?X:U\3Ys\ܭ80ZfD!neKDqgNx*LޡymR#d}nc܏rSoL}1Zf)?m\A ʏ (0 WZs17XCKp)?D5qԌvL%;.$"^u Fc7:X^qt @l)v EW0E$/CYiE-Bt=9)'c/= PzBDj*u,#GPQWnn=҄ s@,q L)K =A"Xq/~ xyL}+5\B3u1wrï\{rƺ4nx:NJ,pARguIz^nC[D~+_x!G/g mI Dn?9|#5аI(Ӥ^mN+l.UIơ3,irTzE1kNj~%sT.ӨpHw{ѓ1 em pZn]dLLRp@tFc[@3 nTxNj^ZvKl8C@:6ka<5 02j Sdꘈ<95q;y't}eغyj=\])zI5X=6†|ݪ{?+*ĥ"/~YV4)W vwq*ЩM92Ȳk!QA\ÊlLՖV_ujܭ7n8QbZz#hvk O>vyHI%mjPgGYku,zƯnx1dDZ\N5xF* 7dfm+ tN:mLϯ ҥ9TX:ndؚ/gcGd}P¸oY%Z wkGұ+2#yՒoo ׆5 عu+ 4w% Iu{T?2Wә^4}> hNל$ &28bFkY3#ߡۥI!D%ge9_D}UnW) Rg]U+ ]ooZA/.8ְވ(?~XC4nL?}żJx:B]E 8zJ|G-0USmܲ1XqA EǸ#>^_R~r'ԒXXGUZ}( _GP/ T>qˏRD|\8VZE7/.ȥhUm^a-Z+eV8 t>&fk#6>&hU!z 7 qĖvh9YV2i|+;\qC@g[T٧Dҍe3Z ^NB\-NK%:W, v8b9q,ZBؼsè5tswby +F {VCVsbc%) fa_'L~11;hզsh3 7R8<.l ؏Lii$Pk#iX;C"5 /U!a5qs`ߑWWGfQ32_$<gܦƎS2 Ǡ'To.Sk"]p *q!/KCXa5ѱTɞJyV/٪1̟j{}U%GMGHttO]ءM€nFJJ8uCܦmŚ[sy;p :CFAJm!_[Nzy0E Y-s!w`l LE{Mw/LB;}E[S$6`Rdtm}¨sR"V+TOּ9CSVsB:-!Wʴ$*yZAXfTÕg^!N-z8 ݶKa* 6I;ʷ=4]$š+0S#sڋ -Ƒ'qxc/`ޜ;k 慭ZoA;8ʠs b94j{-Q!e:\edTeU\LF8EOQ (X_tͮVcdk(hX¦f saaQ?:$;~R:g1`c)x`?0vMeʤaINCJ@~(0Y?Cp%޷jnGd>+' n;=k -`)1/X^UR'y0P& uB9ča. GXUټ`Iqf7ޭ%}\HwIn$)(*UbTLd[Q6k9׆_gWnj97\BE|x;7mRtvv+!K*񀖎YSيuhMV_K ˲g  &͜Ϲcx#? Gzf;QFDt=WmXTp<;sq.{7iQ\!q^^)C6g='OP;op  _ n=cpsҝD:$W!QMJbu €x+xϐ{fBLd ]Dm?,_ӝ K\~R:hTLAzzm xq|uRK2bKVbC#owdn`a{$i#B}^/&^FnMiF!%|p)AY7]Qcw19ܔ/G?&4`NP5mlE,j,Z)RD-;=YƭuHͼW/{pl_]g'WM 9gAkHUM Ckr'íRIF ![&K9w44ta_t[uyu݆ݠe5=\5`t}Ro0 &Wm*'ssS7q݂sxkF{L$) ΅=l A\hF8%:6݀D˝٘ ѥ ۊ9 t3ۧTӚ,NUT4TϮr(V)Ê"B~wǧzm+sNJQk& ‰duCli&bE*dmo$ k!3 8~`"fCe2S8oMr) ;4gӼek;Wxc\3U`6!z,\ /6Y$D9zZ#ր. (9֑\rE8YiNub́h1TH}ԕ1-eBp[A;o0a^pb2#)LȸNWjaI2H(Ay0S$ol0 X~<%(tmV0#V}~t,y]h^ F+)ָ/߲K]W+?-NX\?kAR~%+䔐RӉyy]߶ry-3u19 AZ~cM$?f==xQ1fl'pvn7o?\SPl=ib$4c[]PGj \1o1P[wWؼ!O$AXҷqTu.{1W6H}2n<״JvBN NsmW"faգL%~s;[f9iF{;P<9Sgb\ C/(cO:)EUͤ5'`0*P̫&QD_ ž(U$dn~fs}UGJ4.Վ781}MŬzD Y490)H+ךdʾUA=ohS>$)(a<$sis0w Q?*Uj]If|]~R^OD_5_Dl97lg=Aj$Mp/͜v7l#UyP^ m5kxPjVҴLgnm/82VIhow(vf-0 ·z -]i#9/D"xzVSE2qZ< Yqx̯WV{ " lwUOO~@ykAoO!%XйC \fW顕^}[;O#SI"eJPOsH8n8RQPm.hrā?XL!$祁:aFhŵ@w[^u]z:?cߚOrt7ӄO5rD!Kݠ[Ve*(co2u o\rj̾=GbbʏUKp&HC3S=5,<0b%5ԬPUg+O/ xZꧨҹ O@K5x7{Q|-b"25' %p΃gA)_nFvu-EW$՚;ך^ ΄RlkV7|pc%\ Uw9>b7$#=J82h>^,5+0VHˎcY&gu~(ƉH|g|<# ؋puf4]M)?69ƄѢQ-HnE6˦GUzVůmFQn'ޡ,2ToCBLs@Ls?IM#*$.%b󠨓?&9kOq ROodV.&DyNCO'd~岅ˊ2-]#Q+I_5}5@O\`ļW<{NѶkD28'9iNJ.7HŽ 7qILqO [D!kX4rfQ$U+_L82͍kԴRzg1!J%iWv.j5|lGI[OdtJa8(U>F 5+tCDoC7RYhω|2M[ӤWiN1|2ڍEP-Bdw+ 9pn9Jo&-hXNtQΝ(}94LaԭgEQ,Jd`nܵ9"ZI '&uo$xL8p@qT9yP/ѧl(ѭnTn{ 6Ul ouTKKqH[ RiXe*@ `hߚgk R *MV3E$v+Z`^P_jQQAM{wW1A#i\fqJ`C^е߫^y^H5oҮLh)hoJC[nhUWwkscsO1NPz5مF?c זL^DlYK#[O1l78UZµW9oM\ZRkzQ|h\njGN}iw 񊂛>xrʗچ2L`?fX~1x;eI֣7 +1}ՇZ= ~>a$i?4N+RCgϾc?Xw|ܛ (5Sf"Bօ>t!I y3N =K>RhC?P$oc+@+K3RpYZk91cfnNd[Aj{R ݀oUkzŏv.Ȅ;A8oקuXbYG$!lȳb*G(m}/ݧjWnAB,vTxkFTI,Tj?|Z617g !Sta4s@e ,<8n,'YKZ҄Qdd6,:P :{}f#!;h^4_J} f BU 5y|xE~K  'r6 2.%_<OGڷv-'Qoo1C#V=~]:n"?t;kM;fA)e< TR&֘H2TZSOLu⩇Iv&El|o)퉁5V<lN*)SOW% yjׅ4(C?e:{ s&3ۗeGELJxi*vOL)N7S/bG꟨ L^p=U-n益E8ִx# b*DI&m\r7$|y#@Nhfaa#h ztDzR)1z%LLC6*,.&>fDXڴ^.0P;XصNP1GOtfoi|y5c]b˟z8kqVJh[3-aXu,==QW=0?dwZ_tD\^ycfc^ ;2[Zlo!gϳ<e[ª?w'&[ܓIٓQP|S9SW*8û̕ڃA֗]fTVB oe 4ak#[p5 ptmMEǸ]țp2KS ǛOl+D)dD ?`) Z9 Tu]OhCH V)L B93lOuDWyW>e4\Q8T}G2S;_X v㨧TVΨч6fKV)1&"X=C )je&.+g`9q0M(\w qDBNC蕞by^_V2ݼWae(үeOR`x?V+'/Y.@)+N lІC9UJ^ql܆P'A{>"%ݔ-.3Ӆ]wA;5PvqABCXIcx=ºJ +T<ϱ\n ͭ*'-GGؕ&?Z\j>˖{ ]&=L%t16kGjۘ*&޼#Mi_HYKaWv7%M4c:fk 5{Mz瞢jHx2._$/g㵑6]|~2GxjKfe3"M_Lu!fvX]0GGaf#Eah%3QPc)Zpab']X M<=%u)Q`[J$n`'83eEZDՄnl'FHJ6oGREl5& q;kNiQRtǩ,5,͘3V|YPvh@i))-{X2bЪ?@k5yo Se]F}{1n$X6PwMA5M5vR|n c,n(7n#B/ :JZ ]ԱmTdzLƂ2_ '\i'6 `}:B F?au]ˉJ7U-׮EKxm@ N<iۂ)Cj [ΖSfU4>.ɴlD?+Km!s}lAVD?BY| PxD=UkSON'׽%ִ\jd vNMfKη)z ̔jt-vg.'!EŌ/d z.G\sO_|&=-h)ɞScLzufS M2=.j3~q"%0IOwRdGF"k}z]{2틒VfP݆+?0镘jֽOnA8Iv<Ǜ6Mޣ#^x*b'P?W9m%YV2af$+aTPknb%IL%El[**;٧`zKd8l r]k 4hkIr|zfz |FZ`ǷjGe|tYIMPz;mj˳GUP{ƬHJ}bDr'sx"7K|/m:p(*/a ri5==g!쵟F[E4zU%5?2Q$iT U)73:Ajf1D,p(9ajpU<<[a BsM[bѪ4TqˈrC5[gBwn֩4^M6ɒ3J*vv3]pˊ]_6H}V.A.,zSIvv_9, ɻ-$2xAF5ڹI!?HqIv}P\2ՁэBfz~ .g`0ns8y幂TȔA}xgH=ZwsL;1W6&VUc1^A!{7t#YFgówdW:`#GŲS1\ DKE@> /.4on/˯zV d?¬T eަ)Cmp cjEpyeso:EPFJ9x5.}!Ʋ'WPG 3f5VZמZD gS(ܖDf7SPJ |VHMt3֨ ʱb&ղRyKAՓD&8wxU{Z0fdGfb+b /5t7!W >z2)` ՛}>6l{9"a&MQ< Vq\B$e71sEUʍ8Fo)[G]Fw;EM./歃 ϊ\i(U`ݾmq}=c7IRې"g9Sz*54?ě}{b!+.fk#%`y79HzRB(7-]1$݅'@(SXSS]C5YabٰŽ\zQ[[J1FCnԦW X*qM = PNaQa=:?j+c-~B>?xy[PaO_moudΰk̭ 7vO2u V5$w5#X0蓕 ~oo`*žۮ:`d d5:F+U{ԋXfYS bɄ*5otGB9-HƅԳgߟI|c^TVyHxb5qp1UHh\ γz߄Ȥ _QI|3DQH#$iV <:'*c; ְd>>Nw_uQ`юhd`My׎8yV,1ɻO=$& c X }V8\i'ֻ!"M,,?YT^ֈ.1 7Vv)9nn:+Jhukd ޚ -Qx^Cð!zY׼ ŵb8"5e-=1=;Mu3}݊*QO~J2d AbՁ̬L{~\<~GކF˄KbjLGԑN"crc"Eh0ᗋIZinKJo`+/ ~\%5^ڷ'm ͹: H`\Gt)T<۹!K,qbm؝ !YJ x=:uettH4BPAo2BuUjYʟ|pglkTEuqLMMIOHE5~:N5HcF@,;rCҏNI bޞJpJȫ\==PAz5e 7qm$\46tm-֑{uL4!K?x\0O|ʰqjR6xv8ˢ:}w;q1Tq"6!ʛP+WsHǒ R!/Bkku ƍ 14 u@ uJ;%)tHs9$Ea3hlH$ߡ6r[v7/2տ^px,nl#1z yWoy8pwL]'Kn$o{~4!wOչIzoCePmgJkj<Mf$p*)cp(dm*Sm=Q\Wiᝅ͏A^Rx)_Ny̕򆦌!X4Ȫ7!+j Ef%ې׏)qPiH=[߈Ch8|m69:ɿboS[]@VzB| :A;,! % G&TM5jO qIEB@Njb/+>n;,K3 xk=@AD䉎?m})~Z6 '[۟dVQ[ GAf,hWn^^E '1htnp)"Z;RZ]D96sЯ4I񭏺&=>ᰣe'%Σ3JYn1|<ٱ 흪 |Na_̻g2^HpLKuMӻ? `w[{W .b ڊU6cU~I4|DsHz,<} M+R<:F|)s%PUhk$m(S{w&mT^Gf-o$x\VoU v[ m?<@q RS(~ )udY u>!U^<38 -. $G"f)(a[hHx7ĀRȷ&CvC,A?22h i \j\1*kog- ɉ ?P_~C(q~Қ"W lTUC%uL"i. S&I5Nys,xN~Nҁ+UuVHTq#jԩ+?Q85-ZL|㞫}Yqt:lVM`vlly&ӽ8G ͇*YOy(*Fph_ۖ2{fjg!"nVaN8{y7&6UZ~Beh-<gX<8gc /OmrjQtsxo /l|<60KBY<0c`mϚ=uguY9X `:7e0貦F&rƯaAIzꃂv, @{jht LJGTIE߅QОKw_Zzn S_sHG,wUa o8E 0ܝ XtL^$vqfLG >ԧaP\'fcǰ"KMP_2IzaVdd_dح_A3W~˕`:Wc*=Dk?$jwE50`y:۲&G0! Y2#%,f@}'NsZ2Ҧ&ᷧ1nPp$T- w#;H6\/sDVR'-&, dݼ1?]\mqԆEVR8Y | FŸ`&fj0 00':+ˢh8c 9jskaJVz-z{:[K*;Vٔ#,51%z [du-7|(.yN 3GˣDk==6݉G2 ]F+KǦwmJM&KX -׽XpLL}NBxDnc* Nxǎ˘gD#}H_qNi* 8L_I`WtaH1P%*SL8;΢אV+gi9'jd`9g91 k0zt)Z26_XlvFbsf6GRYESt aZЍ<&8i'M׶NYbpg F:ef9Vz퓚,i]iP$ؽ;A.} :<ߛu|΃JGQܹ 2[Ml<' t7'4t/ytuN~,\1^W+8er'Oݜ'j.ݓ ~V+vv+O"{%jn,hme;ۑB.fPɗ˨C|;WD 7W&Y kfTWD%xoTm~+!f\4vY2x5M݊e[J?",% P?!`hw)GBA(*%Oek '0|-vbY0ʿYX5=YڔC=h!Մn1CpF N `x(|%QSϹH6Ԃ p͠^\Y^U,-fB:=vZgHl O7;^CS6I&gg8d.YɌEi ?69 50IX>[`6yu%X80҄Z\dYp/t[)JI7I |IKMr+nGCKnM:0xk_q ".`8.S(qGmӥ&GN$ 2fh ]v D ׀#d=HDE(]!!V''6K#A &9YR8j"e..8[s$9@ܱA |eeI ZvHh/ǧa H|Q;!ɻ'RχlcHUEUH,5gF^b5K!zq塟@Wd5sM$K?NJb(߭E!JOA𲞁sP1W _ /w{QSMleH fOq;Y!`g8>zhpϫVqAqU Nכ͍|gВN 9,zmGY3ܫ%fzBJj䒱T4Z8 nߢV#hV x=j4VFO>*(QK"uY8âpp+[p"~TLJ!3WM1 wջR1{7hG)ǸLzӥҘXxVš' } Aj;"E=wP+,WSAdNCO q}'妆,"OcES XuA`$*.][Ttdl,HԚ ͟wDF)fB ͸ʍZƎs.a?4q =ץB3q_y `Ya*,Ƀb5wUJ2:/]dV-@̞J  @W㽱 GMAq-7s1kjH˾EͫC\I_Ri?H^G_>^mY"ЯmGfIY,/͕DB Dz7)F{m*⹻vp̯LRzG6se{\O4%J p)a2 絥.il@+J:Ak; Ī 8/~={dy(ʘ!(U;T_\f1w 0{R#We!RjDpU@M$b΢V6un'PuKV[y`,V9&n4.Cu/^йY7@e\@k=c6FA~NRW/2;da ?f4FʫG呛)9 P ,6Я5 yicgZAqU`,TZg1w9/H|X .)8u.DY/V'brگtHG*Y|"2V(Y& ﷾ю5 g{0Vy"skq&N/M Wx|5o񎉓5jvX1|TՕ|o9|%znB>ן7ۭfG'Q>dk/3xdsWcxUZ{Pq -^J9499g#78쪑)ga >$7pt/bZδc@_YwyQ0.u[-Hy|.&ȭrLqS |dY3"MݥD@CiI ;mAƥ@Fܘ TM=8!& %f+QϳEUM dMr<1MtZFMp2BwFMZ^iF>ιma}nnl[a 0klPF\_]p^)IZ1xc $[RO}w՛ɮ6~"ca7Sa BU5ɱPlXUadc.h/"p Qtv7tyl5$VБ)e$nhR_`Տ fK\T:(pu?,#J|{:K+ Xӫ%Nؽ1\?,,y>x~VϭF2C1έG*Uy[Շ/\4i![ keRL1K (AyML0{LrMCV@Q%%oXVx|taz/t ngZ~E'QczdDhUMLx^0ej;&l:/Vf_I__9lV WF^Q'ќ+|}I@jf] 9r0;m>p]tC&>fO,,b|IKiDPWWI=Of~TV,763 xIrF3Xg__ۇ-D+f\ zvWWY aFYct.=EwP#2 [B+vz;D@aqyn-F^Niie=A:hv$EKQVKEEu@baI/!+y*oʅuT$Hrfi=E%뀾p!8,ñ\~B9+WmvP ǹ_Y5^&&BvSnC5o5,"m{3$J>,}X%r *کX`osr7" vV]T7 `tø;>da?-Omu*tM܆éT.^\78ũ9cr "q\ d 7yRQp7aOɠmjev80&{E$_%!6s7pj sCHi1HCcTYlPvF5 7$XT+f2RNK{*9hmUiD nr2Rb_FLHz5m;ƽ,Q;\=po*ԋ:5}:=E] mE21|gXCW S<}\>t [${kL2O᝕k6gN'6nƷQMyUldl=<<(xg#(Pmx/(&!C vY'IS;ߵ490,-kM)b\'Aoئ4Cx+.d2(/Ө JhyIّP Oeo;rHc~] B&o uLB&1c45&+nitfs]ud@I0sn{Ri߅gr8y:#i<]1BTQ00lnAOC9ʀ-hڲ!Mb"o(ѽɸW*0V(% ɱr_ cMm 'k4\cpNT'q|wdA}@8!-;ϼk̦|ڑ|{a!LX3&?t[,>}S#Ime}q̠8V={gF {p.y £uQ+Ww8oZiMy 0ޚ&5 p)+0G6&@c1rmM 70dD:b9xd\ck*2I/]e}4raR_#bxs+?/1$Q,_pbt. wjOn7=K]S 91^cvUas|DUKWn'aל/Y9RZ|IR9>ucJ㜊ܤ,D&O~78 w-n7aPMA]PNT]4s$6v|GtfPAt 3R hοbr=jqxL<سnA1{YT znaZIӼ EHgoʍ`D<8vRi}ؠ-nj+$e@; KGGT7m$-Z&Q~TKdw hK7 ?>xY,!W.a|@M,)v&9(DjDÉwGH"XQ]h &pm2bpƭ|CR2]u_u({& 4Uk`gD2lѱi$M& 幥:_q\(@0i;/- pU"e:$ˆlƛ x+UH6a-^J*t .DxRK mзۓЫ/sdiMɓ/XfҘ L~A a>Q0evb:$rT՜mW\~0(C-aI'쪇n9 ,WA1Az3T_BE4;iaedBDŽUMnC}G#)8A&¸*".EC<(zxDM%V{狖6ַgǀ /G 'Ek%0Yh'_fmYϑEj%pqv\r`OcQ[ CT^JXZp : N>5Ϟ3xA@FB4/)xmg{.I]E/bTZpDl׆?&%K>h͢ERL_Yh=·O7 O`N 8vQt)!/+rzb12Q0S7/KN1NX[+E\GK.=G2q n^,Rbj Ԩ] @8F0 JLO;$4dq_F^U,? S0mA'lh>VDF9ux )⸛pA$6pre LD\Pzh$_~@T-/ſ+ulChj ;U#GbΕhOư䎉%#‹=K5@ԶȂ$pU듧5f+T[qT3+0]wVTJloc$؇5ֶQo.S}zޑhČ }-#! Y^CxK~V%m+%}V<` 7M \dTf7#yP'$}ek_S~,&֠`jlqD<̅~(Kz\a H?2+p:?]ڻcزĆ_w_Kc'C)%(P+{}j M%C_#e2Q`[< ,ZJu8d,-zWD=1\hEpc“rRU .}K&#_De77儒^$g#A1=ZQ̙nB19\HWA4U~?bļLCMYd$fwq f(% #۵q=294 ZSWl.RMS,Ȫ:9 N7Lj]hV}g@e{`u)lo8O+db3,?%1r7 8_5me`7F3}k&u"jVYseѵdcQ hQ>*s4S6䃔ɰU{Ғ٫@OQXcx`&4p/2f^`k pV]@(:dWCBʰ2upfXhZUr{Tj@jnS9G7R&؅}Er.}/B)j2RJX؃+VΕ~8*8=1w]ݭ"(>/&L='Z&~ {vݦmM*3&gôƚo̯c(h.ܶ`<sF PcdQv9<6u̽}w- @Kl`E8 acC,'g)=}{F.~g&Cc[ؽbt\"idN3ԉo] 83Hv ݆#XWUc(tzC/*] ʓeta` t`^ݐ&Ȯm0h Qֹ?GJgvNvXnVR9^13aEFn3p8#(kN{jw؊;Ǒ G3rLDrf8]+H P\sSc&@ G/tG~mVNf4`g%Ϛ<^q~ObmɧlF*@KRmVAʁr|At )v.D(ncoEB|B(ׂ}@,d7&BGTڎ0%8y##ryu!`T|[w4핶/޽nx!lĝBi1%mQZLC{guy i/PNƞ㒥ѹnzil P!O模5GC6Ԑsa#á і֮Tnyr>kt^n:~rl- t[ "Ơjgm[C> i!;)cPvO6sq: K`UV:SKgwq_)Yr$p`@"m:sr_ |OSbIҚW\)Sw [ Y{'tLTB.yRH8$qdg3r7fŷy"]fὸEN\wqnYF7S aR9Ux?pk\{ Ê$P$tqET>_knay{OK< =@bnf̔n-L{șEbT<NJ+Eд@KQ}Xi§{I6 5{ւT C+"WxaXM1ϓaB2 DoqBξCYoHMb@s5* #MWov/U{Ħ=e;ڈ;|scVThGiAuH#Ʒ R'wv'4LaZ8y‟tG2Tb:UcNj4F`DMӹ'1!a/b A>'!i2^rJ鹗1?g8+HiN'*fE>Z,],rT奌Ɏ Bi6 c^|+|v~*{jfQwÁd#^G [To*6܀8a1sϒ[iznՏ'[o(ygbYP)i]#YQ=:MH7#{ "uI*z_ܮuD5FZ5 1 gu:EFII#~$V!D#,:!}lMdKj+ک֢2KvE(MMpۋg%!cm>4 kװt6Ť>b\lDRzVERsHp Kj;a)uS&໤r޼•rmvWɀT]Zb>,jnu%vI=̼(p7w $t]c]SGD:6~Z%RnZr.Z.-+!:QLf{'7WU.Ϥ'bN +hXLiʂ˧yksrZN_•)1َaS`dlp|Ćw"˗mR H3ʼnn}3fCJ unhgq *Tba+@' $-n.Ice!R6kc9doѵXY,n48Y|:>!+)[(ˆkbƞ?İߪ϶Q4{QiQ,R-89j'{J'՗f9kT6߮A B:S]yqBm"hhjÆ/-dO#9NhG'ej!J 5@HD#]~蘆nLoc.]KҀs}q+:K-`d'Dn`=>WlyA—|Dwsv٭-Ii?]>,YmE&Dly(_$0w:h,!Ǹ%aq1C61},,E=C^\jD6R?F[vK)kyjm[Ob*|]ޝ|1K59!9dѢҸ=í= >d:Φ %m_Q$zl##?ͫab{cqQԾP *( %/ IžNTP\P(}`&4.*p<8ޒ7FPw-: uSeL!iB-_ P҇'llq pҰ|*S3ٵXvݒUZYh,>ؗY<okY>`dod ʟn#XF;nqYYA1+\6:X9Sy<ٗOMFWM^[c cɒ:3?EpGiZ:17X {if A{-QbFJuMgi%׬U T Rj@Dty+L,0SObΉ\{[EԽ}!)yQke[ T@,+G~g-+؊#\p㜋+ELV8t<%:[!EMf~e.rҕm]!I@/R"J>}"X.D3͘$ % }oޟno-Ê"W9[zޮþ7a=sMsOXFvJ-Rz1}Dm䛎6Yv\Ʃj~Sa^e j&ϛ'<}$'gEO⧆FVCWj~_4|-5È-˥kπj];Xݑޤ,˒7H" ;9mWbʃWτ0>>e9Ll#SEd. ,zm&[ˬqnB=_AQ =ͶYS<ݼ=;$Q[G \'{\Ւ^S-}JC#otn(E(kȔuIwÛ-X/"= ]]49pwC>< z)S-o([>6 :=h)s7nVm&YcWa@,v>^=";:_끻Z埧SDYz{PWUm<.,mdsdGc--=D,Þܑ^J/5QaWnY;ErI ǐ1([[A^{qfdoܶ]ٿbQi L[*ަrE!Z`7X`K6PV{.CT;y,7S.`),쯲{5q{yNmO32p=%7׸iцXnf{jb1ǍF%S]O, A'Ck;]zx"a$2Pǧ/4G֬ 1z׃O3É(?g F9aô0f٤xp^^Pib ՓS߾u=*6 nGT>vYfN2NVӚā

?Mװâq?&uư ]1(y5YVeXGz3pBIFXT1پ&䐩βÿp \rzWi?ƨP~M/)z),m8͉OV‰mfhv]䘆V&z+ `r+(86)~MQ "8LSZJKb2D`Df/5('\j|:qq8E)JSr->~۪WźiF9 0GZ/plKM2D{b}߹;jUW@IDfuۓ(+-bk4Yl:_:꾾s'h9Nɸo@gu-΢U~#N[rbno0((C{{ mz j~0ˌb:×4(&Qh,ny|ƅWxC|3QUPcCHF t )ZC8LD'Y<2Y^2A1t֜8„k㧣/cu~)Hz%{B*=30?NYC :OYr$j4!fZB?oA1׉*SySlvRUb(lU'9=w\7AǚRZR^?v˴9x _1&KOag1'hEWrzFQq둕Rof)敍#* 8Yl'l6kH2 8R R1?ȾiޖMUc7HChFhe lQPO5b+.n,a{Eb=#~n4{ 1n Ix4jI W5:q0glYCޙ 1#p-/g]<ܔ8Pq}[[5+{tS$V=0E> O;XUº$n阦yx]'hAVå:atdŴe7? [K8k^iC+%€_vy# mZ3EDnlMz}`4v}hwUrlN1}%c1!8?YbYz. #äݷ tIa2y G] *(A?E|x?T,}@ \Ş;O^+J!YUbV``I%ct>gPxv"c AZNmޯȞFz.8V=ò\K* 2EffJ 1ڝ̂FtAU k#}yR iW^ؚJCp{,+D+|CjҰ Y_XgȦ"ed\feh{V;'ɋ`yij0mVxqT`$Co"C W)u\!L++P%$o8q/zqy?KƒJmJ2hx~9@ pxzy=6XElq SZ4&y`%l;²:wgQ6wL? i_D nQp/<2=%&7{).m^ mB.]+EQ4/hme}Wv[2IEZpaXvj6m( ;-;D+ҿ\܍e2U>iLã{Ÿ9_Z5]տsZCQgq+MOmwb';}_{K,x#H U3FXۣҒ-U/qż΀jJ?X|ml}heRE"xE:޻Y0[vbƙ1rcK}ѧs;τC0R"c{dd惟o+%ΑG!Dtnc#& o!2$?ČyhsCJ-thS-|suБn@OQ>u۴%A .TWmxVO۵󻑎QZ>ȉmb+g?lHfVi3 >ZlnlXfd^;|#$*S=gT帽g\9V fmS^d _"Gb &,DTI:ĐBxmI|6Ap!+r!b9/|0GҔi./5&ҝ%K]m(8O)PZJ9GQ6EaHjE?O-+_^t3+ La*1P.9Aᓯ=VWTs@zs;W UrTNXcZ 8649[O˰HM [ r W$?N(m@W hczt<6[V 8.%HxQQncNy/+S Oױst6U_"SKKF*m:* uUїo# PK5MƮMXbf76]& z'K38C沦Gi@Wj X n 9e,j ̈k"`[O7U^ŀOw289nfNX-&U$PIܒ]\oEƪeҔ;͵Dk4a4l4L#\B [|$͝Q6,D* FB  TW${X׈2*QLw4|ZRri+S*r|~cP/rU? z߭ bgGӿA֑sB9? iq}Z_,F}y35o$L?6[d/0Y7!O*<H>)5OB#9(k#6Uc"X"wˢ}= ޵g6NO%kylArf9.uL!sَ d&2lj~\pn 'nb>šqFV ]70fJѹgS9;QO}gOgA Be{Cw}VA=PD-cX6+XORS>,K,Cfr,Z^uK|Xs1jc=q]h4.h@/01}B_W69` n18Ƌgba*v Snϲ-I9]+܀?pDtenH rNi@ 9q-o<3g\:-zi=5P( ݾ޿\d@b~#ra&mգ+l7 O?W@‚xad㼲SsHE ,oвJ0X\r3ԲOߐ1[*aCQ< Yb{&/5RݚE UϞEnC,[Ioz\ )ӁYpXZּ,ymu\M7w @t򵫱F ;N]*I ͇ MOq,MT4}:M2:[ ]NӃ kpMRՏpϘ(11q0M\ңdvHo(F^cׄ!eX)w)F;Τ G)F-$vJ.ƭ[ Pzwp^y;lC;iQ=)tՄ ]|G2ZV󃻏 y4"BVxܦz7MMY>T>n5˛JֹBEaeeE@Ip[=hSFxRZjlD=WSr ,V+Q5}0;ț~TgG{|˓\B\𗩨4Nkq>ɶ; 9dztU 0L lV-.'CiZK h3 Sב!fD@aYd;`M[݊t/JT 6 TTVj ?=d܅qj"pKOghbx SZ @yx"?4ZV6]K"X'-}Q'1a[*qrUv 5'&R1z `?*zvx+Zv^TMb%e{ee 崭;/URF%n ζr_N!~^/qTE|scΥvV$] e"&r3@VZFt{ ;Q2F|]I4ӌmnn! ueوiAbrC%Y(>\iIpw4-zt^̓LwhkKK_#8,MBүo!51~t<`w3V 9'HXKDsvj{v2a `.e~$}RL~G>VvIx;R_ZJ[Wo q0M'f&t35z5"|mn|rد wqK$!ac 8uH}$[c%ܜqEhWo\"@)UvW $ӭlM>ЛF)7 ~62= ]"+bʸ x^|^D?þZE0sld\X}a.sZ3^86ɂA E>sH-f2B o_ is8l ⫂aѕF2Qz+ 1<+DhjikXW˄Tr8 l >K΁D'kg(j"o uA?s(c+fo@@1BD0[H5 ;4) ךFF̈gн49m-ęh ؒ˵>( EyZ?q7Od͇,G8INx27SHoLJgi]LŬ l!6k)zOoy!}H[1>J3}́?DBH=yfߴ#Z_(ɡ)o 3  5{}-Bx1:4ܙh"^פ_M.}uփ8}$BtZvTjnD x Ֆ2 !5d֫wŰÍ#k7fY@gu.(kOu]=/]/޵>O\\#Q7@*ݯGxYγhv@~LoڜձV̓Q2 ӟ.LM܊6P0";Q;?a=1S9Gf:n_݋ڄmrls5;ֽ@H!Yᮤ;J=*4쑂=v ޹ \5_xDWfo~(vD3:'w0t*'\óN`dž-VJZ5d1U EQrб+kGR@^$o=h.-,C 2$<>՝r8@۬fzXwo,S!q@Ư3qyօLA"N(:6 i 68~498qax0)ƌ #Pg B,ɼtWg";55^>X39>;ɮƱYqhubD(gk|zHrafVVVᰀ Hk\2sVŷ'4J"?pNۍj@GqH:_dEe3uاK]8"38H6&5)V RO 0!O55/F#w掗S<c빦qcƙMңPU%7GbW(k|IBY6ɝbdǍpT e6.>a}8>~%b qI.l]!.Xc0^Mr3+}]=lUp1b LL (-9nIuai ЦMHt5v ;Cx|:FJ{vk; Fޕcqw WۘBCbٯRCےVI;C]zt>t,xO:|~4#-V4"m!A^oQR"&,{!yiqr,#>iAOSo]01ԭξ|u)wQq ljXOhk5Fys% }|+‘;#.*켟UMnW /GWbJ!/MmR q +CRN8Ex~^Ct<,֫5:VsWGzlr]mlk5h]  w;˂_{TS?jg}iݼ˕E٭rY6@e.V>4oK{$DIA=w.ugoD9Nr<|Գ[0}m̠)Ym{Oh;Jlг}c͵Z{Zu{He260Yԓ* 瓯y]G/u*x,kx"JB:6}lFI=~R搟2Hrp} ͟S\WTYDfI&ۖ˦^{0s鿎;-_cSs!?]3ɫ"E|yqwMg+6V;]I&a~DS,g,Ԇ @鯄}D'Ȑ5OMJ\L nq?m IVD8%˄ceYļ*h ufބAeݏR'_q4f"/F%h墲}aG[$CYb75tZG(6 ,^Z,J4t[Nѕñ pڌ`W sJyi5O.{T bl-\f]a)\ 'zKf@W n~JÝvDtku#!DZ-c9@ɧDoʟ0+KDiLEyA#:ܽlnMjC+[qkzlݩ]n硩ez찟X@Cwzw vqgP ̇-5VvC#~v+Ov# 'pKhGiҬj&'cm>/[y'ߎUCނ?%e9<ɍebSi'ʋm -\Y0tmȨ=|:eeJ=;E"/q>zm]p,L D%k`1+#;DmrejX5αGt\o 9!HwKK+ )wkVp㣩*kYeҞO$qhLs(IisSj9Mn*RZܷ<uQ9㖁)=D!^nc $RpEhT<8`.Z"?l˽Qg-8 5K}!jvy&O2Yuv2G5 xVaTuCC@w$тWd27O|V涯ԁz jЏ43n2/E-, 6*ƽ:j2ƔCF-+cfZK y{W q$W+F@n):F~_Dc+U/H -|U?O:Ԅ ^VȆ6љD E irbc[wؔӇG+r;.%W]DeO&<OZ6 5 ] hm<-+ʼn|>Mm[|P4 \O`S>{:%'~ Y|hDžzUVݖ)(a=e<π>`L¹w3flf<Ճv{ ;g̬t Ԙ $wMJ6ie綅"^{au'17J4bDVDG bxCSLF؈q3 E9]|ͼܐbh"lS",I, -C{ј&>QWRWXk޳Hd~zܑ`LJ񍖋N$EQJU5lKNf5kb.uj7ܭ(,"A1 t0n#[~u='TMYW=Aca؏{ѳAikc.RZjcO9:7 dtj54o] ~*1BHĦ_/[I\1]ym5kR_3եe[avdhcb3Vڽ;XSt;0 t /¹3%v\djOM5?s:\y Qᷮg'N*&&gve?BJ\r#*$ {3}4Nk*<A/Nـ;`8i+_U`k`}_nFե>)?;*.'La :PdoGxn s`+fsķq)3KǬ]h1]>v7 e4|6oDiqXE#zb=TL,S|6 *;݊<}B-G["xE*TA8{_oٳ1%y'95p'fr],ץݖŸE7m9j0]1.Ւ<jFpʸݙJy.SORIyM7},]EU0Gvٓ e.HEDAbۼ-$`uS{mejy(}ں?gY`Ƃw0:D#\xH2k{=̥ZE.{ \ݾTm>Wx&Mzx .TP-cm+}I{QEB֕! ᯩrt PzLQu;p^j+NQӋA>ؽ&JX!|bVXbiV}(kd9J,sp93,7˵tXҷrn ߚv|wᅌq@V6Bxʔb!/t却?߹i xkXvԝ nPݰŖD,z}sUI * [`쓰 7x4ŬAhr~!Z+,G/35_82?Bb AT *_́(qNq1r/2q{][|0h7/A` V\*h_&o&=C*r IFQ6BYXԤ[C*#s 늜̸Ї" Ƌ_j)ER AK[L>ɍ hͨ%夔D%2F͑+WHl0@1[5kV :m'cDhw?_{~XQnD~:C' Im˞ rb4;ZڇSIZTex>!yF > )/HUhN9MܯDt4q d?YpZ %b =CU楠[ռ_hM|Q -7ևNCv0n9*d!]>Hyqt }W-a?.8- HCU7v#| %A=3!HN2"d/y2MU^m~Ge[vDA>fjxS4ʺ`]zgi"HF{cs~rJhM`'>n+]HU ~~K/xt+,v u?b4@1bqFvןdc/t5[@l>5|;а D[Q@]nBa 4O}5^=1܂;},pgC^F{USdMu AlcM#\= ^=Ht0eAvYC[]u&9$/q|ꢰJd܎ӺS'W'ݡH<,鮶opn?/$6$y KP-K8 Wsr&F)QpHZ;^{¤A=8Cg\4]oYn"u6]Tb {'ګE5@86#8A( Q c;(j̙jP񨀃mY\!To١͝Ԥr짘GO)͇aa z T7G疱ev+i}ﭲ?x/'URI??UJ;ﶺ`Ӻ#w̓l%b_,p`]* X6jQԎa#-W(4<#}ٚ>L< @j.0,\;]‚ŹV$4QyDf6' ((1S4Kzxg@^(:S* }^턈MALn9=κt)hҔ X%&_`{W8T|уy R$'J&^Cޯ2<nEW1CM~DTXˁXJ?٠G7=|#l>44Bk(>SCշC/!਻ .9^@j?z)0Jd[[Q.=:!)er!0 +WPbFwqT/2SQ fw񙙾ۉXH{*JR`pd,@KSx2˫M\CbG*m0Hh#\A$(́IOR/ƫoݯhUuq>` pL贬*1_U J]H>ʸY~&=Mv%kZy9_^)cxݽ(>`n[$Eёр*]Έ"U?T{u0!v1UV;V@E?fmYfeEQ-H$"U&/@%;&!fdY <_ J!df`$(s İKZ/4ݐi<ǝkJ_2]i{7nZ[!WɫU]WKzcpsPU"m`1ur(7|4ف#ۥcmUfTO) 軱.Z?#MfQE**rl6ggp䞥RĔONs(=vxp+dxV3cI(_Ҕ}0RA-Ղ4)?m.XyԅDIMTxmōA:~Bc؊FnyMVƃ=SD+P^TB_phy$.H03O73wzRa㡮 A=N5W3**쟹m$m_H{wmA[c-@D .B7dK[CJj{$G+fpZ8cN[gdTgoef>t8=]Kp@Vj;afޔO}1nMZµj:g g"el¹LBS58!_;C'[D- (]9Un__}RV}[,IxE4J0hsCބG㑋ؿ]cmJvQ+'%&̑ʫKݒ/\ JMt'*Rzϡ JF/º+|i" Q[jߜ,ҳ_ cF"W[L<ži]ѱ*!a=ix_zv#>1MK־\WNp Z]wG`> ۺ|^s fWoI3c%_[V.JėWI,3I}#jʞfMf^47>$~_(Pt5^N_}-GC+SöfҟqŷY'u(q5aU;2ǑaF} ;CqTqB%#kiΧ's 1_U,{\@<^CTe]\;]U ³~M]e ᮉy>2H-6`YtĈxm3߮~A}~q{1Q*_O?٘HYO.1aBtp e ½s=7IC ʂ"JZ3x"h+-Ȣ]^/16v.+jEC&1)Н<܄9V%_57+ 1wkmG9jCg'Eooyd0,w|ToE 򃱌-MN[:Lw8D.1/_ZILZnޥ)>ӮWGx3tu.\s Wڞ8u^𡟔%Rq)kvc'ڟo:غ渟s;!>b:YCmedw5tρy})Sp^=k (%G &%q"ٲF,C"O-G;tTn栚b$1x %L%yO*};!8z]b#]W`#MS,xxU2de6VSPr'P_ ̐-G<բ{äQ/>~A| 7f_\b>!\|:r-t%0P<(Hmf8 k&׭.fɎ i6K4O25̈́1Qnfo m] \uS{i!&LbAy^Kf;U@3[Fm:fZ@nM$E?*u2qΡ\Cnf ,y_gUp.'UlamxiV>z:{}F'UԱ<䒑DJwPl;]$C]ҧ&t,\L48T ܼFyVs@ ч7YJBk񳶚L4E /(osM1chEcY {*e|g2V yykؐOTu:~%&H n@]l.2oj|_w'S')z4Zqrk T~ =qъ .Lv} ho$#>'xPQ7aґ^ ^AuZ1oݧ0*)LcZ?׉ϙw?sf3Ǥqk 4}-B@̫YWZ۫0U%'6/ Tm@P(``8nCs @͵wg{[ "1UݖCY3B͜2*@"%.d$ 57./h(\TZ(]|ȳY)WMɬJ<3Dtj~kѨ܋W4⿃ Scb 3jΡ`~9 t@ Ptj/Is(4 ͤXW& :\_iRʥ@엿Go |~"Uk?xݑkp$ w&J,Ce5gWMDV(obj?]3t/ĺDPT!+"_'oa8Ijl*jtSXp|ejg[!LlSr'4*xkYl uc!% \~XdT~3 \ WqȰ !Ӂ ['f&,8jYg#ai㆗"cepp!<@$1$.W~XMO)Q>&nӻPXӧ~xdԢ  s,~u4,Ojo~S@]`|oL|S6*+V~^'+C`/V߷*ʫg6EO6w$=ƾhLߙk71ȓ`r6W:pFW ɱ A\0a4zy Bn?OC*NGCqo6ýEk0r;} kxagYD;Wޱ mo!1tf-"8 YHmگojg/},g鯙WB`;T"P媡WAYh 7 -ej.kgh,Ɔ=әL) ]VԽTM>2=b+Ah:jX5=ۊX ,C˒`eqp*+Є Lρ=!iJB*53'%_B-YG@b?`!5j"O ;vH<'ǯ)a{6+I2boRѶ"Zt B *M:2$Aڎaf{P⇷Tz8}o@"&H/AuZ8G0[ܒ}o]beZR8i+e)in#6`K A+eMvRᤩ}c#t+0+P`ƙik=ei٨L$/x؇‰I%"C\ esk3V zZ<"rXyAQS9i7GBd;X+28|8bC=|[4b*J~!;sy$u70C/dڢ ~'9A<}-l ucZ7DƑEkƉQqyIr/2Gc\4r/cKJ MWp'݀dtPH1"N!4ՊD[(FL)_kKHux f\]ۘ}k? G! l+DE@{B@9̾r[QU`|O6# * #)Vu"-&6qt]bZ8uAF?] Es,I-Hg,L8vg@CEEycG {59x2:0Z6Ԭ;Ь&sABARa*VS4FI[{ʆ _OMp  _9LH soʣtjqdr2̆ZA,H&&@@we++n -] liP4.pj<9WZ* G/S\;Eޯ;:LlOk6b ]{`h pUjÏAں0 \ B)ERȍRrӽVZK3EqgMj^GY%ַՈf\ `ѕWe[CD(\7;Fh}-M" ;\/ywEcV{S}<'|!\ ("T-u2T3wv1!f)u`Z79Q4;\6$>QC}R?*^0"rFܹYʋ!Ro+L7` o8ņNLj}'\~XBbl)@v P o3fwO !,B\sd y%E'*N`'CMg=)'UiyS&e5,_mIE2@d#-8[Kdh 1P 9>Mi/óyyPz0[ nn3ܵIÉo^r|p,NԄB1kidrmx+P 7jlcq)wkַL w'M?˚ kb/7Q9.o1_#R@JJs6 rN,:u7{U#f|IO$8WRqEq.1-6O󢬺q@be%D{\_cC1.G! 0 gUD SR]XzEГVA{͞7t|\CBx|HxDD9|$_oWI%ļmbfz_VwC=6yY^?|%0Y4yJ^#e[(iX+ʚK$ -LeIYƥPhjuFxqְ3NJſ\\,!VYϼu5M&cX4u Ys 7S TV3(j,lb1*(ßuUٲAS)GY=yFpQ}meО^mK;c wA+1]g'%r/by$Ȁ zQ{s6"_g<U@?.1q{ӆv&1O0^%'zkyFɭ>+ 1CQ4RY 6c dS|])AUՅ(k :8gr#V+Lj| {c\Xj߼4cqzLԘ~dNgVf@O(HF^%/)][X„J,/ bHMS #\ȽK!*>]3.iR>pѴ  38خ!# `tz˿[#nV&00j7]i~;E7 u¹DrIQ( wpquq/rKo4 R/٧ F?vLKcP?0QlYX_^vvq'Ȍ1Oo QcߖX͸<^zYD̩D1-IcElJs$ׅ(ꢒpXS[dd U4A$M}qquJrS7n-(~\L=Ep,Ձ̩@5@|/&d#OEڳ@#D/]?(4 *ѮF7`X?cP7үceQGnDU[17*:Ig ZK@IxH6ʞ]+ :b wo 03"󂼙]M"'̈ G»\^]aOһS==X1&ngaaU8\3;VCuGjaZ %Wm3ňA7웟"ֵB!5Y& ֝wwy)UەbSR-!WǍ+Aɉ8 ws+")xخwPSP[4 IX1œ\Nd{ʻ[:>se߯.HqMsL;|(~k.yBa=xo?A?!T_DwAI>%:Oo9UDP YdGZ rj3:YX5ɹ^/,WHmZU(5zfILIl06p\dPb66 aV";էja1O7h{+5GlWfc*8.e]e\'p{ P~Q k5G=qA&]ߝ3R5 5-lwFf+Izݲj김#D%15E42`>@GMRP ՒXae穆xlfE@ c߅aYXF_%_b<_XyPQOõ; qA/\+|`iJ'a6 gc{Pk 8u ݱ֣X"m"ߜUhlƁ*ڳWȈ .o?2ޔ%q]D.s0[517ɕI,NyU1^i ]!` LH8k0LtDGM9q?TS0dhC|U-d9vƪ]: Я<2{@fޓB &|cSbx[G xSd*O@Si34PH 0Lkɜ.oy42,TɬѴaS 'izII+FO @$t8p"0òcnDePXPƁ{)rYL}f/\ٴ+5Y n76O췺Z>UJԐ¬ڥڐțVjl9zgk/Ha]X Yp ڰ` ~I OM$Mё8S|2Ωٺ>!ŕAiu $u@b:2(*{])(XJi?A(z7wX OMR^ ['^R F7^ZK({+{iHLa.2aմ^l»+P c:86~u)>AEQa7in[؃{js-R/*EymfZZ(^n}0shFL7L-/4Nww=!H={ӆ^*Msaq|hV{E9- FzSiG)ڙINU-Ҟ Sn@d֏Y "* F٢?[}8FƱDpiD}>^.b5] :|~jpy$1-\HQ Ժ$yx~aX{m={ *N'e;\nCԖFg1HCDZh]}i?)`oG@GġRlfA_}B5*¸@cr:|hmqC[tc Iy'=6T $ ]ę5[!r~.Oo-744Mw 䘄dzo ~ܫM8)ZYf*:Cu! Z[/ux#yM4r'n(<&&ĥ̸ZĎr3\͞y>|Z+%,bM-U?luW3* _|%a<̂i2ޓ#=BA/Ac7JdP.|<>aas^Kl~{,?\܎C IK 'l4,u_Iu#;ϑ}'BD?`Q,jbAV"&sVS^[V8GQ[˞k*PhjC*,a\,cկd+I-b:3,%}J\.Jy%A&aA`w~G[dsw3(p+G+"rj]@KG+huG.'~Ţ%$==h߰JvNx;-!2M(*@QU~Bp=h+ceQ$zz!]ȣw֯btO0(xheT\ѠXm|ԎC=V4}'2l0`ՈQ lOzUrbo_Ӧky,dni+r 咚X/wdK'="Rk(1CD͐n"ȕ@V}KAT M|/3[qiˎRnL`HDeaͻ:ϒ0V824@uXro=錼!Y HJU2"i8>- b 7b:C#nI7@"HF:_nyU3j>Xsy5IV6䒼r,LMJ10qFSB1ԒdTv|"7IanJe#U™IWos]UyG/5 dmQL]r\\LG |FcvCm٪ٽ!BfYgps?aU鑮G OMw%WJɜ=xfv> P K7$~yu(սXOIZ;e)‚$뙅R8hj_^*FJP וY:~AZMIMW. ̱b1&^g+ꚺ5iu/V9ܞ%,ܯMw3 *ڙ 63#ڙGˡE/&gQZ)t 0Ή*ǎ]He1`B1Q!@y'"^󸶫$EђPvR/mcD;}ųz43 XjLv[iruˮmIejZuȾ\s17ü DECD :[۟F _.)b.]Œ u8`NW? i iWn5DZhd\& bJUZz źOh&LGfj8Eu ,[sW_]F.F;&c`,1떘a_z 6qaWYjB*jaz1"AHv6qUC2UENIw=~B a)ǟ񆰎RUlH=_?BY"qu{ 9B4tq.8VeeVC|1=7SFieJF]󄰔.fHHBx} n|`䠪'o0C<@(MMW(N3>*UY%8`R.F;)mp;`X`4`Zњh4_"УIcY6x̽X'(|&1ldUQ-o^b\d82Xߪ89i+~U`2.rьAuJjUifc 5ZS>o QogLbXzynsG2˱u@')^d0kqu9aR ߮Sx7~KLl* &3_]2Ey/ePxћ6L"sinJ:rPr ӎH a+BX󛇨+K+w<ڪ0ԣUg3fG~4GQUp.о@w #]KR?$浜{GAIgH%¦B4}6S{4VavJLV PW&Y߫PO\`wyn 6[2\ܔuFuN* 츤w,tɠ0I%#:q/TGYIU38{l]D Jږ%7͏=|*Ws3> Vf%E4Qs/I1}rV.2>+,&AuEe]Zm)Q~ya3zBb]"ּA gm{FB?Y!fpnKyQ"XE 3>-= & ]GhhK#s ΐx+R >M5xH:!JxԀZ6 bߩv&B/g=tKϸu7`?q)'a&v}+]|Gv)-b,]n."cj4n^Bϭӗl .q(&IZa!r  _i+9µq|=?)"%q}a–yBó^`h=741|*Cΰ4G6x =a #h@Nڢq ~,˳RrtoCn V\gH~J5|crP^nE>Pe Dwjg۠4")Ac-=ۛtD-(f!,`I n IJɴ*[ct!ę-8% oaC q3QxN-^ɀL6#=HAU s Y8fOjś|3Y0Uz~B'nÝ64ř:)vp|0 Gǫ9;%{ ^vR\x?~ շ@X ߑRlj,W&pQTїBFbWWY'I*Z>>'쏑qr 5ȶgZ&(g^\UW jg 0,C# ~h+P1^u,]Z/L䄆{TJ-U\[YUmk;\DI,|[cTQ[]D2W!-Z:^<)Zɰ"1X|~9݃1ȶK;,M},)K)Lð%] L{T{d2fa iurɮ$pZj/oEauz{U5UE'm)u‚ GޱmO VhAiigF:wnGad^Kp#\oSz^|Ggg"DmL)M34iܯS c@o`cZ:ycf+ڲكf7TB̻xS/ں h>$e\t&JEXOl4X.8}& 8k8qVe9V$B[c "\/!ߌ*D%E^bM?Pm洞Ъ?y ݢa+kBU8ҸY,ʦGk-mJ ']6^ {H^xm;Ui+?RoZR Sn4TewLbϱo=%dFyon<kCLN X^tC#K(̈́NK Ղ!t-.CZ%DX=sV.zq }/C1+3<'f'9# ck2ż$&=/T]ϠCFi[ :XtdN>ϖ,nTlk>w8ܔx89B_|0 ;qC E40Xs= op@KvXr^Xdr3IXSy1 raV)!`^ DU|Q4D S|]o})d5 yl2cSA`@w5M.bz\{*{$ /Brm8l#xHk9FFF|ĒMJpE8OJʍW%r6Vϸ%7*;39a$6(~1R)d Yy!ʭe1-ZZ.W?;5,{UFrqd-f`M4FnVmx0{4=V~ `d\E^:!d$,xb;Ļ;$O\-eLP(m1;ZaA+U Y 7l:7=@^"mWuIZʠ.e~!dB"nWx&w R^^FgԮQo&1h&p+Rw߼rk*g096T"!PfvӏB |sZXH!a2AqIM0%J n"vR d%T`=5w|2TVOTi i냋FpVHD\&u/qGQ^e>yS;oB>4(..lOB;&kıHn n1[fŴNQ$j.fÂZ6V4F"+y$9&+ScքZNI urL,B@*Q&TmDoԐR?mVxdHnOSf YL'mO{߇`O4@>+e_k%rXھ=JVԋkVGB7y+{?!|΍r5O䦨*=j${lχGiO y {C*P83=k=0M[_L>h D@}{Q-rߵ^E$ YkT!xЋ#{BݦbJыIJ^,Λ#2dρšSP2T?kƐ?saOyIijc;ϼ/_'=j~v tqWpA&bt*QpR,IӞHȉݵg3GϘe0gU¡#Rľkޤ.zQp6⚓QK-ohE*{mZ Llߤ O|L;{oG\(rK>FS4ez ;2"نyEINT+n7i$4W5pүڌOI"|cv=bE%y.i]* {F@& LS)9$ W_op"WrI+Mc얖X0r6&׮8I-E9 |Ol;?ߓ5 ԭQV۱0*8vdpJ7 _(7ank1ԇQdyg0swB[~l:+ܐezT^lዡ4@O I01YTyX fWa1O*n԰jBv+{0A7z=-w <^{K H'h!Ǭ۴iiѣӬKF1e˲ɋM'XO1zdY0q, f}\.]q2dƌEҥB{PkӜ߯@?W- OqTv?u)PТ+5tph~T cѺ u/.E_ z8݁eΐʁ7b~m=z|򶞬 $_G)%PVzJ,ujouKW!/'ܱ ZL O?OVW"X,i~-z|^eDD%U9ת\˕ŦFiQ[:`"² h`0 W O B<%洛[+牣% =h0I;0zRV1tq_4ȫ(B&2ye]NHad0UF0HEYSRvJ5MnAHYPuM?t ;~KaN)o4@Beґ( IS8P2F!ʏhQ6fqb|{}d @3^*u;ξj2 ]૴U&B/Vs dciVϖ'?ˌ^J$³ OHbmΫX 3ilYS &&#O?Î2,w*/jӢYЇ@w\=XTy ]&H"vtYfYdNJ1QsՒ?f˽EHؓ[l>y`aWv5뿫e&4Gh5<7TM!}EDމ@'9OXb.4ޭu |^CB^%mOrnH_ طMDTؗVWkg@ߍ( ]u2I@{m\ܑN$d$ oDyoI CsZЁ$L3I[be6RO6XTj5x\`x SbRy`"_D'*%!1_LD(6juy#] ߮„{H]6jp~;_~~/5Ws Znm;Kʶ`0,Qe(UTJhdwR?FQ0\8k"ڲsNJY2Ue>M9oa ixڊ09z co-yaw >ӆJ=ًeŵrWr&L2]L kir:*bi~ EK)Lñ%#Z7+ Yf$gq2?펐5 .>@.#R"Ղ ʄ_}&1-{.4<-Ͳ=>GɹפF [; I GFQUȺ # >[Sh)gs^C)h _ n71+ YSx='mYO+,T )k'V4a ,50~n7Վb:+VX>&XG}F!Ȗ9]mfܦ7$ۀ pcjh!˴;T֬OCBNy~%zТL-Coj廙17$Kδa ZƇ!41TNuU?9)Uyur`G|uo䪦m%;APuye.`<*#Wl?ʬgRB#4'*q݊L4 -=asHն^~5䝇/-H>ZrW0X&qtBxX~3XYd_cD*Kvo~*VnCUuaW/t 1y^RP&1LFY6gj #{*gnr Ւα݆wҩז8Oi s7)e,:o± J/W:B /L#@-4'|B{wdmHڸb6O?ѩCw +`{;C bK|<͆AOGe|*xrlLl._AFض'ȃ4AP3᧾dMŸ 4I^&"h 6ﰼXG+]Ȍ_ic unB;o1|GEW/6ΣԔm>%оlTgo7hZnQ:+v!w1SbL?}5,@ںmzAT?H XBr3<[Cl`f+U?{97d$Yx7j=$h F ?uf= ICW \D,/x+Wg,F:3>z^!'C6:7@I!X~2 r5WEsBYO>#bٌ1VO(u5.$[5L=8X돗V.`L1_{Pt:BEm ;Wvl ]\::@Xv3'B yf,~{^DbO At<| E|۝=^lO%2; 8 f/[܀}Oa>KL&1?klV&WiqL&-Y6QWG1|jyS侐$-d?GdmIGȋ[P^w$y9ۧD IFƃ+Ţeyh7r:ÑW7Cv ;AxӰūOo~Kxfva#aw=_n@PoR/oD?/>>"Ot*ݟbT0:?6Bk gKB]?dn$P>+Š YwO|9I,:(^i`]]@aH'nGk3B\\[LBlerA^+mA";ۅ:ؕq*-- ;@@ Q*H&"Xq^k#sW:_=P{%ޠBfpK'`vޢo ?7o+|(F,aqQ[;c}xnqT&H $5O<'mJ0njN,T{dicz=~2'aɊhMh:k|zG7J,^f@U-bB[i !(y>+ ,#ͩ[M(8Y R5þsL~PG]Oc/ҵ`RS^ԛL*bi~9whbsUA>h34?{\yqАguT61OzV 0=FȮ4;|2+CD!f]*.rm2ljn'ƒ]NL?HpQ?I__ 3[忽ZE2Ž+ v^&4 Ysm6֧z뤐y|`ٽ/,*S|$%f,,2+Þ;q ޺qFœaE2CũĺK=C"yiuk:?c`kVQ#8;JQہ(F\&L6wq/GIIˬˉBiH$`5qUF(!0;>t]+I6rÍw&ˑPV5l f/EYPgo=u=$qF E 1lWayYJGJ{q$EE7D-cY_AdR]cj3EVOp*|NbALwdmq2R֑%uBļb- zsu{`PHG;. k!OkJݏTByncA,Ex+A(̠Mf<2gӕ<8Mرr6K{_^aB }&g#tYօNoY1ӳ:0AaLb*4X`GAR9kAVεe,R @ [;lv.OMo[B.MJ(5vq]C}{KdX  n}G~(XnzcVIaxd_mYX!o4AåW񷴇+b˜hW .l5W֔Y[d, I=߰,( ;|ފZI~C|{Aѣـ#Է3֥skw&*{r& ,n}52I}E͆qDD1ΘHW"e8[3xk83DHV̢?j[E}EUe3Ir! G ۀ&l,vI>$cդMLCHi9Z4jO !Z-~@ C\cO ٩cVөs3P!MqII"{^ Jx4]7HcC< &2"1-$2y0>4at~LVئO^bӐo:ފnGGp7|z[1$YE.~K m\Y2޾'V2 !qQk -x45}ǺyN T$Ya¸eSy^٘BΛ^yGZ._:>d9we&ٝcY99DFp }xOiX0dogIg> ' gJ湂C) yn(:,tMtժ`[KoB#v}0jFST5uͮ()͖b,_޺v,F= κi!_՚/=>Ƿ2j:#ĬZ4x(/=}bclm/HX ՚6xKW!wBD``Vs"`/ݘLVÉqne,0dș"W?I {ۨFQh9Vdߛ>"r*yXm7w/81Ceh{ ΤOv/"Aշ6Jzh{A}gaBuƨsǢ-Z{&2nb(#19Bj7?hsI@UR"89+:"A2Y5t8m`?]O/ӽ3@]^B Ύ֞p[>ͥ3 7gK|>4ok[<}@@][@=1 cxSATx5Bޣ8:m$ ߊ^7;<"s=_#ą[OL.&E ؅9_n;LtH`Q1'27Et&+1Mw6P|;p 1;w,";koRܹ)s{ `2Ŕ5ĚUPZzM)09HQ%@=<8PJ?60sm(Ds3 cD@&^Qe=k_EƭeLp>ƬDŻ&,V,y`/R m N`7N!7d,1N0]yϣT47zuBkh6UF&[G?P]ENx}UIX'C.x/e 9t0Jv5/ p-nQ_ #/1pQIޓ&|9i( ͣEWsLsi$&ۗ=Y;&F3'a䈏¾_ pblj:<&loc'DhؘKWVe=?ntEwl!..C_Ny;D @rhemxǐ^uԧ xr]XUT(TItu݈{V<0)V(;b"*Vw38]S#ϩ};|띓RQvA<`<0FeDzР;U؇O>5'q XA;FyXVn Do]Ͽg5/9^arW(p|3│F9m]_wH~B-1X 87-girilk V^e~éN6}\F??'J[mI1Im`9MͯقtzC|3\jf}ǹm*ZCv3H"~"3!\,}ʳm0-glXՈ R3 ? -!yQ [@+ Tw:f$GIxEʞ䊍w2gM{`W_gi^ʓ8D)8uQINi='z V ok8}2JuaFC,O׻%$]D @ 5J~~.-^2k}#5iB`anzLMH7o!gzap>5ʚo*N6%gKkOGifṃb鸟[JIHSGDjݠ/N7;"=QJWTԜؓFh!\)mP^ jfd7T\Go2%ow')g~/\=%(3QR1?[?MmcӘg`づK҄ Fm5`Xʠ/b &^<~VW  t#z\;;'\?6voH}"7yTF(uÃNu"pv"jy|S-ך^ZSNϖO5pw$;g#N]65U>7GBogC6 o:#_% {ahVGFq3ȚY7,"]=D5R'|SD-n'>'ݏ6Ⱙ]FA } +\{tRhΩ},<8sٺ$> Y6ށ2 D\Mf;N)#bh݄7yXgS%AgX/x/38>IE[ts[R!xߖS%[nܻ`h5b_',4xmEQN]9q p n3&)Y.&[S. !K";Z|l^ l6d緸 ΝA4cW#<>d2h!n4o|N_ۣAð|,Bf6P^KC<9A䪈n(Q /L,gQ|ys9V`4`ao(UR|Hw oQB 1e Qs ˿]G05ra8=$ rHAՊxN-B6UsVUfVxVg'kK s; HWahjqĔ`sAWG{HAi2bEQaH~򱅯9bp#Xa3e YNQgnݐh:GZE,"$vWaOe $̉0q䛣A'h7F*0tP#2paNІl +kъ(6yp p6U?Hy T)0d,[iXIa G(cA^r(7'U Lms TWa?!Ф[kxV zzz 6ȗ-Jke\YvQ`~E: ,wO~(l ۋ;3ښr:10z$wP hEo߯^E:(W<( g$Z깆<6#MD ;NxE|Xf4[&i^U" NHUeusx7Ny&!V F8DƴӳV'KE n0i;r[llao![('0V~n]>OEi(~G ? *ee=֦ÞOZjEoF뛏O%ށޥ:W樵y:ơh8V&O 0]j=_ԁ>'/]Ҁ݋ u'j5%g/}xKf@I {[5Z{NFkq}u8flV>#}|O8UÃo.ufBV-gMN1[+tKSxx)XLsIuUbB>x^*( -WUr׉٨tރJT'0pFad^޻w9m|lH?tȐo-]1:a^kc)VԘ `oXtU.C,!-O@87L^*y交H?, {TD'ڑGUEa1%yhAm{XI{ v["54(%QO|xju0]Cr@5Q9O5i [pGWց֕.,44O\?{o6nŘBm)t%+YDhƗWjV߽RT=Np*4!/ݴ?桒˔xWd.-lVngAzP3-é"PpTGۜѢޥj e-Yp;v9Tϒ.4:ǔȼnV>ʢF8층 D`To_7sY]f޴2Q]@\W` Nt]YM~>X+PaeliRj!>Kj,) nj%)M2?@V_ZtJcN%ߞc}Mco yZ[{dU'p}BS1sXlZZ,㗱ed"2FIsʯ/[*#µbXɷwpއ8t#Ҭ9sn*+*VAv4@H Hg|8'۝tLR$sbQ=*N= pȸR?g{KʹedM:`*:/ N%!,gUs`JӸ0 J9Hnz聘.W "M|SJ/˘sId.׺Ӳ@lRo !w_ rVrqphzVO$ml%›ΜMXy6d}J.K {h:_cEh9o#Ǝ$z3/:VO rLkD1^c6UwC+:f Z2vqp-NN7rL}T(PMQ0V+pp͖`6UUf{&P5ͱ[i1@XQx$Tmk\.~ 9">aؐPxA&fV-~!RO+zdlck ~U\ 0thQ>|/#a8,sf9 BSnx9Dp]"}&eRȰ#w:7Z& [#Wfa84ZΎyE_l 5*"|%a;aSu/Y[W ,AGa,y΢e5P;޴FgI~ۥ%FFLGWgƉČiag-bA_{ (-?`z1܊!{-nȧ<=|: d![描 gﻉ&r/4αBN L`4oLQ'zAzܶc^v b;?_kny^sA\ghucz9\VDi ̩LU(\Rx =Ty Ϸ^ؿkUd?uZR:|Z ZH=k"xHkpw\XGqJ}.o`"btULJ@5:N# Cܮã&|(f~s ]O {*l-ÎuU. PcJ s6\ah%hŗbW`?p\9*qޫƑ"i"~waʾ4KGɭL@J"#|ˮ _,'ϊTz5/~Z ʮ \O 1;D2qBPEp|Dw5[PNYƣ"$/>M&fR%j҆j!Ck3*hwN2jϼ/;žc$p 疮fsFEm,fV\y"'YY&q۝,@ɢ,s%\;&jtcXR(:elW|J٫Vm5ѥxËUN<.E\.ѨM8WԅХUYe껻6v[1)㙝J3߿6HxLy![g:eHS]h%D4܎L+n+hN6{]ЎeY5 ReI۔A&)xagz>g|GߡlՂ<3v'Qlb::+]b~w,sV;=ˁ!e.z߬}z @׫M&Igxa@o3RUxe4ebg!JW5j3gAvaΣ: ,∮"ug[w>#LB5̫(f=\EШʀ(Nb@z*0g| l6RLH8eK%,ŵ?,V&ңlkա#(z Nk=̛CZ[F"3&yTJFƎ#`*dPnc?TQx;8"Jv2u.>]Oy^㣀||42ůA!\a0l׷bPw:el6VS)l$n07QXyrl4M; 4 H1Zz3hbK4}-g 08J^mF5Rv^7/.=7fDd.(*Fè{̩֒sA  gvTZCW9 #vV gY|@2tqq?›DJ:>_1ik_V&US]/z{qbX% 9&Mi*! nK攧Mg:(JM>#lŭ}yޮibJ+.EWR6Qt'$ޏ|&4(' SbL5*XK;YǼ Z^g_*h 9 +yx2o ;]Yd1QOH*3KػHp)"xm.c?w:lSCiEt:Y4~OD[RfybT~&8:V"2nbxhJ i6Wܩ0pﳩ7Ʒ~qMv(B敷 5CdýFEde>p׻p÷n7"vBy1Hr8)߼^w֮G^UfW&d# b*\T`^v ܻ]UB+A`Eʥ] I4$3rVȩkyútePU " IV\mTpk 2h4:ѯz*F~u\^t}W#ц|3{d(8% oT%ggebe{s ڨt ]h]_Qj OceqQ[ոKS1;Jo4Zi</"eԨ7|kނZi f yݚ1QEnm2 T35c콠$3V97k r¼<ĝ.<%Nʼnyo;su A9tVߩؔ5ՐݶU@%\My=,B3EY QU͊>&OeQݒjY}?LF?i Јo"fGP MH-=M;@-a>@r$?5;<Yu(}[)Au23ܴ.771NbbGC\ߨkPj̤b3 ԅC ]LYL|:qࠥVkY&)AU+@"K64p{Gkn'U|.|FW$ћF 4b V4(NE)`ve4g5d'5IOP-ϕ3,vv!WNfmX[TR5Y=[3BD|ŀĀ'}1rC07,-Id2&!A]ǶU/:-} 48W2! LUIʚ\ AA|b珅A#gI4s+ůPTzAq0Rkp%խɲ5FGiH8 @!)ZY[Î8XC$~.`q|,p_kBQ%b?X*%޴īEgdѽ^r#쒛G2@òq պQ}3dkyʺzT蹀q( Z8G[KhM麥o5h+K7}KOɑ"g>/0DfkWz=NBܨ#a0iɸϏ-ZkOSvfj#R^\9M#)HM̭>w\FH×0ߝ%ZB\HJb )E! Xr!#㠕$1H&R>̨nOƉЮR$%&'tEb.F~x}"u#`nb'( nޕצd2Xٲe`kKm ۽A^Uԫ+Mm ,k4p>lk@-h( :t{(fB=>$rT݅;QV/>rQE!گ 4"4aBTy8gM'6}XW q˵ }5X ɷ/L*МBQ*MML^Jʤe:',iHWWRP±_wq̐ f%$%/hӃ#`Md@֪kY&ӧ{xdò19x^|ckA m0Cݔ"!N|^X$i&]z&QGX/ +E1(uˆҴćK@Mѓ#w-FdY䟽Ii>p 5UczX063"`l\#nz #' W3(9T2{f +FHA -G0}媭Y:L4na\Rxu=4T) ގ>oio(FJ.h#Gz6E7Q,F`vVJGgj̺' R,_b=0:Y7G?P@M;&;BBWHWK2%5(5]DK[oa1B1i[~,`kSx#"[ޔvA^ ԗ&@%NyZ6=" c|G&ꧽWeZU UB+MckyzZc$ܕK/*[ n҃~56 #8\R:ℂԅ - ϣ6: ~.$ ,_ syQ@. WeYfv쭖qAdK൘yoH.bt Y[IdV&9BN-:OcE 0!*\N"&QaO<`p%rUcj sQbՂ f4)1fݚꗞ_j^vܟT@K( sbyȇ[aoh4l'tH蓯 9e@B{I p=δk{OƮG<]\n,yegS`h7ތkLGLSC9b䣝3Nƅ |V19WT^9Bр+x(p9ƭ4ɽCilvZW_5Oюq{Ԗugą ze f 'Cai aQ.u%i9!eIr^9>DIY5zG&U17Hu *5YiBJ캥zQMKՃ@kk ? 0s WiLxCr(oVMc)Ɗ.T&Y&-@]<ĀV{MV:o Xx}w0BEPN6c\82SF u@Tj61ˉ 숾/4Ex=>zӡC p>b<8RMh<X+,)Xy6sbNگWDؚO=W3rs6p[) `X˸"G(#%dM8A_A,Jb<1 IFQ!4GhƂ65gYԂulSKW?(ar0fFzL<: wal8:V,ZqD5 /ы|Sˋ{&r@Bנn [(]9@9qXطZ@P]-wE)) m\o= vf&bq"~LҞt$g lo4F뼱5^6gQi(8J ]їx>sa@-W>w%hG˦ 0=1T2`,ҋ5TPQ訦P+fȾp-!ۇuk=r4y h6͙#6+pacL)ҩbiQ @]0?Y*S5EMNDet Tka&aڏA\ҳ'UQʳ]o2yCgvUО\B 0~^rp'E݀ܭrK1! F2 9b{zgq2%`. 8N˜-j Zۂ@2On+#NZL2^$<8KrՕL41C963򷥋?b<>UwF7Viatt\je l<C\,A3'} Es} ,QowEKED)8{uV8*WKU)@/3Rr\z8z{+{WܫW-q\TCqknE孚<-u{.>mW &o6.6"DZk{(YvrA 7!mPbc&QVxYs徴OYMsȻVKlGS0tee`>򋀞\WXy)^fr3)VCjpj)mpק\ł^GPO ]s G#8^ /"R‡!BqYd7:8H8UKd7M,tT"k]LEy=vrmB?3P}WfXba{ !K_&`L XyoFp hsonݥO$׀p̐gX̼Ob_u[# K಩!:hOy_cJE:d%mRW1x7Kк2K;QRuBq209cbMQ<{ކ5ZSv* ֢A/em 4q M & D|XX8D2<~n[&DJmVNBJIuU`jMvH7?Θ'U5yop0Ll"R[\ճ^߯!b ~H1,9}BP?+ԀI6/i+5ĥ,75 ܙ ^G%7bBqy=)!{Z_Bq=wSwD{'b׵N}zh/\jt8.\f, aАK7! _JA]u% ,&=|憞W?Xq)S[X#Z&0[w:5 $2!9-т%37p]j]ALFr_hSL rf[5yr\]s&RxdkpXLaKz~znN*9>?.Ȣ)a=úI 4) D0ʓ>jRp9<~ӿ&I-W VaٮOZQQJYApw;{K>k8cĭm+7y;gL\'8B?s{ Iz=+ C]AbEZw"=.=M,.B uHnㅖg؇oN2Zpu?#~"n~5j|l|۫Ec-hxPx$_Sju V"?1uzKȏ˸cd"y!?`b,'@.ᅭa+w=*G؏ɭW l;XO*|-^OeߩZ"F:p5EIu ^^eqq\fYuZeGjY춭/;4E5Rݫ¶4m](԰ OE&Hb1s G Rf! ߭V[[ |M-spc:oAł-㝳́)G1MP(9_t`SZv}8<ƚC(Wd I$Doo8}9Q~ɱK#냢OUU.Op=֨6Zj: >A͊P5X|HZ dNT􎷘6L_nk+r.ۘrb4 n:sf|V!Bz8$Opj㋉sYu,.p;de~u/1eUCBL1׮`HTM[ ;$*vOQ(BՈpsSS0 m K2b=;8ZdtqD @, n#+8}gsx6k|-c|98ȉ)|p,0"g廨D8gȒ8}HRPu\!RLL`jn+ flm^WYejAYA2?0}6FRi) 'LgA21)[T0ϑ 17k<8c+6.(~7qگQߵ88"YxЏ,;/ƆMZ^Ov2SQki0 F0go?'^ :C|2kl˝[:%x'̊bfXyE$3 eɇ aRTW]&u{2uBAo8_`C=Wh /A8 ߀!oC71kh^h,#Т}ok@E5. ٣'-78ϝi%4yјRB 芷]lxD)%/ϚbrĄSO75FX}|qNUM->s )eQ04 ‰zACI[ \Y!jN140=SOT|vk%CL`g8G,Ʊ/6P!*AJDؼr+&"! kT@"{cb.7P~ȀgkX&5Uu+_ :DŽ<cdSƩÖ.,h:͡-}ur_/0G|CTfeՌ;xO|ׁ-\"-/brMC_Jıv6  H{EP~$,HDdd.mxJt0rBU-(U~oNYU:R)4sR?- f[& Cn7/_We=%wR `፡x _#p:Q@ʓ B99֙8~c49hOTx l!"DL*w͞"'Ep,eP逛et#^o6)>Zg bTg p3Ie`•-HΘIx1J5BMѓ.g0E+PG<1EZb%4qE25;+xq֕u;U TO春-ZEZnĥZMVröǎ͚cq+n~n(C)b)eÉǬy>,/ %]Rbݴo|٠3:;-%G}ʱ1I{w<t?>:)+frjxrk$ȺNNvȤNy3ȟ<a6Pa `,@K%򊟍LRM7&/EK]=%Fic^ښE /ux%:w  Y-R.*F]An624.fPK 8}[*8U՗=rjyr|*pDeǠ :{cRj-U궴o0fSQ@intjZ{.g3*K 7>_@^Oӷ]Bxf(U˽lS)"6}sWdv/I}x' DNtmoE^BY!Pnc;j8~_ D/~tKq4+w'3 T2J[b;+kWKSOF T0/6"g>ظ²9g2Z灲4x>^Ț]G[iCcL%,XJ᳗B-}ElX"sik13y]; ?~E٣:X+E6E5z1Kl'fi؛pUh^xT&5GHVṷ_O֬+9.dW104aĻ]댣B$ tN^xC׮h$3Je."G`=zy\-pX)͐ݝT֯e4v}W@fxUL'`ps2[Pqun@ U0[7x4kViXД+pCz.yI`//LS\nJ7uK-r_IwWy!"Az~@rTJʊt7ܝ/XAcZ293͜i0٠?^d]hpj]ҟȼ $\/Nal>MDݍu|a>? J(M& gJP#k*x,XeRj])~7bu"H"@÷$=kEf$Pl(tѳɝ w#\{Kg _KwS1[dهͅb5iaMU|&_nLLG?4T~ o%s*bOIDf bNez-bo!"Ie}%T;ce7ױmĹ@2 7c)Z+-:L9znFAV&sbAqnO|^a`[z`AK}ڑqP9!;BQPEVQVwd Qm 咡dh>sV BYMTv"up/>&# k]yi \`7̛&%O},i8\H+Jg^cVj_ԎO>yJ#acmr d4ǝXnbϻGWɩqK%Պ@9نhC$OHlra}8zcѰ2gCoCqIQ75)_9cDz#m2nIAKD~gz8]dcɝ\g5/_u!y/&\s ;һhyDLdr|}lqyeF?'15JL~I,q3r҈96X m`ӓ:y9AYP`g鶔֠>^82XޕN`7P O.j-A K𖈱%_j^u`m{V=LMar@dGejwl7@4~{L)*֭ *z$UVLęb\l!y0568&de!f%D'Ua#<͌G$nt PTfO#b).+ݓL#МeR{U?2N;SǷf'uu8=Ʋ[ N)keq8].SةPKnH( YyoGa'"2߮ vNyYk1rYiU"ޢ3Bp>u=2 oitv!f m׾Թ:\v3o=F;npdG[pgV5ݓtAEٽקC(u>TS^ {IL#mÞ0S޸. t';紆AU&4) #%t:x:N*30cCY|!lfZJ >S _TZdDP2x {+c}E-=4Oa`2G.l0㓑obK]<==( J ݰ7DGK%;~:kwWhKqbE\}@&GvnF&ݴp'OӎOn0j䌇~E~¯(gJӆ"f+DS'.Y3My"lU3qs$ UWk f.b=} TH|9#W[S1aComF (>4dW>\g1?5<%PtQoFtY^}aN e&YjH6Ę`P,pP ?Lgc1H8{tw:xB3)eH=4ωYWܟuWg̡1K6Xb AD`A㳋dX~wBz~M|ǘO)]S6Yk,YS" :>j9܀iAzY@jfWC4P.̦834XH]/Ucp3)حQJXcֱmvm&s$^)Z 3KSeQ:?Մu5՝r}jOT<{}Z,$pZ׷^CP 0.pQg'\cdЩi+NuK(6aVbJ `K7GhwII=SD%h,Ғ?ªS{߆1n= M }.j{$˾PYo*l_ ͼ_Ǒi5l+`đg1 {6urw&O ?^>1r=ɉU|N`i IJ׵ZJBEjۊ3T1{CNp9hs:)33KH2܅`Q-`w =وHbөS36F%p8{(KBb87@*S[Pu4a`.EGQQW]i"Knզa>Rnc~n됑XKSnO7;>jiLaR/պ*K` ts""C>n9w cY蓗K"ONfIivipvaU},-?"N<+뤘gy\{e,aZ杄 v2Q*RZi1+{$"nji fg;E޹AyPz])L<.q>'2>ad\0^gohJs)%c>998-ĻwTs|imS?j;|rS{)%iyBhסqsp$o}ˡ![NOyamqO-i;2᤬'OĿOaoÙ0 ɕdݍ\F$u'n1q>AyqCuG1ke҆iJKs ,Q 33 S- 5;w^!&vZc.w:bLDk6sAmV?FBBsԎ獾 P5x956 58IF Q3,VD, UHJ@jq@&+]?%Z+Sq~ E=aP'DQKY0|jŸtYCmr<+woÓD(c xD+⺐)8 >D `e`rP1^T bS'|=orMrA0;: c}&.#0G@or˂c.U[8(=~`1+(*5Fݡ M_t\jP>'`N ˅;xHt7YP}#]< onx.*M&!>5e4mVh)H"E,+}f#c#dyEO,u1YCTI5"&.6V!tOͳ{(,O*oFy$ Dw1V0.DiE,\O鳃?2yj1;1 X||u.@T MWtn\/V$@5f5b> 23w)* EUa,Ą!ϿBCԞ-" u2a+5~'D+d̠Ϸ}TZ6[opK>\=n~SQC9CmC>X#YO`ۮMV "N/Ve󏋩j#} [X C{X\-Ds}">;mDE'wփn9m"g"kѶ&ZDusK`~܌68) Fh5خ)A~jڎD ./%ωn:}G q{5"p䞽Sy&xVѦUdB{,ѵDx&U;++=m1w$˯4R 3N q$l/l-@ׇ+% E] Ak1m'b:kӖTmL1 Üb1|o6X~lN\j&Ud09QQdFH)PŬn${E`$Y@k/j,b?'U6 E8yF^I( ;As W|lN᷶2FT{;1lAFpOvZdl_85:"Y xD(#yFt׹ބ&5ZA&QavXiK&D-oU75cgF| A˜dIU2Hk(R "T6;&͓FNU3=.H !jwQH#&eDH75O ʔUFj3ޓT ¼ݍ?F`7r/鐠y)`~Nq2`z! ʊ_(c_[$-+)t9evKQ8giTt >cN3&̎c3=찄KnMY'<zlD.ߩyܶ)*d[P=k%Pڛ{[ܥuZ-A۳08`cŢ `'9I}PKqp?L CuZs^FVK#S<kbpxnX'i& 9/dߢ:KJx4lӢ ٺmVohfuD &iP  89<'9 7ls0`:~N@f-du걓i[2U!`Փ;I5#T?Go)V{ LةiOqtqH{zwy\Z+%̏<'ԆrGyJK+Ws~-+߿+><{pt/i^ xFP>Wg›ff"fRePSS}:^u1ɷ5 5 jT7z5Ћ4 8\ysE"nk={y!^In6jn*86f[\HiLlB&rN wR o9FDˁEm.pJ:$rߕcuQ*MlBDKn˫z Ŭ~ e- :t=8Ű(y!eӔ l`} ԋr$-FqͳpQfu6u&I;PM?"V"m8]6COV'8h93B/882c_i_im 3({48A;{zwp´C9whhzWS'()Sa3q2OBE4v& C)L x q0C6f#Vǂ`DqiIݣ Xo@ӼW }GKVD|ƣGT\[{ְpvxTM/PPFA /S> CJrYؐ}8EM}iQSnX،Pi?+OВ6(CZhp CL<caS n1o{@A%GzqAԲrdP)I DBU*ʀمQbL(@]*W,8CpĦ8p5XOpHMphm͔R3=`m1wA?!myfjNs ~`cS,+DJPz(;Q@ܪ02O< dMa|#PKz%Xe֜n)'d';&0O3hQm* tN)BN ˎfi8Ԙ,=!$9fL}sTıC_ן OqmDDQܼ~S[:`jnO!d|~ށA5>vN8zU~BX4+] iM#/F@NY 62%bEن \ka p$V$y⼨xUO=Os[n&aY[!,.3X,ptK+8:Z\w%mMS@T5B~hCDmռcPʟ 0^ܬW:u~Pl#,IM@t_'w>U0o]3.z_;j\" 4}i _te!}Nn%Fʚg>?bM~A\DV¨x!X9#ϮZeCJVC-~*W ZB8߅n|b %d6u VG4ckl\an-ǡs#oMO Քk|fbY2 d{W*xYE+LRPHv)Kbp>&OlݰLmr 3D?G v1Bt4| Riԕ]Y |XsVd%vWhhl s8JɀBE5aP oB,v Cu`@ ö ~?)hpC]>lOCis[Aiui[71.ij=\/Èn3(^9UGI9D xFNMng5ˑ!Iу#Ds_ֲ \zaۺc[Y HGZ6& mPvŵ⏨>N(Ks6}60 *ޘ[~I|U :YW#dq)5Dn;:6FL]tKQX\D}k)iʲ-Q/qࢅZf3$]( 5}Lj>ge#JMw5,gC&ghyPݭJO;Gr %d\AhM֝#bmԔn֏ۥs{R@T#cʼn$g5`a6Í;2*y+-;yVZPO^O-W.9 3Ixu 1J+*RmC-,\Ϧ\RŒ-\r55,$`Y5aK AZ<=u7M8F/9 GrZI<+H&֧(EƉmI2=Ã\Fn~<7G:hآQԥ.Չk#^+p᠉{)=LSYj+3mzǤv2;#Qr VjÇmuwm#˲%@]>1Ҽ1DkPZWGO4sZߣMu$v ' +Dn/7J4TP?eu0 m%# NޛZ93ƌ2˸'p8udL7.B{}`72";v~dz0.j6l̀@jrf!'ۚfH h[6 Sn*WO퇯&d)N&}|ڱ9^+{:3:ݽh,,`o2SɉtHㆉ^VpeG4rBP_h8ieKg_`]*¢?7I<%`6εʼnٷ,Z#o!W1>*VF>bj%wed, |/1Y uyFfYLD&On 3Bw3 JJ1hp2/[I2܁~n NGАI1Ou9yE7 Ķ2.PfW:߇11..m4k {ɍ J3h%IS!iMEGV9,wNٿ-7M|>P˗7W/r|[٪v I,+Cbb&sh(!x"+l+/m_TKI xڌh3דӶ} 5ܲ}͉@(ʕb 91=UL0>ڊubPܥzZ>kXER2M81]AQ$n9nyN"-Rz τ=Qc0HE􂉺>Vt d)x߹ ZbǴ24^#?-lmi =ZQ2Se[d09gܬK7=w~(g1mZnBS!W̗CҁT*&֝gx5)I4H OCW<4N@S|Nq[r hu38AdZ$\".@>Gren },_To!vvO΄db(苳I`{14)Sw4&FoXw@ Pgye Z#m]U!=Z#}x_Ua.i# u~1tKABAjNY:$}qx.UXܐPO};w6S>f,0UGD'A&4PD{qD_Lù߫zt輐G"SՇ-GNQ=[ ?aK+ KkLʭa2fpFZ{ɒDLynPQ7M5 F\^%k|}"W&_MD,5?ð[hF-Lk:N9߁?wPm S0g; @͜:Dp dzۧJP1]RdaJJ=8Md_Ip dy-n#2 G;EisT0FÂQ'Cozrlwm+l: V$i Yr"T ht~t1sNT lyG. <Ӷ^ų9:0[ϒVz%޺oWr]`8飯ܽ\$Lqc]k9P*/ZXo|wg%1G$5X|*^kRA0`o3{稓a(f4wv,C.b6x{Tvf2Q8-8߇Ԟ 86s J@g O:Z-6i-+a \J[@Agxӷi[er+;b1ոKȪ$dO?$\{+";|ET^Ň*&m5qe硟3oA-ZaU9ƞ-*>iVgXEt;BQAfn aaKNC\Y2<)|!|G,2"Ɋ@S2+z`G"Ԁ>g?2\!:,e;zNGW!M]mizp#F@|浹EBC`j5BIsN[R.LRqP\wpfqW /I= P% tW1@T*4xEm%01:UŸ`/ LB; SUBJw;:Y4;ibi!$7OuDkoVf= /E+@xVb>v>*0Ao6b%Ӏ6Rm`^}3pJ1bsgvgJ,N(ҐfE2ң4^v8#?13D|IiFuLJy ) Y8kE̍CFi+&\$ri`lYo,QPŭU@ȄJAc@]U>c,Z_nW\=~&p?ri րVuUK MqCw'k%b4\er w @Jf'jغu+w©[_mɍ e[AuR44a]MR³fol .e>RаˁWϯ"#t=H]Xi&-><ӑn7aʒ XBzm eڪ{(~o-nZ%um{&YhȻ*f!ҕ|+ J,|V b3{'ITh(iB -wh8E(*skLO B"t4bzƇ 6SxդQ  v-5Z["xiD\A9XDU 󹀛Db7O"w +ٱ?_5aK'P%+$<BmtP;pfǙ)]/(r>VF`d}8" ߱,BD/z2_;L3H& \> ]7'c.7{yR 7ѦqA?-sUG+}R aG && x[B%A#!BvCG(~X+En*:(a?EBU)ރ1{MǺjw0,nMkZ␙Tj5V2t")pa O'l\!|EX՞!M[jMfò ׻)Z)JY MI75_t&9S8efӊN`~אs, ӌ}ɢD>{v].K([ BcηLV.ɭJJ1V96l7 ([?ʷgh,J`cZzT ss]ֵPcܦv7]Y&-Җh#*^nQOcȒ24c`Op+ 8_#,IƥQCkQ8xf_kߊ.s/3a=ȭ! $l>ޑoC0Tn5# ǯ 3áq[A, $_GOlUaN0Fyxt5bH{첾{!{ (RB_`_{ubkMQ|PzAo\Hxd؝6s2"VFU.Q|QX4q5Zza 0}m칊d7ODlg*6uR}:0iۆHJCn~p蹵]E%Zs]w;<ۤ|⟱Ѡ%#3 Hty;8qvOc+Vʎdz:nlY5`Y4 o*.K^=) X-1>ZU(rFJd7Sh!H2 fܞ}8sQ/uwza2aZZKw;ri#0B+Foq`}fǠR KL]Y1-AEX^[kP7]]O@|$}ʭW$'82<Kkz1Ol!b"(,}v#LZQx5p'hotBhRfq M ):?xnaL &Ckn{ڇ{~Wa.tU$kꈦMe  vP ֦tG\ T2y% w[-@мSAutG\^tM,52GR.*0kWO8V Rp#MbMl|I E|]82:hź-<+аUr7c1]7m 0Tt[NI-MIww4W׋&ya൒XG `-{Q#sJzWx!4 ~tH؉,$QJ*y/-SPVUpM>-]*AAhS}/W2gP 2<)C~|JD [@G{h:LYK"%"}5mLOH~89 ڼTcJeDob*ۜ.Zv 3go90y:.P:R@*Ğܢn혛` m!q&(*)AE [ mn*4:` OWOK`1{h!|6a>۬_fFDA~/ZPUԛ)?$pbWWI咞A9}me:*m4JX[D!hJV7d@0OȀ< wYx䗒u{+0s35}ׄ:0'K8X|fpžUJn/P ɮf2yfH쒭Yj$@tS΃z|yIn6~sDsl{Il]9~b,㈃4zǒ 3R$i)dw((mHJ]oXiCvDd}ӯU5fPuԌo-Ĕjn@j+X{Ɠo,z|S\psZȶi }'.NS[5( dbPp`0\~>Y.8COcL/-<ۘe>JhJ3BЀ] L}zE;|笣}QZqE7?S1'`2pP@X1Tfr\j.RW,mJW+J09A [t@frIMњ*_enh8Ѻj C)u\{yq:b|ޯTu5hL)I(fɡƦ>BbC8![}8X;LˬU!fn{Np_i4z+3sWgd|7aI,@VYhr޳Xi^;Dn;{F7qƚ͇VW~6<4&p 1=Cݵխ"ޒ5G\8|qUВg?-e量4Gyoa}GUVf %Y+SjZ$[ji]Y-]ۈxi-(M8ợjDhD}b7ml*HۛY2ad * û>Ӌo@5]vk -?SSUiաPr>Eu@7 U97Hk 3'0ѳD7-쩈QWۺq<MINQ ӜZLbXm6[6 CxQ5>a%~񳴄]:3wPoO +,Ѱ<fVwړ8n`]ԀZSX,ψvڧ|K)`p<]'HdԌ{L ܈>bau@/[wo, "~VBH\W7.BI3NV3X,qTC՚]眽=2iL*kS̋y q=v#NJS&8΀)ptr/|(?| 3 f{CD7dU( `JRBB(ܡ/1 A%(lQGс3DXDy?:lb]Jm >ʈ}Ro/ v8Jw+T8VRBKu.cؗfv^O%$"KϏǽd9Iw\g +&d"~pv֩l&Ƌ+]ёz؃[R7_(vY_3ܳ`Xʯk'!ɽ#q<[ћ(̋o#wROF}魉AhoM2*•?)J}fm"W,ٵHP  śf{MM[E#+o׈Hs3I` o)\/oNG0PXgX%\@}\/[LY )X Ba9zZ{aSg$o=J*(>I9!O˰?b6%!?NJo:قp$_c%,Dg̣†<6Ajb\|:hx I ٽ{^}"HI UPP@l`[gjFE:x >GKr1tfe68929[({2z{r1W۟-*sՉo(9Ã/g%'2b;$u{y9'#Ѫ{r * CNu"[a"MY@nX]iH`;1Ǥ1Yz8}fY4*ĬkGS lX*F&1މO O[R%rԛB/8ml ~|@F 8Y$qŲ:3qVdW_lqX?4fM{bb<'Oڐ",kgVo$zť5_t&?H׻Dk8 &hQ]Ok|U٨qZ\;ˈgU6yf*ؑZO1n8,@^%j`GwrA|8wQ6ޣ8~(OΡR~a⠿7a\2x g-BJG|I{q)one죀=4&]]avozTL mz 0fIΖu>zrZ{=p.C X&>O ( 7ב.z!)C8֢ヴ=Jq ֳ34ɜ4=X <";s5E^0S3mGS[RԔ XFg͗9Z6/>ї@=j ^Д1#Lmw*@ KPN%\Ѷ"GV ehr!{ʌMT3.#_\6àKXfk]1jagy 4YDD'.CO-,_2C|#Z9m7H8 vzof:W3҉<+7&HlX[I=>5MWǚܰmv6Zޣ?^~B#R-R4>EU[=%%$] 5癏µN̓S/ &8Y"pOp/wᘴO3E3v/omˇ"+63}*Dnjfa%<ˤxy%b߷]IMQQ-nZ6wD -yu6/,?Մ2XfE<`(;Vu0 i*@q7}&{FZm 4&Ҕ0c,9a4=m;_h])YU@UZߩ+c UFVr\T{H,`zs2V&_^e`0<%}{j7:x+u&l~)"G~%[F\+6ӰW3*>S|9<:aZf氊2qf_X!6zC/HaN;0@mF`}縊`wQɤ6n꽦q(^FptDv^8xjk~BHSf0k{"KَUIx#3'D2SloYa )7pKҠ}`݊+t~lɠO9> austֿ]컎.8%ĢK^@ÖnWz1\]kvot1sg79g d0/UO=WĆ-A/aPF{5v7Ìr&`^:50\[`*%Cac%.ԧ %!G'gY(gj/vx V#4B\1v%#_y{fӣ>?%Hks'ư0쾗xsO v྿)fR]W >ebQ1vY5ѦӇ>h.`9!\D|/5\l'TAU@,4PvMriG ]0I/9OW#Ps,R2ko3`=d3lWh}k݇IEI`W@Z#W{_:󡃵`;2ikSI S"r@Gh%>@#(ÛF, RyĄ,;+N` t`DҞMI*urUk*ËwAx\weKO*RQ ~v&KW~k087~;~fL*+⌰$m VGh"DR@Cphs VIwAMFGDVO~[q~{qe~o;sLE(pf $xXH35x*+܅ ,5|5x Ze%,Tyx+?1Jpֻ\S_@L}]SVVXֹPsX櫮Xת5'̣)=7 >[hykӚd-.0g{I(1&~R閊wRڢQlJf/ (drKjĮ'þ\O~qz$;(6ҦQCgF^-Xe+x7.O` qzOgՔ| d`XzgG [[~ h`~)_¾2FIB)Q,my1s&r+ LV|x F˶DZYs+$~#^ר4sM+8pd!HJUc΄D(y8٥G' s4\ת̣o[]ZjD4E9 O9cj 0QT#]bT8}&\;'O4DLQ6s&h&Ban562DB9_%<v7.CL9}>4g6('nDeV.a'Zn.DL9qleC$fM\14n`8^~n3YH0+oAґF^v60D!Tm=z,>Cp\!KF LT͍=6TuV).qG;sﻢj+`*hP$ =~6 dy(q(fO0 dkPnTG.)T"| &1ײXgFPd02z/QLOެ3vtcM139 B`h k ? ;PωTjX&"xq_ q8j15Fݲz\Vl1lz!${}|3ak7:9չZx!zM-N%_e?XKx + QtAQ]/ŵXBȞ\CDF! imrPv6!:LΟEG=ڨ*UJeD.@hJW^G@&v'S}NZ#!F7Ob"o<<ypo?/q/Vዱ?"E['~ǨFk|' .=J]Y6I9TLeT2 yx757 #(sCWY'șS::u]cvbZ~#u d&(HwḃJG,9thG=PXՇdixbSOX-ƀP(w~hJ<&U uͿݧps]]Ii6STg')sARC$Ki)݄篬hؽLK6êuXik⃂<ǟ3+DE"7rg;JyRDd<|v̈VX$h`G+"BcqϏ4d|!dP)uV>fT$\y ICQ/XwD`A?4_ii~"3uqa6mP+C.}[񯄹ȰI_Z,[GGS4.l{A9+"ԔFϞS#̎Jĉ NcN`$D,h(lWq3$/ 4bb]R_&)'3Eɕo2pRA27T |s1:@eG࡙;Rf0Lƈ/+q;BQq'&|Z6KE.URxk@"=SU0P{ؔ ા({gSt9>eZܮァmr@H8uuEκA}-gseBaI$,hqlo# aC;8jy,)U-~vJtFG .*\%Ym0fR8`t"j"軓._,Tɬ%al !ls%)C_5Ń pGlyuW.9%dM9L mLBxUw\zV+lq4 MC_p W'Ꚏxn{3;|cHޘm?MXpp~|vf[_Yjzﹿ2AG'rL]^I)UۛUUm507pn zyft5/R\rRH+RS7}i.p]G@ Eo'33{x>̺ZJyx H[lr&smC|$5~9Yv+c$[}4AVy4ĊYF,m! ZH .N{B&0ߟ?yci@YgU$df L EF`:6%:e4͂UDzK"\qЫ(qS:? j993>fM*}AqEvu^Wmg0{f.~#O }X*Z8J^AysIR;Ɲ/d*L:} mIMNƢV)%uY~0{:a|ڶR6[5sy"{ڦUQJ@/DxGN+O=&6菌9.ɇܦ괺ߚ/ 9g*,,ĹMqMͼ扊FFQR7Oc-hp=HKᛂtm5c&WI!w`ď ־ÞbK5ZKIs =fp6/@ \Us|Q*ayy\$OIn't; UBkT\pA`kw_/\^pb!-?O]YIfRH8Q,C&j{ȂI^D>lTz>Pyz2* Z| KfJ1] !K6AI%մ!/&,aEn^y(_!{s|Tʙ`\ 쨄6_$~S>1PRqg7E0^щ푵&!Zqʁz"m ߙgAnsFJ&*Nٟ!e azCl1tHj7ưp-BI#a{ނFpZɇg=M0 95fIq ݔL`@?DYb)?dɮj:k` \C_[IU(+r<cz)Spm; 89aSO%DɷV񋧇 g/zTu," Li{VoW-oբJ^C8w@,wʹ岲GDZ Vg+fI>N5{Tr@򖒺X80o?TFH{ qFAgA'%AhC*DqFs2r&6<5pƚ\WHq$8sX1{*#VK Ve_x&"BKS =e16Tg찎g{%؀_bRʪUg3 T;B;3kq``u> ;~`8bhkqߠ 4ҷ\*n~N/#os+v9c(8gRu\D{2•Dk#㹞#A"m `m5ٌbNE[}.犭͉gefӜ+;侒ל"8IS-7"qYs|LGE:nxP4ST/.]B^/%$  Me#4Uk:,aΊiPIJN9As\pt$een`F|h u&Z B:a."W1zŽNXbtg&^lkr9*,&_P*2#ĶxgRWو IB|a"+:v %DԂ^@6"CW+d~2>^sp`Xƃ*pN;K[I:`(ʍ;i7ҝIMY`h|wr@ mx+(hh\yU4PAklB?2fe6yN} #^"gNJ{(}M *V gW$/̬gآ k ȡUT4e_+mHw]k;E1UArm|1,ql8^ԀBʿK0| _ȴ k+Ik{Psxg@{,bnURn 7++3C™P mqz%\yϊ߳#ʎwU 6Z "<{-PC q3^jJ'$c /+ݨ<:>!TRÂJx jk}~oǙƠDЦڬ|z'Ycy}01; )e'8{bo"S!P|33hR<$8KAUNpn0IMYPCdS$,") vk'ErBxQz-Wt_I[t RU4l~"RŠRu =4(zR%a?P #ph Y-HI}J6'I{" {hH%yb#v|7vN!iv2 6*҄d#~ chN`#֨uVT+D|YB_Z4AP>DcN 8DL bзXKxwiV)AfǕ(9G՗dϰ[utjؼnWڲ&sމx "AI6_ic{MH;5ઢ5 |'48;4Hx:CQ(Cv P @pȇ3Y+g{RD;YgOJI<ga_u7$oLCqMU"q$&z\@,2 Dy\'.סa!R? u^JzBE]#4PzSYF/DZ&,U mu9c` O1qH}tn__:3E:ӹ_3ޠW^w,j> vDޙ$$K \`*[9)ÒR.גRQnD <-{2'J`nɋ,X4w9X]Sx|3+1A$$JX8X֊)ݵ9^FzϹ Ćƽ加Yޡ" Mx\EڟuϠgȏUo/^`%4*h~JƮa*q쉡,@/-4X+:~'`,zËg+)3ty'p3-if?\!;_kV W:jiS&̧j]j?LBs cBr(@y|K+l /~lZSh s+Sw޲A:F b%Cفv8Q&_ï ;ܴ`jpV36b|Yp`pϷӧ;OL@a8ne f" ż%1ʓ0jgo;`ny(`hrI g uKdFOHY zFDFHda\F0f`8?ZlT6>k/5ɽfx=|kJbw#kivg|ϵ|JrmsQ~(n723!Vo΃Ĭʷ!Lh YY^UWR߱m9kw,x?rFY23ݾ0`« [\k\yB6y}Ol"|_.I"{ Z$MlJm u"GN){b]SS(ȱ֌oev; !+VRk,gUl cm6Gr*;,]7tDn))8oySQ"%>qؘmp(c( ,o4zDٟ!j,"ca7^ iz/Vo=wV1(*RlV%9Es~! *h񹟤\˃AHHquMa:gTldykk@ay+kr\NIK/4)Ol`(t(f}_xрupr$V4B;leg8'vϘ0{)s̟33K{% tKM& =s[KrybU%_:Af`٠ akAswjٻx3{#KtrN]CvzqLƉEȻ}.99LURZP*,B2URֳXETGHf6.lDRj9&`<_hY!u );_(^|!tIz&jrj{Xɱs8arƦ'ݭlbOƲ]&Bp|x~wԲɃ+Ie@cUW-wm d:.uJ!|ne׻w9Qm 4GJ,YE&2r@=vʉ/$^V3 A>HϠgq DEo(&NS&/r7 k_%CI+3Iv uu+'Gn5|%`FgPXE͚%nh&>&.64U"" |ӦfX£|5{hͧU6AOg鄱(#r]טSbgY;M݁6C̾$4 ߆ݣG'sO ( .7J-ʎ=*}0Z@bnyd+7҇m.gkC]2n%n1#,P_+6 F@l*q8'\35mQܽJh\>h% maDzٜ"{B6bl5{SAa n+ XP_LU||2ֈ%̱ǹNGlqC(I#pؐbuH4)xKе6ͺK׃RUX1) kgq v $EU{ѶvLeKte&9ƹ53X#9Tps=jV5P:W.b:EZ$~oW X'D\a.૷W\=X +_r(KTؒdvc /,5x6wVLEHdJ޸ܴR.8Cn?p}p-a/#,tA3rX!FP~y;~O QVv٤\e3]w[04DY) Q&2[Ү?!g9`k n1Aü)<tEΆnߥ ޶K:DuYVP 0ߪnu2 Q/t-jDd.`TUqu E+ peP#yzh';,!1*RLсڰnd!w^$#l771 ?9[s>W۱ kc9bx{vgBZOEHPFGi&b&K9?}C}6WEio]*mt@ K)ZЁj@ʝ^0 Pi}#nlslL8Ǒ>᝝^߮T>d4A6pe6[w0[=<7)ǵ}̊wrF)i4*$G ߠB[2Q"^Ϲ jn1:*|t=o*M@ٝ@{t0,E%fn^}ڝue~[;$k~$|-Wم@&|m>> VaZ⒴h\ #qX[+'t2q&3*/#xTrn/pCM340v2rQ "w^:HmދPo`~".!+hߥY]p1!Kx[x! 2 X9 ੣?t&+.O gAvEUРm`>ۗ7lvF=DzF_ Éѿ!mg~'lY񍍤kZu>kЏƽ P&ʥ0TZΘKo˽ sbм9w[-Qcwv*ȡwk/sI]pP Inn7n \ˎ,:}ejܺ t Bv͜jՎ{$`>{^j=4N螶SkHg(5^<)BR+ pPTu'ݻkȯDJGJR9=74Ű83Nb~Wߍ!}ǩK MO<7oTK){ U0xuP,SF7VUC*>n nfpˎ}&RL:0zcXNPȞ2v&Q1=Z~fHu:(Lr.Tοz`(_@(fwA_x)UQjl\[J6]zCnE*~;ۯb* T=V=%qSģU6]= cK-8ՠ$[|U1''j77YQ|ft6hEA^a:ˡ =ucC El(Sϗb D{cۮ>V %Jh`FJ`NDDmwBc2r'ӳ^.4ɤ!-k@$Na {u度Q\Ƭ_Q?̳̹͸`&'D[^ Z/ǀn8SY{ꩉ=b˷%t{6B.Ӫ&y0rb=4& 7yJC;n H(bƷҸsǖQJy~[tp}&WsKUN~@$漿)ɬD ,Ip,X%r3@[R>=W)6ĺEތFEMʗX7^0݃|"4˶uUz*4=EC .w¼w1ԚDž&ÂEl+̸dz ۔ O_~OA}6Tj^;Q]C}|lVD >u{,$#8=!L,(!R*v{@,)"Z' /&T&h(UnbԽ?/:UvqC$IS[[L^A~]J59z&;um(p!kU>Zy8b;.#\߬ҘdRsWW= VpL$%ܩҲ,SēXc<"Ѱ;_D"P'LffV3tEQmbM/vyWQ  1~au@=K/)\=$\h5h"-dΧcSpK&}u!핫3JIO .1J!4Y0uP&wP'a 1D&Ty!jޔ<ड़c11 uً?͓y&I/}C@oFm{p!ر־P rˀ%Jo! s2Ǐ)œ{B7GnhK24(<7`H(-#j#f8/"UR<.-p aƞ׊lNu\%*dOl;cPqHXj| ۛg+%re"'\wU:WҰF>$F,s'⇃f'ak:8! jD`5*|,Е nM}CD $hD;'4 I^Br!V0";jP,d@x0oسN:'|Kg_LfCrcϓr+ 1}sVHQ[i#E^AR~.',[֥q>MB;*C='|&(= lJ3CX1"AQCZqoD.FM EAH#s劚Q4 ra1f̊o`C[VͨR{/LU!`bC3^ r'  qtzrsIǗr: Hv-uZJaUbAh/nJ(C:c6|$}lkЦSOlqd' nƭP'ѳZSib",Oudu0GNn եT;D'wBN!wLci]ݾ,(Z<ֈ3JbbJ\3NzG|Rx[[jЦ8d`+|>y?YQTE' Oreb;znA 0V.j_oEK$M3A~2o>Z*J~fYXۍd#cb@|k,2t`_Es}lK%5ƪy6Բp1O%73%x/ \d帴 `]TN Pn`b,U`";Yg64=f&+@dY |[Eу`q$ }溣^ ފ;3]ˠ"7W 7mRh_U͇҆H?o1I|yrXU[ɬ16Uxz9}7r|JF^{#q8;nLxH2kYK GՇzU1i?8s)9;JXlZ(,VڻfʕFG~+1x!Ee ./#X,%s/;U1sZC| #*(Qa%dyv)p45נ##)}~Tᙺ_ 9i;ΉT}n?7KK댠=) (شP&Ğ7}hkXE,J3bɩ݈c7 _ے`&cs@_rYU9Qj'ߺkMq^8 o@ԸY29F Z_~ +Npq={.F$U=$D9n93R\0wfns~R *-6&)L@ s}e"~Szy-@b1"95u^t)S ɜx$1mgq,og+ G^\1_0鵚{WebKhh%dHjF7~vꀳSoQ _;;1d'l^9P剞c\9b'Ɣ8L^ #{t:zAbeivhmx=83Eb99@tv!nGUlnCWOE~FAMg'[zY#89J#& M @&TpGEd*+LI+׆B[HRY9mz\(0{Ƕ~KyxS$"'FR!\p>!EfFے-܌2G}tH/"NQ".vYJpƵ^b!›"Q#)r┃yiv451t^s+&Iqn.JHS$WpBXא6/c{ 8I➪ "w̿!U\w'1\wkCR ;'[758H4;x S,dᮮɳ!8%B:jq{'d#!; 9Kw ĠpNGQ|CV82*xǽ -Kx=G%; )*WN|?'/AJ5cFIi-6&F)ۨŕlf-6.6Q1}(JsS]T0K삇q TC _ c$ (ܔ{(0ÐZr/ʑQ.śXo,ZlUg%8JK2dYaug))_RM4  2 3|kk7mTHy誥HjOԮU{LVj6 gz\yEUR 8/gZ+ףRZP_y>&?a<3ǜ!谔!ER"ֹSQ!#~'{T~ڄbR$ZLd7Y?j]Vڏ%Fx$b oW <ٰs2}@{pBRjz}=FC| }!a Or`yke|[Q"3%gfZ9{0޴0 #@AV׽mEѩ"%<$C+Y7$c,{h"XzaBݶOE"@lR:[ Fm3;Ց V&ԥӾUe}q0E\Y/忞hբҋBo\.nW"k0w6ߠKW@T{&?ʯ#O{F̧2}2(!hVhƋT ΥF~3G _4l`Υ|jfu2q5yΣbӒ1[\*وrW TSP;Bx Ŭ ekyaH{[7d]I_{"jvҍm!`I)2G"KHN,"H"j(̸h"56/[Ǽ)kUZvYh4|i;(PV$\2t&TU%z%1{:o-a3y)♏zӯ^|'1_ W>=|8!\>*쓞Ȃ;pSo#5CMM-y8qqvT!#grR9vŎgIB.5ɦL*,- 9TkRȞ.Y.ΦXpBeqe| s|˱)11;PT0&Ԇ jU6|G0IPUEs)T|b]p`>{{*?md5EĐt`V[XhHFA\b7ծY(!Zu9g0"(;eݖ?pPK%!:RDg@lb2Mh RqB S".dX_7 bAv?r^jLΧʌX*`)La QW٠.05F. , Iv2z:x<'M S+1A5 ĵ{GknP}SP~4v~u ЬKМ/b]2 btni Uӂ9=fcϿ-Xab4 w| @fUgfi8HhН[33(֩bYw[BX`L/6!M!9ώʘ9eJ@< Wsj'3jhmaw7,b'A؎R)}[^bSN2w-3>BiG! -:vdAyk/{݁R-xY1;V0r+J{N@9) oo$ux|C)4DN,%Vϻ(R&\BՊj"EچM 4ߋFBc, n(殑lFu oX~eu\.~H.xҰ5ETPjxN(bdp)|CR,FJը\H0X)5LaABYiA4c͠(K6%/O)Lӎk!' Vz$`$ۥf[ žXZZvXڀ*[O7rLzGcѶD0.BOFk?KΖTi!X(ga"u=(שwq„[$0פ˅tʤ؇"'YOMcE!b.kx>vRIZHϵŞNi$4ŹaU2a<;vmJ{NubS+<Ÿ]UyH\ey9ͬR,fKBr8_* \2Ֆ x\iSk܌JMs֡?a>g-7^Nhq_#+I7:YW9;Po@$k_jK +JNQ#t)Bw>Wp_M*^8ZiL"ikz2oyRYg8IWŏ@~jH\<% ӬQRh*Ю>zP{(x :4Ң)|0E]cX ԉUeՓ|7,L;~໲.tޟȷ(MC3^14-p*hZʊiWDG~h u @= r[KDSyp\|PS˫՜T~ĎJ3ž1U=SMg6;jŠzcRqRD?N0t֖'v#O\ɄX!6Zdz®2O'o|]TR$˼Hwؿ Z(Խ ~i;h 纑Q:R 8?QauN~L4$YbﴼRO;XQR[1MS`,Bn{ *ztvm0p_ C 'zW$Zjeǰ=\bO/"J~^\ɩ0G0 7?NTny" aGŇ8U"*m j16 ΟNlįxʜ֙DQ~*_We"[t=0vyIm ><A+[w.&U'|lz 03vDni(buPs',yAi6 ȵ~jS1ՙ}?AUA VȖ{i7B#9Iy nq^ŸРI>a?lJXj\yo,[넄J{FjSAϘm_6"SHQY(OIvQ+,&٩ pBN!Ϡ˧1y-k֏֬F>bL0k⡾͓BoM5T|XС"8B n2aujCO"8Ld7 ;ܔNq@=׻#ŷ#:`˘^('HV(߯0D;sp"?>^XG`e T)wL c!0<`)}l.qu0?m/8?` F9[E7>R y^Ej|1>`Ă㳹U5c_Zᮟϔ.( -(6#eWP~#ˑ K[V OeUW{Ǿx? H>Acs,9ܩOp]"5\+-1QŎ-^^)GH4R:"[C͟ǽ(;@~لE8 h=f' [ j𒹤˽~ff?˔^44duX@ըCH+΄jH:='hU咡'zhbd1U >v&OE m$on]c>ȄB<&*K_.3!EG@_0= SuIˁ%"3J}V-WUա)s:Qkt1 ij5!)`Ⱥ-jky؆4u;A#De˽pO_ ==V}_r$E,ω7)+SK -f X[GT41-;e>.gc< >ښQ^Mcl8OHu=&@ L/[O*-jz`(dO9[E[Th&MZ|-\(N9|X(nKN}ͭM(?7ih(і|guJP["WnCM뷭?(?+nIwnuZW,uwA5BH;Hߧ-3xBrB9 G cE^˱IJzbI,/IX<: FT^ 3|0=Fow67 5WqtgVLcy*W(Q,P5Ru W3m֞ E;^)D5sY"A]ؾAƆ(a>S2' vY(";wʹOn!T}h iRLZ} hi/Ԃvp_\-3PH~E!yF|zN{DokkS2Xn./ G-ϫov^p%Fy#`7$il ˡ$Qfmtgc8+= '}>y$3d#؋f.0o9]Nx-zFwv=5(H5,@N5A-2St񳨩(6 r"ɯKqY+SZSo"|'O}G@w/|}pʸlәyeێ}lm%~se}U \p`=n-]ЪזǬ_)|n: h%`S0i\M&? [wT'ώui X{!d_g|qTd{n7y *6[{ގqMi6RCFNiM #yغPx/rxQ#Es$iZ 鮭= Nd/]4 BU>:}u}4jmHgSe-)㺝/#RٓKZ# fO>[W6 Tk{- lS`&9 ȶXFCbS*;qG1f8P.)P\1J5zTBDiugH[=J>ׅC϶ܱ攥c-}{G _~Jۀ3ph"F0|4⥷v܍\֢ ޜ$귧#Tdms~ `;0U̒I3=G%r107 U cqPxPZľ˒t ,4 Kj짊N)-_2b@= !(w/5F7VoU<}8QT,)M+ ,%b{smksY!jP2/C $XFX.(~ёKuiQ/ QPY.~UF~&l,_j7',lg,[VAĭ?͖G | ` P?s1^BX1@˫ݙA/i ~= ,=#kW118!S1DZv>K~2Ki9}kVQ7m8:'/,9"hPC)%Vꑩ/ʁKpQMF-k;}tqV0߃{|XO~i|a=$}v4KxXfFq\|mD,;6V_p*oFs3)oJxׂwNtEd=ô鄍o >; z`=wgGk\M[?%GMHF\RR۷AЯ?qb`~u8^iϤ01+c Vk]Nk^JK,<8<ୁOCU}֚°C´A6u`{1(cI6Z ?%}r< c<3n1ZvuhHje5`/%N:YvN:H@wz7h\+y1Lt9q2͸3Ԯ*% sS!oHH2R1V] ǁ1]&pi.Mr?R)YxZ-3Du5+heh='!e^brG2Ll괗9%nAXfg`ڔ4LIQ0.wk6fRCmb\8jdz%9Y͝ZaqIOornBxw"jE\5 cGGø~0R-{ekFcv"1:?SF?+UhsNw^k<١Uo#tݛ .z[ cH@_DL!D^EZ5OB ilupn#,_\X1npoQ@Qw(d8:̙j\ۜ R+׏RC/2GpWyt)>*ߙ8^\D5h0zKB[,i9GrgJH5aPeK=6 1"k~ySy"ߵ4̒yD:p_y=^A7.r!DžhSco#SXgQWѪ:M̊o/5<y/&ulP\K'+`Q:0NAC6#TZ;+ʂ\GQ&#k!NN>DԱ"4'BS)<ͺUU9Z d*UBe^?w Z(<D}cqzɯS}[efD2N;;y.16wa #҃'~ݲ-4 CuCGJw5!9`2"E9hUađ_,`wը>֠&j,Ԅw/2;EiH\~;_E h'p"~ylIO ۆINVe͋^{Sϣ"4]&t]pxQwQp+Kiv:hǏ̟cWX>qluq<|3AHDITxE U/El|(K}~!bs"ʡ;(ɞ(̓K .L[:iaڴW@o:mg% X#r4N<CN{8xΒf/&pHl_ޝё)sgr4y&Je#P]ORHWbg Sq<4蟘mc׼U]:AHZib\p-@QgUz7=!k'2]o F!H\4Iow=O|ۿP+G\P& #Dž /A05U7w[+&jNXD5j*&rj<]lQ'^\H3-SÆ0?Ѹܠ[18q@W9%]8nj()~wOu]fg\ av%x웝IqMc$efFAZx1"IsdL8F_p␟((GsҸ+xJ_8:Jxbtv1eA Z70z -7LgIE0JXs;AٍcNȵ~=丯H@QmyhDYӜ[֟{Ҍ/ 9:~qdq*q~#G:弗f;yCK8-;T0IC'D$ĬBc^9Qyp ߌi/*"/D TJQvb~aUKQ#0s33%>F4SͶu?  uD5EY=*xo>&+$BO?HCI7\>VX d"[ RarI5d7>i0.T&آf)sڅ0. 0:&@CAu?7)x} p3Y;e@`79e6B&E afD'~,+v_4kI9{<cWi8`Ͽ$CmG+CF[#򵍃hAd ()'6] O `{CE].C?QnNff YDbh,XGnQBL{(TYd[X+Q`dJiά##F'Y?,+^Y>$3iIi3BWg]Т<}'wMa=>1J0)Np;<,) XM?xc7TmCU͖.~-€qz՚ٞ007qX'Y=zA'2 {ߗQXx/ǯ3;7&j&no#e8VCW.vǜcw7D`HV*֖w6H<,ٿN[A&<5e96چ]>'! lU(~8%${*-.vռ Al:3G]bH TmLCˋ_aFÚڐ4ְ G`8ӰPcd3?zZ2O< ;l7,hB_[M`g(OαI3[c9h1轿ަ|7^u! al bFg\++oKU@njV/7&/y?6m4PPK?]ϓ{jM6V_aN-=%)x?t`Zha"zWa l cŇ'ƹ헽iF}IG'2FV3L hKI5cQ .QelUH ttpu(NE=yZ̲0MS8:M`{Ϸ|)zޜ&Rºq-4J=etC [|j#)P2o&\uIcr rKC9f`ܪ^$$:(K17'N%C0[N xWB`by{]Qf]dY%BGǃ9+F@AƖ"׀dA7q0bk;5eyqӏ51Y _;%f7O$R\s͂qw%>F ~.u9{vMzR4=<˓'N2.N:,2ۦ?b 8p$\/dس%nIlmHY] ;{^t ~idY2`GY.*MJp>x { t܈-.[΅Q9wj:\ٺ4l703ӕcLer2} !SRbyRbwJ4J1倍;6&$Ӳi:Ɇ#m=lNs4IC ;K(̝\5a ԗP^`=Dμ! Fa4ŝgI'{6 lC׉P‹s"6$hYnل*%Q؝veܒ*Aʍ8ō*~MGe4̙j=Cmt-ƪℳHJm-,x'J)S'e9:2G^pj&̨-bxyJyխ/F]HpO,EM'D!U艬40f|;G& FiFn cyHk"١LTP yt$j\|LSt4ԺbaJ(S,r9p#C-KO ج0Jm pN6 sd:$UFl\m-33q;! 5te^go?: J֌)$}F%1"pWȤDYn}K/*MLv`?5V;il~5jHL@'#{jqbݩ~iB;q!R*"6Tnau?c-muD٠c1 ?X`":,֬j8aKϜYԩ=PË N"혇q]ͲoMRr|xu2 tI)LI qҳHv 5T+XᣛY Y@/Zrcݛ"GDxθ6o'UAMYƝ0FAR\W͈!<$ңFt.'j/|Y ",,j[Iv(0't˔u`qx=I<貟F>Wb5%]ppm ul3`ǔMjXkoV-Ac y2ߙ19D*~>BR@l^X7qr?vS}8t='x]_;K8B^a6dv߄EKFrian(ڎ- E` ]3Az{O㎊'Y]EGp]tcC)W`#L_L_R\ ()вlK|Pj/$ !9fq G843lm$|^[r ~D- j`.ΧPex%$2}L ySw w\W+!a`%qZݹY)W~!=>g,O#ݽނ}?vWHbGowi k|v>[:D-7$-* 8G&EK9x2[lq<$Y#`GE](d15|XT .L]@t ŅAW00j2K& 8:śK!߲Dr&l#^ޗlT]>ȕ`_7"-e hL"ЯhG ?5QhxYtB,& U,La]^*عV|zaiܠ8_BzFة/7u4J`aL#ǿM{{e]8[C:?|/%GJ~wQ|"sP?p/6>h3w}6⭹+Kʿ*h'3N%n ts[TQAw(QHaaLj$zthϴoyei>ޝRg f,5u= -0X0+ Xjt2 A`Kv/LU;o#{PM_~-HW{ ù1 h m ʛBߟ]ttH7@AI>srM1P}KsWMkuW7d!@,bxi<ӑSc!V;[t^d/qd/X]f)؏'71V9ūiIxDIe?2*W+ؠi o>->.%|rP>_H4 Ɂq(yk 8ϩ1.>2JF#ݒOw)*bnm[W>IQS_(0i)Oh MmH':N2Y9{5mPfzM-C487[te]`= Y{GAV8$:  qʈ7!{NZ.zmRkLL'df|sfzSwEo!B~/1KRW:J=y\ f?kfd~}bP$?H @sУХˏvB|GtT9ap1qxnhhd5.Ɍ3? !1IVrƹfx~W3yP?>3WI TZ3ڱae>|Us4NƑ /:eWQ|DRք2 #zvb\M.sPe'1gI(1's)V3~]:AR9Svǯe8 7*Q;Sг1,]IbuuDq:AT3OEED/N4xLiWQMRȄOO{3~-Jai2Ѭbm0K0LF]*B Bt)3w~[XuzZ ^D)1 r)͒dCc_ˌyP5^Kk&dObL7V^AB3dɧ',U秒`'s)=ɨv%8ע֏7~$N$Aw/ g QmHw>iʗZC.o4y5o:B3ǕlR sj3d1;N/B-x%Y~Mɯ% R }eYp9i9i9<&Lvt$j )ڍ WFPв* pmeA[\39FCo-K;sB&_-4䐔{)H)`G=. M{\kFJ>f(Rѵ`XR-l 9"l`;Xlt0Aioj;![iS%qP1!ѷ =HːG&(#j Wѵ>M I[Ie*ޛR?EtUIT#AQQ3O&sQr&%@գ_+4QbwharIWCIq'o8^vQWXy+$B|NwT@W1놲?oqg#l;Srxڨ@C客Oy!虀0rC]SW~~r%=T8rU ^˪FVEl7ib+PEG5k(l};+VM+$モQM#q w%P '&m:t΢YלI VK9ڿ@xt+ f/ u$fсTʔka@djX-'X0 i=\*oۥy` 3G䤫\((,*yDu=mB82ºcɗBJҦ1mUF6MTXSSaQ4EULH Ӝ.Fbcl?#{7k$ɆtI":2LL3_0)'8U5}:yKXU͉e$(Mh:C=hI_>& 8߲[RJV5qF/'2w?u+X:&:AOxP *r,X #AЬDTvkJU7~T{Jѯ pu2|GGK^Q˙?=(={ H!7,ٰE?Vt! /t|7 1iqcRgCti[j{d/|DQe-I[ȳՀB|LAF3n/6BVEy\r9҃窫cjUhR,NsOgZ7o/ù1_^l&b΁:mPc[(.W~R{.uw# qrso:TGqoך|rzV+^o[9= 3Q~I{7{kt5ތn甋ȝlC]{ &Pvta06goƓ+H>\êKEteO ,R*Z 'f lmwpT:_,E8㨺5HPp'V۸]Lyb!Ϲz̉Ld~4p(?%ccV'bZ^W89ۃ>b)"|nd[4c.ʇUymwTeCگJygsdֻsv qJM%܆ByC)&U)HTjROӤBАodTg} ٯN?Y&HfZ$V]%f;Z "/7 ]A*?-X֑ѦQ0T>N؛`*8wv#xg4-L,WJ˵80%7~W$Lh. IW<m `p}.]36FvS$vKj3i%B$.vtQ'I(O(X @/R#SU'Ke㍻8W7BXspc@z*'&o)tbnL@%:;qARLl"[-h c7MD }¯hHhjRk+p&GfZSq#W-Q!m:!/rQ)aPp,O_ZWG.̥HܔZ),-d_'߬'[pi1A?70by& &zDNSRԭ׶SHVGflPA!=:\:07Kݕo?`tTA ?5|A7gnpڃXur+ O {F$: ֜ I[@Em \BT<~_}|}`X\95BJٳ:.٠MrQh.(o{$ݰ`rn\S "-JqÃHX.VR)_P0⃳r`w\+х)2/ % mf$*P &pr 0/H Utnؗw)=˲G"N)z pX rB'ݶP{oﰗxgZ46Pʉ\;ʒ1VqXr5SkD`3tؗ4 E nnD2_ǝN6XZWT>&]^"_Bi[T%kɩj | ^VW aћyzih)dn&yς~$-\^,:EI05w kg;~>4rsȼ#yz"Ȉc"K7kaQArʤk{ϕ 1g鮬@>կ8Z% Ww킇Ĺ^czGاGLuYOUcmpP(< i=JI`U}F JJQN߿\[ /|hL3C{>/N3Q"3"Ɉ"l?ӄ%v85Mj:vT>zKO[X1gh<Q_\'?^ fͣ۷AC=>[]pFW'Tb01슗7nio$g7#}M/"ysAn8S\XKΗv Ow֔x3fvY?FnG?l:Y=C!7B0T㲝1⑫o/WK98ץNOB!'yt<4ZmDqƿ՗cvt(5$2;iqьzWrqrFh ̀\~/8kʪ ҤTh&YOa]k=- [,Ƨ49m@MaP1!lB:>GC \ &XC$rrUEvԾv%Çlx izb8y79c8jVn Ux(`Ǜ2{sSu#a>_ /Vְ(0gBteMS Kr. |7c3aT䂖*-x vUlUѹPm`4Sn#H8*2&]c\mGp̯3"!Nd\BWT/v./ 0S0xU#O7gց\p۞ZN$J ޲{^~7{_A=\YmMt.e!1 ^n}CD!pDܲ U~w?oU+ ُܡP!C#٩b/B <2+K V,JV A i/rkT8CkO+fJ.ty/@G|SыX-s<<[r2=^p_ c%ht$z%Hx]>*kW: B' .7U L䓽蕘G P"g6_;dZk n+{CN*J D92""Ԅoq׏%\7}j#d*>g9ayUoLP[7Շv$f2Q> 9 MjC ff3zd"rJ8z"k3>'_1b`{ >Hu-GjvcʐTкQ&.Ʒg NlxҰkvj?Ev3ts6 2v#z(2Q=Q`m0L? ٍ)25ଯܴzI[ tr Lj9]:'f.&evq1GE7cOϞ*&s2)G+`&ZIl`W Jb>ؘ]kif% tk$G܁n//ϲ*jSܦ[c eCQ~/|ϡsSf|x+Q]ڕP*^M9ve@k J % jvgh$pޞDnkR ud#59_$~TsIkŊmN%WJ.$վh5sˆ=1z?5?t a*lЪu+BâdߺTZsP.dD> (]mp, o+ h\fF",-fRssm8HV8=dDGz iث8zʴ˕ P׻oRqw8sm@({è!$Dm }6E/e)q 0uIS$fi¢:M{y}7okPW͵SGfj8ȳIBC̬wkzs ]"ʸ:{_"06[d0T2Gi.j eSK'l@ޣmsƈVF? ̇+Og`1҃l8WTZ7-0$k»4Q~?ѝlrfK"o @3х0K(isoa`fk%W($mwm(ToZ~ mJUIYn[ 2@6uF.&SDLoh@:IvcMr{b2nUĊxק1ĝ}5tI F2Y'\D,gڜt\h G2܄k2!L Y>k4X.[qr?UD99xMI[C+ n v;WKm,̻STHś?]_@VäaL[EM[,>MU;)nz1O,%˹0d QrKF;s0= ʑj:XZ534%ب3ԉHUR~ SưuJ_%q3|RKq5@Irx4EG@[U'oq6*,:k#j˷p'i7/]FB wIH0UUؓH;P|ǡ)*g- +v*kT:d/lQ>!7d2Ь0cr`XbbBNrp#4.JWN3nts\5aw \X @ߞ}K%9" rK\u;bo%ѕ]ܑyd;+P" ƻLD<7?J^I{L}yeOl*%"HKXEzc14R5xY^N' êJPఁ;>y;?(\B />1jn"L/3~g^eN&\qWyU<ۙA֧Q BJ*k#_ɠ,u0*sa٣Ѫh S(F:8fo崙P%׿QnPpq"IdHx +kM"mF5;QqF}?2,>@_V/<1u(όYh׍ad\/7J_jl& {L幜!#I-?M/N~ z-@#lO.v!k_`~Z0=TC wstPMf7DPgm1ee P#W2w>|NS͉]łݼ83ZkJSjx U}USLQ4@Ĺa@P.lKɋ]eH!'b4?D`/.ݰZOm&ɫk/)ahP( 3^w/i ,\ ~0 A``2Vw-g/$}dJ3L.-݃yLw' h_Uqդѧ :#~D"Qk_lS++qrG^iu|d"(=Z=?O6LU|q>im0tqM8<7}W w=6 1/u{Qgkym;|6g4u(QUT!\kG btPLLP0 fgq}W%ݻԡ2oY?1c<;/xjn".{"uthpfȳ~1 `VDU +di|`f(v&>b3i9ƒK@>xZ4V# 5>LJ>ZP|Ҋ_j@(_ (7 >W.69Y,8o'9\A-E  b*н(LJB6]c\x{.Ri\.5Bį">IX(WϗtJu2 R!dX{x%}8Z~GúWTXf_@EXLm .&;MI?W ,VJf؜z͵kd#4N}Nr>#+^*x'I9n53܏dno©8pZ2ƞ#-wgHnlA2 x7kՔ2wB5ETNFsGZ .æCzfiD"Uvh Ƒ渕} ` m ق.ޡom4o0OWzvV >z?"#sŽ嶒%V)@8(⑲9j8Z|ڽ̜L?EZܤ4=3qRZǧq{!K$ 9MI‘*^ ..\NRy,̩hvgXdW޿`n_ QD/IUBո5HAwe~Ț? Κmdgj{8>{żYR^sU 6glrY>Ϫz3]w}~U~/ #M+͊`iu`3 i&4shEjQXLf f| wsp#8 p'jldrOq}Y/y*1}.Z[m;rДO/o/Nˉ),2#0ÐI;S>gwEk^ltͱ<՜o:g:8Nԅ~͢Wi l NAo3~Qu-ch7uPH|7_-ˮE4/ e>YA[sduՃYёC;c+붸#5F̲q. KfR|)Ib1ExFpLv$1='d KîR:jV4@+pBtԇ$YZ `>1SeRQSa|[&Q 2;Q^g kg1O*I+"[ v~ s]o( ="s5S}:O]8- 2@AA'k^n'xG6][HchQހl@W9\=<>헞9;\ "A!yzO~~⽣⟰g~9OeqFs"m|zYʼn 3;@d0iC۪82/"B䑇D=l\%cװo/6;״#Z%Gs}UG< mo})D)W7Yua)'Ȁ<4HM&非5r[׏,.lS51c1_$w x]wYZû;:0G߈H`aAX\3'AMK_!>eAWW<~ͱ'Ҟ3Ow^E3m ,Pg lp@)*Ҡ:1;_ţkAK-Z;͑ >.re(^ !AXOr-R?+<H?o(-.Yjz2Onf뼳K9w|/k`KUPpR$$tK_q*J@я?(bTM)0`3^nF7u}mu`jګ5khY^ٷUɖRLj{:̘+AЅ9[ +ie׋)Ҹv6f3nolmOg'z k{k [h7CR$?7t+t ǩcC:'?ix5YC Z%HHx@z}ėXUk' %~٧tbd*0{愾p_f%Rtw!&@In&U $*=䳠59 DY*1ѽ@;[g'.2)(zGUʁbF8XN| Z# oJ|c`̇QPSScD_ІoU J[^ ش-K h ΅zi#ex[ 9Ej@ڪ=H('̷j8},{^0GZa a 꾮',©˙1e5H?L–vcjBs&a@_oH,e(m79T5Om&y?͎ӊPhlkj]` #BνƟ嶚̘R;MS:Gс:໊V*AyPI!#bG>n[ϯPHiO[CxAb5ʴ}*:x[`mM^(pqf_'`R ?yQ3!QQ򌔔xn貦$ GKQK-Mgk~?Idoa9w^?LM.͏[D=4&>et[Ou1y͇RX6K2\qB{As]iLzȦm\'5%D!ck.@@ԖIQ2m(7rDw:*`J>ټ>\yM[ϝMp}:ȄVI'ZW3>P"BjQ@[WAk{S U-naRa|1iyC4y53v.;vYw Έex9nDSsAFRc" i4j{Z)y5v|(K`-Ū g ._[,d6Й_)go KvD*0iHfJwr6j)AŗS]gWCYScLſ|fk:ĕ1y{ S?ؚyGi5Zm(L,G `|e8tk8}XYk_G) ė5Ixzr s64$06Tյe[NIaHW L:P& aMyQ|'$ͤ3H(Bnr(g^k^vo >qp5cQ8> e2d z>N-}VuγEG-UTTE&΅XH32H0ϛhKw5@ezQvd NjnrKt+d/C+|q"͂~xBqք8fY&W&b`J.N08fCbeSs #kH>k,l% }%'9|.` |bPlU'!ӘE9 54_xTJQG<+fM,1Mt d?m 4:'s請e7@:.ZVk+`0p|mv/In Rԫu`.c=2du-@+4ʛSg$C;_v֑cJ]fr~.cƆ[@㿽~ )UiXy;bI;2|)ب.cϥV'3 $?&,:z較%UC?!P4cIK",KVG4rKӸoιߺMŝ%sc-uĸ!9I8hc=dߞ&Xb 's[ N-8ءZiӡsz9Ͻ[IW&HȇzSNV $LGN/>!"!)64$)շ/[lάXY%+C+X; d_Y\`ðP[>Qoˇʰ2A#Js.r:JJUv 8?aPmOT| a#CU(Fp'\FjvL.Ê}09#,@U>:x4ާ;~U2(JމpsF|!t j1T:i/Fx{bڸ7zV5M ڃ+8PzF7TVNl2R8I/>9E-\tt, CCz _RKzBc :[9e_&'G-HAf}e2JN?JwOL Ȋ)(Xײl~)nHukK. rSb[ڳ3H[͒C@wbh;&J;[[L̵ QHTPH~ZF9q!2@`>ϻ<{;r{%lMCx\};&@ߠ\Qso2a$̢(Sp"YUro44>&lH;qְZ^?9L$)Q$ PlP] bGHlv轢Zu/H0Q&SU#Ԑ61`AA <3;Z#Zy8Sm!?ZIҍg>/ȯKߢk{fGNwXS&aԃu"畯z`RfF(T쎨0MbJ B(sVhocEQL}j4n,-3| h3Z(8P?cXQت"Τq1lRvN8*s -FL!?vJ\@ {؝ ޸dذ;zuZSs"k]h0IKKbwQB,쩏s+M?[\ 8ИuuPKf۠/UuX0w6vLDyM50 ʱ֓L<gP{!i4̋5y©xgC})NT&?Ό탈H߻ݪ[}B+b2w:Ed^ZmEZx@sY!*WK$Cy2 m}t+> X̱2S,_+KK-мG%͠d%e1pDCLV[Ɖ*4CUL@3{F@;luBgԵ̶|ֱPî^@^q4ҝJ2Pl o1U6ՆLtj< *1H&H E۞^;M_і7Pнkn? ,HSVYXl1|["IʒuJ'$ YDC 9Z)sځ_E&݄) }_Q':3U~6JdLHrpr.+oyi&nX ϛKG0/sFlAh}̈"$t~=Ƶ){]9t.h{h†¾xr((Iݝu)( ɳF[AhcP9YOo]WۣAa0sy3 >Y}-z?ͦZaŧ,2:/pA1xev7Ŝu# tʞ͒и^Rw??Ds&.|r*4gs-c[|0/"IhRELIIEސc1,׾!W9h&},-CZM֌ r>''HmYÉO00gnCCq,..Z=̃l^ Yf[N84V` -~٩T&I~@cvjKNZ~ efkn ?pedd琢Q(Q|Xn?CU[`Y(A rpD?kdB;A({,^R5P.jpHQ3Zp$Q6vYEuusvWNQ 'Y.:5FnbŠŧNIJ6d٤ԹhsMI'˺4葓jX^#dh$fez:V~`,EP'=r>sM!Ǎ~Z,lt*a3zߊP^j壙iTi*NN8w20$GmzٗSQ򜃮\k Tf-+3W ۷ȃ3.>9$Y,P[ڹlןƲ8 ,QYciR9,nɯg;¬9ڸ놆 iN`Kκ;էHE / #;/'7 ziDǸ9 jd;QaE׾.Q`jG\[4!s<+b{kv[Eٗ0n8M'5!^yYتw{o{~D<&N:w296b3|KScL0! pT0 ) ȟJkcV)ȻpɟD*xٺg~!.^N;>[aMV뗤!CEA<p̙KvfoKU]$CW#e1Ƹ:CG>uD8yc3N3LUXaH5`_f^[Z-J}K?3HlG|B+(]L ˬkCA O'*2}͵$8o,ݛgϜ^꺨1:r{I킓'z|):mtڑRQl`]a|[!e'$=X<1vQwcFX' my 07zG&TX+<}z4yRY2+߃/:Gby.70:O I~wV ]`Hyifo@~zu#pqъ茟ﺣGZăb큉 Ly2cSHe%pq-^Wkb։NR;p"Jw5fx!ʕ%fS M^ar ˙% fBc_ʟUzVSօ-sLAMl\,7inӡ}o \k{2,|њe>K̰oft†`RpZ5቏8{z &Y5g 2|yXWa!=LdV^6zO>9yZu(ۘ~4\8N +$yx貽Gڮ>y,jyX\*:hd:P5G/ZKzǂ ,&28oMd{PnHrN`E}J.T݀p |1\U!?*mwg) Yye%~GR3N 2_߸;A0,pMг8Bj1xVerUg{{}p!3# Xy):nM8CŪA刭ŔE=y(9g]M>XX[x8F{v B7?%'|ЕxSRՍO9Qs#Q2M -r XI|}~a#Lm2@#B]rοU3O寘Ą HABNF{ȅѨFQAu@zwTsj}X3掼dhtka&*}TVwjFv##3XƇ eIqo鐊-k>ʱOV$ c 4#pU!Ëu/}dŸF1O+~=#%0R&]nc/4[:S}mH1Sj9(">&H РlH,g]ᎥڂS~SNѝ2q0ܑ%CJR*(cD*#U) {TL,uhv%Z6v S'z]-@K/GpgOr9dXi^s3զ3(ABS<=a Rcgⳓ(2pWT^0¤vwn6uJBI#-ŒJ)YCN̋R:\Ϡ t^_fRZ| gg4ͤ~OVVz/ d+Gʡ'SܠIJ2:Nv 4rk8kO䀮MP(}*JP(k7pr:`Zؙ_#o_- yNJ##@A}>2(.A0]nqp [T`\Uy HkĴ3\X2~4ޘǔD-s3!fx^GLg>@|$2|lj )bwww{S6XOErn:Dur(Cjᬜ=Xtlx'CG-$sS4z-iiӏҡf@%':´t%neۄH,qBُr*ô7\.]}'ƙXRi0yx׾syH/!zE2CILQ |@; b7TϾ^(}LYhgnԁРij9"(Ch}+] MxK8E CSJ)vUU|4 `բ ])KYhD kTaE8j NIpq| pZy xMY.J<.)qe@d@-M$#&qKjnAj?B%PqqK+hFB_)Slԃ ?Qf_$a#R')٢ a^X<`dnu }ןYị@ޔRw$4jd`ar'΅~)/nfO%)s.m)ByɊ<8P+ OhBޒMm  #zZh$d+檦x2e8NuFףc}c@wOHmETD~C(q1S)ĀXV?  7GW;ȕ#tGs%uՎufe :צ&4fh>}V)~(VކmiEo%Lrng:H{oҫ]ױޏP<>Xܞaɵ4*r!#C-4©0JgTΉ؉awgPU@3=hycn@h G0~dyiFh tYk7 A+iͿS6I*&(qPP@,?-SC7i  9[fIDgוzJ҇(pjȅrH_A=|j.4ɎC;4tynp~ tm<{ Mk:>NUfZ¢4w e? z*Yn.9$)78o5\c4x*ZV釫cϥiFg׮AxWJشr(KGg7LɖTkDpe&J:F^5gBft-#zf h\c,c *o&'^|Ggk҆8]hMW3"N Z J3'r_Ǽfw=f5 rԚNg:5 2M#6iRKf昫;P1ϑG]@D+@:hA96i!B]oR3ǃWdI'-7߳-!!'1!/!X&lASO^%(:@|ޡ뇑u P:eCC8P |և}X1#kD}'TK_JD&MlABJbوy`3 A"KnַEėݓNV0{>*+U11nm0V?* 'gR%z1Cx&_X|lpimm[{9JAyg@c"/ii)Uu5IYܩX++L%X!3OToz{ya%NP>cMlQQWHMME9 r`{A=9E̿GoR,ڙG(.i6>sNZkS)|)@&Pᕆ5uw~wҹ۾KČwkOT kآUN?. CArU Yn"Ѡ|Lc^[=QicHA[|g՚յ9n]T)j~ --u}B+Mx7/'^aMm)UP{7bXz\y'zu9!2 S}>%$89XF~ٟH%9q |km6ߎ,9d$SoR\~swbG%[leʀ鯷bԽVvkɕ3MmJ+b^'WU@DhZNniIH /1f~*"g=,8,P H{<yzI>rPퟍZN^ë3O&ܧS"pOmպX4$^TUaƦDpVFρٞLn\LdJ9Mu8E1hϳJe)8tp2_=^ |ZpIX^on;o GyKXYJg,ɮ|A׫y$i}i@Rq>Ѓ r7꤃.cy;hm&ӃFMͬEduk/nasHPP:Gت؆ݠu^̥Z=OtM;ў|55<>z;|hle:"Gj3*E^0X 5/1\y/ɏ[@+N0^wN@`CeH ~u{aX0+z14rd@h/ߎ[#a>At{-:S)6aDeV^9*l/oW&t# 4褹a,X\")UIyӬ4YS 6lH DӉ|olK!hB֟jmX3U-ĐQ&-Jeu+)o1cǀL@x)kC>DDEG2ar*'Q]718Tx#ЖJB*oTݙmIhz+GǏ=<`iix.Д1RQK&mÔ㽂g3#ccpzVN[ MRJS-DY@&w";kIU=zvvSrxM9G2s){(u"rL MMh٫̍LvTkEYm(\[R"6hR",fDfqsfBkLVZ0WP409$@ Qj/ىp7nvc"3e5K ^k|叢JjIk@p&#$8q01Fh݉Z 3TG=0lAfP굜R-:PZfj{zI &jkOc2w.Aw*vw:-AX$gswERy'a 2]|ҏ @~[<2Al`e }?%[ =@2QS>~T++9,—}t"S^CI;iغb[p! qRS! Y;4o6%Wzxl.zDT[$GN!OFX@ +!grFM6:PqPK[=9syڙ'I?ϵaFV ZP--IxKJ"v(XoڌpM 'nEJ<3Bkwޔt*&/3I!^keMI2OX߽#5|(vI D'ϛ%lΓVL^(6q'ldv 4~]Htj&Sn11<7Zf/~h+#iqUp=X[{(ªAݑf*>8Ǣ>7Cxo0U]ugpU&y_@:{VT>waW.s$-($OGpno&AfB{AhoK8y.?a\&ŨOBFzge:){\!{ըefq A.򑅣(k>aw1|cNKx:Qcs,d|o [; ByC_W}H]"^K/?^I ]FoM;A 9%Uu,Pj 07@7>p8VA3Z93 w(eD}} /r+#@t|{YcKh5Yj?T&H5oLc=+CdX 6 荕N.1ŰU5hN7hmq 0``G;.#_7{2>`Ӻᴤzۂe{D_ l̖N.^;NρѡlqH#FOA_aplmIa%1xWZPAn˩ M5.@6#|~q\nKJۺ% cUWÎSg܏QkD C67]# DM |ʹmL%XÁ5; ¤(-uH~V?8G.m{oM.#A̿@F^T )cİkY3VC"XJ-:lJq\o}]DPX j#=_BD`-}82mOπ!=Ta;Q;e=o fua&RxF0MrH\5Z/quޤő75VuTؐ[̴sYϧKAIOLyN8tYm#9 FjwɀwJ?lQisR-Sb Ծc׵拍wj>KRhc`֌F]ڃ) e?=iYr\-TuEA. ULEkh镇tT)4ӺuK#=_[Dž|.wH|/vAf֧h*'@2Ke0d-)"'Ӛ1qۯ#?Vv=nGw^+mlH҉-&pwh_<żWvnObpAZJ၅+!2GFR썗1 T&bWUYf運$ $WU $8ɐ[$ƳKܿo*Vq^\xxщ^f z0()v$n#2/a "Îz%Tm yԸVa/-}[m= q뙆YcgGl]kbQZ2HMq||UGCI .x\+}wG oa@ tXKVt:7[nظ2pB%e" u[#,݆اLg=r'J}`6= :g39Td5}RE;ۡ[QPE@Pĸ&!_ܩs€utL]y]I xK SK{l C&I]敕 ;T{" YFR)Jq hiTd}Vp‹uFӥC*=Zl 9zN| XC8`|'nzO^9ho r v6+;UV@Q;̳F;p`A cEIzh%n8n |r5#a7ݺkW'"%3/Ƒ})X`UcsW#I !D͉}H/H]*DD2Q[ P-i~ h1CeԸ6jƑ*ͱ#t(0v^.:kGxd& ! Pg6.`cBVҒұ Y^n JU_V{QKƃ>Lv\sq*QV1}L+J^P"B5+ ՜*ĔU-& F፸d 4e7 Rw}n-,F;qtua߻Z'y(ٿNޜ &P"f(%Csu{=zsBz{qM!XR&:䱶RSsGb6q,>TyV ;q-ě󧊦lS/A4eE<#6=xjl8Pi{Э;Β0++.H4kAGoS^UM|_]NMt(Qhe#Mf/c j)G `L\**p75>lZhUR@,-jg@O S UiE@GC>t?W~b`)RCQP!'( eQ+7652cn-!Df TkBQɌɣȳq̥0nLZ|r}2q9#ܞ~[rQܢJhfQyo|_P;^lub 13I5* }7}fb=I s /J0fEGFkA$½o$Ay[){b幥vߠTevVE݂)9S%߻z`8Nʺ@ k}[ȇ8K:sس`Aیb^{@O:{r3XoĘ~SOa$4 w~S lީO ,-^~ ͈k _}?; jw #En}d/b|!~8)Dz+5KhU%d(=oc9%;]ĴB?GOe/K)ɞ2"3)$6|Vu'a7YIR㔻*l;i2Խ̜s%vTVwХԫ,=q{FMB%cK!0lC),W!x0ZqDWH,-%%@j1A C Bf-7LUJWNby+!AZKucm_ؙȎ(gco;.&cMzOCvfwŸJZ`Q. 0tt*ϻ@QBGD4c"(%Ek{rL?YuvUbin[sϻb>+A WU.L̞_] 'e 'Cv1Ҳ*k)ONU`yTTo*r)!BҒ`OIc { Uz*Y@yƜثﶔhݓ ܾ~Ɍqu3zj( r%#ОjBQͰ̶}rUgYj8,)vU\=`VI)Tﶚw.MVA4(s?-5"Z)}vMA̙3 op4.Y MRa%.r|A|%cac6`ˡ[^(Ѐ:^[ˇ𞝧{Hs_I Sck7/͕'zV|VG7=ivp5UVz5Ыͧ?(30GREJnQGYeb6tj ٸ`<#H6x-/^$, + H8'j.RsџJvT zդG6Ek*EןCT_MywMSȉIΘRY3G*& q== Y)ubj";,ϐCܡ*^=Np'%<Zv["[a ! ntTߦB?%]>̽]JY靗jZU @U \ A%Ƴ~ω8NBU]Ysyz7Y٫]@t?@)n`_dP6%N; rihH&e~n++g fdzdW^enQh`*aWYo~UAD8i\zdJ6f69! M[`y:<\Xvy KJ 潎7XXOR??]4=A%o D*{ٸ)}ȠF.G 1juLSmJ[]Z lCi HqH2H9BFLq?>eIG8, d>9D"?l~ʧF(Rsf#nn(?4Z nC45Mf?8|lI?.mrnqQ95+J޺N:*-Ϊg"wj),8[cP!/uf;j%BI-3AwEܭ6"4L'N,?⡫ff{8 =S9mCaғ3+"21]!%faVTp^~]9%8DfDЙ$:Pi(Q,iWL GX j?GI4YCWkD&\;/pǶw;b+$e_cG|sVY`Ȓ8Gv]rm1&M_QL<)'ktI&sZ )!XKq9&ATn^(hP~w]Yuo:D ?. IWQxEn i2iqd% sti~d9WK8 ,e~:Pn#^8O5䍣R76))FKl4~}샞7A8#{5}}㡤wY ナ&]"B/AHrE?q05~~1VA~o+B *lЦ:芔 mΧEJ)hY;p[sqLYnނ$$n;"^{M0kwBi1sW^iϿ'] V+m>B)EU-xh7^Ơ!)1V#JqE?BS\H݆` 7>unR֥ quk;q“A@Ӊ~Vumg/Qyj{z0%oix"<寍4ɉ 7ZO@ HEj~m*PZW > JXU)RiR\`xZ 7 v_=9aʯʊoJTȳ@o4ܕzGD#Ǡ8K0'x{x6o5 XlY cc9svg9Hf6i+yaLpXk N ;*hTuV<DU`vs mVjYsEKL*鯣pW /@Gym%t]}&ǺPc0J Wy/ V9ڑNQD&i?[+T:9IVbu}2'2j?!< PR@H6LpK 2U$OAZމ,Ö>] èâWmnmKs M~ Qh:V~~njz=pN 'MKWT/sA`>| gؽfoż *T|Lt{~f/bCнdNEGy)"uiio0%齈YwS/ kX`N_LtcHބ=+YK>v$..+DjnL靏u?&:pbU$yapcrѲR3ꀱ8D x%*1J%PܩqgGxwx Аw˝q~CX^nR{TtCJUO]6t5 ;FaMgص¿=SPm 1ǹBku.<`RN-J 6$K> (JJ>ћc2z+F▼YOf}0s=<RE܈Z!ոO!M|ٽ"H8*y.Ojp)]1eYޙ`Zd2[7 znuNAtf[uמ#8`2q-BVOfM|kGh/f.*).bc06mӴssāqD2m$thlչ f*Xިh9xrOS~s$mE=3{m({i7]>S$R#~|袜VrB@sFM"+ M"ć}$qӍ\;Fiʸa@I}꛾vC @8\W$QՎA^ A_k`pp5fX2E<]2 '\" JRaN7;rfu _l2N6YS)Z,q5^nț.CZOMjdH`b(Rl32? "՚&/7#_oWSjN|HS p.} <>çZ7=/TQ3RC3s]&yxFNÂKeTu;5ޢ[8ejM^z鐔Qw19'd 6' "l(ݡs4aQ" 13f+@Tzw7욃ߢE”gؐkVݍ^SF %ݗa[ ytb8^6s*d"/}·^m2]_$Wl;>Sjh^r&m@ >G:ˑ;uI \Fdd[(lCAJbיS. C_[Z[V.lQ\nham49i -#@;a^Pja5GWkym)  GJ0LLʁ`U[E8>WTgg~r~-LP^yeC{x89Զ_ =XNx*_Me{. vel>1=&]E$),b"7ܺh/nMP@-O?O9F.D^') 7}]X>4O/uIY/'F8G&/cIgQ}G5f(`]YcH؈xݻJ$v-Ml\(o [7~w#56 ^+qNKhca.#/=GTC?[ynB|O<Tra4ΊxE>K,e@E Erb0c>& Az p&MG'8|D2 ^Z4N'kBgDRpVLN0 lQ.问mGF&TbSJ0xPEP qC/ ot۬G 's0uٮ|LC*kô$o=gr64X!'`}Ƶ'.Dp`!/-Hz1aP5*#9GȺMw`kpXYMYCCCD s7d_TV]9r[m>5'A &nm}yH `M|5nG*2b tf`J\ov*[9ZLˇ,yZY1H\1r>e] v^ ¸s|vۊ3{ ~oN" uV ҋ>ױ!qQ]hx[(6BԖr| rPÚVQR mşpɢu7xRNOh6gŬ)vZ1 =xC^Ef adL|!B ]A| `G L"rOGt8}~pAy"B(rݷgYxmk?2;hCV/xGE"aHr8`AF}R1 Ws1+$L[ɵ?0M)&g v^{lr-dc.,HnXT5=vAY=] _%uSQjZ;(n@᮪b]cP|9`5ՠFvDui2zEDcVf^m|f ЀWc|D۱QRÉs`4V&?1Sv u9仠;:/=R$݁Q1 N!i]DN^4%4WίԿGqr1rH%}kmh62;{vQ 7o_$qQKcNH7:ŧ>{%IԱ,8QҴOQ Rߡ\_n|S8_>Rαk=@kcJpd[R5Ø4}aMV'I$5ƢI5)1V!Tvl$G"5MC:T&`Qτp|.'| RO,Dɨ𥞨\3 ړNح:S>C+0˝];NU^6G: H'(Q7 _Jv8 ,4B&(8l|C^.d>(Q5QV`Q/aM2tFæbᯉ&T|N SXxo(oKPHyYjC' &SaAݲ>MH(; <ݺfD6Q^"g[Y n(R/\m1_k,zP Kx{&"x iOs,G+n9P(hT'B[̨8;as.R|.уN-\LN̆-{GghT5_͘BmbI'm|Dm9!=UVzx_z)2aި0&-gΈ N].@hK WL(Hb[-q&q ~b4 YL'!!Yc޵8]] 0sAy%Z4څ0~ "V1ˬ^^+4$a<אWI,Rc -Sx vip鬦[f=RսT-u dORA|8n k,qkՊ'ȋi'돨 O?BlvU pbe^9'ZqyYigWy£H@hGZm Q< m '牨:DR-i&oH خ^,̙Z]Ey 1c+A̹ÛGES[v1d(TLA's3 0D=BnHf Gjoi0se z.J1NpAe =/"q7o5.+PDI LTרZ u ,axD/Vطm_~֫x@JO햤  d~(OȰpw6w=f0T~U%k'ж#&_7!/Y+erF035>8w8H{QC b뉟Ig1GO/q"d Hd6cAVA,|INOů>UDsZ͉87.2dlNޘM-\}F?_t#h%>D=s 6s" )6[.Aa ۖXbgY+՚Lg5c] XQTo7z{RkT9~Fcj[o&(z$U5K!B(g7T ~+$EégS04v%6 ,lEǟ4KKl:c}s$Da3.k1c9j|D CUH17Aa'aYH6yfoX9 DpÊ2-?WO uC>m?&S/̊<â5X%azO 7ouR/;p 5MkmX\j0jі,_-+aX-j&Q=(p @JUԡO!D*7y\Uskq-"Hy|3 K ?mErcpֹmW}f)a?!DH* ƳuQyb?i#QKʻ[Gi~Y.dyb'| PLv' S%Ĭ+6旎 5uN]ׄBaz[I=p>\4HKJ|{;gq [yl8l^zsS& YR:"aҹتxܷAJK2_rP6\|vA3]F+r4)Fr߹Y5Y#O œ8c.N *7.d78D;!5 O⺴%1Ze3=K_Z%'%nWB;[0n:jjX؝"C)y'wVL ףliSXf\_z*z.xç{aOݧ ˖e /iح.+g\$k`[gTH5f#HV&o{(cKo*A BƝ_ QD֒*rVq| aD ,[60eDzUH)IJA(e{RT| 60jupWK3y\vxm9' :6Iz[`=/9l6 Pǥ:xt+wVf2q+,IJ"2 (F+ j&#%kWu$IuZ[qZLXŤ>#UsІX9 [zb.>&WPCGT=TƠi l-YE]gjMhS5M+/|AhƓS0>,AUAH--r،_EM,&qsu[o(]U$ H,wnx!OY8Oψ[hX #m7~A4A]4)K~F0+ldD 3}`x0$˼1Ýy0a7Jܑd@6~}4~*`bB&wMAjAg剘}F&hxڕ#oaLIHE1!3^/ (K<<n:>Xըo ;I)i>V%{'ʯ;3I!#*j?wEp$ ;)8 i$Jo*J !Jdؚegc , s8z27r VWnZ: e\.f7.3: ,4狼F`zp?!+žA/ (:ޕ P8q^wKyG`CZVTa2%f8 $(R4Hv|woxLj8uh4 K"H'Ϡ:)L?ԛ6oWsv]4Wk>DZ>JɥmQWx?3~=CW pk#D=(ou ژsÖ %T|;jʨo>5&>w>$f].j!,{3pdsKӰPATe3E^T^&~I"҂xe>M~cV(aҸKoug.JGh3;+W9cAlieMpvC ,ᦾGD)K%hŐ\^3-Do=Fx=vq3V ,ܫY_-N6DGw3G˞AiAfff+jUu\t2c2ٲ '%r*f*Iloʜ EaX%L)Op|D"Er2gw}e<_=\DN1u;*JOw-)5sXv-IL>qDi8X2ѤR 1xT_i[ӧ(bVճno \]8wsZH(t8t_qV`'͙ۈRRK+ؕgن,Ր ; 1.UrD}QZme.U-[C7Sdl@B<,֑r&C&0H9R.|f;r鶛#m]vk̫:OX 6įhl{I=沗}Q <7?H}Jǁ1.hu0s{/̇us٪Z 56HCKl T0q@!<=LN^=})8/,>$n\$ktú,QWuhdDs1mc+2<(f5u:ftN[pv@uIT%y؅ԃTR Cqr>nL1vunUڴSC}z̗!4/{g*8OC&Z/[ڕ'rG:UݏYBqQbwC@*V--3/eVOo_^W,LCG}>5nk{Ckn2V Wy9(R9k1\R];k:~rMz")  OZzP:½~jV9-GFVP 4f`dW>nm&ܰw<.3ACLղ^xʍ۞sJy,( j"ukeC.<Ҽ' ѬwĎ3ƝfpH}ץEpX'9a^gSRBj۰u^kpG6/]6y(ED CCTpkk#NW勁^*(Ebkwȋ8f.uXXȧbr%c':4l _:,F i/X4輄!DN 4SY޼\ް\09}V4 nxKgY09]0 z`2Bcjm/]0+';혛ؒC? 'd# D6暊c&Bo"MaebQ{XNNRAZA<6X>Np"Hs^5c ]ΎTM^fqQR.?-{ǩ争 ѴytI$҃msoq9"C)!bQwTM]_ Ѥ<"^ĕ1]aPհ'Еs7He Mޞ_P&vrΐ:Ö͓n9[jo2*1 rKrۤ;ۨ05: AVu:zbঘyA@0:+{nj3=M t'8-}1eVZƆrIm,,t?l ױWtK۝yN/wf5@!ltNr"Zou3:v(?1n[x~aW| v "rW$P42wLW!ă޽r䵛ʳt6hN~ٍ)rP\93 T;cFjsZ;Og6$}+2:7Zk.m +;#WcWʇ&c{ ޺cQwҥ#;ɷZ A`ZR&vy]2n][^iNVP)lH20 ' P,m \w'(>8U jQloSTl4QA Y`M3HX+ƂًBy1w6jG )e#Dd a2:Q{"lR089!h>h4|~7җhYٵ4v+ټ7q+F2TM*ONEDC.8tGsi=FF< 0QbhJ%H9IZ3Gёx ϝ,iR*#&ۘiuSZ~*.L- {\UWLh >fx},-opHvvf`*=2fk{8$Dr?TTZ}{pǂ21cZ= ̼%3jI@0Hb/SɃah"`ڨf~Fꘂoo^o:1VKbjq- "HRzYt޵_|츣8`!˻cfgQuƹ+s(MWvN".Z`Z^/ &s:1PA Hk=YL?c>&qn6 ng5bɯz\hjiTMSr6WR>ojFdm"hunc OF#v *6ZSsy_0bc:l8dv]k(ԢHqLQZ ʪu۸ϳ,},ndv&ydK×Q=~-R+T"͕` Fͥy0vZ[:&ЀophH?r9u7|bsKtzj&71VPA8-\o`uXדVv,K/wJ&h0ٷ\8d>OwW\Y֤쒰PO5+]wn*칀`5C=YN<=dD\uл4cQxuʅX*㱶YUq)vu8Gg#2OKϑB =)}uLFGtƣҀmJpk$2랲֪_w4Rܧ%PIxS: xX"' H>0d?PzPchX{@Exesb~OYsnk$48'wdb̠Nzª)n .@s ԹZ e.3z6 稡$OhkILPya/d[sεϲqq`,Zݗ@:qH*r;Dzh g@v=Osv>xYѓ dj?Q\l*aÝ?>m !kZr~ -szt>\3gwf#ѝK1N0gorfT·'̡͛y };ehY;4azs!&}믢n}'BqgH|Llg' dS]+ifqf=w,̰vޠyT tl zVRrt16;QKZ*Lv? oWƑU+vjXV`}W釐z;lSz:jdx~ EU~Z[l|xfҘqA=妕&^V#(p a9` phg9wCYQJk=z^[: w"/yN.o(ilb֗*! &\5q,<&$#@!Y]l;SaqBH$#8\qxEφMjd50/`H9GRqif8AB}3@?H<9Ow~>M+u[wqN?|1N;6 ۅZ,w\3ӟ6QaY/Tn3-M#wx&PPWu((N<:uByGώWrVYa&K{Y`B'S2W✫\NM {gv1Q`@L Ȏ9$h6d,@'"dʽygFt^odVUPaT{PxOWij0 "cJִCuy'kT#=$}ɤ8cN+C_ZKL#|)Yvݴa=K6F ƪ֕;y;YسR? ui Rt18Iꚑ%'Feo8q'c@jʆWIf)@ _gy󄁍J{BzDWY˿'.Ŵ(zՙzɓ4K *\Y\jg E#,fqB҉J!9nPw0 F7Z&4(B;r+ށ<9 w^zQ&;S?sMQsqUp~~3>8BW!YAPURA`!T}4>ſm2frkdqV?7E;)ȼ9l ?JωO%(?Atqz˳1;mKM/ VU u][HÃJ[K3 p1`}P5 P^, 냶)y4]ZS&[R t`RWLUS 0"o!+Kb~U21@tA">o]`)ȶ}{L c._Xq~vBpoq}v5/Kͺ( $EPrI_ى2ӆvr) </P3dY^5Ҁ_J7U9Ƕt dV}挈RsN~01 z4^c,N4s5Oq h!G%<#63p6ҍo["Ӫ'OovBMqh |*a*zh)nE)n8M6 LN/cL$cD)sh05wzA=X.6dl(S7.]4vv +4d0Y y^e]$`^.5@e!MVb r<@3 ̯rViά]nK2 a?D ##mJMw@r2l:$R#DB֡(Hpk3J!jѻmLr!zv{(uY{V+kYd1 dh*F]da]"'HgrFtibDZR4'Rm x03&wn$K O nC,V 08:د%#ߛ S j2}]s-ޔG&qEž-'$}Y.Ꜩ"r{ &*7ݶfM5('8B,~` t=܎Ķ ?㲹%lrxnu)H.4UbpsJK򚤾ʗo#9V2r&2l}7s|KL ʯt\ح8dEO(j­S>LPItUHg_ۚHL?lBFre87sKj%Q#-tk?UD|7<}}Δ"{r: %񹾉mK}Զ{ .X$>&lj?Uq tf: ʉNd[INGU & 'G? iފ%N"9"?ϭìeGA󫉈2;fppu_W(e!KoKhLW|9PD:5]ȍ#n`R#usikR|.N`"dm4[ݻzzauV;"w|Gh >,wjI5`=旿'YUדO=3Ί~g266Np|]_ul'3 X{%u2庌oQ3wwAL7)%*\AD?Bur}0񋍘$sJD8$&uu6? Ho rHS r4(iP&^GCӆ6mqԎO/(.y-[!m g*5ˌ.MEuaږD_#ECe3l^8}|& #q(swacr Ou`T-{?2WngVb}#Z0? J_F2p=̓iX,I?1=JeL(l!zb̬믓s uO}ՄXA`a|۔qMx7VwNE~u0Dg-yd:'N>lŁS>l Zϳ"yL̻X’ " K{vʠzީ:xO : U29fvmOdq^& 5OU g,A-];YrTK Irf ?fKp1UʜMµ"CBH÷c72ѳ'(_:#uvV-x9_mMuDtd2!ݪ IǂB(r"HâoUHqo1x8Aը4ց`;|QuQq,Nfpɷ(^;ocF+4\N67 56G8,7ů isd,D+Ͱ–RF`=ڌM.7bCCB]9>ϝ ABI9%9Х,"R2e3R2Ԍ&cX H2JQ|%_HX+EyXv|k5[uj! *7T"ı"`J3_Fj_c cZm$Rp1Oh_++@#Ӹ矝!B2n,noWodsڪC]fdіs|h2n_#u JM*+)p_LXXf l e&I5 n+!e6^R +f[?ߥ$f \PFf#XUUŚL;TiY&#~lFRh}n25,ܩI|o}҂Q*r6G߭?-ursfI`9 *J,\MR0;1/" nrWw?|C'K֢O|bjI:aѮҹ$)ԉ9pcL*DҟQ\®8B0Z knJyHqB1h ZDo-H л*h;:Pn%rS_L/&2s*teyjCn]S)5hGB]rO541f2זSonȅ`CwnYaSI*|-ruڛPL^FxfIR*YKKǭ#TENEZP5C?*0t=(1Sf&j`mP]^G"KnRu`I@8˷Xj y@p[Y1>9k89a+ƙ:vcrn +/@kO/UgT$9uHX n%U[ȶȢL#ؕVAT y  L52;?JUI~?LUyRE mt#Pk><^D; ʻ_]UUfnGG0B[8tO81l㦋vsW:q=@>\Bruiڲl.I=pZ[S#oZ4'Տ%V׌ (РK.=y#v&z41Z2FMwH]b\y|b`^43p2eU J2{u/uZL={1m) ::V?h0 }%Vd*];OHH=Œ|@Y味q[khD(d.-_.Մ Tcb,3%|@|d0KQEOQ|@B -$4{ĹεdI=@WW5FSؕ8do儲_eY2wz*YOe=!:]Veq:͛8tS_Rז٨" Z`.P?4Jߗ/f[_ry0߆۹rZg[+[ : (` ZL{lkaṳ$ 5ŻUtJnwi"2ڈNEPPMj'=PcR$))t)ٖ">78/qLf4b-۔9r3?s]| @Ӂ֘|yMkbid#*зP$R~t97;.&E,Fpdt@CJG1^C X=ο囧ցTU=V\|.z!򾻰On={w 5Q $ёT q"#1(u`bj\iw3TI`Ê4\ <یߊz*"3FL!L7')pbrіy"e2J0?ɧ{kFG皧M YPx` ]s ݂Wk g?xO\cwkx&ZT`%v=\DwBJHm0č+v|x̣Gqoe¹XBҙ@Ւ}|gO)%Y h:OD)  fГ[ZSO+c%W*VS>q[3rrsnjR}/\Swx:sZ$m |/}x DKH[)eV&(sP ״e L?8ftK%S*VT`ě;~ߦF݊.F%w'OcݴlHtض ~3߬܏&_Q[B`$})"*qxZBɺp_M4e9xyN Xy'(y&:}=aQP.c*p[9;ý8ilg$3D.Sy`GpeE{D{T=8ZOפPx]Rf% eV3]-9r˟!+[KqO{+H>=4#i&rb2eԃ"X]oGk*:nӪ+KCmb;@bxg9#1kcH5vZb=Kw"]bZ?iz]u*d?$`ؐۈ%+ִʆ"NPIQqKB̩>xp\=- CIr s7 i ;)kϵAlvd 湨Z)/O Ш]g$U@9P;3ձ(w@(R^e+`\"Ѿ({>2Ke8ƽ40n(IΪŢ5o̝M70)5 ûs{2X)8܏/wJѵG\, '[晜t9>2m+!c1PlI/Ȭ eVLy+iwo 9J$Kw= 4NtUީN] ߊ!1r/ne0W4ʑ/yUk{Kӣ* @ PgFNLߘw]JКzoQwnѥ//*ۏK'xĬcrLE=Nidt:L^wZ:F3<ÖB@ax=J~Iā4ʩ@Bd[ ]c¢z0f,2 G\7i*qɫATu!RYeVa6jk"99^5u|(/Blpvg䦀3Ѳ?ep}c[x }@38oaMR OT{J:@kP헞[$AQcWxP4ǚbzI`>UeR[)2y.y_!4P-¯TPll we)Cq3#P2N-[)7yӂ08Nn.Q'ˠ K"PD8+ƛOT Fм?>a)^"=~4B~q!T ` %G@0Nƞ]DjWYQ&x;\ՆwR)b$9dUhHU( yLu7ubr,DpA5 Vͮ`TijQ8sV73cdC9\)D°A7hhy~)vF'vB#+#61iCA;ޒ|gӖSҢRE/!E.1|)#[u!H[d'.H&hv!q`qqb bSy Ì/Nvwib$_e1Gx%[tP1e2/~NKw YHo.hr&4DUol_v?kA}ǿPGy0z@ L,CNC4HPr m*E4X7Gf~"h압Ur16LRtk%JQ}`G}}=.`nb"BOYq{BvL_2ؗ&߀K7GUjw C0HuepgWDlBqQ\CZQ`@oh)_G-=$]{7f r7X42› jC0#G{ HYSd0֬za?Qk<>0gy-$ a|FVgck'q#4[&)6v]-f ~ gm85byP:;(XP۩0zzrD7_$xԺu$ΰnooy5 (?x$NM\. 2fƏm}M+^T`2cFmElNqD/|lPwA}CXNØݴtK={SXH}hhdgU2O"4w˸)mm%O6D-r^:ܻ0xDx*l#/̾/ojy+sTSҧ=i`lI갺(1v{E6a >Ot2Pk)_fqq_I%}:K:^a%{&紸"[uoN5zצP~y˓.BT+cFzl 5>ۭsqM&% JՕcP!1>v0RoDv5h40do&r>O^Z1klM,py9rhZ8)k ]QΉ (ᇙZ1ŮJ9b&8oBs~-Yj]R=%EoD!9!R0{10Z UOd]t&UDdatlܷGu:͡(=kTFM\ ?f.__$CkjbU`B@'-0hL٨W GU5,݁WGa =űbF}]Tà (43%;]|o~3cx c_jێ84"i5H?ls "Rl;4?-PߤoCj<pgmuF@cq0p:^)3ͮfߺO3}$y z.0Pp29j ZVė>D] ? ͰÛhϐ]=C~7pOʣ j8lG8g+SZ G 1Yy4M9AXIOL$(+,@vOp+ 0C:áQR'AX޼BIEDʤ @p0嘓B84I~ႶY#}iI|_CHszNWe7Be[RKiw,4sQ9`u&JeAm, |i,aekMsW̯Lt^dH9z4P~&wL̗xƶķ5}տMDJmprۛ LrzahXQ~8!-J-!S~Z)Tӹd"!Ц%]4pPvߜ&b?x.L)_`V0`*vXRLS-g욋m#s^VخFf(heߖz%U=qDȋ ;pMHe^2qj(q~/̅TCvaihoa@{|C;484CRAܸ}ԸkRR˒Ij|"rh9kŪYB:C0}T+Ayzy6Uv[)ZVBvդh~ Uȿ1ET?_-O_pbkUƚ\=2-!uʊW(ʭq^!̮Y΃JP/ea:S48=hАpߟЎ f}+6{3!G*ZA\O!41qa#ׅjIx m?QTic!ԕFP;qneM܇}84B4½pƯjazثֽHwX.fO#A-?#'>HM& ;xPӭhJs1fKOW6\@U JwF;۫v˗2Q^!NGSvL]!_:t7A((,[x=7UYz$ZשybPm"\,no oE>1;Z:Ppܦ59 ̀=0uXCJZ LELM2{%%WؤzD.B(ՈOyϣsկϽuuj6`S!ftb3: -}w:5Z0'%k!#ٻ1"v*8eޮ7Al[3O4tOmr{#VJ>(\di"E\>LCL ?^Ě͍.^}@erո9 ݼo"#y }+ǘbYS~1כD9)JS)sm`]ģ$̻;"ro/vsY6clP$FЃIv>7>>sDz:e4hR:h ZPm"Zo@ݗVdebXl7RG0!2Jq`! ؆5ӜAy:R7s8H$ oB )@ej1Aosvz'A q:eSkK谿-j1e6 :MFfe CԦKQu2"܏ZIMfC'ʶrPuZ è{NdpX>*m ]lK"x#_]Ug|qA0Z%4=m|}B e[,؄nNl M#/(L懼!0 ``,c{MEE/2gGKdM]OuDĀ\rO/ik$T(b|m[Gm-* y4~C1>~~'(--@%a13ɤ<\ Q3xI]_4Аgd\K˘i!?HmӑXv.cS‰CyJdYR 麐Ý6wL&Oz(Ƒ̘Ѡ?΢"n K7:Lf:?Qi4{g3R CBZ"!4 .%`n/)!;]2c *Mhxpl,J8fjZˤy\4dPc4Z9 "waJ^3}9ܙƑȂ1vsK:_|DfRag '^ʭQ$ }X/8A?_|Gi]@(aWHW" j~<6c'NX@dzݒe6Bo56r h-e>ޤt6Y +P/\Xc:zڍG^YHl>秫O* Cs.[_ Om#{UT+cL9e4lmU mQ!m6}ϳ< 56y&GA 8%|&#z!7.D ~Vw#z1j<eiЇr|ڌM%& Ks_{ԻQSZ9.xKbP9w;V#jӌ]寛ɬ_Y%ꆞڕ!:f>P{wA'vŷ-_kBґh%NN7['3˛)({>[u*Sd>b+?fhg]zʞna\YlVkHو%9n5 ~XxuY$ܵ/5U6ǩ#X`v@3kux;g ]}pТ7i(_l*|e0t8 uMwsLxv ~O^/lpFVOgN o4/m$ܫz&5\ XQ=߲J&`DOG=*ueWS=oWB,L?g(E^T>KY#옳B Ρp-pAA Hs Ɛ9DlV 4Jn[3bYdxv=$W]lZgTӭ Kz{ Y^?K2,,>ơn [>q^8mfJ{zUEc'5\$ &y#![,zvOF'>B{HQ2ٴ†13㍈Hg1J=`Qegi&n{GY0QfZx.Y1b({Ӷ B(m\>k/N<i1!$Y'~MWlöGv-^NA g6Ϥ)f4X!&.mb +ωx R&il-)53 rK/f?&'T9~]__NbI6_ڽ@n =S8Lۍ3דCz _#+ޛ,L"L:(ִ܈ʗ| >@`+^OTH?O=-;}ьl;0cBE b$18btZ+C%qeu[SFkᦄoyqeG#j?@T~3.G1J/#asقioAFEUݎ'xy+1jɩ/]f`Q OR{ ;ڛ>"?s1pd(d^e-n~AH_R+t@ es[iە}t˅0/ ߍvQV㼎v0?ҝ%KSx=ه#@b`c7lx^F?{8 _ AVԳfxE$Muz_ޡBKDz$s[s2HSb'eW;a"EK= ٶ"@.=(\\)zm. BWYT!nz8"hO?Ck暺vs7'"jT>دN1Kbt6>ռP5xęaaqz 'IT,U,LKG@Wjq$;N7* nfY1 [tw)xJ1 Րm7',GTFn(w9O& B wyoPH˝J~==72jcGI~ӈ}PJJuYIV-3Txt?3NRy;q^NpFgKOtW0LL $UӋX )#We/^wqm|yr,|}7QLbGn`.e,N wҬuL!QHOVpxANE5 E OaPIBSPxj`&f+|݆bzf%a0bi`m=DdXq*@1- w̷;v A%x(*doIȒ,c2x۞l$]}͑,>Edq˱*Nz ߩ@L͕[J*Dž y#(4`% aD-8{9 @w B'#VNxQ .qDbO4 2w㳞"E>#YҲ7<ʏG@:hkZ,zz؎^p=]3||r5+EՓtb:J}{>*\es'uz|OHxڥKzͭeGIw,&q6G->3hmT յ| ˭E%)a[8uj?I oXiCD] p̺)8:vq?wUF{%{v;0~m]ejX|߻~w3wȗ:opoh+Y@,Idb7\b/aTDΫ*vM:R R備#35MbyRyo"u 3dΙ8(+ccDrjS%ӇvO!A eY߯ҧqoYMA#{Eq4󣯙@jTVnZ=߇݇Ma"YJHg3LOSk-;aXgŸmЁHWluh@Ǖ9ZAƾ{j* sn'^#~Yx\~!ѢSQêWLJLF_vQ8Jw}?yӯ #=lylUK(mct)3|i,@UaUQ m[Q5ҩ Sr5C^d2S]& \U6Y%hnx2y^W1fE^f)^܊{eL~cZ Cs0-8V_9Q_21[ER!zcO,o;[ߛvl/Z#clkz+Eɤre< t e{`m1+!~iYf^^CZgXJhגl,G`$o4:faH{ YJtG6wEv5"6qg]-ǜLZIvmQF9d! B6fgd<*s$YYo 2Ϻ N7G v#Sڻٷ)z^N[Sm4fݺŌ@ $bHJ#F- [ֳ $;[̼@|~, (UWMX3FRt4*wіꞱJꔶ՗-Q8xM9XAڴM>Ϟ* ۞Iykz]* R7[)ʻp@$"2߿Wİ8pLF\=2JV%{bD\!U~nXY2.@]BSjqTĴXKFktx$NVKAV >! Y܀SJ(OnHor@4(fHI?Ke$Bt\=]p@h,MSR6G=oxyYPT=]v~ء 4 #4x ^R $}WaCr,጑ E\\/PDn пe:Va#SQceA!үj9s0u^{r:hD'|WR?cIFsö7JPVfɈnýV}#>CoK2\#htIߞX} '6 X-<%Q):Z'S].FLԲ]|\J yU IgvP; {r t-'ȔIg'P5 k܈]6 '4//6!bP6o#ŀad%p(lv?i_CpxRoE-lGcnI1}#~l֎,}Hޫ.RZkͪv8H` ?uO6cLOW~5Oűr΋QK{ ]a Gc2lOl*ϔyIٴ/!!祮 uSx< hN}f ]G?)NDpRyl`I~\֜3rmB:\ùW?℥`ɞSf:HSs8΄ F3ש`7?c6 mkdҊn4yG02K6 D>x^7P7'nQxyJ!C2d 1Luqp/$a'RCNʃz~C6zog9tfɍb+AooSwQ>9sDB_9i/#҄(hN6r9|NqQDNϭ!Tx8_%P=tM dG.m^l:!I&8!,3(U~*P CA﹋[H~?F݌%m^xSkDr"m;n͝ʞ~N3[FFf?`_C(~"@Pѣ5vIPzl@[4|?AdMAxgv !_ԕqL,sDG~2pr3H39J3Hh:ZX[SgZp)_Wm5 }Дq'bրB |;k^ Bif!DfF"I䎍3e>[$];^IqPSZ אlRִqGYXp1Cݐp 7@:Y 9L ]CJ?osBp4_ۮH8#EԷۉ^sWzU Md|ٿ1%u< ]䪎v&5d>/xj~8خH2|ۅĐ%9ZٙB](> Ob,qv majJnJ8ߪkc }̋7t>4F; 77Ǿ{iI8l# i6_ϦvLֿ$5]>`C@ǿFH0;[ ^ ᖵ/ҀbK<69eOQF1Ö%Bcʊd:,&L@k)GYθDQdBdX3Wn"6;V6۽L@jC~c/M s\DM},G*C;.3؂ufe']kuFm#u;OFB_R`9/=.:޲WI^3 aj+|v)QgQ8X9DO}<`j2@հ9fА*~JXh­KlFSM}d@NpO9kqmQ*[@|"UDI o 6`'mVdVqCn3 :I<cB ߙeYil)i6rH r0w%ӎMdɭ!Ya^t-8A8Dsu}=:MtFSIS#XU@GB79Яioxr\. ;pt;@6N0+LV[ PHG4+,7Ty+n'I}316+QGک? e'XMPdItrBD)iJAň.n75蚊rf#-T2:-!qnIDČ(YvpN?>%ZIp8*wH'MAb*)¨GkO0%ys u_Uh6: TCٷXYձdL&$$1It|gA! 徱 D`J T(evloP֑GY5X%h]HN9E!a4Km3KoIUJus'uХ虔FJ*G0:+ 5 yJnq귧D&ǟ ouhGUiI~E`.Fr5B;|4"9r\B`f*)[f\.H^WRXKw>uWȇMlPi][Q \^9*֫XPn\ʯ݄:#-骇1OQw@:oޭ#+q8~q\6*SF%I.jފAA#"TqObOF[(~Rz7z&|fP=ʅ^}4BťEXfIȀ5dUB]Vִ1?MKYEV{slPìi%B5tY@q,UWV&F >:-7X|8-Ѝa̲ [Ry cĆAӲ}|j8q]rYP@- C>RLI6y_5 mC ?4F{hļE~U Z6% :+- &F8bvXiQ [ft_~OS=*a{>mO Y!ѽU׍ &7Q"W02E?emT~[U<#wEsII>W*&qɹ(N/幥 zB=2"Q]A;|)]K֌ 3K@p8˕8j4 7ak#g o[pL `ZI.q;MdL(Gm;z?F1qg GF)e+_zC9SȮ^NY-qu2-2 J %LCBXqu3ad[n9< @0<IZ²;sI1]cT\[בXoWc)lD}e :-h#'Jt8jn_ﰜnGxy Ǔda@|/kA޷*Eۤ74Qu=z$#FnSUmPBwQ)t5p#@xm{)qsvyA8>*Cj'G+<YbtWyvSv! nЀ[Y9¡PgwʁtYBMVBNPi)#E刮@m^T~$3 ܮ]][ T;8,;`kN}Wt'~j{-5wVŶC#yY:?xpwpqjiGurRSNqa|hV! N1TmY+F ZY6;e_7N dH:RAD̏6d%ar /Zo!HTEȣnicD kQf9 /+Ӊۇ^KO;͈4^K5*u\ fUW茚ԙw+}s&[ !7m̒X#AbfJD2ȧǎxG( +P6 g1Oh3L)iMP )JBv=K^~YoSHAgԸ1Cacrb0Q ;n )4ĈH5M״U>U]0X{rjafҕz+),# uHר&ӂj^k!`)+-ME-Wm,zt]=0ױ`Rf(P"9#!liwº2Tֆ6 mRn~'h7@\6=a̎tYQi Ghށ3ZZ*}ۂ48#W~-ܦi,L~?ϭ~ߥZ%51JH%-b{FwTQS*7<k>V(QKrp !۠RTS" 2^o40RD2 + q\1Sڝ4XsA0b\b[͎~wS\,:|=)628UQ"' Q6 Nl~ȇ[LLv}pd'eHw|Ёza:_}3)3U@2b |bp`|1̥b·3Uϯo\(XFɴH`q]X<>"k_bDLV̊B(FNN]C8Rm/RJ^IH²6MCH#d2@ mba)RPsڮnf1zLGy DbU%@NQP Gʀ7)+cdWpe^<}mGaq"N@MK1CWb[d @NS7Lg3y?;2phV53p]ys%k^&ORh^2M]DH;~+| a㎸>wˏ'e`]h/Gr~T&ù:8u8sfHz'lH7d9 M+g9e,. I!n &=ETRM- V5NQ[F,Tu+9e N0̓y>ٯ |ka/)bŞŁv<c^io6QP%m5sCs*. $uM}뗊O"\A(\'<khtɑzGl2wrSÒZ/O{mo`%WKv#4sDC#hYI6NAɑwL?hL Xuy6/3I>azB1Vs7$~#; C4r'`|[)|a5"M ?֧yXJF "ʊ',m-LgxN0-z2QAOJ4|xUþR_gC8e6Z痻+gi27'ЋbG(oO'%c5֟|Ȝ=0Y!R&^pFܤF9<7ό! 0&da;ǢbR W( ҇s.ByTV[{8 \rBm%_O 㲷aHGșH=&\8@ګ(~`g|x2IylW tB)<_$r6˓ʴn>@2O(iב0(Euh{̵$K$kfrB5|:-Ydy%tхe%85 1qˌga.OKq%wU";s+5=;s::v#TWtq7\kD}vf˱ʍ$G79߃+e(7:I㥄@/!﷊(M fwYs?Mȋf 7*_GҢDI!$1fs2:*;Ien=DEjf'ǿ2 DˆJS-:[zc^ 9!!hŸ];rt'|Wշ8)Ħ?r\o*D} KJ 퐣Iž̌~AK;;BazAΐйGln ty)>ю(S#^+kDVv,<%zջWCe.e V4j{h<3#tHPE\>^@[Ts{Cb2=E(I`ӵ 禺YKӯ5 Mng8MMr$}A%ZaQ _zf cZ5lA|y"]7ɇ"BDibLqUzD x ±!GEMdc[-J ~'mc~*Ug/N[ܐeo ;P tQ ޵A;/l]0bt!؜-\@u(zI)DՅ {xBaF {k:nXT G\27׎ˤzkFŏY1RAhcG>ѾtQKY! ҡ5]Z6 {['n|HXE#@ !u{U%;H{ie%quz>\l,=YDfZR/ ;cղh|q˹?T-AѾgh: 3^Zas v P(L?Q":" Ii#Xn&]O^r]8jᾡR V:M#gAlf>4\ƊNϡyҼJf🕕EaĎ},al̳?T>PLik3 ~cERdDF݇`Ոy*@ϓ<66()f(um0sְ*jLdHbpxf%R_4judcecIv|g2d@ȸoK W${-yab8>S7| qMUh"CY\3aRj/WPΖڔw.iYJ!nqtpCBe l -LnlAbG-NSIO&O8˛S ćssZ*gDX,H^p$ ZH%7`^8S|s=Ke]=ZHG[db{ugl?XIv!qn٨Epwb} v)^?ݯ懥ȌF. 5sk@oGC)QΡAE{܅]tQ Nb#Gp:ёT \GYKMN])9p`8 iMQ/ʽxѲK}|Ni~Nj?UwǼ٬N4W6`{g(}(ÑV\lG-(79aMmkhNUQn%b~),v,e+I Ǒjb6[3F,?ˆMzL T$#nŖ@.,DET]aXk!N"65$η2@JSxH{Uݽn#;**T#Ţ5:)_=dlJn|a$0Rb pm ŁC^;\@sv;wb9bu8w?mpN\gp o9Op*~&-٤97 _HvT6<0K =0p`h#W?o&ҌsSQ}qD1\$nV.|@b3|(*7ӽ(0 bszuIWmmE~Ȯ n$9< ZJvU[jFu!̌ɟ;v>DGH˺ȀDv?gIGǸ^49"İ2<*b>bb޷dȨgZӏCk{A+:zp&rDjsk+:wo&?.Z2kƖ,8v-`R?BL->ͮf𗻪i^JacbmQ30t{A&!15v(/JCI-.f|O<ުH9ȅe[9~ۢ&x^ԋ9} pN-i$09b8(,v+W"?mrF7lOqŤgc_)CF?h)&cZ)zThJ5;.0]&,ql͸@S vp٭@_E@)$4£̽/8=h; Iz7f42Oek8bi|$³5>Ps?mCX%Y7h'y)[mBghtYnT4I|NJ#sh5쪄"l@ˆ7ܛ]>;A Q6:P_ډBڛ5a{`JIE.u^|Z#9_W.kpݘ8^G,@ ǖҁY&igG1(D`:gpHnuu8;Ch!oxEw$$J&j&B ߇kE(pqjd}+ك-hktj`]} V=FbMs(y+CE*d?BQ׌vDN*#g$e^k oFA\$L7t-QnF( QU&:3P.jn}|RjQӊ\t\MAA9Y\x_:\!TKP[C`5Fq]״&ɒ~%Uu뀩Զsz84%{^9ۆ'XL@F(vJW} [&>~qLB_W1^ƣ}1WnSHvYش4=Ah.ktkDUL<'P09T1ZMR|*5wl60 u뺇B{l nDʫț\S'A &LG]! 1oSA Kbmf"l>%kŠ>ULYMڻ'}qm4-6|=a&񘪷EU2+aHNI<&*gfH'5U22TNsJ p'+7HqK@N&? =gYt{umݪyN&|@aCe+]nT,4[<+זayueai(,S.GKUc)=܀LWqaǖÀ5Y:瘏rxQ+w p*4飶8lj^``ȎQFtPear0mXf~Kb-gtrCźMLzXe%O Q땛Obpmlࡆ3[@Hkщ0rMqtOb:nqWS}qxo^X+FDe'Я%7hB M~HV wd6LKuu@b2dn Q;?AR< -u[r`F+9kbY30k &!n`U`7Rve&@B`un92Wֵ7!x:9yˆ)`B-\Ѯk IlvXGyos8z* n O $IM=df5Ȳ`+%hVO=,u!")/?S'mrӖOUWVu9+aA z|_ھ DX>pTl55lڈWL(ɳ\^T۶]5~k"l4 DN֊f6^gGl|N&jI;Ao1 NfU1ywƟ;{hZKk>~nw Mn{Mr7An'?`ݣ ᒞ`>!-ɔT t羖4'$j(&;A3`Ew Mm* 1?,D~~wLJG-|ҳݰ6d{r.Z*XL^æK/<;aLÆvsMhB#RH*0T-߱ /S`A{LeF |y- Dr2f#Үiwdc|ډ+h2)`4IÝ .ռ~ Ji7"ʙ̓feO49qXNRCú^ihh@[WTA}ۻ΄G8v.K,=:PR ( 8&#dzF@6vXE "h+wclDhc]?=Cb!YDbMFtjME%tuUՂb-a'p5~=MYPJ6[Ƴx=uQH)/E$8i䷀z1iulM `ql {v%1>F +a26~9LA3 U~gW kQ{?6PyE?|ު²xEƁ~\ROL Bh4ųQ(N|*sI*[ {qF{ԯz|*g80vyX :.' *EŞ{?nC)$aa!,I Alh`I}GV3TO N`P SF͋t*٦(_짮!ωovq:>>gAwS"AI1Kd|µJ ;]UkhV1dAnoHP}gOkAuw:L%ah@-G]PepGȖ(ӆ*V*k`|Ppfu@ 6:@0(͗HJt9Lw}S cXꡱ,m`c)fEg JXtf`gwag V(6 _J`<!֜͂b9?2,>*ч~0N93w4|)in0r/9]4"-I!>)#@xxU %j1X~jm(7?- b{zaP~jޘݗװti[ x8|u 1zfC,O/ٍ!ß|($ hMXaԔUXhAx{/ `| 𒡂Y8DktB@b+!۬!W1>}VZ]\C%#1Twr4-YXre`.\cicH^kɑ^wl=/-[&r¼[v!2d}lMNa!k,'amkm-d㒦 *. lcU ob[8PLz|!/qi /$KҫDElfHL-xjQ['\%p˞#lb8-8eTUpAga 'n/3##k']TIP)쟁#6N4S0R/]9|Kj|eQ"N,YF=?ql&ХYV%|/q&$7~%J ()?,!_c=_Nzzt,+# X|2h\XQP<=: jzGRġ6 Be[YϡȐ>U1!H:RSJX㣕8BL8DMuȅ*a˲6{vT]rr`xV SBx, cw)uqk75y٧:_͏jv:_M 'V fGc'Z%k, 0kΐghKS%ڏد(vG`$B" v[=KWM!!ƿ 㫤\$H pyO3n}R5~\*mN_J4}П,}I FU$.:G{o,鱩3FtkXا9e}6 ǹdg)[o:ߋԅb)o!s_]?F#`=Iik k#~ ${g:G$̔L˩6-yn95_!k)Wx e:kNWuUmJxrX%k}X䀙Ϳ'BʊϖdֲY4GmKGnߑp $&BTm4W -kҐU:@}7uqZ} օ zC{3Y=6F ^4v r9iAO-ŏ狞ĐaMɹMN @)@" tA'sycq9 ,-*FfZ݃N°,u\_M\sziF'RiS/[D]ze 擡bw0GJ PzO1#{1"3#}vRhSLBH S mPp ŗiАR~\0v OTC"#>56Q69$f~7DǗC3ŧFJf*w{]>ʛ[ժ,]e>vR„'^ >eitהqz/v@bD'.Bz,A; WFܗ:}!;]<(?wI:5F~͎b7#h9*f3Xk7Y0u7uU;2ҊQCItR⛝ihrqP|&3dI(f?x`>"yA^qTk {`2CcT,Pmآs`J27Ў)LA@Iet|wB;łLO/5$CmTB^Y Yi;ճ?1K;ŀGY(184BO-T:ˍB3n4^"Ie'5 ,}2=X'M84ǚic!6;O ;IOߛC ?Y쏒?RnimH[U瞵@ɰma-z?d %;m#_"ǯ>srs'>8g6rwogPr ;jnY d^{ҾZ8Z<S_7i -_D- oLuFqR>n!uGz+6nZݥ)U»%ӗ%uJl[7n^PMx!څ*_]Us9̃lgFo:p Qag±w}aKzײӡ{`MPf 936=RDD^=%Y嵦^O]DRdp@<i<\&8Cj9)03AnCo WlI; J$E3(]z׭Ɠkliƽ,Ψkɰ-?rnFhg&+b~+ ZT T7fQP.IKp~ip:&čKOZp4gl/![ݓv@PsV?afkjcZ[.c<>A_j \'Ȁ40݁yEքj14Srw Q+`"qB#0Ҕ %hDL1@) T DŽ*B7<q wP ׺@x8P8Q"%kT `p1y(?$eM#7Ag(u^.+[eP4@@Xt $:׆>wAMc );vU2hZY4Jr0gPOp81ك::H37Q*BTNkR%\@tE?ۥȐ[17-b=\ś50ܵ?j{kz҃yi7$ɉǺdlCU9D ۛcjQhCg.JC0 ~9r^9w2ڬ!!Vea&ϖ\=63F(rNłGe@L#A~;l{'JJ"-M,`H Z]nկ7 6+R\F4AC1r}x^qseלAX*rT7qAI 4 CeǻFm(L6e(/=n`m$L&oa_B" A[}<fx5}?$~@iO؞h;:ly/{916BtEJH{ц;xYPt&G?Q!i*ST11|ۭu>ͻc'mʮIZ+}:ǁߺ>`YkXI{MGs󣒑;2ʓ#2sj*jVDfaڟΪ6-MM"YK; p".peY?&tc%DB0b:T4nu)&8 Sױg̟q694d]6*#n'4ۋo 6mqޖU2 %>5+3P!FOf$\D6 er>TW'`;nW4Ql xNJ~=Vj$N ٠=lc \ƏdL9 }zE7.NȐr֘J90euuEV&_ilŧ=@Î3i Nq]/)>C8 kXdOx"c:ow}!K.R|Dݻ a_{Zg3ؙ \Җ}t@& nFOoBR?DP >ǎp*JL!8SM-{w4thUrT ?z~kSdV;x tuUe6DQ,|f&,Is',iOJJ*cN܅{ë y5Q!SKLI|DȥCoQ۽5.bb%1ı)c1bYyme۷ETGg19ӮA&@OP#ƩɔyI.=dJXx~L*I=?+d@Br=ҁ V"m>f ݜd|" "gkZ[Ty!s˿jQ.{%zq~@SJWi휆 Ƿ<~-+uUb;9E/+'W<^+2xV%!Xz0L-`t+kqSqyt(ۥj6 R"Q!ΫBTS)Jâ6e{b^ƜO/^/}Br.;lAb1!ZL~Xpӓ(l&:mHODjO(9PA/L.D򋁆sPO^ Yy@׆c~Ke|c%0U4/ B?< 9[ֆ\r  t!)27Vj=U!}e<- ,pO] +"p}x&/h⬅Q?D njls>p@1`߀ʣ9dF5s%[KLO`%7-m@Aх&Tv{*Yϯ)x9L`t' HǓ=3L.8koqW=_6l&J_I>zVD;NW(.g:E "8gY?_r1 a`E-zG}n]tFDKQ!]G<7rDZ;Vs߿45V$ kX5&3W^/C *W* 5@aZ7!@JHQ9}9fN] bm`F*3Vn"?"⺣ZJ]`c !v1u Ib pӲ5 >19V$%c'"9$=rj'#(n_공Vbt/=]Ēk 9&Q0 ՜t4P,.Nk^d(adΡ4tz L;@94qTp BK;eo&$+d,9*IΉ:e!ϔXdž[ˡYbׇ Kt<(<\ՁMZMh_wu{,#%#bc;O$ZO{{-,}f(2OeQ4KDLo>HW_n"B C'gø#VDA-^S+o@Q!t|D, RJY'Y XRjܴ$Eh^# WZH̤w)F ?͒3Z؝u'<@68%H\&QPHFuJH9ؾN߹Lw-;%ʒ&nBd"^k,HsTuyw ^Syʣuqne`92a\3(Cyן9Ǚyj)7ڃӫU;]v4-I㯪G]([Lvé/=)$ea$8E-Q1(xλ զAV< ~3fJй펆#丗/D첪 ea[ b V"OC:'Kn ^!`ߚuY'c%ebBņC[s#%3x &%z˗b=#%G@˽C"Ca"&^.!~ԙ2W"dh([?ƗWׇk_@MS˕4eY?1|zT=\[gԱ׺Gm )A($$Ҡ2" -z/̟$_zaIWՐH3I'H ;y2}%\:@nP kn9Yj)^| Jv4Ԏwi4{ z]SnݣƿqYSs&X\qZ:.n,zs$FS,1/#z 8QIOQx|O8_rKchyp $ȱYTl"rSI-ؓiL5wYh J |PV! Wi"+@YiDZ{QINKO(L}4 Q[> 1 sBn=D]L"e fW!; 'prP p*rb t:~eڿ *ǻx U| ^GX%|x[=VkN!fon3TzA˛'ng >ҍݑQQXI4bdA'BI@CW3&Il|7vIH*$ysvgDRJᑪ]r 般@ՊhKTz4qSsCNQrTdJΐb-k"Ȅ8NN/6Y6"aG8u}#(9 Z5c޹ޢIvIΈB, TY¬l㳥B&2ul) [/*Ie]w{(Bo&M䠜#(̰@E^-}Ӵ vBY `jh|k{XL.lK(JX=s]ݱlwZx!Th ^45Z8)?R4+%\Z[?Ы- +4pc wG-9eZRTjRZ1K5_nָhp3 5材,Wcmq6W=%8|;vDi7ӁXkA-[Un,[ǘGu%mġ;\IGTv//{axVJ/6@w[mEI&f?dOZ>x{yǵcD*R)ގlإu񋞦3݆R^8LUj:VcQ 7{֓YG;=M2_GbnO51ǻk\^)Gvב=yD9p |{VV$ Dуpf$iQÔdKZ?t ܱKcz2*|ʪ2K$/7iwy䜪pyjzy#A(î<\?;TK[jJQSqs:;BNmE?*lk f>G{6_6 ;>gǶ=>jGy)*s8ES4>yWg B2h5p&#7j (_U9vQX4hQ[/Kha$څ{"v~l+$  pE(8"%cARqM+7ln?@/C;E+]˰BV}Agf9B4O,xBhf3䬭le 3>j}6nd_ C yH捪j3aݖ"=0ψGSJG`ѨԿ'@~D~zʄ=}7cð1 (D~?`hNvYs2HH A-ms(o{@F';66Bu#{÷24[*+hq^@n55|ʋt[os^&ΘgC#ȡ~?`&g\R|:tPʴniAH|Z~&y]#Ccz--h%2]4K=_p !c{HG̿F, qۃ\a? woM(${o_j&H&MFAŸ|XiymMM]>p3M7˯%Z%^j @vki,exP)DNr1rۘ{  m'+@IwRp%3h!JdA`A >r\y`'~A[! .9azѼ,$'@T;RY]C4^yL;&1]rXDaۭ=EԣOm}Q~LL> 7S͗=U'}DAQF29^t}C+  =_l 33(ԭH7MfZV`dj=k [p~Y˜[ ҖYUdWu/m$F6Akű4e4g'ϸHtLczq:\5rq1!W jP#H":'1t'W&M}Ĕێ}5V#2oF1Y @A )fCXWh!ZܙX_KGrdqcƣ$╍Q;楥>=| 3,Ng/86h' f״YKAR9h+(pG5Vdr`:[㞱-ڲ.34ro|݃fL.8-8ji 1J`k8y3YRA-} RHD~SS IBr >q)P,F`I7]oGP;^nwFM|\߫] ?^#7(V0}}}b􋐋67x&o~٭\ 9Tĩش;H$3;?S|SQrߊQ6=.rXTM#clPCB꓂v2 m[B}0s-Œ Dn6%'?ds†IΚ]|C݇m s_4L[t;UsВˀ`4>YjixAAzL|JK[2Zfԥ8PW&,ƂNu`t\ d 8Be.}-]1NNTUa BCfaeA#5pj@o==>m[Ϋ`>dFyp l$Wv>Wq)K`K4ug>{0!XĮ$"x1 Ê|`Iwra5zLQSv(T1"+ľQHbЖ< \;(UjȦu0ϑvEN?]n~YȀF>8lԺ׹_?Gu3 C 7uʅGtuAx+&$A/ףɝLNIXv_cJ # >-C=lel\[f$CMY&N#k++ TVOcr=HUIգv"Sy3-C; JF2KM KWvQs x]O'ign'T&ubJW esX7rMg-K~>>R8[JcP `8{wɢFnI:Hd8GSiKN쯗˟:9oiҵHGRz&t،S&0h72ew1󐁂$b]8q$V6c [X~NWz`G6[^ Ya l>m:@}{6] ď6ZL:K`$2ja Ue9Ubov4ǸfW;eEPHh5C'X#ŠNy>%)F5oC=jc^Q:+A 0]$pX\3_F4 Z^ ϏDs>Q˥ ޱPrTrKKڤifZZ?'8C ;*qyf hwyyBKU(t^*lv0>Ac aP<<'(#/ # NgNoj|j!8G9l"УTk+߃:ZgKg5]n 2L(/Z{yvxSyb÷jy[Sw*RG停~دTKz|E9H"yUwsToƜ|ksLzڳ!zt`f>F{Ua' ]ꨝI  bSFT,vRłvz׾Jo2v 9Xna´z%cCS\m.۵lbY8eh>|ʙ,/7<;rYwICyzOz>]}:i՗ԧ>:.u3ćU9 Gl \l69zPV!1i`|qŜ{8m\E,mTCB=amv#zӣI%J7ysxM>kbO R-$EY*žϭ>xOd`#Ft28c_ 'HTytN J$b" 2S[_L<~1?7wY>p6k w6`E@] _$jq8y"]sbR{@jhx&}@a)vplrK(o?C:(1Ч<2y" *oq Bw4+r4g4JCQ_6HBY9mPUJ}iE5M*Ⱥݸ!dCZ&~l)b"f{ˆ/tq*<g{F`FzuHtKsന-l2V'`2]U/)1+$Wa gcP۷PGܨ8@$0O6o`0lsa^K?}UGHc_G(_AZU|#_ytr$yBE96fN2kvږo6_b]hyI&}M"&fyOl w-6J.3$sH]iihL} q]NCfʾoA6wFJJ@='"1gW,xe,{ Vca\^> GvAXQ?$V{d$OJ6ٖM PxO*ab_HGkϖ\0Vsrrho~Yxx`44>(_w;I-[TղDT%ڊߓv>!k}@fnC(L]Tp$YDpƥ/&/"aߒG WcA"C3+v%aU0᧘*Z->[UcZ/dgOz aMWI,IzX?[Lѫwmo7!FD-0xW<^>UQfQpc ;ifCz!˄=պJ&+ĊLL%czzͿg3$-+(|40ywKJת/*&A"r,,YN99 Ipt99o[p1XhTRƶ*noK8I>`5²u\SM윎wA 8]3x|ҮR&}'R:XO=EQ 7(POٹ6sb; Rָ Nil}eq$ n&T*%ةD3oNZ`;Ւ41f+B.oͲDnY9{z[%kܝ{N5]VfOK޺@mF0 NqCgE!S¶1 YS ._p%G^ hd{#TBuݽ>M&wXe3RƬ]~dp>zxqWۇ"kMھ>Uq:G@4+s5N2au]ljp.B_ҾaRsz* p!sia,^,l!FVqajKCjYQ:L}H&u?L"@?+,mӓ} f*QǛAߕ(*u2B =pUs%PN_K9Eی*bi9x}BYHt ܷ]0Jv ck4+&6 dhM,yo#}BoЋCcmJʼnOJu(lY7{D3`Sb;f/;`A{CF-ʧQKIK/mLCD*D2 CFF]1?Xݲz}  jִJ!QYU?|] c1]ԦXBzT }G@>kbg*wX?ƹ'W^@jnm:"K53Cotℸ^l)k1?#rrLҍ438fJa)Tp >xLlba##2p=u? n]s;ŸcQ }vXS\{$T&{:_Ɉ&\Z_X+ւuoNBx2K7mW`X0Ip1:yǓnfe5rסuPjtQr+6Z y)L @[&bў -OYNd!#XPoQM!fL[B >.Ղx*69ћ}3TVmB| Pw]4x3`וx#r r`"@xvd@ EԮ, "2*\u5R:$jY,5(PFp`֝\kаJ}¡Iph2AӼ펗ө'NwDF4kh*")k }#U5V+?aǧ#&Ck~Omy0%(2XeK*CfKz,_$yhۡjR c P' LHABWX|Zstiai)Z)=Z©mvt&wA Qr:)NgSVj2XWIcDڀ+OjpΞgѦY` {J̷#OtHZ"r1 y Sk[p}i ?;y'el{w8:K>1)  ;#`{ 6ѽ<פ~U-KDB e#X +9Ҳ󲣂z&GآAsE)gyCFW gx>zfY#=*鹰g*S\Nܠ5'TdI}A,"O7<:@K8žo/. 8\2 [;j%PҞ+%#9%{i>w"Ɯ:E?Wr ,R[.?Wʢ=qo6Y{K A["N,_7Vt9'XY>1%0xkmvS6ܐ|Mn=Q"xnaa9dЮ, U:;ˀGm,ъiL`1%Z[O LvŲ|Ao@y8GrCy=+x ;@%lUԈtbJuA>^ڿ#gԖ ߛvc-"JT}7gC]k)K8d?$yl\vs10t uҔC: zl.[0X (dXpC[{Ͷ2| ĞbG) > ZzbapZcrS?<献(j*тȏsڤEB|gRJ+\#.MoA'خe& 4oƼd׮(q1"5p FS 4+Rҫhq@(s̍3Ys4+0ϕ>Dq[T ]i^̜`)-Iɞhh쳬Tr0 x2=.bS_IFMh_W, >5چYN`Fu2]k09 T?QuY:!_@r11j#ʦ(ܴ!?g(@Fr[00a٬0*7IQ DNh䊫ZЗ㽜ai%.GFǤ39$}P5zmnrjh!O[X :FmWC ז:`׀naZsBV[>GJIͣݫZYPGTҶR!T2.$O`kDeʛu{dzKemio']Nu lgIeNw6RuE45S/Ow@;lgՍtbMc m!m*uU{P"Q@\(5:/ε]5"E{[@:hVv2Jd /h|OԄ/d_,f7?w% Օnfޟa|KfS+AmzfO4}XoڠK9+0=ɜ7K+Y6y*ӕo<j2QuFyFdBt'D1 !"l-!C !qzvϠ/>Ul|*= R AbN1U ?j,k<`tĒ+_ U _lckP9CQ׀(3%}~,J734FX@˺pm5RlY Y_,^Zش/\Eqڶd4١>ڋ[=^QBN`tɏ݂ 98o )-O%#ҩ$KJrâK=Z )w5Xq7wjlz&"pZO̱>UBPgHTC龏z똀ìԩ;QG ٴai8q|X UJ .0v/9'$Ӷ)$ؑ l@u߀LzKQXUmo]'syA443Ұ gEӶ6x7"ԭ9ej@Wbo،M#7f_Ia(! Hl- rt?7Bh:13dPDw%ĸ&D6k*s~|V"y謜R'Jy4׍7.3R(֤1hZe-~JS1bwR6.v6-܋.\FYJRmU{x-oplg|t`lEȪ.gFsuKP5+8{ e;.n)7Fk9ƾښwoQd&ȺНC*d&<˛XC/ؓtۆ@qcM'o}fV%/>.cQg3Ǽ.jR6cQ|+QFԒ/P, sx8kf=g&NJ`Z16 ?15~HYo\ 1 bU|-|έ\Y Uwri,f;Xl |VCa"+܎21Ib6o*@:iBe=?WE6(AE] &mWy/p?ÞL:Wa23Ӑk}ѤG!#^x ȫ7$c{&Y'̪RJv_atE[Z(=>&+b|%O+G/<08Zf@s̩X¬O,S F9&PJ'.58́? zGl>hBnG4N1fJb(0r˽ ?MHImyéBmQR㊯ݴ`ux{cpg}Ugp`XF m\|)=rEO~e!"➶A*:S 9eIApk=w`Ȏޢnj?`o9$ ,!dO!BlKd_J>Pd>Y~RsNy)>Rwa"ب:ȅˇEZlB2Dt?q@r}tF5z9S٫B{|/ d "X DO&=3Ϙ{ګ/[YR; $L"*4YgaC7ݕ}-s B c96{u \Cxl1OgsԎ$Ҡ{Pgtv6%SimN,&Nl3]{%PGD&8X羼^{ů@l*a|l-څ,W ^Y4ٯ4:k̍djCDja;*_$„HO4k3v*>)10V@V d'0r9SYW2kQ'>5׎уF[^"L6ƔQfa٤̀+@ţJ$.޲q+~La=h3b-9ˇF؞nbS3X516>F{Nl U- g0J(tZjvj?͜*~ќٺC`#;HrYjlm\ kȃ]i[YH1ʽi}K[C-sgJvmȋy>)(91#!`d 5$6 3nb s?۷ow3ywO]($LPT<B_njk:' -{B09}jSUGX"FSz9d(mS N $E!h\U g5=E sP#UX n&qbc\B !E,9!$ (:73С~CR/Q.㴫}'Y@b9Vmt$6 Iȝ^Sp)0_t*BI's՝|LX%5ŌiL wb:!-M6 [[ ∯?gz6:f$~yAԻ\n.b4qjJl)h@n=q+iWi>=И[ Q8֯Wqbq*(]Y*q:e z-ǀ$3rh_AV$Y>2йokӝaeUdǚ6A&"H,4M rg]o~%J<`zb֋^%8l V+Yף~噂/Hz'IA̙ Vf(dVk_ʹ~E/@Xخ[eش!*ȸm r|qc6Lʠf6;` lOxڇN\LٔʌNM[%vi{|VR_huͺ 3_m`W 0/OnG =yP%Zz1=.͋tgb-?vpxEo*GL^ yQ Sz'ĹėU1] <4fIm-6nkhTrOHЊAlWQ߂nNiQfE WaFLV fxFwor㌋4$ьLs@:inU)j,G<*!c֖Pz( K(LQX쉻Iw\?`'YRM $֫p!! `Z$/€[tMy3rf4~_$"9폅 Innًl7~g%/*)Y^.YڥFk۾MC FRWTaZ4_VMIA;'Bȑ! =?w #r #"4jTx w!>9B6:$k9G B$Ed8 Q/w|TxQZ 7FVzlɾ4"/^W$C%VkvqA6>E-e#yCс(ӌ6VT9gelY}'r~G[=}o f ݒ^xl܂6l$16)yZK_t' 9O.F6j̞֬Pԉqstq+1: | >"MѽCUo$!욱ڛ *@.ڋUohH_j>t䤫a#XWj% GfGf67$o~%9ʴrb.UhBuv *Apߔ_Z[x6V(IWG] :Z2r(gXl9hBI^k(lB9p\=Hs5i|Re9u[̬W#EiKt^BCkDF[^lyCݠTNh5dLYnŝ"c ;=xjBJ8ܶE&RAO(䃚h¦ûZ} =oZԂ]C2(O )iNDԿfP'^d ScMl.@ _  \ 9"vҁaoWX%~7v/?f{Hl2>MA]li嗺q0Pա۲4fEP]Wp/KBcٕ$.eCDTzgNBӷO:Hp8R/Ǯ4SKE9UcT 36V,btQ[4v_'6@hX@N?svz=%g ,U!*,Μ0Q`>}g#;}ݷ-)v,B7Xg~H4Yh?g> "۵*3e RdrB2;WvWWULf!!҈1V@* -TeІ5Ulj=˄Y_^3jyRAc;#l,U3kج[<6B< Ϛh]!Yg VfK*Օm%BnOrj8~W<.5iG6" kM_(Ppw$[R`7$ۺffc u F;nj_(΅<(p! $SـF%}K%ۿ[pŵ7ޭ3EIo9$;H`\'T+zPaių Kuh8zX4n[z۲6߿&bbNzEaR1Y|xnGla=mҡ@LW:2T:MYj9Cd-E(-!1z/Cx}ãvYn[ ,{ZUFVrcЗ/`yww3'~Ç423),~BMk+㋪x=Z6=m,P׌r EQv|DUv3vr't<:ގrߪωwt]H6l(oXvݝ\Dkcg醎S2J߇/WBð ۠'uI}VYvtqR_f#r^sWE2EZ0՜v cH[W靯svQw~@"\CSY/Itӈev[ bGB8:",%k$3: <[If3;qOd8X8s|%76L!V=01N9p]eqB!Ȭ7 fZmHxh, ['"VMeH7~pd\ݑH,5LHM!N]7L}ʅ* R F<-BSQADr*pjF/=pcfݷDyXTY9ΊMnnfvu.t F1Xe#8{lbD|_0g90\GN hFSkƷ 8qVq\/RM)TPI) ^bLEsܡ ,rwy?C^[gIy~o(S/F59~/kg-6տ1M ˨Gz Vx DPQbتC0#)_/2Vܣ)!ZKB|⍌PZWI/s;h"_L2@hT`WB!2;0AR z⊗țO0 W _4Q 1}Js7K}a*f]gKx9g'ǟ3*@RѪgңj[Wg;Ȧn>-o?28vԥ2צ8K|A'c3\n~,!3siyQC"Mft*gZ ;G*)wkY!sÍ%&#c'bedGa0055ɰ{[Ljs )3&T~˹I!¥E<&ܰJ3U-Uɸ%8c^]$LP/2<'APl3"iZKp$ KW%'pJ槞p;z{]h˚3\z+GS^FmPF^7-k߮\+=\Dt1fW6Lf&5i&0q}INjX: +2SYl8a4y3WCtrF뮡6BU~$a߼O͍|v-N#C;Z``d/ K$KjTWbF?_MdSSa9 ;֒ץO+ڄ;VPzr\X~Rtq.4w#Q쬊AY!H XӭcE“Xie.cT $EpR(vaw e漌^jaMJAx`%36`qѲP CŸ5Vm&ݍd4Uj'}0qdZ{sc kK*QUŝ^\gd[$(yϓʻ(WeO2+`o8oLDJ3|FU { 4%q߿AG-O8Y]OǤ$c%%xZ`ك\ۉsA0ĥ'-)w3XGrY~Ō4׉+<[v1sDhWNM b&i2To|m_rQ?aS;) YU2:wq4G8u!KM>$)h!,e`_ou*Dh]a / 뱕U{6E4Ж_dzg_hꚒ>7\+PX3FQ{I}](pν䨰2l}x!d&w|Prt@ѝ43e[Kā$Im$0M~m-ELIзG`3#6֘D< '+m-;Zܯ c̹,(CAˌSR`*>m>nWGpz??^cB6!r: wrZr2&!fߞd.0Q"DV1bntIJ0OjPafz0 Q)Rke28')pDB.jBPk)(DerHdqRJzVSv&%Z*8=-a?{W+~`6pb8N  S;34n_@~,V!-Wf,54,=s[w xƪC]U W|c{Szs*"?g=GNh4lS{W?O=ӑ;uww_^g}(B W'CwPf}2kc?fIt7CEܑsS &D*Vb}%!(у;-^ ߁ C5'ȍP&&ryT9B^/u I@x:Ancd7Os_P%do<0+1$IbHV@#nwjR0R70eq#T\$"vI [*u0aEOIk4.| ־e~zz˩ObEXG'z\8gi Ϭ`H>['a_IBҙ-2t#WV޸K~b +fլMG#Wj: LVYٌHK>/q0Y ( .US杼.o@J A~ba@U`TsA"';?TnWfW˱6Z6ĠE-Evp[5]Ǐhı| &N[plR]eqOCU6M tB ^ ! v(Cu#xR]3{ Tו@MmQ%oi6};GKSIzMhtN;nz >kR qzS47.šwpaUv9Es %שp-%#IՊ:IbTF4. ! / 0'O8752$`} qDdIȘ:[w ="="9W ⦤D%UgBEwVLDy* ND ˡ]E6̇|iזIug߱E h@-BF,d1`4wRZǡP~oF-9˝v"_1PߋԸ%dB ORMNRW M$^p\܊s$:<}SUmN'46 ТiLY?,g)S ?Ţ1u>= aP=ޜ̌P#E-qI]SmL&'[S=0=[4^Z4ﵘJvɲS/@;I8pr㓧*Av$Zw/"¢8gJNT9aUqLX;bQ`~L(O'G᭍7nv5~@Ik[6TE$X2#ͤ4k .N\Ũ1=aĻ7od]h[N%v02N$*ʄ#wt@'#02*2'.6=2^!wV5*?4_ͽp9C&AycR2(Eeޖmn9o;od?)ҘbQ#wd:2~D ܬlM@)WCwMYo<hbק f;idEn]<|T؋ǽR$bLj^=-|"^w訳dq L<Ӆ!ʥr41߄'sƝBS:b].rHBÖ%Q`nA>8TzVA"ZNPުڂ*s[_G>VrMogf(h6"]47v}y8^\y|h/TB/rWkv] RJH0rVy&.Ks-V >!7B9ݯac/H`?qy4u*#LSF^7-@d(a 8=M8sAo6jT'` ҉BLm3NQz?Z(RMy7)Xn`8b1 e#,w/W3#40,eOz53.02pYN dEl7u>5SyX '6Φ6lee e\THحPbXܾy$\XtU#$N; a t?[*[-E@铉3Y`~ƫ2Z;ux (!ֽzBP Y%Gǧ`P: pCKT7P3>=A,1݄8$Tw5bp3HQmgYaY 9A#MaC[LL]y!Og2]PdY/+}D&F[e0@ , 5h7 (pF+=aLu {Pܰ)w6(X])Jf?:29PLGli!7]?"NtetW:`՛xvE ,,.ð0thnqFܷOZ.Wbz~ٲXyS.F/&rYZd~=}؎ /S `l- }j)֥[yjAUe={n HuTx 'Ѳh{*7:z%CLw:XdNIV dIk O#dS *NeC;;{:ʘ55uNBTkU0M.2U]zL$ן Xo/>; MDzmhx'SkWw=22Z@nt{0vz8&^i(>"b]b`&[㭔ĿV(&xfV^xDF;b~ZT+ 3J_c5-@U4f%pc618Bb'>&\/6R ;K݉)zbKT.K+WZE$ ,FguR4ތ!& P 1؏|Sób)xN2fR`4eNxx蘻q ,#<Z|eO*3*Zڌ/eH~ Ea(Fꎤd珍5 Ԋ1_7FI+Ns|/Hw1 zo),̯a&XAB-C?Ηݛuy՛n$A,rGk&S1Uӊky1 $`=Q͈cv;٩(xX *bȦa>|. CJe.ݝ-ʹ1["yI%ٴf{[OΏ9W0An1=ۻ7D)>;aubJ-ՓqZ9è+*ީg8 B?LhDQ"!OЍUÿ>!6CuMAȡ~ WBeJN1犝L)8sHҽiH+"FOnR۩*J rF׍S#ޣrz&m`j)x*n>$bwb%lSE@[7R]z(lB3dj|G&' N"f|&f=K6zz*JGDۖ{ +cjq¯"Cػe`"P aD U*PtĮ𷌏6C&Ę:ZDD!<3Ȭ&}@2QɾD $q@Y\E=0|8F=c*BǓ 49On4Ix.&Lv}S$j 02kN0  th0[=noXƐak[݆5kuAH;_ DsZd\L\j6y-D=Jϰæx.<ПOOfعiټTȾpf7>T-Q$9rMˊꉻ;,az8-=F%=gAѹYK 3 gqTE YB7c. G;n*@*'25Wd\3־_#E A>ZL އOADJU?j^Ͳ`íw (1Qjx#`|>W%*bfj[/% \ԏRZZ WR Ƨ' -N\T}gGR+*ffXUftD5 :z#U*ޡhmWq;$C7 MX/T[7߯5sϴ g|fy٫J9& rZi+uKhx5*8;'U>~CONCOkR z<ŰG{g^,[U7ޙ|_"d,S}b,d 2,|֟NXYSfd`ہ1~ʑ')*!VȄo@3XrVuq &5Pf $XV Uܰx:dpkįD~@p\3e]f<cKPmO~ J;YO''* lvVA? 4;&:-(G >!nZs'Db C4Jy3S"?Y45Y~7֢MpL-?tf\ 6p,VށaTׄHSDx'.+KO )o{cZJ8 0x\7Z [ b.kKs':i GX&5]F:Myhk0pCclj,^٬ܰ{ۅ[pw=k\i?[~H_pLlW[MED>:b Qܝ/X< ;9$ҍV1'N&.4HK<y"4wC3iTwiOm"f dTX:BM4R-jY K  zJS$Pju-SeUݨ|M"nIiBtgH}4} +`NkP|%'ʡOSw/&5f1vIAz:ƈL2.t.. LpNcX6}xM[]FW3"mGȳn̶|! jPn^T@>"/ 0R=ȓX74bq"PȅNUYmI Pup$般C]<*qs# 5xwcJ_%jǀaK]|o}e yqۆyF+T좭%؃HlE3j?7#\@@$Wwa~L3 &lfKET~ ٨-w,_-~2}yEMEYoN"o,1]}o]/,g{}QGۓ6ǩfmBJ<ɊCضuEڕ {)cK%_I6+1E[kEH^"*$rU~<;#xV)O NUΉ%ی9f1w{5TDbu?S}ԁn$'I |Æ#n%Mp3ɩuӀՠS*d?enss/$sf#IOr]SP9v'/Fء&BU,TZFT݌ͮ`]x;Z-wBJvϾZLSu/❌%?rpe,A9~1oQzJbɎrʕG2 1,κU`X֔Ncp!H@`OE)F=ט2k&a^yXRAQA"H?hcmч٩~BjxX򉺈b[tx hWp55!9KhGV~~S>Ƃ8EBV vL3ٻ[sPrl y1v#"MZKb/C|e";EhUKW԰bD^4|NJ u;Nߙ{6l1*-4#s*D8iC,zjmʑ<чZ D8GQ4v&{ `M Pt+hƯnSnL,|5oIBתhH'$'%-!C?8$쉸D@.8-mqB̻ T~"d[V"DٻX?o|@-uC4;sG QY`5ijk~ZP,e+ܴAQb+߉*SdKu^3S0zcS}TV ?[|Yl*?lk]>r[Ӕ=%ά ҹMF e4g' #ȴhV䫣,2] @Qt]L*MϸA?%gYۂ${)\bXM8G|1(:7= CSF-gc>Ƅ0E .0]Nx>H6'm [f!Nän*rP7}tGzG 8 &]J6[= QcEjnS $ڒ4( _qS&7 ᳄AK̋$pgw2Xx|m!3ޮg O .&}2Y{Vu=;]a}[rF&-E~ΣTڛkxIQghcK8f(0):HB={,)D2)9_M⏵K iUv\h_|*ysu1c_\8YW?8RhG]#";Hqnmf'{A X$'?l/OCg*O.> 8ɮAnr2]ňrV{p(O(ruNۉZK:,\﷧! eDe9}ꓰEǻLoE-L+/ ɽl -l*YJK4,|-PEחMК~RHdRT$*0܅wْƦRXF}ۻ=u5A3M4$,þO3Ay Ʋ1} eBtoܹ (>brc+{;#oiqTp_x4R0٤6+@hƎN aA~yfk^flFMg#U sj' i=5h 7rLi^ w,)rt/6>>Vt urߓj1dNK]t$ߩ8C2GQBۀ#񨞐yM'j|~&_W)1[)>?w1WQQ׻)LFjz&^ag':FK?R ؜3خF/٩Q@W\?]4uG}kPgĊYh_D;(ًWP]ƅӯ@萤?,cNBmb`ڥ UsVgY)1D j?4I޴2;}6T)#iUZ`D8RK@GH6ެqOSrT+r=vBx(I>Wkh̖Α`&z ܮ3cN!xD%u?=`(Z:^gЬPϾgD' Z!f9$״Ou \Qz'd4"#<; x'"H9M%4حdBpka'+=뫧wb90(OsL<@8 1P*Qs0)~ĮikxE}˥>ۦStQlf2-rv*9wcP/ckGC'|>+Up=nuh'gGJ| 23 YD.y @Ǜ䢪4~i{c4Q1p{\|3TkQ^RDv#/1;&NK-Ug1B7Z{rn6F,׽4iF'f]a'<2}2D叠=@ AH5)".oB?cRZJ "5x?ANnH:ϟQV&*,9\Id|.,ZOٸαGĵٽP;tb$rgc R ںOwCSS?}l)Ҁ$0%Y)`"36TVދUG ovٲC]/3Yh zKC":C>Cno[x SV8%rqU)P/HN_C}PGT=+CG\K/maؼ+GK%W7}/=^o)VV:m!8WBM`\:}UL' Ca.nliP'y913 pQC7$$ "ۘIi # 6͋(JXY3'*nii}F~>gVw@yu^D[ȧ $xW4}!. gWzmP?AZo|@4O_r;{ws Û0WkjCO [g Wc]}Z'xOuM7迯nJin|%:2?ɋِ%P;=ަ/w 𹤿mr!3i%D>Ȟs_qt:.$y[I_/ͷc wYe `-cv:&K&p`<C+>y+nmXkgקsWHkTv{==J792Kō-]dhqRPW݆kjwA gwe6R]6W$9)<A D Fe-^Ј MJ4*?4}^^7~xM&Gbj@WD(&Q}]G31XоlEӹ$r?e̕bcyP^ KAɩ&m »c?`hbAkJn4*%]ҢI~5NŁ~:ŕ_O0nMUqð͙-4Kĩ484FEP8 u ^ZPftF}'Dž,g4ƽ*fgx "l'hztʒ 9+9l`cG^Td%Mb0o_BEz$0M ~mklwlƍFp`[S QņȋUUQ]TY#g~s\p!f^Ft"%?/%s;z zZi;3`Adzĩrި˕G`:+MB)9[>7uB튻1ۣ|Iōʶ \b:N GL*K$iޙnvYv_u49+5J>GJ6#6gfKM-A06g>8>~'mnیqFP`PܹJjHlW vi4CGûr^7Cmav B־]Eb煛^CrI +g%ĜVr%"PԳkxP'x}[(obioZW*֚bk~nq|8Pҋ Is@͛/Y4FImem (',D`pE wp=D/xJ0_u+}4pfR;8?-41YkD;=sv]6" ׀&ѐiha& "&t/cqh569olAp4i9t9Lp^<>}<6)Jt6PU)u5 VDu[x%{:yBe ~s \*J[wEZIGyT{5G$'9Cty+% יb;X]bDiB ȋ{T=^§⏔gc2Y>i]rV~$zUj殢Yᅠes[1kݯq1 $OmT]uZTMg%,IV|s 3ʶܖHfրz$YAf2.{ 1=v@Ƅ-P`3 7EDy=G }?T9C;QFG >4r]긇Nyo :1W *dY)xr W Z2`ӑ UL27Ҋ3j iro`DG~z.Wp뉝VP9#03yøv/Tq~^#u#%֬Winb e1$/hPZoT'CP4kFw'|mVZD.f8\&"3Wٍ%^ jChFz0)Dƺ$m<~GK#8i^ YA:Q4~6bԎ0uAZݨtC$CS^ٶ "\*6ml4QCp\;hUNe<7 R5ɛ rl0de~ޓ!j.v̆KXl-]#)F#2),ewuMY2[-㧟?Н\J!\ppan=93gn M;$Խ [*cƎuj_L_v#iN B*~lXDP*$}G;. ~c:BR伸ΈCxƆ; 0oMU{ӟ:1X o9J8Z3Yfhg 4vi>]7run.hЅMGʉVP~5ٶ?{YKR AY#ۍ,j/7Af !b'. `j0>.9W$Qc.TfN OU3Kc`Wz彑ƝLGL8s&v1|@ MҤҍ1}B HdJ4CWv -Luߪcޕ( 82j3I$GE}s0Ҷ {!3*V葴x1!AâP6+9\#)fblBf2XyYXҮ&:ṋ+\e@;[ I>v\axY| Xz _xC4bƻ;S08d+9CަĹqL`~;F2K.xTy%KD!PB$5h͹(YR#7j~}u#9S. 2?S3YHL\LΓdh lE7:{L)?`N/3*K)ᧀ`isXe5::2j:iG|g$~mDWp7 @| p͝>n=D;r9'!gMPɡErઍV ,o(p0/k@t_ SL,~RCR݅+/@p^@u*~#O)dQK$x>9sZh}1?/`w+v]TL4m6z.ЎğIR%P0U׸؆ǩ9e;/"Yy[:+TWh{Pq}9 ؉RdxFk2gB6F x@O'eddDӹay,{Ĺ+pq8w+r&RZV3 NQ*o +18} Wm~Mfwk/*oToRV+Q{(1fQw l^ÈpYO!RRtWs3h?G=T+In-F`8f[@m*]WY`1U?_YE)ԁ9T,y)m5{23Ov5IԐ?0HwkeB2[~o2⚔&/< &֔Ĥ価cb{`̏AG@fHhgF7&~^%o r~pa a+'YZuXCc ?k.mDj~‹\yGVŕXi~W˦;,ռ>K1m^O uf^#˃43.>u\&jTN^W@]Lʫ9"#Ο$ܣ7T m\IPXʞ3eɻVSAlq&8GZ bŷIj~"JSdGb F2;vލ^T2FTSnN¡޹IKJ˩dew~"!ϭר!6c?͐wkMBxρTsc)ܘ[Q!)zO̅ToX/7 *{zn,ay}5%P}H : 1Q I5IAPZK`&Q+|L iE"bUa:zsK)2I4zG pIo㿈nY.9_yD7uHGN\+p]Lsz(N.CD~)5fr(CzJG[Drops#$p'ޡ~ -M9GƙPJuyIZ'Pq&"~9 dhQlUC#8«0p`398%{׀t(B-2,蝹;c̮ˣ-L}g䳠CEp1]Kz^; ev]أDL Fy9TU]V^W@m⾬i5=93#I露ݿB /e@vc#Lnm紺_ly%q >HMN 4S?bml'5ey-UD2 ޑK<%llM9il+[SkP醕}8ͻ#qLUJjM׹ U.@Fw2a5|WkA[xz|tDWD%{lG@<v ߱ww{PLH_T n [7w67XuvFQ}VCʡ:0&}eNIy|!ֽϓio5c<иLzٿu-a%9bF_"ܾ W2[9%.3DaB 51f3쵯M*%^y7|d v'r-l%7mn+{zCWɾf?SEYHc L)T1lȊQ.WT$VZTu+k/BU$PCAfuw1S~=ض>nlcSflvC\1@]!>i2>9{: <͒-ŤGE4P^ߵp& +&8"Rֳr= fNA±T#+mGqUSNkɫfcr[ع5ZW1oaLxw vS@ˢ[DI~T;R wڑ=i0=ƚ`o`&_ )o^j;Jnsa[l$E#`2Z?JDP}1xyoI71D>$&q@rMZF]=cf`17-R!(^iح詷4hx MnEx*OVQXfKo{oᆄDardi %r>EVJAeLǟéͻ0Rh(+ \HGcdYS)'0 DkU[&ƪTq˪圴+| 음81UpJ1R][J+=\Ο_u1f\+=5 %!Y%!'lo w8%l*!!=_̍{Kh Pe=AMאZCYh{~v/ tYͪ0 + sf"[2!u:R*յylˣuh&:aM#/"Eo&HYOy[ [* l=^!_ATX&5ڛu>o/IoX;gKI:k hEp'+o8П_Opy[YE[ZNҍ*g9"vPWMݙsn_4ҕ[i>hI3ZJpfj WT& z-Ӡ ӌ`2"6Ż3y'P|;6hr=Q2=b&k1LSP2ӳvzч/õqwݱM;5G$Ygc0>}.kMGi mm u0+9C慷æq=VE~%۪2lҙFV1a,E5CU}w$_?J-w#x \F{vɧ~v+> ٮ+ u/3mexgH>*E0{nd~J.a0%Ama9Ք4O֡XƱis{xc}p2|ҪSԬ Y\6͹Y1"U|5ۀ2Ta;zIuJ tFɔKf{zem]\I h% f*Dz)IHc'M?Z-WyD*v*<a'![x>U18k2#S8b@$?[4rQ ZG ̿*11sz^@:V@mܖlk)kPlQA+W[ $,tW:>u{y] _! T@h@ud&̃ wr0'xE& s`cV0{~@#a[M>Ѐ'2B$n3{~|EmG߻"v)p܄7}> 8'ǭ\!n xAw*2-]OjbEb?<93`'3/ $c2h1;w^&GQC2;~0~*_ .JW-FHR7k"W.piNC7S;80RFXO~h1i\Z2~CHa ֊6xYV:;`g˜@/^=BQl<21ez^}$o >?1;KO-gVN  L` dB>;D/_В8Ar3r.1ghGVr"mj$6=g"&VX-o8_{Z0 ښ56xgR>WMTW)67WAf#]{ԙE T"Ev(5]⌃S(9mA3g]M~ okcȣ~XАY(@[2R[lr["yLHhpe}d\㍾1#^\0cw-ߩ h8.`DѢ ;5Vr7V 7Ln/dʜ62̪ǘ΄تByNe9hׯt_Õq:FǎGٓuo;q҆_rgӟΠXU3KߜiGRS8jn٩Cs`iHk5mޖ*3&˸OO&TF+͠ܛL s.3m)qJ͚}9*K|@1>kipK_%W!&Un@^4(pFu;:٣UnM"}%4L6zb_w>/yخqzZ8bnT1Uɧ#9&VnFKwVWL3zjv\j][/@.(#1c79\ؙt<[Wz{_{@.2ܦB`6b.' E2 ¯OU"( .$3.c(Q0V X$( l94 FM~c `$&=n RruoYCC៚HH^w* DH,eQp *W+\wŰMW!o̲w/); k]-1$gY62D_ V_1yl2y%v0!Y_['<jToJ Y9Qx T{ϳto`d~CzJ=`?(x׺̋(N[ԅB!n RL7|0i%nT):j=Bt82Pʃq]9Ј8D2){IYحeZ /Y.ԧ7gJIlkEJ(RY0>NU]\mx}PKR<PEYNNYT@11L y9 GQmzCd:+ּ^ȗ z[2~ݿHaUTU#ԺpFg}2|n9#CK !X; S]v#\2^"oϒ*" Uzr9%{E`h.Q3.92:Ho,;,^FE}cGAXɝ;,l/bԬ5aIW|=}8VkATϫl c.kއlYppz޾S?fBNT6P}9LFʣT¢4kc%{hNtJ!zêC×dTǦ.xDx_?ugHT0<&=akP尺y/6u E !ҡh"豚u#|nK#K67gp^,"]8?Kl"2quKA!s- B< xNFV4e-4i)a+Pt~p`0FE=(*V=IKZ䠌C<RAZKFbXwh A i'&@2w]2~-L ZOh]_LZbֱ1u LX6{&$FVIkB]D㸇jD"lktÞ-e5*K}ϭubiMU⇍sWRܗI-Q|gwuBjVK% =AH9WsicM^9xBӵmr;*YQD2WMQ<`,*\j <-K#,Z AP^%0g&MDA] @bW0 #m2}R`?;)F{mXwҋ~,AյUH,ᬒ+wڴ>omML_)Pɷz'3WZXIm ?N`ns cD?]Voep1>"]_8xwykʞlW;_~-*G*m'#גX?ЋlbPІDр ^ђ6 | iAWtp8v3Es~8(ZK8q/ßum7kvVRKĽ˧ͮFtw(<aߎ4}L(P ۺfcSPF6\IN$hyB^#Po0+DʨVQ=3DCO?ѭ-(Iӡ{wyEVϷkZoK,db$nea$71I02Q~2+Dp HaP[ިy.rfW=m:aIA/pp=8*F )뻊Xv qvap7لTv`ݽ4Nh:{GV}C 2xԓ|/608j-`H6A6DQR,) r6S_4J4])PZfV+sр좺v-Q~H~ ?r06bHIcW?mh1T:r?-d+Iirdc"|kz4fXjz-u/gaYC5PƳ>c$V='a]U=UJ. 6 ]M1/K tT(oH=fѧ/5%v>Rך,\XA7+p-yIz_5$e˚H4=4?˔ayƋC8nf4#uKܻ`VҕǮ.of'[hhs7.j';j* 0":#]ё4:3J|.l|-9d@{<g֭gA⣯0cHÆ0#@=}&vK?9|MV B."yuE|s]kn"*'o.4$P\C/=90 k],GxKE]NT2sMYOcK%@Se/EK\OoXtT*]X̠ =/w]< B 1CȒ"e032VÝш9͹er?)S\EMO5%>V&^DtBrl/Us0D7%l ;4W׾cᥓ)_ԯu- I/Ԏ!Chڪmh_WiA Ρ &9)KdBc",3&2ZNisQ=xڣjȣ&rS{4 P^1fSf`ɝV& 3ogz)qtO4(f|F1C -inyZ49X5IԔʼJLDp ty+8/mP92 &QYxu^D!;c Ȍj$F5iOOސ)gn923;&r9? &ːb%ȄB5yoStȁ-8^ͨkIԨѪI6 aIL2=4zl2dm98N:vDTJ`؎JwWKwÊh~Ӳvx(E,m"4ۢ3x%i a7nB0T2 D ta #)vJkhsq|T0kƏ$3kD#ftSA7ȲEZA *jBMn"Sԕ{YIYmn]) Q7avdk(L))2ɘavNyO?`kAۺGytlاSJS&+r,OgQ7 (] ʿ$`՟`k4hQ[@FG P! hEar<ONe-eLJh⣻YP{Sc=.s0e7Wo¤kqrHʳl2wS8D#RI'?dKnXgm<:yA!̌JOowǬՀ*ho%R,{YrBDÒ>'$/bp߄\t1ˊ&JP-gC"X rR>l\SY}9Zbtc,z!FYz$njve',tvq]FŤha>+,8`eVT{I'eY /ʆOD GԇN30bu %9pd%?vO$omVs v1=lm^9d/BeC67x6Zc"b3~ g#giex'`MbxO A o|6Gc[J4[[ߥmIIMT34Ibْ, ^xo3W,m8d ǯ+s!lo݉BpRj h&xj|pԉ+&Ĵz҈4jwUʧOŒ~ԮrAuaZaN Q̈́:|H!ƪػLCTyRes`AW /T0#g+!;Fo 13ZkG1iUHH 10#cx[`L&RhtDqPMÒׯK:) MQ1#G{t7#vzRm]6uH P1$K#D^%o$##EG6L 4oKUP KW+2LUɏqH!sߠ_Hݻ 뿱:8h]P?Ly@p-ƐRDpqjϛ0ls%"c+V2F]\@dp^=Н#zI8x⫶T_fX]&$ [cQQLYz v*3m+AI,XP?&"z)^n:L)v-[ErE~e?Ҵ agHm.ЇLy|)5iT 6MIgNj~GD^@ka S~~z沑5کSv Ԅg9KG9gֆM_?2/<+Yl{(W-,C,/+PR~[ g3Ubn/:_䓥y5 [iUS®g؎>F;.{iLa =Sih%xRQ08eo mw7N2bl|ֈBhD~UxvMYyKZBg~_]oj}ciW^af˜]zN*\'+ѳMdŗy햨>q͡AbAɷᴰL_2w3MZAt62ԞIGyR.,3T SSJ%\T"x]PoŠ6=חMBU+^U&\ZvuIe3ԥ~<УcLחgW(IBInݟKER0?"f1{qUtXV[bjv7GE9*FY|َb҈3bbru:QunY{_ \4r)sD(INv9'v)XK¤P4 T<#[S/n&1)^HnT>ටߪ@ӜMsXp[x }/]SMP-Ռس! SOYFIpv<+M | 2ȫeṽlS2>ou0n t@,􃝈-.2cCګF2_xDlnJRGH@@¦4:@" \[&hz*y]=/U,ghAM![g-'Oϟ2U6z=wZQ6h.0@WJt.R9FƤ9݊ZM{;Q[VEaMh?}V|%:8^:u򗒁MkMLHT , xގ''L]ڙ};^ق#4]B,q?QE]m~JdR>aBaz2Ea8,5oet] ya&Ehww?t*.` =FԱ0aD1B2co1tSkIA+QgӐ 6ÆT2s QEz9`pGM E 7a$hY'Ll.^O.r;{^0?(nl X\@\0mWMr!=;.ˏGZHf)fa9G]jISx3?rVDh97.&{KvP' z~f]Uxו~"f'&J3vM`-}\g"Wm&]\;T067}y( ¾8Үi*PmE b:`8,YJe ш13+ݻ |[6dZ QKVD ,bgH%7tLǃ[ y x@NZtug4C|i֞M͌ .UehJNi)o=\Jos%6RxZ_E&1{K>5/kheB2\% >@QQ mBqvsҊ"jhߗh*t49>j2쇟 Ʉ wrJbl?|FoT;o+< i8Bj僔R4>PLJ 4yA_Ǔ]/`2T1Xv^V~ފU+e3goI,phoڡ$y$v:qkXF-{7y.')K=B5MRElwƇܥ˜ ^Xΐ&GS6/pBj"c ΰd@*($D/$.˛]Tw,SLY†:/Ǒl$MhT0[ŚD6O M zGQ bZo6f,V?ś rl\lOs9+*lq8!}X'= sᤡ26pk, oX*cݍrMro@2aJ#3_kޏ[ǘ{,za.6O }B" <Cѕb(jbܔl0? ᲶA:̏c"{~,I0HY]6ڀ U v+CxFBw-Su zyN kt&4+\pK5k6%Z` Aуn/1"^7wE <H!nۀAd oBF:SQx|U(G `#ie8.[Cܪ%T&= a;?RGTt&w=*ܥ-2iS~REõ_Kދ2`G<{4zeBn4/V2z{kd,&mLFCIx5{{v`O~Ӻ J" RS|)rFy<-TCexKF ooKb5V=9l\N- ^E 0bsq$-c]o}`^_ q[No?N:y*`zSʤ<RA4I ^@y@u"kHqɂׂ՘bT iGn䧀ߣ"}in=U=ZFU ؟>t5Z{&ќV>K?BZCdJ}E?匎^׶4T@7YHП=:(B|IL:rwMmΐe0MLo lKI`)\-GMƞQ<}='A:VB^yˏO-!Oud.v75dM׶8v\"hqzqLl6?#bX{Q½ЬKa>af4*E2zN5{[f{S%ƈ+BB[$.4 y2hr3ҋQp<֕Gr5~q.<|s-}dC Ng*salo5my rE6C(dKg\rɭa5m%G8!$NkI^"8l`m td;#t.Ed.\N}6=+hRW⶷»"-F}I4ases "tjKc njX}mDXͮu12`ax{(cF6/ Gt1MOTr(oUTϴd%u;<ƹ"!}]2PqD2vcR74WF~}}_%'K ;p`Ãi+5/˪,^[%^I[L޷f?Ӛ`}s ơfJ%0Y.GN9c2֒-Z!Z gjhpsK"^gk){eZ@˙#ScRjq/? Y|2]^oHaZ&zbVX9K/(ŒfRE-^`K,!:$y1`ѽ6\0. ڵʢIX9ɻwU#+)YS[%mDqg !^> &)"W`ʬ\l!Hnbp:&s!nFMYcQ{%Ke^ ,A@`0g>i61A5#3_C5;!\|hXMBҠ"/84 P~BrEYR] yD`w`Vp N6 %HCœx"e*uիFQK)sHˍB,wEWdG1FPu՟QR OX.w#$!)qD;TvJ2͈XjHnD ]lQ|;7"OgCOqo!ag@`UGF ':gj?BYӞ>K[}ິSۢ3K[rԒ#v/c8oW1dq X+xlW77)}Jkx}C9ۍSۺhkn* ?lfcWMBcfݼ4EZGJƈ%Dg@E(=>w p1eF!0_\汢gMiAPĦ\ -хluZ,}%]qtHbPt&I2|Vrƻ6XOvԟM.9k ` &Nb\h7G b'~˯Tf䁀*s*Htv:"aH#mZ]D>jGZ pwHoKHJm`$4`S K.[Ӧ'\?롛ACס2Xm{ VcMO#Y0_\B?Ώi,Efݻ&_ƚVψדn>3rQb^h* T龰B 7U =*3bυH@τd!TBX&N3EHH"op4ztCjw[⟞r ],';U}E4StO궵~ *y nDZ "J 9Sm;$ԐT u5JHX )Oʷ;oy1*g v 3umE$5XodZ ƒW}Sn ;$]=#ԩ1V G2|K>"O 3 (&eneQX]ӍGl 'Fy%մE)8JqAgrHGPma>3vz(eSq3\&;7:&,} iyڂ\UYug^#L򄠪 LNs:A;{~A>pf;x^$wT1]-N[c\DHJAadKdNt$ŜRؾ<&izE<Yl}p+6Šk- ;L5Uru#x VcVmOJ^v'얦OZ$[Eʥ铖oJ:Ӆ\ˎ)•glۏՁ ܍**SⅰRrl#ǍSI ŏ P_`_YA-o?rMny{&ͶL’ +3 .G Nl .g5{M]G bPU̪FR4>cPhyLɲ xbuTB 2|RtД<Sʙt5+:Y!̇dCӼ̼3Y$ݯK=/EpiDbY<}hQ8fiyJQv ` \ېm B}-=@4ʛPW!~H_2R)_EHs}W ZJsɾЯ:#h]M-8tMwANe. 㞗Yr$EjVKj$kW\vCvosȩ c cšXn8߮/"^U訢/'*x>P^WWն%n|8$λ:{"5k6{Z:7A( -F03WG{4I!7SD:~Au| ,VYΏvj p͌5wv~06"#w d~RtKb٘Bގi3[iEp 5$^~urxW;Ia|)ҴֳAwA鄖5Xb$v}$"E JvmSvz{^繁:ɔ!O`&=TVs9[i7D~~zpLN=ˏT9}< Pvv/EpҐ#^o]z%aNЯCߏ X4㱛5hdb#O|"ƌ1R2>T.T?0p9[]"Td&$+CT 7>uņb3_X!HŲ>"ZR|ȹu1-7 Ӧ3P>(BHv xƇ&$Tv%BPs9 -  $J ?m >˭~7ˏ5\2]<W@)DV{2`TNXRD ˓ 2v rNkIbIqYЪ~(^h8ӿяv͛GC{X>;[@4^tI}h&ڊ+]^6$K}* 8\bnP @jV}xӐ@3Cy- 'g8I/|ԢaR-&!z 59~7:X: ]t;AEڬG""K^-4W'd &GPY69/҄O94[\oP6{> ,~:Uj0 ~-ゐ$-%ڻE }cލ)wUՂMpNHGqcR zp"дd>@Y%}.mfDDUaE̛X}Usdƹ36 wdpkLNy{/(T/ YyV==!L9s3B>wPQ 3~<׃;6c.̃6NUBd4h;vI̕d  j=ZrY$ePZ5"N)Hnrrz⾿5`N(a 9:X) ljJqh0pC;_8dnF %w` V'Ĝ\͠QܹPg,@VH׬ާ䑽 GT¬bjY m^h)Pt5Cd>,oBh)ΒMy"̢Du8:_dݭ!b[K\co?EX;tG-=7(0CnM,*%if>#z-=y8;s @Gu^Lfg))0J"ӎXy b0O6uC*{ٿi$1q~MWn8IsݍgEҫ7L䭶$3Y[6i<05!"0\0Ҹc@ۉ?rъ**m+Zj7kSi쨾PD2smĘt# 7/^~/?m*}}LrN#J8V.2$bR͊AֵbE_K+$JAB_yĢeh9u]*8;ļǡD:KՍ'>4RLjũaJ {J}U] ~VJ0Iof=0`)M:Viwsq#8"\?^  B񋎽9xց(0&0'71q4{:BaX@h> Sfb(hN|3Va=BE2[ꅢh>ZxB?Z4:GN"~q[XPB0H'ZBrLspf8 pJYWJ.x |S/(jI *Q%C˪1G'1p'ժdGmn:Dh\0CVCDzI"_2,FEd=v/3^@b`B톧 `VTR>'ô000U6O_Sp@6h/nNX!S̻=H$W2<̜l UW'_MR>Q^}QؠC|\x 4l xijOs@YO(rMṰ~Efq>\S9N"hY4؝ zb 7,op?uIYr8F{ɸA?$`_KkUM\T+xgnH:ѣd MYh85Μ jq7ɑ20žB[s()mX3ǑOw v5;Ud3׼uP Dٴ1-b;Bp`qQ^58~hs$;>>m&h EOQկ ;e8_0W\up\ǘ2eʹ"ʏ|!U[!dl*޲nww7MSb(o$ ͩca*ds"p' W|[~i>KyxM׭xY@)cR0R5X%} ؾMM>Q&6iqBIWu+OhI n~o8ĊY+T$O)mw-|U+ M4޺Ω3yps[hP +Q"4Fi? B Zt"=,ơcͽEsXZ1Žgjs\|CG? UyS}-pk+,&uKAPf&)Wsܛ*P5Fs1)ft!P`L ]dK2Tc+Wy蔤S"k9:%BFT$ lAEɥ0dW:=\>1oc U]Z7P8/y"#}8ϡA;^QSBuMv%cPAgG+wJC^NϩLaNTUv7]tg4PHj3n 9^ܟɺbI{Ɋ δ*_P|xzK'^Ѻmˌ ;WIĥXaNZvm)& &NG  (4\+2Gh=M/љ'J<ĢrHoю9!nݡK eYSZsVsr&P4;}t=yXr;$HpؒmHM9 官 =6RuB~z!Eb 8[d ]I4 J$ خXiNoxE>l:=,{BS5˗v恴h]ũF\w7'UVIeuuT7wG #Pi)D*a*4mi'ϙ> n6miXl%V[ˆḶQ;f_;ĭ]bk\rj0c}[2hq~k5N# @@(D^qqMxZۂǍ-C3g fjb6?W1S0ZŇ|]k^ۀc2αs A.b%TK0nB<`[VNJ7o# 8tt>֦dы?) ɨ*#!D4*Vl@굂ZHU2Du9^\k:?F3&aoS"WIls:%钟ϝYO-tqJDQom0~)<}niQs/i <,١3>¾Eǣ.Ie)!$uj1x$`M z$!/_ڣ-AK=>\a eznO{#xV+ 04K$c?e aPJ%3a3UQ_шcS["l!m|BEg,M^6ƲOYXi}m̪H{T[,4q Uzp?byz2#>Ag^2 nA@\˰yZag|[o1>~aHI.@Ue%pp2w\0N{PA5Kl Cwo_ڭoA$tw~Gj VnߖgBcbb _4=m+1'w~Arm8a$`k#_Ya Q7(.LHek j!*uXXn; vz!^H7g$b2Dp_ud9`]Nk>< 5rLR,Is Sx(&4SFSRu f&Լp.iC9lGe ':{ULq "eT=rXbbE3|wFaF[ zͤ 2 v 57BсE["?J'@jIEFTNQ97i0Td]Hkm]Z@7b>dE얧GA"vT6jk3Ӹۈ$s-34p<v ~*!z –,[R삷kMOr)IY[9+8 `{j pA9+SzpQL4Z)aۋXB%'ĶRSmM*Tyxy=\†Umd퐫m\RjdnR]Pa&TqgQ|Ylpw h uO u\ԘO< ww[f<^IȞ ˾"kYJ_=2HDx ^57q7Д׎|5. WKR8VW YHv鰅f%8\hP{< WzZ&0? uM2H2hGV،0S1Bm{ 'B$ XY;1`Q"hB~`o힀^LG 0.L'C@ 1;|v_"a乼fpuXD֣s +̚4]8|LP:xvY׋B֛ˡ}iwN۞+Htұ^j߇}n)?8Y^6r hL芒dblT+ \?t.tѥ?2Ź%ȅ_܍B f)ݽeh8UzW}Vy)XzxPL;:VqJ^Tb=@3MD%0Mg-HAX|6-_Lo~E "¹%W:PS/WH Z5TjDJ-+= G LRAz/j8Bkc5OMak(q&ɿDelNw~mަseIvV-El bAIryEX{:(JNSйUn_$2P b,2T0G幃/ʮGqmcw!1xq~3RI8[,7pY^%$r-fJb`6&]Fl3Cc{&oj&HF6|/,aH*S1š`5Ah >v!Dtu\smJ'K-! mfgV)F0̢>8N1I9J+틲\ooV hbcbrn p#rG$MA#'-}`Pl*m1 wpߕL_^, 8ǃ]nk}cLa*(y+t- Nx=Გ4,U,:Ő$CQw-`={si;tTpqW}q5~6'ohauPsGGQ=.ݤ'))b?0NIL|cșJLo/U6#¾IE=x{JC%NV(JRq*M^wX\l4=0QCu omC&5]ihW7|i<P<&x7?+(.'boFitKV}6Tæ:dtH+kտOu1y?Ep24ZCI g*@iM "PdzY bmZ>R{10>Çq֑Acz H긺K8)y> nJc1aH OrzOiX!t}!8M]; ] ;3˺fm*rngاS ۴ʬaEJT1i02|E@2xPFTΔ.4I+rye(Sѻ2@Gn MJ;d!Ծv;hc ! B@֨cСo̼rrfp $8}yՑ&줟27k[eCS< B_U[Oyqm|;[0pM74erH9Q~VѴ&ƼOzV%bhˆDK(ek"a6w ɮE`/o|A[ď33o~r!J-4vcPo'X0Bj-sՑ1b[eě;`xoя,]B*E z_IHqsgu|6[fNfq$-MTEwl3\- ;ӣٷc+L˰WO XpHvM݉ȹYK&wxsGҡƤS˿2?utY"|K_oMtd͢U圇7WYn2zde3U+мtvA+;ԌjY `V$ƨVrUЧKKVuA}U ^d&;rF 3/^ P<)۱h9u^CJ> 6DT;o0ExroBCUgi>5ɼ5l? m?Q?hz$zTLjqxY;}S盉-eBV,C +it_s8Ojt. v; ,̋ wu j36GsߞVu[9̅$"Lzlu='[1zZUSw7` jop0)8w${eҷbv#^rZFk7Y=xRֈ2ig2"ns՗7?( DtC"/1g' N9qv4Oӗn"ؖF ?s{%Y o0=q*$D.|$+ne0&FSG}yM[؇ި ģ9w <\}q mΟ<`[y|Hڤ ='ErxX'M} 1SC+ii;tZ(+Un{U)]LX_ĸ_:+J2@>р)dKKEDII;0R8" ͧcɗMпl^Fn'O+:~&Q~}mq2O&Q}qB?g`kNWj240fKOG#@Sg<+cI+4`hEBv@y]kck~P.Kԝ= I+j:Lp)_+V,Ȕy*x{y^2r_zi=Cݻ"M;X 43Pntix,c@~\V>"H>9Cf2d5MsM Fk*djxBƺ UDj>f}hڮn^;|@bM~c9k$)鞏~ WbPEX-F8NO'A +Vz0UL"UQ.YYЮ rRl @_2F[r:CyJMYǛ1c-a*áz3qnđGusLTP͹}ݮ oF~nSQ.53Mb'|CGUolg|"wWY'3q!|bHZa[]":EuWwt疑\[zC18qۀ]9HKςumf!:Itr3ھ^m'a- oK\h/#:¶QO(gȹUN,=%Njhn"H3Q#mJRncDQ dt{)AܶGV쩎O:rhrJYU[TOP*sEZH}'fSYO tsׂOVa!e-Ug5ףbIr]D ]1?jMr ^,U_TFl}Qp4&z?&@6sPF@'Ö~naɷ|omP4 c ďVyD/Lwu0׾kn.)4 $,B3jBt /324**Q%1gh8ݱA/a=xN(d Y"H$ a-qOYLpy~I)w{V. ߈=K9{* 95_Q)~\Ą/J ؒsw#Qc{nj$ r0(!=΀0vj1ҴE,5i"`-<V< 0^A|fmV#[' L.L2,+@9y(h4xdSrLÂ(a_.vOBA&/9aoƴmL,OڡzJ # s|=ұZ i[,ږ+ ;Z4CЀK 0=6@<1Aݖv9'MU3ÕЯSo5;$j]#_Ƒ{f]#>,1%h1Lx&fX:\./W,L!˚qhuXC-G@G? uFF?w7TAzpSmþhf!nrIvYa04q A.## D$GRcv`+ + )~H }L> DkzBfxN_+.gp G$ eC`-Y6@$)~ǯlF-?ͳ #Td~uQTLH6{= H/Wm`δ urAd;hbhi& RJ|^8_7aTG]5zz&|lذl~^k"-zu[ozf@|o&?-Xy+Mec֖4PJ rtKU_Ŵtb>D.rpӉZh]DbUf%'!@E 6M|%daa\i#3G5w+XUXϹ7Ydy̱rX})ΥM=^—ϕn%gl[* Cܳ'~ {8(5hy,'JZ D64Μ54KJ)mgKo;Z -j~oArc}2:''z%W$-xڱ[ᳰ{lsS 1P3s)s 9E 6i2 }+,:V>5`N*IA"[eէ[g4/#MkŘ|t}KRcxRj ~r!|%)RN(TeGV>3?M:AY{@Pgl?EtH Xh6`e뀸Hb3f5-R[l$O[9ԵG=Ő }K{xVkK Rәߟ!A44cӦ\gn1.P"*2+u!kPHzqM#1EjTε[[3X&KDL׼A4OzFOV~Õ'ŢDž$}ag5AI%Y )ZN}भ0@#k֪-O MI`s=Wq^p/jc*dیHU'e yc 05=ifG70#pkYFet&(@:"=[.=|kO)WD6$/9vQy=DS-\&4mc%lI+ J<1ze$oz)`Q7S{$Mk\y ;&>G %3a~}0#4Jz,Q$ި(y6:wOo›jh}0̨;um<> zGpm<*LU)mߡrK2 #ceވ 73bYYhli/š&3l% {pMذ(^_U(ytKd_˭`1`]?!,8Ͳ1cSǁ7l /S6)Q?YU|E_Be )b"OHn)8b +}9k*Ggǔ.B'a/Qwa Y5S{ ~P?ï#H^Eˡa@̤Q GI+ g ;JDpíy[2=!w!_^5/MM RSKp cm&fiKPz&x DR?YQs] * 6Dgj}/ߕ'N~f6æJhL {Bb 8yi4ħ3z@G[S{vՍAӠ3ʖak:@XB!5ƔeDQbc`V^m4AʟѷE)&,K|Y!M)ゖat5K9hp/}~ %q1<޹"vQE-jB|\ (|Nw¾{qCm*q`WAQby'Sr. .G,iwtpwo#ei?Ɇ6TEVDM)mj6rU&qQHp*xEזc:ڴ~L,޼-a4 @/\Fx/XUij( $FU&y` =jxc_,d i%+\*4CʁZ̾ RDV8t ppH95HuXrװmTޯ sԻXKRd`kg P;-5?|./QKM;kS( 0Lk+P< y [oH 5Gȡ-F!t bn4F$>Lx@I~+”р =S֧3nU?|*֪`93׌''4szI'/K7~)*[9'"){i\D{0E~g fYNn`HEb ]"/1>=%IG]F<׼ ;g7BV f#4[7{\\j "gSgxDTN!g6*~v$ s 3\;j(G 9ڐ E4,tGomN1wL[s}d~9HO-t\n&,6Z-t44D",A j<)(X120g/ X}~hJ}?+8Sē,@ǂok;3.O1FGd4 '|*DF(+ 5P1vG"#sȡ}'ٷ|{-OU8iof}:<ؙ_te=WZ/:_o,yq>d}_kk|yX*, tQJ'BG]=E^w-[B<-MJ22%F+ӫB}a.ЂLag7Ļ_ ]f7p8R)zAd_) [@jT:n;3Mտh]PڦќFewiv~̂4+AFƃz}tz,U0'V8 Ko^u=(ʒWU#y@}JvX/3y.ai}a'܌cK,_GYLʌƧ}QNC6J͐|o۟5DhFUb p.șʸ^;L DE&B_];CBtZۜn1n}ԗ#WtÞ IXV~. [=jdž¤9#ax@? 㰓=A 9blW,Y>ĵc3k,}ڭeMVn0 $֙dPM<[MIWBHU__Qu9wϟicvRRSd?f\˴&3flx*?vb /Ѭ̥{Z& ih}c aCboE% *YVû8.LoO/A!>XE%yY*)w`yQO=wˠ >'FNZvgAfMi/H`7e-n)C4)L HB.?ݭ& :j[ ZNBWl=&+լf AV[N.i5AˑNCEI+{Q`0A#.I @Tw̲&|MpQKq; BgވB(P1Pٺ#? Q[\fǫznMS8RoJ9M+un_dd>g$tB&K!I8P%jߚyA=Ԕ%#[Zu23vU8 ї!ӝAv^' S2T=QMoPu^ƫA\VdMMhQw.J/bGB0 K]COJX 2 'NcJK0mўb= ? ҡc7wq7Оp7ܚS`LĉmQ"~^O-n!$;pj AO[}4] 5"6 [Q8H5 t.x=KIkx'eK(znbZϘ]OBu1r!(~}r4=7-)MxX]O̤YdG9 Z% :kE 3EGWxOxڀ2AGaWD`7 c2`Da{DEetl]x{A*Y-ESQ!%MEGx?O5"&0Rz2w~W.OŨ&r%;-LKC=ݿq5?W!ZZdNN=d^̍(c%=v!ݗI/9#6lxǪ=FJ(i+w$|Vƫtc{ s[_1UB>}ʹ] -ѵ\QC=??~̹/0F5GrǞ2Ϲ*7ʦC:+xύ;)x;!H˒731s:X e ]nq"~AVz솔Z\ eGLX!$] 4,M=cFD>{+Aสgԛզ[xRђ6\W_lɮX8!( bpW-c7&q'X%ޒdHV}uC]\$kJcoxȹgwxfZ6Ne9HWQ+)PI U( X;jz``ekKQ-Nq"UQU9›Ib\r&A!v8h;E$+s7CC/5:x[W© PAVQx90̕cAD p\f4ւ8*q`,҅#3^$jbd%nj̀PT@! r. nVfӦΝv~rJީx fC- P_x# 6CrBG#͊Ym2(ɪxmu펌0:_I,1A:9J|c ,_NoyCwAĺ'vx֘J`p6iiז%tjbHj쏻3''\t+>𘇖x6DVJKuWtMl|Z6Ve13֒FÇcy2&6_4C3ϟtցh; e8Q1GsDK@FG܋,fhb^8bۉI` 0>7O_dۓcx5;U0)r ;wμ5qQ\ҲG^2P*C(]G.okKL{c]ȭ^wC0 Ff}`!5H&-`M4zrwJh칧1h5]U(zW_L KZOy= H%X}u>lίF56k?"}Edt:;:+ HUMl.8ϸ)ݶ;U[LrUm Rj.jM_rQ8=!G[lw,BqR>r:h|t;SS&aZjv#KzRK24JTv"`h?z[Q6øac;s>NrҤ8T{Ay hH r =R{c`EwsDqf]5IB:SN@ͧe+Z Wz15x@b{ fCΚT鱹Sj<JImxK#ap:XNPFӁCʃX*ʙuX\?pD}f0Y4OCLD< ՆT&CX/nΰ{ SRJ%U7gC|s*UӄU PFٯ "FEKdtu8{"ġM+Ȯ6uMTJX}H3g A&u:֏d|T* ͳrگzYv6Q'Qh- 9رٍYAzexБhn*'p<$R;St|l{cz#dWhiީ.{ T[WB5E(@5"^0>L9 TkVE&hy$G;39p"6U:%ѴSM!󖫒jTmI%r{w'Jl{FS©cىR`M]K@ooWOpC/iE,s@!=8W+hV;Im>"OǪo/%;ݞQ @ bvHJ;?Ir4gWdFw}!dLxsk/~,vioPT!P z4N|]A)# e{<Bx8xD}d{M)A$G0P>R6w.{|\K04=bw' mFX~d(OcNz4mSh E )e Nn !#&~`, {$:(ƤcQpTPPt0ck."S4UOJo NޘI&PX_nxDg/p(&9;(]\\؞0Kk;پF z07V&t>ω-8NG^pD}XS=OOUYGT= Z6^ 0yQ[B|s=,FA =ϭ[c^0dol!X:8Ln+g^ 7x(ya)Y墨|&Q(':JVr=M o 홏V j#Ӽ y>mUP4c{3T1bONe3uVtQqk8~,i'0lgZ%³Ui-v 5 pwd}(TYgyhbt.n#Z㐬kwp5nV|XЎ7 oբ#y/c?wj>Voh41  :~djR b(mk?6 ! _Q|+Gu Tn~?VfFwJ5STIjCKV{-T;ӌr jK$& 2~ V BTiݯgf*V\s(cK)F3Ncl_8 w/T\r#ptf@i̅XZضZ?ytoX=Ғ+% FM5Cҽ14 !7>RqqGg!򶯺Ԗ+.ek6CO8od) T48%ţ4̠^vI[ߑ} ۴,۲yoSܖ4I"[ɾz#C^8'.4)s.nP갡L0lhFv55*aVMcg~9r 33"qU" uņ>վvPPa/۞~9AuΪ_V2iJBSaeG iu+sVx롪 5OGc/izZRT.F{o-2Gtvx$ۭՓv~ĝE#;8xQ"ȹi+ٶ\?xiڵAƛkOKj$n~<jU4%_&c56(av` :ZMԠ?w#qFd %`!r4VqY^c85ض@vv3ȃ0>\K%1֛T".ޤ#+DfWY)&(xMp;# >gc5c#WѤn2 -˲0c][ 9Cs¶?C"H殐1|44ٽUҥ^bKݏWȕ553%hyI^MUEEk٫)|6D;_ߡ0 UK_mkNHr:92~ w-ubH*Y*úmzpG絘95~MBbDŽVyBJ$K{VcPwuЃIO4WX/oHD|m,J+=U36O@B_D6 k1Vtޣ3Sr:õFr8C.#!LQ5ګ|#]Gd "^;FxU08~\>|YXq j|H $#FC0mWLUo]NZP rP߉0EF`j̪҇`W`fJI iXs'z%R.%6Iwn a({CLVe?'tWzZ:bx'1 :!:Б*z %"Kv>.ػp`Nޠvֱ$h K6QMݣcQS\,wtm.'RxaaEo;gS eta2>ܬZ_wMV?2t^Vk~ rm.߄Q9]TӚ7(w]vJ+B+5SCsd" ) @jNAiTטsl<^g;z^@`:!2-ɾwu+S}y}Ag9u \.ͳnwH%:X:^e^\BpNƖPa.TuDbȄ]afotma\KRpQ7RGtDK^VαR׌黙wb4?P(m{_ +^J5Y(沓=|ah/@Ji[@l85n?Y_SU+Mu}*r]hEC(BڈMdwRtTSƾBJ)m>؜cL"+ : :gMeyNb&bR.D#ЅSTԷyl8 ^B 8B<:曰a) sZS>0m@+" .,Ǩ!m2A$o&qTdрI|:XZX#pP$I>DvhC=<ṫB0 QH4I*AK&o)IX:ub>FUqEv) @3ziRAd*/s[_+Yf; byXsl 4kQѰ~E!7#rA1CEfGnX¤VM񧟾 S&A@m'WEcѰZE\TO` ؏LpC@)ku~0]Lc+_T-vRw!;[IFZ $6>ț/XD}/KGlA1sQD\љvYZ]ͺ¡W=8M֞eVq8yP+/3 .I@葨"`P5p 4qy;NivWC(OqdHƤaUrqpfU[uWǴ2J|fPNi"T]AWh2-q_}@֐Y /=; ChW+ %-.#P+5"7/_'MC.gwGax}3?=No1t"gE'"(|\[1N F\.b@Tl$me_FPHCMFɓy?G\29}:~G3jH1 l43 =8YEd(ট+]z{*:_:G\lP)9q%;8DQY+o. ʗ7b -/?tC`ҧ #AL=#V; }+*}^"`DHj_1xii_Wuu.ADcyH$W8md(F~dyv xx9a>U5if&BFtf~c묆R5Bjډ«/0#p}Ӳ0b;#&X-8S{[͗[0[mch'ü X< 9_Z̲[vMճfkVOʟ뷬_D.!ldg tɴ7_T_jEC d#O8=h}홌:JX؜]N ίIJN tn3.8J2e :$\.#d'x7v#UoBmEY(0b+3#uݪDkR@_Vo|, X}Ǖ|uM^Ԝ\|zVBēԙ쒞 |x$*VFǞY-F5BZuF:![Հ5MWX1y3m5ЄQ1,o,CbsT pal7)-TZ W]=opF7uW4U^كIP]\a@*̼ d)<'Q(W"o!9IxEKMz^h^7D66|Ci/7)E؜w٦ ǃ4Q  CꀀbYJ!v(%4Xn^W^˝IYKc=*R,UsV櫙OG۴pv Q C+TC$YXǭT1K%YKGoHsy uE($TMftXɥ}M&ըhdy*TDAfܞu4e{18XMY1-~I=e; Tn.UYy"y{g?A`VQ;H4h9CRgcl`}tn]hT~~ LI@P Ot\9gڀ*V^V]?GjޮP 9S)"oeeGKJ/=y̸fd}EoJᓬ?ZM'S܉jEήý7ӫWtkV_pv7xw$SZ!_B(I_:c[EtM÷p ]F%2-|L9aKR[ uS* :tҊ@rFЂB}}F-Qx=v KC=n?%{|)bʔ?O?$% 7r#Hє`$Pb9C ^IUtZ,ܗSmS{)Ubr:֙pJ%N[,0.]" |E"|ԑM UGVFl Xgzi3zG?GϹJF"4_#lCP[i㝑sO=)jbMkGDY vب-;@ú(v/d=u8o5Ǡ+,cac1kmqوyRe%rG DBԲ ~g͂]5*D.\oAUqa-qW 2|U`V}*4q i$͚cls ܀Μ+=G jdlݪ/mF.(?Gض=0Ti!͹(% SCW_jrp)PvS2YZFb*UԵ`ġ.7"§!y^L{%"fu:phٓO`}):1Lރ&,BZLpnHځΖ"KbdJM굺  .+fHvL0]߳C=4W;ڦDgHLc]v%p#D41KQFJ7jP&[.$YW}]-~+9%Y>CqC-u*r'Q 6h2O2J h͜Pƈxm3J[ B ;" %ﲨ5ojJ٣/l#g$R/O@ey٢PP_2N]AIR4AO׾z=8A^Bl7U1J)% A) j'mJX2#UL3V):%JXv'M[M<j,ˁ#7K%e+Q56 T ֜ Qhޮ;98"R@ZgDkIZ_b2ѬȭlfXxS|ьsLS`P󇯫V*@Ez]0ch/.:)w_1Pȳ6 }6ގv첲q90I? uU'1Y/`b]Lzl{("ui>RIʰ~>QxH˽b"` OUf:ҷh[jKLjJ]zHFXXlq|@LbQ3V9[Rp:BP$y T~Iu$u} [)]l_^ n"m}L+fSKca 桪#Vqӕᨌw5.ZWcuwǤU2 U+ETU¶fk8v;ƲvD~p!)fw$J#_#E2Sa;d(os{|gf0 E*4lB)]Z0&92)Q*t.{gcUDD8~! _՘U?ˇCgdͧ G bW(/qP5I)[X>U1R^Qjќ3Pj{0ؕppg(anWʍCZza|Q }0Qg.6HCP1OߍY !oڋz{.'X?,J"3]W8ËRp\Pgt T!axXjޚCA4h^vALZ~r A,,wwz_+ΐ/!ة (wif;(鎮i ּigzƀ5wp Dx;Kbӆј :'$G[n׽4QYΐĨl~[2jح OI l~ԩkQ긳 <' -SziEMwfYnRP*X9$J3-^fX3ވj,^ٜCk< D稠C0lgsy[s~MA떷6b%ztܭa{ l92ל{88_SHTf,R:/i)n|I Co 1Hf06\ :o#8s7M!xxdLƫ=Kw9KVlІ8,Z3lgFc6XdFg5DQ}H́{>cWB' 샰e?;]х Jnsd{Zp+1aٖ_vG7@D(is4Bf!k#z~Nʼ^1p&ZvlOZ~#An6'пܥg| #fD4#d5Gtۘ~ɒ{6^#BV܊ \^ȷo9oč:64Q]_d; ^$\2{4}u/ޚ!.d-<,·*䁚O  Z~Fk$6Mbg0rv0GVLdeOXQ͌?!cQK ԂSn%&A_(cwgZ1f`IPr=G|ND͙Ī! Cnߥ gu98@ dPLm͕tjYv5,$`JsxjPک nowwwY4 -ARy:%/x=h oK"4*aщ^ؾ6rM7S$0u74@dGׁn Rd8"rJ+<K9nIi[YE𘕟 9`k/~vblKq >Č7Ʊ[0k{ d4G[݉/XiM #ŒF/oZFCd5\N1A]wx}h&~IdgNt`B71MBY=1YVV X׆AKm Ct1)af/װ[0H+p'JЙ*c7m)A/ڷ s s<.#5[ 2Y>V|6GfzAϝ m;Ҁ؅l *Mqe4p6̌mדTfKkI\ ͧ`9~3 ԣ{eSbS&YӥQ U+|9BnoM+v!mMRdwdO5Qo}{-idwTEy ,7esjo(Ǘ k62BDнPXG2KL ؟Vu0ݧ X_c/YLD U z[kZ뛤F3ڑIm+MZ:rx .+6>SaETE藯AR;sCkn#L L$eZNC+.A,븦)8fuУ2_7NfrgEP%ϞjA F,/SӲ0z[G Z1!g/HN5~+/9ZU2/Nű$ܣe7Qlړ;$h?Vj5JaKZrxXtR .@$uuiG4d0fQOj +[<SL 8TaټV}͢,H`ץ 3 ##y#PBwOk9&Si2k:WΊ8agT[LOl}}Cgx#\Au\$s,NYA!ɬ3nMN g2(äFt;$h38~r4̊-z)bVN+ůE {pZKlHMA/XzWY4vWgRwY`I{L~ټ.pKӰ!eA37@yZ.g$ԒK+ b;m FQas,,r /Ɖp>e*I}4LnT0)C\oZԍ9s6E1P6rb[ F R:80ጁO 2D,_lwaDܾ2# ^t_ۄ!!zE)pDS)Z GݤS)M⯨45‡4Kb&wUN3\* GiCoXW6w5E@ 6)je59Ubg D9F<  ÿ԰|%=֐~_ HTԥV4:` v/"B6u\$y8j-ݜ`AԞڊ1tg%u`io&?=W#02.PZ,"&UcڮzgY>vQI͵vwy־hj8E>QX p%/Єu? ob =X&[lc!Z:֚H|L}}X$:{Kn19~{I+1q]8Wc06}Ɍ˫Gйi2Fo8RAmW NNl LtءS|Ɏӎ7(NBwg}FR}n,f,/V:Z0z\̍WHG@!y&\`{\m]!PSnp̤!yVPC;}/og-oTew$4!G6A@R c\GymlZZP,ƣULjA Dgmk+Ǡ)PmybyֽFhOa0]UQ7=_(ld!Z :OUJQg. .m$FD ׍e+IUlReW y)@@*MmOamÂ&~y|U#d_ׄv DGnaVx;YjCJX<"LȣB~v%3~@@AS59-kXȽʆ+v@4k\3+r%;'&ebSSZ~]INU< ΋`Lp,$Aԅf NM['J:¤As+/_9nA>n!~,Ay!T|k+V,Wp

m+ˬ).Î)Ac/gwn#!+Ќ\<^d_s#nJp@uƒ20[9\DH :kz7?4 IO8h!v P|?g `Lo[:~]5˾"^ uK/f]by~#G`N#Ȉ]'nX:<2PjfCKc!Tˋ) "Ǘ&5ccUsP^4嘻 (5򐺳x_m9 ٗO Yb%HaM$ q~+(egm80.(xo;Hm`4׃ERdKrpɟ6-d]Vvž :&@2 $PbR5ʶ3n}Ňf5w3n}TsJQn.|h6=ouȦ|l7{q|\B <'(U}wc媉{hjkis.(@ S nFFm.3 ;0uCMGSВiI_`?3Z0N'o F/0~-\U悂 B}]1rc~^x`|֤KL*wL\&ií{!3 dgOsBn֊OJR9NFш= ז$aF)ϑn6=a#\/VD~o` DG]Gh6H{S|PzxXmKqh~BX]Xt>B9pZ^o[61a9v؁1؍Ș@'3վ ah& /^ ÉPH 4g2CaXJ;ǟDvfpyo)ޏ:fQHmʏ|a%6tY@Ml[Hj mKaxK hO[2;ś{WŒ 5OQ_¥k5 )17lDF:x6;n .z9& aeBlz`[Nls +uʳD f'> kf.[@>Z0a ], w&s47L9C[]7V:TVz^U?g\n-ˤh*tYڶ"0 S3]8 .25=܁nFoc%DܟG  [>w?EqzRmXr|UHFiWsyzD]fJ~i@A7.R@1YsVba0җU*y 4I޿"v%3.'CÓ =DM`%ba0nf[ٔ77\dε+a)\\=#zÌJ7{ yUtғWIR ʂRe?ϸ0u3/\ &Om[~-`{ߍ_̸ܜFT)Jh/xĆ]϶>0,Bb? {#z,J!7=`-[56n9^ACNiQA9vԦ' m5o7: 1XE2-zX&!8QU1SMz(:OdS`CK8[)ub%_@:<59xa rH[(Ͻ+\j}(i4Hl[eK&NĂRyĜu̙sq'7aW+Wwqa*hV`Vܨ 4Qnե^lTkhJޚ9kEz?h|x??Tŏ3JBrTw5FݜQ_Ҏ9΍G?5d?舞NЄ#Auw* (lQP<,qQ)LY8C %wE(M[y3{-;/7L_{)p~{381f|MK2 ~;E4BO,Rl؇9]ޑe] q[d(tlvKU-`gM cqϒ5h$)&{+ fW\m hW]9rȵzrthՏ'h>rO?-P|ʅ?}>"vi!:<+6U-=1Yu4=h#^,`ՈެDgh=nZ4xY&Xc1|W.ܹ 噂8I)Cf,D= nu6\ `*g#6+' QitQߦ3qir3]0R7t֭Кޑ 9Zuv%rb)GYʴh$?.ؠ@W$htw9S]RaoOÒU32$× bf}ի fLhz?N`WJX(QMd%=o57%9}N3U&A]ߖBfטTPC19VmxŽ|r3Rh50e(2I'4[ Wdm>106"nL1wQL2 ە){ųYZ8͇Yˬ8B9/\m%ƸΈ#۞/6Eaa 5`2lae9BcԔ$`) 3EߑiT3)uzk?arFgo<$Hn$~65>RԨ?b\gGM*Tb!T(Zu_uAb'^Q^$9z%wm<w䞐 E:xu "Q Ӂyˁ8Er!W0K7~YG_YE_7.iZ!YNZo\ րNCh%J!m-͖w䯖k|$8B8"[+i4͉0S7z=yJ/ag!X;hjl禢EUٔX&vWU78Ɏ능R&>\D&l1F*Sô X>GsWCAS!uV95?\jk7B v .:,'$:!"K}+twV k21_)V]f1ChJ/D3*Z?;rTb/N 0FuEN^4~1"'Y_J>Fr&ޑv4,yZVE >GPxivi |%5l4ĥRs3{BԶHkMGzw'Vb~aXAWY U\óLrKKU:zM\ƟzKtJƒ$B++\dEgxiq#P \{PCV ed1h4 C6H#ғ2GQ.)@myL)Y|.XVͱUcDFyug%۝#7~CvIQ1g~U"24;^97UmLFm1+ZaM7F1iB؉ֿv%>+qF D{b ubFsGZ ;b^-ذ*,*h\O[(ES\bPY*m`4oO>틭p >[/7Y&l6E̵,$a8KF= |aJa7Csn6-.Z>EtE_y'D(L^5R[# #fm^q.*BG^WI@d:>:EࣅȚ{k͘rd $wyYb 8KEV'Vfz9ZOB ܡq&-1)_)wNk٨=ϳ`܀Z-tEdb#xwW%ۋht*FTx=؞gQfHQtg0w޾\27.lmV5~Nv'N-YlPOi5W1F~'J_`{?:C At'6iP홱ahꗠ VyhNbխo Ӛ4e JR雷*sH@$ztux([L vM1k-jZ,4YpWp!k? >m/)ס ꕣt$@$C6GU#UI ֥9qZQihPPYb>=7<`\;s4$SX$n]iK't&Kj-Ƈ,r@w6چ%7Q5;2̥".^I8,SM2`tL n QztDf,oW迟R4]to/^#qJsk#+h<1zF>\P?ln^ Ět r!ce8Nd%3G& S*VZ">@GK2ʛ@ z 9kb ]<G2 <̲uom +_0[/q}\Lzaz0U%9Mmx/:ݍ'j =U__"%=q un_CR|gkf7~~o6j&u/ɘaO_jٰLKvli>Iju ?$kQX;iテ Wܑg.4q/D:\ ډ,<#a(&hRmpg8oVŭ6p/nmW:'H+۞\a~1d]ԭDsF,ܶScRBfd`"&ux:|ʪ\o5iAZh3ݢNѸ1`UZO rc 2ΦPTbALѶ_(2igЭ'vވ]_eEܶ63X-6cW%W| @&e xjZ$|@VzAV@a8AEDjqIV7<'568IB>kQO81PhG+0 e6۱UȼW(j>Yhy_OVq#xHv6#:oMg݀|{u\<μ1Bq7ar&'5X+ۺ${4#(C\.:6'@'@scBB ?2L"7-PM9nOIR"BtxK4F@x7|$0eSyl vz_Lٻ0,vb9:~/]+@o됯a5 ]CQx'ׄ.~-[X T/BleEQ'{E#Nғ@Վ e_`V2Ĩb7]~c8Kp_ n^+tA FZD}oF-V'd|h2^;: xјV;qAt=0ʢxc~AMo+̘})=X"+u6Cx:&Sp}dR%g։P0(IS 3YsȦ.(@920$vu3`b:Cr$X/:[)#qo`9&mx0DUhʳXvT 1f.gM2I0 ?9_Q t0Ioئ=M.y[;Ft7*~_ 6GcDks#R䃊'/.PEoI@{VwzInc@ -h$vvm|`~tgD@ <Ɛym5s7Պd};m\VNLk%{`F{dQ67"X!fl>-P.0^O LNriQ%#Xt9ΐk-~\H܀ɉmQuF)WEmVb1 p /8S)@~I8T\[s ױ5U[Gּ/Ds7Ɋ.TcrRx|p%~Ľ"p)5dm/AC.Oˠ=%Wuy !iz0hrW XN8o+*} r=>DQBGnBId|sOofmJx0s@ȹ-,˵~S|{_H\?HlTJ:/D2M5hls3N[tkV=>|<5ZaL,w{ ⦓ #t}௹>Nxs!dW=N=0stzkt=[*@YӍc,W" ێ ;0w,.b5TY*7+vԁxa?cDUUha9BUnK;dggCm\ӊBԒ׉3Gtg =]/% Wͳ=VN9[4ǣcpj28)XTʼdӸ!:'Ĝj[6SQW&F9>A 6=_r^}݂8-Qh>"7!x$]4m \hF/hx 1|.EM.=)oܮ./Xۙ/dx]pˡ^2 !F qfYF;ژbM! )<`FbV!ޏ^l<('^@ !7'"%o!?=ۨ籥b$a0b} [H:험D^7sz1HE0Jњd~ Tzn&EyE+[Z16&`h-P1SVG&6!C ։|,5r{!F!uX.G K\@yф h([_ ]>p8 Y]vtr\||K=^iyIγu ^ kAc9mv@X%L<[cMCJ}੫:Gfr jDnv݉ft5.05ԁ!W CS3uadmvBx; Aǫ`)RCs ,Xm/!6Š|- (~fr ש(;d@y^X^6/lpf'X-.3Ww8!*wa#7wM9On[Ȧp,Nas—ɤw9<ľ碽P`^֘R;^A#8rqSL9/.h>[7DSuH$PPgK:F44 ň~,"LHvơ&b9n;ċJ>Q$UɌ GG*̔@ N鵾Gp"o0SIo4Ѱ(:KU+;ns; aX–(ι0H">yrU|#huaeLml\{}Ppw"@ͼZ/3ʦk62N6@t'bU+<4_EDyrr5 ,Aڶcvh 2[{'p]e@&)Bl& ׻axkAwtf0n8L}?-Y/-z$| 708i_AO{&a̯Qϩjv>;oT&aQ7n睉*1YyKZ}.R o}3"u3Z581@@nK#lC!|n A?0ޅ;-&Bb7n|'զ+ =Tg,nB^~Yh*(m1@ |gycZ?7d+򞵒槛w֩@l3tD_ΟŎמV+ D 2X,rwHNk]]M *1jV\(o PEښф_֦gA|!r)eӫCc?]WT.`2PJ5 jڻ3>X2?gwu2V!AkӬx0ЇJ0?bGsd+z؋#Fd.@26)Ё@](70L}Hg19!!zUƺv?2Z ~u`nŖLP~(9EܻBkgn^ $O0lz$ΠT=r)롽 ڲg^O3ަq85%1+nOщPm)N?|-<R5U!3-IUq"9m'LHOM2ń>x$G+妽T}@<%v@CB t,P I% þ%5$}|+[%&HT/OdGйhO+syƩksi3Ϧ^q0*TApZNr61HMfMVJN-+NGCf?n, o|po4c16yKiR,(B7h˔z$ ÇDc Ҟv3Úw^h@^׶C}K%{e~YnN WrTݓ`oӔ-[RE Vnl q0pv&3,c}x!;<tל80T\%#6ۜF Uz^ G@]vڣp ,*S+`.d'09XP:=ݒIϮ2w־ɼϜqNS?ߐY=bٲaBgea`4XT]HwRϽawPuف,ٲlѿĘ&MwZ$UGHllQFY$ 76"@1 KK7R`?ԛE$~2BK PjK5~<\@'Oeh_ڏ]4.oXT.g-S4J(,`'*g:E >+N{Win.52INbZd *W3#} 4푊Q5CI:,Fp[~vƦjM63ع9 BX=89 yϵc;Q򅖺" z_ o rޛ![PAiWF)]wF-";:b0 |/\Bث\5Nh-r9d,3]h"g=O*r yݢ-6t>1xqCqƵ+\-͇I-`lw il~8%5BvȄƤ~RoCmm'EvJh9{[uz9o$[w mrʕWOi~DO8%G-]A<W rmFY@~EZWSXWC2!{S7c)gp[ y j#:] Zt+5\Jz=(õώ\Kh65ot/+ "F P~6T’Ea .˛bZ#6: 2s9B&}O8fh}&L}i[k+~7u0NL)3ܒCe_'Kkl\H9CS5՝R^I_ F MfELpf.%S #NBwk}!;@U9V~|y7ך;Na0,+9%ASHҕl¶t>RĄvOʀA9 6Xd 5΢6&`1cLW<ĥ(@~' (X9e&yxo1-f$%~+.M%G2Uz&uLgG_+KF[ʿw.jsC$dba#NmՍg paD+ > Z” cMa;^юG#|(ǵUy5QVA>':>(MLm0fHX1sDRWhOL {Z2( ); DCe?b`ɖ/fqzd9r@Y^1ZkHV)Lg_`[8(0p$gEڃ5= + Y-^GɶԎ*` yP j{dA hdD{_Q|h7Y\0U1L3ǃbm57 'mq*pn=rnˀf]o5("3d:Ne}E,um˥ /bcɓ!@КT7t._U{O0.2>:d-T3?=:L1 ;v`ɝR0ZݻW!ⷠ3|e6, l50LkY'k&i12<|v@F5OCG'sRd{NJLo>|1(N-u$s0j޳>"N-ul&9p2.VKiI&f)y󞎜T,ysz|v^@c5f38ZlYa8 ˀFwo+(Q䂾^d-vMAc) &['-&x%`Fq4_dF)x@.u'6^*%YLa &%?ZsAtŽOPU9uzNǹqc\ձB{ac~zw:WCVI&C<ȑ",_rIgs[M8cy۔+3Ng9 Q]kT7q.OȐ*7$qq/g,QGn um@H{v-B?bu fq~|JŸ)2B,ʮuw] n`܀#^\)vF7ze! Rx,HWmyߤ֬TtCB ?/۱(s۔)_'nr;ݟ|llI6oAj 6m}8 q?_pchȏ w;%w:X;j7-^x"E7qD6(G8캆$?TVdp">EU[]˥uA#r7W~fM \QI+#}i/S|<};n)ВM_,.hR}@ _M!kJZI[ZAh ]Qbػ8 rr"Y"?rC K:(b4isYL7tq#ᔍE5/̾EЍ?-61̞ I睇0 3mWw,A>|=;W_V #^?1%.F73˥Gю#Y]NЛy" $+[_ ;ԿEw-fDS^A'g%[AE&EJ 8R┉v su^XeB _ɠHE) )' ؈3 +|x: `a]hˀqDsQ KFӺކ𥰄fL/[ȍ -ƾsggN؟gEޫ+rXL475^tw V)?fXD >耎8xI5H&EHC5I*OEu4pM4y зBH[d7~ZJLT;Tw|rwuRTt aP%,Mlq):u4uy*3Cm? ֮ Jw#@aes1{'Qйiq!8#g R{PzbjSL!Ew:0pA֨֞-^H` ,' 'I}g^wx$\AIoGk5N$'Vt]ҽ@4^ S/,QynHZ(TqE؜ %JV ۽PIBrz ظ<:)֣.IK.]mrJ% &Lq1^xvăO%'MR٦a!_^IGʠ+ȌpYЩ&񊆩.Lﯻ%,-I^p::0y_āW,jNg* <3 :qZsظ1/F;gcc3{f5d%=zeVWvIC2e nRLƧPcXյDu&z%@&''ku9 ɑu(qsJ~`tת^_ Cd,0,ȃYš?}Q$ 2fōij%?df>NxN,E澜)H7[iW,-P^AfHx;miMHNܼ)lc"TڜEȧoE`/*G*C{4B=r>}jt5gbn>s(qU?J+Ƭ aWW+ hFO(l!Rd}VR gϸ\Fp@Xs5ؕooq jh"r ֢ZZ]A$I]ލe^-2ɆLt b},w${UEW %>w=~BSP:f~VYÂvw.W~U1ch1ː0BS%E |W|,`kM ƸS Iչl&ԨN5|w%I =]dС*CMBp`Wur R[|rÁU<Ǫ hGB"!q~@f1:/'"i+y9e rY`KسP|e5Aq4D];|Y$ ߀<l#*v:G U5̏(icl:P$[o[y HBTw1[x@ =%A[&D+hI$_,~.8xpHd7ѯeݝ͹^XiðK%'cу*,6o,_N=eW|XA]XB5̡Y~w<5VDv#kUGF;z cT U[z^o Z50ݤɔW?ٙ%1D6Ҕ6UW 9e X{LB(M$N㾞 #{n|*::ybn@t#=[IL0m :I! v4rk5JJS.9C$fJoxɇ+GRDS"ʉ 3SZ1bث}l' )fM)3k+IszmQv%o}ٶ&֠XM5H74![dm8ba&$42rpa= N+ bq/P= a}ӧ@hⳗ&:L4n-<$Sue||=>[p`\M?r1EwƆhk}b~X^p({ 4v @*YtC<h)e}B#=P}$ցu!&kl: 3=*{PkhER&uMlRYK]cG^uO*0J~k Y/H9 ujϱq%uN9LAa@tm3 .vg0qKu;Rc8AIa7&Euþak#@`jt u)՞a!6]'ZD NO^`v}?G7Za]U$I >9}ur`ݵzMފWf튣+3oX@&¹T"1 #g`Jd ; {}/s <9 /#w@>2*wwW)ܪ\JMez0 1DIUFMYYO ,.)>H%VxwxEI#ȊCdD5CAjh&%h>uztyB0 b[%ؾc!*쬰Wc{EK"e-řã}&t'$^/<?m,uOMM.Q "Tz"tk0Og'x1 P?)9i%DڎETB3s jate|⨈XKov .6&B h{H"ʨǹ&BjFc^rCx'huWMxl\4j! R/!ؘm۲ce{}psiٓR5'/޵`a760P͉SO }GQ+`F4乑C=R5m?OHj==VN SzU}`ә&Rߧl d-wp̋qm?t*y/4Ȁ Cj|ZP1DE)a﶐hsF5`#JvgT.-&(=MO‡#ve^;O/Q6*fP\c4IfVh>>pMf%[6_2uK3W>uF8&Z._gƋaSB&_BmIqa)$EL] r:[xX´B_O⊈BM5Z`zuA8Q 8''|5 55ȌΠ&MlM~^aK^fr,|Rժj״|sY2Bt֟A)!Y}%rai%o6D"uHes HQq,-]Q_yϊv᧏prIyK e$|IG1oh &r `^owP$l1 !Οj >aVq/(O 4T } .OY|&C駫`㗊,[kRF_a_Ҷ*>Xq?f˨hUx #]|֏'Rɀ*7 kZdž@~Tl֛Ј^9 p `El a+Մ];-ȵ{Mt̕o)D+ztYcDUxw$Q V#5]giЌEWL'iGJL[U;oZ~x{3Y]Jmn\ӍI{ʭ3*H|ɺ°QFM|$Π.!y[C,@b9~ݜl>Pqz|p?H 6s.rRp@:4'ޒ.llG!]!A¿ͱ7$PTD4']ѝl &6RS0*7ؓvXTPRcYP$Yu.n߂؎l8s([{Ѵ@`_X#bǶXW[7M0#(KJqv1i]nK#(Wk e>zCwNmROL+Rqd>pOWߓSb@#nFD;q ,yu~9B<ret468oMt{kPhK/*iH5z/T)9r6U].*$2唓? Y^d06qM=걁T;"; a"UַLEk+"̥SDHٵ&]df:i(RAx2&t7~/l!86m99ِ՟}"˶5{nC! 4fxғTME-Hïx,UR,^6K,GҰ.P2L-{2kЊ!\ trm5H9]T7r.~Jx?FyN!J0s/a= γ& ɻg83Y MTM[X%;μ(^u%}/'^ݎYʊN=H^f6=*V!)KB8B1T/)hL3#Ź ;k[N}G{:";53. WGmOO?(_!B4 4a ;m .R9Gjz-?i8|r5M}) *v`5vC^vaa3 #i3 Lfhi#)yfS-R'K0va3ȿȧ௄s&1WG {CC"?ڮ84 25!u#Yw弡=Xf $Fe7N]°Sp"cz)]P~jSF~^2$#[3Q_Q\0`C0O\&BewywOTEzmpy͍ @@.<V`H l'u^N78NhwHë5vJoec4u@5퇿Z|ݻ aߴY]b9gZa걍w~YbA+ׇsx災kV+5ӘոB*MX4kf= bSϷ`Ɯz֌lA~=%?6(bys:|f:%uЫN*僚XzE l] d ȼR:ޣ`7m2 ;A췳m,DE"sHVSP  1;رb `Hf{h  kH_M#1xMWƉ=( @Ke1G{UQQ":vkؗlc(}B+;qjUT95F)^r'N\Rc8a+jrl{$*L).3#pIPc_dhӍ؝'jlG F]IjuA Ef 9s%務/lOyx نJ]D'JRlYbcqO`ߞ+ή܅ۼ/QL6ϲQDZabJ9?DXPbz Cc8Ũ S%(  6 3#!\&+r/MŢ$`[1H-ZG_Sj.έt܁KrZp_K KL>8 x De*64"Ef4&`KAv$cmX֍.‘i,`0T7TDm`}]a*xs]{fMl0IٙHF\1E\q3wƻ[`Gq`V )At)5X2oIC'Ngv _~/i˄}L& myrL;3%cHd#ҁD^>ù dUZtb ;R\Us!r YC䶝Jeb}Ȋd ,wY-ah/W@EU=gv8}r&,e _];!%:nka*}q$F:&fF`bY\ܯdvʣwOL54t*QI:$Q X| e% xJ+ :4h.8m/mB1{T*m}ʾb EA)Eh{ƃP_67>aV c[M a62GX9R(ѫI1C_V`b`n}_(?ci<$2BN֟5Nc;ƕTNRwL9pF}w gzk-&%>h(r!GYhg܋w-q׫O %Ղ`ԱRoӷxݏ۩GM4{嗟l aP &W9CTP=TFaĉׁ˞Ϥn@)yk޽(jLD]]CQ |"{0a ,8.VAl> V ֐ =pHa> x.`%>m] *$hEh a'%!~g89Z5۩&2--6> +LMoq*^׸r}Jmˑ;Ub1>ޚG?D+w+ 6B>Rh VH) c$I>4)uk(M)nSo,*D6T&Y^л4#,.)xla=Su48Z]АT͌x5h`;+*KƬ 6 鏍X *IGQ>ًOۻR ->.d,Ԫ1Xx ৻m0;-ANH{cųFb+A7W -d31)5RqeJ׺c)]ظ*KOFM+J)ȶu؟T`p<hsv)D6uTo/1ѱaC nP1c-CjVWb9b'[?:,4 L)GĚ?KހLES֓1ԭ)c&t5't=PA [EhLu) rME#Q%`~_eQ\yp.9U~ylcm8&uhIV#[^&pN>"Bb0k?ɴ Ɋd&&my2zzƠQM1tUqW =gO`zaWqnWSV`tnNŀصy.iY*tWᘹ߇cYq4%MF{ ߉z "?=Xm]#˹1Wd-Wjs2Me叧ǿhŕ̛(zl ܹNŶ^n?[\Ws[C$2.ŁaTd&.#,ZY<yA?TڱT2wؒ~p̭!3DF%^٘,Ŀė~cϕ}zltm*: ='ϮM1zYjǙuJ|iY-+XA96{[|Hy4F:"{~:3qovDF,oq]i ED:L|ExoClO2)յiG&-zSDAgA/0o;մ<? &l{D?5wvW+2Y,,;e 9Hb19~| 3c irZxХbm6jLŅ,w NJK"xc?u6gmuHyI$3ރ_d^x}Ub]ȝ7Ι;oy7`Gw8uH'3ScxXz;3F`/U-Յop̻ Ez8ڻ|>\*76(%eq)3*) [DQ*~vS@r57 ]@?#$v |xt+D5l`2-/ÒʏWjN!WK8U98WJ;D+&]v2t͙cyN[rQ} 5ϐJGaU%D'p{T+<c=]XeN=>px3c?D*ƒdے6ז',w>H(9'+9%/m̑UTͫENWCqC[APvXf褯a %ò`n`!F@𺇍4h*Վ h_BOP7H `Y`)PT2k)#zc)['$_Jpg}W;rv\ݼ RGV`eF())  l Jh(e$cqJHpg<ě>Ny [46tH%];č5~sT*Zp{r}J }4Kk׊} }aRvgz(L ϔݜ;ʯZ;| { 39R^"/g bĖ(ƶG. )u>[ʫ#N$ 番BlUEGٽ=ci4v^,h;"dh% O븴L[<' vRZy?eQAW SFv.0&{t/^` N_g\B`K՞pA}ލupzsH5Z9vX\|gUB8Aï*rGhD%x%x&ͻq^fb 6T4up#D"7Y gt%:u'.@覙xʫX%ϳcsۚɁ*n{ &C>AĢ?`0~nv *sHCIt#KO iCEP]g9koB5S},l;5m8\L39+腕fF/8YA06% "!i9HbW1eDx;Su2 bY}n%d', ¯E>rMEҳyqSO:*(׫UϾm}NV")7CGsU٘ȀhD^Pnw'l*P?DH+ʚf|&ox~l )O 㝵cъQtz*vhN2yߓTGԊ6WRyk0|xImOnX&x>Y{x m86=x7ZF p 5VbbEpArO3j&6e'*T 0JS*?<&k{`{I!S Cw=j1Oɜl$ JGF!YC7#:?;~sK7Q,BjKJyfijmII@ȨKoP'M-ѐN*9mk(@/74ۣy l랒){U2@b(i\ME^gIweR9hGesGgh$5>Ŧ% :Mu h_Tbi¼-BGh?܌e(nyŴة[;1}wh C3Er+8}WD,?QP+1;TV^J?!{xm)ةFq1VCHTF@:A7dO;˶bgRj!rH+-qf3 >zzOH6PY?.ԙĸv7Hpu79 >>sق66FgcRj](4L$/Ț 24m.R-5+T%~DZ)|ʃ fKzN^R>:`\,nzL:Yŋ]-;1 :_Zfn>,Kbb)6 Ǐ#&?fQ=Ljg8FP%AF)gQpH. n*{Dys_ ~HcWp5c =&vP4W=J@>xIGj-魍qB$,L^[k)Jzg) 4"v6i[!,[A;ZDRMgU+.NZz$C27AzPW5m5 ^'o%G &;!}gdiF9-:J޴gv3_ՙ,c^rÅG=mnV1 .ӭJWEuvMX{ y(/IbH'b٦PjBvfaLÃlkRhuU -z&[1LJ5B{/rE |ҬPav5+FÁ$=2q}1W9DlXAx٬-fn!)e(^-_nP2j>Π֨vWV?fcG>/CS([-7kZ(ȥHꔂpWɖ2O`^ =K1G̀ݺiC_\;N׋OOT} НUIOoj|{ N9ɔ%BiϨ7S`st!O_>Pb OgafD;R44mpLjHzq:eXRp?˛jR< 8ڒj.գ'sQ;(IjU )s<{R>' 9`x]LN܊Rz ]+?fwx3H?xnƅsrv&*)IGGj< Qjr.l#3H\z|=_ڊzaԟ":!nCh;|dN5紟)2 2m|ZD(pb8uq圀tG뉊bWg )*ͫmlk'A 5%3K—o Gೝ.gW |6drfIWJugq5=i5ѯDx)Kl!kxV-doGb8hGEGuo"[ô AՖB!oWEEanFw❥۲4z1qaHħ\oޒ^ʍ/tcۻ6+އҟOMe\+X8W={hjU;ēxx1eMvEiL8 t]~+̛~Vod ߣuS)HOE*a%6ҝ.VJTgrv - xQgE9lַa,P>pqcqp]H4H CdКeQX|n8l'iH!/^m6&{,lVzb|x4ǒyh#Ah(u@8 3)tkkPh#yw+{hubÄˁy(5D Bs bDfn4U ho%3~rڡV>L!Y_$N;n˨e}a>)owg;t}T  8P7FHr ER649з.S006 g΢-|ud~?=&/aK[6?>H,mp4I5 EUhѐJ`lHg$ S1>)FxQtfJ {ܡ1>o6z+D(K A#>y]aZ4WIQS'G3lRPuo5$ c]/ %)K(ZFvo(D = ,?,ob9挻>Td$+)ҧL^*Tw\QhE]AVbC_Y8lŕT;Zp E_<-9ـסG`&6ݙe\G[qzߨR)X+RL04 V8n$ oˉR AD|铀{jk0tp{U]Pt*^zZXVoo:Vqxӏ2Sq(>=@߫^<4`R$d.\t8H("_93.X5&E+<)UKo24|ŏ;YebZ,) *yD 9! kr{a4&A9 ^I!nS+j70#6'`B[ڿ$/rͰ]OJ8Y4 .dgLY{_{ނ~8;G[A92O+mfmЮwn+yEyZ 튼-rR H^/l璯X M` ij.x erJcw:˛hC(țo4<a )pbkPE%!96ߪ7a-J$¯n$Wvilj J+xόhP Š,2.pfse?b,:)xy;wr:!#Mɷ}|_Aq륅gLe`#;Dz;9!.YMQLfVŲʒ֞%>Я&1uD,X/^*֊#Ѐ %_5׺Q㔍y Ck]8*!z460ؾȖ_C.chQ2X "UbЬDa= /_B;:YﯘfŌ_ӓ*b4$CuP=w 29˟hFտje $5,S#B? %Cao8Uf調,@8) #;,|1vi)O >Ww͖8n8I k9OH8fPMi' s&L p[OMC my\Ow.OUa^9B'ӭB['%՟vVfH - SτKlE$}G|&R]"+$P9%QDõԸbh/J@%ѿhZ΃33x@Bgy0% -}A$m5BA.|B+P6ҽy̆bqv!5(QKǶzxzPNf% y͑ h2J\xRX^uWYѿ8=w m7/A٢y 1;iTy=tq 4O)Cd:N KBt4.:Pe$J #ÞKG_XOza!E c|Nc$s^YtbJt:lBgATV'lt;['9d1~ /@YwfU^F TMuRIJd"鮣]#laL4b}U׎,s%ƁSݪG)e?[s @0FMqCꟇIop7{_N/PSf20 #r2a?k!~f $ʳ95\2xT8iE']bGXzϹ/S>roač;<Ey@PǤAZ8lyg%\ذղI -xQʉ;T _BZKvT: $ H09Qj^UqE{_ZsdVב/dLj&ڕ_3>*L|Yi3vD^>eabJO "'mA|[mQM(omoᦿToQdZ`ۗ!Gb#pAYާQq\' '<ڙ'NxqVX+Kj f9yטO%"b5 [d"8Nc vޑ]ϲaj+g'*͗!B"Hva a(mo5ܢԉE=d2 Dp?􏣏jId $6J{qMwRr> ye3#Xwاx4W n hx` }f5)l@prie~q]py"xt+$qV'S] ([%PhLJ.@JȬi~ Hxؔ_ڷ31U'^ 5tNJkE)\8 m$f̐XukW`O-zbĭdFCUm^BxPkom>{vt̬UԲ=-vòvåFfMQ{eKB(eUuW;lٿ4y;YpE%ZfYE,1.֭4&$mbH?mǹ Q頁4بm9$/~PK蕆>'?b"h,Hp} i o!v۰)<H8q{B#fִ*U䊫9Pac*K6SbNΎI?`|1p<4=25eMNKZ(\^e'@=;m`uݥ"P3Q⪇lT(Jh#w?7Ya R0'}z]jƊr89hPt),LfS)`V]X3,m>-.[yX5JZ$Z@Dy^@>VaA=pQ_"W E6 (u`KDޜ^wŮ0?_Q 8$c`x^Ҝ^% L@7Yx/bT?3@;ܢθ%зyS1vBMnN)P/iM]0U1}ˆ @eqbZ,| މֻW![h`M=~g pK|eM^҂"`Ă}(:"oȼ`U7g;.wb}yc܆D&ԃ#!" Jm2IC~$ m]_Kg+{ $XxDp,ʂ] :  ~{R~l V;lK;vk:9imAkTu<{1|I.hG_l`c]Ol0 mcSI1>8$Ac) p 9u1*?B޸B )qAfQse…W=6UrB g]xIjX&97D˾Fv"۳=yϏG [M)Fqe%;(NlBtއzUy-IQaQj2+8ٓc4zPYl&_'d.ls=f_V 20'JV|:a96z}ax+o\a0,=4Q}״t*Ap dCK58QRavݱڿF~L?2;XۻeKKӨ ꋱ#$P^+1%Գla ) ?J3toŃRL/sQ:K~n1jT=L/򏥘1Us uػvhŽ>$żx* BS2f4]޳kӶA3ԩ__LG[r;!t29`&Ӕʦ{ |cס?;WD尔@Zsm٘HMC \o5:vk _!Ԯ)("FxpNkC zȒCz3#iS4mKpˆǸGGYD!8wdyI r}=-@CZs& >#(@@lb4:P,08B؎s(PyWtEkv#lr1]2y}28'}@o_UD4ů<"_h;upb须E&$8kzv;0ZjRdzrG;ל4Mn>*QldԦ$o(48A~𓞃4"L,9gt+BIѱC}ky)vPl+mN ~'O.j:f拯fS!Lvni{} fάX [k<^Cɒ` C|>)Ξb MI sȆ'(^Bqm6Ճ3m( pc_6!b?[6ub 8 n/ZbnsB酷BaNW^VU3ʢSfu@#a.H<{=AMz0H+ʨLX:c)oT9zpr 9˸--~g~~ԫXf:vge."W8䶊bkLCՅ%΅@+5_SXH#bUN$<\J(!o—֧ na'n\ő+cg+J4e$;3WsqKL`XQh }n-ռ?ӍqZGY0oޒ8CTr~LAh?bXO+wN3pjRI#gZcۄB(lO.ZS<+&K:PF X],'t9Iv7"x͇4B p\9LAZ;g v\ubKkAYa@칟؎f7mH9pڒ"46S).ڽHCcߌ<]|,~C^i! ?P_;(ԚzW X*{TL^тcї5B,"՞w 8 >O'^w,2 q| AEYPaůƿ|߿w ژ+\ $v#_M@V5dh.C>s?Ȋ] Nt3 $L4 VʷcPowu[ԟ\2U$]dȯ\e (ЀDx-rҊ[TL/6mTLbV~9 xIـf;`Z2ϾY\E)] ipJ)2(mfe_^#}'|"f=FFe!3+LpTמrr5H7vWW?}̼ps_ni.+`-ڙ ϴń3y1;_h$z|RSڇlL];S܎&H48NP{8fr挭$'Ql+C 5} ߯Ļ{3cEӢʌyҋNߔhk3)ƕ?'*h[`Bu;E@me,ש#=PGODPV{| (;p靷 ؎ѢN,ܚ~[°ԹR~gke-PĚ )Ac4;zT甒"i`糧7:3 $8Nb gyߕZAy\a)㙜{ϮoYw+Cx~Z8 һ*> pa1\ vQ.%֚tRWTqOxMz?#(dzuhX( ˣc10#G]s%~5 ζ| 8b.|@IAÉcUsMC#k5E'm8ސSfE *ͤrύLu͗s$;]CnVj0W<6#N>Ü51_s_ ދ"JǂV&(2SR}zCzqh#Yu֘g–bWz?ScFLUpbIۖj2_Oo51xzWPvmnw::Oh%ׅ\ҋ?Mvk=L$Kځ3 )Wy>(T0/;n6|簓~m ̫hW9'x2WycO#?sUoI_Bw}M9%-Zɀy@aeF|bSv2MNN-kUڔ.uי~ GB kLQ=JS>[ů*<@j~ lr_K_z4 &kg7<.C-̀=BD6og&]e[Wq)Iz((x#q+^TDk(:)S t C/6| H{{ ˀi;z‘c5$q:AN ~(6bm|Z { ]IRs}*W;v60 Va }tj٩- IYd,G}lM|jp.Ye&:{QO~}3)^䈨tHR \7)>*IAE ئ+:_ IOCx\ymL/r=.Hc 9 (z˶)ؙGijMJXN=v4peϚ4vJwFg)g9VjMqy%RR?1yrm2#Lq6]x"iL,^r2LTُn`LAM)SkО$݌yj׏q{CoG"YqBY;CЩ-8-hu~l0V٦M:L\\?ԳȆEb 6u 5LP}$8DA^! +)%\bh.(,@ תX&I&Uu&2#m⧞3d"pmmrbåZtm58 @dfX(~VлO5k1 A7'IH-e66/z!Z0wWs@NG1Us_Lߥ ǞCŧ78zHoUJn]-?jCRH |(!x`" JLgyL7X1!I\<9.A@ {'3dRlR5߆DIYqF!9=)'"cM v7y}Gk"ܑemqYJt_N|ᄳ`UOSoyEVvzn:ЙJ;K<_۷jBVQq4v_jڎtP \WqTv0y.32ݲ~[)&wTޓn2߀"R]k,KKܣ=[kWܹ} 2gqD!.\ 3ZO< '(@Su#{MpgrHYp]Hɧ: ɑ:v܊r_]y%&`䝿u4G,dycqc5UIx_[v[ar6a{YjE锖#iެ|o,Xeh`o/MQW knIjNLӉWyyi_- #ڛJ*,VF.M}G(}M22-Kv9)dChn(̛٭K*%11m1-;鹤J++oiB_/9TA!:빔}{rmI6Bһg!1QwVZ^ Mj*,lrfyQQTK( $-ˀ[TqtkECi/C ҍatRADѕQ%Yk_r%ƂC 5bj(k3O;5-)c;{TZ*#LҔ])0.(:xfw(>c(KT84VXiuI91 d>2@(wQz~%%J\*F.iyhe?܂5*Tg !'9}Yh]l" A- i(ds6;~'HIm~Skrw֓(=Nޯܲ|w{x? mg#hNZzOɃ4&AX.\9n撘ȧ (J01]X~'r~Z,"Z.t#(vHf\k8Q9Tʗ%-؛yDjTbЁ)̉eq}z5tG[G pU|8!%>rWCUO UˊRCk*ubBٓpkOVIm*b{ɿY<λ+#e|W]H*lU&&/gyEYtD:0Bjz #( Ru7/3ʸ~$eZέ3ALL'h< ꛟ;Sq.e2 ?V=9ߨH2JDtb&LU 8P%VE9;Lޠ tsTQeKNw[w{8ȺQs̉93uw=wF<fg\n+̭nP:`t׉߾gP/ HF>e&ck\-<#d !26< Ԧhb-:)ne{ehc^0 *٨(pXfd4['sBh9` um`=a w>H )VPk8`∛& B.# {Rx +wRB"T hq+I=TOPI`^m è|5*cIX˞ϐY1,gHmm.7{z})kg*%׏iL\b* rǑxo.$!ۄsC{v0J-n (N4{ 3^C[ݟјLy~x'DbCYo0(ugfcA]7N)7n0.R7{ qbw\k$9a,#+>jtm(l+] 00N}OM4 V ;z3d)e4 'bzoPl)-tCh,i ~Bg^2T&$N>r8R8}`~ȔbPdBs^ALC >կO }5eH ֘B 0B\^_ pr7 :9krSKD8V2 _2kJ-c6BXЊ=j8e 0.X)S3w+dZ7[9UH{QR'Vts9!EI@V K`4 E{_Na7)-&t&6w F۠)5yw3UL?+.A.:r5, AAz Sl&ˋ󾴈+[ӝRH.23Pm:8QiIT<:M@!b6I^PY9lW4 ʧ l&H(>ћϳ"4%|yl>/BOΏҶLpqx_۶%`|p8EibԶV_g?2c{22YuRgk7ƈRR'D; D C-넑 e\V{FJ}~4cgK r }*(O J1 B]39u`{w9aVTV*rċ5e}~y-lh q4ZQpz" ?U_zZg`RCTDme-LQ~7ʱ$X6. |))6%̈/ mѪhHג>skp4;rn>;*5+N$ap@fONėz|PBKg G Hsro H‡ҳ7Qd)vjEQ>XK p<=Da2T3*9 um 2T/rcTnd S_?,8~ |&BHЮcT _)<5rIT ?H45Gia?h̩Ox:5SqW8>)f\H~kK2V7Q'e$ҀU3ү-!5pHdoZȟ8w\ YW X/qgae &`iDϼMٵ%+OjIR,ß]x IR~b۲bn?fB7vC-w|]gQkQ>ʹ2Pp +͖sv 4ckMaEX8!FѰior9"x(:!P~TF]g3B\, d|Vi+9أbOQީ;m?מFqI˓qx/n$|GV4^_*˛rH< w ]U;H'+yy{_xg٫#"#Xbd+GVzfSD4 z߱Ae;[n{ku.l]7U4ob N8UE (zR"w=7V39Isi1E!U6@ Dy]]tbA ?Q-߃Cw;e?֕f= F[P=oM 8*6sdIi`[BIba/ԕ/ǽ׏ÀpBXaU byԑ{ҡ0Y*f%hY[fǜ@vo7F$OZLx/bA2V, q:E^Y8C j eiފt=1 pPڝ03wq_\#oIHX0ACkA-cRɧ?-)=V-"dQ^kC+d˩y5,GKCY ߩL1% !IɬMqkAhW9|t,%n/hO7AK LLc,'-N uvZ\;J&J-S^XAK%q-Xp~[OCل%1ܚݻދ5sblfi6dm#~"O6h$7{rqFw#>: jfHPy\hzӾ>bPrt\cav.1``@L0M9!^|xmڬ\Z`T |8;rjO4m.uȷ#fAqv|v;K̞Ƈ 竻֩Iy}qJqc2T (9g֭~H m-0R +H<-1{zο3 q@s#E8ee<$0t\$xW3؉oCfZis53{:8D8vuw(#(ϞD=NvDfihSRFc`Lb, dsU)8K,æk'p :Z7J)hq'S q}u1M ݭ:,>Vb#?J1ܟ2S޲DC/'(;q_%^!9UXt/!ԅk4lE6]swA>ж Y !/TT0Bau ШV_&*lIW8sEe=ؑ+P\$fGTnT5MjȂv{fwl낁WAhRmٚ.LXQ^Pjg&ߢ6͙})SmPO;%uun%rMh".ᩀmN!p ~$Ż1.WA-fK=Vl\?U}8Fs|@Ol'(ɉ7I3Zz=c9ܿ&jٕ:DSu 0ρZ[y.铳o[mǫ≲~H1&*,u<#Ͽ-o6 +_;$,]tvXϺ&rtY,5gTkFY_@1aE2>([|zLB3@?< |X~1aPB n/~^J mClmV mBCT nQ[66OiVϹ˙[j~K| | LE}q=4^=d]CO?7chFr;em$17{I5<ݙQ\wtM?STbdRpw*"nl`8r_pO/D?Gj^ yU{hޯ.sx/@54Pio)~I W) z,B'E"mkkKj21(ݞH=sZ=?2 OL' p j71ݩ k 7R%LIkx-QK AZ'B3aHoG"gS7?#6ûX:/Hy5 d؈K4僳C2ԩ77r2GJ/̉ˢ$jAdN;C5˂J"qqnݼ f ݾ ,^f2?˵!(Cw'tbBqrȻ, N!GsW|tE o_D+.b9vEŠ@br5cݷ&~91 |RC-6%9DcEb,|aL0  W嘱Jô9fW7.\ ƿF}㻉7 vP+%pŮdY8Th:2FFԖ Gm0 pڐ( 4KEaj%J8(~MX1 qҾltu}g1hu.f<̊4֏{݈FAxme |r6 ¶FQR',[9Q}(Ң0SozO/򞂙^er +aɞq]z~A2woOd }Y-,'ˑON/ niC]_2S5{) IrWнBb>ij -S7Ԗ"`\`0&*%Մ9bL0Kxp$rWҠ* 3 73q LmZJ8f{xÿ:tՄ/:]D|0e[)ѦcKc?J4ҩQM2@Ր  JiƲUͮxzdZ3HħLDfu)>7e85=gtC¤_:$(?L)սaT:E*w}j HHj ߲(kk!Z.+h4 z9!;`##)w 3|t)*H:g)9ٚTR?d]n$NXчsJ*1Ϡө4o^ ZPf4}̖5-0e5:IS_^r tAwtϣڽ.иxU[Z jO]5`a<ހYW5mi΂s:) PYeӎ0v 0$G{3`)U*Kޢ4vO۽H9q oot=dHw6}+e݅76^a՞9<}C XuYk ?W+!wB.\Dg*MW4Agٯ/ , _kiHBu)ú.Mmu"Z+Q"3~6i7gZ yɬ8; q~E?2Z0CtRsVdL0Q_V1B+uWV/7n,348c mpV@ND=ٮD р3A_;0M* +/oX1ߜ,|-J/+QR=@WmS>P/Av SVb w62UFraw;7(#JhM_=YQvQ|xne/0F6!1"sᵽZn*SLy5G1!*UUIP>l,PߋD_$T{N:ybE犑szB3CVz lO:d*QRz,I[*m?s8Vvٰհ4P&VU!\b" ZT.a& 5Dx<-p9׽AreW+ SΆ (][)B\Di:%CjPBWq=-PƑ }*Wٺn!^u$hTS<̲ bOd 2/bE`dC:z 3n.qYFB,)_mMqIi&TPaԆ1X:PA1:G%jXrP rN&/U|a-V1PSR59)N~qԌѶ0R)'o'ǎ$HA^nc9kЩ?p-d;5)*.ţJ. ܠa/1/ʇP/ D[y!кHDoi FKݺOs WDJ0Cp<CAFcRN{_4.䚰k򲞸|4d](GvבxYe481 Wtڞ/x?&/x4 8k; c kWuly]Գg}Ճ&8}?"wXT*|` 1sQf]\+)k,R;3/CB,e,_̨&Ik6ptx9+ŏeahKf|CrQB];^$ V>JvX nF&ei~[~ >1D!lu 0ܴU+%sm|C~b;N,$}k M F*9qݬ1xJfvb$I8.>U/P+@]5!.҄w!梙RkMY2/V;&]P(#w3tyCz)y4~zymqq)AKg!u-*)]Up(3 =^cH1ADN2Vxi~ۻde,e?>`8WSwƷVBN3oGq=uHΦS' mߺ+ru.!~Az!B1=aj~ye}`U},n %)],4akRG{ k]@Ԃ_,^bR込 `+Ƹ/@XryKE\XI۽Ї(əz4r.^x7i \>P:;9O \{=I:jh;zUM}p޶\m݄c 4&ǜӐIEΣJdy3M/=vxBft5z@eO ^6w3ǝ (;F4zvWX"s?74-:TG٭hS6˾cֶg:j"y0 7zf$<*3VDiN?gV^z<ҬP8Ed^k C 3^OyȞrYoTYy)z7͖=K}<:LIK INg&GMĄ lѩ^ 9}qjɥ Nyӌ4O !ڒITh$dJ^^wѥ+O2vƟDDZ#AbNWK@;]SDx7rp&lbdfC5HX5s`.7X,hc:顋 :'XCK(i+_亗7ƧN5 G U>d>̥n4LAa~ۛECfvRb̭Qܻ"SdX#%@@Ne h!" d4lѶ>CZKtЫ]8d*4-WHЛ/ַC ^RM&(yɶR D[;>j3 -QJ_q5܈\=IJ/2Z"}JI,)DaoRqBT $@"-vh17¡DR%&fRɩ$&on!!X?6=t0>_ !htg'3[q5~j>n̮ /`0 ´zcSxlHY*,ͰT7OaZ&8 BYHDac4*i2Zp1iè ?ۺP½y VGw(g Cbe_f`T*|6M˄TRG ==eP,rm|,u*REs6ʮ'Rȉ:Аfǭ?h7-YՖiN]1 &kAdJ6X&1G46$f+h&?dCI:(lEјfd9ۏg X$%WO="Fa1UCn!jŞM0;` eJ1Z67pYtmi.o.z335 =.%6(Mz+!bYj"%yW5b+:Ux[ތQ&=3.b*sЯ(W|A[Pbz## $dOHz{ҔOd 3e+jɯ FH-HUPyUR zQv3qAzSz捤anE7ٰ(d&Jюa^d+]OAMs+jaď: wF:rI [FcN8^¥g5% e(Tł`Xz ԦZ[05GC՗V>bl[7`drxH"(W/blkM iYy3 |_h*XZρv߀D @ bڱ,,$'iGD L/07[RO9fNlzʬJ7Rb7;C2Kdـ͠'qFTOJJF\lV]x]古Is Q"$+u# ͜JsozmN}/J6lB o]8y<.j7~\[RoP4 GR>NOϾMO)yA; rUh2*}A@"KB[~N?꧊e1u 6{ 1k@4/3:شrm (-خ3e ~y!Rdyك35d`j2憣{Rzp}Q2Cs~(1668%% 9hդspoˆ;;-Ɔ )XkP[\ خFv>5A3@y):HG!*h[ ´Bb QXus0LWr綘2݀9ϛ'j71o(F[u"W3=iD,82.8sq֡E~RjUeE0~#۳$lzU+u-Yj*[ ћzΎY=ڛ資I5'!uS2u}z'-x0]C<˗E-#u?sQ-[GFTBg8~C 8RG'(cs^۔*PZXٲKm>8JPeA M<dI!ґl eƛ ښ, `6) "~4"B*Up 2]Dz|&b{0NӳC,[K\1sș& `!y1}imVҸo-WK6:K9`x9|l{Ev ӫ&Iv}9"wnGQ^p犈s R?] dmL ٝ^ w# I3Ɨ<ۦ0zKI^lґ| :U 4N$ B B-AP  3?o$ux,gÑ=ĜD/tN\A or-WPJ2]3~ O;޼=G4͸LNkNF7\/j*D34_dwz΍CPxY>pr~ +,.},c'kYj2r$;*NM-]U 7|s!%ă!m0zLI5tKH\lUATLzA%IKzY{7alHD”`:gE{<<\9TwwHؾ,կ0[J M R]?(AÐ{HG>GiqI_Dyj [s7)$H7=l2yW:ݸ6 rO,n/0m?@ 5{ytnROJm_8OwQ88.g_eD'Z䯂y+%AF4l%zҚ2h"<b]"s[s߸0!X[.J(൴e"LyMS|1 YQjڙ? aL1E&o }eCz@yp_N,Hb0Abu9veV;g57S*^"cycwˈ% V_MN+lkg޲ I TX[z%"JBTITRM(ۣ6A;,Sh<;ݿ"=73;^?aTQm(_2!zlz Om+ތݠȭmj5+u|[GF\ٻsڴSIiNTvv-#I+$Duޡ=\ﶙOҝIzGqQoafhyFxߕMyR㍚f`lLU-m=<2hU^ Rmw0Js@Lަ+οϙ>I$15)!1T7SEυ[SʱEݹ:|\<( #tf*x[LM߷AZm!c cɗқ9RCf{zT4?crVGP( 0-o{QgtU)dcJ) t'/A@",L3#*'x=(b‡z{{a@] &HDŽ:t }hw@T WN?wⅽo;ٜ9ϱvf{:~?i(=~n R.TEw#<ݎ`SXX?bDRrsN­RrZ U ! gG&x7R4zܽ/#qɥjSQy∢v@8',IZ/p2c,gj6Q&d+`3Kڕѽ!{l̵&`h']7GzX KPh]d^MZj"/`)Cg^%b#~V`3឵M3EtOQYПӎ8qBy)#Sbav}R|4qGΣd E@0`׿dvV&F$?ɫ7 Qﵼq| :m/%4}C>`g!5[Hz47=_t/ɡ$kx[Gܜ1|л1fh'g~=Lf0)< JK#1։rtsx nϲW2i5@͵CO\P aV#FΕo""٦ pa-؞ӷFB@fbtvԝ1["QᔐGbe,L< (2?dA UɬrCkTP M=yE2^x}\+^Jf(QEoʥ =J`\d_#̱_qIiÀ~KB&pKU(%0dXh o5OigސPdL+F޾QV np]c:G/efJ}f1VfTPvUy$O)7y?Ԫ7Bs-݊kgRJ=SwPk 7c3/\K`tPJY0miy!Q)#:ȍDb1dRţ+b--%7Ҳ`jɯT}s62$2hG΢ kg(.OW6kS`{4c1/ =2ޒTfeƙ^.ᚋsLK TyNQmvw U8oƣt<*=`5-+2<`L5]`Wv"ʳQnLڥE|҃{S3H^OC}VS<;{ԉ.Ϡm }km 12sgr9TW_,xTUGuQ'atDV"!%.2z&LY[\olS/ZsUoipM-3Kf)C2PGIԙADHy K`j=~srrvl#M#*w~NyHqR=){ϵdc E](6WwUE]ic -Ҫɦh"R 1(Ur? FK-'Tv3d3P[{D 4⻤r&vDrR3%lAW2ġINM0I[Y1%8ssSwSݷw Mmjd+CAe֗ۛ> ұMkE.>n~.]FkфՌ guk7N٫QZaEU`?v4xB 1ts0)nII2ܸaQTv:ތ-+[^<@=|ʭ-AJy"ݼ=bבJKIhn*Ň0}ٞ%kwAtίǎ_ D*lx~%/%gYg e2 ELSezF&Y׶ ɓ@jer*d=jRЗSʫ&/BJx*ł/X޷Dڙ=E'\`1Io08jmZ0r^;ے>AXC^'me]O=QeAkMrCx=Zas2ZECɇup *M:GhOIz7^+VwepbsPWF۟$#'^tx#zpxp!{-?CyWz7]H 1-:YvBAh+ tS_U3 27Vvc5^wFU٩Wl,i*"vG+äήR]e/Dr+TK4lQ)Bpc(E ү(_xBn6B[J JgֽGQ"*lU$Ւ[؟ 4ը >,G.[ρwaE^Z(d' 9 ӓ1OyMy6(&MC? nl$ޞ? p6%yMm_ŗjG3n%EɛM?[2Q0ݩ RD#ݿca]*:k<{*qi57Ɣ` :ArvQy&|<_/_X>/7ʔk]3ӣ%ߡ S\D7؏߁>' g3^V쵟dUBV7|n͵@77.81ԕ&n) r8rLm ƛz9U7s/CKP_oz deSKkKA26Y{!h\‹t/TЈIrw1Rtɮ6$[gU/C_uK8nWvALX""n /F[ݷH0DX\ьu9Eh uw 7Td (P`ح<| zZjqPyqQ'.JHA8E WZ N'bR+:+h<=‡Gt4E-JzJFyBIń A8ֽ(=r7Aj^dvnʩd]lY\] [>Sශ7\ gH# iZz!3vU*0Wɏ<&uQǜsE ZvNZT<#W >?٫Jw{]Vᅬ QC'~\͹Dq} sPٸ"exx)'n!(QA?$8*9k"6 ]q#Cd iZ3iTg{Qsn3Na6z)6|H $GQ|k8AA3ljTyo '1mj@ BBs6B17D#D'=T__* ^26|FOB忥[Pف(Rr;J]=L@>|dreGU%V7Se&mwf|IPjIs|==1!JP%AӺzZQoPvݱlc8s@4h x05ه%y rB"ʡ]m>k質E UE=&B5X-2jv],;τ * QBxѐI-^h4-fBCObC3HZI1Z8_G|0 +$\iz0Ka;c9nlup6 3;̷ ;ѦTcٵ[ZD!;[T V[Wjb' Po[b?t(\z'_kVPfDjarپlx]|g/HM k@T#C#c\p?!h[s* tG N/ OgD24 -y=bGPt)ypWVA[oFIu\:ΦIYwfSnZ)ѬmUYj>M#i؊A GQ

H T 7*S cz,aحӀ?vStuD Ӊl,4wq);wӀ AXwR'9OкY0K* w/hL (&_ ܳLCGe/{Zϣ<U#ݡ]W3y<7+(*t{nxbg>%?bkOZpt n;ݏh,KpNС0rPqn?*By#!b]c^k3TA}:¯ht{K$'B,ض34?É bR-Y\Lg9lf>9U Ǿ_H65B\)<>P*OxƏ>0I|d'DQ?q(Ž+>݊x}B*aV;M%o_nk؞.;^oZZ#+>d(E t!3۷$HÑ^00P`(\F<8l瓸jcAG$PaέN{Q~ϟiFAa(#7.i5O 7p3,``͐n;8ON|'À'H>Nvoc+zI+ O5fpNmŸ?6EJWRi_`EHn L;,x`QKt k \lQM_Wτ`&bL^8|6%<'KW<ڿ_zŒ8jt2OSyyh@=N/DtVHBGyu-o"g/-R΂1J#!(}r{9x% 1 .0q$gE V7a=8ѹ2ØӃJQ$F^>F$KwF[jߥSn>Lf8PF$T5'niNJ^E-ĿP}93Lrl2Qv .Ж@܅,4OSh4m<}Ż,7ɢd4:tRZ7ϏrJb**<'g*X_(}ki[RjwI~=s/06$Ț?c aP+c@`[t~h].gӊM4-fi%`E3E3OۇHw^T:OU0dd8y[xkx*[ c4׸HS4_[tXbb!)H+):Y<%j 32[FbL2m4phc4? -\=N  9 &ivP$y[4!Z_iNa.e*,7?.ns*|1d"z6DdbgfD=TȫkF˳š 'LiALZTal!r[r2(n0^0,g#^qc;Qm+!j @s>_f; ?joә0IZ3 fA1MҲ-s 0r'@Y~j2F~O$ MeB?O3%.]f?qbݡ͏X5ࡣJN`[H&re.(F4BItdE{u]8&G+} @(5gE:"{g,GCx"_HmXcvRt5wG_!k3l?ge&-dXjJmz/0,MoHu N qPЭEât[>{Uջ'f6Kn@/U<*9Ov *Y=Alg4x߹fŞN;xycZB9`"V v+p\XFd`uIg J2yR\mWyb0ws7t*CX`(D<=l Iq'9Tk ;p0&;6+ f!&ClS6%V'13N„Xȿ+x+9 iN> l^U܈+W睛 %c5 X=WNj3LtGn3fH87yDC%aMTOVhWEh[ZQ n37qj Ayho qWy2z"v>3LKяb@|&sk~~rvƗ'dF F|c'"ׅ6kSh.%󝲶C0ʙ}zBb2l(%}~cM~CjO^^sD` ZZA/zD: OPl`l6֠q^Uo}ĂH1;1'4"ШAwmi$:etxՅlIWX`=#sd` "G߳$2Oԍe؈v!-Mubgd+ސx׍1"MARnslְI6RG(|(h^BWJJ?moќv] 0{D^lrh}ȧ ' jn(3Ugq7t6mQƔH4!t#H&"[++u!Z5|77V3u:Ocal7Ơ,&8|煇%`V/x}̓""n*Ԋdv][VroNq }V-\g%PLD n&?oJ*8,_}GV\QywK:z4[.{_,Pʣ6#6:'2 <e&X)[WMr nGH,/p۪*J<>npb:zx]Rгt1]Rtת˩5n& 0xYuCT, qGFŖqH);BRz:L@0? chP"L]n[ Y)5ЍAv{M77]aR^fоWZ"YCt.*W&DVjPPeCft+t!?:.R&;Ç4ѽex pJ!b0L =jY[FQ%UpL(-\B<+<7p~P(WI-'qɟ>|1ԡ |+u[laVK40'R_;+$ZUvK MLlZi$%M B3qxwt 7MiIGa9xxe 1+;򿀼v&'+D, )/=;x zWU74 G~Xd´,0 O}[욥:)JŸݐ)hn..`)ҠΧ0hswe*K|Lc&cw19 Yx),ayd̈_ 89C,SR'\Ec=\-+J%oA 7bsȬ,ވKU I`N;hDˇh馫ݬ;sq-!|IF-"p㣣pb'\{"Jl70%n243~C$ EZ)ڔQRkπz$ӱ80#_s0Æ#Aߘ~%qvpTuoҸ e3DWPӠP ߸ \v[mKy߷#(M=*Of#2=K8- 7 3G.Wcz[* +i$9 jvxWyTf{sO\'1A"@Z}Xy'Άw\ ̇.#X#rJgNc›$Aj*{5] f`?[8Et0SUhm!ʦ ih7v(^Q"cg}Ϣ"vڬpBgf`)kJdfȟd.]盈1A\{ÚHYJ}E6Nll0L1梅co_t-:8dݕͼ,B#S̐:o=HY@Fi`$;JdžKny[e=d=KpITSDW+W48~q|caij~RSEVjjxK՟6?r"C |wOtAy 쑥V^ܪ{yE0ֶQTM4[ MY`pڨw{DV^.NoG(u"2=Zct׶JfEfh!s@z0F,?i]),.G3Nj=l|OyB,(">OΡH ʍ $M0ΛI:Q%GmRal7BM~ 2%R0(a@N)윽qTX[rʸc'qX=g7x7̫*Z\ZS(&C 4UszM}oEV8'ݏ@)W=~4a#NeOiM h~mpl@[<*uQi n"ހ9Yb~j'ū ]j3>c>ɽB@9C9uݫ^bCSym7$Y IQpw"U5 /zVqqr37l38SI!.OgՇBHk|cL7`|_XlrJaDڴLiFcLbXFMXb3F995W&'αKA˄ȦL8Whw/ҖEtOjh])NPt y5s)8*sϤ*>`cO>KCx)NlզȲC~&ۯ}i n}ò+/uwʷG{zQp}j ŢQ'\3fwܕi6t| 2-\$ƾZlD-Y~DiFTT>YNemۤ1:oBPA Ba7Ĉ l#Nbl(9L<Bl++pr6v挠ps`g NR'saeV:"\Q|$4 Xė{=Z賷GqM*5&|Aޖ%k{9o&_ T YG\5bdN+<L3^VḨ&\*GZ(<#GLyBODsͩBc~_#eA}}WT ԝYWJqO"; »^xGۤ@'ꆮd'ik.K~V  \@7͸{ܘ̒4xYV p:bFGh$i-Wߔ9}sifr,R)A9l3 l*N "ځ4ݚI2By]SB:`F?F1zHLL60 Kk )T4[/q?lu-ѲxZLW]aO[{FQHg{j ?,/}X ߚѤs,>)%%+^O-t5$\'p3֒ Qz9 +<=8 ac;NZ3l06YRmMn.ԷV!LdmTS=T²k+Wb.*ʌ[됌'K2Nmkjpma ™z8$&5>r.l?A zqg2jYw;?һ$|{ZzX.I=H1s=44E/X bsTȹL'x_Xy!\7X%rP9@r8l߼ iC&-NĆ h" ZLr 1bz_"~M(%YL nvVsޕ,Cll$ ~ʄP7y:t\s)PhBDy.` ѫ\LJIg'2*m8P):ED ~̫3Kf}/[RҋVc҇dj ӉAN)6'GQ?NW&/i뾮t}_ B+ XEW}n0DQϽ|P rTkE @C$EK1@evR&Irtf=*c3Heg`K(J:dBM:SB~շK&Q'phEczq&_C5TWd15C]s4V4B 7JF"$y &mZ[Zwj?,JN°AqmPaywK3ȏr bFM̱!XA H| #sCeQ"qUCZxO賈/?uGȷ!s62U[ݐO1m|3:B,1VB*^@T"Ev9^+7 +~zmlvΤJ=#vTNͷO d̚YfWMs8hSY̓#H珮;S3xR3'25YRGaz ԰ZB"H 2pv+OTWEoIJQ%ɃeQ}m?'g߁P)f& X0sN :sJlgMm:J5(;+ / 󢜆j~.j8-Q>d`Jժ5,<>-,mHm|) Ѡj(Bю <ttV;l&>q6E ̳KG 'n?tS֜Iʤ`17~;x//vӴӡӕNF 6k$GMOdHQC9A;qX7DU]Nx=9eָ IU& vE@ 垦7W|ݬ|{e,q:3b8l&ZԧBkʄ@d)YZdJDy )lXe-O/YLigۋYB&m+Za<[;; 0|/zҗ[_U,NCV5c52\.rVoFv~6F&yp]f6ɜ-4wsFZUZ5}ΰCZVb4_ ;p :y9EAᛀE}zu{QÐK5SyԘhНstb:J(>G1`W.n\n 'ɞ0љ'zQdaDb-,4rv[VK<{j+gsw 0l/uzP7al0~ͱ)Αrߧy'NLvj]B.} 3EQ$_T2d`E֊~tާd`nNnXJ1>f[͜y9t)M%I&+0zL#OƸjI8F*l+z (HoO7_"^r_|T\7 <*JK̺ U3J)D8Ul`jjzq%Ԡ;{0ѥ8ZN_h`ؔ*D5 YB5fwq0t8mFD4.Mfn=<_«) Tۢm*,ջ@Ý:%/u;ͣw0S|`̓G&WF՛wq,/$,H7],ضuj!oXG 657:ŇYNP$\6L({s+r~ᱽL!::LsBdTdʋuqY]\OiDN"кYqĴ끐58Eҗq 4;I')u' VWyZ7 @BoV *7t`q moy;g}E$h5OՙQoL$ R[OCw{BN}AuCq#`ﳱARS$!$gU 7tɹ}@b!ۨ0O1u->}@4:o;wy&HQ/&{v"yafI/BDƫ]׀g1{.2M"y̘9vt*M/fʽzse}POxHi fڔՏ}X]ΡmtT5QD<77\w 1'.1l p(].@/r'4.Ȗ,1B9$Sl ,PNM3a7d]23Mх}ą{((IX%?1:`Qq8Um]єڜ"C%-_ > uc*=6u*x^_Ƽftر.% <_Um377C淵'^)si̝3XyhJ8z.?jw5!XXCNfdZ>.iV9>e[U/oF -ǝ+NOE8I\ϣcTIO4`u7^xJ;(%u4FBN# (M$& x]ؐXJۍi,Ƽy.{ Cоiza(1O ޓϏz}0 " bk&yFU+ihXu W{}<7#"7ǴC0 d 0|>CP*ȴjL u/Ÿ/fE 1pJ!cr&ӊuhYhW*_0K8:cl`n;6HޣopN9A0I\jtš2om,zy'K +C`{G24X]e[7ԃB]/7FaȭeiZgRFWdʢf=M9h5kpv׿,*~3m>asoM*:ٳ=DU&3g,;aIݼS1 *!e]B?!s,#(Ad$Gᠢ^L[r ɼֻ'73C#ZHDn"dc-D~dn]vj2hBޤ ONw+!ȋ$V)Uw='H{^7Bƴf]ej8DOO،7@!_炞pXc4Hu/fV̺LԌ d«*MTgMy`3خ++u0ꤠK8lA?z5mFAQ/>}k A?y|#%&N*Gq5=ˑ'PNwg1nݖ l =޸׆BxS Ll|b?R>~|ՑԲ㢷ƒ@Qkq#,\N qMNnB8bVoVĖBF_l 4WMj]qym=r$~Ϟ.w/Ogb8|FDx/lӀJ=X Xల'#=EZ*qA¶?_&Z4^!/H*̗drė1v/mEu_#B*HAr'պX4 렘vA*L?xťLojX'P9A-ŷLIۤ%JX܊S_fRK*`!Phk]8#Y&i/}dt{hY(@V$t-8+f̴w t4άk 0䒺Ү65KUG XX &@`j9._m=: BfLak׶gM7:- hyT VP%QA| nhJm#zȡ%ƑŚZȶ@y,X͏a 84& m:_ Q[%՜_9vt ?ļB V!)Pu$}9l\}`p-=K/!aBCj,DKai¾isiȅ2PQ< a2B}|B/Ƶq>\DqWpLaAbE~-t36幼~4Ѵ| MBRe))MHsoGӳc,]S+c dmNC)z#JҜW0F,<+:G䈈$K*wW5p xceoIǣML*ަ01^\73wb>'|FNkV*v97tm ?1N7ZUu̽Lq6OrUqUթOMnZNLQ)70*1/?͂:%% {ZfM+6e]V76ZI,5s ϔԭܸ5\&6pq=&#b zD l'^lL2@d[k'yF-xQeKyv=.hY ĉH@]ϹL$h$BkK3($@>XDR2,RӑHG(}_ꪌ4gy&M*m`l61/s3ƲiʾZ.40.}ri2D-w`TH„yK*Ml b>XipjR/#O% "R\)sV۰o>Z$w[[)]tUGWFԗ܇#7Qرݔ>8*ݣM߸MOニ3^N?AxآC+/2e@Cm4ۿW{:LF!3vvUh% gU KI*{HCBl`Ãpc @ӑ'!ާ#ԛ]5fC׊n3f^VK,֙<wycĪ6sb]qjnvKd(@Ipf_5ޡswqIN foIDlMtu#z\y\DXF0_(\a7\g¶"!LdƲx!5@tEvaU7-z1SR}D&{ C:h[$ՈstpbN \趞 ͞GG>Dؾ^p㒡K5n&3{@T+ԅDxϱ)W |͍q`2UPoqkh31GN|XvйM[ٮ Kh,F +=I[4*+kR`I/<|6d^ !@Z4Ө Ks9U{3hg14t8}\r SF|aamhb SK ZRc7*ߢD%ŐYC_Ko4n6ĕ渳MVjٺ^6|pCs*jCY VEz45'0~$22}ac8bRo0,"C 㻃t@mCn 2{j 8'So3yGgyMm@ٿ~8 Eʞv %fKwR'XgrI5x6قŻDa^V4?6.$}rhו |Po~ljg{]X? Blՙ֝r}R ؅tTXS\'O]+o]"#+oFYUp;l0Iٙ[? :ؚ#y}BP?"5 6ܳ?2IpQvDBҬ[7}2VA {.+:tř̘,J3F=qA+Oh~YɈgt݋@fq_ad:*qSp[WbB /\ue4}Gem6y=3nB&``%Zn1X 0~;LZ$=l׮^=酚I,stٹCROJ'Cd֤g-ǵrW1 FaCLg`(q}fqSZ7Qr$~)/']eɦR=Jd[5!<o-UF0:fem!g4g[ŷ`|s~7 ?$9g:Nfe +E"mV,6EK?Kz,!f! \OKyCmi2ig4 k"]m55Z6̀@)]aXkr{6gzkλ-H.JY]Z4&0CW^K:-* ]敷1܊".v^lFQY鹨$\=]r^YaBB0-'wp;w;s@s0z_êo7o`UQOaݭ+g'A:d7AӌNhe| J>#1$^(k.?{U;*0 B3SW&W ?wB0S(l(o9!Fo6v-Čg͘SW#֡.Fnp*,] 4cܻ-FƽͦI ڡ\TYi/C:`_7̆'WtO*f'َfJ0^.ebd|Ǟ44(l )$Ű6ഊwSVaP<݃{Pk,6nkd " L'ڵΈ=x0%Fx)7*{{|*D&^H^sa\q+3o& |Bx*gZ:A &upï88m=zA5'0iuѽtjgf6h9ml3GXl.+ǟhyVKbx/'xu%ad*;OYGYLlU9ؐ_YkDI|arz/`\iFbK2'DD`&*JZyKn~}?*Jv=0\!3t&2D("CEs(TD/5z<(c⩥֝VpNKUSkHݧrylI7*+4!3 |ny@ΕxIݱ 8g`(gO>2{5}s@bO0=E= vYHp?\) ;^E?}E_Lq#L;qLd(5gT?yUטv[; Q98$YK Q} Q~^@kwBYƐ# W_ Uf_?m ӆ;VmČD t #zzj;cs % C~EfM GoJP_d"XOˮB?VpGg# [{j^g@3'.::3eXXTBq9"O%K|m*W*h:꠶OE!o uszp2 LW@H$` jjÓt6!m>n,\F~3[\*FQsy.L}$^QAwTZSѝN‰cL$xD>LVԭ7Ud7F5r'0b4b0?._׹T*zX4vCY]jܝGR6'Ǝ0.^c/ɦfiMnE3W":Sl4gQ{?pox /dvƂo\J'D4p&]ܔ㓇iBS۲c k Va$ўP߀m<-qtm ]^4i!(Jk>?#In#?Nu0.RB!k~'~j66~3435Lp[ FZ)>4#ЋF֘=e: :bv#m5u<3iη1s]ĝ\Woo! E/NPi@=K*gjZr1֑%7^/e~7(`~qcuXx-w`ZO`kHS1@.(ƠD-Y!DY.7`_iUo)"‡ HU n#UYBHںgRP_F.tY*L ӷ҃BƟk=7,?:Emr#ikeT[1B(76f0~`yl̓}P(_$AJCg qTE:''%WQ 0n+cŻlhbX7[@oٽΟ0`)uqV7C+s\U{R{=cZI]@?ѿظxANjXB ӏMX֨'8F=y78\kt]ԯqǏ+buK֢h޹QVZͬTZ~t [+o]5RrWVBNG`ШE$[$ k%O KrƟq VU87ƛzxX(Gbւ_+$ju?`'D;/+#Sՠ2wkq~痞zu8.J19qdye{Wup0a~X@Hpi>)J9nÙu#?75sVm߆G%SҊ&ZdɦȔ8 n*V"V>`ȃ1'.\X#ލ֝7u=l@tL}UxӦ2js)JAJ:7f,+4ThŦz~PNYe6c1cՖRaBWIx]<}Sij>)vqAnk( 23 v"^VY8Q*ƴK5#CP/é{?}GiY}b,h[tÔ 6Q}̼HU0qU!2:F.F8/zxz뀺flG#э3ȪgF h 9%`ިL֡)LklʘX/Jdž+`@J]O%4aDvsXʅE%R]w4b("d]1awJ}P5;);%>7s=BV| 7/7i\OTng N4R 'HBD{)SZ2ąL;5jBEDVF1>̟y'nsh|>F1f9?ow0΅f=i3(5;GbPc&jI R߼s !c%;LEIuu1HPnOc!006{땔/bBbNa-MTP3ӝ+Ccqs2S+580s誉s7m<_D%FF e3x[gD"LQ+uߤ`̦&W!z N0IM1 d͕V R [y?JeUNĐY+uc*fNw,v(KF0`ɐy:pgB;@B=`NOYxuh"ITxeW>WuNb5(EtAmJ+U:$P9S]R'潲J#t}Ag!β{Li R~*W ]=_%| %d!&x( b^A=$=^+XkZݔõ( 5jc: ٮ.E-X3qI!7PT1/ӳ+'.K.1L99(n4u5ў I{0E`:RLZwdḇH!Wv?9i+1ƨK3bUMJ|0kɅw-P0*}`:sσp(V#p\ fY+N#B.3~ӈ-mY=hk F~9K5q<{,tw׃b؃T@0`SXv'T\O@oޔlv=9e%@sۭvyT$>+6Q-8J qC)˧sR3pR 4fӤw7R G}u? Ϣ95n~֑ ڨz<[.<# {* Ӱ꿲U ZJ]ve&"?fRv8{0|l`*elӧhlq{"#kM$q Q:g)ƝEgdV|j'lOS+1gYǫ]~s`S Fj{FC1RDj@Qn|y~/1U I_Niꭔi h9UFњp݄ytFŅ\|| v4<)32i:-))tFjQgX}GZ߅g+=1s̞8&$u-r7j! \ jǤ'TRhzU{Clhc #I6UOi?͇A$g (c&ӯWjbleZnI"<$B¡2Sa/%QKb#;r'e~F $ aNxp&Қ1}[ՙk3 FY8}Ȓ"93|6_G2_i&c zKL1#'Ѩj{B+Y ~B/Uc O,rO5Tx WW^l KtyY鑙='eG %hm { JvКΚnx=A/t˴Z?ͩǪH5pdCs;L03u%,M2W໳y4:6φq;uN"x1;ȝ47L#v<ȝ﮽xiD?g !=Y_Q$k5_-C)k!7Ʀ⸗$Rqo6}[Lg&5<6 Lr3Qc3R(ï S?eE^R#ּ{C6@0sX Ö"芿td%`5sus1x87կ &.CFw?,@ܖ%7#P3UO;ғQ]`|gQw)RtTpK,n63ALOă6R=(p]20q`b1*bCK oڅM&*Y|d<~H֘G4 P.ߙ0?ss[<X*3.ZcYͫ;CWCF2$ntY^Icx,ErR 8@"Bynt]' wi=L7ӦfpsnkbкX֝NqC4i,$JoRI7QC^2-8u610, {\~ќDS}*ܾFbև]k%._l`e$%F.} +QJKSH|c. mzbfLE+>;x=G880qRr+ʚ9\vuvi-ih_D։nXM3Ћ4CIK9*˫GΉU@{ =7!~xS=j]ATp$z@&HiI(YP9%̄ w`#ef"jAsHN,9wBs᥶Q[6Ļ:I~U\T*h2f] G{OOy3Ht0exbJ5sS ]&"gi2&9Wf@/\B!Jm#D Q` >2Ι_|:Өw:|jZOBRr:TL2[gsÍS.cuvvq'S_Mo8.;R+:ۑ?itϭ2g`3gYf}'3θFH҇Z|O+b;~Gj:*4/0})x4FC ~uz9dHCζ9is=FHdUCG[- -n(f`ϲ#2œ6cj-vjwPGTYIl-ٿ2>ܸHvjk}vD$!#e݆ވ3Љģc; IP,IAs S/m= ˕3H EVd>ؾnwy@3Ȱv4EW0mޖ7ֹHL[PEawTWt7#-'ye\J?mapof/_%H'|O؋^_3~*Ԏے "6o^ LZ,u4*zҭK(P'ǦVvHr)?7)GPդP3ԭ ivX1`@8<_!roź3QJ2W 37aG$'-R~6G>h|Xu[<Է*س7@Cu&lT }8NU[Gp E)\*M3aԊrմkJxnljVXEzꪔOk`9._&Uej+6P\ _&}xqwNvXM`1\*>)@VJ'(E]Zƙ*OT7u`AE'T+ $o3AuwM05ٌR_͆'Q2zGm F[WSvR`8EBF>Q$ p`¸c!⼮$q<7orF0]"x/Glm!/ʤyJ̹[e&qefD~lr!z[|%Ҕ!LM^^nzŹ"u$ZwX+u ?J5zJ)i.ؒ%AM(D_¹om:91fװ4uc:SO-J0a:A IH-ovڼTo(D~Q@ Q hUȄF&ȭĕ6ޝq_w{v'Ôt!; w_3w2sU}е+pC bLMQqٛ>%PFX{mή_)Ѩx7r \Fa:<;WI^%?yr@^)e j0@p6;DRBT稠{qS˟kXSoR vuTHM.L+OScwdkլQ60_+^?2މٔ^/ xY'kYp#PЬ"`ãyY)," ]ƹ ڴ A|-ƻrop+4bH̹\fe[=uRxľlIzЙȷxvqC[)9bϿfӴ8s: 9ܪIdlt9-4m*iye`ix`32ejCī~-=+&+6%UN JVJZi *"LƓ 1-MDDYpo2`p&;+f) ӏ@T _S0QqHgN&Yn2 |,Ƀ/RU840U );ſ^&%ԔD@.h낉WeK[=&[xP{dF;i1Y'YU-ynCm>mܠN|GKChMc$KEPE3fDG_u2y?v]{(8ҺzB; os Ҟz4QsTțْ ApW9_89tgJFaDPI Pyl5#M}J(Ԛ$Plwy35:ŻP((:7=<.SMQo{1_hr4]h$Ւ4S_+'{{nDho;ÿw[..O6@x ~_,ŚY849ቹ y><#enQ/uJ7:ALA3 Iexos)ܦxHc$ltӫr:x,۷7i)=nDۢzA]8-qP!V΂K!VI?7a"P<3260he?\*{aGP|̓j8W9FqFxe$>2Ϻ>}s]^NX9g󐥪}Kʯjጠ֚0EWgh@*6wL%8<%81{e veŨIMBN Q}w֦|RV_mǜS:UHy)e4uګEΟw=-:L z ^ 0U@D"C,0>Xn% Uq5V (8DD9Kq+ X^ήh8n ;weWl{]7dxZi/{`CN':;h3y '&Ksu鉩ncb/VaIڊViIf}o_VOA6?9˚[ᗦb]VTxqG;(bB'48`jrYuVe1a3(hhh~#&;HQ9M&03@;$Q2=:pE ."1\%1L@,65QE)yI!/'#z9ydđފޕ/[=Y68ͨ]`8 vj (|0̲1kY+`+L%tQF$ؾ )=Gu0N?[3ՅpL]n-rHe֯8cX ݛ;Y!>aW(=} Ew79\%\XHz*^,oQlD:g ȵ1S쵁Uu#roT65秳(1'N 8RTA>FK*?} 9ɬEhJVpK"O!V~xF~,\?"k4ǒ2}tonWj뼋oYp^7V}xU}Wx%>׽'(e}r9<1~ 3Nʋ 6C)Q< #\9d-|#O+I"Ca[c2_>U.J14.bݣ ǷhzNaZ=h]TVUDRnO1~}khQR.uZeHbfdnN2xL#2F/N4"T'g#ϯ(71㫯ؐl^/ #JK1-M9"?Su(L_S0 BQUeq%Q?cPo>@Γ6/&*˵diC.Dx~,et8uQ\126PlZbx vM B{ibc C<]mA^ݙ|7ۑ zŏR%-w Z5^|-8@8сݶ~!GHq`|lZ2Ҏƛ`0D< P p*Wm2N:]-lUF7c$qQZ6/#v{ Yk5F2=}+ڙ -L"z6Bbzۚ[ " ݻG}9>neVq>eh e /KZ5#J84$EB.f/ʋC#'x1k34<],p! e uݕQK5|UA4tâxG+@5N-%OhN6oWL  'i?ϰ#ش ]- &'F]&>p]9gcgC.L6],"N'D%ޫ jD$]zFrz צݙjUVn8ڎyZ58Zt5i˝Qy<gblŌ=fq cn傺DaEs-PE4U~XkwqTt! t"۝QCɇu#b'z~%"ːbsao{ ]h],B&p'#nzSoWN'j.bXbf:x#iQgX=@]-Mɶo>|jzTS1m "2e&ci/B]k+g4?[!/#`*H0_P*Lfd|{@Z!hOG 6?7="vA;%a.aL-W;9(rϟ4Veu^"qL?ڻ^,בi=uZoZ^ i0 ouw$ؘ\HZt2-աB82ScQnޚcҥE Tv2Q.T^D&#OLS4O97*f?-ޛs,ex Ec2ă/j4 UNJRMJA D>U:k(T)fh?ԔTӨ ?Fi(A1d61RіZp*]ɶݦu,wdd]n.AСg/:8H1Yq^p D,Tq%4$oj~=B6؜qӸ2ӬΡO7 o:l5tc܆3LWyE8'!9 }(q )tH1Vxc+ўRMzg˾/a7/h rGMTEV8>|(=P[%uչ2kH TQ0Tv" K.;Wp,ܞsA\Sp )?pDIZn4ARqՠ.#=G9 lvo2\vR#G[@"@TYz~XHpƚ@J6:*u9 tV&XmTh]f` zۇV纁f/p_^ vT 7žr4(kM`!WHT}f{7}|C:#2!ny܅S3nr"ȭQ}4^-tyUVfos| f<G;OUTLSF2$0@*h$~6v={3x+hB$fz#2ҧ 6Y0\E|6?57q=ڛܘEؕS:qCf,6d9z_.SrY*(48PrL` q  rŔI Fʯ_%]1 4G`zDv"h̊l5j,YvBcI{|esŦOQ}@uXȮhqk:6:n WGwɍC4x'iO0f_}< q֭!5R5Q ,7Q b1R7\|[%-/3XI)Y)Rx,!#Ynp*9v7eA7Մ5{t*4WPI5b}dJpK>e(DFOfW,12w˦,c?Z"r &d#&Mm樫1ZQ+R"ĕ*[z_es'&?mBmOSbv"tUJ?Ad± r"(92zc ٲVՀγvZ5.]b!ta4sϲ{{srmMMr8}Ny&?m-LU% mjqm*nsg9M/l^S\VϾ%1(s,9 Pa[K:C? k@ R{ wYY~ %B(ժ#*~Jf" k* W}UќYe{$<`P_y0aIMgqp+@=[`)P |!`;r*jdžլt>l@*]Agg \ +~dq`|:Cu`u_CֹRBö\i5 Z:>:"? ``&`MqmQP8C֐ae':i)e>FdD64boXT@PQߣ>ba]UJkZzY՜I]&=U+rkS5r]$797)Ri Y)MG2s95 > vhZiq>o1;=TJ@^S $lFt8x| 'i1=$$%#SF94$uT8lcS*_eΡIiy\RvJ=h=w̒ql y^jK oY;$B)'ú˭ :U1)t"d2X-+#_k]#L%z)x%>W%jX*iY6/ldL\[a|;1;FޤA&o9 ,vu;}mMJuȱot0c_{RI4]s:ۣQ%^?&sP5ԅ M#qn4d,T;ί̢3qH#f#a+׻P<8w,O5#,UɊ>"W͠YI|d>. LNuMX?Pfk+{`TNvm p|j7 IwQd5&E YM0Sp-u\]D^~rOʌh(L)bǀۺcPT2kb' kP覿C!܀S GZoӰFXrF>lWQv:Bc1X<Z.<rp(ODF7H[ .6f xxMM.zġ.CseV0c_bڮ!I.nԂtx 5  s tElr'F@j%Sb;cs =6`:,%qpqs,/p\d4ܕX2tGǗDgr))޿@UνbU˜nG'}=N,h4ڛj4$v>ܛX+$ըKu0{CPxWtM.jRk;cߥ/L8.@ GC%>d?t nha(n쁇 J p{ixZۢVF $IEpR+݋͐;u iK7? Es;V[ă"<0Ť 5~Wc֫8'"mqY̮w Ed8%e/S]aAb#Q.N)<&/)Z[g^+Y<Nĩ ;G v@T5Ge<xJ[2X)Tē|s!@*.gy, ,qwY-q=PWrҏ2rCML*p6K ȪbD9ak+v\TK N/LZ4CSe'~ AL Ā*J\O>&A7=ա]UM ނ(u^=_XF%Y@q@kj y/Qw)C.,>p7`Ԭ35=A8HPM?0aS YoE*T߉&#/)D)(SkO@it"rTxz$FW5zѭ<ݖ4$/o4ݥsTw7{80ͻ*%&3 UwQ9ъs0 kg77¨4 \r!hG1LC&> ++Q0j,Nԇ6nt71SrNXl?X(v. ,_/\eZO.1)/Z"ϥ@eUyu5xgBG#j@{=bӿ]L[+\Ƹ|~\1̰AvLGBڜ3C-F,g+/%nɮqyYȃodTk3;zzYP`;[|Rk= DYM9Ϋ-[I350dω42X̲཰g)Ac΢.Rd DfN "XK+۷uԗY6Mz q?|Idª0vQ<@oz.dM&rE:J ,d7˽9kh)_,Y:tS|O|aS&fH99(Ӵ';=cTA@mey7N> iblK޸{'к`6D=C3꘱M/\@0#XJȭEn k"*ksbEZ) h _|O;c3zĂE-S qKMD*76UD62K4lõ߰5ˬww'Ͷ1*z5HZ>!/ >Suu@qBF pw,RWl4U ,k!&Kŋ:pGh~|[s[TySӾ]+ǵEY' T?5`0 3燉%`g\iOe:Inlj$~ِ >֚Iڄʥ zxhʴ&)e%hE TZ<u,sY]ʕ?a푩]e*gHUx6,6}DN`Gw1,q\Las]c.dzJWg6N1MA @Bi 2fL#ywncp#˟Ut8nLL=*P~ ٩e!,_jŭ.?ך  L7zz@֍W~qT Ss\ڂ3ӐMlTFiW>LG$~Eb@&B`vp 㯫wյTTJu7pn9&8w3OެGIcx)2Gt{ʄ q qy*?L,ā1 hN7 >&M{ t 1P,}7_..8)jEh&i,t -q)z欈{eO&Q cdZc2}s [5_'HD\P6YUidNYCxt|7 G_q{h-۠:ʩ# u['x%kW2 aUNT1BɺLNk*l֋1ѥN5TT.>5= dα *Y_kJA +E՚A5Mԁ=n(ltw8ȖOER@) &7Ǐs)r I&[c-u"`ҵ\jhG7oeæIJE?F!˷5nt01fZ$e^%Zn]uIj?3jJ czmOcFW/ چ\Ě>y հ%+෿e 3V^ݟ+RWVDJUܾ֝6^~ tKNAv`2_{liá YFU~{փ( t75^^xwlXduq7ܕ$G Rk`H1R 0 XMm>SuރP?8fԔtU67G/f}ߛm) O^/2 /5YNX &cBB8*>cu^]d5P |ߘ ku q9m/<0u&O>Fm-T:e=ݳS+nA֗wz 9A9<̞:2mI2곥\[L<̐\BICY"Q䂷wtCL.v`#E&_UkhKgu0(@/ѯ:f`19=Qbo 11b= h%-mv^$@vǰjp4 )~ZO S479aDN E鲋Y2& zSVeay( #r3Fr-)F =lcUdaU0XP$;;zDX#eq2dmm;㗽k"0×.`Qt5RTGwl,Tk}E;ޛQN:b!liOn0lf2(O60Ҋj*#=~U%aQna:hj b0o.XFnϧ{[TQE#بv}ݚV8 P<㇘z@6 rA r %tFO8n}- t[؀O2QSX4UG>ȈFn8@bf"UؠX8Ԑv?ADjU c4{xWʚ }xr T/_ C(zYBp Z\W|Ԡ韴C?!e33(I#h|(uvT̝ H|Z8I΀8Xtzì.)/>;痧 YomjAgZC>_{XFfեes+V*^[`$·"&\y*jp4ُq9kf' 킬M?)K4XLR3eĥ$M?>]f}YYh s\ /k6 F~6G@u)AT,-<|Q0 }K@ K exzY$sN -tn ސ.[\Ddڀ'͹08ȸ 6nA[s[&4驡,w'4 ctk/}X=̘+CjJ=jvWY,9ӌ.5-a@}$ׅ~jX[ 5=֯]qL`DNl0e"pBC`ާ JHN}D *+J ٖ1x<]>6o~ܦ#5J 11%~2!d", JSb)dBޞb3NJ|XI;#/$m/%S0GaI_`24Ϯ*'K?e X=_RwW2$,נ\#m1yTs`7Lc!%KvfF ߗ<+# U3!fSXVO `fП!4,DGQ~=j7i#$rˀ 4(Q, mǾNptiCo{$x%[$O3A7|S%Ma4 1ۅzIQ}2ffu- #F :;on Qf4E3K]۷5EMhuTc@,`yn;))T%w AȢ;lO(Y$e ‘Rh~$ʸM B+[шGEnMHm־tZ]"e1o.%/I+t⧓x0Z^RfC@$ڴsXEޔ'I'LLmF8 ?ۮV[4{Xu¶h-㍛l0j+| lPa\D].abθKŷD$9hEDQMLhy0I‘xW W!wB+oWp2~nR{8|Z#kU&E)HIp+\Gb[A-h(/ 0rZglu5;YC%A&6I@5īCwۮmjPwXz_߱]ǻ5s7 6uWh(>8 d.C@%2@^Pmӆ e<f umxxS)j^jAoL/淾XNJا>cnpJõRv/"Z HBACFq*% =Hl W!vTН=c-\!|Ru |JnŸW b&$!Qڙd_pkc})f;cKTya*W*|ɀ.sZDNQligW@8ã8B֦-[{ؑQDgp=3S#v%J4_Nn$ff6fZϬ&khuWl T_aey)'MlDp닋1=յr⵬i;E[\ o6* rEk {[&"*&"ykrȌw:%4O/f*)oƌ1pk;W.20s{!Kg"x)ΐ!z~2H)9[@P`br0^oB*I!QɻS+*[ixO9(5CR}utpg~%Բͻ |T"#^2BhL!euQ{NA| jf_+^ij{iUD$܍I,)P.Ӝy n/WrtHu > ʥR)h7ɖ́@ )If}kʆeC1yѷzUnAOp=w|6\VΏ\3:v/R5&bIivlW,eW3ZǭA unr3vIrAL%E.\ȥJ ތeYyErtu&Vj=X 8¡B1 M; sZdIBc 2?'0>h ୏:ZNi0ZIv|3M~ga)l^a(?^&vItr>ŔTUsWGKnwIl9&ÙvZIIi y^i?mC.}SXA +/ƹ5 RYc(SePORs+DOfȝ@X,=9]AR(9 e,X[Z8L;8^ I}[xW6(' 5VC2¾%aI\d)B%$\0N0ܸv?%&,5T@[4I;8WF'l ZKyd"# $ZFh_b ّ&?{NzΗ Zȴ*Oqgb^_m$sT[XYbRlaJ\N;{3*Ur,FW\wZ…;R qc}R}غ6r*=ȔF!B'rm,À&rhk; -MQl*Ͼ||[n/~o`/k##Fqxq^&DH uhX c<En4={fV=[Z&sV==ED-/43jiW|YH(vp;Oy̑0梪TVe v^fj{&-֗R\94-Fr 4nKs<$ IdC:E:DCaay3A.5`b_ȅToޠ]F[Ju=Ak(0F!VFߕT|=5`/1nky0{4\?Q+d_zRTA@`K1QDL$)`ra7͡%9#y`{f_ʈ"_E*s88Tf ~ce9)1P)˹]cb:JzdⓊʼ/G}..Yx~BynU]9 [ b;Djـl n#*;J)7i zfo mO+Inw'A_ԠnjQ;O®&k<*|jKTCh]SV͆O)w4);,mZ(@?i9<5t{˰!-$ [F5)0?$VpQnP\q"*߅0˹DG5@HsTA܁:[˫˪aÃZ YBQ\-W]0h0a[lDlL+/uTnu$A}7Ü\tvw0S /G- P[S+g @MF*Db]3t=ZZCI}4*("N$VL!7kջwi_ "Fɺ!!0k ,(IR[.lԧ2Ag錛]Eيi%gruBL[1ŚVR=lLzD*e!w5.-U:C+6Y?SLK26#\7 !|cr֫:lZģ+L/ 23UĂ|k:;jc5Ta-: YNN?7v)V|4_Nn:\DX&[a{DuEOK ͡V P1KXBg1fK˳D*2:#$JhYg-NqC81C7]~fI͛0:$Jhv !+jzo#'rj\yOIז6+ kH]7WH%ZtޟS\N^='xwqH, 2@->5X# (aԽY-%=) !_^Js}pE\'#n/\/jGRnZ x. @{4V] YUM% >`+Hc\Lqxz_ ;j5̯8`u2 >Ɏ0؞L[v92~gJ>bK*yMSmS&0'v5=1aт+\*RE"/GRD}s`c8!_Dy |2ѓ3X?pnuZm|ɠבא ^)a.$ekUFn`8nIȷnez +>L2Qc\~&d9wA8pO9ڧP稱-,Bu_ăiwNy #GͻvS-?4@ƝzU]!G>[7)Acs@+rX|<,>I]Iȓq.0Bē8tu w@Vml]Tc޷aH{Mh"樼tia5#ndh5ڟb]V%_T8H AB}l9E D? KowMGD:㍄x\):VqF6Vhs9+EQo!i JhͳZ ֆNeGժD8ʠF>ڏ{XyBnuAC;F' [=DA?Ƈ-|\jsn2Xqj+xBE@KG:4^Zp3mЫP=̴|*&φgT&]Ͳf8 ( p5q5ikU@z>[P,|NDHw$}z#:YH岉MHYu[_#$5d'8L" lԋ HzMv=E;VӦ9q$A!|4r3gJ@tUSg՟xCي{7e#Diu}Ge(aoӼ "#eXMJrؘ cwXncJ6bP9cؽ w̉(#{bB$$…i94]Y\%Kܑ=OSq=Ccؘ i GR6"??r yj-X,=™M /]!aN4U%ؔE߬%$p#%3VJ+ODTgtrLvO˱$/ X2lRAȧ2hVv̅WGQ`QWO_{@iWU%ifӅdMTSȳ5ƃcDӨYWvNh ݁VB`m叱Ъ=iv+߉Һ}e^#l/8>04mc"PRlw5 :o^ GfY$NY,5A$Q2K^6kt\Ր0dW5-R0$WNhƈinUi ϕB]ցjF?|nqjU x'\A! H+s]Vbcq ֩~[iqø7f[;>pcU1Rl !ľ0C#ۆ(JPHGޒ}}0~_v GaIeȲPBn}ip@؅TKZÉ:Bs6P4eT, ~:0o3t֗~ ΰ8mEPzǦz>+ jnږÊYB8{-Hc!R⤑L&Lv$gyI:s!UVnatL ?$>r{.CQFW z*HRx$oO]U>ìZ#^Js3N! AP [G#eHӤLGN+J[[OiPس?n}Qr^ݚn̋At ߟx=Q n|[o񤖎#H܁XfVmk ph>-gUCPku^-7oh}煸ئaܳЌ%0,e4KL?68bӵ?dyua.&;ϥ|>7a g>7?VR$ gOVKܐW'dii"=Ŋ)ֲ/\"fqn?rdo\a*Ao ˀv^1k}+c05> k-g}`G"ձmU;Miд7Q-G.MYP*YV$oA*of1K@ZhuҌAgDfnĥ0P WMVa<+ ^T?<ev'ցb]%M]偋Kkd&PAaaڪ7ݘ;k+˕r3!W0v#~ FViܢ'Gq$q]r_(D{: YDt~u<%N QAdPa%.xBV`pdez6\rzp'!*If|LmzhmtH'Iv0wDC乣^T֭ώQ+>pgntbt'޾!mE2N"l ۢTڄsܻ 7Bn[o5%ȅ!xאsEpQlZ8bv gE 2#΢GLؖݲ#ZB]j'ũOx_&K=h$D0Z%~N+?U--} -cA"4M2@ @SVy7j}u.ChGEdr=bˤQ\v;0x]e/&g f*|cBs 4Z)ʚ[>&2n'5ʪau IFlޣDuH+MvmB=}dGz]5 QɴdUs,K B`,5)l5(q3bz_*Ҍ;q W2Jy5))5+y݌]!s ^Lrr6jPx] ib?z܍Ce+JPQ^ O*wgbXh0 :a$3Z(5dɨ[p'޲R%l$3::L \NUTD<ddjYh7NRqu닎5A|P~Ҝ²3"8+yAY-y 򽒅uJ kj-.I/iߴִC)_}XB#১Ϛ+eM[7p _]TGK ݍrÀ..k5KdɈcO`D,ӍF|7*JN#w׋]v˱Of'=yQb2kXU_O*oyK$?ٟs-fȳ\N&3J3WZuw} eЦEK aX*9*#-j'O'QU bh 5ܙo̕09yDˢ4 xd9u]sЭC䵄)۷.g)P9c6ayƌGۤw|յR##fPE}z<_Vץ9.^9M jh LO[)s{>cXe 4{4d5- *ɚ 5qfK5ĉW =zJFXZlYH/9MT#݄ bga>e+Eh[LBs(R\,t(a>aܩ6ajX6 z`-:7ůJo+I}_QlXfLO;mBU?175\r/D;㊭Xwt_D0|磗_qah`;NaPW]~0!!" bT3Uj8dc"aߊԄ KIާfܕ1= "UC7jk9pCۊ#gӦ_4,Ry'*A!|=;n8}r5JkfBR}siӵ\&@b".f& aeh^u􆡲 `1S%xyCp'3ǾY7O1'XF|XUז=蠒>%L-җΊHHrjwkc:%f0$HNE`V:!RǞ2,-"Y  w{w#}Jg(g+(c;fC h,ɲn24;I/ȂY_g6Gg!!@oOgCAe9;ǞH6?&`203DmN'zLwc :ts^}f|,K>$(:n[쵴0  3ozN/eh:Cjrg1m;4Iti{BK,OOc6%2e&90VH'p3Q"m^؎ X #<J4Ћͺ ej:ઇhZ7|"XL_w¤\NM6Э_ܩY{[!yK\)ۦq!  e!Dh[b@sq]͏Oޭs7 )g:cÅtTYAS P~2P\(_0 {,GkrMøVnTHO-kVA~A0JdA90kޞs<xN27w麌 ri8Ǎkc8al2eh }K J%/Z= ĶqPbg/ /BŹWV^Xb&ҏB᠁3!R,@Y,팹[CU%ZW[-0-֞jN 2$ BOB]h?_ILOiތ x2s=ڝXz4kJf,ߞYE͘W,b6 Vt'VӑaBJ<_ Yi)]lA.rM|0_+*]%(y^Re5@wnA#MΎErץ6pc`JџPl1T;hmVami (&E8`6~"0XƖS 0pg9k| o4}(qz0 }hc4|AIfNNMۿh oV[6Lnm55ύa>0 Ygӟ{J|bDq4H7xYEL*`'ϹG C>&f6- VF!tDlk'j"6qoBp1_;3GMGwl,ivW5BU=/3#[>7{AСOQF_u|#QK.]V1V1}ܻA c<5oѢԹ~ "Oo>`L=? Kxq&_%. ey.QYά8G4!%-n8ۧyxX6oθ AsfrW  i0JT:d[E} B0At9{(Fe27I0j_@ݝX&{a d)]Fe5b"_SH ZHzb= lV1 ~ ˻L+/+ ZG>2ag9jf+ₔswwV4Vܶ6wEv>GQ5#>epV._VvI%(.B||0c"•ޓ> Bq:0KgRp>XoMl%'x^]{Xvi\D8zdtcbXjk=H" bcw94dꩪ8'n~R ~1l>*?-AϏF /QYB.rqz쌤ǓSqj#Ty5,@w.sEoN\tRLܷPHԆ%%M I{aP)rcTx$w獘gp0,8Gz cB{XDd;R?V^A40jYNyâxaje9ʐmx~L.ĶG1.e׿1(ѽҟ`FשZ4(wUk1[6hVgz]H}JZBv_ڈ'vrӑPi@8 71ώX=ƕrPKuwM{,V6,GJ( | i@+zUΚ1s2PA``/B9[OlS?}gYnxs8G|@ϛVv^X*AT7,p5O)l3c$fjm$<HWм#];ǚ7>Vp(<&Q.~E 4qX $>7Ak5lyu#𕿬wrO&mOV¯ *@dĉj P{4iG2F٭ 6B EPrpc\ kI_+px3]Rät ’3CٞtUR|cr1sIg@A?O.pjurosQм|ga_/IE~HͷO#۪ړ|# 4]VNr(|EtIIbk}xdmxX|u3Pm S+k[Mvn,3р|[,MEy?O{UA=inڷw;\7(ڱͣ7EDjT"It=ʈM̪9jdιZqDz_۵K!Cx zޜH6~'_WU i}ۅÜ}>RrKŻ|I*gZ:qEUAh fQcj[%K.3>/o1פ«?5ʔh}~HVwVLWDَnsjBD⣍@7 /%c`Uմ!XX|29N&An;BfOJ: fDȸ4Hhj"[xq˼>S )l!?K(@ _FLjA9oi8ǽ|7}}sPUZ֣F=̍,BehNx y77OL0"م,gyF\Zu\<5k@>;ܣ 6)i갎cz9Β 5>ef^(m >&ki!놢i;z"zKe@JqV1:#; k]|$몄8D!R(sH2N9[~GڌľGu0.eNǴNp@S9~2ЮGsO4fBjJq~b3ぴΐmFКav5K00YS{A4 zA׉닧4ʴktc*o~j8m]OO#ՠ #ٿMP5뿉׾~-ZW|5C{Y:_F}aHJsE2 ϱ8!L9MCT@ I$۰'#+ڍ>ۧϫ2(|GMo(-5tU롬d>Op_|xmBUc"9ΛMeçXr`ph5?618͎חT/-,ո]_ZHh0^'{ĸlr^M#,ĤB)9%b0cR0L@?#VeY M TA)= w},#룛DB!yDO!%~jX?.7n뻄]F|"23W "%u$Eŧ ,m}wFѧWpxu:J}?mUY(0gs!]F&o`^y qHJOrE|sbf=Y6if4 `9l k_JUE);h=p_D[JS_sGAيf_50k-Ć+q *^zgHDK|y3k+|&,'$QdۉW[Qe Q`ɣusےMjm::ݘrZyG|e~𴻺"PY&70biT"N7]`hCȄ430fuy+gp]̼nŷ-+J+ej_oZUB{P@.tG~4!A6$zb748iq8 Zڗפ\yfl 0y{B1,T[`#e 3,,B`}.x`𴫔8o߆ S΋dSAۜ{^s8ƈjዔ9ϣ$` E/ "cU䕆P3FRNj"pr;3g8/KozɕUZW}SUcB'%X)&U*/p3(櫍je3U㦍./4:ObsPSc`Kݔ9ǽ"#J"d V?ăwQCn|o]gW?>~8j[< H#iұN6S1n!:M pƟ8fbԍ*`i$Oz"gYEUe IjXhx?!N> xF_ yl.B:yRffGA,+~Էi,5'rS/G6ZFN,ٻLv*EI`aj n{Frpԁvjݏ pz@'3ta8grAJ"87tLNʟiə*IqKÇ8-c]ȡA '3>X¹צX) Kvjɧ=MHUN)4ݱ-:u<dzg8fҞT֬B)pg .3N L5 Ӗa#0i\FM Xs4MOjgwPh@hJ:eӖPxzsF5w *(*V,a}Z:6.,)HP1J:J'#hq!(uErdk*f9rzB Kg_t;8Efaxxz7Wm:q2Io,^XWEu<>@ ,r(8!?J9")].]68So?G&聿kIwZimDuh# /UIn2܂\V 德K|O~ %ݥBsK&y+aS/i8`hJ(G}sAc?bAAK¨zcBK$1ߡe4ֽ.ߖ]5pl|V*1S#YQ,;C.B8Sb0[cJY˔ܨozCpP6_Sjw+R([Wz^W2 &Y ]mI6z5ЩD30y0X ׷MdOPz4_s,"toeg`Ƀ,A$-Cߓ >VJZ(J0Dk7T*9%T<2͝_ @VR7h'bw^`?ЍtxYv !WyBbc4'S,C5N7Mٰ4M?-1 j!5̴w,lղKWj$+nK>݉bRjxK-dbL=5&>9@Xm3;cv#(IRwjXLM>Nw0% 6d̼TY3z@%VG)xJ}ʳG헃 Ù'%Bm֒1W"up$|RjL.=hZIv$}c|[Ykx+2E#SN:*"GM'. z?l&uPki`OH bY9]RғFvrfPGh,M{-:{.RYHJL0Pd3&*ثTG16sHCW~") VrzsEoh sq5g0.cuD"'P%]²SXv?oZX>= ;{CPc/DʛEG^G-- G`n! @@<=zlvFSqs56q~(U%c2!D3=g$t7(" =CWm^4tV{@댳ŌSM@p̏jn/  E[/Ѻ` N]$k5[-4'DIԸ0 Q܍jdgUD]Mh.Zk`hjI7b )"'WH"縌0jᢖ׻EӃhvj I4~n9eԕŽP=lPL,sFDJ/kW70#h#*"LQ0OH=AXBn%ͥ"b{Ga5EMyw@^#.! YZ8sjeҨmq9vxҀ nw~t$c)ъhg46X [ Q}\5xA }vN_$\jː,nRS`(qšZl2_b_B]eYE t#)k b$7u]-Dq8>HSH=Y4U ',5=Q2N+V%3PshwEW GdfhWBK6~A{FpQ ջϞ?Ft |,7zjd=*fxNo:`8 cM~C(q+̯i~ e+ʕ~Tow ,%3g.D]o2?(K6G&qEo8zѐp<%O\!ե~l(-տu} -I i/C|0)vP4n0݌pPU;G|L?Xyqpʚ|:MpSh{RE;+3:|JCK/{92&QU:܂ Q]V]!6,SCI*i-̃=ċM)TٓLNJA}D1I}!:L#Im=>)D-X &7V .&T{Pgdp:i"5cA:dd,O!P#ů~`P1A<%D YLMY:Ylr[d>%"Cf xǧ '̰mj _e ks)+03AـbUxXw FV_`EEVvr=̨Fy3)@$#*XIZ bн6姨f\x~ c\f>.͵Nj1(Nɒߠ\n_S^PJi,&PmH$IV[yrQd tPDOdG1O0hXM@r#׮9 EڀHe2Fw0_eǤD#4,"z>uDݺ]N LԮlǢd n ;r 0=5yn+aQBxeԛ+\,EShrrL 7EIyRʹn7~>c'H,FH!}MWŢX y3Ld8F)j㾝oJ'=2oOn.^XdZZL371g<,d p4ȁ#` !-yW B_jr  8b>Fpy{dU,gr|#DZ Srs4$(n]jon+Z2ClCf- d5>1QVee`= >FVGx)=[k]l<D"ܘogqR|6mJ F1ZBj)'?VxM_Pyx{O ܿtEvyk `{e`+Y#ĸ~/\&.}7%ib{m@h\9^0D N?=`4UR5%/w { H]IeE6xvvYzѨ?N= _ 8IAOma@1kD <8'Z^/V=vj[ z5Y3!.a|bz:=C8gS1HLz O(6l=䤓2EB50E֨aCf6^!pdO.Ͻ188()S3*\o:b13*0lLiF܅s*띟|R_f;_8;/dfa1պtuE% #|,CyMdA1kS` PmoBH0XES,Žlw&SV Ѻvp[2܁BSr:w//H۷mdQϦ*2(;h^y 5? '~:H z$ a,-.n`+$0Rbŝw2Hv}kIHp ;yX9kb M͢JlQoÿ'nLs*I;7yHhoq74?"RĘCAvAҨ)e6D$l1E@T-M_C EÁ)Oۛ ]:E!'4fދC*^ش[ovڳ 8n\&i #n<c]נzB ͙׎NfԎw!}`s]$OLb=}"&[y/r6LVU ,=#DH8S'bWӯD6( ~!L](/pC3@+9ޟc" ^vSM@pHz1BN%TTr|z tMzc[z76 A0 K/~P6f1*Wgޖxծϧ9JhIpiGVHCU^v5EOJm'ޅU9OiNPQ#zKH&ɘ?H.7l|.P(Q:Q;fFi ~تt.R_&WZo(QJdDJ5Mq10 <(dj&`!l ~e&9ܳp].q7M4VzM;1mo5n8T*ܖ%)Pc+K b#rcw+F&لXcΈpM04KOIԏzaֽVvIBWZ#+HҗMw 2ZdOQs9rv.}"k2EZ}O*VCҽY5]T۳Ay4nQ\:V6ŤOR4eHJHOȇP:5OY-cTGe`}7z-rD7o+?/CaZrNa6#[t4IjyգF`?jn<"C@&p8V%;m% OFO As7jU gxJfe?8Z/YGv}Vwۋ63M~vT)a=^PsfHȔMQ* J}$m5\/{6+ faEBw0I|68 ĉݎ 4AZb}y,5 -бh@:Z)8,~@ C-xvO7 =p|1_/,W  "*eح)oF,S=8ؕჯ.Ng s+2t.gB Ο473qk^~OJ<{stQ=65^\^e(ThWYiw=1жS퍷lR"r2v`E= n>A@! waS7/q} N Xha$CWr{_jNtKdXiĝ l<۲+ЊqKmW/ 5<'H2y}yS%T4=ќW8fOk*.+2!CݼU\B9|Aq}!jNEǿ2|K<8gJ2Bsn-$4*F4[uf- K~ iK35(zGc"+"UR5CǛvY82x\\pg"wRވ'TP2.ڿau ůaox9`f^xa"Z+DDW"F7RUQJq۹ɕ76S!uhv~(#N_S.d'AL(eGJ8M=yY^70~gFCzeEvkےքdʕJ^gt>(/SSim$zyR$ߚmUҼ5'dZzHh6+P¼hK coCD(0y mAL?iYV.#i#y[SSLт#v͏^m_XPQ^ i^?m"GZ87{kw;&iTd$ΖG}bL1`LyJRwA5P#73whqe KYε,y.*Xs/zSA3 (yH?Grx8WҞ] ۞: )uMi,fc pԫ _*E 3 /;I/3ngHr..innF@sOlk;pG(%D1aQ[N#g jcr 'V:[< #oI` ^pN/J+-t@Rx=曰 B^/aU'L<`em 22Q/"JNaUxnn_GӬa =/7kl8Vt+A6Crχ+݀>~.-ҏ3uX xw33Q,`)1ѓ߀WN\+ H$yn%`#Uݫ #XЛ3 ӽFf_Ȧ*< !6 0FP۲ɖҚ mRD NXi^^2LǛDž/;2iHL܉X1?2hg(\8xD1j ip?`ip,H)}H:ǰ=qS%D26'^M3pZHo9:W l ?\I_YgQf5Nt<{ ǪA#Td\E}I?"spsV-;-<$;[Bc^Yo9^ջƚ sE>)H6? 8b74}HGYӐ@vF<7R۱2fz4߆UM4/xgdF"1}~]#y =_4$Gmイ_v_)'in;;6<j% F1wrûo0fKWݛ[yqg.(NZ:i"qb7F|l+5,/6̏Pc[i["g ~\*$e"db&Bsjuoy0QB۽ \K>}q ςi lD2`K<ǒČucݼqziʮnʄAgs?K;uڃ Bh0rǶKӀ,R_wUh"5I8\mhS H VEԊۍ܍^h-cy5kRɌ#`U@2>V&Ǔ0Ԯqse*#G\!NWCkɤ;A\D³WųT_F">sgk}Sl@EPC֟ \ /*9xZ㼊bȍP4|ۏ䈈C8؄|WJa)ڒ@T" `1<lI3Z =2m.(tZ#Mdurh&)SUW=dmVś# %enSi/YdԩEzR@B-9SM̺qKc5\5UpT#hI#J *u՟^Tiy/) ˮ 5K96U Pbyk׏W sM`k?pv e~zH0 ?ˡrH섮Tb( ?j #(qژ;-4,h'H;*} .zܺ1H6TtJnWTO0:_y?gLT]"1;8^o2&=qkO{<?j[4}9) x*`^^i|&XoVl3 qtnQ9 \׼a_S`XT+F@>y+W 5O:>doۆ5=XlZx ]R#br 4>oT];F'dϮ'"hܧTUМyv#!7p5fGPYլ d/@ Bvd : E Բ+E55-S l]0-_ v`(L1ȸγz1#ͳ˘dq ŽM+KQ#ڔccr0sKD$]u3<#_4!e^:+>3(1`ڌT#?N*e!:<Аݔ6+D'P0V]',7X}Req5s:Y HD)qVzzu8d=a׎&Z#f#z]8,]xabP*.GdQ?]W;_Fj! 6C\}QK'F%m,80)(a#*$}p,˸AIɍTɲ95BZ{M߹&!Xy†C 1R!JhHRCP%_"7zNmc NVBZ\1J08Ifh8槌o6U^tE:${ N~ Ԧ2 ҃LgwoFN YJ;]"$bQ:KF7huw)f8?]힛2զU@r͂QQ'-ū~*õiO$W?,-ccnyw^\뗷>B|BQO56cD.`Q1e(ѱaB?Qjg)twj,g}nt;fc%EՒsnWʿzp6>n&qь* ջ_í~s d( `T Hk;>!4vQHoX\T*}[po7aC{jXކI^%^Ҟ.H ND.7e\5XPX}̩]&M0ڐD܇TKDsB#XD> *}g}NGD4Oj2DlCY`IzR +,㧵/T ˱ZiɜE% D?|w븵Z䜷+(@T+K*{׌ 費o5h%j'n3F&^K%3e2q[Sj{JEnɖqs3M7sZIacQs"LB`&Wp,٥2Gj,T?59-p#r&F4m)h9ۡ J_zQ, &v&^Z@5Zc< zqtu< C&|j dxb[=\p 75!a\^MmR`ݟh#HB b~~"1Lu`uub6K5֒khZʲ4(?avժ } Uʶ ΋KM FV3$cW0??P5 XHiX IsCzgIhI ,i7mK \Z2>zC6}):i()(#毋vg-wUU4 zKᱮo7rHZǎk ^ ;P8w4/) >\Q{=tEh*BYl4QU-苳W"J( Ŝ I]>X44mj@ӓ,,#Y+6XhʇhTMqf,ŸL2vBq》csA 8So! nѽNĨu9Og=RWYH:5=V8-lM]@d3ΩhWE$ 88;*Ӗ9`w@,dN(B]QU Swi:ZLPFq<`#tZgٗq?W|={S)I \Z-&gV;Z5U%t) ɔkPjo DZ(>4{dJ cz@+'=C44+M.O pj(DaISۘ-ErKGT4 z\͞ Z$F}Gp$>2]j{%&L |g.gVLGq /S7xvybYYZQØ> 0Y6J  l q,hy!QXuM(!vk#[)GVVkLj õ&Q oG[%95x0c%Hy]hӥtH ,/\N#^i20,(cm>FEyOAbto1bMg9O HDZݔNP^C'('^CwV X$Ud(":GGÙӞ%Oi2xcMyY`%. (Rb^Yy3E /C[^W _r@sS`L5njCt. )2,2!UePU ^*hF]H 솴1(ҒO|èmoD;z_1N4=F9/Y>w_l&EFOC\ iG(.s.u}kel 2h Xu{EM? g:|So&9 l5{NL1eFy\T0YQoŦNWfdѸEx=ѩ ZXX0D ! O(3ɲ/Wo?cTͻ iVO&J%S䀭k@e]^[KsMf5jsnP3?1_.+ԺB/6Vel30)96-K;zUR 3ijhb#wzu;r^L;tdAx։a8E-x z/o4i5LjO myRSbPJUF̆:_7҂yf~3L oGXd?H9W]=9˨crD0D Hu?NFe`3= `ZG,3:QFx\GTޏHUT'Ex7 ׋`R'b=J$w33)dKj_#:\nGJ*upwG/,gѸ̠S_0gG/]-ϡPl|k QIm.D}TWg]5~T>O @wRhfVT?|sZjNҠszj[~QPsLjeGBF;K(=Ӹ6ypФrU Aߺlz8vwO;HfZ4 Ů5G64* Q9RrRGS- T(crM\4pjɻE7ڥ.Y\=م%Z:ҖH9ԯ"XJsmw1r貝V1_cSF~T҉9h?ܻi)J?g,Uqp&I*C73W`>aJG"_ ]Z~F&iGGv8|H5=8el,y'K:"Y<@K^׊bێ#B1%ҟ+84FY;{픊LЎ@S/YFEJ˫*^Rwz" ˹rӘ󖫑?x-N.HAZ;qhq T [ } 7M3_2ɘCiRyU5]F (#,B]3.S@x|!x@Sx+߲A7~m5\҆` ԩ;(+U#d]m0фi$ NRJM߹v q%q?"L8 `21N9 Tks#!v QW.bX>_ gxqFޫcfבbQA<B5U:dU~ {nǛxFUߥlﳻPdMJ>Dȸ<$Ӊ;\NR ) ".ݖHLM>s1W'S޾a!VK2/  :qF"}L6I>'X}gcɛ |}s'5<6E5v|m0Y1 uq3! WNMtϸx,ô܎8x_ P!XyrSw nȮT8~l83VW ۋ|cq/ylʢ^EKh$")~;mrW i5͖άvA~yzr]s'-ҏ{o&G#.O`ҹ4#:2~U&Ѵ/xM`7$H*2Z5ϝ1c^=\\ 7x)wB4{z:1|um\Jx?Fe=#7:$ڮ:V a*8'^sX2Xh)x`@D-iq&~̟rxⴶmД򤮄wȦ- ˉDk6A#E`SfB0ɽv̿ɾ*v*q WbtL;~nǺf; h1P8̽'PsK=[Y-?!=?i?lԔ1 uЄPn^׊><*P2rnw] u!˂uU]w&CzyU ߲r=F׬EdtXb/@9R#qN(kؤHY: ,i@ޚ2nEۚHJT̚ride~:)+I0 swNX^Oۈ\3!w`G?:Y_0 F@hYz_M `&Jd ͨg)NZ*&^[k?􊬍SȻ KT$}~K=Tcĵ3[%iwjOx`mHcBdQSV{M9Ad,tec350QnjAg!% W%YFQez?Nk~եppHn]Pmz?[IəW-M 1^bnvteKߟr%Ju1Wk5R޶f|ԎӀ%Z|D} v,Pt}u5mG<ÄB,BT .z@MA9a=j9&7̣8,kQ%%=%Ѣq3èO"Nɍl\x('L /kiw͙o#PJ0_M@()j (i)%G\yٻ: 50f 2Qx_M~M kI 9_6 j%TO(:%G2 UFBy'e+ mjxd<ָFm^jM/艠Z=|miutbHhd,p@!tSLC4Mpb]2tqOf@n#"cmVm'uVm' DM]ѵkoUxR{G/]ytL6茚)4Z&xa| {\V/g_{MmZD9XPiއyjqAAnqa)7ٔ*V&`}40a,x7V;S}/9U#D낔Yrvlҩ`$ŁAĩ%ڣ&aeNޮ-W+-GS'67̆z=r.8Zyep &rv{ې4$±Dc@)t!|s1po(\GLSH<]5'jPb ]thT0fMNNgAa? T=MX$0A r3s##zt po~@y"*FD"=xh:daHޭi~)zv>oxJ,._MS6nfWyr6}i.1I=~n1'9^,ERv?5iAPPь? /_Q4Xyhʴ2ۥJE)Acl.i# k KP()jPr38s_g1լH;p~*Bʜ guD.B@4ߌ[Q/b%50@oܧ-isWPw*S<.,@1W nAtq}A_rjww܅YS0E_,l4L 0 A*$38lhJ2 F͗Fѐ*HA _@фC1ŚuFncËG#1Gd`̇j%.V2,Zsz,oCi"<7q}C3/>gi A&|kӉ` u8L|+#ozW"$ƌnlKFcC{Vk.LRmxz'Cl}Q^,&zWc@?aEː$pcWX7`J.ZL?d5O꾴{iU}!PGH$.JCZ eb>f`mkF#N)+M?t=_O-z'POapUHE2VODd-V:)\K?xC]ɦ,YO/^5?&~ͅ`;[Up)#[VlM @Zbvd>(>5Ìu`&Vb9>e<Rg?w(zP'm*(F<g9 Jj8!o2ѵmё1:G^rh6 2~E/IӰ@n'\|*'||$-G,GuݨD~{|# FI Xgk0ח K~QfAKZLF]9Im]p&@ޜ_^L zb/d*l}\xJV^*۬|zP0@5Ǭ ;Q˗&x }8WQ is}*MU׹j:Dq_9k\\o~IБAQ] jRB-Lr\4C!!Zy8hJع(,R#Р3|/K!@M:")|vz<; i4<,[r=ݵuJ@鴵Rr1a.W PLF ZfD^ʧ2&tM7u_rlaaSeTf4 oJy _pZ+AQ O锞a^8"9C"~e>/ݥVG-ޤ\IӸ589+*unjB-s q W;Wb>C9G7eS4΋3*I-0q+鍥)/9k&vG"X'yPQz;DuDo\~=4ż4ܤw-s]ǿ=&eq84e^2v獊r+/.K՞D/+y;RoGw- 2ly.)[02bcRe og5L,|E_`YOn3E8Yj߅qA[z*1R!v= 4M`7[ct5QؽÀsb6J#|ŵ&kȻM5-I0lㄣ4J94 e\kXp!/c$ {h4 {Q15ҋ>Xsz%D`eҟ 鄣`͊~Y$iEIf= @m# UN^kZ*nVt@2` (W|ah%pIiB67jˑ+Lޭ(hqS _`jM]0 ~QԆW yeޅl- +IxB۴TFnµL1%Y/9b|=ߋíEp(dƛ ,:A8BR;0{A-߳UZ# tFY##\B]fYL*n-l9XS2L_%x48w] d OCSNf 8vIlY's?0"ڸ.|OYDr;< i9-hotsub*-!T d\H5Ya:3/3p1`rf-Yno╶DhEF[eurlWǷQMdjߪ!A3 YD2G0 BWD:LC)7E7Y9J4aOhs˜BU`_?J7 W@eT:5;rPlG)u('z zͱ?e\ ;)ܐ]y Y$A334p⺩-<ઐrM0vH5\=ԛi{9gh( Uţ='5#YGB͔6^Ka0K!>[8> /j :>,Jλ.w9v,qCʨ s\ȷŻ0j܅RaqRzMct~QMxF~ ¼7 V+< Q-շy>gɬu\&ͱ lvP@CG0>Z;b,Үtu-YS u_M-Co1fQm>9D93[ۛCR9d{gGt  Аі%HS_]ͥWY;=3;ooKN@]DegegU,_|x-G7Y{AZS 9Ro6<^WVkj6:,Zو41f&ȕb<SlG]{i`/\)wefi)؊4p ^I  8cL(6oCɕf3K¦2 ] @ mo$,kai.Jj` H闍l7|QJ3ɹ^-&(N$DBjWfj ۚ1pɎ)_3u(a}*#/>×PO@mk)Sd5,l-6M~-t"bϻe4V`!x`S)y٥wL?gAHT>X_쐑i7p̊Gucmdzj~@|)Zju8Eu̬m~V$4Qӵ,$i>ډbMWm0P'pɠJH/Twi,07m ӮU&y@@'b8RתUYbZuxZxhRbA ;]"u]V. cPխxP7Z;1B(L84^F n"4\?tWX8G!ƺ;1.{Y,q3Px`ST"rAJ;`.]@ Y; rhй{Ozd6Bp79cb adǦMBnh@4$W0/Җ.0qXv>/቟zrĕ&^xb"oxszd>h`NoI>ėh Ԣ(ͨ>KTI NmO$m}'e~N,#AZ=G=+!pEb{͚ĥ*](bsͪ j{X``rKn'CIyLzWrVEsrzdx>;7*@ۀb$&FXX]WT3NH5)2aw'w bC.1{X:YѰIzFFH]&L??!̙J#M#-b 5HNf|;X3]1y4NV#N.P6Nꑥ3_ΥjgݴBG}v6qSQDYbSSI>Oܮ&4{H۷]P?w},@0ЈuB~]]IsXyt#URl &E^ sj|ә1uЉs l+@P> 5dk3,QS}JkJg9^qAn OcKB{AFn`F (953qh^&[.4Yߎ_:{l:VtQ~!W,ڂԀ`97j7?y>JiI|*sc5rmM8o:6 <{@Q^}ajci =!GuB1up0[!!*vVQ ܨ0U!*RDG{J2*սh܏YN89|<>9q'2oJ<"费Bg9Jevoڥ"~& ${gw Y=к/zda ,N1v_e9&mH'YZJ,MdI|YEߜ֥a>O2Ɣ@ fQ9yɌANT3}UQ,(;\V Lo2,QQitW}+ |= .~!_h,AXD}ڍ;(:t÷l*f|fJ04ܺCES[#BX[هizjXÍpC R/ѰYH5ZI l~j~E1bE&U'y#$ӌXjBh jPnE?NS\V4&)qل #)T 5lbxhKYXlnC̶.G} 6']0r}W 6z q=aҙJ1]3jCtf*ZXeFC`+3Q(w/"E3|ۊDiv|DtX;@T^[o-uk^ ʠuUT@I}Nceh(IIA_=q4L3cfZmq!dc_Imڣx4AoL87X1iIҌ+ JNJt˞tt%\!  Nkj?>`$L Y%JLj_SGuy?5T]dǺTK=(7&a%TioB;&HHMt&4J{3Dz>\8̕Ed(OGq9g兿z9u,A&zTiZ*{ZRҮ$֐5R,C:<##jFao[d-kKkt:M8&.9ۭuguRY77v(מ)/й}-_EsEwn 9C tWޡ' XwSt& yf:XZ-M4Df υ1j<u!xM<ɬ OX/[kp`0ɏ?紜'_? 4# NFޤ|p5ݣ%쥫]9YABC6H-Cm]2\ Ϭ*i=wD9 l2[1aQ*sNl}9Q*$#OsAs\3-* 򗻍D,e^:]+lޡJxq `d>6BQ^˳KXk=S=7Ӻڃ(ؤm];)hS )QۜNX^hmHoW\̏DiXg")U\Q"#߯SĎr^/G0'{$ɠ/xnh"yB'.I7l ?Wc ?Tf6rm>[^{iRʼn0%u2!x> [X'p2FUq]:q2t\?bV@?jPJ&}$ v&RdWm7UX.{%ʞ—rdR3 Y1!lAeUttݛYI?AVśLsYB21/3DC/LYvOk@B@5ӢqK˵կHJ>F1#3)SmљhEO.(pw|ykpce,V#T DRa@h?‡18*ӝrfV2&jXr[i\$ݠ'IQI21P)H4e @.5_3\m*ɥ[2 Oe5iIp% ^ۨy "oF g g,: ikv{(uk!`]Đh]SI~  n(2ļ(H2SD2J{=k]eQZ_wVȫ ˑ@@kb[{ ks݅n9'ݜOz"I3:CByZA 9a_(vyg>E_$jr[ӫGG,KPwYI㗋bJ>Cfx=m1TqKrVwKAwu]r {75 Vû]Ljn3J@w"RqydyrJYOҟtZ$>P<),.\zf[1KcV‰, Z5\d,8FE9 $P}0f6WOՏ_ \,)?E,`E^U^cB?bia[[C싗|FtH HB,4BQ=0KV)dag:XR-1"`s9{u^j!Kg \s~?ÑX.z @ç ws,9]*B=<n/d\?dkHKA\ ]SR9g<6I,zAlS G&Q]e+gBt)TS^ -1{^;@ :(K-cU}DtX V>ZokusP.|rbgQaޘYaSrӰEHۿ ^2ص\|XZQ$DfavQq #Vw2|H꥿9b:sғ82J.25)L*_g YNܟ̀t#FY9&/vRLwGO_O aNv$f&>j|#B ⱸb*IQJ1OtAPjHUe߯vBf$ xiHg堉_*ځKʼ_%]ڇoc>c| t55KgbSm@CXpgo%y|A^}\ ђAKz Q-Ii?f_2h"N,ld#X wzS`bW?"N@dV^x*ɪCe xd}i)( qY҃fo䫄|TiT  FCu'ȈO'pbSa E|Mie G:vOi\MДƪ̐m׬wbF|6^P zjJxxK+2 l.Dsɞa{xϋ@q=E ! xjVl>VU_]>>Aq$Di$LFF{>O @/hU@K LjGM< X{,6!FKj⹖,bJr#&%eS4s^DsO%Iq$uS3tl&T/%#:乼hTTp`X q<Ҙգu7#C-O:UCu,qŪӊ \"D69ePiG>qF9v, ~jJֻQB)I@6Z׍Ex2 m4;bL"n7rBgGH3H Ѫ\g=\/ogrI׎m[SICY];.sC &鑲J,IBk93:=ZXU s꤬t&efc scwɓdچ]ЌJI~/ 2]Vl^VgG:~L̺I߀@>Ԕ5Sa?E ~Jh;2+=JzQ#qǰ6$`yWz`rVA#2T3ŘA`T5O ]7zWY!i ׇoXQbzae@L<w 7~@9@[:c"r־x"z0TU8D [\g/w_de28yvٸ#Z " OfM,yaS:当IZ#hҞR_#sW7iw+aap1՟gҌanӫ^5Wy/+QJmrj nNRE>x;u#N"eL5vN 3Jɢem X*C.sԌG BGF9'·"|lc #-zgJ% r-/_dp&KԚgA0W iB!|I֢lBi)^CN{$jJY^c =v%3To 7:.NVкz9dWA_@^*ȇT?GQ0Γ&E(Q6X!H-;qܢof.7g,Wz,2ԚH Xs$? qU7_IM=Aõ \ƫ`I4t+> 1n(q7]#Sz^.K ;sXLcn={#dbY$]^dC~G+A%HG>0nJ{& MV4kHDԃ] TOOc(!Cy/o\ Q|hm['Ж7U O3yb3yvQZ+cK3W <m1o_SV@k˖|e_|(=sywm۳SN&/ !X'b}pml$S[]K&;&q4h5:+ >9 }yhYͳ8zq*ھvD .Qq=3hX2/9=R 48TJPoƔH1b}ȄԲro$ө׬0ն&So `nMe W eoA_[ ?=Eu.b) H8(J!V"*Pv_|yo*AQ 5 +_:-񧁒J\bl~I?>UdžV/\LEd:t|$=ZAt^^5[L&`%ڪX{<(%^~hXp?aaj+_/"= M*f,ݺ<0(agE~:.3 i2r§a_O@&^y|1'xbzi뭑hc2=ȣ JȠ6E.-z{pZ>n_N Ek|064*B5\Ǟuۇ?8 ls_>ɰYv/Cc8-Ok[I`͖h3'b/JJo6k>=/C3[T[J|xlG]˨c`8iѻWB; xH`Y_S@D}nmқ\Đt B#z0ҏޜ hEWK (d>ÒZJrxtP^"hЯiro;9R^eZ .]p3|w812s5^^2#l~1t @H t *'81U? |b7݁P>zrPȠk*/Oyq7Yrk%݋z;^L|_ןsӇ4m_I~,YTMϒjG3M'Û$6eY$J,nlJLKV-T딟WN.i6姵7֘baw*u,jim=WB cPĩ@2$aSRxU 9 g%.?A ؒ7ӖcL9agGx3kꮔ<>YmFy˕açj=;.azMyD}Q^h{.C-IaqncNt_O=0zI.x\MΪe Ֆ-)]:+帻lmqP(fr \+%5SD?MDE.:|"bx^K(ť4h"\V_ڛcBH|_[i#91f?'7WOV~r =aWH"o/VLA{MXBjktM8L3`z?{  ]S2`CYw"b< әh/eIhG 7{ I;q=5D8*cuٍ~REfPŃٟt7Qvd&TT"{jql0:.`qݎI[od$kGk6M PpD;LHķaG#c :J=Gta-AZm\z_u$PYk4#|]ÉfGPt&==빳!cmbUTiN]yRG pSM (N 몞d0QPZpǮ {S&kIޢp:Sfa|imև['߅)fH5l} S '!% O.餧MMV]Hj՚!{~]S 0u21'Z_O!rqI%gߊ8YLR$^Ѕl.DZΉ7=w'gXJ2bܺ@e )e,m=qz#L;1jNBEYU|gFnj ]aYޟ}fz &syi|P÷糎7M'0.8؂s(ĭ(7oOԲ/Q虾"i.ſZCa"ddcO$kbtj~j8K`ulk:,r¢fYZoX$aDKվF\2𴷂`d:h~*33'UH0w5zǤ*+L f p=uh>ѽ6¦cDe#(|IASJ`OeK;`$SA9vx2*ߗOJ^:"S$1mcǿhN/_-`æ\i*C ټ PFkϼi VT!dX6 5dx, V7 3?ԓࡱdvqJÁoJMSHK x&JC(f0'՘ۏ:Cu8af]5=JPؿrryg|zWWQ^+;=D K1JRE;2,ӣk*]0CfwXsIX,vd^8(uZןaP,O_lM9B&$9G_(8Y*W42Ull޻0= YiHNs\" T=)."aյ 2hZƛpr1z#+fXzD?vHֱcĒ*|a5T(R##3cQn)V֘RAj1䋌شD4F[2'*?6o^C&MWa9Ҥ sg~XH<"?p}KZP8ͧvL2d\5NT(瑈ԉ`@{WhxyG[m$Ⱥ>r5nێ[ǃ `W.[GC }Bn?)?f_EpHn-{J#+Q`$F>8{+6A/rb د NO,B'1 >/:gac ^Jt>yxt5NtK݅;˜v[{jTKh_,52JJPmN_B<#nZVΒB=n>҂3+3UN.qLĔ#fv{#AR5 JIga A!APnv\0!,G/UF9zs`UݼN$tO(t4,d %-Y0Ҫ|k.v -T^pY`>'O!B|=sopyU[cP9뼳2Xa~ť!w_5P.ZDq#>}X5d{[Ƨh{ىzDk׆\ ?^=13[q-CrS#XrFcBj@Ndd0:+xK&3 ̛䟾'XAHMb׳͓9m=4mjDŽW[Qg.;C~͟k)G:mX"Y=w+ ZrMG@FV6k]#USlݹk?6ȹ?V\a(;.,-BȨ5m>CHȰ +~` F Os.ˊ䆎ė*'J?!N.KnOuVVQoQ| A<($[j(]IPu,eܶ 8^i>F$te'fg V䆂Kd2>X3sQR> II0h3GGnbZjn % K>8dantܴgE1R;ƓPk*r&0>tOT6E5F+,m"?bJ!'y'P0m)_nꕧ,e\:֛\0kz,Bíc, |? ~F*xmY›ol2B̙S1"ZN}dЭ_}=@6΍-{81U ]"4[ Bjli0/h+ ˘q,I(5ßE \󫺀1~:""i gL+}X;C{CJ JL}{ (,yw`"_{\rmh8٣ 8iS'7Pˋ**i~2tS[ 3=۫3כt(̐)<d]Ry8-k$WblˠV3gUW-tv F- ߞp+d,׺\M}П9M_g3,4##u˾C"N ¤fM'tMCz`#(oS˵yһ_M9SZXd֌}4Z176ғHmk32_2AzS jWt>jxirSH!Gv<#cCƺO[i9!tC]t$,1A@#ԀpNOяO.b~jiK\su9!gqiMqsD2`gpfP,%>dȃ3v#8ťQi7]1:T-Ne$t~YrΝmC0Kr_$ú-!1fsNbg- $8:v 0-TӲ@Ѓ]96~y:[f ~r,,W[gS$&1tY;Q(&ZS1rQ|Mig'6R Dh ˎi:ø-`D #OMg O82+Xbj9t% Ftc,Ui?{jͭ͘7&ZKd,s@>1BGjB4Sb'~/ o¢)=@wpXҺ_Kre(ŐHvxB[x4E³y$?5\(G\/oaB׻6+˧ZCNM]+}&y1WZzsJ[ 烷8aSz8yrj 0f4yZKgDtd8MQ0$. Qbytܴx]FkiN,yDYjBO4j̤:J{ {ʒz+jmˑSy3N7b{zo6=z&:,?ɛug&yVQ|OC@^ tcޏY+c+݄Aq dM&=[oAҠ;.ZJu52F1_oC P#3*TBv"ETM-K*ϝ?. z dBbmTdC^i%y@[6r)YBR`YX$R,l҆4UQh.QvW@  w0ڑuq?-FG2>v&z$sy6Pqn @%}QmʃK5/3B2Yh<)_ˁWm øЉUN}81ѕǐu>zl"$KQZy]B_^[(ԕ 措M< kbeb2 0}"Z9ֈxU6;"0En￈ڣ=S%:?ۂmFBB^Rij}ȧe{j SHA~n^&0 1JZ֟7e&.Bnm@O6wA/e[48a(eKrsla2`&ڄ=xCse>"x~l1yӃKhC yF&>r`EmY#=f@c'&eAh"MT'#AzQ˜aT7$m rY~Q=.jWOh~cQv~'*!C ?"\gzklrWEpMaŻ"0U;987# _0ghPB!D>ńEKwy_n0}PնyP!"/+D9gX ݬ| &{-4W3 ј y҃)u؅6_.8XC3lMϞ{&8JHlH1QRnEI93ꕂ^61` V9~![ c|z{Tê7IXX[sdcޚ#'"u&CRG$XZU,>,n6Z~pԹ$%N$R%/Z-*^,izp:`t'.Ѽ}K08U#_Sm\U/N&PJ7  3 ,h h{}ˌ"ء}dPGbPciDD_u 4//c)(@&v Ϭt͙|'R{Nu Q`pL>@X{mSa&?96z4ޚ0K?M4OJDI&Ϥd-F5Y c;}Nw&H^6<`~ ؓ1H͋P 3,ϲ}<E%#/FvFiyc LRHɲQmG1jrxorPeYO)लFuܼcm@P,ϐTgzJ;,Ƣpiᗔ"!HrG!~de|pRJ7xu>!JoVVx +O9_:H҇3Oza <7hg3-)U.[H+9$G6'zJˠUn쫞?q;V]XΟ{#0 hh6MkmĽqFSVmgG0PahcNtpg5 fpض?n/fW¨YJvuPaDN<4C^qxt$D1zg|W@b˝`rυղ^e"-y(%>S ]ޗC$-qJedsَ8> agLŵ8>,QԼζTqBP Ʌ j{g+h>I5:^sbU2rw_U||<@hEzz؉]zW3Hh.ymHۜI㜥Nw\T'L*gbn.|A9rlm*WູE)7na]b*<)BTj2}5j +A/:Ҋ]|^hSXb(L?ȥy:q,a:$Õ\Dڧ\O0:q6b 11G/zL~%w[CM&7pyŒ,B )B)(,~9z?ԾmPe q>t%PI̢JB8_RK1Smǟ lGobNT͆~I54xvu?{4وX]MGV#ՎCaT53#3Bj%8 Y\2M7/`l쵉npƘ8D,۾j!uHVQtdX8ھ>Y~|at?pƍEx/'H Zrʊ GA2mA;d==)V7LU Y HE)&aMf!9XR]s4qLpV}] }#@C/i`rq)LBUeSCZ+(M}MEct8U7rwzQWڬ0DC~Ֆ嶦'fP*{==7Dc4R@=.[y syN{ ~H~MDLG5+4c;$믢ޏW׾־HĶGLjek˯D1•yUC1ܛ]yu09Zcww}  Uty.H.r6Dzr4 ֽ\@ls]b$O=V=fVHnFk9@f-"xd~Kuũu}1tC\:Rۡ5iE dS.ލeY[D*7S "Iɥ7yEvN>l;Lv|gYqVBe]ҼR Lٲn] w-@k|#/q4!%)/ "Oڇ')NbH]qK\o_eEwg< V`82}M$T+R]`.5l f`@R\>FRBiA7Fk$-F8@AB ngv?:&t`&<͉μ58o?eWrՅ7RJND:}V/c')H`ܮg6tuCX-CAAfthK&n~: zӁGoߣK^.xZv9{*$v{S\5Z˷XWn&0T0Ȃe;IuKI{WkbLb+($lKQҳ5uqgYLy$oWaj"֧>'EكG;>JcXuSI0M0!Be:}|7oq?S{ptQƣg͎HHR+ASԪ>٬uyASDJԦ='_ F)fzOڨ3Z"@/f16 LCa G#H wWeҬxD1: @Q$uzcZ'M]Yf XABsXKm)~x7Ŷ?8 tr\3&fL'm-Oor~)vt%H]Rk5}> qf5^pk+]mYՀyՅ8@84<-99TGK!YzMk,P1 6b\UxZ((_c_zn*ʓOY̵څEe:7gl;;1 [qVsf]jcԊY\E$±d-}~W@q}-G\`N mny]j斟U!EE& $vW{;J 7hn81 ]uD*v]I Rb`ne\ZQHM" h 04.<)ey= /NEw"òW!O~݇[2kk>kE bt}o1Wt'q 98{ k_zWk2e!R3jٽK|#q aʨaByy +>o0n }9Mgs.{y It@g3]q=iU ˳AwbFD>gt]bHo Is2H0x gHJRk j1r0I:\6vS+.Y=#B5JyÅ~ռ;tjDm ` uVSh. ~ZZ GVn^l51ڙMp}xC]'-,L^hy>wv\q_l/hIk5xh&&5Cq's\JWYY?OGjk/|SuRo\8tYF\_) `FB_"]9\Wr$'-b* O$u }mBo[*5{+{/||9E[~@-4iJ6&ڈ,!~ we%w\M@u'-xE̲j80&y;8LbI"\N{,>ci1 A,"~EΊh4*!D$+-inG}0ΪZ;M#R41*юEkbsx br3!m`b,ҕڱ9m752u_ٻC?`2n2U_'WU7hfG@ᨸ {B:aTEWWmm G^Gk>a e@CĥW*gz^9.HYFU!$-K }Rѷ/#z[:w\~0>VY5/̚f*-j<uVT`xy|c1e[k$#$zm[kigG~NgB_*t˵5Cc%8݅1#i4Jݪ{`p `J}Ld0㬼'o [v'bc K( $]8\$3؅Gxt>fU/x䢙1oD(|iP&S+~G[Ռ%m{n<'ٰA##3^eyΡc gF'QֳK!W7SGOˁ:AAۚY~7ApLs"$_M<˿5W+*<@0K.۝:%Jwd\M>4 Avb!?>1ycĐLT \.^$qWPsע7Vв> X_Gm%T=&MU"xE~gRVc@ChVd*ٸ$CB˲RɫµA *׍tg uX梨Xi68ߧ:? mOi$,w*5St.\%@\띥MSs: !?b: L+Fj(GǠkK$n!hurQVY崞4V0~+sMcB@.B5<ٺIaAM4'q&n.2FO-*(MjJΚ҈䑘'Is1u *"~t4h>%tA@&Lb4symu|VVIt9AN)f4Sl{nAFq81!BOk2s {٬xAu> @VF #pu۱3v7C Quةq(KHO~3b/4Vt('?IRW)<)!эSp %HTr  !582Tu_x-S`,5?I! ϲDHF,o.n`N]n6Fz}OZ\fBU|>?1!y1! ڕdjT;(֡K{)s{g7՟_- o?`|_8i1jcБP9Vod.QIP$`qPcRW$Nco-c,9,۷%($?kOߨG}ʬl,~,У!mKu KzuzY8bsT\JJ4XAсt= JlcaOjF+] $ c#5,,oQ[!|m)V|A{*M E`^1 yP  !ѯFx)Lޘ"O+feUCתEc^3fh4> ?D[ g5JCSې o7O#IqG!6ÕHih/kknVe_[궍MA!cKÕhR'~)CΉP }!?Kn7䞘4,P/a(Ks,WH(jQ,Oף@һQNQ2;:ڱgAg~•(?,V'~@z hxsΚ4yZ\G,&u8⣷]^unρ+TJL{+sW7%qmR{'dbߜj&>=qMXO g`^ԙ3>GuSy ja^ePfy'5bQ_Q\vsSB=0Op3HWV-:{^۷(l.bA .-A VkxǦ'FAPّ?'ނ~Fl#zo:CUIQcĊCK*0WHɅ/.2Ŏr 8X[! hxs1ƹf;~^&Y#(8/2,¬\>WP( 5'Hh'Ub@Zj2P[TFo v"ɣ'4fnv8Rr ,q˶/xg|}u?YwC.:-hUTKClArcjRR5o5iԈaB]PJ]XzZ²Qp,KZ vV!{Xzr} Bҕ(pb]e( ?%6iYrܪOuZPWk7 Gg O <?ND5u|\7<;>r ( : B*eկItmhjQfY*cr{#@֬{.Dܐheg'DP@FeAIqLR&,ЇzZoEaXzO#g^t&0^!>@& ~!vf 1OyXU\rxq?ŃyeIK*L,);OgKa V=[|-ۺO}ajj3B ADPgwHtpi˽MM $v>WTrf㨭jd73%z2Q{/|/7TiY99Zc{8֡4c*T,ErYx6Ct& +6 0xt1_9xCd_M&wEȌM.R+LnٿR v"_,[A@ei!%ѬKl .2$,Ƴ Ӳ:M'c/9$ Y xnJ6?'r͠EnIv ,Fr{O5'yGtj=٧;L8lƀ l=M;u'c{Iڅ Xn >uzuSK0/f}V;yh0:T. 1VƐG 7NnLٳ9ՙ(M;W zв "hC؅{=H٫;$ X.L$%\Ψ6f-VdR4vc|_':*~ĭlRXp]}"Oc3)5cǾ' :$nbhBL®Ї0ʻǢW{-l5af0R,BB,WQhN[Cͼ;U#(YL`&(W 9uǩA3C >YDl 4 .ˎ?6YEzZeQvLE;g)rI!cw[w/= 6PN?L5,`obtLKsAQauK8Z͛8~^-8择_O5;:i7‘&=l2k9 UcK+qeKXJ5CRρU@&QQ\Lׅ[n{`URҽY;]E +!9!yndl2v%:VOɕg$<~hja[sYTɖZrvUIYyb@˅I]^)8*Hdc-AMn-oyjAV~4A$2Im @3 @Lp+` H ycJ8%m{5^eq"#&"2/VA@ߊU@gb`pro)ܨ#`ExH M׷:`S!),$?=KZ߄8:1P,6wlTd_s d?_E"o9)h٥b$dmڮa0o[*?]J`J4l]=T& ro`,\HJQsy2_h?]r;iy]0IN@gu͗,v.uNKVMA/ϒ,Eo!: "۸u 7p:5K:M@r _NaG { ?WW 9Y j7:1ݚ6|\6|!$&= HI"Ms!( [Ӯ>5 ã疾Dy LW(Y<Ujqb!Lm-o| Rj绔-)Y-쥹 p}m#JF !tHYIKV8H5o̕oŸ{j=-Lj݂ٷLԘLZW ZeMc[HQ߃l;F}= nma&ڽYy)=I0L"f/0q{s&/-Ghi_SIeR,[x{P&C\."ǧgg/EAu$ XٍimGRxVLiOy& \ڔ4mj9 C2ӽ>t,ydBpѰvjtĭFjցPKE;u&-w}!FT ?CuG} c" |HuQlFQM~\JE$_mEci֠VR&7Rm|%(icҊCY.{3r 66O~z&DFO"\{H\O, gU}|NZ[7utGu2-pNo|,I}k%rR](j=A(b-zR08LCD\Sƨ_ EA"p>v9N *¶3 & E5-q1 MW Ww^5CjCSOdl'ZO$&惽3yz0дrZn؂6^ªa unN Tle0 =A7ؓ$aeҿ`j%voqB yZ@{YɎߣ)B}sggQn!7LγY_l]¶pOSx)ZS؜kYٌ+|UP;Ǥ:,9音6pc[U|ۢ먺Ud3V y7'0*]Yְ hT*_R'Uk|ntѡ%P]79ҹS~4)g` 6'eԗ&2rI?_ѨBȇ@?*LAI=jJ1̆vL&NBEPVcQP\ 3K "`ge~6.ַBvk}"=X#ZN E{p2*%^,1rJn/BZFHaI% ^QJt AA Yν5hf]A}قB> sW)a1qjf,zx1dOI& +Õ.%Rx$;2$<MiͰ5Ӄ zce;=R%cźϏRF^eS3\KǿփJ-;Mwm+0"W΋5E7ƀGqr(l,=~R| lZ=|t}X3fs,`UGҏhSd_pT)H~rQx36rjI\6d~`s!)  '򺅥^P3L#^`%4AR&65QO-_v}èd)#=U1I "Oe~Ìݎ_O'}ϩcWӭ%lVsY^}G B>vwt蕸&?fCBSk}ɝ(+PcZHRIEկJC)/+ K*GHP~߰9#"2x5 w-g R5Q;+9xL''da ކٝͷoA~w8HBODK:_ZsҌj\76.gh=# {rQVn\^kZ\&8ͅGDogúЅm!jU#xlwh昚gL GwH)҇lY++CzbU8bwpO$iO,կVC¦zjpGo_zNSd,F,I\T΁67lʌȾjr\j&UB6;ѽt} (u4ulapP}0wjqjw [W߽Zl7>ԩtb`#wq{trG*4}gmW!@Q`5L}-Z<3 Z'1jލs7% 8*R`v*xIT Zm^oՌ:s !6(i\Ca T "9!X&S{[޽"$ Zq:܎vnT>#LB1TVʿ@,w*ßu$gxfiHr KWWfҝbO[ՒWW xtVS/)ɀʔAuhW[,3\s5}!$vV]j2gh1N<26tsihb%$&δ'y.ݏvvɁ0Z3r)PQYDyTcM;xCQkYE2FWV\#M62d@_83v)3< ‘ҭޗdTwQ7:\ $# x2'<ڷ  ]i[,(nـX_Rn Tw:zk4_@$&&Sc [,-Gm|5.˛\;Wds`ƜG?5Ce7r:їޗz|A jb!/]HnN#(xVY!<<(c6P^(:}$陔C;ϗ+g2x66~dy#+#I :$K ]Gǖ~P̕ac#|V iyy ֕_w,@GwiyO~Ea#Pxx{C6[BH[&u  dž:|m ʲ?<@l=iZOAXP]\vg7KpT6wÞo&.Ϋuy \="#ːη]vڴFm\$ttAVA؜l$ŋy@_!?Uw|<|`XEHfIusp:&e`w'CRΚU!W`;9ֺ8unh8pvAnrwhb/Lr.ݥ6wYnO'^1VdXuOz %95 H$3%q2Nf Z׵VpgXQ]U.Y yiJW(Yo+N0r'UEdq@甃Y!^.2qF ,_Vh%d7H)\AMĨ\]8nƅkzf7].Ia/b uXl L,x'U1Ac8|h~ ~[05~C` phKam!|/[+C1KyGkJa<ɧ=̵Rr;JH)V"{tٛþ -Ѧ y Jߴ~Y-IhhPC`^y{Gtd" Dj֕&\f'Ϋ%{QߟiPZDOA*\r<3,qR,)925Z`)i"0<|.@2-:U[ܜ|Dm+UKң" +тaVj7W QKj6GkY;: qf_uYM;'TlIic>uΞ% Y'zm[OhsԸ3AУ0q4UݱH{rkP P)õa>CcXC0^=YOwz'cܡk8ϴ'%k!C+f`dzMA둹<ߵuƷ]>\zt?LxՎn^i4m c_!?7AMT3[(b'l.5?h,+̳q N'Gh .>7-)Slp!eTlgM6GB3u?*\y}0lPN7'.ie`p @閸?闘$ Q*h}hYb9Le$YV<Ee1Ov>;;m&5}ߵFу|6\ ua6TQHacah{!7&yf,j^*I75&I9G~ɖ lu&e-.ݤJz[+_l K"{P =oQVzоNDE^I`/s|`jˋ@D:lkkI WK$Uc2]Տsd2CS 6:wk` H_:&;Gh˫%I)o #@ d``X(޾sG% qul<{wgR%`/DEn YAgw𫤧#{Ksٯ';An)Sc=uSŵ^58*nĈIV@ٮKU2t^n30&Ǽ3`'8r8{%cE` 1^Ne>S! fB&_`er)Irti㶒qc\sEI:I}<-2фЭ6U[Z|{,u-v\kMPjM`_kXLْި_]s^=d)Htg:l厞mI,*<;D|3L6a츩VgTϱ' *(yA$Ν3v%K }fpf]_*P#$ 0bׇWab2 Q$q f8gq@ꐲysw| 0+m1s;P@}H]S@%}N^^; 7krE*F-^icm6õIynZ"DC/ampJ/Ҹ(*|xDLSNwʄVV(|^$9%>*(6q56ǔX,03ޟEE$͞ɜ"FL`Z]zEh{,_@c `ɨvT r9tZjh'A{ۑbCމGzPRJFF6|ra^;)ua6hZvjb]_Wy"љk _eS-Z{M=mR;0Fh|m=/ S'^XC< Jqy(*{C:t-},ⱊIWrHAWF<3:ʙ$*?񊪶Ck!eZ筭TMn;ٽ@ߍr g%fG]I@Ζ ~g&)c;4GDpDa];9ء R;"g;kE*4jSh L2q=U /c.V,<;n3m!u/PQ'P`G|Eʚ ҉BIM{-ڴU Zؽfomq"P(}:[u(| .kVGw xT<ؽZ1L7T"j`=6SyJMqHR5U[VќW7q3}_0KL>/ऋ:8BnLZ 6ryU1q㵧5L ^H9o-DW4,K6WbL)o^ΫF$)dF*?#e. 0k1:-!cV.q٪hZVpx|O\Y|yk'R:-{'30BFRtvp\O0x[QO nzr|O>>G/T`8^ cqK(ĵ_]|䰫Ecn8l-5ij{:KXH7,J&ԍ[+[(e7^ƩTJ3[}řtu۰8Bsv@To[9пG'w(@30^6=!#rn !+G y{ '߮,0JֿVt]НV4F9 2N;堮AР9RZ81X'qH3ñQwBQ(CWh<1a.ǂd߾ףTؒ ⟍&bW좽·d%nz҄ (/҃j(xdQB935v|>3\6딗Y0tH Hk7D1b _UQ(yȦZ0N;dAPnH0o2c3<ƘO\ħ-P#geV:Rȥ)ȡ[55uۓ:Ib'*8A?Ј&ѵ:zӽI-]X묈cI,[F&VEZ f#$ՙ}5U囹SLM-INμ"=/eaJ f|}/pե: Q5"G|k[\K.@M:v vpeʤ*4Q~«%EV5ɐL *{R` gjmHjR. $hɚ, ЯEB0[eS Nۘo?*$ectkZ|%vĖ3v-ݝi-}}8x}z8}bZ%"j +F%Jt8{!(>m-,CLL^vv\Vۅ0,ݽ*;mQd.[8 d!Ch.1VnA4QWp|&H#t>o*!ҵo* WA;b|B:(e|ByΤ-Ȑ$@$GPs1Y/K_6 r30 qCoϭpL*8|!=WX*(Ҁi5PVS% L˸M١햯$[.Uеn(s3~‘ȑ>/\ }y])Ɖe"F$޻jyŢXO62㉋FBfd_nXR0"pT{э="hքyp2f1Ha oZ"?`FpKP ]hNvTRN :- ƎC@F(<buBdy |}cJV8eY j^-` h7!hGXoΌ 2-HPn9VXlN ]3UB[BD|Qs\ ;ж~Ǯv)ʃ ~`$XGCT)SPKRϏe^Cijm5YA G/1ۣo -,kHי#Z^`Q?^f6CX24~Eͬ ~Hl "+|70{ᯁ-K8iũ5J{SjvLY5(giw:]_?R"GrɃt3CBzy00nҦN '@!i)j4y3kRK,'sxp2 4k4dpX d{4.0 &ܳհ5gBmcM59-_֧)pZmIc'u IAi]9pl܅Lc5#LoQԸL4߷( C$iF. FK+'շ'xs\閐ʣ0ЂvU%_1]cW2OTWl<>7Ԥ~rzjB !{Q7V6H ]XY1{f¾\gr75舛, 5xaiF.F`ʸj +q2, *(|u}.LQKҹ:/29c|8rSdE;HRcCYgc1*D&5K QZokӓzW݇̂XMtTt\[gfjO,G6 Sgl(]4Fe$ֱ޽%i5ڤ @9 { z瘼>D mMop&q6-. <q@F*Ig^NQ.Z EӣPlz2u!X^cNȋ #ay|V)`F־_O2tx5*l-D;|kJMy@BHyxV)Cn3$]HѥPLPRİ~YJT42; ٨ e߽Uj\o/'*Lf*^(#8n_d` Ò&8[L;h9fT!eκzY[;F (FR ,΃ڃU|eEN㞄GqT9k jq~تIj(FF 3{!aGݳP9=4 ж}:ڏt>YvE_Օ6mP`:_VPEݕ#w-6x N=߄وx$H`n5C]ɿFs["ڈ:3Oo#9O*y8=%7;! fH* 7b)fE zT)u8/wc3XZ$[g\FwdWy7D>5C|9,??%жl,>ܕ`|py<ƍM89ekPufI5}ԨX>n 1S$+Gs'τBN6iR`M 1TZ< U]kWRWj/c(vs $]УR=8h,RZ_9aZH_Q?+G D:(PG/\P3 I&3]$Kȡ&m,tIz#v?, !T^G(f9%縐B|>@F\ J 2gB+;y#ݔPVBOGN2?{2Aj1c PoȕXK:-Ij u{բ:ZdRUS/4z*JLWh0b@:'MVi }PHP-@˄jub9?zkOlK~Ry3jKR޵y:9ՏV_- 6Chy:֩]ڽLJp6n~ͼ&\ǡ }u}yc@j}N7%%K/zI,)MbS\293ɷM70ȸ[{rJk{M+gp51pfTb9;:+1ͥ =I,lp~fJIm(JӋuMty%9SUhիyo}Ϭ8z+I8DGF-gyN.Z;nM mC`x(4ZѹʌՉ.6EahXX фDr{ë@Z]O^3(/Уp3 ^4vSn~< 쵪ZHIpcнS tRj["0LQ2e WKɎ[)8g2Pnm.089+O½ RLU ;U)8;647G^K$q^l7Gb'i5D) Е$Kt\G?V= #Xl@{Qb` \m>F9 khZ<5GH;6vѾקe0>nb4?Pΐ130*jZ guϱ_p2٨`ˆrp;q$Dd $ZCnroF ȹz5v# / ).^A]pc7C*BSJ HUl4DHi/qdY'NLP&WJ\@8h"+qlЄ 6'.6r\H% EPd%<4q?Trh.N"׶:oaqHоʲ B|;Z!YI/8#ڤu39^ʘJIe2@<+%{*% (*˒v.6ж_1 :L->T7o[7Vݑl$ @j"Lm͕H {5WU]m RW9XjV\褃YV >sY(}0ornAbyfrfNU)BjRogT |{TI!Bv{;)>'q8SA Sқ7IXi+c-lzTwbֳc:\ f@s͵b32Lz3=M4tL8Q-ɝ'OO\Ao.{g4瓏2͛m`{9 &|KJmVO~ #=1,y1[$Q4tD{;mQg'djOtT4c$7x佉&Fe3ʷC㷛 3*T$ Fjۗwwj,oae` XN2_XhS` shb]ܛUwHe%$b␔0b٪=J"R{'¹>/#'CT^= y)/YKJV[ kp|yxF%;V"lIZw$ct'/(=Hb4h{`f` {hXycۨ|[`saN6BHsq&4 gH #sDU=@c eF}o>xIvN *} ,пeR]M\D7YH+{YD @=tGtt |<5{>\747Vt\ۥUOo*v.9S~.{ogJ";GsƊ99V ΍<@1w}Nb}t1Y xY?9ƀ,Me1moVfoU x?pvY噆3YXSEwBLTT 5\KeyPQ0mP 0jj_LbCnaQjy/f[ʠ|ŬgpU ^EnX{U)7JC'Ge ,#xZ2 vg:ARy'YOGyQ jxWJJy)[Adybaʈ*kNg9L`9/PkRȬ@jpt^:zeWk| h* {,z*ט܀8Ų2^ޕ>>H3t+$G./bIg n4/y Y,H1?_kx\Fuz1/e=+ Pvde7)#U ټ:&'|/8P8HwԸnm1L2~ CV`H҅ 3Gوc^5`6TvټfَO`1>XW$<5Hw'px>q)Z1>W-Ϛo˴^x«ϛj[iZ#MX._вlqyA?{*UʑM;y.m+IR7fNn=)hE*zݡCpi}F{Y [!kڲX®~Vh/{TCQj1ҽ ek~G5|HUhP Yxə\HȈ0RΖ{c("`B(=L3 5RM"kճDh8}mgP\瞒ZL0{m},1C&#fXYen1US7a؁p۬'>=`U˽8/wCi,)t66oO_MGz,k SkG=֦$ډ/4'y\y[h\TO=JΣ={v s>rVuӖ[+/Lbt=2IXE?Y:) ۚ1vwbf a$ mb,% +?yli4_yr]+#\:X KAv/ ISdVXBMaAS 'ίc|#A!`OghoĐ}0-ER>jIil9Q<Ttrk\yE"m7q* ǩ0Pzz}9 + }]SʿX gF /G:7p #)?ͭ&S>gQt>U"*NoODx!j@@J_3w.(ڡg)QwYv$;5>yf>$B)xvQq L(h`9nNt+mEaT.6zX`ee-꽢y2'Az-vp,UIʪt .rQTa T4Ōc9D_vNRz72a" L℟Gܞ:pa4M{Bis9rqfOnx{oqX4VV51 磮k<$УyP `âb^n71jJJ\rn*ovUfQ(6ci~~prU -T\%xA01'EF.4bcyț[Zb", v<Z(va}SQ;8J̶ܷ}˔!B"+]n"i33i:!ChEw_I@Q|örLoW*͐K^'oG]VXB0qH38'' KN^N8z GʫT%Q61-rQ+vDf7m* yKj(>Tt#纮1Јfgc3{HⲉVXtf<ħnh5/' WoY~09-;qdj,q?-PBZ@5 E!(}i72!Shi2eږ)4mGܕSѨ[{倃EZ^źbytT週ƹjޢG fVD+G9.)XThއ'1=1;D.t*ǟD Izzյt'K}m$^#EŤܣQGxxщcr,ryO% _ٹ,YzڌbOZ6_8c*5'MHT{vo k[aG*PpvBig)np;T}.fl4 Czp bb*KvG7-؃Cp˾L% D k!jcT̠x@TF}4:Qs{5ΰRXmv< HQd9) SgʷaO/ysB撑)>}wi{mq6mu6=ufB3$:AfOat9Dߍ/809%.}X8ьF'ӗ)2A~TBfa1,`?k,eXaxt'ߙ. jp0-j<ƽ ǯ_!;˸ԏZ\_%!FNC >)Xu(JWϯ-K T{aBQIW~hvgL5hGgSU5'^%I̸gU3XY%1%#ĖL;̅KIЇN%op/qE;_ڹ~RKy 'rJA%sS `NR1 Ze Bx<6MPeZ!Bx Qnfp9ē>ivBo#$tf NIb].u蟔o^m_!`$y\!tΒ0_!)A9wI+bWPۥ`yb<#fóM$kIQRZ8r ؊&=Q ! uKB"okF?81IeNC݂ HOG~7%35xdEsl U$(^X7uB^IL @IQg׉C$ )"Po3a $p/ O2p֢̃CZ{xdcDS(CPqA%jM0W">Q|󮚑vEU8X?{MCˇ/&%+STz7` J?˸ͫk@xP@=Vk~68$! x&^|K*?%rig |7 fD? My⋬#6qz~r{|#; q+ƂE#]ݕ-)~+xP,!2v/.wrBL?k$6xB-q- #׭76蠔@qѼ$CKb=F<9dD³"8n6<0pw=R;,1O,|TQ~=s,(3;eҵtu;NZk"_OQ$HRFPjp#%:ۭ2\AD8(nh 9?W*;xpeI5?>BSȀ~LfaC SA#$TKlg@Ƿ _Eu9fW[@a"%5e>=ӨH]PH48,"R&ZR G/)FY!@F"odT׈`Y'+l8^N88r,#g*5eH˷C2Ea1 z=geȷ:u{*EGղT;TD@‹ȗՒdXo&SJO#)z45 fzwxhWG@OHIKIC,$U㵀5F viV΄?.jbVҘ:eT-s#e}sJN(0|YHwZ&ؕT#åzA6O ha"W -<"ݴǮAgU8}OCex#)/1u;"*X&Bcx4oWfN 2S!!F G$bNtyY|F w2Ql聤w KP`=kb0^hpϛjz(XHQDnE,JM$\0stЫV4&a{+QW`MD.DFj0HF[IxJK޼* ` :F}mpc*lۨdmݦOc3\f|<]d*V٩ g=y  U0Oȼ!Ƅ#b;1*aJM]hM?w=ă/ӥS@ CLP4TtfO.ɟ_)fD+Zå]D֥6@G>/"rIA(GA@?NQX%0؇gꮍ0 d*⭰W⣘BˆuE9*'a+RiءJ; kLB֩|'.%@xM~7^12Nl6* ^^{:EN?rL+u +ȭA<|Zɨ)ͽctF%֖y;sB21d%wHTN\kKj[疞F'&wDeV?~t z=]ee]WsF ^ϕ8C\K!P/vU{uH1'=>@w*,Tň$OZJK8}{U^ijҦ6=K%P͜CdJ" Pa~teߒX-vQu|kŤV5M-%4wp4p;Mrk!XsoX./ۜ+==ႭN Ѡ |˵π@5gM _\a}TP<ǗK8}t! %ԁ.=/-/5P~}I_R`yfmZ8ntTc"KQ'| mF6 Őoih^QB ZXnozHggLEwj!)+ µN%WrXߌ: .0^w*^`qjfo80r֤84rܮX{j1nʔUN8 +Mf=M,ad~9%W=-htYzz@L b00d\~,_ItpG.p) ʅa!Zf36a޷{0{`b>Vv 2 ~7ޓAjߟYV;Vge'} maj8Gq-1TxGc^DY |z RX$HL|S h{?r^z>BO(Nd=4JR8ivKWiaϣ+( nfF)涧%!?ϾaL Ӣ$G:xuB59<qF*^  ǢjѼ=p!in}B("[ ر4vϛzw j3O97gQS1ImT\ z)Hluz"?>أo wx\N='!'1U}ءCspo31MzF U܀ ur>k"!KSmg(ü )#QGy!$>wqoϝ.Fe:5^pT)H)l̸t1-<]vbcG=Gr1P` 0^~NaT]$_]/ɥ2 ߇Bڐ[˓,k Fe+7p(Z>KG-iJsR+̡)iۓi3%G9iW *MBF0n37a˂y[!8ssm{%N [Ũoc(,= nOuo_o~OLS䶎ǰڱ( 5'X7,Z~Abi{}cܤ*vHxC G5Usr#+ :eK VƥMđ:Q‹KT"EWyjf_vpyjv26&s4h- %ϭվh,20I&]J Ӻ, 7umY`9A@Wx$H CP*qSAj jX1Ukm;^Q xXPDf>@0d>u`OQ+G,Vu0BbWӖd"|4H-[uBIMhEX$:d "7m?}ή쏸Λ)a$m\/mYYm}f0ku;*zR0>eNIg.U\)݆3*\5,1eFZ9!~JIai~n^7ЊD2ޡJRgmº>vHpsUiQ咅8 7_N.t4s~#hyQJ LW+,]k5na:"8KǖK~`Dpef>!V3bPB.ueWA]!rprlKhy{ي,y^|6wQ'4[P\s9'4 Ekw?~^R -PTT m`x(>F+tF'tv\Kg+)".E0SB\lR^\Vme(Vp'mSv;0Mm9TEoaı+tX)fci3cMmb&h eC&=+w(UPS$}Kfe6ѻ ҦK¬0>G9 V/)3Mɉ%G!yC͝7;y7ȠКcVbxi3Q{-~ZM yFxurUT|\Y/U+]2.i:>*2zrO¡0 `*)3P5CpE(*dpȭ\E&Mr97k}rvFlK@=;Kq4C'!_W5-UE$y@fʩ<U F=#i/jg}eرCk:\dpOvːajwb;m(37SF^;l1>X4V8Z9_U[qI *\33tMuxmB9)dwF?ЙZƦzmzyYf! O #sl ̢\.) Qǧ xvT 3ټ(R~5 )jnJHB 5c;ؤZ[#^%O;bA&GZeK~9߿d.vx(fF[DPe^psICwU?%qw㝡zџǍZ绬nXwpk渚'FZY$G,3z$;Tcm6xs&boE%#bMgȜ9nP f\l !uD$9Bjihsz-%N©V(3mL1$nQb ڈۏMW6Z 6{;S̎U۽gzsG vCk@36W}^JaY,jlԷi;tdݯ,L煖)fiͼNW %1Hki^ϺyMĖ<|;Bd5 ̢z lT,O @( b1?(t { Ib`56p:Ҏ׫̕DEmfx`l_;ڃ-b%#DWy2C,:VdKUzӖb@5I3Ukanph fc UrZ#H_` y79*x7=7sY>ԍT]7/=,]>܈Q4oc+bw܇:Ѡ8]ǝ   b"d;@ҵγӦ /nZ(p Sp?'!SF4圁Z,M{! ^*-fޯ(80qɐClIӏ'e!BS- ,mv sN-/6w:ya͘&"U_r BҐ_ǥv؎7dsh:|IT11(փ ׾#Cj#Xjs<ʜs}mЬNhM{[7;/'a_S~.ʐmaC$N%?|]xjM>bJ4m̀Y;YpK['tۈ~|)+vn2h]DQfb+Rۏ TKb v|`^˟#&$=E % `"U vԎd'JEo P̣F9DO Ev.(k& Sѝa=gRCQ%mp* γZctVc7JUg:y4O@.gۢ%bHc# "xӁ*yWy ?yh֗1)Ӈ0Ai=VtOq6Ej3 ơO |X\˶a} ^$iq)q6$W.VDųqc+"vrj9!jT~[,V0Nm dswFߔ!L|?OQ}^S}z|EO` }**Bt{06i&-Ҳb9Nׁwix}rMoHcnF`_fȚ;Z,8FΥ<^i:#U- ׻kS (NA-C<)fo6}WI[O((Z7XW@E_2s.3Q^Vn}Oq^xEx3d-o\a#" ~C8=L? \Zҋo6Dit1k5Q7mZkR7^vdOe|A(JW} ^Gɞ%=O2'AE:P w l sKwCIdʅq}.z:ޕzi8KEd-s0a*75Q*잿ߊh3ez葇(=H@:_q6=KΝa |/E g2߮{NcX1{FK~* RzN9q5]2|鹱,eFq?PFm9g$uőU*d}Zf9 s++8,5kyGB$!ѣ.RS|uzsQJ-IXECˠ>ܔ /,sWMғW1>&_JЖTmaw»A 6,- tz[e6JJC}%MEyatk0!U`dj +EᦣsЌ|ouq5vRqh"][(`Փ2"-LYދ.N2KNnfOxʓS&#8t5:o#]&NfEqz^f2D9bҜk17m|l̫ n<2gSGU)cŔx8 s.oO̭*6 ~wj o!$G]} Rh'K-Jч b'^!əb{켑8躧^snp$bmeDj҅W1Q"n1Х! =S9F@.kSΏx`n\`sbL }"@q7F4d e'XX"'jD?b'){zbd3Lc) n!ҵ. CfexC6S=_ju>C3q|.f4$|h?K!`4qЋ-iJoNj<4ܢ an\To$:Y#ĕo pq.z0*9p r-| ܷEO%WOaz+y#:ۨG)•j<z慙 K eKmbGw;ã9ե[;0ݳe2c?I"*:A Vml=[/>:⯜R5;:Kե r6C5KۭeZX=ؔ_PK|R+\` d+xwA3%o]Wr%_S)t54Euץwbeۛ8E^ >8Qa~}v&RnPWߨs,t6eAH@` /24W OkRW|(x"z771i/D~m.-}ʟ&0~H5>Aޠ_2gg ~l֨ k(^k`wD\ ʁQͷ;m,y:j[TThIfW3T5REx4&kſfߖb6Z-L[t~N^̀mv<:S6ɦt4*,~ OL5zZK5m9"Xڗ sBwX1wzS' *({]J.b^ai(" E%9 B' $׺JQ;c"n<< p-fd8HtE V9`*l3-6t)KRƝfA)}|ɐh_缗!nPBsKVMzfǢ `Gisͭ*Cw] l#Azl#US^" i;ެ#dG 8U9?}LvbPMaZάg^hqg oHi,]l=Y?M Ί+}pZ{5$sR!KࠬfZO[ iUdf =*DS)(z_3Qai͋HufN5s`7VQ1Cȡ#M{}ﴐuӵSs5{xXE6蕶]vSi;s{2У?k&B Rly? 1%LtUSB 4 >rҒ;7yRBTћS 2{ZE@zmp| OcS,rHK(7W -$í<:$P,d_S-~N8 Nn 쓩1tٰEο#X„L&TrB`IkIpAF9q# 䴷u]ݜ{%xQ>#"c'b+.{hE/*ߪ7(MK[lH[qg50n,="Wfz!|L~fhIy%Q)O9F\GA?"\]t SLf1A*$E}oKS۞䔧DMWx ցCYk˒ǐߚdOk~h5RA),dFѰSGQL, i\baUΏe%(Av p E8fDo qsㄌ2hboܠHez n&<)8<#94҉># [ߤMvNDxiXd(tfpi O ufh65V%̥.3l%!aenޝ!@RhuA0h c$ ,Oi57s0PY1abz0 "R-ԥQ@"(Kkn69C82Յ6LLRY4*?er >3R}0a t)\=q"ʥu$_*r^Ͽ2&3CSN-nCn:W(cqhҤB&n;pgu &ύ+ yyeZ'ۮF* GQˮ݃Ӟ4&T 2Z-ʬ ,,'=S+7KZ=>haWIj"gw߾FOŢ@'XovyBls:$yQ-Kc=~4LYMV>'//}uU^,H:L3{4A&5_cL+{+q u33MA0Ӗ,gî2W{ZgiA+NweۆYJ> EV!`}R|v91F忊 =fP\^Gw+Դ;W?(0ln:6;f[˯|maT] %H+LuӳW=ыp&§)w76P=jvº*],gbZтPWy)-d}@C$ԃ.]Ź\ρ֞%^ =T)BI|gfUF-ҊEh]lAi2]sIgCzL܏pLh9I^ aǢ<02#!.u[[?VuW[$ϓo7ŦB#SHWBl/#s駺M/'Ibfٮֶhe{"pJהXia8;MO,BKo^oaHKP, -n\;caܛ`2 $1W} 4n0 C71|aj߃Ʃd0R}=Z;Amkpf`F OrewAꡭ'q"UWP:`"fGc0Iң_˕YPncbvV0}dgY V.'*kյSӫ-IU~\SHpO&y!4|e,R?X Pa{bg}F [.L{+ 2b1Jaw=`j+Z+Z!GF7][=-MU1rr)oдZ3~#jb&iVs۞*+c2h!D"bsxo5@."Pl-`({ "LgRg@LN-4H/:4̰9+`9tLixGAYCXlF.6]Sg I Ba5TaU:VW!R&[}K Vϒ-dKjE0]ݷҢ"rՄ&=S=YZN+(xeὸ`8M}٥aZiAK4Wb^׼jS{K: *bN9hnFLE%3hPq3Gc_o&ipP|t|,2]q\ْ#^h/᤻ҕ ӳ5rm~ʰߔC7񽪥0taD$f$GLzC@I>nzuC̬cCe,Qyw4+}\Vpwx- O2\9ዏq_L3Ʌώ Dڠi}bLR?[5:qLJo2 r9l덟M oLQ>N4ֲV/[@|K%9C`p6?.-Ծoh-BXGP/͒jV aH,?ig@ &X jAA}-elx=?-jJ7<NΕ'*9~``\AvwŴ6џ!ZA~Lw0IOpDK="x}2YnJ >x*6U!96Wv(QM5Q<R4eayb\[0՘Ӻ""vX%Qdqskּ^ڕ% -k:],Y1";3TMڮE>՗x6It^އ3!,Y]AEϬ&[Z~D)Ho 0-p@xU`RvR RbX<:1kO$a?ur. PF7~ɞFWd8?Dd;ʻr+g0d ힿNX̽cݘ|0L"^hbOa:45zHhdi@tGHwP RVP=.k$TH= Wt nO_ӘXϚWhN-oA ;>$ ?EK/ M=G Nz^#d~s%`fQh6֡3ܥ+Gto۸C?$[6ܳ:ds5bDL3a!,c1 s[u3i<|X\v9}iL{ l-~xzKRaT_uzHuTIx"NN-jz<\^Zh-} G'S.2Xzm>, AoxcsdѾbrȜ !jt^L~06.Cdw8 s<#sտ׷Ǔ?x#o haIц6[R! wdc1*B1\ߋsAG04 tї^c5軋%Ў[$`7@X!vs l$urLܧwڪJka6:#Vu,? <ޢ? L cBPo+Vⷢ'e D{j$#`r q@A#QZԡ%H O`IE :LHAYrU+Ran^̾|\fkah66fUn*E:+d,ȑ>(Wb,DJTᙈtƃy v}8ް 9, d]hyk'ZC3Ry]PDiq2kt%x(^oϏz&|#M+;$O>^J8?xtg$'=|2%x%v3=+YzS(+gx&ä"g=xݎ}'kV`ap1Πbm4͈ҋAS#I##ƀ4-Vke2w PT0F\Sf@-Su]{j]O=eu|XZD6Cpx2C+LΊ E4E8ZOFɻ(;!Y.YK_i<=ȗ3&a_Wd > nDjρRh!K Q CT(JLsTM S|9h+y!(:^ud忧JM(cjC7ֳV|{wO!'YT01jMB`CȺqjy 3W ^vp#P HS-h%ɌŠ-GbH B9t}3UbZ pUd:Q{m%.F} ե,G"ndh$[v[In^ 0/q+ę+XW,sT: "O2"hgaN iHb(L5W؝E `.b| ܖRgg75`Xv]pik;vא|"Ks$$lЂMZ0M71.zp?x'| + NfL}ڕ"0(b[3mAI &DJY%CHbVl`jaF0NhA=*yCK$unU^`AޯNJJPt"cKoCA{b'„95z}էIy̺^<JU V]|;NKlmJX.D]>`8OUU|~701bSvZix$5.-jE`eM>՗_Z'5RG n?C\\r*$#2=aItK:n u QZճ̇yX8p«Ndm8αF=w4: rԭl#LP.+yy C,y(Zwz0`Z[ oB#xG>@;=~@e]IÑU\+L d} rI6&1!I%Vnwq"#{ibloiA@b'~U3SsHvŸhLI<U #=ss쓠{RkLֶ=s1}[;%S$3h-} DP7m`I"f9:225ߒw8EMnƂ̠S^E:)..4fm=e Wz] ]{ x#h/`9=BoV3*"5s[AM`ǘZvHYĘO-1v1Ŧ-ŏ0s ݥg0νS]avuw^᠕ 0q(>HYa\4̽gbk3peSFt\ثoiUD ,Rz!(%w&4gNk /XQ|,G_˲oTzx"yaZQg[b[bVݨH%@ *KLm4D!Θ/EY!iR]"`Fßy٭\[N :mwa]˴[Qn\Ba5])%/r]O7U4́K.itg>Bi*RG; n2 [uf!)ٷ\C_My,<4d&1wZ++4̝xkT1OǏެsZ1]> ,sz$dpjg晩 kk2ŴE,^l4;*^A0>?d 9Dw?"x qbbx5[N6M|u awU<g*|RhVYd~Cٛ(ά=7 4GV`>T9vJJ:g? ̛p+8ӦxF撺 ^L*2tL?3(C:dQPJFR>Zܪ&J}EE ^LF}:F°h)I9Vt[u8(vM!/? B]׺}7(^#3t46b3&Lfs~ˁC4?qq3ew+=oީ^6z)̜t>Զ FꅲLF//)R6qHqdKʙ2ˇA-X( z)1vn[A}O)oj\?I^%^Uפ}g.j `4;mGa {jDκnm,C.]0wSU])xxy"fV𗤱4?)-E<(VCWQ6'$l>r:2h7^ϤW:uԄ.q$[g2Й)M¯_۪l Y̊JDq("6^bҝ GTf!7Tä6j!L& G@* +7܀/OIyo=Ik4lg;m9H "7J%VщBj}O §qqQWSE!$r ;YA!7*M:p@D}s5)m6:{0@_ѐ%U"M7 bÐE\JEgґ]%WSt M{ uYv* 3WVZ!resI#UpzY}9iD-)/'؆6su(l'TqSiޒu,/1ɞ!@یRg& <7+R0"uάtCX=zv +@.V  .ill 2A^F^ y)cJ<;zUwU'{G[~A- ^J LDq)r T5Ht4|StʿtSysIͩ6=zQl\,]?Rb5G$! X4-zߖ#-n- S+fإV>/g]B@6+H鳿~I,D(9?ѤQ;u!Uj} 1MλeAYzh62GH̅(3PhFO|=#_ׂCs3ׄ mY/5N  ^"xȴ#$dH+`d)һ#[nf|c_jm#@%\^cVG~J+Q%"%-$>a\ e Uì7T44"F:>;޳1 *֖!?3ΐK"bW'Aߛ>!Vn#bZGSXda|0n@cJ{}ᗐdӸ17L-B-&,]ƪq)Aٲ;.i,[*`ogZ.qCÏm =YVd^8f`7U,J42Y}ʈ@[RN37?$5^?q/^&2e\~G-e)1*]g7`t9hXaK5< {ص4 $!$+erOW -uO;-8A#Q; 0!f.^K'Kĭ.r0E"S0C u FaL\@{jRt(pFGE"!/ƗI_F*WuF{,(1X ܢQ`G`ٝ\Z-'&Kʛr)ΈT(]ub!3?Ɂ9_bj4tRy͂ *fMsuSN#$C8^lj nFxLwI2)ڥ2[?J!B_#kj?)oXE+>B{,B}b1J>J17u-(~?w2 ʝ2>?gV! 0:W[ ZKۑ:: m]tj[Aȫs?B'"+@ˆ[#H~Hl%Uz/m@WK|N6:&-(`ƞ;H>g͆0)b +ɓ1uID.~[С$'?~.q, fɾj@퐵īY @7˄H0bNx8c7L70dhT69TXR;DГT̥ {b]b#mװ. {S9>j%60szD* ыUQ4VC,^*E ;p3mdK|A:[BDWh56xcpW!K |'3)t}$D(yR8)X!+0Xt*zh +5{\NO@0V \D$ I,=riiK(.ccE?_p;Glt5[_p*=awMonm'KbL6q6~bu`o.un>:񫆑[\[e#0FӬ~EaSC~٫Ϯ@ i@2o hݚ*~.O ̯niCzB30d`ibU:7wVa`,i䢻\X&nb,Z>oEC*8(x|Vf7ք Hqђ)vˍKSŽfA)F=gϖzЍFFAgZ X#F-Nr2?7>:9bXd7N\}76GQQd*YE|L="I be(٧r84騵GYsJm| S1A0gXܭ*Qb; ygGޠ :ĪV$b6Eי A{@8?~&vOEF^ ]bLJoVvxÌ*i>܁rF|4ͫl9}d@Dp9qs8<$}FByB *d K A۰@&!X0\#XK搬oKN;Ulp?DބHK0I=Mޯ `~%CB([r|ieޫq68L'?FVN wo]z-twv摫FBUrAy[Sy~;Ujx<a].m>G9ܳ+4Ĭ$+L;۬+u ]E8Wz OLL f:y=yٴ7׈{W~5:V\ uѵͷg ?>5+~ÕhH-Bx#m@xlz i9 Com ;rw-,o^UZɅ&S=s >a,Ȅ}[_O+vTU@~PQ].C] vqE,fz"AbUj"iVO$m,WcM!Օ38Ȝ&ݼfSG\VG558缵V.͍2چOG+Ėu*A>v*#KJO5-H׉@勱?8{؆i&ZE\\fBI&bIT/9Bw1aAmԓ>[y -%,Ի7Mq%+m );=-uP΋=]!?onkow $ooBcSspZ(KNC4/sgUł^432mtf4 Ȟ>ߜþyD*Ʊ`8YU~U67Wc/y'O>L^㚳/-ih8rL`N'T C%E扊8WCܴ}nڃ̸"%'R3]IAEݭ7a}|i)zUۚk!o $UUՋ { Jl'@赝HؕNI >}lt>-&?ό>_D]ڍ/ Fs~M>X9u|DiX+!::_>`DAvL"|,+TSwCVpc|p҉9#ՈpuAŚT<#Iφ쁁45)ݒwץ dsPS'0AV'KR08 /V}6cN:c^k o`ˬ\gTf:$}k5Vh>a~Lӟ=7dlzѽtzP'yD*0[|Yឺ*+HGtw@NѱBQ]e:lW)(뼗)^AT(~6JrA%0X.\$PL6@3qQBJh`4NzRh'?M)+5ܡn`TFŀ%aJsjk FO0=& X淁ż,zmLs6K4Ya| ~rEpG):Q6Bl@`ؤV[jcz~/ryjLHhiV\(2nq(%KLgRRUT\,1)1I/dpR[G5if"{LF`o@MRNWf`c|)WnT9|/] ˌu\dy"[!l m=XW(2i(^*[;$_M@pqȷ'ZO5=jPÞj /o;<Ș:+nȨ\E^K5xď*xO vQ$m> 4^ ݘd\ x9X| _Xbji\dc mm >)yDz+:Т9S9B["1:tmIтwْTHޖioos_N85E7њJO&Κ"XV5`[`ګ-MeFuˁE`]OR?T.fDʁ궵hSsn3/KB2,#]NXZ)TFuګ<kËŀ1Xfc}%_}~] 7"S$³.o,4=WpGL\m03-Ko@aB6kHBOw eZe!z,UJx~o{_blഛ8&F̮YSIq1C iZYamXn}Si+v7gbΫ)F|JZe3(\ {<ϡg9BbෝHyr:560Ng@PG:vcE&H6ZLYVʋ(- o'ܭy( w {Jx׺h%X7{S TXeL&v=}.,E7hW彖CYvHyg trzu՘8cZ_^ت_d2h3a+d2G"W^ &L,U>y1%?!NC}Rw%% *=Ĥ F'^H'-A cnˎ8z=)N 06oBMg~iuBXj&Isv{Saގ}~,r4"gT@cנ$=0X0󩐮m-"s X7*6KnmE^~iWBȽ~Y |ds\_J], s_7KF: M}Gtߝ0ڍkBXв}lR, (!O@.Iz.is[Ɠؾ&Ahh:y }/N2]J +P4VCl>Us$c|Cɗz'-z;e 0!mD90VZSH5gl vZީr*vW?jzy~@6WnTG !xČQ٤iɆ<`9_ S3K `,YsWzϝZ*|B=&3SNLVKC"KB\S~{x'dH<.f͝s+TO.tP-QGVfz=Wk&|Ik̽' (k*53\)7϶ IKDWn,q>arX/^~3`X+LaoqY#t ݷ; {~40^TCʉL1m.47hhRe"Ug"џޝ"kEلG݌qR6m?"0HDzoU4vni-@k=Pai޾Кe^ #?3£aB萒5"2dq9GI\@к)_[O67=EZ” ŶyƯx'E 5%˦loN!AZ$ËqRiS9񲪨˯hj iK}z5QgWkF̛`a 6=onŌ̥Gyѱ#qxme@raDRL/_ ..|͈+BUzVIzTwO4~[m-M& m.)m,Y" cQ R#6_z @QU({9/3jFp!LtdJ(E=~g]]w:?1/%3jh ՊJ~aҭKlU5ܦ4O.FȺKpm0%t(N"O{F'Hx(-}qW" TO>),#135h?V!FӖN/l! M~Δ("q&0ܣ|TL_TRE02& ,LK%1@D'jڌB8^`A)e'!_J(I'[ KG]@ a"ݷp9?Wt0e} )K=d;*5d~S+u.Y7V *ԣh;~2%S}`cduᷘᥓ q:y@3Ӡjdyr/xsmsZny nN|}Se|vv*r=]_Bk^Ч2?+,a6cwMYqc󧃀|w%AMTu`@O2JfOkᥐIgzM9h]tV:fz9wM!݁b VRKʹ|BYMڐ֕暑1&ޱ,BwA*Eܵ_B,ԇ}w+I>bh5hB˓:'֐U',47YԴ'^,r6.NA$|3{]/;QM!ůjfL*|L&??T0z"M+A2nks:GWUK VYԻPJៃuN'D) teCTm9qjjޙ ɡǠDz X t9Pٛ+|rX*U2]_a[{Ƙ"$|B+w& Bj#ŷ7'hnX3ՅݲUpeO{@z9f:σz _/[9dy sl[_5/$k#qі!>= Ṯ#WҏWf;:stzvC|ͻB}Qd20wPp7Rp#_y up "䶞#mcՊ<`!n^/^fϰi[Jx7/q=oM!1[Zq̜M#Qδio!R޷'aNQkޒVV+ce:q٤Z2(Q)p)[R4ԉ ˀQX^;o]~9z O/ MR0OjhJ_mB(7=,#|+:m(,T:cG9\r0tzǓ&"h`]|ڰ jy־#|X` C+|r4us+ז{1~au48ܞ`w3Rhg7`W~|GWO!aRiG/KZ A|he>iHA~K~f)_bo S~D0("Χ^YrWFO쪱|$~3m4Nk|#ͬGCى14Ct*r f{d]VvTʶ8~BFC#v͢|JRlR-Dߘg`v4^o!fɸuz0j h_YVmaxA}x]Cz2"5|!P fO 2o28}$8<=q +h<{Gq͟L\FwʺTLVw /RC 5ǠqټN\8+=`\w`!Ht&y2MZD%؝._<Q6)qGRt >̴kծ]CCRǛ4(]#3'Lċ#{Vfq yhhT#)tlSSU!dxV K+~v70TjeplW?T ؔTHe^G`?.9`/Ӻ܎:uŰOSߚ"@oT F B&3T1[ebTNC˔RQ `yea=5c/ K>Z/^gmԥPbroQtPf#M (RwD|V@+x}Z-tqe87cEX|0V:GJS4/+[KQ^-2b8H^dPGE|ICJs r[TqG_XVb LAn'~ 4,7n>HND0g$W'ߋyypr_X;3Tg㘎y6 UHN}銿'k)%[_β gc:J%5#xMY퓏> g NF$,V<_J}\Ɯ i8:I݋Vc\ +IS2p?Head LcC%Y;~vL|8Cx{?#w yg4qYDLZ3Rn2!V]iIp`#n2n}!R 槟 VJ.OE<]Mw.#(s'G3Y Y6#ԨeQx NF=}ZE+Ό9Y@1{DE%ؔGdhO>@U)-( (za6v=3C<{}myG0Oj=vS-b)au\\ŧNͧ*RC2#Nk.ENx]ݗ%t;τ f /!Ek08f f(FAoSP,X(lKf0̍v.{ϬH4SLYcj׊iC|Vc}AD;᷍+`D^?GҔ,hMqh)T RQ|<84v KndxQTۂtԨ{ B>;p}Ի%qTȾxKSQP(VAKg#J "1N],*jog$i;}wy%M/U\T^ {avQ-xM?]׈"e@(|IZCaلQ?E$TMD+r:L`RZNяpR mSg; .z Ae=ٱY?ퟰQ x>m_LL^BD߂g~dj7O*mW)G8hY8) tChT%n.\+Cշ{·fh,6l=3R2 tGR)zC댚 tR 9o *hX;[?jyy+9V[ 5`f)_&3*,#]Hy1TJ-E4}-wқN݁q].e&C ;tK$6jZU\z=$-g5H2 /:%vL8 g&+|x<2{q]an+NX(wմW7A L€R7[:%r_#ƀZtھupD8Hפ)]fjL 9.zɭ  0KrIj.k9M;>7 ?s2yD ;?n.u9UQ&a9ǧd:^ ׅ ݤRHWB0\xW G6!S]ަ4mGRU (`Cr#^E7jo<6F6\Ll֔UP3.)WplѼR-X:)prOqa[#"I/ʎBXݤBxﻯ5k[]pO3f[t5hW.HxOm_5)ef;'ҡ⇹=m)o'JւHlr[=B[[N&Nn08q͂w8›4ʸ8ObeGRJFev>}Qs=|∑`yqrm/}u.u͑'P]g=^UK'M-{ k45;#Pܮ̀<]ؿXN}\vgLoaًm9&'§eh-n2&'#|`Ub;+XYߑ,߆T"AOWY`d{^+z)fe/19o|}ř樚;Ysyy *,8䉕Sw_1W'Oe" ʿ h%QXl"TPBօ.DsOߓs8 ~.>0c{2GyUݕKzgoPe|ľq[C _@GxuCy)p$8ɜjژ㾘~+Bk@,'6d񾄖֤ Q)vQѝ] 9"-_1ޡ?Tn ߊt2=k/Jil^9HЈoAȱrn?h t[Måw?GDfWA"a!HTa9M'ړ1*g"ª5z޷YC5u 7^^ գ(iR4=iD0.]'p=(D8 ,T&9чQ/p0Ho XZ({bX;\<7ԍSːI- ߷ yt}JN1/9`Y_\^o(c}^|:ydWׯ/}8 3)caDj4%8AF.AV gAӭ%PVrkkg@b%viTAw5s?=TC3_CZ[Eĭõ2B^`Z Ipxji! ф忈Ğ'O8$A*Y}}nۥ9{M~sCin`t:5wmIC}H6ɋkmqʰsRw%prz/mӒ ﵰhhH7%<3/U^fЕԩ6MΙ6'Е157Iɝ|̬, s}@r:qjĘ`&z;Eii3oDru.!^g?  *Иj#|0`WsABO>dH?w[i]L!  )@*1ֈ|О?#5{1wq.Wh >ЩY fb1Po*\S{\X4k4o| MHXX R$k75 FD^T~-˥*'d(zZ% 5\h%aGhxMfrڤjlh !0R"RjAftgy"֬.mV}lJ *on44\kǧL8 S|zBvZo0AkHeR h͈j>- D_ eLU0(a"}1n+&"| <YJȔ6:M)|GIƟAI_B]z<89+\*0xεAc#kcՙg)+s˅7(b5"acFƱxdۣ6 i{Є zZVk߿vLHv= =qvΑmfZl=z *s$qKX2j@uxQȁߏ%9؆9_Vz5 =e!!9W74;+' "siFy)I'BdFh);V\1w}gw$HOX`&=ȑ5s0̊qJh6jQfAR LZE8yp L8@ f4@5ޔ?3jK8khZĂNOT: {b9t'}j//Y $2gBU-o3O۰VFxSX7/a(>ut `1wxy{c7\εU@H?_k&IG0\r Y]q.mA!6kJ&_gt=vW]^~Uf'NgÜbCgo`jWBѽ*EE/ղ7ɼ2c^ m;1|1*gIv/#Bo mvxn*Ǚ=Td91BXф(rT)O"x=9 B1F1elLgmVjCʺV\nyuMJzj;Eg `rk_e Yu'|s6X\vx3XU4iȒ!8r BM)6}☋_DڎIjiC͸1<_ nЅ-\bDt"/,Ngv_+m C[)^&Rˮ稑+φ{=E4{~ECk1QOڰn ]i-Du7m>uzuG %ElR[Y聐[)hX_w"ly*aݣ =t8(*Mb}_C;0an,NQ :8}Vw@z_QS#MۄC9-(˵ia 1zuӈ$5bV\`Wcтo@ߑR1J%8Lx~ĉ@FiU JJlNb!۵צxV[]ʈ^Rp:XG f 7#mQ9~~aw.,r[kz@m+x8IqlzQ@d:MU~S-jJe:@@=^!/ :} >y 1:tl+/߉) _`(?hrRRl[>2>Ȝ~R:ՑνpQ ah"2f3#ц3IJ4`"ۤ5#))sP<0׿R2D8ӗ%\ON8"tv M<ڬKX*++`./<O&10DmV[=;1Ǫ# E,9PE4XZreg]hDR~U1+pGMOuQ'5t!f:jh@_4fr;Li;r@h <ƹc]%'T}Χa"| >~GڔIGoB 4wRͧ/n[oD26BY%##M+NcX‹QqRv| V V&wKov'q]T8w1 r_HTDSH6_f!~&Ǹ(200.Ol"^C\&Sgm)bH# X 5_PJlWے[wۭPbNH*g&~ Fj?ىCb{<ԽUt{kk<C"dr^C\CoJ.NPQ*XfvOW6b|Y+떯cߪu?rG@>a,07NOhg4Z9|{ GPs5kF:%=a@C7n/ ?~k2S _tcQ{AG@!8NH1&Żq|U'uxfFLoWíFN5{Wc)&tDX:M݄-<r*y癹 {siTD+]ckP,Ι.4GW cֲ\w^ƌn7qX:t<}_XIP(X6E N-?8 ğ&^sw9A9 n/4 B? m if^bՐħ/ V.1²H#=hdu< PiHd 1JrcKlUUƞyn=J%SШCRC±aD,)6 E6b[RlC.;7DʎR"$\Gw >/x1ގmzNguLj;knT]<ޓGO~jj`:Ԡ/; bXfi1kv{Y;{mȡ_2 5q"lD\ ;zHk$ŀP_GY>`rF0vp<".*wp sl86_fZb.쓭lV]V6]=#GwV`2L7L W7%u;M'WV 2:o" ih8Ʌq\ tiRz jn0 LrG%`5uוd*2KHX I,5Hgne3^tdh@% {um.i BR`}z@lF8e|ų2As< y>@PZḵ҅\9-$a*$mɭDC].>Ҍ9a;Q~˻u% >Kja2:`>`VʊTL 8biK3)16J|0Oo4 +Ol ShM_^V @s)ZKUR[ͭ׫g넇'YZ.0byUϯ 6*JqЪL X|vMԟFXl 9"mU911"Q0c1)B,ǡSl/:TU͔kHJYa!F%4[NMd㧊6*@E~ cS }(}(dmu'`}ZVT6j`yj$@jt@}s}w W\1W%zNW\\XRsh&'Xu[XW(O >DӕB \cjiQVE#ٙ\"TQ A.^M $q2LXi_W/^w2#PSxi J6ܫkkRO 3QI mVE0Ү˴)9ËBUY~g0ҷ?bk7 w~758.m~ДҼDbCkrjn5={rUƤ?{}(6ռ*9G{e@]LQ\i`,IrsL Pa7oۑ;*/1f&au9[Sm7„KIdzE|\eIvE`mj6W+`_\T*=]1_H}nD^ОŌoå5q~jbԨBt[c%uS 8s2N !Tvi/Cũ.2ƥq0B](&'*;Rs3gP"p߾t<y;ꔊcDKu?s]>+5ȍ`4  Ử\!R(c^ejVܰ5}ѵ|RAk>>/rۀp;u 콥@2)YȸG={*dž)q^~]1vt&Z;Rξד뻛ucq40i e\ N~Y ]w4J=6k*?PHO>2KdQ*p{L36K1ndXFBkm280i<dE' %(rL/gSP*_.sN>4P4 Fs#8DG9JgIjbfeh.!X,˕(Nslv4隊yP)ڲ cd{)-֬u.S)YqxvǞZ!^$53LKH ''^؃v_ ,`~2GbâK"1[ ^\aɬ2| 2s礟S)P`+1Fq}O߱Wʵ[0s;y߼f SwLUÉ?H1yCK,]E/|ߪRPPCBn-LxP4- r-")V3h!6=c^i|CkХuǟK'^WS0h{],`_do\&uo}O~_$lLu;,j;`NπEeE>VN_Ax |(+/]gE{%ȲxTٌh% 8%d"͸FǨyAuнqQˢ K+7{a#zPGMkI=h=8(y5ragoVLP55̼]3%ibdQ]4O@*̃tǥ俖N)@m aVa".wwʒ <c*Vj]tɕ(يFsH SKtp=K^/0 >oOԃGNN&E9v BeA AuEGs\WӍbTX[:xC`Y ̪.ɀk
_ߡTk`ByykU+#Q!Iۭ`ٴ|{;ӰVDyᨰObҿSjZk/| C̝y8~Lk]U`7t*_I),NgAWСVog]%\/Kku;eѿkdW~r]ZaɍÆg)PPV[ >t;(rgH:jw cJ0;Sp7eRTWeEH%QNYY 3U=b.} H/P]/P]|\4 rgXۓ 4Y0hc$v7d5D-UQ`M >{p{M[bozVNHYUR`4 1mR %l$iKyDՕBzZRB/_ ZI%U^H `u1(V5(Wd1{[$^\}b0N):/T/?mPhJ)_I=D9Ɗ?E ʲz ѯcR=_%LAZzl183K*_b]5>OHh=}kdC *!, mB peT+Ӄ˧:=:tiY-}l"":bC'ޓ {z/ ȃp"f~߱ 퓅h rot>nKIC#Ö!Ӣ|-UtG$Pf xhAiWhKͭD]UXUiKKu~)p L LM0Efc/ ~rZ8 16!o 026V y.E徸Ce)$Џ<H.zy׷״P 0FwOϦUߟ8C3ո04qh=KtS0WHH #;AHz`惦=!|aVdkl6!햮/W4+Kj09-|DH}|8S@^ULrޫ1^H6!HV٘j̺<=kl QG9# {^Ю}%jkl@(%ݍb]O,\6324NH&\AŎAYf2PU-ZP~lmqI_Z>FYɝpBi'(8-K "D=v0-8i`1b A.|lz;ȸȄ[BmٞY:7)2a6wjM&* }gpL]SGU-KioJH?@V[o>u't@i'?qH$?6(--4SIpPs%qA=.ְܬ*p̉JC@vtBNG4B< ?;@:cF3Թ{Ib{UU4 EN!=ڏФ=](SBpZ_);cvM B,B-cET(njr3WI;[JZ1u=igD mq ζZ64Wyߢ՛AWgG7R1El8| қ5aȰK e}')eQ?}ZK.m2xKZ@ U ^.M$%ܾN˃5> t_I'*b-O3 qҿ`p*5 daGዓ]*>1U x1C7IlycCuFF, 9EѨ)VkUgb4 F[=F.EB ߁xeD9jb; cN3%do@-7eF幗Tw,Dݬ˓2.Pᆸ$tMmU?2M`3)/}\3`:qPvXЎOM2'zb;6NzvK]>{~6' 5 Qh$.:̂-<'KV WW+gDXd' aiyXBh5~ j$3jrfYq+D>jI,zws0U:LzM_0MK{lFm0N]^:RZ8_ďGO,MKo!%XݚAȌ,#W*ϱI2I@DS~Se~1NH|_q(05-'v*0jBBoۈXE?ucl$!\NX!Ub>ɟ"NH6"@3'ܗ_u,̒U?lQ;h4=J4JnØR.ۈhvpj7S0E c 5gы9j$m>.҉N S2B%`A{a*`c`I@-/ iBc^w4R ,Շˇyu_& q)2̖ qS%Pu{p3jvs@H+N+s|[%0W/2VvX^TtECZ}j`- "ux&ds}؉9S'JlE`h\o%4L x*RS~߽EXriZ,}daׇg4R$)%JIF8aXr1Y.P' %rr-icM g|i/±7qPL|euZ 1n:vՀaI8y ,MJn#0:+4|'yo~$yRs1Xny@覭+T0XFQwU'y6;Rw>u@Y+hkX%ҋ,G$<o2|kj&0K5)CՇ> 0K'R:1'qiª d63QIuc[ɿ9;ڨsRߠl>SVT¶4Z5tkȫ%ұ L0dWJI0F̞WbD xe$Dzf֥J}d=:dSԛJ}W3kj0=xS5kO9ЗegCʩYxcZaAwt(.BiJ \scfکN<tBH)9#U ]MXŹ0ɾN8!jn©T9%/^M9׽Li8fIFC}T6mY22Db)T܁}TLkڿ}[}䔢Ek2Xc%{eg˛>랲URR]YOF7JI +CF}(ݏcNhNh \1ٮʱ<0^-K]lm5[,$FJT) uFDG8`@nM̹A]7H=rF;aUĊlJcg4 4)sy#XF` a%||(;Do~*@zXy>2Qv< WM\%egi+E)ߝ<:9,$'~Ѵs]|[۹z&v'NmMrIMifH+ O6a.tˁcy> US4q&a㠔\.<3C@N$LM5]y01ombN\BHOt& QB^eh;,=L>#'maR"XCOq'ɍ?4z,UhumM.cҵI:qa& 3bXt^DZ}O5j S8ظ͉7a2g@CTFOؘš< ,_\qYw> 훈PuZU$+xo;׸5x/+UDfBudrgȸ\F1<4Y3XRyA5~m_ 9;|P}2"U]VE U xɃ4( m*EVDU7ZM -#unFq;*δ~+Gf_y`vNnWY\ʟw+fge(ƏH 蠬3jihep)2QGs5VzچR`9nYr(ᒗD&iC^uSy=x. H) ࡀ'lChƵ `pGnx$oqz"곬$8kͳ=썪j0ES+iB /Sf_c 7vKj6 '\Lq~@V+-Gz=&^'rI*yEЌ5T4@ =p L6ު+< 5 v@hّfqv'^Y0-LVpP<8!PʿE޳rȴQ9)RYNP̸~X-%ęz0aD3Gvf.96i;fMXU8ȱ}Z$-o+U0Ԏ` I4f:$\\Bл~.7{\NzjRĬxv:wcOaCͥTmő}M\iTaXQ8mH{eH הV7"Î0;,U34>qׂJyZqᜈ8xyT(CE}d A&k R@Im']M+Dxov ALT\Y9u]) 퉡lJBST7hY1!dпuR7?6ڋͫu>wX= ND]ܯP8΄Wq-"HY'KF_' *ŃKP;&*Oc)C[!mpiI%6q2k@tchﻙ1w i 4,IW!TPMZLk 򟩆teAE%f(Xi9ۢۂLOoR%M/tL<BڀOCB(P[W}BOQo=1xO'/,J &Y*;hp*={Ad"S+1rm@xͷG+ޝޥFMj wm]T ͐Hk(cJgDxҘn\uwj.Oփ0[ۡ^.ߝ/H! 7e6x !٧ äw P_>Z5CktO6!4C\`z%w}!:*tvT%gX|Ũ5|Mc*|>|?|wRH+hZ?-+K r,Kc477m/CէIˀ\/Ƀ!7՝Hu~e;d2qNami?LFc޻5*E><\[?P+}buuzCFF.˨mP#AQXnR}S[#f 0zŧn8NQ>p'Nլ^&z^)bļS(CŖ?T+z5kBV8 q!ȝb|{mS-0<'E8%PZ{4՜Cb@;"’V&0hpb()9cwnh+w֠ UmHun„qP ?"Dv#ə7/^/] jVҜ$؇iN91c PxVs:)A1.YHhRR@Lg?!OH鞵#W;eKIq8Da}xIWMd #~r?d%'yw½8u4I%(`w>BNLOwd+`j& ;=]]/𸝟YyT x޸َmnj16m*Gz4¥UC̵g? ɕ[nPG?`Y=[[xNYfQswXؤEKmQ1,bGτI*h4z.J-Lzkq+8wuDz{*MPQd&xb]]ϙ2ݎhoV8rHR"Q6faƘVfo2CLsZ@F2az)o/Z>ۚ!ʳ!p-Xoy|z%paTit;* ID)ydKà9g!W4\ +Q;dϮ Az_JR C@ƶ>A{8&ǔunhmcd B[dze0KK{ y |}<9^d[MׄڣJʛp*YPo-ڽ/=pn[" D8s?(--9\UI33w=Es@ ]1XR%ң0NE~ZOc.C?;o򝆪_n.8W}t@DT3'GUZ.">l &rh\bV˹VExe6 ^1$|Ab/ajJH]Iʯ/Ds̩9P*ԯu%1|AV kΏF JiqR%L`h jI1(d4Mzק`XH-Ggv9تہ0I}pU6͘퍷WHݚv'LUon~Fi41FnRY#7@4)b$dO'?)(=c\K2ʊ: ީL2f̝̀e9 o&ɹ7+ }ݧR1Mv܂Q߸.סGt(heFlN]!c9|/91crN( 㓅 y¾Kb7]nfP>_=d]MDǣ bݎm4|%9ƜobƈZyc)ԣ!1);U錦Lԡ֫PBQv)PYZceTBAo}~&<Y,=q틈?]S$լRsEcH=%i'цژlxWE8'mAcMNK'Zi\=Zl )0ǂ`:'Q0.eҷnH/ޚ*)lw+2]Q7Zx$;먅*\I^_b/la fnn@h)3t=hj"S?\p^{i&DNxv7>#渽[Z -8OtW$<1C\a.&BHnXP(VTJBH\ʏ_d2g+vf(ƊAgBWSLEAqJ"NY7|b`=WIM,* ]k,#ݙt}t "u(e&cGJ]5tO#$ՕҁYJ |ޜlsB qsԓMY÷x+u:5sd_IY$όCK4aڦ(/x ?ܛkb!xUhEX77fnlF8j$Pu``+4mA,i:3ʭ'R3A'%.CZ˒HPԃ ׵ж՝3 Yqi_*j EMDzkKM<4fZg,s/='D69Pw V&]O`81 3U{ӧm sg\ךt AVLOj}Mca疪ԧ]Hz:<_bE)uI>&v?%"<~RD .#=8GVu ,? |=vC&xGS>bDXSh3j2 iIkM?:U7d^rkEUhmai-<簒+)_N8ݣ6EB o}DVep*![𰄍uLÃ_oJ=彧9:wٕ .H^vR~l@^RAABx=s+-@l`,J<.O+mƟIV͐G#?T.֩4ZM_h)"<׎d0$- n>I0'8aJP'j5TpL8ݳ.#!Eg>T%Vg5$29IX |)+}R+u}ORbrR3^vs޼.d끡NX4VӍ6ЫlGHA'zN>d_:$#?_L*91Çi"čHc7"Y\gTاBq9i/.W>K]+8R,N]^ܸ!mkeвkS":¦3qWMdYqp$ȴqK4oI`! h=ÄgmOq"IS\F,>N}+xxo' H!AЏˠw)(OQuJCZ+t)=3IO$AzQN #NS7ȴ?`4Mq\LƠ ͬpTk[ixF P>pGgWf'bHc@/UC!xxSzc7 +=bVF2yV(F6r08+pż{icƩz-g"N{|X|""B6ϲ >-G'$NKža\1ݸ3NB!|\G3(MnA ;_FeFE'3Ԅ6F>ʮԍ6z&}\&,1!evCz/"<[~ LvVYx3NWG<h=V]}Hs5(Z>j[w8%'QeRvM9VlقkQ])'zkRgLQv[1@*C/Bh6q>:M'?RW޲O* >_@DqMq&W08.(8F]"ٻs=C"`_b@4rKj,IXVnM&bP M'FOh~"v}gHhQ]l58$3d7N; z/{vn |TЖ@ws~C`uRVa4'K"w*$V`G)S=HR1кFT sf?٩ VĶj3v BCMPtvw +hV8N$Xq=(SL ^BAYJ5IQҳ%ɉFn՞^`_J9+7bCGSU9#EA.MF! eNTMfu'l$= 8`9^0) pp# (JAգ3dCX8+;V[#ly#}/KqfvPϢC5 IK^/>AUD >lR]1oְIou׹IjP-s^B8kҧ(6^0J0W2 UdV(DX>]RdH Kx)1GcoY$HhgI TteТa_#2r~C74iiJkLc JI`Ɋ<(k~fg- pz:m֓\Z~eЇAYc<#n˛eͶXw H/HwW MRؐބSjėX>+ygvkOYRqy'`A 6Tvdz9 mνps Lqj4󩈕 2 |}|Idh_&/] Gr,/3z货sn! [/ES}RY~lvKEOM\B;& gYP ̓T//X:x *?›&;[J(U~ l9`C|HdE`tIHȑ!g|CWLÆ')C 0u-#eMv[5(8}xo8Le$c߽Y_[%X|5M9 |\#Ҵu@V<%&'c( @NQKeCU^DPsBS<}Uh`Z*AZ ~7Zv~^vN_U/닷wC&%mmݵ:UiD!*"zAFa [aeφSL߲|}\J%{K4cLljT\nmO ʯ hu(vcR'P01˳Xwå>~㓡&l܊.-MZɧih9l1xʟxSiʲe.\Z]:~72IOw^2tQ)[CV +xue/գ& $G \ Üۏ/Zv_*Xݖ7ƱROJS}h=B@msLH&Eoڠ*h22NۇZEB\s~Y(JEft Ơ^`LNDms wA7uB.K\$1Y5# 5>6~wv)4IB\;[5u5 ݣA+oWEDP1^UdWj |v'νWROiAvct/9]з{tҕ &ǻ~,ҭNGxX\́c=q/E~u2ҖÓ 1R6 :V7 e5TSW5 i'hRscl~,O:_Ͼ8i)~EX)I~NAG5{Y#e,$H0zJf~\)ۏlF*n[[[Z]uDgwT6JU7dEdnU_j'g DoF{7:e8"2AZ>)S_a9-MqdDݤVl{wڄ&Q~B@?7r>+`k#aFkإ70`8 i@q]+L콚mu;{V/+PޭP 5)Њ5c]wcS)`O߈l7A2E~0p~J'c%]9w۶ ȕgU)3 [ba Z' j;#kI\ۑ]{4 p',RA- &lΑ.N:IɆ^-Oeɋ% g +3a9"R~)Ǘ ݗhR#F0& -Fc*f!Vmܔs8+a &e3 0TN*n]&:Lfyrj;[)di]^rũǕ+UypՐ}Vh J.H_޴˰ sQf\/vA{65Kxo<\yCZh]'5|E?f~ " !kUSg Lx4<cU޴K#x TY;8X 9WS{]pwe)E,(c0ڀ 8>GwB3o{]s4nB'RU "dSt9^T|3 (׹ ó5}d53Sԁ) \è7bUh - f^j@~j$T*"'ygE޷_w' Eo4"lwF#PG @p=nZ{˧u)m>V(>@vĔ S_{ck.Dќ/`s ݰ, KIY1N^={*|L%5$t;3gq+> D?K4̂ 8ֺGE^2βbxNJت3u$? ޼fq'~7D),BSBfІ*PحX ͉TN7!EpexGr!] [oLhFN2 Na:ջ :/O _mv(|푃4/~ftW: RD^@%?sEgJXzmXK(?3bdŸJ͒-- P5#3e}^)h:'CLKpsZ~ 5=2^N{q1߫?e]:d*Y$M6 yb `UQ{%@X3VKōyŌ:A߁W_kLK:2 AZ-Xlp̊lm(VO/q73W1Duq*s{rnA6 U. §4ʹD[ >qv>vYE(uvkRqz'pQ64gY `ϲBdL|7i )ewv㉦rLv{#~'j2WqiB䳅+;H eb\o \WUBI G<2|ꂬgu ]87-{;yR#="Q)o[LQYTĝ#OmIQebo|>"(~sem|hEvCΩunԶBf' 4 ^3pDyLz)|gG,LˋPm_-uAۛ^NܮTcaj, `XV(ż ͩ7„tomS۳e#B:V*@DX c8*EѨd?]uT<r" Lq/_%R eGf ֬Y][ e Z-FX8 aiKr%b(R6zu)kxMnaJ=ߙk菋x-2 !s4e ـ3w M'#'yTՓ!CI/7N)WDI AAȤ@$<>@4 0Eēb4.UGo?1{zvmѓ;Qe&o_]>ŧ#ogL遣J-ck&dZ&~IԊK{IxitɊAc0d*ZO=#% VTf2a1{_J3s oXvT2W)Ɖe? 7+ 28 -גCpTҘ& #M6mXvO:XYjR8Ī*o4nLo⼬-;z17<-3~4W<6иmkk)`[ROgzk3k'EGZ)ax VvL2Q&( ZAɛѠi\}m.1{iz ]&Q10(QjA$glHpd,#;c#C23@/Rje-'f'@*4&;O7^wcS&L{'|]UY@-Y0|\wU?Vӈk*Y(t8QLء՝dgrԼJ*,7cG賜 /dd0BŠ<HO i1Pw~&ɪ(o< ǚ `Hrjx-֟)5-9&@}hJkN38;RX*5 d'O9hT}Zq{2< ؈(9k쭬A:bu֔^x>jÔ?d$O^] +>/CjKgբ\~ \W%hَNmW^ QO? *8gm(n1K> Ȥd1uDG¸ˍomSc>`cHnos`f`L͑TŸ[XLs?zJ GBT Sh6xŖ809r<2"^9z[o\W=SIp4O!':v(yA_r_b#q!&#t;+6'z\w[p5~̇*16"^bjS;Y 2֯'h{UP;h3{(,k^g@ C`exeKޅQVͺjQ;$jl*xQ/:."U},ue0@aVMd@&Ddm^_m_hC*̉.xs1oyWXihU9](\9=O?9,&!tl{<ƫ GWU,gJGhE69(h"B!H$Ot!܀Fǫ3⾨1~=Jݱ̛Mh ʹ1XrxțЩ:=wpy %d\r3?r'|--Wǡ54<2)K/k U{gM"t?RatsfWрQz i'SaTkbLWܱo r DC Fsu}9V 6uhOxsE iá2B' 7anYÈz\7\1vbsuxBsNaXr66_j34lfC;1?<:74G>-sSo]o]Cгp (u⃬@loxQoR:ZZK%7q lBbYQ]fEe(|b?o2}k5>c/1ׇBW&dƶ~H3vqV{4P}qlrJyH9+|$){7SZ_ZW0C5WU\UmFaucۀ콕G6p AH|@׵#4lsID[km-!4) bhA~wA7Ngk ÖAbصSmO&Jpl_nuJmqv/#ƏP彖.Jݧ EO]'r,F8qW8TCϗg2۝NJrj`'ibt^ȨPah 0j~,qA[FnucjgU"YwJ8+zL~ﳋXRakjŵ8:yv-zQGR=MR4}|&3ڛ%4KN>zvݹkx4:)õ"R Dl4G.؟[lg=<>vr>%.Bط_dG%Q㋖qtN.FsKPo@ow4ǿ׉d7d{uy}XG+z0dX(:c~e]А$a^waBa9k7-ǨS$4@`o%Bm{ ]+D\2oGgBq*sS*m7F2>i$ L9W+&PL4z1 !̴[:uwRIB+1,3[@WvQTxQkzX2JG9y%䕆3)'p AF&Kxfqh~̯cW(҂~SJDpj@Gf# TNDAfL=+1F;fX65Qo(t 6b沼~-0ڱ˽PXKE3`gff˜I, zߩ=iOb_>¡x7"@^7qScN#QdhzYfsًeycoE(Nd }:l!>؈#;W|~}p*Mcg8-q-˹Z, +hnP">J  %_՘"2ᇃҩyQӡw]g^GۧFqliy̶A(K.Q_JI" )2ݢS=ؚzR5RFdxFNАl%Sn~P5vbv;tZ0$<_+e0-9t_eK/ L3gmkq<}ӕob87:B]|l,dnQI؀W$Rjs.K Ѓؗ+RǂKUaG,5Q;:ʚ3j-0BlW)U8GB#<|w,(,򪳱 0<o9$re ,ZR)7ީl*ZS!ڢzU>?5]W_P[Z[.48p%P6̻M%ЎQ18#nڀG -I)~!Z9WʼwQ{QDv:)t\tիDY+"ɿƱ#"x 4 N:2`ґ{[<' )zgx;.Eƫm/M[ZuC*]y ƽcËr`/4:9s%ckFVs!!3E(L0>>X?mZwEb $ݿeNm4k6m,eWo"F/,D'_4.ertk,h{<l!:UӺQI^Ϻ 3FxWF!.Pɉ7g~# /aHֈ.DksHupYʡfcNе|/PEqs*^у"&qPܞp6**JXjPAZe lC!FU]znS-ZJ|OfH.!|nf{ ( b}MV7,x gŜ&'w2yx2! =z['+J,;r[ǷB5FYر 30'b L?3 5C`/.OZm 2&ULqk$0\'Υ흂u NAlZԯAYAeTMIT6ܔN̏ub\jN|x|У`m%m@ė5.>)Hf[ۮ?ܷwbS)$ xi0Ƿ:9U!vI!HS&Ye: V`,H}@N*4;?C>_/ߵ,nU~JD/yVb#įN|vCu]/vr~<mF/bwCi@@ԳWBu!D,)zA): +'˸:WpFWm|FaVR^s~k6ޟ3e>WT#W\B[~Д E5:g]ҕ.1N.nG*qZa{W ŗ[ØT$|ns'gJgzxp' 93sJ` \L; 1S0 Tgz*g1S6hzL#7#❞c>V0cFn~7Q`2SC\=<8gӉcyeKvtӲCyH]Qh^6%zo|Xw\H a:/䔗@-ױ#!i: -D{84 p1Uȩ]uVU`m +%yw%1 1ӧw/-*=̗ݓxHʽJF2̞<]wSu| +#b{¯L8ƚ l5+}kzr1OsKlnHI&6ԈrrljgP*he0}Y+``$ӆTV^܏+/j#Eq?.MBn6&ȝ:LƲC O yW5Bi ~7s=些RF$$iGvSyd}?.v9LO殽.SX6ej5hr q=^ 8 ! 轧 A49Iu/ ¹?vR˹ MAD^k_iIp!/Aɞg~i6(8MO;#Ac97u)7 k܍k hĂ$j.p^b"T>0Q"3mxݴfKijly|mBFbB"`q}\hBz \jOy=T6\jz; 'ZPEbLOa>{5ky:'k":8&2h1k5kWRVF #5F~)b3l&xs3:1 'EwuXtG0*ci>uSL0O]^z8$KzΛ*fٶE"\BA:QJi lM|XDf@ֈ: X"ZX1+ȅ"J[4ݡY)7{劺DeJe45c ^PmqtsNtt|^C.EF$|ڄTtb{VJMJ*?m/UY[^/70)`@dSIc*͌}׀A6+/vFUۼg^ܒO/k;q@B*Ezh١0v$)h|2`?G6-xGnJS[,XW]M&+}?NIbUl ɒtOI(7X$ UoKcgsG1%0 u,{.>,$Dy!`S_6h},vҩ4d^:%=sliuZ G -+2\㉕. Jim vdHBA6C77QD=,->AKbЋx`1tGv'9߾]aj-K80O2lP蟵fHpg5'lV wLfp"&~Xne۱)i$T8birGX8ŁY3!7Uȳ$i^=6Fos1[0'prǫ\kZNcQ㻐VSh0set*a=jx7je0h(uf<ȒtAT' )_O/ɥӵCI+C%:XCv6-}ʦ¢k$)Q\|>Ԓ xo]1I`PZA[ϸҁ#Qu|K^t\6^{Aw^CQYWLj3vs}GзX#q]CW%"U! UTEZ:.(|M4/HZNW<l#sb^rϗf;8Z띅\[Pp aN[wbs:3w&:}$ 4#vt"и~2r- ὮNEޅP ,WrР>&gFbb'-ky(R&hm'pݗ*_(VkE%Ҭ~Bvy*=@c.*@%,"G `^I̾rV㳾>>qSFH|Ã#2g;hwdr,`A!LaxteloMn=7^qj[ibB(2 zqiF&l3S͗Es!(cbB&t8j3s/PH'2w(MP kqȪ~P؆|dCiऑR+ipNPY{Hbi UēmV5\&t,=]ND`E˧olSH@2ׄFA.1_Cm^POu\n!'OO _ʽգhw<ܐ+35w@u7(b=ΰwkHj-ၒH/b|BmK5>~W sB=\erWB`s9}*&Y8!Q1 A2hηff=+XtfɚIw R{43*issRQ]o6 &dpmfKC/!bwyG&2>=Z?l.,Gt2=W̦pDZqME L9!$p4Zyךuno!R h+\AmJhЅd,J"tӇ%N8-o::\TXKKɧ aw&%1"՛oш ܸ,w렐Gǘ$JKZVrm㧣:a1-]P,֧6|z !rH~tQUleH3ƣ8^g/رV.Sd7xMFec\$~\G74˴@\LLlWAd~Jy:.izX'(uvStWS0huQAj)j2%g7 n?Q\YF"E`FuHbkic!AE0V,WVj{s MB<dB6zt2/ioy !BSDl+ G3gU|)T1yˉڶi Ncj0[ uRfR϶:˚6<|m޺ba7#b]U @'X&21k>RVC;څm/kʱK6R8cZXJ41!Wda=v LxOڅ>> ďt+Hԉv i9ĸC!NW8,4+>KonI .ě'Q1\D'&4vzn]Zֺ~cDx_\ ڍ  BTYLj܎Gx-I`Ĵwl5؞,迤a.ROkle'9_.W\Kq-IijɀKVͩfI`t&ӚXl; Ộn19d)mB-s_1p3.0tm6'.Tگ3<9kNYrMT^8@X3ZBqќX:;+1(7nq <́InvI=(O-[Imm7jqn34/mʛS9R<C9n+~hh ip1zWWnp*{\DQ5g5/*os/xt/ 40qZV+od5۽„dT@zY˧1 5A]1j9\6q9` ^lɬdmS@IγiXB|AO ^i㸮{xX8>c]j YM^G`Tf &{ōd{g6&L_V̝v4G~A]Э:4n'$z?ОGZ)Yx^f ,?`D!w54--\n`{G 5ך /]gmYY}܃gO:`(|}s sT5Dž KXUȏ^vʬއtZ"q(B<#Fkj\VmՑG V:y=U䪴 gc~jۈp\O[@chQqiҔaZ"D{;aHp^RdomH}~܅ĬKpK>yP+8 |v|eC1QӚdI]=nEp M誑ʓ]S|ĝMw=5xT*۩U 2n:\QIH\YbGSg;9;ZT&Vf#z;AIɂh.J;!Ywul_΢*bk﻾-aQCڻFZ -ZU2yYYl3x_w6=D=cTs um'yT 'au09UqUd] xT5s{T}M]*;jP^@l}&B2]\J'1s]Gq&H3/.T ]. |j8~(M~QC2) {([#=b`FWK lyz wIҕvsu;W5}`HfWiuT)ֈ VR$(@}OK ИYfÑiSR_YbU" BD[ `3/"{rN2L扊Z6nPe%Q=@d s]ʍIOC@ho)J<"_%Cl-cq(a DH?Pԥơ9ߚd|s0hDrmku6Q4L% h <=]fTSotX;4}jdĿ^|ҤK {$lG*Hu@[U4r-μw@$F?QlpGၤރ0مן7v)ے>wd胍p:QQ]8b8p1&Np'EjΙ>d>_.GdSd(׍a >i_Qȝ/1ޱ ¸T"ӆ)f F39 R]TqEtamz>*MH"\ Ta"Nv||RGؐ+@)YV\W25㸼zg}E^U-zglDi{$rhq ~G: '9uc&"wD/`4 "Ãwij7q y|ABU] :`=8Ղ꤈܎@ER$[ZѮ:O߷Jގ:}z;8&}L'2v1t qCdƒ]F$y~0!ܤێl;~HSO DRP=Uܭ6?lL^'+uyu*|ɘH4#JG1"z%e֭ldžKy& {>6Ąܖ^+N3دp9HqI |iۆ 7u}dqez.TH=C{؉21!rWM= Vf1tX.=̱HgYS\%]7@I5IWLv \7%L|4  /KoPWosSV 9h+Q%Vͽo3Jj𖭷];u绽ࢯ֭륈[oŦ%ۿ -k&oŏyI#XADOz_( OK0.HOҨ;!#T!X' 6fԳ,@1 eSO_Vx*,E$`#rUs^Z+N.TGpFvD,HDew'LO9NKv$!(Qyڂ8 XT%LӠ'vkz@/){hHRTR RuRSٯdM.EL`5fWn4G#.mS&gUYY. *SjRLJpilS>cIGh~CJ ge@eC9ffaw"RRe8h{}S Y8\T!mȿi_  ˑe757}(u:T#HkY*𕋜ܵ =V>*vhv\m:P#;#YW8јc`S ޵wq&&=bϮdf7:䭡x0m]ĩ }ʋw $3L,qH)dw9rK0;HxfI%Yi#-hxNf@{;T_xӤ:~%Ðx mkxJ .~k9yqڇXq ,m>X4.9}$w.·X},_{+Idnk't7: 8On&vqsEխzؒ-M~ O⚤Jߓcm q"A{mVРoƦ\BZ U@3cF%; Blj]> k@]n3"S(fmuȶ|ZK^( A- v=e_rD+*5k 7)h0A8/ ߈4nW}622\ ̰S| `r= ³N\VG>3Xvq (EV|;[kǗ L+Cw]uםE1} Z5c|<*QK=ߑWs+WT:Y #k?늦g]ԏ~Dh_4 x6'%́RK<3~j<,ӝN0D+A 8,Nq97qSwBE2&$'$2-Э}9mYޛKˆv!NǫK]a$#~n)9Y%aZ8]h'VMBq>^9ÚQD'Ju\EOПxk@_ڽv+ &4l?M1ir.G(t.mXbah+SU#إ; pe&?j9nePǁ/Z%kArTZ{1Y yXwn5Nr3ZS*Ftݗ^=dƎO:Sķ^JEB j_!:aз8hNJ2^QQ{at98 'Q\!`0Xjg}%fN=1Fbhwbs[@ ȌiRSjjzת `|AݯIIjafzrV,Z,S-$|+ڵ>ɮ56I:GLQM| MVn}>Vr$p-ҔbCEn;OXCfj+ $  ?l&%9(*Aq Ph UoeM-{Ł/䰇")Hwgza}-([x:(1'Ҿٌ]NG(ۂiQ:#}qu8;ZkD^``Jѧ*;bñF9媓kxZlViy%ZPcK[CD{Mu`~ B"&?Ik4YYI@?I`ৈ)Ӹ[)`/U r'GG i%$g~D=sDF(8MPI { h3ȗ@D.Pk̉'o""GC=~TTZ3S+^2#o/a}RK?M☪rjS yv5ьQC)=$ϷAEm'Ae,6 *VKO-Pt߷^˴Hgh9.'8vע@[k&U w5 M]➁LDpXLʁtiEHh7gRΊ`QEAB/y.%=v^vFD,?$S+(lͥL_E[(GiCERg5hRtV D$ўjf XV@g5wڱeHS;<}*=.hJޚ"ȀAнw[UTcv ހ.t؍"!77󀂊\_n t'Q/fw&HA^^Ȥ{>?[Nd)/'YRNyW1sb`f5! bE!ȬAt1vH56?D]@a5~@Nҝ{p2Ѥ_G8-QRX#nb4mSq3h7qYq0Ϯ' m+zU]^˻F! uv|E ;737{a)$q4_50+e&$7"(B0/ꍪB.OCSNB;K 5䳨xBs_7bZWmhYW3M׃b&a%i nOPZ>eDz>NNXs$S&FSB%o_F2`F!f.v#_4u%/}1%]uM#\1NRFLPAzgՉ3R#b6sSd>[h ~XjR(o^[Mgk{]JV{Q9 ۨ txl TIeu4t1 Ȝ9j8ڵkusf!g,gVlsk/E5[v4 Lٙz L)o_١L\X!:A)NA mH.jj~kDd-dGl\ˆS?= 6!Le3&Vgǐ$NV@PTP{^ۨg" +UM老}" '+˨+[Jİ<`s[Z*r3Dc5gv/Bўrin OL~p)\1,Ԋy>B Z#WYmHRoe,Zuaܱęk_#J)t6!q#Sh"iha~i?jE[?K_iqSb؀-m~ukuG #r=! g\FS*0gn,DzDrĭ21m`\ {SB'2/X* …)Yӌ'&U&h),^C[qwݔ+ZG5˖+溸`{S5dIr[*љ3pyB8#;bA!^@p;v/u٭p * ¡١>B>n;0@/}LeL,8fΉZ8_o&.5oYi%d3c/z(l!h&8xAIg T: bi;lK*L鼟hu-L? NA6 ќyَ'/zP,ʿ>r4y7fvUyfem )_RvYwL~^i$Dh&E u천( d:rTܜ_J;I.t]Nh+Ζ1O "ư끰^B )Ϳrs! ߠW<1*QzJę%mެ7,{ok_ 4D._eC_anXMXKוa7zwCj?2d r,LR5٦[<`(@7+6=۸Lo$x6[E&Fj.P(㑰&ߦi\lTW5c yV{U3*XH]tۜ⭟Wb:(?m:Y'S-[o~#oh})`+IS:C|}sB{6v/cHG˅ylfDVT8D0`UBAs ewScu+хU"¨ZCkZ7'05`ױ#邺\qVhu OPH$vA?N#꣮~ Ifbe#P-\J43=|gL{^ڄz@qۄ7pbW3bK.XQQO9725two2"1tHۢ`m?+*:wmfh:XGd oNZ@D:٥cw@bi[aF/Ii#iёu*&BИ?|}&3bwh-ETӦR~w4'yo/V>%n!UTiҪ%rrb'pB-;iTq@nm?p"&z8o)vpʋ$j{6s׻a?% Gw|mHP7ULX ~j$&ʱԲ{"re_u܆*-ىCgHMx:2b))ajؚf) GKw= ]i}]ra Oza1)?eЖқ..ObwR;,{iooȦ(|K2-#闫o>6eiOӆue}db)Ҕ'0\|nVI2+zUoT*F&'iX3$nx![d{ѧzkkgoVCN$PN(o@F{I)/݇`u 63YucuÈ-%l)1ըm1#2T▿-O_ $z-'A*j[^G5xk]b2'hFI:mIɔ( Ł6Z U"v^yx5x7ARn̵wƋa>PBj6@7v?cq"woRX/oٗ :Ma<¾c5qwKMz FPv"VuB6s%z}XK9 tK5bdޙ=]Ƽ!xa8f?HqV;ߴJb_&קL|-L5M-pdM )8O5T”MI 8cΐ̂FRQPsmy`ctKUֺ` Bk:)s@"W=ʀ'4ɏm0^$mC@Fw٨'+j=A60ey_G W Yn J6td)ֳ4 〺 Kp6Ϯ] 5ęF&-0Kȣs'IC^P,I0-[윱!D!5a+0E7{$\-8 ӀˇKD2IB3˫LPn2Őf1UWOSo#-NDV` a{\uV]"6z1"^8G rUSVg#<*zg:XdY텽-UǔGRnM.Ɵܧj68+3.G;--lYhk@Iv wq$WݧʬaDhHV}/;//#˾GD!Ms<~OנlT@?O` 6P.l.=KkrJ͹>̜ Qqr<N%nd pNJZ~KQuL@g`6[-33V /oood&]A4/o-JH*I|^sHbޒ[m9I wb8i1UI7y!@J)|t;gVy)d$T\ /apI]lV[#,+tE|/[;:t2;DϹ|j$ v_uYd+s` zvM6ޤdZyK';W  ǰ"-׷@ud'Wa9k.p ᧏nVZc$d!V<rJ )yBLOӜs0h}y=G7̄:3[WpJX*Ib}_:AJ>{0*ܔxN/O4.;!UM615:@yíOjCbc/ybͷ@ۀc_ۉԹ2 ~-h T@: ."S,+n?=XkIԲQM!}e`i k:l@ps~pᤗ=%Qcp)X,7f2ih@.Qqdvzqr[9= r@ыLÞB%Dr#\!E۴agL%UΥh SMv'^B"C!-&Z$헢q4 VJl=³4 j'biU)\{VY0OݙGץ[՛GW$cxEEn[ sb\(Vt%^I, z}.kqz(oMQ鬇 eJzpN^8X5PN|JF bmI?ɬѡX^EI*S?@1ڮ ftp~R 3^["!;<o<T 1Qâh ln*!į7D0A q^e1ӢX,LmxHVUOMy *<5:߷.3l$y\ y=Ƨ:g=Va{Cz}eP̘tƌBy_LI+*αdH TdiQ9zdbѫ[# hzۡ)O8GNdL76^(ᴗV3z[Tn>W"q8t q8w#^ 7fXWS'OWBp R5q9 WMU6Wb򖪊xV>9lE/F]u*g݂Ɵh.(b'{qFbRv5vL V-D ]Gqy2H%eon,X-ܠfG4yZ V%XPl}Mva(El?Fx^6<엽 Y+ 7vLjA9+tUƥb!N (S\T/qI='a AkJuB*` ")hƗ7LbZL+{0U}J-y\CzmIQ Dx*j')4OSd6tXHDyMB6fogUUtؕnpYO%hŃ<#h61U37<\p24bװ!O\{:)K5$0>=]jVF,=3@m[e+fE{aj"|XѫǴkԮaWpŻ|dY$pEj;S_r6,=3疄&E԰%s:aK Go48tۖeR lRhFFR?򕏘>ੇh,Htګj mla3ƘЉ;xc=6%KRa9Ӳ*GVYx \%|; P{>:bf]`FݔgѲø_$&GhMj`~G[&Cy(i-?ư~ )*ƥgB ]q\fmFv Q3'\cp$d>ܭ\p|8KQ_pVrbRma{OOHʑ nC$R^D|;=ِ}um*:L]]E?]A =Nbu uM׹LSuP/^߰' lv;Px`4F9 E)-T0?ԉR*kBW< $x { |KdzJA4fײmEQ\$Y'ˁ-6S ]Y= ĜoJXIYuJF;?GݶH:XcGFBSeV,%/45S@Et=HѮis)Q'\|Zlr-ל3}EL%VѤf݇,{[}SrcX(:K6>_@ٿ?_JeDUf϶Bݭi&f3oJ!+fRԩ:*ٖV4>2W]Q8 " #tve ݮzک{E{|Oәdz';O!="ՔJ#*hǣg(R"ӯ8o0Eax52ȥ|@8.IX YHO@S1CVwVlԴ唛x>iddž]ɚpa FF߭Cea5EK&U̥ Ab{ye|$jxE5;s)UHd!Z 8Cg9 ^' -.kiIQ7sr["w}S! 4-)KY,7[S^^=ji[a`b~R+OU1McVxϓuݚu-5i4އGNt?k$SB-9cWbjJB=P6 Ϟ̮R Wv'{g}sH[6J~Ω{Mw)64en1o2e%'`[t/‰9?ϔA,3Lƻr %!k*@|c! ش7pǷKw\vSV/[ U x4n}큘s e*!q.) W+N1Zw[+%=5e" rIlU$v=uF 8}4!N|'U u<[3:R^$5VE"8%~_v7?2 k?d#ڧ ղ7n< iܻ?d!cbN'CjTHprG;σXBEJ1z&X Ql*VW Otj5o򝵛+|}DxeT#TՆ`;rl36g#yq:^&5^rml H% `H.(심E^}2e`DY6"FTjupQy0ʼn8Z E>Kg2R<t='!U-Dzȑ^L'W_]D(.ˇS) @кܛcXW)܍F2\yz$S,N Pe^ý:_1XʕrIds(XSvJ9]ETe X#N2dpLyt$^ ʻ[pq9x҆#mnTFPM+>GBRL%5xm/#lwk8eD刦Kg&0dg+HU6&3SULru,Ԙ-&jm]Po*^lNq /9a5*seV J.ⱜO5Ro^fv+CLyf}4پ_t3q+p2/u)Vm4 _4Tr +yhTfD!<@Lï7<}W^[:YIow}܆=Q ̛)lojÔ:hB% m SIKo{H^r}$$թOG4 $KzʶDzK#l_+DKϤis7>ΰfkV<QI; ˡ K0]0]\ȹj}Nb(j{9MA/7[ʃm̶BcT)0k'WCEß|BY~`pfU0z؛CCZ%/rci {#Gg tI r ,?+l yx,uh,%aK?#c9$E,T;&j-6BHQdKx %ВofI(liM_M|<_z;q~S[V d!V'TrZ[չ'K9|?0&6wJx3346cHeFm*2O Lw!1AN-E\F\hXjJ]>Z \O|!pn}eԐdO?²-t,V;;xF8( NiL'EF>gu G dkFv O -e:%lFPts}Յf\1Uځ$+v4J{N{B7h}.{y0z8 IUIiӱjxkڶӈ@ ч.|d-e,Y|̯r 1gDl<j⳴){wPA}&߯&?TDbY`0NW}q_T+8LѢį:78/+~ȼ9aO:*;*kۓ EAmK-(OԸ' ̀D%rpu[,S\<33 }~1R"\Mc.w=F7o(G2!ݩm@G^w5Y% gC~)N\0 %_0P]-0f'&oO!pq1VEͅR Dk‰,vuvKDOz9Im.'^?~w\Evܕ{$4ʕ.hsl+~eBY?Y*mj v?Lb 8,Rq{\u>a7k CgehZ;4۷kZn?8\UCvu4!mHO.Z)N+ XHԿ!"D](G0:&VK6`~ 6Xss's.T.,gT)KHs hp kKD5EXs~Ldp*' Ⱦ4,V5?&o)F'] SMgrN@bl9]s)F,qm67zAoigG>.TWCԨ &=|n"c"(0 wBO+)ռp^fgtrx /Z#sV;GbvHȿ)EA19ÛqH^%")3I;:!|s>'ӆ5i9/#mC2[hNoṋU4Ph ͯ/˗w0Il 0mE6e.5Un6zzؑK-~Y/VɁEDy1@{Q|k|'n;{S*"w, i0Ʊ`Yy-=I|[ j H)eIr~3N:9gYʂT:$b/ f]*;嵊6Ah]kINZęm @G/5+8ѸD{3mf{IFC "痕 CYr}Db 5"Yĉ) dB hC4ӥ.D{G˯EúGsb*ڡ`ido˚b3W5SxkC՗V/i4Pu>[zfut<nc: JTPߘЕrU>!=.֎F5_]/V#VPZjǏԈfV^| Wc>wE I~V{W ˢJNz2 r䬽V2<){xR:/5{׎esf7u%?gsc|tFv ʟ'>W|6:8_8/LاyWkJ'F6.I03뚻1bDӾ*{!:vȝsѱ ÄSFf0’2zJHs3k2'haPl6.4dz)6!.,8؄P:XHG̗/0baI^tUҎhlXNoi0cχ"NT ' ^15@t,MT: 2ttܱ6ƃоC 0S3-zTDWTfw'UG7W@I"(jv&0x4Mb臌QjMH}&u^TO!VZi֤hN)2jʝmyxX麟;D(M:*6R\\MY-'׽s$j!Хn~,)2_t+ qy}+KE|Ё^4Z5oaCm|rzXLѤ$6#d;>pA$|-H_8ϧ/i8]glY-LB2*0%*ac 6.J gd˶++6qS "Zy:O"7;(8vm8?,fEs_ Noo'b07oemk&oY{ .|aRmwI4&{F# f W#X,C y+@ }(Mږ_JTKB\a]0:kamΏ\ g "L82aGCv/Z9oly`^ѐK,({cIw!LNW:\zTo5Gl>2!cAJ+|Apީ8p@ #Zc%ni>f\jj,nՠO $V:^]Weww=f <їb4ȂJA%_ wc0Kq+7i~@yGu}nvR=(pOf3i+<=7b67@ػpr7:텉m`8H/nDq`;3)P]p$Ϗ?=9$&ٳn]7nrD'oXdt;~ФB ɐ;lǶ-̃rtcenTI0/ <oRQ%g]iftnrKYS9\l49#L}׃W#4k40V 3y7;#,+Xw2@tsW`FX}Ezٯ~ӵR[Ci yA7 W~.W}_!KĬj[s^;BHgҁFLЅ aX~?K-1”< Q^4,D\&rںVIbe[esUʂWCWX[kJ5hܫbJ7Hq-09n~wQ1 ^v.{{|5|gn]r .ߛtTCFpxAn E]$7HK1$wN *VeqnqКስMNM^k: W/H$)?=E УNE/XN]Ɉ0uk:A'[U.N/obMNtXGoןX n5Ĉ©I"LVW'( Qɟ)6-EͺVpճl;OkVf`H-WH//HО]#+}v%6R!pcse=ޛ#oD~.RD6$KB'IFqS;<'*J!Ym][ '+\>qpۙWefr#[TM4%"KƴFVä棡A1'|*:;јf]7V!!Be)eD!{9OS|Ql@kFj ݣO qKxNaو:"r"kX>}`t*l!MҧwM_™Cmβp2=}w:76H!DzA4~[k+P`t򡎢eNjQocUB1S?NC f2%)^\y~9 *%ն澓I!uP8ւ^A\Zh7A [uЕ42AwR?䁵GSp+o/dT d :wú*0Kih}&91I +͔6{(.v-35{w~wEU}7 ' Wog]6T3 5G[F-8j0\B.tMvdVHڑ6q(ŻR9[9;3gI߅cZ1aZMqcaP T> Ew^,xȈz9[#k|1>\ |O{=js#]7[O@.|LMVϡtƎ*,j*Dj"RhS m@ ]g2A9I<+,¨Y(^ 2Ib|`S֬"<( \uy ]ASoUp~Pj6\ӵ-xBfL.XcPH_AQ%]2\` 2Rwrg[5" P}<7Q,5bO&&pޚHشtQ~5-;j<j@d#A|c)>E(\k_c,[ǹAzٌNy$@ H>JӴf9p? .Ϗp'#Ε;V^&Y:u,,+uR1\NF;"6)&V$&8X$﷘-s}M(M}[pڦZLIyZuCK".O<#iFn(X6@knT `VKؐvQ ,u(m,X:c-┃05.qNb|RϢ&=<_ݬ6(Z$<4a}:\pi嶑CWR9Z+E y O.@L4q٢vJq[XjއW4Hc0ZLH4E~zR>s<;@>=f2r:nG<-C ʤb.EYDkZcHyYw,nNɜ03iFh y+i \PD2s[!z~O0os2MM&Is M]qQ5:a}jKg=&ptM_-+M`4Rg'íy5sx bH3 |{EuhJnK=(`Azs:Χ {<5OF;Y yxߔjrBCē_RI}2&eSR' bcUS2Z]l+>(4KH3[J+6?rc5zH%+{aƇbe7(rͫ0u^V$[֔_hb蛣Wfn:m/*bVJpQH /B?wcq\Bo&CR#x7㩲[k.IȖF;HQDG!!X8!L}ml &APaȞbb9i3QJ`waPHkL|Bו&Ӷ;[!.lԉ+` غDe>DnP2w>gP%thL;5 { X a 0 NxsR~6w-etzSA?kֹaKBO!{GUܪ#Ӑxxі؂DQ 9Kf"o~?Ƅ-Y &|<^Roɺ()ͺ (o]l'Nx=o,WXS92&[q(|ZBpa›Rpb n 8=7r60j=hlQ jO6tW۪?t^͍gc&M2.TnA*4Jjodp@[NZlҴ)6ڀP,ŃoE?4=Ŵ-pL4c˵q'^ƀN I>i8Znlj_-6/7 \ν4֒?,@]f c$j z8AYߘ&=HP h[~8nhjdyr u6$׵8XךNq հC 62N*2ɟI9VNЈ}u5UQYL`z%,oIx;3ܛ, O}]. Dbcy@QPJ9.q F򖔜3XfeS3%:("+{ |a~DmxXwG~!9SY @d,D(oO, TGw2PU\z#AmvNWJSzT$g^kYEWItL?HNC)f,'7 DoRJ t4v Aq#96 D~5nyS~Z2nE-0z{ !l\}wyN2KдxySF^n]!Y'G[J]>ܺO+`8; $ʣ1Ks4 F!|a{æcKOxq.Sc| apd٥nK jҟC4kfͶ%4(%37nSCygGtn+bg>Nױ2(0cvpcۭC[ذHV[V͑ԔPl%_4O{eY dH?wIOV}([WĦA){}Oگ5?Io;NMZ>=  lěLb{5bs#o#wsn |`j6G=^X5<ʭDz-}VH+;8UMO< mNS`8_bEEc_/)$i #T壠B{Ǝ0^tmݯ**#\$]ԹǚAx_m Rc,Xe3* #k%+ڹ.xʖ!TEtee :]NWx/.6ͤpBwJ5kP, or`*W:y7I aSkƚ _X#]ST{.ąQ,pRxqD4w=DNŘH/t@iO}agZvWBN˕#TZb b'`cxg2=a}./ Vo)#&;/m[!$vWԎۖ lhrňCÎ10Q_[C=MMBji6q!Ei3) a CU`NY&5rV$*T%]dϰm/u#ao0a[[';ؙA֑-ۅ-V]NȾMXRK?0\SX ٳџK 'g3;Gm`uʺ:tilߨΉ6l{Ä߮(Ds"1Vn'U k_;e&Pn#U}} 6c/neK"5VT|o™G$< 4ŵv,AҸj}%|V͌Y) oW@vsZ%qrF@o2rFvdDK6 Ԝ{%Kc~. >% h23l8m>Hl/9T1|7ѠJե+e u߱Łւ29%JOyy4=SȁP25U=M;0D`7TkuBa,vLtE&%Y;FJr!?`^GK^ 4J-fyIFQkW[HHc1ZwљA ;ueDcG9LkquD{,EutCe5o註P$Q@ϟ4lS_5wF|8j?el"UvwEcq ~a(6C.Xr6O)Wwdk!9/ Tf7R'>v:M'6DC$ookܯV wge#UYqF墸Rꩾ?kA"PG R\?-mf4 ,#{h]1E"u=Kh:\ם椇9:0e`gٶ|,Dbpi^ʍrOgRYCFb3x-ۋCytb \;*LߢipHNED]"d:b!R7up|`\w j7W3ibbTJ8ܤm+/Q<"k|iG?K z %dD=?'/ D’6' {&';)ϖ<װ `+o<%殩=rww S[,CCv]u?.6?Za;dL9BE6 -;H>.KT%j ]"鳻`6lOFȿZ S͵q4ډ9Ygi#J 60 kSG0w|)EMGW(Pu<vDyBS^"(d&OU1+5y1(zBo]$2rQRK-ᣛfM$y쬤6džwb̀`l{d^,kJh;+}k ;r[ґJ@+3F%ӒgWDT# '1X;*hȑ/c5g}Z. _XGܾ=wN>\R߮ ƍ7Q)yb|D$ǤU1}ӭ8~_!^G J o,9a,I9}EqYo ݶV wYjz=1 xO$tel ehKղhTTtJո~ly\t&=Y~M tE@-A䌥Vf=0{hAQ2OO^Ub%vEPW?`dRc8QL38H)ϴP1_%ɥnTrN˚1__~GJc žũ~GO/~`8rV<'c&T n,'/3@;FQ!>^9/y]!c&\!nYi WDVYڧOLd?92 ۔ylFH5Շ=j3rTX JBts;Ɠ2t䍫;~zsm1<6´AaVe $g?-'=2^JvOc4KڭE1:@6op_RAyl^Mug$][P BlE7Z%NDQHD ;]as5fb r԰'#Genߍޯ wmVԖ,8ۏPjəv*t Ԥ JP>-Tmt28I3FAs GISszkdjWTtȉFK#o1^Icg?Bo1ˢ/<߬w;Z(˛'Lun@|B~KVh=LdR8%k1 4HB+!V&Wdpba{6k5mibO0NriԂ¦^5Zh +fޤP27?-R4<>I یuƼ҆a[:|s!_ r՘ڡbքdk(DNKs ]j6sPO_ C۫D`b$i)8RSvF4d6$QuMFzQssex^RCd%n'lwĩ?&ӕ|\4!Cq!F_k:%m8I2j@Cubݳ eqg߱ki6R;o qe} [!:>jvsR"+3ˏӒVnevuXRLx|v[:-'cJݻ&)0qAMyHey}ldXmK/ld MjxhĽp((٢n5vha|q˝Wg9^ak@s!g]؃T=Eczak{6̧O$HKNlXpvbqWzAc H zyzgdDw0y0oRPUV zgv(96 fhb99nc 5R$)qH/bF'!* ]w"7~$*Vv+)h+99p>{!xk΄NC%gJ -؂ȯ4$=$`]MXUfF};R~`J)O (t4н#/ oNƕ{Q˧F)*20rN@L5/1Hӗ<vweoT#B=2삔Hlw=^huԷNqϳ+w q oFqh}dZʲ|rhJ$L\lSϻ 1 ӆr5·zWR1H|fqޚUrYG2&@IF5Q8v˟ %r2`1#Ry&K"ᓻb[AiE˸M"ѶSwc-c2 2yGZ3g[MeN݅ε-b2ۦv4QȠv?Kѥ!ߓ[ElI)%|{Dsop`.I׏MHk[{P"$S+ c*4C%;$k P̉tg#&`L N &+4gJ W*oj>+cنM [{%8xj#p?ゑd :(ف&LR2-,@1n$]SJ,0s ,XnL:_oˁTد3,E7Zb^ -&>Tƴ~('WM2?胯"Ũ@o7.<\ ;.݄5ѕJeY6>q u(qD\kcB~U 7DNХ <s$נ?,o{6§ 1?%iȋNݽJƦ};r{a_ VTpt^VJB *o'vmi4d pRL%|"<'Q>Ga{hj?=7l5XaB@J'vs1D(8W< {n*GV2dԹsY0.YUMK͢f v%`:\tX8o.%ac\[@#L&-L$ܪܡrU+eؐ?9r-=U#Ϻ 1]JV٪f%TW_`fx”UN=8/Ͱ:̞;3=3iBnNxm e'2w~tUv1Xd(|0,DjBnoA [W\I]qQkN`0|+h:{o2v &?_l3{IՅR wM 'v~j~OXH1ݠmŴC[RLUBHjVqWc (igǠ7;4a¡&/ qG'A0F%KE`By$SPc4(O?UתC qHQ|ce Z:1 _c7n/d h aYv;4}~d !)gE礎nݏKo Ʃ6bC$o1˘" Q>;:n@q/#k\iSA1{< ܵo!KC<&1<t#0hBEtElGr~-4=yyOMpʨ12E dE㳾.hLlO|:Y`􋴻~X~i79* -g%kRg|5mH[6R5O DmaȜgq^g{A5.H?@^+4d,Qs|)y`:FJ 8s~'ලxRV @O}kM /TjAJ@؜qekX`'=ھ6I BJ;kճ8h,8h[rI[Gܬ6f߶;؆)㲛Łxϥ@㺇LqdG< (1 }|Q/554@S&g'3+ULݏf:KxդX|P%SC NY1`o4 X빱<!NFzTU9nHǣgS ЄkrDBrO6g7S/Kő=҆I^PmFzz^cUSi65 Cw.]v 7}(g > =pOkuH5fMN.-[6nuJC7{]vFpk)Zbq`6?2*9[ݡ=m(v1#7(T_$,> vy(0BbkU"U%%`)eXu/t!!'iґcspO[R /UaHCi+e6 &82.7Wr.G9-/bڦrZkfT cQ ɑ3#4FK_Kap qb/S Ӥ&]yN+]pvBV9P YgSVw8u4b6Ǜ[Pu/)[eN½Uxr:S>xms@>|l ebZ=k͹.I*vC8rA [nxP3 : .K2K7pV eQ rE)vem_o:݆0%at!ܒ_##qH V2UzCo>Ț=yT8]qI=z?^nsa9n(Ӌ ykx͵ 8,֌dYg3Yʋ7!6i,2|isb6" m'KƂugRLǠM @;OÐcgM_\f|?c ݕs7L!At<;n9%پ"5_ v4BD%VTk^~8AJ av<[ =cSQ]ۯ }ݒd~GJF!)NZk,-DO`Ϳ2!{_0G _K_Ftx5rBщtK [_)TR$~z܍MJ`+ ߠe 2@|$A,{*k _13:CZ#UHr8(Eɒ.Մ%"[+ U{4k x>/1Jdzջ6VR,+F]>Pi 'g e<~]bYO3\+ 4xv߲eڒ0E/(ST:xجmcJO/hXXb)H53K1KCu|Do1&KO%%*z&6;>ᡰa׎};J"SF.l6\5LPFs1a* ZW(48.e^baԎ; ʥ ierIO,:إpU+9"jƣV$(0b&u Ñ?#e342F='#܁f=N!E W go3)Zul#;! h-Rp7d1T '}wi3Xռ(R2%{tM~Y;oBw˵O#-\> Nf`z0,#'>kP*J::Qc>-0n<}!32[טɪXLpeSM}rvZUDYqb*؋dŽOlV6'gw~*;ӓ'}vn1g&T 3T^o ȕ&S.H7d[u ĄbC͎KP` Z4pGNip|^HCa&&şP$l :pp]4=j*-k=PW~ bm~ WEU!tw̡գͨWA' }z <2k._y=I&l޳Rmaߑ"WByPKz#ELś>V5*ȘݱG~5=.hkl4LMy"s>e#-|yO0Rۥ@'pV߶bMF=gJ]ta3PĄY 7AMOa1/8 yNh:Ńd0dxB|ޓ6l gvx6ǽ6!GJlpSP)u@925<3-OhE;zqm5ٯ•D^q]=Bۡ^ ]7x)X_<)n|g43|?o$׷W٭K9HqiEd4E aH^2|pN 1)!'3VOH1c9{%:I}D7W./djJSWѿr5n6@k%@n Æ^gs)KUĠ/V-gٿt\5jVZ\iPZ(Zoڍ/ Gn 4ٻ[溛y UxU5K%9>[t_:.Iӽ1s(SGv&:^&u187WUab26>T^_h<>zk[I8WNJO <6l9E ]";Zp16Pf^cx!pp3+9<֊MT4sOmBho&T*^/Kw/>{>=nF4SO6&Mys_ c `@3|xS_R,&sWd6`QNjXxUNZ;E0[aZYѥ׌k8Τp[vy W^IC .BG|s TP68Ja2w2ŚX ղ~T7 qz\в߲¯xmK;}pu˧d>reMය IChT`%XrJnwj} ǘ7h FƧ/^X iLq [! -|*+7x=UbSn 4p=>LЫ*/Z<ć!xƚ8X~40Ol.>퓈8z̋>Gmv#(Jj鉵o"vR"c=&L==ɀu,[rp ¦YMLa^詊q}4xi`@^_jYvxt1%w74%*LeёKv@Ybc5N ;^ՇEqp/ՉTת̀$$_Nh;QńEܓ ]";6~$] fk+Zsb/V7T)A,@(z_괪c-~ۜTyl{pzM`gPb&iO\?z2$J(tkMI рe^F tƲ3ix+2 U4s [!CoZ5WS kZNh69.O1Sufl:]?6Q0+~!oXmBß oI{Ĉ?|*h;L^VEEQxSPR`i_+Hkܹj5GX6sKl&{ub8ۈfG[&> !bVqֶ@'j4}(|Ͷz}rv%`Y4.2k.:/Vr[gWR(2G Çu:$l$L2#9!%]gm_jnvX˛薃')=U gv7䛌-\ONƴLܜz1O.AW?0٘y+&\w69{~(GvJdyNdi.!U'1nKl8NuVؓ=,f`.EFn!NNo*Jxtho gQK.jIz91󰒯@j) +[5=7ٯZ*xlBXO*MR$D^.7FM-ou. Zrzؐ[pl0brq#cY=ú|:rG8Jϖc&bBpub@9RƖ]z @_1zڍ?v.F4rGwH. 3ވpTm[)s ß7H/T_<9!- \ìhahI ݶO󸦾HO~7~+Dc'{mu#ZXJ0ʯT:>CWUd9-PCc]Cqq"uk W >cBC'\1p&l拓M;0w(>F昣y7a֭`( ր GZ=f~S&bnh:"MiHPŕ g^$0M(e|ǖFNkTM]L3Lṣ\Fd=DftZɣ1Hzrj[^+ }~:%QumK+g8H#)Wf` bnexl0p[@D1ۻޓ6(`I‘uyHЪiC]Pf)B’TF)sX*g^DV,gťs/b^Ɣ;Li 3K(SրD+ld{ÛOٿSD$PauL_r4!J ]w{D۾xќ")_B=z#kVev&B6N0=,ySo4ΜIx0D@>@E?)K(I j +{4^x t\WX/W <;-8U b#n;LnwGI77rI2͢(yܭږv(-P-jH:L{rzu6hz;]kE@}ׂd .!j-dˏ_@t:={6x$oJ/s1EvT T7{yak B X;1|8<ܮy;Èj8\DR6u/G%&^` W>S$|7/ů12&&CF`tͩVk nN"4 hvD'f8+,+>hhyY4~Y&d/ĶqMux1.l@VĝI12CBTԟ<2RFǰ|C[x i%?<짵gG xXjA)֥VB n^Vljky~0"U¥&aA<^s%]I޴" h'E''0KyM0ଌ6Vr@ w8" kIPB`ԺR˒m7 rwb4w:?xuN wPi!t0 ,j#w!rvx %ts$Z#NR*` Y՞n&C53a.(B_n b&{U`G6YC7a k]T<=0 2011Eh٫k AB1P:o&}"|S\f#SH,%;q ps͛#n;εri\Gvu[z?2JrbA@K YRHcgwCC,YEH{^5iX.p ,Qe/7,YB]_noga^"߬)#@MW^|qەxψߘi|"nrDs&++K!VS23Ȅ$R隤6_ \0z N:Vs]"IA:m=Q5FFZ屽ﱑLë#\ ~ ☢?akYO{L@V+" `WqeF);5 /[{(·ʧ՘757U`(ϋgKo)&Zqy\7#v%KuEm&mn]kxA8lk{+e{o9+$pU{Rv,wh)ИAL6;>( Tpx豎`4~zD*0Β쁤D v?dJ!;,=цd)JCLVz>AkT\dWqSF#kN焌,l| +mS"J' O vV-)%_j7@c]OSӹ4 d^(PFryfdBʱ[q];;I9#P|qthRHckqe< G[m'jد40Au(h ҞHyߋH6r<cL` ^Il8UI\|}b-A" ߩa0[¤tZQ~6],xFkɧAqoI!ԡp9DG}`cQEN}WQ4k:g/2SrϳIedtzO9ĄlWl̚uFݳ)[rڻj['?2Fo<;wʓ`@d(b!$%oYȑl?x[R4F8>㈴[82T^6OHgYGG`8U7 TZ J ·ar3s$ vFqAu0[XtR_9Q;Ge2H/B3hd&WZ3*=1DkQ']{RUYƽڸLpBkmtω3BjYUB\TT"u7d+]H']rۂ,!zcsʹaϯB }rj8CSdA+n\~,; ۭC>n%Od9(Dѐ{ ." ų;(C%yF`AMU&J`n1~V$D)Fwvve NWRjuVRM4fR'$l{m<A jx(^Z rjrHL1 _~o^oɒ%We In Y-M4ٰШUТ[:ba G !:Dȧ|n%;僐"f;s{ 8U^e|!T589;`L]P;i92 =<(L ֋_t"=TV2( >+,"Cu3 380o??X 7WUT``'̣/V_ɑݳ|WD>]1jBk [r:ǜ90EnɾAucVifKD \A{4P{Y_*Ed6^ZKg;^}ȕ./5Nr{?fxq7UjwO,۷#E@>莟.]㩩ue<7l|PsU4) L'") Xl*Ipf%&?4ዛV--sC /_1[]<3z:,9@UK* xt?"`'HESɻViC:w=* X#,\{lĨoE]6P+uֺ{φ|bq:#ܩ;,kцFV0 v9h!ѫvz(^dt ubY扎?2׫tgin- 1D-z nX0l*I*8:D9=l^HA_GծS4"`aUTٰR^nFk_g(NI)ʶcPbz߄?)\5}q"YjRDm $uD MݐZWRʚBG5 z8cO]QWϣ9xOJj穓T-cx#.#BzG=ܦ^FbVSTŒ"S?#‚"iyfaYX/AB,V֕axZʧL{:zkMPʅq\e_7 𫣔V76p(H(tZf,Ka S-5J6AAfr'_"X{D̨ c=KڀxVSvn5wbY^jhDLM;YwWmAͧ Z;z/L3V)n(LQg9P砂HB/:J4IW؋Z\?8UhmM~ne ڀ qo-0ٛbB4G!;TLrZBZ.B =tts즰WU}Uoi Qpb6ym-_ōLMI|<]Le10♯k<7Xy\3fw*@0Y-\貾x(K8o^ ύFxo_DHWbo4od6zZs L7v3cHZyi,K#=*.8tM+u{ā_Lچ{ZʤȰ {URBE@D G0-`9A O֌fGǜUI˓XbcGg< d`+ɟ$sme0Э$`Wܹ?}:f su(Og$d P.\l|"N3 u @=qc c\ϧfP#a鵂(j.X6¯WKZ}ҡ2zzck^T{q^3y} *.^?DX(|MPn\;`Wc6#fbijg IJef=sZQh$ @0"J'x?hDDO`!VxSUM(}M+DM=:&[Ř`Kw.I~nͣ |crW-+O3p8EIW҂שrhla@~yBaWhτGhR"N= g6'chD=ѻ6{?<sԽ3 VS@D% 5`X9/ t.5lڇ7FZbzg˃w;)ߛ.ZU݈\E1q]) YtFc'>vMu=ٿ[ ?BII<,f 2h)m2QT6X0T|8%Spخywəf K̡1m0 ZBs]'͓xn6d^RzxpFT"8fm#RRNH;ohI=4q T.ԆHe!SΕY&6F}= -\h=\V06xfb !mSy < 4!hH#<ճ8rrk kAׁY <ȣk$@@iniRu+s$NwI%BҦ3:Jj'mUVDL|'Գ(D.2nB}9}P,wq3*IbyaZ]W|xK^Gm}˄6axa!V`;Xq9`I "?gX Œ(ZYܞW} ?ynS2YG&!~W>H*{j z+7~U*ISUE3 q^GvR۫ K$gܑ\,%`D^nZΜ.:AB>敬P VE]5 qÈ!,X-4S٭КFF妽KxVPPODm[0('qR4ͩ'ꥇ yr̛i Jfe-h=B@NKzѫ%J>{a)(6P3}jWړ,&pfmz*{~ 5~a$_@hI.m/ŏ@ڠ[9)وLj,}mQj\1IVpa:ѭYQwRyQC~v41£8iGmyO;_/GIop@kfP@3u1>n!:RV_ÐZ20R_  =[*guFY:~ ڌ*fiȃ9h1d+W: \e/qcoޘUBɷRBP嗑9@KKօtſ]i @O;ޤlj-T5Pc*L]FB"]5ZW!+A3"2[XkR6.YdM2Nݏ0dV~IM/y ~i0fڞ]jF.[ɗN#w;(j8pP<6^}]wM2|̀H͆4s.,^~솠U**gʡ71؁f=Ra}A+VֳSk^[ "Uy_vQ6TfPe`1#>:,bSzw[nwzcm|)8y bYW*nkV 3բB'g}=o8 /v@LiI˖ 9FD 0MA?! (ɓor,|t 5El+~JL/~hк5bs8v1@Ti"%nޚ}e];>f'Ζ$W&4O_/l.8,@ TvR5EѴ mOUqs|o;tP}X ^=[}Nb'pB+Dqe@YL~W4B7%jbPT<hmS n: `_;(tzqPKSZ{YoXQDKi´N~}g ƭaZc[ x a$OH]1`Rd7P#$;IcF^u]NVf?>/: z^bqP^; @TwO֑NFYI8q*>I5L%-nm䱂*_K!5EI7s-m z܂CӲR#;ĬhSYpˎlP$9ń[aP!V:wY,9ڽē.lŬib7IpH1ڣzٯ (Co eCL؃MLHr;yjipᔕȧɕA~w-N|FI̮p_ W$icz >sզV'-%q5Z;,X#T;׳?Beusʠْ9;00Q]aG\h:[(vu6ۦ?O0"Ue,;_f 1]Dʄf@`@+D м]%PʢYKfgׯ2 2.4E׭dwa1r9?i`̵r3h"v:٬7NXX-#>jyaF|問t^aɶ<34iݕ:@g ,jt_YO[-(v s4|~B ŜSUSk7\ b\5t63dP:5lŶ:_] |3b+'00-=lo6o6uL^ռ]2t~azwBPc^AQW^p`({qyI0طj>67p$lƍ4QOz1OS(,l米';uw4ӘW1H<ё@;+HL̩ oBCRu_ pr /%ռBg;= c 0͵Wn07/V.1tzu7PUJ$vh62dP5ؠVts_c imO9ҟ1i_-/  Zu(>mcn2sEBWW×>xrߦ$]\)S4X>۹p)̲y|Îe*\4E(&1>&go_6axE"f xcL:ch t?iv>j, uI5I0jO\C2$+o v~J\yr(5P-L}`- B{/;uQ DŢbs&ѫ|Ǜl.x_=ꥢtqoaȓ3nI: },`A:{KWy;mجegG-\h6;7wUL0bO e^r|yb2O4R鯕&zDGD=Ja%)ﲯtͅib!ʩ t!PwAc"HZV5 .E=7=k% j=.maV &';T^x[)WzC=%4w12`(֖ܟJ* DAN#kL1U;#@+C WE@yؤ坈|u6劐X2+Wps3qp}@Sn9wŽ L+[]z+\c&ZQJpnι_#HV;~$36Je9#XY%CuN|z/A7!=MBkv3*+Y$K\;*}̸1س- 'S:Uv-#u(T$S3sm.`u|m!/`!t ˪c"kKxSvKB;VNX6gS%~p*y fN?lTCMKZuUj) /O]f`>X:YoHp ᠩFb8שׁ,{QFb1*[=AgӨjΎ!] Zn!LYX̋RI}J$76z;)8I‡ש +ͦxN+a9Tg-JDpسlB&B~@2-~{R PTRpw"s`U@7v9u;qsqrUF Z_p$@FRo@,K^t4v &MKM s,'T_`3,`.!M;i$ڀ<3mv6}Xl]y 5;O:4>G|JeB*MVz9:$oj'o, r̍]sRVDo[80 &u#ْ#߂5ࢇ˷i\h-e`.’"7j`q_ΈtR9]rJq#=u[Үr nCβm%5Z,+ &!~,'uۨka}o̜3QEbIG˅ i7¨2O>3v&C߳9%8ё!ڬM3wwv$.QNS>k- nE*bmýHx8xdtKrK֕S0es".SopC\a b}a+Eeu:td㩫PS 7< :W,dz/[/ӛ!Ea:-}MB7,<ĒKz@MK!Y}gFwaeԘrX R.9vgC-(0HDKGS:PKrsrjqw8 y[ʛia?(b|AJ@ZMc[O |1@B7Ρ,3z=?+-Thqtv Lْʚb]'"/T,ڃa"o+y6ӽtf[TM{ӂW^?OÃ6|(o#k> xfp_ 9݄'¶մ  SdI>xҾ/Δ{$w?#֪~tXʪFK23xh tE@<{k>MFpWd%@NC5CNJe8b>L:9*]ahX8xV.ҨT0pg$VaiL|^Mű);(W4j 9/8Ba!?ID pO= m w'zru.ȉ>Ve < ? dpb"opVTW5NE4d@Ӛ8~IPLwᜢp#3(9̙xSXj^bUC= Fo*<$uPlMiA3H)oZ'CF8[1=>}{kxDw"PF"zo]R"*6KU΀/[)*Y5>֓zoN=} c8X>-Bųw8ؖ$L=<0-jy3+e MD龹NT~ : )\\7Vef + L^hxjh9|A޳9م~> 9 xc* 2xC>!`/GK1Gb-Px_\h.*q;SvU'2^ŢS4Izʁ&,z݌N&Er>{g$a"#5e/;{i:/&Qj`;)OyҟqԚyYftږ|VMo53V1RX%~ZrZ1ş&bT??աNئq=mb.%܅m~977x !UlT~(FQ3b9a0(5w 7]Fs GL;vٖR}?'@'=T}Ezz䮶¾A2ʖoƹQ#ݱ'c ~[[*ڍ'|$ | 3P>+7'v.:z6X&ez%>!f;V'.?uf9u1Itm>"6%DiF\&Wv=/L6L"_& nb6mÎܦ3#> 4,fÀ쯒>Pb W; |k= l#:-Q&j#ފ1.dxn=/p;͡ԬրҜ)NB*![_"9nUVC)TbSȤHd=J<nbs.f/Zp5 d}fӰ(oV;:z'M9s]r ٛ‹qr ye\7R- [f:`?ܲ0\ëTz 3ZQ&W'հ{Hw$!v5X>W$·S 4g5>4oOc[Fm7Pl$s9D@W03buDSAjՕT 7t#=}jֻC͟*KsWe|-*+ CCRVg݄a`^{;\~^(!gol:–+f.  A@VBʽ޿|V+b솓?/o&e`&fVND&Ĺ# q|˂1YjBTܩޜtP@JvDv1tJ1ږ e "_;,G 8*%Q#}a|SV~Fe?uȡh Y@&l:]Ә%#l8g t7w %vB䁎ʍe~6UN b"0j3oSQ!*ρ:42='^eTx" _La1 %hzBi,,۷1v6^N<^b|0C&(b\:4f0uz0/9:$z~>, pZi.ryj!W=8vl\y=_?=Av_R$x }:{t8$-CN<:siJm a @ X&G?2ōEUSM9Z7k!kY$v:wTln ɖ;FW,fJboy0g0>} 'CGsX葀[r\7/e'-ϟn֯H %|V&TiQwP Drd0S$ ODe#(o وtSއk3yՓ ~vJh A^W i[A#;0N;ܯkX%{b[>COMO}~=>읱E3wtpĥzbǦf&k7Q/I]nv<}u kM7jW|y;3TXMgnToBPILWrk%PךXp|M#M ؖIŵcQIܹ @RH}ln~1Ec/%$/;j"c%4iQV~+B(Y'hBh3;ma8'JT6X@+ZVN~7SWR Ts|fuD-[-3J}([{j z4l0w 4V!_&%PQ0Eo]}!EFU+c!hÜlNR.E3| g$aegB%>.3W̱5Q0.~v2:ym:JHq ;)`$ch{Wθ DYd<䡠Ɵ(6'b½nk_CLu둩Y#e,ȫof 'Jca[@yy 0b?K{ԕji CJRQ j! 6& w{Ym@|=AszLkM1|hho"`*&UU~*?aϑO&m9 8UM:$FKU5@ ^e_󇫋Dޘ X+"oit2 &tS_2ȒJI+o|E- /}HLѳ)>M=E@$48!g '[b)W}ƽQq ,6VLW@ ; jh I/脓 H,9+<9BwV\6#n.\;oh<沉;6gƔo>Y꽇E#ko8wZp|䰠Xjt!1?՘pFHZ m-|ӹB ~3X{QR'8W}Rm5jìuylY(Lw8%f5CKcs PPS .0Iىk)6N$m(@xCX7@ۈx|vO7M`F~Ƒ˗$`UH>h1r26ET$m"1{mNvZMgTՆ"_8! 6o Ipfz ZOlbJUM-X^L3 lyXB$))U Qic\ Pf.m.نU<.fZxÉ_m դx|xzY rDү2̷-*N[Hڲ-IP0$EZ,H%h9롮s@oo)np<C w|va0hk}:_ ZXVg.{1^nKQyR/ eELt:|&H CiQ+xTm{J(:FVJt>QD+F߫ 0/E,״ eK;J)_b⛶Q7 \kbZu #qX NspȭjisRTC NJqȮ蝬Lf"xAI )X&;kD& D21Wrrz1&@ 1400@j3rMU*YȢscAQR6hkр^A MckM3gF]}hTY'DkұaGwp dɇ1/&}>Md@!xݺC% eNI,DžAC+VvDw8z-k vOzgf,}i*uf̘M$ȾB|ט B #$n B&_4߳(W  &_-o#>H;_?Ѵ-u 6tEJ EȊa?Y%#(e}fY7WcrU.">*㛾 6c+`~:6e(5y7n_U.FtX0/.؀snKfVNxc>xx]v(E Tut%Z3'?A*D6=-ڥHpKX5ȥ R:, ĽI5<(œsQCsXp{`*eڮˇ&&Kڿ="lY~K"b)79Gwy!fݾTh\v)v(7eI9 '[Ԉ#KJ̙qg+#7 .mL'*թ3-jX߼;6I+t2󲘶B'4:D쑝'*1sigs2gp!x6Qɕ*fK,-d_y~Snl'kbBs+.V x @ς6<!PEZ֗q~QWKBx}t|NVT࠷˸۽ZpcŽ8B7q5*=c| ߀=CL uJI?1NahC ڴ2rm&ؼn{<hVFr,PϪK檙@F LtgΟ,OB h2vF{C .H.cX"ަu FD8H2:"Xs%lAUW![5?W#iLGXc@FsxPZDx^q%Foij S'~A~\Hz:5#%H$ OAM:< ; =t EIۨ"{~4*-' B_vw;gyy& T+/BЈV\ARWxa /xWׁvD&cH"| 3,9Mr3^'۪gVS 0!lA-ېX@c3G(,P`,wl*6 +Aΰ1-4o2@Ï,ZǫՃH"#{Ԩol!<ucKMx|QO~KO&o_QkT p1&M-KFr2Uk9/(d Q3 Ĉ.dˊyǁo+a>B'0"M5kEB2GLs0{w['v 5WչI)G%CcMbAipd;pjj1>W?rC he@dBP`hH9u =/Ԗŋ%*eu~aZ CVׯ; Ȏicc’CI1cGdb[8ا20U4 =o!kRd.Nڛ]2\牰"nbZ$u +s7зܙD(<*o$3 P)oCOn 8juTXEAAF\pZ,l?` źuGQnˢ)||QGBg!~%\΃X.ENڠR1v/wq>]U: `aZ'xvISȃfj#~~V#|6D \$y O!Y4ufC7 &hjM/l5M@mJs!uY?w;omwZ̊vYO< ZDZ]-N&LWm&5vp(r<~FB|_wM.=ѧbg߮&fqUHq _J}Na:&_x~4Zd\H.ڋ8G%ފZa&M3"\Z9JDA )o ) (C,m0|me)0~3R;` 癁YP*'TWvDUQ^?6V) AL:_{!V=].X#BRhP5P=*g~3an9X{wGƔ||:JWQ-לXܯ,pq+:2]=x@%6ǖ?󎓸s훙x2J@v|+NB7<@HwG2.}Gcr~"s TƪhҺڠr I^Ε\M˩>Gq6ٲ R4DŽd&gPk6xeaϐX׵z&~td((^7ȇ%aRT[XL8)q}mHf{[mPhl i)o9 $QĿ,]OiazIÚ+*?eI+G2QAzS bky [|"vGMB;нHb^gyo>oI.>-:od; 9@Zr) [4Ԭn'ww#V9~S"n]zu7XGJrYv :V~'9]'plks|-cvyQyfL>{@KP5QKa,nEŕ2Wא"6Uɵ>=2S2_v/s؂.EEmiw-oX(6H:}jQ] G'Ejg y?KJ&X^M*)3D6C.!ݱ^SQ_bEӉ@eH&3p *YUVq33N0 sp18VPz>Ia]NxwC,7]V`vN\ |Ҿesή L{Rfcm\&"o׶D/N\ǯլ <.izUٖ5AJ\LU̦Xc0~pX=f{ g,H&LSڎL@]oPKgg{kwxH :QM7-'])t1CF N2ΰ۰hY<wgvi[ h8dƢ5e6c-ƽ7(7EĘㅊ5BLpuȁh E[]גC =Fȗ=Hi;,"A_1 "c#ȋ?e}hqپE.-/3.I׈Bt0|o 5'+TlmJRC3Xpvh 3E2.b WQ\>?AcՊM!:QD=e#/xF\vҎ޶H tG'Uư d·aH@r"y$+|IU0^TTx멌-1Hۮg[U l.b{H}x@KH+8]]`]:Z>TB)P!00SE\ pve.·HyCUשWb~-Jx r4 I/◛z, ]u"뾜R/+?=6Y(Rْ"@"EH3=ȼ.[~5"O Ak)h>ym5;pGe؛dZض|;]`,mu'# F1.TbGW *G ,$v\1qU锖+FqRr~09(w+ XW :svV(9 JҔBWcjWY!36t;_krjRvӨm^|aƕzڒq8˘)rNI?5OtǤEݒAP/ $Ȯ` ͦiIEʁ^[XւpqNQ:ꗳ^kچ>-{r,ZnRv#/{-œVu?wV#H'snF6r> 9` CMS!*m N./CՓJKۏU%Y^؟X6! LNA8ޫ ghToe_0Ӝgy/Cwx !V"}׎XlPƉ'iVXؿy2kVH3ޚkL.^,_̤Ǡ f\fy N$[O%0W֍μ<V㌜tGx>i4c ;,sƤ6stN6j.87I Ncض!\CY,X 4x:@c-{`=ڎJaEC0 #,?rUC(sKoCݡNN X|# ҫ*dSepK嘼:čijv^_*CP^77V1VP'i @MK"⹮ą4ٔlqUPhF@ߨa|s_h8‚G*ޙSEOj;ir0X~'[}Nr5TțeQa rGKIfDႹkK9sOMfSᐙzI7}(3luWcS3I}2ԩnr"Tj&síw:C俴[%^s6;$_DPK,XSܣJ&Gw@+(# B0 ~-G')G'_DB| (Xos!2H7%PK6(}GLvfaFyih xaÈSTДЇW>J!;Dپu䉝b;z~ ݣj/jN 3;.6So|0IwNH.Hq PeDavʭqpA_ jB(Ҡ$^ߋwCW]pRc*b6ˈLEšWOJңhd(hMllTšgȅ2~d \: oO,6W$1P\u^ߓ"̇@I;t6u7; ,Gn.$>ĸW4 Bޖ+X=Gğb&nV雋)05~z_Cs4̿cB-1nfkxלg!|Py(/vd'+%ϋ8YUU(Ig$BtuPhT˪F $0Xo$^$&yh0nJѯOT@b^Ϫç!j2#+re  FjUoɑMͿsa<95=XUyG)@yvuQVoQ6JEȌ;SQҞ2Io=3Kgylxp)>[OԚxG6O8AvǥTWpGBCI.fޅ+H,4T21T:' t~iYP4h$(^@|Bj e,ċ.3XFx{w# ˸^$|Ȩ^um6Ԅs?/;2Sx,Fx>rp̡ źSrፐ[8<^\1͐h) qXa)zX6}vyoR,|j^dqF7ܸAYll'h#*ȮC݋7u̦c}عBsM\π>7_1x42d`~p46p>F ^tAq0LvKgڭ!"} %-M/ʉfu=|~.gsnM$(=a򌈩QqG8*UsIb`)iVV=nM*Ut.zy~b#}&!Fmg iKR|\d("81Ȗ8lRn5͑ZT8hR,w@ L>oϳ#k+M[dmr 'Rs Σx_8&fUU-:(52%r12˵IMeY;rC|h ᆂ Fl]5ױz5~m`FG эE&8\ЋC%€)0`'<|=Uq/|箒 o8mu螞phBF"l7G5h2XGqu:;1ľoϝl90R%A(T#!.[UMV8~:$\4/8KmGi(۱ @Cʣ~ !+6A?%#rxM߉?UGU ͉ʚ9(JuvY y cM̨^.x djt'Pʥ|hz NsQz5&e'$rHC ]sxV 8hfԟx3gޤ^ (^.I(igvClD1_:TBf7yH \VǞ[ᎏ)>eAxM&(2Z,IHz5J4P1uHȲo.,rJK\БHC=ŽEED ,43p" gFoywpM ~91٣ߌ@$UП#EYzOXfz:+)a5 6W|qNSl'[NDm!-TE('"HHDaCagH QgEq8:FDT|R8 !/>9,wR2mv$! (K-mvu4Y/N2X Wfng͑DRm7JVHQ_y$P#M cH }Hc%0]ƳCwDaxsX(!8` 6od IPzQU DqfNO]З*(y> =ځ 0U"@$O#rsQ}'XEcW.q ocLJc+_itDFTO+ gIF ;ß\ I͝W8UZ>dJ?b^9>5'9q2%G(:rFCŒRV=?8ZNc \zʛײjOx]Csbv 5L.Z+8gNH+M79ZS4&IzQx#A#g6NX/@\kr;=Rn|d+9Cg#w>4v|,4{@g>Z54*!Ӑ؋T)F -jCMWe6!7b6 ]DԸ P|-v(:d1K '*WQꡨ.benj3p~8"fZ]\:lM3 - TQm*m&c;!>2|7?'ߤ2kԩqҍ ,BW1>vU|L_LM]T)-8|dJKÏhs}Lg0k"ĊW'.Sc[HLC)^cJRk^$ fZ`I$u~(s>Y("bfۘDΜT/"o"#1`5_v%1Lx!W} 𯜖r7p1T+A^|OeW.t K FMPogu*[wԎ8l!zƒz^ˋ:DE9h=m/>o<̎調 ~W~h9Nq!U\ѵPFHΐDՒi#صca~1z86?KGw:M`CmCyYN>@أ.ΏiSr;qf; ۆ㓜ˍ%|R\F;OF-E9a>e`t~ˇ4`4/ [`J"?E |8SN3}oU ZbԛLB)H}|.;"s"؉|} KX& /"biT ez1*5o{r=ӱZWF:j+xu3 .(mҴI, w tq7Kl;jHuvҷ.;Z&D`<;i/-*>(D*1Kx:sz%fM٥q!!5Sʘ}X @wk[?(l񖠄^3!| o:t$?eSohP;oc+e0* `[mXI$b]ŧf8"M&&hRV)&L,]j1١lDDtY$>m=bX: E,OFP㚽لL"!O;{ȃl[+WITgp({tOS~ M?hWP;   QaB9.A0 =nwE$uY2sKDPT1+~tlwL ¾sKv]zLS6ky.!FlEP,Q=hmP58,1~ٰ]BK1kuMtʫd.\[O8ؠ:ٍ_:O4S^ЋY¥ea`̪|]0RNVu1PXGCUXk/س5 R\8>Q̝;.rT[}y]afD7 R`):>0]3!vloBRfso)r+!x]2[<+).rǭ{=ȥ BѾdЊo䐂N oSGN[,aZ%g5jKcIb}#^Vil bhKZ<7( )^m;oOk "ۍ-ga 'n䡥 +K/O}.ɺ)v1!+CbTj,>uKrc1}[. X1lqDwlP22~nYbu|ИaϨcO7JEچ228j,{4tQ@6tj~*fk9_LM"[Gϻ(Lx*Ͻnc{&6HU8A~p }["@6IleV aNcp )+欘0n5ݒcGKvF)5@{x{KBɌ0*j6&us &lԹ A^ʲ_Z_JK~C`F!iBsAVb !H5bݷ+) >#1+'tFuo )sAz>_I4]6Ƙ޾4n 猉"pw;M )t7D}l1Vk +g,Dh `L4%7 WACCL?cPz`r#]mJ:r8@^K[o[DxUloF2X“q9vǞ1G-W6f~G=sXTubX7c֋y>-D#~ϵ >0Y%Rp)#'zb>DUu 1mI] =R3fmsLQ/Sp>#bkLpO\ meRVY^ -me>3))1h_>4@B9&66ԁsa; :O]Ca|;? `3K/A#K_bd_ZcNq)I~ePDcg%쓭?lIVc$z2mdٜ͟ 1> LFHAaXbQLu 5@نrD_41}R0jx&7s-?*e@$hs q](z2̃*K[ s@ٴ 5`2Y}Kd#0_ )ا8-[593.ǭ-ЌAb[Ms ^FbۈZM'(h՛{u1}zno;σCst~7DU,ZkCz I8i!oBt0nȎLFNrh_ U ]?A$1J ~|͏w¬0%4>A5@DEV}n{ϭ71PUs5c5^]+O ԙGd{{<Sk AChu T^p\?T9o馢{;HYC]"-O̶@'wlhxlm-vL›ўaZ2sHսsJkG: T736~qDZ8Z|ecW]wWKx?rlQvS- 4[+2Wr;S[͍`O/Ap!OwwM|&`td^1F҄Y hiFrLM0i(e@(0@@e6`RuAc D@[Nrhv =v[.2ꡓ"%J';@#x%9߸Õsrb` ; ;Δs\6z_:HGLoQh'@s+ѯ6N.0;V2ʡ tي:X+p[Y@ گԣPηf_;TݶtU|GEB.Baʪm=솈>4ˆ͚x;ن u6EVի8Ù)jܫЕӅmւֻFǀ͐֗Z!Ч1|_ OPȜRL]U`w;"Z{)]F&p!~9c)A}-XX·ŧcN)fw}Pc`^iH[z1o1}:9 /N{b D'CRhɔZ[L!23^U멗Q槢3+['N1S|#:XfLlA[8v#o, BF:T7q&ڴ}"ja yfRNWȼ a<8|nZzGtNV63~8bvէY҈ѱ|CբctVJlU%o^޴6Џ'?lԚ!0Asa|p^Ξ0겨;ͧr~2OJ Kyf@i!5@1 Bps{v |`ڊ_Y pjHڡ%C5fOY^eU39_%?Sfȳa $O,(B`1)Λ#!!kJ 4-=Mw#FzߜaZ4XImLuuoʙ+j~XsN{(% 9AVW9ڳj,R />:^lE/!B~D%{P[P Cã[X "./děiL>8\"FAP>E]ev>8IWbh-(Y2}i QI&OA5&/SNAy}}"(B @_;oQ;N03OAdEՓs#ȵ%DZ/Zwxx1פ˕5#.*/Bd@)5=q?y 99T݌$lʹt(S5)`Z3 00L z1?u O9l_뿕ZBiʺR߹ҹNT<Żtφ /Vec:xYab.k2QOLbSi KO2/- gbna=2G+'CMۛT:V=PssR `7F&% Q^ CNyy̬N{Er:Sl&xB xJ)ӓ0pD*2g;).ΞM:YNb]bߝȨٕȦA{&4ǹ sX jt;g1T^3 oY0?>Wetlaں# j8Ti7vݬc2prKUn"L>]#Y gB7.r’SurJ&$9i_ Mq{]u6^'D(2VocV>yy«r{ _h{i)bմKQk5^6w;ڢ;&3a1l?$^)Ea9 z7”0C?K/b&!iG76y|3$Բ¾Dj"<|\m A\dÊZ||g[|n8-jIia%M ZZqIZȃ&f3+{> ;Rmi)~)y,jͶm׀LWھTi$t]C2$ K1$ XŎ+1%P#b41[uAadAq^ 9EKl{^Nrb\Wj,fMD݉ж /IYּt(@Huypu`?t!$yml\WT SAL%+Og$.ŨCk?K'I"ʀdaIn< g/X=x'8 %Ήhq[ҷ53ѲH}C%{p@#Qs$މ |[>̳,#mRF6M{Y&SƘQ9gQ8/ĭ`w0 lj֩ իpdhp;)WW+ W]=% ??=tl00cez>-s7ߙ_ަkKwD'qşIWLOfW$cHź=yd!--t\W 6ႉj#dvԌoے#3F(u~JL4>_Y VWa2S>'ža@qvST(*B?6&:g'֭,Km 3O(_DӑHvB OCR:NW38)XOOrnt@+&nOl2^^a_^xY.Sc% mgX!zu}9yM>|#ЊA24gNmb\)2K9AɌ@7@W08W^`|}ZA2-R_$Xvue6Y܄͝߹xk~' ?C.=ւAVF鳻D !۰t,|bFTR_@ǝ tWDjU x\$l&=@hޑ:}29&  r4ɏR~Eu WFx.TcvXXwݏ`o7у@gҾ.gteU{2F,/) U:8]d_,M ROh4i[zKrݲ( 6[Q6z-j_vg'XÀvJBL\{Ǖ9OpN(rßd0 CNzL[Gy7cȍv e0}ݓh"U^|ϐEQ7k5;'}n*u|Mn>tUD #z,>We0UR6K*rVʅy Q8ϏN_# zayk* 4JAP|-]b HB6M =d6MKĬ=&{a,UqSay(f^wDvQ~ipa^ҏoYb1gabka2 f). *صay ;#;8=Bxh^ W(K>Js-J߀?-(0掖QmX.ui+eO[."Ym4iYkc{m/cW `%fRj\t↠p4NyU!l$w;eDd@?< MluLL-IjJ$)۪ׅϪܜƇb|~ La(D,qVe9fZ#eQm}2GE@#xgaoa|FL>T I<*p$qx7J-4Jy#@Au MFd{@_; EN~N\K^ * ^ˬ[ kTʋY[GDIS*7eׄyLq0^#%Nؽ'QZӄ(U\xENdDS{ ?vV/ ;&ԘNj7Y~haP\K03@\%`"bج{ zOaC8/ЮY3 <%tg/$S,9ԱƭX4]Ńk԰W |˻Mes犾{{GMʡm_P6|vbCiK yJt չ"{7Lb!U1MMV٧iS`!^Վph$"'̷)!ՔL\NbI4^`!s|Osjz0aMǚB' z:"A79Y Q[B[&#/ߕ`8n8XPڼ*< ~~e1BuUM?  t6O۴宲If.ڄ,M<5#44țO 8ٍ؇`Y-4݋d,zZ9ӡ!m_IYKzM _AզrS8c"!BlɜG!O%d15n$+A "K @`|眆)n&8AQ<݉'Ep( CK{\pDCv_!ݞ1dڃ[`iFEBY Nd!qv|`ZKu_0%ᮬۢƘ9<5o9o(-s6h\rX0GU@J#>d AR7so_GC :%vbgYF΄>0FiMcp`T B4k ,X4b)Q2p~g[r.Ҁݎ()@F1p!aƇALTSLUIHEIWX_qAAD [UG3E2 &Xc uB8OwqEښ-R-j\må9b^tun[ASʓ}'|O"{d#ӨYSCFvʮܦ$"@$-.Ua gHv#YTTioP^/BhXXWT(킰AQtꉏPʖrQ˦r8D]!EN&ٲXS7(ҹdFTʼjp ٺ#T05{/#T䣯u~[ҝn[wRVc|GY vM'?PÛio"=RzV⣵Q@֓tZ]ܴ LWvv$+j[}iyE:)X֣m(2u\NĠUߘɘQ2qG(QF=sG|Z`67;8QwU fS|W9͸d߼Z9%} M6M_fRŮ֕ioU.5W[jњFሇ!:m2߯;ޡ}J++L(;tr7+۩C3}'Y> T rs^1\t+G6Bv{}ߨ5&?z@ᅲ7pY퇇҇RjKcs ^$zź? x N00mn5!c?㭙g EԌ`[/"Z)̫ޝO6b%G7eX|#Y ^>WQ3Uz+6AU$Jw+ЃV.dA;r\'f qgehq";9!Yj\VuQ(.Bx)tMhmFtO gCI]dl `*v2ǹJ`uL[Ë_tf%Y2J%^ ,jm_Lwbvt(̨{"IHSXG$aZv& K o.;!58Umc6Vg?2u˛UX7<(r 3{\"iB{%&ݽg}?ڳ~zRV( 1]? u mHKk(cw3l@uphR fHo  FD^@V'++3!m1B'o1D+5ڗţ@}hN7]+ĶN}8|N^0u_s щ+N&F)ȶӡ(HpNul{5ft0ql}S{hW ^Xq빃"yoL zһPƉTxJRAK7F}| \X[1|5-- _``1Q#U6&.FlBΰ.|ۓe><'MmzULK'M$m1BrBQwђa‘fJ3-6~:px2In*t/ZQƛB'qrMwusE [D,`!ƴu۽h"(=Ϫ ՀY;Em\4O+łR`VV)ڰkbr (m~7Q<ӓOf85QPy8q8J*˳lfίw! gNƥ-L7K_M %CbEշjU͸/-g*u$KbEi qBQ'[7$m\NWhē/ l=h嘷 v栚8~4>n5B >k)̸ rܼTE~VtvJ muho ~l#S}h9+qR1RR-Kq|%'n3V$]Km&M14}P,zG9ivE}*bh処,-ʂMMXg⵼O)Ljk˽^4UZ*z yB^"dIZ3+G XЧvAuEEtk̿>Z@SN؄M̫I]\]PТ$BkuOM(dOEbeZ7^˕uFұ‰(C \;x2#%o@J5"lWOԕb4}W_p|@f^NHgXy\AIҘ[ܸ@LU"B܎eNn3(5F3: nIO79 iXdOν9$CNK:la?ó7EQF,t'C{ڼ|wҷ+;K})!ITEQZߏ̠+ QO ʹmJpҭhda5`&T[OD(ImȥL_ 1ќD)VwxC&#Gm}f-%ni\=;A+1^&PӸ*J.oq'ε8ΌXg&ͮmb/JM傧׋*8e+YB?3o8f*ϭ >(V 3fN߷qtN_n9*tlZ)0Vgʾ 5Sܮ-Zw~Nv gQj.r{k93`{Koxe[ڼi!OHwcZ$Xd!R94=A6?o"ORV r !WX@*G0\w~ {T*[cBz _uʭvMVL?H'o4`kB̟Q<Fz ;!^;"1OU3ޖ-8;yG@gˑ!l݄Z2<\GAlM+En(H/E)oe:웎ȎM~{m3zg񐗦Qs`s?,qęO VXŃcLsfEX .V{$nUEMƊ2>=˥P*;7?d骸A<y>0E`i#GE!<^+$FK#7j*3hŞEl$ٖ,S5( |sDH"#;5$;a$@AiƜc~~5Z" RC$Dž-Ω q_ş7hVLzZ`זh_"5V\׍' #"+]H/3ڀgr(~.[2=x1hy:wbXuQɫ [`Ed,/Kwæ ^vVS9W]ޭA`1)w.j.(ÿT׌?j2/ BC.BۅRL"@,Z!Sk ӓМ7?mҼ̊ޞ %m?KA5[rIZ@<Ӝ Pe&ip/Ұ@,דkBŦa Ÿsn w~")bXO)տ-_n>G W\w5p95]ִY;W|~* \wl2:q fx‡uPS;.t,$.(bd{|HjhM0RC zA oRf@[ tzi $ ܲxŁiX#3{ NMҸ-Z,!WxӼXY  yïm&[cz׷уsgl!2eO.1Ay .&'CljR 9j saeDVU7Rf;֝xJZlX=-ݬ}r'#X洏uJN*ግd_9icʊ8\iN@JtRS0r.8YUXlo&ڌ](ڈ|o F,4 <0=)hc̍,B Mp.i5di>dp) ~0zj  ILhK5PYʣ|%@Ko 9CGyO% c׆ooR ҤϖEMՀS+`]H<߄UJg$˯Y\$],5D[TZ gPҫwX`+JL SU*{xxo p   /t 1yvYoߥ Ĩ`Q#An_pe4h$s&PҪe)]!UL١tO+bysW]-ajt)-DlC9DY@,|\8 ϢJ=DPsxT@D*0:FmſVU@_Bl v9yS =3aAы]zxSZ3_bc'ZMC"\N-9`CyխR(t>fDDq$~f%,g_>q֙uf^Zyq춨o7g: dRA|{q c%9ߵ-SZ5f:*jEG[hlEgӧ꾮P"=[cRFspdާm-`g*±*}: G 7"SuζSzI]c>W@NF4u#Zh.H{yV͙tFDbfKTCbkIzA S!NM% jQX$bMxi"W`MeIʘV,io|(id^3<Ѳ!xרo7}ec4!co{'oPѿ, d4\a8j.cDžcGb"ZY$ DnFcxJw>#u {?/pff-7Uـ8/1u`E\nyox`N̳1@gaMT:-ݴ0Ʌpq@ٷ}Jxb8Y]/Y5dwHWS/8O|DB)@^N` ׁuf"wHwk7GӺJȨ3$_O>  hDF ZPNar՗Cos;z }[zAJ(JykVU @gK[(Ѥ{(?*\X=/I 8>~r|;'9J7քFḇbtIZx̾Ǚ'"KwIV 7 rcx%'Ƈ\2Ǡ+śEIym+|(UnbF0 K:Q%U>egD >ɄP\FSU<_Ikz=q;8K=1M'K9aûP)Rz4eC8T? lcSF­ V]DY| bQQzN_Imy\pV*&ݸ ^* `“ )?]ˊi ܿ1VMp4;^FWo9{%>Gk%^Qc^J-zn596!s+ʈ ؃,{ƶ79u+-0a\wgoF9#~{KMPq2h qJ ;5Kcm x#)2W\7c%r\"X;AT%H S:{_A=TaRQnk(B4>*}$R9}XBGt(sj!qPyvP4r$sN"ƬE(~'VE"jloG6<%D׬lO☺VF efC/Y{ن:=UOuNι7¨-ZJ9Zɱ ơYz%; h;*ktju}ح D^:Zj\$͕LiY[^rj̦5! >`Ld5>p ]8!?5gH"3Xdn'K-n)HeI<74_.굤ɏ6I\ >6t) MzS =fP 0æ7&qߡ_okCc u RMCK2%F|L!3CIeܱ<gzKԺۖ)O#x y=mM;ARzǴq(._HWn%ebNWkwq11vMtV-ʷ`5/ݖYR}`+bQsv}yA'QQpBSR"Y F`i||hU1(b:D7ZC{dx̉k'@*,AO5 A3f>jFpÍ iǟ {xWƌ3笴ǪBZ.}_`/]hjc䪌I0NBx}amiNn_]Y_ o]>z. hc6,TXIqkMpUH j7Pc0{MO*wz,xL ux`RO^YgWcwMJΞkJB?njP\G-Xl7X5V_Yn1^Ne*.Rp'Pʭu|H/Zo4c{̿4~1*kKhbߘzZŚΧM]"G^\kNs';1P}a]C%QZ}OCLmc! s;J~&tWb!} g YBdW\ jdXAc'ChznQ0ekklYD(' wDM%cy#ia2gH+[`j+x^Ge0X~)媾[8-lx T6V˒vpaǸ_ =[AE.jbi_@<yP#*2-btX*W\c?&_4ʺac^MA,J^ehZ>8h/i0 PVRb sȐy-<#+wiн gmgoD8 _[j۰ocMKP6@eq;IAa xUsA\2!rLlB[@F&8"KVQPzMw:_"_n[ͩ-=Y2qMo,VIUbtaz:·ry&cLC |A X*HtIn.7M\tnAo|—l"[L&o0Fݞ\6$E?.#,YNN@Úr8lN TѺ+` #^hT 1vK}H\v%tOtm$I3RbB{ewѻl9Ōſ7^S $ɭ#>]ݒB6d\y*w,|Ф[zh5B8*| 慍g5:IesN.Ղ;u֊KsK1l Ȇz_kIOyJV[7F[nNŋNKj}C$1g?R0Ϥn􍞆Am,k<].ʚ3杵./ a6zl|իDu7'{D%~$sVBZdN4ϳ|`fyvRI1U;ĩC)3c S\哢ְͮy$s] ! l2o΄_X]~؉V((),r)KsJs11%3{%<;" /j5IBGqxd;PJVҩfI+4?NzV Ї %ux,Ds/ (b5Q/1Bλ:2ˊU1&ԻN_(qYkÍC'Է]m ];=:?ɔ>[E،<>8;W=ϩ Lbx:f窙<xGRP5Nһ$|u;C F~̘bÉ@ O,j\ *s'Ejk%;i:l%tk4:|tB.ܕpQ jo*(tNg(MCUꖤv#p% j?L O^`gqg:M4i+m]Y7j}ӧb-Afctr-~;bRS 緽3`AR̉ M1Gs!\PwPi۸'uwh`9`niUʏ|٣IrF9ߑQWHLӚ/ޜ/hZ&%?ubâ\(I+)0Wk ş.o JT`&+ý |I=)LKa1vY5puN!N9p@?c0cE +*~I-\8g< 3pk%u;%}X iݘx.,ÊMR9wH;7~8劉֟6,O^Tz|M#24+iqZ*`{[hgn$( kgb^0)eChy觇=ܲ%3 Nי۾ضlT VCZNv>ܗp@a4ͅ[- / 諒q>_͕*e;kc]+ߌ?بrsTy~lpkѶH0 l'y)M^r><*^8sTUxh4~>.ۨC`JtN0OyYLs+Q1>-ªQl 5ͯe%[L)pCWop٫.RR@cr^ynW}:}K F, wc᣹oj6]oIj r]{=j+.;F݆Ӏ[ tZ{y;/eki=\=DC[ ]HY࿘;Q$6!vbm(8 ySLmdˆn(ykc,2L(~>kd=l+M!2Tm*dI!m?`!H̀bVu{kWM*l >w G ] cndvŝa>6~)3p12xy$xtVDDHfZ. G~fKkQ/; ;ۋ11ޤyJ0>Z_90Õ p*;*Zd}"OYK=RJC[`n. F\&^E:C,8d-ʻ!w0 5wGPI:.Sv 5\>"֨G!LDn￯%re"oR en0:d!9 Ӿa&Uxg!MgDUUuu"<6/ ؿqD ;dj&F Xڝ`bOi!Oj.V?\UnYCj MƜc0W3SZŴYpXQCZM:G۬XT%aQGks4淘+fNwJ&麲֟UjE][`Qf`rm3kcu=avWVS_ݲ"G?0'8ZsYd$'IU^5!Cʍ'+%Ufq㘯}: [oH{̒ ?7#RH& P39ہ.~ 1N9A816QۓZXC-& z@%Worޕp2)&|6LMv)x]MV,-Ap/s]x܆z9VPp(˯` `<JdYR<.E<_vt̛F4_Y,jKm8.>|+t3)]NX8YrWR]LZ;8"Ijkb6أ3., &2JF#|w/tOunL?1#s u@ì[EkZGyp=jrm #a&I ɫ^SeJHzP!SYƵt(Qh)ˏ2wŬ94O  a}-/>%/씂.|b@QO1^rcտۺ`?F eYIjhPe9IKo:pk3ӕ 6hjsl`y1h?*a<@wyO'|D,RTscTzleˤ0k/{L{L+T[fwm @HGVMHڍۖ ~6:Jb*`.FW. 1q/-$,D]4o0V:2 + av;)n9WODV\CuD'L\qO= &g"/o !W=, (~FxS*,ԀX҄Y4>iَɂC,3,Q& gB}Cѩp i7Ё :%DTWK:?B `lV6YA$y.T0B%bCmHDRd!f=ð1 %(߯&wxlD tMZ%0[ֹ[8=pF PKrqM[p FR"%9(}ƫ DO_܌Y>2[B}9Q0A-[!]m/\~ &-ժ#_"' ējf_bfv@cb:E)%!>vty"Ȩ*2y>Ub @sxJz,vlpzTQs} oGPOTV-Mr/xyQ=rW[ wEzn3oKrCNa3*nj܉7.(^~.Bί]ΫФ,7)q]uuI8#q($ZM԰?,1I".1񃳅C+4b߂*47=|S-VpF~ H\sX~c׹кzEwQZط6n_0{*1վ?3BDk.؃e+n}`i4:r HGjb]|hMExXd sDT miP4: J"!X.]VJ+sv>8@Fgbi@6!pB]@s"<ϕAxx%Q3IZ&da0 ̃U,m[ T~wKҼrXijo+ګk/vs$KV,[IRCvi!}NyՅM|L}x۶`Er՚isH7 rEl-א`x #lI@@@$ugB6Zd>G\(m-X?rBFe1 tۉU@JʌG6Ljk̍'%,9: @xMeۧ`ݎޗE7P*~H-uBPV)2)y P;qCaKCpQL-N8By<UD"4~o.G0`ky:twYǃo:ؐ$.9g[h7x n؝3Z3:> c jf\]H_at*t't]Ih(LӶ=>L4UeO!g]sP$KmaQ,e;%d2C SPI ԺDЀ?@a{?jlH{b+ba!ЦXHBhdf܎ (?/{O ehNSXˬ&g 䙺lH"`ŧj셺'5 CT&˩$iF;s+aR0ol^p˶J{iNSp]k`uL2Xܻssj]nŏKGUQGea)M3 C/$fw5%(Pi4!p{1aIא 0۳zG-^X5UZ,Pv -Զǫ*úpAv,9vMKqZ6',-sMX$|-]4tg9<RB&xMz8)pc*!e2q*V(i%ʇjnD\=[^`ude|bpP14svV|ڹMf HqTTaIFfn0sN.l Sm+Sd?}e𦔚Jv,A3N]g!F< <&N>l^<~i,=O:lRb Աq;%^~nit gԂo?uF r&1hg X]S`s ˜Ց8`|;Qj_\,AힿpIq]8HPWwY3Bg:Oipaߛ"%<`u88GG>H,R=Xou]*hCz@QJEThgt0я-CjJ/5y8 3N4۱hɢV>3 ^=?FdQ=^MOM"lgC1O&U9jmX7:T3Cˆ [`y )-=Q&vLy_g+m-y[59.< ^6L&2& D4Ty+2в ?#aJh`ee7!'cA kxYRBϻz?F n%eԦ֖Ǽ~*1!@KQwL>xO(~Tk.hwZn$z~GPի?tnڦ-U^rK&*Qi Y5da))ctYFá^ƕl0VE1gA--0:H$}#Kgd4l ҳ@ :PsLͭnqrF xO goe7^!-~F^#CRjmҶ5./zr0T>z|Yfm`h<"=5)Џ2C \R7k 25EѺ:a9㥢*?lkЧct/㌫4Vz&`Uqq1,"Ħ [$n]ps>>uexVB.<2M]SJrQɫW?z`B-є%S;ݑ3ӞvrAgf DI٠c1uGB{9LV_5IR69Ua6h$CI"IP-i~^d\@N{Sxx/#z³*~گȾSe 0Z%w FVyesk"b:ԃ d-Ԋ_)#:vlC'Hp$' %L 0ȺK5<4sݘ|DS"Ķ|!神fUk%Ӳ 'miaKiŷۓ8 cIoozХg2/Pbty?Qd[``#ZNa94\qlw7dD>Y US8e<쥷rbĕܵyފrWw 1L"Je ]c|l荢W ys_Y]9:3p4=kއG%ש:\\SEt;uVqjqN]Kux;QRexӸ7 qN!?0Y}> 8=ڵGm!E=Lvasm\V$,bJt8F*80 .GE3Hm$ &۸frEĢWQθE"EP|/5 {E4^Q]t%rK\\l~zf"w^- :!P{tP7PAGJ5_E M,Py'×RJ?ψ*LQb%'uׇSM" &I}X,/NwQ`t? lu>&1 )luI9 ^KTjKsR_ʒUo*ĶK%#Ը4$l5ed۬+Xs6o%#ًrZmVdaw K|S?}+%9ESS84 Kh/[Vx*kMvb^65[nK.n, u$UH@c ~;yQUL.Q'/4 &fG^sSf)yPgW9w[CtLOY Ox`"tP:1#9AԄ98+b77􌒍gr"4&9Pق{QgTќf o% mGhp^7X"t[/!D$P?aj6 sz3J?o'B1UXh?3$zY2!IGt9wqBiV<'?2P>%@,Fm?av<\qfN1ucڰeݾܯId. )>Ν^n4 ? 曾=kuh!t$0ݹΛ~r1e4F^l&l!<>r&a49=ns}\ߤRM Wqq}bXס>4&8Jg("poi%^623Cp:B0-[1`a.Y 7g Z3 4"P; 7Y J[6Vϣ$=ʷ@0hKTx%#3XKQ:+6JWPSWN{-zx7 WZ#1:0WMj~ehlU6LA=ߙEf`mտ+WOqĈΊjG GG\F68NU>>w~Ǩt~R)nAgl/27^!=-\Z*=_t5'J/ [^`xB;/T>եĿ(tKe14}ub,2=,- x#;DDVcAEy(Y}b_ AvVҎ{ ňe.f:!7Rt99|d3v)Ok08H-R^`8?jP@+*l ^j6C Aq}-3$[amWa# >4N9f-x`BVuXsO_kV:( \<3,C)4]:#Mn M8 bXHpG)wAȄǻ9%aL$].']798Z!ǧQ{Ϗ?44EMkT,0ލ;u$eb~^f;@O;e&熤kX*@)❠36&AqU_^olAN_P{ Lc' 6 )NMW*~ m_["9 jq]Dʸ GR]Î#KѓN1JO)VM2R*@ޘ< {Y7E*GnВ6eq%i\ؖ0\g~(%󮨁g#qSx~\Fq_о4 1VW gUUcDi̔WyOfB={bpUJXÉ񓡑HSͮÃА GGQ1 zFKM|#<i4;StWl֬QPKSx:\[YHѯA5|eZ|Zjp:}= 9ǿ8vՌp?3Lv-Z? F\F1$#r%k߱ |-ѓ4@>q)Zhw_ NVc#8M[w; %}MwL|O}^'Qxn3Z_0鼝x}8˟vc @*aq\Rv9~H:>[͉9祂1&l7(`5ntqg_ygdWTW&oZ5" F w}MI|6@ aJ{Ͳ0=>JN!M>Mm«NmJ% wo^Tt`MAbu -.A]òTx&g \ΑAYg2X jL y#t /5ws;wJ6a{OQ7^f OqG+O&",x>ZEE1xXCSAx F=ҿE`/3wkV䟩}L "ܴ#ޡORЦњ㧢 ;2`a/P;7<ֈc]زl -MUqSmeFW+)."bmTuiy[礅 wPx9%*+PhZҝYV{Ձ/tu!콫o+][9LWG>yX=+I$뉏p"Wqͳsu~RR@ef2%1#|k.;uKSJ؛?039>Ɛ с-q1ZK:ߛ )q*dJI6>/3W e%9i;x gyrZ\xxք񰟚vcَH!_ RW{4`Zy0]e _)EkYTZD#0S[VfJJ,څ奶 FF翪u׮keTQld#m%蒓;WK9Nlj\2IVʜJc9:ۺJңVPE3K~^}'Z2E=+V`Ka|A&3W6Sw#o`%k{[p_hy.MoBx#Q= 7wMM$ E㊧PZ׻ k^seԫϜ”t PP=0Wˡ".RԖy1gfK$8&5r:fZWE O'E+v b7Gcǿ!Aa讀NUYT~/&6ږm2w"}]=k}$ё3=JeCICu$+KIRr~0oEaE$Qђ7͗JŽ`de'[j-k.\oxCѬ¿jJߦIiya=Lotgm/ ʅ|N+h@َZÚ^V2z\Ha-6H'TEި%8J)hc dWlG uZ%s<*@]vRyWesKgap*u 0F[} `|}ԋA}gB kpOz HuYG_,)Cg-ާWq QBtp7g4:=uxMjXebsG?h%4L!Y'M`QE>c<[㜖 CٍênO%ď]Lk 7< =vV!b^w@`ڮƾZ*DWrzsrDԫxdsׁxbZ{ Wk<ҿU8=Q6Af^;i,~=\꺍~T,rᾙr.6JO>GgUu&]1v(7y|I-r![U;uaJV z%I>R -n$*]l'I%Wg_rֈ> jkrU%U=RMՕ=syï& "~U Sf7;~D_Bjzz62sd9Z D˰$2k+bszk%.M0gmВ#0]m n!׀b1!M4ݛM;0m[٤"tx+pȪeUH0N*[Ws&%t1 Y2A`"h9rQM{ZIF3%OZA Fm[׻~` Plb G-T8- dw](1W2 ăx:ozw췰G`knҘ[< Xb˖Q|<^ b̩'m?ì=*q]>R.T)c1Phl#D?@ ꡿;60ԋ-g7 h!AjbMb ~gTS䯈SmqIMZRU dxG>J9:|ȿwt!}ێw^X.4hW' Fc$GyDTxWP&[-@MJKlz[\lVj'|Z@zCN@@H<;`&ϜIs#`>ߟ|kv<^1̶dS57p If%4+4ؾ3 aAwkB )YQp|ܫ2ynܩ'Q∱ ❠I'@>:x!g ʣXb@r0<S8fG07_x/i]èM5 D߳?[l %Y Kz CzL+Wo=2UA`yAzFC($p/yT5y.08V/jІ\ 3A \T<LJO\z94fAR?TsE٠~Gk{e;r/ /՟,l./=u^P3+FbqÅ4V6ǔNIhKS e'Pœ{sV^Lci vgi<LjYK;-N<}Oӗ rޚ%'ċn$S zkvjnB@CfiN,]--_ Nn+⭡J-HkJB㦱3ԳR 4J.Hz{z[R]2X Xj"/)l8 =O,)|^%X(z 8]oJweе$g_Z'ftdigՖ8[B@,4EBDo uxʼnuW=7ajs9ֆ+;Q^Ţ Orbo2xZ'"$HIQ `E9'褏 @¨i넙6ߎ,}B EC!Y6.=Zpbh] óD4"qc} ڐȤ Z5%渜{S2=KdI"yU%,@&5,3JS`c'(Lh6.9e gX3p^X@j l{#\9 AC%~5pA"ɹ4μZFQ ihחUm4]L:YqJ H|вLp[$:]GE^&*aΠ"?\dkֿ3?5XO*W 4қ@Mo!*/0K8˾<`yѻUNdbx8/ L ndC_5 Z?L'l\Aj٠Xn)0kvH' d^/hsU>ҬN #{x&\]WCd^J؉9?&+c?lȳ_|7,I\ hV1Ԙ%MMB@4uc#=m4+Y&q_.dXߺ"vvi첿VL}@窱L ?L^(<7;\hg]hHɼbaV)dhA!y-ͨ,pQBV@҂!:4<;묫^) 1Gk9CZo:|/{k2$QC.ztJobʦt dV)z0br/v=*ElP$b)F5ZK_8.dQ˃FQݑ]Wdآn;c zNh{>z=k,d9 |1Jq03%9kr@[(vDV?b7z :ی3VJcw蟮M|#|F;rJ{_] " ~!SrS'x?9 z,lt'QՒ|=S_7珵d/>c X(fϱWM:T% 4{3aSbcOM7vmRA cBVo5$rwb 4v\؞qj%Q/57ST/d^|$\!$M3ŁVSbT_$K;Ar:?O,ps480h]PێkwBeg[Wʳxb1[y1JrzŃAnrYɸ㸑,̡bo "WcP]|n^aSz5$VNkfqF(UcE|1wQHt9O@)D@Xlؑ'fpVWu,==yG1ͩQo"ԗ,|x(Vqg9ψPz[ԟ"j}&~]G+uoNcJ7_/'pw$;סH[sE|&Z[}ݢde RN (ܙdevwߢ$xI'o߲ A"\&hDWbҚ>.;ESST;]޼Σ݈9c}P0lC6Bw8v5.#kdEhUٛtU7hpG}KMcL`};^jnu.Lg#Ky+]}`}D>Ɇ77R Xn1QAyVy657FOィc+l{< % hʮbMTXJr],m͂BCc"@w{_Lކ- Iǽ-T ΛҼpInFwuDe8XbbȀ.on@9 wWE +܏.I<| bdO/(.-| G4zbٔN},KwuӋϴ_ 'T+ދyh)4烖0ハ8A6D誡ĺB5xVrP]z|~>? [?BZ\Q %R`RxJޖ!N\gs8Xhx cLP1yMjW&ܕ퓭AIV{o!4DVL`&[:btF m/QLLwDP>NEHokY|dsHRQml[?fv}4cJS:PԠ.EDoyG&uLy ,/_b_A'!PPяev(_ڄ|H|kbvQVw%],ۃ1O䶏j-_vn`M} jR c%S@6{Ygr*FA>vge0۩<[B@35J\usz=}g ^$톆4; u RoM&Uȳ^5$2&Hv.s~qBi0V6;Sdp*]Gb;*u ӓDhh8Tz|OO)>QROiXrijkwV$!<[f3mw~l '=L6%*pMf( #%p.V a jt8-?cKtʓn%zlg5^ \cOFL S7+$" Hks/28 Bv4{"&'? xTLfĞdc*}Yidqwc>i0X C!C)fұ V5ݡ۬S9 L~S+Ϗ#+iPjs"( P'y>@-Hub=jnvx9Daޚioђ.k"gCN1V{%P`qMqy֧UW[CE]#F~C5ZGIgy; UCOے yBJ -~O)HҤ0 9`2}%`mylky@sDG`pzK9QZSTԞ洃5z12w%jIZle3avfÄf(g`6!7/_U9x g@ÑdɹD*Z-(O9)!Hc"zѼe,០oh, kGʛX8! ۻ9 le Ka!l;hO_,6K䵂#bbP_fPb˜ jL2}s6}hiS%v#lfEaŵ>X אjZc4jsyqBhd%<~rSQӨgJcLd]{?$Q._~tQwZVNK1RjGwi.*MKS&F"v%HB+ˑ 4C*/cl7B<*5q$tYhAxrawzR .VcTrTrk.? X=< ܔ !SdvrE: ԇž&R ů#XxJWw=zbhb`믈E@0X^FB[.އq;-vA#g6Ks-SrI2Mz'{HiAGDQ$3'~ѩ#1}< Ŀ#_8 {cWU2E4KK7/x3B7E5m/a^?e~gZɱM&oB:.=tDdߨ~~DrtM` f\ tϳqlJbSȿC N|t诙0p0J8¶Bo`+"J8e_͍[<tZ*8+CZ 9hG+FCVM#Wg:ᯂJ *ԹFA1) Jl5eXbU SNA 3~ >^je., 1M IJ,壖}v;d2_eY >V٫O\hjzqap~U&hAztϭ~{,ƀ%"BJ=RmdDTu]4d;^gYѼ뉃}9L*k r{cxeHhOmv:p{֍j?^8*e/OųUNE-KH*[;(-9ɪƜ$ƙ:K('UaĔlDY!pTp([q/adޱ4ٶZBkg}*wǗh.W1J[;1NPG׃%מYx8spB8'EQoD9<4pPw՘|cLԆu9E Wܙո  n`e,ˊt,j)6lC#xX­f*GRzUR.u׎j G\XOco! _[尋o/~ p;ʻβ9SP[fRF-y|=U3u!^DFMr! ^ -Pĉ B9x$ՠ @c]&OLАE!XQchULG XċH)DR,ϊ)'|y.OZGyE:t[Lnx25 9.QVVyH)j:9Xݕ4`͟,S'x*)sbDb:i[XtXr4>Ԉ)JU&$<-QÉP3'3«324֚&8AՈ/V8 B 7-ԬOD od2J=tr "v]AmP'6w鈗9ϸefjPti##ot^DR1ӮVf[ɁG2.3vu Κ[_!dtRxrzMnO6e|4̉jWun\HlgIͻzEo`"f'Ө麓1q!޷ ]q.^e;憈/ve)}hQ>z;z^-=7N曵/侩wʌb"#{hfmz-A֖V:uU"@YUZ2HJm10Dp^"i;(uLH%R73η3$ArQGBuKzddDG>@#6\ ɆZiWD$2GVݏ%-^P]!X";/ 48Y'FR"2ɔ7dD,ĕU \Ψ2P+^s U$-6zgr~e+܃̭U (ŌrF+'DE#<EYvG~3] !Ӽu8 E x {|^{ψ@y& >? :W2_,\-1FyA.Bjc:3sِ3G^\C` 2,.D]mߴ"Otu\a)8d{*QMN6X2yZ01a)Lۋ .lcR;!86r*ڱ?/qݴvJ}y> U%n3p' te ^w⿉:9|#-~ աJ)Ɇf],xV0Z5vlJ0йsAO$HE&-FO]%?ݨwi).}S(L R1'F+K0رo!PÐ8FiS!Кi3t; nMq9NȰL@I{i,D \/^8?=M\)/)w-¶|Vu Zhi-?ngl4 i!j]T;'l"Pv7`r(T`}-my-B+5Snd=*U?w#sE #x(8Q ,M`„">o%4T^ۨ׵koصY`Av{aH3$ 0%촗{{XhhQdTkJm(cï->* LV xѪ Hl]^3-t@zDO>Q׫҈}́9"{|:`( O0۲nbr W..(G %9Տ`hж _-U/f$/6Yc~0xn?/4%`˶нG-o&IuZ/S0:/h?Ib_2S{"C?~ Ȕ'dNFE_U' ƬTQ Hji{hj۳}š."?R\TIo9#ItvrҬt2|K#{ ^Њ邁PN)R5[y >L0NhRt .k *@LJ<ϟ$e \/ֆ>{KZbH#<^sMM%ö>N\6F'gӵv) 4I-z,ulYpu2q}?DG xжbQZ۟>6Ϙ? gū 1]d9 #r UJ9РQv9/g6"@4U쳜 6"HNcםci4n{ѭ *^*>.O3"#8*sY/e+@ϯ $qFD/nl3wSVkzʈ_8V%I_ t6J6blԫ ]Gmh"P} |.1*]GVK1fJ|ylFǺI(^I|\ Ĵrx{?DlblSl:.`ٹ%}ʥsEb⩪<KġlH K+-{!K M`&1i6៩GV\Mqx@[r0X me>$Ž dbV+ |N\үn7N*t\R,iߜE}W& mQf_P* QZHb܇(878e1Bw`E62e6"`WO5X)J'@.0)677>XPEEyx947b:7I N83KJN3BשwY'ᓀ)3F$< ) ѲVeRp?olg1jP5y0E?sgH<[Ѱ\,N%t0p%n=6(z#vA) Er܇a&F\87rRf*}&Ld*ܰ4~]~Svs\2i-gh~j{&4VPY`xQ ;^R%CL|rG\Ж a'[(669}S8:. [-Pqy/P n9鉶K]iUL.,t+=( &ܡd3=LՈ $@jia8=&@MzlhGPI|ĨIX!;G괝hֺΰKB0eRrN4^,«L22_)$P7@`+N.t[^]SEbA=kj |6"/yfOBV-& 3tԌ)>@Ysɽ : ԱK`P6@c r][ѱQ/LMks{upT!ix` 63[)+PBwhzM8ֆS|Nv" -ɳhm9besAa^e}ۉMi#C.-1?*}nzQ,ynC?e],h(ZqA0`ٱy_ۂUfNt&nb-Y=]GF5K\Uq]3VNe2bsØ:Bow q_I`6yiއE8{:JPjҼt܉V$ | X̛ioN&#DwQ a?!#}HPAӒGtǧcąa&LDcK};B=B;64d,(CasgDlU[24$|T[01x(RD8=[hTwJ ?hj.^б2WIxW/}.#8n T0/+},\:-?*>YKzX/eEAucHGAʼ_+H`DeZ'6{_G_8&YAb 'mIc+GVCyr Pݺ,ˢƫYO1t` bbFC6!*BÖLh*'հͦ7)^cYqz=㯹A څ+k6C:o[mɏ  ;J 7DEÙC1JҞti7U*8?a[A|i޼' ^G-]t3DefrArw*}L6Y?i۳ψIrGj;Z>[MmŲ! 2 }oR'᜵(0\ o{b,Ks&+WH@`J@a6?xk*]mW=o Ezc2?(ZB{^ͣy*:bV`!>Ll8U9#ʃINS4@nTwe-#f&4a ^DhOI^?fy"o@2@_Sj7Wx LH[|%h x{i:f ؙ\Y5h荣e@I5O?w%K#=*&~bwmYIC{lKD}|܍q/x,rQeX|N`g:P\/q rv3ۆx;^ 2P"qT7*OÖw;DNG|{ ^KzdpMsj$3]5DUmڥWE7o+̈} k 88hY7Q-|At 0;8C-fu{QaQG˙p6A [xN3[yܱz_:-2t8t)tCi&Cͱ8 >S3n[ɔ)R@?< S9+;-$r)# "f[[|ď'xz>wNJG)uyAьΚmM6iGD'm)XV7Fҋ|?{y*ge?30d _&LzXuޠ"ooC;<-Z(2d)RWtqP`Eg:$\е GI^V"lB|srq LZ ug}][=xU]Ud%?E0Oj]/6$~˽<,3l p~kU6E;r0M ^ czpm&%ìMQR(#vf ҺOYRcnKlBŷx*7C2Зb&; xi}:t壶#mT,V{jqz/m.ld_l`h,ftBbˡm aϦ};:Z&cڃ;[>yPuc27x'"\r"ۧl'GD;۬q:dNkKJfk⎘99LBj6F]՗h3KCMWp3rr bpYGnd0]bk-t4Ff3q:CMcQxW㸑y6|bޖЃHaL G DcG^?Iѡ!S[WU%9A׈vƃ$j+eVe tt n`eQkϷ<.k]@kX٤Lݢmf#k*` -wXJ|rKEmfB}eD F@~gU& r_y ,`0 3OJv TkXCb Ă4;fۥ0L/SMKASuUW/';.0vSEۈe? O$NpBBva^J$ ݖl:p oˇeG\zaudt\6~y!wN'R켪Ocdְ7PC yOq] TO.F=9Qq׋!c f:pۤdˉŲT9G򦕬60ZWa^p{)dN5tY -㦋 r/B/P(@K$*d9ھ(|pn@?0K7 .iJ`DDDŏ;ڪ/`Ifo_S=jL%o9HATW ҳ5W P^ƼA )@;Ś*ysQVpiTD03{ r+ja#V^|in-H![q~bGqǙ7w1$ #Q~L{y :P}Gs8h^7:yyQtr٩:AQk$72bNzĩ櫕`#? _Æ #"n$V|ޭ(۾TcO␴3YD9ҟ+aemQ57/Y਽P737W¯<8=!aFd`<ɼd -BC-1 X@T)jm'$C2d WXTG[݇qYjŬۭgh,tx~|.H~2\ˮ&z.ҟZeqh# S~vӝxDm(hͲJ[fXBdteӰpyU4|+Y֖Rb^F}C Q2" k ~*_[QΞo}(:Hy)s g `+,izByEgKg2',&jC#1Iƍw<<9a.yi86$ub)F h)>k2ppyRF:O8œhho!f:V\^\GE†]6+|1jحdĂj7Gt"fkh^{`*T/x 8b5Z9/Y -g`{@UWe6Pu+1G*|;hF~1~RI۞|{MӐ!vOJ;a |LR8@aV D($NJB0(Ҋ9s X YiC+ٿO 76ys@S=+Za'uܺ/ z8pbX43z^+_nؕ͢;;r#P4v򪱸n C:LK#ιFFwoy=4軚fEcUfԖ;hRX~H@ 58CqǤrg8dĢ= $uz|";e^vrU?U@͹B XE:媷"v!8Jc6\E 9Uk<}]%f浌&[~/~s -:9?iCo~;Fj4$`"pWq.>cEc x_eجTow+*s{'&Iu1gz2*dԐ} _ ]+_,CxxwxW.-6X~ 8^ߔƟI9I$[9XPXh5Gw2ǽàPV5kO1]F(aNIZ b+ޠL8Ay)Drf :33[fmgz6N|(v'\^dx5X٩bH {n%KVn2N,OAjU"|Gk?Zl"壾}OOe%iAnw#ro33` 9wmM(BLG 7GF#@#zq& d8n>YzM֣ "'D"5! zhg7.阁m,pّ\\-x6#X0f?s6ym"mVkVW z\wRGl'9jjkqmN@NSS7ӗeHM5xFCWA=Jjpls'v> Aț_*O!FT~POFGµFrv=l< Dqꞩh*v=% A[`[=hZO@uPxx]̽GAJ|5p=wl TEaDƙ {¹J/u L$l*f~IpC ?T"֍1r_S+(ncz}$ *yWZ=)r> |Sl[mbv9O,7Sm6+!OCj7 1j|QE c׬IH _ `>_ Ep5 1E0ne? VQ^&P58M5uJC_\ 4)a̼f+k(IX!xo!Sa17Vȅ;cSܻP`C-Ug }`Ti!ƗscռidT@!'ϫi]Eل1]I#=Cy{UfΓaLnj'IkDF@Qm@H/F%~ԩe{{|Y_%_N`P^?oKn-SZN泗c#bZ8jT=(sgXAc8:sWө?/A7́Ș՜~X磖DfRq'4u=K-" 6Kb,*ZkOR&knQ&iD:C.X7`+8kPc56 Ѩ# 2|n!jMIzbK'Ѵto(<ؐ(s-@d}$Eu># ӉZ~]Ц輧m+Dђś`6gZ<+ i o]z_\Ժn̼ ĀAOߨO5:ߧ#tM`S IwulpB ~A?R"c FIe՟W?|6*@׼v*=hxJ 0IQZxSkU0Bdڼt[C Y\A0;Rˈץ jFvQkՄƍVb }npŰυ`1?3j^+7Hvݔ+Fc0!\\ )tCA5^o̫(*P#dA!e;y"' C!:J]ؿo2, %q~2&5u]e晰¬902fPO79"2J?8|H?Ց1y`xd;9҆Z`k-'q`C&oV{ Bϳ.q aewgyonHE#qQ 'U4O3V^<(zbjg9RKyt0F/ce(c>RҬ'Z+ 0hgzY d OtHc-ŌSl9M==Uԃo2L SA|g7^OwwfO`uj`K μ`Q}@ig?d _8 O8;jlUaSWcpH,$潑-lS-ohcu MPJ|ӭ}/=Iu2KgI'c !N]52Ӥmof|cXhH H,.(j챵&Txmm楪KC1UY8** eu7W!*k۞HJֶ=0iD /R$Ћcv&eLpNʳzC(`®̀f--fb~ciO~ª1ho?Wk/ kЅLm.=Hzt1UzFJK߅`X<4/ ;fHMdؼfjVw\$_[6JMͥ3ŏ/. G?Hvk [}/fj߰FiD:NeRA~zin斏?5y$9A]'~N|2* Qu9V_˳E^FA׀g rί#EG47>C ">5K.[r{K  l)B^R7"6 ]rȨ:fO\y؃ekמ|,ܥ}ɾGxKӳ~{p p,j#W[MsRk?R, D{bR+,H{Yh-h*Ot5{]#s 5Kh'TS-!%"X$R y[T hlQ!{#zwla.v.љ" xCAFpd#lH1}[قͧΫ"ɳ_[ 85jRiLNRmY<ͧQa8#b&,s[E&3'~'mn Hsxx OD1uiū]- Fg7ZbgϻT̼`6''*=H0-WaIJ.zr=0\Ia9=)jU3F)m_ /xտ;&\+Xm~T['`B[zfմ=d0+5@GwVD - (P0 79o&ij6=?ZcQ҆赸^1_/vz0*pf>G=?pu3][usssx}Ta0ʳ/tgV`<9>н\3YYL/r4Sխ|ow֕&k"rLOM8i(*?`?.Dp֛>#]QXH@O:Ӵ0\Ð7;[2|*]yTҖDM9tyȘLqL oS-uj^t ]Zta֍Jv(<Ozrê=b  C4 V0r3$4InnaVu<.LjlSmؙe1Xkb#O>im*V9e'&I)w o) %{U zcbW{tJh;TnbsYv>^#FFzj:kk[a|:a, ;WyU3 L#bKp*Ւǵgj(D#b :aPSh$3tojD) }=ƝNZ<@H#Q`(~tyԂܵq{HCQ(1PZ -bҩd8$ѰB#)ݔ~""tMn$O]q3^v 1QVE^{:aURm/_8i}Ϯ,ff/A&:GX!K͠.pf ҁ\\!m5Hx<^ uGFbxlM“SIq43OHɾ'Q}v sӔmVx_j"b*3'Se}*ջ?]2~%.:s:=UNA ti+PP7Rm[18S0.^F^+DNYmYDkDjrۧvj' QXe9,@B'Jg-w( ԯ!VVѹ+< 4 kV5<7͚WLA\ڿgUvVZ 5rVkJlR0`v(#Ke(' gQ7}\SOsZm^/yq D$)$NG*s_*En;<:rY\nқSo{R^['bH=~n-%bm]k\ǭ5 HgBeYF=B{ԐRU=$ʕ%t 4H6AW^MqyZEV]RP\; v\ ŵ~{m* -iRQRPT)ݹw t#C_1z)})5HBR|eVr].4$Amg5B>!v4Q i!TpVݎC?h.k9TY K zw^3^sl$g$Aާťi6]@(ɘфIL** ܋8po_{RM6oR+~JAFsg;1!mfl ©OQXP}X9޽.;EqZ>9>ҁu74=9F,*-cP@۞˸#}n;@xSh\OMOWa}/D6XT*%<%[t[%柎@Bky7:h*+0 +SLe / yk`\sR%B :Foc4jr;s6)sF 8yk{h,K&/W| Tp5"6-i\%!,q{P8Lz$h$_/*XA[, ]|u"i&߰a'·M0a41U]pw \i. ^ehM65l׻(Wq 38.pH%z= [w ǹ>Igro%-MmtV;ϾEҡ7}P[pW_oJ֓H_iΆVz)8 qXOu13Ne& z/K .<`a AVў64ᥗPQ5IdRi?qפo[ADvxdgqh6KF8,:;cEHzɈ!3BGΪ,CrH291};\y`: )p14 WgUqrNO-0ֵ1XsA #6bcA#jP:N~ b Yή &os AӜ)DQ?aXvQ} r4@{}bܿ@4ʀZ\-ek+uL0̓Uྠ47q0K=bAնJ@"I)]{*L.:G̺50FN`<”oH,Ahs! dCnE.AozI95d)K_*"m!m~ o64* w.q.[A =1YR\Y;I8#낸7)UX d{eה'Sww5QAJ{7]`O{{gq,l aOn"UgZK@ 鰃ͻg1Hj{M?B_,q5C5D\Yӊ-~MgJO&yO{7ժ^ŏH9כ wB,R68|YVb81U)69+r |FjM*<ܞgY°𽿧gtJN)g6h./ v+8@g~X x%=!w}Xb%ЯQZ-T%KDMjdOSb.h0b(%{;>d00܋"krT֯DOsrh%]okujkQ5 Ѹavn  'g4U`9lDTܸAF*R&P3?WnYIYʢ-ٴC%~;}4j̙c\^ [P% bL<5US$W"Sj0wq/zoK1ES399 M@=hU%5jdT®9eΨ:LH7eK3RIx2geSgkt̡G{ KҴˎ)' oC5'>GACVAO,ߢ )d]PxMunuo;PZM1+X]1+S貰$`W̜N5ft'C(qMKSjgk+MBzd2HEWFz%גvp[BZfcp ohy3ScS|i"@IЊLʥ -h}}v3},^h%jX B,3/W}x&.&`͉'C]UX:q^K1:[Fīpׅ R!@/tPA4$*%Bsg}zMUW*+)Q`ӅMTJjJ[Lj74򷹍.EݠE֌񋈝 Ĵ4!oHmhx=R:@z!?=\05#924=~5[!K—8a oa@/"\HwłO]03#b̜AǬUk=E 2-| V]JA 8(~J:y*xyMI \Bgk KuƬ3¶]!u`=]w^&UU!p#ݴCr]CBCvt1q`}abxĠ` ̭Xci.FЀ1r+Klz`%W8U0լ -jna!ԲTs#f`5%/G&cC<ŗ )B0`[viPSЮN Ϊ.N$m CU? /駛MI sw^+ _X Ey558 w w 7E:C'&]6?Yy`η^;K˸*beX~Z: Xr9N(dhA)dBZd SCmC  .פhQES5mE{)x0_Qv i*x0!q6>27}}m[.iw8"(o=oc ` p6vd=GKK\J6R,݂# fSbTnUhYFq.A9 5hX @o>x SŶfnƆG?0z~"ւNα@&*?p5(~ TTs]up\g/p۵MM=s7ZDYhЂrkbyF)# 8`׮Ǫ9T=, Nޠ58pg3i 3>4moBy1cy `f># Fm!?6u:m#07T^JA4ZWxr˵*tf̰!ez`\W7B`EjQA!Yj9|x~M'Ls+a҇Dfa9H\hȉĀG_wɜNy嶤?*c'< #t&lvƚmȚ=Q"p9@p "ߢU]Gq!1KȤ @֏-Y H*Jge76dT[.n ʳZ}ǜjUNdPn ץ5ߨHBW65[󜂄V5%֕ [v%&V?ljִyxp%s+ ^^X=vhYDǼ5H!$D Ju!"ԗ?i;cٻ'ȡk4GjxKMyZ.`3NT3:IyB䒄껀pk8 g%^t=3h0- )bDNPrsI$J9w%:jB5ED ^`d mٰxn+f6_N}:kBƽ:EُH1f!a~bk;_ ,NTP.G1q W!v:5S@'fMh/{o[ܠFAvSۢwbx3==\VohJnvbM-ZΠjrqҢ6u*';+[Hbtj6)hLS8ՒmuNz)r͏*/ #C.9QYfr&97(A|R:Z)}]т"?w=!rLo>sP3p|&?htEzr~`!dLz#|h$ʦGC:܎- _F#YKmM(n %n=-Kpe0̖:wJg0Le3i"UZC(}"ԁ>uâi9cJʀYOϽ D!'zzԥeLJ"0nl @*7h쓼7_x9|3oi;Qp\CB0 #}yD7eڞ/wR@\Ji@vAGC?7g:5uԆk?^~xW \WG>WO ى| )hb# U*x8d`=b̉D8;oXȽ scBΞ|4 Mݻ9*V4ۃ[T'?B^Vb`* o;, J^-SO'7D{d\;_1Vfeޱ+kɅqRe!+g) }Wb6XAwk]q7RGBs)N'cTǂKG[dYM):erZKpyAGԆa^Ed*v'o7 (â1٫\7 W"(HҢlK m/V~3vpRV͓&>Cm|?hBɼptm@H&5I^kPHx"[B&x80xS(QMmdf!<ڬdHfA-B%/}S6t EEKCapU]E&4 \ƘlnF4B9Jj ܟzz튏DBn?Ce-{O'+]OFntLgyapnu^#Ly7 a6~uK/?_$܄ylz(]Ac돬#53;E)ƃƫMt+UQ/^ nKMv13-v:^Ad|Mj c=7r+)ިXs !sDF,c6 !cN6KflkHF|$5kSUޚp^x t Ѱ,?{#Q$2~oy$΢rg_IJ&zP1N[jEe=OpLC%%/BKHIo^[H@ v@UIY{;@4+x͕Ĺ[3^@^IXzXfB*ND#l(PQuz+R JXVΆ\18~,k^\:Yd )NɆBR2R!W%=OwxEnU?9s.q3Fkt%3i1Hτxm\)׍lPΈZAa:dXO@(ͯ /@W2X0Ό)l޹|}evAӳiD7Mޫ{oqdM5/e\Dܢm <ҩ$ 2Yl+f6w?YJ+vD3q >2 [ಗ~fȪt=6*\nvq "7Ɩt@8̤2:7Ϫ \吘r&k6k;PDjJbj6=)[}uanԳZV`ښ&QtCǚJ*N!?N> {d&mYSAf=>>Pra236N73PbPtΔdX!ØN VugT8[(>矊  V*H9< ~z|1ivڋZ@g_!}"x[pn幛&`ńkK)seݠh 4rŀvUto$l:u~ck^J=$aPV,v飆A`>ɫ]*>άu>p#%Gʤ)qzF[15*i\ܫĂz9yѢ$^iݗM&9CTۨVȲr_BC_ Ⱦa1v(YN7@w9]BŠpbg.4 $Nd|^Y$kh THe}7rNNƗU&hzJU"CScZmEr?9UM'cň/oKKϚ̚bUVA |7.* } k"u_V8?KQ(|g|#4!@(x~+Xo,zB<pzuGm=tLXvsr!gIjM>sOWbRwa ޠ@^!Am#qѵ*e{[^'&#C{Cq/(~=Nw(>Y%)*kbHTov|81\2Xm<;6uJq%FR:!| VnB^ b^t4HN+!Նd+A76mL6?W)cx ԑx2VM=/d, ܺhxi;h{! ~\u )6,~zk2~+[~Ok+-ɶӺh ]Nbvs[`テ,ݩ2َ*64|ePVy,2ҿ?Njqυp4iJ ?*xA!3U]AoZ%!brJ`݊1]ȷ4fxtqϮ^Rv|(=i+֟?y(CDT֨uk7Qx- t`jׇp,6ݩ,9hE %RK4 ,d"͠N`@aO;ǽoN}Hznl9\#\V}8?ܸpQݘ<݉э~(vQQ\ٻG5"k^"DCPӔ4BRPQHQ䒜xM+ܠ<1 h2yCیlevWrL\ ?S!pKSEh)pU"J!=Vq/1\ؐ6ģ 8< cHn$jTlPdRl5QKB{<[.z}fqn!++-J-}N(Ǚ Fʶ,)8>µ\-dĬQ7CZ17Ž[) h(#*M;w)J?h{stfDcmBm8e)?ĩUVq`9:e ɄubPoh:9b .ђŗ~=>zR}YxOjS$x;fAS qg11P8k} <wke4})Ct@4ڑs]Y su!u[yKbFː֑jpB ˾-KߵL):_E"dNZ_->GAjg^U&($ڲ W.@?h.~:@lpeK/#ٯjJhn6j,5 hL7d肼d\D?'q9-"׭Ď}Kr҄.:||a\,#C )6"Zp(;_{ă0Nƈ UVD$y}8v O7VMi*W0гz" .Iëj]"sc_^oֽ*\she\~7k}6^_TúB&!ߣkjYI:6.6[|bfÇkO7حGZ7_5e`Aodc߾Di{,"׿ spjAw.aݬ&x&uG9kӛK˵lLeaxɊzn5 cx{Rcb-N=d3AK&GbўՂ{ʧBdm3gV^ggaf=Wp/J+>s;';fϻ턖/"At}ݡX 9`=\Kf+dLEɆ䪲QfֵA. jY((\ t) ⃋5|zS]~`v23nSV\:^!!ͅ\x5&'@ u)XClk~Hzf8/5,[DQXY|ec$U\;U&̺&j6>mNPZdZA Sfў>Yv NpS-?inkW6%;߾w r9|k1#ȈU?b1l5#эsa݆o|'d%" OuUcK5z,DU3YDaIƐ숻Jl>5 oM]cgG,SQ8Huz˫ lGjQ4~I gB۳spQX% cGMWΆ8Tt4 $At(Ӊ{L?Ro'SH*: bXoS4J@7%B)وVk_ M]d~]3>Zra?}j0-|~hL Ilҙn6c8:ȍ9 ,[3^|/QwG}ߌ'bc6}ކծ}>gpwi0,xY@lSF"ua FJk V:5f.)e1ǭs*CƧ"3f )Y[?3":/leϚ5.P$JC!n+m%8uN$:Q@O!^R#_| xeR+dqaFMhh,8R|3.Qp A'6Ze dݮ̰|ӔDbS[s+nuhrj&:@&? ]tElV ГΏ}ٜ:g;(&w俱ň+՘}嶒AXK$,z"IoNv&M;l MՀan^/2H6OUrfk`QF̭+p08} ݁bb[>봐ʓp,i&m2r}O\%'vV̮%\hCBR&Fuw*ԮkiΗf0O47RۚƭT9.Fc3@DՐt'+K000nfc1_"ihl*5h*z޴"w|Q7'4Vuw6|5ڻD˹grKئ@2=#'˧KoܶSd^Ɔ81#F\&2]NLdnh)ӂ<袡b9Gj8WlzZ?Ο&nʤ4$l FvʍR,INk)O^V3@4RlѹX+@PY&%׼#ː3G)VsȰRw^5<4[JSA>x-|]?,{Sa˻{ CrV|Am[бy;b1nP05Ok˕`tlN;u[eڙY{ Kk~sT&Mr'XegmszcĶb{$Ώ%MGmI'/uz-nm4vk&^aC$^pUc3JA;z! p6ʶpwrb,` qc-pn*ַsh^Ж _V/sؘg Kc)B˻[i(z 4S+tPG(wpV3{K2Hs}U- Y&k p=l-nIMJ8d:Mysf': ~-ilJA1V8P( tXhmYGhBxhtMހ%;ĵE]vyKWCΰXb7;B  Ps.U/>>qx Y'<9rgY:&Ajf AnȪWMKԵm4uduEUo?FXadLh\$0_:33r(VŝګzHpfOlEQq$m+=[Omr"O;eWЭNZe3o[-5gF'P%W1"۸ fDXj&)-ܢ@P00a ^Ň\_nTD^Zxk,bVx"=jʪMժG'=\ޱK27.(A?WiYw2#,= FDLs DG'ֻOc@?WK0P/FwLYrOatfvGHÄZhN`1gEKֱqRɾ-{k# |Aӡya;9Ie5K[ۆQ8H.WjƎB0hA=ɫN7+B8:4y'0vգy'mkShOKߑ i#l{#mfEJf8\bʲ9uӴo2SJR>&3cœ!MZ4Bdm 8 :@EG8ʽd_e4a Ȍ(rPJ=S\ 8Rbi %#`3~IN_9EY5wq~q5hьWv8N? Q)C"GͲ[Oa%PxčW _In=FfIWfb$#y xPP'zgVKIEzW'rtO3Cѵ9Lʗ@fsE!!r|1Ga0!8F3Yx`Jkb&+)?>0LBP>Pgk>v~H?TĨce0{&$y$ Xܠ/xnW7%fwS$ lw(_|#)L q~הұԙ~lջm5󓌍W2>Y)WY)xK?W Dj+k5+\hLfۏ%H7C9.Tw. L/-ͺYe+DvU2Gj!B砅n}~S?Y-C޾w6N^xr:8r?'y֑x~/nj<.z``ˬk8X;7J^eMF?E.  3{RjU,0u^PV~SICk33m,UoK #ȍ)xʤ2".{}c҉%6ٶ>myH1XdEOB};@v #xJ!O f0äO (UP9K"g'kZ'$/JUMi{2ā'߻019tZi)ة.>̍x^A!s -y冄IM||wA2Ԥ; U^X6sO#i×/O\G[8% {Z _nG,AӶ$O^n/KO) {ZVr@o[^EHw&V;xu!ݖ^r@pq@*T56ꓕ`|]_=K Y]C}E?´<%- 2!CBVR}ڽ(fDI (?(-Ekv5u1%>`uyF_^f jۮЗ1LOڄXҋ 2:|ٽtoFQ[M2~W '~U8K~l&Wzj*E'Ch3'35 Vey`SP@ J8Z?~T vqs (:;5[C#qFI&ӱ39C 28"KTqG3[0+)rяX԰3L.S \yT[Q|>Cfng,Ҕ0[(I=1B *~2PBԵ~WL!,ZdGI@ꢭz 8pDL+)ך+ ~1cÁ?jLf~{*`Pj+GF9#n.NY nt );ķM[U IyID0!^@W]dEvg2G-0ܶv1ւJ c@FՒn?[vR; CKʾ`XH)cNJ̸"L]ˢ]<3Ьyɺc{Ay(}}?BWWjoYx+aa[_藅ݖV݅91>N7MwҪp>aq/n?F+8D`"RRy{3< ևCyTx槔 뺛e+|j0ˋF'B(._`Ӟ]u T鉹 `kdI` ]IqN> FQ{E\*PNn`hysJ Tt MJe&ͱ0[%]kdYW:7?sH4̩#_.?Q{ȶgVb629[ᾎ>{@/灍dZ5/MN89t-;#)R"-0СN7qҎbBHf, y7#KG/_v<4C7nBZ}m-AucÚա,x?wj>H!TʬbEi}NGb7K}FX,}wZ6ސ5;~v"8ӅEW7`Εri5:_&H ܭk釫?  m [EK)ѠIc Y8y˼3Y?jL4l4O nZK6x;6 xpjUKHy,OFń g@0>#va>6\;gcCQ[qFW*~w-\KӾ,Z!X&|R( h.H1[|O3On#Y,ryz^ʼ0yyf jkPk Cz:\9Zaˉv+Zōʉ}6ZQɑt,vBۘ+L4.E\̄ ,csW󺕖{fCQ]]T;@xU\FBc*rj?Ŧ.oyK^!E\=yʏ^ڞkL"?C\RDS#Ci^dZT~Ad?~<$:Q#үl Z5ָTGa~/wBc*[͙?.w9x%OMk+i2AZ?Iiӿ˂vmra^|˜Bjʈ}苁>ЏI_bIc@5=#Ku {}JPdY1c.4Gg.5Lm6H& -P.3 O]ΐcX?09  |XH\ Ț'.g7S8Xlsa }xTYv`Vl8,\S!or|aXl\y"&f""cT#n3ptX)AGHmmOd6dKQ<qŹjٴS@R[C>!zӡ,s}OE`_UzQd'ka" Í0,z3ؤ.Y΋`oY5KJC4>sRCm̈́ĊCq<["nvnl9,87aO4TN*v a .4I̶}(n&֔eדd#eGf*#*Iͅv~l$r`OWc#PqS\W9hu5,kB#!yL+cר˝'܃stw (zKŖkp.}Cyouև ť6˗={Ơ:\mJtu?.m{.u6bzB6e~X"^RjC]DI)㽇(4& 软1 n`h@(8.-V}I0MAr|#aM:b*hCI}HsgP WçXg" ;d ')!()sw PQJ#Q|&0^m+o} B{|,;ڍ,rD=0z| y66G:*Cɳw}s>+@U]pZ;@ mH~j>,A访߇pUemюX :ܴC\94:Ζ ܡŶ G,%_ Fb(h؎ .ZU=d'❮0礨Y; FwD qHܷ Ġ:Mxl/uBZJ CjKU@|4$惦?-"}_0l>k-`]I<:~11Hz+˼)/_g[gA v}Xh|/\X$GP^.a&e~\]ǺtDZ'b+8?񄟌SMj>SޤovO7Y޻)'1D <]ō7sr̶fÝ]`>ǫ<.(evxfM #DO s##ŢY~m p}s2LQ [ϛTsM29J]Oj/8ο0꒛}QpHDWJ?G%M.BI]d; ֭f?VW8ye*".@*xE2N['sj2+m8' r !tR&OZc/mb(x*^QHe8iL9GYtrPtnJ4tC~BWnZNY=dY>б E xb3BwꞐ AX$|lCzPϷ[V Q 7Yègv}YfļC0d,'fBcT˭^:wͧ⎘hX>+|_hӦ2tz4O[^|>n$17k!:a5Y+*pSq BbZ) u wZE X[I6xt}}*rC8 -‘~st>yHi0U17Gjhy-֣j2(U'K`8]&h 6<\LpNڠ;ͭt2"H]ylQAveRd3-C`J˜]ffr%9Az.'vw{u*< 6Br6I;tlt i)mT~?`ۑfZFPhso Gv w/p9HvIsތ4eM $vB;Bd⻽L9 RJ!7y]~kFZ)j=xT=@"g:>;|$df}9KVI;q Scsg( xjkh_9w-B_lprWWK=:\; pb>Fs[Gc,_`PpR-)boǚ8 4VہJ{QT៓w$]uVm!}f{g2u8\׈CPhIѓ]86[ij@n o(顠 δ3ɣr 7+Фg'.\j&(Z:.F촿n:oH{J]0I]Q0e*6АދT\UP׎iD4ePU&+qɠm_V`N9@_Ԫ5`4"kApp~)m+7yճY؜7h2!0pP/Eb-7 ,\0jt8BL{Ӫ:igێL˜[bx 73\8<3 r&LKxBmH> J_TͬpKC]фYc<_<).cM,L;HK5hjT\Y}q9i:RR7C<NoUaZHWpz}  $/L4pӷW`5ˡ{m|CTw'U| koг ++kXAةnr~A65V%^w5~ +9-yѡϘ5Ԙ_6_Tխ?n *6i0Wbbf|uB3Ք' D`!nRMɃf z]q߻(" M Aƞ|DLǘ=)O QЁc t{hHFsX5ai;ZQ8]LW2v M'T\ك&GܺhlPMY>l̓II *fA/P+c6ч3:zX%r1>|4R_ⁿ7LLp]~^ {d}^tyq6f=eTLLN3J%UO#vAY$+AzI@l8CZ3Zݻ>vv۠OvyPfY:JTa”iˁth%5)]`WK]RP̶3psN4wy; p"N<})d^<ܯiMBߡ:F2¾x_ٰ'֠f A GqkJK҈ (v=glx`' $3 VGTuu(uUVwgu MX~:vO"a -.}d$G6R)SVk[8 *)vgcQSY8S[g/ }'[Y'prn3+=|r ,T^%v+ʶA$HӺZQ)5Ҫ*c,BַO ho!WCQ)EFWu7 z$U6~h/E]693;KjطxL{^-N- I.u/;<ȣ5S&`SXwbSOT\VpghO@Ӕ9`2zG)kƌ{IL5Bf0f 7կ*p`ډd/`g8B,~~dd}2j\Y(fʿ>+ YEP]zDiᬃjw23#tg3X / ${i_Q2$Nn* 3 Sg|Blq;u2&CTA( nԑփY'a4.v ewZWi$1i[*wq5}D!QSNUVqJv;a=%dpWN/law>hmS:*%$zb1qФ`Pchw F7\kv-M <7Q;Zu\XZ^/tq'< ϓO fƈ޶#P~/8Ԓ2.6r1ɀ{۔zMAly6ys'*2|6>L_tkYsVJhh-/`(g|OX-Y1]NKp0q"u>ǼPdoVU.L<ԶpWMR54#+"|Pw&)-qTMDh@V1WWkSȫٖ m8;BZoWڄl_Y.ni;KoEɉ*7hrg:^VLۍRM-l)nrPjJ"m7/th$$M, ̷"S*O=_\!ge~Y6`-]`{a_q)^vuWMv/9^V)AT`j?Cߪe5TbCGG0.o9AFF]Շ=P/ӓ[S8WH$ߗ<̆1lok r͊!SZ8 ]ܜkZ{4 |fJ):ad]\-=}j| $tf6h ʝPےp}q Ҟ--z \Ia:kPrDrYO~7%m 5D.IHum.<)\ ?@ײPCtޏ‚9v1+>`$xR;yn%%4I%BtLy(**1FZzvD%Zor!s}dU?|'ʶ_3e+/SN:V\\D?'OL5ô{tQSQ:%BJaM2>"6'K?Dj,sTӈ Z"[FwŽK떤+M|d2SO0/s%VzeVUYPp +v ZKSY<'Z#򍁼}pfARFCՙhoj&kd7N}dN΄0S?X1xW&k0/dʹypU8G մDˊ8k/Nf"bguʋ4vTmY"•~rP45 `5yZDq{̾C47#JB%/FLk jRU1|Nz.xtB 6KcMע99g []Y6[:*VI-~"K1μ~w.gnkI`Di="a|+" 0ݱ,l E#>2kw7#= }J\! EV"L$qmOcJYȪM8/-@2x)[瑖-?duٕ918 Uxz`63;/jJ{~~i0Y+n}N-Փb Ӧ!$WϾl+_J+ӯQ8aOhk oh+m@ү\G Y-|Y²IxTZqhfY<@뜓KUXw"˖dZ{#d2̪X_.oTc1QZ] 7*(W q>@lxz,+d@IJXJJ,p ㉧\f1CA\ (G "-Q8XDbDau[EY< JN&D){Pv=m}4˒7Af4jp>qfT9 ~K.,ro/AטMtoOB;Z#54$T[8xǽOEF&+vN{Df«*Ӌ:!ݲRDļޘK* `1- @=`{c +fřTq0V'l 7B *Fjv(|$#f_.6I.7?gv'U ̿Ւ$y-6H3tpFDWUM4Rlf23eUu_>qU8̗Y"͵]J?Md1EOGqֈ2wnv '(A8('lb9bW}O)kC\x,Y-uI_cpn,o_csy\/X)4Q%<A.U&8".Dv\=K UA2ZW'ᰰ=1` ft\]Fm,*Q2gɵfێ8Z,wNK8!Gqh!u4G?{AOeiݺ]g@Npo펋OYWcNn[MIDx 9I;5ot!th ݼgIzqza,)ANu`n~RLE-fi0E 2E1{d1ƴg.li񢵫SMCk{N\߈,IL7[zF~Bܝf+5p iscnݎ"@NCřQhh#>6D٘|0UP:uu2Js(i܃ Mr!z 1|N!7oUI /939S<բ@C6Xw퉀 ^^T vyr@-w Vo92D,G _tc.&t%f5=G^Gu9ׂ̑[+Q(6y'[A_;iyu~u?D'}B`l'~)Izi(Id&:d-xSWO}ɽ~>(֦8JlR!! *xdl۴@̰nUXg_ jx)#W ͈0d@B!>N,/| G. Kǽ15L.{,^#m%_QEh"ܷpi!7H_ ڥlpM9r^'REF .DWfK(CIS#Russ$Wn}Rnʈ N&e+'S>^c*4] -)aigwUm^ĵ?XULpVJBm|Ď\N˽ȐXF{\Fd䓭~+p-<;ZpCۥ'%_}x$Y8+c(Sb<Bm"݌?$۳lkxzY/4wbhrD(eΏӺETHҤןZ1Up5VǛbms`#`'tb f,e/sGU(sOuiT/|%B%Ĺ @ q)sP<}d3u0>0ɇN` g^Kg_{`y]Gwq",~ȢǨP|_S G K! ՌKUഖ7A_DžE}ݼ69mȘ#b@?xbg aTCVYN'~H.|0]J@sxcPBG@TMز1BZzu"$=@mrĖ41hUb0WWX.71fCP! HtTmPä]/h#!wBuX΂GFc+n>n V m4o\}!p#K= g%m2WqY07 GIYhzRC^?x:|WQ8q ٔwhǿ6ggp{di+#}KEŚkmk p5P. yjǣ»o9P::Z ! =h‹O3 ,Cu(ZwWQ!a0bnwX|xMw95HLM5p>U5(XC L[6^ChW'ꜜ Dy6gΓE91RǚbhN0;fu\  kRJ d0_O w/#0ϲ/̠EwG1V7"#ꏷlK=7 `LE*`K̎iprYe\{# i[\t&_4H'>hkʣjxuw0+a}4\u:| r9H[6J<5MRnυRx_w% }}DTPRdM8 MGۛ 92#Y3>Jt?V˖7j3}rBt(!6955z MpK,wN؁,ziX$n9T o5.Xn%D5yvn. k&:5rwLa)ricuI9|񼒕7r=R.lT_j+9L)0yMa?beC>b&QOsJU gD]jٜ%ITKȀ5TB^1rܫ-xرahѾ.GQRƉEH ܴyػǴco!ڙ^t1H>dUWyQN,ɷ`3N:e|쓶5U!w3ui.&uTj@̬̃o78DQ=]d2U Pe_jg*3qetoF#`0̖ty}WmsbsO(X`h{ MvKV C5?ƒDͥkP6?pʍ';^3 o/kO?BQ90몛DE 6MIs{511ԌipHc50̪ y9j% \1duI7: |a~WÏBA E*ZML nw3)Ǻ՛<.WJa杈9#ߖkHv*W +#'+H!5.'Nz .7%}:+$8T`)Qgs !Z SKz ϋW)vx9h[]%AptɎoy (j +1A޿i}EXxrOwF$Ӊ[ۓ3Pl Gd@bwn= [aL,=DFTٽ&/x7 2۟%};TH.'ya(YrU o3,#03;%I|+"oC9qIHOUpFNAQ KGiPIYu}C)$[GD~fLPDz"eHBˬDe 0o^]Z!0eAփo#zWy'ZҾ4&aCA]h5Z¶ a_MZŪ3͎Kytq1 g U c96ԾQݖHV1LT n_!%>ӭS`{ P Rdaz-XhKeAi!M,v $/^M;fnƈ g ,rZqqu>pu2qnL4~?-q "3cȒMv % ̬Mh+)c8@l8՚i_+G~i_F[BٌJ$Qŏ֍hfT$5ٻ7CҪ %8?*8 R+B|Z5WuR=EejWiYJ<ܦfg@ ɾIOC҉M{7] ;i9wΓ'q_@[wڍ-|eȐ]-hnUYK8UM~=<㌌ROMA3 4lCƝi>t?xa D:H^X7jֺ|Pt{k'zQx!<&.'?Ré%LA!ݱE4вvNIR¯tL\X4;/֕U[#tS3EGÃf)fIqd3rdvՇz?;MDlFK@Hb/g|W^ Z^r4^RL =#KH odh>Ҽ6I|yB }9}zpHo#k5NM^b8:yQ0dBpId :|0yEv6@/qoJ8fUqu|q7lԞP{&)b0RyIR4۩QZĹ;ϸ%cp8 :ȏ(d}Nۧ".*ruCиY—gBI v#UC> tHabyjduDTaؙyy\stkƁdՀK8ᔚdD w^PU9I>!^WH<3/ؐÿԷ+e;lJxtpW߄W`6]*\Tf7^ 邡<ΤYgD7:8@1uc 4q)mP.|bm~CE}R~ش(ltq0hGaF| gߩ d^|9|_ y#'eB)e {.Jh:U\;43)p]4I3Lbʗ0R~X 걛Z *_kDif*v.%.⁓Q0񷭒wp9׮7ˤ评/"hT)3y|0(P⡹ *@`izW9..EPro7W4G̽Zcǔ5+A7,xo{;o-qDЇm7ZQHY:/ 9[6ꀷ5N,R]N~dL~r^c !/Ґndؽ@ zеƽ({ypߊ-l{:=zGxr Kߌj>(05U{癠Ԛwo**RS]]Ё,;9;t|{w'h@vm:Vw@Cy3.I~kHȜX|Ivm\NƷuuYN@)22&jr}6r4rJ)MP' <ձС ['t K /Ő$OFĽdz5V -)'x>0%WN8?us-p$ ;Tgv"|xh`(~mlsį$BOn[!#:AEBR}>mEpLLpPKqU5aov2yg dJEp%]`аt_ݾXȴ-349h^h@*iሱ( й~#顚o BV&OeGp%- q`Uu)QJbp*'\j Ջ2c2(U=v#Z^ڏ$QE;k/.HHR;ORhL$YOPBn\*8攳1KMH9芽-tIPHrC@4q%ZEZ pBG v4AØ MNŎV[\o ʩM[io^DiVR%i-651q#'jFFLp@7@R Q:BP(}ŹH'!;=.0zŚ-dp *03X+'e^(~fD.I`G(tQaG)SeGG>zy\?Z<=5x*n`J=ӎ\bQ}0I\qSTm `bgJa'EA'0Vjo"*E[l09.? 8EE0[7'?u~kC㗣*|Fbf//_ܟy0<ˠ#u &ëf+f9,ʃVMzע2dun>ɕ-}IP8i_ĪoW 4C & Nfyt{mPRǚ5<6/`EB˙ұà^ni޲aZ&tCZkrcMRya5^$`66Z$Y[]Z1T^I<_VDFj)!X [ Xub,\ZnhEtY^nxl1]VZO#R-y2S½j Z*X>xbN.mR">ypS4/R$_@~0^TVJW:AE1U!W(#ݔͤf[Q%f"T?c|+ @CfpCf {{j 5R)-GH8 8=Jdlrϵ\gdv\JnGNB're0$I:!(1J0m $ CE»bh~;Op_.Uko;stx2x9|qm\>|tfнi.믫Ɲd d}FlJr)kK$FcD qNdn>$c+#6kO&dSIq%(/^W-; e=$OJxu$3n;_'TaqwX{,b}wcX`UIħS9n ۏiq2)[+Pw2~_4J#yu:%S@xw,*LUA($]sj ='i)vΖ54lύq"@祏{nrًfg?9]~L6@=[%z!wǻLz]5@`|9P[ak׶组?G(ĶaP؟lݘ\AȐAT\7%N{VA #ydE~DzP[RYrMO*kVx sn6 3ӋKǴ Q!%Hη9{^ukRn ƏzʲÒήUB^b&MAjc% n{ }Öu}cDAnHi$y5Q):a +8-쯝 #k|(>3ֲ |m\ (' [WQa-H抰۾ ՄKWmQ 4ː4> #vQ0E*Bg ag)R )}5`I% q:Sȸhϱ>/@#*Fó3KmIV j g\i4d M ڒ 3NOߠtbRBd2C>\ڕ-aMLM3f]#Yd$/=یW WmBφ/#%լN&o^fdžjRHLiXu/HB{gq:50Rꯣ7 ]^,+BRMÁTE H8}rhՅ,ʪƈIp[uр]!1cQ@@hwƞ<*_!a{gi8|]T\#xHkݘ[*/ܵt4\DOo?|LVؤY39@>/LO?j6: RtT&6$Z\fP&|5NlԞ}~ *&J( _c} OmOmj'5fb\G4e?B-!\0m8~7.70D;BOurdbՑ2n~㩷c'p"U>5w1(ʩO>j*㤬fTxys mf9N&ϑaO旌 VIY"tC25e*D sӦԸ(A8>HFI͙ ?GTQ~;fgs+48 :QF.赣YY4Xo Ve;w>§$#W^F|aRۗTywu(6+o/*.Iߛ=$?LKkEo~!ILUʣo[13ė=Bxc"FݎdZ&R3I-ZYusk"NJH\ucEk{~k)BbMOGȹb &{S;`䖷?|8zXuvXl# }o?' Q,=_=ʼ=K̳x->}LD(3FQ6mtWy~aj'ͥt2Sp9S TK$baemdRdL*i C2U[ֽQ;z V1>F_V69륿V]{ibcu>("V NudZ*=]t w9{A370fq?B`.+-V23]7]ҙάqzsyG>nde\ qql2/ /Naʔ'SIa2gjW@OמP><rQE`,]'!}OJs.:-ؔEe藤!K8FnW.0kq; ՘=v5E˙rJHs')xarxu`ˑJ/,;n W$V>gwW^4ZӸ¹Qƿaii41"#*N8P-"=ZUnd \ >{x(cΪ0;89hmrS8Hdy+ڒ 8窢@2G̐dqX umsR/z,s3[X:X <}?Ry uOxמ34Hw"[}j;q}݋&Q>*ú- G/~Kp5`t8,>ik1 3`Uȿi> ]%RUOΫu1U0_4>VR(tnbR#~9$^WajQN}Y8.'FWMAP&K0)jyD]m ԭ'u\S#;?DU{sXϚ禿 -9 ; %0/ISi.-ǓQ.Hw( 5yģ(7ҫ sbT9'ǰ'g\!s!B0+ o[t0kUQ4 PY/h\݊x`)cn=!8s,?'?$`aJr0E .Z}khX [Dt0CH3 VmnE_g#_cɃ~HS XUYNl;|z/Mgu-5e}e]G%So={1r8&R7U^Ҳ2டzLY"wgddW=/'#b.GW$y:njݝHInvd2/d%ϜoʦcIO?9̥8 IBy,8OˀXvT|.:J3AfWԓDiXUG' <NqD')݀Ɛ^m{󪏮މcz4Ȥ\_{*D 9g܋%Θ뢹lݸe qѺV\<0exB⡸( ܳ)EW0J`7N]56}WX=S.|V[TшM0;; mEfl~1D' B{LْXM|[h2&OBx28=*{΋?P*\>&)si ґx=sʙ#R=fz7Tr0 r ܯ!jUD>YHR~rYQݹMqڦ-r2mN,2874|t\ 5W {FQm,S*9ՎE֕Ohktax͉:\y3K }[1PgȚsMEùrΨ_dп ggaH|ؐeHjضP}z?s$"mJ|C'lBH`]_#!&ca!&.NWU=pGPk ^ noS:D{\k{&ЩfBC -ˤ @\sPwxJ.P)@5JCJBր9>"C}-֌1O5Zf=n$u]Р52[ \E=. Ѕܠ(LUYA p&:k VѡnH?,I#v7Q)}C߇@͟XFNJNdH,HP{RVFI@lW~P<97(}u]!gJ/=lIha+vZ'GM$\d yC9A+ElE#Tsin]w@k.ŲUS\ZQ NA{Dh7C 7:N+}5/nSju˰WK2di}7.T(>̚";RגؚP3Wϋ="8"{Y=fKw$kOըĪ.o&;r_r י1I`ğ[u\r֢ ۩.tNV2:}H9)tR#nkYMˡ)aR_Wڟ-Gq]K2Ę}w=+`ͨ c{\3E69y;Ke![jvbh!+HXډ]?^R rUJ&;w`dEko)fs?lNs?7Ac YcǢB& kѴ?b!kb>pXjy7f|.ߒ aϒ}uΘS '\jӤo}pviԆ!1f`g&K]lFCjZ!o8bEk[iw=3.T?G'.J#bpLߕɾUy3QUTaoeeVuv5Wȕ;Z믨=X8#e5'WQLBI/jUkFœ;l1nyP݈q56p6pL[Ww8їj` ߑDQ0w *ѐ9P WtPEj&#p 2GXnFȺMWAlu0< Uhfsp~=c'F^OloB:૗rQ3g31Ŕ +y΂yM=Co .Sgv8v '6xBOTMEq^ 4T~ c>FG)RB9-gqꧏ,j3NPkYbͳr}dMV&횱P@ƶjJŠAw^P=ziJOF~Rn˲L7Kwy׬RҀϪ1KHGtƋ'|,Iaq}ˡs{kNƊ"0m0È<~Kh-_lƟѲmJosMѴ[׈rN8W)h0 f#rk,9\odKQhKm< egO;ȊDc3̺6%G 4%$ddM:7?A -|DB}8\kY#[t$1p3'ܮLQ F oE8gOT_s;fh|{p}.y4bT 3_i'Fo5 Ոy/oxy{Sނǹ{2H ! .pD)" z];|SD46Btoפw& D6AU.ہW&n#z@dy(i"?>M792'ۥ ~2F&Ʉ,Nj&H$p;2w׫[}MxͩF2oшf}"-a>a"^T~ [3j";a)~Eؾ ZM Dt(V6SFoZ[FiG /q^jPzE.O+/ Z|1 ̫Ӝ)f(OhwA_aa/jO 'u-|eaaw r'm-Yɉ?] ؉> q.㈔xi͟ڷP?6K<.{|(Tklu4ʫm9C x5SwvA 1|ց߯̎e(qT{01~|wG ;o걞sFu-t꒟Tޠ<8"BpAٸ b^4N)y8'"Gtec9˽-%Ws̳?:%x51UPfkNO`YE&Zmp0Lq6jo%|ik M5ef}2Txi J)r/ QqjFh )5@蟈lOϳ>DmY1ͮ G[ D,ĸ|(_pU5GX47/ bC;``P=oXKhi|.y2&Be,P<;p8_.utKn!E8R 4g<^t _FP x5p! Re%}vV KB8ʙrP1t?ovfxEW]H,Y5IIS4sW.=u|NRn_~t*^L! KXѱSMоoM-ӧCC*AMDqmI:Dk#::.kaɥ/2Ȍ,=vm7R kgAȔAPP !I0W{yITdcBCźLL2I<1\cA;LټbG ٠5 *UZ`Ƶ\pJ5\oJ~*{ ƫNmv 0[֋ IT_b1OX=[܎g ث5% mQ`dLo)aBVU 8:Ōh#x~nv]%a!)}Kɕjp>Tuj"PLTcvrJ_ Ѭ==Dx4\7)tSd!rGMm^jbQ9/182{y1GS1D΍r`tSBGUᑻ"z!._9ygApr^=ݸ|#nUr4Yqk } ? dEDSc=}?owƻse e~jRѶώ8ìߢVkBn6@J3|}{d̃9m?jg @ƙ04XJUnX-@S"ep'_(p[]2ђ[O* Q NJ@4g  (*K?w sϖm:SRؓ ڲD"9 ͯG1ew #X7RG.v7IjYa~\qߘt'UKz~D %SG)*LvGD? 4sy3< > Ct`T>++7Âva&5(XB탘R=VlZHBVb >a 2@]aj#YPV/@ut4_KREk&b6;aKmo,-ّLEP!m g7rM@R&mQ#z$)L%$ 9t.r_%y#[l=hv[m{ ݈ J2l||iA޼_: re_oD%=Wf|.wy1grGLRowy$P;ŨM.{(vE;bS&A+ t{JmB`&Vk̳0־X,m!Clj:LkCTg, ȺWW8?H&ưB-Fx|gj͉/;= 7%bciRNwϽ0iwW.Sy%`n=!q$Rpij<#/O)G8UK{0 Fb#sY-7$|WF+TTK?P0ʌa0s+bwa>;dfjt#) :DIQ9RwʌS3K`臮\\YOz _KTZCfWzO[b׵!4絗bȸSQhcb29*h N+G-@l68GTVe0'R+5 \D;v77嵕̳9}CvOO8^I @MF\|r2S5)9$Mb]CE ZwO/_[" 0'e8FG+:=3oj _̓$DXGLډ Ҍ? d"W,N=6Xthe/M֔]J+v7=b8iGTwhfI,MW >|K<|}v5z"SrM24<<tkb0FbO7~H˞^@ݚ +ےd[ܬfhV~Kƈ0S"tSL`w$÷u{c ΚV Iľ ؗs,RO"u_W߹:T5jjv;TdkiN\j&9)Z7"x 0=PI)ZkR@\Ox0;Jl-E!{G hyiTt˛L؆'?946o, Ϛ$4lU]@T;{Mibs]&ZPӬ3.)s1ҫcG\iS2^-;{@gt΅GS=+b-s/1vKb1W SomQW 1GhV{E~l[hc-KI8brEX&U;dxͺ+ĉö)r9hu47-~)J N:H/W_$i:~,O0ꇖꨇ&P!)rCabE0xvR@t6p0Eg+7fp:Hfx0ـszm/NĔ=t/yEi #hS[yT&D0*)d4a!0,Rg6 O&J6 ۻŚ/F+K `z4SаB!Q &BO!e(<E@(ć,z >ccF!N>HE/ f?(O8w!Y bHtv󊴌2L_\s)8N ~2lPCʶvfRq4:'j"P2u<`A!  Q`|y,yob0.*p]zUQ\~P9 P`'@TQ7Aa|f $,P&p>*l=vJӔF_/Vc5Ɣr.K6lHI;䑽FʆeV9>+ +mx&uZuW!dr 3~l4fa}<wLsHߎ}tE\,,.YdqIX9F =VpA\ ݕI€^E}:9"Z#Cl~UHX l= Wr=[#8ʫ;~\|\j鏊8eX<@5%KEB#BΒ1c02<~hǝ 8LN"[]X3'?|yE-H"yF%h))+Ħ+)3]du dIiQ[/$POwEf|isf R24u1dl=K(V==$"+t-?5dz[Va;LOImڥZl&k`"P9+Vh'|?WKt(.I+&| ~xceB!V2AN6U>\]qtwE}U] ճh- gNUoN _0ŬhEK95)I뤢,_fx3+"I9l9hWhGP֔W^<ɿز`QDA׹f)J:#XwwuRߺ0%QӅ. itT^ iygo8R&C`_FsF0bɗ]$H\*9xxf IA:ȑus4Y~3lX~\xlL~p;/eʷ1E3jU|7?Xp{ 3Mj<=q&g"!(}0ś)X$3^eERy8r2m]Pn˪FkA9 vMœ(ش* Z~@ [;5'UM@B+ R9M@i{*6q/DdL9S M'~ԹLTN7wFl-;:X5~̫vé? m8 (J8ݡ)БhI! co(>ͩ "+D{w/")-U+)KI !^D2[l}rr͕g/D~k!RFXCoYY'8 e>| -g[n3j>nF@l [zfɚK0 %\¬.loBp^zNVL7T6#;8OU@|͇ κY*CST2-+t;6rA["-v&RV얖Lق;*9b3UsLwre6!0!MV5 XwPuʜ@7p7la[;S'`_pu.4赟)e|=1ZH?{2*ؔ{ź-/=_sTvμ Fiv҄Y]TSI|]L;b!ôx]H*Oz<*)j̇8 nX} `u}̀>*Ќ$H!hjZ6B|Gqas& ަ n웂 %DWX Edu{S׉o8@q|ɸrrP@AOS jqWF ')MmL!\NdYpϜ)Vzb6`cԷ/>D}IkO`QXSw$Nҋy}1|!&\r0]q sa3E mF7*#.Vt9S9pFHgV&Xҷ4w5NlF!T /P:Ƈ@pBeyGd57+8Fe'3A`_7uGm,c&S..KdeGT ө޾2ﺂ'Z* _md> Kus2QΓ9k #̎9b=3F*v)eKb۝n}W\ s"\j"8D>ގ k.E`@|\jpUWx_ hzucLU`oC~q+2"^[(AƯ:}ڴb$^J㉸P jy^ VE퀂UĢyl_}f+ܪ`B4(H*5ml xH_oчveX](.1}1H=u_"-gqj`/);y~ ZM.+*te'*IðE&d[d^m| d˟m-H hR[<C!Eui^]ivUߪ}Ȣ*3,@h8Z4ߗhDZٖ8M;AnKWsx!fH34|ٮOܟi[2 @^HR;lo+1[{xw9L( +<ĵ ӡfki=#Hse|h uU4׀Me_G(%qȍG3O܏( Ax1:F1Kta勴blB!䄰Rȟ|7 akZ&cM=:+do ]cl vhW'TwǎSnevF%{( f-Ic߆ohj_(klّ? 2vK@%W[\$,] eJ#oC͔$"rQ_ a\=ٸMj`r,ux0#b`Y?ěM|S;\HbԭYneZ {t8:=nk5P3 G fE ᎿCTD d+ 2E 1u9Iy$oR[_u^ F"95b G:\ݍ+ HK 1fYUؔEҔ9m*ӭ|?VmcE`ۻDv[cLNlO|fJNXFR"dY#+;P>H֓,߈آˤv)zt1 He8vHDC[tLvF})+/itRA̗]:h3R;sЙNQݨ`ri[9GgCљ{o`54ZASNnu-{*EJB B2D,D)VaL8ˡN?T/ԙE)43* h<SzI4xâ\3}zr\,* i=MyeǘPx!SYÖ!\JB͝[P(4l5:6DYؘlrvEkE}#%pF`C N#ފD.` OoE늦Й2:+nSY a䈞ɭ"-Bt|B#{{.}~F꯸>괣&ղ$a [h́@uY~?߳`gHDD~B(x~bk! Zk}~oV ķ>l{T`4΀XM/~*j| @fUЛkdSt}ݘ07mKmn,keϘ 2ǝtF#?R_B`5$:G`"A7O_W9TȊ}r)B[&ï~9.V^PS<yU$wUK~8>fz+6!:Г\ٛ88͚* ˀ{QO)Z6<i ʐOM/pCk=hP CF>e|-Xȝ֓pP)7@[`ڂ78aTw˒0t\Ё ƪb o.ToM`oڿsjY0V҆bf[/fuU[#5Dj8 |Q[v}KThofo!E)i&\P K|xl@;h46;A#3猁xCO|*Wݙ =:(Süb0,7N$qlNV^hq>۫ڬ@ja>Ħ~hi|W;p䘔Qb{0۱* >V"d{@tuS3w'$*={*howcft&HC@V}!ѧpw7fAΘ !jR5emNނN3U&$#1ˬhq=qgU'k, &~LQتϐCO?~r#OV(д҇<71xK^UU2FjcwM2@/̓N!T؅q +B5힤8@1ؾ2^?g<гw3_neEB-K{ߠiPi%2<(+цXHP]Xrj;kRO`JɆ2>6?/E&H*i~%q٠J1 Ә 39AD3>HSrF̡i"|"D>{|r/c"5,&*5 kG2yF7);i+8^ec7gH $J/ ;ΑIȎ{1;F3ct$:M[JyC#F 徥B iIΧAj,g`h|VN];J KjY-OdpZ~eHOf߱6yb7KOS*m@ez_@g <RơuA."ׯvHb5'6.EVݜ ~<bMFh})Tp(y/Бvo f$&:dbnU!Pq&}&hR,}&%R&J /P`i`ֵNJk,8ajt`?WȺͰv鉾M`ۍ Xvح6&[D,+PW=L?8PDpė\mEO߭:[dR6˙f3kù[zqyЪVbf|c$(4\rbZl% hFܗ)aI.8(*H7>)5`:7nx?J/5E } &=DO?>0֨"hSɽW$wJ뭕: E(̐}B%eŕ_\aL6"*"dN'i8NTFG*ڈF@NBEk1) 8xŊYثDr!b|i81O"ٛGvʲGc[~c{w_[h9d&ieQu4OI+´HWDѲ"Ӣ*@ٛȜ {uXo *{P{v9Z.}TD+6)QxQMœ7$8Bo$7|LEZN[ե—LrG?I9Q/wι˗(IX;OwzM~j inLv/{< 3ރ;{ 178au)&w{3e]>xo5pƪ3jb,%:ؿ5p7ľf$@YXd9{L}a2_]u!h~g]yFHjVP8eZnI2;q566h6KS91[Xc L6 aE8Hw12|"cbM&p0sg,7UѭAm&D,RsPjA#U3 LnҚz. +j[=L~5n(>S"sZ@!┭qڱ==+ 4mVeEG]]>5zgNɁL~j8OT8VќbS%,:IAa$5`}HZ!WsH"(zPArŸ{mK[]pمcn;JT753PN+.pm UqX.KOuMrI0O7#`Dw:;E%E7cMztG/ESڢ7 yJ,`Ax0a`W#lxƏpEhLJ=غY_eR"BlP@,&dCJ xK1$c4ʓn"#̝<3jCW׋KCy$^QW.Rka{]\X}WOy1{p?}9$ITcv<ӚUOPLW^]Ҧ `zǠKO+1|@ˠ~ XOU$>q:e35) }`05:M [V . ~3 BP(8~œk`7_,J|St(vb|LOukuG*k _\Ј]xA_'=+Bئ@)}4 =:u|d߅E49xBeC)ב!QyJ:냓;܋H!;YJAjQhtiuU SC?}=xs9Q }]`La]߬=S9 qGP'hOeYLnJ 8l in\(; DQ c)3К0xc4 w'QL6$maT1ݙdK0Rpogz/A;͌9I/Ӭ^uet[8e]fGj J뚷-7IIlYR; q2:,KcT4@:Xoϻbl$+srUW rc=YhKY\}uK!6y:6BE4l^3븂Qg N&>о RO~P38tOukji@'q\}zF]h+,5o_ 3Mz[79imn H|]}b&7̸XcYe2A5ģҷ~8+2%l즳oO|d'꼝; ;xq5K֩D;ך@?d -s3$fbJ JW{=k, @bC_{B>QJ!]bM3x 8~.F]MA9[xsԛ3H_1l?Tk|'ѥr\J%GyZfu}h2W\CWJifgCTm^s6 T#]ۻ~[%84 a(n\YF}yIx!8 ~PjE'A -,ʶx^+i̕A6Yg7F64__f^r;+u"baE:.OǹI -v}=t&n"=Tq UQx{R}+zg8K,I:2Fq9893g*:5Wv$_Q* IRUG ;>p3t* p֋G?]2sM,̄] bLu?7ޅ$ߊxk35gM[ lt1T:{,@S^)ځ]6(פ>9DV <-bU[!x͠\c g30QhoExU{"'0Itl @+Gn:!?Ra0oa/LCA?Iv^۽T;uSOd.IѺY1~UنmwU(NڐFV2_M?wx2_RnƊ3M6YxۆgrEj LLڨ:@)A=[{wc*|AS֘@ B7/uV/HisB"zzNqb:2b* -xV/Zn8ëF OYRiȠZo :$e趫np By`V}-V\Fҍ+폎][[>)6O4 oN=0c5Tn}%EzH4HTWƅh^alV~e:~;&ֺzЙlt:8(S#yC,ow=sRZE–?0 AWJBO0.#&~`8 lZJMᝦ2ѝM{˹Ezǡ[.\z^wVQBkM ?`? :lw%Xζd!3 7FKw<~fK!#,RIQ l!B(xWӤ!3/R|"9W`Jz6K-6nN-/ψD x_^75;P['`, &ϱ[?U*J^A.gdmd$-4~äN‰"J!9 I.0Bb̭DH&5Ҙw;4ݬh2FGKHZn؁!"#G,1?I/]e)fAp};Nad?w20cAć#PZN^Ue+|uk"P`>WA1TrC5:nblUdR0 =l#Z ;zU1婻sOzB8Fx<'~M/g ߞք8]  yN!uqj6PsPN%Jh ? nFb`9lOqJ8%E&J-KHMDce߁a7LO4H$FUq^l#igWCs/g(^bˡuJE .UĮ趸QZ#)טRqq)cR9ipEs  t 8ܗ6J$cK)L$u_dֵc%V$n5 Z` =36eSwVߞ^?``\V7k2Eɚ-!)eJs0TܒWlPZ q뽠^%g,/XG==Up>7M=19+!ç-׻4 1+tz [ ̨^azéEtDJ0FvG 2W"wǸS WvժEA44c 63m C_ck~r4zTFl3>zL|_9=gG'$9sRZ M1>8N~ (RVquj; j񟎎])7YrƩj#%L ] WaSZ@%]%W^OҁeJ@lm+f枦i%Sٖb#/8棆 ZcͶ*)9,+ǟ9v8R  sdDerg > u>qqUV+R)Zf3;$Cfi݀dcuAꚄ\uPA.l@o<Ӎg?2 ٖ_]"!fmT4bNvs[7b'iä,yX|%GyIq9(qBU:aEؽQ,wN a|jVm$[Id!5o8B5&T~)$:vRI$&p:^cU Pܚވ'n4`7z/]aa"J[RƸ!)Q>FRľt,@Q"j'U< S6. nw&8H&ig(Hb We7+hMW viWPˆwZLﳖy ]̞RvO#v_$i<nVG!< ň:Ԉ#4Ro-mF zp g 4$/N5b [,wtI*d[r7&Iv% /w[75O*s,+Rw]{&`d} oCw#ncV¥7&Ӟm'&+{5SZ9K;IL<"b~&TG e8rKAtnS:Z}473.PaTP]Xci9lEϛbvjUkgۆڱZ3KQEF*4}'Φ0 CRq?%Sx#<@|{p!e彝oC@jryę[j^aӳѰ%9؞[Fԁ\r1ܲ p ʈ]Qu.H܏V[3$^onU&qߏt0UE3}oP2)3"KT8ǰW̼Ji} k7yl=O^;XiΔmN`{ 7`GWB|À[czv:*&kn 3DqqR<}biHON#3xiك=h21.8=QB<ϔ@Fs%YBn ҆TKӎٝt=]m(}ݖ<}/Y84MB `n:v>1' )Zm;Kx^!*]yDqpuPfUAI!F[~&ۀ <#8v yJm A*fPFGYx w:9zKНի\4+Ee(ҽ/cS bȟ~,C8Ye6pKbKwm4G =(Ü{K׫w{-l'kI l"]:rn&Y8+nJ-k\c8~Rqrk'sƞPuep2yCحޡCjn}ȝo6 {m3QYPH_q=)tiP-=fr)mB}9FTIa?uZ5>Ad3]4~)Zk _~yd.?0ƒ l9!nHlb*Ɵ}꬗]F`$Z)6Ta,>V07>n]U'q Wii|ZB5jVX ;rʼn'1 9% /GslwwL~^QBDQ^ޮQr&z(@HYE^sS,ࠣSEa61-Jx?QPOs P|Y+pCaԝu#Gw(?CɏM BJy.Tη@ / |f -MNb7xe"HXz0k1l8(ޡ;81Z fХhGÇp FtFW},hvFn˨~}?gG j7z rPv;c!ԉn󳞺.׺'HV@xPqkRUC)KR=}ohcOES!T6s)h6stP&~o:-!c3õR)2y3KHyI &dP 8s똗.h~<0SO{_}PWQ"T9 \^--a(n;["H}Q &6ޜc$XOMR ˉD6S2zv6Z92f UP;*lTKfC#MmRV* -rԇ藧dyGldg+k4r:T,Q*j v5ɻ U_ 2,1<-5Uaskqk6gzlPEQi##YA De3.~+¾6~R|c0 J ^;,4{ϳXlCq`сGJZh2m]BR]Ă TnUs(cnroۚdBw.G}N3^A]:~Ђ 9H1TKI؟MS`3dZul?oOv<Z!zs% 8|`JRF ~%1yI>QR sh Ρc%tp?;zRnݏ%F5a$)=!><J T C}fCf,rTE`d]l BĤ[WxMi4+foT\)iI,*vceജIɎxkL5s7=纕,Ϊ! FG.wZAwHsGN:ANjad u{hNgQQD`cV3L6ʈ)d/;{4'#.2,cMR8]6k=G<{9#/hoYs eU`md+87q昣ե'vAq Dx8hon7g0!Z,h5<$r7GI)gY^[JM]a$)+H l!/(yM/SoYhBh|B4^#c2O,>̠:}a9֚;IMAZm4Ć$e)&I+Y,#bZ GGÂ,\E3@Mv..xK>+a ^I|g$tPXLALS(FI0КlIő꣭K %dHo>T2)7d@v͕LNpv@ {`GᚋϧΎj_OmT[oN Tw ɸHF`=LPA@ENF4];NMАn= qL)fKq;Ng[ &, blhvgp4v_dODbJ)zB7bMvpCC’c%R3c?} P٣_9x_0[Vj2X׸APqއl(+'GD$~"Na%*˵ŌG>FGIp 7M r*jr.Q-$H2nT>ӎpA3qZJ5*28߂=riK-BGɩjշ)/2^+>`AǚtϾO_f|ۋ|K$bW"'C3>|ޗYU,in]tcHAES#'} 0jդDn?IP1}߳Upx奞\mwn:7+L7|:gC ](}APa+>4=`ؽY^@$*Pk:=o] }?"/$Y#jCcrS‹2id6c]^Y, 43` 7'jRa8Reg1+~Яq]dXqk7pkG^YnJWp@L-,@j/tL/h}`T[w k{W]eLL 9IY kΑl^i~2R.8%m[̹< ~v|NzKiև6Sy:t0'Zz i^:C[(= ݭ'O5}jsHH+5@PciQ(sԌ52Ø "H; <S{ʹ($rŤ(U`-3]GE-l1,ܰu >^*^:7ud3 0xcº#LjϾJn~zw\(2|د7(A) l`V0z:;9NW*K qb ࠬ Khfx]  v*4)=C_n8?G':5!&ͺŽQVc%UJO,.QvƉ r1\wne ü<7A\; h|@ _z*ꐬ7M_NC8ʟ>[D [)d%UOmxyS׼TX^_К(qՊ8Kc{TlWv 6G"Ugp´mwZRki4/)/2=xսnK`Rw|̄U'M|#S;kJ/l#DX>gRyLvz@~r&?䲆Aso(^7%:`j8(;j! {L3SSXxsãt~o˹+'?_NϏwyyznjGyOO3`>ݙ_ SrJ[NlDŽ'A]C Cdd/7t Đ $}'[ߦeܰϡacDP r}pVwzIQ?^V1Β=|BD.YY$c'}/tY\yq' }ƭlX_{!cl7#D2&8rbDj~Gcobc&{3Fcy%,ʠoĻ[ )$EzqlP)pRD\4'2>KujZ$2V#)DT9W;вDGeuUÂr[r2٠vݾNYI_߁J#vWN]Yy`%_D]-y-4rn, @Gm\M#+yw[svlDf8*[%6NLr c_.J`=wʖ)%z3€Y@D JK&xB3ly>- :&\u'̎8O#fo| zR8 .yj`GQȫu#p'X"+^S_]T}`&=LZ#y:.g~BxCX;Uk fm^bk[;唐Qd`LRvg Y_)&L @m Ros,YH[KbE_x"3/dY$V~-F)w'A Ae^ē#~e7LRU*Ϛ ZhLHhgTFgAYpɰq^5X9Bn\b s)'t|YI# Eom=Oj={n/݈$&6Q&_awGĺ< DqGfJFY2uc"\մ E83hoK%P&R=LZyhg1hOɿG6o#"&_b`4;=6f`ncwBPyF8\?Pn!z56tS\G:֬Ǒ?Qр@H;V(?6tM<-YVӾTt?.( u6$A~ {%UKP~q?M~]Q<2 H%ex+>.<ćI!9~e?k&eq7ff?GkKWk#u|aoc_ṋ,uJv>Iaj|"*#_쑬!8MIWE`d4#؁ ip*_Ȝde ?P;f+լPZBjq*%HV! Ɔt|zx:1=,CL[)ެp}LѯHtz6=Ǖ;];U}k-hx yʿ,3Hd#zlG?XO4O|LWᑐ מrW\r& j yQ]6W1nT!X_)yfg vNVI3VqH~<+{Pگ8Fts)./d션B躜;Q{{̫Qӏ@&v;nSv ^gvXr@{b+DYm$u' 5K(i "<(rΡhQ__Paq`)/0 H/sDHƹ7Pa?S%|2iTj9f%[J3h.6}xx (s$;=//\nJRUh';0U`vy"oJ*Z~i:oXʙEx8$QA\7&hTw+cgk{XҩwyUo^ԕ؍RoSHTGTAV>k\oy} kY P-HTԓ\60L[ؘer6~~xf>ꀨOz<:Ux L1UG&,l8CH`A)08(/R u8Ì|tywVBBTynbuj]`e̯x9{;jxpME}ïhUȠ;pr_XD ;Km`{e/蘃 .'q {vdz~J۱D^vg)@|ޥ VԱ4vduÊ`TB/ˊyfn#a:U*Y(<\l#3%T"{{l,rQZ1~勗+6"C ϕTjP%߀%8 A,3'(v|d`ᚻUI 㫁@-r&h07rWi*r7w:Zsćpֹ-c`Z 14cʗO ,jF,Jˍsgg LH)=VOO^mBq%_Q񕮿i](RK2jt"6W)jPhG懔III74/aD38@g9;X& ,mUn {g ( 4(d@/99T+45ĠKQ庿֡xcK?/{,D\tKzv8C(e{WCù%G5&P}xX>ݧd'xQU6A#!ft P@{M-!̗r{C4ᱦ}L6rbn\_<'뀾fY5$Dbͅ[룺a^#l:rB[-ÚD+ƙddcP>|\${.p~(z=ya(ؓ3e8A*Լx пFUCm+AŤEd?ɎMR[=?~ :jTƮ06h\&se gMQ/cY&YfU`z{(@ UH.TK.LFt4_v+{j\ Li䯒a $ʼn':t\`Y_CV]dԢ_Wt@JyGES@pNp]F }VsCD {>ݳjHrVhfN6.ڬ8mJq\f3Z{YetvN9msB 8h N7ˬ:sSFN@g }'Ӳ9}St`/׏w m@$_l$E*e5&BX:?1v*Jݝ?:w߱je㲐r1)V`&8։ҒUi̿PU~iyrt _lS,-B3~ff0v%1A8Jt!LīXIn2Af*#W@}bl@޾ѧa%hc#}(2-yGfF7)9*xF`wZR yl`t!3"h0y>;(,;j_5!F~E-ǖGkȞuõJ°v g0r{O]N+[q*Z|@{镳q*SPCYH-K-TfFa5vCEV4 HmM]J w]dϽ;HQ-"PGl4uDQT ɻDYAXOȗŌ3/l&H }Lc}tB'.#VB-24("Nm-Ftήܷ~=4$0\U3h(V7]] &V=Z\Wn{ٽ&f9`2 o iS#>!͐)FkɵT3ߨ7C_&0tagLOQ;6q8Dx scrOEѣ6q6G9\=! po#yo")@Ȓ63*"\s@~aԫpڇ4H6@0WEa~TVz]}b9zd&\YwLT"%cCPij]u:J> *r(?+V `N(th2ox|?mqEٕ{Ք o7LR@=$Z[x ó[``Udg%>G 2H-SƆ3Q>)Oͺe߾qx6i>6W_)ZP^pQ-=EStQoe7'{d1ݧN^h'@ qW!F:+Ubmk^Ay"PͰ:^C X?!!n}1pl7l |ufC? eun ! M*.6{nZL)4QZn\U X)<.v91{CEu@*eW MwRq1͟vsx$j*p[mx[W"@ m\nܵh=&epllv{85=s'ۋbJh6tl3T6ygasO$c.5*>Y8L6+򓅵հb&jw1IOo5C_uIh(ۺBɹ_]| g^lekژ>2t~9X Yp9G_ݑ#J_ $@>M3Ϥ&:7J_"c-'4"4Iʿ;Pt.|HlDӟU.;Z!ilz[t$'yC*6k>q).X|g*3T%T_NR>]~Xw`c'/aRȦ)ofJTJ29+=X"0LرWv/fuˊh4d4i 2C43DhR>ךcWh0VTo-;$%3lg7f35Η_$z lyZߜ ~*}b*BU-G\OEkguی^Qb72xWQ2I6'P J$*a%٨FJT[+VcusL?J\r5`@M04J^ gxDT$qL1e֭|om@N[ag-y 4%QvsjH*ulJ}a5y0 Wg,3x9+ . -=Vn>0ud\w:k+,EEj* 8ʱ8‘tMBE+'hċGŒM! Ý0{"8gM) '26bQK) I(v1eH++<Jeg6{ ,pz}(T6_kC]LT0&S@G*=4>|Ljv*QwvZf\KHb:72-ɚo!Q?OU.#0Z3I+S*h;Iv4*:J2 @ۯ }{v;K'(ueMK\Ȍ@}yHwe͵ĺ3hMy œПF:Y255ٸ-Aw%]@W,+3GYLgn0n;{R8y$Boj)L &'_oy䧤SNz7?K@>G5rdg8!14HȰmmʻqmT| Y_ƞB a >2+i G?^DY?+>uVx@ʨW@h4 Eg)ɲ6R! O.V/xg$}{qӶn7P!zJ],2dT->mSmf0m; )%8vl7pl A8;>P z 4"QY5ԓ|uV#JgMNRhNg̶f!Ώθ<0licpԵ~U\e^1iu{Hp& ׻^~EVe%~\|qNye6 y:۽GKPFs%ބL\0I؁;X_#*{*x["z*=7Q^ζz%"P(Xcr%qYY؟068 |%3uquS _rYf1)dEɗ1fKi{>OM2;KNSkKL86*+=at BQ1zO!okz.w{A ? $ ^~͡)h)`X@<}')wSRY Rz39i%J$El ۈy"5S i7$amO][:&5e:@L1rd3 )D =9ܷ|@3 ǝ6@z^5 :v *_lIjbI1T}'&+z Wt.m9[HtDvaW@=;Uث: yZGП;>Hx'$ b=J,I~j@]/ÙlTl@MH\~o<95̀k3vRbS Oˡ ~2.ʼnoh/ )2RۘfM^Q4${L1!2;2.Mp5AڤV>n*K)0gS 4YS0hJbeAnNJɳhmZC"IڠծCz~u2K~C#TVu`]_I.@r&9O*6{JX-$.RT{0C%I"kew[Gۜ\ \pS's)VNdyh<-wT:DiE SDO= Y4^!HF%g l8醜CK& ;ZNfư} ɑYH$ /F1j=HOͲ7͜Sx[ZZWmdyplJuS#ݤRCiQIcqgE.:nXrܨ1 clFTO䢫.V91{oL Yp#qi,kE>[QNX^RGŰk~pЫX@m`R&RTw:i>dWBP'GjfIGV@4l;IJ}W  Jf[6A8_ϐ5/Fݿkt4a!i lY:/u$*y,CdTE@dxQz(c<, ZnXoI4ELyc콋)-j9lk*,ة}11ۛl֠nr#QeE6=n pX4kE9>珞]`' +s#$vE;XwߔG޼=z2Yy,3(QL/(C5y0ƕi&wvy%zPp/[;͠l]&žb[dYjz_Eaׄ)x5 ^`D+ֶzUjpZ^돤ZAڥrB .OKbr95$v܆?PCKů? hE=4 ^MQoV (*Ft$dA8LRuz>Wq}gKj/=uk5BЋL~T-yDq 6(&DqZsMCC|"O/Lo|7%R/x;u\"xUi#eP_(,"&eaX"ԕ.#|SqhX|e،6xQ_e0Muz$8׊M5[w:H`G]YK52}=5뇽.ESPٿBa%'%Qi+)jV:L qW:ش$$c|2t$>݆2,h~|+3 RUFVV/Adʼxj7WQT->U83?}nJ3IX= u@m}/sa!%qIuYoL{m0i,9Vۄ  ^QzX[d2N_o eeMIma{ˌIls@eh<-@'=,k!0ԡ`ѱtw #M<竄Ro fSs?kmA]k+}H"Ch`@ۥeVyzT77M~*$\j/9s;-l[igGt~;H$'caj5h4~޲~l8ACL6.h載1)`B ;a$>0jb|;m pKz)?#Ntǣ*/mUQh.FM斌/Nڎ y`Q.<iZ2Ǻn\Gw|ȏSJF8GK웦M9`R+R|8v~jqa =1Ls͒V͉ɐs곑"2\:h^>HXJ8e'4tP<ة\9=\'^ !$nIO3R# Y90w Ð\W.6OwQT, \ܷq*j *n/6LTO~2HdCJ#kTRE1݃6 ۃNhyTA1ަ^E7^kN'  iyt+x[>l4էt.:=Q3Kmj"_1~ӠoU.ҼԆkHdI }!HD1g,1ʼn d6#sU c4ⱚB$og?;Z6lȍѮ-rףBhM֦KM13u\Xeb8O1"(lN[;iG/$J"vC0f9@ࠎ8|H)yuma WeUt붏/cV-(ζn2);e~1i{'֛ޚw }\XVԂD&#xcR*gi࢕tKc8KAV'A45-ɌIV9ki ,t fg遙8i$`ɱEox`5,o6U!c(]K?φzr౥"=>f7y4v^z෷j䫮qrTnU/ A*CD8*~3[~!P NR77Po65 RUa\.4S~X TC]y*m p(TTZtz̄fazJͫT(++YQ(S@W.}6q%eS/hrR,np4(: T>ښlPbDXH!^2*x<3۠{]>Mؚ_"iQ)w(-!,{Z 9#蛣d ;6 Lՙ 8݀Іa^Y|l+ʤfص9 oXz9 ijlu3g'뾴HljɤovN D% _Ow޽K}8%EZp7I( *e~(B erI{\ɡBcP\!%?Rm(0ީWqWUoAf48;( fX۵mUZc{#(OrHv[< ,{"}WJoOFljVXReLvCg(9ПO(׻Ņ$ ~dlo[ԯjc91Bґ&h|kOcDGݸz8wă9w9*ɪ.jԲ#r2 r}9h(|S.,篈o3H6re5h}þ5dw2zEI#8:jlyZڎS&)vZ`@'NȤ$R:7E&⍈ WuNoCL1E4/A.+f΁'|7e(THsX/޸|jSt̎f}N%/?({$u7g7 e&)';gTMw.+Y "DF8*B:5 v>Hx(ĕWXK7 K=̣k><aU*x?"iV L9tO ˓j|&80.,WKntϩL \v)Zw];zE|WAK>8c {&G,]4>yկ` (%K a#A69̤'Bcd*&kQUtbN:gN| V^ "M(}ҍ'axY.(vG$L 2/]",rx1AꜦe̢'ˊG@F:HM]K#wcj; /~4h@eRV` };:٩=y. qGOL媃BP02{YVroR?~3e \n19@L @e &XeGcSMRo I񘰋MJr;}lPѼ>Z<9p}U~ ddJx4!悭:t"(4Q9>:s5%MIjUԛk807-q2p3H3Z$\ILxOsTo.|JϜy#.3nY^oBg|B}CdxS>&̚,sr wu@\'ǧ R0S{UչƚHH=iV2M:Q ј,;$ƛL2HFkrZmj^V3< }&-G  ̗D`3 ˶J\xJN26ZZYh#C;`gr~S/7IHt: sf݊#lVFl\|l t'8*xL//VWԁB VJ2қW~hJ"rx*i"^Տ.Yw#¯P9\p;J?nU|7#`<#C4Z.Ѿ38 x"is߅`?L&/N%KF$Q{u 9xa#ב|3sUQje' j7:yϋ4SyR+>\,R16ulSt) ]?JP K([+`GўɣZ]rO-+F-:Y@`(=G1!<#'63#!p8v2r|(v"meB^[s[P#. ݭƽɻJBdpGzoC{;\?_lq)ŻڗovRnrq2`jֺALOn#>">{$O$&W}m|a'Ip`N#5-5Y׎ni[ wRK@<һ涽.1~&FlBN{(8W`VOKz}DEɔ+D D܀Sk_86351A]8h-h*,5ng{>Kس_X{mގOLNJxMFF 4H֥~>g[F+wӆ wH{Js%~nkd%D_XB R 0]tߑDLW2 #_ ՐFvÛew!Ւ! }ZXZrsI[?:(@(4%iEdy4HMac, .n}NݦLU :j|FFbOܔaq5C=^g8HoSXp/BT7m>z1Nkߺ.lCjOv[e|5O?%D(Rk6YYpW~-RT^i a9H8PgNoK(4QBA]&*8"UVh;vn׫\L@Kȅ)OG;@]||-EBf@&*S c}DU;Hs,8vqPUa`M{|֤+iil_C_3?*|X&oSʉ,A..]*/`B丂3}ry!BUIAQ*C]q BYl ^"[Π +H:/uŎ>ϕ8Q;zx"wքئ bt)$>g vO­C^6gC@0gZA6:}jj{FsuM W=!,$FHj 4z 7rITZX΃x2*}.sl)4ckrp@՜0)L]?/跱G4Odu~PRmf >f5&F)#k{. @V)FO=6[ԒXKhL/{E&/G3_%F  ߟs*GUZՠIcΞ;c${iAMa `+Q6]6$dEuFFop9v>фaN.".v=p.<;x/*rѦHE-Y9#3~k,M$!NN)e³ۥ2PL.=VDSҮZn? lfƞ4>='[YZ& UќDA c\O) ^/ |ToL=άًZ%8Ô]6 S\-c"9w,),4=1#R BZ\vgڡ[Eb~Z' yq*FVԭV$AdU?ɤ-\<78WQ?z˳uO`]XOɩ\ (f.;+5oQ7٣Ol/H_ES"sͨk#(W^f֗yrn6i3 rQ_F7'T\N+7B8kT#ª]j HI~"zIiS5>Uc3T< 7+(QLlhCƑrOw'~vh[!Wۗނ`3p1 k%& SL^\J xLBqo7i^i0F'tgOpc|iR_s$퀼-G)⒝T<`e[Nm 7lԇ56[$E1k뇐/\L~luYTKtD څ-U]8#,|]J}DOy]{;VwЪgYҞU(0$qFRKjNm^=c-nF3ZEԯԻǓ@v0(~§Kb40:x%pXbn9zR9\[ZUjufKlֶlE h.>ѿXA\-Q})X bcafHt 4`7a]SM~z] 9B!qP(O;<6!l:`|f}dOwI/5#5aRpݥ :}*6+o,H`[ZޯLi/$3S4ٗhaYx/z=rXݼ|P,lw[濭,M2騼tmysyZޅ)ËRR {a(7h6' i5nLhNmmfO $7Q;A Le1aeOrDG8;F= ۣx=EcMBq `M@_ _4#j8F͜ sSˠ1꺊]>mWGX X{Ҥ*wa.:Ck Ms[Cb87?ž]zu =!F"gl3!ѭo*d#(%Ӑ m<5,Ω2t~ȣብR{$M%" s'Y/ݠM+OIA ~s N 1?& zX!  Y6 &ֽ}(Ң@NmI]74}{&b_Iѐ_ZPzͳ/;pfHV GUۇY/AR.@!i(&|b5b6H)ڈTF ஭9 N%߼F%Elѱ,ZC~HL5=HsW*97hn˶Oi8HLw_}hmB9C .3F_G.fPrbY*,vs4dR÷JЌP M%r&1$ ;NL*n ٥i=tBc2^"qT7W/jMw2wb"ڀ?}'Sq8wZ yEފh"+,{Uy7Os]^KZMeI!0'V\]:QFo OjLV9uSp[C8hѐ1$A^M)OχJφn-e=ѼwWaW7cK[$fؾF5(om ʖ(n[[^3MK#5,qm{R/fv;gTѝjW(ސ2 B3jfcmCNd[B4]$G ߲W.Kȧt6bȎ!|!<gErL j&20=#ֈ*4X!iEΞO5gAsnR_'LjЍRVHju`m8eu9vb',\V6Fb-S"%U66#9Zٴdyı̽ Zwl2)ݩB7 sW>K/+,\'y3|jc]]z6Y>P0S}JrL{hKЀGoLRM厦:lcLEeOAe7Z ai![Ek z#G1[߬AćLQ,n455B , i6$̄KWCX.M,S `{H^C١/r}*(M0.%߽ J0u8I *,fk7 ݔj_лiAdmB3E8rYkCOA[JZ1U.qvgh 3'h3|'(w awaݟdCD5@; 5%Gm\,%1ͺn5d2Ou@7لvoCQɖ HlሠO{.8@DTqX`Ȗ-vXKw{?nI{χ8ҙ`lHkVRݩQ Z>t%jDH=`5i]$J-/*wAǏ*S41u*(`!(u|t9S?tk5](s,T\ª,:Tęiè%wե؄pQR:Um`z:8BK'$1;+.;~@lLa~yWTDϦ]i"]`Ĵ S35@ ibt?7َ톄r-T&FI_ni 1S$ELQ>/B{Wէ.68=_=#t{Rppq@ gPryͣElp/1 DE l~ ܃$ɖ|~FM }" 8 3{Ӥ/S<%kDµOqZKjZ! &0N˵IgdBd|r-Z?-C 2bڿ'$v2}O쬝c: A{(~ ʉFAR^I*P8nڮ>@_uf("E\47\'H&ED[[9Ù>A9B/ gԫ:9!}uQF):πvN.ja:faT@$usnɗ5~Mnh6`wpLsu@NL&+ $;+"u~0ZU}nYs,t8n\zK%2dݎENW5{-g"sh"߉>#paDtxJ=ZN Y9;4,~V+P?p-[Ӂ9g_ c 1Rr錀QFãxWҠߌI) }!`ܘl!,(ׁ͞0e>eY&n&'a&r{j֓{}5cm|sK)U490MgTΡ SRb5ZK 䁘@jwc_{8Py:VfRJsw@\N '$hٰ]XGQۃ4׻U@YuG^NΡ췎gQ"`%Az{y lCBF&lv ],[G4P>r,z 1u!!hԎg-wwTQ *J"o0Pjܵ}Kە‘ћgHDF`1mv,'saz`5`E/0}Yx1)G4ِڲln9~.s~꠽ x1zGI'phq g(n5`eUDMm\5LhM*ݩ(!.4ƱVf198[֚ ~@mMY+M;7}ZjiZ^zz0\:v2\{1v"pY \7xao$Agc6nѕ"skzx 1n{NGk1_[.5S.{>ipSer| z6O \hS\?q>G WR$)6g&yZx]]:2T'b24a!S;_Z{#ImB 뿦{*mp" lrItZhj|WVms6_9bõ+ȚXPn:MV:;OdBXN1${J!@po+wU43q>ٚ8L]RPQ)AQ>"vT)+[!BP&(_psTZ.!)`[g@kB'|%Ve(tDfsM*VEn oBjx9»^#?T_ϵ @/qАNܔR0GXpܰ}9e uHc#>ltG"7fU =R͞zxi#x͠xk(KnO艻"v\OY}&v8iؖ˛Q/ |)h8#H[eWr"Hu\"tD)6 _}ݬBÂ3WX"rRny]4B0_@Ki洵)Rlg GZ| zQXdE`r$$uǏOk1^0]5 TCA_҄8䞽G( ~ Hu ?5 NebTfJ/xF?RO}s~oY'7ȴ1|z7}f.x}-\ K~lߨVpft05|5zŮÔ̫pmIK?='T+{rXbh)+@Y V ]X_VYtv [}4Arf ?Ś&'8mzgYg/rQlp+ vpWHp[M5u}e %t0־hCz(\Зb ʷLٮp@J<X,=mD\Ӣ!_GF՚Lo5( xh0ACܓg2aV\]Dgkclx@Ƭ:c X2<&Dў0I~^l{b: f"I=Ϟ346D‡ F^FANˑ^{T5Ҙhd|n`Xt== 1?4$|XjRz plW eF:&tC}m55B$v{՝%QY.#DkB8y[ tQ^ɀ4M@s8qs15.wglTZZaprx4fgrhBONa_OQY29])&A]MqiQ$0fxFX߯P /;\'"i}v!qSAQUY{@qlʨ{ߗS UO#N:URKFfJ%SZX'g/X=:48l.yR9C ʾ1etd'ײr+,nK撜O*HT x8b3ro8+Fcych&o ʐM9A ƙ1)T*e^2d%im_pVZ`.1cdD92"8>vلnZ2ʌk7@ odAC$,VB$bӳx{uf^_qVfqK~GHW I팆钚&qKB0xXz d|#\pp -sˇ@d?Br3TVrj.ٌlTqD<:"5y=8> ӶV_鉺+eفh mآRrF 8u};#gaNSG!`b6+$S~rJiܾı81LeQ RuƆG];6济J+(K ZcAsVИW9:TR!o -RHŦ?rMAj"tmr Q[r39 l /[:z]qZLlH#T9L% +EiyGlꞈD6Lt"ҙ?7X&/:)QBg]ۦ->Ƒ܌s,aA^7-zpG4_a޻t{K(53A猑 ~IJв=nf#Ct(J8WsRt$fa֤$;y';LR{^Fxę{UD>m)>zHܨU#J$xvDHgiU7a^ ?T:H?bz:\il d5^~Ѫy OVay IYyl2 ~a'.A];-:{w,_&sի>3(Bwͥ}G>5Br+^]f2 *i3qa90Q tYQ|i#:Fٳ?7n[Iq"=Z"<,mz_Ψ]4'yCq6 0?((jhzǦ&xv3CѨ2 5HaܐcSߺjWzKχ=p4x!Ǫ;Y}Pju*f7׆7̤7VV>3vt;7rԝz>MV<͞wYe,1`aP~te.ncruM;VIR.hm1>Ik Fs2ÿ+e4 #_ǃaN^!R0+DhgU N #\;;,mBΣ}k1<_y<0_jnKoiY:j|PĒiȂ_40Z]XV\/l/FLWYC!CH,#ע(u3{Tb81eޜB/oKzur𸬢h*LߑQWSzY$K[S"et):DRE$1[_,of͙4*T0EDdUBH%`b~ABY{F:>y#n,*Xt .]5egb(#udPfSĬQG>RΥ'kȅ:tCXoƒfy;|ΣT>Wڰ<0س>RG̾EO{H .grqbUIhMS^/ t\)\vsHlp: fqcI'qZTb'DT6is`8ߣ 9Wh5ϝ(bz#pS7s:U3ϞO$p\6Cx|Sfe4:I+dw>Q0ok=!ˊU0*Kو\{1 OR|hT;,WÀ*`Zx-Q)%|M﷈:/6lj6.!zof]cyIޚJKO$³nH(yS'Vn6vOI-]c,3Ŵz%դX&];q=Km3LOLVҙSbhy&Qm[0Up?H ?3i-&'ʣ1s=6H|)Syy 0w#}tEY(O.ZnY?bsѷ9[(o}- ԽܚSxCr$2j o3I۱'?xYj@o}"=҄J3b4Q]ͲS uxC_C5/|@=,PhnC;X-SYXƵ> G@(Z{?ɺ8Hӷz\2V8 SڔqUXĖ(L'/`I|捲?R[PUU.OqϔZWm͐]CUݛ>O:N_glB= *':a 50a(˯(,X>Ag=զKSܛ|"[~oJNB#HTT*@*)g/w(ĴsL)|hl.)ƾYÔ9l8=4H0QvWFֲ@͚mcơk 3 ?wqX_Qژk[n G J.*+:8&2cdSۍ2Z5"c+/<]@Dخ@gHƲl 4g޿>_L/8>m.FM֊KW-hHa܉4,X.Wz0q0;)bo||i 62<<M_1$Dy@oiWACɃw=vCNLO$^R9σڡ7UrP_x],^mbm‡<`Zn!\à7 cR?k>6!rbYI":sS [4`ɪw9jӐiи)~l$ՑIV-g_d O]i{ M[Iy4 m%8;An:d*D-7lN;p?~7L݈D ܏4~l*9*UmJ■mNj f?mC∵‹~d+YL|sCi:~ӝQ]bb{vZ.wb'Un &AV_:48a9&GlIӖ&V5E 1!:'$iWٿ# P lP]I8QLB)hr0e V:<&XHo_w{O^~ϨYd?9 y &aR/H$qm0ClGM\KɆ"ި2Z256&33fSC/7|3n(jNEG=JaW3xD'frEk 4mM.EEAA!:9(5&\D௟e32<Y@[NxKjRu2‡V Y%6:HVmF;-=AmHK%DdwD>t+,nd3/mrٚC\5 z]Uӄ}U#rϛVx`U <0b_nW: C^ao󕀓xtź#^UѰɎY2i2ɦ3r&Xˤ*5n)p3" $FD/G[q^PW͏(tY066r\ɍO!mö5(d@iQdD()Ո?E>TɍV{>|d(~-`dHl fn_Wi3*rO8u_ 3Kh1ERrɁ3)V<8o,=Q)/UHWOQƷy-_tԷU |1MƆ)[dLSI_ϕuth*ID<7A\jbU_ip|` vn˙}[{kT;2TTA;pлoD\jϧ}:h7 tyv*9,S ^*cAm˷ED}S{vI7s H߹K'$42Qe9/;b8Q/ 4ל0M"Iڴ' ж+c6WAzO0~M])ɧ|r [f-c)Z<:yM))Aߵd_C~˩^f.VtBz  ^y`]#dqjF _z|zI3 -m_MFñP9WŜM(rT%-'%ZړP4%c h€(mh97z7 !4$FRЄZӁ_x)t_L1>N+Lu{Whx8W $ j U{lDgo*B9xDїHr{8Bd&΄波vuh }Fvtd~+oվLM屳2ne` F2 &_'9MO85K8_\y¦Dr.*\Z)caetΧntwiz%m H1O+?t潝/[/BE%xк9!<QQD*H U^)ȃaڂS𱅟; QFe]D5CjfhDë<.~IS ]rUBě㛚g)n5<2N:P=ݝGZ4rg w)O `]rP8 t6f|Ld ^:39&~ g-AQ-sS[S3^f&ʩ z-Co|eK&h+ qS>R{_0R Ca0cc&XXՒ݋.`Y6F*TwwR 7pBD1WN=>YIե.W ŷ%j{ o-$x3`Vܚ> 5N?i_*=ZZttT>\"*>xs%~$HxsvezLΛ I&F 痱 <䇘sgˌUFTm&c挋7Q<~t;rˊ! ox9 Ksnz,{=_ 3smc_­L:50tA-le#=fmr~-Z_vkuBZu})pz`.[Z[_ w6-ba[C%*A c fUm=vMm+`4p.lZ3Nqj^ٍpݼ ]c#99IVhJP̻4!A1a)wXW2\jy}|R66 ,eCܗXC>ar<<]p-G_64f狤XjwB|R% _[\kKFDYUC/g鹶ffpNTNAgĻlIf{Jځo;+Ł23CSfqRYPL?jz?XhE4%4A0TQπ~Z7i'xA˒)tl%;ޯb? ]Dee&ͷ8`!`SC?@}6zJ |+[f#ڽd-MN!dɶ\sryY#th !GY4ݭ00`MY~򴡗m|:JQa #6ʕ'@+6BaX34&(qOA\;; z,"*Lc+榱3`"2ڱ՞wH6 C}QZG0S [ʰo~0;xܹѪڿWfDUN>( M䤭,[rr(yDu( 1ǗPLzd:5㿏6r^{l0Rp^z35RE2"WxK4odȉO&o]J* )`s8C 6uUӥNv8z:BMky}/Ku`hv. Z,zG ׃G/%<ޜྸVo2Y'G5}Q5wFͼ Rd5ġcnovPy1vLx @q31g聏bq\3d xfn )oC#\By߾ Y6[ MZDDdbJ;ÁCMf|Kz&IYpLcp&U<',o9{Ց 9wdd{>9SĆ1N~E-_z$S)2t|L@5seI519 ۙqWBln $`s\%dJ~`츝*VMCVxAh1Ͽpc_h|*a@x-DvAcؘ+|,E{)"j3#oaA2!7#?‹`in\(|4rL,.b_ab@5wBy._müp,'x󺥔w 4Տ%nG> MTv`*k[w:ٜDknl?mQ0V1z"D;>R!!EN[>QN[`v[ 7#A@y[9THrCq:-QIfq!m1y:8$RG qz{_!I\~7y"d]pòlL?nJkq9FU`E#Ep(W]tp9PP1"Uf̃~j_^{`4*PK9ޏ:Ǝ9~ [Wpw/3Ub^m>LNC/!$Su租>;ZR $/bJQ>Fu duK'eZ:PO1{GxR4⸳b.9S,^!",݈Rϴ$qRЏ$fp|3$vޑ$ڙrwW> dj\@¡`c~:A,+ wuQxb0*r4 D|,Ѧ:es!5,$%mRY9H}Yz2PPļ$r _=b󴣅(8Ro_30NoXqeS| E9+B4tg(9L5;ե<oFJ)of=_6J\(uZ;aJQM^ܡc7oA6?YSu#Xgb|:B:@6r,fT.".HIUF$VGh[JIݣo^" 齜]0(5}=b KaLO%o,_=IO4>깳36?hɋ5흮ǴӾ\5K9sہW1j40C'F\\*0qmJ- fWY!AT+'B34y&k`" 2rQ'njXINi|^_0p_y|zV՗&ԻDzU ؑ>fMxIxX0~4B8:֝'NG 9I_/ftH‰} EYO;b X_bi(tS#sQ"f8Yѣ^?o{ۻ'xM Fwh F^6Q="aݜ2$K.äݼ7"roãתm4m.޽!qHK>-lE 4P^Wa΂067H+Ucs=|i>tBlK gϷ׿eHG񛎙h5P䡴E3qƽSYZQt0ܢi-AɬgNPZ^ c^_ $<dk] ID@|_LB,ߤЪx B$L!!b@/.o^`J :rjQ w-X PGs(`C>ւ3gGUOҧI[Au%6oˇI rUMH cgKi2Ktualn:C:LtxrpMW=$[^(`2`"TitG5$ʽN}IX+V2vާ9 K(A==W8Q{9'KLG\d.w N:O?$.UK#dFCy&ʋˊp3(֨|{C(/tX }%F5P2%Zvව:nq˭V;K@}tJ0rag)zL`__Jq!avZ2iZ jT6(sb./Utݔ:@ K1sl6;{Q'J˜% ^2 6S!E X%Q&ώM>c$3~W{6joɡp:ζvD3S#HF0{H =tr"';<4)$=6>Muqq/{]7&ы>Y/֓՞|-akf ^F>S?ףu,lk#*je\lIXBxja~@0޴(%LSMFr-[-넋ZX{Wq_.3)\6 Z2jK{n.j)!x*#)'yS*x/{ &C1P~3M^eF1vͺiT {[z=51ljs(P\>\AN<֊GހlA ʣ?lIz~Ck`P~B̸9xK6k-g}&y-P'aK3'c,At>xS ad[r2B$)(6 U.uȦ.ůl"&MOmGg8ȫˊf÷9ƭ0?%e)."tEnD$ 7h\`!=fJE@0\y ׁiJG_^ƃK2_'dYJkkHH~c]~I |ESϋ)egBdmkSym;íZC˒h PR`^iTMkhv:1AwYo+d.V.nx9cijtdq dCT# s?+A((Gtl Y >p΢}>Z*vt{B9{O!*q'$eC>oc(Dx-}[|23R)JK}9k0lHhSv)2ʮ5ɱ˧\iQ{ܮ6!p5Va0:XtiNJʸdHϬY7xa`#r>U @`c\%,?; pDGj@*) X"m'G&ok=#HZx^#BK$!d 𑂖eS$_dBMHZ%aIaԣOk;N'L'cK:ciy 2"Hi8Ҵqh 1ͫud#Յw@IF $Y;80v'6d${܅h:@U(]@Qʌ7}-h?M5v~+߈SIܡ{d>0'x0]&ݾr2uz)|Î8[Li eL",5^KB<\w@I%wvM xџƴ'qB)a1\Fk=5I`GSKk_caν(sM Q_&0zj P1wH!paC6Q',uVoT^G<7JP_Q~J!(HwC*H/ eXp1r짃G4a6?2 bWcl?7ȳ!sļ/8<;`QzGqk/0$,t4Pxt96"t)~dC|hAWe#2E, wGζW|=lF&]E0*_$5?Φŧ"jŮ޳'+ce!S{?; 1HvY9kODvdk"‡_'H9bw`g O{u[Y%' iLe(mڠsR "~L0n(BpI9Cۨ4\2zCº:r+@k? AsրϠ92K 4l&GLo9yD*zό\5}㞋VէF|ASOșv&'8@Kp-I/ *9.U<ǾcAdXymYl 0p䈛1LPc{Ǒ@b)XdwIm +ʜYеq9%6 {pZU M[2oo,k ^i}"uKa| G69'?Xurq]o$8E MOW5xIڿOΓjM_Ylxgx#>nF%NdC8EJjxց- *tM|:' (MpJkx~D]s`]$ Q.ҩV sE]v=,}WDnT~LʌrE>Κh[٬\LlY~p0'~"lQ/Nr `Atw}xc]~Kc#zw12QHY >4SlH|~nqBt?RMQW].k"z†+o2~GҾ. |;QhRT2]ŃjD:.V=4= 9N+W10% ITJzK#L܏tS FRY4!8tmL3eM%bmJ1(h;6%:n >x^T+98Yc$5V:QL 0/-\hG1ZJ\.!ke>- ]r]i0 QC0gdufJI)7Tz3O J{>öry/(`OiicuΜqqу 'l65xy7)Bf8:Hwx"6W-0.tvf>9EIn|Rd鯫X@![ΦYb^n:~x_Α9 2;޹AMB\K#{p'Q9ta0#𾅝HGDP],fJ{=pý(bN'Qy`g{<<+!~It/cgCTo{7^{E2{eG.h) ,XRNx>Iv0{/(-)\@aVJK+sWLQZp[)ٙ&,64 󷊼^s( ~ h 7"F({yv4Rfl8)az//56۪Jo_ Ōixc?[1֢͝S1Z$~;$]>2ADt?ZmH{}qx0YuݸXe0˭#9ʉhG(w iH "u/Vvnf7"O$e{9 ]vxլLp 8騫Ƌvp+< 4Wz&ݪG7w)ۗ|?xH.k9 ܊3=5·ȨYGfHc?!w=Qh( *Tk[10 ̸ څ(ED&70՗`PT~sj_A6TMxM4w[^wKͅk}$&cv$[w "JwP_U(?es'iǼ{oM]O&H"\k`6M3mkSɀ/qb@r9XHO_'[ :x<`L- M#qr -^{Svm;ky,nntK&ab@qOijzA8/-Z8:K!9bA2*+xCxӱrg awA]H"';1];E:rd™/$<7 (!;u'g^ 臟"I1aUW)?V] 8P ;pOܳO7 =ek1&EM\ YPm&k|SglR%?J%3uI[N%&xS|J ZÌ2M;7A4m)D;🐖M,OcV]>O{'03% [ Xmծ-݄fyDf>a]-goQ };i0XX󼧹LfGysc$buM}(9ΟʲMrW]yxL%4yVV@pA6dw Hq4_uݜ@m0qcv"l ,M8|x7 7 _#q3i(ӛދ pa. N>?eQoU? K=u벺@g9kQnP.>~@OwGu|sφ kR|кd{SZ{уej ڃkhxLP &?.r?7 [IyQSD?mOi]O̴cT ዀߏ)o˻.?U ,Ҹ7M7wմ *d8IUGxDT;2}ro_P:4ǼϩDd7=š1A"h@cy=K_$!O6 < ?nLz"+m35tn7vg>)дk]De"q!);XTCTBtǰk\6Zjs33墊`dH.GSMFahGe"&2[}[W%ܐ ^ZQZ\&7,N*í P >A  {ֵS}-䔡R̟ i|>9J* J#y*LJz;g:@}'*qi0JG# (:gzg#YOew*3(/UE>rl,"=嬊>7w fp𡁊(%[4qXIશ %*-8Bz2$a$;+ԖTa8ӓ=lJf'rvf>0(}_E!Hz0.j0R8|iYhB,Gbw=YТjG18DH-wgKH\%)Kg]rͅX}#Uߔc3/vGfPJ Mޥ~,G2ɷ| N-;_(S> Ƶvh[>$FF1TO ?Lh%Z;r<ȈΛФO}D8|xWQKΊKmAEBs-t:_Is]=a<x'rMNen*݊-Ervg9Tޟ(,KWf8Y+?v7媛WNIzWtJ=5S'nO&CY"_ pMSkJ񧊵m|.ӢwpSJg|f%AiԊ}e no}@ 6dVJ1%vR  Pov_H\* Tؙ=媶8Ƽn$q$ :Z㜒vk<6}i~e4woxnT֚viX+‹&,|͉D߸mJ4-C.oڰÇ1+"RpX(R".)_j-fb2xmr'T]kV9h[yTu*ܒβ`!J~䝢bt%b {scEV@4[ aFpdefnΌ3 \=3KtPL̅rVz;62B2)eH.3߰ajjj|l1 m|L䲃W]H(R_WTicU×w]K?ʾT{ө&:N2LG]7@jآ\WHUh/WVբp4 ,de1Õ!pm}#TQniX.H&o *{Ѷ>cxphhY퇼G$ѪoN Y5]e; =jf]0OT@͸R琫54Ͼܨ5 00w8i~>t@xs,$~ }G{n^VJ{ !C,XMrtVˠ2 K|N,)=Z1s<;@Tz: D}CZU!#9X^@Bh~PEDICΓ@?4y9T԰O!7v r!ou`~$x1+*6n= &pb{]+P"v%|٠׾K0FK_n|U Ch >@-7 HMrAqKn½ּ߯??rOlSYixAmLP^r ;,P+<ߓF&9"b 9p܁$%՗nu@C@R%vit`Ķ Q cAgMg]_' i/d?Z$.'M7p},?Ky%1#9:FGGUV5<~'__cW.6]wJb2.nwgFI3Djkeq_.kB&`fCdb4ƆO ~{{'iw4b 5X+L:+kf TMLɆȁR |Vt οDK6h@'ݽ]I\} z5eW{KX֓:jK} H: =4b`lM `gmi7_3y6dy=U4#c7RG!!|JX~?ɛm-SQSq8WG' a$ǣM;ok59ob&^5܂Кws~S;D3qȉQ$EʜCr5>tI 鞐E ^fWE8[S`DW^q1 T$H*p:4+ס3{u~  ǁ ӏXhdyqf("2 .:-~3Az*~LCQ]9.PrnԬBԹ ,EfTc\ʗeq풐|%JT%tS߇X+љw1J̋z{k~8رqxT6r1nh)84hVC%&UKI.5vwtfH2љh(C,r$B{3eFe=.]vuc9JLʐ?i 2I]댕޹*D <[5VMAD!ƾcŸfPF x `0#m03p #[DצKuՆenCrY1uEW|ѕ`S`Bt(nf;:`4i'({̷҄EI6M?a&$޹XŴCPb$jv1c HC#xT/)jʚt+E?@( aMհhS+;l CځIҚklX'rS*%2X'$2XW->}pKK5'_*l_dwOf z7FfsRل 8{B'Z6Wf(m09e[ۡ8Ÿ ԝ^6PS\~kK[K x< M(HĀ1Rqi:ĿnCĮaWVilfG7 «R+eyhMS(Ԡxnr@Q dB2"=ڛ毛TpҹVϗT^  +S:$»#~hy!XhD+5~R [q -[uKm祐.L}Ue({_v)8. ҝ 4z(>.aiaK@qɐj6;A_J3AH@ݚ W ˵ m=Srk4RDLx*O3d+1Jglu)Iԃ5۞5AƁ'[kD ŦKjNMp߳@:'ϸ׭dWG5Rgп1[&ZxځM<}b? thޥ29vm$mz 3~1R@gk,ӵT0'Θ!/e#n%]t˲S#qp&b~dKI* ؾkNÑNR5>u;aU^TiKa05o04+KH#^rݨKARe. N,ϖɸ>R$lE4[D=Lzf0c$Z(h%Vxg@?P4K~܂(\h3.ې6L!J |lJaGVU^NT|m &{5dbzos׀3* 7[!g"Zn&"i1iwzi^_@OxQ\~Uxw4>4drV ynĝ, KeD4h^ZFn߽4I+xV,形 f.XOYzԻrAhokK'63-׳##P>'J ^Ң+F1#et7>u`/Աܖam{UG>R@[:]l=.ť1Ng0%UGgA dôAE)}ASlXꖷ]ISGx zIK2l^S~'^}CKE|Ix9.fz8P[<B>8-8;w0Oz(e2T4Se1ƈx-ԼC"~(k($㲲)VH^ܗeGF D&[ C&8=DطǤa\R0 OY'mh"Лi\ ZJ كIi$LV1/8um47j#$za] ͡ ]yhwؿ ]"]ϑ^3r Cc/7`kDҗMehbOEnU8ʥwJ?3 aʷ {jZH0+WѮ\:vcN;{c33Ζǿw?`j;:y2dpnՄVh@fmsڙeVWD;4-ӰƮ^;*8F).ĽsP ֲm|]J?1:AjtaO/Xƨ&LP2DfdK0rj5D(sDdS y)4P <FÁCqYFbT9Jц3D0 m?otY?ƔN}$$sIw* |w5*mjt?4ޭs/mKޔO#<W*qaÁ2rW p Xb󸫍^ Ad+̣c|z CB҂-qr4=2?p9k/Y)S, *5kϼm%759"3O w8 &ilCS SsW2 Ó;}> 3ݎ9dѩP&dd aS)=n4 6?3p00vuNPO%d&Ƃ6Dfn 7oBe'w'݊ 1$c(_i` ![G[6mɣRӞƸ;<`3}5WN M8%jHCtUBB4Knlsqp7V y[7K=7G uN . lDU|yi\BnʤN= r8.n#оCAF lLOy;wc|1HFvk\b؞xR2 D܊ sv}Q9>O4ָPz9/@ ;k\+.,kol_oC$bytڨJyw/yD4`wCu,&D8Wx lv{d pgHEs>ȟ`!ڹ/-Cڥ9&: _G2OAM6zdopU0A3Z6| ϗ1ǹ҇qO(J|RZ ۑt[%/`! !n-FtL؇X/ڬңD&ش|s ͓ܩXYp{\B&9ETqxZ5dF3GH1*A&Oq'bg j/}.3Ĥ֞?ЂZ(M9>8SIrg=^&`8X?{t,ߘFbfCv0{AZcc3},-Y$Kt0c+{?=msDYkj*"{bL 7d%JDjW ׋>E̬'tS`J_FI;ϜcؓT>ֱIb1DF(az!éUUH++dqօJU֦N%orPW`J`(?T) ve=qOP/7?р*}d_+ OA:Li4jq F4ŕ, /Z'LߞCEٹ\3SchiXН0%:]ԡ_"8`0~5W<7k#Qfܢt~_MIN;d/1u*1w])Z[zݭX;&mSw)dVZ#I* `\q'ayړq4mѐi3ob&Ʀl9igCS(tӝ^"y?7ZgES_(B&߭"45S@W`(H؉zB}`M&!V^=5FȧSgHv*u,|f,:Ke\:KTKۍB (`Bod$<$MTnكdA51XR1-GFTJ`fj&eЯ^R‡E'=~+tǩ"5~"C\xU9pޭh20ڡ%]f7A|> 3Uv=î@z^f_z`UZ0V^A^0mAg9aAM5[QgǐF0fULO+ٴ%mq$+gGa?:z S"({uAy'bOD]#($EZш%O2hk3t\\dw3(`AuA~A?+kt@次 \GM[8r~A?HCX9U5&Zp+$vˆ6q'ܽ~l޾<6m?ǵś\xS^/vP 9]cln܄Hq9p4,Ec|IBpF/ VbZ-]&9R޸}7 1߄1ƹB)9̬Y$WDI|5W*QqA^Ep`?28NI: O=֋܍m+isz>+ٗHtヘ]QVU:a&J$ʾ$n{\Uy[&[B$JSSNZL` GDȝEqRD[yKd`rfzC<$ hE Yd4>T{`}}ZE~^\wRj:T<@y/=8'7Ҩ+6XL & _^OaD gp$5r ꠊ+rm2tx^\RÚXg"*ˑ}=.W>O3otz##~os'&TS@J,Iꌻku|,SôlGG=k14flٻ 2w RaLV\94\ n*ݏe gaL5ߍW+YQo Ήw y]_ fYMQP  h?鰿6c83~ 桽T'dm cTPvƨ;@/O7n  su4+V=1ij~$?4jl[.Flt!TV~_v(= {jl y:FTOeWY^QM\D Z [>"$r3vSVifN:&|;?P=[#<]nA|)Bxv\v4"q| a=@<( 쑈([ ihj ӤMm,Ch÷iJܞ@:b"E}oC1٘򳽪 Iԙqf1 E+\"w }ppN|'y 0'jp"Ϟc8*;Lsb4Y4vP, mG?(򩘟+?'8!͡mE L}# Nǟޱٽ=Qgϋ10`-tf"HuȐJ4CiDU%%jܝoߤiDtƛqq'7H?K: d%`3@d˂ӞAwll'G LVs*Q5]wmb3渍ͺXklrf,\B梇:&=T09ieB8vԦ*k\l\JXv9>u̮*{ _잖swlEݬ1vN>ƇfuDL]~R">*P :wU2jB E5U@>)+^A#Q8 ==N-(%Tۿ4v#@l],;k/;db;&ʜd"N$_ )&x0&lD]tc&nw4ik|?5% |X%< @XUsÝ5ɃCxWsG(LwG*e)q%]wV8PGboD^zr&rzWI_:q*8$HLnHTH3Dgc$7VlF'˥,w |Vj-D@+a:]hb ~@G'k;*4(k,Dyd .Lcb%+N֜-kNb%=A70J}% (h+KkRlH'rP2;e+c*GXJ4)( VOzyǟ q`2jp8<4d2[}t\\{ʪ`vv1(|4e/ )DT*_";!'n-y5ʏ (y "mVw/ 4Ӻ{Bc3EW-jzSrK+!#:vI4jp{<~\9^O.AGȟ g6;##zއ;Pl΄PӋl#ZVbXzsaU9DN_l1(;#X}Ts(kh\0/V.̈́3%@B&\&RJ[BWI`0;Yc |qVBaO@_/@TH (9aBKZR<>-B{Tp v$'q4TaavF**/`FooێD׫t]QHaqVa=^ Fq(+hL; c$uԎqf;/fP:qoe-rRvm3o:~r)1y ?LBƏ'THgˢJG:]I6*y)v]MU]_<2vc _͚Kv"7Q}"rPT6#bcB+y3ߧZjo<ܕX 4ͬ6w%;OS`"}FQVDp%m oA8l\ l HE' e -;1 6]@%=܉G4*|w(5 Y_;P6Oi*R~ \|qo $sƎ6(39-KcXų]&,KoQ1//_9yS yq~ 0_F yE%%KǃǠ+]riz\TFB2>N?q?*u>3*j"hL1IdWCa3)LF^i!d7"C"nœRjUtCPⅷxcO:fNz WMH g_'i 7D@J"y^^TN\XgRw8 Cj\iH3ٺ9ȺXX b|(!'1y%**֏ 2kɞv$ni!z7xḇLV6 Bsle Vo̟YW@Iq.0ȓQ#B*0Sˆr}"evG9ۑIV 2UA|,cI(mFS0pP+}K][;dv]αХo FfVs̢ Q&o+@`\`?\RV^bcۂ= qݰ\s1 Gݐ<96D~D':oًiA۱-%td\KZ$ `"EGy3闆tfAoRzgx\9hA@C5:+uτB*('XY,q/wqJKl>ƒ@ D-E~auYwG(?D)oiC<+˞+m{"IxQPF7qVhċ3h8lv&0+dQ|G vAD`K?oOe%wQP(>T~cvpe^({d נ/E,Q̫շ>'nb2V"\NoE,JB䎮Ыظ{*oF䖇, F{?)%)¾.BBA')N[W. A``!|>(tI6~#80'Z9mmuP_D-HkJoJ n9.F/֒*+~Z2I&o%J0!kUT< x\dhV) Ԉ*:QքgA_cCzEw?^t> _< n*%_JVӈECjt@"o]$/ŚLPcy D̅ !+35?:R5J eSYTP00K, xd[u/.Z@5W=ߑ|It4Zգ2tܲ=91g"/PjǛ 2ȒfC:@-;}*q!%*?pƒn7nf6RŬ1q #RJ1a. ]+qZd1jk"S<3{ijm0u#k䵷7OT)S+L 9\p.|'NǢ`zed$& |RB  6`Yq ={:Δ TJx#M/h.u6oi0³<t]uLھ\ާm  \r|DEP7hԿ]{au`-_?6x!TC[# :P]1 X-բɄRiB'~Эf8PI eM VojT2 bh7և̸PZ߶<fi?EV>$L%_I+,dOu}jY2}qPyKWgThΕTE JS397\hE:Y}H!2_.a_ Tr({vޒDKc+1Z-?T(R@y-g烲Zlp=rs .*#Vb?YAV$Nent@+_f(HeQb˦g'd7ƜWLG2,֡Ϫt;~qتQ߳.[ 26PEC|] ܠ6$RpEQ" zDy2I,ZTd<;ޜ5rf|WIڥ"ky ^d5L"&@>egѥb5׍Yy)`_*$ib849ֶuU2g-{0LZ x˜pJ2]r<"AGK}4Tuȶ:c,"O '#c9:rf]{ % \)x߰@_E?g7"?,0[ގ N[vB/J7}s~SU7ZH 1aVp-TrT[|b)'^)ӚB5_8A38TZK۶Xel!Z4KVT:p/}Ԭ8+4]VmfoK7(mO.x4ݤ(c.vz7#~lC9kN;ǽ?ӫ5wc=F!J:@fZays,Q -De:AZ9&d\ WBڍ yo uo!1e(my.iB[S[A`bOH ҷ2!,3N&ˉH{"7Ǩk[öbgGE|pD*d:*c\Xܦ}CB~Vݯ^?j<œ+qI5318V:ohGNӔ#f<% Z,){$J,i * o2wI`~4dRGNuм)Td*Ss$/&16˒]@Nd69/ÌXX~e/J*$" ٲ'Whg(zȻ9̓0ni!;:b &HbD}WoXPnT"{ +ui6 vIc#D .t+4y=֧|-~N\xV'f|< z(N*WH/IY/e`])_0%^N&uc:PZׅ|Tۣzu񎹝#Ssllob+X鿉 ̀Z9bx똄DB%l0RHv.q\%\)cә[#G2jSX@xO*xDİ=a^QO/kl^,}-nR #8MTTr=fֿ#Z^K;{)*;WW7%~kxv/CG E'b [~Rһjlz{;J* k m)5u"SC?ZܶH||]]x{ x~'Ľ#)D$"QӭzetKo \WB탑;Izѷ` X^V={'g<>vy>{,3((65W-.E˕<f)'I}<]r+o苎TUA?<)S"]{-(M>k]K<%c󾀃Τ8pw,$jo=S"` O䜷~jFh}~tOdGyQ^M=k+ea9pnMQC^bIHz虻)EEMlGy@4h-O96@%Yt5XxdĘBv")ƫ.Z0łO8<Գ 'w1!^eudu坉.gwצڮ5$Cw!ƈ'wԥ g?DPG>kw9)6 ~.%l1WVB[Jr;|]DAz~:d &xK+:jfT \Y ܌F@б;\š2x9K޳?⢁/u/q2(6|\hҚ˅A6)]&w?R㥗Yyf̻HX/RD.7uA|&I/9)PztF XqI$Jǿ$E.o)E`e# E1BP1= /=>z{N{y %c5H-;,o&y ZA@[f{Ws $@"tVpKA7j(m GƫHa8#./U~p41| ]޿Irݰ@CrN z3OV.OR4m(7нmfo1dkPԌ/Z~zaU`/m>wZe=O ) .O|f1B>6Fя3^B7Jk?Y2W(v[; ʷQTz%ȡq%x#O1*`vʘAN?(p&Cւڶ˼4F b^)VnoG"SLI J]N&Lx|=0R1!]3|ʴg4;s3@~vj,0 0k X+ L8b&"JF7Т~;"Iv"G<9<(#Nlx$b{*ٳ7?1뽖:| nq7ЧaN)^h*>idlEAS.od]Tk޿ukF,eVm(?J^ 4:\nRtoIHH PNt)@e6hi vwO7wEÌ{" \J!g!"ǻ*ɢr9/mr!&#pK6f͔>緦!zo*,K|y,M-~hJQyHI0I=m0DY]9D9f;{UZn%٥Ӓ']o)~2ʩ&>WTEgp2RUD;U+yDDa%bkn8s`*};JδPƮ)#$,~jZpHl]I#vzO ["iEF"R}}hI/h#ŀLyp-zcS_b['-5fvx-#C%a4_=z:ԽJ(9x{_tJ;[.Vj{cY݀ʈ9MI믟4{ǧ)Hu`pU ߳6FXh/FY~sYp%0eF+16Y̊Vc (7LU+OSР?g>Tc̬+X6G 7a,ňf-"8zb )Cew/1dW#v9$@O3 ><;̶XB9sHٹ}@yeuA|mSm?3n0Ü^ X`_dM2^@^JKC֒ 䏎2o˄zeƜfʓ8BV>"Kp;FM%όt7$FRDJO78kJ]סJ.MCM{ MZhs 5+^}c>sm`Ӎ6 *&X$B I,.KdZP l'gDaI%q. ۶|3}IE7abKO4oI7SGg]̱f!,Sh2D!M Z!LjvO8p-㐂##;0~"(׈6H;Y9sYMD዁ R(Ua^x7̯hjےOr979NSN*%@RNLӷF`h-7ŎkgeU(D乂NXF=ڦDG,ډ,.ͣt@BwAivZq ^alnn1y:rt&*7 3<"``T/2Mh\mwws GUrY!܉:NVw4q++J |F`6Cx TL+Ҽy).ƒsuwT_bqՖ1Aj%ũ aC>.Af2s!(WѰ⛄# Q:2^,>e} :x`!|H/ âaa#}ߗZ`f"ˆ|Xzby dLHM ;9߸!?8q^j6DZ-AЃk+& Sк 깒9*i9 l=4Nίz P7wgJ #FEP^XuکR W\5nlAwkc}?K+uU XPx_CZ m<KoCEꀋ+>(e"6cE9P Io{msP=*<oGJ㖖Uո0xݿwzA84|@d%l% :=30J!<6W:80s;*ۏN,wuC h=sOCJzq97)ǘ?JfgDJz: +tMj7JIp,'sٔTp_;5ЈsV ܷjCy& }vkIJyuꖤ۫WOʹ4N/J'Z;Im $`CJDV_zz)β\P%Cb8+AAu@;Da+[k R9&X~_}r.'Ã>@R.l֗;i:mR?`'fFVYke Db*Pm"_6E'J\UZLGŦ섯G2 U'~!9%v=@=kNWEmaUy ig?Ghu!iϯES"7g._ժ\O[$Wfyt( OH)! z&̑$HB m-VV=g#z0@ k"=Fo vNrLpz4]No.gLT9oc>T<֐ RK/*2 ע> rҿ^BbBi.A[ p#=yY&)SD#J"mJQQ}`"丸G*袡rs-ܷ|>S`P#ԕb3 8y jEmUCVM ,Z0]But˧3%w`x9{tOP 2jTQx?uԶ @ťST@&Wyو6Fޥ%3 Wyh=ВK|tZBZ;:*5/H×ǘJS "`~ՠ_+®CUK^hBbIĕAM Tf}r8;DEs{ZړAEZsoJv'-`J1|cTϨ^KNeǓ!(rUmj[hF7 @c aLkM o>rEj2=:9v tp4C땙PJW{%%?-<$B9@Hn^ -P\E7fnҵ=xXIIan O7dHtyN7 $J?-Gz [Ѱ;`|Ϊ"N/?"j>5s庱%`Mkէc"6>Ym|hI{H \;A]DI5vuns-RnW5*rWr\ĶQN`9i:&/u"|8Ht ϛJR&x<sqZ6z)@se3 س +٭՘͉ك:db3=i`$ ٪F[MAl鲤f+-;3Vf.Q.rSU:MhҰ\0lwr!2h5 dIraۋnԁ1N’SתXW6jS6Y5'[~[\% J -7(.#i;&$t:JaC>>ؑHܨ+z0{#S0&( g]9HcC3X~R%u,P8(ty?mwWp֖iLX8 j>]xCb h]4^zFV!J2HH4jP)*Pԕ[nײ&?D ЍWQZ)3ar#S?׎湲 h[FtOP`LNF-xSC2Z73{@b=4z).yjN&je Zt#O7ly[i2DI<8 z]~˞j⚿}jH!ԅ5RErskK˜LBRV&h(sd6C.pQ܌1GNgyY | "Gsg/(kPPZ[%Rb3 <7H,- ⑘c Ǚ!h M49j(|OU+:9=Y.^1nV% A\Z$λn/q+ l&㮛]#n @Gt31A>8vP@'ZAzҽ73$nHs„w ՙqͱx { *67Xtk1.9"bqNtW/2&z!r")lgDDE) 0>X on{̙w>=1cHœw̼ư'e"UPL,ס@ꍟhd>$R``dN}Z=_|V"\))c{_6.68Mo}%1fwzR? Q+16|+yO 2\">Gm FdF3K#n30GDE[ʜ* FoNcH֪{n߶$=*[h_SLIq=buz莉ő>k썤PMxA a400NA[jm!I@^ǧ#VcIoٰ" ܸ@0F\{ Y'u8|<2OH;Nes1,<^qY`, u{ B6SDT[A" CT*=]s;]^(V:;}O5"#S~@&J9 >T+_5QRzztם 87'}ThS^6_ 0ɒ*:.r&Ć!P=6!dkX nz ]Rb.0ϚQ֒^XvJ9o>L~bۧ+xsn |c@&<-(]f Ke1!A=7m Po%GZ`D0vTǯ\O wB*XnyUj?,&D❊1v:\K9is ؋!:Rޒc2>ӥ1>s %9e5P (1EYvLD,)nq짍T># y9N;sd+(+MyBP*9L&9"`HȮDR+iA}jg4 <.0&~LJI  nW=^HrB|u2-r(N9p+$# юqeAeQ:J_[{ PIj(}A$4"âe"ZiG]i\04^47\d(M׍YT7sK̆T~:V:FT%]B܏j=^#f d;=_gx{q0+36kIC꫼3OyfG﷢!(Fa7wمP\cpw:5HDk?6, (/u~ 캲'PZ1xƩ/(EO>y_PhuoqݜC`%QWzm>_r*Iݳ;SLpªNޓ͈(N^eEtEVlylZ51"v"sw-n牎ۣXR*{VrnCHasș gHir1q1\+#pIVjF& d ϊWFE>k10.~ʊKa(Z&7,U'f] gЌP<рɱƶo`gZRJF6[ye2/9/U"O a;ZkacN4{YSaڣnJN'gM.5u&E[ ߞ4`|A]I'!cj ('[;Μ( Wf` B Ð63ԣf^ln4`I-rpn[.|BJ_o߲VRO۷A?2kyRR@(*( Ĵ&0uW'4RK*q&M@/\R`֔d19iuS >Gh`1[!] M1O[)~5XyljMтi"ʶGH s'#6޼nd8t ۇj߈/l Q)?(5+ǂ vQQLh6RAB:-x]Ȣ8&rE^T~f2deJL"Њ:Ͼ</+7/m9-Lmb+*-f_v^(g^+u1 ѪC5g>"3Kǭct͟ +k(߇34XzmYJ/r[4 Oh.a4nJ%1:M{;I{vΣ"}T h}C^;Dk3eT*E$ciULkAglꅞg9Kv3Y'0[ۑϺXsS*V *{Aڧ8N5;֭ QY> Z1=-Z J4WE?{N҃dxpx(R^Vq嗱nsPB#̎3 C~^Z)a*cH[ܢ('\.WN=AA~ޭ9!"md ufft>Yv~J1A( 4I2'+1{]KC'DH\ٌ,=py*v~u`;Ę+Y,4iãaؖS}GnJ7{i(2.I X8LK񫥿CZ;,XK-s A".d襆͒lUozrUZ+rels[ĭ4 HnZ~1)z wmH SQ源yY &SuWnR"ΔNt34sy 85L%b{mPj~#Z.OB;!h0EOL4:]3R_s&ȜKsZ ן"~ ;x!^1JA}Ow2sёJmM'O[Ҏڢp3͍!TTGsh4Vq$ >{hTg+zK|Wv'aVިm ֈ |@2shՈ%Toa?/[w3?dWcTR\(&,/jYKs!D+N>+tx(hO'*Ȭ&ʈjv4r3~^Hj?wN \"lڈ,B10X NII@nz;-Je?(CKH&qX<}j2μ'J[-o6 oɀT8eTZy:6PNRB&8oPݺV4g3$%= G|b\j9Ҋq%4cVM X{%urNN^(j! Yh@CF1 h x`b; s\neޅ~)NYMǵ KncRӑ6jtJt?3@XlA(wwXT1~N 1UU4d #c8mՕ?b)OT\CD\dd,ۂ:3V IJ8e(x ь%1B 3X_uk耪oų0x-[ߡցvkȯݍ nf!@B5Rcwo8D9+={|njyzybc?lًqE^^ ;CD9i0%,uA >uC$(u^c1 & 6@S ?` vM ǻ( .)nX3K7tdZˊEG7:Q5aE*OkD6,DQD#OAy蒩o+2࿙8QK~ϚxeW2+ͨ=npJdEfs7~q({9ٟToq&NO%mJgY*hp |՞tz\D -OoB nuɿ*3ӌ_xz|vW,^#'!Cw)Ty2띃(Hn,*G,Cic9|}\(e%8HGvt Ro~Mg?CEp'[ER(ބ@Ĝ0[ 7ۻ+#B'[N}R_,\OloJlt!U~f~]ehWkf8L*؜_j^1q31}۾D1$k)^`GDjܥgnJxB&кD@.F0wr 2eP%%LWA1o@ N+$+MpiZfyZgDihLO%rA e*;:_nL(sh56QCWDh-OIr<;i>K$,@c#JSdiMŝj$)i p!oy[RY>6Vf$`DFXU0>U 9MV&M0(QeIXN'y>:8;6SL0{$nQ.΋)]s,~kC砛Ams ƻm:]}l QE4OB&QF{j,%/P |rǴ4BF \>S|`pRs[ 'fuX vG߃<|o>۟a;j%0nΜoôSQ~xQ8[;e#hUzrcoP@kDK^85^ x[vQ/Crk첅 S2Z޽0JjQvcqG^m2%m%', ._AтXmjՏ^{gݵ!5`\jtw`=0\vw9KcC7cj:yaeqD`MԅHꯙbE 9ͫ}G5=O4Zn"fMڰXy ).*#s.^y(HH#s鉯&RJUWW5 ~! L`Qdvh, o4^ZnQ:Q>odgۭ/X."Mx&I]cqb6w+VK.EMY&Hk^?x i/L)Os/jEd^CkŕVji ?<ʾe/N8A]E<V,oe`{Jr|0J8> ԩUS/o,S/BYt҂OQhlJC3ءzu5A5RxN|usm hjd#%QX1JL~1@`GaAR:N8!&.ȡ |QhL&s:|pJ)lzRmA+A~٪|`תz Ext"9#jz]lGny?\%.<܍BfȣYR(TKsŇ=65MАm^ka8 SK\ ayɂ\`\:)jː! Ȇ25ʰ?/' b׍SI{D>´OۡruAE!<;{00 \Yb&vϳPPA\0I CeJF/XwPCSƉY R3`GM/tJ^B@'W e"[!|MLh۩Yz9=v2<ʉog᲼=4)!ۘ=(2DB+#EavZ4Y8ڂ5q'k1,&lcCϛG@X("d+"4fGN8x?DYdM2₂<|87/Сr672<58MБ"z9F})^kڒ;Fwa@vc+Ldq$>м/T׌rh>\.L[%:IQ:mJ'8)87C"ؿ4ga Yʴ~<8˻gxtTCU`$cTE}ִzGHjQ3xQ7hE#3ŽpAc'|@Wi{g[iCLDte9|qe𸢃蒕C1LLHbe0' zief@`vt ewUaͷѭqns3U{u72z^Y,k O1^^y0ɃXop̊ҹ_*@d2O)&$fOCvD&: +ΐiSZ/Y>^e`yv^?C'"ܼH(TGNڀ!P/di >m +ڮWgdmK!|Q%ƿ;@k`yΊs>"/V>KAvR&Q4&?wt}.1z3j]tՒ\ 9^eCXXOs Iam?*B~̊&僛)x"w3۟Y9DQCTAG.ɽYQVfRJ!x~fhx8Wův|Kn.C-%~=a}YvRNǦRdEj,Mb p7y;#J ]<ϙ:BwR?x8x9\kd͎r>T4ʦ-Tԫ(K_Q̣ @ta.4xUzQ3.gwAsy̌7ڡ\ ͷ]G|!COx2pcJ&%5i`@z}r2ʁ+g™D_ ݷfVhIZk qiR sFj?(I] lFe[ʔt{NZK~ Ql:Dْ]kԪ]186~ųBގA B|hEɚh"ǒBOQ.7W,Ճ p`[A%D;{c6L*n.F:$ s1ԺSЏ%2\Ol*10dRUd'47UI?n 'ޡfMh$Gv+Aca.k<nj [f9%E">j`\)P_V"߸ۄNWa` gFKYN,ϰscyjp m3UF[A'8F+lM?9Qn'0T\jL% "WlK]9.yAFF2w:oAR.r: [8_*/8f@0nIy]ʱnpDW6:d.?;X+(lM9՚m-l80;9̗lpN{ݣR$Qh{$DpP㐁ǫ ëh{N=\w^Qe܋._II⪭\CK;y7LՎ9ɋZfH2qsYB3s4OTøt"6$ ,Ɩ(2*P3<.r!2I`? oɰ4CZpd ofNZpO23sh2ݑ (Pj=E8]`+sԱA_|NtCV[z/ؼ8yϢB_DחJOɮP߅9 Yˇv+ن'dE<=bg'iF^CF& Z./o粭y# KM`ǎQ\®` 0W۬ns{{V<qnN[=e1XFvW7MQƣ!*/^H H7ݣRYWj6lCħYʏwh*E9%ƃ}}V^H˜F Bµ_v @aH ӽ֭ BA$42ޑp&z8Hɕß X-4ЯS&Ąg.~S^Kƞ}BYD4Г3QD4TŮO0l~Q:hàל+^Ovt݈weh|g}$.!({^Nyu(!hYY tn9MXaN&*7,LW!Kn u 1Dl.\XWfz/"0kJK$Nd'q`{ XqE^Q89ű_[` )U$.#w40yIHtsl)@f>n?%biIzRs*!V si6Ʊru{g `:Gњ{ŎNC?V2>Ͷ/)9^hk]H4JɡeuiO~hQyI9&V:+&("LyCOVĜ{>,C4 fkEq'0C5qbsdO*w ;ƓcWÐ`Nx*SacxtIվs_r){p?[W ͬ ctZDBK,*20S @aݸs;ѧbofve}/vҧ$}^h;s(E`,_Uc F~5 9r28,/WJo{/CC{R3q5d[Y2Tϻ.ױ] `^>1< >JxݽJD$Tc0S>^u|XQFJTT04vI}0'V Ԓ bJH4:a ˴F,/†Um>Kq @;()Q *PXN>-ǧ]F/d6|)ebVƲCdC̓;Ūs $Jy^p4te!n1?W0MW\k[S0CJ\sD6YEUK4$<]#NCt&iI\z ׊(!i'H+g+VpdSzn?7,2Mi({l+>J3Bkxq&Ѷ(Dd_x786G\Qѻi/kD78q縉j…TOȍバw,4͟`9\zJ dSg||d> .u"ۨ'hN{ Urd߅lZCHn+[B}M " /18 z84 .*`3XC8 .Է ur E}1rθ2daF-:b x,T۔rDc-^ ԾH#{6E.Fn؞\\z "1LbC(%D኷ {JŹ3 :~ӟ0ލN]*}IE Zɉ覒cZ1SV@6A|C_-w?V5_ԒþSdzΨ Soٱj"o&2rq'tD`;-62BP1C!RU)&\ӷ V2P#SJؕvBg0mw۲ٜzLZMqA7{ )g-Mf!IB=N+2m.f r{.=(tO%@ə}bxNb#X,*?OoKmPmNc, 7u+\~=Ec=:BD<&I2Mn~P*ѷKC/%=HsD%̋"}- [(CoL qތY"&GB\ǣMl3֤'dMޮyeRL71 -E&`xJ876<ɋMk$a[.kX2=*VtB#bԬNlSωpѳAiQiC M*(e(L{t:mg*V/?mJLMG|GT?cp 3ܿF@_}$Z3X+ToWg p-pU=s_-WFɡP2 ຦׍S`V挬b@ϝ1~z=ׂA@܊mA]ҢdH8T{\.SёSkNrzIHgR %@3y };CZ)0?قwHJ7<;fUzPJz ?3ͽAQZ6\D- >e"a~4'r{4PBq]hYOAl)ma]+Zz@A24,Tp8GEWXmA GVsk!ChGxqLzZ¶r*NY5;YS!$3rsx3]#Gs/zdn@%Ts! A̟DM-X$d:#bKa${9}9B+ǑWH<ǫ4+NJ[ !_3$鱏p 텟u!{m i[MjܚK߳ch-U:4+:W8 8[Y8Y5uks*u~̒îdVf#5S &딧|b (m9 [L. S4beɴg{iniB_'b UA7acEcxz[;¬\4;ouVŤ"2З"L)?sW|*nuV#9C.P^d!$UQ5){AK:>>EtΎu:$) h%<+FpfxY$s;%F ړmZZκ@[;rT ͖hhVm::X^7ۓ_*vUˬ R qZ C<MKo&zrmF[v9[k3sYx4A? ^URͯ$Pg .&V%L!9 y)! \KaUl7h_ُߧko@E5?@]$\2xCdŬ e>#˙ڎrX[i |\Jr0 TbNqvF("kӏb$uB6%L@[c|!a+wGP#A[@X&.?GE|Jb3]D!(h/gYvLrEUkeAdzf\ H6GRjyQgB{N5Tm8K#>b(o' x ,YbRf<вdSF b;l( Z0Xr='8xE>XZjF+;j#"jb~.Vyn# I /C?x t(Y֧ &݂1 Zwn~PG瀛ck,N89<5X|ܲŅ^gI f=gזMsX"IEw\ouo+z[^i|LeO l.- JCProK;~tɛx< V5`$:K+({V2g ', o H-ӟ*3ۧmeG$%),??+@"T5䏂H"uܬ1ߔȹOj Wsa8Z/aY:*.J>;SB+oV/Up8UW#0EkʋrY"ǟ <.p_Z]0?=& 329koE7ݡ=~,`8ab9Բ ODAc Ɩ,r>8H+Ҍw#zO9E*@4U/UJT`Ee K;`Ndy8 ŅU#Iow_\ ƒo0 Y~IQb?*Sxu#ޭ#L\PǑ6#{5*"]wJA_W?n"<GkջGV .6N"\T%}dSHYjbi<-؟ҤZcB o: Dt1S hI_3}ϟqU7 7u5X]҈sL4a! ޖU>bT׌_ty Ç*o&߬h^GQwhh>DxS]p1F[ǐ c$ q9ms6 1Nh܂faxYf6 COq89pe0_qv$D0o`'*PZuGkZ_vIVyV }TъSXlmٮx k}1C 4QG@V*l]\]+5dEFf1A*`uM<AwTNA j34sҊ呰N~k8ԝ+93ha uθhTsME(+:^H\nrEe馁9 5"KG=k #k,_&(G ?ÀIӣ V< 媝cbDHCOjZ¯Q:iSpUlRvGl7ke@Vlp~֑xyt<9?_|FTSB)?OLd 3&&Ԩ׏rWyrBY$^6S^, KS"rjz4 ŷ+xҍu*-ۿBĝZ}MQ w.:=5Pb6FkIhl{2u]=ʉUT BTڬY1mf ;guf\Ęсٚruw < g88RpYlZ/]Btn֝Lq6:|*y8v-Ja jWvocd þ7zq~|,x=lj{2YH+cfxEAoҁI(z#V "ԙyC1{˲syfggNuD"j:tGoɞjMԒNdZvp n檴'? m^dbQ{%8S;81<>Ez0]4%YU."KutU7uدHEƪ{Z7 tLo&;J;V@S/7u{CH##Hjݚ/hzT}4z DW> Ǚ=eJ?]-| ~-\K:ҞӏiuFM|_ FwJ)Y8"zm/Jgz9 T> ۢVQχl|7oA̴/ &djXe g-֘Ɇv_3Οur7Zvxy=)hoED V351 9MkG|m0O"̀P@Iu0 N,4d㆙$h[SCr]<;}A+"A9^X{I".T!!69G)W%mHmî룆9( p2w7Q2In4Gh0c}/"ZF%}b4J)vf]W\|@p1ڥ 8@V[c#3:FǑ~ m`;(xOR_ֻXq*hZU*Bc8j[8>BtU]UJPq-/G)\uvbfLႇ/|$8ZcJ'|)l⼐NT\pڥ_Iq̹(ܦ$ X3ڟe$׻gƂq91vPXzU{V5BCh0eEhi3$s㫂CUiyü tDdi׷rzz#|ݟ-J:4% }i?K=mPjڙfUd+ _]aAQB'wJp˻ӯК+cu786j Z4=Yp>'mݢh1<꼱FM5"+~n&( ZE[y*" Oes6xH0,1m/{/C{\yNwdqvU$XYş 6b Xch9O-3Axaֲy ;مNMgYԶ#4 cb{әؤ Te|Ƭ=(;)R}X.Н~ێ? |V4ϊrsZ8/d`|L[ ?铉'Dll jG C)лQb(8afGj/BC~;楇jH}ɥ fVVSTgʠ juؽiHy͟- }Hu4Jr)Ahr{/w=my m\4(RسO yQC+3-!_W)իye^Qk+[Ѕۀ= ?$ThJ3T#uN'-Pޓ!#*Zz ftRK#VQ8Ԉk3& C\BOO {jmAUK9ubiFQu͙+oz<OW mrg+ZyExtS n1cq!ݱ=LP[DH/.*s?j?*fmYTsYQA_T;,{OT _N킑f~\qdY#w:J-@&%/ yXE[gmѫ,bZ _xa P7c}dY蕛|06Oz T€V>G/H{A±Ö^4pjq.0 t47\;U%P{6s_tLS? CFl&k:[wFEaOp..3/Ȃ:rUgC_*XbmA#"X0?Undžvp~U{|&'VeNb[ /<(.>NxqP0s1*8AdYś-\A7uŒa|[Մ4z1 npܭbEU2FD{4Og;5ZX$ՂTךAmq~ 8Dfs҇kyvܳ STOs?dD~KZd]AqzB9eb#͕kXDIVQ=Wk79%=KAZy_\]:R+S/Bo2X%릩+~Ke:)&9qC=֬LJX3Of@_˩NcrZDx2;Gdx 502`k86[}--*sDIըU0fQTjJ`y9Wލğ魳cqtvd4Gl^Q}N2}Uѐ ĖRv-8]1RQԓ^14%v_J^LZTc$TD9N!}}L6gEҙ})I RMUdc:FT+1 _ҵG3[pL>nSc)߾v' JO VgS{xZL̉MC߉dX ^;xdٳP_,qoJBՌE5Ʒ12va[Č;cm:WvhfXк@k;ǷkgoԶJhkäW fDZ>NcsAlaoxhQ6}0u%N¸<Дa1ȗsL"js&Uyi~LbOR0>+"JP>}o~" EGlQۋ)Yr,.>7 Z°4APs򐧠pI2RP吠=i0@)UOCV,JFR\ XN)@̈Q~}oZrCw}):R37~?Ya5޲˲T\.o$X*4GR[7$f{ ɏ u+r Q7rԿHH.>$Ct ql,)m6m>wuq\À GUPXY߇W`4|“!/^\'? %ΐ%p a;G~Z'`CNږdP>2y=K?m#B˳-B9j':lkuoi[ۙM$cH*q~'UVB ޘa<9Ji6 (:i5^-Lv{[Lh,g2''4˼h3(Z]zb܎ʸuR(3Ab!kRˏq+ ?p:Runcg;h1ىWFz r_m\TOwHrUf6!˧R[fzdhwֲRF&`Zky/zZk@pک%T2>RNu~z` :Dvu) wnp.[q\q6̓Lȴ? @D{=lkZ c$.V~rITZ 40|}$5QwQS2j48:#( {jbz ϯ Ǭ8rh*]RH@MƘ0G4`?Kh&~c] /ӏoPv<+2Bo_'stc`c8 Py:tI#g? ¾׷M^WAkf` 'X97q־ |BhDre(u`ȿlZub给_@դ?6M˸Qr$Y""tv16_> ݯ5JV۷.~jR VZ.vu&cFۯɋEz6rj˘v\WoCm͐&*I2_%emx;=Ij#MU+.j\ ؘ},>]ߦ3dE1ăIu?mDOo`pZ%֛9t u!DZ7 S!*~Mx ,x?r9‌*>r7Tkw&ziԈuBwVsلڶd@m2gP e#)'EƢ rÆUL ^-C$=oLtdcJL{s|]}]8 ay6o^ѐB W_kIM`u@Ꚍ c]6:IJYK<)8<_(IIKFA%؅c-3#Wu 011!œTgA 焈0Úr6wT>6alZka )h j6|tD:!!BC4@d2etg̊<ǂ,l'B4'WKবR+;*9 AkʽyMbƗEM m#-yNkM4`茿'UD uUьPCΚ+p AS uESK5\hM|j}iq*_f('BudTgV̵Fp]mUN91[@⩈>?D G~M^.t bt)+ *^L5)i25-u6UPZgߊptC_i)a(ŕ{zq E/l+`,RLpZG3K.4a, 9ږc:iاO6s:V>{B({mzty5(Ht>r\qib 7O(,NJfH}y!o@'h{-H~=wax -RIX]b:T_nڅߔ+%Y^8nhpr/qj~bY;9ԼזI[v$_5(dp{:]M7*,GиBZebU=J2;GT; _+'1gA< (ݕ`Nfק~Vb7K!' ē>{]tnұmSB1r@M{kP~Bhǭ:S'NU j?$鼪|<'pS1u)e`3" 2 %U>ѽR'JoPYabgw؁]\ ME` ?jT>׹S_7/u<]C^KF<ʀk`'֭EHJUw+<ly]ﲧ7G=tN,ڈlJMޡ<W\24ePORl"_YkϢs}NKI4 Yرn\G$i *)C(Sxu% RO Tw_mɋzZ㍋0\RZIZ1ʹMOҎ?{V*"3^%hG%QɸLxLʹ8NGV6A E,o.A7n i9U<z*4"@)5{3I: s]UYrG%2a­z%}9#Dv=LMX3'@5"F=Ftb1PN05F >Z3#s7y5%Saalky$5 ID%_ k])OoC^ʸK_6F<2 LJAXQɒۀԬaʲ!v ᶷBh(*>oHP5ژv\U*0zpN Ø>X#q@e=/Y Umr̺nj AI>藯'y3Ro)&w?s @+N7&-||h@lTMa^Ҩh2/!.?5lW%D "0fpLUlV,ٵ7òud5O=J]SPpmGT4:];{6~&~/ QQ'6({63{_Z^!9a0-ܡgouvz8I=+>aPjRs OcSɌ3 ;=͕emU\,4m,#MQPO8_ˁzd Cσޱ":дdƯއOVMP)E}D0F(UQ1IC#lR|B# OW ~x2 Y-1S9 ޝ*V2&+Duw(ſT3'&y!]ntC'-⊸%wx3(;껻gD\`bNŒO;[0 T~.=Zocύ`EM |_h=>|Q5`}G-jқ1\lT/ԝ )xr8V] %qCΓY 83ܤh*9wzfEYp{ ņS?t4ThqH 0ӀF5uVn(6' hql{Y 8A/7\/@Q uS $C3kUI!ֶ Rz(v\х!zJpPeiضN&К7>W> 0>>Ӗ_r+l!VihK,JI Z’@ Y @w {ơ#ٴO.D]/DtU2OUʁ4fuUڐc2SLWKVxL) Z1 NTY*Խa #O@ݢMmVsbO]4Lxij#Z`d ٻik9%@Vm˲05>6d ܐv;VPdEPQ}*-; B~"=vV0הf~VrVh$hi&(}@e =?&qWp3,3– А|X9|$N, %iG}ɐy-gA:9qOSx 8Q@p`. X#-BO涚>΍N2fZD [A3]uܽao ~H(Fm>@ G5"^ CӔ މ\`,M>`(-c>x"WU#' YHCBOw& T]u"9jJ"ᩒG{e"rs+H~R߳ -ſZLt'&x&'YuXW:+8P2rD2g}ah֯7`"(5$:%q3CnX"IAVN&ӓFo(֌z?O, ]R6m ?un5ŬLOi<{F=B 7&d@1¯%*hΟDv qU1F6YƔm|o*4DGyBj\B wt7aWgUu^M-Rj( 5TwЕC`W/R$@R@٪X񂤔xVe\`G5Xe/ K+@U -aͳ72'V\V<>X~hD/Y{/7/Ph SU'm[QjwRnC 1/iF >ѓ،R /h<T]NeiһMoP*束`zȄhZ1͘-[5۩yyvOA k8xaR4*Zᅑ@5.罐i$ćH'H|a3^tVBY_Qm̊$Rn PmٮJ @ԟxPXE j k/viưAwQsao: kB#5$CUF|E@jNo'\Kc$t[/6n.w(+0͏N(w n{Ļylҁ\aS1 +&UOvo`ώ aT&1ǵ\y <:{|(T)p5 6n&L(3B ٻxr8ZUu 1n.,%o0v%D/d/ f-B_VO_ +8 ޚVR'亃N])w ݕ![}b19Qt^" N;6WO-o"2F>ubI2?6d32'*Hek_:ex!:@X&,d)Ҹcݨ,_-}IK: <5i*9R:֨JPm42 tàR6 iӈ^,+ e nLh!CR v0\cEF^1%V6 [fG߂u9U VƉbH`(!Nģ'>1[ع1`ݵ0s֦[⸞شՅisa.6@\7P)O$ϸ޿pw_}_ct(رڄ@L/0X춢hDg*bcR-<8=`'J.=&)4Y3W2K3 ?1/RD_A2F}+%KH̆k׽p''7d%K\-}WB-d6T{&5ol;nJ & aGȅ;s˓ru(VYBC: 7v"%hHQeðy-JJ)jZ]|c0C:sɐclz#qJmU-ʺ z \䝵2lcENpOikfAl!.{ȍ}!L%2]y$6=>_9Ql(ㄖ]J3gK<\PRȵL]4^ʌM̊4g9ffB>}Nm53LZָS6+[4'2;[RLĎ/ 6 s/hz_ڵD}ܜS @48$;EB`{rY*Pj9Xa^kme Wr==+$nwXӘG{m9^jٳ`Eigd( 61Gm$A\f eAUj'30$销F^Opξrv?n(OҢvz#~84j9xqF{_7uF*tO=V׍OY:4R-ؔftPlmsUx)(lFrd 3a挪<Fl1W9J5F+*B~`:0o3HW?/?D H1!luVEFq?!鉡Bw:tTQN /4szwDmcзWa;8çp1_AoVӆ)"AhW0!b+1~>(iVxsѪ̔s1>0i#w]NߠkrvHvWݙ!X,œ46?Vu3p",f36ndd{lV;O|CoSW٢r'*CW+FZc'7,F[2@ӟC,z|g)ΎX(Y^|e-9B-6(Hί/l8P#b|gZpċ+؛T\~fƝui[+[G [/J'=}OF%J> .L`/3=CwLn}M.B3906ShgnS}c ^HIpp*^N"2e%AE E@جY_ @ l_s#Tu Ne>I<`0)DˢfC892~ B@mO0>Ŭܺ-ɩI,xr]EPؓ%[ l^H ܹ/<sʨCC-$]9~bJj _!;ɿ@& 6q ZJ;Zk?IJ瑺bZAc!@B;~|-m,Yz\aN ;\6'iSЗ 1KԌB$ |{m\솽Sd](JPleS̳>GΛ#V-8n{ 8[I)5 jɚ^ Ά 6Qm5*Y=={Q)hEUKL}Eg Ǵ~ZnBQS5]1L—~-2wV)!,+ĝ*8DjN{GgyU6d}aOx6 QӸ4oM,wDрZ6"} -U~wzZnQ ѾzЧt wCcgrvnUצ 8l!D DFBؑ:AMpY%";#ٟ5 ܠ.@0 UqnO}f5 9դ1?ډ>Puq(F{Gjb )Ӿ{$yhG>ܑIgP;t@"|ՓG;477S]Jc'y,3{q5 f X7۩u"ng ^ɸY$dN}׫/<{?Ң+xa40:ٌI~)HvE~)A)>"W%L; `7׹"\E(ֿߝ3O/,O0"{Zב5pn}e5[$ 1A x*kI/t)c =?KQl=M3w]XʫlrLauH1ٮ Bk=iztޭW`AN?G(7KQݚ>r_3v[C|;U˖.&Xa Pe:fA:ЕHHE);E)HS4#h#b-yGDNm;3ߨ{]پ5IZ=?",0ෑ@H9%*g;O)lmc2^qƔΨA;8\Lo?SP2?)QR6 38q.i^hLi-sJ{301yT-!/ש[)9ߵF "ºW*KaA?6J aZEj` ]u+ٱ~Pr]7wp3Fz6V r6# ]JsEw'Czw=N!zͩLoӽ(G'*kR85pa%2UbDa`68q3֏6 #\m-7թ}A('\ouY ~`Zv6ncPUᗉ€6U7-1LWi:x (6T1rC `'WiaQ]m(Πx[ey_.7@Ps3.0xG ȭy`|+Ӄ-Ɍ7 :G`m ϵ,!t)%Dtj Avz>J;ÆO[s`Tֿu=XsrB 7*8Rjf!=JBM‹؈JZ,^_:a^?WK}w{Xw,!UE g *:D 8&Hj li4Mz?`Vgb\M)RTy5 OfwYutG]hHqrbB&8_Sifۮ Wu1d϶}k{+unq?3l3`mhZ WA`Ba,Rj' TWeFobK3gaVD *noz2ΞbVaAuh 18^QwH6{sB8$.RSL8/%L,ϑ NjPxO3>[2։$bŵ 3QExTmBS}};'ZGz4=foU[Y-h'P1if~;N )?0[^8n?L9(YI9;t\'L9Ҿ~yH؎aGcgJW!z)%tE=%%bbâ4E@Lhd,~Jbnһuz  2úշ#gفD7n\^o3@S7֡=z#xapY {ů^J]"#cO{ŌL%9ʱ' Tt(WGL`6 >flєBGv9)nFl}NZ/;<эk5Y>_Yoj KtЫ'ٙ~sc}j' F:`R3w pҤd]_$d|2wKA_m6*E?zCiGWsGO$KS:%pYں BE^=KCPa^E42RR$H1,F`D ΰJ\O;6igP=/ku(?ih#sBw*-3Ii7f*D Adcغfnx4??$$>8&i_٥V`TWV(7H}ފ' 8 yz?)X% CkCoUoN>M?1m0IEY\B/}IgL7@S*)ej/n?e]QޞHBC'(JZuzTM:|Ke2⃕腑 Y7^pjD2A3? w귪Km 0ur՟ALYh4bSIdZ2U1jv*>4[)#ڠ^Q}WML+1 IjV"HQ%e0%aeS D;uS:"w[7eBy-/p4t:N41 P2&Z eGKU}X > ]يtiR%;DرT2NBXu ЀeqQ9PD8rVau1C7I;ZfQ.&qAIsXl~.wn6h[b&e;EhDC٭ɔPoEK޳f+-ȂXj€)7mpמq<ͅ}p MUcAƪh6h챎n FoA8A(QS|o<݁k0C(!o/mC;mULa(V7u- I;2gA[DVXx8Lpdc}%Mv~'* fCgӔf[φC;i;D{V!l@YW[r:쀀9ӹbk4]CbO<#:10/Ot A_8B,Uk Ap,G% Nj>ϭP7窦╵".1.6xPTqւEcM^̡;K)oJXV8/LpT l![Atڜ{Qʙt]oD==:(Hy"ZK._`c%֨+TYwR:T(VxE oB`4݋1:zX u&5O23~rc| m#hf#3,IWoŻ'/Nn"ˆUٳ#G7z5 X;lM/^WtVrs\c s݉1iQ\@9ݎix ۸QR/jmbS"<~ßO +MQ=Ԯ;*_-yHS[֖)E֮sÓTr=>I=;)w2~i#O:XK±&$"wBt:8/mQ~weJ5 I G"Hlz_R sctոgo[_`4<l:<ڟBdUf'ٔc`sY8r=ZGGZ -5 7_:dFhiKaB~{-F÷Y.0п5:UxpQͪ֐f'0H̨lBD+7u6L.PIU_q9 hs;E;Uu =3 n=14X۞4zQs_Sq/$E `3C!nûPUx;FjCJIĊaɘW]!dK' o\c ?ؑ-BB'W'7ňG_,(>Zy7 -ExuFP,q1I"qx If,z\NDs3TGuz =a|c74C1 YoҲz@o8ِi~[NkG'6&I~E mct JQ>xm#,iIJghOAܰNxp5Nc \ 9pг꫾ckQ;ᑍHjMl I qy`|pHwU%7op@tc7mَ16:x nZ_0 L)=a TZQMA\>υ:Doґ*䄟y *@7kz+INGф  Z*5}:Dy SڜIg  銸H4GB/9}AZ{. šՉҤ҃9S Or~c=[ƒNZā?{# ^>QS^2P%-5#4ƖQ fQ6O#&zcRڋ߳RP45aq k7m&vm|~϶'dSj9cm j#TMGf">;8EɴPChK{;|{?[H}LH'#]vr\ !Ϻq 6cX-/FUT -6VZ1i=>s^UݢGc5s9,4=kOƿu|~V}^5!)ْ6[@3d)9U7E(YOAO-˸nj;׃I?Մ#8 DW<Ʊ%ﺭ5-e9R"};! L#=%HPhdUc˘(K~LpPƎ@Tb'h7wqG2#I:?=tUOAsFz柂@Ҡ@do, y< )y"H9IUh?R_[7Z~gx ¢MD{9TX% m?]iuM [YtY+dNc(PRAb~!K)47DΊ}YMpK[ZXMGU4oe7\n\;cooSB ;k$ց?C}jLCJSzIk26y^5 5}tb~+Pdƻ?n.>g5G\?jFSA8uȍ0x]l_;ZeR: _S*<-ÕC #fd$Bxj|hj"?t]먺Uޕ'9Yur)QwaNN' PXB|3muƕf!)x[ e Jϟe{U":}5xkjlJ'=)}"rT `I?d%zAھ2F#fka6g2`8#kPY׌`ek/]QA6b׸:UTvGBX0S jBA CY0%е>@d|7IBh/^JcݍK^3 Cbڪ+7W^|s3Xh?7 ۨT"tkCw18 y+yj465T@ǫ9 *jO/9ȵҘ @BDJC|[kn ~8y92Z-Mj/LDO`עĦ]dk 1QUVp\:$eF}Nם'iQ.I{ֲA":V''S=M ATvؼL l \~#yusT**s=#<٠$e:2:73o=T#rY*V]K1 xD|Z߸-W[ڴya_ &Fu(GO \y #'k4@ְ"@/w& RjQKPku>ĿIzWgwe+ZXiYSK|Ms h&2DXo a"(O]w߳sP;P ~w}'~gC6L|1r8f ~XO[zmѺȃ(@ܰWٞM]B WU@TU8 ZJ6J&Oֱq0mL21NNMJHSdWMہ{YA"r 0~~"Rvwd﷽HX.`<wzyabP.뇴A: 5="~>\>:TzO"o$z޼D7 N )TO,QIV_YX{"[f3l:$g,11Z" ɑhr+蘏JTzr 59H4 ">CP@f_b%-~*W# BiG$3;d7HY#:0væUkq+D'B}Y "pq:2ęZWyr$yymFB ށ7B>Luw͡))ql@9/k'^"jB%,pՓ-IQCͺY]iE%"#Dk5+)۲'9Syl|z |-g`B.dUcE}B|4IdӪile wVAEj`,b"HJ8uȡ"iv.xZ'Zj9SDfJ? G_ʞA7.;DUE(ؕx&]}* DcT׺ǴL8^EYo'χo8>/ONPt;n?T GJa0 Zt!/DR5 4"<9$}"=mh^i}OU+yka-PjswL7j4&Q-蹵n3uNLs&//hcڹtC6TnH(F?Wn*:(מ_(S(W6fZS]KL mGa?b`Q 9,탽 `c:Ofg9/oT!qZ]Lb$ hq)Vםy) tDrLI|:a{Y6|*1(>!Л4aL+B+02Po~O g6N®HkG#5{֯"ɛ/*~HVmI f5!ɵ\c`H(;ǝxʎekR6Rيh*ah/-0JER blQ_YmVq^ . Mj3q|:$\eO'N$PB4cP&@X9i I*:T75,a9Cbm?kuaTWy1^lknyϬVJgp\:}j Afz^b mW1^ p8 VB' dY×ol4V5Fh(k!JPO{ 1)dX c@|_jǏ[ nܜMsOFNJb8E\Ti^~ _lm!hpqB]ʉ}<&V;QZ$`(R[h*VG|6FT~+om- z!/0Q˃ӡ/*/G F-;Bplg ;E@>RiN _*3|l2FYo֫?kHthJ[C_GXg q>UX2Kk@SZ!c>䪶fT-hp[vrjʟŌI:=  NU)N$27\|&AF_K (9۔X'e{wYοvͭwlN}SZ y[:"l嫠fZ<3dO1EfjW!H:%H;UUEb a =os{ծ#vM*IiBGZmm8 իA^@xXM$TIz+2y^@O.n@kc{{l,J&*j?2c~wBd<c \/In=!kIOeb/Xt#X;մt4NuAlj}R ]K+B$V{MC,C{R3-N+i<*>23:+C`4 ʔR.ifsq/ $p7“\ތ7`hNpQc:&͓MS~5ԮfWߴՇɷ@ÔY͆kb_H缛@-2]S g1;DY%Ufi7Bu򷫢4$Bw,Tם .- |8a9pqÑT!nFj芨oEv ;0TNET<&aJ/ufQv8ls6j+jqej^;!s+ߦ¼)P|$?\ݼWFw8pcI/8ˋcTf\33JVjb+@Dc%ݛ5qBc٫{AusǙ_c嘈7 rZ+oY\djIP: *aH|!qRQcx^MJ'8uKYTIP@iE_:o1vI..8OqJ:Mm΀M6.UrELPR~`lhk6EԫV|mQHՖ+囀S`;llո(WTL;'7U݈j@+ 06O4&(ޜ'.Jz@ ]( %4AF 1i늂_P"q^rM&.rέ !.$wi@B46廪 )Ф[{A)|qܛلy#||@/'S`T`#tQx3ݷYK2?Xk2 $fEɑ߁ Jq/!&llX~™6 Oк‰Qz{r&YX64@͒WOI8ʪ끉42'1J7 E*a_`)O^(ճSzEC=n!:@2|eSU)90:5"gn>f pqCL>dIJP XTL̑s^ϭU٠O8`UuA_3.P*=Lݫֿb\Ҟ߂s x,%69cuZQ6FNK΅ G?D^]M>t2nynWھ owSuZ0%l]֗nʖ˜Q~076k3~ ZNxOd z6=o-}H:y0&΋p:ujwvKwu:Ǘr4!^.VJ2f:B5 rᘜau*v>ѴtB ;u2[P`=[.Nn 5՜ vyaosOAc.aS1",[LG&Q9`)Ùk']{*)<Ѩ s,ć"(tǑ#NEN[jb]_i%S5yt(/+Z7>!>MI^2 ^Ud߄ҝu[!V6 CIc>-qlv+7pcI٧#rl0זSJVH2L.NHU6ٺJbE_͸wf;uY;)Pܗ7 !bZV0 nKUX*ozPZ:=$os|,*K`:Өi 0"o.~gt^P䔏E{=)*WP޶Yok/HI@u6Ƙ6A?)v wߓO4U_jOJܥu1"oM<wBHl'RD&D.jR[Nm+ޡ+c;W1lL5cDM _@>?/"$R &tOҵ*')Ϙ{3:`Ԝbe3J \Ө9R2m>[w^ 8/RqtB]&`̸>' v1aE}F AZg&- avvU\Cj1ic %P[[LI7 sd:.~&_j! :~g,-E'Mʖ#1cChBmUs*RUNBi:q_ڡ8.}5Z'6>yrGXiލʚZei*E0t|~bui?7xFTm9 ߡ/t\4"~U+ζ4W=mcI^ό'rAVo;j {  Ֆe rAObT`7VmyImQ a2!nSGEӶ4=3C#Ўݼq@dĕ-=J.fl<*<)ԓji̊ wfGl殾T?+@,uТq=fTkި+G?-bO* 2zfM_ y4:Y&{[X&6CU^ ۪"D&p:ءGJpVS"o%4 'r{VuGau1XG,xyf?WUiAۄEX~ uiǟz*2/)-v4 v0&ZLH~ \@([r3X[\g<Ù PBe׫2XC|_<13y]u}84ur'u']-]IH _) .q%?Y`"K"_;L<_vpLw;i{b` MشOAtVe,!}JJ=Uj8arEWD MТ[2o20m׋tDYܺf.'/n JI AJ0Q _yk]!p*P2QBF[vYE5O>Ygr嵥PCb`]s=βSHe,U k\Q('orx:͠rf)Ƅy!j~WzEسljQ#-簼@IgQ6A!Imѷ] 9C9j tdTqCY9ZdCɤ$CcRJZQK(=ڣrO7~ PtD^F/gc Ր=C}C4mmaul /GKk3CLu[,a+g8Q=6|+_Ӥ0?f: i|6?6+D;.I{jfu + kǤLgA9t1><b^ؽw—OiSzQuB@CB^~SNwQr03N2f픲DpΖ/a8V.gfBYXԡrg/H%E[s# H?;>z%ɖ%fcQ'˵h(k29r}YB]i6.lo:O^J`SW )lPnt eSZ0R|%fx lgf! ۅkxFV`8^hG*t_|bunYhmDyhLaOͲ罩S!w? 0^r|2A/ˬحB4;ࡨU3/;|XHi5XG WXVI2?&4j^{AA"j[X=LWBm.W4yUOhUb*6€ gxu Zum A6+2]9K oTHpI,y]cTa\"W}3im{>|:s5Kawj/~a?zcPIL~;*LʥNݖ܏nCAj,mHnf4/=f/y9JʗbQQOmRkuM>t,[z,b=bHƥW:I$#=#yytIf2xVb9o[?!//{'O]g'Ǔ!Ւ8inI-Z;=-y|4 Ԟc$Y"Nq*@}ǵ!m{BC fR /zފ  Ndb[ϭbUFC1ˠ6\Cs`FJ>udvDz&#G@$T|? _XE:7.|~"rQ©K$͹GuAKe>~d @+?`'lUu@Hܦ: {.Bo|-8`nv3K|j0v؛wu2~xCSi"`|ޮzv`.M,jsQ dWB\q+lC^䂅D{FAaFW2a?_t%m>|:eKD˔M)h?zX Ů77sz-j, y Re ?`3ԩ:ȓ/q?24c hejNqx,4wc0Gm{*X~+-avO,գ=>>NQG4`ϳJj|OKA〞1(f6ŨT1Bw:;ȧO׉ 5OyeKAZH8<_ ɸ{pf+͙qJJH3qhHm_)%{P/ǮMe7OD/% hKc0.ŁKanAiBK_*^wk WThߞ{ {Z29O*K{ ^49zt/5wJE `2W6qH>F|dc!qRɖ -$&^8C(.f5B}k=#8uy`{YLa:dG&gMzJV͹p=oRgcv A w\\$v/e>L:6DGFtۤ{2u+ƲHR.,?ke 0_B] VĊ%JDA$ypO (n9#W'GXHh"'dPDٿB_c(IQ{;Ař}<ƚB wd :c"!\);Ԣ&,DB1~P\ÒrKKֳ2dz$6fJ8W(.j]T?Y4k};HIZcS8^I3ئ2/~vrvԦ@=_\ D&BIӧT&ܕ8nnkMƸe.;3J~X\ȱO ''jzNKOiPS\az)e=XU.>{SjXS`O g}d7j5ۜTXT1Uے iyq_}L' 2⒥L?Y_iwfإFrvÃ%&޸OK3l'@D'/قG&zIHp9$L3iZzC˔[S@xk7*g.ba{:cn+BFs ͦo(ϊe9(~\\p9UӀ/Daa%D66NJeS 㡴|h-XAtt#G.31Wx{ոk3,KuVK;Rh55b&xմW쥡b͉ CD̬fEc!*6>vM{>zdI +CFB9<" o*a^ yّ3[Bwדc%FQ :̳9AزYϢOԱxdu頚,I$DإbYU:e[#^h2G?#O؍&xkݛhyFF@|!BuX}MG/F%6ltP$[uaܱ :HI g }iIVjiog@T+ëCۣ9B 449T-snp !oWU;@v G-CD+Gg?>kBݻ]W܋1B5uQ҈`f>6y<Γ~b`_D2@>mRi*=j!,ϸl[ׅj@sR_p쏕W}@͵QxxL eaquۈ X/ri -:J0'x#HXap^}>ᕌoYX6mhbIqd=q|ٚT8zgI+D(8n˜hKIla٫AlTAPv`F$XFQ V}E=#8J& Md J߮2.IL7-(:Aw Zn+͟q1H1jk?S|^:ZO1%6@&r=49G0ic= "un~sP)QD~#kmRRz BboBoG),x<]_B-/A/`D#!S)dX-;/@al\M7.U:e2W] V i)Nƀ趘݃Eh xlPTgL)JMAF>i"&M.|T{U{^7U4MXVN,M:za$=R J6[~>}ԏ/2I{Uy58Rb eѼKeup7<"-@Kl#u3k78΁)w ߦ,'c@So@k="sKN j\ٞ kj֘mՊ+5K|fD%V\*B1uX`~UknxK"0#Q!Wi#C]pM:'3Nt r:r|.@KsrH}qT4R*(4Oз6[[XE=,/ޓw{g\-nOMmˁO H|-jNrLXHԕj8n#;9SMTKd3ɴa\{*+l:#j%x|3Bz D#yi@с_Y#o-śfME*BEͶ_MZZحC`8AS5l2fVmP*v& uRݽ#7L謜mb6eɋŎ E|F5hGi (yq55+`|todds^@Ð.ޔ(}?'t IEO[ƫv$F!dcvn%7wr7g#dO9#9¨Tq%+c%TkXZgOI'd3$:k6ago*" 'dyMdU`O wjZ Rw^G9 & ͋Ri!R;&m C?on.EXG E~A(]e;Kafa*2 CD)9u]D|!ē0}>l> " 5-ο4:$bӵ`0-Q{W?X,J[+aIxAֵ@G@2:DW^i1&1{Ėot&PyۮjS:kh4+Ũq.[;Z[UP ŊEب%Hk.$^aY[.~ͫڏ-69"w*$B $IJm.R-`,з-pĖp/8MO$SRF Ļʹ#OA4>sG(o%`uԢ)v/UEēoK ҇ΰi>~ZYIbƀ@QOqFxK&PȟxgFMD^\^, K'&_\ H#D%Ҩ)<N+ XX/NX mwG\@i)&Bwr/04}j ({|[bta LtGe)z Y#b\w0. (- D,{䤝ŞуeQA.1iKj ܸh-Z`XScl"f %ZmsOz޼Vtq{S^G]BCLό/˧vRE끅F9\_xf Nz;1~~Lݰu1*ǭ&b_v,ITԞ qcs`ρ釿vbB1OO& !ɮWX7ok-NOyd:aJbk4] ! i!:.b/rQHVGܕ"SVA+u=OQ/<6ef$i}3D bm_6XvjbIBaʦD|'𥭈ymoµu326H8  qvF 1l~K,_jdD)lR<@(⟴z%ZC80!K\"6#9>p>g p8k6׼I ]2)EyAڅm_y1`cQ:`\?Ft pՍyo',#JQ{W0PÓ*DU:š%ϜW]'t?@$4Ra$q\qvM7 '/i/WMFowJ8+N'qm)seQ FOJjX\zV$%JIV  +rTh&T݀l}k z̃?SfXIK R y(`sE3'ePxhC&:M&]L)d ֮ trgE>Bt8aOHN3ȅ*^ۚ 0828I'u" G#2dɒ6<\~e.d';f x.}R3،En{ɝhN.w"(CeTK"6^l nRвxfŏC)|kռP<9Mw((0@퉸 ͓K)Grӵ:XN 5 pP%i-E|fxXC52̱2:5xruȮaTQ # Kx( t8bJKcK#S?&/Oԁcnb?0 v+ϯ}8*k{=A BJԀ(ʐ{rQk)oTu1rB%/J((Pm2߿C9隕/]H9:{2d=+<_ʁF ݻ&bCpW^tldLўPGط 9MRIMZQC, ~8u!}Ųu>d+r2XkSJ_Qr׎}kc|Cj䪤AXXsw=X'g)s!|Z@gH~ p\/OMȓLOh+ VK- Xnm Ԗo,n7~I%lg+ /lefI 䖱+mC 뾍~Te"ڝRcȾ3 u36uqB>;X}q&9?s|OmvBWcwXW255҈Nk3ėË(0Ǜ|uir4+ǓmrЪivѼub(Q[zK^n^'Xc?cj `h;7X=Sҡ.q!^,S=ӈ͂ij֋nE:}~ 96Pqxuj|UWXmHLU;ɈvJz EsE+۾d'%_ܖ]e ȭGJ\QF $ ^oyްZIvMX1RHbMNukB`%Uȣ8Ukw/{F}wɖ=0y&uyk% [hmq~p3xᎫ$PK%j79oi+.K|IdRZT?36nJZA9e~uP$;ّ-\@Z 2A1n g' YF<<Ȏv-eXXcJ7}aI;+iKSaiвrW} gnQs!4ȥh@^ E@OOR5\vqjD7gT%a iK0V6=I kI ^ 1x~nZR%'zL3_e1ݔ/}l4+jr29n5=a$F(hAsTpe|&'uH^ ŧOW 3@C >@|2t>:;Ri4$k9-EXmvyc|k<-:|UסJb HH__їxcbQim_P뵫\'8> Ҡ"`+|(M, t}[LkQ5d4NYSj->/݈e \ KP985<=n>rpRūS# t~DKR3dyա$y7xzCg)$r$`&HwB-cz;ewGO*©`G행'=Dx- bK;),ZL¹IlxVQ2/^E~~^bwH JWgaBH| T`Ǩ2uך`! `_m 2aYYv@L*ZB"NGUc[e8hjk'}%cb܉H'yofY*Lj =]!}j*d`Y$J W{suve)W!5 <)U Po[+UE&fsEAlm _Y7Qv}wXk]ݝd*8d2̛:E1ĨM XwtcƼ[.Юfd#T)O5q.wR3tF<ɋi ǹ;e>!֫'.*""S#.8Tv7M?v MΏE%OԡFH|:awx57u jql xBNٲ+)&{"'[daUx>⢑f91_㒲|f)=j ^hKra/`e%\~Բ#L"T˃n5;ľRkFm?0xwm;(?()njl=F UD'6IߗI3O[n;K}kME+#7L*T )zފa2c7 | Z#Y5 )d)R' Ĥ>Ѱ*44jruЁl atg- Xm$&^v$zOtcbV'u xo3ܿY=dW;Q@) ##=/{bQVe83 a93ꜮxIdn2#Ab6IkfGݶoh( gN]5.\띊T_wj?^LanINT7hyvoq-0 wipI 6#Tb?*m[j h ^D evD5B݈iKQ]3Zs)j8z2z>jXCD+"J*v1HJdϥ D`􎤢| P . &7^^W bEyj* Z,_V\B3.!])| |Bׁ zf#r: Ǵk 3#Fމ ̉_9ֵE`%J(>^DVgET!7UV#!~ d*  ncr _&߉-=meHF(N'ەgD'`^[HY$ Ɗ%."ۨ~Ҫ'Xu/i3aۢz*@ts@"OV󢔫7MoZ_C قs>b q.;hZB3'rZNC$˲K8?3lYbC+Gu,Qz d;DרYFHВ?HEA+f?5޳놌E6rҢprΎ2o,?d<;nIp`? qߛl`EAC+qG&I"pi^i@i aejᴸ>VQ`&aY-kwG:ѱ沿4_ >%$;Viڬ˝D.U#e_;Fyx SʌrTeKpZ1Y^h&-nM퀵I1Hn$uOPk$Y]d }Z_n˙8mH]G;vȍ0 APEIb3I.V0bTS?8A*Xc/>Z1}( G?Nm 짚A ?<6ĜY[s`yM&ž`~bz?x|? =,U%R x@M.;NC"d_8I|D=S`,T֪h4ŽO t+qE~8,ga[e M?BPLy0]qܐtHXf(~ iIk7{޷`pvW$xuZLG&g!N!.ly9XETQ9:Jd\W;߉a(_y)y' m1rÄ.0#x8Be8CH9TxymKs0em4  7ő 2ϧ #Rrq3UC}1Dᇀ'Œ"uAJ9H5gp[.2owt7nU?K ЁKb3Q@8.McA;%yT,!ivke&xi!5qT`{2y՟LZdIAyR6:gnGA+oFZ 0-ԍ)[V YE/bFHcBx}7q'W-`w͡b B|"w,9ZpZ?714,Nz3d +=.߯hV1e@L=2 Aڎ)翘)k'V`W.Wv&CZC/]G)BV A}c #>aNx@ǀ9LXObQ. c:{uMʝQ;D~ XO,?O6xXeayքc0Yc\+} IP7#gJ/㖙zZ% 01RkGLSyzvl$:+g [܅%M%ޖ:T*y1ϗ2oI fΚ59~puH V jךzWCt'GXY+pmrB%.CÔv_,X)5 wf/|*{p~ݷapSzp/ ,)?mq}|uOxJGniWA8(Fdx^G\Ӹ|Vc"(חȩ:֥8߼jWS2b ]?VK*Sړem@$hhl.2IOMahI9Vy- OSK̫Kk)>+6''czH;yGL5* ֭e M>pې>Pe<Ⱦ13ƲqU M 1ux_:4shCJr{*A0uҟ"%65|*F+%r۳zՊ{/PD(Vr=x5ZaUYRC$E40 ro4ڕb v>n~/00b 3MoK-6ɋ ٻi\{Lh[mTpnG)l!z#Ul2^d+!|LK$!;Où]/Iz.&()(c_V!vvpƬ›NrkMnn%Ia29O5H7xC:2;?9>sNqg朔>䲚W(}C5I9 ѭpgq 3߫SG"8<cp3S=Rbh“1m5QUBppzqgկYWнg;\;nmj6d\{~g<'=E}ԅk n]!fum$wm|a+뮑oQPM,TpΤ|2ËGUz)Oi4- 9GAӴN6NkE،oՎs/džnF@[^& I}1Lma!J)\5 De*߃$|1UE]D1h!~!׮3L<Y;HCFǟb]=xe*@a(aHٍBk% Yk|9byN7ϴO5Jȩe"/Wi,6}?4Q:W:(4~."bhjlp-z:6@.5[6ԧގeܾVr[ۨwUfFPV :RrRu6'xw \ħԜ0(wEMhG0Gw@ͪJ IuX 7Ŀ{UHiN2֤ cfwlW9U=YT~+3> mwkYAծc[|)bX!4IfP4<&kdEVtnyBՂw"A|1ǕM )yla#Dc݈RuXSHI`4w GӖֿyJdG q0a J6)*1DFk0=L>39 N%?XI="S 2'BE3a6sed\?:i4.{ ^WVYӇæ/P<1$FswB @܍0,]`0}n" =%;x|hE)AKBkO9 TpBE2m8q6lUDVbRH_h>©0"c}Xuz[A"ڥF D|c,BB 61|KdћzFM:k=`@p>CuS88Y 9]{ (E㲋sTnDmt}{fgR]w/̺:Y#4⑁ؿX-T8-jfIא9aǟmcl#oIr@QSOFۭj󚓙tlkI{H#耟,xtVj&[ {1I |B7@G&v) {]7NnI*op:~ɳA4P?|%@i*kY&Xj]{lk{T]R2[ŨLVԓq}ش߃ui Tc(C ¶dBQ0Nj@*+D>x0 `,0ZέK ,^}TchԽy_UCN`$U0j&;@?&Qkg}Y$~\VrvИr*U7,U2<0f̕;ҷm29oSuR/3!hB k j)rUeɧP.8cx)lZW2j[KSpeŏ.@1;CD蠱#ocA`0'fF+ 内!j>m I :BL2وC9bfT9 X+~ȭ{e>&HΙCiQoHRL԰y%%"{)hS1C1S=_C .'J5zPQ[<(# XhuN5hRTaғ ZAN\'qA(*{'ZdRhL1o==ROe.gY >`ŋ0dc6Q_X,t fpTE\ʚkp]3F+?k//Ҽ2=Z^ Jk(<7J (o)Cɸ],'q"F#n+C/^.ٱI[ߢ }ND`߰9l~j%6j\S=~߆, b`"\BS" V 萮򵤌TAy]jx3X _ӄ_%dD捳ׇ5hxT@:D(Nl(7aZzgx4 (?+%(|*@fy(6aI8ѹ^!,996oMSs۠*JT症4w^>XI?@OR \)|T%Hc8-+Z07ix#6!e #SI ?6ۣgz v2%\[,/]O_<y溂!R\86:F9X3 }Oq~vduߢIU%H1ImFKHVv.@ҋ\:߷[~/9c~&3Md`A2l@), ǃC 94. \$? DWiW}o0Y39 ܔT>GT)M?iȠa%\:wdZ5aI!_1M5z_R/\MwW-\rS@,h똵-3,7n7}i6w %ݣR,&ف+!SE#qD#-$jYr"~ފB9wشt M4r #T9<-h]-[9W01 awL͛d?58^Zn[ Л;?Fꐸ+u@9XڋW9|\$1ܧE{jEf~HK5(~!ѧN%MlJ6gj UPb<VX@ht+uײ QI}UxͱO¿8f\" 9uPe"i\]=39m)'e9.ܟnIzo0GbN>Ĕ T/sk'9}j.QYD%qG"D9+rkgy5ֵ]G6=YNvc|DlZH'LvCnʃma),l u=ʕjrоB( _T%;s! `B=4O1FM#U\ݖ/q]pɦmB[cT숯g܄pCwQ2R"ᵉ4%mk—>ל4q8 Ʉ:d6(jw\j&"j_( 7ȃT!$Y:@'zέGmfνo[cb!i]}E3C]j؝>_{`H9ƽx-fh~ke ߠ@X$ll5̈ kw!GgdC%nfsN*0A!Ƈ-w+tf[#6%=%JT'/ʅNr@uΩ~F['9&dV99lLۜ1c|rd:Dms Et:T0֫Ny9b/-禱h; ~!CMd7 Ԙp{L`O$roT# ,l0APs\֬{SxqD(/ڧ)y_ǁ0L P{DmJIf¿hP: >Ʃ:Q[>~!/)5+x3s_|^j$}@x7)Cv;@@<{o lT?O#=06ǒL>lʣr4t@N!dt#8nYX4,n/ "s}MP_}Y=z _elM||3ԙYC=c Wmw8%S-Ki4+ԥB3]o'mժS牗Z9Sv"WXoL['!>+wďoPa&PI]l.ONi1hLդ[̀a֙V7yS0k;i \jb'+;PC[̿5|jBXs vJ_#`w{EJ+'hfXi-)L:piDKɷv+SWS(ɜ%CB;JFՍ_+U<]l%٥\W x\10fsƄZ'ϳwuPr'ZC7Zܥ 4rLۂͽ|"]jrI O~{)x7F@\5)4F#wN)9 b~! ֑lIo=OM*$F6H3S}˜Ѹn<|89 %0tap6p;aO v}CR%xZM^Q o4kW4J~tsbaWڹ4z('qݰN#m]jj-^K)b/P؈|Qg"{zn;i(O6#s }`chUm'zezF;^)N$EBb.OjRΐ#+y~>8_*wokv IDAJNikDN :.[,0:]V%|ꘟy]]3ǏY#2?ﲸ@h , p _9w-gPNj-tV QV|yHOT윙TE oݕ^^ z > <09w!sg*}b+&["OuW K($Ez Nh3RSEZMЋ bpJvA` _s)H>n;[Ū^7~*3n1飾q LYݎג4͉-aUl"CAvdKhּr <`7įӦwD=!-1WQ{ a?XX4$1ẌīG`{5ϳC(9?ɴƸv6ﰜ9iEo:_SwwpN!=~ %NWr\*) >VmW{ҒhM̎kI_)v͐C,̇ ܃2oX/9(8mF.J4<kƼR0dPR- Gf :l0OLm$1KXK~GVWg욋QȅD8i#0< NX7Lp,ǏN<Фy-?2+9~f}?ɐ4M! QID%E%[ U58Th7Z@N3vd}ofa]QHX2!?PNHtZaU-J)J@açysM L ^% [Н^?]&wjY5%*Wn#rڌ86csؽՃoB"Rt4=HonUB=hs߬+5 hmnh|&=9w +ETN+- hTtXuEܟNGIx 64D7.qj˙ (:oUCpMuF@|@2γUņ(wǡOQ^mS:1 L$w% o7v[;9F"s8L&XxGYаB d /9d׷ 9 d^i' C(o҆cԚ*m8 f9UblvO0jYv-9.S a#̹_UE3\ fDL^\#4:-xmjsvEIYw%5&uJ 3(wF+5&TAbuށ#f'sȓ1wO d!"kgh5ι ?]ζ"zY +T9  R>H2r&ch{QazG.i좀n8gI {Nل2D|Bg,*4 uӞ\%3[D =h4y(%è+#l$e-;q-d86gt*եg﹊V>Tp'Ь|{7D44_0;IX[^9$r\m9 e+$EL ꛽E~ْ^3!Pu,9͕oN4G.fry?}:R[nEw`U)K|@C-['KV 87sq,Ǒfx+Z]CcEBJO" ɿVq*vb#Bie}Gx!I[5::S;_drV U@o7QTȗ$DnN/ΑxjRP+=g"_5X`Z7~Ce/`aM f{|b%eϋFcfnbVa[jRgp+g:2.~bklޱAIPtISZa%ɠސӍejǥZ?<O?&aU'Y W-?ґ[HWw(GL=|UEg  УG9|n:s&脱@&WziDW۲t0η?z+Vr=y)#Ϯ_oc SֳA*=)DetO+|8c,H LGUͰVCj淡]ֆ}A,-;'3Tn/8kOq^?-CPЪR,3Iow@-o~SUxsXAي ^?? 1?ND ,aRĮrz(Oqc^ǃ6T:JLŮ~fQbؤꨔhSAhxS'9sOV\m ןO}>k4郚̵2sNEvUCNrgJ̄M&Y(-Dz4rK.[im"5EakV-%>w2KObd %p3üw3TLg +c5oFLj9vK,fF'>m`RɄF^Wj^c4%h:n8~GRח*[Y]"gr,I3tEz,2!WT 7BL;cLǻE6ZQψ@c7YBfeh-'YoPV)5:z$Y@0Pee7 D "LR YqRzۚr@"4w|NL"PNљT=$oa^?IDK!hV)drj .P= p #*TUf0/Hvh!BW.ݒ ~ZP:CS=.YJ?ZSG/6:0I(7,O_?t}&قr,qj(FQ5(¨Ѣ[p58SJr+S>(ۨ6HJ7-Сn*G(VԽ'ĈO^l$hKa*1GMAdfF{ RGWeD wbT^[LU 飸{&O Yݥ2osꡝp&Zz2Q\ɱYT.UvMPײ@&zI\m-jϝ2EPK4M.\Xz S3lU_HS bOR5P:z`ZooĪu+jٱstphOU_|#ތA+&N iiݒ*Hpmv7>dT/]R<2]Pܘbyd-*Mۭ%Hѣ &*K~d)됀]ϴꆧp5i0Ȱ_ѕz<>(A6mXF@[Ƿ[u"P]ꅝVJF҉a.cҾQ!czae |U Uhb V$||O"Q/v>_"w)}Ĺ$`+»V_ qzxOϚ7]9M ^{6Lp8(+׊0fyK[nU.tk숯(HH 0"mtQX5~Ǣ M=Ef x!;#'@ l)$km8 "O{Hݦi:應6m89ם)I@|)ݪX%wPkS`lunLl#;%$$7یujU#;kV檲 ~ ;$ikRI-qHjjgю`4xpks%iEՍX/ I $ E$ 2ШaApWq?s`_0-qeMySfUYA(;ߚ9F3 lk{cվZ^ũt^7 b 7g%|%!Si/̆\l;+ag'G8㙐Je虫~$'Bt6d 8<,Q8_>e.IrM-rε0ɴl=PypqU <6Ɔ͐s>Bvk,5>VopE^*F|am\ME9  {tdR&DG-W ;` $;e =I\d7`@M7 5źހ5;kC,]{:v̀a& #03yoDzbr%R)$^TKR d+S@سc&`|Kx`DcU_ӬCݦy k{4{_Ct w FIh!Q7C/|lmj"lZQ#2W|:l1Bf d`UˤFDiZ˂2{`-D7ʩ }`urofr:Kmb}[🧌Ϳɟfg3L_M$~*O (ˈZ|1ΡYʰ`<9}jRѻk `^agHe7MQnF|pg}4B#Vv4kӚ"#gGm! @K?3 qL=" O~M ҇S4XθOrJYBŊ3/(L/?x^ª)tm^Ce.g`dھGvuh; .}A13%&'1rm=k./M~1IzB[U,& Bv]件IB[/fGԟS7[e9ֶB쭡:c{bTJb;yk !AS.7(5Lѐ03m]>`rߓIW@n~aT.`{YjfO!p0C oYG#IuAT̡{ `.QkKE.%z~d$~7>jC*]lsp;+OF`;ӻt 6/ \H-Oz gPJt,q8c<۱܏xsNRmIs[ =c`Mc>B?$OiiGcp&)Da~n;ne;Wc/lfۛ-Vo% #HMѦ\w &rmws)G^@W3\hy<1h>gF* ;;]1MrFQ%ݵ3Pb;h7^* dpv_%tw `9`QG:e3Cl莊`FHwnD/q\.~Zj h0x!US{6YMyk4Ljc*4hM3DPSC(V)Gd {#:5k:d ӓغsU8>Q$EQu$˷L_"X<;ռgэpYrU/^N!~D;G0;S-Hҿr^.✋Z}ԅVW@\o}+=pam-?zˏ qTv5xukoI:;^$VZـiժ]%94Wy%[`6xoa_rf >2$|Jc}V?a%2b{D X~HULkssS|pc j (dwVʣ'3mF |מn8f[xO`քl.l!lYEy[,x ˛j3^m/ 썈UUBZ%̘.''!|6efXųo|cw]Q=O#' 06+3\g&G@8lO 8/ aZZW'%kEuwݸ4}k@>l`'is\DI捰FEpÑ׌'M cnd{B0O-Sۆ kdSJR79cQ%bpev; Nt0BrI@RZ`^‹#0xU#>w)놨 ː^yc9wx^WsG7.l?^pLh o!ڡ36ReŗrUXdH*@aP~zߥP#7c %Hˆؓz^uMN xUK>I"! * ߮q.RJc&aE_-^`]ݣʪUԌuzaV(r?y3!Np(in=WfTma1g+&-FW-Ծ q|pi^xf]xf{s #ǘƇL7rUK mD{NmMYҊ^'eO=z. %q? *u K7%7~4ÿoA* skxiy>e$]SZ*"~bjd.(rYl#|_jY7&T`kj4M弴4hC[rU()v*÷u8v0Uta)!Ճr'v":s*x0ebǾsKFKSW/"6"T#s"wXFd/'F"J{bu39Zj C(ն O첚=?L@7'%8X [meE 1eK9+!C}{`4) j#]G mpBx93;1K~+wr[B|kO3 ._mc<3`OC0 Ec;^oɕVK&IPXΩ{7ް:?3~ij$5׶M@e<>)_B'4-R4p['JtpMYyWFb]k!E-~mb SZw/jDh ݚm?Hr\"NgW~w `SQe] ?!_ET_GpY,OhԱ.C@A>oaKp6=(@4bevPn.I_gOO YZ ³-PВ<(yEدd!eEjm=?_[9*u_]yJJ|<%Z>~Wb O^w86ݑhho1Ѓ:=Q2$0]&18,1 {_eQ!*MAJ٩ gX9(aF]o6"66PN a : hT\˫$y1u/z~a\ AOa_Qj޴4!wG2r|)vfuˇRUboK腊PfTJ9uTδ3aͺϳܾM쏨<I0sݖ#?,!:&K"+PZ-.fh,E:wYt2 b”J Ws٧In\* S{۲aҺw孮[q, +<}0oEXFՋ}e 2 vO y W)?z <}pbw[PYN2j Q}aQ&sY)QODV Zwe'&/ 4ОYa&iP1>. kt2V mG,{ИW;̎*^ qL mLI_*HDd )Zi4$9im/ QQ@ 0M_6R%Bt l:+LJk{UwS -V#O0k,,yT)3))WdGl Ry>{Z\}:EfI*߸؆¸/w1aҬm4g )4䮠}Ef9f:HU`OۘPt68lyOr.e2`us@;+ V\{#'S$H$/v7h5glCj7#}vГ5lXBݧV?&2=m?Ş+oj{}^&cFys"4FFUqnșyu2>x]x;G.ͱC p8|`Ɛ佂P(-#Nڸ y;C!Ҽ>cdY O .fOG J{Ihin >1(A UrftY{VaVQg~0-εy U$P\V`&=l?i2ƚr^߁ =Ch(.0j{Jg5Z?sN,Wj7:(X77)qX.bj^XD+& E='p5H!&VHFs&YvH1 -AJة| ?uYIgOws=D c{ 2Yz;21Qpo u\>bɴ}6tOm~O`O}+UKqh\_Nƀ>TM2LV HяSSK)[}k_q?lHW5Њai-swlchb̍6-;>23e+mn'Of2bp"Si88nndS!ÚlLHЩٞ(O8Θ'ClrahڹΧ2M=8!0%XL5…/%xm,Y`Quq~ƌ=6]H N,4Ԟ$F?%{)N5Z>ȏn"\{.|BfDF?fXW҈C xb-+ iF0 edHߞym0DTFhAQGCsn49'1Bhj̕r/!>!`h5`y n2lt3Ls&@wx$Kz$w}LN7SYQ [+Ve{\o{ w<[v>jBX2逗[4*%#Tc[ɒЃks."GQhF bEx-҅`>TGuWo\⢃HVskgwN[N۴L6Zx_ UOx9Gweߜ5O\,\`^])f|bj=sh8iJagڎBi\į W+NMu1K&f$fr)Zfyb,{6e*enߙ1zHvAݙb tī|ReK5V7$ hq ѳ05mB8 ,CT"yLo@'e爅->!`96HOMlPA3ZNz/M.^!ˑW|% \8. ˻Ir"wGbGᗄS7C^eWq`>gw_ QILHO2-'d菄_b*g:fSJppY 6"IX!Cqd4hJ0;!ݽ >uʖŶ $KT:K2p`/ea 9 cЈvK h ݅{z)>cRg`4- hP*ov?HS"^׊Y7Q}@w`<~gu*p:Gc!d5AFÚ6fwVWp3 Aց/q&-mHV[ޞcw(EwEi;{"[+woa=Պ'BGe~gWƚ' w֧d!ʒoRF|ԑe Xi 9s)d)P VAjquÍ@? VYĽ,4V")pts|ȹzqK9`z6 ؑ8 !dGx#፥b! \ɱ:DmauIxNt2ڍ`؇8t裔eB{;)xҏ‡+!y4w/8c4з#QX4Z͎ -'o`/l476}'lo (s7tξehs_$@M ASKj!KP*MS!CT6"څ8Gӌ5V rqҏekJ8ppYfTH\LJ'f Yp+'-l&ϧA> 4J"%z3hN f_B|f+C_Zd„9vwU %C"F@5d=U i{1C¶;;G}(AzzB]ٲ*C Z|8uFG> Us~zpt^S̒wzpLXNyͩ%]Lprܡb`r+ÿ+ 3%,l=Ǎ2V&7Z+nƋw/̞j!~ *,NUZe7F` > Oy %h:J&gR #ٯw 'QtX{amIEJ;?^r٨E aF~TjtvqfKnW[=Z?GSKJ8>L \Uӝ| #?Z6J`7ӫw[o'.z:2Wm}bwZfU9 Q$gĢ#^T?\|XL*HZŕK%+R>bv̭' v^P!ّ;ULEK1HbVS^-Ud&'Npo !V`q.UW"5pik}XF\ݰ<[+3=t (e-&5Onh.dj! 1'~hJA,O\;wK' NFdl_z0& BK50_t3 pVAQSSeطQ%Yc3"$D2韚SCi`E?'VACAP2I_0hװ)'E~i_ST'&GҼadIծOoMEd^\uyW1fHx? l"k<⼪Oò(z !DRM' Yk[/8 гo 2!iρre-pm+i;z$=pCB1#.]VT5To|n4R$h!1_J{KA~T@֑c%^QHjQθr3GA ef2t^͍ Bעt, 4mqL|sMd}[BA2]~d&Pb0ZNp~z"@ЀkFVs-a>t΅|S;_K|ՏQ'?C-z5.8PAoJg:aѕ|F̸mRtO'vfʙ(%?-ɧ"T ^/;\T7` k4["ueF [θ^Ox?C~^JFa}=g$ ԑ&e2Abb+N{'[lYZbv+?҉jNz%.raΊκk߄؝j9b/-y J*cAF{Hz36myL1j)Ap UB:eEN]575~˴!UDH~:, vFO<nZNn?0 "1\ޕNK>;wS<50C }[]nC3]T. 4[`O4H'޼Ay}2"lORjywJy!5Ftɳ{M$\@Ȗ,vX0O?@,zEȗ /4٧m 0rOw>Ů; ftT5iOmٞ97(=#pUc`c ɋN6#vz{LJեWtĚR#Xv*|a6rir˕N;V';ƍnxLᖦFJ0`ez{J;OPi 2<7t>R)iǶ4{XD غ2]Vy3L9/W$ B׋5j~ȓ~p0cбco{~x䖓0i#qZGkS$ O'GTHf('*j}Z|B@cwӾX$? &tAT]a{%q3/D^ALL'Y{6٬=9[Oݘ~P ]I!Η=NJ#+-˞3}{Sl3\D'\/;sJ4JPܝ7h.H27+ٿ%*Ŀ[!fWkJFO@_7U-?pT _RwpӨl!ʦc 1AɆdH]5TpDuP25_tǦ8IWðmKNC@hF- %|mv6JYuVDro)yTgoב}!5;LKf:7-I[(- |=yhbelL%7 0 %Uc7%R_bNn ha-xMūѪ%-a~C9;F%ͼ8ҮDE6^ '!el$=fdhiM]hmJ%NGC|wߔ-0Wń\tNY)DNr{~uKR[RJq q\$=lbk hk\U{O;ksU&blPǽK6%1; "?^ ۛP]~ASR(hGQ"yB"8'L7m`3Ɍ $,M(>81_ $4&D4FŅ9NSyU_"1V=-/jR&DdZ֘PU 6w,*02aѺZ ""ғRf1s8Ժ(8 /m۽3jª9x(_q?~"͖y!D4{Yc0$jv^dpG v~ހ'@ ;+z=U$ 9-*<;U ։hvfl}{j/KPy5zL5$h~ݏio]9tbbTg݄msVɷ,D1FY[4)AzK:`?ZNį>2V$_$:4ф=Z} JFyA_řY_7MԱ _ᐊoދx5 q8ݑkݣWr] SNG5b=Σ7LA|Sϋ]4q^o#;]ahZCR4|t0yD׊RЦn\O >cMҝ3٫hCgNxF@99td"ۻEAk.ڕ<Ո 9ÎCfG'v"fgɸpG0gt\YgPC.#TiXoUcm/cp(M'aхAl ջI4XJ lpy,hE.v32 YUCnR``5h Ae?OK6tMM{2k8}>Du|W;彖o'xޔ EvDBkPJq߼y;!O*|bњ)I)(x-?nMf1I_BiP] NĻzHUKEș(,|y@Z /o7){o}0!ďYnk,~H #K 0S+6#F|X "+@Jmċ~vh"{F'ir]bƏGZ2R& WQ07F Oj4VP߰ @|TL;~:ݘHv4AaZ| Xl"N&WukH DN 2rF݄s~h^dN E$ʅM^$3srnSRdy9@zy[arO6F\;G)po?Lk!b]1'[BR]3x ӳaL1!ܔjY&bhuy"8w7q}~ ,>~՟+}yQI'MrH VbA z`G]S1muyK%@;cW+eM9obu:3ceCP].S r馝1GDU2Uݺ֞2y05;yf:@tKm6Cҷbe֔ɗNVe4P(`'#G2Ch$ #Ϙ+`TyH"F`Aػg<*+mX/|kzu\ rǠ;lњ ځc]ze=F!l퓲a?bD[\9Y KZH^?h^XjEKwxx(ܚOdXbհt;f3q3g xyo}Kc DRד@B-OǵLVjJs<ɩMp{?SRYSXR^F`? aLٸ!rǿZC͸b>pJ`2:\-{(:U?(z_-"|KV̓%֥ɥG瀄d 2 -Ka=rW%LSUY@IL^sٍC/DKoqMSH1rL [L\9Lg 1vYh0k֢dw Z-3iӚeb Ͻ?DD}i"~P@uա/==PKgT{ r[/mB4_b@ ҳ[kL>aB=5oSvqYgx/0 ~ׅӚˉEDp`6i U4$]P_0#\&=cv>m\c eRQ%o( {D}L@r k凜$Zem(?@9y8%q1z(}+ɜzgu>+a}>xJy:'B4{߼!V"!Z!2엵P:c`g0"[BE@dTN^N eA!;r ="R߆z}dUǖGC$߯e}oRxQ4Z%<3[vHPG[]١U\vcrPoɕ301!H4o }?~_6RMW.& xSh_ 6vUVd*[3 HRNAL{6K%μq; ]c(hmӉ h;VP6ezĽ%adlvIc3;ѝ4=N#Wؒ dd{"f0kZ0E^@bMpL;*A'O;ggچ[8tڷ"3CE?zmc9Q9 q7 khҍB ?. l\{a8'zP p9]cNn U ₮,<~%Krt#.\y93հnz{KӔeorű7eVqXFZG5jgsjǗ>OoE_WRRZJi)P]QY&T(W٣Jb^芕3|)'0xge`P`ɥ\VLե|2nWV" 5P]@>%Q)zr M<$spWm,hkfS2iȐSͦXh.nY|6^'v+ ۍs״$MYKg,r\Kp1Aד@DpPdP^@zp6*O1^)muIoǠhS]-^<'|Q_R, vTHklV;i?Al;L D g~W⥨>)tuk{M;זNB̐GL~سAixeԹiމW9#y xݓNu ̲a28t%3;="SW9Ȇ‰No"nm 'Fi"g3?ג!fH5[䫺ǩR7!I "Y,qF*C;9!nzXVukPz/~xezkqźm[/I&yp"Dt2I?[.獠Y(v87rEuo_Ƚ3?w9[N|IE3/]Iz <0q߸*Xn_he7nV%^H`O77gp[Q.;zR|-uy]uiM*-|eWo  {5Fd^dKyCf:<ơZn}f8%w,@5CvE服D5G27sR)A](m(B9jO ~)}׹_D;JtԱ_hq'ﹻa {+igRΧ ?R'syL ~Z[>!'Μyy2nH7Ի/暬 ^d} ɉDUH$dჀ Ӆǀ+(r^O`;sl2W ɳ UT]8{khSbyqmkt񺍀/VD u{ߺu"{09B~"#%ŰiPl&S>}AE:_}j%LqqX<iC畸†k-J'#{TrrkVn@.y:})ggGAȼHOgoo :#Uw6eŨo[A-1EkcnGTmL1cY(9\FO|wFHB~WZ[jpt|;%At LevBur8__A& P1D7G@%䟋+~p{p%ޙq;x5qH,}A]zYZs}av0zIP:oaУiWnXg1m8=f!^v4BԞM(?dl:gGX?e6Sy~:#iG8 $tnQR.sI=h`"-0A*nCR1QC~' ʊ, +AiP}5|0x< Èkn X&!C| 3b\}?Zfq}^EZ9$hz{S?ҎOfnZVŖLN-b{bg\%fs5ߥ4G|]48Iʇz'v ('՟b*_T9?Vb'S^U-̫a{9,j[L[[%QjpZ#M|@DΙp}fZDlx X_ ^۸5uUń"eU?!$V#`U"·t8F<T$t/c#3;r,U1>9XŮr.6.>+rDyWM0KSMQ3uP\]K\tN8SvVfI%M3)j?^ ́Uꌵ+η7UfCL,Se :u-5ODW-~bW P6\MP|˶ҿyXkCvGr!񸽾9++^+*09KӜAM$ -夆ZnQS` w˙:.X+jVI4hv"XnN|z,B S`5ߙ- 9J}r51s %d3\Nur<6( pʣDMb5{Aݶc*ldVy;lZoL^n}H 6U&}/LdNe&ܟ_ZO׫V;V~f^H8iYwj@H*me!P3̍t.kk(N$+FG}/|8c"Ey^'$駅X|v>ΐ"_"*A$ UHג!q9r 9<#Uͼnv}źLj~I];gBi-5K-|Z ZmYh;W10 u-ӡɭ0(f;ۤW%h~lvQ~u1~qcƒdǹ@b5ӅhMY3o Lڞw\f%T)LB(x<'J-'Ei`!E]p㌃%J6 9qrؗLa| C bB˧̟b tUgA/e炕-"Pl*~E9V+%6#@5}ϝWXLp-wS ȇ6k:?732VtjL꤮|G@ #/NP.9|Zk ²"`*KmY[ ԏުfzC0%/C0ҫy{F>h'iT#x@w 0S!QQ}Lo#HKfmDN{{9 ^oze'aswؤ  ǾE.hfQ; Bo@\_q̄:!\.kk*5rVi nXBu|r=wɵ:@u [:+A]f> nOW}ͱĤbb ~/6s6L|<^pKWAM'y]Xe,ZDׯGCafH7Uv[/h қ\ȷA`65U/dRq9N*8AB5WNe;\,I ||w.9o@1ZC T{‘>\8?3w/x0ai whU;ཬ9 s C27)@He;Ãˢh`X5 Kԯ"'-НBuGca{eLC"^A, q.Zn@0Gc#9T?=1hpX?%?X>[4a֓Xam >Vc0ۄ|Rܒb16_C!L -.M 7ȁ@b !b\qLE=DҊObْ4RٷO@4c3, V d|gkf4Dp\EΫja( ݏ:6ec:*<8q#ґi] v5=,i68>,&~.rlfERA%㋺1Ei;d zBOvOYR!om<7%%飀+J"8OPOFH|(e%T>5ArY+ $ kLp~'1:8P8bꉮ]UYg T,2Gn <(,RD>zgAA5ď續{a:]BA zP_*6?Bvz8G1^s=|@$T`2H,-_ɵ=)( ӋʩB_p>f$q|!\P˯PSuvLJ l%/fK˫k֛=5uJȃQrM<aM] "ΛXTFι _bEpZl辌4Ro$-ckh"y 52.i#b^c~Z۷g*Zs}|PV5]emln%%\[\C?nEf["햯sT^ D:Wun(QJLj|t]iZ"<vHJNc0+*#Qkтy7AC8$_ґOG1q%ʭ[zHhǏb^Z+x1g۔SCGrmB)/`W=gK1r-F5,5AQLZnrnJ#_C ‚e&wPn'p'Rt08Ͻ̼8@M/oߗ ON=Z)HbQ DqC#iĖ._T0{ݏ4%895#K1B9..lEGFdL&GOg,4of_H@R'VTv'((yIZX mg+0t>5| _LN2.Y{2X;CZSn8sBF3?K6l@0D4|%BX9*|Q*_Z{-=lݱh~v|܉$EK)Ld2>3g.][H_ xaa[lNqf"^8j뙘q8_R MYUib65ҧ@:WFP#XFWvYҠ۞W~/]Ex D+Ç?TĚp٪~/|wNآ;`4!QTӧiYCBgɳ,Po܎b*\_:t(~(ۋOnWO΍M }4UT3@ uWmrH$+t אeOMGf --{m D /u0]5 V5r Rmu2fUG5CWTp(GļjlZFTq !&}n Rr,J7 ;1iI>i6)S< 6ǖ 7 v=&<&`䳷 $M8`Dxg5"W+"q[H>=Rbo5}gNx@B[! -2p'3n&P 1,c.(]4s\^8xNKIJmUVZdWn# !M1H 74]s ϺҞmGnB4QRw1dАVSW\Q3|>\REtNӽM8ý ׏T1RA;MTޝ# d)A!Rf5'oCRˣ;zX_Z‹2[,[mrvrovFs޽)$r~+; cÞp_fRTy$Fr>@}a>W9س"fxMqKGMd_Uq#yגs KjrVRRrɳ}P0pk"͐?=(rb$0 fsE7yGR){.}NZuqCFb`$+o 2'W!E_ũi%BjwZ6 \F( Z(VKGm G Ԁ02?|bmʷYigU W)NYn)As[5LTXs܀9߸CqBCYݑ[ݫpLRHwD4OD.:,2 Ħ{ @'zN&p΂V-BժW-4l` wY~Ә6=㘣W8waҔUca+PGtQK9jj;Q-5ʺ2sM֓p7#%Wa&P: Jӕ݁ R֤]qpW8 j,0ޒ9b8y.@2%}(f"iG;)Vm.#/S8Vd ͇lQ]_?6i%Ua[~yFAS wŋaFޔxcE÷|n.ro2yqQf s,YAG.&Zs1*v@'F),{5H'r_Mk4.:"*;'E8ҫ EZ ;쓱ugmMVMsr|E&C+v*pLBRqztg ::y<͜<=SrN+ɺnWH/c f䥿*Z7tX$XiTB!~4 Y:9q."4V@. d;H(=UU{23H $osAg:'^g5kMrAS(qwpRxs`,=/w` 9I|sr%413c4ƠziRkJ|CdnOr\(u#}H3]iKtbH>B=qhO'BGJ!uťO|ȶ7eX'R('V}r;I ÚCdVQZ6 9^X"MbYރN1bA ʿYƅ$&XVNG2Y H1\m Jbdґxm3VXݸ$pmS zӉ'U N*on+mϡ")1yi`I> S9|$>V-)Viuk1ޓ }.]*A8@[V)tU?-Eg.OQI#I{E o8|9+2MJt Q R&)Q ˭ӿQn,t J{`{\W'PvqgHг_}I*@LW-˓R*QHNpo >e_ѻG:"bLaHpTo%8{,|J:7sם 'Xckvßp}{5cUP(aڻ|j(˟4U}r[/M5T^K&W3ÀKK[MvW̎U*~ʏX9P~Łi8yQX+jBmYi?B!{ai|CI[O̲WX܅T:;W+_rP&[GD m5JW/TINw{;K,_UCo7m&q7@>Q`7,i$EdcNJMB9NˠzDo yPrGs}w@w#6_BKfj)ړēA_œh 8gA+iCSKof A@_$f[mstaFbi')A\z K;a5`8th=dߕ V1Mil!-|fI\w; )l5"`B(^W8R;Q!п2X˥ ٕ>N}@vܒ/xTـ \OJYO`Ojk Bv˫V3%̲#-eid|UߑNB%(%$ n\A.(w:+:v:n< N+i#,{? Ono jI*YYNmΜj%Mӷr;"-dT@VBMoX{aTO4O!P,nc S$:U-v?4(h`RdjR #FS5PCO%hhV0v{]%r[$:s>"|6Mד /![”;}K%:g`:*MR C\x2;Cy-'ns<\Gj,R 3ZwQaA.B *!;=?E"UЙT8xM'Dhd!_usfD[^^ֶƽg(aWfJxT1aor[I_9ҺԿCFkxmSiNtqcVo|;2:qI aU';>J;#辑Udk8o$QTmU$W;Ύ}iɯvAYO&_WAM_uy;^UE~# ]؆˿BfW>3+Fve#i P7VAUe#39Bj"InShh=QEX"Ktk)sҪ1L`w&U.]'\~m“3fLn2_gv$o1=%UńZ->{'sRT%xj;A;&4^`!7Q) D4C[g}8WD>Nɟ28~; iZ\B%o ̝!mod^<9S@+g= 8~*ϯVzňG\QwqQ,uq? Hlfç&Q>^)]쐘eGF= GBͤ7%xVJ\& rZԘ!p3ǁ:y/>&P:w;C U!ȤƱQo,2LIOQś _N/TW-4s8!ș͘2R +Q[C6  .YZ- AZraGv~֤Mh֡9b֖/ehNؑ|eFN1kY9?v]q JBRZX/zMlI~%0CwP~z jkL[~&t9aiA{Z;8L2g-ʶD,A+vH!)m Ko̰Ia%*"\WU pX|8>a?n:h^\ TTs: ~`b ନ4s ؛ŋ\mD獳pȘr@K Rk %7X+:8{|bV6~yzb'I`?"7l5?߈,ʉk)$SQyU6 tVE*kvkRh N͎$gA"䙄9]/k㔉擪7͎Mll'M \!-x (Wn5m3r{z2iPup^ |#UÀld/ہ8=/b⿣+vbQcagyE005{<7/f5i0}Ǯ8S"iC ݨO4[ouNj5ޚt?kے{=]'9$/,Ny}{ujLTO1,tȬӨ L:!eh2ؘGI,oe\Mvc b[,4c<6P%a^H)X#Z%%U"_n & cg)x^u2udˈupأbL?:@KFE|g*Տ󣊩YH7 7C֬k4.UTL2HUy%y ȳ\x+?[WɂW<0?Bxwk%%"Xu#RŏE=Ǻ 1=kT n:TZ6\P!P-S?x T×Ng'ԫwӖ )YF{MGA/20MS$' Ŕ/(6A.U[%8Ӈ|n'Qj▻?r8m]hM ֬gL&WrxXGIYLfEPO~E|R$A sXRgmn/=%3.OA7ḝUSC{n'P/]VM]/TH+1x쌭h|lHYcԤ!@Y% :,#'(U3D(: cfP`Tzr c4}:q ڞa !"S"k1j&:\aIz`oۼShy"̓b4cŤoyc$zsd ) A}"Ntrvc;a]Y"GTgqia(4k_,9²grV4eRk-Gkzu\΍~jC9z L/tIOhh+A;[#0ddsx62k8ʹf?7 9d9V$fZw|L &uP4U-->`W_?O$ kC&srb\!"VׄFiB#QjqV,K ҅lrΔ -xlI$} *Cs<,bKI ukFmDZi'4C* ]pH p{!]ZKC*z7Pw\7:g~v i8suY#q_ 𤯞U@vT6sļzV_ŵբ< Et52C<C72Vrj0Vςi35.J,օ߉5hkK8-[ +8A+TAQ'Iϰ˧Rj4 Ċ*z z)q.I%{qzMDD=tRhOl1Y7I ݟ]+b PҸ3 X NT*'jb=<D7 ZZ?5wfV Z(`RMlIcQmUfN1XM*|DI HS绦֔\T1 ~dr(R}l ŭ{I[`^S-ZEu:䘮vpe*FҬ6U'_}cI0j0ӅqRZpCZS rM)v\ bPz|M TWz+wb(pϛăQ'N!GЛ&欨uj,o>] \eȓOs`B{--Avxmi m-v2q"20r-&o܈HMA."$6l˱_YvP#+=j*>UiFQI-& ~VFb?/OKmAnlqi 16 rRًoۭ)6 bܐlKkWؘSzd-q]'Sw=tǺG˥* h ;--LC6=th6s[O!qYPP/ݡ8?53Pf]\K';a⓵-}~(STG)qܻ)1 j-R;!0B\9Rg-\}W)D_Tl2+~qJetcksR/Qjf=h[iQ/0=֋~?Ca@w$+ɉB#B`~KrY )مw 44cOiG1 %h {=ELt>v,ȳt >ߑ~Q5t{_6umHd=wMZP<#! Ȯ|+ɔ&D>o=HϮO`AP=mu_VRt[$|1tOAbN3y6A㰸Hr-Fv'_Ѳhc^G-bj,R':9fŇw"\Py|>i>_`N6Z@cpcT޻Gn. T#өR#I%rXЩ^hzPwbS 4櫊8T4Qy:p+ ,.]H,c'H>|QC|ga}spW VNclPpxi+ziB?jH Dt7H+NPȹ !G1MSrT{H2OYښibTqAІ] 3i鰽W1 ۉL_; vQQX9+70gW ,w-䟟y'_nܢGPu}4ħ?ȢJb!f,`SHZIOOǔ>w4M{޸g89VW艡yS"GF=YddA]YźE$8(D<\ȆkgZؘh"#sHBP|5J 8efGfNʶFWPmٴ_=ٹ%)UɖD>DW+#Q߭cG"5ی,zT-h̖"҉7\d Z Yˤ$-:_ d N{Ώcжvg"ێC~0()-s77L1Ϲ"7r"TDS5vmȉauIuOpPGKR1fEc{o. ' ^=ܪ?zg6+w%QΙQ~(쿨U"`?Ol 7zQ nNzya=ӒUWg O<˅`hg!l0yϊ}r8sgpOSC\CÛW+9Y"B^sJ}6/! #ܱXQAy4@ud?=@Iu{IiT&=:Zߜ>XWϩ_jiљp/b޷] Uj&iN0aa|£Flh)9C@xxDto#-1c> CX,e8.fIrn=ߴc&-)àKzccCƳeMv<|u{a dF!mO4@u*g苪nڷ_`vv94ƬtC^,n`yrdST$<1 :n,IppǬXA^Wj[+ʼkO.'xglYb9'Y6;q=XB[~q,1EkS&g(bSJq#A]/4A`% _,$^~֖93 (ato51Tnl:p@W]X$}"X!V%k`i$s ǥԼ Wh M"q fR(.5$[;YK3P$W/{֗Vn_^3]墿xi_9;t|:Gy @ɖٴw+ǹz)`*!߹j5( Z>e\YYZQh;<_fCmPIU2X!VF%j="ʜt@:"2 vQ\;_ 'D+5 8Aj&)0= 1RԔ#wX*șDmMY$派Ǘ7w.ב|zRPDtK[B?0Y_M i~fnS a(9{q^HrC džB{#dDݍzָVo#þz7$ZBr4!z"H){WX&SKr oDWG >%eBޓL69@zxuP97%\w9^tZTi%?dS#d$X$\ 1^ 'A3WOLNӿ S2cyj%:yǬyVLF׬]J^MHQ.=>KW_M1y"pm65BO)ߎMGfh_ aoBA$0we]̝ Rff|_EߌӈO|)ך(D'x,k57|c!.#9i_>lz|C[I#'bh!tA|f$vӬ' tΪ-}#$bmtIo2.C[YdcP!*~  w_aD}c"zZLCqP 4,T>u+ڟj'G?q\H T'Pe=al64?[cpEܞd?qD:khMHX< mQO\Y(@ogѐTyq/6' žc:6 Oqkajvoj+)gYq942xo5d2ovd0@)l@O+"G\t,!w$yhe jx38%(>aH[.Q (ɦ^t]YQV=yK-jRB֠d}`UY{ 5u4\ѷ` >k~l 9r]I*y|cW.\&uWCW-UdhFo LnVy1?EON-֧d.Uj\"DJQIz%fB vHwocr z)xo4el7IZ2EKYoU|Lq; F( Z԰4=Ȯ of.LwM|\' 8GRzUdSy;*=!^r8xNuFe<;Fk048 uD@B-nY3TE?RhSr(]M՞7] BU{pIdcϼʕm.{qZZe۽w*֠[*ZБ5H"§=>SVM ٠*ӫO*AyIuԣm '` v#XtݮoV42uɟtTi =W&oE@!cJ72O ^nzo;iHOyv~[mh9[AL*b|Vl ZwVF&u:{_[7EUctD~GU6Q9^MwHhNύRuV~`Ѥ7]Fsi.-C&T)M[ۤJ:IM,ǠxN_߳2v@` z # 1&?<}qC5{TȊQKۗ4nr+efENH[lPXnl@zvelZqX7hʰ7pl~|WD-x>D3BQ;79_INe5୳ABQbcf`bvE_"7߻\)D헶sy`I׫erF?5ϩ^ۃ۝. j!{iUtF$4 1 ȁOYѬxnb,חAr-ͯf7.LP'1ԬGQeٗ\ #hvC FDfմI⦲1nU5i\wyAKʳz&$ !T9+̅PXb2=Y-GFpŧ^:듣 P)MmW yKcR*M XҖ%Gv#Z[5V#90^roſzy@=f"UcenmŒ6/>V4fH-&no%EzeYC/,'A"jއuVxC<ZƕhMJbS=t(EPϤ}u6tQ*N1N%Ͼ xyi2YĤꝻ/o3 .32_w‘/D egK9E U)"7GZ,';L90{ghŪ~zB䩥hAMAPݴIG3$KmNr²zmߠ,$sXu)Ƴ, Ap>w'r|raꃖ1ZQa+:hAι1W#d42O@ӯ/I1( wWOG{d32,ZMBrOh A[լA,jZG&ZMEfBzᇲ /Nse/i:c  hmA$W mG#3P}!ې9r-18k_B}ʕ9hQߡՙew[ bkk5xĜYK'$dePs Dz0̝K:i)gx_A8;$=n!8I K4-kT`gW׵l4pMgΒdj(9"YR1*>:tn d?0appoZ/<>UH 0{o UçaK "$ k 6G+b59bT (\\R3eŒIj#ˣ(gErP2t9 <|.9 #r6G;bx.nv+$NsGS۹h#zv2O`$yAYdZ(1<jH C pey {f:IpQEE%җJlHъJop{oLZhVRUx]񬶧p'T 4(I}HԸYIP7ckTlHi'tBku2hv[Y# ;Im}5E!sG";*/Oii.OHzi:YdY3BgOq?ʎmWɭiJhn Xfc,fI6!\TN_ K; j6pdIafvRyxr;+Ol<'}y{n|\׊>nj ~e`̉ )uS/*T\Z`6n8QQтh &2.}Mdʀo|,Vdq,bUX NJ񋆱_ׁc_ynU)DiuJfz0MĹRSOh/yM1`~9_xN1g)˕@@Sd-yR"yF|mZ8DniP꣟A#*!r^, Gr:R`$7!̇JX.Ye&t֞ߦnV֚SZ#*嚞:DLpއru2'(QtJ/@ZR# {HrYDL$Qbq," vUxivNpR^*aT !H5uuXh:?{5RYgXҞ]í"+ i%C?d U1Dμ%F8-+`ۀ_r! 6X1N.a,7m'JMY{:@K׺-# M8ݲITT"dpŎx~~ EOSƂJf: z6'_i#|^HB&Tq _*hֹ1n{:Y1mü>z['}HrHp^w1Uq%9hqfNqaRX, Kp-J52|7~9 pp*c(,l#xz˧#魴M k1? hiyxMFq9Yo`pWw\G~;#2aV ɁΟ33wx2;`>!^v-! In\٪nOwP$,'1WqyX-Xfo6&2tRF*zzvOX,dVElh{Vnd${kQht.zkl~O"Zbv]ft܁;CLњ\ Lg@u;; Q8T#9VYpWQs U4B͛w UN Zz'=:E^vȫR p%:6IS-?k Ux.9cnÅ,ufgS@> y ;]<ݘ`D)LPp'e& =ٟNlfa Du7r={%EU쭸ĺ$Hܞ6שnJ`Q2hѺG.[0t"D>jTFJy|v^v U5VLy,y+i@1PceI喓Y3 _i/-yx~l%?䑍s0Q6FN ˸WW h|)֡)& N ,|۰%s/A,;8/Gߙ&qr]P6aD3n]!klG2DZbI|NV4eLLFE%8Uy.産TSQϜD/?0(f 6oJWENZ.yh}l8>Upn+WX; +{V||bm\=[(ש/#hܐ>hn?P"+st;qP[-B5 B|FJ]:a>NDivbkzÖC:aWI|hG),\P:gKcv.7U0Q^òSbhJk& q!1ȅomwJfGà N^M.ƈ WzɎUJxFU'mNiOMب.Ѐ/XvtG@lȲRhiaA0SMi}ܭK(bknqA=y:bN?PȆ%,kZRt+էWap4r8Ii8ik[I1' 6ɻkP[rK/ q" gȈ΀`sfOsǂچDQoH VkZ%ơD5t}Bhd}ypp3t {=j#\ws+YJVlfݡ*mmb0Qa/Ro*\/Je~S9m1(¦mm! )MxKL;Պ.9j|&O@!˽APmϺDbzBD904'~k~<ϮbAACvr^t;)6gx,bYV&&sӳ(*BsNR6+ܩǼr!TP,F-W~So]l_? GT/ ?#2Q73KvDyAZ2ՙ9uS V&zhZQs :ł_ND{@߯mCI'Jņ"s:0#)*}> nu)ɢS^s(_srQkBIO lSIPQ .IlAӶ_л8޹ȿLrH(ܓ6eCѴ9UIh.o e`w]Z<`eHgz˫,7ՏP .jYU^}P>gZ/pxXp.3"dֵ/dɭb*ˢ 7o#.rYa>͕e!EiJ;{ ?.uwz JһM/\AZO1̖_}'Kb^.ð 9cn)5A _B ד0=Ik䕦G&읎M.Kpx?)Ews3`NƑR=_5/cJ$Mc3%Ƅ'A>}? ^ۣaɹij))h}VO`Kf|b N}w[PI6$;?z)=˂g j6M hm AC~\BrL{sx7rfJ^xяذO81z$]|V[vh;B=PR 0N*lH53iM0e'rx OdG5y?U7BrU-*~,Fd;ul{UKefXW?У٦36"@_]74) } R%PG!OM$nnڨuxJy%FA'4~SűSc-C&`#,Jh'QfFwQӣTLX*W'%K>SPvFe% \o*ΑvuH>Du(d?Mv_߉$3[\g|T0BEA^O8HOÕl$E5oenh#V<'mpv1GqA^8;YyoTl_g]FK2IBȋ@4 J(^~C $:CKVænrEkֱMf_VAT U_>xH߱<@I+50j>$C˻T{ZVʇ T<-ۢ+Z:iY\I'ڕF`F) A&{;?W)FrpfՉQN%rbz[ g\w ;.c mK3PIQE²?9м/hj=K/[Fi(b"Y33~; We3Wr=O G)kt_ ]U(M]42ep}8Gu,yH"^l'uBS7) a|wqj7!Δv r 'cׂwk ya)3`Z߁#x6mp8AiRgx\h@U (<4TmOS9܍Tf^|vk?k.?nݦp'TudL"-e ӟyl[5Y4s8PM lŽp^y#[NG`/M~9/bCp wĩ ٦0.ċ4^^߫fO"$y Ѕ;`w'NCNsPܯBPP>oo j=S]Coؖsꚕ`4#҅O: ̏pGſa xH-MFW 0B6IBzVaЃBݥN_Q1tφD/y9_xzFh}F8W**w ;@"ʏ?Zd+ mR<,z@0Noå"F Hav VPbUD֒e}ܬ[_BH~s[mZMGy^tR9BȩB.L@z701i^W]ý%РPZGͻbfuQYԷ#&,28pXk >nD'H̽L%M݀%sdtpk^7;ay94&4%π:iۆ*R^ۉuopg"C^-jyIL;1jc4M Ċ<=)Q)vhd@SES0TnQ1XjDkOzaW!ww'2NIAսU단rt(~W\\=VҰF.ս^ĊCG6*GkYcL*#_!@!3]NGanjSC|{kMcV2؁Y:Qm(@2u5M>k|5h^;?izVg0+B 0q 6e;Vyzr39'x='&ul!a: PwCT&Hf*S`J!Y1{46Yޤĝ-p FqQjty0ɬWl" Wo@P2A?} Om`:3r{6*)ͣDo*gIIZ18ѣZ^Vƺ4;zF2r:8;+31QUgiߗ{/gXIPxџ|* 6ۆ߇ > A{ *)_"'|߭`o஡i,ΨsqD1)dU@^ \O&ݼSUiICyw,et)TtWByg$$lB'H! +'ں=}EdCŝQD 1'M?z [xͥҚ56IH] kYʲtkat|dڊ%=.X3.oGY/>Po!õ@*HPrP)^22ﹳy(*j(F!T>^Wwv*% Ry` ~pgڐơMJڱ"jXNI^T"יS#^AX).R:k}r2\<8E9!`—g*ݜF>S;R%92Uz٭kÓ >l<0K;CtNj=-xww:H}((QiRQ߽)oz1xIt.$2=X)l`<}j# UzHdV7 ƍO"l*yP"ʹ~m}#)-lH h])|/"@X4_ gn 2?cNym@zC.<d%bF6L(nnUF.Cwhx'ѭv Ti!([٦މN2JYxW̚%M'v] n V|Ħ]=v$Tί8W4nu L{kשKZқZc\bIdsĚ;b1nn@Cܰo*ʳ|$].m w@~?ݒG+QYepx e`,lOp9Ƅ> 5u˞МI fl|.)B]WEecwPUGwHKy3av TT-c{eUt:˱3k6Gb1֐/xwȭPzۭzU,#܋}2S ^@ƽ.z2?q㻹hv xѸeFkA5!?1i-l\%&j`U)rur-5@ˎ5Kw7jQ'~{?N?|o~LQ?:F7w$̂覱fhG7Bxӽ&w[jqbJhC梄iK|s2ے[4~&r~ă, qқE_ZuPXw@6T m@ M b 2NQ<"ɢv LkK#C1Y!L%7XaKR4-a Nۍ34 @v) PP/=@ŋ ~7sn\/T5q,[ZPJ 4 Pyi;aLaSzO7&_6Ι%ʑCZFظEճƾ3ȩN x*T~m!bEi7pBJ{jG@@DU79^љrA9ljC&~#"2º#sJgVMJglc>KRV%>B:Fc>an"휧(Kj4`&G|6Bdc`_V!7FA>G'OEGg&kگ)CQZHťhafΒ )ޞ"1rl6pyu@B7|ʢ4ѧctXcio!4I`ORAg  AOio_1|jL"j1a.Ь]Tt1p5~{yy׺l'if51l7 SgAK炇c=z k,.wSY)cWvpZ8ZXE/+|^A1O0~564B2e'h9\hIк&I礖'kԌKXR KaP,Db6D&7?ya$mDT^T;ϲl Gl>]05p8khveh%i!UyQ@'G/NIک%%lt!XEA:)'fwۋbI4ºcJ+|TL@f`Sel*rP;?c->UW}ܶ *eZet%vJm ,uٵ"KvN0Hm]S FMsKCVyzm'bGy-Myp9P̀靤5{ŀ́Eyw8wWo9n,KZ)$q7'W(iSKXƢ70I[Ӕd٧%)*)Ik7&NX/=D'2 Y*.8!1 '>"&]Z4q99Cbг3m-}A9Æ {ܛ>Է*+}x ÀЯM Ԛ ֧K_oo="-HGK>&yy5y왑YQpC S=;`*x_%+H=qׄ -jYIlIaFUHuX]gv0Rq[N9ZG6oZ.sEoA,+ق TPLX:o,Q3F%4dZRc8c-#PT$Kэ0:겣Ԇ$_BźtV w4$/*cX.ui+xmkb[/^b,=$pfxɼxdt 266"'ōp>|.t?|unvL:_k _5ʎh鳭!n"g_jޕ(K}:tTI`Zԑs)j l/oZsF{fynW̟O\߭l}΁X[4G 3ʼT!̅w, \)/sЏ9j] aqJZX U6:HVrq@%7ш'@3:e7$8*$Ri"3_s@ٙ;2L_'xLy1퇧< 3-fFMAei u;'C檃/`b"P3%s?x+Izޏ-XAV㜳C7GEZ3bm u+!ò?=o`-1D[$*=[^Kߧ0- 1~S4:խ/XH'hMAެ缱M`yQc/ Km ˅ ߒ6:u {uW+TB1?"Lɲz4nӍ'R`ou 6&BhYO-jm+'#fn>e|}ތ}*M?waQ*b"\Dd i:UU&eI@ÃN,Rz]R)k`3{,BfRahJy}~MEOB7U5ϰa2r% xs4nju9=#T'M{%/5L< z<~Q6r@}q%]P9S}wd>=Ai>cZ92"%]%rRg,1 }Pj_=B4<y޵ORD g2xE`fl4ޚY<;腎+S> NJx20uxX_K#JƈPZxLX0xj̣eXI%ciTp ]b‹ $0YQx|$+ YpqqtdO'W椘Q@xy`xǽ6QTU4ix9/ߒLk~^0%R4nI#N;`6 'xcVZWMRq=$U8S&?s$Өk0ƪW P{Vkz9N RG tRP):HR]G0C>ۤg )0m' B:Vo0, t4D1 0![-%T)AzIu<'S*BOx*@>' 1 `3jHI8Sӟ^TX~6RL(J_hNJZY kD tn'@zkAXJwp   FYO?bm: wjfuH RK[Z!(H[QsIyI*rjbSs~<~ 7.~~ 1τ"7x&`͞J n`(<p by`79'Y3aKmYab.:h!'Yfsl'#uvEø_9ͨ12wj+UÙ06eƲˠ;:RuEeR͝`qrښ] OB9+sYm= }%gJtP,kFZT mմ*7ރ_-~5 Hzȓqd[xYL\Tp@uJ,ގ:X9 @ !=vh~_r>(JW%\pR[c*+a^Fګ[{A7l_(WPfbmd !!}>%qC==د|2c889b7ć,{>8Z-{!ϼ&ɾ0 n,Fx%tI Dw3;틶B h5,A?f)"DS| mdz^+5`Es A%ÜIoW$#ktF1~[  n0Yq4ϘQYgVOrM˛ÔXّ4_} .A!Q4I% ,#\yQ)I}S_,>k2`?F(UDI?=lv>q!7֮G+EN}.eMW%Ѳa9?Ӽ p- :*X̳G55:bYpb#WjuoGUO ~ ^Og^7Jf5bg!pL,uq\D >F_xouN_f Ӟj{ %3rrs& KyF׹ZSa\UP+D99o@|Bb UTs6\@!iAf mv;ƮOz #;.P/Dz;KFܢ Z2v7+XteK#\Zlh ``WW֌0F[4֞>Q* 8s]MaƞW9~mSȅ8zuet_SYrkB];N B\ש[{wڨ KZ IT#Kw8ZM`\:cRBBOZuCn3<'oq=8kl]_LNnD`ovNąJHGVndapK Mylh l>hѮ&²;2-Vʹ[W, /t05FgYSN)4kBC ~X'PPꀙow G_9mv#kuD[9oz\Ǽ1G @}+E)"ǖNKqŹ9|*1Litw%EEsӊ}w0}߰TaQ ,)˭/5wV4w{0'mHRIyW[zqKspO΁_T3u4435 ;+Sr^! qq60>SW#E$WWb`:]{=̧3)90q = u1C=uN4.gL4m$* Qܠ$i ZS~oV|-Fc*v:N.T1c[^}DD-X 1;rj;(^:{3(sц.-# hBė;7$<ۀTћo\:NX{2Olq'H<†7uLTfv 5]Z4")' 7v|/~хb}(h6[w=ۼ,%2[+6 ]o;olߧyv"-&vLXӢWՈE~yrU&z$-wÔ Xu1h}-5Y 2ip(hW'nvߒI,)65/$ o%D*u5o OM&tqBwC ';Y, 5t g9А#j%8 A %]C >p^*>wl.Eⷬz4t|nSy1|9A $.崉bڎ)c̞Tpݨ QT#SGK9aqƱPAR:KK wo$r&}d:H|e0m٤|9C@BWCgP '9y5QtŒ[Juq;Iwdv}GshEZJfc? =gq2pcY4vq3~YmW/~%u_3XE'YzU)8CY!\2|K\me}a2_C֧y9^(>(1Tb]KÕ`uP.,n6L-h3T#O` iNLp‚)^;ؘĚ~kP_'G9'P KryiW0hDGiX'r4;V#D}?)Wc1,ϋﮄ"̸Ar0#MŪeh̎S_E(+;"kN8Db||/pnHlPIv?@%f%.+Y~T^p\~Oܛ<1SԜPqH 4N,|?FP "S 7)϶+3XwPxenZ۵(ul_킌>dFK}H:*$1#a- 와Gԙ蟓 ӹ$$;(*jmՍ bSYf?,%It :zYKVn?VR[p68d X֕Ad& Uv><7EK eV[;a!}5²TxG)EW+o"x*O MOL;(x\`/އL PՀ.ʻ.>nMaY qjK;b/~3!}.>:*M%.SJ >jS,B R3پMzirbyZ nB"c=}͝!5=bpjw1̩Ȅ颠t"" uw%LA%le=_Ue`:";6wujJ q%tRsfyr"=ij܄ۦ0C.jbݻ썛-F /M)銐"l3ES@%ZtUoZL0h h:mU3sp9B(bv/UMg$NVEAΐu{kAz!0gXf4sE8CY@z"0fr)lX#b JȐYt1,TAIY Nl(#ŭ4 Z8:8_ٍjUR(˟np$Pq}cnSQ܏Z7 "R'(6ZKh?nfcmue!!3d&P){}PKȋY~IdBsEϟfNdݕq02/<| / }A[w@`*ѝkdx Dq|'OmT>: F s*9:epx^ AgDKA["p ?B91_ZFlۗC1!5p?C\o$c*zbyg_3 *Q஌K7F&8SAWwȎz[y7Y$-"^LVIćg[%-AuZvԄ&m究D+H$E+)Y;֒h@|.8k7Q%% D 3q:H Nzҫv#R`rߔ:lT_O@PKi[_ӖPw<;wV]K?耹| =׉ [pW:z-џ }IQ8L:C!'Ղ ֫WQDNQhJ}v,t+oԪz~Lr: _H"1tAz2Et'Zp˺f#zj0:4ebwf뵖m=|p%T"*y0NJ IO +K7S׉e$6P (-VqnDY/LC%w=ձ.Hc[RIar#L\\ @ 85MTAp5AaYBmx9HicMZiSl5ы h3' x7GAlE3n +iof B8Y.Fb_g|Y ׅ]S( !_-2s38pl?{h* ߬0=y"A%YHV}'Ut ZGQh![;FLvp"dZkj7+Lcp:o=vpL7uT~ad}r[N+p/H0^+}cԋ0B}\gug9fahVtck dr-6S΅2$8 *XLT1l# d;ZG=!9lԐtF_o:A?O&OnQ HfH2L _JVŔOJe֙ʶ9-xg,@;PNϼu1p:OJSW"l> 5f[ C44_}G,O0AyrHZ$1oދ0"W,{fܮLG2 yctLCWpu+g̺H(گ.aƫn>91&ZxʉY·.BU%"]"Nɬ!`PS˵fx.!/}w*ăhS[;dÉ#}yDY~A& F3(p  lLv5eGKQ+h8.XC|; /~?y8+)!Pt RT!kq.k4Z^3?$hº8%1yIJs HВUQ/TE04% 'ӎR F.]NC,T[l h^~L6a}^EJAb0";(©V '{F]7O6R$mt))<'jo,V9;f#ى]oRLuEH-}-/+,j 2 E(txKe eĤPUD-r#@&%Rr!" c^Dd?Gk,믇ct?a$.( G,3hV?i+D`j0xoQm[;Z (|/iU-҂s7B.3קx#پ0 TȐe PY܂D?8Ѱ库Lb|CT# >-=b(+"ef ˒>ĝv4phB bwS2Tk8B㡡7x7TD+]f„ "+KzRQp^f bdB^*'葭RSp+[V}n).zQs ko"&}ib/p̉u?ELHlHp5;} r ޘ[$4$\'t%8RI‘\PW^`;AS;FѾupQi{m$!i݅Qdw+V$_6;TmEaRtʔ!MpӢTw=7͔ȠN]L1"B)X=Ҹ zJ r\n'̲Z H'^21 5I.78Y3l<+B |9.^`JG?nο੦S!h;Ȩ# :ekG;Ѳ^J?i/j7I%D]'Xiz國8L%3G}+h#h.(1es4K9]+ IV),(#c" \2R2Iȸ/&ՙPgx3%_K2X]zweyd|Z=쨎:!mcf=Vˑ"eA Nſ% qf5yiTC cM`sxQ^ȉbۮfj$N}7Ɂ?Z6qvo0>%fsnqAY3"x 7q z^mp4[KR"fVD`L $C}rcb9<\@x%{7Ngm}n4nPd0zD9ǡQq*&i$M4HR&XO@bX *?Z+|S+z<d~зaXOY }xĻy @±ьp5W2T<2Zm "TC%UUz9-ks)}^sb#odhsb 댸3&KEc}uJ|jp) &j2jMp ~^)U\bszqQ6 _R}F7V(>#nwb X7p=oضkQPg1';B#7LZӋn^Թw ZBm}ohjfo&bt|jv(m*K"n*uֻ4W\:4_8f;鑺H۳0i^ciz٦fm% v|oϱ U3-/ӂvZ -x6Yl DV:)y.U&ǀ7-PsyQAϼKK CZKQZ Q:mu-/J~][ ݄3Ö56LMbCxJ/ף QE VR,0(1-}zAXx IBg9S&hn!`Jkֲ%ndoY,^y̑"VEl 9?]ra7)g_G_I)ڭ=%ƴ4$pѦ_YҼrίv@rOXw >@wEn&P>كI>CӚ$.=~SF{X+ol +ʼnw ?Hp0:GY J|dU%5WeEfBS<-f)6,KTH`U[^Ꞣz L*P3}Ib?7 L$5_^KxL[OCk .aP-Ib >x]}։4 fpo@ MQ%.c[Y$c?rb5jIyo 9 `C$l_&n[Bu&1#8Ū gBQI5c >k)G{x>%3Ćt}^$78YC ȴ"&]%gP9 [YU+>Df|PW#ˢ҅9Wa-ktzxU#QeBY3̑dv?fiE"Dpy8;0Ksȋǒ[=NDOԴ)󙈶l|JA71P:mw+4GwI"RT|f%NWd? J5h>0h <:OŬX39{LdO:"[/>)~*zQax0t>ObA4 nqKq,+zpE9EPF=3!:nnC!<:*qRba}l4^7ƊoRj3^y&q5)Yri ҴA.'12P᳈k&0ԉ0;7JIh[) |$Omu##ZIÝ )AsꝟhR4X6~W`hǨRZ Z>7*N$hWqxo9I 㻷Sve8TX-‘ rǥ4͜ɗ,]I [)hXP?G}'OBǟT>uMc6: #}?Nד% >Kܠ$yuh A@=X|~ʦg$s,4\aPG7F "n4EMj@Eg"זD`t5&W-Ρ[pxؚƞ#(P}9p)?s~RwGӢKOP!ιhsd⟲ ­G7"vA8rCB˕wK\,֪7ڲقJFq$*L9n (Բ0wH'fÝam{BeVp@* }ql]mqVX!t=iqhGT΄̓Os0-W@0Pg^Yך_>xIYxu‘W54H`@|Y[WDuuQM˜TWh!enR1XMؗ9Vki-aG)o=p^yB؟c#g%ǝbԄ]BԀ^89 !C~"c cRU;YSxr p#4e˘@\_WT*Pڛp7eql8* jo2ڎ^X=jdӋi(]21!/'W,"{9GעI ^Wؾ.{8agA\5uu'Vh"L+mrVP*q^־?pAY/Tbij5Mcv?[<4WTT1Mlc ?9W4ڣKպVW>N xǑ)RNczO㑡jM 04 /(*l ǣn"'ƘX/LHPR v'}g%)Օv +j擋HsMMh,T|'*൬*Dn0Tekԁ_&~ WGwh#SP^kj(ZS.f5c:mYSs'=GW1>!dpQ9"3r-=9YN j1!@-S-wٲ/!7 T3D ьAs>L)_/GCD%<hJmL9H4Ǣ=*[l8rHh$x}P"3IX#L|u;Zn2t\Fl*pKKsvş~}g( ڕg;]MF#ٝO%(-Ȱ0;㩡&6umhck[ig@Ep6w!L@|Ttܷχ[[l$*[jaZCD/~H*|A١9rgAHC'#[XOǃɾj'C6\~sGpAٲNc2*sBQbxv/AvQ7_٢,O2y8dC%9 ?3{FӶnްy4`OnpH!ֹ"on& euKX#kY<7h:N+|#: GLO?i6fRf֡* $-Ulq”J2Z;(ӜW8@ QcoO:'~=*m[~-s U0;,uH ocƭd|\B\4{;AQfDSkb0.Z5.>SeFpFb4#\OOPϾNHk9㳞an_Ni%m*>(#iFn<  euλTr1N`}.fego@ɂ-b 5CGRkÆ&rȳX &}$` &^%nT3a)"rO/})9t>ͬq$E8G[|0›w].$"8ؾPSIQHU/sC%(8g/f G^Œ}cm8uP:oS1 cA D+/W`4 %^t@, i巩6<# / ~|j4.*C(h &ǥJNo%Ͽ=<\`/›RLaow׫akWyӐZ쥭Ialp[.'/*~k3fJF%!LMXb?sѢ7~I G b6SvO'_u^4M~qSxh -gJOx??_P#f~Wە\^6d@X.99)$`kj_XwxX񯔳bJ^TG]adPSRC)#acxBΩsKݎ9Bm‡` ow6`n ` ?ByP6yk 5\ZV<c2 AooVx  h'?5 dUF,bL*@MlR K^71زL뎛PH3 h-_`_7&uż)D'<_Jx (XG?G1GG:k,HPU\2i"ܤı]YqO77C 4̶!cV1Aσ6/O@Zo[N"=zHޤ xkFkygw_k؁@ȉ"HhJLwO%Q]]ߦ7}9)ee io/Ew$AՏ vd*(n2lEiğ )Vތmw9:VŶt?Eg J)IzE맲rN(!]^O[^J_< 1bUfb!- 'qW$*g4䶞d=5u&l{She!/,EZBJ#7*1$ KH(oyj/F7o琒 t⫇i*@dN;XBGeAk REacL]Xvlam{Nn$L..[D_'A"Cy?uF3/(LMI4ovy&1VXwQ_Igr!HA1KuG) sAhb/{nn޶>3dEPp$7gE,beGh%%y~ΫCx ?\ lEIKKIFmU |v̎\ vnjn-I(Ѓu->51:"9} "VlQ-k4ƿS;\ Mf_3|pZ:gwqQSt"`] |WmEz>BNRZ/$1NS"bG'#7 `!u(}Ţg-~<ܖUr`aA1V>BO#+δZiD(w{u'ܬ *zg:> mou=KnTsdƤ/u#>4axøĆ\U=EL0NUFpZ!lt 6Gx'-kˁh!okĒO RyO>IJ @*LQLaC|BܟG߿)ɶ.G̳VUMgdUtl筛btX.k:%A leIC S:=vkHz AbuyҊ#;35k̝p Y,pwƏ}N+.r2J`|Dɢ"f ]5-6rW41=X DOh־M\a%F?]m6Z409Yf?3S?= &g:&ޱg|0UUK9>x]F&18:Ҡ]#͐rm(1ij95^b儂@B|cR6쬄 -*z+ YAԭ*/fE)J>v@(}9:8p! IPV-CݿwT֫_7=~qe3zϿoAsCup^dP~n1=®kӺKتb,_,wF:'L$s/ G!|{yJBq"#[/+B]U'.ճ~QJa?|[$@}OB@6ԟj$!{8Ӌv!,[9}eF֫>~:le7$>h.IԾ1|A^cHC$tV@@.cΎ/.]Pܻ+J%ӱ#I D]F;$naM6牓'.yb&'=ž[\OcZ80tKN-K?TR! p)-2eWx Clzs [/r "RπWaѬVjZIeZ "[i}[h-wߕ`L5F[WG c3 [Pv7wl€+P{_J_@XCJ RHNpc<#5qG%ǎb5_!kH2o:-}u3-};+ u]2ǚ2,>ke4kF5J%o>ϨZ^iwOd_\忙 3x[_:W~jT!.sŷ\^NVH2wm,ְ`g77V}Rb\E|1-NJ.+!W 9%ä.eȫ`hm'rPU7: [孵V B64je|CsnL0w4Hz\2{RplwW _j(Z"&zbNW8xԷ% E8AHjlrkW}'ؾ VNM* ؤe~trE%>51*vNE]\Q1VhLqA^\bEF&2X0AJNAztaXb5Ic^+~]QosNCdy> b~4 t@0YEJV @8e|[TGh͗N:(+l!yMxrP8HeW>ۊQ @OXs_Uԓx$8e-8mW`غWڟ]C2Q"?TyȏrML0Ltr:`dx{`)Ljuzܩ ܞ6n' KzZj2X70Gdw=K\۵PoSDv8ĺ-`U-6ߋ$kÙ%^p3u_ɕ>& | v0OG'WF_$Hq$ޡ=)a|*4O3&(G|rp LԳ.9Ö}&D781oe6qlٳܧ\όDI$*Xv$IKjcfE{&#< U6qVeD2aj! Vzql}&cZ(Е:>Jw`ce#H?ʧ]r']7<~ 9<H=J9q2Bǩ,`W-]uwsҾgd^& $T޺Nmm$m\öX :/ 1 jd%h*R6,F/#&,n7$ͬڟ*G=l]EDQ4wӎGMϊPj >I"!&.#w2zYn8,\L*$k%Ra#tIp}\}7z{ѳi.5|{ S46xP%aRdмt6~_ x\g0K=yd2bT(^ 6}&t?|oۀ1;,^.vDzN{ ԕ R#&OrUiONq 64 .&SJ<ߖfvT<ڜ$̨D>T!3QN=wўVagzS29a _ꑵjN39[ql;P;.^Z΂ n:DZ=+n*/AXBX~CJlXM* C*$?BߺtuAP+Y_ >Jm5O*vu76 73$Wj/߅eow[_l͢'" دL^x S,*B6wY{/h?hdb3\JkPCMH?t]>0 ("\vo,i!Ϥ+>³( 8ӡ\u=챉tv,-[_H>g ;!}ݷW@]yN9=#9`zub&}ģP(|m儿Y9[e1ո8$=*8 ]T/1 ʉy O#TaRQ U܇*G sD,~'a*i͉$Ea$3X фf( 2p1)+Kb pUˑVi t(}I%BEE%̛۴Ul*(qΚ/4aM+T0U.RR10Eut%|\@ej0Zjh9t\h?c aRH뻉k8ޝ{D7 de\Hr+AjӇ'(Zk&tԸ/j)Z}9|a\ ]Ɔmt$U9c^p֪J2bU7/:3ނ%4g 1y~R p 8`w:LM5":N2!Nu*,uU(m;f+э\b/0اzIv65[mޔwˑ%7?H7 $%A%`w|0e8mPWͻi:@LwK,EqR+xfxzf UoP6^<,{tƚ 56[C_A.C8M'ڟ!ٖM0HWnL^4]S[&`K;^H I^Ȳ^tk} `zvPu9ḱ6~ke=/zO Xq"}\1^|V0IlZϢԡ<XY}`sRcsR2#4.$(g&..qPk[N0+pM4 R)PV ZM [ -.uxoe]奧Om@[=sT߰UG%򋓪aã)-3[A@l XKAMVu5j8ۙ58xkJ56;+XQp+vX2S*|l#xp0gLɗnH0,ro8vP"(|Ɍ=q FCcn3y9' i\N3f%0>bE=;]G. /r"ul60:7E#jCCSֽi5s_߶1ˤ+#{-=QmuW4n,'^4h:ees3|%=,ZοؕAGnr*FNwn?!kϾvX3%,]>ȹ|2eD>AB< 1>M bas$fgMr׶3Ff $+l=!N@ '؄G jDž-{p[%A0}ȁ(] 5!~ 9mZM-ko R-],6o =[/Yj `wn8ney`dp_dhӲ!wPge+#iajr2=MtȜ9'O"3q$08|Sz>lfZG!oB ^t(͖XU]t XӖw4 PAY\(w,`Bq-Z'd1-NNߚJW9B-Nlߚ+!3rJҺ=M.@dL/_ |]mhu2-ASQ*#=d Qu^g=~|뎹_|@-z,tq# 4 I_T^O˖`{O<,J-_A4 Ulf-3!_Aϧy .] (6";aNǾM592R%owњ ˲9Le| x%쮌xQ{z<Ψ3i([iZ>8ݤGgl9 < `u"+@H&#ހl~nZ5$a) ;7pQ}'bzd豪4;HAI*^ǜ7խ,‹|/&鐉-!zz8rY<3W #`g-1n.vPqW:1gHΌ{lQlbZzZ?ؗX(KF~ޓeJvbgA-N[m|y] ,c'/Xj$e7CJ:w)IbL% zUxVL/}Q~%G0Us`hVc ՞茷ޖD ѸgJ:O5|ه-il(/&ƺH Uue^t Ǒ=8?s\А2 ,` fz|%FT *JLm0P.zjv A[u.9FQ,I UgS??#6#jG~tD> >^ɿ;i lj4% J:.}+X@so[ZS,nasΞB|1w`s e[-&m\M&)^w F"cKb Da?]FAIj\axV<ԀyJX8j g;l:4]qث]gp7 ɹhqC dl' [ rToYB&%Z ?xcdN`Em!CI-ӹqHx-v )/M*eqR7bUjq R3:qFb6^6)@(w@qX {&4oViKNy7Kcjjf1 ꯋ! RfVj~);Rhg8ʆ `L"/G_04 SmnxWZ6r u@k%,2%$HLHw4> Y(9vNZQh{>#( 59  bvgWHpHb}/LՇ|\Td"Îϟ:)=Sd-I7‘5($p:̅.SmkT+- 98Fɖ5c*j}v;A2@7}" Yo .{GZ.(ls=N7?E8@w;PLې:ǍT*C1kE@: d`Y aoAp(UM1EZPLMm\<AwG0eS,GNOcHK&rr6:FD":U$MgsLn#rQ.,*3 ;]}d6^"ɠy7X?,8LŁ+.T?F↵Iҧk8wV'DW7Hyu}Y՗kA;a+-_,~xcHtMٱ׍>PוQ/ > קpPWI_9O;KKµh uk 4>%U™\|T{f2ÒvCN#bI~x"M^89 ҳw/˭b(EjE#ed/d]-ˢp]]i84LWt9g|UIt}<) /ŕ6tNHF.?"]$+6&~],[nkTLWɻma)>JLMQa 42a;df.+#]ye6>G0@KOob1fIJ ,VqhTuᵉ'sva HHzMIoESQӑL6xx*]O^BR-EPOa!9E{`UmcY-m;plW:t;Y%IIr.d*G9z峽աK&8UH{1%,WHOfS'ײR \~C!x q1ze&CE#˻1~>ٿO`WMZU]Yat^03N$ąַAٞͦ$Izm 8T{!Ꝍs4fIdX$[K0uq%y*Rder-th>-McRrwl~am):[)vՍVLunE{ȇ06,JrĀx6',aT`Z,ӆY"9]r u:,< el\4\HͻD2=tFIr;P b|v!('tRrv,!I6kG Z5qj/ü(dIO ;Pl@dw"vF6P_v?jDDGI셝v죇_bⲚ0AdxN=:0nml_z>+'_B+2Bi]QT4]nZuĘw+<2@ :>?-8ru|q FߑvW>7R?ŪW r>VCxgi gXLPw@bb3h~uO5͢T]Bg8x${S]}z@(il;(RTDN)|/ kfweR}crf~y>xӳDZIVV1|c^Ukb1^%Q<Õr& hץV՜•4;==>[fm2&1pOE]d \Oj}v BU+ۏIffu_Z F\ra*8˻~x0G`{hgήYJHz6NI,b#wR$ ZW3Mv_jRre:$1ЙpPC7,ZߖG,Opnd9o,ět_d.9(D4ǐ v@]1n2&i H}EFl/H]Q 5@xra~\ؖiQ/w},p4r r@Tз- 7J}0Q.# j#BL4`5Q?JF2̺RUQ70ܺsH`+.b=x|t V)<' ŋqLC4S (+UXNQRŧylP B\E?Pi JDIƵZZsbzp"@Jȋ *3"Վ{&U.[D~;47WcIt-[(]>V-E[\@x9߱tCL9x7_f[1%Y1_VHMÖw9s90Vn]`;\Z % Lޡy(+vVQ8Quh1遫K+ )hPkcp.`0p3B_y^+%s^ . +(HLgsD=ZIz}h~)lxn;֢>\jd)NHe"*51]yk$; :Ȱh0W3pAT ƀQټ{yz+c^2f7r 9t)H5o\P>c1L tԤզnm(kR}?ӽrmDl_PG1M/H{*Pj ;wO4dse% hh#꯺jarh4-eKdpbe= +mu Qx'6rxrFA WmYPAMNCM ßI%!bn1?`<{wq^-7 @gs+ܸѽM's|t}94^2~UL*凛Zkwzf#@8}?]\]nYhI ](s9Rv̵]rSLnPEH2vC휽o Wxi+:A$`9U} QQ.䇆d .+|.%C߈f(n}aCrSe .GapWeɞ`ny6[17k^P͌ﻡz KT1z0[VC<;Bu(t >ȡ oF@:BX(dY O/3T~}' _(11Į{(IxJų!BRyLcwuYL3R'7t^()ɻt,J.~2nu C`hYihD~j˵=·pTr"ߟ:JNgy/`>drd7_s6 x"ԛbc8-&F ExOpoΦݰͥsv&b\è uaj`@r-}F'1 6I QCO5Y&%]Yuw/r8EC͙3JFAP^8 Cc%MSs2/(:Yk{M[o홰M;M 'Ҹy=zƿݕi8SYXqdW, t;ڤS?UF같\ $|so0Q%B#蒏٤NqL9)-2L6'44A!hpW19 ~Qo %3b(SKi#en>F9FϜ;O8W%foi)v6>OFqGCXs0"aIȏG[&ڪ|rT81UlttH<8Ae=琲 s 8!-SY&G4XVz/nt"P,7+8(ۅ$;0Ÿ/a48aޓHC~nK< ^~X5t_D *&\Qk@u%  =Vw_L<=ccÐQ4$Y.pv~aY4l IDrÙMt-?6jX R&hR:?pl[:XhD9b'R*K2`&lí`v.&68nخ^ú&ViCzR֬m&%4}6Aˎ)/pѼyޛm'cpO2Pn"5lo}9$,8?_s_9$GLV*jQ^I-s@+=b}J2PQ?iM a D,s\`bjXzw{S>A(A52&jr~Mx#aLUsipiIy2Osi{f9p c" ;R5%NX.V`u[\FM%"IDG؃YLmY~vMB1uz#Bs4:6[9}DÔcdb ѠٺVf\.e0M*L9Y|bŬ8'M=HXfAC=]z(|.݅9<5|vQu7a&ͅ3~"Jݛ*3E P 󠀡`W͓glM+ݮy6 zMXzF\6]-\j{8TlSd2sr+i}u{ AԁLz˸*:;W=@F~k4ߐpIOL)b p8P Tdǘ6KZL ]lDv}d#O e )vq(Wyxć>NH@_֘K`)kfg({ 7x0 .0Vʕ߀)<(* 7XȺ3t[tfW]}S @I2'2ƇVP"~i}VkY\F- #Z_o.#)S~$7lsm2τߑ`ۜ}J[23&.X(am޽S9SDUqthԫp UgԵEa!EhW`|炇l_" hu1oU1CPKSۡѫ3F|y<VN6Ne{C6-WW~=SaƒHkL dXAv -R^ItR*{Pe*~Cy9/gWnWb2~š#+OA(\PFn3>P<7Rhs^#+ k6Cְ$nB}3JB1K _=) }6wJNvf+0&`?>6[ 0)|?.`-^:$mƷ/!9iW1Fە%s/1$_8&=^FTCQ6P(Ib0$=9fZ W˶ 8^Ph9=<ε}݋&1< /yN&Й+H!\|y!;]CbR+ʹ/1ʉT2LhF C/4o#)7'z3tWբ?" .AQ=lrOSf)/uz{l2곒n^CO]-Β׻:+SSD<2tc1]忟m4YՂ4A *տ&s= cqW9 @g`;(0,?ícbp{V9'C-/Wq RuJ׽lg 6=Y_ą[ })w[߽I[Q,2=‚%A!)ɻ 8}>d3A9!5 ,~wil"%QA.&ZY@k?hcl'WX\!ⵋG­*-cl@(+#t"{40㊉a%jC~u$};̪n,|+9^/$m/%kb@.9ھYo{7:- &?c=V%̧Q6m9B+$5E쳴+\I .-X7Jxz"|~ dw'ۊu=;?m5L\U꽳 ,q[Lr}8LVvx,;fHIitUT>UO첞V9#<-a:RY_2e o쭤·#x 2\yMMQjw(R/|V@S4wMiỢ*]bao&W*-/1g9<&=h0t^Y+ ggK)U_Fmڵ5gGLAG!~Hn,0:s6/F[i>1qFGXTDkE/@\$U+`l#YL?޿d8mӍ}n8x8]0k9 c[g'vlStTd?!J`.1[ψPs:&9~?m/xW6#= 0o{*j64i8V: 2V=PԬDS{7ڌn5ݾ0v\- :ng -gtƿKiP YbrŅ2`0V-Mvn)g#ZZ<1@[}ڑX}[h$ #T-Gs$i2yDU}ROz,Py҄,GwI{6^%ج35^ o_UKȎQ7/sH}-x[6ԲX tC&!R(WOt~:lAQ;]I╎ ~MI:_"]0^wK0;eG"fގ1Z[<s ~ljpzUցԋK~zW;U8l4>7& % h1~G*E8SarPg:1Z`Yt r+=9̣l۽SkoˆktTE(M).òex#^/$DUY. ov.03ŗ9]0wӞ 瀼b$%=аEʷB :%%:f7ϯ -\w DIcTdFű~?@24B˚/(k4i @lqEʓ! o-T (%Ot ɒ)1#fsĺ_O8|-c)h>vuOgD㮆: ~S'J,*i9@FxWio9Y5؛eIeaOd7Ʌg퓵1 KÖxb)Dw\*/%(EL $aInoH4M@M"zPOuf՝7sǬ:3DD -L4uT(s ^:L;8?> g5  WXlOBQ3cp ͤTM>O_slCo]i"Z.%ASeRZNnzۀLߪ.^":,v[QY]d󽖨}KdD`7-P*Ԫᷰú_2^o) 4Drj2T(L`#44<"@m k'/0A"-/ _<.4fh:hNL G4pқqFCw1NyvQ;,gؘsR7`(*Avo>O+>.؏#;.P\{p5%;ZՆBX,њ<†hxf3quw0|-eB%o&yc*~} $' ;vRѱUEnnT[ᴴ"vZIIjCch ?xy(IJs^_Tj֨wy{]bU3aHu(είc,62F;̈́fcAK"`WE~)=6l\APӢ2ӒSsjazKf(~ayoǍZ# (Ӭ%;f%P~B/!r/kgZʬi\;Ah%<@)|뱁ؙP'KP;j N}nNPcV(8Uw¥v6Q>-ný+"ceS=O=UrK*i2kcfX@)>MH.#1-[ )\<|KaJ D6( 26#Mg92cHq檺,hcb5+tDG< ̀n4HBvsyti~E10=kph;DWaJ#X/Op/^H`w *aMԥcR_J} pٮw/Q2oS}#><0>UF5 ClSȒ4k\:gJڅ~X@z@P2O_lW̘.B$nPUA|5wjsTzh3T [|2Y+>`I+ڳ/Jw$d]łp@U`X=j13J^>t8$wi'!2 uTDs_wJ"~GOaIE .,[rL"wgUPhmz-=Ea" S]m! a>'lC(<>t4\; ԏf*E ~C׍ֳ'2ZB.o4eõ|#Cjjh$m~'Kj|koyK x7Q2EFF2Yc:(5EoY}7`LaXQ݆("~Xp.؜'l0ZWDh-YsJ<#^,&p8vJA4[YkNV"V芀lDho 1`.$ڒ/}ڕ(8!#ɜLiܟ9[~[|Z{*LxT9f_Τ;?.ǔBXi %zl\ QO~M  * =2:H?Q@޷@1r<}vB6Do+$JoZja/ }TM}WXe?+@<Ʀd"$.Lfb7%fa?pbx[owpU57 P:L&X(É.r;bJ'= kj Nq'w Ni>tc cNI'|̔l;2ըRN/c(QY:S_RFH R>6?@k?maNSujʬONJ9@hm;.Vg4>XIӯ32mO,);~uX0xEl~tCH4*/hعM ΜP|Z >aTgͅVi<>v'P}O4.[5W]f`dFpaK5OR'OUL^sqwyy"_ ypUC-60&f 4\%Ɍp>ϵXBa8Q*%i%1ttӍ.U{'p Ćcm.E0{N+$}v&m &FRPLHنOL=2jyE榷 LoF x5F u}߸-<Dwٗx)U)*IޝMreǗ VJE@{ɓ'cimTE#A>5|J~bjMՂSDH0h6,'^e)Q.j`|,%APFJ#$Qgi&' 4F_қ]D 8nxwA ]kW@l-և;6* W坻'jnE^aIT9nh`pز}&<6`D)$,EBFG,rOu)Nt 3x Vϊ!Mw|5e0,"\lI'hKzz.-'f J$>…΅X.0_aw {_2nKY2)DJp2Z>Ŷ;,a '4jF*dh9ײc',ei㊥v&y 9xJ= v#nwAG!Eߛ1tl3%TxE{' (tł:_ORkU:yqFF'anKĖ}&&x;o~׭Qdkz_2 Ua, U3 3Gp&'梨{}Gs:$Uq+ _X+)^1nXc )m|>far,8 <6TIi1vY9BEg!i'攺g_P<~)mxl"@h'<D!YkXub1L VȧEk"n:wE/jXɩ/9%DTL]n;BrG)Np/#^_fO6a_hƁ12\6]" K o"tг]0j˒pS0~I,dWRܿqᕻ[t̉Q*LXszXTi0E3Ph}?2R s&Lս"?C/F;f%o([)~L)qsZ \[ ;bGxӆ.f$kJ6I 6o?S ~/#+ "(%(֪Y{K,8҉r@g!p|xXZ2Մ^7%(뮠 |dDxd]rۅKp#o9X5E_ߚĕ;Ԓrњ k>w}:-aU7 XRQ[yG^ؗFm=549*ݺl7qbg)hG]|ByzJ|s.eE#NEw]̺nN#a:u;v@wu5 %K#`ek&^uu9Aid~7zQXu t,GYuכH>5ot7Ujptz &cͦ\*K߈IP1Ih˅5~L%'?҆ Dž=Z-ipzZon9` ,Sm}>+Q3Lk!8ET,jQmKjո4R@=& ň]9?(Q7Z8%Є/j퉱tpkYR~#[׺>d8$m9: v}+F%!|$pw])nѷD\[ƢV"u "e^Nrqj2ttNs4u & 2`*QE-7rrTŜ|;P6-y\S]&_M#fjyܪ4lwn{]]X8+!r9#*E i/om[g$߹cշ"E2"&IM]c[p A}lY,7`eh.Z"N?fdۇ;z}!,YKT$*GQHhS]J pGۥhrZj\.jX0_ c)!`fKVSOQUYmH)6I-8 ⤋so (iwJYS6[=[!??L } ;2%:T yI=>T)iPXy^:*OJ5i=G}׋'JCsKFbڄ3'5h1ˬ(k^ AQx&}(~ar_zo)x(p͔}e5gGySSA>Qn XpTFKf9Mܷh0]/"wu"b T>bQ~%?s?LzT9Ҡk˴K(x Br;va+7WY3/Ӭ/_gWfU/&(/o ߫sU 8AǕ8qsL(c3֮V\@$$AWXK޻"JL&c4q&QeX_!ݨ2-M:6C~YCX8DHnc`$P~{s,l͘sX1nCyPHN91.$H6jR,;6-9sf 뀀*#2[rxD'"Cl>;᭑օDP"{خI;}ɓ:#k)mC6]pZy:0Q&lqBE/Q(t Y7dʨ7.lO<h"׳lIniMQ r3ZG>ajF)JNrR$ )c7実{Rh tNC/s7?[gӀҚNyZiDtЇIJ|kV4SsP*LiCߝ8m2uSYmhB?!ZU_X sTq! NwVΠ\#kɭ[m,R+. W?\X,Qd2yt3U,S//I#Ԩ~SYj=0V̅Wy$1UP)%ɷmeTb&,wOAHes]IawG:6k(e=ePxH8kC-"8 ;8pt*' 97؏~:}ѱtqc J;O6I3a$_VjԎ~k0B /E(w#a݉S9-V_NqdˁqtdHⰊɕ^=_B\d 6q11 (R!.0Ffq+Tb>PM+ז.gG@ikMNk7r짷I[ŀtrӌ^Y14ν%zynȂ-mX>gRS̉"봄84 ET[>}^4뷂_vn`h SSA$H7"OT$?B'}u b[zx<7R|7|^AcM ӹ)%g8il%ﲒiMP4(Px8b[^ܒX&0^>-hR9B`䞤zO Dk7Ьwm}|Ȕ-C} 6ثkx? cdXa ^վp*m',zuGNZ[0 ~LNn5!#`F4 Ϫ Zrg<""W;U "V 7ぷ3v߶KnEu-wKf-IhW%Y$RjDF/u4TUkџߏ!Pjt nbRX џ,z3ݕHh4 c4Hfx*^sߥM q.!3qѢ$J Ρ 4&QJ$dTi+Ok=c,'C t@,= 6S4}8K9Ym6T]I8۷O~CȘ_O4r&.xZ|55.xGZe!&㖺X A5RԨ;8'sըPiuG3Sy;FCP Ry04l8fl l%B=ۋ4B҆Y| :R]!o R36M k&:OjB ncUE^K,(6))c6hsD#S`圌[0ao7dZvJlN(Pf,`Hh 9lL?RO.dm9Q+c6T,?Y r{<ܪI bV9Ut'hZu˶]wRb.if$rM\Vrq&"Q4v~m'{W3=Ky 0[Kʔw^y)i&b3P4sVʮSeRIGXNp(<֤J[F`YkyjDb\Icɗ0Sh__Uz)X#FV'E?rќ)\qg s*[oMں.P$m Q=>xe4 B]1و50KׄKܻSچO%SCa[`>3 H}RSӁB`z?3]o̍hx4`Hί?@ßX9eKsYY9qzAP_t cN0KuԶDv3UbԪR 8Zo*&䳂3ԲS tfjc^pEP9*B,B8!~!𕹶!LLkV&dl%°j68+5a];u5;>߰Xځ @?{CC,wz,wlb!"zv ;;O.l"+O/&?iu@()^D%k҄܉l |f߶Kz]niCh<|+r5_PE"^Ò6VQb=؈ͅ16dYQ7οd6!9[ J.D.=to{]D<9W~]h""YIE"v7p?:*5[`{fѝ4`rdfVU[l3{P·AdBĪ]c?u~h]baf:0`k̛,gA+˜9Ki&|I!h:Cjpge=Yi;Gb\*b*2j*=NqƕǫbFN]Qx/Dsϝq8ct:hth!OfΘ 1| e/ ^߈E G׫,iь_qJt}6k[[kodC Hdzs6Lh8@W&#_bfE bD)87ţם={VCj=^:hu证tsBA_TQ.Bߴ0>~wwY.& AAPE5M z>Nÿ7tܷPu2k[i`0WB)ge 2_/iA N`|hǘԈ@ͿiC'rIMŀ1 ;M:6IddDnGFh,?jd&sbH-e|؂^Oeqj'K, Ar)Y%D>Y())7vL5ؑ)jIPD'/ϥmY!S N;]Sf<ɕ\]5 ޢ_5Gf>FHn[GI0r'{W}2u"PD#=cކ9쀹W')zu4xc6hd![1o!pWNDvIǦR"v}j)4VKQh]cjBwx >I箃h"nl#(RsM>xOr*ޤND3eǀ7"mX&]wZtWat iFNc_§V(YҸe\rj߉/L<ՇT_9C"%P&ف1ڡ| Xy*ѷJ2:Cb&׳6s0g2;}~J~2Rލ(~c0r ו#,lI}#: /K( "bizPV# hj/87y1d{s0tOS*}gkR(avLpq޷PMi"{ $#9/cSSTLv &'ұ%|X <;:xG<[>Ys98:f"*JUn8Ƃ`r4Ó7scH^΁b@d!e=^jj$׮MG6UkmCQ0lh_xt'jcg9TjF09>mNw*\R3BV4l ].걕ag! 9 _krT64:ݤ78.qhCh}6QAb2vJR%9mNN2u\ ob]+ŜnVEt6E:Sv'h.X*dQFV;UWnT=;(V{|uA1Q9W+ auyH4x:<X+yB"l?Q$(Vyf-43TȊDzN,"ܽq _9GFǘ龄;\٫N Gl{<$VjylF`l gR5F$|汄Jt܈)SyD*yR5h*;JuDLSB4~߀]k\ .%xs޴l6X?qLRs{W~ʣ( 3NkwB }v6e04kBnFbCraE9(cp{URִ} w*ɝkܭ|6"L. }ד3VG8N,QkD|,:wv՚Y[R\%r0 rf D:4{C41Y]-\2kp_')wamSVb{26M Ssw 6ńQڙ&WUyGt*r:/>1gq]ߞ (͟]R4|q"vp4>58a{)3*W1؛}8Ӑ&+hvb{|3۔8w)+vJ5#rfE܉.onb(^ǸT4¡|(fa}ָeŏO"%}8fX4&Q`FZh۩y"LJᖻh%y -siA^YZ'aP #_UMc{Kg/rq^Pq5p_/! rTDL 5 @?$J=(ОȠՓ^ͷ$@u)d3~a;:r bO]-+ߘ9!Ԍ}[8QuKo¢-J.4 w}E6Th bstX x[)ƟEڿ#ztJH׍):g]coK?w 8}}8E֔bޣs/gNMRѢ;C&t} g)ɦP-\m_F1Tx)9O,Eά.?-EV$>"x =s[!e1=lB0^'vP#4@w[s {VR1 Qr PK U3CY"6Zi!(Lmf}cT 5y >/$Ct0r{ dXs?bn^ZEՀ`x:X*)՛Lj=Z{vRD!il`I9e p&l|(g[ \uie>ܜָGAyc$Ar5oB1|J9YÃr{}VtGS=d/=Nw7YikgY'v@BgΓMefb}\ϒ Tcl-ъ]vpڛ\My\"Z5aگ+WLYSb%.&68G_-$MH48Ǭ0k0A?4xFB I|t*J.,MŽJ}(kAP08gκ6\0XffD) H}n e'#ī,őF;m]ҨpF#::' 4c :ëLP12QL` 8;r0iLU=7[ Ԝ$P.Ȁ):~ DL;O0愗2- Zpڵ /8:gc夷KtX5]%z9r ϒZx#i%E|Г]-T:WǶfC29k2_1 zP+9A--Bg5QD0KIz۝ Ji /5878~"7%dF\q*v-2ܡy"M܂v lb4fXW])+BaGh^KiWx>wߖroW<;H1Z C/\, =Іj^a U~Nݗf H.IژCV,tWβ)6Iw /gX^O"5̧NuG\K j][G\=HYv ?M m@9R/ q(w/U Tֿ܏5ϋˎYYaFxbcN2ەM x5k!f@jWHO[7 Ǡ#ňw¥ . [09(:Дlæ$:Kʨ쒯vw%9̜ez*T-)Fy}>YVb4G=ytx L }Q;NyvA'v ty}QOօŶ^%o1:#لtO "͆PtE8 CR>hrA0c7h[7^+rJ?q 悵 z @`Ey^[A\mޘ_P5bJ*.ISR!0 dCq۲MFF\ 1BxR>WdNߢj|;䀙L R?vrTe;jQiї@TFɈF7#A}̂LBu6EVOTϢ) @*DwsTO#_| 6 &~+z+@jhk&6Q#!r42thSkպ󍇑$]&ʀ%NkF))L-4_^ k,M%TSz:o_0@uM~-Ea=p]|Hd}fv@LM5I-t{`wM~#}蚍0 @~tILv5(@&ϒK HT"kmIیFnq\ XS gLu 6Ddg"SZ1aW}SQYZoإ:Zv@2d kERK*9֊(շSSdW>^jMW t>k{~uT)uϨۏ0rpk'x[@t袷0 ίn2^ؘ, KZx{?YБ3 j0OΫlFJ=M ڃEл L7jָ? М&8$hk~_ =yn'ٟ!wPJV}sJ޹hD2ntpz e+6#{7,^ ga;5 Ws:-|X9%.ǣ;qEB~!\>$=ɾ$ LM#\4vԲoxEn]}{]ܵвԌP;ڲyb.` G^ c m8)ģ/*EuiV;7vmV!6@9 #.XUբ/ $jf?!~=Kmc9_= j3迃ڧ s/Jr&pN4~48n%)\L=eܭtV~X5d%#U{mzgh'!wb.7?DB1^Ǿ^I]\oPzp1:r4@)a̓EEP&TwuJumݮ5fZsd@Չx;|a'ulk1е?kH m_?u[SPCu#/gN"|9nAU ҏ ,m]ႇi珓.e'"4ix*G-Ya kj\7AP80>-,^S{ -}ˀDCp ;ni~. Y6+3KF5?I]6`Jj- ;GbgO>pxB"- |@n9Þ+#S#Шl5O)ʧS`1G:dmdi{QE~ąCѪ:Kɮ.5 ͮi4Ot|ٍ.EUKlB0V%Og '\f M9c͐$M<Tjbik[}h")VuRE$ C`Wh0 mݤ%] &Mwx4t^fէQu(9Lj+&[YL.;Z/ڲ&pxTXNru͗P}Dpyr!M QH%C¿|ϛX|DSs+& j+7B !@Ḣ4_,y+nZ= Uqf9Cme:?dٸb橆 j%duP51M=@?""J?I~k퓸SvrfuUtOLB.ql"rb-La?{agyNƹD"bR}s8'8=T)W{P4qK;`,b[ܶیP#_;lz VIg"b`+Ǽt2=|%|VrDݝEY؀ܓbHڱP 6cx#Rc`ZUC]a¯c}7 M!|;Ɲi 䰪pZNOуEٲI?ayW7n3p_veb{* l>ealȾ"}]ߚ~90u­qΕn&dQWy N/-Jwn"F!p]y*5 lGJk.h w/;rۍ:jĮ)>-"$*n[{ v5RH;RYO#4=5L:`sx=Q0WuvPd>Ir{flј#,V-W-V()ʹ@1Q/O[JyΎx{Z5:4ӆJK]aA`fZӱg`P`H\Em~E$r @Zx9i&$ !13ML@иr4FFkn G'fdpPMÁUi iеrԟ]MYWZGgݲͷMU{".ڤ&7> Xrs!7@ݑNI:1PKAVܝvK?,ecAšɢK6 fԦ|ܣ?>KlM =wʥԔ(H="٠8nc0}& hB_[pѾ8k:9'?aK]yM C|n+pI3'? 0&$=&`yʫx^GT S=x|i.vQOooy)wg Wt[\f=qYP9kLc** H+KG Ru$xpA':19:p{`Bquݜ -X^1w΄ڕ8Obnٙvpt&ID }\2vPgf}62\!c[TZ`ϜQɑ{06oV0wʠƣ Jrاb+c# pF@ j5O?DɁrUK-1j-~,NQWuTQ)ԦiMNQKU˼QI@K R\&wC88זF*,4>)ty|$1Fxأe0 vv?/6-&;{K?ҙ+Bs()7_LR2S޷Jj-%RŎh z F``\KtɻU~P>ZRkv? ikn %p |+_YSrQɋ̙D'|Ê_UB Q==)鴧U*{(EDkM+)|#Qc&U=ۓiK@H}T4&ex| VT4`F|Ðz`WF_6 "Wv oSQ?q2? qZ" -ஹ6Z2N-lhWwC%5Bo_Qa `R$HLw'ن}E}eX1D-u-Dwʫ^8-4╆ksAMYL7gG:MAa$\'a\c( PyO(/t^۶;J=9/w\@eRto,zR" G1zM '~! O}$E\LAVr'9L2CR,!gt֤uVe&tt4&> kU#4Ti,3p(b&QLPh=?mp?=8KZԡ^%Ù }p[@GYd@*s`C[V6%v~Sc Q֗}#lykq^C?B?xٚPᵐ`WTIr/Z+%ѳ ; `(saÙE4PhS3QI+q Tjֶs/t1azQ/$mp`:]~>v4X%sn3=!wȅ=r14Vt;K2z=e$[M% De?2)#г + [aPk6&D֋QHhMP&z"HᅐΛXw3g)$3|GeG~oTt@(0I#6\zpLR6*/e hx5m}N`cƝDq?,nH|r]n 9t֘_ȴs)xjuSOF!^ڛ=Hj 6ƺ ) !Pbԇ$G4ckl3Q_õ!ހ[Pμ|Q)YpAV[Zot;uv ̒5j<`k*|uj)Oq)j!.Hq*a 9!]bg48U> cJng{b,8h#I$e54? ƣh}KSR|^ nf۞U}*X\6g5mPE}(WykӠ_c/g$f -*i1uآQ%ϣ/5Θ1[졅[ɨҩ?6ltyaMZleӳ)N< Ώ4}R U&p*VAe3L q~Xߟ&zϓc.p-u')А_ů&\.pRb=m}fːV0cI KzMi 2l>_J|>[{Ȅ)Gͣv8So_}5cfMx-G{DzAg#x$# .@Uqps@Փ\Rk /fE%7Fґݻ*t#+_XsKVY~i4}!ghC(=b6pxw\SƯ$l,pS&HMyro5c f," U+- IP IqUx1S\.Ct|gI;g-}х2^6r8̙)/52U)S؃X%\~&6Q%v4y1OzYvqQiq#5+I<T mL"ށ\y QMH +gBO;A!*; X*țQD5G۷CeUٿV @V6%I/_Oń&#AZ巻9 xV]R*2,l-W5΅:|(;$W,yXW6>|קhm""2/ԕ.82l)ODI9}?D0UԟQ2[x +Nt`bSx%2Er[p0cٍX0{.ܖ"Sk0{?ҥ\mwM]Eqڧ7XCO_uw`W$'Ɖr[uJ'se'^=isMd)TLix((Xq(T'\φIpW~`°C$UY3Wg[JVDԅHB2lw_ 5S$(}KJp:BhtPYw]mI'Bȶp rPlk&GR`t$bx0rnh:TLkLXT[CWz`fc @@kQ/K떔I.(o,(6C\y9S&q{0P>Oy3?MxmDS2#͑JZ\ W5-:8okKX*c]paRo䑡v^^$? #K;X^7* {m%$[J}a.ݬLakFk 3_5*+ݜL[)ȂfmÛhSQo/vo44/CMUw8'ii/-wlV)N[RP_Ec,TBZ})ZRslJE΂4l-BԄcq漈qmnɁ@5%!.d]sG#Qo{Nٌ ;ʸ{bĥBgL3/ 5GlHxlLfWbyd1Gg f5+"{;E@viLd6ǻ_SS~sE,u89bwݪ;\JcUFDܫ6Mr\˾U Ec:v/?U1/xuT[°V9e? Ipە9 {fydE1Z}Z,vt-ݿK0zzϢD @(@FZwN ,a@-ʪǷAs*RI9.6̭ =fxxo>)R81!?\]Z̊wEo2[R;@!8يDNa:#BY֋Nv`~ˎl-B |_սQN&Վϕ #y'jēDbӵj)(M :R[nP3-E6qA-5f!rZ{R!{HPBЀ`/Hrċrh;≽ n?5}QJt쮋o TO}̛ǜIi.' Q+B9 Fn%x{'|"nCT[8O ˼fs<~-l/?0u[ s-"_(/ M狑$aRUu'ο[ÎKW/ -|'4Cjtsg[|NP-.JQ5:uՠId;ˤՃ|ɬka'(i^4~R;Θ]":d bHIw#\to3xLFo"AaLlN| pKr(x>(R,L잂"Ө^/F!ֹJFCC{AK^ϗzLpVӡiR@+3bw~Ivz!"̴V%GW#ЃKu)F ZYOۤs.INJc r?>%]8չGu Ѷb#k <|}fm1æWBبn o-o38\,V> w)&)E9M {GzsrhhZ \gqW#S0z;c ֻ9CąBêlpo:ӽЗ6N1'1%xS K GC|:tfH[577} ș \E|×l[t#UeDYzc4uUaBP1&5dLATx9O8zAMqk!ɥᕸ 'lR.I`lݡcFĂi%m>aTa%;{! %*&׍uWBj:Tl JV>نV@鮗g҈JoݢR eKEG Qƌ%: (+앓:.'}-&^2hӴA:53mV7+&yŚ*N|H6KNheo?JH';"Lrݝ8EK]<OaAHG+'㙓XۘaLS]#BC)XJh+!]5yn*^I6ojR}ƿŊsf&_Yw䚈9l$f nIcC BSMBD9-քOTyv}ٝ3}65asooRAPO![߸Ԙ46?ZNm/+35r)^!lUW.a0OO,%xTXY)16V T[kk۫"6R.ѯ/$1fl̈GavDxL"\Pwus~]e @Zٷv뮤-Vb7Zžn`JcԧN[foʿ[߹ DM49r}B[#MO =ʬ{_mG]- }W> ?u5&:tDc!MbDD1Mw,m|nNq-mp4JBmOc sv\txZ! g&dXrnfy6킲约Vo7bՙFBdX uoRPJ@(gAн^aBs^Ŏ[-o{zާrhP`!#z2RE632z O2 >* +!f7 )[yaY9)99D[ߨcՆ`f 齲@ߚA͍֋2p"Q?؍A6՚tc6iMi-Phji|1oó@mڶi/ H^)aZ+*CIn&?̴*!}rYnt֕ĵ;E7#`x;}Vȭ];kτ i'6U>׻=J*WVӰ0s28fɺ:g #8*I&%slcH-Y B[U oe9Q=1b09fWY5dԶ0@gvI1vG/1xL3R-}{,7BN!TƝ z)T[[ɴ*5 r,iq|c|7R b$1ܓ"a,n?0(c6pq,4\ 6g[5imbwNt+ș8}am n$M ?@ \ "EŁ2H@w೦{.k>`,4%n ƪh6X"C4 ?&9c#~_ySv`bPE ԏ dN q m6TCT e)H?LiR)aiyӳO%yX|n`cpY4\MtEd/(n[k n)4Z{i'h豀Wş{9jmHԵv Rͮ](UB33/ /M~j^0L=p@^wD}TLE)qA.ؓ6`;S~>SԀ #w !\-B̊ +/D[[8K.9ZkBˬèVֹC=f4}qR}Av\wjJ=YJ-N;Үf07tk(EHVǤ)@C7Sn"&*b+g*~("߅hpwq*B bKL7T"Ȭ%{*ZPbo2ðX12X{6Nm&4*ӗyMgB5~,&)X9U+S%)X{R U^9Ɩvy~VL6Ö́i%Ap 䡢J-Vĭ- ZjJ$n8 $,T#̌FfP-wRknV]zY3]yT!.uQ`|n(Y4lG2"i sѻHC$Vf="u1Ι'G/*,dM >1H6 z s+c9Z^N^uua? |mڦwT3pSw4x)xXl8[Gy+/tsT7 xPR~\j a98h`Y-6(yŚuS" 60O?,]4ڟ$W A XW]o}cB@C.:g2qndٝ6: ѵ>1`ė|! ͭ\/SC뉳sZC6<7} lf2/;&P;9~?gK&uȰGh@R)*Q̦S-LJ')hO2]>n~&{znHO<&axҿ_%c`e$* 9qp2HʭGKL}Z7)EZ|P_!"C,f;' НUO5"5kw Ka/XjT?ykn˂ g\us#^1૴\f0Ȯ|7.Vp{ĢdZn36_i&PSJ:^^qeY׉8^We0N3 dGT"tl^prz"\>D@KE8\n@1Zέ L?QQzh󎼉q0)Z}aW2Ҋ8 #l]Zw7z׊8CvWiG>O, F%" BHτg}ֶٰk'+_>iplj͌1^ii;3s5R,%/;F!2]ee3m\/ UW5~"qݶړU`qr#Q?ݺԍ^:(ҽ}`^?!?Š*jo;{1.uʀLR$$H7ʴIitb"Ptm ſsgxy`R}qj<ICxC^b EP$`fiz0] \]T_V8NzVww^m^`Jw"*\b8YhWa ?¸k3 ܱmŰ0ϐ g2C&Ez` Ɨi1q(WLIW.dڼuB4 չ9i:(  OT7l^7DndܑA婚Kf8SwYŝ"vఘeJ}WGzco!`wD,K~\)Wf@wr򩫎&.O,0ydcﵘqןR)vԟ"h@\lx,|1&zxd%g=~`RbQoR}uV(wp;+~dˍAHW {XY$V ;ӰVGZLXL~@[Ku!{ $ER"@W7) @0L_݄.WWV -RR4b\t`9x/!u)0>$ 4"B,v]</w Q<#B}o{~VNI&Bdc3)˭RrD 5%a}!CO%Oy8.p)\ɕ$ 7-?%X 8>8?v\7@L2Eaԑ=v3OAlKEX̑!yX pE3NN Nx#rDEV&HB:u`$}1Z [%kw in>0"xU}SуɆ2 th$,Qb4 ) [ѣryka2X/{{)"C[a3 g_SAO^Ѝfے2oU"p7bZ lECև63!MCC:+lȐ1i :!Ii{S/ΠU&suK?߹$<RMq' ^3v Z%RJ~x=sB7ZKSiL՘'Prw8p(ca?|5JPɱP[o;&O``|2~ȴ#%ORZFiJ!vT!l= oVnO&qfzt0;»l[9PJĞ{m@ ؏Z"iFմ`0鸶{P:]<1W~AAhjyN =EnIm^B,%)_ 1>:n({&k(CKOjV?(_*ȣ m=!{?|ª$~ /bFIKoP8*c&O}|4>Ŕ1܏{N#-iQD9CTTyOPBQܕ0diiTrfq=̠$u ]6A2zQ,7ijj+aW,3˲nN˖zkt4nnUzC<ۇMmZvxU}#v'QJ>ZJ>7e$Ҿ~a {Hơ[pDvЪ FmbhLo0}ue=ۉndl:#=1巕 '`B:NߟQcpT!; -jŇtL0 4Wzbw#cSտ|S>WBk (vSu}DQX.6"%Hpz\u+//lH.:2•A9URݣS 8 ą#* &cě^m1b.'O1+?Sy3nE6em07c<W" aO6p-=+2L~jJ=e~2`GHv#Vްk*dXT,zlg)F!hE7(i ݿ2^GnabB{8Hhbہ}hL{sC _H\WXI&aC*cެl)@&[&cF7ITkQ`&Z۵9=g<)2t`B |.$]0.?t^x/#s /@B<"8j_)Φ-*d3{KZ0a?;XFN~?2kt߲d]!lRIHqc|I H? !|{H4%h_/(I^xIeʣIcuQmawڑ?ږv5>)<y\͜ėcx/M}\m*"}WYZD8~R#1*`[ail%~3mߓF5ˉ'wܴmU"CC8B̞]t~eDnsmVQT>KU!BхcI3١l$l$ Rp.<&%#5bLeOi(.ZVt`Y$cق9^!4W="-ޯPI$LcLmzA4 6aGY%LCpm s3_~(5%1}PlqnMOfzd hZ8^ǑK$C]uei<{G4Hw {PkrEp2S£\QI<9YM{R*w<kay)]2JVqṬ*W+aF#rhmlE7@GY!AGg^4gm.V KECԄoGDv')L.7r~JZ< Nف86PΚ ,O^ѩbG4݊ƯK!NcuV{d|Mk"fjtИ<^^^Bıf = Rbk\t5LZ4xdA<fd>mvWoN8}n#[BO⨦AME4rnFXS➋s|A:I>EeRhAOI-x1wOw*íXsdT:hcP, 6W! 9<:D} +<r WY!Dj@w.`=.(tE+!g66;n, Ӱ9&d{eqdk)T}< dQf㑉ET驓9)cCl8@}[-w! yiFWo7CuGݾD܇6'<66FV0E(Tʶj U7~;f&ϒSj DQo `ا{Pq{PJժϝP˜}V"Ѯ$m@S-;z}ޯU*iFTZu3oGYdVS~RQ6#Y%5VlC qjpxՠlzmgeUX:An$W; B#=qG"f{]})Zh㶈1DWsu0l&f!i_M\{Xa1dO5@*ͩe%iw:Tz~@0THJ.1 +pO:n8);;:OO7thI`և}xD?*j$Aiwt~'PS -ktI&!<2t0R$QU `z㰔҃X!lMau#p?9rA`,D;Hb=N-];ԛZHas2AW)WL]ohl|'$GоS}Bb:QÆT.QMQ6>X?-hRO+l_ߪdڷTMЈ똖7QL*.g֒:4vՎE L؁K=Cqj#Gx{3 ^z&JD_̋ϯD*;_ 5&߼D0Y;L7!zw Hk!;veŐO쇙]ug$g&/KM5. O(le#_nc|y~m.WG[c"b0?B.V<2*j G I0*I)$]ÓO2!s7gC@~41r F 9P]&dG -Pgw'u} 6N-#]`& dW<^ K5uCO  acDY=5%[Z(ª1-m:\b:^͂nh<;ջ]wD^a#[>Q>(*"KcʽǷDY3]NQ_@g-'nL3P"8UXx' # ɭ#hLcR 56Kr֨{ݬL~e\~'y[,7ҩlS!y f4d-/bmˡY_ЛJn 8C%VyR*b{&a~xw(SG yj'MFBJVEYA!oPXyN7[Wqa 8F7IE+{p ._ Qb-F~X4(mSvdBvtުδ:!! 2*+Uq2 i* a[dҕt%gɠ8h W3]Lr1Z# @ Wȍ~Y .\]SJ/4Qn/]r(헒"Sz>߲*| BHy*쉔HW epݡ}lo @>͝;rrssӪx6,.w&y>}-ܱn'΃Yb's$s&Nn:5[-25e~vs!$d0fF5U(U|coޝU Qv~w"4-x^63G>kūWiS uEDs7θ Z1(sXx_nWn-(~72GDQiGZH^bw#erm^ݻq!G(EC=lUEs凭B$ƸJ=#jI\IE`^uO^5;夬B%A&ZY0پ\aw4AljZ-\MS opY#Ј;+&~jpC`S|GBbuYaelbϭ&XBv-/Dt[ѷzV'2r 3\g|/gңHLYVN]ADD_9uv->c'%Z)UPBM GTk_Rm ,rENW?p9?SxCgH Ukgm7%f,JЩ#AՀ˾zQD2vQJ:~@[[ ~x @V T{ō`J& fx|y>PZ<8ֻ`iإ'<Fq혔/$LJ9ʂ5!Jh7?1 -U% uz&Ty)?Qg܇p3b+ tyLSLxpi{OFW j%8_Ku83N!vO9jݴJWB{(c8TZZf5&8jXlZF^Ef+6l\uaJ&]d;Bd%R 拇:_Cc'U bXѪ@4fc/&qB[g}mT<:R˴d ֻ@V~H@R[|E f|QuBD#7m젭) ̢|7 ۗ,`9!p-<saɉWy?d$0xvc3W(6Y e~Go|*-O8'hS_"-~vr ȩvn"GyI+OtC*U7؍:*ueuˎW\]3oF3Ųށl([&rdJDĕ %AC`Jiy#9!\<+ֲ ON$sn߄o&|2Jp{C)J͆KݭdhXlw3sHYrپ źpwYy- CE P/x}d_.P2s*R~~ q$zhcgtuزVQ ÏԳS9})QEY&kUb^(lZtʡ3S^&=uಘtu -B\VU!KAoNT4%!KԶϖ=OxDT 7$Aا *BY-C&&(e4U7_&q#;v@S!/}$ھsd45~4$YUzx%[TePbGе ia/)B]1~ _]NeR0"\$G2ZY@Vӱ 7S5SBd\9-G-ZɏAba7B$l}Ht5pYo-.~ q !|6Œc%$_- U0WƷ$s9A ѳU@Ypb y)QUfc]L}pLZ>?5x;9P1{  /`PxK1}= /b3|Xg<̙!E"QSPo_յ[Ϟt6/Q\Ʀ>𔎕  H8w^)T;g'@S]a@D ̯"L;NDLU'Tr-) /sjcVP$!6`L}W8m->T֓ުcnY'rsDԐ-)1r8-P*XؠkH{/{馊4'W=mq`-qQ Tf$-}Flm!i&~Qq1m+P.y6OF>\P}C dv82Iu*N`!j0^#S! Cf? BM\"vFyOme%'!-Yd~AE,uLڕUW"G>Oq, p`zj~ F{ hSu#G#}@Hlwrgu3(=Æo-90誀ױvbc5ACtpU۽d|r!(鬮%7 `M(xUq\ 6iEXbَ\4d85vL‘ߓ`@<r%Yavb=+-q=+/|iC)e4Q4InτQ_n@œZnr ގT·.,' BD\BZN]e #s-l z >IMVcxq{UTho]Ӌ0|'` LƽZR@Vve313PS@\lS,!U~ոi9@8A 7+ D;S *3ɺrh΢3~>bzqUZ`rEȬ{^DZpBVv}F(9 ٴ!g(Pv>e;oGklpQ:fJ& gD9 VXaӠZFT9i98UuZc+q8!BLՌGXc w]k PKA9NAg1#Sxβ Hk)u$9s*1s}F3}^qýT+m.3_%^R%cU\I1%{d=93EVү+cE(=kٝO Swq|^'ߑw?$Or_( =TO->>x&woe&ҷ3x'\w'U6XsBT ;4F 5~ξ7`!\&\ A+rVT֪;$:2ż),y [fnwy-SWrN]*wCEW]Y0OmbH7>Cj3R%3A~7(ǃv Yn5^Xϥ:*:(fsuIw9} K86׭:>WV5NrrA~KN#0ZhTfvm/9sum2tÕ9> uMVQ&36}Di ZoLDMhq^]뽀h7AG鹅#20 g. B Ptc~fS \\\1a&PU2*'AH4(8aY-hYaE5C| F өR$fx7emMME~OV0۾o8VMy4@+ρ#r"Q*| A#0fv9ES03ԐqY&Ӈ99o'{#kEYG]` a!e1A3?So:}^׆:¨j׳KtR6lU"L>PBDF1`Jy&e~ G}+GO? No|+MͷћYvzc@`H&w# U_: 7O³T;H;5-"| _gw$|:wCu5 ϢgN8s[`wr.t(ڕnvx@En,H/l)$=}ro+M2#g'W1АϠgՔ سRzIl:f-Ŏ7f (~YXP9A,Yԝm'oMC$"i1rVN^;_׿ո3kx:%XE8MThi}k&F- a3{rzwLԶ xWفDcaECX`:~dN".d@9H7i v\>Dq4,^HTߣe8YE ]5eӤ ؋H:^^ŀ\Ԙ_cZDR$_P' N|A/̟k('eRt"ԫ2^P(ː.;ΆD钅el^~dG^S)j&J4d/ J.> [S8I&I-+9%搾{E%=ѝPz`{a=/RrP|``֔?N}A4YhvS('#kzuq!CMdGjMDU%5g]95k_|O4x̮eى];)x0M>mya!Z;دwߝ[7R~(>3HZAʄ\vmQzi!R,kwe|FQ^/HH&&Pgf0Eؔ8"Q0E7ߨ9j>2,Da)vMISmSbt%% gBɀI\w555jk+pvl0봧J>_aT+XD=LSӺ@=- `$f%Ւ#dn7k*K]Pl#iq'I?O*^n_̲˭igןtR&XXO0f 9%CH9{U,*HpY#Ń@X!,!R~}ޮ}=ڦ<_ (rqW.$+ 3tv⣪K=G“|l^oMHm:y%z!*-sб5H=j)}'QqV݁h^}yG/UD"n H:Thv^f\Fs}b (Z1tuUyy|-~0iMQ#s()dT*wRꔴ+H2xrhx p{B>ބc;/NQR մiv8R-b:5kg6p/kS6K}؁x Re#+ 5;J$x..) yu3Her.Vum*mpx/%iTo(:Du ,v,i4s]<)`c+HmVU . s<~EMM@mߔ}1D>[i;{tXp.#m?ዊҢ APjGp&uyzqʮ_ʅթ ~ʼ_!2sm܎  c|C$PUt08FSݤGn}r#{e[HL>H-Ut鯺hPkŻMW,ݡ#]O8k<{GG9x]dvɄP{"qشVLI3YGUAΠ{SEM}C+كn*eUE*"~'ӛSw|Fkp'96k-&މ (Gc74d- pʤe jFǔTDfOwSFS /M5n[I;h1 %ͺ~d'bt!<<3?VMҧ @KrLnj^B!ߛ2 :׀rO -x?0Jt8Nl6^5ݽ};yP WLW˭*dan>ț}e鋑9k5kYbI1txLyb;-{UF ]ŏ/օBҎ=/#r$g&8OR0g?B4-j+9*"R7z^%<>/;~:W=l>[lB2#XlHEUVBrdvr vvQ؇,A+bx=yAGħ!ȨoՅeLh""B&ԟ`6@G Շg:]%Sn_vzJbqQbaU!0 %M8NL:UY50&2G&j,ce0qzX{z;֊}89m?ۖs _ ՙ\T =XFK( N{ ɶd?%!ך$## WKQ^S#YL9ӝ',,|J%#}DyMͿF xY9ߦơk5f&a"'|Grc7i y<xX%Q'&L s;vڣpcL]6/ƭwU[OǪ<+\0oe&Q @{Nhm!S#gwE>u~esc% = LN;O>?%Jw=W) wZފ7L|z"Ie p#N'#Yk9ILaE SehA+Ip "\X$ 3Euly"ϯ\dދ/ͯ9r `8d4|xC($vHJHf {(?6Wg@gB%\/h@@ DvfzxaTMv `#2#ӗ_Vn]6,J ;(wh:j+*c/vXxIX. 7YC-g pG/$ j<`d8>fSi·v[$@8Gv Bp.,ɭ_|! ø,FōY$U;4$.voA7qW8~',HIz%ل n1K-Cu#Mp{[mҌ+ɣ#e89dZpLW䛞8J$팬&mq9fou }50$?eyٙxw-=JƐ3nTq c}15ZKT,0r$Σw 8&^)&Qwǿ"@5l>43$AQ~Zל$ p;J z4+f?QGo NLQ^;Ÿlj.߉uE4vpw&K-zI#s4Ӈ ӱYۡ/޶I&/+lV!ԮA &(9geuBko͋T X"TOoK*N,:o+dљ!ОrGwq%7e-1-֥;G[wds'p{ [Lzol9`t@_yp΋M}BThT (Wj0&=HN % ܽg{"M1JշNMf(q"0(m$X7%,cg3ֺNvLM_ 7,IڎƇ)dt]\As)X@V)A e"<"η@oR hki JJ ިk ~F aԝ6@48n~{sM_[D+vJhIZ*(W`=KqXST)Ic]K&pz0YN{Xt-x 3WuJ֘,.x|fO= B/稜eߦ Ւb A/>91 :otP*Q˵[dTfòYd:,5Fd ͘He #uB@ٜfդ ;)#+>q8$)2)X9cI5<IE.RC6HxPB bYZ3{ IFQ`,i7sNq{AwMLab A 3C6BĆjKJ@ث0nx^!eJz:ӀmB:nVuTsX?Z9t*l.-M8z M xI7ҢnVTYY{06r tFZs roF, `Oű$|WHڲGUlq9|֌+u@+(G0xXFԿpxa:Z:!/+0ul9GBwjlǰu'vUjXMNBe vAI,x _ LBQmZjxG&Fm5 Y5 K XD%(7=腍; W IZY]FQ^JJ^G.>Y>iIDL<9Dׂyt)ye=%^/k;M`ܵEdaqOaa2U 6tng@!J |./u_4K\ދ]_ >Gte\r(CIFd'xY~fqG*4/|GLZO4qթ2EIOLh/4>V5VE28ADqAрb PuD?%ASI[zК6}ħ)OjU,a&'Z Yg|REu.L;j{J #KpqqLBPC0Vpy"?~UR'm5Ei~^KC/̌vxUç 2Ko#:=B@m{ QZ't/F>Vˣ^#[O9 u(QJ5&7ԱpbR e/?XG 9J5 @ ϺEÀMv }+M66/+Y }h? mŝ˼s'LݿtN9/7xcģ使' |͔.6oAtkO 73 I L(olΰ|-VbAFwAsզUCyߥ㈆Lϒ^Ϛ}VJej¾C9{EH#9p7jqaU9#?i1ˇ*]+ҙ08C~hO^W~*+o԰Sd|+u?jLߖ[֡-?(ifF3dnolGia2|,wil,$:GڋCwLiR7u&h eIƓV +HyI2&{r" t|Y1ƀTAT* 3 Y&h!? 4tAs4+Nm_p1;ĭơ2FfcԢ9x,~/vN,fxv|J^Kaק؛ {娡iWk՗痶' r'rjx $^,}D[M2&MӭOg|"8ͮौ]O#^Qܪ˴-Bl`߅Qݴ2lhoB\ZןQ2!pnW]Gk!Uߣ&}>âm =? dY%w=xĻ}Mtd/N7^T$QkUC#awQ&"z˖J44M^KH:Udτ8҇sRߙ8GIޛ,&P3Q60_Ȼ`*NlM8L5ՅM6u+rTik*N% WBrBilW_ꒀ@NIݏm` @k@ÇkqFQ8lIq{D<bҲ"oPۖv-5P=Slװj$@fc8|yMF#w= 6 {rƸz]큻+&.L{s+h4.(^I~nמ-Q8@fc}JyR|WAhFBυ9~n@A?n5 Bx̌Xp̢ K/3="q"3ƤڤI[5}7y>IYj F]ro/;PDj܋t*;CeG3_+x: <ϠA!# wymboW3|kz<vzOm/7&ic Poqnm<2Zu K W%fʂ,Hx˼zuIå/1Ajz͗Ll ?V #;_ëdD +wOb.K`@hE*- MŔ5C)(=A4+>l^-mdܦn`-KnHK T9&pC 1cqh#IJFŎ{u^v}R]壩p@hr9%"biۈ~h;kÒxI=]p8&m3=Z͎O򫆶|UAc26HRl7Y" &6`ږc?)?(Yd7ka ;Is}Er^A-:ϛKgu3֔>I vX$]jFlïv)__U_O3 }:<԰+m Õ^*g WT,Q7Y9)86DQ{6:Rl[IR<[ǶIarg}['&ΌpqzdcrԤl^f$>)F 8_ױ֗q㼀a ` ÛMz^mzURNՒ{O̊m FI27ק3%,6)1*+l gﺵ8x7_PL3cr!j0x'J0W@ sPPƊJ_dfJW%\dTvI,RX铬/Ͼ/WXRfW }8AqSl E} \ؼ-)GA+}jEenU@o̐;bPU~=×lhQ޳2jmZ-2nbC27)BuABX׶B^EZJG$QZH+jfJZ)@ (_.UpuX`,B0][V8fyMI jmjtjf.Q5)tqS9Ig|;{fmQ>mhٻPmtoBKcR>4\D]Vhؼ<\ЋS3 v? -9t]>t$勜=\##Er'duJ`J؈؜ %p S;HXH]>j8R9~ +{N|;Bw;6ꉸCc&b"0ߜnÈ_ycfccl+Jmop2ݭͻ'!F5 Scahԗ莐LD~5Ζk9 z^SM[P<8-Q.8#^jF-*g}c!v򿑕xh>.!uߡE(#H5W9LJa54E#@4Fh:Y# :@S2dUo;<#ӈ_mӋWa B 1ܷ1uvؾ v%LRqlw,aJ}DdBt'i 2J!5w KۚW63|3NLA8)!4!~(D#8K07J 4+jМ@ng6t<[ħ]!"\lCowf -JG] *E)@s ɹUD8!3$NF gW"D[+}툵}~<C{=#y 5-ȌL)})Ea`D1{]~gU- ԳlkN>S54n2ZtiF)RFBhnfeI .jMy~ %t;żd&bDhTvDm=$(֦ ;tKti,-A$@tƅ@ZȂw7Tv.1qV4KG<{3C╹ÅB[wo Ź2)V]D.,!!ktE/…Faŗ:]Ʃd !j\@9D3J-Sf3S;-*noN*OIȄD!UiH!vvp=oi²+O?t TydU +/|pw]yX?9.4 :7ucZŃuo^TG;cBY(: 'j8=*v~*G C#ǘq쒌':Yכ\fC=2P QAG+@F‹HbJ%0hjtw7bD'D鱌P#CTIפXy?V )},VIclIe3o b?z +Zg6٫+_u+.;_K̳^wƋgNF[iPu[rg i/(?;N-fhW0+΍.{@U)hPWXH.'$³gBI#s-mV#-xS+s A hYb_tӵISpoac7[5ȾKc'}<^a\q4);9I7.Xc6*Y ,ы>=v6bjSF\ -?2o̥Gw > D&?Rpfι5!l!"Lc?qE\~:_MײkI~s;,0"[!׉Emd{U|0}jb ,ŨfɓvF貟drY4N|3otj_O/=ڞwukyY^Jf A^$tJ %)I=%:T J~wm^/`e_,AG[س*z%X,TKjuI(zFmz焃 $Դ OMw#؍g9 IS9KZiSQpl 1``FǣLC8i s:\*U.j&?w4J "yzH( fpl.7'VL1"ϑr9l9hYZ=ÿIg`W!U}]3M;9Pav,> 'wv9C+Dz'[oʴ6Ӫ Y;O=7 =p3=6LB[2@|5ォK}|#n.mpn[SUuQ{ ACC%|AI u EdVxރie}W8n7) ;צU'~VVYcl׿])JgQ<_.[)ωI~D]^UQzĆ}-U6RHIx#kl D[bA,K%Thg"M|odo*/JPkvLk3y%(z}~ckd4ԙR 9IT wՙJd]dM*Ƞj1V] 9#S/WvQK>% 6ZU(cPk)MzeFnޗ%iאRi~8o Yq=ZHTKRwlXߧ@../ei~sqNuiSdjI">BV"4T堲tGX_ti=2AL[97,wEfjv}iuIb^Nyv>/{~Loi)Bcٝ2O6ʻiLzǞгmIT"g%Z_ }:o(ys,>26p?5Լ0'U)vJWCOR|H눐`W,Ջ,wӇ*DGLCw<(*"š0~J Y|NhcdBQ9ofs~8软V5O(Ybg9IRi $چ4P?% Y_O1~(V(U\L3͡)v04`(HJ녖QH~o/jU,4jp\ZYWP` |%MAf"{,N*5j.^r"pg~q& 3((6;7YIcӃ79'$LWe揆Bè&p C3qۑ (B }uQqP!eMZζ |cnAنti.#4ӧ*א1_GsL~ S| zC$_׀`ZDUX+PSrr:OGl bJUBfgfOPC5ry9֮J͵?7h!{-wrǭ`3Ty/+ Qի b@(8w!A4 J\5e6%"g/l>NLSK<*ް{VRl2&H}Ⱥu9p.Ju$ ؚz~-ȁ \w7Aӥv <'Ruu QlbB{^f !Q=Z fV?0yzp=<{EsT˩ ' @هhm#c"9KY4<>zCZTkNiJFW_2ZN+~ 2d>TV>1 v[Q$ٔ`&k3Ȥ*094,{g76;ʣ5G,;l.pI(nRp2^XːBSժMFOg& (ml]vAM`4M \{тF ɞӆiMärNp>"랝? ^]Tm# ^w&7㹡A9j*V?[wֱ^@'l^?@03"sfcY|!Ɋ\cs=&&x4gy&YIA誆UiQP=W~+ԕx뜘 5VRS߳zta#kz/u53ԌEvkc2g#,X2 PObe[RNxVcwc &!YƗױu6\v5OԫJ\38_ƟY/1E;5$Ո}'Mqyƺt]X6a\&ɾXݻት(4/Ŵ?(PW;U 8o )]t{[5f6sy*5dzhCSoXIvow`Y,`%wzTӛ9(,W/TEI+~NmX).:o7̜P͛daf&284jѴy?4WUS~Q":e}3Hy?3ꢴ5A +#d^R d:XȔR /W* ;C MIh6Sw XY5e@!⥰ ctfau8_r: ZJwᘒ0YO54.iI`Fo#"w qWoƼs_bn df^_OEMj &(ҖuA+@~$ܢ ܎O Pr`i4ƈ`g t!GY1kIjHdR̲vMHO⽯S"H]  !M]+[dZB.q&PDuiFHgIY" rI#X3a,vW!*m; D n/驌}f)(EwJN#롸XNFRS`_ 9P.e0` >aeRGzV?;^5P-נI|N͟SLVq{von5UqGꍔN[c&a% N^bt2JZ+.J K Vwpt=%Zbr{^bQN &~ņK5th*t>BOEu*7V԰\f薂+c?U|.=Zؓa9q͓+j%4:T`Zϟ_>ng?T);aMʟcxmҚFk"(xCg:5~R9T]Uv{*"[DsJ1upElHzk|} #> tהx/X)4vϊ4u8:nGn"Rߞtwt3F{+NF]ɥ v8K]߄K_ Hlvѫ[Cni; !?~Y,’.TA+{MXcwCA4<H觚,p5| (جIAڃ0Fj}o ׵_{$|x%oE_DhTv#8"wbѧO+Njgi4u%vytޚ r4MnRQg+1mwGAJQL0.iyL.^\DIIW&?Kh=yQ諁s*+M ^ @ySS_=< YYLg9Iǖԏ]6p c N%TnO㣺72@@85r4OtbCD|yJ#`~-gީju&I&4BdLx*Q˴AJ?3IS(Ux;;5^Ɖh;BȆ[)uݱ-?#^s_PZȏbCuZJSt*5~\R%aXPi)] )ڢPάyyN엮xjY6~vbS7*VBtoC0m}^@<$#aR).[r1`\IeJFYM*md_1Kg$R(GId9Ph)HySȠMymelٯf0+ *JHiu=3"M56Y7P$uDM&$na/quj Xd|jN oч&>{[)`\Ăq̅ &LܡauRegF K6KO'4q#5.[94⻊nF0/kj3]i gPs?ɺi-& ,򱰍VxWd,2($ݓuRZ:JlKd?I33Tۑ(|˅'*]@I3Jδ3kSf< CNh[qt/MHH (bߏpoOx3eκ3 _ONyJեB^AtwV0/$[kps TVQSh1&5| \5sWb4@gpO4p]'y?KG;24ZtZ]vPtaP,66AH*8 .*2N0L3 ]>YOFù{bp+U6 6t:s-]5($}N(4'5KQMSg7qtcs (K]BlalRhmq_ ߖUkԷ.H7`RgHJ1I`VqE\\೅&mQd8 IE)ە|K(G($W _t6$2-[%2@@ѱq,B.I0Is xMi8険e vm!M"V'.LHJ&{~Z3nXb}"йLg /f'5."Iɇ2HnjiW |5GnT[s@7p<;S$PpS#§kH;j>r-,D6A鷃vp_/%rjFcY j+ yU+SgF(weOm>GOaGN{:ve!G?b0eT;>Nidon+MSEA? Vͭdꋕ5ЋN[c7?"BkB[W>3x@r\PHI.B& rdF8b:.Lq/]cNTFP~[0@@ą_|\C:c|5%p*>QT%0v[Oo#Ga$G+2"<-m JM-rͻ?eψXҀ@%OС56geđgh.{Dά1VNQ\94\1dxkLKxp4F$!pGBeeI8|nS|pT'y!M1@ k@-b3?몖מamO.e-ыvdv VI"kVf_j|qfG _%M |G,u}~J|#5MX3~^: `B<𜅡s˩'z"f%WGk=DNuO8]Y;[ؘRx-hFfz١0aԨ+S]7MZ=Y"sf&(}IOl_`hp1/k>)yNȷ!SJRIַOACOܙd!sPJ],yM=\NJ;EbdE`e.kYo5LE9][{ˉ>x(w| qF7iu+bv a)U>^[>~=g_;QUBaV8x@B(MЌ.rQ$~&s~9[= FjѷOf D\ D{\~F4/~̐m͝P%5 p2kIA^301=pnsj9u/7V.0R؇J0#lHG<DLLC2A٠txp1W ՑcWun苔 {woB`ZׅCZnqmH\z/4#uw$AB& Om|SZ>싴aiZwP^yXVLbxYӀh;fF斮_jVK5 6-0+xoNЎk( s)IDk~MAvlƇӒ}"V-3 n6ؾ9AJ|9atP^Xς ؀1:*~X@QqZ+5 /nžK93ğEq<v`VBE=wEJ8[mU `xk_gfTQJ?%kŁUׅQya/;\ϕ/2& +`\Dsɞ5s܏z\Z,tg*D}mcFxZX3NfǚF,O:ve \4зg]iAY(0Ư'HJTEM+G. %.*В=\V^V*۪Q]塆6gȚw!軝H/ʔ{})?~\WG)}:%SF_l!Nt{Ja bőXdaMFBи#r@ 5XBy9=7p r^t^Mo@]!2A*5;71<X~ آ} i3r *u\hed/?&]9]HToPk}*ךk_]xfQamo,3p&O\,-텕Trs9VrÍ/ycag\CaN }O%kݰ9,ĢGo}bQH&x,L/0j ~3 m)a:3]Y#֮%%ay :(f P)uv+f7OC&PlZKZOV.YoLNo)l`vo.3ER#L|余3r%3.sW;Tuwģ_Alְw/żHTVkAl}Z\$z5zƅQ+V^6꒾:ܕB UpT1C Yш0C;@AHp%$'`r2$Tw~/w(%[PcԗNWcc95cl\!@1̹?yDU\Kwz #=ĄE&{gǦN¿(J8Y4JOY @7[uN[ẄUj48=z+.+&qNt+bYSpD>RtdFȕ4('Y!搶AD9J,^!E#|PRX3K`o!)H+]~Bk [CkY-󑽄gN$:mKq>9xƀ6UP TQ-ٴ|k7fdXQVOSl'Dme|N24dO?e؍,ˈp]:PBn{PA>yzjI]#/7%0zXQ9`{L#i 1d:!N (b!(+Rhގ`Ӟsw/Oeʢ-6~Xjk\fp[Si [p<% 䟌'|$ftuQ~"_a`f;a3b'p ze[&ΠDzW>}ɞOƐ2yuV+ ?SK쮂M/S0ĪY"u)%ŧEɦ@@mkE2-Fõ"j:^ AWޯ ٽ3, E qp_7%(]/fF@/T\Φ_͢  !tΣ=,.VQk(m 덆ԋ4@rd5gr)N}MO@YX"5]krȇ)Zݘ oB"fX'v&V"jBcڰk% J%3Yr7ei$ 60$LU] Q( ҬGnԸ*ZVr-v5|zAf;tIR7byL{ BnkJ큇/X> n:Y .cKfg ?1?TXq&v[5z_Վm$b:T6OKkY?R\u M^|Ʋfkc /.y])hs/ه_+U5cN*B RlbJJe1r~/Qe/[~włe1ƛ% ZSS1M5EalJ!=I@1_zy&14,Iy_v&9 b nXo2zoG6@#/op& O`[#҇׏,P2Hғj@r@1? 8M(6AĉϿ?|?4CF!KXȌdst;8'Lh,߹cX4l>#"lf! L:c3Tؗn.3*3mDK-C?-WMXz#* 7wg#*WdɴH;Xmٚ{wDHM% OT5F-aaq oyPl_N߂L)7ztIN7U +Xy13Zk1FOX'qsMĞoy3֓r$6i gz @&K _DL)ZUOA ]RzTF5=@ͅg) ` h5Jc1C:t24}ȣ܂Nʱ8}ެUyнe1Vk[D=V eN-:iHÝG`^a^ )95qv:y8m|Tx&(N0H8^sHS*NZ\|khP'j5|Ood`㛧Qu+^NۚVqͣsIjONqTR(xq1]uF[CO ՊnޤD.L lU:#./uMgd5ۏƢbNll5O֡߅tuOԑRvdwAe&~b yJ ? 'VJuffqX$ɰ".cZ(Un2хg{oI>6H<;.v@Ƥ*k_Onx7PB&X|cboڔ5kxhn{sRsv$n)Ӂ;K5!V y(%SyeWp02qJʘ; Li/ n]k0=#|EɬY yL>2FKRHh٧ xȎ.3|uh.+ 3ؗ ؋=;J&9΂`l 9ʴͤ@j=_ml;;"$09r B.*7f2$2b{^ }|S9!~h]RZ*&dN_S>vekyKƓnJdm( ?ig'+5|,%`MX#ss<60r,S+G$821嶕`i-zi*ph Gw+X:&QP ,[vn~pq9',PD;IE5?%oYY$ S;gWҡRbo\a hZ(L%3 p]7Sydv\ll07aUdGj)8p+P:gt#B~@x5Zf^([ B[8?#9ǔiiQ睨Ga]R\ORGq+ (lEn ;kA~I2}!'`(l0prj^V$ft(JxóCUdWs@X]z 6-u}Bl0ogӿxc|,]9K۪@@~T4#tV9@#xV2`NEDU[~I7&ȦuGӉNP+gh3jGjCR9ɎGhc#&-og}#qc];d@dS|0+?ۣ„6b+!2^&g]SYK)tgèa&8T?&}&Y|>ʽh.t~/L2.u$SpbXţ>?VD<5?cGS'T?}ԼĕBpQ2@׺[u{J%cӣwyL rE:EL:Х]nȅ 4OftiOO@9å_nzGuf}@_#{|TSV%KU -e|,jrK~xW~kEc|\ $|{d H8f /+?4>~'BX W?>օUNUljyiZM8ɼ6(b27.tēMe*$)$/:7z]!hNh=(!iF6z??"۪;vlJK/6wnVg~NOroK䩓>0%<[sb'9AGyDvDTA ._S JEj<$a(_Ş~PR ĊXd>B, :;gW(w_"2L fVZ, =Bnq1|>w+G/jh8nD?t!RC[C}$|4r^2@L c\sֳOPI&8n`$찷|QcIt[W7!Vty~qzH}=:s ovIe>1Y?0, vkpwx5q rNs%eP EODRѡ [!u xGX祉 mpB e`ܻp8H:[Q=~鋌ʚ_fzrNܛ+IHiQ.dD7buTvfRtyE+1aއk{wn F{3@Cx?2ѰET<|} [ qJ )i!)Mޟ 8Wd%߫ 2–3L:1"1ҖbE3{Q:^03P[ٗtqqqk[ו .H|}M4n]~tbmHaF.ۘrwNҙNpb@$^7m0UuG<*I@΅p9&ʹp3=&V{Vwz_Frso%ESho.į#QEr5\tVp#LyMrk!<8Ud9U}Z(ڥ1-q@}5BKwԉN6= 2 1GVc]/kp9*(2*W49 eOi i CoN>ckčJ PGop7h$|+zc.;J>6j3 DXU sx/! 2YaHѢPN8}WE{M&jW~9.=pt?苣_x5:f.Ed[1{_?Q P/L#7Om{GOռЧrjxz`hŇAYbz9yJ,$8썀OVxFSf =ҩR`GhG][g~My)^xI@7S-51 +v1cdҏb^H$'Ġ b>$4bpe1\1lX+}SW3Af'sY"x&F{ݜiha P57Eo [ U@=0}z@7Kqeh8.ѝ^$KdH9,zPKB#O{j amh>ů˨ëtS=,;6H!+^#vS]̡q9.B]}wa2%# h䤘f9E8A'h+A Eo1uFfׯp- WI%I/fƁw`sۅ@ [$Y44EPJ?ϕ /&fc84}uβ/|uN(q JTȵL('otgd.IcTز  xN @@H4^&Xuuybpl&JYZOPc܎çuW `2y]._UPY?sc?0 \){TXXMݐL×JԟOW˝1xCFg ~9;0*\ \ANb.!ˍ4_+^A`Px&sSv8{!5ƽ$ ;h~ >MQY0ppu[ êus|B7{ഈ:Ň"jIa.HFvfklp&~X_ ?M#NFY:52r:w5ڪΫ}#xpmr.,KeT 2+ƢL{KI&?} fuJ0}L{J}R?GEuwKkmR-g|D[*3s[NZ$"?ajn gӬO%eSVe\74U'@H2=JZ۶:A.-+4K_#c/$=ϡP P- Fnk Cfg6 sJ}3Y90EdiZ$$cIyc8]zŐB\XEߋ@<23IIV_~ 켤kzB{\k#s}de[8(J//m[!軵y-Q/]n%Z m# sL0ZۿN\7Ct:Mе۷,?j-2PWxJQ>r&P>Wq"ێ^O -P֚!j:Jc UO\Nr+tdmT+aClxB4LPBή9N|6l*NӅ;h*&{>% dYu0UjN絅I3ӍkbER~>fB lpv$Iֳ68 qԤx+AFaMI"g1 mztUMT &mc$-H:#iN z*\إ@fÆiVdvSYFh%pAE,Vگǽ4hKD$7,Wo, pPܹqnOT_y(rB6f^YXY?`d:&`tTP4 7|sHhq3]n4riak>l"eJbL,b8n,5MhRk]] o t9o.5cH֒K䅻AV6:|+3{ yqn>/>1rqb!piʧжd3u^ 0Uț&[]K_#uH+x~->`_m(y;UdocZ -ZuH w7y*Htbh5#8 ]%gvI\3s»@ YވLY(+"[۪RB<fd\)jaۦ΄gݙÒ>w ^ &G[ &>L# R3= #cG*,H83fdlא[K> %[=ՔY#@HoPbPbkfu.("lx~P@,XCYcqOv2yM4|WnZOh΢W/V7:^i &/ d`PL A !g3e]l޽9y@{idAdꎞl7hh%0 Q$F[M9KJz(tVW"xQ1/󕀒hWSA"nt'"VUzb1L +2Mv̗?95p%ߚEn-xLX&HScbJGwBkLJGO6XNzA /iR2\M%+%E0) 9"~>nGjq zeKYþK nYuQkcXH$\@efj=g9k)(Sb&.ĐY0nS[Q7@b毁$)WwLW¾jg̩V=8X6N)ZImZK1 OqRgSU@ Z˦Z)(!7aBESu4y$vg_v³HнUoOJs}ƠXj~LT^vn/ cG4Є2} 'w[#5I4jp6IȽ6Ӣ<:<.v&wT9߀s NVt2<4Z*@,b}HSMeq3^Dsi}<ݱ`/&H( :\w& vZ:: pWʇF>RpIJ\ kp락ت~!L8E Rn׺qL~ZFS1̹+ʠG+|y, E-|Ƞ|m[+GL:*8@ 'کܘqQ.xQ{@ S bhnHoPL >-@AWJyْ,^>-3ܴ$>e0#+vNUhrJ0A;2>AaNd0 *H8?)Pg13!ȯc ͭ8"ͱ@QcVl#ZJ[GOSK%V`s),$񥺴'*ʍN<1,@OS&d0Ip"E8SDjܐMWD0Lzom#l5k0bJ",Sj!_o0Y>en;Fp)9ϋH듃$s8R-b%L;} 5B ER6Ky)OU0|Z9'B1@v&{MLJ`2‘sTiW/$Isi!)DSph?wNg`ӾgXdNoS[P!J~+5Zc9kRjIT"XmæוNl%ڴxHg/׽(!(oAV) ^"a`F <|It|@0*.t]Ԋs2ԣqJ jb8y@#čoaLvp ź[*.3g6s8 SIÁ"+Osj9rŔ-4ZN)ҧVh#P񰫍] n ,oM]eYDͅO ԓ~NtEsa\.aIJuRlV*0t=4VY 3(XG &/c Z/:>9]$yp.Z3\x2*&8H S#҇E E/ B -]a#25MLK|[r5'Bwp&/0?9qAx,:_"aљBߋƄ)g,9*&Kli[f2Գ|725E@#k.r܆ Xn?#BYyҟ,m;u5(/K @' ~,Qj)2jv.DG!aY.x~?lB SS%8ueF>`<`Iw"{N5S7ZhHQ.8!{YrQd{]s+XiB}%|d Pk\ӷ%ͧ[rb}M%0}iO? Gnu/`bpEv:'\( pi3]r5\&MAm+ J#~qrjm":3.75+YL,ҫdm9 vZAiYz*>@A`L ɨKQ1C޲֬o<`П mQP^”܊ 5 5[=W *}hWck֫Qc;A`;[ ?8^j~,k~}ñS|d 6fE_U͟>QL2V`8g2T&m/C[r໖n 4 !ח %1n?|`?ˁK')ilꀴ"dv^e W`b]0I0r!I)qDڥ kzsGQʪL6j;<-\ **AG];Yb"b#Bn$(a828>BM5fF*^p*֨{qlKF@c JO)'P1<=3`E&AI3 =óՁP06'bϯ-ULͺ+#:ӈp= U%P'˽ v,VL\)'HQA4|_`Ҩ0H,HTE|4ȪX6H 1m\ivjj#e2 #q"e8OS~ 1d }_`<_V:@/k&f&ƾڻf"0{ Z\M[ZĀ+*.ho)4Nexj'ml]o5NϡE)UجzQ6#C*\ӹlDMڧ^DJc4^]1 KEX{h5]+Ce昻6x=~QUͣ[.pvL# +:׾<%cMK/mL-`+fFi Ppch@n;1ҖX4}L{mբ9~xRSJ_Nڙ*U( 3Vׄ,?Tjr6+rgߣŽDUJ2_38J>/\ cwSWwGXXfM{ *UcP7kZP%Ex+4D5k@ؒ&mXCZn^ɘOߎB@fzbK^lC(7zk~'--hF޴W~$|-I AKv`h #_Bt`fl#\Z2Qec7kFmLGqXK)b6mջ2Lu@/53s瑿ɹEƆ9539W_eVp4E3RLb值×nӁ!![XٲotUnB,el>r^Ƃ:);\~ 1 %eGpY%J†6Du\ {m wZuUd'/F#(|pd_J!q]cؘ1pÈ׽u|mV - Wu`Ď)0OW#4s=*-p),ϟŇ ";-`ݭaL֥ȁС!AS[eOÔ+S7)&A(QRI   0bF/UDvz jt[\T'qDն+jEG/mRN-'Ymav# u,`GWj4 vb2wp`nŲyXA" 8I<@3P3v~\H Nd&P(%!؞' {# ۧKΎ׮\T= hNNO;jS!eۄD*{ .AJn&WhBM/%M`z'xIp? CqW^ d߄LP4Bk; qBb M| $I9g0_nڢٌ{e`mX-cphz4m'{H91!~Oi |Ⱦo)}L׳?(5i->%K=<LFi]]l4G6.坼6\3T+hfRq$Ig3gwTe[n8(]aM]z$@_J-tm^5&*!HvRf!EV.EZ[iYPB3Ɓ:R@[*KyT3#_6\oʷj:j,[S+bH[eb@rr' ʽ{fB/OȞeH'dj:;>u;ovMH #\(eeZxЬCs՞;Rg.ײ;POۺb1k\xF:e V{70]r%U!JIJ-VhJ\Yc>)EVu/DCHxNԬPR5(]Ƈ(f"?F͘r& q^e<^BIES,7.\e0;]5D Q=F;  p\.tu&pd+@<$3 ]Y PB!_7'6pT$Kzחٽy{ŽPSnaLwNk*H4 b+bY.Haے4lBj(A^3tJ]7JvNYK 0_ޜD7qg^(4,v{N[{ZBLoSΧx]ɽn6oE-d*Fg$);8OM 8 w߬>e chwn ~XY}P43@W$t֪ڼVl*EiwO[xUׁqC*Wf wvW=_*s|T;tUǑf%DlGن~NHbL47R&&[GzD|7@iC`ʈSxaC)%AzkwXF :cU$1<{ԍz"ꅅ@F@ZEG(zpsTyejc_CM.3Sur"j6l1e2HqcƃitL<[ѥ;x.xRNZ\';o{\,U槡qtY-SxDiҁ(xͫFs]pmঔxOVp3 z>~0ԇןN#bީ<>odXzM>pyV7;Oç+'_;YUsk5.,R 鄧;9zbö[R?$͂wU@K8$sO"H\;<ԑx7=vp.hb?;@md}#:Y~IìL@-ˁ#.J53yh`?9¼C1s7Bl}+S8]g>(^-ig[zGca}|F_)Xy%Q̠qi:Yy2^!|;-B6~qPxdž r%sq)R̎y/aۇg;wm5WphrpX+G8u۲ =}_TCu԰gȃc'"Y MϾoܱ*icV,AُSSGP[R\FgC33yuAY?-+GH~ ,cdgM=pЗX1jΥ ]v.bimFP 856E.腤B4"73y>e؛H[q#_$'~ I텁-pJY ٌ 7N5i5ZiNL`n0hkJsɹ -1tQ۝ƾwVgh[\`-ܯ9ÇyrHܪzi|#Ɲg^vVlkð  kIhۇud B$BJmA,J}uHolR{]>++h*l7R}ւÝ`쀼+å 'r 8D(s<co4Q-I0ge%l**f++$2`O4F]fAඁ|8sJ ]Dd]{l-tH?f,NR&fcAM`#N!4vH@V6}D:E2%4Ӓ½ *DzkҭISE ɿa\6AIay?8 PYp ȀqQ ;| pDJ ؇Y Lk!ʄ,uR9Z_UZ||$~:1Oe 9'roG`G A}`+k2D'_jwhB݂.Pc9a9^d*SojgO ߡ$Oѱ"[4[|s/l, [CrL|IίxzJMF !+ -')kK>u @D.Vdf gGXZhy4"Dn|K=0*.R|hl骅乪#A4\>V4} F@o# >~rCn)4 {F=Pp%5}ӻʒ jr.͋z2ZKɕuHV Dun8KU!x̚@-4G숯G}ff8*"xB \Js+D%Hɴ6yۉ,g| /F+'h.'i!K*̴Ʊ94B2!vA?P'Cap7Q)T 7lV v5* l{yhy23*]i# yT$R6Pօ>ˢ$VPC*Vġrm-~=66x0i;O\Rq-OunEbaeq=Vu!9W}(X!io-!B fhhmjk(alE9x ̭ݯޜx$Zm#*= ݑL) .[-N )fK#~5Hbr/l%COIiBl3δ_K#ۇzVYQS"1 LVAY/iWS'BAg:JX nG }E-OohaqrNظ*E923-|}TzO>Cl13,c@S%}^drXr̺TɿI:dIKִ;X@t?>dR}pmR`Dp' wv5Ʀwd Z|bbq)!E[i3ᨈijt@+Z-#.ݩR>u+sSg_hsңixS3|`XL~n|H&W]VOiq ݮ۴O̓,!])1koX8BÜפX]6#Ty*f`50gN,Dc{cH;SG\L0kF.X4۴FY 6sM2Z]O^qt@_)Ywgɛ_GN%A0o O8²Y/&oioV<y4J4jd^p8֓ u2e q̤ o&YUVWElI㘪ʱk5!bž[*xu~ȏV̙c Ϯp5>|=V&mpˠx.A.4$1uprʵq./.,9ONp|\]] G`1WPjoYj nLl2iP]3?8L'ƬY0kI #L 8  w7<6F aO.(޸ 5C>gcZxΦ[34-!5kyz Άɀ5u^ bC]H.,;{b-N^Ȧ ǕQ/?2СL7QH|F&,my/]fB=}f-}- g4#]PDpjYWH,g j{Jڦ#/Y,ziX4lnrSȟU(ah9͋QՁt+t V|ʉ3cĺJ0D3NGEr& #aqx m~/1m.֒a ,HPdRG`Y99tSIT%'ٽu&G.xye@Š8X)4jt"̺ӎByVJ rg[G䶋I<Ȏ 'PHphW3$lo>5] >2?L 6Ƥ/Rto WoNR жk#I?T(Ke ѹay{9A<{НUT %!t t4Fo@&v Cr*0{λ(+s8rl9=T/[l7[zwlKxsϔp cW8i',KiT&Q .bWZ >X]t0Rew/TI;$\ _o^cԉSdۭ /ӿu)2*heMG0(Qa$#KV%JQ*1Ё쌔!ˮp6YP{FUWc8E>I JOcyRS3Rm{#MQ }#W+vmaf.x{ZȔձ;vGΒH.At򴟜&cn6pճ_ 2:dU W0lz;AE{j""ezwpC `?+E&rc'JYP J2`q *|vAs6;8nL'eo3chm(aq˅-HduiR/t 'V%~ˁ:AwW ӡIp~DL) ڶv؇4=hH!y%[>Dm25V:XuTX6Rm˄ރ;?FHs#\ qlbj3 Rl O|(V,WǴ-nZ֘ 8^PeNXm< 3f_{ކF qpD/ [%m3rHD\Y.w8j?#ʹH;jMzJR?Tpm9eof ʬ?$,ط= ÄwNDZPEeSR1$̊J8T*e4EM2"* X C*5T إᬏ/tQ窥W/jR* Ϭ\ Uc2V\2Bڰ|N+ )ش4]@ /o?6n'ɤNpw:OѮh&췒5`{=k+.ycUCF c0GqkHhT:zDuCƧ!d° 2qŠvCNOϷNp΍m-^pY0"O~^{(>A+ )=e;c,5s'ȌTI!7mZ:4F@5 #IlWS6j/ $c1螷lw޸vn_p<&9 D ANikn5~6e H9moGg "OF#8x˳rÍChXCS%qnn]P=pja ~/ݪAg 8/Z|٣}Ph\7^mcx1s#y:jeZYn?.W >2j!87 |tW:G/sQ}0rmٍ`6+Co6 襝^(a 9@U\GYؕïs,4ǵgְ=JAO}4j l/ ?Oe\5D=+֮Ez~Ŕ=҉%&9f0:I!ZgJ<ҳtK& ~{ J$B8FrvD7|E){MgI6LK܃R19i T39t:ޭ(L ܩrh+:2F-~)n@W>}Y??ۙuI0JQC3hq ψ 4,k[#Wr*J6 )AxI6 ǕD{z~hlPo wEachM2|TDŚ/J@կ-J^ىAȵ<}k= 8IOaeFnC:O:> ڪ{w ͑g.~k6r#CtZA{ d5: V$&OޚAo<#C`bǕhy9X#aU8#j؋j} RZ!G>ع6_M@ũk@s8kMdEA1 A`z{(+2UNFT8+pgKFXaӸ{-SׅBj$ h > D M۞6^iy3W9'n/IN؏VV;/Q]5AkU ~y swkr(oUT KLzn-L^_MD􉰋Lf.(WUB*ݛ#V]yG, dA~P7>5)qF~TVgzma 0:IlR"|5x>Y4"(wl3~l C3퉳u.'|-=;vԲ,pG+*:ox2˜"v25.k ^hq <8j/anrC*QaeXMz>RS:}pgsZLEdz\J&q\>ڝl?_8~&lG ZfoZX}uɞiLGʺXq U6$cN#cAtyg)/KĢjTZjQl׮h_M1DP]&kA\Ŵ4]$XY&{F%S8G}\ jX Xexm\Y)" 7+ucn[2[>؛GʚS. /"ܛ>Je~rD9a8Ak T|< ouz Mνzį{wpjԘc-DasRr2мg;v阹ٓh1,Cp%W{7a.F4sպ/3)abT;Z4.trB @]xrZD҄1Fɕ/ԷXJ agcISwլ<4ռ?3RJ9s2B!SZh>w}>V!ಅM3贉5?&w)j9`m.0^VF0@3Qss-Bahwqiq=Bm'*PEVˇ-o? t!t'7Xlwu!# [Q&k^u Y[&w8%(^?Y/W,Ec"UJ) Eڬshb_ƘLb=~\}$:&1`%϶W+ v.IJNLk#c 7|Aԁ=g! 3HyZjV)JJq324L''M*BEsV(1:'teGXM`zF4 Р̌~z4S_a=h!<0.!ɼp\NM,t/H 冷8d^4 %'v.P7F-1?uߪXF浑F fTFe79m\!&#'sQ '7%r=vr;rewy|wѕ7Tv% {&fǔ5ACG {qo;=#J[598J+m^MSi'#:K1_8JLߔE , [4353R"zzKR 3Q㓧ܶҞ0miV/v ,*`jFRԆX3fW1N#)F% X涑E˯؁cҵxRNß1S"ik⠶DBI+X<)ōp'6Hy^QŶ t5? H ֌N2"iP,95>t$=\mCuIx vAL,--BGP}A 8skqI6YvjMsJi$Qō{JÒQ!uϙZ@d{UsZ_{#owHs |.G7(X"? H+k{];}vM;(TΦzqqjMMdi̟҈rlZ[{'/w%ο7 EXm_ i!Or3ʪ G/uκ UWm>7`{Q!|U`{j\Q~HQQ-|g^yjhrP*I@F,2X".lvj`s6/rgsrG< )̔7ka1 V+qױtK笉v(7\>aMkOd>&a6[z2kG5zM-5OHz&L% ko{=Wo-t۸bIK~^p5Lj$^R9c:BXsGG>q*CZqNdB@\B4w;?D3 .Rmnp{MWXiN#VtKhشڢ_֦ؐ$F}18AS G{|VZ^՝=RXMVы~?q ? |9l:ڟ`̍h5g^,Ke8Үw5T_m <6@\buSFzvt>yOW|s9W{&c2_ A$*T?(tu$W*k8 ?,[9uLu/JK!0c]T L[;&IU91Xρk&2 6R.e|zrN ">|ΚU,*[bT mdƥ`zFfY)w'dcV95ZxA4xɕ7dӧbWIqFatS T8WA-[@ͼ"˶I'?褭HaN&C݀꬈+t'uWhb&.-|"Χ̊< ,ti{nEs- A gI 0%a }8 _ w5Q@Π60;hx5(Co/=^*[S;6PAv#%>+2]+㚨蠒 Ҋ25V پm@1u@@Z:RT+R@иprtyE/̚MM]"VTeOd/$IU(- +i2SpE1jmB0S3׶$o[%d[wLsñk&)x 52md1maO釴YO"ęzY,0*; ϋzW[t-¢ɉޒD@TTw1Rޏ[hg0e\+ TD("5JwbG{CvѨ3:r nj7/ NUn!A@r'&2*"2m{؏NUH- VK0Le3 8:,ID[yf?Uӝҽ)eX=Flщ'*HJ4U-/1C!~83VtH`]FlD_Β7MQEҽBTS|aF^tR$k l,vSvZW!ACγ3@j ء18{sI7?|)MKؚfxW{-ex0,5 a  8zm&{+kP°p=4tFa`JGWV }T)ԫYRڟU6V}]kFT}KH64eLƯKzym`6<7K 2:402TGYWAh3s$/g,r$e +jn\DqWV/W0u! .Y#[Æ6{%Zw0}D=j7o:Ξ֭o˹S~ "j!$?"_ȹ =#w9va&nJ~cB$UXJ&޹C+soˁi5b1Nt xJyR_Z b r&]xV`9.<$lՄ8va 2:^ CoQEq+cY-q_ԉئe}vjQ9o(R JkcI)kWi+'c qYta>rZ(R0[;jҵDE0EG͙`rmvK`UC1P}:K,SZ/}e,bp"95Z~)r Tr5SY=_9. La`,+&B4FEj37<^<)\L ԝ$*9E7amS{wWc,x _fB1^g'vqg!wąHck cDX(vD~Ș<\I3#qi56 eؙT5M.@|EFup,|| Ox 9M%ӺJhNg͈=?x%=rDSҮ SuO@B^0H]Ӝ?{ :w۸GFePni3%Jb^lQEU&"+889`f| '&gjȽ jKYNd~ LϪT*&ƒ@܆>ǸE{oPn?ʉV]N:e#I_ ]GnAה#BGBBKTkzY_!^Ie.MFs/cFA{` 't0+!]}zD@xԨ`- n0ş| JK !Bf7fCk@\oY@BSl ;M__v[A!P7t $Td#T,1ՀR$'`(y4ѕ%aܽ XTة@D s7۳_kQ ;PŰ6-8%pfoJhTw@洩 y+o665&}i%p-1fbD;z2A8oSpֽq]LԗL6)\ls!)_N n}a%w3N S\W6- ] +K}%-6}^8F4C)񽯓'd#y9D&Ȳ<&@;{bhH3,wj)8g{L&cz[' |iMkEY RQzSH JT2 $^2`쓑UG ax,*x$7el|R͍ GZq*%Hk* +dZ|@[?xe&]l8@[Mg&p-cBwVtAU ;w'pkk>v2|o_[Kz| (iT"QV[sTkEd;>p [Hcwrph'4\s6gA5|%x@nT٩s VTB_YYT&z"1R̨kEΒ)^ޕWgJhE^_Av w'dlʳE H Xl{-pJf CWyg|"B0#Sm ݆n +bX#wb[ WB_g!K ԣd*ECT5㧗x `X>],DuPZU`F{h f +6Jzo(ݽbLlgҝ%`Ou=‡֏MJKIܤ6 F ix@~%r= w|<^d. 89tV}pe]]ճ܋]5CFqli3Ӈ0.lPr9g:1҉VI\4Lړ*G2:ͨ ܓeNÌUa_$XOwKj4 6oSGAFx2;6Q DҶ@.((#95c)D*llГH')TFK=X[3|Qu]zx P;+Á41TUaIty918_iJDz+{ȒDdf6S_ $9St\wd@ N {EsJ<>=>!M@Ur t4η0ʙJ m+-,[ <~\@UW&th]\BvՑYΆq 0^f)e_YТ|r# j0!WJڪTr*f!f9skW7¬zUy:@G0XSvLu܅Pv8T ":I`RŎzL#RemN6;x]&|9^z|v _MWVoǿk3LMN)H3 hZxx{aSgS`٪VϤ[ g!cQ!Gc{OI2yO']t&J8q#ڪ`%7zZЋ IYwCw]^MehO8D϶XZ9}'[#{>!mK ?GF 48En9N y~>ni#<=R)|wFxxrbܟNW-|>;CZR(8'{Q7QWjb7a%L jD ["J- IMu8ûGGܫzxpg=ҽ??u eACS6V ;-yuhß)mr{`AK޵tRLC ]MiTd6qQb,ȇhkWLNBӊ1*ZVjR߅t_fjلɱ  w;io,E??`|VP!Yfa.9ClژDMUZJVw̡nYF&A]5m6?r3t'zg"QgopE|1$%d⬔£ v<HH+ืnwrŔ! Ca‹?i!JLml=̣' <[E1)-ԻBX$ks)j]?BÈU_t"cb``_9PW qEv$LLW-+ |Ag ixAֽ ܖf B|[a9it%SQb2g"Q>ֶ} :XS)s)b|_b <*e~ kq8do .'PTo K2y8{{ e%v! 18ڴXI-]6LI%Z-sr뇅O_oul|8ہ;ǹ/ 3nwc3(uPAHB $WuX^)w۫}i&4}°%SI@ӁX@|H*كbUvskoq1:Y-yZI){}֫Xs9Ua+qPb3jY4+sRr1R;p"YSjz(;DGOtF<^0<%5ćґѰGV0y,{U>p9R闠eq˛GiO:3NNnėDFH G 玥j-\OK2J? we撤aERqTA gX@_ZX M0l\dcf:Y[@. %;i'΁G;\#Iv8Fnd9 1(GRd= twP b%kYܥA◢0En-`UVn|)'b݌@g?+#SpqI+EӸ*+d(6Bա%F FtOVG8D['ydt;JjF8LdwI~NLBMYTQRjl0'_~TOk ḍͻ^C8{EXЄ׬auƯ Sh+!RXKуV3%E#[ǹ-Ef*g+" ]&ۇKJ_2 ͼ-B?S=A[K:{BVmȀ.ЃV[rVt!K+hlۼ #aIURoUjd9O>'dnkQk_O7gi?b?sv;௽o;% W&ۈD&SZ%M/hHt#Hh{:!|A w? gZV &q -Uu`hw K&ͳ|;P{']%3"=Xx7qu:CNadq!+g$BLIOG8tdӫײTvGahh*ʚGqRX1o 5(vCG4-v@@U `e$s#Dl}yޠc]0o>`撸@ǸQk^{{=^~O1:㞬 ^٥[j э[057ݒCͬwv%jVYrs ?2aEӒŘJ4Q˺<۱lD>5tixjó$;0zERFsF1!'yMKmIFLڈvKnf.ʧƄV\xј/Ganբ#pA")N?O6:òPCBxAm@ +@skdBJ-jGe- hID ފ~CPv1V!d RǸ0'pKN ;7qf"3 m1T|^ǫW6OxgKAK$-?\E**JwwN12kNIsGu+AٸrQu5ŮZۻfR@XeM4Sq5T\$ZonXGyoz;f i>K+ (\STҭv3yQsdV6a-Ӕ o^q8\j- (Z?gаGS*ha' xdڮuE5AY27T? ڐb>XP0Jʅ(Z@M[ɶ ?$#9Y<>S;oHsL1Ew鋂ǰha n0T܇eZm5MOFHHSsKNߡUѩpvFI~iS2~xto5/1ef|?}2W./o ,5UP +p8HY;q<+ SmE;wxcp@O6\;E;d-!3jeх٤7@` " P3(c؂c<;5H <-WTS*:FyAuZ7;ZPK.HTrDR KLrnt]@="މ+b/flC48˝UhsupPrnlc0^ *0NG bMPk;rl" {BUq׃rwC;T l|$FQ\BsqI2J~,`8|h*!5fN) /d/j)l+=*]g v/|2u;$_tZ*Rڽ"0XwR $d5!^eϚG6}n+lЊyu)5dm)[`yafgaAʹxyHn= Ҩ[?}0/s̐lbSfhL _W;ـ26 |PA|2eycj[JDW3uT.!`HB M?]J,gॕN\'3;m1.?>U=*& Jyqq +pzУ%v_a~,',>e Y\_'H ';>'V>óե݆I<?YӂOE;/:1]W42RfGTdMXv]X}[CCYd`Qk.]vE{'l&o]!t:\iDT sЖ/ Ox&0ERLqDUfjX _qKˇC!CƾNt6l&8M=pϔuaG8h*I;thM߰y1ٍnp9r4)0O$D$quLueM$I",aBMe"{/u3[:˜Jg9Y wϸZyy)f,jv}3 'ynbH7 u3T*[jNv~<;k2)Y;zѓZ4Z1+k`Q=PL Ln-.^nD+T4/&Idcl  / ?(H*v/'0l),HSbn\ݴ?_dk!Ip]>=P``\bHBd'*û|+$<݅S;o];V$~/W^0/H-Spư2vԇ=2dPz$_mʼn0Аր kq$f& ?J~vViUG w{zۊ#k+xFa.{m~sJlSs`[!vG"昰pYiԡ{؄ʒД=;9`cl<rC'+jv~a[ah8wx?3jc\in9XV {/@\cU/Da6a+umgh (DYv$ '=&Z5T%J"Q(!x> νeXd 3X um|Z۝  tA.o!bAuuƇ)TmzZڤBߺzY "l@BHF0H~/D魘opl4+BGU㣎L>dщm0c4Hu9cq[ѡvy&Ot@E`x} 61wΤqEDm|{@Uwݻe&rF0#{Q"K[>-<gSpb֣mAg6q(xo/wgt˺8,Q &D ɚOB⋄?而_RY 2fVNdՂEJNU/50E`Id<))kR&=JV`RIP\4gAp"cX8@gM"?S$M#a\=AH=ƐOf ye6jZ7`·|ԓO7ݶ>Yr "0%S_:XtCcG]l p 3L>-^#Ɵ5`Shw#՗t5&o~7]؎iv#~mvӢNJdc?.O~ҭdij%sϺ.i ZuzLNt/TM!gvv;6z+/{l<Ògŗ5WGOuw.GƊK|h1#QS{E ;u7KVK3bVOeIj*fsz3PHreavHݖD %Y }KH)7r_@ ssgkFU=36  1c+A % zM2 hS> :$=1'~{^8­Q/+=T0֊~d/,IgWDC)?C2B'*sqz/ΈU F0y*<1:`~AUu춣Vqk7̸-sqMEFqJrU^Ћ}B[o+폗vlP`9cV7hZ있 ǥ4 #I Gvm!Jfsٚ+?m?G1psy>t9Է$-ώ S ]EOgck"FQ [6s^Ҿ@=s<R؛\X#Xn([&}d/#3U#wq|2F'_ѡ,B~غYC7'sP,EQ}/"4V|oN.,i6h 3k"*(Fa[Py`˓saDnnHŚU*x.C y;.͊jQKwxK|y{C&j v[| 8t˄o8)ˤ6S0yJzf) !kIi<} ,kr|U8 Nޝݸdz9+e8W-ZV/z1 Bol*uQR 8F[Nաhg'neRg>KX8sٳ88}hfMrZ #vNܼlpĠ'DlrMMA,D\B.BqE)f>Oc!Le-,.MPթn'ۭbt-Bw7_'"\[B^A5vePjLx fo9?A4M~L3735J|ꪶ\:2io@9K2IkuBLYmK-xZM$1i>@sKa#`)<(x:#OvE7Kio:9DbA8V]jq$:cwGP?EK:ֽHZ!1;\m)7,|(ӈN$Pr# TeJ_L0`p 9&5vin1\,nr{88qԽc{0.S*,7k>79@z(2Պ3đ1z8٠| M8[Aەb|(/,<ު/聉cQ= =(25=xjŢD7Xm{[z4ނnO&iBg <H+ZMl qE&D4ɰqvrrWʄ\w7@bmj{Phg0+hٵ$$wO:!?#. 0¹A =_A/\@4h8PHKg}*WGX˹ R`*f#~% $ o'DEeU%%;`;]*GqQXR)/x=|Sy8JoIyd[8uS<*-ԕ82:Z#3drK&"e㷏@W]<.,d ʵ0\Z:Aŏ38X( %F/ !GNG K/3cC${) y!(:&9LQrߊ[t)B{SXG2g_s'`RBF<@  ˜=JaLD2{Ɇ6y"'G s :F&^jlWeqVH2W DSڼFLw,b2~iFqXFӃt00c +~a@Z;,r{s"e-F&e pOOcKJQfI8KJ\2OV! 1_I~zq38,up@l5 he-E0" aT6~Z1d,Dv˔Fٞ\]*dp>!W#*Հ0/XCCc}DM8|FU^/OqGޣ7uh"w/ٽkfc ݦz!?/Պ8!Yd6-@C$>,tzʱ)4d'Vغ4bV zk8-9,6srkc!*v}> ;;V&(˘bר/Ň8mG|DmXv{{kgޮjeתqB D/"}}GmREѾ#¥DVF'C3ƛ9>btȪꗺa1fOsv`e𛊈 Ř Gu(߂Ƽ_ɲw*0oަ3?-Ä{33" Df <,M=ii A620KcRAC̝lGwEO|wKkSJ"OHHcB/yMO'W>s xQXE58c:;QϿ 7}3(<$ `X Qs͌ˬ傖P9csh?b?#h@@2DvXvʐA2M2Gip>Z*ӹEupk1oG6}a:fIaF^sZaf@=t}eZ,ZUj.!pqm cm0jb0\/Z;`2ݰQd'IaD/<܌*vLp AzeHŤyHʭ&_EST@o똴'-HRnA.SM{#-ATj s]QĻ儱t6%tfiҔ$SA˄&BQʆ +PN[@F>Ejuh|15`ݳV澇/^nL$7\ On5"n=^KGYUÍRDtb3$PGW 8!e|w(!uhPg(fi懂yU>NUPΞ!k&+,Ĵ4xGݢ&N֜סzuŽE:@phSBZd}½>+ٌ nrvPX'tA)pLJ_ ޗ* W60cG48ȗ|%O;EtC 31nԵcլHP-)/s(MYqG)K0TX΄xpNT]opd0G/7£m0(-W.]E&#jOl'~b07esO >Uv.> '4Œ:?6rZ AYxĂ<ȳuvӽ,iSuof:gn $J<ź-K!`!;: z-c5I\L8"O#۷")%lz*RDƐؤ^@NE #tpmt:9wfolPܧ_{e der=UqïT +#Z;:9 ;IX X԰KqfI ES3Pkof]{uCQ]Tq"NscnnJڳӇ-Au!) $:Y 6ߦI knս4 ExE nል yܒH&=-te2"d,&ck LzVlׂp[5謑{3j7aS7&ŕ-.,=kJ 5S*A$5,hwyAFl~jyS隃mS3g"JH?-U)p4 kᦡy! Bxh\Lh9^@7ڣ:%y':gsO[3ٲ31.KcZ#ջx0> R")$k %2G*6X~-o܆hN RSg ն$?^ij%.6FG'ovaxpnTJvoc Y[XsԫkB}6<-">Et_"mEZ=X]lPA:2s @g\މO> =IY JW(`8o 7EMlt&ީHHf5xIdk@(ᲔHPi֍ D|0\0cZбԧ%1D{&l\?^}12Jd_/ G֮fěVŜc}5UDz lx o;d4|'ѰžkodHEp^_a_ j'viL#JLg*'6XDقVdL&Wb6ev龗hD/R2ރhm=f"ꐚ+bw2dgњ0TMdP1Ǔ9 lٿAk ٨NBDE ,jRJ,LB# ]#3Y{\NJTMLZʱ):A1a޴@$@%LI@9R-5bG Yf6k9>Hf 2~ռ66=`C̵lplQ$=de.ANFTg. %Zv'FOs s3$7t{[6T.ƴn7kTB b%H xqxFzջl%cP/BS?B`{SWV4Zų_>taثҙv3\̟Ok㸉r5-~gz;(:\0|g-&ssKIٻypﰇX?) ":]'ҭx:IVi6ODl6GxyeHGuPL"< }=2_?bdlg׎׻ <%9**}?6 UU/C:Ox Pb(+__fȤp!3k͌kF3yz"Al$_:؉9w !V;D|>@`+ Eij 蠠>1)A]8wi#NY t3v ݴ70W(6\n=z{;U.4c-CWZF LPey9 I2,5ZM=DzAОhX8s +%zlk`9Tr$&XL3 57̙Rʋp}\k]RɟBП•a0iGĵ ?MϾuگvq$5WP T'k[wSc:3;3-"o Iv4ꊃ_+Ĝ(D20+o}묌O:v)h]~ d_9l3dh!3w+{Ҩ`|ߺ&dde?\plwtV(N|G)>㓋MPH/W'A~/$P0Vn8-! Z c>Ct4FKL[f@ y3+9nayЎF=LFƊwl%)RUqΑ%uJVK# <8(b.a$U/WqLo ޛ}%btSdU2u'0%gzc_HXk }$O4(pye7Np +¨ 8ON6M`TM^6O%O̞NܺBL`+YZpnSg1w YY(%Ufl#b 7nT_{:=Vs% ƛ`IX1~92:Fcs֪h\eP_ $|[ \wE}Ʈ |Z"A5 xj-ʑ2Bcb_|(Gᖨ솂Tٙ'`BAܢEPX5- N (PmVX %oCCJ#gbL!t͛PF L4\ΙeUps|du_[3Ir%ܒ/6ŧn+A_ =08`o]«qxk@Ó H+Öߎ ucQ3~q8.d Y0$P =s"ף@3B4kJM?nq|rYHK K}W2zգwspTqO7P#, "#4-ʩVJk*$=8McLI zvzO5^kUʩQ2?vzҏ(JiH4{MW0&*-M=3zvv* A*BA) ? ZDJc=( ,%gkp`#qr(rp+GK$f.+&3ڂGBz${Qp6TA^Bnb\,&B٫YR@8 C/ \h\U>y1XL.;Ţn`|c%:Sٝ΂U:rhɆ_iD0 ֐35ZnEZOR(0uO:s( 6, PZ>-}%ox7 ?}KT$tX|;|҈64h z~Ǎp)O:yq`/O0>܋"w7Ꙏұ}K(}i oINQ6H@әB^`36U]#30,=qn0!k>u8NXKӣ(r`1HSmU(%Oa(IEd@-iBs'X2[θo3|lrà ?;XoF/QTfeS]uomH+4rP#B-Kt0[egٗ.&W b2Zf9;sBSܺ?dGec>ԈUF;( Aql~7he"ntfa=ײ>"l ɬ1ii2=򍙏DЮ tv;F d'/q0;&) 6 ]f)/%aniNIT pB~vD` ötQ5=PxV1dNPFn9K7EirM!+8ȅ"YUrdtӁ:vc.PIh؏Pɡsxehr#/O)ggvi!*ls(&UPUOk6H[Yd|l <0O> H; ].] &ZLMad "fI&x8 cJT 3ظf_ cXTtɼsHϫ#G;3|,`fO(P'jv8}=Ne 5ܺL?%9!l+78pl(cRȋ i<1rldks 9dD3z'nvQݔJ[-K 2/lZbLCF,HRJ/'ݪ_y#2 JSv,/UP^ 52UcknPz_#Y:᳽2[$s6YqcN,)ޱ6bNպxHEP/Q/1&v|Ɯ훂BۖDJOATǜ`صeH@CڳE WLE/T|_tdd̩`Rx^Yg`O˕TƤX2aDӹ7Cއb=fm}͡x;*X2]<>'; FB`r&TVG%fj/\V7ko*;kAL{J !>"?wpmƧu-'E"ЖPMϷ5,'kPh)~TmADCE;T9zI1-Mw)\mHHI=R?+>WPGG> @lus>*j;+=G8 s?~%#ܓWf}(.7SW,Vc "g',}^%E[ Jz!'y>sf s3" M=1P.\M&7b/uDB]Pzjaiv 6lPw^}Snj=Ӂ`h"%gP&\Vo]T&R@Ŭ؜DW/+I_7I|y68L)BKH6:鏒h[FIn7jW@Ba6wJh|,҃=I3 ô7g-QԏYF^v,5,G=ae.uWE{C۸7x\jrEcTh ^IUo̘Ducf FΉ'd)~-JĹVhͿ6Q^>)igΎ~Va)LHV+܏,]YuS]Q:ރRdAw[qs?Oc dD?"^m6'Й& SzPcx:[ jG+ HĽ,gрs!@VSXg%JD0k99L*s/~&@zܪn4{<ʯtS{P"Ŋ+Zrdj )vbA2b'%]ʛY.CffNu<{&lq߂l$s6,d`fyXf̔N1&]wfUfp/sAVz+|ᓖ56'ϭ_uT~1P|Nw)"W@ >U4d]sA&jFd](Á?_2e{p WJ]w_n@ޮEl{|c Xnuf-,"&;ߨt׹(7e8n,|Lɀ t1+&7NE&xc5P!Aw XX #qݠG2d v}X?+Ɖx.*y\el5[yO;~B+JiqȌc]s2甒f>G]TT#b?- :MD߽/%`4,Ї5]۶ѹBT0bbpgN~_a[\~7r]*ZKKA]~"9=>g^ZIЅX @~sOk%aª@/$fUrf[k4V.)cTT9M ƌDO=!O9;i= EG=WB:ch4xBZsiN xڹ)祭AdH}v:qT<7r?1*2ΏGiqu~vbK4f9f_'f9έb쵈v^)WTp:pksY"+-oBܡ"xޓ !W,"DV{b^[h@le_k WΤ45#+ ?Ͱ k|ʉ(-kDŦ`PO ǹ A"Bw|%!(0>D!M!֠fֽ'Ec] \Aj%`tն5r,Z[ZS7iܩQ*O~?|/Xr@nvj:2" F|(ʅN"UqZTIlk؍i"dp^_7+s)&F(#o뫶 :Aݦ7sy#48pyV .|v\sGEx=$Ջ`GmL>Oi W: k",uj IQP"$cEădJ$Cl}>=b;x#w‹UсjP&7!}%bShfU "h#^URU;_zذC0֋ ֹZaD70oʿ@ˈ!j*\Q^.>l8gGդPmaJu>U[VЯ:w!3 Y,:TdC vrx*g ߆NyX*& S2 أgQkF XKi>Vް30'c[@p6 +?+1N!g++DK ;-Y_˜Z1y"4yLlniNqOa: IH@c# n%Y怋6uˀM`:T]Vrn{)c0WܹS?b YL'ݢaTq9͇eC{d؟Dmp`E3[_}&0)?o -x`G{6.H,&!k-ЫF˟  4,[C V+Jb2\f[tIQh1x_~W={(-`&Rp'О,3~To#5 Frle/Du8TvqA0*>^ٛ,h/l3t,N_2~!1BC\dLfCjo^cs! 9y~݁$}@ݎ;mDsoQRx9hwx?~[aԝݥIի }wRa7m_+ ]o43 тW^p?_*Fp \Ɇo.?Ѱ)/dFVf_,٬$, M'dQ:)U6|T*ڃ˜p. +P۶V](ډ)DoQ"t4ͤeˡSic٤ xhZgR$0⼀XEٗ [Mk;NnE^GSbāJWډ>T6M bu+_/)iT `H|ڃB_Խl 1\oꬾ07F'Q9՝T@kh=cCn/(0RgFnپ<ÿ0 ?-Rsv|Ǔla]’aʤt b$Fu?\=l`a=#nd{ʃj9sX'yO^V6e L70Ǽʻe:>!/ ^WPTCS'BANR-U}^wg=WD [ueOƤHJvANAg _>V QjeN #Ց>q6}K^^s[trzIV?d[3,`+951&N=cQ{v~mm\GI䲫F]- $q TNK3a%g =[pQ0P:[6 -iJiʄ|V*|r M7D5tU8Aᥠd\Vi=mltЃK}x=?6㰇0ɜT6bӪX20]JyT(+7[L@]*_ @Sz/EQ>B_Zk?t}Ka,s,jSA7i@=W9o掺b$Uv"!#nK)o5o,"M䍰v6O3P[ 9^""kX4.5{i:`EWib򓶗{^54^.~0B՚r zu93 c4ȉar(wFfEvgP=0%Cfٸ"ƤBP*0m=7׽Bs Mzg}JTXZǝIYRR߇xp7=_EEQYomeN/ʵ)T(6T뇚S|GS2. Q 3;ty]Л=ƪVbv[(pۻ~趮*]$[^sHFi~t(YK>SYhb -\#F[zE)Ã0n`|3ґDk#1UOB"<%n$dR2N#iLcLzrAA :PDnߕAP *=nO8J$:G"9A $duNXbXQG&a@L~$D^OhTc 9-Luvi_Mʈi~!=gz*˸xDvu]Ádw2Σv`>#i \V'|$]^LZ}=j#x eG 13XeeIu6 l'kM/fILAL2wMz 'O۸z[l'/*݆:-uTT Г$0Ӽأ}IC?Z2.==0NW6-\V{}j¥dôq.wŪ+Bviibb[YJϭNIcM ,<~bqBDIڣ;z;Ԡ29MCBZJf\x$ltSqq[*FϞ7~2<).C)L,/ V!&OIguop(]n~lw`Bcp ΒA BoL xx;n&x3\BrZo!we~ӥ|D`8 ">K,2؄cJiq80d@nIš|yJfs V5eN1}7|Q \=$5}tǦ%@n.=*%DDV 眉P%>{;3rrD_ll?pg:$VÞ~yVMywYwmD1;:bz,7 C x3AghW`~?_ܴөmAJ+;!muKt]j,rgA'F̬&BZn Lem2=$_]ɻbiٰ{'jPP4Tl&Gx% n9p?V푚 :֐\^Q.J2֍7~R/6¤&@:?})WP"%R68='{39ymo,As7%]IOP@39I $)Hyb`Wd[çw-]F@ QQJ <=Un 3)q=mn[ɪ }F)v㗙^deNT2dfuA;4J5A`5t!veMC'5\4L&GC= LL/eQ#oxb/lG6>0FV#~P<'1`%x@og)Yȕ ҌY"Y پ_ŇwQD0M,gф<~ݍ@OߦVbU?U >%a *Da*y MVn+j<љ'I+v6Rҿ >)6#LWgZ8[4F PBCvYВ7fvqf80e[$?CV4@ yp,0Z]%(grY%{10"ݲx[2/s\P䚄PJS(c(!h Z8~/x"R]a?Uo2$k/o{i8]!%{KHT4ZIBATU\:BXM%K?Z%)QJc")Gr ^18Qg|ӟt9r0esR#ʀ,>oh8qۛ0FMiǣ9!ۦS{9?F^NJ'X"ǻ`Y 6(t  z+hAcR_ .;nQ%ԞqNQ'D؇>-P;y<tW\#%>坲YY/ײַOJh! sC>T?Ոz1n;Ѽi! iyV.1xCGkt]upaɫ%]$Suh-U A(g˛ڑ!uo{kV[h*H fڄMꢬL ECN>5uòqDX,XWSxǡ>ɺ3*au!uN~hcf؁}hu?Byd[&[{ $] ^9@h388dRBE#KO3A*M~;Jw5X 8TdߚJt3GZe 2HF8*рv]Ǜhoᓝ+hqdK7}X?_/{ֿZsgLUQy;CpԟL!T$u@\{\8"zZ &Ec *͒7'4DJ=R3̊KJHw3`- n=B idb@Z>28?fPŬSW! fWd5C%R&+}wG԰a`:C Hҝ76u .Uf?;mݕ=,L>.[BIdf>PD Xٷ<{B*>*Bdp+87mL=Vk n{oqkP;~\@)"]h"}JNUP->h>`9(I֙ A7bX֌tkJ2Yy)͊!dK@U}u;`AZԴ3&|Uyc_D16OK|20p7saߴ&4S,[9R-ZC04Ec|p [$UԪ3u>`7J|hzI%,e]_5bw-꽀YM>Ux^zbIJѢRVY(1q\:W/)r(ŁU7)T)CSuDg`Ne[wOǺ&%$lZ,qFUAG{AU/CTHG,&ONF<6-Oz ~~Q|sz=yɦy, }%L;)*fW Fql@?3?tU=(᷐-Cw<R9h׬X[-th=SY: z%pj|6{p`UqFy⼀9$I1ddcp(0tg \)MҬNu7 h).O7EUfQOA?!3LtKډy @}e0N&^!#ް_Txgra#^|{ΧKMͮQ7Kw[*#_%jUҺ\Me|w M^7L J7zhz͜+j`WNsݣ"u@HQS@DIu"U82yDq¶uNg d-gN|=Fޱ(ۚ. ls'^2iIY. K.2;QVSramoރM`(@[+c'œaak_ ;@S*I7?4$LÝB0 4:{ /"^u?d.`v>i|VYx_lD>c=t#UۋѝPŔ;&^ݑ?b(FsS?F ˫T8Whc$4Ym֚>N0@ct6k] ؄<οM= c 鉫i%#)8i;V%Ox+JK'y12ĨH>eB;"ߨ١bL* ծm(ई2I޲L$ku{K,N`Gvۛw%]߶łyllH2B^}a[QW1tQ7Vߤ3 4l| )~㇚G52܁T1D\!Ȭ ׄE} 'JIbQN>U]w6y*ciu.aifOK-a7Ua ډ:$|ⳀK(j-ػ;Uᕏ1w[S=|uIB¹g=`/ބ"Oo #P>-ZA3efQi)*"g fwwKEZֽ!~ oZBƘ:BqA صY7KCr{,RUN<.մ|IA$] D\~H݉ѾVն\9TbX5./s`wI ` @u_G|D{JԃTg%/w:y5=VMSo4VHeXRJd+8~" l:u)Fx&}W @pY>1$X-Df !2,n;MƄzx_<8 U*$c-rSغIQ,^RŅ''-t%N7] pc6ÞOu?SuTjG\g~hdp,>D_<&â雩=e`"7/}^TN&@i'τ+]*Kت\Ϋk[-rAE JV"B@hA=J91 5.POfP:Sw(*&}V kT˨`!})ru(!6 `R^!N}B$P2Rwn$a)/oRҟy (%1oj, \ Եݽɑ83@V&֧H* ʣ" }rAl[nXN(A>{VmD "(t`XpdHwⵝ/h_Aq"%9:!SWiθ$w|9x_tqߧB~X gSWorH\{uܠ>0䂅_SӅǂks%Rv #5tC$t[lC| 9̳vXfD?C/cZM9khYڮ6mFmOi:XY[~҅owӍVn_̹pm2y+۩'fche%N!%"`VO\{FY2C'D_Z #"˙*!ʐl @new;9D2_NN!qsq&zb#ԭFz)ABEն$XǫԈ@{E VBSy).Hnjpe;MXXr:#C!w\ r*q(fߚ|,ȕ/J:]rܕԬ2# p_7닥YB;oh\zյ0,cgydAC?=(77i+FP@׍U \pl0WK7a3i4X hЬV/ǗRzJLK204i!w٪F覀NJi\4>D#M ?kwGMnAYvWńsD>;JA^o!Ie&oDwbۺm$lDr#L_bta} U+ %V?ȔQn<3+Zh(8:+W!W^iQON)RQZC ?7ȝI[ ~3ˑg f] *T:(D#k‚H1{*yL⓰ 7<[R UZDavs hFm@ C(C;U]0_`M^ uDW>| EWY,j9uCC NN=¿U0Nl*`K\uqI)]yL%u3Vbsk:ob,~-BB]Rg34HA (Yƽ)-0ZcmeZa|9#!G/uY}ɡ;+$dbV6GXNf<('_YTN p^FxHeG]HF֏KBO)b`Dt\f&i},s;*㙯 ůaH7Q "GXr[DJO5٠j5(]eVԮ|3㰳U-Q5.cNJs3~-v T/͒\%?S' @bmqV#I*ci6m1\ U Ӯp:0VB $JIjU)fPn.;>RmMeuFTy%pevk*Ejǘ8#lo{:6ܱy2^-76pL0^.0^4jG Pm*:!ُK7cM}Zˎϲ] ?\n{Yza3% ^5R/qFQbb+w1Ӯ֠-VLĸe9J}ovSuضjT(ܷPXGa;kA,}~Nc -isj<.É$[S4m\0ibIpwȄ䘸Rիb1H=#SnhߘUM)A*p :9AK7a<_0\y/TKz+eD6 J'M->ZMی ԑG>)ӾMsK3B <r ͻRЁ'^Qs;v ^d _[+'HJHwyHœh'dzƮuo[(y5ۢ^$rc;1˩ Ȁ}CJi*9U62ܰ<>CKt:] "fIE['8J>aT^Y}Ηp(xV>O&Jt*|$ԓM3^*CҽU pz;&:] ^(h4îm!p{ -I$}D}KiQ#K1E+hiӴ~^ؐUJ~uK×P$̘+|ȩLdojLnӃPw[sG/6yUٟDmuU8&`,D5J@r7}CFD̢EceB Q;F6 m.P J]K͢EB#Ϳ3tx w 84`*slC?L&޶T٘:BCUOH$LB]ڔN-=(/5%$BkJ*|wᪧŭsyzֆ!oL/ PU2B9qKQ֟mAζ{z z#_=}NbMk837 E 3h;wݢV%jGWb+],?J!r@vc~S %%.6Blr L0Z)8`tѳ˽jHmOV?1O[Ƴ "ƺNZ_RQ^oFol#sx{Bf_ƶgnHPNGo`c(#MEAX%O9a)v&o1V=[P Ni]בt# ^&* x- 7bcFg )uJϖ~4O G $Y?fWU(w|an#;w/bH' RQˎZ`XԺY%KFq\3H^թ"jzPE<}zOs"58#]#aR/gha6;;`G7M#j@ ^D)Bw f%4`qPf0p6dau(F $HR5K:vdR*4?.k2{YyFR4@XaOJ=߻evP GG,GG2"B<7O\EwE1a*R!'^ՈzQ+d!MNwxZkMvth.W4ܱ:9/T`&hG$(. Q@;qx S53Rye:yɃO臅aaQ0Dt}2:X^lDŽ@R@-^UV\U='«$B-sseM$>}o !&1۳ha?l[n8b(XPެ&n򌒷jHk6_w?5Cw**~g08E l7ܹ6: &awfGʉ b0rPEJV,۫q@BuNʧRKI.{/"ǘ6w6U2FmݨҋA~uvۖfF&޳)sҡ@]enrYhQb5sꐆhArAm 9oL#+HYB'>X]`{!ѠtDn-*@giBIg\NVyO r 4rL3jTSYg T!0MRfJ>g˷WaKdȢ,wTdy#+Rh/y=mF)f/JbO2 rj'vH{w!c-rl#Ei"&"tsF1++IJ75]?_W0PGS9K(z$PM@h;'yoA~PQ d+~Jk[؃SK@N?M&JDص9oqQN,mv|@;3s̪cLQcI*>YP ª7i3lsa6z,u]U,BDo^%nqҨ€L8u 2)9]P4U}}٭N~R9^zx))Ly߱eF 1ӊiRܑ0Gl1껰Tө+$ ߂ؕDH'/ı|[,+ ڛ~|J9U W3^۹Lj E`w:rdi+C`JxU  wNZP^=hZ#-]^h&C:!*ƽQ j)Hk__:wIbmH;=Iqɶ_oD;2| j+t#ʨ%*,,n#:mbw!4ye(ul^ߤ 6#K/ПȝM{L?IR X=[ji~7%H| Mkn̓=k9>?,!My&蚄\Ǒ" rt.5#9p1N]c1)ܵp t.9ędve5R+h"w# 9dS"MZ~̦$ k N&C삡-wv^LJI9P| "bZ< Bz%FW@wNG$p !O%PsGbCmB¸a[-}s#9F8q<ܢV%&B(LwrGщX0X'M6̓i晑Q S!_b5pp8d7gČ#ZHšc 8ÁYCG[dZJ,8)u*1)$5ڃ^6Ar"K?~z0drPo'110MmZˈPX͎@6 ڹn(&2{Noiq <$2D+3ZDkoiz,vy&$^ەޔ(bB%&LE_V]r(ԀN1riî~b}9VZ^`MaijjJ>6zl~gtU{_Ih.!铝P1|>4|XAe>nR;pwrASI1$e al 1oB!et"Bf ^t4+b 4c=;(ŋ[D~W*6x`jEppnJ'9lY σ f;me)SG~Gj-mnU oD~:U#*Z%{žJ`|ѳzd[g;Lfm35Ogr]1`;u9`)'cڝC˗2}eK5.RRd Ψ*nGj{Q VoyIo]x< 1>ĥuS9Q׌WAD:{t?rq5 zNJnR:gO,Uէau I` l|7 'C1r#Y;mغuP@%֟(*,;#P0˨@f+a;S[v;JzĜ<⸇(w~aEӻB{8:]Bq":!H<}vM>(H-S,aGdl>=SSk:2Z=Zz@0Ky=7A$*reԾ/n^q,9 F]؆bbD'jb‰▮oQmF+S2ƓxL2u]tm1MJ,N Jm /gK.qf9fO(&hv- mqo4=C+2m =nS?Pm:\@ک:S}sM02F. i":r&8ue豸ǂPt(;*`;\N'q(,h-f0PQaqC;vG>iEl9cJ.7$ [rL WkWd0REPb7k6nrX'r=vc< ҈mם i(]);-\^U1ܗF#,46Þ>'"&+r"zd"Xm#mb%yG:%Zd废 |31?JZE}"%ٯ$<,ޘ+' ^D^ ]WE嫛t˾=÷:4@d5Ss oV`%,f.4GTX*F" ꤲr|iF['f+A"V]3x訫v.P@REE'(z R Uѿ"9:&YJ:'nOr43 q[u&w:qI7eOoh"7obpp[AH>ʞy2ʪ$'ޥPB{xdַ]y $?˫ȏMITQ)\HU8\/=LYdžJ y^lr4]?@m6!uw8xVT\`8Ǔ$lmgoqLl~m!`F3Nf!D&mah҂mOf֩PPv8Ia}7+YW*n*ir1t]S'( h\YTB]9@3F}lJE C*|2U?j\>Honד_*pN.3( y鞟0˩.ZMR< yHT6!<:nS]2ma^@5ƼBkuwNR/ ?,߫dn>Tejk1YY$, [Y>y2*/nX⟟oEFL^L ܠ}L%E@ʴ=Z!XZA{8<K lű* Kcgstuc-"À< h9z @M?+Wlj=x7Dt Γ^brӉTJG!fYDlq 55d*$rSJ =g(ƈ#<""mz-4Ɛߐ f3gЬRwTfp %!_mZl4o*So P ƭu ~NyD,Xx߄.[V1+Kk̭nꥪ v{z%1J<i`sV5 Opԏn]Sq:";B'=х.խfPFJ0^ f8dr@o5PUqqM*o(ٳV6x% f5f99 V=#[? Jf/^G\= ۣ_3o&"? zo\8w G]{ށQ`D$a Gb+h]{!b`΄v'6 HDZ='lT=reD(=D>=Q? FKG^ Mp lI~ DUR鄲}w2z;xv:cIq0Of:x ܗ瓐/f+0-욡|nZs~*_..yw+Jټ婬#NiphR1Zm1HD"pog[yP*c5ujG풧@"Ȋm1w3) "s9C=w5}2qc:cD.Q MFn±o~b YjgtܚOvV IbpG vچ&۶IwADHq>*2ޜ6g#u^bTk ~~$*h#0rysbR@R# /5z,H1Axō@GmQIYi3]JeCZV'4ܪTOxr-%M\wfy&GR`o mcsk2 7 Yog۹ Py]`ǖXfN?X#2a*ŶÙЋ3IùrC `3싧0 6#H<%mA|Q1uW)]&LޡhYS$=dW1O`Ycb.7SW{ a ҍ?XhJ,ovG4V1I,D8")ȇ>\~jrK YU` u2iv.ܡc,1Bv23/$Ao-Pa"k w=foKT,dx:;KUR"%˒?^tD40y!H{˶sm #N!CV$oV|䖊VKgpK˜DwZMO $BA+e;J@GM]鳅xΡ[e;"# {,a Vdz%B2܃g( Hr/H8 2_݃{<g]A_Ūz,`ߙVlMr}y Ed ) /-x5]݉,Й(W;nV75tB]5q֔׺H@WHyHЧQy.z@Θn؟SF#F2."ďGtN.z*B4P$4WspMDג ќz/Q4uO{i3 Ns1)gCŸ -#}/OA]gBX0܈Kyy59 ^s &/AQ3xR_c!u^8!|"!Ry>4 j%&yE 8rtĒ^kY%hJ,cϪ/-w/[iqdK5c%2RBv)|]GC+\]bU.c=q[.EjmgpW NZ3\U%pOXݘ|KoI̫%pBk;v2V0$Xn87Q@% /u`ݨ繯P[dA]nN{;BtJp-":At*ScUE`+Y]9_YD4ĒaAe y%K-QPmp2/.;\ c e•Jgh-Q*CB$k#۞,D#Jgc'lD{|>ߘf׎&e_gˌ< Ż-q :#S -'v`m>F\2Q88}tbU_k=$)#תfrKZyo\rJ.'LV+&M#4&{ WRK>x1{hBݫ<]_Mr䗀̨JM}(]qz9p}ML$1't1 Guۊt$ o7H𸽍{6[\?QF?~[.sԴ% VtjdX]}'6|za KZ}}I$0jɻ+k@3.׎UHGjB<Q 1Y&aIK`Ӕy%sɊs5x>lul 81zqS F"/XDL"XnPO<9dÌ =g(Y)-$߀oUA @k΀KuP)F5ͣ'Sy!AF2νZٰڀѓ(GB v* * h_}/4dѨ,õl?[_~)YUlȐ.'ь2#։W/y,{t(h3LYߡduf]0F8ϡ Dq=s|*)WWeN]mGɫK#lV(N e]2 "ޠiǫE H~dH}~o{~O u\NQN7 4#W}4 ,aI2A(Xm5?*~*mN~Ԥ xL:NTZ%#ȩ1wFGSe 'tp>ci_ޝL#˴[*Jc"MϿu[-Fז$:R9ݼ!1>GOH-x,ǾE4Ax輟lRV ZY:wT~q7)?4ްڈ+=R ~Ѯ㎩*"t"#39ŃĮN$u JtʄtF Uӽ4g# -ѱlrb u6ٜ.$=%`r֘.[9gLmV25Z}Q9#:(-dcY\@5%I;3*xI٬}'R˵ jjVL:;*H8fQ+ُ Eg PGn!A[1+ 3-c2߼r:SJ׉Hpn?ENJr܃,Zݻ͟tz-!fLKsLoaJq &q(@ S@Q@kFk$!q&n0awTyB j-{>[\"yȀfM0] w9_Q*xRNvQ)tB"#mDsIOw]gǁ\ArVdl2T2DY̠s;o^WM)/ u-s-{RL*tEhCUA)CBG>lWhoQ'-I c lBIVǼ?a`cc>+Hes=r-mpISh_@ݷ+Q'#m5=kՂHPY;'& t,쉸fe .1;2CA<)vM8Ŗ9AB-6b>edJ6atmYBhib`s#b`^6RDjm\ sJ@i-_[1q3ꨅ-H…Z2I]]9cnI⎖G7Y$+WRu 3{[MhUaxc!*;9.#O(twU)em6*A٘A2fP /ȫhHNMR2#;^^, X"˗R@{| I }zITr݆oR^J N؅(:J2.5!>ĵ@rwNz+X:I.l`E=ژO%ل4޴\hZ~HǛۯt{S]3=-a|ħ̶oddO7RiF̪՘lyڣ fo6`=y잿{y7n!C uTȌʋ&S6hJdпб?R7 +4]/(u'omdӊM7֪"Dr|se Yh0Wx7 ^ǀ6ɝ. ɃRo-zQNPTaW|@v(pƜLڒ=:þ .26UJ.P vݐ(oȼ*CǍE+& eFFnBOBߺ@4` $03{+X>ӕW iR'8y[z4OP Z J@\^ rtuqnփ99hNEF"oEdQv믐Cq|/Ab2gR l9'X f*b JF\؁:=x8~$^E=Q(N]gs63jZ= S\jM*Y |y%ݵ`[oP':n 8`5W\9![KB87ߤy4 #olG~zab&?)@\O Я8%]QެneEO-sH`{֢ﷴmFQ!D_EUt0wu߼7-hMr`t c/CqSQ3t6[`{O8 3hL?hnim'P&D K?D`d+vݢf}#(X@Ot唻TΎ ԕ-d ݷXS#x0*kKqц!͒?Q]NS,V SJdĈe0=mүgwUԬ8fOsv[_9!msUqe _ BI +ORJTC&؂qB(Rah-8DMٷ|iRX;Ƶͪ)7:3oaCtֈ(\BP1>T}uŵ9p կ@ڶ*rv>n$zokҭ5UzTm;u מ)+Z4Yh _ȃx?FN><Χx~ EC<~'֯QQMuQŔNJWyI"5de?$*9*ov5Ԥl-]ܴ[@=KSaV.-]P.Ʃ⿘kSm R"@6Ui9V*|_%R:hNx_rk;װ3U~ 7PǓM4Cp\p:2۟VbsJ[>42WPAg֘h)4$Gȫ -s&dGrڇ65d/ Md{ה6pBeSaT;0q;(-`%冒i\xKlbnj.qM#nI}6* ρ3f/N01nO zY[3D9mszgVrݜdDj _d3 Oa&+i^_߀NߣbCw+QlU!p+ku_ejDǡg[k`Q]J(rT] ]ȿtF?O¼;b#=>Sh_7VO,;]*G"~(OP6CD.ȝ— K8ρKjE >5so$؟g*If/LFu0@-''*6)b ZE4ܨŽdyހ8 v-gxஙYMS؞G:uUSJE:EYΚ@?rAnYnGynB8ݭ+W_uiQ#C,ڣVONoXxV9j;h}")7cNee3pi2 u2WCDQ ԡ5]3,v}?(?\XY]ZP,5.򐯲0](NQ#XA47zErYz ZUZǓG!?4'DWzc@ l-V&u!A8jI͟qX1PmwH{ƏjcR#YF"mC>,B=u_[xq2l ny3/-%/8c C6e_FôE#Txrf>Y9W;K6õļ!c.^,m>p9 7.\4q}=|&YÄL_7C-MNũH iCcFdgIU6LSĐ65(KsT;r+Ϩڇ˴߇S)"L#Al,خTըCddtXIm"dhkM_C?MuXԯe0?n],L4n|N |,OAf>̕{V٫bzG]'1#u+s#VgxlyBI=,lfVO~g/LS0ffkJ}؈zPgHլX}^IznC |C]T.^{ßAx_Q } Y@;W};.VKD ݛpoUЕXta=n(-/8xD䮌v h:lƃ=`U+V煮0XǝYV])1)Q]}7VȯO+oa@ph^W;K)qγ(;g[௑-"'0P+8τ! .ԷNڭ3O,1/~$M>EFфL O{jGB;ή􍘛r; 䗩8Dh|<nt1'<߾9"q&}+U*cF:_S$fSf\t:FEq_rо<% Lt,еZ u;Z%`1FR]`Snb2}~Ңbi>}9{֤6 Kݸ_šTDǽ_EcI~(%g3aZ)/Uz4 Z…c/IC}jxv^l瘀;1oZO?R<1TCyP[?v+:@M$J{R&TbUYzF_AW"^J!9hΒe^]0{~iF"YP%[/hk?V/, )=hL7)Z(/U(Bӱm ~зi7/Ơ~W@"Lȧ}I9U"dAഔusANswm½0)-wMe_zV$Cx^jA|x*v?|Y)yL*e{y~`4Q!Zi.Y*SѭW7GawB很u/5FWl3E*1]TE(5yʡ\{({ x"L{sz?DK2ͯ%F;ONaBhfʋ@ $Wư/cb>!;4|9Ȉ}W` >X.TDU P}CFF(6KՐ (,f"S^V W!d$y{PdC&i tFY=}s%.{儉0w #z_f3HB_"7&ԺmE6iodx~F4_I{A\1J*^/' YϙzXnxdAfSf`8*`܃י͗A3`Q Y>-Cm&KN!{WghoK(_4St~(*EƢI TofM'h+Ϳ1.fOpn}Xu1qad-&dme ,.ּ bm %S=@ 7|,9+%x;ۺKGv݄']zl&~1UPm^[K֭@h0%QMk(#bCb}6|~{i tLmpG}ķ,Xtv \ }S},T)GuF9n^OB@Lս+-8RJ`,1hv ($.Di;􉕞v| HGy=977NDy9Z((lHISKL qYV}ppLn'@2G+5Ab0 &vkx+3 o3f$GK(O:,aeZl j ffepKb:l@'&硌ydX0#g '|GuӬb`38)tvX}4҇43ᙏ0172C!|څ- ,ђwd,eսR4щ6&U+L3$땐C:WHmiE%K߶ҶHͲ;hXϩ!13>_0g\d#Qs'Lu̧.ߔ* ~2gQ[{I9@ 7 d&cDUFNj7Iޗ!3)6Fɯ]NwjB&C9Ҟ iMrt#d7{͆8GphVc"#/Km&հ2gl"SS7njޒ'E*$>DS0g[?d<9 TG.!I2o,ZQ1 &qKxrq]\=Qb^iVvV2<8vvQwɂFh2z;{2}:/thfe)؃Ԏ˥^'@:+vG-l.1|cg3¶ڿfU2}~%?ZO4&NO$zzRc֠G[d@® m>{ -Sⷲe]Jtn<#rG4Rc.'NuT$>$^p\kL?n4<4*V4fMIZZBx. fOLY N o2#g_ypNJF'1=\M0?v{~0M"}yex핍.0ՇD<(PwnW)MNnA t )/o{ttOR"E:hE2?ȦW !{]95J)}zAA8M$]Yh_ӵ3tps~#iCVQD؀Q0] C,9뻔9$)=W\gmWj]^P#H!$F.庪Mڍ5\T" KiT9}|SL=kEj}3u*9KN#{s5zuH OظMjL><ɘaYQD;;A}ԯ@ȽQz\$,Xi}3UjI)bmow(6ި(5>p&Y^0fMHsjd}J[ +~!aL[*ik&%e[r9nWSS$HtsTrT@XzX 0qG. LOuK Ʉ;DnV0r:[ ~iXr:ZwɃ~okOr-霑y0iNtzڨe>j.3_|t79+a;G]S `mOt|ɖbOB^ؘcsktL*9ՙy"RO/I%Xtï6[RZE|<>6y_qluKP[/T0ڙr"Vq*yۭWisqAEEߺ!{A hMI(/ v*aG­MZ/p2^ur7TRUVRDo $t= tTUt UR.~ K酶0)\^7Zce El@*dy̪Os%*7/%d j$vO(aNĪČ,#bow!AG*ͧ.5ي*|}(`m=lq ;NreZW@3N9uu]p 1ƈs)>W?r>,>5XL$5\T3hJ[?IUtfP> !LDT_PyaDlz"=3D0Lނ]7+OM͆vq8υ7=tyDVkFv}ctB6xXs n7)jE:{[m뿋NCgP +&m %_?M݇ЅXF:h׉## t%w閗CB*v?lTM;hAVY@qP2?H7 ?m K> kLQ`d P8"+SX v@QHxY 9M(EuOm'}#ycڑftYf܆SqG׈g+^Qxz/ج>,OV f.(nK'q jSkaHk((oL}[jFUяg_L# 'Wf9'GeN N"sEH'&GdnCƢ;4 $u2 ~޸QN 8:-$U I)oT:1ly qc]kz1%e$8K,qApp9 AXɒ/fV=ț7'Qݲ0-C}MEfex& gzϣ^0&ĵu6٨򒭷Lo϶yzCz"0iRcx ީ5!xđ6=AQZ~PP4gJ@'g9`Dvb&uPAv0~؀F/->ǿ zoMu+#ޒTэk&*sĪ-6251HGSр!B4،l{c"0jw`ɃI^3\TIح)ǺEM=} :/-bN+׏hRE^I.}#]\1NLfI5m @#rIz c5w]X;͋wyg?_؉o̳ςFuN~H90jW"Hҡ6J\OK> ;Aa_:#t Ɣ=չ幾pGiP=Ŧ6\[ 6}ʟ/4fE `EdJ?tl ζYuW|& Hɿ$?p>XaOlO +|g^5{0D*r#e` H@)ysp7Dnkn\E2:#tat2u3&2p|pxTJÌ \" >~R37t5=,)uTG)槸_Wo$GM&3}z/8W,Ҷ="k!8.]PfuXrZmNO)˵ YsL[E,ΧG!i&;`*F!u'.5wSU">{2k%XMp@Q`Lvm kN-`4>mdB~('yP dL0^dFB CSߞ2x'F”u8>3%kWi]34+! D\1Gwziӟ⇸^Z]  ")sAss[ Yp~h % eCC툺89N:jChe~H=;g._ L$>wgXTS_>z{Ap 7|5$*K4ǖ|I% GcPV:hIܰ,cؼC~T6f 5w' uYRp6HHnx#(613eq}#f+jCzx5BA7f߾p笔e9l)!UuΌ@nÛ\ťʢ.!,z)3)mgcJ'&2P߫o(^Io"x(r̓wHp;VOW͟`菚AG*9=@ ¯b^!kݫ>Ad/ I1в9kf|%sM0 s rQ4#ܔ>e94| .֜sJQK ⼼`}$Xl&SOH:σ2y Q!TUEӛyMD%2aiWfa@Ȁxe?Yv8 * n$ mtd:t l5gQw4/%KZ+~`4~~mC 4z#8}tY' 够0 Y|O>˫t[nw@UQEZu {Hw̘P=՗gĽK!sAQOlkIDS tIWKmMcRL '?kdK[a8ˢGu eA?3x  kjn͙.&Ȳ~"?jn?!x}^űM΋J"%xV #PfM!sC˳a/;*v"1K8/duC0cBj2D!ߵ^@ 4 fN8vP^(..>aHͦ&ǖlb%uj)7}F.O)7j u=瘊ϸ38(l^"#!,ݗ=f+ςx4z›0!aѪ&kbC#9wv<`CޔuL04bҲ,cd>v!zf%xBbIm:ܧJm#+^,up &Jv`Od*rFO UX>AY,Xi _!f6Hb~ЈpWD|ӐwCf+g߻uKiYJa^7%j>%iPA #=syU'O͠Z7.؃p$ثP rP;;'` _E11Y~LeRzdnYzAِ 90^kSqb]l3 T[] jd SN(̃x&!͒^ARhGg*}ϭ1Uc%b:xU-ѽ>š9ker5, jQ #p/QdKRq|^E鼎ŹszסlPUXV^O{#љ}l-N^'ճ].V$1X̬c{ɹv]P|3sٹ8V=H2\"(h,LX7CgQ/G +;EگT)+D?.iba롱]7@)ibi{k“V(L kqb 1p^iMFEQRe@vYYYelwg9ْϿq54ݼxTq1>MWCޘ1eZs:sdf/+@&enx0 _]Pk8GG^y\ПxnMTҕƣ- e'ͥg!puJ8=)KGyEol=d *fs;zJ7jeG#YH!~e#\&A@|bcjJ#VߵZA )BM=MNT2s0y~c"heA8 d4E0  [q^:5o@S"ׁR}S'E1QYGYv՛t)gfbO$ʰCq* GIR,:jwH)gI24|aY1)[wpnyKÇD5 %ރF)ofhö́I.2[ Iw&N _%8,u’ ƽ4ؔ [{ᑗfo"RG6+KRwA8|%\9zpD+;& K<Ϻ"U՘mnJl7t8{ G7tO@e?1N f;t?S^Q02Hɻ߀9Cs>?s,Ֆ@`1 g$4 mLK%pVQ7/bxa[!=ImU|ڠ:eo;ju^O TUeb|Y#T^ jcv0mcΙAIg$ßa?a&f#"WQ#PߤR/$uU?3͟Nٖ¿,?2\ CKat\0ՁB9mD!"?{ &̊ՈдbM#ۈ[JMd39g؉r`_s%^%nV%F$pG[,ddHG^dHSjN{@B> N|eDFnU {wfʨ ,ުs6Pmerq):vI.POJ$VJ)8r2I/`\z%@X:B ĺc/~U0by]r!}<2)f[ߎ;Xvlyk2,>Q#SCzX5|1n ںm]T7BXOkIDM L؅x+}F;;_Y!$S*sn\ Io3$qKWA.s?G45P=sX8by\wSR&sE/b0pWHzoJv_7bp>a LdSR帿glG ~\Q7Ȩ0%7 ewC_JOA"ڶWP/0b=@B\)vQ pfqAf4TM 1xS3 Z1' 2c)w",6Fn;<Œ(SYɬ9C~FDq֧.}o  ]o( -CuE,tYL0B@Y$>\h@Lɖ%XP cnI{ݚiMOEMW ۺ> b4 &5lc0o/^;~[ SJyA%ƿ΂>iNVR"mK.Df"jy_%eJ hZ_z?ǁ0:<%S+چ ܩV+6R!0 xbJ"oĚEm3E<{UC ͢.fI%.M/\TyށL"a3'd: |n+dj` -D 䍠O gt@V@o_w^JV¦ac6\G%?anǶl߂.5qin#puahe:9 '>k̾6{PjN3]l?OD/!)BLǟj˫ЫЇu>5gQV)!'H,@cy`G}"~W _[WW}z ^Nb  ǥL|W=18Y%/㌘ G<27-;Y%B}XArtΨU`s] aL<y?C2gӆ#RY[8UNԯD?$=o/r"򄲅iV¼~{o:V7<ߋUX}bA!h}h>HxO%rl ,tnl]{""yr ̟DBdgԳ]GH3(LV\FzLK\WO01[= sfR!Rt+$f$E60I>⋥v,D l~&\KHdV%}weiB9](^DV AmTfJWMbY{p$ o 0~݂]NH_BC>XуO/YV8cB8^**{_IG0;[؟ȉRJDf,hj͛!M;kqq:V'[hMQ)A4hV/-\/ɝZF+&6P.IdYzWyUZvzs.ߥſ{'qRVVr"FC=Io :}JȘ@o6n7݂@ӚS{ڤP7H? )k)dˬWX>NvB'\EC $k ʲd\P:I>_|a=j^צfF2T=Ԝ(g$VbcO>z@-z-Ao7r*XƅE8TފaɇX9%=q˶@ѿS9-_ Z?KG["t+83aY ?WlNW0\@tmZ/M.|ЖjI &w AnaE6U,v67pљ+>V6xY.l ʷbp9z^ $ `K6M U7V*LIm~|5Nbl.]Db!qvTtGWX-MjBwN{t7,CX[G}~d7_}3 -rrD %AMb:YM>Oů;`7B1=ݗavR7}B, M~d|5Pt" dMJáJ[Ρ_׋uJSX8_&+V GWܗ̅9]1G MgZo:‡s B+N :,'VpHdH,?;D v0*W{-ƺ2ۃs6 5[Ӎ,4Waa]dJLj-p#~3+MV-;dtxd&)Օ'!$#p(, Ppjmf_rjpv]ƿWLԥֵ9VݳgW3gC 96C|px~1~/[[U!cMg`nIF 2L".&jlP|$"#iHJ!AP|T cApNU>61j2^':q>42p5=JFvlH--sR0]MD V06[p<a̟p׫8a&sr5.4.80u.*$d~&|[To8/]ݡr ({Nnܵ{@ZV UC(\SR{ɭ:2mm^5ѱ/xqB_ӔJ (<EʻWtH T?g~/i /`@&ӽ0ԩ$xl݆"hՑ~uc}=yu4q:Df:hDVBcEpgl 0ɫmM9Ƃ@{X1h8NYSZ`t*N>7٪"URH8>rkd9קQ\޼ն,F@;/ze~h{ৌ#dbCKQ8mtPzRHà.ߩ5X3ȝ+0skjɢc&ߏjAJ|Cf ?5f*^_ϡ$?EIZ:꟱.MewGqýg1=ڙE/F@eP0bl*!`ɇUgCԡO +ᴹK;~Ƒsоl{āMpJܢĤ$uWsH:K'fwTi2YyşIPAWoyKla^\>(l{ӆDȕ`lrpdMzvT!$16@E/2 [LC׾$+Db?3Y#ym^w[D9af{ n1i~ RG5xsRadl{JЍXcs"5Ҽeq;a_SIC}fKg3OZA3FPچQuȵFN_eh7=Ĉ9n~: %=Wݼ瑚ғ;}V;ݱcy7|rZ\'iu?p1u"#^ 2 J<,aDz" n;/uM-nֵCgTi[6t>E& [Mv{)[8)ۚo͝B.n,FnDK&2vI%k^]e vkZ KZ6G7H!К᱇N^23%"17Pn^<[~ސ:B!~2ڍ/?`//OryN 0K~kiS"u{pGYiyTKFj)boa/Y@lOٞƯLĒx.KLG ]_51"ѝ&R\qMmSUBdȊ=e᳔wn]2]@f(=׃Ԝ-UCxY"0ID!^koD@d84Y2y̫LqTtA_93oqb^NCǖRz-9jԞaA3p˿̨f NCF=r;Hql('d[\OߓL|/gj}&zU];o#2:dyaOmA9;휘DXB79b%M=wO9yRd>c|:_$F̛CXxֱo',t+\=AɓrE~5X=_GW Mؼ$uDħd4LqnԢ+vxC 1~C@p&yMo Y+}ՍZ}/h/ (S5}?ю@d2d1*8Kx(ӋlsN%Tvǭhnlk,HdʕPe(vcM>E1#DuKq)/-*1ZN}xP"a> BA'a.ިm.OO7'QG0,kl[yP/s ?I)1Q{\jjEӆ09N׺"-;}N`r4-)b<̢`^C3Jkp?]w4=8^(;«V!o;_$ePsj$~EJj=*XåV (.^U=jeJ3i4$W.2d$ wR:bo2ШN@(6yT\*ƝatV5*wCz8#Oh/q^p[OIYh<9 wW}Lݙ 2% C_ @+7& E 'E)&zˑD, is4]Âf@c/QݕRTKW YОvѐ_h7qI҄ksT8 (,;air͓kgsc{?mhB]b \-Xv_O__XH½4DB$^^u.aН;ۤʎ3V_Fa(̀}d%'-4^}6 AK-ySr[D({V`ɿj p Cr?g5k.-:VC/JꟇhh0Sq1 C q)Bo\2ⷡF^6-RaUI &D4/@ ` `V ,W]}&?(kr]|plO~< 3X̍~=kmиfz! 5KA yF/Qp"a'7 aTON3PIPx.|(U0k:D^p94bx:xOmmZxt[k~滒Ӡ *Rk ./r\Uwg`\nVZ )-72bh;2cN-q.]%4d@>aC&、d㳷3- hv00xӊ٭3VXx ?7qN>HjIT4!lOƔ,sG6oZ9ݾFR}i /&Z6BSP&k4-͛Mq>N|(7ି</N07,pD f`X}XS8:" <]άc9b |6.;,nJ[]uMu%̷pyod/CMlzi|> q~3sϾ-C'Ls! EL 5Ti5dņ LwvtUWFBm2 iÏmI!8Ф% qR^.Yt@&L4#1u%}:;=+QR"'\sl 6a.郀 ,l[,c>ˊbOJ~i/UVzQȂ= SsX2Wlr6NJ*p*{^k^gcd_/P@:@(N&Ǿ! UC زHP :)Ex-BoX;h#[WIob-XWͼhh(ڶU\)[W>}s rwEZi zb>2ùնv7eUaڪiIB*rtwڥ߉d3SЭ,3D Ϋy8*7,رC^[ǫȼN5`E`Xa3A\8+ O3S`yH/{Ǯ#&b ig?T |D0F"'4R e }iP vGucѨ X19r9lpa"{!&\Lxk7-t桷1nu셌eܸ;;ߦ7=O L6}Bt 'DGpǢv|[mHލG)ilP&%ukѦJtzuwgűHrGT1 cy2PiTu.Q:{zr9t5";R _B ~@ASOZ$N6I72J aځ>6>v:;˫`aIs"odvM~NvFvLJ5jٵ4?&LbQ.b@lHقBk͔y#{7Ķ-f)5FO8T0dB i#,Fd߁M9.dFEnd mcCPNGEԀ8>Sd$ʃbw2D;8r[=xf4""Q1)ٝ:'wN_/[/߾K%75oD"wGTQzJؔDd",F]:l";Nx5'ւRî%Up|'g^]8Q7ە3è6`K-G҉[Q!9%F;d}؉JP_t"xU8.wJ @Bg?3]&L 8w})٦%b޹gh1T{5ͿJ٧QͣL7UVCY3[\X!Oxf?;cXUQmu\Vw,BuK&eAvp̎v~.$74=quV¬ʚQt`$I4;`t~*LE4OC"a YLO`fCmz'Z{ *`X@kw] & uB0`ywSXᅡnyєe>ǯcp7a}#3~)q)%¥`2nk4JT2jޤ}C;UwI "nqEb?/Z"q&.%')wSJ0P"k%L,V|ns]@ Zlz< BJ'?lNF"dW\10.~K|9)o"qb(J t,}sO'wvV+ }? ~nIoBb"bn/PR*-R4PK,. 1bĔ#Xy*vŦMNQLj܈ =ämqJ=53o8 \:0Qj`k#߮2Φ"ոeN~ 6h^(>HEj-2t<ɸ~Sn` ;!sya"LC۞獂P~ap5LKSX8]|% HbFtIKMLp\_.jWI+y>I)~>ߒ>':*rx3>?f1e7^N `Vnv-lJ e) $n{qgǬxƁ7$rX$mVPU:v"XP@cZ[9kQF[@#l`؁r62, ߀NJ3ɌMDi =S 61"R܉ڙ^\-oK ۀL>O9Y᤺CVE /ƃWƚ8w4SKO X$:= _GS?vq1LG_nd)劶AGVǒ003kɇ4M`oOTV{tTX_w$B<E?М)\GN+FKe! 3<2V6KHVdvQaNȶ_v Ϊ\N-h'Jx͖~˗\Dq 18A/Z; <اN5(ѱ#P%(M&RLЂmr*]#~bw'N,8|U 96VFjyu}<L)ʂa{%OjB;\O n&1|7}RcKmF7_3&(Y2alҿ07@]&dmo6QŪl.qH; hJݰ ꢎqM[:vDea] jD4RRnlxࠄrl4w&[mE4 Iv)g3!9ߝ/7e0 I2[ +D'*Xrߒ]Ez4ReJ')i~ޓMc>x;Fߔ'cY 3}COr&%6!qeķ3J9~OMO{NwPPCw`Β|:UN3~[tFۓL0Pґb ԅdi(%EV̐K p14Ee.;?5륌PyR8D/kO.p dǪ Y$5B+]h,5uo6J?Ծr 82D"!rcf]'{e^;۴2e!OᆦHn ~uD_ zvA46+;}XslaX뽾[⫻}7gTAqD0QQ,ʤ5adv͌ܫNJЇ&uJh>M@!N=~b 7s7Ah@;Ws)z [c$ 9Kѯ hj-)5o9ldRjDP(z鳐u Lી_E۵'< &6ar]eZn :qRYT(j+u;D?ƪr+6}@Xn‡RVyV.7E~.m}a91͂ݯ@J9ԵI.pxB0ɺULjcw+yU4-U5X߱!/`٠H䕢>!9*]w8?A-0CA5 ,0&jk=A*#ܦވux݄r+7-M$EJ 9g5g\CXek 5\ 5%#yc-1,j $BW!hQnt@*cbsDy(3[ȵ$!e PҴDžRL9Pmw֟ UwC04b٢EyLlvKpz@B[mM4ʼ5O&f:oz1Nz(TG>ԗ}svIa.gB߃O{Ha[f <|̏\,vGYRύ(vzsF%c}T)_O|QgPW[{L]%ǁe$n{vX "'e%;9k!OH %LԃSAqd(VSrsޗ*RR)bh$촽ȜFE!f+IK0Pp,;sfbAʊJCu\YTm=y"3`W6ߚkoooT;/b3J}ۭ޲2Yzj緮'5w\QB1lKZK!oů`m:BXbL8u}ະ|exqžBs$܉ި- 7IZ  kNuXrU<솖)InP"H_ 5lUX.t! UW/0e4'^EweoqpTJ#~" Ɏb[q(kFrYge{ZQ4Vqrݧ.]on=iu`7"?+}Ν-AFVPE;D̄χ>9 iG>$/ i&D/W3f;w ւ Q|XH(̌˾bR$)jLrHN3☤W{3 5HԮ}x |2"5i@Ȋ7h1i>DiN䆄tcy@T07jqDL+nhO u1=LWj!D]ԐUr+'ypXyw4z)Še }K8ܫ(IF([ 1Rs9Of$q"@u+swu=[qֽfOdKds3hFqW,Cho!S'`nQmC9IuTc`WYd'_ ` vo)f-<#^.% Ix1"jQ,7({  MVWj|%6fl d N 7ӝ7yX-D[2Z\n36QW[MFi\@#&,a'i+,$@k;Ɋ򭘉hj!q:B߀Vu5^#NikB{6<&x*ɮ \ OٳV P+~Z/L(f{yΪQQOeT w?ͮ~4`;xx Vdm7|h6z1ѐ}.af: -n5' >VW|vD\L_*j-tm5wpǐoi.r ̌T-Co|Y8.jY2:(_ė>TS`}>4+0,(t[(\dn|v,eB , >]vx='OS4l9N \M28aۯ$z0i["oZ54tҡH^6#z<;GkX.RxH7sys[Sky0&gO]㠏cwG)!f!ٽ݇ʳ7fCF4|;l3ʑ/d_SZC ^7cml@w^rܧ hME5&V}k^ Q@_x Y;9Ls {>5fK\I;a'^G/H:LwX @sZLŗgX`ހ:a)ퟍ?rzHSW \:Y5&MM[#cKp]ߚ{UߔZ.^ Oq`kL3~=23^°={BGk0;/O4TaBOqP^V%FԪ򟵦S˞;ݢJɏ)U5[=Kzzޢ7rV*A7Fd_qm;/@U90\1"lkKIZ35 dB?rdMTI?k}ʑQ_L>|F6wzGێJ؂}\%@[ZʀkFnmuMyxo~k^HJeʘKcFbK{Tf]ߊ iX[fjD*Ɍϡ P!#x©iej{s B`Xxz q`68r~QD)^[}h-ȷ9}42m<ꌢҒakϥN/G*\>%hjjl,8X0iȇ2yVC>^sNL2K0(9EkТ0U뢴CƎzE C"?B>br]&4OVP*2Vj;M׺dZ 8kT/;O$H0eջ#^.\ ~%c*xi0jdh53+&:Fw)KysO:m)3j3|{)>*~GW<@3'&7[ M[3LbntykzskÅYA6X`$T.Dgd7JW3 I vB~~A'+Y`eT5d5̨7OHVD1(?K"%[~I% vSC;S50qd(I7NʍWr5HO"S=.._]ri&ҕCa`8~*LraE$Ji1Pn2b ],y{dxZ۔QIMa|a/G7թ˦ zSu癍\M '(^`f7ЏyΉ kʘ,%o{͹}}4[qLp6<՗*+o>7=k Yp:Vs~o_{}^'X@p*ćesާ*aJ/`U7J Vq?m{ʋ{l\5)1Ibbve~+ k[J !o/I -91f<3zS҃9Yg/h$fBE<9-1_-ts4W@P.[#7 Z6H ̱Y@%1͹ytNFLhHS45Up#JЀ6 1JLN0k/4Ie pj2w7łFQU!mD4cBX /&oᰟ~H}Qqi[$.'CqӃ-VA9a `ʼx0Ny㔳, ܼ"{So(e>WfbZBaBa]kxt <`JxjpePRCQ;j/ɂ?-I⹙V m -qsQRPu\&[RE@f^ HA=GZL`.*=gӿ)Dqן[Jk%k2+c+-\,uWg*{v} |K3H0zl7.>9^An86oՆJ'9x֓ׄ#>3 %\^op,VCPqJߊn1Sq| ,?Z'EIk>3տ>0lHl6)xv#l`sXC[SےdymsQӍ0,ݤN,h;'i0 ûd?7xZZ#"|_x_fuyQR.^P@[Z˷A$=,?YOX`ƣ78L׌-@߰:0jQ2w)pfx}^ض+-o 3f:r|tD3m@"ٔ;-0 Ewi桻IkUUb k:(_g5E}s0em:Zo4)rr7S`eo3# BV+NQ:)B0ƒk*~4JVB,GZ["f'SyAbPiy/%JB䱲©%Z;*ύo!Ue_g R 2?P9C/o DDOul֎Q 8O+=6Z1F*hy:-Y.n׻{X͢Rsq{00 ' G xf%s~f.֎I ZS6MݓdBWذ;.n+9oJD:!1ՔM=Th699IR42Y398BV8uMDyj̀h  R.q;h>܂+j\s%݀ ^.i{Vp ht,;R ^]&j0WmZ;g !]XQP`{gHBknCj94, UVn,:b/I@Z09wbaʰn/+ [Ăkw~'/ꏵ*!ngl͇y^wTȽꦟugs˒eE컕 ع15uh/Fj=pGx2v0M^[?'ٟAؾ*D\wBI\-H> vR^(K 7'w]aDqyf8CQr^5{Ī[u|dp9jx p(U_PR,1{}c%ыQ ҂1DF[HԓjǹQM2bN.=nӶkGYU; G .MMRPC%tTj,ׁëi}2r;`t^fw{lֹդqn*2?_z e5WB^whj 1l)zrlziԉ zdH􈔀N=7̺+==jJ5P >mZun@ilM:PijUMMq}ҙ1j0}w}26](ۈch)l33Ѻ)H-J\Ѻ8d1 hb!,5=} Y9buC&OSB,NS؜6{oO紃lJ8w((?z*%vP5M.d,F2# En &2v+&y@A+iUN2N"`Odz gz!cmgI$>dWYYVo,yZk[_j>JD!L$96l0QJ(ο]ߑa=,׽(̆[Z鞇qA+AqnDs0hiгd +*;|oʸLjp*.hZ=3<ڿnRAFjdH%K)bF$lK`y,5UM[_]BJ*am,>UZ*:jhi ,xbQ9lvteY=`0$o_gz]z5JGϬ)#[@-Ql7>.3ěD3ٴ[7Z?L O;}ZS m՘{NrtRmR=+tL[U#fjTY3Z6%{xi7]Z#t7ޏXR ҋZqT^D+tL_ADԨ ʿidEʍqlJϠ卸hHBo L_N/q)Ne1qD ׵D2ڕFS۫ڛ ̩or7ᐫZj[s#"ijĪHrb8f~IkBx&ɴAWB5u&_2-1=Rb<@*[v]tet)u˼\Me_)\}*ʹ;/9OYZEόdNT^$Wxˍ9ZI}/Nrڡ5y\C\`!"W4OZ`koZ$"QcfbuҋEs?@# `h6o~{u1(Jad,X"?ϭ/gt|dj`wxrtzS[GXl(?&&w,Zߒd7`W}.9Hѕ)fwSS[Tu_lb_饖i Sq?yPN}-5>bQ(-3X0;.)>#A~ZI,VĮnK4,CO#kmآy? >>21IX+|[Δlj3$NCcAgW'ӓ./gR=rޕ:M;mW`8,(tKt$ +']DHA9vkVRg7wт>ebB񚯈Q)a x_pz{qkji`;d^is` /r-eSsі?[RI"icxA ~˭ ^83p_n) FfÍtNcAG g,eLk J;$܍ta‡!4—04X$L]INuI9ebX' PStPžgf4 ?!L?6/"$Hhl0DZ2Z0?փbil,1,77 EG~;jZ~s}+LO7$?#BQ=h}?1ac!'ߥ #IA`8(Py>v|~m@ jmxj:O٦]ݷ/rCfðWbt\XBq$~!nYEڌ? JZ"5&D"!L?JO!le9I֣T(oM[*ID(q~J6^SP]=J7nγw~8]B@@y(4F#Y'3n0{@b$yRѮ'[ۨ,"ʶ4ȳMƒ} FF''6Zgq&B vUM~һP6&B-?<Wn+컖}C#492e`uKM^VRO#azO U_ze/JԛRϖ.5F4tH'.Ɠ=kRN?̈́>L6Z*):o+npqwƅCjN0#ֳ,jgn`%aP4g N4[1’x keO {Qo=x7fYJɕii`mo`YcYo/*ci 7 wMwr騜곆;9b;I0٥to G1Q 66nܢ-jS8q8F#`E4u*u) ~ :Lj8¬RoKR k \ua zL L lFDuK gG0dM+|]3 OP"0AB3uɚQsXfYT -ÚZ`8E$,[0}~ouP'+#7TrH./M2_e5'K9{(~ɴN+KD*"a""b ANy:(U'&Z@8}^=QIzllͯ,,<ۑ>"S/p7`o.R@'/2j`yOR#Xߨ@`Y`si6I+^ikxݤuVUQُ[+P7dB}ᘖ qLJ[tIs*̢azԷjY>eH'I6mKm&F~YzI G0C, 5|B <Yfo"*A4`?lv)Y/!=JQ4wQ,],erOADɁXώpVƥ@Ff){$JJ]G^g nlkrs^2Zҹ}[lƺM,.@!4#{/HCHno",S~5ї)ǔl emm#fL0f^KK%wsF]dJl&ӏw2ZfPI7oVMS l4␡ wgHݰFU(bLhI87,- 4N0HEƦ1!Ёϝ-1 5hA4ZB乘j& Uk.ihH5G.LUuNM/ۏx"-[l>e^IR {{#Fgt+Zฺ#b"N9q5؀x_+L7Pdxj<|o yz87speB-Za"l |8aī7=I/ᖞO~Ւp8#oƞ^mms!&!twg{ko@R(C24[|T6g:HÞge7!A'1a(‹3Or5GLި=_Ws []RN׎< $9Eu{٠lW[4s~)  WvMIOfdGa˜s0r!F; rS$ucNס8̰԰)d|1vaf??o |ډ'B7Sy̼T UBӕ'8Ga9' TqnQk=?W$f} I{_Kb`]3c-gB ; DlijpDKHxBfbG8y~hFI9 (r_6慔D Ɂ FK:!twle p(XXPCc\"m۬bv (y4gCUb\ ¹o;lrP8leż%s',4?ل6/;iԶZ?_oV!^ '8c\g Uՙh<𝦂8*)$0yL|uKVУ._gb櫬?-l?7<} \BYS*1v~ dRX`)Jzd46yS.{\萮KP`X8w퀼=iPHI0I~n,bT쟢( 09PP{%!8a/YCR?KB<ـIuM4?+篑hӎD ڙmZah9r]֫.8gTNr޽F}cӓUgżz2ͯKKp*üjEZ]?9Ó32ҒpW&7p;w۵#L9kX0zh] ";3:瀰-bؖbVape h=%^!徬9l^c8R9cW]a_-srrRН2g`=NJ+79(}a&CMs‹!s!$*>SY'OouOw׉hIHZdTPBFC [z,N{|W}.e#NK7d7pZTk+Ma|r9QײpQ- iz#87Y>nzދ]PdFp("\0f[g0 \ots@L{ǜ`pUM[]<^ t]) ఔ/^IЅַ0W"vbҙx´0:/vd ~ӕ"$N2I4ڙ^O0rkWLbͻCXAd]0`i0AZ\n Ct ;ur ?x~w ~,Dz68bid]4؎D9hW JxöDx\ |,JHd4vs`nȨ~t~|:UA|ryMm莯vqah1|%к]DVN18nP(PD=lqVue҅n\߸ ՘CVz#+RbF2r>)!CCpb?X`2TWNF&`^EP5{kyC6}.ڞq,$F_Ěc#fPYXǐ}a.[7յMAq.~YtVEDkIv4hAe[#6q",l(5&(Idv0u¿  :8 zy.oW"D7sxa٢cG`m)ҮTQr|Y[Rŝldч|z1E/%:^k}S"qG}+ʴCnZ9$T{wb]ę9J$0Vw uMGTs5r(#H4Ѽ'<uF;2ʲmU7ń~wZD>TzO7%/ƟafZ997D)jRs̼M%w}ܽC3oP ]/}0I^tj#NRMnR5WQA8DKQ1/hO+%=zncQn[&z涃ν=/?D4/n4IrNKKrL^[_gtk(A߸|}F%)./O6Fp'tIb=6j]&jg5GZ`N{tGW96<I ;ZlIVf]t 3j+a(d7 {=Ӵ'7m4j1lhO@2I%~ p՞ yYԧ5*4` nE5ǎhВS*= 33L658tcT }.\$i"`= 2"Bbuf$m"NzU/{`JBI,+G? &BĐk4NXE1tP,gO/e|? VYKw"dI ƴTU.l@H&_;68:z#LRލ]a-#,x$rSZG Yw{GgLM6L_|]A>/K')s#CukjtE}ԍ1ܲ"5Ok Ѻ_ ᢭:Li5cUa7 S %ҟG4;1UYXfne$^"&8NNCuӁeaddKPS1e} ka 㞕f :;++0Xbv(/V1cKL!m7xy0?4\].$'|ӐSʜ~xoRg+Ķ?o= K=*k7*iQ;;1MS/vj?V\·->Z%*{ũu[uSx " 'A%7m y9SCCx3O5qWIEmH{0S$&h*bQ0N~#; O|?Ē5l[uɃXi6z\# 2AR5%s bzediDP/ڇJ~WPH k_U#% ddrM N9(^0*}^y_.enIJ3["Y_# ֭žc}z:zQCcw3 UQөR dd$fgQnWa ZKT0tۥ'*zw ͊k:$,Iuە<[4{s ^<qS ,~ ɐߜH@h:g9O]Y57iH#?>/!A-G!A)%a/nNhqCNxa|ܝ)T!YSpKk#5K F4H"=E&V{5b0f/ZNA -dfJ2@IY8C1﷾fcƢ8W"Ťr{nv; ~kR۬Zfj2B ->8D̞,z}UkV)AT7x}YʅAU ́ V+_r,a잤MTO>Xnj/~'LP7@;,iBOEd=$NphDՎg4_~/R%5]cmiW.ҚA LxEcl(ϥ@V++x] 5z_qPwby(,ʐ|@)(f92rrnHY4[3 Koۤx9"#^Han\sM,NO,Or_Y骚Y77:ܚi(G6 (͌,ĖQr ׫Lĉ`LPړcxө{"bx+/mxփxYWY-;9NrIPW`iW@X;,s_:'Bd+ڴ{4,O a=xLc9~bhB8 8:7|Wom'M(/vRO|fT.k`mwo :nLzݮU{BcG"p{;Xf͆uPb~厰v#;۰¸f~{Nq|6`:t%@1ݠ@;b^֬Hu~㨙jӀe=(C)v3 _ 7b^Ugvi~כց&ǽ55߽<#RUPMI:p 3H eaF%2@J>k3 bkEX?|8Af fMi}6oSפOԹ#-eA0zGίݣ?yIo>H5aq(.18 0VCkľm"@%C?, Q;%DYCƙIڤd-Rd9mE@i`۶!ܪ #TzVXVW|kT"q$.\4X2d7яQD]W]Cg݅W0(k+ h؍PjiqCR~ev?'m{iqpiL JS>U~ <(.w ITx?c9kJE#uaeo xjerZP50W83FX{'j488jjOC9"}qi_(xHDf4ʆ\.FsfZ7*hkMI:B! U:E6V?S>W>$I/gCYn3$f&#׌N ͗:u鲸bR?tc tQ4Ԓf|{g<*!bCY߆ эQG ڟW5rYQ;2[>5`2(c1 'gjiۤ @(fw g!913X^@7hx{MlvjOe|H?ܵ٠& JₐߥRSVo(a{^q' U J;1R>87R~EȠaA$C.wXճe ƯTЍ -(ȶ)ی.9M .E Ab5wRt>LAT0ۡR(.6;+h(UmN v36 [kdJsEǑ`LĎSpRr|;Asz3D]6}S04%K}j±L)U=V*9 50 ӟMIwr R!0[s^. OsAmk[Xuj 4Wb<);(̲ScYE=J3yFmJ.wEO)]lbVZZ(> \"W5jDbI)U_=} NOcނhfSUAI':[;܍8qYM b5;nghD@cNy^|?פ`$ =M ZKi` e/PK7P$'" v=P;/:|" U]M+U-601_Ci_~/zvUk7LzyeYbIKih, h 'eÒD~J1BȢE&=}u :C׶"4V f|<-dya?3L 'Q iO3cAGa1UW<]'%`vNDU@!4u%Vѥ,8yD-X՘poʵ7tG];YEǫ=igh%9Il]f5&^Ei s Ƞ:,n f0fI%5vhrP%~kFp1⚬~S%tClawGiIJP bMPu#gj=8wXO Iז f&"8Zq0͏l3ۍIˌmB~Fp m_h Ƃk B'N Z ?b[Ws''ݠ8nB*@ШQ\ DL`qmDspo{̜~/D(!vq7”χy2ܞגg/˚#5h#=?z o?Y n5 l:P=Qmghz lP^=Cy klYH8Zo0tGP)!q>۹dh(D(|`z;k]s!;ٲec|7JcT>:W1v>|,0N+J\gr ={Wr$Pf(V)[cw,)[oS{FY}@孱sS+vg%ot}u2)?/ܫ01MoMS| [\zYf7}Oq"x>}37q7-_=cUxrp 6&Q0fs$oٓlGR_>;O /i *n2-0 cQayJʓxzFÍC=;)7R\s߼!!ߏ )7MJCeEE TKG<*x{/YsąQH4[,3-Bawlck5lx!vymoqKaL T1 OX b^K`6NU/=4 L%W2m"?ޙivJTQMe{[ '` pc \'Xyt6? @ H'jM4ln4/}+*n ĝ`F}ZW &B.JԱ(IliDQ]o ]*9,-myNTUA@T}0.9sPT\t%$?Ot;N6 xW,Qt{)dǵ]ZX7Rm?ѕ Dz=i{TGdZϼ־V݃.&p1%b)-=a]'@lpN9h""͛ uHܝ`~;DC!VZbƢߴ# ߐ!o8+b63YqP,]& o+s]]wn zuir>`H@jОׁMUI5 uϞ>43@աwwj!S^-ѯ@&YA ,IpHrtFs' R~M_-ec{/?Nw-hv6sI"s%K%cE!K['}F1gmU1ٙ܌%nhb?JpUntS=jb-  Iź~ j*TL^[rV Xs꺀cGm}O=tF)OA\s VWȃɈkxL.TDz 16#UN|KEQSBEw{qIly<?ZFV>gR2KujP1"^ zؑ=Jތ :C0Pu X KYlA ~K;!aCTܠ۫ZUHW4`Ϩ\ Iȫ.M~DE!3friYmqs7n Y`O>[MH1;5;bf)iӘ3L5r\ f}v`)^@ +PE&=:"g}nI[fQUUQ05%̔6ȳZZӛPS<„,AҒC;vi1Р=E)t.-C]ӗ\T(k\Z|%'F'p\V!S'ۑЀ2dg6cz4%.8I>]I h%{b@:D&+MkhToXߠ݆k3uT0ruo"$'ځ\g~?R"#8uQ#䘆Lf3" Q (%` 9v>Ӻ(dseS=λ}Mu'"3)` $Py6O01"\تs,ׇozs|=Ą[]k|ExW @fT}tDɸ.KI\|{*~=p1/bٰWyם@v贳{|=s&Y+uٷ̉KZca)?X끇Q'"M$,*wzKp n(4>e`X(e*I1+9>КInO[+L~WcݐB Qem{>fq1>4&؈sqT9QP1qO7rǞ`UK*vˁ3{PI;~"\6RsΨ?HS>SZG^T-&Ej1){~NmQy~؈rhIIcP'n!lѺG"L'yZ3Q;A`AD-3@A-U,mɥm/3p< kxjlޛm$ kt-w^k77,ڐw+Y>XApcxCYָ%OO7tly!me3 }f\eRۥv'vt䏺\p i-YB7 d ɑw7 ϧsH6N\N%L@,qdCtpJhIs7pj-qMc9}b[B<=SOPgAi*c]Z$BA$ /v)r*g3 O w=iVqWXn`b5DŪ}Z8BwٴQN8%$v]А\xI $pJD\ a gKX9]~Me (i-֖ 7quis;Q `P1e*Djkik_4:h~)iED46qq|]S+p4$(p3;qHm%z=D*j&sr|WέeL%U U :F8i"93_9ygu 6QdfzP$ih^60ol"(E7/d7>3(`p38R6}썒ӊm*݇ro!6U*f=nQY*'ZoǂwƢk뤬Z愍) JQ%e݈1&sEEEG*ȋ}@yzDsbf$@(Usƞ)s&XT☑Q)14:i.\ a'o]%Vl֡-5lIQǐ;NQv[Fڒ)z*Uv2/"TG8c]|9NZr=Tc췈ȫPm(V w0^Ik$b@ΠgDr(q_A.OMUPguCVϵU/8g&KPBA]Fdut;˂Vޚj/p4v ә٬_9@N% |B0C%߽:d/~]VL|R}O|׮?A t> T/T Qz" >?;H~h9'61X2"*3-d'ˉg69m2$t $2fO=RE[Qo!hA_֨ {R"'[yc<#X5_ J_O0:hm { dҐd V Iˆ»Tϧ !;/$Fo¨Z_f];ھ^E@ 6*/+` :롤ң'o1jbr ~Tw!3Vr.lCX B wȝfVmwU!jW_%9(&S"F 2 @9lc/l-]"HGO)"1/FTJ9A( JTrƉ8Puy%7ٹ[:K<4&E5svnBbiIy[_{ؘ֘zZy+N~ '^ܨT9ya]G@)6`6٣+cPWuNvad~(.q OSfeo 56$q}`JE=sn2LNS39Ngɹpv<5I{ LHTBqnM,C4qDAʕG(??\^ y?cm7 ]% QMd h;3xR~Vڶ Q}!߁>K/Ug=ݩ{T,|Y[dd=[WxWw}^Uz,G(~xLX[ޫI84r\FY_V ~h5x@O/C 8҃CpVe"$(gyPC՘feedpzO]*{4=A |DtUq4 R^Auo.rDmfB+~̻UmUDNyi^>d7/F 1h^_S c| ̮!_kWaEO_҈(j ՠ,lz o[wK2xܮ0oVL;iiWLQL9 E#3k"!'HnGr)`"O"1AN~t9Vi?:Z9vl=9 nHV_)`\k06Xs:RYb\.U nm~$_~)piy7̿nP!.pAY  rۉ*7UPf:=ZG5ְ֐gKI; eB0[}J1l`G!u̺ =;MX~Flp^}|uVa[;Fv WJ4Ni;Ce7M1z?00Zc( 3<\albF{:@FG!GFW1K"tn' ''mb^OδF'RkҀLJM/i ٨+/@#hJ b+Җ^evvt及UFP.M.g)&:2PųE!'E"Mvȇ\;Ynqqd7 v Yш1zeTRPG`I)N<|k1*X@p&0ڟuWlZ*= ? cb^wB eS1Xe(@b0-; Gd\%j6+Eשw!κ]@n~UZ oY-;緞b<$oqWulCp\x(5(tK- x:E},V[6D5X\d{Eb| <t[;\ |37!={[8i1_zgƮݻo> =|TETQr͠Y%M`#NԌtĞ/!dij{LŌ]|qv+xk70o)y-ԏ ˼ݐ}j'׵[GpZ8{6&ړI\^D~vZ ,Ѯ*&|h`e0[`a3G_:hzIfb'ln[WjCYgBùGxl^//<-Zby`2K&jƂwYL1"-U+=;k,A',_*` #|b{ {8 pn.Ahw#v]Ϣ^s hʀJg+3iHc—#]1YЁd,g2x݁0;4oHGq wgAـW 9ŰIͬqN/jMj 'F?y.Af?^}x:4Rת=U_ SLeC$bO-u1~0D_kι67|Ta1Bb ř70Z\tJn '(ҵef4r kAmwsUPS* tDMј:|Ԧ!ڈpbȒ}ލ1߅)$'9!r[]'Ugvx6C"Ips̩]с \v,zХOp%8FCB>xIc)(4q#r)vi:S`8N|!Lք::h<x2114$9yaۤ sy"v8n˳2Aub\1=C Az7c1Yd~rhe4Lvkg<[a5s ; o^tz&Zҿ-\P 1 '&wK1xzBWgI{첸9? R2rDo 6G ߰3d OX[K܄UHvs3{8?{ɴ!rSRiƙJp7v\])!ih[H3tBI.`ʔҏ&Ϗ_D$#-z۪ы@pcZw#@$?Izv^8eɔas7ב~bA^Hp. GGډ p ŕz".XU3TuJ8u#E^Vgjz#/|92Gp<<\r &6 O4pK`L6wY>R:u (Cz n."MP*pV4fKz!Xɴ<ET}Wնݰ4V΀z0h(N~6sVf[#/kGXJ %E`ơNLFLn"k xu#QId. \,ThQEjLHy@fBǺljfBgoݭU>z,T R&oNQ_/)%k"!ֳ iacOƀ9,V$Ho7M!(06:Wޘȓ 郃V-$U#NWaS.14ɫ*4L e?j{YX&isֻOLA8o,ZX_E-fSd#+8#|_>WPE(n*=Z0 0Z3r@".v`-1bzX FZ<,ZP/҆[\T%Az.h̖n͇@Rk$nUhB0m)t؈x]}K 'v+X("o.O83p9#_ߧ"l%;jrjB4)*vsW{S4(VN!^@͘H' WgΉ~{`<(˅/2ЁɉWlIbu!61?KxR]艚7 `?z ,3>cRY'BtJ>ϖڄyF Ju`񬟹-[;4|E$=M vQbd"Ǎ(ԱҦ@|o!\ĝV!Rƫڠ8B'mZ~eu&IEeQĘvI)j=vJ{y+U!yaorXY-Β  GPQ2t".X  ]d1u $e^~JwM%ٸr37c WL0ͅ54FmX/ƒgyE𖓔OlD Xd9BGS&l%B$=v(B'aL*#4Ưw= oQSV0WXXV[Ys(C- mAqVy WwZ$⼷M`hu 0O{rBA[ԇN%O@o7;8o_C$'M>#1BBxzR߷jkVc7Ll]2tzڼ`3%"% UIrp?R3MIlY)"{Ƭ ;Ve0"$oN)oŐDYD %^Ӆ&!}BF4J`̽6maU&ybdYO/; }xdBXQU}WopG0ٜڲ# No(pfAs'?$q.(\fzkO۾SKg&>cV@s!f!P-W.vvus]ӸNW:?|1jFsƯj6-[t7:mt" e9)-x :|nܬ[(NA5 jIZrZ_-W.w;'I"E-%'.'Za;paRp# ;@~/ԅ)s&L-ͷ%6J_am|tb {&j $_ zيKXXzg:9r '9b%>5iW"= D86$.D|8% Wtf"÷PF|mt^*|1աA=Ա6]9^@B.'z̐%Ey;>x_!R 3ajYG_!qcd.ɉ6X]G]FR$V>I?_@IT>8Fݢ'V#Gvb@| ts&PvD5J9|\cP?5Rj'XSm~Ζ8Ҏ3Y=bHwh&fe_zb*b.B2!¦ ݾrC)9 tsww6o3i,^ѐ*ɢotEpiK_tTze +\Ak00iyvzZ1$FmG뱵^UnȍP"L7,zIJ 91duK [Wv|Oֺ{aGvqТs>2|aSݖ '홾pj@%|AoH[Cb9YNU3{QMNAe&x3ooyaH0oN% Tc1b%Oggv@ʛET5>pK[0E1EO+ݥ?",2NPRR20e ?jk ZP@4M&f9_%Dq*#5ᄺEGv`#߱5vHi.>K%wn(^o.Wh7)cE=\ $mP'hNTbCU[%/2.oB.+'o&IQ4c0n){E)8 *_ ,htuW ۔s?qECA?IO/Sə`@F?HAUQ98sC:i53Z4f|aB4!e7CuoҜxMK!-Î^n~'Vnz'I$mY8tlv%/ߜQ0 'u \Cz&q畩\r%RpSC Vy`oj=*/~Od_eQqNi|u<_ښ5Zȹ^({KP1;ѫk`C]pB6Ӡ%2քiJ/;՞cqڐڥM#HQ7(CFݨ_-?/ؠ( Bee!~keP *&gEQ4. \%6O=4plt=G,}0\T \lH`Bz[`W!# :CKMUzq?czuBTY5"+آꏪ/wv%9S#;ڌޠHmQֵVn`-6s 22 VQ%FtdQ6=8ɇYI$K^z臬ѹN6YX9"׬HסAz4pG x%]ϣ1-ÜBE)g~oc훬-zs\77S;nT@TmFu uvER1ggn9!j&a $0)-4/(hg_ޡBxQ^C#mA 3]*cH!# S2Hr8=S@ۄ6;jLEme'23^Q6C5,X{y?_֧묠E];x\D,03 8/61rBkVg9Nb9u;d$M>&n K2kL bɣb" Y"*G݄V/?H#W@> [t7(vUOcTl'ASw)0 дw,C=WU \HV㣂ƨ@ [D0ƨ[=D- Tnu ICn}&Z]4x̲6&g %03QĻE^wy) }QJ$~&p,*q/xN%7b5~!ivEf[ǚ/<׽XYe)ȸ&ծ{*B5FXs]Y&:@E<'R~AYK/#hw?B0)*- gWX"1 ZmE;5;h4SF=](zs#k_f<Oqb,=4q=} o8"VDˆ2S/ OhT%ތp*1 HvC&K2{ŒԪ&ﻸoYμ: Wdpx~Ȁ.x h77Tg`P/|MNvB.XI9fs<?U B KWI6촭Q/, %ƞUr8De!Gp&6 q|Y`궸Oϣ)2@{j o 5E N~[MR69Up WY%S$ P>m?pꟕ*u--N!KeEmvhxkA : z)WiKm˽]n5W剽Ɨ4plxWr]mr2O\ɨcdYݎ+> gBd&Q!kɤmmk,WSmRGm7XL]mMǒN"+ٓ?7Pو)"{ nMjs)F[]ŊY!a*<;ǤPۖXX5?r/:ZFn^˷3J03_~WKh׃]mJMUTkGl 3ctFq[j&D>woQ1܃Bk%k]HE־/I [ꄺ&h[6xpҦC@V<*w8]\5ohG`Vd:@꒟g_%WmB*Sg2' ¯|LS5eIaMm`l"u\R`t3ǂw1/aFU64itWCH~aR; r| -3V!-n^ +ޠ~Iq;t VP2%S/{~!oG-&[C) zjbNlL9jx~ @52I(&b`S58]cwU1i3]ơP`? :(rI+)dD-) 9h(9T([og:<|~nPp< (:5E*/t-IO(7_kQ>{ ^迉PQ$aF SXu];$*l8s/I'~yD:樂p"trBp:WlAjxQSP&UZ]*2hՌnf=:|4DtA<.pC7u3NQJu!1%_ ]xHjTfFYd^ s^jG,ZÒ\̜5pʴ5HP/Ň*!w1%U~xv:ã%s-ܔ\gF;3{a򳩝m,ؽ)(Hf]Q#L\,. жy$*B T b22?z"b[*6vǼq|; l%MIT V7epbd> l0Ƀ` B`.ùX5-1'Y)=0(UN )#g5$ÛTI- b=vX<Aj~NSMjC&o~O>Xu:%;,wAܒM9aX#K1'#!Cde K*ѴBe3K'ωKz$Nie~`Q M% f邋#_! r\L;FP9[%蹄V'fz,5 ]l%lut?*Vpk.m==aǹu3[U]&'\,`.V.sBe ]if{{L_KB集y%׾lC/nfno;Z]۬۲ $D/&<GmVZ"!v;@ ś5pQaU kjחNtPCxO_IN΄/9B>tJ);\^5{]ysy[N9`+f}=@5wm?$$V=yA5ਈضi&ޒ5%˹xpd!Aq2C_vMoļ|wG/v nX%ΣILAQ Nq|E$_S5mz-6A !}ڨ6ܞHo 'ވS+u :]8˛g`U+͊k̠"Ū ܆q3Suez(џ[]݌yڲYLL˹"c1G3>0& t 3 %,,1$K+ØoV0j{!*cK$ +-2ϼ~PS³ ϗr,O}ޯ q)&?}.1Lv`@sf3qPYEAKklmzyU_= 0pMj wyKbJM&ѤW6ÿy9|נ\}tpa- SjS+ C0jeR6#1D 0,Z?6D`1=DiXRM)CG]s[Ca$j*[֥J((So!!m&_3꼸8͟C0# j}_=F\t1Q0Щ8U@aEQD8VaR)\7hwr?UFL=͔j]& )ߴSQ\7ҕax(ʙ,Fɢ!uHP7gb Ev&Yz U~QrHW{*`XۘtE<(וZɫlœkqR]iYaWIpJ sDmi_d%T=6Rbx欼*WYrvQѨקɊ?&Db| P)?aQOt*/tI=IB sHqfVl1-q-7.n<(4 J2\׼KU '#RXWJ}Op9sC`y>;uFqڣm$U w,TH SyjiR|DA_LP;cbKb,ՇmTSP0F$=4ѤA 5^XV#JRpZYN7V#%w?Ļ)dGz`m 9ZªQJ!E|;Szi1%#L4{iP P>16$/չPp"d .ΜƸԦ7Vٚ'3OO͹Slim5 w1YuS>A"n +Lc3g%9kD P*6%m`0mk 3\듒Q_*>345BɮyRD-J̀ c1=w@>ܧӎ'kBW?d1鼐KO'80_5YU^BgNĩǡ mGR(}+V \]zsL7fw";wC%'|A 'ZŖ[FXo*fJ)G@^* o !T_aP4q[UilFc:aR2X5NvT$&# Tv|".ըidzD[nAXy+)#Z¡ldNΨEL]6<}h[=!Op(#ˁ{oxIaZr8{:.mQWMΧdKj7x M&nE#mtUD5vP&Aw\.D? 5SזkAZ+9;qm'I2W X%@uJ!J8V @@;??+8%Zwd >i4HXH%0G/wdKޖZC\H[rCpLL$qQ3+Rb=U}ӷj]1373Q}n>aF$&'N'ՂqQm2Qq{ݜe~6!e_$Tc) Н|`YkppN K7t^wɚUͦrsZS>AۭpN?QfuEțu}6 ʈ2Եk$ uxMHyxŴugmg:{oٛcѕ _=@$ի ē>:Vێ ߓ|L|U\-~RD.%,@/(5cwu"Ϟ2!|o<ܞSڠsO`ŏp#/6d199rJN:5͂j؍ۯiͦIUjp$޶Jr٪ׇDs<#Ku֛<0`ڊ8It|*PgΆۅlnA˔o Xش{SzgK`UDA]G.6fOɕpH.9$L`p[>#`Šߋ/*s2=;2#ހ\@[$Ks``xR㎇Ӊ 3$gߎHcMQ"uLז&4cc6?!8y^Z#j) Ctrgmc #z tW,6et@ys7^Hëo@xº+wؐfdZ]k# W K4&r:z~z-]f'>X}ωluM|%4$l h@3./ I/93x %S_z{9x_z3B6 8j{'֒DӔ|tfB߷ٛB.፬^+t,dN|Y=+ѫs7? E]^g'`Uͨ+ bQ~gNd R4%jj.2/ILяa[lb?yp'h"kJ?U: u rbW/|8vB2:RcoRA hdү"}b<7Ԇ86Y򑶯B%|PƢ.AOh3IšoKHG3eq ]՚HC }7H~0:EUwʛ(`W,@>"]K:s}L5޻ &>ʁc{#m߫v"1r[o6'™xF͘ĕZJXb:U ?J s]y)qR{uO-$VfzdIh:"!*#{hfy6GZ8j7 X/<4mLפjG~,=㴽^ٵi:i-*"a7#|ǟpm= "t>la12 Bx9Ұ>*jR_k[B'(͚NwDPF 84/Ru4hŎZZ@툵j]vvF%t_Ra3b]glklw#\Zg2R@/v S-pži{65c#ctQ/VZzcMQQ}i(' \W!ѨojV65D5O:L7x Qd:<4?#"\L1 Y5T.<.L޸lTV)!L>4"oG`Ye![wh`!9K3BdG`0xM_rgI7 AZȇ^LOM+sxlQT2PUt~;hA999Qzw zMHIcVXTwO'V[˞KI}RᖋEeu'vk'?<܇D/c:k3]*9*mR5ǁ]r  9!)BM*ğ$xmS7"?(_p5n &1}X3S0BNlLJgN/6Tde,\X`t?f !*wY.Àtf UfW#w!^ʑ t-ͳquafd̗(9*U'ϕNͳ%+EB}:J5hRůmω^'<ܪ\q˗{ʽ1kxo ^7Df>˫KO@/-!Պ)+dh? 5MQLa܎G #p|(%X[BCW%:s1o lbFwdq[t6?[G̲ YȝVf#X)1whBTDmȮw{\m|pk@u-/lUfSi=a4ׇ$9e eG}BҬ:?ƻB{ſ5{NG<݀DͶzȱey.~m+.́HelNŎþ+1P ^F5"ŅbarѲsBLLI.&7}ȡ놷TL&[yk&+7ߟ$P)%>aR+VH{]:^7,\Y.綤pCi. +Yh`ry*]/$J9fn7UM:XA?[J18ȏALdyT%?A-s<թ(Im_ +G-#]\Jp,Ad5q!r&K$yCTq1KSZ%K=Q*lJE%X 5}0jպ2>`8Eti$=ιuQ.^_k$sMe/ig)NC<gWk/v3.A`D`y1YCmnkwV)Y( {G57}AѶ!.Mlia~Z鲦F1mꂤij\HuO ۈW%[x~Q*1@O rQQ"S@mU{ nQy4 DS/,Ǐ$$@ ܋Fa`*Qj?~6s07!kL_xq8z0gؒ_-s=]YLz_H[X T = taz4n"lЪW,[ Z ݨ7T/ djVI %GcZ5ZkqFbL ;Pǂ(7 aDΧ,B`7'@Ə>5*ߛЗ!-kNY9Aw|49S]#<辸-w?IIUͼc'\u]+W6kʸUCW6Mš?aEΆuCIɪDlӿAZَc/Lv?@jtpk8PeT~|l xYfzml'V*Z?G9] ]g:s(HТҁ_558;7)60`K%a5 \c}\e-*XEi5~Xy+nX5#s3BMZNZP:F-ae,L})_WA(#VV~usƦ]Wb[4h,ץP@Y& mdj&)9_; c& -*`b0]-1*wVr2CvnVyвMf2=)F/aD#JXώ,G&{axK6yiCRz$ur+%W/7NlpHWFoOFE^7zt uO2v|o.zMC72Ϲ>&[⑌g 0N{dr|AVǩ mŖz:7PV$I1%Ɍi:7Kl+eĨDgWׯo_=$Ľ)c3;_,;%v)*2*#züzxhk'?! %' ja4b#"^jnaxg = ÚW&)5ZFlljg\aGŪ*Wn.zķ[Aen r!A4LZ<3 7dkpv8#S{`8k[:0 NBTGEK_ ^q%zM Oc8>i٩?"N-Fk<r='ΐCLU\6L! 4~g?Gn)ZVC` RUj1}A``-.ъ=f%.~<~ ʄR+KJ VlAN{g4XI$csKg7ށpsXη$ȯ p П{hvoJQǙY wMn=b;)6;z-tXO4!MDL*(vcr!FmlR\@n逮"_ҵtZjݦ}H2f4f ,#nOufE;]yoKBJY%mpH V'ci#H{j:3,0 WMd 5#q񲒺}+ _󢟿ToO@(]?m!9cyqz*1 `\ֻgbZ@/0uMzM'zWv$ P/+FtOBJ~X&˫yO}>dSo-DPNvUT͙#ʎ*Խܿkd0<ӵ1V1fpl|،YÔraQnVk!v-%$$]8ՙ er@`֧lTosdn.8N3IZWAƫ<V虖7pGp ہ"?72AQ8 TU_)NAv_ܘ{QoGf폇)-Y1҈w鑥r,Vq;:EP6V!8 G5,7.\v:<*;hs4;o7$4zݗu<&Ni4@m )طTHUlXX_/en˶S+^)dإ{iZ6"AIY*`YY4U-֣TJEXՉZ!KʐK* t{ͯJվz KqJRLMj{ ~O*J.g&#c2ep5, ̢+#_R@scwdf-@ NJ32rp 'Ŏ3ǘu' _1ŽpeGۯ_佈ʴm+65j=Ǝr+PT<.|DvѸ^.5irl\UƆA H#8C>u^Ly>Zi&o֤r i[՛O_OO8͘(2iʬ䢝±(>*ŽlVX.rqխY&Y" U݌`:|t[A-}t9_-01pʳ?V@^f6S9fY6ahrW&eoθNxoW{[u!^BUwJ*,"ZCM=ftv'Y!w MGȽ2UaCY{-NΤIz/|+XmPMK)x_`2~s /JڋA9> @Ѩ*PE}fZHs*_9冦e )4=ggC Hڵ~,V?4&ldzp xc7^{GFK ,k5(b+W0m垟rzY2yzQA1KÑG$]m9)&|;tnВ>aqk(,vr9y#y/9MK"H̾@ǣdizɿ0cww+w?%uz[֬ZЌRS}&o ޲iFC)\cKktØy @nFka[/[u 8LhE(D@O=_-dyZ\ZHN}8I<{hat6jy*n+J ف/}yƵ=y SCzq_nh4ܓ;Dv`:\kޔ$Q \2I%ţl-N`Gjhigs\cٽ Oɀq)%DP|z/JK/6#9رO7K~]xqIkV+ř!Nnr\fpKQyfƔQg-ܖDa"nNUa[W_z<|E|vGKKXł%}%#90'l;9r900gH`L{K˓xhTO.[VXj|[9KjʒAP;YIgLNܯ @LM/Zh8hVMD%q\ 噡gcomͳ]k. ɮ >J:^>/w1JQ@?+^5q{X;δ S,xDD$?jSBq~bk){ڼrۊJo0]97Վ4U'vm&YsYHεAhxlVu`Xz-q;Qyo-r^b\jx+?Æf (XU{#UwoJcb35` K{K[ 锐hC=ȗ=cx G' L3/qp1 /Y4;3`9õ U X7r-$&mgEp=w cʿ` &^Kg#e{MWޗhܽ#{̨Ee2 錞 %S$`1Wl^$~M2Zf(Q$6̛tňJeSZ<JCO : ߓEȷ_b>*NnVRT X;G3)ZoB(viP$|*;I qTVsD;cq;.7QwB\SڬmۘtVhC>9f)DvsȺ?BhYINGJO+ȗT6,A+`kERX _ֈY)}Uz" Q'r^U"јh{=7C Z; `rEơ]@CvrwM33{v()@̙oF h؂m8LH5Aߖ)]B]- FA( DT똗Kɜl"v{Z[pE*gPmotMu2`k=ld,o iJ6ߖ_Y+Ӥ Lb8b O~Bۺcןw9W;6Y+c_2-' gaހD;5LPo|`$Nҵ[֗ڰڨfzUS9|AmF:Bˡ }a&¿,(*;Za>53;PV1(|zSEgm&w=II.v.YeKBu3ԭޠ[wͶlb3-qf_0ʼnf6*{6M_ds/YY,z~D9opE ~$)^9Hc h>10/ŁaTusx-.QD$GLlN8(XMMJ.KG0*FrBd!'Aϥ[DYRUx/trYVCv4Z0V4~R׺n\\J֚$ m..jC50j`kDw-_i]=D.@|6i%/)Q{̛گP0,֯RYus㭑L+= 4Kg#"_|!\}ΟO P_|yVO*䔆;pJLdrP~ih9aR|* Ad|'?䏩f,L d#Gr,6 DN̓hєln9(tĽ+QxtUs |*slfSv{hX+[x%4.fOPGU3q )Y尺4q9#b*¶>!S15A}ĸl$2MDA[՘XZcVLWڛQ8XeLP |f&j(;EcG3%F(]FDc@sHԏ)XzFӽ1Ԫ|khw"0XT;C݄y^t-Mba`9qa e#cHn$Rnh}|Rr|J:JemNHGNku|cIuWa퇟?Bpe+؍bկd>tjLj43bӈHn;PRtjJ De]tXhP%wr~^K?g(4;\ @_kchyW k$*g28(_׀.ͪ"K-N'E82S,͊5['kfHF I(;c*h$~)z)+Y>=%${{Dn+4$ޜdqՉ<%<S-Oivj@8\W/frzL`O\9Z Cz>"osV_qg8mxXw6TtKoRVU„qV@C&(/Soqvþ{^EqKSn0v[{h xH*HĬ^H>M3al@ktߓ^%_u.r#ELi1v&!XA&Ux&}^Q: B98ztGz2Uu޲aKs<&S!۵c"w)"C _ic sЬd2eױ0l/bGٳ/Ap꫚H>G`N5^ ];v,̨309M dImv+i)Vn#"kt̮f6yT&rFOxc=ҧPw6.Z;# Rm±o^qwް8,t"':1. HW$M`ERuu5ICZ7QpEpDd^ a- craS1u|y OU2@}`uwrD` /3-5}\{szȈ6, M/@l;mʜ(ESFk ZC Q"kFB jEHNBR*Q ITe[PT!01e,&N+M6 W*˺% H}#sLS`sW;L8E# Nzz*~F&y'S@xvk:R] k hLbeEnMOjI ` d4I ^8µpSa`!{t43҄-z[iHg׽0 gQxH{)Jhim:hs6e/DHZqzq51l_rx!\Z=vڬPR}74q' SxeVL16}L/a=d_oB1}fRKUe41{&ZFvgjM3)<DZᝇ6WqH.H̬8ɒ5[kCLzŪ@wQ[<j`?;w=|"NYx5*pVWh>yi_iWflXK!}yäƬsLMM\uy:] Ίh|;]p6zL'|mwl~ȼ椇65emhGI@0pJ@]N%ۧ8gna׃NIQ"!yQa}cUTY44#'glf&wtņN1[Ub-{i'pq8":P6(QCA< WZ~/map{h MQ g1Y hDU+﹂7,.VK Q)S50c)i:gH˚R!AF-VoL4⬃fެ N窷> {"J- uDVzCd'IZ#:Nc& '4})6?诏8FL kur&p:RqXãr&Ե> idwAű¡{ X1uj!ڸF-XnxO&l_=:Wσ*~)r}0NyOwl\5gO?9~+,y>i]_^'v8jJp8I.74]jsc^dQNj{+9VUlJHU!Sx<O_"{ WBF-4PY\7{!;Á /rCA m[뺭!Zt2EZ&ͣdZe[HlNEU9WȐC$4MjO/Px(Cp;NC~،`9bV+,#.sDCb hH jMս9Ԥa,u£^ gv^q.Lev,VnxosDx9X~"Ecx^<3^QlEoyK:焫qy*lCpY|]3*C%^v{G5Yerr̤= _b"W0r*B ѣ 8]-wyƫY+"E7_id*1 MtvG 4~e_.KLgH'Ox"D7AIu٫] c5=T`KmVs_裶u*Z,ZQ6ba(g[T^H$$6E8] COt{3y)D[E?:}oO<~'|<_Q,nw-!f^ t'Q*qGriUEg$+Bi:t5nQEǡCV0Yhw/(lo?]'Yhe"c6*99zۂ(D'P*'kݥx7\\a5DV @e/JL)w>pqmqG\&3Dxoo 8` ۦ5󕝟>UP$ulGdQX;8Jyth58U:d*=rz iRvL/7vTRrRϏ66EM&x""-?ʭvhmC0FDF-R:!?r8 ;|AKI'+xZ̐cǭ׉Ze0S$ó^ӎBJ.&Y;cћsEQ!UUƞVWJH m!!'uH$Ubf,}S]NL5;bɬ#q&36q&%u{MͶx;%fh+Bz?~ m8 Nxxt7KJ Mv;<\ƣ ~ܘq5`<ikCS|A.{m}hzZ:cV} v.ey|w*, 3w]6F;=:k5Dbm/k+fârdd/ $g W!\h~EgKPW;oӂA;ڎdvKUDWlxl^|(O=onw~vf#:D[6?uLҠ2P[uH@BڲuB EyD>-UwK겕CBh#pK NJFRj~ј,ܽvlЛyt=L[Y/j'}4zst o,{[pKʨaja*C=AȊy (TH\0eTejsSݶKkK,!j! d3^٪L'D[a.mm}lX(2iiP,g9DȆ{[8)\D/Wm]g.h ՟jIZܼֈ< [L>R/Tı*Ztt<%f @v +}dKo2gOH Α' U[*0T~ -3!F?yP(5̇[`"RwE5fmyݍ (ep@>g&<vK`1u=ʘWB;y%1zOy|w">bZuY5ܢ^;Í?_ɰght ;)#;u+]进^YV~pw:ZN9$`㦣iM$bdOA 7Fzf.!!ѣ"]514D!GtV+AĀ|ӎx:/Zρ~S`Fgy7YOL!9 AF0s?uVaCB=}=@b*kf׈=:pe_-"^Sx1ߗCsl=?wtOk 羱$xٶ`X 7?klÄ)f}}3^bMc1}+NQ% ECYEk\m]8C$dF}?$>B#&k1o+=VgFMt-@;ySuM<䆞;0[KY_rC #?w8sy5)%)GTB*cr#N۹L_p;ʌ3L\R>aUM".ǒhWӬ,v4(-&!@}0#&-jPc]x5>(b 瞽#g]`?Q]oQa"{ ^K R"2YO?3 ?>w`y~?Q\ p֟$i/QLAhT19^x(y%ױ^>6L`^g ;~ϪWR6t5oXnNtی>OӾ%%N?2ʔb{`Z-pd8\{VO+sYVIܱq110y7K8X=`Q7tu.os冼lJno8b2^Fi 1 і|v==ʆ^MN%wʟH >3bڣJsCk8A6dtbi}@ė|4KC8ȯւ !IQb*KR,9lGnCњ ޫ9rL/ka(D̀mo;Yot-w6;F9U0h ',/eEΤ<,sچXDga`2(,:6u*ګAߡN JGD|2 +sڄ| F|{Z->|7dfS%Mݫ$~HjDxƝkFM{mad7_1@)OȻ;y ?[UZ-\9b%P]!]+D= Qn Q^PQ L1BS.d16IyDTf}p#u_BWE'2i-P8Sd* ͆1̛ Cx^XwTlj;5h ͵6f:}!|}70dPoX ߯Z!:L]*hyC4`\۾(Ա hyQ?gnx7vCM1jpCIjjHyPpreAvW1. ?cK֜Ԇh #]t^oZQ+ᣋU?"@%&m<}9fS 紪Я%7Eަ|PZiVƫȩ|]~|Zxnpk/KNGRqq9BT1#:WB, !JQ^Xx8^<02K(R8A-EF[9zf" }h'M%aﴅhaGt5; LmI3"yo,Mp2&!Rs?uyAuצzYdJDV}sJC&r?ɨNǭO$SxB̙dYa_B_"e(uܬhNcGHg΁#VqNGXeQDlо.8:5bHcjO|tM} #J &޶g -vaŇJU-U/P?A?jOş/N"a h 4NH~:{7yqm D_|ϠjLweV4#e{>́vXOfny̔Ӭn t&dcqUPV::mH_Ȉ(Ū 52ԗye!PnG0[;z\,9$~mA? ]2‡8ϒއB1a z:SW=_ǃ36bV*TW]/6@4T8 ;c7,U뵛ãVW@8k m[kq*f qB8ӽLNE^_hm@iP+;X7Tx󿑢58F-6#Q_ɱCJB+TzU{SWn&)Z!HHu*`~lF^,_s@E1k>LhosNKbhڍ(~gxdGG2=1*^%edA;!y ͐I5ə*‹nzW" ֍ s)p>If#3,,ks@hd%|g8E]HTw!砑7 H[y\r~|v}]kZDmY <'1 2Y+:\TTq) c6P<כþ ǎral MZFyN]zuK. \ֽe]t=se>ɝ$>jYm]Y WXeⷷc9`Q+l φ(*u*`Ix<=XǨ5?tW0o%wC:921gTX avD U.Ii r | %#RjY{ST؇y)3 ]̘; FO"AcA!**vp&E.O ^ OMW-Y#$Sn4\4c!x$&G|]DP2^_=r)[J5yt`(Lv{jE.j ZTR{C?Jkw:u %|yO }1>T_+x/يoZ#W(MȉSO:S庨EylDff19sj2`NJ@Rsvɟƒ^v9%:/o7&^$'!fҝT7jFK~׼Ta Cb[:4t?.i=#KaaZY?/38gݍThI:XL\dlwkA"ғ*ȓҁݯ/ =<|}|1_FsPҿX>(bRn7kmi㑦 &z_- AlCgēq@>;l 2}Y.PX o@EEӷ}l<<+e>(<'w.\P܍v~ UQoi m0&59ps4bjspNx]W1 tɢ ")tVҦ6^W( @8]RwLI4Imm7u5OwE7~TRԖ24wZ.*_3Ǜ|訰x5H袡Z^GeN#nPFW03Df:UfQ  [ē5ETnT$n˕]:ʤQx }NErO9ܺ;˻+k%&!dl |%.{`w蓞bG7mθts Ι3䡻|gsϘ9^VD. PEN|#ƫeC]37m*S v&__ 9 8Ėz މ`VXMMxdFJX%C^ pٵn6c 0VG`IdA dkaa c珍LA3s5J_!]i8^?kB:߅=+ $v03ǂCQU;y?]T[Sw>~ Hw8,[#۝;9#9JVwC17 (mo;Er@D2Qb6Y".Z*@zҤ "@"Eqёvzպ{BL?tԒ# [w8JsQzA:-CR 0e+wƯk?$\LJ?70#3}&TNl-{x`|jТQg:eqE?=_$Ed,4#x-3p > x6dienE&g8j(7lU]'u]>.B`\<ŝLPM}?Nt!dѰ_,tł5N˙h;v!cba1'S(B{>A^NԦ0j̀>Ki5P\L 5_xKe>y7{Aև5k ^|9~S,֟Ƿa? /]軥 ^7@ NјF) #_)J޺飥ܺͧ׫!G5CKH-pӌhH Wr#7;IJC=[UnS`0yRҞq:.=JyMYnz1r%,jTn 4Ne1Χp0ԭy/~7@sܐ)2idB:n)XĞLݚc޼j2w :|֝bQHLUD&0V%BNO$[qQw_n,U!\~t.^ %s33)A NT'._߲_usL."UyŽ-8ȴOgPevLd+m|8w ПbWm7 #?:g+Kb? :{As>LS56D6.]Ssڟ)p$N^R'KK ~ZY@ͭ?>ҵkS.@)\R\≷VNB08r .>$H׶?gN0x\*ۯׄ g=N' ]%ch56/C# ̶]ooCaؿE~+{|cCV?g&tyB<7, H.@94,3+iAP. %<6l .iq5Ѹh弻W!M&alXn2"у'I_<)jm`@)aU PwQxOV@U&LwdMSim{̫Tʻr3R+m*(!yh'1TMU(6ߜQUXDQqIXlNrZAi\8zc) ̖7A,/Y5PV,ŕb~W5Rb̚6襷/gôK3N4.#@+=L_*IgeЌTiV^/úF*:[%VeL|ĢU5< 2$ZWaE`$ذ0`uVkqC-r=?j<6ڷd V"͉Vk7”M\[LԕT wgnqB`( Rʬ_&͝f|q;NoCzëJf}GV;;4):?ח]o͓Yd"P$RC?Ex&j,/q%Y;qv^hit~1Z͌ e tvf_ie?wK'@tԮ*ZDR&冷9ӛxpvxP𜆯?6gsaD먠4UUS%s G6u #х3_[FaphzXL3k'FUBœ޵9m 7&dlؒj+s#8fA:=[<іX(%H(AbUR̮ 俆c?=::sTyE[s mp.f]I^ c|Yz*"~~ꎳR m=M;XkzQbG}6 c]mUM*XvKt%=;6=閂3lw8 ji@r2/Am^4kmÊ1i`?Z{zqe}f:vT#ߔ&GVbALe>˿C1.DµT6^)~x~qZFofXI/Xݛ[2%&!f}e}E1o\Y%вf^>[ :F+[_ȶ}-PF +cqc!#s`BjURN'UuVxrhϭR1(^y2Ez̜)ֶTHo3]CWŷs=C9[cu4JK;ȷ(k#VN5YWY""sjOUEZ&z=ĮDts n 98wwW{ѱ=S E5 i(*ѿttY9 .k x(f DoQ/NIڎXo?,?܏Xws%)" 4ujt*/'|1tYoB  SR483=}3яȵ"Rzq ;Zr܇AQ.bgݥ%ϞS?LḥϒBq 0xsfU357Ӣ˜)^팅-%nLVldN_dAJ}oWj#t)o*v:>vt%{DAAD恭V#*DE 0 煯`rv>uN%/"sZ7cd+y'ثHF2 fXbPB9iѾꀃN -iSIR!yty82̘lC}ڶ9Li!2$%M<\Kiĉ\^-]դF$qQd0h+]!"/@O[xm6%ɟtRCD$S8wj&wcKB ,j]'~!<qr9-:$Tf`nGv"ɠ 1_OE撑)ybDzm"hh &mZ0*nRzM2,j`v8{{vgXμŲ-ĉ` @ss ~y'ğt c:n4r<ƞ<̲뀡BA@ZZsV ڒE>rB,hڂeo'9$,+7QP̯lc5ǻM=$7j\Tu>U&(Anv~d A皵M5SidlǎjJ#oP-K%KndO__,Sog zy0<.u*ň]gn% 0=Kc6hczӬ(>++7]V(jO|i SʤX{S1xȫoC`ɤaaif`i+֣"$'?iJix6DƥD}:d ՂEdEأ8(dK> A]U[:-K~mSErWw Ƈ]g̵R:Y@4"$@{âWL_iUt/W89 E * DRC߷$V8][jsN7~h" a>eq.ðlRcu!~7P@zUjthcSjy[ɫeEO3Goz☲-1p{LG\W HͪbAA=:hԂ Y4#KR}sHls,H؞\4bz_Sfh VI7t! +=ͺ֏[9tpthdGZ3f647n&-Р6o`ְkMRBӇX I<)n:Z]MmucXYeWqwӨ-OgFYvq'E&Sסl|s~WčۭѺFTCSh1Ӡ!u).J]Q4 <B,^W%Dp;길RT "6QOdBe;IZ& jOp4TXN>N¸6_Eݰ:B "+>L"H9OX[$mݸi@8GؘCj269(щ[Eˮq|"|ăͱw@=1c'at~umdW{2g)~]bn]ks%jV5 ,uE=e'GԅQ lǑ7ػ]_ 2}&z 0֫1o>Qߊ-pXUVn,׮Epg2`ɥrvF! МpH@//ݼb /(oTi N0Pmivt.@Lz sBx|$%W~k?P +>lsz1ߔl{g5K2pIM-vL¯_DPXa(~m#Fq@iຟQ[܇ʁ`*fulޭǒY&p^J]C 9'z9f,/叧E *B@(FkLɏCFlaEK۾ԭ)7\z9.ĒX>-hw#|Ac_mv}!w*<lE3/gM1oSܽ9@BTϯ WOTx XoJҍtP*Ξ# 7Sן ½q3כv-s9_nM |yf+g׫Ș p.gI7' v47YA H|>9)&J? e,\఼:j ?,>O<#kC9sf̀}D_-E/P{ɱ\bhQ[VpbDwZcAOTaqt.f8>=ΙESCUA1VFT|Y  LyfuZܷL`oc0ca{c.A7lY"**L+|kEn>q ^'BXGyrތ 4lHEų~5 HH0+%cEY'׻FdHV'ìL>6]ѡ/h!1muqLԒ/Yp4tu}G `rшKu7ac ;l;4ZGjvm:b׷~+R+b;YZh3rb Ŭ p&BbQm!zJދl*SlRϏYtGFrI;1!'LL6;T;^Z!3OC 'I_U>Xb,frUSPmdT>C|lW /lqI24^ c]ؼK~Tim@5yfi4G:1Eru8X/yB^aUhA]lqށP_iT# S ŏKbF]޳Ÿx:LH 9#+'6ik*b/tQ]nBq$y+g89ѱoJMM-PMjhp_zY^13]MAsjd.#gLt-k^& \LdtT}cM;ԍc} CX7q!\< BubR-$eH*Lg9|4_ |'rog`M'Ao[OehzMXmL8L{^ m{7yC,FgD啰- _h[g`k,D^N%dly 圔k-K/Y L6 )ܳ t';w١-v838^EGsgH#"xj oxe ezZ&aqvCX e@9rx1[*?ŻHMq&Cgkzdޒm=0a5Ѭ&oApp]7(YiVWv=RX3`#,{؎mdAH&MMII7v9G~޺D~Fv4B|b FC R$۟-) [I6\F,E7il_w-e1-gs:t+E>:L_iQc}tcſL6sTr ܺu+"̼dr#EXAu1->J |;Y[ 9\$S4OƊζVQfLaSjI=P3[c30gzW̭85l'BH/# Q4oٱgpf/\8BHLOP,N#Xݷ:}]h(P3)|YI 5Y}'GS{P+-D/SCGk:o3 $}4 )F8rez PviB {g^ EηkrӨdVwj-j; FLb69|ddhMt<y=B^>3ȉ`]9)dsv[ #ΌQ!KHm$K7IbuhKNlތ:< @< x @ZԷ-k:'$S](# 4hB $R95]ްr^Yk9EW ]jw램Zk3#uEQ@1(~ +:(qjZ^$3V89oZ[PgtcܟH'3,dxx Agg =tUUƌ2 z|UK7@0;A#&\d~%rC&-̭)Tݷ#S.hL}Zս ,Ik)Sswn( 1:@pؖG60cWK  jR}:$?btq}|qm[MH'ǧ2(`\,)/?[&dQq&I\T$ChwT(uU\7 JЁ``Z\LM-- $*|"Y"Us$ԋ}Kz^=NݒKC΅Pj+y}[9.nLꖸsp-N¢X-Wc|B,fWDi]x!*~wKrn ݊v,/U׋~)>%fuHBy,5!XV˒Dǵ`|zt+WҘ[%dlmo6ϗZn3VE;ςF MsEcm%9 v9M'S?Mh 9]Es`Qa"2x;1T$. c_A= 254H_6?_91HԢacF1!ϥDe2 ґD&VEӑhL I=kU"  XvQFB&uVt蟫GJb҆Uc@AL28g;E͍sӿWnw5KWQR'UZwܠnS$5ffE,sX0gD^=k>-2SDԟ blib#0eZ1 O)4X8dЯKU \?č>XvtzM\dlj{e@mlzqf¤z׃3 وga)6pxT\zu.(ž-"Ox]LI?5^0I>eTN7ݵZTm$À ~[Zci(>%-NL3nFO ( I ʭR^Ș:F.Xk֟հADڭYe1:VL<~'^NV{/xKo vEOx[wZ?V Ez>v/TVAbG2K%d,.Сd@tҤ/,NwEH(B\?7ʧeGT6؂B!},݅Re( >^؈ üf&p G:K~35P(>N0nO7\#T]gDzσA8o|9fL4xjVoxM'2PGbH@Q|>Ѐ$ k`WL.d9+\HX[\V ZacZB܀$FADr˼@y:My ,~ n+W  |P%71E nBQ3e5 SfY ^v>?,;JW"$Q%u0V zoUG}&&& %3ODOS7w](A.RS`:$vՖOXDՃC }]r*}Xɐ{ahK.rq%7;Qj,I֋"`a-^"}\U_|UkQ?NZ\s(!0 SKNE K/7:ô;,1߲r< v~3&6'y7t:T^#4 tKrl6ZuG3үB XqGV+[?jAmCFP&F+A(?Bn1I Rכf (N;Ư쉢uv+&®\w[ܘyBzs)|0 MX+rSQ[INI$Яn<q܆ѧs7%BqIZN Z˟[%YuN|1-+'uK2!N OžX~Έ=Eef:̬#^H2Iзa&Cs3m71!ћQ/ӹ;ZԬr9ѭO_jJBcE\DCHa=tg!lI(Ŋx ^ºޚ1\I9N4;vefz,/**ShXuH:#m Bih)X{6#<,P]?m4F,ۣqDc iNE𕵺Z6؋w9>bu70mAZsXsVym٩& 1u.w e^^ j8T㍻%U.jJ *V>Y2'+/1rjsx pAɁL>0X^>tH{|UMҧkPʼ9sNᅕH%ʟ "–MWGwpI]E;=<#N9ىȀ4-tS]t`iPQ6 8hC#lLJ ;GȏUO7>.PrIÄE+CQ*L"f],q;pmXG9JH5PA^+ܜB /&{$#~l㜨hvr7@ PY!vd|ԊF[gbknЌ4]J(DV3't*5t7@՛0jΆ=AS}TQw/;ɉO#֝O_;>lX0j|~{ǥ*IqizƜCyYu 5XbsH&(uP9AK­RBL Pmgtt#z.chLijv_f٤8R:" 5o "d۪%H|,(s}ʉef6 D(bŤEX>:QHg-1:DQOw՚^\׃ ^leIkt-_c Ueb$ۯz]ѿ홄|d ;x^95Up>=d@$1Qpme^yhFU[T/񋃃ZLx6 7oޓ!Dr8i>sYoQ|j%NI\>ԇ"xmQ7x 5a_LQYu}8ֻ((t&[+A/ ݉tUS?oBXo]0ەN_&+ÔafԃHCj]v$$,.cX, hLET^|EM: 3 LRPrJapڪ6amsWN= \qzF+ro'x0ϰ64B|oI+)ܔ pN{2g?v&3hZ1]_:IJt;V]\f[<&ieIÕCt@4AFf '>Ec;*aC .OC݊W b6֓hNw>2j`$O&tu3] Kǩ@\x"igN;c`i+=y+?8^~챊UL0n*g?L jM͓աl(5; KqFv (!Ή_tHO14be`#ID Y>V@/*u<#>:W4M'M.Xo㆕SL8~IUVfޅWgvqyivj!!$ga~uzjғiHٝ/MpOroQvT[o!yr{pR*8PSܐsyߣ DW?BXdHydks8x )s7b1 \0P|3Z v"b+'~>qLLb! Lz'F@<@2!a}Ӈ0^rg-(͂z?2V7̚jӕڙI_)0kT;gL>VyRhnVsL-Z3Yq]ىz&?l70?3>u|(pVT  ^gѧmյ峵aJ2vgTf_P|8SxK8s|ƝN6? +#B^ֶ4o]j2?p ƶ9 c[[euҍo36n &pA ;BmȔ?N$Z X_JJM[2oljBO;S|M:人y|dK"vcF WApPxX`Kz㶀2o̔)sҙqՔ%U'S{ h,H6ՠKQx={J6V'hHw^K0\{?_ 0pK V ʄ>tNˏJ.5qt>^{s[Tbɯ? `;Q衕xlErjg-aj5EQ肋w=T߼5|AIB(TMW0%<]HW{Jv(4]ZY3y LFiWi1WJZX8zUԩ=S/d|/2(Gvw[s$7P]oeG#`&/~1@+͑nqY-gĘh,Ꮣ%a@vzUMJ[W>4ϝܣ/xn-/~G#_V/F mH8>mCй%\G}-yc@ 6p*̉6SCהii fʷC{E $nPz72;E,ơ9 bhУ~a-4 hx`.e#N{o0Dz<XxLiL}S Z9{AMKе[HP/uf$cgX.-! x_rPr6JzCV0A։Q%,9 |4*{@^=,:q-U򗏢ct>7"I)Zl ºEWPYL. PO]ە`M17 )DY{<1ǔgQc@n7&6u4Գ;181LI0:&/֏CEuh`zeA' fio~2WʊZ&he[yPS2d&.P-Ue}KfO]^8ѷ,D6qo X(FC %OJ5?2qzLgY]D^{>)oٳYʅbʷ\qh'ZA5IuE5ٙ?[oVK[nw(ok  SהbFЦQrŜmh_`e`dy@r_]}tKHG$Oy)_iW+B$U}2~L5x AV6=*nD?dhw\tT&S= FG8k1G @65.X|c(-Uw_+ǹogcFrXnZE5<ͿDzY 9^ys!(Ŏ$ s~tkSltBW O'uRT=o ghO;ijԘ u%U7$[BӳQG.Э` J&Ea4oDħ:gL ĿRjS0d/d{my+TE#ݭsF)T\8i#Z5j~ۜ% P;}NGK1QRT3ӀKUL0DnV9"#X5k):qxY=߂`ᨠ쾵FjuӺ7κ[+ hvh|UdՐ%w8y.#gFuX۲p=lF)JԢ+;0gbwG oU:%YdmI 0C4IAcf[3ɜ7<~`Mx 7i2πI%G3s0ٶ wW_& Q;DsQm~:sWrDTnFôZ WORv k7}:M\)Իe_/~t~,s*%s/.NE ]VDbZ绀<vc(T%+H^mP3|p_'#2ݷtLp$n2PV_.QrVj3?A|p }pĽdCDatF @J ջ~EY2 (Vt9l ~嶙ZNƸ WyYh~9;%a+i@>t8wՑƖlb{dIӆ~C%iAώwSsD"MB=(F dA%ڪ @4P3UtrE 1 iEy;Ysu:E0y{T%E(TLIȩx>U2aK-i|/Vv ž-Vzz<,I+a E\Ga3xΝ-Tr3fr8=㵋ҧO( eֈEB(pٳ⊨Q7w'Y8I?^k>>`F3ZS^_kWeiPlW)k2ٖ_vi([J$Hi,5tScJ*9tH0.#3Q@t)p;\eZ*o.R0QwVPkwwf)`WwIjU/RI 1H0~іhwi 6ӗ C)c<@~e`GO.LCdRZDŃ]l/n"#U6X=XHUs{USx]6"\ÌLж>!VPD { `jJ\cDup9Oq]uĦzctԳ3}&.vV?RM \@rMo90|O'yQ]!|!-R~8DA-ES:g5L9IbaaTiǭ*'%B@e5s$ѩ9!n+[V+z+3]:Uk Z{ŃHcu[=#T1f$ڱ͝& ]aRt#1ϙNc5FmZ*}nQ*}2dc=5-fe9^}ZCOM>-8sY:6]=]:x7]D:0/!Ah!m(pRkͮxhikQ`%8gK"Eޘj=2 ͂ z^5&fNaF+}=i\ g>h~*:[uMyt`S0bN't8|0瀦h4UԢ>_~BWZ5Ġbqc-i&5LWbwN IVNZ`F)ۅoMM{ǥé*t?ܦ'\I\Sa=U'(KSe ;T۫ TY*1Ic;t{A0r$> 3ۉhjG]ҤGQNlvyurYxxygh:ZEQ 2]ě@ubOȼ }eN-3Pak܃ 6 ϥ̵!8RxU*'qJ̽_MŖ5}mlS3ޥٌ@H&; /S>ZS#Tq&m%ގ oWg>D6N.ڈQS蘄ii#;6v"%E@7$YW62LUkJD1ZH.,q۞u`*q,2f%J痖mJ/ 'zep M@>ˌ8adp"f Ͽ;qS`t|xO~5L7\=e^L-#4̾UIq( 2nh>ʏPSMϷslm9v/=TqZsHe>:G2j~{upJNh*HoZJ10b?A,I2HyWQ0fQȅ^&3-؅FS>n;TNtX15І"[V۹@ :З3[sdփ3+Lг-8[ sa /{DS"o+'5sKSIÙ:L1lgdҔw-_{:V8/Lvn40k4Ϭz:' b;QԹKMxS2+4p ,F,J@jT/bOPŷ>pJ<XcBVʔF^ѬrB^`ays[$fF<[$nJ,ϻGqnTh#XRN R'_x!KtXsCʀz?Xo9fA~CP15HDF봭xP@8IH`avpMwpMHqh&O`0A=4VzGPάx[Qew݄UT&RMn/y;a:>4d[[z(W2b=բWjq]ZڌroZ^7n=w4)AqӢDkkz:2ÿH3vC$#V?fhQ! 8l€!>o |6H?IwNeMX_Xw^EQ@ʣ. EZp^}) %2eu-9W=dI ݃`)rgHu-׸VOp<9Gu=GeJ:aJTjP~$o#Sf!F%P*sT$X{RY>Z#>;]=|H̠ }R@Y,^)6NtF[cG`Pq BV-`8 :w_oM9WLҳ{\ANF:'p/Vpð(r]{RɑTk1jW vw 2yd]D~l.!w[]O.ꉠ$ML` mMF٢Xmg@Ia׈x_,ic~;S[j>[iLo&7~{HQ$omHT Bpsy4qgL4Zͮ@ l Dp.HN.FvR56X9VYdfk|PS$Ak#%uZ9g0OΠh/28R"Eqdz `Nn*Ҙcp5e- ΉS^)~2l5c)5;$ևXtcp6:y3\ 7m`8Tr|w.c6 sݕzGؽF9i".dr6ƀWL: ;6%f @E׿^ :lEV_̹IJPf@3 _)SY_rQ ;2UHih#3J&Ngd4\ڼtS]Ⱥ?=D W>$Y?1_b: L*D,Зcڌi*Q]KS|}1\vc 뽬'Rxigk^wgR7XWڰh'-kTJbM౷! E,CQ?܌d"uʪ^EޜDx~h֢co.\"pՃ~HٟEeK:k57v"ٗ::S"b`: Elߔc^v%?a:sPÞ#R8a0Һl݆/¾B';wkjo+?b};P$vU,@|3~ F2. >`X{Տ { ^cZ5ͷKc"GC῜&XЉ.e 6P]d.aC웄!Sbd.IRknrz 9?ҸĦ=A!aJ+++iFW}2lEy@۱n% hz2Gq޼7 y'䆕=8֖E_Z׷X2Ɛf zRŽ~=n(iє7$.P*HˬCECXR?%8r-0DC7At.-G9bVU  %DЂ ѪTwO9< 2Mo.ô^aHC@moHe \X'1/Lޗ\)n!}K2-ë>AUx$p,rܥhZhuo^0悋 F6,TTn;Fw{bSe-1OBfhBc Y'-5BRYuX0\7 ^y':}$>>4:0:meV 379AL5qj#GT\!ըgې ĴkjϲM„at]{Aw'g̚Xa-sAMcM>R-*P`DQޖA?\I ޱs",O Y}>llW+(2Nn-Sۙc]Aؽ4_K]m(#Yd6!]uYTB+,Xy*e!3ȬhTfǬ.~XL ]uGPyZ!o}؍ !Su/s[FOcn?Ck6R-C A՞=0u}^[e 6 t]pD]R[w[,HаL P0$ $ ܸ%ЍGe8˭""'Gs4,/[ {1:J4Zt -;'y$I&bY#)tzu{;`J;r)E8!mb ^XH\I4CNکc4hejA&>#4kF~t:#S/t|l-ힷepsn:'AmH"UYIb}( ~Wug_~Xt7B#9X1 yQx9&p 28I#縲HE:%@wn붊= 0{"zhIL"`*nVs\e(EZ폭T&Us)fk aWHGP̨@gs ?t G\zY('GpmSi<12.* Z|%vY5,Ɇ[p@ty|$AIL+{Qi2qxBQtKחYȻFh2@fBBɖqR= ,:M49L5Z?ƗA{ 3=JHFw$l qf-ZoW&7"a0mK4rK%"WTD.48i⑕SJ<%Y3ͪZ'QH47s'V"X`ndZ' pY€̉rsLA1g+~I쳪 ľY V=:hV&fBuL,$^;U bQm&˴L3A)PAy*E4#·4ђ1@(B%p9Fb[[yGns66Liиp v<~:3;YK3ƻWg_;-fZ7-YL~xNY=&Vt:[Ֆ")j\#H )?PjS'`6I۳Tt&xI1'tgR\' LJq )܂#7K}6LNG7[;4$JWYm!n W۱ЯLA JGWQӞ7wѤkd6P~` o(H$_)e/Bȯ dQesz3y+tN!+Bw-k2DAlȎbie 񙻘G!ZԙcA.)| Ը7VsP/ 2ɷ 0]i-ㇲ@(kYm!֫+HO z/h TaNJC ģʭo75}!}['Kpc$ǽ~0Ann|Xz?诓׃g` "d0- (/A_UM2ء`R5K1%7et/JiW騳' A^:2c:E0S "_ P2 1Q6CUj*w" B^ҳxߥw`XvBMu(x"|6yР.Wx.×KuۂsCz$@(hcY8UtMsymIm?:=a4aUd:GH vPj#"hUpLbyn>QٯbTiЏ~]ڛBZٓ_YjPld€HVW+'Շ9MT<ذR#ƭoj1&U(;]}ۖP:Qk>Ƥ(ws̏3.} (IBcC;FQ'D:q)E8Xm|MuV%&!fm; <>U~* ǣ pnm$faqcfՠD/O4ֽfR(kw|5mfÒ(=|u_b{mĞo<=cm&ʩ1K㷞2P9sx`I a|ώߥMz6kpk֔6s!Rp>>- /l!+^u@m_t 3XJEbCLNGI㫗ehK;*c 8R^cWhN_\]]i=6=]JKNqqZeWs7 ( J;Q-Gz/MkAݩBs֋e}iiDUbpV &X{-9'LAXHR"c @9F@*謿7?I#Uqi6ًAK{[`G)ΤsF T%o vmԻT;chx^bTb魉\vؖjČlqjҤަU4!AmGW+TӍlYƣtl k%pUX&Ed> P8 P;7G?#O]ڝ62 .LVMܺv{,NUQD)jз6k`v!RP6+.!âͯ NݒCuK-y^+(nĒF:cəu<@M# ol BU^F&*Mg>H[׸jCsjiW@*rK8z?7SBa6t,0i%ޮ=O:r #>28@dϠ}xG:,&UC<;OY@26iza]=a*Gv+ZxZ>^?+U6<ޅQ?qKBFǕ$HX˥ g4&B3 zЬMr :N"a+8wUlxHJ:xng+/_U Ys0Dey5kB]$]lH?!lnjft$\BCx/HtyA/FS\阦!Z  Uͧlzx+iXFq`d.&ms CԂJ$7 }(*kf܌ EDBŞGߠ/䎈W5Kz#DW[t Q Jq4jCʁ/0P|fҺ% [qE_V3)qԨ|f|$B2CzGXå8*sٹJ8@L cn- pe#rhv>}qܖlEW]G_gs?]n3'U2`Q6Gaq1ی3wn5ށUlJtO\xdZE~H16Sy4\0wzt5oGDÍJ]QQU!*92nyZ&;ee/Iue|t

p`@5`*H O‘K'̋D1O<1ҿew3_YVC.)sbZQL9VM>e-+TŞ 0ڥN!N_}NWf-6E.%>Z3֛bͯFg)VLR`ECɳt>o"}=SfȺZKot mHvrT֠8WFeު7M~@~ۨJݪI /@4|"l-x2YB b(J-n%*"lRA R9\ y$&^eCFδ$⣟;Pt,RWeMf8ǛLO} .E"S͜v ɶktRի>(?Kv o>bJ*B{FҒhKUA \'Z^%H 2BWf kpuy)ےqRg?2{ǿ)qOlSJh0+酕ݢiұ 2gg{հlC(jZߑEf{RGnD- ["ҟ7E>H 30MD ,Ը-uM t?'pU27wөZ-ddq!T>o$ZwUDB:=rIC7:[=>J='e`r [sGQtfwatY'@BX|+dT߁>$噪_ yH?_L: q~UK7k ~l%"J1w14X Ϻ=Rhׁ>Ɩr)ZMkϯYs j-n2GBdAJ62Fjj"C) bSE6 v[G^{\1YXN'Orx,3)Q=>\*}zޭGiH`U[5_nRXc9_ ](O"2>#p)_*_G&G#z$g>P84C USӍKf4^,ЉS&@ni& f\Щ %3$PdN ?3BBg O @zT;Kp#4_]Z+鄖h^#z9򷺜pt%B]* s,Aڂ\n^R`9Ƀwl0 'u]/XgH,㜆_[٥mS\B#BJv  n>E)Pޒs}px+_li4HFӺq Ggɒ[,J_.* ,+}Ps6oCu%t (i.Z6π <Ŭ(V+ esG{/;Ld(h[)@E\| *nvT!qO$5=9S"U/Pw ݒfT%D%2 ?^B' 1L}Bi?w+U@T]f¡#߱|[@<:ʹdTt gua寻v%[n(146bS yH6Zct=p 9.7J=G&/T#H`a uHVPh@sk=_TmWh',#9"lʋp0dг"䳴:һ?TtpPa0؅=jR$fSC7l ~6/jxr-:fe~bA8J=\pr-VJlyܗ1CuAJNˆyoONKώSマktkK0qkQ.R_pfl*7¶-=`h4MI*f]Y[no7~T'j~p*o7 6%!ތ.\&0z[ 70@$~BGJ^厰ϱnnE&\9kC#d暹*H|rnz:T;kj`~:~B) t0%iޝx(묢Q.bZQaL0dC *ƞߣ7@}8~^v4:y!w_ކ;,Y\ S:2i-xOnT,:Yn q)_>#x!$?YD:o_SE ٙ>ُ1?&EJ"W!YN4BrQE HLpM)Stm’>L*O@:lp^=](+z.7J[rحƌ[dq9dGKMLaV|cj.=z[ KJlr&w6O:?ٲn嵔J ]L;HAvBd0=V][,_d^kM.Лm33.zRv%u |@,*MrTsqd@)BG5j0kn^8csH^gᛪrd]-I:Y,e&`6?zg=D5 UKʹ)p<=a[DUNZ_z`uc зwz spe'Q4Rl=O:}JŐcM2Gu a1x;n9=Z,1*g(>m<ؤ[y  Ծ coߺe_D47{guҩ,+I$DpsƕQ \F<<Fz haK(O-=K E]}F螰;@L_j&!z r੹ЏFQEaHcn#a>)? łK+.};~U{',՘kBl%`y!]n9]Hs!qNE*#}^$b9Mdn{gsA G>GCvӿfhm,O3b2/{W`:*ϴ:c/ Wbď`GZi @!˲A(OSp }2*eءLWpa\;Y"ZK%`}]-}k~T}~aFO8KRg^4d]ӊ^#"HBߏ<:Ls_eh{|=-+b#o_UnQ[Zo O5ߣ$]HփiH]Է|o9Ъ2>$K5=C&|[,d,)j}3H1V$G C$}+VJ1v^@CT*&,4&^DsN0iZ#~=fث1F,%r{!GJ-Oj boboʟZv0JAջ^5X4t%I۫a@棂Y!`#ONd7!-J/`$%%@#Ęl-@7憞v0D3BGHzߍpf3Lɫnuq﬜k[NalTrI% (g [V 0=K\cJ[m9$=~OHo6q~NxQ!Tab4hje ;v:xQ>4ߑbR$i Mṵ`z3ȉ)#6շn`I(!jb"/8"QtGa2S<\`2o Cļuoo@ZZƬrBCF{]V@9Xm3_b K Ѕ'0ns}c_ZJQ y҉ˢ0. )J~ܓya= uk&I l~AnMcσ?O>4kg\C~+5E+>q .Z}FҶmӳF)>ޤ/ؿ_&KC'~~Xyg`ڒzi0,JC[Gy 3Y\3!46at>=՜ DS=`oouv$HU}Oeh oB%Ar]tw'D9x㙸sK%K\JRB'ɵOutZ@Y9XdṴF[S0/˫>D}0dR@R7f'<ɮBPV?C2PnZߠ2\d> [L%:4Nzd<ȣ ؿgUT@nA<^t~2LMZuk4ɽ(0y/]@s5Qm]v6Ǵ>ji6 rDpu*s0rYkdU&|{?$ }] w˜qKě Mk.F@RA48VX 9]# >2͞-F! ;뙪 }I JZ 6ln$pƼ}93Di7,_9F= 5DO@Vm;0[6;} N vnݽ]ժyS.gV>{V53j]sOM`?dT"$%XKKߧsf^kz}µk{:Bj8Ŏκx2 <>Y.?d0Y8vIN.X0aqP*-Kh\lVz1{^5&h5oB=p(лG*Zt8Y_G-78>dР]8[95kD| \RS q2奯Rg@[@н4-=. ZBl ABQ?w@EW.3},uV~Ml߯k:D;&Xhn [j`_gJqJlU(aZ6FZjBc >5}gfk>QL?Up9=ɋ@wb &.-g`߱kp$w-}EHb. m+M%֜~[~<$!LKSzH!qAg71e7iB[Dpcc(TWVl/ʅkd3 2o <~3:Tr)xQu9 @j+.MiӲuvyp'"ЌHLX-to,|,)CtS yr2yX3~VTSp @Ǽ7VI] onvzh 1]ap8%2sqӪ֪[ ƅd2 lIGm0ou ܗ.(5Ol<t0W%SL .x*.΁#ГhK#æ5M4`@Ór>N4 u%g`,Y$G=Gr` ZE?/ٳ+,h.]f>HY])i&@%\\_\.]|!7DSMr~VxLr$Ni;*> Z*0|;`SDߡ\U6Q N{gEg@Ǥα_l1X&+#^p5ҫcۺ706ӊ]^nY\1 L'ɏH\^cv);UcfؤF'lVTulĴ{/*<Ղd 4%%;d$]{0-%&?NC:PTgŭ8rrй64y\ ,!>_p!JɽXZX}VuŽXw^yx -`QO2#90_jHx^^{yOFjZJ͒^30jEGl~m9j\|U9~0R P+Ҫwk' b5Y`JqgKzRx![H>r(C ֮ZL}bZaGȫJ/Mfwi _uU%p֘G,2Pƴ'@=̂(9\ߌ[vݯ@\iSlQB_{R?&$&)Fg%07qLa؛SCo=zun n{7)&TH_+{y Ioya#I~q[¿Yl8WxdĽN/G;QtsRE/ $@ܾL . \9 bycENNA>t}u5̽^>ZV+%WF+nPC{#炇2?縸r9'#]ЋGSB~Gut"W* #%ſ &s|hG^^v!Xp]f֜^Y?eޭRmj@?TIZI$$&e`=>1BnnYSn;,שQDZA^*sV%= E.Md7:Vٌ̨yh*y!_yi) i_ J Qh0R'?Y&Y+ yڠstQ EXq񧎳|K Wǥ/$x@0g6b@OOPD* ڥb}]qybt_GT9gF>?ck2Q|\y6Egju҉pW§Kn/05e˹i_r<uk0=@G.4|7ZqŔ1N.ljO;(W$wl\"2lhJi XQG[,.]׺ɬ|A?g{E~_b_K?34.w;ˏ}̗p?%'"bppW Y[}P^-c0rmC:5ѐSt Ӫ|Cu3?w؋f2»7z a AJ  LӒ$-SD~=ցZ&ɽΗ#4aNbcE-kqLR4ion 2HwK Z9Js7HzA'V E9 9.v-ᆩę>060Nk|_x)Iܦ |$T%z6?;O6sJ1*-^ÄWU:(ĘΌ'~wP>8ѳ`p}ܽ M+>m{P,h “pPԸ3{:M>9h{mpxdi$e5m7xYƃQmc7{UI*ya iSB 7H "%r.k٣%<"™q< ZU`'|~Jq5u0/vzVӴExYƑi{4&|cԞgΝl6mgFEB4#c2Yk69q赴)Lя:uGoH["l*,6 bS_C lو:R|uA]6!˔FwV&NTfHϤv*Qc3V~f-^s P !MUiepBF?q&g)j^׹cيIczgYV*TOBڢVD}9FN^2߫Uzw̰6oGݡ]:ќ, H虐}gZ,o~I_͐Ke!"*nAc_7QtV6j;hEW9Tr@|V$kBHz=q4\KCa[BPLlħd v=7P9O1/ LVRz˻0_.~^|O^h(D ,'ta|Y^38="9 jQB"rF&R|t y"gmqCrE!^: 1&YOPǎPOrǵ@7{nJт8(G*Y]>ޘRӹQbI)v $ O\ď9P>k$2C@+΂ש,Cيײ|:`@'-{\ \PeEÔ%/CN](ׄ;pGz3-, L&;I9AEYD}{Se G{u#glz'-ǚ<>9Fe>;p0d Hy: #bOs_~%[_K&99YՇqy#I Aڶ\{rY. (tn/5}24L5XcC=W 'fln`dx~ICu{9MM HLL[2nώ.LO1::Ta_0¾[3J6;b7BWCnB_AǍScg}mDc_TJ}bx1Z:SR+/e/1C-9 b\g8]2i=2+LW$bHl6̟'#+m=[@vPɖ^!ĂmNxg;ʤa>*{qzͩ}0O2W"tIvxNӏtoMnN;Goy?@rM@:I1h"#:S9A8V-M+RDž4EN0zXyOuP:h ޠ{Dsf8Z(=[jF5ͻUZ8%N%ctW/Ĝ1z1] vOMU|ģBSpΰ$ pXm x+l"[?u^.i{>B>ّ/^$eWH:=zq9MY<ڝ3FMn_u J\"k28W'ՅAe+;AU 7uؽΜXݬЇH։7/}떢 =zgsOJE gz$Gq%NO{ˍ.)HTyZy^4(ˆ53tt }iw8$&sW&ob(WgOV sMz^[bi-lg4C]BQ̦}ӻp6̦ ,}B1/Ĺ ^!f6x[rIķ.{r#޼b ;Xkh|%; 4DMdNQxGZ.diĀݞ$Wp~Y@=u %I@&SePZ\tЋl[KU* 6 ð>6yZ{U ^jgmܬzS:Է.wȀ}kY,J hJ=R y&PPϛqUx}#B5 SN%/ D9(k:[  -PxZյb ]+y4b%Qg<\o *,mQ%D'>Ғڃ.g@|/HRL]/)CĥIc\Y,@| $֥q<J vJ e Rh84q9@JO Fqx n#Z"PV=&s4D$x/xƅ0Vڷo7bM9o󼝯ۺ-1sduyR%?i\ݹ.lqPs #/ 9`P#&: ,$ODK~ee#^jLh}^44Nw}9 jŔ__v yLJ۷(֛erDȏg`Ƙ̛ /c~ fQ?rDla'|Ɓ|͈; *F0 )mp!}/Vʡ8r^" Pe_ PmғMz4Jvز*73σ ȍOi[d~('H^ws1H؏F-!*˩Ӓ/? 1+ = 0 RT(RQ9.wGʐÖƣR=u A } K%%o.}hM, 5_V8ڻ=jkTWe xAɶhd4,m<\c'!{.M-yz2F}̨J(e\(QB!0oU~K~ujlߗ&NAń|/N?̜haIgC%>WgN]&QlunD+v6d-Er+pl2 ?7gs_nN4)"0!:Vۖ|q/p;"ôC/9m{0٢8E|}`~eg(i,4ann_P1o7RgȤ ߩ1+Q(f&Ѡ^ZS28bMa!9=kc-x\>] $vv:농l`՛Q x혴e@b}hNb}r}Ofirr;~p[nvFi?jS H^N1Ϝl2>.=6O71ZkYݫ ƁU[$1QFFvp:Rk]iyr2m qW@} 2M=(hth`* JK2>?jvsEh:_2!°ԧ.X5+E'J~0:r4d5ouoصR^B˵?\Ow;|N`/Y"Va>l9㈜z6텹nD -1@/6Q4Is"Oм:@n [TXaaCT2}Nײ3;d:/S ,'ܲ|w`UʋUbrTK~Xp%/#,_3 3Hޑ\.q i%%(v2muI7kzH?x6~ޤZg*nf0 K/<{d8H4 E.G-~&gŨTiq& gxé!h=s?T6Gy9_ɧyr8w`#t Baknu6jJS-8^cY$Vy/Z8D83 #!ns9sr=̀&Sߵ n@8~"qX8#34(#q!ڹr13F~QOZ1}N6sZRz? (,`9 j9H .<Ùq )]t*$Z8]N$҅~K8ZVt \:0s`pq1wN{PW-68ap[$槥4$)r٢ypGl|huC01f’\`-bF T|B@ ̲GBD-z 1T4=,E}"t41;bN`Fpqr9P*.T@H9K1LsM9#d)k,יa $NdF[Y,SԾq|Ía+NPe{fڷuƢX "a9Ճ'(>}S\Uu{J])^|40 ,[ @NG &#v8XIbd MP~׵z4ai! ?#GwĘK'7|cCW\V(=PI$QckTW~sۅ+sF,?$hɬ@ev%ꣃ9ƚ7È~æn)ST"bmf_3oiWI֋rV}+%)Vu9A}A6|P5~/h{u}篻zn69R:Dju V׋QHT'Wm5$`eH{1n{RKyԶ1!N㰍wN<:6F8,]HA7KDiִṪ;7oC68-1 6ܺcSLF/q *@A GጧoB#0S^ܻo@<E Ϟ(c~ .*RX JFXOBUzGdW_*x+X=ڐa7֫f!wyÈJ\Y,ؼke#t`MZlR2Jw޵+X0waa tzLMj(d*)"R|}J̯I'P 隍ة;1]eF2)BU]lzqM'{ॳb&?; |mޠZ_xYPeٵzz^DyTiHaV=Q#G}7ȋPô $F&Ή`82#M[5mU_xmS7H g:g Ƚ_km|XF0'G`ڠ`{FƱGup&L B5&`[WXpI-߈SFmϕm,3B{B 'y is_ v俱a<"2m߄vo\'ȵ[J`OW7k nlP*~]Rd"%'E^|O=)[k~lsϱ, ][H-j9W͝"_mI yLe bqC@Ց-= ^6 v蠮iZJ#& gTöHwQ%Km_>sd4.X=ߏ[ Ggll sAOTդ:}:E^jqP"Mۧ!dg0Ө+ -ԯ~_K(z1%@C =;2aKY9< }ٶ-<=%q(>eDu>׭_zBHljbeE`qxN$tu8B2 W ?C~rByQȼlo/9'kep%دi z7>B~j KU}d2u5+QDftq֠r (66Kj_zZO5մ6dɝrCrMCɪlx]niS殃T'bD0!iv;Sԅ'̇r<ꄷ`/0@~z܋ې!U:O3= TvSTA{g Ǐս8HwLj' es7^|uRS1d ~f)GEZ~) ~rS@Yr'ȅ$,=\Xl@"$qYY.n*ZmX_;6ѷc:Ub@We{씼}nEZZL—{eDJǾF`6Y*ؐ:[{_WhVXB{u+iBL0ny稠ͺ&9KhaꔱW:lBԪٶQjWZKu ##oO+?ÑtDcFTCf&>UA[+W b|)ozU@ H} aǷPrXB$-\}zu^mf-\7q!6 K&l.';zZυv dB6LףUb N)!Ų4J8{D/ϮfK UKQ9~=>Pm;N!=[SwL,uot܌rԜ!*N: ~_ĕ1*`-N ^qL⺨'ׯ5hOo+p?3̫݊_$o 0[nskAь%13'K#OH`HaX㞮EmY2b)_ ۑ#`|V" ka |]qMvA4:ƼNL= D(1'l}^PMu/[r-zbefÿRJ0[d} aS͖J;cĉPH:n(%`:!vȨҫ'N՘4ʬb!RZ E p'h=IG 8mVwHgs`wE#y[J-! 8,2Xv+U:%I`FB7 AW +K=kJvH&7JB%^L{R/ xA"GUayqvR,io6i+81{8qfyq5jjT}1FEr<%YYtms6(vͻA n(VV!;/lNpץڻ{I>0KfOl\D,CPIo^yotEPw yD" qkm$[ŔvE@s_MlH9JԦ{S:~2M A • OyhLf- r"zVJ92*, ,2uNF3B5]쬹4cI) dkw<9y.E+1{JsFfv+E,9XM/NL (j'x]lTw V@|r~c<}2zpx<o1oAk#TުC~ŊO˩YoEF{iuG܀'ZGbI5BAis^kug`t(] b_eya-Ȟ|{WI.i0HP0Pjp){^t}i08$~7r2e*Rsɕï3#h:rYC9DFW LeG_XȄb@\{_9GߛI]z;FkAmP<[ E0y S4+vNƈWDhiToz'eEk2ǀg`>ڡɺ:e|*۷9No_FhPk{ )nf']Af1i>yH){V=dt\K'R9,9A02(F͛+vthe)#~㟩Y?b˄43pnCI~';rXފ*ᗉA=EO@ W=T`1~:#T歄''a{Mʁ@HqyZ}[4&zNvlH2begvȅNH=ƛVo!/R' 0"-p6.Y݈I3[Mɡ]#z6EYnr=x.sξ`34t;/7%g/-|sOBeGCkwo(ˣŞƈ,4nB=>Ԩ@xGG%R`m"{ȌtᐱJ*)GL'Zr7,7>1tr@Zu{ /`X#ӘRd)VK=@x ~JԠt8!cKW2Xr>0Egc_b]וZN S'Ң#ϩ Ak$J_HE3ۣfÒةJEJ)?%2SAS+/"l=vy\VEu,G >/WGIH!O^ )d>dm:& d2Փ\ s^Jmiٓq!"j j F-os9W*Gr]$W*Uݬ6zduk= E CNdr*v<27bkO)Nq->8D~]<:~ʋ]3OND˸]!' 6bB{,EԌatRe$BcNc3r)^{re%g o0X[B6J$\>|'Hcr5k2hQC _)ahuh)uN@3MP_ Ng] c{2k9Kb=L03t C:3_lТHXy̡Mί4v >E)gLd+a|XZt-ߗ 5zn П*^Wb c)n DϙBy7rj*7ނ^Dhs\Nsbi5ykxC*kS9_?09O8XT]ՁSLtj)wBvUʭhf {D(@ aqX K"7%m ʥ&7twtӾ$b/Zh4m%`GC;8<\AGod9a0{.)c׽p|+>v lPUɅZH*Q6Z&f ڳ3˄C CȶTDD8@6K {YJ2ViEg:a u\F8D85f 97"nn4ü˭WbGFCϸR'c튵gC1#P@䩄Cu#rʱ6mfKNo`r ;7IdoULE(dr8TjOjQӽgm5gcl5bfT~{spS51'(v:[WB!=R5csizja?r?DIIKI Bɍ̻lf;W*>j0t|'I*A- Cc<ɊO}-ʭa bD|Wl$ C"R֑[M khzL j$Lj"rW:B {RN<6h -EGխ!Rdj +%\ ]~>ߟׄq==/:sv~7O)кP}_sI^22bhǷۦ*=0gj5~׌|5`'BbePi;xխ_>c.?P =2qim!Q2bDņe}|@2sjf-7Cl[T4C9GOwtyۺHfᐧK`܀!tJ' Wrbmh^Xг$gمrB?ǀK3dQT:lR r5MgdUwr(}aSbxN_a%5(~ebrcd% #Mj4:UqjY#+_ըfZEU}6UU /kqTǬqt֓!;[q[;62yxѩkiOsM/㖀'i{x5d?!~NQT}1xMcx!Py]^' J 8|02%襫EE^4TIiZLΠB%nAG5䋬k--ltuU"@cLؤ7H3X}p~B/(VhÈ#@& XPkA<4f/6CH Shx R+P@%[@:+w ,x']D;̪Ftic^Ls5maDJQ <s*(U9x;˅ ,oPum51`r1btq3W b+]Xjt̺CJa 90q7 .ݭ;zIL-:AV an位wMԫVXGOX{V_v;#-`72 H`w7e b޷51wAxE;Px D ֩4MK`1}d:s:iGRzSs,w:#hq[Ԑ/I)- 1OFO>B)|d{0򤲐X԰ @G,1H8[LU8.E}ʙ~x%ƥ%RZ۽W)RMe켳yH \+j6if~uQ=Ǒ4vVeE' sCa=Sfi~w@dTswh!zw"cXp!Լ86[Z{vsj0eqQp*Zbul< s*S_*$_5fr SD/LQ=ڛܹ3~ȑp\Nmpryܷ@c`ut:CC6.#N>%%ʼnsEts:_B O,t ^7gVv<=\o/ 9Ӥ~B@A d\% S@Cy'{~X+e"HZf\kҕ6k3֌xj|Ƌ"lN|,G\G0ص}/+1) 2ͺWX-mO^&yP7Cc\8ZHE46zs۳Q}AaHc֓PKb?dWX:X@8b6E/ U}&:OCq5(fڊ;š:RW͛?Y#-oF^w8GWTfhQeVLL1gqm&IAl]=_ya| 2'$7@2|YJU%|UGA]߾2Y=9 I5[ECKuO|ͥOyE40mRR2v$Z$y<05k(yMkM:^J rޅ߬!NߡAZ99hHO 1sL]-'#ꊅVbsl#$B* Wc'! [9ʑTj%8I9ЄBԼH$ڷ0k_ǭ ~K-#wBU?! " 'aiCLPt,-auTGj:! ZG`UUA$Y=~ j^steb\6WJL;n{ מ Vy,ۋ<]Is8g3|֍/x/}) L=$zidLVi0/ M $1(ZY؁Y N!*!Lp捺T=XKvW5!Me""jbpܔhA\W4TCR*G@ 1Y[fVCj|7⟠Sxb {yc5~Q" +ȰEyE19Ա-1e0.TX`W]hB91x5q GlE_i:J9Qb0xdteǬ㒜sNT4O(A֌&jlP ~u†haG Iwte#[&'Rr-݁=Tjz»x~KALGYtILfQ=c UB2hF7%qș9C-0ج~d+ՓX]~6Y'9jSڄTox; bK@vl6w)߱ݺȶ LG@zG[67/ꫮ, n7=%>b(m٬LrB ,^&n}v &EQ|"|UI 0݋l+I &tF23x#u8߂st2uF7+T_eCԯKv@gHih]q#=kɄ&;8%س"[ڟk$ idMlvxZac0!O4v{^y/ yjI~*, #_&m-.Dx:,PT8;oEI!tCUF.K|>Jey'L &͗Y>Oo`>}2RN;m0iG"[3P8ٷGqngY}LDR)d=CQpC`;*ӝ5'ȥ~,B5", GqUԧ&WѦy.`׃2ZmiZGX\ f,`GD]ķ$ [AA2tb2'od.ryJ@|ѿikl{MZSKUyљ2o(D,ګx8> ௟re2ߕB0Bo >IJ754eLU^jڤ㳧XПJ:fK@3(2s:Y 5]X6Y7]+o4wWkl)Y_ʼ~,$~+* ,$/T荧I0Mda;n2|W0|-"~ | E;LǥݸhS+;K'ЁXCPQ@{K7aD%! ¬~Z, e|_$(^81M=}]\5TBjp7It uﴡaq^Ϩ0 λeP/K(?}N{3e :D^L9BOا|PPD6b9sZ9gqr[ґsQzL[ f255;Vι (sZ&/Uqs+~ zp8o6m? ~'^yNr=ْ-*w{c."Hf:e :bBM#sb&!MEn\01"Z2g 7%?MA?_r`^K^+$Feha.:>D#c]h^zxP3n KOc/SI8O{FIO?S-lX -Q; n`S콟)[T?bx KjtЂTf1ɂGz(,[9Dl@ $b>-#L=bqKid. yHʋ Hr^C.<\@;b{ͿPfoqVuGxVz_Haͤj1w蜝0rk1^^-FEV#[w \(m+z¿s\nr[Ώ;VpgvXIC&}۱= ,qKRM^ph%9| B 5{A ۟vZZ"cN>F10F(+lK>ڝއأ|6G7Z[\,r0R`I 2ޮ6bDl4|Xt}C)O+g,UiJAٗGvD-heIJ h+@ 66r?^xzfZ q2Lwl4,[T*:7>pcq ԁZ Ù 8+WE`P6|| Dhn+T7n5uThZ S6oλײKČ%[ƶP(8vW{1юkcYKVjn{ܕ:5T_gmb@yM4Sƥ\ TB< v8m5Ҩ=)5 uF([ }팕TXఞƅח9O߀RҎ!v \.us^m}̃V_2mld'|9C6JayY"hjW.I3IJ) IP589LMIUrgo^>&Hb{;"kJy>ß7 ;MT*!l 4dVtLmyҎG,S{7{~%̎ϣ1`R{;Uz5EV:y6q?AHJ}ӸÔy"om׷936_gؕ8Qd:y[GH=' @nM39Id?ni9`!bS:G!"h-V ]-;㻁8Dw"àDߞr.L[~b H d$W{}v9)RRtIb2} fjMB_:uȠtyRд3,K+}Ky{v(&5_\ s@Vk6;<ʦer,7&5-<C\Ƹ,kjvj򷬚7N`4;%}!Ѡ҄e? s_טV7\yB᳋WٯxO#Xd?|# ^݋y`KsC|6tg V?* K/NU:M:jRjIv@ymP ebVFP* EpIyy _^L/qL.n4p!kFm ~8|4 JWiGT`{Ŗ^no?R͍*(b8 2żgDz 8=wr⠗OԷ27@R2:5x"ךy, rT_?bBN^c \ǞTI\LE3>|͓5`87``"TugԥΙEXaMҿl_՚mQ~k Р$_vZq4Q$-6X ,h+[2,A{}KY <;;g ,(_=S]vJ7u_)4OG_egG &lLD^fpN/ʤ=a4ּK17 GyRe%j}!Y "GlMbs|1.dvշq!ɬr_F#!H@1GX" "gRyZe(h+q>jJ5oZwi#Z7L-pƞyEmUq&Cv/dwzk{1㯪]Ó'JAo-v*WཥzTDPC_p9,r|p m.r+jMx#s ^}kAFՂ.Lk!5;ʷ܊tv'*?ܝ6&H=x][=E)]?RzUNDazfBHUY60}`";;Q})tS{9Iglf;Af |5; ~ӒGJiq iX GxB2_m"=3@a4AǀN0- D- X/2mp@H͛{2yުTfjgԫ먏< z;X|9R-侨|$Gevfx4UuVe4Wv| IhMR,HN6{Wcwp̓SJ5XTo`®QǗwtR[ͮeMJg55Ϫ[ȍ>/rFILH:s27z)n,.|zkDڍq: wp Vl0YwT]le\->N˵v25Y Rw `59=`we}VID9603cҘv CڕnBM2"VtӕOywL=L9 KdԚ78u]N%H^B<T~*df(|+QeGq- A^|< ;ٞB3dŽcmhX~{q\$Np_/g|.$/cC SqQyXRgCIe D/|?2TS4a8b Р'fRzj5$❉^r,9ޝL~~]*TD("5iRoZ$fv_p5p2ЖsҬ'{[iE,ܐ()ayȠ[yfV^Tّ+lwNMObXC{zg@U'ITuC]>2,G ߢ݉|T?f'H))]|6`F*n'L:yd%@j@r̰$ĈwvbU"sKT6уgGTtċ_K$ K=yX1HG-7M-ugXĩ c"FP9`xO' GMZ{1B}W7MCL ֤L dFfՐL_4ϔ [U#rc<j= dhS穞j%gCR0g^Et":L>W!*L7+3 Qr++YB+e:L5f/P2K|a?޴>q `b%rl^s@:êBJrf\Zg|xglfRf*پ{Ț|5^ 8^ZZ^Fk_8'{p:) w/r9i̻s&1*_ϒ~`#!;.R(J?I0lCHɩ^Ja}je}?MZ9H`!#Ju0Lj" w*G:c|6B;pK\==+]]Dtu] (zxĮ7vMH^ e 07a HGoN<$ͤr\3 Ybw3;uo/?4bl^"E!C]*v:ގuƂrXG2梶>lu] wytbf ۞S i1-dvKH līlc';g<5xZ;͗ˍ];Ze^ z "XOW%|#ٝ/ ai Q{[rFF@:߉C;",^PD p>(غqܯ" nY 8(D6$.kH/W]QӶU>#̇̂6o k!Ȑ|yr?E]Ia%#l#>!T3lsaGfj%~% Z XG;"%2eW)Fṱf$Np:U<]_C@+k̻76cVȆ7ƘW!n< -4W6KXXM 0܆2H" =3f ZzUWWP&m >"bV¥<g~WXSUGS3$nG,M7+nyFr˂<&=NTN 4$NHv`N W{ 6a0pxv暢>GU$V?N!U@7HmUjAϳQs>ށǴ r D̿&PԼicSg= RLl$*ZPP{dy?]J2)4aiʨ& +WHCGo6u+h/=d}8'!'n}bh|XVZsύYW JޅD2XKlF1P7"SoߑI/ѯGM*N`&sGj{?\9 .P%q~ƍ܍DQB5+!DG1t,~7,ߐlSV 6l*JWxp0g^Xmpd)u3EHU (pF-Xv b0 ]tX'LK86wuo7e=̳hvP¡Q*fԅՒHF ҉\r$mrl~!MxQ oz(;/{ $Z'N@6V\čܒN?+ˏ G, 5B_1Mtе7{#gѢvyzq\lH/ؚ`1.0dyMxy5[=,DlO0s X\5ӹ6F؊/`]b M&%^' 3Z6Z+H(I+sҹCg)?ӥ>'bv\.]3f}+sEOk 8lR<>.{,o"7Gv \4.͇~^]= 0[bv/#V'ÎPX*eoJ}*U+mH~"Y$FO(B\,Jljfy㋅93cu,FmN,~\Ћ=R'!*e v&pL".q zH~6sB+j|U"Q(* )c_6*fK'[t M)uZ63C {v8M.| 1[lS3sfSTx\4`CϦ%jYu{ƽ@d֐n;s>|.']bDH6ng'#s WJ#e:nNf{ʪ)#e(m $[ R-gMLY9ruG()ޫ7h?in$Lγ.,봫H)72Agoёk;"[{e rqn+s7٬wQ%B8gܙG) L*Z4QluQ0K[yڈs wz RY%(jc{J#yfk 0c c,,~ 2('`ZTN9c'?H$qE${mϋV`e"` K{`y-"%[X60/I#fx 6^* ty'.ZֻųbUM?Xݣ9aߜva_n?Yjn=oI^To1/dD4|3-`m['eYFFsmn2: -`A>`pϧ8ñvbc}IYEgb Ǜg8m yx]Df9=p>2!`e.J0۳Q}}3 X)TԿ )VJq+wOAC$Y.B߲j-۽Ow5?-8чEmVs8p(H-5HCU/ &Xg?^فׇc^jHؓA`ԼDRmLwPtsQ$a{K,"fY'FYBE1>phYoYQ=P3ViRG]=.e4c6 OU`uYpں ZJ_ : -tc묓kBj,'t>t. f"iۀl L#UUwƨF{}pDuBݳong3RܢB[9p4NAzW9_ˆ:R:G Lt՛+xe QZk#x:Cٮ8F_JVᕡ鞷=9i"6e5;Vg:'G{0#|y h7{jtX P;_{YZ&Oƍ[ c.*ͼBO[Ie: LoWdjuW"O<+4~Z$q #-;9 O(Fv"GB̢+G\[^_Fvյ"_%B;W'AW6_J(/18taqK;o.Dw·}Uj]f<^lx7C^lTRJWgtW+ո`wq&HENio%^͝M-l^RdsHC+ڨp uwyLVrUc.^IL>[OIWM;Z&}tdgO$BBHuNP5 l8[KSeSM_Z2kkRڭW0mz0mK %#bAfV7MpeOwQ1KGQ|" RUJ6ph.O3zIiXGJ@7#kpTAIg.۪=Mej"}+|6-r V=9>q(r8] "=|v{) qbu?De]#CݬAh ?`}^K]p”YL ؟-BڦU3Ds˳SF-~LK'yiˍ"nzZ#E}r{-jW]yY/t˥d:Cl }X kce:Qf8-?WNbǁ* 0l$+L 'f 4lU{R>wA?AOPG6>pZEF/+b&utWDL x|b$1E9VX# etI[; 7AǻNwCoq+~d~-uB'9G;fwܙCAV԰i'U/k#'GсAIp~^Ck{TA} H1-JFwcM@^#\f2IqYaA`bFu7iաkQ#{*NaP_ٶwopIdž0<>9n-z:COkIuǖOڨBr&B>ì{\^#O}IEѝx'wu [Wu'3,ղVJJ ta ֫e_,ؼd>)W[wck8P]1Q{S]D~BUKU1Xx,b}x_l q+ $l{)k{Zo1 37_Y55|IxyځEk>LsW:5$е9qC߶8|֜8qGHA: (5ektρi{C<ᘐl@@V |G5U䰣gfv BvwiB ǎBvCte&IP`4L|,9/AMsޱ~2 W1ƒљ\šOYmIjHn dS,D0t$@aw&~8ܺ͸?_)PZJ}៎T=P' ~^DWUx[ T1KmKrLj,LY.h-\.WBN2/P_A҉mMLI$[۶^P) " >#fA.!m))qRNgV"2є uP\0HSݧ*}p0[qRqCKdlE:Tssf<92?u;\B(fщRj~B5OxO]CD]J{PfbF*=QIlB)ȸ46B,H7ᏭT~gDOO*= ]vEf{^Cԍ.; ǐ`gvTW13ҕU{v:qq-1SVG;n~{Y6ghid%V&"qo R41F;CLT$uHZqd*S5c ":7iqL <Oy+ҽٱzN5 6ߋڥٳKڿg $u3XtnNfت]0͟y P [W͍i46Vxh!Ad@FR*4u TM⃳F$ y{~& 9;q)V#ΊYśU;4ޚ@4D{,+s;(|$ō/7G(/`?/" y\,lG-+oAiK [J$K.BO箐!̷:bXB]4h&KwCsh(X9j@"8R`+ߋohfm:^ T?Ɋđ^aqS@^3;ƒ[o_$ԗ}O)jҤbU9򛚬7>ڌW 8vK9M; ֐Z^=P#!IUXkB$KӐé(x!WQ5'uS^CI t6Z3(}ŏajfD5 dQuB>T(?SV'ze}VL/!HG7NjǩA#sg(Ӧ̐|1Y ûw:[O? ´`ųY=qZޭvredYMMѝ ` GqaBMB1t6{`*0$D;yzgJJp˪ ,e:Gu`;=l~ ō[1>0zJ [6Z yޘ !RzW[wGd5_EETAF'A~$Gg$t<%$>W8~R#kG%u[ZMy\ws ')'Rɫ["_C|;,/ "CP9 ܖVW2$/1nx0\K"P'msu* d:Ty>"lzbL컐*¿qq9|hI qi=jxo33#.iJT?ItZ YJfucc_7z")߅gvp`0113e]Z%!Fa᝔tbMCח?6ɽ&կvL!V.nwaW~XȳiCdꨝ؇dUUfɫ# jƕ5 TvZa)* % N|düےXN^A x8X ;N}қ"[,>%fH1_n)7:4jb1G~&-ga*/޼1: "AVv3 $PBAYg<$-Whq:'{ܧQx\᭸;$&"5.JysWD|: N^a;kCęMVXq(QRRc0Ä^\L\Jv`N]@k/!"pAC!NK2]~d]Aٴۘ`?x ۱ J%Ùo3{ @ r lnaPC58aRgoBkofHϹ8b?SK#"q##rIjA9E' >dr#d/<_[U|ti<-֎VlEZJSCJN3y[El`1Bh?Jd{E >W֑M9]2G0Gj%=Kn~Rj6υx|恺kBqv\a)Ha,H;lyY(#mo~t=@|ds@Pc4kJ[g H Nvc3!Y*SʛbN/ݳHELVZj2$+Q KT(M+c&hzX&B8[r6O^psG9.|2Je,5( BNliy|O3(JZOfNXO/"YA5\iF壊vmդP!*BEkF'_.S@R[G V{Y{pUjjO0%ܬХJg/OOX"P{D ZϺHthX V79r_{DX!+5 r%WxZK25%ʻֳ~Ж+SNxԿ@:T:8sg|'Gwu5uǓ<]n҂! +Nw.iy“h0 wm\/]s9'lLoVu#{2;3T>"/>AI^^_h_kC1+>ZՑ/WSC@ pkƺPgv eUk`#,O}pUh-$340{ZQ,nNm|,%fZq~PC*7\'a*}yܪHY+\xN"l=BH-,Tjv4[O(U胮r8n`y Z 0zBAܸT۟BWJoizzƯJ(eWg8kn??],)E'ϭpǘ~Y W^1%dAYӥi5dWoY'I6KE%9vs:}U NN#TI~.$M~ } qks&ѭDs~AlH@K1dYBCL ` '^,VyY˪) }mI]_#xpe Bo\,wH ״n9Bs<2eyiyߚ/+!%]~bd116 eh6.bRn>R6l3 4(o%c[f4o>W u)HY {αQ}HX: JT_*.\Gpy3oMw c)su&z> Kzo"g"w/9G=ѫfLeCЀb|-v-\2T|1<.=O´/;uؖ~@.*S ؼ3;v&Xe?Q,A6Ai^sd"&%jX-!0?tLջ۩sx}mal.7YIXi56ժڀCp;I[+_WU09y=⹀+6O+j*)W: )“7C<ڣ6b:$ߌ`H_45a |?BΨ!HiX - .!`qM_mD8i;]'i…d~'l,`uUD c Wk|qՠ1o;{`z]hrI Ӭ,%֏QSP2Zt M ' Ҵ[La`WFjp`0KwJ`??v:+cΕ5')e lov&D*bǦaO 868+NbGr_w*ibۤ`Kr.5V’R;dV|QOƎ:V̦ZUo6|ĵ*Ha/y2 !<ٵFh_O5rZ-ѺXTD0lիY:+ԟ.8#3Yyʱ˜+-#?J/{}qf{ƞ4=cׇwYYgs0[0{uYz:[J)>p7.CrM6G Y{ä4t'A`% 6Z3NbMTsvZc*rBgP 7ٰYz; ܥүc 7$= 8MpLZSP_u=Q_gF<]55~aͯdid؈'18L(TbUk=Q>^~k֖ w cwKn^1I&g_96VPe B$cc@h5^?'Q̾o ]OY泲 o_[fකN#RĩX#G$v׆rW)~F 9Aq)p }0ǟoϷ 6&_2x2N(D=On4/kF Vd{{!@Xl:'xJw'N3ְj#1g)O0w 9ߗD</DXgYt͊Duc[5Zct.)^\AZ~IDP@+ 4܁q=eHNd.Q~뛕~ ƛ8{ܙDgpUȌ䋀Q);nG7zB|#o Ad?@Kꔊ €+Un9Rt~MȇZ [C^9lOEf2ՙ}!"vW[d߷m'|8wOq=$;@B{^bCk FLU~dvRo\[|4PK!QlMg=v<&0vf3 ν0(K=*3wDT$% f7fXC:q1IEsR6BɒD.3~)d Fh҅6ų)Nth˼⁤?3e 7FU?G;bݑ ;̤jᘞ…[#Bֻ&eG=V$ņT-)⭖H-5?nPfL_d1wfVZR]XI+׆5>,*в gkm,"oHG2k6 P^|)AU^i֍K㌌D־9&Z·`Ǟ9|t&GPՎWMaZJ0pk@*ion;H4D}|Iw3ljhR';{ #h7tjY~nswq]v?tj,,k4_Rho&whw-~m([nj]_ ZL/y7bPt<iMd k3*Bb@(T@AqOvF'c[KjIE[d͑Ĭn[4 2[}F0*Ƅ[쭇^ξ89$q&D#2F>Oz$4?~$@8@|ۀ\dh O;<[⑬Us;i>G:oHHzbq`çTPsj?KZH @/hīMit:և̌^I'!(Z^ ~HdVn&9hQl05V(ʗ=SY?C[7)<ыutUp8tj HߥH'Gn*`Z`4źAp(k' UDa+[]JPQؐ"un?vB\n)#۟Y<܍(y.+Mؙ k<`d%TXeFEZW xez2Y#G/A9NGo 5itRZG {6AkS[ԹҜb榛=a\pT^=_8Qds؊PFG \ɔ:٢JG rA3nRG[0Nzw<OFKNcTH]ٌ0e&5 0}7¨RG{ס.`<4DdnRX( c9`5%mTZ(i-=kq9+sp1e(NMjKijR+u=tx.N@(tH Z@V#&`+:_;-Y6'-TU.Dd@7;ggXƟv`sΈ GvHqƐ""_˷D!y H?i3V39$8{ISoC/Jy ?~d$mZۉHdf٨Qjã_cw.L4VL>zc s#tR QKmh,.Ռq=< p<4r/9}IbKsۈSbBz`BVF$+߼>[$#Rr=PA ϚOSm<.!a^4vo?y2inauE2y3NH; '_wM>w΋)܁tsgUY^ͤ(Y@6cJjCHUT[mD i3ɵQ 0xoR~!ɡ)gjeAYA%],/%I**tNSԯi9NjL @ j2j>EOcϠbTnT>U9XګN[O@=2T/<_~Un?IܸY^D:x<@{mQw$kj<m$v"/mdP1D R>P_Lzd?x|6diP#:fRu?enBNV+o;=6 K-IR̰XWl@T BBI FB ,J<5Ha&HΘZFZ(vU0+Tӈ1'T6`~`Op?Rωx[ Tԏaa2 ?D0Dv Fu/L4 B :՚ G}nc;4[^Dۨ)ZX!9QG 벏Xi@6kfE ]nI"CR 2uR\+gt3C2‡BxrLbw _ȟ].Q /b^}/~(ET0I]GUSVz^9c@S-vm 2H2.j|[4 ޜrJgwX\z%X-:!c)`5=? dFk{c`'xWqq+ΔO9"J 2㭸Ml<53/XٻtpcXXdW<}EQ: {}#ڃA|Ge pI$5G6L6~3;)0i߁Qnk:F c`B /Z>bIur^s[QX/i^J`g!5\ApG%{'q2jvAbGF'q`8BgJgV|V\{^OWޤW̛MYfWiF[WVzVÈ@eb KF3E05B hzxv=;NT:lLJ$$쁄K'Y׽0?݅!8A(WO yڀ$'aS=y26ir/Y 22Ȑu[aDy W;!K J{w7SseJ%m|-Ws˹Nb"(^Ѣ*KNՊ[p[qqԲ a!Gw9+\t<b[!zeNPP*H2d63ѧOItQtI VLR? L'a (ĂJ"R3j&i~!O;9/m˦*ψ#-0ʃۢ?OF0 i8܏ V 'ҬX]flAr*2˪oߞ{"d\͵|?k*ˇH#!j~޳knmi4;wKL⩇eIZV^QvF Zɦ$_j_|"\xT_=3nX\0w|/8}c _ͽeJT>AxCtoh'F2nnOR3*t[:h$QB>F`t1tm1[ +,~56V,'DdȞ0" - b|9[4eG(J6] T8_M钲P}爝\fэK6Ո9/a+@F^<w,_{߷Lͨ$zIU̐^Xdx16,'/ 9a 2 u"2/l?J!;$8q:'vMt7Npl{n<" 9`>!}t,f2=ى.x1P>U.IFI(?|Wߧ9 s)Y#,;Al=L2☧g]g+-؏z!1< tظOe?$T 5B\3v( 6vBa'e%x&eg5-mP!Mzݪ/FHȅH;]^lǂ賶qj-4 >*ld?<< QBȘߪb.(~Dܳ߼Օ$:{48ͰG+0A3<700moE!@8?6bWB"gbދEN4(,s; F\)hL=('@,^$kG>W~O,/m/zS s}ßuOKF]Xz4TM0n>*~Oiq2KTԉ]ȪU|~P ;5[n~㘟Ey :t6ȉtccFdhImeW\H|9.[Ilg(zᦂ:;%*G` zBCybOeR:ErHݷ҉G `K3u鯇U'n@5F W*3;fآň1S6(G` C8>o2_Me\|I0H,vW*Ũ0hL3""~br~[3x:!-KU! ~[w 7oZVȶB}ԬtC}*Gt nS֨gK9t 2WL%wjFP$aSϴ}큢cd^sLi,QA>@SF/g %_SP@4/a;b6?eWy{ qw#<\mTn('gg@fzG&O Jht[ |YR=طBcQ3i/s@\y9G`.#hЇ9gjY6'V›:%OL5f"!teOӕI&8m@)ɥο@xyv)0 DCЩFx dDfEEPFv:JGq!bo78R,I-\s5{ͧڌUF y=pBdZ< UםӰErb8ѸQ)e |±bU(V_X=wf/ّ( jE'实Z1!H5D)DHzU4}/;qh bS7oy|d,, S51lC.)yUP&zWnBY_M@u84!eңT+'=DŽ?tƨ16dnҒ҄sD[3U`] A82'Ο}Pcer)nE]DxT5ݲ[FDx/JV5$ #A2 HV%ZA 2ڝW3W+ҭt7˃3azt=3r=@u(g6X!,Z h׵\XWꜻҪ!P!/7[;=,a%c)6 ̬ɂW(7F RZo8MPLEJTeKrlRLS/6P EKYAZŘ;BTiе1f٦A,M<ҵ?44\j:\ǔ1֧Y{8E *9Qm9|9SV%)$ԉY`OѩWt+"]Gx6aԉCÑ|j )HR)mh˭Hf4w"q~T9|Q0:flN(Js4$ql1Y@Sn#0G$Szt(D4)F9bOxQ{8ϳjɍ"|DqMlY!?$)ݸ,>Q(|yA?X~^Cah kpٕXLNj$RA!i PV[ēD;@⊲k䩅%JwIO`u,[Zm =Lb.u-ՍBcE#v5A3Y=nq2mQޝC;G:+4`o 8$)-Ϸ#!af [0q7f4zV5Z ҈agmDÀ&Ԗv:ys]3?8G">Z䬼q`4h QVg-.6JV:~&G 郴kE 1EV7$b3rÛGc$Ns9hm1Xm83*> `zI_{>nsWZw#fQ,?0[0&:anz葷e 3]_G~C5gCg w4IHO(OwƏf` T@A-OO!n `]I"\KŸ6<'> C̈́۱$1/y6eݥ UvW2B޴4AA),m*KZ{9=KI:KT,@?@^wGТ 2C3cyKg%-!d<)}`ɨQtYhc <# `KG]1^3i3eUҧht[+è|S_޻`z)V( WXE|g]W2Z=w7Tq׭)Qʮd:K}^鬤SPY6<JрB@ ~^K?<%>Av@Na.=U~ _LL'5*q$V%HÐG~&(.26)p:4rMߏѹ;(&tdUk7p\ZX ;OvПtY!4 ,q"&l~zZCQt=5$;b"+g,ʴ.ۨOY0,5':f7Qj?.圱  (xL[aI\2o{0Rі8, es7$ #)]s9%[7<-47>fS 㴹Yɯ},2e#\.tuVCݝLu%HB&KJMx U}eqxz8FZm8gmt4{˓H-M>HSy麜H3d"\Wr,fc:APJ;,8j]gYA@ WB F똑u1gRy_'&Wouqo&@QÉvvഭ"Pϣ?YnE_YAU+qWZ=ޝ #niDI4ikC =mAr.ۈ!({.s w?!U$Uy5OX&vKm{Tֻͺ|>)#JdJ+acIo>Dek507~կ3kWCX:=2xxYr!Hu;w_ڱ/|%em%Т.9ߖ1lIв~ĘOiч3#s#9, SQ`{w7).EV#;'8rtU-^rjK}x *Lc. Zbjed ɤ0)1eT"5 -=;v 1‰]o1o`H-$%f"~WȮVr *|ì;T*xq(Eמ>0 U1uo>d\23+!"߾uYOK'6tE?ӝJz5`Hf?zG>TiB$Dރ`GI @o9V F%_El-ʊ7}:-AX_vRg[ruHUx$,/Xuc%),GlBʱ Ed직 ' 3^}?krTDZv<U>(XG=m2L*e[[d#rENAK4N'a 3]RU֌)5RjS-8 ko0pnl'Rf;W݋89g3![Øzy:aEhMgH- A{Xh~?V;\_)+BE=}N?yxxҙ&HDBlkg1IHmM> ݐΙ7՝*W0iS$]QE_y#tǝؼR,syo S& g8eςӹ˲9wʭ0оusOtgi7jçvl^̭war#4$Dh!X SS*lYNT= 4o~wlư.lbBJ_T`6YQIxl 'm%NA;T$ժl貉@s@¡99)~n ӟ_dX);VØ] z\=q$;TC97AQz_mY9Ґ$WM2>@V kH-I"Y˞#0'7ia-c}m '*y+3Ic@u%x[|@fm9czwohyDp^6tQ } V_@ UP o}E6X&i(#lƦ+UFt/җ 'Tc5Ox_q \){xM"q,J1*k<͐L]=FNhyL wmaX5nYawB |{]Ϟx:T2dG)2?j*X.ptvp1za-Afx1_򇗻=NۡCVC!ΖdWSENwP[77"$ R0(-Q~ICVR_4bԡbucg *Ay3h|>Y!ّ5lX-:?…4ڝ~LmG]*x[b2cibD#(`0lX| Zv>L4LdVQSdfsiij ֺًrwFp,š(GBdaj7noJC5>+cZ>Eza&c]E+#D& v_u S@6;Q Ou&MdÆ8O-Ka}>jڟ Vw[ < KgRґ)c 4ۑ#0٤.#ɶMGMoOPeؑZ″C<wHx|(_Lgl(ej7`bxړ>G/v8##蜈<r6?*Gv#I&?HqQ"m:+ZPŒW mb?.ba ^>$J'~ IC%ZˢjwF,B/k}/XXMS?2) k" t1B^L~GG L\JIW^;;$bD o=e$ZI'OJ_z e+׹NR9"JR@Kx̶iif,\G|dc.)v=J 1@`N+\)1-2i u'oJvs ]Y,h?U1M|Y83>/3U3n &#bnZ{l{RaԈК.\Ã.szlPѬ})tTB0KPkŊ=1#Ti7s]2 n޻s|u ˿_ׇΈ?$^z N7$nX3di5*oYi ~>ȼ4z6yA28Q3DpAZ8R,0uꄎi#/nj"Wyui 2+eg0[ F]ÿ)dL$YmQwuPI]g{q5"ZTtԿMj5yz=T]bH_0h#ka\H;ר~ٲ*;b@ޛO@{Zě0i=6Hw^1 Á"{u r# >I#cFY1ţqx&=n:*ir^(#r[(4k uq#|]*f1V"8N IL͹Hz|ʬTU*Q83tƯ[mP <Ӛ$:2pc'T־>i2{fS6r Ť7-HƜYe.XhQ;׊(:BϨ$ -?41A'*ps0v̿39L[Yf5~ܦcM/ty­v Nxx!K~ȮuA$u. 0j<;M%Y$b8*]\"vS*E-atX\O@EԚxM9 g"F9gV3]%L:>"@G}D%sL'Qy=mgRG $зy«[GF2+ 6R5)?-IMm9T\mRM*~&uL O]=5Yi4QG6Č'iDrXmz@h…4g{3@A3vٛ_C:/zeNx5xhLٯeV` ;#]dHN"-m^HɞTU9tM;ƈY.<9i X$=r;\ܘo9z߃ *ߕDF]o?jWNu.5bkGkPI%ܟ(*/78aj#VEuS|yr!.?lmP$hQ}W4`ԜaCO9a N7zeKg[0@fGem[Fs~`Aآ8gZSm}gSRMUdۊ4ݰCFBpYuk/- ѪvI;n <ܟf]:@r6 ^JP|MweRF#.qyS +v"\I8x4.Ql3v!]_z^y-h" 9lk_ ݑ9@eߗJrة$+ HF|Ei(RϹ:$}ús+E?;!#*C(cp$ n3|HcQZ: ~%,ےL8YT3c)3xIwN\ՐE P=]ɂ 5cz_WfQ!3 lV9 Zhyɘ\_y1Y泴E@[{_m#jw-oHXőp~I~a~ IUbĕ--ybI +kzNBDۡ P&,  ,a# e 5ȩξlgBK\eF*9,( v\6lbߧo{bB.Q<ɹRg]Dә p>-*Qv2RM`Y(ֻ}/S%`xΆr0;1Bp; [P2]=4 2M9ן÷R].w.D'D h}Lޥ\U@=#-3a-xt5>No9+ҏ,C/.[egPU-?6R!G}f5K9B/pk+^4EWG`ܣ#-H P ec«4Y!-ǙCJ/o3Sj+gJXM_ZJI$D85B<hŦ"* 4m!fnM(& +a#ϫsx-gQhG Gjv w¿'8vqyM |`H,~I X+!&64ݝz9u/V[;t#<bќS@@3g7|̎cr. ̀?18TGLjAN'!]vk!ߪsZƊɤ_56/^?/>'o%Px 4 \%p+sJC3J$5Ƴo,[&0`6 W5Ae>(x>MbJF Zp! gvXךMTM/"-r[k3kӬvb #Yy8y~^ +X x|2UE,,Ӕ?ᳰ^"F3r.7l!#"^G]CAF[ӮpIG~;m3B~z 5N3Wo8b)TY萖gsgq[9iCL7SsS> !B0@5Sh7HEfۆ8MXˣ+V LO/CU vklcIXut;`S3wZO,$x);m"NנC*ZoM;,Г뜪(_șl0G nV3#XtMCQN:8o8/՟m'kPiI0sNa)>)xkdjP UaAm֞\c_5CXw}O KzL]X2Q,Ű fc:F1ˣ #S5wQmTyI:{[#krwu@pe aV*v싫0n4!Q5whZRL5H=tUt/8(ɨ>u*q4(zUyjMo` "^|/\#46'e"ڑzϘ:E@ުR~xدO늱hzK|wl; \%Y6Mg dŐlHH!+5DQ0APh *Į.H*Knh7C@'eL4\Xl#9н &W$б^*IJtXɝ.P j& CR}4àÁMCQ7 /F%K9E8%ox@TKajP}ƟE Y^$<@HQOԯ'`!Є +'s!$QS`[౩gB3zB|Y lXku%F"*_ CZ>sS(;|;(k4EzW\g1Qcp^TZK[r>IbZz-1=8w˾#%"~E|ɲ7}ZriWW0]5WpN,GD a=3[Y@[tC?ÜIa`{"VIsKK=3 i{g5A#Q-2V~teܑDrޭuP]iDME K[#cF6)Dz@XWI/nLFǏEӜtr܌n:֩Dt39 FnJa$݋-+SS[\ lK_V1&yܻ9%sk&ar,XSEa/!mVJ̃ Ѐ0Cse%Wpއu[o1@.!q^ 50i_flCCW EUy%xL_f8͵9VzS{҄e۷kk6N-J,aX$Ķ[0+e:2"1biR]aeƘ `xt_yJ]p3_aO@mK S-^;k_֡+M;ˊ8< Ӹ¶={lMs8"]W*;\U߳θ(9-}.ҹ`-;0esY&%;8BFXuaZ}unq/3a-Se_͚Aq]/c<@Q.iV,ӌtzef iWX(ӜEnniYTϪ&P=D%q' 8c럣k\kO4: ȇQ^~ gpI ؖOIa!:ѕe_Tb6⨾b'ܽ[/Q%Ƣ4!]Z|@8uF̩/KlK}D$"'1dK}V Нaf7;IIaQ ZԌO R=y,5U,},BKFݐʣ@"y ȟ{EAȟ\]LjdޝB++:dFQʳ4+6Υ%rDK`& RK8X!ط MT4thU˔\?JE 0br7dgC Vɜy9o9&aMIT?z.ǔb fK: C"_uijLCrW~?fQ67V4ރ+TKNzzCZrd쐌uS`!`?Gćyw *" `M;x'G iFm,L]F^`3yh}Ѹ Xdx3mr]9 3>pL\rsl.3q|gOn&ƛ3J (AZUf_aB sOML^ {X4o7I{eAigyEХ{Wd> fN}53;[Z4n6׵B  sEw_CzP6zaT ]*6M+$2xCEd <?ٷ 4)2eL`^U%ZdH,|Jfk+[@ê`t;M}B25EqwL%2]5ؐI3R݂/@ ͹eGvpFXdƈʮL{nP82:{v~sT9)EQe` C֣!F~,e;mĀ \WO,kwYTamu hap0]mLsE!ENezHv/{Lз+K"f~q q+pbk_NOzA^VQD 3Z!}Qč1{{[.GvK0IFzld]JFB}EmH%h~'Y7J'}ha1mx(HagJfy|?՛?ڕ^? y \Cf|]-]HhF(^#ӠAgdxP\i,[9HHq`F{~;fasCD%פOeyJUŜ+EEuks{_E(_"7 yt7ȐD'!sлQiWJ -nPqr,XqfnΣK)$[&ƈaf,^ݽ akn㦾a-p'Zr4{f 1Cl#Zj?l & U0e9K2kҝawQBz7ko)kFe C)@S)R\_wn_shV=! X:ၔ#*܌re-B6)eAMJ깯X)9`{/e{45 hdD~L1Jukf@)kr &sY=huje!Tq$>ESRDJL"-K8д#4[VJu~rlTgUϪGƤy`PF<5wWY`35% ՎJ6LS B7.5c'gR)UwH0}vވ% 1Ί%}gIJ&Qr!7+˾$El^ Rf$ޟ+qOQkwAJa02)`vf$gXe=vz7S)/W\P 'U" ˑ+S=5.X+|n2tÍV.(׉'<^:w5:Dn>BuE$B*TM}{]tzu  ޜ_q5# bg? vS$ɓn(!)֪<,vm+v]P"n{aw-:XAh,jeLձ(y, KȒn%B{ڗPiggW \ $JUkBӉps5<E3:]#Mۻ߼{cEurE^ H3T_8fW8GW]~*#> hhl7vgvg;<:8*0 ^\T!n)|{P'~9吭ma54͒¿JŻZ$)`Q#}Exj# B?2oul2~'tama{0:ȧq tײNpHiuEP3MFr#v9~ 9z`/q@^[KHe\(SfRWpR.Ψy RbTiW[#ȿ:] s>cՎFFi"M b!WF԰!3|nqk:h4_d0ӣ.WOSsHU5!27(ۯG%}*L 7k}а>eO" fM俈5?Wt{`ϩF3ֻt5$i,=Un>?CuҎ2܆"`fIH-Eh_jSؘhp쭀~쇢W9)쀽ȷMfq~ iH)*Ň݉]i}z ?#ʨoM슟x@2=x@+E3b1u"ߍߢu`Q[èN|f[ |5p9?azu2F2*@ک#4iT@OVph,,&-ܼvQ5dOܹ8z+SȰŴV9J;,"H3n`Խ! :CǜCQ@&aC5arA0 /y`Ўv^*9f`+{|E'b>D-3AئGPrywk _7;c{&Â))i,EޏuDㆼ-S@H'j6&K.DLxkIi9o#Ule "4<|]F;T qM#q\ Y&sɫ<3;%X% $쾂Sf=tv~$u<|~,} [޹⡵j"5 e,)*t'W:<Tp ݋l+xaY$'jЎ I4ջtj{W\x7di *֙yn041R s@)J| h*q'3XKt$/$H*#6](S5^"7`bb4QK)8fA*L6~Q{-:dDɷ~19h:|ZK4[>!b:]N #,+ `d 7S)Y=WX_F%y A. 7EZh%\ZsPgp?܍W1{83Y2i'FkLBVί 9C'utAVTKK.u(f3xp՝b/G7:nB=ٷƎ]rSjk_v-ubHjfLTsWsb(?g? Pf˔%_=2I=XK|0&4g htޘvjշjůZT!"^{[Twu/ jҋÖ #C@6~r|"QfoE#<R&hTD\(\CBޓM+&7ɾGWw0Al=olVʹ 8@,EgUB" [Ћ֕Oc0%d])d(4p[Bw9'aRŌ=XIq.+ i&C7>]/YjV0ayWiFY!_`z .=y2ML%bn85=ҫTFF o/bZd iǜ6y` 5-^ܒ'2ʊPN.72fQoNj?+zIHInThpn@KDω?m{Eȓ^ifw3~F \7L, 6;I P j|bp)Bs.'R 6T)kT8xX/,aB=ֻu0ıgg74K5k1wLb?: D5Vop ~n/2PɪѬ36ɛKs% +4vv  |5).D45¶ *p/FO &>.?$ ros-k|卶1=r~1<;n']^|7!Y2z 5FJ dE^m-3I_QkeZZ] P 2=Gr?%k? rӻ8o/c6)ɤbUR[-5Mm|"% v4D_%g1@AGȄ;/!aP>73&=o$tu{>⢢_?+gZ:/`ףT4h#~Ī)ɒs& &}p~-_&'ZS5,<p\W>eFC(ETAcv@.raL*`bIZ%c uқۉ3CW}<ҎתToNx^kܿ?9yLTh}LF巐Ut.t~ƞX 襋ނ%"#I,\/= g[}4.hdTv/oe&>"_IUT 鑟.tas˥/g(Co%[ttk"{¨\Vpe* -j$ 2 *siU2;j{{;L\5SOu ]YSne?kRcD:jR3 %vtj&E( n]3¾`۠- v娘Qcz%+|l%<,XٯLx9jXֹ^4*PTf:b{C7T!Sep=ud_` mOeMOBFeדԽkvͬɓި#nvV<-&jQ'QKo~L$9?vỹԌ|r-Zr,4ցcagq9qC?xDֵ=ŧLNt:oܧ{"V~^-F7V㽧ed(.T'D0M1Â9gQXV.6ۮWlDGEgG_k඀E~~";"AŐ1vɎo^ IePL龈R mqTF9 =CLa(qLu1z P  h5V D+TQ@Vu$/x*l6!`F60і[:!RrUظ`R%Zb QNS~o$^݂'j2ԉbjt~ŴVC0I4o06?p_Y$|KBYTkrF6azGִF]})&n k1ϗ6ݳx)~؉,=%8r"RYh4u>* q ;ݺ9d( fRMBtlN~箑tnZs>/Rv"?y6؞t8jڬ`PY/ "#х'>H!OM4UtK'7|W\;qn(hY~wiU96zAm22>GdlȔH":"S0 x^G,>ȖX-P= Wf0`#%TBF4Q;<]ګaԩ" Y& -P*Gi U+zQ `47L" Zm:X&!/f=dd8w%kG P3FNu3nE;*$CQ6Oruo66eX{|DJȄZ\Z),{*|cIVᖂ=WwIRh.2_.ܩFKPi;v$a͓-go*9т"v. Q 7T+ =ե=Ez ]eޯA zhwZQ!*}-u7Oujkh pSKl @FG^b>n6dQ vɾP8aX%)Nl}`5,5Kb/Wr0kۛIeM/]p½F\ۜA 7/r7^ "MC3 !6|b֋xΖ&CF,b0(G9kVG^f&zL _4=`{ژ_H8n 6l2+cB'*PUP Z^08@Iu_IMV'˵ɬɈwXmX~`9 )h3J;b~[OrͫB$kiM &nN ,5B5 ;[W-{.u+$y/v*?GavMsThCDIm*;Ɠ7JKJ–=?k[tF$Ǚc$3--P ,-t X长6igg (5}e4Džq5t9=kúu)jT8nj5-^QK64pkw$yTφYgd6`묑9/``ێ:"'xhD g) {hSc3Rb7#dy(L\;?Sj4-tz=Bv |b$G0qm@<\V}{=3ۖ[; "K {/M]@zr-+{ ߘwӷۢ.lniP:@}5ԤCRYL~NΉ"[ڵªe)=u#S.mMɢ2<%hqɺ+0Ns nւl LϛfR!30^m'4ϪaɭZaU@ Hvd{;MFFhT_V/\ԡ#Eޚr]g5}WQ3qXtFbI"DFrVTs-6mEoZ3_tYo]]lcDòNIJN -BU7ɾ=L`K>wSˌu(,؋ѲFD:m9[r2}(N{ qr \Nrs<5*jհXd_h,iw _o*7;I5(<0о9C\hI*(Uya޳92gh2 Q>R$_N=mk|c&Wʐu8)EDf˱sٛ[Jτ<~vׇ ٙ~͉4 ˨ldvC&;gnkY_S4#K!X9^2E䶑o +[NZC Z4y-8ajyȣd.㯞&a% @V> 6`},a)7BquE.`Dž8\Rf[cvsm]Ʀ+YMձ-Nk,L'py08 n!dw[@(Ѣ#{))sZ,0y\!Oz.y(=#p4PO!/^}ط`%9N4ZF?\Tuh[͜~է$LƾtDooX;bU#QoCnԼ͏^!޲RD)7K 5l+{эA4l˪MUUB B"OUxlTO)}!у".I%YjG4XM)]ڲa#{Dp:BBӾp [.FM/)E/p%)pg&'>9wE0hJb_-t!E:ǥlkk%\(P8e}kr$~b\!R8!xJc~%B/he>Oz9;2У3$cyHH=Gx vl`=ζM8fk:2qJ&rE6U9{s\G3 zzr^^o? ]cdݧ7 x=˺u^!)" *]aQc&x/55-:sebVعk v]뀢qY Q/'Edye'l?G-ql`uDQx'ay^rdWWpx~]lbngXlm|-0F_w9B-m#kh[#_5" @W57yymrң> uƵM:NV/yj/LYf܈F߶hyff=;cK/ӢO9߽zqU 8W>UA}~/`9[MzOuf zF^^djO, %@iþ$9haW,Poq?r56zhQEL5|_'aYLW-a?AFaȷx'"A(Mbuq7'Ѡ f ,_1 .Q\~,lL5 u|, "Psa3: 8lkȕo) 5˅߸ ʲw^D2 a#>`fno^rEG MH<`äIJ`bU=QǓ$u7*, ѧa'v9ALmW ,]Dgt*<:<}iK tO0 o:^!}&8sWe(gSSf%;jV5u~RC]wkGo [ j()<y^yi L !.}}տ !x|T\aknKVС.Bhk31_&rM%b}I0R+':F$܄]%f\LYK2%ʻxW& R=MԑOT:` `;U _,sb(rml#\-Hb;du8z*-KhC}6 hS ufnHJ)vagCkfpvh@~jA]Νq_|=8\ דL$;z;NJcxr/hpoѴꜪLFDTs,I?̈́ЪTbM=FDH[V}%U?M{( wCzy]R.e@}= 8 `ZZcl:#;qjrnдֶ!}إZ#j~6L2|=ϕj8T9w c57w_;6z׺cWu( [A̜[Ri! mAplMӊIRLD,Q̩S K'.8&)K ~$-ǃ i)%냌>b% 4Bx|qV$*z^ d8FoVfiH4K~($E2d4|('JH4?omgү Q'^5!(j'{~?Dp_DE17 "ƨU'Ŋ;,Tw&kЉO[t+Q0{j1gtqӒ˜ۚ :C-`@IKUѺ疼dWh}݉`dl&u3G ʽ?^NBJGmq@Ov/}-9Z5D2Ƿu/3fo J:-uN z?ǧc%x֢l?_E:(5Ňx)GM_fc}ܮ#40ݼR>v}C͂Q90 {sYV&[o\p}6&Q kQ? SΔB/u40,{87u#-ɕNs69W7̓r'4 r_F2Gt0`(Sge>qT (k/8:'ƟQڂ,3Ui$ ҺKI2>iX}$&¦G˜2md?Y-f0|ෂڗ27蚭׉$9)8Ћh;$qH /F޾w4% D90fql()$< q$xb mĝ݌<N'IJ@AHyr7i7tkERk$p&2:lO> ;J'8tѾPH?WehIS9Olnc~@bR$s;땺!3XtpC;H%cup27@+_}aMIV4QN?}ǡqj<rnv$ 1dZCaw.Sp G2{_`'V4jN8be[JDl$Ԁ&5|啢UrCи'*)d}%8aCf(՜My⻶_3GQעWPiC Ϫ{Y;m '+ |a$7}6<˒Qt'DPUͅ:& =y `vtA9EKoqb\ȭ֑g!2ia_FV oNgUbA5224Q9g>=<`_^,|E*0fn&.΃ I&;uWdO({.pZj1ئ%cvD\_+!D֐Zc.?E>dz5VzK/^e []ڣ{ S2Z ;y#9f.aց( <.si%tX*q->IHRr*촇%^2Q=OgAW,{6>G'9ꕾr3rPhdz&Zq#C%t=Ak7 @!FzQ3`+uy8] 4s!o_srsaOWZj}XUĘA3x\S_ ъQVdξ "v6kaU]wn=zH-bU+f.=NUs8 U+o!NO{nRq'c,3]T*-l[ZIoi6t C_k!!U@zJ*8%S+~qGdoBVcMJӁN\eԞ1I70O*IXRW z m{۳4T z/M}tЄ>:o7A6OL0MdAm{][ie,hhN69ְXd *-[",o'/!5Fy.J0^:hE0 Hr/BA6ES8=M;w:|ip^޾k+,F967ߵnvia ShH+-7cʴJ1?&JQSo!n+P' H*g̥7<%*b{5g7_^ms({k{ɲJ˹L囍u8KG.8)؀ˡe0-Q>9;90:fifuez0g̼UapT/9džcGTyq op 8>!RѬLQl<9uoc|- ݇/O3/щXEXi[T2ݸ-x<@Z&7ureݨT \gKHLJ!0*Cƃ_KGdCnObqOC EKIMZ1~G!p6= 8|H?˕Gжe͂TuXV vFڍ0ہԦ7iP/n!~6<&`U-~M0dpBуSmq%(ΣoW#5hl 6D'ɪ0Gh+r `_s4Ug&|a0j9&u1.d:pCBh1bh 8'zŀN$ǭ \FzLubmvʛZ0Dt]+-) kҞ lY  ɒtA<*%8JQMFw?*T _]NxZn6QfcvH ܯ"gZ7'Kt)+EoC.}v~~iQ1yUӅZᐇO >NFlsT>mTq*k-2\:Cc-y&ݱ0ji5c\Aͱt[FuV+.e6ɬ_NT0!|\LEkOm(R|ASVvTTUQ/K;*ll$=8NZHu7m~.++H6S ]UF nJlXb- Q ʇd- >^wm0WPwBO?֥8"r0{XV9ぉFf`ġr 1~J?B}L9׬H?2 #& a'i˜XO{-A{;`hƅ2mJ0,Br*hѸL_O$'97[}QX7ZzzJFtilG9Z~ն짞o#T uai5CqGLh{>wd#og qX1'~4uQ}CYnC5Pѽ uR  _#۩Rޅ{gzڸ/FPLG6`+ұXrԉɏpjxIT1WΑOQXUNfC)PkqQ\δ,xHjzK :k@H+ `I/l &WwffCg긡q|Gt c29qEBHt&WB;h0N%d7ۄ߬wSA۷ow'qjTlI"|8YnRs^m4(%^/?|dVv[mT 1= NNDܲ}-9.K[xǃ<݁VwΞX6<# nR* ܽڑOďaP_1|\~焾hY ?_/+hHX=-6c) 53*7}&Lur(\LhgY~ [j>J7:~˃%SFV÷_6qVWufB!N$2AT$&6cEEh;Fn/sLah.}8򣪇緅txɓa=Z1; EU P5#)Iyք[/Y'fpZCOZ#RȵB9[4iR~3GPE*6]y0CgtknBFIA .u,NX <)͛},B_y?-^FZJ+w+Y`[hwb6ߏ෣H bɉQz*P$ѕ)0Ѧa Rу PcCzs};phsh+ 6>%U]'xw0ovynNJ8%pEѼCӴTAԖ^CAZ.l'DR]t>O#Y.S\&LRy\1Pb3N3PfI5>0Koae_ac,a޼* 5^zn\-rݸw7SS0GvmB]0j OM"C-xݿgnlBwkes^%0WA.s/"M&4ktk-4F7, 2;8_T2@5@* S_)XL15'j:Pa72D1(t5!ogGw-In&N,ud)y()v|4= 0A5o'mYmK2imv,?r)W9XFiz͘sk|Z)ZBkw,M/j_P'`x`x'3sO ܀$8uJY})4(x9f k]d!'k‡=Ǒ?ĉ83?׫pCôB-֒L2suZZױ@zy51$ȹ}2EkJ u Q95Fj=(Tم* Q>J5<@.B]9R'ŬP8">1$sHz FShm2У5t'_Hy3F# ۤ%+ejkt#k_A #v3^pCC29r}厁3!G e-WXڦ%и<@jx90˧=g2&mek.Av(N y,9RW-^&;Ivځ|#.cJE'bX290Cd iY /Fjy- ~|O6"ûJ2s2cY{)S)#$8zۗx)d Ф&)G%ִL\30fd"}i*5}%0z^d:IO3MŠ}.?5 ֲY]=.Šͮ~n][/#t:H]NPz3o9װ C#ݛEnAGWi#95sakٻ)@v:!$Jl60yS:nqa'+#az,h^1: ZwsuWюVw<`J_=h`g /og΢_p(υfCbHhb0M Ͼj&P]/Co%mpbHoSI0d鮝&Yl)A3@jƜT~z&s؂ }CHCg,Z @EԪy[ R-6)vv;sEg[Ê hKaXNkq]7^9q:vۭ]DcL+J}W8p' EU2 E#`l*`#A{CQ۹eo tR_rn!ҸVUS~ũ#APHK|+T_,"ff PrvSZ>~JnChHU&3%TR8Xu؄bN!jc0жbC }FMT~6nzNGds=w[6M:h?%~hCau.^UP$]P?aYi&w|%|+ח֭3n3Zy_ndtkO.o3|geږz\ W롈21Uud†F=2?C4^ި9ߌ,uxL ~D;<@^1Rgo!nbn+AJ+x8e pU;̟PwB[.T9ձ6M/yvH <82(kܘΥ#䞽~CXՂQ9J޼n,ıK%OZBq?q;wߟE:ոZ`^Yn0xEௗQIR1nΈcQ#S)*C -VL%~H8Afwˁ KOg~VR&{tL[:-_i䘟 "['eI^@Kxr C[a^Kz9℁>WXma_wJveAHQKiA MA$؁4IXS!K0@%M3l_n!]08O0$ճ:ˣzm0vjB R$\%w4:Eyk"[tSb 3WC6`&ߡPshjߛz y.mu 8UsbjIJ6.fv3Z':+~KJzt^5@:d|K ! Zo j EpA֘ $ h *X%}Hx9vL^"M/޸CMW4ȊjW˕wӫ JW[u,+!B]rNH+>RKxFSzs͕y! Pqdf@ߴO!Hd^xG^%z%2Pl=KD@a%lnA6͠)=m|y"OSAW{=K]RuXVj13.ayz.X&C|Y-w XP[ q/Qp 0M$&~qcw@,yPq ^b VLi.0d4-USȅ}{xsfp'7 lMԺ :eZ74rebX`)?f9Rpd|(Pm;`m|m*NKa(|.*TkIm&\yt;9m#`0?ʐ4:+{AysԜ+ $KYφNAd%Z<-~# sIC<čAuev^)+A6V~eQ! ^bOjgjV fCo~@DžK}uAr6@ݕ!VIQFvJgJ gm14,5ܣ^pOu!&hh8;V 7on8vyI{|a5w;eu3[c*|xL? bT52sCOnحt'~)c$n$ Rr⭭ V? ib4F 5IˍΟ%jDZb>SWRO׬ 7v:ZMHWoXËL)0 WYB"o|qp0812k~Ѯ2^߈> h6'&Y{% ֏ j[UN.ώsj5Vਟy)NGpnwz.ޡ=f`*N)хdj1^s/rX>0*Ϸ-4w˽͇\E1/.zG|*[`q#ql#r{Q^HIc |޴CsJAܷ6]Wr|Iܯ|0ȣ N68n^,"4_o_^s7 Zx[Oa JBBʉaܰ1.Pkn:(0K tv C=pQ1$Qt)uoUx VJ@[kiIܫ }B6'Oo,t܃̔>&ahaS;,k xJ(p?pxzL,wXތ* oLIf1]3HheXEuoε7TM`D3Z1z$+X6'}9fB% $'mhc>"?"w$)sũuT3 Q"|54pzEqy4?c:&E¯9+]#|S ʝl.h.c(19&x'?VZ{_*$h{t6}y GSݨמHV Xfȶ:ggUt)-^*dӀghW|@h!le-S9NbW٩f4&|b@DHοd11|@&|U7\{X\XHS úV#@iE.64Fթjbn A 1}IZnS*rqC$ʇ [Tj'՟} S?;~?ym<3o?69 3Д~6IyS-E9YỦOnb#"m~ƀPA c[#$ER5KA !Q~["7z<0YaQ b}yI`UFm\oc1>;G6] su&gɍuxEY(P3{7.@XzE%%͗3`8Al'nF-ஙg(dD>H 7>¥߅,%UwWAs IeJ=* } i= z,cY5e :E(Hl) ]P [S=0l\uRHǢ*GwC%+;qi êxa/,X~7bk=6 ̀#4 ßR?9XإjV2yP5-\}I6;%T?>0h_Wq`3ӽB"=f#}>Y%iwz-t! ސ ET#@Cu[H#QOO"׏ f#0U咿Iנ.֚.6Ҥaf2k;ҨyVl@9yw >{ i{?KS ctjAo|of4] M÷REt[8 *}-jJ뉘qyeeS"߶S̡§O*㳍t:R# od~XPPJ#dN6lGS_ tE{؅PN^u1Q1 icgܺ^Q#_{taR~RUv=_F&,wHipb'ar)DӃQ  R/buIEy͢@/-*ڛ`"7.pF)OSB<r~ӌ9),!%[yRF`g%K pi﹍cЧ@Z"L>+Eb˃+țc9IQK:oꌏRJmЅx>8S!Op! tH*u%N9@2:j@[)51q.3Q-Th:oW-}򳣪JLp&&WQ HJ}Nmw1+$:pcICLr ׳QʽgEAߍ1KӔ9M YR=.Y-5:-^QA?+T =˟ tT♭T~I 'nuwױ6jf=-s; s<߸k0#ɉֽɽEtM G0!GAiή c+U㿏 Ur/qM m1b>4Tp㩡G>GDoacf5!hQ'1Y3ڬj]dN2Yh!k?)X  я uRVk`3A>8xc$/S 'Ҙ9m5ƾTg5!B|_$WFt=4>uE_P߷X?(ϊ7P876EA6S{tJkf Xf#3z'9)+Nq4ܴ<+D@'NRBuj/LrT(-o2!SJs : 2sܲ] d~<vvFsa9zQ|3?%Jdƈi_kijTET0`@Mx+9Ϭϸ=:1%QrPUn9N<ε(c(`\.P6v"~gZ+V-|49cdͮfE{N3 եWz9Xd3kt!.F幺U^{2OkY͚.4;A=USXB~ ̉Ϯl X.91 X޴-Ցb#NP՘عm"u4ьCGƑrsH_\z?~۬G/b֑1t\:˺t_)b!E[p~啰$e5Ŝp&t3`vz_5ė-?%P H;/?_2Z nAւl=9+icٶ^3ΪX؜ϰsTR JGIu䯷Bf5tBx"9_,e͢5]kn='S=;X%F1E9GX l C ۅхDMt+i39ζ啌P2)3;R HYseV[427JO!u^\1_. P?tQQ*oIźKV/3 >QLCsDL\ZG%H;V 5] V [g Ǥ~3X|8XR"oBjbt <=dɑl5'~/u1_%5{ҋ0Q(x)s/tYR Z7u_^ #!k^m]'4:*l125,TЗW볙ne>l% sf,6('RoeQ_FEp)-cfOy!~h⿇4&|Gx\UHNF*i=Nm~Wzo{u%c:ؼ=~]Xh| b̵|1W_lJL`^:E֜4X>8=N bpOXJt06&HQ,8j̬K g &VP1 wa3%{}&!zߝe h&N6[Z8W`Gd.1?<?ESDLF C5 U .]ȂPpKb}j ̴6܈#JȀӑ|&y R#8mūYe.r7`@gW/{%*p8N>6I(^n5K6p-@MS8 mҲ9GihʖUq ڋlWxfoPUY 3|7ơ_ut7g0v0e8@|+[?EӝҮx~9)՛v=^_XuhZ0GI|"( J(~ޢˬENR~锣 %ljVt!{# ':Ӿy{p҂(H0P1<3,,<+S\X,_Й֮P8qSKCҗ 9_h.3\{q[%q Cjb$[Lewߑ#";u\ZXQz|f`dETh2)mpJ2$*X]lpv3R]HJ At'җa.e{$vDI6xevW}gLK򬝊HMrJ , w.pܡ?.1FPxoۗ{JL+գ={rGs[9 44RZeDN&ÈcW8rl8Usl{Ja>M ]wZi$7msTP?i6úb2Z{ψ?E+fPƣS={0os(ix?8[4`qdEwAĩV6>x< c J\t0{`|ɋ7U"D`NE;={"ҹ)_6渊|DAӃ^K H g^w f}'S(|(H+<3_)""Q.k!I߄bbck|1c6ִO`ty‘s[GK֋$Y @܎mNY`C6k/W0gɑʀe!]OUdBT6)jOxI9sf^B d$rh ^FǗ8| 6Ӫ/1șu6Ν< hlTmg) cAmo_)syS[`6`(ڶ w-輠yck fx)ia)VTX׳atJ%5s }~\4k:pۏ.խwri%4&5JpF*!׍2vx$ّv ܗLc@%\t>;n̯\` @d>2gޢ?:U=BFs3}~mNL >=Ш̮oK!Ø$Un q65>S7GX".OeS I6 Ӱ"[U?]ʶ`F ACR>_X d)gm` "90y{X$=!x|(TU+F~pS|wvZImʀ^ Ȩ2X7VLmQP]fi3z ƌ)7CvfmZT9'&JgqO v']W ڛ6NgsEx~ZBCд>1o<i ^pɚ]ˬ 􀫘K(va;1Ñ6+Da/Wk(+$}Mm MѾu[OJ=:ne3V[q:@TL¾sOgW%ŷ?a' % AzaySVH*tBەei@3tޔ{ ECg%o?#^vCH>w3LM [+*(Wl3HX9#,b^6hL;3Ǜ+3¬<&5ZwAn# IV5sCT_=y{zh3Zڱo8bλ@^ Ԗv$:62m --=qh skX1Lp{@}/*ri@b ͈}H6x)(q`hY>wOK; #5:.l+A 8غA"+KDH՜ۍrp=f[t;_#.k Lɺ I"G?[BV|m⨇ka#Û~1Ιj@Cusn} u]q) #!tjDƽry5143~~P862p}v*nW-)XbxÁX3V6vv E#(r_ [jiz<>g3uꠍ&Vttkv #]00b3yܔ[^RYSbYlofR.;w"^]P̼3C.@8 s1`b#צ!.^FVlsio  _?d%/(S-KXP.Iem5Jh^k723nI&G+k*\BT`٬+{ fنv`~m՜sfVUD.]/|t8eBN4e8-ifO@9/\!شgMm"]UOZ1[& 4#NR?;Ő[YAvx"uwM=HnV[?Nw{aL:$M\zח->'w_9Z>^$gʧ|>fL }MoC}1UB.S{jڻD^V5e٣(/SCj<?)dt!fKQ V셇 oz3ONUc#YgN¯x,H,~Et1&2c"NOO.H9*zY(G&'~],pZH[qTX+"W"tFϰuT큸Oŕcrܼ+i`I9g*/ʅg\f]6mNxͦܰv՛v!|6ge5h$!^*FQv`y\=8ٌC@xHSO h!NT 6&@oS]$9lVs}a|b0)|U%R6AӤm:J@F؜[;.|?[ޜ;᱀D\"Afoy/^YplD^CQX A,Pu(YVoʹS|:8-vAIAdçlˮ($Yىd)E>׹ 4]t}gF*ȀY7rwh/a뼪rE_FQ5I,nOUImr+LB8wf X_Zڌ]zso)3.z{rl_x٪e_nTS̈%3q9WMO,~SxN'eK@ ٨ݿd 8,ݮ{VBl;`9vܵ؇U_"vI6xr@THu(,]Oj 7dX:u ݉Î*@/bѷ ZЄ`z_af7`}vR܍hFЗE|b(=$1JКbYDCZ]p&xv(NzKa7IԣFw~v_\86a^7?*)kP򲵈T;P[OcV=Uf%XL[!平ZS#Y;ѕv}BŒw\>oK _AR*AĬ_N,d?u/撼ڄKZP4; |H?#e$+ h[S E]C:9G {w6:&0ob&Azm{ 6 fwU5ppH!(nDl=KitMLy-LjYs&@Sg"mœͬTBkqv,J+=V|:(`X^9ӗt7״4$kg\8^ta]ٺb&yux׿sB5DiO@J,sj?"zd1׎82~=2ŕh ÕelTazDb>Y#Lp`CV=|}Q.Ċ -U t3Kmd6SN&-,ڒ&tV!Ȋ+k1~ޠ?'Fg.N<_ԾA1pK "3PTJHkY_viKkO5ùoTuGQ7Q7%L&:NNsłAD-$ֆ XQjRCvyh 4nɫB#wjK1VˀO\mPsW%UnˎS(rTgm~r*ȴCkD5&ѻw{z睽~E +,uC0I7=Z4{aB˙Jl&HE7+eb?ہ'1*@Kd/Qp yD0ʳWexV7MH^]'GR<2-F&ö؁ ~IXlzGn4%=WcU2|MĀ gCLè3*w=f>,Rd $sgX'̡ Cec >˰)<`Y |i[zݷW|c~LJ,mT+d[g?ǁn,"hM WȰr0W;{*TGYvl wҧQy=p 0+EFpM?_.,iuBBE6lW}V>\†%ϐR)bII Y,_&ą$?&az%pD j]v1˸6˒]]Y nt9cX` @6ۜI f_+y,ĖY|*Rrb b{>Y'4VĔuX K8gE6՝TZ!IZD>y{`QPY l܅y,kGr+3Oh,0jlW %q$[J\}_-Ƒ.z`Y7jS(GZQz|S:ӏuDjʔ=0cj3!k&5Ed83o!W'h W$cA"10|QۦGpȶUIafo|,z?Syi[e4w.s:|o\ i\ Vh1#I[n2 .MW-0ȣ.yLO1Wr fӅtrMm<8SpEn\sl1hbzNh]<;2.UX{_3Sf IO>!rvpY D}X/2BKRA15J º@ncއiZ mxN n84[p-Aƹb8n$fU[wޫA }3ES?61%FuZxcHD/= Df \a]K rd}=i\jDfrch*ϸj>&q[+͝h$E7qϐՏYH` Mz:%ka nQ{IjWZ"xO_۵j:D8On4܃ x\\&Zx|ihdoۋZFVl-Ǻ3,c46ڇA£U7J1ѝ_];׸ϚԹD6_9$s(=ޟOE_Xp7&5rs(` i|%l~` )is1^ܝyZ&Q8jyrLS&eqHA(Rzj,^dtP7+&F -ȀY 3a`ɲcb)~sp-;oLdko!zGԇH= ޝޟ3"&2gȚծX|F;dm"K 5.E|ˏܻ |yN>4ФœZŽd4KV;4vx0~,cjz ^Wy#I>mGN*(-QnqMq+g-3j[B\XAlY3Si%4Ar؈@ٌG)p#ȫ[0]XkmL<=I>j1 qS?6?\Hf$J¯ZK璲 yX8YAo;Tx[OFX/Im<}dѺvS 6Y*@mhi RGel:MC4!S~wYF}H U lUwfx/Y1MQ$\SXi6 e_v/ZCox9}Jh(ۜ(;ezF7lIu!YGO8ZjǁE#L<"{Zș;VѡR,<0r˅qE7TgB68r֊&D{RDOqxm&? ,Yʅh1= t]ЩXlHBN/iU\@k燣rB;T9A,~O9LY'YQtaf*β+$edoZ G!ť+8e|5²h~~d9%T}X38sRsp4wDVtN1^V2#ͯMKJ gźi)ѝG%8ȍEMz9md!,dAE¯3_Oepw6p OfcлGAG~-ڳf>{[8V!z?TIjMDv[O=`r,AJK- i<9DW;JUjb0[Rakxdr^*|LF.et$F)IʏeW6Y`y@ I`H[в=܅ԝ=p;c[ҒwЌfwW䭧rϲىD7KE/QM`U9g`yd 1Yߴ0s&QVɂo s-snUm rm4S}oC.T'T٠ (9չ줶e-#Y".h6q\$6V; su=hrɻJ+[O [ߢNG]6^*P"|ȏp/Nk=4J̊ Crj>Jrk|no<GVԏTIJ7ȍ-W郯Oƪ`TW OPg+筬IT<5X9aT- q܌\,X.XLU ~gB/bQg@+Z8+*3kXJXJUC7 ~>V67S"Jew h Y| CD͌S( F9L(Z.~%8O0ͼ )~K8Mc8|;ޘ8VL^M_ZKරZKE &`^vm0O6Cxvu:R?]ʝ~.rcMHu luNc= ;Hm ~,Fs|M5k+t@wVҹ(YfGƠ EDI@δG EȓJ`z GٵWF6hq-+ q;~)e;|Y):4(T& ':VɎfmM>k7,nG ,(8m^OAZdiƓ=68'Z_?ay UK @mٳ_eFS#h%:(Qš"Z)Y!#9e_16\"2Sr|1widsAܛmac.Mً5 Fspg&Dɡi @V+Ґ_~*7ޞIplwSfq(_d-?ukubÂ?LO"Гmdᗼ֝YuH蹸!ĝ&Z>jΟV8OrG:q1Wب@y+u?XyaRGҏ/=â8$iޙ #I T2"AmS\=>V-SfMpv+~^MPs;("u dѓԪ%v:E="r_rN=RŇOցI+E0W)qA`[[RPu/[叝DVmR[|pSW_-B9S/K}a긑/jH<^Vd=X{:gr[f4 m&1x97!$yȴyZӦGggxrET_2pU$s 'F˛-4pjmD x!&yR,/zzagX(a5f n'*1Wc%tjɡ D/14o-ӥ;2Z&bƧGn< |nHo6<1 y0Ŷ,aiǠ `6˞\N D 8xϷV0F75΍IՄo.V0ӶdtYvS 7Gi\\w %T ?#e| +8kIu=}jPus V|!d s[B,fxnދ]99i̔ O:A֒0Lr-nPaόΜ7^+ JdT}N]ӣy՘D3I삡CBbUbUD,˂${N oðe;֦\Ni7n@]l uڅjhsѳRm<>Aᾪb.> ZvScЁl0#J^,~iãFʆqRo !]}sf$ rHI8ͩ}8uunΎP`kj֣Η(Vx 'ɏdzR"^xEpiFޫ:<8YZue 2{&~mOĦ لF}9QN$8Xu7JJ3MCN:{fMP5t#KnҒ|N=_`aKSf$'z:hL[Iti11]R{x FZc3*{ N=}(V c!%`_&ں{ZI}H> o'J;7"ߘOřO u|v'e ǹ (Ӵ`yM'v؋ߝHE gFMI@]*W&A~%H4^Kev-'(זa#l, rrsҢ`1' k]'t{X "گp]bKOQJ$*I@Y3>&%xI/1$tWG\6JftVൖv[+隻͛CVtQW A8$;cw4*K͜˳^"%v{hzh!&k"eӃn6~#;l/c Kc%WtedjwkzCsοԥ`hsj[G2__ Sbn1__TlJfᙸHf;"}\ͬا9Qg<99y˚+eV3җ9ݗ>brB >Ftk&x#3#:p`֯3hvKt&ь3k靴/\̂=('-jBYܙfW,m趴 좥NԴ7 iv[7!. Ȋjmx{ $D,e>.0A[3QܡϢGH1<+_@yI삟츀 K9[>{nI.L^ SnNrw ҏu|m6X5G0)Pó/20^vWt%Ҷ˾֙]_))az}ߍ^R %,THr,ycq`hg&PŃת=uʗySd!i yb`^qZ2L8,DY!}䨌{)lCPO ~L=J6uz'|Q^Bsʠo8{~'=X7~&mVDamZ'VG%wj|5n-ƪxZ )rcFXpV%]Q+x~C9{9`cA$]d6׽b싏4^Y:.$g!s6W=BNv!Jvpwf"KbRW@?H08JM]tS՚:kgPlmdY^\Lw(7O/ӴS%j nr~a_=k?"]Ixj,ʀ{r$<ۿ6g(t]+4{A&ᬫowqE엗M V.WjnVuZ~tPQ-I&UWc"v_{ ʡ2y̌ n[kE!S?++n<뗍\)nT&AhVKNHm"}*l0K-O;}#?Ow.Ƚex7A;j &y:A½\"(Mo MGxZ]c=6V)=W;_O53`jWc7x!LJE羆9J J;筳^(oq+n;ě<`*ے>8F52g#'fі sUхk`TA@ nӴ8elT}vI]?Gz s3BKH}i` NܲI V t6+6E5xb+]+\7xIH vMLq|ufyi6l&>6ၒ'f<܈uo iz8Mi^LV &}i}ʸZ>h9 4p XT?E&җ0dvpS,(`.c k}dБUƟ}Ms0eș]$%b['ѯslRKDv,c͓-~`@N|qC{d{OwJW!I_D{6e,*OxP@*ښ[lgXP1~[B>I[O6b왍F4g<5n˧f7Y)CE UЦzܽ{)RďVJ7ͣJ#}n7gd׭#ۇ7)~vJdV IdJh X6+.@wygd]~ᆂ~ʕϹhU 2Q jARL}Xmklzя aQЈ02I_.*uH~ šlJA RCueħMZ. ΐNWH3ORń$_vaPRiFKֹ 7ƈ-GLHd):[e'#x1dS8yb(W=nnDnDf0L8E F^17/B):e1gUI$?HƠrX i Q< fgFeQWVI{sp(:5Vc0HhE: GUʢB:##R`OAgc[>໐ .X>7-iz-l.nN0nVVB ޽^!X́$\u1IG~m~N~,7Y=)^U"昸G& k)Śh6~z`YB/$Ʀ{z8CPCUdKοy􆷕8׽tYӮ=!ɴ[n}}RTD;n9a>t;'zf5>R~ V1Ϥ/־?(T>s4ciN7,\ro|}`„#Rs3t|)wQ]\=jʎQTDOHYH zy->~@( W=cN]G.%^{_fŽIz_`_?`Eݏ$!_e#ՕS iP=E"2 D4RW9=~Zb%ɦ|T(>vD]Me|sݒu^.7Ͷ3}SD=dZӋˏ@1;2'TAN)T{Dt;5>e@NH:ۮbj;A6`m -$,-Op7@9.)qyjHrxsC= aWuuHb]W%M nI_յR'`џ?*zb(k> ܽ4 n qtlcGTp}FҊўAm&l&֏k[ՔYR+f*5f1  xC>PƬz n?/w[ ->-wHmvl_oA_EO2dKLBy|1獘aV "$b8yC2 :8#*z%5 zQ>OѶ|7x1`ճg4N&<"f HtK"Zt+S!MCJh *l4;%uMV^O  y+pduTZ#vJmcA1ʤ?β90csz"FjŌ>2 mz➁0] K/C,ab.$ mk%|p틛%"]V i@XU\9&,OLϛX52{F1pllD~HæΆۻa7[ /u(jWyY!@iO}>.10i&j%$ DF>Z Z8&3bبS#⑤~ #eFk{a"Rl! XȲ~`)LXμ1vrRs}Mru빣5_dBgf e8>оm[i$<,kS9GÞ \yi ,xT>S$J>^PAW' AEHfo݄Hfkk&7K 0} лv 8^R?ٵ A@{XfdzFb5y 6O2 =~zJv#Ѽm\~Ai/] *ssU4}Ems:,{1@ {Yݶ/cK-/*Mnx̍9YD谅G9|FygR?]zܽ0 N7J#1GoEN'{rsmdp'W)5)㠴Own2oȘN(v|V &ïBd-!Mk;iyXc@}=8ꍚs |nhSsM y02& ZoviewH.h @u~?l0ۉԽk(%݋Ag@ȳu;G\]Ψ~+Sq"֌jLoc$dtZf,s>c.!WFЧѮýx?*Й{y;tmtZSZQ<}ʜpsm4:u{. P6%TS p*+Ww7!rkYƩ-Hςuj-ey0[ĞjT>Bdz gj (:cTK"'N}SO-!0mxMd2Q&/6a0#M^v<W=O 9ehMpxv MC0v `(n /Mv]ǗNFqzpbR m|tٝr>hyRxL8&I!/HW9RhȨ=Ϟ2$Iq@7Vֆb?)bH"i90w*؜mm MR=L$v^i`sr~yvqaFҁ4y!1B`bqH_ % ;7}r ɭF2?*yLjRĮvggU-gƑT=TLf qP~mg bޚlLUiym75dU~J׉=\o^h&˛Q4E񇄥\ԱI꽨ƣz=Ə0VrshOʨK%"}vcD|,ڇC-mO 1rR@0y["WD/@~6C; wou6c1i رnA3y&Wh ]׾ 0|5dc=YGhs%Qpk] Rl@vʩ gA/l~m))-ڬݘiR0Aܖ4R`26CLvثՔ3`;cVqtvFWI}DKMր;7I}j98ɌlFêyVfX#OP.-!khllĪO%yo%iȹNs t"~I{m3Dr1&8 0= BqZi䡮Iqy *ln$PylCϸx@>mOTe[h|#ANƎVnaDPia`2 p2z@ '<7 ٖPz5_oE,UɁ"K5K._^Wg; XU֦T>,- F?w.o*41u&r%;ϒ M ϵ+Vy7& 1rMqsoh'qkV a6,*\"YvAHΡW=omljwfܗ+d'V}"dՐ"T$yXurW7GjABacL#ݐ,مua;7/jRS781Ĭl m:-ZXY%"D| !f,o(/d-?E_9rULqNzdO~%aI䭗 c§%_6f*nf [1ĺ=1a _rFX4boTwp Xf"'Ѓ~^D{[ EܱwC\!Qɽ(V}!%rrc ԛ-o3wYdw.-o,卂r%M@!=6mK|gk1L̈rXzj ٕÌk`)Arr;18z*PvG$ v[t%ʞ3zxeo?$%ݲUBHk$qT= Pfx(@%&ܴjX5/섹n { 53PF e^`r=e@r;!&֩d&l0BSTY<5w8zoodj<I@ t?gi٦§T 4CP{<068G# Լ ƏǒÛyrߟ^}PrEE[‹t9HQay{w.OOO`FO2XX>!\xR#t\# C*\g"SǨG HriWCO >c2,<048)櫽PY,&DU-O?AbN)jUIm4SZLrr˯xE{}vԸ;;֤Btz0iOWic1^Z@ "yƻ(RCG߄nI$aB+3,b6EyYDMĕ"a!כ7> !ՌKw˰J~et&OeDxx+'㌑b*џ212ny_ >')/*dž8ŃOL;HKW!T79LᛋZ CmpEt@^@_ z6<,s\q.aiiӖGna&3 Cޙ{ߡMu6:cͪ&ηU7+(?-Zғӓlَ^cg4hg^R):;X>wdd!nV6kP44|BۚRwqDf4EyLޯIb֓<{(sx)TPw\/0*ҕrիUx$1'LaG+>9foSD6FXH(`){58J#  ޠcߎ.g 0+mN\"`K#@ ֔(`xJoj,i ?\(7lPYҍ%*@+ 2rδR#Շ͈H0QLDOo 흣C~f!m.`(A*XV`%jM/__^~ zL٠TX]6qN{䬔5 z1W`%^۱u9duvYLb¾Gy`BS0q}dN:rw"]}_PiQo`L=*",id/66S^el4EhD}Jsv}H7l,2L1`oǣ1c7ܫR,AILp !y IUM@3f2R%GpĂⱽ;뺌0Yv;]fcǎ|Rv ' +L2"U(PTO^!c Eetrz@-tha%sR`/dN\1F<{!xL&kQNʷ]`^: +i>>Jo49fcjYdO!gF{5 w3dNʷȗ2j:of+ 5nC9b0urڏ#FYN 0coIO+ |hWs{Ÿctg19%Fy;pS>&Kںxy)C`HF9)B$KApYqUiM-t@ "%UP 7"Tp 2cH^$9R1mK}ſy;G j^e *lD)|6S e~*fjlQny@(ՎV/qXKǏ Y3O*ӓq[CFs4A>} g'Fvb~ (V^9SqRx{*&A];b䗮"s:G*#UHC[ Y8tO,\:MJN'gZ2,nۥKty9}xؕN|U>kbKaiрlԉ|[&O%1dT >o-7v_B}- q>1Ap.{P,K~oj70$#jUܦ=v F:MfQn4mMȾ%ECL @7CNSU'צ.ek~ ~Gb !lDpolg-ueC"՚]!Pc;nF>(]>ŽnފsΤ~6Dz{e;!龄\JOdt F5xra2J<_w"i,Z CM2T:h;,bE\̔*?[RJ06W-=[5"CuԎJ\}g{`h)6Ԟ49nny/z{S 4\k?BUAzl7Miɰ&}o!ZFY=N`~ ¯RdYri0iʆ>Hp ԯ PA6 ; fw86R Q+}Ls_E'4}uxX8;FBMȦiTV`wP)BH^1ċi 4RF$ۨiFTrNblUλr w,_25f_l.JB kc\kK' K <3Hd>& )BO y@ad}kLh_XMr1W*$ED4e1goؔ1;xYW֮8o}tcfZRz#5T:|uxlܜtk`̀hoR,B@#yFu&)ǟv7 SC[#b!TO_XN姣/ sYVc:v/:֏~ tj=H*'5'Ap6Xg `5Tb-&ҡf(@^TTNb~j*gHLoTs^bF"UA1E@#>hr}o0' |Tyx8[dsOoʴԧ{"A1˃.(ay{n$U7Qb1D\WkZY8T5SNHh&Mut6nyW7Ʀgܣ۟Ll+MЗb2ЧՍ"gCi>y¬gsDrnS+~(90:f֘c&41=R]T"׽K4r/S;h~gBQ Q"B#C6Khڝm1_{̂uz;I1:LVBqqO@|l7f3?xxo2 ^s;"3u<]ZͣKIxͰQK=3jؙL֌QUQY2nc:P9 M U. ,ߍ'7i1|x{|ڒ4cٗ[~cpAk:BRi'l(4Fe0t@& 0xkMFzfF4D|'Sb|Jxx4͚*NV4@c qŁ=%6q];7?x˷I598ܣ-) Qv[Q?٧Dbv"nWr,c :Ay><%gvPdAo6Ć{i oLkbo2iI$Q/_AWEnlUkG7Uqˏ֖M[[uA[1qc$tԉ:-s堫b]N(u/sm&C 7WSJT~&E?n43#@Q$ fϓqꏽ-‰G!GXP/;9!X(<^Nd! K-?f985Y& G+,98XfS*99[`!_TEJ>jugF7TOo ~ҦQNErMSHK]@"X ,m Ɵ*-V*bɜ+Rp pM0nXf,uFZ+c Jk$Xi,CI[p>3:5[G7O6(ߥt cdq܏pʲ][dԽi\H2>yVnMHF8Uwŷ5w܊P>8ޯ!Cg9ٟe$X;74̘aOy#Cy٪ sNG55TR ATsrϤ 2߷PՍiAթ`> *${A՗0QoƑr~uQŊOɟݢ?flN2OrzM̟au8Q:u;6UgoATHDtS=xWLb'81>}Ģ\y X$֑iMA+Y%UHkjj+'N8vE0#U^Th:O7 V ++v΢[9bNo[49.#fY5CQ$}‡3)O /4(/>:>=GnWt*}@͌>>(@뱃sՐdI^Z&t򭜝b%b'#5gxSDT&ơ9GHmN;CVTOƽuWhiJu`ѠMdt VS ϳ|*k&QfCp0%:ӍBtE}75j6 daPxw;P&ʊn)MPl*9+90`=)s[GI5qK (HAG@|J+ Hn*p!cT-2؟%N5P葆[4y)7n%W _ph`z:),ן{@+|{A;OV&K{"˴L?q۰GcR>Y#-gXSO9N%y0t/|;2߬x))B#*wOvRArLwoDNaiJWP]#^HhWe-c._vEr>w_1ɣ{#AxQcJ(= `H1Vo`)">F;9 F#?SWVGbe1;$>\?aAXD}a*$tռ-8S62drN#O;CambT˗VDo[r[ 4gB`f|^X-  3Q0;IrP;4/e'_1H'8T[yx=dsTE8ҬPHji@zV9`y C(Ȁ|11TQ@^BuX<0Sh}[=~j~˶zbRen sBu u?GtP2NFIqt6> ϦҶ^I1,O,=@&]|ks8(0 4f&x ?v` /iL̓rb /6GЙށ9:΃vyႵ@Y-C/Rh>m?_4t.~YjT.o yL(DT.ݵ$95 OY 1_VK ^O+[/;q+ g'h3`Qgt.XE]ֱÃ{ _烴\F4>rE(X,ǬqMlIXZ]sR /}{Hdh8&J#%7ɽA93-G昕DN/x'"L!UG乗c]EKAH0Ox'7Q : ޶N SľzgCbҚkPĊ["yd)^mG> hJ:5m1,07.>&!*BWm;)M%ԡ[pRhz"Tc V $l\OfgC9y:4U5=_'n]!݂KM'yR%[|s!PXQ6( ߰QƦT|.ռ#}Isx؞N\W${KN(ۅ:M9b$D@3Ͻ:_k a?=d)C;BM}5̐f8b5e튊3:,iLm=$HЩ;xǝK8B/ގPw;Bm$]o\&pBaPM_R=f|wXa<T3t49lV:[}Q?~30Q~v4"|.."qՓ!odgV2w1Qpv}̹t%O玭>} Fi]Ha}|>yp{u>CJ/c+V`U#e[ |PD)J9Ms_8,i90?m gq:a؊"kWf 3 ;#g#),' ) +Ԑ6!w7Ck9~3Jd4,c{oWs)kcQ:}Hjwa3?h*qA0NZ(8@ή0-ɉΒԔY(e /Sm͹jg>Wk7@j2ho'2ZHeUf.rDi %IJ@tn`m8I186B:)t2_!^:(&js"'n`o>kNԍR`F=h]3}. 4DlnS}P* W/C\6A,On󍮈.(JETo)p& O2*D?\^];|g$!e{TFի&RZY}jV1_Vh_ 6pFb.uQZ _`旎\6J+?'ګW6T>E}>o-&ʃ.,A`-!kkf3[x_g#yͿ˝D]rL fomq:u$Rߍ ˃Yw? v7>,}~p;vdz%S YLugH<ߌ{KҎx!v{c;ip=O[SiB2`z?6w˗kNzą3-.lW[j&3d҄58#[(R4A~EpG ]}Cx{_Gfw&aCINwS2()$Z)no F p42lm)v'T2p~A`.pTkZ)ΐNkkī%= ü z/”s]̾{RPPONL+_P"]/Ruq4tx } =wV_T<[ ſ}TYA ;昀hQ)`e/-L*uq1޵"i6 m; D4>!WjH٘ޫnV15;dt ܸοKdµS -g_~PќƔَe'mLa"!~aaoLGΦU&f\u_EQy.)@aj p"/l>wIMLfIMc/3T A2|ǘe96^=,.pH5`U %ˋ Qsh*T]_}k+\]k#Y'?qmTjt/ư;Mj )Cqqf@N&֞EW _O\(yx~N|K&z[VA|AX VzP@"-Ύ(rRSK)ʾ4>|H^ '.,\,ZJI Y=E<n˛/f(l&iV}Kwȑ֬s#@rآmc'inaదǹE0w,̗sMDk( b~ϑS %6P,A)6߶ #Qnޔl6/8{Rտ$אLC2@aRiXdv[8-]*!Jb0dt`B,i)vQ$?K`b͆tU$ۖ~G^9 %B&1 GL8B]i7}`rƓ&6BiELnGO ɈGE*҇B^^KS!9 Qx Dɕ?mkX&$ݑ"7@r!;hߪ(_jh@x/\$E )]:h)(F$(I`"qe y{|@GRXJFvd}8T@?*@coQ0XjH ZU^ TdE!xRN;/3c/t0m$!Փ"/ȱ]p\{i9*ŭH J zjD+Z(M^pu+w`F,boiC7.]ow@ 6T#9,}XI?-1{#0(s5>in>yPOX'mo`&,APyI0ąٿY ֱFHV|?K0v76Pؽ$|`zG=FR@] L>:M@wa5^ 1/ =ډc_$]$qMڵ~$eZMPE)yRjˣLj@[-";5Y/ =" ,y+μ Cb脺])Oқ~j(;k][%Tm;H색j$'@ePߔ?z8Hc41 P"f]tn Ϲ+iݳkr<7=%8噻@P~5GS)\4$A&;iA!{M?;[g;aj1~#+`#S}=r0 4vD.v*tNvPPCFb\E@a&NA#d5j(ܩKPrZai)6q^vLi0+Q ax ۊ{[^/%0̍ݐA ӊ?^j_ >ᛌԒ}IhH$bLݹAgAa4Vu'ҥۜ(H wF86bLD+3kˇ,.NR:;(,~1co&ɢdlĭ08'}㚝8Ԩ xO6vS!4:,G=UiE?h#E=r8Vn9ŞSQp]O4rpmIunѠbɉ }oeVb8pN?XiU1-\q\qOZ( Yv—BvjX(L@3o>B%?u!|47fEAXq}қ֝g<fNAɆHt"˄9;Sd]&g܀ }M9?[u|د{nSfH`.^:$ms޾ξnbv]9E`j""[v)uabꙚ{\Kjz#cIJ.o@eNW\A%j |<]V3}}.;܁&m@zSzwJJLQ{*HӐ(]Yme7T}D=S֏C83{qD**ˏz4^NP=$Lp0WYaR)8=r[਩ hQ-rrGJ h튦9:yod [[)KP^e (廥ο$k-nDX>z Dz&38|qqZ(зUwqhXoFlƱr**Vؿӓo{<%q( *jٰeF ;۱}V Ϛ(ZLaz6Sbd/=TD-WG|= ߼'a)ʛ.wg`&f+ܽn*5]^ɭ$XA6Rf"x<o5Q_$|~LʙQ@-t;Qз<.v؃,J,*w$Yi0!~ 9nBͽD@%5J"t˦oJ&DaKĵ&K{@mgx95'Ȅ(&+7F"jz|b!.]pG~LKq vGIUPAզqF!*L\

]TrGj4rq9 m(fx.]`=Pr| b!x&:Q%U ̤g0Y9^[!f5-AKbG,հ@gp2N*/î )9PsxŲE\B&Lh CBHLz& .W3WV{Sv0'%jwenέS,"\ƛ䲋e\Gs&Ƶ%m\ehQ_x]4Pl"j|l\MlAmN<$f|eս ۙv۾ !EmN|pi5J2^n/ @3ڔ arRƋ`G'?F i8Fm먮5I=6 I\s(P3M)ZG"m#^ߏvbT9%Vy7&rBkx{^᭽:U: 6Sڛ3PP9BbXSZڬ\Dg:~InHi<Ώ=ÛZ)H4kv֫fA^GاXX+k-RN~*PʺXG:=ŏe'2s{'U):!._&wv4D}ܬ lt-TbN5 93cFJxfw|>n0YH { Ъv24U$lr+j~u _{f;;DP[:?1Yq咩hAb@H*j&Zh6fUaH(ȇzwZ,mbÌ4ۼy|og4EI=8dzcmOGqq-oS<{sHjCIbv{kI̳3}Wu3NuWkp̖6^:߯H.؄)^S0s&% J*PP{[htJ~\ i(Y{MeVm:-2ƅ9ܕz2BPa ˓h/ONi٭C87)XtFȇ1O|Ef*!c35B=Lk>1R IE*vYW SE>6]^ouXBaWϼPrr)."?"Umj}? p.pw Waˡz}YZE)&wY'F`!\Zl|{l%-y7abac9|&k9ІF 4I~@뙅T!v6 JyFQnj: ֓ZXOӮs:4d<>Ä7rZϯIZC¯L@$6PmC v15nv|Xk"7dU-Bl6s9}#,C[ QޤaGgbʸo$wNJiX°oy(V+Zpc{ }+| Lr Zˆ9D޺c|cs =7:Kߺ^#4Ȱ&֠*ŠO +lSh; p4P(EோA- dEM%w I/GMIʐ /뱕淄HGĤ2F (#4hջuj(t5^{̵bޡ?z{fK8E􎫏'}ϓ0<"e_aY#B9j .+Ɓ0"0{vXfz3DxMis$zZ.ǎ=5*],GU;tY ǀTχTv*ßyI!9$d}^/qjVgł㢮h W ܘ>5 3BO[r2V>_Wu5!+p^fnB u;஠x\h ,:#tYe_FVMN8k-[ZYpT|"M+%ϭk;;GY4rWגE=bo2hBɫn>.ffгL8MͰȌ؏ y:zȲQ2HB3GD9\FlA\fvz&x`{O|*'%TxIca*dl^XQ[ l`/S-|֏73z %S|cl\J;m8&A[wOn]]l5wkW;]6&gqܗ^ջ23ǢM ]!n~*C)( ⺞ԔLY99.gD_㊑ߕG9w6+qMVcְ03OjE 9[^c@|}:ɩ /28ס|erh֊C163.[D=8Dġruޗ'ΑW2&phGuepGP7`vjD,>KQ(fحd'_5!Pf1 }I-+Y -nǴH oHH?>b@ EĽ]Iv\aE,(մql i/P`N= ϐ^ӬNu(PT^wcp&Fm?\B LfE+unNՇ#Y|8SeW YV|<{ z@󘖇U 4B&} wp(klk(L|xTip@ıXtz+i܎Ca?ΝN^^VB8z\.%~v^o(8a:y۹5wح#!ʫ_/L<"mxVE 0;zEye;_P<8r^ ӛ|P-J_9TU0\l "&xJBDfM lM6s  `pŸ}Y2r(TvzN+;73#\;♸1D^lxy"^qoV5Ie8_Hxe F{baqPZB _^(tltid*TM7]O Y#eu=քZl" U#0ܲ`7gOyX%v-kIYP{&i24y6)jWㆶkh9Mqj#KgJzS\GReyF!{(IL͢%A-%ttI]ELۆ#TE}ĹT-xNLHsČ u.S6G\-D~ ۰Ԍ1+hnX_)iUP!eH]tZL .9O(6B/~E^$-W tA^C2@N{&w̄ԣTݗ5$<7W?_=U3w>W QE(߉(t,[dj3%LqrO̽ y|ׁ:$]W#鵆qF'%,fi| /2W td%7/1a`])E|LQAxL Pmi~|fGф.xԄh{o#tF$ ?2|8hp]2sٶAkE02zh>؄@ Si2胷i_~˞`;=i?~,A;ڳf^pH4Btu;S-ws:4Iƫ*JQ\d/W6 D){Gh# I ljSwY["=5[DV;T5aL h_JD7!M6hFJA3|'JЖCuǣy'MMN@(ecӿ>̂;xNik3qO}8P%}ʷY_xIӻ$v#D{HGa6_>\DvJ){#<J2~XܗV2V$D\fCX_ &|Eql;>.W3S%vF4otO*5-ΧlmAoRժ,ܚ%s<=vj 2d7M*m@gز_⍹oԹkr6 nVHr6S>)n~kj$z|}Խ$JX*bx)kb@:9(°yCRN&Oļe@7A=E) 'OI@vbn'^{R44 ~H j0l8bIlaMZK 猅JhNQ'zZ@Lb.PX'!7Vh5Z>wBy.ArQ(mO@ X*vlKÉ-8p例dp/rאU4t)jfjY%'val{lSK.݈ C}%)Qx4M/v0 j/L#5Q6c 91<_tqԔKGJ[[dwmy}AJia }nɨӚ|zYꁳ&dw<$eBsO,pkuXrLxJ74v9"0`\(1 u*tHvݢtj:0@|N+;YT8\g#2 Zk{'#v")Si $=:$RNBt^Il*!]V׸YKG-E]#._\Inn(hs!#V˚&.UӔ-ZτG!;/YmY7eB`ͥ7 w"9R52SGv J\ܴވ]np:7w+ȷh^M3CYLR6co>`8nR_R_C?I E*3o!<#;._uC¸VIo(yD]RkDyPy~fߺq,wK0Ok }0Buf h .Tܼ35^Ds8 $-oEcQa*>Dˏ en¢[ gfAY "ۍ8̵nH`KcS5;0əJ4.4m_b\K#Y qʝ_(Rpt`?14xxG`|/#<$;1Qݹ`ŭ3|8;i}=[ES;":*:O5#,#Hj ׅ`?wu ‰*֡dy He`_/5lzC*N,r*5~cam!h;FyչZZ3KY?QTK0fi-B0"B  Mς /`<4n򝈃,(.{pPL=@DE?cJ<ޱpV,f~C+u~֞cg:ϲvI AGER?n(@vML6l>lNfU_ҔA*<K)=K\j0S8We3JEDrWnw}!oA/* )gܨj\RQsI#KLr'vm6HI[>f?q_nL`0x(l3R\< r(4YǸ3opF p~6HRv~Pk*3mnˆ _񩝌15(X;;!nQ`ɑ2`?`Ζ-Mq:Fٜbo=A?CGzG!ݎm9`nS2ڂQV˪m#e2˝k*y_)$hRPcKJ,̷֒Ďt]/:,^:+3"K<\< )V>1_/PewpnOrե'|sor!4;+hPڱ[@DaރJ+Jd]KxP-"6 ؞\/(‚B?9\2Vy{-S8 >gH{:'WzXkF4|X~oFf+*-aq3M4P(ORRpAZ/qv6a2;o>iNG+t{Ҥg?Ϸ =3NCTy9*> \v-I4E{D(ȷL9 io`i?(GWgj Fm0 RI"sHb,Ӌ^>h#&ן}様I&Fo/s{'IrEG_%)th&v]˜:%THtn,K*ˡ6 lQOb&53xBKNDٖÏrzP5zں_}$3W;_"`A|n V_;}\|}GY6O@s1WU%їW9a?N @ҽ%(̪̯*fD.Ji(Vb1ێ࡬,;σTWwq?s|PθR"Pl %`Vfgs^h"`c5FNh9N[4MjUX1p 2O:%eQjT dPL&\JQMUDR7@q?M4/`H\QZUm#6( ElbI[k[O: @)pk*FAH[X{h5i'/Mݷ#UesIf-V ~wXvoeǶ7O٦c`xX5@_uv_I2F҃nLҔ,AV5]Sf"bVeʈ#.n`:&Ltפ^0Xh qw4"w{ ЌI^a:?RS*: ɠl3>7`J ܚX}Agj2M:;)'>4D6q Ì}zi;)?j*)sY;[V{;t*t~5 'w%32_0C9omF9ԯgB+V`K,R= 0ľֱ$:ϯ1t7c%=ŁC(M7/"QKLs` n6lԋ:^:zcr{"#6H0Vnܽݙ>r՟gAF)r%tЎņ#$ J[K"I HQ% ٶ| 6״$PIchn8zy.Acٴ$2 !,{xd/PVpc1Qg=IpɆ@I@ !P(>hpJGə% 1H7jwT/vS/2]eU€7>]u^ s\n a{vD 56ӢD:S`+?[[`GM#}/=DO3*e 4u4ܘdPd.0~-[mJɈG^B\uDJM\P^w9j Ef7yȼzn2dn8x{~nO8 S>CY6Uom(zuoY^U [2-3φCoin1#I"KWŸ#3$)@edͷ)&F]%1HߘMj+;pæm+.]2%' \\5 Y bO6=˥{:>=£X¸Ez޷=QyD;Dh ?E_Μ0h#1}u#u2r:s z(jInh.(GX;+'ǡ_hXҝAb瞆~h.95IЎ\AaBF޸vrQO;obiqn> k.g K㐠BCWrk>˰c=8y3 d2ĘyRg9{bvb~K ߈ƶpb!!zH삩b_zBtʧc!fbne -)SHBvcƎh+B/LƟg)*gb ="5qON5]wv)qu<\V61p6][,0>t!+ϭ?; E6' i7&EsJLjʜcH8 k2::b |g`$  E;{L4% OĩڷߴgJzeSvi\p^)(ņq z'Gg(v/{49i|>LN?|u1K%މJTZ>߃c|E/f7JUQgˀgi{ɎtFnU֪T`v65T,JjLN&Jބ?xZ#olal)i KM: hsRkIxM ^ɿ ,Ҧ|=? f~0/ <.`m̎QjYt$_n}\vHv9KbL= 5rpK50} gK<kz_gԤf耗iq jfxƌl{S 'F&L+ɧ\h/:+9QoL!k{s4kz~e"{W /"fi|B%wz2}ׯ3AB2ME>g $[@ ;G{j̎]e)Wᔢ XE}F뫔?]R '>ne@l5vzp=.ˢ}66FLdmj nOC9GG[5VJIr./Ynx}S]MhC?[iJj,oZ/}N *J(Mvgd&%Hj<M iI 7KY:TҧA ӽӨ⓾*RBcL;&y=CQfCR̭;=y^>֯L/@~< WHtaEV GP1t:m5Ӆwj lg?Ǯ+:GS*8_(.9JՕTDRD-;Q*`/~IASCR ηуlE,y ٬;Żz^M%SPvuTaDɸWHׇA:(MtT:,}GqqؓdҥDD|ѩW在]0 TZ\YD- O/^K0 ;_vH&@g=K+Qh=+4wV;BV<^ qC#Nխ8MTG)awO᷼8<)@]ș{,m XŰm̭8XЫoˢ9%+`޺ ۏy6} : &jKXg@̋Q&m-.LAMBMbf_ rhAHmܤ68;bԻ_i3!#4"rv7Jg> HUkdOU QbG¬%=BoNl2ݜ~hC!D׫3/2b, izB]3 ; "qvDcO\p--9 RIbe({ㅪ\Am802l$Yy'br',nBq(xy`T!H:mV 匄'7ϊQ&Sd$ vQ;s8P qۨ%efKM5j H &n` /` ;͚ s2>z1|YWW}n,0ɪ߼t?8C͗#."GI6)op(IlЊr^v?:T&\SIxA9ۏU_qfύ;-ZX7vAEѨE lt>&G ,^[(ǍA3-HBdh7䏢HGm i\GTnY!KhњdlK P"FGMWKXa_gٹoX8Qlv4ov̿ F6X!XOiKK^\]{X'wg"6m%Яb%(ѲFd1zlt :'5RGtl| :P|AgiG|h@@BF(qo>\5fۭj=.}P{k bP'~$^рmmעWy6Xt?#oض=zM|ó˥OY˘KS܂z㨈(a-OɼئV{߆'3[rEv΢=5t_IOtzwoIrNzyp*OWov똱nV@ē \4vle.C _w%k1 oJ]کҫX8*7(sMyǮgEX66f3yA*A%#/@hgA0-"*G\`_m볨Zʛhԇ%o`>_3 xTT{L ujKLaKO{ s Mӳ;lB}="wK'#M ]CZPC s^M'kyIﶒt|M 3w㠂jksDWYKCUL8!3ֽi{廓EU.n x2Xh_i#BWVBɜcb*Hiع_ovQӞlqE[\qwtnqf,q\HeMxY؅~du?t,ۀQVCpI%q1;_+<g!0~R{"ơ9 w9Дd OH|0A>L|r=ATv] ϪL*=wjȱg/;\ҕ},@3b7`.G!Vo8Bh/͵+OmcM'd(ne,IBKmj72 ,00~ҎDN @eyp}D*U{+bB;<5;*e'k%# iFg, 5B<ueFofo3E31Ie8C.ZLR*rN Ȋ`47ۓ1~H$eP7NeΊE#V0q+sjhNrF9#vyVVsC S:'QTLtTb_ӲEݕێa-ЎQq*4땁!$jXb%u j I+@}'q8mXyX%1C6/_uU6]\Mklk#*_Tcmi,(0%, pC2ܷgB [-Q>ٗڰI_KJ8rDK8ۺF}+цG<Ñw*5=C3 DUK+^gW+Tt= YይP+9P|{Vc;Lke;O߸IL# e-+]< ?ȁ\.XRqTj%a(+cWjfxwq u,t+:uxQΟpvE8?ri(`bPhͯBJTBs^Qp $%–Icx78Vmƾvœ [e<{/!ND{+"{\zMũ>FzP<@*k.buNp|8ڋ dfgyIHC]*LjX'2WH1JE'A58w YW/as>ː] C@eU#r)k~KJN87]ب(qn\S'90@ w V#V1:5( }Wм ^I0^\=5@F!?9]dj"n#qz3i%Z?"ߑiv\;f0:񐊚ezyw7j1/9i^_VRM*؞n 4gUs`kxFL$8z > ټօL+u$Pä|<^ܑ9f[2){8sXGd\o5F$?bmL&)wnu~E~#?(ϩyS#{( 1z#8A]F\wu4MQ(Rwˢ 2s;-dILRIUq1cT䷪8Փzu 7{_3:OF˾hc_Ȯ\ќ~£!'W&7x =mw}UB>o92_Gv8hK6I:] 4H#aZ @K~͍K`_Ճ/FXuJ*2}x֏#ŒnT|:rۮ:bUuiӼ8_Ux߱<Ep8 ~;N1xX"E}e/QVT;%s\~(Ŭ*$S5 Nϝkl$a'6R1mAn_!Gf6eF7`Y'D`$%炋ԆY;[eY|\S%>bZ4K0cBtmG=uЇIb$08_IԢ0**/ܮl"$[C3-v~8bxt-s{(iB.cGy}(6QKPrdȆ5誢@D7Z) ;nƨEzxIAS%$hmiBlehQ{hd:bH"Rn XVO9Je&bd*J(.,v '+ !/v1"e9~g9ɏ]hncA?XX6Q5Q"imN7ٓJO+e)#hKl=Y:dIq&GNҎؖoT`4"C%s3pќA>@>2Eal@ة?0&WkEF.:sqany$@Fϙ*[ sS5}B5V*B ỸkӞ JVmyS)zlj1k"/M|U!' s~\r5 9$['\1Mv]G Ci[A{t=@;˭$W0Fk܉#E tCϋ$,Qf ssayQw:tV5gMNeVm7 ~j <'CirCCKE'.Ibv-4w`}FFP!ҖT ~+O;(KIcB~,L\+w b0Lyi^ +Vݟ,+m/ x[t]U" F dJYEl9Rzf:j>9suXX MN}Mц0 T"w JDr UM Cwz"וiVSEtKT^I]S =ƻOR5`ۯ=ba_uwkNPq/j2gd_̭GT/*n^*DZAjM-٠kulfi~@JmoEhcZt!=/ q.B HRgFW@L?K&InS 򱏂i4+h]w6i?-9ɽ*-IpiDž?&_\zJO 0?ʥMJhʚcZ?TfiAjgb@'?=YCBjYml+*djɋOopRS^ OԤQ7U$F9lʴ\lJ0]?Rҡ!5U5NAu"7Uhzy<"(r|a8qxnդJXjm[aшs{T t_p ۚ(Ϡܻ:lA +(ΫXCJo7GmK(d+= TJ^5rDxÇzb5@u8PB\<]޷ )9y- ja5 RYvckR9|Vjܮm.EUAb-VEL4fkV+E=36N|)\وB'ÊdBGuOPж$ MV ]4;^r;Vuh$ |($Z9flkϰF hnctSkY>?4Rt]rjM2`A}.TipՠL$BT 3I+z E+7DYt3fPݦ=(a<xWjUt%VPȗCCK@2h&TxD l'MHu7j]<^E-\-08+Fn갯D\xoP̌u&e"c TWL*`h9:A_{6|q8eQ= Br岎D{…2ҭ1ߧI٩x]Y.7 (Nbo[W[}K%@CcLJM`Pe}؅NtՔHZhoscNq#tpw\?`j_)|wSϗ2\!$8U7Mv b^@&m}_(=V(ț'pܿXflRHuU8w]ջi,SW+8  '|5LQҊ]݃.Ȼ՝.em9S0^_E ZyXNU6~vޛ%DyyT745P\%Q/]DE˸1>wt!]qNY? gvb6ՁPj&wN4M7>==V_eEVDW*\Gxuv%竨VQVWZٕPѼ,{6mVfGr@hK,#H7c-A\;Y\ߓ,a9tنul@.K.]3U#NY߆+my5I3&tsLK$s \y +U ;][ڎ!| D TT?W)xN;7|'{/d\UX8 `6b5 T="Ql3*8 KT Ⱥ4?9.{0`MN~;cѮn l3rҔH.TcK|;8oQc**9=H{NG8MÔ2/?jfED][g<#x/#byS;yX;եDEfku@uDhp.wV<7P3m %W3jcĩNjҭW4Whcg[m* tW,N9ş>) H/Y޾?ըV6(E4ٮ Xdq3.#-B2,E#y=]naqTR?Wg8IYBHYdN<'ͭp `~ E&X䯋Gh?Ai<ؖTCybd&UbYFՃKB2I7:~}"W]V7{dzyzM!\<·f9Ch /:İPuhLeFij1O  UB7@L=ҲT4i/2³XB6'MjƐEqt=;jkbO$㵉$5i| 1h (. u[xoFZ̨t** )@;DW¼uvԞ55" ~&Ng Vlid̋=KyNNv\$Ef H/2 člT;vjuba?7N}@n;3n*CxoDH;˼2X\_a\޳Vis+}M fv#O:(Qa!U:@rþb9@%*R /&_iwzX,(6a-b%POGC44z'EUt5t~{NKBug^YŧAt[D↧ 8h+u A[|hS*M{#263A&$jMtj$$bѱKզ:m նDGiE[ޔU"`kM8Wy~(5+}Ga2IE xQ[/l&ߵ r_HpߘaB$Mt M|^/U"hw[Um vu{7K0QQ"+6:\J8?#HUXEP롡EQ:쐛tFwG[b"Ӌ&^C=g3٥5л3Vxj,exG fog79=>gt1O ȱO6^0z5%8,R~S!C$6OFaw bًr{?Q\\d(_(7UM#޻?,Izµ[e*OhFnrTڕ*\`~dcf\#O~I&W D5Ä['\(ϾEh8fiRx`7k`<)+3pI|8>d4::IXU&~1e M"FJ̜8X83ZS_v^Fg%B) @K2 +7F,q7䅜%?Ž4vw8WNЭ(!EF72u\h ER!hhJ&uoxSg}𚖇|z9U ÈS?dDY%a]͹ _e)չ>4i=: =p_sUOqWr'6YdE/o%s1`77zlWψmsÙ:&J[hM*[t֧yL$,hţ~>[VyQV,pXnYVV͜Z 2n''^1 OUDzqgK+ O5zKE%[dany!Bvg=pH騶E%1<ݗ ]o̟y%Qzj߉0E5MH<_{ u)8koCmټ7\ |bO^H1 ͒inݩSߟ\Zڇy ˠeKR66} HSPn<=/ekAGlg~2{AG|uEFm %eiE"_ela!UX= 59h]c݀\y{aO"˽q(EPP\68fҞÅNqZ|Ia³g$k YGS6HKAN<hK/wmՖ!u!ߪ.|45=L}h2?8qupR92c߶%8*f< v"sѵIl`KUpgxD`5*%?9W`PfZuI+Ǖڊ (2#ڤ-SORJk.Rn,%ݰp /ZEkjהƗd>5 " ~h2·Om4Zfa|xselMǦLfA䇻݃_K~`2.nvvi!{VF3uÐPEJ9XҨǦe6D|"S<. 'T%aϜkyv'θq ~ yTsRґ6ˋ(4eqvxlkQq -}p>RTdQ1TpINhe33bs%}Z Ūwa@3_dll/mV@@ Į4 A 4Y˨PU|+QsbKGa9NSp!>@Rs@z'W6LTTԾ.0V= 9fZ5ah̓ʼnp`Vx薰 v͸w<3ztq܈/V6T'@ I:i#'?vT r*>NaIpuF9`E贂D 2r~7M/No} v ͕@S=ūw6ҷP_wKetU~rsyȼw=\WEb/kkse:O5*KɫgkA5v%53IxF8f)awq1I~--ْK@MT|3l2}©"c<|2~6E_#7}*.SZ״VhPBS!|/}N[<\Y4QARHF%sqxD!x2ygH*7c^Ed&3KҭF<-NmrDN*$rDڜ J6܋f2q1I?KFѾ'jksLtie ZoI715>6.ڸH\!>~0ق(@sSoO2*k*ʊ Þ rЛ@oeu .D=BR٬$/+y`s¡*)Y:'ڳCi)c2g 627#U;Ζ 1P>7Tҧ~ 1%o$ݏ oZ F͍~+lWؿKU9II픈R} | '$7D3o `,XBpZDnF6hfW-*޽M^_JF%lfLZ6 T^IeWH"6h@Po˲DKFRbgje0.`j:*WiXg,}d]1/ Ig1ይR<FEI2"YX/r]Rj q,p̂i̪q R:QhTJ1vȂbԕlDO4Xحjp+>7 +GYw u[/x{ѕg{anHmL]YB.W~>os}jY+ (z@3w3Ƣ~a)A(+zl./ffQLHh9( >-2IN*, {̊d%u |<`śr{4Ja.+HCPhdI2o~. Y-z?K3vʥ^sXg0r@t9‡8M7>=f4 ]#@ה#c_7 ն߉"G < -m;jſ Vr&H~UTAu")RflY 9%)WĤK1VA(r T yHd*ի&T ETwux!q爙Q,78RIe o6=080֘cxyg9!H}w%BjSu-,9)5uUu{2'Ƥj3ɿ]ɰ\T1P ٱQYx݀\QVG<}[-NoCJhI0><< KU煀0@Ͽ3i 4)-%֎ hX<3G8[Pa!'o'qa;s5nDXC6'g3 g+S᜴罎·B9746_*"G*TG42V:sQCG}E25FЃCg{r!ب}v7 WR_^h֣ 8bL$U1[R.kAb@moKx2j{4ެ'EAo=ؚtr=Y#=Bz=&7 O/]ĿTpM(x*42:~¾2Շ􏖫/v jzt iuSGNXckL>R!.7$1w>kk[J._et (!  [>s,17"RK`Ǒ/6R3NUJ5s^b#uTܙZ@uE[6t Ș\Q$w@irۖd ;P)#T{Mu22S:o78nV/fDYZS"Xt>`1ȚsWhLb~[v=\w<`\*bϔLBR%DK*o:[ќ8PD0"_ާ%Co0)]I@ذr$?{AߥTھkUQ,V:o4>b$л\lܐx}E X| i:yV+ZgS\A9L/05]3$@Q)_9s M_"몁&Vil Jme!EosϬhKz0`J LSj!;(9-BHϡOvXߜYtB7ܕ,L*= Oyn\MpN`[`F3ːmv:h~pDKՃG 䪍,#UZ9_LRxvV&݉&mtD>? p9'eù6Pygro&"lrtx k@Nt @dS7"uQ#O8Y\Up  '-jZ*ZeO Sj㧺P[sˏCn洑K +:,qd E!YEπ;mtSϫUWUm9hiIi^Ǧpwk~eQǓ+fq{"I*3bȰ[Se 'nxN# aAږ`%YtUoWkj(֏<`vDC8V*2YC| C:A7%مYG *THx9ƐDƝjT0hd2i,Z=3:@*7H9FѨTMz7gk.\ٛ8!- 6;} ?xUhW}1K-_;%Vϑ&/W12XEd)Ad_"SY]A$Tt.eK N9=QkҋEDI Eqv0hdt%q;dO?8mL &6^QjGNRD"FkO{1]BOM($2 |.m+Rm-\L5gaTXz"SX= u^}(!Y鹗p$;@/=>w庾y Z,YN7n0]j;T&ۂ Xsbd>i mJGKN%h\GZ_~%?11}f ,AFr9"@}%)Юto!ϮV󮅐" &RumzG\ kܮREd٬U vipւ(FԹl cY,8 4[ 3 hgDr櫖EZa?k( yLT=NLDa Q%a"z15`mXDi *пU4HI̲8sEihL\9pEظ>jģ\,#B'V]rNs&3=C֎>UԣdG( _Ӄz%Mdn4QgrNSAM9Cs`V|T|z7lN$hjCZYK>p~x8n]Z:`~H1%75N5`mGý2HxlE ׿ל g`8ɞ]0YLxA+?#(U5K֪#iF$We2 .>Je"{n@[5zD\(SL^vn;g2V/f 頹,(+qp u*𬊚mJ~s~y}qa'_h[c |בkݶJh!BW20UOOMkʂ^ :(BD b^ICeڛQg Wސ"H(O;}A$3iS> i ٟwjPAO_l4q4?ğ" KUGF(+nC5:S .j 7zyNL=xBu[wMC.Sn+{b[& 2Hn\;!g^ga?Tn]ss={3S\wm %;>Wݚ&؟T96*QqALuCȢh . )\y-\ dQPJ9:|-s03U"ڙ̓BS9c)ݧod0F-u& gWWpLRL "y@jJ}@8t^zr2TP͔F\UJGs/^"޲ljh@ eG`/)GdC1qx̦zw'<pW7{UX"k#f%, K|&8,UCbH8Azaax Ildʾ&[M'y4w/3t{F@>u3:r8޷Z[-qϤBeH=-|֍ZpNo09%IDǭ6{3S20%4 zLys:ᙖCc)^^>O =Xy:,5߀2!|q`aȇ!"Nx:0KeM4=olm7c/yk=rә%a^M(*]J( Fq/USFY` NՒJDN"{yL|t%w%]?>&ȃbNGs7(a(k$Dg㡙'7>A |pb(߅fe~ۈM 9XmZ8GbT48N%@3oLKeDyt{#wdx ZF8Ul@ C";*9J5HIo9e1b<3[fp_^;̨&%Ku4SKK(=Y 5RPsMUNLì"Yi gU{t_q]%^#k\yv(aXC/;}0'JdT鼽e<"y)2JxGJmCS*' ף"gs6Ժ0>ޟ0T\>G|u5Dcɑ(5CO% "jW i1V4/LhH?~ x.o*d\'EEcnƹ-GsIkF 4Im-Fۙ[ t5@._j|)&'njDNo?t 6X^<=밪Sl%0'lPlxL sa u1 "$[Em0JiNc_瞮zndE߅׶=vWx4F/(e[T!wpLJ w=C~^[U){u usÝfZ\#e;jQmTrfU>h6" k(7l[6~$+nj 0?ŕ΁Xբ3-AxքkܲcYNjoZkL#]ؔ?-X[qJ!/dD =$Al%&ZO7{ XžQҗ+;(Nq28){Fs_0 VsoENJ] k6.[u4pcΌȮ)@Op(ޚjx%Rwi9R]d jSSPR4A̘'DS0p&pQ9c2#M3C&I^Z]wOJG"n!/ΪE}]x2Y_J͜/|~ 6-sL`1̵A_wf@PdC+w-<2HLbxooXv֘P-"pe&rZI(c=Ω"l녢z0XJѦ -p`+k;QuLٕۅ$/h:( L/hgj+mM),p5)[Oz5^6!07V-~Gci]?K(~'ִZl! !%^6,4{<*@2MdQ)&\'xDIJ[/x O䄡3?~Bً,oȦ(v %llKӊ5@ CS ɯzw_1[{$ (d=,׼yA« 9Rr3ʣ_p4L,Wk&W}nEfYkYSM\3 id6T*^K-k=Ѭoҁo7 ] (׉%3_"6P8hz soxNrG,rif(A1v%'2#Yc4s66񟕁'ʶb ]a vdR/1F{Stנp:|9~#RF~WsW?Ak"Jnp#1U[0mAIƷV7\l.N7iwV|\}TfaLfSkПƩu&A颫(^UWIJ~2\&Ud1TTf oPW[П_/F4T?^,RpN:v [R#8h&ڴz$ f ~-';܈UO/w$VVU[<~pDjVhK0~O]'_},h#cA Nܰ<>t*qkC= Ġ^%s# -j];B ~z׶([ѯIopi t|,`#P(as^Sxu"^Đ-|SFg {0`TsH(~fy;,>%?y!&^Fi9V 9> RÍU v"nARaymKc Op$r2F!Afcũ.RpnN9W2Dq:tw+}QjURcЉ.'h?xNFBI%/wש(0;_1T\h-Xoc Xw^$ yxzPMW~2;.SkdZS5?I8 >F *la?R\3 ij3v@X!qXͤ,jȢ}bUcEɼqWe0j8 9 >~6Q%ϰDpS I{Dţ(A%#X֪ޙ@5V\ Kٰ/}uJ%ȅi'Pj/>qk9ݪHNz(6 BA2F*K8G&(A)&dK6`/mqDP3w-KfF+JZhƩ`I5*>m;8B4.~J^ ۗX'M?9RYT_uާ4fЩEI4N$ķsbTQjcRB*}ry/ Mү$'Gz:V&X x^O],ȫoe(jE< I=(NX̵~wb i|l'(@_#~(y3qiu9':9 6^F@+2ڶ2fl? f͌}Z 'Q XBYW p]\鲶\tG?苘5Cߚ\o{?vk20](^(IF,SMƻDmЛK)l%lx$ccK㕵I,J½dh]$# ()2iŦq4ٽ%]B >vr}5ĉqUL DE"15ԓEڽT99.@RM8w;lAz[tt؈-06eX:D)$ O .9%;!P}}UzYR $?^`bս۝E3Asew'оoXJ!\"۞Yx}5zTˑw5a?5ь~Y䩤":(ιJas`?gX8 PTT gb6hBŋe]a{r$3%†rO"Y\^p`"+oOc_ŊLo`ZW uՂȪmsirt?{u ܃i.^a)~Zˋc&DQV7b8 Ckh7obMoUm]d9잔svĩZM4uukђP*DXG J㼺m-}Z;jtBâ! `O:ow^c&c%o]r7T۪A^i5kj Z|h?Бŋf0aϒZ&?RXeE[ X\> }9AfA` >a1|HC[&WssnFv@fUr԰|Y^؁NxTցbRMq*eO۷d#c#S~ ~UYLX}x}t*N2ΐQFIX0RV82Fkס [ ƿ=Ag*)w\4`=/7A?Vl8RΉEggyEFyF.6 \cU9?k5&9iBxlcƫO Ω^Bz H ~2ec|417.DZtI?"ݽ* }kUo2<(QH)$!}?R)7͘oZٞ)7[ˢAU3K;~1ڳ0FpUeSo--אZ{rk 7́o@WO0ZHvg6bb踿FFO.GWcc$e(/i<ÉK[AjLqo$\5pB4V{B2"|HfPe O W iL@afU8I_2*/\/qo]s bސ^ڹǎ.l/{w_,pGX\k(8r^\ÀV^hǼhG{ZLf(hLR[pN+P͹dJ290N5 Q"U$媙_dFb4e&dd|~Qp=z'4;)ϞhNzbD\nuD_K60l)Gcdj4"jm`;GB^|DX!QݤT޼2fXf/&\,GfcrDiv~`l[dA:;fF; a8ȁd\vU?obdlm(-hoMlm4S?(y^ sjPxs]b.e1i޿_G-2 Ap !m^[k &BB 87DSv9*JpK.%.s @GU?>^j!xa*̅z0#X/rK~QSɫ -DѲsS15m $-vYc]F?!̗c9ſCͼtHܿ+XB<";M丛=L%&Oe8F!-CGuH _5! T_nB"~Xڀl{ $v֕+Bi`) 9D"4Yia91橖hFrn 1A )kaРMGANYխ;6=%~5b %BV"7n0%(BWyFpﵥ6g 懗/[?+<1-rkC'[AsFV=[WU!)AWmYճpa~ о|ʓ8}+kVg/ z o]"TnYF9]FYX Gt }XȳzSU}=Ghs 71(`(-/p NHx@>w~2 N8.B0D9tPQ4>]淃z+H&3 KMr 4ykmP._|I)߽ {o:! ]VU%!_5[s8蘱HāS>h˱<+.zO= D9siU_PFg_I.|2!'3舲nvWeE_>'}灹MP;HMӫ }hpgJx+qw&የ6~VW=uO @egn3u%&FC.m?f|m.+37 ۄL\mtfeKs._9vJ+rk"cVܖry~XRXkDX7q>-nnsfJ/rQL> %7[ 7vV>n$KA6EN[Hz9oC+*/SpL'N#Ԩ^%_`=d#.BsM}X"`.ߑ׽("ilWq$mF%FPcو{?ǂQ.%_E?Mև}e /r(VyQ#GH8peI+Q@kHvLj<|˅c-߁7L堆qxGQ=;d{HnR-ՎnXhpkF6Z_+/:-emmT=û p xu }Ud$W2!]0'!ϼ"m~jYU;=[?Y Y,ÚH1MpGH*2 x?/L"E2^A?1ňBXIX|;mdV4xEҚ3B""M%Feo,[ VްT{P\,6 ?\9N bo-JB^.qG׊9ѝX4]4_S%tl:FB 6\jt[G͸2'*Sd/83[VF8JJ |Nc !h|'p)s%{RYN u[Y{Nqmj=@o/oż v#Goh~K~XBCYCZM dԽviCw螸Uƛ>$7![*\!j'xCO֢PbG&iZ57+PlQ!Nr?`8)JEX~,h>Х]r0o陷( vT|䈯ZFH?(˭BN6ɡx3Rz^񆤽^[$fկh>B W"^7,|q04Z`jwNn}1b*hd|6DBVymN6M3n3Ydg3B-VhXh2N1V޴gLg$eAb>> aa.YBd9b  k%7Kȣm>'Xδq&Q]sQ1SՇI֭?"n+RT;4͵I9gs-+qٶ~Y kxCxl!XP%s\::8W pxf|6H0,]M}:6q.zQY k7+7Zݽ[ѽa֡1jh B )vdl5Ӈ6ʸ/n8:ll;ĭ){jÔG{K3ꑴ$]2i[a MtdPu o4@h[pL51Cժ0PpL7^#vF^M SRʗzԉx)]7lGSm NA(qvJkD|xgBJY @@.re2u@Lف@߰.Wu `6NJM`Ovܠ[-3O{$i{$G[(޶HD6 5}H 4liۣrF"'K@#c@֠%eؾfJjAn%i%^]kXE'֋^ 벒/ZC״kwx3>'A$6;UA^25GLi`|$ɸ,[}f7Ӥ`l*>ph8_Zp UF M#O嗐_ݷΞknx0 &yV1:o?}IZ b-&'pyAfCvVcm>vVdRJL/O#_])kG6u#}". 6\q~xl`r[ ]tg+[ K &҅E[:u .{Txh^]j=y6Cl=̢}F8ږnsцbk U]'e,y|UI4U }iYΖmOҟ"24<"k) rd?AyEF*nfQsolӉKknR)c_/2gqu(zz_OLf*$$p$`d> {E- Y`>tK Wz+d!"ERmMB2䙉e◊>p|;Bl.%Z~ˮb2 'V~/yrҬ /#$$ ʘwڶoiQF"5 +6둑e"DZ:ۡ¶<z"@>/,*@oL}z|TgWQ;sOL2ox0.Z%8l[qL_>aK/8xޣξn4vX_OK(s ?,1;12? !& )c66G?-;B`T6BfX@ҹ_LZNrٝ@5e>ZZv9@&vpOzcN -̛dz%givH%ewX-V#Ig.1TDrpE=q)i/hmjC/ Ʉ/n·xf?t>zJ|<#Uv^6dX Ȣk(c`_ i9 ES߬:"xR.iPwS&IN> 0~ᥧp=J-icz僙G0͘ε+v 7K=9N߷/U1CzQO cV:d]j'GĨvMMDbO}eJ( jThI'yb8w9̎_p0Ł$VHmC!#]&\QZ~Zmao䌮(-&`5NN5E}^b1Xʎ]/V↳Pi3a ?EH;lCuF0u;uB;w)#amGu6k! qK_N ]ƞeA1Ttclh*#8  A:8*wuϹ !4Q[ҶCwI2vRHsa~},0_'"B C-m`:]PpcB0aߺ1|S q=LMjq9 $= _^Z I-=e}q~ (d?Hrx'`T*0Tɝ}}yeq&3CyRH(6:jbZX}W> ouiu;$¸KIig^,5@ h.簚 *dzQMcjSե"~ESoYjrtOZ$[IHzv8Jڍo ENbG: I 5i]`HX1vrYIL.e#<c9~{>VXa5_ϊB2FYքSf3 6t什soj/>aapN,%D2y0BJ<VjY@~<%쇳TL̇0yi`1P]>J19/ˠWֆ9(ߎ VeIXmnCYrS+gGB(cEaX:%\?^tW!"(]fҺg`1e+Wmى\+`6 2΄7,|mLr:q0l~do$ɩ 2ܖ ;z³Oh r\.N%b_R AYj( ,@WlC(_JF۹|vn_@oXjx/8$:x3z:^d<-/<ҳD%0|X%p6SU?pHx(EA):EO#dwgݐ׾Um`k̂"P Ta<,`e`ybmm\ 9y?QPTE}YZ 3  o>[c lBקRğɡH$IRt[G)#GuZcM,%l*>[[svPYPԊ T'?g/^r=FO&~}\ D%ZΞ?T{X'Lᴈ3#?-:3 NQ&A5}ԻuzU TX4!. `| T8 `p.PS>`ai"2I@Xؒ9gY[!ܰSy/M@߫ %lխ" [ڛ/etL*e;cΩ ^[^\]۞orwzǰJ!;i:;5SUsnBTϐ:\pd%Zk+d  { K_q&;F~>|&N8~؟BZn-/%;E$cAX\Y%2#tjN>sŞAqȖ\b)%` B6mU% _ AF$3 ߙF+~/9ޛ "X됟V;ꪀ dvȆ P3߲,r;p[z]$5Ls#v<=ualcL9ؠd$jSwA# Ł:f]fjˑҽ#p. (&SRŭϼ7ݑa(K-zL3|Asb֏ _\pBRKzGƎ$^p@'J#U.SA&pY+;5(`|r =BF⽒~w=й|[cjEeN˓#ͧ1V7'uhk5,uM)KuA=~&XNp%H#_WR;."Rjdܝ#7~l:\~QZ&o 2vKlx^qQYNЮya\l0xUZP $B4,izlǏh!6vH[* `}-㮽6s=uic|FM ,ٚ57ShNrdS^`X"1QD j uWhr&P"D(%*ѹ̐"ʪLx喤] Ļ:Ӟ Z۴HH" Ss X\nQ9rmѾ9}h ,f3ہ~QvU(&Nr_UW#OH"i4#Fnƾ4B qŔ ?ϔ?R'afݭ 5_KէǴtz!e5Hͮd0 :h+en ݜr8vAhҷg=B|[@\u^eZXmyLsͲװw7~U ;b:nbX18ZQK R>t0 RBI:hqIۜ-Ble)N}g,?Y!&$3"CKQ f-3<& o;j邽%+pbUVcdeIZ,48+ 8#x>0wIёH(chz+|(SצJk7 ;fH dEPI}Ft*V;$^3I{A .BCHjh49cTnRKl6CRlDP9q?-[r.÷@fs -"i%7  {@ǛS c]KuUT e{ҭh]M-x_dң'7v! xtIvr*u FV5$ȇ#%J礼3mv"@ș\=}Aga셍lT8CyH2.D#F^rM_ w&ca"6B1kT8x]YXIԹwe_liq8´!Cq(==iZhoW.Ed\%xϋ|$^ʓcH#Fl GgVHZ%s`[DX ̝u4=" *6:,4@}0)&}ESgQ).2BHi(\`A#}ODʄ"FJR, ̱Ԟ XmT/ksGi(xN`n1Gכ_/d,1vy.6IE40Ĵ&J-q ̄:Hܾ12,5ݐބ鷓[rȳ>+hH!QXYْF|_l]3hbP؂a{E gp<,[WgA'vCkI5Gv^^b9M3~4 5.4/_3뢔(=e#btQRZPAkN̼)MPf!\rKae ➡Z\K=+4DW#>؂wWPˡ5y=v%g9νѻKSc~iާm7Nx΃,"{0 {0=D/{t& tq)s%O2qPQq C! ~*x*E? `Re(CrE#3('п~dgL[oX)Pq Dj(6D"WUB@eƕ`تS6iBNw`wcQJɦ?e^LJBV$1Uv:"C _;_[F\u>̐KkR%bl1Ӄ(K-E2 $5X7>2z#u㩦))/f!tȩk߯jdtUƖ:v>9ōo/|d1FNkޞ@"͏Ӣ3{\^[碿u r"0UPKuh_#8%p ظV|ϕg+m9ΨDZMS&ibV@z1@l>X] -6bY7gFST0ޫ~ ୻lNelKQmULq(طr|+NGW;q'p$GUdb/-MY4{}aVye:e`o*P=2bmP0}gi2it`U%$)~Ng F5vJZ& BL6O><FtP8E}1L7iV85y"au*1tsmg>InmqBg_ oڙm>(9bĿhW4f18u"\tGñ+;r@AUƈKwjAG+[3Ω\@ߛ~.oSY&7[+լk/iL??l)M+j<7jlu] -=Ԩ#M9=rS0i&kzSm!& 朠©XIWاIfքg`•Cv}6hɪL۹ƀN%%3*7nbWZA!UZfdOj<}6D"A2"Ժ@ŨF2eccuV^0('@Fҕ$}'rvH,Yr 9JQ&K# @*U=.Ii|:G}׀1.d4D] ϳGִWI"uTx L]E, 5#w/jx#u#UР9P}gd~H;lx$0(?b8һ[uf`*Ro~}V0IFKu1C%9ӃiSYj=_kI]K](0R)wpx ,)*AF=BGTW^'t;Lٌ5{,&G+<ݧ~!ޝ~׏fj.Ph?s:RCǗW.Z/#ڭSuFQsע71v(1׼# +\u֎ oZu,ks/ hHi܇`0BSu hY-Ϟppa4L\j-#=NrUR}P'ߩIE&5h|f&(-|yyt ׉\\t;3,@9Yr%B4nNFó$bu V\S^|ؘvQf(?̭s4?mM>cQ:'}&haLJmZTozi AQ^,/t 1bQyKLxc`*{hqD5?HOm]E(;0%}uyy+\f"a^?X) U4k-u+`~yoL- h.e [%L%/\w(4 j"Ido.Sǂ o1R] 42۽fƷjД8Fwcth BH1xܛe|hN$\%p($BU@׍յ??gŪ[col즪/,L%|Cڂ`RqJ5X󈼭,Qv₞}g6"OoKH3g[f@}ƅH@5M@J+>*whYlF:/^;xdUuYQ0ezj,cTᜒq IrOW2IT]9$W3r^13@#*617!ã!zAbAi떦dht5/z>j@1*5JL֐6iSP3>h žAB,WBg>1,si*AV)>jU9jދ5ĎŸy+c mN9v d1qP/ԗ԰}ayYq eMUCIJ > !yI^A 믔oR%{ gC^"Gv}x ïMp2L?9̄# 2fTgqB0z9\޻ ^j¯lmm>*3F@NG X\q/?V2xNHDNF\<0NRP#_ .'L}vD8xa91Q"A7¥T쥏" ^x|P\^?ĚG{SŴV SOc[p2JK^Y7r=Z9CNw"YeJV03GPg$ƿ_޻n=\yJdiqŤ]@eG/b1 F |)}"rIq  T;PbڕV岠v234\($܃]1 &NЪ:Rһ^zɰcˁҢ5M˥рՎك5Y'7=_Puv>%Ѵ8# ‹p RbӸ`ĉ3"B1jnHvk8%$oxou =出[Ri:+5@:3 q䥤 v0$qk>KJWlQ93f ZIZ?\`?+vT'ݳ#!.RvrGgXW#nGj 6hIJϥfD3"]1&]iKi_ȫV^D$Ӆ | p[E e^,s̸1O@CNJ 8ىtT%e}&Z+,6[!41'ŹSn'H]lbΒ)VҊaU,@bZ~[kl23b|̹2PX"ue7CѶ Išer5ua 4~kGk]BYl0[K~e)ֳ1kз3D(.{b+m Х7;f]eA+U<j5qvqwiv.6Cf4\bfc>*1;;HI5a5+CD}YAN3/&њ!. skC# Zsӄ80V\35E+Bb# ~&,g感%~}d/월lZ87"ts? w BVbq n*RV="`.G~S؄j_+G/x;قm80׈:,bgK A:VL 5pA2#mF*|\O=;] 9gdrY,/ ѝfh&_{ 2+ih,mx6hoŠ4ƛYȎ5S ޽L0fPC E~ܲ݋;h phkcԵEIҬ@P%}1bʼnG&$Yr~:ݳʔSHj9bNvANF(>}SS@G:)ޮ[tE K}\=x ^0%o]:¿{ᮠ؟EiZ?+b q! pm74g[AgƩȎĔzAiqU 욀b&C|bA)K):BG_)v8"R' ^s;[%y33Ʃ82Ϳf￯ Q^iuy'-zҍLP8|P&Ř^*IU} GkZ,Ho!MdDݯu5cg_iTFAVB2}BKI+hw\ٟ+K=W;؈&j ^x$8 wPOf&Bq{͐{${'s.H\{xd#Q>z-ƄsBw&Vٺh7]KP 1e4(SܡƜzDWrbwNk(2l s$挪 ɸ[pº>Ls-pB AXaülBOgEa9y|n׏VaA緖:Le CͦNtlK -|7DN. G W5ϟ%4pcĚPL~T-]xT;8* z!ctl)'?КKdd8>ӛ6~TR]:u8jʁ ](/^)w>I$㐴B +?,k ԟ,|h<:H&6m^Жq;v\!B /,]Mu)6L8T&bq3,:ȳ"_zwUdK@'Q|߀.RRH }Խ{P0ʖz_r&9_C-)-+}AZV^e9XnR\r)K5[mzS\G%lRa=Wy7>^1wl.TH]yq(OVh]^$d<|UGS/TD?ڢn:Bذ4p=>px&#<3jSοA+޻ h&.2OY$۴$MX1Q\w!OSůZJH;bWMj r84z~el0:]01#Mɏςxh_%[)Ϯy#pI_tP`MMXǩR|-/3)VT)x% ϊW/O㩡zTf))t!`Go+uI:B~aT|m@bFQmtefdQ1{w&ip6Lx3Վ$(;]@yE-RJ| @P,SQaV2#gQD~FLe9Ϫ%>&7<k4=lĵ]?QT9_&=u 脞lj`B]" ˬ"6V$-&j=4vy/ߥ烲 {3ʨ|KQ'p(6VI?FJNۮkNUt)q%R<zs uE,*|hդTך6Y1$hr%໷1F]ɿ8fͥ}HhzNj3uLSPzh@^BwFIVƻ ^Hq{hZot_FA 5uW@ĺJj-2jVY k<,<ݶvB21xs$g47YUj&.Cm2)fϠ<+M?埰W_QPZeil:Q ,-6TsxL`: >[7D J\j ؍kz6ӏ^ uY+ӆ-hpC{[ /&i/}tU9ؘEO'M w0˝~U]@-'f>7[APx.& f8VqIh8ڿ*w =[aрbLgg…FBAwIE].ϔEx{ L( +:.KB fkDQC^ UGvpLkⲇ b/><{ tE/xEK{z&(d-A w !=#XTVL.jeo|/,sI "HJ!Ns=nҮEN0hT`R{\Ӌ%f[|{[t `N`cT&Ƥ#-Ƶ$Fv*#.eM&%IJAH#`JBۮ6Z2ƟX:"Km8HlaD{@"Er_ D_(0(3-H@ggҁ4p4EiEP)@p{jyҲm{O.|[ [?L c4 {TTud '9̫yq8,:Hl0b9q *n'\="! UE&1ea 0걵owBEMڏ6EBԵ1 A&f!@_\] d8D 4 &p:oNE?81e-$ s(ޱc@w1s+ -s95[.uB+F;ob-z#  ڜ 儒\ -lP)Ua1\5ZC-/yzU^eKiąNL_nѺD&eknJ?zR͚,rkҐb pWhz ;Xc8lfAL>J|#ZcgT"9!T>) b{&{]I$bRP cD:EbqsXbnvKpl{1BHڕyȖ%REQi7͍ p1G@G`ny\i Pʡ}k `m :ÔLJ="/&H/壯Q=LY@\ղup G7Z(4bp3bs9ڃ(kDʜń@jko t̹dU1 Qnz>ii=!@ nD ⅆ~],3S-L{Iݷ;4xzf" ˸XHujz>^ ǀotEPcR8H`YI-2crNg#mxL?>HU|S uRPgxZW:-edtgJD?t:jSZjxr8z23, cՑi5}qr<FL .,v16<38L-9DB2gfT$L aLMWvwN˶ af'/%")J?D; &Vfӏ~Y`V46Շ(ꕓkaF2&.֣Gi`xNfk1W遜~^ ԪP)rG>.R,lD{,GQt(*?M:Zd*>Fws7< :7z62 (;3O5Ƃb+)9p1#i`A r{&)YBA2‡*0Rv9Z.дk\[u*d+P>ܕɯ8zn(O{)'_#ݟ(Rf{wP14ۆXl[qîƛ*۔a\-*xGrJO2/*DcW{IH^4D\IPx3)Tx@=yѦͣ>Wi3YސܠĪTcfo!|bO*Dk ^yXM EKAVr$g9ES<(*yl@/x$9WTosJGn?c y԰Z(z6XG ${&V6ul~TyٕƢo?Б\^q|] }ɯ^sa$na c}\%}.IkXod]VR#8F *kɲz\V҅P:x&@a<#ɱ.;-$\~ҢPp#usǑs.RϠz3 $Bnv7AKZaȽcǨ$w?E !Z, UW7B$P?}&HNb[qAؾNcb0? @򂗸a"y%_0BC^䤮oyd?$C^IV=@7SǂԯHvmuߧ=%VBf4|Fru{> zm3V,H69t3ސhSّ64#\Pѳ*^o2)3ť8oe5yF&22lJ:40Ս2Md<}`Ɓmu5b!>c' ]1VPNo2Babш80ʮ,b1lwl6 yn"ry)P҂<Ɔ +pGנAQ3aɂj 6; `]Oۗ%/BA1PrŷhS &Ak*ifMن `-J4'--@*+fx۔\*dxXF[*HTjh5W?Woiu\C:KSc,E>Wp Կ<2[B48TX,HٴڗgZ=NWiގp gξ_z\t@1d' ]6vY&EKUc;Ճ#B{~ND(.i[0Tğ[$c+M3k$>^@1Cr)qgJ*"O&V~~0/0!յZˠɗľ\H--m2H6qȶ y LV9H]&6KvdI#rU$T4x$SC( ?2Z^Nl1㾺xn|}Spǀey;VY+E`|Htn2:ls͡nϊ.8A#hWzi٠/ =F_6JTp%RN7i (Z=$Q&Saxv+eI x~ P֫)nm}qsQ+Dd3sBwGOr4'{*MtL3ep'MRN0B%≯Y 9EXDN2ׂDpb67*-їrOҡWhA%QCtOضI` 2qHO\C8Fl$\cRgW*DTQSt(\Ē*HƳ_ ք]j\9hD pLQ'Bie2Ց >ScdBŽROB8|3W9{ N[a5kԋYn#4E 5Х_b-Ŀj৬W;WPHKHėt);@~PewkuTVy–ӎ,bϣ wڪznD73T{!Ț#Yz/ _9JzQνRׁY%M1 ՞Kfs. m po!&>viP!oK54d恀!v9jhԆ@x)wjA嗏]Ie$%{|eUK_Y/yfmjAX ܫ2:qaou朴wA \X|6'TLG2;N /_8Y/ ߈K4[%p& WΤUܣ4b1g%x]DwhdCqv3/\7eo%FM -GB~^vG5O bF^~8!)$WSG;<)GBIᩞ-NL{zO_^꣊,])$|Lt ls(% 9s~ R8HŌb*+'ʤú PaCW[wfsP //4J#'G~?,.{Z;@l ~Zk&r7॥ePObjeo m3l՚0>WJ m%*tR Б\&T\$\'QF̿Rr} P*N UF-O1';;ZCrvɣS ~mEϔbc&5*M]%!pcW"¦ ӷ 3l5Kt} 0ckPT3h )ʭ h WI60.o1i !JIjN#rOz|8q%Q`q!7,yHr$&Ғ !) hBc^#@p{$NP(6|C`1(@$Gp8)'F3/d^Jx sMFi. t|%7_3)&vxrӚUufb_I\~ [X[fFr$K1cM|r<tx^~Q PmJT} 6NEBU mBñql:m]/obw|{ĀhT'J-CfVYר=X0e(LNjnj+nh=9˴g<4Yr c+ؙf_h4d{{'pd:B&Ao?8vwoB@VB>mEʕwTo[1p8 \!U22t+g/tbIj.yݍs@-g!*#pL.;5yѶ\fmx9n a3Z WHpy5 3hFc_NtNv-Ģ0< m(mYV͛?s]=rP]t']-1)E'6k%SP!"[c* ;4sceB==5aeQod 1?x!68qCʯ/EŠaiNP6@'@#"~V{aDzq<#XKd~=F{J 3zNs 5@ĝ!fV$e(8 vn-!CL͗P۹D4ѳۡĖ/r._*i1&sb&e%Qʟd<-ݒnWwoY:TMӻǔP@$'eo"2T"mC6b`WUK K5?v 6?}!n^g !cd|x!nRvctuJ`M֚ds8/Z[jX~_Õڲ;I`У0$B{@}<߫Rj9GFiGV-Z4f1Tw8[2,ecZk+ 4MD ="{I J{^=^"42#p~:15CD׍݄#̋;bnX,ϩۃ2]SlƀbPԯCWej`LۅrӒHb@<}8ɽ5Psз6C! $)mcEKBZ9#z& U}w/ _sGL.=Iȱ"z!~yygkIPuŚNMP ktI<'J]tvMD,c=G%Mӳ|;hA1S) X)eqW6˰_,TnھC/d>θXdAĥ `xQT f&S4:Po"p敳D+FdCrs6WfΐpK޷OTxJ&=z+tکdu&Jm%#IBT=p|kDHmZ#VUTx,cp<\? 8 ėlw:|vLV]og>J>ᵥr%Mé^,7h6{K*&Q3K^Z$[q}3}^Dkv,`tBy s.MҙeHu>6#%bN3kW>0bjjhDR &7nN[9hEGKꉪR#SXk2`5c--Q#~Q=_:Tl&0GrGax,',ȉMElb[/"c9ЈZv>rxLF\ďa*F3^uFjw-ULڋo.D{霚 ۄ8y`7MQ u`'URZQ]Z+.'1t@D=4x[I@m) tw. AK?P4UFMk'HXQY۩( w-bc& c+ w@S2>ܩyEoUm!g謪q9XNS9ژZ) 1zAbUaKX;v( E.տל}ko~?ߴE× cgY~}d8t-n7Cs.e.0)(Lx2 ß }?MH50*錇M(a<1dmqΟ1Z9m0|_~??YXh:_leO!8Ef͢DNXR Kd\p8t8W`Av9%`xbڎ,lKC3* 2%?N#E2.Q±6QOf˔AZv}ϒ읚*{U֠Zw`)Ьj{oU"CIH%aRu1) 9²{l?|\; ^wJXxv~$YNOmz{&tС|LKX_ O5  fW0EM*]{!P0A17k W|֨aG*ѥWFe0n{(ۥʜJP/ $LnlE˹~s&8n;7\PhJ.x 39mWgG~R%=*W ) 11/?rz,uVYO?lt#uu! xW9~C66$E3HMm:P`1=3aw6ߗOǜ*G00J-]E%EuG0Wp\@U,sJ'ϡtqm lL u7sj>&>N|X]udY䶗GaCHQgb/83ԥ%_Qd %B)YcXa!zG)QG}. l(nz,[~=]q ؜dQ_d6*FRSO˸Р,V^a7:䊘 {HVWƉ 7?OFμ!m /Ri! M< V\4&`~N@@:߹,c 0X TzdbW_IJzeMk{{U]c!/gh~8xBxPHLS OmGͭȌڔAe\ C(=z=\WPU&ؕaW&\KuC|B[Q4c)CQ9ܔQ݆aHd$A h"RbY:NgXk{ \>*AcTt =я'?#5ק}40G@SK@Xzib8+F.Hvx16FśDUY 6yh VSܧ`iCjw'@*T!&uؤ+m8w?߁eL~?Cô |ǚ&n!tzo_Ms".U.iXؔPxodM餌ȄvX^pCT} zJH[0[wDj2mm[ێ_Q)IN6aq[if>\2RP^1ջdwSLG'ytYTweq[5?d&!=0&.a Nn9tCUsZX\ş{5CDuX:X$ӕ̼ ! ߽p齖B@uQس oY{u~': #3`2BX<#p|~{`dy4,UЍ2b۰He?Ng" $nOQ+(1mLѫq_O*+'2v2)vjafꎐOfxn^7O""41mȻDP{5KnAgz/a4{_(n<_ ،xn[kYwPu.Ng{>$9 ߮h&_popPoWwdYOrl\TA<? Dxacmgοd F:\hB+?qw^NTe8^ETDu:2F܈C8B J[$4#T>Emtg~ vD@Knje2?T)R W5ԉh Ӊn=1KhЯΨU3$m;|88v@ 'Hʗ#Vkc%AG/^֋do48;lʄ7.`8A-E N4.h&+ Z1[&_cָT,P[ı.` ,|Sy2 0# u@T))a, i b`o֝.2_$+l!d[Ճ9~PY*é:^ ծr5TǤa)&/.s-j+7g*'1B@uiL*bA%PY@ ?Ix.kv"Wq?_aÎW?L fs# ݋1Ҁ 08>w>`c)R)0P8sW=rfQE,%d䇶IzX3LE &%փv(ѾF9J[j8iBq-Q/\JC06qtb=:sLRᏲ0SI<<׊:[0lytJıgH΋օrak̯k$p|!AN{ Bᬈtzm`(|:ovṘz Juce#^hh#ƴ=f@m7vqIRqK#40͝w,Ϣ}.Utb$%*EyYռ(MDS#𝷌p_X2|h- ILo–ywfO(5{^Bᣓqpf=^7I\MKJ@'a.`tyJx_KqmqΑqkd^US$J)y"gHP:ă *'66*K5;ڊv D|P?e2]l~p;mmh6j*吓NҋkwLjYւ[Eak'2,|{o:?%042*<]F`-I*F`"qzzML` u~ :8 j71 Qo:՞:ѡč`nΰ F;4lC vQH m;q"_m߼ n,+t>)M;w@4Co;3=J -:=fFvÄ6MM.N-dH fCO੠8d~[tӉ$=>Xp/얲IOn)u9(nEZpZp׷cNYUbcNYB4M/lsbz\d Ȅ3^:tE O.`#ҏN\%'m=*VH/ȇ*La'*{YWGu•Qʼn!=Sj>a @R^f $7Pc@U<1h,Ŗ=RAzUzDbdcZ^6ibL7WɮB+I*ג En˧}"ἝΏ͉~= f-ŔSy^E,To`.y+1 |îӨ=*6yl'dF(wO4n l> pIlŖL-!o CE؋XR9: >~t nr@eصW!>{EqasDFE0 &Mcf=NYWx& *KQ[VVX4ו!ƀvA ?76 k[G{3 ̖hݽ;CV._u֜kԘJxpK83wN=r= AdbnU" =C Ȑ8%^MŊ1Jeǿ(bԛesnfG( Vhk$иqBAA\ye`ij I+:X 6şET WVsvxZ\a%8[Xm#)@ֻwdr_plѡ8P(b6;*5c-u.A I%QqЂjw."Ah1a6qVͫ keuW.֛?a.乊4r%xJ+T~ףak^/PSV! [pr#Fx đXS݃o XuEgmQ+ OSKJj>zQm_"]*;Sigtb6N9e0?e\s^* }3Ya3`ڔA2]Pٛ˹lgm]ğF,2.afk()F ҕk 1Yxf۰`̉~n/Y,Hg+an D •E%+đFw4alSD /6)BS8b{y zӖhÄ'oo6ɓrcCx_ՍS.sN@Hv:{ L#-[֗mOߢpk#U^(,!;S孟~I~_HpPuf[ )] `)'^DSn;PGSJfOhHbQzlBm1,a,y /9͏#lG/"0tlލCL6k?!aGZ$ZG@AeMKp785:&Z-@A`B2Y4MP-Gc-pvZAj3 tOd a`PG zL}ԏS,4]ڲU)=Bs8K_a^kkv9Kˇ 5)U^@ƫ]j*(+@ړ۽20=C?)+{6 {ǚL{uU .ΰZxM^\?ؑbxMO☶נ󔙐1Oz"~Lx^^xRL  d؆|Yy3 ˦z^$3}["en3_X5$s)@ٮ,:d;of?m b.%9qf49;2x`ML'"蚈>M[kc5a=WFmEg]&..x)3m7/n.v$fXÞ8:+RZ*PǦ,&`G!(P^{H,SyMpҠ8LH4E1m ӗI{8x_m)ٯ߸m$P_rn XT KWN:KN{j%\4<Ŝ_OL$j+s!MIisuD ?emR'OG"+Eo/D .7Em>tXrK,but'p'B7C[z~~p{M|50x-a5뜼 Jrn$t9j|dQQÎ,RGׅ`L+^w('2`.Gi HK2S˷6)TNjA.'<}j_׺ jPBO*h7_n/{l EB:DA{82!%+tXh#~dڷ(2+ OiW=VX:'ʶ\``ϬƊ:;-MSa3OEeu*S??qPLd}lչ̓qK.Bj}.숧\͇r"+D M-φay&P7M2=\8wWR|S8~!Gi0EaC WcxE辍6v3p}>ˎr}SiAxŇY/Cr|Mb}Qς-M]&;5)7Jj2EsnA,NŢpwap& 3tzK ^q7ϓդ\ʥ tSjp~E0WQ$' =伴D+ $Lt1&QQ5)6DUu>xIs)}b[O7ns]Ɉy1@,gg 'D&GժC^8 M ; _0k@)Tvw:]KjJJڼ~!{{V(WsU +񱛤,]yUs0{>U}W7?T2LkNbGH}N^xr e3x:lx d$=N|'x\SpJsa}2av ( =`z!̮l5%ݱvm1,v֨F"qyŪ.C#\4~5 d ֺ9 (̜ /pTݣH$OCjհ(5&GN6q9n! ߼m}ir=^y֛r+sԠLN&GJߩdk>l?[2=r5"Prٲ!:_]^+Oˇf,ʓ՗`ro3ATz@~JE> ?4 ,c[I+) :c]0 ›(M4u| p{\*pзk6j99۸)\(Ǫ\ zWi_%F(LN9bA|]**PK3f\qKP_N>|mTfc\d\Yyܼ GvآasK];g 3ᏤygORQ4xd!IVH+(pfjy.C{'k.}xSJ\ܦghސ%$Ww3 Pw)aYD_:3 >;U-ƺhIib._gPHɄ #)ݖZ@S{K@Ir=l$c |qz,֍̦h,4,`Z{&&a1(O# ^`s/W 79cpDU]}K+>NܵWFX7BpXuK}fxA oڄ슮y*2$. 2m" l;ȭ8޿f-{['A%9R<ČفlV 6ޞhHz}Ј1A{XIsr8ƖW"gSh @[@z:[yURGCym>AD. lqcqY @Dƶ5J:^~ `Sʖ%5Yc#Qʘl)Zu=tzw`5 %H1/Bs(i 4x_3m)}~:п:%MT/TzpڼL[r|66w2iW FM>,uRDp)Ŋ# oV-}\#h҆6yZn -9_&q|%Xj8-kZMNu3/=? `ȝzyd#gלki"SCJxNk4CS !t+$恵K E@ @ɋpūמXu"%dOql ali9Vksc,XV yZNTyhf^s<2F/t Jn.]_oCxwc᣿ /;mJ3k]@( .w-n{=TW}۽j]'/~!k9b(IAۖȠr"`KsZ=^[)7JJ& M&"#:51)7bmE'n(C|3%eE7OÙh3H(Ȗ WgQ@ZhS6h *:c4K֋7r e7c»DtNEq"0 es4"ІP70宗za۴]OжbC02FUhoARf+Fă9 :{N0GnQ+<89+$L {%z&pvzqE6UZp=AKz-مK\#c8]. lrBNS'=ITb?¦*!lU7'*wuR9A~4ٚ\ le?U1/Hx>'ȱZ8CEB|ܴicJ![Rgmvsg`&/+OR]ezRwaM8OA4 &=EXa?Ui+nÀ# 8!TZEw. Mtmd/gGnUTdgarN3~I*6=O6 ĚFw.w7&憇VHR8sST%HאY&w#3q iVq杖sK<vs]9nxߍZd++q1\)#2C@df$,ƈq:Wy4 j fy6QFH:'}OSSqB +SWYվt ܴL2|׽q|N^9q6??w 5*DB%S:~g} Bf#%aZtQS}銎@LnSxzQ+P. +*sƖ@ogcG.;)ZgGOI)ਕ27|S-Fhҵ(SߠiOqqQ wLipÜ]uZt_/k/Ö/dO\ x2XOm­bjA^U7og(nA-33Oq?n~aߌf2THпw513>;dZ"-4w!)DT }=1 -6&<}Gձ7%5ci`=ZnȺ՝Zٞt?~ 9m8 Q:%+יbmQ:}>N^ KDDJh*.cu&7xY4$H9h;;:F/˕ZDVC)E)5Z78 Tֳ'2Ťq5U:Kb1$-`_7;\ ^tLhݖo1+]טO VV$2j*MJ(zS>R/Cr0- Uȋ! gk; Ҕ b!(_G1} .AT1%Z8avIHH%;ZF״ISe%xğh!R{@uc M]I@ ji7CU}öJ U]*дgBQ)J;errޠF|80P7rE:>mF\j*ˡ6!H,( `IJ[_fLv-U9PKƩjz gbZЈ$8MmTi'fX22w ޘ5&LFt=v &4kvE١L7r2LAb_\ܼn<3w3θog=O0%гrn11bn -lȒ2',)sTrjc,<߬%c4۲`-v%2+oCVQH~Y{鱇FVI2W(=rk?nShЙWrs|(pUЯ$]5T @+g W<8m:>:*vW%'1DOn$Ƶm&[ ?LM.h`YpdA՞PC`?wž2^Fw ,jA:ƧDw^p=Y$Df@ ͷ|z-卝 ^G@_#LrNT,E~} B /ԺK6eJtI$rҿEX2 ~9:rw4|ZW>ԩq x[c֬}ɁM75}jE2[2;~{8L r@CR5SΫ=wa} F< h/}ޢm)rbl,hʆQ@jJzB%/s9kL Yq(RѐO(3XYs9POL%E{duKG̼b6jp|z afAҢ0L;3?SS~s(rɤ]QH]Y 6C"{ 2sBŅ;tؙ@W+BUr[ul\{_:;1GĊWs ?dMO !Sq2䟊 'EW7 i1x,\ָr!(Kn'苎:.86n -:M^Z "gsQ߰q5a>]q?-A `aM) `~0V2סij~b@MAD"jAGR= Lۦ%^|)7eEbCp>ɨVU2, oԁ r'0ɾl P*dhncT]* X3Ok 1'mlq5yzH %'OG+7չ%j6䨚n5nwLT9Π73[g u2AX޽wWSpvSȮ z=~/I-HNjȒ2ặۑ9m,.w'74 f`Zc$ $ηX<7÷idh*vҢp}0ʑu"KuZC0Gm@rGr~ha`yT% ue:ml^+^(+KDoU6;hi˄ш֙ǰO >L t_y6ry-+m+[fC=cS Ӈ f=@  $u3c%(o҃[꾡`xVPh0eGqWdawE1xU tBe}{y؁v-c9WN]-P!j6z7 z(ذ$Z3vJ( hh1#@ #xiqq-LƆRAİ7)+yr֗C )kzu`6q*E0CmǟyƕPډ0 $xrPۅ7.Y".Pq.T#Ms$W^p\ lV)W_3q2j!I>)kl%r$gdlO%3-"}=]2۾C13FTeM˙x#TzYUWD_M@($m$(d~(KS \(=exKr$T[W`Q%0)*L}Y%510m-B==:,[ߜyG)KI | Ѿv¶ɿ-!| }ĤuUW/>$eNYGSf,&ڔG(b@ŷDN%9l6z/c涬 OB\ߐֿ`H4qOdC+$N=6̵7ms=y=:kɤD\*'WAGcAl \d/XA}`)M V h:eMwSpH̭KEp*ݸyMH>6R .f_:.MBDߌ^]O-jr75ca&fW%+^ uT?Qv5q&Ы!ivYZ =%N5#&-7*lEO'e"V]Gt9cU5vBҵw5"Ql$Y/(K-dP bLѰϏ_`\ssd!U -l>6 DȣԊڹ5e%rƙ©qݺ:E~2gPEt|^R.f&hp3YfzZ>(.,>-*Nɦs]Zٸ.VcgL6ejq}gƗde+JGPz<5t<_CHGm.T'փi dC2+~ ~tz^ ԓ $g 'h.4X!u+YX`: JOScm/\oPz5ip[]u_7}i=9 -ӚK 9!_!:[QW Q|O 冷9/ *0̓yojnY]F~lMp[$T5NX;L^" 4A6EjxwM,&~J ӲC=',+r:3_Rf_R8ȢNgBC) =03 a/H? mFKls*HChle LZ- @5̍Rw}~lRres Q- f@is F ;mc}7x&B!7s;NvkY ~1<]Uw|}iAU8uE/M/'n*of>5xeF|vsj, 븒RDмЮTƌ,V ?P0ȎO~NÉ]YԻs2/v(|֨Nu*xPAbg r4 (Cws]0](Pphw_zJf=Y&,P[P;^6(,jIL 4K:aFy[%X;DNǃ:!~7!2n_ͯ)d \<3R1ؼ^_یý§2>$W:'|r#m`d\3sY m.pH6)h}> r%b ҵmD[hmDu!ˢ0_mÍMZGar^p{,(F*wGOκ7V;cp,2 %Jjy^鵉wHSgYM]~ ɒУ!b_gehFM6עYۏ=-Nѽb:Сu-mnŦuqGLV<Ơf16K(\cَ|ѯAk2LRy]ut:p/KxדUw@g\{3J3mƎО'=8$5膪I8?,*b1"R; uolqf KtrYzi)=)i[='E.i32S`YWDR([Vh+)Ԝw,hڏaTݲeB㊍3 ;O1jq l}Xjfiug6bApe_۱Y xn丹^[arj^ķ8BǮOc*nĢ1ւk!H8Yo Ƨk4~(@5>Ee!4{lY ٚyc#Y}NFpl?(K{9M#-ߖeu.ӉhG{uC\AuNp˜nD"/ԡ Lw|DVʻ¯yhޅGY0;*zE5H}m⼽_Z^M x|he<%M8C@鲿wgLm"B[JZة׭(ZQmUON&Zf TԶpgLo̴d05kYC̀M 8(ѻg*TÎaL-H kZ$Mf+~_ቑrNb2 I)0$N/d#W9gGUaW y)Q:=TDZ=/BS]Kp$e93.z`!z7xfsny@/ڎ9p 8f cK]*UJ]{*K~ԉ7uQ,aN3QC&nr{vxR!Oh c0#͛2/dHxo(7:ptf6J=ׂ/l cNgTڛ7킟DaM`Al(@CDT7oio<_Q'"\:Y_RΧ_! Bo,,sk-Tڽ`)"ED,XrCO yBG 5r)*xl62oTǫMePuy!8.ټB׌,{!(,[P n>/g%9DDEA!i,a$ H:/DW%G5kfeGScLp!گpcLN g6fTrrar|I{]/6]#6HϽuM2#0a0 8g v:fʝZkbtLKA}9%Q&Ki:=^T>jNzo@ H-hW~= S'o $w6ON2FxL)ȖmsŹ7,᠀oS&EC2@qqa{1ꆶ/H`7k1Z'qpլ2ZgP &jRbzVVABaX~ه3\YU`Ոm.@O+D@n}[h}>%jD:B]ZԌz7i) n#u&Krd*xkf~X.S *wGzt*]H,WKhGP|g?f?JV$Wfa,9ϴ3R."ஒ&8jtzt)=5sT3ֽyg\.82_`!䦏P nQT-oIu{2U|`&/E;_S)EQ`<ɨBL9㥚@NgZ%=yZ{bya?Vf 4&bd)n2ub_t}If_=]'5o w"/ZT׎k9yÁ!.Qv4Z#?a3.=⡺MU\]m`>rn" ص+Ly,ըk/sȍ 3Ww/%(@"Sk^O'抟#!"+7M&R,赊$+=T`{p7N#ҵ9d^J2#q$n Jm Ale.^;4:V_˔|`MlDs -xUbwjbm :UT84)?Dz4󑜻lH f+<^S wu%+lu/kY&$]Kٴil1ER5(mBfO`sYJS7AU^in3 R5b$([hfjF?JCKT f&8Kw W;OT9v|@BMY`#X#i$PI7E؅> ]M޺Mudg=J lR3lTGsɬ"S}q) 9wS@O!{,J]BP2/c#*Q<*:LL>SBlϱ|d`@,,T4nS]EC7 a|sWmKèE@<Fؑ:N =q5^}:B}.Y\AHڠP0v3i=`1%AfѕlϬWW)76 Qbȕb&&(D<Κ{,_8vi.y06DPHbpZ5-!=Lxђqh퀾D{YLXu{*-J-W!]T,ϻ${_ 8 S~b剟1HJcچV3xOiFR{8J7dD3mmq*J≬F? ١јBtbU!0Pڛ^ /M=#'Da$X;1rj2m#õNrp?HnvM~&Fx6Y]j`8[G}":\@9p*hZT5U-{QnIg.CK.4r`~?fZ bg /a7ƒsrqGsW /Y'l&d :W#;@Dw[3vHTDՆX0/x@͞c5LφT.== zL|c{ C0Tr ]l9j' -dIqoEMY-;8y=kw2(/vZ>Lu1bVgqiVtx72Cw&Α̂G'GRiqgYXu{؎i[~TWr% > uvd(AF v6QN?f/  TzNUi)=-^֘):V=b%wQZA?H{12ak39%IV')&K˛m ]ˏVرnkHȎKuۏG}'nFtz.EM}PEmF(mM4R*Vc.6HNi14F'ma'ObtG)ܷ Ey %NHlj8:&sQtׇ+JU>5Ŋz\ݼ:}Uv%wA 8撫!U**$g@Q*Im=b, WE[,Oo CX9ӊݓ\XZU8_Q՚7#74|N'# ɀV_WeArܖ ~x)M:ꏱ=RIn8&)?h(8G܈ؘ)odžsrtۍWaJQ+IR z7~XRbS|sJ{#k<%nwTNwƚ=Icz ]hA/dfZ8*< M 9< >sB~TϫzU٤I2YG5}Sd/JY-0/>'š{$yiGPj\|xV|MSk;m/׃{ <-> VA`ܮ{(g5Or RnE0OG}EW[:-)hZ2Y'T Sn,GxRk4?g|0ƚzΕ5}}bђ l,CT'nF\tΑbCSmѦ H1AQyښK#]uP@9@=0_KP%R Ӯg AE2}`L{]1[sxR3%nF;F,1"A8ɻHdXsUsnҘps9E[m{Cf]\KZ`N-?ȳ^eNL]H y%#-FLq[r!/+*XtÓ",Yp;dqo~ҺڧRfM5 6*&bj"Cp-Xd&73xf=@#DY[2vX/J{"XфB7=w*?.F1`c) l(G$?PfsU,bv0񈱭kVO`俎\ %YU> h'LkUKt ([nRნ9h R w-l-Dy2mh)?NI7`X9r ǻ'%t=#?/6|#[CVD^@M8xc/ ?ь9 Z--gEEn Q :u~U_s^TiiVʫecZY[BlP^}OKdpCp6϶ΌD9ٷ _`LL?’]C73?B.ܟ^!Z4K  3{CHՔ†]on6"8JbQy_ә!8gdf.b"]^*Y0 v˒ߏhK 5h @ƋЙ;z7 tlvI_9fP"<)у ]`{ g^F_\"?T$O߃}cڏkXV~i{g,Z¾]ѭpr%cǴW¾rEOoi`[ߑO!wl_zWOWeՖ°j|]Khm<$s_\"IKG|n'4{GpOehIPM(jnp$I(i>pe`> KMZ`xe=/{^p&b1 !A_~V*}Ű&67]D>*aW e dZ6&3(V0^/JDžsZ`5fL=d"ĶO[*v ͽʱ-4}ubyUvrďy[I3.$v|VÄ\IWy P 'nɬ]"AV`<(4QkCcJ.\\O~D|لܓT(l16R2z7Z iEϧ79FGho?󧔏&Bt1qo#+ 8ׅ$5#[1Ƚ&rsGr#_{+[HeDTl!Y;R$c6B{əyۑNrp䦓ljȖFh1ۢe3}?*vP)1iDo ZPdz |ykBS*)".u䍳}<e؋b--ójS|q sONLtQ|D #BJ =SߞnJRF/2˳yr f{I}I}/v1r9uϬoӺ87wKV`moT8o'Г]$rUz*N׏WW!j4kxpCAdP:ӛ h 2I/NC]ÊqA/a7:gaav:"h*]r_]`9=/dW3, x#K#JP R7gcTl Y^V$Dae <B=x,|hܪb+ v?aĒcW fzVL lXn =̶k lFT O±TEBI"qK1W=wb{F￞B,WYwBY:eD_JgmJboBNA׾Cnm5b㞌p#_rJtFU@JXo#iN\WFN Dj']Z2E'ompE?% U S S==ּT ßNr׮$4evbg   1I/\)~kyIOz _01&;w5o8+As\b6מ Ji6pX(F2>srkaW:WqV4HVԼd7b\e0 ZՐ%Q5lͽA|\]"iZltRͧVLe*vXPnz{B ɱSjǐj>} N<ZJ[fkBM~c(qaNzU*e^J6f]%'!' wxEK>;`b<dq+]~} ;QQep;{`J_l nMUQF,]E& !g9Πᵆ6o22^5M`uA؏ޘ:~/ X9̃=vWX}7{,ш&tFP 񫩺kԀѧ +#ˢTG١Л]Lm8"[e8ПnƎ7Dg^Mt:>h@d`/̥tjn?f'sٱc t1#8ʲ|,Mst6:g+e-FqR0)zRbOu?He܉0D"F@1Ԭ– C oY)I$jj?tw|̸#vrsfBpתsEH6k1j5t!/;u>}`oNYu2!|t7 :R8bIԺ B!u*"\R O%o*cЙ$,4vh[s-q~Xj\*T|n%Go.wAFqZʆ+m eA1al78_Aᎃ N$L=|F3Kʕm't7oot Nxʂ0vOQ7AW˩п} X8b?.-&E4'F#8ˢwǪ#atꐔ[ɒ)`)+G?`<4c75pИIكA%I^߾ݤzytlؓ^ Vp[ytz*A_/Z$2McYn|zz BYA"5 _(`8fϖ} KƇw/xk#ς]й)> 0t}b %oH/hJlR9 1bAۻ䏈Tr[; ˿bCKbަ$o&*`Forfer$1ItA}_Yu;+QOoS6 {}**X@w2٨R*\E߰Z=3iuHgάQZ,`6.gQI\E!75gߨTlOuۄ4T>ݍU EADaIcCʏ( |'7 wbTcP. cPMV)u++n|98Pvvk^ =ކ- Pؓ%4eB^7_ p6 g%{fE\@LTЬ` `CBP DeF$E!'U??VzĖ딶Z@bJ?BҤ6K3P;N}4[ :qgH(GC999M >R VH95}S5JO10eB>j`]zM?I Cqo'<=icGx3m쭨K #eP oj}iTؾ~i>cqMKL#'[V^ޜ3Wz~ghDR{ko߳g$$D^?JH}$På*eQ=3Uy˳ .(PD@_eo.i~wH($k ? '6hqRFvwͩɥ(^ZMAzauhL$^_N\Gӻa4|yo h)mg6{ 4>xଈ:fKb۩C1EYebt<+0OYeuƹ@VSH(hoq<9[X^K<we6 [:D Y1(ٳA7 .^p0!M|F`xS( ,繥:h㰬Q ag<C.g)Q>hg nc.ΎC;}l=o,EyC08:Gz]₳基 qZV"Z4X7_xS ~8 ,>!mbB%Dxm ^*徒 La98ʩYL^W ^ŦcYoLoxZ:6mbW^Dm砲 7&0rt6_.r+=^69˩1Cwc7Ýݒy(U?Qzaro+CQУox@n^m J/oT}v-͟Lbб2CYp]g {Ɖn`DȴNU\=ԏOne{sjz UX@w!A;(h22$F?;elDGm(>`i۳Lǔ!RMW2Uv.nj~토^/h46 ßUMB1eluCZC(=ͤR& Fo,㞝sRC|HL~)JPsJ%ߣXݯ7uGcѢҩGБ.l0>r4m?Em=o5 76w鸱p NWo52w{rv.ɰÖvVGv(t< [IE^ 0GJS,Y6JaX3/6FU<֘c/1M@9mNC0-Vyp7:],z܇%`>iD{,ޠ椎 6zr93+&GSp::ewnwYEkmΒ=4Bgufsml?-P:` svY_ks:7/ofW2bS:*h٭KF;:ԛOEN$p=fЯèZ j"W}@*֍V4satji t_^Wb* Dl"ze~u [_p#Z%.Xds3 >%+axʉPQ(d˒OP}|Y?Ē[X9A%`dZo /7zc&zb'+i}ӠZbroǙı>$(AQU6`-Mۃװ @" 4pYnHhئ!~d[0ۉ}eHL`ppV(ޢ"̙MnN]wUfb ﲁZ7y8b⏡Z V'C|83 &}c'!lR&cYҞv{fFI}LpD5 ÊJv |Z5vY[RG R‹u2g^GݎdXLMx_Q@^J>)D#͙ǞMX6C/soAm*[V.U6dA&KODž ?+?#,|t|`Ʒv+57zhW+ӰC[j qs$>Rk#c+ 3p0Owu[e=Xm'2+6#bH27x&=phD-n(Q#Gԉ{i][tO-md=R.[ƋJɒezzRhuD:MtC{+Q[)q0 pZdqXZȁ0 KʢT3xE!^4c\ƋM2p{QB@DO``][%cZ:G`ٮAuYem+9N@NT܊;0Da_A U u "arG$Wߕ yFFHҩ [:$Mi~{(;qv@(_{`=r8̅l K2 -+ٱy|c-Ɓx4/j/gfw+zcH/꺢FVG{Ror@k6%lY/y Y|FxOMAz[h6\$YyGEGl  ˬiŽ0$\3{հSWR-iL!cj{ ,MG`8ҩCsM\ y`^[cn5.chG؉Ur.8KcX eDDwT)ѡv+u_(X1 ?%lgKeDB}>_{qdCJٿY.: Y읽*s#,;i /^۷2D]o1FgskroW* \#ҞRlƿі*i6*l[^s=ل&|8 } d)a@2Y=9tW7ﯮ6bD1=н!\7㽁!b\l $&wJ3ٲ嶿[|ī)pn:*&^G*qWQx H;5zBR>и ]w8 U=ϛfr˅qKw)5n\.6Hs9°g)N&=|o]aw!{(ݨ)~#)1!;;>/90 S! ޼ 1t7ɂK"d2w3K`v-旞@XQ2O|r*gvf6U D阞LesjQA6)3X<&z2Ao9NVlLJ#$@*QvFo pԵBYJAK nYn+Rb[lNIͰA֐ljoeU38Ȟ lotO7|[k2Q}N_{c`?C/v݇)L5j6)qi%#J̱S΄X8QW}479Kιݐ)Ŝj0T0O)e笍I80mj)yMIgA]REHCNIȡuL}W0h+FUjj ?)99D 14QcC6t A gl5:pA@DU@gi .ɇ%Pt|7^Ĉ< w2"=}%|( sJutċEw4X/ R|M69c ^v}H=Qi+INbO))`V߃=-*M~ _:H};iȌKY]$<4U(0jQ0\̈́B]T56uYJp?JkGID!|z9֪J\ǺoD-AOovl;N*~NG v72#^-Zȅ4 ĺ߆8FtO޲0G¬=aM?EF3P޹X2}|8UM 08I=h@s=UB8> ,u\$>8“=Жf\TGe"+M y3]vs8(*K~mN<:.t2>B$ k t2 A?@߽92a.#"6t(c/ b:m7jZIgm̧WO?tLcА҇ΰ'OZG;}{$C݉_VgG]<~"E[#69W*P6k+@߀}K\CJ4< ~7{b(sr7ZMMbiՙ[$4y+;'JH~v6iZk!|߷QP;Lр~|LB/c7HrCœ3O tIFgeړHN멭3k aFG`$"9{qlh⸛,f%%B̲|rpm) (1+>SSRk״oAnp__E6>S{}eqwebi͉gI9dlh,dr`Bàjp1XGF!**Јplj*6O4J'oa`b&"Xjʔ S)7RY|B舙lE+*_j0J5O=S* N.6SG\=!%IS\$ =@1;/8*!LIF'4; J,{2H'rRVc!ٻw!ndǘXMΔ0xOTy3M+\B{j~0h4d끂*⯣:|@)&-Z)JpY ?)/6lUȃ*@C,4^ދ +P]my -A /*&L*1Mޏkr%?NbwBu`ih)@(b~Ѝʕ\5 DuGIAk:AYCk{0ẙ!3uLG 7tBP*Si͢Ц6.;.MFX-DiLP8zΪA'ɂFɉm!§w -΄"B]!a ο) 4)5"jƍOJ/$uRCWd.+b2=>džڏфtdkb'*&IRȀ"a)<$(5sSl} xF݆rC_NfA;`ypF:D~ö.A<~|[԰GH%J2 CކX>2?0<n7d`[u_ aڐjX*|hVM/RJ 1QZ'NG/s6* В wO>"Dpu6ZD$:Pget$}YpK7H% {:n%`k/;jLh6Stj Qvz#Z%!3so'1 MiX]Ϩ {p,'e5<.`p2qv^>'ZqD:bm<\J(J{؊5s% g*6 aQ-K;x!z>X\"m~򿬾Ge~Cz7IMׂK*D=tL_1R\I;>nG?s_T,CyՊ}ZgEHZ0`v'tEQjxB*8g%G1.!&ڗ$WW~O$l`絛̚o"ITU>!;9jj|imT@;(Ӂɯ2Yy-Z:VП,k3ۮ\!b;AzoL)v "BMks[+nr ĝmʔ0cu1,gЖMnRŒv+ O=ͯPS< Jif {&O=Kvc.V۹= X#ܳO"eKnnȪ_McߎJĠ% r]ֿ N7 &0 6fh4 nV$T̰Rq#YfPx}lIdre{VYCYDGP/q辰:/g.Z5 @znkk 6D2/ۮ/ĩ8*n!VZ[-C \vzz@Bjo #RL'7* }/OcAT]&r*҆/voz5#aP1gܷZ7\>v[,b5M3>im=JVe7bz $1:ӺıfC089P>y]fB 1 Fd=qw:ʷ3u~ ׿BfȢSBƱSs)1zEG2k]I4( l^*@ CIASi!l[ ,>|v*kCFl3uuSC9w<}X 'I2xjn …AܭZ2ZLGIx ^4E}? N̉h+2%TlЋ57y+.Ows3M/ ˔pGKBG'kw&NLN@R~=OsXukRzM/X6*(xlECFun4'kTOh/iV.g;KͦYt[rBTHB!31qԥ4K,#4 %-m^f5wzsA5\D^w:p܍1\ fEX݆fh"ߣG EZLKb䪁׹_'(DR>=e΅r5re9{~k5ibv$:#Ҡ5%y&,^tz]qvJԺ@]U?\d*B#fje׀bcչf8@eqD, w'nzO{a81k~l8y|ZT&b g1o'kLd?Q% >5mNXgd-~h.;@L/Mw9ϝNo:=#CJnrE4] f@fAԴX=QÍ; lY3b'd&yuA!nfE9yb۬M7,1ic{%HR 2u Iߏأenw~31nI8Jxxi f>×Oh+B|4'<La/d_W/r*G@I s*5nu&[x^(~3xO\}=gEFVښ,HQV/Q? a"%z_!9uφg:JRZYeKI7b%̾=YPLJRuj@c\*VEqu3jV~|UD }uM UMn;7Uv8pw+nqȞD$b1>8ϩAIyNqN :st:_X=12f0%g8m[X')K -xI/jR#mxkWrKM?=C?8>63E [jsz)4·AT ׏; et&3yP>RK3~"d))Q ,r%j f* VtaLLiy:\$avO,ҊC%,|IqCE+;-tR^U>[M!tbAHסUoª!W@SOZI$A[z򶄩v6h DMT}p2F*rGJEu/>ď#DkJ%Z܍$5w蹙4]#L !t DkbhN58sW)#2.j9)D3^wn -<ڃ++znNEgÏ8Biǀtxb^0m@B[v'0eQdyz'>B쏐8M ~[k}/YXX ܗ(d/eJ@db[Vz&B{C%uW! DD&-&F9@ gClDz>g#EWLbovsVy&6RONjȌD?5‹To=>]/9iGM(~O~OTC.}<>N]XFR;"J\vZ[iĜr9:Z5g=~Q564tٌ Тeuȵ|{ fMTYjs 6.#%ɯFe*M3}AWw`)fUYnV+_AL ]Dr) H E/=@}]9Ca2ìY9Fg "/{{PWؐq; Tj{7_ =O&h)QamBKXe2m26oeѝ/]Ը"6,CU=ӫ:-~DO}4zthW9_hZs rِzYf#Rd?0ֈm`Z>x?gCc,5EJ ͸I*1>E  {?PU&q)p#A 8!"F)|EZ' 69lI\X) Ϲ/kF 9WO ǐ0>Z?P's FN] RY$Ktgcb p!ϧqA'5KOJgk1Fӟ; ipgJ'p@g\S7{t4SH*Yج[kc01G|u/’B5 0Lccoo )amy\쪘~5?y"Օg~:OD60q]Q!Xlh|# ?ژ5_{q*|z7eɡ'GaFPE 3rmEKq#KK\f*ebXK -%3B=#֥s"@mfOV%Bg!Q D-CM8 <j)bOܴ%Ln7wp *g䨒_.J1i>m=+Owc؞Z z ub0VnY<_J= 'MHQb]u\ to=F!*kV\3Pʭ4bz/᮳.&X3prY] a۝k@nō:qs W I28*N[`H18)16NhxS|U#dtzf3{1O'^V0h0RiքId9@;S=5%kX:=6 ='@b=fcyLv7U4ZOll2e5ѫ rkrr~<]I|~ޓخ-W.vꯙ0"H(ؓ<k>A󨪳5g"+|TbD b%*jޮ]x{0YxŘEnaꭌy²OM^W=8ZՓiFlFkF*A&Db/_,g#yZww@՚i31L;B7dq[ >QGjuAQBw<%Hwֺ۴ɿU} bYY;[&R^p`b 1E ^~)hqWIW|-Hȡ1>PdKf{~.:,Zʾ˥PkQ?z=/4xq$] ,Se*%}VFܠmCIH5V@dZp@ %-ӈf@RF̺hKNFNˌ*l  ՘RKf?u EO ؆&θ| Q*w 4}K9o }@J4켮h5ׇyBRţ)k^SP?uR=Fh-f>v$9@}Tp}2:Mx +?e./Xh]MΫTqxӻ0{Y^Ε ,+'!V %;wknײK8*A#Oh&yӪn\tź6l; i1RÁy79aSWdƅErJe'&i Q=w+ӪGdm()&+LH9ՌCJ6Ӡo;vŗ8CMGbqھ4_v qv0LSŠ@!YD4ZWts3R'aPZ{C8W$IDH:WNί] rJP xy./-B{MN 4'I0LS* QamM +*hsM@wVI4̝(x7M/M}cQmCd* j}s bXbʐ4EM-"P=tv&+//,@Ls, i# F 6 *nl{͆"?9B}gX*}z%-pA$AB"b#N|Nc[d"|wcEπЅOt:;f/iS0Le*,iS+~&Rs.5eq8Öq]hWp&kHoBX.v~;y=[Y/GuXh3c%%h\cß\AFD{ytϓCC>G Ymҧ)lvi@nJTm~fr},كq]S-Wa{{췒`!'B2H8阿4d` /F'n!%ؾߌlY?ބ=+B#^k >8(m7F;a)!c+/rFPc c1@*rok縩Y7>bl.u%nL"4u:d8ȃu-!kJWδyݧ]4Ff9z+gXP D#LPU֒ k1&T.,C0#Ͳ80fd8rw Nf'wʓܫϛchh$ɡjZN 5MR V2}gǵզn6iaP)D|ٛ7hVyfFrp cWe?c~6#6:!f ' .`7Vg"a^*ZaȤ v#mbǵq*֑mPLtݿ8zJ.'I˞L؎;2t7ntqI)+HaXt7exCa.E^ @AF7{(pËli?^u*0!ӼED3[҅¨0E{?qlZօsFр4#4S*1MMl3Kk53W2(#'.Mc Hd9P"XU@)FsFZ䯚X!Y %?Qb ModӘ"og`! ڍemkHTÎT/xB|ɴX;9uM6" uKEr iTU#dh,0_Z}{;.[YW"xur#$RgxpSG$)>│){MaggRn0 %'}sLKnWph4 Q]WM Or!t)@HR|dIKo;4\" NQlƚU kS~eZm&Vb7-*xRjBr1 2Jn#w K.%# >=sj,e6_ u\MB}S$J<^D`HNp>^lA1T܏d!BV*)ZM2+S6r ୔|Z!j-HX{7Co | [-Օ ne*Mk'<9!ʬXSzjz'eH$Eδ ,2(@Hl/WT x!)S4(ZŹ wR/P: =x\t@Fm}F5o{ )ic F?o@"Ń[w3▇_FƱȱ!Cm_YG noD9eh1D/jWL2yq0kUBFumhvxZ*.m]D 0v/>ͩЪ|ÿB~sѸ\q5<2zH:7xeGF}P2ƠQ&E*%}?2nzq<~/)~*YI7˷:OH'ˑe|^)д1yY +Go@##P;OE~v5}R <_&QB*P V]auji:Q|ѶޛX{7"nvѶݷmIZS Cq̑,s2YKTNG Kq`0N#cA wqz %cэA(X1A-O۱ Y~{*86'3C %M9G8@>Z&Sve뭯>dG8϶uKi2-t3(a6/fao2MW6ebS7V7-7f9̽XܐXV eZu A_DCKz,+D LD* h"P[*+.@k5DVfPRx;Ynh 7MwVo,TVY|rNDK#phs)JR<찔}Phk5=^-B܍Zz~e  `Jں@YUPYaD>gXa8&}8ƕ`Rцz ՏgSݏJ=vCh0*7PqW!z>e{qˆEb %葬u$o_CYчl)as)}I8YH-Y:-Mud n~Än䶛H\6 bNuBWsjhKs~tCw"oE^rdd>ogҤƿBh^ԅ. aG릟*##2[5E8A}YkIn`uQD0% f߄C@wb'~wx[zFj0Hi.wf$|w A j@1攣v'jQ~jȣ̋|R`t- vYӭr)AJ\iY=@Sm/!ǿӴnj}{s[Yk@Tq 0 5>جksS69 [m~ z^COs:^]aV͔ɥ-8EdD m.fdްFތK@loꝂʼ㩧nH)"8Pچq҈Dޟ{?-tVܢrB{\TlUBBtgЯ >MPѦ7BBX218!\4ϼD3_n IX7 g'H]$?G8 _WFX{ !~ImEП9%ky\,VwG,f읬د7 > 9wer3^;(ng;(]RJ88~ʞqtt35cӌ"ovU\#<۬.']Qt!ozNfhIO"8^UqPqבB,&B,UA%8&"xs e1/,0fY+~u.]labjQ2_`SΝ%oxG9T+eEBIil)5S:`v ;r_`ym,6vJ NEB܁?}爃[WK|Vm3Ke0aXsXU4CPK}[ZUCt_/ 5(PV- qh}Two_4ъ2 ѳzcNEUNkȕdË&T?g3vv3CXklFBcT+SB"!,Q7a,o =?KY-s-0膖ǕI!RLҙҾsVІB` $ ;es? l;3Tdӊ×0ȽNp1)  NYL ~H`6A^?N?r1KZrkϻəN큯ˉn I_vBUjOm A`}[-LmQ_g+ nĸ t.$4)yg|K5G!p':pAMogKkz\{.1L]~_`搨. K~]Q_'?eO <y)d5kvDZ]U.J"1V6ƕi)lQZڠ34 OMA=?<- 8&OD@r~rv=rkgCŷ]U`z-AOŸd"?IlG2=ԍiԦ cJDbaCSy㸶rLX:0bs2LnX5ޏNڂ8 mJGOvZer4~vˠ/йQQޔ}vIH(Z3Q|lsG'dX*|]2:^9'bOC)6Ī nҫzVƿ5ػ]ׯ+ۅO_"/ vhBjs_GDF6+tY.'_ 7FjԎCPlEJhvة'E BПX5i֪Q.7ͬr*y,v\,#.eaY!XJb>[8Sn$Co7@Aeg6ȍY5`?@[);OL3]GW3Mcst2p `WAUofĪyb揠?c+!gv Bcr4gp6*~)a^3nIQLw'NE U4/[cċ sӑ<#!fAlH@ޓyHbs=My7vݏFL7s22 Y;yf0Mm6];-ouK”!vX2͛mg"r{طϘ`Cm^z!;F?lKo9\Ycĉ͐%3"/~ǔ:8Jled_A(?_Bz^"1N#!'v|.Tĝ 0}ԃϭs`SIb< QVv*Ynjì~t>'%=Va"Յcw0J uF K-aEOP.+eumDHVcభa4Y.H? ZBGeHB2]}D<҅ +VL?lHG_!<"m;Cy8~$2)C J{(3{iޘo+حDN+-\qYo :P]j% X%N_xODCAyYXờ* 饔D/d"USP_Dk'1+d&kFetHzk[R(i2ǤɄM@&^Ut-ش_{ƀeɔ~ϏPM=?.w #*ɢ u-kϘqu#fLQ 4~W XYMn1J.H;1UG:4I ħn&T,ۺ!t ٖ# Uݥ*j4[΂[âwL&;Z2?vl:*Mh gƄeVƳM2 S8Nlt['D"fZZE5D {c` 'oo^KQkA=" /Ϛ,qBE1G^cP oYkvO[Yx@ \? "a ]vsVϘ<>\b3Jڋlt'SW1Bdjce}kY*'8bDV~\P Zfq. lӁ!n5P̻ C̹UeHHϴ'x|x[oÞbb)raBB*Ȟz?&',O-q`Jٮ53:.f: V* ~M#>ؖeT>S)Vd|wK0tia=̴N:'6,z>.>EL^&י*| RNTvvm`uk #$sUSJrS!,G7eedgFT8"˾}rfB2JbNPoaz-_l\Ȕ𜁫 v#({K@.%Ί=B?/ƽj=6&%j1Ebf3<%ʈ2VۼlL;RgT^8G?q T#l=>f_\}=#g ؗWτ5v)H#Ζ 0{}dK¥S-¦~(5#.lK<52yxcfX[@S" iF'.C6 ׄe# $q r-b2 Ѷ K>#/@F8; ю0]My^b:;05jq0T0ϫ(QXt9}_b};6]?N,eC <_m׊ܙoQW̙L!sKnCKa 냊97gJ;_YڙڼHͲyI?߾IkAgQjS8y3f!0<iCz-Cw81Ӽ,- -A#Jk .9&=btnN*h k3 gY2sAM}~9 ^~#fX9/s-A8@޻ I:O^Øf B{A~+V 8>}.Ϥ*G2TIQ,2}{SkA`FB!1?`l l}Ik~D< `.]vqQ~?6hw(IB> Z#is.%Vn6x@Gfu*a#4h9u.MR aRGz hdJ?̩;ٛУ;6y)>͚ 82A@<&$KݦdO6*qWצ zvW6\g ʣ?ظA%vUNV~AAO˳W·z{p6E kn9?o%9ߍ?IZkE ԧdDȼ:=zzG;p}Srw< R惃Q9x{x@'!٫r#ԫ_h+quQ iء% .cޠr]`b<ϊ_<ݱ%"z \RہAQnj5~K{|tqC1OQ9Sw3pM~S@1a"x@T?a^k+:qC%gg:'&+cN\<ƀdt!}ͤbCd@:_t0nQD^1u^u}ӆ8({qF:,$L{c#gymq{x kD"e59P}mlǨrc JѺeԏ&X+v 3IŏKrJwX/7TVB޼|%C& T<`{DΩ]Dm k٥؛P3&i2 dyld!p j-v6u[]VU9BY%dV)( tgwAQ v)su6^u#Q29 *ʊP }en}OTW6 2qa(xWR9MuK$(޲ab;`GЛS ),>ŝ̰W  O&.GsLp#C$эiȹ(J5 r&&᱁O8 |LĤhevAKj ďgm7`ko5\QV/: B;WupDS&K,焵XVc _6b\1XFIK{a+QKAhIaDL],q]8yp&#zJo {@oM1pzi-.K[LcT)BW-Js~#Taߣot/ ҭKDZ[QM[@Å ,6qP3NdIsl<:|*:)<` l`Myä8Ϣ$ R'v[ܼ9*דzZ ߛՙ?(C^[0Q^C*CQZ 84߷k7)y I>*93rFF!jc<a:gEC o$ҫ9,W\Yav0Ҫ/:ftGMzR/j%&)'VU,bxӎRN8]Ȧ\*m{6jf>}l%A!F+3yV1S?ߙooo3Pg4*$kʙUUR%s?9%#/HCZAq~b03p7;Yy$oHQ$롊.9PF=2HSjK+WV|&9Do9 l0Y/\lW'ͭs$TI`j{Dfds8,#Av]% soҟ3N疕\$ީPuL`+[tCRx/4Qf^<?+]Zu/u,7 uB΄) */͗2d̕rXԚ 5{ͮu?{Բ1:Iĩ4ci zEePND@_"L%-&d }؞Z,1ΉXhT'w*;D=*!ƦncǥzXD+NMU>S3Of~=ԁbA?kI٢M"{yD,e}]J36ţnW9##<6(hJUs?PBCMW֙퉮=Tnr}gV"D=P8L} ģCbfȑLUS"LSj3 `eo3.m3ZAutVJx"= r-_28EWф N@t$ +rQ4"_Yx?jbm{M~Ua02_rd큦i`^ SEWl,Wb[*30"ImD)Zm5KD_u4|Moߚ?TđYlVG\ËkuXJWsw0YeZhV>WZes .@E*۔JO~z9IbӼvn{V|Wf_!8aM"R0BԿ,7?TkwhyLUc5{ݖkx}tb),rv QEKF/VYsӗ#ۢ jOKb9.[:±֚ݽ$d,p9\nwVbrk6b;,%zK.M :O WrsLH=UD'4 4P (Tyh$'e+[ʀ[7DWXqs/]F)bŕ"i=BG ve/Sĵ0,=xVQ>z+xb ىnPZ-6pV$N IP1vٸeci A'^46D]"1AV~{ IpeWF2D5/8l#ݬ~WD$͙QW"*>'Uͬ|Q~i 0JNdypδ'iU;HZ%}+Kdt4͜(PӳRNt/loNik |@ fRFIsT-ď"oǓ^m7k'ٷGTmQeR^/Tu1tgbl>޾QOԶD"ɥn XW } ~k_ܺݫ6qGXyb,ZQ"xZA` ^,l&I!rHwVNfh zoL0((|ßXTfF/]/qg;c=ڶ?ёxJoESXbUZ(Z>Ib s6(󈍃{b) 0F@VoWMRn䡃IuֽH'(Xkk,t7,(mB xY150 ޹72W˜~<뙪Ľ4-br[L_HSyj92:_ --YyAc 6@Oe`F-d-Q-踛[[wf3EսLμQ,$0iݯ!4تa{oT7h$ʷy=KM{wJ-J;㬝:|-'ÈIJM%\J ҂w~3Y(X3BI6coN+ӓPv;6H^@"ρz2-_/^gb$\eln7&G'GW0Q%1m'ag28X.fms֭:70@,5{RXK}́GߓY"\vQc8퓔iD1 [N*#KY{[7L1G 1@I!w 'gZ (f'|S+/Ъ*fNrP,Z`tpP Y{6cax6WAüM/B^N;ݾvp?qû(˻o4(P7z^oc,՟7\pa\3됩\@+)"Sv_q];`_89-nh_3Nrc9t^Wfz ;q+mg a3Z\R*SU9 95%ßP:9h52.l[7:4kM :6kH[>vCyiv~aLY#LQnݼx;D,OZ:l@%⚎=iE&))Z>I|;`"uqwo1FˁqJ :pjV hхN.ضC; i}܌qH}<0(J%G˜i27h95@o%'pOt.a7Ļ@:IKXK.!S'gi ~j,q^Fief5[^=(TYFjΩ bhh^\[ŀH3_KƜ$@ 1=ơa6MΒh?:J"sϺڬSt%AƄY1G2*8:Dz@@O*~SܼJL0(Ex1QmEyh`hA`]IB}o ,1c1FT,b`0[jiUT }'l?5jҡMdВgWm⯣Bkz~8x}xKnj0` 7_ {z0" "Z*ڨAѡu,ctUQg2nCm+n_:_ 4`]",[<B2l[gZ*™sP:6`גWEUaݪu#'ekf ly"<=lۃ<>1*SG_%S, ۨ$?yAa-{v_hr#pf)0:=v[ `֝0DNH[GCn@_*[s-ۿ=USE&bwbm0_0̛A?/@զ68YpWZv.Mf7bGNa"- wS9yJ.f^,OZaH׊`K&z,mвmoxg[Uf6&GcBl'ua?fQa6핓?:}\SQU-)?1R4@&!)Gk)f3%c+僢m"}*mj&9\(1V@9I@DʤKD@ahrh5p }DY5[*XXoƁ㦔)Iz#4qH~sUYaeKM>fUw2A3X!pYdjqU}3/%/QM<>I+ D|$ͩ_I{v兑ND* x̱\FUf1 ?OFwT% huelgI4 Gy-N%;׫ C㈥l"D; TٍwIKˆ; 88ђ=w)Vv]v?(;uA jN`"IVF.#Ĕt3D7ܞآR:7+3 6%N/9 , uF;іI ͥ<4 Nev2y a8t<j]/pE_`Qfy[>d0!=MuY%0m1SFŽe'tJE<.4\]k"02?$Nnїi̱eF0|)qDmpJ}C"Jy]2$$9u9P E@{ ";ض}";G4gX\_/KJu5ő j1UH̾00*yG~"]GMo4٘UBn~&MLcoJzؙⶋPu i4Rcx5mdEWN*^%;U%ҨܴR:]JiRnK:&*>h?$7AEZukik$#3A^'t_ r$},#p !!x~f=P1NR)b7y𷨈4*[OE8ږpn@X?Շ)961SB- ~`vF|i>L <Àpwvޕ vClюKe/giJtZ@c1q- (3w2t\ӥ龍`BugG-g(c!kEM=@0m{/0Ûg>e`>FcfK:0(O{N"lD ~2L/}_ 0.%.(d| FIEtg9sJs'ډ"94yB籠Hj4.#T% Nt.vpCW-h 27z:j[(os,n2-xTyhbΘ׈~ d})\/j :Cg҉}[뎴Q; X? jҏChD葀 s (*0sж bVD Rj [rOXxV FtC+xż[`^wDkK޴Hȅ ;q1e1wqa#&| X |-Ҍv|q-_?F& nJ@T3XI%DZ@;&)8vJp&fSwg']^E<E6& agpT-4}S 5)w*[/. LjֆK91yBa67eP4Bm1/@TT \C:V3 @ɘ0<_2FAK#|4Emk>Q\MݯIBnę7K/gGms9ee; e;HɛYc> rrbjܚ4%և?tR¡`[E$b1V{9/j@+h3l/|L!$CO1m;Iw@MQ:Ker]>އ;ƨv<-lq3KXJ="Z{*-6KIP (ٳi+I4ľyg!}u@ !D( wN͕؆'m&[3ޕBj{F>Br;1EJvJM>V+h&6Q?vJK^iٔ2*2)!mղ)@m*LE^k^n8Q'9x _'uJ "Z8 t`c͇̱#a.ǔ@A Cɭ[C@BX65Nmt"@8vB8ER*5 m۵z$[=ey[FqGIR3Ntp(騄l4A[T@îgZ\j .427uj13.|l}#)"h03w;.%wWY"XY'){iַ[x:>EH5Y^;ǔ.+m!ɜxAB?:91RQkk?>ˁ Υ}s^ fb\;Fdp1:sBc46w!9l4n2 aIavvcJ/+a/$u#CO"*weFvT7:)=\ R΁g[m)!o:=Qǚ/os% N޻&a+nUKbkj~/e r:]@.nZGUߛ 2.p:YS3Sʩ5р'"Y Z̐TX?MQW ҅1Xg_GddtC!4d *8zΧ!8ͫ [ Ay Ssnbq %B޵]@,"P-ORdEǨIFs6!0E]Z4APL2rowH/j=T͔D{r*d{Wa]rUJ61=s4"LZ` iARIݏhv:bS; S #ZmI0bD;9L43T'>^kʯBvՔg^n*{.YkT }9Kp`%%xlujtņwJZ5m[Lj4'j O=NCde M ;j7ݳ| Z) =IPȏvwOHI/r} CZw`|CG[`f!ljr\B%@~E)x fy=ji1DNM60V-nC^[$~u q,z+(xhCֶxhx%dGqƂ-Sß:9 c0G^38NQ'p @ev]Ez!ꂻُJWXJ?`Y$ȠhdoFe*'x+HhW(=#+t[%QX jc%FF}][瑻JPٸ eftwm+pՑDZNBE yMxxz2lik [N=vn*M; D*[@Cg"隊>欉SaIez_uM[݊5URCHGI9xƤ]JJ}˛,L?bFOOrS (sD!l;z#RNTҫIuNh^|FT/7K*ʨw$,b5mrvS1"^1DdsdO]:j]of2C٬xȾm8C^ߍ>&]@9 boZS1uc܈Yȫ1ʫ:|6Pi\6; KeèArø`1ftH5 kKd6|K!rLOZnK{)ިH1P.j56jA]ܣ5!}<r~?J)1NJnEG#kAū몥S^⋴q x C{h(u_}q{' e_7OHI z?Ml\vEH5V/rg:?@.X c;jIH`& dVqjI&y@E}e(Jxy|-͋*͸5>̦K֧[^"8UOE6"<N!C Jlo0Rfw"WNJFoqo{W>L7c5DNRV:r媣P| ;ŮH'5e) EVvHRlF5D i8o~}DPƾ=L~5OʟFq"D`έO KԠvtUi6+ %׋tKjo"Ma;yq$I)+D9X*rX|ttdy@&V+T%l]s8M\7*V<嬀"6͇jΝҍ%!\R:A f1[xY$3f$Zbl%|Z!dBҲWwvbQT] .qCj ^0;^"RCv|ş\cTHN.-LPe=ok >I7BRaKފ%de~+,pFDه$:wW{wkzoب_AwqȢբUW8qмթCE:/8(ll3*&4"u*o96M5`+{:^rⱳ.JƛBl+1ĎBOe4fS(0HSxK,(^- qc ,֜/YLo+p;S.d7_?Cp*O?V#[I*x+e#Q-$ڸ6 Xyl>t+hhM@x^JDayWOIuQ21m|6\}]WzÊ.iW܈>p,vۖX:w%v)1ءA;2.p)46OƢ8{Y/9},j\+0a ΂HT!1wSuSתP Ɵs;/,ཇ T 57J;坞xH6߄Gրd+Բ h1@]U'-2̑0iK9y}%^)>dAn#8U%&}Ȍklz'O6/0W47 E~2- FvOdrN답U+MAJ='m4췺i,K ź󺠡(ѿ`\m? WJ/F3]ixn hE֕oKg8mTg nB uˈkXۯ_ל? WP3am}"ۂ-vr;$B"]oRK3JM K$ܔ /d.+ӨEs@j= ńw-cr ^R9eZ)5<¢%-6MvCTcnP 4Ů1XDi\w9A`)iD 1=t ۊɢ?3b i)z1T JI}E+N ߇۞4j@WI{. f *Vonl@zO)_=\6)9G꽱<;diFH ijke>~Dik.v`v~jsJ A>wO)BB@t9@TvnQfDٟC2 f7vdY#|ba`^cNGduU P1)A]6F:D5K1y䈅Ǖb`j+6l&w>{bLVW8θ'j!mI7>u8c̈́om%mUheɸ~wCkԐ&;\wK],HXݡ-#w9hy16VHU҅ +ѭ)^,,-+/PHaD S.rG+EB:^cCsiRՉe Ip&Ż3sEյyf]4B3-3ޅ\@g B'@ )_j.13wYBIށ/}5˘a/x@!J3-*ll|z9FM<Yu&=!BwPm}6$]{R.?ch/U;1bY>|FhnD#Gv>ҋV"vՑkh!ZcYvxO"*˒5:|]!,jb>Qt洈zRN L]҈Rn-=rh^2FAlI1+kdgl[((Ka7v}*d_550c/lpW]UwM،y%i db=y_,ؖ9W=O>R}>q _ дYq Ҡ{E/HrzVȠmPߡD En`*2ѴNDm=}y ɮlff5hD{ŏGq+fKէVyzcOߩUׅt4_GTќ]p%ĥ Ckn a $?P +\VVkv㠃ۚu; зGpP ?Y )N3v<~Mv %HB4 fQyt12su|P] 8 ,wgBv{Z~nhVT\VWַ=稑ȋ8R!r兀 ƕ}aMaeIa~qBT m_\:Hv[^DOt^p8p#ǔD, 8E"uceeY_c/;ξ0E|у.:I8 DhwqF !w+ _cZ(W(Զ'BNt+Ig-Zag-Vܓ(wrEX肐? R< =6.1u6zJ;|Zfʲ)+˂`h{0cZmeZqm-*Nb$?Yl& vZ}i%#.!|WhbEy찣:YQein[Y#I˃zpr=DX{෭A g wYWi f̋eT:YQ=3.b2Ȝtۘ:FXF\]LY)>Lb~;n)ԜSx[†9RyNTHyWւԞr:3ğlu$BM^)El/dbGِ1$ބ:ib0ꞙ6!2֤GFk 8:R.d ggI5^BWxz03SB1)h-3]dK^NYETx^#3){XaMjxH `Y@ODnq(Ɛ$\"yoe5ޝǛjg7մ$R\U֏Mjcne,] C,A@򈼀oÝUáns1qu|Һ5W,lvkS8f?Wy<|Z} ug2^;:sOLȐo&uKeg6BNP?Gh\¢IXQ믘ia#'>Ig4c9_iڌY[ }V(Z.s !%qcF<TsI%Iri VfstڧsOTxv`AT{i Jy B_tg@a"jODTv8ؕ/ t唝ؗ -Hߠjt`|T%ӟf~\a,fz2!XG l).WH^ ̮xB-ruAbhkؚ Vp5~2=}Aty&Eg炡o-J6Ջ~qcZC;GP+~, LMQDqI@o(O! +;|9{61[8 I6fK%D6hsH^ ! %{klUV (4`,(P2E ɫJIPw^6v8R#̺ M3jHHV U$k &9I\^sizoU!ҡ0ِWXYj5|#$ᒧ@KzحYGK;tu*I<^.M#6vgvF'ʜ*Hg7Ͱ@?`w\`?sֵepÜa^pK?!m7Nj睇˭wLc\iJN/E _# Df#reU3jϧ>]X'TT#&Q.>PӀUj] vѢ?کW-3Tӧ) E#āCi+J!z+kil[L,Υ$*E?6Nzi 5 ZL6GrT3ܡ a奻*ð$W,Oj2[t5hkyfB4+l_J ߳.&no/  -Q)šxc!UInj`5WJ6HMAN{dܞ; ;F66l"`D.+c/4|nP HUh,1䕓xF)CwVhc^,T'zhpB!NG*A(M.E&'=T:Es")Eo gRYPp@awY7ZMP`_'{VÂqxZ]t*^JE#곝s=;d[/"bMjЁ Cs™7pĸ3ޮKj&z\?qZ䅒];>9pVG<3j†:Ky! H%jT:i ڇ?_=Lׅ ׂ?s&nW*e0ex+ @du>+T yiBnlwEDR`ko; bwbbWB.t8z~P' CCɑd"o5:=ރB#m`szSwp04yZ7yRFd{J؆f'z)ӝڀW{Mp`|Yp#V-/8/-swZeIQ{ٔT9.5`7/E9@v(:jp(]"j+n^@F޻#zߋmʃsg؎+ʌ $waI70: *A*:C5rk˺x*ĒπWq*H] w-̰Xcfٷx^.lT)sC,pepW>@:)YǓ1İmv|^L_54t>b8%~:[lԞ T C%%jwdj{ yrId"E7 eҥ .3 =)t|_OEr_/suTK]feeQr%!>}>BΙ:=sby.˽GRh3 Œ0zY"4r,$Е 9ו_.[3p.+nG#H~iOAwm%#L3y&U$mO % @KK47n6kzϨr&IJءILN\R㒊q s(juC%Sl#j!CBois6PP-/:Q5pN*_ ":YD|϶ר]tb!TdkŶYzVMx`ctz2Ctv9ޞ?=Y`޺;UGcrO5䩊dxī3KʹYd BDMVe9%3AN ~Z hK+ Z^t$)B =e%!\ ثvCχja)(Y^/f%If J%Tj/aLCf>+?n*;&7ey)Il6%n{ eǡxmV4$zyBު~4kj`%!EWP6~UNőuGwg패ؐ ą(=Nek+ՅB*U{2Y`yPk჋<X= U1J* 4e{S=,3Ib+%MSL6$yw0KU^?<Dhs 2F%<-\ :& ՚AFi e! s;ʲRtpf멝yԑ]yNLc/V8!?J\*oX#~qj,_)Z`5;cF=5eL7 nC}XFiM=]Y6al.i-6a,od_(ARg|?mYߴkE墇 3J Μe|pZ$A͐2*~}w)e҉;rf]dZ 8xFShB8% 7}B#ך|óʻ`b6A6jD9h5e>N~f2BYUЮʚŐc-K5ΐ 1|:iycd 0 ­ܓM`0x7J]PqK%j{2$P?(i?QyUcWo Paק#ZX0?7p{z㻏u!J'ٗv[n`2<7.ܵ{#btҨa3{P@i i'\ @QaU C zՌ _W4X4E?'lmq;gW#Xr,dfkѬwo8oellόMM9*͈i^E*TTὰDjRŸc$@&`*Cbu_L.a#uW[ư-u:C #  TT1ºRH`@UF3̋ Zx;)oS_'u, mTH|يf Cs\Qcȇ~Hz-(Nڻ`~#G}L߷uZ-&쨓/~/H\OXۯ"O߳̊PԜ vC|8R~bW@-kM[ ˋhQzG(eMȀj!PoidH8`Bv@MgCŨ EL!-i?KI`Q|Gk]S 3@`h1B*,+ ɯĥɧȝ(=i6ǽ`mfRR?EA*}at%ۧ" '&J O^ % ARۜ;CL5NJ~ A>tnyqt* |b^@jO?!M$ +ʦ{Т71v6L0F!aVo-pL:Rzyҷ(U2 ^/7=E1Y_SovG\PډL T]mlbW`: Ԗ?(gQx,t8nC ꄚ 4CrUΊc_;iM˟>jg puzZo>uoFekT9ʰ UU(sHN-0~?/i!1 ZGƢ-c?>X=(ZOXO{!#$ Nޥ;nejyVB:*:hÆK̴g;~Xle['59hLnCk}iRBb@}|̌dO8j벖EL,l:P3OQ)$'-L_KxP ƚ:pԎjC}!q9[΍0[Z_M9hqᰪJp*j#-LԐ ^8oSa$SA Jse ڥ)hǢߍݭط%kue07"XLԯLH^iۿT]- 6*tM&I#! ]}V0sC`R)Xth&3.0omBaWԜuW*{s]\[~˼BSI푞&2{bXf!}'%@vzPf~T_ZʘZ񯗓?Y?^'[D:0) 4W`Y{_['s7>xt,,mg, k}K|i_HƵn 8\z /ǣkRI#YC@ +?~}N+`Av-0Gtʠ?&cUth* zJCJ|)+R# ZG~F(PABJ9̛xhF6")e ;SN{m!arn%]g[!e TY>2N6x+U.[ŭĬeһ}&Ţ wn&Du1Hg P*gwZл Qho 45UP(ep7c_ՌLwm[9 t#y_]D/i@BrI~I[qM?,}hU`VX2rIǔJJׄ'łY= fMYQKx,|y gg o>%X4Idxd:]# P)O7f%BVjj[ބ.Ddtri?2y`4]q/cdPS[ENKK$Bq#Pp)`lԧϙ㼋 ؄PܸXFT3cffrs_GDyRZ:uza<#v0}pPSJ]ð +'XBe?QH~g9بGE3B0I* L4 UY&3,RNa?D[>E* ,kwe8R T :L(zp'#gҍlY& 0>w#W~G/}w^8,7Tơ+Ak}"[C2g rZ%ytmmfgvglL 2'߬ <Ҟ=8{h@ڷQA~eT/b/llϙ5h!>_mKIK֮0xB"R]dKNX ) !pA]=u}8 3<7.4!tKx_h ndxӨk "S~nrё_v:@KN2lؐ/ha!fc-eczvc%|fLb}sGWZ4{Uv̆ (Jo܌^ӠzRl6_&s>͔;}.:{uȭhT K}uАM {5mu,|gKOXigVʓNj 4.r$<Z})jD<3lܦkcexرOQ':gҪע7hf0>YbBC+%2 g$Ǭ&DOt|y^7F;TR1|uI8!k3N"n z6ZfOդPj bͻ(uƮm9opz4O\;{@ zԭ= l̵LIצȦѐ_njGH q̵|oS@b5+ӻ%p6o6 ~&BBEÀS;7@WT[q^ĽJi4 17d:Dv&?~6kuooy^axz,T8cta(<4N@+VC %w9r6lND2엹2x-{UKqkVҠ?7kxr ~Pz0WS0Ov\ $>s=R;*NG$Fڤ V2ئ}!GT5`oY%xoځF6,_AMOMC3ض m2UA&g~}nAW :j!fCը4y]cF %ъarmi2vh:2~Dp]ZxW9כr>0&0fM2"ǥB<65q+Wdio +UЁ9qe>pWkx#L9\lLFvRD90f^b,atn#vMTPn_zHRJ|Td'0B;9lP=ߎfNxUtl6QW0N a-eG[s2O7MOLĦd+<Ɗ(j zF082Hbhe)Ղ&ob-%lGHnLL:#Y7TI/@(aE:nYKD$ j>{F{!58d4Q;DžC6 +\"Hco :fnrBMxpÒRk,o^'f'wMFћ]o-BNlϊ2mM"ᯫ;ݓs@4`;r:yesq9]Ec(KMa_4>ArtNa*N W&\|'P"&[_oD w =vKEzH$pvO]B -$RԄ3“_a'2/ M.aZuFxV`8LΙ9&C JO6&.j6i\<1ܭmn6XY'B6.9HvJT}9YݛWt䐸K@ĹwJh#Ny2cw޾(mUfA600K-Rքr+i>[nt (?Ha83wUk>#z=tűBx *bRbVZ QZ 4UӾѲsbK>y0C(|\`)7ivjXnw4ua*#u :`g80ݟ)*нvW({u'\MfQ;Ԛt/Bpsz5Ӥ_ۈsUB~!.v86@--ҿLZpvGTO'JTLG?@yBbE)UwG#iO;swľ^r}NY!mLPy\>et ]PX;!o 3 ^i Yn&džaN NTeI>^UʎdN Q8LKB>ѨbQO%O8.Dˠ|PW\]:]#Tm&ɧx};'[9(!iXs{uga"__JA>TIKPqoiF)Ujv7-r>\ͩ#T{<,Щ !`.֙hnBS#lZ9mW4۞4H?%̸ } Zh4\`?Xזmr9;"d2ď/%#,Otw0 OmJ {7rBc"U?aRcgʇxlZt;P\m/`tJv2,Qؓ*g7Ǧ([~"Dky=:qJ!8o@mlג7e?֩cufBO4Rw08udH 5DI)j$*%[{0s@Ԋ0M H>>$rFyZlEעn0 qrHlȁ钯'6: 'G[(,V_#tw]z#a˹te^LnJrVms7tviwoK 5Zw'vmF)*TkO׉B낾fIövF֝ `B$9n'*^˷w^<8:U,9pgZЯW/w^@rAs>j}{ *.?8 }:vQ\[W;}AS²kV״7KVǃojLSF`t4Dyf&IETh8eI <^wV8#؆oȬ(5QC@ԭQzb>B+ i3puWj1RIGxG3gDNhQSmĺ/{CT bW-0A0[Bӎ/5:|$@ė|4\Ϸa@ h&y13>qS!uKDCq@痨h,<Ղ]KHu\sA6d{4fѥJc{@~k: ]#E~D9&):0䶢5}|i{ШwU2i#/TNq<0Hb\n &D.AKDglj'\-},\BNNT g(iC0u~E`_U_̿\ZpϚtcS#x(fr8.:b 5Ht.6 }t?"sFSY3SB&eA?aE7.8P5]䌎p p뭖n$s4Eu5/a}ж/艴rgcs۾cIE#=@[p6PaӍ2bI=P\y^J$Hl$\[0F"9oPHT!iNee5d5t^6T%zK 'FH\(u2 w/{>LwdaTzom"2#,{@dSGG` (mB^.wlxpf]^Zæ !S((W^cPo!PPK~cm #l wBz[#xK1>qo. j|@$K5oY1B ubЈ#cg;.%~e/[wȮC&Ysϕ@PqmwQߔLXxz0wjtquN "hL@ˁj*Kfee"t&fL$\|(nJdKP({ːpf Q]R[ۏwkNKi #^=V^]?}cFB"rO7$/{s#.eK/',2ߞ*mA{>EoLdYgȆ Hpzgj8Mֶ?,ڡ%BIf-1Il2}d_cJmoK BV%??/X>ZgڮbCPQ:~Hv$cP乭N c%1g] n83zW|r  ],r HrPu\+FX>گcF%1U.o-i=',('$tXF;MC]d PVe4z*TL.YߚiITjmkp5Epe3'.wޝkԕw~a8"{Ky6(;; J_M:iڤQ0-2B0bѦ M+rޙ!]\J%IT~=pos&w \@m4$UjNteT17hO"Ϥh$v(o{`;MO!<|{iP.l0[`r82G4H&?n u0{5>_)4!w}cd3ZV^َθc{ӽSP6۬*0z31~ &NMjmK_ZTu:P0:\a̱Mpb^/I-Vn[ޙn(nD "]]NΈ`X~\?<~ѿ?oVc Sq# ֆ ` aww]̆Hυ,*: C^m~ԁVSR_〱kj[k= ERxPCh8ήZzE6VbMA6ջ8pZbjYK݇j;7e\qq#Z1e(G8 He}׌2jP~1Q ?B34!m}\uoLKT %A `FM8TxVaW jCҺHiJu6*uة%W2d }NՑ#8W87ɐ<mSO6\d3XCb;1}+5l$ݤ=e4 T>Tt k*uJ]#f8>IcBz4(i{7TW]b/P_Qh9n쏅9^Dn9j8itt ߽tʚKBjض[BG.oǩZbf%;>wM^4pU輁a >C%Λ1QѸxOn mq~o.8A7-6m3hh u\ch O"TdW^_(cqMR'oŽX fm3MA@Ѥ\Q&v;K}lvTO=-o3g0`z oB;a+=-IsXp=X0ȄqWzWHXb (uxh1M1"`W `>m}u9<2 ( Wwj$hN_}д\Py͟ڤ}Ɋw `Z"K&3]i=i轢Y'&)|T)tf yhb<kF2[mO3j3ٓ!_eP }/l[W zX'5.!eiv%3v")HQmm)mFСn [UK*]YX@2oz"k)ՁGy-PWp&)xhg)];U:(<P^K4>]TĎo4 %1J9D{.*y-$+>YZ&䝦U}xx괗's3? : H!ׇ<ݍ!Xx b,BrC`9gKϐ&FLW[&Pr^ y,҆~JNv,D!=$Lm rji.o;:Xw$x`݉Yhlϲ;^ #/K0>uZkNg\ w;Fc|U# >P&=9H+Viq80LA'j@y0ýY)l,ɨ%}0թYNɦHIO_fj. t -5+1:bXDШuOTD$SQÅ ?Z.u>9~9f?(fti nA,W˩?.7ITSkj2&l<2d}_\򚍙hGf)rU :?lg$>Tę y;qVxn9 )*Brya F|5_{L?f̌էٿIXX {u;Л]7\:z{@4f.Ԍ;lBV ne *A<Na[ rǮSz٨@l3YIIJ6xt̀PW"I4Kѐ;*אT2,o/lj@P*^r{"WՋ)mZO/X%1]Ntv~1k5H$S{]O srA=i87tk_&gEHnTz'C :)f(8 L:!y,ºF:SK2FTb}Qx)|5K:gEv*-,0}]DzCx"6Yՠ 5bm  Mdbc`۪ س-NxJE介!f@U?b氼z>L)JZW['YE&4 V\,L;C]W|'2m0r~VQC')xx!Po4p+)צv|%c{bw@mGۗC լ- v .2T{)^ly:f Q;Mb\l 'ft{8PR[W@LY8Aԉ$n c/M,#Gd-2f[0WF,l^nP| 5Mn,0dW <3179grE Fy{Z ){9u|RWH-r0˞7/1w9`7HΑ(HqW2>xGКk[5;J_s$Q֬pyi9v$yCT 3(xXͻ!P)w«ÝUcHciDB ɻ8p٥te(WdveN!,>.Zjr<%jBX^㕩izb KRTMΌjQV CoIe !wnҀɇg.uO@/,Lw>,lT:e 4ޫ(5yJ{cbARe!BEvwxĻrh5Wt3:LMᙒ0[<7P3Ƣ"*pIyB q'_\t|G0;: !_|y8~cQb]{ r\\L}\!k>rж&oIU?"K߮>+&e5Pm_UUZtP"n-Z3$BuH2`tbڴhtjQE,s"])8hw$׿GpFE$Ti%H[ #dxJ4A1Dgˏ4q3J-=M:xPO˜M-#BOyy\$a:_JdYnʋ$w]՜Q*^m$Vp&R0%[fā/W{۶0X ?(mQ K>_X 򕗼֛rKٌ!7eK! J (9Jp [Mf'+3)(Bqîs)S)?0 u,͝ptc9G~\◔zwc̣M#~w#ulHdL%cpHHPc? $q%ۭDEv_- $ VƯQn6KqL%E'RǾf89(|./3g9/H Aq(OSԇ>R /T(2]rn#m]L;D "" P¤PfrwEI Қ~߹^;pl.St0.Nk EAKhT37di<>"eCl aнET{JS|=E7fEïTRܾh>l־{*UL ~ hDusffe+!|,ƾ vycO㥍n^ё?Ay"`PgĆ&KJ]\  W\-O4l-?ɓ;,S("qfzpÔT]ȴ }7#M5/!2lyj"c*#͖):Nws!_A85W%rܹTM RQzZc_m^;:F/GF (oQ4\JGO]v Á#{;VƮ.CVs+ۚR=!STIJ6 /麼;s?jß_ݴ)MSHK~5 _Z9͕mS6K~UpW?x݀=h99aGѴg hFimn@>yr(3oT-8;:^Ou/{䐨d9"mˠ(gj.C Չ瞫'S7oSYF lʐNF </}}lA_EѶnFlد|տq%G[iR)[rHȶrH Mzku005/OP8B-b)L^H}F_΃bfJuxSY0棝r[NC.{&׎EOTNFY*&噵|.?1;'E ĉ<@Њ6{nk9Mn`K㡄 d?RYrH ^k:x@"kn;3c/a75& vG3%b+VD9h+Ԙm@sӌ(xN:˨=P7ʹzxEQ0S*ZEVYHVa2 yzV[;f$aռeߊwʇYGdc$ 9Y19سH%g{:8T:Wh~!,66GOV3CӢ&EM22$EntG^eFoU8"f{ޑ}w \h°߭f1vL6b_E0\i'γmbsq qwʅМBͥ;J9v}mo W$`,)X[jo2:PaA^$@>r'qJM8K*O{v.y`u9؀xWfwfgTxv;L9h{-rq:g#^Œ /j\\֑{kv\ S{ЭНH տ+vh( |eKƧC(d zکm| xx4l0<#gUOFIjV#[5MvN7˖ŁS-9Lyv]p.ݠpH{l.kd kAcBH!ݎnQnoxG|j.>¼t BI+WmV\>NՇgc}bkG>G CɆl(~A+#BjhNB w%pimGV^K Ie5`sk&Xk>cW?/8B Gzd?z0P^{q;38{Y5dITϷMeYt=]lh2gC+oaL#KpOŠV+[rDEug|:~ȡrYR᯺3!Zn-,qIw.y,\ ,0z)gL縙*gZ6Œ$G]?lu_7tX4Ţ,,2Bky> 5遞7QڗDV{6Wae1H$i $빗m<̙<ƭdXPô7I/qCk=YJ(O}:d'2Qg龎)AZ9,icL$=ʈdJ}DXh{YJK2cI-3 6Q6Ҕ+]يL?do 9oeuN#Kt 5a4hUvg\6*(AyWއm)27jE9om[9)@9ƪGCј;? CA]pmFx ÒXr@ c|zrМ`%,R]L/r};ÓuCN47 X]}nZ%;G_Ee.{ny7+βy~zoqg4FA6|8rh"2AW.:2Z&=t5(?E%K-wx10.brK <*Q69@UA>|mxM:Z*PNG*1)f[0\hBM?͉v"gqǸRg_XQJ|VB2=Me%eeEZRF$bwwm|Tlg_܄ LmȾi4jS^ܤ4*ٲKj$hYў3U|d{v9NiL(RL8b\}S\MY𹯨r֖'$5 V7.MorT;7L[F!C*0kZn! 33u尖DF w9,FwkGpDӸzA &EA1_s'rm=5icMVly%AY.!4;4 l28ۋf)'>[a-}oU_`MGJ+sf(,7(٫g‡yxs=`B"~+@S%t2L4 C_)s}@(GߝEA^L:(I8)}E?̂H6Nv;_vMa=`'p'п<$ᒰEz s.x\۸VD cbrS$cw 7UO4˻{"_ͣVJ#F6E\Ot~i{'7]G}#;Fu% 0YVʵa/y~c EM7v'%?֯l"9Ӂ" Db&kC?RA?`hiɣU\\ӽI2B)QwqyakrwHRA#~7"rEqhni!8iY$8l=BI/%K7Ȕ&$:j9\kg>Geni#/!PbPB?%c/9Cs`GmMqjۓ9' bU2%.4!7Fp tYYr[rxZvZ .G[[4㣋Eb"۲ȋ 79LACY}JɅcqszZ=Iᄐœb-6J^Zu֍o\ᲵڌHF7@Kv91\ żzGXW,C?fǡKMz ,p)ԯ'l[:+ -'ȵjao^qr.,QW#Am? >k.2Q[$=ZN](ZДrE؞[n(}wtw#"ߖ x4fk$E6s187έL =l{_nCd5m_vc;gqSR_/u ±c,@7 yhj8W&T2.Y8aJ R/ F//Ziᡥaы~՞Һ1g`8rAm}{e~mlj# JȰN{d6 NolW]a}j+0M*3*nZFo6Mk_v$a4%9g*g''#՞@ȵ#d$B VU?5*GVz >Y4󙟋!i6כ\УGez[:T񼔋l4.; QRb(f$ 9JtC,S܌ͫ&aE7F /y,=36i_ mjVyC~5rnOdT^#NRT٩N]'wRDV/^(weǻL6q,d@D%Kj٢9 QFU{}LaA ɠr#8$,ebӹ6⪼%fq(xr=w޶ڈ8 W~>ZcnAG!9,/cۆ3>kФ7Y ix5Ȉhy8!zױW6AH@UL8n$$v]H%˱ꪹuTVҏSH-#^|#^AGD#JH:RqאO1 TLIa(ڧMrKpuѲ_XXq\>4l Rjv72V(T4&mԠ/xӂ[Uųu! r`y0\?=/ /F:讒 _vmB@H[C.[d|\> kfoOq8?Rߟ6 fʎӀ۸ڛZ: NNrsdt ;B j9c$9ob]5XBå4 !? \zՌ&F_Qߝj7)Wpm~ (&9|$|Sz ~M>Xx|a 1˃%+c GIfmXq?z&[(S_֗,]9ToVdhИdؚ&V_܃rU SgK|0 ٬dY_'NBI ozFY\M7x>mm fg\,R+ӥ`e.e_2DE[o=ڪV(g|]+5$6uPQKnjϽ7P>n6# +}`e%u%YcI-N rq8+~LN[=ywuрbraQfOFƗ5;1 C8?oPO-UO0c7!Q[X$jh'יw۲8ا'l`?.YFp/Qk LNF#㖙s8<xx}RX;ELD-z&WuiZ4]JwAjҾ^^ #H2H<吠O؋xC?wϗbQÛŒ'e #.їbI`R9﷎ q]a8L'#LxWv\i˜ma ŋlpLJI:EO{7lULD"^"IQ!ܢӵg^T\y6]>*N8ε۔sy c>eoM6a-0> kv+e=.:OG<ׂ< #:&a^`!96Vi(sB[-Llbk[*+'@|m)Q3amJP4rne_ӔLujba35te W綺CW4ˤnrBѕ%|efT5Zr#HoΆ)ݑ<ں0*E[ÆQR~_<^\1Su7k@ /D HVcX]9wr8럾 .>%lť\X ~}s ~ r"Ae-gGPtMkMGcz=!lRm|ϴ$6& mh[ps@OWiNXiXP)lbHF:4nh\T'ݸɯ6_FΣ4cf^ypRZTt<+U̅/^9Rsm'>~ h]_*Sҷ\q ~=B Q~F7MVM!W@"Zm)Prl~26أKfYg0y\)pW* y͂yQhkAҵazgK߃ium$` C] 2QBN1̟׺-3tcj҆Mb:Eڳ "pnl!q; yV ? VF|笨5|0 Fy\Vm oz?Z S(YbIHs"(q]2#)qPomIO5G hlU Yo$,W^_{N'8ɶ\Yg|}uN|KRDbJ?!d g"K!6YյWwo&SXxa8Qǿ $c6V &rc̋avQ.o(MMN)5p&ʼnx|G9~M*bmlcl30XGѴ:x ϑ$wg_mpp=/-fZɔ$P8_`LWH:XS!]JH._.x@;.r#ewy2MS@Sj!Ͽ=onw|_bU0!&\d&AgŚv~~o0ix;b: +i7r8O"ngRw5zs VJ҅k"(Ƞ*j] -ms8~wU]bnԙRYw;MwV#tAf u$”{' XSCG+D֞1ޝrn+^Q (XC> ܧN siA)Bں(FHDPYef~3CRao'01 Z|/d6 ! e -N1i㚐=c7x߶Tn}A !Q{%n?y]sa7Y(j?W愜Ɏ5 eo5h`{Oy7W6*ІqrvgBu`i4VҍITo50H&]G᚛N\f6\8TBH~ '@E!"eTzTmY@+YoDϿi:ٛ8]2q0{D(uG (Xہ'(8M&P$u^Ϭmu/$h8]c m7#| RB"6u~B0Fh<8}=NO]c]P ܻ w9|-r/{Zn,hm}Bh>Z8s`K:pugi/௰YRRG$<I4+ȇKj D mk05S̽29g |Hèra=~ć&yW^ъe >ֶy[dh +p[GZlYUZzuW, ?= qSb?[I) }cC* e-EALGmYٰu/X󂖫:X: 7vMBZ/דFp0-Qlab(CK`'COWowKFq#;:5z+յ>/n w6&H&yWS tTrs/|v`$(:wS.$8vlY_VK G#j1D(+,FnM_Δo)b=`ewǭx1>,|9B4EGkSx缿Z62AeQs};ūcjNhektu+?bo([< ߤ.߈%1zY>rz٢9~2Cm%z_$Nl? ~~[;ѰZ MAi㒻&o*+fkڛMn+}A`(+mMsyӰ!q} f/[[X- 日\JI*c /=+|M)q}P3 |v6uTӵ6KGwo.}jnLY9[(| m|>o%oI$!NƢǝ`\ \L40*nh-( yWGa+L[L[a% Q{DmY/J~]؟ VzdgQ6{jK/!ݸenU(UwbBh4B8Bv,;5}BJ*A%FS%1c2̞mCC&Rq;җ|'ͪftP&u"c:b@9Fr%.:(]< ai"+O>j7{tףK O.V9 }V)~PŵujKkPI1o",p`N =,%l0Q;楊~tS1ͣD҆˄{"oltݜ h^tn:GLh;?!Ywu8b7rcU$C` cbIce\f1Hf9bEݞ6{Tu$C*k )uy@7nvZ4se0IJ-|Ex /]FTW9g58>INӊF5WS dnBFnѬN 7*6m.(0!*,=<$F|Mej䦼pv~ĸ3Bj ׯ$y}H<2y4ky Vʴr 1\R57sֆ{"4;iVxѥgbMHT{SD[6^/RzczvtTF%0USi9}p}Hǩpnm[UdXȈggPh˙o=I3Eȭ?&j30BX+Kgg ta(d1 ö{>YYJ~ Q1a&V]㳊G{~5?0DNv${86sa/(P@V)" ܰg+sAG&߷lG#W[;e{up]btșD{$肟˵ x[Wfx7HU %k"CNCGWHP`,\{4 Seqjm czJ՚MuBlxs%_tmZ+DcIwϐF'~BR-VN+Թ0N~}9łRi*$ 2.0XXc6׍ 0)uy|ѹI:lHUNH;5>&9M٭d#L'sOd|gݬa]=ʦr tiG-5S0'nlِ#eY$ C`ǒ]bJ"(mF氱U0:v& ʎviFv%<۲p)8|VC>ncKVrxٱPwmPN>iR'Qe }TMB&qM$pEgͿ[dH]Chc3gNKPs –V0'%em-oHv|^篶 5}nK^N[j/ze O~!~ݛ;˝9QvzowjC\7W-L94+Ms$jhL{kcE:~,k?)W#4L:4^8ʇ]n3J8N@}1wzdJ)(z,P K(cֻ\P[r P.}%h'C~wu['gY3C>n͇?a:&3ZjY5>6T}cK5x{G-m1mAC[149&}`Si 7[ t@iv"TZP(aY_tLjZ uj$9 ~IpSr'JIG]GUb^kLhMn>=lVR6;w jFVzs 9XmZ AI.hC$g^\\G$ڨ:@g5p`1#}\7 XL[T&3IɈ*[7:pqBa/^blƍxY孺*{ 3n=RL@drBGRy$SE&KB:F&ЭRPr }$?qpYYi9L}XD]?"uo-ZʖVj" x#-۠M:ݷX 2{ZCYNo3[O;'fŃ]?+F3ʦqfL1$UGt" gE;Ieݙ=3'Ը{KVoZF"F4Ҡ 5"?ˌL]s`O ^]}x `*h~ ^ ܱ҃Qs \JhHUXGz)'!Qc yOЬDbPAҴH]r ҂QaR%<&؁ x8s05تHe-'ue5B{xL'.)%"t,+;kAM )4t+m53]$p׸MdxެLC@ڡ^9}D>(iQikcɆʳxy{Og,g.^;!h>fPd~f;U7lveOΡHBLstq?9V@6 Q+JY_`i%Hqv4R *[̃s[珑,:` 6{Jڐ޷O kdÍp<8Dr۹ #е 2#*}KCfk66TN?r'vmM8Q bѺkCqa2 7 idSVRv׊/\J:'q(,kZ%ԋ*Uj;NhESa_ųz aͣt$"R_yB 6K7ڟnݐNV֕e'TUsFd֐Z#+^p Va 6vxqǴrAW@n''#eG (/AԪh06E{cjՎVtrN<Ų7x&IJ$d+q -$=Zr2و =O[BƅGh-hҢ~SGU=b|}Y1z"u [4Ó6"#(G`̫G.i3()(HN*eƷW@ \Ԃ(sனs ^Gd/wd;P>5;(g>CCs}eC%,\!&Zi %Ui`JERPsÒoشr2ӡ\]v-Z)ݲCu"J}t>iF!gѶ|kޠ\- xEՊ\K{ &s.:c~9Au GW6ڏ"r Uٸ\BLc]%{~â ~ʞUTB~i+h\H#Zm䱀 , J^%3q!ewe%mQK(ޠG7:E]l0ey=v,5 O UbU#NϒHpvv݆LhH2Yc2܈S@㤟Ik<T˴BNefPpS!_!j:G?x;<9D*urSK''볲jsf҅l ԘA%0{^ڐؖq_i(qZ˻ړO娥?2[l#5/uֹ3Pq\Wl׈A`e j=~e2ZyN^G3jWc!h77@/eBz1sIbpcbD3ƥ S#m^8dQ.#\#enzc0,Z&<*@(˛dXO|bUuۘEpj&$ʴ8 zG{ke\Zۢ#"o'?^R\h N5bqzv\T5w 5tq%gG:!~AL1rv?.`(svxKӛ/ْԵrW Uid例YQF"?d§:A>>{,?\$QE7xic_vp`YʳZ&Uᎇk`t{ )14 ǃIcо_A&3GBxZ_m+|#'8BPh2lj{]m&/RR 0NSMk|P(Wh>aNҵIܵBrZ}Jyjc{,ON) %%%xag[*|m1m6Bߨয়Jf/ށ8HI9][ۊaRgN);t=6 qP*>@IDءtw0m'qHD:3Pl=t u[Һ#Sea -tPyEI928Քͫ?S jWݮ)iB#'dM" gOY7,/ѽdUo'͊*[p3QPUW^2Ko- 5؛Z}zڒPWmGRհc*i% -N[J0#D}?QgwVbSĩ4:A4Z)`pXk#<@fXWj&'A,Nǩyk:69QuI%\gЯ59}䦎 1ڥ2*=H`%gi_^`%VpML*aHPKR<БLC|8B|-خo4E]Ḭi1bGXYA mDƒZXTኚ(#=2sÓSӆ@sıT.7{xW;&>09Zb+ @K/cB_Rאƪ&y[l]iqBeTr_WWP~,*;R2Iqs7g֌?eef?^ G;Ӗ!J[>5GP+)-66~|N "<%Xo <^ЀNI`R}>H..LEe&)zoTp~C 'Ytl kG<^\6i 鸲)%$L uSf+B'+OU4-Q˯(h/8_l·P"6%FC\09N^lWs8Πۚ{S iy 3PF<[]>z^p93whr::}P**ߣXixrCfluKWx>. :;MET\><,*W3^N $Wkyae8gkܛvE\HZt6r}*I:F/ҩ0tόþYOI!TcBhYgYdK|O…8&|c64Lp3Gn.  2TϐG èU Ѻ:Bc^Skܚ"9$gf:\QR9x.א+Y_,=RQH#f>ɿ(E7~:xbc7X`VJf53 S}zzD+tf`9eh6f_}n?ڱ5U_d-%d.u׋d9o?iev.Q `E)y([k<[ 8|sP:sTnr.\#| F`=z$zXxT%3"qL!(vS3(;yvly$^n͈G+!zmlIcxs{oyQׁN-ZIg1X  FK1 5yjooTAtQ3ͷgh4҂2jU- :6ge>[T.ѧŃÃҏ._iʣ/pvmy=n=/ۇ:!M^OCѭ]&J5a ,Da9E <)%޻)<~na@foF &`n0U <^?I_bqx?O 09,nr 4ZZA ڽޞmCsjmI:MT|kSIC/d@Oˌjo=HЇ ?Q _s{3ne m Ok #הu[g#Y)F/H/v@2#2r%DL=Y~;\e4[dgi\Lg++Dtg2ܱ,=BD-;O'% HBʏK9<ɾ&LdSo0Ӥzn~t0#"e(MRi74'SA辚H?5k5[.tδmɉd#ͬz=I1WԆ lRTJ9һfC9D=6*%ñg -evJ!] ֌d9qFM!㿲%":P{[e1ymҊ|N{NE}vHެ؟" 9Cv~'rH tGpM<ߵaK ,᭲mp~ gᝥ*kbSsJzռ'_i7:Mhq½ F .}H#?XMYAlmiub6(Jm+uY;KƱe~ y"yA\R U 6A}ɎdihChfn]E 5 Fޅzf^7ӳ|A%oEQIEoM.z,G4ú$e._ TV~1-,9(%UbvffvH('et662zFq5Q$UVO");ZCi|Mp(DhrɳD_Տd0^T%5X]65PKȎ9v{ť!l \#1<ʣ,e#,1lY(.yE!>_һ 03lth3/[<ilT}=đ!݁O Ct̚3XsFVGd8ɇr6@,ybcB5 Y:9^@,vW {6BڜQ:|g Ce-myCxMhF)=DvH=OM 8GSGGIxf01 ?=x"5LqQXT ӥkb6GN4 P@҇.!4-\šAb=7K+Mq}AlQo >'!m 4ADl/7"6)d60`E"[0ldvtǩ~UšŮvb47ho1rEmƻ>p;h ]-K\2gnş<'kƭ^8sN/ua%@P劖aFǎC8u5~撸#e(b z2a .,0qg`!m`d2Pd_M nݚ='_i< } o~ "zf>BJc;##tA1#4g* _[ٲ1*,tEc߬ٿD'&um Ө^X(Mkw"rreRD&(7̍󿅀.Q9͊rL =|5{}`ܤ) {Ll)'Į;\}S8)5I2$+_->k|T:INfmsl.h3/AT:˱.z7%d+B)U#mP&uLc}07YH_Wso#wx, 5>b/>-\kdV+b4I*櫂3n;[jYeQGYR6Zr"SOe8ڙu\xM@ezYq8;)I.$ ص'uLquPXV* A"q(>1-43ZPn[~# G"3< agՐe؅&QQmK8&cXK=oL%i&=o0uov>!~71f=%>Kf M%f}P b4;fp@+3;!tm[F߾h?ߋ6e1JbtL,j4A$v vB剖2xga@(V|{/'{׃zsQ{CpWxA(:āJaLV~a*j 5Huq:ZjG.jxX@D;ÓLkՒ/OD硪 FnTApt9th}J""R 6`bPPbv ϩҬy*Rgl.dxLK94FwFlLй`:8֦֓ɣ \} d ⤣QYVoj,6U#yϻ?ɬwW &I)E8oCf b[GZy"p]:@Xb4ET5hFPs!ILvJɵ0+դ8ވlٟl :JWCJ 9VLa|3Iv*kZ-|gn邿毰< q쯑{%}&EWzOvJj As5dái! |\VA+}۳ Y)΁qZM,p&8\j:j.R`5C !+'bzә)enxtrjn ,,+Sݭ Sod@rr`ɜhG âZ E\.h>zðn땨 ,kcF۰-unZ"r+ ].4nhBOmiglʣ:)z{n(o P1xrv\U&N!+&vXn:PCIV0Ny95a 8} ͿnᆤĚlZ25='ss0Wr6xo+2JHE!?׉p5 ]e=K)2odw##+V]:TOޭ]~i:}D$!VQ&).=!+ݲhլRڹ̴Z@F0Haט"Ē\)jd/S,Pw1dKl5JCfR̚NxYG,c/*uL,J~4K(w[9j=w鹃ˌ\-늽:'+up$kUVeYfJXz֡x U4*j3hi*[xgBO2&yP3*+q8 Mp1A3EOTGZǩ|D4@o]&nokXYN0b"&Փ4SP]|l2n~ͿH=jX B (7<{堣)r(ŊBzO,xҎ4( x]6{5)=۫/op A ;byf :fW!B31i*, 9ލ "]v_YH-w~MxPHb:"=㍷Dٽ$xW6jVE<.I6dA]lNk"BaڇGqrxe1j:.lv)jQ>N~$ʩ4p0qk@Ru߈o ۰Kl+Kw'0ם% & {X'ճS7 RTRzs lYxO?$ *O4fE|3@4/LJqc=)8 CY5cah6&p" ;L$l~OT˫ J%j?kqP{mȒtZ*{ NNG8*K_C,Z}9S|}#85C(s2o.# %`{TɆ9 4LH.@Z@ɠƳ(jV>.CQh SU'|Uz`<ey.V8P6' uE~j5zTu0T5(BV|R 1྽£1;04yN/6j&G瀞+8e /ٱǴEMcjRCLQ a[+cj ?3"_س۪]:L$~taLyJ)m'ɥkmOʴ,'6=Hko)&rG,-# :?g.@ !t+uM򴰘/Њ%Z~ǧXSx[\}uëOi0SQ}{xsa R=)PN{^:Mz}G5N;hdZeEط`6$AoVKu'=Ƣΰl. 9%۰ReK8 kG9_j%-좂3(,'s TIq`5oaBy3 S\ms%Cg›|F iG$̤>1݃F_" Ax6ۉ`^Ԑ? Y5#‹JX&ɴTXS7 v|MU`<ȑ퀦q4^!DL*{f7.L_Ҭݮu'#=E!ye'SB6Q-YIϙz4TFVIţ׮}7TbַNZ?Vvb"[[;>+;=2b.oVwvَΦ-[h8)5#6W n{ ,*x*NB3r_exq״B GjekFxf}\#^1݌V/`883Rv.'bIyL!`l_\}4{ZȲnN8mQdGx4ʥ)x! 8 r+G{phxBK}~[;h\@!P[سG"9Ḱ4lkW52¬ᝌԈ3m$wӿ{'4̲[Ŗsq%h&h7E\^AIÕdД,z^Q  fڸEgbX A>19۸ٯ86Bͦ4X#bPH~ꁕ,QήQ06Fj*\9R23)&nlHeeDv{s&#\ޛ1 7hj!z(0]8~T*eħJ,~yQ,'i%0y\ILQgZ'&Ooc)AyA$Z_F#h[:s͆5m gy;d|.bpu s}:+_ϭzqBvn OUcahu7k՚ߔ0r\_iev3:{xAPć^0twq|݊u^(H3>o¶_++Wksmb+T0[>2lNf[=ɪs\O(ƽYZk'H@y ^#($y:q eq1l%<;"‡A#HܡEGTK!f* Le/.Jtd L7D(8mD_Y 걊Kd"<# |PȏLI(!SeCDd:8*wPU9GXp}?I00w$s0x.ab˃ȩs;D$tF}%3b}T|U^dvsčqp)s:p %cmWq/t&$|(9M+_ \:qIpEY pUMMff.P $h2+ A㝁m;rE7#Ϭrje+\N^ [nQ mMH7BIfPg1w a. r| Bu>F霒SJFkm+Jf3J`wNTkBΞ daқ,iESVɋ(9t>hſ*rDFbcy&WV1pu r~PL+[!Z@uZ.E'v] 4b_+A!>=9rP2tMu 3Jxv v:lXV /fh"!t8%ux>h%dp8/;64WdthP4*x e6c8JECкaäo$2ť%JggQOvsc0.q _~p[A;,2 8ϋc{ C.(ξZﱡGAYl1+j {GDs"TY"^ xm xr-#و.=":LHCA= &}+ &,(G *y<%iBF 7k #!ZHO=Rn)>rLP%"Bi~ŁCd)=iouޢ*0&rӓhD<5nHX`fk~퀙Rm8JXyv ;QPCxr,V̱ϖB3.Պ]Za@/q5T4R9B#DS'?|eF/?i.4]{On>ɇ BD1t1Kn1Ԛ\LܣLe$-Qwoq<T;: Oă O*fpEˬ4Ϟ5b[՛Q䕎َ]LY4^F6t"=~aFo@*o5;#PcO/Bbm[э ,II i5D JKIy) Y-\X]8HTl 7Zx |(cfA¥,7 D}W܄)l(%Cyi{. f%"kptce"w,BnAZxcר!⟏!, eaϨk>^z ϙqKu>$`?^I\27X`ef^i85V[4`=خq']bJJcpQOٸ,,9q;)GʼnAIO@Vt^>}M=^ -h*(1hf 5VEznig\'5uB0˶%3$C(tFyyl][PLsj~=o&Ҧݔ=Q\ݤ: Q Zc/5f;H:kiB .%j % NȅM ?$U>Y杖+}mY&'o5Ma{Gkmf\S=FcjR6EҠVN!c(ɒN`'H8)5BZ1G[h3S+$0qE$𽂺)ۏ5Ϸi֞ߝ"Z>"kѼ!qȗ(}Z@ A( ?wvcXg#)'FE(Oٵ +OYtYSzG+IgJ|Rʂv|*\'D ,qS<jMQ Nem,a~Պ rB2U˫ID&by p5ku5ւ5E)XC*oz:4ηW!R߬.)& lj"a q2Bx?W`Ha,' B ƊQF/ *|z3!ѝoÙh(8@%)t382ԅJ{%eu/W/Z/e Fk8>dܱ!j,~7DEB*IFS32wmtA'?UrC@>qeDZ!F5ZHB侵izw\:X䶌:$ӍBåf=XcH*0Z: jT2  TtzN ܂)Rĺ,+Kf!ߠ3l O`]BsY:DNE Z˭98g2 | n ʹ!yqMɺ'Ր0hKd6xmVgEVFv2pUlZ6daUV LljWI~E|*O;># ^~?ګ{I, kNQOx\;@N8jGR ($k۷"$iRIY {lx@ 4;ٝW $3g] :dyЁ u3^vZ ôڨ*QdRQY),r<&,O@4)dp [{d5pD- Iz1u1䝦nڥ9MQ  0( s;Y@4$ l8R_^ ֐ '%9`^^lIwy.?4g.R paŸϜg u6sWh0kYܮ BB̥r:J\OMh\NDm#]`M1ԣײSd O^-A{4OqU8&K9yxLAK;h]+6#^Xx!Óܫ9$AXlwÂJPD4z`لm&,a*SQ  ߶苞!m>Yw8S SL  #閘Y aO!l!O&re"~użoڮsAe6/ckaqeLpLud-8ډo Wwp}m9}+,F)]w%F7gqoeY`qՑ^X [γYd#y[ S^& Χ# {626H@͹CRd{ n<Svl@|i6I!mRwU9BG ,seD)pJi!cڗ6 GbJRg0aPT}dAr7:C?i[֠- T8uZ&t~b|Mp@Y8[cѩz|z|6J\/|uvЖqeYToSۭc&r H)5 ${9c_I}< M7ҽ\/=Rz{Er򼯴 <׺A<%hy(p,E? p׆QgA&QSuze0нq;k%Q04`c]&={*Zz*4[lJo\Y1s PK&jC89yTgƜ"#|)S($L&o}ejvL$:0I=n!,ndpwC7-4U -AH] _ڷ<{P˶M\̳Dܔp%Fk%ʢ\!quzgx[ɑ&ʥ?Pi^;HݼJ-XaMUpmr4#Oϱs ר Fx!vȃuPxQu[yFʕL )ۍj5ʓ^B]TոIS%GճwH@zDBW Tx5T AvPpb/™$/:7;uJw48t`M@/a>Ĭ9V?~V%RXG&&"K\W`@؎9*t Q ao59{mrG &U4# SuƸRmfR,ɖ~B盙Tg Hk}wOvg˂"r.MZY4 }oA)݃m[\Nb00w|GBJ ϼx z»jI֦Q1_0 bAgz?r!9BRqqU^$M#~Uxm.kkVqrKº#<$D2Q=T3Mثl0IĮFgqN q?N"}Q9Z` h?Wж)ysU 0+x˻~/jwx)]hb5b1.|agU>sptaQJX;җ0#%rtBIh,yQ>Be茵D{g?Qv7gBs}8h'G(j8V =Ed.ۃ;zbxI{HKZϯ苚G3P>wZG3=wSY̊;9ȖU>TCb1a(pzEsvaItZOTg|&r#1u8&iȘQ\(_,r6OrǒID2x\tkHj 40k3Ε4g")MEK߰Ok0f}R'/ ^kguxԕ; :K~p0(M|lpF+8XN2Af\c5\# yzJV B>c{"/Y8MoxVϾl.aU -EꐼhWzYԶXXr S#?P rJká=i_sc|#T ǭ5kPZ+OϞRDhD8]ïbu%np YCQ)EH_ⴈTR=(#KwveU%bf?tDVQ>q5x^nRj4fQA"xEe<t)9Ǭ?Ѱ@Nv2ĸk~׆IR5zf$`bA/Ӷ=_Glc4ns `:E:VtWøq1 k`@M> mR`ؑʓ"5qa¢s"m6EFc,[owy&䳞^XQW0_}dmL5XrC!-iG-+hwrZ~)E~z[:K_inH[GE+܆s 8c\"N/fxSS1?\wMԜ~u9]WtY;߉oDd+3S`(>l>z0֐f6~tՑn)5Ҙc#Q\>A//>ǣI\U\2JU~*P)A>gJ/3 >thM,7:20R s&ym/d!tlc&Y#3V`SUܨj(D;)Ǭ{cGI{#1@d{FQO6E8d)v"ayہ8N`B-[)gɪ͗E 3d0JK%yM谗g>9Nyl{FF_ >J5*V=[mH+Bc~Ԯs1A+mF-g]F8fx&uwI[gsoK]4QiܻW\QHJFڿ=`R/PH'FȝE 81D0Q#b|B)櫡iLi*31EaG#o(S.qr>ќ)"?x^hlx_9Sros%aZJzĊ3yZ\- ;d%qEob c]9u)MHBǯGzptmYϚN-U BM)}8HѨG5k"{WJ^ auY(qڗjZPCvstVnT5Q}6le"ڽxUf8tLebj]%^9 qBwjÊI+%@ .\Am7/9 0)I*(& e#4=8#A[&wٺ -? ފ!cʺjs_]s {!펾wfZv$Cȭqbϙ_0׼iLFxtH >@0kg'Z`aPSA 1*n]2*fOgLOd>KvdfNiksL̯+G)pS|o o}u7$KG.USMofN)~ӄ NO]j&~ڌNP" O+8{V/$I~Q$~Lb3*?]B[c{k3Vu]0Mbman-lMQqlF͸ԛ`q)|Đ8뒞N.uAx䄃tKsb(%Rb5]e*5S b6.?Yw ,.\܋T:Lm+#M74HG#1y̚`DB#2[N+sy|ȷTU^j4=fy@{]le 't-5uM`7lCCh4ˤ0̀Gw.-]mQ@Cը'n{aUft`zwygP_]]K VN8)fZ d  ~4vMs:CWz0Jk H(ˆ\]j93uUr[3gEau'/FnBT^l3Eh'!Fa!j`l- Mg$89A4J<2F/<׹ozt.?⟨!ۡ?- B،x#̫')PfBC'?Rݨha\cnH=?׉j^ *΁[?0S"!eiJB9TfoT I+I|fdi2b(kVFR=HS_ԍM^ 7}Y x- HP!>5&`ibHy= {]ToȀ{#~ݍ~}Yj?N8=6\A>zƙ,;Ipl ydZXݭ7F? @4Iu&T.FGnZlsvkXa2Pun0HWNP Y{'S. (%E*cF άS(#5g^]ut-8Psr#UdBGwPY 3P8zwB?|W֣3V ;)ɲG$\ [H։Ix ^@ZFJuҟE-wLRE2}VH"*hx} ֽ r21Hd0b@ؕA)Sb"(SHkRG2{9q/n&HLFc5"~iд˶ixVL1bEh"r0 ^ׇ+nXʤ/&/XvsRB@f;H%`A vPx2a@OH^J9{EԧK~p+ @ ѩoLo*'ݜuO7y TY뻘T1Jc9|z_Hlg'6Iub-ue)]Ɠ7W6: 7uRj%?NsISNB|}m7J+^hj h j4cߑhܪ.aHPPVǙ#jہX&C03y:+'z2{H3+_t+`~! w]X1=ݹA>8&vfU'BxOv#7.S̤5 |Mɟbbv30?j+?+~dB[/c9K]\*˯o*#LD9W+N~((׋\LV]4ZHr1YRxZ0V`pVaGƍX|DoUwV\QhG$f&E%q$Z,0)#̵B@xU ==8$ MQh# /xIK0;MI 1RN&∧#cz $p,6UnK!)y49 TtBhh!hڌK0`pt?GUuu+Gb=eےmӂR@2|%6<řa9ԈAĉyDq?H,e~ f:jf%a7ކK\_99-Xh*5GagjG}!u)+^Ċ"xԄ>]թC'cw:ثH!:oTlν@}"D.cqӮB[BNr?)!^ʨؤ ~M$tcz-uhF딎<,s~rv0tJou-tVv`oEAG21j Xx=s4'3(.Q˚8΀%Yެ3!phjl!UDmߚUʓ1u%;&zA̬v=w8+ʟD7>%rbMLhA0Q&@wmȕ WD025_h{Q$i9k;q- 2F7uhnu*-~ڨ /ˣ=ɕ˟HA-7RpEdkw' BR^[=^WB[(!03/3Q,53tEQ 䕏4#tXG[Hؖ4/_;PJ8+7!!u0:#I]o8u@|gZGplVyI,|we"M3aF㉛L϶[,CTӒ V+dBǑ,˗"uOXAB(/x.l>8Yh݂D|$ɈQ|l=^hv¿jjdX$Sn:1*"Q|zK?թC;6yS?a5v#54]!M䰗yp5>D1*3mBPSdbZeԾxA=UdOY]}}5@.-bp^v"tknw$rw2fKn+άKnyVP%ȸ3<?Y e,Ԗ9BcVfaM+-MYdP.kOY( Eka{qub8ֿK{漦kS5jA5Xe܇T-!g%f$' VjzoS$#.sr%ux=mXȄ#풔(s":AS d\|*ҋwBf3ԭ+rĕ*QRɭ.}e]^t;1Fzg}kBf]R-ȶYV#SqMKy~,~bcP=<H,)69_-c.3? lY4y: BBqщ  ha޻Lnm2~j'5a Zaވ+=\B^>͑`sdKթnW$[~4îŖl쒠KYvQz'we|JcZF͆#qʫ˟p#:Y1"-g9)iY* *L+VfjT&D0K@JcI^<^,~Z:N.aلz+]&԰u}eA{;Z:b0'eɄ{-1+g-C \hm$GCd] Y<.8[c&Fݏ]"V󷃿jVh N6v$PUU/g]BCUߖ&ý~TFWfkAXl$3F3#lrKh+^gJi=?QuT1ed&Y5F2>Bd7;u,f,'f+#'s `DtӮp) "*27Dݮ3CI~86;7T%߈Z=IV\S{63!f&ouҋKNk=w_ Zex>GS82( [ÕYga2u37 œ.ʚtŝ_Ée2KO7Cp.BN9j2d 6edCЖ-eWSW@zb^^L J!NrgAV +d ZJc@sp'LE q0ɵI+.%)OQy8N`Id}O(.lo>5Xu{ḫfm,8vqQ0gңq/ =_~&Vn @ݥ詝NC.^^.ҸYX\>5F3DlCIڴ^ ~&l>[J `Z vtCTsj́$|&Τ,LS'HAQ|Y :UB%ѕhIsn!N]a)F25 g.P&W^ŁzB]3q:V۲w'҈qs"L'$4fz E!I%[^2^*QF\{CE`'yzo~f*<NΛce@';g!a'7iQݵHZ?D/~SԻyR;̷Q>rb$şEwi@0gkZi_O\NTجV 5/'~̬)YƦ}7 kyDmS dz7j@0$ VX-yA9&zd<*sQF,b恏iWK,~y)#aNHcrv3& )yEÒAWEqR NUֹ~b( ,(pTr_O^T||:ׇ _]-nU$5wR2?*Uov2pQOH7#r <*<&{t3b`{(Xy7t' Oh0 E Td[k"-w.'1~e^ruLR,HK=LR$Ŕni2%x7>d鶊m뻴+ Ok3|/GV:G8So51إ}Σ$?J6I$#6#g;+먪j^SB SHgLw] #kXzK20!j~B٩5m/H}IgK]f5uoʕ~%-$^I_NV?ڏ0SխUd.JD_M{W̨xP++Q:_beajLgSWR.Uw_5+yڙkd'\~I;\%aY/)d]<z8mr1JXZ7gK`i@ZPS46Ņkp}:dH&PеֆW\ x/^=hia) "EQJO>r.e?wl>r ޷HFt}Mx_/K߿*˲aYktFg a27Paޮi֣ :5D`brIגd@AEwƓwB l+ ]j_6nR,ԏ In2%GTyo;wh[ט="sU` %g%;vW6]j4g#YkpԞ^ IA_zݣc_ss  ٮH)Q)`"Ct{2; 鴐~)._S!$#,䘽GՅ'⓳U 6၉cQ,$%Y?h[շFNrXl.⃠NK7տCN$~G ~l4wZM:O?iq#V "$Z3r9۟,e^D<$D~ 4(:Pq)ROb !Gie'Ke??h'%p+KB٣GO{^/_;+wNd8@ZSozlƦd} $J+W<uchHT- h /6ޯ:AҎ>~Mhۖ.=Gb-m%S;^˴CT1MlS4Vof<]O?⑙޵-?/2虝T`0x psg;V]]ƖO`[Z%8VޜTKoVǃ[rdc2N &l=Q(P&uU$k!t:9WZz F.<ۿ/m(O)}B4 _N&2>slGEe~poZt\aӱY.>/D3ُm.2Ci(y}qÅrGk_U w SIt4ET u2ߘZ)UXM XvX)w3@][{؉4Pۡ7<{b %aFT(/-B˽Z.w JC Lw}b4iᯣAQע/5X'LFN2'OiUj"97, )w]yR,dSwqIZ"")FynkXQLbڪHAPC(N3&>)9 O~6D' * X2AăU޸6&@#oo{y׶p>?c[!/ 4_&} C9jMl=\-^='(S|ʖ4lMc<#mtI[fҲX8ou'ǔ#Nw0TgݔD*ay%[C >牀ưR*򊰡pż%op-\Ls1DvXv}aV-*BX0Sf7owA{ >u9Shd&1Rfe^]=]mR QVÂm8ψX >ѽhmbAj):LIKu?p%QT Vlv5d.V7"N\KUP5gQnX*ZoFY ɦMz$N0_;d; &ױފߋd;)LڐI !Rߥ~ _ P(?Tbb6Tq lYcĽ3} nL eE T.IC4Z&O(==d뚢Ja`*'Djxlua)9v 꺈Sؠio[ak{S䕆.E%AE+ŋЧI&> 3R:yiK}v 4˨d%XcNONYZM3zASqr#7X*Im͡݋yDT =Di֓ReRvɎbS@sn/;'}YS|hPW26hk `;mG.ýt _6g!t5h`{!=柾?ՖA]FBbQCgƎW>BiSJcg^'fv}&p7s y}f ǿ=c2dVv*.$Dx6UЕ*49 F>6I.Bu]L(f1N@H*PXxA![ 59PqXێ!\tTvRf&l]it.kk  gRM/eas%AI#&ڏ @!n 6 4H{C0ͫ'In;j݆>7F@ [9p Dr =eh9_6-ISŤW܌t:@Aꕼ<ls?y,TUpX%޻7qdêk6o!$hsmaSȁaRS?O[ˉ7~W(8sFC,':xt$7]{xpk7.fEiKg_ [0Aa )'X0%j {D2$K2 {Oޅ&K4:vp/\"6x`z3kB L3`YgkM0zq07ax ޣa5OVmJLUu8:* r#@$61,dDǘ&~&׶-m\o{0s⊊l"b'X} U(<A ^r#-Ngfo#T0j?S$ $f<iAZJe0=V|Vvt3I[$LZlY~(x* {1*\(o<: EzR5 v_9TºHJ xDF$΅(=%3wfg4)O D0/? @'|/׈9=qjhc:v>ǶJ$PtLJ)sq$@j&585[uay; Ta-cnRV 6T;m>#y/}Ak( :b5H3FLg{k)Ψ`cJQ K$t['N>3 kGʹ;qGutCF̉Ӷ?+_Mc3wIpFJ8M`7{<<= -} $:]/DPp2ŭej,XkßHY۰mnԬ=[=؆} $Bv* bpRB߱fpV#n3EJ3H+z[Z n^ˋM~`1]H"1"|x^H3 jX!}Uw g`%p+ e.Ö*z"%%ҢLQYP$Ff[¨Eͫm cϲ}:?%y,[f \Ӵzi@RW( PdvJ J ߸D-J`IlJ 1ݕl]`yGq6z11Q8U9v Ts%:/Ƭ[TAۑt5$b{Ժ||Fi2~ Dܲ+stք.!lF΅Bw¬A7Kڈt=+DVѨ)FrF^HØ vP1FW(# /$$5z|߲ib W\KV8(F )K}9Y⹣uUjc j!0:@'BpxxWQX\8&d[4Cf?ƾi+osw@YqޚTFJk&O^AC20#*n?sQ(7ͳ(zέC~f/z+^jRx6(:YAr=8{n+[54FmNOY*_}gjޑvQZFFv*Urr$TۿASOQ?9tP7EkN{ WA'\2\5ZaeUo*Y}OՕ1:-SOO}g2g`w{lC& @9X|qbHq&VhiڽuL-W4;1TN=ǒXG(L5xM*O|yv8E~n3ʼ$%-w"L.| ش%-&y E{ v"7e>+c'NQx;Y ؐq<4CSI].{0ňa :v׳S9. `]PH$Kbuik.1G*9=[#]n~D>O5K-RpCT$q< J\!<=u∲&@ SB$Lu~$–)Z чV9s8ŒhFآ\̱2CvA7N ;'D7Ei`i_lwTu:Ϥ%huL(C:9 `)OPs&Kp|A|_uד1s|rX='Ԭ 7[.6 n2BZ @Y(PCQtS"b{:JӮs 7ǻbݚ)2 ˴K +N0'j']s#AV"%Q!2+5֦YIgL 4зHE,TuWjQ"LnˏMO<^xn/R>. w\cwg8,\ C^╒t. lW $V2`,)/sWl[AA2 #,DCH!\5KOu1f%~q+%e!nvmn +4Ok `#vtMad'۸iko._mencqAHwuolBU\(^d_+ΞjY {YQ2 UcJm9+eHCqJ#b@QPl2U#cK~_Z/6= ޺z{/91|d~>dYcp__#K}Ȑ>ՙU_RyCTډ /2 f % Z ̱D#׬tzn;Z 2 nfJφ0"Ƥc#cS0و>7謹8p]r wI,]wqΏ3D$ )\N4bo;xOR}x-"cJ&HeNi} r"kῊ֟F`a'O$y}Ś˿LWh֖(ѺyhL/z*`I>9F fBB?b~*=ߴFpXC`YXH1R,Yl-R Md%MK"]t<|aOh',htQ"i9{g:g(FK?GFJ@8Kx{QHe%) jeUo`Ս^?O1Ϩz?;`fB)^[{b(cq-RO#JO˰8.٤1%H`Ě-ar4ԅc9\KB&"H7YU[MJNQL77$C d~xh*BpװtGd/Np])[J.f͟5%@ÑcEZ˃TRg] '˘ 5x?,<Կ> umQs[B3_R1 %4Y1II.L5%[~b PPlmL_[2t6)/Ic4Ufy]\xn lj)QPvWChSwB# ei&>.ǺnV{`F~̌Y;ȃ2 8V.ȵT盞gnW(k>B2KRS8 r`ʎ6zW,W'%JzD̩6tA}mV]jB_8c盯,_BZ V)"W]7ƂHg.;čUTuL%rG hW[iM";ħ^Rȭa@n}j5I \lZ K?[ l| >rmpbו$~}*kh9@_ٻ7.18ӻ]y:lV ,׀)l:X Czq~LȊsEbi1n?hrWnS хt$e(-拎 #i^Q71]逖]Ghh+rԝⴊ}ņ)em6ADG|=)gckޯ$1HNԜA1 WvP|]&K`Af)NEMP1#h`05žF)%[ $dn!m`:p:@@Ѱ,`_\TfmY7ʜ0B2I|krҰ 3?!z0TZ$a⣡jahγ,mrAmOȳFČgGMOUQ<> 6 ٯRn,L<-4v~Tejo]"Y#ҥO$MTCY јY&,r)z&h)O_,us9+損HPEY z qz XN~j.02&RqU(wdE'ki˖ʿ8FfzK>q˓x!,4OS  n@cCf죌a&|@0fh .Z5[|34WIi,;k|lhf&?zIUvG UUYs~y[LyjVrWsJsCMA ):Ke*@Q+P>" eRW4L8A<L(J4Lq8>9͍f/b!*@[9+ftxPm&Ԭ;2rH1 QtPtl<4zy6=Y)Oje<+L9ꎶ-<ɛcŪb *yV>DzzqgcWϧ[;zMkx8uٹD%T+PB>''э G.Pu-?g ;ˠp&0gUGJzo-:(kDDRyԱ &_ rr}oK2Od9"}CVLf'YN0Hﰕ G۽Og>=s<2~o& 7F"tWCzgLTܬ<ᆌaX`tu{ր (c2h) [n=U<)^;C7@!7f(۩hzR*{&wԁJyҶ|Syݎ}"Qfa@XaJ#m M[9o[Ytl7dW,B 1?¾eV|A$L0v~[7KsjasEĿ+W&UD}eo)6KnuC`J$wL9:f?L<ޣ&I0ۡc2rڭ\ Mzf@җF٣/IZi-ŊȝRB6Ĩ]9S-hx%uSjO10J-<|fpV FEnMB#ojhBȮ=zパYl#lH|t;䪛xWgۍV@>M qTas+?s5sOBHl2mpq^wɯybfR-1mGf|ANfyDqvs YJ ӞA {Vg's"[β S$P^U)X) w"N] +?CA;?&pT(I q.:V@c2>BXt]\YP{@ƘvN0SV442ϊ3yR4p q7aVğ8 Q9ßrBh+N']th>2J3?m^-?Xԏ셿|EY F% %T-a>׃OYq]BK*,)puFKJww8ZSB[ȣD7I+?lxi ~0}dD&NŸ{8o SgPdL|O4FcU*o~n9IINHtjTg .ڐ/>giAHuY p."V]E+jgL pt#:w\`8mͅ'f ɀ"<ћюTa-zLeR?8)GGT~A!+u%$ ?WD)qQW28dwUruvE[SK%VzMZ:7-.z$t?}YAcIB=O!.avp󛭯-QP]8q¿{\f7 @x$d' ʏbVKW422h1J7j>ʛpy-CMY2:p-s;tX%$fR^ݥMfV޻p͓=W Y rRߖ~FnbC &kO}H#RInN1CKc ZI8觡Ii*bOG7F@u5NTPŦ[\R+ >74G:J) Ցn%rēN t$盏q;bqp⒛&idм4FƠn@\h-4yI @T-lnI"/Pn3 'Q]/<ml.g0WlKpг=*GGvN>EFL '#_\ l"b=+`(`N]q?JǕ7)zhsNέ˜bӊǥOiFdLLkR̮K(<2_q/NY}^P XWH>'A s :ȳ ӄEPcDZ^ 9iIpqL=QֽL%x8>C`"U{3pIciNH~ϥY<֊:_oXRͨЎlRҎMtp`YR̮sE.f(i.З% a@4m e-FwwF#0C~Ϻcq#n}+YNv2͢wA~5sZ1VDsh6`(lqbO :L)9]iK7rwX$Hnx%ٷgS gȋ&X[fXxŀzsV^ڞնuݬ[FT CG#U8AyN($M51 n+FZoQsQrʂe2-v .&IyC쁻bI久($tqO̴BnHM>SDzh;tbG0UuJˇ\ A5|W7ڊt_f a&$_N)Ln_=ЈM^֮z-=N F(|Kj+ieg3\0tcAe>JwO9&ǩEr8Y]O6@A|C(vsKjA4aΏ?w#bgChm8ӬƮ +ڼ JBRC:#v|~t/0 JSuN+>tq zCdJ\'lh*0 U"n ;bY E )vySX >=? ɆTEa/d?_s5GxK 7a+ͯ!kӕ :vjĭEHԴ\ Z)nfQx6$clͰfl5٤);'f=ʝn׏se_+4!wx׍0?5 v<ޗZPOpEj[@UT{?.͊+ttLEL=d$^>9-~2^JY{zm8EQبrn 홋Ȅ^(.x d=lmY*UF"U!Nv}u#|hu'f▔ܙnXaڽeZr#a$;$os[&Gm"kk>68BY%&Ua qEj^ZA}>b/b-N(tYX#m!ԓh)ev; ]Bu5QGLbuF[ kOێGAj%auk) @SI9y'a  ^V@VoFm0gZZ}0*ӣ!ѫzFfBZͽ69Oؖ]FR6NSpҫ5'30RB&3{׋+jV9-s0GSTȵng6V>FzKC*LI罿C#Da|ވjiBЙJo Cz-1bǂo?x DRϬUu-yZx?@URp|xVxG+-ώږ>ۀ.w=b^R5g麄|F Zk|B> S^]DeyA/~ŖjU\EcU [Sκ!coߏŎS*hY.I1Cd<5lh bye"_]`E )l<2O^Wݗg:pjE.gvo $2CYVD|hfV;<f@(e?+e!lAiDvVBYqAD F˚[Fp}赜dQ4Ebﺾ׊_Xg Clܸ}\fʧ=@ eF&ȉw3hY(&Ez(0sƭtĐ{he#\Q7 6ZJ*%ȼ=XØ2"㬹Ђ>[\WfZKh-9w8! ס5/p98'IIT%L=V$lɎF^PzFI0cL/$ h8./ޠ2r(}6>S~~v( lƼJ6ΒيLz0u<r|ZD4ASHatz00 Y3q]uU)a3F6j%r\dV3^SbD%F6T-?kG*euQ&R]?jKe-b$?h`p9$#q&XHU-ho;$'=̖ ;"y@ VkUqo]qz#F{,1z09RQ+~}AV8`ϏC"'Q*D\N".F$鸡/*J8;Y@8A4Nf|s҂`iAV_ᴒKiG]ԛj3Gŏ"{T/As8#.hp={TƧ*YRX,6l\1G8\t@7VoiØe״ӀV`m3q^VXDwҗ*Zp]507vM^]+u﹇_ |WNJpq=*BgNU;{.{9L(&lY`ԷDPk! =#' /Ý"n"s7 6-M蚝CkK y<^ʗNӢ?YQ(, W8v5W{'=uD4y?eוQh,MMN%dm'dS~)dl{-ٹ0U?݅H!@$ߟ `az'܏&.g8CBMoDvu,Ԭ†ғGw,˩[&2SK v'LAN؇9͆9qwe5#&2Hb`3 Z:9%9BC!48U,.#O#$8\i`ŪDK_1Hf̯(- c^j3a~jy^c^FzE?ubx]AO! ")(a?cbc04ZBTRd45wVh6lO7[_|Z, Gu?SWAB.Չi8En[JTN"ԗ󂻃2~REԑrc6tw+Ũ 3j?$L1a_~)b63^@,$ÇVneZAm))ۧY yKVV)n=77")q<sNY18&(vƨ( )yE<ȿ}{TǗ@扶rҳwz5`|^])穼 ^\HX#|Zۭjuba&>EB摾[nŋpDRTiw.nZqf"ǘtqankȳ686G(ͻl\0xH?y_&p0 shθmK zߏڌoҳmEҍW.rvN޹T@,.sL% ܥuz=tC% 3d\\Zh lP69;!9L<۞r0jE|i!dͩh' E+t-k uAaP4^ˋѠW]Ě3E!/vyI6/e&,Mu Fu-92X_[S0,uU^ء%&y>yXT/;Qģ%`?~]R4][/{2Yڛ>ews$ }:@WTH\*eHo $`DT>;>(}h>.&I72s~4>< qکB.8Aƹbl6{-%__J%MJ,1nΫΗv [ VHLKa.UPNr5{aƒ2I::Cm Wb.Rq{Q X[j?` &3ׯ(r| ˨pX]TЬ &sId~Aq%+]"y^x1An{P/ss;CL2`D.Rnү%X1ڦ͆!$"8(8*6ӈDZ@Ik*ل+n-\9&k 6B^l25]V~1 ~ψ:_I/1=I,1/| B 0m_T^JV:u+[Ԃ]ZEi7mSS{4<:V棫1k bpq0F vj}|V%& Jy+i]ʣ:`JNJ_ͪnd>P@)=80lT%rJ v{쁖_`Jg܍ ,>E>Mg:+v&[rW u"fk#R[_roьu9emR<ik뛷楥8IyA.`/ɜmN Z6F='#/ 1Ta_"bڼ_/ӯQXݪz|u+iw闺xԿXD}OdvHײ%{LѸ_ Zf[Qxy7iSGPi= 0'/dT::]Ost˻1\P⊪*.{9n 36&ŷLרsp8VRi]GȨૼZ߼vVTGZ[\f{=V;pcj{V]0Ftڜ MMZX{hVo W *CAZdeEkB":Eڈ)+9ФcN_+VnǔAUO<-ݺN834,~o-EK%JpUH밹H!^e; ׅrˢw)BcAz&TR&7^vp|efO4Ċ:\&+r ߃BnV-P k.#?Ut0tx;hU(}7q2M;(1C1 H*< yl1kju%#wQוʽl`ZKx\^E&UzK; qn9/[ ļ[Nb6X Ɖ dnBG}̑xg%ٺ[vv.&rCn>Խ}2\6\z+uB+}WTՏAuGQG'~F"占 5E6 '=\~&!JL}Fi XB$Ag4gp7Iʮgt> &7U.*sE :{>F~b%fjO>҅y vTCRu@*ZơqJ[ؤdC3nD؀؆%NۈŢ0{1a]|Gtv` |prkK/نډd3KKx$fJW=1#2K'y<%\U lƌ6mB<"oҫ L4![ܪK3rv2".Z]'Xy`L\\%2ܟ@ up v9-%:}sZ6\̛蹥]U +},09ն{e\4q*qDR?$]\µ<@H&n^L>4Lߩ6MgP8dn Ի#=D[Ѡ.az//pNؘ=9beo2TS"ٔq#eܦ135J(N pmTmrp,W+PA7k,Igl ?Oۡn;(1,t*Bq\]1مlBIsj҈Y+x%WcK0y"ޔ孏2 W#TP?uѳc4l結פo@)4~K S꼆_p 6CUXѻ2nwՖl\~ZQ|0ơ?S8]h5O]g(W)T;J83J[gB!xzs*2S6 b煊VPTGl\,)O~isVE.Ue]fv=IOQ'UABBG9cTQwyĢ`(zEIOBL}u7v`LИ.Efy E] 3#1[%r!&Z8Gp2_ع +zIBBq\-3QN-xc^_ΐdMJ4vVť %rIYCx!*0]`ӍC,m q2ϟwytPδ^a%[SvJ*-VW&]Y||Vϖ((Lg-E"oy"UӃ{[X~xe]82Ҫ\g5~ 4o'ܗyRDyYLY,o6RO]q*ʴ`60|}hIV)#_Ӿ;p8]bW, 4Cr Bm%C8w^q-ASH`b}%">Z(SܥrYaV1gY)Pqi"Hfܥ퓏O$=?44n5ɝ J' yQ, `,pXu˛ҵь lgiH\(hoy)&_iɭY_-y~Æy`@()#?li'fg?ph7(-,PB":x1hmrx1BԾj0~=boе}JY,a\H;K`81%.$uzVJ1Y !7f[L?"G5AYAno `:r#{L <(3ю+$_G&{~G,!\>#Ngw" aA>GR ˿V,~`w G;*M ɆNP+~.y(4TY 57TF> O6I5#Lj4?L[t'̀dc_>`W 3o =еzjF+qJ<&H:Bnj>Ӕ3}ߘvV6k9fuU(<['Iv2Uϑd2X%f[nvjYB Ku /)@T9Yɬ=0ǽ];.\Hᙃh"h=>ueScq)isB .lLILr<{_C_lfw4x@hFaC f T U̡'ч# 'Әٰ~5$E xOw -3ÁO=&:*'@W%572T8gFJ'D]&U&Դp)͐݇+|:N|YŕcZn34e63M)W޵-mYڅDžZtx2x}^&c:\4rXyACAf΋S[LO?h%eOAgk)6 >xU6Vj#"ˮF&q*RFYM݉?m*?ΏB$d/ QIGACB?>h&JFSn@~(؞&'l̩CJ^XJV  :6EJ䉺7تLV< (P5&/ŀy-x[0_cFy ϡ(_eǏķ 7||&C19#I=VYqV2w& SV}+']-_W%3gl[qA)3._~ P!̶Q[j^Ųɫmó֟5l&Dh抁/A}ulY6G%ABM;H:hG 9~YVaMaN1M"8+gZ7l :z }^1jD5jvj3(#a7W E_O&;QGN5r~T0K*NZ|'0!?{c&4 =eNLۡ unxmNP.\aUzvo#SG-DNۧ8k 9 " dGm<_jL j֘:}Yjm@4Ktܸu!(fj<'=fp]3g oo:_:B]BվrYQY*+\僠"1KL s%:t6=f kYorԭ UTӸ<?Qq]PĎ^l63p;#iqa7e 7z~MV/C|kb` z1\0fSb6l2h+ 7EFfZ2r3z^dxB5 բ*cm #<j:`״aHd&ˠ|HI:rӰl@6D-?aИ|F;=@eGQ fP#G)ӯc~Pl޴-_Mr d2uV yHoE>_165Ü1h4-WjpbDjtӀ{#蚆/t &kVC Ö@}VS" ӈ=MHIWo,.jDvZd1lY`HU$fHdw̹3M6}>HLBk+IT!ءBӐE{ BR A'83͒&a\]`@8c3_ic\<wT=3G Ô`}ҳn F"о1{M=O(7'K15r0f}RTHmrHQ*||1GƦDJry޶C!ھBR9y kOCApx!bdx.i* n/K"?Z@Homn0q' o!kL:caj+ȑa8^{HzXHdadsW &ew=cw.-XX !2M=|kԐuyNSuM[@"O_v$9e͔5>'I\&:0-KPqC3wP)B'gM13Ӧ戫^ַU:=6|`|4,L5"5L)AT%O$3{U6d$*PٴBsֵ' >ED^%2S[G}M "BAjއ QфTe*$0NެMy7G{b}A5#hx1q㣣~ Ahl>3ez~2(TX JG 9BmfE!MQsex?"YHs;$u!ozYc̍)S+ ݄4Rp,Tg"M qM5e‘V;Ioo=I;7!n+`o .?t/r| )#vO֯o@o50.) 3_R zV!VCc0#~;Le TB;T XPmJ9eEYSz(' W'H`aˣ϶qQYylmt lr g__D iNtXLOXϤM|K7GSPC D}PO=觛xM/¼:auTaSSiKZj"Y˅1%15Zfzl?'â֫:Ѽ'ϓ!FD5S=MցӬygXQ}hp\8[|мx=L0ajYEAwL@ۄzܜ9yg!-5QhGXͰV/Yb(OxRw>2 w!cCP/ԱG&r[F6O@_D)vJmx;ioi߷b=~h!7,p1vEAޟہ /gЯQx$0 c FX@׈e6ZϮ[X1{@@AiRdN} %DAⳅ\317Xlpvh%"T&22?yoKCq!"^Uś*lt_(*~684#. IT3nO'wP :X֎Ҷ4.zRՍTGP7%~YSECsM1)ġٵÂ/[ᦈ fEf'+*a:ZMlTty|DaynyP[! B ˼ؽ{;fc,zG"n4+Ye}әŅXP> =h]鹞Q"Q$+_3J?='{IO.)yt1]δ8r~ dyUy\zծ3^Wֈ؆%;pɄ=6! *NBg\ ֟hXyܞy5 Y:FhhυM\Z^.lNs걕"`{/J_\ERѯyTmS#~Ll5yH&_ȯ3QFfEDp!":޹ca|v86{g0OcC 3Ղ=:+ǤAs4%(sCv|׍H)Twwh@9#gě.'cyL^z4Bs]M](^9:2 jEh#H]FKmevT}2P Y@cbiA-ed2.#Vc"BѓgD˞Zx]8ƏIq͡#[1H_kO??i>TE`.Z4L-@};04IS߰.UfjgIW/"Oo؊؞^t&H+el[D۶㺪o^VYn5dV9 AF0j)⊥*/~j$G6Ap6xCFYf2C{٬ӻ|V7kjVP7s!B?cӷ;9)p) EJcWV^A]f1't)voP^.JW<)H= l (ilon`>6ØI,[GT@JـN&ޜZ`Q=;E}W /擳|6%ͻt7ϣg;K/IRR]%4[IDkܮܙN[NNI~_ ' {.߯Ov۬-d  @4jBZW$uEuQ[ e*i4J16|U,$I*'H;6BUߑbrBNmAS<ׂ&yX(Emz"w53ZOZ ߹LpDhIGΜkmKב㌀ !DoW `8V|`ACZD= )%=cfbZ]I%S ãg2MV5 OrPp31 p&nt@ AFM:(q{QQdEYA =haY1`Hןq#9 #/obL7 e5-&iv8n%8I3 ޣd푰_p ύQms5p(qTʵ8AċRq N)N 6bN |(e;esfҁրKq`Ub3{Bis8caLImF~z k;|W>@y=Ӏ[$&Zl3쁵^S$en& fR "aupTyaЮDE(~㩻pOke5.Or_(ٺ?>X)VjAFX%m+q4v~A'`VB¹g蔛-`[QoJE#m}tt_rFB?q 왂8Mv̄p֢f,lFbɐBOTX{7/!udch*~y_)štr?3tmM;BJߣ8wլfà0_f)Վ7gѵ#3K}C*ٚ>w%erZ4qbAl%z,Q;-&p9}7UYUġ1ۃ 5cصC)I)B#k_)&`ULG"CSI'~sUt;B"!OtDXj>Vw6A)il5Ҥht.s\_I:}*XҦ1m:t]x-`\Hd.xOsjɱ]-8o 4 kmy¿2 ޟߥ[rQLWI4M8,8 zIkܟz~@̌}7F7o(t S=HݷXe0h"<+Fg¸5mةH 7R)vlm;SYKI\W#>P;#`\jԡog>p/1k[yo{B>;F=i pϩo6k윴IԴ=x+zg +)IPj7NB K w2 jnZ]/4̽9lb ^ S?`UQ67<٨V}wїG3uT4&#v['ݮh}0VGx\w)JLG]Dm[|nhb ig` =|YcU;z!3! &+-f T?$.Z鑶V]cN3lջo{&3kvn]X^qڔ xtw]mQ bIi"%t^s$` sElz; #m޹Bx}{Ro|$p >s؂ɂ5F]x{>EjU)#_ '{y'LN~aiGDVmk _ofI&G4HB7րH,6ׂ[x6 > r=X"בmCJfP)اA\{_v~2'|@NҋNS%ߚܥq0mqPve#t:>`t\_Y*G g9f}P%禣w֙LrRNjۧm8P67*F,ȣL2zo40/ycA 2l'S b58(`@Ȟ>uRI2^鐖->Hq=lJ%pE:%Tw㤞k"uՌ PF$XV]ywFf[GYJ8g,7!5j7N䌱 "AF'tmXU{N'yjwukꄜ05)kPSmp pPF[:KMb5&I- B. Q%oē\|HTJZNG*R/͔JÔM\1.XCwe%ˑ!UTr#Zd2-Qf[5od f'xd)W  8rؔt7)ec'l$b )稀u}o!fs@a\N}xb9̇Prc`2MX;tGiIO(=Q< f[f(> )3Cx"F_2&E ξjT|Y! 3Wd)E͵stqw/?(2ޭ{j1 P6NK]O>a}ٵbD# nUȰe$*Ӵ/_e$LdIjނU/] qڶ,x~@?! D/H[ /(qSMҏIxׂyYtm M*_=ƂzozZT|`(oaFߕ)/I.;Ȣd0a{K:q?[S[z%L߃\c#߹!:iqAR'dg!>@RbԴhվo&?%bz+$k"4JFg'n5O^c"X.jGA14=O.ŰC 7ח.!$/J]@D+rŠ^S9?JNcct[}kgh`nCƓyqz1kDC@EnlsmBT(Q>%$$BH4J!{#:i-$ *ۊw䈈%(I@օK3 7lbeE}QxaBv`z;lڈ|;SF|O6Ab/-0 Qa&kXit\THr/,^y^߽b퍉a7)cU<YmH(mp[_8loB{m^)@.\65AJ<;cku]R 7IȸK\oD='G޽>RF0`M9`Q3[z)Vj5[I5ɮ:tNU›tc!pZ3fвs2SJK# L6Giʶ SX(QC3Zch]Nз+ewY/2J?FJRғdQf&N+YrPcv.ح N7i[%yJr،O%'Y++W:PЌְ#J,RN4 qGװ0 L:|Ѥ1ևr\#Sp=.jM[U+U]PkGJ!S26\gY̡NԨG$&3CY.ȴpT '+|F.ˍ ӓS\CYP힑T5(җR/eC=TEzٳ$~if=((p!l)S]9ѡqi,JIU=f x<[m5zkW: ND6ZM< -64eɆzebli Kgt :!Dsm]c܀OSLףk ga]*pi(tr+e$noE(TWzC՜Mh%|+~V3$ I)9ל-qsjt@=+Ln?$θэ Sqg߱4 x'N <~\%[~#v7v[vA޾f=㊦W?i#mȼ7')5z3g wY"_`Kv."FױYKzIhuxe}q$pCGnl$ #}m/mԶ %8`BI Ki01g=ѲBTu z@ƕ%s(rl* +iߵNvևP+GkBаd[;& g&u /[+)Hcn/ĺԚz?]gISK|)3?'N%΃iG}Ѻp)ssюv? ;5cOO$;Kڐ((y8!?rYup%!nsH^aBֆ1~s,_ʇ[ /ynk_|3;[X 'HS8~dM8 @#` M"HRჸBtV{ \mIjdNŰ^_(%7elGad.tPnPVj4|sCwl̙ir*X5oËsIw z`쉴s/S<ylt6s Kΐ7j~ AW q:ޘ auA}k퐣1ex!QvNQnOhDI5K}V3Ujύ;2({ŭdHuYIu:KE/}}=FҜAn[1c4f AӸ%hgi,(E 2qDf m0e~*_펀u+Q3o03ૐ鞮Gq W2IkxU|%m?vkRnP"_VrO*T^lt PGHꊝ5&ʪ4Z2}"U>Xt v;,l[HlӟZq,ɂBB4YYǷk99-Һ;L#^O?gYlg{mDWn|Sg(ja Taܐ6ka&/K7z6>މ3XdU^<>ᜀJʒ߬;&fc O up\$~xWUDdW8HQcKy~`f.ȵ t-( Yl8Ju~h :CA,ܖ:e']%GAO7h6H8%񲩳+"D{uMwVer%n*oIixwɦ-FT Wt|pglmk >0"7³·sS<&}r(Mht9P0,zYXAK]T3ƛJ bY~pfQAXKe'B|.e.ɴ(|䠇{LNZkxD9(W9K_Nۮvձe"_뮒p5Qgc`A~+Uܾ plKzFRH_r7bI,/%QUO}^1 =-:u{EJ[dSؼo0qX̴DjFs^-]TV{u[.OɁI]1־ 6zVlJnɆⱍK<4܀5y+? 'i:ݠ-C -[1k|S}: Te^o۳tY}λO(0TJj'']vwkHG͚+aXnjYR?ϯKeD~HizHvuuS{E(_k&0֕fI" 9җӼ@\~am.6pKϏd.pqY5ɘKgBX~ё! q΍aAo.>4}<@dBP0#E_ʀxh0WET5v5/JSJ3{/_!.t*qT+:-e_ӈ†+pZh!dlb檍MhXU%w&DeB(X9/b2[ۨv[Al䄚_lATX8 %`N;pօ8bK񓨌kze|/jxQQ%uɡ`Pu *T9TeqW<Sl_@MΐpAstץK]N'ښ+ZoFijKn/Z$$^E` @xXc3c  n{p*!Gl8}M&nV[jIw&6mL! p5[o0CxV(7ߕ|,b:ԭsaXޜ7]~Ɉݪ!/085P"5[`W0?yUK2t߀>(:$BEy+=&/؞jj`edV!c!Z9c`[kH;e[Vł:Xmr4݁MuX.^]A* Z>9VZ-Ya圴v&_ճ/օumwz[/{$," ##l!*{Zh;:áGzT+Y}޾x;Պ\59[r׊MS`j&zQ.f$CH%݅.M+F?ڪJ"cq>ճ֣a8ݮGŶVهt9'a CBm aUkd#qߍm'w*G+*oO6iݰӼŶ"H#F6`m]p˩埂yC%o氛kzJ.j3 UG(r =~NaVN\bUnϬ&#*uCnLCN%2T|mVjVS'fGn N{aCr<Ý]FN~epHNSxUY6 X7:']6"ZH|dn)&룯fT.\cu{%jm.^SN6!is1Z9V\;)3id U|wte 7_whyY2Ur#U8I \lk0LDW#Fs(YnbrgiQ{a c,~QBQꄀIX𬟭iRI(~Bjb xOu)_l(׫Y΂Gi(r0숹:%XɏWn= ]nS*qTE5ma&[[,#0Tc>Ϣ3^~(ظ/83%djCZP ³cʋҙvᡈmfdgnT-1{+s8$gi,^P:ҷ= !۸#9}D"RFL_V6:r2W\p;qʬ nsQy2̒k"Jh6Wv=fclZkɕ{vIƈ B}<: Yv'8ȋMA SCܰ/ rF3փ)kh_5!.*JUt k٨(~?wM=Mz}-Q&zJ3 l=@&3I. -J$oXe֍{gհ7pئ Sd,l R:mHWFny~qU{UhE(ҁ1WdB22"olE 1wsV92g_d*%}@JׄFv=/5T&0*Kq\h#a|dBTSU9ԃRDF'R_~})Rlڽr@ hˋhUwPis͛qL Hfi?Xد&a9@14dVL<3-!o)v 2*CmĜPH6Ue-}O ԊdQ-*?ɢ&ँLq ;C0%1`f΁(M_0Qm<6uN15@M>K!,3F|[ 6f^٬ji>_~|0QMg2R_8,D*iNf\K+Wѣ!Kzau,A쁛w|'0,dd!_pbçC}O$n"*4ԝB_wfʸ2 ow2<CG-1o/bˑA]nk}j3ۍȖz|<Ћ!ܣ " M-SEң *#' Iug6nάLp5o/WcӧXA6 A=TrJצݐq[C?O:K– Mkm{ یWԑ#T(iφљ?1-E-Lΰ[VWa`shü}km䔾 [r3zzC;3,^?/OXu>EHADeq.)i:+)JxutdgoeT.Hiu @[CƼ%vucZ 7oH4Ϩ_@U7 tnEE8077l_ E'f/p +ĸ0Ԣ" ='ʇ^/ | ?*DRbc2H+AN@Z5VyWG5?/L8QXMsg\~|vfלi&x%W3%c?р>ovڋ ,i'{=dTU mMHa$lW'c [)RrX$9Ž:pLRb r^+ɤʲR!') s?1PUUe.`yZX ӷ%.\ (mJ+E|sp\F+ poLv9y=&Je1?Y<\q#.]*TSK)^$V jQAQM<ӏ)#s8J qB`L4Γ;'ss\2Ï)MNs,݊Inejz gTѥ=h86 B.G+&Hf`!NoC:P0.#O87d "T1P!(-{՗9Fw&&aTT"~FaJ8CJML#]7Ҕ A<9 ]xjoOk_hH 9/8ै5A8F?u[Sʢ,` 2A_bXWCH%$;(:KGd9nj'XKgi@W!? s Fkfl|o^i>$0#ű['HKNKZra6S TnuB$k;2WX wGlkP;[b߻s\gQ8)# L,Bi'ytݴG9!Q q)䄀B[}6~k3R7hlLMd{诬5cuS+"^~lq9t<şeT?B?rD)%p)~j_-\%A ՌdS>̃g^MJإol6t!w: ƈ?aԮeZk /d2m[dS!Jݳ117&;)_QP2%uo؞9飔:wEsΕP^E]_ǚ!w/ϴM\?Ǝ& F 8J'3IfsU"yI}11J}_Ǫ2,  Z 2UٝNK(tj|-ՃJyy[x$\Ūb3rO'ckwڦ5Lv w&I*tt5D})~%W ОqntTz]cAq{rCeUHC83,?Px;SgV[ʛ{;Go>l L:'Vk&g6"HxSMl; 7t9 ԴZg]M/lIsn}' }m\8 :[yMcv~o<si=M){҉ʼn^h[*>N ~QszPZm)O)4$.6֨u H _{6yYǨ1QQiql>L/-yh5Z3JۈQ:HI\L-ukMR ƽb3̺VMoQ>|~a/$YD"c3K|@HK4kcaͦ5[<7$Ɋ$S{o曇UU/vEHQ!$H r5,fZ-ߨ&W^@rayIlvMPr e ŷrQ뇌nYŇZӗ GˆR.] 'g_4_q#؈Bvopbgab= ~ *S6ƴ įOCp;JѲѻ44O^"ZcBw.XcՔχ߶TTK`ִs@/2) 4VaK1rO+ sŏ3vfH\] ]Ȍ.c't\>3fNuϲbab.m;O>9p3YŠ* 9QB=YZeTWBV18IMJ7*=~ >$ }qO>xBӡn ~KՌ[WN*b=^;0)*+vqm$E!û|YxeCXg R^IZ">WV&إ[ v]V: PPB˅\^0DHwA c~}.]E-|)w3ʀlyьF*e|Ā͠(xk`.!;jųS`8}FZ/:H}+Ikړ/o/0$14Nmj6fə|V%P͗w0%CZFصP^x*ccyNvgfV* 'l!uߌϸ5~ƨTc3860@җ!>rguAn5- =bZSKzd2Q Z%+)NVTÔO &(}6E7h2?IAI;p¦a5}5b/FĚf+SPðG5b|M/#!GD}WIqfU7DCG+BT;:ķivWԙL"M8RV9P&m&XflA31L+-y-[x ΁Ϸ_]Bty2@ȧOAAUGVʮYپį)P!Qvk@I0~V i㷈: 4C{g7_Hw QhmW8_) <[=ϲ԰밭k[^KRr'O."gk0{ P}pDZH: p4X>O<*;JÏLj 0:qMԄ3pc)W{Z<0^k-(q#<Ҝ/ SMUT8# v1qb fG4)k&1h3$" $(U㜡qX" JRنhm1҉iWUKCZ~cuOܓ[HVUF2XHA,nz tV,w@yg[vwOɲ̲n"MGGk+1Zg_;}Q vL< ^[aeAf.T/jȳ=ri'dlĕ2^eBO>iS 賷!(y(LJeѡpT q9?چ`yx'~mX&k'؉"!:x8-o +siU?~pf\\ٸ|DIvQ*lª'TFGϻm3Fy-DՏX` WÏ 2)ˢY"S>_W0r!ƫ0Zv8a2]J$/Cl7=4d-H  Oڡcud n@>="AtOx+>TU`sq ($)1ZКrſĩJT@,8pM٭c}WD'<[Ȍ{`y(,K Gf'Ǔ=a1X61.E?ʄa|E ǜ-rjL̂e"~[3-8pI D =$(pЄI(WC#c}Rl%L5.2Y)vJr4W5 (nCi:oX]ܻ\ѫ1:n0EMM{IǑ\yl@3hw*Vs5,N+l\s#50^'gƞ}uH9񽹣hFӱaԹŴEN\6 qTĜ}%uvEn"(AqZDUn@7`\|<Ѣ=.\g$(T(I U ,)$WM]תEײBՒeQ4 ɠ Xe+O,ԔT 0T5j_Bhਜtzzn.H6yoIjbڅxVJht! !֗4΄v?DɧcRտx'iVz'L#@n;vXܫ`2sr5eneWYS%R/xҰ,TݷJJ z7(~R`YB 4EQbvR-{ Sq`1!= Vt5oEbL =w<):^B3עw@v0ӷ5.Dad0YzhvْGDmmLǫ3șUJz{r;5lBHMY D@oL/@yNjw6 ԛ6`Mv7)Tzu["Nqu,ye:xV"k?f-^1>ցу#־%ewZ Gaa'_"0:"BysHޯu.q[zzj2(] 2$uiEȜFG_Nv)3s5U$<|7/dkuvfwWJ=9<؁C8gmGBXa+U~_*Y^XJS20@yrxRKyԞg'.vټo-yE1"ӡh#:7yw_;;B#CuGOai5?iQs%H˗{WWg󫙩c"&@6I6Y!lWȞ#&N&_'#:EO'G Nf|9¿-:-LkA 2FScV~ixDiCesABAKmG7qkШ>=DXSV^,& t]TlG}j.XAE]W`1M{B/pit/nցG>8_BmzٕS}9](H{ZOCz| lQ;N_q/3ey,_&uA),^lC:kt38$ ?@}Br ܊6Y/^F-eeX7PclM$J{lƔGkH ^^jQLUX4jf웪%(-gLԱtyu!P MO/\]%4<IfT+Fmr趙CrP]P`t>xf$?*,h5V Ƞ)oשԬ>ӒhLn<=qRf/2=bs Y,>\ "kHʱGhSL7!pevM "UR̘EX ;`123ah [<*_/8ϖ B2 8հϩs09/5F߳Yڸru3xo7BA6 }>7yA j"sxŔ8NL䒌m')e:dW*4VJ;5ĂN+΂FGP)!J}0Uz^?6/"G$ݷHl~.la5m \pCP̋Ɂ^|d qYnLl PY_]#e[pҤ13b61Жk*@cu.m-'c";P&QBRa(g֫z)a"nY=U{1Tߊsz?*d1Sg=(|t2tzk;nS'R)>>os`U37;,e! yȧ<8Ɖ2.\tb, 7UZPׅ9suHFJ4iR)gQMM[&S}Oq2ކ[/y $|EMD%NC墾U kʐa?!->ꞇ 2w>Ju}8@nc6VN)p6ݛ\5P'Xaqߗ49I vۑԷ1K҇x65g&۸TA(JiU!bW8fMFC#Njt}ߕCvY ]D\eEN/+QC)3z.V\B#uVm7ʣcj*<Ωo8Ҝsg:}I^0|fYP}"c+ =SLaHkPӅx_ =]WeI`׆;]7#ni8؎jn!C/ˊ`"=<1k<*9Ҳ#&wm  S/l*wּU{ZgQ]C8)o`ܿEC ;Et͙+ۄ@JIyr>VZV}FCѲ%SL%hYA|szXq ]ɼZɦatժޗJ G"W8m ; WITw,SN>HHq|林.8ʄi;U] oWIQ!յy?@Jj^^5HnBFg)Z+u*7Yx^ǼZ [>kvN~rROg{xa }{LyIS{9[GP_@15c̩M0㱂)C,(#1MVp vg~f[*hȾA= /r^鶳N$ T.60%r@4g^mdpܿ%515_JJ=rǣZ;d9kw(g 8XLr&I s?d}ÀU Py=9mG,ΞT+' uONȺxw"hfԠr(S>ϷjzW:k )~>GO̗!Z6Db!J(߫WWU½ a tcKטi:A|laE RCOT?U}Pƥ~D4"MBhq4ʔw?}YH?@0mļ&pd0Ek  tV*-}}avR`{.޹a؀]ΰ\楔m9N:]능+Ml5?nEQIO~`y\;1f׻2j]TdUiom.\g7EK416kםEGip *prH ^8 d I=>S><7sPLM?}T?u?I׏?C/HKq& z!~ 9 q.'Y|Iիv},`>궉^=ߗ9f:0s泑 fJ,ekwt%⦦D/{<8bHVŪ&Lk3C@'da^מyKd'MU kv0gS: &x#`T ̸m`Jx",L uư"qwU3i,qC[,g!ԆD y jF4Xd\d{#,%YoslZSaAePz棸3mH~d/WY2(hsN놕 Qq06S56Qp }Lvy=1yK*)m=`Tly1 SWm6L D'ks<>mΦNlKB`_,UJk"onX鿢Qdzc֛4YaQ4]Yj4*i޿4&>6؉k<0yE8K _o7jPlW2{jh F rԄ?a 2Z Ԁ< GҿHfӤ蔣(Nl`:{B"NZMDȓV 3dTA >v|||5I|oNsw#4ҡ6u~y&BGIAvĝvU] &'X, !g~5 ?֑EW.cPNvX%&nGLI9iy18)6; I'G喵ZIZA5*u @ʙac&  {&gЯV>߯#5twLp*&e\2f{G(Sĭ5fD`*;`<ܙ=oF ʍ({ +ϚJn%0ഁ{ANxKdLfO;@x@أɼ.rօ}VʔDYJY;g/'¾Ҏ {LcrX'g _[@X>U7+thvlapkB8Ho"fS ݣ5$:.DayW j'awI/YBӠQ|ޡU?O*ܥo+W`B4 V(lٹ+n#/za=u̷:84U/ZMB^D).*4;OU`D]t:|rCo)_PɺuB@gjNb d̅Dzt$L*5}Mbϟ4c=dCJEM|.[t=CeӷZ؈Ɠ:)!mKZ|a+;$aS쫱ɱ: ~o”TFix|ZncB G6FR#1eC(Et[%~IX9N$<249$g|UZKE?6fs3$u(Tkm8{qQ&UG!%8˽KI:HsGqBA}0ix۫͢N]`˞!}u3MKZ?HmGڄSnth$5OU,foxmt-3δF'H7(Yn8!sYp Y_G[s1˘QzLs5|U f|AҧnMF~EvvEsmܞ~C>"ʆAN5e, {&jDӯp_^*!6Gjܸk,Lko?ѷz|(H^Y.njL<4mAPZfPu*|cxc罐W$k_*k%A~W&$ Ƒ0`GEu)왷z>Q) kxn>kGFp hѵinR )ZCZo \~6 xTN>>= zDy@):q!L5jyYrw[Ij&̵{i`*Ɂs~mJ )'߶1 09"{pj7#:8_:[*^G@.r3tYXwulrBZ8iTdKͬ- <.5i^tNAAO@)I?$6+-K32/՟8DgƵ5I@u\ KKꏊ*[ޔMAU^ ,uŽ8B 3*lF_:Fw%ӯ兎{|=jCQt.eQ0/~8Zw<_zWz'SG}? ݙ1dq.m 2\&W5_q=>`Рdn9%#;I ( ¦r½Hf[y@?hs&.kh>%tAJp r.WEXaH㣂u|8wζS<۴XL]Tƹʛד!{cZܝҪZwpI [F]#<'Հ#a%k)Zm`M+mKX207{L¶=Gܴapdrxl v(K>7@-6(&jW2=z<5#= %IIgr^5gO|J$,jO$/e$TjH&~ɋkdD/_p̨? CcA Je e/$`hVp^渢3}= #Ż=!!]U'TrST=֬q($4CoN֬M<7 #Vs`N+$P\ƶ@ׄC(tYZ p]vZu-~̀JyeXz [ON!$ }a bx#+O^T Զ+,tHxbeR~VDy27U_) $NؿiCsL t0`b%ϴ]Cb!|]yi'#rޢḯ! o5 p[}kiyưPr6t g e}6.$5bs޸o#~΄\\TZU9@6yx h\d%Fgq hݓ-$b1 +Tf``݄ʶh 3k~?tN ӆ6|8+Y{Ӓ+HDGewjPEɟ:5pXV49~M|&^u*ZCFTm/t$?7ODv*;6Y`?cOJ')qjĵ.>^U+@Gu (f|ƔH2?4\kX2FqEXڑ\"$GqǦU1Lv5YYߣVM1c\>L>4qKnho.YN.J[E˿w1RAQ^T_:;#t-a"u nq3+Bp3-[KO>HqgkV{*-yCd"x8ΑXAd*J:b=pIyD [H._vvsX'.Wa.8Cev"̧R^Ě/AN4.%Λ1yJ %%K7> Z0ą3/ඎ3/Y++uu.H7e7`iۇ_WPXNW- M#U#5sj(81# պ_Ԍ~ U]E`ۯYV4lܰ=%K@T][g$y23͵ 3+rLO{3റzlS$AAtVϱXW͉a56;cмbKaVn57]S޵/|iZg,)Ĩ,;޹aw #3 e12Ӟ nnbβVERmhTmj!wF;3V"qbKQ;R[.OY{gJ IƍkF`Tokv_+!٫N+/tT%5dU/"Z=:=_iGý^}է`TNhiMj̘ 8ޘR"=P{+T6_`o6U/w*0f|Zh%TpȖՌA%56%@KrblS6z>{d:[cwpOt` Jf%I{]L?]"D/U#aJW,y==6"G;ܻXQOh53eئes~ ],WⲄ_inz@:Vb̘JdXCy3|j21{+pOO{P͜y䤨Tp%}b?+6\E7NZJ\=<.>˘#p/${Aazgơo_xXO̦>^jDJ.gQ46<ޭ|vuLd4ʄˤ@+ۢƙ *`)1[+IpL}n1Z( HE睧 J S*0ۭl *Gܑ7,BuQ25) ::L`he2@B5byb q'Ui|S&j12%@w-N ,7wnQla܏oAVȀq}5gVӰZ_a"p,ᝅfJJ/EB̍u*llbLia!b=.5{nyuBHw<; Z7 Nj#M+a̘ )EO\W!:nʰ$K?sk>Z6Ye p@AJ;RVn@>^{͖W94SKF~GΑqD{aVqsDC v[{)I9H#l)rz`f [9+;{lT;@?<1[J&FE# %"3 ؏e&}(}a| 3%~@x&7΀?rSdt(noK.D柫4BXR2L(]^ uFڡouYa}8iC!p{hU/8r@%|r/|˨քr ~QVw''7Ce9Mx 1|E\go\Ћx#@ ꢇwxn" kD,>YInhWԍ#O"OEliA':_: .d!ߒ r%ɭ9)ᔦ9.~.䰸22xy5pH.{McoAʝ&钏q =ܾ"vE/ |u#kJ5J֒V:t=F%Can'¤qٻ[1jW@0f[Zbv&+q5èE'}lFuaO@(nGCu4oI*i/7eDux bBio]w<;NȾ8㚸 esi3pJocbU^-( \A"2TVuWm,ul?Qw *!چpϊ:{RRc\\edE} bHnU %AqQL^-.LZ\I":j3Qa:ĂVr}4=5]Y@Uޒ-Ȉm}y$U{*Y7 lOa2M^WF^*m~^=y\^h?ǘb:x݌r,E_t_ѥ)]R)lEId ųx\JV~ף&td4k41is ]IU l { SR6}a=y&.0%#c_8+Dϱݮђo,̆y*rZH>>B_ד']VwG;&(NN{B  !P $OoY4{l]~ I!x{q5N|9"@iji`&y/_F\L&i&ao |al,pV @cԖQX/j QPu2$ru[5u) H<9ʅ#ʐwr=%m3 Jx& \[-ybGNLWus*Ѿ&j>3{_VAc#/HVhmW3U ຌcqR/]Z6'%1Jw$d9 %4q?DPlH*g96 v t/'{NyYuY%NFagJ{S@h͕'Ig0G;M+/smTeꢭф=00 m63V/!d$١a<^=WoߑP{2 Ѱ]=)7r@1 93looBߠ|zM!f﭂ѯkU*V(#ro.|~t ]6޻fu q6d2Ȃ!NCxcAw#1a):Q1~v)H]BϘrZxxyō# LJy JP⥠ݯr3x<{=n2yʿҰݡ}R_9q]qj8td&<'fc;7= `{>.wc+jk=v#uRgrzrKU7͜ ts~,*ý1kCJ\(NMwNG mꋞupN`\[$I+ x=Kr?AɊߨOtؙQagHfLﬓo:e9T")Zrr9V]^l`8acj\NpIG'XOp2QYʊsw^Iōq]&c$o%anlΨʒ?}G]xC,V'f?# .2ore<nvIKX,zYިZE^#"&2EF뿍xn';\dm:m 0d{h,2"Fsm=҃ h swѥRc2ejHF(@Ί %N'VMaMaMb)Em^!%d%ӹ!pe]DIyz?4! tCq] ?1!Pڝ a0#9 Z0a lỵ뀠> jA)+p]X.[Ƙ#|rB2}^A.[0w۰mҩ.rJkKj3`Up_9DNRМ TbFdPt!W&^1|xWLtTA'L}B'\S̀Rm qzPd̫0aHglm~P!&nx Ǩה9gN7\lȒ JZjk 1!&"[]΂=2;3$ГV] ɵ-u3L|m|up\k[\ ڠ##lj"^ڏ]$pmi܃ukg:pC,[ʰ ݤnY6bBA A ^dYgߊR@ClWL gZNk94b,I A+%vX*S2j ۃĉogR]whyly"UAHfUt8e%t) _KɇܥHm[;S9짖<+ZRZP=Kgж|a(²@36wC >$*Dq7 p-(<,qm&yy|$L TnaK^&z ni|j_;ܗz LqDxq\<)2094dU6?s/fGdi7M(<7*CHwI!^y,/P)_W)<\>jQ&ߺMJ򰎤vs7†ovZd|W!{,~ً̍=>I2u-?eg. $rOos! )4{#`Ӥ&'@.3:drz{bpQ逌k}:f<q2Tv051v7~Qgb|?ƫIt\O]uаMOJ'!3 gMq&=qIxmr:J+WܞM+l4BE) c,Ú՗74*{c%%kx5GӁ"T\)/3o R?!aI>ޤHlbb qA$Kb7=%/\SљD52, vl Qj@pV8spcusC"MNYȿdkRP6IFƊ%kw:@f[bU۪K@K*UW|aĆ䶕Pcfkf ti">6*pxA0f߇rdKA"hR1Li$G?X!k!KU=̎h&; B|.}FDћ -Q+c;ڃPW17j]adm2g6rhO&# -Z0} L1xe=?J:e8\%MbNe`a|YFp5cr7Md<>!Mқ}:0Z77p}0oF" m,U^u\tIcݡ4?0!4bxͺi&1BBvO!T#z8wӵ )gE㞁3/M2|]`)n\=: 4ĭS!,5)KHCl/ۥ֬pK8,ht|3%fma\Tdx~)V߇~G%x,C11ZQl QxY 8@MpUW ^GH\ݐ=2|~ci vFP찣@84d_+4{QpH>9:5m瘴E BaFB`u <ϹY|b)xY)fV\o],e}6*Q=/wU쟳Y\7Nq~-^^.P󩛖߷-Ke/oۏ+n/#R^|m?Je'+v4) (Wױ[*4@'tF?}7{Tx K[U>EXJ+\}~-IKn(TEd膜Aܚ.7Ăp&GI$Ow~L-TxO2߉J&G}~TSx')(Y-VO\ l= v" M_]Rf !5pVԋnĘn>{Y1zQ (ZI5 +#80HcS ؍NKqVcD81yeXkKP63zzTAuJt0reL Gd &Lp J-``u/% I-椡Ibuf6ˆi"˧dT67~^MrCL< :^lzE,"`:~{=ueцاXgODs5k"*2X,woCN,*Wg 8@Jz 9&֪-ild垔U%1 S6,SAP%Kf˃syI&3kP4l Ű)-v&M2&ʜxWP{5C A(^+d|Jywq>@EYya \#*Vg ү8$[QimC1s\X- f:!acgB?o{v, qxQHu֋`rfN IŶWuyyڢv6DyύFN+|QBUw,@*KjW*@9lHإ>c+mSy[]&i"+GApmCB<{cmÐ7Lp-^ui 9KM|T)$ơN r1 !OvsjTwǢ>6 ~&1 vF~NK_>?**zI.C>gVuaGMNHkAoY 8vE1b;Mc+9S~O<2F\~X;BӇ(Ha?.;rz)8Y%@c3㑠װ:JLGJ>C2崈B 8FɲݮǨ`E/\}5 =O/m4hm.!㣐܊})$>K:׌ 䌑VBC ߫V!|)s?4l]A<)S 0?$e!}P4E2Ln'4+IYlfq6rC=WwӇA"qY!EV'{U ǻ[`Sty P&PL/ULS x?s^NGμF8YH6H=8ieKzjf6 ݰM݋pH ~8E7CEm#≉Ta$4M9C8őm;3>G6\0.c[ ŴGͳ]2 52:ʝjA:07p#*<O;_S(E.+h$?&b~C?~T> 4e>Њ߳BY|51yQ*tY>lU~[B\Gr3;rZB#'3}bc *7[r RU ΄@hyn2D×Q~u߶?VǛQ@V\`jaQ-Z c!QM/ A1 !5dD K%-1\-/ j%ג!+|P ĢID p=d4CX9oOc%ARj69P~g^Bor/)/(٫$.Ћ  2&h9"\2=ÐZHnzLm-ߓ׌F-f{@bH=+^#ƌw3 Yky*vT}zLB5W6w|ZY44H/##2uXܪLUGoiMXDgr_L'%PQ3vAܡřsjuV+zSu։30$lqTIrZ!3iR(6FkxBb)5!Laj}rηgEyRϩD;)wAyXW-j«Gu2R Ɠ l"T!1e٦ea_u <`ZbMlG#Jރ|snQɑrE&v)+?\d DO?hK(>sFǩjn7}jKuE1CT4,gzF"|ɑ}!>Q[iRE.p߇+ZÚJ[G{}iZc\,EG“(β"/I倻jۜb|]rٍ joJy%2 ͷVhzWZ >/2Td^;|?KIPj옄Lw'>6X;Jm>Pl9gm nGFg=zb5S۱'lz?)TVwk=ڮ7 %Ŕ5>Z/1> %: /ճ|l cEetWA4 VХs ;1Դkq5q}*=~01r*X f !%W *N| eљ2v9䉫+*\ٴ aFq V*dF'#.z>?0; z1uMƱ:3 }ڧڶ^pNV :6. uj};{{׏I&+-%fJxVf3(DDJk Mgsq,GAcUa l޾݃k(;\>W9v9`2=7KyK9nLI 24M?$6i ȱaIM$zvNBfD\oiЫl#?BGw$2Ec呖Q9#"tf@ٞGBaFs-PjLN+3iȴN`9J!0jrO|ѯiWhHb=!$Ȫ=AOҖiǵl1nac\#AV܌LX+%+5p<@I9LؓSi zj*Cߣ6*UpO4~&FK 3e%6eh(OD2;rQBWo= =sMbf"F\6͕rr)&.Ëg)kDŽᡇAdn Ll`6_r˼7$ -8U׾$nAxX}W4| Y;8éؤ܉"@f _( F6Q+ҍ?c5ڮ{jΗb]T@aw ~s:KTyZ J^ wqi ^c֠B,[NB4tX.YF-ө e:^aUo5+%94 i̹CeFm3bq})G~ҟ&ZRsw=DF]ҧ2T+9z,LIPe v>^ӎ 0r4kW9=ŖX}4il)G$gȘ%7F:YHdgtD$ F g'Ɏj=nM_ESN s` &;}S<9mz}&3d>V+m<tsdieIǎ8;K,ssѮCy-#d~-o#mf H!"ũɞ% -T?Q ntzInL71,yj8 ~K_(!OQ^]]j=7L5|{k#7aqh}%u~4`rq g !+]=d2ȘJ9Jŭ!6 g0{\|Wx Yys`l{B``Td%=<3y}sBdEKj> ^NTtUؽjs1D\~ȟ^v8ǚ*`d 9V Ő(RRfߞ,#2>ž% qUFe=郈E:}Snػ^$ -?%?Rw.dRU$,iIe#(_yȥ~݅cb6xR1#ݾ!-iQ[!îieŸh>DG HG 0~P+}L^[=ԭ|́fch$(VC1(YqAu{ގqQEs3BTE m۹AB[%9nK;3Xoja4^ "[[q )%VK!Q̰gTߠNL wKbeך֖^YPu0*n3%鐒*,uDqp^Yʭ]Y^(\DFTb_ >"}Y{S|ןK+nC9nS RAV&p+LK;ʟ" go yANo UGCh})yb?*eM"&s2S~! |W\ 7[/W[9;5h`q$D.i|I?вHVvֻhL ߧ`hN1]:m] "2;{c:b]e{LCN]2gveZ|<ƛiLydvCqԲ9ygA:.%8`RgzlIo-nɻ^DU vԝ'Luʶ~%fQJ躰F͙Z1d.GOFVc>')μP0>:ZC3գS~M?oQRVu4c!n"E"A,P<JÈf0nB6O̙ɤb'fՈb Nd/: 49U>紫tģO|ik(ƀ]]pg8%P֍_X?gp߾vnO? M<{[z0E1yƵ.aS"AOEf3(w/g.Ǒ^!H!L^ cWw$:͛ނ{yPD,${L|#CXsI]cg_i)lV(zBu'#[Uf=`9::-̾Et]S֑0Ȳ>kRpejY:=BlۂvG!x6@ʩ]p!ʰJ.6lA%s=0+cM_T۩mv[!=?>MWm .OX]R$rCP< }(I[v~ۓH<[F1B>~Ȉ uD;EP/'P6zNJ#:=v[,quk .5_u@oqKӶ|w,#> dqӞR}Jm8mZٺAOǚ\_?dr@j:U)CcߙoNY0L؅;^2 `v>{ ?H\;gC:y-np~"aЅ֌6LߝQO]4ULZk dH M&f)&o/Oy\&A,n򳝫c˾MAG%,[*Ԡ9%t%qy g74U~73[ OXj/nD09codC-+KWdbm}Dr.65Z FML%80n6]93(Y,O1Ap20uF] :pg7̕ ""[Na!{a1fq{O (7+Lu|W6)YQ=XX z8A7{ر&a,f/KxU:PM'k;qWO3fV`g \չi6ZML0b1U2Ձ$zQdXIBIfSO˃@ )=?g{.$ P\ڪieZk( ^o*w:*9l9pIӞ9c\]H+KTXx6DULDd~zӽ\> e]0^|$Dx c柜N|9by?m!D 3r""m3b+>ź"$o{3B%`}c˄=!5PDgaF2Ax}l„:)΃tRm8ӒL (p:j@KK-Wz=9 K>H(ngO."(Ik"(7QX I|6>@a .woǧ)$fbn};2S]M_&aE0ߌ&Æ6*F? ]蘀+Q:٥,fo7J8Yv1Ďc":kb !^Fs3kǡ*q|GD7,]L0 (T%źK{KkctE{h#]A]ׁDF@0[hW=!;_̈́ރS@s'繬A`y|u$/z[' /ϮRO !e1 f0\Vk4ő 13YFBYד(/M8fPziA=g:![. k5C7Ô#'ߨ jv"46e@LZ@:eqq%h> dF*5ڙcyȞ8:DF4QKU2GU{T^Wh|~~MG{+"Sbz\/綣*Н9"]xz {8&߸H^4̽{_.Du;YHs*v9_Q:ڊy ډx%#V ]4E)tw} Ф4q9Ns^w2U>MvZsҿd&@/FϠwu {ѴxU^syiԛflQ5#E ZF-` ) Fj8!e=Њ4H丘Ʋh+Ӏ>8do%:[nj;k Y}g' gnLQ&3xWgE30Ю|9tLdbd3Aho̾Bg>4mHqlK)|[eC MiON9 #r<5gYε+xK`qnâ 9(C͇iL s#0:r6ÊV&5gc03LgH(srcFs꒫>@Bž,Y35І-Yso]Z LZE>}a~ev uCj)!&\ y3Mq8p͕#&hg[0 M=j“r=TK;.sxVqL]['b1㱓B/5h3V Y^cKP~*,H)Z{mz$l1j+A=h(cۆ 0tރ`=WddȜ噻|CT-K͑K=l)pE9ῤ'@O|DHm4zCa~iw5^_*(YEc:iS:p9 M$ Q o4SSe7/iS+ ԼhBދ$\nH4 -),3 # hi_"ͣ35XGyFí&0ƨt!QܸI1#|Ρ;{AM{div[:ժnEw,3`|oAB3o)g?[B#vf&qτ4V5s`KN5GS£ O)NBt3xے!3 c\괳?+!5Kww:|D-̔-xjK_[.oɄ@pu_ JJd4Wni3!/p8"?7vIXř=O>NjY ^vǖWwP-VBS .,XJ_Ck$Ss!g׹=Wl Xn#ڂؿ^FADha1zROVS",{X]Hz Y{ڽ!Z.!q_7ȶ0+~LIX2NHf-Ġ=}EGeM}+U#}?hhd[X8I\apr#+_F鄺^K'% ZƈGy3`~ yCC.~7\@ltdu~eYoM8ٿPvZte۝?u*/2^Cd ]fv: P5$ɂ|Y4U?N9K3cUnL28EFlSuqxZ=^ Z{@dREœB:pZl@5 REgɕ=jаy5싥×>WX95}cݕ`b Etvp$҇zBJv"L,a:B13/xߒ{ںҴ]lGLj'Qr`(4[mJě;<󣃵&fN SLN6w-sUZ x ) oW,3KXExÛvrVm Hn0yBZ$|Kv-=҂44QQn]#ʟ|6'1P="Y9W*4b Kل)!_Bi{& W劆"H1^oc.XeQKpM­$GF>b pΈjiQ SmcHi@ -^ד~qjm]8RcٍƱKe^;;::wS? RAY愬Ǫ3@_=`Z,;Jb8a%+<+ l*w޲>4ӆL127jܲq Bk-a1r逗Ξq `dTZC0Z=vqB^3暰SI Q?nt wa?z١ꔥ_Q_Ơ[8 GGݺ4 GGhuV05W:UaUQd Էo_6:6ŘhjQB9OkX;jBQM䖞3}\wb\/Z!i!uP,)QwJcҶļ3:O7_*߹CvLK;30N4˜^K%NU׌r~k9Hb~~ =#g9t#e 2v&R1ƙ[Y8~EqZR۳MSSVPaD׫"#Qw\y]G(@:PLIG۸'K&w׹#C|#E߄S_{!AO1z_ԋ\`첈hv$<-v(g¥D>ᖠ䦡)v'+! Md+=j:d`S{ ͌b0;K˘ \x2>Anu8Đ#~6>9jA~FXsW]Ε\vF$ϨfZ!Fxv\Fw޲/ē}R;iJBg˪ yֹm fo<{wt*9{Sv{geJNjmxrؑ1-%dhXJ <`RYTa+~OlFta\xhpkR Zu`gu&(210+| 4 KiE3+ KvR'!]K~åZ,[p멎^蛞54 *#ZѨ%F)b/r]R@m|H$=S]kuqm>c NȗH%J`LϺs/JW"qqq0*504N aP+暋 N6VSEYefINkgE+_͢s1 yk/ӓTvR{s2 Q!ir7df"q-V^'K,yZbȩp5_yV8L 0B=nS^?/\f!8^I&{ B%zSMYA.sPK؉E.l5@@萆OndYgn YɈ;.{X$L2 -c "EGZ+N^H2P%5-2l"&Xs jb4>w*;Yqye[Dh7 D H}Eb֋PE/gyO KAodƷb#FR8YvT 8 zr TٟL1?2a(r`wN G,~C$vģM0}{%fGAYlbN:j:/TϠXL*}G]q\`$¯JUs))q&(q-3$"<\BkP=ȿg,a]ftz @ M?TSfߦJ!0V! #X`c %'w+qסzry+x";gι\?ͮ:SsX)^m{p͟:*De s$ѕ*M[GهKAh rXr@EHkrz)Ӧ6z&=Սotö́9?\+jw! _jkyje}c mBDW,?aEĦ\r} f-@WcLJ+(˸ tm\Ȑs)wBRg/ȇN¬ܷsY/% BxtzϘe§U&t~ONIbI!ed{(-J-pe" * +$*Pk mSDƾg@Wk8a(N4V~?=jU̴ Cg]8qDJ j+x$ޤ^"7:+ͺUWFYcV:SN)uY]X;bD#*栬_= Į/}?\-N4C?V>z㿟z "C3[-@@'\,ߛ$BVU9n!̻Mٽï wVe=y<r\ϓAqpp>4IU Q" 0f>h ȡN{^]y OJ0 (TlāԦهm2Դ|zq؟I?&=l[%io P~NǬmEP^cpM€y2FSt͝ <7ԍ`UϋOL󨄳ŽKL׀2 }Z4535sN\ jNqHRyt.40C~5DGʔ##U;2!pW0+HtǤεi7D٠deuX 13="ⅻQ~nqչѮ-L-ZhE0ݑ-zit^|tX5UJCAA@. ~f`кe^ 9{oO_)6 HZWZذeJC"x^+>՚O0/u[eNciYe3q>Ѕ6:?Boݞa ~Y2N y|`x =Ć3÷jV=B! ^.GӻxHŔjxJrib \0fHb(;7n舌?y]\HX(ܱ]|b`0cJ9x3MR k^-FD?m͇5;og`*q[e:%w0Wӽ"_Iڟ=]'ثH1ܕ B%*b@rl/sˑxīp>^w~gFu}C.\g\1r+%A,\3 KNMS}?P'- WJ(MAT7$- >u PTGwn >ԡآF5YXd:8Afy|H,amd0Y ,_RO:PenaOz_-;`ًsan8Ӗ͑!,t%Kt;8U_ Stۥ'AӋ(C?)90H67 ^A-QGhW{plEUBcQ&>fq+ q"ݠo!cqC煎1>3\jMQ UwIU];zIt?)ym״^ɰftQ:&'W = CBa(!us.YYeijM5|c/Nzv.V h"=:et]7Xhヶ%Y6ӫΌ}Zg:PBjC/INz s! uK-%.0[&9BޅeIݠnWLX'|Ə^#Z9 E9&E Iq5,MLG,\ڗ2ϗK^g˵DzEyoJ<9e6N'bV:fBգv<{Ccaؕ(5ssy맬ƼMBfNz ԟq"(-q:J7?w2=nkeCŤ6NR94k˧̌Zj0qVsF#;N,uAtr펎L%E8΢GNJfsL"Y;pGdܷC*(/!y= c ɉa8UIS_{d .7>C2tUUKds]9g_zy@BgW}&SEKo@Ȼ|S[6xSIE~/('|X~[P[ѹ]j-߱*#Ⱦ`ѩC%y-!EVʄBKL9,```̣[){m>ÖO*.>K)}t@+( dGzI1[Qh%M$Fi,j rv JL!V[Mv\emytp:rsYw1$HJXrDqP"b,,>[㚉 .RV׌gpd]TBRBņ鷫wiJm8YjO[Aqjfq@ElQܷ\g.s{ Gx=5\uC˰h:7jAe%ݦwG{ů3\I  Hִks7ÝbusV]AU B9>,H^cx;<[4g!9E"Qcÿl \R?k0!Bv_l5b`4b3Äa+tRyqTτ̨PmQ-,8锸lqlPSYSDc/KL:1_>˄7ZUe܎!1.7 T{j=3"T 32tdTNiOTB5`%hd΂!蔏4>]9+ts?S1 4'pq1MwKHSu!jxaf~_A}<>޹]݈K.t(tv%݉5@Eb#iZn֮ٞNk5EHp'2(GMq7u % zLAbMq3N^ t"SđκnS^ͧzo5uma/o^'nQ<'AS{~S.Do.'﬚SVq9' _͵5rNԅџ>;!Û␵bnK*:yo U* 5ѣhʩz F@.x!&O1覷-R#R3O`B87wk[# M8kurxz4Ϲ='ScĦ4srt(l  9 I~7,@GR{9=)Qa^rX[U#h[+uCބ=Kվ=0ᐄi#k0E֟8#OY2|ηnDE4?[%I"ʵ\.擝o=@tY~tS}]#IR)wSVB$rEܰ/1EYؚIާ_%2Mܥ 䕛ơJiEe5dD`VKDz$?KѻڙOTfazl z܈]PyݙDP}- vspap㉙ 4CYeT o㡢o!ퟺO!#hҾ6vTġCyKu@rcXw__h`[!xEsq>e?. 1l+oՂʔ}}yj%mW5Ty|&=lTٽ1:xA G476V'6#bo8ԩoMd,O-[;kC̺ǁ¹k=ۣy,y? \7j 1T^ #e$甅1ۙE PT*7OP_% T_yhʻTdR~ >xtݟ088I'o!G+ Bدc-o+{UZ3rLN:)rT\x |q!!e^$/E5[Ѱ>6Oos,4Q9FW`0 Gс CONMy_-lYmJ놀s'P@bN5@@w#%43'5X6vwkh<pqaQ'5L )OU1YQذf+vö xsC.2+5Tp5~!?-82 DuI& >( =C }O'[=gg}Ys8Fr[Xʍ @ [L i0l8pik<2m%@W9b PP.oHfe(dLck<]P.:qԥȥ Ƌc{#5ZMlNPxk#4}GD)AK}Iƍc~"1ZQ][*&^ &P9}wIaQpE Mceu M4IBtbLѦl~Be:`)R$uw  nrSbƮ2iW~dpMYe^.+fL3$"k017Ls0Fiw`#ڮazK;p+ذP P&Y%RQ9X̾f@bs]O oօ}7N5¦AIӐ2D nm<=cg){ в'**xqxyq}k|RU>ŚX osmx}1!P'.%gFe:v=|3x*אxkr R*5!JL[Wi+d}y{c_dFXm/< l"iQpS'Q =jns0'=>\s?D.#%n;)æm3GY_Sg v*ΝȾkX"4YkܭMIӡ[R{4=^dkbMy|VhGѣ-4ݍBޭ@g rnfѵ)u˟AmMͳܻǕaApM٤a5p"jO2]0N ?\'jF;~lUH 5f3t6QaDmf6yuOH_5Bc}9ڀQ֔%[/p1V& c l:OPFL14!<۸ 8 b5NזUJ%+QU nΕ R&u~]L''@/"9#.w,$ǐţwrwj>!o $y5{ q5S/v J-uqF9׌d*<*w|+j{~TaoGf2: &quU5S|M50!Zt.$ 1]͎N)'˹vټ@3f{SzZWuȩx `bdei9H98,\90l (c}Xs~3ddK]VHi~nM=D(wh> m Ťms4AS|WCw$+NEFi]G ݺhي V-oKaJ"6Ȱb,87<  ՏW]Ny.#p5I#cG⛝*idp7'ظ7[G]iWkf~ѐǧ9X8.>}X^e^g*+:}NW@>=(_鿅$ˆvP: \T3]\-GE*L.UIj9FÕc0&x}q8Ϻ@,Do59V/&Vqy2] +8XCi 75:(ӐaMaXdT8[/YDT|x56.8Eq*IrM/)Rowcoe^6 Fi`_n,:Ҥ >rMHuroQNd'iCz-GTnأe(MG,I,ˌ}{%$RYPo(o^SLu|b{n\Xl(JU\Me !l ؜_,UOŭpˌN?3t~?h9h| q]%g7M@ bYt|hC75^ ÇѪB+Bl@D~wxt\Rt:N}~uϵC7TFw2Ѯ'ܔU. b`俑(4N'rMIn*?YY;}T®'*Sih %:ǁQ,0KjKׇ$FcRg1Âĵ[TLBW8 YDA.kiczTcDY6f:Џ&hf s7PMȂ18EQoo LV6c^cqix.<^g[LIKCTK#Y{0jNߍK,Xe룉 &jU,n@6m? ( 8W`BԞ4(OMY0@[EM.63\DÂUFjOڲmǥ2=D1-ӁaJexKLVvj/ڽ8d¸PylםE0OgAI)7/!VB<˼|t|gGHϵ{7'n03Wg;.:k{hJ+ >$*x84tEԈOgXAHFmfxvaNe*:\۱H!'gJGy H}b]L4;-J^"VQJ!@ ICE%¶o[\>O1'btV"M+뜏3|$7P86B>]"̨hi)>@dC>B0!;ǻqcteЇ)̅J/DwǺ}BpCXE"PD[A-EA Ʌi/%sqY\^PScgL/m HU&2LǞ47c1JrY|KrNM`L:hiJa4"eKTR6q҂?]˯g!#Y 0|-\knq$J(/",xm L_1728_:B8fl\{- N H&t\x۞=Uv{Cl]DhEjGصeϡ#AV89Jsy9Wմ`zfxj< 3Q[jXçv[ ;b6_vJnmQcue/&^FJ1׎ZuGDFraœfvԐVHd%C&-&N3۾aYi 82|h]$K;2,#!Rܩ{/䋖d03{n]d B{^xwn]4S4!CY6g]6"OԈ^B_b,b?^Rfzr'U@9v[S[7reх8g82h N48HE{;V xuohà v/ .RG0Vaf.Eym(P7;\u2,KDF)^mQvאm,E"wEj5kO'4'!X|uDN!x]a0wo UpvTo0BBF-K݌<e=T~"q>Y5JkVqP0XTȜ[u乒&|e!ѐ%dэfI//ŏ'\4-RXsk13EwtŤ2iV,37\!D@nj5 ݕJ̆O3z4OR'U.^qQVt(W okiSlӦK3:<|-$*?$ɵب=_lTemٙw@n@4 uZ<uVx{S{]Qʊ\WPLRU׌)P{x%2g"6CnPRoX! CPݙߠD Ow 5{xX8?g5<ըZ7OޜR{tH?*&S~#)$fIE ՗dmf׸ƣȈyk}&I^IDֿh qJML-!8.FcCtfыj/'ϝYb.F%!SxW=q3E"l* L9ȝu BSlYnVM:5h[FW31ީbPM Eeem,n R^aL [oST:Rϻ#)^4 _gp4sE=a:lf/6U)iBbu"qK6!oP-1AA-lƓ"GZO16hg]VjyX:ʫS݋%8+"{&p/z) N}X耪wE7`fzͨ]:r@La Wv #ND99VbpjWY"u.p7©ǔ@q7D|tV_NQwH Qc@kdhKIR-g֞Jnq>=g5frIfx>rw1=/щּ̋ΌK_a0v͜6 ?cR400N:{< <> c4]gXdATyFD7tu Rv`jskQnjUGHf9H-u_F|D0|>*G.xړz0jixיP72X^ Gu)^ 6h3]bƈCE"1NJ;ȁ4HUzBSp~/yVF:O # <%+N!幭ah{:gy9I`kgn^v=L[AvF,y]`!O[.'t7K1x 5/ {MU;g\/ff~sj4Z\|b-'AEB:s "g {$x<[0Oz\]өIX"5ny Xm"|hv&3]E3!l$PFIj.Lگ/ӟF(;5xK@0g.sjS_K.L[ ` sX?#yB뚬PWUz؃*J1ϛV]pfieT~:_"x)< tHoY&|oBq=RK`JI8eZmH65nqXw擬ߍD)ket)XG<'zTTyn?0+Rds]^k2̾ $HZHD⸳JHqI;g *pW3jV=Jħw%[pBWPl=Klb30/RHbiT99IgD)y+qԟ~[IJdӟflH֧-Q1tr̭\*}(]֮O v8[jc8c#تٱ6̿U\0ĺ_yKOzU+hgta-$o"&Oh8;eQ3$ 'A_~HbHion'K::@8면ZY4(.}$8^Qϟȴ>Vfi3y a& b%wW?)oJ:F&F8.|Qz{)kQ[!4^1̹'&HcdnJ /.i'Gn*7dPes(Im);jWnE~ft[-<g)\(1A?n WY^3A(jOQDz:Pcآ4*<(IINu?$3e+#g}Xn@6:YcQrB )[hϡ_ٗImLefJ o'+=Wcۡo=J@F-),8/f903*~m+!4*UÿU$ů\3Tۅ^T~$ԕXEPYӊ׿K7:'299UPO$[&+4vy ?~픍>*]?{}LkߝdVcK5Ɓ„~ą:4H&;B'/\rp;xSmS@'L+"7ȸu OIm:znvƅ\>,nY '\d%저N;!ώeGٶk>D7& ޴DS`Yr QP}񫝊9RyGCadaDxĎ$K}@aˤi$-];md |FVtz|leLZ%la20@֭Fq?Gx]k,Vi6Vs[]G>ٵ$M")1h1M*i~8>Y+&$tts`o܃/Œ^De0vljpaB0G;ẻ܅>C e6 pi'ri2h 9jfq8ϩU1Rg\ݖ-V+SՈ[Uofu{Hj֮UȀ߾{ ,)QRywf?t igr0edp%{8b؆${nx}1lp̃'S$N< ("h|1]|^F^?'<6()mώ3A S-[b$A4\E5)EQuX(5ѫSˬef_(S-G}OXǭv /r[,aDU8^nc.joNruL&g:fAhSqbxAΉN js}>9hUE X('@D 9Di$ ͟LxB9ʦA.㼉?|4yn*Egrzy?I2.2meg ;ǣcpA-F^G+%7;gŒֳcY01ٱbŧ*\25#y8H/wn!yr:n^su@{gfzET^F<8L@ZqI|y 5_JAun~0/KY fuf0K #:#C4K0|7Uzj>o?fcԀ~lO X7A`Z)bޒ5Vzs=yD];6#Qvckh V/.FJ~OC5| u*@ͧ%.{ Dk#ZE类?:rA-t6)<8*/6*h䷅6Y}:#Bp$ h-\ !L` }D ]x'Ga~HTtp⣷X.(rQo4{{xY^^GGgFAbUɀ4M49{G - 7a0W]x#cXX ExJ-LtbLH BC #g ]Kc^鐸DnPKA.@޳p ?2}hDž]RBz 槑WFߓSꐳ /!夨`.oFC ʦN(b`ho!ſTe<<EQk.$=]j5fmSt,J[zMb:CK$/boIo}%ǜJRiaV=#l,;HI$9j2`L][WN}2+ҙ|s|ƕui3s̄5u)pN8.(ay 0ߋĚ4q|l(Odw\@F+MgE kr÷NpaMu #kYZWFAb@i͎ Qg)H:Y-9pi.$Wa7qZZlW  NE Ųbb_2֞[[3yOXum jZ"Ž`We0yi&doĖRIg^K Jc>yhfmEM7i g6#"2UR? r^ŬNj* r{2Zl-U{a>:Wzc (PͲqdT4`xw<@mMaOaLvN" l^.21^vh_pEݑ̧cjRHK_U@yD[.6{XiqcFlQLUǨ P A рS+Pc+KX[-Ɂ @?_H>ag/OVn%ܣ6#(d{3.Xm,i kOį}OIh)(q]B!;I'/#TnLDžPM=yUE\;h(wgw(cʗD)!=v-m<  tn"" d z6DkCXMNڏ; 65-Zc`?iJڥB +[ebj\!50ΚǀIӨՎ+@[9k!ŒG|QԵQp׸Oo<%. 1>x+t rkO :[4calxAˁWSz5RCiE Jh7BoA]& Zy_Y,_&v}xYB1&Q{63ͻ#;;gWyUJR,+wi_㿗UiNPQ2hEH˕̪ pM|M|J I2ܠyt4pŃu8sDZ+ԁK|flZl~Ur]u1z 6 x#u"; ӑ,qWH~ˀɩ]I$ 0Sh(22;=莢wcE53a %8IXyE+X* Y">j)iz<Ԇof;0Ibiᓝfl?' N|J%~&";B޾m'D?cx࿇XS͈a/r$eA@ :DBxW! Yl=Ԗ1rO"0 ,QޠN*쫤FLelb1G[j/URg YvNHGԖ!G SČTjE +]Ѯaޭ&=:K}5ix|-_=3=^j}HE߼90 "$h'茇-.⠀5.FF6\nN"C&|V+,SeyO28yE!ɛpjR#B ! 4zDTYStDHۗu6=>bP<^x̷$.MM9@ϛhhkOΚ)* `g} i~P р}~X@d9g?nbnNy6,C&!u;a"J>W6IsǽklɅ怣dx!Ryd0\$!ۈq䋧MyxMUqRQn}d)˩|CZ(W+=qf]P=,H/\F>& EVO*/e[Fq"dP5u7[$=9%272NpBl á{`?B&ot24jV`E\_,QB?D<.DS_%>)ܰgO0hCI?,Y|H~N cJNF{QF#X :9F.zDï 6pʟ2ȸ9H$C@7|X:!o_\ژtTv%~=ŋ u{ßtgl!t"3?`áX_Qm4?8,~|$Nf.닄.P 9mv)hkbڨ:k/0rҾ٬q$ Vh:Tq%VkLrX ]+4pvMڸ £bsVzUSyi7Nx=gkplNV_.]Qr0!=wdˤNaل;l7p+ .i-mF{&Q4qW.O,/k*hoKL!ÇIrc)$w9xO.ad:95{+W7<ԕU:딴 ))-wv4*`$˰ќg$)0OΆs̾ѯESoBW]퓌 6Ny2X+DԐ)j ?/?twڶZ! gs`JFHqUT$ԍϤ٧DjI3&=ޝ,v(AWl/ g{qhruУUnU)H%JT}hzIs9PkѶ_|? 窷kP 6?]EPiQꁩWg ( n9C_>O,ې=9;8=)b s$FFQqkR}/4k0D ._.M#5$ޖ Pkq8a3BB=bfeW)RR9/A<;W?y?juH/̤/SyW/ ~b,a.ʩrsIr͏,?;T,h<8"kj&Y/\>9AMn;G4#+y&a=2SP1 X}8M;i{@ܒ,ܿ- Hł1T x#j>qk:g+t_o@7*&'f$xM=B|V6mSe_] H⥳jNHvG[- ek XVY kK'owW>Jah0Era{Ne-mN'73ݢVzfҢ+:tZ K|2NC3D]e;uEP~;hzf){P d7c׼ߛzAicL'&5Fy7V{y~us  D~s`VjH{*Nж)-Lk4X f2,3_D'rj4^6&Ǩ#(-s朚s>9%X{+ m,GVy#kN0gWM_Ϊz6GJg4lJD7ƱH[Dt9ͶPjb "˪$yC;ZƋ K D . jׇW"Nb.W{rCʎHŶxLSn 3I aj~<:Ta f+IM^8XWYPs;4׈OLuĚ 37ۆZeR?_(4qD)piþa\ Mu8jU牡2صb_6;yNx ݰKV۵d¤ [+,e6]S"w«v,#E[}Bߣ38ƥa^)ړ2|Qz\"ɬk翴6ST p')PS1.e\&铖{!d` dnPGbp<Ӥ mEva^+`CAJ=_$~0_&DblKt8I p35,OB%;"E|ɜ^Aai)_ag?ȰU-/kKV[!d TEalL< )\"ZK|9ZZ"cFoVRD0hz?d Zrq.fSNK~83lڝ+s7IZ7N|c_L)i\rL?)28:Mbǘ=;=Mh^0-֗<3Cyp *Pl=_hO[vb%/cqxFް2I`e HEh 7bb(%RpAl׭9:[s47Њ:4y6I#zG80p@ p +1Ov"ex06tC(A;?֬*"7s}q kM[x㬊3<UE V%+4I;<=`QKͩjt hR0X@tO{//?wr-#55ILŰvPve>Yj80. ,^^TGMɹ8=F!TcIdq(vSj FWK:2b ~:^GI*R?LXѬ1Cl6#O݀NYx# ױ}%āXXUJMfԪK}aOeXxBr9 j8)ھɩ/PE 7V7ПFBӝF:>X׸BY!sM5OyyX^u#DX)׍S ʖqVl5.<~.z8XMpmϦ0aaL"%52OTQXM!uEZg 堎xGMA$zX οc8_jVò4 xrX:UټB49i'#Lۂ~I$6Qt,YT*=Gn|ԩQwt1"'دdٛe CJ]- Ўɧ@] ś}`D*FTnZ՗d5t$;. ybKE`V\iZTJhtre}x?Fx>\ $oΒW]O:bv @EV _ ' 0V´WRe9u.eTUvչgɠ2C ?hW e tAj~K8&qx[chNOo 1Tw}̯w^BM˕N`Ua3ͬ0nk0(i"\5akAZP2)9g'( A.b BAx"I JaeEI>*祎L84s*ܨ`50K[ …(I~7u#r,ӑDg[ "wʛl^o2K"#j9.!{i9'O,g1FѕhUdfD Gw 2 YVKu-Y] ʠRD!!\`t&Iw yф8P8-`j zø l8Nx1?}$vxx!_kojEg_E;Gǿyd:Ad6&-9~#65#}gGFs%Ȏ>FADΦf1p(jj 6 qE4˓%Uti;AjyS&cL9 yE~8l}y/ݤ3Mq;> ElUOQ%?epPĢ6;f#>"|hHP{Йf!OxԋUabȐ~yj8WI\t*+2hyl2+4opOkȢN)C8/|nݔ^x[-!\ĕ(*OE>"TEacPBቆWoQJ`꿤RO[q6vD{Q̭aes<"=*Ez6_LŇ$D7%1EECpдnʃ`6Jn=(,kf,i't]E.36f''Y7=MeTeZ hm7y 76IlhT$פs| CY j@-a;gv3cDG?ƶ6rPSdN'\&#|^|)``T1D?6gzrg-t=b4/6Ϊ/EaI+\s' k< ?>Ν5,K0܉Jl3e+ e :LZɲj ; TM*vCZi AaVra97M k4}9g#i0>e~LS4pS!oΜA3>J&whHhPb҅O IMaelaѬb,"#.X.$ n7.WL{<@IFX,Ph\ K+HI@0uJm9V}|!W!K6q- 3é ϶ N21rب$Vϝv>,,&Lk>VWw-{ :JmQ̪69 ozN{fdHJ_vA6 <֞[c"y:x省_T[)p bQʯn R[eŴm0Tk䝥݉N9PukK3 63[v&ma\ +K+}sp1m֔ðNQIL/T򻂶P *)!F8fL PCqVCOXb9IIh1YS JyPtŪg sH՗xGs~1ӟ̢;L$ͷ], ]΍\/$Nې:"c %c='&L6&7W&#* _ihlGՄmvxuBFHd X d#G+[ր|,kx- 9k#{2&hz*z1KFeZQ]}&}*<ةwp+-s $+kV}r ÖCLE2ۆsJq<7c۾.w-z?CTF6CI ;f=4?iM?yqc1@e^G73p4KQ/śg3rcM}kcTL6sg2)Iuݰ 1^\N F@t'xfY:CK=&qP"P \бF?W: IjC4O>x ?Y ~?Fg˳LA#yY۹P[ɗӇW)uPvō 8*L!?A:iƕrC^#<&SpZJ|εL^In1:ƌSB%GrDY;1㬮k/`VO=9SUfi9ڇ*u4Mau~!iw= X2%`{Ǭ܀`Xp;CM7=`vVcg_pt|f q(0q4B.9oG3Ra)H->;^ȩi)1 1RА ;"[l8{ٟsOP}#*L],hW_kZđ\Ґ5;3C5?4lHݢaq$4B Kcm7qkheuF;6*_R/c!su4Yo;zd+ó 畘jm!=| -6p[l^2|dGA0Qy2HsUyv}E,q]eD@INdOӶ#?4SK\^G}JY)q"o "vGScrxC$+oN 1쾽ө ЄZ(\Ԃib__K" šC0~Xv&NV36Yb8y}z1?1JK^Yc[ urDv* ܈eh]SbX\\s`(tHbPz>.u*R.m'9,B 51ITg/) @'"ڻTËrR8(MMXL~BR:ވSw!uIEM}5zXag͆L  D] Û-!t V\VP(}&vwyMѸJ m$=us|<%l/u;T0f⏳-kĨ"}$1/)rŃtTTIӏQ]1q q0Jּ5ŸYSSBh:~cmHY+oefѣ PBSx6g^H<Ԇ'֥6'1HqG ?$K9 g2 H+csjǪi5+%LZbz&C+DUݕ]v70FtlQ9'гf0VE$omC3},$ӏ8"rlX)SR˦S{Yt 爢~:2=N=4V\A_ M!06 *2cE yf'Ũ߁ͮg&ƛ *K*u#Trc rtcLГ93eӞC~*I -V9zRb(%v 71nD,KqNdǚ2jGWER@> ?ɹ|!\LjKZ=)NҞ \tc+%5՟ifΌ>V9MsE|=0(9Jo4g] /Ԋ9^>P~v-^8H1AwzT^VT?`3Q|JsRaB*Dg7\^${/)4X~NQhCN/v M@!L 3Gl#5ѐ9uoiE]vH5*anы1+De u"M$;&젇K3G ݌n{kcdoo" YdڪzjsW5132J,~?=(UxCg7s&y1EUE$zP,[7I΁8rOƕßX>kL%\$Ǫ-2ŅЌ`ytQc y ='%I-xϳ^ EGH/Uo} %: Z8kƕ.EcO44z ٙB^Om}!sZ5uHmc0സA㜔r!ҭ.7DHEJ%F椽VM`ryϼ%;e_\]qU2I"%"Β~`L7,^da=+\ ~i! 1L 1ƼYC95S>X/dpÕP\Xe\U;2Au&JDCjC'܅K}3祷{k=TS{(w (I,.Z6 d^Н\`;7e~[}|!?GB+»!/uB u '/3`_*Al4xkI1Ӡ\ |Q$/,@i8Sm")eCrTOF]67mXe>"xngy`r} O3T(<6]0+5D7 |T(a4~;eA=jjE?s.zhuP'ӧmSSĊ9́i5/E])^)wY2#\'ܙ0|Y,a*=Cs!3*0FP;f6/tDh)ܢbQ=ܻv2rrvg㜏G[Њ_VmQetRRϸ9Dh;ȦU5&ľ}ΈZŪZ5DYOǐ&?۠zѻ3X╶FǺbT/ tW06w7J{/H4w{ҒYeecOUj`Om$>2A^@<0?,G)|Ewj@TLDeQZ܀9Q{{asep҆?s y&g2vNYػQt[%Ԇ696{~+fəWxwhV 647XEBA8qQĩ3eϔ5o|mF&jʔa#! q*gRgQJ#Dvl.PeH1׫)6MR_EOOQ=pu=v2X(n-~ݕS.eEZmjKK3CksuIdNLGl0p68h,f'IJ=@ߗ<1!=(0S6Gle,Z=ux+ |1.< iu^kq D҅;j1nR\6b⸺dV{\Un3=>3Tq (Q}>cnO"&sccplH' i2H0XT4 KsLXӴCPetu]p3ty){[J$ܻj=<ՙ0WӤ5c@ev_Ek yOtUGU*ɘ'$&ףdm-QDqrĀCzn+MV%.NMJaǰgUjgFAvZ#ZV4@"pN8Y>t^_g;gy"ᾡr@zLM? j8J}Gjso6(fRG]!˒kΔ/{Y֨]PssVB1ηPPE.kKs垡"n͓L8;PdXK#@iM6dEo al?FX5V SW|kYc,pY6m@Ch#. -I]2^[Qnh͚,T:3ixZ<T ىXm`:$;}ӁR07Ҫ+lG:}No qohfY̋um$ 9ޜuTrs2SBݳUwJǾd#>LZ|=(*6_Ćo& M8T=XiJ K$|Z8bBp~qqX ;CT/}~&Q*;|"iWC#ZY_ϕX+^,^Ⱦ$=duU|7=Vs~$NJbIaW D%aI'0vWaw'#w ]C[%U aj[8Er:x0Q8M6xїI]}}c_.Kfv y uVsiOgC} 'u1C!k2#>]ChH9*L^0'$λ7jjDU+_뭼r,Z0 ޥ9; @2>56Lt{΂"5rjCT|E-Tl4&0TVI&{l!B+T67C !'Zad=uW Dk:n ,2ҹfQo#*]l-Jyﷆ9MWZQ1<4Ӭ7W7(.) 1ٮQ[ZĐret>8l]fx㋅gn֮|3(rNO:'/jt0HAg"kJ߇{<(XV(JmˆYXd0?V0AtPgl@'2} xX:sϑHB!ej&lvf(L*ؒMd|`QMW`w$o2k[ XqoC"!"b *8(NUro(qM0@JCV ;T,8'<0Tk)x[y,BXKIE m9n/A(/fYǔ11衫:'g.-ҕ[Kfm^#w([.T 6O*-Aɘ"%XSѥKo A8;$N9hݰ T@(6.}Hh߈ni;A;\$W>aSeBcSn9<2[)+FSj>z#jć& Zr&“AJ+#ѥۧ\w#G* 0 B^F:,jYjt"hϋ-h: g`]09[& uF"LJn?a.G)<nL)s;XNuBi)B@yt cf,=HO/j{hYIoڡfIv8 F,/^1O0nYUݺw VwErVȶ.f" NTUƂ]VY֓9븒NfbHŢ R1g G6˙AW450ð<.@He] "F{42R.ύ:>rS@KieKPŪ!g4i`;bh7羍,"-;Yk)#ffkx!HtXf"X]8^B_n='˒ 6AcSwdHNδ,y|8E˕D6>>hL9[ 4Qs^WM+.Q,yQa _Mȟ#E 4HPX2{5 FLnIGc͸*TH[ ί91&P4pMʎv%w2kf,\WNbqB$Br]i'89I5ϡT4fMO=BW*}$I=~פfЀ 4sjTc饠QZ,c(V+sC1'1[z8+ 1ћn8/?7sH/[uH.E!XhX8~Q(F՟`,߁$-`̦X9/&6X,[ܗ 1ʔc.+yV}ݐ t= *svi)^4v,ofu㪼("zO~S52aHnsԆʩ t E/?@!q2 |/Ȭ*;,=[J8:o0jpichIΈTP)h`3Wq7 ,ޑqEM,6+->sE܉7$ۓ`>^b"a! Fp^ ߅[#Y7 ѵ噗*G3$V&%r큪;MfCO}nMW$vkbߕ̧k !!['X ihἩ[tvS !s=1oʍ0]4vhCt8/3ov o7 Q"E-axJ&ܕHF8O(V3')sl5G&Uum1߽{;Z@?g-GBC^k:$G4yΟ/m,xX'2r1cܮEP, *la,P$dU= 1YqIkn6rP*ܴ틙yf\$S"c-M~.&HfC S=b>{6᫅,-':>SYkԯjJ!zޞr)B&̡ PM3@ ACS6h̻^䣂xW93W޾@g%FR2RcEgqAT(ubCgPF&Xaem\t;ƛF\i;$' +.lGM536;:F"$^IJ"^CǰH?}8M! 6@=I16RrF\aaBȏ /{JzyvkNMt|;"^TSmm^`qQs{x@YpW$hU_PY?h䌱p0?tq #&"l<34皩W6: sz`G=7>]bn<{y`+d1Ko1^JTYnq~*WE0exݨFEEI`OLp0;"m-`:u8wޔ^VWI5}Gm2pU<ez˂tbAt9!5zJi5~v&$ZȢ4)uKV/dnwS vQ9Q`^dSj/%c #rĎƒB7ԃqj/0>6@[5|,LN-zӯ V!kgTf ?oH$-Na*2@OvUI8.(Ы׬@f ɊGHԜC&P2u F-NVJ/' RV7mY!X; #e:Ou0~^So#ņ)/wmiQAOkL*^YG VAZ\dvwAwE[r kCqs4,,aIo h;pǘqPm4G[FE-־#.U}_{HZ̥1eEّbZFZʓQ&_k@>OPS,H2cҰMBDp8!N4/,`943vS S~hZYE+HF{_մTz~ ;%M(}QzG!i&ujp72돏ߌ30`gz쬤cKeA%l=-m{@ ¡t 4bƞe=`϶vaBI(Jz&oAW%^!4i]?g}|C7![Fm!$ :)hlYBoDƟ?;l~W%0\8[̄.sP1ݹI"?%&{6rgբ7(^7K/zE {*kUpaM\?gXĺ~[V"Q SA^ʂS7ʈ-zkfLHu~p Mw6bR}+T"jo+.W$s9_qoO׹ U ivn0 Ƽ* {^zo.Ӷ+ Qi\ m9wҙyiؙc'+ mj9z[pYRoXtRS/v|q6:N5!c{d$H&|:o'AN |/TAB w@%G\$:o5,|K:xR&~osb۸SAnmЋFr-|0Sԯ,R@h?6;cl ЩWWM\wpZRR:q I %x(.m$ػJXa,ZL>DŽކ͂Fi#\ n;Mfkp sxq_ [q{adC?,1<D=i`_΋ߠ0<=[* ēui%ev=\r_󰌺z6*DU=i;W01摕E+kFN, Sl(jaFO6p=}f єkt$r/O"33t?Z*n(6/Mq$^nY7r굗ߖ٢Ϻb,(װ^E>!uПY*yxj`kUK#Yt2t%4E$ϝ~OĬSua\9[wh np>kɘsUSx]l ۻRd4rnN^:?"n!gu55uf\3{c\fN4@,sχ:%#wm:09S8gD3b' N97jB뒧~ h8=#ڤ)/X>cxo N &Ϲ+F{iQ8Aռs{:S\J)/ܲ*L%;9Qbܶ,2 |'c FZo2y;Gʝ!mʓU:#i^l Q.͘d_-˒YU-NZ YƧE{$|GQ<,mȾ|P1G7{WVPpn;TE2lXV Qba@_K%<=f,ĕHMe;uOhtI "\sgI=>7DIJjLbhۉy5 w}p'&u/!v#$P#ȕ8+/t쬠=# 0[nm,=v@zD)ЪY;CjI];AS+HJ*|t [ - N޴ d/|GVI&OW@)&8޼\,%cnj?WJ8R\,'X|rw(i k Mb).5 qԁ(6CEـ>R@']x\YhO0L%3tO$@]¯0tPA/'%Da~H޸`̚:O8C]?(CƳQ45C6N4شV25H#s-R&]5Y 0+P*AWS6kOtK7՚o!c!pIZ8 [咴QdbJXp|{]La >QC @zpyĬd0S4mƬzt+Y_w[!04. 5B)l#1$:AKqK6$/wX>e =b'U%z cwDrW+5.3}ri3F$bGFC*o‚߃ ȘWG N?f+r^]:穼*M-ܠ5uJzaBjZ"uΪ-غ'Y1a@`דC5 $X2p *h rN255˄);v}XTW~:KR)eۋrwVo!!aB"}(.(`iQEj5;FU:t:Ùv&3OBțdL^8zQ$z[a f,nDvԋ}8}GՒyYGRCn.^\OK2Y[n}9!oOq/ Lj->Cx(`⥓=JEF4}BQM멲7YbbM?'SG\W-B~, XG`vz&SV$=AGRÂBMz1u.S)ޟn|+?=nJΘi֭E~e-n.z痧C{%>.a{q7*_ke#ң9 a<>X!V Ik42flB@F>_Ķe.A#Tĸ;N0bQ\坋Pɋ`NjJcvϫ6a0jtFNER#E`agbtj0Ւ,voS~<#AP fG,!ah:i]*+_#qcS~O"Ue^ i29aKTWʢB,5[s@ȎPE)ůW)=)QwRi|t%0 ~|TuM͞L..,O/ʺ։@DD3蚶Z, A o ҩBWU1T ?jbEi ߧw%k/;=isHPqM?^ ÑXHѳ C4 hy} 1 /f,:"LVP> Sp:cљ`xHۚoMoʧ ofUTΌkļ*ob %EQ7+Eۼ|h2g3k=B %0ޑ{=^NM4Zy ғ%-f N_;g.8BQgt]Jϐ2BjWcW[l0˨ uDМ+?.8;FX#_jm^;jC.~{R _B/5M. t >[|Jߨfa2~IX6s5ŵU)Uc1ʟ#D},JgWPoW0 3NaJ&lշhVzi/v! 36)z`. 6a#!Yv6z`#ڴC4%] u8[*1*1eEpRW"RxyLBSEB}GD9|M]ߩ9ipD TcrcL9YxqS~~%{kӢtY0aZuue0fOOɂ,3M!ؿ(dyڰ\9!GlGP|K ʮ;ndž2 "TvsUm11~fEh\Zgږ⭌YݤQӇS /¡ JFىpQ@u738vffj8sd'3@iʰ?j Gw߁WBOiAj1liOxH,a5hI R_8Dvf8z';FɭŦl@4gϮSܼ3۫eA%2KV?4~S.y,ʉLytFݔ$pgi ,?`1qi!`i4dof&fc5Ƽ`Xp<rq^߃ѶjU\фIZVyvU?˰ܔ*x$3l,߽H)A zH@l7C\/$46:mHYuNz+H έM_k W^W6-i#MoWS0bsҜ: NɗŰ#%6ݶ0~e3}U:Y4OգP#UiIgNGekdHw 2;Aw4o `h5u \ Moѷqt'rq?˥O~\qA߷3ʊ3a"(uu>t9׺ -Ff/ِEWO2&ZN 2&*`հKfլno|=͆Rr} j.F eKu}(|;}]pHʣ.U|=MCѐ`C_2bTO^}͆۠l )˚ܻ9NWh6}dobW:>V({b4 _6M h Ǡި-X\~'aA'Uff𩙂8WGZBJpbgU˞%Tg:A&[ R!XDG)}6H -X1эC>xⳞcqf>~Jrn-5Y,ĥ\zzy3Z0߁e$F{3ݹqX!^hƛw$)E*}[/K}԰s^FqJԻd]#>|KKᙐ7]1’a3Vlr]aŨO!ThsD˜rA|&R6לɪ) oNq29z6SJm///}c"X>oo&vAu\{CdUVnU#YGF3Nʝj\(b N&Nb"ֿEf{Ģ~=x~ױ"[ r: e(dMdVr(lUSMU%߰^Ar2E՝mox>T974mmT>wv.bJYE*680x2}JδN.Mskrs6~iC|gfӜZ=mT@cNZ- ]z ػZ§u$,.< ~E鋲נ_B`жJ 1qqCnT?u>Uf:D_AB7d"ҴbɩGUT`ݗTƑ7QOVdoCYI@zNO7пiYJ["A$-UJ}4x\rh3I _e;#R4@H%^<_f>^m̳{q;[:F4e6*|_q-Rg8 Ճ)J\H \L{$>3]Jq4%.OjQC>hccpSJB3@zH8P%SDq`ɬiK%g#]8P:^jh WY,Ksfq*"&\(F6(KL@;jH$$)K{ԺmH%=ۙѕ6'^[+.#8NfZ4oa3A8%b SI=?`0 /QwpGG۵ڱϋ 8BQ }(ZsZ4,8qju@W74d:u9 ++C^wO`%qR?NLiGc!vɼu$8_Wk[6 + - v >|9 u8 8Ģaϧc:/Eʂxpk-1:f*?puA > 3寬+*k|Ԇ{6gR^>S2n4k_ف>j%qcy:h|ZpUZ;pw΄)C5Dhl" b'u `wgx&ޘt(v}lVx.ZRH ,/Wd"4/=f:DB~'P?ۮp݆<zoFT8:dɯ9i\wB_gL=hgȚ^F@ߛou+r;ӕOOKt}!u#] \=͹$ʠd!8jDގA~mUssD\fg9I=dڡJyuy}oIdt@Q\!*毾rF#}<7}V?WIyN״:Y9_pYhdK.$IŴP,_[ ~@Q!~tkI-]JT d1g?ħm[Ƌ3*yp.S61Nc#?ǏgY;. oia ީ;^~gr,O|ޖ>{- jh ?̗㉸8ϔ E> Z՚tD7'3/O'Dٞc+t~H>-[Մ/^f6X,ۃM/{Ȩ|=<> 8TJwĮ+pyqqi^쁟S݇p}kp} ~!QЈ*ۆ}y7-+V Vʽ 1֭"E~6{9>Ylbch;f%ZdNW>3&cBF1 yQNkPOMTxXUƦ ZwB9m@j`)s,\mX6O&GѤ\ihO殣4#[̫ lhLRоebUu_05T8Q) Qt/̹Q.5mu.^T+Vߛ^H DqE.wB€cLwj:6ȊZ@%]Bpy\8"OQS.Xȟ6}( ғ΂WJb2l>_qIltǥi4*\`DQraKy3!cq2R9.m(+>5BYzW2O^Њ)7Cohg lfLU*El?0[]Ndn2M @ }6@ 2GK/ Bl'FM6r)뜷wxC"sp2-NmH`hbaA מG(y ȥ]/#%֭CTQG ;.Q!3o "m; mo3Iܿ x (&١/q9=5݇qA^s2ouiCDzʵdҢ'>9ɭy;>l@P*xKpoOx#}͙Ei3r2j.^wkۛ_Nu7b:)8R,'\V,xOS c#rhx3du[\@UmcJ̕hάSs 4j%Mgb8N`EV1kE|pJCv"m+=1b';Umd<[PWC!;a"Zk~ ΀1]{5gu']}?ǒ`spXz!0]ADsZ3eās:L署% >VWc3wpnԌ1'9Aw;M}DP9!2ݛ !7$j6g P'!tkPEL't $qĆiF0'}X?}ܸMqr%R#Fj!5E>x>j)y3B y#^46p&Kh`UR}u-+T%+$xY+]<-qWr{ 9nGygz*C{Z`! 5aZ.k;|zQLKI&A ?72ղl/m+Ħr4bw7 XkC'umW7Pp8.jIw٣z+r'p]|`⪵Fk `:NTK `j=lGc*  4U}SyMbW>ɖ) ZwxaB~aΒִ 7+#l̾f90*U7?;uw oؿluPMY̦G:6&0/Mf2?J0׷&Жp-Dd^oY8OÙUH-l`$͘WA(]sijbù@WuT[ē~6#BnA7laX3SDML['M] 움 a:`rU`_yBAEx(U ӣ؀#o E5 `X슐xqiQ B*F);rkI(/>*[Ý-Hgo kYwI>,WOC'1<N>qcViR<DRTE}^MK&E#%0F_ |gBDBa0}f@I NR3]f]6(YwY gDWĸh,J՗ºrkfcr)%riI$K̻AF)Ԫ/oV${/wHphՌGƫݖ%$~C9W$> >X(x />BW˕X¼lǯK)ý?0jFǝiqrĢ^W:#0ml.fOIU0koFM;Jr={CWZH-h,*DڲQz.v[ez,RGOGmGsR_dcmOh`5=DeZ 4 k[>$#x!8eY1A)/vHSRv9L8 ([׎ؿp='7<%3bJ%?%hJta{ѣOs":z(Vbfq=`@cqZHMΘa:Tn'y}޼,ӷSAF_}8Hf #0plќ,]-rI,z۵NKZ1r;Ptp paXE8 5/4u,&aͻ8oxj]gX0h#=rA1o> N2q:y5@I/b;ѺmEΗYpw-3mb[le{8\UOEKw(?--g;>^DW C:0*Ab Iw|mߝ?42C.S8 AԴT%{,zJofArlnf% yBTjzYM~gN }ow-aH;,?F6#LjGAD+Ŀ?!l̕brT&?+ӫ;u1{c:7{ӭ Mpʒ2`F7(>o#㉀ԗr?| ], m4;IwQo!p&2 )nu֓/i0:) 9-z(W8m 15 \GZ86+/0~{fNuZUZDڳo9 9D;se{Q0.N~%y/[UB?lєr4si'õ'O330q7>h/_UM!P&p{qxҀ|m$bڥ8VEh& cx6){9q+^*#9rH2'P^尩J@4dRhEp`V+~<c]½ 8bY'Bu}\!Ru7 ㏜}l*'6`WW޲щˌŨ 5|n7r?~U>Yj;rq%d;t'S/{\=ѭiaBmh[QHtҋkIvQej (vbc3쥀/x`4:Gq6lB_/V89z&k$}C;X7gwg+[R\=;x1uh O0vE0 کD`HPUF0jMYWJ IpFg!B͸d1339ظ9JE O)1QA?W(DU_V)--SfocExg ƪȴ 5=G6?@nyJH\u hi7XVz>O&-,]#št ij6>kOA!tu5;d](4 oyk[XT,yaNX:e&*?_$XNo;Lo7hIa=O2jP/Fkumq]R.q'cL'Ƹ61mpc{u*NC D}lFX+H [A5`3c&wǹT gLǁqӠژE:v=Σwi^>L w݈ɂ#2XFX1.%h״'A՞nKF4򱎞\Wk6]u4{d4$\3Pj h[\-JV# P揔hP aJD*2PV= ! Z0M羃5N}yKъi9B-E~ EJEw~`RB W{^HkW'fz{^\ x$wnzzX JpIbmz0>7;ж^haP=Ibl~nI(?j]]bȺrˍ2O?xM`̚`Sl$:D(0H_ՠI|rj(ށ2JЛiQUw$lZk(z<@RgF8'tܾѹCeCg!mZ+p uj]Ҳ+T͔fÑ?%Hp$miR7cZDKxie\. d4/֢J5)9?X؇WmdvkJm[\%4JڐPpHyY+ClȂd6ݠ$u01y<8:/ `YC46G!.0]uނ^ti m4xBAQF5PH%͔ίp~1qA!sd?Ǐ5v0!#5_ 8P|2uHn5Z7U M IFI_L~h`X<ٶ~I@ VRk/:ֳfVDT1b;Wv=Q31 NY{Q|ʓÎV^nL+-7h1motigk>^z5%z$p16p:s{/HS5M&|1J50i:.),~b05$w, >?‏tՒ'JRcG6]!ׇߎ5>I~XYeӏȮ` Q p &n)!al&k./{Nq^4Ȟ5}zRW  ,rŢ2M*=۳~Cd:h Z@7>Uk e–(2_Ҋ79F^MahYE}qffB}8S Z"LHp tm~-qKL:1md_ ^bkDh 4!R-kuׂ0$$"s9 cz%z>MQ*F;]i}~>i,V!)Y'{u}塘 QJR04fz/iQ rò!j ệ.:NGx ٩JY#X~og68]/1pՄ[4$^60LR\JAt]&{پ=mII7[1r2QOYN%Ծ+ [\OMQRAn %ȱ ۈCe|X੍g_@.sfma ^yY c$vn{%Tږ|"h4G~DpCjpZEL7XRASyC"dо O>m<VFPmߚt묰 $. 3JNVӱ%fŪ>5UBbZ@ꤾ';yh.![h0~@QX[T([|eQ*Nn=KD wB?9*`֫x ODu9ja͞||CmAEXΈ7Yǭ4'!2OF ~ϥ|VFP'POF 9$}(%f+)#ql»y~[󅲤uʦ;3-HS6GЃ"{o?uW}U?T+`w"dj[GZ6'DŽnPL[Z1ä)Ch^0\%˺08m\^T!g?ƺ^q1f_oTy@W'!_OMYلvxgq/>n:Wz>4ԕ |=:=H.vn '0QkPLNX^d~MQF4b q|Y v"C5b#;b݊ ;p}kI`QN'_}VBS $%.5UeZ?'lW5ųمX%)FO2+>v5bۨ/3'i}uQ>˯1c+xw[g9a(d' T .;4L&)bXV9/9o M R>] ,O@Upz60"\ pWm#*cFI+Du v[eHj)apdeڕF4flIq EJ\=2LhV%Qs{ baS&S\k{x'tB[2 $Pݜ ㎳Kb-YƯ[َQyܕXNw=p.nf mږ܊%~JWi"dxxX(풏$:!4B1XܻI%8\X1bZ>_h)au'; ȠŲJ^T mBލ }8{n >!fs5t9U*q"cb ;* ȹ٠}/[v`\+XY"v}Ҙ` J[6C*<`eqJΞl8eO{ OMKqs~Ő?Qmnߑo*"q~ C|,x ?px87qmJm8V:JXY}/ qQ/5P2%Ҫmxh3K T{oq;]a1/9,eXDޡ[DfVxuw6$Иe 5hK{2ULV>Y,DgSeG tI c/}8я{OvIGF }tܕ>d E;XClɛ/@f݌M9jr5כx ^f[9ŁJL cA`Lz~ _ `՝KHo([^sp[0xQQq^{VX<$t˅( {f2dN%PC#qy}Tﻣ`[b,k|6.-DB&rduRQcID6VshzҶ)vUP&!#e 0Liq\_O_MM7ypfcl>NJr܀VT3JRB#%AgF1ؙQr#,GB%^2]M{zqjI/S/OadB|uTS6dt1X&>^Sr{X$>-L@O5 sHzDd8tÖ<#% kZқ_t*Xn/m+PԶozv|߷3uoKE{<`EܑA bP1+D ),3l5\enn1^y7ܕIbLRl!ywVQP$ћbV@E;SAM-yYpWK?~*>Ρ6st3A.Pp1A.QRMQ59mtNDU7и|5 lm@LcšCgڪ/r|t/X^)LYdLjT% `cLWfL`ѤXcSJH8$gqS̫gcc:շ-?tG"8uvMrbJ2QfWn~]Bl,laOgj7ؗd&T 1$Х%d[oԇ`;if3,/oɷKdZY#tvWQ@Ԃg q 24h{j)ўۅFjY!wU'kK:8 E~q17̋/Y0ƪ_ zKŠl|4R&bmT'FTu r +9x{6m`J9W< 骛G"dN %;3Q`pgv]i;:$[GV+3E>t;_j"IH)v\a>y`mA<җ\MKYu6 |xoڡϺ^UTFzJHl70й Zx!$&,,JT&a+ɛ>_Z{Rpfer<˜Kb`ǂW 2LƶS`fL>VmRZ.pSeϣWhj~֘!9 *t*8OQ&P'# Ѳfne\F, l&fٯG$$ESf8h&.AoFO (v3|~dKMrNv.]2xL@i,O(X+SLX# .:R'P0X}Şmvxs|2 S8xtOZ)Tgq{3k!M,{[=ڊ\k1AY"Uj黚 :/}qoODZ JDtڋ%$~fQ^#91 -C"n&v  K=}"aF ?wkip?=8ٿw>oUolQTw:~ imwťW;Y,LQ}Qwxk¯ݪ!juۥ!ۆNMtJS51߈m6nS={$C_k|Yyg9Hx/aЍ4{ܴ$v;I~RG@sQ3ޛT(I1è^sD6M% *NQ*E}hv $H?h.>L4a.}o\DR:{Y~L:;M ن\0.;N25侧 f /ǻMFBY^~֊fϞM:{uGjgVߘ%νwS ڇKNIpP넽Ga 7;tW jY0$cJܑV mpȚy *+g.ȿvHx9Wo7K>EP )_V8K@͟c1d1 f@)gߢ#Gj%"vpL I؇B!PE"`MA92n֞P=PBT#q ?? ?EF%\2rh'|JzSnSSx'+@RA^ʇ(ilyy2 oU T?Xy(B θdI__@:Η 6y+FSu",I,ꖟS<M+ ݸ<[G8iCC =[pKl|_2x@QTfcf=k 0Tbd/aς`DX<3|FkpHrѐpMۍ kݯ'UA͂MW #Eر%{QY1|~Ί/ΣN)=Mϖ"2 LβI"i{daWuiizwR>(fL2م~G=n=p'<ώz6>r1c;/K7g,:NhSrt`͈}Mҝ('5)8&WbB _8[T Y|Kغ~a.*k{X31BbYn#2*Chx}o#2{*~<"RVH+͘qxB:15>hD AB0UI RSb yzB԰5BRzUd*\q΃0)v&K߼Q@&%;Al\K1Xm$Gkye(s%*`!җ6,uPSmNcel%PDŽU/]$[͊᤟r__#Q7>`!ny^:o a,S@ptp!UeU+`APF .*U+E_ۇ鞺2tt7Ю&k ;CʕzI~Ɛ篮OHXAT2װ"UV )8/54T'ֹ݇ir*7 :%r鴋8u`:ϤR9`+R1 {^Ɂ _4,$F2ϼIKzx\g5zz'G$Zmey#3Y}wZ_z>%9@:=A &15? 81f&F+Wq.D0 y7gD

!p^}̟PW1TnQ7>-Xd J /YNfb|nA%n.:M(쀫oy69+) Ma~㭿Y4Ʒ\CzRk קHZ Ao|cR6Q]{C.] y| Ȥ%J"v6RMK{5kzSp(Hk;j٣J!2$ تy JJs /tCh< Q)xكOL!a;}78$zKcYI@@ɿQA2d]1s];>A w 5oK-/嵌Zɗ{(S]i0m̛NYJK $Q$픬L@˙[tIt[Y e^Sf7kTJhgmϺs] ]({_M62Z`gb D`O=Q}E䨸hĝU\xM7p.'&e-G1IV1LGyǧۏ*Bj]8y+<93$CG#4@u#O|Spr^.谨&vcAC2O Adō$=:Rr0Di]2mV,e_'j) sM@,&1/ Pޣ;?*l\*@|F~pBOhH0%z`uZ,Szr~ڸ>{x%5TfiZ=/g-$DqЄmܡhW*4cXR8NXiF#/ n'}s eJf&9{kTI/Aݗ̲Vtv aF]-6x ~թ&ՋY ]ayR2 $foҬj@p0bU/g!,NH_ύoPe͙ m᜼?G |N^l-P${2D䌏ӎuc|j7ØYO&R$7~E|a-{5I<4e>ھEƁ°ޫr)TyVcf, R@4輭*}?~8A[rϰ =C)TeH' tؽI4 M:wew0E_\料+ Whv'zmGF a5N>HKs~ tּw&3Dzq<~BfKWzүF+{.p\ `5 V#!D7CHY#$HKj)_+#3vUQ޿@!ߕU-tmGND Q qōZlI^Ii痫t!$p#U5@e!R T8ƪ6T*ެ 'bYKz*o}Y'ƅͲ35֐ sՍFgarK~B1d8r2]oxFl4zS5 ,!ipBD@eZOO`6H\$(4'gşrLXD,&nzb렰m1y 1bJݰTѐaiƮr*9ᄾP+]Pi]1:yjPAAFk1%>;<)9w-h e "IU [% g+ ;E9/jGufrIRLwjS*2+FڪY'l[M;%ߺAP_pLV :.Fta}&L{7q_=w=37pr0v$= pPh&NEɊM4 +b;$=d.M')ӏueg^HԂ73е<Gyfv`ettyaҹ`.~fJxv ?H/T}2 d[ǹYϠryڇ璸;;(s%Wz)~ф ^@R`=<V3K NA$W0u%c[_TB.sԍB,h:`y2 Y1Xk`>B4~oDh֨:R⚄%S>Gp 1v**QV0$j\)͵i /%X+'xZڞ|V2aV#O¤E{D &\1nNؕNS~9Ry k|X,I[.u2<LC$‰U'i/|z,SYF0{KH,==TB`F|2P&0jN.&;+B.` ="\A ;gKHcW?^[ JjH2ptB_ktM;.ۓ "sl&ge~MUVs(&PcMSҁ†7sC@q)df\"s58FvwH'iDOs!la[puAbߘ[&a_ToxO;qyj~&w+BP>1afpya5x0oCMGrau~vO))>k)Z_|K;** ΄߅X pgWvK I*!8Wp#he $?j7lő^"|e&oT6]?Ͱi*l= w^ ϡvef-pJâ[%RDݴXU֚DfI𞮲%9i\qm%>l# ȫ `c%idwNjA$Z_T©,/&|.:*7槓3n" t}&Z7"Nx߀˭ľHq3Pϧ;7ч]tC&1in٨DS ўޖӸa%fkk'|wɍؤA˘˞Ocn8_e<Kс 3 ]sz |Rn~etpQP8? L xOu$1M |͸,|4h )1Kts.> cYK:l3A5? g4 <-wl3<u3&؊eN*-`P=lMUB5ʰ1PJ'uu"~+v =(GA1,YA|U$ULZS~٤Ͽӓ.5YIjy +}@[Ps~K_Ķ0IV}wj3lMͮT;ö?,g9i ϗѱMrկx:LtoW#Ω[Ѳs_>G8mTSH'H #)]G)yy:E9D=|&^Dī/B񑎑*ɸ  |zhn;[uK/Uu=2tnj hH8*ocq SP5OJ*⿡:kc" *< g.QŘ!N5Ϳ6nB#pCbw(= %M?߫ [g;2&MotkA?Drv)Hڹ[sS4~D獗|'=qrf^gsQ\c1ve+nԁVfpe%T#e_QSո:.ކS1aiVȀ+qP]Ѕ?6mecWpקz; y8BQՈ`7jBBOwSwdF.e&KA8%d$ѭ~BW0ju(+[;烅 Rd9$jr&cv *cРN:? q~8ZkGGy+V{-"c{ACt:=q oF;}֦z,1)ԧ)}pAu/Ƕ ABzE`TH,e\!XƢ`#$}dv7&% ޠH4gjzʊ(M&Rh^ 8~pIP!+tf'! f*e}~  asDzG1{ SQ V/Yn kU*ŠL<~^R2vF_C$vG8wtAܱ%}d^L4 CSJ( ı*1.rb# PJXPHTJ yιpAA e,dJKۃ}̽i-t@H(P# @ +sKO+易Gp6xd/f]%wƼ(Q,nR]Cd9[D]^%Bޞy0>z/ZĽ< aY>(ݑG[IeV) \9ܻe5Jp3Dī2}B#|N.̒Ef6`7\6:?j[i`Q .vb2)е 9-^uQyyfm[iEOZ!.X){ Đ:@܄P3QGO_Z+84h9KS˽א2dUe4qkz +;oVHڠax7ݾū6ʅZ4`$qǂJZ,F:1'w5'.n_=a!Iub2"Ϲ`ӎ?T,"{9hwк :%1o=ר K#smv3ja>ŷYޞYAEr{ҍҿ:;l# ՝},⋯㟳?{j"5K*y3Xz@UeagcDbEZ;-j}afJ7B{Z{Zzd,cBTNY<^S'\TVh ^-=3 \)Cd];DR(%MI3z$79/.-\\F&:>w45硛(ġF&gg{Pq"-5[IdL pUO%(K&a'"$Dp>0uTMD2.> 䚸AoRRPmbEͥxhܚG2G_ܭ.N%i8Y^\>n޵F]@S i%4 * CTJIHK홷=KɒsQv[ 8rd->՛y4:An rEюSH.I?b!i->D~ǘRqqlaPbc )YzoD"CUTxG9&43zڳ/IV<8DSsn LSTq/ToDyd@9{ IuGn\9R0% 1$&)gU}j8Lo۸&ږlm-u@M{p|QMS~[R%YV?s]5imgc4*!XbWN}w|'9W6a+ٯ^<wX]k$@ך!QM.xمNnA^"'U YD̿D8Dq ֓M:Ac[+xOW#KBOW K i66ω='!.1ўj_5n\4X^A[*<[2I\;7n@$~{Ƨ:>Nj>M-b<b' Q3SQM}-^6=kLm`15q+:[@5xl~%EǑ*d! )2vv^ҒEoE`!Bwu8iUqz}I|HKcN r7iZ{kc"u;ǭʟ\ȫ&d:VqN9Fq/4oT^9}I}SG <:^IEN ,ֹ;rV"sA2'Hy3ogd2eȣ5T[|0ojz>+-@yv^ɉz6%GKg?}7N?U#aaU(50h83.W%ahj!~gm(y4aUQ2`ʹ}ceva[|U!EPX6Sr*Ʌ#8X ͍qM';qfl˹US{Fr,.p2n7DW&ٔ2^G-' H5,#$[j#?,|8U͸2)dJbkA` hJ61 )M?{V&,E!h_73n2\4Jհ g0^L̴c\VJC=PޘF gUXuhO#~;ky"~.miy7 b>[$gO3ex/iW0.Fd,+TXs-h| :|k 6fV#lջWgV4#X ANsc_cuS0< 6dsL Om5ƴ1s5ִփlϣZF_rYQXΕEѠU)jeT,/2">+Ic]MF+ɮStΨLQ=@2:O!,rlev85uGUꐅ ^GxwvG@нhv%BOأvnE5QisL^ f59&o:2"S)mVTm@,m L_ ҎD7LB7D)zߣ&|yeIr \ @+y $pG-kRDh_(b1㹔Fz >Yɕ(^]VF_\S VG|f?cL)XUD(]A AY1lhݿsAŦHv[|&z}^8v0w N{;|F aC0'{tQS*e(*{TlHϽr g6!1;տl& w.X6_&C.3@"5 (lxh+K5J؂ D/UsE#J^,kv&:E8*T (@_>62-\u i(Gٱ5H=׃1 ߗ<^<5pJT^=9CŁtrQ1;\2cÚYh~ŚV q,AtuTc0s[#e? ?6KBy)u)80*#igy!l#W<.o9R} Oa`OO(hhRnKaJH涪Esd¸vzjqr]Z'Xbf ViU-LN-1_ؚL-.L ~B@18,O )!d]Vqadʁ SEji lM Or:YŸo7]H2|4ا5nAcR|}eixƉ#L v{eRGB٠R)pc he1:n;1j7+ 9[9TבPV'+P զZhv< xvMZ 2sKl^9kX>R;p W0e瓱{}PJ ͎߲@Fo6@_-_n7kL+ksSDߴ[rjH]ѩ+w}%FL*K 'H ]R=3V1Dz,+‰6AO~FŇ (TԿ)]J -5(gB:>s|BP3Zܟñȵ1G#!])q1Y./Ȓ~Mѯi)5xNh_w]Bep|Ϲ1 ,4D̒o\ĨwbMn179Poz@J,.v<(#~2fJ>(`G̒)=h B"g!z{׿|Bspmȟ'eqVxWj}ؽݪ\I%~`qw72/QE3dY1s`=I' *@OpUDLu;ڈINPrLyLSیu#8g,f&˼O9W޿=z\! 7GxolCd#i6 < PR.7\t0E1a¨HW x NTi;eyOt N%:3)d8ޕYx>fٮ8ܬg9*kA"r>7=_Mp^clٳgP'mG9afP)g樅ս|0zJMZe.lMT1RNYm)+KBsYƭ}cReI힔.t⚼Dȫ'md:VH#4h L]Vkij@,E쉓$h~VcU(3}RhL'hɎ2xbv4WA s&^X"U`c#XDC7d#TkVX68&,8:ۡfbӪ׵RA #T_zj.5'cSd~oN{PӴ gv*kPQ(z0=gt܂6H[q&NL^$pSHYIJXBrfuܵ1k~1Ƽ~ xq;zl BNVgEWV3FɊc*j"cr'OrI6}BNr|Ww` 6{ )Ls|aA3vPV?FbyבaTv. =fE^%0ӾWʍ}˟x'Ƈjn'TMF %3h[wi $Ŭ+Pm:!֡IIwya6ǎĉp$S?ԍJ[?2ۀe!-A2;bbYJ02`$ ޿KYwr%$tv֪L_vO`>lB([+pk 9埁PҥUq5FTwn:8k|Wzݒ=y+!vXW'DBhgk%u}0ՌqJeƩ:I1T(nhG!".0.W8WX0w2U~]䛦3V-ARL9\\\:!9gJM sŔ͈0t.:S_v/?Im Zy]_I,%(=l|jq?j`T:!;rXϏqcПZ\V% Yܫ׺?Q Ex7]bӎp@>hn-q<[V'F(TԐs&RBZsQek=dD'.[MK=;@)2}&7$[x$ QՂJm5fɔ*`Ix,|3T=o0?i ,/j,ZY„Iuj0 {=,u;A늁Q}{+ڟm 6JdQ,KBQ|/i︎>5`П*Ŭv*~ͳ7hG\gǰ;۰z!XVcECI"4skOwf]I}H۠ X_sZ]@[qh6e.QLh)]w6cHzrߐ0 3;:Pпݛ\h7H@oБ`eZ-xnOsWrh3_c38_̂&t:US;:ADhW "dK$6m4d ^AKXO[ rʘX 6'!A TBv;rF5E ,^FqoȒLG22qXMƆ!c(nvYyzKεeL.uSEc@TYia*꾍 Hs4Un Fo B;:O)lʖMϏFrZbmAuCP;RDqO{PMxxv ?Xa"gAJ?`MOU)^pn]:}(D*EtF>9aW~[ |e^:.Me3Z!H^r=Qޑ*b:,;f/±%:_j";<<\BZ$`O%d׊M`8MNQNCs 2= wzCA6 'H:&>j 6ԧORj;:)75ڴJr ^Őoz(AFjL0Zl:N5L%$Un8/mO$b#6*r≵S_dfMdw#(g*+"'$!@g_ f=UUC+8]i&h}(P:ڲl\)0AI. ;9h{Ȑ8(za '0/,RzW14\Zc5Pj93a_[H"FHq1*_fCJrFi`kn7v0B0htÌW|>=zqb-ZuO^JuGcrL>B\i^F{NoL|.>/%EJz!v;=rsg"3~f%=pS&cl(  ~,m#9F 7Ʀ[*}2bF"߶Due%3FVk/IoE2_Hj*ApqCiB?m򙺪dzL;`.?oO[k?D&缪3zCK?ub#&\(K*U_>tv zA0󶫫 ' q>{v_œk'W}~` kHԌ`܏ʰ};Qǯx] oQLnW-TxtYĦp8zc(cy`y\,j^+J e9nfkѨ W&= ZNJ+YڕgRn " Ѿs4ֱ !>8!e-rl4Href 6H7HO96{ ɂ]p .܇a)kxs+p36s'aEzR? 7׹"{uO?k gy$,8dtVv:b4XfWe^æC\} Hʐg}Z0Vr^QVڡOD.>/LZ2޿ +|;0}"]cb nE.A\˯Fi˦$ )7*4f2t:dxB SzcsJ,x=p}̸/8sO:+6(lwD0Դ`6?jSv7\EvC#L1Ӯ|Eo8CԚ<W޺k@ ZiwE{k2+j1H hK -{$_,ڳ`p1 ? \i絛Ww! q 6<fUtX+za"Fl[;Gѣ)Ns 3D8k3G5~O^k*Z8 5XswxMC%z5bg PN34rxa`}FdT؄sD~lRoaL8;RjF~Ibx w2kqK~bT.[WW+F<5<"J #\V*5"ѫe2k,\^-7Llلag]R-R3m~-ī8;-r|GO4uL<-@ xAXClC@dk#ߋJ)VnWCO'kOc`s 6VuK=oރ Y\!(g8G*5 Y$tьf` iȩk;]dOhE*8#u>-J*&ڎ:RDlWn )9ؒo0)ڣyq$XxP|e}8vt嵫cgKK=."IvzA8ڙ& Q|lgc+In:p B܉(A;b$۳ϱ;WDi.}BT+3x֘5)ERJkiFs35H8M޹Y6F(-xKzdK(F  @Z4;|DFb۔Czk|dg֛? / ^<) o2)֎AՍ PVzsWeg{1x =ߨKC||?r30_r\09Vh,IK;aA†[ ߊUyRhg7yHCd]+4 ^YsWR*3jl^7?7nmݴPUc=36:87ǒ+21z ?5@VkQ}Yp1vh{f9yϋb44kchȿ3M5Chs;&G&.H ]0,^1 -/Wg] i6|V+] *4.~϶)OVCHNDYN|GKZ ;x,4 eiV6cӆIO>v K킕_,EJDZ(z;،_ qs&|`G׹Ox?~Kjc$aZ7\QDntB:7 "Lj90.dn_qCI"޴¿au*H-.vgTc{V|Y_ҿ"\je;.% G+.U[<Я{ 9HilMa#H-4Z9k,-(s: 6jA ӆ[~Qzu`_X ~vy\/h_$3 /ohF ;> "XP~ nI|uWޜ| !3b򖻯eQ;?hI]٭1Vt( NU-3k*JQLr)Nc76Cڍb ͍o0M򣅟QcǺ\ HFͧƣuun4wGybAk.m~F<4huͼ0ߜǢqY0Zh!v;?6g3mw5E8cc&u_UhY8q>> [Z[9O^/d&P;Wl.m J@ 5Hˋ,g΂XS(TAtpQh oSj;Ru( UbV%bB,78?|h5t/`M떎Blp!⋏<0KCMBׁf!ԩjg(gߺ *V]w /uF-S[JsMsL*4`*2LM#%E:o-CE(n\a`xV1Kdnj4Ayc!Dc0;M`k_)62{>5*Ѯ_juMKf$AH [[|L1ue?ٵQ*4~)ԒSa脺e|`ٍzwяMGA.r"帆~yX^WQ{Ew֫&4)\{8఑!ԚGmr`D:|dEӓYpB43(.FC#MM :ǬͬUےc"e*d0h-`'P2*Z-&MR_ 0J*O^]V nbuWñ<}WE.jYB'!`~+ X7zs )2^{U`=1 @|O c ˎom|T4ɫPKGDQel~Uq1٘aj|YP҉9;fKcR7LMRʹ3r(&Wxj}:%~-®wJbl, Kޢ !-1`0es⩶* 0=Mr\6(\i׃hDWeXV<Х Rɳjq?@./" 7E>HҖ4ao[^霌qyn޼DzdVSh^*Xe_e'UFU(?O~A.S}9lC8}\TX8bfUÖXQ+AFcÖ=YE/ 5nnxGpL!0{rH˼ӵxi}}oV$1QZ1iY ͙%:1n6.>i}Q'% Lt֨TӿcU'3w[48E;>2 1W:^wL v'ƥ֢(˩_FQƫQE[)*~Hq :2q`?]"6i4&()-XDRP! GA .2Xѯc%{j_Ҕ2fx%|Gmxk{.OvcX_W9 C72!_sQIRpBd,qM&,[NLߌdW]h͢J4BF-dЋ]ձfCièLEw#;p8e5vQUZNr! Vý}/dqAF=Szy$@L.)\LJqgّ+M lB&24:TBW]լPy'tON8`X3lkucJi^#ao Cu#)U`dezdbVLZGu Az2ed̃ǟ*MH|w\DeזiZ fjmeTIJ" M|-~1@P: UXCBE V54'Ng9iZ1`z~+C*Gkg{6J-=Z8| k) &ɭ@Ci8NHk?NΕW:xdYoe 9^8˰ܘ3/-Y&:p.dtk;b(j ~T}#޵4{ρ29b^[n1=_LR:3=545,d6-ONB*z<#OId_"-8ԐT@ؿ$pvk*^KZC$:Ȅv ² ZHW`r[Y4 RitLjhx#p:,;T@n`z ++e Ƶ&wl(64hĘ./jFqC .a/3zm߁=pɼz'xz_Dw&0"eʮ{#85X$qD/{yljQ-󚎊|]"3J)xFbce2~v\YMy$rn?,¯pi@OdD N'jJ+kl;$0ˎz4X[9:J͕L8fO\7Tۍ~2|/)XYVG^$PsKOW@C7"3ق$LxDds9i#OU)k;!l5pD> rb):/,+T'D> ‹fAfǺOÒ/?CtpHGŶ/LO&[{$4 Sryns[; ppbAꝢJek`zg7 A=w9V9 K~rxy'kz#g`s<]Po+1O,o={?vdc R~&Zx|1Y-{CH,УTE?Io,mC_a8D9ދkeoFF&]"d$Β& #?D38g%ylOt8$zqJyD\y# zR:kQϗ!0 .nr8 CG'9|M'RqqSw"Q7a*O3bAUZGܜ>mY7IsiZ`!Ǒ~3\(`agHx<04^E lWlJȬ-?+ЭqHKhUŏ~v tZjw4ڊmF%ϐAWZtjw[,aH0 S-Ka)ܡ_&E]Lp{lzSw5^y~8toZZ$zF}Fn$4mx&x!B\tDXԤG~4 q݅gjK΋+L@*scFلRJ?ӟw|O&ŊwA^8.4sZF w^K7V|Zgvo{ych%ٙmRH=z?VUb`jC¥QEpa}w}[>Oip}$|iBQb )t #ZcɰIOd{y uβ9Y|~:v0I S:߳b<xXG1\nn R (ߺQ&yҫ&;z9>ktUqKÑ lDgzud1i-fl_<@ӮK"U!ThwXcbjC91~!075sD0 dQL|bF/K}=E\T#R4"JJmS"쯡?\)kx&EA6foO\bB(*[&D@(llaqBe98hyNy}%Kg_J`,,γC/!EtxiF2`;_V"e_ZI˕ECvIKp4x"c*@FUuhIg6Xf`Ѓ (OAEH$`!ۛ.bgjJz%>"l'xRvn3foj}=,%p?u8z;c0&LYXà.9Hg/'~ax߬g -8,K 9 b[E]f9H<5.s*pۛ˚CW\$AսZOPپyZSKWճb~ٶKUK}!Y 4ᅥōz2 Iވo7'cM D Fǜ?kAvNay=md~BЫB-' yobUXA>X7/틿PZ;*k}J#1r@zTnPnN}jz=- >5M,<2`J>*UmY3dB)3g6*,%te8K -w%v?ɰ4Fl3TB[S~iV|"arP2#{'{lP%eD}"Z N)nҤCCE$422Dhkhbz$$I&q7H$"ޫ |k$oÜyr9~0R-#\/zYs ֕wWQ[w0W-[M 7 Ϊ1=Q&⯌4)o5M6\P4nAl܋Ss 2j/ 򳦠 ~8X/?)mhlX~6&ayox8ջ@{.$㾖h{kEM_X|/.}ejm@טOpT } :xOK|NoA6G/F#}( 6@z}Lp t.DH{Lq$<`X0bngh5^hwh+w~7;Ϥ.F(7zBh5yVJP I/2ܿdJD,8}~%A"Y1B )6Rêuy $Nr q}<, 750Y\76M8)%o`UhXPI܀YZ+]yI}$m[uw岩˱r5!fdf! $q{Xף՚%;;F5#} e&BD~n4ʼnm$цE}‹S c*Cp`"O՛( JnL;C臫;寋ѭoM6FgDŐ&km*=׺~ļ3 Yg%K{:U3Ӭ]V ʧyI.5߿r?wdd@$j_ ,s SAEztDs[eh5Zv/h!Wa47@oc[ LQfۋ]¥Ψ0YN T\ֽq#j/V9oН PO+a5@Iz)vi(ŎwW1zJ|@5_ݖܦ6ckkgFIt_|Vz=[L1{Нݾ`̕罹4ETdvp(kq:@Y*/Bgią#UZbhEnB^B:XBdfs%6.-3-,ii0f#n4v|?K"lz_׭rĵ$""ѳ^+>M4ΩJѵK$xJ6uSe.nѧd߅fQk-_waFcV) [8L"( uG?"\kcVi+uO?ATDEmĜ0d*;]4XލyJ :AsktQ1awu*,a^{;Q> 1׾$M4H*P@ouA}>崍%:;KG1C+@r*R&$uáf~-3p qQm?6VxF Ɏ'LƖ]5F > p@G$\JLޓ/ ]-J{Nќ5u_|oéߤfsZa?>*̨pE툃J; `?GcT ]+VAz#MJ-jrQ0Dm&d> ((yxNi@G1;yQ5w|)̀\ \?JZmidícD <]1Bf>izX ^DbƷp"\ i}(hPNYW$gh5sN`#%=3 UĉcO{/vg[^F4i,c-)[ %I;{Su}G$EUZo;VA^#RLRzwB"IGϩj7M By z$O ٚQ02w!#mxH/_K0uubsV~T)x46j?ھ+=x9]0id' [*iC3gB ڜMǘU. MN)4 v$OoF#X#,/aJFS Ho0TZOxċwc45)dVtx?6t _\M6R#)X7ӞWƣ>d/2ZiɟIFF(A~.'D!p!Y*SOirDf,΂"LzǸm>qʡ&*f^̸$!d)$B!^V)fB5MD^60R?_CNnC<8*ˑIVH8"8O8inxą5Z X5aLP}F)J Բ_܅ k5=-Jett4FHeqwgJ-y =ϻ( 5HS_-+n+{d͸O 3Q>P RgLb qN!m#ϵtܼN$V^Z/5)V17vDy([LM~7ZTL9LɯBCp&+߾*/?T1kw;μ#^1Wh(iG핻u½wdfԺHs ]7N^rb"Pދv[/YVΑ |JARLOKblpIx*e7>>&Mҥ҉t>;AR[X˒_}s[Ӑ.;Uuה*$Ua w|9m\1܇ݹ-6:b2+Atp#jO%]..ctyuȞKknO}&-TJ$`G=JEB,c*=cP<:madծ]80vDSk ,(1!-:ܲǡ^:T}#1a+dQ5JZ_-,T÷@|v)[8LP|)7aYqT`:¤ݚQ"moa0M*8R`lat #ݘ%$Iyii6[0=:E䑶~Ás=tSz9ZKӐp(#3DQE5>V]=S.J1ط~kC0/F; ߼0N[3$%Lībc- ѝgP h<խi݋/K-Vfwv⟡0zq9 "e%5, l, Z!rubwfFjeUaݳR\lH?;R v8IxpT38{Fټ&FM HA(ZARRm> vҕ"#PTdvMEoRi O}D\s%krK'!}y11˯Ϯb.K*v<B !wL v@Π^U_nl9>Lv߷k1Ah܍?`T+(pFZt~.k$I`q" 1mwQ}⍕hXqs,#^<(KS͋}i2#W Hqdut]_ȱ~6H*T!8iVO1E^.Ѳ0ۛ>t,(uj5خFi׮4sHxV%hmy?eRdu*.2loCϬ̶ dCͣDeZ{T w#DZ2]QWD2+׀KMt4tqzQdSDhW%/Fod#CтJᴱ( XnjfTGyymRdQ~^~ ,q*|8U󞒆Fvw_^+@;!lBטϱxQVJS^Auoet*8 g S~zh66f"v4{ZO 8pӏ&Ti[adU*mƜ1#eѷ"EPk1`ep8v,=U˕ʞɅr q \LlY{>0>F[: eG'B۟f*/rr8$$j F@(O$6L/ x go_$7ƶkxҌ_7q@j6 HR\ԬJfH? fzg9S(bGNLB94_j8;,6G'ow[ӏJJi[[^'̋MW`WH ȯl cϓϥ{A8PΊquec[f=>bv&eRHk3y;FMS:D9$Ԩ\LpۯV }^CwJhJYT~-vl QqMCAdc;iv~פv]\G`26ޤ\))dXt@Lghf_?H?Yy1AvKgV#wD+2zn@^NLQT>PE91|(Dj=> /k ( DYC1m=N*t{@pW ➪*-yUGėJ`LG {-&M,4fZ5LrAP_lNGjr[!aL*תm̍_ >s0 ]LMqP,FJG:Uܒ3 {5\6(#O dR n;qmnu/ gW1Uϯ1QƄbT .)egva:ٮ"M4W wB2 #1( p3ߜAs<*osrwihIzK #m4r9Fb5 >6gN"hF'$NPfi6U] WjT[TJ\Bn gd; hC+ JRwQ?+[Si;H5$1r"_ΘO{HQ}k$%uSOwd7+F4'F!-PrȾ.ԶgQW0CA~:Y*vH }WD3rIWY%L (X$ 'NO3&~N炎㭃La$qPQ9wEGvٳ%{XdиY@Unw3!@zۘ*>Ra,n'5KK6T5V#M\Ơp3 tZ!0R꒕FwN;$MםFE|PWZ o2N1d)PQ؈ْlk.8:'EdOz 1 r QGH#6ٶKٟ3koSG:V;N ɋlG?'pT2v8;VLjr6Rڕڧ"n嫟D`U8 6bmU[N, G@~笙 3bud ۰tF,.†yKgrQ<Ң٭w^\;Aa\U$ J^9@5ԔPPY?Td{v ~-0L5`u<wLH3āxc0s ȕ/v#xM^at^o)CQpG.Gƴڀv6eFRZ{t2 3ÿ{[I+h-8?ų (-XX]-={d#.'E-w@75zV8ʵvY΋VjjbUͨKdL *MwWrD# ՜e)e)oAW4ёemR`Ditjy k[kJ@M\O}k $ͽ)"WvTsHHˎP)H U/ RrjV٬EC|/\(^mQOV\whfEK}akI󺐊+:d ћNusԝ}0ܞK*0N .vrd]摕@._NQ2۰81ScXYfX NO]tY>)/FIKܛŤD2a$۽Sbaޜ8SG 4Rq|;7/gGN9)_yj=%Ztmg;x&.HV$I0:=W#Ѝ;qVF5;1RmS0NĶ/D@`iA+zp,jZuf) $I̐u!nC`&> 54 62xH.1Bդ|n&4z\ B{7~?]E'GI"|d~Z ߓ( [2hor ;SutE'H,hs/ŋ %S›^mДR8%OPDIL?$ J$ Ôh٤euB\4Z4ÿ~.-II"H^BZh@" L!`EBNڇ,'rH4 =u|n]V'idw-o1*8bNsrmM8j3nVVJTEJЮ!EreV FF:<EI+яDV#k, NpO'ufeJ<C+:?ce(a*fDN1ٲcרp+p^#Pa!P:' w@hށ#6CxXz\`>ʻf?>7&0wr3/You1>zo BϮܟT KNPe۶J̍a{Q!z\@\k%g3o҄}HWR9cMQRae^OPOY.tW"P/w,f̢2S/aULyyOK&;݈ ̰ o%?~}SK:xFQg 8l#Ӂ䠝5 a|&Xً0 쮲\]J_O>0R2vNQqAoy\T4T% R}6 .r/>v<%%VwydO |a%Z&,K (u"`9?>jhڄׁ=LLrMV`d 4v]s]Z(B67 -S}3ɁxJ'BX&auJyEek}LÕu*toVtwkP#?E^09T <'z9h!ِ,9_ع?$*Ey$o~ഹQXϓp9SȖ5'U:ڭH1|V+ ;=r^Kikkhu奼yІn\3dLQ!fH|' f#a2*dah\9a $p+MIQb 5=ݧRՍѸ0%@J߈6mەU!+%YMi/\T%n}|/'g=Ѯ~hB ZnDx>EY|Ȥ7K!ֽ!Ov+18_3@Ud >I,?˝IPgG<<!mO/uPr"$UQzx5èվ`_iaSP7ЄyGؕ(A`m T~ԭ"A <vX9uB -wbhWcjCԠ=EvG[A[)kSӃW X$x]XelRFaO5{s&Ŝpbob0ԩ?#"ODL %\43aB!oaQè3v0xVwVc \S,2MV8`˸J3K?\^a̍*1f+)Z6QpW8l%'|a.%?m٨,ANyMDAY!}cX8ʌMMA0|dxDIA/]\s9Aqk#ofALA9,ʩSEnq/1dB?0j'hQώ+7p~%Ood2 =o܂yfN0JK Ih)<.If* rSo}&Ƚ~Q Lp"TV-hw^]Ÿ]wQo npr?g)IꨖTd#Hd\Gu@:E/Ml%=2r. nU_+x}d݌(bb? @w?Cve{[;C$pB,C(ce6-U?F)>Jمb}GLV%Mxә1%>X422XJ>`3nYP[W(&FY M9IlRn!28xB{?dW:q^=Xآɧe`?_ m\.eܦB~}sO{+s-̾Sb[sd=^곍 zrY…H֜4@>L4C_7QyψonRfoDPG`&uPT&H *O"ɀJ8\BDafo|@=5ׁsF1ܿC;lUI#"صNptA,L@LT8)s <=~y1/ #sӭdtln=,R*T :ʊdR (4Z6=B"4 'RXf`% dQ膒+7ho3Ple<Їng?mF"_e}S G#2#S byb=U&ӕ5ktJ5ABtd]F҆=KFZI 2:ARj}z$ta8aЕtH}'\xYboPTZP{T_1E&lefcZh0 H&8@zͮpT7KO״L /&HV0 )`չ $7v Wń;k2VHXZbEvBk|193ᑥrYG ~֪VWb8ʞ Rlpf;Z k9w͖LMę+K"LB5K uNG7 "fngڋ%2>b,TAԐ+%+`o'8]Y27eܚ" vL%/ZTN{.AM)54#+QC .a#FG?}CΜl]7 ل4E<#o$5:j<z./@BmQGxb$WWȭK혓Tuɤі oSa}04C/ <&o {w@$[(bXPu$Lh8NkG"tp;';,sOIoD) ]UҤJ  ŏo}2BDW8_TZx]>!7t鉶~F:0;KcwUo#SIЉ՘M>mWl@a$:@YAWgMc%As#7{)I(o2wwY>Sv2?hRD|wb%XH́:Zeĕ J `-kUԗp"'et;94(҄PN;!;uۄwdƠg|vHR~I9ADŽw\Qoq_5%2:>e=ckH`JH#@RW2=jLe19X;9_ղ\ '!"~dy)YC,aCraG6;?n1ޠ1"ufN,Hڌ^]_kqM>xzW5윥5DV(iygTPK!>iAmKMQ|+2j[2iwlG)kXGN2E?滩3zO*aAoCu=o(hgI hQqv7?o@36W{ 9wF|.6J"U7+S-ͺ{@vM4&:h^T1#$.|RΠIWYl$ho(ce >r1;t+叀eֿ 7<~UNKu6nq6>nઉM4":5ǰa18pc#EB龻Qfg$NhcUژdCc,؀Neu#+#^ȢV!*y'\^/neBom:UP0CW;ޮ|9u?5fܕ S%SMBos LCV>Y@GAPDž:(Ł ;U++Aܕ~v73 n.IRE3 }̸TY{p"ՈQH1n,-Xq16r U.4x [13 Ɣe <^1[|KBhnvqF$|~^ +5F;\0JH#p)`u/*5V@C̪^.~X# l-s'ǧϿ U]7oA^ aB7~絆H Fw|,h0vOywjC { /!.EAMzCAǷ]+yzm){Rh@VsGȓ3A41d9{X}a5FZ9&o)ӸϷY4rP#"o&UR]5C]1lOi0a%XsRV|yAFÖ8&5JzK֏0Sͽ;,8<ԐPKfo޽ntԧ%taB/C&-T\cƷ!Y - C<z2z- c4~t)F4O{/ۻU DI!= 3zRԈPgBUaMxūim +3- D%"óGvup`Ήv!34:bS Fp#@xD-(p-F$m%ZR[NrqD\e"6t}!0"(9tQh^i]>Yw=WRgDe2֡֏ $ Nv M! YP]$Mւ]BxdG^|0tab'Xjn0L%޾AoJ]$vf#!Ҙ`{%k_DeG $v`hZl9\`"XE"blYT@^鏹gWBIs/]p/{fZq:a+6T"XN\?{wwo{^gA%vQiIz6/l|}zJH3 _=Toa V*,7ya3yl`ՉHp>=BTMg=E51E5::R8#OYq O|ad̷qX6X;RR][!RDG [s8Ī!}8b`w3zĎ͟3@3*[i*b©n+U&c ٱЈ}ig~ $ͅ )8!x*ʺWMŗ߭hl{̂uqsQJ"Qhe^~|C /CY_= S1!mGu0GU8brNSЦ/8bƨ OP6jgEK|RC;)꟩=ypۙJFo I'f1BQe$u\g|^ X9W]$!LcW l&~rrO5\{( ~bg0RWw ſ]i&3~߾)HiB⻽42+&jN%uAHLyn\Wv=h={Vmd"CQ5E#N^z*u#Y4+Qe ZQ)G|K}c\ T NbyҳYg:o6T@:e5|dYX&< qI2ηzH&D mv-Yf=ZN7}@j=%܆&OcWCvwų4PpaYɩ?fdr@fpVBȪ(2䥲n Ņ5)z:5'79~ڈ *VeYP>!8OZL_+1ŀY1/Ysvr]@P7gb! DŚY_^p@; ћAҧ8I/Df~r P!\ f_Ddd,IEzK} `{7/ Ů`Qi~M#Z hfݞJ&T?Zgbʉhp(';;IDt*MbI%DY2Є"/kU՞]rmNj/}aIRgl x:Ah'-fB-՟iӗ>V,@= d:_yC(9[<wgZF>EAbwb|+ J1ka+s%!<(/i\!eх!  TBe]1~y#;w1m*|usK)iX>|"B0 Й5nHNd@M6|=Xo?S_4w S] G"ITk%X,[DC '7%&rVrQvwOSHփ;]d׃gN+*r x0]H>2õT?xqc1Xrw,ޫ]<\X$S`\S6DpV1"hkR9^v^*ЬYe\Bp|N{cBV\,(g àGy@M7u-ZUo٢srq+lAx⊆Q"/Q^KvhT+H; 2Qt&PB wk>bҒ]L!JQ֛[JЂv:*%f׮Ę罁)B3=G5S׌'pa&c11ĵNL;̫nKb)5j`0WŞ~$ `LcT%$𰍂LC1ȴoI Udz)BK9)b2ORcZn`?EtUAxGg9Čͥⶂg[P5N,7]yfߩsiA[=m\9: 534t~"jװ,H׵.})mkD9t8rtb~#\c/@hd΀?l̕=2I:j,E3'ϵ^;.,뒵iʁ@}9']Daj{RȐ~` Ŋ8uSlr[3,O&nо;-Bn}NkE\Lڼ~{J<ĸ8ұ`2$C/"!bПus,G z)Nl'<ޅ%ᣌ\$[o)^ǺfnE" %LTr[V3`uZ))0@} m!6ѫ4yyXܦ!0 0RdU_Ȩ (o/T;M+u7!XPwsRY]tUvSrB*ʢ- >zNolGw%x/39cMÀ̴Oo .֜$葮=,,xByj1k%?ȝN_[$ JBrE4Ce\++SI "wܰ}ss `=G*4)Q߰mhK"yOeO{>T _w!T#IpC U Ѥ@ 2z-I FmerS^BAʖm +riӘ Wo2V6/>ŢǢg_,wFFuLGnz'dT+RzHT# ɡ oY8l:%P's #uUjg]9֨vߋHJd:X+tinr<17ofkteF&ӧCB<ʹWK`8vgUwX !Iԉ/Cٹ|KI;$hǀKb~UT5̬S|0o!>0r*4%1 %UO$ T@t$[p^-f^/k+C1w=P9(J{p7vDФO6au`QiZ=Vܤ%6,;=/6xcbV87Dߡ8i$RA$4uܽ{91s v9U݇>!;-4vth(e> /Sgπa8U֨qv̰.|H$7A9<:9UuuH^ۃ|uoO9rr᝾i mX8)* nI{},E y pLL Nza>,yIP*"@`_~P`u@?XN3bȮd,XN ex>^@[wdF^Ok>@L ukސ 0x>xYNwAfhh#^r3Rh~4UPTpAHb('u 3@W:k}xjt;w~@>=|`~ 1tLd])QAupBUpИh˸˨!eO`wtR tS3#g9yz~<.DŽ7"l[ݳŧ;iA7^oNf2 W)P8Lwn;XGVr:I8` Gϳj R2Vݹ?K1I,v iY@ c1uqABVRސ-|$\mY\P.#Foo"D0m6'ڋئs Qn}x!{!uEb8=!QDDo7cLgF/_`6ÿDD*C}a$Yם.y`dQ,*V2fJ?S#O&]Y/ xJ"}v|+<֥/w2 W߷4g>WL=}mC9[`rbW*m(j#?bm`[sӒ0:Ùs!bmA` 54V 9-O$W׶_xP![]atC˜lFn)REg]grHFOjrdվ bO]~z yZG%~Re>Be3o*I?B3e O7 Hodːy\s }`^uH7a$eCǏ(3FV]Oao]$ZsB-Sd3A3m_<91֠lPXl=USK3 F1P(wiySj )zs#,\iǀ}MV/ڹ fiHĿ{k1˟oIrD,BRwp/ȉ-4a)A!ޓhM#?Դw.ґx 6DZǂx"L.r%$HC^Y.6iR)qkkUwpM`1 "{E{^DW`!=lQZ;.dzkoY+3Vb+3 <ӪN`O >I=. {o]\E W]aZ{~{V? a)F.@@oN,D Pi!CagKr;0z~F*|} #! d/Z;d)#M߫A Y/FY$lwqv'L "3LkbvrtAVuH>n̝3VvϿk))uV/ 4dJtKeU|L8pU珰=}nVRSJzR3VI9[ߏ&xj 2q?o\!2E$xJ+B`%`ifՉD@W,͛&ex1`+o{!F}H[RP+?;uH32~T\:9xX誷׉ΐD{gRʰVՍ#TQ߂B0π}kiҪ46J^08Pa !"puK䀟FIS蕊rkd +FהӀ vFжdNvqs-%d$HrH6kʕg :,NQab}gB Rdg?wAɑHspe @3n:)_ 28HeO MY/p%#rsLlXc!Zpn/Rfdq!DE?asѠ)xp*ܻ +t=9 Ŗ"X& 9!= S}%K[!Q/rR^:_J%yYwu'N}H n!*Co+A [ "wkNta*dwhY$uT>IVdwyL) P:WGtjhL D" 7^vgJX+x\5n7pXEaDkG֓* S^$W=`Ph> d`5r; =0"Gr N>t n#8d"'U6ha,3$G|a<=[†aXJ#SّOvkr¿PΚZ(S\(*{BkH<ʥ V~Bo x>:AeO)M!wIf70wߖA5rLQ7KUP݅ӒUq>| rm2|.M"tyњzKQ1rDRx5QsUۡ9X ~Q=e] Y+J_~/TQnTwr +>S| !1B?1o-版 x(\V/29@fB? ACI95:~N&>eJ# \{=R;gl@xqn. ~MoUF'vmdܼD4f{/@ yJ ٝIkY&,‘%c*0!vqۡE{ 9ČeDV5_cxXLEMpG/(gʉJPA>4hɹWt} CpRRBUQ~=$ 5S8dLɁ't9UCפİz`]^Ytq#t:b|vX?+PvR6߷D=49jp*%bIq\-W@y^7M< m[tT\U/v%1o59cesa2~HfQ͢jYl>ETpԦ&AaTkccS*zj1L"Y||V>:'#{!VzV?:Q?yɌdYT'lyH 6J/jR)9q]:2,i]HzfNws 'U Cz澤/ RR?FFQw7Fx1.<{M>|o8҂mo3d<3{\}:0'>nI4znG)2闹@@F_|m@LVo 8\)- xi$)^I aX|6\d_G@rΪղ dlH4KFB-8̑S+=YG:pʬgRqnΟ&|. 7pMհfg\4_JF1q5x $ ~z]kӍ Vmi%ki*p+s66RA9Y+γ^UOvNvP>'W[yRd¿~ij[Uy4="T% ,3leKdDgZM)W5NP߉K.d>T@ƜV].r~32x +:AaXiM XbJMTس0㇄PFQ׋7Ryl7ԪFHdoGq>[ сPnx Ƈ/iHI]4[-߸|kdD2(=L&\(jLl :'#U0^Lʩ!-j]^H|b\UnD?唎>H'k"135Ǒ-c Y7<0S5 s+͞=nZ(od0P=hTdTZ6Uk?Sw! A*D`MQrK.#2tu(< seQ6Owsa+?ICEvJ11Ҿdh$僎*amǗ'i}[&st)`,! D)gߺMtτ֏u&fG[50|zS6@0UPd);-}=-_%sd{zKdU8QN+TT:co\,B?{]0ǙĹ&9:|k8Ԗ\9',-t=8Q=..q`s|Z))i]ʿt%ljz=d }`PqRs`raX+j.5RBJ{q_qbPTQ1phy 8vU@g#_# n}^PxJIj s]<*&ݪ1:!kJ8%~􁭢^>0y%vؕƨ/*wnZF>2/! Ƴ|+s`y`ꩣ) r ^9|{/p4vKK-=Y PogO#= 8]LbDvQg(OBP=-_^ p-n(B|Yp_zC2ɡn-,/vHqH&ZyQ C8,>fiEvCqZ>תB{ uw"er47NKϤW Op-6GF/LA.rDT˵& aDW̊CIh<}%?]d…@Eb̨DܮsNKA:ye(9#*F8l<&뎹mĦBS!YbB3M MKN=o4J )ȱ]38R=Ɉ}ׂ>iM&啶կ081feYȝhPO]Y!@[^Q Ln{wсwpU MhVL~hz<ԱUgu4 hT{&r/.S"X8j˦w#zpQG9yhDP\E6WOeuh$W f/:W9xjKãU:y{;qV`PgCUwP̗"@KJ,Sjug8ժP$SϢ&F@!dD<It W=\ܜC^)@AQe.KBi;}.\fǭg?;횴ᛤ }솧  a|iOd7+& iqqhr37E|֥v$,Sm\@9@&B繓im8.My!u8_;gF+s1~бbA2s ;#g?22| lIͶ1/hK ʷH+;1P~r )˔TA(9BCVO^H` t< $ה`'"c0X" _]#Rtdʫ PzTl+$],Yr^*XlN!1A LĄ(ԍ( "شyI>ߚQ1Z}PtdЇ~E0DmgF)~IUգ-US'6aZ'OpCN-\:@fBF~ X ܳTi M8ÜIBP_U4U5`Ei|cy/& rx$2z4$hc-t^̪`OmT,o؄xfDHPKݸa1ݪWyYl1i% ۨ聞4 >bsۘsd+ aIBF^Q)u}ߺB= yZ) @exiɖ_ND: vHܿ8EKFŘ-^Ons{fc%3!8gSԨYuT.2?DYB[Z͋GDt{tSL-0N?"ҝDX\-)n%xkZT_P%;+` 9tqmm$*d=_gI2y(]E5rڑҕ/'*%b'}tc:Bw ˹~Nb yt]}` Lb[c$XܲpIG&'UKoh*,m6/19t?b𘦅#H2ƁA"&M 9 ZɺŸu8L+ U毖 } ciЦR~2Rʼnx! 1ԑfR/3PÛ`dZpż!ӶzD\7Ŭ0YHzPbMA`+%UT0_ n#?j6փmhkJ$kWL9iFŬl0%0WhW5H:~&L#a܍Yrm[t)[ɰ8a>^qxbƬ*k*ަ[>8gDȎXzfKŏ;3;LzgMHGI]h8"ˁ+U{ϸ :r IBuJ^1V3"|RǸ\_l (ܴGe\r߁3ENqoA8Ae{4kU F?;]!WK-vЄ,Ѿd@t%bϻTfa&T FtiqN"0o=pv$\1a#BW52¿L rw$nt\9 HT}n$~3"l/Z(~OmSOHv=4f`AbGGqhx~/uvW2rb|#$EC~ :oc ڕ n>7U8_GLǴHv<5ojyM4c hI?,wD i[?*&HF^s3E:^D u@p wMҺr1!εCX(.h[)JCT 23xG!D+=wc1H:^3LzUо+*zu5=sDjxA܏j:>.KT:&YG;q_N}" } 1m3#>w"+rH8 cgXxK~eא]6@IyG7j,Hn#<\(0NPyi WT-O3.6qDA6Kc#rA+5y[|Pu4gP6[!uʚL7:o5~.eˤ7j~ 5 Dz 0OoC-sʽtAMRuggX7?I  3$e10''3ǨN)^/{8y؁[LzWLnP[]ɢSkwTPn!r )]բj+\n <3@ɲ6GBb Oi֙(dEUs;q&VBZ ;BL}:Zˏ sK`f]2k\խ&I$;  6Y$ Q%xٍ\6g-ԉ:뱂 J@ -du^qkt} F7s5dCP45g8v _$V^*FƝx,{<{ "?+g(}wbB0eA4O9\fe|nX1oN@2>)3Jg1 6q-bB?ofn+]%B/:uu 賒'O+y\6R o0,~gk^}S߉Ϙ.xg6/~0NM[6KKHnx1SW!d<[*z4(w9Et"}Z@Lx(7`=LlmS^M$ZDD\Ńu̯B4q3Q ,wΒ%JBBWJ9AaW"`[\BTF<-l+RGbnXp %?f82sЌG2P>\9o:G ;fPbb/H$뒜 (L^+oTVzQ3̼۞^Rכ3-If:P\= 鶉g _Owy C6v12w0 oQ/tb`O"_=Q^ˆz`Y{o}CZʳ vSUoK&T:Fuoz"jam6l(+} J5u @Q @ycؒ?rk= t2Qx FɃdWy<[9(nȾWE~N{);$ y4z,|fǒ#mnu!N{b"2n{)ysgt _Wȣl k\*;G7r|jt}˃bI˃*rYA:zͳ2۱"$ %ctiLGi; h'3ywCUBni[*+QN*v0+}﮴>$e reؙ\I^6V;g2/W {oluӬфꑶY.kJs`7p.ݷt]JzK,Av zT (D"JzIX);`L;0hY]~FĕI\m#RѸYgܑEA+F1Re^Az ?8VjQnK-7Mbi$Z?ȹ3M(|$Ē ~M~'nΤLf2B)H.j|~2jဧhphqH6<^Wg\5Y-u!Hۛ!s66G6XPHhx?OI!U7L&FW\=ٰT)lF~%920 m-|@ϻ&q! -bh\]н`j7ux E1{m(pK?qDvQ7FSM=~-7LF\ˣT>n|HNne>, φY䙭-A1d!|өʔa7z┺T3S4q L0"<_7XW(hXdLe^ZfH֐KaF0+ݦKk91Ё2Įvce|15T ei,R-}e EoOyLc%9pyo(UMJvj!(?mLstnNtC.I]hUTYinq$Ek&yM>QT m =nut2UˋHt9"elA|;4mC!>((jܤ{KE}*vt^ѯk!#'#3(!Znv7d`4w&'>֓ܡm6o,"^f2avYJ?Ɖ.*l.@5ASx_7dJ׋k]*%Vu.35IdK2W6PP/ Y>M?>g7mR%R@7:Jd#f f4(/r٨ Z4~vN|}t>շ;Kb@{4<=/힅^Y6`rhWPFfn}옓7˹@# yi ۃZlh0R4u[G x=jʜ_0Z݋%{iټHj窼~Ьz"GϒTYR/|lЋ'%+J-?G4 RYh 5q zRe'UϷz;-jǸ|`Rfv> *hzY; a̢VApl/&pcj%#lIָs *S}_"m5GW]f3:<~i͉d<\rzOµ+:IfT8kx&#* &TSu$7l]:VɎ܊z6tvd3g}4`[M*cOMSؓ0 P^sg׾lph5b^.Ĵ0GHޥƗZ#\l>&JO+,yǵW`DN]Qq2xs!$|Cքg,>XҭFYڭ(p&"H +HY* Ӳ5 c)ɐ u,d{!\>Wf0FkHKy ez`Ps<|nCHug&wr(&A:hVA&ꉔ;1p uzz=Pcav_~l6ww4[{nZtE*>:*, ],,%=2SGm!g&rsbe' ܵJq5FlHKj3j5խrGfG e' ncy7Qڠ,I<(U8 Y8Hs_~ ƅ*]<{=_9B_dէ sYR֫;umyLA),(ȭ.\ qTȴd  (i"fzDJI _7lu>쏢3/oY }jM!k Y]?І>{ZP*t;X!o ~2RTőZY_0bVV[5'l9hUD%ky:\gwbf0ps^}9~r0ަpRU,Ih\m%'~ / ({&up!jՌLҀ "&e"53d0*}&-}`~R!x_r[%qzRRB X!CZ ]3n“'|C2#Mm`~(d*o8Ÿtk1t:E:p>xV1Ղr,f{Qo]# 9J=:٧[ǫtPmg<{-ӈpzoN-BeIpRd^gc PQC1"ߖ>HĉrZbK/֟S nk~N;R"`0VNKy]TK^_T>˷j 5^t:C-0~杠SV}?מDC1 g_݉iH, N+9-BTy#XA "H'aQ]!3THW 3uhQp/NCHR!Zlm\"쯦}]< .HDPS .›{Wd$@.--\K")؀ 5paLe0Wk@l/?)pqd nyniF!kw1u}bl߮XyLmi_?&bƽ|_kQ^2 zp w f@,vDuׯ J`^+RtD<0]B;Sgyw_9 Q_ȮkðOT'ئV? >K;3~@R=xpBћPq@BWuSYHbyoT<wHp68dK "~PsFӷ1}A5NўΜkthɍq_ >. pP^߫U _Zˊ2.N]RkT 6lER݉uWtj5IۈmB Pf;GF>1z%Y?D}1f/>I1ź@(J@W@Ƭ[3ʪ$ΈMqnBpe#~`+_CpqFFr/  _BBY9b-Vc s>j.-\k=D}QV$zBg19،9ŒC8.1c>~1dWf9p* i[L@ <Ҥ0cxf6&4&%FNHUP$ctqpQ!a2?˜cOOozm$TYJt*zLȂٰ՚.L, 4ǿw|zo]P`Ԑ"Z$N5qjah tTv d'7!.tB;YwZ/P/H;IyGk,-O=Qτzz_1[RGڦp锊47OPĆ0L{xb d/ 5b0aHc(,]3 +ѓPq5ZF'j3VM:{@B;փ_n7$~P /LLL,4BjN$ ){T@*])(KH ڍ k2J˱l.63972!ibOFܵ=2jۛѾjoK68qGLdMBhu ~p`y- j[̛{<-|wjsYe vր`MygNF4Q^4MԮv#ȃ WmF.G F1/Vڵs4:п8#%Ӄ)&je/JܓOS6ͮWuANSՐ_e~--H؂ Z\LeV1Xwgn~6ڑJb#9 UT]p]m=dyBrU>ǁ{)F/4^»J-z<iCB722e)a!})Mg}J 8I6ӼN %zjLeQ8LDAh߆nڲsF 6<a);Qhcog}qIBwң;=a=sgXј0@,Ug̱4s؅ѫ |Sn"ƒQL@|ar9q~C 'Ty%]Wb0x`HՂ@͇=X٘ٱBQGVyTYzuOKN,4O;==f 圢~WH7$2Ez_0gVen2FI;7J*n:8Լ%եG9R>[nޭҒUs \HqS H'5 #nT2S %mE _gzY7hbwM{F^S#eo} :_[(=¹үEڂpͤ] t9QO4#/F>2ņM#Ȩ,RZy#M|m:gVĦF]G=j)`)\'>G]kr~`*~6>mb&|+D;\Æ< N_(ts(?f1"e{>=0یg#*J Y>Xh[\CåhoBfX?*cuQ`:K{q6C*Ĝ5s "(^A6?M.a0:! >SZ$X_?1* w d~礳#"ܦH| E18Pnh$s<4CxըBXr7:b(2o?Rf+zuߕ[^5$8̒%L1R,oU:o9U'&zU(B;$8lD;8ANEO&Z)ӯ@Ǩ^l=WŤCSƺ:JMc"T$L` i۰ގ`2V~@cY&}) 롥#{9d5~faJ1OqTzn(672bM{|q`@9ދ xBZ@v:֬ [mqE+]]}=^. =4ԈryKrHBt!r%v@ oMX&`D)p@E2 $6'X/JWo]~ϰ(}KK*>W'6ma?C$!ad5GHpb̲`֨sCRX c y3>> *hqXwN`eۿS|uyD`΂'ĭsj$j/)P[B~t,?Ě ?m:D=%?s(@v? nsdP"8-e\ҁ8j3h "58<1 ŐEЬ>/CToq{U}w{2s_5Tyلj(Hi3q 4Fs@kZƒ2)H( *o<92 %KD3dw?9OGRo*`J4LS pu{ǻO}'x{KavO8#}HaLnmv՛./$r2*V$萳wҺ%g}ʥ@뇀hOY,Tw\,,&͛gg-,ýHHO }jN$?o6C:\(,߆_v-QAd൴ -M k`xzQq']AF[kQ*38>:f15Raa`zx2O@iM$i%>U1O?B̫qCs@U~y݈6bݑe*֊,%H}]O]j1_r \p3@v+ڠf'Qfn|>%xZ{;N|S"*$^3a.^s]{>({c_Mw`urivEqé ԍʼHh J["0x~ Pީ}^|4M|-oOPb_|vu RL=lZ7!6coM a%_e4^ TY{{&-yWm=i_u-ЙC'!N<\II kmn,xkCnb7?'ralrkiYț} NЦ\ʵ/5ʃd?k`eªe~~neK$\d?j-85yUYցT82gIAh葢 1׸ qNrݠȞۇLۤ HPੴu",(G^?T gOWXx_]T,X,"%2#2q^PN|I"5X3pDxtpvozOU ې~>nd6 /m=* u7aMy@OdCbUl2 e}]i nT'aϡá0|h#t@=`6<,fCL!wU rݮEY`nR.0y՗1&?rTgu 0z*WBM+pۥlQ0?nOclǎv=ج4ӫjQ>`UGrQiqQύe Ϟ$ _jX3];osm`!-RGVV\ɧ=^/߮.MHxBBu@4!tݏGKLWV}v:06EsԎiLUF j͎@Kn>T"2l5Y{ZxI }7gEJ{FB7.h+'@PW?/p%Xs|<'6;o 5$&[\rti4=f}D9,|(xFE-d4-hwXa]DwC]&8Z37禁sAfGuO-hڱ~ Z(a:Ҩ)S>o)|7JZTqlid7 Ms\YpqeŘ'Etr 70 ZA F-ax !ߠ[̇leaO:>kE( mpȎr&d}0ޮ=Pi:XYuIEL_.VlPnLT4^=Ϊ .Hy&+~\Mq=2$¼`*T.ȔQ/1?ˣB67֯c|ۓեby\-Dy رl3G5c* Vާ:/3Z}6K.yWėٻ4^Z9,T= e0*GlszC(٭/,^OZ !řpWb2 b3  х8QPi!UAdӾ#%pʞ݇×Ln~1mj@az1!ud1Yu./ ctއ'ATL:-2/# ntznNJmzvzl=5Pev`ͷ9LHpUGkxANTWia^#pSR+ۋ ~0M\e3!E~iyoa`<] #1I"m?; eJ}h-[KC+F]&R2K? wKpy<rt9)=_"Ba(l0_L[ Xda(DF0u݉6ᚥeC@~5.] #'P|T"Qre4+2  \]jUx,\ݼ*Ly&s"{G'jdvYddJ=wк_8l%)mZ{eܚTC=HoVXKM =]&gY"dɎpZQ-f՚-M6\ kbTӤ!*;\OOe_6s-"|@Dl'4_ [.-O \N4ۇ,,aK(:-#c<~9;/4Q ~e\eg ̼','OngG>UUUG|Rp bƢ`KgYfUn VΫܦ]Om Hz HcVA7.WeWI5 fxQmU.gM3S*Z$ZDUQkT)1O3 fSaݗ FrZ5N` tdQ}U銚{c8l7:K$M]WC9WUOV(:6w-Գ]K(/K i@\AP DL&h.QMVs&Eg<.HI(fbwJf6R'6rCIgT?U?{P5Rч{,@e.]Qr9Wg? -h՘u=Ls/:Pi3htp4A᩷w@Ȼ .6Q*p$!̴ o5L\k%2G)X-~r p7W_+jAPB/ >+ah JקYdTR}m&;n"!4"?Ecu3eU-P)OA( 6:s6m2Eolyu[8l LIh tGbY8z *uз]$I2I9n}@1{* @3I )' E'$-VxlXDG5$'بaemlݡ[mA7e՗.ľTy ==>X*א}*p8>&qZ3$Y:7p3t9"4+ m8/6A95vI$f5)q0yv4k !u9-`"dH*+ tiWn#Zq/jUy#9w I #[ qBq3ͤV!-^/]8U-mRj.>z80M`ss5_ c.JVPbC] y6"l#b&w?1*uOWa#j\"~נi@tX=ZNWSL1XSS.Xr3wlx{6V>c6HdIYFwrsLCO?$UuuߡCKL_n}[Trm]>-ɾsr1^4peupZB4a6Ԏr 4 y5=vVYm%ycuUKCN'wqbٹ +}T:R:PS_~Ma$9 8;CB]Kq2q %'tuW/ĕsZՆur2EI6,嘫TFԸ^ "u%2_؊e`hXLw)IQ>H]̟C;&AQ//Gmb.- P;ܙȺ 11@_x` rcB?,KJd0,bc\:z/E'<˶mH \ bG\:fz I }y@!KU,HKV6nF+78]Cձ=YNi2 nn$ٮ`)W=YJD SQs׻, M?}Q |Fˁ`\2H !G]2!N wMD@r!\Ŝ}|U\UR XJs|:MM&̧D6;Hu]8zNEARQPQB`p.EWQOo(x#t+IlfU1Y~XR?àP()=P.Z;3ORTuKb ONV 4E$"Ieم6ufUY ߫#Q%+.6$ddIl[HNHfs:IT JO FD= v:|7 l\i™ی)Azt ²?cV6(D,~½ ~.w\ ]]yAO9!+5Pt<|:PnLhL!Q:0=Kj8?e@,QtWچ6fp(NM- k?>0mψQq]~sT;n{@sUƒ@)qE.U!1奍 l%3 VZ7\_~ =͍I9;I:YPo#^ύ+E:U"B҈67pç'4Mk|9o]6cB49 ˛H2jV+q3 >ω̒j%{I5fb"+x`rF 'ʻB0R0D. !*l&dۼ=g4B?O|rȯQye"odGӻIq!T5 hcL э("ٲЯkj+V^zWoYg`\_p<ڣv³+0ɽ5&mTòo& reۻk ,4:R<|bQy(t֥7!ydAhD3>4},SRďPٷ#b7ˀ%e_ pd8a?oll|6;EۯczOK?8'bѯDySdNViD}9&}:yda/qWf  dM%K5O4˄0>EVI"Qgݑ+DwG7,q遻{`rV}]&  %C3tpHYG0]ο KR{6F1,@ןCHé%lևPy /+(Qgعsuh9%{+lWg+Tlf9*]ޚy]0G,1">]c(!{w^)# Ң_FfFSMbMիDvs?a~t[&];TXڇs/x6 )/,e6›CU#O,}))? S|c٤Oһ@(=dYFXF.8U=b!x0oA` @ __ަwS%D.95/: orūL.SmH75 o&mAY/ VC8 H?y%~LuM(*ш,.3NKqI⟹?.'A? ݼ 9H{u 8m]*)`@ri!~R]vQ#v9237eݵ%,}9e%;?z?EI-!0;JUqNy]qA0p%['8)Yu(Pxpj) =AG1pۮDiq||<myH9OFi"?:IobѾc _:#8::ʌ.NE{bRqႜ߶QJʭd`п7!馔k,w.&)<j2ЕN~XF@O?6LLvE7 1 {eWR5on{YzV5-i7wVFڇ Zh,pt<_iBH}DկBbߐG13f4X~x|&l1ZWԷvoG=8|`6EvoGiLXjX=Lxc<]<m2S2JUBI]v+VOqX& 63<{e?mPgLiװyBhЪ+ʋ܁P19`PQt-S.NmU|Pp1U$iP,;Lu ]U CK9_-6$NqՁ{UlH[[g2? 3&gd/vH}C t`|}K0B<UK>:+Yߓd xu-z- Z>)3c_>GXF|5| [5b,ãC?-mH2|$i$FJ#Vg_C{=|'[zu>aa1hǘk,@}h@̅Q8_HIS7OIzAt 4,Rٶ c˲LERUqkEeǏe8klk*K4|S~]H$K[_Bo=~)̫t t dl)е+~ʭ.-+yDL/Px>^qq?'__'4cb.K_Q&=.1a~X(=ƞ#Ws˨\Ȭ8Hѿ4C^FY97F},XL}n{A?D,ٞB)'`kz'kݭHU 4o+cmn+ˌu&d~7ŗ%|)3׆Wm쑇K4/L\eSbY8*r >MX4':<ڏ2f᷉ENe(q"-7$!ߩ=V$@Qz)+LԑHdP03~^t9t@k }%^c*/ x.xcy/+qd|KEΰڠXʖ:}i!{ɬ '{ [-# Em>^e}sETF@:M*Dfe+)N4B߹]GRL$|b6t@ ^(2Ini|QI V,Mk>t (D_7y"I~WSDAJ-ZuaagE &4v}ewX[0{`fW9Y$ژ|>.`8)f#x|fB*NNJwD3?R)Hd$y1HiHwz 8}"K8@d|#ʑo*p@ᡪv~HḦ́{`AQ^#8ޙMip!6._OEѕ/6,Ѿ)*OGXW=Pljo*-{G w(t/>gw '^fs14c%Զr*Yt)T:@l #ƅ\`lFK>)LBd`8-Q9=+L i>( [[s7 🙇4Kmvҿ=:.#ҎOX"κ%ؼi] G, pfJ] i%|Z!m;Bc[|G1"t1{%D qkl.!~yupC_6@ߦh+8Z޳Ѓ1% *;zTM_wөT,HiUN:D& &;Y0#ObߜjrP:!DYT6:< ]mt]yֶq+\_(Sm:gx/mNԘf?0sJo>ak(*h BXο(|˘6bՒ\7I|H_qrUG=Ųf؁wS:̗Sek$φ . ?eQH _Тdz7Xn`$ZYO.Avjf,W7mٞ>Ȋd.dq$nM-d@nNcKT!QGO~v}/j"صʟBcvDiZQ.W^6 xe$cLPe DRHZK[~< e Puʢ\I:zѣO})=~꫙dDv.uY}DHJ`:΢WZ*5m#ifz[}bH$)gKх^=jz"mh>cxxռ@0l ;1|t9G#ESk)b`:۴O {J*z,_$`-لE򒑌;SMz2=t%M.jy{>O$'zTҧͺ҅+Źuc$vcu oB*#S*i_ =5-$EB>G`]-dqUjYnO/\xaݠ;"gvMrMDmJ L ~)RjnU{S$VX\bg]SdvNjB\7P DrNwnzQ G1o$zD ƮOQpuzʹ{Z1w1t') ׃gRGJѱaBoj Yt ϔ+1 !`4#|rZ\dޔ<Q<) !f`ҕ!*a+:h1H7$FE`,OLssIn44sO2ڕr@d85+Qpn伃;}Ԅ|oɯ.C#)6wHٺyd1H:S=H<`'xBr ЛiPB]ԗpfb'BMpon+!W48 ?tK!ۋixh$'mV7t1槊Q*Ǚ=&Qo-̅{`Uay‚^*&`q>qw9M4p-$r]j<79v_t`chA&=9T3 rJW?WTO3}b<忤DOWL~ ;ń7dIbӡ,U1J$P:-^iC[HIzؙb+UE  59%}%GElUVoqۗc +$ mr9pctMu"DĩpM !L+5"GvsK?ߥ'!Fj DUm5}^7?ym8sJܩbAj^M/<쨙Vn`/eA0zơD=!/(#g%l.IOvU8`xg|'y.iS"~%&!:Ykƺ+ /'Z~oCʼ1{̪ aN4`x뭢T_>{Ou 2C*;A%4o-ޟpYG 9ґNl|Fg#BqmjlU5'/+E&qA<%ʋzxGBsy[u!pGr9dRy3T%(&1N6}Tڇ 5 J$[:Is'(6 D9Z/׭)S9k;ӰkzՀ$i!D=N]7 i7X)du  'ǟ\#Wמ~xW>z.limGX337xi!ɼP!7"1-[4\PZ"@<À`+FE[ȑOHW~:߅c7id,XlIB8B91ԺQD/WmJ7,=7j\?+gƲU-BMB]ab"5P)HP+-(~)=dSSRI[œuZGtoh#@yӴP_ata{XG\eh'JoBm]4~@r0[-Kn@s-9-?($A!إ Z|L'hu{^y~3tAn ͜N_W?Y`u9ƯI}^u+љ |RlF PZ0ol(\Fp}Fq@_; (Es| K@Z'DAUjoCU`Im@;$e(r%X0YduG Z9&3Oil"C`8 ǘ79%'? EAh ba~vnIvYd[]$A[FJbY:0]rkc? GZ ]OJ{Y2pBz>iU:0#-:&n]pQx+chRpu$0 /r2@Dqx!ỏZ m *=㉮HoU\ !P{{)n{ `tm 5 ;L.ZrIBkN-tlᶽ]Y[ MU0U+a5n[K~ iprACA Ad^G֊}m3le-o#RK9X1ml;^H;p{`JĕM<~ .qX)QR`u[uEi7H?a[ 7/ 7X~\Y7=Q?4>wV$αIs.jTlF,ެʰYc 'ׅāDm"X!oa٫ZQ2?;k%W O(w3yzU=;*QOq)뷪0Lm:6X6W^{ i(ؠs[\a?Naybٰs|H)Zdx> zes }9}.,43<*t.o;`Nw4A oA" vujT* ^ahX /g$V5pѬm-fLDʝ-l1OTaЖ1=3w|Ͱw% j?S>/^Dr_G6oIe~ <ې_O=hZQĮ} % q՟xul5i{~ʼۄ E@@0GQMy4[9kj4Zv^|‘.?-ԺGD{GF.۔|g]0(gm /%\*Bl5X>ha1x_x1vKM-85o8Y۠d9źxF^φWO D/)Mx{Ό<M׶òYd&_MP!IV _ Y.Q ႅ|lnoJjk7621]7b_#7ac{Ե# Fp-ts ozwLno5]WB}(tf(mKJI8Jc1Wz2N\wNQ~U{XqVtpCTN`6ۄJ~$F48ˡ7GaR@fp&KG_;5 B0{,hhlp!e旴)6'^"z%&/]Y9ꂅ'`v`"]~ݣ{34º!@HvGYgTQI'~ܚCN\$iifWB38A[2z԰iF"S9(s;I¢ /74EuA'܋7KDUO!i{ uݸ(6d A>_"EPGTQ{2.ss(~M'ܷ`JY1V*l07t&R 6h\0|WDSC?qq pG̔Mt*L{:=4&) - SXY eEW|Al Bq}FdLi7/6Ȼ_PY[CеfӪFU%ܮ;>N U S') G0!.@!{v*t+]$/fvRLq+7|$Z Scx=kL5 iGTcuv328tk\ƬK@t4+R( z \HJ ͎#dݗ2%ݹox#Bf{9Zɛl5y|15W!Qp$Ү$G - aȚ{ۯP17gd4'Ȋ(Wa4Z]i{B,Df2~`<NOP{3f%?25(SGʩnk2}{o?q -:co oH`uqOE"9/1` p3$]u/C nBeQ4yzH$c1eAc=ĬFcnfg8\v_ݥEPH*) XBq\ow,I^T@آ >zTX#Vq0oIE#ROqI8*lQ-_%uU?~P*˟,8?ix{JMR=%5>_nx0찘%[,h[h8qO߶]z\Dbf`N_ t!K>$bv'}L M'h'?*e7SYhItW߻mH׷Np=4Rc9rn8)SNIJ$ P"< \]]:8 bЎ<)N;WtlhQ;jjjIQ>[e9f\+8y*>m6]Fʤ**WԨ1vj:C 6cH[w9Y*1S)s'W` U)P n;4/dE P{c9Ŕ>[ Txa1o93n"O=cN*Xd$I'C K7@Q,ٿiN?Ll)|Ǵ:XlD/i\ :,׌#JćSpҮGTEpYEtv8d j3XB 9J5{t9HL+]kInj,H8a* Rp~I)r;QE)$~P qε'u͏A,HDlc$QwI9o5Y/gYi烮b|?u4IY9 qmT#aT(# waģE-sם P\g0x\f%xKv_Ѣt u~A ZcgRJxpy?\xnZ,r](HM=陿%~!24Jy]ݪRiEϓ  v q;cf]5^#Pr! Qa`Zz8R@hU|Hc3m w9Q8d3!oۓT1j"yߩ|;-ux7k<+3B\f 2m :N\p⁩S5)\cO\Nc$┞*Lr81dzN3S(7=ϣgccpڑI 04%X/bP̠߄7 fK9:[qY?[s$kZ8V䖵 L\kf:FRLph})p~,쌔H3~bjã2٨TO}Lq(`AA`M Qp]Ju_XBsL}?7Q1ZsR7E+|/#T@la][i~Ӕ`@Ob j-@ꏪ`g38gL )ú솗b3Zv4q{-(vSؾ7w .Db 3QGԟ8/Iim=p*g@OٓY~p&b2וVQw_`)ݡԜ F> 4.% <_u/Ug_Ռͮ@R4ôIepDQV xDpЊDbJ'0,O,|MkJÜ hۈ~(O9U|//j޲RRTV>r^~.UAWzMWb;0(p9u: y34*HM0$@DOXs|d^V;"*h1t6BwmuEɆtUũuQvǧ̋ݴ4f߇bJR )G͔F t ZԳ· ̐*Eb0~'X^AUAs髓*J@<<=!X{5ZOoГ%M}m7ϯhb (ӶC<M19$yxc,7ːS/1^4̲F[)=5#/אm&oak?!nqZEMꛨE^Yт +W_a cA.&q@ݧ 7[[#@2QH ràQ2]mv V|jG=9?{[#) 1Ңx@NQ=Ө(5񚒏C'4vW!&*!6QNC'u;b3Tu1Qb:e|AQV/b6wC" 1x̳a|esW.h@ 28/{1 ׻>.a%J h W5.wP>SH2Urĵ*(=r[O]4umj=w~r[u[h&KGI#a}V--ΙؖaaзZ2X'E07}b*|+Ty!jglQg-!6-:-$ߨYv@ 0 a%^v-N^Gro/57sg6DAJrv|950 [j_xSb Nb'`<8Tw9+wt6WnnSFedX# Y/`QA]N:|ȽWOqz-׊/L6P$7s9OŽh'˱9X{K֋bTs>hxުщPYz&հrva kB1.Aw^aJmtSSvjknh10VCRV5So wLr̺FAB} $si25OلxOb{]soSYc}4eYAc҆g%r8 (~82}.p1$xU:70imzcKaNU*\$5/v%KHJE~ (V8ͮXz F2.H_4 ԨI-]ʬY_a|R~o$RRCv h5;N†5U~A㎗ 9 zlҲeLj Q01C~Ao]}K,&AC{vX- 78㺎Ouk,9H[C44{H(I=DmRV z jNcyy)idžXKA3eC4/)VSsB(=Ϝ̾CɌFna%HgxWAFͦdJ@*Zʏ~IJ#( ~w O`L ,m*dk#f=gm]ǐ? eiQ }AB DMb+#Q@Z2M(KVWh܅(5C!A~*-jaw"4lZf;M;qAGǧdau7ic0?a:?d<@#0@?Řp - <4͈A{+pӐZK58FyS^V䉇y*-]pL#1lCnzph ;g4LI#g)P3|i&ڔn~"G+X▞٪ i |9Y:=Yg \zj7JwfQpfo [\X$`aWYSTEjls}Ԅ"zFԥ>evċdr̀Ġ)s;8#혎Ig┶C;c 94\8葡9 M)$t)QoyYJ +հAٍ/^=t2:T)Fb6Q8:<5H,^P^0}t@-=.MhHXZAʬmDǤiج`N.[ty~Fv[s2$_*q {rҡK!é'MMu%7@l֛w+J̿Z@\xnwPKA;j9nS k%\ ¯o̐fd~zb„X4\KSX\sm IjAW{z8u`㗛 (R剶bQU4g<ɦSӵAq[ʰ@I[֥s\B3؛(i %_GUHAi# f@ g}t晈._CJYKV4<(fcŽvv,7^*c\ 8:OZ 4gapn5۴w #x9oNp&RXg<Era:K9%C~6/|A$`|J5B~Ii%\nٍ cĆFhS<|(&*)KCwQbxyqBm۶Hǜnw9..RHHS6?|,{ۍf0 ܬ,ѽ!99O}_D#bP؊{*oH'u!h%7+C![\6MO5tZ~xDDlaQSL|}t'ڤ  IphM2-eO!1;0,i܎543G9tD:0v/8$~y fmJ/CEOd9Φ.+f{xkȡb:`Ê!􇶾@V/Z܊ )d,ug0dV_HTBKeEW^M;4ߵ8K2w5Aq 7ih5.2?rPYU ű7A[թ%$7qc8M\d( ;+W$I(%֧v:jP!4zJϰS [~] 5Bٙ.Rh,@NQ{2*0|YQ@ox8HH^Qo4NAbrl{6Bo-' (E)h[㥉i!rU1gqc겞fp((!o.ż\EJ't0W}f.i4<ޛX6o ,-}ߞ Y caIv'tLJeH*o-0"@q؜{-ϣm9vUG|kK-8iV h92GCi"fjI+FK0 B7}FjD8I(*4{rmfZ{$:n-@Qjt-:X!Uc79ES8 42-K"k]~v_k|ӿs?n/Xɳ(‰B"U6+wp)V~%c^&WR-\  SɧlIڦ*-T\ISr gȱ:j=<iIxn LMi/dU1*77ua+pp!q& g(o4q .ƜIL S,rV|Em=de)?l\ϸ)K!1Z`G"p*^% 2p>VPz2KP4@WFaW\,-PB3 j&&~! Zh g"c. g!w }~ihW 柴ͽ7B1acYS2ӘҠ~Bk~F'H QiKKc@gW$l`?jU U C_V|PJc#)4D[ yJ]ZO?EW}JΪRNT:rG6J;Q莡H-m"Td]I>cN޶8 \\RCC#R2@AG/g- 0{avءH((elȃZtz*DDQ7wz{ |[{0$cY*:S5o q鶞['TȬےS5%dƻH mj^^O):Bso.BGq<)ex'5H[,Ku@ m+E&eq8:ۂKk;c\!.6s?\1IfI+ؖ^ؓmv<T{^1@)|DVj <vahtt.MBh<u>'8De}$XLi ~uĥx>N[+aFNTT Ҹ> }-"جj`9Y:RuX`fmcP=*RŠbXr>>2x178Xw#B5r1&)rIu"+PF.Yb=-.aێ&y0-H"ö*X{hzt_ævwf>nG)r;:SA*"xL#^kдT?(5v }3LAhLa P+yu!2m/~ToXlXKwoGb=t`F}?m#s-s}!(1ҫBtIeIrRiP\ k,ggzXoi7v)ǁ.c`U۹I֮.;rҸmhA<;"}(9s&Q0~,D]]`v<Zk7ڽ!CVg>şW#FDUhJ-9chտN^gJ0 >o:֊Hy(0d*{([[6'iY;,w9ZZq̺'$zx"K4QLa+hʪZo{4<0WiԢo+QC.AV+OxGC(Nԑn4Nk y3_-/j}7>ʻ_^X"+{^ Q+,p5!o6H;MBqKG|>ti}mF m aڻtye8~z}]WeL^ n6/Tլ hk׸' kGD.dXhIў _Sgb!oacWU1QHumlrnT*ų, ԌY1Y,D( π?UcLyJG8׀O]3 *?'Pv2~S1Jζ 8F.& 1iJ5Dax |nRe9 4ԙȐr5d2%ݱ%OtIEXBLzD=^-Cb5 h>Oۉ"B]b̖HSY%J췦˨f$XBsx%&ZDatM+7W>6\,iq2:|]Vp+/n\R?|N |( K&|!,9w.Kt! M29 z*ޑb29 ϊs7!.ޒ/֌#fέCJFQ%[z& dQ]&9!:HUwͩWZʨZ%_zCL(}bc``ncL"܏("#\`{) /gwG#*XeHzgtN&)iuK ,)[g ۍy!JqSJnK(cY0VJNcDH@Z S.:RG1fm"׊u+};u|ЯI:BuQ6WDrDR9vBAݜ{m f^t2-ftMicF4Y uwNfB`"g\ K,M]0H 晟Sulg1]_wdP+n$|C)%kcҧd:]3SB@O$s}9gW,Y]9Gކ'vZrP0J?n\%p*Ca丱QT 4\7w߰HS=a2齈4n9o|8#|W'Umm-*Nikj{rr3y0X#bdu@p*6^9;}+*{-jvBiZBw.G/(7oQS;& !؏hM26 εi\f1nKQ **hCaC\-: -w4P2?zSnNw+$C,&?Ա&?S*.'ۧUs0﵋\{SG'FF3#?59_F]$=0TD? ʒvqH@0a&@v;s3jt9{iٻǻ8>Y[^O> YRd".nee$|£\xr4/py2*1_X2\B,*V$ElU:<]:p?hB[Fqtdlè+uxxH$ |"^oΝLhXžǚ%=Ѹ=ԍL*rn rQDFFC- gå>XݗaSIzjnz򾑹Q->4yЪ?)(Jzu塊䕉b%ߔ$ ]Xfa 0n:7vCNuib9SwՑC20ׂ:(zچ}LҁքIr6{3/!..zX{7DΈ>^|~q-Pc;6zhFJm4 }.E5D`=rf(O;7*L :F< z34h"(ȵKmH~(O3W0{ ^Õ NuK#6:/Im\%ڻá~x)l\i#P^ 0R)$$|`[z:4%^fJبO&n1n@##@ŝD 馩X:WMN;BoUZr[aSNw@i%xK6L_yI #7EpݟqP6@hQ&R0ÖU܀ 㻞}S`> b_B\A1vR҆(7WRާi/[9Ӈzbs(tܽ Ng  "4nF m[$\h4[a"OR^47gVZ^8E@ 9]sÚqQEJcm75s*_,6ob~53⼅O_ahﱛRT.n GϦE^ɒ0nŔOLpW.riQ3g}!v cQ ! Ye^zo@C/,IWD ;fdW3Z9.I/Vk,tL-w[K31P:.8Ehng$mѪA9"Xϣ@ pr]VkJ^TJ|YR/c /c=DT:_? 3jj+ nx=pS%_KY<)m/憻3-miTb@|8^c;rࣕLd׍ۏR)V *Qç]&^p,44y49MT /<HT* 躦>7 .H:KZL> 폶 {K恪s{?8&PC:F~? BH0`Fu@Mag06u|)}4C"!3Z 옥Ya3?kp\ڗN 1GT:lvgs_F[koqh$iS5ۆ%A]#!WuhG]qfU\َECqs܆& 01Y@MLj z0pmkC'WY×clt:ݶaWwLʺHyhP\YTD)բ5d3z˵F Cs bP[݌g2 t3_vE~gx]Do<~a*LW~,>Z`Y-0ڡ/Bͩci6Ö^v+Njji?򬢠_\}?#71D{ZN=W-ٮ)/lEFH9 |PǑ?OPz:347%.] Resv(;$\[gcoBۓ$XQX: ;vbCe r9[{A9n%kXvDNS$ '؄'Ċf&5_KjF۪܍g@BǏ*l%}ogLWT ֿW b.B{4\"y(x{OhFIA>iPrIZ|ɔm<"oADI +E"N#ᙒWĬz'w,G.'4DaJ{/b99)emP]JvxFcf*hX6ǐǯí׈dJ.g܄t`YM'&mgLխGQv + $E_tM|o~YƆ+w,֘uTnMd6qS`ܞi3CШlvS>Ny"bK2Ae8jN 4iX:pbisҫ}k)ph jw4LfWzv=[}(VIR]mYm"ĜuHI'O!PkJ9%@h-^љLae8$Wb]X<>i}&r`V73qT{ =+'<97ul[^7ED?d)rd¥ v:tA8"~6έi@WfthN}U'2l&iu^Sro6bvЂyeyIg+ЩdYF=?0{eGjn8B31CzԒ\+EVgLw0MjQ0s٠Ɗݝ?I+l㾇zWt8Ґ{? N +@R$; 4h[)'/]8r&c 3Aօu+$3P[6nFkH6K<7ajR.oKOf2toP꿋kHuf WH@U 20QOձ> 4}c5}o@"Z_h3A=)hw1qjÀ2yԟ F"LyU潹!k%c̢e:==,6L?h>?vA L'HZʏB,(TߚiI9q.%;gGD)u/,93?DfeV<kFH4uJKLeF AzU_ih jnSdX_h[Pk8)`,]6-DxO@q' B!THSVykk\%fz=TNs QF/Tf!!eN:7<2v3~{%T Sgu\BҔ( 6#ް~oO$;gB20۬/~:= ؠJ{;o :는Y@tH   q[WFXtM}:Rnw Z _@,.TWX(Ylh]0(0G,T/;+dny*4ŵʙQʒ7ԱاOI!/aOg# "=6ihJ.ax&0&+^3bxUθ<(;vU@n T"HA~[t 灢=+5. d-<(F85x,~ej|}X']:l%@ $S:ֿN4`q6>F~xm_P=UeY :lM7oSv G;«rۗp"A/> 1򣱜>U'j:  4[y%Fo6w\m$V\XJ?d " aŘd6N\vr6DI8co=VnH&n; JCL&4>MuY&~L I[ B"*+ L( |t)eUgO˜ 6=Fqu~QvR7Jj+%&6J {:Π.u}&cOEA(kM,ThPi$wә Q[xG4RG$4Xp "iEќr5`5L/guRnj{,QœU@, ng.(YsyJ?`b x ] 7%+.˨xߋ_T,߃>@gÈ2N`.Qɰ٢71i۳V ?5cr1ьS{&T#IXк?@god?6vřI%e #$& `o7ϠM Lό\1G'O.Q'mW&a)4]̧Nn,!S+49تL'B{K}~8˾rb.b^7X({L;_^N6+in@V~k(: l2GǞ3JQASQ[~\NC/]QMmc9vU7ܫCՍ7 .Ue4rOđّێ.n4P(pSTbyꌰyڊ05$ zXo3ෂ~vޫ{1N\+;!& ׵'(nL(s| WgR6"o5%v"gW{aGV▓tS i7ipV:y¢@X{f8#Jw)M(>%&1 ăJFF$àP5yO[x oqjbul;`ܔ%=&M6$øfRWU%9b^ ‡*֓F XHd9j2!)跷9,ƭ> @0ilz}*r"ϳWR2Ia#l`r7d&}+Q8&`Np5aY[+ لn! L հ'nć&0_6,8H$[}x󜸲joujKG1d=I~:}'=$2n9$eقmi55eXfbӬJ8׫>W&uZ~ct, Z>fN\drҜujYn,l؝f5!p5 )IA#uC 7\2}#FlJsiPu/{@_v K_ =pVt㹃pܵs ˃NLaw쓣+JJg-g" _!PJv|YYaZaeү0@>ᄍz,|'иn歪 {ZJ^",!A~$ .(JN| Ib~G?u3 =̏۰qo:$R%!L +Tew72BTAv@ 1J__Ne:pP|A@(lFv nQ\,P#f`ܓVy 7|0~/=3c0o cųA}el ;w^A}4r8!YwOCQś:Z,䠧d'u. $,K ggv$}Uȳi 7S5l VW Q0!cx0m ?] dwwRIu2H/ʐ3D FIJrs6 ]܁]Z:~_ r .g{F C@ƫCBO2:"dA1 /ouD77n&;$-;orR4YH^UƒdHd߸ &yP?npB<\-}OUMoCzYK-I&SiIGgՖˤZ6L}xI1S ;|s &2A0ZPbMKMM A'KeB|0VxE jƌ lzRc\bysJN勶2 Ub2;-;9OTGad@zlχioaOЙb@iLn< k0 xȦ ze$Gv0*m信LWh*b });(N'~ zn~C㺭L: JhEAgUo}jуvt|Gϛsxw!e#;^V,}r.ѮH5_8az&!]g_B#¸O ]_u+pJ77#~5hrNt4g[h`YM]A5r[&RX&#`op^MۉZZMNg9w mVrLW" h~_a&h.*8!ÒI8~d:Eť&u{ eMG M2 βSB|:V9~`CAGYyZhl*vo78ǬϠ6bVx^ 7^7 7EY|~ _PVO%'-ǡx|2s9SF_'T :"M7-[.CJߔVԊ !^QkU*!wCY qm`٫Aq2B̯djGJf8mMyXQLG雠V:pi&@5ym06pMupzHJ͗m!Bd@2L|_d>"Sx4^#SdßvJ|)F2lAbz c6h}lĒ_:KTEk+F m |_h~cNœ|X 9wQeO4i oƐPN#$`d^a5 G "?-iniLVm+Nf9n6q>_I <Vx\%n\U-+s*O³[X\^K6h;WzSr*BXo-.ŎcOރ]MR0}il~)5Vwu ,^5K Ba!Ѱ!=8}$-0d+[Ԙ)b:N1Ãj DB%RSst1LD $1׽mt''β r1"X9Uń:y*3//1[=z`%D/N~dQr p&ޱҗ Ej({ק=Yvp^w,P̜1Y)W"DU ϾcX.Vcx9jf/` #[ SŔ 1 rkJ=w ."*qopJvtH_ƢAwIؑT$">tDfh|-?JuΧèyx$ hή7 ^!3*ޜ^Ֆ/Y pzjC-МH@O]~>Gq/Cg{I&5Cߵ5wgnpq6Zwv ,#`2/.~ÁZ@|,νD~BVx8OE~iō_J`˜XqbIO;;|V^ VJZ/4e b (_cȮ: ij{on-@k|Sil5 \^ $ْ)e9+WZǗb?LvP%yϸR|F]{g_lmZZgK@>6_t7?t;΅"m 3jc5 E#M*w QVJӻT6/M:,hg7VX#Ey"F4픎9+*CGv!&<:~%m+ƴ Ը#Ф#uoxvȁRq,)ŢݮLYe*̵^ ѲzB"[ xuN&C;Ė >EeL0u[m'߯JsJ]WͺaiG.rK"0&e\F 95>=Nt6B~;=e8] ?%v=Bޏ{t-'(Ϋ^!{)!632uo΂e8 PKh `9؁\B-y"9 A+([c s"7uE˸f.|h(b}amz߰zY xᷰN闂 6j<4)Oˇ J7c\>&\3MR Jׄ"N*at;RЋ wm榈O[ÍZ%BG|҉Ƹ ;}BKln|#X ;tЋ"no``Zai m-l1i)uO6]P^!<Ƒ+]qF뙛-ʇhF#hVpݤ)jL F$=vottCzv͢rfǘ2q(zyS3 Pb7e׶+IF?许(<[i'8bw'VLnaz}ќ^Q]ru/٧e0S %NҸj+,|a뵸F5F]xhn4Uj{ 寿 Zծz:oaYAZ7S SZܲuV Jmke:wLy6`i/OW#3IgJ_0bqv-`wɩL^M@7$h1Nd5G{r-q/MX/OvYVwSh+p :s]SMX(X|uK6*5 Vx?V&3Yim}}wsm mczo󎊡hznM2ivYߒhPtjtgOǓCg?k1 +*Jn%&G٬6:*1uP4]p e|R7COw^E)Yh43W}Xi6"Yn 3}؄N؟a*df7iְ/SSVU$ah,tBV` BFxn/!Q!^}+myy2K=Pԃk_u,/Ľz\F4=A*fJxf4hC5\e7X> udkж˥ZuU_h'ë&CvKp̅8UL׀-/޹JcUPY5vI~B MqGKw]00ԐjUrӦ=&Fxf$ncȝsIl8UfLj i,֝O9#rP3u $z C~i_f&ֵKi?ɗ8QԚӁLud]*lbX!fgm+yC}q\= @:S6j+@jV+۬i*lj(+nՌ'.L(z&Vjg\d I}xs,).MfT'5E+)"@>Ͳz_J4׻q ;'7{'wݞ58z ?Kf{7)e@?Cՙ4E.Æ sz(:+\wޣ4yL.pY8ڿe 튾$:tk]qnS}2ksրP+k@ggzNAzE[I\\9nxúk6[)sl2Se.8T{cujG7=IMA7nod_oё4 sE=a&,B8V_ad]N>[o jhΫ'1Y.zq ˝Ʊaz*6JK6 8Dxku1+bFvTN('I搝 쟮!#xem5@SQ+cR: Y)VdИQ/U_X&.J;ZhUfԠ?sձ͠IB%^~ 43L͘gV_'xWU$WpO|ʀJ:-Pn׋J9By72 J]|,Keܺ2y{ z Evz*xfBY%  DzW9P_;Mq^Cr۠Ǝzz7g )e"k:$?-TB<{X )o++A6%0>l[g =7tv'<nsPlB步ODz6Ѭeʒ%GlPSShd_0g{Њjs'Y@{SRw?#a;&_ 0xp'fBl(1cRa.eaKp^0^0npϐaOxGX]7nϯ0wUJH(b3:NŸT]8i;0/c\4HVMaWzFhGys u&?ր&fO79C߄ʼn-XfRBCwRLE_8+=hK@M~}'źCixj۩$$c=fcccMF_\ h"['D ֟$e7(8_ sNP:89pQojyߘO%N턻L0vf.3ɀ"z"xSfe'2D-DhVXd|yAn?2Bk}-y\\BWpv PtG`ݎ#5oEĐBBQMl~2}w$I~Ps{;Um?F.<rjŴ}S*ݹ[sr1iܲGH/״e NEJ{4R G۶1ُnJ}rlB+$^}#gmTm tӥ?Kiӳ%W'?׳䮿 ^'4QD=mӝ́vv-JSYw?@'wLfZ0șrgI{,}Y[ϻ+I? |RtmosU.Y=dm/K~- KZd$y݈Ǒ,o7{&8Oe~o2h[OJ,i ߿6!c>Z*9л9m9ue愄_[C[թu s9 Mwc)j!&h IR7y E'3ٶM2gM1Ē]dיe;P?_v=}g #thyJytI)ʘ6gp}ZUa+ϒT8` ɹs׬y__|׫5ߝY1]MӕGcNOkW~[$ k֑i8ޅZ7Eh +R`-c6z *_Wx:\I6Hd<8BoXA3(y(X2DVa,45?;8 o+ hMpܐÍgb:l~ MhHպFNI$r jC,d;Lu}W`+i-w܏韶WP= ~34׹3P37_=u~{tqCoO!@wzW>Io .G֪C@ hܡiߴTy3_NU|Fwyf7}y}:E՛UӔsQ_ߡwm\2_ń޻.2d*TI(aSTy]J9,ZkQ ()*=,z.iYjmJ'l, L g;F^Ο'pXgnBV"$nf"y 3,arFh AՊ`+wo/OFb:V&΂:m.&o E޻S9BU$eޕn}->|C!THI^)mM/28̒ 5)j3vKR4v -}8YS yu_6Tu&Y6 e|jG^ќ<3Y uG x* or-9S53q Py?{S?_oUe1n`2j˜/V=9<\*-"(  + (HlQ=OUz({J%]Sڤ9Z!eQA9 'JH| po"m/*w[-N-]e2y S`;S5FU}i>7/ o;:v)[BBasdK!LA-jB'}gpX~upmٙF\,K!hy?17]ڬVKjJfm8w~U:=9w[U<.P= 1YP5kbK-fђ 'o~lv>VylOaY2VRλ>h08.E`ږIu h%q9l/]dK/`7ν̥ẌE7&%qljtf3[6p JK.Qb &^^ ֽ>S8p.{NxQ{4ǤעUlno J|O5yӃAT3SL[jPJY1KĭfEQe7Lj8D,TCHȔ31[3vTD_0 d\*츫 =+ .H{ [; Sv,+6҉Q r *o'@FY4M,w?_ν7 Dz]\5ʪp pP(J`mFʋ_A2S \%1^Wi}rP]qtr>ŃBꮼh"\k'+[A^"ƥLMl^p1utQj+ǝ#1m!ȗ&?FLJ-4Syuk7"ZӱXd~Hs>TWUiJP!,A=G\uSG6Tnzp|ADj.+{QTk88wCMN܅ljďYbfջDiޥXr;npPaj}>fvD%6a;q<6>x3aKDڛ5y:fZ8ʁ#M=-JSbv~œV'jeO0Jt,Hk}sxR~ԥN.Y{k^"y&/wh0 i.[5˭ttH Q)[ $b?iνl̑Gi.B?orhM 0e -nם"2gȹL_oEs`aE0|x4@=r'2G9D\weѓ]cPOčCse}-pӺ^ ^:d qLvpecB>a=4 +&S}-K0fTNx  C_V> mK^`ڡ}Fm2e[CX qLO>gVK9K@bNZtl<$Dy% N[bVqPjX߇A:I(|t/ !К~<^p͹FH3A\W{3UvV RMa>bȐdJWƧ,FC,ŚDbYxSW2-}ya&0o%xnD6@n~JZ$P:s bV@M];a#}cH<_> P.)?YsY4!}3i Y6;kQK,Ⱦ}\.9"dqs.mU-n4 #< jbMMH1P5 /݈SʌaR#cY Ot:a{/!jsr% Wfk|+n|BRmZ_k$D}FHmrZ+#B"xS9y(Xl}sU^ Oea_m[aEg: "ȓ.gT}@KT#Z eu(:KJ\  fh&˽rt3<:5+ITJ5Or"KwU B͒4Kq|U4FM;2xn?;';Q',"><͐#V,90=V.f^KvNPFm'Ps^ ت\[GBIK*YS43]u5K黒 :\`pGT^=zأ`LmpQaڹBJ7lH}*""@I%;vw(r n4(lt=o/2Ag(JxΫ?aІ6C B.Gv,*фAFerhmECf UbuHDŽ^vEr^9N0u%jEѠ>(0?s𹋊:4)aUyl;/̰OvLR&;S.x2ڙH,O5cWPҺ<8L.8K]lDFSV捆ľ0V*:!Y]zf",Ռ@Cjiub-PZnFAcZJӭ%Uf693,ig0Oh}] {!$VeJ0G^5PaaPHOډVR &|QㄱN}DZ‹6G_j{fB5,z݅GyQfClX,=-qPF3ZY"'+AֲMXd؟:ZHe`a~dK@e kvd?6xL8!fM}m08Xfh=ga~= /ҒZwW̽JT!om sx.}%Zusf;G \J_tu#Y0 卤ȎS=Hw+:4KŪE1Gsw \7YQY$Ëg_d۹} p鵟/7 fK A P!ѿ|H #֢>4J/0֦P@tl~;}+T˒&n9>iB5uM08MٯܡaHIsh%_e g*G0t фQ]O(q̪N#kU k̈́+:[9Xca[%|'6N|f-9R>\ d[ZփHOq]*Ai})o:i = n ZmOq.['z愂&;0+Ò %&G@h́S4XNczY}gEk7{m3PS50]XY=vHת>XdLΜ/i̶%w>>0 q~ HEe+ L{30Nk,9JiܚQ3e3έ]v|7'{\U`ȷs`:IuXknBɉ(rɓu%gľQa3Qr]9"߿,G? ?޴4|)(ಝ$ӎ3\Sf)'ex1tꎌ~ <WEx55B mQƦ-ӱv먕O:U1Tf.=Cg}_/EmaYRϣHm"iY'R4/ZrT XuY!5J?"0Lobie@FCva/8㿣ř:=?.}sY'*ͣL[K[{>Jv%o Gb;r "UܢŠ:D{窹ȊcV?${+X=8+(Ilӂj.u;C|/8cN/Ε> y Ji~?B+oۉZ/l.B~_B_ uXv)>7m k(vSLf56K p\՞ &(NDE ȫ0ؾ[{ VZwҁs{>˂poj tDRV?@ v6̈́oȬAi`rD9`En+{2;9O I;--\k2*zqU 76ZLE_C y8LKaӛ Ku\j"4x,N6…bhYwP~>lpK4;{GR #ƚ1<v-aosVЁNT[[x]Q>Y@ʤd>w(_t"ܗAX K!V6E%Z d1'$ >k (MK$ł' 4v^k`gĨ9_%fus E81?&u}&N'gh3xk4e; Xp_;9IqKIE}&mb[ƔGBCW72|@/"t|pqZfoѭIJWEBXSPMA?ѭ/` D=%H.'uz- -㽫ܤp/%FM+}Q;މ-o$ә9,3} >}SMRŢ|f Cr D:"Vs(>Kىnr@/a8 ,ɑi%n˭oC~m`=G7YI*Һ[x^0>C;PnȡB^T ̶nŁ՗RQ\ii"#S巼h ] ?5stf\JHyF#.3~Ho,=]Ճ " 3fU&{Fz/+C:uE[Oy_LK^0G y'9֞OG2ʘ!pjKͻ &cw:#SgLc#Y?#{K̓ʖp чn(:ˢ_jp2 1 w<ȨqB{nq5 1=דz: ROq ﯻ%3 =uD(XZIF$!AU!v3LQL b4C dS HH l Q׹>*;.|cJfUFQH>)OB\iCV(ڟ!VF*`|}gQXw zVhw942:yu kPv&@#NCx =AZk3ȏQhRyDQstQˣ/h9@IE|5KqZ8 N yUHH1k$\OhT/=wf]6J#"|к &uRfoE Q1c+*qߖhj'Y`Heq 3?(T0l7ŽE P\TviI'Rt`Xzo}Uk7 hOUfxWKwփE#r.RyFryڑ}.T4bΡtU IǪ A3Js7|"^# P{&J#G{&R,B,<|3}1g Sjlr`U쨱u:z?E8I :ΫO` Z._{N@J&1Ԁ IB͢媗gYKv%)4n/ra9 Ѷ9_`e|vFUjG *̋=nmTנQ[~YM }iI's'BPivwֿ@)F1U`ey*.Ua s =Uo]aM=ꖺ8^0 CuUT?dטjV`;r8P%?"%RLiZ8-Ծ{c`쥮\ g_3Կ]yʼqUHL$c׸[n}ٽƺT+SȆ}xtߦ2fL_jNʾCw˞ƩZ0-9) L_9Xbvyae7dV*:t=Br8H'u3B:w9jL,Y{|Ձ?Dw_ɵhO'%+ ɮx? 7F(KM&)n+ o}`(r/eRȼU(ü .4|mT(Ĵ˓FX cp ^7U' ;=hś˞9۸EUU4ʋs(*;QF@ၨyXޱGz~$#1`aGH?)98܅VD %d^v ##;McVT~,BRCGT…ɳľv[9 GA'ÁYlw5s/JHQ)`䐇=߳'BH$&rLPA#6d~ B50z 6a`yFԍ릲VbQEߣZ+Awm,y`i6Wtz9ˇNӱL=qgG411q18kNfu=_cֲؘ^?:rǖ8R'ۢ`mM4ze!vb M_>բ>l_}V]A\+SIl7|3')bAL/D=x#+^%2۔a(U5uEG}:8o;cQ2!lF p.:5_U==9yO'9Fڝ1GM:PCbŊFK"&a>,3/>Ԏ{Oe-!5k3p֡HH0'INZ[q*C5vMuV@ -<w1%X ZAߜ9tUOʚ0S)&mg;Xm}/F-u`pc"vpD [V9\ $$46 uXBwC)r(t8f[Ɗ֕R߅,:U~@ nheݣ^d_荁IνyOgvɸןulDm4fA־\vtfc$kսEu[cGۤKA6j(˨߄s _ ]A [zC<{-G|m)B"o%(#3f7]NL f\̔vG4Ŧ6T 6{jrɉ$ X i8ƫ+*~qcLrPn$۲%C0ZMY,Βs0`gf GۥL;ь2+(0"z_#3 PQibͨA|+DmN'X68ai5!͌'I>Mʟ3srϦ. 0।p#e U% gAyHС;ɨ#Ŧ˽*rFz*~hxM 0SNO7"?8 /g ejFTq Q]Q$d)#h7T]Ĉ.ˣ$5-=r _AgŽIN2-|-!q |}Aqxf4zR!`cM eɷݒ~ΰ }R,GƉl'e QnIhu_7/}J"Uy$Ԋɹ#GhrHOW>0FpzRdI6S*u kU[yM_JaI?bǖ L;C6>IZЋC3JLsڢXJJJ[J!vi,xZfTmsڊ(;Y^ Ef:&l3?5Qb Ip.t#J<B.&O s/(@e\u)s0[2|U ]eSSB3M`oSe8qvtqk^NݞÐ'-Aֹ 4yibg4H'V+XIKcݳ& cLmTp%V]0?/ f1 4Dz(wؒVޯ̀/™(~7Ô[$vAOIoInRUrdeMɅqPye9a$n躥W2zcJ`p̩qz=l̬w'C'*lʰ4mb戼HS+_.a5E!$3Ej <|&o.v <lj\Ei=.5 }#ZY,XX.B> [׊y**8Jn ˙ZrFV5ҎݤUF"|0XA B^a@3*V,kgAGrBك=ڬgwIGz ZH9pcJ~9^EL#nyF)Fk-9selN ^>0*G,WYb^-xqH [.Ao3ʃ)&C+zZY.ry_z89%wVnDʘߦOJ8 QpT[9[ )>H̰g k-L?ךhA&/,"OW#E폇!%FAp=As=܊Z"&xa5Zhkc% GCto12%势irr\vo9-E/PH]|[WO{rǀrٮBhd3~z]ot7} "qݙ:ll1^mx30n2{*n4a~q/ 0"t]Fp6{c`-e/qI>/&胩|_l]-!Г/0/u\ H*I*bF:6sl:KP*= jg3F̊9J6c~ʝ0%r_َ'43F|'4o R*? toW$#Hԅ߇GT*CrD7[+ hӡt147gyz6DǜXH΄./ |?w@6=mfZu9SfZU*omŘXKб~q4uQ$#{{XE2su&5IJ_%qp.YTNwȽ+X^a6xBon AC K6(˚1ٍ!/8 .+ P24.dAb4_v  Gڶq Rȷ`ۧd2wջn0lo"\8F5P'ii;};2mw1Kf`܁I0'ٔAm:=(п1ACAᖌ3 Ǭs-T&d4O44\ K3U\|:0JR۱4y⦗ɣȑuE0%BH_LY N{ʕLJkApT)]L:L=2VDA,319tYؼqxAx<I'fl?tN$j ν<qi(db`ᫎї=5?)LOeʑcj9λ# z7;N/Da݄`Ip9!Z Zq/X`5حLky҃Zm֚}ޕ̬$TZ!vYCbb `=rK6 jV}g*>hą),D@tJ,dj(x "c4LBj󢞧:wڃŅJgQP,7@؇%oAGp޲ cQN .Vu0 pnw!uOi =45n3-HD6Ҟ˶Ax\"*,X /?'v؈ Vp(OĤڶ֡<=0fWhJkOK[kscŧ&!zBlyI-k}Z1 Ji4_! $zl 6ծے$ GإY=:oG.[=w |6E̍' H*gǟG /0QpF=<_0urͯO\+}^mWk~?dOfU3@>-ؖȸSř0b k&kM×FqNfߡJgR:N^&ϖkRTiq{l ;O<(^6~ H$miEOD,XTθHMt. '+~S@diw*Kqf;V z7gʂMb=_AhrtC@$awŦ8^%lt[' kb #4P|\8)B e`19 @pu+uIl3'uU^ wbakoko  qTڥ ?5t{i\%9B%?;Fxkݖ˝ǣ Ԋ3i$ʫup]NzM.$嫋8lDc/ ͕9r1~UV <+cvt]ŤV>#k-ZM؊묱8PSt1 )x:$0ߩ2䘼C*u;v(θoơJ]L0W]P[uUA+)uiqZg˝ƴ\XMFYLFbq ᗉT羅8liN{:TxS9#!rϾI ɻ0ɤtC#@Jr]+oƠKʿ=N6b΅GQ2>-~rP]C(A7.)0t:qiDnZ.[.Cv#5VxLg%$$`Up}hft2dgGGlShdao/*0I`K]v x׳+84M84뽽v>Zk9/@o<'ߔ|;DƍKyҋ%py"Hl|-I8&vW ։u׭D).s !~0SUM =;~ި<B&~%[ vZ\t ַNˋqB8Qp}{S 6gȥ^4#W[*BCHTWZ:Doԕ$.@EhdL;=&$dk"HgbP7{fire[86VO.1TEK̰."}J7>=hа8)yy1_#7G*a6y䣻_3@!3ڦEi4  N7}lT J xx%MR`JaҴŖx1,J8~M7)ږN1s6̅IDI1Ȝ㞙V?D'W6mQʒ:яh͆];$#7L/e{SSlsjQkkgTƛ4yE\l1X0, M'=[nUnnNyBq0.ZC<-U޴k µ(.MDrAq/W+XYwi8njBB=O,R.'枛>r(E5!L=:q;EKW䫶6sl  ̑?%W IÀF ui2`*´ MO` "+| h@n:?j ֞ĂU(?A( Xy..5:C튗T<:X"#lG-R^c#Qc([Wx =Yv2NnD[ѯt%kb&1I;2lݍo9-;y1.6׹# |Ts'7:xhx2q0,|WEX/ȤYB'2t?鄓"S02ݳ0PԾ'~[$r%q\w$rБ%ZՎ؃,v<*LdhP?- it9ʭu48zzoSxIתÙz!\/ 6b/ڷ\JUX ]d u')7][xXv߲W8;`hc )1Xs@<Ӗh*P0C'^x]6Ifvs^y<-o+w 35ݟ6tc۠i\:'-+>:QBT6:LaoCaF'VNI>f"nsWڳ?o<=E6%"_:n_+ﵰ`h5_ M~"Nb&.1b(LPTxkǷ8>/c>K5Dky|݀ߟg8IΑ Yi󆣒"܋ڶ՟)M<{);: p"oD#IR@]H?NA {%@+r #paڿS?"+;V66YwH _VBCx}-2.w2Qv>t<0;._6$]:,KT;u #͂3KOQYnIZ Huapmg7vx ͛G<$D2o Z'N"Q~PrxO,{ÌIM0\N]MFP11Q([zR 9pe.1U%F9̥,h}&h@[ "?X͔^P2`[ Puڸ⊵Ylr8 <:f:I{@o2e5篢&Iq'UTU^C׹v'LLMB y?A^U5M*G+*Ra:tᲮk^'< 㙧*>xuߡ}*q '_$Z׼^~B?lx+W HRH!%5FZsRZ]JT@mv9 qjɻth R`-$ ¡An1=噖mf+eZBB/(ϜAAfI60"u=0a4\m D[suh6(d 1% ^Wk$>!`Fxb1m} sąm}I1܆شuoϳk_/7K1ثvؼe,۟Kz?8fc㭪 * ^q ïo$)Cg` O\ڤ[z7E((%٩M${xcWL~2T}'sc5Q+8̩(DD"u=]toI[DiL;(ESmg3'QӯSq,;"LrV$;< kֲXL4mPO+:[`U} \ >vt]G~=.l8tf>A;hmo!ԛ]DQc%< hU*bR#M(4r5}δaX=cuոf^& S T˴u]y6+m譕4A?q&ӷ}O\f UU룺-%`5܅YfFA>y,筍n0T[ѳCOrGs_".}>U͝tb(۸mrxEL ]Y2FWӸU?psf'k B7;+Cϫwy =^`ڌX81W;&OG"Nbژ轰 sД,Y2 yüqϤ;=Rfţ'TL#w0ԙYFd+Dx>m &{Cʷl4XjY¡}7<*m@xC H($5WY6H* m@U7rajtkw)mxڃ,#_gpcw.ˁ7Β8INDsDž_ ո//H0sPMrؑXu0N-^`Lt/4D4N}M")'?}H )BJ!SE{mOoϠZ-ސT [+}Ң$}d_'"p$iWQwאܻ UJ4uLC|@ze~Zc6&ɢ|wچ8<nںI5ةqr-21^k™/ m2#?ntd+/YDQʵr}csź$tds9MtL8%u '+R&X\u'g0_}.-!TZHTLS`!oj[5^\` ǢSK>%PTxŵrT vXA X mƿ^tQdu(X:8W8߫A?sC> %*W@}쯦D0OXoԭ@d3Bluj%f+TJ?I}tI!p7dy mh[[`գx%S4e%C~qTR@P M@jesoϮ !;04UomOd.#Q;po"]X WU:=̜'݌l>R1 4e뷭%x+STn~h?%3L};H*.dg˫q7q_rXK T!#UEYc." EפR]P↨K[/ͺbx,nN mEf٢ z_JJԦ䶊T}yg:'B6Ȋ'lfc 6`>jX9m#]=R#\ x<f30!߭+A7Daee1@qq c~g+C걕Zy: Ǣ2]~/p/miҷ^aQB`x6y1}E$ Rs(y@JiL{vLBYpL+((VНJV}y(2/qbJ If^\E%UhD}!3kz`2ψ 58ǘ`]]vNR;;<5E 6$20}S #otŧt^65\c%A{& 3k w_4XHqTc(5x \z.V;gy V$$=[-1]9Bf}tM'' uzZ .Gqax\lnLF @}Q&S:µL/]'ˮS$ʥ"nAƾ4]֊FFM=n߉q rCD53AU~,*&Nr܋`]tO㵕j GS~k(uSHPo!-C{A۴q aG&mVȟ29$ZwPLtcHl"H+&hl񈻌`x7NDhrѠQ*DZ =g, ǘXcm)Vk#tO7 hb!h A[A<~SQfѢGO mJ_NaPl3iT(Lo^I1~I2 &M W;L|s;o_>6Hw` 86B)Vna^&.D&w:Ͷ\gilS O gױSyfȉӺ/bos, dNn~` fLdb͞Z7AÐeW_yV(~f vݽ?EZֹm+C@(ߴl$5oVO2!F,"`!$,W=쮧6UT|V~F7"w/XNz* V *B=kYϨ{4Y7 Nbw1$"j5Γ'1\)9N%"gu9k+SKqDA2 =f4uΌʞg:Ch׌мAi`@kK*ZapO%D˳Ns1\(KE$ kCdl]beԧf ˣf&<4ׁU"1,O"geDc_R ;\51ƨsPtDZ[Gy0q(`&P?AYWHrhvS&A"dARncr\m.BkQ.TN7lU A׀DTcѿ6%^q[;69G骤[xO$T;gG,d['|Fݕ;x_.stt]:?8qTJ>%tq-%ҷZ']:0şQ퉂PodOZ6p zc2yEfܞH-FW~$o͊!D2nLVD_\`( {T\"'uRUgNajQa7FTMw+AǁAhtPnqFK u`E+[{Q2 eAdzΐJDR)-%> Śf]S mk)fF67Xso+<뀗#c ȇqWR~a4A/s$Zwk]q#C&⒦T).anGG;(* e!F{Y/9}f7d^ժ;:%:%RU?l"PK{Cޜ҃vzl|āJ8弩'%aW5=r:b.97Mr`g2V:At Q\aTrtpS-硤"JDhG𬁨(ګz(&ޭ<ƥGRIŬ6 y }_ Ϗ.u쎆Ѝ-=;CE撃bZpn3a؇)!B[^X:[<<Į5f7'Ph6n=AIyRE}$y68_^u۷j`%Z0u\sՂ2/5s3j(apuA[޷^ -qQhdm}BRbW]q鞏 ;n#4KG&4\_x(t dXjCf:6zoH+s~'lN[Muz54 ;YD B ؟E0Ã0Kض=oF<ߍim(mc u_mz|j<{,oq:ý* @z cQ!qJs/EKgW ̱EJ,an51:2-&v%? TȆIV!۽a ڠ4ݓظHkZWXNl([a#rpC5w\.Lg'Qic*b8q '<&gw4"Se;MaAը!s茚um?~- \x5pA(uV͹^̺VM!e)BbAkO 'Йv֕D:5H09%#8;KqE&T$Myͫ_&flqGhLsq~lDޘJظJJЪǴmZz瓤"j]Y rzQrlF K]lcG@ ꦮ@x%Į98m ZOM,K㘇3b&!%y$6I,wwGW.Oi=2!DWDZF@ 2+Zt撀39LEۊ((ia6mQצX.[yl 5E܉xLkan{}B 32ւvH!tZ;U1[ TIz ;L<M_滻.蜽{!PQ*nίI&}4q 1Tlؙ(\l5_D>s> <(ڏQ{ƅqL 6:"lR<rv3J-t,c16G\GQD4KiNvjvs;֤{9<*Yoi~6OXtAFbzd㋠Q*P7-`fgF_ n)2rF_GVx8bGeR˟`yDX} F%,pwM`zs/!f۵ 71bNGB )~7'ڐRZ*39UIDcC1TLٝuy:9$27mJo.//^sxi281 [ zHs&Le!nq<~( j H\5Gp5\ YCSCR}-$7]A]gO(„1qO,>/WwjC@ uj2ՇV WED!lU"tX-(74@z/<|N`@\ @= lZJu&sHP<<:^X8-sc)x3rijW$?Ps 8{#99/_-}zʝC:DFHƳ4 inE8I? E"s4h)#_{QdAJ\cd%6 ;RzzfB'Wbx43裢R_1䳠ze99N9"n}Ɇ7 ֡60CZϤ=MV8)ZfpONg}Iqy*0("=GeoK;rzJA4P*7 :Ës 㿄MMN0QGbbRwex7NVJ3KC %,2Q&hKБKTDTqNa0 us:wxм}Q^]6TAgJSv88ĠV4^? $ ̓&miۂD>ZB*Tp1dwz ; p8jF|_ݝ=]:T4KQkp}H$KB2SwĴ]?`]VJw[,%|rktnh>YBeNﬖL|g cP u phϔ&8sF5.`H7ĸ]a yk|#MZv$ v=3n]ُy}ql7=FT1eYLSMf̊TZ@Y! U-'ok>&W2=q}:avNUJj7EC`݃MX_z&y/K[uPN;|s[Q>Ev#1)у\Y4)eE}X"W2u>b3&4QT:ԥL`, `lqir N@U6(y)֒z(gM ʧT&_"RȆgSF51]h Ȅ)ZV6硘yؖ 9: XlbE`#J#6م3JY魒;K(5+Ut=`Pp3W p5I'w=9nc5 48Ђ t5$^KFj5](іhyE1D@ z@ǃEU,2OY&qCA|%9Oib19A%FR%c%ru}@I_j o X߼֩?:Jri[|1WIx%&^p_ic/2coi7GQĞNIe\$BêWZvb`HH{#JX=R*\h\{UaS$~Շݔ;l62GVnk>~+ +i=I)2b'{6T..O5 Kms* [7v?o2 #9ɝ%'l4h!& 8 Bqֻ[栀#;=|O$D_z?ěBXQhtp2o||ཚe7}([Y; S2f-y8D01h ̹gA~Ʈ;'M֔ Ƭrs R7$bM nNO]pKIp36-nJ-0f Д))wb] =Y +²E`ϷB'38Su6NfT+0$SlcgߍeȇLIVSu!A;dW= Vv,ybp LX'쀢+k("`km=w tGǝvC A{kx,E"U23BcvVd` l⋸>։Vmÿ#wbME͗.ǨrHMԨN'/1tǛ;pMi unoŚb82JN]& })zB +.ޯ/sCZh<[h6=$eo32%jIpaePu.@v51?Ԁ $j[g%ُ-$ mQ &}<GA?!#(*F喱u{e3♥Jh3QTL1w߳s'`Qg,_C֠asT%""6m@X0@ŒůNbg-]EFº+Xg(-n- >TU1TbD5>>r\ԇ)+Z4D’&u@K爔\6D}<_Am 9@˓j-[~ұ8cC(762P\ɑpHFș Gvgwƻ*TWTGs ^ڎcs#3: H8oxK-3c#VZhYLhڳLQAun|ܿ}d\gɀec :sїd@ITS -]A:+pDpvح(ס>k8 9ewqX}hm%k  ߜ"hkU\6D pK ǧ*m8K̢Ki-K|\Չ9>h]E,z^PPmTЭ7R{8jAD^Ԫg!Ջ/?jN Hm^*?wVFR$ L .(e%@IL9T0n nrHBB}L$aZ umT0#'-BHPH㪝?Cypsw4>Pn%-^=UFð*#ybswZ߆j?x1NP-t x@|Iut Tu<,D{G,ްuf!OG7lJ%G5zP\Eyyo0R_ Ǧhlq'wCf>/OTP\_3uhF!Β(& =rWR *B&~r*­0@!G:Aq5'=8wT}jUjHN1G}(Sr5Md{O7F1%+ *"ΐ}w1 K1rs<`ZV4dRRcc6b:k߃eϡ}$KUhrA( n/ݽH\XC]ЪD,R_Fx胙؛OSW$N}!#n}^M JMuRPXF!7VD>x&)U(6Sp \nFOOCtK dqZbDli[Mʹ.k^TF v23G|:QU0:bSq :tHZࢨuڪcks `CcZ r#X@>2=3p)3u`CuED0^eEX:3gU!6q`tT9 OPI7%Z}^@;eѹ*@OTlZ9j)rzv$r Vhq̤}FKM#ͻ6Ҵ1uM qؾg cuKzBJ;N0Hg$Ww$ ۽M6vwEK wBRa"?OcU/ybIX^)ޓ%( ˮT庮yz1X vx+[.L/ )x{uIr(7CV[f(9=RdL o$$)OϣW;9f@8 k/7_8]HxIL,V~c* a;l-.j| Ճiͺ!7lQe.ka VHQ2UW5 ޝ4yaD1R_}<qHfUJE~Jӻ+2Z:Rm7wmp&^+ZpM)`7-N8:HtP’ 9oϱS127 \̑(b  q)"Mj/@/-RsP)![VLwee Ji4%<(4KM{Zh$ov] Ҁ^O)pޭ楱 =%3 k˫l$J7[*FnDmMLG;sS1>|ccz!']M!ZA =`vEgzCEs3RRj=.UJŇ<9,׀k)! ⏿/ Oqb=J) )֢;k]&>X 9r6u)ʔkJ6ϼ2CM[Z%q6=;bAҊ@w߇c󋊒swg |sҮhchtEu "m}TUx*5X\»Ǐ) H앦51*NN(ډ>x2~?JL UÔ@։8Wl84_p7h90 UR="\soQZCxY8^aZAWmt.iRe``ٰ1lU!VǍv!_.`jw| JGM&:?> jO ˧]\{ůN^Yz h]w.I/sۙ:lƉ$ W-UODz":g~іu>p!Rg8o,4lSg{ʴ13l/WQ.JݤiJ]1h[;xxnʤ)|:OdאhfQ 9厫NV;,Mč-YhSxSAwǥ~ ţOee3z*f($3rcn4%u-jo[VYQ6Ɩ{a>&{ }[y؀J[ml2 ?Ѫِ̽*4I)!"͘ ?:z*$6wRqp A#fԾpct5U&#<0 : J4u+v੍yhd\ܟZ+r@afwRxt pLtє4*Z}tHǃAG$ ^~U*cW/ja<&\3XֿXk%x_cΗ@[%<]5?ޝ>gvXc.ͼI^3NF}yؖ2~ v.oӡ2ӼțI' cj7+#I*Qe&KmpS .d ֮D}\:4/sĊʆ_N3ŀֶ Ԫfȷ @"K9) wyʶ iȰ-C($Q)n;%]k.86ma {ʿip+ 42A;v62]'OWa|ZW-",ۣz [R z&f\t#Ѡ[˦t18|ɋEfBo~{N8U *u'߸賖fИ%)uXn^EӔ3EjJvtA^S9GSy2JͶ"8mUuA#Q]^͗AnS#!r'͇¼)#0fW H5!)H ;s֒l80SڛD rqb#gHoBb}U؁Ӆi>D" P+I5Qx3DZ6 $VdS>2 wcӳ)aP:$M=EqKyV*ҁ=4ײ 6֐-E @sqI|dnXjK.ӺZEc/ir0ŴxV~krĄ0߷~"1 2)WO"Dٙߞ~%:5D5hkD`A*C5˻wFICeK3jXb툳mLCƆӚ̒gvUUF ;& Ӯs /'巼]ZB 'Ϭҁ\2$Ы \7)&TW}'tg"/gMEA2[?W ( suq@Rf3K!9OI; ,Dpڽe qa `):)!-ZNY]<>_~6>5# Lj<;Π\AKz|-#m|3c1lnDBOqM՛KϏ@t>z,PdWR (]yX21/pN}6n2_5RztA^r鳝3fJSTPأḣٛyU?#~]( kj̉x|b~c_i5;n9&u2ЊXʦ1J*(zh-ZQ9)kR&u<%맔 =݌HeHYoǟ҄6uaTxg@WPhW Trl6UQz)-^{7m^pwԬ Л}mJz&q9,wO<*Q'u2TSDÞ_c:Y{d2Z2tcҹ׆K( erx7Фw_ {N>-KȐD`F|n~3=M E";,9l!J񺥓!eA3he;|@ {HIo;-[[,iRَryU lTTB9HUbLr?.?ftHF 2v,%b )E(w7LMO #G],#.6GM0:lM|u5: "j-ަït(xâK%aQ0p+n^;7Y0I z6h Q ͼ3uݲ`Q5AW b+˜9][I"_k{ךHr5mTB%hS3RӠSCn0kUˠ%^" r2 [:Y!xbp97#x'qqԏkpc[ <zJ3Bɟ˓ף op-qmeUrdUkc'ԿWf-E/쩖o}DLdD)z 0Œv>boݺ5~wOUK|ÍM]j_WA#){|kqdi0in1GXiB.Z&6]ueϏ_H ?-b+)&3C"}%Y xNlKj(69~EAvO߇y=K}nY<#{.rwLx׸ /~׺[4;K耪vχS6->_ZRCc8 u#v6uH[שfB=HS-:x2Zڬm )|_o\fB}uMAe51`eM!DeO|)3QրtSG!n=Zt= n. +oZ6 egcڙ 햊n~r~ܽb;zd{]:'*8ţ-l :Lk[e+wB ᢭eA/(0͟ ]u;縈Z(m* [z~^+&b;iri ?OC,LhBQ$d0\Y +Xp|. kbPT# 6B~X2w?*.R*k$C2Vɋ (&&q+3Ж \\h5'NH)HὉ_lT &ŧT=Z9#ZCӚfoƃ%bFnJ?OW`t/l6K7o%=|>F~Qj683;07!B;D%U uϳMJỊU6, {;  Ǔr9sY m@c sgo'YzF9x]#fnLʢ(DEjfL!2Ρ΅e6H0ܐ#|Err(j^ NcqسRgw\ҬLp@n`G' &3`6A0 a9?rU1ȴ[o(x B7NRʩy? yq-)/PKM¿w.h$.T0"} Pڝwku{QK_;s̀WM~wsDzQHTX+%O8Vz$LT,$U{ Ē*%Oջ-/ uŬB{`06i68iTx{%,%ʜ ~V=ui&=ԘE1n\y GbvWlao>&x =9<TQua!!݇ ,#US1H.H9&jVGi##A%)QHx#":>ć{ad*#oȩ$\XS#N~AQSN~9=k-cS ֍~rv8 j'[nv٭]LF)mZ3$?&_f8/}`:bu=w4^bHnҗED5ìsDpLU tɇRQ6Yp@Gf~ct5u$aV,Wk:+s vUeTt=cnryׄAl:?Hʱ; _zfdKWiPI ؂xC{۸AwC2N G @@!~ t zm=\ЯKg$'!F҂=..!9Cx7S"otkL=9AQ6ʮ"UZkIJ܋Dd_-~.U m;/[+@Y \dyX.vZQf p\ P5pia&(ޫXmR l !eH.2uQF|Py+Ԏ ]>Ҿ{'@.thKO[lQTl4 -5sPr#@'YlYs'0<)/MӾpV&R*+TmVG 5p?"ŭ tm-9ɓ+^(_>c7ڥv/¼4`t:Ȧ#ciY'~O^k-^U_f0KE Ԏ;=2F#'B:M;w| 9JX]O^n@ 5f褀)ﳀ|LK59?*~-;\XCӥ~``Û\c2SBw [ttxmJ_/T=cd@x!x\3/~ OFҌȡ(e!^ml:-W XPA Mr=_/#̆|4̒2\(@GkOzxuj- p/Sؑ([:y'P` 今5']SAEe9;9bN]q";8蛊路[2zWP6{?eGP궲MV`G*%&5 Տhk%Fͩ3PYA;ee|cnYC*yLMArH Us*^QwflaG]{ib>x3BN\l"%b2(9tf0M&eĞ!Y4IǮX6:|6/a ~.w7៍{!kK.k$Om x<ނH3ӥmfpu4 o& PDzՏ_q1jirH)) o:> ݡ5.w!Wg:I> };ĽX.B|D/{HF%<'k э# ]/CNq5Jr#Yx#7*V7M?NKH T}~($`|K"rDa08z=MʾA.T-uA<*fEhfj,-Wn3+xO2 GYl P"w8Sߘ1!= A i4{W\gec66|o)³; ~g EJ$!}"&`1IeJZXt:#vQ\xV6@3w^:C{ْճ:$*.TZv(|[A<獟TEtv[H/3%"$ ~Ґ)Y{V6/Ex{GуP"1" "f;IE- ?MIęϭ &y p N&NRu9nwԃ᮪ÐhW:"\GY>m`O_3R9{_L;ң G7iP4g5}K .|gE]FerysL&hi3] 0 8mqV^(hL҂UrH,+Dg,.}V9J4;H+lve` vSXyS!mo̽}įCAJArӻV\_gÿ1[vOp=\Lr흓zCˮ2@7k(tғ9Q7SIbB.cIGYe6VZ'A帶5!'(ӻէF:^|ay=2*ZpRsmoJ<`c'y2@F7jGmYqLXQЭSW+O+qРdMgpIF m0?',9U&&QR8g ʷk!<$c?|gИزx1iu6Pyg5?I(Ф+q\aBA kwENSFyXu7M"l uC.a24qH[o[% ws|(F3&2"vJvzv#ʼެ۰}1OZ~EEJxoRkÞ֤J8>K&,Å5TUdpYhHrF`Cʟ+[ӏM`?"8qů._X :d~`M$Winڣ̫IC UVvkx%ٔ\\[M_ɥJ W v&Y2yDTt}7QlM앍=+M Kv HIM(J/f]]Y%(@oDkoFVܥzOˢ^q8m,-0~R[ 'Puf^6|Q<;L B-)q %t$R;M>Nޥi_.ޣHOՉo[5A$h1˧#GZ7MBTA@7ew0 ɱRs5MY)"ުI-J:H\Jb`0r;}zf? `4eF>3`:ę_o^"^%S[8y=o]~ ^} ]ЅOcP-~xI OKZRrOF `;˙'渡W堤aTzu#ϲm:e/H$Js07=HL:Qm4;Ɇ_)MYPxq |D*ͬ(v 6! pꄼ>y`NxRc?ZR>Յ!RcI\Lsf|/R4G;P6hz}0?Ңp2IM;oeX&@o/pob37X)H ڱ 7j[Dv`#tN61iY&+ԆiW ~c; JtrVkib[4٘SV մf҉[{vaRF289F$ PeMaVVYx y"cX 6-#g&;j*nJ 1 W~Y_.Ó']1|)ܵʄKSdR~& }VT `wcE6\H7 O`tAAbKYrsQTHL0yb`^\oĕHFU:Edd;Phm-[ث u9yc{CXa'2#sڵʱ>[=8`8YV .bވ+J1Txn7XvģOJ7{ i7M^h貂6\+" \L%+ċXxu-L8R/ALK护#k?p[i p7t|xǡIrp+cxeFR7wC.ILBto쫛 6G(,DbJE[ &`꓿yc o%v$qĺn~_h3c:v fDı@,'%Rɑ$r^ddPzroK%6iQLT(P9fX0|@R.lYGtH,Wa- o6O24hM=';;UC /p qDt $9Yw~ q6qdJ NuV4-?J||H\$qTEGRzCյ`fKkn<.Pg vrb R_3GQY;ˣz%'#|NV>Oӷyu$!}J<F YY5xKC#'3toˬ=IqOհ120D&,4DX~٫?'1VgjU#:2H?+*apvLԯT}`*1ͪREY({|F!;Gp0B)vlm!dw 2`RȅuJr!9k\|$?9Jp9!ZaY2jF|+EKi\Vml(~S jk @#A/y?BNꁋ1GNع7bCMN"KϠ}s<%I fm8Є(OʷuJi0} ;!O3 Wĭg_2ܙSІt IYCCX/:wUy2%80;?>1!?q7pWGsQ3fE\dOCEZ+,P[Xffu3->ȑpvwƚ}Q?Ԥvsfמ$X)V9P紳p_/kg< 7adt N7ctts]>*ɋdw1UMCQp=dn틦iݦ%='9Dr>6fyA' ?|~9٬Y]iгy[au!bsnXOo( ނ T ހ{IE+ v|#^3 ŜL5}4g"2A9w5 M}h*a\pjF@_9n;y:V\uyNuHWΐVMHkF; T70>=69nmђNbrʅ%m{>epI7 ZR.fmUr͏PB a;RpDSfڑcpV_ +e6nss#yJdnf>B݃}&vqViD+benf^-N` hL(G'c&a30~̓l?COr-_}+Դt:sGŞ-B'!; ]zT}|kԈO /:jgn]{J S>ējmAxpت-"ixM'޿lzA1')ƞ`.piGbs6d 郼wD3˸}V: -pgy Gr5YExسgɱdNzV每큙P f[ٓhWQUZpM~|7ɞE. ?'+⽜QI,}f+v×C%˦q3jA"Uzߩ&h %3v7aC *y_K |ll9]$:! "u14M{9$*~'A`[U͞ y[srZ;YHe<"TtÜt/jhZ3=#]Gbb54_> C SqD' -Tv)RZPNY{HBՁ1\SԓІ?pR،wB 씾ϲUܷ$QNH7-(Dױ^&6ջAIBaV͈RQXZf"r.2=ʗ,T 2 yՏ3J5W{.6S&ݮ:xn|/7KP:'6 smNP[Kt Jb{7;SeY9e9CƢ͐ /إ&=sM5I>r6(}2/Y yTcbguxE6Qd0y^Q$(k\+9ljH< B^=xEd`f7`ꃛ[c9f"8µTʕߙfk@6%_9KkV!}䶏j7 39eq=#Ď7ҽ lo\sqC¦#61i5Qn\ k=ćL؋w d rS-}-NNDB?U3YG"p5g4 Л̢M+W szDFH NŞGY.:lAΛzfֽJ}@i AB!j&J `EK_ l} / d9!ϐCL"+nf>L`~`O+C1Ox|aDam`W$ɌvA.yLj +;+FK;'S[#*`v5*Kb:o WIj75}%3e q;ʪb3 *Py5^aF*\u#4!d~[b`-'ԑL* Hnʛٯ;gUсȌvOÂS劂U.,tddȄdQM-{5[BP% v v=Uf(XWb:&U쉾C4Guz1-!x$$98G|vWυV-\+C[F>:f &6B7"&rSjMqjRJKrX,{Vgh:Ah{ d0I? syհ&ywct{Bफ़ Qe_Vǡkpa"q?_KgWQ`1X?QAGNIF- DHg@"|OxhCA+S쾲I,M4f~>zf_ ol"8x On t6\t]RƋݓؐ3RU& "1,t#? ag>KGa8"}yd{^AS:P/h7BQ&0cdGuXXdUG'r&o jpL<7_^,TV(Å &hu !7_NurrcXuwOv=QS֞k> Gb@#CF ͌qy 6:)+E? 5W@$3 (abI汬wZ̓@sY턝#Nn.AC~ R_UQ*>JSDzURY&-/J/)󊜈XlҘl|(t6/8-W(䑸}!" gG,P{eDݙܳ@*H7fN} <-D7GriRL*Z>5tTbn(FTUd[⫋A~ F;IY^&cŔv%FM HhW*^,,i$w<'*ZPs.T)e,.?5BGU&k&^ ;B2ڻ/~ze0ز0JnQx_v({]ȕp,b l}y#2~`&}fi/>H5eAi@Q3sR%k@bh^ ]:laۀJ 82Ι^ _$ E膪*]JBoTň,1Ai:fJ&-63Wh6H:c[6R]ܭkcbK͹g-ܦƺyUʼn ևzuVO?j2DS~ ,օ{/\/";q7lJL&EoSy,BU,lsBJ7AKgf] ]}t=rfh8y{~jw9OQrvծOfGMgj//-SN"|EtF̙hvqh1-e5dK+r ޤ@R^A&⎐t3'0Uķ򾿆ue+nѲ@#wW{J6\)+qmw Deę/]9)NG^BԒ$uEY7Ns4"fr { /圃L&yKͅF>Fm8 ! Qbתuy`"8aFNp8C]@EOJ<xb~P$C{&s<"0> eV-'|뉑$EUk]3e@xVBb6|܎ݙOdѷ/ EE҄HO1 :}<61&}H?Ut} Ud`g[I_τ/6yAas2i3VS[*d&SvxSU3}u pԩ&Nq0!TZ<_rMYѯ՜ޯX|?>qBdnjO'=4oRJlgS-Űu[3uj.gCTӋ82z67[TpI_"H8e`W;=š*q]Sv@tn|f(FUaPky.iA`hʳI9+5|;š_CKl\ o nvA]ᔛz Ӫy~+dxa~ 42}cnL𷒛A Ng%UjlDH0X^lL U[9$0"M5E'$j$8^XV- "&d \G|ͧa%zV=*RHǣZʤ811sdldd7b~r:YbG$L>;C>}ZF`,SfkNϙ9,*sKL!bZ1WMHs8{j -~bM?ljՙd*Z|XR(cÝިsRv->xݐ[B^D0]6^rlqCCqZ"ŲnYS浂%댚 GG5MveI\^_aH.bt-.KR>N$?76RD&ȘnN׵_*v]+PI.LY(Z?=z(vorC:! RA1bvc*\cv^7g ,& b3αbN fltzH'r,vw _!ķP.:Khޗ~ƿw/uɲP FiZ KvLВ3" :;{uS,tHk(+#MS"mDKBt2xF> v!zBCfCngc48Bo,]Kb͈ :koݕ3oyTy x Ã_^r YWLeȸO4 MGX lëwk0/g}<|\P? g=`%U;1_TQ{/[`F_";ps"}E⊔$+S: /gfK M;m bc|lD|؉k66jR$uIj`r䜅~BXz1cM{7cI]Sw-8jB4|zfT6QyFe^ R?vf**,CaI ʆGYPU1ix)IIum؏nnF\q#(D'V/=.9; xQQJW>taV)[x2mA%_1n&TB0&FpTU.6歯e 93kL\ԍpjo StBAͽ]D@RȞ*g\`\ٔ7H+yo@=^/]ZT\T+y<򀞙]0rË+Lkʫb-`NȄ؊,Vx"1! XK]7odYK7GiX:dT\x'DQs}EOXQ+* +m5c)`!'\1(% "9\Ӌ- I@t`Mc? $[U){wٷ]&y(GEF^C4"HY ;ʩ/FU Хi: r۬nI-|{gߡ"+rĆ-[ÚȰKL,ɢ[-S@5\KG~"-?١T!K l#k>8s9 Tgqo=o~^Z03 uE&t"qr<Ѕ4"頻-@?"d O'ta^b/7ޅF\sN!sת F&3(K@L!X=pvsP 7_k#@fKC:*qjM& $*:0Қ{l y#npb~"xJ&k* N}7xHDvC/x[i A,  ۑk-;A $p:֦+hkg+­t1rWT(E!f@dԥ}XDxQ"J;kK]τz0Rb=Hl{QbP%_nj"IftTRL>n UNGFh'[lziYzN* Cދ_F5(-_Ȯ-'2 Qn˱SihE{7b付mi3D 47(IyVsl&}oŹc@>AzbφGriA-׍/~4? ҹ^hg`uZHtӿW3 7hlEBAfAћA@ 6⵼^M"RLnI2>ruh[Z"0-d82Hgaa@KE}[I_z=K-ޑa.@tll8I.)@as/X+JHцh&IPi?O2!9;i;{+zq h]K/իڿjA^'Pn&4T/5s^~C5V2L.\P⦼YK߈TIRVfવa)|+wow[UD0_<0DIHJx(T2L9BYj_ VA|C9@X1]AgU0Ȳ1$ܨ ˱,ٯӚ>]WxүoMsY] fPVKP-_2MGQ085v9x)l_r;NFfvpBD_}כ6/32ghŠoVRt,iiOKL0v}J;l6ix;PUNNCO:ecB/CS j @L\e TU8a$1 0WHgt, ^gH8A!LSlq_(Ӷz[FqTh6( E Qƨ:A4r2e)g b= 0K/pt]#PI!RqBdbb>UM>`kD<"k~ .5vh߰ASpJ:g(ћŨ~+3H74DzGm6ڲ@S[fH$FC=N~5\h5nU뀒Yb1-#Z]bRo7?5(4L`5tJ5/hSdy {$h-^_4AYSj4f!ETwאqs:S+*x y=\7'ۥpZ%?|}P.+6B uˮ;b{$'`mǺP.iUvzEs]>L=re}pJ&pO\N>u-o 6n~&+z1V2vԗ8pw~d>7*k k2:czQd/i-(7"lђp=4˃_~yTt_~$qNRb#>?*s+aQR`9)AzO8MoyNZB-- ]1B܁-dk%hl H W)I &%yŅQ(. D5tM5Q׮e&&eH~u рѸQzJH&LMżmSиO.{C{O7t-M212m8wuE~{Y\ M-;4KGC>Opx_%wkWFu%bF,_2Eq7?͟?2%-:I`CS0O}N:hxL $S*uԗymỖ$s9y%˖w`J916>hVocvCSb13 -O3^N?o&jP<8}`^标  N?1WU͹,[fw(Bq11QJFm[F2!RkFU~6 TV9oȉ{O}[/kJ wa ňz2޶H4:trJ EG޳:&=|pbIj5~ .3FBK>#0ovWhVƈL{%"39AYd窯_0߫HG>?Q":}v vK/W]OEF:r̾Hĵta*h~gaRfA3uUF黜LG*5"UQ>EQB/m|#VREGA;ԗ?&)w'͕T9fZNy=qw:LAK0OV7nز퍨bmG"DN=eYћb'JM+sXʈ"-~ 4ee-#q$*Ui&4]in:K뵹γir&VÕLtLqh^g/P\, S*j^y{|fŭ-j:ƈd\J鞐T5ᆘ9ꄄ)W>:iKDsYI>)ԙr 3 y7;]"]"T ͔_BBt/U-[xFke/(Dx`)Ig$7yJKLJd (Hd>C"_ҝ {s!yWUfٸ-1Kj4yK<\PȕKhbߨ'쓚xՠOm*dDdpڷ FҐjg@H D聧;X6&>8rh'ʙVFl[{NJw WzMV+1݂Q*#M9qeN_tAKUu-JTdWfMkSY7 Ò.C];$(tx`#!Fj,T1ԗY-i|N&{aʊF4c۔g{їaza~(1q1]*wlvHUՖƟ9AsFEOŒ~ G=Tf zX(!)Eciz_ic|{SB0eXھc>N;&˜r AΩ01y IkᲚ ۷"}YJ ɗ(恧m*{-BT N%!J`r.S`R@Y tw`;3ic':d 8g7Gl i'J#' " FyYd%И*3$/;cvYaؒi94 J#5 Լh3_ӄSGzX"FR|_rkpjCqnngcCT.#Vp֩}z\UJrZ dr$ [S:Z~AFt-E}ScZBs].CO{{|)ݸt1q#{K2]SscsXJMHH@m ͹w^$ȇJ\42slN[KԚJRZk٣z[@`?tZaV xwVR<"s-\  ?_,(JR 礽Iv=8 Pv";Oqw 1!{A7弅rM\mXa@LǓ1CZǮ -T;Gh"Cw8W!x&dM4]_#B^GZ˖#ߙBiܺq~>uz.ՏG 8ąmI`#"$\ecP v Y}AO|N?_A)׉5Jnmi/JX6;U>[g:]َß:c )m7` ISvdWEH O5 DD,KGg~X U٥qibGk XY8j Lj|D)oZV7I 'eX;8 .i]V0JXRlO?ഇw|]3EDg HI`ۄקY8ZN{gaX~~dme8A:a.S@Xi?[m ĬQp$шz.CKDlW{IZeYj&1̥x>\g'`P>76e<3=Q=h4z4`n/-u9wT &s+xkd ]]AwN|HPAAp ƙU-$Gxu5&V9`e΁= c΂%oQ-H[ n] o|h:Ө2gyzu[*'t҄7,TahkDƒwT'13Rk2&hO` _iVC9x/u ro&uI_aL[CPqi7+1jsI3з nd]PwzuVvX61Hc ck&̐CBzF mtb> 5=¼2G"FIMipLEK O^*4Zh׳C&FuMe+K:H| '6*wjFy'LjQBUwc+.T" ){*xМ;k:$qѩo(BlaMֳ+h6n(2(ƛk =s)a?9W&t@_#23bOF\Akjr+³+Q&ߣb6Ejf_ @ Ĉќ)N(xMܕL. (:&ەH uߓGZt$-7캄/r8vlKa?̭eR9J;aclztesѧ.%}@Ϲ{OSqj)&[xAg*`r-E,3RJSX`Jٟ2BX -O]xj}Ó!$bN|4X|sbv1:QN9nʉQ$lUF{n뾍HYC47[DL| u\zXҿxTȁz9zxSS١Q?fl@掴'Ie~]L12~g៮zQ:wn:[9qFjVf -۞9l{۞%~l2zv$H[I3`l+"ȘgoF'p*/{ 4i3(T&l*-=rpH0o@TW"B eMZtG򄧚1b1B~hhܐ;JHxCԛp-(Y1nE̲S,]V7Ꟊ jtdBEhtC}8NU(#{;gу[ի>|4)*A0/y.d3VƎb[zjw3") lg+y:s]P& <1 &*M(g.8G?E]AF6>Pr*۸ |-!##!B\H옙pJzۈQl1*]ɏk\lQAKv',IqS45<Ѳ3 <kr`.q([ŵŢe9UάpÛ>/JG{;nW5KSbT0?`y+Dѡ^̹GPqTuA؄Y*F3B#v/L4J-ʱvG;JAslWwR붞Mծ&H2bNk3r'hQPdMH]cWЙ8:¹WȺG}jGQә&@ óp>ymULC5ڦoHj=]AS.@̀:IZR*0Pxk7&ޡQUPQx'5vO6F!M+\ 8£AO hD[XZmloO)U [EU Y@x*V_7ʊ-~7$8br?!w' !mAs=cvkXbD G;XۀH}P=-I[XB,u6M~Mn+*lhbb(eaĞi5$.pӶGJU7,^ c/ōN Y4PK7'V>7ox76Cp'V%9)0bPd\ oj}B͝/$aE@<BVݺ.amwEn$ |L,=m.˳aU*YX]:(D/i]'~=P15>״w }*ZxdPw!NElS Y\;\Aawm L^(X#.}BF+#ncll@sz?ou^<{^ꠏi}A\ɲLdKȺ7HlAg6Pۺ4yNVܵg"&[\-RqC@~QM8zI| j0˩$J~b+$WBnRY%&5ZZf`UX;@ EO(FNo wpr| RC^A7Sàäh94P9^ZQ6Y7N]qPヶWE򢒲-]8ba핰v[5Pgps.= on34 ?s5GGiA| 2 SSаegއ-U2οraPȓȸI>!-;e|LUڛp9w7̶PK2$,xh`QHU|CJfT? SiՐb4=1f`rëue/ _ fEC ({ wXj9eº.N@B_K'-O~OyVAgF1YraJ!V>/wz$ y>=S'gO,_-)%ȝy+ʾ7{U[qZ +2RM-+_J ]i6&d6'Y5ȳ^~ʑ$efl=oWH\oCo K,;jx/U*??o+0BMTHB 8ԡyV6u%d' ꟁRHx~sz{+\qB>vPHEZ`SDMDs4g}(KJeSa4yDXe[sxno|wlrXB'u&ỿV$[H/OM FByI'QU[0Nm+g'=O#T!f-AB>-puGS$Ds}\l*8ڬOrP.pŮrhNw ˛ 1u$@߀v*Ō_i9yU21#'܌-F6'@ۋEgٍ}27u͊ qkq=vWt]3mj-T!KAvik:ʟI15=ZY9jeIa@0ؽ:w3׍(T Q2iC\H/4/#x>UQB_zE_G'lt4E$քig7)Jİ'E;{4~8YvkRSOӸgd卢ho|l#ՙY2L_D ++o;-?z.USh!#v%,BC/>qXx VyZtɲ_WI=Umծ11!ī-SAo4!k7Lcv ӯ3ZCӾLS N5%6bӤc\$.W 45xjJP=מ"N7+vtVbM" #Le8տxs{*ԁmC:ZbBD1k@yF>F5H|d*uVf&UU7@"\6wN@jU^͢J7[;GhM1eL9L> dӈ! \?mvҰ}#bIi^bkd[_,drb,uK|r]Bt.6-mZ9)800[#+lU Xn;wzoMNqj˪W=\3C.;ˁ d~HF;f\6aLJq~M+$r43 1%(1>wfNuh3L kIc =*d lnԞWǫ;շp@o-QVWmP-᧧E{c!K0Q+6 9<ͯr莩n"2 @QPn@!kzn (5ڰ:¸ɩjuNhmʩD 2 9ǭz٫ȧ:%#{$ns3OljԫmAy2!a3Py`*pMX+ﲛ.Z$>iL֒qw=8\ki{ ܘg>úi'k*ܨO?h sʋgNǃ{qߍe..#տ]M'``3/85.^vaI(Wbt&>צ9~/3L"xc'y<>^$M6323y3EjM[cx b*b|To}{4[saJOXWM4DO!Ssڐc ɳU¢(`TdTO9f"WLPBsx<" ~jxos1]hfs6q&3 WdV3R}2!fyrxX]"6߮]%>E e=]ːD%@Q믉­4sM<::;ΠfHl!B):LIS_*Br喞zYʣ,gXk**,T&hhMTX:]04ݕa|܅n@2 "-|?Y [|2}E*5v `K _z=_zhvBL(x`5["i>9F+K7IG~nbV93&dZ  :YاQԀ%B$" m&=H]q7[<\=iUhiD^ lB 36+,}В18l0CHjzVc ?agG-Sx9:.`~/(_&~@PW nP*ߜh&  gJ_kuw{t'f?joe>2r/ۮ)^ >ZCd>lNܯ Pl-s=GcuJY>$$>4g{ (Mi0xȄTJDzO>7v{P/M6u8c/Ͱߔo? WXu6a_!.x$y7Gr)[#*tISAc.7x+;Wc.H:/݁:i^$KIgT@Pgf qsLB+ڶeHu|E"ruzбD)_nXs߁%1?iVp8oI1SIBu6"Cf_綆(Yk/Z8ra[k*KvၴFiIq#vo52MX 4BR樯5(/ zSF Hx|=Ԅa1C\#qB떆= U!2yi@@z|2eܧ*{a;PC7jA+@W"島;2'Cͤd' /U 8UXn?pu_ea c ?=Ҕ>&܍67ZVޛ>Hd'߱;:H B oxЂEOfE|t=px9f?:#`Bb(8 Z6:̏;%4'y.%܌ s:`o %םA\n,\\\QE, i-7Y3w94jP/dK{]~ kyv5d~~hQ&JO6}(}dYŶ3ԸB(j<_}K&D3(6vyo4Vi$R(Hk!k#R`:R@`/}O`it0hjfȩIƈZ#"Nf5tCe](Dcd|KЯW֣0%PEUjɈC F1D#9`FeC;N DyQ TIt[L `K|-~B(YyWx%2c|4nܫ}?\wܦ<]JɋÉ!E+) u ~#t^C+9 b1mM݄ƩD5wI 55W!Pw6VH~R-=!x!*Q\kw (2 zhm2|IYˊՠQQw䣶Cң{ͣecZc %Z?rVm4!"uvJCgKH\jX-Te_J#b2uJDzUh``O%UVM!>*ыYHW?lb̯ȩe;ˣ/ܵj 9Hҩ$jF$t߳R.'?IX+eny ;zbGBU: ]1ۮ1v٬=SCWG6.)+ _OFɫjW%vl$F(0qdC<r,+P?uY=n{)7sk,n&lhZ~!G'-E+ó?ݠEFsYp@N7-"oxM÷ i5c?h+=qB}C.ǎl@CUt@KpnV Q 鳂7h1Y`P' PUFghBBUH&8\VNS hx Ѳ*6N ٦o"shK+iIř8h/qծYZ,!2n+v7:a ?'lac6|mwf9%Vx~pEj]yg%TF<&=O-Kh%UJ*S5)0`=ĬW-q#OO`6YNTW(=pJtrOZoNnJpX! dТ%PCܪ"K))UW27ɜl".y#3AP[hY, 8^,Pqâڗ"!Qw0`4 OY/ y4lۿ~ʶRoY䛨<2l$$rI!qfUGRNmuCpҢ:^ #S 40bVYyi6f4H)W{W ͧiJqA4Hh]Sƕ0.Ԝ߆+%['ގѺI)ju#<-7dZVܥ06 PXrt1A09M #҉-a`2+ʡdhֆֲ<%mʢ5?emqa3Sn*HC\jE>p\<}q/] >$HF-c·Es$\/ rk=aR/Ӓ IoYwmYhl͓Aқ쵾va#uK$W[ cq+TnfPCyύu3]3'wb@mG >U]r=cȻ :x?h+)!j"鸭gy No-(J!.3!mY*4qg70PEvjL4&8x~K ޒL$HYN%џXֱhX;fWb[+_)^'Hh?O\ISx}PiNx W'pt%ۭ~1% uǓ+fTfZ՘E[@-M<@KL~+ڪJo 'jIϞguF~{{SCH]WC4s8\oʺ|GJp?X;'>e.GiE2?ҡC # ĵ8,ty9_~ ]XgBIJPՔ>".({AFezF' T4-M5աy5N*!5o- ɩxa]`HoI=IJw1ExLىN7{E+;JړG+W=#Z2d9Ⱥ/z^5;X-%   'z6iqCUc Pz vy(s/R78Yacʓ,I#(7E`=1Ov+ wUA}rNp{/Wm ֻ'Z"q6-%Gp*We{:MF2S&%1 4->mRTY`\gGiqv}0P:MVi|g3PEQPxKQn Y]_O&DɴvSRo;[vN :5lg=S_K?+"dxe-$/wχ_7-?R|::d t0P]2A%Ud4߁nb10ΎJQ\ =.༓)ԙ'G'5)d$[g֯)eR*CwFIR2+k]PW ҟ2W=<: ?XK!`/)yڎ·*v8z;h^Xm/Qf3iL k*SlƲ;*B+t/ԠE IoPסuilw &Ⱔ14ko/=d#7PeQs䞝IW(fFIaqBāVzЃPE$9jɀ5.3Lw #g ,XiWU!=69 TM2>@g蹴mWr5$jBpŘcVpZK7G;Ja羷?T0.5e* FbuogT ]~t<^CF~Jabc<!mMF𑬞,^u#Do$7y>J6T2FzYg1=͆nDC#Jܰ} AKx_Hi 0L&LT* 1g?)p> Tɗ߅ }*h̷ruTFiʗ A?9? ȈyVQ!} ټ>ykN|KlDs"qpa֯TO&qp$GL%s/,{\ 2]A'RcS ڏ ڐ4oc%+{AaC#f:m -;$iZi!0`V4l2Dȶ_*u 3^^[ӦU'>% k~nPaضBԥ4Oڻúy0T-R]3zo>o貉MOtGDƣeu;ޱ10Ukb ؋f7> r|q/Js4Mac&oLiSz1|CHjN]-s(#AI=IOĤh"ҵ¹Tloat= V$'hvڔnz`c nfIi"Fb_pqbb`>GϏr9SrԲ&kp6cK\J9]%C Zɔi_^B86,<:ɱN=t]3|~ESCt]nʌPm 5 f PW"Sjr.' wߠFܽZ KCCm8U%׏jG.[xg7R~;)Pz%1I*X1]H>* oL ,(G]F}Q8$h9 Qfܰl%*(5;ro/F #`x/51MmDf!FcDε]F/Ex-kmwBM;Z&!u~lhK2C(er^sg;Nx rԛ$ du7N.Aa  [%Sn>A^X܁_|C'D+# J}TBƀ?a`wٱ1/!m Pzai,:a\:}~o{fȃ,:RiS9=Gj)ޓ(؅%?w̕H Ѽߨ&t{ȅ wd0;x&4v p\Ax!+xۋydr;ze۱g_ipGxa6x]A2Uui&@m`RG#Q:MM?dߵHI=%CʁTHyGMpP-:EsKmR^;(04^ F@Z(YQH!,!#gOp_l+R R)̮lm[ ^KN^\ஆsvgIn^V:"liɦ8/xGmK5 Hu{\=;3Pqn,WFY_h^U`Z=DofQcD^I3ToX1r^"0BRצ-.**C)7laMAѱDS1ԉ6y]K0PKteCEȭW:ll9 dwL:34cAa_2h=ñ6xHi%?p^%EUG5`tSյSi$C8jRF']`C8egwۤ$&xu |F`2Qo\nn'eZ/+ pfnZ]<,`4ˇG |;'Ð4ʕ%yQ^2 Ep2gFӐlw[u_8$D:_Ȑg07uJl'42]fC1AsA03?/8N4C7\\ |@žU`T7pgbloO-<Ƌ$B*;(e&IHXM)e<_XsD3VlO^'jLRҞivyESLL5x=s(<; )'oةb'U[@?#Ů*/N".<s3|z6;ԹBY6H@oF?г F|yrKwjrXצ-2q R4B %IT9Wӂs^]W.&nn 0-$z]I痫a vJ$97[yV| yw{.LEʉ6F6pRe?C#L JisٞOA. #<9P iў:fG/kſQv )[_ige_cؼ '֏ʐuԖH~}l8uve+V˘m`Ěa7ہJj0)T2X.8k<o],dv"nL鳈 .<24J?$r-z{Ū:J1L;ֲ5s#0j iDAJ͜+ 01f(eb>yNVb%S]cesWJSO 8u_Dhk]dҥp7"5/霢]]P$&!0t.'i DZT;A=0hf2!|}K8E7h*2ctP/>~=Bjd 78ZMIdؚɹO "CQV{5.x&8N+>_|⻸h-ݘY$6SkHiʤX{ /"s+bTQاvʁs`0YO6fV%95umaN~U(X WC/ ]GCTvKױϹmV]:s=K9QDC-; b7gIH*Ž9V5v+~Oiխ]76hY (T\mA^NS()r*S^c^eH#˪GZIj(#=|ygâw\?ѠI=oIү.UP|&iĉ3l`%Ž7y4ZR'4-o1FCmh=:<}@5蟂MܿníϢ+jϦr@Ֆ.^IJyT]D 4~$%ZPAD h Kyc#!':C <=}n;$V^{? /tH@7GTHkH E+/77ݳ7*$@^F-8BUoi_J!2W!K1|[zz,GJЈq1멤Q)za'AtZ~W:05,ezBثRI# M?~Sn: V`cX[KL>ijA"\7DL:Cm4@q?hŌ)7Wt+k7AioVBE~[5R9:v:]׫ 2=po)+W8sUCj[\1}gB?bB &1Gi> 7+'GNEFW*L$%JsKI=)67_c{(QjgucI FC[X},çvo3l/VCt6QGv'?Zѩ8-:A Ԙji'TGS 3\8~,J vN\efՈ|) L\hm1;9z{jc !CqmoeyeoRFr2 tl<,Yk DΉW$R{;x{> 2)p^r&%&F9 {pVvh^F-ET);Fcv/KɜJ]DktRێ9Ko)4ҡBS+HyM'!ӺB^@ldү[0- "qxT5#dtH(ao^^ÃZSPW!0@Kx1:?)mRw>ɢκ+(/yzJ l^mem!trPo^R[! jl}c~͵GLx#y",gViD~>)7Wto; #?Й"DR;[13lPD ai<[ΦDʸ!$iezJ FrfY6$R;ańD_}^TqIDT?`} NK  <͍b4k&:z&*7gBt0fj|w f [֎N,oW2Ef.~˽G<9DrQȼ487ǝ=YCћNM=h @aȋ-p\D\FI_Ð!Ύ^yTY6]S"Fg7[o/tjH:܁ǦFϷXlməmYj?u@LtA<>_aJ=Ɛ&sMjpgXzBWURT_r\e$ ?E GWDF+js^MNx|aP-,>G%-[Za"881SmnzmOțT^Bhj.޶cK{%^-G̶g|p?,KI81@_vm~0J4$mg+?š]"@Y OE}D=Xjj9#{`=-n#fdL$S~8fj!!C"a`5Y\b@!WU}`[-DͶ,nNP+JxS>im}]+yݩS o(_6B΁do+Θw_HQoiJ[A|Q$P8~(.k`|%*z-6M_]c>F06q..O]hcLٖ=j>d-a CN5l,L8Iv-@>A ke4u kYIU KF%2I4F Hs}%.%;QE#{F Ooů|I>qNz$?#AW_+ukyـ#U}jv-9zX):7ݯ,C?CVΗ&w8G/3/5t!0%ŽqX}ui4E?p]~@u2z)18~F`.>'ɳͭ赥AH=kO pʵFZJU+ڢ0{yUŭ9kbO2Qo3; 1MmJ/B+h(K 8r ȼܐ|WX*SIG_L?= ?nx>K+Nv6k(¼R}o$Dk>cEW`m?(;ݎ"I듋4 řXFC_q3d]/A;4vUft>djrGڸ8:J NHme;u&G2~F秋_2qg&,6l}܆'!ګ]k__FX˧V{wlM; s ͆ m$oav_ ,'w j6U>w){FJMJ; - }zIG8slHgMcݡݕeO'xwK_5#̑Й&Ƹȣ66LњVShLB k:R/VAzF 2KDl!%t,{ DI~èo&dpIY,Qʀ\:.yE]mψWc}Ndx^q,XW:㙍b/s t.e,l iI&lʶ_&cIdet &՝cj&bZ&b EP\w^yln*7#½!z,0xPÃk 9:.}j'D7&~emYpqVDLzB0]:.}`2ONZ#goO(n]9J}-0^ K,AF֛coBņT2ki^p[D)ZI :*Ply.+AROnG`,e#4:WksCxӊآU.5YPCڽ}DǟF2(')H4Z? iZ3Y')y+8[\f}MsWgE?y߶, }j_CYWq؏i[W" 1w"kHF00 V=bH)/V?R'Y86*(MKG8Z B5IM(4Zipai<')͢h*S- @"n`5z7ku\ο 4Sug9H =/iEg #U3֭,kC F-~Iw6_NhC͒F6>thCr2͌D9Si36gZy8ܐV:O g[[%P.rAXAWJ 4+U }pJ&uٽN5IDj%ގVX,=k_<[ziE sb>lW>-4Wgqce`6_iD)cgEJ-);̀O:E"EE:Rg,JpI B^ 홻COt`4 ن0}s[PH9͖(p"(_P#ႊ7 gZ+̾`?ߩC3(kLJ/pag3LI=⮩@U(?rHzٜLz%KBZ#);SǞCxKݩҪ`"rt򯶇h$sj+?E(6]c}x3 p$pLҨ4$qr/]RqMz'lh-M@Z&ŘEI~uI'j0^zg!c5rZSs |ju\( NN38=,}C. Fkugя7 }Ps.ϢP` / >&Aw@a>B|"9jC~.4$Up> ;KZN^r=37/h>oվ(/bSQ-E`[DJcC޽sFqtڏs^4'HC|рNYO)3ޅL/iƢ#m ĥQ`D) ՝d2~z4A޳Hv]X̦DFgk*j\R;CC4-ϤWɇ7:Ѯ}:$k:8wsȒ*&.B~ 7r\%P[u%YĉMy=iaˡů"Cd>VhR#x 48cK ^<[DSjVvt")8)j^]mr"5*,1ZaN2o " $cK?V0o3lx'V&YN9L䫲1V=N)'3:8|{xwvTVW&n/Q!*[ A_093Ϥs HwfҼ{J*v=%އ,\Ʒ]ۃIK<\^DRgbZLLw8يg/F-=}+XV^dMrs'?6ꊸ!a[T/vIE>3;BVÏ972IG(l7hdվy2&0sƃTB㥋c O*YAG퍂% \HCp @H feܕ&aien?sS={yq4k_1P{DL1HS)8QZWtpV=OL J5r.ƺ 7F"?TKףe]r,$sZ<3)ç'Ftg':.`M+WKű~lO\Bv"BhSh'p擶[O7IOlPYF(4 $~? P9ᖽm}[.5Ԍ1;&xC9&W{.c]Xg5e%Er[̌,;? i`2L;e]':&_fLVm8<*\B'R$SJ 6@j>M*r@Q# fNH@^ZT*8sc5n ~c.u70{Fg3 B{P>B}&ԭL;J@Ǖ8\6-&sa˳}<˖ļ=ga/vK` ?x3lG.;џDGdޙGkq5қ݁"eJ!aY *J Ewu6Oݧne؜ U:hN3|\ %(@b1A'[Cl=13i Br)]Uz/Aa3)QdŅ.z-K#ε'HS` ¤zK΂PWrxF7v;hK2#~y]x7YJp=A.iƞDZztu.o5A쨛c.h YQVu`^1q/Оv$ A!]Ɛr :> ËE&W, muZ29c=+kH0F{Ey,!!b9*)' HT =qUÙ4ViLW!Bb%cM "~ǘ&~W)Inƕ6ו&1$ 0ԞH#зz)t0pyLŒ[y=uZ s#J/sSqu;Px**Jy5,s|T0Cg>_^_TTX\7$ą=fj!4W⫤HX`V?|eA~\ QH~k'Kyn-'RUv Q"L"LؐR )܌T$j 3Wޝ,sx/nO#/ag/ ɖ*L.mHU]oF,$\.ʳ9F=]wyu?>.N)5KN`̉d8y)+(9?|$%j ljRMcsYUCT6KDϴLi 0\s,'>W}T[i b)i:@8R/|JuA-"1Ƽ%LEpOÛ|gjRQ#DR%޽FvF_L|g73Ye<[-z<-D1*Eu/ Wqb'PsոdmDumY訟ꗦ SL_[7%(nu)}˞^ڮu"XܑfFMsc@+?Űj`?>zg+`\D58ͷl̎d;G,r:ǯ#ypv* +oi! W!'U9֗_ta n͞tgXn)b]c EʕČҗ4_eA'Z);ǧ@cwk02pٽXeT K-79fwԻo)İw&j Dp՝az>1wN"H=a;I86{ngK_ hۘPcsz^sjaX+yɺXmܫn4hXJƎ*ߞTa.1cYْCN'r 9I"}Dbf6tyiWR>U &U%4j 6B]7JAx:b&ajNE+un2%ah*DD @ob|Q.Ryl(FDANp(K7|:vGip[2?~q@h5.sf'Y)\08d@:t 4kgݚAk,߻AY͡ !E(zI : t x1r~gEh ^05GkrPY dRǢRnMOCt+.H^hȸ`G(by~f0"~@ TЉq@HX8{Bq_;J_{ Hy@ǸAӇǖU ?שt T4:Q*1Qh,]nmI+)x+lX73-䘋X 4㲸N,fjLO݂.)Va6h}Zey<{W:758zB5y ZI-R1s,}|i=k8YT,8Pd+q*ʕwz-0K 1 ) h>RІc? 8ӥ#{4PϛT1`{Df1λ>Bh(AE5ɥr 0KMLe:iv”EejNΊM{QsX^NᮥRkG+x33NdDp5,{S㎜:?(Q=>3{vIo?n{9c AX-*O00TO0MM=($ULgfKT'YAm^#@6G0@,vN||?)Jf̬>ժ#wW><'r_Oe=c f .S&513d=?tM5XD '﯊8 zd0@$p[EHrv%2E[*Fpܤwt,+MtnQ Kh3&ʀzN?hi(H* x]GN.ʼn z}zvcn;{?-_:#Ja-ST6vzW}i!-8*-"5=Du[@AMJ50;t5_- oG["Vtٔh&~'X+PGx@dšJ#AǶ8{outA)hihݩ.I-IT5DkΒepfpX">OTb4b*[SK|eA:Aӭ޻ 2K>{ >/ke[^(b[$3/vUoh|{kYsݻZD*\%wⴡB@Z[ z–_7‡zm.(>~5j ( 1M\XF=J|s}l{홠@nԅtlGt$?!C(uzؗo+3C/I1gh5f (Dڤgyk:o@IA9Z|]a*_|ΊvJ>y˶1J=7 .1ldGLtdc)9)ƌQQg0 +@WoBx7^@)F e#xv!PR7JU$qjMxJڊ)^Zb~`a#ܸT[CiӺ.Q0)|#QZkc&ܕoA2ۄE8Z &PT~@PӬa9WZj(鞫- E(;'y0a(rj @dKy(K>Nn&W\BSaYi񣽙IVz~ONAQL ʿCk\NJVd )֨)~1뷵]sSrF_agW9C!$4x^{vl]DkB+MtVuݱxѰ޶lJ7KDi3pc!S}-p/xDp/x@jgf=Ow'?[o' NS@' 1܁"N@ 5$$-^}'T *c 57H\.mk=Y_$,p.^4Gcj7P(k;yHB^0EhL>MM챴"g< /(h}2"J#ORya!0+Q{A% w CG~<)g7{g#O;3&h=īCHM8z*xmC6,X\} <g/kTR.~>Ccql0rci}-(SQ2۰o_{^w't˭,xig`ӛōHh2sE [ MߟXZ@ `s;^|)zMOʧ^4"Z` Y^qlJ)ptvn0A<8Q lJ]s hWrKF nȈX6&iKtC.S^4RZ;v8(B6 ˔,-TDїea[zҤs?ܥEOQ}!%-! Jj)Ž@W>l綍wU2\zΗwuay>t vj@ 2FщPU|zQCI|ʮ^&nwyWС_h&wٌ6B1;-AH%N@\G9FcH΅!'TG |o&1WMl ޮC0CittԃvBck< _F,tYby $Z@㴷,wtlv8/(M6e/'j!*D g:Zήpw˵a{F#H@y>YqI+&0ny`&)ׇ"o>c~OO DO~@3|=^;<>iw6z~İt5]pL0{Lx%OA ,JK}ZTX=잪Id$MR} 3ML7r4I(\ B:(-`#O9TqY(OTz48/idx؅N1>B;gM8x1  k;T +H#r91("?\MQWt/Fķmي%{lY K3Ә̀{<5d ]u4Q>$ '=x x@X?^YPIcfd\H5s<,aP^x_ժOβ*=@F::[0ƶ:D;\@9f:"&k8Df/X ȼh銶BdOc]픙)R?:50,7-I"yM]ki50{|l(p'FljT8AFW&t"ü¯qی{1o8S θOی S[OIvK䖾Kv^[ &Gxq:!dF`=uUO$yG \g݅@`TS+,2v,^mRe!JWYAHqmXF2yFυ&hMDiLpX@O+ÑC w'Κ~yE|WY+ǞMw=̌] `K ђUȵF@DJ_m$+g/PbUDz*\~DY41e r  J~VX´|qjGZbbYbCtT}f=0:9 eIHlLA;7CY\]6ΧEq1$%^q/^@#Dt]@>Ԝ,V+~ e'_nx zN.'xZPP#V)lVwjJj} *u2c[RuZLׅU^ĕ D¥YI. håCU0+V%T5;[V >3&uMvFt7L9'UmOL+GPcCnp\ aN;$ش`:dgoZ9Ix$ zC^5}U̢-PO}懠p1Rj{֯)Q<͘Fb@BVq;`M|EdkqLAO"i,l 1v:睊ޗR(\+g\h)@h :hgͦqH6Uq|#+Kcp+#Υ_Z /l+=vAk]OMw|{=2JL”xZOXعzח1kXC= eqv/ʉ-#ζXt]oF8nOi  DLAXj;u,Mf֦d7Vt˰9`QiαBjንD<+zJ:FETp}#Z? e-aq߯˕]:*=;>RG8/l6ǂta u#:ayCBey@KX`gjSHm[8***a6"1VsJ9e'Xr2݁JB7@8OXLb 40>uNۥ{g-׎d lOO.}1C &A!dvLR T uO/rLޖ>0tev -^NÐ<lNXGde h8Fతr߶A>\'g4D{4Ԑu~"i#??a+Z SU7o]W/qM~{65dF#wUJԋ#4氡_U]4aV $32}(1KL\cٌ ^0$j(+5z6qCmوfDt#)= *ikm\2oxBStbm UFCǧ&7 : 0O(>b0k[W˝2p._}Mgz8RX0X oμeFhe=XKU0Nh,D5yE@'Gԭ*"'DO gvw3e?3G,RYE=1jK|Lq84[a 69^}Zy#GgP,p"BXlKֶk阻AlА:qv>4rq \}*ZIZU$?s2[e B}9p;&Rd(k~7S SaV#ۃTqUR$AiCrrl(k^hk DfNXէs3@bҒ *>}aC=S +ad[3qb* q4X]gf6G@iFw=荋Vǩ8r_y{~ 5Á6GFi%QJ:1`%:L 3"&lQ{n.x1?3Yz aw3崀~G%. ș*jQV#)K}&3䌻_X}<,\jcUv[c)m*yX;}q11,C,wy&oKUzCiVˑ+R2I*CO[2[ >_~LwzF?"eښ83*i*e0plٹrhJR{?vlSⶸ˨O*7"0<<ׇJsX#ΐu-E8Co|UCPEvxx<~7"2@֊H 㱲IBpk2!"u&t klqX͚Q$rO枞h(Jٽ&foUDz{Zf)Iӄ1$ܠCVHe[ak!dEY}?&&\);t2r6Oێ4Yv^:tGM2 t*4j^EdBW"X Fh7}iFCy%H"%NoAbIiOEg{Gom%4 !h݇l'mcڰ'Szi,-9a"T`ݸ1^20 ^™6.j}RHOcb#eL?z/Iv]޹P8M*;M57r,@D4Bt]W.#.Xf!Ѿ\y͈(Gml) i>wJ퐔ic]]l4P{RJ愾Iě \<ٵs3RҀUm6coYZ T 2/z=eVf|^_Enf;#ƒya#Z#BZ3='Nֲ,>;{c<+_[[X/J81%X^h !R5iʻZo(˲((T%1~epw,jvxbX_1ucu3{mMT\ y`-["Wfu+]9u䊩>8o N Њa<_ ɀkڵAM&8l]=zu8QnRlדoؼpB@hznH, 3WD] (z4r%0ޱ"|E=UG.i)k%aW=6Ex;B=ySRU7amjD%{##S4asvDa8? 7a?l2Ҍc.#Y[>b3$wa'cmcY)L'zP"'i Ry5-*0).`Q1cM󾊨2TVfҚrڑj#}Wj\[,\^Xia Khb Z<"v:Ex,+G4Z@o^K<5z;D4P_qEX.%@~ao,W%kR _N*%#S8cKZl'"^a}k4x YvJ[Siw UR*4]YYnVwoU%n$0cֲM4 a_9 7,p_?W߇b6KQsw)gLC%MXMJ\N]SM*{iO=b y7nV-hKs2EUrpF̔g vc{?Ff/xzє# ޕJv ? < A۽ct;IfM}w$@Rd/*^Bo]z8Tb]evyͺyFb[E2 u,]\Z4%,X`U;,)Hq{Ip0 mt,^#ʜHj&5.e؃Gmo&-t(u{f@&C0ΞV\/̌}7,.㰻js6\V|๼Qa2ZA1KFyh~k.!=ާ2 e #%Ș1$i&i{`F1Naz yq 'u,"D](ݦz dIe#:9;stec=ЪSдqW'(]LZLfCHwWovTi%@NŔ):ZTs:vU5Hf dN( &]%>s.nqьK5"L|m0PiØ*{S CE2H ґ13w,vG0iID籽{QMb|*φUA}ꖆ S,+=0214&!DYL[tc2DO4m?0Y#,;u}>%殅գW]kc6ic%" IJrT]~"6>z. €s7uR1` ֤?5:Ϊb-(Z 5! .<˕0[W,Cg4u]gI`btoM9imp4;Ѝ S)=>:Q7V+\ 9bCc~j]7 3*smC͔ᐂaA"D@(Izӥz7 ;Y? &{U#+^ VW;zh*oXU>->J'(H9IV|yOTlQ#rLbI$DrT`Tv׉Dw6.x p -ދmlH2:׮e s $+~Q(\wtJ(Dor3v5qsFiRvt[ÕWF Kx|YK:Y4m7 G2_`X[)Mޝ6o-VP}XC+Ifj i&@`slqY܎P`HA Z !oD:Z2Y8mRQ&#B\Qx d]Il}6:\M"H|ۭ w/ÛHwflS-nEj?UE}ԹtͫfԅWRr:|N=~œH3+K ~V ,&லE5;}m5\6-G@(x D3uvd(uffeIvy,< dڦޡYr Mː&C#p}w E-\ "E2t][¹|c\2 If9(l+L >VSmtﺎ&BeU_rۏ>#u` zF"wmE<uhnEUq\碠WܸLsfhn&{4 <,Iu6;2kk4oZ;I:j)?+T՛Ir.E'*qقS+im\ /\ѷEOk8&#'"ۡbm, :X|geYgDqj4cA>7E؄hRtwwh,#cXl5)-ʔlXwSjVQF׃Ί N3wYܨZO|^gVNƈ&$jG] !èC@?ǁbe9j3 = l3FYׁ*lN%W|AoN{5vz i; /q`E ZHrO]*DjSL@:1 |S2B ~'6zQ}"1QLS5O Y3A/}:5pɝTm#1Ss~Vhc1@D,Q| 4s9dHi(>(@M`HKgz"ݲyVv8GN7bvU45e0ɚfB=P=dV2n1qF`өĂ)~zQUK?bB{l?̟q8+b`z09fBKׇ;nEH,KҬ1%%Lvv<|asaƱO'۔SFb1"PGVI@቞ҕĺ!m )"5b9kJp쀑q~@;[k"t/Lh>dt13狘+jӫMv;> vUQM<&vsh[/g?4eB6,ЬYgow,NنkkNrGf;[sL@z’qvI xK~.mc_WT\e/853>`R6pXzٺA3냯+9qTs h&2vs|@1ɿU8J,:6]6ȝHݠ+ ex:T7j?bᳰM[-O Z~`r{A%ʚNLs&uvш!nG( gڽzy%HX3sy)؈X;OGgWz?JJ O1͒UF5D=""ůpo\$ADK9MH]W F0=\xpdpNL<9O]5(xVD5sdK¡Y[nN 6ZcR7Xu~HGS޽ՆAU-/(/G"Z~ ~nqg T *mFX24l,d|!=zOax0,j~${SJmmۧB"j$=\CJ#(U~,M")*8ӆԕn|76 yG۶``Dx%=X֚K':i )(!1/26F=9=Y0L4DB!v@l\̝Vzl  TPYg?Lڨ͊HM~-~|ڒk{dm"=mbH5&<0wGz߿`+v3 F+Kq |n:.NIru]2,WpMO]hґF%@g=FζME2IX3m?/J%K HjԀbRm6J;FL垷wW lBӄOfu;ӗ_GFTFr5,wGM+h_`ѶeZQ 3 åЂHgS"AQTIPE:ձU{9oOݑU*PС|W+P\A{U( Dh-H_i{3cHްa8J@ڦM0( KIљeFjt\+Ȭc>hDp*!#h]\q*T 0Pz:6 e9ޒ`tf> ,ԑނ-߱.B =0[5,8M3a33u`}Nx5݊=sHB;qHHPquɤ;rEp-j~Aָ=s3ا3I+`_9/3b\[Qs8z!sƦ,ဎ_ v!N/hzM>@RtEi?dW%Ds)|2!qn0U9MLӐF=tdwa/ibUlT(مxeo8k~NBێ sfa妿.O(saxq)lܯLڤ zMң*6QGN{jԏ|&xt7sSpy ڕІ pnw{XߡMPiY7}V9<HJ G IgH~$I4F-K}TtB@0-؞qu|A ۅvMr .Z~ vVa-4=+L<4{CI.-9eM Ú4@ٯp֓h^c>ԟv8*~Q `cx[#RП`㆑zad!Y@"Vi#C2xb7 2U̪:6(@uT1L ᗆk$)X gh7,1܌{qSNGȃjzU%>!:F1o:7P\1;F`L꾛츃mBb#cpT蠋H-76xPge驊=EE (bWlv \^|O 0[)  = |_\s=d6 ݫhp?όa#hoLܲSNg5@N,s4p0[rŗd%iL'fN3'qGv cJcxf}og E'4 :(̄jMᏀb$xJ>1攫A͈ @@%Ȥ.WT޵êXy4BllɕӌLh;{IɠHX/hT m4`Qԥovj(ocGiKY5BNpdNDSt?Hͅ]&fk._m[Şҍ"ޛ3 _^ jS.,d5=XN%\u%dQ>1ByQyC \FJ ~#)4,eRG`[ R&LM撲 6P> +cΟD7h3|WD9bfTJ Lˇ( jI$hhH޲͆b쯿<3H:C̡YLfZ0Z%os.bYe\#f1{=NJCiW.e7Fۃ#TwzbwtE*x(BkF[q/"aG,="d iM &1Z*(,z1I~WSM,b4 ΃\ux@ ']?~y'EE7cCK!:Mu?ʒ ]2EN:bLaX3K ^HPr 1ڗWO| @dդcbLcv񾇘gQĄmyrJp1'az/˹Iw>zmxkcVSj}PH_'ˬ^ ֮CwKw pHCBLeU%ހ# oi]̷L6iZEd EK3QE?|iɦ0;X]@N-Z'jPgաrB٫ɁZ;ZϘjvkqccef 8SI+4IrIZ>"j&z{dIZ}ew-)K'1][mk0;;jɔ9PEh= .G)_esa&hUu1~q}0\^yA=YqpR_9؆MCSQ+-#zC{oCدAlȑi$ ..X5dxp-Yo, TtRI2f\>~)@7AuWlZl-q7PIH{Fa*ϨvT <12/eCR4hݴnMՎYAqDfNo[0ӻUupb} ro=?OA/Y7bL}H @#yڮ.IZybfnYm9lv9ޯFNʌ= u2mW1⭸)! S vYpM@GGeyD d= R94: hZs8GQh^-YXWFh˷ǔ{,65?q%+;pdtǀjG"ܴ4~TG3] #̻YA$R Bq$+xcҟ0 =R߲$!o v9g'p3U4owMn T+{} uW=)QFPփl|{}Fnp)h:ZUT;G[zU$!=,8ag=}-aiĭv>SeOz9x\m>.QzgI0^|^B'SVwE*Ւ"jV a\vR]#ڑˑsЈa'ZqMv݂9m}e`x=&0}t'Ӳ'<6odE!/σ2YQD&Y\^ǢDԈANrnHwNNۭSL籒߫˵PNĽXرc~yzCkT`B:9Bu"&q,Vj+Q/'KsҩB'qQjG7~O72 %Ow/HTqj\+hEgB]ϞB̜GCl3^wxECJ^Oi,(My- Ij}FY#=hmck4q6U NWȄB0LJv@H,z캸Tҵ}rXJ,nߴ_=jFnYnZH4e6 %_ӝNP5Q1LGgd$F/lt'2x):,p,gz8WB&)4YÝ@YQsr^qE\CDwGDVE{tw4~}оRO*6ςuBE@lv.HkEsW=-\L `K`$=ڔU&Z=z{=+'c>1 BuԐ7ۿ#DmCC?b I Z*87lVbeL]^.*WŇoB_s =]wQ)fTGKA`|KeYT+MNa7Sh|JpyOۛk^ ~Uu6i!Ɠx|zS2( wxx[wP1}fM ӛxZ5R {bՖ9:s֡Ϲ/$*Gݤ=͝/UisR iuՔkx`')a;j/DYbBy4q.N#NLu 8W9YTV+_@U(j7\E6Ce! um1ь#|F[a^5WA%Ϊ$QB]9xAF%>mДzhr M ;}C?ڗs`ۀ_H)+*Mn)2;->H-ҁ}.ߪ{; z_hwfDBC6)iDp(vjrZMob Vu&=B;o`yWdAL9'OϞc{wVn!h0lIQ72V;D~N=|ք )QmlX,rXp3TQ p!t)CȥSܓ旟'`B`=x;lEZ̸G{J (6 Rh}}3I  BE+Jlq>3uk;t#8JlAfk4ҍgN=ee1YbdεrlObX81xX8#=[ $,oh}(OA_\6jʫZȖa|{W{4K>m}e%uKذ}֬7gsi ,{Bdf!̃-;GCQ3i윞]q6E4d-6Wf*5{3^YwG ] tjQ(}$>SVecD~;HԹ S]zA١.O~QYҪ^^G߾n eouhS|T9["P$|슀k +Ve6sMJT(gw 5},o{Yx{0X?pb޹ .v8F?* 6?eθ`-z#ѩ%|zd);rˆӆbvH% * eڣmx&-fE#Oc:;Uvˠ:2D4A]|mhv+h7|aeai*SQɮۗb_uDcxJ%wFW5^j+}jl;Tpv|2`U$ad$?bY|_z~KuCx˥$>[Xds"Rłd03Իj8P !ܾž90Ft+AeWIJ4GuGR:5r._̛UߵQ(Xfľ {KU#`]t:vߵ9 JAgVL*['LSxNK׎{Տcm?|Qܯ^%{^eMŇ% c&"n{bc[ fm[>)gV*/K&EKCÈ,C3֦1 v]& Õ͹dy۲Kv~3Ħ8o`k3ߐB.aX<]Cl0$_[z5ǾM:~&a[/18T7"wֹ o$%Ew>6iK_ SAtqW$47O.*>޿Lip-FF 6HEkW0Rd6 $p©ۣ;ZA׉o$Vcؘy_Ui_=[%PkĜ^Rj l%Co4TI>i!NV6GĶn{"뛼70_,i%yb=Ts#Wi|fV m.^8k9b\: K"veg%}_Q|[ݝ67pa+3+#>?,Oh/N>2z4]2$=rZ9Pz-OiY_+j+}V9^-ᮣ0. ԺhW#;cMRFEg=@ oKG"EC [nT˃WZfյ=*W){yy64??D:P0Ib])+E4g*)w#Rآ-c"m03 =85B,~kM'+QrEտlbv A.,LOp.6!bTT˻.F&h!p*n -j*z#\0UnTlcSw[.U8ez8v|H܌8{twdz0Ѓ<(C䓐rRnZ`9iu rEX/Ao)r;F2Frɒ4 '~BuZ{Oܖ]n#[&7`4_EL35mttw5cr_ z}Jq9tzml05# :u>/+!CID󀪤äq >C?2vbQ.W m&tTP!tAƑp\8 w4L+fć5qM_+6{ϩd PnG|.'Z2+ﮂx"fNK#ޭ'/(oŭWى^l7 ѥ;6@^.upswM֝"eؾJqֹu\U'@=C$/o<>ГbZS4uRYx!Ԉ.+9ecA B+wg͑L] #AK?K$ ML-X{ùݦA #&>YQh2#vTg 9pn#N8a<#RŶP{y_C{-Ԧ@*V&[sEؾbc̓?JbW?ޅ/s SVжҊNꋁI5K}u W:`],}}n@|F A5XK31S*q8+`ֵFmҺ(ҍ0ɦ VQ 8Q&P~uA_@g$ er/k:Hq?s+Su1ֆ~dihUGnj%{7i6EM!<.E5k'hs鞟'= cܱ'Y I *' &f|J:Ren]IN ԏW!:bh<=¥8!oA+FY })uCfQ#ݕ䋒u[]=~9~筧@^9vdw*]\q=%#~AR`AXj}ݝxTq<N@ߎxLnO[Nv8hHqz2cщX[}"!!S!T˹U0V_4͎f5dGmZqZ1EN\wB|f6 VNj P+ ȡԃJ揯LU!nCmzmcE-1uE7k P'fR1NJ'Va3aBxs E+IF{-K'RHanBl ~)`)[o5Bߤ-WڜUXafKEH?tb)+% T}0M`er$l߿#baYk|qdy|i~e X]udx ܟ]>!izQ&ΜtԔ[*qâ^)[৆e*"Ă^M9"')u<*x?0RL3 n&/NCdoFe!y;=&I-R~F'pX$A]Ő{)" +tᕲs?VuOd }T[:pVsEyT2rKoktǚ® B }v-hBٞU5ꛖQǫ'4 2~Wb} A/Ôbϭ#yCDcG<85G 2Ɣkܼ]KIxsK0 Vh{\R)ýEOܞV>-}̤`Aw1AzXy[ l/4=a ɦ3s6SO(x,@l"yV@N {kI˖wdą;#v,{Eeu}fffoz`oG[\Ѿ~f9ӻh3\jӯ8 miom@ _lf/)f'goD;ov|RhEH7) ySMI-EKxno&b iߺHyS:P͸쬬vNj M< zGq0|Q$(_ٹanIv=#_e_SN~/ v#M }FЭ%\CPX/bWۭHŠ#uGbJP\]|#͸Ǧ H95pIlT577z Ÿ,Z5:(K^HJv6 N](2ڒX3~dyr(g"t^:~^.!V'"^ Or9jG ,1E܌"NVhv2БQ/~FtAŢv|M[0㲡κ%iXp-q%IZ9f;)lqU<{eLPGV@TbGI-`jIHk5iRq\ ދA1%hL$rwS"e%0͚݁6 oj]viOS7-ӱkDV 9tk›6ɮ%WI,F=+>X.Mh\<W{* #]Su4z3j-k `pt1ٗðR(.TAJpIB8W}\k)tt9ZvCV -nB,uݟU|xdо5%iK]1E. {ZZI=L9c9S_l!nK!{Ԭ#dqY#rN!à |XLGwKzM[n|?rT[DO- fg3c&pV%k.(I3m=X=Ycu4 ~oMg@!P?c~6)\<+SM sG~p:O':e8\+c S$oYygE(-KΝq1 bՂ;9BkӢaZ9j(EOw~ށZL3&es)  .zBV#N|gޡ$%9>&)S۵ B;rJn2c|y\,gbQ7 ;ɘE9db:$ t /']='w],8rwH:0+8tTow拚HT蜠h{5FwM32a!_%Y4r-qަPu†K)z3T tY= 4NVBlWu7n\Ju*kʩž`aSӉ(~Gm65QC̔f-VEY"YfWA7!#`WaE ޘ4X fCz5P?+0W½$qX)N EuC`gW>4N T]+0C%t&@H<~:q>\W GY]$?c5c"lt]O&SC+t+~.i-Y*"ii2j}@cN HhT@а9[{jgY"w\ʷj $S %!gʓ9忙 /<E:vo@{DL`kWb:58Yi9-ΡKW&LNv$qRfOM?Iۃ܎e'E ݰ箭dE@?LE(A$s.!V~q>L kAb0AƘnQ]o=$Ճܦ(Fui>fqZytD;%vK8:s p!W;;[ hy]|&0Y64fKJ 3]!I}h-XۏY3\튤C[N7(ZM8qrj7 +y?o V|*9;@Ex׈G' %&BMV3n}\SS D7Aؔֈԏr%TZ[=;ԍ3\{ %hKctA&9áj=JLqS.(]?t`TF{@Db@˪ yA2{tkr?p9vjh*$l6jR=аQQ5> {;u!a9&.XF_hX¢l2҉nBF-톁GAAa`$_\v-FOo Bu51FH-HйFо"%̺£kh;@!dp"ψH-8Ceb k*ܾPWe+"ՃwD p3n |+y}yTǞ?1Pyj"=1 Jҷsi-QA{*Y֚Ӭm`YDuar iV,reMC9JUUE|Pϛ7<~דra}{ šh~T&`OU/N)yK_ɱ v a%<}-4,kzJ;k8*Gh,<@DzX%!,}R0J2sFcߋ\*mZ- %\#Xe?a0rKnŋ]G~D9R)& o`J@~.{ħeY8L!)E2-6_΃Yo#_*A`M?m\xo_:u$_U 6Myν{E[*57#uiZϢZ5fY$V| f?SĪ}P؎?2^-k0eKv9 jג/A~mWW]h}""^8 X+R}K B2;4e )Fs.2Zv,`ꙦAjxJu ki||rיlTkAHZOSGv'+DqX!5kn27bAs z][ɍE8H IJ4rm"-G'pFwsƂCYi?,r^)B򷸷dĄS;q5C5Vב/C1gig]{68{ߜR8>s;EbMQ2x(͏n$ v`z~:e#vFB!drөf҄Cg LQ_^߃t 4eX+rfHr7ֺPihWcTr~J2K2y:+OE(j oePsh lH8EڹZ؉^ת?3PIz۵4l'W'-"ܼ? jNMycx "S Ηk¥{v6HA*-RJ «DLgjЯu65]5DK4+)WZq)oZ$[\;P ޞY[^[驳?).F~$)]!RߎQe*^$:MԓQՍw_Ok0fD`!:zP ɉdo>d@(> <6J(^ hHQʭDA lC`;Eyh:|8jW{s&*vjqgx"*/>c))$4,LnJxQkrRi: .gϚ:.`plr<M*Y gQa OhjΞsܬf;Ǣ@^qc 6$RT̥ӜYɁqyP۾H  RFzV dǝD!jxjѲx48|) խ)%T([Ql M]EK<ƈxȄRs`?brͳVfҸߏhe }6Jvn@ *QE} [7{QV{(h?c+|(mhyfUč]?boG-QcRkLx7X|2%]i-)PfI<7҈J (`0ed)KtX=Q!pxu?)}-FV1O>}57n+Z9Z_$3fV21:$C,7oe|'w-,zk7:NVJ6pՈEG/X.s:7jB:w+ Z] {L 9_\ľ+8,4޿ց j}L}H)_)4 >ּfԭw'T9 hL#NPޕmjLh`ex_5W;3jC@2a*K9I46u8v;*l5{Lc͆lpzoeH5YC~:7(f%h Qy7o=]74dɞNWya5n X+8fUim(@?/T<inB FxeKS<:voC.5I0iUm!2㓊ʔC󐝘FnOc! >C k۸+x]-辶b81QsI4(NZjϤg(z~N]N߼&~K CM:5钸xJH[gCLOgxJ+xhNK|0S+sRc3 6iikڳvyߺ y@8jʊ 67 YJ59gjpZ% C$!~Iy3ZVq7`z{> @M .u Ai@A\~\؃z_λi/2Mz.߽sD ᱢ7̠-F(C>ž r21ޛizn.hW+mj {;Ke iD缫G󾥗{KK.Z1"_DQ'FW=aqw# \(lLM-fъU[PDӲnWJxoK*򭈿2:{'mOπ~vyIK+'P8y] q_ {Wp4Qz@A4bV#z[8.W|=-a&5kcb,(0x\-Pu8MVMˤJ|iJV'RAZYS3=٧bpM[O f~BtE(= Z .4Ra\B1茭Ԏ_{A:Wú9FI xehp >.o|60!sPv&` v|#gQoDӦ>ٟϸAz/_Zu` W(sQVFi$)|S\; (b\+s^cg]_7Ȑlئ#w 琡ynb-2խ̤sr:V"|xK`UEwVgl怘rO⩎h!]ǐ)!7Zڕy:˅[$$ hf4O7i3nMɞ!:<2KS7Ye; B0jhQ'2рV!eB/A m-%FG^e;8wx%aG*b(/kfYX6ۡT-M<{rD&Yzs+d6.] Ծzu)|PqA| h#vw9 3 (~Ny灿+7y\?4+d2nt#HS‡Q7t Z.UV>m~& b5MY, E[ď`5 x``J8>d}'E&痚6C+p#Ln9u.of5(2Rs,s_הﲗ~Ρ/FJ J i2=5~m\JPwFM\j>ap>=PCȤ[4֬>}!G*ʲlMeUS UV[ N~0k*qZ^};[ =Z Fm&TStޕ+܎9&&'ZlȊ\vq;i&(uAE+yJG@ \fh YAС Qm.:MF-˅MTq`{8OB׹8k!*˘s8=sv/c\ZaW@Gn6:}=A_sw|q^ g`NI=ź],<\Ė[vǂn~9bt|p6cMD5C/Nms^9]YgYojdTc'}'\b?rR`WAۼw]95Ֆ:оYi୍bLyU@^H<,暿 鬩Gӫ+☻*O8kX Cvm3Ac5&_օ k_tdD.;t 2.{dbqBtx: <t͍Yxiyhb ɂ,:đ {-Y8ihiG| TP YW==4,$ BݟP_4\dƒ9~heQ8mBrܺm݃,X%IԷFAҷ;a|qѳ/m㩢݃}|ۥ*~ XbǁqcN 3z7(oRx5`=9#1C!9kzv sC&3VvYf'%q8>(8;E0[8qgF\9q'ߑGCcgA@/hŸC ֚r\j@ ( fI1a+u,% :'7Ne>@3ULK6O+o|~ɸl~K;EW^&شx~&$q$.Eue0 S{geFm㻑>&npq]ٹ xլj[պ Q]~nd17:dyxM>GMM?ŢY5%~ &J #T2:Ù/,uLmdk{m0@ƍ%\?,%fuϙ4t =+“id"Ԥ򨜿]B]X*$Hb'G/Qu&(N]HM?nI[_.PɖncQYhCR% V(.bL_tŽ#a(]p8X7Q}e;kS d,τo*Nu0Ҳ.P\f{bljS'3_'FGP!:@hfgBv^:ʸ[\rvhKɠΘ54ӥ"Xy/LLކI& Sҷ(r Mק\qw-8]a6j@)mܮ0Ɍ: TfhO4Ӭ!]"ֵ:&&s 4 m7.),`ԦC(EaOREx l;kqq+֩\gv%1o6YεmZ5qU;}kɹY+z ' uGB-^ρ6IRᜓ}hT{<J92Ϲ$j7J%62&4wO! y), d|ω#L F6zb_9%o;x"хR7?.ۘk?2h&q2rNx۪*$Con^ĆIN) p~EqPpQupdmԿ `Q`6?P]o*X^kڜVr䴥 Xz%ƻ \q$ó"v`$oWDn}IXW#tߘ2rHP:S"FC2zw7Q<jLX28I+bu UR3y?xWd;UL VupڣY8Ƕp8͑VqNIbzTp;!D?SD[o&?;`ѭ{GEg]q/ad6BNkB#X+rjpL 2e dֻ4dХȝm޲|~1m?.Kqf X%jx׻xӋ,L{4CU0d?߉ spL_0r\ҩX[%|>\Y&&?m úƐh:!v=@-,8G76IiGmHxI/v\yM.Hv*R 7*rY`g6f0ǬGssUZ>v$E*">T8}9 McY2Z:?zL%74}ٍB7?- /e~YP^5lde(GQ4_ 1b`'DlmoYwxwPMiMS/CC%OI 3A^[f@ TMCpw)8ч f'7RԞzp*"fZ^>&8 #D%e6,UI Ӟr[^2B<|qP>V]zf,RM=":_}\16MO= o+w/cʔ(mՒXoq{a#B?âʘ^8:"Cj5Be4l!:NۯPxQ\,GFs/f}&Sy(3/cCR67+m |Ϻ@ E2 $j\:%=d;бnCQoOpr?pOHR\}؁SLkMd+i`hB2T$n]0~7zu2?%'@mS_um2_zi{N=L 4e 974F:4b7;"_F@t?;XcwOq4],;d:zTWP RbV!Q<0$ R.P!r&}S$AE4b"5*Nkn?>%DG*ߝK0oU߃[fgŚ*%d׽0"뿡gAc=2zP w=q46+Ce60aBA >w竑 +C@zRH V/o:ieQir.!YٸF^".=%u3-|9HȰԴgk /Lr0~Rh![x7Rp"#Y&_]Ψ&+v[SӚs݃c)زE645 㺊?V)b,^bFgW:.%(["1AUpVͬςWj;d>Qg%`Pх۾5+E}'m0o0g9ӫxK.t.,GX15yJ;$:mCenHƂvِY̧AcĿ̓^  y4쟪+ZeFےKNݐKBAQ. eOM2Eub&ۡ+|}yK  R +"y3ȾM`8?雝VMeAPJ_VH=NWw%"[+ Պh>rd}6sb6F/;sJR?n6(b΋veaҁ~NܠpEt-[7,#ujaZu뛌E 'L*-qƞh'sn16UsƲAװ65?Cu> q9c*!aEE`Uj~D_$T嚳26 _tP~cӫhfH繈. Ar$*|)qf \ cuƷƅaFvd!l$0Nt. EG ؗR40bSh*i)I y_P%Qdmz2˞;*uh(tq4Q2_s7^T: pWu\\hG_K익ܵ[qk[mb}a hρ"&AҳQ,Vಎ;_7cd,X^q3D=\`,&uKTa4:60ѶAPUe 0k^FHG/N~UþRm 2>WO j4KjXmN*ohtdƽI$)ZyTy7u8U^AC2۟o *M' F*YzCj@aޢtj$ orv@= P<.Ή[#@oN3߷Ȋ%57*0}{Bkf3 ;)):3X*̶>jp\[%ް-JG,bkci `_{j 4J܎CJtt,{p!|y]l+%!äkH믰EwQ`2n&Ew4ㄷhWTK6o Z8l%&r̗2`1FaK&f(A%􈧮fA*=]35PQ"(în[йN$P)o[4}G:4=]qqBKS}L#HJD,焧&?jDXT$WPUBZrnQw%7Z_q~a(?s}"EDW4fZ ӰUU4ϒ]jQ\S]AU\ ApӞ& P l@ ;ӤrqW>1&^yjً5/5E DŽcfs"s73zx]qVٱ깐۝k)`fLpSȃt D>s` 1w]/!0j-J~U:- gFe4g0-a5:aæ;1 ^&2ذQ+D4pFԿ{ƖTAeVG3(Q-Jyrj%@N6%$. 4&NU Ms`My"H.ڪϟURg+ȷF$+x{Rui1hJ(_r{Hvȧ\Wa/ a-tf( > ꩥ1ܐ\؛Nij@1FS3 W+O.SOM:z }bsh e[Go4IfDLj\nefR[R pYf'IVw~3qB}Ta>Ğ,N.@ ccvNt%L Q 97?;w E8y¢Ϩ V%DŽi,#"E=!6,Qf]h>Ez >G.z(еgJs$(x/ *V8wMn}Nonϸ>J)xN*C9uG$>|=8}ibϵ dAS˧\)m7Bdcˇ8!t/E>FEb^O|zrq?G|  V1n'(>ot1OD.gt1yXX1*܉SIM)ϗŬ/ M=go{dHj 7<|";D߽+ pB4K|-l;x+Tnxu367#+/_!UBL_9umh~5Rs_T\ǯ)Crڲ?#TExj4.^Ȭ,PFn@ {hPqs2O۾wrqze>~2r{_ֶ\(R%"$ҷpfEԏ]Ÿ!6'4U?Zk@h E-FV,s _,Od3+|^G%&|ʑNDXJ,  Y0^O]Oa-:~C1!pc Jg2zPRBimOs?[^x#tj'}|7P6]d1qyT!_]Zk'Ҋh ^g3zak u莕H$k!M|qNDIsOH#Ў,J\EUʠCŨOⱦH7cWZ:k`Pr+}j`PQ\CwkX 0QĔm!"â2qAHW5HGT6NjqP'd65vIQ2XN1 Kk ]D!UP2=sRy[40x^ g Ǖ&o4 lך_cS>pW8] h: +T p] tH]71BhëjrX-݆_t\qfHz}N8ñ l6|3iԙ?9CV'L26  g EEYr&̞VY$&cj&{Lʨ KN1m4.M':(am{5DϨE-ٗ._cQ˔_D5P* t;,\1#nJF˙NIuchNs`_$s߳q!^_~̋si°Lm䁈߲> ''_`nx+!Bl *%]:>JJDÑ.Pت+aHW dF#-.88x)yw*޶Z=S^^=t Ŕׯd՜n5wQ!آADљ4 irG ;Mjw{ypVtOQJwm֕ӱ#j0 *ȾnE$ \H9>BMA&z%׵q@"PU:Ë(~w7>. b8x/=r"J@͖*@l3.P26 rɵD.CYnÎ"gk Wqo6V/Mڌ6.JQIPD`OrY)&;JzJw!6f"7yWƸ"Nv|}MhttE37\na4Je6S.;a^wϝa/cu ( s}a[97(R|^+l`zu+yfLM3$S@Fמ XnNje8N Vh A,-LY:nT'6H-@WS y6Y%:"@ &9dY7SsGWUo-^jR T*!)]ϷN:~KhʀR7GP(6Hf )xo7>].S뽴rgTYC(VSw)]']O60Atѫ"XW% Q!P;q sZ/ pT-&FC yeh3k% s޹z$V`Sv&{׆Z PN*jͿo7Wʲ0ҳ| tDSTc EQGl^^d2H2oY eiD ??~42[X8-I@;i13/DcѾ=" m`0jd!3*X6 U ٬ q0֯(u,"o?Q&3`{8ۊ H< !M Lت}ei5f0/1€phԲdfD" Xsg ӖU;: !qza*F=Lp'٘ARWY4=]0zAc 4s{<-wGP7΢c5=V@3rSy-Wx^*(gR>\=4H8祔cu̳;.V,;u9no+ ů~و*S}S+ʽM9\@g_>G$a 7si.%q3)Ft|.1vijy<KHًe iܭCWB-k5W':TYQ !(P#\PzXBT7ߏ.W نo.n&_㌠5vb4Q; +fNf>Rbi2Pl1MJؔK 6$3DXI†z=m&FrrNú>4lsuqrCT%C$sgUBLK} V3/&G2D@P KXm1?8=ҒeyCɏw 4ûcAEmB4^">{?l`pǃŲ 3S| ~}oH9h Uٖ 3 o!3nһq[<\h p4 eBuveS/SD Mki}w:΅18joϲ(gfh*%F8"FԲA3*DXv醯|ru\𺢷٧lmT)>_HNWm)W=ҵ  )a:[554.og[[MAN/5{/+*Ƀx uDVS&;Ѩ6?Uʴ34pA=PCy͞ 71 ,s镺%yPӡ{'`1xh~LLʉ؋ HIx1*ډ7BL@=4B<{i/G*%3g~s$'POojιpK[\Gx4{O&4Yw_Dmϝ0]<-) |&p "W`_nuM|$φ&w0$*09:bX(ZZ (sr$N8~ꤝAMfrqRtN6GT5.5G[G-< x`7PU;O&WT`T;A՝ B&:n"@ٟYZSBy6\LMwuՓB,R#NQ0zɧ%H?k}ݶb!NXA)ѡ^ﯜ͡jԥbKܔ=W2V6O$u{ڂRW)n<-dV?ؓ0|E_yȖS~ƌN>k ;zUbo WUh5~Sw@oyrk|V,e Ӟ v?B/6R3A}[vOx2oțѷFMP>j-䛃q$%n\z?'aӺN ^uN;>@Wj3hyb3ç6Uk$jea%9SJ ّ̈́4sD a@1L)J & H"7YqHeh:t)2W*_NM;fskݨ]O w kpŇXm4lX`uUk_ܿz>ڛ1D21L E hmqކ/GYz^elnP 5]FQ[D t4V9~`8lS~hi0{%s($Sf΋_>}GkH#]6i{'O@瀍yA2u˿ Axi0xJ@%4YWMW5˥Ɣbd2BЕAy:vwb.cI3Nl5XJ)T}*[PwnV@n(BrSEqMU!{uSհM[Ƌߨñ'X&skfXB= ޮb((f-jUV_3- j~$l#GCɝq5'm;^ s)[FJ+h:^"ky_جef̝w+4 #X)'5c(?;S1js-۴SgLRRKYƼ$DXjco21L58gpXG}}Z+ƸI4baK[ Zg.A?oc.q~46v4F;èXy|elӠQ`3 |`3- ,vl( ^@ոƪ_qyT-$ЎT,PGx`Kyc`T(;0Fry9jmcc.6f*w26cֹJHE|U%O_\iw~`4aFY‿Y i X]ܞ{^|/@1?DAmSyPH|i!)Ԓ]VQL> vSe\im0+dA [,r؜+Ҟ1nEv#(:|nLn (e㺦rHɴlQ2>[׆ =U?8s>USOb~ߡTaN0D9@) ,|\RB~"{)eUV_>'4`VLTwWGLQAv:OFq,Fw} f{GDҋ9öA5tX`V辎!ҽxyG\"$o."N4gP1MO~?!ŸSclE 'ZGG(ɏ`kG[6v'|K>P"/Z'Z4Oڍz& ({G})ɯȩŠ8%XOEk?`8 CeRtz~|λv8aḦ́tYUwkbjS!\G85N9eP I90aϵ2mN(ǹ^ֹUtyq "o#袋Eź)Da|Ѣ)¥Һ';Q@Ƞg* A@MLx' 256/̸kj2f,jo5s\vegkHR: dڄ/)M}C-Ў!(N48 :Yeq,Xm`<$RvqPeRQE FQ{.y_N({  ~˗bN D!|MhC_:;,&NWXvh$Gz bd)lcɝ;\k`4bC<{>$QY0鶩k&`7=fiO*[(iE(c3c|tf/I)a"R* :49r@[g|b44ߺ<."1<)=x7MHgzl" @g18,/ ||xZ=xVv ;ks v.y;Ὂ)+g"wc 0ųOi ,7laVQ=SV o%er=fճse [~Sy]6|/~&x𮥭CA+o'hcDg;Iz:}Z:̞D731궱\R ο $QByOЃ@52󨒫:^,xu,Bi,',TZބ $PDZx(lz&b 0D5):qݣE<fC=_x[P Tb=TbHl*'fx< )>24st LRh57R04[|&}qՎ%T, *H;zb@ׄ9j/ކZ3PI+M- i(hUs nğ(o xj2SXtZS1nZ_<6>{5k+hFܻ/b! 넿'5rxk-KZSĝO 8; 5ŏ߿DW dۡTYǛ*$8?go'b& =Ѻb9h~[QIiǾ>{#pSQ#2e(KK:UΜ Wk硸ԇ!U0auAĿ/`eӨW!J˞D7݇A]u+U:9ևq'\ ϟ}^4Rq.ӌ!Lr^`hOTrL:߶`51%ѪxC=_y*gcL:I]yk=Lj 0^uP,BKp~َkhYO#ˊ'`{;qLN]@` l걢]UZUr!NՓfS>dũB L |R$fPuxRtiuC^Q-ĉsofrul4*ֻ0bqajFM*3jpx͸{)n[kP_haJ}CrKP)P]6]ҴzSH!)]HmR(QjOdqH2K XV^⛕CO@% 5MT4"̫^F>#ip8m IBd.4dxܕ/ qFH,sT܄Sy d6Mיnw)JBZ?逖$Vlj?䴮-nт,;R+/Gg}ys8wj`!-; ޽ٛ_▫]6XFuR^Փ2,}d ڀXK -ۜXg%'ٗP"@fs 064v]ţ>Y8jE,Z\Ԛ4 9n8.rKm:rl׀b#pȹYI 'W/G+ko7@8JĒ>QrN`-Uɒج{ }  .^*Ftbk=Hԡ )\kjPh21A #$B>Pbʴ Okr[b"/dMR>P LR?(`{[mWL;^ ͳ<kGtnz/? j# V5%TGHь/DCҊ/ݟ?=b옒7vt(0]҇JיNV>Oz|0%X'&Y<갲PSQ :F\W ^d^ю'^:D ϫw2_0Nz$`*ćYvUw:zR&46W!⇺?4=jK#3g?ee\^~W}5ė/ w-Y;z**8J-:RN/l~Q?mGD66,!.җF SlVeſE8En0>ԮяlP&X^CljO'+zs!zbTE񦸖 =FwL">p_-h1e}q,-$rF3+E`/w",([j;yAejL߃(黼(9Th1c/KLOhg%hcߤW0ˊe)f+ lf00ZT|R_`C8ټM nH󢑇yj^' ;[~qt؇K*!f1r>A.{ p  nt8}"\.!79a9 UhZ/aJّD-Uӡ>z$oBS7kT]9+p*%VYYț~c\vLɇ%m3W3_|mVg"B zW~cV0M~^<&=[:~D, !ajѸ Pe!>Ƚp~˸E3:IF[tA[Zbw2 xD^v\40%es_2#ڃa쒞t/]lڼN}98;Zk&J@G[mX8N/& hUin{Ú PǑlAc*A\zXiO}j۸*` ۹ѣBL/ք豰s$LEn4BfAE;XEmiY"QJwؔȪj"4ifvRI] ].P 1mv}2un2!4P-d[uZSqhcK垴:Go\(bYZ ͦ:!Pq/fIG#6u['"SpudsXWs0SUUBB"<|/'`s `ڔCpM:cLQ)6*i/m 6wm\&4)f}9;shÉRڤt[?A3"DiiubN 5Oh5ӸShmM6Ugy?qg|Nfvv&B5[&vQ8%JDV}x]:[p CDQ!CAZ+? ]ĕxQYq$AKZ"Q2e^Ot;~h S΢(^O;ÐOr~;O)(ۋAdQ.箓.jᩕO|L0Aez/nL C>CK+94 !z8Y H5Ge{t|x$`@dBf-;-HOps!^} n $XD3n*@~{ q5>$uX%Ĕ>J'ޝ:@ijA0eTos̑%-W7`9AbSUDRR-Ma<(×T"gZA*+_ H÷"ؼi\Ai0?]ĪP+v˧>!uKԪ"֬~oBU*f4*8*ŊUexgmRvZ#+˩qXs" ms+ d~P 5NZ$Fj$1,|:1Dp& ]9YlTst`p$2d ymҼ<1`8|VVGex WVZU$B=t-D+]S=| ~6/Y:=~eAjP.`{Bwi+xVLM4|V^qڞK [o6 T Nډ2[+8&}t?Yү2gR08&o-:pMv8u}>>\y*!chQ[F"='[>z]PW͵/si):-CgOABr0M;b`M}Gks:(]E)I̤mtc$CU % G;מ9el\z⧫O2;&sƤ-w7I[,uZ)Y[x[޴W|oShD2#4҈OBvB"("|$G>|xqd[(ݕ$(E# M0ۀ Õ8"ӪkCr1fëfA(Jk\tgLJP]NF|rd<%dޮwmiz0NA)Q2N,Z˂Jbm]Kٸa$ 2aD'Җ.IO+J!t;U;_hM̳ xq>v0֩Gm"CTr}5e_1)|N6᥽,+ϗ܈3]<q.bjl2G#ZEd ߞܡop0bӳ.PlgoˁJw/a'M$uLBg^<- ĪG*N65|zL,7 EQG(I ^ F-)L:/!hrEyDPwֿpQkkYA& $)GtCtddZݭ{aG9,z@PwjHգГa/V}C}{l Ʈii %Zd톢jv\}n~#VDv0#9)Xڃx rBdc8%Œk.' Я;-Eg_) 4Dagwc~B54FR`Vm3G(h +\⧜3̑mSI_m'/fcH/l"S&a3~uH.奄~ R~:4➙oA8XDjG9mj7 ]v7l6?zva'[o#:z*fl_탎.!7)/ɖmCe.$.m 3M9?V-~$GU'= :_zoVB T^m}~|Œm (o@yipRTϔ/cXlk#9-/cw{Yeè f1>?к0랧J5A;nYLZ/E};eA?g3͇*rC9jf; hf 2#ZXw Nx2m3G>p\4Mt$;:5v@^KU&4N0dh. A>P5EGyJ2ދM[jX75/aui }ȈM\s[u}R Rs7#t@^[]")iv* !3f߰~d?ܪ$\|xZpvNK×'C!ԙ\j#>k$l()`Qzȧ,dO@ ֶqJӁDtHf(=)c&a%PO#=[ㄻ9h}? Uq,4VKlӅoTm/sO*.BDOJ3a5Fܜ8Z#2uH7=/BC8F߭meew-N`@2ĵl LHW@08O<$f{ 2sM- E!z.vE〆E2 uIP?6+lekP>.̜ ܲ*m wxBZ?S s`?^kq ME Ԝc*-ʴx~b[)9_劃&5dfl? K9:GQ t(pфĄ@loJE!Mzt8O+-*b."_`,hc][_AqEg%qat&o{+9§$K2/$^ܚW;i}hUd=q7Tː)%r1KTlGgC> TO4[^W8ў]M?ThTB* V^^= LvK|cUAS*|̣2kz{i}Š1gvByd SUUwP6MR%]_C.ke*Aj-> H,1 ]*кE/.eBt0%䚵Ȕ3\6lߕ>ߌLq {#im9dL8P>RUUt $q|M<\_F|ww,UW34FuxL]՝JtiByp!/Ylck_#\a O%z?˩vCHYoM'ovg(0@Nh2jڏ COlLb.t̀Ԑ*=-g0vW%SoM@x;)|n!8JDqOa4~zt 9 "N6>g!"a)$j3w2z:̥Nj]pD0Apw:^ڻBJ-y:VV*DD%Ҥ8 0)*wݩM`p{`Ww4ɯWl:b)Jy1+ g@<˧qҳY{LI9LcjL=tjV-y`y/hR[d10ۭFb*vYrt(YF+@ӓTrի,ĝ}yqԓz;@a j +}a] x!aTQNu$ TGwe="l:L b2f:46/q*WTo֝˪Ek7nNRv 6rz`'ꢉD8eJ.Fij2A ut L!jO;ޅX}uB#ި{7ȡK9N3 Xi)pY8ti$CG~h ~- khso}\Y=yj(\ ֣Fk_MudX7NMf!%8_8]Aׁ\GK[+ca|v~'Ynv[`V֡0.Ywhڽy#CQZ-K* Pu<>w=s VƔi,JX~tlQKYxՉ[qGe쥟P,>5S9ť93t&}&L0\[᎔# - 2nuùJƅZՂĨ0c:_01õ' 5g=MGOU4rxϯ[n1RDW@P0ـKЂ;Ґ5dDr (`q%> J싽>ŽM/{PZ84|)6Ҍw}q[LHG,BrGd%-:EjFp[0nVݏ*d8Lr,k.!&эļX@TJa\c% U԰ƾ fYq7S &$P >b|ǬE9-%ߥ˅[JD?cCw[¢/ҸDˌfS6Cz?BՏjC|IA"~R\?ҖFU]KMYA* Fv]zr#$cA{+Z="b<ћ%y+Ř4:./Hq, ᅫZ532tEd/9+ϊ x U M[ttn՞(p,%vS)(F `zSW_m]8a{ M y)g8Iw'7bYK<2]~˱1೩8OV )<<\DZv,ɠE0UĦroapYP\W$[ 3uL/S{ k4Toÿd4u^~⠁Oy ܓvox=!.ul_t j9(1tNMrLcsik>aRޘj{# *cG0ב@.N/vBq_-lhL1`פJ&s-IIF4bp8IR8[bd&*:yT?w;JuQˁV)MXfA@}`hdoY6]v[S+7 Hq{ 8`PxggȲ11@W+r&f2q9_5GۥG){E/$+q˫ͤt ďDr+Z) #if4eǮ}E8pݏ2"^sⱾPA][ߗ_e֧({T$^rro|b*܏૤UksVqb+,{އ~. 0[6m^l|raFtqu#.nC%͊.~5m-A%wJ'|VQv6To "x Ca)H\y&ӞnqHC.gx!JG(,ʿŝI '҆`g5d0Kp!2g>eC`%ȇI>e4a' j 7<z.P eV J-:}I߿p@tX@sE?RH`D^ 0i=覥U$7=#60&Z~GsL 'zqe>~ Ph`2V];J@|I>DQ]j}2 ƭ^(wۚ JY-s(.D(Wu?0y%ߧ7P<٫Cj\QfطJ04#js!ld@a<=qtX= m8cx;ɩy9tjVT?p~C}ҘTI a!(~*)KM%$6L]tS u٩4{Xb>\.;d-k~a)'m$ 2ly4{(xGx{hb&N%'j6EScضJ@e#JpK% lҙ-AdwbK{JXAT!Hvl_C\l~bzh\Z`!ڻ !x\8tآ  U4KT-0ih}NIz}mD/ŐWFDt8V_8/V=gй볌`17As={9& 3 Gc+):)mĉm)0y*׏t-)jh0K. ZBG˷- c* $g'JRWzV4EK |='wQmP4ݻ wco^D}a{SK&j*MgD3sJDqgs,C 0'zKE ?!rY=!P2iBfky.T?tvT-К{g sGIT߿uܖuz5,[;x_g*k S93A"b v S 78eYߝB.5-wŠ4}Y:wŜ[h~Za>ĤwzqEx}q"`O9,fZxx0Zcf }8IU(A-%z3v/ΕK;xkeвf٫dsKH`O޿8ZGףݞUn[ag6n5M+-؍4X"@cpmtʴF|o!B[&D~vwb`qGkz8cqQYKngB]?$dlxW ho"'F$*pƜ3#$D to<FG6rM[RCC ]+:e^yD2A-H/ow*MJ ]#M"O̿D-1BwFV*Ѫj?󄅶S8pZ̲ }M|vɸq:8!OUf׸^޶' Oe3D@s.n" ] hQ'·Ŗd9S~(rVv k3nYg!cR YkQnWZ+#< qn1H5ׯW3uŴF@3,=F@\ɫV7WS2  n3HdDZ6ʀOu~ACWL_Ԡ?c>|(m3+W8N lفT^ [4JMJq/^`tA OC3w)-rMxzDUOSGdBĴIdHqNإtʻO]>9(?!Wr8V9)CC{yj]ʕTf#JEgp7XYeYk$yAγWxN||қQ?ǚx9CT\ȷ Y_U,Gπ ~[\)aӳ 20XҢ!P ~D(*/ض<4yLSHQ'3+ϖ\@.t0>XA-'yv<@BV3sX}KN|^ ϊjGF߅;ɍ ̓BOv%95TNboV4SK#6kò.ִd|r@\K1`ț'#>ehg@ }!O[Kbd$zgj{^o70C>clMqksNQ;ubZ 8ke6fqhn2KҘ^@ ?ƲڏEQi˩*SJ=v5MXc.YR7)>h ml4VB縋YB$maWMakd~zzr\i{q Gչ(Ϗi>W}ZV$y? M6staQ5 ;ou"jcAŧ*RW{1y53evD~Iv!޺mNEЧy1 ?N⸦3Q?MWi^ LJ:[} _V21k 2Rn,p-#~a{Zdǎs8{sxp)Q =GSÀ~HƩr!Na#02vqd?k@{B'*YX7#(7~/Vs3ww`|Y,k17 "?Jgٌ?S6pdKX@v i$P{>t<2YиAތG9<\8؄ S bǏH=Q vUHN9_hƠ%VѠE+j*5ACˢDݯ)[&ј㢕3')1F2z+rWz@G!m+$H˹zHtFKSї +MI3VA)>)3*㿞9,u:۬#I'V #p^[[/N#c(/ "nbzRr*X9cVl"Tj`V?|O5%T!\}!m(@dA(A q6u?8I'Uj 4V΄% )Iq@9/XtHPmmD ^wݴ~"~s0d:*J XЇAJW}T?u-ȅ]'Tu($B.UrDžXwBOy_pNWz5a^xc)PnŸs?:ɯetko`K灥W*m a08/b/-@~%V$^ȝYaN>xb =%wAIzVFPWr ˜ / pyFھK3ʱnXg y+Jp+'N-OkfR;cgE^?,X]0RRTf\͊򥗙Qր'G"t/nN3곏PWrW)KY;?]A\ -N_OKp%nYV';6N5K~%M~@|f C6::D/-j|h/u:jGf5xVk*-ݵ c>IBdJ;#A#bHE򼃮Ҫ5ݙd^7iP{tEr@ks ۑې08hYpq_(6R!5寛Bf1}ľWv&[s%;¸BLt$Om2 ce)cTV'o1Ti50*3SjU\uZ>}>-$Bk݂ГKȷ%&菢#++Yck FixқP}݈c;UR-ƻRbavEڥKsQ}:C |eW%׻XR6Lt ~b(!̣8'!JQ%Az"(+ԏT$~I''nDP+H7tZT2e b2m+p,` u[')k7m@fwE6fkR=( >yL˯5?ԝ= 6&e %g{B}Tr_ҝdd|P\yQ*Q= ;~ =b~"p0HV?8~Kes/׉ MݜxW+CFiO|kࠕ :J&߬䛇lX5߅IU&>[J@8q?gQ]{EƲ \}TM6#st>,^XùcC`wId#\~ ##*9Uv kb="8mόBFʷ#ic:S6S%Dee6@REaq*1*SXė")Q%4söz6N/҄L38e}CJ+;B]kDVjNapF p”ŀM¸u2v@Q='W An%,O21 TˊY )<K G9u.^h1X]=We[_]'ᬯ7{D;9FDVNUuW/mzܩn2N __忘%YQ&_.rQf}/$LFjrfGMV^ s3c v0b[< t6rZHm e[9XnƂS-rV6]"Dxg?aCR 8' ǎtxRbHZ1>AA&c% :i?RCۍpyFM.kza)Un@MukT.1dnEqN{64r.b4! x4 D{5 -497ٟ6k@ż@PB[Ԕd9]&Я>?+N^_D{4Ꟶ~[yln+ST 8Fid;9S;̔b`D_ls3ɓ.]zL)6;wq:Dž%HzklB^9D6X -ۮ$wKs$9ʫXK(P _^ IWv¾:ܠz~nQnҟ)23k\VsDcTY!`z-`;􃈵;Z)f$gi#&bT(> BpY1d<ဆVg%9CLEw!o&߽c@o5368DsIY] ] U#GcQm ͆7ƚ{S. c$'p[t wk?uil F)7WpfV ,χ)p)!{Jaבli(oot%gx2r rWцV>IX·)疎Dv ĘxvW /-==8?dkvcƙ-B.-ևй3 ٩yq4$MG.@XQ>J#^K%vDVy7U=ID77'Mʟ@`MP>]2a5-tAR'4?NSM˳˱@ WjMw]PRFֱ^*#&#O!Y|X1]ȺKc+2XoE:ƹKD#~J{q? *M@;9Q4H_ws;g^W"Ys MG _j%999pg]|ګ{:&'T/Iӊ76J>,͖G_.@<WU\ t>;yB(#ȉ8r$|s]nj\t"<BФU:!ˆG.4> ~M7zH7 ,Jq^i 3̖O~ Ef.dd3L"CXJ72) a9!njsl&E7 ÄG\sud!K|^tڱ!ȡ체5:*+i`j 3,$??j'"QOZ.Cs3C6` ݒf^H ;ث{Tnqx-enK] ME&=\-%qkb :F?Y@Ay٘oPV3B4V[q5y-(JV #2S^7WgR>[u-~R<{?M (cw*hFS2|W a#} +TrzʐMCNvR5[nK֜{%_HZ IE`#Y9CC4$ 49p"@:7ߘLl{+\4k+!>H+I@2Ea}QDb;CwQMoD\{)ݾnZ.GЂдs|Q%Q6C23<>F IV9fU_wزcXe2[+1,~EX <dth˗֯GgiS%V`" UV< M(bKTҢbig;{}`ԣ"UPI\e Q(#:N פ ^cop~ dWY/D^ *XʼnDf7&7aV>cQ3,H́ԛ@ļ1e N3CE6o:&2h*_doZu1yX~ w*1>!B $g7 -l|GLaQ))PE>jfK6hf:kkyOz D l\uZUz7!X}J_iϱP^ۉZ.>"˚_"v m"y-ϳbǟhQN ~a" tAn9R:`ig4ދD2W7, v6aD^3Nѕhs>5Y%L.<'F/1i)%cc4iJiqR+&iPe$hFM3 ,0odRy|+5ЇAM;cNz\`#A\LuU{FZ<6晶xG]0UM a5JNYo>4% P vx jbRq{E2,trʴc&H58h[Ǭ|:i`}6ȜH]ւ8`LeQsq|!sݩ`<{mGend^65/~@p\ȫAoĝPōX |nmN(tlػN]ʹeNmM]N&sJ@̈|=K)N `oZx,H$A98@6}p"9ȥ܌eaxXnRNrwP?`! HM?F0{⋛Ps^\bx0gqWxw5P_1J:aD)?BGVԐkT6;҅9֗њ{Li:XT^)N*~t }]`uˏ G mJJ΂^NWYőizEfu^1֡sEN۰9_9}:Х.7f kLT/~L|=k>.ܖi^dqA092.ʤ0dOzPVr#oܗ N-!{iJtZ$CR%Y]~ɵgGo66L$~=Ɉk]\.yJR2)ߔҝsa"7v@[Ļ; wE|:ߕm2:.KҢ|W 0ܼ6?HqSM AD[j)}vuZE3LOk]5cVgQ*GƇ ~E>B#W"ۀQ .U.= |=sNV)p+1>B0:!]f@xl5vYPJȢGן>=dAqPGMvjz!|/Kš{SBYwƋx*{'6ᖨ'1B6P|&[ ]X[Brdsf8Tf]cDPE$L!,e`2U(bz ¾\cZ ciR(` Dio.qHwB5҃/íf\T c);e+o"iaBU.5ᖲV[y2J:&G4!uqvn2n1q_M568n, d#hm oYY84<{Uu>^!U7Ԯ6P7`P4i٨Rk+Bά(r@ߚGI0# 9qF[q6Vksb0Lc 5VPZEJE˗J/:n߸Nw<{wAU/s}vڌp 4AМ^$b;&@¹/ UVK Trg̀9DL5l6,`Y7&/!jz[ȳhoꬍ,bDXfdd+;0si@Q"q)[:9߫6?e ǙoD_|E2_V!=bcž6]OƐR ĘR"M =VɈF jCߴt#Z!Pj,$}Y$8D6:ϧ~8ໝRDqKзӎ7C]e PP#ľFܚH:Y}b0xsEvD\Jy^VxƖ>LR\R1A) 0^dpo—qՈ4mfY%AX#Pb=d#J" 1ub::R6ϔ%.\< ^dF,{!Q$ΒE\mB`a[IcUC8 *hBlxיs\p6~j~CkY#S:(bZ :U==m!jbN>]d*"516#2+>cP1i9[v(̩9$_^_2RWv7Qz`haKimCS(2@s'T~}SPo&)f/sJweo dd g@:dh3+kOo,20c i*^􃩬z>ye{?\y_y=C$e acQȦGy)qi3p#[0<$sW7=$}n">6r#`5Gu .5% ̀,#:X>zJy(YhhCU T,~?GßX?4мh,u~\0у궼N`\hÁ3e`G;+a̓#X tf,$2] O\+\Xaapp2=Gޘ|}%Fg@jB]o͉V7Y]^#zɨ|pʛ5̴0foѨ.%;S2_c s[|x\e@@pNmjyCx3B2'ʹ4fa ?EnƷ}gVMy_O!o|mсL+DP?EG[+n҄w-l)^N& #h?rRE_uYD48K׏06uB|+52!;%Rst[U-hu7@-B9>O#ԙdLu CSQ ^+:6XE0Y Ϡ]GUF]"=:Rt:-j_QE?ź-

BKeީs5ݙB$Z_Nw~0&S.#';;Npf>D|o=?f,X;?vulD̿w{^݁ 8`IJ7RCzIӜXo^ é1Z}տy%hj?+Bx*LH3 6_'@N˰/ݘzGQ0DrRbeʾ,:t/Hm.lV \m 9(o+a]ˋ㉞z-8ÍS6`Փw\C~\63./ktZ>kB) 6)9řIϦ!q-8 5 ߚ_B1O:!MVQwY?lDZ ':c4ج&y&'6`8o4 aqv4u~f/pW#ߠXM`X!C*kgj2}JFg}]g%kDOyJMbMC1sA(>h<#OkEY!oPu:VHNN{-FCZ% #ǩyf{ÛWMO5 Q-E*^.ih]!YVjbEoo x8m6ڼ0vZ3hwsi4IήA#\9L= 3i!( ,a1*0lʼn( &jkŻbIBXdLMrGXRJ  3t#6%$& Ez3(B1MM;7dW]h0);悙x2#va&=>;vqY@SK$oQdYnp F_p. =hkژjXC RěQ׳x>vi?.P1NwT% 8:lKD@ϺOy:ݗxyJ>M f*\9HmZ~%b1Y2)8*N8E! > ,&yjǝqao:a!. \GF5-K=u܉WYZiN뫅&Z:)!AB>=t Wqt[4Yʬ߾v{|7ZS/]v!^'[P5vSZ`g{>M1؋k1ҋ`9%:QY& |$v".shRSuhE.YKS+<}Aq PmCؙ,%FdB:Shdf[]y;y (}hx1%qιq,x1&Wㅍgn7E[^z_Cbf*Uj }0y7d,b3F_V8hRq]<%R${]F>?}(`t$1 o?B$e|лa^{KO6ȶd FhW^T_}:-'8f6bD p! UWz+b;N)osFLDZ!3A{Vh%UXz'Ҿi̙șNxa{!ĎC捬FLktV5:A-o5)eQ3m’j<.4d^U1R> Ί 1~+nM ;cn*g297EPN8?j\q>d pz[p_: 9}}={9gKQ12zLUI{-OW!qtW `+NNK/<jaGuc{WyHIa%@4Gj-rAnQmz Toey4K<ؚT~'54ni6]ȝ0=e7.9΂_:=C3-/Aƹ1X >qL/7V/sbPu\^>RWst|!ƙmp _=-)Wd[[fMhEҲ!Qk F%ɱY6>lsn`D"Rgl`#qBa(|֫UQ2i4 v7=h#M`Űo)|>8+S2'P0a&E|rql"~.*I(c( 9RYcFR.f͆ץS&1^ YZ/ozKoͭ}7(2,8OY$f(nЊDȑ3wX/!f4Xg,o9Csypqdu{%YTô)OXua_ao0WxYp0DL"s# 4'`3]Js6K w->9d2D/FЍ2(ē!Eu\d/UvT,­+yY[E fHVWʸ>bw3 /CvHy]t@<9q3U?,O /^!{6 5v\FܮJ!Euf,}C;,8t>@d)$}Q ץ%AYVB '|aBbQ 1o3{.ͨ5-4vmrCi~⦻IT\X_3? OK{-E?ȏ<PȪoAɤbFINE\?TѮ^ڟ|ie{j.ܳuLejP1q&2hR}|鋩Jѩ*D㝁H2AC\0) Oi|X[sVabQo(_|D DoFtm%(W|܄jռhbv\; "ܐwR8S tkK0cL = Ii2IO%P"臌q| %I]gzֲm l T] {$󊑤p$v3-θ OfhmG$"R˱JKV62hO ]PÝNeKC]˓mk\$-)lK10$D{'2~|MN:kW2!=/{D_*F Aot34Pj?OcSᦉܧ! MQT& .Z4[_^#cʫPh.T)Xg?jn8*3DHҿ^'CgKݩJ\/JC..Z!_Ddڍ!1FR+2u%N6hdԷH7 OW]uO.[)dC{6D1E"-AN>͔!?O"*G `(Z0j$Pw0CVbh+rK}2cN{ r3SUsd9<+nR-\c8ݴ@J9Yg}+v4R;"#! SHL!C3 p2 >Z엝dHm>1MFhxy<2KD,glʀ y(c]jOפ}&3 '/=RwZ>)"7 m#T S º2RO/fb7`=5 %7L 1g1y PRf]Q 'b`C\'OzDy}Y0~hFT>F@+n8׳BфdSS{H-%XgVSO_aw9Y7ގbU^>7Zq$"I=Pq8Nmyxq|5NX?lhn3M1%hIh X6ω.2{оv aKC݋I5M>klN&S1 YNgt(̒<2'b.{[[=GQPB7xF&" ?`LhRbh@i ߀G@is/S$}O{q*Ů!}Ι=G6/VGƺL| 0! gNx .O^AMQF]DI_O;[|gnYD()#Lg+Б2ӬGĽU 0[%qCM̶2` Κl٤h`3骋;Nm#t*]gHů4˂u.d{s*͚|- םY$f7p% 4x%=^DnZE6*%Wg]rk EMRW,- :e~2k;8WDlcV@b*64*B@j8΁6j8ðМاnwM꽣~OUPLw,*Ei5`w=Bs&tq =-\DPu,GFZ7")&XMzmAjOFM3 -o>Syt\K'$u'1F#B |Uǎ0Aq܉$&}Jb[! 9<@OZ%Riri.z.t=6(݉6\"G7=8ħCτ9D;b sD+aBgxWFre_ Yȧo/C}VX7zl8w(,rBmd'C7%Kkb=vOSyR#w6aB u>UV2 W)am# H>uH-E+oFQs7>3-y4-#Vt)xh֐Cy*pl]ݷs1Dv²?j\um!Rܵ"DyQɭ:5$VMwxVll6V6J!v[V95<$̸H + NQ*ɞ-K9'XɶqxHCE-yRԡT_tJ->s;S/V#@`yڹaQMO:;^ 'm[a@@11SC\f y7.8RniAi Ϋ3TɹdٲxDPXU³\6wfcK χ.XW" l٬̫$vrx'_ \%(׈VUA'ac}q㮸臡Pi/+>>y" u5w ЁVxnp%9ѹۉa,ӏ T'qETs1W񹌚7% 3 SMmPXiWėd4Q;92Pc0١R Z2^ƒ|x X_y;OD6 qۧmB56[U4Hɑ5iwףy'}dy2|of5OMD$awԩe~_8}45i2H(EJJ V*Jl+Չ[kClzɖ&:3<8ް'lᱵ}ݕ%2Mifx구80̩[m$3ڢK PxX[>`9٬Koe:SGj/>:E/S4G\X%5'6S4JnҬ!> 4%Ml̇{WLŋS[Cvi+dt֐DF_r|A`J[^mcwSe/,g=oOJ}hE/{ңIHNI9: MGbee\_F(SJ.*cpsVeAܘ{|OpFFje0%qBw-v}42àδ}ȬJ~Pšx^P Z^u_MTs1㏱.|G.cBGa*ҁ ' ܪ`޽UbK С$[ ~S*G3*M'LWzF5Mg\}7c߇o`i) KV">AGSgMFhЬ`LMS;ZR b-++6#l3s,!4=hizwj@l/aR*f=>oJ7#)iPO6EEe2"yZ 8AšЫWazGm6;cQUJfg *Kx"rtA){UfZkMt*7t$Vdup%%q҆ų%Xv{% CLj8 )E@]E ^AdC ڥ6g(ңK};0bDE=BSLMrXĎ^ >J]"Vկ/_>3٨uf- ?XbZ`eD`& ˆ_ޛWE:O;^(i@EC^GPD;< {=b*\(Zd >hz"[4;gL\hLbChx[gr\ f h>HmөD#zx7yv |kSjSBqRI^sv iMى}X^XQs*ɧuw@U,~ lA#Hss7D#:i}b8*!֓$dOHMD!URi3_U Sw"mDؿzXjrɁ`UM(:—_gl}ӧTw='@+ |\0G8IfVI*1j%,/>M}˴$ .sk_x;O0HIkO)"Ȑ XPm܊^Z Q-C䱘enc0Xmz~;]pH)Yi橑`)QgxQr?x]oW\+-@WC} A2bόR~SӽUڛVŒH{ߢVuF̟BHySDB%``iqU5?hf۟Q^MR_ļZL"zt߹-=S(][k-">ˑ̫s8kMnqQ;mm_n^SNNIW8DeV~`Rǹ *fT^O[/{DǗ஡ 6ԧ;;qO= A JWٛ yswSiIg* 询k˛mN;5lvoڤ&ΛYVV ;sbؿ Wx7GEfQw.8Z^[̈́Ts-v \-l:oA01A:X_ o؊4MiXIywMv)\EzhLo 4ҫudwJ౦^ w}dՉ{"qMTzSaG냨j$ Q^TҚ;am1) >uC47iw#j2;r9>dH1 O'ׅ9=qP/ T K>ǵl4טPm# ڣ]}zUbZw:6V0QN-~J;te96?Uo8p?5Hv#ASX1h+'vg@%:j-6ZL8wT'S-rB z~bhnv9hB0js6)y~ĿQ M)XuM ` ߚUЙ[Z͗5<9q@:VY<fxW&3D;C{`;}ָh%t`P.i+hV912V+Q/rx}QTj8]a/bB5;-Ds!{8~c $ܝha1޳Eϼ;褂,./y{2#xc)MRWSps|(J͘nȪi~Z3iDB_{|+n-M *փQ &ǪwnXL'30w N J: ˚,rma#|uF?r"᝞|@qzv= 1]FQ  kˢOA{ÐWKP5qj/g50 [JF쁺Alh * w$C#+HGo(pxOӝpvZ+c۽B`qPc"f LABש(ߊ q;SNuEX2Srxdgef#M+OhUz?8L._%^5:uϢ֘=b,7LuęβQ@O9Q`(4Ɏ9_3Zr|J( N8<ؔ ݑ0'0R\Hږ~2z]z$^e e88vߛ÷D_#$ ?9(<X1p E|FNJw-UBA~@D{,V\tR{1:Q $Yߺ)?  R"c#/!g$L T| j}!2RHWZ ;Nw2MO/`R!0\j$2YwW>pA7]5K (Vɷq!_nϩ\[bB4lTYiE傶7zyYB;˲˰NA-F] *Ɏ\uA)A(\v-N(0*BXUW>*NS*!C/9km QM+(N߁DD~as,̦^܅k'u9-QgZfCr׶B=.3Cq{_NmOz,_ui۰ӕ?)9aDP?t=f#m$|hz `thD_sV^%ihۧ-C TdTljFk!v2ov7m@9\g>V!Wǽ GW֩Eeo,JhF;9MrNM<2R kPcƻ9\[7n|gcb_ V(z̋c/c !!g880}pi."4d=Ű]O{ڽ3d? N(PZo:;Lp E9Ntr)ccg6'F˿5O=xtqkE J̼fKS#\EH5fM; s8 5?]PJYaK:DW({:  KZ sڷܶ2yty#ex]hr#ƨ FȊE{8)~Gr]G&&w}O,hL[`8-SwQ\t^aWK|_3NJp'?׊ Ԏa)M8?#3(Yvr9 ypHGћZm?E<z^Ba"Bo+3Z *c1B(Z >nz5u:>sm闋nKF$vD`$,P,0GAKZ@Cٿ=eCEe\>*v@T?Hϑ$UI2beI=ƀhT 5j1T̚g+Q: Sl:2R0@.dll7 -cH9$j4)ȘV4_.CFSrRSc&E64 %Ð_$Wfs̓( =y!=p!]/5׮mZߗ)UA>F |Lu1AŴ+/~ 1wuwLAFTn=>NG(jmŕ#gDC %D|S߼'=>vN bRz]Q mȱI6s0aF:uBtPaoo/{8`rS?zl\* tyrZXj (W ̥5aLI=LQ]u;޽MU*!w-T`A>W4ׂEi$q-؃ >4Bۈ(1pIY4rOX4'-o0ڭ]);sg cWIL} o;%FNQpQai{4O_…u XII|%;ayekӆA;½ig1"+=8!\Z+ϸE+ޛTӶySP~ڪb;\?'U23xk5t&I?Ljqԧ NKmEn෮A[mW#m h!yyi l {\QQK~,O1CD [ w7wu ƼVʷQxb(-ec QsD$șp2y!en8dK|#-~:S(%;S2ؾ“Q eaAC܍;L -fQA¢ LkhP ©pWv]eb~336|+zo`>{HͩDaA0*p\fh|7G/ _VHFםWW4YTsb [H=]A5661[cj;Q;,b EKI0n΋sw26DinUqÄ81ր+ Kb֬ZEYcdP>'wW0rh)~2AmOw`?} qE-ì ;nn|)d]Pp>-URY%ի6ǠO1;ZɋDDЧFlSe{֒ڣ!ɱ 4b7dx@FG“X+vwRon{qŝC8.%TB# 0+譟ix=ڐpG-dʵIAC+**"UDj+94θr=UۺǾ?ޅfE_kY.t., G?QLv?Z|mŎc;sE[y?2$\ md3`*2БbۙVv؈.:hB(6<5~'_0W>W孮(;MF݁s8V̦B{Sl+7_Htf1bl{>"&Ԯj5Q)ś)Y%]ȾbX\[,b;S$|@^{QYo5yeR%&T]P& 0bg.Tk8$8Lj%Ɉcm+tm|wf:7_13ω)Wܤ# >]i%Q."2U7V9ac YoQO_2g+losdtfy92(biIEH%^U_R{.:xÖy΅o=6+K{ڏ#ET\h[cnjϚֲ |Ev4ϧaVlM]|e{%V`X~d yQ/< jӯ?4)IK&sp./;RU![и1Ic}e6E2Um_ YD|c> 2pX,:3x0hm4ECo]m'`ֳ7ԃp6tGGVq7 qG$::mKs<8,K6~d2rc_ҠM3\?"?SFPZz(LQZC+%[~Hq c0YKz }0 i~o!^?%}pۏD.|z5|x<ѳ)M0~"o סfA{Z[]j$}H?ru4W"2 R{;%~&nVEG:\//>B4N<^w`ho =C>( +pbG)yaF<)Z9-%|Qdea|6K 2%BNfElqX`Mb[ GO9vr_`XxuG׼1uq7nq_WPZ5JYl #! +!B_5"aN=͉R +R;0SۍRSKn(9۟a'ҳIip"% ',aF waLMk}نO>R< "P0.NjAe4k0i ]ꏀW DDYo-}]SE>.(MXgֳV5{TYdK*A |*orG=g¢o$zhhN娱CuBUqNtLjq^qٚwpE<l(zZFK%9ޒkG3FTq*d90JRZLi,ႫWpu4y=])O w*Mc6>{LdjA? jy3GoЗHB~o(e5TX* tm[[;/ \ J rTȕ2:QmJjf:ectenYCjuB͠:k1 WWZ (,?p(7%̅ qva˷ jO$ٟ ja?le;v _wlWV;0wDϺ`vfnRZ\"靱!Zء 2PF(ijv ?O/~fĤZl38zRw^o?b?;e"奍W( dѢvD ?y3giRi ])t?,FзÍ41}@yÞҍZǜ`J=!Ii'jo$_.";a_p(JGe(aAѻ}[9t\C;šv="* Eq㖝aBу/HH#KG/`O#3x+vX |ui9DzPݒ:g| 㳴|4ChdiQ_A ? q֮0_o?Q}d2 {Om$RJXLN f' p"LKxЧKF*ʮHvU -@ n[ʾ Dhu ޷IBqMcjI&\g8kڿ] CHf+i̓ 3;\w(G~V4te@h@}7ǩit#"XRy]K tpP/ޱ^ sҡ D'%J~vZB棎$j nV( E=Cx.z*0ZV+4Q!Yi%C*̫fFUZT)VImzᏮE0 AԑS5kLFRjz3}vh8]sFfOG{=t.{qՖFB}xg3&0~١=d͞ {$0qsokzPF;rv:,w3*" .EII,&ai'GK 4LEHW Qs})x4+(tQ3sOTk_ӮE^,/H*za2-|n T-3qO<*t6UHenD )P$nR }є̵Gk]` z@j{n8O' ][o܆S}n (/+qemM,-r G)ºpY~MH)1Ȗ`qry{okO"hw@I5n$ ANCD_#vqC~^eK,ɪ֨O[4ob {_L/ݥ}JbI8eqJTľ*p٫x ʣn&w ɿ+sm淂wUPxP!Lv Ț)q,c.?1<*\k@a*ClpY'6H~ MHۗ/$w_3U{ڏd0b9/^jr-GE dm; dg7:}fP"c V0!2jF;"&# C^<T HDgE%̩CΝҗDGR*B8 Qyw=@%։`UH=gOz&gQB!W%3ܚU{ŰRiM+6+c)'"*8? *]E.̱+,Icw=/7).II1~#F"pNkfuI ؘ@r'GSر k|ubG elP2ew t# hXTw G)Ѵג UUT{2T nW׬dm9YY4f!]È4`&cx.X ywȌ}fX Qee~Mx">]"9G4t}0VQv4h Akg|qQ Fͩ˧\Ǒ/{Pӟ9,9/_x@R0)_m ښH?_KgaAхs;u(hT@P.7wJ0aO{PY4FQL c&iK ?{@UTَlQ? kyyR{B nmȎzޯYrR)CC-Я@YTvdN㧑VenW~d9?LE>[< U" g- ;?E_Hчn 䱌\Optn2OYNSJq!{]ChsDLWO#5RMdC0?1(B)K{͖oGzy2A) J 9=u(Q+RyqHB% E'5iBh OI(w>d}G @."Ó;z7Q9Sy Q)JdHG=9/ ̙f9u# =LiOa ~.tsZNH'5-<5i9Y_@-AE2gp3TOk|1ܨ/E=`ֶJ| 8)d-h& b-}vb+SRQD*鞪r D*ƕMu? үxX qYU \sڈmZRVw-0BN)S3G\γ6""WuDszzQ?'Rp*|6]a@eFG}>77\G뎾"D_[3 a+q+;6quY?5Z-7Na--Zkj}ѣcp |:>=ã5ͣp,o @Ld'X5p0о)26F>u&@Zn_kKΞbd ?u Wuf`/%iW7טRTǕ"?xrGW$YgC tSxC?ӭ!M&ʤ7Jq8YF s}*rppE,R灝42$  5@L 0^ѥ[x0 K:wq vXicPRL#N^}y9ԗ4oMՍ\ҙ5$lyq(w՜DFA ٚ%AQk]`:ʾӤȃ򺜻Ɵ NvYGjr o *Z.Z}t] ::jSIWBg]h7F)r:(tB&|TQ(,~;;5q[h`^ഄ%3#6꽌󱚛f%Ȼ ;tr,W"+sd^|R ˕@ f?pP&ڎjLꟽ#,w˥.k1C.{gIR_k,=A| krnQH8m֩Pbj%[i{ʽ ٲC,;Ø[.3җd `GrIY [F µ:`NqbAڏW)FԼyݜIe!kmm(gL8 w)(.o Be#EJu,ӉДPJW|_=6mS8OΣv TT=0nUeO.JJhɌϮ^%4-R0- ۶5i`۰.S͟]bk¶y8z#vN'&#}E59%2͹QG`֑=`B} c(4,D:`L !z+)S,gC|f.}@6I Zȿꭈ!ՠ}LW-,룟lUp|Ǣ -Gel^$F}Ք=K/g?vP`%JY-Km|oe$aY=U"J_8ƫEq<[0ōS s{l̬6Qw3S䨻AldjNpO>=%"4ysgTNMBt;u|OBbz4eܧE_GI[ՄJ}6?~JZRdoIg' 1Wnou9 H*<nKcG, :0;ތ'atϘYJ38ehIԻ֋MaAj>c ʱ;Bz$N]1Hgn".A/5>Oڒ!8" fMK Ϸ0^p﫞d<_vW\7QzѾߔAtߠFA>Ky$-c7t ~H5,P5SU$^&yaěߡBT $,REQOoo/@9N^;G$"cl*]Y_܈d #G6Q&|;>%0!R9]c:'!["Avm`#u͗-Ng"u7 MgcIp~١߯S1rIZm*Ta۴e<4e~8׸pZX7fc㩘K6+T#L09x1iBq 7䰖Ӑ0NJqvQ\p"8sQcw,4 퉻ͬд'ؕnտRX ?grl8m/x#π7Y370y0Ia\rz֠֩p 4mkBSTn삣@<sDK픓.L8)M~Yy$J!¼h"2Ӎp-X}?>k0Wy=9yZQ#XP5h1HT-uB"I(Sa&۔1ͪDY5TLYA~5}\1(`WSzRﰦI^O-N\dȍ, BÀBs"a/&K3^rEض/3hMadmwoTQhX 7Үˣ`ypx lj3(LxL2Opځ|ElN^g ڶ;+hmd81m#Z*'bPJziD=vrࠄ]ݒ~]\ي6eKA` BE„t+QuSqGd{ R\ c*\BG8Nevq3n 3ͼ`3csGK9D +kNRMX|Ww3cq[)b[s530;l @{D1)ϵ84gK%'OXfZ}~ET:<dw(U2hc޼|qOj߆̵mX 8|GnR"=J~[ǍRRV {1.='-iL0G i`={D}1B ]e, :0X9od1I}ZCσ8kK| ?4x_*JyE$^G-Q^`C 4/_xNG,mh8=vlW)nA>А-Jd#WF\H 톨cL`e)2")g1<(8D홿ǵ>XO7 YJ uo8~fD|hP~ıD]گ K%US &R#,p8 VLbGpoխ89P^RTA5'ŧ64ε8<# {$lY( 9&.;"M 4³4˔ie\ c![8렌8IH'!߮(1=}ƦV~@4 B5:+(}ʂ8_|DNh':fkA0OL`o0"ZPc{& S=ua7O@Lp^+gC2e{} :2(ef>sҁ="p$'^mapۯS(U8Zy+3V]E] c ^l-Dx"B[$YB!.x6]p!չRΡ4XgZ5>QWM@+p! bڕV8+H6=ܗ;3_坎R{=LN Bh*IsB%\ŏ-8G+KY :6bLJ PTBEN?6-7!B}_-ϯeYhV fޙe2D}[n2&Mw⌐6ژcw6Δ. ltDP|g pK;!;ьx⮍7ժenLl($4+td0@J6/Ir`Jux=% ?!PUGmpŗD>aH'&WUQL+O,^0ӄ7TI C|1LM;z FzYXAF *~ظ$:fKH24pOZb[;h.zp,2\WB 3Ҫ*H (D6iUSD__^=7wRVx+ERIYh#eG}ޖH }myjbD,)ي+U @w fg0HѿgÌ1v@ WgkZXƂVhQP !? ;vf~K%O rX?ך '}ॐQPTky+pk9} ٰcKo=I\ג;zϬpM^ hfvIa% SC0踚 6snaE,\nnaqd o`sqG{5s[\% Cp3Ѡ̙.AΪHFܫ$5/HX\f{*m=-43esVۢ19̝6!Z>췆֑9;1LVy}z "/tH)o;NBo>'?f+*] &ZX)$vv 9,$-;hdL.(|.#آ0-DnXߤ"Oʱ,=ZuL*::oE$jI/J-f~g;zU}>kb2;"I8BZ|5$r?j*CI)ΊkJR.li`b! 511$Z:nA|#[px82KUn 7H H4 NF}\|z83p#G6"~C@8mZ2٦Ye> 3h#Vk:<rJ B 4$/@r@vsV9q r+ WѹE%:Hh>j yJkGI!Ilzc(G M@o?4-VCkuISА^XX܇KTTj[4`P:i)lw`U+XyqԭWO|* /9ُ8>%`EeNc̥8pJ,?i]TRLg#e.1:3GY~ti} Qed k_ -yeE9T-(db:Y֗kSg57b:DjW_^,a@ld_,'DL`ԗ?k3]^Kɜ](=b@6 Jtdl`@%V~t]rSMA2_0JCPv̜ߍs:HX0rsAIds:`ZSTSpѺY.y[~gO'uD\Aܕ1&>ka^q^ygX/-z٘7Y,l(;-24Yp.Ly@1 UuUGIJ*Xa?j`tÄ, q(4J)Js6"ʭ6;Ndaʢ3/Bٿ{vnY:+ T `fZ}әHnX#bm7 u_Ch$SbQ!np擼o7sht DWL;]*HMvCJ/(vIG7'ii6y%tY;}ͪoæOMB?jnkѶ|*mzEx- o!yʎ=s3>eY-wVwpuCBߣ_v : RFY{C,@Fbev]X U,p6GߚBGz3Uf_%3W ~` @y#~P1yp|*)750ƿ Yv /=Kr'!þM ;ԓKzHv=W8(!e_fS8kGCIҚ.?N L'BESTEr6hp(m1lȣ%~þvݠ~#a7v#hEn@%te;Ȇ3 /8j8XEhWCV3PuY bP>A|R1t:CO (8&sFS4sd|/7?(ah3 -*y{Κ =e@^DkG4A^gEk=gtڀKD3&TZoe TFq)δIG*gd̀N`7T~^3ax9זPaz!B9ytx^8Iq qtfj[kUKt޹W+{yW;f4{3 IqCxglCaB٘dTQ&s)>J9,']SaHNJN屍Ɔ;C{A/?.?^2特;=6kH]{rj@ĊA2')%vYK!$4TrZyܦeM ;Z>/*~Wy~0 ɨ$Ojc:ՙpw9gѩߋxiF pG(?mPu {?(:C'Ht K"Ut B\G%*w޷o^}e uB[ĉߖjv:uJgqVz[|P!sG=љ.txK6uB+ hˆWAGwg#]XY'F4 goE4ㄋ~8_ 0Q;⊑Vkj 7LRÅ\#I+haՠ2DEF:F$)93p'6•wcmG0an^zi{l*-&{+oxW4>) Exj{{8Y%N7ɥ(ؕȮ7 $%C1ѽ߈F;S(w%ܡwG| p(|638A7xa19磃" ѯEV'2o窶>lҙHI0&GZN!7!2lQDo Hi)wc,n0q'@j/<)L{g}ʪ^\wvc8  XBAX'+F ͽ߽/< jSZTRc~)8>Cl6Sj8 bUN=ejl nR%t2'^0<'W>r\Ъ']3-%ztBѵ~1< ͜L0zxg)œ"n+L,;.qT$Xr2!j`s\־֩QxErЬ#G_NI lK%q~`gX~cRޯpT^}N-^oŦT4#Tc u[[2gۙ+I~߂qXZ{m?c&U`x5AՈJ#BsE`2~ Ȑw[3CAx$'~s<\?{"?tPlwk9XNPaeG"/K_ETҼLK| )KّsIR֜ɚ)p(ȍ%(}D]#5>aQE)E=C3%%E&ke'ZIj=}KZg}m384IG0d"E E\KR 1-v>Yv\ ~)|ga pQeyf_IՓy9{~LB"򎂋/o(xY'%Hp#TaY pli͈LLTջ:H7o"yv n"FRv]7Dwڵt.ӝBߨV&x>I; ^)z(`ԪK(5zMBJ-s`EvhJ_,I[3EXH^yk h.1]`sRϲp)Tg: W҇7/ܨEp׭,l :/Rau*1l#DrToOz1DۀԷ!#jss-k@>|#5L~8{<asl2;Ej>7#GpcE{ I[ȀqOݏaEP8Ћ=M^>3#5no/^B1Zp3Tg~bC𾛓zpowue Ǻ2&@gik3ӱq.arhF׸:3mSj!\wz*tU2LAeD!#O=CbĭE^_6-2D6 sb_C&W|v'!qCx?owoފ*s_p|NoNV`Vx;[N x)6 |dCq&tp԰%ON5 BSضA#iZ}=^o4LS`{ܡ C9c,rPY)͜ } I]1&h!3Շi0e,g>[+87e ġR8qce(y ;⧈q( x'pWɏO/[aH 0 |9D%&>CP I I27pwxN2*Ge:ex]ڲaXikm~bX>S$.gw=K/竂P.!l kCBE̪P4z*:ѓd=r'Êt<O+EJ2d&i߹H)y );cp&Kye:ڽr g-f_R.,+! HYԼg`r,y/+c!|q=+IV,ttAWJ8~sAr`0jc5 +fggxaM R#fm8MyhPF9 +X>b8>Yx2):C;sؙ8nFiW#Khe0PjXOY̅RvFEDעv`a9~;`jd7dFw9x/^ TZ}F{]ų0׆Sb8g6) F6ҮʬF UOtlVZ;#rao 9;GiG2Fj>1AӾC&=g{ 76(YA 䳺|& ي gh(qvb)ca9&*rV2|'ZW "]oUKS ,D}Ae0Hh P'p!?5n6H- EN$.'hG }$Eh$}ɆIڇ|x g@ʁjSm:*Dr|3jCοʰ%MNK^@yz`1ʵW*柞)ixuRp^#{|Z-LF_wF;o|yCta"}XN>Gl\US*!(B$Zq_:w4ft!P_"!yt)Ͷ ?mavM;7MaccBCyDp쾱JeLW-+(S^m4'&DXtti:qmCmlhgdB΃͢6s@l."VBaKigņa7 b-=e:M&Cr Ya% ,flnbhSу%̝w #o>%w'2+ٽ倓$KOI"#hue"c"+=3tu:y׏?:W2oqQ'" /,_}H WCraQT;i; 6DzD>#g 4~u0%-3(BJmx|̏w)-T'\`+yY0!]Z LRP3p-W@+ER]vDc4z('>YRzܙYB[ .!P?A-(5u{lL~22`HBb:A](ȃs5I3ysʋK6Ze 6hlym9H0(}CX#UQ%(UX]';o`OU8ցpdd S[Ka03|a 'f[<6{0qd>12"nRLE Qv/. weAl@#?~lqLdc+{sW|iǽ:;"Zd@:U!]& o%57<J.a8|3Qg8bk{Ց9iZOQTayJOJɑ[и x6{9SIb:1w@>2Ol$Ƿ%x1Y2 3%w +&?nDq{Z2jM6(̐7EY|HZOp ,M%\rr3,3Xs$}(2MgGWju(C7A[\I%O*X(BI}k)L&hc03d*X\?C>{  sG ݨ6fzdyvwW,K0TsޘLwʕ!鯁96@Tq_Q[lJ,O{D|Sq)gS $CT"v%HI3uRAFNLe֍I+\/ w[:* 'cl~C} ?M AVM/S>< -|/tF(ݮ ig14*ªlk+ gGnl` }v) 3 ȃ)4cBbDfĩ8 :O0\>][Pw^tJ7;ݕHv VC_PA{Vѣǡݸ ,}Wӕ\C;MeL"E>ͷ1x ulu! $>LL`;Ӵwu31Dt%np#î&/ ƈ4G ިƋZ GOS5FGμSݕ2AJ-'bҥK o}s]?xbTF4WXjoz\&qI^n۾J)vzXΖOk&QmwG+H_ٜoexh47~>d 1 I{ӽaID^ +7C5?h(RN!_ 5ýQczJ8Z)U{zdț{+]- sj^<7 cL]2 )2S#Dɞ1 YkCxDPA !\3/sTA(S$PQ %"G;:|yC{9("=I>AsR3\P2Df\K,{]i^QcGJӇIӷ&jW2Ĩ`B#lIsݻ .<ϑ\1}P͙.Ao )~ckk= AP_x+M$-pM_[?zF)z~9cI6['Adz|fDaA2|$/t B,x|:jgl0:8~"PX x-y~n.;nFk*X +lYݳM.(+g2n1?,dH C(8p;t_,Y&,P| QG#$\E7J1++Z_(PU꜋I%>@jY;k H/r~3$_ 0†:F^!js`[XٯE0ĩ4{.E+u HO&qA>{>L7 v_.'e˲a~sd*Ɠhn %oi'/Gd״ m9BDC $ڸ8|䚊UVU_EWJc+o(;:"?ϫcC7-`҆y懨q$ϭ _}]CAlPD~ѯ;a=,e͘#G[ÂT.e/8:'XܜDz'K<ƇQ%A*jHp#7aF'J}(3yb9 ŢdoGֆAIȉ1?QxwThA$#AKFo!t\@)82e|!3@<[֛WkR-eAhS Kk+U7q^&D$'&֩8[@RR҄hCo|< #^h^ի[K$"cǵ86ZGORStvA.gjO!n7͠S`NJ4bIR3&3iȤ7wz,!Owmf鴖lYl9UR bķ9('Bzx|68cLXVI:҈BE| ;fD-xҸ m&\7bO`G`-n Z;h:>5'u9oθnL&`&w VM׆ij Sy7a柀O=Y٥d #iGxhO}}AaәDpka;ZW"lmժFMCä[] 1g(k#3 q=_B2h"& M`1'U{xAБU7,o O‘LBPYgn#f77SD, S'VPJUwr0V䊘K@<Ѕ^3 :+:݇ pbE0pnyY2.^$l}drVNpuLo76%%H✰ fBվ4Rb@_c6/oP*q H7m.D(80obEKDw~'R,&S~Z142p4Rx?@fWGt)radz5O͋vWjd.0VAS7Et7e$ |dGes;k4C{7C&o p,Z$9Ǭ-VW&S z3,75w[mw:l%&\WGfĆbF1dzx*N80u$4y ~kD҄ 2?蓎W(HSz!Ș BVHDDK;u͹sz iz?$m\;ͅ߃$ ,˾0hXH{@zh; ekHHvj3wIUNocSj_3z%<2be~=mx׷Z+J2$S< ,vxMEMdbxhs}eV`Z˻!b1VCW4Ŗ.%)Z^x?`KV =hÝL^1J= G ~j${c5<###Н?‹Vü6 cA^]Ux.`HߗMHΦCx,ؒN;6=o/%WKƚGIM5xU桉YV?딨c4X\F[ AhAH^R =<cPL1$lmFI68B2WhcaQ=tfت&(KnzN 1dAjB3EA;ҳ;ʶ,H5~6v .S9QkSQJdM) 1,hm.Ut!p,;<]R*$? cZyA1lF%Pźi*E Z,IXiE7p@%[k ھk˨~0}`Tc!0wb oN7X, &wg. }w(!d].A#s t YӴ2,TQtOH28#Ѻ"~.(:2fPrRa0C¡ O''&;@Ws2i_QsE,Ӈ%2pgl*mGAwX.,Qk68hB$*tXNx>y@hvD͚M*)tP4rnzpr8o$`׆)YCޙYWop=F&:rwDmm}̑iF&N]! <s2x1 Abכ55 J+g7jᑆ{w6НE C ][ i #gex:S]tX'ڛMOP7$;ae1% RDj ֮5pʇ9 98ڑ[ArF?K(%A ,o0 ^q<*k˭Kk 3?D֭zGj[lmt VxmW—>Dș,aZLdW%N"6g$ 6{1kg&'@2רVTRI_߸ѽ^C'r:;b&Xk,MuDh+Ȅ|.~Dv? 6\{f'Fj:7 4Lp>0b)=/_/.c,"TD~_k70u ƴ>Z[iz^}f&%R6~vm}Q)JQ*=TLyZ'Dn7  և R06^WMB)%=L ulF!1;znOpT鼄ZKnzd10n4 ɰk):Ee&R~~HHTs Wy5idp}>`a -9 < UFId D=#`/U0uˁD: FJf2\ (^97ѡ3l)(]$xk"N<.)T50Yv!{{Wh^WABO2Zic5٣ q̑j7_ G\ѾcM QT›'>RLI)+`L;38PϜ0V!YϿM1qdBcF8c,eѝ3vT{yhv""*XEfq3PBRKsm}sQꉼ"iꖅQqMbЪZଦLZX< f Xi[FlZ 0 d*_kL7swMǵ_3)Wwzc>.GNiB35['[C \CHȱG4J7"p,b-Jw4EK@}<~m&H4  h8R^T^K^SbFbvdsU7Ah~(PB yŹ*>$EA"oCPb pO'KX~'#-i]o0d>_({ {ؗSf@+MDԀ%mRo A;M>+;r'BN6fۍgF"ӀKg 5 +=n`Rpcg_%uwU@Q_Ҭc {\?9P0dW _D{ͧ^FM"tv",R4-j0K~܋G~y!Z)4AuL&k$=ڰb+*qs-0@;QurfHLI%u7'},c "!R""m`RJ=s$|'9pPXVo*Kq]]CTڲjJZ;kwK"sMv"'~7RJ{f֒Gj$x}2- c7ax>ĀOe^U Ԟ-+ ?…W턉̩/g~q ~f]oKEx 4۟zx,A&k=BH˳̑ߣd8 BR 6{&,aͅOր"ۂQmb\I/!1 vC,|Qƥ^W,m5|4wCʂ‰6esN-aCҎUYųzA wOެ 1έ{  9e딥}YA֧0.GgTM 7SY~_l BrB2?Xht7erO7!p`fЎ fn zC˳j4i{=Høƪ޲ٳג~G94wa_vI&)V׎ w fXKP}(\0"5 S@&@PH{g =W;iQIḾj&jokG1(K},hw|z,byr0)*mD@n&2A[1-X" _뒍Ć1WpwϷX8qI͛kcY\=lb _h()m\Z;dtYkEKsU(dlDGdDF(&eZ\\})<YFI[uqƱW,۰r=G:{lL6-ޤu3d|n]x. %X1ebcEcӺe *gY e 2f<ʐ;QzPDjK$a+GMEND7"0]ܖ^5^mAaf$ şչh,x>1)uo/Wk7ZHx8Қ\1QkfaA?i~1'O{M Z;@_(=jE`QY^vލ9ur6Lm՚;*Qr,cFy3, Z(:ΡW`EuPW4a8d(0n*$LC-B5mJyk5Φ8{YgQu]֭K=&6pN0,Cȇ-Xv%D*fe=w]czBu%* 'TO).[~ rǡ] I dQ+#ɑ$ 6~}FMUʐgtS"PL Mx^rʝ?Rl8 ;˳(2uNb!}DAw7:{/2uVIw14I ɤz;G456Şݶjt *kfZH&s Oj T8/Pju[Bv_VWl{뀻l`\Ͻ^sNCNu^x7oy@%!+ Y7Œ߅z-?]|fü?(xQ1IrY=< YXhGťi$J9^[} w)`%3'}ӛ ?@ϯep~hb'`WٓB `ǥhȢj@  GIӤ+:YS6"U,'a4pJ;Jx WP_!pڪ.i ,b8SoUsb!^/N`v׵ 8^[ֿEx~_ŘG^:M\#4'+aB12L8+}gLn6>$EUǖy{>7T5Z b0)'K{\[Q>%'0cr{hEˋl׏}^+387C`쿍~BW([;ݥRy9'X)̢| aTA>GzIL9 '  Q5~ TfY_~/ڣSv3oiq-DZp6֞.=Fo;9PJn"o&ZM3L>qH[/Kz CD4P! T_Q$(t2ꨙ` hpqf)3bb `)_mYp} :0[mxhd2a^a0)&XA@ v~;*U3N+峃H /7=Ka 5erOlzs |AfHqd{ 䶂Mc5b.28$JJ#&3g}ogA`nD posC!4w~۶*;sJWIIo'XZO\^*`zvx+wG ;:3f!jpjd-|êSG-Nx:*={x~n^h烈+C\T[Ns+~`ߜdby2W.H]a2oo-67ne>oB5JQ4AVIo =bsM *sUc-,v&m=`XX[2)Ս&oȡ0$DԒ^1ғ/d%1ɒ/)`y Ý/słb8+a*㙷Q̦)&Ru'tJj?pmKAҴg˳a@,b\ا(&j!J~w|'[Mn Jl/2@|S5RsDmm6J勝(-iiO.ӷؼxsa=b SDpA"̜؛L?2!ZAdke9X6R~h&3Hx 8=s#i,rɢ3<߲un Ϭq? -)|/ӈeWHpOXyi?VհfK}Oxs-oly(U.ULXe)9h }_tpt̄/BKu]ס%4$'-N%6)ZݘŮF]c =Ƅ$5IIF)h:fmKXRjo5y}p]Y,@AgpY<6,&`G+ {`Qceԭ,庥X666PYDdITv5o^hPH.]+X8ein,l*BLA,(poV=yv%k4M14alZ/l)ieBCqviΥjRZQo' iGzj4^abF>6e+c4A,/Tsf.nUɸ΢AI.D'9b7-_CQyPSj'W8X:nKӪɆHM[S߭eiEE/jRT!FsĦsմC-K5H)&P. *M@ O !jM+s? ~k 1w?(~˂l\ O*\ҍVғ9"r\ /-חz[LD3%\RI4nD] D*`|9e_ F w_oqVVH8bOݒ1ֱ 6"Q"R]f34_3X]DKP`=A`Mx:t# l۠,fj-,{jҐ._tfR:XoqJu1Sb9Šgf&޵6Cz8kUbJVB_Zuڝ*h)}dHtoxߏ{yd̑CI`#)N}8d0Y<>ɷguusPZ lL&dx*M.J6 [D;@V#o3p(f}m8e^c ڦ ?xئLr4c~;qjѾo\~E,+&E S#Y4q#Q#(L&a#>q6QaJI1?xd]l:v@tVv.bɯy\H (v F|i T.fA7ǦHXHIш ʪ#qCJf_ (]̯{ۿz#iYc2jJ`w6$д^#^䖿n4OYtD',H٠l{#?vVC&ʾC8JP5*z]aD,_tK)<{^B6vx6j`d}xغ10ZSOKǹ͞ C|TBȹ,Z4Hh&bK wAUlOkBz9"$Ef91Jjrԓ_t" aEU޳٘XJ$) ]jG 0T&E\(ټbٺYV rbyJ_C/7S| p(XCm;+"?lܜYr3υƻkRMa/ [؍by' 0! n'Jjʁ7bHT ym7Rw_/nqR~<:evC,2s/dfk <,> m=x$G@gLVRi|G,kM]`|{,-qM+0|Qp*J d jآy jԨ̎\z1?3mhӶJd.!$Գp`'Ġ0sb'* ͤKͳÒ+զ@pw!UMoQ{F+71z{zЄuehP[y8q ÜfYv"==p|׍־XĂ{Ί`FB*,,H=U|)ZEN.`̢ MOÌ4ł]4|8\&h{gMM 'a;|]/q\ֹ3cQlJZTx5e/gU*H*Isօ绫d-qYqD( :̲k9<ݵզ4khb d٣C>aB]Jl 8>K@-Ӯ/*Rm1@&XuY&MigBVfm'sasxcS2-FOB~l-el}/~Վ9FFDž.c1/S#N+~gE'gۊk8Pr3VH Lo ~Q_{\4Ӛ9J^'j~vd.xP{*npH]ThNܬS( fb_Hy8Ʀ\44-0Uaxu 7Br=YuUFR1RmpwB7w6Y&&u%mM G T"o0<*>f:b}B~76`8ܾ9J:Rl5ܭw k^ {+4 Q67=VQ5Yզjjj: m)³0cUm02ЯjUp$=U doH^zc>-][*`"ILCKbx#o8KL3 tv tl,X KƚJXF( {И&sgY0bR@<B#a|áf._+DF@ʈN"tVZQyfކLKjKW\՝^ŀfvak%5lSRDU(\-<e-8%EyGێ:-h]QO1-&pI&\dU{ԹhUMݏ50;G7ռS59 yXbo.蟓_ tʻüORtN`Mˤz`k;v:>ccB{|Vep̘/i]m[`,|-]/=g7ܼ5F >ű5oۇGӪuEvQ%S(KLߓx`5ڨ&h9C6MIPpt1%RzԩMuAN^#ߏ]mRny8Ç}=*-h]q~o1t68~3&k])]-D>|-M wuG>w2,N<]jgUQV&D$wPc@ylZ${!- aʂ{Qj'T{j4.)G/R{R^pV%)㙮ȏDfRּKTTuzޯe~l^`|Ejb/*SV'" ? 07#>p?S??\,q8^\z^>C8%}--T4Q:;cW5*&n[a9E">z,Cpf؈d)nB ?k#̢y0Ǖ"y4ih3m{Fj|> \<][ۑ|{|XI)CB{O7"4쎤<_p}`~*ayz V1R3(e4UiQrߗX<{ql{DP LFˆ#~7We]D|GׄZs :$g{>?, $[Om,Kד%'PdqJuiIDk"` "Au5#i~}ܪk~`ɨF <%2fчs(0h DKK" xZ8@y7=_ u5Jͽg=iz&ޣ3za4)`6T=<ĺ 1ޜ-'@9^KT8|3xr`b x~7.QLENJ"ڣ݃+$zPԝ%;1ͷv$WPrjeK|+j^[ijh[0"NFUCiCi x W1wW(kwpӁAƘ e„ۅj7%?ޥQ#Iqwd ?$Gc4c|%(r joF<MdtTwdjUMU:@v~hJO7EDQ(vzɶ*+7LPX;6#&Z,(Z8:=v2!Fl32cu %l;09{qO]TW9ithإ_{m8SR4r!j=FoSazop ^Z_~?a}_YJ "&#s&JUYn+ .QsE&8eSi kΤLP >TNv5N^.[ܒI/,yu)/y]aEP$WEZY!G%ȔdѼV2yèuAl3HpN ^YWRGRy-#*t^|څȟ\@gK\4#øD ?b`*klSlԕ0>! yPoMG^fNR^m|+ O'_pyFߣ}m])$ 87Yg64B5 n;Þ6AyAmDdX#)R?ZI$nPReUG8Z|E x&2B[+@1КC rOSjtVbr2[G jg%w<8Pvjp:=Ggx%1ˎ{(v' oUYvPxc*:{!똙:niZ{umLi""5?P)n7g|l݈!gY􆳠% u bŁցTR2^FM܍V@/ʢ"u *_";rZ{ׂMO` ƌW MFj |IslmSa+k^R*N/\FaTLǦM䠆ok,V}}%,:3QZXCWvtbi]?2Ƥ<!I"/Q6idol ^kvwp5An~uMߝUTRW3{ {kn}+hN^8-trҦ{r~T 8MP ǜiTj+0,(fWE$5EBnۢCsfl%_89%/oKXOJ6m8S2%B6 o :h]o*.`/aՐ ~DE,WZ A\ d9&43@S4r鬎 ϳC^!U[3` ;a`BOC5iKVԈ1$ƮE\*\+iAAvr5yhK6]tԂCnA 8*5%/NlT0q`ɈoI&oC$|:3M%<DIѦk[ge)C}\?ACqP lzqgDʒ B蠆4%[RW/CW-8 އ4&za80nwAY7d3{YvxqUks^ ӭ~SFx5o EOHdzLkǂ_KO5)Gy14t5N憪FGɻrbUG4l$'9-sYoؗq 83Ӥbi Fd[T9aWr~]F]4s~M, bQF J"PS2yCم*f{t\[Ɵ<&B$e|j⢶cnN5Jhh,ZK.k.OVLI0WE颍K=g)q qjύIp8ҏ4*\5`aJг)#ALEy07Zf z|'2~gO ~6R V}_bQB0:J4{~I(P@9*9nNNiߡ[vN2a2e=:Ҁ?DzR(0"9s ݀]5[вY_#|J% "MAd"]e'QW}Gq_Ը7L>x}oNe,Z⑖X㭣t#I+ۛB 2B|}BܱE;L![z뀇w|/G,:MVVVR:=aǾ'3&-0ǘv^DqGWǩ?3R~Ƣ..D5;e*n3gg) dUgp`&8Ul}Ō(3-:Ou maFir"[͂40-;]W wD'!=enp&pR*sv*$R8']O2;6Zdjz"RýeCŔJc 5+?#K)SCk#G(Jpr62py/|ugI[s_OѳK3miʥNlqZ3N ؉\ŞN,7[_;4VS+l;}2qt[ڸ҈WҘzRfwEI(KFu>"`uvظEfBt?[+7o -`oV^6`{RkfZJo %]WpF%Sl&eLiEw:It+y@l nמ6~lb~"Cfi^D NfTEU@`tjęDk- ?]cg^mɛ4[:Vo 3jagT}z|TQkǼQMPE^t㥈4EdB-F W!1n{cS$W:_=%Rb]~q'z\1W>W}ƝPCF1!a;l^RJrG"WSNӭ{@iJ_ IQ nHM+ybFPp|zž+9*S{T=aHvE@!/3;I3s Tp*),%DP4F-Hb3|4`<5K1{0vxgގq O9{$%t% Wq},Kez c-ϬK|qWRi)hnCNcTCCB;O7tcy>mVU;;%Qw=9-t6U;[BY+HBKTR IԄp*z*f8L|*⤽{j5( rIqeq’x$2N|.ݸ( #fV e,p4-F,YN}^yV S3(-ڿ6=SL"D{YHFl Py)>&cEF:!(U3ξ(ek[)5)6]x|1Ч:ח;_\_(ocAd(1ST eeYHbUK4AڬP.C }9'$ <W[K&PbuNz J u&{fXbF0lBKfn/?ȺT=gZ0~FOQ3Z ~Bg fUC "C/Zو &iԍW>YB:9+n&^zj|N>cj&2<@w Wu(8k` HQ nˎ"ĝEDy@#-t_#E$lT/[}<̚6wp[Y u#vjBf]! @Ո4&?q{QП0 \&&#qq/Kt,@^ cD"g6Xۊ ;Y__.4!%^ԗy`<+/ھ@MNIYͅ{9JBW? O ۠׼fߑ]NjDU«4 5۬OJnl|$ÈMU-I P ̊FqD:8a$k 0hB]s+h,}u) @߃ueqA3G& ?" _m31jVMdpmQ-CkCUGRM1WN4k 4d#&ʇ#=h_ħ""S4:k=z㘑U=&|4sDkyOKenA C%6Y"n`^5_aS e}BVXK(fQR uz٣x?_BAr^ZPG`4=vr8q +!Z ƉoB@VEx\Qa6~akWÙx V X"*p-Ҩt ݍE7 %uJEsPFS,v0qM{x~qjhDSy 3X$"jr_># Zsj 4%YC3r9|+[h̩%OSc%)4~Udf`pUPݸ.1?,>d'rm*'ȒU2\nxP2qVtԥʙ/ƠJB7v*+X ``2$aw NŸM\.Ĵ6ֱC6B߲uT>,[Z3Vf2+qFI?5̦p@;Qeuv''w-W ;Ynnʾc.<0&<2=,n Ohy"w&g!S& ^SRK Z){SD=tC.8~Paf|SD0VE C5$B]zUW1_FnAi=e e6$(Įlz4eU3#n/:Ch9W} j2 ]q&%lahn+M,e<%svtkgX-$~[p%weQchEIǼs\sZ&eZ=2Z'sj 2-Mk k`tB':פdGa99Qڥ3Y(.ZRq2 s_&>֥=L,qg"79y(A)8= OڒL QB֠tm*A_! C2zz1 +M N}c?đ&…e\`5E*lȏf_UhJhb* /:tw`JB+%YG6/Mk9$}כaqoޤ%Wj|;R, 9c̈tLjNCA+ÊB,xU? E&v}s>hkAʀb?1#,"x<(TMdE쭠'KNTV`\S F+F$~ ߌͽ|2Tٕd/6O=p'| qT*}@7ǜfՀ&`VcUtń7'#]>Vr!Jn-KdH¹Wi8tN,eE:$m=scHxY2@+p'5x$NfFrc4:^V>WIh͏"Qp3tOb ɂ$-0Qq+ 0GWEp D>g*c(uoij62+o%AZ44p (n u/ BXoK%coXl.$g,sVeJh2}3H`s,v骅O%p*i ,ݸ"# Qjt7DeK'jZFו3~{k"Ŷ&]b4 S;) yO#:/ޥ\*@oLSW6#W)}7gM'az+4 bwXatqU])4֡ejsD.EcJrE ؖ( j|HEJX ~W4D)齦;hHB@k2Bڎ\ oO}_w'Utg ahRឨ OcsB*eYʼ<oM &*HKRkyWdp.H}r dd?18; HnPV 7phu(I tf8( zw_ơg(vm |+[L.iŭbJAsUm9}--i>M$klvo)%nĀB(T^2_ǀ{W4*MSWiLݨ98.HTM|9z*海$)xVJIb%%0t4(rom <6!40:FuR,16 =ʼn5 /IT'l u,-Rc\t&m%;r-^LA7y. hR,HԀv'x0em7HUbł*n>R-,g3Bڹ]PnMaq%(̺WH5QzdD(!ݞ̦tss @M8RrUU"~JnS.W3aYcUx n)ʚMIݘm$7/9&[4~42\"A#x\&L=?"{q5E1!& B {TJj(/h`ZOz@ ~cH/wn|Kc`r'ǪJծR*.j`!4^龯k `YyYcd'Bχ17.C-%wUJXbr6UA%i5FwKMgm"ӊdw*eٍ,x4Sg˫>%e}#/4+%o /cΛ{6ÜuAʿ!|&LB* ĐwAeEZDJ9*}-zmBr`l6"ϡTM L!9{m_ʢ5G8^cdGm\| IV=-ݾ-k`E^bw^ẲxHk !-w!M൚a^hG2 nk~;'F,2!.粈hx6u+|̜fO"ØIB0ʳL<YEH2p6''zF=uZ]:EmFVgbD ~ 7s48?9JI7ƿjqDv&V,*Hkh7=1HQ;j6~1-` ݳGMfl=9 QY_Ӂ*ʡEK7ou QH4ڽv8y]8|#m@a2yޕR\޿Wթ)nPQcMǧA[Ҥ{X 9-\ EUIhztL㲵1}9:u]Wh)1a.gcFJ"|8Ab(GIM2C̞jmbFAJӯ͡oKW5`zd)sR\%5_& iI[y#g&z5v̿(=U}P-> ׇEo'eaw^!BRF~8Vʂ* ӑZ'yFTK3 -4[ _ dtDhax`]VhiWMcb bת\q{x][i??{iVՊF d(,?Ybd!0RuV4aςSG4NT? {$BLϕvWd__-[-"sq|ĘͭZW@ I 烎~FRI, i\AY~mxˆRi9xRӞC{幺2v\#aRb14=֕DKVq"#vmcm/᪖#(x!&.XS"l_t6܉,ep*]yAqbP ~ ܔ]7A.ic,M+I-FQe oQnNuZ5)2&>87V5  x &+7pb2"$z c8DKt+77Q4&{Kw1ηG-V@2viDPiNnŮ56wz[9rry=+d[]Ut}ưG|cH KOwmn^Aud)Vi᎚!%Bd|"Uw^nD|ĝfK5"`=F㸐t ҷ/AYDע8džoq5J@~ Yyul8RDVa}pb&P{eS5 etNg(Eeb?J r$ _ |; 2<P!㐸ZuUxqtVӸ0 N~O~T1~gX'A5^NnGʺ-&,Ʉf{^saZަG:/4NKPX-m~]LpLVuc߂J)˚ Ƥ- __mzrM+槕h">$ |ˬRMהz~̤BfDtg :"wFkNtʛ&R`5;֙סO~~fp4_;0pT>54fCL4 T0t_mG4ƞ"hԐG#K.Id `vLMP{'n8KZ6| ZSƃ\N nM` WЙY HҬ%V?r^ɢdAx, dOWiZ/i oʢLK! z?3bfZJ3L˪Mc%WFԒ:VuJ?SB|Puun"e f ;eo/nH|6s辙GRRu4̂\vfض ,%s#]Rqf}YGyTwC=,!զK4^p58Cd(q4F,&Ң +V\ kmK:C|lX<\%BrWsx`)kߥ?ֽw1$q,Z 2o- M$p#j8X9*f-2JC@Er[RVqM:2X,ijn/H(u'9.ǁ GM~ǬdYr<3tV2 K F\ i{"kqj?gX{SkȿG3o94c8hbIǛ1U{3ˆhbyPn$/ X3ɂ׾ۧGK ^ԕ&-n"*3խV&}}]RqC/<).uP`R6ˢ`ZS3{;ȃ ]Ȱ>d]#;ʛJ'C4ߺ@t ~J6 g\ Nnk$~TsiZ;< v]krlVx( 2w0Cx/[Ml gXVKl;;um^*F*tmy @ٶ_yiE5uh:GxsW+_Žo:$T{ CM[]qm;Y|!0Tp2EepqVàt}UW")_jL:Pj\O׋`ǛN,& SO*Ӧ mݨ9:W4;5,ݥض7{,>܆WU}Ѵ}?ppgz}eC吜!eGxM'0}/߇1mMH#zb!Yjzg uw:H)#t-"g.i)a:Cn̛`"꘡ڪ,8PIa:Ml<߃.Rұ}/ ݒDKRTK>J<:^fcf[V,+7#CRЌ+ߛ;/d1?l31ި,1HF@Le&rrjc\2B|i8{uڬ]婒wÁ[W,o1?ݾ" 0r B:T39d9jXXw:6]4]bYu3:rv*Kԅ? Kw^m78MEpiF&ň?z\TB *VPz7uuiřT32<`l* ; 6'5JR/\73=;3 9IV!T5WG!kD[4;I >=w#*BB/·ॺTZ09yzXm)\ÅT%}Û/DQ >64M>F}QZν4Q$/xofck,ZzKk݅p/a^"4wT\TT`' 5oxaЭI]ӝ!N4JpUuoZsWc1SwAQsެ$=*_^rxPrVWO\PlxNWc+p6Y0뾐p)4bcy3~Gݯʒ\!񈏁t8V^^WO<~ßaB( )O0pRZ4 0[#F퓥 Ї= `"!Cc8s6aPqשPzwVDk {a6%΋lRCIHJ 3;){ W雮V\WQ-D|lj8أ޹3Mok~LG$(ݫFheՁ2O=œWJbNH>3Xߛ wۤ^RҪdV,'tu)Κ&g]m_(UC3ةZ6˘hY.vKP`:BwGϢ<$nXؤ"6x_bCňp${z|!ե:΀VÄ9<|Ԇ btDjU?Dn/+k'(\QGΞۙsB"bNäiMKWEGg@VRp+n׹ݘE894"_9 hzD,#b)@ ?YE޼wݢeOC>,L >ffHP) Cg(Bn_vu)F&\ޢ+u"YvESz%O#@QGK8Wp>L6{kCǀ)ʛK^t fX_pwaV+t~Re=>_^Ei $SxZE"AJ^4N=clIֶ#]RJJ14}խ <*fvq0T3QMq:Z%pCH@>n2x}@o")g~85zD7ToU$ }IC8#7 \:'%Ps!+*!WViJZ]5Єtʉ]49X̰ǞeE}G};#r6P D]%nrC]0L䇀+T>dtK-ʍ|ϛ[r:(QP納;)>''Bw57׶/q|yLw,T4)bq6mlj 49u݂*-;׫;`U]`9"M d]ɃZ?\51Рb~ -m jWɡ񡇨 Kq: 2 w5E Rv٧oi)*8H #j5vv%:1J #wrmdFτ>xJ\BJjq5uRsC,ǐh`@tKSf@ A7/ U$XdNAG&UFն†xSQ#R{3M5Vƣդ?#N+oI3n9B#AD}7,ܠJ悼W(bmsNs鮲|=#(_P˹N7sOƇ8C .rxF j`cwlaQ844S^o(.ѵY~iCgN*4U͝Y p9߼\&:r~Sk.f/n"'+<G,Oi,PFj\~AP;@{.3'^Ƽ\T dIV{? m#uZZepT]q\., <ٮ%$ a)o&.Eu , : %Lbfg+)B{LAF&9Hc:^x6o Xڼ[Dcdq\ye$N}Z4RQ+UR/IL;o4CU4>p7>9d/9% kkPS@KDs6x՛m gXH(U ⺶=BPS ҿH|=.3Gaɕ]Hs55R9ճgyCR4z)ۊ$- [ֺ}SvPH-Cu{-\A|gee`?"R!z- ]8Rڅ`\GIGӰAQT& Ql^`9݈a%wԥ d 1'!-EWF՗`U'ͪ+.^΋v0 L.5jV1.T26ʦ}E $#d3W8B8PFʯ oiL.{26gn'7\b_;Iu|*Wn[y-HpNԵ[7cZXiST"`8N}@cHg1|Pq\$SF4'>QгqO?~- 2NCM|EH`r!e mڿpU%uRA|U^C+WQHm313 pj$AHeSNgUzqL<8J!q2ZQsNeBMH,N}LM$9?}$IV=ʛ9GZxrA=K1ZlnT=2VV ~m>P.P7uv~xaMjw?4dnJ `b׍NM"ZbD`gqiƪoNv",<1KXw΃=, <{r۱pO.XehXqמUW@gH0-?8dm19 ٥lr-h ӸNLh/5FHfE5]eV/}̨M ;~g²@b8f`ۢȒXHnN)ޥiTgxڂ$uB5͙R~)-& YҬ`8Op9$f7 ɳ k̀w)ug]H, 5#"Ga%ѫ%+N3O,`chșZn+Ct_Pjִ溷\  b^tdzܰ$tY =jWabȏX WV@]a80W hP}3II<:d** a&C3kէ!I:ƣ@ϸY؋YIu˖^{'dlt9_HNjlq1a%$l%$U,I.4%wRjzu˟&$7戂C#m5~6pP`3 Ns㘿!W0Eƅ̣y z0Ci7Hnv]AMmCewzؾb|ןWe`Q|3xY]JCT.4el8: a-tT#20} w*DT(P) FNCmGpPՔ Q#TOX)qN'=n5J G(|W?a;vV idśDш,7ԡ-\u]ȡ7Z 6&z?0ien6oռC% 9i9Bb=-# 3%G^tԹ@)5GEqӽ-,Ynq <ɽ*8wbk<΁qt;^Yej,6 UQ*h @M@2Ӻ2oN!cB.?% aAEc`AA4`*r*ۀe ~0<|k' WK^퉯[][7B*{SPn&$Z,S-+ŸWeYھ(#Vؐo˷ ByHGaDM. 2U05dCosajfR;Gus!yq9Nʨv5JWhus[S7 )$l٩yǕ7n[o Jzf{w˶ bn+׊ ^pO>m(,p3 f9qK୮8t0'/L&c^| 3SX_ޭZ^7;'I_kȼupF GZ*$43l\̺F@1Q"n,*e%V>*.s&-_}ݜSa9-:+MΘlT\Mhv.z}p>eiM~t:Ur+n>ʲ4óap0 8s8(L&;߷ | ^I˦EEAZK|}Ϫ߀KФ3\7u3Vg#uqG6\HG(EV[(u3{<4GgֳFB}tg&H_?\ nYA"r{^Pi[TYi[Px\'x|1Ռe2pط@M4ƽӓ3G>=:4پ Ty;nh~l@ȱ㙊 6Y "YڎyW9Omҏa_*8Xx ]ێ}B T 'X&xE:-*Vhe P[J (-((lx+FcfYAj.etq#+H"Z!c1JXw\(5Ɨ1Pq,c!Tzt>O)-4=~< D\b-N#J\ZY9`-gzyW7LFkL?ɏ %Mr~)d,, ̪Ìk5^_ ]I(0=4hw:'4EWbmjB`)bʹͧ xnOB[_Ӓ \mU~f[atdV..uMR3˙9G'L̜i]AFr*:g3r Kok<;h /ۿE{ Q4r1[#(\#x&t.(bC 3J3_d>&Z1dismtBG]mngoMd$.kRתHHa T ^@l1`s,u~d.ZZ11zԩse[*7|қT>)NQߋH˟#^l$i\M3} Y6IH~sXEk 񒟹.PfGT۔w.4uodSް7<^{%,G_9zΚg:Wyl=> UXقR,prtUXZ/fQIh0sQ9MyVA5x#o>k:|Lu:$Pubq'1ɝn|$9ҦqMW1pPT.%kNQ~9h#vF#_ѕOX_=3޸Y B<,nw(Lc=?K*=Qw*ǭP#/ xOeG;{258aÐ.NcËW+2fQK/.[,luu,羌]S#Z䇵ojQUpq{ұ7b mo"髡:\;nO|O&Up&i+#Я$+RC+BKs #ͥ{s} m΋SWX|0 G?e+7&6% o9϶R02kBWc$LK'ʸg1n,OqiުyĮMzx ARBH?Ȫv~o70UL,JowÕ$ fUu;nOSi 9yA|"r%@rCh2B@,5%"'Շ@Q=IIDakqLii7Tzu=, č҄r@M+RxF@ͥ7wgE<-}iR($m 4%5w ~18Hf6-Gߨ+C몄?.l|!CRnuHdQ/hء{:IY$kx8A̸kv6xvu`Ԑ_;/b8Nd|ai"¬x&0_Qc`mV?/6x;8$;J"pI,Nme,e+Yb=!uV_K)/K)\TeCxK l^,0ڧʷ#..D볨>&'ѦF|Zs^﹩׳DI,լr hQ<ոzCh NܤʰEVuYX\?|J?/I'W : iRx/w:-΃ڑĭ !~Zh56f3`I3I"k_5X܇oz Cfݚ! ШzIh{5vXFsg;fAcx[ ȣYh!>؇ں"`NvW@G >R43/ hƢ[1[=:YD_ix\2Ȉ|S"EhAo9MWiqHM?8: ̱̣bj| 7fR5"K;_%Vqk5B'ef%)椫9}cMGIa^O 4'?r`9nU]- fclH36"@$4}6Dt}ƶ\Yw gae~@D8sl{L5C>Y*m=o' H9 O ۞Pv}~iP d7QKFW&طHpDzupE펤yZ/7d$F{? :Xy;:5B)ÿ>_aދ֬zڠR5I(T*djKF'S았koPo \`YNf55K3l_/p"ۇ:(:Yb3Q".sȣe {v@m9iiUBBZ#a!FG9lz Q0dvIjZ,ţKUlAܣӋnҚ6cO- xgbŠ܇_JcG,%rΔC3Gu璺7^Kk :uDڲ^iLC`g|715tdonR'XjH wv+yAhɾޘⷀɔr+r5`/sjY y!ϒ~2e.(svnNLq9ܐ\wU,2ޠ |󁫳oeZZMMtqH&&}9 Z Xe33S1W 6:O LT…j'FzVkۄ80.<4֖2kN;,Q)j^G޾jM Í2QX>7ysn%B&ڔp֐SD 0.0FPa+e jEM0&V-R|U '#d\;0UrاCo-$yXJ&tU-ś\Wla&V~3TlCLy  "=)"yd*ϥeaqj[E4 A0@¸%o =FQ pBp…C;^=~ QWI@!lq}k5č]s"X&ϝL%G6-Z+8AtF5lԄ$r9O{J^♧Bo;Ҍd]N y;!"{FT} YZi̭ޢ7M^lBj CG6UW/xa ˍOs% ͦVUA_z;U6W*G`6KvP-7mX (H~8 OݧJ ZƧ+8<뗱 `֣p;#NUZE{ЬF'))@:4r9[MRyO*jQYoHQD8l^7vp7\fZ||{归Lxd}7k^Aֹ`3Xy!&ߊk}_['h6Zy+{|*s!wV@v&]F]Lt J ̴gjL %HagNo2YrĊW''|AGzb%@dV᭕kmf@Uj\q3ޖ듦>غns"?H{B67Apf11+_`>⽪wZd#qYd; pg )Va݁mM@#2W˦$'x|*> #HoCar]u0+6A؁017yҮ~`nėv0ÿwxq=\A?TzoqFK4Z)I >3.̀YUnrFVISYk^tj4i歚&<*4)"AdU T/=19Br"=G-Q/dbVo\#r~}Do&KU@dP84E~ `4,6L,|8V 4It()W]`E4|Jk09AUhxzGr=z~PQ{ 96?Ӄ҂a)SNg~e*pNB-vwqH e|heC̭0G7Ͳ{UP{;+xLpD/^e"`G > P183'.rv'0X&깣GdxIzV_zi yRsxoPUzmWJ`!uawF7KOl*hYM;eAu>qaX֋`!Pp};B՛x̊A v!uX0/3yAwN*fMh.O͡ C{?cDO ?'p2wcR0ohW1L x͉~g۴դ\X>j'ic>^?R_]kՅ|>b]IL٨8ͲD0VJWE\#=bObdfIϮU&$'%Nm'pu"g4g_8n΀ֱgĮkG($#pk T;K2n .f \Gg҈?ʹe-[7;%hi,ir/4X[dM849 1$1$žKdw{ܿ_-YXFe'To۽m$V&YCa7k}gwDVE+#eL(sxd'=K8O0x$G~;8:ol(9壤ȓ]Bs5t,Q1vE҆qKHq2޴DW!m/Ij )Vtm3g2A0"'I#t1lsUv1ZrڲH;5=91tz."ِr\`"40o1v8h# .W }h24rlm_tfs"S-ODgcr"5i-r e;q۞j=TB1[ټ3  Nmcuh٘1<( Ъ˓L+e9]͞U5W!6wd;Mr0I wp8=jLEQF?A֡LgWZZH'nbJ9UJrTYfbTWS=Ϗ+UPٸX+OEyz&$Rʵ!2Zclg߶dS rL@jm\q 7wAyvߴJ ?,k:u٨P| ؋0m,'j3fDž'~ zʈ!D}Cb)ab|Bmx=x$'p*BC)r }XsEJ&QXrYcN j"'鳤SxEg5I/G46B+[ rU`"pa˝HUQ!VPv DWEo%ؓ_XۤCEäBHtnHlU*bB J.@qH**EJ7LS҇ K"\KNp9Dejd KYЁ*AǨ&PA9@nt^N> ,|7/i@oU:I_!EkIxA;[v!%Dkk&3]层)O[h0hᑟy@ JuyωJK'֏Pv$ylABm0tMȒiADY.6on߶-*ZrR*/B[hN'P6jfTs.Ia>\Cvݒ>n,\NC6`==`89JaH/5[̧NQ#qC4r?1-!,;)j#\ۨD$u؄/]6m/n~4?{0D*;l!EmB _]vjl3 KdMovYoVdNzVE>zМH57T.yazys4VMLoug&U( ?ø_!>=BxTy?-a 1bt_ :+Qw('5]0ڲݘ#Ok~o{;p>kӀG+mcVbɰ '\wUu.OdQmZ!-"5M 79p)e>01>qVZw}E)PљR{Z8y{Ւ1."ftE\Cm$02l4}'R G)$}yxצqTMcdo/:@{/c({&TgtA[Nⱟ$a/k @SNA>ha,@I<n]Fih\h]}Z̻6iiNv n6ڞN3cGb=UY,Z,{m]k+5FViٓ8pC2_b> 1ܡ,F [Ci/HJuŤ4C*¥1okR\@.9$.\mj&".\:Jn\vOyNASz=syGVX 9O'1hK*Rqa^ۖGnϭ_taPtk1 |;iQ&i&?/0Y8[kS2ƟT&ì>?Ō[ !I1kJLs_y2b jZZCN~qC|5hᔲ5IHv Bie7Hr/ ~>|!qLH؛ Z sDj$|90yS3r'?5ݲM}My?)¢Uy+=5N/l0a.J'oSmdQ< hH&(qDSy\(D{B]-Vn/\|R0!ԾI9ird܉ZV8xsMa-RÖmH 24oh+Qf_ +:ѵŁ#L WLC dj%):m55]jMv|L#Wn-Kj+s@o 5v"FSԧQXx {͕p- &'t]w$\#p(b,S DeTze ;l~!83J*ݶy[ʊK*Yfښ\;jfJ@TgДDiNCLYWl;fdžˋOs]9k!kf2}vJY`& tV`Ut@0s>s<>9}ez!W-׋#tF|HZ:(d?O/+!)%+`: ).1[^ݙchKOr~bRf(EQoJ/--7;㾤̳oBU]p~_BϮݽos,7W3 h4ˊ5?!&2[;3l8*??:p'k#&ͭ|K(E2 V0hzn\^ gpSV=Ħ;T<6#6ۓ3X̺R@ Y 8^0'(&™4rɅc|E x` U va|HQ&i#uJ'L}v*9u[]aʉy !aIѡǠgSZҾM0鸭JFYgĽ]Ah nd2ϐ[a A5ZqUÚWڛ'}F` Z.:{cAO߯on%%J"4DB" }wa|MbTXCHN9iK9ؒ6gWÇYm-ٜ9#gl&l^mƼwIDŖ'~ݓGGR`RIDbֱ/J7<j7QơE=;kFݮ9;Ior%囫r_~U%МS:ݥdSV%5Xb"n{^@mI.R< AY!v'jJr䪽;~bI>hT]YGw0 NݼbC.ޙWig!lIZL˩0wj*%=jųȜ=zI.bBt$FjFלmo.?bWE'(p3Yqne#z&3θ&"1:^ ¦Y\ mB HL#So Φs\hda%ec ɤ5D9i}RsRE?Qz3h,v*)#~)@ `AT׫vLnM!)۷vIM<~ I>@Y~FkA6/_bI7^+ТT8} g˾Ϻw!a3mE6E%[Ka&INW9ת*+jmSE<4K.жh1!]nCZw8UucwR,T RP?B,q_]'+ x4j(귨p4$!YjaN01R+ lyJr,HY(ъY68g]KiY WܰB-kSD o'ҭC4]"VJNG!:CP-7Lפb@?ӬY{LESm- ~{Y3.G}dX%[u-@Xp\yef|UA֣"6 G/|# H%jS5p03SV0GK@g:]6p.sO5H'Lr -\*Oz9!5#jEUqhB1&ͻrn =<̖u;ztJ?c5`U3&Dr:>PDXMBa/ ]p#z`'&-`dHkBF[`Sfd,%"]I]A -w". '2 iͨ2ouy#o<11N±o*H,$]$DN#,L  n 7v N?LXTRBPښqğv nc&0CX5/ y`a\X2޳ːR[i`Wh=q7,gus!}^[`]:8p֞DGrgt }Ӥ(Afw#, 5lS:M7m LO3 2&2;@KM{1Tk&G٧nu«=w? *I0"P*AdW^Fe&YtQh s،rɺwsA(asꠎw/f'(BE]-иZTEm5nw+PZ..w,ЦN9r&B sKȩly (z{M2T+mP <`6[FG -( B'%a38!-$}b*U.?17/MW0м0*ŵ2l1Tϟ SC} B,,~uz_ۧ1ʧ|e__tNXB#H:8l|ThėZMi0H N5??=֡SM 7hgnuqC[= LQntWyni+;U xl; l$u;C{AV x%%%nO\cNȥ%mN=BVz$ETj~3MZbmΞ -#HeQ,0&!1~>uk9*=dKe!/ Ziinq~m YRqR"o֐]y<:L\( P1a޷@Wj,Of:}|S_qU-kC<ÓvKc?QXl64~=HXxptNl :GyjMFLnQ2 :( cG1͊܄v 6-*_9LQ8=뾳%om)&Oќ yɄ#);+Ҟ0;K).f -|`JnJn3Pdԩp )SǬ)F0ܷԩڷmO'䐛7}]Rǁ++%4ns\kqg"5[MbAړ<1 0{;ÿÈ8uZ{WE`J4Xehn.kz"_%q G6h*!D[*Yw||_ Xd@Eo-gSۻ?pgQ=x`󓎴$,=;h֎-p`$.Simj;uIY/y6L` P6݄e={1zϸ tvXE-y_\Y|'*9Q/,λc8y"@3;Tx#u[Jq NgU [l$Ob\`7g?OS؄ͰdrSE.x^U}P=Gc9'VX{{z SqqmF [g1E*w8 _xŨ֍zc^}n2yajk@RxG7 "?har.~ċ"9sZRFeE^-oP|Z3iŸr5W[O=W3Fyn0`UBMN|}ogU 10`; a*4uX, lsX ~FeAϹEA.q%><[8 9boI\d<#nƀ\(|I҆/f_Nlx;+[xB6;3(wSoTݺzX+k*[9 j'G4[[V("e)af$b>.$ZC\EDtڣHlxuiȢ|."y}^Tߖ+ UF1} <TUd%Uir|t*FY҃7[iX4 ;KauLBϷlgd=eY=ڰ(0h3r\]"Ɋғ쵯/Gt؄˛V)WwN5UcDbrHN]>:4uB`a s8iBxbA K Xt-gRC7\& Yrhk.v=V#X )Ӯ@=6c2\i('$: k.zW<[N|8n,f\* 4 {*׃Ѡg#U jb:l2Ln\=^n|,;K\Qqx5۵YWlw).Ŷ{׿K nk8̈͛6E+A6CjdgZsH_fEE+4?hәݤ+jݘؗE)PG+jL؊%mhcҠ$@\{5~VU*ė#ay"UTllFn:TCl[ۗJU V:dHjA3NO]JDuz9eB\ } SL]FG  S$u7-5t*^y$ _UsqԿ0Oءib5T[7)~Z ߵKrő6;v{3~b/}d:XN;KG0 9Iy np9$rVlߐKh;1MPwAT+&D_!a%mq & cI.r1u Ue8> |>K9z]iXVI.|?w2HikG§%߯J5c/ӐMOj? =t;_m+yùX^ O$[Z;|gA0wXSe%!JXU/_R/)F8!MBB ?4oTVYE9Ǥk2.j1͏>Trv$)v4B `cR(_49MD+QJg)1HMQcqʀ@޲ \F]1M֊/\?ؼd#"0HVҹ':d@&ƅ+ Lϙ&̣%>d@Kw97)|Fq Xly1֯?0D%̎RH ABTDph*31/W/@ a]+Έ ?~#^d`$ /;Mޫjt*%S-0-1 ~z";QprJf9֖t$Į]b@1%zI&Dk c Ay#5@!WG>j1z`j pz 3z[.#+L7,b"(Y*=@`|G:Y"N;E_h/Cu DX8^A988ơV>-rZ:c;M(i/us:uo_T{|*.B Y% .d6+x)%1?YnZwrO#4oR@/8lnO5{qN ^&Ps8OgWb\cֽj'9;["6Q͓򴜭jltr88ENo6!}W_$r՚lv %>?z?mAͰY rvCÝ!2zk0؂/(8y{XgU~#+p5Dd>3\ wFJ*t_LFJ#ʖy|>r1&'̠ů\;8e\'t,s5lJz6ne/B_v<\ ,FdoOg\ 0 P,cx: m8pFB՛u^GwܨWRj,m1Sޏ\&-W0'3z!GB%em8 z(¦+aܴ5L;qmYYD:n$̵UZVΜ/'N!t"cZD5סiR '%?R +UDYF13uycSl Ԕ<5 ҁ߿KbsaZSӀe{psib sEy!<(HmUGlWf<.Xh r`D: OleI*ԮuW2_m6]&{4щLx@=ʌz2юd?!_iIiO9 Wͻv@G #`a ~` FSMA #au(Lq6׀<0(ӉΣx1_͏IGՙ!)m}=kI3M]l7N;6h HBmJYJ0)·@\/\{Y iE,/֘ty@jA/3kD#\ߦqvf{ q0-=UHu!Vٖkw^mum!J+u䚍PH+Hy-IoغUT S?^W# zBmb rF1G@,.G((M꨽]bV6&E8Z$F 9͹7yrq28D`~/cmm<GF9hzi]D6ɥ9{C O2 &ͩEo+%(@, { &W#`Iߘ 6DdlD%_}9 O",k|{Wu>ij7x˘Q JAI& =dy̦Ҁ!>8RO3C\gö<:JI "_{"^V0d L :ݑ5pdOP*{3.bB۸nj5},3NT~VUϮ`%83lڃˤxܹ=n^}3~. zP \C&qxPݪ$:AT,^՝HR%fJ[LM *<#ƭOYPeT/Ҙj?f8VKĹ*ҾtEu3e6L&jsmx"m;a.L7C*YI#uUlo=Z+_b෷r"T̀oP( "= 4yz D hb,!xn? DIT‱ebT=wF8\1D/rq@qE T0vƥw)Ȼ2ʛ6ʧz  ܜS00:ᓰU&%-ဉovƶM'T+gAF{*eV:35Jε>@>S) u%2LaMADֳGhn*-t70i˵s[gf՟WxrsU8kP d w1Y<|npXlO*Ѵrx,@&Bf1 {y_fh:ޗD!Uڶ:Ν3Ȋ⏖D1b YF_V.Nzb<,ff|$j:z]Rs+!Ɉ ᦃ3I YxoY̞MP/ t,]:hjt)58-gE|?^qgP qt(JYF]xD\X60qmB L-ʐ[`~uTe`cC{+-e5+PW;V2K7uJCD0$  (th] 㵱ZuAs5\xDU E9$lwac4Rl0>i*ڢp@nfc됼OSu k;$S$pGMB1Bp_X 0$84 {>d8b 2ׇ9v!^2 uG%Fl7bs W 3C$Ik8˂9%V:>XCЪ{^.fC؜g*@zv*V09 3墿5#F|lU,wʪSq{ gƊև&ڮ6'LZr#dG }2\YS{{47-aʠ6ZQL(' 4!#&{I1pCC'`ms_^MyFQ{dYcU)AJ00g#H?VRH F&f G/ \v NaDKw.sH˼Yik@ފ}.Pj_Y+8hXyzF '/:zT@حmF҄#ͷ-R&T!SA6ܮ2WZ֫.g f+~T⩡jb>YfɤB(G9tal-Q -cY(hJ$iJQ'7>yO-RZ'c AD z!,9Ոy9EXTVgulK#Y=G-TQ^3=X\gO|w<95Džt 9̻ws@<T{p1, Zp^⩥8pJR)<s"+즒tn(bʹ!}뮴=i{g;PºqH.$#~Kd[i"XǗ˛Eζ0{‰`L 0,[E1|_K ٫z4Nt.w)3`%? 0:@)w DœZiΈ!"3|4 b{zH-R8v(",p ?}Cٱ!٬vD۸3pDӘwd{~EOtT@Kz*{ߚDLn=QuȞA 0-Oa[Œ^b\$4ڕr5vAv_nCND(~̥|!9 }VS8KT rE 0N4ʲ1v2>@wde|;~a%Z1n%5]|\|j/Ϋw]jep>h!RJ$Ɯ^1`Oߊ=mOg+ g j7l'~1u{nG+?ALF{館@P7kmjT/4`df[\xӘp(㿬q.3=GN&b&Coεf%4+%E7?MWS| laoVz!ŨǥvOLIH 6d-m"#0aJ seCs;X*.C(bEPѦw-2-T8Ȱh 9A%};.ύo;xoTect\0mzECgWz-]E_竊fſP3;D>ґAlCόHWf[6T?;σBwkOޠ9=a$t,xN#5耵5υ;OZ}i ,m0|Y4cReZI)TWXᇚ.KzB@l>tbJ`7m mﺰenH> x$nLc 6~cW81OVY;Z)!]bG 嶎Sڿ]8TyKfXIj̼:S̹`'b+jC^ZCn;ڋY;uzQkL+vp=ێ%`6Brw^)B@#'6W Laa@]y0ml$X` 1&*7vhk@_UcsZX{IuA=JPU܃+_5TV|yD xEZ Z_U/g 9PokϐCق,ϊ|(l/W#F\I ¢ZL KYyo<a[Y 2#'5=k"†#Y( 8(I1"p[ 3f.D5';o֛, 3bw8Ť>47vMFgEY,PoI8Z .F(#h*ZY|m˱_qE|x8$_ۚ"+BC"3 l0Ok W'67-IP:s o*gt lYFiCfxeW]6 Di d!WȔPU8IY%d[CKn5t O@QxP R^:Iw2}vS

2 zj{9R!hbɛ(>#TQ!>f\(sջjSnH' ">? {XޙB4ք-4m"mH ‡_}I{A<k #0R)_8[ZGxXp󔾍?SF瞥 nz hB a@?0Ӄֹ oGt C6}}(T]vh{2>K,(6њM0Tv˔$B u™oQNDõhH|Yp(7V r/;6xrFߥt3I[r%yYub7' W~;ro}-F/a[0)~a:+ )If<0 ^%Og\Ӵ.etLkn-ٸf܀1mh+eBaEmLظILCEۃi/u}so=8KܰFznz3R]SugXABwf=Gtڎ@N2%uR-X^CN`FבL@Ytl>-w3~q_ѓQnxJF<0$TDm$!&Z,kLv!b}&^1G0U{ 1e;l r\9PȠ^²%s>k#|D0}2nfryg9tc+y f&~hG~ݔkJaJf"6gTjX5i#H GT]9`@eCm. - v k%"% /5pǃ#=d7ӥ w вW'#|=mg殣FG0c@P`W* x/T툡$Btٓ]H.1E:\I.{jw<j_R hUA FμZ$wu$T`ٓ'uM<{^& S9 \ўѢA s;lLwZ|shjC,7/γ-4ܔ#w]ҬxQfߡ[T gu2Stg6&"`C;̧ ji$ VDbq͞tY.C{%sjvmX?ET}{QV~ ?h ߩ `o8S'`U0-]3Q>4t9ȭl]/ݻn}jT9XǀHsG<͂@X&!TG3[c(t(\%'Ϻn1 Phۋdy@pr6;/vg:WDJO.蝒L!R#ۆĽM3 ԄrN.'d`CJ# *'R$0Ҡ&dSC~BA8 oc 󎌶nB6%F,sK2ǃ'2ޭTy2 rmɚ) P=(.0 tHT;o\u^^ fsW)[y#)n~NE5ϬZ޹c4ѥiQtG;1 dLA^+ʗ'OAe#5#0a p .^+fb .LMAR& Lw\k0gw|RNWB]H6EM=m"EX5K+j  D l)4қ3Xt^!=F)xd[-{ǁ-81)H^p5,#*Yǁ|kPi7d͊8Αk/ÌӴ FBSgt{o bq=ͬ7Bj{!Ӂ'h}>D,KxS'H2f`^R`Ir`Ɂgתꛅh&O02--`6#6+2֎I;XޣvHZa`d- ϱU4<\ ٭-} q㳎풜q){8-tɶH(#.FV9@3aXk*ki3޳Bl&Ě]@XJJbeAbM23hw Oq3nZƇo+m*C 9JM--]* Kg.~-P`\DvLa݄ \Q3Jhks7+|7f9,IM]"Jnd/?R`)ťkfoy_a::#%v39z3PB5恸[8VNJtoۀ.]56rrRёrXXt3כ,;G(7K7Hp_aD~:Қxi4~?kJSb.s!YdDT/_3R+b;@ ?vhRq*x;(Ep4[1vP#]F<{@I04Cn"P[Ǎ<&ًJo@v3LNzAU8دQ$<`&NOg 'F*̍~C[nSCUF@~7-w=6'˔$ΐ⭅8 c`Y$qCdRчWr5X`%p ԋ&~q_zjƯ!534z}QSiLbG ݬF>\He.GPj5#ot'$Ȑu':okO+XKOaRt7,Php2lu#BaZGeկB׬6Lqqɍ2.W*QF,~@X8BPJK0D)f7uK"lyw{ d{s Oig)):= i*p/H]NbY,y#Ĕzɶ@Ah ~Xu %BRY7dށ ]U}컽Ê XV 8?QLQ.?ѱ迤}cUJ,4'|WʢA6|SSG_vjbUn9^4OaldʱplPuc<ȹNnЋ*a~ucEf _?  ˱T@~Q-n 66~.pp۽5>*A8%d{v& w@ɥeU[%1)O$J}J|ƄMl1,"g|Uj RO\`Ō(ذf0zKua΢o:xsɛ4!ss4{́$0{z}zRv=ljXc9;܊T?:9RV d: sYRLhUS)U̮(TOq[h߫Mth=wW9 ˛8/lK/荎k0NC+FPS5-yZQGE.{E57~#u j[%XXSp}EF{GML+`[& ЏI..$"WV7Wvp,S,E$)z0t  1>r-=’0;ߦ~ rD.nhE~:0U+>p@u?D((d.>A6q6v`N |8N!O15Svod F;{L+(rEc72Ù!\;sf5]rb7b>O.H[K6pul['衂pѐaahE. a6LPwz 0Qm0C˰5' `Ⱦn5X^G!&@ڋ&rC|QF:8F0襧#gї?=#$YYp/ۘx3ЪNN&LE;:ٍx45ZIbIwu-eWA8!Y== ^ڵS8&]a䫒LCON qT"Mh$٠80cy<EĶ "`~6ISl^~O@9*މBJQs&kOV%ٮ򫦚d^rHBe9rq+U-Lmm.ۃAa~ޮSW E'7sL97qsɱIO35WNr~!]]ҡ&oߪ?圐=lOKӈJa6gL;(svGTQ6$ ! ڡ!6Uj;.[BШ=fîdF{]!c7 V g(ky=%HV >%? rhM̾Fۍӕ`=M\4^ 9 >@7 MCf!<g)W8$^L ~=u>"rl @xGt O iJG`o%#bs^o A糜X񕪍q4.^ߐ1PԅVXz_\rW4Dl/Ea+,".tKY{ |@)lˇ44ETM%DE= h! d S31djYF_s^_x|* rʽ830kUHJ;wtGmV;Wbw#B1GCq"sWE3ex́/$q\C0$էy W,I/~SFpBs_F~?DB }9zVK 2X.rK(y"F#wE s,_Ee}s|XnTX.-^? ߥq(mui8kJzK/[^ēL|:QkChڀbiaD@`YKcꋺTm}js"6Ld'h? 5Y $o[neLoaN:N)ӕ)OyFIy N빘!JE!̷]$82 95P^03\:.|YC\(`JyIW i9EK\\h _( +aQ[r8y~SKO\-%D-bbtGVҼ|gb8vVDhQw67t\ Ϫm蔚9)!qE%>&YPowWH~bz_j%,X4r" %+>&d*}J K#B*y!M䊯 `tS " !$=;67PuJGh$)H:\-zvT?OkJaLg?_?·1ϓOl ã4 )x'#IL/٥vL ,.O@ |o&l9^(G쵧Te}LIO0ʩ7Yfk;9(\>m+h %=O9q/ *A46ZN[ 'cɀpN֪_pT6䶐?=ÌJwԇ q ^ WH;{>RYtBDfKNʅ>s#^3 5 q@˄R%7Yڠϸ~D8{%.-I{Ѵ@.,ӎW?୦ I%pβ!V1<-בּDS7y`u%HFuHL7!jٗǹ(Ë i4Etsѧ qBo&&z<錎gH`T. $3Y|;J㓖Y@eB8Ub`%[a 9@XP. oij;Vޞ;G5B~9 y(f tO_ ~z=t˃;jSio g"QR޳ ɪ(6`QәйӒ ܖ,,,t**+F@50)tb-WjZ,jU^N;CޯSW # k@?MDz;-?0GC ׮F~oեP@a(eꨰs|D̦&vE@J֗,Vf#0/bUi;X(!h6 l{OJLxR, d#N?6p%2L4m3h̞f>TtDzNրͬ#jTWX޲[ssEyBA y-!V7so_5Hj,npaмiTQZJU&ک|JoqTl -xJ;}{؍gda2KHß-rC=!^D2UVII}/yը3?ћVan  =Ȅ]K⊼Rq4[}>R<'6$fȒd.JX*1AZq7*Q]\Mc9^Az"m)n]98a(V@'-OSY_53ػk+")SmX(I-C!_s?W%ݒ]H1!.W.bPW*,)+H^Ae0ހ q;!A*XYkԁZ)h+Weh:SU*@6BJ93} .\`vYey*Cy 4}/#H45p [a]m2O3ռP5:[Z$tO`F"+27:HOɞ0Md:|:8 +R]yr"8᾿:&u+oj11]gɜEde9Yvr+P0sfGBsWp+$ryŲW`?CnrpH=KcL6u6Nr`?f 1,:V{ gpU8r*b׍x0ڼoܮ'(~;Rry"4NP HPI8}LV#r˂LăHuťF%5y"} Aj&F_~;3$وe锬mߛl'y~ttx,:z)H.dsՠ}Xox? U%1I@CmL#wº:,cPTG{ @߬eB&ԥc? ez\ euor˪.D"A*=۳_UmM Ywvd'>4<'6}QU*;p^ pe"Kj>{G2@;o5_J`eޟ jZȇ E5X}^*|݈L??R=;-T=jWGEtȢ~a?(pN$j_#A E]`;wLR# 3Cxa O- 4?% $>WN-ϙkSLrͣ [Q:;M\O5ٕ1jR}Dh[O_rąF/ZlmņZ}lZsHQ(,;5ll7nE>(jr>I?+WYOӆv[|u^?$Jt6Tqڱ !j@C7fqV ZJ@6+EG8W釥7 B.sx~;6nYG[JrF {1'(VV K۝ w&[Glu5S L9F^4_2݂0\u&kӲ V.m_.,F;UMb,u`ؾzqbMhMl,Hsۗ/)}[UUhz.]deTz?&ܗVV1lZ6U~Y!y7sc"!1O dZwH*i*E,8eYza"fE9M? D XGQOS~IQ ۱%o[-t{^ 4fƢ*#`3rLkyPe^VуzAϺ'tAqW$=-QĽB@JDq 3.cM4mcfUaIE$Fc-; FB<6lr82󯲫5Nhw}'A\]I-3#hrG5Y0M)@HI<ネar9$Q"@TѺMp"CC2B?b:yhM}[ߑM72| ,?v4?S1C گ0)%ļzvC\JRͼsѹm|=/*!B\xIu![G 2ݹ0~ }/fmBbvZ4}S>ue%.yVDu8)2\G6x+B(,C[.z-%Ԇ>j5eZ=u֨A;Sz1]y[{ 4η#̞NI9pPw$/>v=2'˜|HZ['ԯŸе]zomy$], ןMxt'%U#.fڳk$z v]4B\$; cYv 璨1+?]8v i9Rw80M>R)L|M!aQ[?7Z$oTbaHpF-0 ]Uzxxޭ14*>S!vSni &Vξ%d;+=A5#IZ]c Je,S;h̳\};^E}ŗ)6!|d8k|ta֜ZyE7=y 3-qmcPL~@L, H ]^NM˕9s}7 ,&ii_ qrs\jw y~卑AT{DwmW e6#V!RP!eTswwSA4[$+:oWjW'2 {>VTK9Ԙ]2+n=6.Fʍ {6sGʆ'?V>i"M$PgF h:1Q.vZH",.*Qwuzh<=7mP`3κ_DY}]|uF)MrLL6z 7ȴI#el-f8`Xe62wuniX"KR9ϬKj&1g*`L5a 83p?`ynTH5WY67Ӽ07yꑸ}Jw9ABJ ^?b1:Ԑ/hvNZ"*e2Wfz=V_LΉd|eIfX 'NJ4E]5C3hZÑSWی𫓬**0;G{׆H,u顅[Ia!(^!0UO;S#FYuahDrBdo}<<%PdEvaȓ_.q(zVvWn H`ky )fgf  ;`{cMD~~O,$n# ^u#CZ݉X P,*b&c9W-`gR4V]^'p=2I/:Ӏc6/Q-ZW~n@5eA98.:WӯyGl)Pl,b/Q,'H EMsu,Zb:M?-rxyM{2+2M0">vXo10cve7ǖ .X^44xAY-O3Ls> J Y-KrF &{tj?\\l?eR>#u_vFJ~ & ؞ҭP1hJknjoQ/RD6@qfISjki1V"QE{7 d/)2HvC@,S_c N䓼aVX@l"}ә*^yH%mϏٚptgAj\Q?`b}yb8;C *5ڗW sO9GQO&d[@\ yV^~׈dA GSZH xپ09pHtOePŗʹVUk٤%En߁$(ƤcUUèSq\bTwdͻ٠̛g5ħS񜮵n=;7^m&}y⣣#gYW*DU<4d*o2aɼ.@k@r?m㦆Ii78S#W&'!L8u9K0#5>aHɘ3UNxcz'+E+)o$SR"m/P;[*#,q]3I )gS,Ƽt-;6.@ztb[WW3LƮh"̌BDOa|ׯ4Kouu@JBPGݡ%7XRG7uԾOU]mx5~НsW2 I"L6(ٟϫlEtW{bǹB>f(f-(vB1..EVJX\ $(a6 E08_y #Q(DG64kJ5_í~u\Iȗ9r?i3 obd},|.pMԁhܧ#,ι[2wF5Gug1a¼WR.ϿAhƪ6옑ȴ@75ɪꋝ]$|;kr8qFSh!ǞdP{qQoZ62E)<"D]aя}tkN$PZm۶"#݄D\{>1^jkMC O;P&@H{0ABs:A|N٣j魣bwY 2],U@`v *P)7ky+j-ڽ7GBb#X{$ F60Oګ"^qh֫Nܲ܌6?W~I_۫Ww?4]QB5я~Ez\+۝K(s$s:2/Xp=ꥩȇN`dQ7I:9V[= DEoC͎)%<71:/Tٱi)G#^ykitqH%V+ 7ס@ߑehbb6s{{+j9@g_@e6)rzϲq <FN<$r-KjDvq.)iĐGl+wh\+qbRwӑ}1*B(^C-#`e00ED6NCCeA EY(<^(=Qp߈m 1x Gº?Ovܶ),4XWZ#0l|}!q{DUukROdr yiB g}ôV¾Y/^2B2؝+kl<,ZhDeoyY\qcj޺U^[詐 *kTUTLB8i##S{RŝGV[Xaa2ճ/g[n!m|r(ڽ\MK8iH&- =pozcc?8fzuI:xH\REh"FwSY_HOLH /Yq$Sr4EϨTʑ]I@B]!_GgHK ݫ\ ĵ!WH֘Ed!e@]oQG-Ash\TdE'߀.¡ Kcv}XrŤQeHp9oeW.!u61Aޭ# ?Ǩ- ~U *g|v<51;n5w >m]]8 %̧A8^-lt <};>):@k.pʠ-o F 3gb^_q Vk&M*6)D"2},.rltRUyVݣ"Jw;3o}N>Srq>ap.%cYۼ/DŽY) H )4 0ك0ܝ$-`A$slɂ)JړemtUfdڊ4TރʮLIK2 `LcK+^1 .V+4KXZY59δK-R-8DqJ*BC 9 J]BչuU9ˤ&B^1~/`vޠZ;] "5B:5/RIE]oۄ+u߼<&xe{>s?U ">x#Sr6ے E/QOWDx\3ٮw]#S-t Z&97%ʅ cuj۝;O 74V_L|%P[ =ҝz؋ؠ\E ё1SҒ H׏gђkOp6*uJIc89v(˶MnbU-oȰ@z*$+lm-mQ6vL ')zd|N$ŰX)BJf6$A2r)i1 n]MmĚvӤ}M6w!ߛc{\o4hAhg*-GwMB72eCW|+dIJ`#37~`[]f2a:C0zb<]S4weLT)1S戔jfg &G_$ҝ]WR$g=aq{M` (U /·~ yĦ\@[fP31H Uo0^ժ4)ͰuQr9l/տJ o=͞N[Մ~ix|Ïl*KtYV\o`&Y8EUhI?l \{ KBLKRR&MgLIF=lK("k]ZGzMqJ\:O >X^"l{w-e7nj|~nLDeqM23i {H;-}E*&ڢo DM-=ɗTP\cu^p~x2<>Z6"^au!H2_Ms8Wj2w&͵G fj=mz}4$'Fؔ϶alI$ `E'Ar-)!X<jA=޽KP ~fփ΄gDF3 <3k<ً[k i1&{U-;~l2 G8{i[HShuDjWKVd Y"r.J'sswfoyp-y1x"H(e5j1^!ü kz&Y51tRn=&fFky!Vw@lRƎ * HN]ۀdOUyK7n PnڍPˇ8$OQ4ɈҢ7cN4` V@gԐ?B: W\NOAGuaFØ fYW>'6IeێT=׬Rc5kseV]Qpy8 S+?e^Y[I[]Л {N:G RKwJ },e+֝[ ܧje8Ȍ!3i3&b*&F7 uʇԼ ش[xzng7(g>ҽ/cOA*!+@f%<5e=K1X;k g¹i} ]96NN/*'~ez,9 4h5CcȰg^!LQan^! oGGy xf=oDTۊ u{vO8˙G(Ti)OS!Y/]{*3kToQMa~{! MS燕}' T>kW!#o`]n/V 0B1HZh,a\+N7ɇ5a.6[ E$"^bNʁՌ $<%Q(Lh,J$ނjȂilf2)tqt$zI9Uh9iKۣR 枬)o┢z#8Q3.F]:"Q0b_~xl:,Eֺۺ83y &WxWkK44Jjw+.my+qIhM^%.`v}l_Gٜ/lwԌ?hp2Ĵ@AnK/%'}vx2YDL<0e;̉֓tfh>1TAeK s B(Z[(Y¾q!3)+]%[@, .MΦwa sqH/16VJR]–?نy^*.ѵ刈@L*ZZM :fAu"5!\W3RRa,@΂ԓ創3워9Mo:Ww,yip>3mn&4z6C?KhSt)_ 1&%-vp˫Ԁ+Y19|L6QFoi {=玈n ,c=DPB@*J?0,߷0;3U# 9a. p,J'n)]D[~Ӏ/#&寽lژR7u2bE>gn\D*HKޒԠ\v:`q$oԺ,Grpe*359ĂZI0a.s+m3!!ɸ,qӏF_SҞ UX_c ݜ#NW=Li`8XԿIecasLMQK>= g _2MT_α pK?|:bp* o O(q+w !VtOEΫ, MHu# dMK `r_ūQש~ w H犷2w8G9"_qI*e:q?vGPcqA9`CxNڬS"{Hw|'[,,R:0<^DpkiN,%WuL>[ B;7A$ /,ܒ5 ./tj".{ F(ک;J\>fkcܱmqA+nuH]"62YԸ*\B"tc^WYd;f$p7ɿTbG,0XTem79E/`*!!OeQ+ܓMOF`t3WKm+\ב6Lq Ra%^݃1zYo@ϕUAvqb"2!% DvUU9rY7{UTS4*KNWP9[T .,ʐ3y[ѵ!U; ,.l-'ۮR9m$\22kE: hm=Cr3D^AxEkӆa;-1j3)mSmhGNx^TzNAw$B <|eRY zk\Q@f’8pL?)NhqR8wŽNe7 zTLo)M /[M&͉I!+dCB>r'*hijNU:cߤi Ɯ‹2E2*e:|0#GoLApw1ȓ D+4`_2ZVk> 34#"ya%bʳ WR:႕d w՛ykp-^ \Z~< .Z=>dXRKhLij(4eU2?q"~ uW"u"<;WAjEuKX֜W(+Z1T^a`Hy]ŃQi@5=GHPRl'V$qx+oF~E?2v$CAؗ}^\j)yH$a]ܧPR}E-hΏwqHYWk5X:>a t%jDBGB~m.Ͳ>[צP  xu8+e4m2'Vx/O@2֣UPD|بMF-R~=LאJA Iada+^t_ZbR|LP߃`N)3~bSgXIeǷ6 LX_En Jn#\\ ߑvH9MǂT:D.&FGP7jK8Ab.|aAM;6R<.{h/|n%: @.gޖK& 6Q_w 았F:Z~D D} ^0E)LJz^-h"jD_,d+/k6B9eCCBCl% ߮Q2ņ2A?PTɍ7B@EFoO#Ls)jX/0\SCښpYX'+-}4~nu&nSocA^yN%&%x`4Db'h&\:aQi#F}AmgoZdQM 68& OngLlrx {=ej8g`9\s bb`oHPȈceٜ 7sGxs.knM~Pyՠ‘7;㵇sAn*>[PP*HvJ\8E!wn⤪K0Kfg 6 mw*v3u5NY>\USjx~LoOaE>U0(flMWgc؁:EoVj1"%bU"th 7q`q8nMwypB.]} t$k)['WFGګkqO΍$FZas.{|M:kp9,0U8)VTI[m,k۠_Jql)f Q KxEjld|5N$Z闐 L 1an@zWwK[_/x!}wڬV;Kjk:D1.Npݕv$ωrn\ucWtd\* *CLٌQrf-P 昃 8Z<M4LiULc)E+W|Fo οu](fwe :0;c.j 6n#,lghV\ G]xAuj.M]k6`^af9Kwu'Ue7"xʜ/n\UU*< 8$R(zªx`ﳣ"=pAJ^)%L%JXG?svѬD|fSE~B?M9[zb CA2.-(n9lg9U5Yt\c|8Cp@@?nV@9Z@`zOYH3Lgr4loКA)>任eqOC*4[mONqiZ4dFf _NlY7[zo7GdZ|dЦ'W;fMs9=H;9wd5TzBѣ~"u澤؛𧅏21%,@oFiJtA&inMȺAQZDڌݪ)^R@6.c;M% D,'V]h՚9ZE3qM؝Y7L"< WD %% |yhO}Vͺl<8HmEAWӒ k?kヽ/'(Xc™yy/eV㊢:??b~݋ڼxYnHldf/ۊuv,tEW]-*TlDB[2R?9j(:r7Wc"^E ,1BcBFݝ5jG&WWZ~gP`:otkXO75ˀhQEb4s~!V2ձA'uCͣd[*u9Ef+AѾlp?l:Ƿ}[AuxSS%W*D(SO &UQGC~$z}{c[;{J2%}n.RUڵx1/ǡD>]}`KwtX$fhL"Kݟ`/ģXx&@/g;ma1]g!ٖrOmbZuL-C=K%Nkq46ZWTL)ټ4/~fJ;c|>R%2 yC Oߖ5(4/Wndv3.џ}_1sL_߈6b{@NuABL W4ڮ`w(s[IZIuև~@U~)НGuVnoN:}Cu=cv$Rs ūV\ZsPUFėfTT:dܾ=}Vqq1!@}d}^"rHF`an*6G&h7VYt+d$-PXi\0(폜$Ƹ@ޜ7 p ^ c DZb$l1?Wj>Qg,9[4[(^o!B71(Zd{W FLrfSU? Y`ƕ=jآ\ _D&(qxU yOi2Xw:*?p\~ٮډ _vUQv] q`dU'nbj^B|{FcMyIt"  ꦵpn11q7 vPrvsxݻ_Y}gIܧ{˙D}b#+C|B!0\`6/%s1 m `gkRL;@ ap\" M*3=Rc}qX L?z <6-eA@<^*Kajr7p2';':]Uߎ^-'8YF.wxߠ$CAm{-B3kG|h0K7t{iއ^%RdDa{+pDMS"f 2Jr* =69SHZmMaOQ0N(UX'&vUC0sڕtmdwuŁSA R}CY{- Z},\ ;!2k>2l) ?o}u.(t>6U{8{5)KJl7X -ZʗC:ٽrμaO2q-(6cZa}ӑ@_J"qgq |xp!ueT%jtDW$e|wv;>r廈߿m>x<>"Z\@T̩ /[ޭQ"XP㐁6.gN0UP>$\iT4Y-@дrƹ6GdZLm:D0E;Sf8>`8ElqI}Ǧwj|bm^#Y+!D ipp0r3 cF>fçFm:ۆ>M0)0WXE .)Ds`0=ZWY> >̌чh$@=xρ_٠Ф^ҝFì(~eR΃EbYF9GĊ%rh< Z1tH_!MbvUF[6hGmsM׺80NP඙mPoCf`Zzީ1a<6AגãcOhH5Pɝk(A*,x@EH-K^􇗹t遍&:Mo.Z.ߊ.vìBص m 8A;lhV2D^G\u9) D1C{Gby|f?%r] ?)^UA W p;ƛ͕:E$!mJE76'N>Pf*~>T,K…btABz/2h\pʸ- urdE$pK)wW4 _fBs0(9sVӔbSNXmJx2QƥJGBJ= -O&)6ƩE2L qD_CAN LWH430etݭ0rT>"0適V N$L"*CѰ5GVrUejэ@􁡫zd!fm\e. K*:Fi2Z!y7K*dEFDԎ%`|e;f`NmQ]?TI;N[—t\2MFU~yiV(p5]Z aBooڿҘˏdi"JC0#!UIig|k2c ) AWJF^J-ȸ-vh7*'yDZ#OlfE0ܝ"PF;Qz-HqGXv"Kv`m`Ue mij@0 NyNJefWe]<)O7щjLW4yEhn'هs֣sq.H$)8Jy Xkar+"dx#{XqOtmZ]ydtx6-252Cv#A}kT/m P&}c:& 8ً]Sk Dy??w/x4%TJ~Xڈ }p ԎiF d%'Z׵y=cvR7.'MGsEԖx5s 4$ةb͛N9[: ڔe1 ؏a+G&ofr=џk3(/X`D97jHz/ ;MF(-D,QA;LD,V@ KِFLPe":DnT|D9Lqq DL36.Sɐ+m%tҙuHei{Q0T^2+;Zxpq/bsDo),k2ix4ZDfmL?lܶqrQ M hmv qX\}PN)\ )r t?θ_ێVUN%Obp}FR,u­ʮh,H-ԴjVM dԸeOƨ.ȗi2ۨyu^LG[AR2p5޵䔀 fw!E#1"K[P,v‹ n_JC_9((8HJ$$f !lsdm0/raoo¹F h⋲,AZ3 <6Tis2A,W,<®ęgx4Q5>b$kkZ:ȗ-2I o7RRHC FtFңk$ ]f ^TfMC)akk`a`YWCIiϻ<]e)o*,F m/ې'yvB+[U5[iq;CWQ = ~^.Vޘ<':tL`d`JRlz0_2|ΩQ|ҁ.R־ҺmR Aٯa(7OHӄA)wbh'==Mpj=XOV2EBʬY<_ D.$;rX x䩵 W%%\ azm_%aTNs5|NŁwKdWwӨ]>ݴMr0p"/<8&ӏDh3~ ALf< Q7]VVS~q20vbL#a|"[ D'iS7\V3%'p|(÷ GvX,nn]; Yfٲo>`ۑT- WyYy({|bLoڬ$hļ*de_&uIag` EѼ!iRku D:8Q̌fV$VDKB2hsЩ1Chjp'hvߦgaoo\[lX᳃6`*J%tSxƃ}FtI6Jb;זkj`С14 !#?O`N9_Ϻ KTdaVdE$aUԘvw#(Êap4B^CK#ϖR&k@-?" A*ojd׼esMRywʳ'm ^>f[^_8m)M81!t)"rI2evX^v<|p`7fōTЂK0!Mjr:ӄv.V ȅPUha`:GZb~MU1Lsb~e4Z99Ͼh&Y7|zJn} 7OV%v-7-klw(R#7}n3PQޫum M>/3i$>9 ɥ;LoUf8I\8u.f]ȤQ)ӈy-{u\0x6;i1ri"͒H'.NCZfy;H=,\s.3[Z,>ּ*2NLԞ%3Rު!d+ ]Uº/h:aoQBLGſzⰁ~bE$S|Z@#1  }ƇE>͔Hfei e@K14 zc,#^.&ު|Fְ7|8<35i M/ZID^I>;6%vc쭖7˧ڄ@3fbka1 šO|T*n[`Y:%Y~ށ~ 0"k_I.?HbD2 pC<4+ǹ4l!MjqN Pj7ۃi_TxY4f(6!ooz[SKqN[:ElMQSr˼(%$ʧǼ6"֮*a 4!3YF(u+5j4;z\uĺ-3+ǒMO1Wʱm'99Dohryg\6Co %I\G.-q 6xKa~=L1a޴Hzj9s4!]l,=ȹy[PgjH>yoSaRDo3)v8o}OrAL'T !/jmlbM&̬(G9Dj Oh-] y9fdj_Fgl8ɜmKGQcfp>="uai2^\G6^ZAe<HPU$IiW_)8Js9^3UQi(9n3é'1wN"+P]jس{~vk]-4ةnk0W)hX k[Z` 0WYzfAS/eQ0eɌ2}U(b*:p뢭;dy l&1;@:3(n燣況h쭽ݩN ֺs8$R v(Ss/Mұ-\sx>;|Co-tw8Q~LQT D^nC []p_Sv/Lɔ9¨d)>י\X*3ef?i-11=t X b`v8 XtX-,A(KZCGVܳxR6x<(gmX5p*a$_[@/ETo8V& &k4FmQtE̎ܿ:L@[A?gQ[B!(JL Y tHgl]GG.G7fU?_*XEg\1+, ݗ@C+DỔkxg?ɐbN q 4Iw/RűEYm%i̒Ezڤ$<+uY(|$_7'&Q[OVn 5gP<ك<8ܠ_ҜXoS s'w̓`׮H7BX VmOOX~ë?D5mw@{Kג>Mf:2F^.u߃:k ruBQ!Kt&H& ]uFznUv@N X " C0 ^$~$U*EI pT=㎹֚jCDqglJ6ՓB7F m!kMLX&E/Cȓ\sW0 kb7GC$z4ƙXO`WNZk7k&N{{5awuY%8CHHAvt>i/>j@, ~Apa ZdME~)3ǿ3YMW;=DoXRWXe6hyo2f&@T_R q}yjQlJ߇E,w#f^0x'6N?Z{Q\udΖO͗Vd`;[@S3/+F⒓v~;BSsuh_)x#CEOңo^SZ}jԷ"4Ӊ~g7@pk3CɮUl;zܸ<5vı$XFE._!UQe$r1=@sc\;ۮx L҂[ $bĢKes/`l [?&wj؏:T.Jz]_kcX]=ǧ?OcO/8er wF6Ug9q#a}]}ѯ{KEZb rR6eҳUDR. :& 4m^QxWv/f/Kg&l 6X-5z)NEOŬs.F2A-hݲ|fCZ\5^4K86w@"q[ꝫq:n^pBjxɶ)T.ڿGLbKt@wn~@qA؈?2O*yMq5bLB<\p=|UeR0Y΋r9\~3!hEHO6nX-6jK=@JV\Nm~.1,_rJy~f+mfd%ԭ> ] DMͱ-Ceȋԥ)7gƜ&(:D%{ߪĤNѺY\uTxMeyat*۲nP>d6f:JT*fъWQKAH!CжuPw%l!]Aިx<ᦀ.7 8XrS|>' 9T-p~̟J5[eTvG.6ij╟c/ꅭɜ!apah}؋}@@}v^&&|QJ^TVID86ܛ`|4*OJrNVTx}8IX. &\ ̜ƲxX{Bds.[:gdȘ\0?Ί;zvV;gEk}vYv\ iod.? @"6 {*ڵol:|MXdO#"a$xB 9"܉r{AoX 3{C@0C߄HvD%kCzs# Y3ᐟz\k׎ gX=PO%`FJHš;^] h-ZoE vXZ0MWuifZM2㟪sngL\+c7}QFbk"I˕QIhWM:JUdW`uBe5d .}XJ=V{QR%2S耛g*<%?Z`)畋3 r" m.R rv9 DN`/{4V1f=%y$/HsY jT,f+oʯͰq{#"E+M)ķKUj68~3Yv0U8x:_:BF .A,IX Y)DCLX'Q ̴[$T V̟ѹ53YOji ҟ%59`*\<䌾 Ǎ\uy#VbiF/lUf#q0dEy4LtPJ^lM[̆ZuLDd!+,ALêjh.^yYI߷~U)[ے꜉3̽tEMb?vCKY-'LOo 7Oσ-P#́!XB,b23RM5g+uD'RWHTǖ%RMMΖP(0\rp.jw*T'kZ|՞ pqTy&Zz%}O#~tj΁I(OB7B" bH'\m̒Rٜ ,j=muW;H ^yRqi#lR!d'Ce:/z453~*c:_ˆ_KA1hŸqFiq[~-\me¶,b}Mr -3r4 笊$>*dW4e1OjS|VDM+ W38xr8X2lɾRA=JSa7< k2J.B_ECÖ#&J l~N[ U~~'t[c9[S7[r/=#rXSgq}aωU6{Wvt=:EU#+߳Qgg-Nq ?Iy "̴0ʂ%IBCQ!}hqWO@aJ9Q)9xMM|Vˌ>LF 8/GʈHGs|biʱ*2˒PlZ {iFJtcP+?k)Mvo84\ <6$TEz[d X~kiPLhvBfBÀ$,fs.MBkp,g8|ZiP:KOa5? 6X4ݷC:_v4阶R$A>/_DRg槭EB&$yt0CAKl(5Ж!lnвdĉ_.|2@agbMW &Hb4!rlS]{g~+}½&v`zrSx -hRÒ3BƋZtlctgzzH#8T"_ /mȣ`= ty(ض>Rh"۴D (!. l#EmHA'@[${%L!S _T65 #Sy, TˇFE)4~j:'XT}enjp*|-_H#ux͋쎣Цþ*)%<:m6`1>Pxzd2_LF9b,F20BN% ,LArnɾn1:Vt0] fo!)D/grm^:-Sle*7OԃQ6\,t5iS 0&y&EKעe$3ZwMiZn~K8yH)@7+3*K9L_< wg#9 Ib6(' qݐ]U)ؑSN{56#讵`t^RKyj`w(z53^k@w M*3 Oڡ -P$ I?Ra;Sj{&)_a,'2j~} 012LӆP=G]o1#LRPQM>i؊Yӿ:'+"3٥.A"{{B.QaK-0Y)"\ ݤ"@:G_sahF6ot. oW ;>xS:ꮴfD.LR@ $RΉ |Xͮy d%J"BHY9E۳Mj(mA=.Ô`Pt,5 mE$;SuN;$eQQFRGٿYş(qE zpsn+LO@[FQ(N3*CUC\8@|#e[qV]]( ٮ2_֚m'^:#P-QF5% D8: [P#(4I\F,u.jfQ:۬<2?EuJ;{=R$ƘoS.>]lAaB+>+:Jo/dC+sjmF DoZb07 Բ22&#`N=ai\{^_ 8KA\ÛE|JHHl f !m5#ŢܪgeZD'ΉRLj k{o^ܣID$IM٠]X^[3,a*>ԬQ N8! mKFS<| ܙ]6 %=l)1.uD`AB,u -irЉ^ѿWhurd {S'6MQGwrX4 AFEeݣOyTqduMspCh2doݨ:IO ц;c4BLa`$P "k 2cARգR\벜Jj0NX5{9wM86  wMr4Ͱ .@%JB,%$@fΖ? fyY4Y}jSrb¤b 9(N-0?_Y ׇrqE (: 6m{])SrR Ӊh k( zD d;?Z?³.4{CA|H[5X"qVՋ1J.y g I97ΦpA%i9bn܉ջ ݗ+Kg`+"﫡 [AQ $8|z<&[<&/M栖ʗ&AgJ4de/5}ukк+ rfT1Q1,Gkϛؐh n+879kQn<]> .^ 7B#͌Dw,!vϘ쵚1IؔXD,ޚu7+ wvT" ?db!4&7nA?ES6X%rceh8 &Oezƣ쨂M AAHÄF>y(9֛g¥dSɓWU hbr\VV;0OW~DVgC[⸿3˼" 4p#e*8l|10&ʙ eK ·& j-fNhu A&rnKCschE\c sR+lWz:ap$?\ St.4`ɖ#lH6—ſmn+_C &њк\`'-˃sE˦mju%UGѾ9zD󧑮S;.C?S8DR8XJ3n_&pźjL_7? eGU.3' h_NӮJ?!ܤä?yDx(LJFY(kD+NI7 :qbYbva.vS X߭\hQŇ iPd#n&B4))Ck>]UY\RAISH-͠i6vEQZdfU9dAW+61ܡ8Dr:ql]hվo).wvm:&6Yz{@P/97\S$=X+HM$bC`eULÿ~VoE'u߽< E}.ʙuj"ЫY>de~T*)Nx֯p>hq|aJ`v#Ja\qP鹂 P ":k)CyTf' A셅Y>A[E},,Rی|>iS^iM($h@*ZrB$SRIlIvNͷT7' $*QZ[%mU1kHk3xH AS`kfl&O4V!ê G>lA46>uaO@(R}TWc)ޜC k"2gI:wXƔ>#j KL'(sF*n2@; Wbp=;]  /@QҀ!C䜏d g r3<@ާ~*M H!jPag ڨ )lR?2%.<ڐ 6YyOOlb+jt7,˭+`i41¡(ffpOtĠv~Uwʦ{t5&a)ϵij\GO+ %T%mEMv%ODFWUƷsg wzYJu{~"k`D'MVF$> 9)r;Qj6Q4ڸgfQFf3CJ?p~x."R7Ωo"\\m kBֱ6Ja?9$ZT=%OcOmZD"^P[pL?.9Ñ]](=NW2T+^͡ Rhf{>SMdž΍bwɿ[!ԧ9$Ի l3;^6. K{+*hE UCP铗fXvޚdxy}]vp*9|xh=/\ww:uc'wLŲ1+uE.HzV PDK4JއUO;Հwhg2ׯ?0l]o^UTrq)2$O5hrYP QoFL0)@>Iwt r;Ȁe7:/KLgTt6XJ>HA W8eKצ\N{1%)7eZL4³R8t_DBDO `lZRy`MY"`nJ"[v(ln9j{Uq\y.8@';>Ѥ3SES}/Hz΢@!}$?Fv*h_&r"Ξ+(GF9,)5J@'M]bgd5Ͱ\R pK%odqk!#s*E[o]1|!vAr<8O1(.l jLcI \ݠm֔5 ɢ69#8aDZt+.y[4ÖoS"XX>n׿"KҙajkKax40iu.oUD dev]pMQ}rRPpm $)M\tDD.TPV*?fnm48! + T t*"BUNjumtjB76Wt*,ӷg]2[(~UPdaBYpU*%Sp;^\S{ͳi8^{O$3ގ#L$vk-EVf&_qW)bg/qNNXmC7ȘafݳNAfk^0(Sſaq~؍!Dp[LTxD{։sgG}} ϗIm'Ms][OkK6@*x_hE*_5Kr5<gYN%S.TLd;PI"TݒBL!d 醂iwǫ~{cѱ{nJ+T\D]V0T bW(2uT&E[ =_cϞ"ѐ/;쾒]zJ 1xku&W.xۧ SdceDhǡvppZ>= tr87 x 2z<{:V Oi4ikvL>@ Vw(I^n#a m[v_ VRU#++ G@\c<9aw؀o2j:xQ }ly.!!+zRP}^!^ȎQ?Q}:0Iݢy8ᚔc[%OmNTlVdfޕ7Oڨ%lɷ,/(T1(H#ֱ~צYW1>wÌlsAб" [wDBt|J~I]oKk1Dd$%c5:vu%aAk1 XK/Mբ/Xc;6ɜK㈽ͳ$QyK v 2Z\1O3[!JJ3]!|gzlEtauƻÕ6AW5v d"S*-i$f/MX#%E粎e+2\Zt#JN)w\ugiz_)c2S)+Ӝ7Por3Y~m0vt>}F]jVMo5}TSnx*uc%.G''reyt o2X8CD >X%[1< y^,֥Ʌ ̥Իghm 4!hk2AXy99ĭq~|=A)厝E8ݱ>h }o#jq@~k/Jixh/pn 6_5}T%v)Qv䚳L0}BS@[#:T9'Hu/Er΀pPU>+J]!tbEOsScPΛg {Z>ju_aLϚ;mMN_^rע8گs [DY^Âíd"DYލIݜj $Dmc6nCQu|1@-zZ߫@ѯs@ ]kwӪ"JpdÅYŖQdx8bb3u}6:Qd6BgkRzyiWظq1܎f >jԺa>[/]&k{i[|2bi`8FɺևվxavDܽ19葦л[1vga8( {g=cBvVYɗߍAo+&|deo!TRWݖ4"* B?0,e$,~)u&3ͻ9ilak]bޤr v4KMyp+&p]k=`?r7ΗWKF>1k:W2 ^D*,iKrkC MKjޠTo5 vDU y* k/f-sk)HZ\# vΪ.x=D_ޗfts󎥫9ߵ6 IMUz0R؁\%9c w|Dμރ U;a^}}.[ (\Rv=2~h`나6Y̤3\װh]c,/Et-'i8Fs k0=E Q\S>y{d7'<Қ.u`Gj@= Rw|UW#FTPmqDnx:h;EP{ir/ /PVQ Q=vSmYiwrŎsY*umOrlQɯߓj74U/4M@Sj+zy`f_wy<(<ieqh7f9 +]M+,nmmKz+~IH>swk!GE1n;nODN#7j:$Y {vGnFDj'h#t5bs,CK! Y:mvA>p e;1H!rՖ8L_덒0';^fQNf"^ ,f f`_~G-׉?~?*fL,o&L\8&uWHï={9>KEz0Pz1Hz^3޽+'9>5!{Z :T6 cjjgȹ`b8*%F!htċb\4+R̫0܃ؿ|Ov@Ȅp5CdL-Edo=4̈́6_/^{X~N*`&_7:*|`y O hNϕy65؅[nXhHLQl^عR. 9XxiSUIwE otmu]}G%7utUKb'c629wԐ uˋ]C@=w\ b 0 )v|h9PjdwضQQ3[G20ykHHԸn:ض!wwy6Eӛ=efv9)EQ~ܣ=ُHngadߊRl{D=ix?ۯx%x -CyR7Yv5_1+LЋa@,"=z]V)*45:㼺r? 'MOu6EL>nrZ NEYcЉT.6uqBA\TWW%Gܒbߘ]zwJV|=W/Jqѳ0K\>  #HF]M;#tv/2+H%2iԇ׿QEZ= o/’jLD \tYYG)))DGe~nMҷ v8}g s2ɝwG,#@lS^mk;.џNh*qhO Qs"D7Gܳ6$EuiSs +$4K S唜|wFžeqsکlBtKXâOqeӰƩ\C8?W5Ts;+ho&xz(rݸZ\/2pyh,/}ӈѶ@dS)q|5m5F4O?j_Ik9@j'Ԑ"M4-L4rmpZJJW +ۗa.]# 7 V#"_v!)e]j 3(0$%R@ׅnf Y3DXR2N=ejeh4 "v"l*GAD&͞z\,k BqdjZ5$t4#bP4 ZNM]H .T%gĊQyS4*nWR.3Jg%~xc5_puJ(ܞjNU^c*CdxYC; K|.}>"U-a?o9%'"eQ(E/7g|i}zhm!?a{K|4^Q<8]P֍N̫)B_a[nRheWQž tCA PwP=b*~YMUSP`)ڃ{>ȏp4fufGME>^ˈ{ޟvZL*ԓb Ċ;Csch+>jIh~!yz#+gb7ØhAq/\}irW/5Aۥء9mHP*Y:BEu/_],Nm,r:n`j#[} OᏏE͔DWhTa zϹe:31t;̩/9}dbF[yb[@]8S&i jH-2%7?wG0h 6iKKbx!)ʬ)cu9G ZyToAלv}0bcWMhR0<٫>]"xϲ!ȼJ6n~.KSXO3- ݍ+8LiLH/aRS2b8HdX#0z#{[;g~pmCz VFAgR7[I RnPgJg1;⨵%Fpsg10&U8C Xۜ jSE,ZM SM 7ܤXMk.o[sz<h"~@{ ز*ag ~J\6]_=>l7PTCdUE߲[3k*yB`w:B%V/$[(a&<TjG@JD7Tf~)ى&(k2of1CW~XQ9{zZXKŹ[ s%vk6.DOH'1z֙yש|q݀IyVpoZr('u0|;=T 2sܽD*/|<Zn# uc+#|a565^H"T5o"1@XhPUk!?26 ‹HY%$j$Tӵ PL7\_cٟ_M}ֲq2D!k>(pxO7|Z. /F}Sɖ$fs6cyl^.:X[DH1&bXx(C`cc_\5iB̊0_0#* |En>&7I4bl[ /+v. ?޻50wS% zGsynr m>K͕ $yg.slS?w34l =tYWי~_.pJVJ^:4E|lrm>fT|p $r*_T~ tpag泱$F@ՋCZC>u3Ь>|^,L.Me9MƙJN(>Fn<`T;Wꦢ?Ē^^цƒ.\5iSaV/ntuMCrfk2CN!6C6].VW䯢Xo H!Mظ=KSI#~#P6=`٠n7K~# 5ieV~-BH !ӏW9S/2V9;a[j] uf𕵶Z(UqYq؏uq-ɛfA|Jl_ ?1dnJ1=شMrўpH-뺫n}_J?n3aE@UM;S+mm]m*kMfX3[` 5eB-gMBHBt}=[=o? l?jhK-uu7qI]k\1A8$3 pFBhz5ME,ogΒgRaf|Ll ['D:E5}Mؿm_+])[pnuWmP`rwtƲ̶1F^bڒ,t)oVYaXc%^w:Cr~D1qlʵڴ& M`[rGV%t YvBl:lm|FeѺYQ -Mgle$tphܙ~O=o cl)Y[5L;xRcxxp?'qnusMFx=~sjR0D0| 9ݶ=硃&L֍#s߮\J۪o8f;7-vPi.?/!2Kœ_c ;u& svwJQ\wiA6^`iK.QQ #d}R\@ڜa!AYr(cd%8Wphn%DPiabq ?@~;|3Lϯ&{AQA;_솵Sk;~q!:wq\ᘗ6p0Y_:c᧠ULգ5_B2<3\vpJ53ٰ,ܵ[ZImOoK:]፷1âKeh*i,; i<&_9r\'ogV'ϻTA€YYXj[׿:DȞ93#KX@R1i&3(4 hiXk9$~k ,$3;3L4DHMb]Qա`\3֦ _5ٟ$oAS/rO4Jʮ<6#$*`)ڂqLVկ+x60ӄEOf  VP&'Yh BeoR@[>>vIGޚ3h&vz,GI/\2֎ɱp aF群:>"6w:̛5lJH%2}# Ng^"zµq"n.J*$컯KFE+?g Ngjo 8Prq*ڈo'yRF0^h^*$9,Y^:@V!5t̓>9&[3_"-U6}\зzj[HImKfxmR\Oyǚ0Ō KcYވŻ^ys|+Y-op?TdA|pQG%|XIԺE.|3AX58p%P+̈́9yN;|GL r2#kxnd85f8*խWkHb"$B:?ˡ ]4"yЏڜ;WPWzYҘJ=e}>Ա . ^g#wXo&ߦ>8;G6p\ qoO3&iw^Qݘk PSVK`X^sΜ3H} zj~^ETQ;$X9u^u&m2SHjzog:a$Z'@Y+v M;L{Pn )Ҝu " "'6ړ.-39fh10sry^"ķa(5TZq҄}I+J/s=Oto}$ӡ?p#T [:7ʈw8꧆f`~kU]A0]$jhĵ7/.E()$B*F2XpÁxȈ'Z#kJ;ͧZEe}c%8X8+/p?%Pw0#ؾrt8;R7+eը·xkk~MC?ge!nB.SG!ɲH/ljq>ܮ}vRF_|_%њ)+G};+ p8՘lY'34x9^AX:s!;.:m$ c{% ,A&|TUKtcO6m4}"l*:+{6S⻇dXhC {b$%e-$-ԗCks'JEړUVXolGЗ-㣍ث,ꤼnq'3+U\540#Ay $y/U|56r'/~{ULnN(e T-LWG3:6/CmmS9Q㿎sEU]aX(9;"Sf۟ f:;OAS\~KaJ2tޥfamF_ T+O҃2) kMAm$-Z.,^ .zVcJSI= ^vj2Yx4 ~p=R/v"b{MljSFr:wc]HFs-&u^sYV.nT7Eԙ.vlF%A rZ S:me~a7w5cI(^d _KrnZ*xfJ [a9蛇RMuEmjdz3eMUiGcær&}n*)K0QBɃu/Wu]76SZ489i@ޢM4 N ()eE3-2 Xt;e}gj#jdߋS{S|tX5?cÈMnU!B4l#b֙zGϺ=j(VP(H ⋡"$\≠8/|]dK)e_:tebh̯PBlZ1wnN(:U!}c44КS*bu ?3ݓ}RT iɉ )+2)- qᴯ]ViuXSR>u'5:fE?zU_sol<Gd4 2Au^қ uhz}MDxUahC-.TU)$hݦL`=x| iO;`' e zg:q' Uq͉ L\/OyκPv$YlY&|k:b Iu//:<&y)QKj\v|gWM0 ݘ'F2fL*u rE)Bl~>SUR0y.( TU;+pbieT6b/SIj*ݫnC1),BqxIt)okceI+maR/s~mS3̶ 1πr `iPH@F;wH܆8FUpOYkfKM?T0 6_Z0Ӝ)iNYk)VM\ 8WǎN?^埾j(#*=Z5zlѩ$=;EQC؂@(,mQvɸJb8CR=0⒕II<e;KT-o"m+I;Wg/B"-?\= L*NFOJA{LDzXIZp}E3ǍEnO SdIVepƱ@] +\HԮ\hA|! 2!j[WjWmLAٸ-dnk|u߭9΁\՟FLLְ\y>QUtwjK-9 WgΟ8/ىjzlq%#Y Vv()!,1Tk0)w0槏AٻdSxs(W<odDZX ʻe̬/Ox}*2sDnCw<'u!8N~A ;MB\hnlWUM'z6X5HoBQ,Izx7QH֪$NӁ1r5`큿Jك{=SJ!ػBb]@tzw"$^'ŷydCI)z>!Tl [3"L[줪MyӂIs#X1y?sWӫ'nb(8O5rfBb=粩shezXS3Ή&_kQi+9@WK. >Se777QoKi}BX'nܳ+~O_;.|c94X+F=@OZ츧HۨkrcUBc;g#r>Hh3p"^k Vyb1 AtI]GGnxT4Y'/0$K8 ʛd$–[)<;഼'UCܥ<, lz)kH">Lw~^] 醢Y\z۱5L.wھE_c.Ny[aL?xLp}=Z:<%!J84JRjN%\0YӼkSiz6t7ڙ*2DyJ<lJj0,rUjFcY+_u!x6\,NN%%CG"R$K#^$ ;w㯥iM_׸4`L' 1 _7olC?!41<,z` kPW0d% ]pGs.'<"mYQ}ONt#b%V(^Eu!a"B~zۜ.E(C1odpIK=k Sld& CRJ z) (e]X= >NNX{'1 b Ux_[DMryDѫ:Ll~ ͋}^GQ'd= "_$ĸ&%~a? \:^[Mʬ^N5|Yx,mJҚի|o:(}xTXjm] ~e¨z.:<,n|ucr3%kI$үffSb[tc Y {.*0BL8ETd>cm̮.֙o  QKyo9S-)|跖<5&!FJu\&EV͗Hi'TYtP<HԽ0 u; Sa)UV)݅OA\J[L>I&֙6|UN^VqGB0kZKǸ|TyFyߪW2 v[Nв kn,UZ $3ZA󎬐f3WP :_Y*9tqֈtI2!3R}M]Pci' z.xoW1hH[OG{0\jaS0|t}Urv Sd% PqΫ'QRU(!AVȷ x_1" x%wOLyr,p} #UKD%t/C0/UmP&Fzq#BywX -`CSDHaz$ <-lf2=k'_^0i?{Sٗ{e?!?7 YOLHR $ej/V!XKYAe9IȁeU520~i8O螐}ؓ-?$ALatN\ q;ZޜCO#e]wpJߡ8"c9d:!}&~ ًkMNm(v^ *RЮcHslk7(L,z4^M@K(w m[eiET5)aF{|dgڗn9 @ڸӎ/Ǣ㦚"hb:usԍE r"$eζ@Ďk+~P|ݳa$=*oa8;>S[VXUqy=P  HsS-8Sfy r*dmTӇ{4,HboH{.tg2Mh+lN 땨j@ ω :R`{W3|mmR;ĉH}p|{\3 b/J'Q#vLrE>0 -td5'U1b*0d=3G -L5*X< p1z(>'%U7}UПW7AäElm2bC?F7PhmrEzƆ" oI#޼WiT F U㤨)cacYbi BzFsLk[y4 hV\-0dWkQ#̡$ o./^X_[fƪρW*_U\zV8ܧךU6R_Xd]:^k`R8R ,,)萅/YQ}T qz `*iȒQaƯd\*Ks3:_!R1mLz~0C0 L"q\}5t׷ֿ:xa11Q@ku|๤N_|JQ  {-^TZa-5c .K OsYmw&nX3ɴ1Qe4y(ꄂýUqYy0Yyaa6 ،xDL*if7(0:ЄB*1$ٰDː K J>Vcx"e.٭H1 +uJ֫q}SrY,M2U}s$:> vT9Kȡ%vL ^cl2ZI?E?xr_x7̲lԍi?B"ő$36_R!֣Hq.xQ9bbn7t<=U׾+Rc}F)+z픦8)cah}EJ<#FrBJ/T-dl˻q#ndAve, #v +VGM>=}\yj=zwQі1u%iV_#uB6I} AOAoqõq+ypF8 [E {GGУi\_j)47ɻ`Fۉ¯'""l] DPcKZDEM;uPvzwȎř"z)3UvΧ[(-/:ݵr瀙}b( HI"m15,Ծ>s EۛZ/8/Bm' 6Y၃͡qR:˶['asZ3 A 6"_0- xɟ6GJ?/چS3]&+oT+&AF̗VMlXu'!{0$XNSVbVJ'ִ؍2߆ĻG|_39UQ #*mۄu! E^Cz3Lk

Šϻ67(̀gDbmzG;1ы(rrE0wTnn8Oݜ1r{1^mC 4Q0Py!oa}' jl|NBz\ggt2#}V2uLͰ#'P[okN5bSOI\t̔D'.')4рBK) /¡iv|,mq$= ,FmloAH3W]^sQ,5iY$~XU_7ċ5,ss{?l&$H:|iIX3M|4)@B1(閷uoP̦Q͡IdzdaR0Cjs8j:\5̘Pt(cO6~/ fAej쉉V^y߾:Mwޣǐ%D-N L5A9W\|iHd^MuW%~XZlʝq%_Lm/mY,aŀ:C֏ST9f>v Ӱ!BbĦpH%uG&E-"yxOd5;i̶B{yynqNV'ZYȀz+ X0%)SeB*}Ial٧Yov+lggT}tD}-`DgUi;+Z,ќ·HC\[\t/,r`#su|@cm܁Rn`$iωNQ6ɻ_S+d Q|P"z :i r;5$`([3SY]QIմSVQ+,aNsw95PeIc^׷4<#AÎ!uf ~@a9g>(%|i #lA•,t5e/ʅ7ojm5X."/>^{,7=48 nU|"fcNd\shDe"BAeEYڜ ].jj$zf@@0608Xu[Y]1&[-բL=$_BE$z4?V(1IWc~~w׳j Ac%q d8`^l4j{r+6 jUtgL4ϝMʠQ}gj`;c&CdzߎgS^nhcH=xfz?D]vE`WʧEk22:p!-I0j 9p𓰻oː#A*F8{c0zzJl[Ȫ%R-kRC!0\O +RI*` &@{ Ugצ[\ZjIxkECx l߸rݪi6AX<O{okۓ VmIoTVd0D]6yV|`kBEjgǰ䶗L&[6F7mxDi^R$y6'NC$ʈ?,my> |zEz A4GDyh$C˜zp} Q 2>a$mtk]5ɗ,w*cE]fqs|^⣨#&e:F7ܐaD"f̔AE_$iG84򂉥µ~8x,* /9D6bB̘rоznAXt<sSJe딢n< 7|!~0 jclSqRۧF vww&񁆗f]b%iL[|ic=*!>[G>!6oW7mI=,qpTTY9 NX.MnLt\|[Rݬw|R,F8?zj@J\6^ھhJ%,EdF gU'4M!QiK <+U;Nׁ~1,IjxЧ\> ppكֵV8 70Q|0SM/hs$[WrfoP#$)n5{ۼsJ6i'3=F'+z+Xu֜?V}Ǿbflna9j贀a̎IxnUC z?ptWڠ (9V>EgRz۲, ?x:$N& $Z4z !nƆ(rC?7KpIPL"wpQnP<⟦u3*sch5l PbWs4C12/+uyT$9+j^A7f,* -'Gu8/XN k*ޔ NZWBbCn_$ٿ%t+9V$UOӬx4]g1D\ܪr2(<̉v}۹7XZWBRD:HRw ]^Ȥ7:ҹ1S+(V+E]wZt]2W( \8adR /X-< }vzS̬׫+Kfe^;c1ٽ/q`!ࠎv[]&[ %!Q-eD;,1EsַJ75G% 1mD/1]v с }3:;:"u;d]3MfVfI_+Q eqq"Z2a /sxN/Y+wZ5@>VL %II_R RwY.Q ұM2!@|Bԅ"lɯ!Efr/҆nNN 9u FyLcTnK1YTU [^!y͸[8$ʜfW*ĭ (tswsnwS/T[G_]lʹfHm' i`;5C;GAWn (LsvPAR`&~QB%/mMQ8g[.:ׯJhzao7j_p}P %]lO?٠ ?{<2}^ũ-s|* fԮcM}V[+8#9aF[/EIkeGԟ|AO2sªgebL'@ZE?@ #7c܈J˝;|rU?W HJ]rwU˿mWWۡ8G6cW@+Cc -/Q6z@ 5Ei%N"N6ش簥Z1bah^ lmWAp02vX`ɸ)Ka3.)Wm* XJG Atg&Z(Uпs G0FtE0R"F(q^W=v1O]r $ Wn=BFk9H>Wu3[€ߣZ2:| x[J1>x\rsRE#=q ]',3F(+.WkzP`&" \ pPY+LnKĻlnқ#ʞ;t,C,wp"|+ڱOuڗz >7J`?}FÑ!݈mP[;M4.ӑvlb,[*P+}-|+pXi nHkR'"aPnghc%oil ) 5H++u$)V aع^Io(<XA``K4xi`O_Cq=,ZN ZL}T]j of(Kf3Mb 7!ʦN_pfA׃IEbW!:Zr]B᛭ȯNiCIgH= -0TL2x{ؠ`s <8d[ V^T;K_m˴I}6TikT>}Wə*HQaz:4>-y]t'uQU1IC]$R{W&nY޴? mRncsV,agjs>_y<ESL'򷝣yU+ '՝Fv7?1@iҐIqF[IC} @NOZj_AX}!O(e|8Oss5SunS5.TȆI"nq0F) <^[K?I7%{ Gͷ =q1oJY,W0XXP f7GB [b,c&BiA^ԓRכ,pn\5kՇ2fBy4榁&\ڧP1!{9m+ ـZMl /qpbJSJC/jz gu}i퐝 Ӎ R$Kf'uۧzUzauێ)^孅;"ryέ?)J@ÛHWN$ɵ$Uqy*=LLU/*Gobj2 ԯ o"TK\Dmw9$8MQїdD"?悿Lkc?81vT:mN6nMǞ74H|烔܉ #(\iiXr)7 Њ(uGVxW9磎1%kecM.@srkj .nq *;g Ivt]I22D]oY;vk$؜CCzO08u^#(~zFUkL!>Vw2n:1}@B#=7t^EAR/]N.bp57LKO 8uR']@,tj'_;'aν!A |7z9bzF3Qxַ_ ϑRb"V]Np\Mb*v?vWjxi:iDߙ뽀j_Ⱥkha-T5Tdj1qM%zšU>{ =qtz[(%q" Ϥ3bZ]ҪIS)Xruu&LŊdE/ef+Z `3>&WnTFCnd 謩Kk+yڇo*5{:<|nrN,Xk礖uhq Aeվ$ef5Q#e jGGBܻa憅RwKLypk_W7e)PK\$(}'!Cv&U)fH'ӻm᳚[|ӽXцY ktxPM\VzMJ:dнoS]FH +kPn%IRM LHE!hנ.+vU3_h2ɐx[2,Q\v JMۃeHC@QA*zhh}1XÙqBz!D,ˡCqH6r^ȷ=S7MMChLT%6 6DO lV=Hy'sN'=I5+!`[>_6 `W kBC7fr zuMxE:Ct1 -*yOoCrO i ‹"{\zml o0 K_I ;|= xKj+v*+@2Pz:U((t`3t@s++ {JG[EL,nn0Չ޸R zhҬ>ZT' Ga"=!95dX|~}- E'RѦ|wouD'ڒe\zalU윩eN@}&FLiRP`@ #0V t,hD2hGy7z8束 B7/eRSa@K:[ȧŗ >by%;+OG(蓩?Rɋ{eZL# BQUlO8)˹6Cnz۶ 4 XiLt5i[fJ'#qp3Ji~p'%U93Yca9&ӡ -$8n8ڗQФ8h${ o Y4a5~"{Os~X@^Kx8 yYٵӇPh\KKwxzrȣH.պ桀 :m% 02xǵ?G}K9.cHXA{\xN( fMɶ/U-"M&[l0jP\!Lgc^z!b"︢1QU3=#iҢ:V EN&Yr նwwL,f`+w}Rr׷yYKocSJ+ˢ,  ~N5vH\vxBzwmG] aFs*ow"xO *pwc/\pȍH3Ϣ&<}㑣Fj$аkԴأfD+csn$rei`B. ZGm\8x]uy{cJe:ԍ}LTwJֆb[#Ġ){ky&nV `'C|w*w(e8;o{IP5Q7:m/_ pB/3ݕsp{^epI">DVބ@NjE}bN6pեUy&é @_{ PFvE0F+(8x8Hr jNyzXʱ0 A^7zaA/X#PFmx^dR5ËX e61.ݤs?)=dG(GAZ\ oOjWG#&K 8;r =`jZM})㧅6oxbZ?WSge}BM+٫<\eEoBw̷PJ' /w515BdN~1zv)׭!8_W)ѕ\y[1y[۪1)U AY{Iѕ5u@MP/6{V G>nCCP̓ 8 ,ݶ}Sx>RBZ(ʧԻ986m(x&'KIs|HsO"`YheS$91Ic%?# }0?:jyi6>6qrnlt*TG"GPeB44o6X>]4K9mNZrKXw;0(8yC;r`q:?h92#!/x׼VO K9v;!+HS(o^⤠a{ N#4B9#S96 pWOȪA.4^+Q>"}2]I6Nq `f_&W a x{Tgk#G43[4S ^K6,_7OS3g.ͳ_{ȼsa^{*xJ-_4{ AC_:*Ü^ \/7]ա.sڤ?J,2W @Ǣb[nul6V?B,d3\q/G 5>#TXwZ?xy;$,Ѓ`0C_ƐZ9ysLhz{o‰KVyu]{{NF)Ad\P[!V; 1cF[KÿP.fe\5>$~;Tb;5փ8 aO)ɟtpߘ-T:E'`d *DU`-eƭN} D՟8~lsoQ9mpE9_ k_k}Wcu]zVj^`V++gry!E!~,^~&'%;er Fw-@Ѐz/Zbd ǝwwZVv93u(ˤSp{04ąY@Sـ=8)B'65u|E;޶Slv?kaOч|FȜ 69N8Z\^ |l3ڠE>#RBoC@ 9K%ke>5 TuMVyҝRUa1$Ź>@.ߊDsึu7;$6@4ջbPŗ[1I=8k;(+;dQ.1o`sjqsCHRB?6BeCHJGK޲J[RZ):TvU%8}|a:m2D[I}'f dynB%ENpC~f6=&aW5fDO 1FETq(Lc°DQ=?(܆mH9;S!:* '?r]igBDR02PbV||ӱe+~e@_}!ͳubsNFHh y(FM失BmԵaT@7QY05kcFkN봃 H3.&Mxb:ڧvPа piZI~DyډC CM)U]tY?Is[X܈25=U؅uoaD/$'bv<-YypRI+ v<VV+g/s)Z$?J}= Z & JbK^e)WET\d7 8릖 90C#@Տ5e;lGrZљx.69vI еdVyC͏7>$h@·.>o%(#5CVQ@rƌ*PO XvAfDclK\ub3e Uvܴz-Vsz\aud`52Be+ r)g˘-_O LL `,ƥ;s;-X2,&Q g&)0W;`"]~$2]pmQ3ЎЀ4M>nqF cov!脪p+ uْ 9j;3@Dn$eAToU=՟@V I(lXAbMey<w!zRr2qSPxEmNJ3ZYd%@bhcyi@Cc1Oj'v0,ڱ(9.r@B2VZ*Oox0qqadUВ(- 66(EKMgl7?3OVIV/jn~ v/sfFU t7bdFdhڮ(\<=;&eS*$g|b >ZP6FGodV&r#h&BkFV@Qܘ&Uk%PN<tfzrVMH ICq>lk"$:JRND25εk6h']ۺtJ}u"ãMI II,~DxFЕz; Գl+G_v_N 9/MC & 6经4'wtp2M>Z59kI\=udS./dJ98fǂ9{{(̄)fwYCG+Qm;3Ն\= + yO ?Ns4TC*#Rb2ev0|߈kdq eH#.=Kh4*n&eF qdَ|ΐ"d߃pvΰZ7PXV1Hi̝CAхJYpr߷`+@Q#N]Ԋc%b`ƉʖbS@Ň ':m ;D_䧋]1gکpi]SWGiq)RkdYDSBj+pz\/kDU&d30kɬ/_1q |S1[h^6=M}N> >yp *-϶X˿:ƥ߲TQ=솭V(bV)$h&&tZ0ԢXm@{v+ 7%E ,'z}l 1J$EWnj 5ː@60$Q$r;0lVsH)z`g8y#73LEQ!k~ VJ$R\(Yzq&QˆDLJZ^2!^L餧9-Uz]u 1mޜ8 ^piyZ4]tgbvp([]r2^-k$e%{Dzz[̂6r wtDD_Hqg06^|'a&P 3iUZr!]`!*X]!O<\)Rx~}jZPkWYȗӄPLL*g}G pp뮁#}:/%-n[#. SdGdB6 z%r3O0OV”h@UOչztJj,=P 3r~OIDByQl~SIM.mۛQƝE`?e ),q*lFO0jj+9t-$unX p?YMA7VGk_XRf }y|p!T:=ws]Xx{֎ 54j` θ/rj$?.L0iSyڙ +:* S=,񤏌T02ӽ'jkL}ƶr5.*;7;l ل:C"]4/  1i@~yf m̰*oDB9leKC7V2K E%9u=Aix/Ѿp7}!(H- t!V3`{8ߘĀo$@4΅69!TXh|?#];Ny֎j>!4hpŘ|cSbsܧމ¬J𭨢_qP :vɝ#I[ JB*;/Ժ:+ ruٿO)4я/c-8QɦebN$pӲDn[5.?[Hm:n!Ms9QbӢ]ܤJqk6j+_\z#u#=7EI`1<{fXP] 'h+8z\;PMݬxKL7ǜV_Qᜊ D pk)(s(cy3ڷ)+%"{9ߖ0V1$%kI!%FhN_t7#EƨSC=?rpWbň!d5*Rĵne~Uߥs[`20ҧ?)HŸ[_-v)[i11w*H󴕰즮^Jo$*]{[xq5DQ+!;?g[3U%'6q 7oU*?v"O'^].Wz |?tޮLt]$XK쟻+ȚAptjj꟡[v$,.9B6L*J5mk|߀/=/~"l`=kWA%1F1^c;|Dwz\*Ʀ!>5,اHOVbZ9z%R_Kf)o25l8#ًzҁLqFVpС,"]eQ 퇑H)maz4 ]Yqfh*`Ic!˅ H^ u tvԓf| }K ΆJl!݂_ OcTyc`Wyc2? q֙};S9@}Kt zPGPmC*"KAuRkSHFe,6U訟᪸}=@edq[C<`&*G57?h oYiԅ%ĀwDxJ j9{?mM#ȣ  Fb\K.:R.]Y%ƇX&U]0>bIpĖWð+uy#tN~R^ρ@@ֲz{[n4~yfGxlY}Z&Pf@1IxϖaCmKC~~tμ 3_{!;lT-$ _JZ^{mz#!G1~ @{dl4)8RN"o'-k{giX6Q >IQiHzXÒv^@7:68Ȱ5J>&d@|Tl3\-$t{n5 l\?%nΙ#'Ѱ 2 <ӌ7@\?:8Yt&l?q?|l S4+\ p D0axvAT3+-Sʱ@[W=B[V^0bR0Iej#3 W\: *`>di8$[[9.oiW/ /dg-Dۋ`ŚMzdzEvu4~M7"^TE??$yQV(9htNϋ<+|ZsQ=K3ZHP&8^~ْU^ aD=̀LEyPr{%bVDhg=/0|!D]N,0rZ@jB]-RN"ȃve(L.0wHw'ELK=Y1-`¯D#z%aԤY˜qo!XKT6=@h}Ymѫ<۵n;l̷o$( mɛ׃4o00 >2F *wf]\^pigv1nP& )2vAf"Kb#i.dzL m;[AOh`۫c}䡭"OcчCY :+C{!Yp25<;탯$*0Q0:їm}'u;ۉ'jzDpQgޣ̵I;*g91S`DK"TKiDl ǟ ,sm^^4ћh4̀ڛ\ΆdߵL3=LV:A*‹y̥ eLQUS¼ FUčVu v 3s[ǡ{3)Cx~(<4%U4 x~Amp m!e,6]}~1^x~T$*VX5j ޻:&swB3r⫅80ܙe騥2OXªF6(r}M}z]IoДE᱘vuzGj=]v4 UB fA?򊣕P*0@EyVyaM;&ɀ31ݏ,zcJ_ ɩԾ״_.V2Hhn]kKqJF,P2*ٌT` )v|԰W"rՖRM&y,]2Q Mi5-#ݮUa2x Ť7oX;7v_$>7D thDR붓l됓ۡ pos_`.EDr%&C[5!6r`,ס%KG!m]Ir< qLX0Ʊ7a&0k[ʠCY}!$4_)U~yҺ߬Kɢ1棢[ckn/;ƷjIB1#Sh]JG3U7QeѽObS0F0a`q ̑o7$˅5ګ#FL $"/>[M]HM:ZHr$e9\䐷cPzuaJOB5D]ƪqsO!>ߏHV+Se˹>|TR9wcMZĆ$7T/ Y`|H8tURY%D73~]/8` 979Ay?^)& qOeL"wD3e`%2 x!)x;&p{bHii h-?}2!#SBMMm%ic(qx !)w>h.x %?Yx&KN,tbKhؠثv@DP#GarN3Rp;f`oAk#t]8jd>b'h)_lHofgțJҷ BAJ!%FЅ*Ebhٗ{KVOC77 PtJ@JfV8k 5C?}c&e22gF(bIB>/|Dwb9T\js]4WNPΎkҔI &c!|٪̋`Dv (9 ;CqKsǐz YNg_K?@ۙtQobf.4>bu/wqHȓ^e=c:`/' #K<<&o;$Nj*l֝.m,9%V'Tf-ww*on~qjow{)ڮaUXΒ Q ۏžDXﻆ w1-ŚZ?@ڪ!x3ky;#:RC3ghlm%8a'st%ϙnnZikBfyoI3kSHYğ#mnd,^'at~uerUÉf:vWdc #_Uv8RZ~_W1:yzvC$4Hy6TaE +Kr! '4dz!> m=Qw*޸^ІBxbP&iCbJ!|E',D4BS ׼<#9sQ))NJκnD_~?*Hi/}4 jY#dU%gܮ1VDrv̺odte뭞F8)Ilj2"^ӷ-B𸝪j>BАx}+u>{>t'O#+%8snjIJ$+,5.`pnrlR\cWAͿCp}g#Qzt[\7dJFdP\W+4y8R~rQ4xEPGZd&~D;[#ZLT%ݚ MX/T&&a!Izi߇O2HJ&$}TxNLn.w`X{*l nq6BvAG!BY pnCwDz"5G}_GSPQآ'ݥm#4wœ~y)RH)tN:!)X ';TEe)VLzl0b@BCԊ4fw-4Sj|0ux+;0މ@σbUӀp)PfY]i7K>OYLh}~RI1A~Hd9XS&fPq 缉AG&6n$q$ +WOO܌*mO~4+u7U'K #VՊq[Z]<ACTє`⽁Cqvtq*::Bl`XCX^Âz, _K--`s2.UoMXcP q j} JMDzU=͒wá!U38X 4rE;Z?Nh〬8+"E6a4I LŽ}iVBF٦?Jjʓ*@I(T-H̽z0 h};Z,k\v1+ n/Q',`2Yu.(D/Iq.tğ,M"ahéw`#0'$Q|_f^!GZDk} ѵ& {`'ذDUPaFJJm, X-f:oK *%ͲxlW :W)կ3.Ӓ |CKҠ \ATװq'rhOW׏|w'K ?2 lSpK^uE뾊ڀ^?Jn^VW놣d9*_s=wթ͇uN?&ӆU*~zLLB,/ i^=o 3H.׎ɵE!I|Ƅ4%v "0=z\H+wE= O:/oesǵx/L['~[&7-u|NʽdA :_-vG=S.F3)òbD16_Q?lp"3)_Ԝ*in!8ZfO_&n}3V讲p䋿6) o=LqQQ̨̣e_6:;y*I-lv*i$KTkH *8nnf&ϳaG 6d"D}x~zj\2,y&D%"zލuۂq?(,2#StjûP_ Gcf,Ǵ*c`=۫.˚uL%G9_1_ᩲIZrOb5tȡ,h#r_CNՙeEUłxR3Pл:}dǚɩr+ M|,.̐`/4;+h ,gq妽ϝىcIĞxՌ[Felu_taqT !1ǣmٲy=ZKdQ~! htA4!(ce+UlmVew͐x2 ]Sp&!x:U2F {ba'G k M tRH#JKӂW}/ek Uo$18|AA3B EBy@;c,hux!;X|Tv%n~~*PE榬t&0bm{n4JΉ [ w&H:NׯjduHզPo1iUSZUWjr iX9tY`.ٱT= Ô JSutsIBJ[E{ٰmKP3s` 9uvB NXU68O{S Zx᪪1:eyI̙T2د64@>ڟ= wOZ1:Y.Ny qZ37 GPcC jvc5}m[PRu|?#6Iz=16Ku48;)Lh%aZ*oDd.ou~Q ]>-K;~JF*W<4B3+ 3}K(@v3akD_Ot^[eWsa4yz_iQ}׎! T]I _=< f% A)'@;˜9U6wd%tKY'.RG)G'Rs@,xt8yPG 16bh&#4/?Nx3%jUfƫg\Rzce~r:͛Q{%/7:`OGrNNC# 3h徽P;AlG=63~K o W=?Qk>VuKf6nُ;rbBφmiw5, _|P%IUaqj%@!*Ȥ+.!4KS(؜Xo%}͠Z !HTЉzr'cQĉ@;iom+\e}';fPQgrdd2<"M+Hݠn+z?/֡ćܰJZ6>-_O8I3?6]\1^cKxL=RN/cHV;l{D8&1v5(JQO1-܎L qT7hx!4ᦿ7AGx]*g6/n9Kz BP]{ {ڏrchހ)ÈʌMǕQƦY+S&[6/^"D|:% fѥ(9q98]s6*@"C˪CF @ۄaa.Y6-N>El&`,oْR֤d=nWzg0q X*IXSgzϊQD&Y-I2 ^ʸW\̀-Y2sqp}/`+#S z.pJe/Nl'!Q w_^LExN5?gPkRk _IYXIt!P%ݔ>E-`ۓ} -1\X֟3%JzڼԵ-B:ml׊RG V.U#DY׌w0 W(Eѵ3z,4[װT `0XY>oAU9.2;4L=($fSNHZvqQuVkXdNi_D:c=SPaBۍ Z^D*э(+8%i^!)J7VG,Cs4gD8}38땡t=vƷ<&|LZ;ja4M "'~B[?TGUWK:IVq /+8wycV -Ƙi2au Eԭ#pP jZ#T#YxZͷv*&o^5N }'F O7b|GreI=!rދ*Spݚ3:րY>M99@L)3lNF!2] n)n)YxsP+{o+R%b   #coNJ9[ŠdV,dzZ`c>v7-mhbj ?$WOLLwD)9 OXe۾ds 'K0sdG0, L{)Ї_uENM獌7B3wY!?_1wbFKz xmfI(&7o@jܮEyŃj.a섢FZϯ^m<؋R&XHoOdLbjYBVQƩDO^:sI§'Lk4Wf/Fmg,v>4*WBX)z|yb #M-PVt0m0 ZŽﺍbV榘 ]+ KO FxzxL=HOD_V'$J2-b ˣl0'ryӘŁ+aeŎfUĪ| x>Xu|M%OUKH! )$ªeQE'h@} CL[_ClNEX=3u+B$#w_8*' ]H"v~.2q81rmaP"DO_j`Ƹ [?X<2V+WK^2&p&kes ;FG i0dZl97ِͫ.eC,[xHdϯ!ǣ=kIeyA=ptoWL a%c08%ėյ4RWN73}mo*ҙ[-(Ϩ#Z/Ȁp||˃ T~4( "G2A)3T>L3J#[ mfeKq E(}Ϳ@2FVA~zcr8N15a2V#i6%ƋC|Fܐ1TDDipnQe5&; %)1ݨgrs0,Ih%<]Z \LqgsyF Gz  cNE]"|Sy"⍥P'~?FPMj$15:7} w r]O1h25ka%-g &h˱MݟG {l,3yNL"X-lMeTGrpsWVAnMfEW̓e5E6q7ӏhW,)͛/pʩ| \,ofIS]Ka"ybPGW^]ܳ`3u RX5X PpY>f}?3&/<\W\L!nF`1xY571-+*& pp4%ߍmk9U"rRLt߆o_S'mk&Uw:B!_3?' !{ǠeCRuK,Cp~zJɿ .8b2[|7]"oC$SN3*PQPgWA/lRE픦fOLfwϮ9v(*MFb n>nb(.羳;J7EWP5:A7>T{ qzQ!@Ť;C¬\YXݐ20P˲Z/~ >|rşPTRgfr-ײij[h~iow+O(ov}^ᒅ4ضpޝt/A٨Z=32U}GhOW*VLw=-w\4"cI3!~f"^ Ra%qX}PY:xLl&6i¦]~n;_ >4^Rx˕C 0@< Z2N4\$Yɪ$&+7qV/ekg_G>[a t+x@%0+1̉NiIchM}n&ױ7% ?7;h!EYO#~!yy[h2(гZ_n1MibegNV[Cj,Y[8"<,gj(?y |y .ܚ ޖ8|HG5BAcu)ǒri //>/L'iNFoCj4+m<8t RD|Vy%20 NhrZ~M)}2Ie~ xpE]ծ>(U*fY?pnwOxM j3(KCo@sJ7@_+k'F Mr? veAԘGk\hp[.h l'Yt"A!8y=DM o')(^G[@,D8\"3-fE=Ż SfKhzP<}I" hбxOz޺LJ N)jtQu?(U;e>s;k+H=+ m B\%9 2iKQ7-w![8]F6Ia(laek[}**Œ{fU D`LfT)E-od5VNߢ|moClУ*s%OBI[P?̅-.jm!:[/_1C|"OGFgTNI⏃DYGx:ad#ঙYRmG\ /We̶* ۼs57& |V{fcX8Aa0.XgrV:'MsoɦQlȡi&5uoY WA`F7O;#јJR,;Ž(T,\ f1o9E}{HݳG_["8{MOI75mR0;<0UzQ$NNB^RpZ#0&~XHp_Sa9yM8^2&I8֘׊]\"-DS=ԆVYj4s^oFX73c(b~@/Pbg\YPmŽܟ[@jxU>\`#J:(MExiF:RLx -BpEݕTWe,z6)V՘c]3+7 Sa%5@[Oҧw'y3]q**$X}ybAپiuC 72sy*&£AtyO#a5 hfKz ӏ7(VЦR&3BAb ^^a T/zAF5Iu ^6a:/i4zqljkjaO7UID)V>e&Mw=羆W:44^XHslH/KRi`UmH-@>믿!q:N$[n=C i2hՀġ7d+;E ̩^雽O-譃xVdKf ;B; iF` b-\vҺ "xTlT rx, 22q`IC YbjA^YoX'? +1jE4 &G5$Sg*CbeFB~8"Xtofor@[Kcf::+ L`l \8hˆL/D'({ղFsy_Luqށ 2:H؈@&͓J:$t+$3n↑\1-;OXR8 OFevP",Fʫ #DOkku}:ug* ;1R2!?1UFYӫJ,Jb `\MK?Tп+i\X?"$_b xmLC!tgDRb( c@c浍>2\ z/Iή)GnB"4v5$\ bdWX Sx FV !E)m*쏻dC߈J$Lᜭ~@jEfRg [A L95JU]cJڎ҆(;̮By) z/֐b K%WH'hֽ~sM֖JsYK (`mTGEIKp3Hr wֆF.\BVh&evy);(`1q]~if9/.vGpטTSI63#SIk#TnAuKe.`(h> ̺S%韞a[JUB҄B&Q}2_x=V͎9jn''tNе箱dpFv@ W*CoHvP X_9}jyH{Ȝx9Fwʰ-Kr-+ bL^BʧmMuuVk_fd,݀8W!mFDgɿgxaܴ9 Rzh4/{nu'*,^9@xS>@`tZq@:uckN{ $:JDcN)GG5M9@ޅiu:}qߴwKY,iS>maN7}$TXƗ='F9V!f^^+ {}v .TV N~K멙\7n~EsLm#}2P$]*>lQsh*=i&;T೫U\ )HRV{YU%41i>9}Ūq\Lb䷀u܍Q k`iPz[soȰ̐t'Z ɪ7".V(Q:Usk׉(,Y}TH\{!/9.7GL2IVh?)GQg}/LX&rW`Ɏף<( (}>"8@ VcN+ihcß(Wkl44$ tɡ*%@[RLk/U o9WoqvC 7)֥MO -)1a0CcbK]?t x>K-a DԙCu!kUxFǖIWF*uL suFS}+PEoÂ{˹bC?—7[Gidƣs2nr7xfsمL/&924ʚB *;֏ͷ PMwuE JTXHsE MHau.ǭ8T ب`=˭5]Qƾ=Gc enbvҲ˻OՆ] t ̛jIYUշ1jW== juW'5m|Q>pTwž YÄiqIkDYzfv&EQ(rk/I&jtw,JXx?#IO84l+&cQsLG=bZd|% ^< xL4we4<+F25d܊3uk2$Fj'pp2%Q"9KJ+ T+ѠMNm5J})!VeuKЭڭO`$< OVz8Pe:U-c*bX_cҞu2hԅlS?&J)YRbԅa"3-V fR PY!;mZ"UFH5>B| (`LQwC):e[7|3h1f,Å:mzkg2kyh,mSi ۽ e~#ȩ:G>8@e{ctu=G@MBZp8M6ua +޼@ׁ<vd$%lցu/)2{~id`C:%y-3'Gf 7Aau,9gj>qȫ> z?#a>@wB6&b-r݇tT7ykQÙu9k(%[gn.,YfDzzyL]|x4cb y0s^#6jrHMTJ$ve{q?(w -؃sfl@c}˧SniKAORmݡJ6mv`c>u5sUP!؍t;b`2쳪B)%BڥCR/Bdnc#"E4LGj+'Vm<͜#C֋diZ>'Te+t"ُ;V܈.3'ۓ g,-N q'{{ruY]aZ#SjFiqCF XY%1]K3C7@t!sFSJ) (zm"CPu]D$"0,rq`ZO\%qkh˫b?ң}EPujkr.6cغ],.Ϣp7j0.,6v!,4c;6k#JBS FRڵu%^_UG3cN'ãU<.'t'X/L= $y+u{ݧ'{, G] T[,;G|̎\͊ r,0>:cO AZ^qs';r1~ oŴ=^Z>|ƆcROkb0_u?Ska7q`[[\^(?.hL0M]Ho' 闻UZRam4$;!m*|.X(ڮ;5)3"PvHK0Ȃ|HU/39z3%UNMm]E|ѵjldcCEC<(|ߙMi_\CxG &S=piQ2ΉU+Wq$cߎʳӗ ~iA$im,iOƂe(6R[8^G,~F@,Y3ו/*;Ļ qFSS69>+ j odK7!#H(=2[1ɃM߷ ZSPWpI}/th*NC n^AT Yu nI"_e2[4#hhǫ:j*xvhxT +#,8=>#ZβѤ5v[՞v"_(pjH-a/5V 'r>s?XҴ͂tݶ4_6vP.x]z,n7788>ήB oc']e =Xze&  @vg/vSei8v@2Wb\Cſ׆N\ٖ H\W2 Jgՙ<;‡\Q'>y*"E RF39;܆޷t-lءI8QP`QJԱt!uJ8S.J>c6x|Af$1uD@2YV$"%huJD @T:Ӝ p3^ 箊M>S-:ef#%.#EpayNX*Uau7ۢe^ [Y+cHGT@MV閲@VC@RCR4Y6nTtğ< )콚pm2JUMotUx i/m b${{z6FZ2RA4xέVc9;@nkZ"n6ÆxƤc {%RP7~ u8qs|y2Df5X2,_oI؛~k||1ҥ4TU?n#V H)=I jo w[ eɰF]qaZ*BH4VEuu͓Mh.څwrwW)yVnBЛXP!p-Vvj  '%:H `jIsIg&0iA, C!*R7&ko DmI~6'v3sI,li_3$!I 3g^uU ZugMfm@9פBN@y|8%SNfOH"D%f2cčS5J?!мGFN0ȆYqǃqk\s3l3'J(2,R6gm#텇~ ]˸,R2^#tŌx<橂>B\H?JmxQv X[X6bwOW.@5CP{ QڒMW^TTp82Ta}bf!RC]8TQBcS +- =Bi ‹ kџ:JI0"4f•u2Ettm?fIF7nC{7J,rü@XT ߝJ7n*?2yՀmW HG0!ۭm8+~)? y-\exujpkR-ja?2T"=L i+*'*qdDRXFOKJ@W4x8V؅h @(XL){%@tf:29ޘ"o9,#C #|wv^{tO1(|ZpƓ0vZ[f23+$"Z.~+ oI^KI#Ds:Qkt?u4s ĨLj9YNLuf[l$p;0gՔ:蓰ڍmJ/6g.hI%|"yz;Z> :T/FVu]9KaKH.g$s1[뷌R fXwƐu47/e ~: Hu>En aOF𭌌*Et/@:fG.w8̉Zxm ).%`S8Tbr˻| \=ai`:DZpRJ7jrmS ⬑Bޗkd"F}'g+qЇ5Z@]8צ+6Г7(f{PJ`QExWF+)}ZwL{~E,VA"(5^@d$YP0@Q,%`O* 8zʨsN d7:$8bJʤ/5HX(@|ΥW0Tw5h+ ih҃.+Vh*a<ΊLKTW֔Kh>D5#իeieI DJ&C 22)>A{)2؉{L upe [7\)ͷxhMDaC8in*I5](/?,Y9I]n41wi @*Q́6-1~0ƁН{cU̧-3 l*D [}sOH;:yVqe~E q;l)F0|hTV:{Džґ>ي]#Ra`m S 5yK0 +T+ _bȺoNT$ݟF=9J\qHƂ L-Yoqm `"e"!w^(:1{ YO(qNT^)D6]4@OZw]M !+x]'%`pMKQIx$ThƄ:$g<&|odQ3BL U ˀC2;[8p0 #%4 D\ϭ^#VǾq \exBW$Wm<%Ӹ,&\ydL*'I"zx..:XTh2yZDNtmR=Z'.嶺{{아=)q=&FS*By:SGM՝Ò:f-4_mޫx`&'L3~tԽ=mڬJ MϚ*htdӥbe:G~jPbl8ĆxT(;O3d,5Y~F *齹kr=&vP)*.(|![#>,aAdG6_OfB2*5uu 1蛪 ZŜfp4iFJAg 誇1݀p!i D8vJ z Ʃ:H@trRɾ>K9Te6.['2nf{|Qo|Vꅢu:ǯ~~!aSHQUgr!bV~o?fuvEਕLNv,fB>8r' N{}E`H:4>x_X Xo3K(f!ȐjU 7XiuhT3 \}o`E@m'&pO>cEQ]BVhz0CH*63.N:$aDQUNXŠJYa2I:A*i:̼}jt8"=l/d fRpz[1^v[2lQX[6>Nn ~\SOI^A}V?,~:J/)ΦQRbբ#tJߟ LING /%:Q)|oZ:: D?S^i5c xzQˡ>+j2r).m9/g-{_ސDZl:<,_TnntĖIHzR6KZ7`?Sˤԅy#liJcV`bILV4/x,#gxvo,_n~/R~Ʋ*~#Mߵ4vj㇬dUW \ggsKFU?'GLcqוs#5 ؍יqP ,J=Z/lO}MA(jsk/͆Ww^"o %pɨD8G}鍽00$ȆO%7yzT њ,ʡeZHhMW>Ȣtues$I],abO*bܬ Cr1+̙c0ghc/%bl.J^~f^;,}D&9HQgW̻qq6 `z[_| ی}J)Swx6ՖGAL '&.Ԡ _FɠtF!H=899\ؙ P@`СpF+OM F7INi6Bcy0O ⃘+Mv =Q>N? VG- ?eSg~}mJo& 5QP*$`wTO;u='eⓅ-gNP<8ORZ!XMZv] 4T .ANm>4/vz,zoG+|o,[>7Aq0M!q7X;TCq˲3#<*+kImֲVŅ;%onkw՗(v؄21~ױf^p.*.E1VV$8bݵ,u?F5MqHcֿ;koo}k$=l A;A 0Ϳr 3Sퟤg лݠd6Q [ R՟g,lm88@^{B-q ICq$'go ´F>7. "!dC-LՑ򵧖i+wJ0#x d^] Nu푵|9z[b&ճ'mXno j jd"'.^.eJ>P2aTCP\+σɢw㳖W (ָSMmjn$P\uh|AY>}\]gܝ2K4; ]Γ_O*m#8t.b9IAȦcN:NFS9ٵZ_-Fxjfkv]SǿLLX0Do~XiRԐʺͼx\ECBTXgoh{0sX~KDsD "aĮYzغzT'Ex *pXC ՗%Kѳ|rgx_zp R~UE'd:^i38|cd UZPs-㛻Fm'0ދսz/GlFV aakDݿ-H]u(EƉ/ddwȫ.>*X-$<\}gdBIiq>tfDQM4К>,q-JYQ#pg$g}ސ=ٕ @yzҞp3+TN~_&z'B](dz?j AL2\RF ձ>.^|\fk -|)<]xҰUuԂ݊c)#,x7C*sJd֒b֢ C6Ycu\g- ]L32]JQoę/?2ʬ4nK- áW$( 1h66zX_`VRFWILNaJ?5d( j6#('bOP}v+PtsN.ms:2rƾwQ1n}M,m̬%JޮC `/#KswgZ*ܖK ^)܅cscǾ_-F9_=$&ǁk U-e% Vh=@(f~"NlHC'K졛8;6ۨ5l q;! +q*il{bȖ½v; z3oO{' q'Ƞ M{I#5LR5lws@ۻ}jnma>02+j&&Ncu i#|33y8 *bm]e)׫a`1TNб_Y08waBh4O[#KFG[JZSs:kxky:b2.C}:&Ɂz#ɸkYuu`(:SB`6-O\ cq<-ټYpnj~!08!VJySq}.DƘWF&܄͛H(.Ǐq0C| %{дLws1a_&f^>2ADr:Uj -!7F1RxHWΙ|%̆y .,J(ػ!  >;5񷼇R̪θ+Pd#O\_7^+e|1cE 3M'"F.sp}XSO ՗VT{ѦʡT9_]=88Jg{6lFxxA:Bt|6 囂Qc6p0)Qt֡:'39o6~~6{3Jg͕(Yf•D]!A"$b IUfITΫ'VCz7g?bt IBF7Z *'iq:=F?і\{Ob~cgm*?>U&ʃUp8u:ưNO^yTz-6&Ε(!?_|TCŞ.XyOYE)Z,zVg]N(™8{I߻u*+:. ؚ383#PkQЊ ך4iA(1fsnb1xOEo$e8FGhZ<^PjCb,V!Fmp֕mF'xo槔5+Sm]B]a *^HMI%ӮbysschZ(&oe9 l4TjcLkGawRՊw6-Fasv~M61Jj{R}cVo #/h9"Oݓ`:3zįkP&fyط>W5 .'~{؎3)VSE!A^Ab?ݝkpܻõOZ63>59$ 8Ŭa">HLƝ[?Iriχ?8io(MJ""ܣf@$-o|8h`,~ų?g,lqu=/FK[km<E4߳wx26ӊ|;޽G.?joF1(upx}BT+f}j# Po %^߆yt$D{C&Ɉ87E5lT2aę$맀'ݸP#O,\.k[nJڼFȂ9;%ef4"VM$i1"b3WJkh"3nh2iCA:NV7L۲=EkƁxd ) 9܆ Jx6UgTP>+ Un#-Zi<{K(+ՓK+{zY"S㽚}il'6SU1S4J?dbߝ? Q*{i2>Lb?[wñBa7F\ kϵ*Jl&[TuR!k+##elQUs6">;b=Vx@A!(ƾأnKٛ([_%P(OfmCc2}aN2\)bk f{Wo%% t蝊Q45=Ț>Պ8wCe>.T\OͪZp?v}H ߠ6הX (EUNUpYcڵH\ŞINLVow犼 Z-f&i5\~{|+lR1nF(a ^ͥkL s#.}6}k_>.9sv2h"q[tt B&+)o qΫ:~.(| V8~2ә&7k Z@$3DVU6 OԠz:4qeQO|WGV)N'&ҙ,HdR 靈 Dtٸ_/չ ު 7¥=;IMq@Y}gU%JPSe`I/Jwy4fȰCCeFg˄ =hiڋYiNYZ?7=PkaH1J3CaBwlKVėtyȜJ8b捀,} =db3.nG%ygp-EK:Q$eeBM|Z;~vN>FFBD7N8(̞Siyc#rQ@lڀɚĊ8ƚ3Y\^0 PPX'QJ1k=wT:9 w]JtZj9FŷJf"p*GԨ``a*5=5 *ſSƴe4k;V4;J|(O;/ )WjO d1XX`j*%/qփ&ӞK#/CZIw+s˪r -!D,a}O9ܶewql! > r¢:x}yʍ=,}ѵC|z;ZVg|í;ex&~c.]pks)5wS bL˭%suN gȁ& в$y og&D8G$pIq!KXY +RXՋ34yЀccO)jnߜKNoqУ)1kmdtDX޶MQ ~:4̖g 92Z3\FSinsMH !LWsZ@f ~ Zto b0!ya QY5YfD/冗ixH`0K=UeB|S0}-!UA2KP06]!0ymdDKd="Lk2lDSϞ F$l1.yH| %DzJ"g-q<șm=ĘP§`,}Xh%pt$ r `̼)V)Yʶc`Tg" vYg!} [t+}vxQky뜉y)JEݗĆAj{m4q/pA-i)!O9Vuw%񰔋OFb] 8kA:Ԟ>MjLjzJA3ҘRT\ҝm(M:5$7c .6!zIɐqiշ`mRCk~3m f)H89.#aqS.|[eSKzJa|{ďˑ: /hdF}3sۆyu@L[; %E& (ܼF52Iݙ M3$i̒!]p'̉3WnNm;7ܢO{qWE,&jIt̏uqһ;@p KE7Ys^׭.p1>"S]l6d%Fh3^GۭO"2\=J{q4þlZ0K(LҁW@0"C`nz'IؾTe L^AyOn^U}c+>E8bް[%&xuۭ)Gi7 3Zf%'MU0\e4$Q&ݎS2!F&]gh̖L^ZoR΁Z +Ңk lh7)t޵CX2JwSL>ڔX7ZtHF:nG7Y 9w(*J|^}4޺Jxt-"V1)SEuQ׿;g!`X[hv~*F@v)F5FKf$koODƈ0͌g)iҿml4*_xp,o gbbB 6j~ 0ޑ2\ x{_Wb(HsĈNQc#V!)aem0JT栥e%,)Qݡȇc,^a|hE7 H7k7I؇Iؠ 2܂;LB$"MhPZ ɧn{aaF wmnmb[#`I&]!&H,rf !T\fN]Bov&GF5ܔqu P[6/X.')7$@WWb:ˣ'/S;Y{wll=٩ոW^t˳eG(* L v3 $9iN Wcb2ixI )F>D }8XTHCSk /b[Ip0Hǒ-}U[mC AW$C( O\ 4?*~zFf[btJYb(.76֐dUW Z0X9 EӵdDz]VقtR2b6e(2r^x\nvNKLy5Hm΅q1J-E і#2:xu諝a썙C  I7!>*|)Q>^Ȕ,֞"& 3݇G4yǛV ufwù|P?;.I9hciz_!cɇS exjfB Al ; }wGq$SC=ٽ6{^{vNFu:%c;,kkӏ 30qvqYw L+0  E%f!uq{Z\>dLD3_G%ɂ*v;R][ch|,rj)2"z"4Z(d%҉9/$Jgq f7eb*wܑ~Os8,گZq͚x\ou r\8>i3mNX~AX̽" YC c/KCu @P C 2FfEb.lb}OWw׳2T^8U?Ҫ,tS3|tqrUqվG_$ )/~uVZ"_"؎@ߏzߕ5/~lo > dBcQ igAp"aq;IHI+/rѿl H)u ZuS7ۢژ}xXIkʝ;H&)POg)A4pН]Q]kXSqD%{82&P?Tb;QR*b4`ٝY^tu)U؝e5)YlI7CҤYiRVR%(k #D?;:7G#sQ4zWd"{W'jcfm:o=#R8`,'sVˬL9 LؠHt2ӽX<%k"I!=O @sWcp!w,4TbLM4clFE6CӦ!TL{ ` R\X6]ߒ54Zx<T0Os;jpy`7,'ho26uAfO$.HǶ N}D I^q/cG90 iJjᐢʝbimqKa9F[aH-syLw=%S"eBAS c_l&_⺚̈́S4m&FJpyfI/OȠ% cxuv~o|oT-5[%Hq-f>FNC#~ Z7&a΁2~NZ)vK+&ojGv u_BfefW "V `oAlĒt$tvdqCʣu*{'c`$4`k:c_~)+~큞E8]]J-RpF4#!;5Gm.ܲj< V@TC$jL6;Kj i Z&Poq~nH}gD%G7̱-Y]AW787uU'N<_/ [ixh57x'<̭w~ģYoe3 y1$%RHmoHؤ0' ^gWA9It83d;Q8{OKdQZ pnw'P L#s}\-Y 2.O7USkvq潠CZah;1];r l/D"gE& K(PϺnx%I(* ;<"f.X{0)UHfڞ q0{71F$ Ǚwyb] 8dN٧{u͒P]?slW*TQfaa +0BM1@E|Se3}OH@0A!ύi)Ä+Φ?~M(&8V?!;'q2#$r3lLb7@$:g=/o[U]XbQ5)5@CBt~ {XÌ6VW#j`{04g $]NAX7) S>dl4ϗg 2Jgv8 jGDǭNU <$&qzvKgmH gE8_D cʺYX>Q64+5_ӞTsZ2l…zFp\fe)F $`ܻΝvIZwS3&uTzW0[)}ʎf\^zIlqdjpds̙vdF"NdA4OὯ `i"m]~+-!^jUK6 Qz`m œqO%BZѝ~3D=f|qN#'#P#]$>? 96r\WY+[W?UڴDqj+@E tA`~Sh1GwھRQ~>Ǚ@Rmtk7h5=$72BpcK]yoDsN1*WWl0_8P-ɑ菌ę(JMV[)BR9 yg3UqZtqPFS-RJrC2'+a׳q*4fcIp}8 ,rme+g4""KU-$ 55<*'GB?Y89aAhۿL%ړ@a53TMGd.`)V%TҋQх#;vbTH*0\%%NnzdB?ME,kXވGdo+-%*@^Ttuewzp P&Qɀ,u H`+ALt̟1y g@:IaEf1(-%~ !f(UAɻ![reeO1@cCKT Li:vȀ4Mbʃv NlQUKC㿧 {oV9yQOɼ-ՅFQ:q_#P%CiA>Fq fHfg1C'UX=PK!C-%[޷Su{)FZ8'CoP*KRΩW64Q%{>|J21'ice9 _ օuT ̧ʑ{Z &q:scwɢV j>شkN=XP2sT>$O&CErAB>F331!'^no1 Cj^M_ALQo{+-!љ.,"x :B;nL`N8uա?OgCߺt^]w8hIꈳC#U}/Ksc8*")w,o`2L:@)G]IoV"4BpLgKt8N??CV-f3~i-y]5If"/4)z<٫`dy>hxPtMz+_4ԪSEN?;TDF񂕡%r{\(yKs /ߤ[H]m/τCQ@Vx;`&9ޯV<d n4WF/B ^AL$Rg{^+>Ba:7YF[{}xHJQkWc-Py:32HLr-"6H$Ŝg6g2Jx MNلqc'uS4ʋ E1,i!ݫŧ{$ yK}S/OCL`zGa:'Pѵ~(J4ѯ 0&0'O[ /Lf' G!+χ2[9c@47N@MJ]hp&k.-[8…"s1y!aLC9"򛤫^mS gUh*a6㔂0V Q 7r^'p]I=y=M5#93mIgGϕFWl򁖑 "F| v*;&U^<_W& njtXcGD +H5m}Sdz韑N\+YkiEJz֮W8k\r%9Y`KH{!B ;ӟ|g3;_ K|V:YzWr/jf4Br!9`h}ͥxX"ɂ&KP!&603^z~RVN%TEM11?į}_{<ͯ?]ſ )LEQvml/Mz=΃}Qw"'d| tV>nMQ@BhVAht'%'D3X9A|B}Kȣ0Zg`d+6ȷ"_ =Nj*6߈O "^ig~n.t)ǜ譝#I{^P" ^S\j}H=a 6506L,9aLSH)jbڊ;?ǫ?=?JɆ8№K8kʞ\)gaZEC׷('Îq-jpntm+q8 LCfp-T(;W]'B2 ݸV|CQ? A,|prО )ե CKhj4!XK[\wz z _m*)cd }nHSY@R{|fïcp^DD f uW IH@\N,d{F_-7:[u؍}RI4 A]Z춅"5GDe"N6%EW}>;qn e;֫WW؊U>I]D\QxWK0Y_bI_.8ϕ:T6udVnl I'R%GmWH%ރ4QJ'4['#". >]=ih5,h/Qv] 0=.8Ңkv6'2ؤ4 2e5^9lӪ|. !Yn=ikEu:^q~+8 *d0@jqbvX-iz#nyՇPT؆m?ּۜHjsVe 9JҪgXDsj>_y3vʵIxWrŪD bu1)́bY+4O گlm[dkUX|BvPwrT0VYWьU\"ZD8q_}Arh{ 릭EǛTޏq2CH\ʕHS%&MEʟ ;om+!*!e {ɪ7(v a:6ו({]D{'`oFzv\-.='>`a6*2ic#If2 (hJaWRs@>_,s۴`A6r<2_Er"%LFDY~PԶ{ܿsȤrܔ^(P[-қ#aʤ}X0~0?nx;, Q)*iߩ9 fs`9]'6[~Ւ\J$0xY9vgd#<`I;y#jBʇ p}`xT';[Fy?euPdVWpM^*BK6Hh/cWE\0|X} nIy1Ʒ}@crdYn(ba3Dq橎x"{sWO+p25%ی x Ɛtv>:@X$ٍ_jO g[s#L"zCZ4Ɖ&WzF#L#Z٥_ _h!37Oɩ88PVnN|`H"ꦤuw4kWG6q< r6*!_5&RaP 6˸k$qikO%}]I`)K|72|/t91[\uw4^Q}7qo/)zk.XD1tl}fˆ+g9(I?<5;%yBUv\A;vDM7{cɚкxr;G pxM8Áz{3gwg=+ 8dJы)+fOK$ cC^ou M dٷ!mx-1j`W-aϹs_e:WDc$c$-SkmL}9w,u̵kCLXk0VܬTmE.jx }&ǿ+7Cbq_e6WQ[sTL&:O_K@JEzbWđI?5ۙVy#̗)7ʃx԰m[&4a0I&IU0 Ika[][~ Mo.M L$؃Z(0I&8Ry7:vu)<|Ɔzv{0B/BYYV' 0va=lT69| jc^(_ԓ//bĸK_璌tlr(r(DYA5ᏫNŒc ;Ztv3}۷f2=6nUZZ>T=k X9x|aN1s!aƭ0E 9ʼ0n3 \ueb z"K]ѿC:zG5F05B VVgHR/--D4j Q>.n֮",Ȗ3βmþ>$@/2!jvc^=:+gp.=ҽw 0;(v_oև6\=YҘ}tHg(Woн0NŜď%?d Y-],7]-=9\R,'_e9&a~f1BG5u;^wz!U'P:XdC-[Y_L7K{9kCSEH_{ο.`8"L[(}0D1E[gQZwT\nqQ>H6hhɳXhf0D00^9RSMjiLJ0͌"3%V2I<}df^([7Xfur2uV=?xy6M]bpD d$q]Oa'#fp~5|EvU..3k;5AGڲv' -V?i^,Oᤔ^_;WZ%% 7Wٟǻ<ck:RtqTk=֖ Y-&}Kr,dk{璁T[2(o !t)m2'Q e A @/,Mܸ0a'ۂG)Ɋ  o9tt$՚sYNŒYnš&RTΘ褧aGlw6(JM,Q~3Rfh&GJ@EY[]{{[ND ]RG\1,VHP>bW.&MD^=6zxv~OyXW0_K-ud%|q( Ъ--!EQMA04j@WcM5_%!D٥fbW\FB]퉑Gz&x΅톐"[7Ž.J 8jBpIDP2252k/)&׊]X4<%㍹s(g,IHJ W׀su[_?~mmeL.hZ"ji'l?At?ŻK6ֈ+fscovBQ8?%ϤI쬡WTFٵՎrn:b8j;]HTo{@BZL" lMx5!9"MC#&”hբcK9iUF(a,wxvvH]YאI: XEGK6h ʉ;}HtGN>G z"C'2(:=ó/ŕhԨ+-OSA0+.T^Ca{ۻP9{t69xׯyLKFO (sC50Ү*FפJ!1I[O=.HJpEďecbH!Pe񃠸،g)+Ybȷ؄JU :o 5$$?kƐ-m0 :riHB\6uXTl<nVD񽎳2`>2gv/b*}1ȋލJ|څ,c bfG5ͽht8v2 k޴hA.^_0[wv+@` p戩J笨dTS!y_ + _a'ʃJ@qPNc܃ HIE|K,M҇!kU%lYVՍzo\ar=0?@bM\k /T9b*8g2W.%>;;X'| 7խ}m05bpt3:{FKo5uP܏4p^ӝl=.OaJzAWaX ɉsVw;-](S< u | 6IXީ,g[%W7կ,Ϻ-fhOΩg"0K@@<َ.RīNT4B0P|W?r) Hz8:B475qmlǕc;RA@쬁k绵?#y0W8,xeϰAE.ԓV4ʝ8$ GK hD@N$uB6g;Z0R)hlFLjR;O[x7! 2a'&ի=h (c9n/W hҩ(P$lV]fK6rocq?Չ,ϑګϷ8MTQi`tn$V4g,U8.NCydP [9}ס+ l6Vxݛѿ A`ܧ߃E"ոX\cRhMt.з%BC#0#Z.}P!xb%KjbO}WjC>dͥ|s% u*z9x}s)x-{S@S{. vmǻJfad? `u=d$ە@2Z^@z0 [ǵ]rM3SxocW#8O/Ly$[i ޡCǦIc487kbhQS[(V<Ɖ|B݊`7y}>hbk"h()0MRB6B.2}R\xb% scoŨq%:&G:CdU .u/?Y/qv}j,MR<7ȃh%0/">wt>pMU9H#ԃAZi}at/.1j8q3V.NN6<ж1CњcSXa% [,#ĞZ sKA@v։]u2ۜ%2e5נwl6̨4TIgμ11 RMȫH,LBRݩ]jLD eKD@ꦈN: a bH!J2 T Cma)\ dki~z.YcAý+ٌ_g 7 u~cP'mGorGnYk 92ۉ  /*; |2˷F.fX" cy /Gc[$ ]mˉ\|x&v%6n҅)Ϥ=|i'Za_]NᶆKXCRox< |Pɴd4vq3Uru[쀬\H+ѦUhÉ F @./x?ٺ_ 6px2ƼnԜLuW²gd#0btnbNm{i"`^m952|Kqkc3Ҹ1yNȈ)z|9 I勽km$x11ͯ`,aG+ Xp zam)cGaW.!RVf”U0N.[N 2.+)ok!5E}ri!Gu$II(齝O)pf`U`EH6kki((0_,}Kmy?>v\32Hr=|W8-F9n;<1S18I H`3V 4_͚A8'+µ ruU?5ig;RKAUgڗzqr=q; { fq,5Ŝxݷ8d0955uTvc(ܤJ}(ߑA1jȇSs yC̼DwT_agG܈0!)ko|:ɕ^|:%6^wDw݋X$?N'U$ˍuȴw`qV9ДwGɸ'?-FwFa 0X&7*t}7{ltO7W1ggfOV6=b ҵۤ ܧ3C~А,[RGSnXS"?PŰig%%L~PUNTIYOMq)lE!:/\&bdӬIu=BpG @L) g}r7}lAȽB&vcOF8hlI9씹j{FI{y3$ `"6(r1}|r"%YM*lX3zґbaKj<ìdf1yuDY(D QCY5}\ J /x؅vbrzNKH?,n.\Ѵzӻ qe+ۚ\">qpG"sR+t=\Fjz\RR'+jd>ۉWbm\$]r+ ( KVY[rxJxgbjK{hB{ϭY/z~罙j!C7x+UI"9TȺ]Ш"i/lx9i[NlD6󙚋y%Q i.sKL_VVy 7G5fx'F{Z ЗR0%6֛$y? /+ !\Z] `U1*=#`r0/:+aChPHk5RO*t)U&y|s:*%-97 GW( Xܒxմ*ev߭ߡ-z3J/ϧL*hd-J.Yl310w4 OgTXw:9>6G\,"m:Bm2 <`_{ud hZYk޴ Uadh䮢"jnΟ\Q0p>Pts^m:6̔~E; >uF5~ =15>`'#FpnPAp)Mզer 87?_aN,Nt,Jj|'(Z@1H_jO8عN::}#wazM .`ҖyYzx/7H"@|{1:kO_@(ȢRJN2*bb_ 8H!hk6c9 EUz`)jaIN@~>"qF^ b_L5P m / >3X0.%Mn>wW((< Ecծ v.Ѓ<՛KTui"^Ipo#37HV=nL.ó|rZo^Ȱ_4"ex)AR‰~HwM`&_t]{=V8[bdj{)sC܀eJ(Ԙ4}$uX8KfOmdyG|9q%Wdt[.{ ҏcF4SK5mѷM\`܅è~ wfIM̪;],3u+ Wԝ⒣$X> r2Q*Һil u"c@NPNNinwfUsܚ􆵞 0 A\Zn'6YM5Dyy \~tܜz3!Ua .LV+ΘŶu)O3J8r|ϟGNW~Phafı9VGG%n u<:hmɛ#4UUgGC:Pf`O] `(C& K)9^~TQ;FJ7#PC}q{r埘hE_ Ǎ\:VdX_ZђB=_2UƎ ~#Wt؈_9kf,Q:ݴ9xaS lZą3xCUtGPuQ\`Ih)` j3㤝wx)tLy]RFi o'e ʵ^I8N8jOJOXQ#DwZp~UL ߊh})ԌP$ƲHlxVkpC$:8l,k9ĚLDbq1йIEk0#&t_$J_e{4z+{v(=Jݕ оtp]Ӗtq5jYB RcB@5+\>>0z](0PvHһ~ NF*2O ؁:_*{Uɂ^޼vG&_;B~6bR.!*[_>G[bnC$4B.6BmTvk8R6j`h;NvC5S1 P@uC<&,{Q0© a/~}.s/ϼi%> ZXtR=,sjp *P_F95UA!~nD'1fd.aC.W~` ?[n\n.o$M2n c 7kpҖ2ZWk`rBjzODIGkr؟HS:^ގvaݥa aX$ss.Gubj!.M{KJzې1ror}VUpyeW!5;(GSo5/zݾ||cI-&ÀA4@_ugýs7`jc)/zЍ:~+)o촾NT_%:eF{:.W<^WR'@ͳDݚ)J VzhNgI8=$3³A;l@, "֛v.]+/ ZlidIp^Deo;Pލ Jf.dƻx3 ^>h#M3"6"MYH S4ʌ.HE2}cy` O9z寙2 =c4\BZUN y|!T0h ߆c]o \:2s#cP;LB,c)[\ jaٿ)\c?]&^R[iqZ~rGX:1 㦰7;b)w}8Y;r^|:ؚcj;&, *ܺT*ݯC ^aL:zr rkJd?oa:|gDRL"؄El' >02)QWGXjfX6%%Ω)jõ2Yj~w*S[7˙mǜC|?~+--~$9Wa|)#`M\ g&HÇMrc t_)L<ٵΜK.l.ko 9~JE*p-:&tdu_"sc<  YKAѶ*Ax*ÒG[4U-#&I1]=t4nU =-WځTF{ % By@c;hΔ:A+Nh~SY*TgCkߠ/rzߠ3p|i<-x,dULlf(-#yN;$+E{ 82=׀sErcj1*U,WtLBpt0`[@DHXr?ZOHxxa:2(`? ldA{ Y{hLV/wq埗6juy_͇!(#E1EyGt֑|K3Z|-6iJmbgp ( s`;| 荢U;"xirSޯÖUQUʐFo0}za:Z̰g5a}n%6ԧҍ׍~W}lr,Ӡ9R +/,sJ:< ʮc*b9 ov-D8N*#Uq]#Xݾ1Y:K'quE,L9rijo(2؃\,8ÔFҙ~ށ &,<N0!]ǔ$+FNWv^̼FA{(P$ E|Y]5Z/J%۷d Zk6@u9xY(;`FY}KݮԼ>DVS#BQe6&Jj[ʉTMT&DsW gv-ƒ둺X i }U"Em4`Ar,X^ѥ3w/+P?ZxJ| x! Bv[j[,-/Bt~9~mU1\lV0eƃ˙Ċ~m3V;{}2\M$8Jɒ78TLф*՝eӭ,mݎMJKƹm1IuF/vbJ2ڪBR/A3'Ofg4$P Eul5>\ftE=ʻ>Ջtپ˰ /~\@p޷J%"HϖI|> *@BF7 N;Jz;{9 E"!jyvR)\cAQiG* L p2e~g2=m]xw6ڇx"z6ܒ r3G:}8zq !9X۶'{Y&J3ȴ)PHAU3TJ$`w!rJ}#m,%:Fd tBf/9|Jy$K$uH &G2 J5exEPDw|xˇY{Zd UQjG)Ng; U2 PQs$%]G`'7$8g0~VS!:ZI/n1,fQBP{!{S( @ߞHIe"1v]] Drv-ІNb3z\A(mθNvVLW#؀bw%Omaٔ_^q|h;)2mͶ<_C5W!riw8d/< x,>_?gܿK|32E^D^ad&6lnK?#,h}*- }y3D>D{c*L@e["LK,)'C(4NƖ Nxr/pd2M *S ͕2p3 m~2TQGpyېGGTHͧe4rw^伖m.k-zm"o) +:\u2n"`/5>1w-!v>imdyO9} b*h\huU +su[՗&LĴ%4yY 2OTUJQ9cJU $2aAemwL ~M|bZD)o9a'IeP WڿJCVG|33g/NஂE2%\{C:ioA: CJ&T| A>3Jy-&k4}Gkl:>W u-y,";D߳ *;LIإ}=+!rVF`wq\ܮYz3l5:~AGTi*5;8FB[' n+>lے> 3b`f]W$>U@4PZ(l0Lj%;KǴs4Rạm^kؾy6,;c`uf%hh jaM9d}fK:\ 'Ԣ@niON1 LĬQvqc 瞃i, &-C!+ R_QBVd_W(qF[5j} 0"|QWw ~܊ !x)BV#tJ01œ*J[eC݈jכP3*L)k#n'e8PIҗKdU|#sRg#{eD;Q)ƫV88?p/vFRBy !ϛ̴PC ˜9yMNE /Ir: Vh[Kd [ѰPAlH_dIwhnS;wښ,=gQh\<4:N~k䛐qš83בֵdz9.b !ZFXiV5 ad΅)prץh\sbBE O;^xWxiͦ}~W+g] )rH+OP}5cNiW9S`V]3BMm=dq"an?&>-hŞ䫏2ǰ]xyzD sK;NP bjf-wiY} .L8Bo2u_k 9qði}n%6!ʌ0vX"II]EK.}ȧzcEj3oUvӢV3CGĨZ< t )#~  u$9yZ<@V$1gT^׺/x@%Ga{*k!Y ߞGVP WNuh-PpӒB^*ɸyhC-7SR*VT~yە"PqZ%7d?I$ Lr ܳC8#ߪd2pS=ft'8*4I8Nemŀp!'6Ζ%]_/Gd9~呛)jSщNm.sքlEWդW^e׋(ٛmK hGe'"ʝa~3j{%ſgQϻ5>иzK}|/?$CV28̽N\Pb$˯deˬIs WfEA}Ғ#O6MɓV-l˟^`jX+0_r@CtgfOxF 6w^ӳ6.ٞ.y9"e9PL7 O#5YC䮛!4DmeOB- i:!abXO]j,@zM4!bXPNi 4@%Qg[ "Wl ׶}by5)P҅mˆi)/)tcz  oK\(_cD0^.;Yߊ`zlpM7Peg>MTPrǒ&KhI%EC5+d~I._5d$K? WW1uhN<[N<6D<gcA=YVM<{^jBj݄4T금M{+e50[FčT'GJFS-'"ٝlz@\:l67}ߏ1Aw5La_*%j'.5*t"1R^tY`$V ԞbM!D{%J3ҡ0Nh#-\}w1p4Dиڊҍ,^А!gIVHft R#EDX@|0Ww \X#Orj2^w 3 'S{٩4'=YzpLB,=#ƿLNf0&X6@rmp Bg]a-EY;2Nٸ1 Ⅽuo27CH.e>bRb$2| $RF]9;=4NA<; *|ŌU/Q5!<2řTX Jm5EePYedqwq]xS ?rid&kJas;A fͺ⡪aLU+~4!pv@LN\=BLU 4tmet+5(^$&z3lh5'l"78lr$|H<y 杂 dkj`0(okC6^wZI3Kg<Ҁgӷ6#(!];Q=JY@rE(78?6}>gwD!NIۛ)R@"Ck&YY.ҀԨ-{(Tl]W2)% ^A@d_pׇʃ/$Ĝw# {E?csfZ"q bLO 8G_T=9bzx+ayXј(<^E ."R|-N(KJ0͛~>qIIPutz+(ȎL׽C"_ 4ɋpmASp/~xݣE%ec,'ݨ3ue/x~hvSiOΪ fG +zQ{Sc{ˈ[5V\:XTZg4x!BCakƚ(bf: [ei՛<qeyY5`!QlGQ(1ܶ0Ev h֪Vur0ڨCݶ37`1-f6ybŪn2=9AW?Kd0>`hUŌ0Xt<$Y{/栞Wp֪,Yg06hl|E"Gsa@&9iffS ˠpYK^[!r?*-WfbM0ʹiEdD8H;FnyxofscRO|./||-!dwP]xN4M;xv4s2B5&͘ͽ%['܈Ic<%w1]RXB1䥩L6HK'Su1dx?M6գa5P0߽xAԊJ^Q/6đ DXOzh8T֐u@p'XC \\8vBfMm?5Vw=Xp⥽Q'üo}W;gVmC-u[~&F㬼tM,ðZ jL,"ꐄ%I=Rż=VO`C+N"6FDj(rGكh| 斮Q>fU-V?.6p~l@.$fTZ8Xk0CtlXOSN{"X+B2/ۖ"J}m60P&zFA̡ތ9Hxv(QA,smZ'Y雭byq|KW.~!1$ܳ.. 'fXNqn[@)äڍnlBAP Kr5׶6+fwOo1yAS׭3 ZrCBԁxێ{@c.+!}B4`14u%޿8.UǻRW~6ƈ (1gϝPL$[gsj!v}£bE-_8#N[Ƨ)RK4Jj("-;qy0{Rῂ`1W0]]fOc$w8OuC,s>UuÔ]:kg(ّ,LW,;n I<,Qٖb+'+n)r1v I\j~3)Flp,ΧnbMS {T~}ɖ*z_K!x/Q f+ Ce (}l7{A%n*Xj`jYK&ffq0/Ѽ#If";8I*Ch4Yb76VՂat^yVPK#9 NF 0ROߧ|bCoR14=tEP& F'aM`!9(^@Uh#@*3,(^EWW?9<40 :/: U+tڂzO |km͉M(5 vNm8TJʚUyn=ES?ٮ?>]py/ٙ]_4.t)iyĪXZ+U-u/ D?Uqd3ܚzF`K1{|ëA?p<Ѭ>Q;IwCf c Q_ݥQ؀Rn%hdpzᰍd ΋). PΨ*Ib)+ X\к}q8VqțcYtdK`czWDaF\Ifx[1 Yœ< jMi{ڈ>B&wqqLHc/ǝvQ8屮T7ILʞE"r"ɺítK?Koh5ܒ {O$,]jL:z0 uR gڹf刡)g:XO kvp)]f?om+rR:*G%M`>%"ҲGky27d T9ʘs]lwWiՃLRWG-Q8^9Fŕvh[M\r_,JUcL/JđHsZ)j_b0 Do0s!=U>`m_,` ^NjXg.ƒwr(:\8QLgf;[cQ,B 2Ʋj 63 ߈?%EkIvʼ*ߘ ;F,sE14gٓR50_kIPA!V ɕ"z1Z;kpuO:}_*P/}RGf0T 1!E:9OaV(dwhVcP߷B<(;Fk@doLATgpbuHx0#|Ie3 ͘MD^-vIBmD 2Ȅy4ܷck|hP-Ox>xsE:?`/+cŌY͍SUENJq]uդ k"Y̳4WkSZMb4͏|xe.K]`|ӕV,E(!Y %>.Ջ-PZ_IKVlQ sb\%A|֘ %K'iP>&؉iySWry=]°}Z h2z! b\*;Q3J+~v4M7/E\h~ "J)&Jɚ}q@g,4R&e M-͵M7=7U>B[{, 9s㾝f]tUf{tz 5˔;qdśg%?Jl(N ) r|&r:ldRo )63En)R L <=ZIgs@t#'D",@*'ŲNh:/ȫXs=4KA8 !: cпZ)M3a!H@dՙ}w!SQit(RѱW2{p`ΏXU҆/MpK_K ӟ޸/n@P'ͻ@QO e=G ND`P KCw\-]5;jd`g#GD9U]0n`7 lJ9Ă9}轻<[pn 24(gƚOjmB-lqP-2H3nD2AS 48sIla59Tz[`8Zٰz$FB:b|zLJٟfL;)}eZ-6 uӎ}z!8)/ 6 7N:TQR|-|[lX$άӗ9~1Aӏ&R"db;`FLE\(-DEp'zW&hQ QbSk8` N}ǰ]khjL$wq"B̂F_̤Jjmȋ~!+6ef)~2R蘉Q"\oF$ʨ z5]ԳWzDifQI|Fye%V1 oSO0!h׎SmBYΛkH;xV}tdwe((ՠ5Σ9wA(k{HɟL L\ JAQ2 op1rɄ)@~sJ_y 63rѼ[XX0S 9rKK++OQ5Xmir^>=y!.GF:;*sy;wbMf=;W_Xfߋyc㷖jr2\OW嫹69;rJmZ&JJ7ʁ<)b"EuG;zv+m e[iuϥ%:&OEXxywTV)}@ɊP{-n=+%aN)&I|B{Іԛm;6A9nM`PN* CRa;8p8vxSuiSL@9~R8w,f7;k;v.P:L %J v,iسcY.87&`[h`')nMₛڥж$],U }]X~G4*k";*V P'a2:`k]n”c߬Owypa=B?DqD(OXW,f; g|o3[ ƿDvwTF3>To6-(*b7"opZ-0{"F Mw>ۭ2Nܪj*9|1g|ק[W7X"ri| ǁЮب?zey 2`0Rls/tխÃ6c5>ҙs\&}l6-h̙* }yV7IvRye>T4_DUZ1c=KfI:0RO|CZ-NyY7JdFc?DZœm5^T-iPX7y/#d k7^L7\y5Ϝ1SڈɥB 8Q6I /8AJ<ۻpXry~25Jp~+~YCqV~PHILCE;FOMS{<H:]-/SVd~`W.10>(.3O<|l#0EJ}\ rX0~n1e!qRdN99!W&7[Rdh腙gM^̕Ak*w@rfn.!A:yo(Y Qd"_,IdjD>glόO?z1XU,O @\1R+R>du>-Y=H2J:ލfsRCIsTZ[~';2j-8i [˯ 0?6N)holGbFTd\`kaEa|89f̎t2?.x6\ . U4#\()gN1%$q-j(c0(97g-]}BuB3T0.o>:ZN Jb2t-B>9^$X. NI#'t-#uq~8>*!Ziѕpº0&{)δLjL|rIηAnq5 +:+I9u !l|; ;<^ֻ$62_pCOT*H|J9|8B&(B"\ѓfi{:6]$^=$fG"eͽqt;/Nߔs"8z 05Z4zIH`,.`YǷ 'p{zmuEh_$;¼PIp'3SK+o%h@c'SםW̔i w0d-Qy|E U4AH`-*uY`Yd-Lo^tbLЇqWg nFm@čMdMNoᚲ ptF#FfM>!?͡)0pΛ:Zv#(n⚖onHJ wQ~Lu:Ƒ/GOSL-֫p:&޻(qUHt۝AS a] *4I+`_ y2̱\T%d;2 Ƙ~D頓U}`+<h;:$>LUfRFY)d^B]Y@^fQe㫮XLqт˱'$eM\hV\JANL8RҪ+kL5' pZ?US֣*CfD YX'GOuVNtOY"FaJ>͛M{? xư. [`  ;o[ ӡj1.gZhY ~)x|¢cjRZW/]rҚCR박xT>$r5UNu7aѭV&-8ޕכ("DT~͈Y#Vl:aX8HR^hmTz<ƘO=}4  P)0T/ENevNR5ܑսE`g'!k- >;wX.xo< o-}OHTq8[f?eR% ;iKb/O 90Z<]^>dFtؙybh2dXtCIN/BWp紇I}#X'euO E-{3~ߌ8L(۲ͺN—FãުDA _vUe)!*Z+$7̰ZOHoCVN{2FZbo2L=t䒿]ּ!Ar6w=ѡzDZ/M*8D8w._Ďrlf̘2 dI9_~O"M܆@f'*bؐDTwYvMw4IॼhhR_N:aZ  `&|oΊLD#_RˤPJVc$di2{& )F&F≯9'c*Je관7R[LX=Oi?nϗ%*,\B8 ^ `NP|q/OpX{lJĈw]$ܐt SlO^A ϒp`%O5V2@nfۦJrӰ9s,ҪR 0Oc~~`J5A'6#g/κv .<#~UU:|wb V&FnvBC?bC)4AH!Or2y,»\]ܼb?rN}Apl/} BXFG7&=N2w1Y I,ۿ@2 ɥ|O EhX.dl,+HVnH[^],zx9={NRJ͖Z]-:˜ݻRqHp-HMz 15=EM4wSI0 Ntppn;0S?$Nb_Q^E54#T6kIԍxXJ+\V>=HKUOu.&yF M6,p+!CGI|Of7gN$c&ek2ɓmpErGgO/.P~&NyNh?7OfB>95uMVYQtKe©=š=AZ7%5Hy<qh4;,TțПgtmLQdbtW/Ǎ\ZL}%^hRrw! ]tDE*VëPzLJY~Cۥ2Æx$qXV=̿6_ɨњ٢5ROM{v=|r@N 0 ;.#vJ&l0M" (gyЎlNhIJf<.V^ʳ(d&xZW:AL3g3H{ff;mjph@sp? W`7ċP]I ɚ7w^{=$H'dfh\I.=啝cA(si=3V/}1};bÕQT F`J%:6|xSG 'xMr@+|ë {9H#y9ғbi!4~Ϥ eB@lz(~Ihj̬틃l+aS7p^T\<i(tbI4ZIzYOڲ}ԟl(ZPkUc JVv]J*2cuCP7@HqU@\#YH>Y{Z&IV[oO2M:@Vm/PHFl;U4 iDJGu_[#%C5d (ȥ慭ń q1@@{7ǧt'0t8|axs:@_/%-;GdmDP3ҰPqzr*}z.hoW"BR* *SG(z t{ʬb ɚ)I0Irma?c-;g+ 1K %j`/}O*Y$;ErFX@7tZrzZ/ёkn#{nCx_5>k%8r@kًIxPAx|@ Nf82* 1ad o=!|6kDwohgV|H2>/}kAۮcq~DAǕўݯ2xɘ!tDO͕#)_šh[Z&>7#NY9, XOE[МQxu=hDp:*+ H{}2ME KY{̤&EioݽBuEXK p;o8ElIi^ԗEa }!enySN{ chaKm<@(%0&W]e{qX³ڙAm+2ϳtᗽcRK #H4s𔙌uBeeS0k?sn?s'~٫.jRq1cHoN#e)w"sS SՕ>Bl!znKΆk@ns~y -29n PXxz@d`5oci}G(s7%g(p׾197נ,> D!&hwW}6G7+^GT Dx3ÌÅ.>e|0DAB 2ʌ"t1+~:$RN9Z (x!>Zۃϳqe OC7G0U|ŭ+%'|ӥSyd}K~g)n#)%@քA(@ MMe|(Fi_9 D$JsS0M[\̼rt:4cJ\{L 1Tϲ҆ EWjPJۄ-U$:F(K^̄ 2QOkK8{Ge%-̩{l~ 7lYM2 ]U87.#)=RŒx(yd23)@*h}tM:c>/ *,sO;*'akFkza]T{h`SOnP/fj8v&5 98qX2.pVDZӭV8MЛ6"{RHځŨdz!FSXǺ-qvJ''u^v>×[H=~{-B@RG,p @jL֡$D2\ȗtۏVuk I ( f7дxjM{lr>zCX^o5| YճH%ǺļbW )g l!;Л`(7HsJ+.+cSx^9#)U)Qc!<&\r|o]u ǯu*'U`7)S>BHMɛ"xN.R|HgFG8wѓ;◁9nfwKwxaӂ~$7ر7~\r b,NGj )~u3Pru8wl׬p4:R2$c8 U+dąuNVF0+r.ךGfFs ;cT{6p " [lc8D%Rx Y qʱt4;)۪$ 8j=aQMs[9O pet@Ϣ9u gN\|y[EWt+=8Wutkh&|&fN]X7O\gԸD eX?,Ά]]k<=[ӡ.O.XۻGySJVJΚn寸]"QU(7vL C>C=3ީIV)DcRIޱ>;ʸ̖5EqEt*QhN,sɚ].WڻQ44egQvk̏1D6Gvu7[v9;IjU#qk#Z (c7APCD.:h qFzB6;̖=}T!o$#6g ?k@j8aF/y-6sav &į8޺7_3?So0Q3#c.츅"VxrNq{@ Rqƙ~O p])\M_ۀj\H`qG[B(9S,U8ɾN/Q-_VچR97XxޱCV}^kTE+`J [\R4r o!,Y_E;Uؙ=3ô;IO(^ Pu+gkv*sGA8K#,UB7M0>JojSDOytKڰ 3+P?!8teٸ]gf?JnI+jfB QhޛjQS 9L\KMk ۼܐb[VAp.ꃇI `֚mPe_(>p놶쇸VX.x_Sz[/wa4^(K=|!ypIR~D63C'MϴSv 1>f!dxxv+J5|1 ,@kG7!s8!4*5@X=o+_*d`PB74|octO@6rl" 2_N߭9>M"gU)_f bƓ-zaƄCR>ձAܿ" l!g5ޭ%,}lX={Or ÃvL (xuR G5)7YJ Y=ɳ=۰: Fy22kZܩ4̕1 v__17Q:tLJ2i%ht; ݢY1JZ ~W@U_olBSPk{5"s7+U #ZA%=?Q-x|P\_qbXaC52oUNp2pǝ\u+0IǮ.'nD|؊b|+=6ۈ0\GL)E5{vѴety\ bD6N3l*@}y|Lw WE9nZ@;>1G vՍfK*L_b U^`mB>*JKf9z'jpvxGKb`}i+HadʊS5+mg-pRlW4غpэ> {xøVYJ+:PWJ<)lO*&IL C7Kݔ.#):L``<9 9 (YX HzwPl.Ζ 8tX0ܷ e5m#@2%Ղ {| H-SxiЧLѵX J]}tPSA)N)e6v"_k]2S c4uiw8eڥ`5f&R0ȗ#'g)8!qII%8ݏQmzN,C.,CLUˎLY94 [9.NxkNz֢/#W}|ڔEUB'kS:l{rF=AmS(sSz6C2~ O-gHKX=eE9rqx-Z'ϓ̉_~_ Lyv5r72e ʠR~.R1 OHT^#$:c=u[xtނ1ځ|`3oJVKOq@Z;YsA:.U4I$ .GX)OJH)DuD J 'Z{9ܼ=l~D݄/}=Z&"(xiXl)@D]4$DŸKA|XIsn,7/ZFOҀdV<iDu֌[1ЍB{v=d6A;6BYd|c1"TK?ok/f/Ud`npָtHtAJ*{{Pl9 (u41G҃d.VPޫ[LtW`m(JeK{:ZơkDST%\#{=rp%|5SUUJ):ru~-^[D J6AoNncm*یum^vK^1Qpgl_\8 ԟ{t^N\H(0Ώ&'hZ2.v9 ";r-SgH -<"$Tz\3f=zƉ#)xQ6 M&xN%W!` W~9DVD$"L6LO)rDq]#ӞSTOT v~~~Nꮸ0́pr{G_e}l6~ JAw{vU5J^D>3]:1)sK%5U%-Q2? 5s/N?|Abݼv-p؜\dT>eVEDYV"Sr/5Qu'H {EJiw7vc Z6LPX1|&ILKj#M}$L j+G퀏Hsњk̂Խ)cdZ= hVקR* }c&P&x)D'O1iDӪRQDIDŽ|Hx==oS/6MS0Ը!>/ba*o·Ĝ'(e=%e6n?޾P-v{vg7_`' ߫Vm'姤pqwj L5u JEG&![:r\֔$ÅC|oR*oL֘l EekIojY{*:yeOg ^=hNEA8Ý PQ`c Re]x95>vAMR[ _R ^ Ӌq@EOrܣ2NTgױ<}N:D~?o EzmLp%n_}Vjbx1Zu&il[,^\R% BƬǫ&42s}u1E6E^&@Y$W}$j"2#dUD)%#nl6&ŏ t43/e)bt#M3Jز$ȅVa$4ub+?Sfl5h^bsIJO?\a.+'bˇ4;\ZӉk%}fk%'`~8R5k4ӹnj-~?\džux SZI!)8l L2@D)$M+z#]egu+Ue:svbfZ 8@9pg-7. 7k_6t) ; H{{\hkr9a] XB3FbywK}4bbߖLT?c`gs{k|hAT**_9cK'Rc| zr<^HYTC'2Sv9URծ7TF]L},T*~2K!05I y*;*L`Cfz .Nlח1s2z\5:nG5\241 +K 1_!p膼SF p$.6l-X4pBF X( V2@]pl,MR&Ӊ@ eֿ?!9iietDl| z;+sR4?f h].^{ 2_#s0s-ֶq3{}@3W7֙@\Q`I:. |K8"PRN]Mblv0LJ-E8WRVh~/g(jx{ ֢TA>MUo'A pY/9e<<Jb]z¯xs]|R /"1ύh2'jeMؤ7S\L@xcP<\YCZ ?>h|wV/BۊN_.:H>,w)DA*si$.ds&V-h 4e ZJ?3| he<2.J1T  w.XOTܛXyOwC]j4.])Cwf=?v W?cu.lh7{zMaX_ RGi~DmWKε'*lLq6:(`|;:ϝ\E6W)損K:bt8Eb=MUIQ@?jc]i4ر5psG+}jֱ|U\s%{~C,kq0ۧ*8>/01[u脪<(סc-R$-% 2ᨃ OJfZD PhFFQ2,$lħiaknpPm[ k!qޙXfNys M*H$2 Ȝ]5g }I vƨ ؗOnl VK]ɷ1}RU^9S{@_#l nYPW꿃ژ.>H-2SI0\[%0)VX$?: D9*ǍyftC${՗̮z]`B&Y D=yG2-gɭإN3S.X(Tẹx&=7 *pMdZio!ym5$^Th`$#t B{˫1#*?,쥠I7RB?KJa &!);!b jP:R('m dq^ienqL^GkbVLin2O/p}log$#QCP,M. Ӯ:_\ՄGTkIZ(e15٢t%tD4aPKkNFPJ'0O d|qyĹW[gOBYЌ }ȱ梿 !,~z`dA[5U4[VDDX\o/YprْWuvڊ#Mԏ[MmNE 4 E uz~tɠlC ~UȤa '&6V*Ojv9e^ߤI_}'}int(Kޖa$2)$4у u=Z홦2cua @4uR! pn\: 5+la]buĬ@Q,?!˪Œ`7qmrժmGi9M g27fS@%y#jϣE`' +i;֨ =DY$,,,R~[j8! ,剮v9 mPƎ) ?3ԣ9s@;ov9GJoϑkI?/VعCNA%dbΫl'TlӸЈK\CuJZgjKHs~ iu@h^*;TL d'/TGr="iζi*ՒP7u"hQ\z?#7k@e9/,sf5ФuzePUΕ qWnO/`%zo|TSy; ݨN('mN7MA]/%NІR6 [7pCUO-_Dfڳ斷"qy:'b~%%r.ZM*~Gnʹ;\ x9aJa@J"à9}IԨrg鏷5XUɷJݼxFNBbk4 h گ^9Gp!fKĴ 8S.`dSkw(%M=mG03d3E $e(I.]b&]u=fŠ]:'^ZOs-B|[ci+!7瑀p9ȌH(UL>S V_.0(k-my*Aj;>߬C_eBA 4H%P#&\(N [[Cj,(߼CGr#S'ں\VJXœBRE%|׬\n滾z [&`ӹ?.]P#3+ѥ6GB0~}da?eOejЯCS3*skm\>ZA]8-xvWB-z NmF9ѺVCˉ~.$DLFmw'LI:Pb$+8.KNsU ZBD@JRk81sYe5Wgl: .v/GAWSw82 y2i?G#O=+Ev&%,4_uSy,VYsV,1]j%֩:x\p&;c di`MO>ꆈ)cCs4W0}v7:ZgtN8.;J#3{5pw&i@H{˕lłinxpT‰>s1qQE 6۱DoklJ  jhSÅjIFWmlgʽOI_+ :PɊ9K,<15Ud=}3қ}~eQR aao\}™@gLV Bu#>>ؤ%2>BFmpeo>N{=@K@5 h*7Vyn8$U#_n'$Q$kTxOa &F.j<ֻNu)W<0z]Mx׈pAZ]7U>ִLz_ccV%/=XG,J=~:>Mw(}lTU*O#!Blq#.e+`.&6U S&zp3 9 @@ +ȝRmmO@EuO4Um3?>Van>m4§N]_%GIC+8i(#Tu<7`ڟUmjM YgWTl3C4RJ4 xπqR:t8ր6>F_ger|=er/ q+zW!0x0~:",4>`XN4S\Q` b!#<\ tCAFh_1n˃!>T8miINMIuqԹJA&mqVBpj~jiås9ncEg7-kPqCзU=(:2\ u}pfcصE!O9mmOa~>|"ϥ+~V_UpOӱx9>oڰ([ћnզg F+Gނ]@P*V#>xZohƓݍi!bGС LU:WP(A_-j/~öpK?ؼ&}y)D>j aC3M)'g'0C}X~b v@<\ `tK^42<:8!3r2b{c`gNbڥ,*BتеH>TUlhڭyה]nyQ0 pGSvv&hbgAym%j0׺Ydmя\W/4M\BpnUП&HE=(MYAӵc{WD){H& [HPuwY`O%\1ucΝc gH,ybW4ko[yG:„J*.::qȺj0g"4QG[+[\y |o#z~'`.QPYWnŕEZLy~QuRJ/_"vy)(Zs+ yPd"ÃWPv r؟02bURϪj j̢. 2|[Lqʽo ,>[ XrA[!3y2tz80%?]BJ`ƚ@N`5z& Z !!g-Eo M夕}Ye/u>SN {M{gu4YH#䛵%_aFs゙MdEh6@Z][xJ6ׇ>0;9G/4jl5mRMצ;uonUzO.ѻq&0"Ɋr𴡰Tʩtn'i_:v =*LJӉR#&S? S,yy/88Y;h)jQ!o]|hn]a-П0n"-0iғ*lg4Mc7.'wH꒙zJuizˆtBG`@Ȥ:[-!Zƚtq+2E$ ~J%y8O]odT'3;5 G"Xd462!Hr,/"v.DvшafoƓ ]<,0?_xi yzD2oQZ \Amn`;0 WDo\6^6H€ځf2F:3,QP\L\GQxI(hof6: >;_.߼Fvu茈ZyW|0SX3MZO!j}S\gd,@r*py.YtHѩ>V|_!N^ڥ~(SJ>*& (UzW\!_>* ߕ5wptr&w`.!fL qKaGs5w;\Zc|NJws yJ~6`q"2-y)5-+ȆSGZ Eua04F)1Fz&?k-REEC}(`j#˛;S"/?O75^ B0y@?G $pSϏ4,iY).2A13Dڰ:,HuV0GLq}J+fXhQ۸`HKf{ B*s_i "p?w[jѸ-C倕!lkf˫ɿ%:j}>1=M`n3':v}7Z3XxKA8R+*Vw3cfbRŸ`58vm8})zs^r[.YLRYYTed3SjE̪ }XaC~=g˅ `}=*q7BrW //ָ`Vp9"v9F؏\W( ) ?IykS˙Y W0^|b9|>Ϳe\D?4 ^N!,-gQGJ`$N5*}徉n3l*9͒d#rZVBn7tz`?RC+}:?I,f'cGVk`6]^VN&-x)嗄rQ P>50Ǩ@ݮsG%r`ĸŽ}C nc9Ӡ4ya4VA/{{v;K[[n#DKz+P(4>&@ϳMnb3Ը[wC pIU ڸ&1>Ҿ3+], bɆgBzߟ_9,2:-7EOQ7W? xլ k0;`a!+{2t0Ro])j -T~7̅9@? pzP?Ea,uZ46Vi _:n̨yi,dtb| v^t埄9񒭻<Z"Ja)!twi&Ы !DVR֏-4xl_xGjGs p,+^z&w-r +^ݜa3I/hd-RV>e>/uyt㠢VM?% -W8rEpr :av^݅F9"nР,J{zH#IC& Qqg[$v@i,E[c6>D06P2Ή`>A à&b$f; h?o36.3t`8o}R*I?hlcHx͚6(k;i`m3dbpl/{K|[/ B+?H\vd#C [E=E?_!7SA@YxC!yM9Cc˰9J֪JnL@}G0J\sWG8D Zæ-|J@^X_v_ɘh'27C=gI4-bM p~N4[0`Eؑ.xvցK· 3Ґե4ǫ6~>%i0o [3ٗFhZҹj#B}!kBXze.eb<voNGD̄n;xdh/EB?{ЛGJ&ƞjIJ@=˂35PO Wqǥص.^`wcq %B %?Hn{[6$8 7QdUWmG,s3E C$  ow+Kò9J_L"(?ſLBLYwㅮȃPvp%XcUK*-4}LG\8b aw;D.!n(%KRiHf Wf`sc803:268ŔɣC_\nF?P%|vܷ~NJE".7Y0ݬD"TV0A;x.?Wa q΄ŵw/^qݵ-lx) JQŤXcZ'UdP 4ԠkxJ.+{-vKҜTyl2tV&&}bj@0ɫnL=Qkc]> Z4spa7/JP*gI` tNRt#^jI?o֒6 Q5帙k!i58ffJ/wSj+ Bql_ n4 B ޙlx`@(7fHЛf} '*.\CxL/)u0 *rkQxb5M3 xqUAH!:;z@hXZkǽ]שuzFp U[T4m_}N9s}d$WQs -z"Gt|v7eP24ʊ@XG7h hr/8sq(E==*هݭj'B"@ُT N/1h2h:T~m e_ YstI×FNM1W ːPoӬMF,t;/e}7/Kdz5\d7=R U \\qV&5IRo50x}?hBPpB?:dS "B' "u{zZ#sA%ߍ0ݤ i9H`=y1%й+X"J$TI.}H>߈evX߆ou>by/\;B~sgDzWWiRnj+32~Z3?`ǔcFS5 -CB ,$\.e,^ .㺅$P+NB f;`"t-Mdj=q9Yp2VSa?ccg eZB %Jy*&1_j`~&L<E& kՃf\!g9mWssLJh%I &Pq/͘c<X̧(̈́I-P+h=DMH)Pnӗڱ ACyj Ak{A Q'ci4kh{K!9 q; {ЭlM?uv~#)(:Js#A?cam #rԦ ! #S6x{3] ~U% k*4r`!X0_'!!KIOȸ=>aUcka8;oQL7υ wأGEP'K S)y@t|r<"[&Ӿ+ľ͏c .EfŶņ ߜ̗u(XZrXGqg{z F 5җzN&(TOPKev{@,|Gqc\|jO-wd0`V0ͽڲVHIl %D.&z'SX*`fSyB+"dUM_{ܗԲ\_>IN^]s_Ŧ`3kʶwtkY.J- m(KTgE%_4vC)6 {)Cfrѝ_chql*Ӑo7>Sڨ3E~!BDI3^'[ ^)~ǘ:jƫxewY1}c2:Z`igo } A"-28kZ}&`e׎} &-Ȫ|v]{b_jz7o"Mɨ^n 7t4K CӅ&Z`>N)DONcҋ=\0]!Ͳ%WH5ԊICZq Ѫ@'=soe$>BziɵQ'EJNq[J`yŒ!ȑC?1[OmzDT|NBƌSg6}J2+eNoBnT"-e~Ru[7h8/ЗA/ JNrnBWߚ蘸:y28*5pSdw)3> `Nl̉c67r~_%rLĶWZKR!pY7nM% qY_}()Dunw隄 Z*f,# e㢌0/Κ$1J3Gjݢ7: HTSBBSD0#Q5R?tS%59m}\&΢dw(P; J&zxQthDV/;DF#mҪ p?~KAŽ'ˤ$8pGt#6Lz18o[3QX:}AׇVϻ'e7 m\dv&""+:yĶi2l K1.2dY*u-۶SK}pgsd v)9&$ G<1k\G+ܙj2!fF5б?EQC~bO<[#4ڼF%-k96} o+MrBV?bɓ\N%9'|zl<32q| }(waDt>n;%ip@ .8kjh2EtpP_ѦY+S*!YqUPDg(˦,e b9<÷L@q %wV0[ ɣPĒon܋a[br7uۑk8W8͸gWVVUpy٢DiI/t8Zxd]mT3uR=([ rކቑK ."Ȧ$R*)OS^;9h蝼Y=|]tQ>j?˜Z7 l"H@?4 ?,X;vzOuQH/H`1^Gۗ +Px*Ap_V)YQ##_DM4F&cy` q*yNo=-XS _Hrg=Ѷ[IߍâH.< U'fI+ ;]~6;Er=Ȼ?CU5BDz\|1ct$~=c鯒7v#zo* j‘^=Q:Z,n4LTO4X.9%:|9אG4 h(l||Ilڴ6Ş×fe?MV4pjQFb=H̶\>v?yϕqyLMnAJ9#P%d=#sM(OIJ{ɨ3f_8$V,v{r0kOzUyKPfheEj~K,o8z.k0q'b@ b Bi!_ME_5Gwk vϫx{UYF m&DҖݗJ,hչ}amy 6LaUr1}y `Ν:6/G47w~so}lr  [#|{$.~ˢa0K'޴J^k3)Rb ]fPPA4HA;C w-yL̘;G3#b},M`t3 c4>5uG}eD֯Nj~(stBKe\7.XoZ9$C_^> TzC1%";Vۄ(Y+"ߪW?oc_*mO}=p5pd5 MCNOqLZkj#Qk,x}h?ь̓ /'*+ Μnz噎HKshJHn.z4i# J e&.C>D]1+Yʻ#/KK'Ra)fʭ'HJ;IcƫWxIћ|,J4tu@ϮB-VbުLKI=8Z3`_FYlKLspO.,' JߠԺ X2~쮒gS]r)9f? R~|wWcd(l2,.m``UqjV[z}}*7E^d#%FdRdG6:%ʙA]D\l4{͞'(ok6 迗%+\_\\TҼƔZGh5?#vժlX֥'Z{]W i.>z_4?8;B ڗ z{#1ZV)FUaT6lE_gAM.@Oa?s,TisOXz A/ }٤rh?{7?+%i  2~CΚKPpAfՓ8حBIΑ73bDH#~?՚4*Y/{0_ee ͦΰj =7s/jӒ)kY6<} `qLo$/D_܁b)SD%\r QN)(;#R^/!' 5 tCb{2W7󖮫c.]p\_7ֆA ǡikg<NrJsw_(ȁBϺ~hEE<&)5M&;9-4xav0ϥS9.ҿb׀$Ve ),y @7vNo.ƴJz*[|?Yvx"(y}/< L]dnKh7 NrD Dk+耙474*mKw]/s42Sd<=H|BlM3O>ɗ*ɴC4Tkg)ݿ x\G;[L 0_\*6{n$"U0MiϽZKT˝ՏpqtyO],pΪ4#8'퍸FiR %0 e͜&@^>Kk0~D|1!xlg7Gd/KRrDDy go݁ǎGC4 Zp<6A 5\>2!ΏHͽ,3J~{2_/V*tMw+v_Z@{PU-30aD e*x*@o>yVD@sߝ*ɼBo;Z]Ğ3C` T2ÚJ퇗)"~={Uď.lS.4v&(˻ҕ=\:1+%ChoPiD 6;-AٻlS/B%kFUW(G|i=H}Z[B2dzq*>^9$ǿ$B{ZMɇ"lHGeSa;ͽWl*V7tszNr )$"l'иg6J02Гɓ^Ofjh@K$rIT*IC%NM(d ?E]'`C?\49?+RNQȍdLO.C~cfQ3yD1U M'\ڿ 21HRT,>Ndul\eEV0/>( 8&U|`4$QYã:w7 41hG>?MakB@~M:Q1Z21=POιco e,bSQKQh M=&xJ[[i C5MNv\`:6q+ІD]j ksMۨʜI9b&` A[P:Gf8sΪ-:HZCx{0)k p.;`6x~@4wZ9]muFZ&kHfXl]-ZvlD)q,띮=okY*Gk*{=ebYR'MZ MDyJQU+!>?ֲOl$` K55%ub IaʚrPam=_І#l}%?DE Tݡtk7-%?Į7KC7: Μ&eӻ7v&T%_ӢWՆ~ -hiFXFVY_ kB؆wg._% Ni)d*nq!x#M]mr>e?0^y!;{>yV~:~Ԥ:, R0+pJCrNQ3p%]5oCN.AD̄M#BKYqfa1T.Mz|M-}j6uӋ ~U|be^ޯ;GWAY ezr HE/bt҅^K,nfg[s~km;΢?+f$ #LpOZ ]k#kuEL7?Ye/cf x@$+i$%y,I~8%gCTR RHسC?+cmȜ=QԍA~2P~Otjύ7{&VWԜiEfRARE}Y^^-PmFɤ/svc9WOީ őTa_B@YP,ԝ0x=uN/窧RT`L6Aw0,9OVǏX_@lԐ(P ,E( L_'1nɚZzJM&ƃ,(9a!Z;#DN)nKs`-EFxopV7Z&>:=s6x+Ԗ?eԈve'ؠcѬ'^z.~VtWbC` \ k.+YX-{TZ{wD )>3jN3cP2/V nIQR7=7:%{Q`#}jQ<^(iy F&} ?5UE'Gn%Hw`!f ͙0u% s3v3}@mfr)KnIOYR;x]:A5h žEE/B LGf19=_e\pNM,Qu6٠hUʂr(T $`OeE۠ 8< 灒r-dtd]QgK~6.+{&Fj4/ ,AeXʹY{lwA'ۀ - c]~opdCѶl"Y { 䥛 >3\;QB0r=x1m+]Ń1,'3# 5D!l2YKGWr(Օ)# :Yf%M<2VƢ޾Cݠ UլF qz ~7\nDbmeo%L)Lwn`' FWhVPÁԬ!כ6;N%ƉsZߨT*OslΟ}"ʌr`>-ޕ(wa5FQ>`Xr׷P 4`o[:oF+b|$ת (>w9 jMP;C s K#g%wT)OOL?0 <-wZh-IIZ/MYK )e) >L*2%>7sDomd@UYjfKM>u=< Rnzd]^1"q7` v <#vD(7쉓CYctY8ho8 ( +$s<1o_+3R:᎚]:Bi3 * ?uy]XWPޝ^bɢ]ۯ+c31I B(:J4|; [9$fuSyU>z.ĨXs'MB5 z Sds eX Iǀ!Ъ mPj4nd߹zEհh\h{3Q#M] a9twVQh_+cq7𚊳AvIDUәy mxv4ﲲ;ae1WDR0 ;d@. {K'{c]q6-9*P%ɨV'k6Xc&E{̗6TK0lB  8{bҡ_Pvצ]|ULcgՑh!80gNQdRљ?J܇JX=]spk6+j%(JEO1TAư?YG/7%kCR`RAYRX@))v%6-&h*moFz ڜV1?P_) j)r JH{WlL]roI=cPOoܬFBZ5j.6h}?Bi:0 bTaQ L xv{`r?J3  m 砪R_p tw9b•uy=ĊQ?{ƃwA(r>Q $ 觵c9hZB^;pWnl&"F Q y1__QuSmŘ9F"ZPk,5H[׫$qgx{Nqc.߆==Jcbu_uzݔN5x9ZaWuK`[aQ??%,Vdz<:CU2m.v 4RPvpmt^K,J.!R+-a5μ q#{/_|}r_E?qwQ9Bs)>bь~|Zn/>R1ftcj&e~DE%FR8MR~y)NvEdDZ3RVkvA#ᖝ4dsFYU;σXȺwیlI%XۜLEwLU1Ae A+ 'VՈZº^FA@+ڧ֮ofQU\U @V0uX5D*jQupN-gAF]z?)9ca"IKv|9 ۤuG4 2tNlJݡ9>ܜn8Zv8)=u۞DC8ֆ.{z/2T(Xt9NFS(Q*Nc. u1uFVН3ŵ}/=lPH`tYe`G Z :յHb$݈L.IY  I]`ǏcDw~X4+2TfmeaK5"G"5N01k'9f(E o]\Ү$XddIP0;Ue+.ޑ&,0;;'ҀfXkoYDdkܠ{+|_6(%4Cܟ_d29Gpa&k)t/y\_/Nugɂ+63Iq-פdحŰ3^(>E `e FP@R'_?ҶHVG=~ar&moKJ" .4o dkv]0Lܧ16JԿ&D } :6Gj`K(@U5,W5LO~FP".s~iInMNeޤS)Y9ׄƈ}V.=AԠ^N4q,&7#+_F^P ዚ;Y5O@Zd_]X69k.n\ l}^|)ن]qW.5Nomӿz1 iس OxC6!Jbu3¥ 3cT$d~9Uy9TY_6Y:zBf޶~s ɦ^RF78>-V7f'3 NLzdvod$U3o0O< n p\7SE6o)OuF:*"B9SȺ7nwkK@1csFr^>PdDv7}vw藕 -|'BHַ3]@c䑨G>'jdcN8ش--ٰL&$/Sf uN[p5="Ū)mSKYF.Ar9^M@Q"Rʛ⪼zH:k7iS]*˺$VpC /rrWlHiW 5"VPfU6S^pM_%+ts5RX0CtxcΛC#I=*fjmT5: )WA4,9c.F -.z]6%-,!y.ZvE.9i${wly #bNKFwfijeX8B| =K%WXY&!KOj UAb n3$R҂vG!@Uo7QͼABUL@OgT[ŵOQ)!vD&;U-Hneq3: @g[p$>k>rGR]匿z +P< 8˅#:(W/pBKBy KXP#-)3GhJ },Av[S=iZw-\YeE4ۣ݀c!}^md̷;x "kGfo.Ca0ȡ,qu(˷FpD3. <[w'Re;yV7Ψȴ[Qy:sz~LWxy&aSāe; I @0j H!;A";io1|a^%:P%y(J'M|)P{eZpADp,HXro]aA"񀿬^?dB4ɋPN/8&m}0b 3?+a噸cBhe5G ץ67 f C#0d˙6O%B +b8x6(3ի3ÂG3b뒫l0K]~.*f5K?xo5hHQdl ]QIh-=DܨsTsȳ OEieJ|vIX" sDB*:.1mx͂;?zl,^X =VVCpz:U<~)R}F\U cJ1|r$*sw.d>lmI@P@pZLy1Sy]>RݏmZP)w*MGyKKe-t1GN5Ѩ;vYO* fbYbW*i}3O{[z-(x @%QmJ BL \T>D>hܬf$2'ĉ9li=)9kWWlUp~R+d-xNcFLpX%gҦ=ZyujX]dŖDnwT=m J[FiILEDI8 tD!sY.+\72$_.' 5ESúg̲Ƶxg-iǑa+R')|,f Ntr>\iZtY+uTjf9,X m:I&j?K)1ZS ׇ͉'Eu_*fDP ^5w'\x$B~H4U:eP\~+zeljFO-[E _#!9qHZF;^7+EeZ1%([C`Q ;ݒz-ZP6h|%ld@0WπL#o/%nYn>Yz0+khdWFAgZFinc7emaVFy,QQ=Fק4gnE ~D$xN}WS8.§@ԝs7dᇓ! lgwlfrNu]=t/l-EQ?ZEFM2X:54rڷ}l-p^K !8dOt{u}0TcN=+eM3T 5%z麜8^oha^~=OXq= 2- hˇj oA}muGZu="-U0"mm+&*&h ?0Rl 5ޱ:j 0هG.KDg8nJOCB!~ +'Z[U! XYn鿴<ha̓Z98xOAĭC݆T{*j5&]ϸ HPk$$oY i?ETU~yPQS6 5wݶ 0XLލrv>ԻvvUԱyըPy[-Pة@ɻ )!:3uȓ'$"F# nݼįk 85E 8f(-xPңequdBM9~\L7>Ꙙ*D;H~ă{7ݡ .B*™7v^2GXРi}pbVzq`QU!|tģ$={ݓ zEg 3hn޾[hm(:ՃhQ=-צzu9@hiJs1 Ib4bUH1ԴR{AJ)9K!&q6 r}Sgиt֋x8b n+긖&}iI x|nYO@ӔHx/ur8_ ݮa?SSBܙ$6Z6b j/V['?G}U2g˄5IW/|#bV*!;xʌ{ZS(!Vj&\*@x!sAӜ2d깘V-|>0jB%=Ρ8Wy k4#^]6|e>#ʙ쭆C'&Qf*kjF`@]FÓ%z_-e;"=2[ G*YIRzlfF$9' '7_t/<-wAr!JhX$z'_m,e7 o!P皯߫C Bu갨z|P.b (YSPҢ z gSZ 1vgh+ޫ_HA4M#CDCG).aHQD<}P Ss>ڔY6b2}aˮ7Ȱ0Aj)٧F٦ϩތMF TM~fG'C^y^aB Ÿk))R8[V>[hvF 22Yԑpf҄ J#CM0Qv}p:b4 /'B whk|TxckyW. ,K}Fa}#qksךv:xYθʾNR="x۸ ~e#I(, ̈́Z/fPElȶL N~$+2z?J]8D+HGC?QW0u. ;=<WDur?gJ!@2fٓBna$)uWVVm}R ZǞf "#rJxk3*?-옺F]!GƜ֢v:U!lHZWeKkOCmQ)xз:qe07HÂ#'ח,:McL);) 4l9CK.O0sKhmA_W`C`&[a1e\KXhtG34\p9A*t2FpZ &Y44.%b jqAgY0900hjxͮ$]"1޵dv}b[s4yf(߲۴N2Ń-<ȗ}?RiT> `vm ͢m"[*ʪִLib_h/Zӳ :2^3!56rr]rU h޿OC[e*W ȀuӀ[DJ$j qLs]Q) _$'w PHY?gēe2|e记a\ <7*pIJE|A y=e`b.n'x cq3r?Brs!C͛4)UtAܔ()4\$8uB?/>" DT7#|tK1.hTXu-"b*w뉼u#60;2J8dsEkA7c>i$jCrworf <OG#bn0NJM %_hdnk)i.׽G,qJUBy8IiypO!F9Z_4|aѡbBOHdeVr!Kc>87Qe1!P)cKG_FTԃ]W3 DQ0z<%/X]@+Uj fڅ<UZ~OhWQJȿIWуgߤ[~Qe%SMgrw>*'b8/3@LdɄ]%}n0]I6w  zE9B 1f8 UէUۗaJ mu| @wT]E" ̨WbݞtQe7njw%)*# \JPZ[_c{ɻxTڪD*PΰJN釔V9j.(QA4ba3ݲ[?j8杆ŽNv d|_F?n"ŝ*]8o=~&t!ŢOu<$J#cݢ:6aZp&4[7b6 *s+eϡ11koJe IWwuQ=Q7*(gI eZÅ TW)s-*MHlǺi86VϚtj/vW6@'>>Wά~$t1%Y{Us2EyjYT hH$VgVMWAIw4J\oMi<~ f@4&OePf) 'Bi9o>:h#G- EBL5n@@ OFU@D>u7F3[E-8vr&wO)B?q\ˊ,W̡ .$!xsjbR  *O5}̂MF^]ہA{a GwhBc|&×:7i!|*~u+n4`% a0̂ձ?J-d+>!'@4#{S´h}&hM+#F21elHܩP2ى8 oD]xA5ύFZxP) ɭרkvҷ5dz8Wi2(Nۭl`@i [{Cb>Ke..t\24)Lk7 -nf/= NjHVB،4}QݿsU5sSGtl @e>2v +夛'jSY|_!>,؈Shĵ\fH$M!#U@P$3: ;o'YU6S*4洌3\FAՍrs?gJw@%AJ`qa~׊aFQxj@hCK3+?% ^4N1S3C‡4, ; igs·n Xlj JEZlabBJёL1P; s fS}W[Ed'epgrQuMd ,c@Ar~@+MR 9{Q +@o`wq}2k\O]o>;gzrT瀺10\kԅsfD "ؼޙ21;oHǟVѕlpgMP)M]to*$ez>+hjjGBĝKփ,UEO 2}19ݷTM1dbQuT^mm:L65j25C1~BY: $8,x{wK+>Mry{$^{KFj=O|Q%alPy86H{X}Pƙ\}hK/|fmzPy)<쵌'v -% ?ފ`lݳͪOm_gPڪƿIXۄGl6$dK 0oq6򵺄i1/L^΂i3ǐf# }|8>Rz|{vZ8i.d(K'C&\.T@r&]YMe8-^4^tNn@D&YSΤK޺ %d*, hryTc7jOBdܪn -¬&H맍FSY:>AYڂ{IN=cxR O8Uqpo%2hKԔdZQME)Ҵh85Qe`;4ǖh m܎wЅ,8Q3eg\4iKa×)Q~̯ABb3ջ1[Tsf|)= YBiߙ+CG`E|BN3vW|,w|t,2DTMtp~wK:;q~ӽ1&gvQ.Z_|Ы>ȿGӄ `3NӦw _@cp{}qXLkß1fyNL(RMouH3LF@0}] zG~&Rݦ%S7ɣ \ f :^ΐveo*t=a-OY`R#[l),f;xʽwkXìѬ}m9~&1++!fMQ|޸`n^L#O?ք&>+ 2d z_ v*F5~ہ+mT ^sAZJ_)m7+z| joy3U&iX&wi6,q ^2WOk輝P1H;sXcN2w.r yBΖJCAۢ_aqΑ}LUII~L\pۡ!Bȍ@q#})QLh3>'*QH){ofj׺>qf5\%F{At]Uoah 8L蚂_LA5 ;( ňJX>sn WMlFP*_V> NR U{+ԍ2-:x_FI|fˋRH+܌&v:pKRl2vF߄εwMmZi )AVgj PQI)\4Gk}.4P8oRC^3O=:pYUj DޯJ A;5a/3Pʵmz+JYT9g;VMԺA*\B[K#&a׉]=#O'ma= P <{LgyЭTndNӞosJ~c猛21j4 nm)FR]g!aAXapHmkb.s)g|sx& #À_EPq\G6_zk+ .^Lu,@]Io:VP_] eOQ/H<$D3nm5W+Xmjy"D)vqT=F-8P_d6cї'bwS<|14ZVt_3#Ck])Z̫;<ڧH+QpPP4CMv3+$^alxIY%JJp]w UUI 7]Sg`υs;a2@T ?rJ9 q/6ZceSa'@}h!5YB{)ﲢx=jwG85͚) L.7)H3en'x`Qt lgg7l2fv4M]J>,̌X{HWK9EYtMrG;ElŴ53h@o5 E 凩pIPΑ`f.ĝG$J1m9DL3"Tv\ InռZn5?v8U oCؽCA. e0TBz톏H܄W[my>Mį8X_]3{A*k M=a1MWڟud+uZQǮ?^V_&kuC=- Ʃ(\/RRq`l![ e;Ŋ̣H S"*9+#cdhbPoohd  y.Ħ.j5zGBʍ]77zrxhtOX|u K ()-<]ߏeI@z 8;5%Pǥ[\(eKb}uzc{|4TǕ֊sQM n.X~Np X #pV/Jӎgd8SMFKN7,X=4O3 w.aЌPEUſp8!UQGM8kIF6G#y>qGzpi3tܱśxpe|V$:9ss;whQ 6txnX=ׅ, \ /{F2ӭ]}YWfgDUa`5:,>?]_8[u͠M fo5P$Lk{qk_9- F; 1rSsb #R#H ҹ;bs:(w.# H],S9WS 1thQ79\ۗdUlvd5_" nhZfu>[3A@$'P5ii:%9U}ٓ;-A{}1y]~O[Q=aBkŀF ,*nWgZu)sfIQ$|u)a..$Anog7c캴]&b榆>-F Cܽlʽ@BP(ѝsiZ4E$qDSGc}rgu?b~]4kn^r³j`343ꥧo-efRR -Z5셼nK|W|hd$jk})IJ|<@厗OHgck4C;;/3_Afiww iX ;q`ц ^|.]S>,f$ u]uX3EnjDyц3cG!gRF}̡X*PZVJ̑<0!| ])fmjP, oj'"M7ؘ)ޫXx ®ܟD04ZW6Ӏ`U{ \MwBCNݳk4Lg|-h.6 -Rxrۿ/!_nQJ!uSg!Gn5[ᬉGy8$GW+oa%i镃S9ǔ|''ԻʪUy~߼0%Sz|23Y>]lG1~9%am+D1l/ fZJX|X*i [_㩭n7hqORO4t$}>6Nߤi<пL%%7m=gQA-MZǘIomm]YpF+J'JlBh޿mhÜͭK1S>Ǔ&^gƑq)׭E|*wښ$9\HIȻD2pɕ3: dY)0:|W @{ȻIMHa6vsDqʀYz4sC2bc?2 f4Y956;1QmK|K1cj|rD_ƍD>[7ځ[56nGSDA2cyU$ LCR#$MqX5vuԮ5 T-i+eC XnEae]XgФ+%'KDAgde @*U͖34 O4j$U<А+#DzICxD:aB*aͶ$TL-!USc)>} Qted[ 2l~_/F_107gS6?MC./?1Β%e+7lp#u.Y>ąE:GaЏ^]@7Xfwz㺏Ȓ}.Id!u\iS% FyOoϤƅ_ 5C4e5Q-<]Aۗ)CFkAzG࿦K@f [ezH[7N$$%#Yiz檠I<.p'9[HXr^ǸRHó]t?63')y9 BlN@x fkgԞϱ.tε7z?}GӒQc؆*O9ceZN+e4T@00ho-WBzF6Cjg:m,A5:2]fi:6;0| V;VzSN7y~$B-ŋM .4"d Ql%[.>uK[d ]UXҎt>pvw a)CYJg\P';t{5Ba\7`wݘrYOn?ĸ~)l hYTY./!Aw$*:쓅c%:Keiβ(~̸w9X &{qL?mmkߩ pqKs^G'Nq%kt}JRAl*nd仺革g*z0&sV7GVro]fm_ۓq^$<s4#C–p"I{m$(f*Y@Ma på!#Ĕt̓*Mp0j;{ڌaF5 @#&wد;8UP},_AOCXIxv5yFLYo8AM˜s%!No3zX%|u d&.T.+9RvӮ-.|SRHvÂ6)7uj'<[ irMrAC^9>FX[%n ZGl## 8.O&3O΁t{ tL# 0Nx2>/٣m؀ a2H2!4iQXRX-K`O>mHj[HG&cGajKU' 갤Aጣ8BX(h $kQ'wzfryID 5y66$JMwnb?%S<BWoV] &&$==w(h(|u kR}Kd屛5<宊$ g #rqInw(F`#P̪zռlG)( άyw1݂R#Rk ե/"V?yi";U]+R4eaS\}gp K:w?(W◀KBCeMa"ڲ=3eZciMbVuxnbckW&PC//T$<2^d֊o]Hnx;A 7q`pL܃Ҽ)ɷ"[pjnqVO`XJE ]ɲbk.K乹jҔUw9GNRwuƂ*f\a,cf^ q` lP iiH ׼&A{APӫ,'ݞ8lPt}Bյ7mV$M2b:>oP<Šo2;im:O-n[7^v Ƙ)ɯI/ёA;&OQ?*os-}$mA=DᬷPxwǔn ⅋wd &hs )NXYRr06k*{*DV!v8C>6$fu`ۃd4ȴҕk4'X09>l?py*8*dwG@+{b%q(L6؝sDf[|v!w@]~.h(S ׺qDQȩiPa7ް;Lz՝%]Ta ZjqR-E$[[A?~%vƨ(7 e{=E鵝n"-S^n0ѩ"ILKPTI,cհhЋ xFk0wiSyD{m}'1,5mX;SVbG 8Bh+ -8=WM6~ *pDn |Ym-&6kؚ\]~˴0xUBaɯ%^h{ N2! Y`JAM@)*][z6>*L  ltxdG<{2oI˂0 % qB?l6]9R昁eաf>$R]"د|_ѻuմ4z5%d>"ӥ,ʵ|xAza/b-/rlhJNǻ*s7qԹDzֵ\s_vjjnJj.J(٦b*0n'raB6ur;ďIݠ2W\ƌf8闸Z'8b7C shY>QBB u&3(lϵ+mL(qᯞ{z%ka\..U ,WsO!QZ,o)%,u:),hMʼ8Hyة}r4!:&̍F ^RcN egmG E=9%M2 7{vUQ5'ӸkC z1{'"OQ'<]KwL裆9P`AFvUL L\hbEڡ? 'zJD9hs}=%sY`U1ǥ&qCuA!\Uŗyτ|-kDb}10b_Y"Q29#LIStA9Z]:%`" ({CP \S-| {acZcw:ߣCvbFaǹyp{zk.?3_ 3sY&+4̙v{+H#Z4-!SC%66N>tf7O=}pEKְ.HƎafqY%WM{vyW5}-K^A8+Tc'ϗ?"}V Kwwnњ˃jM'fRo8bZ4uTH VeY]y9,'p}BLl {x bC?)턦Rgq/j e3 n =7MTW$ǯa= 'VZ/},bU@\Ll"# CN=a2I8Goo ލIʍL bOmTҌ<% kV3.gLSyqm,7"j,akLz9ք˰ ܂Ekk ?Io\!t [Y>2([ [\ݩew@ yjZl[YY?!,HַCn*|zd܊N9PiJ%ngI0&38c4m;G>PHn )|F!\$L84P0m7G՜6?Doz! Z}س%ﻷEƦˆRcFcRڰ9-*\M|Kab#ȮQ-^gZwSgr#a"eC.lXÎ RPeoxY}| 'm[!H!16W%O<e"I'jzPi@ ECHǭ~$uJjB}-5ms~H"c8adU>ypˋ6`N(ٖten%w*8Ҏ'?9ϹHgUTr8){ӳ ~fBj0Ęwj2ew7K Sx=gtV RsDm4wҤѝ<5 Rz^ꚤjԼ{ሪ{o/!UA~*dٹK>ߩ\82}N, .C E r(#"^YdM-z5?tc]zpx>{: :l2WO!.P;3l=խȨbB $X( 8In33Jx x2j$c 3<,k-R+5!jarJߕq(fQe"~*D (`e%[ynIEY& t1^ucc`#7/:u"JrJ9$gQCX.%*)˽|"qg"^U猷^M` is d}vffȧ<q)TUGr&>pڅd|ͯ7IvSn!RZɳC ﻒN=B۳MIOH$+p)3ߍgrpb)am+O>)yf*C )rG& mo%4@.ǡ"=S/5 'W(bEP:KiKUYN-Ih+]I`w 5-O]T0 4.H})0gNJWd6q#."*K{RڵY|S\+U- 62EIw!?:sO ZgUVxb6+ZLཊ1o\4{X~בgHT5\a<VSk=b':HM`XM+2Vlh&E8iu A/j0:hMP5&c;ha;+<ŧP%>ӏuKJvn.5z׹E xldt>=-hW&] /S\yZWBF0gdI,ިٻq@ ?Bȫ=n[ԓtLϦ.])62f.]'1n$tʰqcxaS:݇oCx\ "A):4TE1\j!iC (Mٺ7GĻNe^hn13UKo^+*^pEt>{]mዖ_ tkt&jwd?w@Mc !d>Q6"W/i8N6qUu%{a'5l^->%uDc[@E,YHp~Ry϶"ƘXԏDt =Jl޼lU&hNc13 ~ZG 0:&JyOY"+e6oᇶ;  G |'YGzrGZ iϚ|W s/:%rْ-7rBE'j L50u7{\q!VңtבAF)O?O&e ~)>k,Ӯ@  C"W_̃i8(^q*){1lV$JWD&/<>tÖ?S,a5\ ϵHGx")*6^F&E9{;8m*cO){uƊEș٥ 9D\IZj}bY"!=dt%G#]nL-W 4iHIKAq>0DJ;34^}MX__ig|ײІxM*QeP9;54U~3`1T蒠O-H2 2{3isѰvVMS*rl?zlkI\x`0MT$Ec},k< Pl3Si%6 W1M폙x佗7K}ͽÚ$idHѓvtJ=G51J-RT7 ]NJZrB p05;&1mrNtUnW [ӑtӡBU2Y TooEe>j`ƫHٓJK{WIuyE4ee-gC@ëR^@/^/^l? E| ifKs̎ɲT=ʄ}QJyW]^8FݺMaZ=-3kmT{%JM{C ,=̰hzhO,ն%LYAΆA6c~`eS~_Kcc$ECOB~7x .&I.\ KR9CMI΋Q|Seb+&XGxcpv/ YT $]ٌ.dzƏT@c-Lf2_v/zbQ1|S ȵ4W_n~D9E4§3| r,=cm__V";фQP]bۭ}%F$iM?zk'30]X%װ8N'ُNk[ DdXB|̊5.q"\;)ш 5s>ZbRAn7ܦHJG6*CfTՍقdx+ | 6#ÙI[ʳùDE?фS#d]b=Q+2$G a.);BѬKWYx%3aP6$ͷj:tn^ZP?[2yGuO;Yَ^f*:ul)BHo'ƹ!#ΉW %?ti{+鍙Jt>+kEbZ Z;{W/+]ѡiB\`ϵ5)8s^n6C .zW{Ƨ6HngCEЯ@o:zt1&h!uHHha:ʹuYYG_l݌ D/5=&ȑƯ8``ݠ5gd RNiTFP\CDm"xCTG'f騕LGe>[#R>)!RͯzV( qC.l]4 7 2%ndapA =aÃ\lB-ǯYx4|nl ;֡v,hgb:`L\14kl3$ %gՇBcJ"kv /RN79Z1aXٙބI [߄G2\XGLhH}l *,M#kjN^n e}^ ˿6PWYګj'?U_~_9\]-Nje--4™@0uH]oiBv Ȳ]{*=[Ûq&Kz|EtSKd|CB{ƹYoA}ЫFc{Zy]o׈-VH 3"<0K!usB|3yV@*eį[r<уHHn`x 2eS@`VOvEk$TY6E/oeCQy} x ۤ|Gb0lؒ-XzyFR4I~w Sd Mt31:ŚN o%|%|/1v݉J}ÄBgrU[БcFz8h2O㟳Z'qrf.W^_o3ӗaouKn9#zn4DN"<^txͩ6p:\&\hֽ6$);F w`VbZfyxwދ'@, 9#hc8\9+FjCYJG<ÅJP&`O'>h~8಍mP-,92 GGq:?>F|G9Q_mE!>ћay i,A*< T~Ϟďi z> ]3ӦA DV^2Su+.)w.a,R Kԧ)\bG&YYnSVT^}]jMP SE SP;;u<8v3_+z{{-OhE%Z(֟ g4ΗT~X qM*J ĩveUH:~6ר7.wbNٱp)| $A_}Ւ-e 0U|n'Aڋe-!rՄ R;0JD7H^z8NP]}yCET4Nooذug&TjLKt~7?Aʹ/ْi1K4ڬz?]U>[$+Xբ/uO<2ފXo1[u+rՃ r,zAp|6^4:^Stpva#yL12 k H7s%C1H5,y(}~:Ǟ#~g^nY )Y1~Dݏq^*09l&z/.?7d4*oB\4Sy&E.-Z PDtP(dn;̇$GJ K$4TK3\WySev6m, 3ArA/C ]'"<`JGnOl@:c5!Q-=Gh|w:lڇX(HCZ ] Z1m<Mč'dg4MVzB5#NhfM3,O3^ YBN 9kt Ӫŕ4-nJ+uY-HC*KDmhr<Ej2ZjCmM K^3'E }t`4 e@rt5]%C+^*#ĕ5]؍(h)Bb+cD=Ԕh_BT/Wjx|4ƃeEp1Nزgj %5|j{=Fq,NjV֊IL{R7޲~9a+ 4cl$L8zuebc?yP?:.b?@bOj;m G][o&[O5B#^S{JSEA'9+kc2ްޫp8B Y~/6ɫȭ A5ښJl=V酈,:& [, 5Y-:˱>zJTrX]0\Bl"I;g&9S/y ;\^rPY^C` y!mW31gNG+ۜˊSY"Α##/YZoasҥr@N|ODCF'ȫpm(^}#Hcd7٥coI0a0"G;4ӭ>b&Vؼ[MrkA'KPH},m1l򼰨: !W+=_C)ߢr.l4Kxe^U{9kp׌z`>'!8 l^G[AoK|ecBlEW5aHnjjXS(t@?X.*v柒Bt;\K];@( u4xE7ireu{0J_I!!曙 ʂ#$FTKX|&,T1$Fp@ ؿښ[D1_h#j ^fBK-62=nP,\HmҾ `ӍjXOB6񰌧xȲ)l/{~Bx744YJ7PڄGE٣+ȲS` S%Bs\nFy' U͠>ZUqU8HK}X\l;N^0Q+UБݫ!;o\AkL. >O`Ͻi$8z}wr?/ kxpAc# XJ)rIi¤/-8QyT k{IwnL'U<o0ztu؎ސc?*Ot0u=X QpB@1!GZ%k}oRͩ~B?[] "+@ì5ybPtQZ4y7?wW(ק;Ko f׌ªi~AfٗxG8֐r?n9yl"k̮1)XQO*K(TgX9|:[-_ ץxJˑ..}VmE%'щo{GhVy6Ԓ涗h;dgEAHL(vc/A'i^A38ItfʹxQN~eg e"Gv;}#G_=R-K1e9ʹx3W=㚯% spr{Ċ1? Jٲ/_G'Lsog~s^)A yBϐ4o: -Ε_֍o=RVqsJxM}RtF]%Noj*"Q|\/nr]ɔvRVLKq)v[(_YyEw41jTeeڿ]rݧY\# lELx33[bE !\kҼё&bAsS8;mr#iVlm\8eꃕǧt=Oz{.DvfD<m'`p.ׅĸ&Rk0Ea)ܛt2 *u"zvYzqvdEB-Z$ײoxAyeTMZ8>*㡃gd:6#٥Ux'FTb!8t\.q @ 9ߥe*eKn5^x8 Him ZכfeWküPD"Y9:%ı7b]R/eOChbє8I5/;r8M;u1F4? rt Y1T\,@̻::\Y.R6>`>Wz6K(T4F2EQeΆޜKuG6҄"ok}yN$@"(6U&9UP C4n%2]/2iY3(L(#LE՛uhtW半XWyfzͭ)RtMX!0đO 3'Kcpi NQu/IKR̥jk<&RQISĊb+zvU6 A,˓ssʧ)|o": RGkbrV.(9rr^6\gwW$c]Fq!E& sW ;L.07`&\ݦ6徜ه4f&C&#Sc J!2pW姵wWEΞU91&sLb}\52ܽ9`"JasƗfvSd}9}/,Sʤn#%m9z=zCYYUbӘxu9ߔdĦٔ\ف1Ի'.,hg,G's?|l Jr}VHJeylEs0AdyHQVV,ڬ9GHۥvaDqZW ԲΥh Mꑴ_}֐z>!%Saz{>z]m;eP s0y݆3nwL 6wuZ_X1 ?pGl_/@ gTwz9PQ!TI'T,XI=(֜ԁ*p#ä disSE['dU3BBާ}>i_ 5 1u?Olb):+aot鰯~Ft O;8qJN&O{ϧfUw+b71͛N2ImI04?E]@oLh'*wA7,lKen%o-Nw 7jb밟j Ф9/{Q$},s o 46=Z5j!T!kUSJ_×ÌC`2WÀI|K+-SR-ݕe:Xi9e6` [`HTP*["PWU|eլ)ܾ4']Z ?VtًKx7R*+SNcG!!@r6v'2']A!N*@t2X5Y L ?EgW: fo`0qCn,GAF1Am]L1;Ee\){W ܜë'hjc'HxL`Md58ʥd~ƒ;T@ߦs@i5n!+`= ڞ9$θY6|:E?mptɉ(Zt~YhPsA?s tܹn[rX&vTb[ %=ғD}g$F/J T{݈n?\IxQNc~rn#Pꠎ[84Ht:`:->gJ 5%i9L)}ש-yY{Qp+T@;4A6FԅFDj`x|7@p) MRwߞ׊5eXk>aWHT,QgĽ½8k5Sk&ň!XrUTZ~u,!4vK3>?/45TCm,S)*l?s0dά'&xJ Ɛ=MRb0`:Ev(vՄg?EaI'෤m$Fr/3VS6qq,6 re ;@_ʳ~HV.'(Z(!]BF?_J wRDfAe*zyE=sp6^>#jJO&ħQul PXѯo(Q}tO1HmY0gmT7Z9x_~c9'pyp=DǭMl`H$r&|.Uۨ RBڣoYG][UD\/~N|3*qYy}#>?9yip#HFlĄtfe\nv-m@|`&>W9ypbCcV `*rEUu⢻ѯ Re=l!uAܚ9tZ/S^ʇ8Vs=F#EDE ik3G\,qXw`vC>jwg VR.|V$[Z#^Hkr&Ԡ7]? S$'Zf? }o؏dK2+:"W|w7}C SA->6@"Ng`^ԑ}@vm& [*hT:&GW Mn}'VB<3Y-Z⁠٩9^qtZ9މEH 9.K rW U/XrR8H7Z` Y' YXve x+0VqWYtt,_l:Uƫ NCJ9pjb޵"}Y5>l&jӚly⁞ґg#&pXv7ZтUp$:5&6+)Zp3nu!&No?AMQm@P _YU&YSEP:ߩL$U9 ±UhfAp>ut)6v@-\CC e^'5Η^5`Lߩ&@Lj)ek"I6 j{H -<g1;ӆF3~A\C ۹зolbA/uM5}aߋ afT&nѠy,hg*5 uU[i} ʉcR,F+sd?ng D2aj]eXpg<;հuq, Je(Yd |D!?&> X W3-c>-}t\o$V'M=Y_Yd۽dqRS-v ]ՠY}EIM s~1әiQq1]i"CM<"ˈ_6Ӱ̇ 0ίW'? rjgշ2J+꺷Ő"iDe$l14COԦ'\ ץcg,q:$QG?eؾȉ"-[uiV/h(0r.9Tn}w%"I :=wwEwv|s!$˹90[ȤTx%jCK5QtCkPWɑ^d .ђ;a 5pHN`S\Iɟ<)}J1{LXޛCfd(>Y:3ʋ>7\xwk2@a|&tL DRѻ"㲆zP??^N؁4˖=V>ܳ\U-`ߥ쇪w2@w8EĬ kLwBs [T(šLРgͮ:->RC@^~ X1|=܃l Bhw} V z'/Bb/g<%?oeXvq->$tgO`{QґSlCA>#sm#8R&)"}E+a| Jh&[|N0XY1" ScnŤ :fA " >`qsbze?H$#MO,[ ˪> o;׭%s~7\N7l̡[?m ȅĶgݽU+bv䁰f6#n=qD{z=K). &L)8:92g3@;qtiyGnyle3c]#]P=PmF{Fm;]]ik1%EжJKUI5Ǯ~F!WMhFp߁L u U>e]V PV6n˨D˖EZqli@.tSmq-^|:BK.:)f& ^iSv;8P׷'"8MgFOj ]]ϊ(kD=dŊc;?XqiFe`&Om1#2 t{Us9Ա@8mgYs:CD 6K%:oO MFؤ"h>"  ZyDK$! _|E X#VSZ#]ȝ8u#r0,\'&b9k3WL4A(sDkg%^JP@#xuUTgeB_+}jidnce!_q\Ǔ \ߵ2[sV [i`/b$Dh6%T\W{MuZ6iOG^؝z}) v/ݍ @Υ -~YFxkr8QWsLJ{wŢKKJٸ*%Dw6RLpmt+=*MÍ-obbQW}DRX8ƓxXj&)O6g1ߑtB*AP@|8 Eu 2OTFlb+ey!=QKn`X=7ޓ{wWIGyׯ?}FI25su Qq\FpW X-Mb<:NU_5pv//kѮfBse&?ձjb /T/i6%3sP?ti_ϑݻ#n?+HJAf5/Dd<8&?+L,G$Y1\_1Ghf|^c{,<뾀5*"1Qt\e׎ wiѕUc?5n> |+ ÛSo$:DA7!!#Rf'r֕UmAfwBt!juu@ %r:u?l?KO !y kӷۈ*D^>h݋Tӵ. {vGA0D%xrW`ac<˪»?&Q AZN[eD=ͼq ._V\WU)B!Q}1/*xl-/R'{d.-7pQƌ 5C^C qxYLHt)ЛPCxF^wn=*=4A:=:c3 7"r[Q>?* _kVy/UM[N%hXgi<8%whguOfo;e2xYs%cdl 1} Ϧ ?8ԪTҬl_ -Ruo,tӞe'S'-'|1Y$% A[} !*1ۧ8Q*[ 2߇Nc([JnYN?SƑgc-ڄFL۟|(Ȱm\<3G0C}UNҲE oM*ɢ?Mmt%jM7' !߰É `9zFAlkjv\!.7"5tc;.mԳﲲ8{ا)B#YṯXk[b)#lz|̛UϬ"kzZ #+W|.ZD׹5E⧽dlJ~js^Ɖt/YXPD$>ajC&c;, u+2QJoUD*a0Λ+66ɃQHd}/@|T 2=4VNB9ʶ_e!>I#ƱNMW#4j#~,EӀ U옥;[?&M?t.Ë4Ӯ>$t/kQx  ٘ԧ&~ i;hD A5\hYW:O~O*kCq̓;- ZOra<\"V%R^ӑ)lo0Jn1o_+C T}C>`hHhS!7WoTgyˀx-H4 =yKXf599,3HګL3q]H ܟBJ^Gcg ;ScΟ-X@Y=?deW:c+#"f?32$Ʈ' FQwDYLKcÃ*}~'~D YA娝F Cab"i"➬+na&b)) TwR[ @dP׶W>}%GO&Yu`I.̶e)^Bx+6z5Qzة_!Cq<2D^=47v?ulpC%("p4L{[zxPC1LFI:vuro04&/jeI 9nW1˾nMz}Ts(mP | 0 --j+ sʋGJE1'>Qo VL,ʮa"L |?ЈvBBK >}F~gު҇.-C E|NW-Z1,%N 'tPM:[<cֶK#^ "vvUDW'̭&K1daLJp AkƆo`H \wݮQukGͧ=yȪeu;TxbY2=iԯS ~81`as$8VO3-luk"GaKZj7rk4yȎ5w xa3'a+I>X=~ii/$F%/Roчrw>G>F%CL.y L] UHu(€Ţ+.i Rx64Xk\IE vO>JV*`X N1`|)D.zDqřMﮗ v%& amR3\RvsRKupqz(X7G|_p&ʇ[~3I6")"rDNz#V5AzA3>(ld huO~BUbί@_q0`8R o(Uf>du""UJS~l42TV_!T5I G"yX_4%u (#&1#~C!ci#^aɺ;K^b@'ƚCAdZSRxe<]]G|N*Ջ MU&\g-5\Hz/ tiA>EVx &eoH+]0.)6Jt Ϲ`z/T.ESVsZ"~q[a_4mir=nĉ]T2&ɵ `ߥ-H2beW+ 宸p g~gQe3ş!S\ޭ^2&*mx._n$nt_@f]IPԛC]l>m|::L9L&(a"%gm2ȵǯP,=7 .nTEXw d6Ay+$~(.F7mrci 2񰱴f>G ?\eZ 9uY39/J<`GB,7 BNUzd4L2nG?v.Psɚ+1bGB,,߉b0H*5äBqQ)I(5Ж,}J\pOl63Q*tV$NQLm0"0Z"l_W=Vsg+lMj`f:t/ hpA ,f8^P(/p5sR9R\_t\i?z?< G Z-Y&k[K&3a x1S Dd騉jyP'-+F;Dbo!i^r\Uk6QhyA(5˜ -v-Ih텠&ԫKgj,I[RHr؉}2W㠑Ym?r.?<סZ@8m+,.-?x69`k e,m%{ӌ_¸\!M;0ۻDXfN>q:UkWsZ_W [/wl|].i{e+谓"Cl5f'xL >k4~ ق/Ҥl }$LEly7o1Q͙6E 8(;t ʐ{%H~5VfXzˉ8([LXp޷c͟ck@eX8JroHϹ$p'b/᮷eclXNxeXZ(8`*eҒbJnZJ5a:(DvXTf64TMs>^4( "KncWR4 ?NYCE|?җ, $Fu9K57RSKTTY;>g4yC)$w~_(@  bsE.p Ӎ$lo\ҽ" 6LXc}_95щBj ̦c8|jP%7ڂbҬiNX'PC;mT7jplYTw B-ҫ}͵}HP@K=;tzd-FUN:"D*G''"%ϖqg4aB~ lU9'[۽RS{;-YlLƐ=U>=䘛#+Q?ꡐp3. ޅb\_,Zs28W y)_ihsS R % F5eC9-qI>Aǣ6i`o3IXdQ P>(|_VVl Hm0U3|35YM(?4roe{I6am.Uf2=V>= 74p1:j^BF`QbLU1ƭHN P )@*+pL,H+1|6w#$f!Sq+YRoN!̽NmR;OиdƇ\*DA AXюL,"٣'>r_aRhq#-#QqZ0"!ՙChmmo\aXLf*f,d7hx-9EDîL mѢ3¢[罏 &Mphvo}j |F J5Oq]' <96 ؉1`yy؉0G>i La櫊MCO}3g^% wk2zQXz++ɭUJM S=:K8/dXdF_1tV7Lu,RJQzve +qo¿**?YíZ^|]֔ g)Ao݈T~JC*B6 ȃX]]0cKL;#q-/T] } xS"8&6nE|phv֕z?.mm,`~ 91}4KņT%')R qujşdM&K]!5ԗS7J^'./ ]-pGqt] K?U/{)˻m|QINu3$;{upʙ_"IJ}a*N{zQnU~Qjt?ʉ~{xR9Z: W,cM\"e3Pr<@M}6?qQ46I` nZ|3Bo* p KZ'B. 5r YX'(%>*g;};Բyh[ ƽٺ՛=wa .3;cݧ~Q>8|Lߣ#Ř]sz&B|p[G|@'zWkc)QF/{o%3E<<*_]4uq]Z[XqÐ)=@r D@Ilm CnFFpNSGd_wGમ(Ef[vbFL#/#k ,!Qxi!u*< mv$&jGRJ2iبG*͂P%7QIh*{W:Rv0nr/Pv+[.q]YQk ߽V};^]8A{^Ndj, <%l6 %wŌv H E68n͋R =u"̈Yn [|պ'W^>1dZ5) ; ?A9Ι,8&Bbk7,e_ueԮq+,NGH2Q $kpp4$.tw±jk12j\;;NaZɧ:Il[p0֝ySi4dG'O7pDD_ ؚQ~ioOr\Atk]QMG.'έq:J};[1X?G{[D; `^s4@Պf :gNDS8N0&wa:n~K'|!I(O0Av?fM*- 'P;yUN]n8 }/jN_-*QGfK_VeAxp΁oӞ3H*Q^+ݴښy UZatP͡Dgs \]9Əݎ U؂vQ#yat4LW [ Oc8hb==+ZBp(aaz P^[|wݾ{uƿe^ 8EiO7uqbђN0˜" Oz}\p {f[r,™fڗJx [srFUf:v SޱYC/MDn:M L$Z-tȔ+׈flq Zb {$ϖy)+ S)l'dk<o_~V c)L6jik`~VfݩH!L f $fo[/}%qb/ BP " x8ԒzQ樗1E֯DσgߛoF)nN 4V^谕$vӿ,Kø˳oUYO2iܧhiV.b"p&u"=aGtڵEFm_|w2XQZaL-C eQƞ|\]s`)6>d?@O3G4( /^;a};ѵnwmI#.\*,{QNCԲULJ= TxB~W25xIJfU8 1CN(bfƏkD4CG`@bDcXz'ǣmJ_\Q;&u3]wyn]Y EczZ]0{̘֛XjvA󳁠 4ӠRJzRO.?K4lqp-Hc%ൔ${-s_о pgQTpzSRtjm +Pf4 a&I.sz͌DU>3("թ,l gq˷{dd m'ї6@*o,]:dgYVii+4_? oUFng ^^K"u<1#zv}#=Y}VCVWw2%:UEt+Η+wbubf Wnbvr3y w *B@T!3}b 9)pp͵2vXoB)/GU|Z%窠 U"})g9>Z.9iKG00x Do ʹ TxJv@eDWM\jƉbGVn-gQgNM*LaAD?pt"Ec(Bl_KAo蛹/n(^L vy\> W#OICsmTY5W T%|'i  5?r\ #nμZhU|Ys|Z}h.x "݊u:͜27?m ӧЁܿR-F4A5m* g>a_[K&W(#{(mҦE"Ձm$3ʌ3dv@NdA8& ޞKNb`|^ޑ>s( a en/_nxI=iOХNOt ~?!~PBPwd l sl<5:~GɎz,k1N"hD\i&\GOQuŐEƁxL[:4u2. 1Biޗc㋞le2e{rpfin4tpc^Pq9 <`ѺR {ȣ0YuIMI{Pe=<ŬwpYuy_[;t=2KRu"Zsj>>a+JI"wVhgJ%UM6 ŝsNE1Z~ f>W9&;QJ |[];?iEI'֚KH>/5 yu>[Ejc*!ƂDsm#pPV^lƌO`PyKBlF4nX[nP_-⭎7Ms/Rno?5l_31e7ֽH\z~.Ft5gXV V'h]0JךT*yGNv/A` )Nn_{+\"!&U=rfkKDE,Aҍա'A|Dx.!&[18,*e bT=q0RcS>=}yNi"sjV4C9!nDeDyNT.M\ێIy[@ĩOe4_;8+^" Ep;f<*0L1BMbp "Jd `Fɬq 0Nm5z3UZP+TەdĹ>V[٣7E)ń<σKdQE.ō|X4Vހvn(aY1+k&L>2L'3+!,rc']gFe/ƦMed0b'Yr?3P֚^Ͼ?BƓ`sRh^ۻŷ d`wc&*wcC[y$ s-x50ئd +]Zu/OM&Ѷ>L>fE XV<v(VC%| g7hɴT:ou%0(5fȿu6S‘ F^x2Hm6Z{T'+=K.z>0+59I9׵82; vDU~ss9oYُV~JRAZ]Ll2eM&>Vh*fz RMt^t?k?s2܅$<=]?%Ug nmz6Ij\HU=xMI:3|eksEoxAhgMඉ*𴓍}Q!Y@-=Ĕtxn<*Prt[?wiȶ.5RX fΊZ/dmEÆU$ Z2>`0,̙gNٻ,yL}ȲP Ջ!w'xM!}0~Y/ RM[VPc_) e NMBF ,I'e6&(S:>'na_CtESGU j=@=ԍz|e/ Q.)+ukaR>\٣e2$¹ +xx;l_lNlz:ϳB:F]Cq-^:^ҝnd1-%c7V lcåg_YfJhԝIҽxOS. %*$liO i}LQjP L6{oW6j-~hO9<i YKaRZ`,W,V( GDD2tSœƼ4 ȏXtz]OynOhmj_Q%v9ﯫUmbtX(,茾MS./g(+. II1=kV6jiݵeSv|;_FLTFu@ h!: 5`i?:)5ZXPliW..ћ]. Jl *&Sng/aP2H/#kJ=%:.*$ :(>琅XG@{Oc&3= a/ѲP3fobe~2%x v!Z4#/~r+j [xw0ZXIg$/9͵`;obs]dn&0,d0nh{%΂6|1|ne'eoP'19zu1L}nR/PRTϦZxB;ӨʌlBZƠ$nL掤4zXqYQQ0eL&1\_RwըSY/̙+USzӏx#B=R<% Ϥg5 .%Շ?jLО*n4noi;B̏W2U+Gdpgm8KDIn=Z-OoyRypatqe^ m wFnYTlLEnJ[)*[K?2dL4Ȩ2VQwޟ8 5_x0^eB,Gy ΋~~يm&<(S7߷& -\-' '|Vٟ͇iu7AYUMTMʪF~,>JGɷR kYf3n4K#=* >uDRNdl#Fe)3_Y}W, i`F$VH*5Ll ?{ 8`IFL@(Mzƒn5а,q0=]bc4t-UalV[+>-.TXʆ9α7<0xL^'jׂSv}޲ܚ*aJ6bmZ:5m̒EǵS,n!jd$MQ^cҏ?5ͥFu 1V(sY/+܉pfR|@ڴV4mV]`Xy :NmDէ"DHxCdi^ElD9Yt 2|w)3ʼ;zFlp&,d'gYgWHR^o6t QXz ra*gf{]FHy*60WYB/ʤYJ` <^)cg ],hߎ5"8W?++l*S:~9Br{#6?Pսsy ABvy.Iq AX&0  ~ _|H09({0BکPvSX:0͓J?N|t*DǢ!mT̬* M؎sCl9y'i9M!.%k0@L2;[=KxAUeNJ{O7WД0# "2/7Jv0v`~˴y'Є[hӆSOuEj5yrNj~ /Qf]X LSug6t&ϭ͈\Y;@V H(ì:`۟nUd$q4݁+LN W;aG7|Jx2&jNen_{p&SYwpwࡓ 23Pw {%+XV$0Xy:b=e=x|q0mv44tO] ]D]#QJjL@< }ЅCޢ4i$M0 sߵ9`#5Xyޏ2UQ%+SOߨŰ& U@1΀VY˵C9 B˫gi^ҩfל\ nD%vr5yA]`P{ɬ9!r$ e+{ "NKԦ?CYyn+5Ƅ}ᣛe)_00;O"7Оye/xy"6y1G:325Ӑv DJ7YA'·#%YèRf*B=FQ30Q؃c][ $ BAOs_2[-5ѳZ3.иd13&Q'^-CBm uDHkUx[z E?DEOYw0rVTb\JvP po&#QtC]pDyHvA041|[OvMD8V|t}dg.V_-}}꤃,YM,ClI;HCg_m9M` 8uT '' ]@$x44#)Q{NY& Ty>t*OٸT(H2kφE+,ֆY?r^m/ ($m͜v bTbFd [yer`oؿ~c`TR=Fq W1=.vpY^z7zўPND#eJme]?Z9$;yy֩32D)=" QxM&o5"-~$_rCx5 r'19 1F m<"&K4>ǝ*ܣ?]_HiXO(Flq{%'~JӠVt84Ir#v+;gD}9H]i"9MИx#!YAg{5=9yP\A:#&zDєSDDo]4ho3%8Ã7aa_$a>F44!ʥ찼==zFMP4Sw6D[u(-=+Nhγqb)oTWEgMXh]n%|kWT KmoT9nZ2p/fk]*aEy7d"A׾1V|D ⳩wwadxq_V+e ?Kx27$.!<~yx㻐QoUv*g̉H~zR;;vk<^} \0i):X){XI-"pꕅ[<9SЧX&N+zrļ]^޶/Lv%<E* vģ }?;mޝ*dS F)NJ8]Ti L)U8$ųY2نm9O&*33 ZQpC"/y`2/D(E{qjZUThV(>2|~_=4>Ud6bA [;q#olQb,E S̾²Bu%=Nw*%t2IN?>.ԙ^ R x/ȟmMho'uܝ~lq+n #7ȭCQR7Cݿ |bz?Fo= \ig."! d 3(-C>i78zqQUKRIy57>:S8՞A=p͸> k1?Ʀ㺚\F:Q^ȢkpIwЬ鎝a#1lJq{F* i+իuAhfwYp&z<2vN\Dw8Uvsln]_BiBDMEi:"a\frD_fa4:Xw3X!N7Y˭0e,T\[Zώ^dJyYgiY4'mV5( 9P+EFY 7U55.1%#۾"L1> HDƜ31tj(7Ed8b n()YO(`1VT^!]X\?EEA4)ߜ6nq@͞vE: Ή^AZn˅ :o苟yKA< #y%/N.{83LwV}]h(m#Vh$8bGn3R㬎:p9d (rc*MoLXR?#8ܕl\ .p_Ż=7K }R< %6SB[>wQ7,Kth6U&6/gD'샐VCHeT㺶ħ^TF*~ԘC"'raH\@ve2K=-jQ{w62Fnbjf.άVhה !pw)G/V d#_<-#Obj,!]ͮ Cy; .S(#f_ B5KsnKƚP XO@#bz_o~|q'U)5 D*G߽O늁#fl4_č˳ʽ9%1كRj`)]h[ZF6H IhVt+[=4eKr{B9ػ!BKyaUfypDڐ$.L{w Tϴ>oՇ7dvu&%d #EAY*)e';coK5SI uI1E/-Z9D|(L%|F4Jq5 [)iTFy :~¼G2ǁU^f!/4*fh$pGıLЗhi_j8 BL5TȻi"z+9W!w-l_6?-9E!uFA0 RAhU<}H!i}6VO&[1YJ+9GKW^w~)R5Ѧ)yb {ʗP]AXcӱY'0!p 6$[+l/z~%8=ֵui[OXǭz0l`%4c=Q?ꃅ 41AS^DF3w R,ޝ*V..'R!]\#d[vZVj(MNhїx ty=$ pJ&xFn^㯱8߰aaս5^}s1C@VF\e+@Ay>ZhAA"L*#?z)x;x^HcʙOuA^c1't!HfϤ}??/䎔u@ͩb [wb59݊mS̛>XnnhڽvDAxuxɴ_Р>0R^nԚp)Ú÷ڤa.zx$v7bKl>-U.Y/e?DXٞ}ѳ 8IbJE`>K@゘6GpSKN̺{.'<)Xf!\* rY.Wh 2F#A_Q?MTƐچrCڶR/80Gԥij0-N΢4G;cuUMn}F_Nwc˥]ro` KA22-[v{M,uhLў~9&qn[ȷ ~,_=\ z*p=_qWzN݉#*V Őc5z׊IJtNK@܁~ȡfsJp4J{`"ݗΏ)?&o _2:S7aSZhТ^oDQ9 ?J8EV`5}ΦSLYT$+ ?;c,^u:J-b2n?vC?C t_5Bo+P\b[,е8O^<,_H72 +XD{܋@8nY@@PSJur6VPHIJkG.۞|{>2q[A?z=(ҟ4YpMGq^+H%>ytbι 9^*#Y,qܰxOmu*w$:35~odbQ]*9{r通ǖ̏] 7QƘ?H]d7}I& 3UAσ4lCT ߶<MpU3 U`OB=Nb\N{q Sj)і{Sz [څ!.V7#G)[8Y(!* 7 CWuT',*/Dzj@JU*#,a9ZTv`hcSk'0l HiG/"*FJ̌^nT3 C<.}K>ܡ8($",[J lϳ=Ӫ:eiV \vvpdpʟH~@>qL )PRoe UE8|W:}" 9,3yq^B/&A]$ Q1WՠGoMZ(@N9[Z< Q2ԞNyz={PrLdM:GRwP.ƸFc+Z1R-4 k+J{D(*? |򭗳 (W7t5"[Ó#<va޲P7^=@/6XO>#PU.ppsHM o0qKGh'x'd'QAޘ) E?L9)wXSV{X'6 kD4wCM ?Lƥp6茂7mx~o9nne- o/$w(lN >ѿN-dsAlOb4e*.FxS6{>bPHoylN|q;R] qVDP7Tdw(:FvC'X;iNGQ^D=t.;q8ڞ`u *grf ʮf_hcn }!j}w *[:td]w^Z'2./lXùr*oWWxח>hXMQ~;t(>o] (Ws$F!f nX".ܜ}@V@xNr`K^\Q ݌ǂbٽT=`,VO{nhELܥx\6dTx&)o`CX Q.&*k_ ̃ߍqS$,}d>RGV&݋K`4*)^ ,lvޑ7dhV [xz|M|[q?{$G&nڀ^&Y } zqG:>lm0 "' r,i_vXT1j{f t;yᴜ Q12?dco-\~+ML8 HQ^O3ֵ$MYWy'kiF!xhˇP,`\ 6mٽ&džHRS֭Hp3yhUi|٧IKTnW9sa^[]=j]ŧC#Qg_Ns%9e;>rG{4PRI*S_LyH5vfς*NήWE8w8DU0K!RvW^o[A-eϹŘ(b2yV9ӹǺcJ)02> Ryѝg2-`OE] +ˬFO*Vk_`0->Ub#ENF`?c&)8#Q&r0kҽƁsl=G*ׁ)ᣌ%&] =FCS[`$Ԍ(ǂ_ט% 1rn'Ez2@q?i1fBj%Y[93?d7&*@mDe+J!~O!q7X% wCuWg~bN6'h>F'476 ?"Nw`RAׅen6Gr(bPYJL{Imu~v+jy)EHLdJakL҃&*;-EÌևFq٢y넱-LqP5>7,S=&J8N\_m٦kzkWi%_]SA۱$[R6ֽ??BZ]\l;PSֹ[$Ui/PhP)0YŁ&QǞÎ_JO$` |OUVa$^IDfخL}ƽ2XѲd{uJz_VnW:!$>j6UqXʘ<GB3_t]lTcrY5Uq}ڱQ ߈5IyzV8wL .\tpOq 2Ocl3\Wh APpsLLE:1HW*38*(T@VWJ00VKa 7fg dHϨ߀_ЧLaVh: u9聵C)#J÷۴Jze-k$HN-=&\ܣMĐ].WF 6`z&9}I}ӥ,"J5dN$A04%^0;s}Y#_Ɲ+ɾ yK _|)=3tl*[ t µM9yk)V o3%AiHr.w $et.Aփ-s%Q rߙ901j11,մr ӁQr] }zc 3ֈ*- VKzhJ;@mŽKzFe06@:4컹(>m096j`9_Zzh{( KlX7Y>NqdUA+N}B+ei!~*I{r*_g˟ V{_K ~;AH޷a7Guǧy@&4BR/Ń);B'VKĨ[\|3l!r )u>s*=gT4Lp:O{oņRWrL߳iŻ;m48XPZn~65X]ް_of٢oزô6%='ڴfqk-7:_n~5NߟSs޺fTχ>:Q=D'!}w pVQ-#x| e}a"'$edl`E5{]%s bl9Eo(ۈ2+'̛P!UlkaOUꢾM[3*Uȩ)#74K'~Ès֊1d\̲aHf- \o0Yȃl ff@DuVm7S' 9|1oĵEsS8܇AI tn"rbݐ[oaJ4E I=wcDXw/XGrleO48y g#ğB&r!}Ni*臻2< YٳPtEW{g,Ns*% \ySkw| l@ޱ^ _p (A_7҉,ScL-gͨ8.N|2@㳵&YQ*Q+Cӿ:V Ke>h4ZaEgVškgƾeעH]^1pa8ßL8^oD_`kfG 't@$w7ʓbN5G #x6Ty1)I=4eD; scZM}6U9gMClw{5hq sΠ)#j8B?j.#VjZoElmc) J)elFC}R< v]p[ėRºⳘ с_JWm'_:+jߌ C<bɔI#ضͺC) pnkWwgr)2z C;KUͭLW< T9 jȟ](0(Tp]fDBTp\|rtR(f8 !7`? eN =4)+{>6lZzҨq؈dU`6xB|VdIBzmz\$q+SF_Oh&pC 4P*Cwn !,,źY]7\'_#!'@g:1)!E3 `ZJ ѿ8tAnw%uTU{X% ],fڴm b KZyqԹ ot5Θ@ d=LQ^a!MYԼ0SoI?xM85/"&(VV,Lf k[TD&&X\dL+jy0B C_(Oq=)z_-*w@B'TLC~;u.YZu::$hu(HܻkԝϨ#NcanoaiLY_l/TM]Z!udEeŶ摮jjUl.RuEc[ 7]mE4u%/SrE{5+D!l|`3Yhӱ>{E1-w9 =1^`M ~ _]ͨ [QƢmų`>ɤQ&'t4̧9ta.Hn's('zʱ4 M6W޴Je8zc՚`S,o-d.1 U#G`/͖}-ܬ@)LXᅡ)8Dg΍;7; l!/ RU>5x'ft.1El`kI⡒>PW/LN%C~zrPGB[CJ_W*y-) ʀs{;ᚨNx=8]bm7JVl%BkGSh:pZ ElENwu?4d?} MBn?<=NW?ѩrmZrL~%ux!}b|6N1xLK_=oQʿ:]!v?Nߏ*z887< 1=¡QF >@eS߹PQX};cƢ 6q fΣ%>h #?!`<"2Y3hD)V!iTt׃Տb^U$ +AhR{i.p!#E ֊Mk+YA!&w(?>{J3A.p'nIN?"#v$=Du0>.l%/Il4S  q.<mղaЧ>]>VQ;?:L90w_vxlfi 0q:#˟!/Lt;<Àn}nL1$= q H@Z"A6CTg zkv]xy5S3r*JbwMcjBiWw`h3!Ol' XT "٢7 ~&|fKG\*Lt{ hJG_ [fPL.pS4΀)66.˳E3"b,ҵP ᣗ*wyM@|5 Rk0ۼ)k2xWѕLS"ZM /w"[Zh7=2L1;* N@;ނ|#16 X OCuY:7Lído>Q5۪9LVn'6<3q`"5le`1_|)?x#Ǧu\+n% a<9L#Qn^P4@-%}#;讆WV a:?!YYB(r*3 ?;ɎPZ|v9NT[Gi"cI!BbC)6~IKxe0ҭl/"% [L.fH^񘊽S't']*8Oc0S%IWʃwj|$vUuh+Wn.~Sa?+]WZDǦrZ._yD!oS-WzhnqyDHSH"g1Vh!Jm#HB\Nł!8o *vV|z2ܔGu,]yhJ_0P$e^΂r/=XqAdMI!dڋ5m%eЖ%N4` i8HUtll;ޏ]9Z03[m߅=tBk'>|҃$3mm3ST$os=^ ,0Ɵ S fS#@QŶ )jlwqW;)F2QW2R$!uHl?Xɘ1Z9R,tsCSemM1 =]6w ,d×neyZ(P4RGúKYdT, IpSa]PYwW{ KX'Si Iy>$oI,iw'FӁ"'tU 8={y߸w Ś!wT>/X9"adwm-mH`O(?|@l9#\?P$ʱ#btXDJ037 Tn.W'Ȝ% Y GxGe&ҧ<19-Mu\[?cMqpB1[btEY>3$\co GPO8}GI)LL,"|xsa7~"c䁊ƿTQ7Utfqzl JRU EY",iE9US,!BRIGG*X@yTFrx8 M;]eP31h#y r_-JW}pnߧv *|cCaHl2ёh_FB1\pU`5W=K48g= p iRQ13ϬGa}dwGٹ?PXs1! v*EN^4??c-p#sc7b$$`{[*|n,4ڞ9j#Y);ykCk1Q- ۳+ y8a@nCbdMnPKn(clď j驩k%u>utKG^X&c U<߆i{R]ߦ) %lwCt+AA:Բ f5mJ[)TFrYC0>#<,wI g7d# V?㘯N92ymi^-XREN!uMm$oz[frESSFՑ&H.ǍE#n0gZ ֕k>1]suQ?k$!E܍fW5 LIxLKP OR KXP{'Vj܏>C*9mTvlU&z_̔N}PzV4QU3[r|rB %M{l@O:^NW8P0EL㺃`8ލxgEtv|:˛‡2`x3h&q[>-ai}(zčT7 hll@(umZ{إ9稫H\Ak39Y.9jĴXLÕqGd'.ʞ;8@ ^0_9omq.,%8ɋ?5GPMe: ] J[<87d.'08MjubxQK=5%8|vd䑩 {DC_ޑs#]t:V\fC@y!6GAp2K$[001tOo6ڪHz~l$R$%v186'ѷ~|b~k%v[Gg^[iZ?yc*Towڛ+&x R8Y.[әbFWЇ0tSgq\?υ󜼈^G ޳h6d]Ʉ KgTV[)} W, tgJH`h PuWMms|3ɐGH џ C1o*AIk^ky]%Jh$>x?5 $$JcHغ1RіdEӃOo#g@N K =^v$O}3m[]Lae[6o߈nlb,Yiωo~ (1[ϵl줺C rM4EE '=䜸M Qh7!`~gclav;? srX( _ZoR̡hz6-1H8PgJW {\Y'?}R=t|i}3kw¢\2 Y>p&xLcvn̖NNJ\hkvM+ exx`fIQ=63 vnCe$O*TerQY@J1NcZoF b h(x)-aF!W2\sX,U$?oxF톽7iɶ^jN/oV#!z/9c_[YomcdTx\yaN+oJzL'Æ0S[y8^%@|ϛBZe< KTU \RDxl[_GnoVm:@J˙&o648_IV(}qQ*&K[VHpe|LƼTYZՕs:G"A?0bZj\>HASiZ:cXc$n>6WKޒy1WD}Z;iy6aCU J)3p$z Cqv5O'iΤR-; ȃ,3d6bPLOVnV(zu:6O5 zu!Uӝ3 5^!*q:B9ou\н*a&!h.NF6szwʷH˧I[ȼ{EnN2L^N~ۄO h2b{".Qy;lD,85O`?/EB`Yۇ#͕]9aЎP~&q|kb$XIo$|[V;in{!y}׍(G;r=J#NvʄxH gNkSUH1ɶ j*7cm\@@ʶDt 4klR6Àq,ևr (ۑ5L}}F!Kۋ*y{-:t(D;iڜJ2pgH6$wП`FQ EH8֪z%rۧJc2?]稈4K2iN/dݺ(b& B8T\'f)wЌ[$@C3DD۔q]ș!Iܕ凨|˸} )r :VdzlL.T;jd֎˛Nd{O'z5V/P٠7w] BI9].'m+G X8x4o <$3ƄGqPH8]0 fTPDFޠf[OUf“1^"9'w pi:!pரݳԺ?z1;Kr,޾w#W #^4 >d)zوsyL"G=7+"zTYP+Mnm!z}bCQ%=O)Q/2Ԕ!K26g gbwQE< s%4A*WYY83[cu7ëLly!H  =!S5PѴ {~઄c$wahʄau-iُF~ʡI8 HՂJwpOJmO _YxULzO|U[moeO.9t9iS2o^my.FH#׫{;F칙(47qˋC I(AQԓ#v$CPU`4-4CoIbISMJ9I) * GED8RӛdI#EsU>nemJupLjH_ %}N,6qcՈ"s9 [}l[ƌ ֑9TPWms]ܫ>:TM hzeW4TyA`4 M\&_EKx`1Qk%6+WZ^s?%Qzoߺf3gqqDmv^_߁ꨎQN-mwdV>V/Uh.?>^|b9*vc e6,lB@x8CF@wT ԖAS7 pl{N Brv=s'6΄T{pmCKl"B'&_lN<E2Pؗ3nUe&7}rwb .A734| iL,@#蒑eeNn˯^5堄r23fgdm%> V+)}rYt9kN4oMUMֲl솮6 W!lgQL@d\?D{7ZoO6*.mkU5؞GeŊQ>>5o:tHѢ%-T(p%m3kc'r:ZSSț*w:<7k!lM⫬; SƔڳc3(ْG?pu:(a.EoF[hmn;{l%S3WNlVо%:J:<׈t @&=*-E:q86oROjܫXϯ"F s̡ >y@L3CuIs*N唏i3P>AM]""!4> dKWKA3 \v5Ċ+! >JgpM~%h5(7:xd&(G&\qfS@0t޻{q=䫕|R"1KLX>mI2Popl*=榹L}zhΒr"}Q?[V5\t|Ԏ?~9ũDNxE\p lxփVd|OL7 '6Rq#ory1 GPVÆxʶiюƻS.U5x#( !X4ǽAؠ Wa?b[hlK([.\ӹC HlG=nK;z`4eOyb|=suEXqхqir_6@+K@str{px 0 5?7Jxv?K7"F|SYP(#e˶͎ka>p>/O}.y)D\i2`Z4M9T_j!Ȯ]3tA<#8$v-^9I@Óy[ g kTd?XŤ7.LnӅ%o ',U(]; JMN?|]OF],!ݞ)GpV2<`ē`DXH`_g( )B]msK$iLihpvQk_X ]*{%.VQWЉcLOj]RLX?̭%R/Vfxp}٭riJOBI]O]ote00ȝ ?34])t4oJˉtc8$DlSA-n4@תСC@PGVּ<&;yb|ߩwU#h!śօE= PBI>cŬA2IMPs2, &4D orK#) #.$[^KcxwfAe[`r?n&9wQրLq}Dt^@A<[ , %ᕨTIERLa^83 ,@oߠᦗϿ6s$/F܄\Z4W. 8?-M֝Iuc&C!zE/Y*`WE{L AkiJ  k{?=zݼ@<*;wȔB/F?!"lܰW!J]e*k=.τ:raC:bκ]dZWqU?J-B~]}p+6^@>]oʽ wV{<`^ꖠ̘EwcLӓ˗ f=hߠ>^dirꍏ1 ~p)ڦ,$Ky-[pRI,Yn3qdy77[qn؀S+H8KT@HM wRnX)`S/CxAal 1-NڱUۜ.}P Ou."$R f~<m`4-C!덁T2+N'/HI&kٌ %)rJd Km6^rfr߽QVE T/2%&]^eζi)y0@AWimIьfb|2j .4D2,;'Q~{L^[#99]m+iVckget ra48J$8K@)ΪAm&0DGYvz!.^̐Q `aß׼Ug ApDl']{#$=ԻJ z+H|/SMQsal"u9[EJ#L@gJEi0u[s2PyY)$$iBrwN^Hl XwomX[nxr$%qL3,s7LDueh!>v0e0O.\%MUCr%ňZBMk1GbEt50@ִR3s8߻?u {;Agg~CS/\Dp_/Uٽ $`[ yfs)G'W]l'sp'5WuDS 9rt>=81rANH7uW1BWꈋ% G Ա.S.uN\YWYz|8>[-xs34}>K*-o!v.QS|`sToلE&==TذQ^5Wl:F3I)%Hz.4TJ^7W @^DOfPPȭ?CC*Eщ,3jӡTŰK~^gXVn+=n:~О@y5((U~61kV "_WƝݦf}|-!GL|ڟi@G?EjJ|'2h}\(f6tzkOxg-Fj(1Q7d Q~_QK.~NHPo"l>p `J )(6D2$4?jP)"LcDUI0ܝ5y!7\pv.k:8čC7eg vĵ^3$nxhE< ƓYͺ}>ؽ}摎k z\=?-_t ꬕbFZ*)c_6`yFL2"} '#}puby/rnpeFk=#g#1!܋Z7?7crÍu&qj=̲,v4.(ZzK냶/ͷcf)8A{9wHA+Bn.9 <]-L*xD2 Jv__'*҅[hi]2zt^mM 0hGRIs`pn)i\3 ǘ<ť&u]JH~L/%!eO&Gz .EiwQVm-[2:U76/T-(A\jc 7as <:L|&XT%7|('췆&"קn O0kQ6@3N?5*g.+Gw#8D8ƿX Si[( Œt,Q_t =4s"12YF2,ϩum;!#pH.wqyV.ҝ&Cafڿ|qcfEMvЪh7WM:u|1 7Oͥ:$9c|z{Zkl[:ԫKc!Y2mcdMLƣ;&Og)yD6+H;F5VxRؔ);"LWVD3r.F ue/vz qfZd$.hd?  []42Hef5g{_P/pۀ펱o7oso2m[5`l 3 ÆZ[4e!S4BݵttQi~RAL|-B+p bMt0w,d+VzWǔRּgU<}@M21.ײtIDuq۬<7ө _}0G8 #a nI\2⌒UK.Xv3iSw}9nܡ*\IǙ6߄0/"H;$FM' ,XpɶL؀t wCeXKʮhIJAw♨@^;s7^ jfr 5mnW$nĨepumc^8q4!w $8MPwYCFEB`k#˨l0Z1:65{2|оUh&jJKC:zer'FJl3ɼMVm\(tk?#t {p$ jkuȻ!2Hݵƙ3$PyCw/۫pǑ_M0"zr~R"T+'ѠMHCAth\ʕ>\k ^2(T>@9Cbnݮ/KBkIs.NAh"|Bu>:t˯\>DX;dH26qİ1䄖XeË/`ק|@(W oUVQM'smQ! 72f%t15\{Vrc춨=vbDRW*jNJ:44J:n&`gR7q]Fvy t`6(zT\ay1݋r@Y<@ΝxwHtob2p<s8^ WNYSnڇm1&#ȸ 6t|3! 9Йf/,MCR7:ǫ/av__dn=-k^6BM˸1f>PKns{uL`N4qsAq7S> 0_[@ =j|Q1FPT0f0OSSH],˚' t3*IxpK9BD w+s5wvm MnIV3Xs]Qwq*zm&X_;~XP](,e|[{NdeҘN,h;B !b}(7<(]qW6upHöӆv<>qFȄ(wFmgFE͌}icW!ӯޯڥvYi]yPÛ9I(Jfଡ-|b2&w-9HqTgRS(4AEc&T{;xHn"a)4>-kӤ$`Cf*i.RPtM-h5JÛ+>sո4m1|zNFبf0 ?hp.F9WxSVq0E=yߚ7@eG$%+\$.&i.{r0 er9kfa"J =ZʲvGݟ==I0 #6Hߏa}+3mEz>eR lldS$kD8uc;7|BݥgYՌ *>%鸓3&oP;I` U qCJ UeŠ^篩hȅ U_`q>AZjٙᲙa]ƻkJ[k>=Og-X瀈;y$_D7եx䦾afsף͝6AS$7:?#g];.-MnR(Ã1%GQK DrL]FhKW RK_8K'P(d#pRzU%!Kk[^Nf ]2^RulʧpPbiaާb oLuf3([08ɸy00-VAMKm슘>\þd;6{)aZ`P;s(lkmls`0q-^".!.ݪE:ȁ{T%6E1*B0=vai|o#8%FnȆ\?"SL\TbArlpr2T$¹RiwҭヺKqhCڱn` YϨW'hUJ@؝h8ނuO3"ZSTUd,V3dUC6Yеhv1UyqOlAYvD2&2lN'y*Bd$Vq^4޵cLkȷ 8gy&Y(rB$EflOv&@ݿlMsBfyд]S'uPqv[\aVH|5E _YWk/⨩TpZ[!9eD+zY7:fЩ=@u/\A!y>pLxW/z)~lP8Uqi~~U ,/3Xݕjzcێ$q݂ QW-kW8iŀ ȝsvAewhR1㮸kBD6lI+]jJI )[]RLgZ= qn?`ܬ!Z'nXw4FO00I2wAmЁISI[σV];S6kR#n=|@?[vS=I:Q{#g1U!4"oPV,L?6G~\)@AmdOz&U(~ Uap!4s}@"b]+a܋LFɓ2/6Y!;R|:E t# YtvU%e3A#dEB*SOc(1:$?#9ܩ^$ 6Ar~y R]kt*ArO:Hrv;{9P9lK`S+]K6R^6팕YlWHm(;BGW-=L{ B(ؑFxG2]]0~ a^2BF#79XXs)DO|ep즰 sHɴ?BY[LP}y_Lᢲޜ6aW*\h,R*6k\I%!s@Q#YDa0S^Yn9WЩ-Xÿbx`ꆆmQ578(F-EhIUw;]25wa|wlXiM%"bhpXV@f5fU z\EzdwS5 `(On#xE "kM'>DfEBZ1.E1^[Fy @cb$7zV<)垈[ZTԩ٦`,B]P|Q}W q=,BJ[RGq x~+7%n·y>Cg0|e`FEWh#\ǹ39fCwQ!$gnMmSW>_!CsTHfto)7_v63?,t !H߬ X< OA` |LtTcsvӞ6Եk.:0¡;дF_cGI;i<J|wZ&O[zp$/YzT Vdء,(g+>  cE@[[]C(!j:jH6U<[Z 7+ұo0$(OHi 7ryTu5B-LpWXQX $#&m1E%IAcwf0$F81XHo' .PjA4:+wJ܏H'O J/mšvEXDDM=;b ?h+<C[^$8\Xy5*8F#U1 ITX7«XL2q*I:/ljJ *ӕ<'Mߊcn8R]}<yIMD wn>;ANe G8h^2J<Q.W@NWU; PlӿIġ*l\0 ѐTdvqx͜\R=ce׽Mvyeu_Q&t#S {u@*|>&]mL4ufd>Aզ$3GFz܉**~GDX帵יbiHIL5;E#tBCJu6k!GADZ~/䎹5<(@#f,xJYw'Z13pB,k·t ""ɤ{_ *tv]~K_pr6V)x. !mbd) {tP}RNK(1&hYu;+ nF41BZM5+S7 9Ŗshdg&xK]T^[r~c􃮚9޺NEU^4O^2G}d(P^>{{=[@1.~X- 9OJ[gcTU%J_pV-v˜ W W >,]9R,qL쬡n1ty|: s%~R:*s6/.cؚs?Ҵxh`cs "߸g^:4O"r"뙛z֮g ) I7h+}z{awKX:JC}L'=z1 gR dAU .>ug \AXA5|)$Z(yJaBYh7D ?p`}|k\ k}Z&]U{'mu7)o~%U@ƶe儴`g}_I+.NfO%(Z]ic{ik,#] ITS&] zO1[g2U/MqJ,ZwsgkQ:Ơ$t,bӷhq$.jF<GOAω QkwFC+\ FKhIV>qnf;Z0 K)ه2]!g{~[sa8ssR 뿻֣eAP 턒h ( v4'Ei{[FT\%TP {7ZHK  A1J~,nhDnEXRRh =ƒ5;Eq-jA%YjnI1!`; =G>S;FO3 q֏ͣIE`P&成P㼢J#<OR }Z_ǡ-Wk9d8_OL=ͬ[0ɣiԃ!'-#Ӎ!!嶬/-iWW Obك8iXt$DY $HfNUk C(yPڨfhBbNUM:HAͯ[xpC+=k~D<,HSaFep]yj~, ߢTg4@Ƈƻ N BͶXXcnb)lOU<!?P{e AhTg\mE_2+WMOЎLq#~VWXa}ק]<ە!ʻ*p`Ŝ ISM 985tT[sMXa^TE&%?]y'?<]#cL{Xe/Erk@"O|GڷJVd.Uk .TyE? |~p-ˬn4g6HB'ad~L`5zA=t! c, "79:lJQ9FE YVyϣ}n r*\oqn4Awb$d^9t#u9Ќo0ڛʮLk]tzG3$(69w 9…Rまz9/õP!}/z:l 41H3ԵҮΨ4VPSV|m[GvI|VH掃'dfnC]g38f€+_CճLaUn|hDRwEƨ/` l/^G)-%ҍeEƑްr6򒂕%>˄qN+;&N`y"8)&_ʵ*N]> tPdstn#+o1 w#E'7olt%j|G?Ǘ&7LQ`4E%fi김@f?:`3)_lGt{imG8!iNoCa]bPfbL4כ*W6yHw)FNNN FI`Sx.*_L_5ZBx531cU d,bm;ǎаdJ s Sx!K& <@[Șj})+\^pMgv=C:>6&ol5]PmpZ;fAZoFaX8+30k❧PxXX6pCܮزIhu/EhXN3'TW<&5u}Z+f% ޾Fױ 6ۿ@ư[N'rK.֎ow+A1xw沦h: ߺ*w6x3%}Uszح>pL.U>҃!WJhERM|úyX\V`E{5C|&)j]k9*bC7Zh:Pb$.<X:<쌝$zB .`Hx4ɈX7酥2z'q~4.ƈբ+m(2ʫ*3̜ͫ¼|㈌1jl1WꠐjHfM!dJ uG/>!Ð}GD>k)+Vܲ! Sb-_Jx X*λՋi?TvhRi ǯ_?hxEW`Js1I$ٙڮߗ(CE>vHm/y*Do7)s \p+30A9(ܵtɟ)tapԍqOQ7ꗯc5*3Ԁ'1W2=S$w8|9e]jSoeqt>2[!k6 ,7\CH9y6R:zst `^c 7( DWnуBpI:dN9Kh2j;:#"Gm ofZ)o<Τ RnƥL\)DbM5?yu8ܜKcH؅']ϫعSTV17q)OZiJ]jq> (Q Wfg|_c ndXSkJt:w{|-^zڭt'!EFV.*ov45Ij1=zۆ!3*?GvF߰Z rmJRW-vD+=ȗg8eN)+E=}!N~a˻{(f;Fh_Rc 7yzy˥`{'6 V+;E'7#$ N뎑vD<M w[N72UEP֢v^k04ez R];^SAl:yM.عBVP\\=h*].U!|R{Sa0S(ch ,"t> Cv8L!/Mw4}6?3 6~9OWndbZND(Q?.?{1 'y?IHvJk@zk֯4;l:w"DGC%4B4 d{>=FuI <55|%Ԥ~/}I3Yaqpo]^կ+V]W$IgrG5<G*dyRsZ̰]8 ZT^ 2}V;k?X.|}nсZ %s"kq໰T^v<Ճq*',1ĽHșaхZƟRYֆlˮn'@0c)xg;V#)wdeFjEndCq6ڐV9d%eY&-QVѻ +;BwQc  B={yC5j qS⪯XB(IC3}W+,VXNܜFjnOMZ,d2"jsIs=Rn5Kp㷥醂IS=1txTr-Ed9H+}\0%o8[0}O/jC 4j ^5>Bs@/4ySJeަhݼCWD:T?qyeHScC;2ÝXLkݩ:=vrCھtMxxg@ W.;dR)DGK21~kaѪnCooeT#ц#vuRw 8z}cᱩᖫJwX읚,[q:ϸίᨁ0-p-F^xnHf%bxE}VrXX+SAFκ=uAsfH78iQa7}$hH7pV &1ޱ@ hn/bV(Ʊ%ga^s`)H@n$D}㺺@qm;&aM]E9q!an<6̴ h@O1 t+Z4KYtO!kS`7qəQP 71rd! K,rw~J˂ԯ`BA$; ۦ%F Lޢ!,T\S0\!nl7)  züá O$BqXD_S>:Wj9mQ-`EDw J\@<7atV2VNG/TךgOٍ2ߣ%[a(pLxP)!$DVٍ͝P⍟e_,tQ?KXdZ9YK-6V%]x"_[4H@'lCPlZ_&?~Kr\ L?1:p/(XN{HIS`~"Ca!~1J1+/w4:mlhHJm}P+r;R8ikbs+?dYKٲtl ¬3 y G D)cV0mvQܘOi_dCi9&NZZH(?fLhW@&N s *BKH؈^L{`xK]. =?g ˨89<}hۈ/bVRt5s-3ڞk0lSʌg#gBOw{*]'j}HDwmKͶxLF}2F>P +>pÕ+q%>u@ 1zt` "C;~~]?ro,ӁʄesP@Itfex3j=+K<дۭRDM( gkjlT9|vKGJWRl[1}7`VIpk$i1aRqM*M&t M|1&(i)(MlgXlcp%\9iS4zY:9B (ӼA ;'8mxF\]Rz>!3e=J KLY/q6dFfiM"< woG]}4 نv};$sE[ RX8ToV◱:s3 _Я3΅xh%F.ciCaly1x-> 5lg#Ai%$ Dž fwlLI M$˦lj\@G"+جEe^v`f:zP /QUg0)@C ߅狌E*"[kwp9re&(ܙ3XP{y(s||0Ykg1P?\+N'rqtV_S+ܾYw."^baY_E))slV{$hu(&C"fx[?̊Z5,NlNvdlj Ѣ&Qh'-GfKI +RN։ |PM-G%#QI>zԤ~@GCn@*!TC hW"mͳ+3. v昙W3pyng)Vwv߷Eje 2BWDb.Jd6gMwW3ɣ)7; <7Bb籂 vP r 8؂򪗑ơtēlD\w*AϮ 11p i[Zw #d~Z l {xo4͉,u3D%ײo9kz\RPs H!T{h8_:Վ({WV3FN MjCYpS,Vă)zwHY݀!E,bbx. B`{-WA'h'AH Himfԡ]f](Kb@ȲL|u 2qTL;PXRFFkg 6P7ӾlDaY8Na1HQYŬwK!ѺP^Ab[W}o#MučHF5/bh%G>%qϤS~ +oFHW.|s@/2:d3k Ǫ 3ks`>[p)qo{1xPy8? sO=b23dm|hjRUo?՚UCP{!zKuKj)NHI PkUm$]{I֮,y0F%]{XLŌ"׭6bQ:F4X%WƎK*U6Xl9JHdk=M/O+Ƈ1 d .tnBzm Uۡ>{(Z8SD)b)ƴ: ЃY}jј+낈%Z3 R'WXrFi2毜-ZJٹ;eM ZܤB/?G@#I?ܸf%,LXPe&YqgbTLK/uQe1慸4Oxr:Jc؁~R=87)vj{3}򞍽$%[:.$.Єbl.ƴ5hmj^.l̸&UkMRʻ'#ҿJaW(o"z͙}ЀLUΥ;!^a9"%V3ځ e'A +2kU9Aq& V׈wC s%손/0ZP2w:73!!V;z].NJ '9bm ݞУ?H[ ,=)^\~pr8q&QU\5%];/6Y޺s.ʫv/iC1)P3x+kRS7T+%eP)HjA~ܤOz|.O+U ć͢;FV* n$Ʌ&ۃ,9 9E.;|K(-qwP 03]c7dCrV x\к>Dޖ~,lJgw)l+?)B1P<65q!@b,ioQ[p(&ϡ) AIo+ϵ̶ A*tiKAD(20vkWs^m$2hOJpV7mPlp&2ʆ+*䯃 ut1Ybx[JW&,DT2ԓ*1l(KC+w? a rMatR 6nܙ`3 MB)t9%>{E.4`Ei$d@/ǦWJЍnQ|wD&NJedpę DggEYC5v3"x W^Tx;W݄cT?Yr`}[`8Y<8 Him^'lT<[{  e}cK d#=&Vq3;r ֪ 2h'%3!lo6]◇$/;8\rlޞgTG,^s|Y ydR?_}hoj@5_vB-qTS`s6TTQyD1,wVXA6P$p"\S9?` VPq*0~hGo-?Ie +`H2r=޴%lJֱciٖϝIm2иT``-%MQ`*0eOX'ht)&p ,r+J%PSnʀ>g{vǥF݊*;ßz0YW{Ѝa-9@{3V[OBWJ~}-vܪimEPEh8Wп A'=`Wu^ tkhO&/#+بQFAa6%CUo̽{S 퇵/կRɘZVb8e[G;qiJmTklb$ xbKN\bqi $!4vDGa`,~^~FU@k8$&fH5k,^?]G)~Y9)Hw Z"ܺmj"\&ǹZw/y<7E8財jwZt iwq>Fp wd;|`э^ JtE3Yj>n;]'H&3'3T5P") AE>aYbzT<6WdAO 9Ni\V%V/dBBkws2Ki{xb~&ډϖ@v7BYI8V]uꪝ*>},vUU$Iup535*RvW"a+`<_3_#D9@/ [T\ U^bbF[u]x*V 4Bop@* :) i9"&\pKM@ʭ4nPcVc= 4&@w.Ns4-# K}>z<׊o~#=3^9ï Y%l:E5@6X56Iw'9㽣޸bb,SKCKI6O 6ב"P3qݺ-Y&s'L+G؀E*4մUOzL .a\ܼGzGVa1V"۴))FĄNt0 Yf*#~#9nW!Lfhۜ9с|2!]UӺaYA ^#R x7gxT$ gkT/5$X_TJw}TUH&/\icb޺B\$QFx;P["Ҁ&܌p4㸳Y((&E.Q\WKHXrsYQ(I?H15.:)z5AYBր;-s-_t =$V˪8p3z#d( ´Lb (zTerjw!{LaJ-JX06eLW [C: m0;Ќo/ L?dY<;¢:9з0qЈB&ẵ~19 Ẁ`w&q61{" 6Zٿ;5r9?F Ars6)dn,KZbV, JДR[4XX:X2/dY/;Iqh}5%1GN8@o]vQPkGSxg M/'Z)I[|ms{mhOj) <)9q2Uk[72!uFl0TǺz ؗq7[1b1ʬk{H(U<wFIӊ(hfH<- BpWPe&wO칉:5R/bSҫ6@"56-a5[ EL INP =.:m5$Ii$N͉9dhY\hbw jND+ \0ޑT(\\C`P'gpk<%κ%lEИr$cp; 0z~ ?XY01J sl3O."fid.sV p)A/TQnɥjM;-G%y9/IF3d:NX嬑v.k]ed;.|á8PL7NXFWP?}/cLCMf` >ghȷWa<م\)NQ)jaيB.U~gßu~G f@;9[rt36!`[Η"udv|/ w`3i6rF92m[e/5t߁z6)ћѹۦ˂HibW70V(+M{W;?K/f&wZ+!IQq,$b!&8I GaטXOЍ7NW1Νި@&e%_l\"LiwP+<\HKyVRX]x#1 Q^}K T*ED}y.pA}BT2:(+ɑu @{1ZB/Ǵ[[ TAcy|APzOɁT3:~v'fUkAlb}jtFqsk9oZaɒv< O{??֔̈Bf0k:@4yYqN}l}T»+]_φ܏F@!#`c}7ؤl}F|ՇeuF^ճ%*)PJGnq.\rF%9 Yoo, E $DzX  dշx $kǓî2atr6;ήK;OruGP%8bxKb;'3ɚcs< 1zPh1ZmZۍ=mJ6gH^gIIrC܃`[7N 8ebw4d5i3_: 4LL65fK3ՅLv:SK7tqw{)"]v_^ڪޣ` uM`65aZ4 -῍ !P:D0qZ{d&zJb%xeçFYi,m@5E?5ߟ9R0*3S'= tڳŢI˸dzE42U/k_<%Sѯ^6_A~ipx? Xqgn&Wû(wbB ֩W&vYkCRlV$ɮ"9Un97o`dy;_8Wtō4!spbb&PC]3T5m&\6 .`kޓI#::*esf9ӽqepnIH FS0m_k|E=4-D=I ڰ}qJl<~p uΖ-ao~8+S`r'"czfQ9nχ&nA 牦T%:NH U߆MU)'3dHRoA:Q RboSf f"Y桛k/Suz-o9&<<) -d's-Ѵi_A[> Lo4kI,E0\ჷ.!^I3aeh2fgP6Q*=W( -5Fdt@Y]X#;bLߡ M詰ڎ ԰p4|!*Ѳy>lW #*؂WF,I.faOWVE@tw5]C)ga&-oC}:$?%jXo=DGȗy/]Ԙ]A/-(e>(oV>8hP+|ͽ5LD3.%ݳؚ+ވRIJ6 =...] *oV*5^G*|k1(+,_ /䒷e jziqvJA B b99aB)>YUW3([]u'2zƎYfXl6?XeSjt)@ɳ(o{z5^[#lqgˋrA z='&CwJ}VmpT;dgp^4җ1/`;1=A| NJ5uNU|wq:Gӡ}(h΍\WQ]$}+Dn+LIrw\(6D̃i[p kjˎZz0"OQJqa@Ta<YO"N y]0"fG1V< lU|Wo> o~76h;60X_H<5E4qĥƨ(Q]Xtj_Yh Z3&?ft(g&S]}R)HERQ"XNk2ڬKF-D/O}C15*!q/3hjEL+odTQ^xmCćG-%oLR3;c?͒<}k-\kKHfV:LAJh >hPo?}g˰*LEщEBvl'qa?>5+JӀds1nխwEu4*Clw򽒮&X hhS}*9wELԋMBd^:Ph]` *X4h뀈GGɦې=3iRW ixXsW7-w:nkX,*caKl\Y i`47O\z%1A;K݈;﵇!Uv3X&4b44W#m7<zMɺ2mڏ05\o1?kXǑ\$W;Y;sb00bP!:/ l nF/_h)x9ĠIYcЪğCwpa"ZrP*+A[3L_ke؅$1;y LRDt,b gL2nb,[*]%.S֢ S2d (9m*pɈa N]m{3M ߓ+jFV },-0 Q^,G=F/1ʉE?O.Aup{p|ϯ ب@3z &XQ)FJ~32B0>;%NJ=/TGTCG-x\UG.YmնVTo;ֹ 5+afbxX;iwRPDzUtfę'my'7^2w\u?dXEJt̘J ӳT P#L\*_s VȺᾸR,r6J=5ѸvánKhZ|4;bo lPY/w;ǙU_ڊhz*WcM蕈uS>_iSџҜ(@)mQy#cQ^$4|VKo>BG-$Ƈ |.WvE\6@]V'{CgT38 a< ߇Wh>" Hє[z`< S3ckEn*&vM UMz~4;JY j]%I$~ L[~IR$j~9鷰( P8)BPܒ'Ɱ:pi $v/HSԾ?|nD5(Z*'0X[D z+87W@2n^9Nd% h~@g.~fU}ӣ7sev=l%w85N,TŇAt`, 9N zb`}J;}ԂR yOAN*lB9uLJe gzetӃlh> ) uaM5OXs)'8c})*Nxa6k$*u13 3|.S ftF~d bi1Y 5Tli̓z2i$, G  a'͸9/&j=#Zf=QGE(sHRu.0;ن0y`߂wCR9x?ŖZ1Epz*t,R}N75l8`ΥB+Eqd[ݨ/KQ4O%/IrpcADK7=>^ο^fҔ;O2oP+533.е#gt n#8 P/7!mu,o}+.xyFYÔz6-E<繾7rgt=o5ebS%}r#̣"t{owߢ*{ U¯c'ફwzc% 6!]П0RyH{2Hڎ 7w=ѭl: $W շOt+SR:ծ,< )%Nvj0\yMA؟{4N\j\{l)`Ϩ`xx,>a2\.\pXix;!כc<6ED4[OvTދ8UXG# fO'u!V-% nsUH@բY4lx+"Gk]ҟt ǎ %fvJr {̴/x TO!+aWlC>Q4\ 5M(9;*>=Qۻ3GkqXխ >jHBs Oh(f ?I4z WKQ6]FC*,Q;EQVP}E~&58}XqP쎶&.xRKjr(#KDt4=!e tEdt8rN׹OSbzklu 0&>2g^tx8!.ucgzj qf-GYym qFcuLe)x阜!i.T2 AʇSElfx*le')ƅ>s2 9o9t_0c }X}eSfԥ/9m;x$婰o&XET6iQ{g3KFKߎ(b RꓼUх/K*Ga)sܱQk Pz*z'^2j%Ǭ!'A߰GdϟSmKZ5#Iv" (k#wvB~apډD{ԀB ~NDB !p.n}|~Z?C"v?lWD}Qؕi KGv{- g׵tXb9WgY7WMQlXtfeEa -N%+c`BQoգژ2KZyɄXC=1YK CuNEJ{%:6JNqz ^Jԟ5.]oU72~tTM; DZ*LǕJ5!r*q=һvƭbFzQGhcFCmU9N,28OeKIieE NY&+i.<%7Q@j7$ZoI K#d Q&BL|IհcR-mHk1+9ʜ?9eK;y4@Ə"MCa2 n6w}eL Ԫa™ /oNLO4ʢ,qƭt(Z]YwC'':|Y9U8as[* {`G#+-M|8AlEwhA T\yXu8Wݗ jlCrC p(Q@x LVv՞[Z1Xn6AV \;>aڿ>@ol`g\F@(J鵬#8GK,: Qu<*%}ήa]_tuϙ, zz.:D0h)3r8pG9A;'r3Z xdL b?K& 6lD 0fb>Ie<;-z]Lt`&m rorRWO pْP a5qFo6u< \pui^Y  w"<;$L)xX-8)vb=})W;5*xR[ 8kެ{pL7Y A҆pC Vu.mfS-*[kZ iСTJ:4rf`}xP_5j? ZuR0䞼a]42ӟ| qGm~OGpNk6{i= ת={YC(^*L]Go#@g3]7h7Q! ޒgG\3Gߜ+5)!5% i`J#?hǽ\oXOO:jZpGn.YS=V1DOkI:tWV5W+a1~0L:{}WiLp&av|:߻-;M: {%M bĩ +f֩2% UuC:mu7)y|'Tv:`J7p'Ȁ LOdR5|@uN_Kh97<w, 8*w_w̃3x6^CVfvѝg\9@f{v'$Z!i w:ySW'ea0h 7Gk_4iaݍ{Kژzn;#GmX[s~ P{ FoO rܤЯn3 o$tm\ @Q.$ u+> {ZKwwq,B{_Z;W٦$i5;13ZhJt3> 7")ԐR.60o?9ׇ|?;Jt6[B&3ohQqIkt~9(Y~nG5K=gr8'sT .P`S [G\ \R>x5Uߠe^0o?{a ?pZD7hj5&#x#ǪMq8aU+gߦ !_;*EkMz"C.EPڽ)8/*Gࢨ𭚧s"K xԳdhȄb= iZ`$%i+g֞q`Jה) vud:w%Mi( 5S(aœr c._;m|:@u8 uF HOj'KοGQD;cvM)s&K%[rFK >tIe gM0s5G`Iu3^@XCGuB֒BqBx]+8hO'ֆW:x%̠$Q"i~2Ƥf<<`=nw,z fߵppyjb/1T&Y-DB[jP^vsqz~JyDL`$Q]>wy 95^7~v`U$?43 KV \3'Ĵ[Z&L=%e*zN!|h4{V_P] Vs_ծ-;@aM<%M0>ăЈ1Uubi tFhRFE>Þs֗")z'"ȓo-N%7j#8$28ZpW0LY$PM0ӌ 1"3qDMKW1E| 4.x7q[â cS_R3mѱӂc,ЫO&Tӂՙom>}gs: GMIf'osީIW_ }\L=l%pƋq'S ɘd'k'>g+3\ĤPd_5 oBhSHY*Ym)F.CDBz>RP$8Qj"ej i;JoA.g!4.Ҍ7An6Ir`Egʌm+I4tBE+ɧ=eg1&]j9fAbhߌ<3ya7Ϋ}GgҺP0YP~GWYw1r[1XQvrWR(t"V_1\;k3qf:80%Vy#?YYn H s߂20\烶ŵd9Kłrbk:|Y5i@_FDi?5zXa:0a"`1S`Bǜ]deU\ |͵_5m]o~~ .Xm>7YC/}:WqHiif$PمMME 4{p-!) Q廐QS̻NuM䃷Iqdaߑ;P|MVN!mlwC2\/IpA'w~_ZᶗP #>Sɲ$Lp܃L%&MU |MƎ J;;e5\[פ0Z@\SyJ !*F 8K vHye4{37oVύά]WnL;ܣ2!H>~묆Yc$GՌDnmn_4sjb tgu0a|jqCDIGho/gAD+pF#gm6?+ 2 $\ +JhalMY%z̏Yp~RTHd]AC ٢;KXâ2\E^4SH&g[ x'g *PpW*0Phb<|Vt.!u"kX=,rzx$-<]2@I@y}=0x`!|L/;G؍!qhR_"zp^j6 QAh9:jvD9IޫU !g%,:qXG\Hk&FpCzPG35f&w~jA ieѲ +@[a|enrHzGblF'-H2|8*}#܇>k-@`bퟬl/Z=U48R</N[ѷؔ;.H?_[ǴV a(|eLo# Vh$5RmA}é,@}P{?OCnn9O]?Q>אCiGC m)&Fxw"ME$w+/.}" Fq(^wA7AJв`޵ki?2c.\l$ɁP|n180J o`EhB=ӫNicD#OOŎY<ΛvÚ? :Hnʮ}H:AMlI?J#WǨlM߭=Gu*М.psw.>̲Hl ; ]r9 ru5,ޣ޷WwtdV](%P/Dgdtgg;T0* :U^'.p, Rcֶ$fA¶VzE?EBB٫I=); "\ui ]^A2v.?K&0aqr1fA/B G? 7{3jviA~uuaFcm Jr kuHtx6`q"<ĆZ&('{UZ[%sff t|ŴnMm3߁ώ8O./=Joeʴ/6dwcyi %h|c'oq9sa J@ݪ"iհ]-P"Xz^1oKTV.Lŵ.j^MI+6FhOJ !A80+K1y"ݔ\'RN+*z `rtB9&qH'RCveH 6Q[ ^u9"޷ May6$O?$Gns! rS$[p,#5p莂وZ`V"gDK*5J'ϑ_Ou腞8!ȇ3bCE+agCO4 od]d`m|o2 8S &۲VVAVg O\b_ "Cl #)=Di=vNE&N/z } O,7X`8F&s|ȏ4 Lb|Hys(0ΝJZ8ڜ<ϐCj1wQT%TXq @C!X(:CF4~ӰK?a)ӟcD9dqG_L u ߜ$r&M K:)z\$!"0뙨mɥBj$cY:%X\;v1UT|%fV{]S;^Zmf&.l"A OO*!onXX7qH, 9$D[_, ֜p_VyI|}uK$K`n>EyK*VЗ<BPD)4[I#y<$6v}̗gxxe1o{5IMi};A_i R'ٛYs>`G 9^fjƠ#UDeW'$5%TRe>\`xt]2#&jʐJO@2:Z{/38rVrb螃gb5phLѺh/hSpg߸=.#]I: Ԙ~{l@$ȻKeB J=.&LfO藖6rķ0\x5Y߂qתiDًS8eð \ (*YYT?Xu+ϔgǫ$"g~ eY,hK8+19:hh lFM-eV%qvIQԽn;xǫW2ّn6 㶆gᄩ7_( 2bBp)G2xQ| {3yoV;*v lh^yt9d?co-nǕ4CҌ/3_ՆGF>B2 &1Mn< F>7Ʈc7*3B{Aܗ‚Z]",mx/PZ'RʑC4Tĵe H8czw f/:w_ZF%,WḹJMryul=߯bB* >]j},L3 ބؕ-o\㮽J:Qa2CuoX34,R j}]x R8#< ӤR-J"qf>]~9m+s3A9䕣HtՇ_(ұ6{IHRҒvp܉ t0# *#T'ƯP9˝R01i݇'$d/pq08Q<2ؖS0Gn橻Spl{pN0*SwJ.IW ;aш3?qBQ :CZRmzؓn"P.QPDBa.<'INl=mDe,Ee"Zy D!)ZkkyTo#u,b`PǻX.)>C?٠4 obJ_啸F]s5ǀ"\x2mʾXvW12aԮ!c}8.. L^B*M[1=pe#εqrjޟ tO{%/@=K6ӡ?lK~~TkퟯaoM Y=)d#ӃE2g}O !A7` T~ c1 M*kW~Uo)o̚тtdEga^T:CQHX' 7 ~'¼k#5vAWެu&g<Hmůla {4,Xg')ozva EJf/}%Pܘ~PT/0i]+UqڼݐN"( l'6 ̬ ;p0Ű('܈TΤ }2}qh(@sD+s4- lB:Am%ëx#BF.-JTL/*7< HC f8Q̄`*AB,.Qk>MqZ{+9^1|OF6 n;[ 'D`k`>܎WFˮ9"/ i@I(2?!$[#a\d11cB.MgOǯEQis鸷aG]IG7(C܉!$Z-͐$cM ɳF Y $M<>Aѽ=d|}ÀEÉr{L =,Uϱgtv`P? '.+푮3xVb\0:eFD,/_Y1he,M( MK*Wm?ruO}eHKyw nU:E{svb:B O=?ޙ41iܬ|PB…R mAP:~t[ܖGfZZF!üHpO%e^caO4yc~Vu~B/o KgKG;w 󲇯+`+bn"3tMum4 qŜ?Qu>Ez6-:^64p-K¶H1hF5w%qr%6 E5i3Cu*JΛY=gv`Nm N.d63(NjF0qs(9Pnؼtn6ֺj"kbˬgsSX򤎬,^~^*Zcoȅ//vqC3-&y|wVgFVy! 2gG(hK:L,?iJ؋Q9(-K W!RYpIX|+\{Õ,iil 4ɢF9GFZ1at@2=3,=L\f#VjÆV&yk`5]9QW0QF(?py89z?]_rM1pç )6_N-+Ya1ۮ {/g9d_BOZn*9~|~bFт=Ap!z,=O.F 81˜u/%`{&SKI~`~>Mٔ԰Y$49ȟnɅPa0yնJ}{7iC7Z]ꂬ`\* HM$[oOsfu<)#/2\*X)(ď04!Xrot%^(=6#&[>& dq^̸/ƒ?b$Z*0c QH$>C3Gh˰k]?ߜ",h`rm)ӫ1h5v L*+p;.,myk}n^?T.|),\HUHwnu@dQ&Ƞ#͚ G5D 3>ʱ0f 6C ,sƿ 7R |ў?.'']kj ? |NV#yϵ3U#m^LeIku:hOR+=.:w/TX€8!dj)d>gB648Y9TWHS>Y`rDMN.cBl}J:Xޢ/6m4g`1%dG6-[_5ein"!.UT'eVI$hU7$VWzC_; ` fqٕxRs>VGҘ _I2LEi+,^g{.g{ O9ewPbQ"o5ʂ]̊vV)4Q)/֧'2QS+1G{a<[WE@]ɈKQB9LE1h#eL"YY`6.Wh=b^{lcJZ駏fwX̩On(ZTCeܼKptal5 TWK 6ARZ#':LT>!HKP u:lҊTssDZQs#D]%pjE1gw -D8P6CPaNq/:w`3!~bBn1Hh.A ,?ɣ[TS]M4 G!(Ny^GRkx T|bPf(;`0&؝Q4p- \}С`acszco Δ f'"DF|Ԅ\8*"Zdz1# o;x eGjapN^ vsb Zm3T졊n5ȿaK oa: `wx0 [ILԘH+&pnV4  04Tn9PwMbŨ!4RE c\&a4fLy;WRLMیV}*EEHthJN۞ S$Û6ٚMhb3Y// &꡼3[ji $B꽟0x%)ȣ_ hyrL7AG'&뽸]F=^\)%R&Hy:|ߴfzKjV鮝pʑpߡj^TRX+!1&ZjF[O-A9^167EF(we!j%ew-r psmE62O}N7Jl諤ᐐ7 ,=^Q CB24kkM,E;[3}z| gV* r䟘sqqp` 0Ol^1\a=&a*χy 6oe;YݔɃ De6 F,^ZAv׭sZk 3DٕLZ]y,qpCjI.Vt/#x|tk$R/-x1eW 8)^st7clc0dA2<܀8sq"1 0)Lig I}"_?q"bU@*a]oug U#[:)~T O'ABY6څ hƤ!K_"4>y@2 #U ϼeeswdNEwN9)QJܿjUki2C[zOHj{fv[{nVei䀄);nՑC@DlPI' JUJXM1jz yQfNiq(oˋN1 WVU3lTv 98VIT7Hj.|Y<<9z LTbK \JqseOzq!i%@0ӭMgܜ]ں7qb\>f&Z+H9kD0T2̺N+HĶK*KRޚoz=zX !HD9G{QgJuagy­<78$&$嵐_v x5j}PA7y6},ϑ|C0Ϝ,4zۻ<O\,fn- ޷[_3 Z) ǷpԽ 19id ߦ\Wԟ":,~ϙmx ҭooDѐ:6wѩ0vN]+2i-F#*&F%?À. q6}~L&<B_[BxT/VBٓzwnOCP: ZMC zEz.,7m.|&6Nn=V7ţO^Ҍx%VfGH[P阾pD庼0솂IB)K.L%'S4VD#๿vZkmcF̬9E.*B_Iq032/3ς mc) lȁns;e_w[l >MV L%clĜ3Yn$C3N/J֚+ Iv CE8D"/YFusgSCYfzbNDŽf 1<,/ 9fH :Jǵ\Vt ` >@s⒈K}"NK iE:@m>\`v4T.ǖ&-Fq" 3k맘. hJ"b_Cjx؞HtL:B3ہAip<O4SÒ j?"{eVvhW^~RQ<9XYʇ69D hK" D(PڮGmFgIp56D4E,Q bMY"7oI7 a4rqtpu\jC@\0IR]?ڥYZ9IMY12_ _(Ouw՛ f>+j"Pߴ鍨z}Bpfi735FxqAY9.# /SptQH1BvZ]h ֞ѡ@(bDˋpIp9s=0!zSWVqK'?#{PUSd{ ߇᥆lR'ط`T"%m 5oF9&і.B>6#5b0[Y|N]Ȱ}.yژm5t`PwYNZ.vk@;:q-I IhOw4c97"‡mm^]e{CYM6 MMoF%K+b@N;9_k); G~T)0]tI :rtu&C0%h}5ZppdG>OU9W~q䓌MzR]qHj9lj. '`a4q~uju"aقA%bu< "^ڔeHAr]S'3FG5{uLo1|Q :iSf҉$ԏr1" oc mDSn%Ba%lK=4ֹ"㌒v7q4\Jz'/[&&/Gۦ򲤏&@,|[a/؝7 zp\AT -~"b1˔:|Y?"b*uD.rV;{w%sӭ\Ӳ 9tϵȹ{WY-V"Isq(Y?.x5)$P{߫RV! Ц|?Ç)iw9sI]R*#MI܍R7jIe"ɋkl-7,]Ӆ􅟅0D S:sݸ?S*ԢNw45}`mޓ..pwB)xv9&QRX2 IJ d}=Os%6+d5|'Hr}sH~{UnmeT+ p0 o:A+:au 1Q(tzY1BBXt̄!J(K#S&nۡĿ ΐMWmkaT;66⎔w8J"jH ".zF+[۞#?MU=VF7#+SB`uI3Ge!kȰ؂?8[e 'OxZ~|;"9Gצ/-@8D[y=h,nb Kۄ3:P G5oü%{dg#D 2Gg7zh5AoYIJw W^_߷+akFu4mZ c(QÚ[O[=j3ܯ:gxg6ޮdwR1Xc?'"·+?isWbs؍s9\fEbMlzAȍґ 3[Ɏة㥝|nfӛoCe] M,mů 6 9*oUm[| =: x)mD)rm ENIVOkun: ^s}y4WE #0`3QxqVZ41h]3(jp|d$OMFN~zlgmH)c7phcfڿ;ʔ 3V/~^_=~OcJ<,9Pװ$^ !<3= L8"^01쾄F[(pգa%K1Oh$U,M *?h 8S?)U(]s[hU)շnn Z-#@ F![?V2!&vNuG_$, xT0{=ܞ8E4:ocK :Cp!_XG U(&ī\+d]HߴixʳNVHS'i#`~$*?Xqt`7ЊVė'`&'& PͱS 5ߧf)Mem9P>w\)j_pնKY| {\vR+kZf{ېYdOl.B\$D&t̤zT@/*%k\Uv|JUH9CNiϡuڃwWZWt=S>7; Hs0k|. ߛeܨ}xMߠ;Z.M(ZUM{䇵f&2E gT]<) ѱt0W b? MHf%Y #~P\qnf}aqtC )9rV$f;釲8`],##2rK[B tI˯KBb_`ߣ/#жnɚ !Л)|apܝteayKF/M(}B[4wd`Nu2l鶼) mӄcq@_/B;% ψa^_5ӖEZ>P{h~ ipDY4u+KL@(Dp}}P7'7R7Ζل8S&ՎI.v UׂsiBnץ:טu^`,mmfV q d|SU>pq@Ju?pG̙I[;,16DK0< U_Zxv\ARweܾqw/#GgpEUߓKMn+M63{5}O# dfY]dύ>iB&K2uVJk`F+Z&huha`ShOaH oEj=Ie}3~?:{ OBLpɰQƢ*§АHK -()Ё*lUV8Sl/_I|Zjs=t,N|{&?rw94@Wy@6niM;ȳܘ)c2Z]]KO; :+)d.PP6lPH=pPcyXN܋'[Y"$D ]d7t:m$1N{Qˊ0T@z0F6RGCƠs𖥩%Ѧ^-flCT9cQԛsz\r.ӯ3 #|q%FcxM =IdgNT_>ONT.c^]~!n6}柢;4fFt7%o 8iK\O뜗 4)!l|(8먫02jH!.[cW~tQ7ݹA> |5@S-TpUrË#.̟? mƶj-dxJxl>6uz8ؓ4{d<{Tj=&_= ~˼O}8* =9UWtaQ٥=F:VD7RjܙwPS) ,aֳҺXP!leM6xuR&yZn%oN$XD|#ؙ!% OIJ1fZD8 njۢ<3(/=i'ddJǨiLc`P~;9q=L9Cw[8'xgt5b+RРsu5bxvY\RS}rqm'6*A JT^0b`|pR;6ZǡO@rNWpkg>1b-epᾼP7~KXZb2ɱzā٭=xQG뛆|b6,Y{H-O N˹O"PB?l<[Jz,=4$!| KlQؕO_ 3߇Ww56O i<,Zc2h 9xxE5Wz!G,F c}1G p)eI ]7luӝ4[6^F }kWkqTQ^"l>Ub}p)_LXElH(B5* H9ʑ]EK&P֚oB.v) ?ҧd]hшC,NCt !K]yV{c +N=omvޤY8=PdD)^)cI* 0wGVze7-GzCBѺ:NFֲYD*RKT.W:OLNqo#MG@H7/ъ/_: hA'ֶ` ԡ2{"掕w">먀,@Vɳ9E-;<|^sS$%XwU!FmwFq[ϊ1Fڞܼ9rD%+ҁ(5,`*wFJd}"& "nb1RɎ/IljaR"Am<f5$.p">z4zX(GqF S{в-^m<~dIã!z{b-OZ6ty cVuZ8'PVTu-SԔ%R ZJ_*PHoU -mdv=cOC4и F63DRPL, ?̐-l$[2egyQO,樂0y&8Ug;Eo# VB3Qe DY@:XL^Rg7%ZU6Ql&Sz,N?$535y0LP7ϵKK& & ֊!GRJȋP=젭Mx'j7tY8y0_!>fAAK=ːr\x Rp0+Đ-~~M7lw_YhcOJKԘ,0O,1/JPP#{47һ[l%A3sNR-WbM+.&nm6*>:?F,W 4U}ENDy|nqOv"⟉ .O뿱F:3wP VjUki|?tUᵣ8 f1ו|^)/9]Rp#e2b4n."G_H a͡!~<^&6*~|UO c,w xU};x+ [G뒵TPdFMvj5a]~C#S]И|64Ucі v@ę~E᫯RS;"~W-f(ox#3u]g'nJ%w~a ByX D4m!OqY_J.ʹ=y0L$&J9ňKx?p /@85__X,?)Fa}"Hl /h:iz6smHT@*蜻0iܰX2>0fB3R,&4t/v.K 8OS"iHp3wos#1=g-9|o}vLG=2#`N| xSƬÑw$mV',iҳۗ@"}Nf_w.@|a!=5LВbb3yXN矾'[nV1虵+>_e؟R61D`1JLcTc@^ˉxIU|EG"3-|.?㤾' }Cj*9n8Y'²6Tei9EȐ `T&&WMr(9$`q;i X-mwD.jl2 N$QK89bwuh^9cJlatbWw(jd=nm%Y^]K5YW ,ywZ+U?g=Ͽbm,D.F[Ak $3(^ ? _aP-3ʞj,)B w tS]46$mkXo7"CP/Jʸ?sLt]yD~H5q?GqK/kHKۊU={鸮^&dw8MqVYAUN>wi& o7b[s?*N8&9w 9"'a,ǷV c7+@D a Vφd>ReX_x"QXx?E g>ϋbY^I8B\q\\ (U4AoT,9õPݐɡ%sL8J1W.`%'z <10a35aD]5uY5J t0aa.9K,<+&nlL|X 3 lfcφ4w`@$wKr?lF%M삲D$҇S͸=; ZaΊ_I2aojB&![+;EM|ǎ3nnmd1br.`纘oRzD2N.SDHq}vf t˗ñ-1֢M!*(yKsby{֘&cZ_$RU+BEk,&CCp CYڙCwK%I36*daOM5a%Q'-t+,7D~W&6>P4BGി 65lTLs% ~I*;ک28#> DX:$ 8A#5&[[1@K*O$ dun-D)yY6[s j*+f _VAVwIc^=kAę)a~ӃVNyg< D0RmS1Eb#qnݻ^_4G{vID|ҍA$\[j,!d4uy|I{X7UYW FL+dSM~FW7IE 6塭I,ƗWI9 ʀ/mM2hdX<ۤCj:" ^iIP?UP6uz 1>ѷFIq]@+wxߣzA)Փqf\eܙ&5 OiO)4zf!adXb殴)'jG=C);hc(`9Ӝ&ޯ~~rv 9O'.?]*aę]w-o߃$-P!f+qT!fV&_R I-:?-QѱJM[ -"J f. [DM@赙fr"ba/z 򹂯UGmK)l,A4BL0ᱨcUGJГtkjTx}wqv&)Crp\$!mkN7˧qKq XƥSyJ)-'cАc9OFZy=),G4>x7Goj񱞈VZ:rgZti*ʴ rF ܰL_J !$=eHh07=x5Ύ F`JF 9>:ZE1y6 hZ*ry_@,xV-0R\ݎauU8l l Hkg2nc$vݰ;QWf b: QH_̵6@Kʆ _͵X^\q=VbSF6ng#%NPQ8,?]jk[uS^0%, ,_,:dv+N(F^[JʜOlIU|i谿F\%IJ޾Mz |z/eP?j=uGM˃XR+3>'ܪD ]2\3n-0L5]}d~v^-}m5||0 knFfHhe>PJ#pRa?qYTǘ=(Zi$4?T:ui/6f? u]E߆KNm*xXeV}h>NbD rL3sU{.M#`{$o`Iv*"'"5UP4mauBj;B*W(sbt-.#439;P, rm^+BP KT}%[ss9\ZF;4AQr+a3cm5N i=Zo$5|eP,zMVRJ2nB.J(zGHCч߷qek]5}Z:H%pI hBiB)Ya3lvI 4׵nWAA ?6Pmi=|5)ImUy^i[92^djU;(|ل[U m7»@x mָƑRⱀ ł/#xs*.z2]#{9S,0^Ve}\fw#"9SuGF\S$k넜= r\Dٳܜۚy8iO2a3f,M[_J'vcCAEy Iz"qp??f')rވ~[%6 ēt`prPTWқ58w1r|첁G OyCl(MaE( 0.,-uƺ*5Ha&TRp2B$-^5A.^W%՗K.Wd>!zo)f ‘?Et@ =dF_1D$*oLOj cҧP֗u*0PZ';oZԸ=$, UC+&_$r駾V%)*\vuW Up9B Nnj[z~ VaO֧Ŷn`j*C`th{ ra .Y9KGdsĞr7o ,Gלe%%˙lDa#c z ׿KBCQsySp|N)&:쀓o$>]nW!"A&Gf%mjyz+ 8vp;#OFLYT}(~{N/ۺd8K?E@ >Yr|?$|i7hF0ݐ=k&i]'ᵄbƛ<ܾ֨g⮙XD^Mo3fԲS`=;vV(rB{{89+-דnGo 1`YT|;5g5q%oV εw;$ Xyc&T+ V&vs=1 H -шL db\=KTI\isӆ+˘*W 9Iu~-v07FLъ2 z/ZL f KL@c){戧ACCn0S:ɶm[ Iv%ˣT\J'2?h5a2m PŚ;M}d#،4L R34 О>_(YS$:8|ByϵٺxE] :qF2VlIALX:5,=挊=ksf0Fhiv>\vHInbQVv/uy5kIĐXh;|z<jth'N6_Y6T'*tlwmB&(yl7Wt&Hjt+nLκ[9Odۨke% $@)>yWwT5_/C?TKv9n/8{AyMuE foA͌Pf}9ߚQJwV\E֯Zs +&F)0w\Myڷ2R\Gj'uU0|CjB}tlMySItRJU y-0}Yytԁ4iGx6T4dp̛^Ӻ0;%Oa(c]#ow6Si]]›$\ITmGGNGsZhuWE&! =lY.4o5JjCNLJ/cwK0*:` `)@aU`gmT[0ás/\&lb&ݾidͅ'ؘ /Hʝ~!g#BfELDrsD2~H-Y;ES'BxKOuTF2I"m0|-⣼-:4f ̄a8Md O&ԨKfQ23'YfQJ.Iܠ†hG{؏M^1(3=ȻjRLh4aJ ,C8T L  (Ytn8XYذ G/ p5B3")Rm1ȹ*m෦58?h8Ԡ*& 旻C7b/%P{^AsP4 헷Ia9pۦU߶ ;q_3seOrwxİeM+JB2a}OnAw~2j )ߔB{ׇpFOIdU[;|qV#+apwϟ\m"D>}j#;. Wkhm:C4(< sgڦx9lӎ0}GR55prYUs.%2ބ7/.HvrAӬ'PgLa`ӳYD4tS@eKe)>v4|oaם<# rָC0Į!ϝA%v E!օzхi }Hz,Je50ow8viTT=9C!Y̦\ATh3`_KϗoY9N,HHcbtp[x.":v8z=CGQ#  9XqS׾ V3(nLεwN;ّ *y"/5;`1!v]M"b5ƻ7`yxl#0(rH)ՋU/|zȱx:!M ,@P򴾕~W` i`2Ah} #zD5 QpCx`gA;zX 2Й CъLIc/{w)a?3}c)F"ys\:u"t0Ɋ2ݗUMG`)G6v K{m@Z5 F[JEMpg; On.]zT.*utD[5QisuԞ&xbM͔|4eQêIR@ôym nQz={OJW._$v iꛋ0>\̗>"N<5%jHEu\TT RO[)H+l4JN[$jS7EeQ=_s oיuˆd6ZR$M2w;?gKCY&&{ml$)24srC2rV$dFe*אT#R("˨/UfmoE(%|{^3?*~1QdgE>i;k[aLjmtF:f?&5JMYBcۖ%X^v:R>@?._[nƧpi5Zh0ϡP Ck#2,S5^M{He1[ƿC hX]LЗ\Д[є>OK}f^&M"cN L񦦆݋?Dޢ6Bv\!%n*` 500]g[gNU)g,5sK+b?!n(,GZJ:Njj!AqF" }҃PAȺ >VU~bNbN)<ش6?{cJ"y[9WZ~D#F?'8Gōzixtbk%N}T藧::r6Mr,+ Iiw7vt!S_sj&?WwFN;mUް] b6qG/ 4ޙυP”a#]StQR B 1]萅}?9yTIMx/f iؓ*f/T8 gt§O"\.xGFx!i[›=3t; ZtlX[^,X*OTvO#(}+{ڛid~@L;@hŘ?o[w5tr]M@ىk2/'-1,cMY>A>YJ}["Bi|yYF0y%< O`#,ձF=X8i8]4;ʿ Yq1T$bF%2kt.(OpU: =6>g$kG>v*.4I.&KЗ8^re.tm:n|R0{im0W+E8?y(Ɵi.e%W$pF# pnx؈A߫\Gaf VXԌ^[7{b;InET+6 k=<(A\wΙ΃ $jR!,z{rX`@㜿 ui50e+6M47&2ĒyƂW&^7l^  pԈ龡S/v* uXk&"|j3>[+a8I,k;$?kuF򶰦}ŋ٦HV)tcjtxߧ<.TEK7b*1Mo&Bj9|#Dh0x*L6pHnOl]Kp"Iض${ 9RLW w߸?-^Ӏ'W[?jnr>\Ķ_~'[i@۟eOm{,"RW8<=&7Jvjv?;M j3a}ǔtÚ'ʞu/>Qm0{(QH/,ej3^./\;ee39{_MRRFm T 5ugi[bnF B~K+U\Y+TWV*!̰s IC}7O[O rcMKԙvwUeHqd˧HKR0#@7VJ舁 OF"\FZԄ#YBOB0ed?w[IAҾ*ˁҗiA9-L+ά*} 4uGpbcǛ2lԔU#x/W%$:)zIĝ샱1&nh2€jVơk]23`&^.fX_୍߭+G`J ïCcYu俲a rAJ{5ɍn$ep1:|iAHy b /JN۷РLfUu8bir_M6ϲG] w!#}"U*p(/:ukW=cX8U!muQra!3 zgPuB23tըC|&)uѹdxRRޏFVB:<7/y u1"~%\ 5=( bQИZ[ajSI'?z=$͋{ Dԥ"gWJy#=w3.&NaPS, {PtbL;B6S )0r~%#w$xpӂ" 'V6(bfA&U 1*%zmb\ (6.;]'*x0ɑn}7Sc/=9xrjFF$&nf|Wz9c7 6*0~y&=n^IlyCpyPn\<ƔK6l2 kNaH[@ <(mNXuHeVUHЊU_Xf=o7]z{eu>$38(,{kuo]t.Z.0N,"ꅝWl)fB O_;Ǟ%T(<a>]LUws5`܆cѷjC#0}UfWVy,H{ܲVLW?ru 1 )дvxG&] &7/l ҂@nwx'\4r%[n9b-f)ckfkm"^^,'`S tc?yvؖs6҄UY(vW9!Ӷ@7w|yoA䜲p%rhYL#@8}F(;~b!䶹)0+sY Qɋ y㧊`/Gx?}u ;VVnA|iAB͊D*·>(+XNmCe9EOZWOȩ-UDW6ɼӨO­ܟM7wSgYىwgrBf|D?L` j1wiL>I @Tհ95T=F-1c@_B7)KE7;Do#Cq?)7nG_T_baOSP3D&m`Gȫ::BK#1NSuUg)MQ V#^ |'{p'/!H&Ĕ%y#ޙsI?j"! !)At=!LDŽO)_]WՄ_-b?E+j]OδRj?GaR`bx8G`¥\cfviV'C&\WV+A ]Qd t1z?h͊ C[ P7CVCuLߦNC!mcRtD=0I5ko`C$;GBub/|,FSNa:x=E@c ]%?S͔8=?B)ۂU> y$4 (D/ƒ;ᄃ7n>B{7NRBH">'0Ń7EF9P2ɡE+hw# S g2eBk e?DX܈ͱFmF2<˝IA>ĒJxmUPUbA/pްsZe1?{koCbqUHH5F8'AA*Q$ nM6cL-hOLvRk>UafCL!3}juuw_,p]KvkfʺANjEV% kZ$ >bEǭeG3-m@CAE|o(Mcиnyt1׋"QnhNQstC~7 ̽uk[N%8Ώ9ADqcWf /@oh`GTL sZ1hs?:d$޴vQ;u誄|Q+$: 'G8ٸ }y"h)|&SӍ^.2 ILMسV ='Hlb [ Vw!?TuݱLKzZ\s5N>N)\22?/d j K.r9e$yJM 0c`r%s֖}0,X(v;g45:+{T9=p\kb6zfD0Ni/0L#̴V TV}v+8cf`0x҅z&HfA2]մ@/)/w:,2 GB/JZtM9%[I~Rޝ lW7P_)ϯVӾ3`WFVeC1_8!$A Rq\O˃WZ[Ɣ^嘼]H U&kWP{x)f_]UB'-ˇmIk O5P NRּy';@!qc(ʖp"Zްnxf3yڪ/4jnUР6 SYXÇ TrA!d?&|qͳIGUxpQVP"vs`HVxhl +0$ǐCve;$w ̷\ǙQ~t)OLX϶3LQ.x˼¡D^{Wb0G?8B֍;i%ren,"Y%"S<$ZH\/N;ϵyڟ&|X rdaFc ?8:USϪuԷ|o"t*pW^vO1 M24C6u1ē%"A 2@JF.xRhU)l=Q@Gb{k891q>Kܐ3@.UHW,4s ""]"z| e[hXVGq[S3ZIcKAR@+9[  tCgLч0ET5To!7~zrt9bHqT L%32ުFXt^3 0)ST$Eyi!ʙMΚaw7?jnfl#_ KelO䴬Jc1)j%CGߵGEM7% Fk[/ tֹ^Oyn/q*>UأM-܏"V(Rdo&{ mqEu2St!@x{\/Y0>'W,#nD`* ˎt R.T+hkcfOQFC.Ɓ9w哅fqF7 k-N=ȳ."hyf_.w^Ií5cהP^AR Z&kSu yW[DpE;Hjou߆XZRQ5sŒ;kTNčDenk^7hduhp8e&PD`ϱŽ *6ķBR ^Xe)MDYbSٮZ.T:Ty}P3ڒ FY*#1S V+zú"ܫ"W2?g=D\&&Ҏw7)s2{ Z[W:˾%V0'yPE> 27Ҵ%$:3XC U2@S6r9ɋ,Z[_rP09ʔ $nh͆3#K t)lx䒯yܺzLd3s%q@P|y)l埐DhZioVCjVQ߮}{$#$߀-+l,U²yF){PS27( /E6$yJ>ADMsNcCh8 #@v*߆\ ][xp;8 R܏mI+YU@ɣ< PP;^_|wiB@p>BqG":DtQyA3Xv4*FoF>of2XIn=8MH@&8={ *un拆O~IGuRwXβ<4ܥk\S =0)E|v}$▀*)7}[0 FL-}S5mCMڊvN"a_-g6O̴0oQ3 Przk!hA mH }F:?.v.f^=CʧJqL$R2K0I=L V.6T9aR} J ϑ53,FzA"5S<}@4Pͱpmq3.AdS}:NcWBDRE2MZhA2ܯ>Ybn9FhꃛLéҀ c^/S:ۣŅ\Mv%53ȯOcb~,8=("(x+*C!U1{?|0[v-(Уieφo>#t%PPcyaT ǂ?DWk?+LYԪ?ۦp\dȨHyLsЫb ~3>)/nLXy] Y͏Ul.])մ͟gy9]K.{t8cܲ ~w4uj!F(cduaR>7FqNw'`i.t3JImH5՟0ظ qHrMtn|UwMV39fXa_sFSUl#BBg {$aWY)ډw7b@Tp9(~[z4J3Ӆs+!DsÊJ9x !Wl*K!3UK˟|+<)ff1ziCAs#bDUn`bnꁸq^qȯVx4ܙ՛ՙ?gP@CCE-Q(V$vcgMrF7ŮpGiY+SYM9VhsxAP i!!dt&0 Ҕ1rt3B 64y( N"!-=j{T)D̉[ꀦԩ4F-;@]>BȔ w>k7J1kQ6ۼy]$8;|B M>HcDRC.S LW P2h7)טJ#ZC&yȧ쑡Z7-F,x?(po!+Fc֨@;ޏ~}bP6l8.+kO7G췎;E}@J"'ZCpf>*ߓ)uXݗc"+Lo/͜3fշvPk\ p΋)ނ% gijj$NnqHSH,FS$tplBŨŢpPX[/1:w+ݴ8Ô{s7w"l'Y`!xa;_4,%\GQZx{&%Y0{(8u:"plf>?`M2On@ЇX负Cx!Uo͛kQ{.HR%LUa`9=h1D&g{fB4!b;dd3,`Q{1x߈OkG<@7 $jҗ8fTY`$B_ۣK'&ڃcBU=V2@΋Bx@LXF,wmY[v|U:;.8d /ث(`{ Y~# TqN756;@P ETNPp5{냔_='~E>̀sn m5w6ݷ1.mZ k[e%T 3N)CTHekZD|5€X0MBWN\,4%0X!_To[^!Nj /baݢxQ3سzG~qvV3jetUC1mol_[YKw\9G^*Q6Bfhfc]a9萀A(%iIMy`a H=xbOL¥ %VsiRE|d),T؂b$Sv"e|^uucFV2i9%e)OL|ڳz;D m#Z JUGk?I)&TtEpڦHz }e-V p>|bpmĕ/. `Fmo kXOe_ X ïy$,L]\'95'!їHMDW}>B6NњZ 1ЉA|h=# IŲ,O@l>B^>n[B^~-h-;x?uѣEV -D\/3뜪V=N=ZCzT $AT49ZJȤ% 6̇2%6[_Ёid]3 !VaP-x;ܐq8 '𑿛 m9EqLHM㶦Ԥ9.1Fu2gCE.Ue9sy̌QW*4$9 tVN-ADW̴aupa݈hFyK;٣P\&Y;::b'@k5򆣚Ur!F=!ŹCDNJ23D:{5i~'ܸť7A.ɥsl{VDq.wVlQD}2AZvIrl : vj/ J0P 'IP!b-fû-ܞEW 0O+@Aj&,; JTXd| 89_/./|%U^%ͻ@9m8O\Z{“},H*r͔Ԇ0FF߅m).AC^}//di/kzsi!I}ڂ1i۬bdOSTHIxSHݮYL OXOxUnn.{©`RţQn^ղ_sfy!սz$k2@~_Jm8&|rW>W_CJ/AX{KOG|cP~^/-Mͭ4ՕPL9g'卹D'C3phv~x&ɚG{ܒlUk]Rr2ީ$i(,۽T"RL(.wrO_[6U>jS5$<0#a];{UHpqۃUMA}h}b.mauM oO`WX7WcvYp 찷Nmf&s5m[GQ(!`$RtA^6GŶ~XNMh!W$*zjD%Hw0l٬a{s];})9>ZUU7?@zA!Zc<^@ǎ(hk#6 7{.O!6@(%)~q&*^ut{R0}> <-Y5ː \"p R,-: mPe^Bt(<:keeGL^4+L, GdtrΏXC "%.'W PXA'do gŶQ2>,5m5`o-(o*Eۍƿ|߬m5!]=˅*Ҧk|[յ u?\'Λ[VL|,~>_f8'O g”(ĕm%6Zځx1 蟔;L$$}1a)Izd/T:lJ$ͬAꊠڈGVtѷGJDk pP5ǎ ³΍>sk1R&>sY~3eUD.J][g1QĪ,kjL?CVÏbSqIH8zTtD`\Yte^pJ_YvY4gAvpXVzEw]|sr|?%P7#✁!M߅خƲ<"1rK;^K]z mV˵-sɓ!vU=ЀPߙsFﳖ;}WՊw6į] _TBaWx˶,h˄vK.DnRw-gDߡP$M,&`R@ y)4'B8_LW֣ -r6\$sOtSKi/2eac8^Wo=Q+hUR{cpEZ検D%Zc15kcLaD`_?f-Peqa(^C(PqxO:;9ՕJ,^na]U3=Gw'ԢxnE"g5FeK\߼s=oBlq9Gjdϛh0_#dߋu09^dWؠ:BWxK12NU!?K&MI^isTR ߿E(0}.-}lr4edFHnWVҾr{.8-/!VOUq?#݈9_"=/傩U ,6AJ!n\UxBAnb@Lr+륽Lcj0QjD^=.D\~bor x0:G'kE1+ fB$u@9>Mp_Kƺ8Ī7hoAԍ"7Vd0Il>'AVBD;-σj]'nxp4 2 qWa{}hKjͬ\yXˀmXzpS|'Y49,>|!Ə%Xk `*-7a^@d9[h,D@' 'y= r׬hhA9s ry[)ڝǼUz-:#`صUXRs"D>j}2l2mܶՀII#[z$K}<4^˜}&`%!Ԇ\3K IQ "p'LR ْn>:σOyy-K^Y U;.φ~ZdCu:*(L`Q)[&cZĢ8z0yHdoYRBfBRE'*[B;JnS>5Eń^HP:n$&ҠbtG튰y1]P1Uqf>̝rŶo0<E8B%[v7p91c[D'0/ m\v4w u74:Д(xY wFX,yyj7@=PU DL?0DcPjXn[Fy/ZU}Exk2$&(cqE/ItU-iS!i?\ODB bM6ylB3E B ~O-KJ}'T®^Ib8 Aw+SbMǷ~1>{Ӛf@hؤ#q\5 sE_O"Ge2 d~#mG]RoDxA7&u~Sq9ȉx7%Yjހ {D'84abTհZZ\[};I_ y`'J\?(Y1źq%~Rna; ×(}vlgeHq<di!SWd͈^S &4L>^wx>{pc VGtSv.re["؄G7iS*B&܀C~Qqyn[kQ T9TC@eLjmob`C<ՑqLa,kÙmF_Vu1ߞy?[t?`Tb=8'wi)o eP?de`腝{ 8\bt̼>1ڹ"]n #5> ֈBHBvHCBڐ+c>|i8']|)ElW\IG0-9 a5.[(KQ9O Y +XK\-3zs^{F3bcqCҊYZ^'2r\3מ$hl0|c'#9(+g'FV{k>qS2<Vjܻ~*eM FL>ہFja@9L!-p܂e;VbRlVߣ)=rO|~9'TF5k$^$bCֱB]C׹)r"M>|WUתZa܀]9]+rTA]|k|m?x3&>ϰiBU>m1[.nBAʟM9h7ˑ 틖V?ym9-rntJ OSVϨE{Y@A$r^d[$Nf 7&x7 jƖtCƗwΪnjc+078^^5wDX7\ߎRɲh0$9zT֠9'^AҀwu~f&{5N5x-֫1wS:ڜ4sm KNp=~#<N7?*2avO0>;{9-GTSa*[&݄ ej?rM!ǤFkƨ(>/+[Vʚ.K+˭l蜡+ێg1Z' =` ϰ;:BP`oxE{grb׵nz?_Ҟ)H?jOKq(QmDԓTtd-zM>? J1LO|d(݁`ܓgK?5,iSjԧj:Ƞ90`žh̒Zd}gJB킡<<y=&Sŝɺnntlx+KDffC q@_1VuQ ߸NIkݺ1d8Y^`VrJ^nǁjF|y@[ Ѭx=*y «q?~=6i_ wZ,uUND e*^ [@7>tɋ㮹0c^LiU+nH7^2'X5-'e堐`Vb( <|wx2G#߰EE q [>4t#HHbU#'Ɯu7# ~ia=K`t @5J.2*[HBo?:PdЬ`5jRmBXG$SR^C-y?T*6MIs{1F:![jʿ%h'4Ñ3/vC3P# pi{ZhX\:,խwв-Go$Y$`oO~FPp/~wN<mϯHxRu:H~N  "37}U“r:s_a+H;ȁe `/8&-MM^5Bޑ;y vQ# _A~<_5o>_J)fiDh|t |rOg&VKڪe`ϯs$ N#&OZ2+ 4PiKe7ߢu dTY#i&nC2qRroct\>\f_?GL* u`e3cQVfO&/˔Z}!4%ۡ-/{vQrdE(Jk&d9\VSba) [$_2FT`]=%(.Xh'ݗkSΛz@p{ZVe@v\ڝ)N´?([6!a7~i+g4N֣'=@bVpf1ΐTD U/CBdmRfȶ ͯ|f;d4CI0 PX>ۿY=|&M̙a0 /#$K@vWeS6=SZIyIZ[b/R~۞O1mPFۦ*ZM00OMjz\VNWTq\?>.:xcԦ?^uYs lSd۰3Ⱦ~x^2<$e HfYJ!l}b p_\U *Ê=ju-#ΘI ,i|(SV+Ӕ({(k(f@ZT;@ s3W&UAPϫ }`LPB=(oǕ1 ҵQsְ 3Íx"5H5d#-,"p7"]ulQ++?yR=K6'q k*ϱu,櫷ijK/kb/ ;[J_l{}0+`*^Xt$39 :x hx\n̾RGǶczRIڀrAg {]s8KTthQ86~wvM;vZ"]26<TGWN%PD%ZUv!:6׊DPa6Ǘ^ # RYD~:Q2L GD[WPH󬽻V 47Yv//Vs@.x.,-1ZL2ڨxWm)yYX|%_?gNk#-|{1fֈj3ع=  r3Rj Cc |kuFH?Q,RQs^J=|+eoPp4N^.:K}!Nm2);yCt-V2Fh>8Wh@}a5!>vN)Q vȀ"Su}ˤc*j-[]N0g. yM麸G(ʞFf Ӏ! =*3UM&&?!:\V7r&kctx@}Eߐy@IH$LAtmL apxCFYk-rޭvD`mR)Pi pROTwUx?f!i`2X;ҬMDjK߾Ql.yē;Pmv?}]4R(jsC x5Գ+K];1I &Cw╜$d4]&MEK1L=_}6y4^iqBKw;;dHEJS.Ύ5L}h#~gH9-]j)/G8!?[󁈲ʦ.%Tk ˘3Vl*=Gq9c; -lG_l_3kuc8.?~-j9q9 j?&u+)?K7`Otdz/̄Pp=[fBbU. :ΡDe F9l-ƌ Nzj􂁖ƫs>w[rAma{3Mx^Q}jzQCwx0 TSг-? "B*n~p\J旷1LQ&K-tk R0🱤6:-զ}ͬሼKW4trzg8D=1u%W@B-9; scՀpt8֌%,.EC2j 礭cEӱѽR^(59(?_XxUӈilݐ9DBZO J$k8C -#zҚUhR]HF{KE;wGO/{v Oӵ70KC|3l6#hd,Vx"r,.>ه6@MthSJK>f@b~?B O&ܙ*zGV(v9 7%çú6'7a+N|T%\DUxaȩϒ?9+sg]^3Tsګ".̐?ȚKwTwyhEO68Ӣz5v%b72n uX~&$PkKXl .!=n5#s o9|H'S<6[?ދZ!TqDA$۶4]6;)Pu4Sİ#q>D4>jFl 鞓jE1>.d't\h);ߔ< C9(s,3>ZҜW3|@I[aο fZKĶM^<&G˩'0ʉݜnYK]2&z8-cGw|aN[/nkIID4[)C&Vܑ^sx /~ψtŎE0JSr_4J'nz.T/wJ3jjZ2>/ ffbҁY;f@[ YU$7)Zck o%LМs7WI0>5Ed7P8x/mۨ)oބs4Qv `v;N C&L*Z9dwyPQGqdh-=f,.|dJD /76Wf[ N\\+ Bsã3L!婃6 LkrW9 ɾ'HMipPh(ʗ[0?\ȋ_'BUB?Ѝ6T}&6V9Hhm;H*!zpyqRZW*|V\t!٩R9Q?.?CNF{O<,Ҷ}H.QGp?%r't~2i^T+1e65z&(H5nSϢY:= OZC0L/`y%ujVhĪE͑.w+Χ:̺DM?6`'}y SZ4NlxO8ׯ oj|qd#rn=ZX84IXd|%͞Ni)yh IqBܪ`u=w7?q{U|dszJ( VA+,Pv,SWy?{}TOjfC\A+"y_/ >,wRd/G;v5,—m?Nt@7JOP5QCb-yZ 83> ᫅1NXrX}|U"9RDP{krX -# tFz&i`MʋZn88/6Hל3RW3B,f8 m^$R= ?E2D^ӚuZzVnT\Փy9_PiqT^I_~V~l t& IWQ}j_h ?O>f# j0 0{~`סZPB +'P"%8:Ek"E>W %:>\yZ!.@NcxR1`R?s _: akzÚvBʪ#ƻ2_%Ÿw !uQ}ZȡBN| #ت |/MF߉bX{:IcCmьc~ e]I_'Lg: ufe*aSũ = ^g`{;hIe`z}u'aOPi[nyI|UWyaD@ͦ㎌ǣ|{qeqy?XCv=nJ֐+dQd孕c;zR.ŢBs>JvV~ζYPevuEmL;EbG(]de6~;HL(Ju _@ z]2lH$7z,\vBdJ[5{u 7by g4Io5PVC~Y#zn,84̥>AɭAcR9Ǯߺǝ7d\(Wlte{_r &ĈٽQ#:[@!~*"-n_ !aՕPN}Ic+"(XF"yZ[hՐ`H%u[E݇v;cC 38p8e%"O*PǑ!j"%]"WDm"M* 떈a_vCqd :d$Z D # !. Nޘ#zŰ:ΌΔ'a[ a[!ƒV̋N'zPmH2;k(`eů^) 7#~lP&i;V/ې92P޾hwwd x%&W5A&VO(:& Di$O0ޮ&u:5:6@tv(:Ƙul87h՘Բƃ)62ߝrSe,Lg@^Aw-I#. pjCN9䕼1kqw \cRU=goM"`mLS fWN>]~ef7Z3d>Jtsw1 U)@R; 2Vbe,9ܼ7vAng0"@m;i$:V2ӡ W 1o|?AO'OagT7[IudT$Љp^\ҼKM]`5}! jtMT zQ$x٤ [< 'E7 |,粄.+|vAQ/&8K u ӷW//%/L$I7#3m̩VVJ CjRzܧ[#[dY7ԒDeP8n٠F7rޑh<v.a>!-O88%sv25T.0B܈Mmǡw|sy nM-kZtFhdEnKȂyebgtb1ѷE'i.|8] |TQDQD30xrRt̞EҹBPRcM[7?zF v: z$P(ŒOzu1sSw*SZF.faUsUwK{&6kU ={{0d%"K)W㮗+7ͬ16* 9РW2Ի/_hAnʐg-7]3+_+Bn̺}lgl4кdhIZXg^[prKY[a8uhEЈy=xȫόLjw#1B<~Ӯ߈*ЭeVcXMyfb[DW? L-P9b#/]m5g5Р*~FsUT+:3(ˀtk hܗXk=cRS-zU(%xUR=ϙ4!1i&4rSKbZ~#euٛi)* AH_` h+9UςfZ  Rcx+d$_wfvz偋]V?f3nN4`ls M'ޓ1[l.4yuc*ޖjaDahCE+fK߲3@SP1ƙaou.;⬳ttHْl% xbb[\K*?yY:F\O^:Ik2b N 1~ R:zZ{ho~Z+gLjiu_m4(yשH@TCF(_5.|`p[N Y1ή8.CY6.ɓo+iD 28[@it!E spU)0Dx:̙xǦ bi΢yVˢku^jSh0=8UKxJH 3/sf]Ιقbs.;jm_߭ljٳy.rW.ɚEyv.X7t\},Hd΂W TPzK!er}qPHc8o`N٩Jn4pg 6N(aZ9rƲ)T "\|b#$yZL^l+װL[8| B8šZZkW柣:Zeuu`ޠO=F1ғs>ԡگ-5΀G[k{WBeԂI Y<12jIYVk=XhYLg!s=\_V v1S9mj2 vaJP?]͚~kқ6 \< HZϦg? Kt$ˣ)Co{-+(Juz\! r%E8ż4`u`}i[ W]OEwNń0flv z~17p3S֚_K`u!y}#[a:57/4Sg3bnK-b*fଆ ]1);ꣻ'v\!J{X#E-z%2f&JilϐG=b-ۥ ~oc6u8hZP-˒Me1ֿz~Rl_!Z}6^oHb0ULV:/3= @&~{t?ifEv <8k#khiߑkXg&{*v f.CTO(6BƯ+OߠWv[^Rf{%l+Mw+'/xiDz$[Fg aBOi}cEOJYswd) H#d]r$64Jiҧw\AN\"^݇R[㱉ns d_茾8,dM`}ЉU\}g>ϺxFкzȆPxg6[Ken?~G-J3l#$IcŨFF6wŧ%y9*/.c5bqKZTĬ^@ž< WgwYW!eO&ԞdҤbEJ ?w~­77qQNvlADNW6N  ;fX@Թ&kͳr4S8lѧM_'|C U)KIK~~"٩ࣇd-zduGaHF6&{B0 :JG%iK5xyaTfѵт3 *C2`#7v$łJdEA$" yr+U}[w5qo9(WYw>LJHbdL_u}q0EZdey`bҐUSB~sWd&jfʪW)4{l-=A!#gc":6~[HҚN=p5]HxjB?UI ;:bnQy PEM6mrPejr \T1fuL:d5[?vsiHu?PEǡz91˵Ν;l5,qCD)jHc8@],SU\lLpf|7U,rj͗imgZVkJ$S)18\+1kU)io$xkpW5z@HdD&RH=:o[qD/lcEUcⷽ@?h܎1絵udƣ},<36E^EUIH7ȔeaǑy3(;+,dR#.WӔ 5ʈ 행uʛ**LD`Fl䩥/.5 B ZnԿ20DM3 o=l l[p ,FRY^x9yb:0gJEL'1Əyaz(.=ƙ JY<7-1!=pʊr%2KODl(2n[b4+w>Lb&:FR7n?$eP^m1xM¹')U)nqO ]*.̜ScŸ_f՜3e8`$KcϻG$"T.ZŴ-k[O%0A "x5crWy{.r(Þ+E_$Ʃ5oNGfs(0.Fbok2$HiggV&>qTzZ>yQU;So𾂀S5]Γfug=-sbqCc4 -ݰm rfU,X^LF"B]рN Qov] M5:Bnr*>ُFԎ"א!xn%^dmKU&Z&c!y9ӳZ-A7t =dt/g(o<4֡pݳ]I Et[{!Ab.^ݎIJή%#OSHhIlb?1I†B9XNmPQ.c  |dܞfrBD1X[:_:Lݚ!j(2!Wʐt]{`x]Y%Ca2şL#:TcISԤ]$ͪ#J3ou". _Cžߵ\9ё)Y0kWk 3AYp rչ&-92l2] cY+ӗBٴ4E/23 z䝛\uEhwgw)~~̕"mdZ8`M2_]*8 tКuSߞCB15MYޅ UA?I]!!ZfP-j09a9M)iwTj>w I`+i35ƾ\ 6!INFW1٭3srO;̶wvfu˹ƥR\@ͽN-'wbu)V:C*|s(N;IHIx bs~$&#frD|qg;Rv@ ʻO 8ͤ>З>;{*zRGe LNhd<1hodf<ƨ4', !MU ْdUKit-p/FH:w.k>\*"ق䔶C7r ۭHZWqR`6ӟWG+@ M:-.zc.֕hݐʸBZWXAڃJ0y"7 \EO 6.Y ƲTTNSd5~6_k8 ѷ술\}Iyno;)3%LiȲoewLg-n{68ّzU1>hL$Wc%UN-ψiö=5~㝳i&~zXLbxq-1P$?yRף4ǿo[CQ7 xYn| E(M=%wY =d R@KFNH|$a/[̛ 7Hn {nqn;= RN&y[}^2(y& L+;b*H{j2^l>j8ϼZIC²ZI27{8U哩/+KwZ7Z{cozm Fsb[nGqVZy- M5 U6g6Ii&3c:ܶ٩ [ǛՐM[,5$D4)eO*7cɿ)*TRsXZ 8MYfTxc(v^9Ra~W񴞊T cLm]'Y9 HRgpqEt2=+I5FrdT`yB$9*klp , nFT~j%M_hKZxdϟ?S ZH]-(yjWhO7kȣNEDQ#-[툃1`~|rCYwr"`e{QpjRQut23Zgď̾bb#QT6mކr&vQou1kt\<*W(Qx7 F"#J9d{sϱ-5g(i-Ȍ@Z쩨Mزj(5}Lkj !CQgFTDBQ6v+v++\ @cj[Tל= m1<!vNfKO$9y/(Geiۂ6sNE8r"TT)7LߥWf B]7`حggGꜾӽ<6N檣{*?itXK{mby%5 MXEG)6.o*RmR9;TouA F۸GsKyiE01؞%07 c+5W I Wi_BΎܠ@HUj@78~>2.a gZ^s\_qXGeb: Wbu,Ik-qbZԼCF_*ZZ![ C طKcWxlh$c vYg$|cYbKꜞANkYU$!SWU}Y洤WD£{M[&{K(-$?rqzy,‡(n4u[ sGVM_jm2u >8zW9L6ɒ>]_|Wǁ}ȗֆ( iq(ɡB;0-(=dP(1%7*`j،+ &T,%8g>>z|`hg{7x;W8X` [&-–A*ł)ZRwpK p² s$, +?(svFzeD=8]Qbc(o 7YivdtB1dbx8@{%N\˾vhdw{0Wt->03,x>K#/c/\Wf@ J_7Zrޙ#n`"B2k5zzEb9>-J4}F0QxL^PPWխ$NDe;\Z9S9- <t!2ϾNڼ*4Al%c’lMTխs/*^Oڛ; ]97[ؽQ8>٨;2QЖ8Ca"= i1.l+_;d5>K{. 4ֲ3pXLd dFHX6.=wٸ UAϣÚ5<&YZt}==a}r3%m+-p07)Bo}SQѬڗՎ 6/h!#[OLK FvQk4?)lr]ؕT)q%9V',% =sW}5%Oק%vU)M6԰jp@^2'΅oPU1 /WrҪڞp^J. Pd~C,IPx؝Iku|cUL%n]@L:um $1Fțr*8\5LmqJFdZoy_ӯ" tEν]S51bVGdY> v:)=v.^:Ԡz$lOL{FU^*֡]Țl\,N @ѕfp~RA?OJcĹ;VFA_-ͭ``A{y {X `;oGyB)xB' \C_mSTP;pXrI+K0)ojLoQ6YMh% sB6h]YR Vy o`n?z?fMS!\4[Q;L?(\K^%4l6#=F+Q[?&V\t\J0by(,КEp?X:Bw<iO,2kے+iJޙWM TAZY ~94M%}V s3DOWrXR8Ms %ψJ1f˨ /E%M\XRD^OGq uQ 't>GYC[i@\k(Q!ߧEQoiqI>6 8(Ccp.Ш3~c/"*b+ہp$~-5`HZ2LM(gi;SQƳR4wpy#gD֮7drSӊoK 0-G3NKO50 ֌COoNCӆ@?%Z@*(1n WU8k)/liy!M͵k+;Ae&L]/,_wI6P\8L%RVqւ"/ Wɶto*Yaf(ȝB`ݯVcaW,Llo{:KMz:dXoRuaRD (%'|POKgbVT@ψMǡxݳ-TW sN`h93/C"iXZagTЧo-2k0iڼTc@G8. > $tMZU7Q ejTlg.@y(*D-g0 ۿ"epV@΅&57M? 6 QzM>`2i4 T礝QLO k,\m5cAT C6E3%FE`LzdtBQAu!3lNy|Taͬ%ҡ"#~(U8LW8"UĴi0SKxؐWU:=Z C0aa!@񊅄܎ rLV/Z4b}YISF#qnF|,eR\H 5;ZQgYeЙ U#!Ҙ7 қm)?l!@eZ[d;^O/ܐfx+F%2Qߚ$<]X1WЛ[PsȳcWtnA}ru_n!dp cSk9^%MG61*j*MK E͙\~k}ˮڳJg T)KN? ].],tZtzsdV]1>,Y~7"7^!k9)svH+ѨP%)VB`YsÜ2N)#?!(L{1KAg2 :?+ Dq ;uPq|ӴDBňOƅ.k%V3{+V"j2(ss"i`tJ (53}ZaBlqW^ZH=Q8dp3; ' Hn/ks+E{]n1*Ʋfkb-%;lQqmNn.Aɼ#N2tDU &q=+o',_&5lxϛvUg~hNGٳePܣfU9)7MU}܅ƈ2B8prS! 'cRjƳC-W쮻$'XyE`\7μ36 /饪6`ߟ $ EEo_ -ۑiƫQ݄%p0W>q~k>{Xo)*k=Bo!X SΛfKPnvasCL?+.ri.Q_ʩ/cS>K(i0+pbF ƨWOeKHȻ?H LPh'f ]a?s$zBLl.)̐6Nqou P%cXzikg2g(zL <}~Y&$6Ӏٜbۇ#bm2 /}@nQ`Nq]'QK}cp ~Ty OĶź09pwRO..phj; u*8Ґ U)Nw̑K\k 2/zf$g̴ Qq=[d\*qnvH{' #PODd*#̄\WC)(# qefv,ʗWbRq`rDo D.+o/g/[)rŽu+Zdb9j;%/+T(Mp;18'~ ELT uc^1D6@TF]{H kL9,~tc)ދ1烉eٗ&JCR8HYy,ͻE~U5:If)sՔ~bU1KH0V{ Γ|Х:rC "D܎%V)!A!m[ ؎HP֮amH!.oV4Smcc 0Y Gæ ={G)U3)^.3{.?!Vn,Zep4K{վ@B<~&bWO$)Wzayclo2Sf/d$c+7kcײC@O SKwJ+Z7H9mGM&|wT~4^WbƕNC[4rBFV C!4DÒJ]ɶߐIJ#C5vkE}iA{kffD(a I?)'LE<$ }-u"ideF/Ktun(`"B4Oz@3'+9 -H(sŅfGh 3ٽjtӎZG6YJNYMȵt-oJQ8\pK?J8De]G9:EA~\:?fǷV!ְ؄7)]YYvJ6:T")A\*sF~(GX4۟gfN7'yzt؄GCE5gF6[|Qqs\$ CP6sjI1lA<6Qe*=fOg hDܬx 0UYr}˘Ynh+~꺤|Bi2\s!vVC؍^kX٘LзRMŬsjăO,fpwZܦE1~z3A3U[ WAt%F2l>x4qU( 9Xи0hp6RtYۘ ?q fo|_jV۰}zMY/ ͖}4?,}!3tswݎIuA5~ 6*pX% ߶Nz wva  q"][h4FQLTgVup[PsDcBpȱHLOʣZӔk{,,m)n\HDCwqGwPא[:i)跂 i]d.N\sJbײn!S(kw*D)&uuܚrEs0TmY;mim}? R%ȼsv,@#Z+QRۮG6洴t∝ܿ0=Ú7R[ǃzʥz7w;gEek𕵶)*.1Fk66xdb5]$v'9̯9ٽݰkrk5.X5.0;{ Š~ fƚE$C#j\x {'+5 L=r5D /O📊 uS;PKD_ _xWz*Ŧn!ķ4)z]636n@FekުԻNM"0Lp-'qWJ=S 4e@aB5Z|HKf`r>g筧hhR -W=17W}r]qcƴxwfKHc $ ;"ƍ:mq\X_Y,0rwix6"Q h37fEՄVvt?w :Ux!sVX=BaMU 5_z}bI'T/MuLT>L}Nl*4Ajڏ\0(4(znDv/f51TiKF>@C>'YH}`ATM`q[*5σx{tPǾ}Rܗ~jQ%#hAb{5wBu$$6{.#_J:c,&k{5NjuAl~rt2ӗj hryP<ݡŢfpElx<;xUvbCSYlSI2?aY?6,W#4jYh׬Jq%8V ܸ!p-̝t?3WF))ǹ@ 8=.ؚtq_Dyj8h]ۅy'mѫ肄w3֨DuKAf[ED-sc ;h;XH{)RA7Q)̊1x'd<_Gs}nd\$ < ]-š1U|*V`CrvFu\>jȘDo 28X{~ wYfV!u&[{v#AI%B7lC)Qd d\ϳqL+."{&&+&5;xtݙ{ةr~۹K+7ٹ$!X m[g>)#Szݏu`H1mk( K-Xea^9b ;5|Kjb'Bxq~]  X'!8%.#g5ppOl8v Y=pӆ$Zj(};!,oaZJp/9߶EqIRCܹqsxBeSʟ)v)TÞݓW%AUޖǣ\u*^{E2ezIE'@M#TK,ʢ`'(5i QiܵlG5+2zq5mo=Z释:zs2Ӧ|I~%%JLMBuijz`>PCȗ>@+s.joLڹ$ˢ= T\}Tr%S ad%=e=[XuU"𕸃/bN-Ḙ鞶׾Rб7AR7K`q8{11i9l;c GFw@!k*' fߧ8wOy-LV:kK4Gczi{ډ:B(X ) O\A5= C9V(!o@ ڭǟw0.'#]Z52Z8R2ݑSBPÔ^^'^eFGҏKa/4e5(Ѳ٩Fk "|g<&/V~g!oY`RZ^'9 dg.Eb`*`3)2c@t/5 G[]%A]'+Ii!JՎWН/Z=$Us z®za0q\VK?--Fd3pP<P}CyQNm:ZO}<=VH;߃ 8xQr>kS$,OCߍ.s )兢ķw(D= nHu^ fVnZLm2\,f1S 荁gѤh-E؈1|9V[׹,&>Y[c)+7+zJ\XiEyK٣0G1ؙEƇ" }%:Fy\Ɵ$.|;sd_Xd% /l߈mss{f .?φP>y $~_~,I+{iz003toK |F~i2JbZ8BRPW'l$yڅ=UE\݅3v8ovX,kmE5me&ʱ673d@>qzw]0`1 ⣞JЍINAb%j=:Ez5Bl[& +*(1ePv~3ϹiPFg-̛Y=H%DA\YXUOm|JLh}E0q$ւf, <g>̫42\ۛB_`|, $$j$4Տ[ՌMsk"݋qRCH0Qڭp`by}sD8Yax.ĜW/%`a]o͇|1%] NeФݝϫq12о #:=$%ks_&C(LC :\?ηɡO{@G Uk@ÞVCbbV5{E> YoH fn.a/*`A˞(ohNϓ@{q^d;,xVH5"Fi+fNj$27؝R/ʌBxX`'&فX(;b0]=":^w@0;Q3M'5P)fql6\-mI.kɝ"1m=l@pwaukZ4mr>JupRW6;mac*ˇ?#0ز{ZY 8Ht71 ] &;DXVW\ z39gaD/؆d u15M)`fN ,8B@Yx".+*MhQ:?ڏqa9Ve7_jHFT6J. ~ '/faW،`Ms'7G nWX|M1Ee>[;7*6Qs̀3Hm13\ ~w0!C.ԣ\a2;4M-Aɲ韱{vxu1,ARtM2N(-4ei*jFM+i7_爚zLso怊y,@4:F%3 +HF MF܌oX:{M`*ͣɈj49:'lW#71X~An]#FljIZAXq:b ~  w(/P~E]6d8驲 \m>of4KER~Ǘ<4aoѩ(hxVY B}~@ =%l]5x5@$'5%UP93Zo*eO8tL*'ꠐgR'{DH/L-x<jCׇ-Srv"vծچIE[\ :GpNϡ>gtK_зExIQo=9-:sFV14SL-Z ~|s?#-V.GpD`У=?a-ЄךUtz!9|D_T{Wi !jI+! R69"¿s>3pp֨8cc9_}2F}cd_yB,HXuℐ_v@IueGa-~Top [CA6'8Yx<}B#CzW/ s Um7Pn1zԏ J̭]!P|&#@;FF^F?ZLvhjqP2ӟ0bx8BTLi`].1DYPo[z9_ jk$v8c_gacBۋRXs7rFd5Ԩz()1>ڈl휓ը^oi=t92F3;v'(M6;jIIYSr\F`T3J</ ab,fF^@|6j kb AΒ]Hۥ*[ ;Pr86tK/(&ń\6z=gqNQv4Kpg܅SsM-Dx< gC3hns{|SDQE9Q\]E6+ #ކՔ_4X#28[ƌ>y.@ msV"hxJM|xdsO5ύK[U<TXmw}XH{Bm&+&≠쭗W2&}{_$vZ$ч Z&=9q@aPsJZn-EiR7Ptvt| S"Agkh rd|5fEᏥ}5|3j 9ޗoep# ЍP(QTXb^@0"ԅÒ.=rݕD DK;!Q-şzpE~jWT)rwvuUj3GӉ(}PַBI+`Q~Yqĥ$'n gzCc;VB1(-4P~MH#K7p>]=z8R61&yzҟFb,C&q} M#tǕt7MZ:+_2A 2!UHEYY1d&ĮsbQ]|hҐ?d4D,E*3#dFYh㹚b;56'EWVrV: d%KV!\$"\+qoKfF3BZP[QX $a W>[4ʯc%"'АumS(p;Cn" N}vو k:(+zC+jDqzy`EC%VD!Q7ZF.M.~L7E[nrE).ׂҷ4"8ڜI> -h.i.1YosLFH;m49ǽ 2(i̪W6C-&g%EIr,2C4y W&6*#QY$4A+nөP<[ [*E=Ft.iT'[\۬ʉ/wcϗ::C~)6ЯLϜ6+ ?,{ `[ߤ[uoue-BI $KE Y ;bd9-~i9t+0̖v{Y;QLa UdWO>lf 쩹e c.,PC%6.79C cC/ Բa)?<ˆ@ټѸ$PʢF ڍFc-*uANO=DbO >(ZV_ȿHT8{ 0f}u_(GXUMqVn\Pk1T t\s˫Ftayn!(k%ς%/P Z8u;)0ːP< ZS7*l\Gڧ͔oq36BgnZF"B?yF xM< Ml6f/b5J)dג0:KI{'J]ڸo&]oI콋uv %bdr!Iכ# 9 [7Y>`T4ߴ RbᰆR : >\72['>qg/K:mYTќIUi1Ǎ#1^~ ]џ?RJ g 1C} veTެt:%_H1t!(jЦ3fR$&v~XH!hYmwzphl(xTnE}`hh )|pP"LrJ[$TAHSrf#dǝ_$ped )4f-b"js){]$˟{Cv+N4qKGYqIQKzx7rqT=\^* SbC9p/;~uj`.m|hW~ߤE[N6 \m)CEsCgw"&"Ǯ§ yb9efԽMh`Յ?-;"U-3ذUc5KQ}F͈P c+U9$Jνk2=0M|ڱJBjq b]Sr}9 p??TIרns 9Rb˻DML̅~Rs6vS3`Nmaم@rmx oZ6x%&k^NH`Ah/qzIד27鯀r&^ )3)d J0zXP z qSynes$iP=ݥ*s@#ԍ]ȡ_SiIuvKfhe)逮U=$u$ߒ߿ȴ-J}L)6xq "F*\XARjlr{nc^em%Do *A"e{`'v~~UmI NYv7X ؐٱ.މqNrDVH_Re4FBٶ?z'"a|N^>Mxpjq5.m$XnqF]hؾHt_*R40M 2JtkD&/ 0U"2̅JK {F֏ L3 rљ-ꎞy0~ Zk4SinrxAeqҦ"cz%umŴ>I>|MEx`:u{oqj/k۞XAͶqR0΃%FRo**_LK*AZiX:+yp?b֣?K+ͬ ç} TKY]`Ű_2^6/x@Leޚ< A/AG pMEeIzx`5q86.rj{!ʪI8줉thg'-~Lܨh%D=/N!T]GXe5РF^m|ԋ#VIsb4gTVKoJĂ5A^EæhwX$@:t!N|(& fQ>U<lw4_"ðCe蔟Ɏ@SFv껌h@A+0GTZAؓ:E]nWpQeH+YO' ^3mWyazzqiPR3̺8|wn25=0h$u /gȤ<B'z4w[m}s5Ů7Gd7f4")1[ĕ'?wYn; w!X= q6qю:_P2}Z; E$5/@92>2 ?+)Bdq}+|ј),W5J~"L-&QNrK8gEQh8~\jl v'U<ՑrF=W,7Fe'Wxu+YshsÖ@XrN  jUђX0_,~ IɏX$r=ޙmB#^$*%Ћ6ر[$2+g#,xFz,'CۋL [ISRv u[:H飞x)Eqql=?J X].8?ȲF]SKE_yCډG#宴PH).__^F3ﻡ o(t5B^o r$JMs="uԞ* #9 ^@1VO:M`fF;EAc\j0u>),ɆUhHIdׯM-TAƩBYmAtG.TiPlZI$f(ެP3qy>$ekz= 8^wzıY9 a?񙃪t:8afo{Gy}jvO=MPt~vOy1dk8t21 l?"S r,s۲}f=eMKΕE ϧ+؇K?~ݕ HGo.d s (ϊ1=vpp,Y-9CP>x.\1bt̓-K:ؠUCp̉> 7#P:9>∛gVtrI$񭵙LL=h\$h1c1Fbu~hadctWmt0S&U@ wk:!S/A=hRVrU`>M0:2gu(صpdSmD5j3WgGK Jyj*3ƕ[ ' CĶ \aKZ׳=ik Ezt;P]^D"ڎ,FN>cWeAgڈ2d*եk4-LؾdbQmlÊ+;&vbc m'QV7uUp4(VZw*WYR@}?oXxn 5xf'B8os UKhn[26VΧL hm*^"b}ФUfPJis`/ɪMCLvV7fdx Běчz`_L!B~C6]|IS@8h1ÛiSyBAi95P!̈5&2,OZcnCNd8N çD).MD{3!7jk 6A\˚f;R &RL_[|տq~[IxU!ZlN@N%z:Zz$97oY[Yf| !|lnUx[ "kfI 6&;l|s vn 4[WHbQ‹W !)՝e3.gr.UMlR y*և_8HQ곀fJۈŇmeMD85ϝ"uIgrZYOxh6q$?R(.̀w䣊I RӖUIWnuL7-/({zD4`q~ H(/F@ffUFHGmZVՋas"Gd|JVO~ SUWI=z0fhff1 7ұ͏N }ŏZقƤv#zGZoi-\CQ#O&..M W7Q6HGX]1DUY&zBz %dhtF;\.~ * Y9t"5`zH;BB킖yi)=n%T#uūnkJmF^؂'gY;o{!k Mýdܿǿ 뜨1f]4~lĜw.A;Ĕ5eR$~_P'$#&>Ȁ^le/ :JI}“C{򩵍Cg3ikES'tCw/c:3U 2q4:+ڒt#ưD*7{©Uoy x&m@hvNV>l؟>d[J# Q)_ KJ,>9O)H9;ra3̀DDFkLG>|cN!1@!,=rY2A׵g,5'~V~GiRU[jFMy5epR;+"+ =FpL7ž@K$8yHH@aXYZ9ZY3ccRv;qtv&4ΏFpEK^ҳԙe{Z7 p?e + kl҄J߭oU+^Ӂ_Y #A.oAi%/I7yKpl!Ӂ귇EaG,F[̙b:kdžt;SQ g\xJk߯b> Z yK79.#ȫVHJ8Vᢜw(lz) TX#$,b7l )2e v֡SM.ewY3 CA:1;L_T߄657_  8MQHzanj,;M u=]"A}V.ptYT;V4 0xI;m$B=uɍ"9H^jC"sEUw=i[i{:b$wNfjh6XAs; kd^zވߦkr[h{M\tEH4о?oaJg]4B"#\  :&V*1oT%vw; TQhb=OQŇTMSrho:.tI^ q&_Ey^ۅs1ŋY/CbG h?<@{R]<rŸ.QSL~nϲDW[57gBkM0PJHY']nX=ݴkL5|bT1_&jo %1J8Ts;f䣓U$ .]Ԙ TJݦ#=7'W9,:v>XhH!BR?/7==p9ws=XIZpҵ;IIS HB(b0LCa6P2i WL7%z$<^x. ;Hg i* ^ϵqgNFy(;e{#:sF0uיPűx nZ[5Lӈk!IJghIJ\}>.{q+O-urax #9./4KVo ?Vۉ楥m6_}ţ:"P!!NAA- +axqād4*ܵv\(xO;CP"{T+u `#t K7̾7qi"y sP}DOs|.c?˶QELî[.!UӒp ft7aBШ l*CT_ьkQ>yX ꔋ.21=ZO?صa+,4(>RPYPLXd,j/cfHp\gr.C^.H-2v9ř؃Vp#iu_Ydc^m%J>NEEcFǻɎE32']:?[Q GR?jؑ'cZjV_s|g\߹Fxsu >'*\.p-(8UaGihEk{*󜒌ג@?670]댝 6U;X$9XlL[.8yplO|39Wt#N4Ѹ b[M&46Ѐ"=DyM<QLjƒTMGϹdw5U9CjJ CsJw@/e'gX Nؗ-SWDu, #4&nx2P s#-ڽ%NuJP-^XN9.Y9֬ve⢤2q' >xBl;?,Q'ҤHLW]ԍHPodDKK'kc Tj0K<1qqLgq\ ;QM[|\pŮ]KBk&(/͌^mu:3!٠8Ah?=bSpp4͡Z4-mЁmGjN8l5¸ٯv/gΰE=8]yy(g(¾D!,T{7Xoy)'U =^O]w̋O}E4RAF7Z4j __b#kЕq_? v\Y4n$Gp|5N]x k/{c˰:^Ɣ W Su Eb8`I% b+365c#sK_8q2w= ",h,|ut2N ϳ !Wb2M8z1pG$GgU0}oK7Ϡʴ/>6b[C)ʕbFL:;n)X{Xͩv,|w}sM3wgՐ6&Üu?TQB(-44g` pg⟺ޅtTjj*U+gd&58+-@}eL4DqXHa X^֦YrtKWM.rOlaj^Px|:<Aa֨s!4L%"q_a6fAX䷓SNJRJ1̄߂ \rĵHհn\ 1~l011IRHo& g#U43~K{ x (F6R|ci!' @!-UlhEx" .4)Mٹ:̀4:L WRvI~9: R] jNsyC<8ѯ#YR[NCc/q,nN)Wם.1jmIK RZ}@3:A(!$:D i \)A\jt5T?)9Onuh&rx=΁ ,UR{-ۃ・ كުҩjӢlEfTI^DʷCuaPKp-3d6^軀& U)3v^Kq^ca}S?sN4(tSw *PBŝ݈ @-#o@V*wB |V8$T5>U/ $C=t*f,)X􇑫< rP['H0)49&t_x0 3 5O$1oMRؠIXYӐ ifVH,:`x((*m:Mv<|~ڗq &ZOxA*^pc).siiY JA8'<:B; k}7Xx; A]h"hun4Ko/oH+@^w2^twEPlY%u_xx{#Xej퍱:>eG?@GuXioI)ܑ569לwS4PAn|],DÁӔɴA;T*i=5JCN Dh_k[8/ ɮ@EHq)1g@dgǴAU򌗤%VEai]@^_S$TęȚ=t*q߰Hl{*<u1|fT? k;Wɭ 0sP"{=VLt"#GhQ҃k8 6-H3u׎o{6k2Cn~Nkh@6c?ax}8֟(sKZl3 dg:ߗQ\W;ֳeH7κ W$dX\*Vh'`sv;^a#˒ 勒~L6Ѹ5clvwV 㑃1FBo8+5{BVRzsp}oubxUD~tJ_>IgH/37dEk0A}4edDFEusMT6[+[U[<-ҵV&Q()]س g+O?'4 YCz}R^"o9@oqR.`g̵EWVt6)Md4JfqLl^}$[{% Ul)|. ;H%itB?g역Id~?c4`sYrsPtJ_c! _: I%.WY*etEx_Ut:6BjD$._g3۝YEYۋ),P٩JH`e@3Sk XDYy%#X"L"A[n"2wj2h},t R1;ԛEqG݄-$Gru'KpqlbRϿ{wGķѧsG=7Yf9ύαjcF>m3Ի [ +t rԢꥣ̸؟+=R"k.6o_̦1jjKMʗ7lH/ՔNk]!MN|CY] e@RgD͐];X!-\fbST+^7p/"R w,xpk`KPC~Fؤ-"y2OdHq7|8j3P-E/jCrG] 8 &X6~GqQs:>gNcl>$$V. ӜSim< jzm-6 \;gܣBsu>9e uô_l'=mw5VGO}nk n`MM0o\۞85<hS&-YTV-F_^x}LkXg?-r6Rѧ>/: e97 e{~:}.׷Jf3(g1WQ_(TI3Zϲ<8jDK*@st%d`@[ ]Ӏ;u9 8Sws=c4#]:N5^n2}_`W tPwp!F {SF*v Rq M@}\SZ:3ȔIRSڙ_|(pD=a2UW,y etXE͑ݤh~z*v%YN#(׶iԱ+ ;I5>| iÉcź U3;8@]Mw՚Jy# c[>w[MO sgB=| !RHd }Rs*$vNd3.(#̒.ppx/sY[J*f$|/}E6[I_}C \Zw(6t"8.8Eι_QQ%­v]d*'zr}fbQNJQ5p0˂j2iظG}DNfE-UX"d+U|PS&bu^7YU€w0S -*(ƙu>VU^l52LaFH.a?;!ߣM ]/iElM-! :*NAsm--9B8u- 27_<-l<#fĄtfǴdV\7u޾jGi2\|~EJ{J4$@8)E !4'fľrq|B_ak91Ã{2J8 U"y+ΤZ%ӝ~|+$~Ã|CATlOjbX]6m #~gQ_6BH봔F=1Jy@K ~ XO'D2jEIserp8AuWGiA!2~ޝJ3Hd*=ke] w6fq'ʏ7ߡ 'ЛozXDdn ռΈo/ 18 d}320M_zrB(\tGZ-dY~^z^[!ofΣFnZhKd e 6Av!\j$UsT@}0?=P6FRג$J (L,RtL,bD1SC+3ֽ _~S&3(q;+}0~a~'atӑxi-4p )#*6O2ͮNGn*@s-(Ѩ2Tʻߙn7<.lXԫGvwx/ 0h_ce0NFI )M4(.(GkWi&a/bm̀\q(]1ŔORSѠqB6NCuh5|wY`cd'ّ4rV>)Cpܳ7^HnXb- Ob' xQN@']x`UӏGd-}]۰(sZ- +0kO j_e-47=_a&@CmfoCkIgwTр Wfp ZvB/Ss0p^z t4[.]E,{!+ 6C-]iC1? y;:`0Z{ 9URNH)Ksh4dr5a[]|LN{1be3~Z(fp`/h|Qv]@[1.xNZxrAYt`#. ]# IY\l‡5]5WcCZGV)^3n_WܢD kEbFNU@& V.7s}-ڠYx{/!Kժp3NU5Q8;[\۾7(&i"$FҖ ;g̠>ڀMu㔷Q'RkDm+pfoҜixqC|(Σt \/ΐѵ-tgaVZ%hޚLyEծgUPq2@Ef-“gP‹~?3Wmj>we'6 Ŏ#N:D_ )2Θ((s;#lSﳍ\pc_pf}6}kb # \/1Y 33G_0fkdzMjڒ!9,v)riBڪ\RE]0J ׅ(&g@)lRk 6Ɣ8~s rnwfzAh,z)y1) .A5;(9tPPTmK@-!6sgZOVg:]Q-eKgy1f|<{:n!C%6z2az;INZ-{^<>4A#EIw~$E4z *hYvtS*>F{tO,4廐bo7:LxS wu<.g*۽YY}C }<,z2iH#zm%2(I˪S[F{Z NvrDVQqSJ[EQaSǂ5[ݴy}.yۛ`p[1k"]/˼q0q2de>\CPל~Y.[k!p7$dHLgjDoOΑg(.Űl]صN?I4.&6SprdnqGAay X0_gm]Kc؁&:jmdm'= \nޙgXs5oExpj*wiNfA*' 4O3UG֛L{ØG?̻,iy.Ѯ73mej Tau-mx:E!Uih of bMŸhKNTIlpUS7+2TucDn|͏c1v$0c_bIM%D,$Ź”ݸgUg=VBPo{t\ ++|o\y Mk\ap_' ŪNwitp,0,R =**)"?S6dC4lhF:rm^,?ZT6mx~" 7Vy^ԅ8-sJ41k sqG(7.M$.;hj6nGTt.rq0+W@KJV(.I@cRaӞ~n506?au0kPa5[ZG/pEŤ^tyk'2]vyF0TPenFYĚJz%|h*INM}_ 7:mh;ވU->I;6W'hxP_^B^@;wLZ%Q1c`?'F#O{i d ۮ,>bN7Vf#<M Bǚ=E LC&, `V+-`C ];Lѥj@*4ut(?CBD!g8Sz;eMʞ$8g'j914T[lF0Idb}S5M?'2>wwa^/ixܝ5"hTxȾwڪcƍ( r9#~d}!&>N,'&|ca,>~Q?<~pVU$SԤ"(T([w{M:NOW<'5K\Rt_5~9qW"P8() ٍؒ#\D=1Fs'Vpꙸ`B! Z&vLrj;g%c ?*1 7vhb6Mr 1܁.Fr@%Fuʈ/du".Fe:)4V! D<4㽠K |Rl xC?ǪcGO\cBQ-U$gD09wW~q2Baʟ1Jxi" m𠈗tP5Qn=^w9]'PWouK3O&v .E]&>5'Tj闤,*}ksCHqѿֹ^AOrXyu$_J?t5)#m)ۖEhm/SuΕ$۽z U=+2 -4VsqRg/xɬCYEQj\gh'.!nj:`]K&TWꧣQ9k7QJQ~靈k󙈩np<%mb`e+nڜ'2R߬[Luv<@iD| x˥V cgZ>2A}O`s=[ vXr!ZGP1CՒդ6tT&]r)wa]y^]jXj<Ym<5d )' 2[nZ0%ev+hCEQ#]ӧ:NBrzc~ӇfZqEi!1 ҜenU,\'~͕T@VZSÞDf5^^`#Y06+>T>ɗllNGA?(]q `U׺Cn~7k?ae;ڦDER O" 7j  y##tF;Rjms|!zLNPhs.\v-JЇcjg.mV+xbn@ΑDEϒ^Ưfc]zr=9~y #dj-5-mV=)'p"Wm_-. FivI(YM̲ l>Fr݉#_0\Nplr9ڤŶ!U'?* )t.zs4(70;"A']u%H7/v4QSFSs$ L-h~Qy qX[jMڳW^b}"Scx*w6ԻG\'~ -Ccy5Z)ꯧ^YV~rдe{@yAaMCu `,i% qrhyS:&me# K?ΈNQk=3-O0;˗PxF8C94I,8Sd 8VJQ|?!ǜzA9^rȕU_.QNnQ&bY4Pڹs! X8i"3yd`8m҉*\ 7},US̥xf~AfԱb7a^HZehԶ&-uXK-Z뤙gl]1Q]VU^wDx+"J٘WUeλ+ 4љ.UD~C\A6Hi><U%7|0:u=ٝYLLkb7abJ]͜`zp7!1xHQ̅?C$|l`_E4]yF*XԁKfiRUyte³$ˡ(TJ3ZkRuAXc]TT I|nhk{)CȐ9Pl7>DI˳s`z=e^uɚU vª/ƀ^G ` 'r^ɨjZ3==i6ifK)QlPAan]D&Z_Ǚ C/"٢&~[?tKqZC6zArOĈ{SpUMѸSz6jI: 8k|3sJjM$t_w?6HH, m\M呂|N#ެJ7`q$esD?W_ttVMq3Z(^-o혅x%[SvF)ecw`=hS*{O7"\kf*(dG^c^VLWfU$UIyL&x0GKY wZ gH4[A ;u^$Zq3geM"՝>W1"'K6Ʈ?%('J`ˋ/S.MUP+2+hBJpt[GSjV-OcWU{D䤳1) 2A=CNG uoS&׹rvXTg1jmAiBMkHن K7e7WI4 {K앾*?w_ϥ%U7]~ 2Qo@mnʜjRS-_tWǓ-ebsĜCSp2d-lSReB$IdNoUf{Փa;Pܺ# ??U+ *[f-ELNk!KΚ@ӯױyqhSf҇yz zy: {)5r&|7dֵ*:5 bla]? K-⬸J/Cqј2ɒUwNO?A8/Ԙe[QWKS(wTcE5X:W4;[UR5M/TLkUաw$nu8*uһ4lbgc\)`:?k`VR a]B j3}Ib<-ht~\aѫ@bvV+w J I|oA,Fc0'yFws"A  t gYH,%"Itt3#[AsEWX7J@uor^Ύ(vŇ`JY|7WhDyw泉["_饗߲=z9oij"kʖ[N!XmnqVF&Ww8|qrKgOvl-Ish3wb˿S+g~ HZ;lrF.3S;ܿ"OH8,JPGh瘹bF˸HD 8Vuj@T!ՏحGϫsx/>ufvm2p7V=b s>N2|3z`P77IKRV:omtfiy[m[́úu`#N4DFu)fj1L%2T糀"tUB#m@jI(-'8զF _)do U<=N/G^K!(mS)NVi E߸–^jR<34Xk )g#>N}l&T;f6ݼF l4?Ҝe>^<)^QI/nߵyOP`н|6&6Opѽ[:jw7G[wE \]\_8DofO8h A:+maO@pEAD_>AF+sEg\[CiU`A jB;SoDaGd:#ncrohtcs)UqH5B}2 Svp]Tʴ^sJ9Ohh{@:GOv cMcҪ|wj2 ZE+r"{R'm"kpR[H,B?.>ʖ]m8S=4BBb"- {\wݞOd=J Z:pw9˅F?Ddaz^:z~cV/QOLe٪X6.FwmǢセu.d[U~M"8yyH Ux^Td90:{z: |wQgF<3mju+nH~"CxRKb$%{\Fimn'EW4I,/m XNut~?b?M9q]U~yM'tE9;̊sZ0 8 HB4# 8Yjw3O\N_ٗs'ciq<5e_w7ÿ#Zԏktc%nev"hV[>56RCV[oG 3k0qu)eХߣA=4̵u1aѴ^NiMNX>EՇ}Y VS&W|V0 quq"zېַ 4V- ߉i_1{S7rpelRaGzm]?ѓ s'rdԀ^' Ay/3DăL  Aas~LbMgFx˛ `ԁҲhRT`Mgiޑ~TwZ 0i7_C;{9:K@O+v *s/-R4ey*Q%ϸ!mC.i?ܽ??1#;z 1ސT.+-UI]l'ʨd8M;쳒13x)!OUpbd~yC{-mA٣ T}<֬P{vZM/S5E_Wj2dUd,G#S! w # / f3R!żs![t+NNibdӎig5&+6ְ q T0A;5P Bs1ʟa챈; "gn`S~,M-F1s[:?} LQor~}1fBOByf-_?FD'ҿ1e}ӏhޣaC﬐1(HoHGًtOӗ >roht?Rw=a]6hܴ5lB: ϣ/~4mt+zoSh; 6}@?"qi0C]t te2 dvQu|MV{uPR`-@{\ (hkFpyDXێ/Bh$_k [gCB#=' k&4>5o?ϗ #A҇q0?\<1ᕡ3x.2~dJ>`QR>D&6yV^SZMpQE:`xyx9!^Dl7!6,>aw4.ń(s&8,_9R&̑;@w Rb=ηg6s2LJ݉ 3M*reOKbXoW BoE=]O4m ot. )lNXk ?Z&Sg>NPj&I g),M*)S%ʀDGX1)aݚO(iJX4$_#{|]V (yX[ӛ+D8r$aЮjw)Ln1dzU/#$JUۣ}6BYR̔䢕pX̍BPv|debcëB~ca8YqRV$[!@p ^8 ?Xƒ.YFD☲@%rxfn6~&E'Ln+Iꆜa.@_6W!K ݂"DiwXÔ ҄a5 %1h:Y@hʱV 84/DJY9(<]6wEL2AINw¾;)N%xamp*wYqxa 2ut*CVW4e %vѷ ۄt[G$~%+`Zc7Vv */K68ԄBM=MC|%bȨgb *1Œ/s/G-P`"dC9f߆3]<:NaGN &{㏶P`TZ#hsyU .>5c7t ¨kJ,RmIՏg@yM$_BPByCjD83A /v~?oYVCЦUN]vwRӳ\9Unx_VƲNGٖ^EE "K{$u\imq$:u_g)^#3MyIYU H9vM > TäquTL y*x]&`dȱ mAŋ1{ء*aZaool%\g)3,;^boǝ"uo[o%v-d57ރ}7lL1WcG6EdOdmYH\56%ې'Q#c~dG!S/MN!n q,͘ ]ډrHnxuףX>F.tC##Nf]FQ8LBQ|\aD:t׹3sdGs֦ګÍ!]w΀btnoMTc֑.@v/CWJD4rFe ̔#>?輀-, ?:_'緣Np?]GD(q@'zNƣ~҇f#[K&.-ʌt^`;(GLS„]fbs V /.-/C"xz z)ǂ#dNJg7 (}utEz7U _ZDN2t"}0V^$)e,"M0ĩ7RcAcFS-,z Zvã" ϴWGyFqQ$cc;zoqsAL?鏀vNhV7v'A,WCx OKE[`GN4EqM<YՔSt<UV,*CtGiݷQK ,bWw!|ҴKv51t!G6aZ<"Z@<*oInE2a,ǡVFRWʨцaРg{Q+ުK]V}>&E]h:Dψ'!Va1n0_#JAU=`k̍Dc\m?PWAJH)X#h0릡^1t_߀Ⱦ)M6_p–Z<-ҰIrMGKV_qxuIkJs,jB{GE+EJmieZ(;oyu}hz,@w퀓nuj|\͔([|DTKZvAaѺ8!BI#AiL>2Q6h?^7_R7B^~Lu?JgL{G[p.귺\x4ւȅ.q8OI?}]]c1 Qt췺/љ:os)H"!g2AzQ+ⷖ sw/d@-IT:/\d0Pn\2 Ri?("i^uYK#iT.rJ,h rk3: $yB7%F5EN""2О9ZoT)VӈvsY4g*fM5!3FʐU@2fRIG0۩ EP~װM`l6G&l-pZS"V EqF' TDPmx%d`}O[ſEU>.wW%<$LRϓ|Q܍Kk {V%oԷh5\9v7jەBN=7a@emI}&6ŀl\(9-x0eM`PF>93. 5+g[ /I?,c_jX,1pJ3}'/u)W> &U}֥q @9 `kmqִZ톄ȯ8HvcܗtfV'\TkEt#*r1% s_;bl]hM_r1 sFK@H Liy q.b7M9B/M}+Zjm !"zћ{ <3e0Vrv0<*9?,iEx!mE x,koΝ'}3hhRKJN6A]~[#l‚(+\͕|e&8 4ƦpnZy[}[_C]99"C"(>xBf<= rRC5~ tݳ#&f e/};1:ɀ1^A?Ŵ;&DH AW_= ±TIxIMR<dn?fF!% ,owt#Dqrʸi4/ZAjTRezv@ٕH`)VE4vi~>Sj~FqMWЁ I-?Nos]v: 3} lsY Y !6~!ѩ ^;8", %n6An [uw@,H9L<ϱgBd8(ta_ 9l]|O}n][ǬI|.+u̢?j`gy/gYi+$F Tfc ,8 X+3{VF#[P{*"ۦVq(  8r7s}4p4+My@33 q:BHwsQGj\vrݡO7%)2Pu#N@=!]NuYQcL7K tY~YR*Luk^wr=sl֖L#P{0π$rh[Rd\j ML5Y3 13hp&iON)xX|H@SpMTI֜qNB Y  !WʾV n>߲5]cBU@IΪ u*jx)N_&6{簾+UIVo.귴Y&RfImB/x@5ֲ&KayE.՚:Dʿ4eSF] :}QGMT$_m)Ok8{lGaE|$E唍QtM,JA) rleezD}@T;} zo(^|;_0Qrqq.޿=vv0JR~ߠWѭi혶\W8Iqk߻R2{CK!WemH4@Y++PM/ڷ=Q S<ތoc/8H1rQ1EjGgA Cۿ`'{eYYWK`(nxmYS|o|dj6olȦZx:R+ꪪ{R^ EȽ02/l nhx|lUtc+G@}R7s0FtX~JR6Bo!AP$,746 bHpAzqȝ!`@(3 V QŬh-ŌzwZ8<ׅtd0YYYuۣ yR!OJxBvv+)Ba ,YL=XlӕsZɁeu#-Fm`u}p$`oY9[u/u8tW5Ӓ){Z>l|]g;Ltd=! ]4䮺ik? =ci%͝XR0t|דJO wqފN;Zw$?{k\@Ɏfs }_PE@Z_yn::] Y9mXRq]Bk]=d1zS1{'¾30k_)I#cQ$egt)h$ݰj? Y{g̻N%V~Oj#Z:g4OҵoO3;aa#ІsE2w ~ъgn'2՛e.YƫpkHr LM#8/;O2B7.$nAIijazm-@?s5MkZ1Pf-pµN9%YdJa]S핔LUeqpst6ܴiTQQ[5ַhǟTI?H/x@J:g`Ъ\Y>~T33 $-n2GXuT33hv+k`'s(@5Lfrһ9h3k )XK5&ca:z2V= %۾  9ߊ" yѼkr(%6C 2@I&Ó/w(F1b5Thk !}go$h3ڽ K*6NKr{ϋ8E8˶Zc<ڹr%7Ø{23$oN՛S EV`>i2є&YIe@ s'be PkN->N%ċ7r6̧%H(ixq ƛAtֿ4w "& u9rfq-# J1, I=xi$ &ZZlxtض7bʜV̓}S) UZR5=㱪T;vkT+_^S:wp\-[Vٴ*/*!MV㨳o'3<ϩyFt`oړ~~9 u/Q3o7#4Wuvy*|et8W?%Gw3//m04 ]^u{_m,,`\NWA3 w=jcUB+&gq /m/Dh^ztq]H`V;&<mʰU\+fXFjoC/$+<ұ9Os``I+؆&3eƚ{l%L,!|sXt{Xh 1$+#1}07u`st3yeCb~"Yҗ63Q=Son`4xoCΖ'FjEĿ#eV#`1 ]4ZFr-pZʫ\󧜈U Ϳbj#ڈ[,g J!tYMD[ ?C ,(IXisF{#q.kHW fc0(17D#

aƭ DiȄr}ښ<"QrAנIJs^!*=%*Mݍ,Oɕ8>HPSTkѰNQ]=AU!LA{~o#HCru" kP)b[a VMm |Uܭ:dp*^TlH.+x>na|sak}ExGڱ q=]GC=A% ޓasFTP G}n6hS(7gf"Gi82[Uk"M)L|5@-z9 Lp>Bǖq5 K"C"s+"daanY.mC3@(|6@<>M\WoOѶIrI_`*:LU54NM1*Eh&k9H腻|d&>UI73;a6k|5BuFyARY|WjE[?BWȠ.``4+DI#/s{j])NBwnR ^/s輪VLEj4O {)E㴺GFldS>^9r4ҦBUL]c!KKl9c+jι{>[S+txŠW(u!%|2%鎇q)V$La^vHuL)8EA|&,ЇJmdͧ$ޘZO@&j8znꡥ[WRO>R'// ^8vǣ/q8UՃ=^,{SަtX/ HG)5,[)bԥQT~YugĎ*.Nie,ʔ]eٓOHS1о&?4:"z$m" *PaxVYz8~ lu`?YVnҞX)d˥q[bqhU$3 dؿ+Mwh { (tL6qАzu[0v5|%:ݒ a$ T5DH^Xs|ea/g`hjѦd쬥B v)-wtO;n}4-*S&njg=vD&y'qOZLsToP=5Z.Oh:t2M+5kicQn̈́U6N>G)ca7+ޏ)GQ:]"ob;@ 4EqpbjOx~neq <GR,֐ߪEQىz 95)sn}ޭ=R(taVS&j#)UT=}S]:U/ r6J!(g'a(,={J9be_`uXykW%CmŵEgEC~ ;&22{-Y` $j =]|3RoC.-qnl2f ?C qPCy*Lg#_X 5}+(VVD5dlEQ#,BVDΩh$#jWeI d԰Uy\iZ`v0s%T9"aEx哳Wve0LmQ`m]oQKy$@I 7<*RVsڟV,ݍ #tTC.lHSY {uyt@/n6DG"AH;[8O#6uv'duB Gm]wNö)ODp_yEhI3*!..mv-ޒj |Z7_^ V(1"C^hrwӒ[R#߹VNv@4;X^o0h;ʻ1oo2$IE ;N~(OW-5{k48%CLԋR[ѮJu!0WDm ~?ui~' a-|U5P#VMZMz\Ewxό%J-Rc6tm ,OIY֩rSb!EO_yXSA+Ҿ p$'}|c{Ko$D&"$&ױ6p-EdzIWC{?2``4>q[vۼpvYQbF=oCXN-8ǰT@ppzSKs))J-iDAWKḤ[ !Y Vp|Rַjb- @BEvV} Ot:Go,Ἲh^v-Op9+xn5 $1geY'I'@|&\J5~j2LO">mUxz |͠^?G/\Jia/?.ZWO*";=7#cPbkqJh,2!pD[/`#r&7rr_pXƚ9#wZxx5g 3Ōd8ӣ^nya&Ԝ91v#Cosk+zaiAݛᓬ\>ؿ&(`&u,Uᆥ9̬+1ص Z?-t`_Kn!ߑ[aXMSi˳b)②_[w>TڍΡ%S gӥףP>]ȫˌh5p/ vRQMt:45uOɜ/Bl&F{&tFjD>NE{*GNN\ \5x,)*sݚ ~FՆ|#AvNsqmA U( u~\+F":!6@ܭpd):MuQmKUʨ~j9vņC0"Y5E!D(s`-Wv:I>肮)9IԊcOIZ(+&,=U(@0?ek2݃B6̥<:B VTM- e1ũȔ*s"Nx,Hg`VW퉪Q%`;x p1G"w+fyyP(]h} [ķ/== x髊;fvN}].Ž(I|1 {_$5v?5i.P|UDa2/s=-kìL'1[ R8j.n<؅ GcceP#/Q2s?!$yJjLJ黋a5ZV =790Ahgl;\Њ"}ʒ/x>Dʂ/y?N},05N~Ӗ[bwTB?* @rS('hYJz~X scv#";H72&Ye澲os!["dX"wԐaf=ufb̮z =' ѠJۆ^d@O^KA>u胨95ֽU3s1cZ"Z̨ oڀ T2 AV&FzR¢S#,L8XJY%qᒫGT"/r}`2qjϴ b:sahęx#뿽g6dx1~@YŽܞw?kUҬbyGKmIz^!`_BmnGtS_:n%H+j"V; ]}rZ$&`x竽~y K8gLuWȒ ?n nxAJ ێXtL0Vǵ5=ܼXj;bݰRsFn"[XpiY8ãu/0y<+L(Ug!/++/O NC` ) $@YtSOb=[MYņ$- 0H~:&m,2}*N&Rc3)cW$`ZJE_Fg@5 v{^kV&rHL HsYL.:yL8 V >|ƗPՌ*}95JSZrY$im |7QWpH1NK,_VcW?F:T-A56g$P5 F ΁ xC%8: ltqoU_Q=Tۛ"S{gQ۲u$C&tC9 QIGxk6bRsO1H_->Ji>j;3,Z$oغ9xDCuRQV#ڣ{^ֶn:y)~? ZdIuPr@󰢷Ga;z`ăz0,_7CL;K,JCd֗a[3tM^_w4IU>,)]]"f{g!dX ze0/RsO``L" K7S ۷A` jcR@%b'8qn{j'&P$ݲ?cwT%skKl)Sw5vN(E #VMbG p9{ט^Lcjt,5f|[p^>KE') (ώxpU֯}}bгO@vW oApvYVL0*~xL6Zƕ7sf%m{δCP`#("F^t #? "b<1 ]X4ɃC'=kLAs,yӼfy+!S xm AlwPXWzw^n)EWhM,v:zȊ$_x7> $٬y7W/$EB'T 2N [E22GP 'n[V%qo ]`2`r# Wm. .%"9uP>Fdh=FS7Xwͯ@h9M(5*a)cρj}ed*gxtP|Wpv2;v#Lj;l[tk4}Ru;, ֱSlR% N_n6 m>?*$^iHzjh ҤA]OPj&7I(;Vrk eHp9kr#9,){X7mXiFaG+kpl$UU3BJYKH=d2 څЎ2{x>8+ɔ³ =dXD.hF׺ֵ'dY{F9rUu^ق7/AFǬA#h?xg7BUd"Lt*5ZDZu^#@Przb+DjWJm~h17,\@f,š>S*^L7־9?~UgCKMrWҾE w,Sڙ3S]ɝ(#+_.(ҝp¯}F\ y泃*LxQˤ*- OpDiN`z?le8ro10VlIJYiL>#ۭIe|1607ݳvΘ~3VH6Tri(z**%tL !!%͹=W 29HRhNONOq*vZE>s 'f?x5p&m2B<,IJ[ajk"s,/pQ 56b>V=.i'mΜwZY]/yaGe>4| *Uyir9RѸ|`@\ͤ<$5Judt Xa/ǰ4!='7u\1ggriSn ӟǬ]0 ,ʪ*1A)TЭ5|ōPZQ_.R檜WsRŋ.y1 c&З!'GT ΁Jz\HAW4&ܲ=QQQF(H\Ȇ="f48鐶@/V c5ap?Z[GDr~K XCbP!,.쑆;q%FֆN;-f/!wtl_'r4 Q1 0fLkc6ZOϞ/t@=V`o}aY5ۨy?5 YF_[qʳCANyAYWB;h'hh w{0'D<:a/03Cd4b 1XfR)gJ_((T QG{5wK3tڏBZ7{Yᩱ7"׆C>РF0()Z S`^l ׿SSGJpDY*'&\E*\"eo' cp଱79+Rl 0P{zW"W CZFӄ{xDU$2D*R& q!&jsb"Ky9-E坏ci$N5(>7SWߚ ֑d ؎e9ŚCwk`N 1μir~!~֔XfsSFG3ۺϕ{112,$5ޘ&\PK_r!?0~N #ڛbGTIk.[Uh]WJ4/VQn- tx]aZjHzɷ7ڵLc4'@G$2 "|Z'VJ4v7N(2c/ ex۲ƿ!.U|QbĖ8H Àb[څ&'  h9>iD4e̦y. WҾ. ~SdMaR8ÉQ?ɹ*_rÿ(l/^Ûl}I_:o.܊ 6Ȝ]/!s= zn@,_ {DnÕМ3DNrFF8)#C8nL,荲?=wX^r9C&Dc+Jhޚ\m͸7R.MFk">(;iQ߅)sR Av׏8%<" MrToسj۳%5'0(L L'zW+qhs_Etgh+BdaE<S=KB.(kس,A=,끓!*84=rGoT(HJ%k/E.~Dbݱ[,S&1Jʉ߮fn]nqD SԹvyF 2VHx.niE !HJeRW=Qs-(ye9QIڲ[2&dX̪=>'k2wOoBcy=Tm=)zZ#mW6 J~g 'Xn=PQup;xCӅ!"xaWw|9Wѥ@_PG7"4t$dH1:cӿ/4<'_T2X)V! l$#k"_ޅи3눤7[ӬPOC[n&Ht:ep mMJ 2tJ+?_r=dXC ŠI[-ߛgqJi `P8@vKgYQk[.o|{`rDn߂uSRY~QԾiH S6b|f9|G5PYܛ HfS3gS(/{1XEή#nPjeI}W]gB`S-\_3Zͳi8V2;I.퐀/DMcիSF\Z }ױXKl, Fylt M2>K7s(G`.FQp\Yp|ƚ9XyڿJgi.jrlRGiܙnd#8C!nh<KׁŭǏ:bQ'+B"OOEi儎Rk V5(qvH3sq0+3[.F(Cgm_0^lLj+㸼|F 4l9㞯e135a_4kcZ5]UH QgGW9RjPa\SMriRaJ6.Of*# lc] (2no#4CYC]0ޱGQxلCb*m.%N*a 3[΃<YzԖ%d(w4L>ϐE/%)Mz bE-{-}]XƦ&"HƯͿ^:?B5기2i':s=M[%Ula|k96f?Y깵|#"$Qܰ?K]y`ʯlΘ7ac{'L &)ʘnmMqYn/-O%4llĠ*j l`G<onQ"őUiar\8|#p#z+/#L *$qjˮR|yff2 s*޵cOl.ŹI?'.-J̊#g<~-V]UY?X-2ڄȧ s7G1u.; 臁,[VM8Ze_(w M]-xM\5 jKk/ˆߵI .W:4xK`>|={+gg!ۨOfՈZ,O5O1R7UOK<2ӓՆ;:EiܬOj AƚT)h>lg_FBv+$ֈ[v~"F7>Cb/#7gK 8_*]xFӦuY϶6^^Zzɺu'T%A[^ hxnrCЀTӄ*aT|wp3FRBPaLΜ(nrT%+7ϯnAC !>u^o3U3ҷwH &EBQ]gC0 skޘ;dGB@ImKkx @`u0 uym&"_.wXpBp9=;ּ`l/r/8rY7VҪ6w#WN* Iְ/±l5 M Xb4_*~9+ &CK\u@NHZKi\ylRur9TIp vCHwߢn/n/nZS[`_Lo$Xq1\GܺyCYUQJ!Q޽w/e!b"@MtP78 n{|m}^CS<4NSe0K$E9xMLKb 7PXymy U@ =qq׳2عC8Qg%XxU9=X x[ݺבk-&[9) PסI5-ht*i(gA(rx-4$)e5n,D*8r_*1݀,F͵N |v9WfDFt?8rBJIZ\. a=9_Tܾ KYK^ٌ0? lJ(ʁ@+O1q'ƺD,I6!-rc?xAL/W`!j-_ 5%#lyln]Ռ9V]5Uߦh Kin<{Zr6xKN79ɵa9ZHò#- dC ʗ1đ}+>Њ61-Oul ~sԡf:O zKhtf&\$vP(ZFռ/z;`ǗE7Y+ph'n*rl]rcK)bOF]wYtKI3[ϛ(7O+$`|)`bψgmNq+=:0.X,I1QLR,9IQo^tgyai.=oT DI<?Cw` [ U;qځy"/8CI~i[ ߆mCă+ Pq8uֿ TX%HCև?Yw%R]G˯~W2R;:QbXX_Îc_H#xRV[KY _ۗjZ&}'QUmdR! vzѳsfP :FGWNڞ?~TAӦhvbŴo7 ]{%΃,y$qvDd5ܠ#cZ( 88;_HRG\i^&CeKV\,M6f5Tp:CE3 vN79`P A,n@G/?PYk<6__*3% c8"1ISppٚWBD%7פȴH_|c 略yCx 7?U-#A{n1krSBIy6XDo(5m% 'fr@HN秭.࿫ L@$kOd69:Y@/["!Ё,.b &:j)&mZr/v ̖GX06\,6kCh= &i+~1L. 4wu] ~a|b?3z>Зĉg1Y<^MZwk5kCh,0h3Pj"ʊ -H',~{gP|3\$k֩?8%9)z:wߑ Q' -s%tO5I{ݮga`1^xyt ]IYkV;S T}!g!܉癭{h~ҎJC5y]vG9#GslBe/vnPha=tm>l8e QLV&-˳G9$Jŷ(8hz4,@iw zCwDow?*1!ZXX/.ڀYHQƷ]xl#_.%VͯWb1"?+:6L- :&@ѧZҝ=(Xmg};I*8yfף@OD =g.Itg/9:k<${I~ηy!1_5H[ACWWblLYB҆^ބȻ!8Th2Щ%P㣦oѴUoc&C4#Zū@8_{_ܮqKY[jp22񕽗iXNlى"=#W@B- `H˭<"s4V\S2l%זG-̣ҁAz}-EQA2Z\,_lG4tx- ?8S ~n4΀) IU1֏ޛ+dU`M!iH4i~f#aI+4 8FjC6-ԗnє$#싶S i͵wp,)o@/yy2lHr+ 'i^"9C Vg3I 9Rwqq)CHzRe*PB7"pG5,NY=e[G#jHu@\.̤ >Wp:22r{}D [1ˣ@-[`+S?Om VxXxˑ-`F&<RZ}C%$ڈwQpU5Y9R׃H]s\<:Pp4%eAGAuzv&?Ԭ}ז:~t;) =vCHљaM2RpsGɈDJ$O‡--T&:Ij=~Fls=uZT M8"P^tYԜK p+JDŽ &q/ZmWI]U+h(kdz;v+Hp 3bvPPuv9b zIl޶VLsQOS8ًXRDEfn2o&"Tcېݨ6LWoQ4(tOWE~mnޔBBz-B\UVݽ ޾-E]oǃ$>hBWŇu fM6(S?tdBO 18Ǖ!^]ZER${ R+=u"R4{L~TzrdyTA^%X pO?A^];Ka]h[9S/(Ň+ b!t9QY'u>b qSr,eNɺ6*!k`|7pq}Bu!G. RvxyI ws%= :>zdoG%"H ˻0&_uCq!4 2a叾kǏia؆^9%}HvwYŧ R%oޗ XP%]ķ*/w%*$KjSvУH~!aBpw%:qAm)!}!BK!p* KRxzCZXKu%d|7&}vV^t(9!O"x"_=ј1X2\_Zv. ر?8YX;Hu+:̍MKGǣxw)lpPceZ642-NUq8,ft^VylxbӇIOg2(DFH~zƟ/P@O@)\W-Յ8*|g,⦺;5ePA; e¨,M3 a `Y m|Ok} &9a AOrmD7K0`cGQeUAehD$@|'? 8> )j܋<4_"?U[1%R>mՖyxУY9+8Cq7SZFD]?9}Xd'ؔb57{U,(3T s8encO%٥^Qe@#xՏ;5 KU7]{v6~iCfGӈa֜ E!td55Bk=q9ߴE 7ԀD'כ,S|vSct/lzP ħA)Z[_z.x*nBH,ڙT2s~g"%\4պVEohu_(_~Ko0hG Uұ|ٿQFVz?E#ƶ~ +)ٌ?!;i s#P"SSԧJwyu=}p)d& p-7#ߍ dY5ԡ𹧤yxu ?6.0 ~_S9Khh'[D<i1=1cؑ#%=v׮,?mV 3 ~T޳a8Ve 8'me1yΛ'~2kP6eճ1][hMc3J?˅*c KܾI/AelC;IUR=I q U{á hx[K|6|6c ;͵J|f-5HP2bVI,5Ixt[g lF\?y1 ZSGW [( EGJ4bԃVM8dK`:p(;flc 9SX?|M Z=^xW.mZHJp0X+Gxd#4,1u[!Dmk%+s35rEN]L Ϻ Iw~ϮvWԟMJuYy̒`^Z*5$xF ho+ zA;Lm>Yw ,3Riy-Fh[x*I}r4؉!P t:)v2adڹhreH`ol0ބt,aƕ\gn<*U!_HTNj44[KkT$F {LByˬ)Z W5]:pr͞Kjێ<w,}Z"-hɵsrsZ85];<3ϛݘ- ёX!@^%iӰm[+1l, {e}fG)E69L눇:6XK-:6<NTmeӸ~?>)2`sKREH |Sgʐo3&*X:x]tnMpo JWOn{_y_4Rث R E9p_ /r*ܧ|$zC^9;5 /1.ѿ8~M77̟6qLNKY'$T٦ dwzᾙ#2sK#oY8&]ҙ-=x vC}Rk;Dm|z)8 g:FAXI*4@&\r'c'Z88%o`ne_=*B wm+uǥh͂Ԕw@q_lxcX+0)1C3 )1rīpY@ !H9@Quߟ xuj>\>k Fþ%" ܾԈ!+RF 7GsĹzۉn*h 4 lDMETQFaaI'9AiȮbO;.*sz*[qKlyq4j$.ڶz`)M6  RE ئl zzC4XTIbd.eQ>_͢:OJx\B5:,Q|\ײ7($~y=Ʃ"EӷB$ {w:fJ0}3(ZJ-J7O kͮr5n;#+Afv:W%=ӳ<` \*XQezC6 ?FQ-RBNP UK f/ {H&1̠Bqxp@nLUb$[g<5E mI8twKm +Z,)F^+W UVu C PwOrl=Nj_ `u^)f8ߐ6('_mX.'<_13Y_'ŏ5ӊD J %7ZKT\%6{na9>]n`XymM vz$ǤJt~f:;؂=xhꚫ93*^R=喷/Ҝ`<̡pY2womoq=_~ WyUEԛwU=b N!P^pBy%TAFӥ}i#zo/: &,jEj V] GlZ-:K?xV $$eG:Xf/w$(p~ h.4i-W,xJ&Ld>.9ILpJ2|O(ʡ mٮvY=cHP.04YFHA%b(45oDޜteZJ:InV8Pܯ [BbE i+C.SM1?YSNe*3 xW?7/?a |WXѩ"{Kg}\wN*B;L;g<-;$Ux>pc7=ljUUtV2-G#sӬ/\;w<3m3P#)1H#ϙ"6>Hn>]|]wz^qHUG/4TE. ; `O Q'p7@#>C> qo *%XؚqT(̲jEA?⺴6?cm"e[J1e. vjDM~G x9 @(f|(qIW7*sqg 0,$ZQ+ele<컼i^ X*1Jy\c"jb$D7@Mo6x?rGp ,f^=\rHs#%u`s=Ma^"a l|9rg&YƵehÊHjw^cH\zh@8JjaI$ ȝ @ކ^;$ocYLJң΋7;gR>N,ȼrz}Zz"XCڲ{_XZN7rYiP[=xBjFo*'v0!̴؇ 6q% 8uk ?>ýtA<"CB.1?"(FaA͠\KZWBfZLZF )@W^5%ǾYu?T!ӧ ®5Bk]Cn.zИ03M~wr' Y8_F̞ ^Er7FfYjk؝ )hl24bKr%e=RqAťہbeK;d1Uyg)Hj["v>g<(F 9꩗#4e7Rij}Xk+}s;^LuD29yJB۫S먪,1(X+7]1#T ('ѿ>~Tz9 -Ԝu>Y/0@(L" 9 Ȃ--Z[Xmr8c$ WUx37vF(zI ,OB- TaHTGZ#9j@9^(@oh}j3lr.~` >\IΜ<:E(+rUv0W CSjFv]Óv"]fd,;ZMP&>ZnG찧ʃV;+ ySO³, ,f:-b?֦/ 'ڿf|׽A(sT"&1-p8E#ڒt; 1{ h+F\ C%{JzV=2c-knhBݧU =c)6¯?c>pInl׽"1 $W-~V(=r=m  c)Yܪ|"qBlF΢TzHȿXerL@!#KF?*b}q&Ҧqm– c=5Z7,G,628T-|{a5dN*Q( "T1c/W<î ߿b>X\]۵o;!1$EeF<ڣrZCjdܲ@hoG"INtp"aOJ¸f~PɦM5ju9vL߇C@Miq>=/8ʸzaTaםa*Ag@6-.ܳ#._ 9Qxr;>Y94=n¦o.mUDV&Q? ̶}2^v~zhk37+079Z hp+A`bJ Y*G '"a+iJzک2Tt_s{K4U8mx?/c'>({ $43Kr6;gU!AHkWP Y ;R%V~5Ȃ4UP!7R&'`?wdO 9{B1LW_Q̄ԁC PT)6 êcŬ2'q$Z~jh֝&v5ဥ}|*pm)DCr2=JòʴʋZ'[eѫ@3"H^?tNjm;MdxŖ.`)faF1\^U +dBQ\F%e\ @YTU\ه vvs>bQk?oULkzWsIݟky,JӐ(!_G=B|m +¹ԁIQ|E~"<6xc*~joMa-kZ^b8z$<UݓxO2rIU9KusN{>⣢|eOi=N\m8:#qIt{C[ E / ]gr䞻W0`IpZWL!ꕿzmYtP1$Y 98vڅڅgl@@V\q,kF!,𲔱]OvѤI#h|ݵ4CRɗ=4@~)kqvN w_9XB)}"ڎkd!Xk #oEj$lIcY4cHݟ76yl>TBJHMۜi%[wO /+lfD $y$H{FU96Sk i+j|Mew;۹ـddZWܱ09;R&;aT3iVc qQ"~SP4 p#Bl/==CYt6+XŶlEI,6~Ʃ}sW^i֍|~4 ϲھTqԡeMFy,$w0 R %L l䤴'zoD)^.dC30ص;@vMی}U9z.t};W: u:aYsRtiM 01QP#]&<p44 zB &uŲ9$;Z'd'gJì)#o*j%y ˙uf0`[tA!y U\'5EyvްUKqJ\p%ץm픭9F@ aۤwVuӵOPo tԕfaru;op/[>&UfFk3~P㻑Asթ1Vn@7v]iMދi0lDXVN_[m(9ғ::bhRvΘG 8L]K)SE @qf@ȸk6BYCE'^o*X/pb;|rvؗjTN{iB -Ob#OCLCO%űQqn|!`Sli` K$EWf8d hlzOWQhd~,oJXOƗa2#=, VnkwDXʕ4ƶLގcx}QdV9jh6' d2{SK5ʻ H*B-" 7a; w 3`4IJutV :}h[^/wAo.Il :Rl /uk^@E3)X$NN6Ӹs#-DZ1,<&;r/?fAŠ1I+~%2[:RQ\ɳȶh*|JʜU;DdZ2ϭh2ׯ0aʻ>kd+>꘏+NUt ~_Xe!|c+t,P~RZ`Z$5ͥ+UKI@ʍKPi ~jDT Grm4PqR8\l_qɠ fcV-:PNA2m:r rґ H 0s{(mΘR9d} g Dr4Gĸb*6%[as!1m',ͤL c Bd"< ;HD=0;^nPZ6B|N*fvrQӖ9k%ZJ(y ú`MX)%N0E_U2de9sP Ec:OHS:b]d[?(3i>t^K)J~+^mZqn8!=ULT gl/렡'C^$ezߨ8If`#Zn]Q'kR!Tb3Sp [_ģqW/r#N dY83 bgVbaդώ#yдS0;DƪV1@@E- _b}藄õ]so:"~+ARG^ذwfH1X]܂/G ZCZ YxJAT T%`/%RZ$Ԫ#}_` ]?IdG)旊K+%'jT=%ŝ+&_ Ya ~0G뫙p?~+ m0%@L2`O)Ci(IymI˷n6 "Qjply V(񂲮;gLBt"R^!l}:9$O5Grvd[` p&tܐRUO{LXٰdӳ^y ^TVe/R Lvz$@bۊe?7J`%`su` &xXw N U(@g~/d_m!A/ss7a].U_1򌓵ѪTN&9 *3gA4`5zOUQKcn%&s-0j')ѧq.H!a?O̠vr0v˻a:MhQ{pLCS8\!|Z.?oBH[q.M㱕q$)X0sV")MY{lj*ѕJVb7|Dv!č ڊv :5ZJn{ǭtdfx2nħJp{C_[x8E9Uz DQ#x(+He C,j$ә>bD 'e\ez!uߊ uRe8>STm %hW eb&6x☑wT^-NL3c5TA2R?f77z1^ -|~MVG1;E5ɱRH2`%R`f$_1 R<=kDT2 wz9dxVU(j4;ꑵu6zH)`PZRiaMeNeg7P&f}K4`3S l({ڹ RKz,cS]f[ 'v r '|"&iuMLDd&|Lr&$8'+0K^O~ohtiTVMOܰ6FM1uSK1%XyMn2B _d8mz}Í5^{YTTKPgKڅ땏L9`'u#Q\ Iʰ\ KY+pF w}}*D;y   P` }W^9Cn_}0y8y}e[.˭z5`nҌrW޼Eqtt ۊN4ucpsE`2"" @gP5?l9T8Xd,-lHdB$*#v 3 P }?3ӀckxdoQXȠ'fCl6ý*G<7OC27 3r _%[uJOqKk<]鬥^!1έ,hWu5L7R"BĒs`dd v2qmw䡏4DV;bXCq@Ѕ>j o2(̢(K>GpaVK4iz]Vp4w1~5[_SݍHB? QXC(_1+ԟݯӰ^?X4c烐p$'7QmȣKF:dzD4$ 쾂basVJL:6uK ;)y1u9E? !w0!@$l6>p0:3b|F1#89 Kq#{JL_fV=|GZIw! #jz{CF@-ȸ3JUhdrtZ59~mT{q!b\ =~LSLT ?bJWQ\q-+v-VBfa#NB&*CFp!,CHJ1wk`X=I|QR+6Vvnx+t$)~z"IG}ki5i\U {В\3^y>@x=M(x ʪa _.ÑU Zl<4g^]lkA {VFIn}KyB74&WK̝cBGI*EZ0in v7Ȼ*8/UnB f{Yd3plU C^$JE]+r긒 hK~tǴgyDD655yB yj\ 0X'lL+( XJ^G{fi]zqеH CP]m59Q%l f 18` loǢCSA)d3~ϳ{8ߍqؗp~妜EL*qt:tz(4.$8)Ç ?*]:G.S; En [$_AN{kT[H^ *i ΛfBTȳԴWB'o]D)/Qq/hB%(.LDUK0x"ؗ.'C"#8xx/vHPWOTvsrb{)p&,Ga5GaR}7@p&{lIQ܉^)Mnܔ>T;ymr֐kS1ql1>cm>q]JO3d-z c vuAIS*0֨Lh~d}l>N5oi/Hp̬0*M}'Ka(%j$(zwFZȟqދCӵ${Q0znٴaZHVP H/T^u"~8O_Ԉ_4V:fYҡ,|*2pJL GY2 tU\88o̿c G[qqai0 ;ȼViQ˄`(ĄQbO Hb'oYP3Dr;KɈ@ggvrgo{ZD,_R9hЋT> c&P3(`/Ca" BMe E/2qItfBA:(ۺյ7O.J_zmb3{b ,=; |!]÷54(i-櫘'JY=ҏݛ]i?>Dbөwƍxu9UuDL} %=w╗/e,pã2|Co7pU% v=|.GCv4XX/Ho<xmDF_)Ӫ M7"|,yKNdZ܎'NMeqt}nPŵ?U SgҐ8+!ծm,4l=ήrXS! ?(_ $|!ODHQ'Ӎ޺O JAm7U"njs0=ecq0Am%ۂvŘ~SRIS)І0+m͇@{%MfPs&7@wǼC`#b7DT -"pfin_IBR&W?d~<*~@2)Os޾J׷J\/EQ+Qłd~K3;6*i^r/9 <2F`_[{}̔r[4NNȄ|mpS"\F>"t~&ʱXP$?I%s0ʂ֓j˂TZ(.JdF>aY Zݒ5I%Z&Vӕ{sC8}=>{zjHG@3>yN|&'d?_RAť1?4]`^Ew=Xgiޱ;K+Lq`O ‡YԞ b kvH^]T` x4笙Mx}ew +J+IlpOE/xG;^cOO$*xD_xpa̚ngSUt[gij&11}ھD\%X?c?2a6b*FpΆƅ]l`g~ e(!!uMc>i^CcR󿑓 ->Z] Z$ݎg*g־g/%@)0=PdElN\'ΝZ)!9V=7uP| `R|k,4)G(.K_oR{hj MaplЬ')V]ReiŅve3 93]^[s#z$umxāJۍgtnEy/AK9; ,XOe-I%h?gvXUdx-A;܊}7>Ybԉђȳ>0B#(n"d5/.:&-lNg3*%)=i?r%0GRM1nV Z E@޷O~lNsukRKhO׵F\jU[gι~P]l0uS_=BZ\qu&_{^詫2^YFpܚ+= SϾ@cA*vE! -a W_TtݤunR ϑBǦ$wkuSx1iGᐛi&q@,]IRN=}㐂sݟWcD:C#<7}hH"{MMoCX 1וtI݆\-( RL}N˅/RZr; p^&h,SDž 4 'CIOô#ꔞ6 ="[4K;B)gb'Cmt;+ys2$iٮ?6 ,Ǩg]^wޤ\ bb GS-q$wj1`8\p @CJl61kzpg{ʑv_qwcB0ռ>6tp;C_4[y`įSĊцޑY6 JS_@`3lq}?vchr^HEߠG-=4pZ^fDbfYTG}j{:E a2O{w i1XS^^7HJBR7 |՘)NE7Tg$'Fh{ Dw*vŧRM\Ilv<ڕ!R֤_B$}xg|/RtLe8ݣIе]Rs0qӘ^k-Ԛ{ I@G5 mmX(gtUЁINmX({0| :rDӥѮxOhAZ@Ln^> k2RJ ڜW.)栬qLCᴚ7s0Áܽ >#(]<8N ,@WHyLlD̑2AV)hIDrC<>~+w8zwJ.plz;[2 ظfvpHϻ;ZL<AԋiE(l 4U#5&30YTr&hOӱJ{f'3DͅCa7sdROhr獵0\uXhɳcV$0鄘¬? A+ijSN{,<$x 6 mV@V"ѕFiK} P< =@M 0dIbD {KhE@# OOK_2n>]BW^vdW V BF\J~$_Z>da?I:GvqTizl‚VAیʷ ]4Nj' ѵEX g)0TiY_^\1B#8# چt6pH#끵lŸ wZ\hS*^BbF*HePxݔH}^gqVL0P6Ben]B?7oEEF%#ELssEaDjh t*p-w,&b25c1B)Omq.'gbw=ds5p5H׫,L{}m!3 ժ_f5w%sK;~gxP݋\SDLJiqr^]=.ⵕV[t#H)Ѝߐhq  mt#7 y {8jn }^f6V;\hs:A)-HOwhѬSm} ɶrfOK.ic8mװɏgIB* Xe`s'C2hT;uVdUd[P>nVTn9ׅw ʫʲ6چF(q+7DL~YCWsr%fȊ}[>NU!jז Y{@;ۿۃ$ cBtꉹZLBh^En øVoqM7:Q$}ol'.xH`Sj}[(D(ܴ}ѴAZJ^yyeGfX4MmziXw?ޛCnGON3ǟmFU(w s&,Œ;|\:D}&ӿYd0t-c|EJhEc=## {_J!sMYUG& Qj}}nIBVhk|WRKP<ĩ}k#4W ݃7ɹPM{)"eͤϠY}!TLQh@7CwWvlPeh?bo.ꙍ'TORg׳Etߒ4ԘTzkSL6,o˩&1Oi EniJxˊBƍh&ȆhW(x>50d!{I3,Kz(ĝ)~y&[!0Z% p{dP^u{빌:M0$A܍z`$h=R6J+:[Ui+ׇw 5oN Wj`J^P|f__H^;4Ssb($ڒ@Ghdj1p\}q!K"P 4z?\e>[n/F/A EK(޸eV؃aZ½tٱʴ;zw{Kps86ޫ&@9$%x឴ Ԓ^}`~=8s;!s)E[ZH h+ +1?Ŭw mR]@$Agݓ@\PBU][*/c?ػw9ekSYd1*(QE[8t=|bvN™]hЁOQL*>z@yyդ_: vỞ;$G|!vo?a t"qզbo잣bk.$~8z9&I#v([V&El!C[| UTRx ]UE {#yӶA.*HdPvR\-zLVΏۚeh(jqY6PQ!yۊ:ۣjatd'/e2GkƋ= *ސh*2{⪾v4[w&cb"+i_u<ŝ򍰏YvBOS1rKXrk]EcDqk8FG0E=Âpo4Sw8grgx8LvrlSag6M/xqE0 ŻE[xq(mՎNJ^lVTld)E>_pB;x| ;v_A4j3G[Lq0RyЦYTn xBthU ]Ud 26J%4p([Wj`CGO]e7ޕ*++e= w5 *ixg `QY @LГ7=A.sKK%$.bͮwWCόƾk\`3b&k+gh red5.&I) $)}-|\!r3ZYvl%iu v?NIa F11I~[U)ZDmG{l ]1[wQ0@d^AoeJ0x !ROAxōVFL3^"~Ⱦ7;=͜2S3)I><^ͭxQFes7399ojkX jɌx5g0 :fkHN xӯS=׮2W .GJwiJؽy7lEFyF2pU-҈\aP_A 1PR_/g^k|Z6͹1`w1NVPZ[(#({Kғw2z]K.`0Oh8l[Dw-O"'Eْr!^XP2>Wb*c@@w692-[eq>]͔1.k:Uhj8`N6q%PTw@Mz]5V=򘏔͑ӔkڲŔ! ?g/Vnk ߆ɓ'@0_ĹX Xj"%cWE5ކ<C1}@mT/CS3UQ*<~zR=P19zU'SĚyv89[ s{X@ng>OHOKob7^Btb[K$R:2l{d,lyJkb8bTk9*9_[`Y]0An:Nq*\xOX\Vȸ R ȩrX ] b թ"7(My4f,Hp=֑ }|[ؾDlHUhFTPܧ:/w{`n> ѹsU؉^/܃o:Zѷ*NâURz6 %:|%kEvMcey)КBw|'Sus#{ޫ@zHM6M{EMAޫ[Z}Xdu&6LoL{UvmZb mp#|9 #5e/Oִg?(=نMlI2fMi潎j0!Ir HZigDUnU&I}ihml0;B{|Ddmj4"4`X}\56.w&ځHͿky^>y\4BS2cnoiI9IW!_i C e_N\mԛwx  PRZ0C%oUϟ̔+'@t;KEHaik P,#K06Aj<-LZLMq@UIQЍ_\/>ڦ dnã,.ea@ K?2حIk ]wU +t.>oB6"YbZMѝ:}Tz^I 0jQo+N]#"ㅯ0(9 3&]SÑhJ頝&~K۔uO}]\zuXՄ|{^O!FE)}_ф28ē/q\aq@A!3'])W'1ؿ*kA*$J#A 3i)籋SD: &RZ;t O/Σ=EF웫f;A \ 2Pa/ a=O|rH́Zr٤8e F}ʖD)i[C/T=B߯x9w{t,o AfoKLT 5PvC) x`md^#v>eNFSHƅIbJD|#ߑ`7ZqC5 >Ȃv^~1(6ج:.ۗm>1R9+^|2YQf0 9qYAѬ0; ijU'_uٴMoJ[ǯ7+[ש< N0!kaG/h{p.h/Or;G#p_nϢֺSD"5jVy"yU1~`(tERX=#,[^9&3tLVFbE⫭QD*S#n&bi*Uj7N :p` P̂O)USMrX gdO DHAULf&h˴I@y*+C*Go*k zv*eh#X+FWG;d!mrut}^3|O`2B[Ԧ1l:-,F\&Ie֛b  |O,w${>5X[%^h`8[p#P KLeѽ؅D 6!Q_2\^.֣J rkrي; Ěna @qJh JPqlA|HA!jӠV-[ XОy)_\W.Sctů%3bQµe*Dw#- S+ڙƓl=iGmeM{xTN$*)d#AS5+/ñ_jxD>ߊX4yqHlJ =aCȸ9vBtޥI&L|e߂{xpsfFQr/8\fv!kh ɷ~keYRS}I@Q  {*&MfG!}IƴA s2Qm&)EwFPpͪ^I$Vpֱ h$m_>#yFe4P[Dx N=cͪ=0wIJ ?YQUUj!=Oр- GZVgW}uCrseSdߢdUG( Azb*:8p/]1~'JMEi qj$.UNYLiA`OH0Q:NY' w׬B9HΊ4G#dS!p.)*j8{ R˜Bl&-^Jp(@.bK󱺤^'{KF' v܇ p1+o'Z:󻅕s_i^RqN瑇/0VZG&34xM+ԴqN73ڐa3na3/"nG}պ&*Bɏ 7`>ؖ]Re;m]LLdm]_K nM饿Q/rˍb݉YjJ})͹?U /\>%|:(i߄lOƝU9P0i`b~O;kZh)8p&NMV%ƓleJ_HyN|eqP呔C}B=ʖ%ѩzlxtFBEnTb5%5u揚<[Ww;@vsm7b9@=nؼdv\4%cVvē0@I2Q!"1O5]ن/阭a⟣"R%U"Uw9瀖<%!2ݦZ1 fIHt{ &S8pJ 節wm(iaH&ۿ]=}JJl![L6]t7;Dz3Gg,(<`E;.OfԹ0Vv5&|gz΀P49Qz憪JV?Gl?,i;4Lx29=Om$|@M͉^r2YY0(2uIDIGkbLPg%5?"%>Uh2)%2\bA b 8*ϼsUU,<}RSPxGneRN1R|!qI;nmUэ_>C?,  g)){ql5#(i" [v"fjÈ2Q D4/6/Kޒ6V q72kd.93$p_EMl[Cy輪xx.,w)h¬u=]As1S뫆zZIlFh` lA9$|>*ݝxG%B=4~tb JZ6`H/m} J^IvT:Aa9/ $ai'AՉ:R piR(MgrpA(:o)b $uln {'rxSip37ƾ3.b^HǙtܜPK)4-S=}M4t<*a:c@ % .)׾z+Q3V#,Ubꦺ!N3q o7 nl3Za=RJ61)"u8b5t ocz=s@d(t^乘=,Z|r6F-c(aYa-;Kp?_vYWѨ"Xfo"*[tl /{=bU `ѷhҎO(z(CJ;qJ`:҇頎-Fs,zq2lѽ1A=k*s щjbt.qjU@ϖlnGMZIϑC T20C=eDAeg-%:;p9GZGZ>~ VX;9ώ޸Dni󙈂bm@O G]z?= Y? gTZN:pn<񯧊 0ACrybn@x~n%Y F},x}g6H9{9APmf̷ cZNq/]?bT -r!03,T7`s`_sP8].2#iG]$!b: ~q QBkkKUdB %%pd2,Q7.vz+]T3Qs߆Hgip]NWk*׎ {+fΐ~Ɉ{*>9(2\ X3o,z׋p50ƌƌ6en1x"&7[йv8U=iPP*$mzoZ.l!^uAS||Rq%0IXmU AkCG !)WB{C1rͨv hDVeR6T@vU(xڠwG_V^NT"x}-Y;t`HDK˜o!FD8d-yMyjt,k*1wqA|0nC ja'g4eY@&;W!@S$D\TJ)w"Ҹ2(B;q/t 3- Qm-˲)px}-"I&2ţJCBΏ«*1yhM6 ^Xx&Tcgt uk%A4%; $]St_"9xf(C+fbeV.!;fXe) 0eA6'9KKR^^i|~5nv{b;uyɤof*\25kE>Hu^[FoB$QW s2YE*F$XKw5H~kCr67T݇O.^t؄r0؝m3 C *=v4^rmkٗdW tx)4ͰD%6-K뒋" /.A85=VJ+~v/ĊBS?{W Q[sa4t}q]2ZW|cND@v\5qrGp9[ޮQuXfA[EDy-7l<_^&ݪzFI8d 'i.Urr7ے=z==XZ˷څ~|( ihJ$1#KYsNξ[zn\=mfʯZ!V,UGQ[C Crtrl>ҶSGxlI8ǫ +Nj?I)dpb7ՊQp{"Ɛ<@+]䐋 Cx_&5 Viv4! FG=E[q%t8i]Xg -JJdIfx~m3*H2v6D?5k(PP+x Z q51ϸtɴk=-[Z[fyZ~ixHorup.NJŹOho(3@yr&QЉuNsurg^qoBo#O"H\i1KȻW dCrՔJ 3׭ʣ~[ր_Q@9Go'})Lvf˳/fHuXrQ< ̃'Lhq6<:Iӡ~ƅ\KL!d`0Zn_eK5R#USIC?'wҿw!Ξ`צqrڪ4("9BP `0l쁖Fd˵3G(kR+"kWPisčLu_eSPNfVTUtIڸ;g04r8У;RI%jm!ʪ_u&h Ս:$ "ZWtUPQ.j৞%mR* jα9ʜx(DFԵ5`/ j ^@'0k9N|ށ|z1lnjT ~ Ub]o F@f?ʨ1IO%fBMFVʲi9pƣKWt TykbG+ u|@=/  VhDHMYfu y&ǝmy\n\tIvyT 0|nTκ('"SӒri0o ̽P^1;Q[|ڟ'@2SYv >-(;rYeoM4 rHU NF)؞("wj;+F7Š PZ N5!BaZ AߏZ \]L,V}Q:ޱ]iQVfMX%2Y2v:eǔ@YY?NDiS9yIDnrΐT+a%Ġ ȐRkuk]ߍJ9S-1ȠǍ+X`OVt J|E&#hdvkxC5+n D0f ;;B<:s fJ#gvO N/ʭU;NwM>8rY( *]6׉t,\Ddpv˹wt8_00 EY@1CWϑ$X]]F0Լ~Q3eb/f :7`d57_3i]?LEOX3sϝ(ƭqC֘%atf+?W5Rj`Pz?[lz ø%_ Dy[ b #KM=<-S5hQ/[XV "Y(lքJh=$W^\#7N 9ˤ\J̍,|gH)!` 1OŅV@?N8xOov@to*w*Uw($-*,n0RXQ1oib!;=Jm>^_lWG]_8_("r@+V KS^ҫxqPuV_<ߥw+m6eMQH= .)a߈Q_ͤcwLBnf/1sT (t fWQ^y_/1t]wRE<7x2E:WŽNjfw+y7s0橅ӦLD\ "cá~8)cY%u;sĜ'F>T+p9(70v7WP!ĩ$/v)VH2 O^min# # T 9ϵBkRV󼆭3cŨOxT.<)`’qo-u:HQ[ut j#OB_\r;QzЧ]?Qq3C99 f?tI=*ȯ11u3 t!+4FA7)XᲒlk 2 JRW!eΛqHDA笥@9I$̪VbRgIrB&ZZZIu [ "]Fܛh\,5NB+H}W`"vWɰ?p:ޓ̡2EX ԙķ}hsw8 9v>K E|B~Ċp'y1էl+hm4aM2x`v>T_GzƣD7mєNu"+n;CRokCz$z}'YNyGɷ+tRJ=M$JL(Aj.3)늁d܈ Fi..I#@̧U{]C:OcHТ}d%z=j!}xE, uGWlwPTg^q . Y AiPԱF^[ MOq0N_d)&%L ~\u4RҚQ[:q/+vv:yy M]ę9C7 'm$yW Gz?^YG)J}YƏ ipl:}\|Ǎ<9c*ʙ7Hi2WOnNe lr B/4p|CJOgEB HCs7惕Pc ZoC̀UvWHeMmx]K+1>.G}5) sjۢ[ZԢJ |% #gOv^w q3f 9tk!ߏRLB&dt rLi@_FQiZY仕w#C|aو2y($>Jn[fh8=0]`4BՍoOn=DSTn\P$|W&(ng,_f}/>F|Li.w+߄oJcNzAGlK饖#h/yVJ:8]2QB5߁KB!sR!ڴ KΘXGs؅!" @؇Ou+CmUnTH֙Xv}v&CKRO놜_IRsmt\[{Ԡ#wW>ѼNGGZ/_-u bdӱ!e5e؍q  I+-PY9du[`QW NQh=# κnYB-I •6脻SLupҗdvFx۴շΩ$]8*bH#<m՘&B)Q+4 } ݸK@tyk vAffQзyJȺZVڕOчހ|r̼̿r?/(UcC&}O~UV3Ѻ/-eV6:>^Zǩo Yuk v!eC%(a) TܿM;muT-JjO&pṰLw]xI4 dUgCݓgh#gp؎L22ҩ$BoB3p]E;,B =̫_yzyGqP^ 7q,7(/{k __&.o* {jhF(Elu2;RO*xdA VElaXE'Ćf?+!cnDMuCYQ>m[7uhh?>sՂ:Dt>5A_XS:$ &{yz|~|üfzpi{KZ$.Ff}L,fw`cXY݆g +b5.nKs1ʃ޻dy O\i&!r#Ok*%4W MJ-;Fa|L,F[vw`m gaꚲ]kkd`-jO0"6Ͷ"4D =ޚPbM9c:Zn=ꜩO+p:`'u؆ bKw`Y3'F~]AfF ѥi /tLKQT`$^7&:1o F?s(#ֿ/",[z!3&L .Ha{XYa]Zctq$Ȅ{ åZ !yU*;mf7xU1#*%! ߮ɻ[D-`T-_e?Qr '*Xlq 5n(ƞ0oʟGFm1ANѺ<};%R%H~ᆍGK6ORro",a{STJ+M nB6.5y5K9fjٌu )xE"ŮQNvD$)NΓB bInQM? }C>55w"'mc~NERN ]i=Whn刋=9>)sUlD1:g͞2O}޶< o2ћ>nm' 1<g.P4ڏbh( ˸"YM#̣F>8*0ƞ8RB5;&zU5FIEޤ، 󲾖R6MZsĀ`{oE_{:ITջͥ1 i1A&x+}R5#yeEmjeϙ.K {ql FoԨ>}:s&k$$ Z5!Q{Ds)؞k6%缂7Z9[CMOiI֔9ˤ$D^|T9昚'{Jzx-*q%G@.+WnYͰ:dk(* |U"cw]N ds]Ze=5}x;>k|zip[HWWP8ׇ OEQ ZU9O۱yLovVוu(WiFn%DR{lN?Ӵ[ࢗi+˗^nN')t9<;$9<mYE4][z!ijK\z7#=Q jH3Yw3DުR?[4CN+)粫ܦE3jRlu˅O^s>Ɛ@$.'!I|j JBU0VEbe8M[WA!#8-aSǯZ8z254C9u\ò*7V7 x9Dmw]ܭeҶ'5ɰcwUmE"[(F(q6zS8WxljQXh D%|gyvA2:U\y 0QՐ%kCtF]u+pRUq+LCtwdg% - g F),kRX,҉W~VT `J~fHGk7p2ͭoFEЎG+q?ǙTaeT\yA8ew{z `CBҶUϱ-GQ7eɶUč20{r XZ^V iwh 4x"]GF k LX?Vh}3 rOv jtvk4 /&Q*h^J_aVyk|F"{N~0mLp7,SRZ@嬖;a)xuvj;:wÿoY.HG>c9_tښ x %M ҆]ۙO`I݀F{!u6Y1\eFJ -LGd03҅=|mWKr6JI]Ѡɪ<@_ARhQF)Fnٱ>r++[re 9ٖ7Ȍo}Pc5n=Tإ#iw PH{/ )4_~.. 96}4eiݯ*^So8cfy\iR~WO{ Cg51okVou^%N]ND" I_Jbl~_@%@z7*4sgmsxG7|!lz Ტ>e p=ńF ZA{Dc)nA؉IG3HF^x{ VYg8漾=~܂I(r.,*23 nȍa|1|nSP{ z^} G.{Hw8vc##x? >Bbh/W%ˮWc }x30.,Bk_eMC >g{x)M[6Ya.Ө= 2):ESP(V A:˝{mܪ yqt]CxB t Fӱ%=vyP&Du^Mt<&+{TbZ(ir;{JIf+πCKEYHhijc1Ŵp! 8+ʃ0Uo?_}Ԧ͌Ic>ѦeX@C3aL"a[Jf_pbSajފR)%E(kɏ?Qx]ʄEBZT-:;M8Q<†'EÞtHBF#'8uLxk^,jޏޢ|p'x[H=kVu=pQ"bmD,}[9]YG^86rJ&(%%0Z5SӨO*)ǘj](bonٕL/Ì&Cϓuz-A0 c˹uY;CUzN+-jO šhod0s V7=r2ˏd|_\_\5.l>f76 xgi26gWtTF#bRJC . $lE.+WP } D=0kI=^IQ`uc jfpYfWaA˓ƼMznD1Z6`ؒ.M )Mim`$eS Hc3͜a.9/Bס9i.iLfMfǂn{6F>ʼ3H/&+UO۶AUkKd6T-Kf~z),`F+^#)Z`ᵌh`No@*3sn`Z:R}b}s^\8]%:|FSB uȨ,rd^yjcψ-R1P!5½ȟd>6;݅."&SP#$J8avBoNv BcMEt.n]`mQdd/~ ,@+^{:;Nʠ2@!Pv4xN-{C$!f:*@v^=6t͏t@~Drᬧ 5 ,8J7m?yxَlj7'2$#I SE$ Nu'A3HѶ!w"Ew1,G4«,%iM(2Uyd{;`T)5wĉueN17@|E,ĿG3Z^VrvˡU,ݰ Vzކ1_}:D7lX =ׯ:#b"ﴗt=ߺ^)RV#QfyfӯԞ/\zQ:Hi´L*5D48ڬ2nCY鰣̣%K'+V1*%\M_Ug[ꢧq8$yP1ٟ}g"?zYJj@l}õ!KZ>":W }!_)#,lR*VTĘ8춤]?®k ]'gW{/Z9ݍ6R=-`{'N1&DG굛z:!2f]X`MYRL7/rTK'=∇t4i SO2NвD|=^É=ODA$QNH?@,t90j;SGHV( -q}1_l,g(p}ՑgQcς7E%߆zkN(&E_}~*6(rF3CW{z"CG.QIx\UfO Uekf*>4gnVc4;ΈAgȸ~[=y0ij%Ri4~iaŒ[Av *~9 c5Ww{96>߯⺫D:&m2O%L@^nXaX"QȬw|ǵcsz[ B9`o퀿C(o=\r#lsP@I Α;}Fw$S30p~e++ˀo9 ^ +)OEO>{0qD֨م0,êQ&v8Gsye_ڔ#|YS&RRB)120ݵQ3 }afNAoV{o&}S6u Sy\R$~cK5 J5A\ۆ{"VO: :|;s)H,kׄh2bMVS"=R]l^ь G7Q ێC 6>QCmzγV} +35s2L-= 54Լbk,>kt'k Oq~?CC"X7R"r}7g G dGypr/Pƍp,/s*34ÕY:FP(yqB %BN,r>%;!OAۄe+>9OG߸k9&Ia>瞴sX 0YiЇ"]! tI;-il 0Eo%|ٳ1`YeH使@im|?^'*THoz=|T+˲C&D1x뇦J]X۵(b9XzIGo7 FE7{8{8P\(PTg3K%j]?Uh`ht%Ѽ}1HhE8`SG/⸀j3mMN4M} ?[gE?ގf1;_u~pL=x {Y*~:_ 6#ҔLW;rW=>Ư!,QICC ~iNX!.4bR3;C*ȟH\ y2AYNdA4J_g!s`5>ƃm"TukƇk'vg^v 66wd"pQHG;AFW]GiquzrjW0%)Z%Vb@RVH&gibgwKsERmeW2B|H>5/q p*H_b1G!x L:YkfGckfnܥ;s>=%A? ;C ?hvQtMj|kh)\1v*xMݾqn gQ}@R/C]&` qn9+99o]Bܹ_\)[Wyv S%$)XimڴIr  0x(檖CL/5D#Aẃ \8Wf񑜃Tż#-yIyiKm7QʿH,K2c5͖59\L",- ,o7{]@Ma='6B.L&6m2q"ER[B+Y\Og.7/\J1wv.iTl]6+^dg ?; Ȱފ!|Me1H.~ưjjk -q[ 4$ Rgp|9[3D `|媖\-h{X72/-t6vbR^W[{Oz dS\pѓB,MԚݬ(Ao*5ÆRlx' (tarV܋&؞6:X\xASyҏY![a鼶A؀xQk'Y`Lfe5asV6%0QFo_H).П"U0"39$AYd G(2$뷡z9KG 6ŊFqYhsœfHq-TQZ8H"godV4R (b28@u $ ڬ;8r91*@ MgLjgݭ22 * !ۜ<[h_ &RY+"! E}҆wā^?"+! yv` [?GZ- 23KiVDFz%Ձ6}xAͯ"4aF`oHϐQ{rA(31jÿTAN MҐ{Lt,R`_x;c7 .W)8ߨCҩYB_~T{H8ѽxwixҼ,7x^ؗMHEBRɸ ^Rµj۝K'$1\d}RG̠ȞZPOt@qǬ .iV'S9;/$ڮz ܡkv{UAQh鲏ޝFU2\+ρIuƅQ[J'54ӯcCò|p97koɇJ[&AK=4$!|W<5`#:faxԞ#Ↄ,ҠlQY`@TQY5*cV !XaDdDRMx@WG:Lj% @,9Zm#8j"E2e~ǺS }3"֬Q!Sicfi4ߙ%vӇ͓HFV5>"Ffk_\tԝ`K\?sӛFwPPѵ_om\*CziH=p]MIﺾ չMd`>]Sm;+0kI@uhXHx8i @;Hcȇ`=汑Jto'\fR8΂vh)U bIQsLt2rgj:F,&z*=qUzę…C:'\4p<։'>x;L7c$]Rxikü]U܅&EFOV֖5Uw*ueٗ?Nż K&'[dH3)ae/[pENIh.M@mgT,UИy=(=1WR.$r3xzT rii)*)ej<6>V)!U]zK1S2ey/+aP-o:hRjs Hȣ2Ϡy>LxByGr hAKqoy~ xB4 lػIhc0|Ona˞4"8UTtw8lE,݇ sݖ䭦:rXUdfॸs6GM-:SS`-,g>jhi4I:/t&J )-tb5q?i?6G4mg)QNtL#XMyM!Z};#Rs c:J^kdžMGn"WHZCl0hSp;Up]s9R.#^@;.'sjCInjvvY)]7hiHB &eqf67IVs] B@+Ħ8B30nIK= -B~q? 8oSv6v Qv^CQn;lCQyRM̸dF}v~$>еPӻϡ%MAsrjlKג"4C;N?8܅ZNj?Aì'pq}3]ZK-)vxQ hķIVXq À։[i(iz4FR+uUWuf6aku\-*pd*} )%}pF-]t^z6,0h,:?=O Z#LL 3--C,Mq1~篹92 d5I3,:|)򇃤=Ø2 v*hw+ 8ў0/jqpDH_5q:$HrYڈh LΡoM /`G8ouQ~G8cCK^}I jS7,Y9ف"u5^pEgR r0Iuy%On;U1ύU!="Ç[ѷ X}LՌ" LlͶLspN)0G](4bke~%vHkMhlrs+ pC_qLfgF02GcuV @sBO)Z{>*4[x5rl2u2P"M>QAT{ism`,( A/r<>-2MJk;hM0|x/Ko@&"ѣгC=_7ȏ] @nM(_C֦ypQ()98֝+"N> d!j[ӿ.3`k׍l+qsϜ( ;/87GAF?,qПa}\+0ہ"'!1#xhiĭ:p.|Ea"'#tzl%PfpX AL^$^s.`2$qۺ\K[+Q uC_G/0a-IgU7zE>od޿m2^^9Q=J}%8Gʧ$ڹA3Uc &sx}fpVVáԭWX#7)Bjg(kt(lAsU,_Le&ߖ)&XZ:ra8U`b"Y5KSȑ5&_S²iswQWbq;V2<_VgLWn nFa?}u'MpLQ)LMkyDf0S̞Rj Ij񽌋m Y3uױ Ʋ6D%^@ 44uGϟ"tMe0WULUwYcœ}JA諁O fя@@xVqL Fz 裧_[bLٰ; }K$aC :}0VH*T *j0زߥ1?t^dv|- O+\nx1uTVёƥT?u\ͷ]W3yXzm8l/8UTDR|;T3e$rLzZzFj\a4?p%+:߻ c0{KerЫ0EC]-jE>*PY+\l6`O ݫc3*9-jL+}oϷZvnUONC;+m `ѳaO0rkS%KvesA5+#ߤagve)w4dzmaO3Ȭ!i(S"EUo~a?T svLD=G96ډ>U9>,74ꁲ[4rhrNf߲_6]<~ i(s*:2Z&Z͙%%}@[aj^a<]Bܭ= y2udt6+#R MESC࣊=,hG_(v3U`aLIe-C n#eӀ,PKux(x(Vr ^VoVvc(JRxn)o*4ׇ7?cke>{zoc1/W(l#NĞ$_˭wNSj?ٰ@.ntWFqzPI&~Rq>  GM> G 8ߔ3[!=&b `*Je!QǰrK3b$! @fe60}!؀ DGkR;xS6  U&׏z஢ua? OzVOQm&R@4V> "Ɇa* ?VE.IzpXqɴY PL,h% ES#}lHp} @ vwG,Xz#K0lAx'n9AJ$FM}*QDժ@=]>׸?MKKQ(TrkԪɺb$3L]= .b*&r9>g6d_^CopV&Ʊl@4RG~ߖ[(z5;΢`V{dLcd| 8g` dP?Fj(A*Y~vMuTm{GhV A2zLz mi3eڮ/;9~ {uqH[ί{P &g^jk&בP`kkDbW~h=p@9g@oҰk gT_jy~cټjWT9BsA[B2k`lxIx4`3[W6v*Hn)Q&՜;úlT8Kq]TV'{LJkl!/i{!#+,L m~YE6X T’X)kxցybeN 5dN"nF}ߠz^X#84̰@$'F9UMjLFd~39WTSsmqL0U7 _]pvR;k}o&'s}/c[gINWe'GmׁcbN`GZT{*9N N9h¨o>Iܴ/(9ϋN}n۪` D D Xf4 Z”#"4*κ( L^DuҭDB! m۵x,t -[OB0:4/WɊRZNTېw `Le>Q"X~/3X_d2_hB:_jZ%Js1,V_A%"-ᒡ f*hn 11סTC-ec؇͘U@2W4$:W5RXZBڝ[ J딵53P@|;e8ZH;x6'qɊiSDqøKŊ_Q zF_N +{ͼ`4Oؔ%%kkIH{"Vi.|4*Vv_'H@`6ܦ2b&I_@PE ,MA峎]Ȕ #^y-$lìi?U躏"R|]n!X Q$f],,)_1Y qyys{wu)Yt׭@P؎ٮqш59<+p at}".|{u`6A:FkQ-hT{ 3h% +A*D?WW6KUϙXn| d[{.@lhc;*KQ˾G9invza# O2 7M܉ J>qz>KZ$9feD;Hya+s_!AO }%wʐ"2gm(^ze'yWG;-::jۄ-FSQ(Άd `9c^|!^Fe#0V.Ŏ1:lX?yNGMw̝҅U?zv!~iO,6AV`.;򄋁Ws{؅-X،yס|ŗiA;;*h@Cq esvb݌3up5! S%^xWvyԡ6.3/v̨ƴ㗨!3*D[oZPAy3b].` \=j]py)g`  As_j{wv,oxńK}9aPd/gk݀z Ɏ˹ x^^rJ)3I|JL%qӣC˙Vgj# %dim-Kch]KjAdזm$W/V~d0Gw=؉M{ a=H  2^O18|Pbx-0#7|&E;\xD/kl/b~ׇD%@W` 3l[ 쨚ތod ~'q0m=We6U]9} }Θgt6z }sf`5 RRH Q@ 0VU,7Vp9MgQp\BV@\X)MlpCQ}p P_{E<[9b6)DOPWUcӬ؆ r#f:pUj:\@U?G|*_³>hWK1u`_Ǭ|鶄ry"z=*DoEڝjSn)ֽ{FW|hNЩ=ũ *Lc7"J|0Q/Ҏ.݂Dsө+9Zk eF3mWCq0RyV0(/[x!I'@G[JfG9ɎKa*Ff="Bg [z `q~-Aʮmw!ڹVBLq m4fI< [YaS葁h3|f'^ذf QY|2#i軠85Sk= "tM:["Ue4c>.6}fw-W,6Ż=32Z7|9mO˫n#C-ΏNC9͠t RaАpzmZ$!rygnڿ$&RUn+{{N@ljkoq.'_2ՏdXynRͣ*58% 6%G:QKLz('I~\|ooKMXrqُM0c:.xnoȼ=P2+P'7\ܬ/@K-"0՞N8oJ $Cӎb^Py} /߸Ń v_BFz.X'G"fd~i5I M%PVQ3 =oIq@<տ34OnJwKo?8UQ~ڒW@hm F|e 7V7"'~ V7СO!u~ox"p8J`x}l񣪢4'_ddO  }/'/HijT}n&з Q(ɴF< `#5ڤٙ4prlê!t w zЬlN?:)mUWr?h?˱m^s`i+ot#)5My'`"q$}t)%댿jF*Q^:=>Vϋ'1)qgF1׸ l688yzZe}E$Ybw܆nE]ug )dcl&$df5a wS%~ q^SaԘtXIdotBrDbP5k{eu%{YF}k5}!)\ #p\q|9ܮ5¸Z=A6&YF"b6cTܻԕM>#Q%)(=&M_R=Xܹ\mG.iZh_=#M#)^r9G:|]_'dF4:Z FȠ"x7Qo-p|ت˲qۇ*[ Ҋ-bs6vܑӓTFk̜f|=28mcJn9Cb2c%ԅRgz_^2k2.Ŗx~Lj(FwU?˛ ~''? bF| ' aW%ATF^K/\RmL='8z(ղ9؏/!߻{nuTZTq$HPO4W\v5~qX~J[z?@(mp`:9 ҳ0"DhP6zeSo@;T۶6C nFVK˦4NgĊ^!;UљMPeiia9ʺ5N:t)}q-kŨ\cK֭s#׿ZaZ=#/a ImŬ%5%!g/^# _׿080,!i늲١\< a'1ē޴ TcK;4-LyűzZ?2d+kou# 6ڡ>8DQ^>r\O0D<$HBw6jU8R YrײFRêacJN&WO7r5m;%J'I#nH{7\'cgql_͡Vf6<'-qi\Z[d(zB B1dj@B%=k 9fp)mLe=9F~\ d :>pԈQ>?Kn[:?ܚ&DLpZG@Kb񛻞h4} 2-%ze%*nЃyt7ZoPY{}g]xhV9AGu(A]%,A÷3j]n݃Gkqn WĂ=cпΛ#VxŦr"@se.wyVU4Kͷ%Yd \`b@~j4$ 0H {ev.Y!CgWDig#zxq#oMcQ=5MNWgn%Y6+ZthO [b) /ʉOFg5p9A[K$ZX `s4E'y{<2p[`=+ ՅڹyAЎ 5$EKH}{I.\qNgy"Y+"1M|uO3~Suތѣd,xS)eZ(+Gk!7OWy /89J~7e=(9!]RMZ'ݾM1w.7mN:EKMoJZjʈF;*+3%[֢U`۶}:'PMڱ.fWn 8(Z]_0fL,zR;@<3aP[x_q^[ ō|%ӯz4{Ț˔zH #fK0h9@ե.TumA(YSߏ˜˔ _u:ܦaģ!@JU0#oϴ" :hHɋ8PxKHI2{?[6]Dnܛ6]" ۮw]x5SOkd[_D贴腈77ٲOoPfRuZHχqz?I2(dԱ6 %P &VT*|݄Un&s/i?Gp{klE^x +i2k(Dq n6-r}#vK#] yJj~r1̂N`Ah .IbQfec2J'%_ӏ ! "MRFʆ29kĩ.Di%3azݿ,o$&?mQ>7 1xn%M-텝!o"f`Ꮉ/24M5:U}ː*#-B f܍#>SzO36u(Rn5%5%|U)(Yl͊~߾LZtmZ;c-!Kq,^[eRI(wvY4MQ9@W >ݿ%ZVK9rEj,Ҿb}y.]xZ'PZޒ_jK 9:8'u={?Y!6nؓg$n: -SxO<", mLlX:y̶{#=>\BI̙)?nO;IWD1LYf' s4[e!:(V<P/k )uwyB $ z%@шNIwX0`0ng>}q8p /#4h 6ET3A l'[83QP5?yJt'Ig"SBx|*):*ʞIjY92o*uX+vT)6&]!f= zhx\'"'0$69G/`ne*݁0_,Ys5f = |eZb/,tR6E|/O|q Ꮤ{DH؞m k]-G8d`}!q\L͕H"!.Ef̢ɋEJXlpnHmNQ058J?H&̒?sP(]*)tW>xXaiHGAجC|"B$7DƻyY-n#.伳 +Ȥb/+;Y B$avCS`Drl[Ndp {^@IvV|MS<#`_h( ҙy UZtFbmG F/ 1d&Bbݓ"jt"5*4fFlzI"k!!ڶ&YA'9X8瘖@MrJ2njww?F$3Bo~wʭmCA=K4齚[Cڭu00< sO3Ghu}ђn4kc (NUi"rgؑ7~]"B p5aHQ@S/׽׺u_[ x:T')pPB%ѵZgV1]Vu*N/TQM6Y 9!̈́;;JE"LZa{`g/ңSE˸̈[rzԕov{A5˿M\K 7bﱣ0lI-(Gwܘw J ]_.ᢑ9B?Hd1mCj0e)<xa[KO#TP~w6Zn*l>Z\`xSKfYUUsAk;wj:Gҝd٬/2, #0I$mW8cͽ )EZ'rR*(${=ً^WJoFbYD4*T6XRN@0 %|pa;wci{6.yť|8| u>kķKT#HK{`n˒ȯqy][wf1nƹjxi֧nYvlȳp$7,Ps,,[ưn"9Ͱ3@<ٴ*Yk0+# KNDm$ⓓkӚ~q s$d3 3#mXb{&I!AM/t~y`H壯 ;haaXO*ޟ?qVVDVgPGR6p38~j4 *݈g~(\᫰s$$яiI]2LŷsDox~$/TP͐'i;+ߘyi[B . .| ߦlk{@ʇS ȉelmFr5cdo,*A #F$h9vv).Dr9Ĝ[3`2-Cu.7zO-\L`r̐7Q6S6fRO0 u ̀t_(}caVDEc̜佳MgЎ{ Kv>WN\o># :9#DfZHrKDf9C? Ȋ?vH>qkw삁RgQқO<5+ם2NΘm⟴%te{i^ [  ZHibQ{hF_T+SFLQEAhƌ|ȹc%aҲ,R\h%< \?~<wbS&qx bqwO ] "Tm%iS\,.d& aLGzN5x4ndb.ֵ`ѣ$?CA~Fl* 7v`Q\v=Ι)Yz\:,S#2v)Mp]&s';0ˌ`|-ٶڏ6H@˻3{@wEC[#d `Om1WQ̓_8Өl+< g]Z|f,!!@8:u%4An#(֝ ;{:e]IWYXy d1ʶr0 3@eұ݄ hW\Qoxc+xa~myy=t-a+5tIGPyqH8Ӯ!n* 6(I쎗J-ԎGWJbWHުo#^,'k?c?FZ'U^-rasLooR\h9F.6hYѶ8 k%\ 8_1/L?T%S=*ƮP8 ~f0Xa#gx<Ϙ61 1G@|Zc> ,PLѫciu>w% ֌3_E_bf_'\y֧sI7L^C\)]va;J*1{Z 2C,UiUC4Q']S& YUՔ=L-%K:lw$HxSAΣ~0xP̮b9(۰Dnd01LwDciֱ]5m>T rMӂ~HNQ2qAu9h ҼAڤAlghXd)PCn"wA}lD=鸼PI7 &]&񀺏oN2d+DR;iOzߐ+vih+hi_8!C\!>DcOFBTM˫v_~(`na}K-]8> LZp?筳.QTs2LNig=KX(EM>Ton>(0Ow!(RY+NR*&QV=dmSs9j /[7I Pqz<'Z  4kW6+;cTjbJiNATRNv(SqXMb<`(A9ZP#-)l%=Tw{`|j-EFفz 2LSpCAE45ϕ%Ac J1B[ ל`U\M1}8jqW#Vqgk0s K㒾֑9't`<qx q~'ZkÇd tїdcGBU7i1ctNF=[BM/bʥ 3<݄0pN7K S5JmcGI!!VUr~i8ɁחQiZO=]+ T J&P|dX]K 5V4~w~ !e6) tvl# ƭ-(҃/j=?.$gGsL|PõQXӃ87CޠGH$$+:If\뒿! bt✏;Nh*4F\4zwқBbZɥwQMΈd`#2V-(d}^'ѭtѐ~s0i cV!{z"OR,r뵟b ъ:h |uSz<0!{"3xչʣ_7#(^J$/V$i/ͤlHOtknXe*ZHvGm<=މ2ZYO̅QUQ%* Yd^zu~RpB!Žڱ\vܓP*hS,Zk"xv|7Zgxh3o=N 3:kԶc7HKUU$s{d^cXoh tU-D鱨$r8^)@ټ[t@9=t\kbcm//ec fUkS'Ug#:5%= 6l bfĨ/H~ Ń]p+V ӑ7olG<~-Tᜭ6 L9[iţ"RW,#nK!vNge[ /n'{0ӖQzQ5@("ﱋDgGKg;3M|]nØUڪB,FCx)G픉a{5*"S+8`h> 󢾡A|5ݯ`Xp2"@F>d覐m{lzG ~BiRL1 5nv8HHWNdgqY>?=\_O*/CE@3Peug.,Ʋ`f5,Nl*v: ueõrnyq^{[.g[~g)Ϻ ,{^QMQIJbH fFQpWvgj2T r\]e63Ϋ YiZl)B˿5\)- ? P.TiH2z~P˰K}՚谼6XȅNy V"n1sGMe27'Kʺ;')kɋĦauAPX!AS*Qo$+ha^0McR*Ln"EM}-E{+Og>ٱ9ޓ5\Iirh~O+\Vky_@2Aj}9YU đ_dž+2d@3k}y^r}Flr'W^H"߽#r{."êHȊh "?|/Fk(0_*BA{s2]^Ŋs5t̘oe}R./pߺ%yĝ%$x l:f-pJq.8mvНI*&IQ[r,P/{nn;lӗf#~N[Eƥg5pe/B/(;%(a5,12I7=^d)$P+ACoZĐq~q%5!d~W⚖>ٿ7|.U3^z0s]2 3!w hmE8~UV&[z}zɯ/ţ/-g*Lը@v ) ~vYHZ1P#9{>}lR$Xg -7J@[ I?AVșY]T#˻scw* V7 W'^MNhhg-Ey/we!ؿ*VYVIC[j퇈V.Ч[B nB| E>Eˏ2z|S0 o4Be̖eO?M($+d;6Bw-tb*JH+(k7]Dy~$ J3k]w,!#,50xy41|8 D&DfU Q.=`ZD=+rEC-yHWi_!"/Y(o =#ޞ[ g7 i)_XZ$ٗ]7r0Gw(?J &aL {Z8]|b5>ɕ Wᒇ ?|E hx5uW\_I{<]dz>0̑l"cgMc2,?h2xi/g/Haooy ۛ݅jnSV;`8=լ3οC5qƪ%~KϤxaMQ? =7`LnDgciz" ;P O峧p tdduALG8-A1p0&kC f>zؙqǀY;atu9*M;t[3:POof;fCH&r`o  {rkgp%0cY~͡mJ p2-V#߁ )h0_(kCay*Q&0Juk]oW|a_aN/B AGbi(!W9C#?&Z bٺX=J%\H[w |Selt;еN $U} Xwu?,_I3RaOtFy XqFjz8ȁHXΘ־WmA&v]άM&R3&Ԑ<~J,pF4&hGZVvv[ZG勞r7)䔑,qY&<ܿԙ.27`'de*<t-StdNpPpU&CMZ0J$ʔi№˦e34dbHTF)NfI(xzRɡeֆZ grr+,AnE.npɆ)`jl(ar1[ew@+/:3 }ˑ?ײRBT2/d$EݤbU[z_.'yms'< TqZ3# &aw7p U9^w3rPIb(2+xOF/8dN&x+>T>::V{B#.*\&c=L.'*(W/)ŭv{ҟm{,*Me6F*iO1<ͩD`9moHe`:4d*$SW6/ =Ȥ5 $3np K4ז@8oK=0 O+._@QD|eV~EL2x{@aiaV*9[_Юg^,ة1fab^N#;UR~TLgiP4圣/]:rޙN$1L) X,j]f*ϱ(ƾx3z: ֐hD] oTxʫcX) {‚^i`Ba2KU帼&:#t)<ś.{:yPQEL0h`6[X)_~ 75h\ {T yu p0h&[)u8(݋xU?8,lxǒ=ࣵ6ŀ&+ICVS 7p{ C]%郼i'uI*(Թ$LK'BQi a ]<5И*Kը|ȺkH9;U0%D n7-O-eꚴl0EY:|: ~y&3Lq%uyɏ1lo -hJ8@2PmU:KX  9i;7xJ0VY}$"V\G\6V\_3Yw7xƴ񜝁gʖO{g#>+þ,dWoEFu> \喙Zk@6ֆ^C5kDRvŌsk]MSef-fM H-L; ;'_4P4LX+iIB;2 ~"iQiQ_ =ԛъty>}h1ƅojK3X44qiI3#5=M~hFмx<9ϭyw5dvΘ9&AcRؗ8TV.U:Z^EgSVu:?+؄1zlL@D74\ u&$^NWTypȰ#ij.d`ڷl8+(:5n>e@{ao{/r]IOg~@[H:'PRr#*)a6/m}!Ny ;LJсE۝~jTՏ41ʤՏ+koWm#C51eKi'E ˿N|l H QdbWx8[HgQ,{׷8`+p[!,#+OS/}$ENPț8xD[܂;d QӰ;?D]MBϼչ"URJx'zǻD,w'颤l77˽X7BS_3@ՅTWы4h=>TFO4<0?1oU85'q2~c/ YB -?*ϦD)ax!FVll 3zTHdB3hؓM<]~6#~Wb4ظ_7vnL)D1&H$R}^qIcVi)Z̰ U-t  ciQy4}Gg[6e M.$u08fnq:c^«haL JCGt:臇նU`: wP}n<:t!u䛭YcqTV:\Yb\ъ Q_=QǚgD|LjtϢ2b|6}y;Uu\kk' NۺnϾ<3)^?M3 %'MtE-Sz!lָ5waXVw'ls봑b unWF8x%15N/K6|F%gPј$mk۟Z1,QgCMg-+,dsC%zd'@E: ,8w9,Bh/"m4\^C5;}(.f\rbŚ:Zu`R&ϩ*;{-5MtZK(c9*Np~Csc{'U8D}HB @-ƮgÆF*rF-g.]I%,qEsDI̫ DiH /C1rs-ݣ[7ns36OMQ0恷1*(ǦqB(q)qOQC9΋^UvOYA f`So'l/ a&E ڮD Ek{59qM8 eƑ-q$ w&H|?zSK9HѩPWA+WHs1l7ᏏP̚kDQQ'Y`ŧ~ &=b[ 7li!9P)%o 3[rowv' Y5_Y ]9@yR޽z7,&U^k'SZz7X߅щ=0!Q?1cy}`3HAks~qƿq"anY'RВ_r+zH}݃ԇҗDGk].`e-=Kmi,Q K줾z3c'H@߬5bTv%=XjR$Ix KUi؉]ٽH+LnnZA3xkB%ƨ X>Kr]C>S5P>ĮDf̃~,7 f]Me} P_|Hy H1.Oh.k1lkW.@$7[^y:Y T3%3 3Q^o/`:ܼzmj|$`3#=3*-C ̵|dU{ ttlC>ya.o!<Fr'eI@K?L ⤑}hV۞^c2bǵ a<քȇ%y&sC8d[9S޶`kHĈE:Mh<.v`崋ހY]2䘩At']Co%Huĩ6r;C(Wn^tL ՠFh&dZ5*+gi}][)(?x>#G~\SsVb_W{:g< eumE0RS0cxCG?p-(9U(&::X8 DPnA6?@|?^u/%0I`UܩEn_&,YcH5È*-\pA yVX fzH"KN]2:6q֒ZiuQWHQdٱGqZ<ZN#ML9 hopyhh V5 ̛P;TL?"=A+e+-|귬gèsM7R`^d5iz䨮xcQBW(Y1)AQudп\a`1]@,n7]?sEtV[!@[e?=3 i\έ\q.B"L)x FUֵY1 =&Mqhe! Dt+oDDjbB&L Pg}5u9<(Q?pgxse)j ؄H}K(C. _cg佤 *juNY4: ywnvZKAg|KRa,%4M%ZyISaZT֒u*#g-zbڰLrU׾fOu^^\~W1߁dK;tt>^6K@qHv2Cxr'q Kj9qFPeZ!"9F x. SAcQ P72y(}ԙ GߵBwsH E]ms|AE}UP~'dnub70øy`@/T9UcG)

Fc}3ZC-:! Z5I HxmKfvݨ)01L pҧ84m(p?31sc'r*}9iإ,P4,)"xU~n{9n{K7xv*POS1N6s 9SI3Պ(7&Um`-@ou-+&0}jC9`!"gR0Lbm hŎu^c tY6ԏH3ίYnnd#,vQ .D@tv]ߧ>)iv] ܛيgL x n ,[ru=9H!> _!v^#2 / cwr[f%-:B5c'jg/1ŀq$V\!2An])o0\)B4wJu_O%WOXl}/ES1MRH4m7Nj֣WX "RMD1,睯Ao ,(DMȮy"GĿ%ԶRfY'1^[P%BɁp@5%X$) ѸW?[!;$>OE7 C{C鼫 &9Yz{5zX&tN=^ߧ`^ @ ΎdrxRa":-z@sz3TmkL MeI;/ZȳP'يWˠш^7id9n6%FI9zXռHKCK&FH#\A:f\DJiq?0N Xti|v⨸D LP|bM *Iս%SM%G1a={yfRFZ#%(et-4c)jD9(VѰc/8W ?Zti<+u>g`WP>Oa'M~8܂##iWqڻ60bE;қqbAJ.BJQN垯4#Ϙ22p +̰V5B9T؟s*Qi` uɲzUn? qelG)9NT"]*#I }I[Ki$>g_zT.;,-!/ǎ'.zU#[߇1Xp1lkEBS`C%r`Qq &'V/+s 2wwXq蔸;gqñ Щ} @JORuuEh!3\e 8%5 X"V=!NUy'p!{V]/lwDLb~<"#\gacIz`GE WGy>jt2345aERE: (<*vGR:d9GvEjn^ x!HB|"R#un,i8aE;^ozj(C,reA H%[\R1 r.ULDon<ģd"vNXߕ`BY2'GWPR/i{XzO "-aֈ/X>@ o)0l{txԶdmx+c0R5solT'0|YIp1(i, 1Q pP\^+AJ_t9~l٩6Ԏ_GN 0L,9"HILL%=<V;> xi=<+nPzB6g.! 2BV#HW14ivQ_Y}9) E|Y;$toQwZ/+-f$Q \rAxpV62i Vk\n[G[|Ph^lV0!'٬Ѡմw@~pJGz}fS?AuY|\l⃨J"!Eb,"gZ"윲eR>wc$-Fm'fJ_X@"ɔlCEƫLeXm)Vޗ\CЬ0zv;S[qlCp 7d{lU\#߹PkU y g lC 35л0=o[AkAXR2F%v OKd봫WꭌԅaYvbG_4BGc9Ā=Yv wNяˎ.8e )~AT22L:jv +Z&PZI Eh82,9f#J&^BM#9lZ"ȑ+]CaW==>jĈX0ٔ># 9`j<9oBVJ!Fr芴ݶo  .} =Ƹ>y DٮWV ] "zjaܐk?v )mg׫>r1e6fx^1&E K+ԩaXqx_-O ,PzĈaFrւ\m—$G|8v;eبNh٨9/nB3#Z&`[ ا.9O?슼HEgh ֓ԇtpᲾ4SHD3EQxD,>-U>tW(;(Εg{yyG hrNhen2QcG"xTM1zT_d1 s]Dm[|< \K斆S3#obL.GQn{ʨM]p2өqa||l{嶒Rgwo{!%O,G`i%0!eԓL6`doF`>:c:3Uճ&:fف>Vg#~lyH}NjXVΐ>O<6L6~`S/&*f=H@elHRURKj v5~"`<_eB5zEHp :^1Ur=6.U,ΣfKJRJs`z.iCOP)uiΑjF?3 _LJeS(ʡ@DHv$"#Mw@'{6z/9 Cx v  ^rkj~ dMq)P}ǫ>nTהּ<Ȣ^jKCY\L-U$g6ȅRSRn7׵|M-9"% ;<1%!̫~t/IL I>xv%r>R3 ~e*xu^f~fx5/ƎƷ9W %%K@F#vW”v52>,N֚wZ?5ɬC%.Em:L"wPS@[0@Paeഝ_8u֟Q8\޺ ,Y=Z bQ_]5^V02_gAeiHs[bSI͑pZCrRyvHv5oLf(xXܫ/w6 g[RS]HzaLٴ_Rat.N6-JqV5Ou-!\T( q2lþcU*`ZpgoM]yrBFT3,@R%"ujB;Àh6#6Yٓl >kJp|Wʍ 6jF*Q5)sZ7+=(f]eOgi`h6c>FCL0נ..KhQbzɻ*ՈSx\iUL蟵_yS"lvSO2d T"+ss_Im*p뗋~G^yE Rmwsm߫K`ɂ %˷7{%1@=M?2|VtZiyf#Y裆Uf;3wZ#JA AW 1)^ʤ*^74պHzhdNQj0aN 699jVN[/y|CvԽؐg͋/"1^jVeB&75C'""geMQt=tFァ,9ՎNM{ p,Ҽ"lWKܬj&P!X$ƽܒrb}+⤳q;.cE r @4xiEfXZVHC]q];В_yWڨ[nvMaۆYY3VPgސ*X8{IE LޚnsQhQNiq_NԕhV . Rx5TD aubCඎ{lU:O%sK P3nCU$M4&1k)-"9! Ϗi d ,(.!@I\K5JFhx! :Qz=cPS4=yv>\ՠ]_DkSaV%3ҧ *W-`Jgf%{wzKg ^Dua/`@yK#6 =sK;NJ(p!OQ~\ZJna͂\ѐe$<_}qHt^DdY4Ru99u>+gʤunq#<fNsa?7,/9!@'By{|z n~M<b6 'loSbCc$O 8Xap_.` "Ь`U!1pOpMl 2y~r; 'ױ,S̡ }Q=FwR#a4;*|4Q,+(~gɿyoE/[w;/OF.R.$pD3FYH~!քB5LgR{8Օq"ҡbEDS.3SJOnúU2$a9@ Vz7r~})Te Z$!8hL 7?av`bi̗oDSt9mڧrL_;|^d!Aj{;WcD# #[Ռ%)c>d2He7ַ/L!V꡹=qOHʉU8l6fLL/T^C^ TO]nŁ&JCϚ/8[>|Ț>MVY"톃Diװ[Xatl!iഔIUv3 :5, ,RRK!3q+ecxΞ:$n.YQ66O m4( |{UF"( -CKq1ʙIψA9K .4B 7DVF+/(΃4I]+X"8.NحaQδ^ 9if2,M>6DĈ3`GJ 6vXx.3ᨱKgpQkN)Q9wXi|B!{:Yp`i?ALEVWG񴺅L;2̾ ,Hxi-D #;劋S0SvFΡXp..;z@SBNJmDNEQt2Z)!GшLHKH$Xh,s)xqZTG@}٧b)O%hΗp:aGtWo!kp F Lb5 S@ncw|F@jwL/tXTٱ %_Є~3 4gh/.+?țj7C8.Imu_ŎtRqZScۄ&Rs+,t4읞}/JHtJ3kTWȅECr@ L p`(zDJek-5+%_CARWx2+"IGqJM]\s+x)"FK ҀZ~]Ry`m gïvtNů(&b M[_>'_~g}ec?G}f҆7z*w|+lTT%e TIfuMeN̂19qw²-NwPANϳrҶs꺂r?-LQ~?ż۽<_A~ F07^SHh"#FeR2=Û}' Ӽ_WC*u`s ϕMcД ߱ϩ0 z =Sd΍Y)~[yTe˔iq/Y _v;_]#2ѭ0ψ4<KWm$33"r{֔/3 y8%X`>yO$53MɁk[@zb[h} ;".It ֽc1Wv=YP>?[UaߣT,Ls4"GƳ `} c9?WL~,Yg'.Y֎+{@zt*@ƴ%1歬jO復a`l;+eo.^9_`k~4XEéWr`[\q;U@I4ThQBf)Ѭ +~UUhK!;.H\΀wɎrβPK6 $v> 0msWäM+U8.tFDW ~l$AN=b~:5j D(O)PHf,@ٴ<=U!5sLJ֒03Xndpgf  -_@FT=M)Cv~"X[J#d gʚт Z~G~6H\,kί: Gi8hlי00%]d-& i!)lxQॹhe4K:( s_lQh-,Gȕx$BN։w/d/eVS5),ΒFt$e+V!r5Z{8s"fVa -ڥGTq*f=}P`S/xcaF)#\.,N7U8fq(,.W9Y+%CϖV3$XڱT0/ `?rg R^ط!gDI-[ŋErӮ;iƯ0N Gv7֌o xDu֔H5!S@n4;Іf Wha0&!^>Z95l$*;C2!mR(o4c-AQp&-M>S&=-QKfM kU$bßg>"8,db#tukvmjL?+aS(-OQU8V'PV4PZ1ĪXC7rhƳ؋Wtp6L:6tqV"W-CSζwNsj$DܿÀ SXj fɛmvxܲR ahsv cdw2z^dwSf6ˀ(Ѯw |PSdv?a]ȹkD[)?aqY*%/񦝌Ź;oo0 ⦯1 5/;2[9TpjŲaG'i;;SZ:@8v{ҸL"cwMC&#IR''\@xn!| 3#( 75e3?]07Rq^B*% 74ޟNf5kN<' wJfO*iObRyhEJC_2=f㘓)ǹl&aFV(/!߭"yU%eZxm@_wH "؄T,ؿ ZʗsWz9#GT gzEوˏ*2N D´+3ڥ{)A"95]hEMvS,vܩ06Hm4etLkEH#_<0%W&/(~a}$8ȯ3Uց(+0[Ifr$R!V<qú35jwrP 1 _k9&hBZ 1vtTl"|Ia*k67xd^AhFcڟ:S]EϦE1QS]ptIl5θDf iIjϬړa ix.ݙ>PbH֨le^/;Dlsg/o2[Xnê.ԣ70Φ]a׫J(ţ|*U ܹىY3T+RT x|M[zV&E޽fםPb}%$KV4rZa˿䣜L3} t"a^1ZNq8>Ep' ՞ +{pR' 3+ X,HoY#l4VEKjYħ+LypMBtOj"/G98æq[)'=X+A&+`7Ҳ(SSk"6(7xHx>BoYA吧*}6ҿpl"y/B~h<ZAiߛ zm|&GE*'I27[P.3+o8z=`]Qz׃ڒ'^K  UGW$T.4aG>a5zX3 юcZli{r?${ogF;'OG /qp 0FfDLOfm{N(g "hU'QP}5tq\)x1r3,mF5 {GB7(`?TB8KKB#,HD ;f+(q?Q1K^l|ݢȠ確mv8@|c Oy|'ÖLԪhy%e~A'$wr d9ٛ ЬGuWJ/K^?T1˳\ @e6q)B5Xv._XApB܂ߜɨ_i*a/fZXT3yWJG8lV;*??8zcܭ8kQ!W4fL>+%RGtbX Ɗf# +Xk8ޠ~nmPI8_Ob$G8rBz?=O?3em+:W4En]2H'͸?;E+̤\~^B*OYvaCҬ'fx"3tҥg%MRHC rPjy#0ŷעVYH{[=Y;vX r^T AC [q`5D(>Ïj]4?'ݜ:>IRH6oqrg= ;uʢcf 1yk <`{# K } ת"=.Q5\s1k6AKK*;Z-D6VEuHwzp`Xo3<J^uZiM1 oa5·Ηm1r+…]p~zAϊK]Lg.,g -EDl% Tlp<'I&s,^el(9[׋A֩q5 Mo7md۞gVL4)&B'H: y+EQ1pVaȚȗ|gl,WٙlxMgVD-̻DTaC QtMO!f8$Fz4,Օq΃ `*=BEorpS3LQϫa=:We[%r.wH Ef|e"-k"JK}Zf,u ʹ7{KĞJOsc~a` bv ~pKjZkgfSҥ)(lz&<T졏 Ig3+ֱ +%@&{SA8 `B)ϐfZLw)z6ԥȰ_\K/@= ƏcFǵPZ 8].Qj8H [[Lqmjt̻d ̫9rEwN2׏ّ`(aIZ uךCNךHs-_<(W&rϽl~&k Z&*8|mBD],%OZd\Kʂ:]%cΤt|h@D11]!V-+,m yY*fڟpf%Ƃu9ЕGMGʟYQK+B0Г.7u`w%d8 b4+.ڻN]+X 3M ֢xcc @"Eݾ 4 L<`^ j'VWnuIe1TPyId3;Ҁ'M=wˏ]2G󲌡OfMf#WvB3"[.2UQ>{"_@{SzNVv-m%˨?ːSQiw2K0/!cԔ Ǎ6"NY@DcThd8{MZdHVJ߲ GGpJU>Ii2EohL,`H"1ݭ2ЙVX^]@k t"A^D5■A!W Jt92>Ż.C/{#]*WȮ@zϕ{Ĭ_w P;|Yў;VYl8ckf?/e j.f6"(J1*?w;!~2~?ԔָqUqL~58WLr9VYwaS{1wz !_!ᤏ6WRL?ix.G?GV +': _;M^ef)LwEǟ+ BYYCȬFlKX AE?Nuj!ok;w SQKH![-~0s}f㖫$}s%6B++ -A>%BҾ rt غD.~ƽ#*Q!>qtP b֍:xഫijFug+xW \AɗjEW}>: [^9[[;KFuҊ*s< #4JcgJȯ"!{gSa':c`nmy#FX%42L4qTO >n#TY=yhTU14w]^`լ%T˳]{\tؼHCW뤜 Q(Xzgq@ΨX_q1XY( By2=;Ɣ2hv'*Guϝ:xyox.| ] ;&E\B 5ڬo;8r@1UT±pX;XHaG=PuH"-a t DBc;Xܕ3WI%=lﵒ ){>G |:D,P9/R5r hd9XF%6:U#-uY%'9YC&jX˯wgc[[_u{xj->Ӝ0c>yF~E0qLwl n4!7s.  $VADv1lj V,Ql_:=o,A$2 YNHG1WnNh\يEH՗$w8,c<GtYWcO?ehMdZLⱪNJe9 V4V_"G`ȭeЯөqu;4%YJmCyCU5ܤus@un$݆- D>dJH5G`HZ>f3@y :NiJ862li"и! #sB o^%`%tꆯ#{`[(}{Q㵌fZW4|)s(CEcJ>9wm7 C̄)pD:q=6 خ;h s6}a2&KͥB# ʎs.w<.7Z3A$ ~i18%mCYb]kăi~s+N'$@eQ@aHC\8;k?m o8HiksKQuWBsY-c+9/p̠"K?5z5=cPYO$Kޝ \5l~fģ2?||%o%o2;hhsqGߎbW|Kw2 MYx&Q \c> $ݔ63@x_iF*/=E)( =](oiuTiq6 `~Bހ!G:sÈ?BI=%I4lL ?<:J?<0e:c/m"LϘl(5};TFg|?{/ ąPX'W ;b-pCw}B& =D H`:E!7 c/ajXʞHDJexʿjc_,vH\1ӥ*Bڈ#)/crQ(qؐ J9`'28hH$ -(גV:Hi*j0rs6JpvQү 褢.aXX#rJ) VSs#Ë,7Lx#Bȯ-o QG/oՂnxo9Zh!l/ڤifN ! ;m2RUr Z~kiGy*Y $A9į -"E:vQfG3Ҭ-&7 wPcѵjx; IpW71t@-P |a|}zA8|*Zu=Xn." x\sR'oZ Kc|uCAtǫZ$YRS 94-6Kx1'y͔4C_3%O4_@A?B&mģܜlLp"PLc 0Wͽ+Iw_^ E7֙`RH9E<I0AU:EkE2aI'ҷyȳSp,:waU.؃a[ xN/x$jp;)3WP+8GYCQuq3}BjC$6RdANÑy!=-+ MBdز BL.vy4\;pU^Ɓ cp}}y\_}I҆$3]oqD c \>-ЩYvKNKLВ:ҍ;Ц:L]S@^7s.4[.B~7`'lQEN3E5?W ܑ Pn1voz(qVbd37`\ZvPH! k ; qFP&q/~50$@P]BGIwaG+KtQg&~aqx.KAHqc{{ @"h!ԱzX &B{j,RU]E£B5PA&x.oJ2OSwB4 |7}>}(] gz4!=5I1ǎT|{>7/G" DbΠ\Nb_7_EÛj&h)ZEA }o0x 1CƸnb$vtL|nVg`/eO .\Է֭Zij$2]-@9i Vh*"OE=\P 3@ﱭ.T-d L2 ?X]4MA$ϡA թXC:F}p. 2Pi̓7@ {ID8{J./Sn[Tvj,"xBGRɰ(R֪hny@pL6? il O!رzWh\TV;N܃TtX+}`L!|j/o Wږ?òFlBw}ϛ<v^j)5B Aü`P^}Ï{e#Т T(5tUZW/:S _ ,D&y;<K{BpkD'w6#y.9hYo$HW+: 6ܟ'x6VE%#B@φc/nkވ6a=$3%-h:w!.e8~fT9E31hVsӖ&1ifGػei RUN8YXE$ fVf.:B<@Fݳa0G̗vql4TX *?6<i3? H/M4 ((W;Z }Mf=T/22ȩؙw{?1"z[geILEmpNA7EDɍN軀>hYa,1LcR'#rE+[=G 8dФ _y7AQ.43h풯Clwr3;ߔVAvO۵Y)еp7.^g,b0p&=ijHhEIzޅ $;ܨƝ|mSMԋ|W_X's!T[!1AP$go-"Kp=#5\"l9Ys#fgg)_h4aMh!@C[?/K{C?nд6%}5Ӻ|Ɔv|2ՈH'Uav[ˠiMkVYxVUGu3NgcÓ!_qdnVa@r݃i#|*{JU; Otŧ6Bf,`l.:`o r(g[9ش n]}cRLԽ/T6S7[ao#K'b*dk%@A܃CBCL7tr p#_F4?]ƪv vK~iv{/i^ִӀ/7yT5yl.]U@z$>OUQM:Lkh7Ų5hX%z9BkZ(_=7|o7l%;oRkhd׍֯лI+@sf>ϱDy4N]?L~Aw0;t(̣1֢K 'f}.J^ykm:Ψ2-\gE#9iԭ9C ДRwF\H>dL(Q j*8F࿀ᝰ-yW*T Sd$}ݻ[FC2j;NUgT\[BQv Ɯ?2|rr%;l6c Y_bRh%맯P5\("ȝGG'^dw>%(ޱN]6jyRI ϠHwl>[)և-M!gSV &prH Q vwGv zd9bҕ𽌣s1NC;āY`P[O22ܷ eLt1hy,/U{E!~kmgx}ƝziaUGgC6}n5-!_ذE!4+_97`6[+*@"oK*C&q<`Z瞋0V3E{]ם!@ښ8`}!xVP~ʪešv-9^>j(aJZ!aϖJY ϩ5j&\RMZd9žW밚-Te.jRdk乣&#D9Pq$Kd->y=iv/rU8D0}6L)Y:pnz\$qߣw+sS]<䷙;_ bGh1.ЬKo8: :BY׿d1 ڤ6]w s};H 9~1LU%Yk$۳3@,tl=*elf i[_LJ]*̦u}`,K`;=f<ǘ23C] =T=_D3RQ\һhgcnB.-UaJ ФqAݳ(UtK]k44Q .{{ep?ry*XіTb}9 VFH;:h8M(ϱɲAVD` Dd~mRv^ʐ+1L5d ۀ9}!Zt}fFNœ trq :Q"]^ RW=S,[:"NH+pyC6UiB57j&h;ZJE՝ vHڗ\eZSxO_R{?qHbtn-mݣȍE!#+ I7֫$!Ѱlm_rTJ{\@QKtF !xqON}Z^&t34G$[UuIzwz?Mƽ%[)R׼dOPk = s$i$S OI4#Y2 {h+sd~4ڭA?[*s ޠ!.c.F\=QƛSkӄs +/BO8Msj Ѽ-[=>}]ܡ] p=[`ʃZgn'Ʋ7?Rl!,p`̣ yʌDΥ^ٯX`lʯ)nD İ-xMFp1է>5p]<^P.x(֗A?y7A#?I)@i;ͮWk^@'4ǦF^덶 A)3 xC0Ѵ]tI:7r༵ЇTr3nB8ce<~ןm0s=néJGԃ6ORL RFlbZIkg0w#m&8!L̨źbO! MslTRh OBbk2wBfsj$7n$T;r/'HR5Y9kSKDֶ-KHyۢ ~i }=%U<dXjh]]8۴'q20}Kfʹwm>Ft5էb!$;R}sd9qۡ0tCp=WS:ڔqSn7@6Я=3K~|r9hi+0/Wу9._N4dc!@0͖//*cff͋S !晤x\Ҭ2=>1m]qG"[hu[0[ b83mxk3R]/N:9_vSRv8 l"y]fÕOF B5 jMS$S~ m2_Hhhɕe]30ou0Lu&%̍!W7e#$N9fT s!<1FX]CÄ\:(2Qoz L~@qjq'/nV%ҩ}8y<4&E]! ud2 ,L],폖0k]FNIK `1X{@0^S`vc`B %z|gP1#Kmp` `W#PryD.&dmJL&5^`,x8(U(ig}$PWK(b3 * LIT1DCZ6m"I@|ԾwK-!-lio*G+1ZXM7B53-[^5_OwϮ 2=y[0,~ڣc*x2 ПE:&h[ VmE5ܭOJ[TŲe2Y@,AtB)D'"Y8轲*\o ]֙R@H–Jwd|({\0eG{өXG߫9 90WgVYs Ef$#dLXm+lXz#״e4"3>"Larx^,.(9{.9p>fk7 [1H:M?~bs CI)S-a37䓲,s52 C.i{>Z dS4uUhQȴb-9j~JacyIn3q p Կ[ן2͂ ¶!D_GIG9S%[%Y~(MTGPBڵO?4:F#_NOMONBDʛ ĉs5;28*c*yimOe-|mBJR72}*%1r_DUhz5^{KWV)NkәC*{1IZN!ba$PA lYx̦"8& ZO øCLᇀ J!"״yѼWN)[:Wj`zcr\FNZu ƳݐkF?NH@ ڐi,a:to޽|<۵UbnOI:  ;L]vp %RNt69N&=O7 9DR\^}&^Ca;L}4i]:&Cv[ SXe~Sޘ9R%dH0"j39B91''WAi_(BcA*0P0YrV2P737*U$E-V{CtR*{/>V,'W6$+/Ҭ2:,顬IRӑAAi_0P8yXcW1o(+!1TʆloGO5gVW"&Y-F M3%O'lFC&"R!(u*ufH0B\3#|_8*x+҅r;\-%":Vg},($;O5U D -@ WȄ]Z^ǔ2sY];/ pwO:5zg޾'5A #g5H'~DmEUG/?eTy{EHlU:Gj Vw57d׺#]䚬+aܹީ8T˄oRz9>I>o.@f:A'3=X7Fɡh5szר)ȃ ]/\N Xaȏ +K .lCW_K;bNĉN/7ph̦hzYΛnšqq=xo24桳~8}z,T. Q[r07RfʩM ~TۭdSml_" hbu%&!9b 4V8X#(ӿjᥨ, !ĭLu^O>^!M/uc")a1+y8f4ǁ;<؁늊ԩt̎ =ii]}ypv`lwHv&_򁀺R3}EzsY笷LyHCwr?? ;Q~7Y򤧅|ߕ_~$PK'Y}7pH*&MN26瀳\5g⋈~oUd32"XoVjeWr MyS0,:Zsw X{vFD8N-љ+tXyܔ6Г+C7mu=Z1`?bRP!]m.87z!F/# ZDF|xW"y2A53SXaNƅ6CBDFګO-6Go/B|&+kj4u҅I%MD; ȁ]y]wDN;>Hy?,5V@}{NΩ2`m6ڻD^8R6UbBIxpo1V}S0 ׍NkNCO=?S^Ae?^*҃c/"!j$j rǒr{ZMw&:>kSp;#yoed=Qqj>'Z=(8eO;4hZDP H "^!J=aԧB3{K叕բqeZ \)5٣z,镶qP/?$h6a1zˡ IFz_I.2ROm33i.gzwƠh,e 6||=uRD|O0$睫uݘjzqSs7;hW-ȼpG%I<$]Rv1pI!x1g8/^ٛ4:*EiJVa`"aԁc ìBd~YM'5i[xE!ATnҘF%e'$zd~ [&k F/t{UxY̎i:T8M 'ljn#1oD: FmwQ;%Twý'UYD#誳.X&lvs Dž5da2!Po8mHX M34 b(PEU֟{ q|BJQlg}:|.V^4?[fx!&Q Q<|X7y"4h5nA"TMퟡNsK$D+/qXJag8, IBbNɗkQf4Ww$Wm$d5v|KOsQ 2sȡ/1o%Hi.n-՚f_.jnI%s^dL>l!kP*,Ar.yá(Y,W85m@iO?SL{D_:6GKm{ovwR^ PtA*$Wq H; %MnnY,Urk_'~-V t$ e>ɑӨ.ߓ!chma\PQ\)q{W@yݒǞTՎ%OUDq渻Y.>ĪQ+\p_ ,0_@@z+@1)!vg,Al6 =v,flv (aY[z#֢gS-VKSOIgk`Q&ʄE~!@Ŵ`7~?lP9Wi^8Tqc-?c>nX pMp)d&} Fz7vw\S御j6b9Q֨L frş6'WQuR l?w:l(a3p= )8VZT0&$ҷKo\Xt‡qQs- LW%pCO XLwmVϔ2~[V7#,kw(^GkiVUqΙ B&ؘW]Hj ]1bN)L8FQgurAIp?Re M\aĶ*8ӏ;ۯRhI>=5[lO\7gF6|j7,W,؀(^V첬e-C'&ƽΚq0ukiH;tdìOxH &dHR&FWj-nyVr؍"'|l߳ʞ;TM$οuqw"NQ~02HN;6 G[ڹ!±YVu/6$ό1Lk\ĥG[HNÎ6ډk>)$1eп].PCpL7GX[{5 --5.-үvgT e.= 0?.xfď{ U-D7a( #Ǹ5|ȥR R*){Cτz92NJ/:R̄/J1Nl(V&h[bCfYa;\ hVj~޾zpa6NznnB`f0L+јA{8恘.*~eQnbP.W8?JDw7(aBb^\ghMe_htvC:DP'dX&yIEunKźs\Бp_-`nyp$ك`x97:kpf)bsV _ąs ruoAN,RVv Hp,-~#3QQ`ZH~>}̹'~5MELzQ=KieDpM&ͼ7D̨ cp3ԶLW+?,O.P>mZ I&&scB]__'|axbybÿnRZCM99A/|ÁuUQӎ孏·p(S]5Jv, ֐RuYP~5Di?*r!QSoeѸ* n A6|Vŕsаwň`u'618̩J/x+>lWlrܱ]k:# j'j:SQn}JQq'db:% &Pfʐ,'s,yX5zc2 2PI_#+_աx3i)=v>+ x3,:&[ݴ[ ;?.Tcqͭz#ZeaHϺNJRv8^TϵA}>-͋[q0 C\m( a156uwAճUcP`ELCOÉc,AH6e^XL?yӃNnVrK\WU$ r.Ab+[{&/9ON;(4:)~v5vsak:huD4qeKNqm!p%[ѠRsɛ=7-ݶ}wϸeXx-M82MTa(V?DNjXRIFn5Nt{r 6%p\֦*!j,rqw_;t'L?r̾R^\RiΏqZ`_SH*9f$-+]cgz A, 8_?uA^nO^U^uOM_{ iT' r|@#uN`өk GCECFI 5z6$ͥ27_WO"{(%k4 4tONND2J jl2zrФ+"wkJpb 'Q ZhU$ k^ Xy7]! ( tDV?Deѱn@*c>q\ Al]hߔaA43Sm/$ȽR& ѻEjk@^Y-q.Ѝڝ_yU\ZN?֝ܙE6A3Nd[[2'!9 3$(`T.?V[֭::h#=%,&_b{ S},d֔<ꦋAlikBqn]] S/l:Ψt7ϼ g17HRQ[oVd|JWs$2MY]A@0(:J)*amšI>jzA3D ]0yR MhW˿躣)H=2y|Cm&Jɐe ntTg*I?gOHNƽE$N>=N(u1Cs+ijTG՞Me^2@AL(]Je .O> _'0'$o`E7wK&UCo@lE>"˅̰&V k[dӂ;Nv5`e#6'xH3y*f$hS GN?L;5'(TtY6mKkV.dGi1F4{͹ow{eHS,[e5gn-͡%s-LJY>2E-x6._#0xZ][oWYVT1_= I/dd,YW Up4'/XzᗮN,hOXsMq>t(LOCi8"+RHK2j LEhY:|#Xˊ:~e]׭2[]FNE`]4ף"uēJ1qI6 κ /l'O|t%3Iu&Am/gnRΔ,2Z+AS@* goI6{jr1' nɫY=cd1f.9X_x1㡥CYYl长]tf݆%0BrAS P%Þ@&Blgeqe83N(PЦr p8m:\ԔD pVfrSmG|W@3z;Aql1noΟ6t G~o^?hݫ[nǔI3 ni⽯DA CuBs_.68z9v`59c/RX[j.ߊ Ϻl܈Kd5R{ҺX@q5.C,{[ = mQߑ2@%TFCI2sSNG#_,yv( րq+#ŕD֦#?o(4{h>G٩DA@l؞KTxk/yXTeHf:RĆ>̠d@l\-Dg-:;?9"_ ׆l`=K71E1+Tf*KaƯ8|v#H<*x8dЗL8uIwGULYmc%ڲr>?iafⵗ.KNP eJx`Zi9uD!z?z_ hu+9a2JUQ~p ;[̀yCZq~ds/Gh\5hBٯ濫ux0*OQlt׃[-D*5?o|J-5] e+ԨԲΟ:*ˬIaR9p,1_&L85BZ^sȗgQXaˬDGrh2y} ?igՃ$|Z\p">0J/ 2U}f2"Pխd׾/-l|B֥ Q@4#e "Noc(@*򕙫_$ .nH l9W$: y3;)𝈵%j F"rA(C^) ;Cݐ-sc5)l3u~ Zc*[@9ͷAoô5VS=li0<,/H\\Ywo[B?ڥ#NG]#̏E Uv{5q)i/!5̇X0}S'rs\Oca&x4LMꭗ1ŴcAߖ/Zh8FŘaoD^pCbtsPʍJ>_j̧WGȯܰ+,jdo;xBQA8}1NYo љS)uŹWc> lE^z6ђ1G_ wΤAzϨpROZydgK:\g- x]LavTO~ neL硂ͰLvNXN.8E=sPẙb_V8[l$YUɰgN3f psCY"@wjC'EmZ^H-Y,k!AIGz ,3=+*s\T\>`nrIޡ >n^ϸgLv(|%w?!Kȯ莠n $>9 $1j.s+t>v5͜mDNGd( *}q=VF!]%7g2ّ#9W#+}\)FY#JPg72쫻zQjtPS- <~KxQ: ?)i(pw&Emi^_7Bل18'T .->sa/*r7r?CU 齆\e1sdMv)+^,YV ,_nMעwjTb˳du/w:e# W<4D] . ;aC.t@Sk$Zw^/Z;|g Ba Xu*I,c D"L7lo_f R5*bQol‰^8qVNpǃzT9,Av"(rZvx(ײ;yҾ*VJ*5\^&i.tQtZCnr_mE;OkTi<):zOMRe{\o>۟}мyRL3y|_wQXjՏ((_-v b7D,NT^49 = B.c~G}Հc"Wiy*jBVEH+cGll}1Yir~S)S$vQ*϶° į"_YU=zK68| =`1Ob{#N p ׿9R(8ٹ. Q4e}GI^ۿ VC7A4c>8y/Վgu`.tt޼R 7Bm [O  ubь?EdGD2^ c"m~.#%"Xxi^W}l=? "ҙWà !5)*E`g;FsW|FBv@CCnҘj{cŊ7.}&D)u Q@ r((e6NH3ha?-cua[[E>A~QqXU5by=[Ҋ9]]8(J0CwV@J>7!Xd݇h@͚1|rZfE.QEkc`Yу:K҄fD O r_͞[o~kFAo]-H=?\;vب㷃w&mS>8zIZ A@r0*"B6c&1=TXWIg^Mxt t40QAsy5"NíbiVL-qs$;1LpK?Tsf{)%M>% )9JvodpX$ON7UVM:TXm]\n'ZHg=x Fm~kFuh6mվr؈2H&/A6i2jwQW^,"}eT/ǝQ ul"@8'zDS!}㿂C2Gc((~I_ty8\1aJ>mix}g>Z\LLa!PP6%n{ #V)Q\nzޒ(*7\_hDg=q :"seV:-O,GMVkJwpPm sAýl]*2c~5WJ.j? WwnD4R)pti{vuDw=v 5@ˬAYmݭ0{G3^@#wq>Q2G5v.[#՝bw5G7LT^ݫ]i@h~ؾU1 &Ve WT[S(77 eKn#ԧ*F6hzRv !s Oz2k=]fi$b|(cTjdѡ&Zp;ˀKU/eXg.@Y:OY| F>baXܼنuYa_ҧS-ce5vʴmuⲹkڜbVtЭGSj`ZAZ 7׍עPM§:A}Ĕy|탢״22S8b8*[A¹^ZN't ^8~CǏh^TCéHzgf>=?mKg}N㠮 +bmJr>CK6EșxWw뀭7p"̕Ykb77jvPNv3YWNw5eLF}+49("@/RkAŒjE}#9p%l=[V 0pȉl<(6SCî o]Peh_ 5|HLϨi;=Ԥ\e7BSCLa  ,z.'fYfuz1mZ/3\! $>nDOEq`j "or , 7}s|tV%5ժRfi oFIyW@:O۸q[yo HgGk,f+Hs>A(YCDx' 9W |Wz'OlY^ G~fwR5.;(}(*iq(AUx=+ܼ|Oș ˀ8<|8+P⣅0ӗV6>Qec𞟌` L'G/NUUSqFVbuM |vz=k X/,׈Am|TJ `hgj5H(7]Gp0$>"~ПǠzҿVSq4hw䠎Nt82]ˠ%qz[*SZbF0q>&IF#?G?ˁ٥I/!ʙ K6>^;褁i2=ni`BϓNtn~mNu*  h~32b9nNJFnhv j!TةK(GA.˂v& a6*.vw2(ߏ|GoʈMψ03+9Ê㰃]Ǣ%L}/ NjA(#0`N …)(i{Z=߻+\kt} DMb:9(ɎG?:}XVMtO8@p|MrFsVW|"U1%9d V'!c,rSao9(r6b;z&pEg$U* %g\W OljMw* qmxٍicg6PZ/p)vK'״3N2"S@mSp[ |kaS#~>}Lfv;Q!GP.òT#6=-]Z;!]֖x%,٤g= 1 MsFim09vJF s7o, eWVC|D(m!0 2YKF𩙄xےƾs>r"R#3؄shw\[>.%~>A裨^KψQ2 n_OU*U ۏT.`99DFFДx:uz$F}%B~=Zbn%QN։҅: 0rcPjCko1_&I'Wwy2D(ĉ0HEp[N*zޙG*d;fW,b=+:#*%cz.W$sK u`)[t41tK>'WF\wZUPk[TDZnPJC] ZyC߭i_t]Í,3$E놷HBꙑ rXi4E771۾et3Xah-3n:x2C+MATJ`KIũ)qMUZ@vq04I0!rYXl0Yg7mYr _S%v7@*.e`v.-94<|W; {]aK2csܼ~cRdӑķXma9N ok[7証2xueŦLz4%)ɺ] [IN sc(̲>tշ+|'uP먪.Dڤ^(:K|Al)V+Ao>&?K8*4).=\K4e&ae~ t,D"_lK h!5lL1ECQ'Pu^y49yO)=N!=Bi8µ``:jo؊^fѣ  HeHNt5@d f@(0tb-3Ǹu K,LhIG5gTU:!_CC خꟸQ>>odׂź8[MXv6Z<žJnm9#-d j-TyYE^ ߠY [M108 iF/{eKSd}RPdf]'#q3w5ŦAa͑剭`ZWWn4jIbR g߬/.  XeTa/u1P޷d/ e~8∲|[uChf$W0 Rr?90tw~M&AsIyx8Ka,/T q4eݭ'ewy#If‘CnS!ńu l4|`Z!FThi^G!rLl3s̛bxYLω8DXl$#"%a~UA_BBq?u+ΡMqs&Hѕi&XZL1pŒWZZ`Y<=O0}Q vs^6C;tNg9XsxW- DM=.x ّR5^r GqPm:#Vtgs=FwwhP+I|JBD4^D3jk,~vNgЦT멸R[wM(|7Q25vè&[n!>A/[v<9!|(OڣؓLTjI7T%sܨzҳH ZV Tޟw=\_[ Lqk8C5Ӛ`ѝզ@\yRiw%:@!j@͝=Ѓupn9#=>ݽ#[{!1\Cpdy$Um/RPߜ-PG,\-?w>$j>h}C2< ́ ۖAPηBXW|יzGi:/N9ߜ8aQ}RV]Ϧrvι %Tjzd 61{KgWQjۍT?=Jc𓴚F LyF[4Uyc̢fjN\{8᧊Udp~^ݰmQUeC4es< zTu`GAĬ8^Y$W6ܮ jEGSPs4CZ*J̞}ub'dr$wn|]B!zf& X"?5H  =nڙĮjh,n ͙ `bNleѡS8FCAT5ӭ0WrNI2{%ȡop_6DȮ'`\ =39͋Z5R4h ߎ4%ɂ`&*Ggs.\:4[a!ȆBs7-l{&=^ 6Amb{p/ Ii!#) FVrӠ7Cs/op[`@o;xk>ov!ޯR2nR_nu/1(lsYbTֆe_TeϪz#̱HZ?0滚jo])C(9F̋ux{vCfȳpG fR@wRlN#ri,fU}Lޅ6 rY1Li}+QD.Gǵ:kWUl.V;Z&P}fvW(~imy`C]@ϺE1/-8GFl<"vaNmP/[#/`[΅ !{vT/Y}?O="7GV@݄t?iA3?%gKB ޑivƥZ -Xb|ZAl" q.H ?UL_ITCF,:Y%7E6e]$`Ґ)z Q|apbX:0J!9|p<"_R%U>GPW\#?آyr*aPX-]0ьX`iA3fKyzubމs/C`HL|G0NѢGw%e|L1NQE^LjsV}Qbْ>D*Ze/!K\`dƣ<_ɡf9쎔Mʺ&A>b51oo1w,ٌl)/[múZʅT~9 ˰,Pl RHom}4uj4lWDQhƦv e!8 7XgzFVF$"m )9XZב@3кtl<ÓވqhW! E :Ql߲CxUpFOk@/H[4=%q-u{ Lŋ,3hhrR[yG;>ݑS-0!z&.EFPj]٦FImXGc^Ӎ ۼԬ2!hY|ql䥶AFY^rX 8@&Ҙ ;#m|Fz@H!Ez`̳$'sPh64&*5^8Ƶ&gu [/w6D9$TTۚ/}Yجfq ?b[WXd $A;̽7B;MNwڰK&+mgwl;k-ٍu'#酪ʣY-bϪo}0ROX4I{ :% ^C^%\T82.(7ab<|ߤ&, 쮩a9=_qe'n+Yլ^tH^ԓ+&T]hjwK:w*SV Owt3C(DHAkr45^K 6^{h_=o8Y.7nhwZ^N©.r1eNF 4tt =ʳly/8Y@Srɦur.C?QtIMvs.w8T99}c"kcnGW;Ap68gŐ ="F#ѵ.$xE| |$ז;jF3!ekz'VHd,m{7m@N>Y(Rn"(juVG߼M=N#M.kcp~ _{Vfb2_$p]Z|!' -~_GY׻ˎSw "Hd#U  S!FouoM@4VIGNMXAZS}tp2͋7}5>0we|BJ-4[ yE:/LMK[$u^E ܱs EG>yE3*!u>`=)xЩySv&Q׼æ:Zό4j^YmzWi)L3]t[!^ܮ$H @ Bo%F&a%ڱ]B-֜Ï\Cc ڝpo9L͑e%a7>KIe[~-PvmĦ=Aw1[KF= ;\\,d )"ށ/QX$M(br>-cCbBRe8$u?:0 p~!Ч[\CA*ë3Z6 z+oy޸Xb;3D`z bow/ټ22yeo-ĠeǨ&"M~_<`o%+x1aYIizm‹#K#osQ4q2Sk>?uTsۖK竸&3*-cMm ޖ*5DN.湭n]ꦱ<ѷ6w_ژB N8graKSD' .732=5o; jWh7.%S &N9\񨥝 'w$`aL-ݯ<6a+GGeA{w+kX5 ˛R$>X5Ϋ/Kv4igSyRp^~fƳ%!1,W-eIR)C]an,. 'xplt~eRfwA&%O9Mf;GJciau_n3qN,[2ٗHo >uYʜlLz \L4*MPv 695o4mBa\Y+͍-ƙU~u#i⍗qב>,'Hׇz6KGR4<^j,ssl4&r;B@g Lq#/6%Țz9&~3th,V=axM߰huhxVxrsff+E7)+F)]V$r:W>eC%>]~Q*aҊ>6m5c dp7uWLEd<]qBTS&iu|Q˚Oru|C1kz+"O/^ZvvS\8x2xýwxCr^Ubʦ9tc; iq~=PNuF3T^'պV}vOqmr\@LeKY(#FF3n >_{nQ=VQ16ש] E(- h2L8Ր PL&qZ(TlmڧozB?v{ iue~ .F ,J0'N8L+d[ҾB&9&YBX ۅN,ͨAzSTx Rb)& p92`z%&W9ڎJ~&@sIPd+ JuO&zE hx9im>~tGNخD O^\da}4`0 XI.AN˺$?P>P p#LðYl2En,JK#a2U3O$`@6U}u$GZ*tf(κ)9FUZmB~%% s I;@=ZܿR*$:W@ꪩ*~څ+؟"J Ի&u,DF{0@u֕i1'_Wꌾj}ַ?x3G@doϘlC;Iq!2XJQB+7;c #c3"h-v.&0]ʆ)z"V֫ت&Ĥ.Gؘ5hFz&I' e1hBߍH1xPIL4heSyD5x3(N}sYޟVU'U_c&51\z)]JNDĈBKc4+f*Ul:`Wsۍ'x /b9 S2JVڏM$qQNx'6y{-ׄ78q*Xد! wB@KG$I@J dAe vG ez>*8eJ]3tn:$H23ߕc Ȇy DP|lBrE!]*{]:Ŝa恽c,EF?2W)S 2y!\ ;|v9$c']57y99- 2l \tipfOk`OJG DVJySecZrŏJS1v*,B [[E[x)gBoa\˩.Ӕ$4%2A žHYIs<[o>61&sx13@[߭x [ j &X/>cskm;&h dzJzSXK$5q[ X=34bSi1Yg# ry5χ;g rWqL r%ӥVASg?g'zH}tPd.Y 6GB́3'N Į?yg4WP42T +3$ P|'?1_iVlGu2YX&Hfȩ\JuaRЎQ Hϯ\h,jYG[.(J]',[(˖go(@Z ~"x74?Uv>Y끚R+jӅJ:6Rs%QBOZ ],|/|jPOQ$Z.ULn Kv3hѲpЀow p0 7VenaݜyK[uxAb PHv͝ xr0昒yj>aaa2R 9Uߍg*LI@@ ]gqݐӤ$T.PO(ؚ2{myr83BË0ݭˤEI Թ!ECJ*e_OV{,Wqtga.!&hr:ZhhG[L2"mHq 51u!'j`>je sc"Ki\7 Q ? t]J'V}t=׊uUV& TXB0z8{ Ý4 lK[nR@9i|hu#S٤#sl Ҡ8C ~Aeߛ(#.a7/Hmݦ8ʒp*%uQճ79?tuW'dL1X0E 4w~/>uՓW]HjY->^pΝ!kD~@F.xMuBx/\OB.O 4Պ,R#.#(>)@$ІXןxEA=7qr6.&f;+I(JIs+`.Z۸s=.v7QMŲf_ڐ`Ջ5ۉwM1eHMc܅ci`&/zUk*¸*KW\fwѶcڑhF{Swd82+"~Ƈ=j2YboOjQm=[y$k |:ť` ӤojA='-ЫZ6) t 9=((r7rtBYK>xcӸnX_ʅǫi $Q Ι!W&!GK)'_.w;XTAY#< =U[s])$XT}ruƅq´37pδ3ui7o+\ 3XEZ )~DŽƭ5v46Uđ(@t.kxOLmO"plLϳLfN,z4K˃'źڝ.ݛ7 )-K,&xBDC4cAן؝K?ΜOUxuIq"t8d:ƛqС@v}f+ό6'u2}߾g=0GwAMJ z( ˂~!+%wOZ)ҙyY#FWh6tу$Zh}kBFښ/ PJeOY2?#&"XFl-0S-;cuwd%ߟ㊻l9{1;&i.W6{"/8h ѰqT~%XMZMՠ:y(aox`M:䎽%9^!euLAKM9y^R@2y WPH4[Ĉ0XK~tz>9xM';`NQ|Ľ^dm4rLq8}ֶ^OQ] w͝]ѿut~c` $ n Dlp HBohۚ#>EԓĎ&i>Mm2[oВ> )jN(6Jwp&%J{>U{\ pl[IbDGL}Hs!}쥡UF1MG=I޲WZhXOaR(K-4!pܮ?>Z@JHF`*j>3?{f0@z%~5Zb  :Rd/ @O UY7S6|NC2 ,LpwELϠ k/&UoRmu/ ^ɂjϕT1^#YIO7o'J9DѲӫ$̓zxIqZޝؒKIl KWJl]5ybia . s9y@FN[U_`Qq2܆\O=L > QȮ{g}!&wdcپ@b7[ 3춒TpD bWbr߅@2mVPQ/ \Q a7'OR)$TP&9+bR;/1t4b=Tf;fow\rt1N'1CeY1߯FTYh@2K5# d&?[.P87y ސf)@RPG&g¥]+eDK1#ICwrNƽW-#q Cd<{Qs}k`G$߻g8wS';.$Q7wwlzspg¡6@-kܸǺH4+!R\Y!'NچS,I+竲喲΅@TʷYQ&.T0t_m-d,قr~u*?n 10f c6 .7h4ɞGK*HJ8/.vE / KKkK.5‰ iΖ]S-21egetD(aXq_-E"g"7^waX ivVӦoe{Z2Q`#`rAnkʲ(Ay@^Xib"V`OmeJR|u6*9_mڊBI@!$!Fݥѻff$&MBXw hyB,xw{uM2B1tJP8B#q(L"v;4A*9fm1N_h9 M~:* i)5a\ /,VTrV%ta(uwR'x31Ž*Ya&?>zndvܩ[rHY^p՞| iÏp FEwz/É!% }YqGԣ96w le|4DAeFn˴gWank @PXҭ)Y+4;E=䋷g1KcY>_J:{ן|+m[/)dGzv"{Cb?_cU ".W ٛJb tJMAjԄSO&o2!WExэW;]]pcXM,)lgxzF7‰A7O1q'=F_ݢw6e6DXPK|^~m) _ʟA!SD,(#<~9]'/^.;eEԇfIA[MoRT=T_{bA-  }B1ow$+G_S/ql*0A;+/΢md@$ Q+7unZ'5cVgA++h2bw/$>HźBuرzؙ1o"kMQac(.`NZ!1ap pE}s*kQ`϶4r_]׼C<`x69Ϥ[d>arvwuJB `^6[@qv:I1>߼/8<' 5$Wl?:m$aг?~y="\Gsԡ_ɼ%sPadNQߚj00ciSvI[e9"~0 )mK6gN@q`Q㖡 zfR+Q 8F90[Y֚~s x2y^NSn3q7`zs3(QMo3HZO;qAWOݎ1R#qf:8@4y'D)\tL,(6p޼tKׂ_ dӜZY5*0J e\0\OmRY-=P4+ +bܲtCAH5^qVKdN] 6 %~ BoW$qJY)Q5R̝?d?NTf1(꿓S9 cze;Nz\|eSFW<\ba I {:6ٍQq(!@c=&d/F+\8(L[`#ZeκbHJ{_A*#OPOSosQd%gO,Z["}ynڿ"rJRUB*YZdH-'t=hQrMGL41{qg* i~],{@||4v7>W`rc!MZ?ażB5Cyi槰I?5g8_俴_՚朾˿_'|US Rڶzxw$` ~poQuqR*roDCb kx&tk@4m?; o"L)_@16K>zr C Q f(sBq6&D%u:b SQ<A3j*v"%}}kk<'/)}³Yy|-3$@n`b)Q8K̉D`|N) 5h,BKH[` >0^vaj-IYff+؟lwDi3~J4u;iKo'd'.`{hj N*䓨ˬ'.k=r,Sc?pZHt8g #x"s*b'jKK !T~ B] % ñv95^YOi/591nˑ~`SzbC[X!|ZWg*J hхz\[$[E+rc7!e('ָhr%j~y nbGh~<)f0l08g6dܼ ̦edAO~oӗ'u#3&0̤]X^ݯ Mi!&&3snt]ۙ;7:8ժwb%`֣*35LOܿuJ}Ztjc%n4΃7`&g..NaHNHbT*!66FAdQa($4(9: D0i6n~.lDgs_q/cwVE<!ں`}}(,rFVGAC̲߳FUu|jHa^Hx oqfVrϰk_49 Qw~ PzЏ4eeNV!i_VhɜXekf,JS}PZWRSPA_BLigXLvI}ۙm؏ aa<Ό}R"Wcիz) y{-<;r|G,Ɛjqg3EBA=kmtB;wJ(&ajSh\*eύ{>+NE)K~ղ,S Hq)3c4Kwdbr#K\CP{ {w rI`ec\zl0uUxR!>[O.+ AۡoL9ʆ3ktGy9 4 ?܅9$TiqXpQHw߳\1IfcMlNᖌ8r皛UY* P{;S rs(bM%|Nkaj.׀.M AG33d he f ` Us`8laʀJcH;yY=u"<S9x_?\x݇b4itܮ5Upn|ˏQQW*(/7&SC  ؖuI;tyD54'jDG ]as=9Cg67-"=/dV4H}̙GT̚g1,-ۭ֝t=V+0XLKNlVUknGނjfM箌R ȡ; Pг'wޤt su~[Z%%ˊnQ8%xMi )+%lME?? D!ۜS= ie2)NnIN6S/:I/G_P,yuc 1 .6_{T2kf"C!:ZPmL,k6ʐzDmʿ2]Q{3/E>&outfk+cȬ/W424k@LǖڠTm]2M8P +Js<+ 0CVH/={U|3$LDiV WF@ _$]_[ F;%Ӥ I __w pӤ"vw;@SNn=TYw!{gP8_E_|{ @9i^V=MkК}"pAY1k/&މ>⡙"X!i]pa>zci*԰o'CrVIv oGxİ87ޮ`n {P-##Eժ"n$W,F3BU29Ց9y 3X1}u7:"y0~^6ccG>'I.Jر@ao=7/8cp8FW֟;M'f\0 <d&kI}qGf;\wCm `slv_t$èdeN?gzX E #1h*Ӡ[b7Xwh h{JHڜT_]~݂5}TjhvGTU=f0SG݉O,#) j_FLʏ.!*FyAq[x=<#T~CX$ |x~-G:XX&JC>ü-;duN8AG.eR-h4 F-Mz_FkZ=t̯Y i,+v5\kLC,ݻ6 n_ _+:;3EaWkZ~ɏ"7Z-?08ڬ]|bvG IӀ҆;M, gW층#T+qAU#7l 5,(u<_pVA7;=NjG]`&R?C-|DzIjiIڗ/׽D~-uG`O) *Hί#TD6r$p vB1=p˜*7l5w!eKư櫄;(Zx'3s?˫V}u+C],i|byMYRx;nW7WzޖOU[V+ v<:kf6Vx0Sq7-Rj8GEN*<=oZE EgvI[rNMa̭)bT};7b_TdHlnOhĕI%SBOPڵ\>L\^vrm*WEÔ3_`,#Kag<\9~n>e(w5O '/WdtC#8D:CU3먐*pm /6;#ӐNyud&ɞ,d&x>M cvԦ{u/I}VEq~,9B XP{.;Kp Q7q@&6G&'*v0p Z·|YH'X#0eW(gIѓΞU.(Np"z,trV|!37  ɮGG] -iH鏱|O(bq?G/Nҏ fhGosN8c(^@&58W/*Xb^nY;ۿH= $ݏۭ[ݮR^ %GUBIKt$wYV('^Wߨf/4/,U#"T-!odn`g3zѳm?JV3V? {wĝгcQ0ףcl$m"8{ZA*mcpȮe۴SU<*g7ffbpw[1Khdx½.bUvpEѿ} ,-]%QPuZбN̜4pw^ګV9ꃮ|XQ@#5ǩ5O?Z*iF ecRt5o׶'؉{ip?luоvJQ)T<wХ'Ijx=v#bQuo~SBTNRsD?3qQ˄{j-a Ͼ: 6 f<)t4? DZ:D"5` ryҟ|Asno }؈gEOǤ9s;᫊ PI4X?vk!ϰVnuWW{gkTTk'${%:[s!s]jH 6r93GB#u 䬇Li2H3SH6 j;ʏcD?@,W*@iVw},$`|~R(9q~r<5L}?Spp *P0 ˟9H-ޛprmpotD~E2 FIk/B:ٯ~/[YB'vY8)zA25F-CZ2* e6ɮC<Z0 &۫/ JcỈc*ߛ6gZ2r@YtǤ%GVw,-[[W}1OC^mC\V  ]@&)f[ҙH4dz0 $:3^*I'(T'91E|TS9*YI生K ]AFG;mQ%ɢeNYVj=`FgG)"1%].lj="R6:;C[Fv]wv4xlŇ[_}-;)f 2J*!ӻ܋CVm۵_z> n>(D\E@j]D\t#p>^);K!![Itg}8 5n{k3Z׹!H8);ζGvƬ/Vt]N Wg#jHЭp_ѸSa6#܀Kh''G1#Wɦew^*~*㭗tZ\/XaZPFG{$TZnl ZԦ/odw6c<>sB4Q<8g4kx:3ۮc#N͑te>h"D 2{Cu"B{: ؐ3۔aoM*33jCߟ#r@g%~l->8`QΣ 6'ҴŻ@DN2 rBa&rSo&>f֘К]րR#vW5xf9 _M߽_lv\R^=#u_Xp*pٺ M4ix w'6aO $6.۲Z ^t^r @]Xf#$S?:$ /ߑGcjJ=/*sor&썬fe.p J9'GWL4GXQw Cf%q+|i8]' X/A[3(MɱG|fNsFeo4\>>ǔ-.||F`!Ї_r乙.GV'v]o .>M!6< +Qc4kߍw .8vwHx!$0 ^QBrl|`pF~A,lu}L\))|'u2Է!c`ZriA'=Bi}W\u&z1Mp=&npm%6jOyHi>+9d;B\%t|lM؍[-u|-h`1<݂Y˿KG$()sr'7qUDhmD߯s7'v*O4Z*_MĿk|ml%_)b H?[ MYfs[(s`"?9g~J|j}TyДZ+#H}⭦+=2~ҤiOH+A/|d+~%1+T|c;/ǶGK?h\0=yHՊ"GfđzR|37왡E?%-݁cRü,fiWNJ~ ~$F#J qPXR>2>"x=P9}RE^ ~nLieZωh2'ztU*Ot=ce`P 47rߐ?gemwHj̋7h~dj[MX&nCCxc 3`Wm\ G^;4fn۱ڀq*Vm;xxRxS3U|\leH*݂qE4ހ(TwMnh[lzʾʾ|)}&/i3qҸ|gl_  mu kO*!fra?ף葜+ OqotG.6N%Q M͵֣Mrs\ ݴ+ -YTmdUjf2\"fo~W{B3n>#K$/튿 -肼P`azQYrVSLQ|`Im[4icHD2vYyܢK3@+KWg8`jjߏ_EhT4aWG"'ҋle(1Z]"!}.@Iikwq1yK4/E%mpXlax9pzHUV:-+Y0 vQ9^r\_\gߨZN7a?r+=wA &;#KL 3[*$},<^R`qYjb P\Mg,YIbɌt;Zt1&$fZ=[K: _z˪ZӅҘN;ί@up  KkCԪ l55İ|D='@{t\AL\(mV J et<"N UBx|kv1}PǙlO~i˞^чE"\jtT7+0ISF]Si2<$x;`D_{.W5I k4 Cd`>IeHnYEuTC2b|YNZ4ݳW@mSEsw s8M% Tr$lO>dy̫{&ݓ(}tڝgᐎr2Atnh}2;Y)r]> !=?UWI_xΏ@{0R9jf~OAbF; 9 -RTڂGa8J폺ȃ/ǽmIP1\yZ=UX(?YLd!R~b3|8Wog,) NQ'r[V8 X~qr x Xu)zDduBQ?w'd6v~iwOFOrETb﵉~d5=ܐ3|X= 6\Fq4_=]Vfl^TY 1')ݛHS.865 KU7$容]E-YpW3WϘ&w0jmLJ$gOשrtUN)^}*=OͦR\P 햁ܡ|BIk W Ժ)kH|[raa:B=1#D]znmA].O:hJty<:D]tܦkS`D ~hˠ{6KӴYĪ63UXpm=^p{&Mnz!omGJ440 ϖ_=(i<ّßȣa`SR4n163fƥV+6kI2q4H@…,a<9X;(0ty~P"yl0ɺL04tf/'uFFFޤZGaB..?djB*xκ.- -UL1; ^cclOJL5!λ]S~dvI:+9,4N *FOW"+0>g ~ZQ/G-__Y4Dt|3(F;w sI%ڣ'pSt*Ž3E;3bҳY o*|E(鹿I(p;|S" w]9ot%QBb]g&ToGMB YՔd%Ȍ.J;Ge)Y M 'm ?mӰ-pYfa뗕$VmՑWyUǑ$r߯ {7 w<+d@4gQ~rXqBF'a[b~Ca_ql~x1b6o^So{-`lӪ#'mճ`B>T[zNe/@۲v6u6 fU-t+= Ԭdb5( Wxe۲V2:Ͽr\ qxum̄#Ws=6Q7h]bAӡ/ 'zY/s<ٺ4G1_ bJ y3wdV ;_آ0%ޟ\,*f&iMWS/Zh_qHbK(,ft䌔kO'vz2l"{N1dpdf|rWtD&qUYSpϐu^ڏhuZ]P6=t:[*)@OTv kUː2<k:=Xw JUKFq{t%Bw AbJȠQlÞ5@)CnvSֿ"1`O!J絞g](`N\ri+M ',*,QHga#zu:A~Y"̭R41j-J#Ɨ*U6oM^l_\M/tW&nIGl`odjnhCS6khb| %>;s*P40֍Il0Kh 27 JU"(чWhj}T!4 땙-.y՘] D=B}jܢ1K8a\q1S.;KW fؐ/&aqZ~>m^#,1]`U?'*.o/e+@{%S|֌yePGU&,U,ƞLs*Moyn!._-$!ynuiüI2kg^!.Jψ# S8f'k Ođ͓$F=*}I^I7' g{U4~43u@Kb .|vDQ,v|eD"%:?)ۃ.0gOȍ!$#FW:b~_w N@[ӒZw4L (cᦙJ btτ7H%~ri(B.6Ch~ ɋBs(PV{4SNnH{<[烰4Єw8"U XX>lacZÙS@\~u~U]P*~@ҠN1X~ie"&-\Kk'X`U#R7/Ab!t'3D[|F\gz>Rʘ/8Q1uǔgJ4˨?Q`Om蜋mZ\XZƒ&\TuhzDž_r0n(Xw1RH+2ؗkDek Fehk4@ Ͱp&TF+erIs.hŀ~WQ!ug SqNݕhZ<yFι֛ӂ+DFQ܁ =LT'}Py5" N9In枆cUgB:[+Oa`Y%gS&eʜr޼ ڊayRzzTt߁AG;Fcټ=[;:ĺEq>E83 .8)P7pii tcJh[Q>V=rMT[ ^[n۶ ?CtZw_\?]I@6Y+A|% 2UL*C_H[4d7N?}ke)$({#/CK?~ hYI@nlDpKXdJrӔ-/ yFXN)GfqږA\ J[q3q9!<>˿U;鳽|Cc)ս!s6=Fle7yK/O-ascP//Q/I|}JzK n7e2bK1tUS:CNôS|hOzJF''(tb;6ؖDBw:^ :褗[#"]#PlFlm8@A^$H H L y:c SwM/\a?,%4"<FhS6xY`V^5uUxk0bŬe;9=/3^R"j*AN ᛏ?IRm.u,L` vTdaz|z*Qښf$*'as { En砍[xPZ+q(;7eTX @69BUqjZQJn]TCK.L̸?sJ4:ƴIT=F5\D M %F-//0p b/5\үC0NYroa=BV+'(0Л#yG7G5GHDDRL-!xV2ޓT3"G/oL(5jalj$ouH3rvqu^ ?$dGu->3%v} }v@kAswh3Hu6cz l=c/~"HR2oe!s {Fgu䨤@ї Ԙ> P,=7=*' {Ve<3MQh`}SAfm|]U!s|Bo*JqPŅҖ:/do\vEt/ [Rf0pl21V_5 9N5ȴS $^#cr2>cLZ-q(t-g[ 6Qh\/{5-',z+:qQ(#@#TA8}{Ɖ[q,?ͧ͠#4W͇@Vɣ,m ~~59ՌAɰc)JbvX^tkmb?`2x%CLnݣhC&gVIR_dZhs]s:`16aItLa;.fk uwCt+JLw["<* ʾD@@~l3d@R˄EN~nGqHj)UGG5=_JAy {1!I>KH͎U=ĭuFiy: efV|zMp5;Uh*ܘvs ȨX"FދڽH3$s|Gٚ94lMNmJW#S> 1l+d9߃F0C0yn3}@Yx+!Œ- 2s߉%) }^o/Ei9ݍMbӅ& )'l(,鵈Շex9A ܕk:-݊H֟4Mh8) ڠ\g?k_]5 /s8b-,/}&xC' wϡ. 0{#APJ ptg`-zPtu؄Az:4Ӻy1m 5Q4@;Y+dAf H>9: "H=s-}eKerY9%#0Ǧ6ABMY>p6 ?ZZz73/d0== f𗥢3YZbY|"x W.;F&\t֛ыfo4cagmJ M_kûX! 4 go|2< 3CK_X`R̅:B6C$qs^#ɑ&ùp+T8S'9(ɺ u{+I/ƕU[ tѵc_:iPGߏjfMC*aC̀,XU ~VkJ!yW9?}L{UIX/,_4\tNxA{؜]K p $UtJğ)Af*GRdؐB༶uaɍa3R ;0t(=/FdvCS~~ GxdJwZK_\&>뒴amdE {:GApo5~=׽)hA&UM4Bnjk}na{cSݐ!NPס76qCu//D'Nj=H o`׎ںtxUpk>]Ǔanb ,yix7l{x y>kk⾸Kmk][bbkOqoWIWv\_xtl-Flkk1?Yg_J7Ե}C͡ woGRb'u*U\SH9Xv3pVG6^(0+u_Z1do #- lvf#f-|{/)5 +BZyTdejJ25oP= oZ}a?ޙ+3A)}KMԓ9NO˼td42/J{7*,]#BB9.:IIxZSqtF1^JSN&s5dEx_$U51P,[E]@,[' ФʤGc`5l^l7!d& IFMCt=zρjJ2X\9rLOt-gvq`ϡiGƂ$H%}BfdvԛגJJdzhQki2CH%*.O@7D-a4NHV /:~1QErWZQޝ}q%Y L qG|x>OR)6&;iD,GТiZrkg῍JFWf=zAT72ӥ9ztsv387PN/=ڰHE".Alv\e1|`|yB3)C6%3:vr= 3TBx0F#tx>J};*]x=ƸT)mpe ^[DLp~Y_PX-]L]M TCU͘0<۠% n {Srg񫛄ߋ%" uTQްzX` ]U],P 4Mjjqmqrz=~:]=8 ! !><$zeT醙p]m~ϧyAScY:4|Ն[*< 9(a~.ee?-ܪ ~@'\_P-;^ДQ-JT?(~{E,jib@tXe;)Ω-=bJeEk sH p"bȳ2 @fdRvy PPqbUSla'^+wpJ"U̟L ~='fڕsU WG98|EL SL>HԴIpg CJ)S}XIIH~YK|B-y ~G𻥾 h/PF%Ĵ;KW4/S Y}1)SSmHV \ xWטX&!m/$>:tlyÆd31{)V_Ѕq婲^ VBMD0XQMƣa9)>-?`׆ڕr &.I91}NN-e(z yu؉4]F$ܤ,T8\6NIܯ Z3BxT&㵖䚋GjyZpo5J +d_ۡ6e98}e"  z+% TA(Fq!ZS-اP\8/rk,$ćzlHH@Vk Oy&N9[ Џe4rXd<g~oؐ5މ*Ή>>F{TC|zQkӂĠWO{ *p9h+ `<,Ah4 C+c0Ŵ[  0f!_T_'oҟ2\ˏOlJ;Td~0ȡoHے `k*O-c7 8e\Lպp|`﵇ ]vaNpY@߲IG^&ɨ Oq?soA] N!c :8M4k^/t4j S80cC* ;wGS' )o?`NМ97*3(ń6=H$M攲=xjZuej.rv-i ڷ_%3^ioG'7H+b|\h?M> S sF =~ppƆΌߨ QӳԺLXFasL 6Թhf*8Dj29H6ȏR@電!P낏LJڨl-}YrYbVv?oQM: zՓ{^1}L~ S6΋߀t:ko0/yɘd܊ft`n$HGm{=ܡR>E-ce6 e{Ky;1rf'PlJ #v$LBCq&HLPMir@3fy9 ך@;7YDŽ u߹ ֫,7DM0kZi/ IE;T-CA*Aŕ)MB@@cRS"pI?#xBc7+ htϖD'w_- IDLOj" {vJ ԑ궄Gp#+ݷJi#,L|z6]*uc΁K'L`F6mZB˖8NvZ}j})5ܷ7zUGQ@c1=Ӽ٪8fB ݍaIf/cP-Ù@82kb1OpB'҄[]zݿͭ*$>@Ps)=@}!oiy Th=.>Ѳ@iͫoh_' ›(2C짩opOT髍L/lImLnhvv/nFKtY㟽Z"w&*fy,;K<524bzRՌɔo_RTPŜb^<~n취Un<">25ֻ-8IbgPД'Aͫ YR[qR283E$-7V`f=aO j1zD4GdEh[w~hdFa(Ju/Ĕj?o'a0v!g8jJh`Y\`| ((8r{y9QQn:ҵmBD\i44@+0kY0wP˨.`iXN?ߗ:#_|Qm0X(|L Hcjڵr$H+8(p*TߪQ=~F Y$n~+Mqǭ bS]e* 5'AKްI|G /ژv\ z:g'mVF)w'gfLg9kY@eՀ8GC& ;&[)&+"jβLM /ƳU;?skNeFH6nI^p_IIEC-%Iro6VyIQF12W%/ m6xiER+qF5ōYHRy6X( ݉uNh6Q2R(b0K~nЩݷ (H%}'}^agFSv:QHpZͦ uFTVx˽@Tš(!yl`Yhd`fȉZ/*a-k)[B!a\`0Tt hm!P`xMMgI-K0R,VsOXGs l H״3`\^U-&@V1Po93?e7/ HGl@tkEU "漸7 < y;@/ n]%i2 /8Hie7,ߘp6ly3q}עԻ}1dK)J 4D0>U*ΐRH gBG#{T,>4t)@) xݵs; ,fVc[S)n%/;Ƚ5.Nll_<䲆}/sd-呄I#䄵 %L~BKAo^ UM^ /)ތmiK f5mzӸHvЁR5IO:}Y_Ysp"35V_#M\K]{6/t *O.9d#f%wY,8,=ޮ\z֋z{6椳yT %Hg\v! >eE(vx I(lhwkvq7BM}wȉrA~Rf2Lv93|E?'fR5Hp ظ|P^Eǣ8aqreêKd,#o1 9T4T,Pk`XVϙ@7.KR۫`V^Yʽv&zۦbm͇݇T40#^a_zG'6g`6HUCk'58S`˙Ip6E[n.6gedS[ ܪM!bSR^wYm{X e{㼣b$b>;33\{ B \9I1~rEtc^PcT{˝^\ ۘ#ÀJbU^:L - Aw ;l0WOcܲTV5s3::^%&环MH1+03"9L r}ZIF+WVO4%y:qLp8 #V>+z 'tTA(1#>(@gTIzUz5CQ$>EI L˩%%&}Hs0NM(Q7vj;h-Rx!Y_D|} -Y,%ح[oz=wyl;Œ@_ m|V?$,-sfF"$Y缩c^q:albq4(3\meW Pل;Ri(qs9{ȢKʒ5ٓ&M{G|0Kra#ELٱ"#~+ce*Щ|/~ {&݋?LBL u2I~WJV L=_íXZi.-X vHK<$Yb⳴Jdh-ne..+צ; ګUC8Ӝ5Fk=}RQ0>[zјܤ^D#4:'7j3g؆|T\{C[wFm]$2 O_/j 3 ǵ~̥Ad6ߠ4`xqRJn4RaL>$`Cㄥ0O.n+R(q%C)CsC| ,X`| }U9\$횻#< ."KI'P+\] 4}.2 )"rf!Պ5kbZ|:퍺MNVd3_0rYV ]좂1-f. yɥi5nSu H"tJW;*x<` A_h-kIi2HӒGLOP iXmzd{۷am^<֑!:3ߜfPhpZ6 KHY 9ޟ)gVOĈDD ?u 0Aw}gv};TnëӖNڦ.8e6k-X1r @E- 3טqV Z1!vGI&UC呚Ԝ0c6pQ ֮tU""c'{lm<T@n!>0DI*FũAhߊ`D?G0+rӞ", _]7t!N_BWA)Aߩ==k>#P/j`ߣƃ?8p 4*o]uF kVI pr5I9%n!S{zf8 .]n~zFޥ Epypd֯EIawsTYP*jvWR%pȑoԆƑ\jzq\ ts,PLIbR: 'I 6P+Dlm] GYEjx0 %oKp0%4j9 Nm!OVjKsq2%SUJM^V+ pT+JQUK_7ܪjدx?mfwqcɣ+z0w?ZƼ)I ̳y tuP]y4 :z `wY) ST+6;$ <$^]O\ocS7QxH=pV$'-¡& bp+:$?mW>DŽn=;@2QQ6s?dl*G@GqUe͵xyF )l_tDLK2Iѧu."$_̍]Qq?O%wTxqG7\~/+.椞TFB#KeƋp |sziX!i2xܽzg=,)x.ܵ4X] ޅ4T4Śqh`H 죕l:'e^vBѲP%˶!t3(`M~GQS{:&Fa JWZ`[ 9iJjDf< m:Qs=\BZ K7?jtMdoqՅBp{;gAn -iV4KMҢ6ʉ;{À&hsL&CRU^Zl|-YNYcfE;q9͡-Im5~5YV/}Ͼ&S˸k悍 ]X{w\>Z,|̍ ףUo۱OSe574L!"nqcԲ/4?9S[Vt_WBpC@>Ji TC$ ]1ݒ3F;LKӺ;䵅-fUdYji)TxrbP{Qx\1"ph[]*Gv/'4DP]lV@~7>TUGqnHK?c̚R|qSw= +C)\\yĈB;[h]'Nxh*X ܲS}|9l.4k!@mh  \J7_m@Ndׂ36< YEA_iծ 2ټikd~3SNjۭukWa y^F9EW*"gAaw՟mùc|-4@Gk )iTU;]&VYT1S 4602~Y H}ׅ| S>ᅤ"(z,zK]b| qff\-#5}Mq!"o?&.zHZ1 EN@9 O9yw^ J>Y >SXǗE,ܙTbO+,~7F}O!; Fr'رC0_ :h%/p}'#Yb$EjO]%o(LV7\@_O: /8D{&@kRQJZ{')zw}H61*c_j^-\^g&_!y1pa83W\PXQ)YF ;Fer/dVM@  yh& "@FX*hocTsY$g^4fJv2_I a>s=Cwƶ9Ȥ>ӆFraQ0餰MBr@;̇qyCH. dxVP\uD>z&k([i.[J7#'m=D!^.#I#UϜ#>|GyC5_l?a8('ڄg0{YiNqȽsZ .ԋT'ue+t AɝG2Uϓ^~rn8}V./)P(Gb]Cec4R3ĜپSDL\2pCC׽|+0ͩ Y$1Ks}+qf->խW[%F;RHG4Geϋ}`ɍNL3a_GwO5c:·4PJM,?^.Ug< wFm7rIV}goD):S~@U,/~-9 5x2aq15u|-)e/&@/S - C:/JlRM’8n-K/VA?4!VNb+VǮ[8_Q7v=ag bp]5- @(*Qe􎝟:I[ ĂD 1/Zkx(_ٽao(Wf.i~Go7 o\EglDCwQ]ZF9 scK|mݰl!o4n۸ ? ~PypcC#cw*Flf~(0X4I Ѡ9kVZ1,/mgH 7K_k:%|7up* kSdP"B?ĬjEFMGdm-$ecE' dǦ T 3\)Ʃ DpCʥ}c7't ac]aHgSe(])k]I䠉30ix\Dvu!GeW_X,nBfBE(oH`o.KЬ(66/Tur?ɜւNΨ}>GM#Nv_|Bnʩ2S/ 4wD.Ug? f8;d=Z^laq%wRˤnM!X+ .\?M24bT\?I$K/0kr7'x7Z[KӲ`r*(#W'sG꽞 |[*'[Oa:e{=M<9VjXk&=tK*:G`KtWjd;:/b8 ;St !;Zm%<зL7ڞ+6 nbqemn"S*N34y0$$4x/M܈BUkM D}'H2@т3lPE%2fcw9䭁xUSFJ^5勛ѴXm"?Cm6 5%х}题|I1'2pzPUtd6lAΙ{xǥ΂6d5cc L~} eP]5R9v1 >SaݾV{LEByKg>H-dC]qcyncdumxJ$g D?()QVIO=^wV |Ups-a*pm|qyfx*"~czCIg#Ag#*Q2BTf[nMN|\׍@~8Ki+]bi\aKjsKL]ثJl~s`(<Ѐahʫ$jH,k>=x '*"_..P=7VB3C) PKfE.Ձ-xuo4PKcymz5`"%OUKG}st6pf71+ AE=ٞb7F"Oj`pN VFǨG L0#8O Vr̾l VxN5MOfu:\TXN 'ﶪW}uzG^0(+_q/ph)N[癊,+ |]uBlX?͖~D96̨vtm4 #.@s4sp [F.`+F0 9c dQl紒yYxm>@vEEb N+3~t#>Y!uDw__qҲhAc}&Jlϑn\PƍCxVk|F^*Vg֫_)eTw5$?-\,3ȯ=n_%_æ?0禭}aPfSBNbH ɨqVmm팭J&$jPjO|@ ȗ]J?/-*>)l\}~Q7>P ߝp;KζBBGh&8)!Tr}|\GE籦d8 <1AᑾP^I()*ԃiBozn$8u&-EB;RHGv u@ HF9@Ǭa!%8kѼ H<ݶ&&? k!}tmUYmdr6N@6ʮ߳cJNe:WءWk1Uwɲ3 } .B:'\ֵC*$8Mk3^{\npV QDgiNdC7,%^F=YDd EÐ,[y*{dɝ@=YG{&B"qwSFO s ꄵM#eٽyU ~Fq cHc `gw^mO7{r殐i7+&̙,.7YràA}҉ac~}/'pS`Z>0n)IP -2 灹 ܮ]S6ЋC2Б ;)LiE K$SgcKTTy.)khhuZ|UhS-!M0ELcπEcV$L;=^,뚏U&b}|.xma¬IhQyZmQǕ]Z|[VbPLr>e5O]x"gJo YH8ر Zf26I84@.F e̶~sZөaڸ}#uqR)v 1uf$>ֱs%h*<'!,x.3p ԟƶ-UH̳n9x:hX /uO1.Hޘjt :QEQHN'GLΤK1AL^Yn!Eg&azadj 7r>}iC(||= hhou~'>c+9UqaNZȷtd"ueSOW+Wq\}C Fng}׍8{Qk.XUV@n2(h根6T^#mC,KlNqq,$kj7o!AYonWi Z/Ȳrn٬L/k75T;{=H-˺^cg\ZN.Uꤜ8ctvx/'Je8hN09WmL6MU^NhY9\6.! K$6npns6(oӸ6}~AEVsvݷyr_=Eoyy@7OadeBB$a . ƒKpHXCd\qcc$rEتt݃ E^ۘʎ^bBm0D?M0 R{!,Pօ/:N~7 9ܙO2'EBH/Q"P? #w @)UgGLø'7q,t_X}Rh|c)aBU.ɺxnݺy/ooqdyĵw/ϊK>Fk8cqӁkfLgqXݠWƭ8J8_Q(:/t@q7~wc&3d;U8w7EXM`j Ϝ95:)2rGd߷>s#KxcG='[p=T3`ZavWWgu[ AR "})oI-WK^ӵÒQ:/g؃+~ 2ݟTȘ56Trnq>^<.]FNN)_ AN)U0懺Yb/|'Eځ0g ]k(G>&>FźP3*eAzAش餪yzv03(hN|u8`m yC':g*VCu)v,rj6d^%=G9bBİ'oS Ց'vnL. FU6[#/vs3]EJ]}PJ h̄_N@8[QF }JT 9At.'̬3aU7X 'Z&o򱺀k,=kw[HȂ(aH EjiٻWit%m,D6W DtTT2?y@o$k\cD8E|9JZ^%/U#kLDlZ'УE)r^ a1:.{$Pӕ;ro٣ M cp@$sm{*Һ.ґFqq ;i%|0+rvfMZ ֵQ :Mc> 'K-!4\ S+@PN^ o ?FD.t@} "'$oD/͟ڌ3' Mb ,=gn׶p|#l3⻒Cm~.-EO1Y+[',==`+w:)mrYjc3zUeZ)HQЫMujBD(|zӮ`|n m#_p0uN~l\oc%ӍL%ѫPfFqREמ煭 ԡ؎,ڶίFj M,4tq~:qȺF^?r` ?='8>Е>NKx_FᣀJK[C ;ɒK|@iN{d3ݭ9gP?DATjrjVt{~ZW|;WD*0t .+5lw7]kǻ98r2 aaQZ#۷ @!nUu"xy?VEX!R.^b^l#Ò# GKrivwY {k Bx)j] {]e-3+A0\dIb]jˌ퇋)wiQl\(kK5jE;)oHWX”g@Ew+q4ĥir]QF~pC 2 TT}qJ.?m'w_RcZųP*Vr,X+67ݷ[ 'A'W+_p^ +u14#$yٷZ%_].Ҳ ®;q~ cMk~3#P yиɧzR=Qor.\A5JE%@Hl[Gh-m%y|pB{4w>7Щ⊍omj2e[g4ny@oOK w!0~1E"C):,\~T/.)qY\| CgۄyH9+m5 6 "O\b7TBK(Wq2;^R4 }^qMu"P8C8,nX" y@;S@Ѻ?hʝ5ce]y/,RQܞ )I֐مH8SfÄ`uN*/ uj a3*m3@ Skl J'JccZQcBͳ7%d}x$_]5yJ9wOa(6xiw]ߣ(mj؆O}q<' ]ІΏZ"Mj ُ~vjD8HnLU-Oo%U~3~AyӪk#kT"U]%it<'g*跛q׽aBs@ף۟}䆱=dS+]*j6b5,:(04vpXEoVҺ^sp W׬ih2E-aZ5BNO`ڄb˸TX_\F{ }dyl:릮j_K9*)lbz[=h"FlPݏte~1$y-6"zH7<5ƈt6^yMʷ|@>: %EYѻ9 u p(R`q?. :eXgDt|[ˌ#$ m!xX&|Ī`24_n );vzfmL h3JC؀c4b ݻ_n^kνfKf x`x,EcPjEX/18犩gg~BEt&H#T0uS9vP9FũPl]FrHKrxs'fs)f/͐.c@PLS_+wDtc>J]hJgsbL&®Pf<T-bs{$&39[ECY{#ndLS H^5]H=TQ8Oi3TDn1bo NK7jҋDZL78b9#|jYا9(]o&f8g 6f!dC銍3 P$K7s@xq D\A>hn;ռɩv~7qMLz^Ibj2Qn2`}PY]EE`h׺ի٨-䋠Ojɩ6Xl ȊaF6a@q"X~(FlVʹ,r_;bZ]%rA >71:09cUZ[QA1vV\Oc6 HZ^MOgFaGwQw%YwAI̤I.@?We/Zզ]lh?#CT9h|k:+'#]7&$l8A,4;v*R2 Q p ږ? ?ElsY X ,҇d>%\ 6fU7'5Ҟ\#Z[3Yuqqړq~"D| WB|sz5qDzz"xcz]T{Wrx;T`=9 `:i(!m''EGZSuX&`ɄtؽY8rwxw-)C׺lu$kc9o%5뭪j[?];LȊ04V-ܠ󨌮+Yh!ut5#ZZ!ȵF&|ʊS)zy(m+ƣ?H8@95,8Z_AwԟMNRĝun!{0zu|oU 3Jyu|ܜrPծ9?2eR`æGoPt{_M$ rVZ 7u͢^Lw".= >khZzC-9uQjF5(&$.s,:WӼLa&=BZQ5dESp%36jni9nr)Uk 'I7v]@hnz3D0IxDYՠl>tat<(_+xlH6ՔH.bvRB%k<s6["1&}.W3xe90h&OzU9t2ӥ\C5ٟQ}C7 Ӭ*%h*$O4; p@^5 ^',&2״Bu+̺KHԠT;F ^UbGx^WsSwC2mcY!:G2 ȮTNHD=,P'W賧vgzeįxolD7 |Xw<0<4Ӄt_Gz*iVpX{2|ZÑM@?=^L]|̱XH=oSjPpi-t7!t%F K=M-tFFU]3~-u4iz-[IE/}%xjf`VkJ cԳ~%:/L6)☝`vB"fά7 ^2V FUx+ l.!wPq6:GLX΀_NFNDzC*̐;L ;K[\ Q֔*j SǁyLBXžUX◘&٦ 5=MxB?j'}mU}ۇ0 -vd-{R"5s02`зfj ˡi*R!J`f;uB3ldSreo0"_ב]rr%hbQ{؛!ƏםN!pժ~6|R'V43Ҭe'܅ԣyy\"l0D'wIr2!ږaO+]FO/]qcDYiÕZ~vg I>yћoRgBY\u<)51%aK/FUfk2OygUY3y=a<AjeZIL]Npy)Dzar.MԃQv^׌Xͧ?݇I7H=,̳l0|ٖs2e}J-.6%L[>x%l㞕7nϱ[xw#mEɼ$& 0Sv,05AmJEz6Lܖ9QY-ok ]OI)mk5g+xQ_:0.hKK~R( DBYԛ!Ⱥq^?s>u=T@yIΥ\A2Lޭ5f0ٹus%|C[~4ុqa_n](lxEuw{e޴ŵX.YC'_A[ߋKx̪͆]èGĞށ ԇL.$3[IWTq QHYo0ޫ+|#&nTG$kKG}`M?,JG?ʨrWmhQv7\! %sŸX%<3vpLb`z#6C4N-'Ytm 8qĐnw9*b(oqe}|>5&J!e*i@I^#vR_TIdN}Rp"!իsL,_Q2v4_I>)˖\Jq Ⱥ,2*ㄑ'Vś#'hٖ058S23I-˦tXʵ*bLX K1 )}Q2Jy}ؼeG=\&4*ZezTa $Ō'JXkyc>삑[N@{&wL'>TO4O=|3Uރhqfa4K^E(MF b W|XM?2NXaCTm^lLPt\ yp90^ dگhT*`",]OG^>ǯ(YBw|d[4#<`dN:EODieǍb<2ֆyʺg߄,^W4 ^!jʸg@, @DhxsVzBKjOIX-hEkmz ;0vzfc7$Z_ag %޺Mm=_>f ^qӽ8 hhB5܄N׆S^샸jl1PH*-ߨ2P#+9DG@OS0u8xXVׁڰ(BEOn‘؉Tk|=^SBCXضzNZоmvʐ@"htY[O1[ |JoY61Mb(8OBpHx'f :iE5?zCQrVvbI[i>ѕt#O{Ɖ"3㴤2@!h#æ@ҺəQ vPOY'h/G\eeTCW|XJZfl퇰<iHl&{oMEue' Vm3*k]&FaNnݟtx:`j^I]^芟GQ,֮Zr`b)~vwXn 6^xY,gF޸#TrNG>|4!kCW1 Be;cL:q)mtT zvWh{C/LSQ|ՙAMxN&41X5a-3,?!Nj 5 !jOf;DZZ~zQ~RqJ ys'I;^폀hf$D5WuSMˀٛ ja\_H_xD $Ct0RtYTӦ75KզWȥu: j; {?YeIP)J?b$ZBQ*< ښ#H$w/^]Dv?F_ Pu[E\IEA6@5,PoUxٓ!fcY7D)jcWV\6ނ; G-k@9T5>dMXXˈzoE}a|=LZP 4Ujr DB-OīS2i\́H\$0K:} B@\IKwM)ȍ\SE+@\sŽ7y~;̨̓Rs\d"ax%Xk;@N-PzgGF7s 1/ųiEP, C&bV֎tټrSpQSl e-$^'fg&`oSK@cy!4|bm Xxbr;#Υ%+9f87t0]byW]^N{$[.>m+{mLSWri>A25X6VI c &tz0@N`;èņv ?WK"``OFΓVnhB'8o@: !Å YRҮź:8*gډ1z'Oq"#Rvb]-Pguw H s[r@|__pfK{\H|zvچtW'\y2K"⼳ȾZi%dGA9뽌6D- M*A?.T7̕:-0z2_2gJ%Zc4\q@z @z.knCspHM _Gnص4IN/{ Vh'!~^R9ۤU{ 3$}x0"֨N@*JBv: ujW x(H*pϛ4xs\SKFu[Wgr4.V%4FZ;B·jAԢr~`,֐v#.4b_kQ1lclr޲jCJMJJPK ^İmtK$z~z=mm]*XK*15hto}GvcKa)&w^ךfXM$~c )d%biU-~xlY<ҝvwtbC&'O]do,eiz^#f4򟜐Z`+9 (a ?FQք#EMLHALFWrXnl~rAX>T&zgeۤ HMC昣$DWu,-9˭GMu~VWPEyQd0Ü$]RSOUt*y%쉧uA@*C 'r&ݭ) )nRB6.4꦳M=)D}Q~Hf !U[YXL<{5 nf V?rhgf]zu$!fӁ{'GswtKW7uc#r^tOV2 3>lí:>~.|ߡ[yn툢`+9c740j?mmGb^s^e9婑i训W:iUuK).=rbvdi[ZybY[8H`X;VbOrZLxAOŃ >Qbݠ7u7*[$'FHb66HTJE7?-ؘgRDeg΢9l+2\%uaC$|`t6>$ 09=U- lxΆy$~g ':_n^bwpH9C›WiSdXs_gFMTޫX# 9}K@1{UJHEԌTjoCXg5GJCct,g5|ku* zZqxc8['YS֑EG6 eOu_k兵 հ@櫸ҭH+jq4|Y;}֊Ɣ(fԸ &OAyjl$~F Ǖ ȡrF97M"܅:Y,)ZN|A'KaKvɲG-᭘kw3!ViC,"p!|Xq_fUI >ثO$k@9{FD{W]kd)1A{%!K2̻ۍj Fj%cseN*"JQxf7Rl ā.Iy4BB;ZL+&V1L/̯l^}/Dkv 6䐽6~i)MBNݼ)OZ)9/3g:&Hп ?G0~&ڈis'6@w'7\`c y2Dq>;}nVpꝓMZ/g; 4^Hg"eۓ{%I}Ͻccog'#7ʪŧκkS,i Kw g|1V0ogCR1R; \&OD{EuϘ,eAP7_$ox3U=Qup18fLh?M-_1[aOTtrOyl5F-2@.o߭5Mr6#౮\x }l+uZ`I^ ZjwJ Rbj羫j^" ;h4{0Nx7W!͐zC w?AôS{ɒ1by٢+2u˱EtԂ0IW>G}ܖ-}[@Es7FK[EPe*'ĚQ a *u4 Je)d&E/pyj5ŏˇ<:g}/'vauÈMnNC0r܀NO 8Lt#1&?ϏX+7ޥUy wa9ā9g*\Nۉj~]v-rKSW69liC/u_nM v{ CӔzfĂ^@IGiٚ=.Sx-4Jk9%`> 8~'!|J7pl8+u@̦RٳaY_y9z <.!(R `bTC8O}!V_byiiK磘kr$CzF|HLLbϤdO=vO΢|Br9\ݔxF uD3ԌV~stBFˇe6R#te )=:Eti\yj%NA3^0!+Zx;ZXJ:Jw`1ξ\+ VGl:QajI&qSз)ͅMfu]M5n@E=Yhf|omAkμu)ߒ7sYFPY:o:\Iul! ΪLүk4z$9L(m#!qH-)$GDLex z>It2@x(8J}c8<,^rr-GL9%a€5m(KY[tY %77f# \n=v`2G1LU #•a MY;oZ`);?@cRA@^.iLUA;OJJ=}\W1^%Ql'! w+2R[Jbzb84"48NfB'I ɼ+™O a|暑 $Rn4.V; {Ҽr"dĭo 3m❱@OLf|hE4 2jg`6kl`5µby=m [m%l\M5W\X_]u_gS9vrӏEbvtlz{Ͻ+lH#|^F+YmeOԢˆiR n0pb.z}O #iޭ.#}z#}#dDv 9,lu#F&QsLaڟ9^b@;'׍Bu3kW2F(:Oe^ vW9 m)0+%\*ؾH]Y]XHg[æZ$2?zC[*%J ;؈G͟}( c5]Gݔggע#&/A`^98) }7]+R,c- 'Ci;1PRe8B CmBuzm  B04l,2ig}NgY JT^]jq..* l<Lt˸s]ՇF/3jV)H` ^4 4 `CpG;BipxǓd -9Zltc6/u3JWm\8Q˩x|ra:tWn=T8ͫ`*]Ϛ&\\to "c=ɩv }"K5N=S''yT$+0_f6B9/tE~&: >I &z(wv iK!oO8ZSz4-gt M\IH&)w4dgHkq4;,IpsJ)bfsݮ/܋-|TIܗ"9E4ڥ?9C}_;AL񩝿/%E $z)VE^8@}c2Mc[[ie?n0 |vf71/4 rwKsϐ ؕkk Sq;^(v?,Kw ( MZ}50\=> dH 3a90[cjtGD4`!.dG X{_7{hR➅m}nr_-?羒tD28F 92|0=>qӺW)N.)%Jl+ ̇I13g2{0fB5lI.}$bk=lV̩4RnW]]|P 0DV8[ la(FjT@9`?z+?N܍d=DfW07q( D-C8#Ix mk}4l:k+VD2M\|>٬i!.>=jQųˇ&n1M:>mR x&u9BUw~An)bä5~_&ª2!rw\F嶯{MP)w&7ZOk\c!aucΕJ@I:vR*nn\DMx3J7]睇X]5(\~kZNeẔ}Vр}fU}# 9.(wYSyq0"v멢9ڴ7z5b,MiӳEp9u67&bFgz|@ (;g z+׈]Iui8w2$#/%Fg;o. ZzKIuk{ ek~~TIy\NTWm#D3{MiUXԘP| pt^\DCp8𧧌Fj6cX& n0ŎUϨ;`5 X9<n!Bߏ4z^rBfT`lɗ,{^]j/<"q<# >:=*@+>ұ-pҼ=sY}$_ӹv @z2i*wݐAG,S 9IغV6ۨREf\QJe<_2 Ȼ\@ <8{o@hL#TԉaH:w1iCHfl*Rׇs"zDž&JJ jމ WOd [ ^߼zACU3uF d'_5zڻEVHrFW{P;O[%1z}_#GbԿ۰)h!rQ<'. pޗGnT /Ao Id?nl7Y2&H*ks'Ӱ]jhyD`+vOqa!gɷJ !6Ǻ*x~]az[ۣ,ڦ{HZ*{+Dˬཐ53SN#w{}gNJPSNg#)a¥98ZXtmspvc(F;1D>:ZZJkjp\YPE";hl''n~(_HlG oK HMO3 |SLrX')6YoZ#涔zw!cK]*!_o'Ottb-{%0F- #cshz~U['RP?43$VٚgV8ѻ8{3&%' %H7%Wl8te_[O#q u]>D7l3HʪՏv)ehߢԳZ" ObL&(XY}ž3zJoKc+Sbyc?bRf *-_:pԶlY(#umBݸ^Ο2cԅd "btZ`3g7ږ@ IJ:sT ಭ?Np[ErppΨOҪɛfigNYdqr K]R˲/I;+c>'?J۔"o۲dp'6g@ j͘ _$>2@pxE߳vҔ%n."dnaT|)g? #85rU<WKɱ 9]ч9 .|;q1ƕxko;WN-~%ER "~j^ֆJ L|&`PUpMlԝ% #1=!P.Ȝ;~shu{4U#3:$_Cl˰m@\Diu9Rmȼ)dpu^1t` ɫs7[3c]8^V1FXQL??&NRm_;08ʫ>);=W>53$}S0?"P>>-W߾}+g=eyJ*U3w5ë1=JT})oDzLynQl=63_]%}M8e%kӨ9t\E9e%*?kߍ*%6'+% WBΜRjy )F[Lݯ^W@sh=@ςh !RBU{&iOktd&uJҧ|c~]/^toPqSu*_y5tgPϺ D1G}[ƽrH e,)79ΌwrHl /9GIh9p$8hV(x$G`#%{s9Y'_ƛ/d_^n$$yHӬjz^j2KߠI22P>SEnj@ɢ,kG'ϤXY-/f2jp1Z%/<]ck8U02x<۪Sr l;=oMUBC0vXuN60`TX@C"qbBVxB1bcMlQ귈 ,?: 7ZLmo | Nf?sXhj3g fә|FyɣlF>I߻ZfHȸjj4O|5eЎSH@; 6;\zU'ӣZI9^ zcMDB?Vh n#ho9tf@Y` cɹNRLN5'ϚB޷Rdu*0nȡ:?l0zmgʾ3F>7@\n}2R=s^ԇ{y5 G2yԱʇVb1:5gQDֈC% 0s7F?weꝔbuD`)`mQʍEaGsF; 9OEX:ZTe W]DoANn5)߾k]eyL=!lj C(8Aat't=_vv+j)-1U(ӷC;ϳ8u"ZB7M X~ٺߥU}S 'hҽa5E x O#rZ>q1(f<Aшx HsCaP 'Jkq'ͺw]wSl)Ԩ"˺AxN?H[C{5Wf:ݿ[I VKu,+J{x #tjEUnU##5qQpQۨQ,L g`c>4?b8S1fdik8(9TG Yo5c’,56$39ikeenpy5?~]FClcP@^E ywxS,©8A !sb02Һ&3F쏣z>~BU-Kx]0 ȂS<qt^T!lc)'QӺH XW q%@чp=ij5ِQ5? |Jy.n&1MKԠi%, ]ohI=b殎]ɵ~g,Y%Β ?m8v)@=mޮ3|7bf#͓x޾@$rQ\f g%ɴ75L_E1X;m7iSO;?ֶX5 ʍ#X^Lpk X|IHp\uA jcs ^5ׂ5"\4OI yt̓hvvT\壊W6¶u)"D$K:]`+ʃK`WH>&1&5}~wΨ,|g)V45f5}U-D/vvxEPd xO#RC'ŭ,&h P@cJ 5xewkS,sN׋7Z!M;9# lt7< :w<*:Q0TI{dj>*G5l«lΈE 140%@i*h=%Ų ~T=쩡 cIF })!ci4D T!g$eD߳)gH}p>t!oMA^xvneeئPtӢ*6#uh^.+"pG 6BʳfِsP_g?Dkj^,L;ؙqF*$JlVe~J:1NPƑ$E>gT'||y֓. |nq"sj3 3_ǟ]ƚϊZ/ f.4*#ܳ25pm\%Kw!VCib'^f|FQZpr6]bxۿm|oSLXc0Ј E$e}㸉/($).B|k.O[rYLf>ce~j8MhU1{j&$Q Dt{p㚆@BOx7ߺI%7w AaP w{exJERf* %ڃ㨣_#l`tuBdd,=yԏ7& @Cܺ*J_:8LW0 At )\I=F֩N?$㋧S&mI;Lgc`ضλpmRI_LmCRGTh"ψZVE. ư }./n~I=ŃraĩU *{/ڎu(qwBRIU4QbuVWӡeBHEY:Tbsxo VVm| "1b_-R-rP7K!\85}SY0qo ڟ??+>O~5|6ڧ!9׮j^^|a¥y/pW{Gr [;\zAS•w0|;28 y|Tgp܁-˫(B8>|d{ͮ rm{8%-%'C(Kث]LU2DSv5F\)6qijU 8Yrƍ||iШa Ɏcd{$Tsfkd' ,l )^09RBD Eה,OבF S> =./$*:H6ʴSm sR(7R7+פi9Y0yɀ̢⚹\xe.iY[-E58Ђ3mt ҡpd)% "Em"6 8[m-#RFOn<,MIn,4 ^ײPzf Vvz Ѐ_Ӵ B3ԯwH$Cp^7;1hS>ݪ:>y@T=ʏ2X~ >t\,*Oah5X6vcogv-_w<3E)bg`+A!. c|E@hNOo3/,L!}ViT}~͠;^(fxeYdɼ>D7xq9>Ԉ{Ny˗KV|gtEa'{}+.CvܐX6h^ gq}30^W> *fPZ-jYɪ2c$(1݃ګYS8w~ke`$Fa`%d^V/&?' a3jI2#%}>§ \fK27+~fm `)8P@bؽ}u@ރ8B$F5xض{c KA\.%)}BEuX:7P8&p+݊tn.BL3ο1Cb p?=s`e[]G0 ˊYp>&B"y޻a[?@ϻe"mw'k8*f9¥=xGY)zWrvϾ'Bw)cg[/o& quf8?+oǏbmPYc@㍭o)D`c{Άo25 9)SmŴ'Bt i[!l[ 98WAkKM;;-'xān۰jE1*4VT37|hoUђx&k=#wDh*OXD+=eM؛9|U}pc<7b (]*#qڸZ.8XVԢ4~62(SxS]B.,^͞j㢍 cu=Qc*D;yAIoz~WpE-htBN[Zgpu>;v3`=<ȹj|=])}}&*O+ dePv?iz;J6OƬ%EAEIVd&:2E۾g3ql~讙8xꪃOk2S*%ΓK}k5Ա$?Mrfnh]$2YMf#SĄI3:' 3YLk02ƑmζpB\Iz~y;=IQ#MEpxNvɩ}N?w3YFʷ8uao~ 8uԘ:g_G'AmIK_:G1ͻ.ouFVv1]L?H 3㡄fVO+Y)"i pgKtn\A.⹎j! V~PX~y, cJ%ٟ0ױ!S ƝxsD*OKSfM5yB[UlKUAK$N5jŤ[x8*Jj_qִ6ZAꠑ9>$App}MiRRͬU?CzΥgƕ<_A*?DQʢ sWY@hJ#&DG3,kA6{ꫥ9vpǞ ޻ V>ݷr ڌ%G }yd0q.x~8 'J]E \ q[˘ʩK c,]K+FpҒ*i*:( K΅Vʙ72u?eQjSw0-=fXbA/wԳj.w(ݥ.oB1Y5e>+"Y#/W,s*oikΔ? 1e0*4F_i*^У̥-C`xL5 =ID%"%G%L򀲉TaSYҰ}a#`cor<-6FfTNG. ^spC{RRfA2N9=z V:YZIm-YTMĵM\o\󍖾TtyB o~{x$Ll H%H=D iqR%+uhN9 c91%u{NbHC z{H@Ɵ7^yIa r@`~g:כkw7` a6a_M5 01?HaZ,BҲI{{r /g?o_qBד -Ҷ͇]n({+mUט<m $[Xq|p|z%>vϥwTRbzR_{}W ,[ҩve{(Z1iKX?#ЦFuq> 9ěˌ u>7ߐۓG>mNo]4D[@`YpvHeC2V~an%zFц,\Lt$i/QόL+2fwISw_b9~.&*z7#}Jnin/*]8:<3ƀyèbCs.ݷ s>uDI>$Q~x иwe tl(uJ}}<2N-_)IdsgFz9ΐގY gGJꩧ#M0<Cir6H!MޚI}zWjBCP+=pYk}%m, &P0E[8KS)ZOOAt0:ܿf)ꚢhg>-a/q:+!DGG*D\i݈K~,焇'x'#h{=4NVDׂs I2@dhEKagW165٥ @4g؀xu`wq͘nXTnS.~ƙg\2YPh^501Z_G7dT4A?rΔ I|{01mC  Y@4j^᰻ sQ yozOS&Q  +8~ӉMW&͎Tn+!3u%ȰM%[3Dp ^8LeKtaz;rEGV5t'z5Pvc"nV3w"E+'p_Qvs &VD`I8HI -q+ 3TVUl2#'"/4C;I@N01$EӃT" H@IHt67xm|{GsNɀ$fd Iӂo1=W7gs)h qj1"\Zp7⁶l]edzA 7a%i6oNF>*lox(F"T\zjHZj(0/ x(4M;#/ɲujٻvAc_O. ېkEAk ]9J0Ne$+##~RHK&JW>q>~ %Ouho<}]FRٿRGH/mGϷAdtX|*O0mNRt2d_x|)!OǬMӽ 8vȎtca}FK1A4=! Ę'Ӻ{srdh"qrT$FuƌK&ܒ~E #Fmah}#1g [j t-PXOj{o9zo=1D4-+'ҭa| t<|oۡov Sӛ6AwA|g I^qN"M}XYLtxgۭT&3+"'N/PN^rG)WkCEs$P{~~ &yl:fm+ovvP> BQZL 76,OxhB|v Vt0oVyJqG>hX'6IKyoֻ=ljz7IA * \Zi@ )&Ƌ {\htĂJ#i:uUW,M9-.!Ҁ@H=V+g:߮z IE<fh»51ҿ<́nJ(&Q+H)rX7Aٚ3=.Ԅ"hQJeWN8m,ўdap斳^Um4ҙӇ*`,1kqZ3F=&j jW\d~(`iR8D͊}q(B~HlDyZe#ˊbWD8D<U #O£YE|kJ&f8Xq=Fw=hwLOAsH[V5y"X]NKD)MZ!NBtͻ+lcoÖT<%%UD2F"9"CaCLih$z?S""*]A#壜'+Ff!P/Ӈ8Nyw6+:Hjѥv/ TR!0p_?+ ̃Vtc_m!__HY1d! zL 3PK!=\ Iߑ0bs]]g[.7ϲOCSG4T󍰹I,,Li^t5Ъ"d]&Jhs>2e9Fr ba&[)DWBؙ]z=48 Uۑ {:NiUá@͌3aH)Eu?]X`].ȇ/j6aL>3ut0Ҩk>_?q)0 Z[k lG~d 'Ob),r|{墴(.L|/{>W+] 2bWlDD_ SXn>Pc^A"ʎPD|ZKЊvRLJO} q'0{1(Y~$~ PnZyvW\䈷p?.BHS~$ڪ.9(7naTڞbbp6 * İ3lA=$$GvIݩ|Asv>1" JtIfW~;zD6ҷ'Gy٢]4$ܸ!f(?^v *$sN@ 9ʐr؝o]I~ˊDwi @K dteź/uڢ[o*oPfNioqaKwEW%$܁V¨]Xt]u^ZMkKBD@wG)RkUkҋ/à* G ux-)  !!MpT?qZ=0 Vp@&:Trk=3eB/ŠT4vɵKk#/\C=91!+.҃:w(|tg8%3[bo:Y$M8e>2yA<^$+vT)M}sv԰߁%sk¾ 7` ޽$39z-!55OnFUN'|^ȉhWdO#pZ}4ۀu w*_"ux>]h_59ijJV啌z:W$r@E!]2g#Dբ5[gpgwmơ'sTNagf>1cC|V\,~ $Ԛ><1 mJZLB1xs2e3I*?yC;^X72Ѣ1,v8RU6/NʪeŤ'Yy H.MaQſ2޴n fRm2f*^!|@#Q%=3z57DJsijS{C 陨vI=+P5}[~;ʇU{<Gac2dTw0UKv)Tm ,ʡϢܙNOkF17hZf6`=cw^&#+cCk){r[q=1%?Ju6D$L҄O$.26Gxxb2O!I]Gk`<ГPkٟ (ᨧ. Za>_HfiByɘ75 [u7T![7 2hc\[nxh`{]g{CІ>^wwdO-J $O/bv1-j=2E3*#k+l,?mk斿pK) >麳 (i/67eip4CZm&(_ \N2='WwL*[TQJ wB %S1Ksj޴o /[vWqƜāAZ=qN~wfX觞`-ABR{3b8R7HPԻ7vɩW.L΍h[fR WD BTdfڍ:VPEؒ(GxLЯ{\2QBy|b)k<2ퟻ؆r) # ћOTE N+h&;hM-&#a .+#LѧPxGLT(} C6G2dXwj sSVܳ xNnf}ѢLK8*]Ozɡycӫ؍HJQ:ٽ v vJGJ9!#A*؎JCt=.e4K؛9MU_G)5?l{w`'{katkG1}[(:]z a42.k_Ye3r[p! uYȉ.KY攰*_/~{R8ґ |h;|0[xBTV7cKe^[[?(H~YeOuS^6)E)/K!ںHs6-QF9KO - (oY(]FjeO 9v֟Gj)tE+EBzxkyAn idob3qBTf vczHo{^CzS-لIjw@p껖EOz3[Nq[/W͢"ͶTμ‹X SVXzCB]S LiR^H5jt U"ݫTWt4]/CdBe\ 3XR-MKYLA;iqK&0/$_r~jjj- Iʈn?a~4aO6߶9Ľߏ PβTjۅJx}T"b07dAӚ1_`J|_CnD@HC7raNK7mr#f.^8Po@4/U/ 3Sgd&Weߎji.gg|Qr'w'YzY35Q.|p(KXz1ZtPP [ iLm;|^'ͯ]KA -3F"!/9=J2g_ pIL#ssē|Dϗ5qLOCv ۀ߄r}컪 onʮvObַ׋yr8rᷡc vdYyS8YjB68ZFG7>zjx3j6l'].0T[ʩG?<$G̎ڰ^[\36wZlԫrbґr1 o񽇓Ts[3(Zޏ 3J2F~ OяĢZ CW% .Z#v\o2$停&^䶥%jQsz=4R֕:3Ee*}X戮GߕGJ 6q!|ow?փ,G.9MJ30C+І=MڲCdxtqu[="}F0[nW Ov/c\Ҽ<也a F [$tdɻ+Ox DPQv?G3+$(~}樓]ք|~X2JTzmDX@ G9=ҿ,zʜ/ <*"7@D`u4S8 iɳX͛|jOoԬzQ(H|tK\2/f3Qc݇znO|əyrCdtG~8jLJ.ȉ܉g&@bk-\fPg8j&ޥÉKtDP|MLڋkG> 0"y~u0!mezG8Hγ^mrCb>*!6Iiihh-& = g`0F| VǬ]hXyڡOq% FUv7{揷[X"yu(s /MA`ˤZ3jm{%@v_P~E&!udJlCI%G;tJ%;YFEgY&8y}ӭ#۬u=:6m=up{pz.Y5geiե)wN +BZڞ1}l 1\d>V8Ri)-n_QË1eL#g8F B0hSIr?6 \N8  9"V/햾"0Dv=Or`g&q<7Ay C=fWݼY3(b)[;=gߍRjrcVKyl>i4A{Y0_Χn9)-mm?K2*Y{GZ~^0 Qo,>_G9.ŋV!waTmO{^t4괊34/j*H_=;ߖvgh"jd<ρ܀1mIVkU/͍vsj(p¢pR1^;GQ/z?|3]]Q(81a![5CYe%̾fl"\ 0slDFxR2Tgk﬛G j=2HC)slߞ5an_JiTmTMb`ۗC 2-8ć8sy#9l,^YN;bSs5dOF7Ӕ9O6P:IKv)z ~8kx>%`$wxѠc[%nBr % 2QATrM] eu u,[@z@|Pp^2QW@~-~c[R!ª I%cgUZI %JQ< ]c(m?볙` G ?5y!⣫Mdg`ڔ.U0T9fqazG-ub;ҁhtvX'IhÙtګ,`f=eF~3ޥk BAEԎWq Akw0|BKZ }G?̇COF{yB1¹ {'Ο16'^[gV(,b mG6`J$@U%c$p ?o(0_RT!óGFhEح{g9oyꕱg_OJxץ`YPE_>z )2 4f40M*s4)LxG;Ahܷn%`nU2q|J!E7?aBAO&u \dy\r1>e`l=d Dsk3}葖ΠFz@`h!Gx/mDRZc`NBC'J 6k ?Xb Q3yz/E7FzO̷p,Eƅ=~ezcYke6wv f6b ?7yD;}j]f5NwKD?B Z-sl,xbCA;E2ͯ{UBTxIȜ Z:VDw.fpX/փ|iz_n e28jiZ tXNOx~uGb$򅴫G9@ְ52/ۗ6Yʓ`˩8xCj|U rIMTy-tqcWkԞ7^k,TztƲ<'?G{l hv?V҆ nx v@*Rچ5ø{YA@[$xP&l nY;ʖٗA~Bq#An|z3;brؤig9Alxl[fÞʆ 6# !$;ՈW9ZVhӥźbPH5מuv*yOrv)Nۃ <;8*ѕӂٗ5SZ~W#;L3׺\ }[kM̉h:ULcmB {v22se&I\q=Gw`;7}ͼ=Υ `[d{s#zV=f@jao@|/ X ~Sh]B1J5xJs{חV rHǁh)}J9l(&-crY/u$PJKJXdz$`5d?Ł2D W@@S[%JZߞg1{*4PUOU PX= 5-# b i9%9/28f7oy[ky;].yRk}'lptjx]6=oydt\|QiHaq|4(oʤE/ 832`a\F-^ӿ'al]i0W뗺BlFi|Af :k3R}\kS8CH]/3﮾UiRiuC)񸶭$ON}żMI*T́яHf&r)BжduٖsJ`\] ԰u•jI~#-gĀIQ.k({QU %a70||P EyK<)RRi=(fB}ڛ~=NV TitXڤ!c 7ЬN *a|}s\#N+eUQTH [@Δlo:E-W` r3},dџ'n_~b":{0$6e/&ter$, ө#4@JP(ڊO,]DTN |!a|vG ~OW k}w VJSㅷq8q%].YBK_.N(֒*ܹ\oS\l,x~Ap05%u,w,zSKfrsWOOaK1y׎z?v‘*P $[nGN"$V}z9SA#H*XyI 0aF=@n筕k-1B=_b88櫊9 QTqIjYБ&/Nu % L`@s~b> t2\'e Gn&3IJ~j*ZYv/JC#'O~90C&x=BHXq `6ȐΝ~ݠSkIi!:*Qu mщ4¨bn%(KVFznMaїZGNB9c;j[os"5u0jbh[D12Mg/y; BMb /zD49j;xm;\z]a`U0`N,^B\1vO|15q&S_G {h-=&"xBq, .:Kr,@tUJ) w>ݶ،Ҙg}yr$$ɓS!ʖ3;ұ]AvS|[ےƝk :\EQ8^)8M DXprS-lByN+5+{rX4s:Zgr%*5SO_xE(L0PCn=18Ɛ]޶J8 >F.C'%}_vI#I6FgMM6GāX.?=a%'ڟITv\b^s^}gL/Mi\ J׻`ZC CLgunZ*g㟎6$≗ȾE6h7)^+MFkM_Cu:Vr/P!\K} O:s%u T.|?> Í$v&w qtSB5ecRiy}(n䓲7ةG?cT8M41y^fLh JH! by{{=œkz`srY--tTT K&6uܥ$;^u2;b0 i5F!D>Aw\><-x9"+Mz}Aԡwq|JJ̤߿)Y1M+{$jy.қn$TmTCa>gLuA1HZ!]^ZZ]K8a <x;;p.)ZlR~ulI!Zt="zAߒS;~_E r=TTEďC ,*I&eSix`{'ɳ:4Dj hIGZK1@ung O삱0R7R%;3ڧ&I,6xǵ,VLeH%M^vdլͯS:n.ZEy 3^䫻[ʺt2Z?$̀_iB!^-Ȓv| $]mGA<vv3hۜMU3*]"UOEˇxpZ|˞崌5G*GI1_ Z[g>dU=A;aҧyʋw;*Gx="uP\V"0FDNܤ AVKķE!ar{}\FR^W/j~qPCaWNݕ9k=?Nn'Ls_4fh3xg4Q$/CxO˸+Npi<h31ꡤQPL%C<=k*|Cp"x'q@X] [Ufz Ӣۘ?Xf4Ys+< X=g63VVrW*^.f$WJaŵ[&l`e)EH`S*7 @p_UWKX[]͝ \%ye!C2>@ke)Ϗ#(ʟgŰ2.T=vw3DDW>2rVη|nDŸ]U:x_"0llنh'qb&̪@i0g܇_UͲ0 ۸M~㡿5LQNĩþ5kc)FcGOMXa!YWPE7",G*a+#&5P] @A ׭^63RtkHW_ES}q'5Ӹ4ge<@&S { esg'Z-i?Ahǘ"HTp}u3b'^m0y_'Lr10[;9! N8VitE۳I@%zbPOxWJ3]p'3P(iHQ]+I23vJbkBVsbǎv~oBRsqiX½T(Q S.詚e\+}Ba/ۗLRth"~FZo09 WEMo5v"|#*\>gn'\Tn\rٌJ[WP9YϙM)+(~^AZB 8j@iҞ{ܚ|s(xݥHQS ^~5O"-;c_A g~n?c` *ꢌW6OSZ@U@c@}.2_f5v8x-0X-|1ogsGEe2+%h/t2\S|fgZ ?/Ŵ%U%_oCو$jɕ+yr觏D[Y j8Z;8s^_N$*tFR0=Z]/zɷ30~tԀ3u ǔkU\Λ4",luHdMƼ %",G£xr*B9X\N}{l5yز8OؿȰc@ܫ΋navt1iSdL6+YzTxXӨ/̓Z^,i)O[IEp3c r_A\\U2 WL,+~KU?bT贮\0fpLeU"u0i|X-0LZof\畫0\Zc5 &#&wp{g,9,gHeN3 XgͬfE%LGrf1!ll+캯 (n#s+Yf(::S}J@O?&Oiev/KD0YH kۿAz,~=kr+Z)8ζIMjPHEI&)rHL6Okf'hpx0 h咟,Hc 6>rbs 0Է^x Ж6Rn{5f֝BSb2AG\,ғoR`Ms&~@*[Ӛ}>+ g; ={Oan5v՜mWOC[EskwpLث#3CQd SCxvfblߣn$mnDe` wr|el6}>;nkb8 .fKucN8qt4'(Wl+'@$)>_k=A|cV2"ci\8ٶ~_.L.$Q2my~̸޼ON u`Wn(L/2%xqΖݒߚvF ӽV.7<`*Cm:W:q6g9,~N%61ᇋd@iSFvotzq _>~aAXwr FحA':F^ؖh&#RwF$c9ctV= u)Ff@[#c8: M?LqsOָ"1Ri)S&B9B&q8=cQv4lmoV z[{:{>'֪Wz'6 D;l`SQQazqg5nO} -Pʢ}Qch&fs3MhV]Oh ~0E-_59M`N$v>XYr{3h9׎Zn>wm}> Qٴu;iÔp3{ pߣ;H΄yOi_ JRqQciC/z.Jo "pL*?+aa߼Ԛprõ?vhA^ʦ3|7)*<ܙ<~ &؇/`6 <{ I? XˁPPn@*tx(T*=Dj+}( e!'nzTZL Uw?Q .  s'_XԈ!W'm)S*],B;s,Þи#)dDMN!O| ]:I%K-56Ц\J 3ϓ~ eߤ([4悄J4ϒqj&D,`r. {UKng=΢lNқYX"߁na'hCqXgETE;'|q9w1z7#ۥCj7!soHy&#̹K3VA@UH$Np¨CC‰^=5Y@wVd3ߤ O@\c w{Z 1a#zE*ta;*rBG)'q󸣥~01lȀ kt͊8jT]pP O>ixR4CXa 04qG+zF?0Ʀ9g;W :-2tzK6~)઼ AO1{ l,_D(sIzRՑB7 #_zQ٧+8c0!& ~ߕb#fWǾ3OFY߯㱂CYb» D SU+kQnU1>8,km}54/ \Y4IyCTdaѣ pŤ6 ZA"/B`nuq,ؠfkt=0 $aZx蝲1 "gOĔ_8juߓ^-uKс4P햢fcLg~j;)p#ovM@z̎Q[j6Ni&Gq-c3f)3\ϋsUUY@^DF!lph1>!y };?5N=3~C TWWMyp[#}(g>pWish73sJga ĆVYWT B}J;tǼ_!QuJt[֢ `9)n'qcskSH8,uytm:X:h,yo0(9g;F 'ߤQps:;Y| =ӻtӜk 4i3nJ-=LO-Zݧ3->Eg0km0v2e݋2 ^4ؼmjmE`_!5p9LPisg|,"3bbdL 0מ @.Kn9 p10{6`D*<4Zg@O@iuлٿp|Lr&Bh;nca sAڐ µ~o4a6DGwE<0|PGϹ&+9iK_4wρmC. a%vvN0D)esUI8&8@ qH)(<XK'nD&` 7dBHVeatl  գMXy)7p6,#Q? aͫ]4d>I`ZVS>غd@Z%Q;hf)hر)n:Ӻ kp>ATB/LU@?FY!ag;{EjAfnbaIU*{zj&l&~CTPFbJrMBt`kq vkW9:>_KD ?9%OMƈ_Fi#cl 0Q݄0GlߢA ]R<1;ԿdvG{p7>K`!\?G%-eÔ?ڥ~?k+@˾ $sC N.Q55gW2k p&6<V%2Wiҋ5'[q#NŃ|ZOŘQ<\+~CӷAYΐ󇋁Z{_iB6g%K wTMUfs$-(J$T=,tlNW,JKGkӒ[GWCgaHo Kc] "ICacERyU!=sɗ ҼkܫޢpJ" #OS@@43Qh"TfŗQt-K;fauQ(O7E-qVph⏶I#]ba"uN,{,:lry4؉gV.Y~6kF>Pb2V-q cA[dykʄQ\'?x5*|Gڷx̼< ,:MIFԨ%ֹ;/]DHvVz0l{ e6á\H^v[BӊZoJ3Bx{閔X¤<ܻ^E nʉeލm3"r+tciq0)츋 W3d\ bP|&(}vj]$ʅ;oQ\$=bS{i`jsy`|>7ˑGnIł&Vf\ew%/; ךG~h%\~GגH4iT'0vd;iJP!ۢY\ Ri.{-Y'ȟ9FbuuI#-) _we)W:Yy#ݤf-4DG#Gؑxtn(g8'CgP xt/ejL+Vq3F_!L.${y*lF֥,aSD +v (Ů6Qz"s!Di9"=LI8ૅd%c?'EAn,mX -di78}/|gs #9ZR&O``4nl]xk4fc=fQ1Nt:5GZv ०Fߡh⼄ǏYطlIna-(\,xz_)9-ߥ!]iŝ[ԬÒ@nW_*,WC5I1.Χ< JT<݄/*BgVcJt4;"NI}"N^zhC.=kt(ڪ ]lȼnMc$KkźUԉP8EjjMk+V^QR&u(ڬ1"l*CF+#Σ4*͏.nMW*q{ZNۚ_ϾƷ:FṡՐrhq\my˸ !VhoY)$~H -X¥Pb< vo#녟Z r%Ii/9)G΃G}.ךhj;G?Ͷ&<lU3 ZI&`8zn LOܼ6و+6$ u,(';3&z,ɷBrF uFɺ 7jGo8(X?T jڡqI8'O {  9` =xZ=`-[m'Ap3Kad+ZL,4YP4KWS!J 9ƹ8j dI< 5S>G<0 ,mWDnZdħ;xS60?I맃Ъ>ȉ^<rH[`h13p!J)~2j?SQe}갔ζ]Ԩen!y/4l8C "ޫD:.‰=[0C! 5@Ԍ6 ܡ6ӱGu65߅/F}Nx.+ #zX1fb7ܴ/?=< k)eR czC{jrᕷ"]xG0IV3aAJž)[>sV@V]^n[fܑ;o qlL&KFcY(J ؼ.wDitv>zHPbfyz]]X+- 9?c_pH/vY8|G,N9Nهʚ3&jڜ8,HxF 9[$$ 3}=.jQv#r#K'u.& _EzLuJ ǦC|I)3ov UV )r#Qy`ގ;l*IcmǓ<+!vqQ}7i'aT&jk7cCqAr5ڽ*-բzwI?}#tMەTID54xp7D-$qaυAThz/B>HӝՍn3APڲݨ,‰Xp*k:+JxKBV5P;\d eHVE$kt=l_|7) f Ȃ<ƍj /1.0iGqقTj!dN}=~0,]F(g[dt$D`3\K3[.a U6_}眴mwY}V0FJ.)Ս;`#0*S1 C<+WC]WҫLA`j}}~(.m/vz 1e$8KL!DTf|@te27i6UI3r̝q 'k?SȑC;Y?/i͑F=[Ώ)c$?kom>X^DtQekGfoJTbI0p+gMXl PDaD& y$\,J0o7{Yd0XL"}lsݛˍdˏ[O><d  6&Zjc۪ͦ拉Gf,9| bkJik=ppӯ>kG1gS8VM(5%g&䁢WN6q VtH^F%]]ie:^j$Z%Ǎa) :>ҝ'{yYow,(i1[]⫦>WW/U 5`*?'[p5W35&e=vᅳ ]hhC48$6ya&HԌ 5ʈOHM:ñ=Onb^ȯ;&-2Ow=v+6hIr8J.oȅ$h͞CD}\@ B9jE|Ǩ[=)%M6$NM%IR['\ 'X%ŚU+qE%JFBju1L*mJ$rOP?8vgƞ 豯C|)jH\?2[E7r0?$7դ?[ χWY9m҅*Ǫ`FKN~,| i@"C ѓ;zjB"UG#v.l cfE_VdkURa|D`7g烄A&cK,:Wb8f$0@HWٟ^.ׯc]5<29ly:K"j|l7 B_wN[h6YF)9TK}C -HhnQ(ww0 9X~W ;:a݀wKvC-YכzPOV۔լl=$v6eQx0:4ȘB4jN׹Is/ڽU:U{`\UAN6%K> RWDWQ_=HwX} ^@_*Y' hYZd'3AfL'RSQPDHĊT!? {[C8[ E>KY: cԋzQ>AEȳ>ֽFESpɕEB8bjlQPwIܮwDuEz4C%g!e6,׉*ݕ:L^ϖd,ZH+8|`8>]MΑhz>An\rDvJ"4Õ푮 d?AggO!,ȫ(EjwōxBVdRsvV.y (xo㙾4!L WoV5R^OJ{0c}̔"Oaks~Y# =ܵc"HQ~kCuhv⍝wpvFZG4we͸fK7%`$"/?vK$G7TEyBCMr,DC Vj1,W<TX Ahg94x; M)8Vo]d)+@&y.q(&]Vtݾ/t-ό8))qo@*`PSH\{R`4P/͙+4X(c}MrUu,OzU QW8'#)(,&ʌԇhQtK<&My~}^ڟ0uJZw5dR2 <*%핲k9mOwGLM- F]ޕ ٓU1mYPx+]wY8e T1%OI@ =T|VꡰKщ)=!! ?\+o|8EPKВO9b73uL0OA,!.LAxi;l#G)~QPn)۸!0Jt7|ѹ^灎np E+/uZ4d:$Sq&v0 Y9P#pX,n|k7{Wᥲ0(٩# ?{FhACǙ>1=!5-/R_VZDBӁ7V{B;YjG}pOYm|x~`4` ߈e>oq,_-ZrZR@l%eU5ø4[Bv0ܦ~2LI qHT_张9:ױq[Sd_Jt\NQdy__W^]?YjA:u{3Cte|Aij%<'N˗aǭc {1!߆zq __0Ukeqp8Ҭt Rϗ4{c :Wr7~tȃoY\W@@U](8߂Jޖ|71`,,MC8MbV7$*9+ab gPHL 24/ I ʡīTTfvuP dJ17m@2BF@=bYWt>(O~Ϻ}k?Pw.$k.$saPaY&wM9D46ʶv׸lznCY}79(7FUuU 2C@Σn8".!6h_vJp.sΖBVnt}ǩY(M./ p/NW6sL Nr[`E3|O;ILc(ZXJYUAͦTIhzA^SۖxviJ_aE-'Jh~'}tüǘan8VXpJe|q@°2coJhbK٫͋r`O&de~;Qz?%.<*ðm[_ȿ#809F8c7J4]ӱ$$U)\F봙&ZwӌhkT{r^$``PhXgT@D |L +):v.(rkǣFۻCӵ v-ZDpZ6d|Sd)ˍ8UNWe@m f-!goXUT@p9c7 ο{RzvZD(*BR<}5Y$cHKFx<͘&SGFv ; D-*/OZY Nުp O$]qaXE /_#D9D́h1gZNnkXX% ۽GFW $ba8ooRB8;g]jN!:q:>P3-G_%CK_MÀ?#xY&;(zY,W6p.З5m8߮{POuh d5!1 œsΟ`["zN(`Ӑrgm;$eq%$]]LF2@:8@X}̺ +W0 TҩGD|8gڰUb?oL1)0'c,bƣ7ٝ:GK?G+{)$Y,Mn)8{qI4#`!T b܃ɿ1_Uv-Bwٛ܃yU)mji5lȮq4Ct % UPm>H- ba%O{܁O_xF@ii ~Y-r7=E@J mSQ1F\Yy@2`$~D׈.*L8$5yVA[_xrJु_$7~ ?E 8[G`;}F0 BSHatR)_}U Dѭq"/ f+!p v`nRp~F;߸6W0X|8UI3 sP5z 6DbEȤZ58R <ȮڅH0d}0%=pvo>աb+TT2u5 ߌ8rTx|U avɍ"I$q,e!=gS=[e)!f:'L8Tl9mnAlC٫;1 O) B埉EFaN&28xr*d6ׯ >0y}}d" Y'5"S4T@:#6{S|U>wQNI>*P2sB"0v7B+. Y0yH6Wq+/T+&cY=Sg;_=q49 |rBτYl-g48j3$ǝ;2Z3 loR+ u\e&[ /LjhTlt|!LƋvxoa4^_ ; ‚F6Q电b# `%<"&6My(@d.tb$\K%c!4UG)oM(<pק Fz8%~;ͩ"Y(H2CPF.k=}Sćf_tt)i2:v_M:&Z{. \[w_ ⿦Frh0}VwˁOG3ӘԦo{)h:PY Q>Lw5_za2@G.Z%;#9`0S|O8uaC"~[,8 3AktwD[]P T.rt(e,I]k=bDo krJ4 6y]#, *>ewNޡJD=bYrRcZ\](ri t=/-UE ٓM ;lh&KL`$~ íRdh}%7Bu)פ^ඞ~s%h1Q"gԫAbMM"^cI^Њ YulOsvWsl׌PCnyA<ߟD?s5z4nTLʃ|4i1 ܄n hڰ$+6ON;bEfҀ7`.o >*AϞZjܶhJt>+9>M9;CMuAM4;"Uy!<<ݼErR~ ~_nwMrjBG:AZ*F>q$=3]eO^m뻡aE$ )?@cdNdHZ01c+LDl @2B@VL* jA}C մrY R`pyR` 6,ĕf 9rW@ `, 3B3lCH:P!a?d/ӯlx,-}t xMH,L8%( MB(͘cnI#5 @B̞h-^Gm3q::2VW7Uh =-i.~j6ǼGTY/Fȝ7>⢭C3ѷEA+ #sV_)V(Ț&'v&k[@@5>I;;~+q"H/l٣c(PZMt̛Qe(@[;}@qi50*GHI(U L=Ɂ.SJNQZMBQq/q<;jU6 ᄋ 7oh,E~GEͰIl-%lt[?.v2#' Q`hu:gi!F` ?q@IZǡ?QԿ+A'_UmU FDif V.켦jV/i[ W:IQd>Uti΃ۗuѧ&Jd_holG)ve/Ӧ 2}՚Avc%X!T$y#2;ʸ иWms .읜bK`{Jj$Y҅9*5 {I#=F [$;5=-fǺ.2%/x+ j@6ωm Ν@4nڤ^䗽I8w 5j(&@5G% "/aѱ~/8!RB&}AHC`H 3'O*4dM]7 ^!&uIǡn;Wj.(8HcE7"Ie5k I`V Tp {u| uW $]{"2pj Ͱx-izLK IhC! Si2h)0!5?n{jhZMg|T*b#=oXaBH C^Kd1Cw%yXqW?f?2GȭO,p[ǹztgw g޹:* 'F2Ҙ9#JYG/-7HGkh[d<+ByN-aIN0jq#TPKU߿f8JA f  @[>^b]&HrC_ڣ} k<lw-PK,n%QGV^@ݻڒw@yU m݁ԋeWbn5P<ALlӒke!/i["<"(cl-.ڂBHYBV(8{Scۮ=$'1H՗|wFx:S<5Jk ꛎiÈf63t+ Y}Y9 Lf.{ g{o}bֈ<XH,@$3x?B[QvJ͌걈n|z$f C0&?jm\XX2i06"2,B",SON8C1᳣ri.W l7Dj5/?>" re~&(1Sė}S<VG7_j`Z({2AE4y8 װADzo=`'xV<%,,a; ?2.l j,~Mj>?LjŽe?S@t Yo )ϾDq$P=za*#L' uiH5퉄Nlizp{ j˭AI-P vP>B*u3NSM(-0).ϔE 12j[+PV (À߸cť45QڦXL% ]6YiV;BdA%Xe,m*[LvuT>c.:bnY^y//4Gc@%f6) C")-&zDJoҩ \ ɀf ~N +F|/rPx>TDŢw禼;QZ<|_=CH斘ˠ=vɟp`K$I䮐Q@Ÿφ[,&FΈ{hY{oQDfűF7t~ ]vv68⹪])K4@&G~b–5r[&zbnwP@ hFhJ ġLOV:%zR2K; 6N??4|7l܉;S`P/ B]$3)=%FV60ͬ&$24 ȍ"Y[q*樦˘Ո*Kg~vYQ&۸5x5$I{{9`:fio kM6VzζBT x0.(rγW{NpCNM=-4h<]\&:IVB0pm?̝[O7Ww=msg>MbS~5m]?MA`@T=z"~:x~ *Qt溯($a9ƧO zn׭~x]3r,tӘ%n?//Pm+ Q?YFEj9 Kk:Ĉ3ZHMRŃi)w!k3EiY?~-x,-E)V@K=3i  ALa.on 43ݻx!f\`a)I&U,Sq_qk_7/(\KMQ l{[}=le[0q{@ɥVYzUЮ12P0 = T\iiHǓ_JJ:z}{=KS; yf+UkƗ7BJD PP,9(_WږO dVV*.հKW7]J<>VJ4:R`bO2)?o:1i:,%k[Eo8m 6o"*o,(yHuަ(oAOa)F( ,$b4yw'tA5KL6%]@`LธF4hX\nzAPڕy~ q1o%II !aKaըl H'@k/O!' TK.Z͔Bٜ/XY nr"xI_ֺ{E,%qű+"SQ@75澑CQor͏=IWFH/*ˡN)$ ]ư]ӻV=0xe v >$1H}%%ޢ Z2qr"|zZ=c 4j(2|zwۖk#dͅPu y6f,*;|qk얡e.ΑA#,DC `H'|f4}qN$P1̠vo<}K!w?ܼ́ [yyuǙLV^dQ:UAѨ\LͶ* /l.)&Y,O5ݰfW}=p ?s5:l;Z)T>,hܷ- @V;%@HiwSe+^ 򉙱ꨟN3+P(l%|/N/ow90|?j[#<݇B=X;dW1+T4ǑЪ 2GƥtS? ;( W{XAߐ M)c8*͋!:.ʃ?9Nzn'f \/C۽HUĹ\>(Ϡ4v^Ptn2YC6LWM81#X"D@ֵ5_O^]l"Y:_=TS-Ei4OEa?ztS?%vbym CT1' 7jٕ1aj(p*,iTEOH01D\nx晗C{![4^]X-180漚v4QEoݵ 4l=EKaGčs%4nƕxҗ^/5zY+ёJ|H;FB5':LN _R/ a?od,>ؼ- $NX_Y8>LB: oB1"Ns5)-UN#ryPÑߐT_blK&".s| :^/.rT74y)07 R]{ĤB͐&gva Zӏ"LpL=i'8M+_+2wrv-i" yXWS3P)P9fVσ;0uLiѯZ?cB`V\&9^;_5+GI󀉹-N.'զv/#8yte)/HP84R&ڲW2O\qx8qMVM.JDZ:| .}XȘ mh0$>0]6i*mU&-.➷9]\'D|攒i x _)m(Q X*C~:7/VXwu/_{>z`=BYhN]_i1"GQYO SYcBvG/&@SS~WSS+֤h?QBV2{ύ,i,}NwO/dħՀvg'-4B0xCܰQ[EPYH6ܽYȤ[Y^(@w~ywN(һAiOQ'"|Ύ_3( i=acNHѻn f 1MdɆ>R=7;?i :Fi\cZ7D追e'}y K8<{,An{iLǾg5tn˔ lp5zX^[c WwE =r`R]¹*jϤn2RgNw_bepT>yWkaOfPlncNiN&6$҇ոx؏{ĴS<ԴI OfwIrHRD`jHsYW8ʝdǤVf=jL; p8M顮tjO<)hgW#C6[n8hnb0ܑy ѕWd_o'3?W8EA #]MtFH0Kh U޵_c6ɽn ÅǠAv͝I`Mڇ?ᒆ dOm'rf4~^:nhKM`,79{=(IO1mT^R˸BeP<QNU;PvE<:IffJ1`lp|فM!5%URA+|8hYo-.8l7z[}^ :7nRÊGM,]{wC +n+=oˇѡl s9] Y~]ஹ;00R8'_5[F{|01{} 2z*޼&OgױYc*ѾOzLc2gn:Duueb+=s¥ZCIʾKTw`VvRg㰫4гXOOW)Bj'a>7{2@} mâM |ʨ/ hx[|T2 <$#"AݜHy0nYCIV0|RZOqg!͊XbK'l{YFjS8J=+h"395 bbߏq =rB)+]-IkTNڔ5Ad|#A27{L8WlM) 4jMDvYi]RpN[Nkhd4Fb(a1\|D]9bO ςSl Yls%?tGFv=?p+M,Ջ5x N6J}:XZv+2E6y,5yQ$ }^26%A㎘YH yM<#*OTd4w4`,oKHn cV+'b["s҉7 ڪo<̮4d^sz 0t͘&g3所'xĩOqy:+8f%(_uvm..84WkR*K]m .i<8պ?cGd@EB4vb#*LQv_ >ͭn[? `i>n}JIP-2sic2Xlx6ME iIl7 ƜUpl!TK3Ha/ek(EObhG4W:YSz?(VeˆW:nҸwT;Kt2"/@_-sHXqفlU>=%$|sDe(YӒLZ8 h)5s^*k4?Ik݀ 鷒 9 XdXH u*wq-{X\n$29p☕Lv.nE_T /,?$zR{pvp^l1MLfDL$+Xߔ ݷbo jƜ D8 cn- Xvv323ujx2K ~a|Ϟ 'VV?H5] k#Ga;B 7"E?>v[ڪ&b>nSob=zX -`}gbך7qPAa֒F/N˺SDzAO :1Dx#$W@Q}k} o8l+NԐjZnwdmzUh89@)rx9t_DsiC-g{S*X <űf~<7u4?vZ':s%t;|Nʲ:eW稄kk|q;|K/EkG#UB"a* >EYv`g [jD3'hF饳ꝺa[ښң؉7s鬅,i_F]]T24I# W>>~5t_bC{ mE"CI@vW][H2=:+YbUf_nЄ48P4ĨO&WA3=LafZ|p^\XBQ`FTkۜ"(4N3Ox^KPmf] pдqG8-wyPO{63 ȫ|YDsK4 :8ߦE5L*fj" n\p-߮{K4^e=#KVQDMoyD\Tgz0دEYÄ3 Ə(7K[fE7>+5rtC8TnR@\/͟'xR<@R8ю-7=%tVj(gn:  i[ٌlBH%qc|11U4>vU6NDCbtѥ;*0U{n05VWG﵇Īae)]*= 8n;G~("?^f-k& b7dpeViGA_,㷥 $QrWCi˒g[2*lu"r+)XqϸܺSۓPt؝5ǪGzHXB ݌@^>rEk֟y";lDۤ`=&53tk| m ʁ~<(]%d9N-xGM۬ M&\"etL>GU0.^MPۇ!*}ܤ!i>|\6 ^oImƯ _83V 2RcMǕե[7kę-{ʱ&8RהH8 :m$XH^P`+=ߩ_k (w?kޠ JB `+B:xhA12+mT$R~bcI~ {\K[)$ eh6`dr1ٝ+d# aJk`X{}X40Ɍpb0#˷ȌJza(X8\WX"h4aVMUa|:\>@R~W]n9)vFU(eD=/4J1n':1\- .]F4 X"5W9ԃ,\~*Bޢ"kCB${1؆IJkS B5X9zL{C44X㦟4fD#m?V)1or!r;ݮq,E6)t }7g1 5nZJF K̐ gAG &R5S=gۣחi x?h:|BݝjĜ"]\&_z+ AԑeVkN ~]K8S:N m_A-S2ܨN N3L1xsVq(-Y$Ư$JF3mZ"7,r=Sa  п2-0z['N)ט(MQ/ՊeBC`Nv:~^oh{/#"ly/IE(S";#oshrz~8HK Xjt[rz^G2V^b"vya8\?YICzh,JiMclB! O֔/Ŕt!U6m9f[J`|5WCY|XXZtM*φj<~/z5Df iTTMuzP0<* ԋ-MД8 0gS͠1XiIo[#h:bAo0),X55GSlntk]x\/Z Њ@|+mfw\\2[{cq6o+ʞ\'8,煟m@e\`l` +_NV$ K#N_K D3+ Hu#)p /#3O& YC*NWh-hyXJ58]"]N|#H}W*Fz>*YPd*H\&xn:zcX3(لy|6ۊf,cL =7vWp:#0F WJu;7A5_ ހ?>Y|l%ܐ ITU ]0+IdBEVE0=YG2N_3JlJ:;Pis*(@7&p#UkY[R+(v ;-Pgwp,RߣnZ^Iw"oĎҙ>W@VzgtL6Z@ z)M]9z(pOpiHD X);^R '|vg`k}nc0EW~ oGWZn퇃?&|0-~nd]נ\ʋjzscSP{4#Hu!E 5t^,p7el-Tx&)h-kUJ_&9-"d)DpO_g2%=2tu3嵽!+g3d V ydpx^s[+o\h:h1qtپ3/dByeu7:{ÝtDZ{-5Z/KHbFDpR׸+a;@!,%6Nh~dz[#Bg|HM iX8/_-p|lj?8ͻVr%e["|)J[.I l#PSFJe"(IQ^yX֑?$O"qx$uSgTc|<,8V(mh-Pt&r`+%-4|Q>*,.4KA}wA3iūe9WL[Y+NJ?;uI:j\'9Y>Se6Z=2tB)jՠ,Q>rE)&]V>)1o'KwXѩs.ߤݖL@!וQ|gלAdPu'iT;P m;/?v0 \nL+[aX *=dE@.#*\ ?ǼIn63H:y,k8ߖ1*sAκ*el0EbpD?n:dōOêxkGIo\Y1TS ml#$7Ss<_&Bqf=+uX'+߽,-wqN y[BZ3SzqJM * 3S1Z S&>1CP#"h?C %#˯\C*0Zo[IqP* &a][fJ0 :D .tN^ǹB1 :N0^bmĞۮ)燏^4B˃QG2=$2LkHhA Z *衋>qz)` >XÍ[mS-qcsXi垘VLކcltD؄a0*i"}|vT-dg&!Y@`z" {UسYk8J_0.\ 9ULt<=x3*kD nOn@H5ٮÜzVWL|ȱ |/e^A4/Ō} gikK)t%`8ĭRKd>7N~dVoܤ*:5b-ʦUz+T?$̌e8K}AMk |6{&.= B䋱`/ Xܹ^V f ztբjӄ/rBvM ؆˜p.%`N"o<ޝM"taLtmQ"x}b`` YBrڱ 1&BY2_cf*7lч]dH3XAˆ>ٖd2s;vs\|BoGRC`ψ0\yؐI~2%tW?Gr(oJ|:?gJEKQשπy`olNN;VOb-:4 ӵ"I̠hLH?mm*3CkKu=k[>u87B|2b'?U A0~t*GX 4Gz 2J =N W, NؕdIroLN' c]\i=QE݆9HB^h'JfD6<(-_%O]yi/]*=K6Y;fa}tBaoneu4&hh?OfŖ ~ox=1UilVMWrH;dlIfYt}W:0݅",TF`&WC'J^!G85+?nS!8-APNU}k"O.L-BL"Pr}IQ^1&%Pw;~-)JA SY&̳G|/ B!/j 'lkI=NŅeR8ũC s`-PbGШ~c2e!uȅ}? NAT',F$=(wym},9A {0)zF1p_%h9q/] -h*EN|9fmHkɓnU[,+cRD~X>b)YÜ:pxf<(IN7Oܺ,꺯SEnn2Rni)pOfV4jU8waFLR\[/:c1MQ`PgE:Fd\{ p7>Ivna}&)>[:7]7@ :)m&A( ؾeR9";k_h-L-dkCl/t^*ֲ4M|\-((:$⿷qlAW{gt}.X6]?RiH`AYKtp}uq(<%/(z\>zbϖ`<2`;G']:5{oXt% `C.U#ݭ'A9'yldoVU,$B[ 5f/9x|ȃHQq֣G(N+z`5ynn| ~әLDMǀlZ܍ѯ9]}q8z,wR%[d#TVl@d'#ISIaXt6}7c/lu L^!YiSLPI: ({pH:WjZ7^Lh8JKr} \眿D[eiYbݵR*:=Oz`ɄxOƌ7ro>2hl:% r9=h[V|kd*AN̆iؾt@ 9zֿ[h\xE@^b@oYF-)⎝cH1`^:@%]U6 {QܲUXEK@>+3,=LQ!pnMZ@2ʈaHe@gGY%FmW )lJ*6ڜ^IFX)ꂿ VD` ,OYuD}Q$X G)H9*]qXvy=Md5:b G00Mɢ- )F?)pv4]o H3tvIp8\Я4p'כ 9zƂ*Vq Ƒ+_s FFwO1.xFG)ɥT^~ޜZx}q\AT5?CI+61m|QApJ1{HHkFF5F@hC QӓE(%UO8M6~iS<:GsoXbZϣ]U't7Y[(px#o?!LsvP>䯞7=RmKv *u|*BPЍ"+l+w>-k,.aĮY#.QWI ߀.msL S4ϙBMxpJ||MUaAL/;͒Z{wRŭxG39|7,JX"՘b#~*1:;Yg# A>iczOo淧B no}@z?2W6NBVf$&ˬ ]أɞiӎ]spE|cS.D? ŤYK7]mmb-P,4au[By,}m7.,e2S;ܼ ] W a[?g0MN(֙7)RP>Q7vpr+5 S4@V\yI>̏0)7m}41! jȳYd)}8HB!p"/[ll,ef0f4uﭾt3 5'KIPk#@jKG 5pe?s*UQmTMiA߰\Z +V]s6t,4[TiHS-D*7^f8SڟO:?;$9wL[ *[84 g1|Vӓ*Q Q7e)g<e[*lHiP _Ue@]`R=#M17.jO"U| G M'> =e31ʎz&_?8?v*dֺZ74zmqEtdDp-\YUw'z,%r'sB%f8C ~E[VpV6C:i>֞U #I1U'km4{r>*#<9@Z_;^;P¤#:/N`1=g>9?,B!/A+}|MbgJ::AH[=} 27 ڄ :P?-7H8/E{m;Zێ?ZX'v'䟶Mel/'Ɉ1[ 4,\톔3!&;eVmnj=A Jg44/ht QWBzca拳{Ͻ}E<وO1&vTŗ(qrBw1?Y⫘FhjCZM$U-&htڹ/;wl|Z%lT3rƊ5{ ꋴ[j(Y"E0͵ y3;fyEFNҵ sB5ueJiEV9sڛf~3X"s$USh\$sEVP_^Bnh9<=Os3Wpe(:1՘x+"AFQ{Jx.{s}U{QwT>H+!4؛% ԃ֧oL='l|93C,M0!4e`vj9 1iOaE/7߼ڱ>,i)" UOŁ^krri  }ަ?p"xq,:xscP% zW#Ӎ]/>@.jCE a52#@^}`z| Eo'DF\1FT6CM L奁֋Q4b?(.K G.7xs*@㖸 vB/NZ:ҙƻR`am1O\q;`b[Jn{O_bpT)馵?'GP~I,)3wtMӹe(zZ0Hx۔bÂr)jw"y[yk 3ip[p4O66bW=j DFC-9ß;Ak+0\@~ՁrWs0\[?r|Xw(6 ;;,= =& Epk -d{_|{i7G,T"xؽOƩbG:_Mv0𔁡N98p+CCMOVM΅]A^4#U̻CQcpA6Vɹx=bn%t!)Vbff`$NR}0䷴lPn~EjN`|afs*vm1y/S8 :z(M]JYb T {^4VaHNկU]dCߵYV8 )όva9}"zAŧ EXFyWlTd'!He:Z/8s@Ee5M4q%ZҀ gɊ$(V}ዺZ%f]?ʗ)72J!bxlI4 ך W?c HGcܐ v4Ǘ@})?jYɌ` 3ȍ"<6BR) *`rH~YrMSwTS]Lc}҆P&DQs!_n=⒌ 2~}A*Ăﭓ̭Egquǒ5 Ȥ32qJtPl$U`~n*TEG . (\Pngt9č18Z7T,}ÂfW(5fty?$ Y#MzzߞDP\\ĮT9m)NBknMAgkRfJT,lQDE4EpSQTti _rpN=yyG?Q^k ReCV2GV8t!A :ճc61+P qjfR'AU P6YSۆ~&aT] K0tW%vFq#x:ǣ݁HX|&rAipXGBM80eZlId_*]>\6>`] HHY.s$"!"aBH}B5hKk&`fVM܆s5^`fXtѦ|W9!,rqx _SB]·{mVS:ZUL̂.<-M3z[)4f;>T5Q䂻rO'`tTΥUwж-c6>|ÏD&긹?R| Վ=xu yIї@w0aOߢ]o+nHV+*|ҥ\$y$WCaw3y<1X*Wz /]^.PJ- [#֤Vw߫%N΋=l c?B;S&ppmAN@  [*@.Oux!9 T>@ \qOig5}ٔMqQerY#Ϊ"eOUsĸdSe%}T;ӛaIFyf:IX"Ҹ%BE_ncKf<`Y)`"f܀[OZN^bBmc2ƁaCLd2Z}m}L>PSՌM+= U? EŗÊ͑3CIQJk1 ޜEFUad _T;J9 jᕁ0߼t#Uz3 EO`֥IeMfj 6hMVCNlIB?/l*穘/H"Jm'2PIyb cćS'!{4gv2G8 {>P̖ vxZ#+Nd\<2HH*xmѬT1WPw,oQQjۓ;E`TUq?@"~: +o<26Ou(c:-rA!&%z,*$c:ͫ89)} Rȇ1Q'&sUusٻݙ)X6;6DEMF.'.!燮vDz|BNR[7Th%Ň[3!nM`d+޳q] l }6!#ԳIA3l_izPD ė3d#a$oqTx1(^:1$vѥoZZ4. ȿ"X,1ѿ LíL|4JάN.pQ7 BJL꯷=>;!ډ : H25 rɆݡITkmfzPAf.<#>EHcx^O|„ +Z}'c-?u\p:iRnb/ zRJ4_ D"WAm݀ٯBMyՊ4EX~gR Ԉ$S+G;Yĝ8Xs8Mtʘp:9[v0R*]eD01+2 = 8-ΈWY3 Ć4qEؕ}1Cq 26#ˏtYnpfKN \åX.Z v%a6k/q֡8ԮB(!^8<*N_ah>pcW8"S wJwG-)ew-zx}UU& D-:vSrM%7 UWkQqxrz ~wg?6!/w1ŞMt#EQAwow>U{i6zkh23^iXJr0X5r&oiôS_ ;\AfZCX&sA2O7F4SEe0=7,ujq^vW'o ,fs\:A}iU?jVMePTr.WܮH9=shfy g`.!W57SӜ/=wcyb3;W!ثyGkHSZFz ÛvȀm~^&=C9Jo"gaê\{&\?Vi 븈qKM*iqN >` ܾ ?FE1MoBItԷkYȝk? biN"`f*ִ?h"4db:X>%Y ف]V^j 201<)%>ۯ,rSE8Փ{V]F,::Rk<pPGRm~:yM甜h>ur9RpuIܔ|\4zN4.ɸ~I¶򸯓d/*nE$HﭧI0S3]E*wC^;Vb2[+E)L:nr\t:DQ /xFn#'a6GھĬ`9TTJ49C.LYȊ/`]~_g0/8®L^ F+~6A9RWo%'K,Ү'ې,PDzym H5Ml$8 򅶃z7԰63~';kٳ%ߖyr՚ݦ-X@'qܥqFL.j),\mdFNJ۬ԉo͛Wa+Q`gEFO3O2If< 9#)?^sA%!ԥ=BO9U~z|**=@Y8?ca>Vr'}OCQg h#Ӝ`7CQ#O#TtXA@mefnRa8OŦe$~[;IfޅwIWؔ&`z4Fm,l9R /( aif >{Nq,0dzZn{`?:V_lv5ɴf9hQX"9!kU"( tﷵAo+X liAq=t{ gB;j9*!J_ ``pɠB<F+nݴ,Tߘ1miahlQRӲ>m/Gw|!70mZ6(:mUI(:EZuYU^T?-d#& CEjSKP~D//.hkRz>hڽwݹki< ^*S)a0D(č{1|>a"X<6[c{֝ nb̀}j)qG\ ]Pp~b9hʻelTr,yRu0}8RQi _M@GD>uԻ#D nGHxpk/Tẻ#< pIFk!"hZ6E$И4m$yTBXYd̶_kttGK pt0$t$(~["޽)E7zDYK;ffQqʔ_@dKJ<+z;T᭳w6_NS`LM+{Vjn?,ݼ0Lʶp]HjhRP}g֞ Vɯ5T`T,vr89ܾzJk@tƷY?[[4,+ /:qA5;_OG=V"X,?~Fzf&Iޮ읿WӑB$^t(5^:ډ3H0 6:Yu `[ݼ;K(zڂ(hEuM;p 󚶽L ހxt5dsTʤE8x(M y^D^5禺8 ;K3 )Íƙf>S>KIcpc;y.Q=06Cd{` s1fdgWѯF!{ԌKg̜k wQXqJ%@UZfQ-$9@BNO!(]`BzbuΉUG`fŰ4F'&ZbULEOool mmY~d %M~fʼ26ȹnJ=ӰY/k#%;+ILx+>zp F! 8.YAexAz?/a W w? 9 Bg)~i3yXqkAzƜ`2Zs\OӳVJcOobU,>ZqS\!k:;DJCݡ.cHBqwg"͇=~><܌U7PAWFru7ILZ#IOyUɣ~",%Z."Pmap8dxiJ]5WsXvUltd9[ur7ݐٳ{ylM0{WK:[]d1hJi`c )iȧ~n@]KLzGfKOvվڧ؞S#$BLk^ KN + s/2/. E>P ZQYٷL?hV%֞: :~DܘYy`X[)X[B%?Q ɤdz*lkظm\Wt>eWԀ U4 '!d uu/vaS4I*?bU;aI"JDg<#dJQ& 'Axt1iw\ G Ϡ"@HqؕƼJpZ (W As$wCc$6˞OάU>{ 3 l7T6'+:5(+XUtX1>sJSRsH!pS\$iּba2s(#TΣewhH{A*:ZI?wƍpB;4gYd1c~]rIk7=vC90l=.~VCd#i;$zV&e;ޢ#f/J4n!XBC#F2[yB`5-pw0uK-r%@Hh g6gQY쟾vXhëjj bN܎Q5إK:rblEU$%ਦtr$,3Czbixq"wn ~7PIwFuҥӓ5 \.+,}bS^D/=6Ț0SpygwlRkJs<~y] &G(G;<p柋 9_bWMVf.eyݗ;kk]"1w\A "+aH`݀VXhaDTA st!(Gas~o'N~?aTe2 4G\F\)W=qU(2rntLpý|OHo+/[N~ Q SέO"y3疩MibS.Y(!v`$ `d^ma0dq_楞g(wMel y6w wo U n2lX2@fMF/stTERT9$i-s" 9'BW4~m<J~:&6d$Qߝ)֥}((Yfp*_ }ղ\|>xؐD$QƲs>70}/&`V sV) 6K@L/a*.zkՑSH3ʂIuZ^ ?9^V%kv;Nrb?J cKxy$]w:,`;eZthn=ah*ud7&=:yF˓.Y#2G`Mvu|e ]<Mֲk]nwG6aVy.@,ːdsM#e٨k1G5[ q#(%S'8@WD5ր` Et]bGp…5߯Yo]LUdʱՎQ]?[N&Ft\/[i%7"q?+?Qx2=GwE[8y7;h麴Mԃoc .%U/֣yM k|ؒHPvZP䊸ݮs*}1SHLB"a\mxbv6D#@cqV]%Kδa#,2ޭmhWa*:nՊlZKnz/~):9}41o\8^:g'jHicPG\!D6ü%jE"6*qA엎M!059k=KtpP)I*~m'[9J6x%9󘞆$!yIg~T,2iM]wҒG| k+ZuOw k)s3S;`Q( uOwyMWC[n+럥~"pAG4o dVM!_Wn,pRM?Jʐ$  omǝkC=n3U&rDoĦ <ٍRh!$|@߃A<o׃>d#^q%6?YINC:Ǫp!j't])^T#GN(pJ:t?1c#8b6qU-]u, X@['/VNXZ53}er^!/jiI%0Xw3_v-xh'ΏȠBk 2hط-V]O͍0̓QJb ai1 0=kKC8%ɉm@~ް1lvIWÆEl3=~a4D(.=\<Ŝ!ܖ`E.-^O,pX!;]  @S}&ӭR_H$iaUo=|;uoγF+N>ݚdb=37e t"VdOE~68H͸K> ]uj|qecr&\!R+"+!Wl(me A%e*Zb3JLf#,,/^-XyAU v"m@}S쯲YeW']3ؑ\|*itB&P<9tCx+9isF+Կ,8{Lr#\XgCX Šo=66[0* dq܁ö4hv xzĎ =d)g jDԐі*7zoGPK% Qh&*J`AtXrWQ -oݧn7I*1Z(R,:е;q6TQ$|d2@/q$ 2k7|^8sbdVA+de!SЛJ=WY}u*f. "BLݧ,#ʘ?B&^ԉ"dS:ݑb1cc~Gc`L^KݐKQ"U5o3e:&Mbkُ.h+t&r#} )RtSihP8F;'Fæ[? 8dK5]qMx=Hо# wұ`b^tLQ` }0 583+A-RnMl('RǤȾ%_q.V;r w0pՊR\2 3V P }6Xz2Qm8Gi,/->(h9Na$GC>^u.}<rM}*J!po1n {eIlQܝ_;z*EӬ} ܞ9X7j( вMHP<`xZFC_{ϑbTeY[})dvAM L\__X<Ҳ` 4.сZt=h_gY\˼5]M06ld_De.?>#"tن/T4qäP!Cj(pѯHGM ~( STBuνlԙAQVՃ<2ڽ` vygIDұ#F[|^#K ldFK*4K*{BvS۟D6\Pk[ܜwWr%b鹥dNgt/2S./nD~%CՋYrU: SkN ޷b-l2=Pþ2 9[^sy e|iIahqMA:=Y{VL"FL5)}tHo=\a (Aۚ%W8_*F݌k9p[l@V4몞!㖣ּ5;+>/7On ʤ,;hVc pMmOj(\FYpo 7|h%nxTXegb5maҨ2!l:>o]Dֳ1q~\4 GomvA_uGLM{Lؽ X2wF$ 2"SȨߢr' K'{Ry[2LA=mל+Xq3Գا(ZR|?va9ڞ Vu>dRceXWD9'ʡ \Ƶ2_qωnFmAkyZQFWdQzjn6_T)VbP\sV4yïaT-&9Q `?4%|<)`-Z Ɣz^8sj%R~a׺M V7И,抛 5˒h`c$Vc<4}/ݩҬ6v%遌s˘2@}r;6o0%v0{91D,+8~u^>瓼~Ы°k\FTk.tlgZ{a0 8#᭝drwI\hífҵG:3FZsmVa@(C)ʊӟYYղ'=1lچF4) Z$<Đ,Xy4[\01XwS'9&r@6$5%VxP1}:N-,(Ո/K"uzbITm즋*0~Ez~Л ~j:vKg `x {f z&izhKDSp9_ƌj!Dۀo<٩6U+WxK@S pAvQ~>TL~J;)E Y/֑L 7峅 %zTD%!mi]s0`98{'@iLjĥ~[ :aU|lcȂw8a%qemSG褵~Z#L\m/cK 5`_Qq:=\\nC_&~|@ .tJn)M@-<<4pشz$P~x8|^ @ k>Jaرeh=SJ4RHRFB)^~ÖRRxM Ÿdi/N2jBh,$b>|$3lo/=nvȇGeME;t vj0Jnhy}.CwP2@øu\>/ 1׮~F(yJF86KְeW~Nc-PROO}taK.,}IHANi}@^ LXʀżƣk._XI3~ӯ"Ң:q pݰ-' wR[A1#'lIM F/?@2Բur$)0[>N"~<@N(2.6>ܟl^Ykq6 8V!8|'@~oOu:WzJ[JHaBA6Jest4A#3q=mv$AwoKAVӜ蹲 7rEZPKw&S'p8;NĈg2!y>(a}uo\ʳ]TLK|!} yvЙwtuc9h03茷ˁoDPsJdмLp;9jE%ĘN8M 8+HC"m~gM|۝TX|c^8Ngt8d !$l0nsLed4h8nc&v8+Rf|jͫ/ٰ6Gn8gM2lW%l1Wi}n{NDXҏ=4 8ҥnJ Mb"]r}w!ukT4e?0D#.O 7w~>O]tA9\pm7l4Hb*rTU@HzuA&͙Rm&w7@•Fhf]Ï0e~alkۏ=qWix%WE` ZL›ʩ|.2.[$- i(<-j{# b-*ڃgzF5伞jY O~Gawvd`h=^6 ՗Ҁދ菩k%xrp.9[m'f5дhPGď4#5PPoH.0\f XwFm 1̥uA 皸 7 CnA$QKɏn!-.TJ W :]Ouqr1e3u*wKp8uQa&]6r;wI2wDp;[LI@Y1lgc5<Kn<]HE7%d:fe.%: .tg' wr iZk)aAhJ!Qq'܍+p BfpuBrN ZlTPn4أӌa |f!`KAA DE \AO ô1˛UO?L=;JrrZD͕]a5'rd15GĿ5t/2(gQL FXOT9HҒDZX"w+sgIH ҹH]}/:2Ïw7jsSL7IJYg zMǛv ao:2f&"2ؙLp߸dArE3,U)o Mc<c2>O/g,=f9r4+0CDlD^ǮK썑N"ItCÅtovxGVpлۃh2Em._R>S~hr[*O),ljN_JRLJd,iC * OɴM!о(B} =7 o4vk@{o,T ەv|['M?.QYu U@(DplFA9uIA)IC1꜍: ץ'W h(Pfq[=mDä(*:ZGJYau1#E QRElo1(A>q Yu8{>aQ>N䱤;K":4W h↕gկ<ʑ9N92 EMgJ&-bD8uiCZ70,ueCM$~Ex@rRp gk uN)E1zo0]g,&d`Yz-p,SAWM躿[utDD D^r &z{:*q##b>v^(PHӝvߘhX vC7!O\ƚ y|J*1.K[('aH_^/:6eڱ"0,no11 y7+ǻCkKץI^pRx'T"=y-#њ;g+aÄr_A0!Z8F'.&`e`A0ēU!rSL{}^O[}{o!)X5!;B&xc:>P1W&" kΞG| !m@5u90yRC\+4p֗ߨ8Fz'7n(}@D(Ʈ;< {2TK, IwGm#Ơm(tכA&F&DHdۙ Y<^238uC/y%J#&jlwI=TQ*6)9 OT2Gflizq㰕v<=WMt|;]oow5̆A9oa=pmA\ àr?hyĥH"Km\eb;&0@їL`ET]񜃓2iG[p]&0?l1=Q]N6 sIELu(Bzq)vOz4Sݍ͟[=Kܠ-,:5lO$^ 01Wo϶=؛#uYaO4_%\&+ۈ=SzSJzZ)[,GR L򫭫y:Utn#b6f.n'[XE7PmN +xG 88h(G(S$ۓ(9#gvc{/NmןQpI/?G5GSN%9#/C$8Ѐcrw{bg 3Y$fA*dB WYXEd@$&L&<ǩ|WYsط!+U>i~S<=}:?f*G=g$:[XMmJӎVx0(<4oa,<,8 GE$<۰uW͏m x 17 _ȨyƙCPOmU@U-,nTŚx rlLAm#eh^? 6a"d/k" ܌&ΎC^'';Zc`*"݈"uZJRGe}"+MN7 /cVZИ.m RO-<ٿ(å)x)8= 9#Rd})f2B.Q$cЬ9줽>6X-:]j(Hj-Lkٗ {Ra,TY-kQ*tZ%Y0NA 89vl{9t')CE{9CKX9ģV{(;֟2g_&ƨ#l)+T8819s[ݪeJx$vB5@#uo67;mш\"*HLD2nGo77hU;|o`GyyˡTV-qIbTP$9l4h8I3s\-9e5㚦1Z׹\ Sm2>f@[G2"Si4%B X8 I5x1CDvc/C.(Wq2% _%6:m B{\GD~7Pu ixi0 uv#MO 7J(kG=9~œ^=ɵܼýȧGyo0 ;KhЦF9a&(Nc{?eYܧf0 jJ1ZO"[CWPw\CZ&hǛ`?ExQwUOrD1^rtfC64꘍rh))C\ªHUbT—m Kdrֽ=i}1Ծ*E^IWʴƘXge5>EQ\Z@jL>GLl)觬fBV6/`dl!{'n .1skj݇[oR~0;uAc6əlW+;뿫nWiO:;O!vi>Y9 vYȓ4*2بɅAV?󬫟:QHF@bʩ0mD~:;1 ≒pD*IBFM]@hH-Lr,.WtoS vL5 cqx0w [ Z̀8'j *r<'=i6 |k~EtB7<9H6Q J][5e25Q;{9`HL:ٴó;6%e+~J^^y}a6] KX)VHIS%?#jfOG莄\9gag-Mhb|gf$+ALuZyڭVmV%9(]`6iCn>1#8U `-t#Dӌ|]4@~nx8ǎ/8!&ߖz2uv(DO"ejosEJ3l0Elpt]( )lУ'Fm#lj+5JQ. )!^۷%] YG"f$+Jq^/,dN?b2LA1"'~}0t1W/FGB#YN~.P?=x[G@VIqA@]jκeMfw9ۉ$ {+ü&FO 'Z Uh Y/ @)J*ę"IZ <12U?xȜ !Y4Ċo6-{Bں]XnrJJ 69G=eeOGطNTJQf3D,v$CO7k6jG%+0`ԧ5L O5a$)Gyxie"d[C/?} >C#% k̚Cv4U5_׉{_bVA+ u4t w InaVm%:߀)چG-V&yߕwBcG>J*퀼q)[?E׬De*V9; uyt\ae}V;g@$|t7mp*=fZOg8ǭ-dhK!]s ס v?BV!Er-p;vU;pl a>Bͭv`E\ B@(wR e}#ou,2 gc\>GfQM~3,)Se)qϺヵtFWbqeg`&o ġnOF)V0.`pO+$KBA]w4ƹu*^(vYP)ֳ~Ijh"]KBzAㅴ.g>6 ki"9 #SGKc8W:X;bYv7P\PV+tG9C 8}:2qH`d.e@1nDİē^Whמ{jX-ߑa YT.@i{u'wρxZV  enJfCa*Ϸ;a6\usl Iƣ$/M?t|4qX"Z(8f1A[U= :euU@WaUt:[x;jޛ<׈^ ψiE e3 zX RYu&~ xy'Cu jDSu,eEݶyRJY$-_ah<^'dg(?a(gvlY#Ǚ+~U2 0SϝEB 'пjgL2"7E(:<(-+KXlucwsTpvܥC? LTb+<ܪFTIVMAo/e&Zj 4A 0YM\rB6Nb|b)^+[!4IEZQgUlR՛za l+۾=k q_o Y/-5d;cmBS/4 @쿚q (4: '65D/Ax;:?zLIZ>,yhiUg"ui^hhV^>="LSK2G(+/UI׃_y~1M" mӅq\>yL5v~IZ^8sfO\ oi7h3. &{W7m1aDOߘKǡq!EUЎ:`N8p#3:L>Q ȶ0>eORpO[k;F +gT(SP!uKӁ _tVa+Z5?Y e}wZ3Oʣ&3 ]hHcl͍a;e6~Z'H\Dtgm!qvb#U]tGشRFϽ`9!') Jc&_(n\9IU[Scp<_{< ρ eaD3 B-ָUd;L-Ú;#1a~NHD pZOT:ZA9W :"pjJjRDaO-1SSK M)UmTt;}^GEALQk @q10`xz*<{+5c)d!d̉\2t/L{^w*=?uӒL of}{Cw+ADVk,4/ .w;%V)jժ_i%H(M7X*^PpxNU\߱L)u=qm4=:lq{{qY*M8EO'iE闢ʾs!4uQ6 lOJ]3 * wKf/5P HTAZ.T$ ˠ=djrǴ͠@|Omռxp1'I^q p_L68z٪AV_-O8 T't?[<<:+Ïfrq^/0bh_ ֪װ-~4u_@vC(A|u>725Q):M4_i>fn/GLI{;)S)x4^puA?jjMyD5gOkÕq6 +链}BDSCRvϛ;0`v*)0CPfr3/ !Qfk5Ջ2?x7Dux"Զ4Un.mO8V'w ڈ|3\iᾆz"*OހZ z&_J#q`xVY8q:R<`3!e/.Н\ÊBvOcy鋎v܋8fd_8Bq#T+{[ҧ[Pe 7n`MFuCi.2DQPϝ/Єu9U=s6/1+dN!G(SVЦML\Gy4&Gt(}aC&d?%;qu⃵k CVR1;k\Ji>W"),>„7!*y UQ5񻦩΅gJGʥ䬆 k=T v/ “scmskPhvр =s(~a8lAOBH2VB}}aW ac}a%n%y-=ķ pzFItmfd ˿1} '?#F T#uDhc^wpHs@o3Nĸ3ap;pr\a D!lX)R !QEqQ@օu#=_{W=ప+*5MH@f4 pt[9^Rݠ!o|uӢZрĝ\x19ZI'˰AYmr0Na5)iM@d:FDRp@I⪲%Gh-nMd*'!>3$(8S'g"zY_MXP Ta{H8?lɿf8Bw٥P.!NrnuAIV0$6g #UPڬ ^9T7Ks=_wOV;>xxA*PDW8o>>Jɚnbӛ ձrkȯ)XUT)*yAC5 c.78ddrK犽mwRO"V?ϻ(Zh9`M:xeO+A$m|j6MoHpUEȿGn:fTU쇆'rX 4I^!QAkbrׯ<*Aa}%_T-=b܃h&'2yܑs@z<=O9cA?YHDف l|Ɥ+'ڄ`]׊rv\Α pr!yh׈pb#T{*y0lgVMFmH睲P 2Zqy1G]HѩDgC\ @`• [=)9̪E {n{tM}F[2֭jqC>po{Ow4Y5tK*bl:G a/U3Ytם8_bӓ ^ZsƛQT6zyIu&/-4#ºoKcs,y Zsv5^Iq'SհeFT( Hn,}o6œ|B ɦ*!@8rzB7J}{/8㸑 g.տE#wלwC`%X[2M;r^U>PdQg;k_zFyOՁWHF^8p-X!<3/"i-oЂwvrY{驵qد6 ][ ymUW<ux+N5g4x&z⍁SCS {Vઙ5Jk^(>KjWzvț9 bƤXSOfH lA]>cmPzᓃ';[K@(V{R)?1EH}0c<ɿ1y!! n++HA9VOLCScK{:pBt \( Xpl3P"rY_I[߬!d|NI$Pէw 0eGgS/@!2ӨH3yQh Oo#t_J 6L</Au3E[44/7jnv%r ƒ;`Y/gqaMf?PZ$I1Frٿ)D˯aNq ȥv (ŭZAkıTGoMç@Ijʄ6{"=f=ZRZA61כÒE5}\o30yS}v!⊗uKztEU*o+)K' )2ZO1߾UL՟ fjrDHGu0|hScͳpδp 71]3s}y~±(ޘ Y,Y/-Z>WI'nss=!V8ElHQOW;U4Dpҕ,Uo5̷m%"eR-?jNs20; aJ*VYQE{k,am՘E)[Skoğ͙!ԛOl/W <6k:,n~XHj2lIEj{,zaT]nn$9_N#j .Ilbkh s3Z йI?0\}(ԂO'q;%YQ i|4l&Z -e:9lq/HPg,3L;O/ ] p[2pdRl(ت]K;5~sʵcq_t}O%S"ET:,NvCSʉVFڥ901ԱSyZ0v *nye!.^sxj>e#n@wJk;DDu6Q)FGH.eFa,$ݢ>+mݠ|}= \9%bN/s1u2-T>K~E8վ;'"ux  `'A+s*79^j8EiHoZe`o4|E3z %~qwUl;X( A;ttq: EE|/Yiޙ!/fnwWm lQOBNW$[l1w*+;KVtׂ-ܲ$('mJ%bQ|, w^!h(|˚h7it~g;qy9qkc >f5#?HHܛS>(PsO?}1%kF5F7#; uw:MhI%6v4EC A?Y.5_d_K뼧\!pXIqc&Bl]8/) EhkrjBq-wpA[S*1CQKנqV+T!TM]Æw&ALl| 9w Dfw?IS{kb$1xef#{+U=5UaxTI| uZ3rlpq}[#+j]O~ F)fG8~59:Lv<=2-72=.~Kvc8UMw%2Ug͎%:XCuQ^6MP,cdԥ1ܓ^L<+.s eQmʂ0(4֞ҬE=qg0ҕ.-!}O)>g"*i2aK 6B;"V5+o%8'W`ǧxDup 3ENGvR++( W73.&EqSa+# JWh)z!L%Ɋز16Bo3?U|aZu&B}]dlP . $[9LֹXxe&F@G I'y˦xL/g! xW i)f/ -.`\|zo+VK?*-vSw*JjlL#䐝yBus&+7(A͒p*Gf[1yH. 8fN{F Yy@wֿbO0t PdЧ{ܡISgBwBC !E9w`50d*3"3Y'[PGXu1K/QO>R,9GWb$q ܖV_6/4 JgM)m6b06{@&*b J%}loS\(;殸n{dDp䘲/^"F g9@u($ijş҄TTS7taB<kOzS҇ ,@;),&pVvpk$0e)+e'U_\̐,) Å%l#dSp!zҝ8t $P=V) IwkdhjH<~&ލ*^*&B)4+,͑ w9ㇲ\jW/{c^ 0bMV^m|_sS/![",iTd! kʨ:U5':ȷW%ʋc{0p[{lthp=O] B 3W6'r "6nY=MR^Lz)lYÀȊ;b 3T3ne?( uA2"[(fhvCh-h=s_k\񆪬toD*uٻVQL3L#MNpK"YaBw & t?E5k8NsyRr<"P]z3h5avnGufHN%$>fKL J\Q-g7p.;3hEFp.,)z\םfn(mo/ L@9F0|%oܓ,?c 35ύuvZD[X0e5)&7D0[RA+?WhU @e[|܌1ZPŃeAMyU|4ΰOwnƥC fn-9g0wV \^a|O0ƻJ'F\w5#Zԕ^d_]FRitH3'Zw S?BE&F*ހBVS@K&5%U֩S67ےCE6=wݝ`VnLHTPIm/ǼPiҗ嶠h.NQ^:saJ'= mt415zNM B7iwLų#PSQvFuh3M9<7ӒM: z!~@M1$a M9-*\~)Ė$?#upfL Է\3\mm31Di7g?_o=pҎ *^)AO쮺vpvi U-E>5Bׄ {m"Z־=p|8\8CJaſ~KO]L6A8$ao KW;C+Ȱ Q}LJ8},ΣB!/2h]6z<|tn hh_6xs}D8TU3DMEp1cx4pPEj㾢!їg& 3w}0aza7‹ʢ|:F bhårkYATHm"FPstKխq b*~u(xUO:|`o7>̨8ꭒ> _n 2dSơγzwB9t{җV_!DC_޾>!0xqEN˽LPU1La2wSk>[̓ݙ><,.]TcLUm?y;^&JU<̒j\s}[>1OJ-] m:vhOYrRo7 :{>79k^4\0->3L + b,)NnqwEcc5rDм Oΰza% }r܃ 7^qG({i]W\x SE!Ї4#U2!?O]kU6Š+j7e_4i`9%ܚv2(S6eo_Q2\XkT551ڲ!"hVWP o Xt Q1aPZsע V2frϗFlXĆ>e'#LDi>ArJd~k X)&vXA\ǐKI9gQ|Vu &{0Kh&<(8e_'0Iy3̫}p~QHͲ 56f6.n)b=PIbŠꎕ"45H 탨~ as[&2ﴳ2'*%OF>]ȫbO.Ǽk'c?NQPj:;_%M1Zʆ:mZ'-鷵.F])b)'1qKڸfđ\ZEqh{j*:i6aQ߿ LIs)^Š;wr;RCAT#$aDVLA 9 91rEgƉVm敓N<^gޝ0~x!L3mkx"A|"dDLsqأxqVmD"8Q5tɹjgdZA%J y} 8l>Ƕ% hZXXtYKIs%s'<+XU!`F0<9@J v}ʿ:nƻ+s2?:/%6[m{SkUkh/pZF^ua;|2TA78w`2 ɞ&7zjn"C@R 6y ŧG[ݖ&>#,[RM\F馏ɷ17 7?]lv.W܄ >n`5D#Tu],pZQLD#% ťý,asnV`Gί@V&?=T2b'b-Ǔ6?UiRQ-n]r㫟''>y}RDz-ϕopP%VR"r,]Fsz 2Kx +5{f/#v'u `\ή9Փ L~q@5ҨٴGYc~1_KïO.rA#dNΩ"q+GF⑖v30:V1XĵgزހOtqɴ[LfI3ar18:E8;8WSB#~ Yz7j-rcJꈎv nja$COQT^I.|Eu,., 3M'nMk?.VnqP&쩻֥&\\p{>!һZFkcA +%=L2 A O03nHp*>BQ@`R7Ka(VӼo?锺dCiښ/(EoDfH:*"BÌOz O"e1d{Z' d=ͻتԚ'#5h:p5T+տFSz\i(,(nMfz6/݂C6[y*G$Y_ აYM`LV#E*\* ;}H !pK@uܽ-\peQ]zzY.jV-*gD+K|fR&tLThZ;f2O=%~2ۯL^f|Q>9 o!]DD cF*7K$% OQzt6:O{,z?`>Jɂt&Ȧm2kmfK?bv~PpEz40|)|ĢP~ AǕћ=T= U>0_{-AowV/C48yZ!0L6Ip9IuJ/+-ۅG<ꚓ lwhʩ"txp['=`o>)ŶKyL+Xg' @վJ'*$908~ĪjH~1qcza[q\QH߆Yp-X&FAY0!A:0艙(ј 5":d_x0͞&p>Uu Itk*+U9 F v8Z}tE2Ъ_H~|e*4Ka1͐xC]])fN[L>hץT̕iaIG)Ųq τy.j=5I=u̬Ϣ[{O|f`u5t ^||j(~s|=K2dΌҿ#gط?FV]䣦&k i7\gI6Q~IXӵA5Ka o;?HZ% M,A ##ҕ/JrJi649ی/ԖæG) Cog7RYbrG\3!WTҭ H)nu=2vO j ]:[{svË=%AR^/kzGp pN oT63"% \cJ2mk,,P}XZ.}&"u0 _x__'(b5 ]: {+f?w` `&+hiz6>Gd_UkBYRY_Хij9/^R HJA[hITYPG%x"Cݜ|,ȹ{(҆p!aY-:zq"E7Dɞ7 %E+DlMGgm|"vnǔp7Y)Şb[@"k8|H:f]U0-BES݂9l!:Im:c@1o{̈jaNg[Z܊a лEp:}Vu'֤;K`SKu^lDBlڍE_q3䉓#5\Lm Sʐ[c\b;3Ԓ-&n¦٥ D|ç-i'&.{ }'B5jOsMesw%DtUWU'Jt/Gpu(T}UC)y몂X\af3^&;OsK%IޠuN(yφD41ED!e>h7;@#w4+js/&>J  Ԛ),a" 5.uSA K3/^򻺻yӪԏlwd`\m(j>7J)IlxAvtlօaװ!+I08O"XJƓ[tM[Fd{]S9~]`enE@:6|_qĬڬ >0o|_n: 3B^4S 7p\G{Ou劲\KjXiH)bLRAk&RZ 81d nez`KVZo~WbnAcfO]CgʒhD~['ʕr4fexFPp9_܇7豧 m'N@D\nmؼQzɲ30OWڬMӴADr߹`mIۘ~0"3OR V@"{Pu:{oWAaIG+:,Ʃ,NE2z0s{$|V`_ ma<*Xw9z ,XT#ް.=!FSf}fȾIy6Br'`n uuD"%KU7v啢 !M7n+{rnh?f%QNv&ZgSn;_|;'- Z8'<@}Gd A}+?Hp˵'ѰA7: k-Ko،[?U&.3o.6G(l9i@R4Ɨ#{RPj8C%VPðIC0(DJOGIjߔK;| w<)Xd'twS j M|ޣHV:%Dח%qF l'0Ic0% d;XPb3`ʲk:؃Ek\P2vf> s,m-O0LWfL> l&k!5[N CR#ccGtuwj[CN-ƀyudXqOL˥AT,;yY9iDՍC!E~d7ͣ=CԤ"w/OSu1pkOYI/jLziK˘ ؕI?/}TRI1@9}s]kqϗ*H%^;}~$;a3BB |$hRm/^;eԈ—vXEerxf Ժn-/O@" +a0ւK+܄.睜UCMb^ ƕyvqn6N0_Z`>ZxD|ADy5!wgIiy"2&|φrog$MO&pV"d%FO'=|dlRoT{t d+ûIAޯ4}6 Uqu%Ah%Y"sFd{`ђSjY|ixCCqv8byLQ)/\! C7,%lLك(4RY6~> /9kecݐ;,mz8QPhJӗ]mo#B+~o((N* E,ץ"6z@4'NsA, j։7g۔p^sl (t4z|yA2 $)154h_L@YU^CskniWPj-,!)=ĤbYV@/ĥ(.KD-I.B~wOz|`o|$5#bE8v^U%Ē1 5@7D≃.UBgAY a-j ݥ=nSuY/4s(J4_iY~$/D }!' 0pnA7NѮLP޳0@`ky'f̬O ka t55 P0W|;(IZ$b#XC{~.bfrEw5>c/}.MGW50Kc8ݘ}؎:QQ>DžS9x aMãXCu+XyOKV0swz|-:+)+reƦ`3WL_#w5lp!V uD9 q6;E@!&CD?@`! HJ?R%݇~S]#mK\{WN:#ze[A"\\`޿Jۮ}i ō5y+)3Q l^3y#D׌m&?G\,A{]o`3|(32(q臝?hH&>WX)_Me˃h=[mJ yr|s+(,=gLnl` -fb_ \##P'h Ȑ| 4KR`2 ,c6$T6(b ut ÁyeV;<({V2Gt+'꤀,ף(1ZNB?8}0׮ԖbE.Dٴ1qHF/W谦,Q].__ cvRjlECw{!_4Sx'\l魮tds v $Kh K'Zz C4S铧 g=f`_msgxʜ뇜I9cv6#&ݜT-B{_ء7H$9ncE|_M—>odb}<_erγ\нw7/It ym`L\=]Jrw?$D\l@ @eeV$Տ45mtVEXdZcwY+XۏzUr:@pU,JQn10N |6W@ '= XL0o~حn)ƥr^ TVA!|h9m +Ua/@uG/36SB=MZ.v _֘bV1JC_3NQ]n  f\GXTYv{z._ʲ{O7~|m 5 ]|5S1+"q`(Wح uP0i2oH_% 0\aЈťXYc X n5M6hD`^ 3#`̭΅ΑmxeiiW#YLz$D.U|kϴ1uӒqq)h.)͟ƾ eƬV$PR0qs 5&" mzqz#еg6x2Wy0V 6F/ڣ| u:.Q(0>hi ;~mdPm!.ױ?a%$j54ZRkJ[kʅ[ش=si-qO=ULdr/$sDY9eap\?ܩ0utv^gwDiv%_kU2sW^Db('Kbـs`*6-$(WdFR7Y`2H\{?>ub: ~[3rS_/z~fw ?:uU5Y"z.YMY8*_32@Z*~PU:)_#BUv}r}W0&m^013W<$NZM7<ҩVqsS$opGABdoswaA 4Gғ[=J]Yz%ohnDX'aRBko&R䲢fbWQͺzqrx_*\,[{\ Io\~KLX_XA@dl$MRfHDhLG1]>m/'q[,4 bT"@l,QqwTzEf&mPUJU0O~(K(ӣ :^Vat~ձYOؗpBᇇk&\U1Cy3'^I/CH+ "a<*ɧoD:p`N2;@S&Ó>WA5SNAXqDH}'. &EA- ?BCz#[7)DJU.X#AX̂͞z:vky,5ݘ#nJ[JnBaM5!`Llm2 GA e <y [8Q J:QCTqY+|Em;\@D%:$9'U^]9{Qh{0eG${ a iԒmM}fPU,472-Q}wioK|0x"%!,c{r\|K?.6>2|#| K+Jܮ Z|/*zO234vg<^xn92O(F ѻ\Uro7dGr7V1 9e|m2*yv/dm m8QPhr.m\>΃%d1c7!ΒUz[Rt͗[qgMbd|-nxeg3祱lV}e7'a(ŜAۮ$y w0/2NL%\muQ߻TueH0Aĕ$oJT&HܘAu- Ӎܝ;VKktNsVKyFCI7BD2<C1ETÉ6++ |g!o!VΠ2\(79to\bqşd4OpNx!8/[z:@ױdkԄ. q@e,Ήzm8Ra)"l@\ݽRi Grv{f06l{0}w3oS,ssOK HkTMG/XF$X>5d<,cmwXÆc^]VY(@InNjr޲2b%PQFLe٦h_؈U]uR"s~N ,s+&檞\`r妁gh"@^űk|@_x]aw~]qG?8|*2tW@ḍ3Cg^.ZW9%i)clj7*&G$l0m;q +r(Z9.!drJA )Pft{8JBN[oX*P?"Kr"q3KV}#ŐXXӦ;ja#u[՝.++8Ռ A¥ ~>&Nkظu 5ÐR<(GQ2G1wlfCD:sg)ƸGgMv憮)ɟ7&h$Dz [^ |4Ӌ X-Ε|rqhgs}K/ Ev!@ W@6O95ŗ_%T EՈ>SZd[ q3[YhTU31+;3PE׉9]eNee[Y&w9tYv RWeXnlWo3曻@ }O^d ނ"r)O. 5ztTrT-"‘4]/,N*6I(|S˓g'$SؚXaə`& m&v41 /2Z,}%gDϠ}2w #BJph1/RP"rx@28L1Q駛培hLnp|2 {kzQ.z;ܱ rZ=~ْ:|WubeҖ+O:b;AC]9Hs@{>+5"C#Fc92Q"N#Ljm T<4 M./FW_A@dqnA$3INCz~1Q̓@ZeGf>@YK&qӊFOb/*`H@mj}Xq$qb:MYCG3qK߇ }[:_ )F Zt:,)d]AR6"f3f|.֕{?^1AW։4bS1%o<‘).;I^P6=)r&P> U9 |i$ n,j۱V*ޟK7ؤW:%5u ;dupru,珪|"u$*SqDw bhi/>j̎+)@wte/A]W@3 A>:rΚa-CgeG|Y=5Yן@홗KIwvx)mu ^b9BCbiIγ2Se7D*NxqVHJ)(Jw:.q`k9S1G<(][?)}i)ib?_A&ЄvβkD_ mϒŴ$GtXS3,Ms;~><^ j #nb_zCu[5hs֢E1 倭zj\W790^|/BA ׍%{ vܬ:KV$LK`{ԚKv#m g4WsCF[ .)*4(*RrcUX)T7D!d5Z6|q1Py c}EA_?![wujJ8aZ i!AeZĨ,W)b$֊HV%u5&n mJ5a$u?v2Ǧ9q Y,[#/)*"9lQELrE J'ץ[(f{OUwboѢQYq7ʁG"ӟp,rlEA]oMg.dE-=!s;7xVcw%&Tt g쟀,;0|4Գɠ@"9 ^+r' *XBm\c3щu@R/^UG0Z Gp7>]-&0L 3OtxÆޖjΌ'{Jedxn8^}} AXp:՛uq*NL"m9&\ď|wvcbLʮZ}@pQow+@!ApCp%2+FZQ# v>f2;G`?$e3xZ kXPN;:)V%$]fXU[ o+' $~LD')Qe7=[ LC9?,uvt|- :K|~"t-*txm7Oюǁtk: uJ|~ueD #|E~ hYBELV;!tmi-aC:=єpgݭh&2r~ ڴ7k„W(\~^kjGg؋S4{{-'`V뇦vChD{h9/h}r1ZJr1]˭VV`$v^[㶺e)7۪"Go(T&$S4Z|o\k,pؠBU:doDMiyeD;`3K= ep*YH +,ؕ ΫP/LhQMjkgtϓ0F%Z3i4<(|߀tGӈaLd&EfgnOVoYn+%~#Fp>'q<\&Y^"V1Ȑ(HI#>}Q)^=6l%#ɺX6O"' h{cc*;uAR怬QӮx`q@3;tjd:+;坨6@؞$7uVC٦0o6>'Do܇ڼJnɚy[[:.EuppZ("\h^tY,b[p)YQ!yI(kjFy!0BѾf@lJa\ǷߒeI)v@GPO0>}H0\b/_zqcoOz0Z+Q 8n!wmy9ؙ ,IO*G\xhsLFflHgfbӮAf?Pg+tՉEm<үV^Hsbn{XUcH`vE̒#:my҅(UuRg23_TFQ6gM2J`O*fdr:Z͏X&UN̮d w49kåG [ @ W3G-@ {̢knF&KVQh5"/W u1asq{R @- #~.A;P9(SKg>Xf^تbp 'i&lo(p[⮆Ofڸ.!tn]!Uw\:zɟd-t{ p;tY/)"[1%̊#L0ڐH8{󤲭(c9l$R[`HET% 4#=ޱa Z|0zeM]h!h b%ΒPx⓵Eַ_g 잚zkRnCA \PɡOYZzwd)nLi.;8NYn8Ip dީFƯ}2xtVh((Cl[Ng=P x'28t~={|dQiW,B(vf xMw_Dnd4  6[C xk; *f(ɴ:-y}8>qD+iBdulbdWKÃdSA=8Kz%EW|O8-3vXjbAT i9; 'ǵ#r?|Dgtk[3p䀭7h-0sW>V~o5GQ~b˗~jCz2zy5H"|6Ywy= #t#qBU֧N^FQUK}z 6fՊccYn&Ҕy]$z@xMAn9 ð 0%9pӱ!ױC"Mk˝Ȉ.kKOdE2B5L3;<l=@B,;LWYqHt&WTi4J X8PِS  }kt&E3̶~?PYKUnoY8\7ozԹawa }A Ϛ%auS-p!K a\0v!O?5M|s(G>UOv. "5!x졪#B`cU-X Ut`ˆ5vz+FL.PȤ}î;1}z1]F˓+˗7OYؽX8b;,wG.HDŽMq yѸM+ V3G>wq gVnC:o6&|JXW&^4gsg1QdbOAgkZ?,G<{쒸{0|ӛYwe̳|菅 6{ts;<#T1]J'ϾdZM[w=6lVKw ! 7%x] g4 EM\uYSciO1E^UmBJ~d-3ə1I.DD"x&|{6~fZ[4Lt:u"a1t}ͥθzaRK vI!RFne9 Ū5Ap)oF8o5n(xi)ɶ{6ܴv#˪xZX.DyfPa[.㫀ҡQitGN?l0Mގg3QJ7_F޼DB4=H8}#s!s_:i&ߘefv~ͽjpI{nRAd+oY9pY9mu%p)YӝlOA@k2:#IHHl^ N ݄͒D`pyZ9@ Q-ɜk9T@}ུֈQ7~}]JC߫%gXD)~NBֿ w&u :6\ic]| m wItM87}I-d+4R-I-9S뵩@ƙXTۗoF!H孜yC"~oz7ì]uUWÊxAJE\h*qUIVU"&V<#Ő xH*n{<$*j;RtFi+j/AyQQ,y'-MoGl|ks|hO߃%YC&~ 䂰FR AR+"zXώ5*4G+g\|si-HE4{9YY?USs=7WrU"Wh*m#4fK(G!a;RT/_BIP<ӳqF3 3ijc] : Edi׸/UW1DqIPhl|@}9 ۤ%:_;g0Vpj@'AN er,u"Vy$h8X{qr_iðcs(k{!LQ{BoLq\k+N3,;Q&r1"VXGa8&Z:$ kj] زB/Ts/iϣS{ܮӎ5, m綕'ULF!0t*uls20p=tǒ/q zʇ4p;\0Xv:BIU4wh%AJG7bA<&ҥt' ضsD|;@s{Ix ɸJ. ;5eT0bmѴšk+)i~*vݧ={xHďt~#gĺIn2^lO`N1eHWtW45(* 87.*}EZB&e߅!׵4Yx1Z*`&Zky@Yal`yH6DS񧚡 e0M}8z8b&Ğoh*/m}KBmX,jO15C^g_3ae2}Z7:*xQ0*D|sa݇B~ӓaP3Q!$VǺEoyuj¾>0r˜`.(ڌEJ@.vfrȃLުHEJAjv?PV[CsPflH+E& !*V$yF1 {Zv ]RC 5.ʽXIMS _gOkÍW}[NQIi@xE]AwbіF{6< GR*=*کTNmw[3?7q ߁?LFTr&6p P|X GL1*:/vwM{;AX!eRh\5A,C9a:LCۧ ، 44.nP= 2 `ܣ OPNƲ;fZ Ɩk!yk'-~c6v]DJ;3e4{j3?d@&YgEȳ\ nA.: ےF3@uGއQ>ۅ ל$U5cJa- 9tIVKGmiuȵSGÌؠH(-2>˸}3ž psJN"zH\,ڭ%tz-x:QDY] 9 >3@1Nޡm&WӖzj%*Xؒ ?/Wv}!1 EPD?/?G7NOE'"4+rp :hMጌzzyׁx:_EnA1 כv,:آK]1I})ZRn]lfr*xGqg\n;wl= WX8pLt\ WQk .Tr@Uv}ru#Z^5"<1@ِivvט*DO ntW;W8Kpp.w%d 3E {1~ͳ́bA*tKhB#ke5zR9E15OhBe,8yUѿ[ '%gI:bJu (ۢxeHPmѯ X %P(R,#␳eY2>;XcjΣ7dHF^z<<[6D$Hz!+c3d3cɝQSOK]L '9X"B=Z'=tj%\6(+3v*r x-^YFiX]]D ,Dl&tm O5  D{Y{:_CŮC R [ o;]i  MO#ʧ[{4(] wEoSZKju+KZpu1dу-]Oo( n9S{vWխǴ*J#F[ )=LF}6ߴ½`\b|v07Y ΞcUDRf8B|@kײoLb}9/dU2}x.ǠkG$ǸJ_x<ӯk js["zChHսôYktcEae x?h媋^kˆn.ݴ?k-LD{U%?|oPO>{gWV-tE҆L2M#~{jcШpԏ iR Lwʾ? |`XKz\e nPgB|8ؓZ޾k-KqFz۰ ~U3mC| 9FmÜL|( R~e{ǹH;1@1oS2b k0Scq/FSV{L.y8(Tl;= #rǬ(?Xc괗jg$Dɢ&HG(sVKj=Y^y4 - O(8oS i]n+6N*'{qtyN&eΔ T3I&rvX`)2v 1"qd07aUZ3y)=|8fdgo':X}hpbR eq{Kh{yt!ˣ@}%11oľgI<'& :NUBgd1Fq*4{t2 ϤlyKpӕ] ؀W(T7'ng`ny! $X mh?`{a3W}1$@.FQz飧2C#y2'G//am;ZéE̅IjJΚVG #P!6*/$^lg$%oڲ?Mi׷ͨ׾9Y@AlP ?Bbl~  o@H:+"q1ƫ-E$ xWS)<)8p e3r{OT6d;wqkφ.kBg0ȸfʆҫ2X)J9x,/~Y((^ܳlLD&׳bQ-=~M ϠK+ oR(^@[2FbO‡j Ը*e͛o,1DӺha`d 7QEY-mÏ[,C\_VqĭF'ęSŊᛱ^Ώco1 K[>u1qG= /M٤=Iӳ ?_T[$:S`ZJ#<]-i%7Ƨ$P>Ì]PѬ>a `C!~ V!!K@aچxr9(eYZkSJK!Y O'˵KFvyy@>-6`E9;bM |QceP9p'JTISo:ޭi鲞 |΍ C6 NodH6 5 & #ٵ J1p~KR  K0n)d9]H@8P>[*I8 +Um23>KɎmiaEǙ˦]՛,c3d[и04H"NU"(cFKܯI&ppЏRu)O L7JsVO\\)yXǿ-cV<.sA֛ ~~y$Ծn!Hb,7NHX YFraH A[?!?Ǣwk.N~1Kkjjd}5EB >ۅփǓ^.RQ+i ]pWH ?e} 1otI #j?ɬ%̽?A5EB0_OSqT 3$uV 2N+9^de,;c3=v {?^q۽[|ČkJ ƟըN / *;5P:;ʐwP/UQW9Ҭ r^ԡB-F BIy_ȷjK&Gnm{(hy߿& mZZO% sӷ2'D>5ܖLJOվ;Oj]aֵS)~{ q*(8d,kߍn!Oɘ!wapőj;7@-p )Qt/֯LBƓe;Jm+H׉<\L<̃++FhPx{Ck lkty {0 {>BX_#vffv72$eXYa.T|W4f>-PGŸ"go+v9Eqi O“.RI<ŕ pND.Tid df v46Xeق#^l^tt:Gzsd|ax5;{C:eVNH?bU2/;|f ]0;S2wEJWn'ԑCj_ @y2f糢m.Nj"P.0|eW5kwH"»VBNܞcѠ8bj50`1MZU~?Z=WkcLԋ2JoaF}+RRW (dtŞ| | #ڟUpr6lS2~h]o)Լ=/rC* |)vAktZMhK. Su ݀ZVsQ1|~:s[{@ k7_6R+ `_Q\ O:tsQ_9YrME4v_`:ƭe!v"#@KVS5#&6= 35W*@Bg{;@f(PB#YA\!1YkRx .+~ P#`oDBpzs'm)lx[^T/J^LRJ'OdcnrfegZ^1M0Oa\]V^ـ4'8LyYwX[g!l5s5h,oZ׎ 7h';Ya4C~i*9RjH(->YEQsh#ev gH3U@T|oO|1pq}-u݆7r nӌTu1nMWHA6>[әKx8x & } _)]]_ 2*ށܧF,я#")xIUv3٨1u&cBnҳp"џKA6 ~n/;-B窴,1܅,>$.džj"V+#iW% $࡭!%.8\] )!='eӝu@dś_9 -*0pfkH $ʙ>zN*rTƎV Q:ڣi!UFeU/1萊 D·w+q|]o( H V<&4CػOs6qmVo# ylh9 S69PPPuEq,B:3 o VEQi ^1iuƌc*aiEk'JqНq#Dau[!>/O3-W)g3VJQVĉԗoQZtr&ɧfʽތ3X2$ ׆H)z%[RuoHߜzUxCsڤj-oj xCd-^-qr/T9k,g0"|7v)-z ͕nޥVNrZ>SM]YWd)Wsle8.ifPu[Xzs!av0)}E0Ngk=u|pM?yz9d [ PL3x^7h~qp6^ afV/|2c̪ MLtC7?q*#}%SP KFiL3bgEUS{3e?q[1-dQL=m$ZZT.W AL<.s?&tEboDž^I] pɣfX+vy] 4M&5ov}_L3pױHРe -Vћm32V2y1`x2~Dwǝ|%@߾%|!TmGJcZ{"@Ŭ\vE=|%TLm6()[R7u:PvUO?͹_V p!'m#P#!_J!ShD%j G*'!$PfR~ '1}{`` $Jh\5MKR2SPO7Û b ,,r#vɎ)-<[6a~cAGW0; OW8cUCmlT`-%յ%ko,rM~.OM9s%n`@ ws 34<(b!Gh cupmb ƾWIxhc㖻Ucv;'#Іi p^ֳ^ujuY/SnrQXa *d$[%X6x-J]+WXk$SMHP#kU8FXՔQ:΄:叡8kaQiH!jV  3=2ϿQt@Y+\nJ6aGIN+^(&wQ:6սI?>/?c+Samf( 7h 'U)`¢ ,7XNt2X)$2cbw >vrl;A8t[U.[{`ea;c0-D԰ۘTyAR>Ne @ 2̻1saT<{H,-`jHX0cN0!em<ͦeCl길Xՠqb5И{A  Jboȼ`̡}˩3kC̡.8|X/dW]H~[AU J'4G{gj;lwcTΓ#>!lp`i!W"p&t*:^d,F=C95Ns^#߀'CKKeU^J}jmizpciȴ51LMe6dFTrcKfDpo`yqŹb$jo+~VM3샭:L5۫&"ب^Ѱi-[GCzՇr 熉NLu@q۫fbX-nYU R5Y7d0,Wڝܑg;+bnOI')du#Aq!7_`HIqj" nGڍ5Bi^Fq1-/ʫ:8&j2ZETV PY&EyBTm9ߡf?,Ncp18pn8q|i?cQ9>ٝ&6Q~1D_r q4CC,@nYf \\Y__Z[K=qJ!,fQ"r')uG[@)_:#];~KQR7h$]!%/46$*Rvpeh^v%NntJk̈Ԉr((oL8imb2; TrŻn%{]& z\fFB7-ӝ/d zy iiuGY?8}1;<҆!4؊V %2CbV{`*~f~_ԧhdG]W}>ZՈ:6FfnRKQg Βey!-%Ё|ni;UD22*|0p&Ih0WVj\&\)@B ;&p}`cSus,I_-9V ޠKir*H༒|.>۴1 -H?@FZ:8hZLaM0yF5<@iZ vO-a1EyΞ,PsQl%pM#M'K@N^VMxSŷ]~X=[ʌJ#ޛT PGpO7!Ϗ@Wڳ<0up8[e6/94=57 ZGГOF  ۀ)Ә'jox-eZA\W-*40;Gxٺ#!((b."{zz@cZ|qv[^nt=y*zGdx|wqOƭvQ|*#k1D,Dy#4D4ziԸȚ?y Lwr_uĶܵN9 ŨC2^7(3=qa ͚ IW\Q CI4N&$8H4#nfw*=oK46 Ѡw/;̜\ҭԲ:9kvrPi݁˲zfzo⡆+"SM\p9?7 NPFDr3O-r;C- K2_aFk(ktʼhLR ܞR~syZnͰ0sԨW F `M H U!@R]rtBZ79I1 |cr6'kh$ΩPoþ2.&[N=~-PtG!fb*l,힌a?Bn[.^&碝swlB 7jYxXւO"8k$mv?VY>+gt6LHgp +M fL8pG =aHF!e>׈(Fx!GJ2>B]\0Zc:o`_C-1xmU-7iV ;{{g`5p]N6 :_"_̊$x=Y6w3!uDί=g82.@%n_ : 2WYBl~ d[l:;9ā|,UM7k.D9K[3hd^κu)gVCxzm(i+/N6|,6;L $#yF Z:cotb9>%J;Y)5UVSz޾ʉXr%`XuYZ@eD^]X+.~@/J&zumb6m.4nM'&Fld#$qɔ,d)CV<#)'Vlvc5GgTx>N+P:b Zu~7J\5C}Ѷ${Wh|GZ#hN-@U.m7{5p›kVhBJmn|iV+m.zlfϠyޓ5VuLǾ~= SR> #hN":bbMt{yhi(@&H=ȟ0WuH/U]W#.ْlQQFG>D [s^g$"t?ĚDE)*}#E/RbpˮêЬx#X@3;~ޠ4im|Heý^nT  a(> ? FdeVEͯ +V5^vź 1joA.܉HCAҭK]Wtp]Hz( مҚR uFif&@2nop!{s. BX YZUI-: IX?E FE(XٿNt+n}޹x6(lPT8nCcQz[JSmX "B{.de\Ek,d\y)J`~&ƃh"@iiޒiDEk',3N`ͻ+w渙 z)G,Ci;|xT"%oQ'7[.n;uwlUqd *ױ.M1OlOHg9rU=DX,oXA}R ?0Vl-wi~e 죟ħHݘϙuA13ª!V,$V;| \1NH-}m>Á 8A^yk15ZxWq|y0&uu2yR}%Ⱥ<p+ࣖ&;sMM.ա8'cVgKE]FQ8̻̱y.YKY'33@iwJpG\3QӼ2^;6Yt둝h_bJy 0g&= 㠕_I:*JV-FӽX'9g`,SnǸaMc$YGaDǫvP1) 2;tiYv0߱bT<k04"( D(>[ӺspaD&j%1j@zuVE}L!~G5ÅN 1M>n3nL5\t¡9]- r)c <1g`@eR?3Ưc}H-"zVøt()ϧZXÎjoK"F&sˮEMdc[4Hg_ u4N ""EQQ9$<@̰ T x-K?#<$:i x] CMta_˴ R\9X10)TX==Ry.NPإ0&wR>QbEZxss|ϥ!)` F @wh+#8&\PZ~@,+u~[/ՃUa4O5{J]$|g3EoKJ|)xt\LIi><R۶G0K~pWmQIͪym8f@]hd m'0+y*{Gl9Y>]9ͪ5O9#vC9>>]<R=&I \XW&p]YL,xq@XB*XxP9aVR ̣W.eL.$d*K_])(a 21GVDKK3>BU$hglW@4udrqtis g5T\hd6b̡Ez+KokqJWPFǮY90晝͛hЗ{5P FA ^5F;}NofmgIRsh9X g6G:_nudc۶Nvq?bt1 .]܌ !VBN{1A3uOc78־e?iֹTG"WCt]B%K5-ǫi 9 ,/\Ijk8fTDae$:4G ƎMޱ7tw A?~!'\JBs| m)ozÁ)'RqB.,ָɂG?Vi4zd8[%LΈ=6񫾞JGC ЩS +\X1oąShhszTn<@=3Gp!_m@=-uNTMz1v܇`U}'֗Z1}Q#sczo#A "I%| ?K-^&n 4(̅F}7qm!(C>3]`|%<Ų-;GrS rROfnN[} IF'Јg.#Ig1? d-3}n~ٷ[pMN!XgdV!FNeHk-iձ8 Ᏽf $HFMMrw(S_fZLiO acdb 0av/aNY1i|\5kQJlSfkE1]  n.ɡn5 vF˜sF!zp-KQO- ƅbsʰOZΆ /Pd; G.Xbh ϒ;Tޚ4yq>ƾp-_B~L^& rrѾmSdD9u$mB|oGlW47OxB#?y; "p+em]@I]Mǟ=<λuܶ.Bv:tK 4wnl]K=AIL6)7~tJ~o "D<6'iX֚PyZXҴzvG BSm+w5^P.H8զzV9L4M&!7*uA2kEj|DgnwBB:kH]roeGkh0s{N\jUX 0:G !>T^Y(|A^pz3x2 =RI}Z-so"2]eǝcWlNPZ; s"TyE`-1e%a廀u%~M$Ď" |{|h Mu~椚%ľ,>brԇ!I8k@~츟|8^0&QkFɒs*JEM&iVBS=;sVb3 8 x%o6iX}(μp1,&$"l/6{=u 4Kyi"`+܌ckudZF&Za757nJ- 0?3T% E<[zɸ+o4 R5/g8Me#'K= Kuߞs?Cqi?dž}^^栱> )2H`̊N#ʹY 4-Wh/voҷU'ݒdtuG_JܨO j Hˀޞ_|CeZ\z_ۓyawpʙ 26 9]{ MY{4aA앜O&o&"21!xmCi-/=FCx0my^zʆO}PoUo:&D#}ʙ No>՜i@L<; WgVk/6 mN}d +U198eT4wOU5,bq4|&Y{>ڨ9ڑZeq?u_ OܔoFe[#R)WVO$,6?_>(++QPT~L Vqǔ>D-Pۺs}._Z$twsLu KERRlm{$jQ\Apnmjji9O'% E|JS-|%k7+_[WTmʱ jQ*Qd*`ˏb'RNBv2~xUc!{O~1DMu-E-&+4 #+х|la"=" _l8~?5V} 0w+:iybc`9Y?/iCO6(q^WڷzKa 7͛5S嫮|x 4 0ص\z~}Ȳ]@DϨ {';,NW)E" ިcini!h<i(oτxFPj+#7%T1b/7M52=Ds32,*yji]ۭ;7רjTkAϕ'Ϭ#I\ e௾uzu@~DQKjoy-_F|d-X0TnEo^3VY谺ئN'YBe'qd;Oȹq*/Bܴ)2~xSI}з,Lx | ǿ&^\ n]K*OCi>cQraF`!=e؆ V-;F&hn$HaJoD14^.Cw!j3eNzQui˕g'J{܇%;bpJ E :BS&#t}D~>6iOU7CݩjyĽW5+4`d"?&k> -xScT_=:Eܘ'm] )Xch#%ӱ\Cᮧl2Vu{BSI, 3p0hm x%jϸ-'UM KkʵcB~bX":fSkl!+rPf:"$.c00kS-?s p;gC-ĸZ}Xʻ4uBϋ>lXmX}:y1 Y~oZ8NpCLnbf>wzYNM䇃vJ)B+dP{ >>c#`4^iBsf9!H*tNR,AS뾗,}A(*q'!1Z{!ʨ[ ޹δeNՀ ztpLoA"75&s@n8\*԰>xI DFĞv2+¡aprF\pfҺplmr ?^ۦLĕN%)bQ{Fn[*?[jMOM&R3D*v@`=CuSqO}MrafB=PUbqZnJ(|_OUry)_o2-B6@ͷ^q5@7Vyw3O,)C뜡(Y|{_ 4 wr0Iw <`l_gĒt˿PU#rLi0U"AR+[2Utb{,fWcSP7:-RMlIY1vO1g uctQiDZ4hn@#laI!l]K[ۀMo]|>f*:U1Di:egr[s 'b"VOzy+IcJ0o eGN@ /rrQ~UΫ˙=S${VH@qax&[0S*+4&Xǒx=9mR9rRO VQ6/`䑔 xOn"khW4޵H>08R^y便Mjެ^_$?CuDz uc;ߢ w ʘyZ.p VVKmN@CcFin*J|l } ]BrG`/^ڢ;eX]`Sb-:ѴfmUT|2_cu @D.DRwÉ)F Ծ=9<.l*o3IRȤ8],mzŋg/{7q!nSw:p{*KWMble۾~>mf,!:)F  MJ%Z|]R6.O--M^K/`b9aI:dyB컐l$ڃR1?Y]Hiٔ\0RcF,сr1 OR~ʹn 2NU J ֩Mj}QaX\F/jPܢzR=@qS3 Kt3KeJ߾vqd2'r*1yfCx^𹿺Sy|Rn׃*sqVrS!NJc"'G:3b=#΋Mibτqs^DzvjB /R MiANޛA>e\y@k4,Q|$2C@ 7#hm(WoV&V,eliN\oپ(qnBKhtw Tj1R']i2z5M}}ol]EVmG [DI̧ #KUk-cܬ3JbqnFKj(F2bO*I2Xo[gZ 縵PAso 2xHp/ۀ`º+ 5ÏOzۯղ=>RmSٲ~m8GA97|?6 Z&{KEu5 BswݹimJ|r4ӻWjU~oFQ!/ d,H=6.9%]Y:eH~;}z 4]qrBW<eLkm8~o]cK{O0J|ElR-Tݹ6 mѝ0X M^Me77v6I3M&mʂRY$~\8W ]npP~G'L`L;j郂o /CEEšvܼ{X. M<V{jyeRk"sf^TTgT">{"!̒>rj5(a%U(>sqYm@,WpɎIؾZ1^\g>ѣ1re{;}l\!kq37 ;#!$y /-B`qA;,XՂ{Kx4>)gΑnbLc-K b(gE7eFI(AΙ =8ڎHC224T1 ՝v'|T,{);.4%Hۨ[<&<zkvQbt3#qWsJPFՑ(D@zꑸZDzgΡ kaɦ'3 XC67j/x>ӣ7BV+J cΝykGh mLp-Fj?e@Ca4_9ԟL^9:$cg`::w{SOG3‘>p:X(2='m 'lUb}Uڵ7WkoLcHx)[)hkRRX]KG+׃{9 x:w+@ ~P]B➂)t½-OlH<@Q8q<ſ0cI Βep>tH 5TR_M,EK䲤0NW;Y\Z+z<k}SH짤FTAaY*N?oO&揈*]Jc&w{cpDfn@cfIzfJ4 FyD Z_ɎxeS*R5\PȠԱd[a00hw{'d2)/3&7O=ҀTMKYYGγ(ea̖t"N;A2.Z7kҌ]:;~}Xnkf}˘g\G,ٿ@&IN<X '.@ܳXq?Cʴ)O{EOD {&iN#@Mm"yhHWC֟YW"[&m볌{l~ W Cu@4t-ҙx@EJ" ol)US!NDOROk C4?Da׃ ]s*{5| E]lqGЃO\7FT)~u>6ðJO@CހLu[ {*ٌYҚ@E;Z,nЇW~YC SżwQf ?0Ej/Ɇd}[(lGK4_4;nBɪhl&yp\KaZ(,v8t*7TIHCAԳxJPF-AWI$P_GrAQW9vf=]:ʇ*&@qp@ *C~lL7'ߖ?Х ln?j΋-QZv%{Ԅ+^Nxasx2 / BJYF EFPW^-Z$B@NQS1G4\`O*O ?> t*q1wq=5f@W|~)fpdKK;p/xVL$$Q6E\H nozm KS,Ճ+&_q~Ӷ[0 GS F&~Ǎui(S|+x:nk`Y-je018A8%jlbr^آ:[g\mu>Qf%$@E{LHg;,ZS=vWo7XދZNF{r oF@ytH @1*d_r<Xs! ns)G#+^ՑYhk%G۝{v$0\$b_h؃Uɪ p+B.uqo7Pe[dE߫ɄwWvE@ֳ?8yo[8ov/7?SF.I+p] =.tMz!DqMsg9? C+LܯEFCLArj[R} 3a>oXkX+M;܉F/%:{/3Ё1(ɮ]Pq6޼};0$u@(ehvI+Bp*!k5=Fọ^`>꧿ Pt\a3ZTuJOCEFqr?r.xrks&H)g,<}w'FkJnh_A5ckL4ˢ6;<``.H$O!fjWvi]+l}]/Kz^14d[iы`6d Z]s<[}[GvkoYe$`΍k#XM):GaD`S Dy?qoRথH5cŪ4!ЄsĶɭ̤'nCN9OS2KTvcvOT$d'y0PAҳ@ rTͱUn>bVV=MH$^l-TrX%clNx۠D&((':Mt|1Q$cu?ҿsi6`3PFZ\it"$%o2(}P{#Ń ka/ )>$~4 I'~ieo!b kns)V8B ZIz\ "Q0zG&]R.Sye3.fzB-6wĬ9WV@ cVuG/zjL)#~i;iiӣ2K@n5o<I[) )jD AB I/ &"-Y3<.}qql>SHy[Qߚ윊4}*X ]ءi{* A`| j_]#1$: R%#~D@k$/:_I5 ? 2x<E4"օ Su*Ze P,!-3g[d3nTȬGgLz6Ÿ,ĭj2RAnND}Lו<8@40#զrڅhkP=7R}pRApzCc.ouxnS,#NȲڊNN=! #yg [iao}=^Ʃza.k?+wߟGažUnUF Ǎb)qm_B:Alyf+Ȕ4 ;%l|wTrU/59F[1(ᙱUX*^W,i$^_f>ĉJ]$_OY›ٵtpNKEX5VA[M3~e ñv⥴pRY7\.ݐNHA(`_׭aORKǂc8{3G~6s6譖?8Ϟ;S|Gc)-r>z 3`>^У\?e6f K{S#*qlm'ТeVoъ~,qfб_3{ޭTk{ 9}rnH&pA=ӥ``,KY8!i;n[JcYoXGkiQ؎*dr,9Rj{& UvqGS^"x2H3&#*I(9xU{f1"9 ԍR8r$| UCiBqƯs-ꙉ%c=:XJ̑Q ǎN2YPAS&lT•pS(?|ZWE.OP/]Y`sӗ讨Y?̦tH F3z~&G ̫4κC\(3 41UohkzĬ#Zбm{J +rHc={Fkٖ>T- y(SJ+ep!ՠ#EG-eN8[FX3[7|i~7y0GqӂEm@NriɪڗvSht^&@'S$ݏ^5 n~+fإҁ 0+]__^,#/W>L<];HR5s%A(\yntYQ 97@T%`O=>MlKcui_wsƔr{4τ7෢L؈ -hBتMN~!3w+y$E֏?~ej(\z)eayfH4:WYD8.!~: ="^"a"%\<NpZ[-]t;qR*`}L#M3yU]s9j"Tς :c؀WPӻndMK-?LzL aEY9􃺃bN<4Mv7OE0% 8ԕ@+jP=Xk1 NWذM8K`-^UWO Bqs ֽ9>YrUmsE{P~ !Q#V Q}K@] ?9]31}\V x]` cP^zDWva4VR{|;h]]1%B(~S+}'=yl5)Kiw2z\K\5T2Y>-[i4+_A; 46j^yݜtxTU"HK& ЏHBKߗ4eWgSt$UF&#,' *:bql|? B_ܔL &K1:auݨy_3r'op >f Fd`uw-i0gFmnNBķ]1G-JyxA;m@gNiQvEҝb v# gy!xK3Q6Zpj A{vP45sKz}Q1&t*! $Qk|Qj<[NIß8ldpIƅeeg\"%1\n#r*x /D5ɯyU hxa&GI:s;׋*Mu9+,:egS[ TÍ-?UUiNX=IBm&+F͛ eAAIO;/5Dn=oEt%:~ƕ@) V5;;IY/"R3 "iXpp <;j_ oH E9}̷+5::>60!x. D0ae͹Oyu^…,<#J4rS_6gLtĘ)Z›Xm0)eyGw%fw֦P *-E)DBb⬇-[Mi}y "B>9E奪P'̸MH<@kp7Ч p*$1cHDgHBSlb9 >Y#4ḅ z\+O WRD'P9cBFYqޅ ;?4=!M ԥ֟f,z6qU V]9_V v~NSlpI{ـXk= c]d4Ed[8@t.\`ѡ%hi,T򹌫.xF[s?`0)]23֩Ч}Aw#ETXK:f'=$v%tFad )B8R5?;(@#@ځ%yNj׋\TZ8W,mN,LXW{Dѳ+grv +y;P>aʹb@*Hr@u*~.]i&|?l$4m_r,|fVBqh-RDKM Y]h=C }ۂFCu +u KtS!\Os5(d;ƙl"6F]UW$R0!Va`f53Kk|~3R㹥u'^Ob0])R5W̦NBeW\bG, xџyV0_kIp\{lsS k/oCIle^sWE@AQ㻼 Sد Cz558 󘸂CF-Ͽ:{TǞT{Z@Ƣ>?(/cV%.\fX^;/3. RA.#ݰSm{^ԛ͠,JauB 6* * HNV$?]\@{ Wh2!Ms7D3>y6 g,&8FNoFH}snU b C$sq]fj6!<ݨ?l>iՕҧn4DEC|Όu.ޱig"~s/Lx `i>r$ijaXh4\`{t]rMFQgf l|C%Ѧ re)@D*+0L7<J='&kQhkM5`=#_6+%~nvqG1cH%CA/jnĶ(? | A˩̺2hy~;sF!+p&A}Oh=TnS[)+i &?r~9_DKm~^Ǯu0-ɝ=֨>S.#ۏIcCbU J3 --AG+"4 P)/QNo<# FwA gTS۾gkE{s&;PUaUBϽb 6@~jeoLWUֹG\}*3ILրZ>z?;]M{ Jz6**굞N\GGdlw!ގ4I—D!#N\gĝ? D⯔W 2+yMfќpT弁စ/CdLZ0j+'j>QצISv;w@*^zF#B_@0+Qi*0,BճE~aR?3&qTkX}VgG< p!s JC{M52&pKy l^6hӀlvVI;o6YU|#03f(9:L&e/O^v~ދ ./Ȏ9CQT=kxŬoFehZLwD-8;dz1r$ 4dzQOa'H2 63tĽ:MP̮&J0L+>4Hع#}oa h3:9g=g]kЙxC&M0:w,0kg#aD[#Z(TqZfq,7mpUhp4|U;WD+URfB)V{-4%2W/XsG^JX#i F/o#<ʱkߞR}'TwH5.!I")c3=}bZk4xݟe˩~`0Fma|phHù*evc%%m 4 HY>!5J7wFlTPob¢N9֔**zdXhsU~0_r< q\J|(=A K^jx鰖'&J!UW =0(?iCk@bhb~kJ먁P3f72 A3ת7Oۢ :G>hn2yq M_9^]>{G4prBF%j$|GⰥ g.7hښj_dtBݺ$-Ʌ\UYP$tVi?cz\m|b| aĚ[y6ls ./o ^JZ .ђZPK?-d= qp"׶elwC.%O?c[1sḪ|Ǒ^1Zfp gϗl`?sѠ+ E! gYFE˞ڛiN:W)j% 6]uwxN`q&HҰl9 f&p>wQ@ E?8l V,ݧ5U2oQH7%&lgFnDaߙjWȰ_gc4Ngy X%Zr4<S}_CPA~:ٺZԖŪ#a)ƥc') 5d"m@]Xk4R\lR{6ٽ}/.- }ѥE*o=]0Ǎ*KqAt jVZUd rjv-HEaQV1o3M ;nV$WvmG@NvP]X-3D f4$1V[UQteƺb*(­onXvxv)n<&pt3NGԑ7>΂J9lG)w@beK³~"phVO90^{0G2'R5Rd| '1>l&LClz1t=QtfVdAwg wKYk .v|'` Η«؟(qty` 8p^4Ҩo܂ma_tYKhI8fF'Y ط v=^܏H1A^崚kIT~fu=XkZJhf gGv&p5v""ML׍pdIa$%22<^T0CHGg ~[b ,lMwL5=8a(r=]Q?]9 ^zS*T^/k͜?78MSiF;C5 ,:h^XCVi`"I7ҵl;u+Q. zh[AT}|ED'c}FH3bqK?'%&wK4J`lʻGH\46:Z;3 \O;*/+JoFee3r+GXa YU~'"+: 4͉9aV#JDh(JLDƪ["qߪ#V18tȥ\潋]#o )|v\F=w/v|$39c_ꑴ#+Re? ,d9Kå*;?PAc; -yR duoSDpꗴOjg卾i !z,\9uȘZ+:ge`̴ϣ)]dt0E@vX]߳5uܧtPo 6vyVf8g%'P[?d,⻊6 _ֹC9bhmIn2.1 7R!N-3Qi%=߁L.#AQ;V?Zhj=zFf+rAO,l':J OMproU ^Wh6,B`d%ޫ `᣻bWΈ_kaLJ\ØReO gA:pn y"#mu/ݵX*1 z"o+ ʳ+v-eƾm@2I0D|ӏӧd7OYUEt[T:Rh0ONX[k?֡4K=b>͛`IlY»!QLŊ`_B]v,m| 2Q}v`}0c!JSmMdLuo+Vc6a{B?Is055p){]s֝k60Ok$ggdUH5* UHæw4UEi }+ْ%fcCyӊx)Vofb8 *v.$HdjbǤqlmcNFYv DրpGht\C4ᐛ}k2S\:/vPW\*ЄӗYѰ7«6j꼏];̥UD_q 0ů"- (?=@DeӥnA߄1 =}70`zdn}5$n*| =Lf^y1@>_0) QB[MV^ ay,s v7rZ*n:v۬gV-P]}䣪q؄YM4^"v!XR=#˦!U e-~9,lۊX|^mc^]޸Y(O6+ 41ڑ!Zpl Ad\y/4=:*oVJ^a-&KI\^ouQ\.eG6 =+zn86wH|4v QE^{nBV'$*%cO6/#L< m۞}]=5/ xRBV[PU uɽSߠHt!Wjw{fHlM.z]@?@0rgzxg|DF}i|Ădx-g/mU/pyj H޶4p/d wraPC(jo(vKE%h"fBK{p'D?Tȡ.?sdʖO rv/UP`^c͝uAgŕ6Y̝ ^`´e*igm{tAŻS$ʉljCw Q7/7KW8q ۝/ǔfVÚNB]mԪܓnOpFBOq+.L,{؏.+d=;jjgO*a#Fŕ0(|mTp{qoo>#nOJm%z尀 ɚZ;ͮCM89`?X%F^oEָGP< rJ ; Yo)*#bI7솷s!q]q9qd08nN3vşo1 ;8ldQlE$J>/HJe,~:g <#vW:>%Qb.CjnlUpü:ڟ3B{Dd"01A6{=anUZ*ƟK! (9H+ݨg+Wʏ+M8Z^,B'#Pg`(< v,F0{͞YK_t#,ٰ )OC>PRFY.|1q\6h t;*n.G!1$(:geֱ[(E—6 _"ָge Sk֮Ɏ:>XE}A>pЬKy pʳE62^\!3@Wƴpss(Bkl=9t7/b69 v*`a"@b ÷ t2j-k7 4 ryd ln˷@ߴ8􄹫e^b eCF4/Q\bUÝBPSuZ `(ǧ[C%@4n.77DUCMD'hx&7Jl~ @)ĽҳU *woY}0l)1 , 'Y ЋWj B!v&fA^1:.0!^MX{Ғ2vA=fݝaە- z_bC}9;  2m`s8wnXs%ix*ȃ[mqh?W,\mh`8nM۴LxۯF/;I#f*tPzwkQLq`==U,4x:qO0.;>-,o%ߢG8tywr:\E/qh:=qa@9CV-(N-@&~p6\~: zF%̆;5ʔɮxc%a jIS.D cT:%;)hS^4Xqʹ2*=BUj\e~dsG'?j_Es] *!ȱsPkbq(׉@%,;[ߟ&’&8ڣW j,h[pJ_ kwb9O$B5(,cd qO;+<y^sXbgh]ϢFÑ( `${ 7n('{UZXrHԷs*c4_6ĢCkaT~0Ijˇ"g]e+/@,c_*U!X=F "?з]ByUs$2a #Puh0ͱ\~ &kXAO 5"V,oz&뙂JtûoA("xk[9.#zT ?%$=&oQz˚j]$5Ps4O|rk7nSxSTwV6 :exqaJdliJ͟Ymq*Uc,`w*ө@<) !S:3da {{/Ҭj ,cql}zHVnwb MwdFv:;2)׏6U ɱ.̪WUMVgrr{ i&xUx \Le~,sqG{ȹ= MI9ItiUNc.Uy5vEȆz݋F^_(pYrfY@)ߢ0V~piNH2X'RShbGuz yj(dL~^lD$ =lИ~֗1ī (ތ{ppC$ Gc<"sBF09@{')5?p̐. ɳ7+ʬ([qe,}5ݒ[r#Ybia16m@8wljMEN0N7sl8ske ]iiz ן<tC}H0j BUSyjjrjoh)v:xdS﨡>\64!MO)rͭ8)R%D?tTC^)Wdɦ =OO+> ze}3oM@R{ΖD(;,Fqv%, 7k妧{dj3WaGGp^Xas ZT]O1%k$3HbAoGo] MWQC?nsV{|h\nH'ȀU^Zmv~B S莠dhW޲g3X\C z۽"7]*PV8_EؙwT+,@yE;S)6/!GDS[&r wr UڄtϘI /He\Z-FpvQ`Ro Z(g#?#qq zWD ?I A-;|ȁS. O/0lBYbdFӃШUͱ?Cwe{v[r8DȂYH[ڌӌͦXwqup>KT^g@ҾmIfM18I7`J,B;:^nq˹U"q{O^3Fʣq|EX{ϲ|F-^.Qȧ#GGԈ hÞLl ["d%t!{ιpG64PQ㿙jgjJS{d׫YMZ甙S`_DDXs֕[]6]@I]bj=l*$;&|/ tXW:WvOֱ)gT?ЇoУz'~`[[[oyq[~hM^`]A vANܮQ:YW;xq>t5{ N߭6d|Vڶ[qwSÓRw] TS:Yds$Ɯ?ںZ>6|cu"itf5K;.!F58.{w6\U:y/,9Qr|0GW,ax;dĩYB <ȡu0{ ybު!ۜ[ķ5b2~new@it΁@;%wĺ=WzCD}(IESL +j[CcTgD8b1HRf趂8nn\[;mZIuV\%d?}h ϣ“No5uI${`UzV6̑ƀwffU0ks\@Ms4vq|.95+Z" {it b:0bRN<ЯPT ]F$!ng%4qϖElsF.gւe1|?*S0BS.+ `'=7^@y"ŋO3.-чyT6д%X G\q(Z]ma{lbbF'bc;C8M> L n NUp1eQ8E{YԥzA·緋T{~fT֧f]h N nOd@8YFA[(D$/!_#de.O wSaOMvzo5-n<2gVH(tJM>JHc< 5l8+_;K"Z6&.cK#4O@jq羷[dV_Q'/7(hƠ/Uwަ`w_@UmY#LDؼC`(t4!rDZ*t-AخgGC|Hx;>1>ҳ{8qD:gX郖A7a ;,Oa&|>-y7eO)j֏c\_xOॅ~yZW5^' T}ҐkMb_$A7A!7U%@~E*fO1{ſhsfvc_ZF›_yMMlXE#%"('bgr>xd$@\&r>j(k~N~yP[wP4&qNX;0S"WULBp]Kl~7qDz bڙM\ ʷOvU\d䨚*$Ȑ(WVv |<}] 2Z#V(ڙҰ9uYHd1['jiH0?7,\V[^C' 4%@62K.Yͫ/bó7&CBޗ2#L KIU~SɣՂIrԠnKFN+VQᢞ j _ J KlUhݑz >Sa@OT<'8,953F' ]9`í4f'A;TGYc3ja.k:]yʬ~ ;_H*(zԪ%U~4M=- &U;yޠroV&(>幜ƯLDa3j6g!8?Yh:aSn1A5[!s "Y:vaA& Y-D3gAW:_~øLioGwiq&"gqfK!^=HRc9aEo `isEUnG`ϥ8>'D DpoK5>7UL`^K`ޕմS礄F@:XDUsՏGQj q}: L4Z+}aְoq^N#w@NbgzG &OƗPlpZ+~_?hn9oԬE1Ƭ_ᢖd_¥ȏ^פ4uPjPϲ*5v4L'ȿ7p*mbjܔ~0iwT5'/Nѵ[et5;hǧ6=287tL0[)Td 0hGLf\ (Y[CuW8ui. 5vH}w.ZP(t@;]~]rz%Jb9ܤH׾p,Ɣb!.PZSrف9'q̛JˢJ#rP@Ixj>k}h(,U{U!sg߶e/cmDϫ9ḙ0l)ېB.bEN3׫6`+HV_HiU}Cϸ;c*(ʣLs([Ž45 @aHTXי5Vۦs~3:H,ǖT5\*hK!yDW|DZFy w:&pxt84&(`;eݩEBTSDwA7}El2pd@O(6Nz~;v]b]x|Ꙫcof_k$%ǔkk_T gTMt|Or~(&κRIMc--&C=ֺgYZ1W~`OgS@; Vϩ":D+#(qX~kg66PZ =uHQ;η,BˌI-$|Ҙ+jvc&%9:wWOy8z<ŔW= +XrqB2Zn:w}+l%EE>襵It@KO,Iq8 *a%v(Pa+!蔍Ai^h2;C!tȕŞJ{b֢F\nw#+6ie^nv{$9V%1dr0ihk*EkZ*)ꋳzKDxLl '\hm W4$v k@| l&(MϵQ;^$5K%4o:_Z퍋gWEr78Rbww>y/pl6"M(믆u}~Ǐ;`,k Vtgkª3 W1$CdQ E|%u9`vE3nIOޯ z݆5/iGA|0v_=ۤ8*$jUj>DTLu\P[0\ŢNjn@Κ3qs=#m6&(Gl9|WdEWL]ݙ۵(Kf5/O .)!:LP:|1}(SSHS1x<} ]5:ϬG[{: \7´ֆPYoLx;wߤWsq@0%'\Ŋ71 m~}Cr@AMMOW5;b$Oǝ'$s ˆVTUv# U8o, eg*}Ajzwj#֑y2nj0hb uT`o)|vC&k $O u$hﴠڮ!;HU+TD/ 4LQV1`HZ/])jIe""({!~hdŐls 54pt"yM=v(2VHQfmr𨕴)8<rU2!йD2pO4+4Ti6/R}{[9InIEvȈؖ 2[ec<\aƈ}2-ˣ>|wL,8s7lu@ZT-yܾK4sJGⷜ= 3IE-9#'hߡˉk4DMyZ|FEz ӯ*Scxj7-4M&w_=tֱcX]WhY `%kJ\p*w('8L #;DT$qefeZ4b.UݨC vǞ}'yϰ m6/h. #xx9&n)92PY\7߽GL^5Kfg@ n:l`3~ED x|w~zA:}.(&?F;7ԡby+B;ūOKO"`/)xHHDJ?yB B$\]LWM~S[1i.-q:$b:8X#F^؟dƷIed؃6ܩF_ .хbn$֋g(p4:>t F/Q`oy`wYumgo$&A;<%ܩH*g-T$@^ * yŐCJIg=Ç@B"XUHfJ&V/uڧj9ȗҔ_499aiߜ's',ļ `E~V1h?'#(q-Gr[Yx^T懶XjR V?xgW.F84!EJ64coz8rNJ=}MuGQ$9 QTޘ;ipz{O[ڲk09c[ZO9dI2Q̫c %!.kO t@`/)@ZVջ6Si[|a01 )MڈoT48/+ U7J8tDɡ(U9NݑB>C¥-C\5&݁M ^yQ•׼`Vp' )aS$&Aozn|$Q[-Q"je{t\ <𡋝OU:51ljF.PLfFI e+~c'? '0EDvuJ!]aḳy.NɄ`7.%#$iIƖ񨾁I`j Iw3ңMdCW" -h$Qc$:݌4ss=U57&?7oHVտ"A C-#my[R}SVgXqZw{K{>a1?6x[,*ƭQ-}{\Y?R+ri!w]\eL Y<, O&ewSh7Oނ(\_lڣI'&aϘlj-(s8OIf6ږW4Q!VtN_y2(  wܠIRT7w׉AAANyߛNhRzxw%vsA&◎K0d#D@e N#s[V~.+)~ Ǻ0\(o-\vLkmWaIfS2)Z]80|ɭCK5ۆEϏ8:dISOEm,<ōuGd(qy%k kP*•@{Q'y=t//ℕ;sҞBW]8"~7 \5{k ww1;nYtr)'ʱ|A 0v=8}(~; Y.'JPڶ! bw@,b!a5]zמG/R9ND4XM%҂WN:ewg+w *;22TLyq8a3[evoׁAme#j2r*t߭o9q[ ,nm{\ᰲYNHv`Ni(y#mhƐv;o/ŵ5;xsXDEvYXѿ͇Kotx%)`ݴGve‘%m _搪~Ĵ]TZ& >+x~cZG@ȮͻOd?ڴ&<D -돑;KXf*df1Pd<3&mpmvdۈ)*QkINZsiBi&eA۴ӱ$Þ+X+H9k'QFhk];C1hWc3}ru@5"8QV .&|yAARa50 )Dպa>BXNoahm2YVw[w+5Jz"J7A+kW亊w_~jݖGfL'۵uwzv"hS5h%&+gBEP|YF}O./HEBvd "MSuM!ϾEŧvE:Ϫ\&?*a6EڔqʥêJkBWV]g%Yr); d>ĜPZ bӭ,58dfhLs64k8nxsOyP˅ q!=p䂂X s o#= \P kt'ѿ%m -z[M Iܑ1%J%?1:Cav 7ySb1Kٲ;B32™&I[b' X•Fcμ(S0P@kkH`d|"T'FWjiHgtI~G8hE= ĨX;wu.$]ӎ F{=)+ll4ESn)PLeffúO=ŮN+Uf 6:MUϰKoqW$ ߀WhI界N)1SVae%{bor~G^-ɝwfqt {lAYvys`#A?n,CB,GٮF=b`%:֚['07f =W_D.k:QCq̛fAGS޿cqd~E)QoT4_-ԡ2.Tz=7`O_*f:Pz>*)>d[JRyE 9)E5%͈(ƞ17,TrP:jӲ = #HGGAI :&4TZM~_$w7zC.cF_$Y?ίȊ/..u ul[\$+Rʁet$~tQ#;  d~5`MN=򽲝qx%ٙF}{%~.,glҢ2rqW0NRQsc%.zBFDwY%_i)Ymߵ{c+Zb_nMݫC@ t*;@ lex;IK_] =]E\g‘`)lRt()RqVE.#>guEmeбl\r t1RE~Ik8ҍO [95a,j\" SSq\* T'޶\y`tr{;BOOSfE]ILn.m?Eh$ыSo4 (m}qN;Dvxjw,METMw4}3.GUTq "f35ґdw B Z//ܙE*qKT+ZpblA@i.j=]cS>|ۺ'c|*l:U|Lh0m4lEOQpR`liscv7lYt˩ ="6YV|NQi;cɪcƤ;e)ч6h[kBulÛ'OMd/& %Q^3דg0HkՌL6xaP1LUprWUU2w]BVb4z)# (hOi_r(bJ3Jp@\jKZ|G2YR&>rpExG j&iu}ݫ^A^+>Ċ>Ï,u*8dAxv u|*_qZQ&J)beO'k ܮ+>;4M5˫$Mc#,1)qsn錎LR 37{7¿/Ӟ6M߇ \6hA)w/R[IꞢ.Qq|PIt"}/v֥^ɬ/ZK~1!?`J*7[uᕔ]aD,r9C~Rs>G+mq$|` Fй<N0O@\ܛ?f8fw E6D15^놑:,t!HSp?@6< 擣lMJ$i0j2I_DصvfS h7uEHMxUF{ N-bpsiNQu '3-tvTх 6gm[ʚİ̓)u"&^pɵeQ.l pYkVb`Ԋ x!D dԀ [c}O2q1c7N>@ម*̖k*87Kԯ`|{vգ9b`NIT 4><},*̉-L.kNDA=nX &B\u ,EVᚘ?ɢ>k[>ߌDeYu7RFA.*4o=א~)~*8C@ R &țOx$ 2ӌ_ O"~i9 )R6:DbdJl"exafTOe;#W|j{ƌPcI,. uY%Ռ7,'\AA:_J#;Z+ JdΤ4jvZvDZЗQBU 쐽y?d{8kYǔ6Z*M>J12_LAdffgh.TM"H )=TUuihvba4)袉ڥC 5-~gX-7vEРwj@ ~яf9s_~uq@P?S俛㍻Y wM\4d ȃ:$o_@ݳov)mU]>v5TmjBڟ{W.xS^hhtC6o:ٖzzqHX=Rr @vPRRM l0+ Ov/?<{IWgKÆ<:WbehwF_V;n/VW٧7+аЂLfDLf,_ZI5*ATcEp "{Xia }<mU +m[(u-k$3(b^v4YqcK[ 1*6lޯ'0^R*LJqH ( cT419(N"Z/$LHN-jLf!Ngb\s>wXJCly㇬`?i'3K]`+ > >MJ=Mbχm!SXr$"e;,Ͻ݈Cë *\W+e$cV2bBGD 8[/nyA~d ӧPؾ; Y/sº.qnhey J4A1ִ Q".w4v&%0+4-w&Ce1cL˷o/՜HKZ~Ǘк/bcxtܒ-rמ8k-(3tUʩ.M<0BvڔS]g=*-b?ߦ}~{w`Pc_xp[mY)ns PXw^ e3E/+6PQT <_dcGfE\󷄎"t, ~ }H0hP0'l : +l=Pb^'E!hdQlh֒OL:s2,PAkX~IEP <\`wژLi(&,tq0-!hkahb NPQ< n?ngy'`8wIlZtrhBB C77Z"(ԟI50>tx[Sœi!;p 1!$7UىM^ 4(s^*7\Ts9>F'<"S>,z}Z1y Q!qhqazlGTV M5=yMAbDc<Կ6.}@k/#BEm7Z^qzpeι}+/jpy~K_|G~9:c8Fd6({9I!:eL;ÞFHS)^N/Yxq=>Gf Ju>7d's^Ep}cAqLg/ M ˝ .XN-ο? 9aRV%mYHE,ULcI@f8Ooz嚏 R#j w\ P^aPτ.y yEȎrA0=sA=+=Ni-^ \`L*hK]\FhZߖ$,W])x[\~/f@u\݂P1 _cA&yrjR"SLh,J]e>~蔮&G3wRmVM`BHq=ӫO#iq澅/j Z{saR=efQ_.s6T<1}6pS )iE>:'E<9dW6-Պ)A37^J9LC^X &> Q@2L* JfszTLYh[h׀0ގʀʠdo3;aeGHQN( &Kb9.bGf`YX ^LƋ6$|D2.w,)\73Q҃{SfuݸfҔL? Wos^q %o8>N=U ]=1hUsXgGpl<?Hm}-N`'`R+L<@%h{Ϯ$e_5a5"zم ]ۿls:%Pdt͊18yB)4PrB/[춬L6AC(]z54&fliIй'(|B?:)r]f^>Π i1n;dXmQP{=53V[-4J:;9`V \SHbȿb Qu[ AKjy߄圄0͔*LJ8!ry7[d32)_=CyĔ@3, A#[g9?rW ] C-iUfo/[VVіl1T@kH**XՊ+o Q ,wk -ZcdTnͤ"9iEq>vWӈW#5VXΜ@xT.ʇKob:Z;c`z, =Ov3ʅ}K:9ƉpZ";5䶕fb-Fk}ӫZ!H(rL>Q,@;%gMɣP#Oϒf B+i _ \&,4WA#Ϯ&,@{%EOF0x'yH.OI]i_IsE7 h3 Az놩i*KrByt=v d+luc vqi׿AJxTz&~oJmA @xi~p",@Q0xxb8e6Uc& k,t 7SְJ ?bȰM<6mOǓtfp_j)dţ(%Qd D/yL_ oKlثܤ$cnym3/;fw1չU55+t0DԌm?=N3ٵ@%G/Ov) jl;֥M G|sy@=!׮z:f4k:&@uz3ڵvqsr_"f4YTG'&vM>@ "(oo hT>#-)!Cqxm*ٛD .$!0w Ь"@r{RYTq"ɑn[wq~fڇ,EUt_7CdMs1@̚Ur6․^DnXN_suR~".@0r|ӾC_5}ohl;x!˂խ2OVEeb$|NPE-+y@pvyΠ7#93 %=PdN=W~ s؉q).ɄZuQt/Gkf<"DҘ%\>tN4|"Ya4B;UsE8xhp\19&?9~hi$ {Ipu Am2"cl+MdJQOp@cc9Ȥ/W@QW4'8eA0s}; m@Y+srA6ha}t0 [`wQĴO0hrI;.5ic"Z]{G\5`6.!7% e;)@JI&h.fS7MUyw%_rOC9aI`P_ӫSYS V%?DS 'ԚHjq^C i96 D :0x$D>iToy>7( ,L' dmgBqUpֈzQwR3WQʅpDh qJo}O9D<32`r S(D8n1,]MVDI)c:F7h#?`uq`j¶Ruѝ|!p<ܪDUO(RҍR ,\l۹׀V*"@_77 08_s7w^SUc]s$CΎf h?@ۋpt"[n" r紸 "1[7JJm|bnx -7䡩8e{g~~pD|hBg\ìjVt*TiTDUolu覢}.&v""x 74 97ә%ɹ'J661mډ%j晔3PVkҦE4#T'|'|j2z"S)L]o}쪙8 3dZ{۩`lN 9 $C9P9ZRx{Aos<Ӎ L67,[ZCv7Xi¼` yF!eG_ ˴ AnF') r7h`Imĉ{ ADp;*+ǡE71{;`(ԲqKdA!KnR7ĸa(2V:wDX$lJQ"8e "Y*Ys{Y٣*iw05Ԫ_:-L3OЇ^)1]%gb9$U%Vl{f6蛶 A6K^H/J=3urIƘMt}&$^Ck5R0vHIq"[Fpu.jYw섣2F\$3=aWa9Bm^by,PcҚ%eɮINnA3w!Ni6 *0eeO ~)2[ʐk7Zcm?UAҊJF4NÜ=Pv1Mє) KllP1E0v )sA kClW\ۮj^0wzLC@tuU&qOX V6.lrzNLHٞpOTڎ^EKlCu%'KMQؠ 򮣍Z ExIO>s 0E`1ɔҽVU78M(P^Z(1syO#Fh4Ñv@$G0 Ȃ|D1Ք7,77\VV*EjQ1otnl^І̓Q^_Ow :W /7tٖNp!x!CBfUsiQEAY<9=dU)ӕ^>eYX|/NUx ]C#}H"!rr_^u[U8!]d2g%0`Cxq Y$}qBF{W54i{J/ 2ºcy\6j8 k ) -F3$IfHma2 S~Т@ ?E^V$9u{&k]S֚#Wu5qx~th=s E'Oh#Gʸp+2  VH>+^d_/;  T < vQO6Pz1HtͳVNDŽF."\:ִ0%ȭ}l/{Lk+E f7/8_cqTGٍ8+_H=ՁzU{o'x+c:7s p*mXDi<L B^0I.cm8 ll@F(IES 6 3P.0Y&\Yyop 49ILPJjׇ|7#*2?񌫓9I6Ҕk=+5V9NS>XP3 #$5(P|]H*'WAݾ6<ѭeg>)R* b[aJjMj-'Yճ?^΀X KR[\+S |4&7,xOaL)da ,?wT  65j%YJHQ{~SB9A iwb0~߃}ZV\f %\{.{ :Tl*( v{VH!rOMJwvTu5? Ix&1=$&N. ?+[[n@wH@ݟ0V2l;x,2plƘM~!.Kd"E~BQ-J{F&5pY4v8 TUr'hk}H7p+ẶⓃr:ww2$Xkΰ[>wd (bO f`yXu\ͰI+R~VD8#y6](,b -V Σr@H5C!=o1c`75>S;J#,hT2lX-w_Puk+\ޥ5!?~S}fg} `2MP„do!FiZ4IK{Yg9CaTC7ԾDia2=1諕?boD#JRAG)㸛z˩6IcnEw (J IŃ 9y4++Iݤ!hʕB,E6dUa<=.Q6d/qvގ3 9)wբ݉ىF'Gyݳ=N%*ɻ Qy?n\.ކ|F)Ze;Z(!^{.-6 !?IX+Bu&Ţ=;qeXcP"E[4wID+Q4-c(n0cn3tBѰ' N !uŤ= T15[,xc=U=`'0TA_#.IQ85׊XQZ@Y*PL, !x> - eȑeR"qwrЪ7]sipBBwV^='2^> (B}0*v>#A7]mIЈ6LܗGeI)4kE 4]Ji.|#wv3}'- RAMxjyPf$'S"oGHpe9aûMPEXߑ2fk\Q ݀bWd"RsyAHiz<.e`ᲁb*mkiTa!I5KǷ0Rx>0u_#5֭+vK2Cw/K*׈A.o:ԣW+h|+36n;Uk!zlPBJ1#$xö#m>qp؟ΜH]3-c k)]!LX3_ieT='N#H3j3ѠƊKΛ uB95M;m nޟ( 9o)X}IbJCA>J]HbH2-3+@\g$i [' 0ʆ[{ށZl8uY, H- KhK^P ﶞg_jE>h)K4+ya ,B_^Qpe򊆗j*7JJGkZt wGvK{(J4%7z3eGT(aj}z0#6 X{1qcsAՒ7;4Y$ ,#]HgKLn(u~ dA& iWЯpuEG+ޯ#3Vd +TtBB!'7X;@}KUNA_BF&yMXV<(`rU_-O??!OmqW$OLh7NQ4 y +SL#^Gj$Q~#"09ca{LIh.b`GH V:Lj^~\Nj^,Ʌ~B4|_6<=)⏫AxnRh,HE&E< T,sx+gd3;cVV6O94-7D ϴ]e|~"i\R ReTLiG-xhYp1zbw2MUfk:HCs\@XAĕ%_aiIj>wJǕ?PìPTX"% qW BÂ]'BmUI8'ML)Y'+_/s9{)r.,u,;0ɘrydhgVMVTSV6ZHVBag_)}~DS+@]Q}-hVD,\whiM|brPiPx˲W}tB۫X8~4 nZʷ.7:F!Eu>>/h;9l9Dy,]Xȩ$^w[$ ӡe="Z3^?Bue1)qw=7ߚ9ged`34 mbJ)J3ZbY98wG2Α'<2AXn$?8;1_jb'+N| F'%zFRzb ˫sL7bPqKOs>8zczb_A=5;Z) GSi;wldF6ȵzxXb`3q?dԅ[4O v//}Ϙ ; ߩc8k4f|ѷLf~UEB;W8#_Tfolr@l1ËCB6n{ hzxvtr9sr WZ-^W]Gqx,"ߖؘ}HMPd(9!5det.ͬX2\BoFS/,n7(FbN&c!}@E2g ~\ҡ҈쵩+yze6|Hm0a?fQnMeڵ߁F|$𦬜y5!x>ā]-Hgo^vkܵ<^U|Y`)nF qDڴ$AO>z> Fwы-{fAvV$FG_v = ZF\>5z fhk!dN.jvr#Ӯ3Y#3g 2LN`A5b![d5/R> x,'Yw'|O+F6q )SY7-!yX 4|5mInOu D kT)iP _ fїn'NΊ9Y'No)T V(LW'ꌴ;ֲVlCv~FgI#M'jd({ȶ`WIУA0=MXq/-P9$7tk@b#'Q ⥥+?>١lNp U2ֿ܄`db+vn=kʼҽYq %T q)t"rp9/v2AeWһ:G D-qjN!'EM _II5~'壵~S~5c 'urviF|>6BcLT  {z6atkaU@DUCoa1kbqCv3wi"s}K^>f4?iO`+5ĖtA~̯.?xBhr}* }{ q~ ]qɹk#yHzT/:2b῾:x( 0ܮ4nѾޖsQZqذu4V*( ՂErc3 ȖGpQr^aiI?ao+4ڞ3MAy+-wߙ&y&4[(K⩳u1\3dshdkF˱Qp ƨqA33CFRVoޑvmc^_%3In &^U܂rbxV`Np/{tj,UNB9V5K kj]-{iCt.uK(oߌv+7^0PeOAf_/._YV^ŵT$7Ŀm\Ƒ< Qp؛͈23١[QJu s"8\b6U!"ԯNώ*k;A4gz96uV_2r & (kSCOas" <ˮІ 5_ QVBe/g.oһuL4o4K=/aOoVeH *+Z#H_^UV}e(S{SUA,R3~6":tVgyO3YQ'€CZh$EEo޸vG9M"Y1]> 3Gv61ENQRvO:s|`Yl ܵ5Ο-*;Ϣ2e4 ؘ)Jؠe#ٽSs*8IFjCh]H%J,yPܯviєE9|)}nX$\*8QFbnF}'d)OV9)ambG3Ov^<NinЌp0!$F !Tsӵ8VGWNaH }"%%Y 0;*ղnIMng+c!^Mإ)XC8Dx# |,yoBilH;/Z5mXa6iגIT"[~S5\[?=BM#4j{qcFQUv2鼂װԟ=;?W_$nm wRZu4Dͣ =gPXseFptڞCٍ$1+9۩%*kǚ=g 4(_P`p?f72;7Z [T\툚.x(deit8ml#+-oքͭI*LF&.,22=qpG:)Is.ɽ ]ľdlBɖXKl%znU_A.ǥVea(WLCTqISxM" ik gs 9?jyҸ̛S,Ve]YDj7iTՑYl>m }D-mC z-ZNg*؃Fa'&e]!?*vEqNVюg:l6nnofW.R=1Cda6 G T^TWMl|ehY80*nCʈA AHb F:ND9t' ?$g;,L 6}J$k3k"MûR"ÛװO H@>Gk^rg!]pՍw_7hUx~*|>D~zgd*pZ=֝U* ۵VGU93y2x*2Ҧg])l ՂֈclvS)fP]v]+ YyFH\g՗5o[+\ AbvIk1kR.3Aj`f[;ۆ©A,}նgXE5Y@$5>Lpuq\ʹD= w{=8ѹzO.X]?>iR=3B‘63T2#]+sm%?+::Z˝I>π.˧|̯:kne69aLEAByp2p"ć׃e(MXn;spD,֨R=kw;'JTeӤbk7eS`i TƭO6"5w|XLa uo̧ 5Os D_C m)`o ^5s!uMЅ̜v_U@SEGmFM&ԕoeKA?HV,bތ<Zɪ98 3K-ġD~t5ͪ~*SbBNJK{-xJ<#HC7VEym7oV| f0k$*1\8<"]}q~IEEB10PvؤD{oqtTi7P-:WJSnɩ۪=KX*#R[PmK:ġpo4zT H'3YoKR-2oԉ^SX.sMwt۵)sHalRs?cW۪Dߐ_;B$kݟ4-RT'E#xG"3@V0zWe/:[ 0DǣH)qeC)5D{T8_rX~-Q/\9u+8 :maaZUqF<~Ђ@pˤg|#At$>*ɋi Ah.}&mTXs&ǵ3p5x-k3?VD_&2<)"#0BE^Ug78zCvc4*uv1gW.+36{Wh,S{JJ ?|РF޷bIdTN e*6@3 ^ nwL2p?i~K~ܩ67'YN%|oKܚ>.ޟv*dPj#m`oY:3e ouayQ ,&?7i_ `cɭ iY9؆)DjrZ#\}h')Hx|ac^_^d$izPLhdZIAb;(mpG5y- &X_`?ƲEξ!epL@;@AzHDAѕXo trqkԚ <38Ť$Nط{΍0O+L׳d-'`BgԭkgĒ(` h]"Zgh@|Wo$d¾gfZn->yFo.Ƿ44 8("E`,_:BЃU9P8cP*V p7ӽľT Q jۆ/ 5 ;a=p/AkVVwO)C&a91eQ^Fe^+p BnW?sc˾2"ؕO |cHmp9;VEV~b/h=x2_HI*[{B=3 UFI7^F$_72w㊠1B;:s)<_88s}XLI2C- ^ p` QZ3uׅOw+o}4'.XJ8+\ }1{< "|A4zv@h\bԝL%/_Q[V!boׯ.R6Bk27T ߗT~բv.0՚_-PfNz+b %"XWƴϑpO컷lB& 1ǂYwnq SeN" zWPpBm> ˟I<=̺Ϭ;y yAo "Bd斤1ZFw h񥭱O"B4 i9_  r@=6ò-~qX?(TP~\ؠ/N'61% < VVfĵ><4 0 8T\hY N^t:(#-IȄVVs~F:⽲8 UIp)upsh mTn~G1e$̻cֿ։)rIJ&GEDU([z/iTj6ct42nnaݴap/2g*/U8YK!J/pNH+@,yJ3r/n{::}d+)ȜCpѐ%MrEr_6FB!m>;ju/V?2 DTejd !`u HX_*u}"C5cK.ض!+͂S|y++Aª{K\*i2m(uka^s(,KNl}eySP%iF+yOAu2 B(GV(Lq%gK'R f˔kr۟o$w j;pjy'[QP֟@;̷f=ѽF+nUf-^ }}ʗ^]\wjS d̦. r&89MWYu+&ǹӀ;)9( F ^H*%`BHZB`HS6y4{{kgώ5i\/Hxqzɜ +NG/j{(;_x3S4"~ MM7  G1ڸ\qHLCu-ʲ9FEX{ rQԠY€a| қu'Lߧ:H78fRLjTSd`WO֞񱾔13d Yπ]ާH8UL{_*_T@XsQKK9H*n[2Ƀ[ s%gՁ2Km.uH=T>GLtǫٟE~RmmoȽı%v~+43wdIJt G>&>,}|ynd>NB AF ud?B0@hI27s7"l^}s]]޵ 4n6rC4ud8XxS]l.2En:9 Tf  ,۹y!ҏnpܶS))BH4`M>;HQNM.,uo鸳9RFK B?Nl(VB!^lY)ld|ʛ+^vg1Am&NRi2MC t 3I^wF܆ X vunXDT'a- A9y)A1D&{1'DJavc--3O $`$O W1:Ex2VC ې?@HRob Ehc:TLZm{٨\NuZrDyCBF547=tYRuMiB)h[hR+SXz!e'fEv=I ~t_dc#5s#9>)`@H ,;6|!,'t 8~?9$o"PO7@~r Ut䕤~@rs-K x<~'DRr{eCI>?N:}\)~9Cꒈg*@4ױ :ta}Z!wVRz/$}[^nW; XvGx‹ c'JxDŽ'DHJ[es^(~_ pՑ|6$l,OA7PJH>Ū%֫ þ\MD(U0ڌLawS nL*Qv#nͻY=qv"Xd+)KOgy|ٜI1}j,Lv ioBE[(P<Z͎GtDk3hJmy 28P4v4?Z4 rɮ!υr y21ăB )wl4DJ/Mdh-\,{7vHKQD%z +d+ѽLrTkP.!s!TTy6UjĨq2~:lspT&UUZ{Bqé>nM'A \:hW0fÙ)^3ֵ_Ж̅TPpab7rN*1nArW9/ŁaUq"U˦:Ug- uOę@? !}oN)#[$ͫK U*vE:?Fg<r}*`wD/P,xE`p|iHeA-ۘ|a;?%^(njGkVh1?~M٦ɜzV6d 籈Pĸ[ _ѻU +ص Br=:4j<+d\Ku+ T5jn],0lkO4˜aM8l) XMY'K$v.% JY: Wvt3IH pN97܄϶'lA`xwکc. EI E@Z/g+%DH9Ceb)P d=p2nܐL yhw EcӳϫȀv (upܥFi<+8y P4gufġ2$`# T_>a(U; 57O`3U IŨ`a[*3 vuHYHQC?5%MpTmj^ ݉ #PFšf@8r .#df1{zͳ!"cV`D.h[Ez-Pz D3m1<Eva){ni=H82 lDC D4S-u?]`(h`dǎE쎛u$v 2~k Duv4#'_#^vE8lEyfIVܻt/X>ۆ K*M.5^4}ـp{(nŐ/B6ǝ6e1Ͽ!䙙ݖI\%=ݶbÝ8d!F],ZN]e"-Pf@D_& R<(cN f ;j!΀&.ILK7Ӵ3Y@KROgjZ{Xs-rlcoϵ=JΈc3 Ƭ0 'yxLRψւ41=KfԔX)ΥDNb:.Q#BIv;]ZZ`߫ 0O?}GV;7n xVSJb >D ȼ`xdh]_3lO qyd飴/+I'SE5q;țsAm{vRWG5F炨iLܑ@RӵbXf6'NO( yH{[-x}G_ca b)·Ή)Ts̊L_?X&)&tYuXG9X!V+)* rwyz@[-H#1lj'%U]L] !Ƿ+os7'HuEвPWNy }* cDJXOp1E^wvETB~o''3xfv9֚M</Z*ݚ 9='!bj%ڞZɬ~"l?/gwBF&.8^~o:LޯL~ad=9lzm đG/752*Dn{ L@Y\O.)^[M#jƤ? (ZƆt}5'z_/UkZDRUmb>dcEtZšO.ͣyZ.&%{TѲ(o6m4@Z&v}Ԣ[霛٦2{.Rb\㕕JҺw/"ҝPHZb:.L'O{%@h7& sZ6F.|,*0\Bee@DaZ՗\4Z-0ϬF!ttKƜ\<> +K#*lkrnuXrSN|\Dx_"ƒ_a%kzŵZlGw+?Vu)-oyEHZ?6jY]|x6$^ڽM }6N/ GV}S= }^ΝiUxO|a&v\?(5۷i>hH=v*a>\ܒ-4~鋱%jn=Xgz\-g8mpK*)!d-f4glUg hPP%.o`OIZ1=Yxfd) %0"Jk,}{}ly$_3 V?j4YZY^ mX<]D,vhCI_hGZbgG"7`UlFdDH0lWߣ瓘^2V?V]M g)v%AbTȸZ}:i&+IYY'gmd}6(>HѰG'=ʅhGYhcy[oC꿟|ХY/#e2Ɓj0GW}m2ocSd< y2𮫻5gUgwnd|̍[7C8wg66j޸)%c\reG r?{7E$+1"*Ehq$e6U2aUpJeW(}鸟zivHȾb\^Iuk^SJ} GXX::rZ"A()x_v{rgɎg+/VSYg t(k؎H |ivnd>19OC"Ro($wbՠkZ 9ɐ~67]7Tu 6jv•ď_2ؠ`|M.suQ;P3-?e]$afQ1\Ӥđ>m0)T(s'-S0mu OkH'W@r 'F<(`DJ۷Y/$AehW%J*91Fޑ8 l+|.8t[r&7F.G8*5H)a.USm} Q Mv3QiѠ{di{/K)c"!DzO(\^"ِ: ^x=b%yO1P}V&`^08SUؼ0ڕJ+4&C˙hRYsluCud}ٶL(Ԗ3̭$Iv_.߲'d?&d4/JsR+>Q#wkp8xŌ1.:*I}px K*Rj);-KՈQ0A'l'S|(2jWMat55sv;y4_՞X*p9wGǭ0^'CyJ*eпjo׆wI}i~, (eXr_͖\S^okڨ~n^x!) ^>QL+f1I43/&j0gReӯ+ޟi^)oFY>Ξp4,ºȿU%ka GP-nP/L"O.AIab\ V3Iq^MN\*qr'3]UNߕ;$#FhOqft:գ ҝsrqΧHe!xM7JP拻ƞ˲jA#Y4 h?DZonK^lW8RT (䮽^j 82IaXtIP$Ƀ$V:AgNXT;$(Ʌ¤3qIl^ksBS:-3! Z`8l#Ö"t&,CG> ph sBfiVZLvd"kXĆtU3 QOw_+ZZJyT[D#|`v9D)|&̌$ʞx"b6{LǼO,.tj]\Ky<ԏtP .v]Ҝ.e5# gd$jlJd]rj$9jJSocNt  J/l&rHQvH?g#.(/M2K, r%ͣ1쎩VC5A* =@Qs?3ߴMg re4(`EG ) k-scՊYmX@ظi9NW8 ,Z:ݢ,B{ܺZMGϋRPB6ޙͲf67.;S 4BZ5 Idd:;)vggQ*z.af$δO=Հu5@lς!-f%EZ} %qbq{7u`>ff.􎹨cd$^>ao}C(@rיA̚4j:Kc(Kћ o!ۿa[QA 2gݴ47-zeEWMi6++5߅B=ςz/pNsv^ρ)~wbjނ%|Kw^EpeK,ord WF} zΕ`!5C#. ]qoU'!w1 IQ\el[Ymm;O&NOjM5CԴ3~]k b\ܟw?UKʰ͢xp-1QɂмE?V0iNDxNR)v;2|dM*%? X`ASG9BEj5`Jl^2}fmֻ*k hf4^_rNyke1Yk R=BAjY[H"BJÜ(6%_ C˧S7A{rR' ,9wh*9 -X*qɳ<-}Er\AH &rd'J3AL/Ubn0CGC?= C(OFӫ}8ӓ}I$?6"@04nvޠ89w1u}E:nT3Z-MQ FǂPgq_81XD sUVze3SCeXo̝wƛmƁ,txީ&$'&'TV3֬ ojc6,pyF"\ OX ]!n2>CȄ H j)OV0I(JR;b=3T|o{:.Hb>C(:ڇ=GX7'7V>ZRhs.\& Dv*PzH}g)&nmAEP`K }5TMY?+nڵZ4O,'BeᰌMk'>gmDB37,PǠ&K)X w]%>GR`&Y/'@F%¹GEhPŔ}Tay(\oY l 9u!Ak+[͞WPCOf]~&Fƞ$LPM-f Yt_6Cᢞ9mjm=mjVYVIX("+΢Yh+!w8>.cYQ;m0^\W"\rS4"&7l;6~[[ac&M :-$mwIJ3,(/_< %}",ز{4ʽٺ#@oMw(xUH_7JH 蛊KmaGpd3%& +tKxo3 ;b7^af _DTT"aAkW8"^_W"5K 4 ;6|f-*+H;OS:_^vmݛ$A{&`ʥAasAC@Y>r!O'_z%OD'2A-'zYruU|؆T]"Y,H&̅u>Z,tRMQrnɝK/ЖizFRH/'t0>j?24R~.k/@T]bGqBuFs!ddYR2/@B]/-*ucيi6c ߼+u/ELS.l=l>) l{&v gJ˯‡]aPO쨔%;0bof߽MvC,,Ԑ9~U^kz~7_}E%[ވOI~PWjɉ=VQI<Չ7dޚÁr*'<|OnyZpiN׽ 7Tǁsf #ǹ;wn?d0 CQdu+qXwMsQxMZ+{ʇ}LZ~7"XPI xXj9RL )tfW35lN-~j‹ :bLa}Jyo|)+9wz&z=bbk옣`ħ"20uG@>(@@2DA]R(3MȂDaƃ(ElA}Cb%!,hB p3fv!3zkLF1ݤ+Cx]k,[{r1b),qV`mN"Fd_"n9=$=K׽re>X]"+Utpn2IT=)?k{$CD[rCHt;'Ixf돍t66:Ans6FKaҐXkd1qXĽjIrnVΔ+•m3cbIp-ŮA.%x g~4-kJHwaq{(2'|$4)~'Z`ͯ[cQ#2 zp"$k#7i#S_niv;)Nی]$ 9d ۇfnǓcoeX+.PZcԌ* &F<ۈSYӌ3Q x#(nNC҅㣧7>hQݑQ8 @ g^ɮ;tef6g0GD"}1/Nnb?|#P踗\4#,P@ jg"z>4xL×u]L@UC0[mlBiX;]T6+v]BDZ`NM^e/#=xx1V<.j:fbkN@zƽ: o ,\e=h aK4SP{ dPE77؆a%fUqG6K ;24>{>̆<SpMћV܆#(ʨiҁ搛oG˟ojVI@ИI O=NJĽt`ƒbۚT ='JLFêrsz-6U#`~kjeԐ'#weH55.GzL3 (#?q?|zNֳt?#JOۉ |'Y76ߚ]/>NyB 1W#cE\b(Ve)Mbp)@"0>4tk0ZKV׆Krˤ0?ۋb 7ymϗil|ŷ EMrQ-9^_i7^>VVWrI=n@AЏD`{^5 DzWI'ыϊC1.E*N@Wfm':#E+-:Git|NWA*Ebo)Qƾ׮]Z{0Yg0Ia"8CMtYO>Xd+DH3P:3?ΉxR]Bl?{H%+KĝN`7/ Hs#L}gOZmVꛧ jJױu-k&_+>9+n](ELI=¶ z!obOfS6 ߒ9l00@h]xyk(d+%'|5+=F=2fSMv^^R=gtR^U4>&œd>b /L^jT?BbI AUb!X L3ceLu۠,xiV]B ¾]- 0]gĻ9V8owVpdg6!)V~XP#9)ޛ"{}/[e_DWMVe tCkd铩N9\*} cL`dԡv6RS'O )0DGTV3;rEa')ص4L=7W)*;;M* ]ÅeR^l!(Dp3+Kp|OBs'%Tsu \X-bϗF^1q܌vE d*((w)(fߠX^f{.(sTpmu6M-Eu)Kl!}\ EvI =%ݬkAT9rjbfP$6"mh@D@O%5íaE<n"?ɉbqD}X*$ a? Fѝ멓P@C-'' M"6M*XI)-;{oOfw'8o y!0I읦c=<@`"{qvnʘ=ktt*fҽ ϗ;\_my}d՞BSAd {NL@$εJ _IJbϸ@/S8<;xe#Nr@tT/~@ =ȶFplU&O]!j›7vzxMۡT.jv&4FxAruC߰{?-7ö}dkvtqV)I5"(M\>Kˮ xl$gN+t( 3f-F+jq~@e@I~ ~Lu3ņL 5)/v]p?7eҔO6b=3O=},$+^'Z q&H5iW.WGV0!3x;pLs: s5`g}Fr<8_Їs_<]fDtRڛܲ5!(te>&xzl?(~D4c.xhO% .d>œ4tS3lyFOOe!> hݶ:,ʹ71V! !4wBƪ y0H*wéOWǛ.+on(+ØQ,xp~/!XW,{ҼG'+isY0,cQ0+ H2,rؤٽ\DڟDȶ926Q .7u *1XG2 ,.btZ|kacb{韒%R(j1֏7pzͯ;^BݙM6 jc~s[=1Nq}&3,F_43pD&PC cvYGk~Z=r2%H ߱9sc^jݳrN_4z=*Fm0Y‘:ƈpZt$-4ė2!)@c 82t&3՘$":v_K+&f,g~7MU"n=ֱr YǍE)$4ŸN-3J[[yqa鉏XEtSm@P2 ^Oܫ\0x4W^mϷ2hDHHR갸WXAquL(ҟ4S;1/Qb6k Fd v r=Cظ.K_i? "Iehy):Yw"W7@e:W5STM hDߔ6+t L'ƪT<-U)er vDsd|+(80a8  !xB=|؈] o) u~3~C;8,Ƚ#r\֋b! ۊyZ`ִaf+u{]zFЭR8BV*?e NtkXpώMI@ܭ.2-e=Ayi}0KВ^T1|O=P2UjBofs҄Ug„efݛT=zN>Xױl{NH ^~'StCޤw|fn ae9k4uJ iHh kcn8|(_$l|7){#?yI"~\Ɯi, \zGJ݁tmޣșnSYO_+u_pEut:-7%2ʱMHU?IƾiK;w0!0>r-yZu* Ng2. vͶգ58~|V_@K[}IL`05e`]iӇ(@CO8ӫ ?Y7\=UAV[(ң=ijS!ܖ55gM^ Wlh«eaWռU1< 3Q>M>d@{HCoa:nY5tc`B >J,Fx9Ydaa:dPdxVt%kAW6`:&mu>>[#WMy&Dp!>OI C@FS&1"USC>[q[Fu"YL+e Nu MΎh>^6,֞e yNq H}Ő+=ƓkDt$ϓOCHg3^cyϳ`j8Iǘ:y>:*)d;N,v.~#>zIΔ< faU6?qwbk̿sZyHs;bPdlMӼ)y۲2qU؅yJHpb\T&Uf-=5ᠤ̤ y$ᨬyeX- vs}A:{>"šo%{ûtWX0&\^0^_Lr GEbmt m;7/' `Y9+k@=F8 k1bu{fi8}siߑw^:Ӣ7吚ps#Z_Ӆ %"cջȦ;8Mmδثj2mMBV펟PrlBL˦`c}&Sx3Òcum 9\ MJk= "kBAa[Fdt\`® _H.8AjY̆;''9Hv4ml7pMB;+4}vP aKgڳʘ楡g`$ OE,^C~ȫb.DSA4DW] 9~gURm&-=8i?7;8ɝJbE9!2G8/pf.X ж#+YQk(.pWnXsc7DCkiſ7_̓5|@rb?c24Ľ m=GrUյ',3pYh۲@>3ӛ&^p^l_&IHYV7yu66:30XUh7[[y6}yS5;IAĵm11r3}!S'3D9Ă6d ّ5)@Ekfb n)#kvH/<ԊBE`YFJ'[ ^'+٤jj]/-I',5ZR&@j:U൓9X^@ tB2Ȣi_?ah-vK:G?#O z$@.CX;_U^?ܑg[q4ozޞ`c;\f8\ȯygyVL]%+}a)V@y[FXmt[lW;]U m!za Wcl0>IL.Sj-ç^s)ҷ+J DAػIt5I#ԈC$5Z2#4kesυFb&HᠴK;~\АEQ/ 8B8 bm97cR~xr.$5"GƼLb:3D7xDGQGapgFְ5c 'u(;>?u8j "P**sf(f&ZZ| _GdϛʻIprw}Pv s5L\9 CHҕc-}jjj+_-l!˰]Ѩ84stfٻNA^q-e$lL7BӌSKA2++ z#tCNݽƟ;o9+ؼyC (PČ.jQ#xT4;kҺOY^8\T[Md&tI%Ixqzj7-ˡ6qe61eF-] AkxV37BET2L>5 Ou)$KE9DUMڭ ^bȳ6-9,&J̸-ϝ4{hވIn @QpR7?:Ι~ꑱ-rtZg[t`&.<.M%ձ8;փe, D'~c*G:5/Uecn[^Pos8fB][dOr يq,}pThqi3̨. J7 %r~=R]h%-Ԯ80D?7S!uI_<f{FL7nWL1|dA߹qⵅ.Tm'$gАE "@&JƦob̽&s7_'mD <mK`ʦ0E#O[?L,쬨z2rZTF R%4\+8MCjQց^bYwws{TtE,U[']KčAJlj H2*Eylqh(z)jB0Ǧ cwCf$$4f㕝ъ@hQ} (-W2:,m5ܱz v\H}^`b-PU=ʼhgD֋b?2xdkAqAд'kNzS*VAT TzCq7b=9 zuP-肴$Ka~o*6ӲgQklӀ1e܁$/Es~ecIRGɓTB[m"IO[ūZ5)N 0`|i9?V*bQP7 +L7~)$q]Nc;8O_l #kZC*tg*:m?4\: ʻzĸ$@@ƏZ#śD#1!<{Od9@Ν2ΊYŮ[ &+pO7MQKzhwۨTPcBF.\x49g@TWOT8=_AJ*};V~ osZ A4-.U pSq3pF99]qn J{[w[<*YTu!4f'X$2StL'{7Vf>M)ğ`)ĥټgoLWnY<`Hs ):A?RV t[߈H9?ZuyW 'b'dA);ﯢdå:ɨŹs ߒGvr}kdahq1T? 7DRM`G%Ckwy4d)j *#Sw23vFOplk ׬'O(pcޘe Fv(5=HAa?Xf/E;w*ؤG ؾ[8{X* ,Q2^ R%ta %g%hCsyt8]v)H9AMrDsZNZ]IϸLl0rQMbcXv3\XzU$"XV 'ئ69}2ne6'`?V[clGA4MSH#.pvthhώ4UF:uZn i$v4_\XmNC*EO:l9(ͫq0'p~ FTۄ vw3F_CqF]'BѯKGNo{A$5S3e! Kށ!2\j~x387%E g J$UO n^Amgozl v dMtZLɮ]իsC\hSg4};8 t]`iUXLPp}r5LU "PsJ񳮫 MJ q=<^Av0Df]O.!{|Im=&~ʹ?w9d/! cR~jŪGo?ںUj1i*Bp\EC'mŷUژlE)3 !yG_*·F- Bik.E 7W4!b>NS3 B#ۇX_.wB{hAG˴~rQ=熡n Z6p i&.3w eael Z?c^XR[FY s<_+D#=@ٌd/L2` !i-<e3uWBGmhytQT^^O bw8A-6ϔĔ*"0]Ә5$vY@+G=h:Jv9m>O Ew;doG^3Ga7%4f$k; 3 ڄtpp8m2/bdAquv$^,*T'J`wV;z\x}$<;9qhgn%Pm_t. ?Fٖ4Oj"RI6+&}Xf'JrE.I {)6'w9kc焲K[j a=Lj™pInxGN1E.ʎdNa@2b5;x#@Ůyn?*Ϩ WOh~`tkkZzP13œhLTy qXY`73H ٟcYO]nM^ (RA TwSp0`A.o0JwӈX4nQ#C>46eRbȝhkҔzm$y4!$Zk9hT^; j3 )#>zwv!jPR4pXjwJp㱪Vl ֮S!LB"$' & +V<%U%V/mfôx,\C:mplc5JdIr;5|Ft=^}f?=y(-IwF)!b6P9#h wL‡!PoK& _ԫ2f}UçBE{=!֧C\6 U01FƒUoLp(?0a&29WszI}dI3߱(ޡ[iЦ9SYLi(qɜT~\'vB8|L06LqK |P\` ؖe+QLt<2w!$b!Ps|MZZ4jCWLO{+>5u^ JƺAǼ?jфq!([`QŊ]]D~QIsY?n6 [ӷJHQs9;K $ =(/ (tpA2?LWGYl2}LĉuG[&C=3O,]PW$3} jj]ig;\BVv-1Jy]Z'G=|u*4՜J ao9.ΛIB )}H@юp{ss aXc"LaRuvΖ"Ƙ|͒1 _;ԔxgcubxEBG 8Gu%M';فX*pB6|?S?*kc~"ɳU= cOtk7*]#<'Z @^E PJ9a%$1q#z༌!Y>buyVG"(㉱o߭Yu>%]=12"+˘qn\u`3 uŵaA'NՂɻYkkT7,\S)2`ݓSwL1kJNrf*KdԿ`čPmxZg!4[6$"{|b "EdNiY,o9ߏو C{IbeΪ_r(tSի-V5i?+k'D>Sx?j7bn(>ש…I ݐpd<&\Jo1lAvriB3l"?5d|S"aBB sqb$-L[FxEi{-&BT*w<:Ш W1F/{nz/U 9SeL"Q+S$:gF'SE{jRusQ{k+]5\"}Ab.|4Zn/=ɫYx1^i#ԚC夳Ԥ4jG24T-jq?YhfS#y4y8`㔕yD}nj"]Ua1t"RP:zl_)KUMLNC%`#3ؖ.U4z~@PԄͥ&+u,;ۣW8g LC)<-m;e27%-֠h;KMM['*8&e[eF:!(&bޞ6s:-7I. /8[x`oUa˹uiTOŊ^hp`VQkb^`L˄GLgUH&6H5>V p7^ɬFB_!XeR))N4dNOSaRs$~ کlP<RZ[TH%3 c)&-.hmZbQ8oȰ9@S|dݾ/@50zv$xݚj@8kT/˘ hμ[\yO#_JL8R#YLnh0YDh [I}^ H=8W-K}{fݖcLǗAТf`UP:)-$@K0%okRRT{b a>*dp I@q+(Y_͓P82y!]lLp#uoRՓ.f(`{Z6'$lnwNjTx[Ѻبig/,zg%nF~#.}L]k kٵCCbap'=²6^>EQ:_N`ԚGR[xkN7BHJW@X.d^}'(J=`y8w??firg5j@i'yaoF598n;g48YD>g8Ձ34s\(ZдrLM_hXQ.!vE,u}$_LL˜T?rtaO)C.tびWڊu1^9 d"w戥LV~gi7?PpH YJVDs2K6 {E"_6͉gܙdw#t0JTfFu5[VM?!ϩc03IJQJ".Wer9$WI+</'(xsvxҚoH?: PX\ӫYe9VlGyx!+??P0qHW`^ۍIO uO־BΆE| +cQ7vA<##Rc4_Kz=pզDJMH `)IՉHQC7D0ߍNHJc 8DS61l\D<܉?WO)@6p.+6W+ n&ᅱY]}sqC"?f'$,9]|:vЃ܍E_Q|"ՋQ~ؚ8Q:SZV.A1<* zN[CL],"K, PHƯUB;IEwc,,۟0\;{M,ڦ@zhVBJ6"SFjgo5!>g3wtHzl02AA㓂 Np q{ ff?4(n=ʸ-xg"#>Hb¯/2j\۱x濛$@@?)b]v;|M9}"?q3̒Ψ_qC1^ 25$ z2 I>|3;ySc0'/Au!LrN4B|1&Fk8U7u&]O w)ޗ"g%k ) IFDƆmD<؇OVmn{/RtGP1ӓiιL` <{ٱ5>I:0ƹBb`|D$2PD:+}L?:Y91+ɧ䆩"A;||wb_z&M LSݭ@Y͒=M0\,dER\fİj;uHp&pf/Nt~3]nPc3wҮ=b=2$ K Fv?w4;p>,0;#iZefa]Z=]<Ri,yJ\;V8=,#QD-&e ?zѮ&Ꮠ3Ȍ[Жc 2dt]-z>z_R.TyDlӤE56݋2,W ?kv_;$t(5 n&]邇kc~\od?!$a`WMURiI6o)i|nyuAG1=,Fn.*Iuj#SO:UDHALլW"y!J"+xV\ v-̿痑yOO I;d4PTX2j@gO0w!kHrnXE3#<9[MM'\*uel,BO-tS ub0i8@"X>:\߻~n|* gY ёFK6 L߸r33)ժDhi?lCpNUy_Ͻ>QRt[EH`((E_~F 2b]d8G\wV!(C723zZ(Ҵ{a=PWz. {E \H,1J!XB@L?A/!`!_D p3븣6yՄ!N- 8=nȡU*Yҁ>G/Gl8H%Yvzbv.7~vXߤh.ɍ%l:[X>ԇ򶺘ɗgF'ᅄ4v)҇0lƂ1pq͝7t\&Ď'MF>IY@Gm1zٳ8YXay'YJg||4Xҽzڂc(“hTwm 깑rkܻ]uyAʬPV+B r$VzQ. Q`׎!<QH̞41 vYvT "x"Zp,ThzZ$vI#0\[jsXjt ~Т`qR¯5p=s1[2gOBsH3Z>* L x jX]p\RSL5~pمt u4[%ZDwcVɦcCyd=א5Jj>SҢ_>4X+36UVa}LƧ/zvMV\9 @<`ByljeX)VB?Tia8_0hG:\@] /8TxZ!@Z!I!Ev B1!a'͓[H z  )V6y>4 y+\p7! MM P˰8eﬢ `o@G֪S%MY4W^%}=jjo0V=`L% J{ɉwl##z\q\m)UҤ(ҠDq'"VFh#BB? Þ! C qRokOܷ1ͷ{m:{:B3'VLp/߅+ғ0kk7d# \o],5,cc⎀7#<[~`L5 Ѷy,ryiA^oZOM 0 zV3>-Q_r۱& dȁo8,tFˑ@ݙp(, x\qTC2{&j0!'li@.== H'zyr|K2#+/ rDz9k܆amd+$PpwWLjJ1-D5&˷8;CEOW9YTn'yP/L x\i'u܊nY 3#49ctpS~D'*[G M8G WwpJ"$f:1Ⱥǥ }M]L@eŋ.ۨ{)J>L+סm 4?6`ۿ`Q?*օU=ε' {f'P. +%5|ů4-TXFsvr(eC@ÕVu  IX-!k &>.7%}ֽ; ݂7C᠍_&ĉ5ms}jK(Ű{kBgTqh c9-R^ o] zA8O[}a##Ȟoie1׊I~=Q$ͅJ#YWTp]y7zTv噔nnM$2C@A1B\t5^ g BU(J+򙆓) XUvu9h*K anϖY:/t0yem4k@b< AK+E[rDJz`e@UAy]m( "dXQCJ-aC=\ŝųZ댂Iy^,ʯ`lBLD=|Џэ@O+)` D=C?U *}f[xfұ ̠|n$̂)K+:X :g-{,`v3Ҋʍ:cg8YE:}M-f~f-*8ha%.ߠ2~*=eVRi %%*W8.V"iF. biU(ضr&Luq]ץn}.k$n*_0X/H̢z#UU99V4 V %}f[/745ruàiy ѱoE#gԅ*5 k"u.ןg}KM-& ~&׈vTc` *!)y&I./xUJE,U԰MI=/'笷[V]5B^u"oX$3ϻ( o~<NrN%kQAC(F+sqI ` S yx`L{]KQFkAj@bkKEڸcJ 3ph OOqtjtx~aن.b$> o֥ݽu-(>Dj*/1pM689%FGEs)n> &@m_غt9Gp|^e:%ɘ3P7(NDZpNHD~J@Hdn9*nl59 mṶ`Gft\DL/2Mk0:m4FG%,` z*~okL;ʦCH4㯘fVFo11=aA*h?{bCvkt^ GQ®^*Z|JŅ#H&AR6Fqu{Zk1F? oœ 5*B9f~Mp a5ks@՟b%NѣDMq5ȣf"=c? Zjy*qGccP*Dr|g@Z*v5d)KX_OWqz; .]M#O :)>dQLd :caW2 OGNN_?Ar#Xt9p2DV sOe##( ?U {Cd3%(n܄7G$g=IT*T^Z?OQ=k8|vہ>Ӱh3aN-Ao[8H Pc uW!FC1GJXvrS1gKox@iֶCdZǗ.vNj'>v\J|?TۮiH;'X.)%s]B ϛ*2f.|emXOfLyKvmaS6Oǒ%mFQDx"n$"Kw]_X^>1F֥y+ê\+iR 7C3Iĕ YfJR/]n;JGz[V(T\%V :r85B^TN5NhLR? ;Jb XiTjؙtu̥: 53cEOCM{_lGg_:a:PیP({JVup:$膍!){B",5bY7/::"ƥӚǵq;ք26ڒEv&Ȕ\kq@cjI\g`zj΍(Bv5V_k?' eW#ͬGN8u% msF$t/W7h*-?=„mM6I+-(jI ]֢LA ~*lt Н(8VSŅ`X)oi4XZF`0!e:ݧ#CVO{kk2 s| x8߂"B]RFzNCH3~?-~h/(9IUI3PiVU66) u^Q.1g+P5ADW/zc:e.1^%}k.XbrfwZjeuMƫ-Q8bFi0Al RyJCiPD,!2 =0w`[j6G~FC*vZU- ^MxJ^h*5@~N{8I%^bn>H?Ysir -ʺD(po1ݷ=P Ca-,$傱VϞ9KTOf0ZM\|1&b0A| /8TyGkS'}ϟNx`)AFb!LknMQ.%e+.zf0bm-coI4;2y jivsӞ4Yf(邂sZ"gN)wBt' 5o׊P¡BcyXnoH xvAȤ"k-(T7*7_/3C#mZE.71^Z6̍[`~&^feJ*+zfYT"֍Ft4Ӳ @BXWqJj-+wH!/_(ObkU}?utoPsu&yBlfGO729K2+"`2珱&8҇4ί 95smY.I|%F43ƒ_1 F#+ .1s]c|,VJk1MH4QS2<^'8HBGGUf,j@hb&a}67rQ&r^,6|(MfO@e$v@2bCΙ+! 6X)iS u-5ӓ̍#k[6?-lH5F)󄙈 6}8iij ʶ|VlM$*)$(0ӮQnYѭ(vZƆ@oFS*n s5>{=Q:Z32]y~ݵM nbdĈBF}#uXZáxur˕@8Lny8\Ϻ xJ,&Dg#õajcrTe #v= ?.v@5Glr3CdlOu5^CU6G5Q3^-'ح?"] "3lsri,IIM۶S1g0P/jB<@ĵY\>7kTW-_= -|)~E\A6ƽAuetiYh&Y4`XX5׍b&wxړ"ЋQ$r(d7V0]XOs.iESA|-_O]!ɐg(ALqoJxIn?V8c޶b5 LH*!8I?_G q "]Srɾ8&ϱhaʬr|\u=h mX?Kt-`At#n.=X\OtI!}swKwM"0Ln>委7wIװ8[H񧉄mԴ^7 !̫cfypl[(|EN|r&4 l+`zY}>Յ è&)(*em:fH6:MQ"&($j2ጿSjbZ"4!Iغ},]Hۙ[jɸUO oD *KR4-^(.Ci{Ũ6o.([`ZsY!zl n*GFIԌR[_Pm>y ?Mh"țfn`a3E:8T kop]` )*3.)؍q3G0J9՞bpaߟyꃺmUy7={TE\YTŒr|IM >3`Z^{A/μԛ[8ތEgG>N'KzU-tUV>}RKvf%wEͧ 3a/?$oAh'^g1>=YrԦ޹vw2,\tm:R'[\^T?<|TÑ[S,q }aeԛk рNx/NC:řTf}J1  r / c'AˆO1@NX" C 0Y BKM(? o.c7P.MY^00vcĞZf8jD`F_ZVv+^z!*g_d?;XU1+Yo ~Vpě 3%{ElWɊ # MɐjbC6&G&Ԗ5gB;{MRJH1^IM.B 8tRwnj)Wm/FQ="Ȯ[Vk.8PF)t-q8NFI]ˏZGWr0jA< ^fsB)g 'ϡl{NؐpsA3m`ػ ZR~;(k%$`uB0RNEgX?.:τ t |ĴwEͽ&K8SWf`.԰ن~`cHRU1l=>@q}n=G"r[pұG1) >Jߒe u:g#i$P:.TUt(Q*je K+ nA$]恕kF/zqXɕ> > eyc3(Dʵ ?6yer)C4o]'-i+'UzJbu*и\jiLa:^^HT gQo cW _t*}X軽O@< ؖ~qXn*udJ 3ĊRE_SS/tsHI,Rmn_2I̍0+'dpbTridOb";c0zK 5;<Ч\4hvx9 Qn65IijΎ9˷\yh5'(.+Z{hu/x?8]V!ǤYS&aҘke.g~$Smeg}=܎XvG&wl*@{ұ;XGlU籵cCqO,v 5Χ(+)$"Rpo)xMK^F#A** {7muղXtWSX2LqY%2sQc$qmE!/^f D;.@F. -my'T;ے sOh>UIi0m<Pr,@V70l՜b_ K7䂳7jl\ZxF+(ԭqBH5wDpDذ:~KxhqJWF*29"L>-3+r\pQJ<_]cTn,{Tɋsi69`t x!Vcd[5rnN͡p ٲl#Т~s޻3}[jkA̺4<7oUʓЉYC&n{p!&^`7g{JG+_O\9I䎏6 q8cB튖0͗_k2QU\rM|ꔤ:oʙRL7#b6;0 W="k?Ua"z)\T" 5R.%/ՒNk/Ch~`yBhj)U6̩CҸA1ld?1n%~6|k^34W||*xoV\ j#@w݅ZA/&f#[?h,_H[ڄ BDJBE}_q#zQ t%q_aI~{hAG-O/6rRz6%# ta63Poij+yQW+jdeY611$, zV!L 횵Pd (@`%kL~([N^H"!9jn # ~fFt ][b{) {e3'H e<E3IU|i4I~$FN6XaUꋮhKD偨wPSq26 -&Včюޛh k eGo[f 8]Tሓ[t9%+2RtoBv(sVСݭx 6)nL"FEf|t>J/fF!7`]K&khS-㛘6HVʉqg%ƌ{< s@b H 1v} %7nPX@jyGO{DЋR"Bf$84y$Y^dXXX#ΙrWbyrDfz^"M˖BOQpγ/)qҸ&ߺɳ&q@/5F2cP9tmN^԰veYq]a Xg 1Yx`X\a}A$=x̺-A.GO=\496bz^BZ3\i JT&|܉9cW“!6OJCyԓDjɓ!Z[,V֑e]e1۶M:Kbx PJ a=.++gbb@R+%׋Ku}3),a_e?^Yr)|RD2sgeW~z;A<4/U]/ҭLK0*VBTKc k1YLϋŸR5b(Qܞ/= 3289+iBG8 [sEv6z<>͎p \«RԠcڗ ~kW{` ~NP_5OpJM ͳ >J[ E9;,[}`M;JQz^QOЁ>z_Hb'H37$VxLdY`Q- ThKn<-sZ@OVXKs1*H<»Q#XNnyȅYTÔB oq洀2yAgӄ5d$|P_^>ͽ<%9}g'aZ zඦu?dX4!gt^ގ_-"j[EY` gO#mk֛TWq:/σY9msN[%V?-ăRI<"J]hxͳ:Y(IP:qH8ob/_j-o;zb!%Nb[h-lA g.vz:q][ȿ̔lqMDը{Q%㪟>\kk3ӛٻ3B_` j+yO\s;Xܹo(D%偸H!BGV*ueV@Oi53 ,ڛ~?i x<\ Q]Owsr TG4Eeq!k`xf.GyWDZ*Ԩ| |ןsrd袩k6˅j'o)n׮m>@M0ao$_r@mAl0`ET#0taV7`6>xG]՞R 1r`,=-WHYW+_zzxV{WJuz/РS_J/{K4\oja"QbJbpñDc۞LjH.y&h&z~ɁOg^Z% 0$bVsB}| 61K甂]0l$$#?N䕞H`I&/su+Pܜ en E"Ү!UI2^m4\%<ȨF#w'SFr,ȡfUZln]{H|TD<:8Ԍ╢ &=*v MJ䢩JԩHU^ֵ<|L2˜tkc]:"Y'hB :GtLY$ c*Ԗ;Cbs&`jfw^as z!+yxx*A-W-O,*aQre*_r} /d[g?F>AٜN+}6'`X~EG$ tPIul֘Ѻal/vttq/ή: rbB ޴ǔ*mCrYǑ\~Msj- ObjqfoCQg l_KVi]Q]mW)3 @ѹ>Us PA%Ȩ8b/~6IjϔRrg ,-Q^wI/lJ\;?ʁ9,k୷D~Q{]N9纲MztzRMJ3O=qa?V,g9_.}l1cI^"gz.aYJ<3dB~beey~W%EOŠ.~A|3>"Q*KF[X1'L*AO< J4NBt'a]}a 뺧ffTasU. =$,.gEL8\ѩAǡ"Vw?di I"̻Éaͧih`km;~i(K `?gy&{ *zMO7C޷y5σ=V6O/>W͐bٗ.~8b^aku5ۆW6[m;J~oGe`e/|?m3FPA^h/aMqYzvrU3_Z K$8;J+5UjFeӖXV\ M-i!efphr2aHU@Am:қ:yQ (D`_ {i=!aw5y/^Ƀ)GUd^&O=S,3=ke+H"=8'i?],'$J~ssL" >y=yE. DҭdEbDqxE@ n-mwШjsyf}Zb#o|:R>J@2 B@Jv:]jFـ^Մ2\Y7rK{8(rqy{oDN}=AvRJ'8hIW1?lgǕџEYFqx =_pQPоM/0K@rD3҈ªԷ>G':~GVx?KlSC 'Q&o7wb(z$7_wV\u)i!S$<ЂU=Ahr Ԗ Ҍ|1STR񥞢fJ_G5fx-OPÔx2x"T1s^h@kbV>0!n@ئYa yFyMI'f;{;K6 _VQ}%ʣJYYZf)9~seb-=ۘMr'v/ϑ#G7pҖ~?>Lʊ >G7,:GgUB؍ZW H2.Sfִ $ʥG6[zBؚgM}A ^$K3+ݪcoZHiyKUɂ`!zrV$Y$uad]Mيu ѴS4՞@}pmeGSzE=+* /:+>:fQpdG4" sI Y=mvsGӺ 1CP?aU*KUU4j+O{ĐH&8anCCg/0MM>r,t>b\bÜ͖ ?hr7w`d.krR UώKꨨ#?' +9_d[ @EYa\6L#8N-\M1)u I%T.﯂"?=en$Wp1,^T%a1:ļo .쬔k֐3)*T$Zbm\zM̆A0Gشb"W nGȰG#Ƅd_E\-hTTy-i{Zax^9(9REEEPFfqVW.H-V+䂉L)Ո?}̾ H-3t| :\`*oF p;]t+!ŴZxa sR6Ɛ7daSZ΂Ɉ|5L(/u:;8 qf]٩ G??+V \5X˓~B `ؿGv6hp鑄Pz*ظJ5QY?, Hdhf^LD?_*Bf(?Z( }MJ j{~J5,VUS=L&tbӮ-%Y#n#_9ֲ寯tm"g`JV4duۄ*bz jTu%&2q3xsF@ЀG 6^\4CA-oi3AˍVE: DT]Ӈ.G$s"$~6 01?%8確X$.__I#}H.NnQhWdCHwSciVL.C+BĖ^75X0P WY!*uj5|zQFBkGNx+2?\-Wkm07Bxz?>=L9F^ly.ut]Q{K;*;ޗ۰WQ.dzs<]#͙3tU?]E=A/˧b*4*cNK,KQ%z`h1 ts>PrzچF O"<:zۈ=B: 44N0M hNoJd0crnTwMHFxK2-(s+ߴ/(f$%8sН'2Ԓ.H`y瓁s~= m^XZpg2CžLA6<ڔcDI1V̬|[pRwhu ǚk:yGQ@kSCR%ER SO5j[LOl4143j'sT)b;KMU^Cc=7N)|P"ė+`$C[OiμCAY҅y=jlP&=y`܎j0]s).Ki.ktuJ3*^zQXAT kQ֎^ I9jʋu鴵Ķ)*퐕%Q%Q#<0}Z]zVy |˷HWɇGMc1~vQF}8 ŹQ/B0,&{ 0}:CXӏ[QSl=?0,>Mwhxt_c/d$^mձvJF8wfk?*$*h$lHQ"4r{O˚ǐnn\fJ2~3>Қ^MϜRyrAioiu{j0%HCsrc'pS }|.= EL_m?pAZ9R5ݤjY-;a="ƭP>{#̽qpͱ 2j LX. ] *=/=XĹ?w&ꀽ)M;y=˚"dY#Wvu?+ &▘)2HIX+Tu$"䬔=x$-#KWA0nFUm_x+w!{"HZRkxf;EK7zōz{h1䏛:*yKTl})8sCͻ(oagr&bέTݴJ?qtTm2Z&fmc;?$Lou|ua+B姞[e~ eCcKץiv#@trȾ3M 8[E ^މ9&gLEoiUVբ r<j ,8vUn&z!"43v G`i(qcr5yM\V+ ^Ҳzif6Uɋ)wE: FLv T 2t UJfOHjա""fqFj@^I% 8[ΖEDg"7'\tʻ{X*\8HkF|q(@9gL=;\ ӎnRk Cyؚ;wqc-4wv]0_P*j&.&k G۷f{ͲGK'̅bu})J/teyYɣu? W(5%AOiuJ꺶/N/.VKSϾ$ 7TitgЦ++* J^=[!ybw"k`[\7E(ҦoҺ{L^Ax\m\{lK\yR4J3WW0AF#`,@z;$T0✩*ĺ>iNBQHkn*=Wӱ3Oiu/ygY<5?GNL\37s"HG )YH`l#d;a!w#=-'}$a'W0&-,%Que0r[f3~/}~܉i a=q5E꩜oD# QI"2Bc$ly3(%-ܷf ca0ٟ5U_{} _IvCTGpQ&}β,\KQS_Vf apqJxe?O.Ԉa߉Wޞ:ҳq.qַi }' P r~QʶXrǁEb:z>o^XNX{>~IL2WO~zf[FkTvЋȚ6NH_vyYq3׷! q]X+s=#GιGs_r=9Szm?Em\! 5.z7*Ь j2B3l_ra[D;(S#N2IhOFEw`\UXb#s wWB3x~ɩi ‚dq`njmnZy:]?cp>Vxktؾ@P?AE 9/FJ ` wFêN3M O[4~ P;'{sT%anmyQY٠:.)9))汀Ɔxj9ttLNӢ{ <7dW ` ]nƑ$>pQTщfQP}U8 j7Z_x ?:p`tpm^X_Εo/b`دIu u҃fmry}k;_] W"f£׊f X 4xLp>Eald>UyAyuo瘒c'WpoѫwZ%a[P1A.J*:2G+Q.<ߟ;ZEL 4CAd:᥂9_a^Ti0Z-bSܻW/Gye. OY,&Ґ&b w"M$k\W>lVX=33E#nmpa͆<ڃe*4pu\1C U@ B_^p&9{:yG2GParMqs+wNcN]Q>2ߏT?yr@QOLaMC^8SUkD> d8uRz(KC|@SFQ_ڋpT!FvfSĿ3 D1ON{+dm0X8~9 lyFxuMFTCL5R}&RQ/\tox9C9oj՚l7CrOZ^R+dB ؕi P3Jr6ttcχIl|N n7%ݎ+ Hs /CY)k]#kn-Lrjynd5k<{KxwI%:lN+A(xQQicÝ`:^~oG] biF02n( viA\Ҧ0V8f$m_T ;YQBC%@6 MQw,ep^?Io2 {a5ej(l쉬Tp aRCzT ·ar]2F JCM=ʁ 6jP?!3JAJsHWڪZD&0FM}-E8vi M+\\hc#'vGv ۵kvIX؜N :%C0Cj?T/G$̣+PŃ"P*F^N%-tbvToǼ)ݬ+#g3ufSrEНuj3gZO;ɢ*bo<2C0CJPJ.Mc' kY[aI #\'X7SCd] VZXx'Hđ(6UҴ!eG RXi iLyJapQ䩔PJZFak- FbZRumD=8;r"h^AezsY*QvͥwSߵA;C;pʳ'"LCJ #jnz^H/YjV22&by.&Vn,l|wG`XRM7izCr9.ラ+ro_%u`9|2/SыsR-`K-5΋ I27ui R!]/k10 VV Ys (B_kf𖲑.@_;J VXCa@ fz*k@+_jڼW`MgWRy;</;/U p()٪ʚ gP]V9D[ 9Ym)jyӯH_4`b?;k[Ow:E[ NZR4ʥDFfZs+RY`tTFU;D9Cf'!=>j9f_:!|0D9?Mt{ӀRL'~bZ:g|#gN_hYA>d[/NzsJ6&D+z;X\ 7(-[Eq׃uy/\zD䧙Ӣ +n z@ 0R9NP(#7x NØ{>z*nW:o$3n\d&#hqye!{}nh# nwG;Fchm%>@I,Lyhӓ825AD?P#w+H:;wu8,#ΠOkW|)]V)dÅe@vǞ4[Oe#atpy?3KE%$I1 Zb:܇P#k&W,l)‚4{&,C{fZsloX̨%ofs7<蕷Si=lW͂50B۷ (wfZrA&+@ xn규lƱlE A/0(VlXxHSsߴa?>ޤmpZ! ĕ7p)Ј6ͧ}gA,2"*\t V1~3O8ChCN8J/A-F=cn] C8 lR} &m6^mlGBDOv8{v|Y1W:EB SWkscX4!_Ɗ茰-'3#FU)āϓ:cLBt:~%|>t )F6X{ȫ4ö01|%29uu7\* SnWC!t8sfRzKq*ݓg|+!JFҥqC n'+.3^aH1Y(XGիl[YzҐ.؋pv]Y:\7Hy9^]'< rP} xsǴsР N6}ڮ'[!ft'$ ;#F`A+h8fʱeE1^hhv-_U};xACGtcksޢv+^T3f}zKH{IӍXT?CQĆ˝H׾mDrOԂUjzD߱D(.~TqҁjtzIH`A8 3@21I^R(cpnJ.τnqC.jrqf `YBQG d0Go=E]w΀,#Xx$Tr#1k@a,{[;רiO'N0l'xA2"oOķe7_1G6_^ׁ4&#}22W}@KPNd+hB2{`fn^c %9N~ t@{4(z4XU>n(Y.e##fBwqWn[Ap hXÃ`qXnIfol ,h_9ko: `73zf"wԪcnd/b[^Qr"77N"3NGG{x{%e (K?Gi}l)TTLј94R)9軇ksu֎) s4֜@:Q UՖи"e.g.Ȕ96'ߐ=E-.SsV.t4i7kcuJi i9Gcb=/DĈDWRMu g|PwQԁ< uMv8b0ó rP+*TlC? s @#:Ȇ}BOf95Փ#q6fu_f_ 5{$7Vϗz-UUY_Ƚ_)]Q e2=[;V $,s]0/ Ky~ʈO^_6wNM2$0(Mbi3:DląkؓٓrN+a+G~xfnһ*XrA{w-&`/HDƀ(N,J=P i~װ X, [9AD?E*K%m~]P;QZ^f`?o$wI:Yl?:2|p2Gc!qr@D=jn^Z*,HeG"d5ψ=q,ZcDe{{p;IX":d98S`8} `7̄#p3-픍RJ5~ x2re~ ;l[gۏƚYenSM>W6Px|>cHl.C_-&aUitӮ6 PBK ZT\0̅] tBn$+"!Oe:v۠{fB mhtC!N>v;oȞRn' '0FS@`4X5H:)j1yďNL5/>Pt]+|Er7~B1 |zC>!cn 2QTӓ  j$Rv^}\50tξh,ιu9-n`e[34}ѴSw}u*O}aCJ&^膹i0ԭ9\|4]jfcwWxV~.kkA$RO⿱{a/;kg?1B e.\([M/`K `Up\٣0>vqK2hjJ6`c4Wږ*HM='n@S5λNvᴠC³խ5H5 sU L ȔR]74n=#Tg'W91CirY-4(3C~_<-%~X͎L(p@l4@&O S-Ӈ)lq,b섻b%>>k<|=L+c'We[tDE Re2{|k#*d;t|YOM]$ed.:i^?bgQ$ql](6O_ߌPCat~r~\h1ɔ MPQ  jlWds2yQV) -NGyQzmԻd>oO$jpv;硸9h` L4mcٽY{U{$$D2| PM6:_hv jD42CwWD1tUV5I)ϯt-OmP{ :zTc; Ȍ_VIX,gv351>l >ɒFo1ZH[zK-A@4y r(m\dRzƩL.2Sν^ KZ3APF(4D72/­KL/fЯ))Ni/Ȝߪ$a[ux&Gk `/l(RrK[l5x_&I5odDylmZTdrBˊCB\If9ni"FJ*wtig dɇW#M*'3%r,/-ʧ,_t~IҟR4c< FVCr- 5SԈԀSztYExf%\^^Yp8R;٠ƙ$YqE xos/%iO< YiF ٠oYe   w\.$+ddEa/k1zbu]64{d W`mϘyE`I7aGA q@ƕaMt*8P7T]J oRnRR[Z96R~7Lʞ7јxsrD/ؤ)4n87tQ&%Ļ֖ru8Lz S(=~HzƝzp=0Nڶb+y<PƻHtLVGP%pOgqe?]I%%Q1!Cfɖs=w.V8};J1#I2m`eN5`?3AXĢb<U[>wa Buorl]+9pϠ]hR)z61z֪RMVdg;&kF-rLlplV}%]9a)i z+wu6p]Q6 Eq =}ц}6LR6mj3w'9VmB/7=IU_eayK,1xuOAmBv*A$+xXB{ju>C3jD-GzkZw?8Gnk%8x%"@j,N6d˚w"&!J|BmK.6ꞵHy ݅GjeT)CRU5k No$Ve$Srozb}35 0ʯ-,XO}Ẓ 'y͌ /L6=a.]7ѼPch+uWiQBh xDCܴ!gx$?ޗٝTn𦙸d&:|b;D E`ywC5k~i`ueTj:%hnAHQz JjU.[%( 4\@D=uƧzU"VYh HH>r]S&""zsbMA)I!AQ̊;QD!cfH+*ZRsE҈2׳:7gS{RElL{-J[pcq vgf9F {@D^㯥'wV2>_Rm:bOdHPW'LոNl]ջ zɡdg-~i\r/Ǎ5,հvd/Fcm%?"$3A"ZD<nHW6|¿tKZԼx)ԥ 8h[b- S;5@iC=HHQ9.߳V!nh޿ V趥B@i++ jF}XnEA9$AriwkTjpsN5z?' {%vJ|KA̦~(mKVwPkb %8S1hG3QA(&GrI9 ?)54:\%ss,jA ?h8|7tx4C ck>PLx{rŽyk$˵'j`?.=yO61Y/G=Lox;256Qjx*֒1QsN@3u'n(Ƶpp#O+ x$v=4 }5h(Kk.}C+ 6q$QOTۆI' c8HWJ{nλTmL7Q ˽>8Lt0CZJ;! yzF׋=l +Q|x!,kŞXGKUAdQW"gh)5Kv,~q@r]mwF~wc8&B P>1 lN)7³2ɂE?ɢbRʊΗM$wY\}l@?~VĹXܢ8antGq2F)W|zg$5j9( \( yOa#hZzwSN+&H ?3iK9f`*sILFڝ)%,9﷖qg e/G/.w\SYy3Lz:$`'@:ȏR4{r?ڌrqrI კS `G+'B9հ26)1ѬZ?DBHohp O78{ȭedr<ˬaj4* HK9_+T¥IgaЋh"5|QF߻ۤoRԐ9!(w״uj6X}"|\s`:i^׍+ Wb΋\gϢ݈5SW X/jiA:PNrK]0Wq*/\)Cstꃒi'SQQ>8^G}petreBm4bGUP-O1v`-r+ U!!gҢ:lrUj?& &AHIDIӝ[HnHhOZ~裶oMX뇨_A8Q~I $mhG -8 18,vmhLeg)DŽNY =Rn}%;\?Iϗ1{L0;ci+;\&MQrXaJ`zIww5c#<@bI]y$Wpdpm<\V~3ʖSti OՂ΃h-$🠆ꎽy4e 8']r z &e<0C64 ew,:q;j+;!t۞5+z4<̡305Wetop$S`2(3?`)z [h Bͻ}2"_jmȪu68)i|>v?-}ͷ3n 4wˍ#N5W һF)DnIllEeCxb\?pDWn2p_1m\kk1Be0 syIDǰeg 7{BS|ج-ţT]b<7k-d$),3`ոsQp pqP fcެ6iQsʼn?](B,:날'-.H t ->> +pi 򻍱(YڣAp?չ xfԶ{Aǣ\{ֹ[G륂r Ӫ጗͎ W}W ̗δեVfp㈶Zg0aT2<Qr)\bݽJ)&FzSeDe{ !(Fc/еB2r%L63|ŔjV'w6!Sy%Hz;,qqf`;$OUo'xCѐZRCCuY^glFy/MLu5O4B<Ϭpt[DФԨ8˗=E9plSZ9Y{8K#B.x.''<`:3QqkNbKߔl!5lh$`.#;GܟTgLP櫵QD5|eSʦT_\h]!<> q'0NO"wSzE0p&xl4r>8I)QsV8RmPSBX[v N:cR`S&C,oZ2YW(H|)K+A&B?8o\E3#8\b}eUkSG5>Jz7av,6|rw|5{AƛqE]INb>3v& EhBw)6W~'N0υ9sw!h:DlJSW4tjGON-]uEO`ͽ3Mtl@^ƻpe}x}*4Ybe"vrڍF/b8sL'q0Xj6{1H&t`ȑiȧk)U(w9+Ohs"g#B5) ]IgrhBabJ*c|Q?EpOzf BGm+#$QK 4c%$bkAsȂ+DEP#e> /?J/0}; R[M[?W\^8xݙ7n+~N1O_k])4(36Eo6 \.?IN rF#Al i|&F=A2+:^3P\Kz Wp^ VqRkRrj)3V(ܴ&!XKݪ3KۨS.\SRclz~3 ;XroZT!wƺ5?&amM"fYx?0_Վ/#OыwبI}(N#s^^\¢6f}evNY/:4<(iEWso4"Qg{EEf&0C?[_,|q*C8`V# ܖ._ƦE1,;#d/F ).s,XK ` %Hh3n}1_뇀J. L .&\JvWxc8U".vyN}%e}KWkak@e qym3ZtJ\V,GBLQst̙ ,-"9e@W.5<80eAiըQvq H6[ ,lD*1p*ʳ}=c/ђJ^/},*oXϬ)]m^j9o-LU;M!+cq6dējVTn): mP,OSaxUrċ`,8P>|Bg}06.X4 7b2kX7hЮ {e"*bg{THLrq N:U$@P ܰyڶE/D';C[̽pD.bMBDGr8K4OxAÃizgW?B7 QXy]'B'nnu z(M/S&2[ Ya:@bV5fd1[oz 7`49sK/}Sݲ|]i\uJmeu8%mVe s*`6":8#PsspW6dS f}N"ʹzL u?-jq I/G|wԥp'↥U}Ru~JcD^ ݙp^ N8^k%k}ݤJ{z]=Jy JͰAeҧSrDzAb4n W{ Y75r ~letph93j4i?d923e&H8.vh7|*0FwHs9Su YMIﹹr>)! 0ȃ{״1wƅ&h؄O<|q86M+c"u0B",ch1^'cr2{hg;B#ɻ2 J&$@'.sQ!\υ6e77X$^m)T×0]m46 B\P^.]W\n;5#upӃ SckĦ=4zR4055T|zࣞ {_‰25&k̺k03DD Sgx3nU]"KN~` :!Pjt+@FloZf` :>E@\|,7 Su-HBc8 uF"ӓIISVX6l*9|Ag Z J tIdBT uS5x]PilҷV2W)v ,,U[,Wȴv2v6 ݆"j,N ,/ߓ;Qq Alծ͝!HZ&*b3&_P4g 3875NHa@w\KǢg1k>jV)܂YUٱX #i%KiHHcW!H jzb(ƍGo)]So[zE}jhþfu>|^#-a).OFMB&Y OʾU˘jx'/y;OQL8S :AYe bWhǗmnYݏ&N&aCSPO3";͊X:E!qh{o ҳXis~d1a9gF{洞d_)(%-'t^>.\֕M- D.mu7CBH^ރtL`RAzwԆ^ibk2śg+m5:#DmIPd!}tNr&SΑsgߏeQ=Q YT,#:'g^37M?OYfcCʱ* gOm6zY&Xq냦\IJQGAb+"%w^l2=ڼ)yXifY;e6pn2yp $F60w9Dk꠷kKNNUC*GWzH*؄ؽC Κ0y_rd &C^T f5FCPդaIJ60=w|CaTJv'#YhsqUdoP2Zqd%o O!o+}z>cia}Q뿺<ڙCƿ~s6Cq!$ƈHrg0 MeD8[b??a#3M:j}"䌯sv36-`j=XuHoT,tKzbӨ@{H`Rҫ wP(; AH@,x]<ͦ$+wV67QPP΂YRE H'Z|ܻ5 ݀=vX+uN1hG|ټWي,k=$: ʰ/n~M,=?%n؏0߷1G;`0n5h"P@24ͦbGΪ$MףE38RcG9RΫp*~#z:( Vyۆ"U}I6БF'D*VrLX>:ӟ/A- )k @F!a͓QSdcGBį;ѣyt06JPHj P o{6? >UN0E⋻wK){3ruey~d3uAŚ]G8C+'L:dr!^`~#EJBL馅&^ͭ7sqq)+$pi09)2do οװ^B8d\F|(TI{zHFA )$z3ŸśvC`l ( ~M|=}E%ƳETd%6UJ dDptCnlW.٤ jѮ<4ުR-s]D#j/ȇ2+0rz ނSh6EtV 8^XcHݮ#kYPAt 2+y=Riohcc>B5y,aD}g$YRHnH\u:Q2@j޷#{/q+B%_E-e_:]kb5x@G)jW®#hs{ܪg{˽͔d8)o a8Mkނb@Gt}>h2 Oɬv, uBֹOknhe z9K*Q <'N界n0Mh<y&[,ch2ź G'Fbg m}ez߁M6׾RaZA½M?%8@IRk)7ȹJV#+]"Gay)x%!-L>'lohiv[ 1hq(~bUnNSd5eaN7i"0+85\; G7e_wd;Br[(rbu+YW@Fp zJr6#g\[́)ev`R6ndL cQڨ?( =;JZ]I1ιv}奾J䠗uV 6o`a"d6.]CTr}F_8!HzC,ߓQTz C]Z|4͘SąCR]To/^_SnDO"~~t3PEULꖺzp LdC*XZn9 LsY1f|P UO ~EsD+%7jes|3ƃ`krӼJ"=[#Rv pكpo kt <XDqpZ B8pOSsp{/ܤ* ]gX}W;R%?H8&X,9fm6͡jD/:j؆ǯK|AA5q mS{W?bcAQ:(bo,K(50"0VuOv'dTy6Y\K3['7F:E>`*dH'5d`1 KK!x1@/E5oXV_(t!ŖNE~/XE?-ma?f;M¾!E3rcJ nFE4^+Z6/P~. xe㑈kR:lc(ܺwBm%)`־;U,9Mݸi$wLj<{xMn,'Wt;ggqh /eg Db{V={/gkR*_ݣ&Cw9>zUQJ;XT^na$hqƐmT(0@Ku#~QE{G aDɏ 1ΔOvUtt-#8+hlC?:<vGOؓ\Zɿ)xlFƅؘ.J6TVRʲ<=W?G|7O76seN X`g@+I $u]tc!,~X \ ;.?|/*G^CT9@nHߗ@p0ƦuRx#3ϏTBGC?iyEKbϋ5?%Q8c ZhWPYVXzR&-Ws Ҟ _F(٦8Μ!K "̖U`c&nWr*D Fx R_۬XK%qmo߆E\. wd~g@QӅD$0U#bL(s e!"N/tg/YG}&8 Wu&m&h AEV63D:ə>k6ϩ|_:s]sF5t7QX;^z";r{dSڢ 2qN c~>?aחt5m `MM%p`X1$S<_A6&@[HUwN| A0r 䋳$읒}E;v B( =gWU5U״c[Ctq#zZZ W{_pKv*:N!wj`̡7Hҽ7vepIkpGB4q OvFtM+,!ĦP/;Isɑ[ej bU `yDZ.j`:uci }6UQػm,H^a*kk2݊H4㔢e9D2[!R; %O G-^ZqbɻYa:.1+ѧxzNhI, [I-žzSMljÒ*Gh83zЃsagc>tr4s(o]NY x%5}%5PJ?}>" EidO?qeb҃N'W/z07g9*j@QlFV EF:)oDgg-Hq\x="}n%~jsZlqZ5xS/Mߓ5Sg`$yelc?%:='{;؁E8s9?/vouL2uwPx řGRZT6s7n(ARR#FvzwxaƯ̩0 b.0`i*E9xCh5z% QW" qa6 (~?L!d[k L"$?\?m  OуY͛~vt+T.vG'}|Q-el<389!:/RSXuΫt 6 F7_c*cpfE#T*O,Svy@ˊEˠs 62wq%7>#_~Yp- Fo" e1 Jd0qPJtOh$,f+[FCw$L>%FB.!177p?e/<j#{A'%>Nf&W^00d`K>T !-FLj'm󩠃'c(qv%t}5nzBu32YvACއk16,){ȰI)je˗Z+̰gr^ jf xN.L D>2魧JkBbtT,[z5RԟtQs'D4)}y3c Hs ]l‰5H®Z- [*F<[O/!`JDgݜrp@*֦S:)W_ oVWģ5`-=/UI@_c -*nUCV$%(=PatJѯ*hma~Bb{r(ˆe4.`J1?Dw*4cB /6 ۍq Nkx<˒2P'U[3]bVGps߉6/һnKH")($fn ]T~HҶ}R"F2F `6:BLJ yl9#N!Tv;8,=U'1&ꎘBՎ8\78!}g(}0jqaf &U)lG=k?wah4eOMHX8rG Uv?'/cp46mCZD$}ϘE۟rK78un!n;xD$O=U+Qy }@=( ퟹ32&6&˖pv=H&grXq̘c-f7,+n[$HqV$$dx@V7HB~o|)(WNRHj#Y1DE`%R p(],r= 0ኵe*xcg݀x~Rg|cAY*9o)_@R^R^:iv]zz31 у]?M9r LkΧsL%n/|%&ޞ| X",Ъd~GCޢ~wfƱ*57Z#8z~sX,`MB7gMtk ,a rWn+;+ d9)?k~k{X }~_tLG.Nrp4ej nNNSIPi QVWb*{x \x<:3zx2 Fn q2vtJtGHSS:UHD^ A;OfcP} ;)'HP*+fuP1';N&Yr(.8/WGm16}XbM99J)jy/+p7%40D /grcY9rQ.fsχiwwD&|RM0_ :e_n hj*- W]=Hj:+ I||9aaŀL|B7_Ch|H6tg!29-KMwjN|Zn^ZV]>2U wE\n-=ъT9>1uPͯQƌj|ro'"dVj4pdtBݹse* O1va\8O*Y';h^-?i?ZFj#_+~**/#aيIد\&u*~w%cd} Nо"b2U8Fc`HHz 7%6ڹz\[Hשּׂ: {@))Ӈٟ$Gx~`p#5wZfG>6]02q^4zV,Rۧ<:Z<'tZrqی+`C Pn1;ZS@JNy{)ʘ褕C֛O* ib(pt`cJ++Czx=*;#x@o2UǓ>*z:9nKjn slW{$>r>7m7h'tOkcr`i'˵T* ^v hCciyƕEOsqW{Dḥ^MTYepK3^VE}8zmԜ#sXBJR\S#3S&]cts)ZPL&eԻ~W3զcG?%L4 +X5Jƴ$PՍt"@1)uN7[ eɤOlŒ~g@*7j ∃ת[8TCz4,>"\ M:TwKrilCG!R@&/yJqO@xP:>rQ`,jCd*;!C)4MTS4RF[g+(7&UHu- Z8i[89I 9h-w|ِNƁ荕hH[ f)EJTpH}wŎaCgF| [xgAfGy6|ud^Hc52 6zzcSA1F!vL0̣(AQ9bN8 E5\a$ }0LruQEn)h WDNyi1xߘ5 ]*ۗ^uK ]W7hg1#< Nm3@Ӌp*%gu\:Yȴ$5m~&aj͎_:\]!_!ò{}r.J8e ) o_ u yA6A.5]paI7ӆ^F/)GѢjI"'dJ"t'SO(<?A&ˠzNunI+FK:r}0Jiv~f՞ܘ.l+ >ҼrO;u'8"uoG 4K_f'=G*LgSf&xIn^ 5`r ,`Y %` =9L)2R9۫NFg]^Zg}|fVaG:`yfOA" sNvΟg@fAiVvY !%^`y[ >}i kE4 # nhPN]Qٛnj(g&pWڅmhݻDtG_MCvܤŶW` =? JO⣷&yqP^ڈv уC#s2a%PS\0=&Kz)Z_~CM,) p~-Xϧ^4 ٞ Ak5z_2^0*i `~QT4[k"167JJd^(;biD1'&_݊,H!T#BFaq8<o68 'yƠ MH\9!2ׇe $( 6!>4# L&8Ejh2\meS_2m}v*K@-dOK UycQ3⼩:A|_KT7CopXX|X/@9ʬ;.< 6& $&UϿK^WtwyLxv(L:fs*hcڂϛ&`?a>wr3MNI照]>6*>۝)$r媻Ef}OBy۶$@V:Nkp%Z-=8y2?JIn%7y,-8pJB&*3F2pxcqQ{ A qsF,;-"۸F/ˑ%SmZ.d\/rmJw)_ G8fjحd쌴w= r`ȋǦ̥JyaגuW7];a:De9 9 V;) 2c#`<>^  fîe'@W]daafXEn:zDsRiFyM\6f霹A6ӠYqD( IχzLSN/A׫~)|xnUqYc;dL(bQf:`hdp{ YJ &}p,p{l_n0)} .b̼߮UIpul.-ؤ,o&4]C qƫY7$@"ˇ25<w3&m RtIuf #Jo;$MsT}DCG߇8 &.5"_İμ9,۹э:R'􈐕/]rh"vf(AUG]j{+`A(,#aˬlsoaa-/ xS%EVf[s# wkvZ˻nNrr( Zmu> 0^Xg]Wy7aTo]9f] 01 EDƃUa?PQI'þMzojdC]TDXfТHImΙt)s7^-&]QR iTڴ^v +>͆9 Th]Ps NE _212b8QsȒPRBxg˨[4uv^6Y\)|tk+1A1LTߴ p:Vџ.Y|wGMٜCéI[A!jrA;LLJciA!NG+Z ~xjPIq>3K9nO!H ;U 7-!hA3: m]sem{C[LsM *TG-N8m>nI6 X] ߩ媍@m {Y';V(kNY\aXW,ʠ(ȵ'J9:DDYCp:'C*>;C[Ҟ-9J_e[H+Ezt3*a<-{y\ޓ-xn~8ZspS&"4{133&] UtzgfÆUmĤ 020ۓ]d5a6%X3tvKkxIN85 /WmE]e럯WD{5Tq):o( D^SAtƷQzʬp6hl.)1(L )XJ XQ=0H-dB/y wNtݣ W˝^B v.߲=W}c2Ŭh *?H=t*, qy_(݊q3쭟]$/qD6}-F` P (QNIY'?_jABB.j'#pX׵ sf4 |"Go7 qhO|%8iXڛsK>}ߍ q(n<ٸaX΄TEWEldA&~jF5<na@)</,蛗Ig rոojQ&^ x_<\Ԡ 16|l&SntS_t{ Q: S kKcO`֜ 9eC@,7KEhLխڭ!?p I&!u.Г0q5P(ki( `pmg/dn1IS13媂sP/jD-5RkKKy>s`GG61qBYz>gv(Oڂ.E4=VɊZVgOݔ5-9ɓ 9^_ q6h>:/M!0;U d)bBik+{bUW2$\2 e5UP*PYDk䌄5ciq)nCs11Rk*$oѹ\zfqJ^7,dwjj9!S.Ϩ˞d茟5\aV~7$vW?cq-zZC#$чYwhI v>ġ;/ NyDzŋoO"FvOf9|2vUs%%g#70A:ՕJA$#K^ 3?Xu&f[Dm,5-OҫGḋzn˵81$ג_(hRY,GV+\2a^L4wU7@i%"E7qtQI_ Vh&s7NHc5џG`!{*J?p8ͩۅ/ʞ|D*Vʝ[$4O MݯW 0\{4yC*$+1ÚW;v|֦.+}A 5Y{-J)|̘+ j]XmF`~L; qA+_/gqg0uRߛ:wmCSMζ`džSݪuK, !yrEM2 ]< >7bt_,.bZ+b;oN}[͡ths%3l[EZiiݔIP/Z r/<ҒeYZ.c ӭdEBvYEi?_`e=LK{_kS"͔úaDQYγ?a4@T=M{Zɨt%U!r<+]8  guD<ǫ[w=TsSt_f]P's9ƺ8UNQl;I`vŖmٙ>)6`{KJ֔ɩDX-l:tp8 $UY(xZc);8S e\egvugt֚5qZSxlB4k~9e?* ؀za?~ 93\Bۜ3"HLe dqY:_>ֺ_ {V#e۸:Lc %? Q"jAb*Dy13y+t\qx,_V]5Tz:&lURHwqOotpBp%k{֋s+ĖsQ2l1Ennݠ567*O9]j fPX}gN+kptn6 126.KQ0lM9p/ζ(Y@n>> o}IQ~l.҅@5/ܩ&i\D#PhVݤ(W|դ 9'OFqX(m9Wo0WVI,4~f0b2w28ZOqbI vbj2UܸQ4ۼ[XQ'A'-B\g)ϓA4h̏*欵R#|]D& > ^Tܺ2U{B"D~:Ei8ކJrqfh?X6d-Hk5+ڇN?q(҆B MP7uÓvw\c52adY} ^q2ߊ$uf;3x…SzB^i]\YB?LW!p׻VbBItQ/j~ fRYn:J'S&m*Ї :#h/6&ÆRws.Y*'8 :sZ_* q̵aN>uIƞQ fb=OjD U=`C#O14fz qfYVZ,"9̜V}Ev}Bޔf\I}Ԡkn.~=R#Tڍ ۿOZhmبl_}߮BP3:<LT^})aZCyŖ#Z2;z:G֩%zxY`j!F{ɁP2vY6"Jc?ͮ^<[8Sd"P,O, -8G=*٩3 r{ VŲDjLk\q<"k'PS9OSOǚ1Se3;s8^=ƥqH.Z4 &jF<6"4ݢ 9jp_P9R/|P\ -5V#JMŌ\3oRcTvJB/顡.sY־J̘}UH*?FAO)U]'A>۹aZ)5EWEj`_\ i-%:1Tz7O^, X6+avjR bF;GiMvȞox` lC6ۇ/1qyڥW+, {KihűGj]`4hzw-=2}T RD9hZуoIGՅ&6* wV`-zBOꕹ׫C-r1͍*@nruKfN7Oe~}^%U/֛ՙ9Onٍ~&`仓AX&<יxZ| U C :bLKFq9* 4<:P6I y\ ڿoF.;­Lج,.1Dɒ,Ѧl=a'јd(H'[o~3$`h {B/7e,25D&ʅn[!ӜU@sZK(pzL^|| cmc#pPfuO#$_Ƈ->])1 BKMqq1MSw悤"g29I*̎"\4\lq:q) Uz1_v|gu~)sTW[&`ئ[6&|dߖ]U|CWRS̍|^ eҐ0F uGM2PL wBG`j̮H*PK0p2m<hj.i١}~R`H k VH* 0E1}qac#XI2otP">iuA[Q_#c\M{q1==7;9m"5odnC칵ܓ噞G\ey31.pX`4'_VcAmLsxw%a3{fl]$kyz7ş.l ic#rmb @2X)G獤)t}nǯ /fZ{H Wj~Qp1;jbІ.Y&Cp$io7K-G/H=r;{c j7]P}s/-8`ϧe 9-\qjvHόäʝ32&֋Ka*33 (K|b2{w/ guVV4'¶Ql践.M*.7WHfu8h\{XzZvmO_)+1a܈BYɧdڸD$eNB%2TgD ^|_'{~: -PMo*}+թㆃPdaxϠw&IVCQ 7)*!u"r4IXu+ ͟@ d ˈY)]Qo-XI"U}8 B1։'%J1Ũ)aAIyPKt_Am\:H=)缇רKt2 0ac^f)O$3iA\^8u,* hRHZ初 Pj#S+H)_i/}>FQtciVYy NAlcmW @Eo'I=Dž$psθc8h& ޫxvUNmgfhDb:b$* u@I|pZPr(|KD{EZ \MVC^۽y+q\}ҫmu". V,n Hܖ*`Qmc@+@}8BZffiuKQ/Er!\u?&2r<1 ;qAHQ|]xZj<[@&qŸ|lҺPo<-k$f>7-_hмyT]}1_baҬ I5)K]%D{; _ w$a;2@_H|4הO}6f]Ew ==DžF{jRU(pF-n)I{ɚϲMv@-!Mi*c3Rz5O$5v$$7驪*0YMn=SqRn\tUSImgsX B?-ͯM 1]-RpC  .C͖/ &*C{} &,I. X]5%6`&ռ >gnsG2UCaXCJ @ E *`gAd[ STnk)}3=yI$q&.=ד$4NU`D0 unɶ^ؾ MM2Y+~UK^i7/ %A ouI=HuL3@G-wAݻR 3_NsBJy7 =~ȋ4ݻ9a/$Y \#_BbO$39Ìr--@o!txȴ6rzkg H7TnO"yF7JU   K'Kg3LW [+7Ja_ME!mPzx*_Q%u2|AcapApe'*d;Ycb5:xWX)/A 6Xq{mPYR wv`,)-AʨQZ>Tܲ;D><7*7%g~]e!K(`Cdqhg=肚,;!#0ʼn{z'VlcM?["'pg7x ޞ.*0BΒ{YmxXdřSORc&LaӣJĮ coFka-^]_dbտ$J}"/'mX_B?>XQޞx%Zm2#n BSDaGƐFjKLM;HkKr1hapBj}v)3n K ap2]#X [ hBӥX69ȐQBG"iúpymqD R73jJͨM(_ UV4KFz_bҁ l_ 7+yÃ,T!ԏ88+w'.Z|usq_DAhxzPlʗs&wpj]Ӱ *=9_D*m9"?0@U;Ckn 78&ha;;- !1ow_'qWajZ!/ 衊B̲X\pXKiZqJy:MrIET2ބw>O3hڐn?N+:^ׇZ7Q4yUr " l'uɓ+MnXivWzeBwI.?߆MWelevyvDb~e6Ed `Iq7\<i$*2Tځ^"Ѣ9%:U8 ZYNgm9rK {(M[Npi-%{nDž$O*tckQAۡ+/8%>v~0۠W/T$H D&]Jg ;S-s8Omgî|^78~fC&Spc/#xhV4l 7h&LI| Ea=Qtx c($yAc&SPd+Hlv- "&޵(:Q*4~p%^}u:HZQjbpp:֢9ZsO#M 16@Aß4oJ2a6悳+5,bhN@ 80SO̘`b\֎!̋72Jb4":2JsugB#Oe3'??[1%˱tOTiqbs]g@1Ò{qc]n݀H/ D-?(`0EyNaNrC}aO!8N6YRN2+Rq0ο7si5s@nbw9>pkc$12mʆ2W@2j87!Y=cJ7#uo>2lFzU[vc)?/mobBv&G52/Y;s к}aZb!T$lP强U]9w؋=k6d*4y6H܎6~-\d\upx bs!usiho}SL|C^4' o&d/ÙɢӲԞQf!J%a|h PVTЇbΗ՘˭!\=Ǝ 8ѿ@5nYnM|uf1 }P S'JfW]p 7oဴlq(!W_ՕO٠tS\Db yD֠o%k~"SGNRTwU ҝ`|09C"X ĸ@/1'< P7jIX=`=˻~UZkDQxsj]j /*XxG*]yS`BX,C6+$⢔K^]= U2bww.Ěr_71@*PC>t C&!w R"u|&'\&moØ4KW T)?Bބ\Ix=hB\Z2b!'H˙ƛ5 &uU \EI&hgX.u ԸCE KvsD䶘Fhѵd$"ΠvN{TFÿ'] +\4!U;7pNK@Bco(D OCi 'Uph榉/tc_V[|E)ȓ8=͙c X~oN;&DA{7PZ!a)? ivZ*dDTD~eir6s0G(I甿DEՊ˘fbh6/-$곬oɹ;M8SfYqmQv(YFJ°CLsE{pg}bٞ5(cd/#ӌ9ijMΩR-ײùFh?僆B%&T >ycQ^{uE r_Hl$ގ*؉ :N)%p^K˫X-!"g#SnsvEv\ zuɁîO>.=:1Tpd$Kf88à ,ZJeFą7A웾|/XG l!vM%LY10jJr%X]]WЩC9J&@@xeQ2P"q9{^ol*HHRoa/2]GH1 o!pVt«upDq ˃T|A~vX¾$?~l4`͡Z@E@Ώ.C B(c۔IHZ>{so=|\*#ⲪsȄ׉m%m@Zm|=1=Ǯ}Eԗ̤ucL1Pq;Q>6f{ڵEpqbqte9[E䷃$ZUPTTVr~=JCCU+pŻ>M/±R"AQEosa%|(!PŚ0x۠./dsE5qP1T/[.RG~5}Abbc C/gE/07<;jo%Z5Uӻ_RɴCoÚ=yڰӫˊ+E`4淆HZ8k/.o l&XC$S jveKJ@z1bnW^d}4 )nEGN $1 x]f$;^7\3datZYze f 䁀Yha+FR ,r}ɾ%1uX6Cʩ$SSBX$<9~d|0 \&zb.fJ(kǕ/o pҐ !彰4/,ӱ|K'\T.iw^6\䋞H8+)_AsˏԒDxb6"wDZ" 7'=1:$dbN>>Pwxە"F'A?d.큄c$C=tectYZ|AKV[[~Б5D}QnĮp4Yg7[˲ulQ'na6@ruD١uPЅ;VL8u!??#46?W o}w>4{6I0*="s:YU%XAgS寯x)5YCiٌfP@$LѶN }#KSC4} ՝q8J{'e~ϳ[ (:)hqtLпA=2CL@=R>Vt+o8 Sx#rfk"Wۑ6 Cc>10?LzQ0vR[: VVp3ᎁ?q% ߳=Z{t7 xLKd/Uv=* oh_NE'ScHf 6ltb P,YC&0Z d0IPr?Sw[*϶>1/萜 a%TN e%6\uH ȣԕ 9*veP?&ap0=x9wlCx .ɖyȜ)6ߓ{a>+šl^lSs^$ͻkXh}^t9XmPhrIѝ{&E{y6[rN *d+@G6hha(hUl. "ʟ(^<'HBEd P} `FbY7y@o`/NWv[( PS=z~?p@r[Y4 @("ceSz@8XɂiD\;1yU~{G3jsG@wCo0Uڮ1_|Da!/,х}Q֊\qj*̐tG4g=X'&F>2EVߑ۪F,iֆdnFL`&ƈ4Mw;<${ d֩ +hCm6Oyvlhq3 gT @Ӑ=R} |U|Ns?o1z=</P 1vqFB岈Nzm{yNOQMAؽ۱Jh9Ql&mT ^1/''dsTYK$/H)Zi KS sDb5)ش[z11@VZ,0MQ77#ᲁgyJ$rg)&“vFX5k׈ #ZVyher?N45a.d]TuX)kt}3U9P!@ڈ檹`+殓v1*;<,c۶[AobJeHwA̟ٗԹeA !#hPM{sb71d]&* %ȴW 4` K$< RnETA9mI҅^>*FTǾ~ͱR(~_\n‹0[-} w,jFËHߠdMTqŎ=r/9%\9mhA4k? (ޱ8rZG}W-]v+dr>[o`[blAZaHjTUYyv7h/Hq, Pʼi˲ٷTb>fsFEMGyr($nƢ*j⮺lx+9U+O1y20(u!9?u~ٌ<.b7Ǜδ z,GO)H  Ȧ|A.  n>C) 1{vQr^gptP>^ѻ#j3IB9txw(f-pL;uryHR>FGS듌/Xm;E" M^(Wuh҄*pPvfFEa̶QrPZJr?*,*rqUPۻ5Unjiku領U>ʹOx\- ~;kQ䪨r_R=N9mh}ae랹Sz ",jak!Dh ÄH3!YtOO/ K:upAwox%OF&d"Qz7[ˍ Ra${HqoM>6(l=iۿXos3ݩnQB?[H?"+x0fSk1 WgÍ)p@i"aډsBu$BnryǀP YM۶3u%dgHkCb8mjEL^H'6 LZ}L=5Hƃ>}˽6T04rx S IOcV:tq"'zT. ~U4ohhON-޲scL" {[ĤBG(5frCg+.=0v E1=/>{S 'c%Rf$UY|0NkHDn4=y"Ȍ@$YC8*/H+)5D"Vϲ n[#ߐtK£ Yf9%EwҜН.{nOhwQsIXɄm!bu>Q,)* <ܳY0$5mU.8m},3IH"A>^``Wi*'!4i!u@s'xAri7m0gJH35 ƾI BNEPE=r=*K,] ¯V>&o/d&|b;!%];#MYbͯvzqqnІ<c11ik/ea"[ϒK]5vعdnݮ|#LZj;5,2v%KNvKy4V0 DSbL\YP>|GۙŎn&[a|U i򌟕Yc*-5(Jex,d)sK,+V۝t׉Pޭn+m5M채hJfbCڨ5ʅpIaa9z֥7|Rط3>\| )R0 #*~E¡:PF9YWEfr:4oX!FnBgsfp6ղY* %fF+q zsoFOFQBZE,ed0hu>w_<Dw@$ڭ.ymȞ<ǥ2?d,RQȨSEJGƇe^{z(=c>׭tx_p]q詌q~=hO_֚.'z% pz|B=pFp뵸L@u>X|fn48o5y8 |鐪+yǤE Ka\j){嫣}ʷKx8VR:ѾB4f5A4<^zWū7['+klq!N(&#(u %3ak\VTGsleE Kd~2z2$3U9T4UYqm$v>~u˓}O'ێ-gïJ8.d,wdw K ޾2Di)hRgAlJ0X*B'F:ZNʍל[a#M^+!SV[&J$=aCKK6]ŵ% ̼HtuAAB@Q -7RD{FRT*SU怚Kq+SZ$gS[~+, 32) Mhnk[Ϯ:3M^V pԜ0r{}gPٶ=Jn?Oj*wXLvp&:f@sTI2.\R)n Fe ZoKvcc͈gвIs7\x;o)̯CҘ10;V ޫo6@H#4wzٝ2C2?6ryob$mJ,ChlKFk~wǨ'/Աr*'m~evFg8qY#.JK@+TSz[HH~q#!751ېz XV]KK([GsT x0Ai]-gȎ4|3F;+!F6wr.06|l#w^p:L-z@$FYO/O)/⥆ƍC3IPB-Svt=OjcRSNQ- /1=`Dȑ|V8tSn}t!i6粸Kw~V'ԪlRuDO\g0L/8""5S2}d4pK"ߊ,Z;n? ,]wЍfBY"c d+&s{A1yJ# %s 2_͚Ӳ2-T8|-|\c}fWIc{P _![Xh_&LLpLцyj2W Vzã9dž+fs硼@N8%%j:Y>3gA{3&x$|b咁YN!S"!=_:3]wuf}i:Ez9'y>" &O櫺7dm&%&d? V dG B=)f/,Jyj֏}s;@w򦝼;ʹKD?@e۞uBGFAdzA-ҀWb y4֊B,޴7c5ϷϜWK%oOI]HT4xڀ;,;0LgMCN8~n'HYtre U\H22A1_rus((NP)5?ܔ>H |;mU@{ΆU?U(c%eeSROfd@$i:abWk)襮X'zy[㼐t8Imz{M8N1FVAx<^.JLZ-(B zrdsG*)^]@k;C:^t/k`Mv{ 2 ٷ%v|ƿ3K ›iDV1|I]OK#'zR[a#cm0[>:CA_jqِJj68xŌ^Nhc+}p(X^D1Šy3>,_{Hpv`?7΀ +Ox$VG2'{56Kln>"%o_N(j{Pg2t,Dh/׶E:1p5ئ3'&]T͓{̼3%/$1C{sGI!i4r{e+6ȏ !seReh4:OC;Քf)j.kE~S-|2@.YYx8;8RN`4r ͤ'JZP y.r8#O_7*>ع3n eUmIC^ifCG \,mB\+,m*ˉЬ m:>$ߝQ5"YUMuB V큥w>hY}D!{ZR|i9r t/c8:YME@|;RwDŧWS =NbBTgMCC%JPA]܉\Gt4qފ9Tj`qC)=D٥׾H#g^Hr=:2hȣ A}%F*s/zH#p ZD¸|qGw_;꧳um_Nƪ(+ tbprC"A&f`Ѓ>ziNmIt K1,:TcRɌ#nzR%[&OO+l`"Hv!A "-vi(9`3kΓ7]2In[qlIY<wx J†5U_w'}i&Ht鱛Mhzw"Ǖܥ"(|bp,yucU>,TSu(UOB'td;|c)-+v [SV&1"Be"깥 ~ST[N*5 x0VewBveBx u|ա )FVߊFyYL^29f"q}EA  6G) ,JI]~Km^"F#sKÓi_7lzr˖d >O u W#y;sP._z>} &{PdVŶr,3OÎ /]w*~wZZirR| L}(ܡ" nTFnzQ>JH`Vr8vEѲQV$LFV6$k rKq\[1 ^w OMTN=ȟ5Rn_{~i(lJ\f? :FpUQ-gȹ~Bz"CG)52݁S : xs>kҌP=,bN7P1DΣ? pUѵvzUǶPz'%EVnB͍#RF.q9C%ijFpu lqT89Sy$^W,'H2WO0૲6+h觲T؎71Am8[@ʚ(PղSRDk1BLe)a3qWp䯂t`W(:ww L{@a[r^'wTYSE(Dn2T=tHk .\]~YD(_Hm@OR旽[v}YKr#|2iYV5dj'(dvH!ܑo3~GW|;Ij*~K7+Ik ::iY%y)[,bl1m)ߎ ߾Zg4Ad޼Qyn'9Ppt rh<0O:FB? V#Z :-MhcDEUvwJ kc :Wg~f>!ecm ]ZK"P%+ CaY~xJmE(*'2&mh%H7$-Ȑ|?[bo++x0\qY7%}9ͺ"#t00G缌_> dBW9B9rK'o9Q(b-:T"8\jȆ#ŇH/u@ݙ43캯ka/k q$cxwjPN[̧rOTT /RMBqkkr|u }'!&h@=aرLJF^ՙȊ%C2P| iֺ\γgz-N-Mg|V<, D$rɲ3LjVߧolU*cX9i09'Fm[{QJ F+Vt pk]*dJ@Ƌ4l㎦N~Ja]/\DTsVÇw[!F賧C ёRɡ]rO8\whUGSCSÙ\];c'  e^,;}/&o$o1NQz4ŕRX. Y.3j* p~i xAPD&xNOgN81F;~xY eB-ף6k.(pn?;$?&OfKcuծfuv։.Blzٻ5PN 7Y$ _bU)^qiM\ 0`1 Aw?;AvOl]h-~?-yMnhaM"#Q}NT]Xb&kսQxL- џG9*4"ܹ&ڭw ;MOݹ;fk%('Hi[FCO0=ʲr,lwZџr_dSw9h|Q6CTv\KD,>Z+HVFTX1=Axars*x۱Qt<].P`h)Rڻ%~yV[++\ĜaRCC*&nxN֌fh<(*6 c֊5`eIv 4&W4BRҥ?@OcO_ISơb\E 3 =Y@4d[:(0%Fe`#mF[  uDߔJ JPrY({O1œQ 'uF(l{I UGx;}vu|j'H /`3+ 79J~Lw6t1If&ZO4P ]و*f!}(c<3Ÿfm,E:@f!bzFWa\sspe.W M|#$cOmZ_@´_;]= *{5@,rJڔ+.K6#hZAB@_[Yk;}n 0dg~h= [K9ɹfړR~3Oc;Q t*\=sI74Cj\1h4KXSQ]t(7L}mIr6yhLCðU/ gYgO&eU(k|KrN |};ZiH6 {yd(iݮzH,(qpp #V :z*2k `7{nG)7|k[,ĵ{jVGxʢlz?iK=~7D 2 7Dz@c2L@:lqW M5868{e;ecIУ !p]݉d7"| "\.8彯`n|Հ+XCZ!E>mMuG89-2XR {|jb^} $*am.RF^feeCc~] *q@ Y|Ύ 6յ<Zk~@>MR0lj+dH%%YX۰Eazͨ2>v[/3< B$m,FvROUCTQ&Ss;ruH$c~^eL4&WӬe9#l3Y[j9veQpВH[tVk-w\m~QVmțlj ˞/Y:Zk+wę0FGa߽]ٔh 8{B0P.ᆾ}g~\-(y3FK qK9SkY7u$1ErLʃN˯ᆴѬYz rr mc#-3Otf.$Y&F7!FhItHѠz]=X3?N!<{[QZ~4&Uz4.G`LVCv9lZ-,;|23IZ7鍺z=8^uULYnoe f9[kae"d e:֕ʎW7f+tx2'g݋?s%[A#aXӰFöǛ(EDId?qlK[Xғ S|-_Og1~huU&샔?kXfF'#jiv/ &2OsԍckNAsw=sd;rOOSQ~;Uf~@\]4.;8QU6$d@BDbqsXy#$'A%ƏիϽ5`¡ XEɯbjK(9[Sn&ĆuR}Nx qHAYG7~aa^qe z5򔪲3f /zn)dݸ-}m3,;~m`LQq- pi؎9TR[Bzؙ]6]F}y]Ru{U!ſQeZNc#ƊNvH6#50f5f D'O.6 :̜Z{T @& @(±jkÈ(XfٟH\|CBZ'ґZwī?ܣUkK0ܴZ',4SPlbQ_xͅ+p# ]B;) /4*F;65no']?߇\Q7 5A׊m._]@M}drAZX;W6w{8Q#\(-<DЂmhaU%BL}81g ә/2 >nqv-Ğ}wܮ^+õR{vp>fA2ӐA&9elc:o\Fnx邲42yߞ ysV@6<)}LT?p<] hEL ,ԡ8 Mogk 漿cjَSBr[uoT()N}C6GN3!ⳇGiI7F-9컸_l<+)BP0QiZ ~`l`2!5i}_3kGc7.? Ԏ]kusP!&e E7Q˃*?[R OKL 9B^⾘ b,+PitG9U5{=DŽ!F[̕§Ux\Zu%X`4:S]I,\!T;.q@uT*9a$I-;;";J= N=\ah'T;#^von*>KNq'[Ul] xhU qv6Y>Wӝu+՚۵@Ԁ.+@d[@\"毉Ž"؃Od`RXr.e\ B캝+8T2AG[I @lomJhAp8߈%V=dKs'֩nX5xl?m #9 `A>:ܱ8i:B´_N7=;Ѥp5\30KE*n1vdQ³EڰpMn-أ8ߢk{6ǐp)[s{9h⑆CAu|E|Tu rS^R:M ɯ4(N :Ud[Ѽ+{>xRP#YqqGA,N~iYpKn6AϺ^i w+*4dBhͤ G'T0?1}>S je@JP6Oti}d{!G<49<=%Nʯ ڗMޣbpL4㇎JpC8.3ʨcy8P͆?#@cxN~ڎP R}amt%)28C*<|M`M4S;m9沴q~=T+J!m SURm='Qr{D"Q\$X0Hm6͹"al Miw="Gt Ϻdžp.FGzY.`Q@zg@h6Qt][ 7-<݀1Fa7 0N"J;}% @!t#:8N24qܣ2} _QJn Y*X0\pӜ[v3n2Ă^i69f_`JS^GSʃB%Y0u7Է@BFΓ"_bd>1; ^IoN{bGHzu <]֕`cJeG)/'i#f,?-iAgMAa-r#1䤹IQL6Jaſ|W/w>;9r|+"t-j$ C+"q iy~ b'@/A|;#qQ (LѩUJ9|h|;Dr*TE5L_ j,tt iC!&y=J@=0}L 96ŏ;Pe*K-y9*9Z "m)OY7Y~A!=bv^x-kx B^>R.0!±RrY:CU5_\H-݄י Wj~[ f1BcAWw_ NݸĽrznwn3'LOs ։њyNg>'xp{rS:_HCh쬋 Hv< g){倫Z²s=ʃ[bo"w`iCK]50(H2$C:zs ù`nj{:gˌXkB!a;738r12 8Uqq5=Ș>]$D.TO:'p"7#蝰vyAvMgèK<*f-`Xкʪi fz߁Z-XY$ ˂( K u +Zk$_: "\`SV'!$ꉫ, B,@D01S GEb-7'{"TU)TS/Ƽ\T:Q"My"@Tr * `H1%_|FQ-}}8D+`Meȴy=80ua#H_a9AY JbCsB[K̼ >> sBPCCS$r]GWOP:_*rR:r.t\>VV|"WYy9rJ57.cSK*Lz+LGOR A8:әQfqTɔ^0qnFYͭԪI۪3^/nڧ"gF,p0?@y/HoZu>Lې.49CE:폏$@މ++j̠b4ԨI= @`dGH`whyH;Eո_X0ewS݁#!|{tRKsWK5Ƽ,MgpZ]ޚ XۮΥ/Õ^+߆w6sdzs2R0Nf¾?1?@veL 1 irN6eGE<5l]2U׬B:XvM l>\tkDv%<+PH# ;Yˬ$`0 8|l7Vb xePmQZ•2eᚽJ 4HxQ0ҡt=C>A{2 {i^lg 8^#JI%w/}FV!}PspA&]\ (N/k SӗkCE#*oZy]J no$ s,YņT?L5'S-AsW`lO̊Gԥ[]M4m1u<9|2[sR;ڢKIhvÚ$0b KDꗵHY1BrכFO7m.ኺ&v9{(7ۮIsf%!zwBs%L Id@,1"lag҇0O5Rh#Gp9@|јùfRP+jf5Gv3/ZD-t?J٠o"(v]3fə𣔉z\.y^(I@; |T1pyaybG{ƫ涶cs jus;uDF0j\֡ EsRnR5KB!7ܷH:=g`F Mʈ?8&=vx(=5x%KSB![,A35+U!M[GVg]Eh~Ud T͙@¶ b) hH*v,etPaJٙww@A$c O:83P*|,a(IflPXj08u:%Jv01Ɓw.YmTW/wO`gC8 V5zLx#+N)0-MеRt2{7n(5 VBn| Tnv >CLw=tFGUVz 5W1 'HA}fcϥ`LsMk]XPX1# yn]a0ʈ!WOa! H4vʭJVa%(%+#l  ׫~sHH.q HL]'+ϱk48.m|/!6"yAkTcrm-lBiQA1 0TZVe`SQ Do WX/οfMiFC<&0f>K\+-%)]O1aX>H5M bwՊD ZHMJ\]^LqhV~@9h$mFVS" Vr[MH@ {Pkj!цZz8ǹF[ aK2Z}uĿmQqmI4ѢWvu,w*_sƘŕ;ICwI6"J(հ)GvHǖ;KkڞL87uC:A:UNF |Ÿu⓪.1YTy;'Ij>{|T3LBQnVBLH2ebBa~CMSJx|}~0!!ޟ LQ^k9QiLe.ٔz@ 0!ƈakRzWXA98 ]"*+*qw;꺽AJ6ܕӜ7mXht8.yRkT:[$i81eߢ0 A3ƞ%&D>?qEuy3$EGZEqڿ?3 Ƿ}P:c!>`VRRpfO>@05A3X y&P MҖ M={NԄr,vPϵWa>g^\yf^ #q7$T(B6܇e C-zѩ^;ֆ =ut1^g"oO\r~%1QDLD6.Y}k?iD7 L d(JY7@8պ|n , W$T~4S)\VEӴxpJeʝ>6JCkjq,'.Gk^DV ob`t2yQʺ&Q9 u4@E@,/a ,\C6.OI9k#Qa2WO^թϧGeq'D Z)y'WB=]$/H>Mz\c&_MU\G0rBW-&KE\ \VrX1i"Ӑ#`oZblJ% sGZ,_p+ٴ}Ph {8ؼHS(i̲)<1']1c8?d3Hn;X۩B b  gLU#vAy[9+:s7z?F /b>rKDS<ڟK+%3vsC@v[wK)L׽{+l$fUGr=Pro93v9pCQbqs}A.ܗJ~Zm-{#6P~)QKBT5Z3Rq[F#8 ajX2Scvk.#N\3[8hw,A{Н!7[}56MvROtIR$RsB({8#wIy޸ad: QSUB}=M7QgI1|Ȯ%9=.Zxn 2ޖֲGCӀ(HI]*Z-جl b9N%ٴ"0#v'SKZ[qʪ743Ѿc62"Q C@ZĽJ{M veJ9TwʲJL)K4{Ul=K'!&79:L&Et,]i7=La$vJ,G1^]os@vC”!65A I_s=}ËG-GXD\wy z+1yPxSWOV>˜4^_N}x1 [ m~%g8s]KFt&Tgw|>1H#9 X#el88pMZ{s?_v߽[otm`rU 9G,^XDj³#(au,pct};5#.@+B$}XvDg̊__ҋ5Wn~bxǭ& <[r%\ }h⏬Mv%p9_Uxe7VHG@w`YgfGh*6 QͅwK%}F_C ~X=X 4 _s9n2(eB58z߱Z.-&ᅘK(36-+cK3=9Ų5#X/K-|N3)km-#AAL%AԴzXKuR;׫4Z#~UGEL߲xOHJ" 8O2VSAٮnzER% *{j*AX 22ږX7Z].u,<f=g? vʧ 2bFԉ#o`V12af҅MiM- 5rWĐZjcC_:K*Cɝ]ةI )M`s` ,aQ6@N*έmE-N|$X\:v`jpi$">JyBS;}\ ?%k)F92zgfM&)p B^XU*  =KEuQJ.مh/CV\lWLؼ`;ѫš<-,y{Y4t:E0&f!N`$Cj: fe.p; 269S\_ժ`-VA2#V03B\t *I6Ƒ>^$>5O[^y?Lُ^y[;1rc=) M{W4׃EXq1\K$Zb{OAy󖫔`:'e)BP3k=󄚧xI95C3vs@1̾i{xU!QzDv%&e8PCY~h4#!~[yL«%\@y>HIې@%xviCXo}k6V%;Iu+*~++gGN!ݺu-r~:]J]O7eJ6 FmEوwvoxj^V8̷A\!ra^P,~Gua-5g/AXM֐F2O-}p %ȃ3`R;D/;)^{"h&YbnXcdD >+O0%kzq<=TFcGo^CEd[oU"B s+nG6JxyĄ v9p}*6}L*LL:TȮ*x̂ፍ@i$3!*Z:N7gGJ|YU~W]^<arsI𹧜0J~Z2OGe<)QNfs F^3S~nsW􆧆c<_4+gWTpȮBEkl=vݝ2 E㡁hWC<}%gP](MmUJ?+wRU_@([\%Fׅ fɶC%_I?7mwpҥMcK Itz >;wp\E&ޡ%Vߝoϖ>G^9\?\Bt 8LQ^wf}Ii"ue CR@/7RnZAE&YDv0g:x?Gh6j 7O"JD&r5 |YiB#,UĢx˥9ONV8o;opQc05 D YƥsIO<\adŌ$ŪT_C(fdظmw(({CUm_sj]wsPw\ׁ a ;y4_=lC+6n@ԪgĆ;la=pfm=#CyY02K_@e 5 ؀ t D1Dvg%Zkps7m O,SqyʈEUkO`[bdC͎50s;F(],5hnS[RD=A,|Rhe^ EaXS_L#قCY ) B/X0o liϬ[]idP[Σ$D,Z[P9@j $f|4,yBKBoW`KÍ΁ˆ3I/U7U@uO_^uE`d55aƱ]^ 8 nj$J(* i7 f;HKkh*x 2ÎOOeZ, >QH"TV.G(HBG~ۛ0Uw:APXl[X~wlm]0G57% #N)|p7*BM( &t;E/X%:$/b'75QSd"bdqdoE_Q~X7 gҾRLYLRv^}d\"/֭`)6)&K?3 YHĮ}#LDw7:QC :oS:!ӐV+v&2 ҈x+/)Eo V n9\! m2+r΅'$<:5dH> ]XfR[.Q`-EX?_ @Thx]y J7f7:Z▔s?3d.VɃтyhW&3'oL 鷲 FHLWp7)&%ѕtBH~^~v;KNEF6yDgo#~f۾%-~ p+w>s+_9R㹿r$ܲJ@5۟5"~J'1 ZQw{O&r ?NU;tg V}'%# .m -G%/:W&f5rOwFBU?IK0ɮVfZSGǂh3=NaMvQD-Pct&TckPR~V7yWDH:szL‰>Vx~pP #Q~R%8|{$|,`:j7vt?IEmC#YJ<lLDF+ތ c?aoK>,Xִ5b-tǯr{KnIH8|&5܆?"WkVpa(ca;JFŬ],Gۥi֤0fsa,a{w \;GhZ&6@3Dͷmi柇7!=-o+; ?뺩VF}JtJx9) Ʒ6̼A#ih][7 |"%ĺf ?jJ2uve:qQ@#ިoC}k!0fh ,Mk#M'8&X]b3&6O+ ^6nԃ~#x`ג[,0oEIb]Lr$$~Oq_f@( EI"M-J84fؤB\mj0˃ ӺA<3f Nu7:Cs;eM~܄'\/%5\( ͽ\1$?j 33#Zg-R7;5Vgڨbt$g}*= ߱#b=B0Ǣ!(@<-NsP? Dɗ[rB&bN#m z*E^`{C+O58a 5u݀g^hg߱vܠ4+̈́-@n T8cW~X4Uל 0R:v^:crH9Gbςg 9?MDQMUag(2fpG h4ܥu nW i4[o,<s]"ЌH?J̒4E7!vԄ>5SAvxf_ij|>ĝN!~qhSD]SMS09#ފĺl֦+ޯsqW̡# aUupu/fUœ;#/^ϊ &Ȗ [3K>?3əu:G vqJ8ys)EY=uJhݍ-J^T5o;L^D3הal!!,եǵ$ n>[S|oKA2ȮNH8w%Pk(7aaY7GzЏu -)*Y{SWҩA v [ܝo6V[$(Q[$EoF?~Wd0kqxd]4̟VJ"Dl*$Ibj}DJQ ,W;siGVsnۿM/"m)e ʻh\c$2$c? P8+ bTPf+굇 6OBTRgl]tAHGa5jYH6/8ݕ<&;q7Q&llU"H [jp)2йA.!B8}G6mŠE.},`5 _C\E{S#HoUL8 S'i yTl/Wj^e"u8b *im[YwWOe&*َl 14OSRL(|qU 瀆WZdRRё[l-=ᴫlpnN۷xwGEyyzlnoҕ^u5tƌ)͘S.SHV]Wh0p*g/B#2X1#vR1H>灘 /_x™|(*s+)Nn(Oy$ly5=,ETCU:RCk#81g"/3"J" mZp[L7*rvY ٟХU5ʪ.moڑp4OYͿ՜  ܂Ip hBqD **}HwVSUp J*wg:\K<+ D7vê>jQtwzqKT.:^T衡v<ş#3 x.Zc.'jnn=@QL o"vDwH B4Csr -֪ľxGsuN׆PL%3'bǻ:%%$2sۍK0!)>&p~ÙDYk8YwbMj+Z5HT£(9D&_k x/h᭒25=`6`]7 S!{Nn'n{>yBl[±!>.hc7tlF{β,gw=&߷Jz☮U?}bdQ̵lхS(a+wrQ]>fb>9*7BrO_K&HS.Ec1( {첵lT\ v>ߧ>Rꈍ;1`!LKEi؜k7$]jN5Y/_\MR ;ĝ~%S#AㆽKTh$~SX +&aGg7SZDy.BDvƭYّ!*z4zbHW6m83Ք|Zȥʹ4!-]zl$T>s9 IP<6|p̑f')5WԐ^ `GRJ:&7Fs"qZhPAjnRlͬ*Efq+m½dY<`tZV:nO&SJf?W9`և[N4 ]``[{, F$) h-3#x*1/B$< #_|-w:$BɬsKGuy+N YeP;=L ٮ*V? 'ꎤdG!b*Д+w4&]Ppm%k?,=|Qv&>5ў=LY2~'*b[~i2Ĝ{(USAB3,hY^`( tW RDb.R/;J" 2+<Ϙl)N߾%^ii6h>գA;4}k9l?UMJ 1m<gЗui?ccxۢ@>=iaT5xr` GSX,8l*JΌ^(=WYU-;{Y'0ΗF*ȷz6+dWsc5σSg`{$ȰoOrR-9(D< ntYvR*Ve5P$q`0)avn8xCZ)%(I6OA !S貣6 `*j$)0+o˘zQ(ћNy s_z 8Z| vz9DŽ~IMg2 '>il5:0}DpdG56#ZTԄW-*a, =' +{ uIɘ}JΨ~?W:OdDx?D9 f>w5+eEL0D|]j?¬˷շl|k[%a;InX+f'$llb (^yXNc̎%<=c,h+Ƴ6|¨X2A,ΩRx+ Oh\@qg brisyH[A׃ήct|'tN $M;ZQ$y5 hDT @f K .͟U!j+ˇ봁6Gmeթ59oz5{%` hJikcW!@D= CƢPu4mvE2֩:pk0@RHjǾ! I]P~Fט=:~hə[A+ &ZLaNOލ]MFU)[,6t~I^AxkK-}^C: {Ou53b2dj?R|Y:iM:Ag%pfF.xjt Q>i]/c#.[K%#@A)n~V{"L#`^Gst=UpLMDK56B>7Y~"P?Xauk/ǨM2Q,zuL掁1d0Ӹ|ъUAs+hW^^D6)8nh,_Q.崋lnz8kU|OJI0Zc}2>둡Vª4AY]lw)N %dT 'YUO0ݛZW}/f4+bzڪ( \z(σ*ַQi[;SOpƕMfJOK&f.t߾O|  |&ȏJ\b [NZk",d?-E/p:N!$=rW{H+קXRGG&7$QS-?e pJӹ~ɕOz/V ؁|x P>r|EӉh9xkD/Y^mUGq;w)Q5 =0#lN\,2El2/V.H aq>\OCJPS]댐PFލQ5K]oW?6㥫11J֜QVn* . Ж"BhyQi!<p:wvHKTC,GYu $ЪPU;BF&"B\P0;B4{sV*<=Qu~qf@@^zhcLWP$X\}?[ɣrI2f[яBI0"킍rƢH IDDidp\ʝzVą`/zF~^~$rbG63Gzd4_JSj?̴o9gpWy JٳR#]RCȉ3kPPMyQ*qFko1埐hWprßQyĜ^t%6ɍ_pza8|rUjE _,%W Sg\Xr6vwe(,>Cq=w!ҘK*g},DqJ>E-Y"~%iEГ)c#;ie!oi}O? zzRx:X"_1@cȔ"xrU`1?b[|8ldOi^m^Z8^S7ֈ(797VۋIITΫI\3}Cؔ PF8rQiX-+h@Y?j%AyҞ4Ga2q!-&E=Rʻf3'gl3 9-<+fh_V?zl"}8)39/\ %xo*;S~N%ߴM)=)  UyBغ KI:B {9*2i. e|Yl:X*/xK_`OnPg+tNW2u&uv&T)3鰻1w o wg5ZZc~AfFp%RaRtö-ɯ4-H*t {JjO\ 49J"ȰTqEfSfL79& fA(PSH@;qt-C9n8=2y\BXUx8ws/os],ub~Kaⷱyd@Vl\91fP0cSQ4@S*I˝hapcrйAt6'p3*aeO3Unm3􃹶>{3[҂~ے_[օ!w Xq ^,g^7&Ċ@jÅroɑdo,O‡80|7\o!eP./߀Q喊SїⅭ+r`9״F"Vjq\Nb 6Mq//kl nKᵆ REփCJM-X RYokEG[7"Rs4㺇ʩӰNJZ-$5S$-4ִX- JT(LvK i\ImWu0ͩHU h|e_jʋmRҝL40\; d"'C'\sX Bwdbмf1bmc}^YۀހED*,1?0iƘs 4OAOgi! @.K4>0nOWxg<꟢&x%4Om+3KQh-9nkEIM!nEیe0Ƿڪ 3mԭ 3*1K٢b( ^;Q]:엄 FڦWm67IUJA*~򨉕/Н=؍U?wRi"vE]j/aV !jd`.n4AOTdu_UM|J[>+ p-꿟&vEWxT{?gԄ`Ė/_Hbkk.' _&ˤK`G`,d d[z-)Hl43 9),u98C)F\QY  71cej.kǷY,ϟ}o6`njMw}ӮgR-=aw2D;:3(֖jQi~CNBfNo,im.ƾw `?ZSeYd 4[򌐋NHnH%e!:c:yeFJ] łǭ#p8nz@/uւHi)cW4oewwanʌsgF#0.MԼXzQWyGt;1jQJ2ye/6pU#7Dz冈-p+ˆ6i :@H+Q`wT v=,33]>RwgFЮќ ύ :0?= cb*1ģX;؛V4"f!JQ @t0Uhqph\#*0u(sT-u.XaQyGҡ2藭w )^Ey.T%NR>r}CjarB+,($=OOUψw([4PoTCݶ$r hAtF6!}N23?(3>nɻS)u ZgQ'rR"ПXQ:7ol%k{G\@ n^o}XJ<9!}2 WR?#GRc˿qS.` 9#)O~V}1^L;.]CV1~RC 3ﭸD&% Dzl6!BmlQF`|EP+~Z:ծm 7 #%#{'lwIE@q&u)gfP?T,z鍦.( STʄQp=vl: FmAԗ${{ymF.x%i0:_W಍z#d t6?M‡DA+E~iv$w-,&q>E_VJ:_hMuc-d؅՝s޽kˆ7Bt.]RaЪ4Y2TGZm+XAcW!%[$-yv}{*,sCCf6B?mtdI̼xPrL<(M-*xbflzי4 6yz Olb9:7lms!v^WMd;8 WQꬳ;y_\z ߯=M1gg9 J}N^j7ܓYox$Wu7α -SG,=QIE&Lʳ90RQܬ&QйUH h|sW˶ٶd .p;pNUuo^xp4_~r]O0[\(($8aiκ\{dJa8Un`Mm ЊЁpk~{<(4*ur/pMZuk٭)oZ!CVd:"N@@=^h@èj#P䒳ωv5"[W ֪n!~/cUx9hٓv]6$%#+ǿ勿>kLjqGI%7T?qS% =mejxeJ i~̒_EǰvЃHTCy`iq2jCw2s @x6G-BN+k)x"޸Ӟ"%#o,c,~ywfq/ 60'׼N&#b^kCx&zjܭZN6E`lME4k7lRskMj@F'pq=9:oErv;gˤepo&ifx٣9>ؤ"9EϿ ǭPhk+W-U-z{- @l0oOI9ٰJV | Mwz50;Aatr@๺ L}jH)ǢxVi?F} x/@!#zqDtPI)SveJ/ߖp,.9C.`=!FKBE'8F'*3뻏*o3:VuCDws]jf+_wqk^.s[m, wc FU㞞PG D5+ ׃^'C>􍟸<:z)HIP;k:CTcVx*.Ī|D+ijh ô -gܱζWx+F:ؾ:RY"xe.ةؖ?r A&iXAY :Ck(rVuq0Ƙ4e,HbRggWDb~cj'*pZlpj 3(Nd0ͳCS_KXGf!Xo"噭7@o 4??+MEC6־X]}_{h~y5T*~! dɦC}BLylPtnNO!DҒQE#@;+Ct +=WZj(O* aJB甁k7+Pr.)&P鋞\OҺKB βz"p})K4Jce>yQgI (4wv32]ߑp&Dē-!_NTq$RL!o@mRZA5,c!0wG,X߫Zt8j5KDOJ`juL)S~^J-tsF[pQոJi+SEEz D2*= | ~wD^Z5M#_BdD+!pڑ$daw-j%uP*Iș`V{&q:󝃶X{΁Sgj`g9Im~}P]1(Aŵ>CUxEswx/XF`M3c y{.L { ^onל&Qܭj X}G>sY\5}a~M?1oqL ,#C _8\bkTCeߋMZDJq B>S%HGC…xnI=q]N]wR)`'*!ag[UZ~aWbwk'VŘJ7a 7 7\}B76 RЊf b h35{}2|ΰ ΟU`W\V{jɠGʋH@7R}dc;c AƳ]ݧ+=+~3uJMk>zV:A,M$Qdj?|4GրIB2wU*`$Fϋc0.;qgRH:|͞@9K\"!|9?$_ VJSa@y{5r2epFT= 3xC9U!FqRb1龍 &R"tQGy; IvmEɞeJ=;4we_Ѷn~B;ؘPEl,.*;Gk< noi0Tv$Q {CH7hMW6rV)qU}ݪRV< 5c(" y} Iu0H]b= ,JhUxZ5Ņ0#:xJVFHQ4wS&ԆF+s. t1V]rI*ĊC8 gN6ϐw[ֻ 4OUוtsu>k}(b2y?ug53v=")DdȔJIKcO= |m H-& L+l'\@!J1KU,tUJ[d0FUiy(.>,㣒Yμ Q> *;` y쿑Nr* 7Ϧ9s bYheOpmS&wN1oPW^̷ЕtZ!>Fvdj1> &g۱DL;4V .]@|Wɚ^ Bȫyp LrZ炉ސtQ(~ =)*iu\UŋqVc*$0DX|2x/GŰg6u4#H6RVBrF8O|ӣ*ʲkFW ( íāe9 mx\ F4F- &ڃE,߫(T*]Uv6:Vr䨀 6R $?7?`=^ቬ)O3L;M{:ok!uEd .d޴ jI "@,Ť@<:߳Npm{{J. ŭb\ OcƎiG2%@=- 'Ix5#M}g5mW[_>HFc(^azBrDT{5c(2T/`t׉ڢ AmI+S5xcʸǰ 2rN8W&]g+@ZP}Z];37j"݅wo(87oPڅd]2r~G"GWnmQK*%ݓn h5M_솜;{OriK_HmH ?{MP(Y@ZIźF)|^mcNe;Z1ΘT2xCk"%0vy01X!4Zi\OVQir npN"w8biw0\4(]Ӳʖ)rL>%FWb<WZ{VzdB.oEqtl̘*KI2u1Ї% aoŽ\Pd18'>˙nnB *UU=LvծgOQ2 Z;Nz+UpQ tVB0֘ ed۞¤t[`\@~J9uUk,3xF;I}p!wˣq x38;lSr"VsV\ *mdI/"NT=dsp]1l1βs+@CW5;4]iF)ݢ>xy$Dl\6T'WL$UpS-HŐ]<o-̀浖x/9eqO. e/^'@Z}LF=a][ͰUOE%(!(]B$'Oz:獬LX~^a͡`G)3E]87.؀5$E8f)]@p#t}\Vw>Հ@2&hG_mGmɄ |H Q5.hk2[[K>#@(m[T% }'}Yq.a̿."+V|4z-7wy_r ݨ9gZ\!9s"nG\ 5X$]~[w͇0֜0n)Uo qE7_-}zг[/Y0bF=ls]x.äЬ3qN eCgl^dI2j!?v<-Mi*3q+E~׾e;>gjubfTyL9Ҧf{s'"FEYԏ4#} [RNfyXV\qMA|89)眈ꙛ{IC߈pRjQb,fk>k>"ߟ@J(X!>mh(uꞶҀ7juUw,box#B#T໪6IM.aq#QqʠQ]PzI"0BdΣ4\ߛV}3PѲEl{{L q٩$Aj[WɐHo7`*;=hUF~L=rǚd2ÒĒEO%/Hي2d+V5H4DOrVp~vNb_U"ǻIEh1h=.j@4W"Q՝!PXW nE&d3\ٙ W2O7wX3qɬ?3йYMJi$5+\b}Ҫ'H2a[bêIL"ZS A:U;Ț0% 05/ ^)h ;in 3FA}lb }σЬHfoW2Ewk$iq$Ć8{ ԶAr<[ewea*ry6;M 6PKT\ӜED瘘p,Ju27lZ@ {NNuK|/ ՛Gmv͘f3v0&+o>1O+ڹSL ,jңTӷ/PҦiH,<64K',4Vkޚe3qOJv Q!:_0,,WfJ sZ>zIFDEwB ;x aNA2v#q)M7z\QY؍'G1lB?}q@ A1Sei]= pj?\[XY>Z2'Φ,.sNuLXKGF G?P7ީ7 |θ@Te҃;t&?ʺj{*ƭNԟ}@w?P0cWo[-`8vov,idocP. ،j} /LS2Vj42=(}m0tqAnӘzpNpKX Dmb+l 'Jޥ,*hqRn۱lwl> xUd`H 7֖g]/*-ӁS3 E (9NVZl8I0w[}pM#yظ`B<($ԦǑiԄ?X ~`LTGfGUw =JL>quhvp;\ ,\qCL/56XM{#-V; ǒ#CRG@\[?eOR^ΩTuotuHw㚇 o'CZY̢,)Z]ׄ'30&Mbk'GPEO73fUjvj"koEC4nL uC XrXBRgGiM>6P;ٻj13A'ՁSE, $֎>C;qr52?SsX u+*TU":DO)Kw&jݽpߍXu+=[\¶n{S[ D/CW]o9t/թa.( V%:N dcg+CUvN41u>iҎ)?۳E{^ rG[.th feegfN2l~ TYd12tmZAJ[ox/Nޑ ¢Wa-3A/nt̷lԢGAC#KVasN@0z0 dy[u` nH?ȅm 'tz]SfL28w= N| ֕fJ2T5)Nnv>v9tgMp!jc7炙 r?J ebw4ffiL4/kTLIo*x?Gt⮗r0^OnC~B%,9={LFA|NR T`}1l XZ֥v1? |2SlѰ"jbJ^¯< >sy|hnq/yGgNHa ?@\>R%1^NNߊW,J(p;vCYVl[G@Is4ZRne%κ)s8ԟ8H)61( P>axČ='km/ W-7gK!aX6i֑.tVpG ]H9_ş(UJ5Eéj:l@Nd'\1UM1''v|]Y1(Enw3>1sN{i펺=]I=yESuE9| P큷yʚ> >^qn!9eпEq>e _NݩzzA-#aWžNq9"/U\&9!ے|pv T_]/>5p"d_k,^Y)wUyIr=qt6nٻmoeflϣ _6}%wz-cHTԚ~.!b=HɜQ<լ󟡧DMfx; {"3(֤}``UwxHAk\tڟ39@?l=7Zʒ&<Ϳ>%YhO,O0Us”싛4Kknd1TDgkmbލ;xu$,Yxb\DWmYJPDt)њz3ȗU3'q0l۾HIs; }_shdkp3m%_ΠnpyZG<_C9ݿ1lPO5Kɻ.\};hnqIJYxftE#vߋUg5:lOd}œ>^2jw%6Ͽ;ɑ *X~%1CxoGh~7^}I(⇣my2qw8y6)(QѪh硧onAW}He`[pz ZzZ5eCxW0P#XM{ l=WkIuPyE~ɕWfEO;NBYz_z۔Kc&^PEl=`]/Uΐמ]0aU-\;+ybf?oo"[EU`^6S Z/{<'PX8묵 A[*ߍ5q1F=&bʼg<|!c7@C|V&Cx)F/5s@k#Fiu)GZr"IPꎹakI4#M'Ae#.~B\R18 BH0J"]@R  x>6;xZ`'(2p㭖,7ZFYZE~(c!g8n] m1nF' T4A>>\XxjCDb\]H͟8,v^)P>m i5SDEHrg/}ZQO>*I9D+ᠵ8ZJCݟhg#2mVv\|yyҵLc.KrHOrsJX-o!֊U к,PөCE+kgᇱ^C4 L-x7, MaWT=ψO&*f ) 4zh~bTϧ>Oid'@0+pc@/زKRqeڊ_0.]ϚΏ% S qCDž[:}0B{O# ߜG$ƆUjσMK1TE agx^!jvRF%ftG|Qx /@{v'<;|لֆlGSٻE4}`+$7nn\!ղ߃kZR7pIQxSoGC7:^3- \/+#W C="tNaAi3~,+d"GLl H7AJu"*TuWmTNqz5V7ke gz֣p@E7$Yު:)R;[5K3*%4 CN'$=/\.1<Ď)msEPq1ʋs4v\PJ&ڲ,`؁+ޕ/#.=3Z0M8lGu,*Ww~N|vz//Z0Mb=]ͦ>RNz9.35kN'7-h֭!>7.f I~e#q~^ W`45L  )]_{Xsbt\QOsZa}Q T'<` ]06NBmd%#93%xxkIUD8,0Dlu"Q{G,f->5`M+}"u^uzǸKeK^^\)yz'hq^Ԕ\x51bũog<"1+0ҽ+/?r'Dn3 y6hE& aˆOock Ԡl#R. ?B30ccFl7:[&Cܿ*s}$PR6J|f(U!o( @Ќ"dy [PBF)H_^W6 -jFN5ߒI'"upbUUg.~4К.fG=_6ЬU/7%'o1a>a+bBo)n/fۑ Z`/k3/]+Dķ꼯MǺ<ߺ&|`ˣQ-F06 ŸkbpN9aNgtRk"o JhUh6/ G˥]^y` 眯9pr?yPrA ۰>⋑o Hb=R۽+ɜoJڈlIq$?1MKiAm<{lJZ3!G}w qI+^Mg֤{s'ܿGJ1bKƶULUVs?@aaMm aƢk[?-;v\"Is[l䰺3+E؅C+|bVu%uC *TN4aR.``0=E#a3͢f6 SMworJ8`=4SDW1Q6f\@.JS#5D *|\t"aosS 󱵯0wO>. .ٯr }Ewm%*w8&e35 Sy-FZuȃ5cC#<͹'Jx^¥/O`v9}>it0rB#0A[+>˪gIM2h Xo>U/+ި#B~8n/ƞg#7my>X"VwZ]nLzk",٧2]ޗXkl&[V;32;od F^1ΔK`x}J38ps| 2x7\a )˙;N4WೊE9!ARyʞ EI_F]/-1R}*u+]i0 O 8iϻC| O jЫ>q5״q2gjOE|MEX-6H;p>8W4 D+{i3!*}K‹BË&iRC<_i ibeAQ\3pW >ɼ 6\8vkv* MBqQl^^QI+% VzYIUF54G0m\PM뼔 pQ\1¾5BMGi4J DX;FZ-?wM$gK U!o)`U[$ھMߌNuؼg/g Y$?v!d53LKB9d0å&\2)=gq<" ^}!$q>K=nZ%aGjeN]-;A~R3o\O_ë83 a3n k1E /gY6fVIVm_C>F/EDׇЁ 0aⷖ >wz~bq00H$NLVI8Iq:;aN(, [(&{dڄz/83KNx\=?zX1 R^*2_1M:zU%sݵ+6naE5ŭ_T >3xAakz3¢#jXpT A&$'Y_fs%+^ytY[;@=ã#:raXfh"vcͅ)ƫӢTU[9I7w6a މûS'Ox~"c1%+¦ƕdվ1P- [ڃĉrHcO 28PU@vLD% Yqe E]fA'q׃WgPVLRO9AE8NٺQMJDJPs:(8b=#C"X 1: Z(r:G5_y\~wiI~jqߌ=ceǼ9hW-RbTOH,d#YlQa6]A,wch1ܼ͐H~ZBOW~CI^?Zu=̫]F\Nƍ,{ށyZ1A {8NnUm{&@5TCRO&akXgl "O6Tr Q@X<'"U];KXL gzL:gR*GtF>%O 3 4DEXj=hu9X9ƾ]}0\wWH=(S+YfVʐVlqA0=IB j @@5U%`/Zy[ނHsU:IM8tX*N*zD欝-ŒD601U7Rg(tl]#!VPl>uOJfP*v_B}Rũ\=x1 `ݳNF#@̿[M5q}&XRxXzg9EͶ2"!&~ߺ1&][m|[MBBOqu Y.wJS"*%e⢡3{|?K(*22fN$Pu0N׮APLuc y,0' )2L9]5DŹK hd[W-T9L5ŇP8+vIP̝Z4>qܠy Y6IdB%v,=UW ZH/878 Pgd]nLo3R"y&|^Cy!l2*ٱ2uIGʅ|E.j"Q^2bю* e ?f x qB~1BFҌ8zȔm_[=\ [Uy Ii)mHP9K(D12T07~B{ʑRG=qN]ZdX1b? KŦ[vNjUVtr>L&˰2 rPn"!jӲ&EDz ;8A„\ciYkmJ\oh[C<)M9P*9:W\v539(^,(Vijk|\%D^s6&i$o  (oթ|zWVmL;NgHO*d咖&5ܰꆇ` IPrF!%۾]R/|NJ9 $[Z Իkm͈%}:!.`|4QNP1ш; 'M1@RM·jՂnm|2-nHצ좕K܇vi?щx:/,s)}6 =q"|e#8Rw#8vAtacAPK0"_J>F-sH' 90LT}w5J^&gZdW2\Bĵ2Е("j `~P.4,E]x{xzrڎ%Q2f:Ɔz<ᦌNA=4k}>ɢ1Wq"~ i;U)?A-{+ۛ"aH^am6؞1" 8%ǏQ*'| `[P3r:܀lMҢQ?;s; `1yp+ʩv{7y hgԡ F_/SV :띈6) S+ 954w CbgN Gʑ(@X8&ņf4:]i W rEć!V,~ mc/!Ȩ .kƣ%}X}S .GLraRb=ɦ=dn)MgPwIPQxáFLY:ol+t@J=uhTe{8㹌̌KwĦsz1?PWxP|\fH#N4E1KLT &uSw,sw,;բ^Mk&^|0[+e('`_A^BԢ}ܥyQh JZDDNrh0 b]wc?`XHiI D8^㓷 />{kҨ7 x_0"?c/Xn-r)Pjpv{o䇭,Ze=yD~RGHsȤl/a 4n>lM]qX/јZ"-w- #?xy@)wY;Ӱ|4=>VIӱ"ڏ|x ץ78ǎj N){\-ǽM{ŋ/!?fkɨ[G \>bYÕ ~]+e͜Eߥ:8pɯ*QLil w3I{n#ִ%T'Ao3*ѽ˳uV|Zs器FSa؅HLWsgttKYܤtn,R7X0{%y6@dUKt*{cU}b^tZiHO)l-߳0^GLHz7tU.gFqrv!t{/R0=TDxd+ͰܖB@e ܨ99M ˝-OzX.+~Xev,CQ6 9a-̴:_Y_np/؁5oQw'Y+T9`veЪ='ּEe񇺨܍T{(J읷'{9X\x[è m`?K$?U4hA.q_i_I2݄-z~e=UB[-1ʵ \(^¡x+݂UwDӡeJ@߮O<`ĢᅓaQ-@0E!1r 2ǚB|>DbO\0֫Ee9Pd*С?L"$796!G;I Vzш{(:K6{ 8,ۻo~Hp:8}$ 7,j I<[ȡtiTBL٣ùCˡ/R'Xf}NIFAjc&Qٿg͆GXf *YHhfq㧍 /|!/dITTC{},M#gphe4;Yq^x̊{nz܅Ahe%IYA)#GuYx'hPET"F9W:&[ҕ[*}MOu'flH|x~Js #qO[x C>FXu C6 l+؄-|LRrrH~3xD۬rc]hں[hq]!%+5щ~wZڨfo ^ڱ[鴗ضjz7O]l䑢4çL<+y?Rq~S>UaWƺWڲku ϻs\GXr[.kH+ ߾/0yks7{/^S]gcU<Վ{I&aouv,D@н;9cڡ&]Fy&sU1);l-:8ٖUd= ct36 Ե-s޻4Tmu4ʲGd CV+΁ai_`Bx9_?Rm8N,ˑ,Q{ J-g}JE`yhpH{)^h-3֜ӓOiSBuC/f%d?o _KpBsC3*E\t+ )FC*OmmmnE6f5Tu?a:$C^G=(\jĎzFOW!޿)WqH󏗊5Xd#*sBJ@m=  ]3=)ֻ3< 6oOrJ4 [BoE:p# _fIBx΢J0`sC zXFQY˄!ݭ ׁ~ۀ;%/3H/[_T^$Sn(%XVϐARU!EO]0TPL 8ۮg_EQU7OVوEvV3&N*,l.-gÎ8Gwsjq8C|q"0-/,W}m\W7It%8w"ZUWZr ,AM%\D9=E5MN郩YP3db?CXyP!Y ƿ^'XI“sXp7w0Z bujg8\iM?G fj]:Mirl {3tyXCclb_eI&~f2&JxwPc00D޵T W Jc`,:Z(9Zf@gi:ق>YHkhSoC[@oh}6Rz3DB4ڜ$!s!Fx(gg.ټCdJKn{~ёp3 3yXoaN$3f,^3U[1n x.22ɿ01Oy :sչjc|%S ^{m__5d8&?0X=\Ɔ)9ћE\ y w TmuKpu}X8Gʚ: 'Mw ,[)]%歝nq #sfٞUCB/b ̀Z&o8KnOۍ:1Utv0< ~V$oF`.D!Խp<0Pt]ɓN2䵪,FfeLsV2?wŤAo04$߿kHF DZJ7g׿[~]y^j}is.Np?1D~0$83<7@a⣷|Rp#Eaw3kr46WJ Եwb'r$(M[m0#h1"8WЧā2@<OI/\hYƌt2d޹:N2!X Kgg}º/%U*&֦M~I$Cb2nfS߬IUTgxɚ0mJ<\ /vݗ}r0OSp>Ip8uE47HwU6=󌑽]ۘX-8 ɠs5 5WhkIuaDKoAbk-9 Yc7GŅ+zKq;3"j n`iL!MhX-)$FbN ި9xI5LqtqIyAZq#'$*x=2rA^n!; Hϖc/^1 F #'k\$jZ tܜDyj,rP:pD4-pR1@ A['*5!" RĤV`?EDRQ DL5֨SF,)1C.mު/u9t]V z3)nljW>Э:?@pCITyt8)wBh +l+6zݑDsT|`D[: 44a<%3;)?TP?u1LӔS5jAB q* H"Լ trb#L3SP*2nuST?&:({jhVp<H(\_S![꺎Xځyc>:7`\#@aƋb?D0skz8B$WX,v-VdoȾ [3kG ;b ,6LoOXmo:j{ծȱٌ0} # bq/XYk >56oBPE7O  jJB/G0ޅ E ݔ?{yaU?Ԩ(hl`C{%OB9{&K0GMIUWJ LBON .|FBQ?2bVC2d-/SD:-.wЮ6S9|g8 ƎkĽQg|`8/DF4*7|rN1 ,+H߼<>JVKx=&G/"庍4-/l+L1˴b}mߋ* Eē2TP璘DuXT `" f@.]iԦ1M#[Rȅu;gJ-$FwWsc4&>PT2Kxw+/ᲃb0:$Ta[S0^Ѯ[)os;]5.֬qp<#0R/?Iە=fV]9(\҆J!6V9  ē/]B]i^.'Іߛ5pCdFwsڑ&K]\Ab0ȴqP]_Rt>̠xuˆ k\nEBGO,r{p05P{~/|1b 0:D7(4P3޽< -6VXHWkB$GC-dYDYMpBZY@vz{}˩nkh'fe/ΉV 8RGs3u΁q14<|~ ./Ǣ-CFRX}wP2mc~!Ea{ v<~RC5e)o—[v[l-=yn|+΃}ہD'Ae|boIzZLzspc`$෣Y ? hlGFTYuõ#*ﲤPY }悬C5@\MyzzkWȇ18oH:b kSx~_򀔢WA>h9= ŠP~SDZًRwrkD3ij09TdJz\IlOܨI%iM ܐ>aq "DsCk9x RF='&&jse#im~ 5J 2Ebo0[2s^"-c8$^Q]mk^Vm0b|Z}T "RPaveD ژlO9"kE.PwX@~sGZo{gJqBUEY^d{KYh^u&t'40br% JԫK=me(Q{7ZG(nCvSMXx"hNȯ:n}?}Ɇ;.r>@J%(HouT\xRKY:G[`M$͢eMަﲵ׼DR[<[-Ǡ5:L GY169'㛥f2$ !*'Z;ИtuA_.fFȚv.R<@4^Z)t6eYx#6sfke.RHL6r');^խt68A٬E < ׌1amaAAnP^Dn-GBZJ ~$F[ mEϊmݓ׾PԎe6g? рTNl.cS\&rN,qҡƧ2QiOV*&Rvz֙g*'{A/8[Ȳh* !"N[fv= FQܷdqƦ8F1;+r<Kћ %1 wOu%~j=Y7.n뜵w$;ScP#x?;6A[#*W8`mc^t ~͵zYS1VN0[ݹ-K-a}K׬ qG&{j*9s3X=,Fn0pPEAF-jysG#_Z@a譳&u鯮,~xbia)]Z斋,jh}A"@RO\h׌\:ϐCEEŧOy94(E<Ϻx qliua tkOr)fxӖ0BG?Oruv!yPnm_:C!?kb$DSV3)A~yt&=#d?7#͵ΆF)W,3RQ/-#{ OwظyMͩ=%;b%`$|`m[},N7Glf_7t{gJ"%@nJ{ 7j@Na[j-zS |PL-d- `Fz`ZIhm8oϠTb}gLǰR˥1~uMffuk2D1kr.Uta"%Gc$' J`=k'Q ҘbRDؓ 7hVڎgO~ ?s@)NM@n'AKMWldb5# a~Yp v8v414&)jnzΦ!M? HS+X8' vb-QyʯTqi_mdKKrjø]T]F-XHhGXc6kÄ9c ָFG][W|3?(R O(@ܧ!elRRO1u;NG2hy;'FbQ^Dll[ݓymfC߲H2Y_lgWoʡ._zBjsbSipq8&粞:lV[!sgI*/>pK,w] tȅeB*5Ew^iFqT"Ja4MI=k]X͠n(A)(PH ۃFiYsҔu3pkWO[т`Z(L MѸHjq 7 6\RY5L>acZܭ$4}uNB bE.?[cH&Bb q$Ϩseqq\BIZFgjXI׾mپ宛~<2x6jfo[.YpWL*<I4R2%0}3@PF|MJW/;1LƟpR4zwS\}JuB[FkuBPiHnb:F}@-O)/[x?z H{e>kaD˩j5q4^_SAXZ4tGs0&n*:S ;#T]gT|bR2r䇴c ol[?\#`t{Ah ,sySP׃AӰ/߆^'l~8)pJ*IW)Wf}Xv(q8چz-"Rwz =꘤LU*X| ,6$x|*}o:}O-W"O'~Ȩ L~*ZrhIirXE`)>e&Ǡ~ˁH7 Mm/i,2؉Aqف8it7XR]cKA:\VH-, yZ2SL@h(ɥ>BWn#[fk}E $'ܖY5la/R_!H{}+2kjUQ3Y %7u#q6 ]yCX͛ qcupwTKC0'LPt/}ML-OBRPm`tHl9df c8R};Ι#j̔BqL5G?,<2^Q]eW)6)ݠ-s'Kbkuy!cihy;-.mSɚSLQЩfFhD6dB{,WыK*؍f P0@0c!?Z3g,q̶\dV.9gЄLk9D/GC)1~QF$l.3)E<Y(@0'5P74le*z^7Sx/6-P$e8QVFgZ&W4j V8u{$PM5t\H܌R\/O$PîV P^6ȦŚ SDՃ1 轇i- 8/w\KiͱCeǨv?$ҟqեt5Iw?6jwSˊ|Xd#UMMa,ԗ[BHA1uÀlCIǝj^a.Tg/_"9O %`G;1ZL2EH72;3JK(moX2p(j:b s\4b:<= ψ4!UcTQ=h.MQ?{[ʢQwʶ(nx$9!7P aYOFYnxu]!''SO(:6bCYtX-TVLQdĄg:&6F2bkmOZz7Ŵq筍4@jewZ&tV<(+D#$Ch|>%1'ǴsJy T*K x0]UPw اRۿ;,bAbCQ[$.#ݑz:qO|~dRi4 ƈ $zS` ax>_xL8jG^MƗUFϕ\|GO' şNGn?%\=9?4^oŢя\caV;5Xh7?ZdN/v{@ bp"埧_t;H(}ꇬ Sb()r{UZ`hf^wLA@~N_#V)Ͽ lQz &| ߘl}&ZS z 6):U(f| #Z(&sVv8]!d/0)0 i1rw.T햲N\gk2sRpUŪ$?uNy|q #>JOQEm&'FW-R\tJ`N @0ZIkxrNW sX^00m1N|su8Bl5j(v6OGP䛝GI%]m!ׁ:DlFcg[-nЃ2=G`֨b>LF@^i@.UwȲ3Ky?S.녣BڢP.'֗3@~г8.ȁ!u%K]!bU* nk<ۢ焞Ow?Xc㫷RmKk&+$_d[$ߐ7b9BjCQB j"qFH*J(!Zf7 :Q]gb(Gnl")%#⮽wBI0:MK 1}ɺLwu.N!$$yeVOp=_:} Ex%tS 2^JǤآđm*0|*qb9GuZ-H[49ν ?Z4|%3 j8W''H0DX;l| 9KY]j(5}}D9O Hn8ouE#?j~^pJ7<ô/^s{^U~P+)V llb%"U{*x vyB@ 9Lh[ԉ1%`QLFvHy-.+nbA[laʏGJ'˭cٳ׌I?JEC%LB@k<^a8Q(,f6'j:K;AްH7onGaUI~"i6haim;2Ji a^DhʙtO9\ē? żd%⊉Zr4h!4S=.Cg~'jf7U%ePi* !mRH[Hb8ݬx{8^y$*l&5%^͋UifMh;u3g֚g r=rnH姊^F)<1hvf2e(hRҜ8{0V$,oD OCR#/, #M25ɢB(s _Z TS˝'&A@nQr,GWgjFNN&]O%eOf 媀D-%1̰%!_d ξÛ|* yeB0|VS8M$R o ؃X:*/a=,~%`vm).|'x=Pê[ٍ%f@1}Jv~wAZxm:(k+eUp!=bx >YHM_Oy!u˴KleԝSԚB U-IDA4z4E:eJ&V][;7T?zUhl+!]6m@ܷ 7Ax[al Hs)LzOeFb`啶l]ߗRbn׍wIBgwsY%T ـf8WY+`BD6HeX~)/чF?ϗ?RU7rtS&M/Ў =lq Mo/(`m*sи{T>pq9%֮Ł,=p076,t esdh OY\"m$E=ftWfwo*j33-5 r9LǫSh>@yh.!2d]l!1]Odf\|8OI7eRG PV  HTJqa_Т(e-%;8vh$MPs_ =`lB` Z:@41; 2!%`lSOhl*knJ_2m̼;!q[EZwn{\X ͬ;x^$߆v(C)+zaJZ"# ?1CA\w%nDG}uQ7hVinohXΝϡ2xJyMm[PF-R%#5f1J %Qo(>lWI*0*. utM. AL>0$W-JM][#y~k絠2 .w9lG X Q =nոZYaoJb K R%uU1q";.9uE4#G"9[ 6ZO2'z(yo/fFm6Znm\B=VaYf'|Ⱥ\c5NRq,@jʛ}Iǰ{p9tA"O[>R-)aqΠ2ZN'SJ[2+Ӻ5#7|ђteXRes7!+ʡ5(.{lx0>ʿȜ" ܰn*(^k8īPsZG\B;'8jWOd iE["㬨1|?r.%E+<İ7iW~;g>VnNC<t+ζ!es_Ywj3vIS ׂ86@Ym4;6Z& he:IFiC2x)^i[)) :W"G: LYfxk<08NXcUj2\M_)4|iH7pet޾`YGhݯ︨ WkԞBYLU1lcllF5, pU`7u4OG斂/h9A E1Xb4Yh+H`e|LvgK隸+ٸaV*~NXi}|<׊M@5B7Sc-Kdyly8 , ?#' %q)3nh@צ M 1\ BJ03rC]FSԂUQS M>f hzZ5\a D¬ҹzAQ\46f*nrMD+,fMXY~5>Gwzr"sx ,&,o+7Sؙ*lĘlq8H-ql}b24CTY-esS:~u}  w)!jPɃs|7DCՌn{_c dhzyF~IG>MP D 7 (h@ys8l?1sܺݕil1rͨ؁a䰿 pVi[Su8; ԬUC{GYn_1ըWFfZWQ}54 pª__:Mj!6ng1O͉d䣭i=*#//uff>VRXC0գݧ@K; V"hTi*\Ak%K);rO׭6be3WB<<$fLQl!;XU\n (Cke+yOE lA\v/}CuHbY8T/Мq[shJ|"nUydA$HYd?}vϿlƸv?nĩi:ߜH҈ )A`4TcXHn! z%G݉;1Z.E!X87/w&mZVdlKQrڠߕC,#)<{y5vk#ruKbWq8<(j3^%8o|;_dqD; Y#M 9MȪ )IJkiv5Y:@cCp]Lt9s8:#=ƌTg+Tm89"qp&ﱀce,.Bk,ox zUF;ҸҦrAZ1zȷa\)5}e>nZ fw&[x6r?s׿fDQZ&ڦ&^'4VFtҋuçZZc`.BYRb4/&B:[s.c];A(:0KdH"="ؖMCvL_‹v6HE1tZ뺮Q 4ٍٓhyx$\!޺R_r#6|tw{C5nt:rVp*Хf#nܙ/@i_@Bf\j$il G|w̛r3Γu"zcH2SqmrԚiik  hT"wk΍sY61; BzQ0D3|ųLiQ%@Vf2H%qNU;N.aO|2'=OD%-AǼv܉~ dSyd!`m+ӯ~cjZ3it7mqQ{ڌK%B]^qB⽩ޟδ 9hW7>JW]$ָkaʾ a$$6ȖӧlM<ᖗh.<p{eht_ kh\f|v.MBM)?~6%L<3#l]s^iU,6%w7Qoi99$ c8J|<.]oUaSUAl^\ePjxc]ܩrw s$.?鯦,-/aH(uw?-dJrQ LŅ+R~6txwL!h,L>4yή3Zg(wV"L D)sd-o>gĩlm5lΦuws=M`'x:-IDONY›d:E.©5O߀q'sqXH,ICQ>{]1H]'" y!bkw`Ӂ떔q맓LnׅiM8vVǐDdCμ  Ǡ~Rſ2BJA|?kK *IKǘܻٛ1o+cAQIy߲o؋9٧{0KMѥQ.aK@ ~^O .h3g >~RjOד?ܵN/O$^XJmilj0RIEď[-=lJ NN D6})߾y"ԡ.<'Y) ǺN a񮑲< ZL$b3~gL xũc`1DrqL6gQRuv <ӭ)R* mr oKxWR6ifM|r=2h G@ʳɟ6X!yjwy4ܕe1C[՚_kP9d-mlŵ'PFP~ bF3*Oe!uvߗ%aJ监Fή1'4V'FR"9Ap ]7x_!`bP7Exn|.gP̺ӂoƔmȘ82\ۜ{;,須[+fmd]9I r b=8R"|-ΘCe*Y707GZ"r \dORD_mZW@QtWT) +6[DZ} B/olG<'dCַ·6B 謪"柠q㒧~0~;B;o{ k((w@!li+;URW{:. Ym/P|kQ 2 %3eEJE|l! (L[=:c~Uh}j¿en|i1Gwep:9kDxZ6N Sʩ=E>vr{9Yˏ_e*NXgO8Y(ۖ%*ƴl6@vk[ρ`!]|Ltxޝ1K=ם݃?^mGF\v)Zc(4{FP<#!nHd\y<:WR{)=;>]l0C CpM {t^s+փLVUbJYcp(d' 44޳3 xG-2{#XMAm[؟mJY%R,v>Mɯ<E\ïc@Uo]yDr%hJ~9;ՠHRy1KWuގF^B[?֑ͳƓPmCF0}4>r$ٰ-;d:޺B$;t<ŕFt)[hi356䙮R6-P!R9d_FqhnoU`ʶJi\LjBJnJȶ|+j2u#ޚ߿p={#QeoVrE.<; I$\np+H< v7*<Hc8>LX8E]޸N53X),OP F#hO&/N]s2rvqQdO_G&mԴzZOծVJ떍Cmцlu_A}ߞ]УNtG)MKculx HIܭ7a1HD] >" ?`]to5E~Z.9B}n#Wa"1.)@r8rI}%qO-wZ5)]Ъ-ƫ[*zz66D:Ɍڽ^ )1W!m&D/ %Vn qn\%E*k 5&-Qm[QJ""/\Z oa)?NTee_~hmAS)cVJN0Nx}5.?/pZ6)̎Ocо4cX~+o=kpT*0L\*+.m+xbGf/yˈ^x]\p}хzreք0(OAYԗahx`t!q~$8yi*揳MNS8lMBd_C#Kq}3`L gL~ #A?QD֐+Ƶ1*V"PR;qӬMer zUw⢅ܕH4/S.NQ`Z9;_ހd_ ;ڸy:] LY0<Si[&Q-!ĵTQ؇ Tso:~a+p WEO_;ItINKS=U ucw!I߸9vTes*L"*zm8T-H_cwcS+]ă+A%I1'.1)ʜ|,({N'$||dEقvl_2C˫ z%S~s"fK%zW-;a G?+{+Fا% f99cnDWV6b˕QShax֎DN} &n7:dž4p22l$SBD>z j씅v- @,s[[0΅K9Aֺ td!wL+xD a}D(Fiv\DR}vGz]kU&00i9Z䦀C ψ*nREH~]Sb*TY:޷gD:ٍ(v,nZYcA"["}@.u/zco8=p4βV?/ ђ}yԵcƘxS nv {̆8 y ^lٷKl#1 m+,t!k@;`GoFi74lHe-QQNJZnn|Nܵ*1h7rψ+긖oX#n)mщXQ,/aeSw7Io {a+?uZ.*#H056}=E &yHMffi?_ʹ")[l3]Z&<-; =K)gq;xuګ?\n5G/Q)'+nQnG %oG߯~/8X_y >QS̼t"v ` 8\H^ޢTOuXD#k5@xӅae `Vn* `t:%n;5;|cXmWb(oqTp\xa&q;B_M 9[Qk:5'**#bVxj&K~#5tB cqPD=e?zh  wb`B\[.yʉ K| U4@Kz >\-ϝ)g4 $t*Ktģ}+Ky]??^S0E"ƍ}}%aARDB~-.Mߤ1OA>}Th$<]DV)m8!{zs2tI57Slj g_?%eoуfk4iзnB? BG*9[|)w}jSv8]Y],B!u jA`6W3Q@4$ Qic3dgYu >3SgH+QUQ|!7ğ SV¯id*Mnima ƭ{3b:^Z&hPvG맮kSQer\ 3,t*J5r 7m/囝_^;0x?ɖfFCͪ-ث+h j٥=\C=_XX\Fp8 2m)ttx}%1p<@go`MKY/̫4%wUP PϘE!gW6=}O[w9V]Fj*[ TУz+~x."+IB+wL$pU*a&nmCI-s\`VRoaYz-[9p`L>\s-hܒ PN6ٶlR0HTthݾm])w!qVfK,,pEh@)$y[P&j6|f=cg7xD$o4Is;?(SY@lD( UnҭA˯EtK|{d5ݜE>FH*+PR/^L*SmݍiyKr8slLj7?kϖH`*6Y?} qd#G˷N%>7w fۺWGhؘ/ZK8=)Pjw3 ۆtȎʓ@ąک xЊW0ڒhƭwLd`?i|,Q7'tA/b]+af^T(f9s_ŤinqnK0Qn1ixK^pFLU3#ܘ9,qVYCfZ)Hm9]  .E8Nٚ4l@I йL\pU\L.V`Kwlv"Ts (* ~%ԪPK໊T-ķLk2xr 715'c%W87FcV֖I3.?I Xry,ӕhPkY+_Gr4V˘Sϩ-F%?!zvS(:4AyF|VfjDУ˰WUuk6t|0_ [Pj.BCA-TH8'QbvhAr\(]Lb.2 +}I[zH2‹ r8on 8봋1!Ke,6AٔF[@h{zS"Ꙫ{A#Ҿw,ZтLaj.jI<8uVhD5P- '(.D:sq<U.x>{y愩CUI[q q_.1nS>~zD/ ݋#a2hUU>&$aĂgj٣PYLinz|25 tW."JOQ1'QaΡ:8_]ATeB"/^EzS T"j,_Tz譔@VL !ln)Ҿt8}ǠVY=N3dkY@|QDafრ+ 6JiVl֍:h,Lۄg3ѧ⤬n" 2)< cpKWdaH.N]MNT+M>@N\~nT BwE߽]{j& 34`_#ZLZ5Tc6wsSd3p6. CQ z}°=5bH)LVkv6:\|c8!LS0hfy\)/+5߳3t7|}湝w3*9VݏiB#u;[8==;B(ZDmVCW&^NnE5aݚoc'N8ǁ! G kv,^g>PQZ7.]I"eZe)ZC殜EBGbDZҤ09[ܻ$߲70aV)؈4"¸SncUZNLsYiV ;7:ᬓ$ẘL"P 7B^b[B]y$ZVUE9`ՆEsm `jy wXO9[m/_ȼi't\O.l(9Tj**.d=hOQәx͓W=y~~sH7 ?!?шSUa1Y8"J SG|N]R\{UIm=D~rU/C`a4[lpҹIyۄl@􏅺m15Dz?$K4(q}%,yI+52B}kif2) K@uP_YiGEur7;6GXFdPn9a1aTst< K5o!-LPNox'KZn˔j,L{ۚ;\5((.#f2EU\M8|>3}KOUBǨRe4M>Q)P} ȧ^D('T+*'2u註 zgnLX P\k;1p(RW^uo'*1h:'nZ`lǠtXP|ˆ{B*>U@QS.^M k"6&GbVGK8gRe y1Į l:ƭ "-{ /mEېL䨠{-8h,OZHkqUC-0VdL0Y!\D33 0WU]F벫ڵ`@&Xٞ$rU06 G w,45`{6Z gݡ"y?ϰ& TN_bA@,_6u5ğnAQʘ%9s*ffČr죅v pٔb",#fDqq% WcHu<$wS57kΜm6KfY@z?;|:`$U|Jܭ>hQ1et￰b [,jfíl 垴eXLt1Uu4IMYn3Ӥllw522Zhn[; h4IhqgJu:PuRxԔвHtx j=`+d8aygv& B.f1SaUHرsU unWBr+^3iw/+G3҆  Rc:Jq̆0 o%u @\l*GD>3jq xA DZ59LEg#dc=yC:B~*kvk@(|5l_+TCNиj?1Orf/lS 5*| Bȵpl+ۿCa=bDݫt=Yʫ|8[oL4\0Ũ;Tr"Rt)8U&CuŎMl 62ԅt ׍Y x?}ħ`Rѻ'\5cΕ,VF{6CbD HZ91 &䧃+ nit6 [W,%9e>7׊ȏlª ;9ǦCw*9?EЧT>cqw{,.H7w ;<(cQ{AT-A=Yg16.+ Ky4fܗWӁ*'ANnR|GM|lCB`({KE`9l|%7(R*J䮩–xofxp80̳6YUE99clevqYvڱt(,d\!NZeh? Om^ǡTVpLg2PwRc)x?] {Lc>+j!<=uQz]܌^GDo'b]' /.o =Ktg,Dxf,ԇ5kn$.!8>&LMrX O-0,9~[/DSE)ԕcMH Þ vNMԯ#mR;0UtQ8*"λ.dnyS?,S9'M*ƍz=pC-ZC> !_Fzk[NW@LJH=\M*8D̞- ->m#|tH*תquXe4= Ԇ u:sp1{փ_fhoxg0̟p=̿Ko.oaP=k ^{aS%(YR[jəUayY!_4lt!WW;u>% ET97ln6FކJL bfw=9"El*/5ᗜO3{XبaԖ?̗alo .=)Q5+9~3 ]gބ9jyF|(#%2։^IWn_h;i ,HsF gcK9zo}L[PV^s=yHJ`E{v,9Ь;G ۔Xup@řla? thz2QŗDX_vxM-CGCq9 H*?l 4KЭfCleJjq1rz9=%oinxo̖j $PeBHסc?+Dj4ЂZ#R`cIGNbg;5'aag̵#Ř8l9u c28BTݷGTj4 #xv\v>} Xڰ<QKBIEY-u ~^7A8ul-2]Kkk[<P(gV4HzuoW-\G i%i얿9c"O4rlVeqDQII~$܁`?pklhgL23cth)r5a:)h*+d4t9/Y3AaByR6pa!m{/y蚒zӞIV4,&=Kp+Wm#ҩ@uQApvZȻ' ˔6B dCN+Z &!27Z {Um{x䮺M op¿'|ƴ|OY=^}-́C%{vPʟ )&1, h)FOi<%NT- ’l%f_,Hl$a#} Js$QtAiUyLYE?~EI60<Ȩ9w7Y֔Hu$tKpٝX{)1>UQPFW}H q4Y"d:w L}`y<f*X2=6>[R4Of2.nJjl {Sh%1PP# *kV}mfSQ>@24OLi5SB68@~dj[.c'bsk=Jµ4fV+f?L;F"n6tϛi E2}?5I2? b.HI+<^x|o;g(N=㺪rr5V֧JU?f?m"RfŗW@\C+:f{zwg.D}ŸHš2q3njonK=9c;racᏥgyΣBqiT~1ɓ8{qb3^= -]z~&#[&e}W!> IeʬƬ3P S| ?ֹu7\MĎ¢l2_.Z1 hf|h[gz4VSx}\33YфwK=*v25A̮*^KDB>ŸV>`*ʊ~/[!]GŸL\B-ki{SǠE|ޏ8f5nꙊȜ`b2oO f2$-d? \}.\iư'E`N'E=4IɌh@B;hC@{_Fq|5Ibgw1mX@oK[f$-չjuF^nrf vM/}~Дt ]\xMmhۿ4ѿ:ZP@N$.nU@@*g/z3K 'I_ۭG'w#F/ ^ i<bC#P,P8}AxRfBo`ߪ5:?+o64"%@CE95J*9`~ QZO3G+rXW꩝Y5gcW< YvZx,4=0!KojfWx51&to޲qEv[F([7P>^HDs5Y(([3:|5e[;V(`KDvR;8<V۠Nl{ldU!:+p9?@v&`z8`u'YgM 0gKb2mJl ́oQ}.wtBl⥸Aam<ΟYPx ?гR2U4hU\koNu h9럡bdN7D`8l$9;Fȭ4=دP ||պ,*,lܴp f6).5Mxs}*Zh'dG|Ӌ]<6CAe7Nك[;`*5R o{Y|CP'3)PQYT SD|Qo ,.õԍx#HR5傟0oE&"\QŪ銆FN,^šT)GOzq{9/H-cֶeť ,BegYV]SM&ؓR>~_ ,,ë[O\-y>x-UǑ`&?^U2l38\ :4 H3Ng{";d C~L*.N=mջ{j-3*'jLqL0❱@0ƹR*V#W,u(F|B {t`QEF@]N 6><@6XQ0XQ9.1d :1lPbּ.4;q>8>!Qertxd{hPiHley5.vP@jN:w9*$םȮL!zMx6tR எvZ&p j=8^F/{'뇿-[z f?? ll_- 02րw/Jd"oQQW-͒wZ)1x2Η/oKbyf6~*R;cNRSsT /pzm"r-459?JkRQ?Tx^(y%^5yډgM`5c@P|8!dfW_TWELb1g3@LEf?Od(&b,`X8/(~9,QK66|la$0]hqYX׎6u'$:!hE]uBG,@՝++qV/4eҵXO),#\]z YkDf.i`gMZQzDzxwXߪ0 @:"`󩊑,d Mx ٰ1 ]L,ljz/bsyAoؘ۬?^iO:n>kP?K|̆Z[xP݂cx2I{>V#qʛ^ z?][ {[˿ۨ|6ZF0pԸ_'JNƩ 8E@-horfӘ Khߗ3Gvhf~n3̭VP _>|X>KL+9Q7x?vs+/&FHrY|6J}ZUficv&MwpY(/ؿM6RqjT$](~CIa֎!]ِ#&CG-8afI?x"D{b]$g/X1Oz_$ xdF$tJҾY\ju;ɚ~&j7%~Lj&U >_p;> &3,U$a]#vK$٤:d@c$AWu ^?aOK+OTwпY5D]`lh쏹Hufԧ(C.ѰiTldڗ`uKQ"pGMQ3n*?vʋf(j:^>zjymphgzIU &|2xi0*p.*??4ݫοA$n*M$OD.[N)o17OMO yHh~Pޣqy1wHe2\x|~Z C$yZ~' L|R\\4#sjM=jVۋ5p[A1s2^@4Kk)x]W]B..­~|M3և_۵ۜ;a"{m1WDH8֋nuse$wⲃC@(B6V6ЀO(MU“s-v5'U A;nGF1lh[1Pd%kde_ lM )Ca\c(#g49]AL`hښ#?ڿ+`=%89 xPoE̗<]4,9gvp!G+n9Keb8L7ZrFS2)Uާ| č>!3F^o\]1\Vg@+\ڜ~?2Y0|q1J bMT k G6yss_zc[nX0 Y줪&}|UlB5):vVzɲH$4-*"Q{o36o}† 솙UӍoL)ڵ :g6 the\+',xP8H!{Vg'F]Ax#ewB,|'{uc:Y\X )]$=b 7֯k) ePX&RJs3"S65-(_?t[M$/[h^5>WVÕ*هO]r׿(vG{-b1 Ȕͦ<=|q楤lLYUV%T x7r @j柷b%c03qwa0-Zp ̴C|{+AKHoU5ZhwѰ2$ͪJX1Fk栳r֔D䚾9d5˺\ P}Y&|\ūo;&@,ˉìOV8-:|~ 1MaK_*J_ (`38d[iJԪQnL⬪ Q^&feC]~kR\GYZ$:_qB)?!g1~yWWCH|o 1{ :K޺Y̷~9n<nO?lO8,JOLV~ڙ>GrbWqY{e)D0 t55KZPppQ 0L2Σ[ V+`0 m+(ĖJRv (÷Q P:Z}<QLM?&;C97ikxJŨ"R'{Ԁ~9*qL62AWiFHFˆ#S8&%tn d1Q/mKŻjeɧ4E&9{RDZWx`L|ļ0D鑯(Q>bZE()8_ 076^#7elHJ=ޡ&kaȹ3{w֭4Ʉ  hGEr# A-6% l7 usEDxmEGhf *e *k}u9{\HX7Vo& EUd\@)}Zߣtx+N,s㺬u%1S[mze(X0VSk0b&Z[i]2uV^/F5`Ji@8w&#:)ldt8&I%L8lELp>dbW wrͭEBjMVF#2]*t-mjZY)/ 鎛7iqLψIk u=<.3tϩG`%&ABGܭy槓1,RׁǰT;|f ߚ悥f&k8A+|ҍKB*wwj?YrG 3F*>Ӄ`b0 L9=+}Fz~Gn -pR6+.'߯.د^SS!Zh4t ۮU8?+F۠`APjbNsV. uv_][Xo?wv2 Z3AI;R#2CEPZuusmx7/X}Ed~WHROαiZXL~FϙښS EI{5 Vl!<̘AHpV>9R</1qoݨ4>vWs:a-.e}ݚgsq, \㎧G].eL_OQ_w8B\DA+ js{hrh={. 3ƙpbgF,UsFRWӀBқP ːji.jj0Q_rɥފT8  6ӥW=Rjx$ [CL, _PCG)#W_pA~FQKp3]Bw!UwulʑvFl&j]^>ޑ"˛OZ;qn =ɖ &{5J2 6_:#gDU;Ftrt =ң~JP*zmRN6g^o1ɍ:s훼N+8*(:=>+jB߷yƧn0GWμ8]EcЯL7?cm<X)la~j V~S;zT`41kkm0 υ@ տn:y/?jwHH DkT#<:.`OT p/qm9E=dZ[p+)5(%5;bil0zK/ݱ 3! $SnJU>c3߿r$QOG56D=!֞ecȘh) _v/Z6jpI콛zW(IK?]#a໪ORU m.z#w|E̖B{.3fmN[;^R,͙xG mƊRI%+r}d-c,'Uf@wo8nh%fGr{hnuٻ{7P ETשZŅCW9B`$e9?љW_%ó^b_ "DPMP%U8I.ȖeJ])qqd Js*zд휞uuRf l8 n?O$Au̿bpW*SUh&DmO*aΩh1wt{mAf5FKa,M[DY$]PO'&!:њ{/^N&ѹ & R[! `.*j GꛖٙVJ.s#仑HRRҚ`ɏ}'wap@}  цu32 ;H \hhH,)vE _1.Jռ N̥)~s>:ik9PHK{/qۂ=gq?9)s*]w;^\Wye5 6ګ 68J4uH $0RCmfÒy yTQzaߣac>D\6K7de?[rQʗp-:Zwh%':jۓg{'L]ލB+w1Ϣ&$tTSaK1ݱ~/dt=\q\+gubPi%e  N͡,%LcR LE"mhg<(KpZ%p:p>ȃ\ ;9od@ofX#Xt-ha ?w'ݎlwBt wo]YRs,qU]gLGW^)dxKf<7<͓h:SRMɆr}}ާw4<;Xu9uLZ޶ihn> 𕡧>IӐ]&C-i =`[ü|0dgz!]?El @ϸayO\,Cf~)،imu&k>S!],Y}8  $H4,ِ[Rjq]Nq~ K.ȐunF 2X6^ e o>,B%u^,9sVF>_ OG 7CpͰd\+"KAe6"@ŵ å $_" vTEgqk%O SfVTlg }x@C$NB?:4x^`WԣR<|&,1NO6g&3in>9eešjk H= 'A;G7?s?j5WtvH./=@%@6 `+<<نBQ񍰆;9$=lNɍFe,D(n:=S~f@+ҍ ȄJX݈a Y+~PQPz[:F~بNOG/!W3Dϯ둑/9#H66S`n?VLھt!(Rh=k`I _Fqs1ecpaKK#5 z533a>1a_o]Jpe;;+I4sDTجD"z4z; 9W@ 9Y< T6@'k*w&ٙtpD;(n`JiEvs.8{ .?d՞N7֖>(4t|fAL'Qq!\gU2Ȧ_^*6/jhϙLc2I-00N}%Te'ǀ<2}ۊkgU,6Pv\M,NkC Aj12LV)ڠssk.AB: dm[| )uON^ =,fXXx_fn'*^%%m34)!rI9XX {HNEzlM0=5tW(i37{t-VqjƮCjY捇M1S(w>ha0?`঄K&ql×LD ݎSDhΎTWj'ZI?+{W|H ;hRPvݶ&e\R5-kb$ C?V-0 dH?AB$,j@KCuZA}Hs~P~oW '{9F](+p/3hR2?IJfXYMhUr|avrwk']3lvE[^/)^Ꞗ&\fA3{Guo&I&8{$PҊ":鄡#,b$i3>EDDSgHKVF(; ݗRhy6T|Ug5?7f; x%&xK ؿMPsKɰK.`ˏ4J/^b8U㐽WqYMFKs*`;` (ଡ଼m' Jeq:lSؚJji?nrx;p3Yu]Y}nU3Q EEg%EՖ8>X P[Pϖ]&Q&UiEA*= |+cOl)=6 ޑGD:z~kxQȼqK 'NLxۮ ֝|n%ϵhe$Б' nI!s[CTnab’sCO4eɮM^[N yKZg窤x0twI:Z $P5i/kZ{Q%&o8ah $9Sc%i@Ŭrf R6p¢;q~!mod D/DNi*@H!0%l2cG MiJ _ƪD!q?hW DN`/̿>v!gҞ䂧^#S1W< -􍷰$uk?hzBMNĻ'܍Sro:$=>V4na[`Vb6~o Lfr?vg.gNA| GOdIee KC?53@]Ѥ]d7`ͧ`I^'@-+lg ?-k;]p. eKqx Y]Wu9ÑVui\nZ *F6chnHͽ}hc5$6sƵFI#8\ VMECK'V' :WNm~Td#DG7-D U4o.qWb֌>cٹE؏"0}b]ޝOn@feݩnyoi@"Ruٕ-OlQ# Ĉi*ųCQovNrI]YZ ݈tm3?ih2$yݿ@.J* )`{^@S ?Tf$M#:lVeF)5@Xѝ)`bl7$U[ g}Ѳ{0{H]6- ]wHDe! 6P xr6vX#ŕ֌r9 lGW~jA:g+1̓xXRdޑdHMGK>uJQ|cD3qL[?6%TY'?6nxq3#ڢ uߏ%ߕlDYi"I9uQ)eqBo+p_F@Z ^l$E y쭨Z<')ֽ!zmƣ2%T@-t}Sr-FKOd5Q(vʎ).ڈ\YRJa??q/f?+~? fm#Z/]](uhֽS~]U3Zl#&5dNr>>#eVEj[%@f8U_DG.PC-˧fPi1[%viM f'1&Qj_4ƵŧwסK'dQp[& K 8>O ujh]K8ԢK>?Nr^;߭x!긬NjT6܏4 Ӯ_OLA=hyK8uM^1ƚmG} K$ac|9jcVms[5㛾f)t 1& xk%7\ w /Cry|Xj]C;'AMp1 ʆMB!6\S1:_' )-Ȉv_CBsYVPbŧ`X^pkOꡪ~8 xSGt&;z΋5a an*AM3Ք.'SR11A2޸gڋ^eii1_L'鉬^M|>0+%'F!E)J1:Z2v}[~3t)䚨f%ѥ]onXC@oƀ9WK&Po{*rK}N!g5s|EM˟*yԞ{&77?MJ L/ߨu:B|>q|I'N6yG\Ih@aYƪao`[Rmvem-rww.`!|ޜ!u\X-"dt p5(!ë%3t7"]ۭގ 1zR 0ֿxI |<L1ԏy\pYND&fA9SAXHw 0ɵE źx'ݢoL? 4A*^WUpy N((> -- 8LxaZ} njlfa3mW]< U8u0*M\ d:Jwt͊],). >OtBN CVEe1/zOQ{I5-ӺBEU .qKytϯz!)dv U,^y>c.GR&D L}ㆭq2788?뜑۱]dzJxxE†?SAzAr܈A({zm&RO-Y$+EC{<|YG$qi›?/j`?:؋Y;2"3X YXHOvSv/#Wzӟgc, ׅGTvG=1 }3Bù S*r(>졎a`iFwFP-TOe%m5U(AneLY4=f;2"k#t82&UNL~FIRyg gfܮ8n@0>͵n}AMegxm򥹠_y.VB(^1ytrCىݺ QE74_C \q}zeN(NNex(Y`IY$!* )en`hk Uɱ廕P9\ץI|n1Do54 ʓ| cQ:{ wu58g[K$պq`+"Hq3>-O&" ]D}T-ě9sVm8C7s%A6aCAl;ݑ>lehԕÇ:tiruYMCutVfާANjqHc[}ƓLlݰrtPGc& -=5p>Ƹ.4"p6Ȓ9縣 ,tw5e쬡;T}6@B18`Yay`7}J*Q- F!Uh<I-qtQWAA gFifybkѨ߿rvP RbL¦>Km~~VcAgjm*־_Zᩅr6ʚ=u%[<5BQv(=dhPabenĶ^HvL`6- ") h|2Kw6ry֪O:©a7'/z c^t3_w #+$ԏzidʖc\։43V@::9D3U"i`:1_u wjŌ=~6HIm,NBs+;瘟}͌WvYe %Sn핆$!6g&,"˂^m7+mJq~586}sqUj|e)yEXxm_Eڙ]''aW[emiBKd}MG&-{ [fy āŽF !'"ƺo N4\WӍf$>W룖:2 40|X}e9aMΘaYIu: ]99SjWSѶ. wS3F&pplZ&pw^XNVIQFCv@9Qf˹ Y`.|;{@NCwٶyli5*Ji !Nd6ff; l"Q`~^Y-Dr[E *>VˌM@DeR@r aZ2 Ծ7r+=E IpuA)LRS]̄z0`լ,ILgG|B 5T!#$sKDFɲs(Fh H_5ʜ<&ݼӟjo?* eRm\%0{pwqq{͘cPr!ⴹx<3ƫkڅ*cη {7={ﮝ.V3& yIJ5;p Z37i0QnNVj,[c56 iES¥ga샫ncF gQ5` !cp.LMY\dĞXlS/owB/ևs,/:S8W];mwOhfE1` rg]B̼AѬI@Gq'{ V菪fAQbv4CBSm)ҡ8S=J7rпՌq&}9̚rO { ed>hAfk !^ߐ,7ּV1wd^ex*E=lfLJe%BmQ4Λ%VdIH׷._8 yI43V @jlJ R`d)FIcjiw 씍9$r<-]$_@4ˏc.s᳷ՕGEҋDse6Pw׉6Ɣ,mƯd Ϩ#$W?\tOp{jjz A%nJnTK𻠒ԝ(Cwrl@u>lپxsUCՑQWT}t},\:wFfohc&IPTx#Q,C!?, P^:-'cd7+:~zܟT0BƷyh-N(BO $5nV xzjjL;drEk@ ԅĊymD= b$ vsho1e&};=]n\hQ呗ǓiXsyYX_ ŎcQgpj\CTl>jRÇrhDKmj 7Q# "2>/ƣoouPM{W]SqθFO d94漉8t{ ,HPƣSBTdطU/~n;PGӬu d5gӴ t5vC@@> q ,uYc6.j))俈z!zzg6%һό~,myfNTw`bތM^4- Į`A;.kε sA (~M&sR7yX p5rM`OB<P>ҩ<ߍ1nLCU[.LN!:aS 9峯M&}n{BĪsq$1Ռ"Jz͕e&;0n9X ") љq 9B86JO&I9;6R"+WVc\ ?'/5?^렍µ 0 N^HrH @nO,uԡ5A#Aij1 ٸ0kC0=٩PQ#`!WNL Uff`ZXp.hPOuLv/Ňxyh_fy-@ ;L:Lg@im|mn6 ,pʚO~SKrX>@(YW}8\V)M!UAFd=S[?!Lf*Kl莗{|u@bZ}:oKV(%o`Awvՙ*bnthxWhm0-7ĿCBnM qԁ!sW kG"^>6SҐ+kU5 FXqc'rbq|uLӨ~HR(5IG|.R.OBlJkQA {I5efzVu(h8gGœ_*Ͻy:}9q4C@,:!–,lUI5i;Ž)zTt#9H5׼!}a־'A]V }EY8aK۫Qڃa֦`R7XkpDZ1+82_uGZS6WQvfbcvQh!9bY~@`빩~ [6t¨f;ADb%>+CΖES6>;q{ 3: @!`>̭(M&="U &~/*iU 4vMጺO&ՕsT"BZ!;qE[ݽkWd4jsܰY"(\B .uǂC5갽k_ piJ l6kCp=~ ηb6{1 3[`#?ؐYm=,JײX9YAnz5H9I_kLq%Hse~2G>F V3 H66P aӘ?C΅m2FY~% 0覕x ~Qz0}R(@EBnkˡ^: ӤRnǤt> &˴k9Is[Fh9j0 fwvނXXoC3MN![pJYߗt{tsPʴ\N pU_;U\pqUZ|zCR.B6,LV|cQQMx,Gߦw*r*TFGu~gds*2@ N$R4d!<ӛ83VEOgM43jhƷI>qxsьšhБfp=LAyzv^ỷz"iogO؂)BtY.mg Z)ghq\@nrMB\:91&èp 3W(~4e;Ĭc%jNzvR.*t5,v%,v|["s0%6y7ZGgDrm 3"5 Fʜ|GϘ3U~ xю)o&;Fwbـį +05+1&]#ߏe\3@mzuMq^\NGǡ,3s?Iuo⨟WA/> Er'm-ly&숮 TK?f+$g>S.Q-3t[T]n=MgiHY˜#Zep7̞GtbRg!C479/ߜg UNJIQbv^.YbGC=ʙ@xҫ᯳+ڗWMVn{a}ͱk(>ɓg oDڵ̘=\uvy^3\ kv&ke/&?ѣ@YZ!A/gKF|!.)Gx5鴜?D 읕OT<~oD~êS|Q"G$cp }T("^6d ӈYX؎8 P"t3\7x'<%[g6?G~>6A`BӖ3ŎZ8)Q1ˆ>!. Ma]T6W ۿ0ɦ, bdwN?_ 3AGеN;0.Ho+fbJRl-܋:Sc='IŐVbM!%;zQ`Ɠc2y@.Ҟ#m/fyDR( h&Ycp cAbε(Jpbĝs^F(8"π=hK9"2,+MxN/(@(GuhOYq`[ $׽L+"|`*bхGgF-U#JY>}E:ŐDɇ:Yr `:yI+\+ " 0Ψfm?MՔ1%7s/|G_ےφ=-wR v&dr\Zj~ Yy5/JG #G>@//:\΍O+FVl Zw iLjU\ԥSj9q>P+o(ol&<d!%,zKY3UN S >p{_`"]c~3wh&D}jzvGNp6<|]XaQvҐQ6փ+(ϤR r_a0_>6Y+ٰ] VO! b+pndӵ bYdD]w3NU$3ۢOjUy/r^̑DkbD<(+!*"oYZi-}xB]/5HCG <-\jzH v, ].;)gO EX<U% r;e\cI2%-e^g2}Kq6~?0l:6qjk~K ԮaL;,W\2bWzkoIOnOAo6ghn[bX`&aa, pe1 f&V&6(Ip,$2qba#1ϻGͺ1cӝJl.˜F!,޽_$vu!'65a-6m.,Ht Nv? Ԑfyv}t,^zHy%}B1߳pfDyV gX hӟ 'gݗOo54_nL5<x0HoSc&Ck4,h&taIxjnΡb7B={KD1Ԗc'@H&u v!7=X)*Fӕf2wG(0.ys%ܪ[Y"vZl;d~eEH}PHI)g:$mui- Hѻ۝n0g$U,L!͡{aujL\? i:O1K"k%! })9zP]}p$^V!n % <|)`̡˛=@M*k3SN˹R.N|ИT9@?"jN e,#H֣W\ Lgq(Slpq֜E72׿xUs RcڱؾcI4**f}RпpH!ѯO[r-9DY4Y]l]Q ד?OsH BhF\LQ.L`;0z6`6@Z|eM@S{q۫`mR}MeUK9! ]TNӧ(Ӱ=q<9}K5f)2s`Er 1|=;t[.bGv#7iqp_ K8}{EZ4r'V4hzjYz:)m``j:Wʯ8뒠y+o-< (-\&Jk_-[^>7eg%ޅ!> ( 9Xmn!g3G(s3#j_A6.M&y\c|:9pmY\Hm!<ؐt .[mF K Ow9dǔGC'g\i7#FS20r{:r3WsQtve\MU%}J9xZC 2pe3|szv|jI5/,'L)95IL7i_'Try:pC*cG7bxX=sYfX>x(2Ua`;=TSPvf̺ ]h9~غ}߁YO$O8P¬҅G^śk!^S(QuцPTOǩbH h2qBLKfp,V_O YWP|_r[BPq!3R:ӯ}]TfUлNJZHDSȒknHsv>W٠#'Rm剄,7>r_,5v`wUoCwfq~YY_ qG.OK w7EN/3ƐWk2Q Ϊ{hYMu\2|v)FȷI=Pͣ)L(t7&9[6%0H'\ m k? {4>7+9a̚~wⷩsïICXY?0P- Fz.>Cu ZД'.(Isli0u瘵Ts>ѝ{}BL1}s>a4s=JȜ&,,E%~9&@P/whtc%UQ|F*@OAu*V}=,=`ɠGw'C3>/ip)&8e))֡|n0/:oLtǺ6 2mE<:B_50+D6LeHЯ6ty~nij`~=̧Y7)Hzo[=Fp^7V4($t/Nţw87aJ oP@긍Y+;dFN n>ߑ'* +(+X~?\Y+#j,J!Ϟ4 d*F>>% p6>dg0FT .ȅ>)͋'d5 Rt?f\~,~6a*xܥE y.#ia=۹f|W}[ _%D"DLdir*=}A >04a/#T+\~:~͢-W,'[knx1.] ?Sis(b%h}&Qmེvh-G+mߟ+݀?#9؃k I8uu.]~%X(oz8Aj1wtפy3n'1 {x%L٧W :`c^o+DLRt3ԫM|k&Qhm8dZ Lh}Hj`w-׬F 1`A"sgb".[.[Q^@œ+M5hnp"@i Ʊ`_Qs1]LAd"d)+tNY喳K:O@<ԩaB#(Vz._&2K$[xcr < ܔ^؁$s,^UnCt^9(UVNr{9ě#%$ɂtHW*K8em㪹Alό۝Tf=H-NWGk.NF"jfK9]y534~YqoZ_ IqLѴH+u.gzAU\y}c`=bqaPY.ؑ "8YQVHd\3iO9Dx*42N4*Њq?{IA~YrZ^"?iQ}V]gEZ 4kR`u&5E 7n^D sXشChJ#LS5&ذeAE> hk%^J.Z$1S}ʅr,U#468I:ϡH!FẸ+ o?>;!{K2+@ɫk$x^ѤfdkFV[4! Ղ%6qW#*YEL/"AuWnlI~}KH|+ (q{d3`<{VVsY ۯ7'bdmnw?妠l05 ' ;IVkooxf־@>MvB ʽ[Q*b Oq$zQCFߩ[&7Vz٫q]HRs#:Uk7ɜ陝ZZm/X]Q?BSbE$k];&v_Ot@I5@2 l="!%O@}xn6<Ju(B:d0b_*[ jX>b;s/3]cnn5Q)X$f3DM9/PN"&%}reOM PzZdB7c?irp c#gM)l5J'P%q XbsO@ obj^K㓒*٩MRUR5DF:RyWն`7knpJ!ᜭ?`y#LV&^t30=F$p9#}5sy =自rE70|D 'usϭ3bLO~&>"&=tB2R$֏[1oCV'a@c!yWw¹YӒm}mwņzyHດPK{QCYn+[ϬO|C*F2p2IT<[7wu/EXXMVHP]w {&J&ɏ0E]4J:G8ewql*I^@>qʩx@4lF׹INZd!sӬbCU/KDvf*rZ5kЍI;^T]3`,ϫi;xbB=Q |]7UgKvWx1&/[|Q_$RrXy}!]'Qg`HƄ-a&MoB%^Vj |H?i#hZi/zjHGsDk+>2>x7(P0)"၆W}',ߴqݜz_,o-aXvN+%#O }>;!ؽ+~)qqgTFJM)$TB`@n%MWoѷSN~]AOשW+jUٴ V"ԬgUiX,Y}WȽ-%rxoJ@ZqA9'D5iV4 4`/DTbҴz8Y Qtv }Xj!\mH'S =qݎAU@K)LҟNBF!P.mf:.IONi~Q-Z=U 0DhA"EaUח!Pۯ5O1>֪B[Hu:k_Z|HO pĦFե)la2 07h"M~z foW5R[PM5 NJ:Јs`k?I"z{yXS?E_@ 70+Ngacg(Sr=NjA9+15vm#P2Vs;].Eѥ@֦CQ͜*.L])֘MG>pUJhڴ{(ڑNdg]|ZodX"ϋpVMI$HW1GPdlmTWW; P\Z9e'F#4E z/D_%bɔ?.]^p>[4ޘmCf)vqsp0*V=j;Fzy6Gn>yn,ᏸ% /aRkv:}D;<ꏴ FcAŗ#Me~ uߧ!Ne 9@ HDtWRBzƟwΎ8eHdG&a}s6F?<3[^Vyy- @[ًlMHUHpiJP\_G>O:!aBJ"ORR٦?np¦2j,D:(/[t]#e1|bJZGkN@~q0V4YsxO>;03վ`( {VGU;%&[DE5%7e90)x=+&PDO %^f{8Qhd*| RHA揲KLPo_=~'Lk#%fmxc׬΀XƼ^uFd[ֲpDq~^yׄaqEd_D>nㆼxىkd -- Ņ~}kGQ+yGb2P i<ܳL):=TBDN= w"̫ d) s1[:rÒ 5qWMsGE]l̃3m:R3Z}J4==:)ӧ] ` 0Be{ybȉ*%Qg62 2:'C {Eߡ}OiM] u-%h.rvV-ewֻv54J~uV$7eg?Hc(Y#Oقm@I9mw~KE?rfCi72^Of'zI%G 1 sB+ĦxQY22C\5ƃ2cD0irϑrBxt[4¼FIv@_F vܒt8eiV׽I30igțT aGYu%s+<'߭ZsLWSwr$a ,Ii$Ai⋐]=?7w*[#4*zKF8}E2J=vq`h.l9f\E7}R.Co#‹| n.6<4_x](uS ܘkgkn[dW̲WUm>tSȔr$6O}ahy'Bm*Zem(YlI3Ke< 5H͡'AWɚ{lvָv4m5pHcjWWg@]:x2QRzQ9_^?U'QtA}o_z3LtȆr >6d3>5?/4|\Z+7l\arQފI D󾢋yMrGyR<GxpExTQoQ_l`=UE,EW"-$J.JRTY7!PKkE[F槡>al +Hu ͽ=Ă4J\ z5rS kANjsv3cO_;\-N|Be,2e5DM>3&#f `J #eU2eF\u$LXq֏w(עmn>WΚK݄&Q{D߃ͻdr7yҮ3 6넏8i'.~^"Zϣ(1>V܂ď~K58 wP}N\R&%lo𓶳qiGwhCrcY֮OrhpS7z0|Np\Z;,TlnJU:\gBr.~j|4|d0J,pnx =(}6GKj Ek+ -@$&DOInm|1Eк 2F1`4]Ak{q!he(: Z-hq6B/n]&Rfe+YVư44K sba;As }8ac#@\Uhկ߮¾b6R1 lf+]M=*>kZhM96W{G,?~ZGحiQ{V&OwHY'Jk one\W^/u{|;tybt~LK>{<{]sdFC<֯9(&°<ڳTn֩-8 T?q*7 j{6@"p?$jpd>#L(BfAVX:~nüusdyq;q4Wo3UZCZ D2E2AbN;wIܔ8ϕÌeSgډ3SUM:s_3[?R\Kc߯d`(QB?Q68RݯVW[d,U_6B7oyw#Ѿϥx_인HF(A ӡY|<է NvQPg=}zguÃU3Z~ABw-C2XnZ舮]hwFХ+cY)&F,brk3+;}Pͧ _tx-Iŗ l]OYZ[׼|l>[;um`ZX1d e̲apJGu 2PnHJ ?\Zooܶ"bB'cqt:KݼMIpm?[iafo2wx"60UY|+MT ҕfa-o^/v]L dAdr,fs '##A[zjX5Ualdăj_ef_NSe$]=WEHX?(c;$<(w;Mi ^${S!z܇8m0qKT 67 Nq7NjWKӃ"`tj:TWo,#5^+I RYv}9O)1ɏHA;;.Wv ȱdd(^uM%p4l@H;9_mhv'Z+5m0ׇIxτ i(Lu&u bu0!/'[0bu̇zxAzX.0IaK|"ssk|`UpsnE8m ? =njCjzM&-PD:+KGq'`nCX :U&*UDG%X mSsk ~Ӭ((^6u']8?/(cKb |oˠv# >!v\f(R ®yy+&_8]|(o]ÞWP)꘴'{VG$I)q F v..>g>V>T,^$S*|aˍy``3QmeuBjpP)| J*]x+oy"#9f}|@$Jw,+B!u961pn.K!f8]A'틄qz 峹+?P?(}PVBwJD72g#NuKla bt}o [^AG~ b訽*-tȮs4C5g)˰uID~/(knjk5Js8*iz_ XKLR"LMc04is3`$(S)_Q^5PLԿ# X-rH$dbrݏFÓ+$T1=k~=r"l;⎘S ȣUun:X2Q)Q4h AlDt[($N؏"xӭ՝^`$ӄoN7??yMq>~vReF!ۘ~*p$J^D3T?5p~8'ǐLtĶv^oШ; ѼUTN$^׹|vhDs`#Bwk\eh{0!QV*iՁ(?*a.Yjb.ƥЉ 9߾A[qmTZ(^:7ra}ƫ oCcv?WbS- #Hj T4Ѻ~$^ +APMz.#r_*A.ێ=&%Yzhd_ܰ=v@%ozEXkt7v9 P5Cn)#,Xܚh1ēf(+yg CC:'&.!hRlfϋt:zpsU.zTS޾z{BξQZ]Cu~X::{^1V Usne=XhiS_;P3 Ƥ~z+>/u{y@i>*DCnU_sE$s Fu gMa/ (/+ f'=KL0;) >,Qܹ̚\?c.O1@53 i(ɽ%@elAC \W$&ˊ&,,9eD8踦(ŻHWIZ;k;FOnz"p OVIRO^+W["O_f,`7e JƗՂљ1R#FtV$If蠌 ו/&ȬPm k\f=<=dd3XoFuG0HWxӡ`\ E/ TfQUO݆;x^k4f**|Wqy 0

  • C+5y2bjT tt;Dtl@@Fx$}tvjJdpǭy0Fʯb? ]nO'ѿxS=X ?77Fdf>?| uU<ьY(- =[ 8}FX˵o+1O)2!T3LjgFN>-J#->:yc[,n}y\(OݣCn֭ OsMX3 ]6cnݵW.IEf ;]6L5?92~eptfdRw$m#8W)2ɟſ疏P?IDCQS$t*hM+}'yBxӆV jwG_mOŽ*0}8ё\\"]͑[uː܆W,1{eyƕT4i݃;05lMW˫L7F }n%P40]7OF92aܰQ$O03m2ڬ[K/oz?GJ"7cE*tz$]K5jztkp|H!P د~'!z8y 8p% %6eM$6 L -r|} VhX0jM 6gdUL%6S{'zOGн٤go^? 7w@#7E JsMj&&r;Fދ/JM-a =NR0 F }M-+UJ.A^|T@Sp/Z/(%>;A(Čp113nBi)LņkC\$TB d_'ێr(-`fbEqz/_"(5]FQVoSģh~(W4џbf<ѽ JΟKrZ `p#Hv~H^tvWweSȖW7|0ϝq56.\*"%7 &3 kh[9UóVKڇyE /twaL5uS: lΛo~&yy(Av<^nWG(Y3٘_B'w/^@a{X %qi7\=uA4/+@5M'Q8'=#,7O:i%!@w賋%1KV I Utv$ 4}Z{ "2R' o=fnXTeSouHF=xE#Hj/+fBx\A. Wy`ڟUPooۤJ ?"]4D:jԭRiK ^|шe]$&EM 7"&|sWc0 bn)۾Jsж\.a:1Ǭ&%SMIvy#4 d **Mj-EC|g?)BVA10@ \RnY{R`Yc^&N{;9(F)wDr, $poro%2N]0a($??p3WWNlKa!!(f O},,2D(%Yud P@JrZ<~SxlEw'a W[>mo"L4vy;[#@S}ӻƲƼwvlr][̘}mmLuDi+ej8Uw&804(ma(*HIms=N4Il*Dj?`UthI9DzX!y5#Ɖe5x\O@JkXa@n9`_tz1]9\ϫv[Xdj hX}3Uu\/9i4+ƤE{t3/ŭCh%e0&L#g/>A[g`,d<>G!ʲ^ vv8 ;E%~8m9o3uըX+k>ݯc$4SuȩΥ95A7apg9T5psXk| 2bx q'7K P*Y-g(OފA#vv .#R іI~[-qWH]gV쪛t3;UzœdT^q(`<7'mu_R:!{inD[{9"J3k[Wՙ e*} }wgGC?Y ~Ϸ(C~SyNlï<)p; V ҅&1̊XwضR16b{G MZZvGBђAOJ@t7{ lOQ=Lq#3wjN"|9&Un V [Fa3ZV3d HC Yl/pgبVZ£٢!-%Vv\sO,UۉAt(wt]SοZ| -p"NkQžvGC( hhPA4 )wИCܦŋ~(q3$y΂4km۱6M~g+Vmxmi< @Se/St'?j΃ ֌* S&/<-+ѕ3|欗X{k9<~ {چ1Yťh9fl64-Ei'Ցe{%F߫Y@&'Oz=^ڏ'H]~T \_[1jX{ߠ)k6VڻxD:jೄFc?NŚ$Lr5Q:"hXrǞ[^3c9Nyoj$Niu^[12iͮu,j}KCW"vVfvmT;XoX;/U׆J&VG[/2 wg:C&=7.cEnR'PI-#.sgp"l?-PZ=kzsHzBhN-S>'65GH*W$cK~PT74Ym2}7nF1"Tp:4 D:E3-q;kC(ہkY8 !> Ć葍K_&)s)^2T7`kݑ{vA "!p ]еݍUpHtQ{bgTE RTo1Q l%Ek 86S1%(zEAx Ho#"a`'͑=!GSlծƉNc}XvFsm-9u'{&O3Z#z3=TD{Lm]h)^6H9hz}6wAdwL42fj5ٕ!b.R1S(55h)jW;֨η_ܟPL;^`7eʠ.@n 7Xψ-Xe7YZ'vwQ2=ekuAHΕl"~8*E IU0LZq> ׾4jJ,}H;?l[ ˨c<:oC$ew9rlr,&T`!֒ѮZ($s'O2FEܐձ΢Mt`8wڭW?$3zM?W-#O\M.ZNеlK7j]Ew CA?v,h .`Z]%EzBͧw>aE25q6pb^$}j = ͖ΏfϽqwݩ8ƛqG2H^ aѓSiYir\)(#@9xl}Rgwc=Ji V$k.&R^m{A!2:5e"Nb at%A 9&kn< ɡ)K-.`2TE iQŞRaUp#Qn-WQ1c fdDQG^n"tK"e #aʂsfXVdS]_0WԲ{Ǭflz͟&fzOs^ R!Ǥ !r?#OV5d?G΀F g o(2| 56!ZjxsEkǐ.yKQC#˼~W?\8F018p Vt#OimP]k_ZBlǐX:})LPV"XSR΂쏻&yM$nEuՖ_lߨs4ߥx}dؔrNӧ[s/<.ȷ@~U}&Ǒ&W!2>oMwUlܴƹl`,q(χAڊ:rN%`Cusq%aUBSdU50/8:L}G,;^"֜b9%=JgfD4'j%}aN騋|?SPrx8kD2F:Do ēfS fͼ/ 7S,Z%ΧKssToQi A`[f]WpUȓ-Đ[9"AĀb2V!X͐6{泥@{ƃn \F,$[U #\rnJ]_8hJxܫZc:Z-g`L 6_ zDA *Cs答Y+ gփa:Q`OXޗP2A-[ŸM[A%IFadk6:@UV (l@;-"7k oLqϗ'cBu~ :Ϙ+3cQWk5?JK C{Ӳ}G?$J0|;WY2Îxax$6Odoc h,!rheE5Pψ߷,PȖ#UZX"NRd'_)W8T{hiv:1?$PCҨx2R?]ICzV{v)oطsr@bTݫgifEA6/؆^ ;z\`E2HJKz!HqVܥ^-woyqF֥pPT7̖\%֪\Y T r\BK߂SYS'w`5/BJفկe,TNvtB &K-?o#JUQDLm0dx\~@1ɩas~BᑻQY8jsޫ T"OD2hfkߜ&},uŰNrp͢0Gii{OpoҪzEzRo9 _1aHn2q? TI4tm̄AX2<NkOưܷʤ))!s o,QEAڙbyK&LȴrC=bWJ(fB5XN$v h6: e\^ :5U7ǘJ? ֡wz~Pk1fb2|Zza22gY@R !/hu=c}KyĂ,h@aZTÿ2^7*5L7hdE?Ͱ"v q!5IW"p3gsDtI%5Ae֚?e/ >+'Vro{2W->GnU#-ߍz~>zJ;.nD2)`=)$_2KN_l\$KŽyjN67jPqlA!?]H`##`YAf'?SXoSUO~PͰJ4tS֖6-ɏ~T%ccO-$yL=XPrIٺE?&BCwo[o!.w-hPH<"Rc%>-21drvlm6EuFRqAⰃhdM=W) )O-7) Sw(]E~U-|ߦc[dI9ȔצVŴƳR2%>l)^0ɳL`\C]/9ިEuC[o,p<W: fH0;u?%vmģ|}<7YgwI4Yf wD:F$67GVSúe_?7+v nN= Mp:kD\܋nl>ށ|KȗͰKRd@Ȅpr] 4+;.7Hp*pϜC1m"EF;@R}x!ޓf:L@YǵͲLa)V5}iU"zMV[i7(5f:j9lSm]>hlIoq]|}h ǯGY;=SI)}nf~g[M=/!TWcGQ?3}DD Fv%܏6-8\NHJXؤ}In0]W"&ջRfů I#+q:ӃF !7>=ri0m뮘j^requro5 gZ*; HDZW)N?*PG*gDrt,#cXٞ f gA¦}ƒ CF!ث( 9J/{>2zvȺ< A Х8>ptC&F@j7u Z9e&{hpjA='<,-r'hcΒI fEl+e#Zꙕ":ŽtL5@/qRm48yjgRw2S}K]O"#XmL~ +~PA~ ?AXd` :q-a<߳hAN*! ^]ch2tC'D^R锆 vY'e+CDw@^/"\VXwu׮쥔[8z;Borxʙ [TW%G`6J% )߼%:ΑktD\UKHݛ6"v)W!3LB88c[-#3RCO8䮍Rws)< 0~} xM7^o$/m|W*kt$ޛK=EGzAbm\gշ?YfWKrx#?~z}҉ksr@fZݽ;.e5ټ0Cf̭~"XoާxFm _3}t<Bo vXu!o!Q B,MOĞS2]HWŬ>ZkT89ve wk^=A cv81H&IG{oHYPPBTMh;k*䪗ts@T6)\`FGBa,ȘsfMPTh:lG$,KDLL>.GWdQ,b_)߈|aiUF(Y؏ՕrǍ.A?ʵ n,\"=WّU s<7h5C ۅ?3l $?;v L&v_CSX:5+ϩdNtaRp-`~W1"W*Rq. ĕ6i.Q( 89t UC.B>bzYBy~?>L(x*vHJFpٽF/>?^wKrT 4"W#ZŚ-{>DapSAe]RTC~q/;8L|wqbl ᣛZYӘ+o>L>ֲt[/pK(.'Q2Hit mhfM.Nv)<ۋ ׌?@?,4 D;J Q.IBnK7%Fl/ܑ"YmÃVGea>!{ĭ:Qɐx7wm*M6لo@tܛKew 'r^dk KWWGJU#Ak7Nn _]`>3_&O MO~nQǦ4~4}à=K8i{JAwN_y-*tVEd 手%Ρ1-*@+ A>RQޛKgP! R`\} n4U#Gc8WXYddHӸ^aBW:In-"bF(ǟ yTk9|>iC|Tхkt3Õ]d@m}/6 R]2~fZp]KcwnI|})% 7[8zd! /dy:Al#?˄f}iv#7{bK*qYoa\DJA6ə7(p KW `,v_9 q`ñB (,3:ُ-q~*NU0W\`^DCg ALjoߌߠUjGQ抲l(6b(6YB޲M̟Db3JxKy^$ +F9,&FPuPuxydqqκ(AaRǧ]Պ}y)W ›h5LD:rxwhwi$t@2d,>m>Y`lkqo#VT邸&rą2K;2?C!4tLJ<*NN v ku•CFJ5qa('S7ᤣ;#-1N3|;3(WNCK `6MuEr2Py``S},wN}[JT#~ Ɖ)otИ.HKBoKgSX]*j4ƆPCc͙$Y.B;UΙ0t'y \dSaD"}Kwm%5:|ZwLk\4W,{ #kn*'qo^J̿6}k0W!Ml!$iZǘ&-PmAF16Oe#vܗ,ditPuM(%<3$.3Y<3ʍ4?cY۷ .Xfy{ǀyQF6M?4*E}Eka+S]I{ܔ8N"d֒^O! _2"`h~ďI͚z|]/x-.3fMa^=SZ'3Fs`Pΐt_Dӹ%W\/nJ/=(Y%,_Ӯ'RȦ Ot Uam\$zطo~A72Jg%S8Cqy RFafc:ɏ֬B2?diw(҈#Y&0 8yn kN+;Q%֥.7=.롒HLꟈOē[ex%9n|E*gvkKF .,m<v8KCV9J?wa͕jg fp E3G]KZI[h;qM^p1C-c`v>?7CGI%IezmAqG3lnRC|'vZ,˜0'эU>N|QիJ[\uk .vX.2*(IDQbOl,Bjj>坙e8d L(aj蓽Iʱɰ4_I ut)qmG~3լ"_ƒejbK nK=Shd t 3XY/'xufr P֩̍ŗuoP̒S* k2z=R-NDr3Ck ga3z$>iFXb#jPL| 0_< aR)v$:B7_;>ۣ[|YZG&B?|gylc;8Ҍlu{ ?cf+Ó~xBMk%z,NYXh_dK,jf[^`%țD ( Fթ@^r*|iҐ)Y[W`} 6JU=G˄跻4)u9vΕGno nΣM LdoaWc, Y?tpk Ye?]]C&AeE,M$뭵&٭w+XgTWɡ{=u Lj\A\Vΐ1΁`t 1͇WeF3](X\OhեPؓrϾ5^ez9C0T0?CNmgB35}7dz﹮e ;FGڻ TñxJw"C̺쇻(,bw{>lL?0)ljvrm?3zq"ypϰ].iоd.L gR-GM* ̈́Ѱ"Џ*Q!/hzG_k hY~lm+c3;J&{5!cο| #kѳHpM&PMmd\ ² jmD,8bQn0[_[ nJ0}1FؓPUm9.WNw^<&F4(pK8+r$WNx>qXEby]DhS:viXK3a齰$Y6"eQ Pe z)TW6:+," Uȳ$hNAwEߨF=`?D)] H۔M~\j]))r# T)>De.Or(kmql3Ȩ"?kXLHq^o?Gp5=Ya1RWv q'6׍-JgL\̃Nmn(@UP{9yצGv EFvV"rW%JPT`ymo;k%H 8t1ۮ*sP*nEb@tx-_Tx0:(\Z$H[ơgy,i (I=Z\W0\ !]\jeC%*А6>5ۚ:DŬZ>йxO/W='CD @΁=J2!LW@D:5hXV}(MB` zl4NQ@Ƌ1mu%6P}ߵ;2FZ_E% @՝lU<«7r2.#`2 xvUZ?䢬\PЦМv!kéˇt$JvKVnyÙ] '2vI Vw1 c~+:ɥÞnt,:pȭ I>=sEǻ׸#MK@?3@T`z>{`bYr}yEGu0 :N+RbmѰB6 \RTy_yu4 ,q?m#٧e *bƞc*hŢ:='rX6em7NqBֶlǟi iD}M(% 9 ^`20 ̀ah ~i:]x&$nA760cXK!b9l-GX@Ga: Jw7vF '1WO`K^J$Ri^KDah3 +yDk9Obē=fA E1Yq8 ×5hyd#rƿtJ` t;O-Ж3\\ˈErwOk=OQq_|)\7\NLA"Bf'Ԭn2,oBI }X !WKo2` g_*!Z1\n($t;a/w4;FD=}\qPYĄjO&ǝ^ bX!T$Z2߅7YKi^] w\sz"($|f$ပ~`TlAX%s!<@LsI#%b @o%in C{w̘i |3YlehǷ= IF\]/VEGr)'#}|sXJ%1q&+c5ݘN.$t9%JTG<Pn@+{Nz3vM:*f݂L7LmV$pRZcHHbxhi0.0#Rlsⳤ]T<ܽw p~"[t %i@aR7^A٩c=twN Гh67eTӈM}]ۮގ^/C>(>b$H$p-zjJdvaX@O*zγg3yZi7Ȣ귱!iKWO@ kӠ"{> Ɇ^jHOK~s#΅jsІ~+Tm[%;U?z+T ,Y!k\?=:7I?A%y\xqE1xCzzC?H\#DݾK- SX:%<ɶug;2 a+D^)\ hT*s co`?X0j(5GI澣иP?Fκ$9xf亵Cr'|n_U#婖TB#vlzf'YTtT#Ƥ/~۔>XUG?gidRc[;1l%orZ3GHo+({ /⼦~ a%h 'ޝj?0a25w# L3`jr!^D~`xْH|Ov>ؔ:3; zǐ\'#Y>]T{~K?-yв.`AɒE>l=2]tp~.x/&id7H/ at 3TUЩ3 *;\֓$k]$+DݻT]xA!PrւZʨ7)5=j,Q! >Gm%~Ѱp[l .<9}daa垔 mr9'kT`ibR7hC9?;F_&y#ֿ8iIZ{חE!Ϭ6 Y\d?L]pݺ(QxDڄPO0=Dk-qQZ>v[NG^EG1#L_MS=YЭ1҈*z,¯M @jrH:!> W3 z 1\ɂf DUZ&h#2N;d A]$ uCi^Z0yrrOҎ\ e X疁|QaB2))SW$ R5(Kֺw B^~li7襰ݐDD( fkLūl08W1RY j4K pe(=pS:/M}-<*I""!W dnZݺ"2WI/TvJڎ2!Ů59aڃUh#cshmymWԭԻYXSE<u@:gىirs.? j$nSyXћq =ĺƼ_]˫%ؽrJɡy) WshgqMɕA~j+}¿"}TjohYhIlUZ^Ǯ:Vv5vqAW)W3d x?b>KTu4QV O;$kabR^T-NH@楍ƒ̣S0r<O0B1j x]$2C_V]kYś>ͶT3O QdUs jNmZ%7IvozXs ~)3)b8$}ލ㟫Aq,r9(G#YO3FS磒;J"k`莿6^(rp}Ug !]$ gAO c4bیLBO1M Q[b{n@do>Ru{Dx K;'z JZ\郜 :Љ cԥ0Ȯn>{Ξn67XdȀ7˭WT)?Ɍ>W >Q>wbm@pN)zWjTkNf@M^2 8y؁fZGunA'^53>fcaGjhb+CشpvYytʑ;Ckd6ζmXçmkW4U PےzTvƟEYf:69^7}:&V-S#{8ijM\Yݢ.ƚϬ@yAyy[.&acn ߰=,tc ͇L3q{Q`*{=BI{rwgAJXgeM')m5Ñ66]a[~̛*Tit4XE[D_{=m=I?iϸMP?f0CWKFzq.7ӘLՇC~jˈ;-p zHxYGZAC#'Pޚ7RkӇK/ӠQ߫PfSbvp¾3o Y (CQzuOOY26Y+Je@ۜxkH \ *Mσ[3Y@œ 降|U.!Y>_qc4AJԗe#>LŕCIیS2v*?VDX&?M&96UV9/ |7 =U%h&v6')*qVֵ֗D Dn]KdnL5bfMcVyg+]\6oFS+6 N5`6v1APCڮ#$33ȷvd7d1} )vi)&%V' [C(ā3ts_mK 'F@8`Gm',`PGcu\EkSKC #' }E-Ǡ5̰ϯ9#;x U? ;#4zyvC|^bY71[_P3?Y[.TF??`d&EI[1yg_L[Ŭp*%i-H~ 8J2@ L:]zd}:-p'%y|>: vSJK@Csxf`p`'W *nk! eJh:Ӝ٥Wğβib=*Yв"erlfҎje-d݆k mKq$fcs2"1 SEDS_=( ^oc!꫎PМs5 rP&b]Ɓ+"$c]x瑵bȰݰk )~~%g(I΅JWEuu1sEMi4_#%}ƅk]wP7|{I DEQ_+e-Q4HRs\#UMȕba5M 3oJ8yҼurHΨM,B4R"Ҧh]aQR3ǧL :2vn5Lu=ǔ+oz#~U "Gpk}M=UحجaJ@5Љp%( 3 ^ۘfݥB}B  u`Zbd4Pa' OρYLv5 т a:kdpneD.2\g //.?"%Cĸ5I 2O }ѹ? }}v]&y ]\*/ʉuP8R{$ɀbĈ'jX곀LkN2%H06QfaVv ׾@ bv)wwNȻ'6zrp>&,ϟ_7xd\(f>8)h=J˔dL"nhҎK "+XRjix%)ɔ6kp7EZPv"9{zK*)sF8 G[_3ƙ󹭅r3v(Wq)ag6<='_2?OVcLN/~\vbλgM.i.[@`f&D)JuS! ,󎰻FS T*X2d,]*O"r ʔ7 zaGgq& Ҙ D2xáGε vlIJdn:]ymt [ZbOp=ܲOճ 88pV{f¯`5524M_j^Wǒ(x%g{@8oRc T+#ZeF{ټ.} R$K?`mL7Ŧw 5vjZטּlT%T/3<>z43{{ﻋak > 6+fŹ;fASX שVϘ({I6fFEi3jvųQugtYӬ]7Ego1j,\z0gМ|Dxm_f{:Zذ4Q]^Oyvͦ&p_K4}$C=d\Ku: @>ࢽ)(H)$nrg3.+o=Lí(Fv WWB63MXچƲLYk|Xc^e?ф0OmpA]wV^g_x hZ9)/yGkFgNkkbᐪªe@=A/`ϻ~29fC: W!8ź+סq]s rgLp/#[.[y#\)b[9SsAF@fymYPH( _LQHFl[{qs: Ky'M.OXu~gj}u3R1D/3)Fy]CGӨ T##l1fvb;<{ri+2_O\V|f`Lr5@pcu7tD]7}klǜFOӏLYỰkXlUږaߦ}5D fL(0i8[*_Ѳj WlIɮJА?RY$Nw~N̎/_a阄i&mwv8"*Ħ] -;1[wShr3nhh?RC bGP}!H9ve\&nJ]pg` m 1JB\Xjs(R<ĿmVsuGKr% #3  =Dzwص>E"܍s> l)+ 2:ZO\@WDU7) #D;jc*d҃6>IYEPW飱?/60u8TT5Vy0ykxyNDo[Y uk}[V37erAk㼴fQTfRtr#/r/Դfv+1z#3.X'ψdOʽF?IZ拳:1Lds-)A8 K/d_RϿPJDX``quRN$lj5@V&s = 44v au|S}f_$Ś[yP/QLUD\3ta!߁$k1X҃+L0.Ƶ*ea,N`ߩO{ggrH2zW8 ODiVV3EYAךjay_Pzi)bϩD`=8A ̒0frwܵ(A~ra5q0!OG\.dh'+kt"3JtM_o[ 륙aLH-M\岃XnM[d9L2WX7YH ٤[L),T$DߐHW_9U䂕}?>p#o]-1z`?[/?:g3fߊro<__QL֩BA];r\G3]5A}:e8 i(u r^{PD}QLsf!<@7qde wgAj?,#QARM!U)7SIB\{p5_%1LR,5!0,v9f⋒ !Ac4u%Bk@U$>ң䗃=bY;R|;Hk>{ݪG?YOŜwUɔx51'/{loGT'+ɏEj˶A:LU9 8uZ_&''/H`B6yW~YHka=L%0US j~( -9{Hn>Z/Y}fuDs)yOƥT &gx_ MG[ z9_dXnѷ'yTR&eecar)}iTdIjw&A/d*^yZo7)pچN_ BɖH#i)=&TG7yq^QGq!W&Ƚdr3G=.R1OTef`Q%ߋC - )w4nA:9Cq_&,扡גi PaBdp38%hץr#&![|{ܴNjL#*sմ\ZwycvƋWV!tJy%4FbTJUZ{eʣݔB mn^m ZˏC9vr]X󢍸e ]yy4u.GHv?[HOC衛X5 =5wPKJGLb#g3\-e؂\~u#_@a!I>M= _?w\6aݘ΋D0ψHH1V+ETو֖2>iۮoNp`:_N{Vȍ~O$ +` f澞{{Ƨ<7[$pADkf:[PfhC 4>D ib$ +P~9U=u'UUtp-Yn49d&a j8N ؋|!E ny(aFf 9e oXr.M-$Ʈ)VM]sl%'s&ԥ% UUSi!#b )ޮJa6Y>?FO*7Y`_j~JP7~K(P=o`{9TNļ"e=w+QG2bδ\^[26傧v0Hvm?(M*JS奼ʹwTz=ѝy5m+8 oXv ?dx+ l": \sh1;!23#cf)yEt,.+S9O52x}],+'ǟcvYUvjAPcMꙍ>nqK?Ha(W:aUmvk1T75{JU0+^>  vN DrڈJf ]t/垧|MۨDoddIo A!܌ ^lV=dbQYd!,kW^Hc/щzcHRWTWYn0;wA,4W﮶@%&5wf-* !F B+'" v̅Z N *4yMmOULUk)^{)plsϞbzy/cO7ْt<^O/)>@X=?O$sǯ} Bt n#Zesz(-Kxi~(!&)\ ]ð-jes#B^te&֜/NKwˤC 6usrܓxU-z *`Q`mtLj,]iQoleKϟ_i@S2rK]QcbSP[^ U [:9wu<'1z6#6M U :lpw<ȶ\p5*Vk$Q*R!%%&m L">C->Ga4Rb(O&b`,*\'>cn4! !l8u:flP G^0V21]WAh/β(g_5V{Q?0ـd,m^8E@nu DFPG/Ylg }gC=i+2"hk&^h!?k" (>)ȢLs0om<7if^}SNB=Xp31%*n.uytngj#1+' (~'ggIOUvJlЍS"nZdSJJܢ6ߑ=88m["/tǕʬRضtq> %-`|5:@Qpg.+6Uy)TL@v gg@Ͻ6w}n v3Ȅwa"CTdo-aihẀT*X\ǔAp /g'W̋F vtJ\tro4uEW6 5-Ed tv0ˡ{PqwR:<"t#"VnJBn La [q]URK#]. n6 㨺^@C@l9o -(A6/p߻Evuvfpdi!¾uU wU餑v)Kp9L'M7 #(MSL@j!{1t d2WoW8ltE>֫s'bޫQwaN֊Cellq@'559Ij{Y )ϝ]# 1UqfB `.WB XU?X+*0t׮DwixtQiB˅ +(? V:3;yM+TUL(P*4]'BT3<fmLägxe /xA- ),+!i.KG¤tNV.҇_>@-rpb:`jVڧ#|78ya7Î;^s6C մuq8yjp[u6me585]褤瀿Sj-v苪{Hs]BYƲR¯**RBV06kxb$n6/2\t' &f|}yBHRQK.Rism[oL1wq^h<1;m oRIi}^#n2_ `yd!qL1k0Ѫ΍Yhv22IȄ^+"8[7*jLXYIbx2gt!acS}O*wc.L<0] ͔c|\szXǪdH䎆]@luΘ-$5g4]uhXi N1C,jy_t9se&$5B=&vqi:ydËsʖUƿl=&R=G\@X ު $]!3يh(NC 6 _\D^|>gwG@?.)y[IkGM>p녗FP䬭)jA|Jp4]Fv} @ݍo( ُ\f{gy_I~W"LLus3 !XuWK!,2 cj" 7L>nl;;BNbu<0WNqZЖ(=5tGgo`-sT3.41n%Nq AeZٽpAQ|rFFYz[:S .N24DthAx}'kd:4@3lۦR,Em TA%QK[.Xbﯓ:7SEs_;O}$ ثao_6IM9D|x5>l[e`vcGN݅39Jkd#5owv ڇ@M$C[vP9&^!)K>mR6gc"`Ͳ|yV& #H)&A$ X. 3Sr ]ȝ"%ȉ`N@b NGȹ81frJalij|S@ґj,-%+Aøl[~7Hb/rw\Njŭ kL@9G*|.|WGԾe'BU&Vbz,_PK}Ev`!ki.YxK]_sU'4<[UͿجx C߫2wJBo`_'mswRB>mȏ{\ Rc>!]藄xһ}lEӱԢ"P!\\hǦpހIňHּ3uL1D|+f5/3N8L[xv.D= G)(6Nٌ1ՂO?I'0Z'kF\W,cg SCc}'a.lp}kNAgݪ#&^? E1I-+i[󅾉:Pʊo#B D,H b^F uG S*_z,I3(NS3ɹ\i{#q=2À/;G B]ɽ KJٙ`!buֻyY-k`9z3iX? ;uc63\7Fo x\pNxYtHNHX=1ZAJQ _3-QyJh»dvٹC;BɹX!w̔P6 = 7c8sO -ߙ=j\0Ow]W"aδ%D; ZZ+ye5؞alݰ|JS!"'x`J|<_\I mFq1\U%]pc :)"3)RjCZdnu isxSe,pĉ{l%MZLQNb=7gЌM\ʉ,"1RP FL(}H2ΐ:lmo[SºBȆc K}MψI KYûi]JRJҚіó9~NU{S ;{h#!1WNbobC`Nu[]I N=LXl+ M%3APQUEUAe>M01ub֋GFworo/ ucfUU j@I 7)ԟ "SdER:'P\ƭR k8j(}zT eAXp(Ã5FkF~H0>>E[ ^Ԙ/ʋ^qꦵ]'В2ď|nH#γdջt`>eNo-C ;H1?uPqmBGynC\4 -_w Ⱥ?嬯x ڵ]朳t 9$ aGմr8BNru7j2h; ~ħ#&TfY ~42OxTW0»>|Уǜ˝+gpG`0vwdF¾TޡIWV M8bG'ˁXqF~B1rdc;nu|z k S7 RP#\!hOn{3eS˕R"u+Z^6ddrl%'LA-D`8IG"T]4Rgpaoel8.-黠'˛u Db?ү4 4 "|PᐙLĴnjX9CDڎUR_7pC_8fu~]x<$!U N4$,(ʀ RwH{|#o(0;ӦC|Vžref:iɽӿíV!>Cbj4FчȦɝW5xEطz~lU k $Փ@I @ Ҏ&6^P.O_FCՔMI6'&ˏ"DS-r^S v94IfYN;J'L*AB`0LqSSA#ޖ1&qj`vnYJ:"1wG5MՒ0T XlI|E v/:cBKˮD2  Q naW0.ڔB M jى[xTx86ḱөsM__>D #9ބ-,/ u^QM$0W^8:[S[T$vb3{ɉ?̋OjNV!G@dQdE9[Hfq?J\/N3@YZ V!g2}_d~Oԡ^O&qw1CJ_ S{}ڱ:z<]ZfGu&ITrZ4!fGt&9Qqc~QRG\Yʦ/e;1aSΫ~ѩ`!fu禍e|h:i/vLݍ8aZL~j<gx%YN}d`?A @  |ik@QF '[9`?$tC ~5 6SNXYV-hoU'Ync'ǩN%l|SPR6]CXIy.B MtyR4קa>E5vJ(sq 3qS ~q'(N>bD*m>4~AAZk\(b |y)M+,%sa{$ColwVF)K *qNxWjmcT~QJ0l/yX`4 嗯QFld_y kQi%w, `6Xv]T/dΨKFIh| \e}(Kj Tԩ-!,X&}C N\pŬBDKզ$NYYU?- č!?HL=f][vzBHO`i92^sJAr|Y:dzT4e;)si(KhUO."!q^+ zVi9I`cV쇎qmR;B},'_``?2'8i3,%庥sfW.RP)Pg?#vܶ6uzm2R!fU:w]6γtb?w*ȕG!b|F}r}[ S'n9O<`EgAcc FưHO,'!O`k>j^Q|JI{>3;'yy$+nnwsveNf8 =:>i;#LkC,h`LvPmx0,~ 穇x W,`Z> Z,qsmx@?1œlH} QH8?*wxgѩu&CLωN-a~֫wu}+BecHYae")~WC$k"҆EYH^tAdgf[ʩ2I|%>یgb'ax]ev/ο$}Y}l dbʩק|ߘ#}htbI1]4c]Ƴt>>(" ]uk ”H&=v] ܤ|mz7̝HCN=X]'8aeȲvαczS֔\rNVPb!|f'Dw6:. ts vj^(ӜDdOp%v[<9,w/+~ǝIj'"bwwrߙul<3YpHtp~Lo/&^nx-D|Qpv u}锰z/sr$g\ f݈Ȃ;qB(T ]?{FAEݹf8"[b?jdXSޒ55K0i̎qʊqPCOnaâNHk o,K׿HM^}Շfz#4s@`H?Rm h$ϐИvxI3i*֘ ig>C9&N |g O<%Y\={ȵHl-in9 NJQ@p@XwU;TJs'.H͗NR\_E Ly-j] UM$5.qcat$VjӨuY⌐KCT,@'_-3l{ \:ș=̏7|t?9Zr*7^9K.~m77ӱR>O W~LY괼_8ץ >>8!Ug9uvz>(ɦH)k(eՖ1*9ιu_<tL7ʎ,$&\t"2C|TKo77.^):K'8\`<.S PSbl{ CWxE'rcWmN"c\šjV.oHhz˥.\ o$q/eG* j\[u0\=Tt HtFFQ ɭ8ȴ5DX>ǬTЁţ)Q [*:f9>fW%Zkl6ĨS(W@yx먭 SJ)@<b,ׁ-#c^Ms-ZpOzl{U!"* OFC,MEr0zZLd|wG&VT_vn1ZB4u0x~{(N*l_gv( R67Vm24x7*j|&(u?%c.tv^cQQ +8 \Ѻ3:t+9ϦN&zN[3FsX ImpQ6&?^6 [Ii>_51똡RqTJʹJI@Nu}:cdEc̶Sw˃ =O~j[0-Q'1u-aT:B64<\MNK2 ep \]q6'лV9R4'%AE'@.m)=F \i]q'!9oF@b>$>a5c7vJh1_ܙ ~*MlLu ŷދ!K}Мm`8b]8r_r!.ZZ=@h-^(˳"ms/G8W+*fOZXJ~q(*O x"7/YCK4$h%16L{C3zxeB_[#2|#؉x FI^R)MT;|+* | Zq s$E6(Z&i.4}6#[g*Bϛ>X@lx2-ϖ mAtȨ3nU! AsSgmVFW?GΏsd>V]kA.mc)TЖ_ά&V%H_ Fڋo,j, B;瞺hu)8 W056U3`w*g^!\% 2WoYZS >GvLTymR|k rRM"*84F?%_dqI*:-֕V7&Lڠ9w0>sw ilFY_]u=f\~c`dT>r|xNS[g/6 !8(ڦIPwqÒd`(NF9D@MFUP񍢧qɎZԽ ud_pY[{7}^dX*ZVD6,-Oq"@yU?2 N{*Kmڻ02&^S`}V%Ux벋R(I-"ZnIu:WњijB'+5㍲o/ D;M3j4Bg5Vٲ 2| :,;$jeQ?}DAp*m22k6BDVө0u^Ry T Lp۔#cx:v2|_'ID)!at~՟A}@Bz[<,~1]?.)w#u 1fEOv56TS'(S߿>S(7sN|3QQ*QjhR,{@m>1y΍9_!*FˆOl[Ҋ(&)VE.trsmJR[x^4-/lηz_}P|ނL+&mVB8ř= fTxiӯnlkseo'$E883 cO~.ᦩꤹllش?VW/ \íT|g)b({(ŶkThD~|cR7 L}L߶ZIW7SlO񨘱jbnUm} a,seNaKJY )CVU|um94, Qfw&Z 5}cItD׷dmcS:Vo\+V6YBV$h!P=i_`l㥇5C wo37-x@K.Nӱ=viO;Zci{ xיm*B-p< M֐ -B5dM_vJ œn_Vf]yq6lqR4dHt*+eJk|Y)5k&{ V\uadcp&ޚUԖ;!.gPju>w3:.zV4> ۩;Caj)ugwTcxޭK?XHu=ԿZ> T~f&Q}.bI\nšE3{uJ -u!cfnq;\ 0ڙȅS띺Z{ *t 0xhjO`,p6VP/+1h`sRwJX^ym#ο8tqa2EҴRJN1Rj iv rWapC 8?(wvkK(}ʁbaϴȣ#{XqdaAN*(8d{4d*CRŰy[c.<.H]^ blk'H YnzK CNk" % @¼J}<8 3ږlilhi)au,[#KN :2?")XYO5nSOTt5 ^:<T)sj>kb֍uNՊr` phɴrdiFw/d-F-!-A%*B)Xцd"uBFW^bYY>\`]PB{:/F֛I^EթOWkر8ݭې:"^pS҅bW .I5#*~GSo}ҙs} U8-&y9$|G{t2{㢉-EuUK[ EwKJYM2bX ( f7t^'>aUNR 9[$AGgYa 0dUgfqKpmxR#. ސXv}i78lA*e [Hh w/O+%w-k 怉*m.9^Dٹ 6v']2׀N` mdޱ$y=FsAdr[~oisg>-'sHaarG&-]&^r ḋxxQNx -dbRf*`G210IX:["F {!)o{Qv8 q=d&,H])̆/>4c >c1؈wd_Qj&`uIj# )!6ӏڠ]'VזzT& 1Ժk*Dj4J۬͞ $m9<'TqeIkLOcvw &: |8}VRb0 n}TTn)N"a -&ُ-E R`5f>u,389cLb?ա~Fv ]0= ȎB $z R[&'iY)z:fw&qaޟ8V-_ y#W!oB?r )孷>%ѯANX(H`Hq:c=)䰇[0(#A+.e&雟xizx0 YQ nЬv|t{?wֱ)Fx(&{0C t :(= 'OjH Rǩ0bpLU`[zHhU<6N<΋ͺ6vP ,{i?(ڢ 'O&.AK8C1ZXQXopPBe)F|& yecpPᥛ5Os_֞LWEMϠPaڪFO|PѕVR"D%16Ɖ|K>rG0X /'mj供Xe)BQUo >j_ l隴/h~s:>08}}u R)h+n Hv%d-RHWc{D ҡ_SylVnvZ{X2OI\TgK|˟ VY?}:FO50ӤHj(zfη8v3Vbsd%[VzY<7/{e7 &2<8AՋ I뽯ƈx!_Rd\|zSPâj}~+):"J`'[őQ02C×c H~![8fh`:*ť9Z߸!P}u%  ~Xa*wjƬ/'H)F46liJHZV\@ڠ}ITZ5u`^UhփR`UӮ:U.5ۚy/9NW-"{{.ʘ[w3v=7“`Q{ ݽ;!ÝD^/9i\7 )%Lш"ɤj*{C}, U`uAEmTm\ΤyU,)P@Xt(QXm7lw7b9(=CPh. Xx"(РԵ(T5CRn\ ?^Bz۵ ٝ:GvFԛTaǠdw+(=w|f9DF*[μ{!}Unp[a6vծ|kݖyzsl"V4De{C1?ugv!#7a)Z=)$BߝY}KM}|Mʼ)],hEh42&igޒyu6qyMh(eiUoJ[7OTJ##siӦF<0r'w]b*rղ Iv)T!^}ZCQLse*H.ICI_ńά&Y fk2vdUo?@R, ;p EfsM^]ziש[k;گy[Qxu!4 Md|_K*iSx?`iGߣs'Q< wnZ x xS,f'V^L>.SB>7p9U>G-Jq(ͬ/ o  ~`@Tq[ژKx'ŊN-hL0X`ȁ$Yo4h|o+zOvC㚺 (`EmA+ P?_ J+ݧfzUQќǞi ˀWl ftsF}?eB35A_ ;otƫ5O;Ons$OWecB OV&6j# G+wa>wڍThj͛@M!_rA] Jtb+{,ɖߧLxIDo )C5=Bӵߖ d?ڇnIO[=tFn?p= ˿`Uxu (SQT0[U ..4ڨ\A?2^3CJX.#J VⱐPE',4AQfq_2@۴T1 c5ӂv%N]H㙁¢־q4 gYzl׌HzMAV~܀m>ւExwuV,Ǖ* oT.Cb8l UņsapNA%dEѷR}A]BW"sjx+OęmӈJvn֨xN=r<Z>Q$رP>:I8L7RyO#p ?|uęCԣVlhg\H; ،"Wqd[%Fi@-ר9JRL6T؎uB^}2KB;*>^q7}C >9H%[Z,MCp߶x38#:OƏ9]yv\ۑ?fTy]R' "N׎lhE`uyU2|F<0nz#O#Kc #w9() 2[Ȓb;3/(B5;s3IL!1a-3j7!)wo~%B3q_)K + I7rFdɳ*oo7`aQ]kVh?LheJ2JeL$H+jlU8,hL]BON&AZNRhr>EvPzas `7BAW8[)fxQBù|D\()2#  \@fi>pz:_sbnc3P6.U](ϗAyP뉻dn8nAK8MhGt!P~a:qQ9}CKy%m|<4`]-6laù 8$uDM: NI4k{~\ǕjWc7"UOp bUZDIH}usYA'BOS8XFWyKs\G6{Y5Wn %q+! C-$iĶ #3 3`E))[o{H۟ǖ( 7&5HHWwRkKqƘE]eǯgˍmqͼh6`]ƶa,97B0U՛1\d8@Q>%fJɦLKH<EhZ+r;%_thA'HT/t=(khnqn'P@do ǐJjά"*O\i!+KJjY WzNk޲if,Tܑ7ܵ$U-Ϊjݤ&9]ݽc lpiMS_#iP2` 3wXNFV9aOˉ&s,:MKt׊ةBy3 @ɕUcl5^uz^m?1J)T`_MOrXe; ٩'S4⇞’.Hgit^r\{]1/|j#zvMh>4B.sgjmY՗ֹh$P>򀕵ǾeUEU7,/K"?;>kg\}B_nO٨/{Ke\[HF# )⦮i l79T;"ҏX!lX p%h9캞c%cfڽG@!Ҭ؜U?OciKRѱcceKY.3r4xxmQ1p_ ~%+b98L " m~yX׬+Ҁ}s Db1r8יwX:]<ESQ ! OeۋuVӏ5uY;h; ?9 ,N2n\{^faR&{ń,rzk ;@|0gѰAm FH "JAՀ,}xcXnRfK%@"}P sѪ?_t6;Mj%fNDh07Cft 1,݈Ï,1V[4 ԝS۝v%QrGnVhx ry-#+Sk zh.042ڒ `x7c$C`9=}IkɣC22gpWū@ͦU,"~` Zs(u K =xeDb۞?R- ^ *FI+%>nn=P>di]M#O.}(xٕ鍅mG|n:/ZOMl- WY%gמT{A V)2*&=P\r#F1@upPf0"Uwymԫ\F܁XJgz@Ѕvѝ{!%o2De 0ނ:| O';ugz3C_AyMlJ**qCOŪڟW#݋<`}B+n_]ѧGX 4qc0B*&fڤ@q1@H62ǒ֊+.FfTf|S >nڀhߤPpާ|NeXuFW.ݘfm`Aim{`Y<%㍐"lLƠ(&4V/u @%ڼCp>ȠU?vRDX=} R oc PR̰a;mI~].U?۩WP.)6>D!1#kd7xvH)kp|QEvPy0%yh`1,ȽGh?,~T2X9zd,i5QenRʻHSKj HUQQ''YVz=VŞR1$e $f9zöǟzEjE9r0o̓4`~ZxUa_R.&9cO|@QU$l3-m_CzI#kF TD Β􏋠dci}ۺ$~؅gb:Dy&5:LJRtDF$zL4" .c<6|p Vp~(u`ƸHR,i`o®c 8}ԥ.B-1娝8@eTIN' ͲY8=fLX$oō񚴺3V, fQ89ު@C!ȩw%]yan f 6){r ΢0E)\]Co~˸)#ʮgHc{B<36 ' U)gZǛf? ;0Cjr#\ftySQA1 ]C亶UP)+J\d E;[nMs*WI)B9.$!)Lٜ~JUPr-wekl0=#,IHH]8B,L+į2>XHlKMOxSԁ g_> /tó0 byC>2e3/R4w ֛BMUq`ZJmXq?+yq`xբѯ0DѠ|u[B&LqEBb= /@bqV,ȁ&*Ѻ}Dv 9l_.t)e5@V1.Ȃ* XpS|} 7ֿLMQMzl9l2wNr68DSdk4_,ʌn]-zJLIa蔿K\'Aؠ^,MdgVxavWEE[^YSu=AĊ{KkG6zEcDE5џ5Vn8v X2RD~V [cAYlaA[^u ]`iNHӭ ǣ`"QhW)4dK* PI~%l.S#٨V{@6p[CE+V( ِW#-C~v.J1![V8qstN0Z:|\eo)bvUU )̆5uSc=|VW6Rzo_׿k}9ߚ"WD1<{AT2¸"!,* KL{M:A|Y l}&撩z_1Yl ~ia`?3KZrU>slƽʷ*ξ╺.1_jQ f?0]mʠ>N9,Pe[3I$ /^ڂTyy~y:5 `?(R2FIȽ3G?ҠRjzD}I_yo/AXöFDpFiK)l_ffQƦnVL!͠ C+b6XVB;klleUXQtս@D uY)}Kv?!ۉo*K?>X K߭RlbI{XtZdR%'z Y(Yu^gTeM9"%ɛ Lӌ@5T>;0 1w3jL_\L3Om)A˛5G l*x}p*nisw$ ,ƌgn]|5X(q#qp6ݷ?;ZW괣Y$a$#Zz=醧]1qdnXRKc;1Q~E!U\О38ɠ\ +WE!Pt-i~B(1C-iL.0p{3|O[ ZqLoySA {s[НWhO*SQV ٌ 3ecu6> veH?{G^uDyִM|$ & bZ<Lρul1Iru]36& S`lj\{9%2I)9OxN!je.`8ᑕx'9v?$ 5ʃq/,:;}-1FXZco!.Hj& `IYtɍ~ h-IŸ8cCI4hʡYLW)J41fTw1.O ښ&=,P{pT(|mUvpQ;qg^g|HQ>xAg w)&[Wm%XUSk&R1TӠ"*E:v!g|mT|5v&=)<+/on'ͽ7D;?WX {r{MY m#ei N Aj|M!VI7 DJd26o'#oVKFg O ) iv" &3nceH/mYVRw!Lb6 b*,|fg{FV$\EolkIt+ w;MQC:MZ+o ;KO,ĉ)YP^:˥puo' iGD\鋜=5Ob#ґ߳D,@}@nfV޸@S:W `Bڋ)l2=Gz7+lrpL/ SJ3KZg}r+ BqS\h߶%-4@N41 [&S/H9X5+J⁝bM6839,d.?rܲ5_K*mhbThHs i=-#9RmT t~Wd%~pQ=8;WǠq$sOi R(uQP7pE$j 2(.49%g:HG 2SZ2mS7rJ]+W,zaf9bIb@ߊ2V7s8IBP ֹmgwkyjF87@%|^ح;jD) p۝*ݷ b4Z0}bƤp(x\cm<2>| @roEdDB]X.B8 @&J3'ϳR4Vo Cx `;^3P\8厢W?H-_5JvbX=gVxJkL;Ř3g50icP7|B"GRSRuMR@a+؄YArmn`3K?n:օا jbP#i!lsF :#Y윍 m6-Шu[u?)Ϟ/k־4@I4˺^U\5g`RTKT~n̏ϓfpX#;S|.i5bU[(:) >TO^;j2U6*2(>vձQ ;0头'681s4xݶeܘчʴH4]C"lHq5^$J:&Zpff{C=}R4($GUZ]z&1*}(x+-S pΟBu J+|'k*E SNٞs艋<9=tS5,< a_s}ӺqS%ݸcR2wukX (ALnؓLzP/r&}egj*[8DU)o7׻]PJ`f/άS(d?m&"SE| | u_z+&v%2oK ,ڤPjKs/@yB}z=,T5iD5E7+oНPr$=ѥCqMq$fTD} y[⏔KQ tr*Dkܬfu?k5 +T!4ƛlkDR357kf+f*g/q I`W\%g8SV楩ؒMo-W}TU:CX؂ƇU?q NJ%=.?$>F\8m;õvcyyWloRGo q{Տ'("_7"%7I|/݆2go0j;9QM|5g mӼ$ViSK>' B*^2.Bs6q-F4._ǡ4ь: 8ִiZQwǯb8Er8ɺ[=2WlB %ˏ14 f0ss|K̛Cb@79!KXa☱[v|[ˌ8E=YZNH+~CGpK82n›z355Q<YyMIVYSl]Jb4.*-tҔ7Ti}c[` vCN$pT yVRm\Ղ0[,wMU/]rlТlؼJOh*('o{Q{r#l~|W[;(dwrN^a6m_zY7c t%)(ԡNnXg"Wra-ʟ]Z.2v}._(-g(kjTOt&mc؈*66_^0Sgegw9b˴w9cu7Yu h__?}Q48I3:S@7^qSҎS 5Or C'#Gq* ҞT< "L5BB(63›݉sBW3sxK*WY&Ab;mo#ج>E) y!&kk̹(>R^ExWZ@ B2ߒ .cI&_QBOVJ `qr+wHpyRH<2$TwatDE?-2.A~[#hHb~N .kAFk=J|!Cq;4i%ⳡ&js3#aƨ޺k-[I X "}^f dL̸L7Ij-XԞ!ZI]a?zn{5`r%=NX6c)[}M$Ƞc*k¦]K)KE@n5?>}=&["?E)}u~9&?}8(.~eW*/MW +5=ে|(zғsvXȻӄouhNh2s(~7wݥ `)ua /'BsȠa "%M3E6wayxrUi'C;8;2 x&eYނ݂?c@4z#5Ɣ$᭰n'݋omB.1sg,rq3 *6.e vϻ 0Gz/?v+etP"Mwyt÷xEe9L;'i[ڡ:s\d!/A1ķP Jf 4k"+CEpMO_F[D'+wkI:I,u*lld; P0%뼝'ys1%ir^mMgM 6US8KkL| H[w>!'9iasi*?{]5@!tX0 *RQѿ:Vr.bOÅF@T`̛y̫(8m<ٟW Q;R,ѬC8Npy"Thz65Ksg"?lf5r:xfVrqI*2Aol`'N QpO EBu%3o#OamjL?42b|cWv nnҲ#nXu,[.W–zoV^.=O.fH(M,ѓ.TqC kڬLZۆhEtU'#O7u:Z J'ݟ5Q D9)P$2ŖflvMD q˥ ñ\UzR(a?pZ\a%wB-PP/le,;Tp:-jG.j.Q)NA)8DY S8npEA{JAG?kl|QS5f~?8]i%*wzE}A W/-ѹ,{]Fr^"sN{ g5imc<9Z2}cAi١3w"b(!9vi~;HW;yڦXxo/qxȂ^ [s>?U[~ 琾Y";{.<*~ SZImHN˭e\}0܊A7u1AmlOxNLk?ǀ>}sȗ/8cw4z6>xy]Qr2LQz-o T"UʥC) *%T:ٌk,6=. `>KEQw$Ƨ"vA3E[MI kP _*6uۼK fefF4zf&o5霠FOD:_y.ԅ#M=*.8=IZ@!bU$)SxoH6!ӀMNlαbm6( vihhèߏFČqM  ?fFQ-LomΝa9zE%Ux[v?:Ězyvg%4{Yώ,z;a׎A4C׭VPZ-!W3- ĵ BXӴi7.yB#jʹ6 c"MUǸbLc`bԁ8Z1櫱)N 'ԉAlNږ;GPipk~ U*o"bry>cQ66x,̭;1lrZ0i:#Q1_0>Sܾ #kYbW Z8:y.\D~-1)'gA_k4/ `YѠB%OqD9j*u{n "e3zȨ. Q!EbqTMZ^5:ɬ>DOSᎽCZM2@$_ǯU(O6or@ƌLs/u \{z40;6F:XuC!sCl*(R|I@Tu;~>wU_(w:Qfl<=쨮<^w>TP"ºF[Dښ:\@Yf@3\kb$؟o;w?AꞆeĎz\4{%ʊIm!! %܁ èg^^m,N1LuSES!0N]T@"q"UN==U-kn?-JGVn((3E&U\_j9 &sh "D Vϩ˛;} ,ZDj3ffUs1 QO`jw*[H]T10| Ycj+/f4pԒ@_LYDcЩ=~^x$\00sFQ2/p<,c*֢+tɁqmQxLAw5 bb$H֙Ggp#^,r‹qk~3f܆)XA1g.`wS,6=W{NzTZST3Мe(N'`Rf,@x]Ga>5B ;HXHzC!gfk }jҮq#A]3"T\!iH7t\ s/"k"0`UNL6/iF(mMx~fޙ5>A174gdtU0l'e*OPL$3?}rRr2` m>)"=\ Mv4Ѻ5^.~"A.)v;38#e^4 )Hhx9L 0H(m`ޜeQ\Ɖ+ :23]OnV%De Z_f(k w+]D sPѠeo.QUtPkfXKpԡ\ޤ.&Vlܛ%)и l ! rBV6 C}¾!cnMcp)?myD$UF\T-'бzjOZgUە[)6'g AJ ^ghYJS ^>j7~?kWLd-mɿ|v#u-R{dL4I&ڍ^Grٸ!U 觇1Q?w+Jr32s/*nײ7א}+6mW>zٯC 3u M0OBXL[x%h8(ItZv< fjW#4U)Y= pd8]:&v!0],,,4?9]͛}o])B74r+߈i+ ܶ/j@dC(H}{sm_Ҟ$1b܀rRq0܅IBf|V dTex@},!A_8!ח8el֧ǡD0⦡0YLw[ B̄f )k'>{"SLk0/92XDէB'? 0*G&B` VB;|Lso _(x le8~V0*ԝ_ECj :3=-tZɥ ٫G >d`}ˬ|2o_N?"<8*'A^@yB xP*Ϙۂ+B"!(LzO՛uC62m?x&7ĔRޡ 'Bm?Bt;{eyoeGdV.(UpU]$Hn-/gܲEmVXRYw쎦?2 WlD&YWgŦ!\ N/l` 4k0n 8b{4Ň2SNǹۄxCm:NATEMC X}!J7\kU|D7ȉ$c\N}x ?R⻆bI5h?4Mxga wYSktPZ8۩}Pɳ¡ҿd0{/GT}*?}aNx]sF|Nq{40FtwWۻxTo>`DZi'w^o6:zZ]̎Td3s^gZS47͓wW'/ Cڳ 3zeٜA$F CBFkDurC .wq36Ǵ0;*ԭ}ֽlUMȣiAxţH{"[`TYh@ۼۏ2@gޒet\C-Uq{&{9"oOG :lm C\S2@ ƍ X؎V![u"'`[7КBepyE I/ "r*ǍHGټA3I+f8.B 2 AXwXgM pȅd>taʀ|Vr*g&EOX S-_}h<'ȖCثNVÜdkg&JXyX)@39M3- ͦGS|F 88ߌj\`Q (Yﲢ\h[ygZP~wAZvW_Ծ?hC)hVIYI;Tqr'9'AVdz5ް ^ͷ.*Noj19( Z)G{-rcKiD`H5;s^+fj^6m 8t۝gfY|LhQS ꟩ ATi3#DmT2Z" `J簣xcVwIo;k4P8Ih:,kJ06vj?lFyY(Px?m!Պ#?>+5H~<w-_-Rwy|L"cz&UPx^XQ9_YG|meypxԬ]tOm#@i eSHC`,#\V9O7* z}>x?s"Y8*g@űcU2&j -\Swר^;ItOyXݯ`LOc@HO t=+q= -Zjll9eB\TQ;y#C4v G`fE@ Kg-k 0'sBqLjs{d5p S3%PxҼtU+4=.n7ŊB^Wi2]ՃIDhQ Nx4^+pW!ߡ+mU;ѣ,HΟ)VK?&'?8u˸UD]0pZ#+$?ID3 .C ǿ t?`7bBfknXĚptWF)scc9Ŏ0}ү-Ե h?IA TmP =ˍY%)T39Y0`.u8tr7 -ywF57'ΎSq4v~r !PJ*pFuO kSP>oSD0@pWKL u壷9+#d'X?JSU1/{8x`84#[H| @8\NVyP# 80|ځu[%RG >{,۷ }ela$L9*R뽗}bWUCnfw~OHɒtc[Uh pi&CI(",&]/$hK1$' 4i6fG؀V6$tϽjF.KqP*,uM\(gXX1_n DL@\ŏ\my\>슬6{]ҘH6q^ pl>N:nL-#W& K !0mվ/揜nYz?JᩢIa{/wɁ RS{2U(b= %8/9&, 5RjAaa7E&-0aAi6o[Aڎ4OldUg>E@|%A :yp9E[|X4u `qcǛI=40r!?_^pMaGuҢ5وIҥrwbtSrgzuqqŢ~5gLV3ȦYJ`TVYԻZkXTﹱrt\gNu8@Rڳ# $d4`x]$d uw}^\`4c"VbىLpf7c>G3Jۋ ?N&YĴ\KMxw(lo"T-o۞^³O(U(0LEA+{ԓ%-#ùbj3g4}K⌶/AvߎҦ[j6ޒ[c.<"g]6}2J9y/on)HEFYWN)U9W;>jig=m:fqǓ#k+/VVXdAWE=K#[DU씆{-3F?:}bdsƦ{Z;HH㺘RWA! ݐ켗Jie} ^qa7nu%hCC@e4s{egץ]{!o]Go?fD3&:yt@XrT~qǬT)$6՛1\ ^-2jRq ֶK {U[΢П$TƗmkKf *8cA8Th46dPuQrᒫ|_}/j"olDcW9T6]7SjϟT13M^FrzjPv`04ƚ5PPTO ]j@d@;xQ`,@'۩+^d. ^CS,XDGށ+K'q:FS- +AR6" tv/Q:Ya-",Z\ nkv)Sm,gOgc #.9QBj>GcE) +mKx"3$ akKmqo@.FƗ* WB zǺȠ=[ϔ mƛt,'X8+< 85rh260on2UݷBY^4otiLh$ \|+d q&,Qd8)0zhZՒ6ήU>Tx"AtNtbӛ z*(Y.HR4m΁cA Ŵ[tW❸ (|]mζcgHWPkg=GZ8Ȕ௡.TOo~6!hcq52|DH Z}-N++|R 2ւJ+Zqj(h cyt!cE=(> M?uW ]OOs+OmS跂z=ijkNb-ǿĕ N*bڣŊ31W$̆Jp|d9r:tsl媦s *Z)-q3367\n6bt+Sz5jʋeWBhV)U%t~:hDcS xH@36 >Ϳύ+b)=2ue,0, i>?? ȓO浱pЧPPWnm-|u;vy-yOF@Wa%|2/ie UpC @5Z0ih:\qƌ #iwepI5 ow7]]ZVo‰[FŢ|f\>&R}Э~lPL% Jԡl;x ~:Z>S ebC8ٜYWI~-51N92K[R nRz ,$NN@s? 7])OXR[ {r#Wrkv+jK.oRfĮ  F7 B&fqz4: <4p!#ˀq+_\aD&>m0IC}`\fb(WKuvt4r(|x&~;AGaFS?ٯm`NfE$LwDܪ: dFj]|͸ѣ%:FB_eRXsf{4αK;-5JSEӴCN|V%m*.گ0B4Ɠv%LD[MCwNC(F+1=3y''_^qn;K*B< LH Z3ή|k5a3#X/~76@8%tc.XswV71>!$AJ81Hg͞SE*J*< v}U̵z@ 8o.4 H5Qk,"onGeԊ|7/5JyECIF;x4EWЍn1c9'2Hl3kH,6-Ϳ!&FN; ^}H}Vgoj&3ٲI*gl Py"F8 zR`ޑ8)WaH/pT2X[@I?5sog =D*qsjΕd3$> FGAB@0͕dC]{C5 .e(sY"o{W6\<SD&sy\iwѥ@O~; 1h[|Rh]29H瓷1EPDSb{kգm(}с.S銊wHfpSCNcDsl[mLn1gټ]sӬ6miU`=/Ь~ԏj `f!+a}Q7ibH Ema`LWGBbEl+דꟵ6wkOr )k?6ElNPK:;棕!;Vbդ[öYo8Vm|灛<BBZU&Ci694YS >vR_]!z^*J߮h<ƺO&_'NI|V]S5wVФ<1f&/92"O-Z~9Le 7!.'U=h]5 oT-p[/Sae6rbZ;欺8D&{w cjq<~}^XIb`+V| ֢)q(@S'MN/ ҉&&qpށB/ZeٙO__ٌL֐z2Ǵw|vNh vYӎFXOe!"R7WYv4sܲgOyYRߛXtjࢇ .u &VK#2mN?uU {6kP}sG8o9(≚00xC,f_QywK1tw}:Őµ7{lv$|y%o&`;0SXz-&ZfM=7]0Տ_{M ^V6nn. JA"tZ!<3أكn&eT"i \ʯUd`,L:O^:gyqa'ę׺t v ߅Q' c^u.Iས] .vQɎB|IG C,":鿐x=H)]a#}^J[woR)GU C;9W`gꋏT@%L`A:~<&/jDu٣D*7-5,>^R PS>G,B\cnChWE?RpLmӢÒQMk/9ը-KN@b99IҷcQ:/57̛R-N^[ngnHEfULF~ q4`V$XTHTLڲ8iٿu`\?oDjMy+TDOd.QHǗ}*3n}R2oړ,gWx/Qs$w1BdA5N-T6@hg_ =ԯO: E nWS `[\Vn-}HNGjlw #h_󹱹WqPPs׸W'JH=QXy0iSƎ{9[XH}#c;Cΐj&-}ToJo~\/͇blp͍U59$`x9ztO:o|h$r˩C`)2l+|PɁH7-hkpO[w:9ʠ `L uwtԙil~݀;YKDd֏,oÕdeYmV Wh}W1B `T#޲gtdu-xcF+j<qq;5gdl1nq~B <\9ӣjRmTfD%0XOZ߸N[.9tUY}JjDL ?ώIOS +nA*@˼ -d}3b?G -iEO]яh͍NUp1LЬU'' ZbuR:? .VKInT ( n!5Aw'(ܱIdЃ0)l) wdJ4!.8aOtB gi3rd0 ɦ2F/~K:gy6|Y\>&ʡ}i[@Bz ~-Ԕ* Ǔ̲h }&K^bCFҖD&= hVJrkMs6X)h@e_Ѩ0BmGw80)& oB?4S & e9 }$WzՖC'Dk80o;$!$o@ ])yDL3rp4_|hn>I ;;r,@>@gcLz/pCy1Q:럞Мs_ 7O`~][E>w}w2p h^񅳝l7jb~⸿?5iY|ݯ}Cń$ Qk+'4mGb\TDGfZQPD=>8p2Ceeδ&@-'/< sS^_bhKKp@j4tKԚTunV/pOP WV;-_AscyD؇ H8ȺL\"Rwa] ގPk-9I % Oo&rbch|a^32*UesK̨[EZ7ڎnJ96= cm%(4*pcwLE_[(]yCY"ז@ 5Vcď)ˌľ۔=̝ݑPy|T(R!WOkRT)L{˔Z ԢA0dkӐJ|ޥGZZdW ǘaotkaNDtshG[eR{~+Vo1A*]pWy1u;.0qݯ 7wb EI$6ZRg08dz΋|c/Ds,'WV$(NfN@~ʧ&eOx0垙  G?J0;?`Wtr-#DĂ2\K,azUp_2dR4ߚq <%'LKY0XQeNInqN+|G'asھ2PqLNld]/)=Ъ,M _lUق#ZE BCf:8<su^% ")|ɨX-nxg]6QjEC`''񵲡>˂zvˡ0ƘQ{C+:_9ûwE *vѽ]xy-&FdIo ~ 5\2ߕnçf)5Y[\sk=* !'Y}Rt@k+_[fϷ&U# wiraõWSRa s7.{ wA[t$-;H^I0$5zwba-=ߚU !2٬rM;P#^m8I1#NS Jb +$H&ݼ%!!vh4fcXY(!t6<5(gL8x~eAD4NǎA* QQTb8Cc:>1Ԕt|V ,{" v1-vZ-sKJ7;ôu5zz 2(\O4ЕՐ0řڡ<tm f0OPƘ>j)K,Xc!8-&őqǖxi.id ?ŏצ[yJi{%y;%nn>46vgNK2uc#PJtů } cTqjt1W+c!c6m5y8|f.ؑ` q}f5- f H|@vt\K4(?L񛺗1ɲ0-ĝfV?S1c\EdS-3{BrPLa &(<Y^.-&9"=/t_0?=˿oMj\auԧ›l/I $E(fQ{VMqbiQɟޠf}̩wvt$wZtژHk:)6ωf/kZ5wPP&_wh\Z&Vf}@~y= ֈZQ΢;]`4vG4FwMSh k-,hx0z3ݹijSdA‰zvd>Q Xm@3ʶD$IpzA ˏ.S!viٸg;5hҍ4O>MtȃcT~]x-%unp/@{MILS/, eWIqZ&C@r6BW%,ۚMĨ #JF6eoВ_jkᑢEܨ Y!n' a- ttU}@h*5eOGg•[4b?~(HVw4 NV?kfhe-Jlaޛh#`kÿ8ZE 6o8y|Sƌ)ײȸ0Ԁ!AOB Ft!oaI6齾G $DqXm("Ty+0~j!Z1S6y11n庫  G`;1d1p{»Ez;&$ *lQDUlI̦]Jĩ*J %/A],3` G=) =89A<J O6|W)&< +" ϣaÎy"FuD>KZJ/ԇ.%>Q+/馝-YHb%.0>pvڞ)b6=) Bی! xK5 [UuxNEiR$?9)µiH %AnZ Lp9CW(g] >ksvZ@ ʚN^^w :W͋hnNH'mh<&kEẓd$FOv3[ٹ;ݡbڭ}g$ʅq)r$LLl01@Qqfvi ]#e WbJZ &˳.7a>t3ga"n 'ADxu12lOMbe$6%m))ִ"zf]-H,vZ=>&bl,At5ydR=4h :WN4w PK4px, a6タóW <sr}N_2:KKEyznR|G4yhsf~4 n{E@q}12{Z W8lķP 'i38sc@ȹ*7kEvT7e>$]bZy4lpl`^g+r"R^n%;&yu"o-޴HH7^(>bn.Jm ƘZ:"F)tZ BQ5O$ b(B:5 +U4d;T\I^KRգ UǭUa% !'_ٍ#{0qf:=Iht8{vG˶M'va$$Wא/mY: )oiV43|=(e|Th Rcw1SomlMh(FVjjC@A zFU^\M4ͦ& Io`2ӈlKe4s=UeG` =<&,ױ5x/p"C[^ 㮼&'][w>=*:2- P!,A|TtZ^q? *m!Ex" s'8F(t{ oE4H0"?E,(_z(N_l9Ԓb*m*ܔʔ @Z*H"e.z_H 6{ЅSww89= k@X/L ص7ҋ$ۈo$!fـz\놈:sZn_' \b`ͱrȖ^j+j ^孚EWUF@Ȓ8,řfYnD|}`.:cʤ$[dkno/ 6n`1>+UHB]>*[G"e`p蚨G:Hiz w_YfC_;Gdv*yoRt(NxY<`QL;7aegh8(؟TοaN`j59GJو4TJ^=u%~nYyg%nSDsŔ*rЪC`Qye0P, Y?g9`2'~7`c쮼NTd^muY1{wOxIW@izI[COMckIԛ/ "^\-7{(h~nB`s;־^z:8p& Sf_}Fh멛D݈ 5"Os U1eEf>Ƞooj\ 40'q-#D`t wlԯƹu*aѲ݋ ~UdEAX8w>e 㖢hu+G`Vq@h oV Sf2aܘ_;WKz]^%ߕY4O)wBW-hMK ħSn1A]95Զμmem8Oؚ)^) xTö] ZwVNGvL QV&CdVφ Yg 8Az !U o]˕!I=7 r\:N!X,]><φA+۰;bT}l܁xl z.j5:J j8c֭D| it.\c1IZ4;_V?l=< AZ<%ʖN\rݵ8vtUBR|1v9V`j̝; n+ӋOS/hVZXU6 b26+4xAde{#wv}}Aؿ-OI`:G| s9KS~da"4ץ${U aѧ4!>ė'[l6pWz|;$xcxXSødnhjH8ɀ(Ol jb 4ʆrQT á76V..0)/ac&<0~ҫe= 6/\2r3{?!vX nD+v%iIE!,KJΑ%*7fc gGЃunea[,Ȫ:ɖۋw(# SGYCn!_ݲ {(˞n v^8?Ig`W'ENϫ>t@/vx?z4Zm2JT C^^/$2f |"q)z3q/T-k8:F8v{oOV ȆpYTH)LKEi9Y8 -m\&]Rr Mee`>6IJSa~v9p B 2!9w{lFq@!Ċͺj{kL,@Bʊ/JVٯN=* Rim$i~7@x&ݎ 2R^EF`N*L12{ܱna߂:좇 L]$ي_6C"jZ3Y`Ʊ([J5U@1`zmX,}PN/~ƪc=W"U{^4S8e KFOK"&|G뉟SB#H72].[m߆K:y*zfv#hHc$,4=nc|Y|p6=$u5kU>A&CsU/ yBs6-;VeLa$]#/}c0'^qø e'DHc<(4n ASs,]B G62\FKN*|lxQr⑪1KciVqVf"9)@p5RC ͡%?S@D8CW ?W }27 ,ƂUQ'$J(eVɘ'P(I=8~m+݀13Xomh2Uҗt &ך'ό _} h65~))^֟p;;f@YzU4(;RvAc7} v̶ީF/ZF0dg:zGk^{#).L0i{zR1ca"̛6A8Y&>XĬy%3|,+ XL=r;1 gdf̄sVs~) "/%6쫳%؋iG(Loks,pr'ٙqWo"m<|9&u}zŘKXyzE2naH塞 ȸ >}/!0vO咐qcǸvryou{LPa$.l4 }O/p՞|eCY4/ -}K%&zGxxq&&;igW)WwtC;S*~B!ݥxB94f:+0mIq@Zf} Y25K)' +l #cHܢlk4JL:D^Q^6|?\u2CxQ˂Ȧ6~$"ً41Ak~J+m ^2F[ZhyGJ.Py˹ 91תz '22GGX[ʠ8A`G=ESݝu^_13pd}zU;)ՂWNqS0&]wKE6o;-)yp~rV Z^n ]7tl0$#]%eS[c;)0I*xcI󮔼RSFGA%&>rz5z Kf#b 3hf^^v^3[L&.w:+ iN헃ʾ8g _eH8_5xϗAZyC.dq*X‡|[;=WOPi i=yS떀;n?G}QDx̩=yHzbxq G *d2ۭPnמS˺n͉2,EQqXbT,xo# zkXAhz]djx C=Ƨ:C|]B6^|7J`;)cYR-Lԇ;1~m'j=+]W7bɛ~LXZ2(55(t@k}#JUj=ٓj,0p53'H}Td.mYWUkv Ӷ{ M@Ŕb IY1P@!b%>HOZ'+ύ-ܲ5j 5I3[b+gKH}q- 9(hs`5k **`RA(%V2[K[x~Z ``02Y4XWrB0t.%?9U1HƇ6/2gؼ&`1r*@?( oi_yXkN݁VC*duC_`ބ2!g0| iRSo:cIQAoxM5Ir @g@ A:~Ȫ B?iחX@6 띱J tzvIփT 8<dg pa߾7Kix3\ 9B#zΌםtk1ں*#0b [ijUU|L(8VFOZ[rwKy_j p5Y6DiZ[nYA7 <=5'˽?ݺ?D;qf: `ʽr}M*O B1!gY)( A=xuHYY&]oߢ з?ڽ sK߬7Δ"ԓUVtoA1PYlux|z6[b;;6ɭ `H/5~pr**Eg:/f],nr '+6tcL 0׬) rBm]eQT] 2 J2ٮif>w={_-NdI囲&/qb 4ς'hs'b}qZ1_;[!=^׾VԌ˃5 ,xv$8CZm?QXhvX ݀W/&Z"^}ʪT04_ήN5 )o+mْEVpսW 2%X[śD!VZt678`%2zPΡRxQ([sU#G?6v8$޻d2t}VQFF<;MeUh [30Z+SQ>3޻4kp55Si @d^6?Ѝ 4sagkT%H>f$ʡ0z2p)s^LA&Κ$%w |3L .01vLV,R2#yCЎ7e#TQ$y엧H:!$8al;P5:o)^2{{FcE*,pTSad8y5 0O&Aoӯ+~0 pmY+Ux05NN, AcQf6TDkuTlK/sƆt6ɶ's_ڶuRr5&!Be<g` ˯I q Z4jGrvB)jXkκkig 젶7F/)%|I.iWĜźc0LƱ]U?g;?gǖUqO(?k*qH҃EOϪJm9|}if(Ȕ:rIJzv[jeLbG)#=qRx+jW-=$O&z|Z7^tSG%M(bO~`2oޠC\V\~&p8Q +Œ GkQq?~[IX"ᐈs%`*Y^='D|' >DPñhf4b:fshr>˒2IKH]_9}~{w^?iϭkv /f qg{Jw\ho h1SDC?  f`>'YU}mt3deO]: /^ج m̓O(}2 &-uӍZl0*:ƢHr+,!&Gy[aIv5k 7nlwю8Lfr$una"os }-Pi"+9AZmep Õ@UTS߆͞1-ML:R"rFq! i6W~Wkn*T@0Z^56Cnf cudQ!ddgmM1BHaA1±\ <91a>KSC}]azŕ&%\zܳF.v.ymS$Ͽj|3Gyn Z/oC1t%S+ί0GDpU~-!c"]6 P @$Tæ +lTbk揓uyjvgQ1S!K.i'7$#CC1`gHE]| [k xlni.Kf I.|`We /i{߁d$ʓ6nB̈=;@>5404d@/9JPXGòw )ԾÍ) othihvHN*ND+qTPRMd C2(1P}IۉmJ'H&#%jg kDbvxެU $qUA}^ V0l\>DEj>T re<6Flh5 џC׮j -N3ҡx(msiża?*T5F ,XYe/0] pFpB 9{ۥތ cл 9 FA PHlj6ճalމf}ĝ,15raO9aPOՌ7* ΄'|L-һST4o>w))qDu5unA6fx]GѠ7kaqS ґKZ11R 1GhN՛M+.A:ci>66 6W)S}X!f /hU9g[2[)hJe: 1 JF$΂[qǢo|@c xAw]fMZ=0N=;[( P1_1 aЙE, o$2fX{^;|.]|&c 7=wfe`ÜQJ+ Qo@6jZ&- k Q0jEa?ScGO TR{812FGYn'Pg~ah(7_)Oc̫[gCv.Ä϶L$$h7[t(uHz9}nQ;XGG5P `&KѾn g6Jx^|Vh'*3O2Ӳb@OBQ_l*'[IYbܫZ3 ( p{**Ȭp/-B?dw3U^9+4b#u ~s c,3럋pFwn<67G\NqzXsםԚ cYK-$#v!@ |_ B6yNj.# \-Wc<$!p@̈xb0s|vQ2nL%H@fp6ܽt>hŧ@ȣBg1(᷻06B+Of*5i+`ba+}@C 0Jmjsi>[7ey~!/辘Ҋϕ\+ou-)&8|L.MT: yumqciqUDE%N<{HKI$pi$@q^U|SRm`.'׃$&Ef1Ƀ >KϨ`߲y.f"uveMJV§GSO‘: :qh+·k:9xcԋpS0 Xvxp搔a&4$ E$26aT`s %| q[;G*yyDc<(|mB-Վz1TEe'ڠ*%сM!%EI!t%_M`6W }~kTIe)1y5Tq.,GNWh%n֕_N0#]G\rd8rVp-pr>rUhp1j1[!}n;S\ަ yN1tZ K-MU,_<Z WPz,Zt/rZR1O&RS֟UdeEcO؝(#zCҲmj@lc)&?\R䘓@AG3V:˥b/kS>Nb[H<# օ} VOӎf7Wҋ9>*}]8̍76wCW\5_/33Orsg{˜"K pu褀"k w8%־7}")"_AhuNFU^,Lw[sgrOqB_Q3`t'p/?r-1pNsѾ=zyUtH{{R㗖8ZZޑwRKP] |\9V HƎIqWjt> pz,*aپOhW?hfHlU7`/n6і %B9Ѩ ȄRs鸑B&P<~GʔA!:$GHHS-ys4Ϟvբ"}xµc'c#/ÒLz[=Q S}B^GIk=ʢQg^)bH7QJJo]18s\>yAzy?X/?OR {1p:l:i' 6;5.i(J<$[w6 T>n T\^2>#N;T ].aL%N%x h/γ쐚E8̠}U#5gÝ )cf0?Xv7Ɣ9,qjo_@&MqA/C'\O@ƐvGrj]b'ҡ Rkk6O-mn4iIO9uj%a>$ xXU*F:r1~0L;{m27:9s_~ś$6" s$|qRfd9}|:?? jò:a5kI>L Z-W#"I F>OK0c-5 #Mk "/CD*ѦCti !S*@dBKAֹVPo-zQhĻl>q*⑛Qr B~ılՃ ?dzfz7@.]}a+ٔqLEcIšPV-crG#e6rt?%Ʀ3)_&_ɤtGuY043K.7v,P"6( ;\+| z"j=ȩ]`u=WF3bǖAzDŧ"mfɌnCZGy#l"Cb=d?e@2ܴ@*_J*gkgOM@SV9 Gӥ Ct E聫M1w*)I_6/?Qf==6lUМ:yڷS+4CLloq-gpx;UK=K?hLeǠR]%v4ln.1* ]2Z&AT5^'F?BO05 0<ᩖ;ugP7㗔5+|=4۷4좏蓤sfQ2#π\/zg>J&w|E Y2?WA{kL7ŷvB4/eu'R0\q~mf=yAtdE:50Yv[3u loG 4/FhW_c`i~eo2ry9&ֳ ,GHO[Mv?_=MrEꈎ.kX2p_Ė,.m#VÎL@dhKIE@ȥ6-ڤ/AT>(9 䍎uz/LۼK=p+d][ CpSͥ-;.?X.G;OvK#`9x)6zFVއm=gf2r\WQ4:5OK{,H/*#Q:Oq8f޴3Jo w>@S퇛~.d  EducAo*1kZjPWf'׾`$9 vU@T+o  FX?.MPfMK8A=ӪP&UU+$f3%'@Mxx#c~६c /іBp7M䍱qL_JqЇ ":G#~vVo*JՅמtWEMfwFV؞H@bwNڌ~!/x&1|gpoG -R=>-j+!DXsPbI>CbTfˢL/䉞GZc[YQ@ퟘsŨԼ'??UkwYT=GP4[nUDHغ)XW,u Lõ1\tU)9AQ=)9bџ<v(X˝w@H<H+DV#A*ō)ߛ BWeԇTL`V7(EyZ"og(~`ڑ'3ϙ <4F;KҌEfu^xswg>ng)2u$5MjSwрSGáZ0',^ʧh &&2L7lg-ѡi:+猧Ar@2¯F9Y{{GRC޶o9t$Ž*|?])k7y+(Ĺess[~B@3s^zO+7+Sr{~ fJʉq GڻZ}̤ڰFHV/D]Ip"kV8[0G+NqgDr^0]Q}E;0Ō%oT][P ,JW%DUn.V"Sq}+Wb̢}p&?3e"^﬜^ u%p7J_R=R5ΗkZ&P^ٽEL'֢q4,ris|McR Ddɸ)<OUMz1A5S2Y"Sya;Dd\؝̓!oFkouDhMZHU6h]aB ^ mӲb?/E,(cji;`ں.`WP wmA93-kSs5+@@H 6eCeLβԼ88 UaO@CA+ap|>p ؋]So۠ sT`0<%sow"+jK!g֣ ra B  ]+FU&y[Rqq 8"Ѡ m=*Şݺr%vg18H ~D' }q g1b+^I^M^"h7UE󇡍3]x3->Xb+R49Ԡt4|u(0|`.WύJKWhZ;\ƌ> 3XBܑM hvZ<ϮXά<+N㠒1dJ&#BM}2gc4㶱L(g T'W+Fo(8!/ lɰ7nlM[[2G|:'$\A>V8"U6JT?gq&lKc[T8B_PgLm❣T d9tPLl=R~mͯ'$/0l<L?˼m{ǷbܣD}$3sF`CO< .wRXJǙໞe׼v9!ULIZG.n/̛Zg!iBy!QMg=w\7>݅2i#6lx7R\ 9a[Æ2Rtso2TACd匽)]ޡ 6LszgF|V,C p0Iw-~d^*@]/Eq#KHF,De+] #`lٲg5pk'l*3h sN ,>P)-=@]Ե W@auj=ˎY^i#Y`n8#. ~V̾VQ`F7:[۟݁9yi7`؉ c8P1qD54i{|sPoR :UZ3O~%?GOaLY#o`r]Jh!=; eS(mKeYTccd"ɲa_ɓ9E@,k`ie>pd@UHNps5~mԏ_Uz,G#ə)Bz; =J;UWC+$ytYk_GYr:T&EҧӅ+,tTOT}tj3a E5~p{~-35SO<&05๧RQ@u}hhf$-qXgA7(#z$sZliꂳe[o^){@7|ngJ`rFJfAݍ|&\*% ) =\x)P8ahNGIVq^ٲ,㚃{c,pQj)Fuq]6#37ÚO 32Тbۅ,pxϒ iѭ~oY云rG珕D/R3>b)&(=_} xFLPbioش?, @DE[.j%FfZkew[޿Qts  lhΠ6Y(Q@0ᾬQ[_?uqj5$X=>δ~ @'|oX׌m(+3d?'/ M$ԇ?W& M')0Ց=s:4ԣ=kc"$9 9mڀѓYUY4c5`O4zE6.I@ӥ59]؟l1 V݄|ys/nOz( 91>ɮbڢN5} Ah:5kPݏC+JnkHQ wqä\6ER-rLdhOfrAM_{*`iZoޒwܧӉJk$=}11Sh /J bWq皘)#v 0D*vf~P>Ś̻dn4`1@ooδq{Bm}Vfd - W evOxS?ԾÜd#-)icq_6̲ڽ{}7 (Hޫ椖ݛ~%ze"Uo4|e;U7}ږs0FK(U h]c{' Gc2 ɢ RVH) jAE#O8 :֖P guR=_a{H>4q]},>kpQ{CK ΍PyWMoܓCqf T3)~"560 ;tx\jaT.Be@}H=],&g S5i?X΀Ȫ_[KUEቯ'egs%@ :6/jX\b1G!pba=֑/se:ԣKl:EʜGm.\xmȓBsEEʗznb=gս >H:Qx(PYɪʫM6kQ0B_TހiA4ӺRdPY߶ӊxp̲A\?-̞H1s0B:L#EFhm\3«TW@03ui&Թ\Sw 1~'ֳwF$Mݪ"%smp\VɌAuŐ\WhMM}!o>",Q1t hM7Ў_@,(-m7;ur:)^4=<ݽZgy,4 _6%_)+lŇ[Ie_9}<4^TBs6H5qMe73Y}RP?N}.Bz@Ο-ZwAU#ѯ \?cI? s+mP@E v<{-JDZ1r t7U3Wb $efڳiz~wGw"kM5l/u®m,owdem7 8YdfC凃 c )kS+W GX3toH~#T VԀ*-s6PX2>ƴd3J8fmPe" \h>!tv:t piFE/ShDW0۪S( n鋑 ʋcXA($Q@(! 2fXtܧZ|:[f݂$dLn6*W3]\Ѹ6c0=zsovw!#fʭ`f'ꏝ L:B q}SRwYoi/[ @3bNF)FO qBbdoAݱB'X;4GJ &mŤ)0-L`p :ml[(=߂Ă-uzӡtd 2jER[b!/߆Og Qu.2PUG_^~4dLנھt4*-3Eb+SRrF(XX2Wl.[&Ot- 9 CJ d=6 9*IbCrEW+7X f#_ vTґH]ФfG˖Ew\ION6AB,FV}OQc PTQjNr֤*q13Djײ) ȡF]u\S53C&my+W8r WEŸ%ʕח "?xSc{,JmtGf!ʖ%4TTe13MJ 3_sB\<y=Mt i47$(]Mv寱,_J-pKSjpG[bzL)@9lhggM>&QB"̎o641Njuzy3B$VukmfuЏzt#"Fj!/|3Z8dv-ʄxگzW=m(c' xxwI0.uj3:y[ɋEW}qcھxj1UK14tbβFVC,2kc+ERN-#4N)/ϮLZ(glwRQ}@FR-J~eI gQ`a=Ont1V-'E'PPW6 kTxqw#?HF!ָ>f0-־}M<~}AoILM&%*nB_$ՇI: :{ʎ7(vfP_: Zߌ>,r 躁jCinʡVA@xI=BU3!̔Bhop]c]w-}I8 S9a/ Gų!ҊP):+qdҦz:|-Scwbq3j(Aξ{8b(r2^Ļ7_;cܭ/d[~TսټQ@Çc?^)gIIu[> ago=lE?#{a*voc? I _ ߐƗϨ2N2H\dwj oyxq{Puvi+] dyoai>KJLv9huZ]%uQr5]an۫IC*54;<ù4v$G*W[h3{ qQ8wfɛ:挩%v\Ϫt3+GMu'1$.2 ā/85ZOOcqބ7uv{GpeD+2z34 MV] 5[|^&Z[FL~]'~㷴/2 ;\{7 7Umrec\P1~<<vҷwf-˯hS\`߻.&I硸;N\ N5YwF儵Ȅ! ov5ӡSF*+vtOC#d8R ԲjZ^g[(=T,/㘺P*1nF>Vl۫&jyML,WjYCX`W6EմC^{A~9JQ._5Z\pBI \-6%0訮N!+`e3\+=Jz 4s=וgD%IӭA $gA[v{I5ڬw{{:^E[(NL[.m^F:^!uQ.A~gGLEEM.?+74},#Mf.lx5=u< yʥ P7ݘYA,6(9ñlR5{!ሓR R[WѶݗiZ<-e> BUj7a te XNݩSxL3$f ܰ{gܪNDyL NIRڈ}ZZe@@7M%lU9.I$UK=r o8 =砪) I0ηDL\JERm%TNfs)r宀ʵC5|Fw%\$QP~)OjySP~/j$e뭍4 cuu%fz&1M=[(\9 :Qd( ?Eʩ3<1`U_k/ɴFR1ME5iz^A4D s AHbGe_Rg! *;&%kSY/xWPGY !'fe0> 4`h, saWq ϳP`jƜ]Dpt(@aboaK1+HUx7;"8M^mHbEHbpl7~OZQ9Tt8!|eҿB: XG&Kc̫\j]wL!z X NJO k@SZֺgs=qY乹>7A|hhT ;Ǭ.{{n_86äpz(b qg@O1j/b" T,vpvhh~%jSAs"gt3.@CDsstN*.U:JA zPvO;6d7$_ 7*W]YkZAYY< L!xN2E؏]"Ӻ]P љƽkeY2d )5uX0c#5W. _myjTh*IŎgh] H&3-6pQMi˜\z- jFgDSoO8.m8SB[NK{YIyǡ3lJqD&͛AO,u)P4Zc]9T'²hYy;ŦnvhqQ03ixLŚN f@|4Ivt-`7QF9[ (kZ6ۡNl{~'4<)eN$/pa{12{Эh?Kt!*|aԲ|ȭ(O+upk2 dH rqOt$%ތbKT4hM1&+6|)͎-n =^ve]]XH \ W{^卒 հ@:V1ᣤ+ .źoԝVŌ8X+Y6#:?G%?İ͈e ݟ׾ -7˻Q !  <$lPbCe/嗘U#QhϨɷ̓|' ~=(c>^q&S_,^o'".5es/P00_LMg֫R6D *@#[TΥFHBEGD$@N(I)"h$+C' Y;=Ul6E(,K~2GBbvn59ꇽ8f xF~R'3 $?#CV}CTϹIj[=0R_H6z0BaaC+)%"|Vܗaٽ%6J ?j$Uq/#zDw,V(|];x?hǍOi‚4+ҰG%]eٸ< 8.01yQ,$Wl 2֕G.$Y= Z$K s qOF,Z`o(pW(!|^2BP &xm( 3O9gJ2im.YW W-62{+;ǀd*: pJDѰ&iTC%Ixuh)΢9tPcIM _(p+ۤZZ3*BZaȍc׵$&-}BI|$'/܆~ri2>n~VpwĪ*TMRd)3Ly%RFm%\~Ű[Ǧ-Y{")ܠJ4-iLWw~^Ml2(\ɘj'1g3ᑴ^ؓrPKxzx4/6QIyh ,s"#Odhw9Mc(6N// ''3KnQ; xfrJC')2ɖ"Wa2!ǒmk̵`vM 6@O/?qD,rPt.`+ QwfWpD-/8%rRC՝~^uz]8ai!uLU1CזhjM1n:O6[?KsH^qC՝fG) '`,Q0m"d_`4оtά1LtO)bzbqh۬h4یѱҩ\O`Sotv U zRVns")˛0 ,_jI:лT.DOaz[p%}b#z<3u>-kQ|bÃa}tK=k l*>z[sLϦI᪥l%3U$e~x4ƅH8v#bXSmGt|/F\8\o--C%SZfYX ef#ǹ269:dn_qΒ.wΑʽ8w1ڪaewD)\`GKhk-oΗ{kWK% Wc3шVq5a9 ˠsEeُjUDH84{BiNR赹1st.+I}r,$H5ƺ #%:⽂kzW Sxbz,;ݾj|a>zq[sUB)iFԄŻjRB0ie `|!˔/T~O{K2Rgŗ f.c<{C'T"Rςӆym{,+D_M8#~c:"-Z6!GDݚ{H/A-WhzѤb媌Y8# MH2uoY"< >[T;#"J;gt8s/h_/=[m%ST𞊐Q8C-i)K\u`%}jQWB]IW W~S+6u2wK[͢ >Ti#IK3>M /hӘV ɢ)W$eSj )Kt yTw4nS`pyX|OZ֥Q +a4A-^z y$x ;;KZ[Q8C%YTIh#RvƨOY$T%g`gxxhYS{Dc7GGnޑu[1F< SjBOORzLu> =-#[?esfxf|l[νa`]edIS ѵyC們P(ÜKv֑=僜iŒ4d7*1| ;wT8I`4w{}Dٸy* +OL'[djGQsTUϥutVJS;bwUi+x@=yw_xܠjzs=X?XD2iBS\I_2uei煸[iN^ss#e剆(x{_&O}B.aq <UC}ΫR۔d^{?^\ғ2P~Yb+ꆝx^f$׾V}WŎkCm(GzVNNF@xU)nQ[{b{YZOfP(2eB7[0Bl$j#u?UI7kHsK龛Ds 7lR4$LX}ۛan~O!tFc8+E;|| 'ݭa x 4TSR 5YE ĕL}d5mTtШTm5V@=_@c%$t@E`P%!R=k-Z@Z]PjAa;Biκo "^te-TZD^e.ìkO XQ"].-Jv)jN ]׬TzaXx$f#l1͠%]\WKnoy/~X7Ph/;q! -ٗ,MJYg (K:e@4·KURvFD4(Q7"}rXoPu\(S_ĺ:^d($W~J yzE=;A 1zF3Iq;cH)(Adc̔a{>Lo뿉6dgȟjD0JkmkpwU -_'X7&1wDHr0(ɖ1ͽ3qǔdDأs#w2s{3W-xS I"fDIIl$nS] 'ť6=e̬3RXL$ؐ3ˆ\UP4ߛ"XT=ʷp1_gK^Ѭcpsu6s$lV ar$~x,n,H \ j_FLkǛYUomP4x0KYW} Sb_9t o2ܲ -x'+R97{N-OˤDc%HKigy43FQi6b4a~9jW@G XxM މ[bl!9: ǰ7]Mvj.,*2ͣ)|X"@hTfEr9Umhְ3x"H3l<2<#' ({ g8A S2}Ք`}s(]^@VG <@g1>_+Xno'K%jKC{]`{Ɨ\5_pӇ:1{ƿ 5EIKs/t"*"e)9ĦL\+eH$n)gz'V6fwAeUCzw䌔,bor2ىHR~fWfҏκTܡ'S:&D3jk|F!N[T,T%w TԂ^ZH;G4H(3K[yn,#BUH,AΒ "OuElk$P6Nw*@fCc`-Gܫū[_ySY5 ,Y63Q#+neөz|ԛ O6T#aJg#w#8nޱN?-?54! vׄbB2{uE\nc#6a'eL&ݗ>m!{ {0SBz2R%X2fq=Sb;Ԑnfcp,cӸCQ{hMY]% (%{S WFo~9`GV@3.L"k, +5ymװaD%b_偪tMbj[STuن9->_^yts8d7m=#&hS@-sȻ7ߚLUqY䯆Y2ypԔFe99^,-~V' IP<~ <俿n<~uoB!G`#ԱљҸആA~1,VpkPU3Ύ!W@p~ȸCXWnPÈ3E8P~ twKjkǷHB~o*ѧȶ N6Su_b #йG2%IBmS?JΌߞ9*6}I " #|OYM NU 4z{IN2 h;ڤ$E?ng-o՞ WFY PЛka/;} QǴ$/ZTmPɣT9Gt=Y7c6]\ZUb8)`PZM{24Sݎtޕ`K|z<&bRF_{ݏ1ӻM.4kT?=:ȢϲcQ]Qh* 2TCߕs /Wj ²#Z!j6"ܓޚٗSP]IO(Ow| c 6{O/L 3%]pςk'\51;XA87H?kBg\?3fN$`:W9.8XY+U FIJ|AHx6#wUq) UX$ݓo'lϺ.b7y^, 6]8}sRdsYOTOA׏yY"X6I|P\k'~Py ed/J0ֿdf: ۔P_6> 2#`$(WC-l"t@q(04pn/=v#|@iszz"t~e9b%/Áin Q(G6qZ*0D]ꀊĭADГꌔUH8asF*XABILّ2 @ex<|oHvK)ْ>5O2Ymխ ]^h3QIIᅇnjPr[(]&/;SvQ7e&˾{F0sXł\=dVh:XO٤ֿ`]+ғ"y=nQEvA]U`5Qg*|7G]g+PbIwӼޡ쿓G%kqwȘ׎dHcQi!KkM_n?4AqC'D烒 \8Ү igΛH4 p5XZMp |׻~WR%OK"br!xQJU5 }2~ T,Vz;-@23#[ă͒ў4^5Uŝ's!)0BnC|p$q"6ᅫ"%;u-yIb)(i,[Z&E@m,V&lozCak/CZin T@NtgZjTF1.֔7ze3J>l:wxLl|h€{TVPgELErɅEs+8ƊYPP; 7ȉy]i9d .Py5O^ @;d2I)esړ~XB)(eyhʬ#p8m47~FlFڪ't{LYNn"8g9!r0@#L]3MVdjXVIF G5S 8m֏=@edƝauM QfdrSrFhmfMA00+y@#$Cd„ _3ֺR[Q֝>Kt"L+BŽM-ނ>`ķS2e4w&YE@ FA#C9BL :łfRIHx!zsh8 &lKbe(sD |R{;{ (c`Zbvշ78uq>[. mMeCcy[WH|n$`l8oP4`rTn,-C8NBE\]lɤM7&:9y"qР8hICj| y:>dʻmXk} KA!/+ zu.`ZX 0=E#hC'wO_×g!-r/2VtW)Բ9ۆcdٳ&*K@qhHat%Ś/h~w5ͤU'<۫Fи.QlH NU /56;T@$o~aSR l0ԎQ #Ec;L}zĢ$ĞW) + NȱE:5s.7%Xkeu'S*& vW|T YzKҬ 52i[h[`-_%}߱,TnWοȋעX3Vz.k^)g[sBb`%~TTa1}:.ir ˒}Y@C ! ~@wIJډtaSm I5PI3Ɣ;2\ e^mUh(=ryq["0nжjXjAM:,d؈:x=ő62ŕ)JyaлAֱQ>V=p&[B5<7 QL;sT;>6X׌FDIɮB]d#dи䖔k6[¦+W_6ai¡[&ٲopIOC؛8bJ$0OYӕ@ߪY M!. 4@Q0xfD?Џnr#f&e AƐZ2mRo$Uآw +3҂ӏwKKVSp .TD⇁ydak _殨$sz>g]=CR=aQ &†s+&IJ6.e;E',9P;/F*EoQ*sFQO!' ~r;PřmGe$PH8~J~RRv0ȼI,tJ8 +WqzJJK 58KR6f6 N6dT%[♫fH+E%PPKIę %3~m鸬Þ3ls}-D۳܄ EVV_Mc_P#12OɹCꚡdɌ=vہ?Ȋ5H @ڏcH=uBǂ޶vד$ %I;ÄP:HMe~e:vKJ}m87~n|b]קoh|0р *g^VOBǭ0g"Q ˓ }tE!Bcءm(3`'g0."Z)jG:@)n= jgZ/. &hn%f@s"[F[>ӱV#Ou91y*Y LN=M7"{!%@7cL į̓>7Gw!"zٝ$ ]?S~h|Tf1b?izd:j_Cik5NXu̟.j-)q<,&˛fs\ :Tmm<0،ONvfPU9{}K}.>]?pߺAMܹߟ,;,)1j)c)s:1|LhP&gEGfQS H?~%7\Z8&0Ll#V>bnifEք CEO ljtUđ&.lmG@XjaXS gsfphe=~;e) x%;"[7\Kw6zv  w4gkx*puE4&){rpV~`kq9a %-6uXuH'j_{Ay<k[Z(B;o 7 0a»8>/t^Q2eo]@G,̞|khBľhn6 eX kYiB:B2;=@v]i͔fJj2- h_bJ܉ߐ/HEwUUB{w+ڦ*1g#9b #TwҸ-C=k5!}ɃT}e21f&YF`Zk|em^;mڋ?qVDHun&6߉xM#@R+P:gvK^@4¯q!ْup.Jme ]3 _e/~ Z\WI?M7X+t IUQ>PڀPVbv5#Ċ\CuG_ 8k[ZrL Ґ>lżѝ%YZ.rq$\r3olS%_,CM+ VT  0M[q_}LjfQMב6$zsL/tbAi/g 3=Jf%k$ ș/f/* <6o'wl<G6C%v<[U[O!ےԵ- ^[^ob4\3͆ۀ vsL.z*Yt2xBJ}v<g0Zԙ-j/S38 u\gtO !SNv& 2UO:{`A$dg6uEB؎j# oJXAx"FP4|>gDAAT69~Mr/ZZjE PP4$/zi,Ɍ%:ƌ$QBi wflXt'n{U7M8ne.7Fmz/qd ᨃL>x)l dT2=z vQyJbuῪβM~Gg Lq֩j]xoP5 Qpat3eߗ(|:[r: w&P̑eI1V;14^D)ЀC1Bs뷐Q`<i\+Gdw\ff)>v"4_%0!dRrȮ=xx`%Me2yc]w5Kw>6w5-݅E6. ^pٚjBXؑ-\*ǻPj)0] ?zː'_^ <^"iໆg.* *|;}/'6*W9 {ۚfjaNK:dC)A.;lk]x}|ad$^Y ؓ gb\Cb⽯ kO.kب(ٜ]ׅahJjbgmbbug*ÔeYhs{ 0j0NsE @h3,>iQϽ0og3PL҂ .&D4%]_jrah I3P Ψ ׭e?a0<^ǖU_Q))QD^Z (x&;Sagp?":4MN2' \%;,֕nLL?,^ny+r!# l{¥+X%Y6ZJ0o dbsPDlXSwG&+ծo9]$ vq-GZj $qTi)t$$ {g{guOb.ؖ`}zt{m+2oM٤d=j;јGvqkڨw rKyʳfBZ8=VVD,oez={tqrH]kĒ02E𐋵6\[̛s'.d%PXdm5յsRxrAĪy%vCTdNOߟw-𕖲ɦ`F .( O;Tp^hmI:y#N2Ť"͘ÿ%`13qA,qwMk8$HIO4P Q_U/@!]~( !twZv@Ξ:k`j) $ϹA\7ˮ,|YZWTR34xN'5X{-}<7 t1"&T"2͎RSV CZ^R:1z@8@n]y@]|֑Tr}V'`|M C=[$TbY1uyrĆOCQoR<Q/ы`zI^+4r"+WqzogX6/;_*f!ӈ0T>Oety=>V4Ƴ]{lIZHW5[$$#=fn~޽`Ql)rPbKP[q;RhǞ@lyMðX>CpQ]_ g]9kw(<@.Ar ^=pyL>66)` @uU'Ӟݵ dp. ݊?>`6`߃ic%9t/ &{l/Owx%40 {WRYlaTd'~l?ön#i<8Ǹ#zJxDol5Qo rQ\!ۦ-:jYljbp89ZТM۽c6DOy*ca_!K+.Uy+GهR[| 3';%(w8c/2dq{ԊrIVє.Bj0&3i(yҼ 5quxq‡rKO?)=Vvai) %r)ZbWrR܏Wŀ)wMcWTzo밂ƶȐ KQܝ;b(wN%TWw .@K5JKK! #矐 -*4B9#R8a,S ʥcvb+؆!y h5;r`98г#0׷ы.UMU}RSti_?64v&E4ZzVvE#XYY6H %͵ߖ+yn$Vxšr^hU(bߔH]v mcj}e2!VGF}**UԢbt[s&A=6B6;Fd g)UG>CAX1 a9pY;bج1_o}}ɠ-{/T9K(˖k?~̙aS[$[1i]#O#`נZ*2"Hh:V ubR*~|`/9V C34Oz"^!Ux%82's$d1=bEZ_aZ:TuZ@Xlh$CL-C u0/v8 EݬC̟z5RHhT]C_X%KI!w4nzo%ØjNuqu,s@,3,2AR{efwCT|^E2{”9es95-hנ`@羾<#cX!Q hYCu^^OTy!uQ^0,l4wZbZ$|?-vۿAG$R0&b1RD&R\dzh<BWKP3GG>EcxdEś eMѻz>qݦʚ.#+ZtVB3E( bBDMFd?SYU c'(Xue=17 ['wr#tZFnVwOڟ0۪GW݆Cu~"оy }Χz_+q8yR BԥLfKJ&(_r) uhrJ T%:!=Oea$TL ۢz7ȂnGr%ҿ\H**Ebo)2D\c>nŦeJѾ‹@(o|)*Ȣ]M7nY{Df"W*ҨY4P]8?ojTRtr3Ք}`oFύd*0'T~]YA"KDPȋ;86;$Ғg$6- .f_BVITӊp/ ᚘ< $}N9>g)ӖW4W1~_w|TzWjd|+_E Gy ^b;ˈ~VtcPSEAo%d̦w<2NEq$2I`:D xBdy$4B ך"Qx=\g-㱅l33ôE0O8ZD0;zF&TF'6o|Tc *$Tٵ!#x"^ش 1JEyJ7KvAҎ1Y#:CoÏS8Sny#c Yt3iEPm5YWlNHJShcX9?.htM`UŘ̽9XeHLzWo9Ы&]%*) NH˔h7'(ps`g 3 >VH*Q"b_qfϬP1v p{oZ~Wj[9>bWEƒdp;7`mrZ "DA13"V7.u=BlЈƚWfݼɠl[ è &8ҜU0D镜1FU- clm _cqԦCd [ӃoYp`\k&e Җ$[5\ zs SJ^9Dl i W~8(s(:KZ5o:FnE*;6oYV HEj Px:`<:Dlx0g3U4y2s#"UnnfXAp;k #F%":`W@XV(/joR܍,҉zn!)OәeQ=|.sm7|.ʵv Ϡ3Wh᷈?DCq/͛',y rH%$, 'HhnR"Y'2U6dP䷟&H<;&q|ޑZ'^RSo9Tt8[-`ۓD  bDL2x,&4瘑$Nfn &)HpG#õO.%;tf)n],W5J7)9R+jZ)A H3M_׀SKUƞ/qzw!ʀl S>g]XQ' ϭ~]:Af2+Hm2Y @)M ůzc2+fg4PqlJUX."pha Wizx1U;|>$BGb lC&@ H@SG}L,[0铉!ڹfN;44V0V⭝FV焲̆&}c0F"Pп[r4^MFR^e'K5\Gc5Սip[ùq܃Xשa8NUz\W?Ҍkn(b PCɘs#Œ Z>ig UTΈ Z7k+0+^c./VwxiM[?#V, J O 帬o+9E7:T UDK ̌6XN)23?(z@=Rn)"SiF̃,MiD/6i2:ьEH]՛l=ˤO!?줜j4,32\"4 'lzq$sHB3d+o#D@^\j=oT#C)/HK.+;yv|*cJyt 5NEΓE&/7EN6i(Hjk)bGۋR1JW Ԙ/jZӠc9TI^pd6 蘲 tݦAvK0T =c#>X)bG,^Nn^2З̆ $ճ;H(O~ɮHW-p/7orupzϧvj"vc(vt;8\vԤ (n1;ƻ;,ZQjlKeZٟ?53:0Lt֌TKoJ7-|$؍*&ШcNG8P6,|r/-/bc]RsA܋=NqN1x BECYA箥axF<:_ ,Qϝ)E<Ŏgҕ.Z5j낗uzIrmHrgjNfjy,5&.lZ䪴*!+MiWx2A ew C>Ucj@Ɗ?^wiA.\WvWW N?YSnރlIӘyz¤ìij=Ǡ;9C,̳C\!٧r29jeTw__m/Nv%z ?zmߒTR"{ڋjR|twP| 9dE_Ǔ@FD-\[ ֍܄!ihG05Bo f]V[ lmqʥD-NT˭ϯB6-[ir' |-D#5NVom!l^r=s mdqv/#qAz.Y/FD<;_bePԚa^bb*{l{GlUNҕ`jR4 Ɯ =_*QQbDZJzGjgK~*joNV3a4~U 0"hGpm X^nXIHB+~caZXhdiZl/ ӘZH:?+:VI>+3,if<cR{!\ۀͨ,pȢ"|@m9:dk^XQP0b!'XqZYo9^iimpg(qQgX=@)dEn7~`N!77DG8y6/!de]od` "eOv뒢▹bR`HNpN1?SRyhz>B=ߣ@#w2.8#oܥT%8B/!l=?2A  0ԥ.84*Mߖ'3r"<++KK44h&Ēbq2y8qDyVDH#h-|z5-~a)c#)T +aoNx$p*. ڑcΡ p  Q,-NB(H:ѡ @ (ř?BpbpF(?:ŒK{ 5 /̳ *۫Ѩnr}m Q {hr=iϊUaYÜTS¸^%hܺ5]`UwvQ%BJ?2pt;Z]e~{02M*!M#eZCzJmK%-P5w)b}W#Q4"z"L.nEB+K(֡0de$'lHl/9J28u ܜ#+5aJQ=gG{OK@_CBc) XZ?{}ҷ1i9Wڇ{xch %XGWV^/Ob [._DTx]=0a_~o8ʸ袯%/m"%jc'/z VUt.&}åj}|XgZS5nþR5ru pJ#a8z*\3{iOiBނy-! L ;'VesX⒱'Ua-Ј3=z;7LCas6A7>"R—IQc-{gs5HEɿlxuٖcQM\.\:s`Y;&r& \^@}Tq?]g_s"{g׶ڕ8;6 +̳Hp17| 1Ο zbl/dz44Zk5ȷ0hSx7#YRi@0e(+ޜ'#ml࿰ϹG?6)C,3|E.\{=\횺Dt-#mPzi9 Q?qw^wHX2bZgz\; puzgY_+w\bmqNȧq mW$RV+BQ_% x"Ij#{: ΅ꔶgRpX"eg$8J7ZOǫu׻'&v\ic^ Fኢ ! [\Q;!*kHŵpvݶl8dclڻu84&y:rI9N936aDC,#h =u c( =n!s;8T%AXY]5GSN@ix(G#>w;&C:U.":af;t*WoPN E*mR\Qk8y&n%mIHؙFץ}QbvԈ@DñȪ|`RT Z [ލ{{ S/;4-Ri|BUDmKgTFG˃P:g' uo>-9N.0H8O^vx2BBTײ Y= ^C2&}?o0r-`.Z?G le0,Q$G )^ kcÿEUSoDf\s~.MDuus1VG~{5gܗw0G`i{($;[Q'wAy~'-Nb/q<ك!DeΦ2?2p>;a=|2& n֮oBRU 9JRפ<3g\zoҋK]sE%c(t0Bif.HlK- nZslT' ު@p5|^O0&y3: W.Y@ĶD,.)hS6]o9S`@$cN pFʕ-J-8up Dk9b i'&?9̲5]?уP@oo$ D+`&eƎ0ڽBLhyMPAܽ(OH}еAHrD"g@AiYÀ$溗JP|V†gJw`#g3;`'Ut|8=(ST('A\Ԩ E|m5hadJ.( 9g ٩>f1 tUB (..f gF;EPmTW~}/PDSA%STgTN7Qb 2W)[]TCԌBf#n=H;PÕb^Dqz ^(֊攩-ʭe"e>ڜAum-AgC l &޻}=]´) H# h .ہGP3~ 6.žR\_ r)= a{t @aqPpQiD>Zx|PbAвNՂO$«񑇳=qN纺S'JƜ{퀄Ԓ+}Na{cOL3 )OHyp̭:1렿,ޟ O)pzcW#^:ogI@ZTݯa3cxj#ikSsy.lt9Ó5L|v!3/Nct0/}T:f>n7Q7ZԼ:)*xo[z %:;18>RLi[I BGo[nәAD"C\tCfF?aE-SGKKw=3RV WoRNKWAf2u%uZ6 i:@/=ނG:)dM%N(HlI1:]Y&|u]tCIuoXCE'= k:x{ A`9}TF/e垮TlQF;5m]X0űv~zPBi$[Mg 3#e)˲d3̛M!Ppm`OPTU*fxԣx?Dfsxτ`(V䛞z4*M]=q@*P.6ВV9t) _)uQ LጯpJ74cVg0gpOhoD%gX q.=t [pc%} [D[+cAJvS5eY3{^K@7~XƸ;5hWa W.5XE!{M~i1P5JMs :8k8RE_($a u|$4.Xmo@LDdxp_- M?GPP#%:?"e :,z81Xǡ.F*Xna_ѡt%fC8Z1H4Jf 1?r%;6_hۺrt! }"ÐChhKNT7oC!H0uލ&%d)UNY 8S-T%'^ +J eGxA[}Ύ4\:䈷bM`ɸWOZgEhSY}n.Q'"p-?T-dY۟ܽ8KU' \$oHKydxSsVC=ƽMB*T)jӢ{,Q "60GE*؟ j1g8i:(l^6E?s=tpM,u4|t0䫊Z* ɡ[X+IK+ɟbwx %ԜʯWDo}08dL)[)m/*5`$kH Ag( '+F`6+뛞SaS"ؽKL{Wzչ#PR$y,U²-iƆ3?UI[7Wԋu4~D×${{IhnR“2E@=/R}{qf(L2R9ty%"wF\&P\[kT w D@t2}2a O(}yСK?'l%ODk ztZRp FJV:%63~qŐQd;IWqouph2EaG & #e5'Sbva'dr75f'oy[ >wE!:`<+Iol=Q8;l].pF8!]+V?,0^b]1V@SO>^ ^tؖ^A>}'AO6wGTE7(-$ql#gHg'RKo$"1,ۨiwc*`9ۂ:tf`znۏ ȭ $v [qj |i5o2*kt[ 2kFGb^deх_ReT$reᮆsh-vM$CpVֲ7Tanʍ#Ǭgar{@/B.msF$8|1XUvUbPݭ\j[b'2A(rŖxPE]7Jyx(q˵ Jb[ّZXYD{<%&SLZ/}IFdۋG>}I䪢p?2,!:¬tW)eLʳƆmGOIL0q'dV+!$)2'*Lm,*"@NWiډkZTT-anRSYLv'.[Og-y436_:zm5R;ѿ,e /@V.  v9ks9?ʈ69U/1<*Ub$39I/\mRX J,lϾB%JC ~[QY@rNP昜.KBk LhϞðKܯ)WA嘎OIQ8Y6ђз,w5)ښmÜ8BcV^_n3eΗ_1DjHoq)2w8@Â>:^eIT-b<:G^}OaYq 6lAhUzU~'Er ~'δk!#z2Bs#ƈ`W#q_)zpBVfACY AWFp M&YZnvm@aPѻ,T-Y|Iz5" 7=Hrcg@Vr/'+;"ñeY31ƊMPӊVc *0,E;|fb8F_ tIʶn\u]i;a֋Ֆd2 @Ԣ(Nڧ z/-WB! d;7$݆N&{/ͫBlG %J$G5)":QTjG1eaR[Vo6@2hiH)@sý¹ pSBQđp4nno3ӦGC#=xFHao/?:[Oa]4(7zs)>GrB܎{)L6@lNnVǛbۓzw/a%nIB;29() [?翫1Uf=J鯏2ԓ.FJNOY(*HmpNҟcSGrJ!ׄ A x!0<(X9@dy=] vnz̃*!@ٝ&%-N[ :~{/qi%ڬPF`繂0%ٯ@im5۶kX;uNf?E"mcb:!U?S{Äب_!Gi#yN6}\s7\O:c,N#YX:SتH(ۇ^ 2R̼ V#[ёVJ.I#WY ėptvgL4`r9=ٽI)o(ygR/[2"Ӟ.}gnDZHJn$򞍞s;umu&_U-QimSBAV-/&;,Tat]ub.Z>H^+{KO%R^X{0*>_gE//_'?P&d-R%y{DdZQ}~K\yHEt(Gx'd>lE5c&Dk * kX\wBaUm\'\af phyUޢ\ZH6VʹOaO-a_t=RBq4IkAu6NrJHˋe/hCx@l^2D>"6nXo<©]ev?"tOȖj6vX!y"a ؽ~,ZoNmȸl_.pP6WwiS.={_W91= 6g}YI`I ] ON)т27v؇EmF9S4 (.UUjq6\Q՗3I [Vz@%;4H# z;EJnp׍74,Zf= Xx.~\l`͉X5^Dęm[~J~oܮ6g;ZO餿&K: S.|2 l1}gOQ|RbM 7SZ٤nÚWPZD>[! akފH{fAmգ?dX_YJ!\!+:6+"(}U/m3)P?$6 b.Һh6'M- S;WM]K˘\.? Z=}`6j}"8٘Rˀ*8Dw+V;Mn`4KtշsY hd, @(V m[093D[3JHS'Ѿ0#uGtliZTo  z3g3f`VEOV3iJ]{An+Ť@.ȧ0C(sT\%oX6 ] ʔVqgiu҂KRobᤝ>w \Q3g2h"r+AVu/9K+Ŗ"*Lhqkb5^BdM30ג3Cn<=_ MZ>,S^V5QGh&A{1hfSԷS )`Y2W R60?%y'9bGJ7PW$#O(UHJ-M$OngG_Pf,O>˞ pdUXV!B}z4aĒ|2 kS/臡o~b@Cu0Sp!/1iAfμ\n$U|}N s Ř2qwGp<csq:o9&eppWyeZ7=2)1+yZ:W6Y}TUDU8hG S#w7l jfs^5xkr'W~y u*+o!=}5 V{b[TלW2gJȔTg2Т2&bb{X֮5Fv[0noNYN+߹2S>jd9#,Ga=r rg>&|J;7n;4m r='ϳDU$ =-A`k< >U]%y=ف |')b42|T+`]{2Q";YI3: TI} u4p)߯(.T,!-*2Qt(@/m3b}6, Rx %{,9Ǘ)=k GbHVrLI|fDljSiV!Xz)[e`̅ !W;+ Z**&pPQ4J'wnȾY4bqġmq{88`kiJЪؗ=0VB] ՖhA,6 4'7BnZ6Uږ]LnzHoAa.SY { m7C^$Pl\\̿ly/ ::q 3#'T]М!#@ȑ,'JR%_I3zfݻpb{V*l 8VMj# bv1>ݚxuVH BänJ z% pe ؅koǪlhhn Pl]},!a~7o}B*jwk_fZt7A 3{cI7J˨ }yKiR"K-kv-zxhNՐ ޫ+ Ԭa^5'sw~eUl=~rH^1QTRQάWPQjMsxPMq8C`8 GM\J.'|?aݍ<~K~0C88'<ץC.;NZ!\K9Jπ.^e¤Cuy~ܻO zû8s1T?9Qs~&ڿTN$AyXtiw(O:qxl9pmobSf\(P l7ky:L!!ɏt&r\qrac-/ы^:^L a@`ř? !W@kc;$~lzDWrļ$*Ek7v-QcA%5={ۇ#+- V[U_0^BY|شȽgfm @Яhu||䏼0b03I~yҠ=/#;&37}XQ ֺYnӷ:(ӷwmqs%Aa8uy7k8K|023498|Gu36=VOJqЀprxhk]=~.rkCqY7mbQ{Y^ˡ K8&B'8 4?&Hz^wKGMt8z~hfVUG 5_u9JN:(h ,U:Q |P R{TK$Ȝ[n\r·!w,/:]^L)Tr3;d뤝Уf0!hMpELz f+߼4*GQ tka~4OmHbV6poRT2ZҎ. c']^y6t%SY D^ecLM%v,}ɛ% ZJTֆՑ *DGȶ{efq%p)N_Ħ]t{1A%C|>O*l *{͌G.! }I#UvAj2uaQ ƮKc)ԼMJ&w{z*MjvA< P[ w9UoCZ֛[8{ uesqǵTƅ>+1Zv!u|[-71 Qfe+fxA-|1魾6 W֍jT?QCV+u-m158ih-(k(ރ8>ezyl5Z id72UL D̥S0^MݓUr(Z$w&h#oV7Æd@T'Cx8[8y?հŸ0-NA;s>/'L{J1$HB<:E# 44ZKx$a,6VZB1q#1k_O4{>ncD d(U;':GCXAL AS;ӫ6&Kd,T?:iVh0%qh؋r)•|32\ 32^μ80sVպh ~,P ȩ/O_FݻnT]/ ;X M2~x~/G<8N-ŗ%/{I ˹PQg=(=Y E!a2joPHaܐSJfV45(:?m> %>IdSgάn(Z-@=04rB|s5bT/_ʰ($+/?кQ%"| tXzTʯ>]IdItŘSQ4ʬAď$lH;u. flEhӉn#zw}}?aE*ØS}ru)Uԣ|#tj2->+0rƀv&pOFTke)Df$S&GHR{a@K~H{rܣl One{^sod$Mk8|P˿Rxw&TeGW:.N3+RLh p]Br~DAs:eaAB`U5E/ ڤ&gΪ'+ T4R JY {pD: 8IZm5-6$CTc<q~囦ڪ,BƖLUf\՝g:e5hXW >K=6ƈg0"Q,{VoM>?Wjc'{j@ء?oN(#~{oPҟLrq\IQmSWә9=sk1t7rp 7*>!2[0uUyhiS5|Zx5j%(}4K ]t̞:JRhgNf.sjW^c(VIBK[0*P49ΝiHEj;`W/c yd TQh1#;ikI+Emȕь2(?=?OM8=@bQLטKӘ=keXn y9xKP|vLBDzMe-򸑔x5泔,q7za?AeR[ENw()xTuXoREq`Nˡ=(R9qI@PeaY`!G9g_oUGz#毜҈G bL{G]k3Tߺ :-#yẜT* : 4SՎJ KF|O,W.p>dR䂙.DO^ Jݍp'0mD8,]2)&({235C3Ѱ>䉤k b06#ȭҺe2*s- 4&!$Sd#ڏa^ -i:v7:uڮ=˛fpZq}Hų?/>V&mfWy_>76dtHR96ɧgj9~2ӢvU8-*ݲXb[&Il MI@ p1dO:W+T$!X K!'O=IumOǨ3_f#is>#;*OèSPjSEdЋw ĜdգJ2l* %3N 54_nt jןwc%m^K?@&[F;xع=wVH,Yo 5DYQI7jϓ+CH Xgzөi2Mh ȄpN8O{D5XgQ } yURb/H(0wZIZf w-avBϦs֒)d iy^K nu΁g90VU5jkF n%t_G^0^4#v\n|Vܱ'w8hvL}oȇ}F2k, 6cYZ~ў= ԇ) ~HBjBc4F/ʦ*[N.vYkpI)Q]i!ki7A)+ 565gG-dNجv!±?CsDjDPJaBz~塇%TȖ~MmWQ[NB_-XQio ~weIv}mקG ]t8A j/r¡Jо[J)}(h:c*?Q~qSݐo SyVt(eI+.+ PԼH '?%GҤ,gw9)w/P`x[+B6lZj,yƔg4#^NNq?}>ck{Uݜ!kz*&?\=18w XE e=s`OT,Ȍ&b@-|M֫QԌaߘM \r̓ DO'pvdb/&)*i#:DY#muެdvAAY];"s9 ZK u0 : Wcj+ OChN5;Ѹu4د _AT!la+kF :]%e|/] kO(>4p@Gv[ aEpδ֣E|.&ũ.RK(ʷj23 ÜUNY,t8E ~xë}A*bY.qo,B86Qmiiqڥ*ؽM)WŒLO#W_39j&| _JdO1JV ;QI|Q#NxjbPUq# '8|rg0X;8>y_*'b2R'ŖA+|l"¹#AȊ'm!է&/$S24kaBao^ 99Жl-CԼaY~ ͻt>wmh,]CP=H#|܃=Wyd@%(jϰpc݌2*6DP̺0C)@yuHjVkS'_@JkBx-=sh(=)OsʃdP&6Cdzxz$s=^p׉~@:,mF->>s/! _d!~.{6 Tr61 ]a>+s1EMBrC. 37 }o8!6RBY&*()C-#KkxԍfOV)'T u'\t'\"haAI}B@ppe> Pߧ s7>cZ:.]$vV/TOuTҾat. gFz ۸:|64{!L]9.mq^TxF76$vCer %r,18'? a O_oϻ O aDۢL^P$HvhB-4Dw1V0(51݃~YB|D*Y8 ؿǦ><\ 3HJL6`Z6jQw<톑+SnqzG&M )!Z[ka傤ZAJ~|tcq]$2HoX ]vi_\NV,fL4( {Xs9ܠMqA:û oS2x @)y)Gz9NUjJ &1OK'1:Gbde:5fj'XjP0w^^;-V0M6z傆ek:t2%ߍ4t L\CH8>ήJD K`|gU+%SљQ^ *+Ń">'=^>.%xѥp.~9{@'sUܯoYJ 7ى6b` pQK a95Ϳ]`"<hIt!p++`VQRѩ.q`4P8l#bΪuC,4%>dYtDL:5UlDyem5BAL٪he7` (BWSæTK{K.yZЍwvSr GYZFHCS4a^`ެvUlL@h4U~iٌInOt lako>F"z/OkHyF4O$ga8De}dPF 9)kxTm T:4DK$x- R<,դ7`G6L=M^0v^g%?]Oįy5zv:ۗLj?t/T%5Kqn%x2>/oЄ c/XP ,l3\nwʞ}nCk xQ֫@38H}7GzHܫs $/bgt|n&\kC|7itE.9o˷$HD|E+.&g6i&L*qmYRauUp CL Z;+.ѡ 7S2+ԥE=|E.< 0Y>6 /ks+"nw_σ}5'mɬ?Y{-6,"ƎajԚ^ۙGdv^^=+ć]9é{EWNm aHyK}?1\atǎr@P aҨ4ˀR,h^$D-!{\1ۘR"-#ר+E7!w /U˅6\1/}}b0 {t蚮 BM8^kp4 tԣ6%FZ@/30WUIYx O/hxA'qCF8r;UK(Ƴv3z,, Uh8k?Ys}5h[׏2bBۑ~_2Yu?J-y(y?L vKiC `52@ Qխ}ԇ$ϻW$>x9LT)p\H )%pYq'd=,=~ri9΁G|5{ml7f# `d X4#U8e&zPsiX3|qȭWiO{f&?쒠:0ž #+U>8~,*Mol]C9JpQU7JHUhX~¡Y.a/Hn:H4=,V5R/^`\jP!//oW59uLlbD Zn7R Trʫ>+J]*#}hUL$zYAQMW8)xuyþR_|r鸤~&,Qx2\ɩw9Ms3FbF3("bsK@,@?\UB6t\?eM7 }H"( 1tZ\!If.( J́93W ~ogJu-WvYyz徇!H E䅼"9՟܎80Y$~Lo&zpChb_G}3@7rT;HY*\Ef;VqiiBy~NW DyFӜTƾObn" t Ql{Btt+Mޞw7J@IGmJ=ѴiyBZ[<^OIp1j|Z ePvް)/ %z4C 5(RcȠU=?ƯTp>Y&rX:nMp֏|ad"Vuo9mT~Uwg@.=ۖAVaa1eQ*:"T㍇C* et%x:p!c7Rm0|ΐi}꟩8%"ʘ놖W Kks,eNf%Kb5>`?FFX=Zߡ$Φ#18].L*ӹwhp)Q9Eo_ߩzLk[K**w.pjgrM~e;{JAPae+HSJ.7Rd`N+)CB[R.ECT(x$p{$04/ueZl/O97|%-W<4㈚MN]MmKCBeF Z^TckU| r+qЫؘ^ |tAs" /q^~a L X|{IzGr~O )&BNW=qI+֞Dðq-xFXH֠{YgPrAL@/ M o="'Zos7cRvGb jcsy]vHA Y)&IE9/H=Ԥ<ّaI۬>m#kS/aþ>A}gG=4 funʌ,á_2֛lfN{`y8KJBuP$V#Q[^yT $!8TÙ{~7_fm߷qtgmu#ֺx=(fRu*td[ Q_>oi$ y?*>+ lF؝~7a3@XmO 0!(]l3ॻCr̥ Txq&3BV*۰r%! BKS16\u ("C}N18jʂH@\P3_\:pVp'L]Tݤm=Y'z9w9,$X|PiQ$~q_hwTcaṆ48q#:V_M#o U ARٰ@t>-l¬ P;Rʏhƻz}ӺhZgC/zP#;Q/|wLP| ײ~~-'q͗{:L<XjkVj`z9/aژu`R^PUkZWM#rib}Z)oK[f=6a ;]υ}Hx|FknJ'Ep~RwhLo$א 6900Mv@8ٚ rRׇኖf >a<*S9!4:[96V#gߛ!M^H͸+O"3>ȏz+G[ވPDIώ4Li3l.J@P]@XV**t)vUgA:q_z6?!M!LᩱKe2Q=-A?Lt=ULm2*L[ 2>]_%yb_X#RF`~UAyy?H'^ Ѧ;UrlxdnN[MγYzn1"⡬_I^ UNH<\/z nPv J[]*IgiwC<>7C@)Zه|gqܹ}G(2 ,hJ|)#441 M{L]4.J? qk®Or.6} #=U6s$#zz0b T?,"q暁6b/)?o"/42bxq,* pm+i$f顗%A[ CCEUb k,M=;c< SZ0ۅ(/h a,!< XU7-k'E΄.ٛKWjt\e<"1jQinz>noE9sf*@݄=sF:[~Z)LKMy4SvCFbM 2Zk 6G̐Z e<"h3Uh#[4~|[KRawS%鱣O%0pݭ 3c1 5VvBYK[VȾ2we6= O^_#E2TH3 XzK+fNHTr㯗Jbjud.&:ƿyFeyNUbх;51 $\vL2F OK0Őt "!fM.7w:[R42-y9EJbe=\{4rnqN,`٭tksȋUZU@uԽixoSXKŰ_F{+uaxAR'2 7uRޛ00Vݟ ʭE0n^IMwD&_qꃂ!X3G.A[qD+^!/5H^x_&+Pm2=FMm}-Hʟ33i6hb8(wtu5 2U+̀?ML[D-VH5^-Y n{? 5?hէe3 v6d_<"blOj/MoZ=} Na@A4ֵT;}&`̹{j~+uvԺn8O?5dcqQ$*% a"h->&&chSڞAT*{S|tGPHFB7j1f9H{gN tx6,yŘ.2B; 2+q'ځ0ؐnYu73Gޞ}ɘe7p0 Dz_vΚc:b'ヶvvoOy2O;>Iձ9Σa]k0f%{N85] k黲%>O&׃SOوx6,oНtfh_ef1|0FlS`*l8Ȩu8ZڬD|k6EvBt0r2Zg{`={?3Zyևb$ GŔ(}Z۪/jYt5WJ~75/lI)~bRs SWzdi(UY^j>%V(M6_W7G[l4_&%Hh#:+("ԶfZ"71mM("Oh'?8{?r A@mhe/`vӯW:x9a#X =MjI>{]Tjf!t}bJ Ww8ήlpμHL-ޡy>&<#!k}g7xx/ TXeCS~}ɂ╝nVӺpVX{4%mv܃9Um՞cE>XLMIi& pNK-6[koR'8b;?wLnJhH˟82H _lwr'H nGd:6s?wᒼt?[ЙFF.+w}^.6L# hM@ oح~/\t} puzrhb 0@;" t}[GJ(8F.n=M` e .w5;, B|+CxVB(jκ%WOh=ȇ1K6PJ o4Te-x;`ZcwsQ3d72n!'V)#v[Zy v+< vSUcf:]23M]:PJ 3]'2n@b6SfJ +ץ"]:0ޚoVc|DzfyŢfkhY.(i]0kӔL^6" 6MHFٻC S:j?a6Y&ڽ* M ]0pЈtZ6y^s铃[]R.hE{yE oQ(~В`0aOV'rv?c.n<q*[5K0!Yʨ™.^]jdiCWZ-'5N߂aA^!mJGb(_'LK)T*lxz)ѻ"=s}r4\Jtuׂ݂T*mǭ;oyH YePVDY G}[;~H6ZG"<i Jh ,Np zUr1U_[]1(:@Ww OpOv`'.(ĸo\]S s 3-q6ߎf3x+': _ChϾsqYeZ ]L\;ERA%!9Uz'jqǤwA] 9 &>~{E#jx.hEsi (zȚ7·taSs{C_P%sw(dPJv2z؎A8ߍw R9hV7 n$2!oݍY}_xL2;Woݖ9G?U|"n|nd+PsV[TLW3[u6y#4n~{S(ܢƅ,RQ ܌١9jy2 9jefZpTc% 8Sītfd '( 2]79$fiJp:.2}37 @ #`iG* aT ur(vlN*jM`{;L2&Z;j݉=e>-g3uv:o# }+"8:~ʬEr[[c$ȭ1"m38z;ץ۽c&&# Ć^)ѵ}{L˚8J󮚲 yΠe+l a#lQ77 pXq_D>? N3NL$zT^s*90 6#]^gN @:%5!0`=*I¿??d.6gڴ 2J%;Χ'.םlyW/taK]t% M0EPZ3LA0!>`&_#} ָRCDR94a>tma :bkښij ?ط!O8.¹>$ ZcOPCVj><;"xWGY|P%3XVM .cⲼ?ݑDB+:vA""rvj`fw_a,hgs  NBF'OvEQH*s~6̱û KgH/\=<)8]菗89 f!"qϗnsO["8=%FETkLAllI'I&+- Q?l[n$/ L .#Nw-C'Z *U) t+hSx bœf|wXtY0ZV3bNj:ZvhNXh&z]tTdQo wLF d6e?A9ۧ׋C/ዥNfϗ: qN3ڞҕd0-ܒ(TZ?L\N40!<8a+QcYވϝM@oI]:3ݔv,P[bb9&D!_>X&7oS!*a3ƥS&a!ޭ cy{bF\HAڽk.UEio_cToKa >}#+ %!nx{(tQ_C g'}F(ƚ6O4jdWhYKh~y1r]WASNe'3+9D`rsȞ!6i?@RVR" b?> 'S)sn ^ʫ}W[A}.=i O,M/+`jL>@[zLn߼ :mX6$^&ȷ$W!>iT)0s rRb (ܲ1-I,*0&kZ^8m% ύa]؉gYGr W nF@pi, .S±cEQ9j,"`@dPPX/oXIfCi7v(:׆ƻk6J_cug (ou:ئuwh8ڮD>^X; ђTT[S7u7%-U]T߻"T@ӣ$B88L,|$2SpiKp]xLOLHIŎ7og jpR傪 ^X *p^e򆥴NؓħLGebĬu~&95t%uu%JRo q<¥7c{%QZ OVOi \QQ3t#ٙ/u:RiM霵{&d'^|#a\<tfW?>C"d{{R 7Lk2.H˞1`q Wʤ'M[Ң l `$[6tzUj<w/$ `1xMZXV a@G6X}Hl]A>g[\ye q(I6POR%gmun?,I~)1{훧dAo ZCڄ#4˾FCOT>K˩r-2|XYu8;vhCMd]ygS(.[7Gp .j$ xx7C.mu!㤑S>A53?"+/N젋/+\iqnWp% z'AV7ekeR|9&ip$ ɲ{PZA;BتUx7 +?hE4wgaYfSvFDظhm} eTo),{F Ƞ&DEKnQcQKTŧ,AXd8ZGY@9N;'E.5lW'K2MNJ4!3I>om4v(g&Oi a;-ko_LLaGa_f8³v!y-җ'bZPKPG(6@ {4z5k"|aW.X%}f ȫmN+!^&ueo8UmѺĎ Ϩ)ޢÆa?FE}f+ ١o5z9%<"<{HT 6lp4(눋[jDl2z)dEiB2ٵ)SY~L{|u|_TKqsh@@4ljBẂp}B'ahG:;MiYN.  uL8~x lJ4l0rU<32,{ڛnOE 8tezLgFo3K KBb{h</^tdH|M]2*.j vlRd39E@-gKICw:e&~O["JnG US'ϧz׸æ |B*X u'HTSӴcHߖBߑ53~qz ,P/'eAf71GU;poW`>.HZn0ynK'hhq=g=Df]f"hzyH/m^'}kV&;P9_ֆ ?0+CCB%ӔMY{-9Sz'ݘ(\s?ŝp7r**mxA_o?D ֭+< ׻5#@:'/ _HϠMdXfā RQ{@<["CLJ:"H+Ts} R;fݫm0[g:"hW+Wd9:0y9N JJaX5X@ZTQJ6w ]mj1&/|ZB"i b_,䰲=i-Ԙy0gX)?'`&U*3ZMQ!DFX}F$l5`Qm6>>jέi~u#J8^_~_2v8 bLbSKD52k$c$8!^?U/MܛD&O7jv5[TwEZ I>j_' ?0uP*xvcqG N夜&LzL/ZIp_*qDu#C&bJeb 1->uq,f&_GŕDYW5v_qBuM, >,Ofe(eiPىLPZ6ˉaO` i Yab( ;YZX4;Q]t7| ?@# Լ)Wӥ. `L# -#٨X e~[7G qMa:?1܇josniWxN̷KCb띄xUc20z~4:3S'i =ZpF S`ODn/ex~1=+ezHH<гrrJW]SvKf[eH8!,@ͮMdlZ.r@>S]jW+4AdůBT=wwSVA3PYA]zJ,<5sfLcC*j ˚W XkjYC#'z׉PYxva$2? W:êAt¢{"LJn%+`V })vS8~AO{0G^E[Ca|r)wY(MѲ8Fؘxz+]"Rh7b]<~0d#q\:؀]vRb-JO}3}Z8F_Њ (6 sQWb[,2rSĒCr~эfW*f7LS07/5&א&&Z& Bf-O̎ڔ!c%kX3NGHq1E+?͋bъ0'?h6Lm59EC.h:jq8-+l\[ V#yTnD=.t*pSYIqDwS"YUQ.3ܑ^1[+7.#IUs)8]އVًW2Ӧ5QRw73器7+rTَ|$8ܼ{aIhN]uցq-fvF}ҫPk,N5_S;G[XGt,i|ęD`L1S"LUz&2ϕ] O,8,8 Ϣ V ZX=5H;)JѨf)FN+CBiC /iflJQZ}3#sXa:Dx"c7NCpW5U?,+;ߚ >\G?p$=!MFT}dD[Re>t/zVRǷc'+h9c:QSg.9-x좫(ºPѐiFk _|G;|j7G9)uD \vt ?~~rD -qc]]b *Ws$`2@W3ŵ6˷)N!zQaAX t0)!W.X|'2DտX JzT: 08\2d(ӷ8fNIn^s+Zg#{h7j\\a?/5V$ꍃSu,KY棽*VmX͜(=("+I_o*J\",s)aֽTv ȷkK0thqM}PX B7y# NȲc3ANwc1,E~+2Xbocf `Y]L]BrD \O~&Ivx޺O*<ݏ!U"ޝա| ZpOWxCu:oGhQ]ۓ,ʖ{ IP?1zxb̀AFQ!S(`>FG8 Ĵe',i:y񅊴Atk ]bJNMGEĎ9`lb ےi})EQJVt{m! *bXZg8jVG$"dW/CkR_O,WC5~< V%%a3[Q053{X1+35S{ [?yy3^cOM#*mg~8ƥ'Q>;կXAR*FkIQ46Щr:Iv ̭#Ɓٔ'h#{"TgWTnU_qg;vL9lyѹ⭛] A}܌~̐U^vWްrg [dː{:jnkڛEcz-kJe&9hr~`9ǘ|s#nfH5{n}>"!s%4yk<i?|PyEWZ@U7Sq5B)g-֛DiLOߏs/%UV4a8A"ٗOɉuSMڊAʪ- ynv!wY9%q > R.l{0Rl:&|-a O @-Àw<،a'LJ:7C h G+UMJ)Ë#dOLat#^pV!X#yVak>X4+` +"G!Ax/ƄgiQ^g`W0#+%ʞOaiC{׬h-%>i衟۷AϏ6 =mFT l㨌d'176ZvGGnDb<~ #|GrCEx}cFX૕C_+0n¯lR11ȓߗk%9*/5W'z0+BT;rsOzۻv_EŢFg,v~ lAQP P\vj6^-c5NVpd1h, bA4l쫐}j}·k$ݴvI]%fEQ #ͼ rbzQ YRnU#G $yl[L]'[Dtît(3D.2GTgc/0=(oz gI^l?%&nkyc]bƇy VSG~C.)zEN`.T pbK4Z 9!ڡg %I1 >lkiBsd݋<H! _CIr(')+-2(PmL?`􇲻2]K9z.u#gx&GAW፻Y yڹU:h%CF?8ڗ!`?hʟ?N-݆E E)N&aaxZs `iMgvxI1Ob ,c8rىnBwӉ6 ^%iqh6 ZϵrA'M"o* r5;d,0lL'_fBYmz"eXR`2V:^13{<<2,UV-tY750μ;*"͸ABlnVlT,ÅU㙲!DAϐ!.iԕsTJWJ$?opPjwogSX̝.ҥkh+5g@7)CtU=bL:Dt VNl} yi2s+}G+(M^MVէ NE $Y>e : (2/.Mr=xͅlIOG0E̚^A{_*q!xƲ w-$#\˥J+$o7.XqOA >+ܷ啾kw&m }q4)*o9V] P[sdtǷw8Y\5+k?\=ZuJ?k'9j^jC'oYYYȷ&b|W n8J5ԛn^ "MBRVnh=7U~rcژ!K37DY)/6(ZzRṖ|~%F7FBG%2U $9 װiۏ k+fGq}1Q_OݍEh,WԣLRblb8F6481GlHo3QLyK>@SMt\2~ V=q\BmNb<[}Zu^G,"p<': ^ɖ̞FOg*rw? kSY('&N99$T#Zș1mfPJzW{4@; Ty[Qtmíƕx :Eg^dІ*1j/c29/2p atӹ5q(H>@NȕWk\d,=-u*33\39 A*рUlWKY tE".{C%J  uPj"1>S2c+u-AɊ\a"Yק6',6fUxERF1~o};MeIJ7i&iVhzR_Y#=oKlY&J1(^ZTr륵ݑ & _M5~O5z[8(3E"跕lhO?S_>Ψ-F4DŽ#GaM/כ_snCT3`L._ӏ|LF=lIIP !fx\$V?=yXBngR" 0Aض.k1>~Vo@#!sX=Äu} QsuE!V)|6uvC&6$#dK쟉O4XSE1[iyu5M7KWn}cхw7jϭMiyTȮ'T[~EQ$l(<_\vc:7L$7p2xpL~΋꠽|&`\Zd69)꿗˲g)ǥeik$8|sVĂ4+8E;ӿ>QhJl)+ZAdwM{0|]57}>9IQjCwggvLUM C 3c䝄+>\6"w$Rg1'PL>S]rT)2 3$IknT@1$$iHJW 7F`H!hZ A&1&2oH H[ﳼA@Aߤ\- kWϵ%]@vlF7_!?r+ϖΓS[GkXFʏxKk Stّx8$dGgN5;]as*wKnǪF?vy݌iAXAӀK(/V29ݷ`U9@, s qyP܁Y֎f L_oXjJd57w OyVS ["덜;2_ߟv%w-1Uoz7v&g3?{_43NZyy(<!LlC@ŭk-#}) D8mz x.KZhYMz25>y5p i/ (˲'Ieyٟݦk?0!iMFaV4ݔǍiͲ3ؒvܢwc{V>18ۦ}o?%VfJ{ɼHO.4="auD*گze5(~@>iSf)v}CRp@ IR'>3]' c'ZBU(1hs+OßESwkUо4<c̳J~ЍҘ/$ R]ӏr=-9_&7ݰ^/YP8y6 E9]O~0*{3--=aF{S<[@6Itb6D|աĝF81pXZbu\,YOv]bEܺ䉭?5JfYj)$XY(f#U8(L(ZVQK>pYf{)e!<13`1`ZU{K}q?G9vb 2)[Ӓ~P1$ɝTDmQOHFiU0uŸ>h*Fο%X?*sFcoN*.`hl9Cچ`f@EᩉP>hbH 1m먦azV\8LS΍Uȕ-0g4FWİm~Y;NŷzC zMdMYo~4כd@ C<wQéJBSyi\SVj4eM/3yAKL`x*^$4;ǾH{-DdLSL_߇54i;K>AhQ6HCǁ.V0L4X]_W豇82mMVy\9FzGPm \ּ 0.Ww5ar[ ,ЦfHłCe|>2`wY\ ܨ/IR]]N̓Cф9A;.9M{B$^G9?1덝Tw.|y\6<yL{Ŏ~%60bz`&.d9kzUKsb۩VB5Hv@YF?^{Ѽ&ySh![c{O TX@[D4H{e#̨%bhq!H^YQ"nfpw;|ɨYArkڷ?g~G%̃SG,Qت$f8btڝ:cR9"*ν2M1EaTYGiﻤ-Dnf2),3 ƅ5YW@\';O[ Qy̧ь+RHt& ֔Sa#cTB3S80ma1^L3 tU[p1pV0JHp/U5Ga;VW/(RJ pe֤ҙ0BS?Xxڤ >&_Έ[K2_DfMXw|Chy ^вyo;ǘ.' esI;1+y.e,ΛW;cKVzboACwÀfS4[2M0/1G,"XlG<u; Ј orBG$H/,LvD#6GY P bzneCr~~^yZtr]l#ҕ'@W965 VB4h޳<$ B>Bk%3CM>xa>97:|D#Q1B5ogd5m tTJӳ .٢,߬~`f wxDhL̻sd- ^=P*8Y[>_?&⩸.)vp.m`ʊҹ-Qhƿle@dܷk/$BjL Q:U;21iѦ0 "}F'mKnM508Y6Tl-8 >&kz9XX' k7q*&y]E%.`]JUZQRsa tYֵZ?eIFq7=Nx3;Jd<2̝=Q稻ø*=V&XâQZ {$cwD`E@XkkrEM5cL[W JVWhdlWc3BLrj}/"@@e(-& mXZ%|?*M?mFVtV;w+QH|:A,=5٤uҊ@{iN(idprRm+D)z>f["!XM!L6 w]g~A4 2T}.ԡsbIK2ie>u1`F!2RIw#8n?dK37_7жogie#tr2@Nv3~rmGv{Q(+c1]#cQk\uqI)(S^M#k "C۠dYx[xSi(C@L 9#hƯw퇵tۃPϫ-4vl =ϕDqGVv:**$YT G= /F8 -Ǎj S8%(^ݏh0f U^(<'li; # +>NΎ$1sz<4/:(Z;F!`n>!]}e 7'6LQwB&W^gG|Q~TIN{\s_ nGWBqwK֪p5I\|^w2ʮAX_4r4*vU}[O{ md E+Ȉ5Ɖ|Wn[7 s3 Q:T'wee^ _)GF2W`Ѱx'i*;*d(\؊=ɚZz$% ] r6jܻ\"`!4D[bG,#~5Ar..x#}՜wO9rI527a]8훑IM@]rmLL%ԟ_zԅVufs|?}8d,Pr/Y-aHaOmXq:4j0 x "*chP̚nkM+6'ǗߌݍWS8J fJ5K6SΞ YT $3}ª_43$HY)} {_eoG9Ȍ(L'5x9M]GWoцtl=(&u)2>N>8#&G{;Ukm<"PLW^HJi?D5Ƥ|E5$WlVvwtkMpHG+m'[~"h,E@BD'?Rg7ek_nMT[Dyɕz<|'[fw^ Hj`2&/-a,HzxS^HU -fUHw$b1f%c)J,L2)ݛ[} +"Ɂ.Dxn_2Wă78 mYnV=wr`6Ns)K{@?*CAyУ3LܽݟR-<}]%,N]xY$Sh5'#5hT!%/{Iy$ڼ֩+ 7AaXBQQ;[-HZV`vU7 =P? K%:rtJ`BA7]{YN. R4,p@|lh{|Jcm?GBW@o̼2 ϏF8A?ׇ3{ f4ŰJ\Gpel|^kPq`m(uHǘ3vG$L*'8LJd y/QHM<$,A2 x"м2)B![kP]_TY$Hأ ydd;Ts}{][ߦD=F  46GYk}h6uwmigʖlg/Ӆ̞8oN*SH&]}$܂mVmyl5aFW+zy Ur{63k@ C(?Y² 9ݣ'g js2Ҙ7?%,X o0="b>["AM_]Oe]63*A@{]B8zN-80Yr7M' &,Zd6J֛@)ߴIc򦌌]W9}K"Džg! _W jUf0.Lh 5Ƙ1^8oѺ=k"FW]PRRn4Ze p o". A QBzv솉x%x6p\ޅÄܯ]^U8zv3bvAˉF mx]͋.|#")8>RuU[5H+]+inFZ mn:Mҫ.8z7C̞hĔK\1*ƍfK(o5'ꤕGSn;-dyuz9Z-3v]cNk#D^>~P̓KwCM%v=wOV!. RV& @WdjPV!"y:mInSch7‰[=j4/gw zlkNYDrrܹ$jWf+o?\lxϸo2B#k!u!dYZR1ޫ"2IГYGK!%+|QqsSp LAn7o1 DHD*"H.GBOYC[eFc,6fcW{\ce_ 2L OUcP7z @y? pMۉȠ0zS}ZYk&X﷒9~mel%(EZg`q֣/CCuKL/&STrRz94>7~m2DMɘP|. tmD{U/;ɉRb.\3AW}x7FTP+.{qA4 2Ι{aXM^GJg$Ds0f%Ԯ~tEH5qEOikv9h!\PT( Hm!aQ!'GV J_x~N t;=6H6ǹSL'5uAbiaLtr B. R.""*| +An]H!b'|sD&/%ΛQ+4V˂@T1f^i7 .NzO0*H R$M^8ovCT|S6[4Ջ֧ˌ&z+irׅ5Գ@kgkV&/}c6/! HsZv.bu}Ap \۳>ZYqT:'ILV;Y94֪&DV?4M!#нH.yi̴q}v@KX:iKjA7xkgUc=woaq: VtAW+mZ)kn^zp@N[kGD"AgQ>YBchHr-0Is*~˱CN=?hNƤ[JM4W u/`>g:r!hS5U4d|3^5|\X?H`*cXmTKTV J(f鰨F?ʹyjSjiVAp<{̂4U(vee !L 3^-ޙy˾-p 2l0udئ]4o5<U"1rxBgA-|}vZ~Bl67$pբc/|G4G-:\OjyZi>ͭtA2̀S(Tص3N;d **;,i]3 "iVF"]{;-1A,쌚j@ΐr_xMgm2aN7M3WAMa1K2+jH֚qrTk% 8# VY2/>K/sMCFRDp4ZҔ=찂Q{Afa$!>>H+>Ge}c ?+&TahREBg3?wsEq O@>f)5pQ$ݘ o=8~8\SWfS:zǒD[umE];S9)GCj p\Ͻ>fzoێo>}C*L: S`$7iUW.OOpKDN+>_9l]?G.FQL K甗OjnİpgPr~N`OJ^\05zǧ5ii~{rJS֡ר\ii\qAD%YeagTΰc,Fh 7U>4lI)8I*e͑dZw ?. DT)垱 ѳsM]={-L:*8m63"Ut@,wH%О^oT3"'ADrYCE7&{vs_[+J \f- F~H5AzUk_Bqlۈ+ֶiU ^`!I]ހ$1#S.[WC1MFwkQ*3w,/K4SSK>ZXl10Ă!UA,lQ(ON $ ʾիj80Չؕvʃ:7Vƨ)|e^usP"LvIbK1woJ)`It%;(l'ë́9:`#Bv8yM9"[7Q4uЧ1F*`hoqkbUV )d]Lq]v7ډ=U=l'3#iI& A0gwfP|qe{Фu>wx]<_(|S}F[찟6&iwjb QfsLf傄8',u( ,iwMR5|2.heA1,#ߛ\ʸ-MzgwhT!z,L J}5ҝ\{L,yO۴?s|*x^j|&N7w,YeT@`ߟn:-6"G:8%6Bk47g6<ߖt4vZ )߭f_Q"̺VbI4Jp,o@8-L<tSrQkNi=шВ,ɂ"܌[TG`C;7eºҶ}N#+rM ^6,Qn"3O`H@&k$Ji>RuEfReҴmraGF]$. +otlS|^-f$>-Sv|07'8[1 񏂩MFڼO}jmMS{}7z"|q "`ȔC=+lHK}"HiB@9>NJ)H.c-qwhBQ)Еt2~Sm؈s%٦B ?[k>sRm o_LǻNyj9,dh!b!ʌ0J4 vrbY5a;$ZL;`w A$8^Okq)@j,%G~"jgG^nr-qe; {/ѡ߇Ɔ ۴/f\)Vo\"m,)FmR$3 *ЛFP-ĤN3 y ե);; dﴌ<1j槾:Ny:*ry lKRĒ.Wq4k 2Wbj0 :<u{%@wNC+sU@@!Li^'f"F anجԪfX^mg=#Ms^zTZ#Efa}3aN;++z׎ C+P;@W 8 +ras9YS>86Nq{ yj/~0@VrZK닚"5|ѻwyHVT:!WjЏ +gg]MXUXYŲk8E<+껟Z^k{]ĢCl{qad'܋GW^gVj +v ]P8ztI]f'guk Vv8bӒ?];Ycw|KIM{U]qޯYGOfԔYD:!A; l=8@^G0"j4i^0̇͌-BޡjFv.p Wt:@ =Q+J{'Ypa-gkGjlEnݓ+C~ 5l{έ`1B`i )XNBHCo{m ʸXgT ͻ̠nVIӵs '.2uK_Y;`}sM퓀AI03̚4ZkyaQF-se>P%pp,'A.YlzN)<]rPfFm2xMdӟY}͞P]<ӲfMu'kgqȔ<޷PB)n@<;RkM+X7>՜ʮf0B5!3|B4^YThU{,>)Vmn⻭,@ ܧl!Ý u)bR:^+lXD\vQs}6k/G \vQVzc kC_?LY.V'Hyh3ڤ'`[ Τk%htOٟ ?-tRnl kifIC'?Qq_ġX gVy4 Mogw+RDe ±,$ Źu!,g|uB4яAO(l3\{jʨJ+ s- PBN. eAbݼbf((#~T6D۬󊉩HxW'/?VQj'pkw3rۄP0M ull%TIϜ{8Ǔ,at|WъIZ(J ٔ''jLyJP3T)7K{⚋ܽ J^E8,'o5QGjp4^]X>ܟBsq.Bc_Uv\Fu&3>1 }0η;RNSS~g; >֚ Vn(o'wORԗK@|HaMwY2`/ʑf?Qc" D26[jԥ]B zR %,*Å(B^Ū{`Yy^n$S*#3r/ )P7`;PɐŅ",ࡶGkjCK>`C pC /G,g`ܙm4Uc @ҹp<lSK/ye ;i R|3kJ SYNzM:- k[zmGc*9\l%O`Эddɛ9{?ڴ-Uϫ' kE9߯]%oY,F%mCu_ߡrd5o CBK!L=FA*(mUFgoD xR6)ǖT@ A gSܔ¹-Z_ ?dRhUKeڱ@9GmcMbO$:?1(Zj.1.O#3_e<=B/iSVO/܁45Ukn N;kgIέp(8kr۝o~`vR`MDM0Y!l)?(pQ?D",x$ED*/0_~2*0?0C\MʀiEmmMqK&VRc*awK)4L0-qE&Seo?"ֽ)L6lx5 Q2Ƅ]᠗DC>޼ ϼZWYFZ:صxjnԢǚ5V-| Pr3 BN3( Ry0uVa4%_[iZȒ ;kͪ.x+V/ /: ݊ <~+R$]7;ٝ -O(č(! ק84]ze{_OfڟgR%qp1\Qk ӨSxu`uN_O|,Dب`i:>F"]78<%BH+MACZ֌NYd3djEV%)$ҭgAj}nD!q\SM.z̼SIrHƜ +.M WG $eZ"glw5sĵD{Aj+Xn 鞐3ƒA&\,yjsfwO^IMER`,w-Hv,s}$>* D%~Crifh'9OB}B} K@qja 'xԆwmka^1 X`Vɰ`It 5z1# gU4U I)Y@Y$- ӳZģq6B%t (s'YL&3KEXX!1fvI (?RCtS|KۋIH%TTBe1l~f3Ȟ&<9.*% C G7 .^a lRtPz7K"\\٫F& LIlP,b+i ņD#آ6+fb'rQ}f8~3q/3eF)aF8YfIN{u$Խ=.Jj{ 2䲐{L7?+4}qoNl""õo^Fٍ<0PQ<-㻀BA{mv؅[iX<˄- JLjJ416*ff X9x0YUT!s;g?L]J4lLKs|уR wWf8[4Kw5cj5AS̟*iՍ,h%B]q(~oK#AR_.C"ɽa6efM 8ƄWU1mˋNv v]W$8=SG6r3M,p;Ie)B';& 6<#}OX 딯4H9\鲞 hɎq:{AJxI$3/{)$ z]5t&6cȹ%lb.8nd(vͯ.X3)Z[}'MHmBRIu ͈zcukx>ebQzOS!۳db 4%-QK#3"^mguo9ow8:BZãS,R,wSpAc"r=2. cNj>5iN`ZPA-bf9ԏ e<ʵplIL-pKgHlwtRO^[2:TS Ffj!KQTl22Hk.eԱ3MsUyk2̈́HKwo!DV8S\.ք;xA!e8e'y t_C~A&Eiv4o/wLC#R/-,IݒIwB?z?9ERFu% D珇HҏXW˅v_9_;#EM:Ha-c[n\P? RnprQh+:J`0+uPzHN3WXy5M`w$ZzcОayxnn:) w GkcɤK aȺ 7oyM]S~'/ɘ,:]+oe_D* a ?/^&[ f Ҝ"3uvt%%е_B 7_KСpp5(d8-o4VeOmSǕN 9v5&)~cEɑ\<]DmDDIE0[X鍲BMMA꩗Jbg>buˠ 9ؖz#wS}µRX9^Cuaָ/V.uG3'%fSF(}8gvkD[HMJ5Wc8(Fr[0јZI?+ fq k` ,I7ZpmhAHys9QR*+XǪybCZ@Jq_igiCbbtuq32`LSɷVLg9#eP|]Qi5  *䡀+>Pݟn`]1!te/ 4~/þ.q֌i}QqgO03ЮϨڥnƜG?D~%Ȑ2V +*o\o& s93 ! :킽' N'Lr|%]dO4r[ ipocZ/]vzG:HqwmM|qLl'? 5Nʕ+4ql# Enw΍1±fO(j܍٥cބbQhn Bu+ȡiۊ {=&sf\D~?벾Cy;U}SE>~Yu|#NC#L\=DCPl_0B~;w=wz'{ AL:cLo=H/͐\QcJp?hj:Ͽԙj }fY;--l)>QOʄ2|_cGZb(ЬaBٸk&qd?P\D".>p1T_pvxaC1s+e9yFo!ٲf QZpza1`b&1>Ǣns 5ĸT""91#1n,r+t"|vYXQ t^˴(KN夈PM߅$B9?8MhTtm/!PI%K2)[Ar(c7= x<8;\zB2R7f~-5HƧH-sIǖ܄ ~yUC|10sr,!mMh.z։$y*Jѥ}M>a*oD7>~ g#E ugJ_K1joM'Ձ-DZh0=N J\݄3 2 G6H=}k[smUu#AW,.?ZmI!1ҙ}#h=7iĘs3Y\VD6㹊̀I(%xđs)dm]`:a{dK3GfNKַb-TU@p }7&@"4J ΁%IŜgM^46A\j2@`х0:eN b@.gciRzT1l} Țss5 /!"1w];[sIInNtii5bڣ["_\F@Y7hظƒ.{QCQcHhSDooI@YPr(ɺo9˿hg_1.PǯԚ]D%a1+7qS-OE.xY|*(UnJWv<ėz2nE-G3SZ"A@t"/vz|KXu ڱrU:3֛Lub\hː?̗I]r[nzY_1V65`\yā[ uXݛqfeR^9ߙ!k'M&OlgD7Y<+!S?o2!Ɯml74*^ۥdi wTÃ}k#*r-~,śI>צRmpsFRsuLf3dqauO 㘀#=3G@fj2f*,J(7 6Smvƍ_}$>+=KpApoxQE+^qdfQ+h=v8FW9WK8]^-DN r-x<̃(`з?8L[z׊ƈ5FV ~ʗ򂐺j[AEA^?'FUkT|ݓ91?߶`8ؙ^t_MiAMgi'Dy*U̙]kh6˺[] b"8]Hˇ/*,sKv1E"ia(Nr(S,(Zc|iæ)7qeحmSZQG-ɨؗ CZ ̫&R:ΎǕC1σO@;+',QұV7<3cDedˇFLe\Fh\3lN1exhTp919Ï:d*BJko~x$y3hWKahT0qX%]seʂ 0cGZ'ȴ=9i%i֮ȼ2g yiWz!}n"3R͝g);['‘PSxjW>%1F^!0aV=nfGmKJ!ف~3}lw޸SW sW3qY5rl7xO64^MH:QdLJ+ x?#~ a^p(`kT:+NF8 Gw1݀gϵ˦"c*K[K3޹d9oR`*\p;5# W7ң{&5SHm8oB)ByvY/PD#ch{/jd7 xȐe5ƊIϘ݌>Y3UEĪ8-1P : eZʫ9Vh,k8kAyD|t:U\2~{.P3dL&g-Mo{lhwDHo)}BVE]/S"G;I,ܻ"7q,1΋A4av6bBc=0Q(c0>f c2wHRVEDd<<sF;42EpʶҗS0kd6YfaW¢Ut+vCϥW!O0>dFmST {qa`b!*ߒ"A 7 (IҜ^龏W=Ͻ|u4"I-MYM4iu"E;o,葬!I1`H@AGMka#41"T+,-~烇PF/v ;EMqZ|ۤsx_ vd3 0 +d,^5gL)GT߇3g/T8vOҴLe6a; \`.C.X]"%:a\kE}l(] lx,h*!+4WfѲ0eI "#${WDUV54LHn~'b:@5ϯx\DbElak% g0֮0, ܶ;85,TҲ)5Jp68/YhZ7v7֋ğV8eӼiO]S. i3I;6;)p2^Zky"D+B҄=@8N!BJ7|4ݑR,&W[DOt;S8Xᦷ LFKT]Q@g=g"̿HbnQPՉHNwg@ztsͱ3[BYSmkp<%sk'HAKy.WATt7Y|ٓ $b.06okA `%zy 4{ xDTZ؊R>bke%.F8 Zv䋄^'!Bx#"bZp3<*Xm44Y:cG{dSc0;?fnݞ׹iPҩ8^0-S:^;QyC j f1Ǥx #H\&go6vmag`Ao~ r~$VKﱰV:$˛pV+u4UiݢW7EHVAӴ[4 K|ʗkԢEhrqQS{x?x9,z%$8&I?T+⺓_"ҼjKyk]=k€8{1|Xž%nrd>)ˀhgaIM&0D*-7-D8& LjĨjkWY_ʨ d_(Hw([!ȁ|ta&vwz) nt^Bv.`ԢTt<*pb%$G;$٢8VwR@g"BbȽ=gr]5@@4gSJJ՛ɻ)S>> =Yޱp4M.y7<W{:>}L,-zYntRZ y)^.H l5%f6 ,;JȚ.fj]qf?cGtY+>wĈ,( Bis/#NmK$O81#~: @ȋ. _\6@ACӑnl6%`#qG"xbAGP){"ՒLwu{"2A/o/d3k ]KQWU+uM&f c.Jyz6\*{r& 枧ߢ1 HVʄ?6zn~M+]iCL;`mhX> A"|Ϲ/&`ԢUDYSP N!E`f$Q-YK7M047juq&& ɔZTf'?=l%궀&Kۍ՝Mg|GMt {6Mp}v5Q0 k3ʀ!H_{SC,є2#PB\ c72к ۇŷorSsҝB@hyݧ'9qn=#m]|†qCY R-Ի%(12^^פe,~)r0wӈ`3ބ!SKh&ι¿+tg͡Mdg@Vi~/䮓8; ՞ pNHNqֹӊǏ|y taQܕCH9uq G\*G u܋_v5 gs>c7>Hsl o)B ,4U ߠSv-ߴ%4;iK1'*=;ǁHs^kv&{LM)MqĘCpAiݮK޿=h8G U ,KB0 Dun5680LYG;~VM6;}v?bh!Ƕs) @6b]pO6;B+̲ZS;!/=8.ݽg8RvԚ +gPo(!byv4^n:s>'S|_6]vY9u[pٟA2oyGடZ9v%;)6rT:^MWLCcz/Y@m Ec;j g,]g"P'!URR>m҆-u* *.)`ӟůb}guSf+`df}wDgL 'ԡ :xU f[Y'RE ,dS=lKh7a( 95+T\k|..:e ԔJn~ e* ܨK30$^ٹ57z.p۠4Рbl׀9{);Ts^1UnL;l4ՊqB zOk]挵2ʣwU>wG_H!/0"M[dK{lzqDJUѰ4 ж=kH?qdGm̥Aw~KqpEUqSL`a,*/qU溡L?A q0@ePx^$i K^)!_ [1W7U %eF$kr[Y嘯14yғ!ϞS }\:\'ׅDBYX2'%m"o &--C׻x&lc%S[/YaI8TСEgK gG]>q'6=M3 [Ch XZ/  )C/K䴷j ;=qZؐM-ooi3oG!K%g c"u(?N~'YPt2}5 u7 4$&L`ٯ :.E= Bs}sGd]9_XQ%;EIƇ0VhJH$M {|lgFm;uc )Ƨ HD3[ȓ(;-)`3|7j;`K^q q.6lyZɋѦHrG s aijVh,3'8jC{`ܭ-$2&KAkDg ֓U ޝVh;@C1 kfE,2')7- NpG&zCJy~ vfykHx`0e!aS4K8PmHPA7tXEtO Ɂ_;/0g$꟒'l7D7^X 9X6nЦ S(>֍ 0BA_+BOƀZu,XI}>#&@6\UDL=[1d/]m~T]s'YBu~ rɫO.Rw7^j5VQ$?&vi9(\fU:22i!:[z, S #RM C.TQvOgP5\&7rL7GCu:0VZqKEلtpWSsnzV , #AootQVs_FJAӇaaslJ<xJ }mJ91^@zQάa݊XZ:5}X^9DQH6`]m|<hֻ_T')dwYoTX C@Vx~ͿL͎!"')vAZ!}a9$+zbp(OC]Ok\4QNlnU]ً:X vk7?6eN:HaʕW]svL>X? Xhn`ܴMU _tW:+u\{Q['1a-ƒ+s^q,AWn_ʋjRr,!ះ^+D;=P1K2$#-aد!.g^VyvUlz xkR7H8Y[e8|AhYkW{~%ͭT("@oeY4S[QX*4įZ31`="%Хnc)AѪxkV/mځgnYr@ (tN3_Wym⽹&43>Y#µu6DQ9 _<`P"'mP2fRajo?hZ(%T6Fn!vJݾr" -і RF'v1$h,̊Lmcp7{[̨mg/̈;MAM ?ދPW2bW&2UővRI9+`y N 1)p4ᒓo =ЌIT(N2BR0| uInK{}JVIG7'EG~^vڡFmxi7U菊?^ h^v-IJn&MM PgSh^#'5JJmNVi֡4foA &/"Ӣ}J '$pm_Rttdf LGש@$ zL߉D_x\G@/5tpQzj~! *e$C)rO6ʎbjtv].Y1+,o+인w6S86C3P$qVjdg\6g~[tBoeZ-F\oTCO^sfz8pkL{1BL)t(sK*%[6 \[a{N 7CK8bw~ZD~m:/Go;n.h4ꜥc}FtipqTj+ᄑ,vpZNKo'G8WrnF/rluibA_#7~oʝr3nH#t[Ph́Pjh>Qqŵ.Jlw[jr accad&?ӷ&?zٹvKMڊRPy'W*?[P!KJR Uw:CK s;d$$).hEqnzclz[=KL.ju<?A1 h̳.=_[Kt3҂ ^nYh)˼|qcelM7ЊCu Yc靛Gq4=|^Z$'mq<ޞiZEM\e 4fâ0O; bKґJ9Ekw#[GVq)zK4YvI`2t*m~ o3vܼ!:9&]H[ [}˃!C+7ǿS/ƻVi ~RM>}E+t#K]>?x~r<$N%F"mƵ#ɚnFӫ}7GamFAA*z=SKHdY(բe9#:LG3 084DXlt5mŴaٜ-w9V`=W!&eP(ЊA+cFݽWS*_۟_-\.'=OLpW|t(z0[*كA%e)pڳC2K&]Z91ĽqPuWIDg|*!4j"uU2KKö c!.95R31{p17.{&t ҮY)+S|3p[:c4o*ѷJ@6Ѻ9g# O@Xf<_!нqXZ)>vUmn2"FC}x&r42.6QK,Rl30b `4fs2/C.j 0* . Î'fowA??XwSB=uԑD&6|NDZ:ĸ@7 ?2iXZ/輌Pi،t_7El1})Sx!6wD(`LۧϚ<_]Lsb=KB`!i/#(]l &ʜ8rrMHR f %]x'wILER( 6/D[Sd<+v*/4J6qӉyR'MJ-Q%P  ;Ql,X][q0ޢsURZm8HZx)]×xc8ƕzmijn.0-' 8-~+y',4)u!{M=Oa #PpÛRE׮~~%Up;J|[s3v{`oyԉ\ 6"inkf ڮֆ !o{Wz!t7j|W~ E kd 'w4("cu~%0}|`X~Iauel1Nb-oLsy6laǛ!SAkҗ@3G%M:t1Z,>^ы&{ dh 8HUZ&,VBѸYS:թ⹯|./`J&QJ%-w#N;, hkb ?pԵgR4S%:dkķRFV|<'?h鷿q%AIzSl:gvXb 9Ҟ#H¦ `W|o@'4 M.'iϯK4q6R$e`g#VR)7L- IΪX_&wUQz؄݊J)5Jҩ#H|JZqfR2e270\~SdK5JK/9S} Rl^wu? GK6lD#fcvƼo%PkE0 jd-a;7UX9B 2<ӂǝL$飵KZg$ u<2l2T͟ <Ωhhȍ;#ї='^uQQD9*tqS([;P Ǔ?W$pr\$q.[7d&sR6 %"U 7ћYbIu;Iep>(4nF_YY^$8'@P6Ll\oL\ d/}R鹿ARTEvtPpMEopH2L$МrXw- ;P,fY)C=O\)G qEea|ɅP̚ y¾ѣAr`cmkDH>,~X]!azCa Ԝƾ|2'nT",/ lηouW JR|hs" llѰ<*͖ yAE =+LԻ+}M7 q'N-' r,XOsJu~mk; ̹&aN1X7YD/Z vAgu@2‡n}LɰRYC'sYhȼ9w]8j'XC3vZH%Zyxaّ>p-i=SszN3> =99WW5gTEVV1,N8X*+6|(MQfF +4c~p9TUr5( $nybށS3 ~MU ~eI-P Rnh"kF\Qơo+J&X֬Xv%]mo+^6S h l gi Ζ+ Gaަ[헢.m,}6A 9ѻӇC+$aBB;Q5IH`y) $X&iKA=oD>1Y]p6m"q _q-0eKnB*5įH4Ч@1X;ZۡR6ӆo.ٝ\=99mHDo8C~-DJ~bƝ]ES3`Acj3?g*@qzH![-اHt,Vrl I %}C q\W9 d__W~FR"0N3NyLJAL DzwGGXˇW޸<ھy+4upf̫biqLȻ܂mL]>20;oDB#&,Acd}{:1rNi2QXs߇W1|=OIP^MpZ>Tהa\ߴ8 .VJ%3(%-@ Ě{9$<͝b`9A 1)T1H,R0E +6O; ʄ[dxHϾPҜ6ŗ;6~]=dWZIyH ':IdIYsܪbǣ^\w2 "8f!i' X^D6ud[*^ME<ڊӤ qG҅I_*]`ؼ.Y A#H4VU@m0\>B+(AB7_3\nc]A+Z5n2: :mJ5}U pݝ##QOUҮ#OwrlL=5Og[l 8$ڱYib^Аjw&Իi1s&0Ϙ^nba/dW͵*=7[DDрVe-VB÷*y7{Va4ґV57j:,4~󎵓T8nOae8$%mKP&"'~4K ;M6<  ޳٨H&|iJl6P<}W/e\gԃߟ:I{Jn A2RDFF|ӛ)}ײrTx!Uzh*Z;%vaȝ&p ^zIq)uWJ89.8{®Pe$m['e5c7K7P;GGW1nR =iL5HN(n).B 21r)8 xjPe1)o7* _lF FC-H+H ȿfimnSoD$ZkT`Ѥ2ꩈ֢mS2b6c1k[I aƭؐx \mP+ao/N[:ԃ+IUjWyfOz*0Wi$XXbο&GCl3ZSqYS11C˥,־7 K.vu&qn7d*A'Ė`|0^ $2Sz%rm[]Od7͞^KGZ[e/J '풇AȪ =\ .ejw(!L&!WR$:+G T0ޤBabC kڅ[AJ/>YD: Z"WVl8+yt6|a4 ؀3<,s`2#¬^:q!d6ߑ{oU$pDd]v~_?=TޤPP6cۋhdZC{L,Z0Ĉ`/C)\d;ɧ"*zK?tKvAW8Y_P⤀!7]o ;YI՚RѡƉ¯A'=b&N.*ZG<๷BOB$їaB.A^8i\"Kq D6CR7ڴu_ߗ({ &5Ō2P{S3f_Ɵ^`=.#]$ؒJ&|7t.HIrS LUbWL@tʄ&0ma_-'3Jn˟:f-Ә1`_-FFG1#oW,@S5ud1P ws'L1$dvk~Kb谢]cfUb~zы{x}Or?X`z\RL>ڨlMHr#s P%/xJ⎅-Z{r@ة㈨R_-}xIMy"xzX_7xmNKXK}{5/]+E 9er`xى "c}-bHG_M_yW|)0{6s 1zqc5iʷU7lc[8:bFc@UȁjG5j+UD2ZhHh4|D5NGTJWاI<'렡HM1/ *1:м[j0yFݓ?6dV&8jN:ࠄR,szWǶZH}]9 3 C1Q܏6uO]9@CD)9}n 6*>󁄜h2Z%YyhC/2ETjIz*V|2b<+DgX\wcZL_V/XK$ī9ΜCTOr\*PVym#0ǖG,M˃aA݂ևk]l:wg"p-O\()pg;I%r7#T}nޢȇaTc{AP(Cn.?-\=ڟjG)1srhGtt?+_/}*})n٪)whqry0t1<(CMH짋#f @/a/}SYSKL?g`Rh y|֖PIEc3[%xUXy1ԯ%;Pc֦2qT?bi+F.-?|qɁͷ<yCA`2\D~{d_ 7ڂA㍩0Xȭr1!zh?; @~pp1y i-{OȺ^Ӆx(sIٴH&~)#њ Ѳ"# eFO[E9 J1cV-Ac;[qܥ-.Xks|M8ae܋m>cV,-PtmW?,B]NP#Ы'Eq.rn@O)<>gN=`k]ZpAl7ϑmz7k K/J5ȶWƨ| %Y8j g.*wZ̅p{vv!. 䕽k68Zd.G=V8G XIt Ẁ1 Ged>}8v0 fsg`_[{M`fz{ǕԌzұʜ?'u^ÐZ~}`b8Qމ3 |qDU{bs\;}%Sk,Gx3N+B:~Gح1VL3¨% ~}sQ1簤@ah_~_ohRBSU6x&ɒFfUˌLP l<#֯o蓛 !㰤°Þƽ$dLy Zi \Rm{ -,^.e{ԏd4a vh3Hf9`Y`۳^T^Q/.^ɯ09לC{Ll[\ZeulݘآExj w&cv?9r?IY6Ogn~BwCV9@IY7EjujA0.Ph8>pE`=c{_@qشD %j7 u%x2` ieJiIߛ KpV+v龇@Jg M;Ds ^Or uVm]3WQQzwBZEH-=6I`vB\5dǔ^fax'|^!Yz=Q]._ExؒHUI>M]W՜>8h~wػ ؽ[hqL H{{>brM*ӯWEE^h%ݕ3޸U= H 0s5v EXKpи0x:.QWr ]j)-ZL6V-!u2NKa|3a8}mʐIbrVgy\&z3 z,Y{Rϖ:G"^Ja̙eafb,) =f,socU^n -XDg~X[!Q]+s $>|)! T*M ANlAFST$DY ^7p{J^"vP'~]O,z jK S]dҩٲ^bH41 } ۙxEFf"S jg1W69ca^kZ-[hO7-WC4i;n F nu{ PvpvF2&YtlrYZfCȰ(k_Cz_T'^>H!z>X:;- ]\~𝴕gDnSe~ N݋/Fg-u4z TSZ&ku:Mt8uOrAesS42ڊ'}#]n9鲷M>{nmBLζ‘i7<7z- )Vo( U>Y!۶$MȈfa짆 =iT:"I2/p&g987OJ7xO0h$)AYl fϣ!2R-C$}|M!}%@ 3= `}*J\?e"'1!vV! kRۇWkzOۆFQd՝kP9 8Vk)RR/bсxtX&j[ZE ][wl&rb;^Qt;p;ϕɺ1po2|+ i>œ$]ie1CGv8@(A,FCz>ɤt@jA?G;œD>Zo"\\-nR 23O9 =P&D?uUw)}F-;Prܣ_)زMm_XuzV7 :Q['kLѤWEdQvfcGKl na&,ݞ@1.?$ 0mL}uS=L? ?b}L>Kڤ+WDrc6ܦIDԿU޷pZ:M_Tc;uG${OT RI)CTV%~8o!0Cxq{(Ե1+o wqNxOUzpH2<8Du鄒c·|D[RV6׵}jSN5U2# _u'tk 3ӝwԿ%[%?\SəA['\/7|sO%XS' 1-GԎ]T"[ Q~Ca@!DK;OCBBRڪ,āDZ%)v;wY]U SF@4jPWix9j0LN_6[ef 9Ӕm Z> e f4y|tGJ6Sfy*K|?@z|0ѱ=ˆ $DaC-EA(aA"fjMpc$A?䙸d3AQ ->iz[mQ2J84jZC Sd^㴈7VT.ZC7D>%r-SWb5 \ QyIXdmDǫ-FS4\[x +\sLdžsݢкb,+QaCCBAQ9r1EG?pD9 7f^QP%t1='0B< P_75V>ۊn~GMi*}vY Xogp&OMpBR1\.s'-'a :&w%C/8"J'xMq/D7euAZn0{ׯ2k _xE S|UuZkv6}폛[IAЭ8qZ^N1?:9&7W@٦R;`9m?3)}i#0KMQlb١0uJL"Ue hẑ~cHSǬ uj3̃ eł63|򁝟O˚}"KJ_=KxyèN"MlzDˎlTBJleΤwN%:!\w6L VԧRLM9rou$=Fgnj1ڀpsָp#{,@{'8JjKT:VG!PyCݍLFz*q2gm4*JdCIWXelٖObOVp+_¡TmPj.dj-s݃oF8`j h-"ώ|bu6aPxi9;_kX<d|5jNuUri ʊ_[MP4ElMw'<r?oγ)td.QUfɐ"RG}=CY9Ǒ嵙FG}er)Zv*6𾭽S)7Y.S_0xƑ5sF3! HT鼕)9]NQ1QlstVQ٫ӈV4eN , e]s.pI$^~uYF8,µgRG1(8d)/)gFUF=4#MqOaDBT sW^|ta_5.Wu8sid#P stK;k!x<,JuI Dv$oK)N8k&`xp&8QQֽRߋrTJ;AF #M0bג/V(K =UE ZQ|KЊ+2(^8!ZnEt뱓$!#Nc/%}nQ{)aRmVl7 }%=&`c3|o@1R| %)")1_'FhSn2c%2#Ol~QNr@0jLM}:?}GUbK~6*%x*sc) ox sg8hkQ6 ;M*{G ITS5M< ":?HVQb'=ylW|\ Y[_ZLJe.t#L8\dX5Peo=9|&njeFJ!!wwcsNv8?sAEءR+GF!Tdk܍ ϷaHt4,hj[ifaBf`m+f4^ XE_&XdFMz>%p;k0힯;0wy!7H}9udžF T~1QƵ[tS aXTII:4S3tç5m~y;œ:qaRc?^jͿM|:;U'0:,>'YpQ2U-r'(ctuг/O#H%_Z4FBN}0o95cćy"55o$TE00ih'jNIuw8ui|JS(H#y"hv|EAf4It q@SsP[WK .YXݦJF61Ln"f;15HbMN!ߺO5eٳl=/5RR+xJYzBaت]x\FU`aٟ?8+^ |IztC+ƔlP\̶lOU]/_zC,M(QW_`qW;jÎ q nAS%/yW*=EH{9 p{;hsW8/}H8 c=Ic6YQ鸊ta E=D'u?@v['}Q/ &S)ENAG2 yNDF͒Pc0>taY% YhɳɜN`yXē{50 -X߶p(S )߸#c%O$Bu<9siZ=rxiYoPΤ'~ M/E'haUljR ta<.VFJ*JPK*? ffTAtD!}wFeACv PPR_ mIb}Dܓi=2\5 GC}`3F ӑ_ >O"KSB2XV=L^NPIt%fgD+wyIf`;D!|0˖^w͞-Shkݲ1!K銄8&Zdk9D[ kcCTv Q̥#֒v#"|Q=Se;Dx -w|.Z[ɪq9q3PR#Uw"|IS[ K̇6,&ipb:#0Dy5峦:(+`301'"RAQ=$o4mgBKq!у5_Ycɰ:n Uw*e[<ǶU"|4? .}T [_T^.ϼE-3eѨrZVVThhu, S Xt|8}2 o*8cꃉ$ROCDJ3gD~ce>VH=L σhǣ*vL-^Ӛm+`%SҠ|(Ol:/zMA5&k :KR_c2-X+#< ~CAxw{E]{)m ^5j̶ZiOF@:3|J}Y'·AꗡxET4m;Do q&][\4xK"P5i]b^<޸o14ߖWzog5jЬ5F&&"Xكb[7lĦ$0wy_ʡE<ҹ<|x/=}Z7Vy!Fqwj¡zNM>_JƧWR\3@004 #.HHiC 7>e|Կ"-W sf> zCŶxbJ|e^ܷJ|zyk5wd%$S@-xd_Ø95{jAI؂ ,_ #Q*S};$. }q8ј7~ O D S .KDp="S:*Mˎנ+)ƂioL2_eM,MW1oQ4^TĬ3q-d5Fe.y yvmc.ai*"`JJYYLs`sD4wڻw7e,F 13=V%Sp&Nngv>o5C[O%w`#e&[TƱx>̥7خrR~"Va @$*Y# CSdMMuy-R[~Bnv\Ǔ5熊 Q]V\UlbA0~&2U+9),__݇w?UxtGzwB539_rrԗ66qm%-~z.3v"~c$.mPw6@1XnhlXa3vbE@pNkeq6paJ՝С$\7A\H*iljX 6LAG*6dXk0K5HEij jSK<4IĤw. ۩6 #B ,oTdI{D*&"X"y k=~+ tAAR*%i/KacP_!2vZ58g7@|6<9KVgZrzѯ43xcllz`X DŽ:u,$'FCBwME3 ]%r gzRKnG9* f"8t?f1pX~|"jqR;E*<= L o5cD26T?Kܷ%}*yTDu)РM=&Y$5Ƥʛ x4Cbcj+.6l!]L1, ɢw螅CMAD__J*GDvIPG_dh߮,4~<.:-:l? i (4 ]tS~2+q1!₥C=A ؐ#Iy< a>&Җq'B˒- ݁co엁c P{R. ܹ^\ 6MlS P5h:*Ԏ_|Bɜ(^f^yx5p~IY[1*ƌە8/f`vNk"A>PgHșD5 /5&<&M<3"_}} 3epYvV_.>zAa:S,lO.T#N˿OUGC1h'6#&1' Gkd&Hyva_8wBedڱȒ,fefxl*V^Lb1 L cXjab37' 1Wf|̳'K TtI HI;;:9:9ݙWXRPC,}uX剒4,0S/Ts<$_ =k\~r9-gg#47ʖ*EԔ NK"uHN?dNl!4&4ԝe;ˁAJB\kZ#5ax:;vODSx)?Z3Yi]6 2,2A;hbe&Z\Y3l4%S7}:j^FoVWT inyκgb:{KYxRaĤ k@j-X䆱nw^a0K\IR,BuaS8FM|$'r㡙 aq=l5?9zˮ['\|&/Zp\}7:`9D;u{V+`&{=5$P(1&s޻9cgrQG9u5TD.9ֵjuS[/Jcf2pi ܌dr" jVdr/*R4ÆTx 7=qR[8/!}@;G=ao;hQdb-EP֦y)LO TlS؛¸ɀ!ORs3.(Ʊv˲7R>+'w) l\h,P9Чk#ctL‡a3Slzv,T?pԸVX5[9B50Jbū5O uwۧ\F۟W[t';E~>OnAR6iwy?P5ZnV 5J%$Pny @Yg'́ӄb;Ŧ EF~˿1 GUVҷOP̴eJF%:F8|!˟*OQ26)|f2=3m-dAJ uSTS!i BEG?ؽ7A9@~5CmiTtILoum%1CIPqT͔1 <5o8M^ -h?xM\+%"A5"{(CvHYs3ौY}@=))u%D1 ,deG=w"TDڽ֨j oUH]?҅dӳ.nDED5/ag#}qckLvvS񻕻*1y9)9C `qm+-X5p޶S:U4f@BĐCjFȤ_ q y~HZ7Z''{ 78Kd&wXŗ(Hkέ5}ٿS|\ѣF}\~bddjT?Kk>BE[هhJxd\{0*cF7U~ZeM9DiwhxB^&71>>׻_`>9p|ۣ$E+_r;չ"I?7#~F5tL2t0p 7(dCeL.`)UXSCi!`?K0@GI@~ϥf%ok=bE޹SlmutKXH|Őa,O ?VIh@Z5]YZ\ci0+w7udT /Cy~G%#v1Hi8մ¤#`q7x꭬LΈX;FL\a`j&# :9hiLۢ%l-y"ڟF!z6 "g^6Kg4_%HfQ~&('@KIT> B%njJIli7R?Qs9.|9N2.la%/ !) 3VagWb![fgs7MW5m*?_NWlbx?M.GcTO-+d! qB>r7W ;g󋢆;n@D- s *^?7 Sn &QרwBq:Gqq s4{E^=;nEH9ks kFkZhKY ւQos؈$R,1BΡ`fXWySzE`[|Ctg04R^j@)LcQ۲)ad_*yHmTܰĊw\cqh9P"Bnjǎ.Xk2}s-R-0^ik>Vs4GhלNag%O?6'Ҷ.p?jHlq >s\+ U/d/'_|9Ӳ\>J`A=%/NR~k~al.HY%C@7N;NMؽt#̉+O)g2*as @e@,~@55nqB 4S>U婴eN57ʴU7M%JtpԗnLiU8+C}S7+ :RҳhY ߰aǍFx+޵rDNU #=Hhu8X|ܖ/j0`8O|=yl#Ved>d4Ө_5$-QH7vNuߧd$^.2z(V>x \ZU4!),'+¬9 lQb'ZEfV jE*NsuR,]\pciJ@ )ÝLlxA԰9) _O $(0`Àa0 @>,=lֹ7xDp%E!1V=O2Ӽ]xkW @Ksg^&q<}G3'0"WM+;7!X,޸;S-ZOkɒ9Q2Рb#Z |Si1QVگǬ*֍COXy<,Ep&bYe=CHˆλK&]fM0+1gGǶ,' QQƴH?iw9IRu,FozP 8;3!0 7{Yl>硲гԩgi2`O7ྊٲMLR_Bl@N/ED%%JA +NFazN| I3SfV"|\(D7ǖpAEMi~-. g_tXN_u̔([e)5K3O Ⱦ਺:̦"[($AdC6qh%;6vHY)n{:IE-pݾ'o"&Nprf~I8mR |턕bt7@W@T1YV~rYCZ'Af<#gag)\7IN%__o1HYX921ŘnP W$ #hM=**n?Frdh@nRf z"*k  g9_%&Ea8/u45i7?xdB a@תezfYG *=Vi82TT*/NQo TFB|@\2&OXMsVQ>RYݎkT:b*)eھrSLʉ.i'1ksނGX=T?r%ϛƦ@i9TQ3<[V"g< ߱)!>+8Ԥb\ ɠ@ ϸfSِ\$qԜHgkMI%d~uUd~`e#" 3LJX +D14Khjͳ %o[ˠv|W^wk|(T/LtEv-I `L0]t䷑NVME5}p>^R{ T2=HH@)8;gTzR&ɫQڐњ\sݸbجy?$?cw޳JmYɿ<dW}TQ'g=?K-owbگ8$LyI_cI7ܞpKp7,QW8`X=jd>f7Jt萕N?u|[}$`fݏ ̺⋋\X3\2=ivCe4ᾲDoLLx/p~L-;chts AV J0ԑ@J‚R59KC5 @fV,δC^\ 9l;>L-cUmm0UȠg,C*GL}35'-l¢iFS+dxe7$=?(s$EFIǏ嘤a]qs!A7Uf>MW:^,ū۾H绰`׎6l?4bKi]UtCQ4_q2XI\0 GܾMg}d!^Y*l=H9]qeӀͥtfMڜ>,Y/0ڽXO}9 @.'͹PVmdU3ӌGC.:P T_]gp6kd]WLZ+ @ڝmO!E R5~PzL=uPҏV; 9 ÛR*^ϔLءqPV@+s^eAHAnEoIHU8W,׆eDyg+;1<}ATh #Iʦq9i>j|pXHm;*7kKV=<ﶋc@2D] o 2#P+Z؛e8C"lՅeC>ؒ ?2.pgn#+ $i 8pE yU>doKqt}f*!oaF|%,Ìk˿W 7K߼.iF6!xڃ 4x@K#guתp7 3#B"vd1eL42- 3JPOg`!ʬY$ =[5Tߟ uHo좷݈ggXDm9vOLGJȕEIt$O)J ]wO휽 / g Csl\ȳ"WGZBJ?Ĥ䄶U-mX;(XSٌ6nHgyLݫ4cnZ'P`$ٺ@:&\2LcScƕk4%a '=N' ]/3mZ?o.\+?E Uj>_ 4}"+8 5Ͳ=R5`q6}JD5x+4R0Hcyƥ91g~ ǂem=bw`0`by >ْ[وÄNѝȖn|_r[]b*A!a>o⾝Ϲ!S>UѼ*7ZumbART#Hi+S0G6gY;/蟿b\*סU20`]_l96v@3(T=E^bĪ߹F]ԁZ<aWX ,ҿhc0Ny!#b7é98!Ipzh@ԙߨ+}ĺ2QAɹ֏Ƭ25og`WpZ<̱Ą_VԐQ3in +ks&kĹ>SNJ-i>5XkYц|k^u/Ą.SK=34=:dTPAo []}1FX] D/9/q;iw# @q+A*55Z0ʪ-mS{\o" $xV98;2vd` vNTTZV ɒz: k\n;AN)m6N>|IhRhQos75\ \}HڣW9{ϼsU0"eL(]$Z1xQPk/*FW<@mdaD:DrABTo>_@h<֑\>חD/@~9ȽC_s偂6<"(|a4I2!<7PD6AZ\ լjqj}hR;WPUwSd!fH-9钱0$i:&9b˃'\;PT. n-.Ύ!l.7Awf-cS.aM<* rTGxi,rUY9 6a^K%WcXȌdߴU7nr1at/\1s|(6n-K~GAWWz7U̦ ; g_CkeTL c)kqS4>NXB6 ~]hy tKRZz(6<+|ݗ)yPV'.@^*m}GoYt/@_k*꾀`a2r}ڽc!X DztMVEr o-:8uIO: i>.yP\;!S q*W$08@yCSϠG/+i)ɏ2BSGt֐4e5-.[7Npd^: 5o<:uT@::;_6$j5i!j r6e])1Ol*Q!{i0o|Q=d{{>`%am5Z@>ΓR# 6W12Š 䋒_uye׼Ok;f n̖ŮgQ4ǯ\m7%ѕ7t.9`^R&H?Q~(ZT3}PmaEsRd(50mjbD0 )$Ȝҍ@ 30oZ諘n5׏豲Zw]ɾ)oo"t#MP-ĝ Ӥ"Vi6^0H몕LZ62}Bju:дthM[2)ǩܺtBB;$ӍX>u2+AI#A+Ga)_y#ӊ~@P 9[.Jl[hEhML\(z~Y  i*!>?}B2?'o3/?{[Vp;&_17j9oh#jek$+<j*Ii7g27)SGcc T' G@4=iZuIS;L=xǷtRX ckELiALw"O:)Yvpݴ(ma8QN./b(qP4̝]Lr= !4sjl98ci`~<qa5g|'+<ɋe`2LF5@厃#bA{rI+/U[m?2Fs+:˷QC5*}!$ 3<$8]v-#<]U9+ؤ}>Ё~zT/6Hahx;+j7X6 4ÜՆ̌vy%~:kaQ"+R;蠂(J$d`Mcv)H&%Bh.kW ͮRHIꭢ4qi~2 (77*;?dom뵾)Ws`_Hk M2~'sdBC whUA&3MChGgϮI:٦Xñ1 μAMs7,X̹ ɵ,rkP,s׫fʂ%ynǛ TP&dtW*g/[[G˫{֢Јq}s w@e@g\k;vymnL5QXo(;qf #p@+iÍ'ڪߴϑW ~W}$XaAjNY̟Ջ@8+LPgZPNE $ܽs2K]쨡 DlSfOQj ًZYYa,/%,WOeO2AvץC'MOGx[wC 7, ަ!% c&Ƈˡ< a02=3a[lJ%92 eL!0^sχ*hE0GP{Ʃ^r߻<U?XwrzU~ӈ N"gN_#*!]?sY&uQpagMh0SiI'Dz[>:dPw.,B;"QIX!wi07&Y R+InfsdajiPSpa7p&ܛH_=>)p ,qeWayk/1+mc&\D] Ng@}֊W &Ksv!75s@.F(2*3,ڝ;xDQ%_P˂eRF,q*kUy+^z9J\ߛC#S' =Ө~uO=u~O=%D $OWew{:ˠ,<[iN =/wToMA>]9TivJV:(* O`wx: E: s,1?HM{:^WH&FrxRR'Ť|Öl5M4ȱy u,L,U^^.Ƀ̨cSs֎! Ԃ;?MD7A]O)Gl OZӁ$;!K%q̽ʳ6 Img/J..Le`";HlmUt) Uz>C !KP.p(Q}G]0yҸ uq鍅T|H[/]e2gS.&c Bn.HoLJ֛Tj8mWǚ/J|C~lz9͍*['ITæ?;X] 45x=ˊ;* ,hhv/ܴgAՠ0ʲaxPۻ Uׇ <}ׅ{ {hlÄܠL,t4mdh B(f\xGMΉu4؎ru~;[16ҐM@&j ۆ>u zKd>&;Љ[KyUH"_ۂW Xww _;6Fx[CK?[HFªjXӲ6k}>ݮJŻ^a覭4<7c!( vFL7HRQU &ɲJ ^(r~]{pw2 zڡؠ G)R/pֵwsدyĸ66Qs|jk8V4DkT3xƶ\FIͳ7}и ,ܴ>tSӳGдOI&g>\8)"S) WJX3vTP,}ڗ `5z$?}4S~^d{?k D.<Aw.ܙ^sM "8(d]n#Q9Ic&"WҬG7}.x7%s zb҇.#ф ;Ϣ 5]AOT}b$ҿde1/;xcv1.ODlAH Z@JoHXZž~hvem])X̗iAAZIEz۾Hy{خ$*i6W+0 ydNUczш/.E֪LL G|pU=)JzbY#sӂoS2235AZo[8B ?!;'"+|u2=qU5gV#*ڵ` Nv _`邽wk]L.;j1襛SH4kS&?:LѼ'A$;S4BٷsXν7c߾.nذacI^W.ǒ`۞+ѭJ,-G.9*YX?7[۸r˂zJտ & .J1E55%z;ZbEIn mWۋW E+޶`(s>K\ܤ3lN.>AϿ;T;oW׺`R0ՂCֵc]kSz:-\* N5 n;dFo!aqA䘫@Iu{7HDkSܛStaI,KoC$Q7?K~۔w+a D}{L&f1^.LޤM|,V.FJyE@'8n4xaks%13v%zI !aK,aW_8g8*\hfkKcˢyָşU+p>MVyaÏ +1e6S:;hHmW|wġ<0H-l>?^n4ir;5te<5=+"Н|Hd7+ܲ1#i+}IFϱ`J0]hȃm]40o/^Oh/6DŽ=H_ ޏ'dn#bbJ<ѹFz@; XM+{:#ɡaZ*.-~jP,oNt8Dl77<#}H2 Xl K'7Ж{pV-2k!kF("W[ZSO 3'{M (hoT\'LF2\^[J͖FB5'WGҚYK׏4@ |7x~`{ߑqQǴ)%RSAS#?LAV`+$~j=]07V]e?o÷P6Eyb~wH/vPc o!i "p X֜|~%! `D}p30M p1>XƤY' =,o,hX`g;ft'=YaW?]ӊk}8̾s1g[)"xmgFHjJՔE\}; k.J/S;i&PƩ!ʴ8-JV՜09QU6W|^O&_ܻp2WKrʹo0RϜ<U E!&XY˄D,WEX-bq'Y\<)G ~,@% 1V UMQJYu;ܘ(6zUXwH&+7IT: aDx* vՏnjcRzA+U6g#[B]n W,D S@NS%)> `Їr&D8HUEX^m憆iJ2CYEZ4De(i'#؀^*ѽf?V.|CL2<1P9ra6x)2( d)ۀm?@w AظJ `0*[MM -N^>L2g髖\Nx9\y~**~ UE&sE)Rm˭\Y6ZN;jh1h3|r2T88mm)M{\k-nQ">w@;bOu`S^<>O[GKs2>مi/凹U@Tsꖒ5Q+r'i{wL@܊x1 nV+XTɆ)?-9Ktj )}N8E>f,F(ޓcC..pr9%wjFΔ @E ѓh2BICey.6N =og=Fpg+bFͨeeZ$hH}q[!9RI,|f{ ziY `-OCK8|q*!dmuTӝc[fU'Su m+Ђmgh͐2CjildV$Uh\R:Ѹ?_\ӖFJڴ jR۟|+1߽x=U8N_Jo7!f2qm|AnxPF 0' 4ɪAuZ_T"*4i ^ `l˫@h"D=ҿo|lȱ<=OO/3i͡hTF#/rha}ҮzbFrN\`ѭj^5&}l":kJ&IeS7EQmZT v9ǘ& R!e^W,vz-Եpmη6&OW "2-zu¹ ]E KWd5n5/t iB($78Q9uL3+~#1Aa91 #-*osAyF7$ 0.7&u"4 OߤBtxsX\sAf1!/2H]ƵL65H k7*Um?vBVN ۜ2[aZgپbvߤˠiiWڹwTUKN2&p<6.+Zȩ#~.,8 UcÛ V"!8Y M~v[ P׋͝ܥ ^5\tV}[@ CD+)Ъz;P.1$D ԽZ_6~] eZCbv/a/}ec~u^ mB}$2p3dВմPGzNc;:5DN1G:x+Z h4 7?8G-~;0 g˝Zw"ӿ|Qq[Mp8)KxܔhH:H`TQt: ĺ<#IVŕ.t4QO\n3W `T8|`T׋!#y;TO ]`/]wghʡi_npRoKqouY08yq ~&u4B:yB"aNL}0)SվQzcxc 206%8Wu#4A4Yp$OaR9mz5./KUrGt[x 't4#3/O'Ri2QӔJab ;a'a$K[8~8A͢V>_|NaԬ6U] u8hwdsXWxNDP5`E6$nt 2?0=0IX@7Oq'fU7u/@{ qA ,ZFOmrxEV:lt|2?Yl(U+-v_El 4VF5DǑ_5Ӽ.uk.t?<)hqx ʶJҺ:!Jp8Lr,1pP0n"bF#%jWuڈ!voI5h!E<cW@H5]8s+Ұa%M4dO598=SQti*6߳C *RW$xsTH]7ȌgbMvtv$b`v(Jl¿XͫUJ)Z 6ڻ׺k 3>ZnGnZed"B]hŲb6JARHUJj<YWⳙJ5^ U.=n%3kgٸ zX!74 OТE;VޞEYX"8-Q'U16\37 ] U!p,=[ wJ{e˼ qB-{'Үc-F3 o#xJ&%iDwV[3 3 r\-xz#; f\9@֗Ͽ=K;ڪĘpyk>Pyj$d=Nr9!2̍Eh}|,otaqr,( 449[o/U3g+6a%`8N ;/gQ{ЪyxPUݵ Bn@ (h+y?".HPc*4W^wAoD9{ċ@^Ё-kUV"wc_6gwVX*&$:rIJ&>5ɘJEѪ{]stܡ4 G(Ϳn&mXVA@SS6J()1Hast)4ƽZ칋8]j}= \T&Z$ᰛhk~!M8Kt\lɈ.M' Js[QCBOG3 )d3]eIsxeN;sBis yu̷> uB"k p Y}MĈm!3:`Īi.,싳oUX~Gs\+S\c4sūukBLA?9?3tgXႚBň櫂z0f1wG Hn}!E;]EHxިqA%. |h)szH>va$ɭ\tԘ9Z}ɾJ S;w[ChuZL5zRV*Tph3l%Ub}% 1 S OϢ|!Iy68MVmf?1?wdv@kNΠ>AϚD,|nSjvxg5?a4VT7zX Y[c]SYjl[D{Y4;QgTTX@"Qף Y1hBa0d D=sV`)O[Ϫ! wnxN+F@(< T`¢ژrbg,bʣЖj>P0YB `XN=Ht<*_d&s qH?5s1MBۅT}tMvUCsVϛT|P7d~ 4,1k[EGW?0 _ 6So|% *}'c}IαϽ{kr[$Ec@DzC8#F0(&y##0Œ#/GYgU̧% =+-uߨH/( _:Xd@5 3(g~%Ž xcVFꛊHT/,eu;Fρߝr504kƃYM.C-+N!]lZF™mkHe77ɝňٹT+ď* `W4 ole̍`3sMP'hO97IBؖ2w@x7]@\oɵh.s&J+oa徣24:&7T&<gZy+Qe쀦C,Vh"ep ]:ɉfP=L6BK- ]$>w0Zv-\y=CKFN"yho'֍/C!3t$ ځIؑ'|־J )-FHc>c7`ǎG=rx3Ttc1rèX5N9A\ IUJH[)]> V\9 @'}dbhעHƜQ]Cg C#"`z8Dye.ҢȜ!%u#Х =R\uPTtyZb&iV˧zĝϼSuw̩7u.ūzk.=twdpMCYbÎ ,9,ɼ9 '蚍XZkOZiNKZan-V3PĦpFɭNV'!PU_Ӱq>p3cؙ3`SB6in﵏<ĸm)`8EM|j";̺y99ٞ]~[4TL\NHN=e+MfmՆJn\|K3VeBz*k^=B $ص)<BZUk,*gFvTW+hUiwctOIe-b5 /L|wFC&F{ę: Ћ)d&iuT8*~+:]͏.weHaTCW>ZevФT5 *wiCԑ2&&C|ėfJx{B5o1ybdS~Z1ukq)cm^ȶYFo@:6)Ȱ[<az K .\E ɭ|+#G'8}|+x &TrjUtn;/p.?` RѫDwKD jwzkcM^7]9=d.E8e43*QP{43I DaD@ڍQ(HDW4S ބ>y +`N !g髒 OJmdbuS,oQN9L77j,~؞r%ѥmИQgنh ?39YS.I{..3UclC0~DqNF L )k!0~i \e.01 ن-+Eop9<;\őˣb %0]wҰimaS Rl{oOsy~YUrOw]܄G:eh7-%㰁z((\0p1Rb v'Fee/h2P|6 ^- T i}vIL +b9o`ɽ. D{\LkFZXXͰks̐ tAEJZA&@S[frmFUEk$uUC'2DW"FK}rн*T(nR#gg&2)7x pF(V,*? Z.Rg v1*7k'6xQceoR?·a$Ԝ2 %݆?gdI2-= ُvxx[…:ly4ϡ-GfgG=E~ZZF(@ÑYlOPO!B N2siÅ%JpyP/TgO˻7 YG /ӊ1RWP`kf+2ie? MrUmzKXV|s?hא#Ho+VGY5&u{sDU1z*ß0N$~/,ƒьhowCkp᪼xٖzR>X$cT~!h8) Ta5l.3l|"#Bۃ&ji|ig4!]f>;"1^4]>ŭMHx{qݟ0?qPNnlOEJd&(iR3m0$^b)\V9+|d姮UoNymo'rCANeKwϳ)c(}G2JLoIxCvʳ.h^6#zm:趡 ~Ոo>v&Dkh^ )qMCр0d]>D ~.gTi5_ցQ]1<k~^mն8.Qn\!j5eB.EoGATZo)4 ~ Ȓ^IM5uW\!ۏhdEZ<W*+J٬W"BGT Z->zK_tWEpRhǦ<1pזy+8yEV>AG%U4?rƤ{Z`v/'L˗n*em#X(ܟ~j24M}Z'$|?bUK80PrBq3p|ͩ8.mTϩAjыI0I6ynZ&U\<&]Wf +tk\\Ŏ\_#uo-CxozIAf{hA ĥ/+ D5Z> rKc^T҇t8x?V-'T~f TK[ag n)Scl ?k*S,?'|9~خ ]t< ^oUD _aQ>>!KtT!'4A%Lsb*o/q(TpnñUSk>ċ2 N+K!&*\z9,T|5bqJ'p>ko|Bf. YڐNBDK C=h7'O ImT7XYܵ칕?xz=Mߣ&&Fvu߱iߋVjuE[ {e{꠱K8Ė?8a01$"do뺅/MٴGiN6^3\[ez% wfvX ?tv자/u0!+G޻B 4A}mL@xYH0e?"}<-Q {0; T<`N#HxOΒSdxߢW-_ BQXV޶< iqTLg,$(F,"Q0%_;0p\":;IW?(}#KB9mrBdD(]?ZN`dQ7o?KnMvS$HZ; H范'HiȿJd<̀iM9Dj!H&\䛃wS2ĊKUQ-}R49*gªk @E/S{`\w͒U S0^*PZoQ -ى(ezyV]c _,>u*iFr"y*S9U_Z"Ds7 %9"PXO| AНkζwQ6S$'-`Ԍ6L2@7]MMe󟝯eK<=1|89\LRI+#:mjlN|_h y;LN/F R DD f/XnJ(^-Wh336 ~Mg]yB_.w:K&o%w1#9VKl!Kj#-*jY{EUsXz7=Q9N%UG6!V -h_Co~6Z%ӔL?65XԄpB~hѿ$u8S[8 U.Ni/,;ă"$2W Z <ԝRkqJ~ ҴD7j SW Q-$0x UV#H%pQ7٪<bT$;m:F >::c3d2;+ ɶ4SG}'%.>, ?kQI;As7^G)Kl0EtI-ڲ=R/3֕utXt!f} 06Z!e8hlȅw 6Y?|X915 ,Svl](h7E̤;v qG6J6T-.s'tNlCщ[nRoӞCr el24D"Q8Ka)A&囍*Zxj͖YPx^JK]1;Зz-7sp`OP'+gϼ@XI\+5%l`ʈQ#gc =n@~ \鉽#l.qT#OY !}z;}Ļ5XO1cQO͙g2j/홸ycRT#WFMTf ޥc}y"ɤ·NunYxXu9\д 1J-٥@آW?w C5n8g+wb/)LTDJ?$ s1l/MhV6ȷcAu_Q {Nr>:֔7Rq@ q]ei,a;j2+x:f򀜘GғLeB{YxhOqT?ZŠ/j\>9Y(!$8XKy?b ]oڌz1?'?Z8`M{K<Чn9*@=:lQaCJLOBCv_ XM*|Pq9PL##mzܛT1Zs= P4b4Tw 0o"XL@yjek:A80j4$Zg̸Ƒ1WfPq\:'Cj,u U8,|Tt7#)+gde?#FC'i;z{B\Cl<< \CtzpBZ?m JTU`_4ɾdtQ= Z}*VJ j5nMe|/^zH 3 oWſ3]u&q\TZM`#U8'LPG#kT*I?&tZZ{C&>pn#>h޹Y̕m֞10nF)mټh^\NDX[[Qv/|9nd*A𜃖CΑ;B bR3cYHf+6iƷv(HtMKN4 b?۱耿_9:G"yN&&4ytFͤ͂:Ǝj-,gmdb9OmaV3eK`P]n|8<ss|0wQ-4_6M&,Azr ~. N 08DߏLA6>Uj_F "g?Kj6v,@Atb'~%lRͦǮ3ulћeu(d{)+ CAj m3vW,!"TAsQƱ lL*Ǵ;sh;:Ta RD.-TXneg̨ұщ#X%%-tC~ Ը9̑&Ūnj\E;g"lXRښzvfeOEl|-Cv^HGtݢ7mrC kd96gtNl .QFMY>ކQ?똺->M/<J,~&e!3}P'Y"ek'($Sˎ|Q2G|v3ĉw4kFż1mU , W ~6/q󀜫XPx!gӝbtYrIˉ'D$ܓ-nG^2t7|xvz_U_MP@FsF3_T=5ϴ]1کZhz삗`&΂dzc(;Nham?*]jw}cY]SU: PM;NuUh]!|9? 7$7P +R:'%s齿HhT"S)ӛgb2fMIާ}X*s#j=3WeݒRV4c,eɮkYsx#uC) Fs;13D $|1J!w80:,' ښ 4Po#q]K]+"'sxQ\J\ϡorn+QYBtiBhrH`Y5' @N 宕,.cg"+|}Qʅ|·]q+ 4ޱ@CQ+?cgH[Vm&%B-H|Y4寕!lqXLGlvs]^DЪ!ney{*朒5H}t#Y.Ě"[kd 3ĉbc{{z.Vh c8.o6P#iғGUa((<>JT 9(uǰ ov[P˳`VR-C !vqGNt JfmzHB2< 0k0D( 3l V#& w_N0f9Mvme2ܳ(f'd4BQʟ$(:Sri ķ3llxquhn X> h:S{<yޛ_1- Si!{Wp6'R4zTkz!Zh߄u8ة|~,v  g0&Z B m@T@$,^0kǤ-\ B9\wC<fooi1Ʈfjof WfzDRX IP[`yq/ٯ'{nrZ3[KĀj_Х)s Yf [aƐHb?ڌѬ1C}¤&QⴰMT #Lyx^X@q[x1x_ၝP"֮,q2X4OxT^Y ~82hŗf%Y9mWD_*\m- iu7,D8W|ƫ2YvcM[oz[RZҡ_6d߻YW8zTˡxZҲV!V^F:^C<$C/upW˭D~O37}/ j\j'z0R{s,|Ѫ";Sz7`%L-~nb}X@Y[ະƩ9M)) _S'Ycji<=/ڔHagq 䣞~AS:ǝQ.ZHH71>&р*85 e,ĄρUvv A׆NlX9c07z)#-0'4 Q! sT㥊.Lv홞}vsB6}J7$"Rr!Xf hMgKgY&ޫFKf!ӆt+x|f =kl ;*bst_8T=eR y1XCx^dT}[E@wVCo)vә{?5vZ +\D>;Tr(b$qt,j4B<1y &=Ʋ.߄uOAD>G%`FN\F@Ў2Z}@2M2#ݽP.r 8sѧH2jIx,-P<\dK~4Z ~ji"G>if! M=2rRɻE ffn N]c*Ȯ&]/%:`ӭUgrLg0FA#blsu';sͱ$49P!JH%7T`)dߘnxaH~haՌ@d3vi4 !l3~`40=;,Tc.AVIhGsJWSy*j4W 0.C[L6oegI|G+rQN6$$xAS@SzalݳLhL0XqTR q[ۓd5a(㚨Gz^tE_E.AJkh-JJ?Db+-ޣ\@ mhXݕٜn:Qd8q<+ 96iX1:#&dap>cܸގs5.f$g#4xM ]d8sV 22Jv4r&L --a   Jak YSp`_ , vWCSCpyF\!Q݀=i${"Y0p=uBϓebRiYv٦RkGen?AZhʳ:#6`ǂU[D6 ֫z 2%`%6Vct:lv e"˴լ;('[l2V\Aio6+JX7tⲀ9xqK $C%s{֠yRƠ|ie<$D%C&\H^%|Fi7<%tB>1 M  Py,4aX@ +׹0 ꮹl\-~zGBJ^ts]b6/,h밒:/>_T?\| u{{;3]c3MP $̍bv+Z ZzU¥"P ۹*(ܞ3P^a0w9°c#%|^|W i*]X$sZ6[y5z>P3 CDXpS1_ UG#;G#, f!#3[} jŒh:i?}ޮMd3( r ITa_y}JJ7tE[>O2yb 墾`ga?f3=-iYXQhY`ˢ'#(xd[|ed KWu$'S>B4rj<6@#̟(52S'|{ t[dZl)ԦF" Ò) 'ixӍdBfD0mt<T*lƌ[x}&l^  FHćY7]S5z[_uudRA>F%JN;q&~ dz>vJI\<\GOmK珄TyUz O#&4@_ pLv3:+*'cs>_ ư]#&q8) Z @ MRuSR}a @mW?0_?9 *_(wB{C V5)q>yJ?oF,D7tiv~77MR f@L.['ػv)'}̮:cbRS'vݩ!+ׁ-oWmNZZ6V"mvy3ҹeg8C1W94}$AGu_D|BM0茒1"gv9rSф u1,WM<2A gS? H1 MI{\,2eIʹIGe0Z/N>&lwYh]Ρ,i3kfLUߪ T7pr`:j6>6Zuw@1ISLy3xr`-糙l@\4^#3^ʸ\Åє(0$9nYqN$d_.IJ}ZgN% d]i?]ұr×)\zq#d'/Xa" +[]mE 4"x mC aoK n3)8 d8;݁ :oNUf;J3HqGvz;CQr7SV?WE\MU/`JXo 7]Yf֔xuSÚJ}BRÈm` ? cQ*ve3}"%LyJkoӨKI[v:Y[ߵs\`՜6~wR3 r#Q4Sv7wjgݿbp]fgAB1TjRɖ4n3uA~ VM}"] @oi{IJyjR!S6Dkd7qi J\=G;ro3;/J-Lg@OO0PRbI#ͩg3Ek/STnB"=n!s4r-+*J=*揤DbI?\0.&Z¾Deͺ/k>Ӆl[}p `JQgU:uv^jh2g140O› >, '9Jwܝw}hBr T7x/o$m֚paJ6A h|&]ՃZ<^4֙싹 .BhB_aӕAYePrN^+}Wc#p)L >~2Anb07d //rah WTqYr0A\=,+7G&@{urYLn֕8 ,e ZyQD`;VMvbV׆ |HDZrK9eW=mpn9Iqڭ̫8]ngg~O8L6. :_.5A@6+9Sqy], Wa},3;$5_ 2#mV4u/SN/q۪8n9%nƄ\}kx6< +=/ r $37!ؐZ +d*/_s¸RTC!Ĥ_O~,mĨo,T5}O4ЖʸT2{!(H,XqYIql'.QeX֐U<kl2^lS:9S_N (\4DeeN~vK62vs35ff24bؚy7 -[JV=CD~&Rba&]Kgg 5-T:Gtr /k܄h iEԙ t fpR+·V9YRBHtYHb،} "W70N> ڻΏ`7$SYJ9La7VUSmŌ&9>(t6Z5?w(8P|]? g?/SG=(&+M4s?4*[uRIwZf1/-_&9MHm6dx"R)fxJ/c'47USb@IjAm6TC=S5'xRtj{~~bq}pRR._BDyhBsp}>jA8$0 E*}ƾpiJ EYs}O=; PK4蕏L;MĕGV-%\{X>+-HKr o u%0OLڧ*E0뮞؆ʅL'v7L_K4':4Y s{Y1I6`g8VFE5Ϟi>151儴ܫ{-6fpb)jG !˽AY;I_݌ $5U @tLdf6!qђаtd ~NfduN(c+&pys֛%d0"> j O/ F6+dIՁL/T[:}/^凘j.V'575*H1"BSyBD ֓5A>W[/u'" Zd_9As:uHSopn & l`T3N(NlO9_uϔ"ϽqHYyB+;%4u̠|jpFO"5D=ͬ7Z@rWM5$typzz%,֡)c)i5çU; P}%T}4wP<7rnڐ+$Q!\oeC&9ܫC؍Ƚq d Zt>/%L6|gfDEބZ9_ ýtELFԮ@P"FH_ϙݾK{4ࠬ|'©Q̋Wi\\ogunQ :|aiLu}{M(y.MsɃ¿.+MugX[Zz籏K)Os7 2lo uG6}pc(QXs/e({W2d~FǓG?wox ;N9/_lf:<' ,]cҕ8 /%֟Cx$t~qiZ $h(L,Ѣl/C}GרrR7ߞB t:A:.$ɡT GJ"!sӒ7qJK:7yAhg{ϫ6=k{Mݷ]e˞e)[NA~[Ҽ 4)W<mqZnMkkRd>5uZvW.$)&Rρw?n[wm_/6sR-Dz-LQ11K#.)ߏ:|?lSIqzӁ^;w]T˹rrROS*cH&L ZiƺBDPKp+4A0WyDV;q!4''6, i +Vmb#30z& S$?#vA{Ѧb |pE-,D(<:WdYz=TP8aX-ZɰӔ:ڕ-*YUu|읹IKPbWy&~ݛ0ulQ;cBC6/5[hH?>"Ԑ0y> a(PTO3hJ.< c+T@HxVYC1Eb`_EW2%wBa1v:/%o!{FBM}lyDAS"TYɾi =4QF:"ýhbdOA!Z C`S+#.ni8>yvL[Tj:)3H LAuE7]8q5 g8$ xPpa`'owF'i+sA_0*^z-Ugikk"& a'm z'jO}DUg^_A\OkgyD؟H)RX^P;:O1ke`9Fl_[yAjx(n5WQԃN՗ZWFt[3?*N_`9}£45 fː%jD?zBmhMVe98\$+X=;95J]z m)NQ/XG$ELl7?9[_WR2RRO:?Z%EJ0yk^-LaE!F,tS0o-yYɟ:&0J-%:vLa"n8 RR@hx005S3)}u O' rp?35,#%E>}$^h%?`Akb`LWe&mJfGcOi,EQQfm1`9BWb*o,+61 H5ԘYm!Zf,9^tZu`MJGxթ\5A?얹ߜ HB/4}V^'oZ/01[0*d5@w3!2`k_V<[t5rQ~+١`͟eă;E./nlz 8QՋ|j.a9d$ֶ*{ WFjJ}Ɣ0W3$K;㌥Nt-Vb_{VbKs'"c;DڱbA(+)جAw_kOIى*'oҕCq7דʏ]@\/g<StEmX 2^Yo} pC΅_gwR, 6XIꖨCmU۵.q~dnxSgBsHZ2Zeƌ1ȝ1;޹8wGpZ1R'Wj y@p@Kcqwh5xג`za 8:8QhXح=wSpJhq82n Wv%ŌGnc%-ý n]sߛeCPs"GE8z (MK͐YDY`ҹv>V4).?xFKd1A 0od_[%-m}oy+kE |A<؇k~ytEjdMUFt[)zO~jws} ,r`34'orסT9B^m)c+[8|EVfn(0oݑ\<vo +W~9Hvz{ay?y8M1Q*Qu^$t@Y(~W!p{Ӆ06|w@ӲUHYRGO$4T_MP =i;3l.W}&%$m}wvꢚ)b67A̅1Xd N/STgQ^@޷wH{Μe~ g_\&YGu )G!nb>Ve/VϤF,IwQ?;jԥ bȳzY~2 D I+sK5-P=sSyob<٫z>z $['Z.R]`g+#˹,>hq#l? nБ2^<U˴U~- ʌEbw!D0iI-Iw'X)c"Y#!|,hsHkȮ f.S=n&poJ2fĢʥWiat8tX"?>+DE` ye<xQʕKцZ4lP^Ci܉ڸLMլqKCmA| n);4tKqҀqxK Rl;EX4m녔kQ {ʫ":62n G\Eo}Gr:drFMT8NK3K:nvcHȬ]/R45G\ЖUʃdy-M%i3G|n/Ml*`%U 1W6D߱A,:vm7:]97V&zW~Pz`|t\:ϲ'1H,v`鐢FsfGGIz:r>/bV c 𔧧_fC)cվ{c&ye7W]G1:'ҟgChN.nKhrE+vOHW2>㦚=#Zך ^fgJӌ`aR8n~0(Wr2ۆoX7/W +_n[!u=^#Li^͑-#՛~7`-6)Ҫψ: qfHF ?1'5L⤨WmZ^5fϤk%G?cjh@pf81,h)7Հ˓d򜊁뗭O^p]̒lȠwՎiu"K`&kw-XE/uv-Й|r̨$ mJ+]U~gL O lb.ͼK 4Mn4YY@< "h7ֆZҀ'{aĘhF˻E@ #; ~h~:j2&_ DՂ{{v{@Ǯqx-lڛ؆= ^1z: x:M﹀dZDk; 4K׷JynyB<J+1 Z0ͻcP|nkW!`b!Vv)Y#̖> .wekPs. iIբz;ޚe @utvZ9c93d߂1nj̶[t̔`sL kj#E.tA5eD`OHmn mdDjf{%\ȝ7`rCYDg񕈉jA1'|#-E -yvƄ=vC/D%zY R /p+y׶~6[4:K7#(ziR*l4-S1/EośM,k$ )c˂O+xZǹCHn fW,v63f 8b _/}p!r Ɂ/X_`}*HOIyh!]o^0D*S;AoTRZo e)ٶHlpӾ3`E|Kc9HʢTYHacl7 h|X `kΑCЫ$uTM7rt9Qʰ1 :_=7ohgH liw]#ޅNn;v9^- >aQpQr4ӄ7{$"_$F-deC2,<R3#d@>4p 2L!%uJv+}"L.xр,3$^饳7Ӹٚ}VtNOAfefH!bseDeg16AFB#( c=[#M!N+/lOy@wf>Ǟ~v寿U#CQukl* E=UX ӭ :>_8Wr()Dbk`o+LiVClJ0Of+*y̖>P l̳)]ϋ]tTt*dNsg"0JM?4u*<5FRpZ kY nz{;j ]Z_F޽)-$qQ(nd^\e0lUZ#PG&H9wR O]ЌSʫIz۝&J+ĝ2P \du5Bڝ:qX5v"2BCh|ߞɥ] HT](# 5YcPW=k ʣ!PgJYBZrSmݛ#g7;8 +xY-R1FݟOz[|B!GU]IV<7&5^e;',&3pڵV\K yUiHg`R\FJZ|TΒ'rtBsFfxL T΄#1EMvBg7] m% }7 pRW,ǑS)RAP>󑱶evE"b_5B 7 :$^o@+)e9l?{ڿsW~˒K1)s;I\{"{ D펪 ΧC3a3EշcM5hy^[߅rEMmTjza+A 88,-%Fn [d7_ "6,̇%'$A2O\E<^at%Ruq"$ӾgowW^$J4"^kN*(|} )7\DJ#;z#?E gG&cZ^FHfQ&cL mwf m  vÙ^̒kIycqbVNQ*M/):32cC*؟9 QsSaI׺jkq̙=˓-Fe^`54d X}M~F+Y)w"tsš6sC~L9s@9]lpk/w.$nZ0Ek8|+.p7zvg7fx(6OAOz9Ui]>GI]r~Amǥ!"MRgwB*ߜ~AYG-vQ7(T؁y ~+Sm5 .BKҔe`XRۧ b 7kJ>2M-.{}wp3.aD 4=ĥ]]O J+v1P^Oa4_{-:,~]##@XXJ޴'Z5 2;Y@rz?)nBz+|+}7s:Q9;j*RZ޹ܟeS(OUW D:gzpzx5HخWbB2KZy bԢDse`&^j #8f ^Ici*P0oKr6KUogTYg;v QW2ݲы.wgְ*s>@C,$z My+<*$ƪ{G#,:Ä5fIEF~|Ka򘥢H:?W;h/XiiTOPe+v q{bCn7mm r`7G㥈1"rYUC cRu]l$0c5"DZxy _XY%[ݽ i8 rK uUPkc]_6"1#Eȴlji[ʍU([P^6yWJ9Qضč i>mbGƹ0j__ "u_C'7 9{ËױuL>M#K9-D1<;LMg@.w;f}8ϔ`MMux^B˛yLX%;.Va0+ܪѩ> Ts y)V:d*,z"5^=CW Zȁv`c +H6PHvXt@?!zx|B'! G X$v՞ص5A|/(xg@= <` +Reu3^C$6^ōXt]0]f2$L[8G` D -M埇`Q Pox~k}8'A` Tہ&4fB XK}]g[ȜU+S 69Rϙy8RTt;bu ra}?434h9_"} ##Tžte/.{%6/ DRHۿ';<Áј؄*Ƞ+ID[|BMIõ`Z2!V_R*.o׼.s2kq-w 4)tݠL\ZZyKpP/lx_7嗯S彦-J+wk=TGE8vݝn=@gzQv ܀b\Ԟ-+zcķRKA+"[=*&&|+m=l$d9&I=B?EӟCm \FYonr0͸ɵ yHcfX<9jl$ۯzhVʺ)!qPGj}Ll;u>W;$PB9FŘd-R ؈+"+1>uH<7?^-= w T,kSq\煪f_+g&KnTT޴B𼀩90[56SɁ@L팺q[+_$*<:ܰx˾z.@}l aWĒ<7(T<.} Mr~EeKq%PW:ӷڧAUn\r1"Ku5/>Ӽ`m^Ŷ&He+#_1W #f:ew hD? K;e\!Ћ:@0)_wӟCSW F\ΚZPc;v;oYFީo(SnP 6f,U+W^g=xt|չe!B~ϸM(Kj;sU1IhBCv9ǃZo%"UdNewce0EPQ0\0"b0ї!,Xèpq-EQqΟQzIB B0(HPO"ܴY.uפM5uў&>ﮕ0}}3t\5yEWhLx="5@9%bͯcC2d;.ҡ&͌ pBq ErxUbX=$1Ur".*ϖ!n7hIe=+dy(5 &ֲEzMy1@=_ w-D¡<윿b Nr%tܒgNSNP YRq0L:dF܌jRЖ{zhn-P]gMfF^qzf*7Ƹ6)V &u9RMC5^ ݹ-iV-O%U:h"ܱ,Zr; #>3PseCݧ m-w"^9DUAO^Tws3 Rg9n \/F!5?|gʔ/}VfI*XOL ]Ub Vph90m d@~Y+Ʊy)Y==Ü(j҆%JQh+Y?)9:wQSuڟbh?2 '3K/~t7YI7~9y%O|_X$ō^%45Ik6KΕ@=OK;9&:{Z0`A'<|Y0"CXcs};m`Ĝgsgmq)PR7/ޗ :&B<="׳;Q1:f܌zXovُ f, ̰⿑.V` kiӑ)2[}~j_?dsNcK=ѩ΃To^u_759J&){j&5*>1Gx+DVv; &/)S"?-6UNrDjn4 {3))כЁP{GO*4;yM*м˜1A716|Uc' :? EK!kVr]i-E=t%)aѦt( [l__[,UX Eћ}[ΕxnKWc~h*vȬkPۢ2H_1;S&FKuHA`vSnO;dV"Lq]yǕ᭣XU,V=uceYt=5\y1$)ʣC5W?۰%5 Ymuu[X4f4[d_@͂Ṇ^er/{$PVZ\a׵3@2&hll{P6M4Ս+OF?GRz͛Djoo۽B⊫'Ss]AgռT5-Sn)-ބ|o)h@ê uc w]]MU뱂J9,=eW/3ްi&7.<71c3RA_WU=ϼHš4d]'JG,L.v6ht+ ؋Kp#e frSdyKY$zg?zLAV{`<\.x{ߗ8-(OBS1IVZy,\ٱN^)-K*S@adْ/G6M_Y,]=~L`T:gVUV4R ӟZz 1wW{=䬏fyjiЌ ]SbsDĘ;@#'0[~Y ѡ:H=M?e^v#]oTKbMdZzpʹ,B`SJ;`+"!M *S eAf[!OΖFy活l@MKE{%7%6]ESη$09R0[Sq}"$6AU+{6mHev9adp$ET,Uȶg6}fy-ENǒH+嫎Q+svK,]"br uA$B jdiA{gBAR @-iMWbQM%S5Վ]חۘ 2嬁AvR6'4.54z󰸙!2Od`hٿqI1ZqWM\p90SyhPf%zν1u$Qԥzt!{kK)8(X4%r-xNHwC-R擀"$o3z.8et]Y%a+B瀘 2*@G"#x1>&Z=v[5o)Nh~0fu;8Cx#^IWeM΋3?Hk݃-m ΋'8gT$Kt=F?h #ǃ`㍃yOڢYR!箇rcCl4WK"C.(!KHK( @D~ !T: q``)+9BWmFý:9t{Xku`3o> jJ1vZ66zۙVV?='|cr`%nr] D"Nh~(z ATͯIdEp{YbJXߐZ_].U~aLL)\"6daI#Snz;n}Fd-W{ɭkFo;ke5,ܑ% 匛ㆎ)W3Fst S> 3rFygcx^wp;(xL$')[L~9 Ur.T0{G(3Qξ;/zǛݘ,rUIĪSwub5Fi:<\oQgH<{(%3)겨nov~K[ҝd2K`Q807.P^) &,,eG]ĸ/Lxi~[4SXARiO_P>b'n!z8.+U-g Xљ_O>b_SJ .Pxlg F${?4 `Q)^iTN;%VbA 9̯ )'}|%f -]s`o.jD8] A0@f4ვ+uw|KYH)KaN,#oj v-$3bx -ieՔ k Ȥt)K+@3bҗ:ᕜ)_+ׅކ8Q(Q?ٱTZʅ{a54 &MLG뭲y}7m]:HU KWL [ObVAރǓi򵉍fC^܊eBPF1I F1JɄ]i\p3kﳬ-X$`k sEb7֊m鼚g^bFՒv0$Ԙ 1v=w퓋G;kW68tbuѵܦ, 9}%c$NM>aqvݣQp(L&殚]Mߪº@[sDJFPhWuP^U'vM9,º}y0Ɏ0^&f}#Rfg;OΫI:-V ]sfԚs[*uF*  z2GLB)?0 ׆.{C^ڬBStXLbKEI$߇uHti|%IPF3eo e%AY+[췀<cf}ó"I,\kQjYwckR`~<̦3n!6SL &b_/ftPum ڊEEƅ5:2YP*[FC ̭L&QHR%ssPȠVi{/H/'a. \z?\E3 QFa29RW/|~վ =h\W=w76&-K%:lw~phi6tw z/ jQ~=t7qNaM&ĕŋrj^7XgC4yڹE2?@{L$yUbPȩ hDꡑUBMm'Xk Jl6`27< ^e7X&.%lW# .1a u8:S-{'nUG9Vm2n_ a#0ݻ}]YuR.jM5vC9ݵ"OSmmʥ ^F(@BvD^e}7~ڢjKy]*,,]:ؙj&KiNZ(r|=eKSɔWkZU?'uϳOQ?Hm:j\8t&84('PD5f8g\:V2r{nB!ʑ:+q&6 hVhA2.3ȎfӘ7<_Û;5ǽÂ^0N\PF([J 0h|*3bAaX?jɸ1t)Rمdx{Ђ*cPNF:^jQW!|s5#yz)b\]5\BůW`鎓V0w6"xJ=w #&G\be^]'`YJ? Xqn2Tn[r=oJz ~Gsg^=@mNσUP.~ӜGXAjxfQ-znVh܋YMrYт_dZ8H$qaGe2_X^0Xzvc3]AK/b,|חz-bc16$d'ew0lyV&bdFyujklFLP+7p@>}\oA= -ʥ *T#h[EV .˂ƃ0y@ %إI"yJ?D8S 񪺹m5'<G^&T*J:Y;xL0\Q*PioWW7m& ;ĔMrQ9wɟ~X~Im7q8;o.HI:MFgf@ϒwPݦ[x{ʆ8J Mu֙x@@/ };G/RUy X`~(N}2X ?=Gmy%d0P=s1&?s hIK^H5KĶ &3qh˝b \W ,͕FZ[ : Mmf3ѝRНIS2e1llZ2A 3 Լ>97~ 3 hewOBhf:tňF {u5!D zJ!1{ň54p{: d3bKsՆ*eA{K|8 T9iIOe `?\וSSQYXۏXb`S]T{uN3@˽!K GxB=Nh64@Hf:]X3$#]̋\G;{3D3ߩdGaTД㠝1UWu5 A@/iz2Ǧdg%\,Tevyaޕ8wC\?+4g(slbIZw映WR.oQ>'VJ';m$2!| n*SZ&Qd(&&`2%&# ?ri3>tx٥J>;dt>㸙PKfvGUg@cû٪m* VsENSۯy(k&i;\%wEؼ^Sgpc9v .rv`2@%ghGkn=;(?0V'OQZ 6oKXjPoxi0N8e6 *BcҐ&*yZ"X*5iD_K d!ʌ@~U2lLsԌ+^/B3w-Ճc6;3>tA ^+0F-|o'G#>B I-C|(܆Cc5m6u>P> Xx!Eu ߱Ն;qGh1'vݎ*c#8(I$tR/9-E[u\,@yq#oIvPŇt?`Xf՟:@d(z@ [*LӜq}nE-n$:ifA%E&R[}#puLwRqc# _\B%رE~0 :r\\'# kh,bh[9On8,cMT@lLXSCg{Pھ["@;rjƖ|.pζ{.Z֝#qwk uF*+d]uQQctCr%_aa^). 㚝@'\̍Yc8`.L-xMKHkr|j(x#_aӄI*{&i c?nbMCW|a {RbC ~mda,=vy܀#1sa⯭C$tkYha7ުO;TA ڷmsQZ Pܻ4bǬfvk1+pX~=,̫A6nYO)[cPl*+*ς1:ݩtvwv YeMqhZ-4~@{Ѕήw /&~WJhrB8IH!8PkP"MQ:uz~0VU"sQ%[00?e .e4ut'ɥ)zRbΆ*]vy^MNomR-l"#jJuo'7Y$( ]Cl87<ׇkZ esS( G$yЕ.eHpooѿA7@I;!٬x e tcV !ef0Ej1`!w&q2X ?-ߍjUkD|wDva,Ls#UF jT +H,I8PYv3w/i1|`7ɝDki0oJLX Ԝ/l4+Aq}j{RCuF&ϑ۠[N ʓ}VhWH͉^1EHuExl*ګq"_x h9ni[-q4 +ZBexjDpHljp-za L .E5KR~DPGu}PD+E̶[Mr Du'~\![_785@hDl`d{61䔫,V0#] h;D JKf0UK3/Y_ X\ظžzUY|n)7VNL 8 ɎDbNhш7ZT9CEq_uPՉ^wɧ@{#C⩮PY$XA:ƯZzrePl=H$4=EGX*xΟ,9^MEgv4⩟n,o*~hε'MT~'^G*}y@SN[EUbn$O~PaN6"ۇ$c4>Pi T_?@@SaB,`~4Ձ9105X Ҁ|H}]􊭢iBkZ1TBT78aNbE#S»}kj3Sm˜D@=)WJ_NұôOB֒k%-D Ùo*&zB^^8Fė ۓ`YKb=G(Ƨ5)zƁaL! r 3oІƈދgOS^vzo[QY >0h5m/e.!Eh "ŀ m4+I.K:CoCsSŊ~$[Tѫ& (Hbk%xE&GϔPvlZxSaF[ ZHٹBi2W'ECc6K΋4AtEU#[N.8cKzU[7EIV́@9{ģ癴wHh`FuArDڀݡ[;9y>Z\0/Ϣ4(U[b.Iqs$C}];ܑ,Ą88c6§.iLo 7UzxA 6/ 0Q4E`/o [ޏ3aYgI2NXJ&Fq;܊7;.^_KD2I^/8}p_4JL('Ƽ>ugh{V[0mysvbSL$2p\]#yduͶؼ NT,9ZmL*C&Th ͍4b=*H| cbOzh\4ILj >_⋩o>c%~Tw]ΩoJDjxώ<ꊯd&ЬG_&Y4(7$t/f?A_r9z-~شk{]R [,`=c̰!gK9~$ŴLٽӪ6H6baב:F\u G#zq:B1Zth?-_)B\Z )LJt  (+:t{HAK<`ȃ$\Њ⍻K?` 2;i+T `d@0U^GrߎӖ>[{ߩ)5vp'oqS|[XYdR_`.ƠEpC w/]s⁂c__|fd 4` 1͊[Dr}Y>[XzivSSsrqr~vwS>GeF8,@-wa~ij#(}d΃"6O;2=ͷC)t^uE=Q8-%)ou]ݽ x0:a!ƤK(Q/Um1UukL7Szq5v~ջJj=W+fғ8sXp|$GR!2?T~6$Ùܡl|R9F.D^`M)60y*&%>y{WwN5s;%Jφ`nLcy;ad*t[>vu'zUɌݱGq!Ȓp=wn9HB?羉j)> q.N^_xֺDR6R#>KE8T duCmi򋒟fʥzEdpi/:W7FM7zӑ%yjq>r/WJyNB~go7k]2?k +$C^McOyQ-Y?M>)Yf؈z}Զ݇p䝢U_pb9Ip"2:CĘJd4΀:YRϕ^up! Bҳ&i^{#/wLsV,Yfiwc#{DU[] |:`0pfHqBA?ͧ9w^=%DždᾖW 1#vM*\QwgpPsb$RµQG0?Qilwʈ Gs-M Ql[8s֘Ft_GW@eEͤ|vI-ALM]%09l# ol])Qdw,Q ^o+7Cߔ 25WlR5͝v&|ŽUU4C%<sg&{\>}v[0%:XNZm;ۘx3,jٕ"& Yx2 ^Y+$y 4qlu*B0Xe Q u(i4 1FaJ7ْ|B. ۸G':&ygr7/OݤR_{.**q~l#8+msLN8Ve1|Z TaIԿdcVZﲕaD]f x y?*5i T9Lf o^N$_vHU)`c-̏KP*(4wñ&:W۵l e]hǝ*P"̮nDzW}AjraL;4(UlAD z_rV![2}3 2~+!a7-Qg{t_} }_.̓CLC ,_]Y~gVׇklXYp&/X3ҡD>m໇o dGaÒTK\pT#24ڎ8F'{Q"Sꐥ?3(j0V76?ƞڀA;ZS(7 +yMdG1VxR2g솓5DŽj?1~>({s9ߊNF,n輗X1.:MevF4$~溌΀XIJgNh] ӧ1{~piTLPNi1K[=&Xnr#-#j3 ,4뚚-r4Z7ȳ?ċJ\ق%Nc/:\ :@1}apԖ\[+(P&]N%{cqhY+%/ݸ\сx4M6;/D*T~V۪q#Gf;ŀ|xb@Z0 ]3EAj]UFBF`gZՐ ׇ"]A*He OUZ E '''h5i@jp(/ ԗ-ɍۤ54v* 6aXS(>#h7a+ ZA5N܆bKfy5A&cQ}p.i{RpіGu 7:8B􏪁`AS trz340puu˭F(sҶpBH k%G;Yhv|O=.N`UļC[;HEK0mˌ\{ V+EL3J΋(iTǦt'GD쌝osKDHw8NW2-gu F(\2 _{LtBfU ۀpx]YDLZcjR$)GlKCLxRmFId(4~$H EX0?lLLH2lL@ 33$4鰕VV+pdPE5LK9J$[_V58ࡖz.g}@0p,YV_bj\uMw[E1^kE0%0_(m)dTnhi̡i؝܋/gAq#nn9.އ=2y "'\9*Tm*KqweH|Fd84)`fVhFCTTQG66~|yrU?f_Ձ:y~c?!\:kf5l yZL%A}+.n\B㎒f  ڂw{ɇF  z4 N]d@XW8v2WHmN77סrR(q_|`{T2@8W2YxŽUp >GEХc˩!XōG ,dngEo4ٳ6H)ɡվ0Xpj C[Ӑ2ȨS(H*[E8vGwE &t+cn ?r#=^9SE.=i=am*#m ]u+a07'~MNZƀ|S6Td޼U0pNpŜ/Oc}Zvc]d3K;w8\Dy4kɏ!4.QC({ڔw䢲ߌf)qbfqW^$>%cJ\Fqf_q_ĸ" ګG3Tm&t`cC%"^RqY~.ixMa)< h1tO&fqb7ئGH_0O~Z^:AQ'G1Lh4J~ PTfw{K;s /y^_Mmj^n$:C$ U8N<߯b.K´QHDRZe#`0p AɥT'Wɘ@J4C؏@(MAÁЅz,K=`_Ɲ a :)|ɇ}`CA C޲3.@)ϖ7~f*WztXѲPCBց콏1[$9eXdŻEM['3,&Cz1hG֪63Q ת szot%xS"eXx~1DNw՝AV??"%{.uU5.,hJtrNzD;:=(;͋3KTf"#ʡ\+ u/ʩ*BTQ4Y݁rw'k5'$S-SB4],UM|>BS8]հ\58ƥ$FWӉhZ  HoNVb|d<yI醺;F]*lb@h}V2ll>. QWy?C(ZdSo‹)n ߫։ws5R13#LqtSh\s'K.iU_cK28Ŏ;c,K ]"<+EJ]KNelkyc>RRsg1*Z PpuƊ:qL IS B?A" 3$ %( mPYgޫoh`o,l UN!/&0|lMm2\⎭X<em[YI<!E EIH,ƚZqӡ sg;"9]7v|:ͮR:_&&w'}ESoS\ b?n4muh{(4Đ;~j;ob/ w']&MVK!XƗx\vQH]Zibaڸo\ n_sUIĈ%1o4Ic(C[g> QH +Fkl F?Ha qyܐPZFbX!41MPqY6h DB*-(# p 69z߫#4>b:&E22δ^ >*14N>!ѥW+ ow) M8 }s4`#I="HuF,bu2ʁ҅%2ô!u11Qzp@?va4uE<'981/~A+Dn o %qZ/ M&EE/?+%y},@'0J<ȹ؆UFjYJܡGk )Lo˸JKu~Ȱ)+ (1=!̺jnB?@%;Z_a_uC_jD'죧uvfX.pI(efsL_7̼ZeWrا7^#oT³U9wO 8XGԗߗHhg^]relQ D426/zG/VXM$+e5U' :GO0MγsP!>ȹ{orj 7- ?8)uV-u &mf r"1R(Qj4m\ra_F5MP,PuZdE|>@mpF壡<躵WMCQC­q O-"U["TU֢lFg%$xT9L{_oބ2ޖ*Kٖy,Kgd/k =u녣C >`,QN1(*ǖX^,DnWnhvb`UǠR~CՆͰA\ǁVi$?OOi΋Tn!.5 Uћ;y⺼ۨSu3'$u{LN6WTCW4JPs2j B8w`ȅ2x%!ѣѯ A -j[e̍wZZW5L,Cl=# >i4Ge`GiT:VheAטrH񰇺zēSpwA6ٺ$j<*RȁwԜu}`; pؤ#o-xl[!`JX/Lb-I%SM9}_mkz抭@,{mS4UTq~]f-T.Dq2ejg CBv3PO /rwI͌"+뻱LD-⽚-]J1>KQ'OIfNw׺;Yق*aFSx˰ZPFܿhuC_s7?X8LJ.nSfpvF6ukxJ'r*|fBJ)h]AwSF7r5ܟf# _J ^!z"Ʒghn>5 F8pFhOZ$dZ,KIB1'UK ̚LnY))7٠{$(L}|׈ӟ%v}$(2~D$DgX[_ʳ8_4T֗Stn"LnΟ;@m1ٓ80Y”V>bܹ+~w"8^'Jra IaZ y`݆(1/b4QL+tru~A4D㪋1AQ +z]+_%! hbL| 2٪ߋptb#',+i665:__O-4^􅊀Vl6ibxQ OiTpɉEx#u2!,|{x# ;ߌ;eh:g1^&94Ni"O@,Uu3JB=8@KC:H!LH\JQ9uLd( ʆMUD(cۧy/jy'~D$TUIœ7)w5`k&zG\ȃ`m%0j. +cZSH!lh"gC-q0qg^)5:y9"0ӹ&^Zi$ҖxaɼFk0WCz0Y4'@Tx4+u_ *-w\`e` Z43A~\s5gR?? ̇x $4Bt\ŜM\g̳įu pTjd}%TD2FPj#.\zql\vV "b xEȘOm c 6 :RnS7ZHna(o`YN&^ xS)V~S@ǐ\R B?S_(eI 9 cSbRihh|s{]lZSTQ:F4bƋB.`2CO-Yo}h`5X aI !iwNC B_n˹}'$AAO,gO:-Q((8_oѬr[4kCXl!FOO~ڜtBVrPf d@7G@YsWED1_Fi$]S$LMNRݕh CJ_֟C@xbx9k1A+,"\-0 .3*z34KSi޸;E'-GȚq_=.i!0Yxwa N_T',vRBȀV1s'nSXg8!o(P 8KpELŕ"ӛ}).n6 x7UF}rݳ;qSqʤnAU7UoѫcXz) "pak4Y&NtiSPu0 ȮN$pЍlv틅jI/sM!gGx5˫Y! *\+o &LjPAV.C6T@soyt( c{_}A,zL97A,0=U5C9?wG(VW5>^N]dNXpTĈ(,v׻ZӮ7䗇/b| %id*:N?7+EvDv+w^lNj-K+T% h|pPGC q~% +-MCzbKfKq+t" Ж^ⓘ@unfٙ `wwrJ:_NI9\!SIWĀ{wQHM0^7̀d;d|QCz7CN@-xlB^GIۭ63>w/<62,nud=OKZ` c8N yTppd|{U/oUCM2a_wܥX+uqgx0~õk 2k"ҩV/x.yL_< }(;h3DDxwTMD9eޮWv [ `}gLD @B fiC6RALǢ"+U,ztA8Zhzm+ZqZA;_cc> rɋk1}Ө7`>/2XpxS;GYm4aw(7/s/6qw݉15+*!ǛD7yc|?zsF9!ׇKiH2T\WE% #v}$qj~jA,E~eم%8yK5_}~eC&>sT4=2(jyCePz2.5I1]xv}e]uV|U֕gZ8t)^Xoփ~e⍛|MjP_qpiigTS:I5zML(ODvDMNW*( @GPP_QFUyڊ 7%cɓ̖)!  z~5 %+9<y"1/jGWpD2[d'yڌA8hr=2`@dbօFbI;哐P84x qg0gRo^qϾEf'"djIx8O3R낾-E6rh"$ۤK\ʔͣIMf)@\_w<*+bi 38`M+kU|˭QJuɕmGsF0q&]gXmlL觺I6=C68:mi4Ww%8^\ kX`f%FGf?$!jfʐ[QE:hwY¦yF@^2%mPU=ڕQq_B/<^ת,"ҬAA)i2fƣ0/VY&WuǗUOٜ`"$cjE`x3#L!B!mjZ: AzuJ;[&rǼY&}V9*"_tJ9͞)wm)StFBn_,x)yDnc/Z H_5}ﳕ_I-:FFU)\A"B I 'õC9D+U;Lu1Č؆"?zUd,Y"WpGuB5N}a'#j|\4*uK"`wBPgn}۝U LH0LJxAo0vU%کeuj 0^jy3~yd~ `4n;L/,c w,.9s/].4&Օ[eIS7Lr1M e#Ϣge?*R.%Eh}rA9nN9$߼7HI^ˣ]O\bYa봂@AB/S[ώ4~azWwQhfe}IW4Pm^I=o(l̕%'QIc_$J5퉒t&\z Od&{owO߉-gQ,6x}(٘^ZĠ302-'@ :D=;{VǶH#oR&߯g}jqothvΧa"S}p^H}2JLURg(μ=s> RuHw QpE4o얖! \r&%})n򆯃I}0 tC^IݩVVn0C#^f˼ [tߪ?sn]p Z1Gpԏ|/yTB 38xD2 Ɯp|;Nj㬛:QDYbOYV՟?3J7'-NeFF1hBOJ 9sz ~ƵuMiV7!]M4K[ = $6Y\T9~. {$~`QFRk댌nx0^C%A,nݫuۺ PncV܍z&vrwCMS!׀rNQcXiT1_IpNP)WIZO<rnD#TyU,VK̂:yR;ʿf2-55:n旌!4ցP.k ghK4tsȷtN[ʢVEjeEq7趉f2C_{a1 OIABhek?F L1'c\%"q2<=ݽ<Bh*,p>}-4_rJ`ƶgwx.03]T4J?aH,t;-<<{gàh2;vEP-[]P^{m@ И ֢? U<| gF H=~iM7aX&uWcк*u=w"xR ߅i!VaTvckAYD(j↙:h9X8F݅R}}޽T97Й3C+9wy-hU%'s? jvR/kj sʙ*>'^Wy Bi) % T/!J 2-PA{12UdԺG9~'gkו[m7ft͖ӌ(p{"D@ [ʔi{jfMmQݱsw'Tk@=6&KfBw#d(\ %VJ-;S䒿{n#')}rb+p G`E{tǮ:ѐ>kVt4\حŽkd$ŽAܳMMR7ͬdc=Fz+Ȓ #bwO?[ WUkZѦqZ> rUO?3U㲞^[ {d=.~wS\*6$}Eux̫ofكpX y誰D'+UI1 wzL8fSx-X)`XlZM2bU[GԴ@2;N@i38 @b0:u[=Y$觡qy,6䒗bZ-+[e,&rMC3;^(6Z Dn*"ƍMf|?ȆCS$X6Xɪ/0HlgIYחނax-eǤ@'RN{[z +ܠf֢3I_V-ꟴV5${[-lm}f-H=iY{XYW>Y)|T>ρVWU]Z5tTlEϣ+#ۺ]B4k8fQΤgX3[wNIn)L3眧boo\F% ܚz)e;4`_nTdaxǝ95OE¿0Qڎ:h׻BWSNvEl~JZv5Z0u=[Tz:~+EF$'Ys+ Qv4a*zF.$,E!H[&>R@UVA;?r8Eko8{0lh9EeS'?Iȼb!0i7} !o2̨ɜjb[Nq՟YC|l8{%ő9CLze ^DA*ry+g]eE[˿1z޹/gCFLE Uҭ;gDҘцgp$1$ wr-M99J!q|Ex&?1Ut Q[Sc~ eDy=w>l  _ՌtK)ٶ{c'~D|`$pE?Ogf^=Ӣk_hAtq.VsS7:32uU.Dyٿx##Vg9(7Zgf /@u906e\N<ؚE1 0q:zlF%rUX cҭ38H[nZm?fxowEWj aQzWrs2D+sB+88I߯o??vOODN#!3EgZjq\%S$H{;&>WvC؈1n<ꝗ}[ţRC7X%b.JSƝ[ " ݞDBRͦ7Ӱ@(%&{g||'Hpɣ3/cnOX|!Кsȿr^ /i.bnY#lm9<"詯cQ᾵7Z4Ec;`s(o݂[2d/bQo7tJ߆/5v~?-USrSzH3y..gCqNF"ʽifv:V%ѤL7w0B_e'}R6Q\jV3t88 u F ,tRZ!^D`A( $fK(28naђP[ɴn;R ܁of`-hEx;1`2$~q"yxAN( f@TzH@M9Gk>"/xp63 ~')IK=[uyMX7 2gqop~Վicm5҆Bq"{_^& S_]Ke:I L%5ӳIzkU0B!@Y|:cJa9ђo5!t>;j-{s}H" rT?w3ۑM)9:/Npܷ7w ǷC7|BVN7g4˳p ?\>=`:9iO(V=k,=9{LHYÂcHR8Y|+&lBwO| ÅJȵqtit 7hP%RDv=tR/]|СvIK-iauR>ַ$]}뭮QlHVwmgA7,@\ :;gP!#-j2C_(" ŗKߴLvZNN>d kb Ƣ~ :Kۻh O&F'(}h$Xރsq t|=!qU$%c"bs8`-aOH*6 7$LWW^ne_2SV]%sù/5 q,!##e0P zbJ c*Es[7aB.^7_vBg@.EoԢC3?sn+Xl|Ĩkx.\\)J=yP7m]]2&JbW*7z$k\v>/Fy.]|V :Tƃ׬FGMFC݋5ӆLKC|)dÕAO^du.;b"%1J91TIݴuջ)E&&u > D$Xe]I+3-BÊ>_&%Oe](9II&)x )'ytf2!бW Ʋ%ONMqBG+ $kzX>Ey>ԥ08K JVͭ U+44"FWQ0(?_zoG!eEDO%9} % u)ywFTAHqgyEw~UN-);s#VRl0(z=\ؑ,ln@t!ᨐ(r(1&܇r`-(cbͣ(bUOhaޥN@"SξHOVNlSf.k9&ۏgbzIڱ[0ޑH/Knz@cH\2<'0`iz߃D1Ì4C0-ba3'xtaD89'?6-A9Pli4î^?nqOG֥-ɺmc~8Πyt/mu';%k` Bx*2a׉o|$afM4a)hNc|þdQsyD`w O|Uc9X GBRRНMv!e~'[sz^2A&.VXVOhSX:=IO޲Lo={:.֠psx2ZC?P9v, NNȅjw1ײ-GAQ"UD]`w+(6H_j!?FwܓP}y:.3Q~1ʢO60bX2U_ 'kbwTY>Cl*(NX[eWwm{@꯰1MǢ>"|?Ewn@*-%g3]I+½7%tr˱E7ẊWwR12 ȵ9bQRឦU*8 Q_߾lDUY}JnVxp[!Pan[H u@k (F/.[hZ"9CA.hi#ۅ}*0&t !9@T'<1,f u}XA3}>Y[zuoGiW1ߺGuh2'vniܥQfXf6E<)4~nuTs)3S>!v,I*U2V%bK_8<KqPkkja xgJ πu pEJ&YbNXgAdE•Pi YȧUj&d{LSRW'Uvz1o]M2/ X#2JaWP+.{; B1(d/?L?3M0#H^͙6䚦mj[hTWP|ic=6Xmt~o EsKT7gunR ~^nmA"uC&MǠpqB 2w2JNˡ-Ӥp)}V>ͪS:5kX@~\Г)/d9pӴL+9߭мk1'^ʟ}dH'.wCVbHI /D4˼pA{lGo8ΰq!QAX:pXJ~8o{擫.V/`kκB/S$P"|jN/kS Q֠"-,Bd:=b/TAB̷1Wϛ5gIc2ּXIlr#Xo5.xQ6}4GqL+ھc=ˏB'TڡȀȬbF|Ti7Ӱ35@jU oH/6elsq՞ï^յ?D\4~GL@E1a2[Kށwp4ϐ1զ@1ъb8$.ۭSpćnVtt ].>{7\'TUJ[,kU`e~WN9J P_~uE+#]mV6}|tP5 _kz@gXnZQ ;DNzI*XeFX*&<?qn%34`dV5t4YPd܎M@Ǚ ceUGD7YG[d9RԒqq$]bwj9oi- }- ePjF 9}ͨ ;.޼zE*s^1CnDd?n~]E nm*-BE6~9-ΥPnRbα` 6kLBbF!Sr"a(}el*kli'F)б\fFFĞT"Ƣ4g}?j& J *]NHsFZQ~*S{hY"݂jX ?el_YW(墝wp vWJlP;0n3OS1H׷0Q`(Mݤ#J=WGdօI[ご2%HpB*:|ktTO-<(-An3q ѣ׷-=znMɐB͞h_R$a'R"/Z@BS;n@%o;tvmh?:u]Kx-$sm>o%+9>_ŗE7ޞ ?&:J&Y/mѴJ$Ql!ec8҅p&ABJE!yvꪇf"wv,C-߯w3'ŶhqP SraγG*Ut]#qoH{m;"ޱqg`1=ǖۺφ$w1<Jalc ,;6[0Owg˛n,Z׳?X>1㈥$I?Lj8L._ڨ@rt`p((2{7[&3N,ۼ7̆]OJꢢF)_3uOZ`eu 杠8ti;J{ϊ! F `-Orh~ * VwEQķu#D>|"ڥER_˄Io=+ѳ u]ftd_~#\>%;:!8.zRl╨K _{W:@΄4 =ԟ7WtZ8AkkMK5qP?U8z9 ȸ$@/8|_Iۺ{ׂ{5D~:&:*`[*Z@ŻlCӪ`^7 dT+kXE 0zN!I@~wd#Ϫb}zaiF0!lKfb/v~CiNu%KBx5 stM;:J*@)MEն:hTZ; Ȋ]#dΓQ4Rld|Hm fwݴ6S EAּp_ӝ-|*DgŌ؞C;- y0F?)TP MJ`]⯓#8F,dg'8Q)U TOste/,rO jY3#ߋo˄UqӋLC@ݘ¶AmZMD-yB‰BR{/ZӖOY\E'11?7EI} nbjF{ #pyU#y.8 (UVAfUe}E h=Lu/e:S>W ?&l@ <O[2irE[C^[=/=FM/ |!s fCp8FqZPvveLD=IC僜:3j*98;ІT34U(W=UWXWUкz2oT̶)!P˝Q{WT*+qȒ/عp42=|$KSՓPݶD~c)2~Aeh&2걛\Ga`jnA-Dqp8kXxq.]v.~.nKm:ol2SbOm `o'%rxw#pHdm|P ,YFij8>u캃d)zS̭VA~4~{pl9utYx4b>{$e$yl_' G~e-F,fL?{B(Tk8oͣ!Pa]^\.Gh erZSوJс˘$)~6$ؠA>eS vl'3Tl1u985(S"Hkl}l#̳2 I׬!DXh!I6P?ǝ`tAH bڂm@ŊrՅ\U% Di˝̓'kT]Bf̐~463`%`_ b2ݦTBI bqK\~3si͑C$+0Y_Qnf JIMAzA)"AñxM:6K 0b2ͧdIg,2I:W땤YPF#%I( FA0ܪ3Z j+#+ 䍇P) ďň^2<adHyLp^7fsמK+EN$ = U|~3q],/-<rCY~91j[cy 3#,:dG|ecJ =c )a>̕[CZV&LX#*u8@GMOwtoN6INR1m.1"oG[N.A<~/dTUT)$3IP~-v cQ+*ۗj$YHv CBRsϣ` ]? 5DQ9ߚ/KSV^r?9alQ)ē4l_B!{Pu.M?,˯T BC LzA6/o/zdHj֡3{XOɼ֚% η?3j/dܘRYr*p5t ZJX#YܞP`ҎI(ø ï"!~bCkQ_g$K0טp&1w?A}Yצ޶̽ޗPwnOGV?Ö+:(B!DNhotz4Q=6ܛL歅C}g =b.zA>7ߪ&YNXXƿ(*-l<圍 7ŇE4;({Jc fA:Ƅgo~XG2FTta#q+1emڅBPb [ ^Ւ>'Mͩ؊Ƿ5+OJ!C*6 5H~`.|͘l@D3V !Υ$ٻ`;ŲV%_Zj`v=[%81L9^9>a XWF\ @F{dǴ +{_ݮL:Tc87qFϥkV["zHW*vWD`HkH .$UD!ܙno fG>E.p}Dϔn"|Ra!& }DjQAJga 4_lW%bʑ v+K , vODOw/evTpaI{TdI6]w`7+rWi92_jK5j̜)jIpx<-i4)W CS V"YTzH6d7;s W֒+8w9[[@4,m;$҇WM uy>():wX٭xznnI[ 0xMSS;|˝GVԫEһꌠ`H"4 e+۾G dv`O~Z[#F s# -k%9bS=9Ow͛OBO:9q̿UQ[ $JE-$?5) XyK]mGgr)ώLOTkiL񴡮K-yX;/qg~ds/ I ܇w`^^̋|w$o1htuـnn 'n;d9M⽲4]ɧr,vgӼCQlR5aDƗ )p͔t+ P+pR/R_Xy%s::)v5Wɦ1fxc#&MV@kMH~>iWP'qb:ѽa`^@FwmOaHe6Dᩎs8<%SK5goBwf'QPCH$5lW6m罞TcHP\H'gl4dh2n B"Q8Xy6P +r>|E:L Ԙ*OPNpD @)Aʾ[jmH#z.I8pIdhoob{ \RJ}F->ijq8 }`=ᝬgyh&,CBJ_8_UJ2[@]*VLYŤXERdl+BRJJS~@FUγuT%i>C XZݺE3 ymwu۹r4>wd(NS 70_"fOu/Iwjd:: d{%x`["Lg#4.qT_TLhqn\Ӧ˲Q묭JvfJad<)9ОC #'nl0B5Z\6}׆{d'NLC_hS |f$\;gKv͆6DԬ3aH=}%PtP:~Y|!b$(1mLJ7K U՜DԻ| b';yB+v wb#ԻR=b&o_La2~ϫjrN&AT_{Īa3xOaʺ8,qBCk" $-9괈=UT6fGP%#SC[a)ULĤa^M2]θ:Moc(mן(UߎTJ" җU!_Gw+ jәe^ECLyK]?loi2K{"RC?[@2 ;'Ͼ^Ҏ\9ń>#g߆WZC:Iv2W5 a>I^@&,ۤbH.P+&fiD& Ei K:9%E{'r qKuI2cxrY:@`oyd1v3{By#y#QlL[~@ D!,Lw%RnnDskPvqAfu M!_ ȫ+{SNsU'S܅XA`Qr% } ,pshC 69rwq7E#@)(B564A[l[ Tn(czCb'?9mH 4[a\ A_k FKe0!Ӡ :&}yhTo!y %ǗF4Q ^Y@ 5@_Ƌ'#xx'QKP/OLmd[矟mPaX_S:m1yxK kQFTRؿLر LI U\^ȼ;!5OiRZkd㲣m~"D݁*\կEǽ'}#BxSgӥ O(Uq!+]Ӈ{ f̐d'j252ok%R]8-94\Gz-m':OcOM_ϟ&W30c,fd0.P(Gv5wmhBD$uzOj?@HjxdG*ބg5=Wbf #ؖNQ>z:5;j2M7TWbQÈT=`ka,#z EZ) \d#y%pe!֟R ՔWHg¹Ӕ50Yj_?]Kv-kAN*Tv#H8au`Jx=m\T[(v2t BH-}_hG~*㍢%(};>e=˜؊4.K04 C{5Lހ;]`r2E|W }D{x8%/۬#(>Kq6'Zչ>SM^k_#?mmd6@ kctfD0>zG7,VT"㝓&Rkp<7BnDb1#uRtq  UD[[ӬJ{/y0rChb}9U|1RZb^3.ެVgŇ2KΦ'`x!dg#d`hT٤Ct,|Sť>u{0~̝dwND30{rdև-&lI-)"~gTh#(o:y3pzem)R鯙흘MDr;%|{w5l 9O1-;]37٩-(6Kn5d449YvzJ,?ؙp,6D}\i B .aJYJ Ɵ% /ϡY>qDJZ$.\T ݸ('gHq4Q > gFF"~`bQ%bTHt+2v}l@b=?ێxR#/iˆo!0UE8e*lfy}9_ʔMݶ+su}w<{ŲCp.> b3? (|ơ]Jɉ1gpRYe-g]h_]?+$ayNݕ0iDoƋ"HY7>7fLGɕ'uNoA"#N+ (x\uƭcE_ b|L,)UhkMo{Eanպdb_W <̘O_e'1]V=+}P [8Wa hLx($lW ܳK*L\૫V  DeBedjttw[@sR^fE2Ŕ<\ c ?tlj@/ɓ",;v7cf M( -D˯#qќkHz4Cy*&ۻmc@P_:1"R%ߍ{~bGAA%m;'%r[Lu &e{8zPs/ɘnJ;Fj4;w^ IU!.dWUYvuх+\iqZ; ^5Rh0=cDaq8sQ̊j.y"+Zu]Wg$ż8IH 0G K92,|5 j}MWYzY.MH QM=ۛV+7$d)}C.D Fꁹђ"igΰ!)w"L1.3Lh$CV$& s:[e|{V(+>U.e\b؀/#d_kэ50tW< 3 }3w{sKQ[r5#3U및o e ՅR}I*M?C''&vLB/fa3z qpvU|#\e5-X*u}䙌J#7Al$ɹ _ Zׁe1J-`r ~*v}#:Sx G޽5OH.M?R,bfpPF!LζI:bd'xIrHtx6Y5MFW@۫f9f/{<9?Ԅϑ%Ȕʣ/9OD6!rLq 4\{Q"qKۑDL¦wP`UIo%FTKn93*X|f@ZdtK!lz)a*s/gSX!\EqD&W?'\u>8Oqz_R'PH _, G @Xa]0Duք!D?K 17ְQ8D/F6/}}bbʌwQdޚ\a<{Fh\9|(Z8AA'$p/ǤR?qB5-Q{1MCڮ(Vgnrŗ&: zy{i+-VwFB[pdJLN~Gx~Bla8df: ݒE\Dfka?wi9*(AoBwn*z#dh'P/:&2X={NO@+zB7ʴ{tgRӇGd(KN2'r?a,yT<>bjuP YjH(s'ZUL'1[ y V6IxI҉*Tը4y<8˵ڳ=p(|VL9*ZlVomXug[G 0@e[S=)' t64:lIa.qbA" N(6Y?ߵvu}_n{5BQYלO9=5~i*Ln271fq+yLD,Gm+}յZ"ȟ- e%K\I(L"Ql >9yΘeaӐ 7;ڔߖ'PR!l$.zyT:5(T_v?\|ZVZyPRYLCS-5B?VN;3RJgg1Aʏ)787$Aeau: Bߔjp`1}}4b]cJs@ rD\x15=f[i&)e IbV\ZsJX]Ĵ^VfrvnL9jpZ_ rUzAid/_OY zrLA}ن%AjnR]"lS5A$߀SfŐ Wy4w ·U[͛P62ž'ݷbtωN59ߙ $7o) kEB F+Zk8KlI$WBCBǂhL&.ܵAAW"цӛf-9g;:+Pīx>/hω7\QЭ Olsu {kwPy=k^;iީGq:IkRvƚ 7]dQw&] ,XkmҗN`z]6x@q4MVF~c{Iy?;kAs~/A :\?ZJ+q7V}ʉrqa?!J=%tOTƲ[:"IYW~=h ƾBqGb');:B}bA@C*sX׆&x+f یJ/#Z DU]t Aj8XXP⥷'<׈60l ^*$3RzTe9)q4HKr5 A<_MMuеIKJfI]WvӵțRrxS$d=L Q5,F8N|l^^+Mf %-R.N:>6_F5tVpBuChnFJIHoѹ4ڏs>v܁mh؋zVwgVhL?jQ(_WhFubPBA!?{8>GHAF+]~I;f Q,!;hT{v|$r b8nhYq%D*!kdZ*8%Lt4$&Qj yR厕2i?xk_>t(23|*Nqn/t\A3&e#ü]쪔;9b#Pֶgw&ϮbI QG,DvO=vx||1]?O"* @;0C7 !nOCzt3C8Ԁ85C qJz{/#GQ_8,xN`;{cFL}bhRu?+ 3)޼ؿdAʂ.nx/k< N$6^od:|D GSUoCҒ݂.IQ X"GzH,JsT|=\uH ri{_1X /?qKDwK,D8m3 a.J]:~'1S%v\IڳG9XatcgdK!'˅䋻$0BtiCW5qqW|IydZ_9^Nm 4흣.I J°kntQ{9L#@zHʶ]JXqwR Wn8-izPHx^DnI 1Y{hR 1 .swNJΑGHThHƶ_`:dUٺzΞCw\q7ە9RNJ T9l ?K}{x+nYg(Sv{: 0䧫Bb ~{?혙sEW J> ϮJ̈́D֒Xj P >+kiGr?7;6FlWcղ-$ b3H&,̻ϥn5И]:^w~[9&p0@;fzHbN3uPӆ'>7q -F3亚œmp eDcJJ󩯔?#BP 0aEUԐlTu!)D"  1MK1|dd)ɘY=*Dj&1n6Q_WK3ŜT;m*!s wRP{9柤:WZd5vPMը^ak hqY d8Q9R7 iCWUL'"P^G /<4 bP`E1bh"X$ƍAujQarS(dF `doioO6E2ñ@oF CAJX529rL%)ݲ|_IJ_FjO\t  I _v V,h3S9E/g!}?YƇCj@vݿ=8^YPDW8;28NZw j9_MN07UB< k'T0tn^Po5V޶޷LO_$uՏZ!ꚯqdofDFRFߟzOWz6l q'ǵ}_{fSO)$G_]g6~&=J$zMGA2*`mĻ6b Lu7Ͱi b5Y6}4?n iBxɞ9MLI&8@Fj"ffDJPo*ͩ<+vUQ? oA<[w簝e?f-+)14'b*Cl()# j3I[yIVJd٧Y~ ʢNcWK<338+xm ;Q{_;`[ ̂8C5}j$Y`h.NB'VL\&*dNvy[C-.nU,AҭX˯R94` %ޑs|06^a2NCݰw-A!cEgE9GD>~(T"Plħ ~Pz *%Plr \u =wH'+LoqpvO 4^v1c/kU!sv=gL@މ?oѱ9˙RF!|hj{/f9dˌ00V"L"(~C?\<,T+r@QWkg9ԒZ #>Xjy_1;J{S :hXB.]f|`Yyi:Toڱ ) @ r[kB+\I/yh:! qh sfEfӐk8Cj')~[$0i! %7YG^+;y+4%ө}T[1nЧyp ijF j=M w)} u!qx1ւ𳶤F̕ ObtjpMART'NU?qsNYzz嫷ko? bi>q} 05)}FkxR5 ۊЈLhf9]Y1pBjTHlPvi vqCR?uvI}ꗘϞdM-E=}S?L7.[ϔPpH^[΃T$D=]Y`i+iH͹=p~4h|l5*N/Ԗ$a }\^u/T'o*Qu:2%I~Ĺtv+]Jҝ˿\T`b)^5SsAy(^r=dSܷrJHg!J'HR_}9!вd J9)5(@!L~ԜZ E"2wB~\6M Fǝ,vkEyȸe+۔V#pg$xډ:}`U-'?K3U.!^ >C.7Yq:8Ӝ]e@FMϕE'aEalVW]sHyzL&ݳ{utcIW~1)S :sN4HKkRp1rXcX7,IOKԲg (1D_CY4P:qS&(\&G"O-v#,*@cm*g ;1K0oTn;RS4Z/<uԁ"9G8{7PPk R+π60ceVvJ kS2L=<>gyFm7d%Y;ȗbCy`HkcҨ]}?<_gr&V8(!wy %B1Z18E usl?+̼ޢ #> kLH^&_+fz(E~K5 j1oww2ѷLGA(e<(9dsWd[G2dj 3D}\O quTJZ/}ĤZh+ejaRs%8E,FdJ?pt tIḼKH.64 )"+e'}b4 5_ Tg%W]+~._*24Q2:Ż =A1Ҵ (WHOx=>.m-F0l̚ ;XW@}{h{ävzJ SKc e@d(6m@k'PhiEMa9R8|UϳZ08e ++g3*ضŐ;m/T-%Zg2U6`x'AUG̶R]`O LK2["}+ps_(ӷR[`( em:Eo#W_}Fؒ_D']q!wX l'maE5W?~hxvsy#gIڳuןR`b L369[tinHۚ#.tNP 3 ůk5}WHGǘ{2?Go{lHc2~4ɶ&'j'(<5_COEKgwVk@vb8hvUD8I2%bB7lӢf5k٘^~&@A D G48k6H')xUih!R~kƫ btBz!g[$>?-TV2Jw!煺dS ZQb !dиTI’.=^HA(o I5-h 8:.wSa]Cv6~`GҔ4P5ҞY.5'!tʴE!c?>X&vDg-=F2݁ϘeKÂ'aepDf꺘RfDځOOS/!Q|Sx!i$R hJ4'tSa(wwvBV|wWCse:NsC6Nމgw\ge(.~*![Z-y2T Jpz~sO/tT= ;l׫Vy@]f7Ak2W(W9Nb(_1OKS"Fvl>WSAL{68q:kf(q"+Ė ue.7,ogtI5%"Uŗ}Ro۹8x~~H{0ndG'#ɗblVҭeCbğx6m ͅӝ8 w1dgȓ>20Xr0:% ù3>-qt2W%<0ex*mC2̅mt&֎Lסzcda ɬq򤹗($\(tA{9u`^m;Vaz%Ii܂nwGRFfuZ<ѫ!WR>RH85Υ]7) ,a:EҊjҽ yy@gp8_`Q.JrncC CXԗQ3 @|Q ]e.UNzGZkB%CQ.mrm8H(L=">p1vM\G$=KDۗnH N}1V_X7Y# ןrG,RNzc,Y `>I``ԍɀY.x^C7d2M+DDJHm+wl$ rօWO`rKZ,<9(qńAhod_taJ4 wcm^=JT+{pi;**j7W֢E vSLteMsڌdVi85}ݹm8d8&ʙU^{#7\D6)c+a1m:JѺS{R unζ ?%*  YU#?r\h\egǥ6H$DYiqQqELI<5Ĉ_}qTh4C""\+z|XKG,txE&񮂫wM.rg֫pOq_;d=~92-w] 70gsraDO$T|iYoJS[:-CB9y~H*\;p8GSNWᥴR?ٌG1pڄsÏx_<"\5DAm }DxAоj Cǵ&6<|tL3k- aٽ¤`512'M`J   $]/PA[Q4<Ƴ'?*ghwm~Tc f vT0}s6V].ʄG'E0+=hc:J "wx-~qH똋ld +*WXι~ۓUcn4X9鋅F"FRu5^U/A@"LV8=m ՓWjn]=ůȊ7UM"E=PJ r J<:K%IScSbLfC; (#E|$IO0O2Vɐ/Qn렲6b? tugJ~:wcOaR:49xH)I &ňZ}Nփ$6rWb[L1]AN1)\goZnM>%BF1Ю Y⤤@]4),)4R\sEh*]4"].khWO5 B)w&V1o.J-N+!JQE ~#*.xV WmuizMۊ6pbs'/+mD2/=Sh%ih;NxEM2` ጟXpC$ ~|@:H-a!E5'ݬEIηutӡGWSndHcFhvMj@*i!s~o x|+H"=e6"ww=4ajշ$t ^Ղ/?e7>T,EԦS:BkcEc 7s+8meB4=;emȜǰY|0kФ$i&~)~7 A)4I/r/!њ]4q7*Z4p:a-P\s9M%*UzLv*])#Ys[z~A.ھTG"JT89#"˲+Uimy;I"q.[aVJ4b _ʲFQg|cj "DZ2"OtcUe?+Doq }j``gϥ}*ۆ8PZzАAͅx\e}?lN-ٽ5|u^X7G3?fI2'SHYl@w¯ۖOפ6]!nYU ,KZ ghP(N=:PZN0~Oj:E :PL0(9gUJxLpȜŢL$!gm,DXRu's>{9RWo|%qI̬ 0X0;iHZzxlb,?Y_ Ze'>o/m7Cv8n:B.ɱ1wwNIZ=3@>vh_?) ͺ^x7몘ZAb-fTlt̞ۢ@tK8 TXm<[k+r+EO\"ޘUP0_Uࢣ<GҾD{X.vN87S,;1BcvOH՝yP0x yLq`uBwyk?ЁUv'}$N!ɰXWJ 2Rxd!ssJ{%~eb(͜϶m>8]nL`+Ïy[#S`dh3Ⴞuqi0%Tw 'd內Kۙ>xW Jq.ۭr&' C aeB i:I 8EWhM^dF9Y L ME2f\k#E{(%*MyG?33-]av=P[44G84ΦUU*ȷH>Y%\^oOF@{9n'Aot6if\Mk2􀑳hiZMF:'Q6ݡOs%AeulIzcV7ʰKD#H3+Yx;޲cE֌0v{Fu+gR*=Ro%-G:K7b8X3q{%i'znj%snOsagfcQ=/e7SjHkF*kCW.gL@YVft6{5lcEW?زJ?BiI"݆٘m*L;fud\lm'hEvxHi[>3v%jxD9Hߞ{ߙ28B)&cwNG elw @H¡GD aEkLNS(,Nž~⫙F0]PGVp n!?D<*<l'ӗ.t+uQGvuQPɪ 2g!p[jZ8`ĸKw`=NP@< y왽YA9h#p9ܷDs2 u3fo 6uv&푦QɋhD%TP < j%j2ypTB:ꉬBUϩPI#,|j6P!ێ^ViOgjqx3GqZPN./" R"qpNb-31R;W8ٛe6 MB(S_rO:Se̤}Xxߎ mNڟq]~6d1嚉Q/\ ;[6%3AOS39P#"&Ⱦ祔3 ʭZG|~S-Qi|~r9] Bs+ǥĿ8й!t.5K{ϓrnOBlӔʆt$;)U> +ٮ9 \:+^S|ϡgS4ʬt>dP_Z 2KXAg|CSiUa-_A28Fn{j޵F7 *Yf-Q3Ȥ{r/C WO<#uZ1<`Q=Ӽ50v7#gIdUbǿdHۚoD4"Wn=ٹԻlz Vg 'xK;Jɇe@ ,yHPckJlA]&Î%WvA~ 2;s~Ha 6qOV{.-r V* (*w17͓9e'(ZXES$#^^vVom .jizPѷmƤ'ֿt?m#dd J~]Yw"bj/2( tƧLRcRc1<:6' v+T8k^M$+1rGB>c*p2yTNI~w&ih T c g;9*Z9Pdb4"G<BW١ǃ_EK#O-ȣk7=#ܚz] 6^Č y%#1k:伱b@NTۂhi<"*$o|ؾ$˥O>ⷯ7jU _J2LL-U%M[X;B<1aePK5EM}WS|;>gʎl\|,GD6drK\o *nXj|hPeu-$eL];_a=+QI:@1"2_5=[kڅ+ uV9ៅ&7dzKS+DmypTȡ]QRx=7T@B ]CƹhcW-2B<li[jlLU9wRӽ;9R v 'iF?@l;dL(ݏ H}uom'R%0&!mKΘДnk#ԑUZ?_eMuaP%GfTvlST)M2"BoS_YJY`o8`!(Ldz_vnEke1hTVW%)B@ٖNapnQ= 1]B[ Cs!T-3 ?uc;ij {~hO2q0llAM!b3`tj$ R>xYCca2SIpsg}(%/i[")ݛZa aHipח8ybxf&puF\vMmφIf 73 *t@69" R,=Z;I.c8?1Ju"Τl۪QD5UT^(J݀↑#῅ cI_qQL7 ċT{3y͆Af9qD}Rogaͨez ߼zN-%c^h; jRMu dULP4zBΎvv:MKjvegua|;^SMvbb7$1z(1#GH1h6-۫waN[~]k P9te#*48 \5/'(;ZtW<ŬИ)>ceĪ%B`[jDiXI-(]xZIn*nša^RzKLʝC!<8*\{7 @MDRFz{J9; u<.W"Wz3!'庯9F2c=+)o%sELDu`v5>1| PFc>{' h1Bw˶ q9\ش 90^j )!( 3mY@{}'N'1tCM#!" a!xhf~ T+?{x.*8;eϬ_~s`[Uv%jo*קiF ԡnSLO]%-].Kpws[Rz QcbY$cs+NtzD>l=RT,^]58w5kgLR-,(eޞ̺@BLE&~hgdf ;b'0uXW>XӋ:QFnnu8uSS?S 0757_raZpŢ%o6uT[S20r}{c2"}B7ZYIѽ(֐ȸKtՖ*ڬn $< ӣHjS _REGD{ɸ4Gkvnhp LGeJ !y]|q;Eq5j$doLp݉(n4- >P.k貨nSr!r܄ sTґ.iR1Sְ`%6-0WQG6,X`ŔR!2 ߁j5,b_=l$/ަS!4Az '?5n辙 FuToDa:GҠL`LqdyS flxɤ`iLyc4-lMH9Xi􉛭M]OA9"\",?}MdrwV ݮnDD+NOb(ZD 4;QS}S[b`2XX8kc"=7NB^v$L>>x8bfgl@O>G/0Ӹ E Ng#4>bc,;9 w 7NPDǑYO@\?/}w'ۺޓݱ//+J;>h?gth>Hοý,m2h(*yOr_ UU q3ەyRvےb>㬧ʰ{GdGkP3t3CJt?XGI-^v\iӕ("Ixꫧ]9|Ǧc"R-qieS1l5? =G6 1Xb %N}}VUĚ}FpW${7p-#~ w7wAlB;C 5;\,ۜ6 uBfK#0e$ :Mw;t\vOU>'KҠH"L`l[Ѥ D1񡥭~80oh&/2Ujvs˘{W|-BNt~S-5^/\;˦1ޞ%]f#ȓج=@{Lgnߧ}omI i 25N,j A4ꩡ5aO`z4KmO~| >]͆|Oܨ|hIlK&F4 Z .(vN vir=HNgIYd32qX|ٙ6t+2\Z)`S?_NQY%EE%3-;u*W@++)kUHFX*-ʱ<"VggקJ47?脘VEE9i+zD;69WG 9e/.;ٴ3mx,Ӻ29us/wGjӌ8*QLD5܃'zy@G\|׎"ƱxLWruYV 7aE.:v޴U H p:EsG_9eȏJز䆬>F6{yu@*7-R=$ $.2XHYi؃'IeąDd=~4rIeL<fmz簜~)uG6$lDȅo~s*a7ގlYa[=a&Uʼn.Y!7-1b?:bRqmTWXǴlMqAa(*r˞F< v^7&IqeZ5ph6a)78uqT_րPV?X8 K31=gkd v~)wfzxԪ)/G$/fTx3#Vy=[xI$ {y`˼)TĝA.uԪPR/|GAkKZ4ۙ0QwQ(hJzZq0Mjو>VjCK+7E' a Fmk5qnF3 [ԅk.]̢Ϥ0H<%HІEY ?}p K-u,ϔW/'Z O]H2a-/MwU.׃{CX_NS ۤ}KG {/]~&!4-[ 4 ZEPkV,vV388mD '__ ?.u*Wt3fl]S)>c|9W|, )s 9t y*`qֿ `]DG0wi/YF?%5L56n VJs47 \7 RR2'Z>^vLu:0NjEkk*s ʪ2M! SǓhܨPRxDRE|yy^X<;g1uʰ]`;"1*}6E:dʅ *i;2Fڳ{dk PgNtI|,x4@now_eQHH {M5oq noe Ǵ%/NfF6' )Na>=/uP#^L"^})%8e& MiZ²Edo3s""Cǡkh턜x7樽8N.`ؓ;=2ylџ)Udݬ]-cEʜG81K06 銄wMSA-<: dt4^o0RZxJ\` mÐ=K?`Fͧ/;gъ "G@S_YZ#\-\U˽̺c5P>"oݫ/Tat;zzrкz(Ӱu }6ܻWÀO:14V5^'5$e૒RCŒ*zMnOٵ{klS-ZmPt.$˾n=jmz%O;ݽ'c O\E Vϐ7`81\κi&ɓ6$H֙`BrN;81nhUz0;*729l9ycy葄+E1&jۡ&7x~& NDf٧ }߰ rYdIbJMh{^1zS6&< 91"](JM7Xۛ0|k(֙Ni>)hZKړg}Ou$qVDn&[]qz鎸:P:H BA/Ц$u@i;6,1A<,QUݰHMCAn-)ILrb]S 8NII,%R dFt@J<6d9ifٿ_):˳j 鰧Ѿrz9X۰Z*Ԁ۟,ɳr`T|E8Zv luI:M@l)OGHP~y} Dذm)rOn#zT0(1TSN^[ѥ|E`|F~S-_LHG#j& !o lYQj[_ƥj@LɻB|56Efs*Ut'VYV]-ؘ ZUuk,PV{W&.|]eZ{*V>ij*)?0̰6lR>.eѯ#&RX 9ףޥ%Y>톪g1ar~k'ھ;;/uqHԸ>(*5rHC`$ek#!5q`!b9bX燔zBSLYL5nY_+ S|% K+b˰vz(j?JaL .)?yù{m+|4b?kgӠ쏔BH!J2U~BVUuI}z"%s~ۑW>ʜ\A>QM|*7ggE|pnsUƴo VN74Xְ豠63gXSA!ƞZqb71zh"fޕ(Atv捝 mMG ɣ!a?֠j }ϼҚ _r/?Es~W%+vlkjCO=`)˽A[:iyB]rrh 2 136ڑQ&)Yv8=.ʕ.KIRp44w.+ۡ$)qxuUs`U &`VAGp!0%\]ILȿQx:s9Al3>ǣ~6g>C$ GFeU#,iXH+R4k D2`,1o/ϋD4U+>xY-gFV:šFԇF z\H~ifRhqKa[El+U\?A5dasYB0뎑?c4Y.q% |ſX;(C>dHZҳo}IJz _ V2 FvɃkIսSRM4‰_ET"(?BtWXP-y- D~u"M/mKsD6;yu$Gˁwx޹iKu2ʎ?JIփ5ŗ \kK>OI>G& !" UQ5/yd@"pj;w 6ҨV@069k!BjFG?q9̅o՜4Ώ#|Uf@D8M^4wq0`Ԕn͂bU{h̢3Z!gOY[PGJ 2\M}HD]FӪlFQ܌v[og[&O| If3ՉWǫni4 U&6ܛxW3k1âT`>ByKO쟭a[O4sJ6xp?FN`tD6VQW @"nOk֠i$\(Kй@\-0-V.HGnNXI[;쵢OA p*[rQv՘1nχ}),7W;v C&dJ17 t.C쿧PMQ0ll+  2mFv8N}+%8s4ָ~R˂ vld^/ f.^m>xg &y!X#)ψޑFuR|=R )2p  ¹/F`*Q^X3%5-Onvc_'=DZA_D _b]1r qVpk5?>6lĿHkV䕑w38`(D$),|?rojZC Ap ZV Z<ŭc̘c^=/*73cpH_y^TCז5lAm8OJU vNs-m@;:=)Kءa"Qcw̽"ЯDKnC.hof|PDˣ׵TG@|y[ٷ=Z( wbZ9Mj7h=6P hP)4``{y+Ae9M XU2tT֑H|prA*bm'N *X{($zFeLg<`R3ڑ+4[mzi eft۔c [*Y^T+k*oFvm^M LDs)Kmɴ$9"xgW˰5fns"4.*ccZu~ }ZyWD~") f]!#Qii^5`p]X-n׊9̗2$x]D⹂h%m݈M5\w$bޏR#MY Yark*\D8Z4uDPD%+(X| L_bx7,#2oބkfh%Ğ 1.~G!)Loc?v %TuU.o?WȗhcpR(~"XOK}pI;J/UOX '[QbYSVįꏡ>Hu RPf(ևLK{ƥ_6bXEBTf8n<`}ה%K.WJ}qm@/#,ۻT2=Tlak '^!KlFP,ӅGPgrي\kւ2fzKֱkWL)+"\ `0aĻ±Ypzxz,aMB9=͵G9!ε: {C.̤YXάQszXY-Z{VeAJJO1kmk끀r,x> IaM"1UkViRRG/T6"YRT)*fǽWRw1|f?UMxjDTJGM'P:Z[eZJOTbu $|` tmWr8Zۨ(%Ngmo1=4={5|;imyrL,3"|Kq3Q~H!Z!B (\KtH! JΤ2GQҧb!nCyrw0ΛY ypy*_˶ sfzE0*m ;x_!n8VVj@Cdϙk#iiY8i[i7[vݦ|5;adi?e^]XFX ;Ȃ0 -M-8(Q 87+i${"j!`݅+= RwP.Σ J t- ƭ]Z{UeH(k1{SJ4pPG.ݒo/HS@<8 @OPǡ_r˷;^.懌Us"^Ije~fYSNEd KD:?PZhtw#F;hM_ohpgޝ R9zf|\ȑ*C$&e&$5|qr!g ?(O3x3im}DWgvgc LE@"_gK]8! م$wy%kuJRMȾ9uI0u9x3!0rڦXP7GzVSDQ㘠A· 02H͵ޅ -weD KfLơmBH|d1 Tbuq8<Ʀ8/Goq2sj鋊Y6cZ>GfٳjulLҪ? !;&A]9r^I &f7kn!k=)ҸbV5>y˼p{+:&Ssd ZLMQ,Gvhkb_\JZ\6AzO{qovUsx? NŨ+~WDVmr$N{Mrɿ3ݝ;uwSR]3Ea{1FlqzO˸Bv&ݱVQheAxmZ,+7`_H*U&@{6 偅I}E1֟<55uc1wQ{R|"Y?ɍGRgN(ZWy,IVEJZzH 䙎3:`P7"@_X?Sڐgb\Tȣ&,<"x7=c'3VE_%'}6Zi|P~42/,Z\!yex )_F&1A-"+Q(0\|:.%<2wqkzUʳrݏ/:@kލҋ\?_h$Ku)CʹߒL0<Q[?C'Mgs5k.Z錼]}~^һU#eQ/FR)ѽޭF T$cJf!Ɂω1Kz ҡ*?BԄ Z<8g|W̎D(:@Уؓk'Tos澼t XU {%I?0473Y\ J[h2|k/ fy4)?i8̄xJxO19;9LqataMV;=ĭ 0uV) u_ePF-g{R 4 3Ü.f):l(iP3MqZjKk[IEf E:O $K"QR|v6"ԬUW%gy1BWĤHݥ8,8#-{ܵh:+it;cV̈́1[_HN F# Xr2CzQwG{nڇ.y@EoA)TV'2}]aAap5e  XM]{uꢯS×\oYՆf H4?fwO}߼#*r(c7]Yhx Uf-\Gj+[qZ7v30gW~v{f-~`Y0S hJ+,^>q4|][?įLW 4e]CeOۀg]aB Wq\V 2r2_crjM\bVȷB 00 hU' Kִ#Gt"s.G 1\xQD&ҟI*'KO,.t}_=_ތTM EњϼwʃBOx`7 $4b1\) R~Q%iµ%Jk:#jsE $=)vkP@`|Kd'2Ax* L;) C޴@2>%ܰMU봗5-Bua5b.n9;2K,#QV@Y;n g됮eTGJ'ܬqA08_SeeL% YӑANzV$Y@kilPS`; '~Lfo#}lvzmKP0Ğ =&[,O99#!iٴhe,M[e:T7uHaSzׇ fJg(sU@oÇK?X'fb$l{v6YHz QEO.R4ta7s {?+Ci"nU}m`s^w$9cOLHͯaEϩC rhPKQ8OL/3<^OB!oф\ϟV:Ʉ)[Bo|oK2E9xDٜ A+Cn;Z `3OMiB;|PTN;BFҫǢZ΍ VP1Ǡ+T S?SCP4z?=-n⪧L\`mk#aN|5V6֋27!쁯-+fs@.!3}{ph,x`%~ݰ\=~Fd jY3jj/T3OJL+. O{ѫB@i(jPyRGwg8q"ʱ sy%Qo ^4:#[ZY='r*IMpδqt{:b7hYo `#$pg{;sl%)'h%iRP MC:B/zmn^:t݂mgMHY6j`b<oT$Rj~(._k$MyQa^0ƸR k<)lrjYeu`FnR^ ԟ$;>81=#F~h{9p$@?7Ŏ$ZnoH ~~cSzOfpg2I^D2R sg>j˨%Or*a 啌.5κ"53'}3LrG$K,9 ^qʊuYs"˾iw̱egLj P黹=W~'N:V@8%sFN4Q4&j6 /+f2 ϋk HF|:עSdt=YVyJ0BȏpM.8xj%emw4 s|Qe$/ $Pt?m<'ξRԨ\lv2ۿkLE&1NRҫau\fLh!V-SY1u}yAO|08!5퇖^?E괪_f#ֿƹ|Mv aaGkRXs1WADFvZy/.W帓k9Uur~^X`9:g%v`_,aa HӃ&&tOxo*@Qj" P9%e+i `VEƵT ݙ/.&O"ϗ eMtWm8F˴P$IHBMܘ@wURx5Ezui/p_9P^$,X +SIR#Kn5#!KU8_;7RhGyyi{Ts f6MA?d'n}G'|m:رDFZ挾_E?79l#зf ߳pU[@;ѕG јUk j?| ^E \ }^sct$<$F\v 'r;jKMk3]t)U5YY]YD4b["O(⢲P~z@(BX:yu9V2cRCIm)~^%|rUQؚ^#Y2Mx™ 6$T߸9̆Ėӷ#ꐮS6:`[/lTWCݯKvN> (<=S"4':abpa'ܓ!LP"|#1ښheh UU;܆ztFg ;ʉk'~᭜iozWԺO߰=2l> יaR_iE+&AߠdOͲTIx:ldK%F4hd_j=&OlZv s<8Zu_m/ v ~IX<ӞeMb֥?mu {G̞hisLp ^-c"r%Ќo7o{an0n` {]oP\VQn+GMJ8ίيctvGB܌W8G !#+*QFT̿RFӬ %!vbtmE%q&N'w?N ՇmS6"2Ւ0ޗzߥb=*A7}F7ʅ%7jtt {r.Dym{ kJ6I}Eȵg:RcllR'ݳLGO,1~еȗh/t.\.$>\C֎CɵRpas>T\I4o{ "uߦ1 { &]>Da ې>L`4cBԼ%ꭢwwF?gBG˭-pmꗪIb@I U+s0ʋrkͥ?:[U=..5;G( !85R +uH>YJP>ު'rîӓroW'zoi98T9}A my[ֹ:]jPZ)9wKXn%A ufA@ Ux>N!Gy|;ܓ)YchA\ԓލa'P""͠&IWS)1gf}k9unj-=Ÿ!VAIw 08 rޘӿ]X"։ݼw*'|(T0u2;t+xp{\@9 ܪ%Ӓu4Vci7ABo|]cxL% =5k;ċʚ†W,pBUTE*Ց&w/RӘJT~4Dž OvwMywUYb$/6#ضd#h]h@}ftKf-6hUߝ2~,Ѫ̤> 0-' a{m3P0fh_K %Fn5s;;X ~8؋A IFGFȟԜ5nrV@_c( ҕ[1FQt% ^@¿DhI\Bufz ׶c =kƙAr&C3^,bR@0`=&Lv枬ō24a:Z$Y'/ _ ?$t-B4q$B^)?cjҪ$^q?-mIB_݀ 1 f |{2o8FO&UXJT !؎SvQ4͡ }ó6(\膀/l FS6*Z1GI bA;_H9\VyJ|VTV?Sx,6ue8)I䖙G=:b9 MUD_-`RPLR|.ЙS/r/ הtyql,zIWʌ,I]p Ңyd Uȩdu^|Ι!\>`.}Dg^2+LwU c_%"^НDcr]r &\؍A^X53m%8pgQסׄĕ`~)մ ."4]S4 \9*ZsEu89F/!T`hPvI-`hOF"GlFB]k>s@1IIW@,9#`9uvU"% +CB,{]uꒃeMv0c@]InF!YeB3ThMӨgw4JrHrwg B=t;B/`rPj_8f7= 0mFe׊U}d}V;=Z$a!R#hk HT 2/.L&`GGs]!,d&Y4[> 4w~\H5ȁI7x?ƒ C-˫ I f}BBE& ttD x us-P}@'[zpa=ê(@$\}9׏Si=3#ڸ:4Ϙ۶7m \z*ք65o:?凒@9,k J.P N;X}D7J,\ +mRl.nA7tb]$TGG=I T46RɫmW;pN@DK0S h C[XUFG7 *@] Rf*R<8Mnas|@H|0bqKt=3 r='r_8Gk8}Q0nf]^g?jc"{ h(B Vv1ļ|b{A X3JM/JÄIQKՔX@v5M d`?zB !3q@xv.r܀'Ƽ*3k%> ȉ~Sbo5S!WE݅kg"tXVE yX$9yjz[O7_Vd:Aq_|>2)CmvX\n*}N3;5L,8hfy%;S'{f-̲µx) N%`j=q5Ľ/4ѐ&a-uat%kf-p=[UICIAc*nT!x"桇^) =A~$_/BCfv #k[" 瘹#ÃZ_ہِI˴e3JTj:^APe]YM}jT/bX'L(6I=-#Vtԍ"WAȠ"VVcEJRsbHa\7B  (K-,0OfcM\hiX'7p1I&DřZx>?+Bp1;x>Kz;:ĆP"h HtPޱO9=7d?QgT/@ @pr/㷹]r4G(9:PQOi2Rdt I"Kgl3Echߪթ4*!1xI!e) [!ŞP/辑]m&)_~G6pT \eSoum%n+]͘adUQ~a:Wvu] cKMn#@~rS+bgXl*EDjZf^j5=.8H]K=Aߒz[r[ -`0ϙr+,+"cm1 wߒslm.rف`T;W9;^6ē}"VHםɀT^"YOc[z^.7B>{p ÜSj2.!&p /6yMKE Bܙ K&SH2<31@ќHtFWlܰ%Tb]NYQGYqϟmoXxǍfpn_ᯰj.'YF _yD5DR!i"*8 Jʜm AuAapZȲos컀BplB@5|9~|Tfo,S gS͕JAe$b+1<5\^?NPO .2!L&CTϏ{'a2h|2Y,SH\Clj8?j~:ɮtDZ=s\ꕔudb43ى#QսۖQ%0xr^+!ArrDZ"I:}'Ƃqy7G٧Aؓ-||O^|U*_Z,Ъ v^`^(0h4!oAͤ{ R6 +Tj% ڦ0V3e^QOҠ"OXF{߰rkDw[Gg$ TJ8؄0=ٚ09S[]aREU;w $ Q[9-D?SI!Y t"ȳpsQI.HL׉ÏFX5o |8ዊՕ,r"^el(3MyڂbW9mtjAe,ҕҫL$'%KꨀyY܁9' nWPEB/$H6 m$׮mwjW[BnUÍ"H=@蜣%Zg#%<6Z_Xԣ@w')U%IvV2BcDpCi%Wý6¨:^1B9$ǿd]{^ M纑epv%b$.Ml.R|'cxA  6__q:VQ'9TdNj2BR-SMKS@X~읗*TG[ \Z-ÌXaf7ZJ *pjumoD} ZqDd=<],*wte`0=:OɺV[X|סv[k^:Fdٞc >:8hDԯi,Bj㸢؞#I4 *I g}ďW7ip퓗Oyy >J5.J- jNd!k ,|X' zL ^$u0?= ^H4`'9=AO0A]#I]*ײbY rzܵi8'.Mld"Dd {PU^/;9]̖ f%1ק/ǭju@VEm8X~f>6}l~㶉}.q p{w\ʷƊdAl!=I @9e(bܪUjIþjBN|Zp ڽ+bd$s/O#A $CUn ?ƚ ;Dqek0O;~dDR֑CgܾE-eId)@$ A kzGTDjdU3,:0S\#Hѕݽqm&{BrXjZzYS<8֪_-p ܐp褚'g HksC +d6t%`@ҙ8)Lӵ}F'\AF~?|@=D #ةz2Ws@#/CCgl\'aZ *#X4g]Y8 DK[s]:dǢeJkDӪ}qԵhJuQF<]y8X 4<Zխ-xlX`薺%qRxL liG9e2χ5Tuf"Te.A4C;8'ADe8KeKZ uY3+^fq>#CΜwFQL2ݔ00$/t6=W0:ۍWkGkd[Q~c3YԈ]!SLx?o]VwMu/v?mk4.^IA80`Rgά;ؕk3q^up&V++noar v:TAoUPZ:b(:f^V'2 HR +7S2 p;E~qBd*6T.7?='DZ(^M-?%G:ʴ78rְso('bK*l171`wQ-}꜖b_)_<5T{OM 'WhY.@4,cK M6D*]ֿɐ+)y-Ḥ"(g2A14Io4٢oM_vVm~Te=(- J::M=ʜaвku33CYAk ӊ=ۋkrVwhy y;{JD@1'1SiJRwxK,6P9>0{TB 'iRpBCJ}3<8@᳣˝4|W!HX1e9|# |aDiͷ_(b=)=k/xt@U88iM`b dKOw4Gq[ f 1Cvs &D=E^`O48k\s%bDhcS&iC//?M[yE>H (ퟓҤC} t-7m59afR `܉qB5t ×AYKmֺA +k;\#L<,-$V V$* eH??xCșO_'/B7`No_k \ &GtPZ0+x˒(k]f[h)$?MizA;x:f." kq5>¥g8" K42PCW{PH e}Hk!{ݬ%U^͘s2o!7\_;d*tgFY;?C[;t, 8YXf?eΉ*2頋uL2\[AqpR_{;t6Sئ+=h>"1_rOF=7z12~<9?pdfHŨ6l=B&7ՙ6ca^]{ۏjc@ֲYK7ӎvP/"YnՖt4mƣ%_tny ; ,8(+(%A|A=S[Cn=ƒŧ]X?BcT~4Zrf )nɠ*`(;пH:O&$_niQn8Og"zZkoH-)C8x!i(h;#p:E*3 -{:/J߂ _f1G`xbPۿ];ԬogWVI#E by>|VaXZW/1p◸ow8cx׫H#_<ڹ;Tzn=L )8I'6|:6_M^!'X@9b uq>KCh%yoLO( <;ܖI?{X7O ة.=\J{|DpJzDC k^>䦈k^G,sN `%9\x]6ߘ@4&Q6n;C`+c.N^rYGiz2vƵ>"e(ƮELꜥ0[|gd1ՙ/)[O@Nlo²[mx&0ъƦcJ&N >MpmvTP0HK=ezaՉ-6W=4ֻioc`|ZbhH}N 'ƵȿykipGVS8,1ovYڃ8Zw3-5?ʑ2IX-R/Q@ -s _@&mfE81!IEk%(RtsG`Tx/XRnseQfal rV/gC'5*Ģʿ @+պZcXJ;@:{1I_t+v#j Iz{dx,M. H6Զ4^ۼDumA\SY_8]a^9m0ɛaj/0G%ha})  @v`NJ+_P}k:r"[V4 G sfq[C/,Y`H\c(9Ǭߍn0%%b ,.cr`F3i(  R$|ߪy PCS+:ؙ MBgeSt|y_M| ߹*o߀p$%g*/ވZP|!#W.ɪě7R-'ugGĽG+gj0͍KLA]i&v>z8sQ2wt^Z`)}!5Che^pF@\r{$3lT?F`L?4%wcNY}ЛUQ0^:+&+%=!>PѨؠYZ͋7Zїv|EmEOc:0-??nS g*WN]32 -$]4bv30,k*?TUf*BoӿtIK XRɤq8,"E @17 %%鯉tXQ<N ~'3AD@ߜC#(/):z6@sٻ_>6i![X ),>|hׂu~ "ه ?v:ijfGʙ\;4x5g*T&zoFZkroMha1LZ !ޘs³67o2,* Qާ]s'uZbj!\]mNj;`hǼDuZ G7IFgd°sjEO7:G@C0*25+='Fѹ @5YYe|dGqfNs_w,|si5:HM4:ܟA: 0S!D] 2ʪStg.WݿߢSʙgW콁 XȒ}HHT-apI#gy;|e G%ӇOR?vlPc`ܰ >ۍ_*,L?3Oߓ#eƳ=[͹1b'wTL0nى=E7zx5lFc?by>1++|Th>](R#Ğq1ìiu^MNz[Q{Z V*։JPj sWht|i3yLmח֪Uk؄Q}XəiL7S%E мZD =?ҟ| H x5XL?FdIp'uBI7.u|FCNqQM^ͧHSm< b:J) ų^򷐺K!xO(}`SY>)>~S___2@ h9ڌIMj)E* {KlC@;seƵ(@Stkۗ]k3"M Yh6?ؽspsd9 DU74TtF` [ JGLOq Fm=bxNںFӁC0rht!s+- VeӿUNa/X{!+ )r?~5fפ jNvӇ#h+V=n=pFXö& Cd#0 2Pk]XN^'ߔ y=FgjFyW*W;}fƑa6v4cv= kc(NNKH@۠X)826}O[-քNw7vMUHt:Cܯqfi޻l+JڗC-d?NIt^<ߩs-@uj%n7CQD K jV5"(X^~Y|/VڶXb/xyQELkӧ0W>IL 8B @dx.C}:E]1D#<<ָ">T4t &zJFն t42W vpG.c=SLp ]BwB!mq\_(%|u Xϗu~یXFh.x?K+D~ao]7`,G%%F2`J&u;T@/PHI"O duZ a=sw[ĹDX^inĭw mۛ1 JI<.IKMLgRyCp0Ԧ?@QE`E;A!Je%@ז+ʭs ;5 z5} v$ϟQU27U}͇>WD Xi]>̉0Y n19V iL:#8V H(PE[b)OmKfVs W2a]'AHxP!wK}u_@t6pSKrh3;Mbێ41.&.pg5/$#Nl2Vx|g-텖R\ xpdS d{MזQ!w֬XDc썧 Ul}#5'+@zjO@ ^) a{ X/!}O{tK曌NT[`B:*b5C~̌?K'(8S؃ܴJ**au?uAmZ>bgb:v4ʀ?ҾX80H/ЏP ’M:셻:mRxVz۷Q\ #tm|S5_= x\ ¶(`em~VWJv!Wk_}3z&!κM[o\zHT/{'$X*F^ Aݐ!7~'D!Ӳ2ȇd &3L#y4UI7]M-9V ț }NsE_cwIgЮu1fHR1j87kξߺرNs@+$=dB'je1YʀLo hqĤ8p /޶Z˙=Dd0K>Bp,r6oI>-5h2ᤀ j^eIг ϓr p0ഝ:\ݖ9GNit6;jL@GکtFA袞5_vJcq Hs ~V١R.bVDЄ6oR1[\2b3tS nTCA$ls{2@<91m*j{M7vʒM8y9<$ є@ݵ79b^3~X_;Fe 2hS' 5ouk4sxj}B09ہoepF`ܺ&#b^#Q+bgS!y"3 GxdX 4yuPآ%(\?<{q^F,ULGTa*sx/u<LdŜmPwA ' )YbABa=a6{ѐ_`a4XuϹg=ڮ+\sHBDM4B~?;Lrg :@5n$3I7mO$lJ ` ʍ$OZ/h6ޢ"Zg,4]B-QxeV]CyN=*4!`p vkMm*h;0SΨ+FBJ١^8y,4-!oCMh1nEiZTMQ $l-f3(N+Bt1&F]6w[4ΒPĆ7‹Ó -!Dr-ݽcɉHh>e1ba_J>P poH4%` Nx̻ Og!nMXoٯǢw"wԃQ62D FܐJntZ2tlhc#9"HJ"1;%z6H6 +ntcIz9Yu|XD<ȱDM !P I߯&O?ˉW0wa*L5G6?9NzI_uxP} DRiOqīO!Aٮ;Y&%lҭ1-2E)a~6%W ^lt  8pf(o6 <D|ZI.sh\A=i(*`4EDAzyBvCvF4j.*24BS:d_l,_߱X!_RC8L3:$&gg>4ȅ4nɊw.zhѝn8HڞεM?qr>ƞ[^Gx+O :,\OTNBY\KlB> ;fv.] ʳX2oD?ĮFT/bT*r,kPBDh܈&0CT>*0a5Vz鉡} q==K>*s=En 80kwmӶ\խ !X?hql0ei`sn3~s Ym@tVfp?;v!uxѐP{A86,Ouۋ?s=VBUd 8{BJ6=[Ӳ1 qY!bGG1]#lL̜F첍ep qz=#8UQOAu2uonɥ'x)\lێ'p˸Y R -Vlms:nV )swݢT ۅcm=jq҃e}DMZV>*wW40ӚKACH2gI/SC-GoOb+&7 "S{0lV22xU͟d6y] fq֮@i𗹥>  @$ÌL1m8Qqf[婬#N(W蘿VQ%($*ZG h`/S3LAPjbyXsH- es|!EBx*o2ܸ)P nW`|<aLӵ65U{_/n~)y*J9t{^BzN_o Yu76FEX$߹LeDcތSIP=SM=hU!jCF7A։ڃ0]"b;cU<9<sEHU韰Te6:\+Ɣת dp\du ĤJ5VIJI IGQB۰ji;e4&ח|v8fHycxlD4D/p ,HSzWؙZk~މLݍ)A voVu);.fK}Gn{Fk$G㦸չLW#o/rNy<Qh.Bǐ?"fދcR]b$I2P|u2R4|\|lZ]$yEz}~u,-E \5+{tR^z4vh渋=}2%,aC1J )vzXJDy&ZDzšb"՝FdtuEB"[ϔDoL2C !mK 'Ӎ$ڪU(K\pWGgԑcDf ǴX1Dxz2`tT䨀p\>+`+'*AIISf(Go p˛24Jwe{rC9f&Lߟ^on" 5ߣ+* :Ljwqþښ5;o|mqtwxO􌋂DֻW٪Ȣ'm*`riSc amK7#x x2~Ac2KF$auM:d}%>Y.=ApBEhK,NmH- 5t]ëT~:J!}bWʺ"3oc _蒀sq!bq>e|-rRF%N5I\hBR GEWףi\.U tQ^WgIVi"1ѣoýAjޔKV?1tj[4W,<-n=goNq1Z6;텏z\u~E ̸zRI3Lw@7,+Zȉj sC.9CG̾Kd2S6 ]Sл44mm5]_"\if9E9br ,Z@)-kr Vmi 2 RsJ.B諭[w8u>Hi&x}{CMҞְMs%-Mp{[ ӈ[fo0rK"-@RB4%G :SL*?ʠ0S>gu<&nm; TcIL"Jmaw+SDY?pKHE]x~fe0I]q!A9.Pnl{ m&͓1ox]ZRU{'ބߜ M 4nj]jc6C q?2ԆQNTvt%}ƍƔo7̝~Y*v}htB`'d3xr^I_g,A15cBްuJt^ܦ^D&L;N3q\ gh=}}T_ [ ]FZvYٰi=3#t? i9_ޱʅ/?3:lW cɓg!ҭ<##k,?|w(mdS򈆊Rô/H!$\yձǮh\Os BwUX`A}=F 9VӢ"S~.ScT9`qVE n!"OkHŐD>Oئ7^!7~53p4L{#/FҤt[G=]Q G:" _{7I<+?i375a&euũ"\*fdAnWŖ*<3f9@T@,UpCq6)Qب|vOq= rR'ֲ".lʉ<蹕ͿQ. edvP&Z.u&n05L;`*rik@ŝK ,%P[MaU=SWdHsn%:)juM0]a`1, ~L 923a+qP. ,=~{<[TJq9dúE"S6|m#BX6*-C@ ZgEh4PK^w`7f͝΀!b /+h.~xV_0b٣Rn| nǨ`_?M1wi+0Z8spuq7 "7˛e-#%)*R7 "X_M7L~ *]U [#=_׿Brl?@}ACrYTVy] Ơ[@VO8삻U ~Ϟx݈?b\YR׳eD(ȉ3:Sr֤Y*?H+ H;-GۣcI8lG9b `P|q\ }~ 4+*jpa+{m=߁bGt;X7` ePؓ>KCiؙ e"Quc՟{v{r| x#q:p#pI~[}fJ8f>K͚Wv^bNBPBcþyc=<ܷD1/s6ʱ٩*;۵y Ƿmm~GmB!"/Jv}zKP8 |"<0s1l#<;p+eDJi&e$8dwJWjV\,߹ dѱ v@ -G2zQ[ɼv:0 o-?#<;i,n,8 V|$nvJ,.L4G[uPLCF RPp-E bhq@Ծ:WKi݋pvCfV~~i`!my=2|DfEKQPzn0< Udw W"wz|ºgLF@W2g*/['s:$bIB:撆XsPpޝmp̷Ҕ]߾ohzBib<;c:x's!_읤Z?㢃5出0jPp&3Z< [J RTw5ꝲ1a1Rq @*X٬~zrWE,W=uc*ĤOoAP xYE|CtrV]#A0+׼qNsTqN{(r2TiԂ3S٦]d-J%. `fiO=($X>-a|hb)1=9+c9T7Eq274 Mbɰ!w'PXJke}Wt7{l2\᪅Q{՘^ S^ dՋexŀ,P[2h3`ޝaM9Z¨ ?5 $Yx> .U,ꒂ;{g+tl)mXj{ [, .B=(t$й^F&߮Ը1}*:!͉Of 1ra?Q0ʗvO7;0\ӓݾH̄E0C=9B{’zYAp AgA`"BiI0j-,mqrzQ YyY@{pUƕڵ)C{ϟ`>}|큗gSA5|OZ0qx.I5rnω)+x/xEXi,zfo6AlXZXc$<0g~짩L3ݫSF z:OR!GUoM׾Y*=K9y }|U6_Tz%5;+*,{?IёsHNb9-\5{6XU( hRyY%!1SE)c1d3$ogѽ(m^nlqf8r_L."ʒa{.Mz`*ZHZzF,ۺ@{4_n%vrZ: %e+3A&i >x.4ܳlp|7R8Ϯ-"v.1rH,Gnτ>2jrqm4z7;f4Z/GnSX@N֓Wx^KX' &HDo*PXbʊ}G%Wo{]NFÈ'e9G$.})aw+FU@yTk(JRm3}ce)R ;W_#?Jӧ@-\bjBs4 ];+rʼn>H/i6-ؓ/xghæggm,߭a"oȸm7O8smB~; l&3'-Q&VῚVm&nk[rV`mhuܺT_zy@&5v+2 ""D;S=~%!7_0J%YRO| 0Qkb|;Xs=!{rhSM_(/:~ *%4|O+VZ2NfAS":^-}eaTATDi{Zbʵ,í?o<w?/Cm7D=Pd~aSD81( Ve[w > Pnfh4)͏[6f;1Y?d1HvZMJgh~-s%ȷ'ZՆUTxi50SJ%ơ6W(G P)nfkG{M $T{73z [֑0O s0CO}z)5B }>;e2Z7m|(ͬC&2?ÎO?K_|TeUWu+[?S䩘;N]Ep4)f"I`֬O[g^W5  Z~ʪ- pU3MN$sq'LLIZ'^89O{eJx">D+jZSq\8 T>5웕/C^R~9o=̵ٟ/[H OZNA׃cdP]@*uV #mioAO; ci@+![;+ˤץhț`exM:Ym(!ڎW fB . qYMLH0ݮ.:CHA EDK3u;vw'A9] UغFX(EYcL GYYH$/g1k_c8;ɏa4|l=v8n?AopnvZӏb .mIA-ѡ13E ΝœdP3vzK/ʻenͷs Đ2v zV89pqYEԒE 8THdtO)ҽvL33Mq+H|YnM_)BYV$u" z*̟crɔF@)86J5Qr6aQ^xAGSi #[}c_,J%H CnV಩ X!~ѯNk *R O*g=Q߮ 3]m}# EwqC.0C.p">@s(}Y~1UbZqVpm>;>rF 0uдncY&n'5͎`*:̫ddVQ~t&, Ęo4^tϿY!kb YE6t"٨iR2_7P9_--$ ȃEg/ӎs5. B&E1}gIx3d9G- YrDݓ oxhallmco^13k}4؋'60jt$Ͼj~t068G3SUlYS ܑ{9l~ %Ri!C>KLqv;). 7-:A%qVE}bܽ2>v#O7f.w]*7}ӽv?'o"3?ѧ5|{t7WрjS!b'1H9TlH)jS\r7`5[ ۰׼ j3{@:0m4Y88bObqI*] j[ ~'^Pdm]q3) 7SDK1\0s 5({vjoGh}0I>d_A\5`9 aI$|![wb -]!O2-?]N| 'D! o]$/AMLLJQ Lt:@nʑj;mXfd鶣'e{\dn\ֱ@oX]R!\OR¤G/=l ڀC©. hI=^ڜaǁ*5dV5Ph/yE8mOW!A׿E:;6AVp {qN|ɠfosogCUYsՏ ҝ T64 UKÌ2qmt2ؗMsVdĢꂽ2O(XdЛG+`Pyv{ OAw y)1qTťh _FaEDV(U%%cMD\0F4mKz'!"cOqH=Sżg>؝rQ|`!d~ilW܁|%M&ͧzf;ZfS&CNnU,X@sG"m$L]-4 6ɗfќ< m SX5sꕶWݢnS5-]},d(cKCcvFI$:zN6*2GeٿFW?m3mz40܇J@>P̤{JeB. xS 8sbG足D^3j:@K%Kޗ#(W)ƣ]U?~`dy!iDxG A6&bJ TKQ*:_4DuMoD;wMH|8qڑ)2;oxvF$U%WIٵ ';39ݓw4Pyk$-'FoOxD˵P[Rw.^I;嵰S6SɅ}OC5PKz*H 2o lޅ35 >Kpy `6X΅Ξe$#-}\"M?]JBb)وʐlŞVӢnZPvy/p3rwL z/ A8t~?DT=3bs3nk0ς&mS||Z) |"C)9 =YUzzvH~LQp/ 33> c}HC+ [) 1_ jI*lduvJ]ἤ%Q$2E-.#!ެ@AÏ[ѐ҂0AG1"FYW=(R 0n" ;"'b(w!v0D*=F6R ;|@7|s{|^(={5QJݠOP]}<q_+šD[Wٯ^!J⫖T|_j* >_ږeHkO|x_O /F aKf8Ww8O@*r1b]$ms%݌%tYoiABD }shڹ%P)räYbCizȹRLp2R29hGh-@ۭ'q™g[^ô*w jimU V윎v[Ƹ=պ?sӭe&> mܒ8DqT,o =m^$fd?ڲ~'}|”Zin&w0F]m_`(Mg[-\q;1n収ٳ skX}播xL"rOb M<6+)9Ğד㢱0 ˈ"9'Kj 姾Viv%J)&:$|\heUH2*wƹn6槾 6{0 3:o+Mծ_.WAt$6;k.?FU`xM$W'Th֦ɞ@vo4i`:--D{-0цhVtAgyS_H:CC<.]gCTβMU2NvgBdÍ~N8ɒȥg^hآaǦl*ܹ[uj{sDN7,egE*5/@c׼Ktזk[P𳂨R{ZxH)ry0ϼfR\B;4O$FK(FDr" U nx e7!ŨD X6Xŵyu K ѷ~bnHk` Oµd¨;j"a(]"NīϹQТo͎>W=(}^>p<^*%b]B񵸯0,A4nB*Pⓥx"{{k/Њb@𜪄A@4ߺXxCi_ˇ{пyغy^mϕ@fXb%٘'`>`d\Gj lO%Op݌WK%Mt4^P $&ΰ:C} <֪Yn }ptRfYx?)kh$hI~g?BGj+%E 2f$A+T?9˭HTmjN_M203@Nag-+*Ȁ02M̺kQSbhavp$yxwB9$@RIe; F>f.ez^Đ̮0dfKݓCo:rsRS V[c3,Cmhc"l[- EtW=MdsSTo}Ґ>>b"*9i G "?gSC_mVv;{ŋSժM ~-ok ׫sY*íX72TY"~KPYnp;ܸ}G l6apak}4[3^8: o ׇG>w ?,%EDr(Ssۼ!Mh*xWNpEe5j4n110Q#b_rCc  8(D0N)'$p{*'}-o? +pAtc*csa4B> ?:QXpKUal|= "TgUu}S2T z##2ڣ[~G(|5i7bm#.7#͆-H~v3J.)bUlc:TJZd3gҵ_F 왹 Jxr$cm˵v4պYEQ.iiؾru 김&bԸG2X]΢>zCܯWM~Sf8 Pnh"I9xn@W蕆"L?*2?YWMX:m- ZyS"NF ۣ3Ibbw_,n-{V9O7Em52uLnڐ8Bmn͘jo%|Zi)W+0CC{̏g"bC'zbi [N&#VVB-E?\ ~fgw.jǜ50,&_" 9 r&@,.1_eor]W=T?y]]`k/8Nί۔e0"}JLj$l^RD; &%MS`rҩ"l*o'X,HDgCMAIщxb1>kICp=Ѧo$¬(zܣѮMs9<7F)!  &^n%9u䕨c:ǼwIp6iYuKa -Wڛxp-U 9ij4اo;\=vpCn‰R><؊1Es EZPybb{┬#w ȥzk.E0oo,{֗=]%#?Bw8e/8͗Ӳ je(/rPA?2\%?6)9zA(V\s+{ytKNW5CChmP#A6حzOh[>s%y-_ҁ SՑقԑEH,W,,7Q⚏|@Z@ ?8!i=Cb~hH. c\‹]Yuf9}QK\2@ *+rA![ I}Ą<]w"x9;LC'9" OO!@Db XfGKrZXsVR*NUzzżե#J !-Ziҥ >ṢEF!BҒ)<ۃ?iS rERCw_]#D85oU@#Q|25StD 0Kc%lrȹ>|YقMZ]Hb0l?qVc:=F¥ V \ƀ$T&g,hgdhHIа0BreoX}B,k{'u)N/IP"K${nтZy`i7o97&ز;%[)!ڷP38c~\$kGAht((ZRlԀ`uk-~X _$}^w p:1س:"YP(BİN*WThm%cR@vA( ]_OwHă2E}3xMjB]kwfrvPl[Rg&hDt%NPͽѩΜGӒPsU.3PH-i]tNGAi+k @\&ţնzCgAF~ؠn9娈}5F cVђsJ;l? ? a!C瑧^u{ zxm8McRL"6:$҂ L>wOz%8!c7S mwKnw򽡵Sp];8Iba`4 "<r>( ;=]<7=ہ~Vul %[ծiNo_)B'w"iN ׵0B9A';V8iccSv/L(Uhuy ֔I-ٿ"b}~W;HA#,SI3!whϏ:7*(VO9!}{W ,!Y.4P Z#ɐ/Ҽ-L='>~ bjTY Yfmaշ 4Η鏗_vc.p|u`7(TSEv 9: b6F4!etW:PYmM*2Kd]e6/:Dh~+*I1; }51/W"}[}vbffT:Ғjm r9ږFwn!OJC&4t,6`@aZ.Ө桋<8U~  4:o;gLmo.>}_R>y9o%SS%OFQE2B=%s4U|3?P/Qt8gFIr+,?9ʘt0){5M*GRf5=bPB;lj,CUK{Y0fR59E)!7{hɍA4gd"Ϯ1b5~Ɖ=䖿qJGLM*F0cJRuO&_/fUG?4oBePD!"v'Z;  I2sp[lC+/jڣyY}0 brn'gm- v7/p\[Ԫ-X#U":[ky c gӐ1u:YkS1W1v ï(%m2# N!hԻ^jAk\;kɇN8R9en:cȎOn$j%/2 9ȐN-]@Sg:bȒ37-$sL<1IzE=O+2ono<n&=[Sq0썘Tk([tCMm2~9vP6>z>Fj-όo4iNM]ĹӂO:|.AA-&%՗I]}gy~xItLvW31RmP=G:us?kzg9on̵P[niN1d&3 6ɣ1XHY#b]7F\m]Cӻ3h7uIސ-s"w՘tM ӗ|;l_rBRh4x-1*s(qg8h5̨ $،8ʍj-;s SkAQ%!B|0<P\Ha3`L?}MGVwq˓RJk>u%1bW< ܧ$'wM=S(j`kj PYM*ОNIGu?4Z\;CW2qVAkr+` Zֺ-$h|2'chOPpGb 5w'P $j0dŕ3ɀO7^D͢6-`@Z0ؼ57x%MƀzYAQ n=0n!oNeNtqj. <1R>?ed1t#9/^.&T7x-TOD{ҝ@SIa9W¥?G}n{YJJ׾K/veXQ*ߴ bhNgf:V' njeFZ9g͂Om'c;Ga д#;d6\%?MHH|bfZE?Lu|F}a$٦ޥ~f Xl'!h oBğU)$/cß !p}|P IkŴ&3xe29~ (sqT DN%4ӨQ0nlmk pst^TjjgU&;,ZĚq/c(3qR()Zf댃9z-uhK o7]zI _Ы[Jvd'։{ 5nÆlR3yT$#7}ti{36;ƴ4fAp?(0X{ 'uϻ^PZz 1Q/&g j@=F=toH,.I2U%P54pvX*&uΨ֓(~~=c|hl鄯9d"'s,AWop٣̗@=柇hIP!o(XNS odKҲ$h`jY(}`.S43 XzTM~rbl(jxLM>$k#s(&`#`VZXO*)}T۟z'OJ⺅wiu DW\KFǔDL%:ijsw˙z!2y$ "(TRhwnK;C] \%gxh^7ZVj~ژ,]ed& d>&Y-H?n s?ګ|3R簗 Z=&^Z'Q18.ۻ0z$xnj(T"t Ou%w^CmWmV$Xbݰ1{iRPAWU,$^Z*=L["jmL ψsKla 6]*Ej;Zݑ(3<59H}0&b;k^6HiD*'o>"qŦ KJB)iҏ敁37N?銿C {Rt}ԧgN(CwkB2xU\,:̐(hvLqMS! .2~ y w -./)$F$ Ypx_BjX]o na87^ᑯ IfX9yL}~0(K;~᪷۫'*QH;/ F I<.2^˼YbAkzNU c@B[ U-d^W( DU @^4X2ͳg4an#Zswo8la  Eoʟ"wx,(nG s78rlYYxyD I1YYmFoGg燄M8:ڎ8s!Rh78FSȇ{) D)щ0|a=B2{ӷZ4*X檐^xvr R2 sI$-ڨcu=JBe~.e'>ɚVsάȥᑻj6evF"O6.uYx*kt81 Gmĸ}jƁ0'ZϧA+~[ 2j(I{ó qn2's%D_Hr G}1%Ԙ?wj;{k :j H%WgVAiw~ϮL.ǻcMpdɠ U*+f?'ZIKFҵ&bU*g6ҟ*~ȄA(Fz!tFö_U\Pĸq[#LtO󗏂[6FWRx?ibφT Qp4V@~/8ָNd@"B^[*m^ϸ 44DEP۱ȼ! y=7ts֒6` 5CHB)gvH`ȍGH\| UQ\ꚐgFlΊ1VQOJ{,{.~|D2=S!OLdАM kj_}A-NY)qƐ4e",Cq52w%AЕPgʳ{xnn}T0#6cP103ۙohb]eāJ|ZkbOrFD\]WpgvPQ{a(?mh[ .lms)>B*RH=%վJ[6[;!}k_|Z\]s!U RHC{oNq$M8U[iD[%LubB(~DRq8dcCe3;"%GW1G5vr(S}Sm" x. N_ [0,`4.^2ڝ0z5a쐔rM1Sw P'LVG|_okC_'qu|ō6m,;u@f}.G@#_ޘփ"h=!Mj a%A6:X=cڭxm-7h&sAlm=N5L ZVSiw܈ٿ6~%BLLf艀 ^ōXjr4[< ʻm~ZtXavLe?>ApLp_&:H"Ӈ188o;!6YTmxNn)=h⺶ⓛjB.q{#l? ]4@1־?{A - cψ=L*fքX|+P~i]?lϐt%7YMmS8'zL။ɂ|/FF;o7@yy.Ta%9"?a:!~|lcf-Grzl%I@Af9̐wfES$h#lx!O<1Aqbwg4;aXl)yWHp3HEzA= YF#N^1\}5I |hpl|w!cwu tSG jx䰢#Vl6,6kq9G̈w=Q9FcS5Of]qn 6S>1*6(/msݪ>dS 0Ub-_^iјa$p^'Q|eZ_2.r.oGeg2oq=uSxiAZjV{q6W䚛]$A"[f1cW&?T,D.ҬHm6.S^E/ zg$˴/;Ǻ2(kk->ooHc8.yUnoO\Mhk|%4b-^h"Uh*}B/X]|zt~O ޝTZ~[E=?&$TQ\ct>( EA &wuō2~1l&ytngC_eBÑ]TK3D!"_ZQ6SG-R׿3rDp7mFEN|Dbך|%+mqۺ*wQ$]"}W) ~-]eEQV:vFęU zmw2`$59 v)1o/E js~ <%w*Ԛ`@qWl8li 9l><)?wr5iqFnr.ƤHh>pE~x ִ󦹅D۞.lECrB!(`C\7eubYs}l!h4Pj@|@'Bd]k̔ dRm)xgk.J=Gȍkh vPȴc ^_30#8,au-[ .yHk1jXI_}WT,_8GD>M6.ٖ٩gcA 0ˬOzŶc-3O}.(#G55/"/RV|1dt{}`AB2Bę^BEO}n%n6+_㖐meg|04v?H0`pX 󞜙k LLB(`u x2~WS C;A9%^ŭEw_* )yC“]uoY&6s/Ǵ"m!ڴkPa[vArmjʵYtU@Mo9 Qy4XI>{ʒ`@x8w:hA`tlgP PwJ,cR%Jdzp+@) GA{IFDGS#|u1w,e6]P&odGTurd.I8wޠ/̩u1꒷Ogz^1݆ҒHʿ)~"ߔE 6@app Pq~TE Hۊ?^V].$S^ea{ߞpaG1%rO##2~A4,{݁"0%79Z(=|N[z@ .=׽}-M/4JK6ˍ9t|њRe {G*nK]52kHT$P.1vHYЭ+͑uJ@`_c%JR fqhon0& /=8EqbrRnF]]SjU2Ɉo*ݏrtNx$:&դߒ Vs!֜춆l 6:>8H:6i8 }:2CEoUd/󩆭~?[ w3?4 Vk1Jʙ6NcCq[Ky{yʳ>>G [xS'M< ʎN.XEIT AmdiQ3ڑ) ̞MKY J*{1BFDeלC)sŧRh U/ʦKU݈Ɵq_s{va[++[ϻCKiJWo)Tpp^2kAƖ$Ih;; 4SmBP/-NԤ[Xeaa>b?i Gy#XZՐX1ea';5fq YauNFKl2JR0Dh <*d&g1ELFZ!N+L)4bue/ Ϟ&NeM\r'Ued@`e1Q0P `QJ&_WE02U"yPÈ)yel<Ł;drvM-[ iѮ ;% sk36yô=+='3WdTe։+DOY](CklWq=fEiGANQʜ@1є"HG{H8q(qGDo 2r &ME뼂ei@f$+pkqܘ1 1i|/ CA 4uL#0ph=bݜ!Eùk'mje|cz뵞b<!L*,Ê+ɛX2aC xt4Iy%zn7Q5e8L'ܡ(7G> jd/,yeZ{[Ġ*`.TX/ %&S`}7f`6s|aۖ7q&@N]iyKHێĦS$%y `>qmL!lA\~[cnSUP8g9|lӐ SD|ׅl%!%T%Ŝ /+>tP1eǔ <;'Jm4Yknykۂ @_/;QojJʝA.aQҨ6Mhkp%sK0BFrJ}d 쏥ɢ%Z챒AnPEz#cؔQ-zоXQ~-jLr@K8HT#YDžءvzGGpY~æV8<{oӮ t Z J+~&Sh}XH` ?7jB,h+bm%a..s߷çVL :QpdwC* .̫QrKUkʟVTgy''81^=Vd'LKX4ɺǛߑ]4.F?xTᮐJ&3naTNnlog(Oyo=8p,Ɣ? 6ttq:`SR"{`p-U!!79}C9 Az9_+#iz!覉+I(vr1?A,U&oify s=Npѧ.k-̢.v(¬h>>>n8a!њys/""?Y]1^7 Rk=ijiI078R8%{9N1r-(LYQjtέh$BQ~3CkGwD_gϫOh|\5siSzHrwrGR Cq %6CaDJ#'hBix64G4vpip +?Avdj[&ߞ͘DmTg+ d^= @ 7e vK?OAͨQ 7X1@xH+%aDRYf,-Έ=`~5#uJY\ %%C \zYc/|r3ff}ǿJ7 R(x"p*CU"zXq0  ENY FaΒSeoQ.q1w܆?gf]EymzVhB_,ZH*⼣$v(<f6XC/]Q6ۉɥ@QMɠI3G3y{x;17M-,$&狇Y`N$ۃ{w/V@аb'`bp@V3gf"&Gg*;v<>mllGMoVW@!*UF]%6f cUB},F*`G0~ ښ:Ǖ/߇Ay'e"0aY&dwJtlGgPA-Hc xdףj*:tzqhL;lU1J!8؋ Mvg̡)֚ iI% k"1;͕tIxz/8RޏV k.*rZt'2 ?X|/n4Q=@g<1B/^jqtI'XV>uxl lfNK-%2qOD>ƴW\Tz/uMI 3_\E{\,fAgut-I{xPd*a~:[v@8m:n.L6JD~s mq')_Dr/qDz^,JMQ(]3_mA=/ )R;`8ҝ5tZ6Fڢ T- %ٟmjyi#Z D9g %~mou#T`>۰)e޷{|Ur.$DC9zRqs.grN%3X5&[j#~E-{o}xG3ʗR06H̎!y,1)(F>lx"y"I?g>#{B\QVaca&47$eu4@kQrN\f%[o?Y%@kˌJlTt(n'56$VZK'KxM?C5<<{L0ٿ^Gߴ]wFhH{Qš4`X dDܨ*a1BLe| ㏟Y!|wę&ҕ/?i _(.6,EՄ1Gmfcp[i>U, ׾)?|i:Y6֥Ɨc0M\֍ի)k4b7as1 _Wx׬JTCVC{, 2"sq0? H .[#>rZFσf<q"YQL'(wR~ #<9'1e5™eeB[ V#Lp 렷B Č=&wayYp' bGAc\}Ih=G?rھc3O q\ƀVb^(^ BO cj(2x#rM-n/, \'NvfJ ܀>LQR}g1{vdvjMk2l4n SgApypSPm:5kGS 9q7$wz'YL|30qGx2FTSQQ4%;Ktd7ԗ{vVis.䯘72>+VBu삺Q4Zd yXjh=+P~~Q+.ZNA0eU \ .Q$fYWGA&==5+z^u\)OFp !o⸚ܘ4%ՐZ7U&s5 t^> 8%A'}TRj`GM>A&'/0Yjnpƒ,87]j[I4-m5#M}Ⱦ5><6&ikϴ>RV6[1XxBmMo^_wgu=~v' &Ƴ9rt 9WDeDhm`Oqᯚeѽl0`h:|;/+06 ׽nUҜ$<8,,OJ*u}t'ţ4ZlV& yo9O ))H{iY'6,)MI8?We=h%}Q:++ zˡK+I J2uX={fqr>d 584]I6Y)D_f멎&qԌ7\Eu\ºɷV~5FC[f=2ngsjʇ45.a󐹉E321MTfi=.C%I tȩP-2hH KE,]D&Vm}C^slrȞ᭳/dB^ P:`#5ж)9o@ʨ'WWFݾGpߵԕ(Jh>⒲X]ߥdU}`ˎe&Q^_!6Zzj z` ʗhxͲ+_m!˘hh8p 'fiH-\)l- ߭#ppb `9<%. ^#@(c7d|oqlr Ar/<==e;GAlpX,̲un UG,ٹΈFQYrCdBb@{1%\@|zUiWp{f|l,T$ : s3 yzBu\P]̨zC"Ze{ $A<\ɝ^q|kT.'61`Sеˊ@"_ [yvke&˨iؗO;ñQlሻ0۶n#g&MZxMqd̽O?.Pi؏6Ң6yz-  R=y 2OpQ%8nJhE/1yIbA`~!|5,:6EਾvL|ҌɿAN/Ƞb$Gz}t0k:\LIe|bpfDH0K[T6rR'91YE0W0f%MrkДn#8vLs@vB!-{ &pg$v)ɓP OOKID_!0|4B~Կ@ Rq11;oSCK+mRx[6ִp  /Z 1{XtD !Qvw"guxEnwlHX1=@QL+ybܮ=~q2ֲ&a9KlJt ;=xgSҏ*$FeCa]d`-( I Ϫ} i[#~mϘ8wg|M~eIݳo5mPx0:Ȩ:=jv)H0 ێq(/!¿&lw(bE]:@ߩcnߕ(lJP5ŏH yx8^ qB9iS՘`hA=§?bJT+jugK<3`+e9 ٺ:,g #&?t[+0::<`" UVNjXNIIH'Z*2X͟_SBq Dd w^1n֨"H~SsH'ᒑ;.N4]Cu(uQEJ&UfX݃>wQ|U3OWOY:FHbl]F)Rk\iprU\bhi;pزp!y$9aM.pYG$tbNޜfYxfthhO)iXUzNW@»f'NhuBR^f CPCÑ\q'2ҡWyN׍W.ƫ޲zuj\zV۳E[DpވLoN<]xUjCU#@_6җu:hJHHfnNHD"޷4%e%FVvob?nu1#趜RjwPt-qNe7ҥQ `'8d ). >x[wܢ7h= }%ůP/4&(瞻q|vo5)ud7"0Bsto[ky$$BQ@-{2^6X#;֮#.Z_Rq?j1"j6 h8(tlݒHUb;_uQo3!4֪R*B" ox^B11fgR8Y?>Ab͕ƻη3@kQ}U6qŸOj2D9[;jdk(w0I,op |㘕T^XЅ@AA'N?'M\acC`X%zU mE ?4XR{b ߷SY|v*_ LPi'$[!"2v='nWuӻ.՛q1)W}>XFݝC*w(sO!u8ɛ [n1bV33y'VDH6BH?&ŦlO./vniw7U@\,xuhcS+Ƒ5Hk#[ BӒ|dx2}U@r|hI7MJ]pnl-7!F{}=]rNv{$FRl AP3(- {>3h5Oɬxt?)ΘT՜Lّo.7W$88ِ[99͐lup:#Meu+$k 5D@ gU8Fs54LEc%10`$Z#d)gxEFJݠ|Hbr: ),[t3h,*Yl)W}-ߗ:j-r]dhs=lNxh/VlJiQ;Rjr3RV]^H;RbSTC}ȥnѹmt!)Kc0T?8B5 j32@S\;xSRm/c/:2z_.NGRS^~6M8]K;_l?8_I{ Mb-vJƛê }s2ޫJT=b lْP&=#Ap;Et$PS>\S%&m>As3%_pkXԷze ]@=g)֨߅X&ۦ?4xPY F5WJL<` mJGGc[obŎ8̈L7_w.ޙ^Kk][}!J\_2vvs.'<~@jeW~[y]ɨWF{!"'^ ԯo5W$_+jŇh<â)S=` N){}xuOGu "vĹ#}NV U?~={W]ql{$Tu'V#mS p<뇥_1ޱnl+ (Qg_Q}Cibp&rF"A@WgYoMMez2 8KD`iofǍΟ{O8sV;K1Hwρ=,n:v996iƢtW؎'0X.~h8Hq.͋!dcnmbCT KHiN'E]ov]nK)*jźǷIdNAuϡ1Tn]eFV^㲠LP=K _ ?(~e(W(&4rJгQl 㔪'2HSKx9A/ IJT? PFbyٺ9pBGnRY6p٪y׾`2'# >^B@P!#4fuy!IV^xKRMZ WAf_x0-w0ӟu!ڬ@oQe{jU>^iKRb bYZDS+q#vhE1Ęð^TCo5*u` \)Ϡ;6ݧ3lf`xL8tFqvAtaPf̻'y!%@OyU'Eݿx,ߌw2F=Qrl+S Śp&˳NӅZ#+&Ry Axp]L~Iqga7@c 9n3tHJպH|aHLsn[hާMG Z`W<u{zf/>[7}X PU¡Etq*glJ[Ĝp=/qL4Cwm2ꉋkPm#V}2A:!8)V7 #Af,) w)Q~w]aU)dC,>m&JTguOq?UF5 KMї=RC#~'fl?&`0R MY3fMDkQ%TSvvU:]Db~(˼"YuHQU]j!|Z)@7_LK/ΨkTmUdI82)}+a3R;y:ukpiQ [ZV0mc'OA8$I}Mlv ٷy!g>ش낷̼Y8Iz 3^w4,H .,pBX:ڭ TY$E? RgKϺp޸{")1~UH=3YY/wq<3xhqUY( p7/9l}kT G:e;"-= RccmNzW3(Ճ={#`L Uh# @t20Zr9_㜒}LF[ pffj?t aO>`mhXTO79w!EYivy{_f5Ϋڃ䄱AW2H||֔`NgW}ҩ^XG~ ?#@Tޟkz+{nGD2qJ qRh$!iՐ8@@42qZg0bl #& 5v;J|Hoїl+?x̤^vLvK6HP36;#{S^AꭀgJ0ԻS #m [=QX)Mی*Xȁ< 2F1-")@> 8)-/į7ZvqCBIsƧ'y71ǾgJ6QH"6Kϓ$= >h鲊s|ozb@0.0X4JL5M@c?tg.P:jq}V鍄OΨ`daf!Ly,S^Yo5k!SQ|ȃv-C]~oO]۠\ nC%&91E4NA3D4%5KNm_{ОX 8?cg:P\_(We %:@a󕚢玷rN)tvuqi\Ia|HST9<ؖ N>"T=H53zefbt0AFtQ=HQ;mH1hiXnz棱XX1lT<[ö44a Ol7dZ:ɰLJ}")?RBs</+ _nMYe=ͮQ:B.c!A+m l84 $f|?$l>TAC H- )FfsI>ASp3ݬ^H6!2|?/Y΋]WX ~d#IƹAwϧ snc g .5Fp(*βT;+&őQ)Hiu5Wv0I<Օ c,͹N}lgoO`tBmS5U>M?"mw m4mUjdUK<"S! |#l$ߺrl 2  Z*Y M::/zo:HZo!ӊu5kƍN3W=ͳ?VƈS]RX=~A OzkC1p$kϕD7 ؗcӏbj/QPUh"caebڎI G-*rPBĹVAY./{E6&#[1ü*87#CLeӼdЪ'Zc.k>lu|e  u0@dqʛ$dMQUi_3g nMUIjD)9?еAsy3-tGa#(I|I~h4:-yݠ|SѨ)J ouh-DMx[ *9C|(Ik 2Ĩ']=U=u&4 *+Pr/'z%+diP#]5[z 5Di+u(^ʷڂlxBX@n;M"IDLHZ}'ͶsتW؞tW/>+AmŒivz&P@ys_֫x+QNtWM8">ttwј4QCiW1N%NyΖqü+8Sc$qa3z.Uce*ُOV)~GDMFW&;VeHCΌ 4O SP.r[%r-Ι!xѦEesufތ-PMB0-|cW=P.+ !մ9ܙw df#dzHfzb C`&J tf $˹;͔(4[arTcSшeJ[ucKNcR:kb/X2|O'ТHiUtp?%>QcxQϟϹύT\z! $XVkDU#ih)0ڳA\BXw^Xn]piΔ<{!KR攀?r }Si،KXA=W!q4 D!V;J"E ?s܋T`/27)_Ki!I{; 5: "nc$4>:C*qWU}{Ί':Au~I,Z*p-8!CVmL6y|ndЀVש!WDOmðJ@2- mΦzm[T ĆhxV=9*Vŋ"4_ p{VY"fYx"Uo/ #UOƲ|bqsb4 F:T J WxJta}>(W7W%<Bv kQn¼٩ 0Ecb&Ʌ a sũALוg=Ր +X]Ƚ^@ &7n?"(2:b")r')c)}'-ggwO!#Z hwv M!ȋjW P"0{/\:L8( 㘟8tA$ nEGH@ /QaEksV 0)ɿ SmDi]gp$_R2iC8/~:p@GB;}_Gէq>W0q95^BT*m8R( }'}WH:!hZ!faĞAāĞd a{ ⇃G|S겫E: σiPU4,wRxo"1$UI!u-~$x*i[,CWj=FHE݋Seٻq}7ucZ@ *80|+#0¢5CYEk{jHmYш|h% ~DYRU-0 ^i0?{# 5$ -B/M|+7ڥ<똅>i0/+Q9CN^*fԼfui)FiW}U X+0` {^,8lmsPZ4#&VE1p_0)vLᵻɵs B+*k7y(kJyް LŇ(>:uiÌvgC%TLP@-fiKLy\1+Le tvmn5R5e#3rlK*%dfGJ6~YSU8٥4|JgN:M=H (;~9\%Zjt }AٵwjD|YY!N{&8dsT !|z%_]W(&2IV`հ{Ҙ/Trr04qDklk W4,RjjF?>DlziB@IV[%F=f8'%xaT']>v.\c+`$![lPÇKeW(M rc#Я``**lRyjogagQ >*XUQOqYsꄾn?k»X6ʾ@m.fn.5*//pjRmw N*W Ѝ!-lbM숆CIkęuYG_k{3^R_C{5Y4x Gr6> xq꧲ee2~!blde T=9RX8JM03riAT-톗ru+x93;DzsxkD-0<)NvC"POHzo.󝐸_jDE1hdL9D6}2L:[@Ӣ:¹? #y(T+˜_$tz#}hOj~@<̷9%y`D  )TVtJI!BV2Ѿ{쁒]d+Y.|Nޑ+^d(ط80IwZ*`*Zx4'~ÎC MQ_tz:ydzv]BxB|e YD]+ , mEr;tЪU7cP*OdCnYC @+ĄIordlqvOP%cx1 ~!:dO_g񩻶(7g^`%X / ӣj"R |V@càj$E~*zK7.+Nm`fH4L.Tm06vmQ&_*;<0壝OFLN"W^zyEd`T`&"\?{/2|w9GytJţXV4Ii MrFBxgf?RUH f_•=QQ%- vbH9䙂P Tj{{Er (,xތ< &r?}^}\5X}$sq>pmϽ7FP񤠝YV+ aאa)Dq.A1*LD[oC(ߏlYl :.0.;?B/Zp^g-@&4q^D(@ e +!jc\BU^LSY^Q@5VC˸<!'xn<GzϠ;Xx o_`$*#SW%"$j#dc KA^sI\b*]VNp0)ЭFY=7ɳf&D*Մ\UO .! %NuYnvJv2.%sy+K~ ^0X+>8#l) RYT{NRҵkcqr$Q[ p^HpI> ,VC<5K˖)aՆSg Ԥf}Elr|FiX}[X-U٤q-~RD1ޢ,t :Y7wqא;n`@SstCubuyycR~ˤ-^<As¶aF|OE;@dY3?].m=~ٮycW &C/*}vz 2bzG4%T*2R ?Jb$𒷋yFOEeFM;@>!̈ۼɪ&j5n3-bt'YPC`;6KW#1~ "pRxL;AA6IZgȹO7 Ӽ_YȽD+D|i@)K]!v,h]֗ D9кɒ%;`lx-9h[RFm\VF@^ۮ VΣ(tzl}c|6e0ґhB;T&YbCvf3_f| /ucњ,.ή2`JV{}X{$R1NNbe+izɴ8\DBPkY: G^7P[c`^,DMI˶x< GYgsD#/8T\H DZ0*̀[/Gnt`սX$n󐊼$vUHuج" 4_H} +BoF8'LRyYJCH\h6w֣WvbkbL(;ڷ %R=(WOy+##WerYD^*&fu⮥xpn|NZ/6l1IMG|Ov/Lm'l#+VH?|w7};[j/^dCHZ@\Ї8|l/Ca*[-ljRrt ݌Xd4ѕFWLZNR)^umlvxC6MVGHNqF1'!VTh^ݚlΩ\枑cy:i='֘K$|{ɥwhƾ5}a[ga'#>VSECwo\d)' vIeu(6;T Ǒر9{2(4ƾQ^:L{Ȅ4nwNA9E =]mUPK rEGˢTTj븹A(sؼD]=#¬ht<0haN[MoBr3A^j9oNEK2,U7b45[0ݧ#lUQ8"^(# a{mq=￞ 7.Q @S+ rdiTd Yi]/^'QUٴ+ek}T[^{Lg7'E mӢxt@&X Wfs#s5f0a<1>@IFP4n_pTuU®C6 ur;4ʽK광4_H8AW҄HP@6Mq"[">Q}^t~oa #3ģ02>Ps'bk9Y|4Z7}7xC]+r'6BȲxvWō{(Iv.$mSykjh뤬QKm'vqs|DƤa88C2_#;sJJxC Z΂Agix(ɸ½[w_gA|#r׊F2$y΋U\R%Hπw nFuN1s hN/kXh~\iYUqHaa?+F9'|!C=/5*/{=(ףK+{k-A۶ 1°F wH36[-2sf: 苒 syNSnW+u(-> PHQS 9(ZVb]mì4V&BGւuA#>N [T$MBWv&X/XvݑT$CKz "dsSyt<*;bhild'p(B"FgoAX.tr0Y wA$U-|"fڞCvMlЈ3m<$I]54r2io:Z(qH)5U㡇&;ۈSȃH Uya14brli@lbAQBz,~R\wB<la-ffd`J@x_Og }ƥ ǃK7NOT6\ِ^*ĕ,r5B>/ ̍@;!<ߋYTDž0k|7bV=`3 ;whrO[%fd(a| :M-tN}fFW'2,:U!]``!C&{6ɇ+_YÒ[1˾iE5xLc9v;9x i)rX0'$}[y0yTÖ[*!JzJ#ݿ;x.Ua\"4L_lK`=)#|&y= i2ۗZF͓O3+^Xѵ̈nrMr~^ C%=+c "1ahn4&C:v@r З">TB#UqvDA\\lQ^ S ҭْÓCbdVNoUGqiɀ neY jf"O2MOMoJGj E=DUI/3ć_: (yZ*x8ؕc!O ȱߕ(ddFgFQzI(xpn_=vw]OD[}P/'1(-LPT K@O(Aqm2s^<[ǣ=|1K KRvCeS*zX"Eg_<|]ذeLuvn#FGX[e\P~ݡ+@ kֻoטøoFkhrES@ ]A3*}\;{H .?A{<>BĵU.#r@V13"3(/c R]5F;^kζZ1?qAh̫WJLg0.<8D6ɪiu*oQ@ʾ|n"V"\fMqRq`m(Mk_{_Pf6T>2R_d(| 5q14mN[_.ԗPf𞱫8٣Lu;ϺǑUu[6uWTQ2pY`yIHFY <5otn`vqL2 fJY)pZ|N3Ssy -ӹfZs+]7=2Įs!g #:8ioS ! Ǐ R*R=7}߀Qn`8ATq`Ʃ"% *K=0Z;c 1@_5[nB- FermcjOTdIұԽVC#̓./15B!]Jm5PxQ`ǎՑ!bvgRDk-m6Ȝs4B Rkw K=Ň3RzZƿme<(cNw4 MS&E3i{[McV~xT@yDI$2:LPqqLym]zv&VOdzd&8Xdc !4 {v6c娟E ֮;19wL/ޭxvIRǷ!鎴j3um!]R񒁹v 8҂<$TP÷^>(1oY] =XވyiUR2emҤATi=mD3_'wc{R_NOm‚9ECyS LFLB4LkGr<̱WEŕ҆j*dˀVWIՒC}k,Zq撔SmB4*h(ܸb-~mNqĶ. 3A4sM.cc1}0KZ7OOof\bs%%Og7YGQb\fYY+(!P*F8䒃xYdzmh Μ>c-ef08X#64OKu,[O(""DBA0RՎQ!ݼ |n`8zS,hJ1Je?a< .#zuj4&#L/W[+'@ C72C&( BY&ՠLB3/"mKrk2.@0? 8d෬f}\Y9g[rVvdK/]J,}4uəSz_N[#% UAg:C HrS2q2AqXJxǧmHlPcf@FksqW~B^]l1}hudݓM(&cYiRG-O9_/rQj=Ln;Жl>"SZq̦ Ad9t0#Koޓ{Y~B⒡SWPZ4n$gk1 F4-tǙ,nLnn.82ւAɨn!? 9;!Cp&oC㳴~z3=>G+Wwg"/6H(֝lClph\ֹQEs1w.63J_qv<%1j|w륜r/ (-B#v咄d#ܖwìKt!s Ի}x>xUB$-cU _nZ7mE{3MƢcã<ݎ}K.kq+GI;/l^(  A|UQ΁䅁vA; y(mx f=zu 1:$9DdMXlDjRZTAf C8 fb[pĕ1V;O^+$a2}S\:d_l{͇EE,(|6W(isΙ^M~L"^(ͻG b5"> BeOl%$Z*-/EY-kDF> )#$ZZ`36Z;Y_H&}A->Ɯ(=FnEl96l a3ZfYJsA)B/Sïq#i|x+D3𣲒j@D)S{~@f3 ,/RGHw±﹩a5ԧ?* W:m mE7"Q>Ϣ'FAPr"'zLnt4is\$V=6hS\ K/8tFOX11%w/ P85Bw`47qnJʑNxtGe4\]6mEu%YͻN^1Je.)񔷞- ; k".%ō;Ƽᑜzm\x OmJ|J*F~P!t<›-u/Q̣| R _O/@ _!q9+]HR"Fnf=?}dJ&PG>18.@0~AΎq5ܟ% 'xQJ ӋB 0F>X梅ZܩW'V7,ͳ!QѼ'd-%IF[ܢDF}ԻDǎlGᅫH&-;^Ymy)Iww22+{(R>L"÷ ,4( r."i쬔u])ce@aĒZEqByZA%'k<%,8yK$*jmG7(={PfXhOMGȂ4O0^n9D"iN+t Z>ﭳ8] gZ<=Kl[qtPRIUhkXW{hU¥3; "Y]#5%\vBzreu17aq?*tVWt1u(M1ʯ}L4Ex9֭zNs1]3:A2  5A;7`i/@dORj6̮F7&]WLk&03+'j%v'Gҩ1-p\5G\? ު2q׶>*"pJg1Ÿ';C[2v\ۻք K܀ _dP(F1rY' ~n"gNvv(N$)$-05\`7{ƶNvkcL&WVmwGISDx@\~ZI9>ۗTjj-M0DlOԉldYZbk7&}IxV}G0!D1} 8񰮅>!!FsrUjG= F=>[ Se>҂{I5m|>[_lOylq#Yl@KEsՃpT4 w|;K=eYwAK|"{\ay1 ƀeV,>ZHwJLd;(]{GYAk.oq8C.%ҝ|Rv.մMI9$op :z+m-?@Ƕ &I7q _$-;MܢOfWt >bWy[bhFO5 OӿnؓZZ|R]deLN[}C87ѷ %U ~STWRIMy'A9Ñ#S&5#DW4Wµ2gRV,dWimzZo!~OP(8Q'&S_`xiv!-=l"NcxSm'f_a@"{N´@`-+Fv f+z<lƚB65ikU42֒jȬ} yqh\ư-$(뀓3FXɳ6AX= ] +CuoW]O[ a}A=&Gd^}Te|S0C K8jN-(W2Z݆>&oD .~/U󀿘2M5{/W)ȡL(&ȕ\wM7 oJWMWxD>6WMu/G=JhG#/Y$ yr{а:t-[%hN\;PvisATr3+BǔZqLL#ģ>&^o:۷|}̏ǭѕ`D"u=8nq3,Q=gxRswm %̬hBj3F**HD xNw8֤AJ97悎~Z" 's%O{m%G(gSM BL>rh pyIFSLy`U]*(T17Ha.lM(=-)_FGs J!J|crDlREJDfI}GX{GG[_Y .<-T `\MK.g`Gpy1+ -Rl[_O&2ror?juԤYu;Ä:z*AX(Eq`cGي)wƟ]y_!LYvp<O16]fhu6'Y*їV9 u+e4;\~:w8E'`W4,,11hK ϯK^ۛP53~^gyY-Գ̶MˀN0Z < y cz:g bc*}%/is)F d ͒3حI|eymJȝ> @Y;CT\9Hϐ‚:O|πl&?`]ԷnQ1( \%e3GhAƬ eK$WQ x%߶BgbAYz=5>R̼rvCO@:r+vl>WR.anm!,aH0v>fT"RkVlĂh#[˙*i:MފC7〖ef2>Bt'1+}\=-,3g,lݙ5Tx NU)dW#(WFbt?,8묢8-0+ TV{^k*c1'ֹENVKSÊ ݁#VA܍Gf.G[_ wb&1L@WsSP?$ tzmܴ$,|1N"Akh/,0nP{.zÄ6<&^&@qE2 >aQ2HЃpfeJԴZ[I73\Z.&l\\Yl4p`bZz!28e 0i^(M 6D tέr8_U- 6xlO:n ZM}G.k;3wFTJ1\b8͚j֍Uųy0*vAsݯ]hxVG}a6t'Ux"T:֐q#0CvFԫ:RW2}RYhFa.̼@WЉ^-W@CC n(QִNer5o8uI^ B#Ӈ{ξoUE-WF3E6z:'Pn^}u) 5ZX*6BPX+AS"Rv?ioɁޱV@B5nπ-i9k|ճIm$6@ 7A{B-H@ H*VW};ADCr A#MDRPIX&p+Fz XҲS;~M% 3||'-64-!, $l (:5#F%Pu߲< fHB 5.y]A}\fBJ" -+A&R\⿩CZ!-vq:HЩk  *r(Va}B7Fإ Wh20ș.{d(f o/gb*e%N |*>}Z" : hNέߏ爦'ȿ|F ^™EA"}xDo\$)]Whtߓ D@;1؝1e2")BgXw!3O3P UƸAG?M)EG%[{31Nu_-3Y`+6bXc)[:ж^d19Uem"S &G䂀湘Nw;q%*u< yTcRCCz`55C -4abd[j6= ^Rabևh=p9+ tQUn,HygR$SSwG[gRePiK%q=k+հLxы=-DE(Ys #5I}eYc6R%g%{'(Y#N Ҕ|o8s5sS$:4EV P~rxׄDu$\FXPʘ##Dۇx).d}۳&#sSf P*vdn`F(^XF[rͻf&KӆֹQ^ҙ,L6Z [UW; OK9 faF [iwP L#SXmGBȹ&V; p (tn/bͦt+,ek;`r w֘1,}t%)H=(k9&4vX>( jmNiGc9lI6gЫp~AajǍNoRU\=Ijw$/UoP7Ԋ;J>Bq0}3l 9 a?7uu0aj@:oǷI?VNqj"tXjtu겊=@?gsu4̩cɌ:H"lzȀSI5*8.ȷ _hrD+8qpK8O4vf& %$ondyr%)LLW;|sy,ڎ [hPqPz7s&c*=jW*Չ>,@pԤ%`&h<{^K¹q,e^MH(Mm-C5BT&`ƀ>OQRMID*HKU\9<0@,-`lNѵ* ?א (ZeW(|irPk!NP2ʆolguM3<|"~,lQ$ܟd.4m~]]8\ΙJZ㩵;+)_ws-S/ucAif36eAyp:S12q9wpA,Ḧ́jOlmٳ /iu9ofJY8Z %7SLsxf ji$L"+B :^5پ;){OM"řIכsca,C- /+I=,@؛+Wĝa:xm-n(ɚ4ظUry+ _AaƧw}E`B%GZo1o=:& , ]E*MíU edGYNL- :%zaTpA2+]E8~Tnz:1 ` $6ʭ) uܕo!{u CqB"Aw2Ӄ ?X{3!hք| ~?]vUc~[U~ﱎ E>͆WiɅa[ qƐg+c%pP =~rMm J7"Q2e1ꪔ[r{bhB.guOnGz HC*5b?MG O$Pc*O]?2?Wf: Ϩtaջ G;J[9mq/VJ!qw3oht-t):Oz|Ip 7.aE2 ;66eNAc]n1$yb.N'vmbWs)J)QPwF@5]4CfrzCQ-Fd\ e Jȭ#VL!2)h:>dN9; /,ܴD|O帅 >^zmlWٕjj=ld&2NV"X%XLf23>N'9Fj{wz/x-$Y^q,oM4k;=R8VޠҨLW'o愩񝗷|MD7[엍Rʈ='3/]Z/(Տzq<֜$6ܧ7o k*4r]4{-,BI՚ ';>Io|V,7tU7ohzvII ˣE>`c3r5*z@ӝ@1(,0U)n< 6]/z7Q^oytM [1XAڱ|#OHfqXL_)UZ 1~н71טn*CmoY=4:k R^;.񧔝Lv%7hdC) C-8 R8DzcVũ_l۰cɓè+fjWUd;dv(}26~mloDVT &r$( N+}e\Ovd 4̵!&dO$j$j Ү/3܈{mޯjE@N*wƟqhޔD:qU 3a6*%4w"-|He/\g[5vr!#Ȳo nl7jԗ4'ƞb'QD-Y>s]/[-b#tvζ~sjךV0+IG@ELI7#Wt@s;_wZMg tQ;ӌxBfifV{T32M,,sЅkġmoNāQCc%a5MBM o`?k/²xR{1γ@84P}ivN1wF –@"Mx0F5**YrgܣɁ׌MT`jᒘc]2(` bWa"Iudt(G[2d]9PUg5,ƊJYXB}q!U3ts>biv +.o\bm/&9=?[esn\OnbZ >MsS#.{^& vOk<k) ;R iOQ%t3Ѽ-{߉ hUٯ3?D4|*W4ew*6YÒtE _o~iHe,'!v 4>f˾H< \Cs|cKMYVg KE܄ v-)=e.)lbEMFyhy\TQsR>yDޔt`[#76 3gZn٫y=l2;wMWbHvpϩX 9D&jD^J-DPp'J+^;FQk=~r̴qMZJHl NCdxIRv.v#]Hخu.?,\4лc>=lt'nNKJB!+|2\BCpHhR;̱@ҝL{Ν ̈a&c[XUmjr_(N5s>`C={-$]OHiĈ+YHT$fO^Kl.Ѽ4!+(S#U@-A\2:N,fixug$,Q]g9Ī#E0Iᓳ1/uXjPeve!8:6ICVky;$d 9={1t' {6\X+0t^LasO4K4˷a@c T)VcXӮ!;ğ{oQ 8r? w\x邶ہ VӒܹBVGPGȜj55}>#,ㅭ"R9-Im^ک]azB@?n)[O)8on/Xg]QF;#]ʥ MI(w{'rE*Ҍ?HԼzȗz#^btWscY0;Pw}A]d~*?<3ِ"EIKndjl@`r?H|OeX#2D*N2 I&V'C%6Odf7'b"n4J}16B%ڼKJAмU}v--PM #p|Ţy{o/^<ީ|@gupre:.Yhz Oa}uƥ_Y\#I2BcmeɺRo4G:/SȮX5$q% ゲ١AgjSSɟhG"ץp{Hf^ͫH)FQ²/)qLrëuWhLsz!_"ݣn2ds9cH.z ۱1~YIH{CwiA/C1Hܟ}DA- 7/DFcRc=Y3/#qȈCk)< (NR_RJ\Lw(nDtٓN+Xp< |12 4H 9aJ ,si@P2riF&>PMCbL)LO&oa}zfk~l k6΅dї۪ZKݙWhAwKE,o1 zwTTvj Ye `ejZ!6׹zjʒ/dTT!3D$ kӏOAՉ. sUJY|%T2x>J{l-C"0H0RKP)F[@+Kf*Te;D϶{6+k?g@?S줞8LHx#Nl~_Qlo!F'uU6vUsײ\l!c':DZ-}2pޛPmֱz|ĊOE#s(7;6& k e'M`=ʨE+LMZ?w#B&˥S@z=tSܥS;#&=8EoD]bkt h2|n[8/@E%7{0ٔA"fGFpkK(jX_!kEC GOW<9ytc͗44a~p0e JƊ% -kݠ_u, aD}iV-HGPɔ0VG<5_Qj-ۓOS2c)W?_+)4a1ū@5\@TO5\Jnǵ.^D% ?Q3;a ߾>x[Ʀ `{"t$br1ʽ6*+=uE-zOR7t01'8_n\F' * `inM6uR0uC~OMD3QHpO>&juw)$fx+XVO5Yg#i~UY'.}dY}Ln޹p4$7khGɊOZL6)TdrpD=w^n+-# @o+* džF;&I6p(' 1N|߆++Mk;Y !nyo6gP\݊_u:f,=m8t918\W\Wգ еP:c ۳=nρYw6U]D(W>] ߀ԡ$ދYPPB?'ch)4LT2>}9|OIKU0T^ 9&[cК  c1(LΔ~P&g?$"oF?\m0QOf3?p!RZ?=?5VGy.H+Y3cm^ܙ̺ȁcRRhX;LXxfuG6'^Nz}G䳦t&ܾ_mXl#wvYcoG-X\~a|r1,zo0~)G:Jԥ*Sa:ÍgO "Dl^nX;oi/zR"GFF1bzXu5⁑> @VL4/ojBM1zdNS/jӕƻ &ר_ UkqK~PUR_p=wUbڭet$RelCU}8Pߏxu[s(}ޕ+|\jZ<]{>=*xB(cqJ۹萭F[CƎX[9Ѹ8TKŽ^ʿsmKf}`k 9gO A8ڬLh!CxB#3z.D[c0$9]gv^Bwh|n z.'+rn, ҄N}Ŧڂ_bѱFg^kO:!W=2hc sc`s) 㓔SrE;UyMȞu+USaJ!"^Keaw%Ge,+?7iE j{,--M6եd/ )zٝ*b+Goyߧ!lGKA/ϯʟr|;-SHe~e34ow o8ŞfU'\_SÛTA'=5''&gyJTBzڷs]&~6c$Eʽ~m^EM Mj"{c|u-9A|`}&4BfZ^וP99W c%lɚq+|[x+vQxeA#ə$ cUC"HuH\߬3gsN yzT.RC>6|| {A1_!29PPe&NwZ..)Tw`#ty[ÞqTӹ+YAB#04qGoN-kzl5p@瑑S>ٰՃ+C;!E%h$TVroŷw9 U!`m0|_R K1,Z*CG"qtM=sgc Wi޵MݫSTipQ5&@s|lԇ;{>[ݵ80&ĥ"`1\) I kTd|63H /QU{P7 p MV2Yc|xtx'5l[pb7t}e|CGɏڄYP4Ց5O6 -7.gzKj{JoSXЧ%حDaiVrd-nDCpȺ䔑ذϥo`2u"?~/fHKY޻/ۃ1/s91F}χ tn2ې*HTlL#IhÒm fL֥;}!oe\t`?+'26,ߐw/#1~ F￑HMt<'pfȳ.:Ykw WƼd10BA>O0 [DSY%3q+!ܘfץ#yksYgLX u΁0єp%NyuZ}!9%6xԠ 8SVՈ#p"y-wnۋϯAFQFzNq?kܮlDj1eXw&?{dS^P^xhfbDL, w;) 8P.f[mP8+dqMA33*(BddEBm{'X4D۵%5nrP?㐧/ʛY2ʥX87 2kaU*og+_Tv'eY8ow{)ʜ!2- ҂'9^M #;[J*" ޿I flƉió!2P =L蛨 p}z ܟ-sWg7.ȅO!tc/\y jm8> G Pn_(c+ |y[%"6JXXtC;v}-(%1!PbOdO185ΊK6 F4c&Q4 ¨x aĦQVmz/tp6e[$!LbwVs٘7@qS6rgZ`DwF^]RS!sCOGt`k`/MQۻ~"91u kUβۃ&WnJ&Ζ #Țf쎡w  dKvʼnQ3.l3m!Crbw1wy>DF?VP$Iv*RC vOA ny=Bk]3`0/lEhڱ Kmcb̅SDEPX03vR,״y#]gRx]cȱb3 gnoZgLwX`㔾)Rb[ց$$ L{pwQZ D2:} `sY!v6HnT8s#ˢ2#ycoJ0YΗ.f >G*,_j%]6~(C;/u0$fjӟЗZx~Xާ 5q@:Ne#K`U)F_5! =T8!CʹFU)^c:"$6#p3.eT;#֊ ~pj uI'\xǨ(1qnXBs `8m5]@9h.bS,ab6hKk8=GA~2 #摏l3[mi*?`wN7˘>cY)re־M8uqYzŦI .Y4s2P_NcZx>A" \V]wk2^DͱӅo#8ǘ߄o%fY[0tJ>(zp^[8v^캇8Gv]31&^6oҝ9# Ć҄%kU6zEt'dM.S72_h^TZ8~a3zeR !#k{RNDvs'҉0v0 WTnMcBJAG!&q_%haGU"Z8]|| fMĀ+H>dW}+`o?P_f%Z7A](sl;'A_T+Kks[ђ\A߂?PD$k@쒨 kI[#4F{dk]fpPAJ3JއohאRʙPnحCסάz2Mn?>6st|o€M/g-=t1WO$޻/_ɠ#-ۓ #7Y^?`'ɥ#51@;ϷSl$aUE8x@Β׵Q6Vv[jʈ^cOz7RtJsJ׺1/ÚTSJa^ iJ߯¬ѓ ^_NOK6̭h"86m҆\@IAfĘ/Ռw#8(!"YOh  R=sS&zEv}^#mG7獖d,ZgX|Q}k(W5;D_^HKkC܎LlʞG=Yx:sf11ͱD+PBn%M,ޜϦh67jXQކCA]Zl*$||r1NU~۩^QRRt;DhԤs %F]+ܹyesRςk@^8Ila7ifИJ5 =zl3$V,*]Aw5+yVƧ%'ip.Fjv{֝ZP?|RJn`ޘN6?|f1VݠT AǷ>Sšy?I@n:dBЩ9?";`*Ec`lp 6'@!3+х fþkUv{P3N5Ԃe5jYpOۖ S i7z D?+Fn.X yN܀йp==yR lĄkher0:q ;i`\A!:]X|F.$d^ydO;9ө0;2wXm/l<|N/dc@j$د(vpZsK飨#߈U2b+OWQ91zo'jGêRv\P@y,[]h;$81fL  ID6'GB%"؄+,}5lWX܍!tl 䢆.8~3&&^<S QH%𨿉o@<+Ye_lJ{ kBo>e&4澩iǻpA,?,qج-`˰v!skUܛ~VҚ)؄y3ӔQٰA}ajTQn_흁KkĿ 32U 㞀XU/3TfNZK.U=tg8x>i9L/0JZ0_Q739Yv—<(̺Ѭgii7~s`E[= Ylc GB +ez(ЯumPQ^7\5Xg=f JLqJ$z'R-Plf`[R%WJ"Y<8-srC??R_E)tB+e@"4m+#8pڞ"D>j F M"eqqk# op;"Ab_B(O~ IsCR UgϏ5sixtWsRLpp+J Ch.z3OjU^q:$9_b,ap7*%i*MO'[w"aIWTpq銸?aaɜcI% Wg{)Ûn-H>,cA)/"- A P br `lv8̃Λѳ( i9-n"tϝ;A(b*zR b./@"> 73{ngעΡo|ϔaart#Ճ F (Ejk%ia[.&T@߉Vl;!JJ[/WsZO (ffIn>dc(o^ pU1IM.*H 4kn\6)pτ8N@e& QO4,ÀL9CtiO˞lX$py*ȃ#E@m1+ 2^0)ZUk!#հqRPԩaD&K,[JFh.<״! 'cvDc/fS]QWH \czPv$:c6(A{1IµO=Qަv7zw*Ѧ|e,3v{eIJǢ FjC~Xn^6Sw"ZŦYÆSء/W#GN߈Wj}b-ybјteE}Q(mË5t} &!M"- pe]27 :_|ڵ)aw"k/ RV<-/ /omLƂ#,trY\NsT:u sTԍUPИͥW ExJ T\}k?g#r'~YFݹZ$i1N)@m;4̤ b&-UG6,?Oi4&|&%,ʾGd1 uЎDlպkEcU *~;xE-yY <0ID@ZVz m˅ \_ ]/:87'ع{_̹NVJBy-+Yqb{1)}y& x+:nQ]%y=3S}Bɾ0CxS+ gr ͟9<:V?0YyJdeE nЮEᣞw[JHI<\l"P'@MZCPN%hZkO 0]TLQ)1PKhE\Lb'_HL4>T{>M2߼üET`7o?OAƒoGsْںb1a2t.i:0lt!_@W;{>mSw2I=GA3Q1Kjs_J04/}NGn1O~2AlTۡ‘Kiziy~"{j;1 b/p7{ zoo9 s,Mi`A#aEhǜOLc?B1y)$n5QXTo4#Ϟ̓?ރ9qbʊU{wg8[eb9 R̎ 7'j|H1[e,'^5J{dcGT0f|d i6ݽc<tNUŦ%d4jdw=b)/Q_y,a*櫲Z}9gװRpt @F%tA|*FvX9w_S/ q}h50T_fA{c,^F9-|&wU`}ը5!>(I^|w_ d9e0`='P{(fTp[LN4v+X*&KQ)>B(-W\WC+dRSOfG$65#A{̞Gex8էj` b{:w?ow:BT[wieMYՑ=m& ͥy ]x|kW!BCZU,!n^u^lU@ա7FyPޱJ4^5_I@ٮ+Rby˜9 m7:P3Kp5 OxzƛåtNQG ǚ^6nX5]ZEvs/LLTR0SG*E4:ٌCg1Ŷ4Ԍ"@(: }j}-82VIr1niu,>t~1uΊ죹(4V~p2PRB\6jbFo,w3}A'X7/n/D]w֖,%DdwxQ:u8}tW%m Q)fkX˩#b_6->d:HFzfSWPñxLM)M5Eh`^ }|zЬBb Տ 2O;iq2ĉABkVT>S%${_1;p4aɠ *cM)`)9yXƍŧHO :=ZA|øx?T\x|{9tH ZδB (O]MiՇlކXn&,_uЯ,Mwg[$X.ʨ4LTa Bx@ݗ;:ܙ.E{*'cɔP;go\1h[T+, Pҏە!l(ߟL,ߛlFr|ӟid3y~qFKa$[S?ʹ0'+`|>n+bAm2ᗽ-|x^& e%)IGQA@e3p7-|Kv-& !\)/dm.:ߪP3`xjKeq<7ij f>X|Mg Nx)Hק`2e/=]eXwcN#X&F A^05ZTvt[ ?Jxȭfd\5s+xR4>NPLZ0[1껀wrz6n#="|GRT뵪tB6w/:_\55Qj Oaۧh#t68D릕X k_9h6`*)wIԕwk;32d169Wpn)ZnP|dQ *q]2w ?Hh¢пi$D}T[E>=LR$C Wk 꾨`ݯYԥa̲ ա/+`⌃x1$ 3G!{%|)VؙHDX#f"P+7Bb Z qꈓ:52F{^ק1oBY6jIP,=m8 7x_QMA0-}D! &gd˲ο)=aG )`Y_r3XOT s13Ѐ4\0yWƃJ/]x{3KRR*oEnaCFNΈGnnӉ׷dWWTcTV^x~N{1sEQQ(~]7dJKdR8vA\v>`"ʂ, m##JS 귫2:';U^ _E_J7q`Or/{0P[늅#a]TmZŠ:LÊ|*eZ齂UԽolΓoŶv#놡 "#@)e|gqU>W?B)C}-<*}1ixȗ4$-,O{B4c)`i\?c6FG} -m}Ǚ\ꑍ.ܧYqs})*[@CcJL{jR j@K';A!Qc@ԊNPF6.phx*35JųmRǯ;1;_,M跸 `%\|S[bJX|.w 'N{ބ~] VL *@cȩpu].T*w.0Q[ՓJR<G/ï{U%M2STF<Lj#Ĩ5a4Z'v=MԱZ/k&@ݨq:J2z.]]rȁςx  gV5l1gptla=p˯ |g3{-5TuƳ 'T?Qn+ڨI 衩6h5B@@q *կ #pQ֑:Z"YF2GaXQ Y4N`*狗;,K*{à;!$4j##˺J'hlr0'u!,ڜ(jwX3aR:+1Pu|boNZH8e3V_b(+hsDܥĉ8p{G]BΈ[aS|@+ZОpIʋB(|0Q(@2ĉ8qV*f8cxڃ*#'Kԟ$Sa2M`h:| =hpN2.~ @F fx% {E`)FE<ô r ٩e%{|,~;1%K*ceFvRs%C ǖwO45.fӡlb SmvIk] E~1y \xȐjƃN46ss)m"t+WѦIކrEaR5]L|g,ђפЁb_KAn.pbzrѵy@zSώ) 3+S(K qSp%`Kfg?Ԣ-өF)o*wpΔlÃoi-Id4Ce0WG)\o?Y@0Q2ҭM8}Q[ӏ>ժ­pG0jTϪa(pZe"Sq6̔- b !x Tmܮo9lN)>TTP>U#1^!Z[p<{z/!)G((=w&!77 ',lAC@1nX%"LÂw^.Д(`$.v;`-d Q 2j%#8@Д:Jwml;VQ[3km*n t\&v=G(_'FKy_*}grc ,xF-Nk++QT=9&LRuus5~5Ăl-J߷`7SSܟAKSQM\S=p Xҵ},1@dm h@=)O/5g^,'@T}Z mÆ X~N@ҹ'?4.WT>oӣ#?2.)!3W_lP gϨ]#( t7RG)T0oSˏ֮= uT䚃L=GN\NٮIK{jn<0U+}ԅVL@ۻ8yA FBaL¬;aBO0"0ʘM/r9~у#q`ծ|(fM#$tg֪qY#P5H=iB|}W1y/ USBFゕQ9̰lҐĒ m2/&xŃ3b$ڮyd[NJ^Y8"cgy\DLOb34'on8- 9s{ .D:1W"SזV ෲExR4? ejWhCyESs}:\<}h&r܌P1uɺYwԠ0ଢ⻏]m-K'pt?t&_˖#wC X/E=׷ V&TRMjM',|3=l}^A_-n٫1$ <}*yB԰R%ۤ…@+yh'ʿ`aTsb%">Z+~9&HWoJo]0.C&=8t!+RS`?}faNIxl0n yXtx^N ;{ڄCXUab{ |9,.kk la.w,)m-n? V3$ygZ,؎7 ƹ(q$?pn\,J";䎸NI47mؚ23) sm./ I'qR)'m "$Y,'nq͑[7p=Û8mNzӟ10;$̈J%Q"7-M-;m ؚe oLi?2C,O,3T W9xIMe1ܘXO82Gj4w8QuO>q̳5pEoш,gn,t`OAp$҆++6DeS7i2jɬmg!/fR]JcqFAhVlJ(O[\ҶGp`푞WJ@\&Pl[ex1H8+n/ГRkL F&D"l#o?Eȶy&\,4^;+}<addQ%sr=+U ޛ0C1k )&/E}"trNmO5cSȆϧ RHCQ_HfˎR8sk&W0u8gh&ߡͶY׳l60}<2hq{g3a'ʸ-+ȣaqMF.9{-JZut<| A:X|iR{#QVW<hʥ'~ݐ`?SogIvJ7u~1UTܡl&M"Rj;rmH_.|4Fm44ȹS [Gb|G Ԑ\? `wkB{ɟV>o( ^BFyL/Ѷ:v;4bk۴>;Zrџs0#)W5G^> _b۱si8uPeyt_5ڔyp 4b"~NWhDEuD"Gʺ ( t2qNLGA”}S ꀣNkӾ4iXq.efRJ?P3LLdU.|O2aC:K/7j|?2ۏMM?h>jدz5}DL˥>^6\ GeaqtIE6~Bs8A˓]D`[P^fqA~ %:/; DEϘH& G8F&Rq;%<ے\=D!&>*r}" Fl JVC+&b7$r2pU՗8rtm&R߳Dl[_N_@GBaB1(;+4BYP/]ҏpWJ鬆M<.oB pm䈝%2W-G !׭z(#Wo XISuE  3xD.Ja"npg teJ1FDYH/mٲb aӇ1[d+O,lV|pVsMV~j#ɴlw?PXX)F8 3VĂa h@ByGb~Xg *ҦD%:cD: 6#WZVgN"׀ǵb֗9ӛ*|8=bwWZA+! HNh٦Ͱ-M7H{S?>[F2 pvMq qLzK1qLufڒᶹt8~R0/ u/ili 5ȡCqĹrSd̼V3IBJYZ+=~ J@2^V nq,BP"yykG{2#\_QCW&v#0ӗ=+El }(<&@wVg?HdpE֜i:d?5xKcVÀI9o(x7 3@*TI"74a&tbS#X-}]uKS.鶽}NY|z/S@8KFf):Ň5:ȕUÈy&PլrT$Պg@ C٣j tg(8We'k#f]?z$! TBXY#/wf7Шas|=,:WqO]jX{S^*ȕa7BF,3'C|m;xfh?O2e}dIO;d^i[~5f9iPF_nNz[WP2z間ӎ(K{?5 ط@ ew^a5oZf9+wpź'9NS0S;y#7ˆSl! nmK)0H=pwFJ$Jі@>i4zEv qO\<7UżF^U:Ð`#gUpXѩNRQN?fs+4yf-Exmcɖ\2c9p+@;6X؊wfR#0^a*C,l?z+k8R4(V&c< hk>gbo9BGδ20p:ԇ\uI*p  #SIҔOag9G[:D  }WLR*#LiS8愒“,c,,,˜/&3-:SԎL#?}MLx'>i"V?'=50%jMA>ѾkN-@=|8_ ({ݫ*oc*븪;!7 u^fa692v⺷k5.!Vgg.B`phWő5V@8bNCU-NR<Z~XM Wa(n54In35č#MiӆM&٩eǫ ,*> ׌C~MEK ŨD~ٚ? z9#ɝgÞiӟ,W1?^ >09h 7W Iճ3-J9̀IIi>sSp19;P;{RS'ݚm႐[ŮNLrD>z()ڑRUˀŹ+W&cdxM̖ﻷVmLX?w희Vvn{ )"e?4quQTyڰOD!(ܡc1Edኑ D fEX%7Sxܳz$f$ my &7ȟ/C{T[(6qYPY%}F:6.*.v0qQZCO:H([|a&1L=#1Q9}zk߷nYa9_"1UyX^|׈kkz Gf ԿI'KFhZ;-`ZD!Y ]cTkbR԰јGlyWjpw-'>Eh4Q WS:ۀh޺rj^v} I4ހ"% ~55R3+kXK1)09_ #^([IXtPĽI4$GެB_S:.P/%y|B;tVeB&\vxlPjv.ۥ/] 4zإ*ĊBneV[$Hlr5;x٫{yבuUGx&EU!4є"KI^IybUSt_~ G!`<Җ^n_L /Csk-,eh^2Z|"ևeCrvv޿zpF}c.ʈY@o~vzWBYztٶ Ԧ,yyFdKx% 1&>.ޮD!I0,#UmKĒׂ cp^ߪ<~}?у]fSRY &8]UTi߳͂S!,A$V-Û3^ ĞVDDm%D`7"7΀~P>UNp =BbLgIa[\BU1ϵRZ!Eszu[ȍ\WtpU7 ፀf?Ĩ+DMz l`Ol"E(ij)ME\0i%x3@U߅܉pqGzq@'nNa&xd#uo(Ac1oɴ]&֠HCy(<%Z! %I\1gaoP2Ɵ)xՂ؄R4 )9C_ E0R@Sfۃx D'w(F'-.01K,$L|5si7MqQ؇P%.V?J5NZPv}^!g"2d³ʡvܳjb-4. פ(M𙎤`Fbp BR<9(ZUbi\)Csoh>?oP ^I_1Q/:O')WD 8rFr- 6œ&eVKFi?z,oV-mUHb>ByF5+dWGjHىք9@qVH,9ޣ+`:W|:ҋ*cgJ{lεU~7[v,Y@0CWyXațpu9BqqEGm $x< e_dY#*9d0ȹ D+ƨG:Pl+sA{(ՑǮ# EXag#馈/~wʴ,\J.-#fM-j0m~1&W-.K]$x2O7xL 9!1}bNرnNm?m`?ޛ90M_^I:dY_weY$-dm,{>  vB8.7S3؊8^cCrL|6ca$qKU4l8Ge֖:[xbe|Wt^DPQrQ{(eнB3ZH&Gs{;ֺV߯ M/m_̵nS\>XAl"J(¹r"WBv4 K "*6pGBVajc04-<уo' %*%V}[w %Epjasi E7ӓEʙyh%Yc:aJÂcc[LEc^v(xW[JEs )L4e#kJ8颬3N%#ԉ>^4"Ƶ.GGg`'6S$-3`op ZGۚrj&]vHAïv؟JoH'Gdqm<G,Wg< q3b;@=˯t 3X |t5-^}1A$rH2(S$P.IyE>t < ш>o$J(xw$Cs,fMd9y#Ӓ(g/=0Ʒg1@qcÜ9]81]ř,+5ƖJzD)1MMK wsv Y0pk;Ewְ*Q{\g59lǑAIDPa(Ka-o aw A. " lg@?V K Nԅ%S(d;|kBôj*ԉ脩z qK\' A/k!&ڼZMb ϠvR)?1{ݣa4pd@M;HHi[q؞j?ޤtsE-ý Qrֳw4R}va3 ?s?{[ "J̀G@.Cd8PA>A\βٚ'ױ#I鞺])!&g zOB^#n%";}N$dZodDOCY@`2(Ǎ 5p3*IRbwå&-9׿e}-ؔdO[\1v?f?:溸82?j$@yiEbsHzxiVr-uU9L@ɪ qe.o ms|},389Ҟ! /g]b UiZT\+c"dKIb<-#Qg&lE܄|X#]Y"(GV-)wU#Xudzab@9| )1zTGE\1ɑ_ߺ_lܚ5Kiw.u1Clz]ΣyiKܩ)$HA_Xۭ /YT6^2]c"̥ RY9'j];Wmg ؙ>|L$RD꜁q@}rc\5~.%ZDw/;;OɭY@ =m4n#36 -m Rkk2i _ ԯowL&:IĚB$0BkdDZ^G2ɥL€G_֯Ւf5 ֢+*R :fJ~ӄzywiye,luqM_Z1&~Q$`AN5:kAXD4;B͡lu}R4FkQT4|uW&bKkMD;U5?%J>2ehX[١YIð(pyMA$D/_H+8 PApWq>Cm.%맠E+>0;]j qG^hS9ыL|%2g+H ) fcUqFߴ& -Ɩxr@HҢxfPi'Ւw<ˎlwO;߶T`u[>1?l)?ꐼP*փP7&S3gg։8)4/K!&k ֪Y?J{;Bm*L2ɇ~=h"ʋ}Oӗn&+nD{ /' Ğh>PQW1?Bxpm1~%6Gi _QxgTI:EekW8Va?ɱL`\o/ƐB]ܙ(HEV19P/]:lvi[Z >_u;J0cA<A}7I: N Z9#;mS#2ef^>7]#eA-BEq2޼Ǹt!`5_6izQ13C_7ԫa2)1B-`pXyDWಪYQ^"odžq;$ɕt! ftR [pfg=60civ3ZWcĽ8;34V;mY5XyK;X5'IhjP~!d%knjXRV4v ^c[r')e}@8B6ؗd4xEU|gAscnQJho) eGz=^'FOcM~{A0=ãY3>LO@yRib蒁O}zԿQzqxpi ޮจ}`LTW`d_6 6TrIm4efժzzJUFDxmwR?6f%ia9Je(o^ިVg PCƧCQs/R} M q)砡ɿ)YϙLy;`^ 0anny'XƄ6P="1GpRf13Q}<0,Ruab؟1^ (/2$D%yCRV6H0?=(Œ gPz֒@I|%_vR[ck%Ӳ?"AboE~:ΙPJMzkX+cx14_ ܦWl󪈵XaVK/n2V##.;VKPIbTטĭp`C!+Y 3Y}UtSF ]hױ۵k=9.6t| $PC3څA86.kҞ#MA3s,Xׯ8XpbCN*W]_pBL}xC>=]e,Yߎl7-iwSE N;U>W;Dm:&2XCWoC5r<6[ORQCfY/]9+`8)ӫʊPQ Lqt@* 8>{Q+_:ĖaՀK;Ρv[TA+bvィk,)Q٠9 %͖^së݄B\L&o^Z 4Zc cfL`X:yPWf&d m/é%u_)9$ M e>=SR@E\: D7J!B8sIO׹g%phIrDu`OwNFjĨ#K~_)W:j,G'~JE lkن&Ĵ2h<`w*Mo`]C!Jl:g%n7-La8ji0&Hg/83g$]Zʮtʜ&jI=ӂڟ'iIO®<‘Șϊ>{x>9ЈOteD/Zv3Q- 5Ch\MS5׼5xS3֋;d_~ 4kv#Fat07y S ,>ru8|̥tӘFlV%Za;p"2Mk&&$6$4| 1'#(s&O|yuމ%Ov-DWWE L^Kr wa# c8&Z)5) *ˁL#ڗcsCmUE:.ڒFYP9B#m{ⲕqH"flp4_ї|L\17$NHs _Z!ZeEُSj>q'}ܑ+ z'vR<,n5 ue1=qVz=Wda:8v!9^`УCسkαUѬPEs[yE<KBkuӫ 0 ;: qP y/ t`fh W60I:B緒y[NIY=oWagXC:KdIꠎ ~.lpqHIoG$Nlz{u;2ob $=2ns"cF^:ȸ/bLeplŐEf͘ÿhl }?zSv#4a%%Q$=HqiÓ㄁„(7lW_&3M/h/5`z`W4r K4׷\JmvKn,3DuIEZ;"搜 _ø\Go]„ˣ^b/ڔce(uHV\#Ү(c.#[:?EAkh ,2z* J$R &۶\8nDysE.R*JZjs?pYNsLo@TitSwf;al.oAǂ8!pBO=N3%X]j+S"-k5cjR 7TN`݃ܓ~MZ I؍WyIc.c(q3$%drJ| ^;EГozf t HRBĽ˗7a^P(vG _jd;S/ۿ<1|gNQ ۔ӾH8/uj 7^}!7bCmjt|n*"}V U0nQ 2gdT(z!A%D>@v*Xގx@VJ Z`Hlh~NC3Fbgsi2NI15 BlLg?j륱z\i󂌍DDMh!5/7>W eBeTZ!i5 ]u|RЭLC|Q[)Z`-pmiEDm٤/|yf#6.UBm!.W T0y1s䨻]o 1$q16,D9UHKONÜ'Fep 6:M%5d&ZQi]\/LWZx˼<S$o}U.XwH g_g`19ru_ԤTUUI! h3bpc Xj[.$Z\'--AxqIU}_HʍBw[jE:Bvɼdz_#jJJCV/Oc>:G8`t$9ǝ ";툧`U}vbp٣8dg9cxS[Yף7dhJj]c>o4OۭdN*X9ݨ&[0AQARI38N߶;6> ~$^D2'w7oxz$oAI24A]W*z|OeS!}tl#4oCdrCujZ*Q2RgQ:MI.0/$PXKve WF.&@S,|Հ.`ф[u ]OT6+ZyjQLVn p=0e3Vv{SD;Νlx9FczSx/Y+2W\OD} X,F=AC);3۷yI [~*p2'-Jn1̎[U}!5B0vOHP518DJD:Z%[{M:}msÄ9=Xtۇ)M ^܌0Ԁ]e&xyfL.2 Фfݠv 3 (.csx9yĀTL줣7΀.AT!Ŭ5rI]dr0졃S=g?Db*1 ;F/=YaʈAjba Y%A|W_ V, % nBp d@=0% Y )@N|U]Tڌ?9.njk?fMQ  ȳtADH1: ƃ/woyrp 6vx.x7` ֻ]K[=D tYj%(հ[/s聅uE\ǢTM?H@yRw`y|AfҎ# ,ٰ*t} -Pni[[V*9/ݤʄq:r(.c'|bk~6ɟ0 T+zSd $&"Qy%#0,Ęvo¡m߃7B-כ׈<喦.1]qt`]9;(d\L+9ݼ(ETu';eh83PŶ.8Y9D(O0M/vY̹)cq@ ieŷhW+Rߡmyd%su6m[C蟮k@ږRUaίzxkP g$63 +\h:.''Y`v8{ʚorZ(#K|h NZu<2:FO!Nf;Z.ߏ7@f,K9G% # -iv!MW#=~D<3x h#*Af}v rԛ\Fw|"So xF<`]-R4+I9mCp0EwnD6QP i̺,?D>PFiaW8qw5{}3ṗW܎&$ Ao}yhlk9.?wA6bӂ-V,%XI{K^޷@7kMSȂ^{hЏ(]Yw {䆇La -C8Rl`@@y"g; h>"6m٫[b(pF4|[ddz}b1 C*~etɌp'LAB\Q;Z-V.1\ߵ"k)oE ݳ@{;TsQ(i1l^7b=5U/q"cp:l*xZJuFfJ ŕo-p#P̋6jThG=Yj^{d8ckv[%z1X- '^b@tK{>wQʛJ F{$@,ƉW 9\byQx&t6Ȉ=qh*b[ e |LSS'a˰!'ލ+kK^tdHŻ%ѹ,%#}i.ceԜq ] TU{5>ڝj4zvdh}XWSRh'Ƿd#\Xg<@Y?%ߊu08Nkl7jkRk,A'b unOf !{WH"%C:swq&O+Zxϖ2=|ap9^ bDn6H-h5C$~sKӻ "Lp>)M:E(ʣ}b"E\g!kݕ#AJ5ފ<1p0sVutY>x֑4Pw1:^IEI>i僀B_w6- ˥4#6--Eoa =98Z@$AXB3|2r}="Nj4]=P"чQ;ˈ+4OD>x _0Q5<2UL8׆V~|`Y#LQ~SMt*HGUFF՝^^~n |}2^_b5Q8A^mXf1z]۩& +v8$L "TnuJ٬IM[6]0U #XtL'=zؐeZJ@iF(0R٭RtpotŒ\ &|/6 `@ 4}>*xb:sl ge?@r) nʐ{kZJ,S%3p5\d)*8}T] TXIuCyF/YUv&f ?,z=fY~2C6ؒj0"Ei(9V6bRmӶfW=*%yo,]t4@b&D.RPeHN'biA\u٫KĘ4}߫V[ YPNt0<6ÔdWBa%I2uZ`߳d?T5, hx:C\ $tu¯T045{B4}S7-73W.L8TN _Z!Wxdyk\$Ar{Y,m]9b(7mFP܂L\FIڱج^@\?J>w)nw $i3Uk ίGtzfNJ2ZW`!{@(YNDB5>b403FvF}?} kʑR'_6P3_Ҋ&Xw, Plet&P  O\3#՟30n!Ʋ6e0{],%H![c{a&2FD[ D SvE\ME=?m}sj5Uy ? %RAtgC,,  CpY@b= qcx[Sr~֙}WI6 I[ (b=㰞/2_ܣCOM=᥼DFӶ< g +Ы0 (Q|{^T(,iL]cՏ ՃrtJ3eA۷sw\,יiI.\bRvB{)E9zA7y B` ,99[6;L:/zӾlOGUA8>}ׅt2z5)y@ 0ź2J$Q!?Č0=kCq #B#u墹2Y9_oԎZ?W>8׃>.~ IcҤ&n-xF9V{r=1Ed~6p;*<Э(v%h=IT¿I, [fy  V^cg; *ѿ4?d3f5vOBRC"?kg7wOWz'0WaPQ;*]Cz{$QZgwof\E#7[?yyy!t2:mH@eXv}Y\}w,Lx i%q􋘯µv MXa3ej"TOYwi9jcXRpW\unhxN}6AOӮaRC@6a$0I-qi w084G>QRِ64A):Sƅj˝3ς˜Qmʦtd* PbPw=Iq!_J& pI2C +0m&q\6FS1/e+n ˇLӫ.WAx <~\8`Jퟕڧn'RDvZ!v)l.ELz=dsm9t*J0Tu%32@٣ \$BEqTg06JA)[H\}o_PqA&^rRk /8*:Dn3vԙ }m1pnE?.zr :!c^m%rs(*z~VgZ}O,ZdXEܺo+;"t!D l2ٷly4Ђ/U.S<'ewKRNE;ZuR[TBDQ'AğrG˔CQ9jXI9&4^fr<*v{D~k-Dw 2,g\i4QMExc<QGNf5Ba&c -A TW *Z鲲4WG1M@k;FQ)MA5ҷK61}Zܫ nAkGC՛S䂚:7$Ȝ; }%Η"}T<&%c;cnL^;Waorޗ?]8qٖ@[@k`kzhUUQD jeN1(W"q*iy CA©s14 Ug.LzHU2VA),u*48I>óYt;+xԗ 4%&,8ފȜ(ǻVAgn%aV\,Q'$0#tzђ?A f2D= =QV#JC^A텠u"S"JXImI/lSpUb/בx+2Avr{~hǏ3!:gØ?Pb)n-X '>iv6( QotߺsMp;A]&IG0#ACy(DY^c:k*Waw}=ؑ(.̴TY,,{( J5̀P#h,S;W@Oɥ|H-;:TمR_Cbp!VyJY{.^ 88%Wv;{sqn[ju?5Gw:we0]PZ$A<`%/=xcɟ4g?I,DTZ(d(ۣx{N+|6CTGumM:33bpslpPZ?Т>jШ7j'"is1iT'uܙkE,dɌȸEPɫO|c%oVwa/k xbF͘1Xc;Ys67]&64:9 h'RXz;ΪcSm1HAEbZy泔pϮ܏}ݽHnRJUcӑ/ 9gXUfIeNS RHZ@+í~[[ҋ).&C34De$ņq:t;H w"4y%r,Q)D` r%X9SѡGK`VAOx ?V AKco=`˲Vz6ga*,œg/[og3%5?Eɑ"r2O&Y{A)h]b4/A<+r>ԏ^)8G[bC!o4.&_ jkUJ9BJӕ=~)]B _-e{2TٌI``猋E>X-Sͥ+>!(Y_A^! $oov)w]Vѯv,h'uiHHpʀQ1 t ɛ.evszy#}PzPgKi^dR匕!ln{L&̲ɩ)B1HʸJWK()UkQiG'9"' 1G\:@t$r22Q]POM%}/=c bQX 󰩊".w?J;WK9CKEm!^.C) F|1՞Ɣd{Q"XUsa>dgdˢ 5ъO'ЏY&bJ>!q7f%'< nHOU78V:/1Xg1 me'Vsh|H6"sAx8X`B`=z~$ ?Y~>ZvL+ qKTG04kfK˻0yv*$Z̟+*^0Y;ixi_WGuEh'G[Ę8k%t\7.cI>"LgkѪgWL%W~kv(ZXP^S<2ePg3t )!k ϜKWkW.&lZo+; ` ժVfKnF!T|ni[dUHpj$*'B0cgB>NS NO&Sj6B R+UrC+8A[ހ6f=ve.ˑiza 9""SPV6hyA&60~roJIA}i)QvwEXP,0V 9ENbL7GJhhޮ1tmƭl|[AY$ViT/nG^Y Yϔ)k\V#پO_0[Q=QJs-7 Av4$ u T{.X&o:fnt,{H >0P4޵1@,R]j<՛䲔$4*667PN+_byރ4jWW1sÂض *ԗZg:ط t 5C=:A:}rF 'V"D2TpXyՒV]x;9@ʨqr \^ΊPk\G hKՏnE? :|K89rf*ߡ5p!8qp \ݭ) 9c/\1YsQrM j^36[H?Ċ~Pj3_UAAdP+2cR&津eWU] KY[.7Xe{}Dvn, 5i F=+rH,f7iסkLw?] *P^EsʦyBڞ w9$ F؊ߓlXdI{NPm(<Í@[e![0BRH Hed YL{rݺ5-$t\ S6 !tl Yyq^;{Y=EhQ(`팮.x򟂲/H'G$+~Ħpȕmu=Q|fM1rj dVk(<Mi ^]/`WwǎNک4[PN/ 9RWS&|gJϙޟ?s*['>cY>25oO"U5m|hmlEPAA68O-+wD| ob;Fb߯2sbyOcNB=f姲!kyU;ʴH0)r$BOwH?3J.)~:Q>344wn>-ڗJ}i C2M)}Y)~0ԥԦ{Bԇx@YNCog\ĔL4,m"ᢟ3leDIG?F%Vv Jv\u|E~w @q[8 #IȄo)43kPETA}B: ONw3^b@zK&jlH}rR([i={[[L ܥ=M-,<7uwUT:{N ;(ov yqKdfp)b}JQ9kdJ]6iB"l3͟q'65/ng"Sp["DR?[XcD1̀Xeb+&\Izѕ#.`!@\vxBX\cC{C<D.1*om ,9lEbrt.]{x[ݲUٵbu1J@2#-15#; 货2qp4i?)ΎJK)hFNb°ʳ]s." {=/XkI`OaNp>'d#ۿrY?qY'Pa]:.޶B8jm !}3~Kxp&$ޢ ,W@LĔ!,r쩤IYי7N->4`,-d't^:V`GE:/\)4 ߺ h KkzզZX{Nm.a%Lo7d(3sbbGp8=m޿2[ wcHؐ`" L[G.1N tpu+cUPN 1I XW=Ԛ¢R}~L:~ {NzuI^6;du `slFj s+'~0a u#% $Yu!*jc m<+n=gߖ ߹tC:pF1zgQWU06Ct44䎆£-pe ma,t/9_%BK5RR/.T1.!Ŵ ~Il<6P2DA@Πn10I14HS $SN qb']ZTtA$]EE1Y UܳK}ZȒ^AUK3eQz8$4_y'30`/Ø\2Z. "^`zԚ6s_%mו}` 4ʀ\jS0#5÷|VJ4b[77hNQBWm8 \5N8NjN%E76uCf 5>6)ݰEʦi5"Gr*M ,j-:FdX㱇;)/ TME]h@i^GnB q#3_7_yNMd8zV 8HY'腠!8gIfhnu'PQ $ a` ›KTJqBZ'.~)\0!t6'nD.V_7DXb'`Z޼sNvnj>x9G#( J*m[đꖡ:bl&"YCu a벨B?W h<rEU܃cMo`(hR1T1d^NAll7x7"`|r{Ms{v@Hopn﵊U.tK!_U,y8xG $h_B7oTaj|("W郉d}cH%zΑoa o<޿Qe ed^``ճ\򋰮6+/<j?#"nFs\YJ_}#oq I\h_9p)m4ISC+YFmw6<6U r6?iϕpڄӦ!/]KMΘm{]< , (gGH],q:}Ͻ R# }枅{ 5%I Rϐ`G~~!Lh.^dPP_вA(f!'I|@{,hz*?U)jQ8v\:Am1?ۢjdeB2-5*-.TnEs*ƣB´M x] i3޿B*F^3W?; :7kNEZpTYYח,1_bD;dq+S[J$' JdN#e0Ii.| [w?~td8tgO9)]sLҢI!Ѱ>@mbǠdx?I'TjW1J#3PEׯӒu8Oխ*ȁS[C+;C4guvњ=r<7"qЄĬ0"6!x$6=Ԙ㿾q?SwOk(n/gS&sz*g _ rQd/pҥXx⋯)uM;´:?[BG9 7t߼ ,H5141\_Tq9x7l +M88j_ D'D1,yS|?:ODi_N̂vUޘ4LtCKJJoً}5Q3m"i^q < *"x6W&\X-/Zt4Jʇ=fKUi3Erx,щ dK_Mi!h^GEn\`)r.)aL 7Nߢ/쪠6S0_gTs&_(*UF[:cq^ |+F,$^梱3T3U`_= ;V!RDlM}U.(q:FIZ$$@GԼwԦwIګ'tUJr'(5:]x]ve@cij-Jl0-IgeufIJJXU=22^opD.® EI]NRC$/^d:ؿ>OeiaȢl6ǓsӾ?$*$f.XXR'dħqnc Wo*X4jˀUZ_+RU7{*/ƻAYǂn3QJpp \Ԙ+s!oÿeKM~z)M,3&C/~$. NwU-A1y)fSIERoPFFSg9Vcǝ@/Vbd{0_Ҿ'mwdV.xUi4'-n8۱|BQs|y;R=K&51v u1>1B۵NyYu|Y вO U'`p.-L(S)4礠yP%HF 6F=&66ax ܮʹQpxU+u`8qR.>'}`lJ(зnj[ vwcS1`|A;Sl22M\-~ZgM2!tprh9Ora}y<݄#'HHn]-yE'St5aJFƐb]OGڄN'yZ9U_b 0|/7Jd}jʸNBq6t՝Mƒq[H|4F2 iqYelDhLD%^]¹'3(=A&!aY3R.+K&~j9Wh Dx2]^_]Q!{$#5a|aR)1|,l;+~ۜ+פ-@e =R|i&ApE  e2rWS%Rb$9glQ2%٧oiSRJ|i +~n]xPF aRCݯuGзT{ J/m4yjB^QK*j ÁJ'm4ZKURQpq5-Hu#|Ӡy g6u"+d(}v_ -B+z(\sqW9ȕwlt󸝑ēXh+4st b|:|u0ՙ^^'_k.Xϙ.MFE[&ec4HkbO4_ ~AjbeRKeM}E!~=T!W!;^ ߜ|c]󃌿Vl),֯ @Y k'VmL`d/ti?MpڮPgFk1mi5Ol8ytFv/< @p&h)n߳;; 4nU/pgr~:Vޢ zG ,=@u/9},HUU|'^] k655o`yCP5B {>xvCB_-*%?ϣYhm+NBYpqGDrHӦnatߋL<_b:0mG\3VMm˼$zpp%Bc(=&o0TVt Жs=vC_r6>)1-N}X&j֔ n[9DZYt .P3x6_)S%xk'$/]/QB֧rn%xyR Sh&7#w)x1OE8՝Lx~jŒz_Ysc-#HScy`ZiGڼj;XD ڸ[RFbF5 %hG"Yc>kq"[$._6Gl387.c;GFVz+d6;_G-h`Qf̰k҈ u=N .Z%z~֑L_QFS4?OA'NO*9ޡ0)U[5^{tKČ_J,Л'ds;Q/*@Æ:Mc )ܵЮ|MHUsGgB!v'Q!L&vqU^^A߾:䎾N||*\Odbm[^o/hþk"E,mdg#>Bu1C3LIoTՔP?dY(Pj 7iC^8]D WJ}CvY3 A^^qΊz$Z4@lȬWV7yzY,-~1Aovk~uTF Ii#c[QP\m|}bD jq ė-meY '{H7jlBs8iF/)KS\ F&I} pGǿxji\tgiA+r:, *`͵Dk8yì,vP|&{ Hsk^ Oԉ*K:[zV $[LF}25*8=mrEI¯kRga FEkChcXs9]m4&)qÚ-4n-隖 )3 [azق) B h)sl)A_Y Nݻ.VZZ7BTqgF/J=˔"b/dlgL1RŴн|;k_֯C D#KC#2Q^Pi̦sg8 J'NFfWvrE8׾3yptj}b֪ YGdW ޹*`ȍIہlh ~).i6LݩPe_nZ*+8)g{[k#C~ӞxSXz bzMZzr458ꎩc~~J90MzsPc-n e2G*O.; l0}0 Bq7JZ< t:櫖svoxEUH%Ɓ(YGf;9Iix W $F;Y2HM@w{ +!)&7(ːy3]\Um$ 8ƺRۛ1 ؍t7Bu;/n\s* jGGzJ1ڐYTo=ls_`kC‚} 0;9KzP_8x)\H8hMlS,]O&jUqS -vRUX XR= ^.< W[u-i +߆,B'բTORkmr|(Lbi Ƹdtg?:G6V$4wrw/|f-KHUm_xݷ-g`||X3O߆)7S6!g ;-XPNIm Mٛ9TqS08;KAš8cҾ7i38lV3oW.1M=qh/ 8|+޴M}xH P9i_h[XWEݳj)ċ 첄ֱ^QozS_xܧmvO.o{3˿p'+v"nnްYF@y!qYvUX$  g+ǣ g,^~xbk2x[9yaëL  [B<%-(_ذۢ)A嵻4ͤ,8&=!S~Y( Am_$޲!Ev*J$|3m3 R#̚7Tb_@!ٹޖ iMphr1ȏ誣tPZdzboyGז }],xJ텨A/YC8E6`s$-uB$s'v3pc{;>z74u4?DrFr<9'0No^M Dogjk-[I8}Z+#+ElR4sƧ"14?Dx)|CA^yBwCeb– aW]u}Ta[=5 dž&Gn9$HOLc<6 ,] 2OCC~9%N\/{8%W룑'Mfי>:ݱo<}8cjo*? FTiK=Vt<*WPXO|t;e]:XI+e/KWEg0)ztͩN'1n4kQlZ:U }2D(_,2]&y-Y˞ l*K D4|_\Kf#8XPkFVQ24>+pa@Jhܔf;-,0J|WB5mq)K 8^6]Dg6a4r"32=pYd<T'#[;\721NR[EyM@(W ML;|"$zIq$q'僢u)S~Ys)H`M9u BWR$^+B#ch/.4T?n;,,Ǿ^oG*B&z6̎LłZY@1J@lR_0ƓȢA{HAT|dbUǂ z道|Aɖ]GQlmo&J)&(|Q% ߜ8 !ELk<14ZR]=*&=ݵJgg⠀iG8"Sj)@: ?D;N1}xd*yab\(&q޹ ՆÒgSw 69/f#+"1T ZBhGڌ+W\,y%M-7P4AS3>'6͉{C+^.son!-ǢUp-;oC2ԗt:\jufYipB 6)*ypuWp^lu {n\+#ŜX}뿓 cP(INHw ShxZ]x6v;jšd`zс}8$cf}fHNh'6$A0[S{z<2dRvox)FG3rA={Ґs7ϟ5{F 􊤭[ƴdzԺdtGX%#Vzt3:n:ֹ1"XDr{6X3ޣwD~XB5kMZ NY'ۗ,!N>v\ΠSm0p Wѡ^2.)d_d(EgM^}E[.(_ ^G36\j[g?ѶޮrUMc0ͧz"в2%`T-4"Iy`p{)̕Iҿђ:3$W.|2)u9QePSbym"ov=jE1 $~ Ms!fM;k)CMʴ2/\djp%}JdXoEdObWߺ\ٮTh@ԅp:bjb-j.SKo&"¼턌*|ˆv`b4p>KAEdyõ%K4P,Rƾ&c#Sxbm= ;Rná`tpyIŽ@#&)F.Uw}Ϥ BörsN8);u\ \F5 #Pzۉ23NRha} cz)wDL= ̥sH)p@%XN\זP݃.Gf5AY&dRH[IDƔ,.D>F>E[Z8 R0(D]Ӄ~)נtLL4e'~m+R2{$CzG"aTwfşjeKҿˊ:{Sehq3ڔhzPJ-DgE)<yy`C`/ Ȓn*F{l[;+s٥S^'d3D\ `^q􆊾Zh7!]Y`Ú~pJHXQ51sN6oPi8;h0j?ț{<җxi7pIIk 5`%gQ}à^ymkGޏ9sNqb[*56 eI" Xc]+R)G*68}+/|zfmTmxhƟ'DVJ2='1uejG!mj{dGΦֱ 7O))hGیt̀!ؑx ~mQ2[pu;sۜjgNSxah04N[:wKɡ[r9xXOrYϸol2,wُ0. Rցf(^ުG=Iv:͘&L S }vsƩ_Ǭ~߿0IbI?nZÔ0Cbz/ny/BWr $7V.? ԋ VAWiUYmmf]!l~Q]{8 brӝl٦@Жu1Q"o󵥗zZ #) ]Ih6 M挧O-&l=P"ucF0dw? 8a.`NK/X*^S UIqpwbi/+3B?B*_",8_Yiǘ]OV>U/}`C%JZvڴy Ύ>}{=z cnBɔ˳Edw3J%=Ul"uA1c{ӂ-( cz3Qγ腏ӚC[^WE`z m$t2 #OiwSGx OT/V(p=)-!f P!I{̘Wyy7-6 W /;gt%:mI(-ĕXϔ56nv0k n!Cж(]64vɥP2[ݛrjdW4&A\̌{=Ɨ{ROg5 ]lm9KyChn#^>?zAuuGQ^L/3hߙID˛sA|/,;(/Τ\ΫWI)m:D>iM $ʉ LFs&1?FÊ݀hh<PeissĚׅh{v>iL/_sTCl{xez.4p~5̺6rdJX>\ eԗjpvnyj~Q%8Zo,.{\3I.BD ϸninA ih$1PgP&P,+7Zٓq"i:I*WкL*h A gL\]|R#3a\Dyz~ IM>E  c9c 8`n˂[\ͥx Yl(*D%G RN]wߔ[ےawwOHa=^Ƅ?i&">חlgB>&!iRS]iIMQ+55Y>fOqm-J]-\59!t/)V@i`2?vIO!*}N$T#շ=3$|oQį|aq+uiK[-&mTZq[ ;Dy[ñ^dxc<%iDǘuz+xzVX*ˠIpҝ /k4U-\S-P *]]Hs:^aC-{Y y̧fWC4 N'*-6k}U]Q_9+v|u:?UaNM9"c |\G?D#NG$c;Z:9jtGKz q&/*qDx5RU_e _5m @bO퇹,"M}EX\ܵE&E+edBDJ%9%-΃-qJZ~l+p/V*ȏrY[þ49n |ӬÏGT92jM<:wbM>\%8lOL4BhU5ib_nuzrz|뾢O_Ѯ}z' ZV:>^8 f4I,y_yQPIG]# n⮿&20wXT7#-Vzu2Ns8=2sqՋ.i(} ь,-ZenF1=fq/+IM:] ;/UX0f/hBTt^)pKw4F4UhxT.ܫ)H+J͌qIC)Y 9twtQ{KR|%[8=x=ȂqהIJO,.+)ǭG^HcpF|9ؓ6alk<1&v,);\KnzPOW㖇o!+T.=?C]g :VӤ~<ޑıȝq/jdB`J%Gz^gPs)5 ۧgHpwDB=4ŅQsG 4 r[]r76<˪1[@sobE^dt_# gVSo.J6L`4;`4ZsMZ0pNAH;,ՉQuI*HBMc^+=;Hîzk:3&/uМI2v =k+h}\sAZoSa6!:J&90⨋ћ^dםɔb{][eEQRR Xz9aE<9Uֿ-w;znuKZSODtI*$vꔙNO E',9X jڱt7ϙꞯ}ɇٸ.>o\|*5nsnb(֣JvY'ϡF)MX;@4e CVMzݍ~XS'O ;QS ")8lݛ1"#[-][ %ƭfxQ0$fR̚UI6 gްtGE}>/İ$ B4AwBY(H6,[((B׺.sJpD]79xb)vg"89Lq!z\(?)b\kgsZ?\hDҝ7>@.WҴyf[9Y/*8(gАfڳ y,ޚa^ ocOZ0T'zn 4kɬ/wjZL-^Xdĩq kk['!HvK,y2]ghkf&]b︃`Vڲ0JetZJA/[k):%".qԋㄛU#j[y -C-44.fi٤g֯{urH7ӕ@GrF%0wE0+#N^(t6с|9B{"ƏJ|"u.f;]ɡ=H NcOx4 !o9=X>ła_$~6\Fd|pMR[MHE3K`ltqĦY{v˹#E̮5}?ӴMzhȝCj<݁ȸ6[_ G3JUf͇6% S_ ˛jVf&ţkP&JUk a%jYϨǻ8O_'k-f" %R ^@Cה!!cTeQYUDWuX2~7MfĞ€W?߂L-$m C4Dsu+HJ\‰ #4|sz lfZ-Wq7b3A.O!i*jBocd*s5}iŘ=ޞL) wa;8IJ -j0_'BvQ/ywkˁZ/]XSE)O!XÍVg@u7ynfJ~fΩDGɵky+zs,J 即gbz2\KDJ&9RrcB-$_諽 ;z[)XX,3p@U7xKw( 6uÇĸrkz3tn ,9ĭȱ\^Wfk]ji1@>zsvJZ ;?AlwK29Jp'ZTȭ}X] UO}Jzev)UOR5rZ㼻j1f|Z2!?W_Ka@VŌDX~ E % P4O wcNu6%p&֢>yqHps$A,ùmIu^)ARZǿu$xA|_L'gUO2uC\ -K\)V6|AGڋEBdBʋ_Oc?9]I'Q\3q Tw :q‘"'zXZaDY fsm˰#E*rjq<835em@aD!K!אO4t%e$S7q!V -_Qp@^&Kt-lP2r }2D=R7_1xoGdUPWX(c@鎙BsHS,#}6XmMc[pL*uǣRJY祭[]rğQn1 r+̰.U>R6",5 ֑# J&!{0$$AZ[=?\:Y)5)<"o8 )L}a6b^#[d_2J)}R>@bKUy8:8~Z'Qv8B={o`k)W,=u\ Dt)FJS~>9N)uZad6EK.K'ʘ"{/G 2Ԅ}偭F ?ĭ*Zی]ׇ:t7?9FvOG"K&dC#+Tk1ŐH?jfBԋ=uLOZOnG+>t>߹I"(a]= :ѢWiw'rjLm.Y ,O̒?Yi/av lE.SR{ߋ*ףi]b%.$$k8ϮEh>guNД f8Rl]gko%pFLߊ1_ރUK>7%/!kVKwXswd*X;x6eAj|dY `dYҞA^dHxLJ/,LΑBǀf]C@)M< z]UڄڜAqm"T95<~\jͣ'kk}64YG4@S PyQs8[]q?ns*L2NJG&Xk"$Dna0#iuDkHZp_QD*rH/D~(Fޡ J֣Cfb(w7U'Ka>('x hKOZ'&Ǣwx :gA[`5BU6lR/7л=3,0?8[4? H;!E6iP2̎i}$yv w։FxdΩFVCaNͬubM/ioy + +" +cEF,qLusʷhW,ke*\I8^^uKrg Lb'_ dbpy6/\j7G"?'Tl,r0f<>3A% H&7~Q-_c!#+8ՔI~ C5Gtb y?GN[X.>3 k3L xe\Lb`-}Y-UťZ>f.5 .G"Avj&:Gq|[=Fs ou*EN:*MT`͎VjJ=w T~w,k ɑ*8BM{`|d)> Wpwlf!"@ BwRꢳ2z 6hFSS'y~}0(+%L%#\|AuqQ$vPc%|v\7c:ys4o1zqƔE Շ擼<]!̙&Buk#T[')*c;;e@.2UxM03>Qf,N[k+7]Z[/q1VBQC@_k~Ex1*cƨLLs4@tmIkkk#i }YLWfWtؕ`*~֖7;,0Q'iU#w gi=N(CnCisOC򽺆,_mO1IK:;<Heޔ4 k,3 fITN@k;+l\ٵ>%')6ݰ5 83lZ)մf d 9e0n+ g\dG`]]3i.$@^WPY6,v 6Dp" h[#Bx s -GG {nk>;buSC= 0H2)\/! z"P@xf\|햬z%NGsy'61n3Mbv,uC%vnxX%p&` hŎpӓ5I\cvjetkVyʟ sdg{ɈAMBiy\hK1ylF[՜i!<<X_(auMDR ), űrwĮ'E" H]s#A 5? ":m"ΣCD4W%M_jGd hBa(RZaM#0H*mj$U6bޓHmEό!?k˖#T7Fg}=W)ۑ_ 1H+e&}Ӎ\0gsC``I7!hܘt-{\tȄGNج\Mq,g39ol *B.z/$'xC(dhQF,D^Ģ̐nɧ4?P<ZgW VRQz:4& T-KjXiڐ6u94aG+me[?*s1c+mT28*+"cOJ>YYpIHebnJ/0H]sH̕wZ* =)Џ}V}s4)pEʇ+:%= 6KN=ATIO7>RR ))Rfq(my^Εo/%sߦ؝6)d"AC4 ɐk+Px'ntM<C) Pv; S^Ah^4nsXgiɨXA/M}})0du|Gbį-35Xș@dQʯnS1Cm!JdG$O'JYʪ;!)ieP+*X?Q|WzKͮ%LͫZaw*р\%XhJK?٢Qbc{pKUr)oA_9oQ3B85QZ9cr:zkErW S;#+O3I4 gqˋMԌ :smR-{*r"߅@fÿ"]mۧ05_+rp5ä,!8M_9W[k2GEMCHӎWx@nS7Ex}D^X->%wd tDm&X2\s ,c1w&bHAK;aRw<`b-dlx5Q, #% 2<Ј\GŦMC v0ɮ<ȧc  Yt\v_862 2\%&$ c̤~4bB[+$b9@ϚQF3b'蟖Ie V?/ +\<NyFj8.D)OVW+{l 9JQC狌15Ίp%]X%W&{vmHVo2}ֈhfRho"ұZ(i/6Y;:Mt?ORд`'@MZ 'gުHXnz\¿ (6y8[R~4n&c),0gH3eL.YF `fzݶAVv7 *ս(MIN9˹2wGlN/m'͡ ]NUFZG`yVIG P5:Ј~ jʰ #hGanTLI:[6iY7P @zBarFV\EyQ05<iJRf)(,`w1?B:$įԊoיu D0YI iN5 ; b ULUāiJ[!)#>6.3y|C;S{XOiϳ%y=`;׾;:Y05w`"OEyhF} ;L| 0vPQTZDqiUՠUdzMj%AwFu)`+s8LW4ѿWEX(ϮTLG^U.B~T sα9.. )slF 76E6Z[ц)?Wv<0 MKbv]a3oj:'W{NGdYnA|L☴I' ܄01^LȲ B!_KR1|gMve;0UDrq۬וdֹrXʇjq|4K!z[L梞C# zA_!ʰc'S~:Jp`S[.a)KcMRowޝʔդ!a+I)74;$ܪ[T^̍E4ı-䱧H].Ҟ H#smYB1NqC6~3*(bmmByR;~Ԉ5Ioп&ƍW9*KaY:Y`?wd _ } b]QuK_:n+t 9~jQͣrYE&S@D33b-""I,aUFi/6}~j${x2"okEFS ) yCEJD+!Zpt)I}T;'ڑUl~8іb33qg%pc5khXJ̧݈y6t NɄa ?Z57Kdhd}Q>[ӌm+F{kpo)]n2\V[&[B޵UB%ΔGejDWiWpf b-/}ٺĮ?zŝTvP{ư+`w /PdǢYS|(e1TPMn]Ȝ%0k fc=pNIB.ѱwTsLu8-닗E[#ň=EfС~GCQR uƜYok1( ^r@4)WMv]#4]8Sg*u Y!lXٸ?Ba;l0 ]rH@, t\E]t~7).kc26QC97Z0nu1')X.ǃx>H LC'Ziv{*p? #FE- Wd|j~˷F ?@R_acũz>bǢY ݆\PsB{~.|<T;gR500P`@8p\2CN\fgwcS;&m#gDcaLm|v"{2Xf])Q8FA9:[`>ci}3#͎a=&LjErl.^bZg'1|̊K>lcBoЩZ}MlW:Հ9tT3_fB32 Q-_).=xp-u0L4Lړqױ̼%|)Ѯ;7N)s0Oz7A#hGEz.u,Y` ;h)aj1wa"mgdp5OL5B] /LrK-*kx kYY+zFM,F74~:23W -\VHՅc ɦL]]4dw+M֮6i ^:=(ӛdS,B_z%mx۬ >hWەqnZf͈h 13$ٍ4P8zI,|aT) C#YD׵iM?{TCz-!#l@-fqrHEDdžl}=A^ԎkcN.+t ܙW4@R?HrPs$CuMR%Bw\d:J%+E)"th-ǥCT;s Fߛ,1[ȃc~*.'QBm=֐tIfOCJ*n3eڮp Mn+ޕQ?qgJ_8J^k1,,4'~[cl鲥ks9ϙlWIe6Sk,6Yj?&.G3ǷX?ed&,s_cƀ ~g{~G:^sn˜8rd,esϲ@8mI&/BZPprnԭU7 G0`:(W9rr?Q`ܝDpHGyf_[ݤʒ fx|t9#ɤjm_Ho}̙~g2֮Nhm*rZ8F-ύ,}Wo mW؟'èY;*\?qsG3C%%tecgqszS (+m.e1=&~;2A +V]}4eUܶ5*?IԤq:A]IBOv#\+s?漏>:VfKEeթ N+.#27M2Yҩ us3K_qȠ챣&m_ɨcOKߦ{B˶IS4{J_bz"eg,_VSyg >vԤZQ/TiS6ЪĹ;nPq/_#Y,^Kv0g#&:89QPHC1UۆF?k[UCatk+ƃ.G,5m*18'liΠ. %8Ʊ7>];j*Q.,W)L <tCZ#6Q{HẆ12;گ (Eq ݒ륭EU0GHq`\ۑ7< F4wpoH9%%go>ۙ[oAC"Q*<03/N+w>D }".{~kW2uz/F6ym;V-^~NZ)Z9x>FxOЂ i>LO0 93Pv.,d:@po1ߩ'νARyn&Dɹ&]dl05Z╆PȺ35: $gkvp;Cj4`TJ<ZCfFgMS. x~jeK*N = A8̨J :D/uLە/"х]QӴxHjx!ѐ8 g'eSqƈn{)~xLiPqՠiEﮇqsuhrhn"3 UFJ WX})(!r %f4+5&㨅xvȱـNvdx{=3o3'Aǰ(|+:HeOVCt!ܰ9g -Q@y6 `nNam+>x(SY1FJR$0}v U8 7d#?(9]CHBvP :ՄmhyE\;ذJy/bJ -]Q+ r Ob|8j-RgVIپID1@+1?^|qtЖ' $}=)1ced"VYwdϡ=V?{t|N'9ZY9n;y kUh߬mc ;?]{3wz%E&L݁sfؾi"TKntpY ˃ hT>i0៑X@%aiK K |re0=Yh?-Ft=<^qwCC{@^ʾ 8߆n{C_z|X_^KUg9<(dg3PIy$JOsta1 p(ۗIB}I0ZR xftz_:4^I3 ;NAFj]5 I%6s_7Se.ô*ؗb^Pޏ!@< ۘAi|C(A'Q= MQg>52t|;l _ضHw^$9lES$"$FHs$i"uy-ZُvgF08Hs裒+-P@lzj`VoUK&n(|<TmmAk;F5,* =^*HHsݽ/#],f%KX-B' xo" Ԍ( {Sql/$J66CĊv!3D_Gȷ~up15h}VG_UCb~ksc'h{ZaRtly Hnb+"bi̢7lc. )dӯxy6'w @%|%>'ve#u1Irh,`\PV^[E/ .=;S D![€!ZF܅4k0D9Xig aZa:JK6Pb?|NGPHo Th5ƟldBݍRX9S#7"'f)@66 `&ˠ)Ym0qlbT&ӿxqN>KpD鄬^a1vUd~SB#'cf uS`06L |qM;։<_y'ȉD~/*N [D8yI)݄o=#nS0Raں*)zRE%2۩OTU^'#mR|lđ{їHD oz\NEoj8C%^^I vsR?qy_I`a` wArZvPE3 ,R5Y#J* 1<Z/ꐓ2ZQ|`(uʿ&ރsu~~TD1OE%]Ny%z{.q0lW'2<="U+pY nU\28/*>qP^1:y[oZ”p4Cj(1~B }hs.G2.?QnsWJy=_ÎǡmY]e22QNdL7$4D2q(4Zʕ 5rw.[dxk1sh*; UFנ 5uz gh¨Thj/R~5H4hm`?Im܀=/X(1U*:eccw=;b澵q"[ bFOk \rAgNpO4eb<7Ӥ6"뒻YLLFmL#xg ATyA՛n&L|%qN'Pr9d&]|I6Yp)pC%%Wy/1.)]<'5ĝx$J~/PҔuLH³96<(0BVp C8X%cj~ $[YcdŃqS I]K[ ^ O=,ù6~&+d׻#[B n{)чz.;=8v?փ2! ↙,;Wk iT c%KD](D=K KCJ(1ԃEr*I!0NV3t/kQwhn;cUƈ'ڤQzp|Bossᤄ aҩq%ެ;s G\LuwfdeN!@/Wqd( Xʟ=SPC OƝRzX]ϖ_E~wD1 c?sTj`"lE >bnmҴ& fĻ1#<H É Id_mu 7`D/F뺛#yhU#J,3K`LB4jɯBi&#s!ge8Jok?/&[] ||pt HR 4A.hfF- F}MI41Txe!l~QeIQ{V$pp0τՈcRy_se)aIm LVf$$4!V:Jy >n6M~& b|+ttt XVE9 ʏG_( <PأK1c ̪mi?{ fcW9W$B2BS[)׆rE ɴ1E]i ~:Vyﺟ^ E 4k(޲a)3d=; l}9& 0nZV*w8ac5=]h&t[u0?_>Er05uW . [P2jq9C5#dF ݢ/Y5n|$o*8Ièr>>JH?MԨ& r Q/NYlN6.Lt*ɀҤö'#ϏJ鷐748^%.x3 F ?T7j*ؚ4-W^/C06Л-bZۭ 6jZӱCh)f1f[,xH|A$-J (BttF][Jev8p||޸)MIw?'}$=e%j1R;so[聩I}_(\1C'v/E` b(zU"/;AU ҌRoqiOI³庺}z{n>LpRECPƁBQ;tg:i^`erF")2 ^)m%C܏ݓ# N^3u gZ+yYACju=Oj]E[Q@&Gy1_7~5F(݇ UsfEj ]`˕[,`ڬ˜|$1ZIZT_0!Uz ˌ2Yw,vho&"kd/l7Ur9øBK 'BiRӟE|s[ 0JLzߒ*6Lڍ7D膉d$qʪ ar- (nҹ_) Z6ޒ:N܊~Hv4pTf濐n?=}Yu:wyCNh~+H*yn gQ:fnxnxǍOXmG(Є1p~zG~v5Ww {ina5$^NLE߫EAxi. n{|C&R8+*S{B1I!rs~x&PҾrx[vtd:?^<؆B$fFlƜ:nC}J6^sΞxH \r:S:"{?a{ڤ,QLfH{ ^' jYs댹/'wZs5cPx myc?8mȏuvϵٳ|"rSLAN͊+c@cN-6vhtLN4%E ({lcGj TG`}NJW5!ch8+%0_ٺuk #k7y:+k >"zO!21FקKB"4Tk*)+ُղ55[kY捴+٢d79Ҽ*[hP'S$VN-^cBLKWx|XPthr) Ǫ$t ah :sZgʠcyn i)n)j=Ѐ| P)r [">H'=t i8 ~j VQhݴiSMGڔ6E3&(PzWv ߶7r`i̭)وmFYڑ 3gQổ7Ms7/v-9Ptr|/SP/3}Sf@N7 bd}%L}J,xzq3ǥixݺp-y(GN  EE};"c0,(g1- :dyONת߈~ooF,/ o S)>f>w`-~Vu*H@DCmxj-jM\Rcpz'N*Yܳ& 3t@Fx[&ka()&`V媧ሾA03'QmU{0$ j"6z&o yQhW>Q3Ø/x YgԏLGZ9H@d 1`Z:b?#q vsPݙ{Q̴pQ*Y:ި^@|wG;gEaڛdX4EZK6i J4##vQ7X仵+j':UlRTUfl־{&t y48>8Oc}\o̰?k{k>@g4Td$u^QKt>F{+C?S'Gש)#0.n-CtyO'3-̙R;.<N[B?1'3 'kiضt fS8# 9tv^mߐ)Ulp;j[TƉ.:mM :EU NMe'=;S <!:ȖkIf6)2cL5e'T&-ʺ76vB1Lpg/CXU[sd&]9zT=׷Då?|zJdb~ /^Qģ*|' WG'sEH #smݪ̢$}:q/E:hBvHi; {%ɶIM *dH7{I8DNoX# KES9r2,KbIsk>8U߼kơ"'fy:5/Qޓa,W~1P95ZWu^"{ 'J&|&};*ETw7t*vNtnmHw+rŐ-ϯ*_[i XX//g8ՏV Lp;Z險 $@^"a-'L~ "/մ̞f#"yߔAuP/;F[^| <(y+Ӣ撍)v+NK#0?P?ʢwHh 0?1rkϽa6_ߘK DPWYf N%%fɲ~ߵ>t=\ޭ,eĎWF?7LS 7LMbDCf8Q5i` 3df=ߘ&xȔF"LoYiX'TI_Yc -v[ غq f_e@KSU/Qp( ]}~=5|n)la@g[鿫`ɁS%pۛDrH)^8CtX} |(coHX\bI:YT"!^-^qd}@"YzLiUNYT[gw@WL+M 15׎!\lgJ#!?fMQn`Wfiؚ'wF^jZ؜83VxKQ266Pus{b ;f.l ]OgILISKɜ mr? pmZW1:pN>^@ŵuDC(ن !"1e<A,wс?C~֎jeh anڊ LpS ˫uZg/兺ܿH*\y8[RfNr@Vd wf- /!w46ej-6as\qa;(t`'<CM'!*k>硖c!t(O/h5uA5XA_?/pc9pUHd?~~ vJu,m~SIuOh;!޲$;.rϋ"c/옚2;a.W~SCPmef;֊M`TrcsG 8l6JWuGx5ǥ%g)齾;n d>Hz0Dv x~ RSr MLjud^joLT ) tz$øgRh-X %˘0ib\uL+I?E(4jU1"ܟx0 ^4 1ۤh?gdxk^*)6LZSoEE +f |>;^]l@`Q $y)Au!~jlyE# %$Tڟ&{;(% 6&s2L&II)dv`oO`hP;/w]߆Rڂc ئ6J "t!faFPxޝKz^eJz n71wx)x r/D'ͰTfxov[ .&WbBu@,wF;F.&I9}vAtQ{m]Ŷ{z=\įmn(V!yڜ ?D8:jCC<=3cmJx%+N@Zb{2>1FԏʘnMn. .ǿzVACѸ\OtI: t( ],}aر4Oui>Xpx-ij*ზ{ 1 >wWaGAE֝0%uc^T%w{Z܇l0_RL-2&Lf³\p<9Q۷:9Oueq`4M/k#~4T>UΒ&J>C˝_{KFe-s~t:\쯞T5(փiʺnЧ ړqШDO5A0YJ_QnXn" G9zh֞6U&[ՃA3[)@7,@.*B޷@os0>U{nhX_ C``!,P$?awLz w4x aN٥:.T).| zNL΢ DD8s7QF\Ñ5b[=ep弱33>wz4\K^+EZCCzW݀'bdJ":/ovtlI$`Pqa4GkhvVy.u9`0STu;aY?QI#{lY @L'FA3tV r2G7YĝxtsX(Dk#BLrU% >Ggq&Ԉi *CP j(dۯk}l [hȴ'NՍ`/k3ij6fp{xln=#[uœ4lrp0(B(E1za;l#leo×2LK xYY?hG8lk7/㖕U '5pqRBG1=߀);b̏ '9qu-O.p墂csI $w( S'x1咽B9C4;!㈙Gɚ iV*\1Tzs8&8^?@2h%S(' {Dg _6<99X݉.9lHQ,8uϻPnsbfKKatrUp "j1*Yigj c[My?ʜ{(=YQTITG}ݎ,vS!.m:oP3 5 Ej̧-M^+qYe_@ 1m#*qg43DRdVhnS S疳D=Wo6x9,:;d'hGȝE Lqqw2?WIXS5!̶9K}, ,CL,{ё b= Unc0FF5Zɺ_MI-TXTFY #\Vu,p-R,϶E/?c0`됁(籅LH㹤dtx/dߊ=.F 283}He;dS!s!]fo(>&SéQGo3m=_& ߴ%vrJ eST-roS!/#?&qJ}#JQ 0h UwD[fĸqkllЎv_YǙ~|S1kH!̖+bHJPnł厒w>+hf6F8ME&nko) VG>shM[ؐG w t͏] :Z ٸff[Q0zBg859+q̣c${֜p^6:Ǔ_|&-#sT6a4 zmZQ*ǍT0+X?b`B>CǶ~yh:hޑ_} G1j{ s{g$Sʤ][ET{"vAմιjdCnk:<2RZxzU2+ <<>%(nb!R)aD+ѬZ&ndԓKVXt Jd܌la~ag-;Q$JO =^} ?!HA=IFux7mfSr]؟_M׹c%Ŧh9L z8CD0+oVxkn=_Fd XزKO$ < J%tx:{7~M3MeJ?Num) /7g/Rۈ4W7쌎z C\zLl5 __]:?iכ5&G}|.$bW֫Tp87wRĦ8&Nn*;<(IGBgݕF@[YpX$sҠe+/^{* 3EE\ $8ۋCuۼp;i{tNJvINal|>b Uߍ-?tyʞʉ~Bub]mDvA5D//*B`LPjMY!2pD5'v+3mȕ|!ȷK+^ Ԃ#Ze5 ;u׀H P`Ln‰Xf:M#t=mgK,5f n7xxJٴq)1X?Q20DK*p!mi4_1}~N5q'[OʥyY0PJ\;dv[8k]oAŗq]N^<'#=WGy?E,ø H5IOU|}A'uv/O~6 WN] {*`86(Uvx [Jv)=_xl~cN9=$`QU*E 2C3:[֓ɮ FڷbJ&S@kNC}:`EiHt6`a/`ǟ7ܵ}Y-r"98xT8[GNBVk$vRV ̅6t7fKEcf6M -O/ʱhM.d1{f"w547ӕ4n}D78JvMEYxc7H ! sóI/=v}{'J( xI&r7u(rNy-~C?GӋe b;<#;hý0Hy}Jq-4! jh֊})-)vR\~Ż5|c@~ |6ޡq'5OR\+&R7d0!L<1Lq!lINvf]XC| oXXyD8rX汱q *mWZ{8|"@q EDshtD_\pYha^!Dǭ~K $̦9حh=KUcY?M.وZr'`2YT,21~IaMTt$\cf`1Bj%J+zaEQdv%k_;հ)A gUgjAB $zIkƖSdrEgYrꙕ҈p /QMXkq"[Um(DjOALxVvq_[Mn 40OѴl+-^X̼nok &D"\??A&/rG`6H֬N95j ѷC087;30 q/ͳ L9GjLC-W 83 "nϒz4]݊k\m' c,&!鱦:t:G9ul ĥL<=D%2B(էFI◻@Db. eQԹi3J65آ,t:8CeLN%CBeq{=D)zp)ۗPV\ NGW`[vwD RHΚԌp8Wl89fi-4:?/&=8zOZ|Yе?C$SH,UܽҼ$(T/nswr UQ9il^ke#W6*G5hǃCEg" p.�]fgqovWt/IBa#rrJʧ.&F+*[:1F6ldMnƏdj@N)HG! Am\o҅ɿ@sWN$A r'[__ )MI lD"vegy{gf#͝RW&oT%GvQq/-}:P8Qeџuh%4m [2oĵA.ű1,1>sr g #,yzFGBD}"2 w-hS0xB#wH Ȣ#b/i!~f&p qɜ-%q-#gM| Nk}" =^z-{1;jH4A߫qYg zb]ay#e²LKeN!4-4lJjRz;A9P?ێDTX>9SB~*}̗yL"00}4L̤tA;߂M BFh5I:Vutna>Ȯ\QJFH:r2zF&GOn;MpC !5|aV[l\&uB1h`G }XQ<!욨۝j(ke`rBAqz<3Fb'bʊpMBeG GYbLH]?1^z$./˽؜cH6jS27xXpmܱ'Fx@ 8DX)J̙Yb޹?ǦvJZt+Z4`1kr1uu oE\Z$3?bcvjj?CqNٯjZLt#;(՘6 9$M4^h 5XW/ !_󮙅H޵R\e@KmAvKcvr]h_F:CgeZg> A7WKYCdt7,\^<݊P@b4=4!a K=GNn ~{N)&쓸n}qv# %#X`LxVTWVS-usdZ8#.}e勗E|iZp&&d/tfeLW|[Y_ J"0o _6NBu*' \Bz|u978ʶq9a)_ u_qSƻk!.6>Y/yAa] ;?| 0ɮ Z\8瓁Irk^M..NAҡ/uy^mIT&Ѫʸs{VvoNVq!M\!ן;eE#E{cFyXbejlTiIw•ձb%Ճ`۹ʡ $ڭ}aM;vo*;)u ҳ.XXgۄ>{.&=R+/|%|#2[(9\%U; I7Ѹho f]bʻE̽[)Yf:`XWܪ#d3qaеݑ,Oo8R]W 3Tzn ЌkE-| V﨑|)ZֈLaM9Jb-n8q[ R֍JS ^]tX||Q8q'>}ãQ1i  MɎpoisoF>yXi' ^q&,WG9s~ˏ?LlwnZIrS87}Uǡ9oq{3U5PIQ<ٱ-tY+ ߐ%\Q][u,Ds@?: ^-}&4, @!9;?Ӷo2(xD5|hVT % Tx;i¡aH8*^7 U ?赻]fzbmG_g-z<{?CC6zSChE^Ck >"E9W:~nP~qr(yNHJlb Pg5)RSwS}G}ou58:\\A渓/8H{7\>+߶o]1]+h>R#HD=I7a; !~" (O%a^?)WcDHjUQBdek?e3h"N?ʷYoڄɯ/Vb^ԶQ!UIDK~|ݐ%XRv1WqD=kjm7g?Es ZMG9lVG< H~Ko'\dxiknrC/Ge&rh}܂>Nb+>7TJM jk~* ^-D\{J=`Ԩ2}I/zjy'Y;o׸"0f#rpz NjFjr+O(]_ bzE0W lU޻D!pc%[ċٌn ətm@oWh!'B\X/'vhŃ}"H->w`@6*;ZrMQ#s)ªNFa+7ajksp 17mzy`51߰ExkLZ`?$3!ԽBM4+:az{GwĎ]ݣ(q;aSGCD.,bҹEN{}*ڥD~^pPj^ /^a-_lm@[է/(s<;i;F/Ǘ: *tV0EYt']ʃҳ-["IR}de/kHۭOӫw>4\ɧj='ŹGC#᱃j~r#f,,z?<'O[ūC=1#ཋ{V=KJo=4'y-( ([X?K)_8R#%j ~wwR3Nik50k&D3ppS̡閟pVd;q[+ZKˢ &N`Jc;"fp^Z os:D@sS(*κ#A*x"p,a l0}!I9+!Sn T|\j >]15QpS.0A$g w,qSrb ʱVo\_n LinKNqYP/?6 "^kV !@Y+=6Y;NW'R#rU:O KBJ19:Fm;. D?"ˠnS%2)z.KF5lJ}qμC=efiom8ɽOtMb#ĸ[sI3*o-O5~V|'ރP>2zNXmxSPUٜ'RǴ(;P<5jxXJy8d{B?f S>=Y]{_ܳ(bR#kN*и#Rq$$gw{C9=aD?ᔉޏHY<=Ɨu z?XӪlT^9hc1m,S !,UPvX``@aKWmWO^ZF@blyhJ.0A uutnѴ=S͎%||TS<9'q ^wFXoe:E^Y4gzBr4Ȱ\& f\j4;~iE]y|+e.t'`jP.e&Bl- T8ly$":<.jK`ҷ\2>+=8dž)C_! q*aх&%CYMFxnnzHŊ?o祤kOºa oiȪ H:S䟳7c}s)RiȺm k9eصtjyu1 $usȗš>: 2)H9Ի YTjwpN]){AKAsEx}EwM|tx)NJH@NwcRo"B1;,8Vmf @3H;$chZw!b.%"ac\S_ߊqhZU%MEm ~@ K)O8XW mf}v]ZԺQ*+V1/-a)).[qduEi?U@4s_ H:>kGp)I]A|NT~+ k.X[$A"\B,̕3:Ѽp~eZ]FѢ0Eܮ;N[ԱH=#>Y+ !CfgFk%fU"(l,c+ZTƀՀ/o=wʐɟ|)F,~$i OHR qzV$ omT0H #F%ݧW><ۧhoTMt?܇ͳ=yG*_7IѢ[:ݎ: %ѣ zwF~)-9I^0,H/5qmk<[l?.^Ʈi`VE6@`,&bDL *̮P>\&z*,݄.l 0wo:ֽehAAzhk*Ǭra҇-r* ] ,P Y;<<%#6\ pw*@gzD՘7Riv 8ryvTI$!Ói(pmUQU-Ǻ@}^ փ%pcS^fQ)H`[ [$󊭎1 Pt;5Afa5YlKk"Y $+܉?VKr6R.Lr+6!D 'Ԧ-u?LoBY^chN205{{ ٚ+a?ū]V0E;J5]P3:>*~-dʕ(: )YH~<,huQ0Eq; Eޣ-8V &M9Λ%)PrpxK69PS_&yGj ǡ&?sz[gHD څ_ LdżucH-N\_yP|7y5Oopx^hQ0Sc"S+.ZVLѻw<*FMGذ_Rw:х$J2r"R:&2. ]2_a"A6ՠPs ]CF2pv)x zI6~oܤ=j4RU_V*iHE] !L}[5Ɏq|t+ӭjqz^ OQIdY'&A*!9s׶!^J="I2ն{ #p!WCQa4AN.mc37~ʔCd/a˻HgJm\ot†$ZP?Vwq;:-D8gZ+: @X[~v$;y"˞ul9>lXsfQҬG.36=Ȁh0(tޢS+zN3i=3TAp@Sl6RվL%>m{ցWr_x%πMPJ}@.1)yh4/ÊԘ+ea9Y$~Lc756 XziuklU vZڍ V/V-mgW<ʐb^9{f߽lVZlJ 8z*@fX7|nJ^n.O4Z-\'Bz5cFgeǞˢ2 dwW8(>\\%oy^{ɬL>n\lʿ,Rz9ITx ,3L*ϋ; h~)h5W20n[fu D Ccxv X|:t̞BYK3jԄz?dהH*ldѾb8ͣjB~Likޢ;/6f!4MrCd*s嗵<Q^_+d׾/[Ӈʺ`l`ATw |݉U#wt \iN[wgIbE|ǘ 3GACDrN3=7-^nľ7`8kc͔ZgbWYNlԉtuO7l:\*'Ofϰ o-5UWq췶ɕYc 9>L%I҉p5 r']޴eo`so'f/ pG#ZgiwsJ[;C֐(犜$LT&4$p>LQ*d AԛMʅ"= hfgY1a$}Otog$euX<_{ L{0qŗxJZK!YrQl bw=m?"h3zܟlw:XzOy_o͍lB/9Ώv?+)<;he48ݿPQ/]jJ:"y:04gH بfZ w:,l<@im;O [_cg(C/>Gb[a#[;x+bI)ч:澴.k'VCB2TTeŸ\_ .r{Y 7||ď L?`QV9qߦ*[&Db\O;5JtḴo˕935U!rׯɡ[hN*&Z&AeQJuCeP?rv&cWDV3aAƸ~!h ;({aflլ%2X5^ԲwM0XGv˝~"6NUjā(٤`4E˜Te5h/;rw4-Q%W$s-膭O@ UWq OdDEYEM V4vMr0|`Tvڃ 4:+;n놆W9l6Y];nDԲ {O(iCy(m,ѯUU&O=XTpnWeWᗝlAS6 D?-T sc,U?Agʛd@P'&׀ļN!ٲhL_xϥ:f?l֌UnFImgIjؼ'<]׵(tC62'\tcUɴB=j82!k ɋe=!Xg ^J~ K73EfBݩ o\7H9ft?nIj;=e LuDhҥ NT7GsQra#-psD~Ń5a7[]%K 7dGj`ڣh'[In}u1FTBOdú^w Za܌ϵґD8n0(ɋ Mñ6M XKܩM7BݿT Ӌݾ<*hSTr|p'0iF׏wg9Må֑LpPE<΁&2#7zoГI[lcF[u)íIN""&^b _ zqÖW7U^§ސwjG4uG;‘VJ If]f$ e<cAcc\ YWV>"$Lo ?3q(o!r,RxL}"?4gE9;LRqket#p U1lis+tV XmU+臀'HAArLd3IqrK^> ΉؐH H{VeKBzڄr13>ηiu UvJSپck[+UE{Rח2zrUb0=1R^Qs &@yvYz*m&9b)31.LY&MZ$?0:wu0nΫz'g4lrygaHj~I 6euVҰ'HvC|-SJYO,;LS>`_/,Ko *e[` uM+'d0cNmK4=!ŵ,m3C' Ѐ? ,,w?+NP+de ?Cny KQ: bO١fCܔ,t׽pM 9.c`c,r"}|vJx94Hl)>{cG}"w$cXAi,OntsQAґ3id; BͳB@oVpYiP@ɼyu߿C(G>{Dn ?Nihɨri)AZ@ۣzX,pzjmC(|!$UwFwDfT{؄%` ,l(lQLT|jnT9p?=l0`wn]Dh?U'AȰ-[HkhSc=0T&KMH-ݢ^ ,6פIV뾑}V^s>/ %ǝ؎9dó{,BOOsъ?l:n~+W E,Դg%N]O8}nVp_5 NvC%⢍t_4dd _A6խV1U!$}q jQt(Yp5"9/C^nYRZӪV`xZԇٶ_ v<( Z}B '~v$iEผ۰=w4WC 4~}D\i3@WHLQ`YYIf.n X?L%$_;GrNb%5K?-gxEIKvXhm>y@2_l!m k=C p6@uܽE͑rEwB€#G]sj%)f$ni)7fb!?\wU[M$#iJG62VRJ͋%Z:T7OG/Sհs\b7i+mqJ9?|m?$ d+Rpji/<ȧ7ENsi{<Xv˧Gh2Y)Pm?YZ{m%N;ASe͕PFoO_wq}b AXEt3X/S?lx!n}YJ6َ_IO2] ><uj x9D-ܜ"66mh3%][ovY#U普tr' A'cf`Q-U,QBL % ,JWevrrJDD-lϵy2- 2 f]><3U5äg7| ;MKP7)WS^4F^r!ox p=_; 5{ʈt.E2ƣWbFrtE*;\ Wފ)ga;t >)jEqHP3WJ,j+ZG;,i߹B츔cZ8=ɛF=L7 Ԏ޴PYIE5HWRˢ"QbOu`eHbWݎm%PBs \uF򃡆)`U^>ԭPM4py~^H)G䨎$N(6KA=}~f+ӳPWa[Ԛ:MHK"8D:)'ŌyyN|RBtܰd 룀TϳA˛XjXbCM;GU&FIFT;mb"b˱Qd''tye}8'",B^SOV*o ѹRjg$|_.(gK,6Rx1y/zZ*_2&૕DHaiYfai0 ^}tT`߱C5U;JMLT!'OyIyoKˉiR \gxðB`|(lZ!9AB67f_K# }= Y>')F􄵵f닒JGa/wj @Sqm=/$J0 ZOsSL` A3&Hӹ8hMUXG W[X^*~?8y%2b 4Q}w0< ИhFPF(}V R{&Fhpp9`aCAc/iv_/7Q*X'e05c{_*+ZDb2>"jDžG{\p`TZ~ZZ33}'별:V 71&:!:d]Ӷ*e G5-#L43!f[^hCˑhαæ~pMnySkk gZ 0?kӝ̖];!Ɂ!T;-hODFWɪQ_dD$Nί%j%%lwBM9sqeXi@VrH=^hQtuD>Ӌ8!J?u%:2~I5&O+@(cmTñ*YwA>O/jyEr}HOTGl!'n a؟ eH*7(a=+N~XmȲ&~k .~$cBOQx sYe>Ex|,$NڽB'5*J<2q4h4t6kO"~|vIBrMғ4[i* fAӠPQ-[ACo޿}o%4s6=3`Yt k"XY%15G-y¾Zq}f?C'b䦛(>|$]aV"LxӝWl>/qWlV vP 5B&t=BtAx\[.pE{XfvRjx4=[r$Ɍ2@YW`GU}[ĝ#4qׇu2kf"ؚ*B*7s){r*x|<箨!oc kܷ9CUzRvZCbxI_n,dyvp8}AMoQTooXWfƦNT𵄝a*5ې<1&U1Ŋ=ifeuu5AZjh66sxf5MdkI [=e],*".AV8j#[`"2\D%T3E >B Nl TT9cD '{q ΖZOg<^kXhQNU.jd=9 1t wm&:}3Gf)?K{q>^8(>Y)Υt/|BkèO>$C.ګn 2-}e [šMG+sc(wvG0 ۈ.B= 4]vyb21:+\3eDBq%>>*8)(5 Y{G+ =d!Ή3+w[}.ԯgsߥ: _mׄ]+ /B Hjg4Y lt1W咵#V-=L5|9A%V$l:9Sgz2E=]."O.$fƙ8s yug龍,4Qf q"Q ` ^uEv2AmZ5撻"Ÿᤳڽ]\蝏y(oKJDq$RUFjE@L=)Wqx :S%dǝ2ݱzU^`Ur20EvQg LVȬe<ͅ}'$sGe5Mp:s2t씐s}T|Ur^$e%Y,_.>tlſzHt"u{`햆ytTr}:EQ!';­,D⥅yyR5ZUt_7 ξ ϮLZ W@W)S E 4&lvNT IIFj6`o R[グC`"#RcfR?v7hV,uML6bטDq -ˮyS$ AÉ ]7>>9Qk_@#v;B=CP)N܇{6=ѷ2T4*~@ i<}kH1}~x*x4 '^qD=,aA6At0OIKj`|rT$; 1V\ poe NnEMD]W\MY5TCQIYtNUWӲζP9Vªy܉P9<6>i9kF}njr 7SuP uqu`^r j7SoAGЀ2Oj(O W29g4Ayinɰ1dq Z#vVߟ"3gXezZDŧEAkf.$&,"l4Q7P|kӪm'[ ')@;a(0r'(6!d`g@:bhii:]ZXq"yS}|\F+"+8hM:̀DbU;7Ip<^;Z3 !X1!G]jp{1{/Rf׎ތ[) 9*<0Ѭ?!<μ|$jJH*92Æ;Ƹq4UB[w{ ؉Saߝ_4)R ;6lŏ7lJSVH?_ ^DSپvS14lu͙i4[F(K\ǠYI7֖3F~7z׫kM&CZ~QMziNc$ Nsa3Y)h 4`0azq]͜μr)a߻SfYg"b ea+>Ha5~O7ʉєߎ,տ$u ZQfª%bQǂ[*QZ0sGWkˆ,^,vz@e5x^Vc!`L1a E+|*0AIۨ5tFak6V/ Y:L\۔L+LDG񨟊u㻀*!7EűFSQZ>dM~ilyyQCEP`_ @3{B7 զ9@TTl]7 CxJHkiFV)t/t"x0{VV={!/< CVI/d.pn^׳Ys3!iKD!5J}pThl>Ǘ҇ЬfE)j-tDL#5HfE}D/QAnB+z:Y<=&DCW|X28 7'uӟ? _3@l(&iST{Oe 'wmK¾$*U?rF<x`L# [ ׿^̍c"~\x1(O$sr޷ &|P\)n/`ul,q|!_I⽶ƪ0"j{= :6?*Ɨ흘 &=s,gA7뒃o vN2z#7=\f >2P|i.1PT{ 1 H?nEVN7ZIZ:J%ahcsCb^{ #Ғa>bWH 'lezhd5^>^h)S`*u;޿E>zDzjU{-F$^6wvR ix{s7Zy $qNc Vdr)L`jNJw4֐)5vu}sGGdlj‘UHj!JSnÁȸQ|) /OɥSfÛT8kqEzD!ElVY4+~X^*UʿEQCDnA'&۱D>z!Z&/\BNg$F8oKbk"l x<神6d8_8i @U 4#l+x 0r[ԎeK' ʎ'C7MXtUy2wN\|}%#<Č(S}KwMDLYxSI &UkhtpLT ؁ sY U`2z+LjOa{\.q"mIk2PR,gX[[iPJMG7msD'kO>$F[Nb9ʖIgTIl@ku+74_X8zU$;veki?PBU™Ȕ߳~fd] wjJ7=] 8ONp282vFIE",sZ5Dľ0J}CzV֓ npphKk0@k}/ 3+OSļâR&pa كSόQJIN6LHPYYDX;"3Ok# ƀbRb1ٽGIJz4Fj="\X=?cF$@b\-ZrEEc ЃzRDYEix/Mcy٤E=pRS$▇^ UGI{ۣOfQHXd|դxsmv^WG"QU f\-x7MVn kB{aʣyihJK%@^k&O'`՚2bv[?J X(Ԍ>$%"gVh`LOuL݌QIٟA__V~b$MԨ{cCwVfK>=b~QX?Nh{mIny}ޡ ڢAfRCNk;ClR dFt:@xϞR9zԩwfPuHBp"Q4?t—_f.yo5$'2:(|-N~I(VKB e;`"kDI2a pY{X{8+0~U=GYxI[ TQBj>l_ދemKRN pk6jbI'[d+f߫ga׋h~0A x f"6 1\Sعb'}]9Ċ<#GMV M6덌̈́#[IRS2]~CY}X-Xa7O/>'TXpwFޭ(!a4@cXڤҕ& ݚCLLQE vfY\NXz b-%79Q~zu}p`fjn"^Z'^_i]:#gC}џ|$κK4Heªx&yhdRA'<&vWR%>lp FFLSxCODv~L4W;^x\p"+Az#.1h?e_UL!noEB:4/ܟAlYE*L5ădzsLekڻM  !+p. Km/&mMuQ:o&P~!q_'o}2eoa<ȿDC/"X]ȸiK ߠ@*=mA㪐NֵƳ&H pji. ELn}(O·w* sG˯{ek,;e$d(]ԗ1M %MM[44v?侮Zc+]BҔfyu:تcDzj˙i^P*\etIr(*wyj0}819` $$LeRϏ U{2PEZj?VJqR<]c\2cs"k~i`C؂n; 14-nK2@7xU=ڇ,1!#0&I|ƒ`X%t'٩/bp4[ t̲' S Eefgvwl9cL=Ԑ{쩗'(n64"L/^lC=529?ʺwڴɼmO'>}x~-}_pEX+F }چG%qQ RrKU=J^MCq&a:za:LĐU{߀l1_PdRuK {(r PD9;; wŗQD JNdTuuG^R~mAC9òQ1ΐ,ѕq^1ŒfDc-Dlv6kR\a\I5c7 H;k7cD.:>ˤŻoݕrfF;Ĝ74MZzv. T?|j ah>i\=T(h'ʙ15n8 IL?<^AG6[bU3eq:ףeҤj%&b,g/[ k ϧӖ=2!viuLDn84-$mRceo@ؒсnY %?Af-Vl]Q+"ڻk؀"i' RE(g0muu?<lT]kuHuM#n2`ω\+[9_m7U=C ܔ#]|-<0m&9t-.ckK[8a(ЪFlR ^J.Ǿd98* 8?8Q;|^bNG֔z3P)Ɍ$z|TT$/_ݭώvhb g֔~d`{抽:D2͕u:f `N3Άl<֮ZNɛU^8Et&5ιX7}f M@bQj]\~}x1 SEӤJ;HS8TaqbHO]s,+|K9mNKJ&2fVe027(|E.CC"JݜKe1ZQ~5ǤUx:RYFq,RẺYҁPpkl0>п?)X `EY&F:256$NbŪ֢5$6_}ՠ&8۾Fsw7X[`9 ҪE:lvMb6A|6 d TWNu|Tφd_Nܷub_vzq\֦ JY`Շ9/f:Lx޵Wc|bkKa-3!V,#SȌ5CbQU2 <]tJmk+^ PR8SjVH3nRЦA87ShPKj26Z NƜ%b\"@i@JlgVC"Sgd<&kFV!-'O;OAi@ eW/+ v8m 9x(ҔRHU0N֍(=2DT+A\s) |3LHu >dwMG쉭-kI.58ZMW ghshg}DcGی8u\"r;qHJMA:kS S(:a w\$Ytaz"D- uDL]?:t6Z4K#.>T7̛e4c G3=Ǻ 8t')z.:d Y_ (0~.)nZB\\jNK#=Ey'6@bg`5VyotÆ; 3Lt½|OlgJ2Y/o<*SQupAl0kEZ gH ݹfx$韈<>-=v A&" bZNK)$S]{]^i5VR.@E7q^%ȱspP4OEU֢8Py@gV蜂z:7ZQ4L]<=}DVda;aX-%yg5y8]E_ Ӕ|>1ݛ(ehFԪ{ 2X~]\zKᑈ^P#"tTu!7!IFA_ӂ+G&tgku tU[4 t\/6,i_qCjiedC'ؽ> Y3:,&446DE ׼~7m&՚CDt`ߤV 1p F]b%AI!/>_.)WV}hHFLu<)-o6al "`>Ți!x(*$Q>/X3\Hޓ`.qUsfp[!,,z iiךr}srB=1o%1!(IGA .u,ӘvjU03& vR&"~e, |v,?n[ CLeKa,ak PwLnfAIOWC-F5Ocfr\Sڙ0ئUW*YnSJe=2]Cj|t4RsQb#}iPZ:_DO++aGxJ'r²6e^V=dG+672IM [誃y@&q&e,:#וo`qAJhil WE0m$,ظC/A D/Nkcө6mA:&f!L: xH['kC>78ozڟsԦʋO!p补AS14k61<2`6ܟ(t VCV*_@7F3{a0Lx;a::,1<^4z߽5f/"{|nQF}!-r$^ JV=cԅV7&&pDLCs֖[^qB~Y:gSL)`oD5׳%C,i@7{ѨIԼkwl10>Z>AN$q3O9kϓs=P,XPfc+FOjӤs;AH `rp L 0sʨ~*|l c?P.bhPzԥcn?r& Y: Ic0'9Bi`C*T| ]Z@;tA/ 'TUƖ^>H#Œ;L5Y1 lI7SJeuWe?%l%[gB(Ab0ϣl!ENFcz\,Jp,5We#TW5¦Ʉgan;$Aŀ 5{>[xZFD^۽3V_Ŝ j.Vv*G64nabçLdtd%t,&NkG/<hU[!~?;iiǯ2Tp%0n 5(F(*6|8)%7a# .U#r2,& ζGMT`**q+3JPߍe:(8@^* #;uD];FZdlw~(B 'kگ?\c).C&e&9vTC᷏l{\}WP\"d9\Dh[W6?ν,R IN|dѩhC2saUÎsU[C9VP'r< ȴ]e)(f-1RM &\׽r@WBXhPoO_/&XE<[ۍ7{3\u>thh3k𩑥<&Xt̟Ւ]-09xD]c4:ޤ2b;Nc׏' :1;ּT8>݅˶Y RY8Kע@&Nll`~Jh-kW>^I<+,NWomR*muJ$ 5"CI5ߌ9z¬ GK"(TB?S(K.2QW˚>ެNH,ê,FAA%i{jj*nQѓR=0ITVuUQ~Tw${B8 sqa6GxHؽ(UK"; ,8%fA߅X({P2)~<s+}%eJʸTf1/Ww%:yZ'}fʜ*[zseaViN#K͐c/- rՋU1Cd 5//,"ؗU X~lo+ ګ[@D1npa4vLn~_#\uA-Lۇ*uq6Ԓ`VωӜ3RW6 m1r6"&gy> ˸կZCEU)ɿpF]d3m``;XtV#_`D;E JtҐ)QawbP]Ol(=b%` Y K;Զ3vƸ?o(7$x?Tu3X9C+{F=>s~[=_;sBJ &ku@nKuQ= LK(yXJ_M^]ͧPohrm4]QnӐj]krP=_r?τ 6! *Z/'@aߟu-C[,g$g1qđ𫞐oU'K1d$s/PA/5s+9z?:ש %\=דײ1LHscnc;͌ f@<&~ ߔ`%D8])@/{?7&c é<v{Á%qW~ k%ݫX(֑PuHT2?*41ԩ^CՠEjȕ) g_6W*9uř&ુ!Y(2@z1Mj9mgR8u S-ֆ~qǬk+~(xA/@Mt`=X=Nw~1޷a GO_Ñ+712۬/B_IJ(<W3nVvx4t>}0!S@ `nRd(t\w\fͅAtxر> W'5lf Et`|Őh$mGVeCtF0ՒOd5쵲]~оT1G'q:WNaCoS/ $mNE,\X)_)zmrbXSBL)Jn&_wfVw7Tmxh%BML_3BLugzsCs*&?*AMvRg$KˌRpay̽IO~m1q#^q]άE뵆$Hܣ!+ &Dq% 3iIQMz0ҝd1M1l`?]).ž\-cV20Tg&:$ٿI S'ƿVEss%oTu$bU )Y_og)1U3za)6wCYV ~nAN3u:WP]Mv}2.Qũy]|7( SZ.;i:QDϨv:2gn*98U xF)3hGPz-!="x W,U ȓ i/@-A 0>y9O.8g(,ڐD^)?,OVJ\ˊܮ$JӺ.1מDS/, X}_|9̝nd^^Y IZ^Nfv@9ެr ?/=5^XjWwcwr]pס}B''R^MVn/N+)NΑczOgѦ@kQЪ=2ZR87D"*#骿x.fY=ZL4XHB81N(Q;6C~#`k閛|EKHRF+фy NKz(@Ԁ~4jm(%`JEEuXZA0߻_vO§CnkR`_l5/?rVݳ_tLCJjWmI쉥m Vf1.\؍B+6x75+@;^qZs7nNDkf\޾H[];qM*GmӢ%41r>:jG 4|fꕓΗ"+;L[0'$b^gn'ǜP!O g|I/m.DxpVS u]!R.n7 Ox9 U~E\fxq,? +(9պY;ݯBCʇ'\yoW^I* 5o6EAxY\mUݦw'﨏Fڳ7Lݬ{\iqN…iUa~K .o'OIǭX#F*_z_٦%jd%/6'V!(lkZwYrsBIirb7o '=Ա:>-X[1=kq4 Qm{JS"wg"#3@ߍ %R`d>BZʐL=Wч_%8q/B'@rUh"P7`Tw֕dUCEd/`řL ֚="1KEO 0ǿ6y :rߋϔix#_U>,y=tVGr)٦=#`֢ TIͷ>;)G|o_JqK g Z-=IOFB|wJ% H`ݴ,Dz"EiN{M_Xaǖh,F"~Jz:Im&4euWrR^[dc~U_Ck9 #DU6Rg,\h PQ90J+^c M]Jmj%)61;2NҞ4,m.n҉;fcA :*P*y $vj޶ti5CmEDaj@m :~W Ⱦ+ %Rh'v!I*=u6F.SKT_chYw!JT\r[#bA%s ׬E=('JQkd*BXVʄVC8>"dR;')ߡ'ل↝`~=ϬTsPxܿfy\<#|W,@.o3u|ۧ'G~СHglp҅꫚#,$1U}2/|]dy'ɔhmodk5O`!MRxfO]8#Q͋TbI1 F?צSy8WGֱ᲻Hi$`xT0I,|sPL3M!ENR`Lj5I&w 1 ewqKuu3|#W)LZAdadXݮWK} #.7 A>.BjzZ-֡/ǯR?tyEn7zzC Z%OЬH(2=O7 ŀG_" h}11)7&ΡhOt 3OTLHhU)0>( %@pP,>S5lwy:TIE(#FʂjYY1<ݺ9o&vPxu.X$cR/r ciߊǛʟN,"(!u*Pƍ60(7[>|N'#=QȠI( v\.q><{22٠-@s:*;fbH[d[1vh He2S`$NZ2okY&\4Y^z,TS=d0Shoa$掔SC#/O" Vu Og- R-!P~ {NCT3О_&A+r7(}ȴ901Ч>`̟/ZR NET(QBɍuyIFk3 ڲz<|ר'̳yհHpQS~!cPL!nSKY7t}c)B?"O2`J[.Vv:s P8?±>Sl4Y7{4C<Q(Ltc'=Vɜڙ_M,xw1WNGzěsB Pp? q~tam<#]*%NVL7NkV@򒔚Fxph+[+n2+wvv (])"~!`cr]%_mn!>pFw^$2]Hs]M /#)¸i7oQ~#|sJKQZtĜ(MCY/ s| uy ;-0"ׄ ٤#EoDPS̻Z z(#Im28IVD{dKί9UT iڃJuJ¦B*Ly_e-=~(IeG^L@lzbݗM3]6+z6_GB }^uBO6Seɝ9pYTH,yɕ >p'*ʂnơij*/E}1>RלI[zj@ʊk8 þ]"$qe~pllXX6RNKBŭbD-n΋g9tVLvI S`F@7$ Ld ߥ.g>:t=֧sS ptY)oY ?7ue(a H CoJ 0OE;\ _od˭2 begy6M AX U񾚞!ߊ X} `EN hTcB (5eލx$&ヶ1Ҏ|s::uDY݃ϕ0&㩌=@8nɾEO981 љ"Ќn N/e\fWb\ [y~_4# & %&U̹ąWg۪W?6W=qI1mRb)gvdP~]w.Iv:(NP 1h)S@# u@pzm2"gl,%hᡣPq5C?#^t‬ek C?’552h}2q EFqrOsӘ]BvP81ĸ \:}=}"1v'|_ڏ(- %IRt!̟I-Jf`7GimEœ+#v]cSr=jD0 g) g;өADnS׶Y>+Gmͻ'W(k5Xl3FG\TZ"r=k;RJ<~Lk=f{U $;FRu5a]w&JfJML9ԥ ̆qm^DCg˂mRxlsmTqJ T"|r82BqTШnzrxb:xg*)L _#o XL{&ks{EXaJy9}WNyKB<-Vnbn)#Dm,ogHulzlQ%3W}dk&8:lU1iHk| F J3@+BIu9SOqp bj6Fmr̉^V'6gewˠ4 o>TLr`gGE'dY{к5Tn63&Txs~#Jع/J}sv*Zt1\Bo|p,\ޏ~"%T(e$NٮJ@cG|fP;}qVpNDy+{Ut'2vL4!&W&ףK>OtsO3< @[6KhIxH9ABkBd-GԠ<Z&Kr-:ampUj2,8/5NZW1 Gk [D6~:J ?VLN+ңXj^.Q_"P|͕l\(S ,O ~ ٿhؗ_9j?{ŷ7Mʢ| Cwf*'+6/=e5yroAɃ::ѫ M"1M9 Y FERV̂0es4iwfHOJz>7 5Trǡ7jkHk?l UEEGݎ zyH e5fȽ>'6]Ob_|Dbd⨚,ZŢ{R_jO.tdP;=~o߿,NB5]Vg33kl{P,~.\Z:6qi!G$gbPosSS#rIt^'Ku(*,t6M۬$B{cn+Τ&k?[EwŃܸSj.٭9䇟~s_fGb΃е=LtP6k@iuTIC=ބ^XHәSSewԦߠDki6_f7`OǺk[I2]h'SC &y &nqhNHH|Ac]Xܡ Ƃց "LcԃI[1涆ZQjo#toLZC|rUmLϪM#x84-aOE-v,at\wD;vEHES(HnS_MyA΃'ï~hs]}JxEC%宖EhJ}`y$;.T+Quچyz/iCX?G6,LQۆʵD ?ʶbr5r 7m:2W?~DY"-쯫\>v"jiLt4J>6]=0`.Ea<&Gx{#-ٗb8*MvKY\"[ (٫UF}S A\1K}ej_Ci"/8v( H~:V;ZKQMla} G Fp *yj*:>*IDh7PWt'.lƓ톰ÇIzɻtr4$ pt.81`_꿹r rI¹xU6imR~.tf6֕ R)MWMߴ @a\bqñ-E,X+g$X0\tA .93*|DUgˉҍP6!l@}p{"#@bmŨ)˄A^. aIP!E|zx54 igٿ"Hæ(fNhbHWe}R@&3lN 2ѥSVڂs8[zO R;#FD.x_4f>tD@22MR2:wh ExN:d[^$Qq#@|m\yVeڹTN;9'.4{IuYỶ)콊Z$h;:Y79q|~+14 S; iW2Id".{-BgyV]V)4'e塭mN ,,4颛m',YN5p䚳ܱy3'So'0Gș8}|zXIZ vuB0kl`^riRsזͲ,fXꨃ_FbQe ]:IZS"6}=kX^3W=Ibu$<@O}Gr[ؚ49;1~Q23 5)F8~ڲc yDm*2 Oh8B5?oy_y=@p a= 6RFFЍPP gYaLɘsIrAq-| E3+Rhh  PnKD^TZ״V2ƴϑv"ÚmbC x%& 1DpZ ?t1áU&RNUYu#m'jYBl41Pocl+y^ԬS{{'7?)7DM8I (%s]Ađ)7&a?਺+ ܍w,ea;sXJl+@h߹xnَP`^ ܾfrfp)xEzJQi[Y)aa.JPZ.[~?\=nZ1e啎a`]jԯIdRg0e)a]j23OeAosG:h7K1}`_Qa Op/-,ݺcExN0HXUWOzVcsmF$tH ;\pGQ~JG+݂ł,@v]>_Yf=PW^U&s\Vr@.PY)2F`\=6=5##q,` c >{э,Q%l@˝\X9錜OA_?Ƒ i[`Zd (Omcg%va#޳㇏U0OOEj FsUDз,IoCk/ϊC/pؑ-ot E^ JVmgVZh^`AOo?=\t2X<:Jtb,7hΣ%~w@bm\m{ڙ ف^>?PkA^7߳SlvLE"wj8EɂhJu_|~)'Nxio@Gæ'uc!f'H:l[$#q5,#Z0]DLؾ]Ɯ#ߙG]_8]L[zY^PowJeȽ,?x.~PaJ^eX{`s{H|kf^q뮦C h$%4Hp!\:ns'C~qro.눜gZF f9 T3bf7!1ʘ0:Z5QHnF_0%$oe- 1%vY"80JgO,`|R߂Bhzj0# ڛ1)<4j$.0+SU߳_-?"9B k>lyMtS+~"Vݥ1z5A8@V9悀)]@5l.- H,.$) Eܷ"I2,kAF cxRﶈ~!ski~%tFFI.E`c*$E,ONﳿ@pmkC8yp2 A0p܃Low@t%He Тli"'r8kAyuKMO2d8o4McosԂeyLj}j@4wԒ;Q%Gc5uMxOC1RM`Z#ZOw w9瀹u0o3l}WmݱT1&ٽ.{cCxk Pu-3MuZKP荻x4N.uuQVyTexc=:Iͫ8UGuHDJ`Xo60f4'lxv+w~JhSCyCwfE$l- 0c3CV%[$MBф*rR +n.ʻF˥AmU]"sI_ sqvXq{B«QBE#_fX/{ZB7gT4y*i!v({лRy.+Gຊi*]5l)œp?QC\?Q#9R ǪӘ1=P MM|(ŀͼ;{̃#>f?잊RA zò`FuXYY:*7No?"{J!lA;O"0kG^@"l#+NkҺc;ٙZ>V9)b>13{UI0j mӯg7-v.4 0u H (!9"#;<}|nvԫ̇NƸ}:͋QxàOV^t//u,~厤aCdn]#_?Z酌tCg xCJoWVcnRx&vAe/_' wn+s b% \r5x K!zB</ 57ſan·-haęӝl^3)K†O#ًD .'AcixbJ*ܘD >ͮMg0uj7R16BxͤFl?+[Q M/_uFmE ~ڐ:ċg.|0y{YK1(fn4,]^TSp ,f9낢7qeھoh 9?|e~M /_T3603CߍVejt~#Yؚ~oʤ巈wic2x\w+ _;,΢a!u,CVB'sUT! V2TdK&,dȊHBz`~Ύ"Uj`o`LaZuvy>g ʻ NЬ iQ| \RH[tZCޯOXEUV$z~}3n2&CmI[(dSZ#Gy:37dtRfm%R{Irdm#`Tm'(@$r,q!u҇4*VA$ ik[MaTXLHt<DŽdj#O o9KMqRîmj˰uV;+߭'\9F`+ܡ1}T:}4݈ⴲt $6iK|}P7cQkCpythgS] :LzU8ߪnIOZOI5N_plR?zbmĽX'~nyLgd5\th338j_!}mΦp]3cv7fyٕ89hzIKx=FyDnƏmeUi: H?:f'f_S_m3KÐy}(d !$dt֊L˙Q;Wx!mf} ub"X~oW8RšW: !'0Y#QKm$bZJ)|&@F4ⵕ ^7"QraY$DU/3ӓnI-G9ڠ*L38:}K݄7ϐZstEHS4\ k I,w8ac *{!f&4&)Ej88sxa \q6B J©)qXZ3#z)5@K&K!Jg!/ & Su2LIm,!Lk65lc J@ /)]0eK`C.XWFNU =R0?:D@g6#fi r :.)^\4Z]$&Qڟ?DAkxwN>%+,Cq=4>?ƶIfp^Ѿ_H=jbzX2_I}HV\-:{!۝(!@ 8t5~q{:$S?g4< A"_,@|K h:+# M'6sVPf\xDŹuHȺ]izo1BSk0?ereTȞR;_Ms싂eg/}ϡ#E@).tPSİ% /.N~],I{%zF<cD(0];4$O(MR?395 4G-S(bJn(a k#|n^RMy@E(YITĺo0e5SF<ɤPƠ:Xw1 7ßK'9nZx_ Cè݄t \_"!Pu2so6Oر9j'~Om\18PC14k~|r^'wEP*Ǩ o@h5z@=JIJ WZTNYxڀ h䟮/t  _~j\(?)զќAYGh;[I@pa9?]Z{,>?ڇb $ڇ _,h9'V0Syƛ`ܩle@H /ݳYgpUvV'{tx1¥e$~Խ-!۟C tR8,m#,-3y^{Q0 C"!Mkʋ,V螾"]qB-\ԟwTWvkW }Dt"`(4_w3eroKray0^UoN*(‚͓S+GafIҳ- ;?'+ah~)CUK1}h #Q7DT |-<xލr.jړ IG 2RE^!_lQ/@.V'ue,mh:dlrE! &\˗ NPefc.ռl!Gdsbz8]Ĝ:6hV\fpo"|ӳFJ"S"kрݛE#rGZ{Oj7K7R#څPC_te5V.B\V uI/(`+. &Gck\Ta0Oh}ȴ"tĆ(91m qXw>xqR֐I}V:״EָORwKsk$ 2ɡڑLi4Wm݂bv-E ~p$C˩q ]fޜ@1:֭y@Լ%!K;b"1h]\%&¤CrU_mtoӀh@2 b#l:sÑ<,<);6ZGPܔi;9bKr0GǺx]s QYWaִ?^zX2Bn+O?baPcܳOzlr$IR4Ul}^ٙ#|UވO˰mWHP{FLd4eMWR`AYGwwW9LAԢ2u/?TS&4zvoK=|Z唛 &dOQU<gn=w;-f51"ыp¥4hـ35y~C曥ԧ.GX&fP AxX>Yk6`a_=S}-ru6UHח R<_rzвv&b=rK,4[%'6ϣ~[fm@+-ora@R'A#lp ;=je:k Gx_tnʹ}8w#݃ 7(I]o8vBWgP+o^^fw>|*&Q(E?O9:[uF/帉0tK32ІJKrcڒ{L)A",8mRb'ÇajDzIA!#ύ?ӼnPG]U%؃|πelD4QƤvtLJXC,1,8p ZqȑyEZ ~Λ/IG̗ѷY##H+u%yly)o ;(M0-^`"X)U>T $A,RF0 .p5t#\0_ WŊ+Q:̇>n#oB۟&[XY bĸ)9׾\.zAwxTߵov1sܟbxoP O,{eZ_ k`NaHgot`rc-8Jȅ7`AIre7^znt9!=BnVRufe9MRrp[;O  4]GҔ4V̐UD 2־!- ͑X\nR) ۯ|cvы%yRs}os6h>4 <ޚA7SN2|\Bt_p sNM.f :o\%r&ZKX+cxꝿM)<ݯprɉڥ y1 +'qTNIvOI{{nCZFZDK?#HVcMkoӶ"KEA6)+ "XTSwq4ܾu< 1Im/!p'z@7/dGM6pN#uU<>=iQ0ڵuf@}Xe[C8]㘑 zג4W\g{FȂJ> ؄EQK~M,!VtL`gKyY":$ٽvr,p!OOqCJ-<wD]߅!"+dIS`Еj#E;.I1k'mV -lg+jKօ"u+*#$/jRB ,@=SjGhX*2.^bZo#P62BϡC| !I/kWÙj"bH˖䠶h& uƽ ^כR$fVx (5&@kY.a.tA3[1z\='CBsH}SgUڋC5R6s줻dS uv9šG^XW}Y-DW'FU3$KR4f~'Q`!6Rr2z,}a!6 VWAUNhXsɉǛ[m eϜN>#CC,ǤP-a8yIŪ^l$8lT׃i#PT| reȮHk7# .&KHET5d˫A<53'lD $oD| BPr<;tҢʻ'Fr;ReSS^:yeK"Shq$lm| @3 FEl}cppIvF }7r9tUջW;K7u5ʜ"#.Р/jq仰]I ZclbGyDl6jy;kʌ<ĿH!yĨqOGsx`୤gwQj "Xj&3Ŀ] b < /E5/`ϤI2nmi@U_"NhwDk!OWF?AJ"h2v"uԬkȯՔl<_&!5ǘw!'HsL:c3 Yڑ9xW)祖^8J]~%;cxe;ǜԊRp՚BeW(;񞏨]-kM|:Ar(Ġ!71S \#GҼs#QC##eM/yll۹\7 HnuXDE{ 1q>$?z)Nf@HU7+G> Ķ;w`շ016c2ꬿS  qTb'\hg -ӑ&LU.JʏbE2[)ej5sγ8;g6jH >R7o7)(z Yq2l[k鵅r]kcڄ@ }⠀Db ?q750C>l&**bz܊d|(ǣ ]Z̎3E1$ r*;Q0XE mB,l|]*X E 񹄕0)/5 tۈIc V2Rpi-I CA4;Bݙ42ܥ=?󮠖V5k8,Nʂִ -^+CF+yL0Zp,KDҎf2T,˸76cSL8O]ut6OfVyzfjS)WDaĥ JK$%+wC6:oRmE} u.BN7/p%Ex~uߺ1 e  p:!@55p;̰joV<'9 5{J`_fYg=#DZR~OW8[B^GG->嚁|3Aq;Bc{[$ATMϵoEVEWG~H{'y{ڪc2+9%%^~viEܸ1\'UWyn!29Huۼj`$k;Mґ(PF+CW䎽-Ow0ÏdG&B{&AgV8(Ŵg) U+~ Vi!1Q~yʹ9?K@z,ar}"Y^o1w?ʍ-ᶃ,#J(bnbzPmʰ3y5I00&m7^=0/4 XUB-^~Ltbf s-n(R^؞;Xʶǽ]F6*bhʖ!V`w%oeX;c,ߩORQݮ@bl6m Q`bsICWEXT>ΐ>.a[_nj jgjzQRƒJx qRmr!EK8t|~ґ`3c锭ŋh` M'&^:{yb=*}:d961z>3o25`k|゚T;i˽[?eQ8HW!ܓF >ۛ n+x\J@NkHn_F>i(:-"a5,L5:hL{gT9ٻ_m{L&sҘj0Yd1XT̕en RN!}ɫ%"^ωW_r%[̞3 hܩNO;#FC<Ƌ${G}]ox?V PZo'rX|틝4nw: paXU)mr SD56Tddžݕxe+*\$jX[yu!ٻ^OkT;!͐ Gݣ5kFPlmNAx0)n;^|E503WtɇjLkB>HV U4yݓz{Mh4ʌ0zF Sw0WgX>z#}2tn$ <:]k\T,"qXxơ794TDfQp@;I,z]x޲M!@/k0?&\B ׳N';Co1Z{ %\M&&q[nP7/$7%xGHy׳e_ W|kSOR`*":&&+ۈ!E}DΖ*klۭ<5qx,2@,z~J rkƍ`ڒ|ON<,wP@MR_ϧ5e2i{N7Aג`w{s CҌ.tIOŇgdJ gyhPDfam*|M<-9)35Mά1`Zwʇ6|37N(M rˇ.Mr`z:yuqa~jGe d:1ŠE5'J1($8$4ifV-ԧͶY@Ka@yf5[H}v {\;XnYM fvDᐗCkFu[~aId]rK`M:X}B#sps@e pvR)th*V[)20`am~xA1z+&cddV9uv6S'*<དNJ;}As҈2J8YiW!G?iDݽ*m ض d9 Fax|B;'fzi %ł#l h?O. C7Nvp1`]mzjB> 2bzFH8oӢ@x`&[> AKTpuUz_p<Sߠ+E6yL#Qߎ o$Ј+ƀ·>0%I5ۅu&ᜨKzU< X^ jfctjFqXI Q*t0좿GL1g[K{^%sxӝ2=dE7O丹-B&VXK>{ُ ԯL<Q;>m2<-6Tcrఙnz Z\P"2 b˫Q _3>{ZM.0"Y&"UH_0{SI?l<ʎc> E,B}aҘe9~j<WaVg7  |äI{jTyq'{)?5ȩ0|ؠvGgœ␾z|Lk7}-z]x0?µ,}6YY֨LZ4|&|ӊV/T,{rUpyi_'tE'(LY}47(IqgF3 /lmEr>ĞvH,>x{ޭNc X7]J6ebs>lR/HG7l7X㊏jYY^G [2ff%S6[ 1:ڿ"ujM1{jdk)EP8/)'. .|frSwno$ O:CuH*Fjt󠒘3|}]n zPrK,_^'$0+ϮA p=\"@ol;fXY}Dy|1d}YΗ'vdp3?аAbhB~浉2`4-Ty" 7er$6νL3"vk}}Y\:XLɐ2P]#Աwr˸K$/Xm tG7#H5V)c"\ϸF9'ulFCB @zҐZ_Ny1$`cP+(D~i9'q,6l2>fs ،a^1ӹxʟ@BC,^9n͟rSAFJGJSNկi]XQ+/wTFS:>,qH̬[⽟MT)4J)bO:2t<oM_tykJ|XjZeQiFK\S)Wx1L2+@m|h7j> CDPƑ 4 KgnnF?\x.|!޼"i>'EdBֻB T8*&aKlur|emDidvL7[^@oU|fNI(y|GY% C.?oBf }=T^(ptdoГHDDV(i#j!Aھ@pm&lK)#b',w9! #SMQ7'bT)[8S%lY#{J*|WAǵ8Yv- b&6N&ѳ-_n=E3WM5?adw^鿀Wk9}v9-@Nmo^_Cέ*r4S]͋T-k%ɟLɿ8'ҍ vK]踞}!2$їibl_9`bI3Cdm }; j!a);a*y SJwb9ܴW2{%6Zy;eʡئwRf̤ywk H?)m&d垂GqDԭ$J'R* 2!D@q4Ǩj Z<ȋƞ[^-{q35S o3g@a*j\סq>9Q K~3ͯd@DͲ aUIΧkxYir˛=hDk# qnȜ`iUBP:NxE\b} ?7{jLPİ=yopgL+ODi[uEKCoF0/F^OB-2FiFmrJ<_`56;0Jѓ1m0i,4//Bݙp6"cQq?F^/A "d [%(RT﷛fjUw3BnFe!|nOv>_=ZիC:Y-'{A8XtdQ_\+RE7} q:j[&h.xKl#p+ /} FH-@ki^cH&< <$ p[l E! ssvL+YOKƸ)8%{gBwJI<*]fFF$F;W+ogQAiv?F#+/pxzŐÂBvk- v֣sJn Vƈfy B#g pת xDSm.?~ՓXW_iEzsIUG\q\LiM]`+8C$x8Tp?2=i0"ҡ%1}v5r2?'Yͯ6nA?UaA7=u'>Vk j )5D)t=˜G|ܡót G3deFAӝ_ŌP (b1MG!M5xT{\৚g]XLN mU#iJLWNZY@oW j]6D9?^DY^P6[E|r"Ўa543ߪS9TY_o̾1Tl > 2I~Fl?`4!Hv2+o!d$%`COht|&zw0p9i^>VB)r:Xqsdu &$i:W6S l f6</e0 K&ߊ~R1c Y&]sݟ4ՙL~UW>3~i&фCR|)c@R} H ׼~.+`\EAn}Mbcr@ya2t ٸ#j=K>f1dF*PG9$hC!OB:ACp11 /)]uPxL{FwHJr6S:Q^~+_yc5E +05,~JhEj8”X/Y\7HQ2\yZ:ĄoBU`F|zO$ RJZFĆ֔2,BC!8NS$l:סQGx-I}P^-km+U¿z뿺p7)d7#sK p ,&3bҦZ?X@eD8W=Θ BfH˔y0 @֏" mKJyU=Csɨ),zA3vJ܀0}hrs`fx\is<8t<*yėplM1ڰkk7e˿q*& V&$a!RiJzh~9[dAt ͮ1vD8٨̪R*VEO^W#]$Em8@AؗI#bxq>l,,z#ٙYGsYL:}JBP.oӒ Yv.˹su?؁` >fɽ`)v'Rw2ݮt)ƇBEsqQP~G"'AWa&-m\IN|xѠk鶆Kjl鶤*Ǫ諫.cC48d:/ML=x}YMc = ;LБ`Y˅G أ`! O(EofaG* :|WM NP9)wD<L0@3.m#8C&eV٣v8,3U.3Ceq6$%-M{b.y ;$S0n9t1mh9)u&9!hvZORDvr 2Q 7(9&GNׯO-mpӜψI +B^Kצa~17ps.3ڡ~6$dB-s j3[ 6_ [)q *sJ"^;g6O9.0hC-=ݤi.?QֆWs).N $|2cQ ӄd16q[j{ZU[VnRWskC1V{RsjA(Ȗfj5:zqjѡN S `E8Ll #C&=PZ%9;V_̘#H}MwgƱŸZVIf#pUCsoسHl'1L^֊#2YDԃW[P]lW Vn?إ(.^U}?΂Akb[caZ@ \\g`H$6JC*,B Vt;m?Ji#ܾkEE uKB+HYZܘ蹮4 X3ˆfMfW8u6`%hH'O rB;oĂKNIl^/' -FdϞWm·eBă `)ſf(nxLC[z/>d) Nޟ䇢nǃ9H-"F1]C9*Hc;EB$OҲa;s=ug叶K љ}o25:,ota^.'~&f]7|%d Nmvoc#7RE BQQL! $%TGL`7_ !=I=6(V&u#vs sQ}<>4}P\c(ܩTZMXvh"V9ӁxO %&`1ի~&{-{9#r`F pW:8U u޶p%%$F0h8{8mrXB{T>>5CZ,[=#,9̔zUsפj`wZKafqdj׀ElNW1r2Y)UmFC֚/ .CցBhwC<,P{^#]d]&Y2-f/a!w݂eS2p;#g& =΂(#!W T-q;+H SxkV??AHeFب 7:[(y7N~l؁sqb`hvx4pw ZP?HBPk }lc <3x~;zcmUی~D_mxl%۴[@#q]w/x\nQA hȍMDO1{SҎBzO9+gfVjPAl6Izu e` 9F= U˶ ÄilKϭ1-f^Gb2ybtvFiLjjʹUrmaiMU4{&ɚ@Fd/=uW"d A&ʆ,R@&*-z^ 䦘1ըy:#&ĖpOkF S(oy7Ě߬XQ<>P~W7Yǎ tKJCؘvVLknCf8{W5GgISW\mn1]B[d0l+!IۻH{O&;*0q_-TzNĩ5^&Ar ^bU*,!6EҠ-[{B~k\ae,l+Ysɜ4!y^o ]#k|xVy{PGN1\Fu\L M6Zҁc㯊K@ /Y;t@ '& ]@p Dp}Sr?kS> C8G8{<142fC Q3'뾔<**oE*&lf,C%U?wU+6XhdpIM.$\_"AOc#k*H /a>5ޛc`2<*buK.KO[8Io͝FyOk132 w(9 q%CuoaW\9\^O4.isCTm7`h%lfKzkd*P}OM{{T'J󄡅u5G$0âO-9Li&4?|Jg2#6Z%0fbpj[ꕜf|#cfjFxL%%$m|'A:Ocꢛ3r%|Gǩ7&1HKb07cǘ% b9WoL!1, ;}UQA\娝4$b@·1*0ގY!Y#]?%=1 ãe<* c-0v(<`,FANQUKwҩ}3yF^ںxv:?ޅ/j4f;d:뿻NKC9@i`tZw| Oua²Wm(ujy+v#xއ*\Rba)ޟ*Ou x~"-uJPOS vwלφ<:J.ùǭmbQ ϣѻJWP~>Kl9VVf[MLro x OX&n_a]Vzyh{mם1(>ꂊrPuQW E˧7LE͕ʥP7 8pNh\3)6DCjw=7? in"'rF!Klp_‹y?SLD>j nTJsCM*V6iĴRѸJN'Ifzee(^I~A>uc8[X Иdh;. kKMxԷ&g8\he1E$IGp˹ _8m.f\#!Lo= hg B sG]otNeSu-[;p^sXB CHqχ,/q f⌢2/Z!,"%pC6`-J8 ag`\nk.^qGJ~ks2F})}ɂ)}IBi}B+p )2p}1.z8TY1 HɉhHm^0n҃`E Ƿp_vS#.=.̺]J~^6uSUwOBݨݥ2,t`{bR1ߕ_. uc38)OΛ\=>ʮNf}Zrq#l%W1?(0Jlsgqxil .$M/$t h8Tu#?ʬnÇ]tʫ¨c VSB_CMX!z0ݟW<qh;&߬Rkb h"Z6ƕg`<[RASj&')ʮa!Jt? 8;KK,O?ts/&Ey螜RƲj % b0oYkUoYSQ; st\+NC;~o- ,~~d 's6 12ec)~P[%vn qv2 gKDVpN^m\j>z`NY1n|;ђ 'tBzy$nϫ6i"H῰ݴM3BmˊhFet6RWi]ڸː~7oj@9OK mmķwj]^]"9GTJUxr\nVt gS\s46I#71y^}Լ0ʚ cCoChLb;zg5_wm_G83cÓPj,}yj`%@'snݲwu'x(>yXo"؜Q!SvA+g DC`^Ĥn`nNT2TB[TQ7#Fр gG8,^/#8ڡkIp)6y)/%KeASc}Cc_>1{ZE4?, {ѺGUz;@~G n]}d4D!*NGd i/׶gDl׏-LDa<\#H[S3|vUx$!xYU@2y%+\M7D9U@q=@%'h1`3Ü6;?D ?6E*[ <6'N&d5J.B$ґ/OzDW2Ηit/Le Bcϔވ2; 8Pׇ%IJezM)YVy=y[c4m$ oŁ.7i?;4e 3P˼}I IGi-s$$sRBx~&ڒW 7d^>=0sȥI3[U$Bu[6d- M V.]yC]-VS;̖(OG<ȵnrL~O8L ĉыW7%T 'ik7*z?1aН9M?Bdbt|ȃ= }5ȗ]X?7+$oyIFDz΢4S/X]Lr<|oNtBk>Q9Qmժ,z%!&^e#xCJJmu&8Wg dڟ-"aW4ձV.gHML491k ~Ft6<g'CA/o=Ytޠ)v64X}o?,"!4I.\)s'Xv ppN̾쥗)X =1dѩ#18M#ܒ!s9$HJ?ʧC.&Io {uO>|:6} 3SX,ˈf3+;l|8^u'd>4FjϹULյC'mDLujNm˕ H]7بRF{>7jhV!2; ~8WPD"z7iacMnF<~$Jc9eO G7"<-'{1a=΁`֔be~wΞV=r(z=p0ygalcDc8.xlYr‚9b\>R19-TruOKqkLlfS>7n7#  %1wJLLw3/'#d6^2 &6FBbwo\ww=;#&6PII\rAg@i("utE|Z±Ѿ+VHа-"Y!):e) l2?ǜ#?uޓޞyu_e^jGΰܧomd>}.e$7|hNOg5NZGDcSt4b?ab/hw9ݪa)0.rҟ>Kׅk>{Bk|*ly(La-@j s"~mLSxIV%]QMwP-jg˼YFPOÍ^H )loG 9I^'n2nPoP\_~ܑ{Qs7{>-5cz|<lC#ZH ωOFFd rw"Cuc ߗJFq2K :A U{l ZTm|wmHFV~ W.\ofozM}a0-6*]RxaMo/LcEw29N cD/ϊ;ք&GB [5l ;Hw.(&A-:.5cyɩCu+ؑ`]a:FlH ڋF紾nc 4҄WK1 P[2XI?Vaߙ~?{?\t',eAV.R6qn%bhJwQ|pHě~G^!~mRSBw/H)qχR{ fzPv}TCBBo/ͱ1gzCګd/vo#n{M(UoR›WsSN`EˠHfŋxA7]냅iRʬFSn xH$#:5uwl X 9v`}ݾ3L<1sTSy>x$e4UdQ_ی=48]vrn3=L}Qr*rͺz+#@CJ6szrHLq\Ép^ׯI$tIS8U45ZsJ6bg! tO8rjypg B׌p%z7`YQKoKg?'v[!gLoΙ˙RivgIU6g(Z|-ʼk|Uk , -v 4pC\G̀R8M@ݞ[f1ysMA@M/߆-Y'RAxuBLpO .PM3ʜu6-P,7ѽF Cw&kNb$Lsuw %JMk=$ +1ւi瀿Äv0h``n*Z?cqeq&"0ѓ|]_d[-Alӊ8Mi%/?%P+No{WeY?0 xor>+Mx+ 9YX)ǾJgEfݼNiTѵ*ϐ{|dߣ6U+`B42 alue^> ۢPU+@Peє:~G.0-ujM蘧7An_Ň;@#bpnjWX_tSx̀#8:9maC:l 2?KB/OhB]UV^ ]:{_?3x>=-N29IY?ԑmgSD{iޛegc׫.yxՔ**=o8/OH/9iҵ8uPbމúɪIdRGC!J)A<*oBAVc\ȤA&GY-xdA$~7/1Y{ b[ѐdbxF|%>R5V{X=+< u! tɰ-JƢ!V")o6w~K'HsD k3I5$86wo ľjd+-.F$9MNUջzd2] G'kص-.KXgo`8QȭY2@2˿1cKko 9ր9BVi@bOOzE19 5Rgd?*m 7 D=s00Ee+p4kX; 4 &b08x ϫ"ޡΝ9 s5Ɛ41]&cT{.&3̖Ú~ ق^oa+Vm#iw6U7$T^LB#Z +ɽQЛ+K-;8kfmd~l\~UskuE.u[f kݦ(ז5 f*fr"0/j+! nDqyd&]rdÔM/Ut$UO{3:lۏ3w"ȥ.Ǐ۳T`ѩw 5Tb? z3nY[w/4C(8WB)uڐgXc gxp rUfTI oںG1"Q]S& Ia%o0b_^|24ւC :l旔_yimV}-,ףn~v}jQp)\ؖ O\~N[I8{k1 rΧ+>*x5L~tI˅s~-JJ ]t@CcP1AÚ.bEʎXa$Pu¶QqQHWB ^Բ w2^^t\~{_(*i]NTR\vl]샕g=S}e,lYzұ㡗y@b!V668$劙:rOhlwQ&A,a9@YGbRsTcRODJkq&gkamKi+日zhcX.[Iݠ~*{o+P]V_yfİRD$=D)i sVVebf \˔g8/Y|76|󬭶+֚y$ķ"@i)sҌI DSP=_ z@ jRcF{*m{Urn7TF Wi`!{b%n(M.2*^>b UtC[j[XA4 -d!WʩJ0 k8nJ/w o4Ӆqt?W/6mp)M2k3iVP~_M8yMmuK!VIM Z īAit<n϶5yq ;S_j&8JJOC Du{^ƣN_3}t05݌jf{_.{4rK>Q{^1 C 76lb/o"a'#VHOE*ӧO(]]R 7, *6xy2 ^yk2'|G%/;v|ij3֨ IZ4p1a(Lb&l,4q@q'_B7ڰ-V(Dz]LU:%q7":Za8F$ fʿqKBgJiSnQw DrKơ{HHcL@ı 5r_ e[b(!NP:5ʗAW-,SHh} x@\[:I߳GnG_<~o*&!egHEEa鱹QOϦt;ϳ-x~DŠ1pTn2;10h . G(5G Ejz q1 a!:!2l+d+T%1NJ` 8ϱ 2q,l=-^h}Swpž@T-ٮ#@N8T&I&ᕨl7ZSV|gPB1ܬYܬ^%p 0Gi|@ٵЉe}eey?N⡑4Ff =bܛ +|-8 ;Rh*笐^D$PZ,mi%BYwa.K(ҥfHK z=%AMnTD^lý2%K';,`_?r֡,.Gu,2@y ~168[(& r7) _q2"Qٿ0 j o-#Y <*\D+#*|-֬9 !ԁ l 3a$35_%٭!q\ XlQUkZ>z" 0{b@*gUj3el=Z13#l+`k-'/[m|P(σN06a ܢ0p#w*5^`.AjV_%w=p}HqAi$~sȌi+XX[| |W] XmK hu ~+% <8No=ҤfZC!Jo~5@Xc{g ۔Kollp"S`xsmN RBjU2N{pT]o,:?Q&G S-La= ZJQ5RVՂtwGYZYſ*0RCҍK J ;[v "݂RS)vRBȥ44zR"Ei\|RjPL>-0QhMys%*COM57x=Suh/o1ߎV'خ&k.aT-9oN2X8Oo Fg(-iV޽^V.X8IuH^ߚl1"!yq=,/f̣p(!/NK31'1Z7|c)S1q L9@KU(Ƙ]EB8_Zo ]–`Tv8IUzOwmݎ“|&~4˧qB~spɥۂ!K]ZK>f׎S~͏pF+ 7!k.@Û/T=I?OLX 7$EN˘&TxpIAg[8_#'b0wS,8ڠ[_ +%RD( q[H'W,;8!/Xhg-fR&4UR]su |NhGmg'G@@Y9uGų17Qޔ,٥*('Fk7e^Tncs4xТkjTz {֞dnHcMe 7E]!YfAÜCFr%:9"* j Gª ŰĶ^۷W怩ru~ 3R 4AU\RGCJI\ovr;)(R8#RE)`|7qa=deU0N3@;,8ZNT0ƮC~}[5q+Go +lTv-)[ ?j(Z\srWWk$CC3d9!z`etpjydJ@`jD5򕼋w벶jXӯIz2IEЏ{@?2S/Y#gJ˜ [dz eU$сHw?~9V[JM5ixQfOVƤ@}j>6KXmIޡxKFA.Ko}IPR||2o k V=7]1E#h4J<:@;YiKKZJ:jԀ8- ^E18S^&ִx:lTzOo.m0 M-xתbWf.qeV>aFN0k\g-d~Y<>x{A)G!1{qqQug0޴o+=T6P);XL } uǸ:()?}*:e'|D԰OBN4{VC7*S@d,lA<,#a>}D6"|ISܨADȖ! ء~5 SnWСk3l϶n6pgiioCt[F^) (VVIRhqlΩFjD䈼c6jhCl\1?i = ̈5/iC[gdƶk/jg7p>v-WMeGb+m4d7Tޔ4q\  j-[prO/8BiSfW) J,*aI&Λ45Y [׭DU_~He ) M?:9ofW:ָ:`@I%?w*e厶7kʔOi`p\|qꢞxAH l 껚K'h_S.#PIh4ڧ {Rz,mw`j|Uߠ ѥq9u"^B_3)Q#> i,1܎y\//#&]'11~fHTʹ2GY`>s)[P`aw!ܬ(gv^ߩNNKXǖ=+JPfUhWΥ#^Vwf"6QS>XjL2G@\gcly;e_8e- cy%=<3zjK{ 4 L,U!FJIZQ;+MikjʼnȪbKiS2,gDnCq?)JZMr kJ;h1]ߪv3twܒNS]d0H3pƼ(vν2s8/z]l>/{x=f Oy)SJsb]n!!Y#_YU(>[IzYl`Xd֡mn;-If`a8:Sb˹GL`Y}@?-) /|P浿`aK%C^QN'!0:h$'A#lnaPOGtc9PrUM/6[;A |ˑ7C*396#ULTʎo!3x%CD͹!wzwP y _TE,'}*A/󯴻{=4[c_1k<|liơH&Tmǧ^= n+\KߤUWAOwo5 ^W gl3E Z(~+x0m 4J|̙&Z+ɑǝ6k~3a.'97s@o_=mN7S F6tiw2ҟ} WXMltֶ.B0:rQc?gq]QϧXA[_S^:ou۶YK|o.F.x7*CRġ"eE\l6fjN{ MX1'fҿ PeVՅrkVg9)*Xٙki".zJM<n{d{5pKKu ;]fvl9æQj׿hZQϊ"G +0!Èa[_ӻmaJ:S)$zI;y@{7=.OPG\܈ICW sB~/e]aW5=*='dSPY8=mkMDuF ug`M1)ЏY砾c*+zEU{n:V>~2 $&d|3_[J˙tkwi;q֬"7|j >)O8z SiTvvD&fʇ] US:fK#at&xկz]WiitC(wW.>CQ|!rGo I1_ S'ndP%m@E(źp8geN#}#yq81E._yR -lU4zގg~Gv Tϓ*C}h㡻TO#颫R\Pg>av,Y~T;0*?#(MlK iG;P1J =1l](34p}B5"Y֝Wc_ mܫGYC]b A2τ#_juڷp7x1Ɵ~<mW3 vT&h 'k Zŏ`tD`j=)^gX!jV|@"7M[f3DuCX ljQAUxsz_`ғtfq!c hw"IKWE݌m>~0% >:Kpu,@a|f&F ]SkT"{.1OHMr[񥼷5 I MEf2$%P](T]Y&6N4U%f7.^3!LtsD?yǁ!ŷ YzSKMdE`ct-C| n/}]Li8Ϟ&5P(DbYaYe*0* -6A ^q(*rio㚨{cn>8#r0iOSkDh*+$(/e<%[]#Ȏ5%EDAO^M%!*)ѱA-kV>EM ,g/k4#1ԂK02"`U䵋\?n#"Ka6pQ{xŶ{;:ƶ:DFk;297QO":?t ZaK}L͙IAi|pN#yQ\S~ȇ֮ x@ {%3OO%a@\cBKq#]J\'.o=G}Z8 !5?5мZS+tB 6taqTH+ yV|Owxci&xaIԄύ̲57S3ƸsrTp2W ~.1ܠëôMh>s(L[R 3:7&A%FMv!q=y2ʊtd%l?ό -RBY3 ˲0Uu,#뮌*;m/]ZU_Զ@+h܁\mtm.R"HOg2g$ldm--+ (17qyED)ɶEBpVz>_ " WtQβ bhύ}݋GN}0iXkr+%F9#4%ey9Q1"(dϏLOJ琠j$0$ȸzP? JחJ#eV'%DI(|~4]3㜃뜬4\>YmU^,SD<74>Ydūq.Mȋ *<ߪH5-n1KM**ܠX II!9'w5-śR> 7cʯa06E뛧䤮Ay1̻1U$ a{>_%߻ nnKyw$e'w`e/vKsAG_XX$[4@'/9{ER|X:+h_,ćZ"$uaҼ۲/|6&|5#,g6`#@ZkTx]Ʀ\ӓxL.Zݶsy+ ?г3:K 6WU1^9N,<xH4n|iͿU}dzi=8yҪ8 ~ъ2`ۡͪ}AsH?.9'd C^F qZ &ߑC/02O޼"tZzI~ 0cPZs 'cFmf ^Y]8ވ[E Ksj oQOCG+B ֑3*:^ 2@|v[ aK_CmH5be=ց¸ fR/[A4F%K o0׃{ˊR|,G_L2E5*~a/?'h$t!6V {y1 ,a( ì*uce.l& o d[/&.ͭGFP1k.+酋ݜ*%U nidG8\V/{36f>S]ѫ}M_V r=y[鍂zFG{ RB$f*UʟSy3uQ-_JPʂJ"5ki#Iס9LрNCՖ 2 "^}3".b<̲DB 6^|j7h]2n3Xm4G+X+-Q8UfFYy5 6Fm=E5 j)}+pL)u }lT(r0kBw|2%?r5GLј}5~z?)t1&.-r)\k|%[ Jt ݝlT:%7b9lMր~qmg7j |oڇ3fD*ZIE~ /1&ZP(WXg}ʓ&)~|f-+5xsiF ]("Mcp:zs"%G1"kϥc3}9 0?0hw}[^Y {ҐnnRk;ڶo/~eG`pJ4))BXBw6$Et3_lNޕ}11 pe%(TGXl %#rCm7?x!EٖlF%;r޹}+Ϋ>ѿPd'Ϡ5'K1/Z?+5Ctf Ya: Ԑt[iZJ-U^gWz.!G N= (R1f3d9UeUנEX4J5MP|/xY %lKxG,ꨰHhQMq?b'5WsScztmO0y`d,<LN ĢK9%T] =NWP3cG?:~{aNQ2CYS)W]wm.p 4Q95]Y:IΊ55ǫcFEޱ\qٳ: A;3Gg|ݎYp;zE^H-tp_IAw+@ʭ/zJԪ_M9ilF=ś @ȯb].pآtյ;5EPz:DW쟔hcҩ BH/&H*eQp`PC8H~5EunC=kD6bif!L[p^zhX0V7ߝ})>#=nhZ9:ED 8X&76[2%Zzs&bw+e+wˮ|S7UAּifvu"ChS \ ?=i Q /Z^5*qi1os )rYη ${\/v(].U/y8,Volhd83 y +p `yЈJ39|n ߠŗ} .*\r ofxP6UMv|X=_" X]y}qg"On&$zPi;'V޶pL"F#Yr::mx0lO+RBS iRhC FR#]&+w"0C8BcʒZz*4j6NΗď~ )6*IIUaz+o7݂Ѯf1r@LL 72"q˨sX#)rR˧\ U꫇ ]G Ʉ#oY0,vx)yP3J>Y/AIMsHZǪ&6l\/y*Zp6\C $ɕ`) M|\; ; w%w dž:6_!(xpc;3bXQ#)ўU|`G htA/!Jfb<$!̻]O@F9l*.!SZ8=[z&ińkaI&GQ5}PAnCL~| &F.g*JͧFm+(T;^!Ί"*՟|UԵνIA _Zh0@2t]ϨOF%_͹T{vnxC4$_i}c8 4]f9)NXAXIH2۶[:b1<#6ށ:ozI] 6"+o}%۟gg o=_ "1|}tXe0 jF%&٠R"'OA Jb~Am_e}/y]^>iF'NۛKT*O~vƚĩ5@1ʁ:!7s  ~XPBŖ(PW2:W)|xN}|Uh]=1<~/32vpV m6$%u`UDZkawRn3bT- zk՘p7hᘫxFS⺴$`) FYuK]&jwP' " >VӋ.bCz !N|pwULVW*jK Ij">GwRP~`m!)!̌K6Zw lu6H*z#D Bͩ !d¨ShBCfpqVIB CJg׾U3]եaϾs^~*(Q$[>  Gvϝ0jG2]`1@$@9wjaM[kffּF'[-XL)a7m~$$+d.>42^`FuZoݶx;[]oC)|V Z $e"U.1/y܅uVªvע·DS ͈"?s{zHV7I:G.&"TB CL{>#]ci ªtZ[`ۏ[r \5*vF%M+Z`IPOvENynf]P :}mIsJno1@X,zݣ~g1cӏ}TBb9dp&Me>Ÿ<>$K}eDS2N#sײU\cu#>;xK*"(HL 5sg"MmcƂּl^&Ө541,2gM2wOKvf2E4|LT{N,j1q ^[l6*91.ТϐBaz<>;qf\z }2ϴ}YF Bҁ޺B>xk 4tS,kGԞ $RnI ܴ4Φe78蚠@O$"_E%?Уͷ6h 0D65Jz(,>a;)qH|]Ϫ[zsjX[D%D+Mog11i*z=m%"%6 ZϊyFSumx3JPo77nh3"BS Ox>~oy'ZU;NSw N-J5?sfw14eM|G./rp)8ThNR<@oaO3DZ$ af}\#xv-"Z,hd#)r5¯ÃI܅`GЀQ sEXR%2:>: _ȓh^% ^aK:}iK*Cz.Β$T>%&*PSa; l} vsSǸ)ݒk(}[̓aq7m@ %Bnm6;[#%%žr  v G7^#ng.neuDh0ɀJl&DhԸ=;|,X*|l#qVӂpjg+kx|]aݤuM6vYS}Z&Ket׏u'"P+p7Pfo4+i| ePv~7P[B ZFu; 7A]qmy_Vbbs/X)9c/inA{}^j|V~ yKkRAwF. /Jx˂w%c_Yy,8UD wR/'S2"`D}P±l"b!흭gš*Z fBπ'e3wBcf*>kwVhYuZcUWNJā1K|c<g$W+ETVd[8V(sH<Ouyv,iibqO/SW0>{}ocy./w ~S d F|7?ph/r̾va0gwA1Cu|/qf8c,ƨb)6дV&!p y(`zOt٠?SYInёϬr~dOhX:pLYQ,l#`_JAtxKl8 -R<[eʫ?X8 bH 0ӳN yUj3zCgQ/{][m觢53?6L:Yb{UcX1w/heRb\TVhK^YF @#$(6σQ34` J |&^ԣ;pGa7j-27% N |z[s r"IaT+HSQ *OdȢfP2G>:Da Qc ҧ &/ګd01].@t(u ryE\+?;ӵ"{iXR7 Q]>eG}!pk/Kܡzgӑ9BΠkMPFލSzZ"s׺Jk@.sFe{Ҳn3;Nc,(KX(Dp9=\ŕ)mϓ] a')\ksh#iBٵ;2'E3Xgh;Kƽ~#6XrA%-I1-LuKk3U Rm4sn'V t61Q8;u~XO*xfr6`0CND ̢BmpHΏ3QYh9k7veљGʱJk2wD/yQuֻ]LH7]u$v6n2[0H vw:my *ɶF];j vSD51g =FpDrBG43wTn<{Yޠ=Y2Y[xis4ѹ^'ӭ\!|T(*UٕjJ+-4ʇ+%`x]y,fc8e]CrJZ\YN^68y.sVVxNX`]qa9jIOSWXXLE9rtp_hvtٺkMAg/e/uqYЯxs#9pV'5:Ȱ93_2"'7^NjACN"6ՖX,}cՆlֻ[:2% S~|+P`Sid0TM;7|i2(}(9 $ #} l, l HkH .$}kvۙpLkZjQHkF[:҈lVOL>=0_ow]Ö;::'à1$#v>\\#RufW$'`=zsrg.Ҽ/ґŘ4=%d&Y/,)·*pQ[SCoR<7}FaqR\{nlD窌4jQC XE S2U9 cy O *"5JnU*Ҟ>T?-兪L4-x|x(K|,ҹҜ4BrAhGzCM%Uz%`-ÆAԄd q3qƭ  )QDZuI]Gvq!z9(uB'|C]ғF+#[ FI<_: Xy<{=3õz>ph5tI#syОcyܰN4Kbe#)"p0V##0); 2,ܳ\aNwT$ ƌ+OKqPyX[C`/ I`i tt5b_N '(,_W y3@ A*Pi_~$8{A(1I#e`R;i$08X0yQp3 cc\. - 9ݱqt4gm,Xgd"+?uۡL" r4e mɥ|ɵ+T :[PccH= Z.R.&)sV2]Tf3MζpF%ރf Yֲ/RW GϠ;wJ-Tr&/\UL`$ۄÅEm/]!t 9&6s7GhcyiJ0}*GM#OLqWbnox0؄e%>X\\-O|c-qD9m[w+M_Lʕ,َ 圡aWlAb9dX=q ơ뭟vPoƂxGe!ɍ&< UXyE¥CLi}IӾ#.ԏ[c$ƾ9sAGaO8&^gSNv6-\<@!ZgFJQXjZvG3Xs2)mr=A$Z҄IPri_i|U;#S+7;-$ 3Xi-\Ģl0̍аʨ:"aLDrBAlHu]?ȸm]ه&jEb˸졣om\r(uR5@c6 .U1#$(".~[QBRN۱~W6ῖ/M\f\ƒ&!Sr|bDMMrR,:޴lˀxNbm* D~ٞ aL`4n: j4 mZq{Z(fM%&GiܯzFx|Qb 4A[ܑYPRT&*/¤1]-; u'%eᑻ"us T9ӒN \]DQ giphͣ߈GF#ކ.E6ďpJ!T=p M*J4KƹͬXwQu0il>rV*ĥwp/ 2m!24+g.o`%)J]vF4"cD#ע^lsٹ]~& Yt3ZMI/fs-evLU+U3s!S (Ob vC(%3="P aGg!jхw_nw2pMdu^cSI $}*7*Ik9JE_D񯋄PH$Fwc';\EȓapS]܌l K眨g4V gD'7La3zqLˈD1fJ˺s:O%'fjp՘ ~Ҫ]R%]< äYjݓ%Soa u%ITyJʬN0D qJwL sXQ$Z\Bڞ̸ HԳK&q$G]k32m ƒiD_W0I`l=$ v%J4C|<uůs@j4:)Kwαԍ&`0π/ kCbɥ(|"_;ְi碎癑fX9(% W91K1:cqs2e ev7}$\(C$@4c.Wa"@TO2w:gmW2uTsQ“ta5RfbVj,%3zTYs1) M1rvJɾI^^Tw>`[Gr"b^Ǣx ,wL!nNb%ŝt3[|Xqc prq58 6-3IE>їI!v\+č?= 00b~{-_fL9ㅅtM1?` C3n7%a ѕ,7'*>̮F\ulbw|mJ4`D|,upDOWaL4Ҟע?'2AlyQZJZ:~$;&(W O*iP:luV@ 25S_0HݧX[7>WG:o!Tx~b_S<(rqU]xHzgSX.҄磚!͉ReuVq鼲Z9Pܰ ރ`˭yzGXlٔ{EROҡ7M/Mc-ԨP >y5vrҰm;t;HڀqGgq(jCM DU—܍~8o; 8{T->(,Ȋq1Dc7K A"=[. {2 '?y3ggĺZGs;Ok}i8c=?+Ĺ]uH硑5f0ذ*>Yq_϶& De>v^ywPpw׻?|_׌su;nr|\Zip4;&#<x}.S"5(sʱDp bq?\ A}3ݲ !5sH5wљˌb:)ɠSz{iqD^r']/'3ӈ0*%GƾI5Zƪ C{:КG֞)+mc+FxzjD9.Q $GmOCt\:[8~S&4G )7޴6ew}h!/ܯics%"i, Tm`_{pGXZ$Y]x&ώ.^ڎ\ XJi=3@TF&0~@}k*.>E NBARԧBh7Wqw QfS„(Ǎib﫩+y`W8oD1蓵s*܋z ӹ3\[. DIEcPyxK|h)o%L- F /t6p@6qZm<:-R>nZsM΃ /QYX%B3im~Y>h9dtx]^QSv aUlFNʬho(JQ/x adGd=UJ90} kj FRD5:Oy.ˊsZTp(FIP[^[ X-Dm!CTHϟhR_I#J2e5v[ཀྵ+ *sH%+ں V ;q&d~HhHuOaGC]zNgEɸKU]-4kpieoFyPO/xR>4s78A.;uӌ}-)IϚG?wn|X"4af:ʀ_"xlsY&J*<1/.䤸biH)ræċ%[<`هǡG5Ajgrӈv9"4cϕƬWcL|V^V# KWU'[`1іLBۙ. Q@Jر\'.A.(a+>!JϠYe2v5aw&UiiTʄ[k8e,ڤ$) 1uK5$8 <.rA ݿB۽?-iw]Ҹm" *"0fcfU#6fh,PÁ> Kв8jS9_XbR-.ꢷ϶Ѓ2Ymn9]8C=[!s0?2O>xjHKƏ\ZƎHkfUpsX:wCV">TTvYU8 ȧc;-n U3R(iO07?JQeoG.$^&}|(u5"fJJU0Yeo,Cz0WA %0'=*<3z5H0J;a;ea5q_Dq M"mњ[_++p>=lp'/﹡b.`p3c`٬Lm $ *m6uX;ojSn2TPJdXec]Q<%ё DHgKk{j 1"BѨ[c LQ /vmr }Lk:YV #R&] HABc\)yy>]}=DR|}k]ךb|837(@*-7`*2EWfOg>x†Tf(EQaT=L7KH2tX-v,*y9/՗OrLiyq;ߗ_iѪy|Ì@y@颧Dz8}|. yL âm$Lǒ1(" ;uXxwCk>:!GT X`z$x1gKٕ2ӣmiMz2߅/eP>] EJ! ts۪UګsMZ]*LgnV$40O/]fR3"(3d h 6K]=[xb0n:#fzWkjW*{yꭋo惦9`I/Xvb 3Be[҂cv\@+i/\n{]nlJ_cP-3I4e,F;owGHƄv5###lqbԱe-6x 'kmLHxC<+ vm8kWn? ǕɉYoAT5!,lhE0{=uL{"W_kHfD\hxp>6ޜ`~@N=TTct{ЅМfeҜlPn%jCs?獳vSx,Ihl0>zH/׋תI!ݏ|ѝ -QfbנMpofXE}VV3Q-".P-C)s] HJx6 oG#˚zph?"z(g2}I, `)5A٤})ɰ+Ez6cf\rlN\y$ ;fyf^ԞY? 1Em!B3urAeD;Woap 掶t k U%g,u.-5#v<.’5-jjIˤD/+eiZfӾk202(U=,yfDAM3/q>=(8aY ߃(F>Eˣr%|pO @-_+Puge짯g^@f,vӷ;ׅg >.67 9]GfX7?,v :\t|ޣ9.,C\a{(iEɪ\\:LC[ƾJS*IIA;~dA cD3/s}w!v-8sz\U'rW ߷8c<NJYbQ8*kOjycRO:ͬOZ ^ _U{f4/ ]Ǝ%ڟU'f3l ۤYDP&!SQ> {T_mFdinrT2 u{~bٞJA_;Cso 0“ FUa*6F'=zCĚO`]rDbh\a,z;C|]KD! =u*/էITVxF4ٿpE> 9XL%߶ɗa 8xvF|Adj`B#fi QSCUl䉨WM9nq".tw- DUjHo"0=BJ~)t[Bכ}!hq8yp@$KsԆO+s>'yAarmzNӾN8F U@zp߃v6A/5P8i LnG7~٘凣f0lBwd4ʯKmpvI# #`  2`/%:>oպ5__t.]w|QEd|׃h;ȀHG4z@7ʼnn]V#DD[D~^νrKJQ3['ݹ躣GNCiL\%qQo߇־ ,Zg[j{(8ncQ94PGL >igF=^edpb)C]OGVYhGoYFw U. zL4Xj,{J:Ȳ3gQCCak+34d#l? ;VvE]s)MV~YJQ'}wϛfyYD9,aS5+YNmÆZ&L'vL7tRӴ+&^.g$]|qu8pck9U-=9;US5? 3ʪHSDbi^rʶ <~._6RG&Tu{k#vD `-}o.UW%0a9V5 I{+sL4L>_[Tnx;]iJ7P_cIv4׊zQBʖ ^Qv!vrl/լMly`˕2`la$z[aJ4]%W:qsŷϹE'BueSWmftZZ|yRa`F,v&U{#]SS̍Xh)nгO?9+* Y#%CB"hhR9)/N$KF%yG `&U'"%%d6k LS1|H̱xxw (O`P) rn-?nYՉS_<T3(6-1` RBV׋]~“qFS8MW,$L.ڱ8{V$O,1M^GD"':`}f=t^jiM^%=7~'9??UEM'Y~[]fh%q[2HAhLMp<;4]O{ITqtp&=K@f? Ў}ɱa`gyQQ%U :$iF6tK?[AyS^'q-þH,Zf䟠8~f6GJ6!P̹He%Iupvzn&JeM~[&k".ouG_a@)p|i\\s$8,r9LIO(vŞH5,L}JTx>5>͡3&I3gDj,&+\ ;\&o,r"aGó\Wlx1ٸZtNݛ L[͵^W O #v{z۸5)Nט_b7)W  )#}m'/՘HϚq Fb,΋/xeg)Z"fJ<Gz^[)ʯ*ٔ{lKwcsoX~Jl s_}BsweNQSzɫ8K+-ܸK,-L^ xRyH4\tW`E/}? ЪO#偑[/Jɤ\sPX-H@U +s/g5wUS@?1ST=DŽ 6WpG"=A>p@C2ѵ^Glrs0VA(}%3O C!Hc^ڸ0 WxE}VG q CƶnF_KopUtee۰^5wil4!z˫?,6}Mݦ15%޽eܬEL=|idvM :=;ˊ:nU0 ێht"qN&O]8G+'6qhL0&K.jukpb, 8^Nt!XePF6DnʓC|!!D+I?7q FDIH$H)q?Y/,p1Nz>Xpü7@!8MΟ-mĐ:MwCVJ_ew/j onrbǥ(T~;ri\zyu0) ۧV~9Dq-5,$e``wkmȔ~ZULZIo'{ b7Ov 70?8"$'>7M,]yºya)TWi7KXݰ[(;ULy"}(GO*C x|axQcXנοeHKtzG~פ jvUi/(eC X& N~\3^:2P)Iuk"+Y@L: JڑJ7.eb3Gk0=/ГǭzVZոLAǘ/EF4i1Uf4u y9T9Ğ/0]^$+P$=jbJ,CFK`\b8V3 0MIjẘق D֪7xh FZf*Hҵt@$Kl/^HiOl)ݕמl?uT㍚'/lӤ ,d hU܊4X>GP#a5DZ#T~3b df.M6#nyn**ggV@fFS>4.`:,l,4Ba8!%A b3>Eyyh9 }4TjuX΅^kow˧s&ۛu|z`6W]$7DZ٦J3VS`Dr5_SVIJZtU|EI.-+@gQ6bk<9{{P8-sKٶ3RNtoos_g&,xܻq,a3[< ofvs&8]_đuz(^>NYi)txD K6MM\PVFT֐0놲9#<ݟn3hdǏjB爀i([؎˔^HjF5SUd e<&bRTT9'gcf-g^J+SohPa4wrU9ܹ:62CL Pmx ^}}Cq 7nsq5hO7i%%Qr(->O=oXJ!SMgSeri0'D R@{*9!Tf=h%$s܁;9 fsc{F*Qpab`Bz/V A \erX <Djv13Xv{^Ȅŝ,5f;^半aktV*{&֣/y̷C礀Q2f-/pWM \Ʋ Z_iSAe iV!@`5ME1軞tz;>҂&~GY•(aEhfٿ@8|ʜQsN7O.>}twǐ1[BEOZ9B|1a ?4nJp?h2EfSk),m+x.KU*Aśʓ]l$ Abl43d~1f\U_E/T4#~ȷ$ nECfڽHd@[k6&ّd[>KBnrXa4~B1s$)M^ =t5ul#uA?hK/tE-0 'MB/8 }9rB$ TҀ7V:%H$tjz C.<()\%]3$48[&IiѾZyն-ۑ' Krx}K@TE7B9}lzQ&(s rk},!c<* +lUhQ6$eBݧ~{D ߡ;M*ݧ#$M~R W7񱚢Pw?m_n,R2ɟ#+8wjƷKY09p!>JX^1t4],=pee' ߱]7OvLna/7*g04ifà/&R`ªBPЭuوkr ܦ+9|#}FҐ]l ['M}iCx3y_-w+8er~v,H[)r#:K}.KEHnH\^o> `W72+#=ځgOOrNQ/8t U#yFfQav7?N߼RkyFZCO&] Jn2 :2Jnޮ2OxDŽ,כ He7~OClfZA4SY)R16Xnp#g"1֝y#Jٺu5cֱk?N~qP i0*A#}zz&GAV%Hme?5j^k䩂aH <2Gr P9k:Ћ}"B"X"PqD1l|%} ğSc#%tm \Y0yDqFKq9 z̯&~J2XS8#Xmn;އp9:`9_<u@6zW5ha9>r!=|w$+Vw{"lW͛-h9|V G[킞A& u5r%|c!cG.|T|dS~J^G&)M,!FifhM.|&y,g\ؔ*Oys?:'g\&0:iV\2lڒ=$,N (zXj큋kd;ѵ:r|;*ZŪlݷ82Y1} OmLY V_J؇|$)O+5$߼)`x j5f=P$JI6ư ,h_B6B 9FǑlivIOxS_iglX-~k=0>r]_<ßB)vm${6\!a(WMGyْ0y{(rИ}2~`JV3[c& xAPB 9;gCl)<`>LW Of9pCw1dD38ϋl^ܳk6kc0Ljgߡ0-ʌ`Nxzn)jhko'st"H?X +D7Q5j%Ԟhy$>V*#8{&IF Ari\ iܺGdY)C&=]x}pC6w1q13;48'n[YOR`fU/~n-`bwhO n+| ?O]`ʁ$pI&j@\"{*I%vVƀ &t,GQ띋ר_+Qj qL wSb%<4cULLv^umrjePh{V mQ )EW5)0]Ͳ5CU@['[)=5ƮfFBf$ PH4rzg9Bƈ%TPddrچJ@ڛؿSo>sV$[R |%3큏dCT&%91BQ.5Hn}GJID^~g&Q+ϟrg8g%) Hk`װ Ju$"#l>J{D+*ϸEVg1S(ڛG`)TJ@ Enq5:Ë(NS4Q*F{t$cheq&gl;Ӎ~.4$xerL OF ҅@i+(42]`y,l\`J{v=HN5#g®Ԯ N9I#I"D F4?lwL{L{B!Q@x[5x?ܡnJV\"2eQ`9"3Q呟8H Dm{2ܦoVJ;@m<%(y3nc p:`k XÕ+R;5BU]TύdnUڂ""LೳCE)3AY'3TT@gYMnUvo4yx{f` _HKD>!M45/Ћ$Zd?q2=`n^A;\wMFYc額&Vl6;j^ԳБ\ _mK'NȕhGK2Qdp`ڲg|VUn)z(*%mJHvB>َ;#u Ђ+/-3yQ/Q=| 7B/Rkic沯bڑϩ#@@!jS7:^*yCkUI̖%5vNvhr2 gL{Aj4:7$b*4ڍy-}z'pS0|[ˮ5u=Jpat`t h.8#]Ty ̰f4V>5lv4QkNFhoY)fzf2x֦CL}l?Z՗A`h wMҿoO|iPl'?..kPCMY)L? "P '3ZEpE#Tԇ (tl?Sz$,\܁{((کxJJ874rm6f6?$/f!V't (|-N~ټdƶus;/" ć W KzkWwɅuKn= EBҷ{\}PI){-X_Ֆ8"8WСQ(s b9n?TGLMΪ;fQHcL쁞D$ɶI覎[q6,9T:L(oRZ1>&ҵg6tUE~+1!l4ؑ3>:HmieDo[ &.44Jwqu P}RGɛ2ݰ7a34'ez͏pcQ[hnP'U}G3]:sB.W%dmLI_`hTm :4^5L) ee*}$,P/K k L>ӁF'&].j9j>Ohd^vvưqw/+Vk z:5G oGpou1WX)P=e#nߪÃk1Ϫ5 LgN Fk ɖx˶+g'*xu>muj\MQ } Ī .{Âĵ$ne%Ӥv7?ȼ-DCHٖZrH@RX4{Crmp71 α'ug2uʬp}uFAvkLs4 -n+$ -f1=Iw 89ޝX})D6?#`km@4-\)!XjXy>T{2rlm}WmO k[>(fKdtŸ75?YECj\O}?AyE$?N|xN>>0=wz7LյmqwiM]1P5 Tt!Kp7B&zi.= B.M==y ޖ͟m y(`΋IPqV\"eoAli%_:!46wi6ק؎zqW qlYۼ:X?D g6^r=8ѽ>NU@IX~2ˉT["7>ϸ(PvH#ϸ9[aN(q[\Q*va2[{ !ȧhPx2/:鳷ҚgK*Mcwz7%9s@T(ld%8S[nAT#n?xl!p֢F:khT&(ZA"X3u.3.P/]/9߹ք Q[@W>᥼b1F[WZ 8׷Bro? D_|'p?mڟnKY|$$]Qoe.:$Fz]Mfh@*?=H iu]S &wS9jI Ayި2b?S2(D溫N־zOl$~ٹ󸓲X8|@~ >^PxCHs * '<3fXw#ǑsK̾KYŹI*&+Y ՆW !FR<qj0Q2rikvc9%)ƗQ̇;꩞hkc}k;x|a]eF|\v;XOT`ySF*%<Kr?`2bs =-ń|#uߣ RZNa0jWI+v>n_V1)e Mwc ~b4ZdK7_,峍hrO6/ψM;\5w80Yd0ʉiצ03Yo4ޝHpƷ+8AkQ`2߻/"kmj 5RpʪI#|p ;/VQGB7P<^%aNj,!wI~vz{@}y(#: gcPmNc/ a8Z_Mvv汛+$y6H>P1C8fx@NJ)tw$5*eVݟC-8ȃ.Vʕ6~%F AeQ"õjzaRWnԢBf:A.i + :HGfߊ$󀧓FejĎ#×yvmʸ4ոf<w*B1[D3&VziohDu;͖ ]dQmN+qQ6V~Ɨʛ pS5XXHٕaRh.1mIhV :d LK.;?0Ϳ`fGE7*/ M ?YDWmiG+Q)wjJL!ܾ̻n~K^8EWb9ha|ħZEkֶş)r>3thr&ͷN"RItbws}AtcZsQ6>W*YEb1!Y0R;bN/B @9msV[J a_'bVy@PD x@UJ&d&Yb3iۋ-F"as3忓gͨ3S[rm&xV(8&%cΛt5\4'z-svDZ|S\?l߁$I1\ǯG4)Bh흈ԌϯeOa>,%9cptg3URS6VBH(u ֓(,T Z{PJ% "Gn]`GxvFcotBLס2)u6;[z(k4qӍGǩg70f*]o#t3eU@@DJ!Zcx~^Y/unt0i2tD`IvU?]1)k5dB5̴֓ͭܰ[?}%PM8q\Q4+}}='5Ď\6;֗z źRLr-!D1&D5’x;, ,aWrC$Tᔦm{B>`/b0] UNRǗghz$L nmVYǼCKxJ}*}rgR/$^`~$sھ2Vx:"H_ML \Bu:@'tC)Cnx,cXc5öt,R6'ZV<5cw`#Iu^JRAJKlWURHóT>AZR4K4gcZ,rnwN- xdD|nX-7PьŷʵPi/ 7Bf™Vf8R -щ%+a4Jdkwΰ9( 4MDvBc)kJ!~'ǯ (*?hCk[yx /?I$4SN,lŘcñ ׈8&4!'|›v[ed P|BM-'TKtMU!GȁncY1vHr^0u`̞7dwmr 4{\&qOvG好e~_e֘Hi l=tي8&_z}#xGxo{=-fw}4Ы@i5unP>K'Dk 2‘ PAo{N iⲜ$dFAw26Kv + V4:λ&mF$- =ǢO0r1'_+}=:nUf9!6LY U K?-NZhᶰ #^ӐI˗POK.a<;D*H6@Ӫ]qxd-W0^֑=}'E)#YO]ɥzocF͍xMk֡O0BxWR_h;_:6 0}O$+i)^xp7m p>K@ʀ8e> X_ȹ9ך[e | >ӽډz9hp<2ge^D*1כc%tZFRܐ=Tn\ؙ P gʠ-wVR=zڀqc*_9eZn0' ol?&ՅEnq a4!HX~ ibE_%UR"Gd0 qF?J(3*3mP'纬q2}}B#gD?c|`']XAlDA4ɻ6ZhnE m4`GQ45)"0C1*@aL-2N{_.O%²γMW2a"g#,q|$!pta9ŗ3poKU~d"GwJSXd#> 4-iF)\ hqʬ]|kKl56D:5匽@mHhLySzx6׿@_+#F"rj{GXc½& dQ)DHf 'TkAͯ%7-j:R}P'Ҟ8}hz}#y?ៀ!Mq"1fΏDHuI9}xt0[R\MEVB| GҞ01jc iDi(1+PH0FH؁y`uFZ؜[_ z%!>u߯5j@UYK`% ?v=6M.C}̎A͑5 @{)w$WF&kNϥהh'\3q׌ -LwEx{Vݷͮ!NڤMQf프O,D3"KDC]0!}jtC=.U;Rə'#Qm:{t3M/A ͤՠ>ZT|6"TYKJ:d^4Ew|20%G5 JH5 sFtVNdwDi'(d;@O{#xJCn2;jӮ6['Ueq+4&j_3YOHME+eycOa.{?L,|į|(E_3ʽ D2&]՗&zaYrKi e gWjuq- V$AEkd)ܫkjU0%Gz1+ڢaRӱ+Wh$DҼi fvk@A7NtoAдQuAGR£Z픣?A|ة /awN"(4R8eߋlEͷWgbs2 E͆,=idboQ$f&$Wd3LL^fvesO4Yig?rdnqHbA\'f&zߓ=N@lĖj8fClbpp{,(DW׵>^L%}0򙆊ȫ-”H)[riF{o/F?RTo̩]cL~@)^,X<R;$t  5=AuߪEj4-"͜K忱Lե+43_tT!~Tߘ$-A٠YbBeg9%rYdx>4BE~M{X";?OI(Gݼ]CyGmWf\.f[PWM74#!2GUG!|O8+s /mC݌%ǚ,e|])m"[~3{.yAyP$G:xs+"$Sa0<:d274HDfO|~3UTS d3e"ąɛB5 `f+f:"zdZA`ܪP!@Fا{/߁SUDaiK}<ª P )x=t7N2ҧ bFJͅwFUK5|VMJ>U WA#GZXfz{8x_ϜP"{d6mַ]K%Pan1v d ɢ8}04k* \S[̶~r5g;Kbcy،qvO% +KM>Kk\>Ю?4'-|9'᳎6{)KcL 1-)ۅLʱMvB B"g351 %ŊѭUW ҶN͠)#: :PU36jr(fȐ(-1JEV4 t8 oLZ> d[ZDujIKy÷6n?m$ĶiG,LJ*g_/n6f3՜t{>yLۃ_g=HXH{єQk:* jE]U6 0"2O*CtUH^;߄**D垸0e͂i Mp8woFU^16_- >rF#3K"=Zd%j##A~9mu^g v1_9iP$ 5MuR W,#E6}N_ ǟ-Y^ƞaGUm( OoNq,+DlZp6x}-RUuf}tz =C_>e۶hC[#}5KՕj^`2G7 G !1@hg|CZ̊6;/4ED.8^WxqU%- [ 1Z} #8sUTS}H~p'Nubx~pfeuөՋ%AMZ a ,j[n}5[X5Jҋ^$<߅j\Dg` %:@ͧ[/3>vLL*n/&0 ̀9zeN*nh*I ׏TaYUtQovm ϕ+uH_Kz>!M9 k2zv,"]W({T-}Zd_ x7\ [ +UQ/``AHs:Nr?*23;Br@{:kxԣw'm\U-则4x'vgNJ1Vdy;>OHKܨ?ĜLPcŹ*Ҕ)I+ ;.tI. RJG , Ohedp^, IrnJEfD"lYzI橜gRWQоe@c7;Tt-"Aԉ[8~W+qsS$ =赖El/]%^c酉 6 d^7. u_O:?W}P@U=kL9 gED< ,XVV Ʉ{c:^2KePo/"srq,׎fVCbR tWL' ݞb'hM1p)S֍[4Wɐk{2Lnbz|FSY>. sp؁rmԅ*qqo9>$Yw Rj 4t1 ea~P$2ߣ!|gJ. ! Z!7=L7#Q]ΖPeI0Vj9TCQ^X/yrۀ/mfМ’7,‘Se^x(Ȉ| ²4|(Ŷ#1-&}@m r} ;{qBq#tq"JEkIZ٘M[^`r5H 83%k,ʤTW0de0=m%T٬d16{y-3")z{ЕG/qOaiO ίt4]cVL+;E PQ٫p1;3P^4IНc]lZ<3]0wxO:7gX횉_nmE2\;n{:֏3w24sղ qC*X"Ux5|jrEŠ.qJJlk͕jةb+CkBYZR"J<=nh?{ヸdfgy8X* Y[) ɤ(_g~ue<$)Яp6Ui >pC¢.KFXa@˧6i&9q)_k~;) vaվR7[ȱUsfK2J-tuB# {{'Y^43WtoIͺv-%20^Qw,Ã$fD+1<1Lz*j&"Lu=hR/`FKv1 ~{ΗTM Ҷ]n=-v4 KDT~'\pdaa%4DG6yDY=*ifmɳO^!w-\|-biW'(ዬ? |J'ָmclU O);|WKjDwˌ{jpelB=<|.O Odi(sL؀ۏoYRxNL jnzCg۪wb=h6Nn!ٞl.+h9c$Z) OfY 3h9+. 0GO!xUy_z3&_{rOx~ mMZ.a\Pvq̬&6|NƎ:\{u9Hc{#u5D& ӾNV6)@G3ȕRDDžK@"s _f0.K7[djBGRV Rƌ~VL:OHnayA(lFac#"O#%@j)a%XMWpRw0zŏ> 2vBpU'ҫTDq/KEE9%*>cW[@ӯ=qm58'ٛ6&:w hw]S8fAAZ9q"_ vwҍ CQӨԺ `;RFtZϪ@wad漆J0*SǴ HaHg^ dwzEhg#.֖R e'&P>wMټr,5~э$VȲ*ȑVHCTdRcli\\Pza^d& CMJ-}\r&(TEp-zvL?{(¤ 3DW>z9J:A޿G{P߭SlLܑۢ'@/k(\9z8p85;iC<ly*S~ SYdt}Ԧyɫa`; Cѥt9a#il_r]V[8걭9OU^iԶ(-b齄I $tuV1J] ЉVfMPp`)7 6)ڵ2q=Z2y 3rV褅1*1 }Lr+*}=ɶLzcrJBB$.'! $@Pd*&s~pe:/HGw<Ɋ GwmN$fz#NW^-aR`-gub((y=ys2[_ ~:JRqYȐ"A[i''kfg]8֮Kh ?`!2*2SNI2b/<Mq\%>oQ W%O olSٙm?%,(88dv{ ޴d ^.*T(n؀l3w +Ao!(|C 0>~5o}U*%CNᤈpX%xi͐8݁|% Kb!dBo%+8wՂu%ҩJ1K )ޤ@±,pqC>,3~0l{y3=*A*]Q["}e?#R^< b3E͐q aAK+ >im_VJ\4Tɍ9'509ibFN nTB4u4 fJaSntR'ߨF?EQaYE(tqn10 ur6QPH'[ֱK{߽VI\URO{S[広q+D L a 1ƚ.45m~VK@y|`Sn:*F{&, GֳIn\O+IG_fg[=$a"_nΦf4͘(c["Z 4nU*a~x}tɂNq9#s04vWi!{`&'vWgm=JiE R hYβq<DBaG *<#ٿm$GTnI(-z˼B,݄m{p>1xױ|@ΰ3UUճjxNa]Zo 25bvEO5z_xB8U'cZ8ΎML!byK]!>9 #V/XK*rc v#[\x(75ܝѿ$%Wj6ȣRn'ITՁI9OC,ƍM@c+B&GBB ÅpENm|F*CCJYֈ$! ª'שt4) ѴzMz %ǁ3(nC=:8M]Qz_g}} F]KQnISV"dO%O%T{ImQAS_t^}~ɰ8ߘ- y%"?0ˁ '4P/ه,%w=.6$T‡Gs$BXp喭2"5'xzx?l>o ToiКwgikWԎxȖ20r%g"( o.fe T}~{lqp]05t|AVR6k_zYZ(ANX06 sA*G:VI6Z{}2xP#&k(}N;AmMݩF!(7TqA=9|D;0UDu͈ɏtg30ZxM?bnWN߄9ӭ9^@xfuH+'""^<|xaDGT+ǿD9Û @ҞeѱCw2}wvi^ WXmClFf9KOZ";f0O-W;݆AfTȪ?2 we+,U&f-يJ[d+]V|@X'ͿVU}c6C =]<4QWtI^)["[0C,Lbǁch&Y'zbfRijIZwG )Nx_H)*zN+S=O-mȈk饽 +-? 4 m#GNA+0t(N^K_4vF۷i&odf8Bȱ[(*l=TG/jT1"61A ?(fn$RPVXFnY nHn.,` *<(7'UU 2v嬶fƾjɡ3 h"ߝَ]n)7ijȊ̦/]-(I:1fBo<_(9ϯCAB7UC2̖d8.NŒތ[ h~d{K[qzSΤ\.'D|h(?mowk[Z, .1}>Esrm+,g | vVOc#:g0]x=&EI't>W Cgo;cO9()-#b}3epGJnxkX yD2oI-#1'MըX Tb-z=G^{Q`=cxYdZr T5,%?y,JV(o!tvz IT[=FƬƮM^GTYshO q!fe=Di 'K?AbCx\88O٧֯zΐnLjews ݙSZQWQߍMcXLp+y&0Eߠ< V9o?.PEI#C%)cH Qi]e>{ޅfEҐϕNCH-NFWgI oC2EF?nӔ)9a|՘G1 |cE'8?ٌurjϮ(eA4nJJMAz~##[ln( pabxƱ{Ƃ#y qQ4Љ:0&υς(vd |ذ<ⴱV~u䝭:o DOWc1Mѐ.u۩]aНn3*p(GU3e<J rnu1ϯ=v, M5,:~`%:ۍ՛z>,X DHe6SE"ZN+y-k{>חQRVCAŗQKdZݹZG$!)٧Mv{mG1Y+l4.Ÿ{$SJR嗻#L4k{,ʞ9 (E6[ZVR:KoІX4~GFfkDޤ#E9 ,0B`qeecNmDZAx;rՏ9<(YiL O׀=l<קzrahw'v>WJuxG]z̫]O5N} nyv7Mv)Xl묻 \t@ &%@945ӓ2?|aii+6KOm Wgכgه~o28PYĦ`$V&11!I>*߿p|%{tZNDVt ӸElWp$`xu- ĢȄ{X>w"%XQG4$ҋy3)>6|G=J:鰭8x0Tz- d)G:DqDTg%yqi_1`b$ve@vArkbI@r{1f4fjKZ:5+h!ٽ^M{:+/Gz*VP!]6z'f6q~92u4ݱ.[.S96݉eƕ |B;A[vT({{yp"끵OM(һPM`(GkDUv*(n]ĤXDÑlq| 7=-Ke)Ϫ\ Cӳw3H^=1YK:f\frQo"T̟`K]@Ĕ\p;ܻS"8a⟢D[==%+9W% \R3]𶘳d"-@#9ٔ}5X㻄!r?&"mZfBU& ae7'qY DZnֹ{7#S!U\7i3R3ylָ| u$"Gn\RW/$`YH+8s9 gF1۹q攤Qpᒌb)-VѾsaxI)Byv{/Dy&3rFxM?D*ki?HG: E_{Im# du2*ؾ]%PU$xz'l<  C*bM3֜Mz!@8HSSBBc}x/Fؓ0?9>CqtAT^~׹3v]lC xDrF~xS̘\o2KIrt90!Q%a{(CV_s|džVPƋOW*[ 1}󰓰û=ӾnR)z ]`f`:{geWSpYBIWL\ xcD:u~Nk9POc.$;і bm 6" _ ɨ / Ͽq"%ݏ ٜ+C-&քs}sچV%si}x%P.&n߷\mg@[r-^; DvRd*kv[,emOGjt0<crNV>u)\lvz78Dk!=HCyGZҐ}QZWχZymhNFѹ'f@NNrOxc|/Tj?pJ,=ѹ^eQ-/F+::kF9JѦ,rd1e83#ȋGG ')9C=6.u%PGc-'t?xYyN)2> D-c[ʽ)&y]j߯URzrܠ# ]KAKtiAȏҧadHoh}8{TL;ci׮Mj)bR Tdzh)WƮqFHQ1{,ACR }&C3_O(d=i) G\v1& [Q/[{CiCmIWU.$~;EW-5;s'A2?- ؤ0͑.ۼXr-~(ju!̬8 :7k`J|PSEmȨ &Ygmא͉U.FH^3⑅| 6Cgp;'MAhp\UR keFty[F\Wb,|ń9|k~9RsÉyBw[CmJYG!^%zС{qbdV4b4$wJ8v&t4"*-[('0< 0D^%XR]4=~1S{S[1DetQ(N?[$m%TZ`dF M!uW] QVGyesP~_R2nAlwIE}0>Jg~ErRcXfrR2eDΦ^V0Orf>p٢.8BQzT+OpTyF KYWK܀ q 7qp{C*#l'T]%X]߸/ҏPKܣ@5@Q $]DT"daUx>c$Fƕ&Rƒ ieC[RGg/֘} Ę۱Aڊ[:4%i p0Kb_?TiAEDCKP`}1]='?  zpfOT!S?榅tc"^X\z-gF `.+gaDk µO2Ƥ@42}Bg|F: cluZ  SHO?3nzT\.bK!5ŞNڞX׺UD ݶ|#D{`^K-i"Ayo 2Ѯ}%| QYlIy>GѻmJ]r74>SEw?{J53Wk[Fyg Es}kڤ߽LMpULTh_'z<ǟ\矧^[TJy}Ŭ>(NCu )ghqYZ0_]lSž7;+} V_}QMC"wf1hș;HSg̲Iq%LJR"X|Y9TFJ_*nnt &NaB ;A7iWqr-Gil/:g;iҬ7ﭲF[5tF 5coC|Ć;c$]W&5i]]79XqV(QדL3@&/00REr~:e`N?bH>;l̚BzK]^O 4pYiSU,Kk:-Mѻkj}|:z*f+0nvT5I5NknK$5ClN[ -!v5ހ6VӸz[^JKPJ\ld"("} L=utE>v n"KEGb-Bxqg}ZEU*Jف7]w%LeNLh0(e6|ߧwV߿@m[Sc0#l{&#|^ 6'SɿߌnLs.ڃriޞOAbhVl.>'yRI$ч &cbPvr̿;\h1fG#U) 1II'\Z{ui`xm(:xǚl:L-F`TnnD?nێu~=7Chtj3[=,r :ٜ'&b Y~CZ/ŀe#H `y@_ʋ=cm;o_|yMr #A#eh /XL޵;nZu6uh`*UXY:f]bp nɃ{CA91{n!f.ji~ 7o#U'03xrckM3TD+3&0EB )aaPؠ60:P͡Z\Cz"Xg+(`>nڱ&n l[g_Aπ8LF/O8cQ!pJ#/}+q*Vn`Bokxymr/>&d)xޤw[.dM|a^'#|-_G iNŜbph:gO-Ƴ%ujs4n l03迺 ^Z >J `JF}{b:e񧽇'_vb+x|%|vPHGoW+UlQ xM5 )XqL|kf'Ub'C[ Ug^ufs#dW 4_/W~42eS1u52ocF0ءCH"Bu[Dᅰ,v G)3%EuL:Bj@^7dFۓ%RMĪ.m d/$jNĩ6[]i[rgR{v3,ݢ|HeЂJh_r at^(JZ T͆n9^J'%IiHV7+7BXΗtRJ4GZ JN$SpO( =?ft'閞:6/^N - 9XfI7nw\g"AUW߂+HZ:cf4 '+5&~z>?l]9Subs1C-Ez#֒j7Q>54eHQ-?XVQm _qs:S\eX8 _! ly|A#`RY'32"&PZx0@sIy~xexG°A)7b_]?2IZN] x.ٴBq pN.|uDn^\># a ԧv}ΒCã8:@²Pprnĵr G| (k€-Q?ub509De`d?f]U_}' 7+eFor^6L3(/ZGY|Qo{ű%+^f'!Z3V.Hn*xj*#HC'Ih%oRePW{pa_ ¶Eԏe4?U "b;{V D;w2Zsv=U.͜Gn%+4qz=s!5@H=ds&G,mw.zpG(0y x%cb6-Ea^=>m>ҲTmH/\K#}/@<(xR<"r˅S}&mҥ'i7)T>@- ]$eEQx-B*_+;RI{FXJ 6 hduެ,-cy+Ѡ1f盵ow< U([l*2?LJW|pqdȗ͛A((-.*|4)אL&$&K6m2UPC`p15&}xθw<˴5O_4A Oh ƞMHs?H r>sn>mwFy6sR2ũn,OSҞ*c oRxsG -'0Dl̵GEp0mu=l`}*T5@7l@Zbrc:t8C}7kHr bԕod̪`rǰ$o=©J/ҫye_<IbWO"zf`7'% GKpGr+ _ˬ/=!)U=ᔕ;/4l QWz3zJ+v߅D5Oq;qF3TO<+:n?OBV =bza< {"D/@_P(^aO )!X"dnjssf8iprM_5,H" s1k=o S OhWU@$CsF:2e#:~eB҂*toFƯa㦭&AtL2r)ҟgS| hB.U*٦Rzoz!Uj*ETvXM;`lmpYձ-hOJΒXWwuE;BwRejk@ k u:ƋPjDnVZYoN `+8k{!;0k chMD=-SVЪZt=ņk q#e9UZhp宀gZ;"D՝ǁPl (X؇4eѝTzDPF͐i3~@bԔkhnvs3K pq^֔r,qV[p/.L<xGL uYwݛód .SЉKaoS{O|V1q:hbcyB$'O I ;WF^`ݲ`t |>, e 66cCleyO蛣}\Ў10$7K!;Зmi_1 lWHIf kb:euwP˼H{$GC\`1u 3샳D>Q h 0n AJ΀PjĦ? C 1 ֿg`N 0Ы"xzuc:3g{]49n߆^PÖʲ%4 q.vQ zDT3~Pj¨^O d*q/kXS\Rz9VFtFa3l(&dygQy{$Eݷ[dMYYt=ӭS,5D6k`\M\`.5I~,4 O:-ԪUp0 -^(s^đ0X9ۛКy;gQ4T;3~r"nv1C#S#/mq8O5w4sD1=[]?-ޠE3&qo8Նq(Np(h"eԷQ1%`iŽ~#&eY+NJ .!1o<1HNsrJs4<։AʉGs#nP# !iO"SI㚵"Nɖ׹Xr*=Fvu#naG/ /"܄i H_^?L4g(OqÁBrx!s(9g,6=o.ePd9 :oTevo[7Ò%Y%ϙ)8}oyEfLR(ס\~rSTdDgPyܲn6H(a4EvQV~юΠEs: $3072) }}c=U@YT2^0QeP3PE^.܆:O¢w\Xj5 "0Eʧޯ=!f\|1AIoz]||c\^_@c3a˦ߊyI+(u OѤ3xjUFMj5d5؊nt"whWrP46n; 6f;x ]pNLv'G*e`9 MkwVZqcbSC4gmssx-,#v XkkR_h b5?2 ;0#f8SM*C6/eh^Dٳng csق. >[mEE᠀Ι-'׷I~>MdqlJH Y>'@ vm~s+}ݎ #ൗvP'Iy󔐺K@>Jt\s*3ep46(^7jʇڄӐ"jY,DOӭ0Jg-ZB2ɳ ;vdÍ f dZeG![%~N _1Dm#5EWS}K#>Ay{1$"BKJ M[ տNq8$׽ "ʇ3ӡ*p2JIЊF&yk)Zh/H mOa;FZDBUV3ԒtמWH%OaO"I2yDSSe :2ij%Ĥs*=L[Rlߗɬe-۹d%nXvx8 1YzaHe ?m^p<;X?uw՝J%$4,} !7.Mh#xub}&{$#sWJDD+ITfQo:&n;d^Ӱش~^N}>V5w1DM%nDYa.鸯5#ѱc|ora_/hFN)')VqQWN̻;ҮMV)b\4ogWT~ӈK[>R uTwJSW3lHfΪOnqysU8b aV  [Oh-|>frݴ1O2`Ti- 9ù_Yq.^&8zI^lgWyٛX}6PO2 ƩE~« DR-`܃>L oh FC6T$JRXy>!:Dv`IJ2-aLQTCe3K)Fq^Jdx7?MQƢ'Y+q>m9HG}}8=PuԔ?+OD.TGBJn: l|0m3_tdp8GЈ- {1`:wvܳVJ$wg4erқM pq &rJSS![t)6;蟺i? Y!6CH9e*煳x^a%a#RtfcZ!F Z P̛C )OlG+j;{}QCrCNX*B"|_-zxe?e _"r4Q!Lf%i^ZXcN#s%1=dٺeWcO ܦ4OXW%Cߺ4Q2^\; ;%'sžS'ڤsAQk`ĞG>spH&Fm{Î t4@ctĨDܢv!tp>jX@M 1T} m #mh=;uJ|G3܋+sphtْ`]LoL{WtnVR/I8Zݶi[|g`_ǕK?ȿ9(b$&mjphcßb3u蒽nޗl_E}v]w~hbMLǽgxJ!zJ39F‘hCi#;:۩ lZcWDl~\ƽ+Z`~vSJqQ)?Gǚ~UFr+ʦ⍋^3 |AGMWRV~Y'q<.ӊ'oÃG,jsSV8`8)D˚/Ũx}y i,=nb@Qd-gV^ |뜂u,Xj?oƸa0XyI0VdpίIHuؕnMH1R0l+T :2u):p"ZQ ͌1T/mY2. FW(ԇ+LgUZZzZgMg+9iVgчF-KLA5˗W[ ̔ҍ૧OLjvI::˝l /Ej%HX֠/.8_¨&8F(WY^?Onɛ>0g^ʒ6lzD(s#gDxD3VOP>-a[Q'(Cl oPg5f6&x[ܕ-@ Pwyg^+ * ;+v< \>m~kJUĥ(,cP&~ \j˹"}ҤKT% N#4ԫ85GDRpMG/OZ`jcC!6*%7G|$ZBR;}bcj ꓐLj( ~5z gYib+-/ju=2|ޑi(1HJuRTìGݯ2QVuV7s +12DZPlp\"5sxl{F7J际5Qi Ԑ#}#d Re %p.f܌T>F"z",eMV04A*-5خL$OW@ öQ" 6NI]gdw$d ja351P)[F!{]&$&ǹ6#:_cvyF/MeoBT԰ -!L_ܾF˲VOfZ d"̪Fc@TlK=@@֡xuiy{`Dܐ(HjmxQ*la~{0Sdo\'`*>r!UDudj2WZ=PXR3]7%zKc^:ھ2hI7[!GwnU=}M\ոpM3B×QXwKZetqf-J`|q 3A䝗l)i'z2@LL[zL2}','Tq%Q-%-Wd1,1͗qpfR&C߽_pE)xB~UZvPA}{N͔AQ9b 0$ԢOmMm9۝J~K8hgM'xMK-mH~W6wzʝ1\׭konR9k={TnULO`R} ̲ (JǨ$(eO*!gW/P-Z2ЈmNFÑQPM@M-A:1w]Br!k;&KvA}+5K1k^#5)(0_ OC?]vEM_4t]5_ ֐V9n4#Kr ~ǮMcp2yejt *ZxN&AT>,3lCU9Mby%)h`qpCUX&#ə9 =xF %H:[.OSi/nф3"17`nd3nN}uxUVRoOy J#iBdjԇPgBO6eNAK5$?1%)}u a8=ņ Nuu: &.l_\{˝rbzmgz88_$.tg)L^7z`jу[R:ROT?a҂CAJ\nkniʂI(PUY + /'7uŶ륽*dЀl}@Bϲ1jNGiԾMk'xvN t\ ؜eԵA;%C-:WL:݂wA}.nEb#7C\z j/o:bZ)U80DOd3WEFu!*vuFJΌNB^EV|L+\5tRHηĭnPu,{K%- 7#Œ} m  ⺽oh]pF8dJGIy$s~_Í4U$,PJܒ]Aڠkd<9vK_ȓFf=їp{hČrFF>KFkхTCTK']2Zu7YɴB4rc^x[KͮnP?gl/Ak[;vg[3qHӢy/}"rzLl)M²Ŵ)/T6Zy$`h8Z[Mm]I,:uH[V%xQ <8CĹofzCFއɺmdYl_xm;%#hnq"4` _u =xGg8B_:ByPj4˞-U4`Qo-iҶ@m#n1ku4^`#[B!? Aw]P 8.[jJc7pkv3y]/e%|Oãk g[[/;1[}N"ZnM$lj#]:?Kj6G:DZyR5;O uy2&$*!CUr%{ |k;EF?|7$x/rg3; i3N_#nH~Aڮ^H>-C}4. I `|.ڰ΍}?fkJ.T^4524 v5U[pn|A%fQB6GԌΗy<늷'B4Pܒ 9P~W/E'^vdrd .;MGgS>S;QΰH:ݲhuJ+Ň \b٨/ M"䗡|9ủhuתieye-uiT<=D {9NHO6 lt&on]jN7Ҁ9_ȕy^ ůn|F%6Mn]Z3d7AbV-6uĶ𼆪cOfgIJ)(X?_cx|=Ѹya"A/]KU4~)/Gu9/0‚ԭVRB YWT|Ӧuⷯ]p <?]%8SI!Ա Zɓ^V-lPd,?w:2*P\47iFU)PSZcV2 ɏ(9"a|W+?",o;0f Y]h:s1ܽ"_I4MΏgb}zϯ)6. ^8E/rq b iSL9#Z.As7ֲ<=# D=u٤>5;7f)#V"X.F'XJP9Wh,XWȼ"jAd #R97ՅM sċ6T tqxީcc+^q3z+fDR<<M>.?\.MegI%W#g& l \1Eu7wC^Ey-Vm„ ab~[J'/: S?!i?F6Ņبzt\s < y%1rxI+.1NW\ʆV:U`5Xl-04C1vo*il0oE^!~m^Z\r4W:89Т*"Lhyͥ4]Vz:smջuYC{̓ϙʏ{E 琭~ݵ{.|$+Hc-\uƴvk_#h:0@7: i5K_?eG͸7cD,mV C}֤P y럗}P&` Y 5P`Lp6|LF5dy` [Y/KGjq/F\cik`*CQ|GkO)bth1ܳW[6=q Q*:¿5t&\ mӁi^JL3S#$4nYs~t ^L5z#trTJ% KEڳL*),qFZ ubo`REYT 2k@t|jtŻj<#R-cڕ&u՛b2ϕF?7Z=g΅!Df(:V@;űiL_mWOM#tҍ#l G׾55Q*wT3N5Wp+pepsICSt..>nvgNV"Ber'!M>k%=%qɊ3鷼#M,\ oYmJUb,He șu%$n!5))5jϊ[J+KH梜j:GNkZ[.b9w}T'P<; %jIZ2E )k? F}D̰g>i$Z\Ƈ=p*!Q> ɕg<J2Asu+9AF8̵b5YK'9PDSvŧm^;cNׁ:w*9C6Az ;ߎD=-iE2 M8qMU&oP hꢢ3O^5#$>^RFm^N* nۺ+{lMRz9q`fÛu͘SѵGwڏs. cV/ȗ,3'8LRF)-8 [I Dž  '_="34qC KQ݀BFm3E1Fga8vX (-: zEO:u8b7tZ`/5mZַLH&pWeIK5%INޱ)r&!&>QJ7EmĈk( '͹:ysW}7hy11frAd0߆pED7 G `KoSG(#<3s,L7xXڍ-_(Kđ Jt\4a $!}ڤp)k ) u8 _MfV!x/K)7uk!ocBǕT%iPW",oFL! Z31 )LaPǝX2i"X^7arEW'$x`S _*/Kkȣ'!eŴm(ʪWpyx5QVdOJB.{ Keb16}~4Cr8@1tD{:Wh&ȫ޶72GEI04Oה^crJ26V4["S<vGNZ%D|>QYcg"^Ywo2g j*(ާgPq)A ؋4/2CiZZqY= iT̠ތI&'tI$<om8]9Mˆ0tl1R }cs1OS"Wd`M;Ve,i~K0϶8&Y;}*֦e4 ѓ)z`ҢV Z?򎇐@&:(joDZ:?d RQwыQ8dl5l @ ~W{8PQl ZqiP}dP ܙIA$_rL@ܮAe%pWRC;uyXCJYq9d,g3 dAkCu(0y /?)VD#>@q4sԽmJRq-Ӯy'OvTrg.{܁:EB`F- _p Ѻ&T&|--l1؀Q.B֗iu=n7h(7R *,JCN|bBMiϐGZlZ\~T.`fW_0ފ>~wjhv7Pép?z)-}E|rM~PZ<STdi4h&TǭehK\g!5 4>O/cKTm>ɩ ђ)=/G7qK%{ή&Zlh/Kי@tgNS 5O0IpsOuTd9{&.Ccs̜IPRh cq!VJj%݈x*ղ'javը\׫1C>]OcFӤqƔ.ʊm3HG!nW> OKrav6G셦S\&gyA Zf/˗gɒN| H˘QٕBХ @qeeJ?{o^ i}BC?%(e_r2mAzHvs3L8dOeNU[6 O4a@#` )TXwF2yc %aGٷI>L:\lYc,IW̡:Jt|k|t q¹l5pVof5Hg #["242G\gn,j'4E1.Zd3:e*cpD_@n'MM&ԡ}Gg%Q6:dޙCnj׹0 2n!QEԄMnqeXI>r; OHG]p !#;3KG'{뻷,iK &w ;qvKC8so:/5LDH%6@by$̤[9?`^vnJԠ_Ai0ebJeJ`afn' m?UB V1މIϚ a9L1z$ osL=Ҿ$$`&3ML.PgebA#X+"NDJh80A 7iتTHB?dmԹt{Ĺ kiT{"/Y™|(j 8 FYHuDkAӗ]) 8?'[Gok 'Qs}">V2JSML)qv nah9154i2cI|޿_IKeV OF>E?nfBK?煝udQ/|BزTt 8<$W}mZlUe7M3LPȡ;EJ|rW2 gU"J[baz&@(PAi ja >R;=@0֨^e(\vڻLDUCޞknFzP ~X Oj<e%?&T滟tIk2 #Ώ3b- 8$ܫg+f+1KFZZؒ5 !.DZSq$,%}KnZ&Ӵ>z)bMe8X_G2`Peoz^V|5j3 %2u؈ #z [W/,cc3P5{J-]j!@[q>赌?s=_KAa4Pݲ"sN^~:Oi:gOoٞwD,7bw0KhSH\ܩ: ^ZIcw W ^ Ek E'94 NlfC&)ɔm<^yyBpo,Mw:5`Zr"B<25W{nWjw۟7fj! sh03>s_,$Y8S,s^׵¹Y6q=IgyPZ $2I?9 IT;RBED 21λdF ~gQJqmx1+6HTB"_*oa0z'Ό3#cϹB9AVЁ*XZll~gT[TMջiKO='mm*UIpC[$hkOSļHtZ=>ZrB#b/F}zf_|BNN43hbC?UTK}բ"2?˷0tm8Zsg Ts,O꫼$ J3 f_Xp2k}"]|siDpFT^|q[H"#-UC>M߉?d0}ۜB?lkHjvYmJV=38h'f^30 E<\=$Buj7_t2nN_ߣLMZ Ls%@ں]i1l{J? ` b.kc3Ud5n M3Ҡ=dă_fAuiOznN+E-OC{͋޿2G0y=Ջ0p!DUxZ=RNDmrw 0艦׫Go{_!ѠΔˡXqc6 WwԨVÌSaj L8Z` kcUǢ6)1h(Cao ŸڵtZrθ3 .SAr$I9z 28H?hiS.\z C$9|LzR$XDnzDFvV2KXb\#/ꧯr"ԁBc@U ~_߻W8ϐ9#(٩v'*PO&oc+-ߦuY'~C{MbIO bH^&u;P.yU}bubX'z\Nm9AiK_jMyѿʋPQww:;Ƞun~}s)1tV%b$ˤYߗX^ (k}־c9ǻ7_!["X YܫZ|'V-'nQ0EFr`?#݀vrnXϹ&jk .-hg|7&GcỰΰݤ`M PdI{P4R[ʆ>7&avO͉ $?^zWoթo=+y-*s`?}F]SDrcwc6ɻ̿ vԧ(f| x/6'3ß9N{G#ŤMq 0I`1nl[m׹'VQoȤ}W8G>ѐwa6"&yKYl`PQ JE}=_wtsNQrkFiuW:| b4T/ʉ,c$N P|TfBE/X{MTÁTs! fCJ%mB\yU{ǴP(ƗV5w@+m^ɀʇ$1-Ohk`j$ET!E_IdPN^gmxB]-Ьd6`LTPK5V6﹇oFP2Wuȃ%Hݚ:(wGC1έf3E[¥v@~cYlc 5{(\k8ah s0"tw(o5@9rX>8 fj_sĜMލ&ۣ'u[4r.e%s8|z_B/fI%|HD &ӏ)ݬшP3V7>5#.`BD%!0-tUġͅBKvJ1w4Dw*[&Y܄}@`eiDv V|.JdD.V%7Z4 {O,-c-ŽQ츘 XV94'Źt`'(fSBfu"z-,7DR rY`MOE" Xi )KJ7ryl}]`&qH%]Ì*іK痣BiBILHه]Ih&%[nUSDM >hq83[9<3ٶkȔ/n !X#XƁ)/Қy*Mz]_G x3;\, @ej99,kq90 [6{ D4kmLf/|gk˹ HF)ضK娶(JA*>TNs+A$%o1F6$S=ivBt" cBJ>p4r0V,]LV dUÛJ&aޣfX{Ľ$}SYjD" pV-'h8MxѠ Rq]d@ &誹uVy"%1@0"4h-j 6Iv0Yx PeK*a69,ѦWg?ކ9Y\v ߂@MP1'vWSzE˙tqn$Pt@wΪ~p{XIEu߳spdvJSl\uyT.z0'9q錚mյB.J:rxՆNERfr3Á@뀅3YTcٙy9`Iǔ?!>`FP!V1EʷeFzf聒OpD~W==ݚf#%poS3:,? b3 _4탴BP\"Zw;-?VxF#UJN4fFM@Rg($`݋-Mby ʪ*;IK/1ف3Jƿ 5/5+:n<`3 L,Uewk r`bÉ]7uPdp1YfCl3GrfY`YjU\ 2q&$6pxB}b(tl^D%qP}#YA1 )ފ ,/._,Ozk,vPE/jG ~o uoUVkYAKS%ۥϻDZ{S_Vx=]2Tr{~YJCU(7'Ic/Q'h7WX8qTK*Mt.ꤹ\ɩU#ΰzhN@8 3R@6TMbL<^SDNCI#fw]8N5,$BL$$iU.5(aGC;] **,  %%- ;@;kbѵI Rb'@sQ+&ҙS%;+fZH\('M]>Em@vfhm*زG$z 8F[ֵo!:&Ջh;Ռ 淪I? ;smOSb*  dV:0,L<ԋxS4 A[%L~^@H{rN-d h1-ih9)ƫN_"z*7D\%paJev!Vђर2搻]*33K~VTz"ga1CvMJSe`Eo)]ί~m . O/u}IpAGgΡ!I[h`_ĵG$Hc>g*ƸkJN2&'wSe*i4<^= ,J&Yv{ @!TjC0g&xc;G:#-.v|kNWH/\?l"|lQ ^~;PZk4kѠDޱqGlb#Y;57K]d䭫ʽ_/mS}S^n k>笽İ?$_I;A6<[-u2W:M]R!)n%u{3ƗX׉1RM0Ëny86| 1ZF łW@n;]2g,J1п=q_Tޘ~0"}!iyc]0" ~F;{nXpƟwO?nA}MBV~?Őa:R>-^} PybOc< u0 7dtsVJF-Y"mL&R\Q܊x *^YKw?-1x34%T W p<6wž}{N[_fcmDqSfzg#{c >ACG0Pz)Ag{~虶 N3I.m @;lXN>랟˔ +zHxO-37YbR^?=M mU26(u|'5;:B+5TcMc}5=nD|%atϮ3ʱ)TxXJ5:YALw#Jv@1 P 6=S/H[$=b/懸1 zjhY008P+`hhS{3ɩ+) Nh6^4FQvܫޤdr:Isk0E6}TDJ日GgI׻+MsN2 5y -_M?QQx-&s)[U 3Dm}۫fAt'8ptQX>j3_0sF=A_ϞO|+9 |U,aMsAmӌK&5I×#7Kh.wq!p*1w#ZZ*KJ);{G W!lM lKb7;H&"RsbНϙ> Y1)_!U@J l@ + -}Cۂt7f=G-zh"Ad j\p]sE Eqb]}e9r-a4[{IEt(~ٶ_ דN/a1Fz:~Ҵ͑F$Ijڔ2'MCes;ʏ:ۨDa4Q{isVw7)(k/3Ap ޯl4zkhc}0O`꟥exue75:q`_W\`0h"q:x&V5!PZQ,8e/ZXPC*=RJ6rby h~ciB2{("c=^,a#&Fl̝76>|ms?qCGVr$LQ;q^~}b( Re ~qJ[$Jn+ ?K{\^_XѬ#7)V)uO׏dTd2xo2e T=0]/ӥne4n j1tf4(FM#p =b;k}*b'MRI:2US&ZK7lIgPT}}s񜋹{n r3˭ 鲩rI&4t+Qh\[捬wy S/ zQF;]BIXPBK^ Fz1ÄtQAICRhq6? qr( ><Vv 0Yل i ~hǵd3YDYgAħEx9RPW'$.L_4\wRNܯ˵.8PEuk6(' E!mi(UDt.p{I~E޿2޴ ]@ӓ«p=0v;e hYX:i'77ih*0~Уp=LWl)ߑ؂"} z`\Á8dfזԷ!0vG=50M-yk6j.`$~M3m[_ޚW%rG0FyfYG5ɧ29 Ql=Z ZDfdZzykCR}i G="S#jk1êK8 hG6Dd#oѼS#p0b}1?&Wum;ƫvݹrCZNNz")B ĜTFUJ^HA-@F! }>*g=0\ ɽ954lU$ }>ruδ<D ml{||wmxPE/L yg;!/N[yYܾiY^gHQn0qdG9HB=uH(4@ixtTw3ksL tl/i$KQ!ݘDD@vm/ ah. 4G`Cc F RlGbU1!BJXH #y& 53:@#xӢ86A+"vsF)&nvY}E#våq_=*"' Ҹ^FH#Ӫ%$>IkܛW_aMr"!OKܚuu(o7gΠL'Ne|x3'1؇mekߡ}E5N[u ]|ÅjV)*pv(=n֌ͼwՒPw_̿\M+ |7B껴PVm,p:1j@׷Xŀ5L^ԭ4H!SGysLB^ Mf8 c/>#3u- %$C%^x,}էSO`ka|[?% c@k$rtLS1ԝCSuD955$u+UP-K?EqZmb.Nu5(dE7Wׯx5¡4ySK {Z{\`䇟#&1Ev*2èCŸ!S.!x5UXޙh .;C'~#o0-poHu} } @\6䒀U9_B ׋Fy-[uc&ÒH-1rSZ=?d+ziJ/<>[ qn:l&Xs?iyޟPk}PBl+#pwMUk葺?-`qA 9xӊY)ܦ(xCc+Fڹl<`#AhePceZ!3gLpЫ25 I.2F5>vJn< #J`eA5%zBƻ[pr Jy(kbn9-F3/hq(ݍ-ԱSH"L~ ~̟45 ܺCi}8Uzmd3dgOIW(B8>+,.ĢHK[v}E&o@7/9ȐK+l1?|HhJÁY9%HBXɐ#Ĩ ~giz{0^ux5܀CB/ICpI}0!{"vhI9$x˭x RN^c^: Ih}tR (?US&y`vrJ<fSGۻ}> Sm.,)yD{O&< >~WUl͔rl(DTF%F7r4+Smaۜ\p[FhHxqQear_@~d[y)8"oo0xd2->7/\U_(::7Ʀ $dC`7B7)"pAa/ xS9j![R_J'i 'i_=l'z ܐ5s6ɋ_f ks&ny^4 CϬUnjS;.$m+LQllhu{ R n]iQNOm#/t]R9Q[/gEľ3OeKU]$=ǿ;ɟ\1&=Mgaf<(vR(RTj2zV6R8|Ol`5;A/|D~)/1ًVXE(>$U1߸EDq-UGoսZ" .F1TʗweˡN~>$,`}`$pzi<#yWdp۶ (;uymODt5 ͷ ak!2?rnL]3?8 3ׅRv9ڨ S fLy[+2Ƒڧ<?'_n`VgIX/$64R.d.Zֶ隞gtʝ)u뤇5rO72w}&ʿAscОjq1#dt+e.oy.bJn+ڦԦX4K(2@؈҄"{o`B+*P:?Y*JsrO.Վ[X*.t5%Cs;ʖ Yo)sH)9?\`+RzCSϰ%GNTGdZƷ 9w K":Ӑ>->!t;(q`s(XGu,1%ٕUm!pRN:Ñ5>)`Ƃժ=|YoӘ } US9LB0$}6VO+(z3 q"H73]="b25~.3Z4yGJ,Dl9qV%Ov2ʫB?ʺF1/ZԴL^L-{{!4㳊U_G=<$[,>Iãn?x㋣^֪ >|m8u]2t Wuk>|n8E:c^(>3&5apg`[ ŇoТ.$vln=&5s_ޟiKcs,A'߁efď2 _ЙCs&+3D,8}8+%.lHk|s?YZj46maqilN4&$ҷ=NWyYWBX<؋3Ub7e}4{r5 :#*.c=t4!ku)7}6;My?ܚU"r&}0]{ְOaVnysI5In&QuM\|+l<ǹ:o(&RzmX̛o"̂;2v f7)o7+=~=܎R ܩ^Eoa2y+{,~lzQ W:7?cӴ ģ9w.=Ly‘bxTj7Xl(SvIXwk\1{n-{ ehӕAL WgO5#cF윀JZ0ߔL1/lsNہ;|r)qd-iH>u2{ RJO:乆\yCi+#u 7On@} ;nM::03?;&c71dS'Dt2Qǀ3ɄD,]tע;^p}~wOHdoG>a^:1OThA'm>@%?,"U7A)Nl}<3 p]HSL3nTk[Y?}AyE4Nz,O{K[UlڸWU {͎@mer~~ozM#.x8W_jMZ? =|Xu*/9.J@.{X\3M+}ӟc4Qrʋhr oN>Ph!!]gi+!&"@w е77>Tv,u[jΠD8W$dM6Al bJ&w4q!`'e& nlrǘK4;:D4=pog %1>PąqE'B[=`NVQQCE*W'ٗoB0sN8pqhft(3 0d \×㍶G(:;~+MlBwE.!E[>>g/Y7 Zz_Ugv-p~養EBbX^Wf;LX\U\}w M]0g cnh¡tҹ 4Օ MYQ7|ՒhRw%`Q mJOn<{wd} i1rˍ1X%+:طg<^mg^D(},-AqDe_R&Uщq΅謞Yn撉^uT.mayP~-j[4s,Ir7] .YtLD:RHyֲ8?;(,JAKO3arzRLk/^gV26Qoiǂ0AQx9ɦ g8|#)$m94in"E"3"&k <]&X#=H^tV ?ٸ:#V̀ଃ: J^s p1S+)(*bZ>&s7ОzS?(P&XXʀ]6cV4H Pº a"uO+MC ™~>>69WbZT-@~C;}X\5׸oA^ zv9.3VZ^"ds{-߯0?9$Bk-_=' ^c|)?v|j 2%λZ q&hyɱF0਽[3ɠNR8m#roH,ؔ?ֵ"*&rxޕ9INL+#7)qy"leR!7(]A%|A," FίêNg|'M_ ̸Ѓ$=^22lS~j9!2\!V2&SEd:j|aPV!¨۞]{>ʋ\ AVκ5X"ǻeMk-Kn!m)HUFx4⭶k{ɐJ9&bұ$즄 a[7J渲}+\qdՐ^M]U&r!MI!1[cc]qvL.'Qѿ- ZͿx爬Fw` a?b3e`G H_h>9q;tXby'~{ -.)bGPzK;OpҩBc URR(Sd=BO-LS[8x <3Mƽ7zXZMxyãq j)e'heTIHk_n#h34OyTbllbd%5+WUԨp()oꍨY*_ kխVLvm7TSā5jZ-7[y#1Pe+}3&ٵwqr'w~ Aޔ ڊi"k5f7X4u=/D7TxH؞^'p%W6n,S6˳-p赳s=l@){ k:`R"@4*HH)R췖 Lb94Vє/ӏDiXo5P*L``]޺7D{%+l]~;c7dO@"@Cܡ/ڽ5rz| l>'tO'C(8;G1̝ 3\#h)m CT@eES |crq7!+SڶVOEH6ij0&"mHAgwkl 2"ET}Vue?b:tr^1&S״̐sI1^3©څOjDNTSo0+y䰂Aoo%CI|(06¸a0S}`~L6l@`G5!]ubga5Ig|tx F87[a0^LY̗iJ. m ďV rAu#U> sb}f0 NkM ٟyי+bT:\d!Ux^we/wR>裝V)F]qQvKE^Yepdjٸ[(mq}e!.oy,NJjŝ,v1zH7 9B8w$K@Ī!w6@  =z5$vQG}^wTA({0Q"+w0Ew>N} y뫬Zgӹ{^ř%x";$E3ݟn=#mUڙkM%mM 8hV~~qeeiDM!QPeԶ$B8}1?  =2yyZϽ;a(VdXR9x'bY_CF5mg;>]_\bObŁnvuff8f+plLqp x!yl$فZT6zul}rsGrMP""'W􅐵VJ-Z\zsB^=TkQ}0E+Kr'$Fqy_MNZhE6 <])m$-MV0h m:ƍ1sWP3%ZmΩFcKm"TIn @/Q(7c(pUh{qHRLJxp5

    ;k +)&z'aw:#:pPt*o@Q؏u= &^%Ō"Dw sL٪Ṕ6OXytn5:_N2QM.ͧ,m$W[IL۸a+U. z,NQxz3%0Uh$Q mÒSMmC;.YkRLL gQkCOKJ.:B% P \fڶJkwng$RḎӬpqğ++ jBfi/`Qm9V9;FήNnbT#R [wuYb䇙X}G6t7ЪLI>m֊t) zص_ؓeT0M|b/QnI!jtCCh "KJDzC4u$$RQq  Xl-ids ]B bBsn) Z0*!;>eWx>e}aCh*sO -&8d>M*K+ ~FgBGKātɳ|V e 4{Oo?Wi_ #_UnY8EؐМfN$e3[ B[ٝ@8Oՙ  E7/#(sZl` BAafσ`j֜*bBNu -/'Txd CmPBI1xX&'u0W`W>ՄҲ~p7 I7JWŕ6ϒD^W<4pHW-BfBrPJ0$/|pj,#k$I-8i_/EngbLf*gp/=B`+amrdewDT\}&5N!^w!+P qM{A+NzzWB~\ߓ5iqD PY]p\U^ӁVov 7#ِA5휁V.Pk0[<-;zP@5b{!z͍4+VE@=*#54o.Sߦ;^{rk{zϻ᜸⩒"utvT ")|[퀸 $}z~*;q.V},#u$_CjͫwBؙzTFUQiee;x^\Wrc^,WǾ+6:w~>PL"ZfJfE:MZq-@|J X 7)<.hx) (ȿ0Ϋ a0> 7ǧc mHŝ= ':P)9*4K!zI28i=IG+@W[kZZH'y??Rտ#9~xk+˕p폲mlنxbώ;n޾0*ӟR KW/ ^@k n>&H'yhYj 5n'w=)>M&lq}?Q|@ Vb$h#78(;P8/J}^Ӓ"[U0\8<c6P97s+;ktA-~/lкT բP[LT~EfY5)lfF͖҉:+9.R;Y#/̂a| cdMȀb-r.fRٿ~Y^p>jx7ј5*NńJR%x?Ck,lD39All-20 o3; ~+A >4p`$=>1slu~Ny W95hG$\!FaUGlRtŤΙ01|k;NC|&T/}̈Rj\2^ C((%^c+228 <Œ $ sͣ#>l$[5`4wy#H?A]P568c"~V4TS 0y>[?\ҬR:\&7H,Bm3F ( {A0"76༛xr䞨U KIϩn,x3B=Q[%f|905̩2ZTނt~7/F s`*ކĀqҀt4v^vyTK:[ #OWA&nW$q'L!A&cR^OFZiK! *Oqv0xٽ[<;&:`u&?B2ܐYNWȬwgZEYJև j%U}@[UjP%z/f?)Y%cjΧ&Cs8D:]ۍtMo8?#;>Rӏ\R 7+{VU:/U!/DAjW=>)=_d[Xy5>D(y+a^$CkmMOSzҘ?2[6O$OCA@e`Ǫi%NFҞ$=>Z̼|a߬#xm/Bx&W5lPFF2ꅷH?:}yuI/(?$4oKɻHk0^Dh {RZӁzkR(*Ͽ]tgjZ]H) '_1 ly> V&aN+AmeNaEnG+-J>ՉC " QI W˰;{=kEq $y52pzqL@O _EL)Wzr +;-x1#=Ma`> vLv'6SBv)L}[ j-⒮gvqm(n 1x V_GNwۯ7?7ū] :fR/?X_}2^i8S{yOz!` hnt/qZ HHM{)D׻JQIC-êR{;wƿG,,F=Z'hv%:í٬+Cx]YHd9÷.k:QP٩Z_]n+ֿzCCF. u +oMA5i P>>4QL'ei|W:4>q(?7V0%tϮy0V+YdCOc?pl1ӕai#p]?^?=} *s% ~bVbpp !Y 5 ]BjozT ͣ슿R&iN EQ &yR(B4,Z>q+9=]1¶G+,(74zB#͖W AdO!S7UسtAVL 淢9̟Pu\R~C<7~ q׋;bon-8HǗ?Rw_]bi?~~vƮ1X, _0ɰ#xwM6sAօ&G0JMi&t>veAuzAKn3~}ݲu MAF>U|%lUB1x niFk~3D%5g-Mss>,n).j-|(8J!F2S[!-:s1`:egKprrK;b,+dQ!7{=ǵ춆7X[. w&n5,Fyx]rV!cT&Vȋ_%}.nʃ}~oО%Fs.Xgz~v>;ל>8مGvU|R z Uz!!"> .5FG}׸9>o㸾qvoqg訬![Rb0 fir (]m)--@S!Q@0󹹨;L% 3K܍,3ZrI|W1i^Qx,-#KCwyLRQ36#Kȹl~E4EV^e[”`3U^B Fp7}& *PSKkS+cTU3WG&U,yz{U}₉2<'`U#6|bQi?[B|"t"5BaٙRqacvk3?uwx(E -[e3?PU'0uDgAGb7<]5mK;O%󍔦ÇżN-+̎h%>fYGǬo:V9zH-c/R!B%ۊ.(_QJ.ڪX.C_5I[<[o!/z \=( !o1C}l%}}CMo *>3 My-Nᗜc2F)`'j]60|K|x+OwH d{NM'1YU"-:1wtTEg۟#昷i }9)y>ҳ * ͵cqT*Pk_{کTA,?5GfzYBT*h]@ɗ# zf4_v1Ͱ+:2op5LFŃݑ6ՓJSBGpFF0<`TtFuZ?+6`mb'elT~k`hrMVԖˑut{[Vu6]k d,#QH"J-_mh;`GsJ$V)A[299&uhW'I[3W%u~ڪ'2ܾ ةde]+6ʴ)Gl1Њ% % u8ªLso\@,=;pk,>~UupГUn¡أ|pv7BC]H|R~vZJx+=51F66`>8Bko5WJ1E`PRYEw,; KgJ$4#J(30$ֳ47oxL .t,xc?s[Py}  oOWz{fFr^9} U V &zLsBF{R?/'uب{Fh\Z0jȷ).LLx3vĺF O|O}9Ma/ig䯏 (Q_6 !WI$f|(H (Ob(C/\ĪS5va{>IŴLMb )vl=w?}iDw |V-0kflueRش,?4`R  ڙlRTdI 2ZQ(oe'D]B֡w&c^Ex׍-9(tP۩U_]zH o@;R>R27iWmt|~}D}: bJwAג" tϔh:: T/+_2U=D,ՆQ4hr2;I>sB!W$AvwmԩzBe=M [O{W0]1|i_=7]k6OHY<$A ]a7<7*Ufj -hc_؎BF\ɅqNA7ͬt$+5+' > a\%*C֣"Et@NAވ*lףݪ太C<7DrIOmjh {7*k/h]"J\5b 6M|\SITz1%^hyԃY>WYi1EzMa ;Et6z#&c+ޭQ)f4ߥ{7imm35s7@G޼zcCjL& E2Zq.P|zE+ AscQ_-Se4e:\Fz5R/u:#&IRW5L 7vOx{&E NbqK n@ M_4sg> |^` &շر|Cdv>HA7=Q:;}{@S6YS 3w1<Mb`8[>iǟ.&>!9FrX-]چٿksEa()䀂3I5hPu9=MX5eb:A5}sF}QĜ: m$%U|i"(+ Wjxe CҬvwN\n f`za:# 9ЧO2t6xY>9^?ezC6H4y+u<<COlS߯|] \ O=hґZy"N0Űg\bս H5ڹQgtCxEBwjFϐ!p2@W?dMmo5tPj3hio9+4߽>Mm -' ˮwb >P6iEV{e)'q ގϘ6Q|&wZ8 ,l7Bph/7.Yu9r2խ~D[rq#m݇|KnΘR@* $/=$aFf郵e6S3W|_Ӵ5c}k;י:cI;q.m: fPke.@(^a~vMWy{GH3B\#ƢoOm옂qh.M0 c@`Ru/jy[B_WMk}3 F{H}=>7 j{pRgW;52Po_NbuSrtvQU͌ ^*< dAV6WrRw&it$Z, ]R,>4JbfIEnlq$hOeGk!Aٔ ߔ1r9!D Rv.%6h.EzG]l`.; hh2|%QxӖqP{=M]l8*jӒqcX*EBvw5⿣_ʃ0Eؗ"+Z,'1Wx]Ӄqc<gL\n$Kb/oJ,4!⒖~0ks+o7-.(QsF:)Y;h؞j!H+'bv:ɨ /ޚrD&|Q47D\6کEd^ \kA58x#dRb;~C>1`ZϿ0E8גe "dz\ʪtr7 UEFL YAI/5I=oҾ!&Fe|c”,9> *?}+k0vC?1sYn$=Upp7O q;pUIB].=߻3T{useqR_Xr4Ymئqk͓Ga" 2zYQ0YI8|D~ce LC;xb]Iq 0fe~o,-59͟)2gܜPKG҇WlqM3&:loR͐ :^kB2igwbMtHNt)},$/ުq_r@/l364{/:2M3>h+'Ӣ9{Kqa%_r^֓(O[FYV֜ଃi%Q9bo P@ԋ>˃ ABڅ!iO 7\r,,uH'4<@q1Ri.1]PxudwG3k`Ԇk s5mY X> I#_Z]k@m&myll8zd~ZVѪ|n.,3ii'צQ"MB4k.T޶vm$ARƻw %JϏrS=f`P@PjC<[pVͯOv;mQ:/Ap*ߨokLKj+|vXe]a JGdP.E 'K>OJxX +7`ݒ%9Qa98Q12>7~]}|BEwƞ&?8=g(aτC9n3F3|lpy^FfZYf@^Z+*l \/c `ֆlHp+:VB/˚%#?Oګ XEJv3F Op&PG'O[|x bQ|>|I>H{JaE\SO*%Cs[][ ]E]Rr^k=YM#=VH;/ mloN.|_@@^ٜOOZ*$buln+$PՅ,x?nLp:&İ2AF4r,,?O S Y7GhΤgH3ZEd`v@PSYD$oXTAFo/0.ɞ\MFVEWKu{fp\mZ6e^JPgWdN.i/;dGf߇9L^;&B}mD@ڣ8GOsa#pGyu[4eU2D(n$c=BFfF XH?lzȕ95cWz9 1g&a wAP.%  k+<9AH'Ԗtep&2 6PMQT<b<1Q,2r~3h9s \#}K,Z#UUD}hdpq/Q=H zdaF!g+ PURY U3߇>Ҕ4 ^[j%k9.2+7J)ɳR/dSOF$ kFr)Z0\t(To !kqWziVs/ aFP/y3'"Ҙ hcJyKDW G 1bգ'GGb~O{W/qJ[:,|'p{&3oq aYn6,oclxZpQKѶfC8M0P$284\  t_QP F[]H*}+#%2J8Nې(0*j~Y?u"*e,x%'?6)q印"+%* }Od~/sD\p~7C]4#/u4-Ǯ3iƒWvvӍU|X1ŕMN"Mt#  U72 k E}zr|#qkTe9Yt:Cʱcf-!g{M6YrMl3x dx=ϖ\_N &R:[maY4# -afeeO3ޟ*wofBrO HFJ[yJm%{'O"DJsU|(Ld~ӅTM= O !:˥ { ̧!l`(lxLc/uq:+SGYnK#I$)$.<,u$%3Wݎq"'Xw)%KR8f[P/ mn?@1j}UEknE"6%rX >tsj&+ӞbrQ"GY 7 PlǼf^.D\t eA!}` "eR)wQ=&.R@AdDsmXn/CŃQ9N]EX $k1xr'i5Xgn.ΤjlH Ju3)u)й`];k!Q_DniE&Fs?R@UCjfr9et0](d~_QhX{`Hӟc5(j6"6yH߮Yy`YErT n h- ZB{^༶X?vCoε yD@1 KEMQZ/p(`I^a갢YKk5A}jU^V*  `ZE PȧF6+6dցe<.= {l iaT/ܔ -nJ(ٯ`9š5  Xx +p܌t߇ 퐥I=&Gp;720Җ/r cWOڰ2NA5vJW{o4J8-0NDh?qS-YޫeVN?RƣxE~(THal(H,FN?D> s$,`ͯ:jϕ4 Pv*!v]]ץЊ\4┄h G3ԒqmR1|խє]N%ޒj K n_l'/UҒҊ[½ Q3y?ԴDFni,1G9\%h8z84k).ӎ+9[h:~kSΐa,J&XA;,&wxVr⑁~{9㈷]o7` dgT;Y3v c@ <]7G?F%,QI%KgOJD:14=\ժG>"Q͂e?7 K\|u\~.E`ZM+EXoN-^X%_QoYp/EļĔpqVC$y#:#5~P坉a%{eB^򏀈7AӇ?Yvtuץ stiH4}⌂cuѧCZ N_#j߶ǚZ7eIcRY}ZQ ?]vLn4&f$`kQ-`F!ȰqOA| _xA5]LS5XsZ2Rw=O%-֠?۲v"0UzPS' Qe.q Ud:ӊxO/^GG-d+;,_p홐k5ƒ$g6ɥl_$&M| mrQ'y0̿h9 Ir(~ko7׊F' &R`:i$NW"Q`1b3wt9U,N"yW˄aQViwRѼhEP.SgV\2ًTyl*;何N3r yW08-r̃;T[5aw:RYD5sXlY /юKU<_a}]H^LՏj1ZE_Q, C4}Afu~jo%w P'>ׇ+ TSa 4KG^A988Ϟ­\ݓkv/&@ ;M&-tB޿Bσ|ԒnFmq*%3j(ꊊA ~-*265XmTq#PvY'F2boa,\B}qڠӕa%rMBǮ9Ǝv;|oi< hQy3UnI SUJp)PCQFoQ/ qB`#i,wW~ng'q, ҅EI@DdВ=-'4<焘X,A3`K@݁!4@j anvڹqwbx/Upr^`zx܆ "pq^k( )Lɽ*'[ +f h֠,7fj7S;q@繼k p#*S[:eGez&p/2ϝN莺H:<Ж+a@(~'h, 3<@j)]~t5oZw2Br\I#j,ꈰmMG)C2,?=0 uՕ]/Dž^\#v NeH|?{-(C8G A7QĤ:62Yh!~l֊,sLS+'w-Zp; H8;ݴQP{l)$NPF-ܮKTqwYoq>Y|jm@?S|xvx`peHyŠ&:6?Miz%%Qqc؆v^,{]=SX6Fr.TWmWtn 'H)!YR?ePB^(ֹE1fԏ zG>~F;H91e T&Y' (pL < /j(fOIuLaq^m˳ *{[<<ӝ']mIs :7[ #22~#9G6HA0(@IAR*MV`୨:էVYVZA\1ζ f`hXEjƪ$婶Cݥ'] =0J\}`J٪ qyrE٢ a7 [nğA ;Lht Mwl^b( ** X8H3G@^4o)Az-A ؉X< OM/$LvcAC!KT)^~ $[~fYO nL͂ؽ&.o^JޥW U<SD 䦊!r)&kkIg%eVqX/7?؍ʢ]L҂\+2ku/yFMO\(~7@ZK GI"ʁ@/Vё3ൡU n2` |آ*72<27}sw۱xSbV|`AŠ H;HNrF샔T[2*0{ݪF̄Zyh$BnOT[^X;fuaMuhLɨ.+e;1݇ڊ$kƧ@.sT <!!Y>އW#o0#ڸU=+:prz>yO;usѼ%k|!MR=l7kJ1{Ыak,:ܺFD\mگݘ3#( @\w<|&ˇ0 j`XUذ0=kXӓ1eRKR)ީD葢 w=D;^԰Pc~m>~C|Pe*$lcV[ʧOJa7BE>3a^0uf0t "Z=b@ :158'*":`\IVEA*1Sy3S@o0Z֐<ٵ87ca@ɠ}0hO&J@TLqCٰrABGTzҡPpjEFGz%SfUbhă3U~P>m(ӡcx}e/mLc4 w1rtEs{2Ŵ^ڴ2^vN@UUNuK iu<_r9 #VƝ%(VblFUaBhFlDs&{P+{h\C#EPTkY̔4vffiՐxfF!ԋ]H7~a q(!%ަw xtAⷘ*= *v0g j`a*:dc O}9,0~p80qH2=`__ 4(F!!rp3A)S(9߉%&[,+7RӼ1&gu<~uY޲u; 3{ <;(ּ3: Ci\dMH#_KQV\X4bk)w2#P KJ&Y*LM;-D#U0!>n +opc(r3Oj"h宄3#DoF,`r3Z(kdHBgPP{7S]I! UuvޡL IـIӶԍnZ3{vLzqǼN]jozw~N?T-?|><[]'rz>W^lI\sUftZg1`:ĭqyl q|_RTw ӣ" $#"̍THl ah9\n!AZ [ZSgYf.|0w}DMM;\)WS+:[>e?L#FJ'M1hp$.(/]n:oiv/bQ/aɷZ3j 4/@ ՘ުv~[d8. Afn#v>dal3Ռ [~9l̦{SXPUƖO\:(zߩ.Rt_P+4L/c]Oyv(+I-N1!bɦx[/F)P4h6S;uḨ)$‡p1ޓ%ޞӥl{?#Zc9_˓[N8ɗ\7',Õ ƴXSql^u?W!Ñ\}dsDe`㉗1kE% ]YD{AVR_?T*w吹љ `bJpVh؛)^~y/тW);́;6+6xApL 7ByV0ϋVYz,h*yDd~A劜LΝCYhIO*4_D̩1Ho>d:WZEX`mSb|sb\azKyŠsޭq'gvO APxvFPb< 2t\2 9WF헃ъ)iE"d>OTכ3erFG$%׽G1,vj_!pvC^hg ?zlw=L }V:3a6BE8OH+)sKDe)4IMIfi?^?|)SC  o/_#lf[#6a2iϡ=TNyܛNx 6e$ԯ/eC39oj;tUj!Lp2zz#Z'؇K*~`_Tzfs%@_hnH"yDWm~^58w{z8 Y AZ{-ߌyhHo>,"zb7FY>#=vd*w9ۢ{ YVn]VvZS"iGlcb%i<2-bR2,QwΑLF#:r%8JZ &;g暆Z!9}@mL |'#.FWr)IUik dh595{_iN:d҉ioD@ZQ,jyy1n]c [GbjcmI=ڻ3+ؾv7LNbUs{I>}pzK]NO Y##?yJSq<7 5”T4 M}[`gAf1-=8HGna0 8M0"JvvO! ^{}4Xp"ŬAXѩFۜF/ rXG D:S.q 475`-4O ]p-YfC?Ra Lg'v< g\=♕W:i!J{#gՈw} lc#seB6[7T7M= cd榜6R{٩KL=&x{C8a1!9v_5_@DQ|}xxp,)Mnq+d, :%iatO,CQ> [Qr8MG.[)SL]vF֥`E1D-=oXG.l= "j.WC nd< 7mJIZ~.i&aNW}3Kj'Hf ӟfvBy{7.r]N3 J:is 4bJ f#6VO|S3[آtbȼ7W55Uq[vjGׇQ7BS2; hVK~Fy3чֻSOD:%|'1@*/~oV,nQ酿(HC@#A`W5FOwl9Ҋ/T]6 :% cHE7y0F铈pˌDI3ssЧ*Xe:LpXsnf]NՑj߭ҥH[;9 qr2J9{5hC̑"t帺qG*{uUJk|0BT+GF5zLh >$NyD+\zk8 6/i ҊveW/w֜144Z?S-5>&$>Jjl^!/5T*uWpj\)@`$lr[Y ח>7-چlMHtBvjx RϷ2R yIϠ1nl0Ƒd })jCGM9!XCHQo6s14?grtK O6lI 3vy.Gώw i[_zwe4HB=& y#|ٙuȶW,܃{`V.\C)R@e"hp4KfCj%uWYPDqeDEt<ƷBm*XDGD k %ĩaZ.,-WWh?p`ĩ}"Aǡ( X7HU!"{釳}"|K? p&LAqpK [BH]z&0D)K9"W Bk$ɜ3~(oroh4eH?xѾT\v  +ުk8moSUm+ sooB%+cizק = +iJ3 ^%z=jt`͉/~5Yܣw$ѧZL4p. ]rq)*\}lfcDbUZɴzr{6q\oR^瞲c'nSOc؛KY"N*a˛Pgҷ`!l8Jb ctҒjym,r܅4:= TS &׉gb9IeMUQyޞP^8o @qm P 8͐myMZE[/ E~j 2`HwL AK ~{4N7EɃ|S';7?AqÌ>d9d6`~/GHݵzb{ ^O WV9*Jݓepe6vY:"|&8)VMik|v=NkB͙ 5$tipfJ20U5xт }kJ2Cξ&C1}/P?E̔hltg.Vimg?D "dMu3zBsk\aɕP[70xؗLR9c#&bUV^W/RJ^ kG|U#ظOPZ3v0qPV8LMe3SW ?leE6(t,킃rbO-̌u0|WdU?h H3];Y%`/TF<'Ds9Py}2RθS3 Ȑ{3=$<!ij^M:+fx/[xJRE`yw()9d)yR`safK|TQB]GJwgb'wdPU>,e\Np>Ǜ0;Oiw}*줻T.&߾obxയ3Ц#V8T|o\u(HB5ÑPҤ&l #WrAZǬ [lrn[Ft"~%]vxәGnXjCոxˆcC"?:iL!@pg].0yPc,vs^Mah ?^Q @)xw>ː,Xa8k{!beAoa}<_qO'܈(cVNU`5lsܺY~wn"Y&qV萏O |,_ґzC&EI5E_&zׄ1Y;./{o=$ߧɿ!u ijO-#zxէkX;$??_'+Sh,J.*6DlnZq-Uu|;bnNGoLTQ(b# 1]uqjd~/hgUP#Kfk3r[7t上H 83L( `;1; 5\gF\Zd*(*ESn/ݶk'~] vabZkOC$Wp<85tpܧ;GAyn%*Qged|3>-wזZMld*20n,7!+)ښJMЮi'q7$xxhQ4&k_A[h$O&/LH䋰9Vה8q`:/DحbȸmIjU2*]!+Ɵnһ{۬sQ%+OOUMGf˄̊)&@\$;dǏz`W$ς# hvU&RLK`*@-eiS$|3q L0Had(0<34f ynfI'\`kiџ4#lL¥G۰Yft{;ПaxX'1{]ѽ5^#_8P5=Z:gJ+]rhcoEƥJܛ/t1Q>#1krbp oZЃ۶/ $8s%9+ǘʽ)2e+s8_?y9CgȒ-xc!qćKzYˈ>x6&+'ȹkVΞ]О- ZEN%Pv~o-'z[L[&z:7Jf7&j|ɏ?O>`0wJVaɷn ~`v5"BT$$;UTA/VX#¾T>#Uܪ~C7!j1ggҩafnuQOnח GVaW1mG£۹ʫ%UJj4 4jJldGئUp#f,vRB%{,r!ZCd,qckQI}MeZ.i[z^|=`oMcN6XQ@|2u㰊ZT22T?>E'JKl[T,wڕ%B&Qf\FV|Ծ;ZJ}`ocI]{YrÁG@KUu"TXE4gCvjܰ3?j\5y"gdNd0,cRj& uߣN]CU@V⎔͢בt42P(m(-BR)FIU,=7# q9@X߾OuǜO621Y, #=@m >$4D_훚KG]S-,ZH'n텄 7r򈆬ISx`~Mo?&R8'3jin̖>k@>J 2}8@BQq7$V bVǗ}lul?̩8m@)z]FF jP`YF_c$%,bHvEbO2CW E<!6_9 #vi@tj=G,(ljۈ'!侊m "z&㴔 ,P;x( S w"S"@Yԑě0^ƙ|X5lhA]E'OEmgڕSP=Լ;&3n%c#&ĕ3\]UVB)D2㉙&V (6)U+`1۵$a%X>pX o yK<#A敕="hp#oi$R,5PuП(EFzJz(%'L^i9U}v ^/ Mr+ {B3L|?"=PR86(Ǧ̂16tý+/ebqLzoFb-# XJuk/ָKp^BFFIQZ" X˺(}]8Z1KyahdZ5yHd2@(bI>Ed{r9 e׻h EWЇAds>рDLG#40dJ"$OB#"+Q8iLFp/t񞥢XW;c,5b2\zR9-R]:?Ž-Xm$!￘};2xۓDdvM%>%ƬBd;+}6; +,x?VMiclhM#M#ڂ:u^p%d.(,-&%+ځp$l8-xE`m`Y@āp W}qzvd@/^[״C9$ '31%rIУגvo^H,cg__W6͉­e4n0?JBuRɟ;1V>+AO0tpf,|F*YDZ&3/s8pIW2@j]vx2 4k@RzbYs3Jf_=6}m!ca TR#4KcxN?AA;W0欱񺀙tL9yY^:Ј~ _j =Ds52lo>!9- f5ýx!E~X!P6ܰ5zP> 9!kwP3\l2U)v7U)Zh`v=$k<.i"B&3r ۿqa@mZn ltG;mZ~C^Ip ?y3Ϗ3n;j' Ҟ abs)lm{BUXea9"! og(mǙN>P-Zt׈k-4hod TEJ&]@+aeY-)zui@KhH6zHRaHD=^$zED-bc,#b ax9)BQ1UvL ȅ.<<4Vg2uQF`[i~%pp}Ycn>qG4XLxz4_ #F38^lA6i3/K00g'T|ȕvG a@ODWx F{MhUNX@`֘ [֗a^hG}§kqW<#ɳ2,z]G5QI {-ahSO0l6O]] ;xFѩ"#cbHhi{H =J5|~G<$^o{x+{FLۅV| s8bR#?)\x3S`Rk̃~nJ@zFhV˙!`r1h]S/<1 dUl49_-.p"8ԟ[=Rl"fD,o'WIA3m䟶ij&(ަ=3x{[},^W:oj-s/zyiS1{$q3kt@MŽHVB2#i%R+x`hq069q|M1>*$+(šJQǬ!e7͉@XB.ɸv i\j/sd߿#QYxNB#褏HrDHОE.G&[.,Yu-/{̫ @*W9Y\[;7j0\ eI{-Lv қ|EٔCNGf0U]1pwG>1'Jầ@Mʫ] ieKtUۈ8y*%Mȧ6gnD?7V~ V;#OD= H5煏N׶4ꫣTN&ߒTŎU2 ?Ӽ$Uÿ#0d5{q*weX9Gnmh:0nZmb>B1J5=ht[8wZl^ELnzg]*[ї&Tib,ʊc|!IHu.PK\QιXH=Oo=Jn-@V 3;^Ow^%-Q_l[-E`\4W'L7^V*v `JFg{b?r b&]f뱝[cWYygGciR9Ů̑ $Mdn["V%YdUUFyݗx.|DEؿ=8Wۗ? !Mpԯ!%NpwHMMpY:P!nj\, g6D7-֓$,Y̋:FUbW$waJ&OCpp[]ܒ#.C4[JKMBXL)s|rW5hy+F4muYp] M8;+"Kʽk^w{l\B}!^V0;_i ,v+2UcWѽ no*= =۸n: wXF=ROjP~(՟ϓ,ޮ1СJl 4S˭:cr{-O[y:(%՝/WEMڷ*姕2&&X"ݒ,јcu3g E FVw+9屡x3=sqOr`fc2!}B&Ce D6":kr9rq(@soۭ!ESZq\f`Wj9iNJ cdg:a4vA/0'0VX 5M[dNY {GU" :^ޕF3I׉I^*a_/J\kqʅ/[v: F#uգEXf}ٜ+A>,ЭSe=[42( G |_xc'ha/jR& uȯ^I~j3q|$Z%,\/XLi5vir#Y3i--vE*Y|A$ R-P0;6u7a78#w!>+Uɜ;oCϳT,q'E@*Artoe1]x7{)QS򁧆3=ŃgFZR$Chڨf{ Ejx,P{T0! h[c L/3CRn׭3DkN3Y~B\*)a|ˣiIGVUwJʣ>X@v C"{u%aŀ/E$~f5JR3?[u> ?~!JfT,*ˀƮ㡄GAUG6(4)*=-ƅ Y5_!F?=931d,ZRWCdbq`7~C$x(ݽ759 s Wk$ޟ%:PEle93 *~3[M9qIM:1 T#^l4"qhi)#Ox!3,:Y? BmG9t7R/X Q΄mN]>wW9`rSenxXL*6_aX|Qpixx丗 |6XH|pyo%90<!VD>A+/Rz dμpx_]N1R"+zh\? fGWB3xPǸ:X4AOXح|prK>$F:7Bh$@ aK;NQFD&:ПCɋ8'BbQ rOJԋFf_qDٰ0[2@p薦x+&]FQE OcсP:AqK9;L?4oN7we'} Q& CxWߌ`Aկ"܄[oNtCn_JxAZC?@9+8z$YQɘiү-b$ gqxd7آ[fMxo2a{5u[Ej(KxpuƫL9pOExf(d7eYej+\WW f׬=LN,/Ħb:(OjzlFuM,M53r4E0 #Y\(k6/Js`;f_`ΐævR] R;0`XwBB6m< `L)Fx]x\e'@G.~ˮIljqA ʱ*q["#!Yp>- Dl\^q*u98=?m覇gCŧ$G}d.3$'D iCtXh@LHq4nᥫ~!v\<۪ߜo÷|E8ؖ^:O]d5/,Kro'`D| ǹ׉Gf0 î8ڵ_92ڣ$^ VPE:OߤOILCRp,˅rgsJbe!|mI%F(QċN@_J.Q@qbM/E ] b7*EN=b2-D1Z:gٮ' pmQι$k0Hv{ ;ivG4@+z% МWж1z|P20q+۰y])'hKş]L`ѐ3KdŶ͵qz_?>"@.Jc3#F4 >#^v&SpF}yT>B YGUi:ް2ۋ< DÊt`xPG{4$Q9`%לʺ.yE2iZVf[>iZӣ-;8^8!Rox1=;CE6Y [ PyX,[dvߣ*OV2sa4G7FȕJr3H]3o#iWNR8maP@hԷY.2 [q*Kԫ]=V,7車7Apgi.f]Ƨn,s#yv N S5X=pGWgޫotBo];ζQދ~^_ nN֔=k+'9,ӼFPfdH+[r߉!Fg6nN<6AsFvNk\\"70p!vQ<"9?iX|W( 9> g5s|BgR][O%73s &6Blg&Bg% 6?R8[)-zYăoСHEwWZr{6cG)R9kzǵVF>B;!/+k|F Qdz8h&Yq췀>Qޝ$>t&_^ԟL߄\+Ijx~[oM.ƺfٹ[xzŅDhadrx!Fv#hX aYp-;dd|4`bEi*4GTQ?IcteZ ;?p,J[R㙦鬺j {2$#DROfɭtwy.&bW/f۔b[we+tگU@|EXa$Vrul7K~.FDr}?EQ}JPoHzO{܈S7ǕƪC=n 7( ~%tRd23VM0bԐ4ԲlQ;)zUg0 @U_I)?一@ȝYۼ,}}4طG nYsmp4".ǹP]j3Hpu몄! .yjP<{D"6B1E!RFlLܠ8͂_{"*؀ĉ  r / _YPTcZNdj!TEi%_ 1,I_: q 4$_]6#a\F{ LLhѣcO?y |?$&3Ig]#Bv0Dh2T>r㊝.3X)IGfi pRQ3r @x-B_^G{y3PoV6/wi< Y?"=1|IF;oqͬ=*Qhf+ VXkdH,k2|b8Y%5K>ټk6@٥~o^2xk'ƭʐF;֒.|I`nzzΉ/9*J{f-Q9c>:Q3%g($IÎ+*y5!'ZkSf4(˨FdҌI3-Ifm[hġh ֿ0_F-!Iz%Qo5X %G. µ DCVX4JK=2&xXW5#]=DJ>XrXU@"Fsp~$#6\J3ϳtPUZ}MAK> ĒdJB?.7yf=FņP cMe%PI0aGD $+u_Ğ\u=pLaI6whozeZCdBvadJAɎ<gףytem lR6cb޲ɷZik@?ksn/{"K?RzeAB8G=2"u=3\wVnt 7N5ƥi3G.AoŗDv)ξ68$6h :›ϮEgeLp.U\B݊Kś*Z; ag(ioJ_{ϰaKtnqlEh@mR@ʵA?`0%84bm908 paAr Y{t!]̂S6f(ҭ rcPH9;#bbTdh{9F>=7q+bձFvjs@g])7Li񷳺Ayb&-LG@9=pߚPfstBI*3yw}xs[bѲF@}1} V>p7MƱIV]fRL|'lq5anɈ4?wua`E(\!(Ac9\8 5ۍt)ByЍ˴x5LB}N~j=r7XeZ Z K@9Y`?-8^SFmpD-BO0w?RP`2T·LN:ĤQA=x}JK[=6ӀΑp[PLbaŸ=$GW{^hPk|Ӑq9॥< Ui:zy C0gKE0v[2_aEЈ^8|fwM~C?Y.ۡ܊2w瀼:%CjH+ 7^TcXڨ&PX% PB֕ DO=5ʼU+P_|jxzON~`q|mhc9 FkJE+8"RřUכci(( tfњ f"` =q]BKMsʥwtsY>6.nʯI L+ZP7ղdž2~I.&qA$'Y KCi׈Vi)wm<|-5/oԥ#=z IǺz0g&ZhXxw}o3MRy%V'FqzݗHsɭuwT/¡d3Zk*Πsr 7qK q`]93I,'~Y[QFAaH-o1҂뻐5/;\} ϛe9. c*U3YS3DdN$(⫭A_qm HE S4DF.M$IR򹺺X<@@KG^v){F;윯NH\ }Q )dXrf?J^rjawWU`}?%]T?g leXmJYZxd%`G (01I,qt e?B}8]ĤR\޳d]_px+Gh%c4mO.=~PH@4C)\߅b9kjS q} Cl`+2x(e/X3+Bz[kYlyD+p6΅8%Qg lc̔2>8, ʔg^$j.%kV&_%?T3ٱ&ӷQpGldWᄛYx[-j]&A>eq/{9 8U~*$vy+ un#ңK.~t za`>SAh4̓7G/UxlX<pMxeFjrҭ9Ahnc@Rx=5󫥒fcLUW3ձ&HFN,_itQk r.#.hTu ]rep!ɂJz.բe9i;C]yf![#Q%1,K5BDm㝁"cjxQoN1H8rUosU)NMADS8x)\ 6J|l쩽qә_PrPh*X͑k Ed1Њ[ydh3>E}d j/ J|y.t>I31>8Dr͉b/#!*Pdy8d wQS(7*k>N߅?bQ-b-vO?ȥdpJݘ|*a8fQ~dd'őK>ޚí\".4G%f:kkA6԰%'ZDqk!+G^6c WJv39"UWnr,^E\ɜQ*rYJLGd"Լ @)N%6DzWI%>B{1k<AΌBaBgzkT:8ьbǶb㓱_p 遵p)t A6:^Yȫ>h4P~85R#MƎ_wiQSHc-֫+Zh;Й_ vw0CfΣҝFrg.ˮa-~$< 763Ijd1F%K=m="L'th}6FE_T&k)Q`XA9겾dBݢjljSbƅo}žs_NS <&M2znS} lI *Hkz &!drST/E'a]~s[}ZYw"S6ޏi ~< 34)LkYO+ +,|Q { g\ykȎW6`[.qze+`PLuŮ^I,79CS;GVjK7u4%8ލ,k bZC` 5#PL}q4?OR86LvRc0Tn")}e!-UlZZ8 ]Ѱѝg[J !՛J!ZF,")k rhs/Obρ)EX<2Ù MTfg d*|>5GPV }W$kb.Mck% _\#dtR):g[s& [j(O{ʶ{n8 RS$ʣn4paYn*r݉UńY[O@WWxj3WG".HqfNNʴsa/!D+-k6[|]P N: 7a۔eޱΚ*+pra~3r? X$cf^)NK,-{+Z&P^zw[g=2$i?=)^|(lmԓQJ䌟)$].a^'N-̱Q,,[dKRَ%Q~**S3El QWu;:z3RG*W<1mdߠM\{FȣOڀr%}҈!(jQ\^݊2vA+7W .Wfn\ksH)?kߑ6%\@֛eLŶdz\ jTWי蒙=2=($ Q;*¥\MO[B<6JgkZrLWi8( 3˟,20]-:8=f5 b(%)aCep*vyqJfTluc^J/rf͑UΝ![uG"$^[f[a\F›SG*xu 5w8ș.zt/Y0=l>$;81RV_Q#Fy'Ix+kaC/d󤳆فXs G4h`ʉ\G>\Z*Ǟ#~no.|cG0)zS!3<:rيn)m[T~0xSoEU%Ѵ`x=CyC$߈5 VqmZm){do/Ӱ#TR(@pN-j:,GgGtWh95ׇ0xAQAK ܢЖ]h{4vo+kIW+;KToS+gP!]wHљ1d^!z9mbh L*Y$Ʈ( 1㬝~1ij<9ԑx% AeTI"ŷӀI?s1AOh旔ԉg5,%13d4TaLl3~xRl t5%WsJ<7xӊcg8MYXELiK-cFcU+TΣ%x=/%V |C1S.ĩCSX?AAq-l@_6xc0Gf]Z<ˠ;qN lB`<~@!{vvfJ.wvvQA)( ,D5vT~-RR̻]S; DƁ Ic\f-sV9:u>^X?lLLFN/+jZܓPT{Ȑyfʻ,7|Ȑ}|v{ 9~[U#A&)A閩TU8)h՚2Juę1)Fr6L3_M>XϺ=6Zflz<Ӄ ~~pwSLp>ts:T-n3O{LpL(jaԄJÆNo#QRklMxc5ρ޸ FteP6!i8+^uNԷ":EE+T4v!H2*G鑥whIA36"\Vxxm?E*A"`Q$5Ӿ!|UN.oBӇ ժ?HS0$!mKBCU@. a=5{#ѩ7o˘ыZNM5"%VWHYѱ73q[q[*ǙpQU9VPj,ENΗ=V\[ (xu0,#*SE[x`v*)SPGZY%E~IJ 3K^r55oÕV5c-ǭP`:*)ʐ& x)U> |0a>Ty8 dxBYņ`ݐZ4yנ[IOjߞk$gն6(P )Lka HQ?eg}FŲᣭs;)UQ-s"z>Z$AM$O6u bdeJ~%RpMEeɳl ?зGl*W/ZQQh|\IGtU`FwUH]QBb Q{٦p|h9 \m ǝ~j sz n\O{c @D\ґZ#=2s (j5^N%BUV WH Z,\vkgf* JHgH[?xޗȫ(FH 9$prFqKv?Ё;἖)Cͮwsϧ|Ā݋q3D dɝ>]^6Jzy!2t#V-5V?*Vz k}cKhuD?:LlTxnOZp T*;\^!㮛<,0N+㗉=H:d)ڭ]@}tQ5(r&]FNx_ۼq*ڴy@$#>w $X&pXF2  >|M,Dc_fUJB2!V% C84O֕&6֖\ -AX .G*'7(ı'> rJ aY#6$ef4\] NIȱd#nV;-_+ι@@Hk6h%l~€}0*刁_ۤ/ytr*Ƨ˄4J[lSNq'1G͇cӋ9*['7o ?֊@%ǢwY?>8 /xFFg \}ZKkF':+*\@'f=9^_whˠ@K[fĜiQ:((`@Wױk/=;~8Os %IGܠ ĭ@Dr?nxET>aSXTyI4kRD{{47#Q$kND>Bn[νm懴6,DoDNY"ʝwy]iXB~ LJt>Gfoz\oGܐNLZlþ'@{ݜ~̛Q*O$Wxtu=.NRzS{p-^^=#bX=nz3C@_%2TXc^_4\"F$<ŕascKӀmT DǮ^&̟@4yj^LK FJط. S q!h` 8TE.j0ϐ:ںgBշC}ބxJKvJ{x.hD @<:.ZmtmhS?$2ZRka%SiXml 6r1eܾrwP*УEL:KܢÆ_cKrzt+Z͖tO!X@@&%6ڈ^OW[%eiR5M79/}ĿDU?J ]h% eeDzja*,"oJ|kޕ6SU /6 ǘi0܅}IM ޒ 4G6՞kϰHY]BCvR`DZD">d$Ɔ"D½ y娐zZ q* gmMxTv@y`2.@X6Ga;/Dkk]7yZ9gQkZHIZ=b ؉Ӎݽ6_Ѕ*t]׻<߄!-FC:mR^uaxz@σGkk_R=f0ţܗYoJ}sa̍xCw~wΛ>[o6cbNwk#E@?MBϭJ:ֲں1铲y!Ƹ* ͭQXGBŠנw$ϞJ ނX\K_B $.59`` [(A2FPRN#' *߳V9EYݍ\UbfS SD(ٳ.HF vAܨS)[ ?w5|@#󾬥SAA$Fs**̆ +]LrټRj;`Bj5 ~l: -#EnB1'A1yYa& }pg@C6#-KԾJT6O;:']mCNB:K%ZJil;ɂd;;cvW"7{ ϝJJ|ݕ؟q5_LܲȨIguZT`]F3q5 -udC犵h/ t|}jFNqS{DX]RD²MelZd \Yؙ⫋l*rd6k@MDuTwnҵ)ƌFHm U 3)N ]?,1wuejRdWEJR|U6_@s\$x+J7Ll]yɳ^fɅ"{׬A=gxbk-¾R y$dV3:->fVҪ+Dh`]_*koFS!h QU5KIhܶ0N#n^6ǖ8p-:S'A\3r+Kg). 9jlㆣc '7f3dSf3 ML&v!7MbT*[kAemU2{r JD'm ͻCxn8SJÖPĉN\Em!pZw40_NFao: BR`"y;(%]5 ҁmIoimbXn0$l|?&wF# It֨s$P+!Mc3so Mv 31لF1K l>4Dħb36`MgG;8JReL^trђ4 aՔrlt7SrH #T[Jk;U\MAp#I)PCaАu'I3Lܱ{+`^MyjgY\O5|sa?@Igpja; ;w|a =4~v2A}H%RqEK69~`0܀ OaaBGJ]Mۄds7& H&)IգBf F }'+? 33C9v6xNɷnlEػgOM65y={"PTWȵдN7*w-¸)# TfBךeˏHH9Qʫ]F46Ñ?\#´剄_H \Dk:@r:C1vD W;Hr' IF,(A!;1"qڊ:G*  {IlZ%MDތm'ۛa;5.H!wj S4u˂h|ot-p?#?sCތ <s)&J$h"h\ %H1(˪v }w9՝WWRr͑4Vݭ`u{OVq—IwDںln5\hmQ!tB\-U-+? d%%YU "D[n AqK-Ls)H0x%sNv4-虝uZi)=u>O>:`x~g/.G~#p|}@#049)YMA9u%4= ?6 0KuNOE6^ΪZJKuRөt[8TQ\R1Mn34Ikf+r4<'=E ֌M =}sO` #N-ZPEQi] f"8fld!8JsfJT k\|'T_Eښֻn["C1T>0~weF8br#P~ٰ,f֔unW_jRO 6c5𾌹5*ic JrhX)͊^N~vlT~2f}YdLVe+d qowoY}(il3v|F{)c"J±S/y?xivĤׁ n4I-I[z*8Y^N$>P\Jkˍ ʄ9S,C|Z[*.K(s_ /YQOt a5"bJ ;=6PcԲ0(vr{-9< <^΀!$M]F `}KdQvhvNrcɕKe]^Syk(`d^V)[lxr()? >`> j P(w0|W+ LV͠0bеfzO%g Bv!&M.UH&V )l|51"Xi2~p8G*˶=a@bz)_$Ʌ\3k⺸͊IHOO'd:$uUvú ^8)?gޤm\ @Al.ql?eV-*C7]d*_fLrCD uL 9B٬}WDbʮvmyW:h e97m׵6As7 ԮuNd:Eٿ嫅IG(q&+(` 9j\rT B}꒥HR EgX{`&X^o{u AblL3,4pd|5t% {Yk<ۭ:;T?qUR!txI?_ܼbpvujޤ/?]2_Š u,]08]AThw6=uԎxfQ36fADDz{#EHjGZI'!UC`Τ Pm . Itg0Y/%躡fƟ V,ry*2TepJ*!Ԫθ{s tȝdGԵ$^W3a`Yӝy8G?7 vT!B:0HD7rނރˑ,zSJcB75ظ I~?gÕ C䃾 z* [_$I(G*Il"R w ݯJ}2D ӣSk^mW\u=$i2ǘY8+L+ۥ_%>T _z^l,S sW9rn\leY)?^]ck~@e=חLPΞ {XA|! Ɨ*O^@ տR]7=+THkiVńȰ^ȑ xPiO`MBlǹ@ g#?!Hc5Qb141e$N7g@C'Mðx~ͷAZmtKU.Kn=PX7]*:p!ˁƭ7+a˼KJ|6rUp:[cc.tQXȔ\Nhd\@G:ݕe'QЈ 7}%;(Ɉwz.ʎEX'4tTl!ټ斳=H*`FbrUF+)g}J~Wl0,/B6 'vk-UhI*g]|g xR?LVΟu!iJS;7; Sy`Q:eͱX9 0vƷ |`TS2@3Dִ\HNu?_rsJ~i9*L),aäL5:)!*'B"ɒb\2KsEPk/`i*/g_dVA[va XuG[7Nwaʙn Z.U|flT4Q=@s5fX۵D8%n:/^` b N8DgtR]{&qrFTL.KJ/S䙿;RՖ.e5$@Awi@Vt',LK»PN/w1SnM,Mm?Bxt܇8cCx8MOㇽ~F#);IƤ~҂GjyjQ53,-<9K-Vf!39cKܽ^";M߽wr6G;j)}}h3r.Y}jWע ٸZ" ARD|KC.|ŋߍҰtdf ] ka|/.qQ:Rtc v4N ǹG?[noJGXLnDۯkToz b93cpT!xEGKhjl/m [ȁR [-sg{G"6>WODA@Se{Fi^ұ6?Kl`EfX;R8d !jf;0t%#O@>rn:ĭ ˜c{i WA!A5R[_l:{vfr %Ex㶳N y||7Z[k/ijG/W@v3WtLsqD z6?M)4OZ0aMiY \}x~$0B2#.K*|gbH!6ƛ5u[JَS2\9kt/Up vB-N&xVm6g2ytv bBlxiu\3i} #j Hlƶ 1CѬ(Eɇ42 ;SJ3tCQ/C !4ٮ(F10]ٝ^`=bp8+^$\;^2w!WP.q+̮BK䨥:{xd}TvaKwpr>0,.Vs[yڋ#Rdn͡&&]Sów?2r{ CkMj3W43  Y6jޘ_DЁ7<ʽ'6l-(SEcge.y=!Pj*'<3(Um:><SB^xܔBg)B&qɯ*Ʒ|ay=x/J="w99M 4)HRc7mQDRv/XpȄ;iq.ȍep ˎ9Nzf=a|l0 u\Gt8fSt6DKv`Y iW0ȍrIP}[ȃ8PuJrU BsM> ci|q7 J۶Eu2߭29 <%?#-:57y"gЛ78Ú[<;?{W%]guF7 gd+E=%z*Z4V/8Ah36 Df bV_!U<څ.##f@V#>5 Y|{, 3!LwvT7ƕlF/nwŬ4.72t o8ؐX1"( ']6"p0- ,0=-:9Cm,җT&ϞEhYt6Hvj0fڙI }o!鞸r/Nk*XzVp~['ǨOlTy6Tfz?^@I_Kao-eˁ$ ^/zlNθ'0D.ZѤ oNT1PZ |gW+j2'rɾ!kCKYUiU11jR TUC~`J`tSUյ,o؀O\"POht9F<, 4췞,/GV'jZ2?~H"o^K@®t!>'aDeOӿ$nf9.3> ]̈́81a\-mCH۩]Br qrwAS\Eya{mc#NWA*l;wyTT}ݞ,yļ~A;"p+wռPl N!Dwj=؁ya!KIj #gq 6YXG/RǴ*Y8 a i2*-czyk?sN(Lbل'KTk/*zR0_ {kɗWO(BL괿Q])}BAJk.mrFCHCM e?P8G!!7,Eو󓁾َ!4$wv66(52>Vj9TW0 |'[Yd lק2Z\B5rzTHŴú>{rôWlf4 7b,)Lw3xs!*x7b6Ojy#4vNyV\kjG; 1aAfm/lqZh--x#KUj^Sд;5џB42p6@ƥ i7u=2{۞7L; и(e1_aڢSQ:`lt5rq^낮Ej΅ 7trUgG(6nda*K jWԶڝ$L%.jhHy]|:Ƭ7r/:6Y*|g\Lj ZkKv:"IS!׹;*it`Ol-vbI1}OvbtL)i>A!F(G'`5ު ha}<FWu #R'uS[o-|>.lmQ$udsXV l\\Cu*K 34ۀRW4%D,WW8  8dPҫ7ׄ8"~ #\vK{MPՓ\ n)\{7tuSR#C"EY\Z6 [Y !~b#5u /~VeHϛ;dfT{i7J38H9c9f;c*VkI]5BkK {:o~_4r!.M]pMR<)2r뫭P/f'Fd$#sRGƒj|6 `w hav!PGLۣ ilUۨ7]޳w͙{h.2۲"*u3$FQU}E`|)af!Ysƅڊ]ה/a!f89Xm6CLUUKvq7`+8 ОHB´u*`XqptbIvC^.?dXҵ9@Pg~} G!.T}>ŔGR#7|T:#+תlkn$:gL}-^mb34 _G4Ij1(7[# w7酛/f!sy Iivq"!0{gh MWD=k^5 51kDXQeLq~PRQ-%HhBΟ7%k-&/Jbr| fe}AK؝PIayBo~߉i'?<# *ӵ5mØݫՖNC~dr.8>9d^mᤳ ojZ^h [ `/cԽvG#Zfj8{V)MW怐{G hhe7fdeGf .|hbi 9Fj2Q\F۳hlC5 [ кfQf" <=Eug韹glyP Ap$bucrۣ i\7쨝U YM0UX֭ gʨ3>n9 #B_K/e?ح42%ZԞϩX?)ꃪD(>߬r#/h (5p:~Q~xc n7RJ7xUֆn^7ϸ.U{P$J[Bum"ww :Na&YF2l6}_iƗCp^g%꣇QZ\ezvL( &/V_9г[-_~S$yTcGV/T Ղ4231Z AUREGhhj8&% қʾaB+i|kO, Qo7l# h͒%:]1|I8Sk)0$K)Koa9 Sޠu25H(ŵy>2`ᇈ<(@p@=D(L" 3 1>).ݘϿFJmhm?9X>4Y~7YlA=Q3(0)ɑFz|P90БUJy^,05V=4  3ntިPIU$3)#>9@7XFU$bz(&6U $q$!m0 ~g&,b=onytv4ӵMg{~;|kO=Q՝Ӈ%Xpة=+@8nyW*dI_KE[vS' Zo{b:ZI q_ H&$>BE$`YP9:Fs:X9@R'-$ҸouR_KQ%9D(uw7-3 ]5a}0d+6hr1x(4@m&D _*~leq0!yڻdE/^W v#Q6H XLO5c-i/V,#^Z:9Y`僤&0l]0͢me.h9.XE1xy2zz.us `M` BL< *me=2JqVsS V#@ ML#I'P!cy7?naAS9b=zrP#VS*|lW\@P/^v Xe`[Y#&}P*˫Bgl.Ni^?nO;>JȣB$fBeW ;+">yM[=+T&Ǹ8b36-Xh;9$Wŷ2b3/֛O㬓%ʨ0/">~9cdsd{Sǧ4I&E- `@RMrpsĠ>EbLbM:Qoo^F#ڲ<8Q0(Jąn[wQfu arJ >&6v#u(^*nžT+ޤ::91,ӫD>iF*ˤj &.C `5 4%}ӮwY3KD%bIiVmB%]ի.[4 KgM6"yGjv"G?y#i&˶cEzu} Fy= 4̻|5uudUܷLǿ# .-;^/)z[+ Ua6 \ct˅ ؞XY/J $$cWJ@]!!FKvjԔ|hr,ATTI>v".HH2K\"U^ C,û$/iB-{>384o3^XHK CŘYY5b|y| ϿWڈ2KTB v1\3Wzo{ f$ ֡ƆԄZ}[DIT\{=CD!]l%eϹxXG+eo%E Z}0ڟx^0sԷK53l "pT^ ^$9Qyph)@J4t?<!b*_,\А-.iLIܛp2.MjbMK\ᅏOUvn~Nd:ŁҮ?ˍcS9 sѣbl5z4t 13ōukFB P?'6h^Zj]P9cws(ưB" ;/ap$Mt*zSfKj$5t1gd*zYqɖˇ˞E)Oe Ɇ=]I>?u-ek,ҹxS3Mݹ` yRë] u#ڥIhJ&YKu#A7>UeT2BwUH`Q@+nQ 1Qݵ1|ߒy@saDT}8JsەSg+p/FpTK/5d #[b5 ,ݺQE@~m6EGۃ[!NN?46ʼUEV %EG`q_">55[S?_;P ne?zT s^(l}Kb%fw[uYEK6 uӽY.M t" ޶E{2 >ɑ/߆)B8%Ҏ0" &RpJ~~6\M2KS!~PiwNrtue&O+po6/Req6IEyR0gI$hm{SsY5k]y41M32`j=t՝5RXz[Wo"F1L0KJ?v/2D7Ր/4ŊeLhx4]I%ԏ!gԇZbDq-َ.HtW1_3[NyҦWz1k''fg3&r|~hne=}9:?obźHdrƭxQs_ C:O8m#S5+Ż'HFO kD$U8.ݖd gޛړ ZeKDOK2P9߾Hzk$]DڜEHgsZw"9͠{(k8%);d_kYkqxKUw\Wk+ZߐKxÆMzS7d=6.-&mUW\ n",Vj>O[ # Sb6-Ǵ_N4eoni)dW*c @0b'bA&Wt'?Lܻ-5\VlBK)b$.XbSу%CO%D5& %)`V, eؖ%rdBv]jh;jpiY)ƒ%F4f&9?B@!g HOBP W'.j@X:[/1pGjVX#, l*Y(fTOBօԹӯHpcQA!=ŞJ~XztxJJjEgC@;Yv`GK+3H|=,nDj㱝OƔ/k@Hɯò6X/ύS5Eih<XplQԵ;%@jJJN;M[#+-lDSߦWSn䧫C.(p"'9Nk+M'J4f]ڃ |}cஇRfk7"b$l$]fZ#nk#^)JĄFIoX5GAѩ͜O >f 8s^*7A$ pV bՙ.tB8B3Aptͻ}AoK3/TEڵnUݢq1 wF݆8S e*79k*(qȷ#ϴlvUX|64 qnJH`٨3P뎏,z2d54Ac oC"d34c;NәB͹ݿLx-2DD2@Qi 8n4J9`3Up۞M!-ISh]d v=']CP[+P)Lޛ*@v Q+7}c埛1{׼cYy)q+!OY[Tp?nXo??xYek/M\pFШ& P$o@oxhv! sPu]~8S1+yjv;_;T|^y>'=V BӭB>ܒ ^"rhJcnr*(›3[RyU|ݰ²S,] v<ӊ?_,8ZhayX8;>$C)<u(۹)H~|ʠ4ܡ(ܧpSض}.)ey,8Z/Xje9adfoonC:JfZdYm\-J&21ԅhJw׷&5FCW1(ySRsUmMBk,4.-1B1Ϧ9d8My8+1p"@x>=-]W_,#Ī'nW 'Q=țEqoyS(m}7d]<0Z!:x\obArTR({ŠEAKf6ƠtxwfS I4q>OL LC:~*!8nA@UoB< hnBQch}L2BpT}dj53͚ˤF(k({0Ƃ T@NV1V[^%- w'dmC C9hZ*5>qi ,Y*{t?:qyweA7CU+ܸ2H=1rY8Z>|r?aʧ#|qb6m*Q4y4o|jt^r->-?xp/%/a.'$y?Tl7H0F A͛ В^ > j5>l9͂}pll Rh,m{l̠JsrHG3ϥ(f(0a覌L^\=/;wnδA?Ag$ڌ`I816V8L IoN8Wauw/S*UoBg$>bG倵iGg"2]g>?P 4i" /Z拌]$RLBR23>\+&Nq?S7GL̅A1YϏu &ϖ$Pz,  P$Dv'YT&%`FܛU8wڶ W?艀lJ> <1OKK~b 7Fk|J)@FYt|Ti];Gix̀.dTrDL@`oQPtzR;C[_5p0|um N`t&"{ni0w4{LP:8'|nL qk6y:yU;oTH攬ڥW|c( 3| N00nCqe>8ƪj`;AtQ`رlR4RX;*Է>5%/ kbBջ7 z "c-y[@S"x:5IeYg=bKVOYgXĈ 'jr(B*Wkiа'vU/[BᘥС+v7' ;/F*Ǽ`^w`^uJ²Z.F]>/N2nU}*XwՒ@&ʲ0pPˎX`-teR,J!A깚2 JmK]ep5_ڮg-sE \_$tz>_P&2vٶ n/Qcw܇|IGsѷ:d6W[KE봽n";o8lM?:FȦS~nC_:FZth^߸> .S>8ęCk<{wC1@~u4ƙ`We4 :%Gpd.'L|!f.cC,s=f:ORo#,E5zs(+|1)]}6un$%&`CO5KmZ@Q3neoN Wγ>,"LLjZʀ{AjK'! VHSpI)B26 8~N);njUC;QÿzF|+IAhG\~#r9QXE 6rn#7\`w/,f, w$i] mf:X/%1D礅]Րk&1tup>aԳTSn+/ш $#bѭ,~`u^:8)\wqz;x$e:iz364U-UDeBR`V=c͡rhl3l!݋~wK9I[NN.uIDRGmӴfZz X{C?)M\&nܦ+C'( 4a)\piQ&4ќY 1̰rN^K(kFt,Vj60ŷAâJv3[ a#}U2HL(3\[֜O$PYKJqrL,AJI Q:O>@5qѩb/{D)vzuoR(rS+%?Iхiإ%?I[o{'2EG% )guv5AyjjEiLX@D3 P!~g27W9QT(Ӌ Q],VvMihBoCtxq-N9J Ňd+SUE%Z?egՉg( `LC\hFiцS vxI\^ 8 * '-kOf@>TMVIRπ˝AB(w2vH ^F҉0fm6|u3|f7n) Pu zR2> Yva%dDz ?L%5T6V.=o0Ad7?WPޢfle:+M7iR(|1be@p43ok^UqI)?Ipn\*%-wٟRHV e1S/(jiಏ\*H:NK: ;M:Î_ x4Aߊ5B'CiՇ #!b#`PӣeĤI^y?}9 7(\m`Ͼ(VhG`/ /' kuzřj7).( -5Jþ+-ߟ:\h-QkCEtcv,-K7X`2oMѪ< XߒH駍iТo1u,~ňU:VUv[gi] "SUy:?1[4 ycl/J|rz5WO&v 'Ea:| $2wئDj+2\#vUO7ig1S{,J?V"wAI(Dp˶e/thR ~z۟G' (cwZI 2rE8Rd̺/@G鳉*ex,H@~? -{@5%?3n7f.ɪ0LeLY}Y.Iӆ=o ^0T3bv]PYl/í Kïda$V[bsll]*]ۈo| 3(#4I>]y 0'Q.aKpkCo\.%1f?\W*:"NyP78<,Oq uJvz;!fDuUkP&<FJ&L+d#b C%l%C/DXI騌*q} ;z=̻bC/Ret͉8|RoY7Jg#gFUa.0#Op]{ ggBI؊NF|[?$l=uřX^m,6%q)DI֤2C@puo `vT0/!rNҭn?M?}(=Ydu(IàTwECZ0P O=WGUCuoG_)֬ZTMYHpdq5t|GSW!϶8͉63(VY#i8k\9qP@adi mx!+ÑviQ ,Dn$bw@ELV 7_ f=bi%o_"m _-Mj;lB?hbT;NwUW锇#~^ӪSU H#zvoYT <fޕc[ SUNCT]4͒k1 )~<3h3h)]c؀v 2EKz,9z3N9z-ڼN磌 .pS/?J2G!g_w w(,?y)\s2HfüT:a~ ,fڰ3h=,-o[c4V#I6z6n|6 -I Qۖ8{lq]ELj. K}Eh[.F9{-ѝ|% >9R%2}R>%cn!SW0<->|]xDlipF^CJ:d UdHJH>_8>h|s$ʕ:5޽)a .׫PW8Ev,Z+\BF ֽh~b" %rPYBirۗU ͜jrMϔBNPlX$4,s ]ZZ߰eW;+O<ՑJ]J=5Xw)Jqv!GXAS.tV|?e K[kfg6fZ!4q4|ǪԎS{y$ dhGuͮs+v >^qI5 @? JoAHK5뻖,\LQo0g~83`[l\=  lM\˚5Ik- n7. ?΋SP_ߠғkRa+: 8yj-v"٪RÇXMԮ7>Q"*}i¬p}X8CV.؅fߡD?S/p!E#4v!Qe@0'o{`@6[T_fS{ bX% [q{X#grՔPRBo@ $_.IQ (C PIlP{ćh=/paV, -;df69&V8DЗ<5ѝiR55vpDwBFx=!xY 6}_b*d8L]KQfs#ځHW sYR4QYivWûI]^ {*ҿN0-rXK3uPvU CNe!gAY1IAfE,>PM{* }|Ctpnp⍵ƻypnٽ5jٮ \+R/Fu/nJv&nX|ǝK暚Ip o"ɥ&I [:ݕIJ5#I\le).nfs&`N?Cxhu\; $CסIʘrS{U} 'nh)>wڢ|&pf!ֻW1=UܔS" NH/ VHD\D˛AjX(ub9#G:謚 8HKJl7ҤQYis2+\0^iI5 Drs*>A쿗q N-#\Koz5DSsH6O/])*cYp"0lf 5}~u[?5'W"kT">^dw4n %ny b+Z!CǛc@OBB)~қ} n`50Z 5H,}'!-(}u B$&8)_<^uYT^ lB=:)7:Ktf{:ed=%3팬^ *qiq{Qϣ3;T6 K`E&32$*RGhs;u\"gs.j *dLezȴ B Rftmzo-}Wϛ0>l=CihN[j swG{{a!X ?%^GJ ]*IKjՎÄJC)003-}U-DNyaLuG#:-4_Kd[xiZӼdٗė:Č4tdB%GiyQ>v18 (h(`U rkZ*$|k&n6W?Hikmyl3x+q3)i frTKϲa6 :rbe Uhrq%f;%)h.ט_j4xarfߧ>ք@LNlmUBX* s͈N_!:+콆wdR/1eOuu κHdwDڬ ha2Ku,80@3ZAL /_( \<:T% M%)wVcd]Һ؜ b`~y">B{d<ɋAvubB蔓*m4ޓ!b卌݆ReJ]}H>L XS4 ǘ^:Y+:L`Zm=6d!\EUHmYlhA7| 7̳\>U-hْ2H/;>sϯ9?dyʌ_M^7(ùǛXbic*p^L+/,>:p hI> m)/\鱵?)Z~js|`ſƁK5hoKmM%fր[c!93QZdBG~QBE87 A-ŦSS_o/a13>uXSn駖1mb_1N Q1 xe4c|=yD7rAh~" 6 0}?/s>Rss1lSH,0!A+zFX_14.vZqgx (Oex9 1K-yjL7Ei:k{d'j#h:xZ==He9+UlgIπS0UCLX<}=;L +|:G\l4jȐ$F ;9;JR4pKRV riHF$IcɈQ`,zӫg  h<-!=Q?(s]'QClIGQ{gζqeA:!;x\z zhzqhl?ؾ;PqEJl4-jBd3%'>T]IF`zI\ӒEUKwi !%kI}@unՑi\udCSp%sj>MJdpt#䃴k9l@B4I+AEkM'&N@a]AZ2;`(샻_S4uh}U sA5荂qT_Ђ.Xk:'΂p9P鬮:=]]/An{|q]{|F{ {$`u)FAc7\(ƺ.F8 _ A,8KYV.kjJ xHC)W ^VbAyp] 3x3:z܊JvBX!95,ᐒ7RnB頻s>z͂)NR/Y4H#ԥBD Cl=})B3ʧ\v!c%H \1:}3I0ԯZV UC LLza|ŘA;I0GhI^xINLdi@}" ~L\ .8h.5ua]*!^*-٪ͣ Zt[`H49q\1IK--"'(]u4A'Or)[uh/WOd<~O$bK3B! އͅ~W0}| 0VI8T₷@ <lh.hD4T'㐦O&FPNDMib^bl{PIIV;H+6ZV]ɐȎ1ˋ=2j"=㒀|/S f1ca~ %Dْ5Ah趖-o)T$m]jVR']6޳OžGڮ{z̜y?8ŀe_!mO/ &g {<3CphY ]N'LP>"~a]U%-~o+" .ZM7dB; g[È<3-ebrnf}nʰ,q)2GI.&E;o+TC}rf<@k9z$*9ӣ;5[ڞ A{"#ҐՒnj eT֎Z wx4ݖB/} ᢬$Z|Ý2̏B6-$[bo}sj R˅f(Li NYבj-6{;r]CW pfF 6R逞I6י+rMO;zÚ1Iu4v ˉVk>Ao\W|D .];=C&14u?!{Edt Ov` M>a~tHRšV@ھp??U|\6"'| #<^å=S~fCNre5G hQ`|NQ,%>H-.|OlPUIǞ a B˘U)=le{_L0n@.ߤ|h*H2X@p&va#{w׸FN.- I/gīaaQBgZ!,eVn} dLl1יI!yem5=`K%({hu d$9AƸ*!'NE"`UQ;L%@: MĬk%Qp_Xnp!Fk4KԻ=sl_\1Pz2f<=/pJVAñU߰C  fVkQa6 ' B}Ʋ >џمQd%&bAE8?D{t 15,DOqnQ ?Kƪ"6w*XSja;N$B&l~9|xADG;3D±;m6%_ QHڨJ{8Q8NկI+Why*+"6;=R}6h3wݾ(^($UնcJ(#H_mDR駞{R4]OaY }_pCH_8+g ĩK\O5j4縐."iˈ/D46K*lUj O}Q2"T F՝L[=4Aq"=x5F}YչQˇ+8l\셏M& l+&Iۮ )wW!9ԩl8BH1f6ί;!|Rb[ F=ڂFsh%ekLGadLƂ[1q'rns,D(|1OhS~1B~ OoQ|(/E||3ULV dqIRs!7RL=fx'ynSWP磫& [{z)biCƇ_$ 6_~D ~tENhق%LJ:E|X=pl"Q])םgssW4kp[M%㷄.v'〬uh)^9QͻILh=Q]p[C!Q001r^mV[k7H:Շ 2yjO!dAwZ%B%u/HaWME jt܉]'fRk Jg"^7=/o]_p_ o4#̋!ՇZevht#"ݡeG׶_+- b)&92YyY?]~kA%L䅽S>i`lbl~:wL̀JJ-E5yPz3;R( ]VдXCڋIŒΠ8>]l~1i_]ep؆8Q$؝7EFx"u)#A=+A(N~/IehHI/s*D,ΟN y~/ 6< nnHssQݩm%Qf QaqDStZ樰Cn PoYmoBkX } MV[hDZaɌ?F7rRkMkձ?BQ/zзM:觍GnYŧ X,e礖βIJ GMCm K2w(ˣRM٠Qzlm~SۚK#RZ~ri%dzv]+Q&8KFO]9~߭5N49lIJ lMu@ X9ktdS~i,:H$Ӗ$NӢ~2su;BQiŃ*WN֤K|,cK#@(߃꣠ hM4/*6꣓Gϭ'09LDp%y㠳7w7СiQYbZ"Ӂ7H4TCȳc3US/|2:8d?9wjELțn>%E+m8^}؄Ɛ!Ppq/q1.!,%owuȍ/$BVrαXPȯ^| J2*i7@V>8RFqF `6:Pe3zMr'dw}xx5+%WIgL,aSswMWm S/T, ʃ5kx@ngpǩ8YXG *Y٠F(rD<*8w(l#B$k,mp08ez%\a0uj $Ġ+t3?1eZ`61Lgxޓ(#y:+#]lozQiV)Rn-Sb0YMSC}#\ͤ?QG0O6nsu}XGtsIf61h;ULb @mjUZ%]wlfO5`⥢fti,r@Wi~{@,M~F 0xq1Shǩ vTuC'X?t, N<\4=m]*'D!mM:/+^)FB5ڕDN%ceحK<,X ~&%nHgj_$e<~$ay:y.8nZl>f2S1eEX׹\Ceq׌ޓB( >"=(,_mXk$`/gpjy$(bC=a]å] nϛ2 (0:6 Ӏ};4QQ3)c#]扃8p-u!}b[ɎK1Z˨rQMg 8`Apf'܇ П &+vu -nhxӌ]vhk'):w]XW:})̍;>:}h4x&Q|DBO4ٻ;Pg 3G2_H+w^' O*p%mvQ: ܁ *6!p‡Qh?k[q7zwAK"8/ۏRhleM7mr9F蔪 b`N$Wafc׳#׵'MM>]yrPyCb>}UNmqEӚX6lnFj.{3? `4&QݯlaNnqRb+i|u7#E+qP sTI =AiEâ&ȍ!Nug{ vp`eFLÛ G Dhvár#کHbqwWo!}C~Hgw\f_1*0pk@}=0y]3'<fv C$Í!)}ќ)lh#|\eiYBp HF~(&5DZ9^HRBYx#m|`cTU(g2T'`\4Xfs,Ųir'QIǸB$JˎDm}K&?"D_+ )YBQNM}wΑ_J)RiT`dKH]xЀ9I趙8=z _!T P7YExpQ v}=1+톍m+AD}G Px|$w޴gt>O2E( ݾWUw 1+K20 4Rc ໚6\k:oFh[-'dkzbbzboԨލ,c8KAXMKPt[u^Ҧjִ *CY#)jaY_T`O: d)(nXU_ĊgEǽX˙ʈF޻x>+2_0SԦ?Rr#@rߙ2c}g=TH2)ؙ 飍(@WO S)ah#GOl$R{\YFiE8cuy̥, u#iҏNl4Ery{y2; рGzu-JȈr~gq.#M^ .dW,z.}u?El[ƮihvopU{Xѿz]`1]P2`L{cş?t;O,\}YTޘ$n<@ʲԹ*͜AGȟD` \IsN]R u<5Ah_п+i?_"/n+JE}Z\hqy*U#:\‰!? Cq {Sz9ڛqS#?O[*Z2%^7Fl+&P^?koSрA׮4Z=uf;sMʍL5oŇ iD0yzF%gze''9܇·rn:-O[r/lA:E5\te>Z!b__SJUKQdrJ)\ )M%o9hWo638V%ҚS2z/ Ti`C`Lr m\*^qj׳ZQ~$蠠85Dt׋8~5fD lԡ2*, :K3iӸB{.TW}pBIH*|Qwn*`lh%48/ S >&[O:-Ѷ5T l}$#t#?PÚVt[NwGzR9_&D)2[ɠhp kGtH9=S"_D3הH7l}0O78`6$o;(0vDR'c] $/j`%DR8c >ھuA ;˒Y rrX,_6gfs^4Nor]{:= g:1v:ً`^ݚUfR'j{%~VO5}xPH%B@365uT"ʀ?_󵪑1Z_Ii=m)h+-;6~f[_NSHj1Yu*8kH}τVw9ͥBG&5-އ3[KGf o+'-Q(Hc7۳Vm0N.ad5M|SÍ [-um2 FH Z7:UV`'yvL4>Z)*! _p] ys%|,|2ҏAn>@I*fWz&厯O ot'N8 )2&po:Z C1Ze 2؅3Vo BQ\c\d8 9Ee4ȵЍCEp[\u*SzuEbO_shcA.d@~GigdU/w5+ў?PTD|7 XNp{xZ:Vm/V? zX.RtuT%g H4f _`-{a7܂/˱ 5C†kYniń.v(c3rSؕڼ>wRӘD8cOoe[ΣI1߫삲|~ķo7ڨ7ȧ <ʷv"}+E^qq'GUR6ۉg)K͒h6{!I!*j,.|髮fKk??WhP9z32\#ا1[Oti$mAEMdWC#Q؆I}+ސJxhbgG^(X}t\;p8*vnUl2cDc*KQ5NѢDr;J*mtmBCh‚q,BRh PB0]1mmzjhIσRY׉PօAm487ՁT-p\6Dbӓlik*bφBNd5DCsDcJn'2͇-G"߿?$J]OF`sOS..#iVd R`D`UXPCPȁJiip-!\~%Iϧ]"fgx7!r$ſG6PHt1=U-bigʊP՞Z =B:5x-83Zj|.yEq/NδL"5Fz_pzx{tJU .#T9dN'B-X}3>+uZ#0alSNbغy垣#p-=@pտmxi2FKO{ïWUvmS賘b7ڴ*RSMñ B؋I/04*xN^i f/::zAbWe7|HDV:i^@#{s&J,g#Wo}D#k2qʁQXUrMUdiRVxghk"ξg,괼dBk WFzT ">5{91V*]ʞz{e&6GOYu؎ž"ǮB8k-VgB1pODg7 :M%!`k_'9Ӄ S,(,np.94|NTBGڼY97O 8Ιy}#KT [$ˆD.bg75F@f39 4 #7|-!]eڤ x仅*H aQ6 i]̗F&֠ȾϾ+V*CJ,73ou-gvGR22y޺0 ShSKT 3}"=VU!F XX6N sS}5{i#iw(5; vKIBփ nXtzTR GOLi~ qcj%ڜrp%ZVm:6u sAЭ7Yq7͏~ʔb\;qdM4dP Fx4;!b<);сA!+L见?l>HV(}P9?*ѱFTx:(|'79iw$G5nSE+u/t'N_K"ك($/+<^꾿Т/\yC?jѴńZ߿@\{cːra` ԍJ- rcr\Cl`rlnw|cV$UG#>MC kLn((o(=a՚T*XC0>*n}Btg=(i'(&UN?*0L29;X)H!: ϳ/e± dHK_8ƈ1\{%< ] S;\n'ƹ1<ހ6tͷ/&zyKr &4UOs Yݛ4B'I 5?$I{9r!cfD`u*R7-iԟ:L^obhO>j72(2N%1%ŜU@@0w^SN)O̎/L0Af`6Q_oVZl0[1[Xv<ӁB+z@5IY%TS* 8%~LM1.?f!\#uQi<b: v0nWIhf0 ICx.a級矇*2Bc%I 3̢TDL0M;v_؃GV߈bh364 ɼ#e!nq<#@ XRXVW$Mဝ#R Y*oc.M]ge%dv 1?7FucAQ2BOxDPW{}v%ـrsgrg"_[[=FjD\hlRm?XC/>/vq~ŔeqsT^C'{C*_~;,4x_XI뱖vvXoBe ݕzUQ*o!^E1Sk%I/M!Z2_Ƹzо*8|rŀ`O-?_]傝ંhk O ʚnK]W^%#`כ]ݡ*1HXYoÝٿF+h[ՄzVVu=.'sz"M/0;=cuMѮS]oDsRug++t&m@›Fwl[I4-h] * ʑا(!>+sYQhl]S\-W1 &)s4a#wd;`Zth;0rjJC#F{zrKٵ8eZzIJRx23 MjzBZ͜QoNYnJ/73NҸb 寴i'M''?eڥ;ה5Ț /d'cPGM,+ԦJ,O@0V..—0Ox|Q$>('l٦e&XiOKQhn]ޛ<1#1jÞ㍝c_}vN&+R[/ 0즎SqDVCͺ]F/!|eJ 'Z^{3S5;4ҩE//qF|ع%/?-я-`1Cqu ._*~{]BQɃ4dl{>oj`eɒ_-wpD=וk_--KOvL_ ELܮ7FmkM!9[7/Hlzx*[h8]r[` {PzjcMYKs>6W-Q`MΛɎ?1+cWb !繰?S@8O2zږEWd#nCo9E02T zQ&Ȓ&[#Bf*(R99@ AASOJFX̖1#)&.|ll0~fYZY;ޏXU_f˕CcHٰhuPm|sn|*`n'sviuJ^1Kyd 5+L-Ru1AnN"/6vk#ecZ[bd|W;U<7S_] AlG,Q#KtWy QC"POaV'dӯj,l9wmmi(] ڊ]Ɇih? GTv1Yv8r[jrEzUޅ`=5ZWga|y4_DA Vy|;Z -̔.bj4 *k{C5hMtP܈4kjŻl$[}g0>p{2G[>cYNmQZl{@?Fp? ;a#{\PjE%|ǎ䡑'{E?i\%~piC/1Ğ&pwjڭoZnn^uMWk|S>-f8R.Dr˜-PdW$sV>GpD^rͲ\F|G$> Zuf`&BޑHp*x٧z\F{ͥDmsG~ [\tih]P]2:*)@\$KRqu7z]7Y* |eϰCWV2$G롭̤. 0(!2 ЀbFpbj0̓`t%Z̄t5(rU6ۘ3usA襵Y-v_Ju%a3&?:AۃQKsQtrmSCᤞNѻ6NV$cg,:ɀ,э[ѳMB__yR*(1G&JBcU5 |HFDqKO´Gb؅&f z @8T3A݄[-Z1_%2kWuvmZ=+s!ك 0I'g/]V/TOa ŕJ==R3jXQs1ʞВ`'W"+=(䨏lMfc-}3л@D`x3ܟ.dɁٜuQ6`O Sދk 5s:P +vJQEp~FHeH8WqD9p qܙOƖB}M`3}6Tǖn F,sQ<ы?* o@PV;P%W~/fE3[$nm.Ο/v Ϫ^$dsó: 2  Wj <0743ݧmGQꐍQPq-P2^w[@cG/+dUdA%t#.\k6'mZpgۣUo +"7ZTٹ eC\Q1^Gԩ|/p#%"6dgz-,eeôHoBnP>/ázEl2A]bCֻM6.0dYV${!"| /|6ZR';t00pV*%53eȇ-otLY*܉~@~EvdYGA% Bj5>'!S{L5 9j{Ն"QL1a$rr}Qmt{> ӈN#ʬDj|V*LEX.x5DnJb&[ǜ%F0%zDȘabLm "ZIL6DJ8P"5*Je[qU]LPD MppԽ<U$!A(q֚߃;B̝h G}Ï~Fko|ac-6߳cu?_C F;}64o3ny m]f`wtܘ]=|K˱L:F}u>P}JHe;.veyR,,,ubs,kFsZxCB7vF+ YT}EN |笄By0 s$z^RJ7ԕea;(JT%oDQ3B>+LS֕9#cl/w{7n12]͖m8Ґ>Xu#5Y֣{`mZLHԀɹPQ1 }sJBF9 qI.uL2cj_!^<+ qծ`\~7I6)Xf:V4NѦVOЈ ?JV[SBچ^ɭ](w OTM.S3<.:Q]b,2@Ű"ݙ,:FxÑB@DT6$ΉY--uI(A#Z̆'6+0eDBqqUnx1 x OPjCi*󄠰eg4ߴkG"i-k/Vcf-eh{+XYoK(bٝ .s̵ik !3viB[)g-"i`*dh?"tZd*Z9%Ԉ.UYY%3$Xy菁Pa)SŻyyj;.Lpֈhf2pGϘ2WY@b+ ,uY|F.5Q7 @V tj<\SPpk KցtF ғ9BӠ7nn9/C [jmj"5p O+@w~v٬tĿ^2_l2$Vl _GmY_:9$xJӔ-p*Ix$xw P9V : rQ[Awv&vGdxkj 6768gڨazhdt,%D&=|ǖS[@)H6zgZpt8?IND#y>{蠟T'#U1*4)Ji摎KU i~Up)U4T vS;0PD 3sq|Jű*ax{YH7ZL.ut1Bi}d(}77jAD]C ?g u`!"L3dHPDn|P߾jM0h&|}z,.+,1O6-PW}IFÖ.N\zh1rX.\mg?|V *=t-li"0 e1cx=(A?XhMht Tm|Vj8aS$-0坓||t"D\ΏgR 0 9Ϋ@\x};YPh)Upb&?tDzFS^cƘ&$=74s컼|L7yV9c8+ձ6Gvn/B1m~?Pk',oFa3вDMh6S9ȟ`AXh7xa#tWzħHb4 ]:6Vt$0ќ>vjp@2kQoIyvf.騭BLk?|NJ'aEht<gӂj"VX5-Y=~ $g~EDR\驢^tO[2aR} d&T}׮;v3ѯ>r4G2IB5INd*>`FN 7k^>Of|mI͈L?`kc'^B}t;Cjİv>'Zc/g^ⷰZԊ)O˿&=nIk[Fb 7^Hnn .[^u7I)QbtqXr,¿3;?~R9uStn!FKG=MAg=']%>nΊsYiCv >j0]F^0t)qmg͞ 2Nx8O=#9Kyx߾B]ljW]7OA:%y66~ P!np P8α΢7(@d8G ;|7{q\تpY):>; N")$bTκOɩ2mAh Ӱid*R`, sWT63.H)P#7X^1Z{I魹Fzp&W4D|tR*elAشS|tQiQv46W7y:8_/<}5_,Xn G_\^<ՄljAhZw,W_R3 X: uv1\h ~F5/|J<~#&.K+{bZ|4;;ޝ,Xz-ye'fjN2!Rvr !v5ǤۢS`\ @s" !e(Ҏ!J]H* 5g5\ cu|g`PQ920kWK@ebH>v9XL͇.Dw^ Da,хe4x_/CJVߵ/9 o2JJ^jL0U(m\K)xI9bSO[Xe6qV"Q%\>ǘqHfkt.Q< ]Gjr|`49޹Z@#@*zT<}g65Y4N|+ $zMKæʙqg,prd z`Zip}R&鄖nvx/G3 ]K߅7XD0,jp{IYQ7,/.2Q(Y  !Zqoe6\`ӟ=39Gأѵ8k[]XzSZ d럌s xʂj@MႪpzmE@'a,Yowa7c^ɇvote 5BNT ,8f~S>TDN0 `}Dn*J)M:.ዚ-nuMC$~NaTWiā1kҾrMǡOloooW.9{Tk eIǒوsK;%kNV,07(!GU F}Gev[_4%4U:oդ/ΠnSktNcvONxbݷh@u ˚BBF 6f)Kz:A?ȷ#)xIնZ?Jp:GD+Kc6:Fy@_&.VMd +^]e+A\= lqv(T/<>SmR~*LQqF_04.4^ 7,Dr֌as6nEU1=m6gRcEnSdgI"CόރohA!u_Z7L,,;+1zS=ޘќ~*8^/֗{.*Bu_7wdu#qgx8؞ S 05iNڱ eobak@}@dvb ӯC ?m)g?g2 e;l{Q)KȲ%rg sV\|5^ f,FE6r=1HwQ~?2q$6qzX籗yգkrlJ4O 6^!zn( X-UY? ]8йwMB!|eU4\'xrS x"N&y!],De,T6# js`9 )|<=SpqZJf˪AנQ+ܿfEq_4׺(fKV(2?wdU]-Ln H(8%NP'=\hUEL#2ġnOO=,0~#fQkXH%_pj?Sş8wlaTx,plݴƔ|%pE{6d} 3nd,ݓ::jWf ]xhP5\:L2k˱]>זe7Y7SIjbY4R;ɛŠ |*:<=oqmڇ[xY q|Iɇ= wOT{xx6ճCLts"7b5܇97Q`1*%K=at ?;~\?&jB>|&컗xHou~O1*l Xd$-\z?w{@VtPDƱ+&Z(+L[7b| ;Zԁ!nD<\ Od0qKD  g I+G5RpiV;]pu|ݼ1¼[aiu^ ;Ϧc\0f{ˠ2H1WnD(az_`H 楀"rx26ZЖ?H˻sY$\ eh 8kb1eؓCCVD#/<?ZõTO!-m1ŖD$H+,Yxߛ_ [,,PF#\fCb:xmp w0F*4ڥc`t)\-*3SngEDz|Kl 2 |$?jRA):UB V[.~|ƴs"zvQ[93F!P^ 5O6P6->cwĮzJ璋o@WC4p - 1/ ՗L.`AD?ϋzwu9! 2\9J0TzxZ~E1o8gSYƭ 1v<;b6$鵆~>.i |S=jBqQ ZaG NedWaaQR0,,!;A{ͣXTɚ oM3>-(k-%iN<12;陼봘Lƃ-Q^>,bKELA튱}R|vL A,]]HQ{Xl[G-0+1էtGJ&Dcͷ`1xHӯ8_&yjyK%eّC9AíOȻSC\I8 hGԦ4xN+L\ w$ HG1FR[ybQYJQ :aP{*p>KUH:8 UCq3W/Z56RG@"R9z%*J1{5[skzl9MlSp +RrJ!+"N^6u8xl0b$ЧE\ҐfGsC)N-鶵,i&!8psC8v]pZm C' b/$\o@n~bB@ t{%r#=nu5O|坈/Y`Ge;z;ydŰ;li"9oV9l+;+V4""w.:S.?8N J _kڂC&/JqI,.88d(Β2Ҏ~!I4\D84#{t.Ta 4A,H&ۆjJؔW;::h%T_K ݭR=}-I RTZygu]nWDA$J'/, *"Opɻ(hV ՜rW HjgnmzR Er{b=CCCY iR궂]BG*U5{?QXy(xoUr{[szPyx\e"Vh f#@Ly fO/x\ .E|9'́k5HHϻTb9N{RN2ĂŞw@=A+Qcq=ǡ8qLH#SG,5mliU[ Ue]!@rQ䣭(-biȦAiDIHS"w*gR{U0BVN:fsorɥ^w{˘,PT0Q >Go 5;_xx"c5+˾TM披 @ vM:TLGOl*R߰1(s"7=8ztFa`,2^ iR/ys jF^/vIQH{h"R?XsEq!F(9~Xi[:W~"L1_rs L[щhL:X$.r~زȹ`ᔁhM@N\;@&V\ԞTnVH;.I$ud0M8@Y 7>_!3[;^dul;@R?ם-@˸!{\YwLhnpoiaNk%rދ%ؙ?Gr#HHF "I"dL.C Q?7芌K9.}!tQ`l('g^oPkeg[10Aɴ=kLDThJ#I޺(au?g -VEHa|st[r9Z2dܑ 3\&/]_u:bCu/cP:W`tW`-Nkv'dA 6 wDA]"U9hqs!&㲼f .=N5[v? y u+`-fڮ;TP@ }.X~ˆxDlTmVHN2rɱWmUP0ljB d&r[nޥstY-luLgPldoPfObqaPG+(eCwMB}SpWuO*>V-iɳӏF? /^QUPDks6gJU7&ͳ w]Zcuotߜ*LMDzz|xQ;̌%NPv9MH'xj>'!%i~NlmXa,.]֛3 ySw4ڈT7/ǑZW )]:F%@Yf=H (҅?Foտ_IF`4oC )-ʈ)pxSS+/yWk5 Fo g(*:/ia~} sP-, Zts Һ/ɟ77iwLjyѐv^}!1\|:!Ejֱnx@^GJ!gǩ|6XuݧT|! @ufkd=Fup%mע #)'[E%k9i#(I]wv-ۋ>Q͈7qk>lЎZ% <:h褷G|wU/Zć׹B$zĈ]h]1A0Ms{nS$yOXIF`ViOi|T:ZA Mc*) oEz @UaWП:55 Nl498K|EV%&M)::yS#>O ;:子p>%|te2{ Vc^kTa?&d2C Z"Q@cƱ1ABm+P\q< gTHmϗji@bYqr`BVFNjL6^:`?vhSRXpB|).(jg+;Bpv+AޢK+_{VFU{ޙ#W&$ٍ6{uBLkhM)Qĥ|Cw1ɞ?#xݦ]M!O)"pRw90Em:HZP[afb!jjIHdN`?,}8%W/<)ե2!o;Xs^wϡo,1lN5lD;uu*aEvŻhSm2dy#4JmD2is3LԴ4n2!c069~T5NH6[kMW\B(ec,5z ĵfqcp*tw? Hs;eݎ I=޴YPP?oӏ"m>#ݡ1*|O4虃/˷3vb;NEi1B+ٳ:ർHDPu"4d_"'ڦD|}1#uLW.Jk[5|eQTmK?_Jt>缿κ()8-ߡV_khtu=skzCoWXlQA|ެۉ(ceV|$|=:Xfc Z`QErnGЍxjkȎr\*gm 2C eHJfs90_p(dGVS8x:w}IO1:;QWĜ,:}]J/ _LWtӏ&U6/kqfKsG tB>ݓ|h;|"8z.BOB1E-7 ;ڏo'yMԐ8H2kWၺNHJV1k)r;ցmbt[Oﳂ2˰/~AH?CPת-5 s+tI-=Bjм:<!-[>{kffwCo/3`>;&I8$):j;oJ#FHLpX0XG!렑Rw^^I9.!ң[g,h"+ƆL= הCZTow7I8wT etOFD]P#1齿nw$c>#i~g RߘbWEJ[ ɣ[j5]yܟj1>N V]Pi0| L~4Li)a~ BЩ\ֶpnxNzUf{8iYa,\U&Q I&xp9|Kh*aAA?/{d,8F㱨vUئlig(tkŠ po^yj4jY88rU i%%`QdVĺC,S5dl[YԴRP_SyNquGB5ؤzweD ʞ%|{9[追psWIϨY}1[f6z ▘Hr&xFU7iXDUѦY X1kz-x,ۛCƊwAFy+R&~gUOv%ӌā$#!~pᎣHY>3C. .r/;=6KJm gfgk~ +f[Лa[Q+͎I/S:^ۺd .L̆;??dE tJ Ԇh0Gi=a@RfC?vj'!Xg>j.[vdSAAӬ`vXE~5 b8Ʊ38c܇ S"+G ޮ,0Y+k)c,`v;X7oy* {;G@r9CNCӄIH[OK~blP8M{3<@G|󢸚O,nWF.m^@m{3~L )572櫴A/:VF|ݧAҀ=7ԕtl{-P:R@hëoFnkǿ60׶z瀏+&F+@Sŗ~(#E>ZUkoE]LF9Af3;3-I<>=Bxb?9[ CPK (7~p4⭊0\X]ZsKLMGBNյw~JI 30L/Rj`\j'ws-V¦:B}wݧ$:7M"qE1Fע6k~wj'-Wƞo"Wn1~N'l"1H2񲑢"0wЬpnqTE ]jЊn#eO-i*CϜs&,1ʱr*nWmYD.%;04T΀N=UG<IS)-E8 $lٝO(*UZ?xm#ShIp-0e{smU"aT 5| i2#DtҩqOCi*dز:g ." h:D& ?iV*li@9*Ymš ƇTY?8nt5[5߼~A#avZC*Q:Ogv !\5ҹ&vq>[E7 cX;\oSv:,{w_EX/bw,+ؽb;3 zЯQcVȻ 8ԨM 0ԷZYIw63PyO!N64lm' Ho`R|byN(M2u{aV)-¹ FN5 hCCvVGа>>750MxT,,QYdi)*CE_28(o9AmH}5ߒuUytk,<0ҟr2AE/IJ(ʼn1&z>2 5Z#gTSw kw71駤9鄑qze]"qa_#=XKPAr9nʠi"{jjtEES<9~gI?zz<*-0z[ƳJ(62v ^W QDUa6/Ӏi,`6ǜ ă% 0BnN;C-hJSt,Rߒp/qr_7y4]?]qj0O)ā|)quƘb0w:׆.4AT(N}6vCZxH')8MNt>'F(T;c-gp Nb^3KCMrРN*@n-143`'ʭJoęPI>긊gV^ë6.y3?Dt<ެnpmGM*ӅP+~,5Uah;| *lȌE8 mru-/jCLsso##Ӑc{ei>XH^-{ZDK* K52!$J׽Z˹O<{½s'VYP5@o5 }|QuϏ>3;$#lq^I|[pJ^^NU|.IzE ՞H,_o4xl]`G]ng*)2;I/n/o̩/PzdRbKo8fT=^7ri`YSۙf^\_(K}q i[Z!8F> 3;)y=%qSΣ]ߣ:נXMWnHS:}5?-48'0%X}oNvx owHZ  3Z7WcPN(LѠia ;4s^AVr6i1bsJz5%e0"c\s)%/i \ɽE2]>s1à.+u/A֦Z?sjJ`a,!м}>IvqvuzN r sMTlT?0Yk[QU u!Qƣ;9BǎBwA7`O;wNEF1V*aɑG1tD-- e>n_VE@/܆l kJꝿ s%I톆M&C׿*-*s1?2/Y‰[8(iŽBŔAb%V=a؅EgD\\naDL߆8OZćނK)Nwg2Ou\AL[iyYK `SWUǶqdl)w+!ЄHe~ m)i2'g<ժ[;}Hk-eWE/a$xhR#.'}:~*$C(o5L5ѷGR,iL8'LPkCϴ]>q˙'QKOozZ<ɻq˽=*c vhK>:z: aGV8jѵy].~_rkʤ%c}PaW.ޑqR=qbo`{ܿP/Չ1a˗^yVM1S(J'P)2d0/7=BbZJSl[&a阩I;uuؒ޻(e5hk43HaDNo>ϋ/1 p&;@д h!t;nS̏@6קWޒg(I Fw2{$B=5 0!c2prt2.-R   =Xz@EӈAj;fDb/(e.jNVn-: E{Û) E bL"ce|WG*q,X"~6$=3hwO ] 켜'LDzfz'U: ~밓Q6~J8, qGIFn5E]Ι`G&wZ 7`^|:LT0y&?cW#9~s ։R 3 Y (u%$FbRcyz#jH2vy#! QmyubiBslk,id)z{Ru\l&D"k i[X{/мˌ]꤅~'hсoHUrǗ\ͼ N>9&$,`f3G*&F*Eǒt{~34i~ӝYEifIeVT"qho^-览a1Y_]Jj|GCBr}kE5w ׄn!Lx-1m軶ԀONqmES F^QX^V*9a‚Ť(z'>:*M(D]xRpQmg;$^B].6Ur3&T7T}^prE&yS&9S$b9aE;]?6ܰKR('c͌t1Z-5Z|? r1,_Ayrz[ݬQpH7D[IY"Ψ荔QJHhb+e]Ծ/`%'6G-K)؄U(s)7ɫP^oŞ vB$!3k'𲨫vrTH1`g־#ldpalaqkP^v.cƗ+R -ݰ8ޏ:Xwݭe:'Q:&T\3 `Mx uƃb=X6'fYH$}h|pev pe7 A!~v ֦WLD7G2 YR!o}͔ɆyJ|+p N}OYQ/V/sPš:d hUːi`PM٘j`'4P˰{{wJڱm&<\~L^y6pu3`hS(G՗jiK"&pHNȡMRMiKзHd~3+n%jw!{X=s^0}!Ø0*?Tz3G ~bikO^S2K>?+#I[-g X}~y`ItD }4q*'v5G,Mv(4r9ZWM!ذ -.qxV-E'kCںC:QAY#ꗚ/'Zjja1B߇TC\P:bNIt)MrMp O4wA)U~&YfȆΡDMݼצU]QjgK#̻IbW)fON+^Ys/lgea5u*V<śbq&TqD\hm@04 YJOZ„ʦf =|Kt[`k ?,hij?!4ks2%v;]yg{I"b:`PB*h[?Z8TLbUpޞ|&ybs-b f"3`HW*Úcjc@N Eu>EH1qq6)Z@߀D7|?t; }sZXvCK%,|j:i);Gr٠N@ABJVhR욌nouNb4.h"rDۆ)'.Ceݱ2@9ƦPg-\؍G]IR"P[Sks{hx$\# G kMpg.f޵F3C$:)TĒۨ宁N eKqh)˾ ˥I},̟>qv8pfV՟Qo8!Vқ܌aT2UZ4XC@] $bvAeqL\WAtl?Xzf^AUTg 2~0X'OW6/9\|\O[s>6)??d2bbfh8^aMS<ᫎھXLv nygJ[RCԝ˞,€sr|&O, B8*7i>z\= ~1`jۯR/Tmk!03-ق@͵|i/ G:NRydEL\f2qWX,fiG` yyWCzqs9#kn Y MӢjDsLnaYej{3kJ ֓M\U f6(xR Q2Ǵ!7m'ZV/T'lk%u$nm 㪾=V02kpMiP " 8ȴcuҷFս>8U11wdWBDwpsZ+牡ʀ$5WVI@eKEHm\ԛ^ 8|^1f Bvp5 0vf!X k8٫p 3˜BiSS+E$ð u[3eI#H*<Y;oqPׄ0ina{w8#/dpBj(I.f|'C7?nj|t.jz Os *Lt24(rf?rMĀdI\z}%w1hMjnIbXsuXCm6KsJ΍b2B()SKx qG{*nXޚ cMČn[ӳ"kDVx>M11Mhip!zS.O--p{ TY$ؓLӜ@9yraDoeZA>-I%bOFV v0t!춶!վ :ap‘{j bl:Ҏd0%u,*u^mq_WY1ӪB/8k|:_ؒ] 87FUhx-f TۧCFKmSSH46]8lsg>Ԫ43.7,iCf&ǥ,^ 3 _v2_:+&?Iԡۿ4/7@%/R(fe"7_-pUSW{=9{j\G(IfJs9"Ȩ$4t5hѯِXSJy/F mRZ"9J>2p42'O)Sx#݃VN /U5%]_O|TC&tH#?JAQbc UPm cxwW@S^lk}9?9EiVKJ@ KP:ltfk } ,ۄy.b 1ܬ~Y[-o ~.6мWЇKU@b>Y2N 5?!3w˵N9ʝ?0/6%,/*)52hjB>+ &;uJijlZn%iUٗk9ejB?g'TpoV-/jL~KfԥG79:ċ,yn>`0$mpOr'O|T**W0ݨwUéNYιt}t;l]Y'~. FʮK[XxZ, =t.j'uJygPe}̂'45Ksb@{0ŻOr]\VɕqwܽPvY#\t;AT^ $rq ?FICRUDU L5EtCx8Wj0c+0Rs]mka `zi*܂Q4,+~<҈R8xb3֗yw/<ކ!G`q" jb2v?K*˴G&vZg;-:B% A~,DG&ۡK8Ğj&m&f+M2T$w"Y'aa,~!r]yU(,^gcp5-`|fQΌ>uXp1SJ㹕TsbRY; ,cJ*wjjpبSs{s5j W9bTC2jn\7 Mጼ1obLM҇.\Hjyj)spMiv\1L_O}3ejؘ1>Q7S͐3 G.Ku(n8wgqG?'2֩o_J#P&Ϙ2wH._x:ϰPϸCɂJ 1&(;/(MO@}=0+ވ'B|е&TT2W0ែ`qDhHm3@\$F)g^| YXocm;Ϥ6'2?q>ʘD=(Grb`D}Ai~P;,Tҹb,8z.|N !4{Equ?3ca߇1Ao9_e3|+xWm` 8qJ7N (fq釚{\&˒GOc$=dF'Ci3˾ N'n ëX&pNk8rgn۟Dr ;,.]O 6ѠD+$O9MyXGhGAEyͪQdG;'&ϲ؛)Q~i)YSXIO+'W]q]a+O>r-b0Bc],t29Ȫɺ]`B/lZ^mTtƝU~jy% eaZJ$}\k]&9pII.؅u9_bɸpAw{Rg'@)`Ps@H#,6׳ƫ2M$ZG |h{Lqo~JmX!%nGNX?&ɢ=Bjy|cۻn!M_EMoijaՀ<ĸy-/YL=0)u=p >(^Up-mI9;OȨڥ٩OoH59k\̾{o-࠻l>9ʼV5E3jQ˜eˑд9W54UCK݌W-GI.Az%}Gc;S[ UL%lb%!莍FE[HҌEEUgRz=l6@fOnpzoJi<ea @KzЂFWAԶB]OR% ¾X/.k ӯFG 8oz\GaEFA1UEw%J!Ng˨ ^ݪěʟ8)w%MYۈ,A>Hy ĮA/8XoWtɐRl81DZr]#7XJ8FHLٿ~4ӹIQLPnL.o4Vh1(@̄TU0bkUo|MQuro [2\sY,7ЂcXVu-o/3rgV_Qqʇl{/]* ANNZ0 f,ݿƥ_91{텓#z+Mc Gߪq(k65lOͪ}/< ce+=L3!pwK]2# %@T >:VxAZDDjDy\}j&PkpC"89K`V6:.:mo#9(I?1umeI }i̢*&"̀?*^,I0L~fHeY3`r3>*8mktHQgŘLʎ< ώe6Z=J:f {H.q|Vc] T7 &X!h"yPWɂ$֘e}MTRmc_`p+V UEy@hT9)}B(mٱ a^yh/ionlLO 7DIl|.詌 ?c`{G|6̐٣2FDPtQ[QR$,"Eh{ ߾yvABCǟ#-rlxp!a#Qtx^,JCP 1}/FLGm*#>2 Ԇ +*aj p4 mA+Y :Z¿=ޓA֜`Ú.GxkK&&*q-^ QF)q۽8p' bw(#igkDdk)fwe[Ǐ*j?Kx^wA Y%ϞY;iIw%^H$BX}~k"֔(~P,N],?񜍼3Kquu̐X]--N,L͐ T|3c[C3'?nhڀc#oX/"nU;0䚖VL/2OAػd+>?"s[ޤdplֿN5d~86BNgZmkmc_ؽozO=U 8{'|3MI!O%rZB&:L?m n6kK|H%l g32kE߼Ti\}M?=Ovb*JSX@Pzvfca'~r FOVU ~`tjY:]{?V.qut\֏--SPgF#:DeG$XR`ߑS)2(0(~/5:j  ŀ.6H.(̓qsŒ~Hn$3h7AjDzjyC4) c:)%ЈD GN?^\ASԴ8פREM9 U]ehGYMv*ʣgkSX9j/t 1wsHw#`o꫎( *R6 )/r"xʖ/?a{΂tQ܋y mƥQX eK#nEXN 2+y u!"* Y|{"n.U&$[M4I] Zg)kN̈́H?!HjZχ y+mqhuPZ`ـ4Hf6%1M'jH!~l(d$*~QC:vHʵ%Dݩ8)HjM|3r$ƶZ<@%p@"tu4."m2Dvg3s-!g"eiPzxV5F'qcVÛHPA/B#T cG ,WZ:԰omεvDzЍOi G:, I1h2krҖ7h_22OQ})DE ꧋9s:meV^ܒ^~%[o x@'{|m`=UeErqύ_E9MW6b,d4[ tɧLY_ 喳`ݻ k]3qXv'F ދnG\B"ڹO..*2T,ʜ*G>YVNeosܬhۚ E=ʾel̂r8ɜRYsPzb,iJ1rYD~GXlyՁdSŮDV^R `&+M.g S!D뻷ާθ{ HQ69$19hWz?./c}|L?)mV 'Կer?':ĸa|6]K~zdP-=liiYaH~UZMX :I C[K#ٓ:/鄰tK ]*tBwr4_B]]Yxŝi n3n[.-Yd^Zћ'{&HFO9_cFmh;9@eGtP`KfvY:x<_ƤR͌%E=tA~PukZ.t9 v0?-X)84 lڊc\r} ÷%a$<FӽyNx p!2I灆 ˩lC+)SYπcY܈Zjh{|l1`)^:0I:bA`^(֙ cmU語I8? K# bڜ5xZ<d,Ţ%@mb y M7}+mHPӽq5^PB aZ)~9#9h+[ݓp:a{nܓhL 9Fdtdd`uM$ ^@JEUP<"6uGՙzö>8Ȕ94jg ;QtPyDBpbw]AA&M 0(ijG k`'N4U qH0aOm(ѓiܥZuK$0X§/Bsta@}۠@Sa~Dt瓛uqҏ?IԄ-v |/\<\GP1.|C+ vT7V `Dq*}9cWoqWUW&4yYj͑%tQ :ڙ.s-}@L_|HLFkhuu[q!oӇA.j$kXj\IMc3YXd&b͘,NJS|_ڗ~R몭 բH^'ׇa;qWcU|9WIά<"0lIN6_8a&xy=o~L.LMrEѓ2Si{TLAMxAG=!K 936 ^~2޵j8G2"MRy,]{*# ᧽r\Zc=VBd|c36@*=aH+kMvr*szۃ-mnK+*klΪV1'mC܀W7BL/5hL?8$`{}]>[[VEcO"Z O ?(Eb}Nt@OJw^2/I/>VirƊmxpz|na=-$}3s#Sg)xE?"|+syP\QI%o<,U1CgY 2xvy}) =q$)"GTID n.D詯BHC)2_i  k:o#|)rq6é0#5sCbVpp jQJ^nGn@݃/K꜡^ L56jMܗؔ  rn5DN^7O_61ޕ7aMfH><+KkÜb9N:+ C%򄓐hLؐ_XBxh}/} ǮxIM #)3# Za"g\Y_0.GvP1P$7J;u!XܠBbKf'XFlL~mL$? Ģt|qvr >`)/N>%iFdﮢ#>h&] _\pM)CJ.OF6+ɧO4u|!7 1x>e;*# |tkip~FTN:-mhmu77ҟcFĖ'7S`  J, yr1__Jaⴣ&s( fp,nFmUMj9[ijB5pD'A$~rIO 3^e˗zMo> ZI X2*i' \ $vF0Iact׃ï\,CͯxagAVcbG"u{ҽ0}m#{0_ϙfʃ> 7[*Fq{5^eVK6l`}w<^6ұ^G^ƛfbNaP?M75=w-JBRa!Wk㫱lf zxg?w䇬DY*SVäb Ap,ۡ =oF]hp.8TAOg׃L #xQCk3^L\vM Pق%}LJ~/SOP*Ǘ{a<ʖ^!om `oʏ0rȹeǷ~ed<)Jc@Ӥ9ꘐ ?ٖwDx{Df<b=Dئf"lP {3w"4i)eUV~v`'g"$5]0@zOP~Aɻ?ՉH.ݹ#Bw{q,;;F,MʩL HRm?!si:BqN9}y(RE]Xj0-^1@:q6 U3Wcg6smYV~}#S%guD6~9VUͷTҶy[' mmXq[vi5RIυi$O1Zv &@0(L"Nv;Nv\sqbȭE]2l=8 g򕾮0}$AO Ukj7[41y5-mE*@)DXLp=n2ج _ew*obԫyenLb,目+eYSe+K2zn*i2t to_=%e I*7 FBN3j5W& @Vt{.}>EHPP.x&W)v>K "UzGhM^Mi6X e/O',zT-AEGATPuE=ޢGuW-Xx<Pߜ!.¸ >tIaΏ7aZ^ oyIVlԖ1;*ϼCgX$ w.Bpb)#Y=\Ny?t~4n H 0Thxp[?@MֆhF6"J#B?Y? Յ H ԜS-C|n%? ?sx,LTΆ3<ޑ% A)&3%lɳw!j|/MZ5C! N/'l"m{p ]q|YcS.ߎⒸ8r&xYwо7XhT B2Cj1^1,!!&+Jf#c~Y֜ċ6cGCc\sg?\m# 5< 1x,:s {_8V+:#*6LۺzJw Hd z-̝,+`$c0v$Y6Z ",Xc/n (8%,ϖQn6X6)_y t8k̭$,z0+gS?(]E%2W"=OzQM9)c7$H5(?"aG46u FCy1bWƒkzm(G:v//DSKmԟ3.*&;Ήx.@LyoU9fLGD(Ĥ.ɃFcئ/B̓;:33:cV'mЬѸJ8` 7b! uy\M 0\ENk\~ hG 4[NH¯!WbKT'bCkT(1.vMɠϦxY`Xڢ N(,w2ZGu24fl,sC'Ic^Iq,NC꾧s`gOQkL _# C:@B?BC\J->gނ%#Q7[- 'Kn-h}yЮ6r.o q;6ΦJДwd& 'HPj 3BDXn~nTAEib~ 'Qx|M >XcQ/hؕ6Yrdi?S}!a ɠ~3rߪ7.3A[:Ѐ %lގ+(A%"Ɩ2 "s[Ssm!,|t ?c%!^4R" 4{ZW`*ND~wDQT9 rи!y[N=P1'9K.k!L{0cxgnP5BFʟtJ/vVZ! }qӷ9;_S\h /A= t|jaTX Y"R+BqA|'_jZ)iܒꫝ;0Ym߯-7Y ղ>d[k$$&!gimbN6 /!{$HRU? 2ƚ&4ƺ"{E,l8WFZ%B]MnJiQUb{ *a<4w]~Y@bDf];$(~gkO3/Ii#N%BhP*f ҒU=t=oWMTIDU41f KJQSY':WB&y @bL&oD1| nt~eB'SQi.k(1Q^K?vsx)fe9ׅMKBCN=ʯI.g~2X~ȑ{b|5&t>%I.$@vJ$@ʏ $rxąq׵F4̨#W8sP($9h' XZD _v;I z ̓x˵4x&R*!¡2=a޶O!xt0$oYB :'4acpf*֦=P_51>MFg=p㿴q&1n/2NNW r l/ ZY2cSȺFh- ccCת>a?n:$-A@/A&Hj$joC] 'iIm=_kp;\>6@pnA`ȥE~~:0gZ*D?1s37v9XSn/2 6 ]hpRz"G~cT(^Tm]~")!viA%۝18A)4`(5 mw`>@8qFJ se&s;H~.~dHߏcwDZIJCm?ח#jznQh* m'{bxSOe^./ueOi˒OCɝhE/L@LPkb&׎Βp,JC5Ӛ'ed\OP#+k4E)W/&ukrtSwu-0}2(zIhXQtm"̽b5ѧ.2d6K7R;Hq8p.Y,C(Ou|8fI HVf;HWP*dg`|ئR(0 ?a 3㘚4{m۞oUTA98Tps:zon.>](x I*/m?} ~, RLt~+csðI{B+jjJ3xFtARPc]tfY䲊) f\vG͜^o> CR~1 `a]HM_ l6nږ\Sjuw6~x3VԁlƋɴ,7wdqC".ŠB.oN~ "4QoܯDr[ĉ a{2p"<.'/edžoUo@F>F8*2>K,e5z1sNU uDU!['Iiնi^~3IRz$>:&^*t AeQI(}^P<ތRGplkL7́b9w7/FD/%̅۩KN ' zbyE^& Qu:ZCo8[fm=CS\OlEpEj]f{}%kM0TVXc-VX~]W9=Qsj16ԶKJibg̀v4喙to;tmXtWD*k}$d{x{^E XHn fhho'*&4ة@s؎?l%b7Zmut`Q᩼J'aEݵ$W\ٳT0|5>ERQT3A wЬg*-{`P5oOh{Q6I6ۈˆ|EcO&08ҐTkdPPml)ؿK;/VW; ~BZiL1&?&Efq^&|S;j"u2oițږ&u"T8 C=ܳ?UcWmeZg GF/9[Dt-V3Z76_`eΗ2E5j_Yysئ:ǏoXWo ]L4'#n|7}&Q+!}C(wRp.5%RROӓ3%5|J_`+$+ VhE'mx4zYːE3OГRIaImED#bj~A=Q afl͉ Z_=uC&GqPVߞ{ ~#@m[5rxk[Vbt݁  ̓X8H:PݚB):}>WvTUϴ5.bnY9qk13r,;]z $Zulbj ԈEG I#ʰ:? G$co)#K|Q:M4߲qQV&x! `F4,䜃^Q &,[ba\gh1 ?A=?{D#BszyIQMǵnEuM_d >N^sgR5KGxHq4;C>e%n&A<8Htoߛ?; aX,n̂&c,] . gd\V/̞5i-xIVX:|b]"G.>P0 B+uo|-ž=͗ˠ;4֥{8Z46N}א^6Ź_l[.} FFħ^{D&Y\!>:ATިtud4R $ϝwcɇtLQpᒱPL-:m$ArA~8$ Ǝ(|ho$|cJ^ NZgZAÇƩ&1&VLڀq+ͱNP O-VEo m4 fvT ?8N-9j =|-@&]j6tXmZR0Φ:g<:Vzqn@岻>A!b22JF?$!:a zN⤈yGHlzuVdsս@e/>\Qdgٖ2++QN{óB;"6$"R}7:ujvmfvN;#i`5y@x!Ez GM .@@CJ0C+Kx,cTtB?WO-xt~22,[mَumi*a^oªzuBl}P\}bl^{^ X3+NJKftR`rUJrAs*<AҪÜCVeYVú fܛ+c=&梆f B푛NT_Oc[S.۔#Km̟AkMꕢ.s9 -Hz:B vZh/š*kEb>\e;P >5QKK{FIp3eG,sE)-=Хdiy}C)MU>vߖ^jjmV"yhN73|d6\7.5[n'/dX)Q4?PMaHBY(>$Ţ5^<튐C& tvutئZo ]h*{ѴwRc$ Jb,Rv7s鑏?zB gHB_@ϝ߅q)֟Py^:oN!^ޏ){MM0WZ4R9>6D&] t׌ՐЫ)'Q8b}-&6K}WUI{t t?aJq΁27fBIR.puU* }v|kM:;1i4e)PMOh)4$D"I vڻan_.$fn\턄 )VS& *m|挋ikmu^8V` ֞\[-hV3qQ(㘡́֌& {8'*4b=b\66J_ZuJ q:+?e8 &Bi׷Uza6w 1Ѵ!nWDYMuY#إZOimr{s#&x8j9!Gdi4DBXr$KDJЅvYp'7E%!MwSs@qcT ź_M|c!5vΰdԒ L]ޣHg_|.2,b Xb FeH&&jYBg:LfĤ\QldS*oP 1x[Q }rUzuwJIRי]cdmB"Az7=_X!UVHD4$ Ki&20#dEvn=>:pLX%O?X)R2;SC|;[_T3˶Fs^՚7uzЫAkk<2$#oF;CMW6yySn(Y41+w]3D$mP.x-0HBIS@z$ĴٖbŒ=oMb˸G, Q{;{WY̏doCĥjCvax(g\0 ^ZUW`7X}4k?=3G$u}Q&eVvO-86I>$NT<=c Xp_3@tIXr~La`2SmL`~A& W~^@')4um4[Bs@ Y=37jflB\#g3H 9Wl 6> %?4w1biL[XNE0IPGqQ~gL9Gݟ̹7HL284LTA~lBH{,YNF@ M-a~§Mz;LQm+S1 &%\E7$\4|6-w*ٮ}Q )&xj0k ng褞n1_V.ԗ'q5%-.q]K'U4c(WBzR3, kR^iБ_U>R-VzOI;w{of(qrr*L$I.\UE[( 6t9G馥[DG 4A|6eKVJhS^ׄ. nB0"}H*Oo}ӔLLPF[)B %JQ7#'H6}pvc4<.^@NJ(K]7˂!U+#xJv6LIh*襠:K J\5f"ȵcR."DƔ{Uӽ ubx jܒ7f5'~HKkTmqh?S1LO_ =p2]l:vIDq7qo57t0J;E ηmpeG )v 140",K < )4ɌW B>F B)Hl|cV' x.̸fRź0~"|U;?*& _A9A"_Ft;8Ĭ LRmUZLs{զ;~t4շ/.8<F)-Oc| /\y2g3@DEL~}zhH3Hml2p';PB}O1l(&Tlf+W `Y]S`a=qE[$uSt|d7Τ:d*ؘD"?EڢK|]VuvgV%:Cs2 gF(}V ֖ l8宱@/Wl꒠›*Ӕ>ȎP4 ;T^1 2aQ\kal6I:ީE޼dL =ydӉE**8XOwwZVVz1&"4s^*gp 1xO^[~6Ox ђI :Kv Vʁm2yĚW8%v5H͝LC9揉:c_!mA|(nytq3H_Q1V;PlpZ2qFE>w;NsR0G7ETĨ;|A՝PLqɞHqLR:JQ|=,hUp%K0E\FhRbsM"yŕ%+6#!>-~/ mjwUU5 RL]UUk8i%7~9,hۀCK|>W9ΡECvaQit'1MԚ mF뿇_H# Op!Ա{KJ`DBjɯ U7cyle]IFR\w\̫9lK<} YW"W*U9WkBoJ۬Х,7 ۂA6-,eNP%To#|V7JI0b[4TApHKӡ+A~ٞL؋pՐ{N+]Meaπ5[c,Ͱg΂ CoAn[*;Uhg|Tv ےUNn}׹ =SÊ[ ddolѢƶi#ٱ,RU\:*Ae,dXT[. 9ÚAvov8DZXOl**4ai 3MkFMicf4@ K7\ :t޴S` œ:Ɯ*!5bIQI!7$2V?qK"GH?p˄ݜ@5],X@<\MnJ}{Z@I;";$x2Ayi+rwIMbvÆ,a\?Ȥ̈?+O_s{1oS|GkJ0,GO*SJ/٧ұKaAϢd푥jQ}ް4 M6mm\$>oMB. *>_)4G]p{/;q#[L؂bW!+il2hJm,f]vQ ; >lJżzSk|6 vH͂(D-<1gN!%tXwůYdyɦ!:%*y"nR\\"x9?!d35Dgا6G.MNzcēJW_'.&抛I5;(#U?&ou?!"mV^YJ9C6hĐ[̧zBJXJ;Jkp\M 935~IFK>>wd5Z} I4u%-G2/YSb3X?ǫ]MvdsdN@!ǨD&d׭5TB|U ̴{C+ƪD)H"܁0qT<;NTHxh먺(33M!lk3kX,1R,p;}½˯cn%4R=!R>ah:wFhqsS- .Q"Jodr0\y1hu=gX fRO{"C,=% (e åX^"N_NIsI<*V‰7y@XdyİvG"f vUAz%qj t"3!>cW}qks\:+xgSLs9ϡ*b ׋=On@-"_;wuAV2~G ZOkK48﬋/?-]܂]V@~ԝ"l\ܼe7.^e̱nZ (ևj+<ŔQW]F$p8 M "PţǺ$p'x2 4xyaYV`1cr^m/gߥtvd?WZx~CJ}ԥv2ҚrY(xR>%<8T' 娤׼CS@}` VTPj@_/KβUcڬUi$] K3B1͵N&kZ?(;np:sպv\-(yZy!/+4nI̦3я7f3=ur`!!Oq1%8C"X4:NU{>yy0q₊AbẈʮ萌!i!&)׹d.Tܥ}Dh^FNQzW֮}ȶEncfEȄQFI}@H9.oڼ މz]R^7&tkvYfZGꇿPh`Dca`qt.t|L7.-zjðq (hoklzɊ+%jbEg %kMXU.q+{zN(̈{sw+MQzUɪi3QG ዲ&RB֕|ZPE 9h̚F4Dip=C=p 5^99/ kr#zIlhf#)qL'nٶ{Q42[j42MUC0X[QF&ڠNk!.PS~):1S`{mmaV~0ЎCMG'!`ԛvMS!`."bܳ~4SL}>Jz_Jn"_kI,t&,Q5.0=Zg## a MMlIQ?K%&pq': A:'_Cq'}Uu*\*G8ˊʓf !%R)}^]CfcÇ mnWsR%)o4~-g|w$8F+( j_f[.)8^hˮ"_zfI%%uZpkI^înR`-ޥXؖrҬShXѡ5,ߺs!JggJn+9R4fz\#=jpJG)rBz+y{ʘ' u81ꎹ)J$? f$o)F"Ӿe_-޳W ^S:X [b ĥz*; } kX]$־ޅ-3=Kq_d0N3yLW,EEv%CgkN7N[4>8ZtJPӶ>e8>;ILoϜǸ77tŹfeG>'.&*F۱m bmܹ P" #lXW 6`shGqjмG=z"imx6cd\.RlTwӚ/ܖǖ*l߆~Vu5 :GVW$l麔uY"0RD'z Ia]`lyɬ+1AƥढK̓aI <pLy'La 'r8Ͻ$5?нZl/S*7)xnnS=םQesYFfʦVuF+Dxd6p. *O容9065կpam,;!h%]p8k6yMM1ee#d2+BFf;M$?~Dcpp09T U3>u+b#IAL(Y1῵b w(q(_j[G`!;g WhF}U"<8$嵠RDG\/SRX?L^x%8K&ȶ|rV M\Zr} sǮ1%Zp-DQ#50- FJ9|CDyzJ^1E>ԡe}|I玤d-i/栊I Q% (i?m6 !{:ofN"ǰPbv&ߓ|E:.B; 3% O2V'n.”:ZȵxW?A[CSc3#Q6eAa2 1߻Kte/KE ]k1\m"O'Bh8@q9C9&-NRlמKI0_" RǫMs,!T@ULesFϛi9:{V8͖7v8 /n Q{W+r3Hq;xqfD7 JSKK'"=?t91%?g"":eY ?FH*ވtdd.M2g\9|6A"O~5=WT md(X0I85i~XM  hVM\ qMmoˤa0'Q}Vl 5GNT=fO&h;JZYpܣ4N/$ky0҈kB/s}_V择2*^e:Kw鬑S "!m_0gFyU@mӳPۓD6\%Á߱)pdDx+~8Q%/Mc+\Ay!ڽ$xnh M ?P|xçD?- bR~W] Ho'e%qmWw48`/yطnjXa GHM GBZeOe~ IqqD`aZRT&Hy9K#aCG^8bñK /b~_LL|XmьX|;ShSdI"S;oc /33v=`N` _Y 9u !)No\SC~`!hq.K7&,"ĄhR;=\d)\_0IZ,`8ɚp{3U +@:iX/e`屧\ p ;P2ljeQ]ш$ʉu륵0ϋ`پjxvwcۘ$H2-.K].[0: ԻqU_AacSgb7W}C4CB@{1ꝛ.b5ko{Ax ={ =*nt;R͚]˯JysU\+'[V D5/ W MxacB&^ao96p+X÷U~XEˬJ?cK)y-"yt^/I^ 4XS=0-V/y:GhijV466]pA`Hҋ=#|[`}E蟫z7pӨ W-}/&5W).X R8^Qh6( ۯGL'{YT ^G#GIxo8TҠ&IH$6;Hh;qȇm\n.h{϶\&f.Cn\շV}G?lj.:/pnLs.(ۺ8RNe|<ylڥOah.^^6_Ѝ$e_Jp-R^Œn]h,PǮ_ @4) /6l1iOi~LqX:ݠSM劉jhӺFټ~޻)b'bc g,Rp6ͱCM̗ .9 `cⴶY'4!RVgfbAd Y.9`wMLi [*@ˑ[%{3i, Kn8,Xt2Y0J9Ч*)殓F/-ȗgΖU%Mb]t4 1uzT'Ԛ{ކֶJƱ822~4-y/,7}Jdı:q+#6H%6Y:|vBpY EB Y9o&24{:.kabNJJv'?(2>87@/1X+&ښEaB%hI=y@%¸5ԻAEZHB(Fs lhX?ydׁ~4Ht^00!rqL3<@UXusX$o` Av=$;:!_ \ 5lr4DNzoAY=SAe8r?ﶧ0 _|+ʋ)! @]*',~XGaCHbO ؝:}«s zcGrgO9oavxI,|W>ǹ>4xud'Itq8\,0G,tY';|aPY 3.At,:=P?aVn$[Af`RW71o^7v)v=h>X/]@o+p=&&~@޸LN9! ;w$86cw5ojb&2ps4}ԣưήmu,= xI{^إOK(ga.߿z "'ҳoù2SLYCNv|n hʍ; >M'~;6+`:& z7[-s{syC?^PapޟƌxjSN k `RL6k pBᖞMp&dԚ!X?E ĉMN{m\X9U i28%[!W>#>wv`-XJُqҭؔ?N㯣4CU8uh(֊lBa m,ך=` 0ĵRղQW>z{A붃'ZQv{ZU5?H.S{?(Ò[ 57|fO3Y@5TX~^i[(5ڽ fp+v5=UV"mɞѴ Nto^+Ga~/4E{{mùp9Szpi*I|xmCn/ظnD Hp~m;Gl7evMp3IQ`ۙL4DN2=H+,e}~۸F0݂pE;hY! J\0pt+L]Y^ q:Q8Pu?|8i8+@q3Ҋ8 ^4@ n#m#6 >U@XzjiSНU˜ ݛ|]٤c"8lɢ$fc xYJ.\ fkT#~pN\8X}+3S>ĉ}IF=qO3DV8i/jKO[4O!!H'P6~́~ EQ+O&N7ULR\Xy+y4Es2a|~0]Z r>%^Gxom'oPF!:P6tuR.2Z.l| hV4JmZߒ!4.#8Gͥx/|<[z[)a&Z:dJc_NFuy!X|Qg̶I>2QBb?G?)>bߒibȤĴ)|ҁIdgv Ǻ?%P !X9_+\mqI[oB8W#j91G{_ڏ3'> Cs408n|@JF:t:OiuCrZWuzbbLDf 7bۨ@e0eGCh?m'l.sMs(*O#(et`2Px[V4bC,]x~[3K } #Wsw15=kɊ_u9QŹ;h8X mGeKUVvHԡX%-Dcʶ͠(`x"m1nF3p^u?bYDtzF Bw0H#\NEye#y#!(J˩?+,q5l(i|[i/&Bf4u@xr&%fT {e;KLv,=bB;݂kl0,1r+.uTxS] #[8Ly/͵冷YY>/Z~umrikaʝ@Bkvw)Cg!3k;G/яBסFm,W>㣳#m q!1v,ZC7/xWUnjku~WjH?5< £ 7ORE|cn7lJ UԺpN35aQ֗=Gqgd2xYFDaUɯN8?fDŽօb3]-U.l4Y=N JD5)v1J+q3 52NB۽ح`<"U%F/*lU&WGBX(:&vD:% @( 6ݤ8Tf^ -z'Y};okƱP jiH|yB@ SDEUCZFɡ!Die쎗h*`\F/\YJzԡJ/SBO-*(xyw#l\,y𔇺/%Bb7$^ijժ=g}Jwo^KO,i! J;B&FMذ4V_0XckL{a9UlDN+v.Fq#WafO cƆc/ŕYFHLOL_7nIDsٯT,,= iz5u';w+L96Y('95sS3ýR,X/GQD\7<@lBLhjDo@b_q#0FeZ pSsȖt;, ;-A4045(/lڀ^OP/MYJ|aҐT*5BAN a5V{082*# &4/߬FM`.$Ï/(0eg` '':6}_l[;k nJP٣{1/27s7(P|dk[38Z!ct69:مvCʇaga6z$T+HZ)X(rPH*{DD()B;Y=hFf )44Y4 Nkݪ"y06jMs)2-@r۾Rϊϓ.D!zm gcse]te)SDn!yO\ZS^Sq5V FeuV˨| j\|Jl[kNQ[CRG?a^y+3)tF& Yna[ ,Y8T ٢y믵䷷a4hSCT.,a+>BHMf?Y zԋh{ʱVR,]WO4t7łɭs]py yO@\35&Wu+y_-ytnt0Bg'aVz"7 j{K^aE-0p'fTX  :Ze;QLRLema\EX>dy?.(Ӣ*S6}$,K'_i@L_)5r-j #KɕzHe>z zv=(a0r@}6j 7"@УVSKqeI^Lfbr%^(OtJ DA8RCu(o$M1 VM)5M*@q^-M 6hkSWVfZ4at`Y/$]X珐KR]F2v2};"ff)؅sߩNڳKz[)sB &/>}{T~1pt~FQ>!(;ě&o3;\KUyH㑨&@ }ur$XUJږѮC\@z_OM.>?3>^IiEXT1d)iF(Y 4 sHb f%_Qe2bLTmӘA'oxgx{Bh8x}rƝuX{jM`܋KΉ~BjlZ1 KqD/Նt@r g 2(~pr RJBF]*BdQ|Ea[~ C4 R^gtZ%hK)L/ꄅQCêcCqMCH'MVKJ?ex % 5[!$`Kiz(7YJ6x͐YS\GH5asD~s]KÆ[cpō8im_"yxh}gdžr#ڦɟڻO~(ptH& FIRzD^xajIHF# wE E¨@!cTkKC춤5bL2y:)%cas?Tk)ٛ&}Q \ϴ.4eh70l?of48Cjkaz[P2YacT(qE66^7oIH^4Z\M*ڿQnRhEJ؇hʌgDZ|L^?4 {a9mT)\Xy %@)vVh%Ƞ.~ :W/JS—,3|>r1xF]UOʸ^`kki?7c-a'\à obs;3E^# -&5~2 ]5K'Vkx'J *) dƂ4Bҧ͇ʢ5N]H%.3&7eeW2l5GP@. L9ދ4Ҳ*1_[v ^EWCUٵs+{{AEb >n-L;(< *͈'.RFܦrrM Va VZ#N,Y'} Gtg{+ g pA]^dp:א}s\вewa`x;n"h*JQGWrV3.1~Gcl7r1@+/A/VgnLn 8Y+2CQ.E(^vnZmy5= 4emK#6q,/tB(4"s da4:x&Ü.=Ŀ؀$ze̱ sR죽lp͘kS]XJC3Hl&yKđW,Wl Kwio^;UX=2LnOMk(Ӱ'Ԕ0:Q׶M}=G, !t]tU.OjoL}#,`Hc*fbaf 69, 'aW6K|Quf96ؿqt-sݹ ݦ5[-G٧;FcȨڽPb%"ttOXLW[`Nh|"LoS]-X:% ^^Pz]/l;F: ?`>],T[ ã~y`Ojlw Z p!Y~*}Qx'dKjdŴivPj~@$jKqP&rJeB0ܹ(B4 gfo ۳j,}gyȋRek݅(M6O(}ˡ& spRѺ33K-J<6Zז~)Kyz2󁇁ct-P GZ^*VW.݀Vxq؁6wb~S\C. NAy |k9y- =M mxk&i>6dAf rHlX MclB1QIB@`\q̥gU.LD jP'k(ԃ&Ĭ-!V qu=p|A 9(IJ Q^b2;?ȸ jIGT LXi5E|d:)Hкe|j%29EM&~P Vsކ wC=oҙ= ^FC% ˕hI漆,װ~%5Z_*'a0CZ%/79 kBJ:TZHd45?Qƒ@S$gDή sxϷ k](2ܫ'GŘwG abL˅Bq}ɵ!0tL(_e6J R;;4ackF3i^= mRV'('?(o&:)]pzu.A>{UFLdIsx\+πZSPIpYjGh 2'&3SL*Sr%$r S"xğ3(XZWrEx؆'jgB$Ox7 '#k|LFi'ٵ;hHoN7tԍe\?PΪYvSH P!fdk~jM+Pdnbat;oC(jZ;C5@/H݆,0']'`&Oܳ";:uEJ|{u;=_([3zvD$HW@SqG]gA8ZY[9M5E(2$܃U)x@ϊC2=0T*V&25ge%+Œ͘A]ie`qPʧU&}މb^rӸL/ӂ<g,zrkF.{ӡC&ޖ[m0 @\P2Pw K";ݲ6I7 aIUK]!ȏNJ8ưR K \5PKzg$GƸͦAp^>mOͽ"LϧsԖ>? :;P F{P-h "!.t3prݩqSI_@y 3a'۰@۱"6aL׵f{O 66 NA~XrPŃ|T#y;OU/By57WLD6 Dg%겵Gttigtd:حdH]ZiCJ5gJ *X~^kLG9`IC)ZN%'J JiA@F10rGLA^ Bg@=0blOJw-xAaRî;%h*yLC*ywMM ~i4Yurˁގ'' wP"wPL?]k^=^F!0uyN)u7H-lͯJPtxR÷g!ґRXƩLh[ɡSwD,4wdfV\)~W1733Ǝ LPNC8m<|>M4 ΩC1M-X xD&i]pQKb~}f>\f&Gͺ]JҌLc3J5izZن&6ys2=%l+yWVĖfMɧz7s`%VWo%{xmu|2GfߔNAV0DT mo' >Y}M,*pQJO/h-ƍߝIvőFa~~`SoX|N"-cG|gͼZss1q{PuUO{6C R,a56SW%~ݑ둟][馢YP|k)a]䮩" 3t~2#kHkmf$ɒv}k Xj\ g҉ўFuqc{tz* .Idw+?p(2a$vzn?\jݷHlIn:`Ҕ4{"7#&0K :o0HC\[5#ԟv{oy@yւ4*>.z~ýV'``yL$" T-t-1AF #2Yv{J&@ɷ6X)xkw´ ZIx~tl=t@tjX3d\Vm#.kz e@@,K4 Hv-klG+/I*pfa pjּjD=/RQ9Ք(G*ٟqo$VI3ˤZNNBfyF~t  !\u`!^ lٺH+nk;B8 #[tue~t|ڶ 3k7[Z:,e[//JsgtZSMMH)L ACŔGƑfzlbi 'dQ<ωx8y{Nҹk'*k:jF9e o-c A6"%,bf{J7j.GaxZ LHusKYD ,̓ Ϳ} 4a38@lMuW"@tURҨ~"Oj%oEX52s;מ{+Kޛ[u[¬7ʿwyADm -m. N8xZa,H2bt9(edŦyjl/ש4}\Τh~ dW  Hvzsa L%VӦ9NڇG j{Y mL1:'m:w>3*,/I 7зvs| nx2)vØjL\tT˧S}WHF*6Ng/Cjܨ{qQs#mk 8t!q&$D':#> &_+$rg8:A~HCuIdHlCT:^5A:9q9ˢ-tz Tɺ0c}YO w8`=&@ ',MuSL9+Vɖ cs&#Cwz\r ZcϽo)ڊ9&l~tM\o\cX P&o_%~ ,r0?ҝiYi`:9]M_빠+?&oT3K\:G,mn׹#4Hy4QLr/%t,b>ʹ'_9=&u2BS^IV$zcOS[R^20ADnL&cI^L xflj8S\#yr<81ȯV ܟjrX#GdlsFwV4jĸ7@PWK34'=*#O+P@Bf0:Iڄ741PF ۲4N~ MG_;ݴM(ncFz,RE'k mZnee+e \=܀x[EI?->k8meQ"RM$o-#TW1堦KM+ ٺ?=6D̏WI?lv>1[<ϣ"\r3"Qyx|˚/^{7mF=OI!:~iK dQ/ZPljZ;Ȩ"@xoAKdRJĀW]T۠ |.iZ 7k~Fb㘠m6%kQQ3&5nR/0 Ĵxv3NV4\'_x9,^壾Df, wsՓ Ia"{_2ިT)D,EAd,Ȣg_A&w=~Yb@ۈj$2 `V %<[JػBOxqt2O&0 yϩwϑzTG4।no]r-Q @H,t0 Տ[_aݒ;ΠibYI"&{-5%` h[$eyVh/| €"k*#/$,ZC?Gm]KO2˶BPfcw_}Iڋ<%+2ׂkXazG11i+fIC 0Ѭvfߦit=:-ݕW{p*`im1;kU3NN#I9;E8;\|}$Q?( }ԧ^+db@POU;6T87GբQwͳtkև,#rϙ *O%sM4Y$>N L ?$mŃY~#Ca|o8N֧^mb?ÓvEX)*?q8gbFEHmI<_CqA}f'.Y?OA)'DH/N"6mS!rRR sD"? EU\y*x_?BrV5Й#ěf9$-3cH[{˝CQ$``? naB26J+kY\.w)>3wP9,l,`hf{oZ ;\t z8]-"}o ӍHHqFkQ+8Nu=$YC]SO|dY-_dTHɁl'ίhd, C SƯbr=qY}uj}Vh1ĖA^BwEh^m3Zb)"> Ac3ԅ`a݋HWlР]#-k$okI@DǑ贡0D뇏,FiђPTϖPVJҡ~K9H4T :h4xMKb"re5Q%Ӑƻ$ $q""嵧%h]ıUިUђnHK1tC%0[Id z:}"$pE0]:3t,G/38bB.$wWHYzyA Z Ϳnwt2n9ǨM ?fgt-/KCw>u Z҄;}LM|TrK$^ !ӎHn2F=,nhcp-̊ P4鬒~uva[.Ak~qtעNJK$|0.o8ͺ.!H YlrsI,Z M(s?&q~*+ul%ЏWR.Yf2[_xSq﮾#^X" IhzWn׳( J8JM 44Ʀz{RlYd´of%;Zs$nlג~y슲´@v4WK- Mt:*)ͦ@3J-2ۂs߱0&=Ži,OwW)3 {v 8j^XTvSW4teUPƝ8ț(OőV*pj3#q`1J(˒i]ݴkM34пA[Չd4w:J92[%کGH}4\/j LB@Mvx:>iG+5ٳ5xDž;jwR +E7?> @6f;-v!_d˩ 7b4Y۷#icYcU8)ro(#a=H% 8fEaWO]%bn=|\&QIU:暷'a4 ?tc5{Wgʍ>E8a 7"'')6h$4sd*VjqmP̆b$uۊ<<K Yv| N* 50NQ3.1lAp;~?C$dٱE܄K)[Π&D7̣gMQ>ŖՠQu둷s- 'Hgo/^T_oMfmт Ѣ] %%Ю/Twbɘ$АXZb"g:*RG[`h; Oܵq!~J.`[,#u:G tc]:+eRrP\*? LS>1,U90F.t&J1c+Z) hs/cPEBӋ?%v R`z;a[A](/x>V[Mx9K`YR Q C i:vYOl>)0uM_D %]( 6C|w_d({U<1V`N0Q f&D#uVo-6h+;/ piJLL@(2ljYΟMҍ[ܟ2y%q-WIzA"ruz"df r|S$_v ǖ̍`k;QN%;~s9%2:;ˢL _N0C& ϳł,pU߈VK59Aw  fM?2 NҬEMbQ$+^\jE>tcmli㪸s۪h ftI:/CˀG&nV(`(ک%QO/opduUKrp1~qՐ&:_}_ )AAc-BYgeH S?X=.@0O['=%(U r2<&baP(Hb@ǟFxYv&夃W3HWr{ } pnv:eDf_Pab -؎+{ s0?^ϬpԁXn̅Dk?4$DZ-qGHZq3q^~ #ĠΠ0,zBM1}Ѝ. >9CPE AI5c(434]jH{DcQR~Bt yIa%,_eaWp)SUڨ2 >T@0L~\>=Hu w鎷֙ZiK^OuWTr!bK-Ju_SSÊ[*b@ifN2cd?׵8RܴToCZ JgwBՐie; NmKipLrh/X{7Ҥp UƉ2׿FXsŹ8?qF f[6\c0p+Ղ RT)R7}/?曊*PVJzUW_h>|3%rŽu1O&]V#·@ǠL5/%)ZRD:T y qc~NjW5&+F>BAn8V[hONnJeNRsܬu0^5T4d0PmHYj z]aaTr} l=gN9%B_RTObgNn5Vƚ(m^dd̫?iC™v 7.ȏᖥ!+DFY`P|vvƎ,:VoŷИdcE4fbWԾ d 針2hHq IgeHl2ЭXֽblnG߭ԟ.7ih4hssTPK:ש#©<9~w *,-yMY<NSs^^,^t {UF'Nvlbl"c8܃zy0+1#?N=.Z%9o ZU'Bit[y"KUE^G=RuSN,ܸ7q㳈^3-"ֈgGUඁ8q0_}HM,gv7N s̔ȤjǧL.%KaPUK'ǿmЧBo2Q3HdkdB73Ej;&뼤hYp$yi4!.L)Zx%},|R;`FN)9c&l^4ݨ_co@H\R?kZB6;+Xg[lJsju#va< Ӫ,WN}^KjC!jN dRˌ; ZKQֿF l~FB2lÌ>0<~\{|FY֓*eG< w%@(b+b[DBR$!o64R ۋH"׉0{Vkm*誘Zm} N@X/T?傥Aɟ=$%OPc QPs4WzV/_M}X\9bX!ð>G.Yi.C.b߇GPnyl`V`SĬ忉&\ FE|v sݔly.G'j-ϑ-[SfbUvXP/aDT%%"B]'䝊 m7Em p_LiVI?Gy#|}ѡ,o^3Q^vR!cBCŮ,N"'_9 A.<ͳwwZoǤH,渝web6[MN{Խn-M.PFcj΁$)KRa% ,f{շI*tI/ɘ.6*Eg$=N=DB8n;%Za'qb.{rl&DPe^8Wx$T7}W=X^;W+X2(:Ut7esuQ}Vd&aNܕtRg?(9neyvC7 bD6&q0 :˨dE8 vZ>y7~PvfNfQ뺞XR37+.xlʘz 2Ʈ Oskr}.Ol7l͠I&y8g<aժ[+L(֍8fo[%m6qd TՃs7ma(>zsu^ )}#R&ؙ$&Q< EbzIU FGmbo5Uo&cV( j_:V; "a`1C{zÃdeY3ӬV1P,}oQ<{$-ePBI>ZO52٪A oY 02g0 3#D+\~C̿WpO060{Up%Uwe+3z Q1p9OuWIcgN!U3/%'0cIZ[U{gflΕpR@l͝i|h;J\\7uz&b 귆ef2fKP+R6|ZUn,J-Z .Ngu@ &jhq5D*.\1떍 Us^7݅ k Q=R|7 &ìɪeD-Td8s1}+>mTA#]a><tmA? =m[ˆBV%t1U{|Ņ\ KkӞc3`p=qzS(`P7sY-Y=N1+o^ͪ͵ !rxU |  )OO~$;Uua`}ㆧh`*U3*vx`mfѓq;IheX}Ո-q5zȩo@\Qz8 ˎ*R,GA\(A ,N*$mq=[ZN0 -0=G"v0D8č :ZK-l>Lokit_zp39SWwAZdP2[Wͪw.qED @LJh/_3MγCe]RUAr'A8豏&4%) CM8X\ffi#D:go:D؀S[y\௴b CGɡqeK$$=? P@e.sQV`jHH~М`q Z"!o'JQƯFiw\7/cT_4}tDžxOAl_dPZ(]ӣ׼nٻɅfAE4YGG aգO .bqA0;y A<**w9 7POor:i!>@>qHA֔Y.5#aiqPŬP'y?}B0mrB2:vxĪGe:`4 ӝsE0 "QwX^)t7m/KeLԯMv,vӦUD lˎ! ~![`N9ݒ΋iƤ(G3Pb KX:H6+ǘe"#h%28vK?O"TLd;W=k@|siIfٹ~.e(s| &M"_HY>[Ɇbq6N^՟Oyޡ j;\0D#€9Ħw#9x?>)V?u=rM@aGL%ˆ9DK>Zs|0 %NxϚNj޹Z$O]*q3e$ԓk<5 qcQW&`C~,ѩ+再xɻpT6nrm]G g"BOc3?Qw0 js-^ խ(\Cǔ㭬s?7l֝վng)4BD .o]oaO)@>EvL)7F*fcБ$;Ve瘝1+Ě. RW=@^Qɢ> ?=IpH{jX{O!tJ=u4?ʠ?7Se:y*W6lѤT~ nXZRxIJya).ov,,6pSfz&`IQW9qpZg3PwW`$Әy&ls̐=Gۯ;QcMrtOX7{E &q٣[4teo̹ꓺS5(Ve%:q+bWDgʝ9s|3)0 a-YH$ni9=LVh{QOv|^&oA9B vxBI]0.BXSSû^Α+HBdU:IY$4"iM`bqW.ucC;3aesKYTƛ{b6\Fl6'cy)yd m-ʼnưD0qcu1ބyIE^MZt9d\M6F;z.fgNOx]}a2$_4 6D-uKpk0QB9I [0r=g atC!B(,AῚ݆4zP`, 7 ٥Hܡ"QLj4@ qy6\ u"И<*Mԃrɶo/$/fhQ@y93V*Ƃ#[$R=<(-#yPxmjK 1 ~Ӑtɖ>q$BD(M!FOw.մ%0 tY>kb?L)8_x5snR, .7,ds֧ \D.ܺdkߣO)2=#Q2%cJ>+GpLT e鋉*QOa@o~0 #C2G:z##mi ޻*`R8oe5q0¬nGhupth#_!Ld[҄y蒅."5u,4ď 0r*;kɌQYofL/eLpV!x3(!C `F5,_t>1|U# %"EKgвg_P9KqOHL0nM%6^*Gt s .Ѣ'FX?cpkol6lH޾#WfR7l5xw'blfZ:'+ln$qa|ƀClba}ĜGC erL}vM}'ٕ%$ ̻0'3` $b-קT "Cv]GVқR5NjXl4HC9ǖW;: T ŶRg VVN&sQ lM:#";bF2pyRijf6گMA!CBh\ L@SL78c>`;D#ᱦtXǟBL_8R$!' omv!5Ou|Mmk3bP>zm8OӜmMJ\t;VHY81uUxd4#+_; Pwm;*pd7 9L4EDV<eڱ\ŷPE>ejc$@+LkkM/Ӥ hwU+G^OeLZuS('ީ]$|wCƨeC"~u!'s?| jVN:I1*HSO]@}-B>Ț) H3ZCx`뼄fcȎ~K(EU=Z❠Fҳ!'UêTw0QM6\1C9˒[_5}O$ ,P |L!4 oCQ/XlںvW#1{څ+N:N+Y+p='i> ۖ°`Wٍ&([cXN;u}1l@D;#E| v~'.EW;TDto|+.q7&=[+TW()10 ¹E*_G(Χ>}`Ib!_pu*;tݓ/V?7bv vWY#͞]3fޫ0d:Z̆Vq<"Ov-edd7F bpÃX&Fě`$86%Ǣv`i^ D`Vl[2\z4ҡ&hltۀYfz#]v12R|!g(mZI`Q(ie#6Y4g%>`g{2O@0ħ/rv>y6n0mq:)yo:o:nTXe?!ɼ7vGvo`l}\ZRP `r%?ϼ\_<*'F9k<;u=23 ,7[AZ37,RXlvFL"io_g3Փy\7By/C $-AX{dm3  FT_jGiGu24c`yn7J 1 Y3-U;r[7$-Ȗ+MΗGE3m֜|(E*m61Q&m'/[;mCGk 6Ph8* ˟ ʪXE4.ؙ27(\X,ybWKigM~D5Rfwn~z ް~R zJ8}d}C3˂f@櫣ڝ6뱉E>ƍc#9)ׂ%%ؕ+=}VC~| 7Hbz^& AL5ǡYg5C{ZTݴsS@mTju-SiIlT@a !L;X8Ud5}v$XHQt3a 'ϢėJ5y ; un%A\DI& "-sJ˜b&x@D'֓vMu&B5(2]$l'\?r~{ -z~Sd lg5ZNaП叽 E%Gc :3`Mp~s` [ӏ<^Jf'Msz-2 9vz Zg9 I$꓅gRJh]WN&&Ã+vUo }_{V.,L)05V¸K<\D٪c^ JʒٷDMg|BQ!U#PEkվ` cTV6`Od؆w~|MY3@YFp1 UE0)T_]P\ػ5WYzt‰E3Y|?ue2Q5pύf/{i#XZ͑ ά c-Zr̃@pf{P@Loe4\WtZo%S#N"s^$ͷeԀؾaۀ0 w[]22s_缞;=^Z7ݵGijumA>hEa%Abe ['PX~X< ˀZ,8$C0IEݾ p^|\[EX#Kc"6 јhɑ?uߧh_d-x3%0gRhĘi*c-6ijQz@zPxs ^4YC}uq3BUA" Q/\I$ijbiD&Coqe kf ˩‘Tf>_ܤ1FBip&. $6=%ڂhk˖m}Ü،_fk娴s cBl9{>@ ^1`eA?e3,Sto=1ECߔǃ. dYc[~np"W0_l$B'f%2rl GǛ, MYsfvrt5> k\omz ݅),:wy/4@KkwVl.x( >f>~lDEߒ$OG ecWYGk̈́t#WtБ @]CRtoc2; $_!4{zo%N6LZho"mӪ^gWV h"Y'Q|~^yZ"I5`)ns#܁Dy{QqK慫|=?ܱ7٧d.׶*܂xYügYB8$3?zZ/8Df~e;GW2…@sN6})n(YP;>:۰mH1{QuYDvpUۀh.BPVEZÓ* ;pa2)ʄDf) E@RĴTcBI >$F`P "й=Თ.a hpone^(]_.3יij&n:jC4bj;C>%+6h]~a2 56 823MeZ'`BQL8!8#eE`}B C w8o6Ա>HhKCpݧ*pAAK ?+^(gp0aėG-4"δJ}־\ltŔKN-ӎeX)8dFz,fO[jAeHIIL3>fL_`>c][lmbٕ'xd.Ҋ c+o*xab')w Sj;G9?Y Pa"wVQ@G@X.!<[Y_Um#B ѥ];^Dκ o!6kIsr&ӗUv3bGS5Pй5!O)|<ڙ=(vojG#o6̀ZPBז.ƭ9O٬y]؄ѹs5/$7]Vw6Oj V-OC?3?<2lScќ4@|}jXQ0zK ]`@mn[RtfY.]d6`?u9vpv"0'5hd5ķ!W ?3t\/ *{ᇰP@ô|*'owA@Pw(\ &P=7;˘2?Fq:)UX~?p1| Arn,M&Cj(d!EieVPqӮ,A[ )ϰ*j.*A" !8{nAz]'>% %k欓rrP\! w[ֆ$z~Z%οea'",ܿVQUpRX2TeLmM7 rDSMgr 4͏Oc.Fie*FrN@ /G|LFt+qA e+pI6k%UL( RT+}PzI@9( QZlR Oi)u5CU| 'O2BM/FiLx=ͥ $c/_7rY,!@u%l8 7gj2)#`7z-A; !9<֗O?+E,e תC0rk?xTPx,`]:Wxŕ3m.Ru~ BܣO&7Xc˿CœTeuΈsPYykP"V"G^ *_'5"{$w+ݷV<5C/HϴO;zijrσǰEzzp㉨##$hP2ocMy\7_ hF,w^5Q@EeN v e$x՟Eqnle#}MnhʓP*pr[:@]92`()^G*\_xFPx~ѯO"?ч|G3ZL^Ytqy߂ ,ІE-5JYn-- lLC}ed;ff{RUioA|r,|jtWݸ#wƑJR'm 4kKL0Đj# F<:?2c=ؽuV!ci*lfoІDDmDD\@r76ZSRɷ3]%<7#V"tIMnp!aMnQ oSK|7xgHO_;O ҷ9|Aah+Ä2ε˕.ÂMf)4C=QÎf$^? *b)ɱPX'I w|+8q jR!Hgxt25 &fzF:@8 ~U%SdS(U8^_Wü*iDTղz:KĄʠ>%ɄF'[pIm+A,FSHfʣ舘wJ0@?4gdD,*o$*R qGigS]LM$ sf 7 Iw"}m4ܼ+(8ת=C,1?п `x%Zu1GlU/]<5D'ջ?}CX t${R79"W3Nʠ01ޕHZ;̶ $0ghhU p9.czsV [mѮqjFz y:\/#$[[:岅:%!WdYT=p1;W)sNcu/|yoW # Q[Cpu#dK2%.S{JR<#R_*P%񿐤zؼ @/"̀Ee \+<A"ш Y}x;ÓSbcGdCfZ3 3jN:n&5<,ht(̓dք+= P\|q_/!w[f^} 2j6ҎMx}]-%Zk;r4`L6/x% )2+ ^$ !Š~m7^54(Pd7' wկlj&"5; WI)*r3r5~%4yP鞁\XټHQC8NP7);ng;jDs:=z'}Bqe5Q3>su"C0Z^}1_@69@BaQ(/Iۨ$<1؍d/EF)(3ض%ĕƻ Wꛌ͕Yo 2I}sR&x׾W>ɇ( zhiй`>ҭ!,`iEh׋G9M6.?qȞ6{ A^ # [HgDC"uC I~],-.^{,t↼EK*;h69:KCw~G?uhfq!=ɾ^K9PLmxRnʔ&F1.3@QY7϶?8cQcSG"Mbe]uc=2RFZYC_j*k qg4&UAUS*d2julr QL'>S0e;#'{w0w5gȏ !* t];?oRұkZ |mL݊;;JhRc;xvl:]a,cG>_%T֩m8-vξ:wǸmmd5W9LpѴXJR rZE GL=:Fhi{,D D'9T" ꏹ3/ V:@W`MuxhzPMV I=7ЈI;h#IF*\wU7#ͣ>znsuR${Cq K޽V`?rv+=YzWNgœs|O~?/JUgy";f\ Uk4ԵpiB|=?獤njH`Gc޵fֲh -@ kٜ+ޱT:?]ḥ%_ޮx?:)FZv+ 3ZNm'n-L+M}b*eRoC1C<eF)T5.:e9 [|m"~B7@\o?apWq8W➺c)̂3.k-ij;x_]VhXK+ob٭ر_©f  fL+T7oQF8F[B` ߱eHa(ݧ+.M.mUr1Z7k`{\Bh\}ꁃƍ?t&#a/@>/.N}\^(F٠P/NwrK+`UܤkS#1>m)N0W19H/Pۉgso_wjw^F67_XtD~t@޲xs}M%ۺvPr?nB4K5"%<|FL>p״Ĩ/OWZ wJ}^%GفG|.LM_qV۹̱of5V L } o!9J w@8Y#kŤmP]ZeSito"`@+Dյ=ɥfTRVY=vښMnsʪl^T(=s'IhF r|t?~D0eFK $ a dG2{VOp H7Ѝ.+cG_0 i| mRy0{L9#M~63'u ç2gG))EA>uY+ZDs![[,/fCa_L8Čt _+]r= W1]NT#X]<=)pi5-FsFJ[ 9 3`Blzτjżs6<bmnL"sZ ?/wjsԖ{! *G{if^UmnN2 \IQgM"ָ࿃6O'R疱j揤?9osuVo`q4wstC]ہu\>DxcR$sb.!(n w-fkhjBγ'ˣ2nFv`3M&p..%K~MAGA^f7ҋDl8$q? ugEԏ/3 Ֆ֔9aP$D'lɑcuȝ!g3OY9i.:P0 A5ͷ@PU>S~g1 DE"R콇q!F߸KS)yU#QƤBێ5f[5ZWB?)&I,?n @9"l|ZE g{U?yYJG M??jaud8e/_uU"i?*Dc5 "cZoAzNxBd܂/6(<H` =Z.!R3lнDVxWa3) C;@-:yq |OAV"'5Ɛ .p 2 k Nb7KL{8}\Ec0ڤ*h}u,#PB ޥ.db˜"P9Mݗ2;n|Jm{2 *% slZP7N2*:{ l w=\  Z~< 픔4M hRaKL0+(!ͲI[rUSNLNv"0%lQJܠj3d~܌H>铓ރM5W˄j|SQk;_&WlT ]i-CZ=y$v` HRC~)cpj!94)jaF^"?=~nY~q`<2曪J]sҕ%r޷kePv,D % ˊ*O )|?6,W <vl3ꄦ'nB9Cӛ6k/߃;}bDxfP&3Ra-3L%_@*$O(b6TTewL[Q QS4 ߌ> #ZsBވ;>_[2xBM?h5pQ_LF>s@CWX{ 'kOsHWύ5xY|3әM<Ն. .x C2.)CHNm .%)F@RDn5(O aQVFZ.jIoyG+@->7|ܔ~ek&Qc.vbY@/̼Ps0]nf(VHUe*i*QX;91T%|\Jo򟼆My^b!1͑͐ơ'3PzY/5Ig#a ǫzd6T6+7{$Ǧј_8˃9_ڿdÀRxѼ"kwtu4ڢ7~ aXH 05 O SOYm1'o"iF+BT|yDilL"`|&1Z3Zd;&dc)/X840A*ݫnw* S<9 б n?QW69ʡ7ɟ?e?1d/*Hoxm*A\4u H*JKY/!!L[? i> xӏ>`js wBukaۦk:!p[D-6j(,a% κѰ%~q̺h-{be{7RՖAw b[H5 (ќIQ̒D4hrd C߾Tǫ3:#a9!Q=4<'x騼o}dC{ (GL6k&'Z+%baѻ"7JdY-D G,-LC#vk<^k/=,UgKP fATzj!>\ՈIG 6{TiDSkukNZCb$>9r_ YIUdn9.CH 78 VτT~]?uȢǜ1aLz~g\s .>A9 xuwҶ1K_R'E)Ic^@B] {E^3{{pȇodёD55ˊʫ­Y,mj#3QR)D ^hi&9ocR "{EtwC[~Zn.u]3!\G1|͹=0:\(Պ8rbWrRTѸF$|d30g N`&?ܦI]6rU#mp5V}ۊ#.g\yu7>xcKV{[$}fݼ[ѽ^`k8DoB_k|-.g)y;w-h h()@6Yq&"ʺ'g9 8=aSz_wc ]NIk^quVJWr%Ny'>? g/-{K!p$_49qXt sPJcXTY uB^)e)#Wm%K2nxxkN3) ?hAfhKܢە#4(tP*0r^H['uJvʋa^^h7ErB+gqQ(_>N¸- G@}# ǛUW0A'6S?_f4BCzmԏjy4 ct=pC _1َe(MWs; zUJ2x&Sߍa<Vu+UuEwpz: F9g3U |Wfx ! Mq.M q~'%OSe8eg*-=K]ڛRn%2 [>6w^ξ)h.쬌Ob9,xFBk'ґyÐѥ>M 9 jZWXQ>Q+R5Ɵ !΍v mnb %hwEu>#;ӫ E#)WadpDNVH.6+.R '".Lq4%<K ntGg_\d<|` nT,na[ Y݌z=@'G+.sl}Jn-ţeNy[ә%vxa)gb'&KC$mބPAމn#_6aF+p^0#rkb7zL{B؊ݨr_bpYa<޸p-$!!mvo:"A _7PxĴln򬒍 X2A@AԸՎ^Orѡ 3lw*[9۬\_  HT6*[+l*,^C7(uz 9TO}&cwsj\G++-B`%#h]N-+KٷCeN7 ,E]yʞtS`(na{a>O- ?O{8wb 1̊?[ 7:^_?Gp!#DVD?:$#{>DR^]ej˕=2P\i;݁{ׄv~lZub5k蚱H^trn;5KQ݈׳ط+&*S߮G r `C:ǜa%fISc{V4Ǐ<I3_1Mzy,-(OLS_ʛ&2Mݨ2(]NYw]l>̉bAYr_[O8\[زjTDq&KeMy&؆dDwi ^nwn_p\j+40h{s9@xJÂQ~f8ƃuB 4p8/\,d~ E.quͯWܶH:N| eWT*y YϞvWHIl BU&&x%9PcMl6+\h9i*O) T2Q-jZ6d<4np qqR]\GΔmxt&i$ ۭ蝗g0y8HMxTE8X#{@t:ibg*@j@B 8cVA&X.plсXwLZZiBilħ%['5èxRD1͌;Y!hFQ{CٱCہlr遲,aޣ,Od$ < 3֔7ڄ:Z)>wW 쟠넭n \_XgTpC45vjtOXpd/?l&-Id36(P*`=8Q_/F(neyb8[(Ʌ,e΋ 3/TrsC,ȩKd˼8$h*1QoIJ?,T=1$reX5,1go"7 [7IjL7,Uan`=ؽWj<4իnߐ&A(n=u3yO~/;*$]te3b.*XYvK92}U 7&hYL8{]{ILO+d`.0Q`&?+LNqEr ,EJ 榛(8Q% @ywWPy">Y6"O;I;[ئ׬h5}?2mh-R$_F`;!QNY0ΝS( =XJU@%dEwx>Y\ű-s#!H@BwQ-}cR,JRP H=GԹPtu^[ɽ-<]Zg0MoSƝ6rkɒ Lԫ ̢EP;Kz1*Mx褀-fܨ? i`!%h'Xi2P,Jv MrT=˖?mf!=%dOz3#5d7q%/\6SOsP҈G\uӯ8]d0 )Xz8Dq^A'Cr$(zl8w,s,TmNĤeYn>7c3*O;&=ԱGa-;JaaD_/}9|5@XA)V6a٣(MӼ3LùBEݚ*‰_8 T{peSm/ٙеSjxt- < oC]}"~lK=CsOقɏo}:~.H0ڔ"HYB+>1SYn/#Jߐ3Wcm|᪆կOgSyQR˃FsLCTiJ*ݗعr? Hid)yˠ4=i41e #[eANe#@oG@՟Oe eZK)rH|R.^\3';jdS7;Uu~൱~ebF2z֖4h,K?E@7Al~ B[E WG%Snַmo/H\8s7%…ł`(8>RZG.RpD̮ ߑ)UR*%7u^VBU>?9arB {&0h3BpeCbÇc^w,0Xbnp\ẘ+D MSSˣ28b=<[ּ1qiEϷjEvK3KDirt/wG4rCeX]uOJq5u8tiBOl)zHU5jp>@ G D k@4O^#ͯ[mj%[MW/Dgw.y b T~9N6nᲀCPRo==,}u`ddžxˆާcsDe dCl-hc܂?8D.]R!ߦ7`0~NkKz|Lu|.S 1Ó4dtlri \RaUd4Ut/vd5," xmg n( Q].yF,]4*30٠*2PXV.// ņ+V vu &"E/7m9*SPN>iJ&mx8[sF9PGں ]~'CU}>I\23BM<#mHgi/ң"y50 Aw(?t$ 5z4Fa}P/CMoPcZ{F뼲Pw!-5phm œ5gig/.Rbr I4Wm=ww}8$- c批M+Ly}v&,- ͇`-X.f ͫ1SCx.! 1#Twc[ q7$_r f õ:Vk7ekFS@S.ɺnC1&7K`$F{BzxU>oN*%W`=J;x6HgZiuZlĖ)熣&86mϐ=*h> {"N7ۉjZb\7ft {[|"ߍTJԃ,~ lΧyE"?shZ&,h賟@=j-RFR޳oW-L5?>d8h>u52"E6@ewo4% f 1S,Rg& Si_ 0`yp;N}&pDfHd/~yjtV OWk؅긢;;J;kDw y}n qLj!jQ!x*b帅V QSI7]*Cy_kJ˓R*_?I/ ;^).~*"3r4VDd h7 #&KC`"r1VlYutI"A|:47i:7bgB(kðef`p"\r^94]ú.Ge ,CCQǗY9u!@lc}l: Έfiu /_:}2GӺ wK iFYTt!cá@U;yWb*oX /6˭dJ~=~Hg`ȉBi&;PKE8 <=2 N,EuѠHkMuIZ*|{Ƽ1s G*Xh,jW?KJ H{N9 ɰ*l\_IkvSqZu-UhAɚk=݃a VĎomaF# ,7^<fOAJ.^l>3 "H_-!ag,""f͜ikzمD,FqF˃N ' z/BOkq3H8k q"]ymTrSbk^ 7=qpmp-U4=XrV >>/՜1P|;X?Uq+9h0`S9L9`=؏A9 Nj1!Oq\lI ;!4YP4Vc6Bƺ 9%\l%ץD|OS]EJlICur/Qa%_:}J&aY]7 0NH7^Y]g!0"iP];b~ >z7 Oa~/mGCIcGlo1覴-n*Xf[Sp-KDF8@QCk&EGk>T 7ITO)pTi7lnA-eԼkoYq$ /p[mPhcEV.әcHy_BX~c_15d ʛ7;vk'8K(S@O yZZ@{pA߲2_Tw%#\y :C8ۙP9^ b⩛k eNʞ?I<5uGX/LCst3d ƍz EFC`E$β{(z-ޅԫpdehIq( SW´¡m!6x9Ŕ(њ($ <$b4<b"wSS `Б_=ZF|X3(n&5Z)" U^/:̱N.NJ:Pk љ2/P(hZmC# Ñ dԮZ|YŽo VGmhҹIIݻbàS Zr>S n>owE,c8A'R̭C)5R- {QzbIqA{ _ 0_kB5)/Jf Ʉ1D\6Vv(0F!:(*&p~if-W[tA0} ]*-?Y○3*H=4+yAe_l^gmWvd~ K3WO` z P?X S';Nu֨'?ܥW( 'otQzjY _V~A;cFvmTB˝'$_,F3gT5pՉY/G[soOEX]:'#10oR_]F*h&]tnI΁fgu*qQ'?G.,.`ay셞(M#`#O\HcYBLlDD%tpo=Y܆Dgnjӈ-*"g`mR'ڧVY)^LFbQR<"i+1F^(.Q.D=+kq Nٔ8 qW@i$8j`q;Z#|@,7>D w l[uOj=WL{zgT:-=T`j}:p _(q"(c(G~`=<9Nqt@i˷H ''4v $I)U(y rՔ>4;Ѝ7]ٞ;DT]6w>3 oaM{폇B:EXZοMG$h>arrr uPpp db#Q78[WIsD1Q$gzʷ@w3%f0s #9$ KcD^i=l<O d]mE]ޛAv]&(jMJFDqr,ؖ>|Vpr?G*4t?5`m;y@ gسcI y2Hr dݛ\nsrP$ʶş窶`@6![U \ko:\t ;aUʮAMFȿcghWh,&'ːd2f+&ΣJ]&^.9]`wXV(1ʓ/˻D*B|kl"ǥ@(Q=f~0VkK42Y{2y26%VYA}vg42& FVVyL%ƭQ_RBSv[%3^F\?ҙOQQ@f۝82eYvջI75f{'1O'~ƪi*quO4kx'PT\@\Zig('w2zBm6|z+EAX˄,VQ>G ߢlbKT[OB]MB02ZWP1&qG hGP իD<䝞u[884ղ%z!~4Q6iޓЩ!{Yw8Kt]CIzNމ&$d2X9~a?$+k5TCYlHl Ԭ{w @_NY2>roc@꿾Y7uІ>x j0Ѩ5C@v+Q Uِ@kρU ~YBP a|?⮙ e8.OK~#zceZ*s":""rjoEEB{ 59(6A^ԕu{5tD,9`&R#V 2Aj-*B(x̎’,sq/ͣQyB~D?G%5{Qk&|Ҹ/+= bDYxN0$nM=qzq2>v^{qw"EaUO?>H*?7E-y#12j:|a"&X*X]-?wgǑ/;\ B{f݆Q ǧ;S Q}!GړJ0֧2ʪ _7 &d*w@mŊ ;QLTڇex_9 (y<˯^^0=L&=UnpB:}pk1#tƍj?OT Λ=UbT3!LimOdS#yW‹;<'l3N>B3)#ȢNCwf\r:.y; 5"}`wґt8nᮟĿO/'4drC[uፔ룣g[U-oaݛnb/hqb1 h~ g?/PZ^ T^)YUIq.cjVmt)((r^^BgDU.,I~lkw8}qiݝ4Vetcs8ZsI8Ww(y&da1l a2Cu8m-Q@kUzBmMd@+j*aSe$NW&S 4/lXsg[k !)g<8f7k6;[Ol>8v#74T5S {o$wCidMx'XR4+?&}@ `Ol?&4Kb3'{7-['@k!H{WtHWUp]Y\-SF:M|RJ'3Q0Cx簬?|w6Ap !uK1K[{YcH{ϡE- Gi[};i;DcG԰\ԴD2ICh'g:/=FhUŷRzrXٹᠱ`HTb&,nwyA$J,z]^vjo#{Ypw2F&9!ӡ"Fcޗֻ&PȮ]9j{X˟j-GAj1^\qw#GHmQg${t j$ Wq_3pHa xcsq=uD,fz)\Gɶ06+ w=VgX ʦ}M4.:w6v^L /*Ş/~7T+b4@jS|۞(M]q? "ygJa7f)V5OGʷZx[ham_㜙R"b45ɔ'*?NWpwZi#eU@5vS5_J*w;W|⯡Ԝc?H3.:Y=5A(FB{oogyDk`+6cH #o[= O] v^r,:'SRpGyQNm2{yFXY 'rp3^W~|"0ebkV^d#1{+Q1+Ƕe>$@ڏχ=# '[^"2j + :dCO D?;gT@9^>bdN|^Vakɧ9W/ 6?(&!lP_E;eG DjǒˍwH &2E^ J%%L.K@.v9_gOk+n#b\(i%2#ቯ(V썘d#إ4LDd(q+-⸍n6 fwDǍaw֙JmQDಢ ?!,3s3 ˒No G^~I8S}:"xi>PBTSI^dXy+D )`f0yCjl=:Rmum1e1*$ KU^c¿XX1pͤ[44RLH5v7?`-GZyF#8 `r&F :+Q/i0^RG3 $h07E\(~auLUu@^.~'b[;'%"TI5:As5,bLpcD6:qjŔ"L**f]E>›PCv%u뷖jy5dSNEeCuLIƈCMa?X6#s(ީ&''Ss *H+g^-:%ϻ” (=E-&cӸ$ GQ0Z+R|O5eZBFK cp3D:UA.\GmVPwC{L0YQQI-It&yDHv˨ MW!oV: v*ӘKm/8zv8D ww43OK&u)T5OgJ= P "EOOKj>r,gS}QHK RM!y-#SJamr؆iB ;irF,gB*F9S7 \x%!ޠ#9bϟ_?z3xR*(E$jlIzo׼-VFFBN@%V(Je\**6~Dӂ6< b [qL_2m5mx--Pcfp/>`c~H"܎!83ү,,h LC&H޶pR u)Vq~Rs\g1q"Rxs2;1L:8rv=,'R&#j𷢇>'Pc*;޶/V^k??Z}. y$zg- ._ NްӸMTzq5ٹRLpkD&r(jI|/?{ښL M5'Q s&C*0wGz=j8m%/}A*@}*6waoǜ6#63Ba.;fbāqb&n_iWƚbˌm32GuDb{ZIIeM@2׶q^}0FM-R &0h!.BPC]<=:(g0=i krtoO~^^vF{ wJYJff/pikk0kLlw9Z&;Šq-3\YC^(K=E3Gݷٷ d0UfޥxvC,pYdZz,sIH]ΕtJ!d;+VCVhVRKw7W!:U4fN߇3`o__Z˛!GUլlVs=xc-\ O4mvD:^q~H{|p8<8(449愭ϧK۪anrʏfo\dz%UƐenJyckZQNhN'vgQyCFIade4;&é1>"Vg [tAJ53 #DSq/|?M3D4aIS?҇xWS2YLj64RN?%KH CKoXؒӝf?S>Nj \r!Tt.aͣ T'Az5է3^@VP kLww]I<o}d/~-Wq(]m(l^w~v/cg`X?3EoN6V$W'>L 2H#qi5͚"]G!2.˓S2ArlUW3-hmK.ip9| :VCbUSO@h! 4#|klK16g.6EGuJ\rZFOA}v* @7iJoe_VEJ($G@:^S^vomn赮Y Xl=v8aOWvn7'Z'ߛIEU]f5O-S*[؜|ⰋMڠ=ŃG+=h!_ 5&0^Js'^ M1`u,29[ %L;#*{ %"z t.TWbxtrۗ&"-=˛ƪƲtϙo8in1`C|'jJz=!O{%hW,]|-=s{5D+ {{Gs%5a3b6/1 P97$= InͩV VB+s:6?[Cb[l*ñcXi.Ϥbv>eWႋyyA[Jfy历J-1i+4WJ]b ׂoKwۖłf!* gtQ]aF5O.L:u$N@B(L^7 D3t,o㆖ rXiʾ_ƱXᶣheFP|)H[xFݤNQܔm<7-{^jX')6݆շ;U:rfCDBt[_:jO`Lc]-<B[5f0^k)q`f2u0.k(m23kC enp yQc!6#X'vC3-IEU0IȟCq񺁁@D6^b/tR]qa=DzЎ>WoD)}HpKNbϑ%R_'A"\Ɔ]dcZ-{.F{VNf~6!)-/|2ڮfw'7ғ"B CĹ6rwlʰyO…j].%tL"K}lޣCpNnDI~z γD™I#GLm1FrYdQf_˥ ^UpDTsg]sKiI%'9r0='BiW?es,F(ݴ{|q$)NP7&smrCY&)L˔ݥ_?`tmZ cК:Q|-;R^6jnm 9 &pr<#@x g8T|7$_rD f"-iRPԥiCAx|<1\#hkTLR^'|LR3~Cd`< \CP!+ג:?Q)SjNHi۞C3fts_\riXjtbՆ.+7< gX?W=`_w#op A14GktH1iSMF\F>љ îay=+Vw&֍2zaLLW0J^ǴPPmB.J1_S.~2mB n=U d/I G$֍vUQPy1eMQ>*No?OoUwDA m7Q_JoO$n; &-_;י|xS&N~lfo-|xH\!w΍a9Kr0טo&X:XLMq5=il"H$.mX0{H< -C%& sI fʼ6)[wt fO[Rn&u xeIw۳1O*b_@nCۤEs-U3T^8yEd ,LYGI#w- +iN.<*5=Hw[KX80oXd+E^dMFk;dWe;P?8kVt9q*d ~3GLu5oJ"oЁ3qp/Oc̡HӥZ&uLTVF;\-Li96g{y|zZYGAt3تzhGCK~,oc:-1p#SzTfؽbtk3_t S66C'=fZ7B)WTxR9D3"Ķ$=ŔdhS:U䞰%sѳN)/<Fl_k]|S"W/D۸|j*NK)̉1;8F17%#9&EI#_ecE'~fp>Z]5VOK.+Hհ{&ųAhc;?o9x?vת 0mﻗ6/veY(c8?\nFM0z}}Q<Bg2Hw%E"*+KhIvWQs7@E1J8[fΞٕk]d[fF?6X8RQDL)냫#!n %[H$ ۈS䨒k^!?h BGN@ʜ&&XoFE! phj~j^tfwU!bLcÉE'#6i~JDJnυɼGRzq  k#<}$>LI%G  jZ2!|@2lXN;. QY :Qhb2&]/{>#,#/)̓77MNfBjͦ܎!lu !,aGhK;bHb hOTd֨1|*dx'}hHF-˟3@j}V2δ^ȞƧ7@$Et'ǛymzNTBi$#Yed?ԣ8"/<DE0ȐL$mJe>_/s h-:{9ljk/$ka5RoW1,[fV ]>#?Qڼ`;Ry8 ǍG";gW&r4EX_Yo_4[C$J\.I2gx΂ѩȮ),굴@$|^~XS ,-N#Հ{1<Ճy X>TS.2RއKb4_F5*{-dSO ;obťWnDNoZH|E6Y;׮Qp5KZd."WzKvqV >N >P ǥ [bj&oXDoË_LFJѭyYFSAR#s,ɫ% .983 xiQk!/LZ уd)ؕ]# m;E%VUQn@N\A'&[6` mCtҬz">ۆt҂ m ]P6D20p?.yfe;|=^B~9;q`,([H&ݜ #],oG"U)׫6&("9=?@$rK:}ڱ0c>PyۖTd<ߠ+/jk*@iSmsw=H7&,G?E- ˊ9JAJhL!PY&wKlzʝ2%N{PjWͅN6c*"Z褡riZuYo)N( cAE0T:/2uj+ꬩ =g^/r)]RaFk]㰄CP7? 1}E1].ֹLXʹOTؓW)-?؈x:(xsX' >buAISd=eݪGtPLk-} 80weqLTCpCKΖ"7cGoRKjsхO@`.Erq$ Akni/2v_a3vTrAJ~8p.ӧ[8d=s1f"%zyОBO}^à;c`Rۮ{6.itpsmh+NTY4Xg]0C猁ȔB@2[ikԻ "BfIyf6 N9de6I7^:.-Tu<<Xv5(pVolR@%տϦ%%@*V 4 ?pa7Kf杤B'td q˒Vq8}%iu{63'{sߏKjHk%,ʞbT|V֬2}]I6p/ՔlAa'/V@-CAMYy5N'*s694`~6IdsM?H/rK<Ń1D?5P47g.^Y:QC`h4֥j$mBh{# jF>UHX ޻*n?50S  M@$8 듈G ~!fSm2p/x@J: 6/< ̎]TU|~3]4y kاr#l>5D/0pC@ gȇY<%! qPBJo%5V?bǨBjek꣺P®jC,Pq:K,/1!;}W`vg,>rИs_J\OFſ=Ppx3" !P?3н.Q]bUasOBxu';d&fDlfaXzNj &/VK!-ɕE+=&l㾞w/f-1sTku5ŗF6vP6eG2_:)`)=uL"g;OށݟOU,G#_J{ Վ~BoςE3u\Ĵ_A3 x> a=4Ne \op"9`ER3 헿DS_6ͽm%S }h@,娌;x76Fc`O'4InzX ƶW !gEE&u7ǥ4rB/Wyg"ro, Jxu9ьIK]5M|F轈YV߿uQ8GZvx`-$uY乫;_J0.˄k 32~8c'3-Ȯ_U/)]84v{L$V߄Զzm~6^Hocyf_gb)JRş6;un{r=+CuW GhPPs`6l0LTH'%Y7huOnv$)Fvoa-mp7> b\FF"Hd4f;Vh_cњӁُ/?Fl[ݜ8 뇃Jrܲ"BsbC/wj|3ßE>,uS 8hU^ o}o4>wrC>a RFa<+C_1r͓}U҆$XaԋQ\kHp57QtQ[Pwy+WaB gxhi 왰*IG~ɆAzĮ}L b`l/v@Ơ~&Ay.4>e!"=|ސeg/t=,]G".m k^A<R4m ,YT#[V]%"wC"LLӎe;yʸGzYs@J hD׎igҞΛXfR^p.^8ܔ "t[j :x# RB-S`(dUZE>cjeNX *fHH,gɘYvk< hښ> [ԅ *SQQ:h4בoG/S)UG7t%3j҇3X>;5<\s7˲=.:PEb]W#I)|/4uD MV`Oc=J*Zxw\/2lq H*%5w]UǣPǬHlf.cS=WqqX_/as(ctyN {V-3PMA8AQw Up C* @~4L!?E3 ̌*ja|#Վ"c**e9peĘ=nɂ> FtWx%e喝ʌQ{lkGvhs P9;zeX'f2ӻ)fl#N~#$1cajख़812|$D(*оIW<ּ H& ND\'EyJaOuc 9G QLjh;ߝ8^ rl*C)P<.k@ .~.`KPbФ ȇ! G(}84rrBQ"sIü 0pVYLf[Y0|7,GZ9"G"Ub[-/q+*U > Z$4]:KY@wR}H勗ۄ)Bޜ,2.W2E>p5vV0o(cnHWefgKI tk.|[&f\^wCvg#GDt7ϓU_/\"llbi^I nRa>v( B,`[aS-EyrVV-sGK}.vZ= f :4WAa4 N7 lesɾs}#g{S`R7:NOBʬi~*6hI7DL#p6mhb=BC|/`:U-aN NTѽԤNt=P(~W~#njCfj>/t1! i*y>W.P0v%S^`cCon?'[gIV.> `ނ8DmZ{ AidN+3ٽy҉ W`T2Jޗ.};4JDɘӇM2dG% v &&+.RZpיX! gǟ ,(yq2'44w ؾœUMw5%))Y}+5A:v0< JQ QfMI}}s`?qRv,?uaϬp㞾jN$6%$FS/'jr8nM %ShF'lH03-Z<зl!nZ~{Xtd[NM`4 !=\do}B;Tn}"6;zڬ%IUn,Y#%BEu =54ȣ2Y˳ȷ<8@_$>Y]4FUo7)0Ikf!-}VrwwDŽ_T-;y_d}n8EgWB"#v9==1f9DI y09q.O &>×.p=+l&\g4ݔzWzЮDG)H'\э|ڷso K_ 2x\hk ;QAE XXx[_ok݁e~*K2 UN )_!r0<gpǗm!;gT-SAŮ@f_ Λae=_j@jIrv#"!XE{ʔ;_>$3|j9QFTBHLk(`%oj}Nۗ#lA,sV6`9w/P=v7$|(rlpЇIY)V' mᲁ2<o-xg)tGVv3bxNY< Z.gوsgb'0@ӒRY9کJL'xnJƺV%|_͕"\kPlނ]Od6hAPX<A W>J҆)ޕ`3zrG AJtVXh|%n:+gL ߭D;&_!Rcadƺ8'<[ݛ_(aHAᡄZ/Yl$:ScdVBbTlӘ ! zAU\ 4e4!|5k Y̐m1&AHNբ@ǐɥW7%xR@N04{74Xe3: (}cڧR5O Q=+f'+Xw?@OosGໃbx>͔8d)dH!>d,/3Jfu&K4˚jx>\ۉq&|C\MDm[6,~M+9\6ϯ/3K5[c(tA aҌq诵:U!|ckb*%:K£,gN'OCT埿[aֽu䄱.4i^.as; oHo.̉Y@?ӷ]N@}KɋYRXǼԁ!ُEZߠ>]mlLmN2E7.soC%ZH$Et7+Ypx28 }JPx=!xwrԊG!bρљO@KG6W^34:R&%΅ 0BS][1@gI>PpF%{z]S5 i6rS4ک9A bw%sAwtĆBVXI.2|sVknBϷE&nc[E!Lק%86XRn҂\ڹ`A(I1!NA|WNL/ ><$|HTol=!=U"vg6v4U+4/BgW]ܯZ1dsbKsKv)[aL 0DH49iB%9{Sۉ2r!| H>T;hdedc-ǖ:q!k{vn!!f񪟀IW_6Oh =/BD{eYNk>zc`IzSo3:nƣ0VqWwHC[TȥWJZ0Wќ3ٞ, j쩘?|DafݱU8l<夸^{U>cT1;A4ѹaW‰jb ,,!>{P\!Vrgȧgw\aѼH>T<܋00KD %] YA7+ĕJk2,7"#PlD%tj!vvz"|hZ>4kTX6 -*7jCdW/qpѽ+;5aH{|"]6!%b(Z'p?kҜ Zm[*kLkc {]"Csj*4dAuYa,<`Wy^ yؾFA^'iD&h&W: R`An2VW #6#V0;WtagA^"._.`,5 Q vlwWuǛfU ?i]jXYņ=_*E"tRt>ޡ^eL0 ߞGޒ3}L$xZH,ww+49竱0BE7d,r"XMbhbK)boAsYo ׺7cFQm6n"R} LϤɘfපfPSZN0t?go=J\]MjdQOr¨A=F[j#/vv8].C2ד nsv :Kg/?'-$(A ]/jP,IҔk2`B\m(H`;d?p)D}°Bv~`~-~u*U-?v E%. =qch1֘&s<"qLt2IB8 ODOѥdTʬ)ݚn\äRU?!YBuu g?qx-I Ck=`.@meN UD>sƗk*GxS.&CV;OkIo5e\\W Z"]j3DCq~<3N<+PHho1{Jb 5hQ'Gt9[5iVjZZb@y](y}|v?[.ͱAR 0%VxC|yQN8e{F+?Ed7 *WeeX3HS4l}i_WpAdh3bc!9c1kXo/5^Zl8oreYUi>A>Qߦzr tT;72]㴨AkVlPf9)'Wbyó6jseʼ>;g9  1nl [_#X~~Dj^$l{8A`!+iQ@BguZLYle3Š{HK9rnU^m/ؽ_86vh+Gujc$̥*WXl9;nX9Ŏ_h7kO~.ğ)j{lwDsM&D䨑Vi+F-u>4q\\!|#G9 _5e~>]qo|{俢8gIWI,2ܨע0t/O2&3ceOrǹie5;΀@1BբQiBq +,sVv~at K"o*Ҭy3SY,'|!l*j*gLZX0[W]I#)^QvFqB[0S Ou7T o+nJl/&z,Q?ž`{DK]!WsETWq$<d /gMGɺ1-P+m}c<۵׀2҄T'HDo(xr$S Z+\7\4Ji}[1eUte׮d"=p= KlQ/  s4dx ]d]9d&/;3g•π3iSL(>Aj9{jӢԳ{2*T4ۉ ECM*8uM).}$K\kCZ6vĆ}TȤ\#N3W e ]qVC>qE!;mQ$}lr) /T{2{:oo-GoG:G{n>hX :IЊwN(&"PD~TWjR&]g- [yuw8!GJՉ'C|Ǽ0aBsWp$OJP9Au xbǀŔac2wWf&NrS'">ޏEƀRz}8w\"xZ90T_Bg*IG2&0 'Zn08 ߱rY<Ô*ź~ض=o)6fK2Gg3+G?]YXMu؎Hz`6Ed(4z{Z*ۗOVMqчrg:iX-鰏 pE%?l̿ȏ;M+qd(T75~v+c&V"]]q 3p(`u<`P(>2jeoWdF\( o1Pwwg6zbbqq{!kMr纱_Jv B_tswR` CaZ0×Ҳ@_'jqjݕ!އ̰?LJrS.E!&5QF(0磭u/!μ&IVum Gple*-b>quڽ gI @}G2X]5t,[QS4..3R.bk۱ݛzy{N4>5Q_3@%>6.G Vƫ 4Z:kyNژ¯hu}zE@z9QJ8Pw*~-2\kC'',Jy&1LmeRBBqJ-y<c-qtxfŵgq evgckm^Tvzͧ"=gKP"yp6;_ ::^gѲr'6S HKD1Y.ʷ.VΧQDia$ b4nQwR+UOtM*d݅EN!f2骉~c3&pJ:%բPsT_TO{т WT`i-IOѿ f(E~ 1!郉@ǖR2_H&?'|86'#SA<¯lh?ZfW 7 #ֽơ<53 CƯT?5~4p _dBD! ГNZQpz*Rmdx  |--AOyN#1\x`>#ʇ5y{:Dhښ& y̘?\L~+* Lv HEj5oÓTp,\7N?83/,!t/ɘf=UCI+ dB]-PdZxf5 8 >n%OҨ7%w,+cT^:d(+!#>is !s0o܉-'øSp[û =~@=E0Ylf{%$(, 1O;yv7ڣ]AGRTݢ.gL7% ǚRjY@tcvIsY ?_hgV$jRJ{S:rڈ5Y=@U*w{n WM>'(88(gllP8l .W _cmt<襻͋;c^2ޱ|N*a6Ć~!T"JQzv_KI;.|/Z7OLsBSژ 7FdtGqIUh-!"o8nxko^oo Mݕ7;BQ35Z- k>*Ͻ}ƍ[_}\hz t$_)s[G)A70HɍO4}_E TViƎ;O?sZpX>ߣ`$:Ŏg+A m^;Eovnf\oHdFs﷩v1(B?ίԖ2=10PY:;V&l̳Ef/<܇NZ+!¯,n񍿇9*)zS Y )H_tn̬Pg.8A{h…]-?UJp ȑĢk[-TZRǪ>=Q;MLEG+cX:1a_Y؅`rGAض4&D7S߄qzsgr:J}a@Y'H열jXt"b}Uy%GZ2F%ir^E ԟhh=Ĉc\clMDD:I7iEx b@ e<;VnJ"$Ȯ) eQ q2ڂP[6<O:(\+;%.茥yXޙ-ޫDW3nόyp~Ʉq1Ra6B.z UQm̺ U;&6TTR5 RdԎe./^kyWdPz)d Ж *#M"@dEbv&4TͶQ/WF>r<ن)U1ux\12h ,1d]WPԫYp'ߗ Y*N=rx#rHb%F.)Nsz5B=]}xxSѕwlNI*$^:XcIӶBO;,r ~TJ#x/(M]+ᡂC=tbۯ}ʫ"!f@CAt+l&O7-^7q 4e۸-kTFLS+6ል(4-hii`ΐY2d1q?ԻǠ+/N3f@ 1R.q6» 5w?vĵ7w[ 1,k `ۋG*iwD%$~&b7S0~V#OF[@5V T 6J81V%H9+]vc:εnÛM\ 6x~H%cnBO`ߍC;,&ZO+J Ph%sUh1WoH co uWc:u\D/N2ZRGv\rUAZ5{ˎ-Cj޴ JD QV64W v"{"{0iD)n@9î&Tc\Sz@HT?/Y'ɫuWoLw7ȣ(_9 0{=WY,j|?Qs&wx[Pnsy=c"KǞ!5mZ)~[)g fB  Я6r `kصgnMmD_iSb?{@7&/.T] 9nW=s*]6}8>]g—~Vdt{ 8(ZBD.@/$WwBYcBxѥDKE鹊t6Lٞg@[Cԋ5k?ɽ˸rPdc{7Kم>SKֻ>NlA!NOs0wO BŠcb}#|QKJ^oSef(/wqm#s&<^YERpsײ!g6ƞ.rq}^dxwSc)_fvOy܌#TL Xlabf:$C8"J1%J5. &Xg:s@tNB\&d&F<1s̄hoe:"R{s4 ɟk5K٢*`NϳmL)́ǎȐP~FwL#WPMƬ0hKn- 93Ĺ'#M zd6lܞ> gr»?Qd?~8ң&!.*xN5ڝfqe5oiB >#ܑJkRrzMҞ:[f 3#!5iu[K/Ywӕ2@N P,U)2UfJFB? "O-2'uٕAϕyDUg{jhŕ)v$Q9 2W`$n";mWRs%1ІNQepw.怄8h^nt٭mp&N|dٛ-;wD7pErk:ՃrnŌڟUQ6uf3O,}>E>tj\w&{yB]ߍl0^+H\<|Wiʲ$Q(m߾ـ^E2+ή'f nV]F^S}I1e"$]T@_J1Zh>&|Z:LQa<=^8w9R"iLh'_Q<}q&2~1ͷM~JڎB$jB-&oo|u`A~9{ǣ;' \Qײ-\ /L\D#[ǫ!jڭŔï:@?'GaӚwQitR9pGܧ(5k(΋*8)׾4V3q{jeL"ǖi zi<^w^vwĠyW/ E N Z[ D ŊNJĢiRu)hֽaԴw-<-`҄+P83o',(|IO)P;\DByM;_9d {YB9%w67 7;buDlX$UɟRxBvDmsP',seGz"-݂;Q(;pxXhj0~e~u7/$qG31!5T&1Y~uҢ@5|_စEppp>1noo|ۮl"=}C# xT1"L42_J#lCK6|ŒΥonyp)RۂQȕV֝:szjXN#v6^Ԇ(}$Λ{SġVmrd%(G?]Q$/^@;* }34|: ^K6T+9+#ow`T8{F37S( )NlI/!!;-#7n'JPZ1'աCrtURJ' &$[wFFD{0ZO6C]h}訇0땍ܘLA72:UXj~[`h8$X5"W<`,ўNJRTqjh#ۊT灔tgHw(Y5x{}Mq{WMFtdow\ ot)`.M( La3Esz ⧳>%!&B{nU,2hV r^%sm#A Qi0m eXxchLWv"2mtpVg8HYIH&\ܷ,esBmyDs]*Yf[MYjrN>O [7GN\yѦ?c@Ce[X&~)HZq5 E̿lGNSٳrqNa- w*3,:Twr%jG?k`Q,m^~gAo|Jp"Uzb3iN08W*MnBWT_Hdx$@xboqiٺZꈔɵ1~;)0w}@jE} ^I3+}ptwn@MuoC=P3*Q/EſDZьA-Nђ-eJԼR>E1^wlL3[bK^^/G<)ź[k:CZ-1HkS1[^0*\!:qAEͭxo]jFC5]t&SB*o5t۴s+FHa*7tih;!YzGF:d_M}Wk7,λ- ͼ{Q7g8lCP* VryI *z/7C6;gw[n8:*f6MS>uW/xBGi-\m$u S \!b, \y#s ]ipn==,aLpS7=zI3cӎ] y^j'˥YL2Ga:4]3FKw!PrP M{%0Mҳk>d0RN?Rr#º\=SFg͋5QOmrYvj2ۯ2kS;؀*nNkbKeMBӍ/ƊaŅ9|6jj)'8ʼnr)9Aa mO,ѴPR0͝\r} w11D)VoƒtxBhVi(> h6v%kgƼҘ~50,߻ü|]`NC"?;An+C7oP#Q%K覢9Ӊ:'8* qBRнYOy>\o ԗqop`Q8"-a[fdJZ~lv Cv4FCKj-EBZ?v=lz~ԅ" AًSu(kt6eFr”K 7(f R׹p0)=A'Uv"'{[V]Мfe 4 5T3c3ͽv0E-^!3DIN_!Q|!-n d#]̗P>$+1O!ǖ˙jQ"nvZh,8U0엁ڔf$)0wmjEL*Fئ6}@jNNUý 3fh/y*+3Ɉ>5=\8d'кe[eFCdz0_H*/{˶k84FힾnrV: fl z$(+*Nnzj=|pO׺dc* /c<3- 74't~>-I}]vK'Ma!S6:qC?kfgU-y"MvrA:u1Ry, 4ڊS}vMZ A}O޾$!85ڦ댝<J gx_uZGxuX4Y=C}g -'ZO,NzUEk— Ydxb,<9RŢ`/\c4.vfcضǬ؈k9\aq fI+o7Sc} ɥ^ԲN={ ņ=( Z_7ܤ}bR=chL9r*@J싹S/sU ZƐyY3(˳ǽo qi88֛^]iA<1ȝ i (MnS05/חG4m œgJk((_>D(#6EC8@ T! "$2|C"ɖ!٭70X =7UGP^W#}f3h%3qAw߿{&s WR5prqd,juo\ @K_@}ro}V(iQ_aȷc~YAGz9)<(*(မGqДQ+I2TRys_Tό=rEHrPy'*[O>^[9VSt Q_%4x WeQ)2$c?~vW֞%7s 0=OTA|]˯lR\ C$^C;[YMjGb8 QqּVrl!{CFa:VeZI.E%h9Gaq3ɇbi$_%-VkC*Hq#a?\-AGR}I;"]& -uԸyzmB|R6oXN] XjzM˂W,"]LWq\k(xpU1Z l8 "UE14į,a_qR;4m'!@|E_kӵю9tktOAy3g+ՋxmEc_# 2Q 5qZtehQaqe{ PgT%Aؖd*ѿt|U%T9l":7vm7RgBL8Tj]ĝ[$r43sNSi ̐NڻMlI9%,#-,XN%V-sրpHRVG_O2| RZPٟbL$uc '8&NcV ~M)sCiNtFdП0dZ#용>Tɛ9LH`)ʧ3#ؒl ({EI0_)@ mRY4Q |WZu2^JfA{/f!%\.Jo!xT~RlfvkR )J!$f8acac.il8~ },a:?jɚsLXl {$!!zvSzA~^V9#񪦮d|*rTpA`&EӦXaʯ%%pm}h TI`*cY Ҷc-+Z[iƟƊ(}FĊ* l^$gfO 47FF ш-K[ ^ 158;e #_iNԃ2CAi.>k)O F`-oH9e$<×!V[ml hי*^3MPDHz.y)B#'  #蠃93TꓑJ*ݐ&SWw!Nh!j:zI#B KJg M+>ЄHs7\Y,Z[bw0MsuuWVhq,&v qu& 3jc #F _xX;in/f#̷.7?PA |2 6ګEz\%x#`VS{_Pj].@eB\W쌩bM`:E{ Շ+Uc`1^rĪ`/>bQuitl0_p(hw]n+0W-ĩ&vb-V6lΣ`>*Ԡ4 znwByC=wGt˒x]Ȟ6ƤXG_$\`CD賞*H{D v7Qa4?iTOp0HŐ5q`byگ#}2C3t!gn ͉su0A*Mok=jSv'G~bR:NPpg0Gjm}(9kF\$PufO3j ٥'J5a6.kk#,g. yTe&'j\樹xQ<1q{#’1|d`OXWi\zH-wخ$KH6^ k̴Kg]R.Hu8Ysnkf'k(g j'D3]bS\Vl"7޸Q*ytuBϞm3O9sOJd6W 6j~nj<}f59IctG{6Ft"@1 ,(3u<=ȝTvJyvQ,y:'t}O#OvE\Kp̎r~)]EGҕW(+dA$/-Hz; Gn_Ƹn)Dqf[Gk4u@62y§1}<\W_$ps,SiYcŀ(b~.yypIzYL1!UK2l= ,yϛ]Rڢ %Xiyae`Dät.v kaM  rt;@0%0oYldcAíԀֵ՗b=9aשU _&o^1c- 1?["A]kinozP ^ȥ~[6'vr+D@%4P^E]/CYI4dFdP3}]"|54T5RmNECZe5Eiv!} gAA6dDhG R:&L+ga٦}{P˚&)_)5 /‰x Q1H.RnRfzJd0ͩ xup͢qIC?I>ԛ.ӈF_y=|lT]-0 BBJ}4{hCOt&w }h<ni[?8G$ڸʒwEe_ʏ\B -V1;*|_f]JdC *+@Z)/_;)E=(H vͅбM\i.yvLw?I_|OtbQ{[TɻoQ-s,SIxE{x+[B"ٕѶ1=@hr&+3NN|0":q,-;;h1gsylo`0y] 倒ZŜ;"gOk_4׌ž~ف!GiGTH e jGW%I.8XgC+%fcccH*1dzUhYln`sKVD)LF1՗{ |rewn'bEv[*AZ`*gPze|379ܺ8N(Yz5*ġv?G"nD?+\L,˾2\aDj)uyѺHbˍhY*ucpnW9G2 ǭ&VϤִ>3'77B!.otJ3&gc$H- R3p_#I0SҦ@^0>)pgaxίjo:,oRvYn|^\3;C$_^3աޝ!("]&M%g&܎>cAX@!׏YЀ?4OdR}SJd#쬪>FOF;;%HY@v>&q3e7CϦLrd$??g޲^?43@.5Wa쒀s^}=-؝WU#k ||7\,kƧ6sbuyRw/5f#0#} 4chaJC?LJ1YaTska 2Hublhw/T!氰i_ގ 13R`ZІq,T#;k<"nʝ!ƼXu X`?ձ\T?u:>0MێH65W9~2 sxbf/\.im;8,~0L^b-Jd(&YӥNQeaDJg{< Ѝf{BC3Ųm%Rr@6Rps[ZQ =_Ro6׸QŔvAA]m8( VAƽyvB &+Ǯbi=|a')gR*VךznG0x]Dy8#% қskX?o܉Ht^m"ՕZww5{?k :녎k# =_+ Bz[/2iZb(ޗ`#x㔿c fڲƷ(^%L?ou%ff"bjCh ﹥$Mިw1^ʯ|K} PhEZC'Ms ?R+&m6Σ32Upy< 3 *u8r DO9Z%*PXNal?PaFgWK!z2#tؐt'Usu9:~vp'?7VC5}Ia,ߎZ>R69o(ELV+D$p m˹˟KaKp7Jwͷ>yJ`Uo3jv=r39ёQ8bdh: D%Sp:Q[?p 0*v]N?$vSf]5b8Z7_O2jBR:d]%'uX֗3.Wu4~Lz) ^*g"aO^"gW ;bz<4>hJUBe],\W_Ӥü•'qUƹ%6r %)# -L3g5XwL6 [4W6T3Gz!0LjGӦt`&Cg1D[~.ǖij:rR=s`3lˌ-^udUR/-f9iuոk8 _B =Іڬ\H.MKE~PCUByH7Vw8;+ u=Gg @gs`.zG5Gp,KA•u Bc!}U&n[Pޘn##oSio9j`˺ݸ=֫j+Afftv? <>oș|n a̧M`!5m'r9gY6Tc2_3֢p/EcBI!?`9a0G#\$Q6TJ? *GżYѫ0fQ 1o~ GR)85RYr/4)elewk ַnGLGb-[s|N*ŜD&R}b"(]‰w4nkR@h7uE.v<5\; |G|WvN6A9[[oZΔfb2JmOeT8<ɜ$"ev%#A@tT 鮽s"4CMksB;$abs eOqHt~rJ*?F'~nq[1Z͐17$_AH6PNY_f`5?fr#K#z~vlPT7J/mN_ X^Z5pf]+ߍ]u6fD#ڇjn΢i֩}uY+LFUڸ7-=&@X/bi<̣=׊ï]/+ YqSXHO?RTf iNB6WYHwAqwJ,*KP 8te=U˟ vln1HS:"emi!|2-t ra~A߈$&ۡ0$b^Km빜sUΰ}ُ2ĨG=^H _9wł< [Aa6!pO_َK<:#!>7oOt7[ %}:MpU+Q*hSt8P`l0,B 6=dk,]·掛`40[lZsRr4sSsmw9>9eg@b*rKB ڿQ ,g TF4I63T3K9Fs65VM=H^j':facAiL-e9V='`Kv7㖩Mf'x%hB;x"{lR yffG}/zVݜ BL9M S A ^ "'e1뫣\^ -hVߋX,f)J+mow\#5z7;|۶OGC/|g"_eVYcPPXq9k|'NJDcJt9>tLΒqP-D8eK)#BkU"#/eTbhª$}hG,D4*ce2idP9E]ع5F(y u+slA:E&W`k[<0o):hRp;xcXpqI!Qc,8c1HY]/6qՋeEXP :"(K쇕8U1.` T#-PâGeXUz @{pAH=*%@Zy*2'2Z)Me\4ފЌӗD=q#xЈ-eɧ"Wge_NR#|QCf eZ73p .:Awtp}UPrHxS%\Ll>/sMO&Ly`C"i&zmLq91ǀsmt{ d6Lsn6T6v2. v4۬4f3:^={wj`Q|>n%8|v8.ƢN/j4kǺ/gvGR*bZ 0ܿOI,ޯ+>Wâ~Ec ~YޏAj0XoTD1m91JGZ$^4,Je ہSQ]I©6I~)Qчhn VLrF~]D;j"oRZ>$IӿwEkL7WBUEp00`H? :;_Kfo] %$07j_ GRTҽ:S+Z߫aĹu%7%+) u[K,Y|JUP0^(7/_VP2ޓcq2Aiz#A ț4b.JSX,5jm$~hMTÚa,~<P5araSr>h_k(MT jEDlBG Lv蒮RQ< J`U_ OqD]P osn#3!n$׌({FFBB#qI4(62k+ift-4Gxȝ+_`L;z6XI,llM9q0YF;淫&-Y~O81/'vDWa^]Izo)f L/U j, 6آVn #z]|%e9]Be%{Ӥrj+djY"퐔D=ADJ j\"y `_.i JQ$)0"Y)ۿ/֣VA//[]Q;-yޞ 'Kz"C )9~ PN_`a0@IX8O)s\yL/н2]Z|ģvW ߴLTHhLF}U[ <3ӰbL)50bGQ"i (9ݘQ0- JJqJHY?iԕ>/>MvⅭgh?q"z>As@)AIB-+X~0&g"yN.Q QԽK#R1e>1gKՐ>\Y6C:901=f2]S]D¦P)_Ϻ]5SR;(PzGc"ڷ"yͨ +c, )*%I᝘FRSxXK>޴Gꋟ)jȉֻՎyDGΔ7ğIKsa(7cD<^)r\FL'˂ي`z_R+Tk0ZPnblH-và%rvIyD"k!Vm [{/n⿄ƹrcSrBG D5: 粤h6C]<7(4سh'7Z3: +`W6NC %;oD mm;VQeBNA,AitXx>b"~l=Z>>9?(ki (ضxf%6PTO| `dʛ(QsgUfq2͜'H41aB1 c|?rK [5z͏n/A+>RmYʵ_ę( N:SuJ$@PJyw=2\QtaОi\Vrf\)3G˧tv[d|^rY뎃|OY\2 -Z\Fib/tQlym4Ld`5AU/ʴ;% i7U+Q+Nψ|UY(&>9^LF;RUpbWJpC.-a#!Vl߳xM9[F. 6nwLA:D/OrLʧu ]!߯,Nvy]U"~t]^ n `#:M;Ig8Hƥ< Xz霗T^BT㢥"Q .X8ˑ@/ '?"fW&>|ӛ4xW֧$9\ǒ0‚7"DwKzP]` ~G)G^wiptk(Hr\R D TmX(|, K= Cjϣz8ycoS,Eg \GMmXŽGmLdg/0*{N ^#PPl2v.ӎ}lr4?\bADO* m$LYjݸa*為q7- e dnV)WjK4صD-r,ꩮ-\?)c+MnCV`nC1үVq@[:]9&wHs/UW]a~4{?E[rw$>ië|z?*7!)îeɘ5n4)FNӉTt=g32P "ë{~8K6w3Yǩ*fLaݻ9A2oֶȒ ^C :AI &35RdJAYOTD(wOx|3՛Nܠp7SmW?N &'}QCLI\Y £Mr򊝘ғ8ۋ8u'42m# {P T {\&Q}x4㝎9Mوv$`YZoV, ua`9kt%Nwy䇌valTݠ,5=|b:ky:XHBrmDތu1:nQ-:_GyL̆ AJV=o#̔Hu!~=ǫG}qfxp}/ u8{-dO'K6ϔ_inЉ)g24weNpnzr0~b4u…mỴ]GI*u͟ޅ&4ЦQD;ޘE"gඐ,a\MN9',V)BE|Uf@97sf\ j!1]T/5Zz9E (ZrWVNv@IN͘i!6HQɷ`G5sPAwHOdXYxӃ4q*;lw,>ti|hko Q/mlMi~&9J>\z!sӶddW1…c"c$4G̨Oy\ٱw# )Xn72h4&Kdh|%vVh)>F9ϼ_k/VVԴI 'fGiZ#BazPlf†|Gz5dyܬ7ORa}I"1(6CxF.6凡;lYِ7뗄1hG2m,K5{T洱K*Ka؏3%,"\a5X>I`[1${;Ӈ";I­A6+麊Ȟ )qӍxk+EBʒǬ/':Nj1l/r*\Qw)H z"Bs0@Y`*bG=#GuUaL;\$mpf!~EqbYpsOx#/M>_ QL:q&HB`9aΥ\ngFԣ٩(ѨIRl_ P4U cIFBΉN?Y$&6 @ZSK}buX2qa$>&fH>3$D@^8L3(e [}u^Bluvg.<>/P~j~Rjxz^'(x?gSKGP5g65Za[.0MG.2u>0KOKBd;kŊ.I4º= 3Y薼WZ%Xt]ygE!05=lh^̔{2G->#)!ƈn}|gj^N.-3݁J^?EۻH'Vi߷V)OI9U2z_2I;XZtslyAO?j-q j)ItG;ɷ dA O>*|M'h4(5lc`;(/{WQmP(EٽcU;TYZC0yw)Ò<@HZ! c!kb4XyKX*|]Mih $PHĶrPWC,3yֈ̡m1FXBwxnHr̈́i1MsL㔇QS@>V[7?rڢ3a+AC xn!h S׫vl'Ӆ.E֢]Qⱓl/ݏNC/SDc)T )ةߟx%@5A$ \Hή+lt`N~iމ덦BPOPeA "⍕d^iD0[f rZ;/ȝ˛lmfQOb8/{:jvȉKꖄ,,ԎPѾf;@ ґ&5x$HihXu ١+|DCJ?0Y0 zy#M]1?k-&Ϙ&sNء#3Q+` Bm/ȴ_>Q{eg4m $InaJ&7L'eԓ]Y.6~.QUI=[nFTP4U u0DKCj9plXߦffa~,̈́Hϲš ^){bKSJ7`Ghs?vJ˄\LkPe6c8YϏ6 BzI RpUYn+4oE3fi_pρ2=t}&T9"LK2?9\UȞN]| +h(SuWe`GqxQ0;F Wꩇ4-$ Xʆd8[?*86psoEoRӦԲn.EV1x)Ei>9;~-i⽨*?bY-D`:i{%cm!/mScWz_<#`ZLϟq &naO>^ 5 ܔqi@6*Tb즢spק1ӋT=zB)MMf 6E?\FXʒBaQ&`2%-Qj}3{7~%/nb9]րuzPJ29Oђ$`^0MW)~7;f7k#P|닑lD8u MR;~j A *xe3x\뙾rtJJh7KA$-c%ԥuA(W`O՟jD1s' KA޺G`y!@Fǿ%6O/B[v C홅 t1][++f~CKw折HFՖIbI'Ed'A-u!Gݓʌ;Gӂ(!Xq7 ӈ Z| ^k݋.Iň +2@s@$4W\o,?CPO> W k@,(whmXԵ{\Z_-|T%N*{O YNM <7וn/ɸr##ֽ?sPД%)B6T.y$,=Gzih|Fg*zjX}`MIoH-'urtE$m,dl>M\䮆z eqC6Q2@ƫ4S jyKkHdfƚ PWnךCړ`pe3;o\y󀺓T@(*d#e{5'1ȤD1a0xg,HhTK jTǵtJЋPjS'CpcRU.ߦ!g[,)Yye>,MO늹K|y-%xGxT-&v1mhړ(㴢We|X*56F;`fIn#$h?*S ݉7OS/'s 9RsV|f$Ҹz[g۶ǀe( Ar,c[L͓&J5A.D}.v[16(찃&t]*9?JU3YBOL!9rYKt} t(,U bZB , W[^KH51MoԘx5ԇ"X֝} XVbW N(*%)h謏;+;mNZ%mL߾6)HU]_rx]L^jR,#i s%\PrB|1+7:\6AP}}}k#6d;o+f4yk.AYٮq%3c˧&2 nej?|"~XmC^:Yk/ND4 )ZK2I}`;H~x z^C6X]Uv}ktXD@11QJhE^g4itS k9B}3>wkac;.R31ßD8 b٠CnSgY͌Y=!+q87.CR]2>MՊC|BuW{-RRPJu~޳{IYH!L8# -5a)V7)l7#Hֿɧ#Mռ4PEͻpέ xp+97~)'-B4uBQƤ4IJ@\weFv.UUubk iCmM9c"UhC?Xo!TYn[اڰ.ޮ! Ng hn}xS* t3s# vzrg$xVJu:]4GLyvf +Xd/wS X;eb;FfN6m:-AKw E᭳TpZkcr4ª(`&#O?3o ]~3)듭y[ kZ1邝 GfnNKeDVkyc'= nG۽|eQ~|N)6I`Ga"2핟mDŸ7hFQYi#qxF{S!TO']%dpPKC!@)J(XQXJc%%vvEXsn[`VqhRD!s6,ey[4K"C]bYl%(v6Yvtl16kqi| ȥ#dC̔:DhMszq_1yU-Mqc> JqYm`1 I, zW*.M+JڌGTEud1@3A L\?3=~؁Lz3.OK e&;~I4ʠ&^].A5Qqo=tLeY&ؓIyTKc"/EH lwބcwű[E.8+=e.vL$%e%  Ps(ߕ ~-14P:?(5) |ж(gg4pH\޷~)p!=NFJr YEQ{oW%<͜ 6:vPy5N!!pw-KvVB`YݔZ0C; rO~Wnӗ?&?iۣuPי;Iݘ+')7e(F|ng+۷GćFya0E/M+d"?,{Suv7o? Kn,So17fFLꊌ0~KڈsKz  m\&"G^2C`.3ս .pNx{4]&% >iŠ/}T FmJ%\O%G|zqQ ] H@b$T:,yXT68)̐ lpVBӊ6}*u.&^4l>+PU /S3|6)R)%sXrkY?1t &5NV|b0I pVZ)]qVi&pLCG] 怼ǠB*%R镝? F8275ہyV .-ٟ3=T^,.n$)ߏGfYjByIӮ5 MJ` vKx08hmg)*no+1Ml-fjHK=0N!AV.Ha)L9ݍTōxYu:"åo]g߰ߓ 6͢8Wja x=-hYHරݯHN2RʴγLr7W-ц7#H|z҉u?ڵ3V/ojy*찖#8< yߞ/ƍ. ?ɤg,4tw11eF{*J=nEAmQ!5n#iC̎UDF_UP+#=$^)[F*$a5i;xWB}rY\Eƛ͜;]4(:sъ =>m 2dѓ8?i3hJ3#蛱14{Ǚդ GIGXi ꉦ#ot!NC%>4z/izwrDnľVih.hލ{-Jk6Z/o+\V#G7ks$RX$p`0OsF#+͖t>;L#߀ $R\UVZE{A$i)`$4B=DrrZ)^b}<'1%|K˱'lܗm$ ݅+#jm[UljC@`J/ n[LY:=H5Hp'1+'tyĎ*^t1b 8{Yp|qD$.\-"˂]TPa$0 ILH@W,³G@rX<P䋋ԘM2%] ֈ"|56OD1sQ:.NՁ1q"][9OioE8)?}mu9EYĖ1sSPm”+:]5S z`RIq,ψB;nνL鳐OU0aIUS8)Š#g&'Dydydk #`2ϭ7Eƈ=SSE+YĹ4/p,<@rd'.*;ķ6KćIBL, }< +-ox(b"C꓾ׅET00BtLCH+lwp+ye.ђ8otkx85MJ}!O\٥484#dƌ*%9i 75l6*v?~YE n%7-,Un :EV'g܅yQq굔ngՂe3%oa9ֺPzn=mHtIߴ&h D~:DP=W)a?>EA!#Q3ZK? nWpBF:ƨP_D|}flt]PE8Jˍε|jr2#e7|#r<(bBhC#?KM⟑䚂\4HUam2(z_go=Si;5Et|22UesE:\vFgFKf$ .qs1[vMtvTcD!i5~JcNdI .Ĥ?f=#;֛n) .q89i*-trHf/rNrpZn]Ɗ rkhRi }d*1kې轉#F_cJEB}ZS/Qβ"-p`+wsEmDVM}XS5nd]&; @"nϯ&,5G[\rtG-瓌+F>]5xIxTLI32Ɉ`@ZP NMP|uxwiMegD #Fϓҝ(Ȗ>(+g5(R%&h4k<"-,~Eʙ>4ͬ3w"BVP=BA4mDނLb_ A~ܤ|%=>d|ۡ'2}NS5 NwTL4p)aB왚+/|U/+bsQ!9xTz?I`o\ciu$0nw /O芁=9sk_mNog7 ͓(-Ima0%4b%ˠ1.^(BwX3hɢ,SsI2p|>6͟NH)PZ F,+kx#[) ,w\+wWԆ&FBrڰiK`}@v 6hoz[@Nj,jy]U9Bo> oq!:'.B 9? αkg2RG޷}QR00$pyſk^C֩\7/!C Sm;v3ƬK҄n$)mt0a'ΣA*B=r*(RX2;O'!) Hs4ot.w^Ֆ+GQS54Dp#S4a@l@#g$%/-Q Ħ pfѴo>Z=(ҀV)1gbvn8ٔJ;lWnfc3r@HDrX֪[{/譢'@`o]teh}r~Ta.LgpwT/MgIMn(ȺwqVw!xOT5=F_GQSIؒy|2dK 'ߧwsbv3$:濿4 3'%53r7in6(gy煱d5 pijcjWG x![ͨoPTr굯uzWq "Tx.=w>'!H_.(9ff' U< }o_Uk+S06P|%8Vo=?μ‡,$\yJI EU-(X $7%;Rjˏ0#*Yw{K+~3]D N.J9$(8dI+'v~A7BE56;bO.tY%XE>xmG8']Ԍ5Şg%TDH}>_uTӂ©q=JGDO;XQTJ"Wf{s.wNgRymܚ՜Cm_GRFZ!fdM~ c{I_i(y`O;^/b}lOZa˳ xZ oVeabLgVD.7wǜhEh;П˂×Ǩ01 #) 'Hpj޲/ªrώ&w?k*D&[B,ruc΀WՓ:*a2k3hU~wOb:d'V5=@uUE0':mװX%k`t#?0J_KoWN~8-$"x[T !$q[PhN;;߳"2hJ wDa<nկR-/)gsN9܀[ebwXHPS刽zF []L1Zɽȶҏ~B `{yZC \+FfL*͹BW=\a<ء|4l&an0&-uNlg"NC7D3:k&qыߗvW{0: \"Z+c?R2"@xjq3\!^b`&{qDqxwn |UDD0'77 qe-kT%sX%Qȝ:qBlgc"?oN w(0ˆO?v(??!Z^s^K{ڡ&I5Yjbl :Gi*qQ%}˛ ۺn!HrDc@A.Y@n \==oz0gi+ GRORd/n|Q!Ke\S *.OO m\mF]ӭ#ߦ?g vIuKS X͛wy#hS֦tNI{~hR|d6N z@] yw3mrQACЄuYѾy:kFo8Fa6E&£IZ2貴ٙ=\WՈ*tIV\8'S,+Un?>tϨa"+ 87 rlEƶb~`r:iG$gel!DppoY9pfV)jsQ?򟜪fjj!-`G{[2b#!Z i1_l#*ɽWҤv"Իql,ଌ>Aj0l eu(Iow%}ESqr}2[A q^3?S+,=N]Dd`5`6L}%2 rDyGz/z?A҅>Zw"z@I?Fxc*n`^~υN煾\1/,a2Q ɣ"΋ 6,ʯg""fh6Z$s!n*M؅.~lRYi{NWtp^,ܩ#Q֡)K`*Ė 1+8c=5=lXXf'˧{a4i,Wl w*YXs_E;$PteTHe;ֵ}VB zpȅ-&DߖY9@_s#4>cXK?Ħ#T4&GtLǛc]a9i3n9 uq>}\y 5 F,)5@FTM#d@ޅt~J Un؂M<0i&U_WMnB$$(nnڷAI]Jsi c(qlWb@8;)_XOGғ)Ӣt͉z>- B{q)ڎ{Jy~Ά=ʄTI`I}dm,rd[H$(sg"{_LF!-{xei-ndZU^Nd8u0B)\D+urIK05^-h_`[׈wŊʑ@@^s [kߵ5<3{+BL (& h lW.)K] nSPxRJqHαSU)y-:5eg5BFV{HLFeㄳ8ArU 1?"ŮV:⳷p04Ulc(QyDSF)FiWS? "92´>9H?Zi dz g`BH;[G7 Z|c^ A*/`b ,/X%\WR) ܁q6+,3&jAHꗥ}#};tk$/N\51 dR-rZ &Ѽ?h,{Z(f}\`ԡ"hXKs[S ҲMg[f.h^Čxs+YzGi8?XzmF}"B~0I(${ ] v֞Zi.&,CaޗłΖXR;ΒT!_d^<mcW_tS=*Xgp&fۚH~:#LT LnҰPNVZ Jt)?͸=NڳeAJiF].4v Iӈ{>ld> \C!HF|'w&Li>x9j,-b=|f)x"#<X d1FMN"R$r]/+"ſHl7e[Uf!b4k%n;k8 A߼_bJL±m>m o;Wӥ bA5$!cD;4oqxw" R)nVdmؐ 'v+Y좢&=[}l"٥о7clAw!45jDQ 5Mj񥺅ˎej0n"a[ke~w~pΥ_MD%S>vCφv!/y&BxTuI8zXߙalO PyGE)|3A9a^ld?!˄ z^n, ScKy Nl{S誩HuxJVJ㔙|XcìFq;{-z/B@| 5*8 Rw]bgyDJa/Mg\v]\w%L @'ˌ Ї+[N Rt8j6rɶHi/!6b'>&[iUiJrj)muh 9ayl7MђuCЦ7^n{^BI1KCHBRj[--Yf>93I PdLcǨH0/FܚQmV:m0qG~l(e6|U% r|LKJTJό_'s$9]p57Y "*,HzY..<z))B>T.ܐ|-Zb-6>Ju҂jvJ(tLQ(u^]QP~}bq^_{`in$RCf!__4$%T<ݗ;X;6ø~onAqfPeė37@ek(V=2Z'& xz 1T]~eC'7;(y VKˢD4ɋ lM]V G\}ص!R"/ vS/.! y[+fDWs ֎M:qSj>pf.O(P%>F>15s[I1a8B1hc B'-sr*17;XkdJ {، )jxu.ۏKU۬=#ō,;LBe8h?E\2J0nɁaoX0~[8 A+3t#E)ꩠ"Gܫ\utB`Oţ KCXwr ;._df3VZ&ˤ딦#9 o $փ |WI=O3p4&S E~(hv)ۡ>Sh8Zj}Fݖep\ RIF7 #>čq9I F݂VNEvSt ,@cL~D]L;wh]`hړD jXN6y$/싹?a3iOX/W GB\%a*y?oJfޚO^gp硙e#RɹȕpMnBv눐l-ytŊah*%>vLT' {N:]a0nT짡f ^.H26lGڱLfqiˮŏy2Ә#cV#(-q1U_1-nbs}2ט̤DSU(a,7 \[FZ1XJ}v0UNw0 3˅ "B˚J2G%. B. Ի|UͲjXui23}(?wDSd*H& mti݋FCI~[3I3\9=?meS䉧6dWpcI0R႘eA]JhCpy #o2E%+)^>BE/(?~B2ynJ7+lyŋ@B+w!jړOnٮ NwG,T8 (-K+*RTꙔD%F+3uuHrٗ“W4uA{ Xz@Pn/Ny3YV_4zy`Pސ<.2jr^d@$kS9=ĺg$4Ba5 0|8>)AzSa#hm d'u.I8"U ELflQA/Կz3o%k挹Wk>c``\F6ף2hX [}!q+繜)QZs~* b]7)^| i|9Yxֶ DfJ:IXwυO͟:x4f Z~}n?g% fe>k$>?JhޠK) ڞ[IN3|Lh\Jf9tPEOt(->|d`}L!OHdzLuiyAn'Cagc7h{qȸ(fvDF`KCޢ?8@KEx۪ŷppB~nv]2DoL!Qzks+|2w3!YM)Ӹ1npŋU%5)W5SkŐ/ 7(P «Y+qHs۷}͙#3.QPGջU]`B WKEdPlQ5l d(]$ ;%%"2}i+;kLq4i3F"?d7m: y[ ~Nab{ZDWVOC]ZzUCtJ&Ҹ f@ 2Yd;K=E /aԞw Kmz2W"/55@Б-iHm~}W(G(Pb2WQ8jXvԬ`h6p퇱Xp͋{ߜ${ x2GtnpU%x2[rCCr9BhP‚4LUXyʟFڡ?"ʃ<^T0^d.dLqb%Wܕc՗)MڡQJU%q]3C7vLg"g~\P]Zw:2k-`U}0}J|ٲHɭ'~g 瞛mq4<8vq@c2NSrX=KP%."l l|TE^5f Ql /ݜɀQܻ)e_ _Ga>h$10#1 &MG Zlŧ1foAn.#9Z%7㜴L8j׾5EYbW=4C?W&pz_HIž/xSzgSc;_fqre| ,,yuP/ DFqzyn~ЊUQ-c'3Aha?M)a50(w &)Uq%nݼÒTtThx̣^ 2w}["\!QC 8_>Pem>b'!‚O)A9B%&)68oH/?f]@F728kh*Q\ sƍk$J{e"!./\_.׍JB]b*}8R i3?d{-۲HٝJSQ g3ʹ,zmYn#Jˆb3؁ wf;X׺ 5+*6L'vECzz4/#Hgbj@,ss.boe㕎==w^4Y?JO{2!3 |kaWrmFaL/@+U21mOAp])ΨsЅPm^tMR콈"$6uELҔ9,]RC5cWIr  672̑iP{|eXxcohu hoTռTw5,"F{ N͓|jfNomC>Z.ַJhyG_Zsse4ti>П}F>ȁVJ2h7 uYvPuqhv9Tԫ v)bDte퓲NRvWEx,2^ё48^.0XG䏜kz$]mw%\n,Mkk:Ea0!}L,=M.2W13h7u ?>xy-S{0Fj] ژۛY B?"yyr/2R$̶J*r#;y ^-9, o *b++ jEm/,3EVQ0~H6e,*)?N}H[tSkNjLi^'q%aM <wCv7V\7FP%5^3Z$xx{)b"Dr{!{ #@&ՎcǤ\lӷ@F&G-S Nk)ceB#}sdBDvJy|ҨT;иF ]ꠡ2~ &xZhlu3Qs8V`s )+@ l TYވ2_}up'e{'yʡĖ~7ɐpISQ QF,&B1ne40a !=eM-XKv6Gp1S^1^IN) )F>뱃FhR+_*ӭQ>`moʨz`/{I=xLZkNFRQOCꞡ<5Iz,m&si:`u{WrqX+\(<[0maƀۓNO?HыrCe>]UbC+aWmw!EW݅X ͼ}\)Zr-`C}n5v_F@ sZG32ti96i3 v٨}|7 = ~ &^O%PPB_2sqc=6G6)pY? o3wc(nu"g絠ϙ k V=3~6ld A7oqZ>s`_B9ǂ-Aq ٸū6tv|:)\hTOfvIqy(e8բhRJqneo;Jڵƌ \e*i<+w-ժE62Ȕ~"L=Ȳs3Ӕtƶ R {)G>]'H"/YC[<W&ͮNpцSSM{}}@qCSZ9tE٧i9BRo =ߥX ^7= 4{up;J'R5f~z1݄?&iƀn,$L=,kYeO<^ fz+omA0Z\ fQヨG}3p;c=rҚY(6/ aן2!1 frEW5Λx `?S)Ee\u'0 Y\URGR9K}Srͭb1U߻Wuh,բ5_Vz%:ϷZ.IörO*.ʷQK~K Ƴ=m wפ2("r'1Q74?]?ues|u*?͖,QV|ɳءuI TS'bV̝g-{ˎ~0+_aѫ$G.*)yg,#qڡi%CO|a.Χ!نTw A:.nJ3[RnZ/hhn4Dcl/>1].ř8?"Yz7wX2šCZ mww?`+$5cۇ)bmau%Gs`八w[ ^z鯯@za]~S՚^m;qXZ託`#'/m}8֩N`=~{uYCodAvn `Lx4I $4tw`G} ,X=5gipPPmuHA92R|l2 կCV!")G_+VYjK3})w`s=["\C cg+UX3]-Me=:+HߥV'tIQ\n f$z@/ÌED!<ЌՐ48y9ڹ\Wk..qP@{_ize۹#^l8' Qp:c=r$T.BucRJpL?5H}nMD {q+em@|4,qZ& 23wߛC^CzՃfIbƐi6-p|5C8GVO1ϠVCyitiozZ5Ars#=A6NHqRXյGAڧ5؜ye8G(}s}cNEMۻ%FހZoEC9C4 Mh,>UN2A񡧳[㦘831|D>Gf KIThD;u apP'@\O3O twFa4\1G]1_s,]>S|l2uk)4KA=7PO<鯐fe$J-Mg,JkABS:COC#LkFA#+;572blmIbau.jף%FLi@Wg՝l ": |X 3N x(¼)v3:B|QhfKJc"m3s1R`+oQ/AV[:l1cR;cw/?-h!n Z(C@||nb2&_niIrfRJi+Paz_Ivm6 "Z+"Zg28M@77-ұEhRL x*ط@n"t~ZV֗sЅ.i{z$3R>_B6I1cP%t@|cr'3 ? ߇Xm9yiû.^zj MFފpP֛ރ*%|:&`/%SRine篪P8OP =o?cڗ;BWC_/2ݮC+A|ĀM>k<ȣJDQ9-l? FL[$3Ƌ l>׋t:b)w2nM_rAmV@FPV +Q_T(囯m(Y꼗b[jaf6(lA4ٮXQوNpm,^ӜH~N#]夛pM"zUxLg̰8*e égh?>fu[|E'*Q`"xkR:۴)k1ݚTZ֌gzy~4aOlWpZҎz U|k2 lϥNJ"Nb=^ylH2 %1gHxk&VnQ>mF^UFeOf?(sa>?9(/#PHeN(DA\^$OE؉ X*(CQq &%%/-V[66Y,|9#wdc&J7ֶ.ӂFq7y˼Oğe<xVtx!Ebzf=110:~+1K>uK/7^V zEM$aCScR %S`lYN)Q߰QkXF@dn8B$:Ba.;e"H_Fk)j3R۾.`_j2\h+~)l7HQ_y)$C/w&c@\:ӢhR 4|om`&w;Pcݱ!jѲFl_f.4l.nf@0sFn2L A⍠}ەռj>٠Q]]+rj<6,f+G% uipifR# eDSQLsӹΓ$T&6NxLWh\a됡AbpdjҌh"i ՁYf4k2jeyzg@QtjKyn335Hpr3Lĺ)?.LޱAj5&d"wsSa.VXΊ.k/\q8}I* M%Mˢ>u?؞z>A)T]L⾌'fr`3Œ޶d, 9nCںkx?ׯ NdFX݇iix?)tLUh ^/ xAkvkc!HNxIe2(q݌ѡn v2 WQpIn' ] pB`4:w)o 5zo(BՃv`N K,ȕz (r^-_9mṽ :]\LG9%gZ 8v8濕΀C8Z:kꧯHLnor/FGFA RAi٪+NܡkoNXr |4 UFK&ќPDNH=?^fVdq]fy[:=7"ER3-i݄t^5EhYq"&" WAׯOyZ(eux_" “n&#Z"}+z_\NYc{FԨs6x8>(=j]^ojĪs~j5~B+pCi_2mo KةHqBW=oCzi1ᥛ^ǯ3*xc2LK;6C,dW1.᩾^DZ2&l?sv l +kU':Td 辺rj/LѪ 5Sb| ~n"%_nvdžD7].GwtS+mOՀBeRBIcZi/W%$?B3~CMh7۴ChxqNWo+p9 _6+&O!tTRAjiMGjđ`POጩ[;5^QJz}i9f^;>qziQH\" 꺗 \yoVxyJI|Գ΅>19ëg cT k2AGsgr"q'[v_Ҡڡ=~zf lAĒ*Q̮[>n& 8dqQ eZьPȧ{#>d8Dtbe! a/K*l.ckZ#-}q~r@ TU;~1W%p x~ $ Ө"xb K cX2qsN[d t{YN2$78@ay'\&(1-@hXx ƸvZ{n.AƏkǩwO>Y=[l(|owM<KHՉE*D*PP>ndȒ 2n]'wB`Yv=Iw[?B\m^t!a4 GPs`+xa'/ϖ,@Zp3/k9^x(>Rm,J {NJ^ӥ,VbH.[=*A=!XR(FQŲjl s׼>R+)I0DW*HoO2 8cM8 BW*hKLVXY50*p,":vӱv` 6!B+Pףjl LpX,Ms[/4ۑUIVv8W"IU|Xs0MLq&h@8`T-E"L\O‰p ڴa L=X#={^OzTiö?V!R7PUAqgO(@EN;zh1JҌ5Tff2%M1'1"~^[6̟JQxl !&F{)HKEixw<6d!0-B Ʉ,N iyܴz(G;bKUcbp!sZLYq~\Vf[\ w `9f?Zr(7[k2_ЦQ.u̝1Miw+q|ؔH-u, t 4 isvHĥ2aIۚ!|uyh!\dTPk:uHR]_{"glL3^:8(q|I q6AQXcH>)+R Pꖽ1$`p9't7qV-J^%t׀2:ՉDЛ^ ;aƺrc]SqUj(XX3oP ΩNbyUn"H!-P"{[8uf7ĉ0K ~`-acHwAgb8')mi:j5~dWܼ_: %hRs7<9C,կP2wk3Dށ8jk31Ʊ RI#|V _vǼ8(dCȤO@N\FbH(̄hq%gi)*i(#^h8rRU:-+=5nQ\["hUFo݆ŒB)8V‡sjWIoPwŦn- >ϸ2HTQ &е ;]*`41=(wmOj& N;JyԥQnDpsp}A@1~D/u0Y,Y6||>&jVf5U.1dueϏSym|7di/fQ9 ĞȏL{d7̥9 9ٌO!y$gGgc9P6 ~_WLKiP{H0(n|^pu'4e! 4E*-V DdM *M;c F5K.YXxAk]t1ȟ Wsd%=*-Ǘ#T{ !]̗Wg-%q` bAԤ4#$0=4v\N'=8-&ߋi\7h>G?ppnԕpRaޥVX, @u?i[‹lC1"r?MWY<2NJ'ֲͰGq-D@-ftJ^wquC7֝^c(vz*gclN*w-XOQi  (5*H"ٺɍCXG['`xs 』[eTpYpNt՟@f5R+4a3 Y]ݴO4&Oi.g|y-RomxI:j>%>tiskt S#70[+."sZuctgyɨ23ڽEpSr#[?re/$nNK;x]ȎD:l>TcS9EZ<|ƉQo# |N#LW>3xLdس2R MUA#=̋^„-I':u |Z"Ü+_-Jl-YlRXS [K^cr8,1=^[a5K^vJ`3RbѴk֍,y#4;naDtmt{ ٲjvoqvَ]‹Kc +WftӊY^iU*t{xM$H L>n|O~ _X!TViF`2#t t-)%EQv߻U6_5ˈ{0b'%Ajq ᷾24&3}GB:#-WVQ6pn + A*Y/i)qh +bp̑4+VﳇxJs~ZyS"Lh?Pb"#n˹e 5AnZ:2p5-8Ӻ9Ll?|{&A+c' Q)G:k68mw~tebjw_ճdl 7@9V0/%A.qē)@f.gݞ@W}N$ >FÉ媦.HlD$ޞ[6ʥX nU۟"~mL!eX;'-!`km&\̥8,K6IEcD=P$ Q`51ɝ`w%ch< [ I`vy%R @ Mc'?Cw*Q 6vH6`%>8%0bOq_e@ bph=I6vޓD ,`APs)P1aiO8e<*m cb|qv"M3U,N()sZlr4Lwj"P>RsCjO L-]DXQzp][5k0I03 Q\22dh!E}N;ҌOv gNS9k[@eT1ȪF7|8`[l @ 9J6dO;g4fT!tvdDSI/l7#H0pJCû^8F]‘pcFay1A~OH}!\"IHŝ:AI_ fc N1cZ,)3,ޛ=bEBABy+F4L4r3_m)b͌^dr2!Β-ƛI Y(.x(LNhe0h1sqYЛG|Ԯm* -F4VL"cV~An)@H{Ve3:Ӄ1;gDwgIHLiFϴvsNVqc:ң`dpK{Žo)y ˗CB'-ۯ-zڒ40Vn8j x7aj\Om-VUArr3H'b5&*yMP.ܾGR,5a7 '?3@2xd,Λ9PpP:A113q|bs?2.Q(_ XTVc"x>.o`r,]ڀlԷVOzE4"2\l95//۪%c_ ƴwEwcYtAWbG}+_H 'jGm?]ӔC'X5j$N `DQl]o;q-cK0d#Ω,cߡ]GD&XqiV{l+m{>K3f*-U{,YuOS*̓\Ű}cM¼#&µ @P <~VZ'{ >! M -0|Ph/<kI7_cbXRS:H_806:e|tlc&%ꎥ ^K&& Sqj,!} nA"tNElF[m.~TǥaNmZw$r+G%JܕRL M*c#-Ӡ|X[k\[K!Du5l}&oqeW&iՈ0_"\|#l0s2=GlXpcJ: "wFtqVǗ RɔM[^s(PG-/w!hၡxi621i89jJz?KgkzՊ{JW!}"ělM8RM!ofR8 v;)նۣdf{&6+Du7B`U ! /PN Ϗovou/ "u ǯ, 4-9S*Yt42T1=e}M"ʑm+kחŃ<&9'әRz9g u+V<5 at9^mRŧJa$i*q,Tژ.F1l9 ahOg"_'H6ldO(3} P@ӫ/aUݤIYnUb9`UOF'\ηGУ 0NsTy-[HTߏ,X~*&NBrU<lI."C[1i_})-…}>2e_,tom/4,&OǡOe+[ y#}lo16q-״$GVG܃2t -CA#>I@(FhoB6`WnHg"xY$2az'DPU+Jt q+jtvvnaV:QńO2]R=MO?8Ί&sP8҈mp[Pq`׋-X"Zȼ};nO h 3aI])PuˍA=ql҅A:UzlB@)_OĖt,Xl: *C+d!. -o8GR%ww ?|_SOUHmhC\ 09W;{&;,Ul΁$1%~y,9dWÜf6;a eys<ԃnG& Ek8щni[=~g$kKruL26P̏Gy=zGLeW^L<fjL_ U^Qa?6\;zܵO,eZ|j2;^_ ;' eE j>ՙ2„xsX4j`5g݅Cao2ٲ#$,^R"r5b5}z6pk@0q Nؼ#anjҧ(6ڙstPҖ4E %+a:?AɓR٪-R5jա:RQd2/8kDj:"4;-|].0Jhz{j>$e$w>}V^HjV Z~K&A{^a<'^`59pauw>DdGQCkNbiUASZ$ܡpb[BVà3w'[}1@J*`OVAfʬbҖ&,Y05$5@Kj;O'3 ?A7YGg 4R $}ydұbxmis!Xg3l Ȍo- {NT| 3 7H:So.Iw$${ oƬ8ܣ+*k{;EE8KY.'_ +츉#4Koېc){B냯&};1qߨWĹd^f,m\R;'%|(.(ڸu|!:#+:Wȣb /Ш{x|e79~;@AxkO=#4=bSG~'Tk uXd7?a2 WP`R mɄ(UQcsHX\`47_hPW],{gg'zHvnc4AyW<ɺB^se`72+[- D{ |6S-eHˁ3&7bOrufdiZBay 5fP67.bc vAJc='.& 7ϵa٨Yn4&`>O>}G?"ئ"D>p&h,1oZ ѡob}y؃f۬05Y \oDJ;E0ڂT/D&x|CWD !Uc{o1=4[`FSV~_*dN@ J2B gQӾq#9"ML%ZNΜpkVéZl 4]!h+~6#C3iC:qsw _} 3*+`B]Wa"dE Y؊DV/3=UosЋ[?*#(b;[s!1Wݐ80ׅA㌠E4T.௵kiAE3\NCmw`VG=-LywGW<4ʒ$C̋n׭%ShdOjXc X޳S 9hFM0Ɗ6j]l5 O<; xB1<$3&ĉ4g7X3aQNH.Wb@N]ϔ:ZiujZ]Lv \Jf6HZ đ\e:ӏw0ԙD Ǯwd&Bm]Em,LV4A$@ ō*R#\%lQ֎d} ,vGu]rB(lL;HgʉfCH>+v=5W2r`kk$q6P P˞+%517Ufhw9b9auQ]zp:ɂr^[̵v?@< !PGN6.PZ8t΀TtŘ%קv=Nk/u%mosx\+U`'ޜ`㩞# Ҋ;n`<Z"e$ Sj6gѬ]""xV'x߸s7la\P?tٜO֤HC6 O13 pJu†!AOgH9V86X5ѽ5.xer{'c?@Sϩ D O&&gaA9\| dnL ZCcy#&i w"Tͱ} ?&-(b@4.XasdM^4kKLC@1um$ZGhrHC?ܷ+}DӧD}= im0"V z.dlT:/cnV|f8r$N+#+T xiPCK:p>#gj^ h0 ;xrMil)&1WD _ȑaw74ʊ%Zec w]&R.ɽrgӂdN%8J+b ~u M| aۧM35*|jw Vtδ]OJ4jr05^"w!X=̓#Ca}6OMQы'Мt0@rq{;BCS1wWahPPuKbG*w0A}T2As&_s~×O2c#̖Ԁ`^CRzxݘuo]0Pd)lךk. B]K>p8>uw|'AAgtC2>* (+]Ϥ$OJ/1?5Na/n1s "1oG/Gg~uZF_L|v LHYvW;yr [z_b:e4҈*qWz}1q@cBI|1ONw8 csY_;x)%|Gѥ(бjֶj `RC? jIQ$:[P}ծL X?8'=P?`-6χfq A("vy)DZ^Z}`SDTUF(GnKڏמI)wbCM]K~zоB1*a|YUo#RCm+MhlrvᰗP#:޴Mu84Y||U?B {"z $ى0T\/q%=xi ~ *A.QS?m!,̪?>%˓D&< R $zͅ⤭r!/4d8MGpNkE5AVXcy(߷*$abtfh9?Ldzs{#ޏX"2g6`{gc2^=~׾ [*I=I6<+A-b]֙]oA%oۖ7jSk9a}KYF7doCyvM&/z&Tl멸 f}ه,cWKpO^.A:dl)?g%;fYrbL OQ/S, PIOVGC;~m"ĜP*'b\>|YFȧ].LWi*PؑJ<=9q(H45mܞm5;QX-o=ـmW/5;C*x}6XK+"GR>ZD!!X.Þym,<HT~O#C`=m /44J s*&  f%6'7NY+wqz"3xQU6'K[<ԜPX^w\g7O bܕ8/^G2&V]) X;Qȅtu(9,53.1 Z 5KM)j.ƒr*@cg(f+‰[<wUM A>PY̕P.k,jӟR!^4}PɈV#Dʜz̄sN$IYˆN%Uf>uǫ;&GD͙T T[$.熷 R`jz -~?`agn |?; @g.YaL\z,ZJz:Bч^ہӵ [\'M1ԅ(۠r5e T_%r)3vIN1%O *sӖv#)+oZXz*H "'F<ڭF*P̫~mtNt(ȵwIm ЁIOvBpj$k \er:p1ce.E ;ăߤ_YLޔzZmӜ.*?es^kdj%l;(.5 $,EΆ:I1n*/Yc$iߥҵA[hOق\Z*!JĂ@(/!F*gX!CX7;YP?b!l nV2yUw'!niLqPD?H]iq:% ^OA;._kT(]Pq@5}~(hwP Dam!Pԕrca99%=bQ:S\. x/Gp$,:-3G.tNS\4Vw\f!q +:u8ڲ^ׯ `ɲx!h%|w\ƷHd}mڔIOΕ"W>+\y9*Y$:FQ]ug Zgnzt3?N6uLt G4=c^k?&pYL0JbyE J\Sm$=qp(0D]f1Nj3N <y$^HB,r.QVi"a!mD2 |0tHRB.e 6ic[ uON7E?M&%" wC b o}_Iʇs봃t&cq}+;ORB=*ε/Ki(/C1AM\A sJV?.Q>7:WA)VgUobDױ}si A~*u[dqxG+J<VJ_NYeۻ a3=3t>!٧ӮSEGޮg̵AU֕ʢ];'/ Aߝ[ߑHy: 6X#b& xޘXkց uGtx)mn `2w8BGƋ@s ~#ɈSt<)1O1h'`$:~UC؋gyx#xF!m+zpč蚾3tq,3*߲r?# @Tt{қ9E+K"Kf~eٷRwVXŬEɪa4IlI0 #U }Vx-Ԛi thżگtJ+ϕNdyvKAuUuZx{}}xʷ1`U_n.4fKW7;Ae>@ rd^ 5PĽ'YE^hgk'_$jk`]葙+ؖ̓5 ^Zc̒#ogxNk(-ar3I;+iU)Hl k4'/^9O0*޾dP[@缆[Xp.OPK:v|*uj%~%!61WlU &mt2ru.Sc*B{uH0DqvU6:l,4,ZPrd|䧤]ɇ$9KJTEJnpkP)D*c<]nJ0b%Q'vj]VJcar?ǎ#/L reA yT m2N*OR@zb⏆3% uG@g]@lXgCdF˗|撄|9i eHQx͏?wI`pTZHxXR yIiJԵ.X$1\@ x \|J$^ci=,FC-XxWTp/?'N͟Ikdai[ ;! VKZZ٧^@`P4>`3؆ɿgeS?"Qd^UPS<̄$ y"uե7bbH$Ȅ-#v?w&+7Ylį#OCnζxv.> z'] mGvr`bXAV_?:n[HhOJoٽUS{ȢЖ_tLxXF/VbH?yT!Ēi]fh t.dȺW#O^WCA: P _RRDMՑ1Ä6yW;=(ؖ6^uUkz t*X?蹈][vX$ ӹG㦬Er oe\9ܺ[|~Ǿxv_#d_̩}B g<[hTvuF'e;*hgǬBӽ_dxU颌IU=/7r{ړx$ ru{80h4 #Z^/?-6K+_0e7=^_5A@!Ey؆%n|r6#4r+/;ZXU*2-D]N5_3.͞iG\V$EgC ̍N)]u 1l5TEVٟ,\ 8Zθ{#`./19$Nji8/ 8 O7 2RRLT>>wo#1X'>|arua-@czPZ u_ԡ0WiPYQ"^hŐeaq&]&?.QFd8,三.,AorzbجpZfBeܣқd:*׏c(]G#%,~$AWU2%C6j%XI/OP LZrE bpc]p7۶E1J \''ظAs+'M(ћPȯcREu@D[ ]Q)Uc8« !]JG$]_ txҬ{{J{/G$ʡHQ-{l*GvESK:\v|WU(mĚ6e}lZE9AY;BY2QlW\`a}ec5<h<:#L5T5~Zdj u6t/Ie۪qSTϖ_!*{yTc,Ƣf݋?)X^2"ssJ_rw>kMSm8+Dӛlq~yٴYlxE$QڕtV*&G\/Sh qiR`X^il,%IA vl.z[B4w֪F]w[xA}„X5ru~V[nhafBECa%Ch>| z#\&eբWG&H́M(F.u&=)ϩ_"~Qy~m[d}羑2qA5}QS@Ӏ8oX`[n8q UocW@:LArGEYY1`֪rfdUAUQhqI7  &a L0{,S+vATVW G] RmTnpuǕE_nMB͌3 : :"c4`&35ٌWB_;^z xW?SA]Cs0.ε",!(G{N-c{0ܕZXu=١7?moD0Ȥz32A`ix nP6{,,],~ܳ5ax'q!GDjy>E8ݔѳ/q:Q{!mUǩN0KohlEh E\it6.$V,2) &#(O*_ŹBD``o3 Ym.hIf}V2*s}+*JO{E=/yR?peYMK*,C{#o7QF*1PA{AJ򑬏ӝ눸vKb3 p67ÕHϰ!f;P[TGR,9eIUu;#dVT>> 0W+/nX2y J"űBS1X9Ú`žr]'JsߌVp@V$.MJk;Z3htx6U7A< 2$G gәrG(l#ø0Xj{0yT5H5ZrӋ LkkRTҢx0TVIV6v+_C xWzZs}X%@!H0 nDm[O^y! C<??T 6| g<msX{L8 v z绤0iϑP[̂ G=vWu-m %V[Nk@'oUGݟ9y^ҀAj}SI|u3)݌S/׫GHi ݭh@ĴM0 Mc@~5 TML}Ƿ.hA;S#o(׬[Ek8!L-ҵ픉8E\Q:i=ֆ p87()G2OϣRGK' ceMR-V\ uF@A{QHV^kI҄)o| NIZL}Ƌ:3"6K|OSRXtD^3YHwO5!}Uq5C.ۯd:C=J}M-GRhNȹK N@(ߨK2 v97wSeQ%2M?~?Ri$iJd"a)|Z#ڄZag}a2F4Xn'NG}IXF}7JR,|XOF" MHSKCzeO +Q@ϔy,cQKeh\S$3AZ LxkDR[]tj!S8@" "E̤ҩ3P9G˕T|Sȁa{5@'L4N\[3uFƩYVUzK;]0p+߾5KC'VZž-tDq_șWbC7EUSی`Ӷ.`'6n +ꃅIG~Q#jDjrs7@!dO I 8&&+#Rmxx"M+Ul+G4\M$җ߃F]y)Bgٚ1?H>M57sg|Lnhf`Hj=T;vlWX F_S1!v{h8]s]J":B~jvMFB*ɦ4\HKK Qy~=*sR\!xd 5iK`"Q9][epxrm֊!tݑ_*2zaIZ 2׊s.jY{i[l}}l 8U>F79=&`sEVMp|53ާ}[%lw{yhtUwg}8RP\ NZP`NU]ɬsU4̅{v-ZUsQ,wɛx <{TQti9+A'XhEkcСrިhIg5ISTg I];/'kQky)zX%+*:\LVw.-Կxg[]PRh`\HH;#LHvRʈ%*mk jL)vFĖ.L{e[uaLpR82Nz$E3Ҕ~wNl~Tb赜 O0_~ @VCHd' 2YXB$\!N 0.T؆$CFnc;-y NXZ>V=&Q$q|=˺<K_wקL4VdW5͵Fh&D҇ *$#6>Ճ( j72~-GUTz e4К!0{ZeM/ e%tYeKJ"2P_vdo}Ψ#̰FAӐ$Sd8B~^ fb[T?Գ"]DwH"D}ۙQIs75.7#iО^W(r{8ا:Î}ٱFu@ةcpUGص)+Kv-Wfv%eROlkl-?ET("T(Hl;J#7C cSN3> zWo~uD:=ƅ"Vlis.|Ѷٕߎ[N53"y%D\Fnb&o+Q.+àg}SюBgldXTziTYڌ3LL]723ypNWjVPR1@[Ni&L~uַ$3~v;=zB7$H8@ÚԥF+@NKD!|Yd}=_GiY:ο4`u>"DOv13E~|BeʼnL//F͌hEBW]Cإg?鳷U\Ҕ_~*I_dUMta0fx$FG;UH!xOJ?V5= kn ye잋*_276q咜| wd˨1HUQLhS8`ŋ"^d6 O }' '9O8Q)*+>#X7|G "x%>@hfMCȗHdl1wSHNh| r5ݹO -DJSO_5(%V Cxb*eS']Wl)˫U r¡ZJ;018"bz儖ySx:ͼOKSX(2w|^@Q nkH%tgYve͡pR("gV5)BDsh-T'09x=miȄA#tۿ =HyU }ۂقO,\ U#H1`|vaR%.>~(hT\{(BY:h>; ZФ3 ƷeĈf.G\@;i*vXsfoSߋ#x ;X4=ITR.o=} h\KX޴y1X:!GRN8i^~xWgs]n+4=ZOTPw0d^7R[N@O3M岢 ۥ*X4\j\w@OEbZHlN_RsuԵ_!X6,b\"ʆIE|j`B mGDrn&Ex@-M>`쿜6MԽ|Mq40-,13{ڟ>WmQMs/rU!F7$- iS`d۩A<3;?ݝsǢs%4;"[OS̚u2ņX;ZRR@XrRP%4:SD),t4.GChef N&+gn]ILRT 9-65΁^5j25n MЊLurTHG9;ɧXc; ]{}7jlRfRv ' JdYE\8w&טJd'3uJ#9frKڜÕnÕU'}5$@UD$:\ژTJ|8$gڈqն[Ԧ)Y5"#b<< "[h D^,!Fv2c\C<؟EDݱӻ MQ*YFӸQن A $eA>Zѵ'cNM,p?œd<,7=.rPbsd|}N/hJRH+,!SHʾG˜1"`_#4lf:TEh[CrH~&g G"j~4A[Gj<]I2#}  9&:/{)PzIWDsIBdn9KJE𝃏u0DGu`yB*ySH 86Fz;`?b1Ꭶsd% ,^MuHxXxfC0tZ\V"AOXz0wy⃲ 0Kk kų@"D ͵Z 2 =e$qշ 8 JAk#! 弾rb+şיִoˈ4~oO=Ufxo;lNR=xO݌XI GW33.s?O^0uw EA>І9W1w<)/9WHvAqǣHۑ Su -[6O9oGt/"Lg,^SCBސJ8*E%`P[5%P= %.UCjb-M6$ཕjɜ($ϭ9(\dGncWE}D9Y#|=EY~p~+ Dn;33_)wmbj [dX8{4v؅CiTR7sOߴSg: (Q:>5Qd,"o0s5$:C| _F(X/7-cCr5(_bF1ΗhTfbYQGt+J:hݵ*Z+G-/bkd/xe^m? \]0)ο)_pRf>SrLifV}>UO >kyHH1aS2<Ԧ{xsyz_ۇeeS ~ivLO R_DJ4cc嫱9.~d,Y N/}d>ssђ%p~Q(c=rdw7Q.lx_;_ j:ʐlG͐BZm%_TᆼNq]> d _@PuTߴdw@%%b2$$$ Ei6QvG׽zJԽOT9N%ЕvF_S lQ| wPHT 0 8d;GCJGnVrU[Lj}NEPm91ևlKiZ~d0|SLo hX2 ghe\E'rV~5R}R\wL_u/@X(VJYdoQL5-_ sST*!㙙FNW+AFӑrWoAsx*-FiX/ bc/'kĿ_uq:,d<09EWV]׶r,ù*ğ 鈦IBr)@U\LFi_qi4ZTUA84zu MN3\h8,꧔)k(ZCHLe@DPK/P# \VdaއN X;CvZK8_vI ФpX*6Jʱ i+n zh (5H;j廙吋>:4R9ncb8H-Ds~@<VUQ:tU(QT1Є5bXfG%uVOC6Wq`L@0荕BjoH' 684ZoGD ϬdYC~ E!,`)r,>+s@Ҥ%5qTu0D"֢Svoj>[-12[ D 3}Qq(HMի&t,KLΦkmA`_ϋ>ֈ:+SS*_`zOώWFLyVP}В\X l,`b/f?TH} B:]!rtg39SVbPG~ڛ1z 3ZvtZB?l/ l6d!ٿ9s(I+"A\_q9uY K 4BX:y*r=/:iTsMSE0Ն|{*u|%!/"P%l{s6e|D88;D2iw 7+Q~U& e\DvfjmvgF=m!0NxCZCv252(CQʑI @ZYgҞ>KRTM^ܰm|簫l>x= S4GøL7r:"""~sYp4j;8NPǵ i ( Y+z;)d mINgXBK UsknɚwQȶC^GPNfqwlC?l IH:%0fC%|җD;kJ<˿Py*6HڧH'qK*'8X_͌g* NBj-zjb?>Kćw lBTާjyhC}y5L8 >*A&+M3ع˯&jN/EsS?1Ap ;>G?= G|J-Ma^^]'5抆:6g=Q|<W$ !u _]Pr@)+m)8]DYjWN]@c w9w͈Ft(o~hGGK4Pz9>4'j1skK3J9HՄ߆s4*3 H|a7IJ8\)ҋKMN$9Dé*tnk?x&Sd80eʍT}#QZ־PJ>DT8L[xwrJM0uVK$̋.BA=t>Õizۉ(+wg T9 H_~^Ѧa21'W&G5t+UhJ[e[0-A")@-hpB#$7+2Dc[cw,. f-Gٜ%!|8H%[["{$#)omؗ P]4˾eXݥ1uo-J4\q%%䃢Hkv[AH3d#amj{ń=@gFB4+ɀ2r]'C^]v-[n6CO봨uW}}}ɶH,=bakN!RSJR#m.l,Fʹ(F3w"[ihnٍ'U܅5ݪ.EJaQe^kJ+D#hy ǡe\J>%p+LFbi݁9:?N:2ۀ-o6aLtIx{ w:nr0s,k̳Ϋ:K^,Cl#hMP"m dTkx xU"`3'ibM\=|}y!r|[fA OO%d ϞJA@pQF_F1StEcϠ`ki sщw$JT.FA^"e(lR3oK?jOH(D^ruMn&~`Ir_GA}INHx+4qN +$HK %4|Q.Z4'A&/x/ʺ2Qj{zz{&Nȳ;4̆zay$yCv'-+We04J,]0`z کEiFbSWnщKVANEZv^sfpJu!j.^ {=>55 K 9}Ls_ Vv&M_Uë/CcyDO tY^>UЫp>Bq.zݒ[Xh*b5xʣDry4^t洯0@ԷMQS<Y6JHܼlul1 s%`;=X ԟd új=ʲz#m4z}khC]ߖ:̟Rw❓A5o1Y%Q˲ V M ܺꃌN Nci _l-+! ;Sza RZuI#S7=$Nxэj bH<@b6ڃSd*v'sՐz~Z4Oa"mLq6s M'YYw*d%`U>5/Q9 <2Dh PNaV".6q*,B C\wIMNZ81̍@#[aP/aImE`16 _Ou =q@G[G?&Ӟvڦb-aB`5FM5`=HXZ0Ca{tuQF< h T[K|C%ҟylə3~WK[ YCCS?bcD:Q(u\²d de^lژBVF ϠzCsX#3_vW茶Aqi|2ȑ7H_)Ɠ+df'K= jQKJG"߻0|FzͨWoX\pv==WY3'AD !svr9hMAR,p\BR8L #4B9b-7Ch,+0N\11'a`6[Uhu? p{9\AoK>kl1͵ӁHfa.Xk:>F/v6*r -"-nEF=tċ a"4џBk/K,Sxnʪ !Ew0UwU7ylە מWgfCݻzQ]h+^'_ʽ2CeaR?HTe03͖l%J]ݠSyEױz:PBM`Ŗэܣ}x$@~ !Q=8\}di9/Ϸ⅗l-^D gqPqHnێ%aVa (h)%GDCCv$DjoY\` ?/5Capꐴ6Z$R[49v;\*hczD܋H"5Fe d=e4௡)'fSƣ,%d][ڡuHz7";ܨDIKEAc[˂ @XP}{5 Bէ 4KRYVn=DF/ǃ{Il )כ8Cksɱ1TKleJDWL>sD!Fµ &TFƚd%H+8%'ޣZC@`^nS3q=]N "~,v8ZFa5r3!H˯=>^N2U| qaia^܋5Ԇp\7S]*9~rs>!W<%en;.64l̀Udn E"[^U{롚CRp7@@seijBō#B60Ѕ#٩on8}zD3_9wԕ L0=T G2 }|]%*(u؃kA[|! wǑgtFC7\ TbS|@,kIB'Yf6u3қ~Sݼ+SWpo z`@&LH#x~: 8ynUKW9=ZjyG3ffŖdBl6{zT F"uz}-~i\~x )qAf_b WemYguRRa+YeڵMu[9ثo 1ciqQ>!`,.%[DiN|{[?v5a&҂)GB>> }4}B~hFMU-q&L7so5PaQ>؆?ޒ\ELSjPT!Nt./ P|,_KL1jV@@wu0r|q (~{Jk KFH-Okڣo |>ђ_dWqpz|k14ǭVDJqΔ՞N3aĄ%`A\wɫO, Q{ |}1 :DU^ދ2] K?VdDJ|:\<:`!3%Z#ۻ<G@ 2u/U7- 5H&#4׌8X3&/*m\:w*^iXh[+(!\H- h⚈1]Ѡ}{<%Aw@ Ҷp%g9W~ÐTm#-"#KkltiUi*ˑ9nNcR37]fI,@ݚ_Th|5C4 ߆pGzs#V4I5UJ {yr|qL=,i{HtEPsR!Ɗ Qى+~0"G QAs)L}3c9 '2[<+D&N ѩ\n͈ tt+cA"6)P 4\eO 5PڦN܍9JϾ%ի]6eEx*U/֚BST)&y#bC}uU&!pCOJYSb|͟gd/mFf.{3@Y|Nv F\o';<*KEo.m(M9=J=sT{q^# W@JPϔAVkHm68mPowpO =5zItM<1,d5X!@a̍!x)fke%(8vkk(U{-zUղIɚ4XiZBts4} "%a2T%QϯpW">Xa~Kai XC_4g,1n9X jv9ڍOS@ZV¢ѿB޴ zmNpLa.8v)H3&;& U׫ay⸦%]k{iC1K.-fȾqgnZJ0J)RK~yHB o&#"{E8=uI9U2Yeχ7oθdI2?1@я ]v`5E\o-Svv [y* &CvS]D`\QP "qLN?H :}uZ.͵' pk#P/?4 H3;%^ 0\3bl?tH͌:ï̱g24p@.ylPaQtNbd r6պLCMJqLzO/ągzO1k .9k)Wa[[?P¢^\;%N[`Jhnu#ibćkۍbH֋n<|L]R"-t > OWWKmx@5#UF{Ӂ 5-!7of#n&m yLLuOFX6'83 b1߂|]Yrt̎>Kцw9Ց}z=i2,#=!f`'  4WUJ%MQL1;D)8?%¥L]So:o\ Nt<.96Hq(!>0Yw wbe=ꠍiw`봉[;S$L_}X-l]I{㲁(:zI[e@ǥ%؆Kѫ`sQF"]b6@'"eװ/Z =]Elk'2g"e"hXYEXBbWLbРh!f/_H'tXD{zev0GKe"YAw5e3RF+Ȃ #>|^bfiz'XW-#.p;tY#!S6y(]-eҢ Mx^Mn'w'|-u*uin-I -,٤̟F@sQ*qIDF6-^Dt|ˆ1lk'spOv΄"+3W$C ]٦ˑ[ւtмM[Rt%[1 ^QٸXd$'Nfs1q22кW_:|.46lAtni,2#j`mHx}5'^Tb_xيPy\~%ޞ1^߸L05 髻\+{'$+;-n wcx[|"KnO>. luh{.UڭVvYs7E%^CE󮉽oi|SiZ<Sce(i0- uz|0<ǭoŒ\+bĔ4/x:lnj)4[M?3wP+ z#y"[ u<֦^50V8ut23Xe.0Y) (} Ww#a!*6/70"jG9}B+J#?GvjY+p 8@k5ir׻Cٗ;[Lq)7ICI#Vx5 Cىk\8)Pv̀͝c|?U&Ei O`MBHΖzذp}oZwBe"o@ !̛;)C9 |yޞ1Л&|LH' \4dp`h%{XdVItJZGw݉h-g{S>{PU}l' H f(TNhB?9^.*; vu? k_WE|O04gW%tc ?;ʁ/P6+3> M+!cwRF,@$t cyR=]lB BQh-fs/|k`WX\8pwԾz7њ,f*&kvHǽoP7HDl:wӰ15$bPojˁ3uZ 8( t!pQ`9=C N]W,bgӉC`h́YO0!~`]UW]N! 9<2ݾT{6'#Oc벺"22vOrV"yf|o/S#@w@0Px|I& ǴBg%)Wx=%No>,u}ghDڡ=2l;?ĬXh_x%lP*48#"K5zQ<@da$qŜ}+Tc#F*p2Gs3ʡWTQT!Oz T1}Tclz͡\?" P0fq B?"BP807X^ϸIsV)yr.a`E dˇ&$ AKD']57;4;;~-~Sg0y5 ; fg NzpY5V 2w~ hB]L({idY-?)1R U+6i+MN9aY%Cɚ [l#.Aupιsӛ\^]3bŮ@7m& {ws+ŠaGw`_æJ#B-Cl|YL*|f|I |F?q"#I\ -I zA5hD6y.9Yu{Qp-y33 L\_>`ڝHc d1/j{H@'P/^s4,\]a.'\PsPJB]o0UH>g#yNAp6x.܈Aaf$&{mf5& HQ!3ę CAGlYE6- 󖆡X"idv}~w \@@ |NP_ ^3 ^fPsnweL- =)g:}*5QT$l:~9Y/zONpx;\>@6v};H r2ȮIS`` 7_i_0cݔh%KQq/1L6'vi4WPAxQSaeJJr3hzv{W!Y "׿Fb l,} L,jUŮ6mh2bL `xIR bK;}A_%x:^]Khl8l&RĈ|;:Crh8Zv$o@+Q]_OJ)i[)c5Mtd-B#5)V-] KrnPj80ΥEJ#~p Ȼw|Hj6%NÒ[AUu:ݬTtdϕ<5e?輸j[d\gly8+-\G&#>S'>]>G+4R>4I5I(MeFKdZx@5L?4bt-fCXIDp;/80\*CVD ;&R>?4T|l6G~6WTU ! X-8 Xy0nx?|<"wBDG3}N-T>.-|"{CgUZO}>=l̽E!u !!Ml 4RQx)48٦zAcx@rڑvC|Tk“QR^)<@!%ǯ{{nq5[8=Q"Ww8"!Ȏې[JWpI M5lǍMLD4nH!7VKdEg=Sz] l6}%Sؐq% 1M? BG]L&$u8͔:+Y>jS i79Y4 ] A #H wg P$e4ӑV7)Rkp"8.tOS>[щeqpͧrD_jǵh yܛ+{)<\;ZP}@U+cy፞5eRAJ5 8}!xE[*}~N_u8hg]=V\?ctaCY+K,iTqa~X= F݃ga֯|ʹv<_w\ `<ﻂҪ4x ;2l`#+ofX&phȓ2Uź`9?!/7ʆ^M0z 2-y$LhK0ZTЙ,w)#$=qM;9@AG/{|l^vV/1al&pȯ9Mo;*ˀCgjGT;+#]A@4GNt\642?sI# հ>%Ƶktg쁣ݥ{ZR1qv#ٹwN[Z!8%\!>&tlGPdBضK)]ödlQ & FV¾LF9ebJE[s3<-s)WP,? { ;"A7}UJZJz@b()MddTI:~% 5Z; ط̥Hhy4\jf/ݮ(Lbc\{5w &vL*gE\-ppsX{NGd`ZpT,9gOٿP=N fN4AEBM9S"\EU|oF.}}hD].$r LHMQT]?j3Ppjptm`lX}ȴ< T-\hmJþd-: pwI+,!kYQULJ ?hwY1icLfW|<~**ZTti 2r$-D2aiJH҄SJh{]6{H(HIvfgco6lg [E1ݭ`` =K!SL:XEdӊj Ef$7W{ଥ1"Q]glh͑}7OaZ7XP}) aݝ9GpK-uz׀QYF1½f^MrGA3eo.|c avn2 kIEǞIBzwNaA4+’@RLÛ6.^]9׵x!v,Qb+%'7T_ʜg4i +WDjNiH[Η&uT ;mi=ۏɃ#OG/ema篌RQ֩xuO`蛱+9+{4/lMO7Ah(\ldT#৤YknKRxz FsqqtjZ,)lB[`RlV M090rBVS{eK$x1!BtIc Y0}TD] wb?J3 qUvdD(cOL{)t} M%XG;X,Q`"Ì1>٭Dg׿(< b 21.IB˱  ʩ{Vm+S`25~۷0Js38) pf[Of, A LRIdacǀ0C[""j2`ғ+AÑRV>'9eB7?GhLFc 柹z"[Qo['?kkx)b8mOJت;h)Ub" 5&p)id"zyt>ʿ< k[zBq2Ya7B6>I4~sc2-5 9IWe.?='n]_!- ~{Iaؐm)@gⴾS$A|HO»c''(wE2_WAo7Xfy8-PON>6CW>&_Ac3|ьx7Aw9=*k' GiuvQ;8Vף6Hk@ZEב^)ٷ ~B|{hܾ )OƜ3b윱 ]0 !pUØ1տ >*{R%T#yX".3@d9MM7&Q.uulstK[?s1l2&lܢeYI0aD(GR P,bZH%b$~w̋c:?I RD([ ʹ>;/7z|rN3)gwA _h׮^:eTPA*{$/ԷYۉ"(1A|(/#U+Hbʟ?pZ,^0X_Yۧkn+۫B@}~^5{&-vZ33UWx<&~(Yl%;Id9Ph.K+/ud魝 /߂vI9B);y9 IU. 47q֙r]\f&,VX{GrG8a`f 6;C1V:ufͭ!+3^wb wjG<4J3|J^9ŲZ/I ڋRɆcΩc7;ndlU@tcWw< DKxۚ;pɩc(ބawb[ -MHDUf1l-сJ5fM2J}$12^(RSb4?c&l1VV0 ڪO0'oʵO+ll73 4|y&12Z#>3J&5|>qF./ g[O =z 麪ap6DH^,ͨDD+ VKz>r@ ?+RwY ƅq)Iso3>z'޴A} 0>s̲huf`$kX2U"Spu Ю]Μ e:%5'q36%=B?RBDXp4T"Ùś b4n'X}hQ5BM{ V]t-g㊗?&XMt5 IDۘJΨ8?,Q j-mw:]p>d r =\Jgʾ?>}(PoypW:@^\ m=~LD_߷.Ax3Sx-D~P.",H9Ek6ci خݨIܡ"]m_KaCC}WccB屾E"x-8G0x?6.Ю,:aVoH +n8h.evu>{(2-Wj} a f\TSޘgO / ceRztE2{&(ٰJ\\FƳl E, Jd<8w4恹!_/lBQT}6Tk70dP׉_Ink{p{AIY|1tIr!wLM3L?]y^͘-Im3jqsKt"'Vz8UXi:@~Ȁ0 [w]wR(c.Qvifݝ wJq)I1v.GVEqb>>=AWi gTʥ.o," Y +5w]F/&"`Ч2]%wG87k.X]/}KTE+٩!YvPYES˚^ICjTܠBLhoi3"RRR7Uz>_x\i׶@V*q_Lx΍uy82~NDhtv(i=-&׬SZX Kwknebg`wߙɣHM,82u%2_c"=:++E.x gUP+F4Nӱn`-LRVȤ n snc%A o" OGl:&2e ga6q1pu *D35]ΜFXp⏤5!{0ADeJ+]xϱ ]΋ދy*Ka#gN3T=LH߯qpPDAVZq:۳: ,9QUznDnbڥͻ)%ZӇ2FDy!m|y\&C8^q-Ѽd1Uu(+3,Pb>$EX6)#R1QPFY=hbC.BrNJ,ލޥz.ޓ?NNX0e2vqU}EC'K qmn;lĕa%#ujL77ځ{v6I3,1RLEVWcOLʽ!Z %j\ 'kz<8_gu)8 YV $},7 GaY47HeRC`) EW6CQք娃b\3#h0H-6.)Zm.X31}uCsBHn>E,˕2?/gU~cVQ`7Uږk n'+x[H=3e yPL0!ݶ7-^8Al܄ǵwAM꜔sGXUt-xR2KH7,ˌ@h\a[6.m)y* ۻ8XkJy%!nlNVV'aDZ-6] Ѫ?5)hP]Wfgq6v4s#֢҉+IŰ5h+6 r.plj4QTOAiUK8D^|P7؍4C]`eLc 1͓jsBcל|o]#3<\WlrLbj 'HNd1ZemU|cRG7jPSzs7|}x(O a,naewk~nF JO`i& G- LDnWOh0y2yW7FRZu7U*KB uz<9{DŢͱ FF9a8?Bo`yՊ]R5>t/#J 5 h.]"JacFO>uEsNWe7[Kͅcj WpPg 7G.22soC0}RzuZچZ&zJ˾\!hM]4i= 0'Zhfg>y@]Ty(ߒ]9ksOδMֈ7ne;QZ{rPiP*1tb~_bEL}1=XDQ÷ÑC^[ :PdnX/A=3?֤J$L_~ͫZM s'`&M#Ɓ]EzbP֧> Cm/-k QױEҖh`c]T:K'TcIjBbo>G?^"c[rL2i&E3qᰝ"kC'}$CR0-/ >"So.?~?"?%V(bqgX>ruF:u?'PLɅ$-W#ۅ2ܔסq"kw&#e+kbhpY{so q sRŔ{[UUbP4~o`yqbf?hfU9nƜdmez`lQei PV"rzD@RQz [`ǖ25e0$+ƼIWa:[72bVs?qbL*xA ɋaX1%!",qb@{_KBR'W<-{9=u2;-(}dl1t@a]*~7ł&~N/!d*h< ܇ 6pLzK~#8ds\?,+/FYW+( n=}S tl&l='Xft뷢]%,=o@z3Mf]۶Q[J,|#W6e=p/N9\lo\J,GJx5dG|Ӹ5]$B*td{<=-6i6Afk]Nwy2>] S G ŏI xq:RM#Q2&])-Ĺ*c,Z M&r'`FqήMƦX@'PRy"w̷a "CeUPvplΈNPǙo utxGX L0#Fw 9JIOzm`TЀJ_bc0]Em8u!z1+G<_Y*c&:e'8oZl`5# k7v؎葁/7v{j4FH9'0T!a7%8øO1HZRT٨J׬` !7GgF%OvY sD /LjK;%8>wEE @Wf_ȤcӴz a4~k6rN_uI$43|u]6c@d/Eu$HQn}b1Flo?h"_>(-c&7رo2"xV 7$:4?=BC҈Jq#JEy`" k齄L`$D =265 `Ie~89e߹{BOm?cuʐLr)*-#C]p(;h{c Ym N2r ۡ䯪MLҥƉĊ2YOO4AoZVya }[~UnxDuС3@&VL)8YȘDs$Ycl+V lcW_R}}u?ᑲ`(a$\tb7z8t=eɿg.ɜŊ =P?_L&1~xϣ"rb5y)vY] PTp/׵Jvrm+SyǬ1+uQ2sv;A@?ID6YTkw:PBAqߜMԫXi(?~Ơ zs">xS{=l$ _j "/UAWkd0gߋu醥 e/%3\ ָ2GXo2J=Q!b.Xzrײ{ǖ2{<oJ24<ؓ`xBceG~k _~>0ϯe>=x+Kl]cKă`=5->U*$%5"^BV AË gR-R\ p^ΦW='NjDfUi,l.J <^?,ugAKӱwzx{l#[+kQ:*\'/=w|MsP{r؟hywTB*Y͇!t/Βud+uD(SL&c| rSD3YUwȶIT+QONܩ%[-j+:P]Kѳev@ 8}"vB'=h/+gdaB2<ȩȤP -v x}B/v-irvqy&oK )p?*iK)Z=8X8 nW?R!SZH2P,s bD xyTSYUp7$i%H;S*?cy̧p&5^#y 5LE圈F R:{ŷtݰeӆ!{3JmDxkn2ۉƖ6PjJĦ?u+l8 րtxvT1 h;gS}a(s2]fLi躄:YLPt# oZ[X8&|F)[r/6`ޕ֋J>RX thf*%wK/Z͚fLfduxc>/Ey'( Ḡd>{l-Y+͘Ginf,pl-y3pۓyrCt'$#g Z p^P$ukU3`Lr2мtOG2@ xsHC=fxD^^]**t~.tqŅ+7HQcN!SƲ{~/2zHDp'M3TE,3F<8>WRn'=Z^«3G\ Gx2 ?Eys"⣴6<2=[pvXxQe"Kv/Cx@zSK*i`I33IhB޵ea`}} *G$ J0i.([)DSH w鮣5Kp7H3!֢ ڇn?O :rYM@mGsZ*},tStW!ͷ Yo\Z/񜩓l yO#jCSc%ZL,@B89pbF9|p(>z.*FF*],PT*zLG +/(ۮ~`U;r'fq8BjGLiCujQod, k.?ȗdM_ldؘ"9 "(Bբ("l_5T\Z8B8M ̕Bg؜t^ qJ:HiM:#qBtn~SS<૊rO0mڙpk!1wlk|i}ǀreW?cvKTqtiNHO5]eh-SeYk!j eg;lͺc]G?dTz+}*⭈r T$RsdOOsvG6돉 U{TL2*0H@Q'=(w#>цS9.zgFv1{CmiᙥScB@ *C)Z)F\ Zu%R?|˱:@3}|cy9J#:bW()˛|cn=v9Ȕ`xp:7!]FCLjR*Kڧ1RRh dm81}`1㴃1watBz*%:mb ]0b1!_,5]Y;M(V}b7]$m<.T\V0ZZ)ߨy؏%yPwɢXa:5G̳ZFW Aئ6CjXm]|!9a?s~N,d=hMҵO=hVL#AZKUmҴ`"y+;% Lj {U)^xH+H …i 䫈HB ushTKkRp4f} -v8XC' Y`{ `xtu0[φQUIl"0kI>"3 !Ki1p NA|G$ " Ϛ/yIN&8Fqީu i·8 ‡qLB>Nۥ8BXU`-iz׷\C3nVkm\}/aotz@L[wOZ3"&urahGÌ ݥэ#ORH*fpx2\Yj&]Wa-'Xpmy R:ӽVL@lGB"8R ҕZr(Uɟ*Im+4]w7aV?0Es8}Q;68qKhdf'&Qe/ YLtWDR:H҅gLÏ{5/<R.m)?1Es>r/+b_~ Ia3LqWca(Z&x+ƺr | X醅}]Я?^v9=JVĈ8вu:$n^JZ!{ <;)BIo~G#6YBxͱHK7~ے(eG#`bs>mUX?FbRb٪:{ ()Ҕ&M9KE 3؂C]s |(Qz}57FR>"1(FS;Gȃsuۘ+f,Ԫ<ɒr.hCd߱Nn.΢[MZJjc8_j/.p8݅<9:ٹ3h'x)g۠a_>@[qgvL}@p  FW*6pq))cNFFyF}ǼˏXǪt2DMAuFB%Qm Ǽdt;Ab3|(ɟ˄,7Xy<9hBYs;|̰Lp;qSEe;@ss{2H,#Oi,O:(lHZQS#()hAmvBmp8䶮`z_#08"a1 A_Y*Ύv5Jwj (dK#B6R6 #R@4N-#pVmX:/VpLL.eIagLxd+t91T!& wA)7;ا ?g7 gm'Q۶ovDCJYVǜְ(ff&[/W|xVPbSed2z՜^m2G;?LÈmݭ"`Gyn`X3iJF6?)G?7vOy&}z =E&|ay[;5:/}‘YD<0./-ţ!WC쎌$*zz;j~Eog;GD6Pݱc~QS|0x\cÑ(@nVJ*mzNE; #jW0 ک#… XeN+r7hPJ\=>د?# ^IVgkO/%tKKL-ClȮ)2 .r๾TnPvhI5Rv&/;~YE2mY'UF]#r-ԮfZ^F}.Gl>_oԘ%)-boA@Ta,c/2r>X#{ʍG&?lT a-f` lzqNO0mPFޏe#=*%}qZB䱱hʍfgF\l Yx^9J5Az Ş_W2fÞș hLM@.,`\3KD'.w2 iRj)W~KiԳ ,ɇ^!(#NBX' ʖ $7a6# j ד . gf]R):[P->|szMW#3媵ma5uX'Wc$B`Jqmf>O$3ppv fl]Qh@^daғNwFsLvIckI''n`385o60(?"}Ȍf*sN< 6HF^ƲK#"pHgAdX~lv{th@ΡiNn1t/׶&ۧa9ވLEi=$]cřaNLD#[T61 Nh2J޼Z{B O"1uŃ`¦hr7A(N v;P_-ҔIn([0߿R rxxb';ٺ@1.?`UíDe&@c.wx"EGp<5 \紘eMK^UGβt C_bAvq nxJ"&QD,aT1GX*5pkb(.קJr^rycCX=d(;~FD"1![`Gtlӏjk*ҊGi7SQvA$ 6!N\z=N>~Iw`)4"@v;i)k;`^]#iX5Hezj g-Rf5 ,r IILaV)lpQ ŸB6Y4)B:ZSFuKU9n7kvWpqi.FƜݚL7C-u!1pZS4wf O{qPM/Xžد#:;87׾ٻR'[Vzx @SG7jcwQN< ">Tl{_ mOA581)q$n8aƎ7V02,`]gxۘ`ʱ[Ɂܫ)>δf)xb#s/ݪ^, $J>)]\  q3۴{ ^mjyeH3j<~_W:uJ/&]c<$r$+P&6&w\>3k&2ai?DA1%bN\)2l=AIi+x8DOZC#%a`Nrf:ٹ۠sM(kA_BiܹOЉOx11W%쒴Sh+2DNJm%͔F|v!S۷sO" Qj9R -_:|씭`":ϩd,qKΓ 5dA'9)sY=ٲ^}Cy,1HƂ|\ZvCC^#n\EhQL$0u,pXDoyzW@#oqεA.Ag DՅWJ8_S}cFDV_C0+Rnz6CpM -Ǭ`T i@|fFuC?HBH:r glv1 0J`C'gfS`)8t??hv3$:ZxWÎYKQeQChkU-˹5l2yb \pf4 5-+!J18  XA1jy 6f+@l?k`L<["Ƈ﬩[7D<$0,{[qA qےx{Av8t>3Yqpd?2ǯ݌m,A`aVy%Ze.:`҈+Dp|CR×im<A D%_]AҵG,vԢOXVD:_7<<MЉ۠1-\ĪrYYh)jSy/ 9}@zƝ4y:%Jt00ACK0) n彝0 :WXRֲ7j+n6WIR%g͍0{^sK":cs%G.|A5j8LĬm617Uʾ,lЩ|Kl[%Jy'+A$1@ykDHA4AVwݽqz! s(YI͊*|HχgGȹBTs8po! p$SS om5F|1 e $3ii;ޚφUxC~nHtnKڬ˜ +Ǹ[݂р*0?Oo؝d`ga>`H.7Lq\,Bub`ǿ|qDxɱlQu@:Cn@JO KuW0;&,^P8Y2+~sQb|Y, W[700F m}V}-DN fCt:EH=Bs!+:$.귰H8 Hs/}q 벺zsMj_'WW/oڝ!ս`ʂ7Gb }i{ x2p|vP9*)Qow .`}k=))fH޿w[BBE܎`rhN}eR_k0FLSDČ`_"LxGc38s_M6AgDΙI>JjY&lVSjK/^њFXat9ܨ/<^ TFM ?d۔|)m=/6? bzy#/,w(i⟀9qd\rm-X?]/fᦎ&;RÐa*GNӕw\&2s8?c<[ &N7f`4yZmd}.Y8bhwxp:tI_z.YY ɘfdh|An f6 d)1D kO?nyCCW~r4$Y;&͏U3s}(<ɕfaM╊zbgڮ>#u.O`xi /jǏ,B>0V\>zlę}_O?r~X!H=YKم PDh\#+MNЫ/f/,O o)0yT/Vq$o@I"xJ}d[`V] B"2ih=@s;Vݦ܌YVA.lvv'4 ;k8oQ%L6Fp{p8l%i/@5J5 EC4`BEdU++J߁<5dpU-AQ 120sV./|[R' WjDIJ DՒHE_P']pzfEĽ *~9<5S㉳8g-sE{h– w::Hhg6E4`Ļ}%{'w lq)f38Q!BM46Fޅ ?6Kޮ/lm nk=14[KOYr-! qAփR94l^AF&%7 tOj[*~2Ulvm<-uc+Я?&ݜE9;ПtG]h 틯&=d2E)]Bv$vyӡPmÓj{FGYl8\Q"7`Kn"s$xp/S}WϔL GF@"$Hn1 &P-|~$^/Tv0<3u"ɶ$ ~ʢ-E:},ТW>˱n*Bͼ sL/x́[2ٟl9dLqjB:l|Њ=La#ϑzQtZg--mX[6≘_Z};97 }Ǎ(!凵!ћ1˙āڣ0F@ՐTUQG]ʅ!:/>a ("֫oDyB\5w̘b-ob.[l22:gL$͋r.}nJ"$}D;>238ߕc݃ t7w"0H3:@E 떭\Eu|9Ɏt~C2&[4"ݬ: ϪS7?NiiR“=v:1hf6"(s¶)>ьmB5zi1j+OA`7cU+ОXrwe N~4|/_=4˯f#}ʷ#<>>}M[uP}ݓ I!V{O2FQ35SL,"+S^hޥ~9\f[鄘0uboif6x˻qcr޵Q4%5뙓sF`:eL4KbPJ U=+@*v= OGRN p6hh=RHn{sLOjSNvςΌCq&*" po1>UJS+;ɵ~CbM_#vG9U4糅|*k;PDgxlX rKi38x Ydaɧ'FQ7۷M) mI—*d9|W:,8ctRNaLQSb9"{ Jh24ilzXw{~\g!Z':w{^߫+?n}p3l=au:0w6a=ʭ??N#m<* Het/+1iM¼Ip^2$+%l N2oJƊJ/̏%; tܖe}3vX\my琨̆*rqEދ)i6v7 ^M]U`/އRGч{fW%FCc#NnS=fL@R=m5Fup6yLmMde'ECʧ1umamJٙӡõHBIv&w w 104Ybz>Q| C5\+CRl ,H@]jrҾLo)G;-9cmхt@Q5~ 7pWaA(kӿYcIīy!\#!qgueU7 fνRQ[P7 z?L65㟠Z ~>Ԛt,)3QG~ܶī~q*&ng.90*5ܿQ:_~9n,4J15lG;YTj,ȑVN{JCE/Y5VHp xf1+~A:MF@QY<:*D.Mq{'p_mmg6)}-&jPp]o!.EL'!x?MG&2= L †g;tIsJP4t0r\a{o[',T[i65xں6xޤo_=p$b\{wͦҕ^Rݎ|xWJb78W 5!W@ʉ݂G|r,*]-! 2W甅"lLL@Z|)NJE$xu{~p*&  194;H d嶇5K8^AU g*NժGgd`(&AO{As6FlGOW}D_;ka_K^n(gѵg=7HGĔjR 0H`^޲~aJsϙ4 'U?bДw7㠦[1@%};J3L`s޶ !`AW?bCnr [ZeJ9gSM~sʹlnRM}:`6 zEu7SiOT![ np9^ \AwM p&\N0-sF~߹pe]A-_S_M֩?{lpk3D۵|AySVYq'e8̸9 s̃y$\52W=ͅ xPf= T,\wD[bŒ{:BwIO K@nD0 7Vƅm˯WK:o匍6E\bo w$ui{9MLQ W e{*Gk Я KLNF? Q$~SKo+R]S[ F.qkYe^8@FgˡG@ $k&mq5X}n2dfMv#g8qqP =miӍpjO̘+udѐ\T(1Qbu z֨#\p'~HI0<)Ӈ]WIfz҇1AOQ{q &=NbcA` 9F8~hrv(}c9HqZPTrgw>._ &:e[vJH3ثYANtzBg"pO hR #g^ܗ ͓1ND];B!x jLB7Lnc+PAqfb'$Xa,]&\V[pݻsu`>;-: z) *=҉D-[.IvflxjNgб %:d^urql~jxQppMPiUz^]¸%q-`|j<▉9NΗz(|u@; _ 3rh׻a10k4OwP7I;5[Si%nap}x?Zq3 &˸pl KaZql>CVg(ǥVY]RT+wnzg{ʺrmÂ"vw[qڅ9NrTDܵ`>[F')h4GazQ?Y5 \J1zҥ]6b[z8z)sʕ}ji]W gjۡboΛUcyOn"eT**k0 2H. @j9$CG>k$;WǒgCNJZFB~!b:#BKݾb _KvŵeqJ%;@ gfc!0Eni9g7Dءmxp+8]PI i]RorHw-{rbߡ0ī܏xje@L){C`2Bd:8Ճ%wZ(q;at%셀ƞ;?#ԟJڪm*&AulY֖ F'kh9&kV"V/p7mͧC;Hhʛ`U! hl^7{lM(*0DZvuINl2 XE9'jBWz2Ԏn(-HE]C J ZQnkRpVϞ܂*M`L%ȓC<{ G]J9^V:_7۹Q2@8~Q1q_ rjו{*p֝CKN\)ILcځ4C9B55K|`BrX?y- zL| %G;(6T#&P#.99ðНƬG8[dt8FW'|"U"AknZlM6>dM4hu19]v]|f|DX\إ7n~K<~Z1/ǴLYR{Va~Jz\#PdN^8 jwP[Im'l0ܰ`/>s{iCBbwodkDp]@wIhgUn}! 1 2v"l|' uAN2lMX# {"6!R8~f9Y/L|o屧lE}d(1.@De Qguk/Zԁ"MX_m* X~u[,Y% CIq2'U2CX8FNQUJZ=-4'!h@^- Q2DS\ahc%r} ^,>[fn߄]B 17\, Ūшݯn΂'`[zZm (ԃZCtʴ+he@W66bcDX*qLq',-g ܙwnjK${v8. Yx~`r_ԍ5x "Ov- ;f+:Η^6y_8Im\6e¸/;< (r) i5m8. pie H{ r9 f28jXW# yu}lCڡ*!c20:Ѿ uKCzmEJ<_nm58N֩M/9ְn%Ԃd#⅛QxA)>x@ Ϧ Wm< =[)ǔ( $c9#(sb7bwy=B!Jϝ(7vZPE$ʽ?D5G)vCͶkECa 84}gK<ߴ%Iag_wJ;fMw:5\lFaKůԱ_d, BLg'WFP`*lQl&rcCDr]6 ?)8y;eur̜A q1Zx:r!0]r.Y{Yke['z({ؘPB4nŷ 7b$_jyIu%_.r[HÍ`‹3U[aK7OԈ{bQ=ô'#iL-[b;&o=Ca23i!HX"Ƹ5Ǖez5CA4?HU v|4RSM%+Se&7tQ8?.O{?wFaO[QX?_PQaAaonu';|ToIi?-. #"K0&b޽dIj5.8%}| x皔>TEquP,6I+ ?}c+'4NhdSo'(6Ly/Q8zqB~C2踦r|E|A&]7 #~,x,[k҅,o.48RETgBK$n.}1P$K sJWfn1> +YcO' L@tntۡ7cEHrA*ݹ;Nírsd bn 'nR2Fx}qмi2PuFhDW;eGlďwą_jڧK7 F\$Z<[FӅZ'}]ŷv4p7o2_&L| >H)*rP|:#s}@Yw.W!xY RbKڼ)Ї*| Li#ݿeD):΋&o/kx V],<6IӚd,p`Z?ղjQڟ N5]8~B(LI*,٨ƸF`)?[R^EB-UPPMGr /9'(V8\>Fn';Sb6O5 1_<Ts #bPiHIxEStޥ18[77rŵye4Å'l كxAԢr<8cM 0RWܘgh u J`-Q&7#fMB'79ϸHSq-DhB6HА>ʤ Sb0tGT.GlZj|AG-=HIE!C\QIi#+hl Z#zdEɷIM"Ztٚՠh2$H*rXE_iOL@s=iۚ/̾/0>m' >xm~~)Eq|aXO@rg$СMaEw$-{"0F5ƑXk$~ϥcv4'IRڽ=-(#~DCgL b;E FSJk9SdίcU&Ý* 5S"ǽ$2L]DI2G=HEWF;CIX-#v]&N9} p@XЉzMfҌ ܀}KeYRF~3=3qlP{s`BNe~eӼ FO0]mzR=O]4p^ύc>RуW|<ngdE,nE S'K!>Mلki) _踓||T.c&+3&oKkᘎ .EO) h'}qWU #е?9,LYqyNB"OOD۟ $#1Dv @{YBClVeտ?{uaeBy]0{w ) ' 4!;hZ']k͂S80CNq $#PYjfI`@A38l}B ^B{s_f:A#A!8OO!diȀci:2#NZj'˟㠿s˧kzFA\7{#61<"cLX0ټdui|)^*\F|B'/ߜI}I_Z&9MKG5Cwo@L  ʰ(a4հJ g^KR 2 WBfg^. Z#fCϹu]*Uc-^ M4g X2U~ݮ\SA29fÍUGHl H}#^Ug?;A?ĭ"Xfbt"wl _ގݟj:3njA01UB*y"QYp)ڦ<",lN AVg*3%ӎ!|e[դzB TQi{m!9mO mmej?mߺq|'Hu=<aRy/JT (F']bdqDC9t܆;i yAYѿ#bЕ(367Ut_ox}4Q.2;ThMLˆZ/F{N&Uڀ[>6~{qkbg"tH͟^{|3Ǧ=aX֫*ak1Useȗ:N8ޠcG G~xFOdy4HS4A{;.$̜H0P(yK"DV:0grG[D8+c3V,#, _ YrW3d6R )EDSփ0U4͸„J)߃xf3!pr~*(}\-˦k?aWgooE|Ӝ٤TXE&჻C* wڑP%5s!|( ~ 5Iu=AvF(.N|ס:. േ~W) iɛXdy|Ȑ\Ic D1PՄ<;=|K,Lz5Zn9:5<u^U9ݝټ@EY~b(y+6eXE9-w5C)RneR Ѵ̷GoBW`_y0f- LD}-MTt#4꤯?öW+rqLz+j)#AM_F.*<݅7>on<~9Pgbx ,!C&EҎ,BK !#Įر_so1jLaowG&iٝ* 2o%qA i#ɢdPHµ2k==p eDN>=j3_;_Prm7QAK%5o&}p} ]0ͮ_1Wж}f`5xP0tCD\E?qw$A Y~30mUŅ(4H$*Q6+7`j#!p\9UjxoLvZAVxy='^0aG5kDxJߣ6[;tvjH7'R_犱6\TBT) {l#J^q7:p~<.`Zu[q*CfyC}NHV_1hp|[N&~ ~RvsN_M{&<&&:+;OLsݪ j6.2r)!'@7PzU Ɗσ&©j[!ZML<[]BwBʲQZV"r <dZBc0HC@kj;<di8+s.tB64 m@n: UsC5`}z?T` :s"?FQlźs9}>ʣ4~F-AY%ܷyg*3Uy5MCAΡꫳBGQj{ΚC(vSۓB>~I\ UxυK_K:;u?OdNy5w"1`cV1@ת쾼 j? t%Ȣ~Q@ް{ NǞzvB!r2vrfsSxKn:-aV+6y[.b9-4lSw5N>#HevUtR^(LŭViI]T=σ;@eLTDZN/5<:lDdvSdajQ8"EM  $K*ZiTVLN7lQ63bJ]uoҹv"y46<:۶aС^-j$3DKG=ҿ!ItOb t[}3na|C]eaԒa<-Nک 6^J]i Ǟy y_6zTG ZpەzDerWqIci+)+OTƀKe W@؉P oZ]5+ i+e2}F]|d0U"f|l3 O:(,SP?/{F/=嬑 úl/v#>:*؀qڙDZ xA3TIc4_uom*[uVA~X_"4SR!ݢY͒bS(%]')r)L/I"F6`L&X7Oql'ۂ) H шEm=5%=wRMO 5t\:/kS ֧b;Ԁ&m,l0F#dET=jMt-jmpuiqPՕi~&䵤v$Dh14AWn*-20cW U%Js-.,`Fcx DJ~NfOq#&\%KS"*(iI,U,/7Wvd{`jB| 32=SF`AZ!1IZ,?dGmOeZM ?:!5`#n!Ȧki( 1o"Qp2Jh€>Is%b%,o,ۜԸ$mrSHϭcy++mwhWnJdnnx(M$5Xіd.0L#]3^ e<`LK C@CǾ~SrȐ3~}<_(ݭMbI|~#{8ӆQRn+HA?{]5_/ S"F,jo^U>]_Nč&~He BY\Dm63D*bWt8ȸvim-K){#"ZZS^FGoȏ$L~ ˇw k'4f7c,2OԚgME*87[T@K^ 7Tݍy᫒xJTPCZB II|Cnŭ0dW׆uU+WaNnWލVWFzbEȲvX:l]pƉңC]CS |H7c)VjI}uQ%=-R* >N.xtU<_"#Arב?/~jIa_fF#|bn2KM{[`BY*mN`>ܮHy_](\٠S) +pXFDb*O#wm>^FZ^-̆MQ+L]&71u>B18Hq@ ?3RP&}-!/2:^TρA*F:dofW]G7SUMCk.e@=D<~kM9pwh X2;*=܉bPϘjWu*#vP.&\%Ey)^'$|.ʋνW/ÉʁAZ#fv 7i<316O["@$c> .AEx=/ ǩa.Q\sψ?N,c./<)RJi~ο85 SUJdԿ8Qqʷ 4ƺdȁ ++cGfԔLR2cDV5ɒ=MEk%8efĆrҒO`IuTW^ۉFQsi,$e`i:.vs44g?`ܒKb$⶜N<) j܂)1E!Pa$h~]Cr)Hc܀bBbǃ͔,(m R%tv]>fmRWRond6:'ڣcsXǤΑ "]aJQB쬿Z˷bFI.@/ިF@}s 4H:£k%0VIӗ=÷Řvi~4Rg2j@F>_y9K*:Fyb7x,->p5?}<0`+pi}!T:6TW/PII%AM5:17;SC<E /UEN%vq5Q? p`8].~1 PBzOZcb-?3ԺO}mC%ǝ9f=̅K×Advۗ.mÆqV)BH˗„~l90 a B"ٖW^z?ExG%`ut]Kwǥ`Ux3}ރ.`@U6tw1oE)DY VL{Q=YR\٤A57OZ(4fDeXfR#0O43AJ*abOR[>:ckiM/C bmV4\wwY_&+opd3Cle%h;AȌ(3RqE瓵N %Y⅟6=עop&_vFaOsu"",w 6 |faI*;ipE]|DΤ4"YF0pj۱H2mT+3Opc21_5"̼ 7ޔ1x$NjbZ^x)SIȴaw}Qds.L?c`0e]oy&]$UR:Hi^s"*2n ohFd+|.h=V$5#h֬r8377:C%6MUmްVK N?%6B[!>OF!ժ$;1$c !ѡ$ζh  0jSp?F0-NSzZ,`+k(3W6g\C?ϛuHY?ׂPD"db2YզyiiP vl< ,$sm[j@ >=ԾF*!d]S019PIkcy6[G,+lf8KEvzI)IpGC#GJsqeN W٥ zTsiߐk.: F]r^랤 |s zU!\J1 nt)ia^SNjJ:Dq󯂛\p+n o&h%ȒfN[ >FM[**2Fi}M7PG Yl#þYZ:G WpO(LReا߀OoΔf )T3>Q|YY2}4 ۺs;jh?}_'9ʂA31'ub1-&,;EyWWK@Cʺv \R^uH R{-CƓdEC#?OOxmxn3-7wo*y)* 16c-˒ظJ`W'5ustNHhkT-f L`BVt#0'"c(kkn uOf֣_<8~+NE%-J@NNT0_x#>?dҒ]0Fzifr|Mj@#m>Q5rό{wc`MҐF$7}-1=*(ϲ3ʦ/|bQnLR J"h?E<㭣-WUMK.0Y盃A2SP\*uP$o]HBz pof@婣ɻkx4F3ٯ#p/v=%\7}p/v잁.1_3#Y?u~0*#'蔽ȃ"I(G̒cpH;ySr~$2GuBx&KB;cpZv.V,s}d ('6$4X!^咔0}jZӗ{MM|k7!$$n] ri!Թ P;fmLj(,<p['Fœ_5$pxArLln;΀e/>ȂHҔ^v+M/rOz4~]QcӷwҴdƻXf>}yX@~߱F-5a2`9]7,XQ ٗP"c~vOא> ]8g]y$m'?bh\?WDFERE})(دDǻĠsLq֝gsWޒPaR3ȖlǠa)?ïoȋ?5>Z«teϥsoӃmyg6S8wo[q5 r9o֯\Z&%BN={_@+#0 Jq($!s=@$" ZY>${4ld[- Ub8VWvI=|c7Keq0eI9,R q8x%1Y-MJI7"!9=5UZ^6)28.IV #^\Eo8Kc.nPQ&'p@̵gD~>/7SC5,W¹^Fm`hh k Ce2wK¢4GL j3&79rWQ _ԅڍyC{[Ԇof&%/{PxVN0=[)wze@8lrQYvNl(&4Is`6-j "Nje„uQ~_w` 8{7&&M Cwz'N3b6Ļ&a!J +N4`uFs!1ƱSq1Ѭ|f)'.:搧.-u=<C9m7q7SBx?W{I% d簾 aZ Q0KzL]2¼G s]#\h-LV2BK:M`+z6ur`YSi0RV0㕍@OyG0:'B:L{`Wzd|rɜ"D^dhW7ZͶ9 tm|w&P~{yXqwe"IH$ S!꠫URֵe+}zuąo1 @Z`&|æ1%]/ow{mMNQK1mStנ^){y#TVV0Od[gPGT)hiâgS=q^hAƛF{RJi87[G6j9 @C呞XaЯfbM;6vJG Xz˃zVcڣ*_"jSPqA+gp?DHgbIi4鍓||9zR+fp >6%zNJZ|σE ) oTv4l XgWiߕ}I/ 9[{v؁rċ7Lj9R(rfy 'RYIAU]!}w:-\^rR68ַ^X8{4^6n ble2dƍ"j $WAq, +w@t+3̇&m@¬2>W.E ϯt;|]=0$_:>HbίͣAacT 03Y?Dܓ P :ͩ$ug"204Ed 't6A{9*'gkP^{Y1sKNC^"R* i{ed6h~4]u?tv$t(ᾆtud-+n݆oCkxJC.udE~6E JWˏ_{jy;ֶAٜkA@{B|DŽbSQظ{%gA П7Ţ[*_W|c B2ɋy9516d0u^v;;GB9BgCq6ՇS]4#hH K3o)b$8 .x4"hO kZ^bT󑖊cXm38-0.̆<~"Q4q>NSg ^;w(%]kSpyj | +JA OF m`ayw?5e/Ȅqqӣg*(R_M݋9B*/ߑ *HF#C2wjwL7 ']Ο/ 'R D3U2={9fܖ"gǗvP8W߬5`}O , K{zn{/pw⹪ b~p+XWW ro~ 0Q$"r[I9&b1̈́F~vhv`;yyj*DDvZt8KXYG^7|?{abr`e9ڔdьs_[e/Jfܻn9ŖTCF2Lq6Na<R陽 5vkNw*ΰ0vŋS%ԓg  t=P1w^0 R}# q(T!.z#s8*?X<iDBPZ;'odz 54)HQLx̰`Rlנf:A6%;oDKm۳SuPJ8aF `@-pXȾQ.v@I;&ZDfeocNk~U",4xMYs*Kj/ rH4->ZPI?BmrڍvǎNy7j/g %jJ$K,;,rdCB>ꗸ,jh2U{]K{ [Z)-{v)!n% [K!NtIڞ4HSK|m .FkBTĩ;kъg /{Pa^#^׵)4r=멨^Ӷ=f7!mƑEn5&'-lw_l"߾]-q!2u_,ZQp^6^Iah&=VTzVyt/8"̑38 Dv b̒@ւoI2OAV\IBi  ь^ pZ#I$3~F6[c{K < 7H@'Pr!eNasdDoZqt7^H],/_V!zk SP9AGV_Y^}g%h:DOm^ yExL#*P(Ɓzt@ G~r)G`J=ܿshvz?V2(10BY?I>>VޛC`o^ns'˃?9hUn\1ujŊQ#bIumoC;-UQl0j3 jE305H{7B50dNJWVp]Z`Í^ľnY2H8p@#̔DJyyU<.3>ѧNam.=IÍ͌J0?l+sCΜ'OS%uIMij޲ij+E-eGb.,[z.Ǚܜsh~UNOzuoPΎ(&Iccyr'O?IPgD r}LI-q}IU\lw3١酹ѐ_1Chu,&xLIo3 L)"JT+WߦK.I<&*~+e,͚9S| CaFgpoGM$Tf-62B9ZS5U`#X_">HHBƒP?CKqO D寐Đݬ׷?]`M\ͪAOw2=›Sc+ݔH vȊ*E~QHع+ZJMN j =n};Ȯoil엏Omۙy9 u! 2f],tBsCv,'j& lɰQ6\V8AT-duۑ"sf`u 2i:C9vնìJF\b㙕ITft>W,/SJ k']$~SIi"3 S .×>1_V?_p_!<$)~u'%lcS@?DDݥ>}# 'b4Ȱ,1ME+SRěOZkñx块[ FePV+GmF|\(4XH̦vy+IkD+U:JН,f%;)ȢZW-pat~==8t["k@Q0[=y"p>bؼg.Wkh% _+iVe8fJz|nn>-R $\+8v[_uF2Ӫo4#Ge#aCv&] $,7(^"ST"M 1[+;^Yb6)t_#DNfg㓚j`&P? J2&[\/ E&!֘[YyQ6 `Vi.9G¤O@96؞#+Vfs qQ6>R“@(gR iw]~T_<@N9’'Az'cx6 ͇"jy}H$rHYj}ƻ}$tH:zJe`a-K4}2Gl):*/3w\lO> ac^!߅"2,d|wj@8v@LrteSXbb{ߏ]']Wv)]Z(jebWYgWpf8upAĿe+%mG'?ⅅ&L<i'1$RE6M:IJ3kr]@L`챪HU ?)O&$!"Rrʗ}'/ZMi{Oթ>~Hդ5{!-2il$Vlj4Y:HQYl*?[?r+y>0XT"/9fRwXEE\mɧ'^Dv<;+ %',} lcyۦ뢴K<ʕM"¯"ᗆ)!MMѓZkH'XWص4^VRv~`+[|Jg?t^2iPjP |ًMF3w -V,v?S섈9q/unANƣ`8H;^ ZC#łQL)ֱD+9aHf'H %f,T/ST&#,KH0HRQ㻛;P!y <2Ȧ=o^sRЙN/ă_Ŏވ˒>rweyaD+Mcc< [T0b2J%m];,&q尺7&+B{$C%S btE;Opm௺sm{Nႇި9?NF]oJb~w*En%8_ ^58SGtg$J@7m+PTfڄ:m~oU==ߋaaBQY@[O6*6S %ĈAKTZZ;~S4wZ{[1}^ 9ܼqDC73 H0jGA`_{7#JՓڃa#ݽoOome*@U=2>'<#`1#l^P'떉94ѫIzk N| x3'&g0:)mRWVʥr!VY}pvet|sD$;SH`5J;2m{m;<̥@儔H hCj@܁ &/Q w rRCHN@(5ۂӓҊ /zT#'ˇ ,6LRt`S0@*)<VumI{fg "%-8N::E+L_}o" ;VI;K1>¼ҶE'g+57&pfGAmEmU)`{SW T4"HW.^79 \1#N#^3 ?i >x,ȝ_O][֒b(K^LG+| ]#W ,0^٤Sg+y/dZ=N aG0tN; 5&vgv oybzBF_$D&,҅A4{W1VxHLdI[mkEi:y )qlƑ1^Bmߋkp$?~BgwVeFuW-y sAkլ&=v)$mVo'q<8$oI2yF/ <42Em N-P@Õ;Gq- Έ _&SKj;0FJ,b?qe+/۽f'ȗ:N j٠jUIZAvɛl+)KF,Faa?Ar~wqCp'H˹ Bջ(-fGzwb*n9 G("R!in~wnljB1ٴ" DPYmW\{Jtr(S? Qs4؋8ɦCN'P\3-Bv  :TC%^y0.đk֗Fxkh<( wsWSǖؾG24dRLmNkt9:RdWIPw+IW_뮊Ⱦ-NdS*R <% D?vy.Ժ_IkA f߱r2Rךb "Tx˥\ 9uS6&@zSmh uDf7JiG-=%dC Qm)|ں&v@QRfjUq!g&țeОBLxo~yNl%`*|E^ bi?=re$}a!twe ,3q|`"+\ cV /5ymr\j鷼f5@ 6T^EMgoJc 9 6$@Co*=ez8}w;e>4Tzz[@: 8Gm(, qo&4H|}bfI<)x0`M 39 {p;ciJK' U#(he/|/Lԝ+J0(Wm,4*++wK( IIsr,660M?OFQna`/u%nUioa&#'9~NVPeVp ITF.Ω}k9`8P^1Z'a SeZ4Bl8/{\W5W2NHPjqa{sE)8/" *xN{H!88Զyӡh|6p).+Aʣmf2wT/9JߟH2YqDt ǎWw[B5&5j!%ջbɊ@.b^AVP"jp7I%K8u+>e9B-ְMyEy Mu}9CAbj=sX"+LmQzUG5PϽ-S,U q̤ZUc1쌺iWfٗ> w{ _|/G |g%*;f{ $50&( ( /'K#4K[8;j٤!ҳj#X+BB\:zuB,W4%*=s[$=v!}"x1q,J?y8]tW+Nr4ܾ8zغqkxJJc^|n&vZV9S%阫:r .AX8=8hjr S}161$bMJUMv [ ޣCSHӌ_@[=`[ v<\z̮@(]F1Iuz#Ѥ: UMȄx&{r/ gj&Gis@ v91QNAjCERS p%YcrʔZX¦f.BGHxqMnn}<*\`WI{qZ`WsYTOYyrÓSppJ4>Tjih CpWq+- 8:NF7ZDNyQIIec'M5kXGBjsfK&T2eLuUC$4 V__'/odtaR!yO_eAT?Z(Ӏa򈗎Zva{I˂DcN=YJTgdgIlTm[8ϐ.wɯ:\۸X@xOA#ۨb +A vyqƧ@鴚ɚZrVS X=n寬0&ΓP-3+C} q8'\82V{Y-HKs|m\tuxڏT0Z8mCq}W9߅tGZdx褂ɛ:슎9zs10AnRDLvyyzFI%L1mwTJIz `!r"^Qp7erxBa\!WEmQq~M07 lQ? ފTu.`OBoj,7Pذlhs m.߭a͙Ҳ.o+J{NƬ2>eu`m-.AF˲#(9ŚO#yD#ҟPb3kW]eAQ=Z#(JNЉ"6E="yWyUۍ_JesDS? +П jܣ8>#=n0kC^zTrmD<)VD%KPaMjw:vsdLOۤQ^̇Bk.c[?|âvwUOs*#Z7"T9Bd(Yj[_ΰ(DmUR#Hjxϥf(~gB]rtfːS+&7ʐ?ܚ/+gf,``aj;u$.Cٓ#cK{e8_}2cr,k~oqJ̳)~ v4-$?sh6"~]H@Pd%(4!}EjrqKYF4 i T+?5tQv$d* "tP=ܵ΄򜫢숄lb?V-D< 'e?Ξ`ԲЩ!:ҹX<ô@F/wcezU\0wt Jld TQo颇k)K&51yBbD/^*y'}^n0>B󧑭;oZ}W36"2vĔw=>k*hs&QV∁x9} )B+ZquON1JV8QhODv> `+"(6eduӞVwl7-'&ql?q[V*<_,*o,i3:O]"՛!c}柾93n{ (@|°_ AOVUJ1Sv*YveY.a6unZ7 JyAl3.,Sd',&d҉[h}7 e,Ć&~: ѴʴLw.g^O=IC|Tg#j{!PEޮDA_Iϖ: 0 } L+ :|ZL/}aCQ,`H ХOQ dV6!+kqZ ZWLuWV, &.Ȱ<;tB۸)eW:Wqbsp܅t;mW8v7Li=[<~<NU8ɀYZ#2>꼲VJm-1C0GAG[T?TՑ4ÎB`5JŐ..HRW-e'O;h'K:Wb\0ȃMBҔf\un{yfR=L\kU0=0sXM)} ,G-4BfE^]/ARvst0GpA"enj#XcT } h죰zf?nv4;uO2^b#J3$_tJ IyPz 4`MNBsعz|wap`^#,F/FU*yf:$tATKm2h]bܗؖ(󤩉iE4ǚ<>ZH'ڦwL7/6PW7N86!#9®A1DT~[ր.5ia ?D(bvt0+P#~YFKlL{`@)!z+vÖ&͉iHm#h]uvZN 9oݬTE@!^Q6_kHE.8Oiژ# 9rM᪸jD=!_%Wgءjp$v1cJ⚝<0L DZ|&|fIV1c8]q!HnOd>#(/O B뵛Ϝ6KNKx r iw.CpNuI(VEȺ4`>8R)FԞlhr^6Pk;(kȠ6d*la8WJvZ#UVp5/ՓiÐ}P$e[LC3ZZ>YX-x6ZAЧ%m 'AVYvåݬ~(max~qpc}{Z$-]fB_>T6?9G /׋^vr9J:K&::weepO#E'bװdʱTpiE^bg t_i1ΚIߺ:[ckN/2/V@F/k5U!55E17-vmvEW46Z'g,sWJ5!XكLLU"Fbm:ءdɥtB-iE qo",52&}p%{؃Nh#QF^c^bٸ4]KQ,@ 4`GEd/U~_RHK۹[FF1b9aT8_GvX,=`"Ђ !O: 8D D3P)ZrT#9<$o1~28dd!eUѴfyQs_P^oy|ţz>XғnfK 5+6|n^_hsb׎'v}`bՕ4*(pvdM=毿eDυ"m`gZ~|YYDnά7fC7/;mufE왿MO]G-;Iiy ,y诰;2ٟPΞІᚐ`wRXֲCe)8/(}n bc)!E8_EP.{8l1ԢsnNB(E&HU %ߥRܽ¥y9GIBƨO:bYQ"qy̱IZDi N8%ݹ=_=~q|?svm{ KZnu^V.v祒i(.}/.{lƓlwB5 >|@5Q>[Qn2$IY,/KesRNEM ueqh@i@4h!prjusܯ0ͼ`6-rj *ŀ59A#c{p>Dµ$7qtA3 ,Q(7f~ w'glӶ˜*++h#hEk0AD9yGmi۸[xHk$SBB'NHw-M}qD%TRAn@&C+JST}t t=.`ݏS1l`F%E$5 Na}kZl(ҩs'H3.vk!_rL&1?m}8MHl`"ɝn-2I}wD_ݫ /Q -/n'r2TW"=AvT!Uҿ%Ի?dشV+Vș|cM~Xm|7 Lop-+D]</w(ם0IU/kנѷ;D24H FYX3 "Ô-e:_wgThY ik-gݺ ڄO`̌˴Vy[m.5J ҆͟CHsk |H8T$tUE (P~ 83^++ xZNbB\{ )tsqq6IArWQO| U'Ғ e9ĸ{5IFu@4#-k"hjU*Rm3皳qX*bLY$h9*x/KS~k^ <р'1}:_u.l7LB[-Pa'-vewMϕߥF]ic!~n@' 3.;c\- gne.=ClurLe}&1̓X]?pQW}ɷ#HHjө̩*9ɺE]d3t2z$ϕi&a$vro-0Y8>GH/=zFР, ;W|j.DwjMbt,0D=az>-0dn%kB0ġcb.eO8 PkW\1'..V⊜jV)=񖼘1 d|tj6A{YW6 o[B#59.J!;b) oj$ |_I%CO|2ƿ}HzJ?<'bE&BYwR 0FA$A ZYf.6+nL,cԉe~nX OXw*6'c:sXpD2fQs=ZT|sXiޛyiBzu=" g4s'rlf*i 3o_ccmd@/hvti^G'a7?V_' p#syŠ%`mWm}LN:9FL-38O%$?؃v~\V:y`>s{S; 3%!3{<3m{qo.bיЩ3qތAP1/ sFNje5R_l^ 4~$4yAw͹r]cQw ɧRLB`]ӎi:oJFGbշ3C)nPWҦ̆퓇p8gԴʼnַZfO(?6x"\ XWlVjR':4"lkθuwōbqmM&%Hm^I^ꤩS FY2<֎ q{}%cZ(^[FT5-6S}? _ml7[ze֧ *;S!ݠay-؄&'`klJ-Arb(ģ;zk%D(;,L~:n"ۂHm+dȱcf#U!a5ç*~ r`a.B~c&.Ng0: zG=G԰m…Y7/*0̓JQ-F;EYFaz]6{Du&hu:2,℁Ej} $4jj USГgݮ YEғAW<?AZ9OOԿE'gy#VJ[<3FH<$#(C.61Jim'"sB脑Ax>\;)Rc^s}"Vޕek*\l`ef,ˆDˇdgUʚ$S$Zg]KF{>> VOv|1oKH-RVyPn\l*N=zeFbor7fWE uMЍ`)$wD@f8:lᘑ6 sƈԬw}]TݧEI|c9a65%-]O_ǣy1CU?:Ia;Jc*[b@MՏ$0Jazz:T٪ I( thSv?oֲ(^IIk1BO}X$"?dMrE{zQ}=Plƒ7X1 7WT+Sd?ى2򻽀JOnxl4Wls-M:Xc1"hGB'1!*:; Rј lqq{"߉:;jeSeE21[>UV[[otYqR *ع X!PLί\ (nZc' _z$J>opb C7<n";ajF'egζCq˒dܡ8 ^S۵ wáחB6f LB MUI 4XJ^CjoУp@7#\q8_k1^#2nE'dMþ5vP7'W9PNy#L9Ahu>ӏ>V"pKȓY7WɾyN:gjg|&l_Gb"N bX٣h~`^"w y&2@-?=NܑȾ˦eW(9b^r5Ӑ0aorN3.aUv0id k5WM7oOx94*\{X?_!ocdy& ZKʦTA<S Y(.vWE9d>5SRgyR4jDEҀ|4àS1Łs=,j`LMw |H̛-zJk:H7i7%V\yJ0P0:5ߪ2vxhǐ5E)B@ҊCBSn&2x~>ؤnˎyINzg}:I;u&V= !|7a>jr1ӅݿX'贃~@S̼#f79i^!ewpn|O;% l,FvJHe|#isDX$[C6'N3jFt^wF1CєyPDc"3ekʿ0 xn0c@ U =9Ƙiu!TaHI ^\HoOY̕_-)Âi., zKE耰Uz3ivn1[8|kݓk@+EI5^8D Đ72@6P,žHdVX_.?8tcc&^QyO : 24>klc+٭c\LE_JkgNj1e+HDŽ"َ~JyLi4m !]B v 6RGxD ,砞O[4 D[Hұ, sjV8EA'7ٓKϵ\a[铝1)%]ytN;yے}$O^}=תUMGCCy{҇?{A-KFz&Xr H6m}+]5B= @rd%aO pӁ3 QІCCfjW14&-fi~.*;|z+sI>`O0KXkc)f".鄐__j!9-F|WNni]͙ t&Xm:"q$)0r:F n~G>b&ZA$gvڽIHiolmv=H1uIs(1yn%?@rD0,xodRZ):o?S-qmUZ.8WG$iܖvJ*lЊ HZ] Ws(|UyAU/^/+L^&1߈ZEYIx6}ʶ{nOrg+XH5+|lCog{ĢصP"ZQ\rRC~- =pezy!&UBPé3K/&nvF iM6b6IwvшIT> Xf\Y:Vfal`s딵-]qM#NTVy|6[\J2Pޔm{}k2B䜙l}툍3a,2L ZcD7˚=ə+[J=Ahݠr_)hIAR=7LWȗ! _ Hd&>҅Be]OPK*k+om:(JGE: fCbow:˶ KV^y@3,7 `յSB*+fj">V1XٗeATv]]5u %j"A0Sy7j.v{4He`/gG#f j/Mt  )9BL6 \u=\%ۈpj5s򑧋 N u0xo%*~D91Ujq=t%("cZ$NOlBݔfr3vA2OVV9 ^R|-UdNkm! t[aL2BD˝ 6 ,cfr(YggrMsK[qDEzFmEvZ!j&!P9Vܤ_x]0#U\S}g"|7NDf55!/Cv6 . c'l?Rq[Lvm^L.mB׊-`.?R$!'fs\τº6Ac+_A Jc!'eX`xoڠ%w> ^6T,8dTn _69(09$3RJ*G:nniнKnt&0}[ g$4k;݇JhlF*vk6o.HrEj/9< ?NQ#Ĥ2Vf޺rtI`q%$Қ.ς?kY/˜#Fn鷚+!ºY24a6o((m<(R)0I=J%յ51}Pn)Ut*~jfS(V!63ƌ %y0жӶ=/t-]RD d_*CNLl^HgɂyZp)Ww_t;YX&&b23G&UbР,-C;FaYT," `|2vmoQޟ~:5{Mw.` ΐ)'d2Ғt Ĥ?OX1@Kj8SQ IR!<3Az]:}RAVŅ G9 V:v Jk YFb#ҟ#\0[Ѽ xZiN,6ٌE|]q.@BX6& v 5,*BD"@o"`P @+#/(=jOg` 1"I]|/z51b'T2qs36I!hF z"NYv`b_p<+/ťR*h70Au=8QX[n_&C=eR>#L>7% (u53#vmSC"uMߥh#A QxpM>:Nj'BOS뺲pPVr,Q뜶nN(n;'/X,)bw1՝]pOAwĒTg gp1b4/_TjտJxnvd/@0kMOCcy2ut%b}!]$yF.Zٜŵ-=-%!Zˡ[a_"fJ?H"BBAx xWzEZu*f'NPT€a1{ 5G$ ʗ}g%?Z`$l/ڌ?ޭ/ƥ`\D< 1/AܯzRUЅ|)DhKM1|a~FqcRTD*d5=%!vV2>&*E0*N ~\zCY)^F5{4 5( J(.z1m|~P;̷g*QE][rRa|yLZwCk OgKR@4I/2gu@Y(ʒa#]vhUOg)"$(Bj *Dy{H , +­}(\,hWgArĎX!Y}}xG*1d:[k"!o艁b[xezCMө!suf}@aE1r9疲-cev('pw "bǶ|~J& ё@'OO)Qnf9# ?Ҕ6F? vd\u}n6)cաli'Al‡ A7?_gZ"N0GiEq]doU 9_bفir^3ڭiK]ݾ{+ChLG[ɾYmkb61 Eo1OzҍMd)wnɬoޤ*3[*)cs1f4mVc7tfNͣW m N1.e's-:l4_uc4^n"솂 Vk&buy&,O>oMDP5j@Hz L|`zDg'w\2l.AFv1֫pⳛQ/}:NVr-a_ESM]U!쌓8<,Fe_hUy$-%q+ePCr(\ qOx\ĢM>zҬZZ4 ixܬڡg]eufRN^٢R5fzj(M˖qI|2+x-n !Ui;nVI H y)!nF8"\UZlA;O> G[!Iz ~OTL#t"g'Uqh) / ?UѨ>5_ϛAjU@߬Tr%S Kh4-y<1ϝl i銢~۫G(dx#t~q='P.R5j$oT |?se.g5~8yd\]+bղe MWR;<sZjxէ s/4C(<7ef:nv0h cPzk!Su)[=xi ?`d[ֳjW[F@3ᛛ&KO.d re,k2GJoIk6jՈV^ }cb4E DreTrj=;0lQk9,bRws4ΘW$YZ§u':WC]I,t' y|sœER6uͅҐRuꍼϽn/[ \HF* lq]ξ\ ( ye53>O eXlY9=?ܰ%;n'|=C\2+g*f D $ꂪs8zRpk{xKPD [У 37)dS֛\GĀx5[ZIܯՓ3N@;SCؚr!0l9_z'*fҊYUAlI$ }F¿zރQ+ zӎ-'&j;@o%Lt,f$$_z ژR9NY]8Džv|)u=kǸvq~`yA<Q^͸%UFI1F4k̊Ef8o4Bi};ք:%(szBt c{:,$AF*(jBĞ q4X.b2b?Ŭ P2qvE^a:9Nzb*'/ xmѳtQ!7xjryxˁ߬:H\3g㙖=ocOW^ j_W6 VD|@"#_gK!lΉ챟 #\zȳ逜HT /YPjj Gu^bWpv`x#MJ#Ή(.H7;_gӻ!_ %o"Ab{)2r11*^"߹mrd",au|Fn7Nn!FRdv@M# 7XdeJc$_W :B4*(c},d/#|gaJ~޼ҰrT~o‡= QϱRQh1OLg~ْik+"ts jԇU(w GZ%GF Vbp7J0ʚau9hҭ;1x !cۿUqPKg"AԖ|WEq?QN5P';&؝7`Fg36U1lTa9gfL/}ir'0׋ ŔI[xѺha!*G~ĝ%fyܸz ة ~ :pAXAJ!Cڱ*g-Cwi KCr2zDۼr,8KXMufiqt˪9a YƜ yM׏Jr`Ύf ?}m K'%(NrT8!!:!ۋH?K/c>JBYQ|JRvWu{|p 6@|Vhb)Q%3I- fC l@h;Ȯ+qHQoOY'<bafr8p& CL]]k/%v.8gxɰ~nCp@E9-AcGe*ƾ{l\{ew/IpdtJOɥ$ VnrR;Kغ0BȕK\2cēxhhiI'B!OH.gg#wn oB,!-|_%y!ͅ˞DjXǢ QQ>\p3/\":: BfhNj !WK* ^d݉Qbqt0?'Rظ4*Q+%3ۓH3NWJ6=F"⬧־Tk9NOcr mB.Ci̎T}O@12e)Eu=>Eη:qa&zM@V6RVtV]7F31 )[ޮ Ck RT< T U`6ـr| 5C'7”tz|`SmG3zB%[6} d&706^ |)y2õ3$Uw.QP@2LBes!{ucK¿ <[1ƥ|Q?'zcۈpSh՚ z ?| کNq<(}J`HzM7i=D!iEm̟gKm~KF9 K׳=[Hǁ520`*F0Ob-fJB_%RY. Qʤ]YlAc s%W3wS^k9lՕn:|v(ʿfYðxݣiVkB2,^p3֛| @SN_Vdwoҿ}pL(l<{3 bb,FTqYuVkVk[C@>J8LV3f NMHmv1p(9?;7N!/u Y߾b`?@KT5/6=(,_r 6x~AC֟QlMXcbsqG߹ "-f:$fS[sd% tJ5Q4z,ѩ/(fo|-E29ENG!mh%܋WJ48n߶.M֐+aه'x,KbK:ֺL_KF<^k6ϋ51y £nr|jۦs['=7GsKfP<6T ة؂>-f^;=;OOQ0kW=jV)p}S~97kݪ[.{gḡ㩽a ފ3+O;O K 3z#Xˉ~5̬E+}*9݋صHgLSG>zp=`f\A6yF[9gcLD.s^~g |ͼ $+oGZQ&X04Û/If|60W3E ?Ǩ;xHI0N LvirQ:]7}[Ɉck! 4 E=q B4cYZij:%kLJ/wgGc<<Ӛ9^aKЉNJ!/hW1o|q <-Ȱv#~ea6MKJ ]#LPs]ֱ'OFZyY\8!1nizfе"Z1 ܸoɪEZ] _=A1*"4>] fݺINrˣ'G.bp/"tO8H|ۥ;#i{dzbРX^)UTіQe,)Rn9ovo HSy"8p]XGQuBr};}ZIѵiR%J^=0\ĝtpnA_ο߉Zq 84 mP}G-h%ޠrpXIӳuƳ$SLuYp]XU Ͳ0bjaӦE#4b{eC;IUmSȭ2T JUuIMWYGe+5sk8P2pfͣxViC3OUe8'Ȟ| V:fWP_I~+Q _zymEi ,E߻AZ-KHɕu7e)jw/_K?Wr;ߢU2 u NٙXNٕڬdG=YJ(a|Re>'ITBDtH;7 N72svK/G!j/' YՐ%S7t!H+ek%hv5CM^ҙ03ì M5=%-Ymuz>Zb؇NȾhgoL LRNqfC]0z4r 09cg}>^bm=^f:']؍O觱Da~*#䦥@Wɞ]>W@L|dxJPSiثO / jVroBteG9veW`Nbm@<,Ea% e>"bےF-|I1371AH~YӸ䵫9?mq2oFM!|ګ{C {-#YhsLN&sjf}z~˛Z(W!Fs6;F+&*yb&W-;iĖwӜRjUGj9H;ovWi8CW*Yb4*޼u(W!$_Vw'O je7.Bc_ʮ F u3 i:ݐE4ƲdmoVDK"2.9Gb":ڈޚPY\al N:9qqiAjFpo>)?HI1.}HU.o/%{Z_ׄGXUӗqk\$lد-E"ㄋHF66UgHzV 4BvoԀ˿꘧uq,$Q3rR_9 æ9"/qf)C̤i{~PRsh/Y19 pA`#}F GOaτ[p𳙑Q^8rl ]2kPe .uEJ@;َ )}kPXÄ. 4iF</&PumE%jNArYç~ScN*nDpeI+zZUKݑSmez`A_N [Bs^(:d- лN"TFWe^ y%YP4OJY^vH5 HF%>^.Yn&mъv.-o?USz硥!v)ҝUM09+Rw<)Kq9#qO$aVtȺ#} Şp"c(xlR›T@ {,v7I&[i,41:%u:jIA$NG2Z\o o)*Q>Y죍I=}bkJf2='/#v.3ܽ4id8)pұ'v1-Ѿ-*6BshlteelcauIA.Xg/i6&]U]'"e4:nU鮞{H;Hq ϻQî$'RS@3K+|m<"5Dh^%K(Иðc-_^81!H5ɔV=MW,,9yMsv X2ݗU :wa)H*ˈB~k[ ߡEb:4+R8lh  Lo;D9`0L-., k$>Ђ$ `߽EG1KN<t1Ϡ ŹKDn5kE<p!\O#HZX`OC?.~f ]әB3 3txhB LpYcC8@Ч*q O%=-c:s0 \נu >증?tΦf]>u~"أ6pi+LbЫx}wSx]=9]]63%v| rl (щU F5U) FP|WNKV̵yz QOMn)/'Iřc0Z/Fed ltyP]K׮7d㓉uyYj: ^&2KףðEF^g}EwvEù?`wսkE7- :4Y(Obnq$ BfC"6 ѯsFW@\? \Ce [r3DaqS]}}Jeޠ&jlH rfDDIOcA 1M}r:QW"0KJ,x_J^}cGx2 LDcytɖ2,/&hn]XFНwCe.Jpq6/#uu9,h$uٴ%E+(<"GZk6|އ۲TSEqC{61urtT V-@z'Rۿ:_(P ŕse)$컫i2B;;CQd;Cp\d-<Ar1_IY|GU;—a(a9nyj,t0*?8k|~xft(DOśV@ö -V>0E/n咘U"4[!ULj`}u+I2тĻ蝭B!UVo%@z)#V WQdp6zY%%pI,"JͣB~Z} 'uzhe6ѥ4]/7T`7m>S ^슎|gZ @h_h\%r ۡZhH67)0$F,a^~6p~OlA͏?!gA6C\î5#P54D U]K7~!FƇa `[.Ȅ]!\ON,Y1#+UVNn>4mHEr~ր]J{;3cgjFrrz o.HzVmf[H;wt߉8BCRiaƵޘVMjsK @25t|`1 L_bZfHpaJ{O9bvƝY|)X4LAS^&@# * =ud2T$x^pkp]g9Z|2:Gt!ϏA܈(Z]qZB+U?8%9+f!DR|-HEE E؃ɻucS",9pi"}Ꜥı)l0*Iɞ$a͇8;-m`X_rQ=9y;#|Gd^dЀ]`/gBzzb]Ŀj1vb6 'b+Tiٛ1ү= daIRIz^8N}Q0]IM{,Vt&5~vtOW/\F7@Y=ӑfCѴ!sGjEK3(vim2bT*ׂY/Y0]3xUR o솭{QU55DdZ0溈I6Cǹ&V+8mq_Q][BS;T|?akDGYomAqTr&̕BYTaw 'O(2"N *[A+{fH@xb!2}dyTEwί?Wj0@{tkHϞ(YY~X{Ni̳];("R^4+űDA7j@RR;'$vKZa{"DVodQ|meֺs> ?!Kna.ȓyP1sv#0#ڇX  =:u}iWd c$V 2Kh鿶Gekx同6FF$Kbz"ߍ͋^G7]ВwEIX_ TEB%Qw::}Iy峦V^7;H)O΄/2/C b?£gj =,@ |kQKiD{8JJZ"CS8]ŽG<cRIh klNTfSBljQV . =%}n>ɊX⊣.AwLlEf*ļ3z5cKu4åM(Xi6:e(4>h 9KtEŭf1vcά..i6%U6ȡv)D0)Щ`~#..7GoɣC(SJo=#,V/zFΣZ6f;$DK-%Q?g, =#Osi+wAUpl [в>v!zQ$_yiFh56o(8[ lWۀݏ#eW~= WUɊ']㏽שNm/Ew4*C+ՍADI^`Yz1L~1;cv}#5傴(۞L~Ov*_:`}$:c 1h1|bU<+Q?˸TB#'q9CQ+sv:4"A>#ۙ +_y+k̆L5 V1 "b$*lS2WWJ +q.$jI9( {L ~n D{vkY. ;KqcSys/Yj)lSݶF|~F̮hVT`#%ڊw(o[)͆'G9Nf買jiq<]:p8PظIkafz0MOJ4!ʶ[zN}H85CE8wK7tͮGaϜ_nUkES hgK)I{gypD9l^2KY.ƹ^}Fd|E>r3G738=s鼾xhR&\䋾Xr~I &@$_ǡN^WbzVCLچ=)< ښgSHL!REs4{JŨ˽Gq3+=/YOYq%'HZZpj[!li7.9Ju)P 0"MJ}JH;CpeO# Z G mN:!]S$$zd쀵 Axӿ@1)C73P< =̅ nw32GPx~$X9%!>M*Ωa;~Y_:fw& 7XVcR,'QF 4-۬Z6< ;ACNw;ĒgsG8N߰vHXx2Q}Z 'Iq,f6!S2:? 0 gu!Q2UKFS9D]%a>tdw B&L:c[&UP15?R Į )^WqN5)Xfy ^{d`غ9%|u{W`ةv,#I\XFD8Pr@.X^+Eh`1}x(TnZGt銕(?' kêb0'}a4I϶c|zX˺W"NWtA /;U>Gw|^zNp@ 85?wyKFXqק{Mx32So]͊u\OMe~n_3aM5.Fϔ/'d5JpKw<2zY ^'y\Ԃ[wY ݊ c؀[V@y9T~U|\rh8;A}NQ=82tWpOX:1n/dM}Mk+${SGo 2 8&߿œC21IȵlJ(2B1ʭs'Q)Ưj]~?hY,nh׭D}I?NS)]WD!dqUZOv(o=Aw+ĩn #a{Fr'#222kuOc -aCϤeOq>3n>9[l=^me%&]C$Tظ dMS4[)Q;˳Qɲ]К 60sk5"d!15 ` Ն~٧]y?j =*S/|p̖Q=hdh fWxX|6Ob¼QNNFkjzH:g8zҘ_MCdfEIwO4Rk `b\8"6]ɂ#qc[5ŜcĊXy~vLB+ẌzPibO~VWvA>ۚ}ySb[tk#8XY;zl b=H<4|tO!Ӓ2!\ߺzG4g}ΟB٥HFSUSTYiCO; !%^=>>XJewV.ocU#wZb<<4 a({S?ݠg?v7oWd$—[s6m?9+EBr= o+=]'SaQS#134SJ|qK=O1y$N?r/umnM(.Puf+eXH ؙi?C ,Oٶ3%ˡ(wo@Ty6 ^F\RklՊ* *[FmrkPG(9@в,ߖg 2ȹqtZb:0V ܁Sp~\c(OsWUx/H2i"z"LLF~8z++ns슛)lp/ J1\4Pt\FG.`̒au sc]A=fW>(vתU=+|PS⚕Ly랍ڃ`DEݻи]GUډ`ރEc6ΠqSaV&'F-RbImSQwlرcw#$9îvuu̠k=\=@+&,3l0)g~~HuBp7K\O .&ƻ/O0pfyeR#?H-=ި Bzdᮢ7q{-Ղ91ern">G?O0@!nFB] BƴQ D^ϣ$eh@ *P4 +,;lẼDhP/D$M?psz6Ln`$ ݔgpo~xc !oS5ߚ}I  ?c#L>XA)CrONVxk"=KW[i \@3QHi,y1Z"뚼EL~+W9, cp!.esՆA]{2w~YႯ8'8݊e.C8^M d6A618ďXZĔR߼B&razŅP2޵L ˦VI}U_-fb!*›u]&:lz•:|9YAv#حQv5] jݺTJb̮w?ڦq[NHkLmV)TJ [<'j^}kdcO5ڳO&ېn,G]`h.T7+URZe 5W~<[XuS'}ٯYl5F+ 2 A>u.nH;2mk V'쪃oq:{}Kd:miܘ`ΜKH1\{!ym"2Ri?T!xy/5ZuJ#snHb&4߯[.\bh\d$0WH5,b #.DܯuRK|J}[-̦!ÏuE2cg4p{Gjj]<\=W:}ªu H6Ww#F{4۶ⴷ`'Sݥ,"#<2jd8 :Nx#ė #jvU8R)_nbY%@+ xO==" A zNQr\u`(ı X ru1kT*Z/v~ l>~{ck N0჊s ý?SiʪP"נF|D n\4s=Ú#x#@cqjH8+pxYV hP͈0ylv,|j ?T$rH.!BRi Ӡi9״y2h)iBL>sjG[|DkXyhC6ZS޶~ho 聝+P!3%/,#H (=iD#MZ{DSﱇZA({1bVf2Q_kUVN{F7ArIq8}B0,sySSQkב^|ܧD2Y鿭HI_R tf6򗖘O9T1hu cff-n>Bm78q ǒ[Me h6VEɸ'&X~{Z0ahvdVƙtbȁj0+.Ck=O\E'߽/GĻPaJT /se'z&W2%uf^ @fYE T-t壳1/8lVb+SI@Tp`-5U7YNMG Q|=WX|{?d'4*WW +CZ|\|+)/& xRTwE)QbgwR8`Thf ͼz9ܫJ GZz̜4}<\{=;ɴ0[SvĽ5`nѧRs}FPL2( P5 zx lHw{Ą9fryK*"cyT Ѥ!;qX_>^Ө%gbPmrp}2TsG~8p/\eb8Q Ƥ먟 [C^| Pƛ\+20֍֟k`6iڀ# 0uؖJ 1)YD]袆P9c )bݏ^l^zU# ߎÔ<*{b|DhCak)pTN6*~H &CLQ&%me <+;VMwU:X(zNd&j ceaI/T8TW86T:U+P j}.mlXn7o0g٥"*ε'6;{Oo(HQ&aC"]m8>k`Kox\pT{do0W-R:;KD&lQDYMAMR_/g,[PIꊚ%C'AK-fa#,Who+[sۭO-Y.J1@-! A -'4%mV373ĭHph3.J96@b(֥\!ڎ: (ςZwgp T4F7=;MG虥LZԳ^p/b{e4op')Yl۟4.lCCmH,`#û~m 4qU>*sb/DM;a62UG#fiz+ @ t]BA ҂2Ͻ*E)Qp}a}Hg8\7$G}Qd5I-@HR_ҝϵê*}faǯE\ADY}/nQX [^߄rExu':H8ԯh!Uܹ@ Z -" 4E/^}{Gg&{v\ʋ)iMT2|ƎErlJy4^c {>V/qP!ވUER[*\1Pq`MpƇ8kB#$c{\|P11s>] 5lL9>"Mro^(#|k}'H;_z2Y › p;YQ ]ó$ 0OtwO"j4HġXkvi-:\D6k 9iw!19ncZ8ޒ: +<źph="x\ .sr(@٤ Fxgf 1%S0IpڇX#(ؽ{,%9m_ wk(,%V=& 6|72UOOȈm1 @f7aѴCb}09<)oZsT >Nv_\2􇸻 qjo6|:cs}/h=i @nT\K&ĵH1J(GIv4|!W; NYW kjT [iJZC6ed}Ã#C~9BޜvI8nNwFY h0n4 .bSXXs"$;rpNYˬߐj}Rw5sUECX" T4XcC\YJ csp4;{'Ʈ"wbxrokA ~RZ,?OnpU1i/*tw=`#+UU6='F4c.ʛ]{L6ZV?!mCYCzl0t.ȷeT=dL}fti VjH5@ G6ՊG'}0~evq[{3kT4魱#Uд&;̂ jsF?vމ.e/wA ڻvoSe5jqU gHp䮬jpR?P4JLDƻO#T&ZP^UhIZ@5B48P~3E>`NT$Dy v& d銱HFI,1.*EMga@ 5+aOQ_z1ĸqW$aigT @w*A)^7 W7ܾ?(ikմO04BA$]o62$$͠uG7n+ўLl̳LOjGA|vSO Tp >[m6e(t/){)Ъ-&! NA7+ N s a ȋSC5U=*8QJeGhQ2ɩh3  sAuXh#*2 < vF{ -?t>TVN'󝭫<x Z[4{&yE؂{y%-m[S\ft8qL^z6Į 6?J Z_$@k$ֆFa I󁽣`U>f?C0-be"x.-"j"N6_E&Ns}4 ?e{Xs@pyV](18] Z]ISGcY3)*=1 pUU.1G̃4t&T8uuZ<uiTGcwIMH/E DUXsʿ庍•AsgHi{=nc'[.6ô(7 | zLxe(  B˫X+YJуeͱvsT/?ſÙh=z:{Sc(Ɂč20:#/SQk7 u$)將 B ހ s!NM3 H.$kiH2t֏sqwߩ7> Q0u!!sa(qݜz-' C vu\s7: |IJ7zl3{/oI8+Sz6ZBa9rw;:8XB`)w ~o[?]^//i{*/aZm8(|엚P&1n\-=0Ȭ\7S{MBp0<uu.iq(͍,!7b9j1$ָR/^1$-J)Y#$$ _Q`bj1 F=*Csy0lemuhDC7JWV8[[H>53=m4ȿH-~8SL\sB̲惷U#fgV`d˼K'bZ.J:('6q͗x̓T#*1z6JAǭK5ʘyIT+^ɎfgEqO"QlG@_ҿSx2Ȁo-5651/5JAUĬK>871lb:0z=u(p-?ob /f |4!=DLKc%wC,]z+vr] B\A|~JfR8Q5gAS"j˩k ޭycZj@N!caa#\ 9E]nçS8IoS*J_ 68c{{a , 6V%x~ud"Ա!0h>Q$7>-桄@b%q4u+aL2k6[zcϿ{xu8(D aWۜ\Q$|$`Xw r@yqY]G5o\Kr1&)dN+RРHB!Za筰IttMԹрhBwo\p\f|Xo7{!ӭj? J82@RNb> ٰmՌ鹛<\SϘ,ЩhI\]927?"U[.ȋ1s)۫6L]{ -ڤ6m΃# 2?EWLXm8.bB䡲?P@ǁ'# ܰ>H^IeTű-yOxyyƴm."릨?Y}J.pU4<+p VJ 뱫hxMw8~)3E3!. E]+Ԡ-ft_4GŮLTYuq΍5Ρ \+ei}sJSbtۊJwG# I ʨؔa@b#q*jc]jsӯve!TSNq)h9n13Xllgkb7'S)F\sG`ufS-µ76@L.ۧ3 ݦ[N3%]P#p)SU/ ITI ]k;LT?:-9 cM͖ ^̄XluâC(}¿ZݺD7<&;&HON |ܛ4Eyݣ1n=}.B<=hiǂ'_7,_:bKv@fmPcȧkOUW}Qc1@7ST'p^> N! ܄!k*Wk{.b5?@C 9N]7PS*2 7D&"℔%orIW@?n wf]O +ݗ,E |;znʭˆ9hQeQ-kPjTj &f.a$ch%E0 Xܹn"JǠ^ %o)Ьtaydx4Vb}23ZepҡFkVP1HKG1%/x0bEpwIr0-z'֗ &hl)(͝QNf^ZROG\)z9A 4%Џ3[ fho\? iI/)Њ4Ljam ܾ9П:)5Az |,ro-Q34@2o 2["@a_#R RXu`V*GM/wBa&a%XeaaL/5|C<o{bd֟Ic"ܹnuj ٴ5\1SB's :&?; l~amӪ%1xaS23[Pډ/>Ea@;$DV(6$.|Mb8EB5pUvX?18bupA~7^29Z[P4A81fXlvWVyL #yC6ƺ$e(Jч56g*y["Jpks1@-^;ywT>V#S7@3n_HÈ.[d:6AjꉉӒC,_@G& vBOfu\qA&1 OIevK:[1լVz~\[C K|pƙ4_(Z]6{<`7c/\tŠE݀ÖކX"ET2R8\Z>B .ە3<ɶK~Lx7iٱr |#[Tq+[ظs侤b;vݭ).6eptMSe˜H>U64Y"}@I2_I1WBӕzD"3++JH N=6}LD $p%*Q'tqL,NƂν{cmB;֙\LY1=U=Ғl1`X*V$_!w9J/Sv J('E50 ^ [⚝^úZAOm@RY?ھڡ8tY1Tk'\T[Lh$E!u_sy|{>w"#Ib g%Ox1 HaݙJˡMm>wK{_HxHW0<R0` [;c$LUJ |$Q1'z<;ܥ&@sFR$Mc1'RrY\G ^yRBx*u'"EA}m Ѯ-@YǨot5CrqJٻ_͆ 71ӳ:P*9U(EÒBrjph@|tO8DmyD,Io$wAZߍķ޳]9l[p=_7TAn+ꈣl/دAfX.bt)#?ca| c%ľNsføyXr2  sǁ/&/XV:yfa'NR"/f˨][{#kQɼt4\rϤw[ajVWVuT^@D3؈- >x++L+V,b4 {C]=&ըs>PP|[ҙ|ɫ^? b=$ qRd h^f)VA@6LTfXuHVsq*2t}2k=o:4ܩ(ml(LᑖdI71hZ7.PPjQ>s30nů.l&.\f9& A٘џͲIe&3/0rFQ񸮀 9c`1 Dkx1Kidy v.ߚ")}#eM^G[R0_璧Pݼ?@? ǩ)ّz%<7uqH$۸ReL5 5(31bXYķ5E6WB~yrv7b cuaS⹈`{[UnԃE^ :˷AdzY2$AMJ3 w"XNIZSoBP}a!^#K8+}}] (:I#mCWULVϷuFgņNkeb⯗d=P2A1B~ r$`9v Z㖸,Oۖ/҄TY趥!IPnO~%HdmrkREO{?FߣUr*PRɅ*G:X&&ٕKeoXvadx2&+9q|2ǖu7YÈ) _SWM朥Ѧ%};JO7Tt% !gJ Q ^l2И;D]o\4OU(\ 7 egXBU5(f RwBpv*sbs ʷФ }wƱ&-9u1<DXAkp80,vM>v2{kuEi5[QwW /&k]z%6~Q%br6E;tUn  sǒCtM+p~!nYRvzTv2I'km qU ޶DhVcU P 5 tmЦjMz j|ͬv羚n316xB6u"ѐ@4&>h*BwrϴmGZSfKh'q2S jJRBU[)X%RHj~u۾'eQD](ވ6dLQ9!TiVKM]$.8Y+g@`MӚ^_[ץ|gB0}~}SbL-(Svq게or|uq0ߐkB+hλ mNn;Pb`> ~79K-lBlL/Th@Xich=邸e&7J^hH@0MRQ仙 FAM|<'u3fwDp)c&jJR; 6>>DTz&RŰ% n~ݥ9EQVvv7)&"߳2Wɖe`۽.,@ {On1NH5Ȍ@L] ̻׋ (UDk߫m=!-7|,qXh4b@9YI"ufjVL#55<~4c9jPZA5熁A# )gO~oT}L{/P]HݎN n.k3ٗ1p<2:C `"F¥(hKD |OnIYc0X_P~ q7/1ж*etr y7|u08mԾh; S Wt^DWE}i&GL"&tg1!iԦzcJ}ǃOQ; n=z=vfn }Jtl+$#q4^Dʩlz-Src>a#%u@+kVN8CƋl)\|VJo>MPM_bZ_L7[g[Z':nfZs(*Q`My"mEF^Pmizd=*{׏=d 4lE@KEO 5wYJ^,6 4!4!M \$Pzdj4ҕݥHe`ziܹnGք{_Qdp}ujzK2y7 SjuZλ'Tj{E*wj˫9 /n,|a>?k vjҐ) &CN^$}2x2LS@eL>`pGmB$RsyM+',̜KEaVr04\((nZLB|Q@ۓcrwNx)wЪ,WsQXM$!v<+hU oM3$@ÿ'zFYUXb_臏]*fd@HC# ֎KT&gBuv() uqb?!bEP/g^Q&/2kHfv&[F7%IjkFAZ_SN01%\2Wk`u\s,(5vV;[(a=27BUaUUCxY1-_Rkò3#|MI@}.RX 8~L#Eg0T:s )]jIk6S]'oڜGD!RюpH@n*|AGOg/Y;{+eẓ0,UÉ12 rqy8ݎ D%~fru*%3W4lIudi XV>kp_)f5rw5e>9\7_2m U Jxtw @$$ӧ#-`kq'}VfX$}[+A?&ʅ`K;DFVIP3w&ţ{m[]`'l'ZYz&*(`iUtH-m>ROZI/hx&Yiht{K Qsx !e.w]< OPJ03Rd^R-&\S mz{u9ݧ"KnB qy`o!lҐe4Y8"Z*A❓Dhxٌ7[* 㠺BrVQЇͤ`7 ZIN~/h0'U(k?/[sKmݣk.˨,! S  R9e5 J==- AlaFlr,/ {\IPlk!;.-̑ ĜNZ+onQKF5GOM M֨uZE'-S&3ܭije8o{a1I$[ؼs[J?6v|M,@q9,S=xR\p%?8(߂,ljUق2;eJBÉ6`̒ pA{au!?0)M@IVvï|s{No!5jpjǐnd8/~?5 E`eFmk`Fxz%xlOyьOL?E؛/ڣ`HF~ۼvsnPT"_EDҼ5=HVvX"0S+>A`IRT#wCf8ó8WEYmp Uk=bXmEUBOc^{JHV`>p۪7n3l0-e\7(iyqVqvz5I_Ci%S̛s.H) ezk__/=%J84j3*תT~Q fPLfB[nqw 9o\}pT*T~_YOs4K7*Sp s4$詷]b m}psxnڎ9dI]sY.E ]$Ґ]3? A' DyMk.عٽS1OLb1yø@ِҞZ—o݄뗹6b 0$+Cm,'¹/>e;G6WXEEʽ_֟tKB%vwSUD\ts5Lٯ"ASN*cONI|,X_X91p6Cj_r%ڧ\>$POtu|7 M_h|%`_PMUW㿂/(KWޡN\vہ5T9{|LœAQB(ܺDP)UnKpXKKBo(&"Tlp-RSk֋eմb1txAcgG\JOï&wv͚~Hst|S[t-ZcƋШY:a$O>n7ijB=6y{g,O< 37RT +u=}r?n4E?RW6f~'9v"ྷ l_(kON3~.4](&vfXCiTϚx,T6Tl1M`OvEZ=+uf@>cW }ŜD4 Xbi g(XR2q'E > ƒ*`Em@\l_jPl{C]cȧwW8"cN WXfK JN߉-~/h)cqӦxQ29.%C*w/ LjB-Iޥ _v"^+"̉"}_{ksV(V%<^#LcDHʹH~יnڼaU=j/j8R4Tɴ瓽|@ؠ2lى<0H }uCWvՇ8\H˚͗\rg!`\|F0ڬmFNoq:X^ y{SP60g&6w6M$h)JAPT?ìL$N$c"[JA-cVQB72Z\go `]h9d6AҘ֗k-+Л˳M:HG65V9aMQOCgy]E1-8uvqPU"K"S<~r_R6 ?esTD |Z^Tȴl՜3 ~R}W*VX~"P6ޗYEsQdo=}!p?`tvhjEN`ad`һ?ILS]Ԗݗ>5`>h"FԣU)6nNݾ8W"yGNTĆ7b*XHD =A' sO8nםšFXV XzvlWm)*Ek~(wk]oӫltgyܙ bx@ jʞТ5@e2*v{P,^#p[_iRV9ZKK/*HgzO+V4vy2d0:~>d~%c[`HpL*WZGwB' *4 /XrU[XΥQTYvUȉ%;98psL(6zΩ&c:ma0 joWͯ2fyU݅dx/* ҙ]/s0]ybT^ݱ _[.= <>k\)3Iqˑb1NsHЏzg[Ԋ(݊=źA{ YH(z0g^b -" [F6iu7jLOw& %ﯘ_sA_{/E%)-;gtTגvbǐWJH˪Mjե+#\ ߮%daq.8 O:}9AY3숳ºp3fi_7 c5 Ȣw,-3 2ԵU.Tlk;ԛ޺Z^a {ttkYɦMN-tCC_[ 4kԟ(Wvidtn c> ~7[|n>K)- D}煇L6d0E8}c}C8R$+J]Wn՘rf=}Hs1AwBT3@X^~u{ZSه̢:QCX)ئ"{έ63/#DZ$,}{oǃ.V3O{Romd9"*ٻJSyd2ŖU\ 𳶀CK,n]eoVy`,eu/?n).WߪOAvXR]gN5xKC:TbrhK! Х'y)*`]!%m}; ]nulLCHr-ts}$!CK.(c9t{F?TJ7 2(:Xv <p7zҁ  OW AqLs &܅SSՐoCؗ^L>YyoO*dC0da[1àDv6@j4N'pdk^o8w_|-~Tp6-tR27mo5J>,HO5GՁN),U5- H*76WJj/Āֲx~뛉쵲=0-lBDDXԇ1)LhߓӮ\P|4ׁҮlB Zd /" ;pDI['Fg\px3i .ģ*tUؼEsߕc7$d._~왊ƦOE}YSαemi|'-=wmg⎙% .GZ"NF!΀CE D%IݨsS&wͽUDepC h*q mo_ət,mCO5[ %a'wA%6_2mvCbr-fO<,b}a,7Bm+8!*0%;8G&x ؿO Q_evS R p[~_, |Ƹ&^l/5&,}np!A!]-5ݺL-~ \f%i{sPV"F%dĽofSaW뢨fŕXDBlijh"~6i ( nدYh;k YT2.h~ROB&Kb2CO팄hz´4@t8ᗘ_C7ta(ԘpԞ+? 6T 0(@sޯa%0nUOGmC=lt^/kwS0p/ܒc(f<ȕzEi]<{( npxgXiw=G,܍,U l]/ʜ;|5#4S{Z@l(ӇѺeka㈹$R>txny7XpBi"A(ǠԽ}JJj.Z /r-[SU2p#;@_ N5\MOƚ~{]Y7E 3۴4 <$KTP 7 JKsDYbf ? Ĕ;yVBzS? &Xz\Y^#8w92`]9|`{gL!3Mƒ2n\EBPMArO b ^Ucy*\۱Mq+btg}{ֽF$2wQ,̾ 5K̢SZ3D E-Yz:Wg(=)&vLGF7H}m&{ }G(iSut7,D;侊ƪԺd\綻l3PH`ɳ)i؇^$*z*@ %#,dnl% e:E'1M%{z G7"M-z8(Y)Rbp)8$=œ *L 6$q空$.С4ǜjWnV LCi=kg]% \%^ n^}&#p^Fq˨.?~,v{l5)maO&+"K Ո@PS;ce@z|.҅ P75'VT WO[fT2>9<] _/-?{&!j>0fN 4ۆ˭[5B]88X%3(i( 5K'U?@PqpF:^G.87y ~P:A㑹p:0ԡ~-Ce3r"z@œ|LI:{a~B[a UKPsloBWrj_:zKG!}l6lkO~/S&M\7@|e9@f޹ųGV y=OVի ,,?øD 7͖McWNg [PbXIjvƒXkWD ~&-{xޡ jkT -h۰D+@҇M-o$+*&)}lcmvfy=޵Ap$VQ{3,G}S-Zn⇵*F'A$rFhq~yzL%qsƖrPwn~1B1j5O:1{Myiډ69y^R.Ğ%jׁk>өXIWL¤Vrlq'NJmKQaf2YZJ+Evyي_HC[zi0Zvۥk"wUR,kR+FŒc afw=t-?3c* ΌA=OD[8Vs?jt[Q4q咈.=HQq08h`c +=qG(̣lli2#Dc.ôhSЪ}ףV$>dөr;Ze$ㅙo׶?t-7r~r7 fK֮uFapk%~>~&~nע+r#+z,/S GŞƭNAPИYitH z$l\`y6d8McӣҰrͣy$N9ɲnQk#6ofL]Æ(gUtEPGC}3suV]j祮 `ApNIw¯9-pyun䔁A/;n;]̳v9B#c 7*JƤ תw1rm)bmZQ|+alu`In-3sQvv13 cu!wg/DLgoɀM,Ϣ\0ZnD|aa+]&N˦b(M"Yիr(i= X$8i`rܜZqn Bmu/֓òZ:xgo(}=JR;1n czT; MvW.3v'O6qiկkkˣytHT.Bw̡iӴ_!ʖēOPlFӯ1)FD4g˹;FsBeC˱.[T/U33N -\C ɲip9[4 A_~^w+?]-nw/iDƅҐ ;{);[ y;`jS\5PvWVペC֙TJqUOnb~n"ba{%xYsa 21"W@+c("MzC3 6dj] 0]֡rz8>iJXu=j/;$uB}ѕO ΀#^Y%Nb|0<յ%lY=Z27c` ^'|Ը 4FoP%aM5Luß&}>'˱"/lqzv*ێft+[qڈЉ6s-1|4BqႦ~vNDkda珙zyF&`7=9ّtړ)ڨ`B5->qK!ZI/|:>V,SC+nQi [72 }pJ!T2z[5, 4&":+wq?%<].L<˳|zA @lg6`Q`N#rPw2-6B0T[0=# {ȓ)56hC)cЎ5騶V84 !9>q:pfU lPtQz9qȹ$CY>n?` wsZ=yͱJFy G8M{XB5Y{jWUN6?qݿDY}0fYCd@esyG9IVi:Be#ckZdr\vDPؐ -,mh+՘=jztĪ*&-d:*>gݡPKAEz9}`ʅ3DJ'ӵBsW v1]3cduΗ[q.ld+u(h |\r*dwȶ7NW"路 \/lwI?{}#=R`S[ kMnб°,@H\üE8s^QݙVOz 'w+rzAgΐo~%P~@'#onp@XEqiO+ވkڡHdSSgAEUG R/0V"zo_:? a:OiQ.1K&$P_xp(1,m0oyp(B6+!ͽ) ~dh[% =ា1 '9r/u" c,~YkFj_`O?*y9O޿N%r2Pp N2U۟g~]!@FV3jC*͆D?ˢ[qAveFtŅjw3~.rkzYpD4b(ɺ_,2AEqi]'ZA KU8RxF>+U>!){ZRxOMl|aRӑJtQN&KX5Dn"Y9O~bJz<aZ h;㐕Ja>8M62|TArexVIx,ﻗD ADvXv\#jobN, gF0ԜVKj)e!w6+`QR8Y$ ٯ2"^ꗗ|+<I(4;ڭwmyK\#ٖ.7x:|uK$Iѣ?}~/ˉ!%AIn/ىdn "Gu^7]7.:r@ig5B5?z8ԮLndr.SDQHemUr+D52:T{gGm=[J) _T^i#mq:yv1!;}5 o ͅ<9pՀ$~cь+-EPL99&8ݠf_(:M j}fRV o5(MW4efn#xW\x'iK`fլ]z:JuVg:}`my\XzgYUf!1#n4v0* 'xݵ%뙶m?SAW`GMxhG(\a?l?pTc[z  =BYXom %'Z֓xM~sTc~GkTnM&}y-JQ0hh>%t$~YpC8Ƚb닰(魽yzrjDǹCհ* a+b׀x88']ATA)[ :}‹컏e7S9PWni- Jej 5Rl5IyDOrx?hǗh4¾hgͽiqͩFB"Vd+ș0UhdKH)>!ml,B;s%wU֪OzV7Ռ j, IVPU|ӿ@_loO?3>f:t)8""kN]-+v-ej@J܄L2g '3wzu ez˲vdPTI@7G,.̮ Du%x ^rBW8M HA|P܈Cvov]˴ds/7yo4>~*Es *0G0n&2]Ql>9::0vPtW|Z鄌q,Ly#H26햃bJܰ\rn=QJ6E5jܸ5?(FѪxQhr|4Ev2 xR֍]Ha@4=Iюס}v-^51dMǸ"!\ F订 d'OK?eLehRV{ϽfNSVpsXIKqAk|Iw%_"x.UZ( %8y' 'f )PcN{.d$ʃ34;{%׆4; F1@g6t^͸*3{ ^X4Lvvh.gR/3teCm$j) KzA% j^.fXŌ(6JcؽFVW:7LbCW )CO_KGt[sʹi6޸ï]-<fR8RwI[: JwdlmYgx}x챯e}`aj6[[kU#~VͭpQey"61&orh5#p:|nH:g'fH׎Jpn]TT>r;t >ǒ9#}`ɔ/4r,Ftr{W0ނ,HA p.F>OXDE0휉RRѺ{}Tiʛ~;jw!*އRDe-}$޳lW9!u2OkWŏZ~pgTmo[ ~ 'j}YcL,Xf"&>kfuNj8gۓtm:5*#-I.:Ȭ,hn3Bm48s:T}MBv\~"˩TQSHmn4YyW"k딓2<";RXYk|614im"K:Wi9V>d)h܎>QޒxLC9Ӻ} 6%ȊG[mFH~/j+4ƌd(e-M.E˛ycY04lϤLbݣ4ףn:?Kߵ,,u3VwPA" <zSNk6svI(i9G"ym^ì|4wU8Gn0Qπ^YY|We"д.;mQj-:P|C%CBaqŀX¦yjv" M<ͫyf2T`?`4YTj>!8OR2)(>hpu޾x\>8u`R4| F$Ã{1y~$P^HYĜ2 Dݎ"D2{:䡁8vm"@py܆}/Z4ʸ|>[aM'˝c?yOCuWa۸-Kp{Z[sƫ߄GA2V߯/f|?kQ#F{(yE)tkbI5a[.(`˙#(Pf^M̧{ҷO"d ~hn*o]gN;X$s7%b>լ]\e YTAdEmЄ'#椢r g9IjIoeY:h8+ݤE# Q﹯q(Qv N [O7.D^9cļj eFGsBYo|bol} tCWK M1JWdc,[I&䥃7|0nǿ 8RMER6o? 8_#w)EuAS;ʭ́С͈=( 5ZبۤU\L5rvتc,j΄;ޱvZ0&-Lax fb>Z' }|C4QL ηĻ.d YOXrFg3Tܔ3^4-ml1iGz&*BJ(.${ YyuڪPmO#Day 1)X 3utPDȲ]!xnX^c&VH`WHOՅE T\bɅd&SXUD5`MKwΩhDjJ Zzo vVƺ"ztvT hO^ʐ@yk;^blwxp2%";)0k#^Nhs @^@ ?z#}_HHv9mQyE^oKM`_q0eB"qeػ -|]*HWoR#_[(jɩ^,zT:,4h s`3t.YJpA4vA}'!j "jZ"Ni?3SWtFV/DDVsic3\|5l4~+2kfA~< 1Ibev+Z'K,[;̀gifa4'ԫ:w ,%RÜA+E4#eIQ77$U f֦{_F8hY+{˞ (qzZ !H{B?&"΂(A.׶ bkj{q nFJI2.Te"sbjq+2( _nr8z0vJd'c1~1ss:Sx:i`s?D FMOn>P(}~X% Z7N߯?9.S%ʍ,N87%է/w>뀥o~gwE4I 8 o]Qj캴JeN JEӳ/=LbvXq^PޭpTxdnjQL1b%WF>*/D:;W'R$1>o>ہ~dp8v-bHsj6f-qSn@d*d򖙞r5<^PJD7hjSj O.ȔtI-vRs }ˠ -$ig ˢNiULMOAv<&&r'8p)0b*怊-^=?bÔIȝ;t/ycPV7O|4N&h og3K4nAyqYIPQGW/Uv$JPpw.>~-F^\:x vKXGMMh۷6\r)-*p7d_Gji;am7][actVi}L{,g|Ks|ˣwPlSwtu0=ۻ8mdĪp.0e-P]eI~عQ-m/na?Em)m ݰIl,bN^aV| 9d({-PXM7j^T[$KL'f,$ $G %;vzo_Vthe% :h{_:VVȵ Ìloh2ݜQ_R^gDDY_8$i]cxS'&E%~,6}VI^ -t1M)UW֑w~IN[?M^5^F7ibfVZ!/w#_2[-NOG\`ivG#"=@~A 4c\~\xxeaeİpJ36So4|*P\kg{t@!Z<ձtKwO"8<œ'2gbGec./W7DsZMvid<ނ@ZAÀZ >G3;aT{o0.&JduڇJ_&CO[MÙTrs&$bn yQUmݣo}_V,\7Z߾4=RyKSQ3kbhrl;ájK3Τچz-r:vL'_F/P1K|Е,O|JoW&E57^m;5CvuEybAAh=}oV8wPF5R/sG {g6ZR-v-N 39nrͻjU6keTt-[2LO oL-&(ew{noYXYcG;xׂ,k")TC% \FՓ=,1#QA,vYY{Y̰ _ר(5?ڙ` 㐵)sԲ۰-"2 ]g)-́d 5."1Y|.L4pF$ 'SLԢku$+k7 [DPUnDZx |S6Vv`%ɔTRyLyF<'w8_kڬYsC5QWH04O6ܓu..hYOQҡ/#H^ZV8}ee(2Mq5:9+dQ2}&(0q@kUt% <8\w +j^7V:?T^UaF&rݸzu.z2$`qsrBu`ţyfK50|3+cE)ZZa470bCGmGʖT^r@A("`eܫ/#MN[x?:DAĔD;9鶸b(3VHT\ F Д?#_*OeD~߻J TV[Qڪ~Gq9*Z17  kC |Pj'ҨR't< Pm\aǹ}a"aԧ)A)/PJdN)=h@+}P7^窲 R&/MyhkJcRƖ@Yv',LDu'e̫! Gb6H3=>arQx?jgl0ZQpA-R.:#ԧ`A\ucsK)RfX|Q{ٞD~&OHq\A\ g:f`5_2G[tf#;p`N4X)%e*:Y}u8܅G1|M:rwzЅhXpN.6GŒWWOJc@D0*CJb%|pr,,( (e qM<_Ř\gd v+̔mfa#R˒~q0WʫI#EO;kr4b*;beᝁdӋ'0{~m:J{'(UgmhT*qnoYɌGلsd.hǮȣHlD5iG?wR92H{ 'o2q(pD*|.wEG~s,WAfRafJ^~wɉ1'Z>S ?pq]߀ VKU0bu5W4׸ xXe K#tT>$_!M"M aBl=ۃ;߆^,<Rθ[ m&TpP ,jtҘs,?5_ %=sB^csciΙ=CJI4r2U,,p_Y8bKACD TefoeM.zLbGr8n DH໵L/pJؒzZWЬ34}3N>ǚc`5{K~I,P%''1@Z4b '+GQ3w/QK &m UyYhP'5_U弾$|j0 *(NW(%Nˋ(OR30?{5L0N;V3,%.E2E%=0.MAHEm :׬ $Ss;?%tߓ\R;LF)/xn{B׽XU" X^9d>@hNIJj5Pq9KZDAp$i:Xyy.}Y6"lb3) Ϭ*PJeˠJ1[lC +۾**٠O2>SMMcw7PQ Cv[ 6BplļAbc8K23D^_Tkd+>W{G ߐ"c9S[ Fy#R;\@sۺoq_4퉮{u;.|ܝZ4\Kl>QtmAbp9=9[QNR"IUKZrJ8Kx?YE9ԣDzPUDXg*mCݎ*d@<"TKR/s/ 9ĜE% vѡEqrj!Qv?KsxC B,d"HPk$7KM3&| 1p-l%~%]QOSHْž0DqF.XGzMlA AIt4Mۄ"uL/SJ/t+?DCwj̑Ԓ˯'3m:A=lh鞰 KMW`Xke ܂*kO }e(r{kMFMq_#gjgH&ww0-8e=ޕo]zw-\+!Zc*NK*kdM߁d rtZF+ w-P\7{ l'Z =49-67[~)ۚxYC5BVK WVcm%̓e5ʣt0m^h ЎHԁM]K \؜4UcnHWԷBvvu;`x9[F$P\2BZlbvC$HBv4n}Z_K= irɸX C^FY#fkA!ÖDـ Abٌb5/U7EpͼaчkVS5,{e Jc[l5 J3!t,K+!B3d֟4L.P%RtynbpS|b'V^O{]HGTi 1ZWFfz~Y@ H!),XuMUEm{hb+:i*pf1zLfЕKYd h0tBIk[Qyλ_n*~{٪]bpZn6qII҇D/m~B($$9s1q)4zy'q`27AB Djjz@օ3 2 t+oE]W7~0& .ܨX gH4b?zjCOpt1I8l "/>|]K@*4+-¢ĚdbOZapa| ?"௏ؙJ6m 8E0KFO_Yfra~^w{ -=]m.+7)dfs䎔 VL'qkVd߃a_\XF\Kl׵>2mogKdhOZI%J_ώ=j7;bhhEVZ)IhdވSl{$>[z D Up -1P5fn,k/IW: ڒ Ҟlrll 6Hط|q*XofjߌsFH#>2ND\@?/ }еjMV8OuȊ2%~#.k25ΐ SIꆬ!Bڌ&nKcEX P'VK[H7&D;H`o/A z -HoZ7Täp:MqTbC!Hd:qAֿ_ޥ7G7Ph&[滟Lif ;/ڊD"o鰅MS̄*C.N,D'yO&_q#f$_ׇ˱Kr KdL9!ҞpΠ V A 9: 0fLj` s5.wHsAfU6Z7r:̔GY(7貋|+q)HI;*߸mgTz.]7VRV{ >x|H}պXsM䞖6S\IY32(6(K#~U.& 2Ϙ()̽át<Ĺ+AI\`i)4'VQ C㬆U ʎZa`R[)NR+Fߦ Zz>ƚ]O@%ޜU2r?xyPO JY)PR938VqqA٢kY|1;m4;֐juE$3؂c^ϵxK]5M"Y,s;سpe :E^'vcduJ^ŁY=_Ab`!}Qà7"Ϝ$'逜b ʹR<vAu95+ZKtFD7h_s'^oj3Ve$bin! %$ 0ƶ7ۆY¼Fm46bcDZo/^SzE'n٣g͘+pP k ; )xB\qDl"D ZEg>WwA<2k n UL qgk]qF"0 J{b2jNxJfYS~uC)r'Yl7] 0<$NӌTZ~saW%JZ MϠ 3XӪJni&gA4GF,0+,Zj{t*^ &P<1&,:MɈG{Z;h%#LJo 8헄f慗IuF\MI9hĖ4߈?g@vŎ[~Ӽ,Y *a ٶ0oS:0m ?Zu@7IP$2I٪leR"eF&~Rnj%-P3[[J~BTPRw換#ȥЌ:4#x$f0zF~#ŠPs 8lE{dҩE6m>G_ r/x$e]ӟ ^r!꩸#:VwQwJ-^BJjSgq.<|8/qF֤+Vۊ $D%`,J)iZ#3sf-‘5]^^+v4j`#))g>\ږG:q5 I2k(~E(+Ib_`;(ϥ?9{_۽8+f @jgp5,U&Mڍ4o[NR7H!.Y+2524)r gzYlo\R]mnCiH^A$5@oW1&q9 G;@æ1wg_uDVR4٥Z3P-7f|YjL*Y n LjS$99*Dq6!$C0Q8 NA?NZd bgITsBn>63M#qHE&-+ x,*FnܾdwFf$@r"a{2};WlJt8C 7 ¼Sd96jZGL3Q ZSYWEQ%9tRkp".2xrzrh+F|IkqRz zjOAR{Ϝq/rh]}F8%GX}sThrBA̜!kX8W:3ٸG2:mtn^?`7˅wt2~`$;4Р&?Fk<ȈZ1N>Ɛo/LINnV–mWZ}<ŮLƆ޸7Ӂr־9O)RGPz %?g YeL YB6eibZxqd/9FZ7mاțM;lMxe9)K@]?#P̹b(J.?y,/"f-by;ޗ-#þLN54dvWc,{c`FT`.dboCAP bb/1Jc ==܊m5Ʈelyٿkʺ7S~gƭ >窄;5x1~+CIT[ Q97 )C?6J4d?HxfM#+jHUk1 hz3t tcz*ĩZ{}@= ï ZJȎv8Ef8ɯ#LkD\; $bE{LB"3vH0/IC $<MAoNcF;@:Pg'~E2j_nfc\Nf~%֒r!O$ Bd&xK)-/vKbf]@€cd1; (,ڬ3_Tx:֟. @)@(ekKJ%΍7)F>l (TJC31C 0i*Kk~3w)c&GUd]C#"PmJsf;[: TeurJ֙'~!afYTDszCX3?X`jLt;P!B[q@XLFߣnf-r fG p.6qjz))u۶1. qo#K$LT2kN5СՃ=F-wAkbj:; {F:zQ넁({Ì:}W/5-S;Kr(Cdm+64YkŠ]r: My#/-vs>$\cn46xϒr3M'Ou!oK zƛcXlQmcniͻ"pGDu)DB+DO24" s`3x*Kx e#ڢΌ8Ȉ,_u_7rݓ`un"hԩhyxfi]_="?$NESߛ8W#_ڔ{o,]^;㗟'7#KSe"ϸ ONl6~~NH‘̯B:IWCkŶ!R\ǿq:lΫ0U' **P!<_TւAnӎt0~Fp 2 Iu+܀4XP&VC hɢ-1e~OP B"n-f`&|h,=lUZ._YoZ[R{Ta2PV=zSWTf.>n}" J8&[>ڡQ 4 dn_²}cy TjQPlN;Kq?{㖕߇&uJX< F3; p[RBxb_p'y3 +0AUȾP6861LcV~$P2`Htu3}6Ҏ]쪢 B/zc#ڷP~.m1?T7UۚqԸAHL#x,Nex0Vnl8~NT~4S* 9ѵ4:/)Pk T%XBd9>_,\BnzCoal[{ `MHU_NvzBM|vfMT*EYлJ:g&!(}.]ZN**Eօ43J4pDdnF\mf J12N*tۊl~)ae%X0'l e"$rˮ/:e#oAOymʲW2ppК&(UgF,~IPT#$DZqL8S߷_/ /+ꖵʫ%uT:mQ:J+0I,}&\c\2[rOB5L[di *'. Z+' O悕)^N^9}_M]SȒTDh" ee=Ly""7J!)=cB:y'1G"- 9&tj)T<z[=]y'} +'&/Tk BvFcBDNGP4׀Srv\ه9zh^FiZoMN״řZ:Vߌ1>)H9sHGЕMR쮽 ޅ>|]4[M8Gc\W}@^fB^*4{ w̬teiG~!$}:Tݐ3.j[ N!]oWyej!OF`EI蛐b`{U }j0IU:LnTC#taRm d/>~A۴$9A(\Z*!XX}U3Fzlk -v=@}f"1YVX@۽~Znfx /Q\!!Ԍ"W/| u5rXĿnB-]i&Q,RR+UuW E -,؋ncQs#%q2[id[7n]Al6r 2d I]f[.cß}ЀZTiv-^1DsoZVatn6!hq2>p({T 4pY=kI3'90QK0 ̪hn$T^oDt57 lA34fۛ` )ɀWp-jj /ũaxEO D|6!5;8g{3ѩ\B8y{ȷv`?Z ӋnʯGZIA XH>@;7OnpٔqfnU-:Oo&/r{PHj2 } m%uUz:@7sj  јlK CZvΞzD`]GO_lJbO) Eɗ$8Mݝw($C$`UmfTtL`e~XRs{r5 SM' /҃IFJ8fIg8tV7?^#ŗ3>__Ē ip5lb[xnH_c>B}g ^XKG(NaJ9I;8+:c3Ec.LU_sq ?m̘ƯPM9U{Mڅۑ½‹qOb"w'Kfr &}jvݯ`{Î787Ƅԇ]G.'d}a3\=P/L>pƎljubU4;S5CΕe _cboٯq"'8Bvz~?N:%SlgG.NS~Ha߈ SlǙֈZ&HTx n*WnI mGoD{[74oYvYT`%> @;hRo+K"lFg6SŶjGh!WouxI=eœ\t+!1+~Uu<:t3NwYm'kq(mtNYF8< -jq%>._iw,rGb9m2 +js$"@:M$ <0Ȃyl`8ڮSr'Lsxn+EX&-KMn*>oy)geYk="o2 -nr9j>a4g7Nu9z)9-1a›ꗊwıM@> fh\ÁмFFmA;:O1>GM?-Iz6l˹=jGʽrfM~5R6+zͪ,c~&pY&3V`wkp&SNu L+mڧ 4Y:fpsgS΂lSh-|8pUۢԧ/ܩ$ 7پA56f]H8i_gtJys O {7؍ȸ([rȂ3YB))o(,pasR`cjiQIU(Vq ;_?}~Qs =Oe]# 6T,QȪO 1˄֌Ų΁ |/|ߑ}7h^Go az vwѤOm wm,;]?2Øg{P"<+6j̡KxV&hvfΰE?PIY&`ŕ)HgkE>J&,ܜhJtZd-IE` h3t y@1W.8z#JR,kPVG9\p߶-7"N XP0fYxNF {ؐnt >eKThtfk2xb)Fj,[m/FgR 0J6a +.bl$i3x]:]>;FٸM043jҽ:< ˕-tZq^YA*o:HoYvz[a^}my^@TX:y&^37=2'|;,5|bv}\$d/s#`$E&֢!M3:MuUI>ubs%'95PǠ8R@27_!Kdk>PXr4[.22Co&zK=H@hGW"ۜқP13='JH N Ӝp\߬c[wEzpBgMt"HE|&Ȝ!ZJ@a_?̎ҋ hH 4gsƂDp£PMd)d({8C W$.\(v}xVX̰~K=6牊y S;&&1:Ba\CNU8 հ?hoQS W٥) 'r8>41**s<_M_2= T@q &8dsVR>f3c)B Fh|3\t}YF%PriՃ;73CNxOMă 4|w: 7)U}=i(=|7ϯx;ԡccȌZ8уΜi:2n/8 81ȹ*̷@P>  ffʯҖI)әMB{*e'i3狾1 -V}K1?|Ei{TZ#nO#rbW$æ'/%^ ..}Wᾴ䝓ݠw/Hub'DB>[foSZ4 JV;Vsn=|Jf$ P;:4&~j쿣/bå e,vpo(^h)4k[^k]r|dGK,8fj-To/e. 2_!ID$-m0y#Ƴ`r;Nd>v8!b{՞g<^N4;RlΩ䀲Zb|_vPO۔)ۥ9j_gMj3s,GTjhɫ1qN;ٜP&z1%o1`V\R kE?EAN1! L?ƺ~f3> Ʊ3}dFAQs@ח:lΜ|5fC9,Sl߽dQg޿"_WƲJ(D8~A,Sd &{h:JGgv‰4vuxTZ'pM̤YEY(Gtk̋e[i{#EJ-;oiS$|(f1˕Y@e, -c?s͜E Xv2s6}u<ؒүʿ ;}%6Mgxә-A0W&/^y[R7 /\߂Y^Lv. a+p2&f8 4 D`Ő)bH#Uf]-т^HNMI F"q֓IVHx4y"Md8]EUO0kqv=rz vhQ!ƿ[Ӳ unZVK etL jZl\}6qiVO4v(ʒ]Z0A~U*Zd,pt՜yq߽YurK;t{s{}~JQ8kPf.w)NJC0:wz C.1y668橆y1ҰSbց9W|h(ڸ [tg78I,'XVAr.z?xU4;$t~Bo)wLq+FqkfBKoҬ4%G2K9 HH?Wg9 ܿ39 ߩU3Lu"|fD,x.)O2PGZ06J -=ԫ.펉 g4Q9kR"mK]>kzDK1-qL$Ke{p 7W͑b<{2Mml9k1gWs0'_,h K?<065r3Сo @2ͭZZn0j!G>Q Vȭ/eQQ7ӾEY񦠓嚅J^?MvmӖcB}.NdG}a -S9}(6$i+Q$(%5 I)R+;=k BFw$.:0Hx笠&մ1*5Ʉ*(,J\x 0QcR,l͵Ӭ. y%P2; Ο^LgfVAW`_^;9լU8~ޭ*ڴFڬQ,ِz_6z|/;0vg޵{[o%Y9<|s *IוufӪ:ڜt6g[\^~$*}L&QWHG"h6Ն3p#_AhULoxv=j {MdN,UL@KSb!uacו4#(˱Ϝ@A' 'eȡCX#0y寋gp ш!e|(~K{0EX9xdpBYn]g6vz0VAfIgϕFo (P+0X}IebWYkǹ$aZNuY+ ZuYT=y^+i4vU_=-䡘WPӭA! [Wn'N<13v6H"ˏ4ރD^$oB^K7c_`:cc oq W{Kb߲V8]M|$ <ߥ#x[kt}MJS ǃ 2sт)QB̼T\ga#Q'mVtwl{M$(ul t"th$QvM`̚r{^!ef|e*,}wC!jq=+WApX0;N-WuC| FzT +1ezo=QXpPt?lRJ:5y4 |/:@eUXH#:,\gzc f|d3pV%Ysw9isz :EM^;g|xⷤS \xuOpx$F FN)b\UTX%?,SgȩlVw$?NJ/a&1 j0.5%b1]y刓TdhԔڼcN!LOqP?g"f@s2{ 0| Vk5q2,SjE_7 ,&$,e( M1D7Di==n"|`y?:u2:ޣnƈ[@BR.}0FalP!)%Mau 5N:}V1TCۧvj&@XɋnicC.~557j܊(Tx}/4PYaES "gf#z69ISl 'CJNB hVU^}:lSv=O_` "_aqKqR u*kYC]E|] ?f/qf_iwÀYR%Q)H6V(r]NSQ;̺*9)y4X>qͲԡwWދ I=Tj;dpq[Άk-[KM0JCLsBYrݏIҼҬd V&@_0]o^S5sLF.}c*\xX޹k T\7aZG}DaǏ#v.[]EDŕeO' LYʩ55TS|9WaS(#m66*1ݩ찙/n0}APAAKhwN6|]23E8o?%csT-gfCAEkEpA,u `[[ǾYbb.6t@|Nޏ[Y3Fwb>a:ĎK 77A3}hpTܽk?qT̻y]7JEH8d? C+[.;AY;=; [53G&=wc[i AqLīEk p ƭZ^3>yXJY1ǣ9dI`t;NxךѾeX>B=OZOkQ=(<`C1B"Ņ.u;8ӟLvaUv95yk5>֨;޻X<3~,Ip&Cԋm8jԶGj&q[@w0؁U3TL Yv\lMޞ1i ס=Ag69e+e9X?YlwHs (d&=aY}h#Dl}+*83L! Y^$іz1%f+}mphӡV(br i&2{*P$zE2z?닫η"Vn!Pkud47@Lx#+}5HZ\xQr*L}ć}'pL+G_.>ޜCr7&i*{bZEku!H.l |pR^5EpZp@$GshL}-M͝,1ƹ+w]BuS0hrm{^rcJ6k:q=ӛh׸8u_bpW}Uw}=fKGsɺ@v(SJPȧ5)[ Ué(W򪠬 h=b7:QooI5U—d2i@SeWx?mU#Nm,\R7B ԖD\T 﫟ЪaW آ>֕/ƈܟ c񪒢fX; Kqځx?1^/͛|4>ph]_IP' "[Kܤ1_"9v[A^ MDx1m2 h"ϘCJ :>SV`zZʚ)*x6h\Aҁ:D;G' 9σ~,??5dWm<)Xh1eiӧ)ن~Բճ}4`VeihQvi=2nn)W'i{E/4xL&o7GFwz%:%vIf.Az壾^wN$[:n[LrKѓxuCmLd(U*páhu,}v5wë:EBNL4tcjݥ'E͔ ĉ9^4y$+ݷ3=8F$.^]xl Ɇ\FUҹTt=YGҐ&W`oJz)LeF_' #ua]h22Q '5#OG>7J%Cx{NlH|$ 5L>zyǓeBb8vΒ3ҴRL(vl脵u\וӸX FϾ 'tiۈUsX1l2AZ'PBEw=GΫvlqKxUBJL$|wC gkWKa#rUmgQ|5WFzn|4$$ ,cK7n`2k`xށu*q[񅼫O Յ\`kIrg*EsfuhaGgx^.3q bJ= O0_&*jp"ŕ}8tTFU]y9uc}$Ư'(=_0ʻaTLUbGuH{],@>[ Px%R= :u XAVfR`Xcd|`KjFlr351f0-.ӖlyWxc|'_4F]oG< sC#{{EX0A\].*[rWuϫy!޴G0`$*!UFǵ。Ǎ(MU/JڃEJs/8Ls'3մ?E*}*ͅ/+>ʺ7 8- =Hs&755v Yp̏84 f 49B=B"ue>?A̳%jUNZ7Jv0."E7 DP&LTM!9}jc&J2?Ddg72:m2c >wqa?ɩrf5ۺKBE"?֛0z!4LpնUcA^s4M2E(yݕkjeU:}Pq$Eh[ ۴boX|&MWa?ף3д_V@5Nn n \HB30y:AUT{H9SBaYRL&hH7*$x~@z]KP:H#Cٯ>:k;fsdL "?,1`A[dlH̲ wT>|ɕpDn xo`!1*mQ*8eIKaG^⯰pS# F`AHB~r|cY$[ˢ[}%xJ/PV'T#AMM5s((g+yyW$3|5,ge_~!|Oy0=a10P*.%ªtc.ª cۥF^0?ч\<)8Y+Dx:5X=bŏOg2Ҙ^'u[+Lbn=?3KDT{JΫ߂F mywJfrx"|%F2KD⻟N%8S}jSEGvrcg7Q^}ӪI4Wa#i83ϒG2 K7CByphXnZnKPafeXMk[A:=GwZZҪW;vVᩘ&t \VoR!:_6jJwlO gIHNس}A-*gy,hp|? $qkX1Whؖ}oPř]X)h~}tL)6/uvTg. M{Ӳxs^)+u4<0;G4+ˀ>#͈P `M~ *35I5F}D$:zbe0FNB~WBïJ̉LO4R(WþX%ǴqLX O.k5h Gbs/,9HL&Oz,K^s5!o]ZM3 fz p.V~.ъcaZ>4Mџh@92j8J8tK*8$v'gw|Yu)aː*0zwMGŹ Q?Da^՜ P0TJR@*jF`a@/[;6^$(C3N8'>i1*@kbAxHO#P*1YG ֣]zHq\8Z<19VϬ;~XC+`L]mfS м圕Q,y0a;ӂaw6ݎkaz'[l'sO|0LUz2~噐d&L^WJ]c? w8! *NAc͵F(䵰E)Kf\QإbkWVJ yUG KFϊ?\ ͖7ȎF=~&(j~6(l*f^~0P:F*5b%Tǧ#;*N-Z.7xY 0}NR-(t6|7%~oi峗 7Q!( 7_gr@w{pv F_ARѝDlMO<+O/wxZPH 4}t#FgPI}axX_gM0&`C/Ōt ]SG,JYNX|_j4 qڒ!@#ג 70l:Cq` q}eE#5r bKx= FcVDL'guDE)^}Y԰'4 tц><6'|eºSiRy J6%2Ҳ};[{ 8,;Y/C#vk񻞴a0vntB׽rٕM[A'hރ5scܱ=[n/4&$%{s =CcD^2/0k!I}{ټZ⩯VlWud9ubQj[{~ (@ $;':};օaEzu /R>Iԥۖ 0-uU؇?fPjJܾ:ѝ(kK??^򞂩r7:]dFR'ύ lXCBl_CJ<€ng~]>(hwq` ki%ϩԋԘ'W!Nz7Ʈ.GI~ AnjSe}%*i MQO& 4d$QzH7}! !Bo?mF[SlB.ZΆr\_\Qy JX%W9~hBGG-|O穚:@k(M̅X@`qHd=WPkUvW;0պCC06tC} ( >>8 ĺ *tP _4;Gzf6ޕI,O]|~5ʮX{V8Kz:@bB`.2ȯJikrRiQz5μޕ&4iJjC#2@)41Hq/De< gz&%Q-s& 0g/[="B d~u}#GYL=EnzC,n],%ݱZXcM'i*iF7d!}wAU# xVD!_i9Lͪѣt t=/]yUK|h5OHJ'gHRրжx #t;cJEм{WjBWSXG%< HJ8pW@܁7z^Q+bt[^!kHk&^xϪ{s$w^&.!ZKy$x7kcЧGmr Q RicSi%|؝"/)%*L Cn/貫f{b9w.J=e,l="Z}x16Mg`*)xN+GUրm[zAԩzjfNo䙮 ZCP("du!ˆ5x?aI?RCֹt$A̕UU(QվJ&DKkJ_ďoQOo6Xh:Kf M]bֈV9*3N l4—֢,tM7{>1ƈ/7rmYmqs.%}$k[9rYGsAnPd#fό_{o$(_۪;Yڤ.sH ^?8CAMorjpY #w -V׺)gD"a7duåf >m?ҷۇ.+79 n(|K vﵹLU"Lª] #F-RO` xǯ,z fִ OK N I8Mbw~Y0B)JWbNayP: Tbcג# >DCM؀E`p+E%@8nY'^奪8Nq4~x *o\½zu{9MlU 3Na꾥Ʉrh2!nFIR IOKw+xMxY6>fI*(FDKVV7%Ӂ<Hqڮ׾bZ0G%L,9 .HB2ɧQz:W{H%&p]5MoDRCj4 YUj:X,}&EN&=1V4 .zs3NdY|7f,-D-'m1F}V?oHo7=6NXB @-sWKX,[%tT^!ʉaՆ\3BPz 1dYmj$75(U7jV:LX83@<9A]8a%JZrj~ʌ3<NĜW2_ W4Lvv)+k>+2v-%R{FT?\pLHo),ǵ><}9wU?6}luͽ !=\4t@Of+uEn㟌9s.6֚fmFdj_;F5n+moD~YZhCЄE1U[JZa7$O`k8I#@feVFI:A->_{5fǜMF1T+(=PJLB< ㋔*Zfp e0ТM>) QAa}9Q'l=* vVE<Z X( Ƶ9"{؟PX?T:8Owa)eo1 qN%O~m  e.l؋aL%ӷqMߊRD2Δ Z:unR HK*Mb"JE0rt1ϼSQꖫ, SoZZ? zN*`##}  Z?缬Oo(2toz$Ƈ1@KF.6sw۝YO* ☨]O>^1ik=LIlv)m$vȹ@Иna ŲSc Um(-kqiN+شIXNg1ֲnM4KGF8ۄȀ09stW"c?E`MqY^`QڄKk<`';DQuw]([8jTXK"W[(JT_l zjqhOCd%I3Jҗ!'ط%޾G%$̚N0'xQ| 'aǑw2|{Hu=VqS#9xQ,yUA$";~D +X ʤ6PDB;)52Okcm $QfmGDb9&L]bWe7,ҟsX[7u"aRN7/z-8"նb;!Z; J1);Eφ'(0`Kyo:7:Uah#4 l)p9YI!ǗV/fp8]7ZMOۢ_$A ͡%x k=qURH.T?f:~E QƑf \EL(^Hl$':@ߝ7>Y],`%w蟬"|#3[| I1cJ0{ѹ03̓ma9|oUZdMש'>: Y!)32P 1枱6k`l#Lo>Pƛ7ƕajIY~i{˜8r>N&p"}q(GP}濌,Kq;gkt9ρ08@uqcfcp~$:NlIt+ёcUd[${ʍĐ[21&N^=@-0]b2MKb}8,dKY/UXѴ|Ke#"w irjEBA@Ù-e`*Qo|2ɀ;4 =$ͅ&5B.^& ǞLr>2gp|P`X3; up޳%= $]#j|\F\S~0l ئ; lWmߗ] {>HHVF1Kr]̮We7oSFnud5-Waî)T&?>U^y XK[I]e8le5ߒx#'c)@|>9YXh/{uƗeB=9V*/:TVqm ژEHtN;<8-m0Tߍ>F6Kx02zG<+ _!E݆>ٜe`p Sm[.#6"^@-=jS3(!.$ՔÙnX(QlչMxIBĿ7jYMq T^:5?+z9 Y+k>o5dqr止"v$u-/g8,qRS,ݬqJ ˷H4Y^"tX+1I8#z!J%?ԋn'Yk5W*]Yht/)_j˷Dw )nx?\{ ެ_hBz?*May ,-hN$W3+|nu_w\Q*気Q+?Pykol5K1qQb31O~%.VmE`DRYFd0lRv)b 5l'hSh9ހӋ^j v{8 j9u~ I $I'qԴwl`Gn V" crd+$v{Q5 ]n i9{SҘaRKυDTpO+ >~C`|ƗmYS2 旵|HiC[q2@~ZUm!L? z Wzͼ@mتXs-ԣ[צ<df]h|z * l0hpiƦUv&.xFudF(%͍`ɾ-{z1xj M?n'R̒5_+d72gɞu5CAeiNSzz\!?J }.Ce,铈8#) G|7吼şew ň"R? =*.+QL}b=@[fՖeL?Peoŕ GPHӠw%kfd5%%}~v?/Ij.tun1d{( !e)]=p/NA7(iy{ p. TNS;[dy60{NUGrY+ |H6\l9Ybd:mC VjGKmhu;vd僩?8"뒻!KNgo#5H?lFw D)@ rGnt%G))6 LGH)?g׭%VԄ<E+`Y>G^y#I$_԰8nRب`؜+0y `]V[]\,tfxON+b b M8 QkS4aiKKؿ!@@3n= M.cٱZf~YoCR[\63xJ(N1q]\+#ߚznM=-#.sF x{C^ǀrg`HX*y_4?+3xVoxZ< _9'$}NyF yh b'=zegFi j4V$m 1OX4{gKij?0R*J2 )iHe LHp kdjv,$}yŕej$h tqܼem'^dz.DA)֨ j GC"9//RTz/\MBAG= n;6U:F9B,[+7tn!4X*eOCSNMujQX&kJ!"`b@RSp0*Hh]˙D8%:c޽ީєB^|MLmؗoMՕ`)/=:~zŠLy=qzB r`A;^ LeZ5XnY*݊NI uBN6#iNȁd O#LZ]I}1";0gs#Ivk(͛ j׳C}+fSN*ą#˓FhGyYQtg^5tC437^nagw} VK3xF1RA-T)pġn՞||jP0&׿ٽ1 (9\^ 2VtKv/(q?N{-~S|_ӔUŸʥC 9@>^o jocqa~wbnxTӼ͑UU wqH\9_"sHr6Nuo qd,W U2i= uir\x{Ϊyo!'-$'[!n쫧,W:,;HLs9يQ#Rc]/8ǁGj|i^S(7d,&AJKL^Y ia$^ssWGc84}WW(^X삆X-kd2+(zh=7 8R<̻2n Tojd)qj!omӠ lEs{s}%w^q˅4VYkGbr[F٦4jXnxߋfRDbc.Dĩҙ(#&Ԉp3i=`I+Ehb?+ rf"śGj%ډ_@h>S rBOMKaK/sGnсC:,aZTR5:0RPN`&ҏccT(hktlSrHݵ½D@|f޻x<:/;*BKW:I*ˢJ}(qo'~wG#f !N4uYR]ԵS+eyh]l1#@Η *t\U^ߚ`38ab:C꽚5XrgmFJpsLZg; N 5BVD r~_Z'pD]0G>?m6pxV 0?9@ځ![]/CX;-ʙ C[ qӉ+A-C`;vUg ƍn>`9ٚ$D͞9@縀1g>WFP: @hE~]H *AMODF5ǖPXR_9v@d9:$cv<]+ jj_tY3^{MWX8j$]GAo~%$~ OmmA𢖧O@Nsz0^9%|rے.ǔJq [ЍUY +,xq E{G1vWN?&b_G2 WQk/k,`EęO/z:8|#[ϲ㩟?ߩ#ܭ/"҆PKU=[00׶N8JLHA?iH!Lb`KZ٤`5֔"]/D8:0K3[B*ݏ#kz(b!dZ@;! x1[;$h?GNZ9 S\$\9>9"x1M4"w-rV̆B%4=T |Cn\8/}/.cxhaݦ/۔FPT +ȯ#`Nે3gLRWP-/w"&','' }@kϙ:$@5eE݊ }Q[ Ti'օܠ|>ޘXbX[ -ѐ#5Z"7pާdLQNGZcd&p5|!iaZwf `l]s`3G騶2FAơ.%AXO"R~O׋$"0{gp84ڎv[8 bybCXo%:WȸGyi!dk}H%d=W;fK,qʊ~Bi78<FN^z5IVW/̫7 ,m=>w\М(~QUj!1#OYC8*<;O$n@_< fAcR:0'}zbj$>׫ĭ\my%X WcaԲP*H81b !X^h9%HlZ a euIB%̑z Rq|qax&aq&'ŧ3knc;',5R4Y݌gј@j'{CwM8fiG7/>LWHYSލ!Oy ⺉rUTsv(%75|`wDpwkC +S3%ؗn"X=WCDj}>nwMkkMjm/X(ǁ%obYV!fK5*I"(%u仄<(=/ yr sO lX]BSGȨIrMoDP`NSU 8!d&5vA.jNpű蕋6J7#GQr@& -TJvߙB6pDR)9Lwe?H>({晄9 ;l5:o(nXWRopv$ɛ]}}rgjۙ$97SpR8(Y;qC뽙_̗6zg5ͦLP|R1\ϐҴܱV: 5s"Q7XKdDi斶s~bI9%:\$ފ*4FLjY3k0EZ#xozʈ)T+3( d#4"6\F.dS>0E>٢hۿϴӞi1 !*F0چD͖O9|ɼ9z2V  ycAS:- hBwhqXd93&>aF-w` 9wʶ oVρH>=vy| >=r+GC(*s& ԗKyS(Pbuwm>B)Vhˑ\6 B0P귬$A5¶KO%(pVOr ^b&!vq({l94(3;#x ڤ!f'K3M=%d<_^uWjB/qLm$os2u:|Uc&)Ldw %Xs׋}kP+ё VaUaݷD[-Uv=D nx}:(k&ğN &U/ݝ@Wu;cX+wR5x 15‘#Q6 E]GKfmXAbi 7}JyYpOv]4nX/׸5-o7gqմBC!eu$N/'Y*5ڻ YFWnhVV0TңEa;J>P\cjXt Nã, rG4fL%‹qHX} 8:u@聭RrUAV]M`|}%Ԛ?#{;Ż| wSDhmQ;S6cBDGu 4 [zꁕ"wmϞu\ÿ م+Ѳ8!pi}q~ q*?#W}l ޫ!޳袪L|tH^6r7Oۨ{lα4 4gfi9`jBi =!tGIdmł&RU ,\·o#Mbڤ e<0 G9.A3,}d u3 8h:E1 U}:s? X.L݋uֽ%_@=΀gmVD -8:~Ź/SAmW0kpKlh|9MG!0`Ou ApaYROTՇ̧R)5˩[&wϢ <;} Ћ_\|,Fs]` ɲY!ذy+b;*V6`Jq/Ng@o"^gs,s}2nΆkw 6X]?`>foăT?#NE# RX/ %j{ֹ߈8L9H?TF9GAd{v[H"Wm$VMrp*5g%rڀ?;E!ձ }J@x?[~t B - 7!?:e0NHO25^FD˱$TLiALG:*"c;S,n+Dh˙]b =;3Yb yp(Bfa+q̑o ᚦoRa{{] hͥ$Mc)]kZb _2a"zXoI- ^mM/$^nGwN^7RZ[Җ4?XrI,^n^DA5{UE|Z∎uv4$ׯ܅[;3)/XwOhw? ޏRDkbs+ |C_$ "4c77kz{ 9~zܑ*/s3\'20 4MӘ H7'n]DDLpO`r[#NOڐ ^oq#d &Ar.m6 y.B ?hIELe;+ٹ;:`l@W wFY=WSrDWF7ĒrًKBk 1Lf0kE]Բ6,?> l?~Wq8ܟJ*e{Րo;:j4N~0*ĒkMD$QGxt9# hZ W)vDa)**\4z*9!+M7S猚J'C*Ԍx)6˭2h,͔tm  y- a\[@U(/?Ȅr  BR`"T]2u,zCd 2f>n;lq.ٰF~â *{xF@f[DsT[I`qGx- HWLp] ϼUK6w ?{5s*2xXyc4q#!7$劦K%`n< ge\RħM\@ ۫VAg/֣F~\}|YF]hUjH ۣ[_4<ށ 8j#"3-t!_mqc=ɘ?PtA=:̞:š1ҏ&iM'vB2r[m*W૜6eрL>|ՌSkقIEH;6 ԂLu뉼MEKRhg=dEsJgUx㰽ЛizZJ9>-Kr?`#%bі ]MJ"M|"2po_]x02=C"񟲬 r]cC wqcoR=:3DFq9ڋ^lS[fWlG~ ~Ps 0y4hqy;.E7$8zBK\"{ėoDVėlOR6@[Dw<* Tj:xp!f*IƷu[Mq18iˁiRSi!XBUcKhb6?JڇsYDfzF` F:]<ڐZ`✏rnN(IxV7J\+xE'r`m`d5>"rynW]C_.š(Ӥfe]pM`{:;1Ȑ_i] %?V1R~G*۶_qET- 1\3-@4Ϝ,)CVILsUH(`ai@(bkto_y+UӉ ]zwr^yu\2޻ ]ixeWv8r 6HxUfP(2fbihu-g2c~Ыⰰwp]Ooߊ$.⌜˅En1f%P9yZntٗ I8|j*zJU[X5:j@K䒴K\ !0|hBϹs'Odh[n r8gGcJ2Z\Bm<4>$=iѢ?pLN?l -;,>5d qK!z#*!Ur-0#ۨ)Ш>&lY%#ZeRߙa47iu aC8M.?(d>|k;j*DV9ٽ&!jׇO %ιsT!aGuЮW9!cv; ӆRc|A|X5✈.#,vHQ# ?4h'- \+MH*_^phZ-(3^v_*h3xз0-2Fm}-ܣ6~]ѕu<E.Ph-{}"s킩t( m.fKJ׃]sت# "*&$nqCqHw|9Iu>tbšb}'4t\=m0h@֐+c>Pp ad)b%Wg4& jq<=9All:Q"ԥw^he>:|[P.AE1]\j6ǯ*gۺcN/)'3&u&TX3\%7(sxmVoK Tذ.#Q*xLGA)<͙kcON'u3C{I+"3Uuno> *Wv(@óGwhAH8J H7f m (7,1xIޓ܃pGles4Rls<Ǎ]y#Q;E"7O!2ʋf$rWLz,Y6K[{2)f[","΂} u  w/_-)5+;4KPA&B9Ly.Zz| 5Abm_ nϢl104`XA5n,AYGwKlT}tĦ}Ld\ ;´o͕SJ]ȏ뤳sB6-CXϪ毵X#wb?YX'1?{]ZD!E/\WOF>J&.*T/Jvy NL[["%#Na;NWF'~HV5*erVP Ams2S_DO8 )ŧR,\A;-nEfCTͦiU6V~]" ZTva )uR>~8)B^[;2p:NO"'+e^fyiw$wIm ]Ju]jֶ#8{//82PgK0iQ,3]' CqTݽM dQ)NV柢]90d8'X+hIK^A 9L}1༜4J(Vm.6'?h^\dP^zd/;TT*f)=2֣5; EKn?Җ4K~}`'%|L/fk&ε cfMITVq"d?gpN/*Iq93nF0 3`W&O1]$x^L.4Ԋ#>K$UIV!p]̑b8{^U[.O+a&I<j)|h<5u<*GgC9O7yC.w>[,}732l+ B5TK3YS4("^1 O7R:£OLN>@%@s)sH]Us{ix=S@TL2؊wC'Ӈ?b(P0 IE)؝ ~>ys'Zi|3frc]ud.-SvBh@Z*0"<'+VĬ~/LJwBi_CHUzpGKXT޿X'6qUNh?'OJɭ4j$](@1bUT}}չ4)5Tm c@x pBxfh)`:AZ0BG f6UCZ0!ⵒJ', t<Yo)F2bu @+%nJD P:YS@$9W7qsOi>$@A;֞[Gl.j;۬5*+o,Z:M@K؆5E텾p ZݞRPdzBҩw^|eP~q`jȇ]o/uA kA',V1YXx{U.H3WM\+.b-(m{3~ nyB/t%sVaFˁQVn˲ʦd\؅V̌w,A,d_Xa󹀷=s O9 t$x`6= u[K kФb\UUyP2 yKݮܻ\2:BlA#&8sTԩ׽(oT8_\V;7Jb/K_a6x\9Aքkyy[]w=GEiΝqX7KTH‰FbÿۑN<tObJi|ȝ]}(_8G~i?=_Q9;eO0Qzj0vYߟ]zj#6RG\5 XU=Pbi%;IHaj`w]ꍘR  V}᷁_Fp#*m,C1`E~UX* & xz$?lmny:ch?ދkzHeopZ|x߀@s7za3'"H˵&yӊUg/,[;7gj6!L)u^[qR وyWӌ67lF"6TMj}fU'' -vZ7;zm)PK/7~yRۅ4le|aOC? s!]DdDlq IbX]!i?&9@>Tg0O IKk"APrه= pwkƱ1QO> |b bd%y͓- ?ww1X,{+JrJw]a#X07%}Hyd]5@)]nl~_%k tI,\dB%'錺hq /PL͌Ρ%N41Dj Z6X"2ݲ +:)} )r.ס^K*q</4^TpS|f9uhG׽ZivFLF-#Nql5V^<~y5̓]ﲖB-tIސ0mYYZzC< Yԣt]#|ugX9"b&dsP Ð%HҚmjS`$L_`{n̍D!EK69BMB/[ JOmkƳp6G}@.ӄvF$~F{RIV͵js}WI:,}r P~K\EzR=wWּW#,Ah&1v“K^N. -IK^( vIXLcjny'b{BAYJI/sPIī'ؚ 꼺@>Uc NY}ø !,- @^h}rR89^Kf`M!5G}.Gbg P1 cB)鴶)"'䜝owai^/8K!uAv_NRbqO#>tEm1#=83#=键9nV'"HKy,Ձ5\✨"ˬߩO0á&qucEsNQ%lqV*p,1C`ωAg/`EK6X~Y˳!t$#|>{^ht.$-~7d, <\^Wytdֳ̃CbrH]- mJWRG5Xʹ:r B+ȞȯTܲ c׬@"+=GaUN`$֫tjk *U0yM-w͍Œ辑8r[XxoF71FL/۞CS8a+8D)?n,%=tqKb{Hk;|7RUeb0pU?`ծ4jAmb' wr"ؿS3Z`R <ONd*6s߁T】 |K"UxȁmFw{RTZ-anFsm-axfDဗ7ex ӂjY"xx}TlxDՕ+3[[tJ6\T&zxdJ|\O'fCoKs=o*Rhކ.WYit l4ne׃NIM=~.u GǷhxt ?I SρBDٽf%[C<7P=ϵK_ԧR! ~QVT BjzyBX̫lN}l ïGNGÓW1r?X RY$C$epegDaQIt%9(ԉ>O̳j)z S L䃰s~#q|h o=nk1'R ^Djf5%O ' <Cl`k't"jL~snIoIKO!i qԥL%3u@Vk-h:BOU@dFh]H(PaqmE-"7U`7.XҝB@1I'd#<"OEw^Zٓ*~LAE~宿JF6Z׳ PRU# gvP"zⳜi7v=ᣜTl"RhcI aӋRK8tC]̝WkiGzTO!FkÒzP| xW]utwc1l_e ٮb)-a9[;]_(S%ZdXg s@n7n^= YE '%6ّÛrV1\7]wF~\\WqL$(k2;Q O󲐂ȑ-"X:h۾0~{(;Ocnw^CkٝS!ĠePeٱ~YbL/NZʉCN'&? -atH]h8DJwU~$bcw^FPYy7RҌF!RńG`K'o܏+Zm4lS+Z[&@(Dm|u~yܾҿTyII{]uiu}+]N?CCYj0MY` N$LdWTVĖ$]:|%:9TWg:)yҼ-#>gNG!,=ddçCy]crBz㦎V9!N," tSWl#nKWGLR:"@A[@dB-vܩcS%8;xh7;d0ZK=9FHCky4$Αˎ|\lަ PO9žP>Bst{1\Hż=Yic1Ώ,\L{:"?yUF(OedʧRЩqk:-2+h,!6)Ñ/8`ou,}8ڽWAX[*&ZKZ3*.negs#;X`9H0,HO9ЍNpdˑܪdژ31=Xty⍟ŀݽѾ qXJcl},Xݦ8j3O^018"̘aUԶ`% Rqa аG6oq4x{Q?Z.'X-><6sUT@+k\">ֳW# y}tR tduA4oXzp6?JoPDp?gˎlpDZ [ aeWVa0i8 .Ke~.ڌݘY;J5n[wRLF86b ۴m`ڮ#! V{SJZG'J]l|[B1oeO"͙~m#y,FFxppW`ڥ=r@vY)iyou9MJ; Nu%g&o$4%_:u Cl| SsXEo 4 k-aQYz H2XUjPȓĿVu Ed~?g(z#B2ur T {翓>& c};Tvmn*A37?bmX^&0 yLvhHI [w]M5Rp;t&X<Ȍ(bZ0̓eSmp5 n4Kj$ 7TTpbi$yhlV7X)g̶,{kR@Bh-Ң,tc$Ax_ n!M7kw gX\qЙ:=n`61WhPၷKD X1PDPEɚg"IpV7]w@+r2aj4W.$˵K'jW>v>Qqv_(=1xucV UMN Rkg~~:۪e^ߏ<U=iojL%=-k(DrӮPA(]"h*Do at,`3;e!XF74Տn[Q/}7Y K"lOl)Q~t_R/ɕ/[ȺIzQ-|ƈ8Yꈘ =HÕ)*3Yl'kS  B@6]Pnm}x!D(:vTO9C`xMƨO.ߎg q//D U8]=NO\(>f)"xJ ; kٖq;8JpiD ']~'. o~1`Db@  3 )V("F]VDXb~V〉AUoRqU)M\o7("adʝ3%ryhaؽomKb[0LI6\Êp>Qp07Fp0Gg|6zDYN4{-U7P=fMfˎ: 調<"bZT{rO [0EaěE‚& zbs!/\\:CgaнNP&!pѺtkZt7oͶaL(G1¹ y$ D>NyL>AzW'跁 Ca͔vw0xJy@.զBc~MxW ZW~?k%r;c$^l\X\ 7uC х# [$x;+g1-E}}pL_V]>7EiJt:oכ\"aW,5Օq$PZ ]WvB4%:4)c&>kwaCRW]hXl#"U%s0hL$=c~v5ǫ^OiF]9;@EVڡ`<Y! )uU (=Ԯl@ wmoښmЕSRu)A:P;4̓Y?LzSB%̗:ؾ. gC^%\"Y_lV(T<)zz`.4RQ.s1`Vxy;q@ψ h1O"2u1:x\4f#k {yOSHz}|$rH]~LD7Za[=>^e-sLJH&쩵Y7iu["qjҧðlT"h.]ILR#z4tcOGxѲG<͕6 U?2HrֿRFo `tD'H*(-c1ۣ2;3T~|ܢ$qƅG( xo}'Œ|EXB,G{ԉgJJNّƆ?R$KX|*8W"4AAJkfxpg_:,q4_Daͳ=< +O-Xk8mtd9Ho>*Q/*IڸW85HLQ5,T^Dͺ Uw~0OU¤oz'-8lHa8¯?34aRzb~nTPtHGm;l>xZQтu.r# hWy]{/^;6[%[CwVG~K pj唃}Êୀ.%1&j2Ae?Üi 2>M RdQ#[!XTA?x{g RH3) .3Z3޵}qSnI]8ZzbF-H=Y.>bi=~( r"׃<dtdb lըmoi(MRl`IM^TO$d ` `'biLj`a%n 0>w1g)ЇymOQޙL~Bw荘f!> V|BTBwѤOӇZ&V,E=GR#+8uF( W;$(sջtMY0iBDDhhm(n!!7YvP(a6zD~DY ` N"5a:U&A4ƔyZϘ1?l S礚V0ŠpË2wh7ܞ=ta4EKDY(xDX롘}4]{M̛jOʿ˒o/E0@Nn%Zdw?:IveVDXԅ;SP5̞-^kKw4H-cݗkNsO]ǯKNBиPPp=OaAn{C."t ``W* o?R7(ZQqQ}h7Yx6 tCKr?J-Ri >ێПD<9X ;W1Ou/@芜$g͞D^'ngS-o Ac57-\̯uz7i?E@B.BֻP+ ,OQ'üAXAvxi)ʤ$kܴ qkK7JGnG/[2ߥX[ -&O ^˜Hj\0>Қ3оMD؜61Qנ}M}d3s Wc  0^?8݄}XeO5Oz֛CCay@/߷:;`&2yrQUvKFN|3;SKtɻD22[+.预.1.qޑmkJB[ȋQtCٟJn.4\̙;c+B&aOJ]Mx%7ukۍ53ܩ]@˹#(eeĮe~jHS} RQ͋zAUnjGRb s}okl^ H/eL>!RĈ P>4ylDNR)BxAM*98vks1}5ƥ`!nm=\2sLoKvJ<Cs_pn-HQ~vz'v.t>i1凼QHDcazl5JA<źT jgwZ=xf\|cv2!!Hqrgruuue(M,#*n1Ά0wGø_ʧT69MW!;HퟶI-\ɻ*9ˎ/qe9[С]Ӳ}ϵgGMҲ/fTu(90/9hOѯK)'-B]S4#n^LËR%_ nߧaW~C{ad8DE HR^I?#J&< 'S Ms!+pW+a4]h~!NoLkWO2t~=wmd&%c(f=׾8:"^Pu@s?(ؔ ")yHj>PM;g:<G`C&e<y\ͧ/6Z%vH?[y6<[5X@zWngWDorB#}}zYs lc-7Gm;^CBw(C_أW׈[VYBBK3T;IN8kӦNބ.]f%E`3a xd2lND"iO_Ё3RD ?R.?Öo4]&4D*K I1ϕܼbVpp*;/#!B74i[ЄW (~O3A "ȉ|:UVW0Ra-=IpR9Cz7Ŏ-#3;f" @}"@d1> .^{E=CJS]*_4E% L|:ÀFj/V#Ypreo.aLPżmzWMgx> 93e" .>_r!4 2_Yėȓ'umT2Hͣ`(J}y_[sezRC*U{f5u,U }_dPP'0[ՈIZG1CN5H݆h՜Uר "]m<E /zP7ߪmv ӧTe9(WYaU6]%%Un0'h[qcs؂~e*éUZ;87oRB ȴ6W+gu-HMxj$nRxɿI2d_/ )"6ؓ.xҠ\;7ߝWtrTb$~^igY=ؘM e=Ƌk A-n~BpR`0f'hUlQa)H:+oƖ` b6Y" MXV3 [_GlckL˙M҆{ǫ3ْ6p0ǂ$!yfWm,,1  ynPw9—Y]lW6YzԫtDɩ]ٗU5zԔd54J=G\`G\[@41IHydVg5RtK" re=]oZPvBiM 4)I-N0XhB6BrG*'uGfd9 -V2<{85iJ/No'\%Q0W|Iy_,Ni*R w`nj\hm$y/PB)ɰ71r,Ut "5,x6/g/ЎaWtB5b.  E# _$L=Ҷ;DRz'c2pdvT4:V 8|Z^v h<48>Y_bBJ~L}^V,:a`_?"i4"M2wl K–w`Pbх^y֛7Iv6u|T8MJק*5#*_@E9oЍ~M8q}3WhDgDHsU8u@ZDYU5aK_T_Z>H6P(/IYhn xG1^$j6.~&|z. PCGY*whbmzԓ. pid| /#:\GjMq(N; o#qns ) ݟjR†T +\31Uu'CEѳ}D}2 cF)/eiP yOh \`Z5olCn@I7gq \ Ĕy }Aso-*G26l, ઱Π{X0-ɭVpIFږ7@ѫwp:>1W:=!P} W?8PSą^Z"F>WGq[٫KsTxJ{C0rssװZ}"Ie&ZEc:/{L(YWc;3\ 57}pO!}u=k?v*m ⿚7gozB P >WPVk^`&'V@*lՔy5ջZ7F~ дEp=eGoڊt|ʛl"=8"hPuT^ j >[znk9O+6mjF6= w3)m3.sMN"fvE]믅b7~ Qp+!qn:S%}3qO>nsEk*Gni$Nq,% n@i}\6_3l'//XLD:G, t*,؜0O-/!Ybo+$n``fr_{sbPc0Ǧ Wx=1oC;[0sV ;O**{jC ) s?a=6K,g1kE\!8N 8" k`ɮA*'cb>T"87Pq{.9F@>=73'![ O6ݝ%xpKu3}v[H\N$vrk]@y݉q jycaD6'YnO)WABFҽGoh^PGO|"9aJ<_p?3V}j41ڰÓ(Kop<7ޤm8}GqSFR"uX!N+a*~H/q6!O8eݱu!a9[=Lw'W14*kCnᄑ 'kwJA+bj+Blms8)!6>Я͐BEm$~_! qZW#[Yf!fRBb_҇)NΘBEB8V'VuݽEG LJ~=l6g2bڶƹQ1ƭ܂`?K7cb:N$$?SN+$x>)6~##%-Qr^}{Z,q&/\-hn?((ϣ^6q`|)ñu"1;˹E:VC>ޒdsw4j$lEf JslѻCg kĐG Q!cAHh ݚ.L}gkD@/n=mCc Uc@q|*@S9H/@+6}Huz;Znʱz'}\I4{=wN|uV;M}rSv@T "LoG-QojnV8?{.$VzHvwJ3K: 6m2)e`~^8; Y;^bف.Q[=QPU X eB+.)BQͩhHթَ[|!Eǀ.2R(q14o_eR-4 Hg mxeCbgG;ǬzA`vfrFͨkobm)G }Q[#ڨ__`:c&?ÐGӜlnQy'2 iij(C'!gplݧ+畚3E>N G=a`]̠ZC[B՞NzD=aUF,bܻt#!gTX3ΐX&=_ӾGv+!ϴ0(bG1{6szHLéuUv!NMb`֪S;RoލTOA*\l٨?#uPqԍT\]7cETe1r\fekMh2Vr#Qےe g#SvQJ? U1aͯϯyC|!qCDy3WpгqLit5V:|ȳHDg!+/ҤcG@@߻Qfqc=)_0w RBEvj^XJ&ۋ!^MxTNhϻ7mݟ/ YwhnۇLV."ۿe}S:a~8?D掆JڤabS ; Pi̯%BTA ]HKmsF/@,r=š_uڗֽXŽ>eHdbr|J[{.zW{~~O EHYqJE2ONtK)*΂:+c%hEcmPXRae:AJ?~QN@Q&CBjwx/Dq+t }z=2@цrY}?U#l~Y݌@yV׿jb. V*3t5A*6W9 |h˫ }076g{H!AbMig7] ԕ6@{?bχqǠfǜh4pҲ.- 7MR%OH }eɃb +bKaB)JVcGoԤUP뎡צ|\pQXmcXd 4`^ĩ C:E#8i^JƬϷ&Gn7CaHv++1WmEmhl.2MÛFN"iA͊=>-y戧fX|,nVՌLDu9[Ed\1a2Kd}9{=z+*y֥X:adߥMLVV*2QI2@Ĝ~nwHlAyY@fKCNUdOvgϖ\V"Du^zv_+۝T`a/GWM!~TYN&U'c}!Ukn+quWX!BM,{CFF^bT+?N?aSWVi*(XsCN\|(nCtƯڠn9 ǫ˯5{ del68Ȏt^5gd A?I52W*.C<6ٴoynA.l7ːxu۾n}+iS0VaB0Fxٜj͗N~W1H%P4Y) u]xT}ilJ`T Rpy*x@KZ4pIo,J;/^*O1AI)k4dFzdM+EB{@󢠢,Uf!- fl//:CDf/iʘle08ra~K#wzͥ7nV*b&Bgmq} xHEcrτZd$~ܐ I c$`Yz]mՅ@C$Q ֙a>~$NX ąox+5:>;.MB.XtN?@Ӫ>%jab[seE-  ̉^4Y[VrNj-"] n؊Θ9 v_\5mV׋Ԋkcg8=5fmW ~eסpxbe9gU$QΰS*∀KzḿU|1tãeJBb>{Zg+2蔐Cf<3; M'VvHS t8űV|ȡעU?lĕ|] _+)=ie=vLcirHhw(9]bo(PcE#\6IeG/N<۸K'\Z<: Sq?0i"CʕaZ{yNY{Uʮ xE'h@Cb\Lp+-@,7M\ʍտdo *}ħ.Bi$o^yX.tbޤBIr=-AO$fW4DiJcO,wQ(4 3qܷcC :#?R.Vi%YCZo0ٽ_6JkZnW.9B_6iYqu` 2Wz2n^%W/[w;hecE uʫ$ &]g6"UTjh0#ݬdh/(&M~ӹ&>$}؞ߛ? ULFp ~h Vr ;osDuLx^xU-Ź'!X6mLؿ6uVa?a ֤e];jtlmVBDr:Ճ:Q}{ -~)0%g2[ 5GHظ06I%:>wFKwԂm.lj<ܻͥ0ir̳8Xw8'*QxӄRO(E@)_7cQ;gtULk;DqqvڞzQf7rFy tD}[r ?Bŝ"%l(+*mHx_c#M=SrגN"qdq/=n`,2:!6ђaȝ `h6.ǹR=ßMYj=&A]~1l?'pzuEZǎiIO?:"n].*VLYk%LB$"Є TB ZcrxKkw̓J&=Ho^ҲbbѬ271My2a<ؿòx{rpo-I_FD`hZ8.mE hjORPK n>JyY?8O@vz "B[)k Iy AST5wkF=g([H^) @I uJPRxPy+lJ*vpkۆx(hƶMΫ 琿bTI\Ȁ(u W_K~FnKp4𿯀mlzN.) ` X[sju*1@W;W+^xfܴ̻ Ąk-Z.jW{JuL >x,g:E@D >7sCA嶺-JZ CLYN[: .eVh;y~Hd &bድ}e_OHV!&b=Ϫ_ؔh Au $ٻ P Q!#;9΁q~``2zIa`i+$RKB)Y k|?!%3՜Qм=ESP͏*N0浮Ր ^G8Q9j4oe`ihE4S LG-SbR"A8N8Za2rH 'Z"+{$Q\φ@B,|K#|J'%)v6РfO7VJ fz^{TZs/5Aa͟;23eEֲ!`w13Cae1%_Ov3Ԫ`'k2ⱐhҴov9X깦ɵCғa[{Cb#S w ^U/|ޒE 7mc Ut,o{oY4OM~8 u `kZIh~)bS3C;?P?4 E5n s({+ ro/=Vݕk{0G ;~ RY,U ίm_2Cn2JB:W߻P5:rE]7,6&icKSd2=eAuGڬwm_H8uEꈁv$ON̐rJR駵lVt3f"{Mk)ywqWƱΚ<ӅS3U׮}YQƾ1XC!&PsB*~IՉzF"HϐR^]7R'!̦Sh_WaHO;?\n@ʂkr~8r5=U, (O'^NXiO68d(@@]~+QjHPG>578ĿP^aB=58 FA3cUz,lG/i7ǹ){st##sdG'P`핖{p*Ɓ @ױ?GC$>}m#@ Ead1iZl!F܃)\)hncVCg!!i 㨊IF _L b[3aNJmvOZzeot03:#[U>LA4,2hv=+D|T} 9'*AptTѭx.' XCs<[vj8D>/W=E=垁M9w*M>ƨVO^x$D גw:UЮՠM#g;%;)+yJ>!aI<="B&W(.n/_]BHQwL{}B(Z^ӝʜ3z*>74wM,R@Ca /t - { y}at ^WUc(:h|- #l^JD%؇xj-3Zs;<|67ڀyӾsNzV{ 5MDȝjH-DK5kLh)҉tc#E_\$A,]6涻>A[${p@iUsZIQ$G4UbP2+& vNz oQiu5BS2ò-&hR"X{J|C@T;m&P8 5*ݠl{'<`Mgݮޢ2V7@ű 1;SCx6V/OI5@_ *#0K`3|x|at`9.-Z/ۊDVPk8htr bӫHruL"L6W`2| F ~d*.o31T-6:* {aePIkòOiE W;nЙni!Dub*V xa苌)ax$ӄrx ʱiw?lAgasUٰg#fMkS@/ߞΐoƔY34̱@Aw9f'3%ݓRxBʄ̊Bh}T6T1jzV#JdUR.t,?4GG`]BDzᨬQs&5frs';Ρ؂a0o̐.շ=s![j0ư.$tSP$İMcC__q/w߰lX~WA`?tey_stcnx6ƺ70 )=8Ӎ|{7l\=Y#@M4'[=`\89*!,w$|.֙ V(Kޖsx`}缔Q濋(Ց,ÓH_(R/+M_Ez sI+d%ؓxZB n}4BoPKm3zz^Uzr!\a_tx $Юr7Zp/ i㧧T;=c M3C}\Ә_ A5i+I\r`3ը\7NYU1hmQѳGJz kqDq|h`v{UJAϖ48 ,j!*QxtWZzOo&FASm &_uc.-/3E %D:J?lLV ,?t|*(i!ٺe~`F;z(ጇ|bWBi`"}_)bقuZJ2~\ljuvPmrrM _b+ "ߘ?c>epe I7G7d[hBdv$`D5sWWfj@ˡ>|? c peoDХH[Sk>}BP[{P;%sh/ݢԚEـZ63ETHwgOA0RhҨ)"jU(΋j8:O㻹uU>l^h8 tPnap w$:Հlb*C6VЉh;l0.Y]OarC#BȞ9H!NaMJ(/F+H% U4=10`q[tqEH-\ ֑ius70V5@X2Nߋw"O'#iq>] lR\rŽ}S0鉶CaSt<:kB}/N bq]b@F "ԋȇ:Y5 ̙7Hu,Kp $.)E@sN"U "Kfm>"8oS ru47f1fzU؆ = 'ѿ?Pr'H8"x:o-ЛO᎖#GD O+,[j 3*~y: )ۥ[MuZs(ݾB=N<YNNĄ[(uV?潶F䆸)J7_4ȳL11+L*UL*S}SLK뭉' }L 4=[>bKE!T`fHm.@Ft% ݮ;|iҟhaf~v*݈ c#}v _cX]FH㿔 S8RIG@[h^渲!K= (4z0Y'qF!VJ*vZH4Q1!JG:玝fS: eTaR2(DM++-ddO>n>,^Fj ^xC #h}CǜӸUh/rozA*>}kmC[orOPfY;rbo4w< u8½>dG_}JYK[%lر'wUwG3嫈"/'~Eތe^㕿iԶʙ+$攪4 -"KZ>" *ܗQfK#iY&|)$MDؙ_x{({Pps v>AȀ X7}"+3m=L-C<*XrR\X Wgd/CTRmR@ŜEۣNnq6``RH7 <ٳ⸈#NjV^.r䁜l?R@vOuB1Qk?7~t`m$,krqh`U4~J&x-t:V(ZœqkFwfuåVVE `-r-vZgEM^;+GV-ڍp4(&LXቼj>q+B1h,KumIQw%Ia4ᐩ#yb6kug)|Ϳ!g%7j|(ZoXyn~Y,.yEnIa,t,Í;moM/u{0Xrx-U$r}hyzސGY|>~&g֮^Ji(0,ZcT,>^< ɵg"! =U@.kK%3<@O[l9)~QR!}N!TꭢcܹKG K"|fKMZ"kKGA~_}Mx?@GE iY~J'Q?UQ-_WoDUוUM70TY0h6/?hFaSqE8e.~ )0 b¡b%_2OuBC KQsIV))  V:9Ro#XEk3۲>뱻T1汃a݁f'`o*|M̛f/Fnq`zxOQ\ޘhUgEή~FSi ]껆;㉾>g#7HX=ԛ 01}0zx F2_)X5&v،BJA_IGF#Κ]˦Oe;}V9=F9 z@a:h{V%/e?8YKOSM6> ZE0^M|\)ǿnm1"n,PBM TQͽy"1 XOٛ@W#8΅[Bg79ObIi* @1F-1+-p2~Jq|44WaI|g}9cڻ*$ʄ+"£G.Αj͞y$ctO}Ǩ7I{.G =pjj}9$|D4ޯ挻 B4$(̈ ୠ T3T\cX4^<*nJc ܡ/.}Cq6 6;VowRI` [/ZJ &%àeL|Y7?۱%DŽ.Trw6y?F̠ˀLY!;#BÄMY"=3(تZV'R3˵/ d˦}4߇ngwuξ{ ocy w<#LmxRz8Ԑ+B!ˍ;PlKE, vl҆eՋ/6b'ZPnٴ$r=q@"T;k1>Vn{sLLpB40هWΡw~ ,>6g =)8{/y16ԆL]=;p #yt09 nԃ*u0^HB`z,IJ7[d4eAWYq Ln;=++QΉہoD3҅73|&Hvqvׯy-ŏ7lJ咘YOVp ף&6hpYݾ&aY=xz7i.%:pO&Wab)l_Y/t8r$l 2uwcJ'  F=)%ht,O`r ϙ@Y!XB~<7Si#Co4@sBLdWLGS JY1'1pL`%0T_ 3ļ4;A2Ito=J{i?S@գW/ګzF&Rk@򨬻2BAlC9RH.*^@_.|]O'&6gǘ/_֘9|(_nU,r86;A0\j)] aEڱl#ߺ #,sdB SHAtI>&ҶTgcFJMǙ4Z~hw_63f5,km02-~9' Ks/@~ *b0'^'phD,n*13*GiY J¥ ea<~J [FQp~M4N}*8Ny/O =ӑWwigFuMnÑ?#\ZSw {&y&;n (m|݊lG/gb:AlCI-G5G$"^M|ä`Hc%6!s}MF Pk8qb"]D;Oc~/om+L߽7QW ҁ\R<2;JmtSǸn/lwΡSU f[ YcZnߔØRP+`Gf ae-4, wd@95f<;Jq NӓR揨3VnY%5OKV)_P|>owy!ADz[ÌPPd3DM?Kog]~G&Eļ)GT7tw1Q#R@30yM]^κ9'2:'zjw?mO+wASE4o#͹T Y *MeıҲ071 qiOI{24]I ܲm$a# " -2f5lĴT<#bER} \Ay.F(gS=et]+h7؃Ek}x. 1BcybQ {"?[͗!6bC}2htIB =](+ mV١{B `X]F(vpHv$8IбVT 8RoFQRc;QA*Bn$V_䍁y2u5|a[#zn<28nUDɒ'l~| xGM3;^ x&IœB "U$"+ښ+#>k9-¦Dt,^}& R\\Vie:o2YIj՗QSGg w2l֯ӪI˶Iםv߱n327q ]32 B6/1gs8wQźF ۱D=TU~YSU fXUBMz/VC&,oUU֛kQ1 1XA,P̃ĨsIKS-xT$/52$a˛ @F0x]wT{E)]0C=#5LQ l+iFؕnGXO>tN&*|x)='R Cr3l ״NuaC+qL &pf[<}{U}Tl@.lʎ#pY4uM"?YL@?U%B3F7wP6b˩Kٛ 8`RLuǒ1~3χ!(Y^sn.ʦB::dy>n+d^^*3I!uy"6k=,9 mm`+3n`vy?*5! ?vm̞/]{O"cbM9sAjQel%TCR{Wlln10űEQZKKxoJr?? wm&)c|!a63q# ^%LD۳mD*\{=G4'Y[#rTL(- K hq N](ܣd =H_DZU 7!•r҅Bp>$İQڮ0 Y~elTmʣ!Q@j-q<6ڐt-l}t4 0un!-VKD,Ӑxt^,KpE7*H<7"e4? $M]Kn(dTQI*NGa`.ts2N`!13)3o|Eۃ{@/l֥Ov,M[Dd3](qg `o׭syDO6F1-ou5^-LQ0KQ8@b?1e,EɿBJHנtcqF! V2SsX~B5U0vMWXVLuO$ں~=3 QŴ"era~BgZ (Tt}OwG =++&5B QWi z#ָV9IK &m]=D{6?}G^)[ӝ:3V9J5r[mSlv ef&`J=T9P>Hf#v۟Զ#k-eo6'Ƹ1VF"kR!>H}2#\ Hj) D@H0]_QMG)!+wtO9P*xGeo0Pɒb2K-Iw f )(-ίV |ʷk Xx^@JXwL!o_a?$!o*kf`ӿ\{3熰p{/V&rȶYSܴ(]͎αc!̺X<=xs&[8'.  .wvEH&1]Ʀ1Fm$\v/kpysV@cs(UrнٳUDM.Ȳ2䯙Y \>N\9GoI#o4G?|S h[G1K49 p.68vVscmX3pW%Cd"%Z6Ri1Z&Kw|#F/Cn(^ L*Q+rg۔d8lY<4sRĪ3rh#1RA( SF˼,Awb;J+FtFמEM1&fC_K~zNvxhyE@OR& McI0fd?pzE8Uܐ1ZI89o|2yf(Ugmܹ  d:_TKqƫUyRí)Q6Frlp<WjH/j6G_fUk&"!㠤N4(ʹŝh9;명Կ`wweo=oY\[Df-P6-jj"{FV H_ ןY~=v ,bYtC %1[P侺^um?Oǒ;Xhz ?zКtUPz袮ey0(-?@^̌q J P=Kú첌/*]4FhLpiNvo<UZgµ}KbvE)V(ȢisXo= (4{ÿt$E3ZЯӴ%=+T>ڥ I \cO#K0.R~Biq+ԎWPnI&` ҡMLJ ,QPiYοNN|'x!-^,Ԟ1WCZ~}SꮧǶY6\+ʪJ_ F,RElB^7-^1b(gzڽ ! .cTt3lc%oZ'VR _,|m?uI#H=O;4=H | !'(yh?P |ܫ<.L%ZgP!1k l]0fbXfzGLP"7k#ڿm+u{as'/KokB>g.(\&J;baptKDyP7wM6t2`4(yZv*\&HzEoo !eeN4'`ũںGh?NFhVXσ3tD&_VjS> *]cl(i܆gQyϼR^8Ƃ$c$sⓀg?-6F!={|H^P Td[RQe0μVz;̚?2|ҘBAz|f i d[J~O8#/|XұSK4iŚm⯋9tXSX# 'IX} eE5 3L~f oE _;EE{sA$ J9&n$DP\/bt}~}9L_ƫ9LXR\gHUv~V >PPzMWڪOn(MQE%e]T%rF+$`;_^:Gng$W}4 N]T6 eEՅRmk=i?H m4^zKЏXҸXD~$rFte)ʟ60eccj Fޡl8gt - 2ceYc`^ q(DpXߛƱ]=fp0w#~LH[o3{?RV=px&]M)(\h]YPӈ9@8hr ا_S/\\J=[B %+ Ul[a|J*cfɗP*ĭ5gG١1p"7+D tG*v+u؝\5Emd?KkEpV-NkdU3%/4h&*.a=2hM{V!GƁ;.J;/97OSŢ^ER-7WLƁ`%7:(/fݗ`vf2Wa1'dH'<+=4X (@WO+ э{ ЮҲܐ0d]*@Qd$? ]Uhpȩ?edRzF.GCTx\%YcۃL;8( ZuZ^]t>j.qԄ9,CwS7Y=pSxcDmgufuu,+4O&c,:K@_xVl{Vq?Mv(Ė&t8향j3SGP vLpjϹy&abbF[Gq@~Fjm8/񃬂ί0ΈE5ɑC1f @:'X`=q9mrޘy&? #K>MO _FṚVHn3=vXu84V%ƠǕ |CZ0{;3nRQNl<vKuѨ$voY<ѬԷ6ɑ6Y -uQ۰#:Բ86Y @.3ѓ5wf 4(+#AbwLڲ/1z)rۯи% Igrf6JRI.;}'+&,MxddI0! )o 8ǓV~d}!M4-< =Lj UXK_Q ʿ ?ɊJj[muP&6nB|qw$W2r"T^^#y]B+g@-~΋TdX9Ẍ沖g `DPˬgVSi+鍪yRiByoմ =ͫ; gC+KH'{fyp0hk;Ag:'oR};9`1oSMIyT{?X.S9d3g Vi܋BJwqM7M{X-6Hݺ׻੆fӟQiFR>*5kόtݬ@ hnqSSB?}HQrdD 5[5F^A;UhbYjg, B4FuV-c8YވdrVKB&w ~#kL-TesR"(Pr'13IʋC7DQԻw0ox9vb$ǃ:1e;_bT?BNW{le^U۳ }YeF[B+ȨhwROSSK!R(ҽ-+EcJ^]XTڟٜL>% 7v1::G: qAYh2I5Cޱ1B x \FX!؋Q,IfX^+[f3=W}>jU+݉riӮ_EY|Fq3{y8v<['HbI/RŔ3nэtQMGEP/[ u! Clz% XdE%Jt>ľ$*uFyχDfؿhmf1N?}n,ܵ,68R]|QR0{$WcC+A}{Hw8Lѡt):@_=($HӟCe}e8,!/X M'nm< [BxLّ{>]|P~zAf r6ϿsY}8uVӠW- wN#9@HebIt&PDF\lbU|b9'8~hO7Э0ݴ{ / f Sϲ1h6Sݚry PۨXv,(mZq(MvI~<,iAکgBb<}#W͝٪ OnuGY-ƞ|t {2QAlr2?kIw(N2lf0ffpE|ߏqK"uޏ`y5#EtԞ/{$̊(ʃ`a@pzzekbdsBYEFFSb;{C톀tSR (>"AA NOCSDxKD1k?'ܡRILd_&H:+C\{xTsԲ<ǴM?K E*Wϗ(lg-/;6u.Wpܷ9 P1EBYJXMމ](!fzo[4m 9vŶ@ +gc*7E cf]!;S"2o&I77-ؘ%PvNjܴnmU΄x[4[:*ozmN3w~P-ư b,WdNy?-:ۼq;A-ߙ@ 6VT.G;'pXMQ*2^ Rѳ==%|Fer\x(ć oӳc<=XJpYYXvf1d1ԜWWoM\WḄ)x L8 kIu';FLnLoIU=!4ېQ- A۽Z5 kvt,c[˯GK43~L%V F]bwh9\*ϝN&e?#dDId,,G+IazL^ydI6<-O2Z⥨8F[c`,CE/iM7WPII_n.ocwfR`̦CZ-G Ø HYʱmBDl?gܨU0,bD@XIlco3/0c?dUx5<[v<G)oC8@N@f[[?, w $Wݮi}¿CMw?ŋ͑U]c -Wbr`pJ=dEab/ң{le|y]fagĹ\تIGVF:Hb{+)Pͩg9}V5pߤb]v;9q /fT|5=^: jC.}!P/3"78yҫGnw[nE^&9GJd7|ٻ[B#bqNq{tck{k}QQ1YMz;$e:<{F3 6vwT$'Gf쟼GQ$ }aB5&IͲ K:\P+la|Mـ9:ldB0)_y0Zu/|z㵢?d7Xmn!]~bM py ~T;-^:NskC;m;-_Dg'IP3G+f}(+: 04kC#:hOXVkwkm_ijW7+)Vs !D3L*{Si;j?zV'Cjd,E ?ո>jS9R\K]tqi;Ny56=ӈLgțNzJxxX vU`a"cs>eK=5OWfHEo^ "ѡu8+#/6.:(?uXZoo ?Vf>PxOli:9Gh-nOv @p"+/Œ_!oQfM EJbSq@y3_S,= bΚX MSDgWܗ;f'w^3+ߎB)ب'8߁&,B 0GX+N{+\y0 7+L=zI*C.d\X fZ,FyPmJT?&& m\j?/4n<!p*hB'XEs(q/.L̦PJL%&@et> `" t2HM0K^\VφYUDneoGUb&}*vl@=CB}HPX|f}48rX #Rx6+|b\t=N g/'G)dVƨ6ĵrbUo$WH:d5*B~b>v0EfG߻MxEã- 3DQa]|-@:ʈeFNھ b%q̓(1 fA8覀P`o m{Z]pݳj}gn:7) m4} @ ׻g0V]qvokLh<\sTy۔T0zZT|?®? j|!k_7k5w,Y d5E/7*'3uˤbx>kӗDx1/Q8_Z 3nAkTT=b۫WFX&Cywv b/9tlRNi+!ƾDƶR6K*xYPEAuubct"p<+v8ه4##B]k 7aZ,ix3ƀx#_TӉuV!U]Zznr8V LiR?f\29 I k#&8?XǯӕbF?$,>JCg`6iq\oEy\c89(0>;F<= ']^N)(&AAo vxQ7xv@x.EBw$"Ls#?A K\s$?`LV Mych/~m5{|z0AEY M$? 64”cxVk9!_ }<ʩ`A! |߿2=ɾr7-@(m~3ԆwcY ˠb>s)_8JәT-1, vLhe.+ύǽ9HP)W9b 4N@>ЭC`az$G9JA4Y_s!^t7I)B e*fIjcQ>S?@D=!:2 u^}rXsRtϟ;p13+ ^ܯ4F|hо{ɟZOi }q6(,1}=$7dk}pJ.&2l( X1>i QIE-x0yb,qSpN=ZFQxBy͌\C{̅ 4F@^xi8stbuh}OьSroeXUuQ`:I(j _{:~>e'0#}ƾ`OJ1?i ^&>;$k*d2ŕ֮laHE֣LۋbJwJ-#*([nק*0P6<=cz*yR,PX gug5.sGsW:&]Xq!RDYZX&Ν%i5A xm_[7o?-+8 DJ W˭PZDga `;2Mn#[OH+'zUtHԞ$ ?tzZL1*VaɬPh0T ?ơO(|֛2bST_4u>;@mraU,H F.Τl\B,M@MWta}9~;+Y XU ڲ3؂jۃïM^%]]՟aְ^>@O2hd@˗Y}@EހGo2)QG) PFᔵyUޕveĤȪERLG (}eTzH_} |V 䙒xiqcH't-9b@ǏG0V9 Z׫u%s%LSw:gLl$X}{Tg#vZ.S2ղϺWΒ%h mknaSy|Fu-5O:daɛ߲ Oa c\?9]:H`ɏ&smf1z7?= D+kP6^(?l H/k | ()} 3ROgg.iG-. ͔4H|ZGY0{H:XHqԳRܤ7pvb||;ev@)qy;3}R- f9_Qk{₩ե@gHT/{&KYJ_'`Ϫcj%' {7}u+oټ ԡeUy`FB` !N59lp0/e\B4pinҸDe|z'd,,Fb,Y0 !_et IF/ek<-'©څ3'ڒ-@Qd`}eר H8|q-L_ ݲy%7([E'@p)%rA2G#%Ys@zL ;ĴFb0MzB3 .e_@ a_pYa:}̜ьѬ ӜmOa"?L~0vPo**M6 c6\8SOH؞|)R!ފ>N`K8[[[eP"%m󶡝;DALq`}ǧQeļ]EDzbyGGJ79sUҽ8^*Q:hn¸: +Q#1,C$D'̶#I޹ E 썝*#eQ {ѣ,<̶1~E-RKtSBtA>ǹ oG5h6"E,‘U|40=kS[ү(=?pD4"?{^oh+h؍oɖ,!9p|V_GFl>[r˥h~G 4׎J0(n3wi3#(ub-%8lW1G%~x#\ed6- L7hw0e>̏?Ң2aZlPLCZ6l.zO(9~5&MhU ͜p.yi7ڟZ& 8>ZM#w}il v}rdI ̂H.qOhWCX]TbxGZ7:!Xo}7B.PZ&M!>Ŕv7Zn '!Flml ,7-C=N*g]ʐ }I^Yֺ:hqr}r$dkz_~^[WHI@$ne0AUvFUu< p$ݏsP3';M^pSB1EN^*#CiI0i'7> OTDiL$-ce *cU9 û3}WK7-7W֏D{ \Vi3<Ԉ5vQ[3ڿ(g U+29HqGl&GN :}9Gi &ڬ64`5;J4u bhQZgnMQVb5` >bd14 ELz|F|)J[8ԓmW _+qj<*B4>3OuTrvi}  tf/:~o@y<\&9|vBYRVCRZ.r܇eJ:pN7ήT4yցI5v‘ܥE5K7.(QQA1[Hֽ`? söi0?NMM0eUN2͞E>HsFDߠJjSաm YA%28rCҍ!]3'irI:oGm)!*pEO4=ϒت/h}wL9u\B= d 镤[pwVe> ۝I.瑨@/Ø:>QfgP'w"1nA>BLe8AȈOT]D42mO!BFC"E ^ ~|P<87:;%sĊ"HNPzpEcp2ۺ=DӌF!{}Zיּ #MO,|"&x^xXx+9 f\X,U@vvG[N:x4Xjer%XC.!re/ԮqHy9Cxݥ(ئCES쾟җhPE~=A'L?2aYbq|ube^$A#p]x91<.D'K=;]|SE J%O^C3_䞜[ )s]Djrm;S;pB])Q|1!dzdϥ\$aƶE\OQ-H; 7%Zfd8L3g}>\.a0ym5WsP,m1GP6%.Ê}K l|'yd&B-4!r  O-&nYm59jqx{\NT7ރGs.7z @ nr׮]VMک>O o E-tA:,XdsJU˸N8l=GQDKu7BC*f*0.1 =]TZlF}[,ԂwRQƐϭHWн{׾tA=C`-[ G '=u؟PxwvJk]{ GݨM)ƣў Zg'8y0x,uB/!<|‡&O %يŁÚ@=JΈjtF;{WmV!M;rDD)֛Br)heQW`o'2T< j_G.]IXKn$Vdkͣ\5t|>oK[p( |TϤh[rX}Gȴu\m$:=Q\ _8Nl^LJtʷ>{waoRχ[d5rwk5|9VPEljLIQ2nVv?-|-,ߦA,ʣtAexha` O{p趆5uE#}l $(M [%Al^#gҙBMB*hW3eƲRݞvQTRe*bN36B Tq#HjKgD@`(mT|&rOu/_csÚoB1**"A+]Ўvr gʈv/73%M:m_Y4hЕj >!֞i6n]kZ9&w1Q|Iٓ3?dפq*tepBu9ECEl+p6_z#<>1&[ cgy"Q ؗPι:p2PDj4UAku~TRݩ۹ ;}!oC2[/JJ6lʻfބ*YaXxwiXOpx2q0{*1[o\g,I!Sb I*lUZw:};{52CodՔ6o @+PaF(ŠRT86jN*+uEUH1OAؔ|f1#NM9+ҢLpHf|CYNJv8~R୳ИR%oN^P:u}boiw9qN%CxޏP }l~%.SzcWPȝ?朵sL%dԨ2|?N-іDݾW(jdeeL!?v;<d4ݞRB'&.ŋ* z}c4LQ8'ي}i%۫&JkC$sKYWTÝ1k0yDjmO)zO,:6gP=0xi RT|16t-:<ȤR^; ^S-8k, 2Ә7 e D~*6ܻ }b`:@"<ͅ/f'եi[8Mk3+x.S?v-䥥;a_'LIjHq$hA*fQ]]*]Wm)S*vARi"I@V+;&r6E3 |hmEM 쑺&֏r(M %U!HK ,>/sow .W!d2ony: |5!.tA[m>nެ–eC[ihd- TβXz %a'1$4s‡ɔJ-?{^,D6'd#t|qFi+" ?Ⱟ>+i2Uʊn>ԽlND {ώ Ĝl8 +) }gbܲk< E,]^bu%* 2[4"IJf`DtygۑXȌ\?nQ)mIebE/ ^tUv"x,)AY}GV.KiшWچv\)| x8w'Nc+8e}zkmAeձ5 6 CM:2E)'<nj^܊mQNyPT0763X2U%f5.|2@ 0?0T hoR:[ ĸo#t=ޔ5F jPUr?s4/ܬlyAmD9AqX*Q>{N?XQqfEL[q9pEn$Z]P֟l^;ϛmݧLƻѰAEAҧB- aA>]7̦(RLsΧ%C,!Fe B@.˳ j4܌=-x%s8x˰z2a{FI1 W7gYC`;vNYU#7!$:t5yWQcL;c}~Tlb-3Eb8=nqNV>p?h#WWgn.ro$B l#?폷82v3ק0\j Ǘ]yyWT:uWw:_̊}egclcF*Ӂ1kjr6AZ Ԛ;~ rŦT0Pa{xz4;IrH=wբ+h3') ~(^+m,nOi_tl|Kɹ#*NGL9Caglj=ݾ:AC ϳ(3>U*,ggnJ(4!UTT%6 m!a"mٗK9nCNuQsJS&?EƻWxM> ^=B?OHFtQ &P2 S Ј@oٚ-Nn֘J}ubҺ5jA2[l5^..Xnq%3ߍxv@!fOOFdi4O8at/F EkN8lPrےE*pl]PqRK8Nuh.~&{cw^%`u}2魓9ϸ͐:Uw VUzZZvao}Ѡ!Ҿ?V&:#㈤i% ]r 8%kV< wѪ@8ӫ16;@AE5$Bq--~,!qA3Y7fc!p%_D^7oa&1m߅C%p"u4!QITeRb|t w(I*=ҟ`{%Rn>>H<->8pi:*3H_Ð"-oJ5ցߖrxDT>EB(vc֗bk^8HXL2vlc>:`ИFThn(J`1CL5#xHΰ_((5=֕ͳ&|BALsz7KS TIвIC(0M#jmca-lF?1~kpDjwO?(RzuZKpz\l>.٣Ui)vіN}Ӷ{c#֡7߭CveHre%w)gXl/pR3"rGР^8;t:SeY9X #]*TOoDg҇2]YrϜkۙ*@|-0ٕy`O^l2fZ K+ OMt gçU4o]^^8?K G) 1amv}_NKjOR" +?)R9OfÌۜKIX GmXjX@w\({!bGnؘw3|5`t2k C(ЊFG`,:5TY-(Ev "?dX1ĠKd#㇮O+ͯyRL/*!8$~xm'V-}7Kd@V$$\-fU r摌 ?$ڈnn1aUX#ӕbzW` [f#=σюt3l/kifXc XU}F T hy[{mG.aoI1 ]12u8G)*e@WW%A5JY·Okl@։*Y;oQ. ӣ JSrrw]e=^`YI>)|F -Fߢ5}$`K?`YCp5=Q$[kY7Je(\'||<0r>0VnŘxqsRtZX>Dԑ$!9MX|wXAeb~$t>wݜ˗R@x|Vb2nEnq%42P^,@'6A//-_><99pH.Su!;{DTX^Ɂ ,d&W6zjFWEc1)Prv-WteQ؄.،ѼyaFD해;pjiL;"Q,? B/ޛkfKQx'|{6$iH!ުqRF5o,1&Opi.ډ-r31k]=z%yգF!ru;ԝA<թ|՜ʆ3I˶6o\\(5O;Ew`Yy RKNwE!,&,9BqXҰ`Ԥ;&_Ьkx}ͽ,!^ |D6 3D5U"'@`P7n41r:*l0΢9)7lF`xHHt$ jn|O[&--a]=YjC54l{0$Z,_[K; s^RSa}^񒽆bTi'ap VgXn:\pC>I/~*KU+ISF"皘9jr8& iݦvuu۷T gX1KgcGzV6U%%$eBnJXXȜ#&mwVU|ěV2f1%cT3&ClRa@Z`A_a[I@Sn쐘HW"S inq ːM~j^ AS$D c_V`GJ6:S+S`v¦np!й6QN̩'[Q*OpE$1xvnkyk3`[/CTځ&3L-뭚r|?$z2{o=aynRHL _zj= 3 9>|tN[y"K[7IԡEE~HFr{`2$t.lTh V0uS1@CQK)75u7N!.)0Ԇ13zJAw|ukx9 os]0  lr=ُ00B*vPsXTگ3^mjt37JumK{^CEX١~w@+}9w=w=zĕN!DriDHc- ʓJ1Ab)}s|>J8gGFG(*>t96~cn 8VD)J q2zf ݓmguy4@ntPt p6D v 7p|:,T3=C~0[\X j2&)L!W:tJB_47+爋 ղAb&pffݒWyУ xbRBz6ُicsƶMdGڿJKEw<6cajTexcП)Y{>q]D0 !wN:٪LԠ~@*R{+/"2JA4 si".sVr{G|;W4F/x@MmGx閏\J>9'Yv R(ZZWa#mޱ&<664"+w}dVt1,c9*Q߫n%k-><1KəH>!T2'ekB<$nHv}Q-*&7Biq9kwEq`ʗ&B'Io&W?РeG+H213tГAl `!V b`/HGa_te@6Y/.&cKvE֙ѤQ~8@2J2,ٿ.zaϥB#gz/BWՀB!$Κ*g.csR YlHY Qi79Q07+&ѣ@'ڮ˫Ɨ6_%P7[{-2at6{ ۟'KCn{d>\;08A ֧I/O6KF uD47JӇ{T)fsLHp,7aMf׊ Sܼy_ jyG8D,tI= 8r%ʔj2 )]_=idCIGJYmOzCWyAwjIƝ(:{$ʖ8Ҵ|,z֊CG/?[J=k6H BM4U6Bȩvo~&dBlD)ƕS<9moc ҉K#-;C씭&sl|Y^|}Ch˛b2 Fwg%p>?ŷ`$ 5,i窾ɶ%haJ >eiGH%9pCCs^1.ט:)'niux iһGYaV%\{Ool'\SweU}ܴ M<4kJŽk/4`*8!!jg{ $i& ,l{"=[HbٶXhK #T2q]% |,Hv ])8S^8|rdk ۆ"%axO5fяѡps'NZ|k(GoX<+|Ob_u#RA38XDH} RlB.Iֱ czlan)`߄&΁.(b'2Sʣ ZaCʳlGqi?fFH!$5CohȞ39n b?0A&),KvHpLc񲓂Xԑ($d˺wV.S>9@ʼNZ?9H)3Jǵ<Z6vu0콯wO@ÈM#{:깘[%m,a5ϴkSܚ 1#:ӑbl m.nbѤ]y~{ fQ"^yS80k =*ZX#Q@? B) Fyqep6aU$p-#kpJ_ia+&j܏qR2F*dd֐ȝ`wⅠaa7̀F 7VD!VKt`9P00"_%^gPCt&ϓ\OS2?,b,(i(o!D#Yi/U_+c;PӆYM1j X[Hn!f/(zT;ss@OZZ a w|0ͬ8U^Q+a RZ] ӧQ|TYI9<NZE`za D4U:Oo6 2&+XZUQ(߫f 98vn=БWk&m*L}߀]F;(Y'A_ERK6&}) z\5W.ZtdN'/mMX.5„#\mF:L݃)o܋ҚH8muw2_R|8! Tr.*CwlJJjXHȈgv}6;E<FW,$N qٰ)H?Zbؾy Sxz0"e#Inlu{?+tJFFpmn|sy`IMiʄRT6oT㍹T.aNt,}ڦR"|y*w/h{z5gUiq5@66G)w矢8_#@C]Rj?7|:'}g;Zn}tr@9;[C=Ǝ'tm1B Ɩ..k6?F*.T2QAj[&F]d1F 1{֣QB}@n1>nR٩[O]x{4bL~U(ڬ l%+|7V\>UzvɌ}K;V$a2Q)l'{儞TpCnO5#{jiD]Ojέ瑥n}-hOoc|K7$HL%:`= (Dʾ<Ζh2~Et0 mC4"y׀<(\Laf826)\Seۓ?6&J/["7V"DlD.D;0o8Qa !)vUjHV% gaKwe_;2"B8zQg8,9,OUp3D-Oas3Lx`ˁ aW,ULY9rn;dɥ:IOʇ_-Ev̙(1|,2ψ%/ u:mӑg1N}5^OBQ})Rne>+!|K6xo7 ,_t PK2EAZy?pX+$daǙ:u i*(K8;y69<@b3M~So 1Mzw0>Y/? Fd-@~H1vS]gm5 S!_Qd x"= bxMJ˷蓡1^|"~cARX $T39 w(N22afɟyI@?l0^) tiAQvAҫ$UubWH [ZF?N~488Ɵ ow<ԦjIbF[9w%>kN jLz[8O[sGY2:{[.;z9 e1*E>kmA%0K"u2y|&} f^lͷ.'w~ ijKXu@7?iz↲{DQ+sMHU=;Ŏ$譔#fއ,Nt JwHt]',+J;>6 KqY^HK-2[3@Nb{V-LOFmw#K 3QfQpk!2 w毟=i#j\ c4%!Z 6qvd(*czhcp?$Es-@cPk qVDlKRd.ZWn- U^  [Z%~%=πЮ~E_] p%U%n#ǽ)|ֹ}< 6pƳEGOjJ5İ@B#M2r8StKeٓ w)`cXv`,%xII!~;G5+n9B}#6!|T٤4q(@YS g"bְPI<'p[opLw, *Ds-+a$!* [a nrږ/Ihe>+j\ddLq lw$#$.HHW :6|քDL{ >QVA3zG9,qHҋ"O:’.gطἓ^ۂ?JL?yTI4jk~kL@^odMbpt#xG7[laGY4"1ԕfV(,d(Nrhƃ4$]A"!_PqI{d7M ikybzכ: iu7ɹ'j>+flZҏ 5+%-. [JoV}@ ='( ,{:oh]j"g"'$uM a X#LBa/sƹeToL)zTD*3տo{iݘnA%J+iX.;T֊ga+XOۨQ$CTZ$xVs úc#^nL>;L3V]E5Y$͕,mߍ* l.cvjFTDK)ǨTEQs`Z^f%Q $>d\fWdLqa3[IO 8Unz砃hio/t6nږ%v4{i&7@-1=IsxLRi$mhae)+ B]ſ+ZY#I0w'TH=&%J&hEz 70_bS~Y gXFaU()Fn\aU9co&W<)?|# vVP&̋-1Q7G0%ʡ՞v^pEPyiY~Jc b6A$sm,"UO櫎t "~nܮu[Л>G})w90~5$+ A!Ǚo~勢KKjJkiT5`/σ3v k'}o kjմ9ґmIHϠ PRPJ*C,׎%҄T]qQOb!xpj,I&C[7 1`FNfQ DC;Okʄ"> }<1 B"e8:ϚWMa=!hY; 'ٹ'j۴zP UƞtAgFJxj BgΞk@`А& O-D|nE׼)3P:&+`Z3=`gGŤac /g8 zTdVvl;p T;VF-:7_s] p'űoyMۋ>?;<(݊h( nf ějMکDb9[TS`K2|L":$.>_EaPy+ o}ȣe ^'4vʲ%lmQ&!L 8az]wY!1][FFZI"SYT JG<6|#47[xN C{MV5|`C\͘'ԟ>' _|m5ĖadMOCδՍ)(^* iKşkt($2's"0/ _ z}ܳ ro??{yU>? 5 ux Bg鋸)mW)\[ m!,Cx\=x8͗<鹦n}WUPe2+?/6|)뫐64;آJ:$JaTaDC_,LęݭץAf&Jq;5M!*wuhx (exlXi؟YhøfuŅ┗ZcƢi)Ga+-_UB~8$bzǝ s,(An?C+Z*_UU|@x"⠩Bkc3"AUqJF̜z[>|!;pٳmfL< d8^JPwYhD ]e\B9'⻅ :r];#i8ڙ)gkFQu;QA35m%XbQ ScĵQI%g_Z"yg1Ԥz}P?EO-NX۪Ð}X)5z?f|,(/H(FBwtަ5%0n:Fը˸Y#b'jjVK%IF}E=Du애Tԭ$@3r*kLêXRuXpSݖ-w5ŚCCǚ*ѥg1Fm5!9ܒ))O"a 8 %`ppq+C̉<e) qvOL OkSX5${?:Tg9i#QA 4/FH Fv_;ʂQfWAC, 3g|kp3}88 ƫhBdj&Mt4fRB A<(Y:\u[i-y%j:g/cy=/ Y옹jgc7DO?SzmdLcCJ$Q ?Da;Os;BD;XH\7lfp#Pc=bT1]/Ɯ0ԚUg=ݾa^ nR_6kB:5r% JL9[MMw,ֆ`ۏief& ]7ˏi{T$7!?G6Й#Y]J6;8U/ΣB^nTIltse87db[JoL/*$5j՟Qaefީ2/3='Q# I  )Y;!֑Pc6 =1I2uQԟE:,{!e!+~F:}=Lu )/\Q$>T 3r0$/An;V(JQWb.]SVPm(q fCMq@cʤ۝]OcGO#1ѹG3y[ʺ?B 5SJY(+ *V ܬFGwy tz?>q!rWYr#M§,S{BAtV.qx gqKV̇~G;ivhkPxU82*j@ya1W%cSQh?Y=q_Oݥ ]\HWﯝ{v ȏnE/:f02ﲑ3FɒTh@ʋ0֙0\Q+)qR'y,#3|Q}ٱFk '\@ P7Ӽ+ŧx S/0[4ppJw|)' XoG唤%rV0TW^dHG#S/|<>ϤgVViVxE+ q5]SU7WI!2VX=$8q,r2P 2`(W80 q}t:m6W 5eY^Nicbz~S0‰ͧǟUs=`,Qy>Co;NLa2ag~B97Z Šv0YdpfPxlט\# /H^AY0F6/0Xho,{2#]9!GiP(=&4FH@5C.Jca"TCRZEK\*ɐ$*mlDL= ':̂BӇL hX=[-DMA&U˟)HC.PBy7zɚVxZڥTɇ\1۰Ip!>25UH`sI cl+ ,yHpYz_󠀸2V,)5%]1ꚵ-2iɂZVTcAC&= V%jRx a2#g"~Hhbp6X( Fk[8o"8A8z -*O+e KYj,eI XF!N$cY2ndɜ{H.gR&f<^=> 0IJvCڶbWcq[$Of9_0*;Ҽ(79/7g:_2oD'BѱoSl'4u^_-Yvϖyy1KryS?23ɒYyVTF9۝ltoQjcgCbz{G*5XhYu7.pw/u)dexvȘL +"5c(w/$.Zt-TXG0$>\ײ/N h✶=Q3~PrU{o IoD(??Ў WiYahZe|kS@YVASh`{9|`e"3Iؾ0aM$Yy|xdIþ?s6!CLrªt%tl<#]NiJULb֢CKJu?Q>͊2эHE}+NW paxyr *8pR:Q`bC蹾>{!Z ]yݖ0UQn~>TZ-_+\O=j2 D4&VFvٲ` dcⶔ#ߗEɘa`p,at<8>5Sbt&;~!&t;ډMHj(] ;Lr)(z]M=ma-|l-8ձ·-"@]^ӂpϩt1XJ.73o;x#߶Qƽu|Cw#FJ:9k,F-ټIlb<2pn J^MK|gIǚV3דZtqY*{W%W+PZ6*M*>5Y1PP)iNصs?}*`-ђQuo3G!UǯNsYo}nS6gPePk:"p3{n3]kb?9\2 C&%#7U|ʈzWY.ʘVԒ463WnqCf6,4q[JBǙpS;M6šOMy(QLD*A)(רr 3&o;4d/I畔"mȚ{S0߾B|VQ͌ځjo$bs!0!E!;9D1J^TQaMzFWKQ"~RuHOz{n|)\Z@*M_4-$.?E%KNleJV]K;C+!0tglb^*џߌ<Io!Dw;f}] MJ}&Aʌ.E*y h?2 15$ 2XOB$EΑp(m&z z[V>c)2>U"s8o`sRvl4 vqfIαz5*) R9[[8Y{\.u=Wsq"&Upм~ 4g-U!ѓ;̨[ `DE[8X'Zđyvj$#ޥעh@4=7:ƽ+=}8>|2x C(# 5*}=A·PEnP6Ά+Af_vFct_1=Y E2œC,+ȫDB:Fq:mca*f3X`GKdGA!Nqɢږ2{Sؓ$2MzXʴӎҺZ򏘟66hǥsarLGOl'B hZ~x[ut,#g*dw>T?]~N0N*~0|O:VS{tWT5I bȧc-S =&|{/`! $X-֛[p/$Z_3; >F>]L5&10꒧dž ued\Sښ0ݹ9sƫP;, \QWԱTɳ/G74\3!1w}eңXUq-/.[ P`6=i2ÕfU PH6dW4y Y #*!GуA`ñ0S!hy{V(gPM&r6w? x>3@ai?+\,M+HSMIma#G)j~S4"V>yiIڋ%YAC.G>O+>;:"@6E?Cif/"< m#` ۢlvϣ^A2vwu[5u|08dOZݕ6I}h.dBi_N`dmN\fY 8l큫heQmp W(>L] TܳK̝{[Bc1RZkD&4z<aJJP`~:4cD8kb1,Gd䧺ُꜬ dӡIS#k֫BwC*ZL X\]nN6r\КAuFg'oCRT.w"^c;V-㎛,EgPO(D-ॽY@^58tjw.ylFؤc5ؽMj]8]*BDmY8by=y^?$sqR:e҃vY AKJmaM|K .0խp0(D<m ñ*Oc0?]odq`|hz-О΍Q/+N<Zxd\ ;pu[fl'ϣ@lQʞ0r5X.jYv|8$v}CS5{{oHfh.~+x<6p;K@ ]u| ]YuXhqú4FHV64$'SAP(BR,/Z Lޑ@մmM2xH,c F2[aSNqݒqp[LKi[4r·7鄛{ȁG--D1: 8{ y-cƨ[y.o~Gtaʒ,UuAn𻮪h ω r.~<0 >z. a3i6nrO jHTV(".c}.,*&24ca l>!t O'ӿ'^Q~S[?&hU!lR}4b%?W#,ng\0:+pPD.^Mg;5,<7oOf%FfoO8=7`ϷA(V{`Zxo:/M62K`TY=71HL`Y2~ y.> ucf.dyyj:?d5%]?>_PsTx>ۄ _1 l_[oW\>97 ʦdzA~Ąe8(";z XjL{[Թic/ ׽1V>&l;6Cv1Mp|)PGwyXOw1&*_>fX r) #u2e & P$V1މ%I]GLNJx[n>T#X?u67dk=;; \YC)"pٜ PVZb^dM7KapXe!Ck~]Uz4my4 Hu$m3z-"|d2?pFg˳ ~ؾ+[mjCub<}@rsWwAvȧQ6Wt\wG,| ၥ1-p]±3s9 [P~hU'i*Зց] . DcǶkՇ;P@@R~``-|z*?kEBq&*Ώd Bk6<+1V3hByeB?(H'Dtp~e U=B)2HFlц,`@O`lnl; I#u)bDdV2B&SR.`a ޫܗkot#%l~9{bwěbw-!>?V Qx}Q6S֝tZ}aF&-m UΪF{)}GLw5Npcݗ@qNW΍Wyn;H٤n,R44KKɾ+Ԯ8ZgwV,U0_>xrCS*3M71>Gƿ[*G&4K%_j)r_ixfbU]4'l]# 矂`þM',ϊ!&336GlٔO(dɄ٣\e$[őivպ;/v>CR ǭ,\rTH&╵JRa!|7)c@u[LJ^XM aK ;X \ӺG (3).NbV4݂L6L޽'  r+7}&쑧 |"8,=Vg63/N-Z3ivH.(6XP?wXS w1H=Fϱ7@wNKGсGv8oQMLxڨrj~i)=Q,e0m|kK)-3Ih[3Aa #PrAi26di='0y6X1P.Pigcb|x3[!!vn6ubȧfTYNօAԖY8_#'O{)vi/);1ݜ@5mD @ݍG֕ *Ng M3@-{\.hG!x%GHTۮu(i,NŁtԢw HȻqnSN1# |9"}C7~w; S(\3ѲNߏiK8ƽ?iU_.X RQ `7gr%l^UV*yR%yhh!y^5b3I2 g9̞W)9ѵ'؅>J{n >UcUѳ*WsxHi(k"IGwnzu}9#"h()ΣzgJ4E3'TT0瓂`$V¯f0OBAo)ψMgv&uʬLԝE2,b\A il*&hg>Xк2Jm8{=Yd_YVYKWs3!tFDTsŃ+s%3Ծuc9[`%1Z&'дCef(,W'f%: ~45bfWciUxWޣݢReO`jXPWB (u Qn}cD/r(mƂ/UoR.VvEJ+N"Ǎr@2ݯ("ZvjcN-pXE\7#FH6VWC6 }JL烱 su#S=TsdӴ, [b.TQY%p sq'R@ݨX W8۩>|B,ysJ'%26(b͚c,&BEʷuˑ:ǰ`ɧ7v:Bz3Ol!;} Vv}J xo+O?xH91DsiB\& oakP04&Q:C%Y'ss?^H(]u6 0fʕ%WWWvy+Wa*1߱Yu @iꛑYP*9ǜGA2' Ӥ5l̃_t2H=2|n%qh]ٮF4i8GXp@Ҽڅf*i4j?T q[>=9vٱ~]ClFZ~4hƛ O*.qT'X76:ϕ/&rM3ϵ64NFWJ)Ev|FZ"e&~ &n.vnM 9xDy<z-[B Y[/ LrbYf$S &GeEiHwqVFIsmV,p?0}CdVLE#P`5-e~lĸ%137eD76DPKAѱ憍;~oK b=@/&RJ X+pGob ^xK-XF%f:X$O֔٣ZN4f O+X=-x -l 7A)7U83Ot9t>I@5ͱȈC9I1B/Ds5hm0t$ jlZhʡԇ6JW]i"8!>il57(k'hN| sc'0I+5˽I2Z]񎬤'L=>X$A7=iZ.ƨj)dB8CMsv(jz9\<zk.T%uM]8736"$㡥`T$u#q'yX4(vik莩t]Yw_z|14Ғq?lZ/!koWgoN&%*nulAP ӤTb=fJA`lwoCChy%3‘>B)QG . 8t;ȟgG1 W6.MR7@&G zE_Ns>nx,*VHw3\OZ+l@ލi 06;E C \WG)sp/{) , /iJ ٥Ϝ̐;'K  0iP0@dYGDx65Jbd'_KeXz5]VQj3Ճ;Ca8i<DXT)t!Q!0i [N"?jzZ0pڳi}T1`[R&bx]aW9]{R@͜t})n=0B:`#Td]'^V/*;"mOr-d3ʕso-]s+E\1ϲŅq!/BQNM n;þ^6y&y؅گӹ^}wW28u'^tl5iMA砨vlixK®CGeU5 wAeOk+SqB N:Á/RZ`h&LeD -2&UX )tзd(b_2fz 2S8QBc0C$LEH3;V6kn@.w917.)o2CP ZF^g%>qZ׬АZMiq?+yWtb _! %B.R2U+`xL_#1{ꌥɤƲ _a} oYT&NI)zفѰQvDn^m}_Ky05(FyĿ}[&Pi3'vwNH*\d.-*8r[3z(M{f f)1FbꡓpPZJva"IW0}u8j:0f8F' Bt p8c1J< =C4}# zoF"8ch]JN&I%Cb0ͣ7EEgϴG2;w߂k%{A=2EdDK Z>tkb:'\>65P/v$ҟYmª-BڂItc1 }SOU`fEO*)ĬԳZ99fYFibXenAR!S\לAGHyv[G~| G,vsqL痤ZJjiYc"QTSd*$ͤD찾қSԨ&q/ݲ8 O*&^ z/D.]¬ón|\fTQDFR 4R\u'.__"Sq  S0@+y7"-gSfȗ~|L8B`^<u4t~!x{~&w m̦קGUQ $a?##Tq*W uD#~ԺgRfȊ}Xeq2VِSOZ K:RDZ)JHݘ` yy#;ΚqF5"6Ʉb2zsDeJ&bu[wHlflo8R; R*Ӈ+:zhkBEmwOpZlRn5.Z߹."q.&kRs?X+cDu 1#(ݜ冮Z愥Gca6od 3)P].]@#GTF3n%Ô| !gVvAGd? L} s1"=x? Lx)0Qw 8HV<-\o\Z #ٯY4znaiqkm[ps|wS?UxWXȅ2@F)vA0+`O8=!"AUy\rD-*/l9ɡ;ЕXE~'#ZX<ĽڳULZ s8D8{ztdio!9PAk4?r[6 Ɯ\ *e/ˬj E$!R6.9Ԁf _ѯxM6rྌO?uǕL^&Ʈ ](?E{rsc?'D !.DrF"KyyTXUӢ#@Ѥ:% NPr֛Jjg[em"tTѡvEZ+/>L%\t//2墻p30t~py$+"Sm/+,ոi' U _3Ȕw?^96$Eٝ;a@!:/AMs{'ښba ( pe9LR#6'DR)…6ˎb!'bbR%Hڽq/ [d㳓F|'SjSecf7U(X:AdF4ơOܼijZEr[kQ`FWK9ݛfܹ4JZrHq0;Ų/!YUm5!`Eu$87X̮Jp͑HQd;3>]͍Gپl+_=h f':GNwYF1 6@u7ߧ :l`:`3@ȝ~BHDJ8TJH AX =颼#@>C]1Kp +1b vn`ḑdj2)8Cq((ćKzb6lG2RaamXomEYAȃⓁfx͇/B$钺@=R=WƦT Bփ(q;<(6;;[cH@V`ϢԞ(HS% p!Gk陣gğjT{*<՚%&$^Ks`LgW"NܒPхY 9?هmYW2ËxZs A>pOz6:ɵuMʁ1h4fPY!%᥷T /}H V h(H9ZE ?nwwez'4} gdz\eU>fɱJD"1FS@\|EsDz{YSm_FĊz,'^KƣTG+QyZZt?x :$O:أ;(K ֦u=l)2 5#"X8&>n3 K;tsSͮU dIY̱BF{[xq\$:A6 .ԧU b5gB|kaBb2u0'r-{kco9ݸ,f$h*{Q~t=y 7Ģ^%P~Sg.reS@|ziS X,) l4 ͟,KO9X^m̾*R0ѫtҥLҼ] fnW$1oW#Q{0Jqǡ,HS(5ӷ|}:r sn#}ϥ@8E XtdĨƣ{E37KgU'̲;pRa_mx]FŲ.D䆆բ|ZKʓ+pkw_?A^  2Bt8|u'ij9XבΉA w;٫~NꢫhuX5,SQ rt/d28$\U8)!vyAu7A;gcL1V}A zvw/Gg 6m@`W*-$ Wم,;>X:fS"Q>1@窎#@v⼇~Qo(o4QS$sGRbD6\TlM_KB =)ƁZ}{`[mWu MNl} t ;?EFV= UBy&x+L2؊&v/<`MV1J#b$٥HwByպo&tb *v8tH9! J$pu>І:&aX _;eGo0c&r=!&N_-]a%lW_`;iŹf2iJvxu3]& ڀewQr1O<b .˨.5 ͥ@jO;H`005x'~zFwlhWc+4y&T>͇=}Ͽbx?leWXx}!pTk/jXI( QІLš96,IIdpJx>^TD:\DͮNn JN>0Q9~uЦ;^Ӈ,Y{h(Eb^P@Nm*F kإ e<^#CJ]UO5oVw#͚2*0ShE[MK!1.ny)'1r>:#KLj/ K+^_ -܉HP3쬦OBUKyZ; Z[rTFx8&J[hzP:dr'83QXJTBWۇh{л@CTqNnr\TMZ4Wꝅ6NkF>ӑyNZS8s-bOTBU?X "ZVҭDΙr)}T1aqԥ+(>L\M&3Lv1ttZnU,LٕC=-u +[(oݺ(jp^T< x HrK.: L`y#&QQp#n=p;8a;8"j 殘Bc9A)lڽH6gL<}2uDkbrBb/;\ US۔k\+6‘FջLslX:(J4!?+ڕPB@H YK&g!p;C_\d+K%o #=T\s|DW](n,oU1ou(^FM.4A:} 㜀~3Ba%<|FI]&\<*2fEHFYU2RRMp\Y%U 궡uGmơSt^ HWmaXYbC_VG,%EX(tw h-yC^{hadVPeP\ac7c!hO+̵6PV4Ϊ[ e( Ӷ $ Pkt/(FZV6) klÐlӨ0 nL᪮dY-Ӈ8%0S[_JyiƲᇹtUliS`Am{\bL@9$^wƵ!lzh uio`M]aDRansRn'?"<oqAfUD-/1:c4"#Fʨ- 4DBBԢ]#ñ-*T+/"5҇y)f ~~BU^ o+r! ~4SBWSc f!MS*@5O 3#dNye(tW4٢i:ݑѼª/:ƾ4jo$M~QmIձ^}R`N-,xdݻQ'oW`),5!§MY0zK{(qnص,)frX9X[y"/pWXå_*b8A74{IvQ%+\y<ؠ%c86,]Ҥ>:Bb0nqhzWkziL[aJA2[E?xsI6!ޚ:z(`,dW/[+ >u@MI*7ٶt/5U.>;(棋JTҫoMȫ(Z!Z6ou~ze5 zxtnD֎sNZ Vz#P1# n\CM+ؕ &grtWeS6NJWDH}:Fp}2![`Ӻ$$ E>  7 C^-I2@-wᢡv8%-a.O'k| ϵs;آ8)^ߠTHF˦ ݛ瀺.XӲBZ J6/i:~gILSKI\ڛV B;kEt >JzE'N ? n.O j5}Ȑ)/^]TC=qP^XϢڣK T<.<=/~D_ESՑD$,;O&ЪoٿUnE4<6޳ىwځQPLLEE[FĊBey [ǚ۫;!M'#uWy/^ֈئ/LՎ}08uD}Ìx}*MJsymJR,H/<2gM ǚ咛Ⱇ@1R RO¿/_jȈBIct"zoy^?-)eY擧Θ?9\n{*Yݍ(fE~kgPvaG07ۖ[zr gK"4' ܰhs~ g2:g#iP}mqxI.n2'үD[YX,8YIylaZzJABϞ[Hg1g\w,$dUd=L釄:[ocus iD܌ʵeiqbID[ĿB2O!!{Ei !1- S_=`cHj-|s&8\R&UH̗\Y]VvSv8`nXrW"qB;0 ]߇KWjbJ~oٯ'ܔ&+ark \?"X(VLaG]ŞeCNRK d%Y #ыP\eENhPЊ>z9hEw7Q ^𬘟M;:Hizj(`v9O ߏ #VmT%)ꢟ~oUʷ/?ԪUA3ׯ$ߣirAq&;Z +!to6Ĥ $([x,'2X8\E7ޱ/Qy.8&&ez^#9 8(7)TPA"ƣ\y+رH|c0T-eB"cRl kHƧ,aIPVpha׆,w:&YG>P)'HeKǸ$RQ&f8/1$s(haى ۺ. B ?V]qe$]JxbB5\8_w/?g0p}R&F'P^Q[ĕ>3qb3͞b ;!!*#/("wSʵ9޵a#xT qo/Rf& ΥLYj55su?Fpr94{{s? 珿x3W0)n|teIIpLՓoXL rƳ6t[?v"dFdTΰ:JQoV9]{X's.%!+bnCwgo0&Q*I֛Ds&>{6[^+5[sjqR2itj=්d9#SGTetW W_pWB⨀"lȌ:]\˲:Қ(tJͨ/2ϭ^~ vP&E. byrǫN|ן7N:Ok- ") .1exd<;ZzK}W_D,S8])ir)4."ӯADQa0uLa 4`x9ǟŌ8 A(pM><ןw~&j- Dm$͏<@^Ta1+=лT{Af vySEٟt3ߛor+ Hq>a d|81w QόŅ8>:2 MICcjK :K<`CAm)!׭3_rOi;Q5© 4HrmQb$NF~כuQԠO 8I3> 10e2\<Z ;dlB %)]+>I@VX)7ٮ SoH 6 2jOyДX!?2,N:+4 %Km}zK̷@} xR'}CJL`=$MViQ9 J3^V,3k pµ BHI`}2owXQ 7PY-^{E*H9Z䤹ܢ=VB7)AѢ`i[3Dx}O3)vyp(^ʻk7.x!k64ISscQ.JSrHʹ3f`xc)S`"E엱tfD&QT~8A6h5CI']m=B'Kz6GNM$|VTx"2 cWŋ\M>oVS*[ΐ(͏oYY]X L(l1ohvSL>Up .U @T* MFԘ4/81Lşɾ@j דtr79Sr+ sd\phR ZZyS5f֊ʏW(}ӷbQ=<˟̐:&`wazZ_?dn@IbJ:O5Hطv3 \XTú09hRJ@9R鈅QI娞MwձF'9C*5^Hb \Th&_ HR`_^&P7@: Ū5XɉTg} 9X6϶NޒV_=A{eq z5Wj",8]LS{CtI-T$WDq)=Ϡgp3 Ü~4brbl;UOᮢ[zCr?ʯ)Vs_C}FrЮtvc pe`1 /H- %jZx jn˔ f6l2u,;uť(i9.K1 O!D-\pZz".G .po_8 b#׹^yejvP v2#G!R/. zGƪZ}^U.ZjBѾ8*d$S\RduPd] T3vႨfBP_vM2~*k 力-$IGbc@0*|X[ښ-=?X Et7|XKiw4#ɼF~Iq6,oDG} w7|(ʢeh_V>C-e>uCF8 xcɵhR)pR<9틙aH—1ZGb`U*l `a_ؗV{>^XxG;9 TNJҹQX:K/lA!A\ޜ3ˢBxXfq>W)+Αk%b@ʵSX(X[lf|z<8B8 ze[Fe|%#G~T 0I=,̗e |.!:fcꧭZ]~_{. ,7LH ><ySluۂ ScYLKRfb] 6}dXkWO/wAdGk 9Wt DP6jjf7EQc$DR [\Ez}2: BYqxp645q6C}޴p>t*wScNxӹd6Rv9d^/ci[ܬWK0K9U_?$%y\2 Cc5"HhopF9UcORVo NCmV@i(}A*) D G6'ɿBH(?r6neNqJ+5~i˟]OA7 0k@#)ci%($fņjf$K]˯!EAi4]D0|qǤwSK%SzFZ9ɪ[TO D ! TPuA'+u$1ѽy'~vB1l2VO$͕M|< Vƒ gg1I=` w>lG^;x rQ+ݜN<>}s8~y{(t:BϷ*F޳d\]1&ћ 4`ݫbݰz˵\9cw:pw|7{cye۵|R>`ZFO.ԜyH:6 ;V>Ƨ3Odk' GŪMcۅLrA)[uoJ|X/W'NQY/ /Gw*ΑMRrT _],묹:5>jQg.4"KAP8 #ti7j7(DT6ݫ\a- DHdxE"QBA1^~7h_[C44gItʴjt$y{ʉQ}.EO.-(ۦ+h#>oڙ:XKR+vk!ibsfi,f.Ɔ~Ҭ?xs1W9zHh_Γ>ssKb! Xj?}J[}q ޭ+2<4דiM'r2tf׷M\졆JKT0|ނn^{KuLzGۇdM0 r?+h`$?M˂C\J?d`=rX;JA3aze n2$ K'Պ+2;@j \+fWn(iMMs^^!M mw`ՂaWYWlI1f-6EXhI XRDXdZx9J\ \}DkR~-4MwتLJoioLCpC"\ɂȹ(&j}t >.|p$mcLF1 =ԔL`PAN}dH]n{EX=-qƟ欻ᅦC7PɛE,a/^TaULr`u=92[*eS1ӝr5GE2ko 5{QbLjvT^-/ 'k)5A@*u۸♻5JX_=*?-eJp IkR6jn2N搞)G<3# ?5n**g.Ź+:{i/W{Ssv.in455[dm'26^৚;YϴvYEP -0_^ޥܺ%:[S^խQ;Ƒ7FLV*=ە5Xx &=~}G;cg4oFJA6=ˮ6,, ѱ=lR;>Ms绚p&n (rYxn=fy5O2n<2³!¿"IC̯B~нY-}%϶jU ˔OfWƎiGҒ.3~k* aRd L-^3DWٓ*9::m"vޯ{pm^PrN˟"(3m?vɀx )X )ps2)e"f3I:t7(bJ4:r]B_KZsg?{M-`%tѤjrݜ]/yS~Z6p+=k9%}r h֘GU j{a]oɦ)(d0<ӧM3 ׺~An#g +x"^~ wxT~!a(׿$ǁwpFhsX]0n<^OxΟZo mF~^p,)^}u8&V]/+ $eM@d)Q@Rd~T权~ͰL25RCu7/7Jcf r]$ݴJ- ׷#5gv$ O: s#'&h|W$>Jx6a{iv/a)I@ \‚,-,+i-x+ƂKj Ꮽ8i`.bB|vtP-.hby)T3LNGaYJk'|׭6~)]^\>1ܳ*QMsft@pas~UNJbnϭ'tӀٻd('Ȳ0_9XΙx[;o  wsZH6]PF^R`f_,~7"D"_UkJt'" h|0@*|o$)9>>.x /@t8k:>D (AV6ϑ_;q Gjm]"š.ס#*HpӺߞ .ケ/N-lQQ03DZR+zaF:fh{&ƊZG<4< 58='(]y'h$r4~~qͺPKT'| TĴ&"aRbEjMDm3ӆE[l[ ~u /<hb >Pk7sU;Zl-A/ n5?d]"d7Gp܏q+:>I;D0D}IpCt9x~lV"$峯؎ZWյ n2JFC)m:,p94ή92 T!EZ#)ArX}q 2%\l:#> <$R>ҢѾ5[1X.n CLXK2H_lO19iUD .gnة(bڗ! fդU /JqwȽP; ?` וL#\jK(=4 Hm*]`}?8H+{VjPL pwR5qBrwIm q3\>YvZ[u:iDܹqM>IB%eG+ѠnKۥ$ kDബHNT>PZCk6ɨw ό@Se7 TE~z<WÑ@sM襴PZP*e\rSZsrʔ}mF;4Gwo} v^5!Q-uQ`D)Ƭ(!L#5R711BRk|]Q3d!j*H@&3:lO E!(gTtWB ;@vw) +=&cm] +0yzR&?2\X7=20|eOYG@m\fLY;4˧{ٮO*$e1j Qk*y v2e/9o@ȥ4ρv$ tAk9S~:f >^#sy07ݳd{]D)2cU曪NJ^ n&-քP(#ʈ&^P)GW봑Mm dl^gx2=mR!.'v^@jMhuLqu}ɩsH0HŻWo#DGP KЩDט RGY NۭOYH=m)zyphh~GZ.>JTG|pB4=W^͊/>>BJ 3}3l5Xi[tJc~i jB ,-/X6D!O-|71:nSst88^zn}m!C9׼1:O a>#a uXW\MC(9{R yJ :^ "NdA7~&Q9ʌ;iSV{.eUJNaJw RY .[lN<Tal>|r?Ţ[ƨ\ܶd*7Sn{`kxN, Np137 xd}罚ΏuTܺƱ,^]+<׳7W7Ϙ# O\IUm 93w"[Hwgl(B0$bdAz? :}1]2e: gaNhYۚNj  ˞.?&)xȶ"3Z|B!Gm_Joy1_иU] L| ,}ա-ˑ1']]գai|X?f}o b$1DDvw8ɭ\q8Pۏ8IWܤvV >5 . .ꝖW̙>-=@HZ4;{rҒ>H^sԽ7О3 ,. ljlQ2YI2zxMsʶƲT>;}L^ հbv'è˦tk{?@PלAuwOCM>}u^!!I=Al>O[!7O d 9(ѣ.q}/잶mǨ)\Kkc!0,rO >ǒZ+1k1 D?RUp0HwQ{ cc0b@f ,zQuM)$7[AhR,d6m-5a&o.t18U`Llh2'7 v/IGP\3]|g0*Hgai$>Nכ=(\%t61 5'5(N%&62UIFa} YCi:>wFt9_^=iKk骓̰o$DL౼'G:M5%>kst&PoqsL%[H"эՍp'}䟵]a,e(>9Y+N⌦UY;c5eޚ:@mf !ή =6}8Ʋ!t/W-\\ ҉F!u.MA1꾌Q{nOȡ62%YpB1/NݮAq1I[}Rz>n]"w6+oمVpY‡> %_-'3wCH]ȗU.*Ma<"!KOぶE%YGޅ-3 c]I@Jtٟ] Y rlo_?{מS=:]7cY,*~׹nͻ.XT4$,ofbm3rZMq_ kB)& o M Ak3l̀Aºw>_S)h*sFՂi8.+TgUBHPK@0t=(࿿2m@nrǺvf- ~@K{rFÂoנ)aIK6Y蠯%#`w?yI ,X>kEl40S?d#gq l**+RD0#l iw64IQK1߲"&E-WeHb+1(f0<t5$P>>uia$Jׯ0079jzG.=Txx:M\A3w=T"nqsD-F #客G!G'8pF)=xK<6P|%>>ʼn+D:kCsGj~5*_-?ݫqƈN2jB†@,kO)ISki4L21bF(  ¹Syn r$O.ֹY"׍Jͨt׽cRj{1WZ=VXA6@ 5]0 ^+es7Pœ=N4"TID%tiVq].hR; d7`o -t[e7b Yx/C%N_qM#`p)h`TT-B]Vȧ>;3ԗ]7oeX4Fá/G!$ 까;, sV|́ F6umڀê;DN$$[{xeeQ˥ `^|_VJY9z$0qI}҂b3sKfq]92N2m[6wr gESD@J*6)'R\o{_f~~1#9yK]$hpVD>'t`AY7V*' s`V&Sxvi3Iݒ] _8t;׀)sV\ R+>d? $sn&WJyR`u96O`Ɂȇwӧ 1Q>~%dÙ|ZH)dM*WC҆EjY}U I!= ?8'޲B 6^.:΢jEUS\_@jhq4'vekM_Х]Z-?;ix!WoNINblq2;}} ;G,&v5ك &}hP5+^V;mT8yP Vu6rݏX#rW߱gx Ρcvx⁆%*m S U}4!%))?}^QmV\!ʓ><3pdgyvm  fFxDՁw%:l8p955) whO Qp*48^׻5-gW5;*IIdsԝh h+_@┑DE5 $WXE100=M{3%RSԥQyW=[aa:x{Xia14>+@P?rx QH<ؙ38k㒨g%Q_hʯѦW_\Ɯ Sbt#ڇp1E0Z5j21;`/dB<*eaW0 їt?iV\kzzrF>;\Z'Ԝ3hL+L:TҊ9ޡd_y,\@Bqq@oe:xSa#I$D'eh)^,9m+,*YE[9nj5CZ!JKA,)*']Ծ BE>/Hv ;nZ !3F;x7~MPмHd'gI!=kO6IJgW%1\߉[ը[бWc:zw.q瀾A k'ji}DMO^~ӔȻVyK5@k"͖kf =1|ZOnAWY%$|Ç2"?D B,^Ux:Ct$Yyc[tӛ>&FƧ( `BF4kߘ&"AiքĽ(rfB-8ȤLn]W@aMA W?5?@ tD4y4Yiٌ Ģmn!ƒZ\kVf !sTK' TJGϿʏS1OiEy ?gRBnR\ wOdq> ߕ97w`XR Y<:yE XhbcZ-1YȂQ:Dy@X<k?e'|Wʺ1ƵIKLT@bݦ5 y 0h^Ҕ:r01kqY?\čerp20Ls7v*",;ɱm'?T;PLA*ůjǦ.a^w\W_}s %"Ro&bWz}ߵB{[v{Cie 0 e8: *ݓP`vSl7j翶DYtj,Ss٠4a򿟓zk;Q;#*POL3Z. !+s)DtK=_"QtÏ⩯ڥn­}~ : t,`;wb aNG0IZv 0).:ϘxxlZ& Z5bMoMha~E(gJme-b yc=Y Ȯ&Яy[ifECJХ>0=a͒ hbBjH9̲B//[VtÀ#j }jSg׼l.]'0݄sRGόjIz(0Í9;mn2D2v`')/FfWȥ|))>AJȟd7M~O2ctIZ]w\q77 I2,?ʭ7"[9o'(XS  &w3g71 dUy~]UxbIbR*[E|@T袴f@zq,FoΠ'܂̛+ȟ Lena,>'! >WZ|z u@k.:k{OF:~&UTSc%k\Lmt!N9cN"nO+i,q.1{SM|/0ɋhmbcm`j034䱓N(OH.xy 0\!S|eZlMT.l̶ƛ 19<*lk7.hwĦȩU+7eSRLqXj ea[Ewz;k˫e0)A0&|jt΄#=1ʱ]LI6D~P0sK_Bָ! FK}յ9[kˉMUH}"&d\ ErxOxHd{!^j.M8NJ\Dqi؄*aP!C|.\Ćqp3`u%/$GtK{tu;BmpߔDzT/a,V6/K# }0eCNÎE}ʩUGM>4R^<C!2B&$njg(r &y߻xybKu9cqL'Pi\mhH{q5Izlijo\r)΄ù[=op΀ΉZNٓ0_Z.urQ,Ƽ!8Gu"(d{ ˺J;N gsR!Ƚދ@5gv j@\1)5ՒS};d4U=Pf #ҮtJFNv8>jg =G4r/gTPv nxxa])5}*Qn;ˋ.Zʪز?F-_3._늢uz;ڳ,_ڦNщ1B +z[C{uqiɳE |*3xb'?_7O'T2m: d).!Jh<}:Z?};.dKq$5ڏ;|᝙8LGZ 'lu0؊r_:dG͛ߏ6ZKX~S}<Гju;v~{1ܤd)!iӚ6s^t5P{Z mCܗͧUsȱ^F؇ɳj !@aԅU\Nk=绷F,-:ժ*"5,_~ A>v7s#3 CS'n kho]ifhG D<ZgTZ2}Vh4*u'ruZX"S7R@V@oh'>>niDVQtJ XVb!UL{Ǫ͍\`96c. f+`1F|J^ZmH2U JͨW!NACll^lMmD##k촩z}V?TcJvkL[i'?С$/{~=BXɲLaItd*!)]͎϶CD^ȫyC j54SE&(+\9\|j̜4+;m&v{y+Z% &bPI&2-ӗ9K!p5q[{/I+(u\1Ɉ0\dUé) G[`luO wC-L} %@~pp)͘pPae~LTqdEsB3ûS .uw|[aRR(9 s@ޞblQSh~1 .EFw-;?6Jic Rya"G+eԯe*)lr5NXRg9T4QF ?Q|F(YTx*A5> nMP V6#L0oB]$ 3~l,KDrSJ!w _h7p'¬k/X3ٲd]y_% n(@TɒfZt^Ha>{pDF#n7 ϸu@8 SGs:x AMBXfT~)6;{6r BKj+sQUN H,&@o5d4gY!qն@8WZD& 8Ho*/{1^ i^2Vnq00-^BZl.g5k]ꪻCbf/6YQF=Qq&K; >hBl,;(@+S? vǺ >TaKsD5(R,_5Զ^Q }q;;-NR:q5A7  !*2s]Zoہn Խ6jas58d7yPG3?G71ؘܑ r_j"AHmuZI#rLe-ŇWeK+KXWǞ#ſXc%ܤ yqb\.]!EAK\#_B)U2D7MyEU!(3b f I !r#gBSաKȬQ6LUDS=fV P[V;febTZgydZ_5IqY["vg$&.ҚYb`$st SYtXګ|>Dae"bar"QZH!3=GSvdHͿBCW5(ԀteN\3_`vqfR>YГlρHlTPX~p겇 #]{:| `7g⻣r|kkm:"m##⭝>?5Ϭ ׺'7Hȯ3- \:AUŋյnnl r##Qq$nZnq nޢ8FP6hͼ#KK,z6 q ^ k͠'2+@èv2{ hk"I,7/L0TWm.?򍕽!,Ez%ag줺i81;"G; ` 3VYW3 H$nm<0ԗ-zq2[ky.W݂E!C⏴3DqG/б KbC)vATjJ7 5pM69DkQ KQ (_w`pA+Zz蕸DqbE\tRz+t?NQpwEĒU @ry.I\3y ϟ|kEG*Y ϜԣCI~{>!:g]jm ޽ucEι5 ^-%;!caA!e'W;9/BD? sbq{ȓ槒۽'Ek&,y%+{:yϢNVFQ#=1՛ 9#zymʃZ8>+ TIDrʔdXz@Ȇ’h&8[fч d9ݵ9I!SLڥ~Fٕ{U. ԴC:B)f'ʹ=: +׭z2& 6u Crri|p2Fvsx?ar=u`mܯ|Ew=Wz;'<]3 x[jWe;$?h<5R s5I_! m:r 3Ϊv('%n2q6nJ_` EA=FJ/`k̚`{iõ HPPim1v5iKוHB:ɷB s"8^,*k9so20Q!0|qw̖r0߯UVH8z6@K*?5L&;UbQok;`nή<w}-'3S4r.>;J ]q{ 4oLZL2 /1\u~ʷkQIt:A#N|֘“KP!y8QWyB=z`CCSB*}.)-l.9WHC@ Ђ]%9-1_qU9M u%ߞVG@^a5 tRhYxŵ?ujEa]38Xj]t?%'NK{>UV77P%16վ2Ј+o-2;iU`mtf쒧e$]+-XE`W/H4;8 nLsT(w{;}9:7Då^~O[$xTRA";(N !E4q@d3vlRF>)4df/Zױ[^YX"\H0NL@_χCMjxSl`ˣꉨK$YVb%)b29#$,e1t?ǥa6s[~DJDCƕk޾>ˍ SNuJt81/wD`3Gpd$PkysLAeaD usaf3@ Q*q`R'ȭ[Ԑqvw>׀83MI 4dhi"~[iTb![&aya,ׅ#ݎY>jo)Ȉ#:߄Y/9֢gfy{8v=jnUMs^L޲6ZH9Ks1,@❖}+:SIҽ7w4ur0V4fU !*vTQMr=4ư:F;̪)`etYww~y LIX7 Hjlr(k \$A Epܡn1{eG_HL0C՚#MGˑY zmfj#24yn1-=eYv'.nr\sla97-_Âa4~?9Y%zSpzM/֣QfW7SCnJQ,V7$ZzdLUj\E&B*qps/!xiTxd ?5[ɗ~7āGP#v0QãFz SJV~V^,"a J7D 0Sk3P!^%"P<-|;H]߂>r-o3%3Ǿ$B*{m5Szo%_!SM ApꁬS3$;8+:Ԛksqj͐O$<"%]m`4&j6crb0Cr[-0B_C *U "?<[ǁ&s)(RX<ٌs?@-OS2륥.r=<ٻl#M1 a=:L\kx8 8\I$=򊸧(]uZ2+Y T-=+A$TJ A% @jB?lu0m' U` 3/֌փ &|eZKZFORΊepxgucJh!44b[*Y1gE +k\k^O5MÃ(ADHviuJfp솂.!kf [5=~:AN4Fʑ{?ùU%Rh.9d dD:\#?׳WH>qܼℍ07rhs K,:"N%5ܷ͂pMg-YF/[jF +Mr*/jV )OE#hlcYE"UEYl,?o wQXJFDzIܛ2YƟO qdI^bDCNs7M{dS?4<+Gц(d\s/BY85#9 h]U1z0Co$0l'Afc4IdbDo,}܀gj]e輙~jZ(Qۢt:ą{~b_IZnOw A auEu~,dK1@1F~xAli]bgytR\ȝ FBqhcm |u^ (>Got,TC#a;×mب pg<ӣ]XAnY{_MLP'·V.NM/p*yz6`[JqMÊۜ\w " ś=1>~?A0+$Z`q$9W/=8ոɘMAEӳ#'p/ J5zCZ%МwåVϣs}n..O):1t;evs'MŤO߁*UAOB'7dnYSF=׭!$eJ[ 4\@hJm`C.Poc{ky+x_`DknҘ뷓PnP"W;FKNNƌk˞-/t&vS5 ?+D'ˏϓf|VgΛo/;ƼСʣ_+!Q8&`hV=OeTK(k1z9BegBN*K#ɮ$FZL) -:M_Ę8Xg 6?E-rnG?>KM5]K/_?mbe0T|ڨ}|Qt3\ūO5.*C62NBN\%^:EfM (+\?O00U+,b>bkڣޠu;AWc 8IJx?:9E ;s h%1Y~_.& Il{((7W,AWݎ{Bޓ]fXR yPȑ}.6"[$qΜ^bJز( [1oRPeIfE AETXhkc-}{Gp9 @x 'Q"W sb2ݪ! (Tk}Ez:TN7Q(gD&*8PҏMG"5U e`+#=(۸;\~єk(v{B{ sB1lkMMT9zN mXT0 !_=T-텯>mgp7W\U^ b(x>zKIh>Qu-[OdgޖW21eXl[x`&(wœv5έ$Y?[@[9tXOEv\; esk L{(E ž "9LA砀BM$TI A0b[L(ZWVإ ?;}ZnݞǦ|csǵPl%vJbw@ R6i9Jb8 9JjСN6ɺlQwLxn_ .S0yu@:r|]? g5E}L_Re}>D^eGENW;TLȣ-4a{I lK5$ I.d& D3 I&Q۸(JO$r[H84ZD1x*x d.?)' ƥ4\ScMqKŻi?_2);`F%[FCwMP&CBdJj3QZM`^`)iʖ{Z0{H> _3JO wb-X1`p"JytRuHNJHH۸:/829ƻg&Q<ú]{Z bOSGNIK^,`hYwACu҇~YuwE?~0`YuW_ݒ/L$L@:}&Q\hWHBֲ_8jSaPndMoVEC>]3K(!v֯L4WsuT\ :"LT pٮks[|<%~1cE"|je#4ּ ݖ0-f|b#kDe >-7XDK GET$yr5G`(`nxW37 '8h@$%5VM/55ԖEzpx5杗=k(2&'FsRPYji3_U1Hz!$Q\IQ6;,!͚bj@](eXx.$;;aO&t7) k>ԁ5‚H:(ey ER'H__tW}$M~;@@n4ve Nbc"6%5൳:}.&vi['~+!>T"ǖ?y~!% 5Լ۵'Z] W36`w31xyK5Ȩ ׁ3W~ <{N[ "ƞ-"ZF]O-);gƥB?I?NIN`!6w? :>O;c 5w׍'-5}rQ* ,y8ZIx祒p2#b2zjUbfl> Tcћt'O&6px :!z%8NdM*%@ZvT'S-s =%-j6|ܬK 4qy74TWO v7x:s-5Oo] b@N(9`j؎yb1#{3Yo m 4h4[w7ZZêTۣ^`C q %[nxSIfs3)Eeey> *4Ðtȹ|;f4YaH:ndpsimP'1 =48z'0Q[Zw+V0s̓cx  0B5PN$gk4Jb }CMdCkMٖGt`j+)Zh467\9Ȅ?m*]*,Oŵ$iZw'1z“yj-s<Ӹ:%[K0󢿏Pr6 æcW[-J.sN8qi5MXK2ؿSG"7S2⺚&_.Otp͞m% N^}U:誕[XۀL;Lm/̚][k\Z{jSMU[|fk4J_5{b;8L=va ce թdx2 Pw1(=קD}n˹ "Ph3e*OzaV1TJ-^qYW&a> Xsjws!|P[h7OMzz L?\2fY}@U)(vk;vzR ^a X/Ss`;a@|[e*h]cͩ^[z kClHG"L>sчKЎ@c$El>hF?ohPb}loFSb]7u$҂Em*j Xkc7Knpv1*֐#A8({\2"ER,,ɍGimƇ0'B6#6g*TMO͋}~3WHѨ2GX6ɡLV?Vm~|!,_qu BzeDg %>1;ҁ U47xelr2䦈v}R %9'>JǓPP 5qZxES:&rկN.|{UWYC),geW" hN ܯ94 .%ͩMznY6ko6at'$sfٴm vv3Gj3Zu~# d9pRdI3/>98,^1 1N'& Ş [cqgCt:s*'c7ւ?KZU-0ٺjĺcv#K0Eg:M;JM!HM_aHMNuvٺ2h It:G>lo<_Arqk;'i)aLEe7"DtA?>t2fƸ]_!JHakf?6`zzffU6S a66)=MC~P1cRG<ݛu ׬ؖj=yWq]geQď]Ӟu@ TcgƸjqYDwHϞ`zS*#xHpf_џy!ݻQb=Qp#DpB 0"b.Nʹe8/B~qxm34C SJ1;6sYލk5)!ZyA쫎b)h3_)ZאL}kM- gXvq?= 2ww!+5 $y(4 b43EƩMKY=?\|Q7Xu'[y vG;:]vJJ'䫢̴ʑ.=C:VZߒ%pXa:EAb'Xcdǹc<)swH- .J^ vH63-;z[C[0bNt<*~>`LcWs` FҤN!(\H3r3Pm#gB5 !V{-8pJs>~x0x9I7-v68av Emlpg|"rM#;XTmd7%ËT-$8#`WnHdL'&m if政Yȫ EQt@t?KJ3#@oqf>36s#`X_` >Ŧsڶofiiz$~3&B3|iYY*Vf-G}wmYA} c0&c??STyG_f T!BJVB %`po`Q'W`QszYM:̀:+};Og > ntJA~lLCth|ȧC 8*0ۓtnfNqVCx[SiR jaHFB&[Lpnu'0w_+#ԓSd T[:2{ Od4y"-.?i5/?WvU3+y(5r;mxQ9W.>S,Q-|ZOȈKN.\ro,gwԝ^HISʝV5(a>X-b5 鋵P_T&w tQ5]X͆h$&t_ XЛ׻C0ڪ޶& AKK-D2GVb`i e(HI^R4ـE1X+2keC~D!0;5$ms$*Q≡t ~MuPN,}+RY/` Br 8/={! kwi$3)K. '"ཽdV8 cЇ'M"SDuBs=ҁ䱦_X:~'54\8/՜PEv[F`5YʭfPգ 4Sjr+~`.&m\RNm8 =|BFI6q5 (>W 2e^7a. ;N E:fJn&M[ 7MoHjp=tBWӆYUP@ܯtT£d_SWl{v1lPۗ`E6NKb:p0Zt/ K"Bfly|@K%~F4 `#Uʴ r7^tFu{|O ODNݨbziT^@pí`ߴ_*نBb rWhaTβY]z`ťJuuTGri6g;V47 jqbrɺoK0pb^(\bGQ_Zf/U5Iše~;2Z;mO".hjWw314kL9[72̴m3ƢomN:dt';gl{ؽ#bR FY,SE?MNe.RzEJPt.P%pix 5.ڽzLE-N,ix g5l0RBD <j(ˆ`WI W5.uG_k%am@n&N|,E̖[ [DYf_XJ")ˊoGvxxbv 5g|8r#: @y,4֌~24%a1YN[ju3@>W1I1Y S0#2"gFX{\}%h+4>9F鐖uaYmkP0ߤVu H-5̛J#䱹Dw.F`]ml44vnWyg'hh;KꈵǾg5kKn¯U}b@ K&oEy(z?:iRq?'DeQ6 s"x)'Oen$y` ΋=.O (\b(w,crO~v ,xUKrn!:wPHX9MsQ+oBl 3*fO&2? Twz /jdi6}sMe5(sMU6e>x~v;[Y+-50gK0} N'3FO)x"NÜ`wK3FrZ(cpgneg Izb7j2-߮(Z%T484+w2&P*"Qt 7 WvqWSGT"$B !U RZ&4^ډVل3 S!Z:#`O(!j9:f !),Ç$J_[zgF=As^ 73QY8>'Xj{MR.[>Zp=`WnTϐ?ItxKs2.j՛f¥CPdi@jOP&Ĉ7Q> ȗ㍱ZO>7>YFhnq ~VYLLz<@;MNZ[(&w+r B$=sb&~~+AKfh< 2 2,+7 8:xbDqG}߃MM{0^bvNK)SĖM5ߗ".0ÞOC73Ogy!AZ#H^S+ef]UE9ZiUv{dKGKŏڢfMŠ%B0Qiא+'i>i\ b[k#* 7eTuGi{\5)o;h?U}X3A;lVc[mLd$!ƃ:mqke794UlfÚO"7;m3Ay;),u: -z[e.gI2 a[&*r,gOϊ:KYI#v*JhM8V5ޛ(tTvbbWǧN {|c tA\ח-?rSMO+(Kx9\`|l]01+#8cJߠ7*1@}`ޒ _3Bpg@HԬCn?uPN{26C e޳GS&)`~?a8MahmF]%cA+] 9`GA7( +xGӉ(1 c;JQ4\nCbAqc ̜fj1/h6p`[-!V}_0Es)0_T-mYM?ϲd/do]W*%OD B3ōЗA` IgD;))9s Q̙7lY#!W)0D`e9{Ft ^4ĵIOBZ!%^siZ=Wiw+N~olv/L旽 A&@Qmc@A [T,VcqH%͑ ߲-uO} J!3@ɔXEI%p\`r:[XB58.x8*,2'\&Mԋ动VH)P g Q@pE۷/7 -3&O7 '4y l.x_:piZ d)c F.o=i>Y5T#TKߖ` ݕ$1w?+B$-oi tY 1 *#y5Q0>HD[(|6 -9 > ӭ: )jB[@0BTKsQSo@Sa7.2G ‚PڰkXZn=3e~,)-:7ahz;2y>|@65ANľ[8BY 8Y9GH>ԛVXA1cgMRS4x2Nwf$7yKYG+sj yj q'@x KR3}((I.V)%R'6ʯ$W3Ams5hD6}in2Mfa55997wH-yM.EFJiy]J%8B=KsZcDPpC^wKčN.S)NFg>h='s%!]XZth9& j:l\T[""@Hxϔ1 X=Jib1hmf?T}D%8ɫz?DEv%tzJA76b H?3@S%I3&bgnpi0IWM8*-G8yg։ډ+n5(hWD(2% v]ѠXbo Mӆv:&j͕Ѕx[ٖ+MJ@T>,-xIr'Q{x,L~Y&>xH1x$`[ Dl j6ax^jogs_kܽe4=qk |2fvtMN ]_!AȄ'xVf&1U/807x"JG5kWJুMz+`V(Ǹlx EJ4PI=r0VNlt>пTn,Y;KQ\]nsո:-S~c~_܊Ozy{v0_${iLUO.BG0;6 O [ᘸ6ɇoMkL/^> "t`scrYB)Dž_>v1 ෮jM4V-6H Pv%Z34u"2)J\!ޟtdJ8F]n\uNYz9F;$t.DG,!rp R/)y-7 N})R]R<|4:kAcsȰ$NA0F%z^0\Z_^NGl\hTUZFDpP0XpB/ j2،ǭ'=X(څi-l d7gRv'@ʇe"KȺ8T;L:f?A ɥc8|jv.;k?:Ͽ"Z/GCgߑ?~vy@dht|[,1zrd ~n=)=kw6EѹY@ؠcKtޏ>x;ƂKP)=E3 .}MwC,0C)ypugsr+HrBXJW!kL[@`*nr7g2ʗ:$cیW%|~ M*fu0OX~5cT— |$._FH#cZ>ky:lff(Q;єR8q͵u#K]n>0Toe=EXݴnH˥Hgs[?oE|ӦwzKL, *2ƒhMnW*<}ǧjC\q*g?&+2|TΚc[_e[:̊!bӖ8ٜR/"Tߺ}JnB?h#tL!vx5^*(LSQ ڔtwL>(WHZA#㧔<',_AgE'kFZoǖ!5e}7Ʈ, OӃ K֛HMhMbM?S xI푸YX^F91JLCFeXi0Z;7Ww@rB>V_AZi2:ۧ-0ԟp5sFˑWN엫\l.'`s/x^LDK %M˕R%d6l o?o?HxeP,Bk 1-w?` d:]1=+cxb_׉ ZǦ w\/~0A!V _w+`0=:~)K8PEdI,_37 [}-YNeZ3k=hJIqu0f#iRg%^Lly=3q5')\gI ?U} Սv@ ũQȝLYp1+2*5mHJ`_pq'1 u9Xs `Rv;WsZXO03/a i NJ:n̰J́Kh+@ ^4u#"Y-uB<5C8^6 ,!j- ?\f)qr@فV3PqWNIhYɴAUwŗDHLب+2/JQ :l`5aA%03V]{|%&ݗvb&#؂Tqo@Udayq1[Z_fP% Ӗ.hO8':;i~%j~oŠ Am?]C$2u&W" QDn,mY5T%bl>ylJzS` Z^\,]K>ɾ/Lg7z1+"nK6^P]@6<추%_Rx&$~[o?օzSL9AV -n^">gc!>RF7rA2aM  Zׇaޙfgm)yKQPމ+#gMxg_q<r#)sGNpI3qZOKHG>4HC)gIh, Q|L'v#roӋvE{ּ`2䖡B~0<]T& GeTAS*NғR]Ð{#Sje:t1>k"$Ue}^УvUbc$ '?(8p^@.\P=BJPqcI sbP{h~kH oYR( :#Aֱ[t_L 5~Qf# }v, Hѳ8MrV^gt"Q]d#8~(*m KX ^Zzfn\_0w,rca`B Q#%u9ܪ0%H%EyZQ9F {8 JB+'RN~Su?ZPEݳHVqv׊E9]֍ƷZOjQ3Nћ2mL4?X3䭴~'nmaads2^n}}Fv5u-F*2uSv׬J8"d*ic*Uq-dE̓;Z~9X Jl r_Qیl.49̻wԢߨz)$՟ vuiA9}^z]v`bkw Z`1g}՜L -`I9}|dc67ud9ި3A4uQt>S|M K  &툊oRft`ȝ(ѡn+`T5 _a5;$#S[|ͮݤq5pbTe ϰZ=oE$[32kcz^g8z% 0B>9\iKy .,i5PSEZ_ n;/erdQK,d&ʼn|tUe(=Ā kWʁ|a~G8 C:zU"FKN-)U ¬Foè un$qqTu!?mڏ`//6l˩ gs,qwkv!S0 =M|uYd /٥qqPn:qDݟ S^㎿0U0q})]:BNvd>M^1i-#H*c8ZNbdx!RÖf*h*슺5Vm#+ͰOwk}z0Ko$*A]#sx~Ii,3B֩g6Χ9κ\zJKMܳgVTܷvoRiGfKRmPZ,)4C-8#U-`!>]3?^Դ&ye*?9,5+|emcs̕X̙H8c_,i,C>ھu _I%" )оELi cMm(TL`C:+a 9zng*NE3?D(*[aCe<"P!{ _b [PR4S53>/=عP,CpAw]3ݵpM/A.<-&0"ͷxAE}v;#k#a-e2gx|m i|y aȌaͿIЏb zB2{(8ykU?>|XYusjf\BjM O9bcjoY/?k_*UX@mUO3̔rM^^i"= S-.bъ=qU t^ ky5Ln;e|{OuɄ+8TE.k4vOX ՌĻ$hTbQ-lsRISM.Y9aT8Cu>n>>=rgEbW{P3z4mA/y<*91fO@-?Z`$SY,^`mb(~g -f2QG/UjeFEDy\73r]^ٝ-֜;- iQvJ%aTR;KAT( `t+nsO q7;kx9YKH6"GދoY @y1ִp* Ut Z]`AbvElLl~מl+ףuO{DjLV!H"i6}K9mfӘb=oH{#>Ii{*o:i3*Ϸ*MKpFYc9F{i#c3Q]2mf٭Evz-5bk y{2 k s(Q2q?7 l\!d'Ne rRڀ~2taT_;J9(iF9)8!m,' l>Ԯ>b\km1- Q ߢ5";t,'!T!t`> zHQDwUIna`_3 6@ŴuWj]d&V$7`3n+˴[KlwxLSHW]#Ȉ39m0ZLs7 _3<Ec}ϧΚD  6(tq!9Uax;SDdn;Dzƣ)v \oTEu<:^UbyVx SOXUc"f.A'~Xn)=_VunWSʣWqpkJHtzG}KrC ޲PmZcJZlx{Hj˔Tt*^8JLGW]]ڟok-b8NqYzTv4`&bP) $)+^{/%ޠ@ZCNf!xj, `* njL4SL ޗcr Thƍvձ)PZEhnr0+Kңb]|QDn(=IA NV= @e gB٪1}ZEzIa…5SoDNl?;"m3_$f9C:cc;[cc 5ß)` .s5YM8否Xb ]}QYf}6\ظ2#եJ 4| .ga4īVR66+ T.;!eYxyYm)GWDh>X HL{ N ,q'[?#@@C;bz:yfuUg "MGQ?赫cZ.|]qp]p̤]^AA}Z`P;%8S N;MG_D!c8jQ" $m6m-[5?^s +;A&{2zO/AwIԣe%76WM:'Bʾ[\ qS\ sGE9)w2=OB4n KO_ߧzǭ>#uop3{|ޯk<.}XH!L]練y=KQkT[ϥ]FSD-5=eYUS4/l#mz>e:$Nmi#dri˘AU^p3z۲bsd [eE("r-oy7zQYsbo_CcSV-Adfi8=%{-dtOO"<Ͳ//dgsnjCHI `~.Cel|m8_-JO,QXT&rVϭzE0~J̑5e⽊>z#"S(,*[IE. M,2    (&Qu>Vg\i\` 'V #´R}xf}{ȑn3`~gIn9I,j!R7GԠ5 Nk䂂U>޸rC9dy~ oJfHJ%\6ǣaB5Z歪vk%iAAG „voinFL(^iX>K`{d)drF7*ܺVq45e\̖T񔸩R>"?ylUЌ l 7,jOtRxzN3Ͼ('? eie!8v1E;VdXBz{ZYv >TfB.4whoӜF{S~wų}BV9 HĿJ0-( eU;^P]VB۴/Qj\~ E׈cqx& O""&5Cd;3OzD̻9YΙHrp~Cٌ&[ &D.У{|D)f%1O _e.p'ME9 -ANX⭊Ðj 'BV3W81VD&hkdo tOG:?̈LB:+6';x}/9?bG6oF2u"G{f@%b`坶fM/CY]nTV-PI6 .KYc,cF?;5;Oϔ]7J_⒣w%:I x&NO|:DWk7IvDU SP<+J*B[s/V+iVmOKZnw.9 H 7;% #J84 G7N'XjۓIA,(&c[(1I*ڨEVdAhcyɮrlEHp\EnOd'ʔ%6<gE68%|uXq^&cNƲ^s;g>ᱚyV"kthrtoHa?Bfu#&-$j9>aXDd4]X`^dTHnCo/f3X&uꌥp3I[SIBa %&t[e֟X@u"U8$i?EOl*}i,Ɓa<(v;-9|b$ɢ /" N 5dC5Sa q'pP4+eM8j8TWI K$L;KsavGmCK2ӄPaˮ]{G7hª_OA(YR4p;k?M-Flӏm\U&CQ{9/7Z>+@yu3 t|+vr׶}>%e-.2{iv,6"G6MW=D;>yDeC!mLyl-j.}h=۵ kZK)j!5T6'.@a3գD0CO5rrV6^슛riKeRN]0A{㊦GS| -D3aAф+;{\~TbKˤ<8z(_s/UJTv&hg)X[[}#9U0_ȼz5J_b A1PH9L!7a8תMs >WL6Ma'@|ϒf)N6!~/I+FH[1ݚ~YdU3}aLm./uBM% \JgGUQeCbN|,&o]h$T-u6F8Ǟ_8ݦka}|;P>=;1~%uØ|hx;}h"$o7VcS'h dzu{2aNE7Y&@ ] (] Vc(fF֝gZK7 P}*2=z1s} &c7oZt &8'j}IG8JydiJ,G"q{^4A;󓾶 5p:pՇK#=T%Ǚ`i] U^"Ly0)7֜8EǴoX7=FGb2b$pX;xRx㬄c;래8RRo<;n hY<t Bșw$Y0so3,ۇ7q r\sU!kOV@ڂ[.؎56ƼgU8aò"FEx`$*rvTY&tt5C_׬l88f6v̺ۻ\ l?Ḱ5A49 3x11cIu>D;uz~U[lSy~զ75#p{k! ˳^;(İ:L ǼA<AH%Jc)asfde#:'%ٜ!̣vS ˈѝ}r9Nɇ̒%iz(\:FY"d =AeG S Dqn,HCAiP 򷄨ڍOi +sш]w!#0xʷT~&nchByO/ŗu_ZC?dŠP"፬װ]ػ5ho .:Jl? "b3,إ9e1G+&qWBxU Ĩ 2@JP OBS_/JVN惕M E1{ʾЃ ڱO f0 ({np7\M۠`%QCA`PXŞ7N>tɾ]0A]b`┅w 47*1-c󍿅T@]F1o%9c$`XG8(*PcXX SQdUd=on߸#+N>tabcu2dd!<[vR [\k Wz  y YX`喌[?Fմf^T鲢F#W E 'i4y[;0dwdoۆGP߽.hpYfq+fr/j,WIg#P$->c*ځHhH=SF~ 9<|:R"4%zT쁈^b9>q=kglܰb/B~~VBꥸo5-fwHh`ͬ[QyHhvm͂p3nw#rr1CP2] puzyqr'xrHӋ)-jS SBH# S02I3ё wSҸfݛdd"?/a0r٥Yݨb=;;8 p @ט !e>dtNF9Rxe91IV_\XJ!iF.lZ͛.#Õ=EkMȲIZx,]~}z-l5G^X0Kɳ6ЇԝŧN~2$.h7#TT'ܣzeeՃIX٤+gyp$ ܫM $2ۯpihZkrųQE]k`PdYISa*W]I/Ԝww¯fމm`gBZgUO#!9d;Ldo%EQu#26g@s,r1ؘA~i1oMo[Q(aUVd!DzJ Uh62aEF*"4!%_ $RGAx_Xi Ҿ$+/T1- x^X=X(آ-~sm>rGvCEBzF|e]IgN hv3:\'RJY%5yjW+f}xLTY]6 }^;UO`ܖӍ`ИfGSC*N8\ˁe7xS<-Ft{7"PUο5їaڸ̘gU"?j 'Tvi*9|2 %g\ZN#C.C- $: \(i2x(Ñ3m;|4@P sZDwG"⭝4!ǛeV\ذ1.r< v|ӑD֍WAP;DoR!Ylf@?"Ib\k+mG=ȧ}F-: :]v[}Z6oJ"l4ßy~~Ȑ53/z'y6/wuR)CCI7`C|׵Jrm뇸|3nDr.ݣaR6"5u>8 {rQO^mf8volf"Z+>'y<~bVi4;@'FOQuk!OزC08fS cP|[pjAMТxTvm0{[4OMj?b+;S|Blx64;q}^բ!NX:gb^ݽ7 x ~W}w"l7MCLNcQuQ˅2֋{ֽ7o*$I"[/FW NcLz .*jX^u /6: Cl?\gG4,Atqf ܈^l!mmG yĥ[z|~OT$Xk2 8ϋB xA2,`',R.~.VȼF2 Sy,IJV#,:VɸM xS6 -匜I$QqzfY.[Çf^(`e⿩Zмh=Άdx&aio&D:Q.\~'urY+ެl+ࡸ>yN/d6?F=#,Khr=x01)ݏeĵv:3 =f?3]IkM- -2*2NvwSH-6+o= 'T^exo떐8b}R=OR0}o@CɄ4OepF/9kpJTk.6]XLkJ8eP<$=UMT@4 C]E:@ՠ0%yՖ33Ds&Wz|o27 @T["rua8{gBY=`pX3lx۫WQ]0O6%H ߲V =]/ \7,!ȾΒCjcY8T5(=v9‱2튄cpf}d9 xS~^geUoD#撅icmJ,"#B/M pe7מ8z1{`k-k}s?#MS,wjTUmGݳ17j-&8C8u\\ 'eLb DH/a"p8 oytu7 0O 0ߘU=4صI/e&^ kjh>o4Q7! A Qf_DV|X?iD&R2//8X㩮-N(QvD˻N SԪ4-u)6*Q;oZG&^G*icj.A{! Ifv7t? m/w90[i#u6>@BwKKK+W,-d[&=_"fYDN3ⵦ[Lwڦ Ncx/(6!fM˚K(Unni}TskJ{>Ļlt\{~)|Rv`LqKHmDD&3\mYVf'-l6Wc..P/ Y|3C]Yщ PP t5 (XnK`o&5NZmyKMhLy&|#jZ@% K^*N%sh(@0 B}jMc!&\zt1g䦶 ҈m%U 1x*1M[UJ>k3yS2,!E2#{.D.h>/)?z}XD"fvֵ} . 6S(6v]8ӻ_c`ٲx:aLf;)~;e0Uv&JG'*KNLCh>sGеvv-^VuX`Auq;rF_/6+ RJf.׭|cQcC#fGTU3|2.jځn~yutޓ%" !pΎ2ʝ[pyZ!dv]-Nzxh| ƧICOB#Fѥo@ΑrS <-Y/C#]rGp=$?oN/}elu4QtIqTsjePN(Ʈ!pv1q0*jDЂ]]˫s~ѵb@j[G?tvWt{̮"q<7 TaM|+iT0k1{ D{-x&흔 /q[PKYR]lX5ջ1.|qr{Pl0.?P|^`ZLYw u2 -NY7-aN+]FiCչK^1gPb)4.k2 [2E6k-!Դ/p3EF#B55:\űS?97@SIږj4`J+L/{ԽndISpFcs7^Tc}ȋbNkiTb&&Dy,L&ZL_en|G u-\/ ζ&#_{ .=9('GB=2[ͯ17ŐRVk;_6i;z_b; l1|;~7\n bYIR+ĚV(~f#=ރSՇg¸j9;0Z cv^ 0PZ ؃?)v8uB(wJΟD$GDkVܕ"0GafknVZ - |Yx}ͭ3xcN5&4i/Xtd]ܹMLqB{H7Vb)iI­FDz,:WkY eXpc6]PWXF"*`*r#&3Y=.|)HHha20-d%03 RbМhszy !hSjW]B X7̗XE 87iݐ#p3"s6\5x1pQ_̑  DYv% #ʃQ,~fR9@ߟ΍@t4ԏf4K)erAAo==:jn{&rR !y[J$q8Sb+;..؝m7u.%#Z[ܑ|ޔ+A,YWNq?s)JI*-ט~A_}3G9RZ~^ aL [*<ֻ7j3f2n}`Mπevj|4enZsNX8 ]qB;!nPg ?J`38 dCFaz?-0WztXZ}%)1k\߮>[y7TuO'>B$;NsBriJaUd& b|ӡU,Iwll"o/:%VT! 8lȚj^Ж_4]B%y1'uH jLF@*1o+vsJSDMc CS)'DbnHd>XR|,'|5{~F±K rxl`EuX αԞ<<3k+t<](/FTϕ75OrD3׌;XBFZ>{ f~> 7Z {.W@,۬wDV;P2g0^t;{CTyl Sį^q>CDڮ_%A};m"CE%WD fuϭ}xLrO8Ĭd[C+m#nB%+Z]Vt[bg02zCRT$-,k[ss]xd4飡ɰg$Uuʺ<`6k 9v/`טzmz\Nn:YYk ~;4k+zF5+GF *nB_{PG]" 2L[+P/]Nj88+L[RbZY,O]hs0=t3[l8oHHN h] nQ>{,Lrϖfsy$ p~ߥI 7O;aUxYf^{#^ER̹=I )S[C]0!a9QE4}&ud?'NTMuubESc*TMσUB0n]# M  lulDʼnxʞ5ȮDV-;@a6Uv8el3Ms6WNVٚ} BdN;&r .Glhgn?m%D͓FhBLـܝV7 B]$N$ãԢ)>[hkXz4b?yۓuX/w1^mq*>3Qj_/e_T ě8A;Ed\Rs,ŴJ՚IեYf7lDMc-)XJ̤cȌ֟ȩ,F1oLhXmA?:5F Қv@l*d-,x݊=bi6:(Դ B m+qK>Am w |8˜oZN:Z J*[MCE1j93M]k( Ovo3?֭y d8j׆]~ THZ^P kv4D'G։d@#.ߌKO=[@7cVx ~_V-,>!3L# [!i%ͯUz(,3\dG_^sJVP0na@b>[dK^ }#ɱA )r!ƷՈxT*Y= nj椩gIu& 1G4]6 y3OT]xx~\<^ (x|B7e M Eu)i47ǾUAՂ톎6߫PrsdOFAcj&jO\,aMsƞC j <48ƻ1YP8 74, )YҫߔQ(₫Ul5eMkCKD c4/W`/W q&icx%)-4)kz8/LOd0:W*AQE)XV][y1|V^Qј"N!3DRbI~ǒt~T0гGguGU=wwv"1Ǎ.BPVhnQ*'Ne o4ƞ #F_Kq{D>`βټ-jN%+:ѾZf SZ VW)SdBMr5*۟'X8CE{RYuqr@Z<Tf؎7 T%Rg˥ l vwZ;O@=V~O\l %!JsvwR~pÛ7am&7)ƨ %ҽtsWko ;iݚf*= ܖUVCEU$ᡧd=GȍlMB+X ;dߤKέw7:u3 FLiPm2d/(%+ȹz()G }1 F<5aCB3E;:tFgSAMqZ:9ikX嫸Vŗ`IK;NNC }ZBp̓;O%KL_+/E8]89EE%'h0b Հ(PO4?=݊+K}ab1b!Aoa U^^5ܡIOǍj3ȴHj=jWS lT0*dD T(Ќ~D _F6Ci^4ϹZ%֡<ߦVJՌg(+KC)>#Cəq$,ut,L4| P` )pL!SrT\u7NZK9I}:d(xG=C4Zvrl1WW)]܊16X޶"1>H<3p,S OgۻfE4a#6g. !2kc:Ѿf378!I$;^9{_.Pv?O/(B@#4dn #x};M"bS~l=՞Zqm ~ Mm;t{DTPynr)h >'Z3 5xS8i׍0hf|Q"d]g㰸tICܽ 3Pawqwo˟ǵL⢰XM(R뚱w_ .q-^PRd1Fזyse_g,z< _| L 3dX@D"awt N?|D ,簸6YxlZ9nO-h6&e>y7kP0a= ?ٍ>Ҵ$%WN.Li T81fKPM)6l ݄sTx\#~wbkyӳL;a v6 oB(e&Ⱦ-W:[7.W#Gad?D}̉‘I Q|n|I䷊I4;CQ ]g♢MWvL5GeUlb)(C+NS:̑|Yafי|ڛ?&{׍OsvR?h~jkpy<ǩUqa\k_[کbѬ>-٩='EU6o8 |BIr֙L6:y6"Mw"&0xN.Ż.?/#9сN4w >{2I"&V7[0 -{y Tʢ肌&CV}*cP2i+ZHAPT*xh'zYM f3BG z)e](zbMuMDALmCJ6rr$$.~ 3 Хzh^zBjX,]bHS^Ql H#G-m!ݛ*SEg 7]d-'q/JkZŋ?"m(ear\-Rxa_&BE([]ē_?SP8y5]r?h_Ep7'0Qakg#xGkM)~nVJ-ETKx.r}QK#rTZ]AR(ݻF&;kv,YCƖkr7,X#ށAͭqӀ̵l'ou"Y|rp'Orc0Ǟ\O$uT{Xn )ÿJ}~|yKȑnLlw^XbqK+ o]ִ~ a)͇GSAʗݦF 'М7u ߡ8(E h@Q?!gq \@m2G`BɘF}uie3nboM?2s}e'OW2R^\N ۋKďfe'3{_,mViLiA I m3*a??,uKU o;5Ω욹P{tcnV>0OUwBp6?>"}24vI߱$#:_g&AuQ^"Y+dK`0Źo>@X$#zerpC+R|?(Y\Iw)ˏ(|# qTON] /쳁T%])5-O]P4cMdD5(ɜm {h`J@"yVeI=H35XAG 0e?5 B 9'Wh3Q%S⼉:?3~ AF0s(IH;Hwmlqr &;Թ/Yߤ)hU(]xJQ҈RZYƯt{L{qtT8np|ᅉNJ\mM@~d.*:3q0aE`^U- ~@XiJ}á?˭GG0cT2(ja9($E'dҵuߓ *1s#!5CPWݫ9_1]/^+aEߍ{)PL}5"G@ rHҘ;Z ƍg]ӗbwX1Cz-b amAbL1mQNxsJRhed`xU6O*!BTA8eBj:u4=;?(3o`W&T@VQ,bi>zM:Ei¿HAy.WBA9Ɏ-G6ͮx*̅I^_p>utvs!xgYŤǹ=m#Ӑ%zߠ1Rp=D,1SnQ5ipY0ƥgSyH72-Sr]Va6Q|UAvb V~~qp_JV4.ɝrPiACx^ lR 49XV)~ <:d1wѱE[B5:'!fJۭ t].˽-%eM =W;o[BS Dɠ,8O/ GL4g#g-b4My!y;O?)96wj$-?)ġX~SzP"W*ˌE)_m5vh5R$NxV*#ųpݹUK.T\Qpcd w83j3Y@#r@U|=3QSgR5XF>Xa1!"$(P;"5&p|4J@4u=ӆ҃dg Q閁*NҼw/95=J YJl,u((Yߢױt&z v2 QA9(K;C#@\7]>&_]>.υ@I ~xk/hRen%W$)\K:9կY[2\246*A-1K|$ *5"7؆ўj4 ۱&g52@"AoC f{[ί~DņYṁK2g9K4E똖 ݋qreQ᫕`㯡јa~۱σκ:\z%:wxqjb❳#=VGXC߶ E RE|`sZk [2bYD.͓̄=@1ʘb ([,st)$%QE `& >ڵrsp^.zwRՋ1" Mh7ݣR  a:Xz/O,#"eQ`7P$˥=L9,uq`ls$ 1Qn*1v0U#I!XO,xQP%W&h1Y-`ƣ)_zzïA2"3BK9 >&yP "ݳlQsr QE4=xIӤJц<0C:gG]8qGCRʢzu *&ⰫGxՎW7GԵ`Vf]"qKw´q2>  `@r%i/l$[Bf,=mIBHB&0o %J] A-$͇&vå fwHrIC(D(#:o>s6eI>tQ K=u /QRzpvl2l& |,}%ַ\1o'3ԔBQD +-  5/O$*]JY<{E4oٮ!+1㕹Z ,@+o>hCG=A|xr ͱ t{޺/ ˮb4.?m-o=N:;鑤qF7Tٮ%em8~L(y?-0rq1Gu\}FFk(Xdc4B+hv\l:شaܖ5k.%4 OTb> YxSH^.Ni !ܿ0:Ol)GnCgU[M D@Xn1s dLMuvB2k^MxOA,#uFEٽmyPLM ǎr 9G*2?ŞhmInnahu'\X hB-!5AZ+VzJTψn['\` 2bb}TYaXi9O)B>mKʅC:ś@ưM@/'ntd]j_9P3,)_G"MUPW!zstAK s 8xQy;&'% ~KC+$E 3xP9m =DwOceMYyo"D<zNW436AT4UU(T9j;_RMCd{lz3骦gD۩c{]D7f*Nec}XMwOSkXjTdMq^t.6ky_fv?JU9.DkHU@F4V(8>g7])cD&pp;oIζ0](mK"PD2E 3XlV#g h1 U_yBs C {'Q$flQ˅-)d s"⼌Jp]{s Tr}Y1vmc:jd L4G weY!`<A< lu[: J\[!ZPgZ/d q iMUy ]tJn=ސ̽ˎ;*qOk'Bf>rS DΜ gȞ|+ ˤ=^Jlk5_!m=Lߛv0_0&/zJҘ++ZgkSO SH#/L4W~0BQyƻ`+xc( ýuw.e>:o]Rq3b(l/aaWf+3!ks;Ik?tQ~Bw|xvSMs &Ah$3gD|+]w~6DR2 w4caA.(6FЛ6&S2iECK2wdސBa"*&U?u<9\Y5l#"̌7e\#06$mXVD>a!vNh$Rj{?jM³o8AŒ%yc$6h35bd 5Ayg{ZQHk#SZGyԌi>GʖwJw~^>C?.5DoDw]n3:;=뎾}ѧ)ʈ͔vAـ}|Y5-ab :\82x#P"z.\+^BR!ؖo $upݿے!~ kfÈsƐSZhґ)$il7zɡ =)OAM-C$7 6#K(^"_`!vFe#@9FvgȴG[p3m蟿71}ąj/'2T;CfqE>;GE3Q0xh@k;Ա.4<~HKD_12IV!gcl,~^a| OQ֓ nx@r(=\1O6`*)Q}oM9K'%QGr&6#RRQkhF&EvkLOfm_! )<],&]S`ilz (%"EqtVeߊ.Jn(Ph h9|N@c_fw/?8m&jGk"/z%꺽ΤfeWF0b~ kg2u=g9bQF<1 ]{mAR[C ͌r;U]r8 CM~q {PyoěszbV./ef&^*`S ?OFIcKP!7%}CV` Y+JtثKꅳ_@BH_Pⰱ E5!5 ;jBWq.{ߓ}w]I gb"N6e״%uE6M~6ci5c$l|G[Lאw6\kIX B[Y%{ j»pqNrP Z5`IUSt5mGh>S+L2r6,pX' bb1pwa@[.S,5l3bQ$7tr)?T=tDiLAIMXOzN=G؈̀jB\ݏ`3̡'j2^:}89jo5-bt7Ma|U5PbDoiI.d(L15MRفI?%pNG l~P ǧ;X_)zob`8f ?:b1DK*-ҕ6 vs}Y/,džh_k&#QMXUtl&#dw49eQb XM{RuQ\o"-f*r7~,DQT9I'(ٝoVgiόG€%HRD吩(FOU)C@ȹC|G(IoUJdY|C~TU8h2LW$;=,+>Ec\5J670|ᯠ@y_Ne,1=kmt$TsX;L9Ϗ\!Ͷ-)',;b @7+Bj&^՞ӗMz ѪurbX QA0lVo>]ҳATiK Y"?. Qºw/⃿ /~2& )ËU-)TA }%1Z6En_SZoӇ*&w6>TyT_=8~~}d_bܪl'HyQ ,YV_@` 90AG1D^:c?J:n n[8qAI  "[&l%U}UHz:ʠ{Zxѯ/F`U]b 78 {%yZXYM/[k$R(t7.5/8S{u RZ=^ԶBv )k1-nl\EFʿquꁃ smlshmB3N ň:yk *;U$".a.kI pxGOC'#W' j[y'{u`:o&Syp/(\P| Hi+k"Yj=S$_0Iϫgq\3 =l)ϙNEm"/xt'Їf]qHj%, hpM$BA!k$ڿdˎAe R^AUmI5/c4oN~AG(aK@0u+J{,c'ڱAcvXRxpoQDMTI!!YN;Q,2ev4R4CrW[*:i`rx8@k^Bߵ/^w|fKLQ@TΌWzXA]aKxms_4[Hۇ $ڧisSܓ5s ͏7 gw/1 ﭿ4tz0+/4e!> =Jb6P&lCO6m ,+BjǸI(YeRpq ё眛 E73,:qʵHc\snO2p$q)+ \>F+x}(UNbb쌓+m`d,^G.2<~'JIS"Ð 2vjF"ZGu4k!$ ± ҥ.nÀ/C/jg}4'O1y e,u5$O[T͹;()CxF# 'CyfIbSrR ̓8T2"}ۇS Aa|\N'"0___\ZtHK0Y,i_Ee̚GcҀ6>uQbӸJ|#V-O>H`j ۅ{yn6h:Ճ=f7~@ /@Ao LT˃G|ETGw^Hi*Ai#uODb543<T2'DkPlJu@9A%]Z^Ch~b9đ:߂>RO{8ϯ&H}f+<ŃZZJ c0NGӁ`q&.DxeFHJ<R3D[U4.lAL(pK©~k"Z'鑲ոAlMMe=-.j3qI"rK`\]%la?NFUgEAN28T<#ɉWa+:r/j79ҬFV? IE1C#5W\6Le2U0"rߟx`t)L87Q` QC|!Y@c8ܡRTD'{K91͠{+lg1T', j2'Ʌ܄ lh !|mGm^djOXXAWS c/ ;ns7h_szxɏΦpaSpafU'! lLR#U jWCox\ς``#zfgnkJ%d[<@*Q~L HG3W9ޜkN"??I.mHwA^XGk}@xB6ॽqaZf bv+Q0l:$_e̬.̚QpY'Q7Lݏ5Q `wg Ԁ̻I;o s锅^1܏$b_zᰮe~"E!f(+ۯZ!5K{są6nͮOmDYWB}iQ+֧%"Z_D ke (hZvSm}vo"@ӻf…Rҧ$j33LA.=괵z&*Y#DO P [LC<!b_@SdU[7]xau.ՌH2]RPfMhWPORq aa|oA!gFq..{ݏ6KU0=e*RJbzq}9o$=>/\qbw;YڱgKf/[)*k z` \;(QYM 5HΐQH?J=M1@5տB^F j*EPde =`H`j J=ʣHQ+ Z4s9hPB`9KlOT"fdzbI|qe6>* Ίkb4bޕvUSl{ DvM((]ƾV2zHN/ x{\M(Kg&HQe,y}uzED-N0-"e[#"9ި !-<8ő4T 䐉YRIt) Eu%:ʼǚ]Gbm(x|v|[_ّO3DGLJmGE#v;AHLP昖 ;y.Nli^ `\mSɗdwȥq{:o/5|z[9s!y/WTr6̋G\@ Y5qQS]? E 0x?o2nK&Yiy1 l+[Fr3^T< "'0WCҫqK3Wy1®-|67y Tdq4(|Z9W?yI D ޔ|Qr4BF[Y2G_*Rη݃-8UfsHȄOdž# \k\ˣqAghjsܧbt`bp!VE Ě}*e7L#`9v+ĺic54lV4B7}Arb?qةjB{l㕾 P2(&ݹn!̖@l G/fX* ,XM<^zzx~̽T LrASb4lD$0%3!Anуםzl䭩_x \SXsOlC.+yJ{z+a)ͩI^֨:aWh-GS鿊T!f&F? Vwb[ *`ih ZV팃 r(CzoJozBlM3>ȧHп_y:wpQۈy_yF(ƍ!' 8@'UbqUKP@P 30{:ⳖdQz<8iӊ˓kj4]+SǡDp9* ">Xv[_j8%*xͶkEֽћ, 8}uT>'8QDmc֏QS?_m3%@"K1upeS.*3f"_ha ~]w+6`dmt.ŒVBy,(w Òdi1Ix?').H*Dd9z 3{ɍ_8v+8/DyyE$JՐ3u%t){4oLNfwlWZl7r?Y!'#S!ʥCgEϝv~|p)F\ 㹏y,T ̯t02 *ڃ:U;;Qe:rܪa0SF'BH^/oy!;Šzòl ̱hr+hTjn4!unodDz0Ej>2t!Un{v%o hձnPEku6,$|(Z>FX(3B=D%}  G*d]IgBax|+7,.s̓-ā XƆx gPWeg FRlM"u;ǯ Ěe䖊e=4f|1ŋ |}<5 c2vLxCnK Q`&jӶ͙Q GMi(gPv # [o;,gPhfbn:~I%|5OǶ, l81!;3fYֵĆjŰT Q Rͧ=|DSj α65bG0k$ ykll0b'Snt{z} [7:`'}\*$D^ GnM.o^W*X'6iJoIb *A`IJ}BbZTJ':=mŗI59Q6/ono-TY;Э| b$y NKޝwF;"!%`cҧé3UL놥,/^}*,`JF]Y"dpfVZV*§Uc;…EvJ;<i9cvΩ Dqwcnq)y{i~L\ªL\h G$ԶZ#Jc \*"ce7k*_vc>;U BY;č,6%?Ԩ[,-r3Jxk80f_q5 l}Q|1Fr )a+ϐ&'6DE N_db\-Y5* "\ds=yo%RgȤXGZp^  kr}TйnyBᎧr68 =נRa/3KҾ}.&&l[%BZer:o=Fw.&a[q1|\רucah}` _E?lmK]*9D2.lӅba.rA^FbFL[&#>#n/H Xܞg<]6Roi[%L /;gAC1PW2>9;Bzu NqlŰzZF-\51>'ޓMiM(OUs[8__@>zR'űW{BN(uD? NY6KU5^m+u#jș/"n]( ^~ͼr tJ]'.*PbǙ5[IV,v((XDZhqM0 A 9;'շ0L,-4T]DS)ҧ<[+ a^{pH{?Dƍ^qS߱wxIXnآP|~s]yu^e.BoӁWΟ'jݠҥ)>Y9ܭÄr kgIbT^ÒgCaGS/˪mnفJVbec kZI2[K _Mmcp<~+z=u5%MݭH<VmQSFT!+̛+Ou&S0mNQoH{FpW6ewM^SΈUzY$ZD#$_Qgpu9 l_y擖2}01n0+DJAZL5Hbz.$k)k _?Gk * JHf?}E1é-!f;}>o%"w% :`sG $Wa+n('F[zxpdza5 }F!JWCbס1nBxrE)q!Rϭl;|8:>}pҲPSYWw4Z? XO[ž/y =;&gw8Jm]"})]6Lg뫎x7z[S㳇0z_ 6TҐM f6uz2%}5 7;cI 2'^:cއbU5܂0#51ֳkX6=qK/o>R.-jo:]`<ʼnԳpDDM蝨} ,$:i̤{޵l!%-qpWLw3ഌ:gpkh4#]5=n^-M?QSE Urn*?[XtɣH.@/?3m֩8!{ 9zSuٌw2ADKa&_JW6nM;V70]s=NNc21RP1e5P໅/ӡ#F5cnu1YU$9Dm?' ~O@ͭ~Q s[(]M,٧Qs:G %o08ŠeIY&(]iw lo,e'U'mbCQD'H8*n`NR!۠WJ:PEYV6(}g>9gG I:xd\ʝ;CA5_ȋ M!zԓ6 VE-jΪ)'CM{ eYXe2f3(]`OfKhm:.uxfla0ĿW %O>\O+  ݈E%~σoQO:fSq+jHxtiVa{)_<8<CXMJ 1'~z%3xS'G[V@ idEЄrpUM0wq[QUbjzVWRG6^˒oaצ U !Ý$AHhmرW$iY GaGthc&ͮ{N(~CeE*pE8=lE^Մg$[c`"rmMou_ϹGSᛟG=x;g.} /Gv1"^m؋LMH IΗ ېV?q6)sw0M$M@ݹq }g x~""bh^5 *:+j. UueL{Cx1#}/&Ho:G 8Po.L1>R9A1I/IEGk<3?.bkD y Fdg3zbR킔357x׮vP~is\{ bi^D@^_Ny^IN̕_U wgX?k[H8p^}CG$k1fft%|\(8Ip50xb$V(ZZƞf9QHvJx(@Ihځ bkGc%PC-Vޑ|&Re7a۾>0L_+UWuk,1;"nճ)17} ̼"uk1LdVfAT߁I:3 iH$ [Y0RJ{0'эqѰtk݇f'0ңU{~X7N쳛\5ˆr]|^7?I9=7c1ۋP/ۡv Әin1roۡȋB\~چBa`˖lA~:9ڛ<,ysR 96^ U~qr- o}.oh$/bu6B!cꗈ% 2*Z*,,ܔўqdWx%ܖj ;Y=~l~SaS#f8tg19Td#q+Wyp5A |64w)K9C+QӴSLNE99j[#uHNX؍֯)pA<* _YÄF7Ͻ cK 3ðF7ɱf^+r"A[D8PU}xL0'팑n*TNU\t0rt9zkCAdpg|)m 1,ΰ[˚voG>a{p gCzay'5n !cr*tCh\Iwe*z|ck"\FaI? Pחx!5?(Чz?ncejO`T^*\</ _=B7sц NBߎӈgz[&WA ɭ ?ieW4u#z[#;ѤTNNMZ%-&p):c.TrM?]3el>+혶2dp@P;z 38bZ!rw:E]Ñ IC1j/vosv qo!Ą0/:t@ru&@G\&LB_K{0zB6D[~f'9$p0qc.Z}ҁɟ8tPureLX=a[̩9Qj )Y} +mmǬ."o:2F 0OD@)R]?iaFvEiN+GjB#grZv|6%R$Lb;dc9og@+i-5/@<7!/VfprB(=^ A(P7fr RȩA$R q#V(I~=jqh r=VxY2,>WN"ӊM%Mѯ~OӘfi>+F LXYψ2-ɧձB)4mYZ{u-\mJT?-)7YH* {t-M 0.#Z%v[:dSw l4c"$>5~a` KF2);"2ԕ+A"jۡDrJwL eV(x9SdMJdc㦬OjrFO(* &[ptM~l OjǮi׳l+㒗NZn0AS]} `MKf*!}zRtۿGog9Chh4;|ʙ'`pm L - F8*BP{IzK/_w\+'SZ0¶*d0J|ZW{JJ+f }rH ox-!=(>9(ތV=x=F/^!T45K1s]=[)&Yvd;Pڄ aQaQRQ7|W-CZKu<3AJt}/$SaYL}>˫/jr`3K1˼Nn/}yt SQCh%(L^/nžT"{P ް ZQYMŅ_' ͼswCVC볎aM碠]E)Lh6Xppw8MRqtXZiժZ1ppЕM6pkE%Zt(yﭢ"]<7 +% xs'3Nb=~j2\?S2ʓ]T^Q껠FFŕG@&oOX|rŞ݌$oui}kGOcwlD ^{QdP7]#B+Ko_$f.^Ҵ db$|ԫqN(k"R//K{<`Daۃl_=x؅W/_8,#;ʒ9AW1l zCD)D*lڔ[ȱb<8_FPmPc0 DEbt y1פzlE(#Nv> YwQxwg}H폕{C_@@"-F6.ݹ.j;x5ny[WQC7#PijtXS31}!;:c"OoŻ1$.j?,/s|8i@~m%;!>Ea:,u3y[.%+s9cDH]$gFie A Iq}.EWErR^pTSX:Sɻ=ﳝH9kMMv4N (5liN1x ϩ7Q)VIqs4ӷr&&^/W_b5/a%^=qD8,NHG=9}ۄp+W= w8սjֱ'ЮuT򬔧٬&6:w+V1=1䛟z◧\ R$&} 1A'+,tF_mnq9N5mSBQࢪ G%ޠ Θso`e/ɉ1M>XО0G>eD v7IQoG&n5ŶlW@畸pU^c4m{sv*,](,_n0¥bže߬xO*'O*'LB+a@尓_~ոk:׭}'A]oJيs5f?s/j6Tt,;E{%CFdv4p5bSSo\"a0mB/sՆ90>B߆`!dcVuOjHx9/BwDE J< H P` N-cWģ>Z/\ؠ WD 6xk4Ӊ=[[2[-Cq]ZP@oa*!yGf*򭯺אzPu1z,;QNodŽe VdhE[/p NGs#E%>?`v"콲zt0뱵qO<#E8di&gA5 )Xm$_+kW [u%Y JO HdS`BUISjaɅ $O =40@% {7P[c*IzJz<18lC` m3ӿt&`׺D8BFFBκ\eDĔlzEEa7ҌAޫypx6)>}Ċ]MҵV!ޠ6/#g:=& < u8"f|@fxt Q[\kQlBjl t77akX*nAᄡE?M_҄C&k{Ioqy~b(YLgg;">Eg,R* #kyR AfZ\EmHG^dU2n~#VztW<OHEfHiFT'~+2y" :{xWTPaBd|$lMJ^tR$&KuR0G%>1Gr)_aW_z:_uO-OpܐZbKb E,e$qq̡j_醅2o'Z1ޒY佐;46nbmc6ovhօp6l狲|}ʜN4K+wQ`*8 t8"Dwv}6bjҋF+UÞuk.њgeF-Ldu zCBI (2vYdd`uv:WH@7YO&yGF8qSQԖ@RjQQBt5*V.ydVOq˅hAIN7 cGx)}Ŷ 0!wl- _^55_:NƜYn%T^YJ62@:.ǿ Bx6Km[71-b0O: TZTDېhZg,ULCnF;Ƈ7}h,#ILպ)u(2 "%g~OFLO`s/s"y >mmLq;$_(jx^[osΡ35 ffY 9A1c|&cȉVTFb~n1{*" ^*{ UbG(iE7 t S3EPgMtv%&' KKcC!uzfAy`EM]|ֺ/+MceXշi_tn?|8d{CltK1 x_F#F͛ ?j2H;c؅)Grz[G[C >|PFXqŖ,qVp9? D-Az>)-β bx%3u H;16cbY [vYY e-,@MasĨ\;OyEkb}nhM!,-_`9)z`IgZ8fGf-Rt"lyYSegrFN.8䱾 bv^:T)UpdOR#a$qjHY|Fw#teeZ`X=/].xѱ,Omkb >xC1X%hymNC xe0[5gSf߿4;>=mp(@wk_NѢS˅WZKr+oNXsB(ﮖlKx/\BnVe߁o%)|[c~;YGk}ZqKLC'# r6Plr?YHj/S69vg9 z1;_f!}l&fY2ΞZ'T$6C߉Diio_M TZoRs>PƙiIKfBȴb@'Z'ʹ]EXUc5L=Q6&Dzzq9%`{'Lef+{Y&nbntq]ū}/0:rLQP=w=߻ ^`9N4FUAi'&U"fW?%"i{[TPhjz:XOtxsch߂P39 x{DWW9@=mi3J[_E'0&nEI#k${qI4SK6} 8SXQȿAx]Fh0'@u]q"]InWNSyH(r1O@Й"N6H5#YM8X%~8NU=ո[7e&1 aiL P$HÚ)s/LRt&S q4sL2F!7:\' <ǒ>mmM;1.y3+A<츢Cu7L3NScL"봎ZFƀD ?B %aghz &ds $M ngv6܏%G-,cP>;1n~6hDMNy73ڋiM[\ ?B"nCj9G~V]ҭ!XBi_>Ͳ&1k$ðki$/q|cjxd*y^-c}l== c2AٟBaV19LuOOk.q/!m U43Ȥh%4K=Pf*ϲGXEƪFr3; Cn6`ޥC#LRSb-"nnO?5NۃI|P=Mnw.k}3Ԃ]r}F~ƙ,9p;_y1r[v$%m]B챜]).\HQ|̂g0hT[1`ág]; {UGT\ͱǡ;#61C+PBvîŸ "G*{AP[e1acrFh;&O ?ŧC Vir\D%g5e\Ek2 ]qs_͢e($y3Zc&umIzAR/h=?[r#}4`:5ptFk*ƑҞ|)L/U ;t? Y{Zny|vs(KLwH~riET'pg鰧`tu?QYDSXIj- #h`G趑/i>|}=abBx_t&һՃt|s=OҮ̣RTk'gcPC")t4%n~0}^L{V4띅ڨA&w? I ~ Ⱦc}<"{TԁlWv. Qձ?>i5G9bݘv$eMo=Xp*;݅rC ^?oI*т~,6LhZ39j}! ٖXT7}Y*3QXW( sEBnIOq~&W*huLu]x+5՗T9"#hNnXQfdWnyhtkk|.2]y% T^\#ڵ$h;孂1ϯӡx6\:YNZJ#b +&.wAHO z6.J{ߙoack#ȹATF߽'2MP~%oؿNux@`,X/D7^!E_2P~Bћnfc}nE߫E _Xyqv} 7j ew9UۻAA¸׼N掆Ni y: <8(ZFG+Ep`m!Oxդ^,t"N/=xdy7AFY*ZEL[<=#u𵱗,Ƈ27Tg&L9?SՋiT u;jc8v!uv%a'GS*C^>|aYs,%•^p02oj2f@oKC`|EVv}asjbB"|<ŧk`"6+t ;X-? U*e~)<%U¸3I39m#"y/4 /TZRTU9@rLr.B]\h $6j-1 5X${[%$'> tN|=tw5\pOƚJoIsuЎ4 NIR2\ueyh<틦3zvVɮz/f99F5WRM[m#.G vMW b??Bb"Îg-6] MhXG8Jj S76650Yѳ,?,QLF<(JL<3 dP.uĩQEn1;" ״e"hdkJ.ZƨvφYZXt%;Z@r`JqսgGW 03ۂ;A%# J8Ykl1VƆz4ˉ]ۛSSjF0ǐE)I;y6- O B ͪz n(f4ﻯ> pi(pu)v_XCwʅ >2 3pV\DB{e &#gһQ(8);9 _;ڪ![ÐM_p";kE&tl;6! hdfNJvtDIpwO { %~ ٴfxYT7Ǩ[e3"QgUq,SNXfF~5:+r*93XĈCbXQbՋԨ^,9L$GuH}=i`=]?p7RJpecvFa'EF>"~UsPv-(ğn;:%%`p&6jj&B'TD]z FCΨYrm Vޢ4qSivO`iM.8Kכ]Xw퉠R2w[K3G,lVP_`q֓f)IE V >b )D.Z#7v =!!nc, 9L9aEF}8MD/ɞW0쒍XH'Vr<]-Tn˭ѭޓ\d3) ݞ.UeڦFqK\2#71'DiD#1 v8/?72^*^"1 w,c Z2!:?GMm(q+:_-B<. +p6qכu"˅ׅƧR-I)O,8'k{ cƉ}Ҧ:Z7<- .<#]DĔމP._DU`N:5S+ ǿBA̷K^qi2:HpT*PD)8Y[, ֦o N+KA {䋉 ew/hyWs>"<,{('tMq3g9Wb 5$nHłԔy8{)=Y(!03gۑ.ÂuR1ě^)qI_7X b_bR23Σ b[ȧ*v}pA;Zt@j5 R b=;e/.WI"IE\Ȇ4(;噊$VP>ӲQx*%jZ{rNOFԑj|fPE I{\ J^DUlu~f!L#Y=i9c‘"^&[IET"hz&)(,娎 7*2dHUȮ+@)zkۮYN7>:Z7/Fs )AҝǙ5IV}p=4.lLv*=j"'uz'='E RoxV|3oNNJ[M:1rj)F0'k1~1Cyf{ñ/-X#V!RLwn2acj4_?D:yD,_ؖ? Fv/"(iP . bHJ}Nn%z ~p"#U% uGwoUV[m.e `n ,YMraeޗmd˾oșmS>d@<#]םu˧&zN!m;`]eBN h8鱍{18^cEz,rrOI6f%=AOǸG-( ; nY+`"itQG2z{}Gi2gw6Orw7ﱢI]M:QĻȜn-Y#R63A iyۮ0U2FM6g*bÝէXd]?D~G &82H`R䱌QKP ef7ƨOyd8qK2+Ka(y#pRU*ڕk[d%Wrï\UN9$:k3Iq/NM/+M]YBn{I+"Ovu1RVeu ߘ6lh8B!iu;[ FetPA s[U#4v$4NK}@DL1"Gre  "An.N?K穐~Ltfh$Dj<(;&[7$zH6$A66O8r+&M5I#J~x¶5VD[!:2jSqM;}DzD:=J >|p$SOH$q_{I1N#݌Y':SӉ4t¹<-\ D  P[`TkcVwgG^90tT&ƑPJCMB4^"`c>P.s%Nk£2|>|Z-:u +<~zB_c0U]X=c=+ZpG3!xZld#mg(}l].']MVV,F0WUiI?Sv8j JM#7 _-Ƿ49P: uU`V70<81X8G!pTqLoxV2y8  1Tf3rrQ<Ֆz^ujd6H(˘4tQI {h{R+I;+|Uh#W3_u <$(Ku`Rx&V0ܽž]n[E+\a 5*Q v/X{&_W2#/5է;n-@F:'(ļ}`w k&[D<G;lš,9ró^LK.WUBxb2Ԋ&-TJF*荱 T6q9@&BhHe G;)L8+, I(JK~꧵}l1v;T^Úy̚ȭ,[Q0>:$-wz2wێ¢ ^&\XP1RvQ:,|C0'J [~[PuirQg$^,$ܳ3;OϺ-: 啡h n8lᡖz@z }A@v>KT{!V?/On_TJMsnd% \9zUsp/cl(<1@AbQ^-/GI#5 S=t#&~4+ß_T XJT6v5i*>>VOx)P[IѬBwYꡍ*:׫x 데ٷ9 эT]/@5Za<GMfu]O P@, ƥf__Vִ~Qq͗Ej a,]JB:huEQgS ^=<&x*D*RS) :L\,xz8aY+L3j6@FШ8|  DZ~ ۽ zs"irE6ᱻ|C1?NΖ}Ɛ xzbY +v4ԔHlKD`;]0lo)Wa%ޞPRV}PZdh_?55 iL=?U8O~N"8P]mfi," 4ﹱ,C,bXs4O)ٝ0Sέ}*CsR; 3fmP>!%6A}EPM3=1DC'DQZ_%tmbTqU Зj';Xedf5ɲ?aEО9-UjE%+ 덾Iު 4#]XLZ[:ϋjUUx4VM"VKP@W%F,c/QraN hpxrULf=',z-yA+jݥӹlxT$kKPՐ7@K+Elrr-@ʶq{&yYΗB)YY;Eo(66B3f=CiҚ/Nip^hn zl Z ԀYE<*9 {_?0߲i!txi GolvAv'μ(TĦ0Ke\wJe7gct-\{p`]lB9l߂[W-8aø6mm 1(̨^ӉQNhw=^'Dhn,{y ¡U@( 8kZ_M=:I6"L@m ;S%˪:łf#;[ }9\G6[ow J3*7W.oۂ ލi^[Mh!ua46MY})=LT4 X ?jU`Q5cɤ9&W;p. 6+CaNbYf_| vM[/YzW\X_SV>r$?v*/hpukT[Cb'??,luM/6\\4K, [úrNaxV-p+U;YVʅ] > |-]3߂{⠯6R$$僝*{b/(6I dids%|80W1ꘈۧ)蠜\\by.(ayO~zwl޿ * AtDh;xDcqUVʹ Ny^庛j4&%nյEE;7`S_L[e9y}v{ i3ECG60ɟAfAoy2WtӒ`0\떋N>%K3 &+)PkcH(r2t Bel-C%N&˗b#厛'bCe`'*Bw I6,7&-8?/ ؂=@w儣70CxQ㐣Z&PP5ٽD>.Uz~|.;K "Z ߍMEϸAOOPҞu70 $|1 t'GUwMVDC3~2tx"M6(#v0CDu˳ ۲ߤ֪ǃ OK}0ah*]l%i}6{\%|h|{* 6k"8|`;jJAK-GRe'iϳA6m7zYm/H p6Cah>1MT.7z`D+]U7}''+J|2~1U g}gW͏DM`Qc:Tsx JaE?S4U9<> d|0F*ư4rd Ь5| Ne&uGjhd4:f:$@ʊ1ؘfԁPix_?}EzqɎ+,e]@]1]FiH?aLot_i lO2kB Ih~#Χ>֕RGI-zhGslR305 &װ!^V*7lOKń;4<_ې%{pZ B[jϺo)z|8kh|֛; p!TNA,yè!o\5k١\uD&ΐkhxcb4ёDCqM(RqEeFhpȯy0p\3,_&[vI)) U ]P A")9ˢ`=d,J>nF;9J?Š6oq?-6k9n>\Nxs!ufd =%^l^븂D:t#r+:867Y.Rz1F︬1 $Ƕ:Q~3ET< SPG$ m` --~x^jrmڍ'Rhp#SVpq,ޤD$PtTN02m[42rIk̢ LK}6۞zIxik\O%}.d:`\Lnb5|[v°/6C% t$8?$=1;j7Kh1[G]XB7W7ܔˮ[)viZuNjt ^3#6}6KpZziRQPzVPXoJlSS,\ yz;3UVz$>&Z`f}#- bX$87_ާ/c;߆?H2[Ĥ夺:-`nj"t .O3\aÀA3MW, F:.N|u |E|*P<PaSih޴PAڕD{ 40K{éϠAD}uL`6FmN\ RLR⧹ǗؽBf|_5f. )Zy߷dKtƬ4`lT^ 3iI)4Xl"!tFa#$*M" ּ^w˩L}h €cȡkXh5xπ`ڛ`j|D'ݢ()'AnM^3.w9_ӫEZ&׊&"BY3S\خZuW?R UK-/b"ޓdҩf/#Y%=P I#N) λ7-G$IPiRR w> EA#N.b,d" fKG2ߒQgLHSz|IO5hꂶ-(!^X̿~ƫjh ~#_5>Uә IIo–&ީ #3_H"RFE޸q#?3WGq/vpAt{!2T3FS!+0!Z8!!kLZ"(EuBܞ`юQK^ߢwrdoaAѭ4%1@T⻞嗌a3 |!EOhYV|tp9_@<%y|[yR=&+{\!kpXk4 !"I,[S㦓:7i9; f-0qk "ija`¿5jFw )d[v5|ص;Ѹ3R޲Khhrzo3 il `}wo[K\k˻ӮkLC|&xP\ܔ'Uo _PoY7'_:oy ܻP':[w eA`Fh3Ҕ_1+^*C֙Di~lK݇%DBL7]nv_N}pR>]u$8õb.*k ͤiqr?#5;68LJpxƏ@BVK/qF˫„k<9טxPc> O9kJav1xG/u I\w1@7%hG/E+q a 9t[Âg\|Di=nHlI Ӗt̷TxޖTzG.L44&yWik?=.ApEp"֩Z.ž @ʺ ۲A:ގ0Cb+̩~OebVm\ω O?3R__DZZIqۛDRƍQ^~~p4{UY)&iPSq! .o.|xoG;S'0JEeY6չB…J1J jy*:k3&E?C%Q`#FlDgHgIҺX<=LM7!(K1c5[b̏n,笅n*[/۵Dt"xfptJ^A6C 8~ۏ֧ ѲGuV G泵zJڀJg۾} yQ)8|zGfHǏvɛ{{nH v 5|u'".K-4IZ^èܴ{׮hߺoD_982-?NX;I`!?^OԹ ^".wv `A4e%:"7+]ІƙQS9I ZEʳi|юeV`kcSi.*LF/ na6NYvWȔЁ|;zQ~{~؄ȵ/V֊DQ:7\ wh !t\|>ԠJnֻ'4CmɪR<13hUB%/J Ϳq9h׫ɤ j%JO"5lXpHaS $M3P%2HcⵏҖf}JPd1K\mtX@c('a]+]\#5 O5%2QDbMׇ0e>"e[>%ԩwc:W%EG+}]F.RLmM~?ѫ'e~FFB'%871xޭAilkN{sM\F" Z"0)TZmMrL*flǷJC]X`tv10,\bD џ-&Llc'ESCu{j~j P+ 2R>Ug'l OF&R-vRu9vZ*˨*Y"| }0ċDMЄiqc y!"KàİS{uT^QMG( ݙuAc"E3?.]Rv拋ZKZ]`:R<S/Pz8U/֜MH ++:1v#$!^?AcYU_w;tP9_=y͞=+E(YJ@B~`f~L`˝bAzeS"l-`Pbj6>yĀ/rM0`.T6baC|pq2QbYV<]2'n 9цKtpM/!A&h%"y&Mx1FsXYf[IikeY v8Ϊ;2O%9J8KWg28 ~6`4lӕސ{@j|k|3=rTMNw1}&']ιŮ;ӽE:qoG kk4-¡)&g}7D~b\$6aoGy{wx'1{ % Ir86 gmmʠ <jk3 NK8ݶr~iPޫ;,̥o!=(z56)g6+Rv{ؚDȞ{M i='D{JڷbVxƘcѮA~*Y$E. P%]S2faP}ƃ9 ݮվkُ RݕӚ-Q(HETaVZq°ng5WD`Xu#%}p'ѨF`wBZ_Kh%6tRf iisp_ [\DFEL޷aay_ 2]w˨NzV?GJ{_K+ 3T|.G?PRfhg2s5/|.G;Oϟ%]Yyu,O_EWkŨ9͠ZЀ#"T.G‰¡pkw6t Az!O^Ejf[ƌ"'G5kAܰ[ĈI8 %v9Bcfi06CA)_Nsgu/jeyS _'%;?F?>y&H(H>>+e!cd]w%˴j89 ŔL?-saI\VVlty.(C9&*dKRaIAfcm\hX ˏb l[>JT֠Rwp5,>4% nHa<4Yyt̯+o^m %d~ƽY"He}rkfW"|vG;Ҙ tdD MIȗ,X53bo'#<7 u1 ':Q+eHǹޓJjq En2~`~̐qh,'MA,·2Hfb>= U˭A}fe% :OW52.V\諉%ygM0fx%Qj-D\ol*yWޡX1ճ*Mo]qINU)P8*mBEZeuU 7VBk*Warb!,B=_5ˮ&n?A) DRLn8ڪ.H> U͹rhT(h&.˴x7.ۈ,h\S]l[25b^ƋG"Rc3\:,jŰcӐM@U&Qׂt5*M'o ]f& P;Xݳ+}tCx6J< | ϖF o1bnd4/&W *H)K W+$Klǎgy ǧ$6/ZZ/=R?Y=l/nRFe/-5K":v2AK"+"k`;"l5*; co&}8Pgi^2"o6hT&Bq׾Fc#uȽ4X*p?z.= SrIYI$mb&WQ'QZV8i 6j~_iݶHuj>c3Ϯ[W];1MǣDJ.m'^waqfLWTov7z>Fsjh\W5zk)te7&vV.t~U#@Ww]5N'0F؈Zae#m'Hh!ǪdWN{Pw,QceRcC0c#C_u31򆁭0̠)6_E_9Md(# ɾ:důB/AZ$cuk/KAsX ޾u_L]ᄖ%a?CƐ;-6[11M*KByWh%b8 uԀIAs2di>蓄_|ڀSZ(PHnw=2Jz*ZβeiHVtd$ i蘱}g^b{3OT'F+R,X3&6]+써^U'A/bbyU,3N^\Pˡlں)@k1:qOMq&n ZNnGK-~ZZeҵH3,2|ղ^V V!YJ xBJzlF@IT;eI&Tn tץKQItt6xQ=W=FlG u=NJ~N]S=Q}0ey7<%Ond6"3݉O888Єz!WXZx~([~M04N^+$eLNo?!|p*.2r+c:_/|p34V%R(Z rvv}@jGO՚d"@ %AO "k@㫳dt[H$'X0"XjcM\  t;VDj8:#T,ϔ8y"3CP.J ڐ>tҿ'B!8"~zaJ` O,%0] uHoa>=V>]BUVߵ2B! r'ȇŝ1^#OV8A[C!;`8!3~D> Qbd9h4V2y\OJblS N N4 9 "!Ȱvu:bŞFTMp`09s%ggqyVB McEik)2^5* hb]S# t!LpDvb_KJHxw@5X6*a!ku8ZxN&Ufv_Pl?\0z?j֒O^~Ȥ~QKk`,K6b13ZGGڻZv@VS5fEP"8<&ٙ3bK~ @Yqx+4*[.V,|FcvfᲱY;~Uc~QhnE;sЪw˧/`T[f#+mjJTN+R|)Ǿ8+eOӻ{ax$Pmoe f#`'.̞'4[8\W١nyk_BjD~YL{n?I֥ebF 0|*G\bjfC1<2-G؇'ݜ*AF"L4,dW E7 hMU,?љͯ0HZ1 Fg/G-R_Y99L)U7*WjBT."q6^=Sb?/?wS(}7uCqt[^9;{l3R~+_ǭ&IX9`v$Ui@c]frq~H}&>< $+`B\7_j3]82&|{c{!Rn% "_Uݫ9PuEz7Z`z7}KyǷ5h@e},1O6/ܦ /NھapՏZ? .I g`5^QAZ_O&Ud >D۳J[(\ ҒOv6ȿVߓn%oacX_1,(f z RJG:UCe( <^mPf)΋|"FuZf+j jlнC;EHz%_8s)-T| a>FwX"wDGw&KX],=mfO|CGQƏfh#2sIQЍ4hFhOK ] F&/HHZ$yv' Q$$4KR+ ];B/̉qCX%TQSI9P2ײ XmK7R$hH!eK**K8=%5kcM9V#rdY"or'>(6  0.̋6&f{M @C: $5e\7 0-7o҄ (G4颔%\0Y"u;?AͩN69,)l^v(r*[E E3GF R\T& Y/M1ĞՌD[;oiv\w{@scyj*͔&&eu:!O?9934}&n)/H&ĈF5A~.F!'DrWº1eΉmM#e~NQM|6׭ˮQ\3\@T'Mx8q:q|vKXQ-cJuۛI<-l>&p 6=9q#um`lMJEsR,fXPS"?!=f*pjcQ6d ,9/34:CvL`g3`: 7ڒvY"5-Wn~DY*M|m`9w=MƢ@8Å{ xBGW5E>; tϼ,y-uL͂kh i="s䭻]>w k^NA3`(j&<}8JB=)LCUF,s7l!,jH$^g_lDh8"g)hP@ߍM5O}߄ݕMFL^W!$UR'.޾*::YS"H+hXjPJWHjp!ͭ*<(}-#`B5щcc0&P٨Z%IqȷxXgzi _5/53@ۣ 3A8q/k!X}Kg>by{QJ\Z7EkӕmbdE#b CҊkŅX"z̮|GIS.Dy6b "]yCSɝV{MMaJ%M21FftQ=P_="f$p`,D/ OMTZGU,&jST$8~j*o VJ(-L 2<2`ьASf\u <ٔBc.M !P\7v9!t(pT ܏U ײ~ ؔGF6a#W%sdDtx$RW/`áfnxl S1Z7 Z{,,gXgB_d$2K=? bs|鈡5Q% ]t T)WNc';6%/?5- ,Q=d͔Q9nl 6BzG--8Wnh7]jBN~mw~,Oߢ mT+SYx}TT3OlQL47vfNl};l}=HlyF&c?偙g 4kH&P7*OTOLc`x<ā%PČӳCz'G QWlޫK`DvLϓ=4K02%ub |4yF/}ce95aZFdv4Єw k0.8H5FͩQŀp¦uQcOǮSt)зz_}Sy6pzxAݽ=O+ͱ:1G'Y&*]CNZWg 穎DW aČڽHa-{ƻ2vMAufUz8g$QР͚W\ītI=\ڨ٢A􍌝+ ;ua}sE1<fBxλ{ x[^.2;9Q4i2.t\!xzu')"Z3OZ33boPW%vLBO- IDƏ|tk%߶@fb؅ZvhuLhXoѬxҒhr]kաPZ|ZnI0#|'^lWYSռr8Rwv8c_#%l" 9ameqV/3 .NOl ^f?Ù11.yn]v.W 2ǽ#/9KxƅӥDN$#w:I΄>άJk4;X \[ 9)=5u9-7yj&F0?w"EpeFV=R&#H]yN)9K -c)Hz$M^jHO2 A.u|#&䁼R̃̆s뭑h{xrt9#[-\nd }$Wj:0좠&n{zQtJJ =a R:˜9ֿF>|H{uqRgC0Ė)cL@|++w1 cmAӠ ^ tiM۽H  }_8u>Զ m*DD ?a|scwzȤrB2)~ ,S19\.6VyνF#/Cm.ڮɌCz`?6*a1C|ZLųv`ɦ+x:Q`dA }WKgTtΏ-^K J(gMzDPD~47xo:qPϔ`L kXW8 Sù};1fp/Mt_KBlt]O|m.ё;%=T J/AxD|`˟9M|j' %ҔݒCg]qҊMA hO e]nikL)ڙ;$v l%aޖ$z3 ,TqblڟZQu8ONq}='~ZʼP\lLCD1rcHv?X*әc]$DQlfԠoK 0;k!k.[C'C"/yB3U$Cxi]4#Eքo69} |Ě Nh+J6)^ ꢟh7x9J Ґ6ږtT(*|KY^;~eB>Bs9$Z ܣGL阣ָw=?O[0e=Z8&aM~xxlN V/jԸGb Ѣɰ&ŧ=>?3KkE;!mO#V~D܁pTcho骚[`b2 ]E'BC1Kkbi~5ڳMj_5o^'S;OrWUP}x80VΡSnP}'bUսV&ӳw.-0{VR&CHq^;_A;e ~KAPFLjb'ݢ@⧎R].BK L?UftӆZѪK-Iݻm.ՅM, Ұ 'ZJK~[hC C_'`:ߦ>O'8=nO1 ́?7iC͊Hr!щjQ_r8Cvv9pLEoYMp unE}vGNɭ̢)ɓFMױкܠ˂rs(pG2Hfq彄CLkȑO5P) o{a_ m܀I r3#{^B_7l\:BW:Ld˥on| &^_n#r=|isj:_>w) m Y)V ÉϜg&tZ afTRa>գF5JVwMC][Yp@"lU\̃)HcFEs\ov2#dm0Z-rӠ ҎFIW}^_ <&ߐG"2Y&`Sh<6jtu M}Ŗ%NQmP؅h_JWm0q:AxS#5.wH|9ݠ%E4*/r"z)I9ABJD]ر+n[$(U15 vk }x1h^]骬o ém[Rc׷q(Z 9 |^m-$ e Z0=Y# Œ˰ݯmi0t*ja|$q3W+rA7'4(%7F8L2KNHDZSd2!a- U 4OⱰ9:oH-[B:(7JW>@@mm :$;f>/I:|R>[ P5p"B{W;wh幄DxoejH^ZpE}c+½%qEDn!;qr\D l0rf+!7f{Edo[FASUP7k UԿ Eh]E<~L?~SK0 ť1Qbm~7-\D[Ȕp=X_M}2X4t ed#!(csкxE|"IE` %*8%#Z6hR岠|( "##C0s1\1w*|U ~}b>K3wŴIˊ(j$a5Vhm:n,K…PgcЁ.m^HpgֆxF|]{ybkE,L WO$*u'fi'BiD] h$4G_tM" "dskۻDOSp_@HcS^58{w{FuR邸E ~? |^D[,\=CA ژ+M1!}+8¨-"@9"Q()cA6\ 9KS^}/?L"`9mo yv <{EEus75}\zWDz6po,$lS;X!Y|Tgv , X ?Dbv.~)/ 8z\$$~ 8QM5 (JH+>,B/ʤ<ꥐ x_Vx`^▆^=#U@jt;=x?b ۥfַ].6>7LpA畳1|K)&S[MJ+~a!6/gssLԘ4 ^䢞-trLSiK4?h+|'ID n &T$ӀXp$h'giw=/ŒqeS?y#wxeoip<\NZ{/ h;VM)~ʣY!}Gpڗ֤d7mGB)I_c@KkK^JZSоr)`ˆ}.ߤD4IYHGކݖF@@휫z3Rt-n?>AȮ!/|s=Q0qҒClLo uyGrظ`VT7"|C3;h+){J RTPl~kAy]*6[̤;.OL$! L$XžT$mQONan|p6 I+˟IIXְn*)OSrۂM/x(P RDYY{x[q.R㝧S)BIk1S=4:E<we& G͵Jv.ʽgKd>l+wi&WᅣuH:c#ֲaa 6X+%Ѐ! I/Ɋkmr,%OK /3"kihg)iO_~L~ ^(jY&J`^He|paQeuR11,<~4 pCA  Л?8~ 64xOR|@I-K}J\5\jE'I/ s..!RUm.|E&vs]ܗ˓-)WY"GAn&0.+w./v-fxA+s7чI.tXPH-ښ=|8B!: t߻FpA~k`u%{>AG %6oJĄnpWǸ5\F ڂVHϤr;;Z&"/[>-EOeyzRi%tz8S3wP2)EB3DY|v<'nY>/kyL2wvL& iU#!h!VVoߨGXSrL?ߝ渡P1^y i%#P?GCjKNIPgCQ7 L^P9KZ4]^yIvQ "4>JPwNQ\\l ZRD jG:joycn I{A׏(<'fwU0"\щ5:'bJJɬ;^9,0 ^$4ATQuFc?}6J] 7Ⱥnըv 'A~guia :wxQ@z1n]տöJ7bUef~RR?]uy:`gz9&E^dWGX0;F9*ET)JD+=qI^<&Kg2oY-SZuq[T^G|o+VµX"&#UFa QF|ߥ ٜNޱqDia|V-W/PKxP byX\x%qkm^oR/j!o6E`d8 t |)w?zgaBS4tQ Z_!䔿XziZ[AٽO bIgINXuXKv{s)9v 1!^#}.bVXDL /9Rc%՘:jbW0~W #r,bBKU!&_He84 ^$ cE%2襌n<6QA+8> ñsCy7rArJfZ[Ȓ^]t4xc90] s#%Ob?-@ⴘ0څ鎢/JCFFѽܢR*"YwL{bYk Zv$|G}_CBw҈i.JlPv>:pT"s8kz({Ni,g`k x0d*7{E3+sn GɁN\Ə5KolQJ (Ht}~0\U4Ea||l+4g(: v-DS>€pt6CE ,a_.~pt:}9Ťj~#H5ud,ZSZŧeiP'!KdTYvt3oU"5Ս"Xo h:4G//žLN Y5H <#b2Xԯ :N~&/PtĘI9~+Rک@=H&\ r9{c{v7DA[ x XR 2 1lV`$ 1ؼ Pi+{x,KḉܽJ u0@dR?nao` So^^\w+c`S)F̩ _9A&a3@MGm _mE;0mp=-bB\M. j]W:=WbhKƐA3G,I`[zUdKGXwzEƽc6OӫĪJ#5y\4tZ~f$ hEX|ja@iAoٕlL6 m|9=ipvLGvۆTy?EV.!;"1FNtZ4*>{F؟x*V tyVrJ@\Tf]5Nj 36 ݃ŗ!C5D 7Gaw4i)93k*յznV #9~!bbDɰ!&:)/ep˃ōE0(E%]a`MSQsXI}S#[=y)vjY'(/zZ^BRȅ IS3TJ=CGI>"s91OkUUNzPtQ#%]݇}J^(||mHe!A M߻Rx"HxuDAdƍ=ުJS|~{b{]W[oRYYW8Xd>~x܊gaQCS) # nn0G#٭KQj/G-6"cL)U{3 &-PDd5l;U '̌)xѨv"$K UʟfE^"{tR-Paf2z]Ey ζ(#F+ՆxbX3T,ti(O䒆]IQsWJK!B^!k3[+:q̿W*ub X`ܘ;:mzS܇Be90v"cGRz;;g|͔J"LnU7"^n bq5&r;TX;pd4\ 3MkɄ&XB:scqr*vD7'ijo Wܲ"M3&Lm󽦪RtjWMLGq~pI8gGJ҆?]"ŅY=SU'MݜMl{"dgr0 KR?{_hNS ~ͣKF>(GR+ G[;Z2i=CL﬷wC6ۅ~Gʻ(9j%ZM㖟Pr!f)?h KRB{ʥXY  a"'Z˥ I&a/?`skR'FjKOj(bz'g3YTpmY4ƛ-24*}ƓGLr8$Th. duߩxjq6Q,noǯ0p-L\Ƥy䛤z/ )F)RuXyo佅L@oF8LʜjYoci<}Ryj&EҥUkVM:2VnrǼ`  I;#zLFCUݚrndQߔ cmYD /Cp e@vVXaC(C)Y*/A-2eќs5N" ^T(o@-~02:"]}u{+% .C'G gL\d44veN`Oq _mRE!yv:eC 3. ih!3PtܯQǯTV#40Gy a2-w]-t* G?^1l FH&Pc޴ r,UֳӜUBI횮ӳr{Un-^?tCkt9f|KiAKrp? Qɂ dV.uD)jo>ApŭOd[-2=a0ʁ+G4oz{. zl zA$K.+ͽUG1zIJ)v\dD4M33AQƥ K a7hf.yc_ CkǢMy z\ؿx3陪ʂL̒J ~NƹI^JzVnXIm͠RsWCxC듄xánghΠRmNU`~9NکR}zf=0 dgNלXTLv:kohckl @I9,5J)0ygEyB+8o>ὅ'xGҬDv)E> Eh8bxX`!zYHgζJ|p@]Tj]\̟ȏZV:G!Dw}mr^ieD՘E,bvNe#Ց"ŃubfsKOޔsKssYdλfwǍ7* /Iib׋.W씤>B1 ;ดk#_GEg鬀d܅ɬWO/8þ!/yXLoo|\@F1c^q&PeoCr~'WZFav7j[x|yvՖHrdBbN0;.b 5Qq9d-ΦGÉP*|ЁT=^us*;ܛV,,cg> M(5!r)h~ #1:`&[3.ݴ* #H>֭vz$O'W"Y6n i:H;L9hg3,~sJLj*3%y"|]V54'=+V#U\e !8ލb%E# s`t\a9z';"2fm uAԖ{Xی~U<c V$ r# 3olIf~MU{zr߬sl,'^2 s~qHhK= <|bszMlej3z,6_t!W\wjo>$w ?D8I7麛<if) "Ao{x=`G9CJ|B4,cIL]0s׺p%#y4EIu.P7"L r%NMzY(來յKM Ґ j<{=0q1n0"c3b3>d6JȅG*mb9Eζ1R`W%{[ym+}u=pJl 6upqչĴMg5D\oL6=H߳q()oc&^_6LQ|11ZRpSJJ\@Lj,P`_!I.7%> +rUT33S.`s3 fp=qdv]9Wv%gϨP tRD:|kpaȲ>/ A]ΆxTe,-͙yXXY;6"f`G.T\pZuIu甝(څH.6fFʞƳY#9 `ҫ!vV 9 o{5@B0,({iy3+z.Goc fa!QxcC7dli8}5L]=W[1n)@ 46Dfޝ^}Bz'؄" c@NQikȵ/'ەsIs tR{6AsKh]ں#$r:{mM= oԵV DF=~pyfkŐR7}ÿ4=9:POb/ z/Bcѳ?`qb67>Q%K3p:xڠ5y;Qd9vDNKB+q ^bK/};Z1+?Z&lju;'؉`ZSPAnRzJa;u既*;\B> hyEs373KαVo ;nD8D^5b˰p|G7+4PUϱ),FE~*Oy<^MAn7&!Fx]^n7IZ>!fi} 3Fob$:S{xoA"$|Ų߿<)Dݲ\3Mi6)0I.NCS)wVfb}Ԕ`PkɈ(;K%6aZb!5 [mV`=1Rx!7@ DfB >;o;.Uu3o\!]xouyZJTCA@l7>А~Q'w-cRœxOӁP/ػ9ڍwf^(ںfDp J@B>Ĥky3܎6ccj4cK )U.ay d&@wx]5ղ\y R|F'WgB:$ aLx'ϔـ4+og;MGLjo;BݨOT"{&ƣtGY1xPL tƨT͚> -=j 6>T*il fCYDu?[A8y$ciO LG,aqs1t%0Ĝ=6߈,/BCJjThMà33yއ?+#F+j`DCzΐ$䤮O~n>v]@ +BRHWf.^r74u`Kvh)\)[Ry'lT K dN5|9Vb@=Sp--#%EP&t3,)~ ːR զq=(B){h0(-吒r2+ C/KMMNDV vqF "$j z["~^?}@y vDcxȾA,85ĂN$ܢ Xagwejʖ_fKyJd;e]gVŽJ3 "AbCk ?ovK &ZW{U?+;)e߅QZ+ tk`ƅ[ژZ߫~ҺJ!bV| !e>kQĽQVod30T @6jaغUz2B UvM㋔Ĭqdb~9Yfk,ݭyREŇ S1xkO ƔE°|]!Zn art@5/$#Y#X!6(Sj**p_Q![W kҝ}|B׉¶յU:尶M򜭈?$g}ٮC8>WD/Y6 󠴔( ̼Bayܖs=[;uZFqt޹^q̒!?[Zna( ┙_|͛'^4Vunls3&@q_6Uf75R&6gQvoǤP"[^u'!8) ު˥7'U. {ݘ )&"[03;Y <+@Uc{5) AoR/'A AG `c`uꛣgoSTzWECES=bKA­*7Y0]*Ohz3DX+u"ec>uOBO[D LOMϤ<7!"j]k}Ԉn_Y-;ԳxY] p2,vZhc-uyӴ\0+e˵"K.2_Lm aCBrvHbqۆސ϶o2jнmO<5-ML@|nSCٷ#3Ր#M(p)Ȃ-kʏ=7@p'x T wڅPx 5J[Ҟ.xYއFǝ!1FGE~]=90F .#'f;&r?Jn+ԗ6sp?lf÷rKOޑqWbݻ<~K6eϱ\xy-ZuXW 0fǿ AL߬yz"ௗ, 1?G_|~ -KYL\{wL05?l?nVY^!Z"Evۖwu5v`$:Pr+#>$AkXK>xE*nb^X}،Y$}e\('d_{ T,kA7ׯ)857t"?'c;i v J- t㹦i^ͅX Rxl=8;20BFD 'Iڦ7^QLostfz|? :dϸݑagj\2E7Vgh_ΘqQi!dA'˸͠3F~ӻu-)`*ʀ:Jop%/š#*%>CI#n>C1+v;žmЪ iEk!l{K]ҊZ)Aד h9O!P69s'ŌfrňxP4$l'nv~ Ŗ_" ]`Ü3!x}F'w;! yw*W!](kM|%cc T엱,!^ qVmS2B4(x輎̙ yLx'r-cKNs!w2ˑFp=44΂ycXnq{X.f ee2/4mq 1wF1Eubr|$.v+GD54ВĎl0i<^E9v4#.Mc EI uTҺMWi\/'2= 4tK hNdYlr *i|@t \iٲ t3=/l&p kcOlc\SN([32Eh9~L|rP› =]OR T,_N5S[Ѐp3 q^X)(Vjz M\ҞiôwVr./ټj.Sx[Ҙ1Fg*q`@NEDy3C8:,Bm](Pgx"2ՏKCv} ߎcTJ6w8g>ϒMp]K[y.#lɾ?LËu}ON5+yz9k8J)w$§49-飩?BzJyŐ.[6e!N_h8 3Ag_&`2ЦɆ wR!P(f#9dp(.Bt % RBg:6JQDRǟ@>f3A[cMT)IjFqH@'d P쀏"=lj܄V֖ߦ,5*'^NmEYIr֓*FѠdq+>=m*OzIJ^թkpC+qd£|{4'kRM^=CM%/&c:vW+u]&2`^C9/N7-dyډS rz奸Q}K} B;0W@ڿg7d)0X{MH^ ~dIٖQKU>l3s闔EMYWބU&jM};QL`-"X^vDߜ G`kw? Y8$R9ձSIj45vtbb\`H,`*GV`]7g^Lqf8A4Qauڍj{&ՐNo8Qը3m˫`=k!K9]KQ^]fj]`pS4ñzޅy*bJH?9i@[7npLJ7Oa-V`_0p.^+|\h:x>DZ؞U2<2΋I/~8 O+]CPV?FP5tCզUKj[MNC6 Z{X0 Q* /vRnjT1PH-wШC7,Dk0\Zܖw+Cq VҿzGK;94'l s%״,Nm[STmX=ko"P Ղ-O>"3ZG0c1DNֈ>B3,@\ X4bĕ7pj< yUU(}Þ4FER/Il8h(~&P֢+$۲֡< (Wm =e""}2rN[UD=E $A?-u f3uLi#h1_X$`NuPL6cI{§g^7ڀuw:nk ˘~SHNyl4@X[< 1(I8«$@2 ܹ܆ %sPdpHݾpC}|!2I-|u\x,b*)ɺXƩDŽp;B/WbF hXJ\DC {L5!wDC|l:a9Cګ'Jߛ)(`rjKY(6Z8=t޸ (V/hel2la3sKե}9,{!(Ⱦ_`FVғ4Uj Bh eFWt>ʚG2_D/YQg_ܓ B{X;?# r]$\dGkڿB} U)Eŷ{AJ$bkӰ\H6CޚF 4M {|5T0NǠht=m :BT U)oUkuags( ;c(SU56B(nt1n8w:K)%с:۪XH |5>O-kגKwť-Ȝ88Y-4v6[öG@]+Ki[BDwAMm)x>=#EYBVG(!ytVpggNb9D3ZU-{Tyr"M;pHV AIq]3N b%D<=WkdzDz/(ܢ}vё{n,C¸9y AnXZ_nkkt?+^/V)ֺ‹VFݽ}"¢40~(}Agw悺{&S-k3и/ħ(pGVrHvYMHwA-,|U;zgK(~\ޔڜm5^zAK㜡9i}esջit~-Ƈvpe7&Jh αv;&!ߗrzv6DXն~W<}r3=Fu/UoPz' A(ñNyy}_7Ŗ낂QBEDc|uI7Ϣsr43Y Lyڛd<#}[lduXT6υGMAGw,jYmj1DХBڇgvd/dB4[LuUtmœGtV+vCI0RwAmZ:va^S4ow;`Q=!aȃ R҇6>oN_v Z+ɠ @0]2S8C@_˳~<R|)(LK/PL_42&>?/*YQmYUι>ޝD[h*4EPj@.uYu,-/7>>Ϯф˩9]?[&Y mQMz%ҡ(_x<2Qn"2?zN~f2ہ-Hτj* tj**ݟS=c`ddH$$iC8[Y[^XSyRo\B2hi̇*6OxA\ٿ'$d\Wo[paF/1viZʝᎧل^ a& gŔo)Ʈ 4@MP2Bښ"QUZ+GJ.Ido" n\T3 V6Bbޯb ,wϊIjֹzSڂ5-c &>TgRFV_lm/^~s3^JU򝘤pNMb#NE˕\!F]}%+̧ hb J"=nH!dC$[ i@KG/F3ױ#:\m6gTٖ#=Jkr2eA^FLt:{&I,zRAQCo2+G\M։N)Qy{X\`9NtRogpZ=W4⿿fj_,qPFަ\{$O:=MQQȯ "&pj!.N"Lcx^R^}`9#HQ9V!GdBvErli;ƃ-z3Gxڎ!g4ADt&/b{PD퇂:-@U׿ EO\d溉ý&7d|P3Аݶ Iup'[˶S9x:}9A4D'cqo?<6 *VTI$ee?N.ϼ_(+g]bz2e1F(%tܳߟ-Ω,U/0O=oy=/I| nVY& )S3̤TM /VL4qћ&h9V'a/ 799L&a}:-<`-i|#ozt86(x'vu2-)KP[dt&ld 谂 ߮Ts%g'Dس?1n4xU^v1/Qtp$0.&}T:!mXG^Wxu"v:[~8GN- cҳpENBڜ7i j7z2bO=nֻC7$}P A+ؐމ%BOVu >1ZS3 ?ۍ~Ke\D10^N._/ 6З!B]* JڌZ`y]]6$J>8|aaoS76Qp.fu;Z9=a\a(?W@˅=@hkabQ E [bV:̾,`c`Q|VB~]﫤eY)A#d{GG '˄:a)g,oM0Xgklg.ʀ#w7PGZp#aΣ„N,[q E\m+E|bJXqZQ!! B\j~J,_! XBhm|8l$$%Jh7+j Da?tJ@WUT0 0Ѡy}Uq0B3OӛXve2kDc7)x>1s=-{xYXY]z%p6qHnq5S]P–ޞ7D|cH! 8ntL̅1!WƁ"3Ώ'ߚ fcc{mH=% ХR h9:ԶcdF5wq4lR[9_CJKŇAuP(MBw߯N8) E?VtVǿW"#FmEN+S$Y>!k Rkc*vy$ D%R;.˒.V(fIGmkۓ|Txt=|T]lZ %°;Š_~j#,TX=oU~I=j\}ezxC`d4قmn+JØ 9ݱg57.F;v;m6,8׹ô;Ħpa$v2 ?0|.4td)-|\*A{x(! k1q%Mk&@;z;EgC[Jk$y6OXOJ߅ܢC#R:ߔ8S:xh¿>UcK;Gjjҿ( ЊE9UNn 4-a-NԙȠ)&7iLCz}=\@(ЪAe wO̚7Yq ص!H <*"$Cݯlot.7kՇDc_I߿"bOߟ5M*Xf &X&O~cMߟ)r}Q3 9X )14_r>31:bDw?êZZŔG=ٞ6sBMOا@p ՁUqؕsS~$W2 kxg%;e;ΐǰPW1|S+ZL|C,<IJg.gKW!|)OyGe(_D_Q4YqRhOB7O!~ߴu)iSsս/C㘎 @\8U @5Kp4Ӳ*av%oQ)m]T^yv9{ q%GQrJ3SI0mYiV}w}d]`е=(<\B[ KQ,V,2%z $DًM%:=o@~i<\JBtԉM vW76F-#Z>6p ;}@3YJr)⑩eݦ"5M֮uHW4㉂ /u;IȄ .ȄӯPi6Mzٝv3zh)dT GwA >Mܚ*U"'#deXQX ]4[~+1A&#x˺8 jZX{nfcteuql$$!WK^ŵZFm(BˍM;!*fjFg+',i(#1#5]6`Y/K5ko 1=;/W!<'i{zh>ʲQ]o, nRjѾ`]ߴfj)h*/qDs5[R=ޟ.ڏ\zjI7>gS0d~0At j22kVtD"}ý4{cC䥄u~hL~0/cCweǫ$H%2WhJ˕0+џs2wԴ{. wEru\qooCWV *A608X'3ԓfQ!M+mq?R!&SqJ\Yt0H{]HbClY,Φb4g/QӁ'/";61 Ls5UoN}U=dd?~bo#iE5])u_ğhqIFh@6:\:v;[XG] ~#c01"ݔ-YYXcz2 OW5_z .tT- yD[8 7w' E'Iʐ <>c<2Y:/=83%K[&ǓV"0(ϯ#e%󼩠Bju8K^H.by׭#b@ lY;6r9C9| @zo*'OiSNoz'~zB59b҃~Og\}u6Fõ.Y۩rS_%%sY0J%ZΨt?Ãs:K&[: =v_; /5t U+ހbvSCLKhoIӂG%%\j|G ʱ|ZyjPa(]N1=y46 56#żHՐtwӫC\yZ'Eal&n_ykEM晥8daPUK>i :D6x]ըO) 4|6B,bYyeUjc B *8Pt^mt pGPv mC>2u6PmKeihhW{_;,8Q`]8m҉Z0&:Mڅ*s 9 (2fDG^gg7Qk"< F &^t%dkyو\I8B:e3n_L`{GwbanxZ#˖$E4\sɃK/{ʝy+79+bb$JIDј3&dEe\Эģ<%ma~nX:RC6 LnU"fy@)oĹ)`AJVĝӵ;3+Am]6O=lJ}=~xЉ0.wme<+NCAtϻZU7Sz]h!*RHi-% Wg-e$S~\sRH@iYl8 >VfqOguND;'" d2:pdWD1_(Z oٯiV-6 _`UF^B¼S*rd/: Ss\ 2(еZ97>Ń: YBrg7sXx*ьyn)hI fm4h0F1.WpO6)Ύ({iPZ Q,Їh/]tr\w/ W_c)?o*8_#w`#n1$߰:%K]Xt"@Gmu/`Z*TXl (ճ7Q"Ahq?nTHq~(v8+۰ k@dzjD\ &C eqBc5BNX d&HV&e#}pdb;j` )_@ <}?bRitv>vH3( 8:w2͟$v{L.5ĖcjE҈1JrO¹;UP(%h[?E|lI!5c'p;kkuA~8AQ& hq3E<\1'y8rkTr)R)\^&G> >ꉪ"gMzzw%~Aŋ 1G7ѩz\J.Ԓb3/@c{*0#!ШQDKT^߳ *qwP l^2~3/󣀬ErabiɔW.gA'ZqQ" G-S@*|CCp ؖ>(K[7OebHE1E/rr1͎ #j1i;醟ߡ80NQqI,X~Z] E/T;R^ւm>@7HZ>j$=>)ilNj S{u* ] vI(L:G7lVk?}XOֆ{_^N@CGP $Bt<$:+UnȂ'*5q#W)ghRǾX47(Re&LEq;3yMa,`uB?և.4f 16.>#ͺb)93aCp͆/RˁmK 'Gһ@-́0Ӹ 5ʼnI>ǂo00ˆ:՞Bڊn q:*C[9aa79kn!69qsrnD =$ҿ^$WDs.PK.-@ñCv^ފg_;,1迆'3ߺĽbr;YSsL4K%Z)` C6jL_]F߃ d؎\z`eV4O$I 7z2 +USri.zKˌڼA5 R~K۱z%^HVd'c筏_[Xlޝ ԸrY+Ҹ Ǒ]:)0tIZOf}[̱-:}XU=}aw|S{+Po˃ao+F#+`OiX-Z>`b;^o:~H$z@Q_UtoD7)xNC#˚{]/:/^5\3[9s%{:|0p[K`'?e|e8<+-U;:0_Vir#ЙD@wA$,;? >;<:qwAQV\۷:)%_WYvo'>VRSTHٱb»XnfܭԫW Ȧ 6ڞ@,tզ7?Uʣ1+;㖊:VTVWt,T yYDw9p]{C3iKgP԰ )Q<̣~V+7uR ;N ttkݩ. n]Tjš sl>&Eg?(o ,PWe =հ>P՞V*eF|#)Ȳk1}~v%$ɥrr^pJjE JrC%W"HK걧wlݛZ~ktG"\l[9+ƒpWYnrk6Іt5#usNF7B]Zti:!\;'8:%d0~X۲ b'v>,· 5g4xSi.Am*}eg☵+~b(4Q7"UْD6ϭFj+:>9Dص0bPo>D΢)>1Q &J1N4`}8 *0yOVeld a9YF= |\L$ t`@wuy'L]' ]h X6efTg6 g2&T#=Ql(s&a9 LZDCTs1wEGyOBTH4u>]WJe*{}.EX4 }jPl=Uuu[?q9}u,h@`DUD-"]fߩdt%MCv'6TP2lE^1-"YJ~L^c`}p\m'||![Cu%k-K؎F34^AL+r& *¤!Ґ'|b`q=#Mov;~/EnYw)>'ԳRT^˗>N.O ,\,Y!Z 'AץVVZ՟֦ܦ{A7??F8cg18nl!v}DJHUh#Qs"W1/iKMb2~뚚&0;<=ٴKF3 o;(fsjl:iBU,ÌoߺHuZ.KQYa U;*` iqC@0N:EQASZ)fWaw+E$b!䪅HΰwB8^Z0[S2_{qm6=;K}_p.@vcjW^VdX٢ ~v+K`/6GŨ1$].x׌6-- A7XEtaW1飑˩S)טTB~W5q n8a7 (^86I80TMQJ`FGK!gϦ}U+oZ*KXuw&ek#emjL鰹0h 9,EfFݺ3ciyHjCd!g%Λyh㠰) J^dB U3R=K.e 4&XR2ˇo\]ZxwyvfxXo(zt)2b[5fdcu]t$Y''WI%]ˋM?uN}\r78uv""Wy@ތ6LsJmmUM6SOig$ 2$5I0멋1@.Rn%AZ@OKܷu``9@g LL`J0z嵓Sl.xoRUĀpbkPwx^+t]J32*B1ן3~!'1Zĩ+][µs S>H篐m/B"m;(VñV(]Wz˜~kwyq(C-~E~}Oh7UC;vm)knYP|"#_'9rD)LYJ3' +|gS[\D5lEg+o3|7"Д&0r=  !$GK@4Ё @E0cҫ;ѯ/-Q/N`]`7nV7wuXܿ#I^HY3toH /R1* T"mJgȍ!̀<ȃVء8Mul5Am f|^VvuK6ʤU_.EoW~ z7)ޠFAvA;ZJ-icgFN۔fh`f8l-6(W8;z3l9*8.Y~vļZkmH <^烥rMX 刁j17&( ;1MD0ᨚQJ6(8F*0oc [XDs:EhMY \uOz8u7[Z]΍J 0|Rٌ!OU]=[h9s #UUX\U\0,*yvzw/+.Jw&>1<=s|&/[ɩwxFo0=ągΗ梁(|Ne6.HF.9Țh? D\/G:+<9nTU]-xۅ}dːiϵ)y ?s-=- 2<@3ZV],"d4Lt 瀝e5drBp-F0$d. M:;|opB--SfY[5?O nW2n̕J`Z۸T]uɟE`=IRo2CT훒_OڐH63n3oT]n&F"{'7t7R̼f8*kbn[*a-YDv;T[Z$qP]ݤq+UDTrt0TiF=5*WaG̭WIa0fdpaPK~qX"&cԢ eD8.հ@RvځSf'uIiDѹE\j2)J)qgW \XO3b#sff Ϗӝ_yTt%[8:5<8D뻶,P9ќ#^h//]3ތ۱c$œ. \%j;V~\VEtrPgq8K/zL{wc,4ٱQ#%ğqG㪻ܖ_W`m%uax>58J!piJ.=;OSBUL'4f<SVMJNgf$ebBiVsmP%}dIݺL# S,y'4D9$' 癬)e el(Zag+\khsHD0lK歶OIռgNIC%*<%}.@t#UN7LG:PJaRKW t(A=S.?B^|2&?/ m vJ ߷"e bcNN#;J`턺cv"h<v\vuVF}G8 V6!a9O4H-]:pl6: =ǧ8# n~3 ]l4 є!~^m,%7X"8z#ݩ062LF hV(#ɏ!>k(՛5ZIGMAI̩Z]4C +}bJ.(Miy=vFN6k)`zQ.mitS!_sMASWTeucQa4ttJ04H(-r,8pK گSТ>]l0agMpbcPW<< 榆ۡ*C?+]g5N`cB=Qi*[Ye]v$дP;'!8dmN Ѵ"!PbA+ZT A$ݺ AA-CS QHM]EF`ߛ ^B  ǔ[CITC>%ŲޡBHwڰhOTaN/eͤ[1QBkE@CYdEœ96u#Hh}kʋrXNjg\^<kqM:x_ډ#%gqrPπ+\ן@-f<<&MBPr۞[ljI6 Pd?ff" &Y2PXf|~{$|uBc b?%[c.hS4>9UtP'x Nx||BׁpV)Uix U8K3ML&B膡1ѭ ˓PMkP>$GMQ[U{yY54 f(L-/v쐬;r=_"z/`}g ]Ѹ}Ȋ/e8y3@˯[*mj?J-{mU嘶PNTK|w\)qmim h W9ʘ|8qbQ ۼcRZѫ0q꒛Ij ՄܶVԢ\tJj zbXn{&_F4d2mPI")RC،|̴{jvšGs Mg4FI4ܒ =/iĺ<d$]9LFB{=zxZ:iQ0ɜbu5`)TF1E[ g^P[.{ ҧD sN*d͜ȉ !kJ zXhj`sD=VcdC1Y/ 2Q? dj9єDU#EcDɷeay_URC#v’omG fr3 \WWt6~0",IJFkN3@"Y0*´Fsq$'Pu0蘋#RHCU/*2Q-+PjصI?s򃧭'Qbt(5w)Y/oYcN[d{L(!c'|DOy<6D%$;h49/5s)Ƒ W>^ xxbV4{-'hZ)Yp/35]V.=f)9n291K}$?5bspհ0(S42s3 &fS9b1.QwJizqy-H9HVEh8^QD\gR'h,0ca1J-|OGS,r~WV"=܆&E vk_1rPvٽX%)9iJ!%(W &}Ӹ+>"vZE.m $.xxx0P8|m3Dđ$"'ژekeRc‡V!MV(W8_ErPY̟oRod2Z5iB;̙z_> [kgej*hڿɍJ4x%O+y f&,b_agXɅⷀ-"ncsG " S<iY^Fw*ީPQn@Cf[q _~Ӳ$HiUK&xRq#Ω`EP* G6UꃧAROrc]VA&FQ(! Hvd< x)kefz\KOwsGMzI,?UUOx" :ϏM-a/bL9?FTTEdn=%v䘬 P,@2R  2eD ێd#|m&ђvxT&$%ۍI.1ج?,sT璗+dɛa%GC/unzC5Fxi<8ĵ"a&;SkV#u5u(w߹Q7 !paоbHE;qTɊ"M_~$d fn^f{Qd!)yt;?OKIOJq{҆׮5QEwiܞa?qeTWR81qߡ|EfJ) _5{;YI `G r-Nutlej /xA8/IZ86QP7/ %T}CHaӉx5bV$+['AF\"BSѯ ]@Vx#߲Gc :7W|naim~IAf4®U͡+OѾ+C(bF}B7K ݨwUWlqMU޿$AkXNn~ÿ+. iRғKĨ̖ӼzufvS/U(JɍZ@4mS&CReR6mN>u N+r,6pOkH1czG\eFiȧB`Ks^Yֳ@a-i'Y9_0 QJ~X{+|/(`N@~A@D VK*/@ C+Ɍj/d{6!r@ ב9|4|lxk^m5A/ x KRCw.tmԮ+Oxʲ*"~f0$ml1eڙMgJ.@fMy‰Nazz C&OoIXTMx9;4@V:yPkwq/bTKh&ɹW61IV+%{Hkn?.mbt{1K@gXijt׊5)yC9h,SO)QԻ)K'M9~ B:%l `̫ OLAKxܮ[,v۵낅#3${)n$rOK~XnLx_ ,7}H"b(]XՒ9kR'rFoqӉ"󦝕 @Cqˣt5 D |\ZN.RDFtdDOolMVy#؂jU;`Đ ~28װˬeEr: f02.QӰdW[E`ET&dwČE[uC|jf2M-r< D`ہSw~dD&hi#tq#4itL9!1 1NjVN@ځz F4H:ywcsdor5`/2Lh)ZLg_+db$"ng6$4zMg4Zb% O"DZBW)!p> PIwLgDSQʋ>#Ɛ*'|g֪51%{ {F/suƁ=Tkx@(-\lSONj _Nv 0@Fe(Vȴ\xHFbh9j#$Gm6Rn6C3]' ?mlGd5~-I+ Qyܶ$`7ĶC8 2+*{K\g@KӞk6gU]?ٮ5u4tpVy"'ڋ;lwW )n(#[MpnԴhR;ěĔ%ۏ8ݐT]ԙ";Ni9ds~$.gX2RA}"dN`eY ' Lx@ (֊r`oKFE:Z\k@r$~}(A5pZZ x-!KL%YlђdaFl.y=$$`h( o5Eݫ u #lc&lJTG=L`e3nޓ#??]# +3䧝e28tƧAJ!{e3'DNw&M r 9ΩzLJofT8Y",W0u+\ҨRХm:嗙خ\\LGIJX> ]5aFs?eύ.u,pD5_2чCCtp04K*g݈DZ]L{/ۆļ<&s.\<8cAYtm >K3[TbU7zwTa`;M;{\6NPdqÞp=7=^co82]O+~#Ҁ'(H?)NIPG l,Kv.tgE:bVIXMpLƚsݿnQk܉`w^3ao*%YC]aW |GL2bAlY6E!T!2Kځg8~zv2bm2WK7V=T=V(ܺx.[ݶt57ѱ%*0eg6"̲k]X+ Y!!5vBGs>;y>^9={28' FS]!bA,PXL`Eh'f%߼Xr5|/P-B(N3h2f~H5Ì;ur+I3o6}0X񪏪`r |~z k%iȧ Zݷqʷ?C(gQ!8 ԎJ|}k#" y4{rK~@oSX:`F`9 ֹe)K3jrkC2&3G.f,<"8]nuC0Oz Xàkrj˩NzB3pq.S?4⅍̪zDԙ敖`h7i]VHN/lrStknЁ.vĮdOj*z8YYd%zAɇ^oo7H_\qMzD ZV|j.O%ݢBt[%j&0`b Bg0B%|癃(yG9hOMf* wVu<( ](۠NP5e9s ͝z v&N$EH'6rMK@Ry>0ey%XICQINx'gJq!@? YK80lDmZ9뒤%N˳ew\z3<rx_'w:Ga!f\P$J[84o% Yi {8S<_q> ){Ko"&A.*]2.FJ\._FI!KoD"O wG[_8y-v RBTzP!m?o0 / /Vsoj5>J!&W4 ;Q9s)C1%0R&ucBmh17o镎  Vh:6& wAXIAȧRbdQ `\O;~pdgbgթQޝQ@ j\}JƉj}R/&Քsq ƩgA5o o9 zb/|h'c02 Pv3Z..;5<䋣acvΟPLejf\?|-khڛosqO6wAٿAg+\I!p:)Orȭ&d7ݢйGsиA eJ鍉P7yϪϪcq@:=$yKnl8\FNQ `\ܭ?'?>\[m($[My8tؔl-,ui [AɎSXhpabwLM}5hR7a7uI*A MJOKe1GO!9W/6TLƸcx 9?0u΁$QCnaH,9# _l?C1zP={09vjע_~nlm(amu:5Xt۵27+/S⋬H:yP,H~;X=+zPI3R'An)Ҍ# ^uŀUˇ`L 3zs, CಧilTiLn oM"6-D °VK5A2!we?zq~s%_Ϗc#x4X5W~;oF:r@6 '(H'oIK|ޛ!ֻf6/R.dn5&% t9,K@ ?V]U\2í-cFxFZBGK? ĸw>P\>p)7U1X3:TBKI薿g $~?IФ TWIDqQR|IXީ.Wsf C2ZdRBYNSfvޓ%F'qJG>3"~4F"AۘGt{ ī-q_H} >]׬@--te͜1Ȟơyd>@)/ AJW iio"(tlJ#2uo}^rM9&CnJbK12r[8a52h bFcFQ ok y,wb.yƱ]cu/uR "Kk!sG{gsl[ 6qNyTE=;s-seΰ+HQn)&2c<ؿܯw>5}'buxpuXC_fˉmɀ댑Ŭ6,W+uЎ_?>@~k&L+սKI*hGvii D [[Vc&`V> %K& 1 ,-UؗbZ,g s@xZFyNzs=O[ hJʧbmk}neѕ8c7[:oVI(M*K(x> 3TZap+́r{~0TӴߥo!N3DD%-PNuxdC'ۀ BALRF**jdQYPŏ\P n@=(;@WlX cu=P[%6GJ =+G}2iX}t锭EP8nة4KkY˷'*[:m5w2S:BPCn=:;Եma]X޹ӿa2h/:+Ge]BySYl/nfJy/k:aD:N f-oS#x]XWu(\b;;ZH`p#L#G:ǚub|wYNFb(ꂌ0P|!3 @n.^0 R u{~4O0Sum*9A"p2B6:/ͨyT6̹7 sW+_Fp@ 2M>^mfz߂q:ZB0UCUjU^CdS m8IV2HcEN J5djl6-5pU2Wڵ)Bzgᗳrv6~jH#S>TIRq&][At7 B[~D8~,:h[k] CWF>lF];+ V[O 9M`k:,t$lbP@q=\~SC(k\op#}LgecWαY%1֣GRDm~z r #DWFΖQO-+=r-{a^Q`^lK34]qH0d Fi=vfQHHg )^}ng"?*t`;}Ñ8l$cY^viE:ٚ.M J%^hoxgt7xx-WraFkՍ*3txotIO5W_ՁbN><;7k=KR*Y*R4!Uo>~K .ѡLݏu]7fךbK3wMw*yJ2EFx?aD35Ծ$H.ZN,B5~?RkcrddXwRE\3]xs-XX@,굻\j>NPqu>zZ:>ȵo&U0"Wr07$"5޲7`~2Db%qӒr;6X&N9e54F_=Y*u\ 5Ni-l&ͯ*IkY=L`$-Ȃ:er%,a :É sw4B|pctXXȥK)0ɬEM;s=ㄙ2ApP?Q澩5w&,|eu=-OFI)(ߘk}; 0>L.H~Wq\l@Kaה cp;J9gjGJ;UAw"(Ŧ|Oúj-ʄ lajn|JpS`MySV0v"fޘRDD˰sVɾb@G`GMY;D ' 6Ʒـ]|LYp-4̐6a^=xpN ʅ a4s5 CI Nzu5=ے:Lv  0c#+ST6Uͯ9jW ֙-A[xM[1O s'KlNQg\A-w:FE߀QՏv٬6a4miE% YJ'2 oX3?^S1zdi~HIS |$Xf\nf@umy{rB3L \GZAJRL\3'P*2図nu6g>'doퟒ9e9 (`۟ f:ãVy vn-@3qA8N0I9iFFEUrA+jHO"W7qmlٞTw \2"F6}E/~Uۀ_ɂZQGJ!ľ>J7)Qa$BԴ՞6Bx=4y\>`.RiIjsG/?QV(nЂ!Moq* QBAȓ" l#䟫X"va._Em˷/%tAޙIrQBZ/:jvuwm1xwZUk:s&>-GyhmѺc4-1!ď NMo]_3i*L]b"x ipѱT|DكkK?m]z'bzv) Ei Q,^0$k@[ ]f0*ܓ"-&X3GHԮKޮj}+K`<*7H;0j-<!=_Z߉E׍]q3/M2;qº< 츖,6qLY= Nŷ"eg|+!j@X(,bۓrRYbP]L7u9?HNv %9i&=B`B/|߁faǤdQUOi)ep c _ uWgW+_ haպ&@yoaxE9HV.@Irxؗن='OB35""7Yn+1l+DžM C)j,CMjz|msѤgh 6fX^?vSدk!l}^f\~(mîGCn,k 0kެ'Ώ;T3r$-=ᩥfO^e2f {j?C S0Hz:g(~+/ҡTIҖ g6g8L_$>/X`i~Foe.m+5(*q4%#j췕ry WǏQ&:y81P}_<'r8zzŞ$@mZ\J ҈'*X]mNԒG%jl1E݄01Q|#.؄O(ivH~N^)uIj+($63~pDg'DQqL$Gj>ljJūFaq@U u8MS}OېmQVd2 m;N"&0cf쳄ZiVOH_XVGH qn1߰b :+dzld\}ОK385nSfeLՍ(ZTn7\bgLZt2t~1m't(ʬ&k$b5٭{É:WzA0aq B#|CJ_>rr `p^y@R^JhR8"MI_DF9:hzCXqL\)\dF+χ0iP\qQj U?3[yD!tt`C:'渀OݘVvdb)ޒ0H]/]r22(&;>LL5§ot4x(2CN/ABM"wbz'`#"0?43-5lDz RTDz`I.$:\]{[R F^vf5h^8']0ZuPH(&,xՊǃ a`B늡䁯m擴kS뚲)B T+!!mٝWZ?Do6?L]:PuM@_9vםޛgkt/wf/*[|Mk﯑xYqasamc"x YYjr3=i4':frۤ Nt(xlojvSwNMq\3q* 0t?qI"|y3؞8 /\ 28R'T,=u89xKq4f jrU +; 2 o:߃L':S`]aY3q /ݺ*s:9P1'p꽤g@K]ϰxXx9B2'dB2Li۱bSL.L1o} 3 ;|1׫உۙ֫)v/0gQ)@lD;Ւ׿ &&к^3Bnj-ejMR/.+tZg鮴1Q'#%IיVɐӜ-K>H?i ˽نpv;Brɴ3rr^^#6XĢL]ȗ\DTEMpSƥ4sД 9_M^lq_e?^YYonHtJ9FL) d5եm9eRMe@ćGňsH0:n%Q :En02éa ^pl7 :yªF|Nŏ=3ǶtTRp˓wSi$08D[KEp9g a HGux qauܢ\@G#mp/cލ$,x1FXOŞ[ao K/0<n֯vKb/Ik榓X؍~Lɨ§]R`v5l76A*p A>3W+K4+v|IC]q̰Ȯy2= T3I<ۧ!$ĉرHf 卶8=LP(c9f93I1TJ"H_*F!J0b5ud豷B}2+,l=Jl5c!h`͏uʚha]Zc"='8g̰HDSߥkG4 /Rh x;da c+x5IΘG:P ɮK% ưAS=r 2y13 4" 2Cd&ZUyLQwU93QŹ!4 ;xV:؜E=t}gIGUuSܯƒ%mzԯd"#\gn$( V({ 9 R/>mb}$aB Mwl[o(|(Y: .ɷI=I3 038 OqB0l(N֭Xh!{M%Bw-oEEj%;ח#|OtOvi Y=[WL{ IȢpڞz9r( 5ƒwk:H2h0{j9B3&DA?!PzKzS5E3EHẏ͞*Ijsz5 +Blԓ&x9#wyX!\ tZ [V'-"F</-r5QLtOtmwlFJShV3^FFTNnT#}L N(Ht04 )\F4UAB&D.ay|\aiifT4в}fhYh4[(*3EMcRd Ɉ7)T\S>0ոS Kl"u1IsBBRY] 9!᳍hM?W=7U 21QSf3nvj":oR=;&VE I%ފdc=0*Ŗ* ԽƙQҩ *a-'#&4 Q>`DuNʛau%Gw`OY]Jɾ# > 4>R2Z.~MBV`.~-@GQ2IawUrR@owO oȆn$+Nᷕ4u _9rZFlQB,k"/Ŀ7i5kuA^j* Tagna"/jutY(tr4OJQ_mǗq=T 0g14y'F8-tv dOY 1hV!1Zʭ[EIz@ˋG%D2嫣O[f@P vيn:E=%a }rq{H_jA}*̵VIP@lD6cT2nҳNYNӜoyry*~MykeVUQC*hэgRG+u_S&%iFRxa ӆU\&4ܐ~X8-B1?*Ki8&٢E6?dB3AXr:߫eV>׬Qa܊`j~߈zʙ!DU GAڂ{pDQzlUi)Ѐ`8z0x)l{GL%,8>-xfɢG!jMbƂ=/"q*.,U5I Ȓ?#Z 8x  ȟ!.j!$>KLq/ITN*#˕25?GO̒ Jq81<ICbuMDI /k5źߕZ)/B01,G4I6ؠf=m8驑f25|X<9YؒD.}k3%szWC,Օ)9Xc|y3dq9֊P)g P؅t\#Sy.ةeݳWBM|E CgalF#XrRCWٵ5/SJݧ濒/À0..T)z#4 s?޺φҁ6'#Ov|(z }ŗnZlm݊tZJi"1!Smܫzј\X.m r~nR 8~/S𺢺g^GG5 H`<.&jd͇N=BZ2[Dҍ5ՆH\^V=ߟbIϾ#RfV\ yR>xK_D.q TvXM|MܵwqBC6x4K!؝?*gQ SY0T Y7榲ߊ];{6YDizW"Zط9@>fa,)kK}6hUqU.+3Do^5.,>;9(u6PF} "q*,\HQs@]I=Vܷ_İz+-9YхX)Fsde.rz=*ry@0'8\$m3"Td _Bdm *8:FM}oeDaJ@bme$Kr$0} aZ}k7ga G]$WXjooIv~^-atO|j5= K7\TlI-PHZ/ pXWHYǾߘA'(PvYRTk;VU!״Mtb"V${%QXε@V kժ#@ITnɡ">|nXRE^#j|A՟$6k)Zx^eV(`-hަ8 sS8T, J WQHzFK n@RцJnh,]5iV娑Ja/5xØhظuƣi)m'ZKo|9E: 4<^%6[/$V ƪ<fw#BU +3c][G@=9ȥSe2r.5_cȾoDsᑿv^wK̗: a1p!xKܯc=j4k-,q.O(S@k4z{) RS)"yɄɉD~dI@gxX#b)ks T6KD"(/iI?>~Ņc,i0lz%xԵo CGyenpJw\i@u3D2%zL?;Ї3^*>AoZ\ߛ 艣vDA5[H-V-ƈ٭52-)pMms½.۰ʞd2eݪE~E{_OV>ȡ)kD?oST:o{Y܏R%`{F,)o8@AP-N:-Lַѯ-%2B[c]PѴq7e%B>] phxpj /I域o K¸,g]έ勨,4idX\Awzoجg '`/T" !(|+l3)y}]l;ts=,~\>o@H4 4싳A2z:JaE)OBazmv6E?Q"V^p"Z}* tl9CE/LN%` a(JC/0>_'ΔO+H(:=+yzXCqEMd" }}鑡PSǵ.WI8(q]=^!PG:zH#k0NzW;SOrRȳ!:[v)'@d82uf=^|uUdFB!jH26'|!-M qJ|W@*uml-brEؤS"})*'šQth6=@ Y]G \ ^R3v!)wTR•&{1Yx*e &ȇFT`irQ'|":Inke*8'ORЅH9#19! 6I)}b)MCYJ(NMn+ L.mȢ"X 7m&@RKNFgB7`1`B/U^fC K>YyQ?HŸE<^rR <w SǞ87nK5H-!x=qD{K^oTyI\7n\ ޲-SkEBl% cZ JRD>/dsFfjKY3m :=A }f/f Tb.{9Dp뀲q8! GYa m/'E3ڧ:/@TlK#*q&kV0񝔖mAWᅺ5e*'mڮy9! 6O)fTfS"ayzR^ ^ɺ9yE\(VלZϓP#?*:RY\beEJr1"*TJUjVoZ[,ktZ1nq{xCRΎ,Y-0ى9'j46-?1,c\rLs0y`Y pyhϞvf:'Gk"hюaKt7NT 'uṂJmz@.KNu(>u mīn~KR|FmG\.Gµ;2oadPPS\HSI8u1Grb伾L{W<׫a34v wn@z#dZyBś*p @焒z Kul"1|I XUhHy]UoqbwJySNoB:µmn uJ]_pFRv4@e&*z6ߢ"cb6Ecsbu}QPlB@cIQ'c\umP?A} k=@u'SzʃkZ71,څ( NJaYy´1v276ਬPۨ񵚤XtX`aہfqa&%!q&H#~:ಹ% T_^PyFo?Jkf *sqoQu*B=/ݔ~ަ,Lo+(>kk5<%.6S~JCǯk̩xcK{N&<,itj^Ku'~Crkc|b fVĵ\ AK;=$_um.vO]um)ڽE ր-8ՒPhJ24 ul-mj:a֋C wT[Om5Umg5wAơ9̗p!4kQStᲓz4p),hj{/$V8ȩzV`,`"$CQI՚ښͺqwT;coSi{a۸z ؃ ?(yeg(̄.xx\Y튁{6͝luP>?,=d9F{;ZBV 3 Ȩ!1,nXO󘽻U~{dE˶ r :ߑϒV.A e)fA+TUz~/Y^\E+Pgϛ$Yy_tBuʥђ'fi5{ URdoH[iv&om٧Dn. qvnT/+xH|u=q9ң2J ;|2Cҡ dރ`'T=54+}7popH.W:p?14gi^jrUSn0b'Φ[U'P^J.Ee$.cb/*hPYt1hc/u[HuD`au*z=b_0?WYvk< >譌ǩp0qPt! ͬʳZdZ#NU ۘPdIMY vصG~=\{‘ίKǹWfP[>LEw> ^dO(-j-!2$a'F{Uܼ{:X^^N !;kzУa~a AuY\# J6H 9O"A`M~H_jL0 T1}t], bgNǁi擽_t]EJgؘ9ډ!p(gOvw] 2Zۅ kF*7Ç~ x/ʲa%n4RJѲZ82LQڑČ׊ ҌR2mibwx,Aԩ+ 2{=[o,8a,'iEKٜ,:;_M> u!)͚1b>cW@p |P RۘfEC׸EaډQ5u`뱮'}$bEڇ46q )2CD+= ]2*pm`j5/dN\pYZw*u\H4gqh:?GnKџö kr܅cybt`<$/6[] uyD1Rj6qHO{;Wf?SyM^1WiضTX{YaLO^z XR3+x +<Ƃ %^:PH/Y:<_MRiG\;` ~tК3@}`ϐA 6 )~e Gs ƲQTduF9M&tbWf5d|#QaC !õqH-*=_]Eӂ?aFP/ PRRqhMz䊙5%8Śaa%2DƽǽHуЪI.{?f]'G;U0kpMͮr:JqlQ3sI@`+D { k`zznJY0 E4+W[wח06,Gr9so<,ʢ3R `t%sY#b9l3nxwܠ:˄ t(;>TB溅-\ gQ1L~ćk.ގMCڇ7p2fK(,e(fkR8@Rffk\ (Qm_90W :pD* aqʁm7#u-l=)67u kؖKXk y)l"[E ~yN[r&zHB^I +vOt6yV9TLUxI(JE$N߷尞Y80&yF4 A$Z>z-㛹zM t=$ʂ<ʓlHᎵ]=m~c$m*Cg }jv>s6g&5:*QYVjCc4Zq)ذhntKqՄ3s!hս:Z> AiӶ8~nӘlkbH;%*1QRɫ+0F [ߑG;hXkN)ad9vX0 iN&6x򤃠k kkNX*2z8*{ZAЫR1(N;@S Q]B&ƔEA[dsZ)a}/1"dJZWſW?Ch /(@!۔YJ ܾw Τ?~}]7 KoMA܉έ)emːc"RQ9 ă>f@Wdzo] fe[-)](mҔfԽyRvۂRev\%ys[ z\M``LMeߘ+i~[MƉ;i8M ׋䶮pI;t` K&&8f'%>*$o7b?WvT)6ڥ"A׊ Ԯ9û਼Wtf*We=znoѸ6_ͺ`I%p@u;Ҷ9l~F/$̺@`)~EW r~&6B@~5vjDH]=0L,cޡkǀV!z<&f3ǵ=Yk7r?_?N B M)&;HG5>qֺ|ԂGoQ=T:Eu޼zjeNٛc*ﯩ-aKJlZ[sM^ %4<-h9ʭUa%$}%(4 UC6:!f鞎ϊ9"De[Nnițx 僅3wS9GQU% Y}'lN8b/es|3KU*g_o 3^r1?FOJw @iMJ0"R 3ѻ >YA=8!l`[>[P͵j>#IAdv6 4[)CCMLq|cHD*:$ʁūȥ0-82Al3"^u!WR/e>cI:`15sJt%9epij6Gg>8H7ۢeޢS'zCB 5+F#y47Ն2"Q C@x\Gl|vA~¶בFB_ZVFޒ kyy*2{Eܭ g_F!4ÃY<Tad-Bu ڶ6ʡ p}䫂ᥪpES F!q9!)cwpVoi鄈^9bt+X7^ql 3*ȺL=r1QH3 ^0FRimt֛Q  uh0}446P'Qv vWbES]V%vMGA Q; 0c(2TwtˍZwT.duh 1DUr%]q+ FAdc+ϱΥcP-ղ. 8Q6r&iڍ)'S;2lTku"iGMRz+!B0=鉌6]< -Na8ȑK[,PCfEtlNGtN3ZMYcMN[XZ |ѪrJt]M4 7XEf! g9/!g5Vn]E ˟CSS+;JPWTS M@ ymzbisHkLEJ/6( Fz#Y2Ֆv3E&@gFpT _9/jLRmz3Ay箶NqNR7?V]"}ϖlDT3.zDm0_C:l~z5ZKuV.;L5ۦ| CbZfYJASǯQ讈,.ꂯniOƔgTΤs,Dܻn7j)gsȍaA4ӷW )x|ZLȅ(:/8۰f)K~h#&M]86izoIE'Ht+쀽6w =!<).ijoՁ}nAC=B( Ed|6"VvGN2? BOc7[{kfNsO<& r%B SXpSe۟%At"tkf͓MiU1r\̕&aYIXx^9_MRz=̦:瞚|Aǣf}%.e5/ Im)wD1g21a9cTg3j*@q՚U,YF\ ٫M,,QHM kU gZU1c]s.lhT)npJ8vchGd"o8\KiX tBkWxnbΨ见{Wn@ҙ?+ݮ„(XZ 'ie+BG soDI5;u,0'D |q*ǒ-3i~Y\L]洹ӯ/NRʨlM NSwWbÑ6t54^v*DT,mI8]ȝh_$iA9^ s0_zKC8*Fʸ\eiuD$VL\Wg- {6]>{wH Bj#7@k*h>زrnhv$ a֭,ANU){l۠=>Sa-iPf`O=)e׫TG]K픩G.+\%Τ 6.ӣ]+o݊f<{J*eYۆ`̋WcH +?L"Ϧ5{ ẗ́s~3P6K%)rK3\0a^c'bPDbRXL3q9%j4lmXѵ̃Pcv_m5DwdwpzH"SV 7nx?p uXU=H:3U@@ q*SP(Ll]#w\>ʡ DfL1: 6%,QOg2mܲ2b5wMDa8e(&fSg&iRP'-Ίxk.vb@Du(o&N (7^*pb3_y*)/mXjh˄"EK-d-o_DHcˆްnr uUaJ@;!ܬ^;]K4B09_Zɨ^ < Tb@s]DNRɫ_њ@ v^ ;Ϯ{#4GjE>`YaVɃ28) :A!qG>?Ŏg/]8Sm#X2Z| L|c{ecrCMBк#"ZvY6KE`\"fu27BS>q9ts)1D b}^ǑÃ`r CF~.@TҸ^w3& JĹ=,2WOkM;5dQlwOqsH 񟾚_Ƃr6Uws'`,izH–݅=U\1LVsr~.Tוij0\༠X uqW@Z]5[dq3 wn+6|UVZ<-novW9 {h[K}G;P:Rƈ ZWwZ&.頥,G6j M]oD}>;Csbbx(g2 _Vw\5pLdYhV"8tY&'+h5aYy(XFKw }=_; sx-R1k_/KRZe;:.FBICB!﹍9hs,W`c9|k:ov`}NWg/Ab[xaDܑAv-f:kz1Ȉt=^13ձܝ)oo[oku1q D\* 乭x]CҸ Ҽ:hn5'\; #~OO]a& x oI8CM{Y~ۗeMM0ۀ8gvk?*/gko֖>@ qQs>zaI˨< Yxir|/x JXlsJb4I1RV?f;r[YGqsd,%͔ ET I i؃k{a7̟h2TaI[kw gģo۠ jN.]-elITSt&TdP ؐ0ҳ_Q􄒧k<ȃ^cHͰyXCxu H);f!IOg:d{T! %pciT8ܭl#ʗs]A'Jha(h6bY9CAJA2͕<$)ypt;|wHxv[10BS{w.֍AY={pEnTN[<+dy-lmIeqa:$ $F6{͹jF*s4TNn/M{ :T J4ES lR?uz$F^rXm=ڍ=w0/N 8| |^Tߊ!DLh8T)kORwxu0Uɻoy&ۻ땝<-ipq'tOu8d9rdzpawP!y *j% ߙ>@;"wU`H>z8g k.*')3eB"JZB̧-q۾4|azc),CӇYr ]z g"<4#278D&GNɵd 7ޒ$^?ҐK|XZDWqATEup)'f̆ aTp{&Vv~~}MmuUF4q >^2pfoHnЁ}!:ۏlM{j>N5h8!K5 ~*+CQ$1^J# :ALMdGԋM؆;ĿLRu ?C.G3[H2a.&~[YUZXTъMBD xmgJ7Xfsne'x'u1Bf] [:*vvVQ$u]xTRhOo5+ BL+A}$7z!?ݥxY-Ž= bq>E%|V}0 4X>:X+.F&@:s!ihTH59^7xPJiZ(rKbfՏԩ+a\.A1XoM슖?q]Q*tY rh7aOQMm < X!fA_>cDYe_%m0\mA,Be|N O(izPČoȻ55kr>>8_*bÀ\=jA4% 0Ivni0E3Lc^!)E_tsVI`(B c!RԵJ~˦F}P32966MXe5D[=CY؋zfOrR p$ /Y:o]KN&1 ꆓ=8 9d]~k4 ,eϳjEfmH1 hQ(_SbP:&T݀?'{(N#)XuԳI²Kҩj;f>q&?+[\oܸɱ~^A[muյgʍc|ʎH40xgWC Ռ= U'$#JuYԫJg,p -ċ&WЬ.M*Lj1_XqGa@a(iQUՠRokpQA{b Ɍ󴹿YL.6/2_%޽_Lg \8'}m)LWLYՅ^ Ӌbbx%͍5s >Qx+iahiOzx!uVd8(50@f+NqC|2ӣ[ɿJOyX׼&m[gIt%;QY"SgіY2 -c=8ȯ *`BIثX=wPЫ>4ru…>5Y;c&5~0>K|QʌC6z!H#*4|i1!׈s{a=ăo%pd>sۋ]hW;z6&fU_Hp^[+3RKRqV-M q].YѼ@C yuC}jyGAJHTD:-. ǦfIdM'qfHyP6 M+?e/FNƴ5RM#{~Vgn/wt52DC:24ʋb #Hڲ}w s^߲dCzSir(H $ps-36h*5'BKK!>f( <ދ'ZGT=OBj)-=9`Eo\Gi/˾,R'M)'0dr#SԨC)mVxbpф 1V?0d}^r=SJ¸U{0툵tpEmk2V\pbҟrGX 6jT n3]+e&Čr<kQvn)}fY x,ƀ=1m .LQ-EY%Xpr0T.kۄc^hdEM#f#qq;yiWpJ}%p=.8TN#?WnWd. ?Ϧck#OQ:S3H TXJp!ixE?Uܸӿo,n9C% =X23fl`.u3LR5ef["AGdTu'ɝIՍ>:)s4CZ.ͽդh%QWYw;\<"ݹz Iq0%=a0QmF{H Dy땣N3]$ B{ղ0 j/toYC#9_id N>p"nh_kگ/L;׏X$%}Ưȯ@_h:^{"/r^Rz~QYɹ YU ͣݤPZ4]0xkG]Cݐ(BNԙRQVD$. lz`m+Jh]a[֭೉_$Pjhbl=6;_FԾĔ/w͸T &WJCϦ-E54 zl 5D ;əL_0ձ|_Q=|֎x*b^[YP^UzG;+ք m{k]aeQ$_f {MuӅ1; 5c>:'"ô+O(,9ǧn"KyeF)oHҪi׹5y&mO낲rLt/b7=<;?ӮL-MF 9?{ ZXEfWxo*y} sW{3-5bj-  HBi$Mum3b󸁇C YLLy?zD^di{|>!x1#fVX0ha=}ؖPԨ.>w+U5jC3,XwW\TtpJ,k7SNl#@t ZmEٓPPT{㿶g߿^=&LgO\t<>lo`A_\֟wJlS>?Mz·#V<.4 ˜xVpOq\AD2qTN?X(2`m3r): oǹmb%t7y <8!]4f3|@b3Q;yuIHrr]ow' n0%&NaJM+Vh A\(Z o~];ۥP\e%+%)Y_ZFWPC`[v=y3_(&i3|U:|J I2sX2ĖE>#%ˮitYmb=aDD%Ѧ+`W窛)b NC~b* mM(?K qx>2K鿦N Ѡ =?䳋pCL8CO]ItK&/L`RAз&Ԅ/k0] i[C2?쇬v6KNaTd#np׆ب̰YDx{RT'JZ_:8EUR훘L /t?IgOBSa)J#B?³ƕ2\/wS*ϑ̠q zwI /֙+@{v4h @6/RQ,7ٱϳǨ@_S{nD@_7}_Z$ IL \/h,oįfxF1)>=krWe>=>Mȶ 9UC8m.ڵOvZ|iVN}i_`K˱Uv%L 4n~lPQyo:_F$ Z;rIjđ#t*L{ôR.Q-aY._g^QzSQV^}PCtaGC+hc̣ж X#(()[w̆< \&.!K#z5hk;6 @JS֖YL@;`7/ u0Nqs mB,9 |bߟɎW'9ιڸe6}ܝ6U'F_9u%V 4] ! ќĮ|AYvҍzjyT@1ҝL `+jPkD``a"0&ۆ=̀4Y"m>qp ~p4fm0a[Mi՝Q`!DǯV\^.4s~ VmÙ4rTI +Xk{`mt2;5r]mQ߁ X'[=*2)cY Qm$wO.9ɶzw˳ 8B>gtR,6HU ^;Y{PgsJ]lb+VxCl,; 4z= .wݓܟPy~A[1Йې;-\~ jcw qS;/.Jls"!|+o Q&dσt~wgަfHuـ%*_d+( Učg hPaaF70  !jȝzC:lץo*iJR߉Z$YE6Yȵ/ޘCfFTZƸRERU.~c ){6BKZkݜOJ:FEa }W/;$1vO3TZ-V@1vK ;(ͅD12.lSÎTmS0D;Zw {PUVH]lڋF Fsapyr d5.ycI;x؀q{&! L^?3[z׿ٓ©O!3=W"S1VoBR_k 鵫p"q1ioܘC:/|S@%t!)|[ v46 umδZD-O)ڭ`{8GE\{ПZUӵHHIcz>M%(Z: }#ʦ0mOsC"䕺u]S7J%U=y#ݛ(ct#^7, f}' eM"s.g”*(|Q p8RN-!.l{M}#nw]ÒXz<xp%}),q?;EiIJ-2K2SJZTwM B-?YgL6nj4Jm\Z}O7NBv~ɜh/j\)׿Թm%FTJ_n E{Ca)f.CXpyb,(8(;zȥZ2YjUOuxLbK NXgv/ӜIzrꌻZg6w߅EsЦI@v}lX5L6H ?Kל}'^zw\os֜FT,EJ$go~h!%LMOHTs#W?q53(2jCڟA~Q8ߢjVjI14vycDᖽ(]f 5o~GD/*CE_ÍlRd5pfj:} 1H侫/5 oTV&=>kvw Mad6` "iT)leȘ{07œaxc ` 2O|4%HBY1²sOI3a.A^U"7AJ t@~ h/ d wsB}ispŚdȱnϛi*'F\(@"fEO@=b<2aT_)|=T~o6iF֥7<؃N9fchqCvp}2TUo(ckzgn@<q΂сe {=Pڦ\r.\3QI3`5'+?w;K +ӭߡ&ᔛw)<.rM}Ͻ+3,(ۙЉarPd.-AmӀ0oGX0cO5OmV!zLP >}DʢcH8 E&,Ce+FrówF|m:G}D1} En_'KH/SѽyZ₳Qo]E^{F 3g$ryX/+ eγ>(\Qy!4oSK\]gw`~t| FTWs(İPښ]-wix)#-!7lֆ/tVۅb9,l* ?٤ظrތ`1r'>/@ '6+Hd[(RՎG 0չ)RN}/ئN;ɂO\ L4m 7# (P;{G6CvqDYe+%ģ70z2+>vU]>Ju͖=FA"=)O[6I\Q ke$UM%$3P(ք7.`6_H >@U1Sz'o{V"ԇs,wPyĆrB|βŒ%۫M4õ%Run{lv͗Voebw$^(~W|j@Ug7̃èg0=gD,6wdvu|6h YZ;w%{[N,mxYN6 ˦4rÌǎ.ܭȹoawÄ> ;zv[ܽ;K*`Dn+≵d%/Gטh]dQل֓8;)BgڛAo@LGXיe붜*4yb4 "z>2{E>ܺM|.Wt?N,r4jT4]zS)|zB@>|5C-Fo2o*۪ (wj%r~i #pTj2CKeUF0/ <x ՠ 4sWܺ#p~qϕ&f U9m^Aw}S9+K;U]s ꓐ`酫t5]9&ϝf5ͫˆqE&'h\=nucJDUiO8{{ֵ=?̞ Yq*Fz$d=:6V @¹H#ϝa7ca3ЙWll^h袓. "Vqoͭ,M(.W^t0~ UC8vͰ-ngGl|^9 /K)'5+֏T1kH~S,دi^gװ +XsNθ֬FLxַ;N0aMDjz"UseFa6w~PUj=iJw_M=NT Y]\EAF5V=q9Z(}uXKzrOFM]ɞkVp*@gs "q$'&u\qU{aWK3I-$`sNM*7E8|;Ho.[Өm^q*+ I r43pf05r uGNj3`#r C|ܩK!i)"s,$$\kIUS+Xfy~$48$Uo66{ X+KDfJɆgQIٳxn \ī%x67 y}3=CHp|bP]fv™~n:ڦ͡ n3+msβG_G ]2( +61djVt=C$(0xX_.# /5 Lk-Ueڮm?Sy@K#o-jr,ű|oOjk4B|p!4/$k8K}gq Ҽѱ(X3e)t 6(~XX3F@ NJni@:\vWg8#xp/HxY6lmwfOcw<~I-wA…6e- "-(?8 ;E?vV녲JA.Yع*1AȨgLu "@ܒX0Q W -Vf?KygMA⭴ZDW DKEF2N3-* cBl0B)R_df7"_.$dž}IZ[7ЗwK>,? ?)H ɐ 8΋;>+ON9 NQ4jx%c^=37,adaH\=Aӣ _}vOu@Nj~xEP3'qsQ^Vb޸O"jju1(a=4$@-QmL\Om%t᠜ Il| kfr䤙ɫZ ;M8!P4CݏO4ȷ77G0rր0n(-"c 2&9J_q~N>W\>Y>:r}+*%yG9u5c1+K63+HSrM&-gp9xJ$DsL^hw/( 1$b%J6i0QF s~\5wq'@ #i^X?T6sݭ3:z^s/a0\NgĩZXT qS*^uw5_oT{Pc,L|.piF_#ȦQ*@dOm f'վS7a?|}4s6,3٬Yx`[<M[eÈ8 /)߭PE՜]5~5BO?2z~wPb$r bz z b^8ǹ{'u *+ŃW1ziWIlo蕏163"bP-]0Pmhۺ #1zN5 -Sq1bhjżG_qVH(s0F𷖀-Juq'=r/r 7X%8v* &r):>.y-z46ǽghA-&}( ήAϨA,}8c"/SKs.*(M! fFPl>:'6߫LtwVQ%{?(T'H_RG'V.xyr558X;n+|#"|ҲBX{J x[7]M ӈ-cEq/O$ڎϲzk[䜥oﲊ;' Z>ڙלE5s. slY}V}yC_ VF[nа&HO(<8#PҌ 9ICơ aaDZ'"ܐ+z|b_)wݷL\. Y ƞކCAvSw\'2B)-@+BדDtT;P-6"4P>*&K_ڜfjw:Uf4ln즯1isjja%ޱ}K;b#+f'LO0P+ ˕:z5]nNA=^8f.  Xk8Ra Z6F\YC v'PHw+q &ܖ)( VBϼ´'w `9TCWkC!#~JCP?tߕ1M$ ?q\@PLA@% y(:ǠWȂ}2L'!OdLG9#w`o}6 xx= lTB/^s:~ݯ Sݕ*ퟴ_LQ7(f/0fF zH\4X6^-T {iD?d jc[1ȭ<QNSpQ"<8Y!fMdm7'5oVLqI|ccS?b_S  g8-ɼhQCSIP)nZ7Ÿ, V^ >kr]Ջ̹j-نO\C96BS)d09SP CWb[@ )`咏5N:7eغ??uj+? 8xH^8*Q:hLxIM佒 QWa:Mj/qa$ xeYbHhVefDiSkׄܧ =[l1-pW'kwAYr lgc-wZoGRc5Q7~EU;ae\T}g\\gYJijԌ28=0kG^*JF򌳇}d|OX)6>=qxj( Jr&tC6 飔˾C%+_`CK.;1^7(lzrGWa1sZ"h:xHn(%HbϘEbн5ejTս rW'?BTc1 K"aj3D˒dxEL)y_}-,~Zb-CjRrQċ[=QQquN>~]:]1& YD M"nkS]DJ@ݷb@ SYJ_Hw*<̝L]n1mfeYSs夎 /(XGMCi򸓩2֞gމx+ dk@ yyF]=5=0iTR9ORy9L?F#Oާix. W p3 !ޡ cG׬-ϲ󃞤pvf@jW?[=OlYTe'OE?FA`N~ψ@F"./t.⠶K_=,DPD޹M~qْ?a:t znamlAZ Ipgk3aoBQcY0aZV7$V]?u d^{5jGo˫J#@m< [dʏe8pQm1}l%ӖԪ`@V:9(h3O-A(.QP ,+BU׫LqU[&9BsFI KLqJ0d Glbj>QrFzMib]?sA592^oNe X`ޏ| NNԔV7FGYQ-rE37NaӬ eA?x *2-bu[H=u{)uR F4D7|&:2|ğK|4n}~ecb%:G i0`.^0zU/aɍD+,+8t?a)g.c%[8F;å'GgkU^}l #Կ̨O^rs޸D:TX"BHv}:6_J+/ 3ЬGROXJPukb=YD,UMP$4yIRzAЁ\o~ Bm0ZD x")\:~J,!RY-*gYZ- ({l3$#ҍE noYLP;4|w~UW84KN*6_I~&y )q;?Ǥo2 r>61ldQ0Ǧ^,Fҭ8{ŭvw1Xwh?{8'SЦB'/3L3jʚ9ˆ|%eq*,܋t’[xJ+cvnP =sAzakDMnTLZ2Cni%L_5Cpc7oKz>+ketf!%f_Oj=BfZ V'T)۳p`U༖-kVJ5R9.Z]0tE*_QE i~AC-A^FWq[8਍#M 4MkƓke{.[(yZLuM,*8H[ 5sDii_dFB3۟r65j^˱sv5hB'+Tc^ -8yuX"gZU%Mhs#[.ڴIzՐNL2o=/FD$#-Ya-LJ4}DZB'"ϥ?lWB`,cXi1_@B;*~EK Mw䷺xA^#h"#P')nCLU.}n%ͿR,JλC( כD"=N5Dkw QWӍ Dj>?F)π^(Ww(hBʃfREIk,#RY2H9 v |nX47'v=>y!qDB|.(: &T~jO(ۍâ9oNi KLsFOSec2|s&zV$aIQdRrTo(fWd/WߘCmj-^snc+%=ǡ9MaoIBRm$EaPF+/3nRn}I.b֌ ZkI'b-_t*ɮ'b[_ȤhklP*>cSGU^7ZʹjTkoxޤ ?.-d/Bp IRu% 0?qDel5jz gcBtK|X$Xu+ZOD}ZåP3KfYbfOX g8EHb0~E^##>U +?ө RFx|e:qxD`z#@1:Ot39 Pt6B)dIM׸}G-27HS:KA#, zM#~ o{Oq6b8K%!·EYUj9I?dwU<ә~?@j@8qO̰[9-CL()nL瘿[be&K94S3hm|.>=4є8)w# !m k$Oڮ6X5jj^j6q$e``2ڔXVsi2]ꃽ~9+l0j(04Hg%UlpkJx7S1330Vo20 I "VxOfa4#vu9 3ͅ qN9B`v~:@TI5GА.1VmӢ!wruB Diŧj|4d]2B Zzh"&SELo"9 9ܟK̵x!&%j L,w^t#lΏ7y|Ƿ$2`G)z G}%1t#)ڟT nѰq ϒ(G9x Fto\T?KfS|_PGr"-0m m4FM#{|8ӴfdT{![Bp'Ph窵^B, vigK|M$gقi1H`˾5e(6pag*KD`fB9l\%xWZ1‮ql R;!WY]C} (G#崇9Vq=-7Ӭukͦ: . ۴]ɟHt#ŭ9654t/ѻIҹI5a21gj3獱Ƹ͠450  9Jt7DTo $<f&6rX;\@-s5~<n9Us 4"`þls;һGu8:/0mSiA Zzp1(Qη:l]п~ ՅWl'ޯ2 ]m-,&ÿ[;d'A&YYK!1Q<2w􃕣SY3JkwK`x3g{=ev߷F'u="?_B#WG1O1AGDYcA!+ shT]H=ddo#CaQG2 j\9@BTcݾΑaI$2:!RLwKߏ&%JK&S·F/3kj7ȻĀ~Cnver|C›k'nulT԰ݹV^4$9R:Ε eP!L8-Ï׸b?GZ0@n;>t}/!7"PFAle&%:n8Y]p7ZQa~\a5`q/9t+ݨ{Zq~/Duܸ[%~%ꓑwO s> CFGL16#? sP8irFuGi-?dm0{PeEVB"ѪŹ 3-bqeO*ҳ.r'z@WRMEz& *@ݤع i[y:NyiHvv_얪k}KLnWƽm_wjQp !cWrhjTP <'LUuU{7U{Z,c@LfR,5/HQ~:d DmXʳm[%[y,C=WbϽBA F9اA%/O}c,sM6E$3i?$jlj `ҁHza ^3Rc.ЈJ^Z`!ߙ;4>c;jm9J, u"7%F}dl^,( .=]lv&sc=VͼoFE1DTi FhGVYm⫿ @q9y=[#SPYĽ*B܀8tR,^ n>vHzG>ޱnC]# 4=Fo q'?oYߵjʱ.&Ggnf)9XͧBk[n'?+w w/F .bu}U l9z=œ)ܹͬpü]?9)Oa=Q6LXLRžEa," 7UB /`趈X'QO*bK m0mr*#2QnR`QDDꔯ@ԝki[gAxPBV(4;#%p[-NC齣 &FE40,01WJ|U9:l96ZY,y]mQ-n7>+cTЏ\ :4;s6_|ݝٶ KV#sp=Ս"0k8M\mO!  ?V& B"c^q Rln9 OD%. D~[}OSd8;2X5d5-62bHS/0΋b*Y,;e4C+(nUod&@tpcX<3`CJ۾nv2iV'Sԫp>Κ:[ioV;ʧHg*/oؒ["j#bv2W_ݮٹHn]$`~9m[ˋ $iSk1.eIf)hA#K 4tI:[}aaPҔࡢ]z衒OP:`q俄ncs&w5͌ 3>dQvCBT؞4 a?l3o$j}^PgnUA*ȩRpBBw1N1 ~_LžGqJZNd[\vIu׊tE͙}eD9g&W8/ejR䒞U,pm'\ޡ+f#?gGMS$ү^ThmYBEt5e@Kw h4|/N(s=ܙ4Gs[8S1caul]o-3E $>m jwiy\З)W;Tyc &B\Ifd/,Yb}E(:<5=.q,zˮ $~MR y~p. +HNF&E6DdNnI,%w=ȃlvlD8صzm-Ԍ->q 5ZVg">-Ў9'NYr"ƃ'af~j'bmK̬qW*TKnmwI*PQJZ'iJ$zL4Pٔ4'a%gOBxHi:{A+-_T=^[;  vq2%3t>jT48l*٘w~x)B@ ;WC/6AH)/_?*I49G1@uBdg Ϋܱ*ָ~+ 1ao{ b77!uv0NKt)Zs&R! q_W1u YFg<:V^h-w-?rO>dBtƣGY%#^+նuH]MN(I6q8ubK?VEْĐ );q"]e a k8s\u(Hl N̠}(/( AI^̅Lf,/i Y|l X|0ݷuƕ XK _q"=,"dR$Ávl8H;v#kbP@rvv'[I75 EEãKD"wb {)2W}, OnGvg Ѵ[5{u2J%x1˨^HmvuNɳ>$]dkI 7A`##{L/^7b+nO{jᮩ %"sr U,1B9Z66Ϛ};cfXXr5LpW-V͜۳DR%఩K-Ѿ4\FҦ ItnyoQGGhպrPQ|JWq\ڲw-D];w̓i|;yIjɔ#[?mJ䄦'An_ey=Ҹ~3#X5cqeo!-ˈF/B9{-" o9š J6r 5[$[W4D< qʓkW˧R]9_bb*M7_P==HmF&t~{e׷U8EzPk=jp랏@C=(]BY _mu#$@X>:velgeɼ Cx1`֜/ST[#wp(m {Nާ1COkSK4*IMz\p؝yKS!ϡ>ܒ}d܁2 nk+&)kKM" 'ĝ {뤣*,:]leqLD".(9.qޭm뚎,'~Xu h=l1 -|gd T.d9I1LTիpC2EzcE.,̿ (H>K3D\ao^sU4ehNa<ꡫ:o#TOGN>"7bY_d mo;(bU{8 Nv8ҚP1$s̀z%!$:55ӵ1iB\׎SԍZrրy%#Q몳IZc+`~&)2{\ɻF ;5\KXzAm^bnd-['놀 50`g.RBїV$>>vSwu%z ܉:WnʐcEpΥ%Sg&I .( xkalyб0:WYD '6 V.:eӝzՔ_'񤃡YH(jҶuk{m7IU_矨&Hlc8 ́J/(2)E7r{=`(-0b-{6evxH,xoʏeSLFeHȭ#q렷8Z!l=M *jNdPi! 0Л_ }p7S-U;hmnl8X_u\ Me6]\]%,8o2_DkbN%]cWϢө|owΌgZTYD*&&ƈGZe[d#,1m)rՁ4$KqpҨLAlTDgINCb(t¡GbT:zxWXb9X>sXW>gꎖF}@Pa WDGeXit˛Wz)cެ: XN9ߋ\cx`S쨴]O|D`Q3ޅ ҳ$ݧjOUͩ,ȓt^?Y1V\[-MXT*zx1%#iE[E,е7j=qo^E2h;v0AK^u ͤu{$6ouzx~Aw^8%`$73!f:HcO}jkxdNV.nMʙڅ*T O4k>aF.i4b#Ks<|6Ns+< 8NĻ lkMKA*>ZAo4Z8 ۺ^%xۉY8zBbyO\"#yI{>ZG?{:pn V^,Uy#D(5mLlOw~H6Ϳz; >|O,7lGJnoF=ɐ6o3Z ]52v)[Nz֚~>4J r(TpվW 7 / ,`$Ur6$I![ F:[ze[7oL!5.iʱ6X*#0yP׏xd_c Kʊ/iQ3RjW=wV08+ci~~˜K73&؏Kde_lFYm#>mTLB-WE-,R$ $tVoSB 9BܯDc;jh;'VjJ+ߵᕚ1x)|W4ZnayK$V/͐ÿ45MR@vQܙfvWIv_ӯڋvqTY7iɝ~5rXXXRP+h[+N}T孝F\NwFZDd79[Ɋ/GlHt7Hىai4^婿-ܿjn%ALU'C *m̄e>}yXѻhOM2=:22ע*x/=xXEL)^/nsD݌bQ 0.Ib?Ɏ&1YFGuB%jݮ;1͌ D)kVpt6o+Qh7ͅK4^+u#edpݹk?"F=piH6s=pgx;kc$d~.MS#By3z"m=lJ,bNU.*3kςxX6c;sܳvشzYfTs4v Hy/c $,ؼfIs 6PG%|69 ym{̓q rIA/$cgz# T7vh"mRYH_dnZՕ#*Yz'֨< i02j"*3T5kv"~ wL%k) b) hv+UCLs`XUlaK!`c# r& !?Q~\ueRMN+=n{gHJp;t?RHD-0%J!&M:'>`$aYޮ7}.~&+kΫidXRۃѪQ K$q\$CEⱐQ \ c dGXS[BЫnbB39WwI"5ؖhg ׄ`UA'`́%ux}/a^yfWw|C-#kSf`串P9džHIX,e=~E_:D1euHK<ǩ1 t$3\ŭhp{,w:J,<`5p͗& ]˰貼Q`}6.SpgA0&%_(}ÄWw*3&ehcXlQx2p;GHߗ0 =AsDo}K/(qzk?<ڬ H+!9cz;ù9EiYl4#hh'Z X^oCqH4W87+'ή<۶`41H:]1;;E5|pne/bx(bs:_&8q24!;xOgWz []pHL ~$$!g7 V ^҃okqƐjR)vrDoE-DMR'nPW#fe$^o9m׎~VA"/1 LRףX P0d,y 9;Q솁okHIg%`\3T`YAKYб&, ]VwGTnx[ACaRuXd2Rf>0 Q8rjuwH n"Lx"R ZEnq'.fXn!:xsŎ6w?q-肻zFSȳKOGvpUSA ~{nߣkg)q7$= +([41,_"<04XN9nq/ MRBG v_ @LA8h~˭;-T4=;waTx9P:rJE]]%nUfOiOXMI>gd-@ E튔r?:5VpsI36?A}%6b_'&L^q]O}c4{ Psk"ߝlT'&L^DA(>IƔ=J̘Iȼ~.(a /M"s'/AGoBϏWmuPO%XـΠiއhuuN_&D-DMuy.#gi1Hk1ZGcG\/Uu:5G<@܎V#sU|vCJHk^;lOo奢kAN`)"ԙzkC*,T%a܈ZZhT? @76} )]d0gPԋ.O^G陒-#T8M{WWx+krOB7ʱ F|C+̊w"@%&;\8@"gn%%rlA&øᔊGv2êpccua@jװ d?dҗZ7mOzyD@c` n0}"jۻ\_$"RJ+x/=8IT+|c`7VਧvV-"gUuKj`mV?p?=5h7/@Bs'Px|GgQP /`ح@vv AӮmN$*HO<,z4B 1/~i?47 u"P__t1XD0w(@}T4}i  =lqx](i$}²H_ƙF@6`?s<8> X`ho~"t~E=E\fquepnyZ4@ 6Q ʇapU6$cc  (#|CRvHx\*?Yվ Hש?V-u|));F>(fCжl}۵*Tl>hkpu4v6[YSeTpH`q^<11Y ѥ=.u1n14zK  `ߖok 8".c :Ve&x3>9vu5ɦиͺBP `U.BXWOy/.֍9U0H+$?լr4 y6$%AvphlO]Ou5'EԘy>ǽxF!Q\69ZhˢP7yo!IV =>[ΫygmM@%htk˄X[zEC zEm\~岷}T9Bp mC{+cOlSYn4rݞ 5(NUͧIU 2;ӄ% RlT9Nd2uPe{`9Kn4}!dHjI_BFcc~vjcvXj`633>{: kJ4n}c]sHRם{MApsҥBEdT<(wv O*EV_E E(] g.'5a2ӂNB Kخg_:ڱ=*,=;2s\FFQnY/yA% 2b O*$0VG @anu%6YEKJ۶/g4sǿ3"dOL= .8d.v([lGڎڒ1{Eq(3P-ރ'W\@D?g6]Uf&.*.G` vо;D%9**@q]Ȓ8WADir;~Goga4*"ZB]Sf)eo(:5vu!4mtAR}- 52%ۆfZ+ ҢW)WLGJY'VuS_7>l%xZpq<Ԑ ŒI2]v1\p| u;$S&/Oyb<HeZyvc*r$,'i]J1ΤUu,)}z.[clD)=G`=}vDUx哻#W0Чx`9K0yZ.+?Og6/F8zˤܶs 0fAZ_6Mӫ$EfvsV- ۑE)``X1"~>i%QM"/͜1^DfXz>s^tA$5iR@` (&15lp-c 8'C1s'ظD @ g3IhD(ݩu<= Lop!.l]^Bi:BDz0R6!ķŦ~J~2)旬D0*{D[Y (gݦ $~ H,iB7kE%:UqarOȃ6q[ gH>cSV;MqNJƮzB ӳҭs Ӆ19XfR{PZIp͋׫J(]^9/.?׽4w2뮩< _B)dgz*Bܫ;e/iT"_1ndRxǙ䒺֝0?6J9@Ip #wB;D9b7S\/Z*Ӳ‘^9=AQx=萗'Co{- ZjI4"еS粄{K-},qؕO΄rҮ:C]cj0ޅj[-dn9uc[u%6Ū[t#mO|`T@Yk D"M#_䊙O68`lH ^l˳r9M|C^ВvLE!wo=9^= x{%Hq*Pz;0&?-Ti؊Aghm;t%"B%ܕjcE^u~|:XMaNA! s&3gtF]F4^x› mb_"=,<@TdH;#>d2)nLVj~;BV$RYGyz4 Vuc#RLꨫAoqdJ?X !wp%4)׉*ej2:,$G$oVfm5A0.Pժ[ҟLf \'bY&x4S^60@M9T#=\J7B@4㯁 Pdx4rkwmlSsAӵ-i&eDm,?"rl@ݧ!{D7eY0V#Zp\Љ믻oEsIpmxeCukK2[Q?c&Р)dk>|` :-]6d^%$8 R-,|JAQ+=6 R|.$qMY?%DZ5Ld?'쮫xEVp/ @yCB .Ŭ1dהeD|Nr+kvhL>_CdsQوQ^iP} <_ +n3](W!;[t]wW4m(] ; < fe8kd4H톮?5xٍAzxfPHî4-y aMHzKo!u.JCA]#WE$8'' `3;ޔޅfgT G %0v.Yp|13+֊WeX[w瞱β#L<{9]2zl`D}MY8sGA>':փ!7'N^ RD7^\Bȧ?-Ig@ /‘r x>(RaƅB 8Z-8QtmXp8:Ѻ?/8?P{H>x9o~,ػ疦<4--Z%0O cw.#8e:TI' 7Ӊ n*{O+o)+.j8'x@f'1{jnȖ·y<;GLp[x44[fx1Enle5ܞH rD򉓋M`*R/W4O&|BT~W>[pD/K)O-QکؖR羅FJW ~B4Bd˳(A9um2+qj$\kE'4ww^zcƀ UHWnA*Eb_ ߅[K‹n,Mb@gI?|?%Ripl xpKP0"DdOx.D^^:30pu\{fEs(6e*R%w?SX35]&dX X%Zd3,$?B 洲~ 1='k,䬉̝G)v0A%Zb姌L|MI$.ގRwx+~E ޷=}N'(ecEz ~v|W8zyI=&H6K0qb骐no^+:C胳 Ŋ 9S'xLx;ިXoqHtpb*%Id)s6"Ze(K<ZΌt8@& E/XS1?/VMAd-@NeA" U`&ɏU[ʃsXe[@n"&'Bii#"|г(6Ci#FW3"My2u&:U[@ D6r8!>BeRSfiв5ݫc }:>5fRJkF9Q[̮tTh7LgۡͪRLݬ+6ksJQNjQF/VVkN;Nf$JrM*̣BNUО(&:nty9t:ĂQ=2I'ؼ|b67[NX#S2{i*׭9G"T 8W+7˴ѝ@pQdɳok,gS!}Q,#7ӄ|@"MPa 8bu2>WKiW3]Ȍ0Sy6nҔiG/Ó[N*͋P\|oe 1l!>fۣ-0ʌExl c@s:MLOT_Ȫq&zA[KƯxPŌb=R`7sNXYv'=BZ @/AN7{/I !:īyaʅԯiLfGv&<\f=i:+ZgjIӍ[J-(#>S8SLf\iG| l<,$cC''АSH> % x{)m*SdX38TFvrCպz`.X±0ZD7CnF8f7a b]Eh*s^0Im!eB4h vvuKƙ\,c!Os#`%o44D_Pi9?4R d:~l-T8xf*$'۹Ťk2okOp|fk%a3z&*.v9*E+ %;=?_}{y܆ BԜ.F|D)d75>"BfGH k][ TN U^@=o, Y61Դe[Uv4|@a`8XwpIl6LJae )Gƺŕ p;ǏBB{ S kOO,fgB<ݭ=.s&g8Y+Of8Ll9R? 2׼\HDf<6S市.A*_B?1]ӊyk"LL\:nWz)ٗ }?pJLh}Jwq^AV4bHQoIMS晸h-EbxcG* ܎8X_S4ph[xꪼxb޵i=h@[ Vb\=R@RY4%ztv\T..ۓcghkK)GL>'S焜 cHXs3eEY3SL1\IzKfr*ٹ_faŇzG3 61 V6i2SQr{4%p̌@-,rkdf]`'+R+oD )|!}{(EP$&=|uOqbM /ϴ:Z mT ImL#F]]Y,=\1fSWE< % FL=Q0[ˆ;Kz52_T:%1G !luT#^Zc4Fjxx߀"Uh%ֱE.?` VܡE n[]VnR1ڒ|;KM#h~Il+?Q"''i>Qz <0n1ے. {+f bZj 6> Ijk7O<w6dY0u.$WP'5{otLDz)iSd2,f-}As,BhfdaCLD`[tlWom]Q섚JW*gᵱ+.w\2YvvzA?׸?7\-qkfxv)6]FdFf5FҾ QmQ4!bE68x{cGLG*WoHerz%weץx-"XYe"dP50&:TGx8*Pޟ ~R~3?CPP0+pAz Z:CaP~tc#N9[2Sy 쀲1'-|ǒqYg 6+A/Y,{rx8ŗ%N :]GvcGgjshGT"_23O r?*֐ QwE64rn3w;{3u=~*ji:}n0X]uy04N:Qnz^2~g1 RJ;815e9G-TRa-0a+xu2n^Mv < W8XXM'\S.dQ릊4}rDA,aOn޿TSUl世bS]q!k?lM)54.dЕkf+v|JEfPc53{ {Kɇ ٫I e, rqP V%jw7:rUq.ུ<3ś.@$ӿhqw2ˠܧj ϊy/doЀ &ӽޔ*cgǟŶ|Ϲ&\㮎?877 y[aO-נUUe7_{xQa)ZւE^+V㼆ۮ+͞7ƽY{/}bi$jq "s*qk;xt$lsD#Qx:wՠQލ$秤41ָfJ2i\Ϸf]Rw,O`T%IdO>͒ *\L!>EI@׻5^]իd}çMDIΏBRbĸmϪ(ZRlвOkNjR%s0NH>f%bނj,E p("K_սx̱P<D+;rr}?罰T3S+q>b$ptuk~ W+V",7zxrUbUTE$+(9'r38$[DN/茀w[ʩ=|Q |tABVG#_0h\#o\E,WTsג_wHOL[sKZvW!7}Q|6.bﰳiv^Ԑ$XMŔC:[l&ص:NMEx*1-lha) >׭`Lͽkp“tiU׻6>h'Aӏ(N+q @nbv}$а`fNp&Lր;dowT|R)֨J`JKp5Or:Ao~]+q?tIl W^9ESR< V5V7Q%tGuҠL{܍Cԃ 5EDΎVW8!@Ju,0Z>yZ%!g5dAmA:_ЎIEi!X ȡVjqN\d\ڥ/j hC( 7jn;98?ʥNgFC&؂}j5nm'pezXq!C3Ve1i-@$pƀwR czݨ4YÂV{ X/HB>\L?'*TE*GOY%r \p!Y]`Z+KNQ5S=5a?PBU[л@XfV =bt&&ǎAM[xv.~^`Pv>0qdj@4d<2[!iSx]L*p xil;LAIR .AZ xy>sI9:eUx;a(NYa)#lta$|Cn&P+DKsa'; ti@1iM:fj@Ϊ  4O)'Q_^=k 4OU{F>TRUh.V+u F6쀮NP7_ŞE2䍚]NXUMQQW" [ P1E_zs#S*^Hlg˅ kY>=Q΅ytɛ*H@n-/?){~&thnoZŖ]3%ۻQmAb9Wě]3? e (ŭɀآ% f}Cה_e{l,/b({,'f9KӮa`ɻcND&W{z2?6;23[ Fp#e%O #;E}ˀ7Z6>'$U.6SMr]han6@(M(i`m[D=`^t,J ;^^=0dӌ8| ɮ^BrۂɖѯfLj1I?4L\s_[31x!Q kigAJB'e( ]q}HG&#Wo̊-FT`XY%3breɎyJgewQYzwxG݁~/pEX4 -]{0o&3 υ'['ʼnw:ςQIg;32mlʹ}ۣ[ġRwtN=j8'䏇BwK޷ p_Vtt*=nDy)vijчA+MY/dC`}OUqL{XJ8Vhs];#+2iإ$@?!'QzdLtgDԻ@`d)<̝!Hk#/_Ԗi O`j݄uK/79$%eKY 2ƣ!hZY?I_e1ȽAɗR(JRPq}UZU@B@jwd?0|QV]d<Ўb"Wd}[tSc+4tk:`ѼWA"ДHT'd:f=*@hxX寬PCDZmVԴXS n,P{CօǕukeN V\F6?Chmh (Do :t/ z%r@ٕwu"OGu-a8"c]iCiS=&s>wEsy9/8_xzE@NߨnͦiE$ݯ;M} }/^ JTQ)) ]6eX)[9W" @)8]iPaO_zdͣ+Oޚwk K95IE?/}$X+t E.+n t\Bb,<Vbk:(`Q6(nĩͫ.mO[x?5>9G+_MkS${6V񻃁DqCj iԳ3 I+g0T]LVR'`>Wq5dp"/LJf5NYp~(HS֒쪊J*Z&7=FOBpkie_5gB&\5ڹ `Q-6v#NUDqREeB)\ϸ!}Ys&`1֕KC2S&c{J+&+Ts2Ay:ʠCisU 9*&+&Y25LEJxQ1Ywhyp,y_EjLBw f6G#Us0vNM&g9tV9D;a%í, 50xi<,VyvWO|/;ON!V.o@'kوr9G;@'F ;Ҳ1tWd G%aW`ґ]1gт< N3̀]nD22,3ǰ"J`fgx /\ʭĊtڐYmt&6 SuœJݣuҒCĉd ,Pqj:NX"2ҫvxx{$+e-z áܫ|`+JB#O]~l SJ }7J %pnjx|=t*ei[DLѧ18H3WmK!sN6f:d^+=ĤGlJo~k#zz޼\$H+!I)|0Ϟ%Ɋ[Y*,\tJg݄ l'UzO8EOSmU+:@vw\X {2%S*Sx(M~O,G6L$ߕV ߧU@"ѿ 3-48u32e~c!I/ajZt})Rf& "KS0G@<w}ys` T!E% vr$%0XFGj fԌCwҋzmh*3Jh3C+u w:9@e% =m5ڈn/W%5No@l!QJ̡2uNpsPXdoHH]蝐HO1o(tϤ>P :fc ٺWHer -lX~ N0rz8^?lnF8C)Q 4[Ϝ|c@d*Ti>dy$oU>geM{GYOVV_Pa8G= TFn R,xy?EC- &iTCL21x~Z3 W !9^1 Wm 0U+XC0i2m Z{/5rB%u!Z=@U;ٗsnx$*58̓+MQ|JC dux $? b 0 X "MMHxYB SXO0]g \RI}t`KsnͨŦ4x ޒ3d&)mT.[x)eO`.nwKNiym(Vf|IUBudW*{(V3'[&gzv^cɦ`de!QV:/f F )xÃ'%u[t 1mRϔg$ ٕ"/zi&`蟌@4ܧ—j2$,Xl4jqkZ[ 2ZWX # [R dJrVo(%Hm<.ʢ|Eyq-CSŰc l̓#NUΚהAFz[tf_mL^ɯL9os0l拇7\PmZјi*q;9z?<ƇRTƴz*4'x ~YW.?T@cm,bxj$Mq]_=ARb1iDHVz](ɣkbbVjåVBӶq˼ )rK_ 3v}L4:څh=X?qnF ¹i 3bM[y{I25 ?)!3[0WmKJט9K\3 ӒJph0*os!k3sghi9vhrPqXJev_bdAy4CI㸇Ga䍱n\f5#8\p\-G3ݳ^j HWy,Y=t%<> FbCۧ-6ovVgYYQ*o9YB2z~W>gᷚ8ܱ P`wΊrZk,AQR wi?0>iZ2pדj ` ʀ½C~Hn+CH-3Ƕ F z{%7MC؈+Vo]H(^IӨ7Ȏ ~?m,L77OR@<;~wOS.Gsг8rkԂ #w,POeZIy"6V pAy'#ʀg?6$Pj#{b#80RX9 /l=.{^%n.bѾӡ7D L,/W(䠱| UTscA(Qa`)OOɈ@ߡJ&`L F>UD/ |Zs`dB(n F h d7*P٫疈b6p2SHDZƩ_flzi A8ĆkrT%ӧ\ܸڈufDyx@/(ήܛIٞwgjR*! G4ہZ.;OUT7{<]}GbƒQF+e]Onނ܍qpx'PX2ojP$ɟtab0ˉGp֋s{v-.[~( 4?[j4psF`T`E TzzZj!'^ۑJԭ*0O&vҢeԋD6xd.@54Knݕ0-a+d%0VJ[ mF{XS@Ɣ8XԿo62bN$&|96mтxLDW50bB$F ;R ,|¹=<ߗѧyۛuFq72 >nA%aSbWpGŒ)zM%iL 8GIpL}lbUh§CDѣBu)Kuk|*<7KSݙcHNL tq b?l@$9GAZ3Lv[~ ƒY qeo":u9BYUp:f0 3aLR:c8g[=ik/ kˊ/}IR$ /̤\zܫ4o2aY8$$.Ԣ3Ņہ/ɅdCg.[K[?ϯPuҁD "lR<=E8hڅݡ <Y H\7ǴNèEf|BkB l8aЅ%zTԖt6տrsqpe͕2BS\SFR⦻^y06Bk"[M[m2\K]G%uC. pخ :x'+1]&HYy-] 7=k- MLb !R[!F>6k}1:BU}ru}꺹y=0@5(f>6R_#bO)l{ cXUAT`"UJ5o4yMhCRU( @̕ Aך`,@+?#sCKB!5!\3.#XodmGWj{_ psh~~:^̪7JRUj`+zR-J㣥sXh?zuj"n"8]2?"s% ">EuXK.!bar%L^ B}g蛲͌lNg~sVh6$̮)cQxx9ޚUWG=9\{*Q{rЌ eB%;ҩv YsPi{# lT:2Q+LgEV?/` MIV^p:) 8%)<[Q Ble: ߔQt+Uεŋum5jhVG0wr3VR(r\8ܟB{pUkDw"]뮰M."^c)p_T.{3Vқ;u * /͐ZiAP;-;ʛla @_3ʹ d)܎c9\ꎎȊDU֡D\YXۥ\wuMVjOeےm7Gyŀ g 5?\.l$3=ieQkJA^d̡Hf\ޓ LdI,&Mr5+տAӃ:H8dŪ:@fdO}*b{x: ,6GQT䴡1'{9z>DRA ;&{=}f )W/50&;2rd"_{i!qHZDxp8vzԚLh2b*qor9fDl`6,8>r0M).)kE'=ۉ$e"P3SEEI@I|d_>)㈒KbǼ[<%įʃ[x0{H;qhgO4=ZjgbSgfV Zǂ;@p1aT릥>pw:<9ʐ?lQg藐 Fjh/n EPM i~(533!lŦAۆ`l Y &F-},d4yvp@d&Ow[6ݗFz6 fMOqx }) BbuM( ƌV7gtO&'xG *=||9g4X捌zeERn/; (l( k2lhE9m?9Ǔ@7 $wUv7.soM~3Y([[0oQ  nw%,֧_o{%UH9%#`h>M_^{2i@pr ɠH WSKe;FtKQW~7CQȚ6f}0FZ^`g6o[,oq[D'z?~?-$a~yPSOk@{jҾ}#2ƞnC cNi3_]\d΅M0ٺ"6=icg(7Ndt Sr VRqyWeE6tLqN*pSCM R y=JaQ 'dߎZ tnP?6ۅ'B$PӇF8M@bM(= ]}'+nyth湜,eb6Za僁}HGI7%yAKz+ݢY8NoBmBHĜp~En4'WxR="9e+mjdB3;$`@Q k . ڿ-P&}pK8RB 6+bWު8X 34RgocP HHfG)*-W4*$H@K/܋7aR΃y!TJ#c[L_ ˷y&!?'JM\z C?? BP7JԀQI 5LW'ՠmV}O2;ԓd.3rJU`c i}3anCwi˟H=:k,k 7(!H#Ol$z+fԢFDt Fe!ÆoB>O(}Z xpL4 o@=Of1p\cۂ)Hm*'RP 7R=XH-jk,+1^ܕZdRp߇_ٺ[6[3t |FRn`{jEu')AZmڥV?N_xm}eN57k]|cdyUO|u#B; Rl3}@ѥ|C QF| #ޭSVrOP>2kA-d-IY;Vm?jy5rY:ibGݐW)完cӀ-[ d-BPq8;#aņQ)6OhNմwLBݛ}Pλ: ȑ5Lt.9O,kLSTb:x}#S4; >j8\zMyDnP)@w)BI1IxdT+WY)t`B+Y R6[V{1_&a #]Nੳit4ao_g{0یΥ*3AW"_v5_"ɪ7ۊzgpY&{KI[Z@`$88 EVz]6еkBnひqii=V1d1l~ԋG?<Ł/SFi{BPǤbYE6{Dpcdo& L=sx̅:3 7߲M Y f>L]r`$Lt2ՔW[2(pmK_g`hIw"eaQ`qf9@!QrɸFcԧNG5 pnzSX$Xl^_Rc1w—Q.2v(@aC' ~88n$NcUu l<@~ RKؿZR%/L y~Wiq5=j7D y1+ )5?vY&-5+MF,E?|hk+gs=J]'Ss:wKT8]w;=*`)!^r dZY~ؐ[Iƽ$y +*)F&!os B#I \8P],I=Djнj<ҾOKwsBQcy\չMoKj3Rj&-cE3`]PMV60rxļgJT巠Wlkbx>z:hT&Wi#_j.Qaj c(z0x9a׍fuOusJs'(òb$%/F,.Du.n6ҼBbhOl!3/GMh@on#dMTUT0-<υ{D6FVrm^&cĪ3066p؁cKjB. _:c+U Lz3Α-Kuv&uEC6Fs$ -3mc kTo 5EBckE+c&<]¦ ^e2[:(,H!qiz|k,C³y GD5aI,ڑci%#Bpgѓ"82*p&ĊprW5`VҞ?%9%AR0Nh+D>}u0:\4wgr]іGx'q %q"R/BxY?e #pVLQ5ޓ ܀)A6'zS?h3ܾoWǒo!.b҅R;BF Y[ߥ&լF<1uf &v7sk{f?ġ/ږId02i(!E'8`GC#k|܃'T۶ǖ,jT`L@4G X*z(6&~-9/}=nX.#~DWC=6)Q^яJ-rNTL9б;.`¼oyfߡN&8Ȃ}RʋnPݲ!p5%;bǶxB.xndlxSU[`g%bܺKqu3y+H]|1aQ=ud!fS|xl=UMUh4~d̃YF{xnyQa*M2h/bijHAirxz Pd3)5Bv9{+Ԉ"PzӋ1a ҆ANƆ r*I\k~/,FQy&Sߘϐw>{=ER—r?1GbwtaH!/K6Z V Ecǁ<*6XX^ӆLOlPDT<Bv`V_KMW Va6%uɿ$Pp}v38!IFd=9[s);AtGL?(%? QgTkwH4 @;أPf&AڐJR9W{*^_\P*թ4.MMYj}gpn=ɛcJun[@B=3z $2eP}CW^Wxb2xSZxvkC I&ͷi|PM2y u͝ԿsUHؤuWӉs4@$6M+j sMtJn y@rQPpKN's3=D #"ݹ;q)^K`loS$qwsLaVk àak\n}k@.*< }U nkV^SƱ#l&I_.\rL%i_`OߣS?q3~Ы Bނ@yYz~&سp&BW ~R7&֮(Q-浺C_;8LG7Tz=vߏq/5N !%0 vʸuӎ^f}ـ ƾqS1pc?"~! >w-'yA_P+2>v!~t מFY1Krt {p,ʁ Ϋ'}ٟԳliuJ[;:wY.*.˾o(GlGSk!{hYyJz$[YhNOܨFhsΰ'O 8-[~&v9?4-ވ]\yQ_ғIKp$}7 BrޗO$> kSsnKnEHwB3)|&Dw^4[6'cqC0xBk(-U)={āݎ?挕H/5m;z$Doc$BB`@6nH.9JX$G#.) 4e?gxX,wìfk ?Z^wH.JRC*\.Ftz,_>oNO7|h!4ɛ_FӚnihE4dk0I"segiQ3@D_ne.pAE肟_}vjLiN_V":Fزԥt͟4/@u53} " 9i^iz;V&B&F ȫ͉ nP"5)DХjNOW+&0ՔV 1h >?f'dz ԋ?BGC+ ~@OeNsC:A i"g=Ym[@\4DtCU[-~֥p#'Vn1T!vSOx3>+;_Pps35V6&_pWqw}r5 w78g7* 4l>)?\wlgNHr8s2ۆ'L6X%owIGf|Ro]E"=Of20т=9n0e$~q>ȈJ0 z+n#v> A284J 5bUzjTF{@ŏL;[N˙wTU5FxSt5g;T~@m)ђ U AƦJx4\3(}b&M cK FܠqK(ٌ_=ԒJi}Owj5""$t ͐ m>$6FB b6E--ss2eO"it{zc1Oh'^ԨXj:UzCBn9%ͥvGqK1U1}ʯ{ | r$.E#ýLh* ހ;^Eh2OZjEJ(4X5]Aj6in eI7ЕJ.bq9}W`ȱ5G~f>]5>Ȁn^kt˺he¡^ ]%a"Ľ&,CVD~[|u]/HZyGAwn={)UV3]A3)\ L[M07z ϕmZ,^vk x ,"IEJ}ۇˁ=:(u0у, fvfbr Ⱥ;H\؞(ah,A/*%F"P"+FonQᄖLJ0m `]Z Zg6Νs<܃O"za8Wvӊo &w2cp tiվNWXWƞjPp{g2IRB $&Ȫ_Q pwxO0i\Y&!an`ָ=qLy} J@Z8opS<8:^Ā;D  uwk:4#:ylOia27صW7mL+Hy hβwn*?}k}sH=ҡ\womv|B0#v".ȯn:6"艳W†Ǎ&:d2:OؒxG+1R# 3z~ڋ u'g+{)YYR䆩`g“yph.^@LTxPxUGH {e"Ԑk1um! 82OUr(.h.)GydA"&hX1j0MV\P63?>u:F&}#: id늧񹼈civ5B ׊kIBJBwpzh_Ձ!2{CdFf_ vYR<@(~ f}ۦOn^9r)ڟD8FRD>p*]Ct2b#?2?GqHZ&bO<\(tLnT;xuTs]M|DjIūRV&ic%HxcvM_ygG)fSЪBﵵYIqyG5Jl|Y%1܅P@l`VI F}:`-I"+N\!`#Y& |_6'0>~(Z>mJKɈhL*]OJ`Xh#&g,K'op)w}Mo&Q:5@r8H2%)Jm02SGnC7>ۊv , ͩ :9?L&Cּ0Jl%¸Cn3&/CCeGU/6p@oABAK@Jch EQ@[.ijh;JK{|8E1Ț6S_Lo(8:5ڨ@ؾ}_Jq"vW$\~m }ao~t{)EgЏqnwT+Nd/hO6*)tc󢋆7 ߋh GTp*;UPiAZ4pd>&n+Lˑ4>sߊ7eei c:6dB`Z=8PEm*%bt C]nEեF)-3 L%Bۛ5PmG nUݮEtʶc#NAơrq&Zta\,' JkGW"~*^w=Ta3Ѵivzu0{tx ֛zJ>Nt֙צ0ÏPI ]G,`K76*ZoA0t˾s!?o'ny_YAIJ>x\("d٤ê>h h&/~]9la=m.)}ꄕ-25%ld %}(eHEbon9yuiD0'I+TV]vj|\lM6fX)ߍAV pm_̼ T`?4BS_FT[ ɪ\ޖ۽ t\]˭͉wOU=-Xk9ٴV%LW7zz'_'B~J={Dtrҩ&v5y"5򫊏h *@yE\+x?a;7fMOs!ތ;sG(=F'~ΝCoVrtI^js4́u;!{CBQr?R(ڃLQ+Uw.o􄅗S m1-c,t;qޣ1YN׀C # qWhY˜%X-T\5sTw[G3@_'+ Oc*d\j*F>pGG]gb,s3-Wm٥gC|vdkב,=pV2g*a_}}Eo3ݓH㽮{m 񰡅F {8t*.ײB}ٝsTm ɄŵV7)۫[+*R!.Rv<;AUGEߦc_⧭0nRmP7K u;<ߑeO:?9D,,Y ~9S ĄTygFekvi J_,t/}r6*jlРpb?w"R r~3y mQ$y"V`J4 T);ŕK|MW+syʘ:۩A?OݏiRz K}#%7T6dZVjKI}VwδSId$1My!\t^r~}_jzs#\?ɾ'qn<8û2+M)z{/f+)æGlka NSY\ur7H ;Y,B8b4]׮'3zӓVŭ)~t_8|'sIn2x_߫t=`0NFKܐKAMx&UPxN9~hhCkɕzVO2|75ɗ*fĞlNisC4n J(m!GNec:ϘJ8A_`؈U*u*ZA 6D15{,FrR y&4W^XpO(t}!u*: z]&ٟ)alKEiJH;Z 4֧$ wO^î6R#˹=(N?zCD19|{=v`G&t ߳+a%NmWC]:9z>a OPP][+/dstc&][G3ˏ5E׾, 8f앀]0KAr7OxÂhZ<TӋ.эu65J(gJ2Y=Dcv3pdzTv d- P%МȔVqQ>cÜ,Mq)ƶB \\bT81B)Z_.[-fEYKާ֪e˯K Jq2vGJSѼTi{d'ޣ8%b_zBX +)ҳފ]KX B /( ,-w = /z哟9Υg:9;i,f1E^PYmÖ@}fg^!@2L7rU? R!PئwXK} R;iWyN+}%WVD]׎#:tӣXxT!<%gǮxn(D{--?m _D?j:rڑqfu:ZsۊP^SLd흰6;NQHn* ˤGos$-)˔Xf\#Nqp񑀖n pXkntO&cKadl>?<"V귚2۫W#"&~?ҴcYu_XFe.Eym݅\ @lxSBP7 %n UyqÉf/lKlQO)\@LMpmuP1epHTtp;k}t|4dZS{Zܖ4XkWQOi,34#wcQ>;r icߖFlx(7hgv.]!˟G= 45e*Y XyoJ/w9ʹg^O.R/=Paܳ#Obl"X/fOyR"mE=cmV1)儦vU%GNZ!np>ue~L{N`sd$R(v CGLpfnoΛ/H))d^d nYfy7kZ;_'ZH9Y-^"-1zhe@Ҵ i]" ?B@#^C亮'r:-v$O3Ń@me+|%6ǁ`iǬI :کSL>^ao;1=YQ\:JMu[  <|x\ڛ?0D$x)ܧT, x `h!xΫ(ʉ M}Ld TQݟ@'涹ӂwa ٣pc;x?s&[`Է9n՘nxlUчh^3sDo/GສipsjS+syŀ 渶WaČke2g;XO>r>bV߉_WQD&[e!]*=̠N͒ط& kl!0 EW\'+M!^ ظ:&_Q£GOFg)w6 XL ?Hn>]^L󮓳^Sڰnr^g{np!xiVb_e{C {\[ZBc&\ Bg˃w ;œa6],Wʅ7&?( <pAlE(wWk.+cUX>0-7j䰰1| F.Oi X5l hpAObf9Gx[+ ֩&vzUbS+ui%(4=a.hU|e0VVOkEs?ɿY"n8=s .xs?VJv'~+黾52uH0FJ3%j ҍ^+(;ilO43d҃~>T5=v}MDp6$ iW;9]"6Ꭴ'\w ݲ.4kOxk :ĬhҒu z>L+Ly> pW@Xh Rwa 08;ϵ._/KFƏ< ѯ mrǬY*\K&= eXDXy$8ppeP":㙻v mTK~u*6{H~1t G6s"i#|.-3dU~!g,p!8hwW%9c=Zt\?'hߏ$ފJI] {q,g`[- 3s}(PzNӎL0 fO&caqؼy:#W+0쵗}ƟКK6FtcV2ظVi_ynU_hKc=3zT E]=vF9U&$ x.LaGr/3(^-TeA:/‹J |& Wݫa> vgWN&} 30f~ukل]iCŊoM :zL%:Rw.e< *RBi} lnk<܈8kkU&ryLo&ֳYʩ]V.#Ix<~ͽ,fEq0M[ RdSJt5V(H%`61"xzZٻd˒m*S$b=V[a S5p~QcRN0@;@c79KR^sQBVOTک]h {; 㪪|z!ՊWrc&i+ S۴?4,өRA[2 BF9& eᬬe&Ԑ q( 9vb9pE\NF`a|R>#: #lIm㙃+Ӥ^xZS"/:{>hWzYᐺb Q ^UDD/h(2ҮtaSuYHew/γzvi}$wYC2o/7PFI%?2j)tw6c,s`*w{ww& M}$'Q[J_DbQLlJ/0 0&)\Jij7r9ۊ+@Qjp-AV}KȦ ֌-ф<[hD b+* ;ʱxdmoV5Ne;9n2` 1€&Y۴D~ےFOT1P#jJ̸ {-VXr:גGTl֨=(YHKe$"_z{^9_F4!('{P#J5Z7爭SBޜMqx.tA?go~#VDv {e,S n4ƻ_8 71ǏT}mY96+l~ܡ#Ԩrv24^?OФN;$2]ǔs[!]2 o~e:4YX (99"kXVGNE^ ˕7L-K}RΆ(+3&ʖ'Rl`۬,>ZYW"*.xTfHoތ:a7@#D[c@)x:"SxBզr۴%Ɓ/ .OrS 8`4s2-k)pT ȳOQiUKZI`8LӰ,cC߅<,@_;V|)s{Vl.X2nP ü H\02Q>dj;fTp3 _oh;O2ˆ[/]7m+ˠ1M;U7ʙ|1%%m)<k7k7{pd|dn${n&cIɫIbEy_t*`4ٗ%J)ԮWN&md L24GC +x w,0AK> _S-F"6#^:zM "!WZOSbH)12^bBNi-5lOzh*O1ަ‹w qXxɩW˼h}#/I+AڼL߆#͹MRw\u(bqp4(`FUm=K u @vp=oBK2~]m˥GsW(*tnΛ O;?5xwUwɑ%߈Z*|ҨJ@(G6]k,%+>zzX_SZUj1bw!)CCUPWcO*Zu, /ڪ "m{i-ݑ@IW o _L 3Tюjd"wP0l:zPd}/d֋^ P&2c+ :7]Kj,ъ{ZeKъmlڗkv-vh *#$,ψ`ZvN(xP7y_}at@ AORIlL/}mz"`S݂^*6 ">٨Oaf̜l,5Vw| ɇ1>eMEҨnH+Ђ} ]vhE"zL ' _+GtN,a*jz+0Hd }N Sof+a4{%E_nfOӵ3t.ᅃ+ӭaHIâ&ctd>l ޠv~k8Si?gtI q HbYۯ8tOϞWq`P\Ҩk$XRƦIU}4O~NR~?\lm߅DKZ{̏ jϘ,<%X־qO{Ը">ܤ-RUOg~*/5f$NM8/AIT*O0Fջ֍%f+n'g;+ٞ5[aaᶢ7>|x?CwŏY:邐JTo.ڶqDƽEu8<ZC'kT?ozvqpEZS3\kwC˰hET!HBoeM"KliXxT@6%g\Tm_ÃHl'*^hw7 njI׊'ޤ`k& -\N2^}W<խ:icJ !@fkdmdRw'$T:N'ZpUߥ$4RIW7ļUhdFTIT^RXnt-8UKuu\Q_\Xne`v-a)cƀߣTgU=AHuWj"UvpcMVU-`(P:W쏵C 2.8>4qHyZ#{=FA18zE!Nc:p GPa1ė? ·ӝU^>J@iUZ4=REX.eS@]Dy+O2~HpG2g&lnoxj jUJ*`63֚WHo쫊⚙LY Oߐg( 9| 8u4WHxF%MWz |5a 2N{[Z ,c53=a';,]#_Xr> fv y)b |b>+ kF90U:<Cab#"J`?(ᨿ\է9+~X"ެ4|FzӼ^_a/j?t`Cr8έc8`Fxٵւ{$G Y7Ű~<ǥX"h7?3z*Ǻ wVAE% ٙݒ+L =`6U ?Z2䵭|\3uU waq>fLusI~)-i72xa9 M"j:e 4<~l:<'瘩pۯp0v8P ׾ X>8Fo-:\G_85Dp}Ms ssbt㽃ϓqyZOq!i;\7W@~jE8HMVM,3q(0K#hԶ[LjZLߓZ x;p)yuni2)yYKuV^}Iߍ|)IjbܢD$_û8̯۳Eiq kSg]ݝRۜAҩcSFxV9P{Ò'4{aH Bߌ? WOgɠ`4+EaRrǷ*V_a4 ]0*,4RHZ%>qU׼bu /cۅCBjK/ *VK?ݐ/ #BHV$\'VpT Q8 |'Q5j4KyB7R#t$_JOc>tn.w+'Z3T>΃34|\aGmFR9a _ԙh+3xИOYPF]l@rLg0ng|*LmCuBeޑaV6P8ֆ<Y5mݣ/t@bwH׬v̚I:ma%.1J0j󱛩8ڿubW b)$e0EǪN0| >i?"Τ-}Bz#yG`Mհ(qԦU50k eSWY"%zIfq!u.+>G,rG V錓Lh!@*.Z YR&i|c4 IώKTVc(3vX`j'&8ꞏ +[@L91>{:`pt/F"]H7p:~wk[\Shߗ\5<|LU@U|Z9qdA( 3,q3B`_[?/[5r2f Ыr.`Zx޻eMګ31f*1ߗ5"?=]I[uKQdQY$jܢ`vIp~} :Zyeط kzyߔ-Nt_d-U{yLԳU>4R\SoGb;aht~'v2Δ6n U7P [޼1r6gF3ay/a[E-`Mm)a]h{*M)Z;7IlXXF}٘z5JNjФSHFY!AhٷCke%:Zbǧ7^1e>SjqYX%m=g-l6Hm3@ ZƤ ,h,ȟ |7SxAfGhr0 16@+f~ :}(Le;a0X*dPhL(:Ηy&My5v*_z:q!u_X?E4ĮA)z2kDgqHoJcTΝz A( M "1 ~fZ*[ RO%@>$ع-O2;Sp$H+tϳqtԄ4oZQ*nQwi j秛Kt<|6K\P16>BԜӼ酛!Dm!eMK<m|>+hR0#,2܃]gtS5*7;;!.֦ʸ)! գv$rӉ&G*PDLtW+k%vx69, IϏ_3 /{ q  9D[87pZASQS/;+ޙnNfv0>puSN)KF?8fɳީ uG&JT:/8ЦK N4).i#zw09(߰7NDGֽz՚YGAm&~P=;MZ$NՔS>0UDYQ NsCiXVףUaT>jW6sw95YTUy⡼tEWzB{Dן qb/o *8Y!㲱q/9=vA CkbQ{kwمTn(Χ#)Q~]*@,CI0Bih)"P1*ԴNl|xoX;;r8? kvF&;a=%d`ԏbf?OY@X*d!)VA+ׄ$lTsϑps[*^ 39Oy]w}Ą$w@&9:pzW]3O̓Y!b dz|6 %  2 +@pϊ0VM=4=h=ujBuy#W/J)k:,KmNԔ烐 Hd&^/PBňلHP49'sguGp}O}5OC㞒i8!T; yeh_G#\J0 d C}5Nr)i m86ʤ&i(B*n}L\IG0hn^*ؓ2d1M80 C,1L͞AMBUX8AI~9O/nXr(:璼H*鬩#!CF"ꊇq9N,tq?6Ʌf5EX#|5muو5e0g%^~Ս߈MD`}3\գ*c1_`5NnY|l+C@A^?gdz}oZU Tݖ8'G$0K)fjzZ 8䟱3GyIHRMs3Li=j]xx-,I6hS.3QR3r6#- GvGiv#]B\ǎ.΀[-K;ܤLE ^Ѓwf,7yhSBA9ʿW/g+ؕd~+&E/kDɾYvK6h%zhjG .wAaYhn4GVғ HŒݕhCG)3C5i@%WVp~*%*}YTdAgqwFg|LgNODI4[3rn<#SA7P=E!Mؔu[!Eӷw{z@aFl{|, p 9(7D#J\4D\F ='&驭n/|w6hPc{{]hԛ*?h4"Qsir#9|9v%dVC :%z%E Rj.!ZS]H53mEvDք6'ۭs$X] WM jE$8 +^sFP[O8ů#8\6$n@k> R([[07EKgϫȩEn!lE,,6W q.K@]Y{dDUPt5K{E(yˆhx?ȗpjv6u#^S *]`'$\i4)b沄n.kKښ)xoiO͝^ܛOivHuB"sg 4vg O#ĀR?r) }A%Jy kj'0C+ |`1'a|?HSQ@w0U䍺hXd)O E'J@nN [1A(skm9@tp^^Cy[jAV( !AGDӒiAoXfiӮ'PZ%g3K"^0Z ",blLYֺnӽ=~OaLGM2陧^p Șnxf|gB$~Lѷ*R%kR&c(ȅ$)z4EcRU,RDdIfaβtm+͏v4|$И "ۋ0_A 5JY5]w-8\5ՙWO [;5گ4))+szd ~ПOq<]TPA9 D5^Ȓߑp6 s7l)`@&-0I|֒G\(Rq7|,g򽈱s2 F'79F$qR5!c|tn{,Jx~q9֐p. 'hqjGeɾÙShӑþp 5*jDxqSٔBC8S+\hv=W]f+} 4"N3܏UB5uNY?zEӵ+io.rC4bq8@FhT%vDEq+垄!)VB.U̸6}_eT=ji?9(oH5;w=7TӪ93t懿ShP; u&iQqKHPuq7@lDL#CKF%-˿fل43-)),(a$TC.!PBo6 a'{ 4`»WYmL OM AP >C[VUP;J> ~MF8 6{-߁2b ;WCkP- G]\90930(x'Aڻ勝DO0`?8[fᓃ sQA&Fr+6}_zZ1'֖_RH˭s&aVq|СU0F5h {!W| A2nʓfGp.Atc נ}8SaǫyrǮLir2=f%|.պJwk7TOݢfx-c0-|QEF9'|z')b$vxS*]$T3T" ֧ÒB7)vD PD}ŵ=&p(^p@"{f ܜ^2Zώ?};2G,[ TTL׌[[,PVóFO0TTv$&*C+ ukf?8Ӆ6#.dgt?7u|#i`1ֆA7Э n;3SJ$Ϩ,JId_]T{bb-ñ*Ǻ~PUM=pӯP>u61h٨v9Ab\Q+n\,M~MNVVӗ_m$eL/k&@>vq::U\s{<ƴxG["qPHp_ "% .Osfʼ,1:8bקT*Dg\!ILϻ387E~ DfDnL2_=Z5%MpaT&Cơ.jwwmtr=P2(Μ:e1M*Kp^KW1̆] ~ |3s-6Y.qTn}RI$cvt?d __Fֽ}(xf5bPmdCo3cMϢYO(DN|~:ӎ ȖeC`)}9JD:lɩ+=mu*+Wn6*k_GwaQ߬qAZ&T̵,N~4e;%?Mq}WrVA]&U9\1 pd*KuEf^ڭzIR+7d; ԉ~7ݍŪջXM&m>nT pnH}<03;fñ՞[ m%z*K\]8bll09T[w_sc.\ *ʟ"Ђw!+}2J_ ߿-*Z,҅#Ou1ʏw[~& >DƠҫΗO+e:: <8b$6 Ék k9+V~5B#,4-Q{D8qs|J܉VLi`46R`R((d$$h֨@Jl2ܓ?i,(n{붳y1 *'9`%9ewzS*/~ ?xE6} KowkBjP~ 1VBuZskെ?UJ|^mScA.)UMK"dW iOKBMT2SaZ^AcJteim{I kh6ji4w3aJs߂cWj-p9/J8N7K)ӴwjLlÔg@\#n/ŋ ϻ2ÿN_ L8#zT[(a1`RrQj7~g>&vG[w씦P`D ߁p[2zIx~"󱦾{!YٙIZ, :p)y%Y ! mCիM)] ]Cd na--#BYd1Hhir+:2inIC)>t.ib/~B];a7!^݉̎ {?Ù:KAF dC.9~'CA 8"LJ7>jD_@*ov" HmA5C# uQZZǔ# o9a F%bJWR-Øk' & z@E=Tkc&QOi n$#gBO7s%qxņE;TsE%l Fo ÞY.FQmEA1Pr)Soj E!\Z'. !`ZGSCm];5M2jov͘TB9D8 Ι/͂{1 K)]^i`Ml HaN2rO\Lȇ;6ɇ *ZaωRx\( \S<_mל<>"=q|\B7S^zſ߀>BDh>H=^_ \q\ ēQA#H^7Jwîևwǘ>V/س*6ie5 (lsL|x=JqXE꣆$0Y!H628*ĭG=;WX%ێp;$ e8PQDysÀ쩿Ee&μ֙+\*׺REQͲiJ. p(;չFziI_&_v¨a-jIcXC]$4l6&aXI#ç B9N|;_yr=tDM]b1_0rڹny1#L>j1WIBxB5O$Q))A9}o䵙PB9rn:E-ے ىCN~c| uQlJ2SWכXR g&]cQi2feA9^']$&+ÐF!Wt|O{4 ~lAc"ɚ {{K_"W$Y%&>d:cG %⦱*p 0j޴D XVslzPRE\]^eAٶΠdc;H\D m{3NPWr] =Wy =Eb9޽~أa%KE3fOiF[!靴|؈bUmiNIó|~%vSD1yG\:းgN Vkp2:{g6OD- vdy'a-}4^? w-Wn5#tmE RVJޠ^3e"'XEvn6!v]n~ʑT^⾫!@J.OxZSb+Lo!ɝY8<wڪ(@wߟf: -C5_ĕ*tY Ƚz}%21g5 i$Sy ϊdXD"P 6 F;;*P`Y[~u~kO1h<f;ӯn΋f )W;\y "/s&8Kz/Wa50'2Xza'=!&DV ZVP;O8?6PfDA!!x5|5ڹBWyWsH Ҳa;@얎x9"Q\nx#9}lx5PV f+ S2sC2mγdwrJ0EJ+>0i*z09zp0Sǧ^}>;7` UuϦw%- 2SBe6%C=h`擩1*Gl'O_ôOf-,=}IdhrDNlIe1*Z]?%_?8a[a5únJm:D2=ѧ:w>+3~[|#)7`P (qg_vǰNhϲ247G!7Sb)4+XC8٥(uZ_&>| IYt' uڈ" BuZ}_I7jB bM*6~{!nQg]4 #"cv=![NSzyV`$oL|aH KF(zlI`Eu 0P6oJnndN/1~Kpa{ӁX*8L M$q2NssE`B& ԰7 \g%zU] , (xvPj'_D^ 7ӾPMDF)ПnkeF[qgs-e[mf*1'bgγm[ ܷOsj24ch1j+?` ٥dQbؼQrWSJ V%w5ŻňV0?5UN$q z.0_΍ϛBRbP0LtS2D?P緎%jdӨT-c1Zf0Yh/ןo!l:ӎՋxQͶ Aԑ:/" 8,8O9rlx2ceM8#ǀetT8O)AH:lnn4vޔ1 g*:97{!,&qADx'őUJ T y N=~ 4A wg+itWP9QA- RDǬ>~SBw+ybi!WQYӏT&)w$Gtс;k8_C Pco]O3z=Pҏm4}0oO}1c\VZ'Rog@l+TD D88lG HE9F*Q⑂//Gfzl^ Fw.~bHq}qYQKKzv, -pn(LS =|)`Mꗤ}ݖ}w7JmiWyom֐h%vTڨmwwl@~NbA૫wS17SgR F'>v!}5]c4什)V袆r==HD& EbZ̠Oui[3qIApsx*Q>!ݦ)V"'9\н@ K# r̛$)[6%5 r ./ -S w=P8]O|Ϸl Kcv]~x DgT (gIy|A bh 桏" Zvnf l; o 5zL o [W_ሥeG͠3 V-N(a,\ dF~ן$$64pw ai0]p쒿6fîr` hn!'peLGn|YoW9P.X3:k[Ã੩yHy- gM|12+C7d Lr{eN0q)KQ&W[m!f1O J΀΁$4 k{z#LmzѺkD;+PE`ӿ~mH3F6WmHbMDן<"^6+Ƥckl(&`Ÿ)S5(91jVp(5@@׆ri;CZUW,UyS{ +b흡b!W|jH 9 &]zt[F*N㑒J .:k-9"[ ח#AV9F-)y* UMn)^QYKtX 7!M^`SzgVf99 k>ZqQßkLI*] [,B:|w&zb EVXL! ҞzS)R*E5@t}Ev4\e{*#ֆG]IKZ̪5I~F.Sl0תjOGWZm](֯"O[QƣmM$Q)ߩPP7~bOR0hQIDQҨV?F&aIeSY!Y @ǍZsmtۉ\fJbhY4*XBHЃ ߕ&AQD{rX{}@rm;5A >G4!V- ҶG8<ܒ,!b+̔j gtl(-Ṵ7bU҄u.c#Yz GRD˴`. yݏoརRlG ++gcOJ;k< b OEYH>d {&$_p-Dx֞Ht9eߌ>۷=f H/Cw׀l`ee*~%HkPDpdz5oi䍙4m gţLbr\{Ԙ@`ts.zj-ЧHJkݓarWF$YÂ(Qvy 7k@^;kz (ԲcM- 6iXi C^pf%W!=9q,!UVqLp_x\8e|$kC VNcӓ ~5I(鰚Mw"H?ZQȸ9[I>zՍM:n?Uh9}L<="&q.5-s@m^OH0=3lO'Cg@ z*<0ۈxGmg[_鳵e=O{yFhqbAYi4jh4J+N0~1s+4^HlEvUT"$b^g`T(u˧q;y`ld+Ŋt5ѯTg/lQNJ7kՀp%F 5 4Şqgz”tcsX!?Ueyn2olt;2I8/Cĭ$my$MPxq e$io\S2P(Az ˊl?ĐQZ ]"fUH/d St},Ohq!V;!Q6K]P$[ NlYTaⵗLJK"HZNU踚$Vq;S3 E&%M2p-8bXʃ$2nS5f =f'lqpzKƴمZ zYg3k-ˣhQ;9Ě"GV:e,PFE7v,5eSu}-=*TC,^ѫ{Q啴0_#R:{cauGm=,!NzEgʤu s*<30Zz>*l2xm3p{C󒉽6CTm\m;nH43AbZZ,&pr]`H:,~btfo')=KBQXF{ ac}CJ4eR@/fńefBhV  L$ֺ)TZi׿,Xs_ nI ΢,r|/ipDρ\S9ǭjgFwр/ Ci%%n@&##5sb^J5fڗ]IZa 4Μ ıh::ԈjT >~ϏA ])>`sսC$QidZ\^3}#2{o=dⲟz, (FL]ň8_y9aUMGs{ڽ#EtePL/k1sKy6'd!𷅨xv,:3U&c}S)UY>=c!Z) 5{% !\E"#a4sҌ5*UQԐQOZ$&N+ `OuJF=AbM{E'VP:Ac49 1u=hKߙ$9Gk"ٟr{P=U4Ib璣YZS?p X(ݝhGC%E$=ށahdZQj7(ϖيuDg벾I+ُ{=>sEjtp,DšcLH o`ƐvWvR!]`00O\.9āI&~R&Au'Lx2u xOkŭ-!q)Y JhH]07wߋa@r_l kku*eeq*:kVtrתxظo?lZ|N{^\!2zS}<-fm~NJ @ŵ Sb#ǭn_2 ZU9$r?[؀%$^,*|:> tJfcC,m[$Xn$EؘWx(uQ'1˝߬Ԗ,qf4mTmkp gIS.MyjO;\]mKabβ)ϡSoKE#{Ֆn^&@@,؎5jn`hF76v>x{E%C"7UU5={ޞͼ,p@y#2Dة̼J Je|_vgMz,D!JU>|_&k $ !ʭNx 1`_V)F&h'HQ~J6&5@]ڕ0)G6LQ\.]uozeYsr-zɐ3ZͩG35f Yj-V]YW̓."PAG/Ld<$-n m%-}$>7{9=lD0 IzZ#jP]vSDTvHial){S=אHu$_6%ENcni[{. {O+י(h@X>pU&Y^Uei7ЧR.j=]AbW9g6I-pj- ڤ,!evN v#yd49lmƂ.rjCB64R5CZݩB!zԶO˪J@AlĀ@J̞^ EUZ+c5(aiQ鋿9IcG2)^*i:~j'[ Am:]j^t/ ӊ%?#0!؊HW--Bo$g(%c4oqf۷z5X6T)qI(WN˓,YRT0"^  /Jf(Ѧ +wE6p`X]xr׭_:UؗD]Ocn LPL^[z Ē9γIs1|/kA!曈G7exQqj; J45x*Tm꾛qfuH4m/.ᯨUe)Cl aE8CiCrŎ5L %(4ރ%6ŲQL_aN#. V ]%~BD"/ bŘjGnq8iɝcc GlC1 7-i8*52clvJKZ{(ӚVL7!Wp@ddz{X20:]uX!?!g@>rm43AbtA}A")-1OOQ^O^D Ú!:3bNU-ӬAǵi3EϰA"o9#׮8_?rp stfO_VSz[ח864X2yXά_.x2CZ3,+\+qڟۢ\)=Zv}u.d9c?>DJCw;n.cR0{+%Dګ7Lv2h+ҰBihp,eKa9!/t4#E28coCލ!^ ԉA-\|!myȓn͕Gi(+?M(`q]EƎWp^-'e #}wL)iù%.f lU/`-B/ zs|4&*hyE"X,aEb]?kɗC\WF&Z =ԷpE;RfaVل_D8 Ó?]>dӣeBu}'BU>#AҸEq6bk."@iiYڬ2SOw c41>ր77ʕо&+7Osg ,/븿aN!,kƊ您T6de_uw|(%kR>{0V,g umWm lcXD1.48FaY6$ \gQn[Op2> @B#P4,eת@7y˘Fl=(^ʋ8 [t2]]hcb2`pFO#ӱ )O7{0wעٖ oP3IAY3w ' M D.ȳяj HuXTm%p/>}ף&[UTb)e,s8^,%34*fBC'!'(X%ʽЮRLHkIrh)b ?`Su3*;+K\Iʇ?rZ %c~(\ڄ;Ѓ0đv]O+0ޓ@g/m>Hr]. L)lܿ!tr\Goai0}fќgHuǗc+ii'OEYoE,ܡdKm'T7){'Txцs|h@ߵaQseo1i W{@s+Hnĺnkc@ML՟V"ּӋ *Ų]'8A.<[C3W]s2#\s2y;R88n=0ʤh'xE|]`K&G7hQmmg;,z,^oMN2^(eqnXbc7d+.? >meSqv0o'^bJ҆o(숾xАM,@7!>M?Dh͹ _9J>%bs='|RQ| XjE>TP yVДƐ l=!ށ[%S+hOPaxR)='Gфɿ\u^ԅOm余g;F)q0qP3vbkHRjbH(bEh6P}9-*\. `崦d(\ȕں+xiun'NWFs}fuƙm1PK)qe{Jȅ{/*Qxg}S-% Ed2GJV0n3-J-$1L3tXrѾ )( ™m<2يlL_-Ys=>F|xcXjeUp4I1ƈPwD8zPmz,*!R0dQ%iѓ=|i%@_"k"z LTl«|~D7.dދ7a0d|17!ʐnG %6-l{ܘS4|%f792a o:3%dtÏ([+g@B_'iv^KD2/Zy QpR \ :I K~ڟY]/ZhO00xq!@{[̇P5Qa|eTȡNƋ|xrSdW-͕F-E()XVcOZDB@ZAy[l/^τz$"b=[)fHr2\#JFQ\ um {eǣ8Y?#f?waNQ3{w"Ao4LTO '~H+VKCc!_PuٮxtP4P hDxV܄M!>Nbo2"rSs9rl'wv v ":O p?H5:k^QF;R*잖^2Yfu{KcK'C{Vm dJ׌#ѿ(Aql&12IyZv<ecؚ,=TMh}uzTɃ%`dv5>dP1@ٟI&(z8 =(7,YƭQTԜOeߪ gU=-,R]5Pǽf(E2y&Rjl=Y%$֖RnCX1!_y6L]㩡\\.2`YFCHJn+&.AChJ{r&27u>L: !kҗHT7DqM*_z&)6p8m+#Gg"Kpg賆O,mvZǠ=yFɫ)Jy"F.q dBG=6vkF\r7 3?nÚTdQVICTzA}mh$(߼3Gқ1jY2Љ]RBe^CSH`#Vw^!~3 Q4>5n>T!,0*0xuc:P!ݔ %5gRMF(|LXsOe`'La:"ERЋJr2)N\x[q5XځZ O!x~"PB(E :v:%_ݞH _5rnD/ n5k%[ T,#7b*?6vtΜt4$$&4 p/k#u'r3 1tU 4폫Y5utu k,qzgnp~uLx ,Mx"W#VI) 9 _w2DpfxKX8I) 44({N#?Unrx1ʡ(5;hTтrY:٫T@Y|0M̔;ғlsPN찳[[kCD=qHe]qqi5"_fkH/-ݎ5N5۫SmJ҉FCaIg,eJVtt%ULL Fu!Owx9!,CD/gKl4>]=8p8%u;҆}Rex"); fr|VHΪW$HERA;zkG2V?- ׃\` Q&z@s@^bQ[Vk-+3W(<A 7-<}r{H>./bԙmpMg P y Om J»tvhJ4܄cUERx.-/&SN!Q{)juTFv.E)˰U2@JXԉe<7|a5Ⱥy  b0`ӏHbѱqq}|X"ͰZT}HFA^*Hܙd x"hc5`fuwoɲBap͋z9etG\6) rTӎU!2t1-%RA ih*>2|cPmѸ{XyDE,. kǰoHe{e X絗*Cer;+Ɵܦ0NG[i]z&an$-urp' [=H9";7Ŝx&g<^V `缘QZū8O)5_3=vâ "5]{cc:#0)Op\ 葃6eA,SbW>+ާIJ,j}`ԾR~T1SGH:iD);z7d&B%2ou[SX$[gB&F]s,|?4S6W[b*xuB q ? lrD4WKI;9Fڄ#DWm3J:ow]=Bmrer%Gzzfk|ې=IR2-KE99Pe~J6j05i50py% f-Cl㋡c"Õ7h M{ɜ4S懳O-Q+cFYˇM}ѐY> s0;W@rcEnI@ ӿ?cx Ӕ&ڛv0a=~&4TFyF8nXt6GJ{HbSt`Nv: >]C-䙙݊WYnXdv#k$V9yLooid+sY$ť@a+r *zmcVq=r4\g{M2ВVp3%j^)4j?d6򶆒f֨'y$qM30Yv{@zA|%dFj%UbiABLM1U.%'lXkmd EZR)njHT~14* R Ǫa@LR/NψLHkbIf*4LL )rIگsz~Q!IpW@RZַ6Fv ʁYD$CCkcy?QZlk{AXaA`,n{)e˲OŖ5@ ;XG*y#oh2rKƽo+]'BZ"b[gul9by"kWp "?{&]@mZOfSY vfSJ w).l6KY'Ihi` [wR 䜂PU=OcQ(BQ*2JE3#ʯ,C y2Ir ~1{Q @K(q{fK5|KK7݋A=5LQtC뛇AA;~ 7Is Su6h呅5,IwnA_5}wڇdvحd2N&?'\=gF_B=D3oLnFٌTa ўGy^ꧮw 7A8M>]1OYcҴE#Q0@:Cܐ_PHJaL$l<]h[M[BVEE@|bQkogֆ}aH@3)䒤h|qs-rP3pq3[ODZJ< {K^{Qʮ +׈ (U*6[Q'ʒ"t[Xa tƲfw_7 2 8D(uCZ!/itI , 0bk(mHf=~_@AJ+%vt*"/l*s,M?QS%BV\~!OpS" ?Tm3a,=;T7ϽM8|{`"Q:R.bD춙-MC?=Pr c=& =Mﲶ6@!uǍ@=mM~yF{SLpQ=i|}ϺW `?Trk>L>'&O+/lX5BbwxMl;uz] 0AU"dPfr}JgU;f#Z[̰g|ET-93'+nҔ;;C v7ZC[HoрU!=lvڇ•p$ KPT۞U2iUsL(85@1bjߦ,l1JAK)JY1$uOS3LT@^Jajdc67Z7ң]2%WBv\R?ZVC6i.Bfu@Z@ 'U p>͹f>xDuur[gtEN ƀ3W;.8JfYԕ<X I55 ^ lp*+SWb4-xKFBď&#d,˅@A3nA*na\faͣiz Z[ lTR63q YDvG-L@ej@q{A/lҿ!G'@M;>s{^f# }L o g3q G1͟ӿhha2̘j{q\eSŜUX{І5 rzAOjH>,Hw-*C&(x]No|4ԟC9 .O\H3־(9dϏ\ݦJ;|z?~'!P&tcKaX۷*$Yt +CZVWPI])Rֲ/cjdz2&0A?YskSr7/S=66}0+uY8gB}Wr812I0re¥`SD8CT6:}n㓹)̳ #}87v-T\xwnX@۽X?F∾mr;/^fs?H(o!w atp7i-yhv[5,o6r0ï+MNBIw$T s闹bLQ!7_Y.>od4c7r9,&z3T#kDCͤ!zn^ &|'Վ(?:~{mГ ``v^Ȏ':3D|a:܏7Rv<G_3LY:k_}#O#OibgA,G]9o]VyRD10 },]EO[:OѬ?y/%lo1.Z`%3 =OҩTߠ:%^0n,HdŠJѣTgc%2ȤP1n|R2#2^UIK>sGs 0GVm;VOs-3)&`Dw͝ {B'3CBq@Eߔ˴cLY<Q.Og}/t<]8򴯐)/}dkM )~Ki)uM%jf\H}1>3)zkr> cYLJ-rSZ^/Y˺Ҝ}c\o=t1 _ 7Ћ:v;6b͸y &׶=k uČ0MSp TmvX^0(h/}-钬?;㉝]H9 H7scM3SwcWTIuʭ+;x=yO_< Ө\jS\IN,)5LILjEoLpfq;gC4Z"SXM=cq_-3sNuoSa:a5{H?>q&y$'- !objjC\(>~ 9UaUS.ad%r9V:fr) ǣcoV 3JXÐʤG9/$F̦jo6sIDPNtV"eޱkYnt azƳ '$Q5'u Ҝ}VE$gR kbuhv?- jg;~+" 4i[ /ƶ,0{*>]Hd)I&GǑ Sg|.&M y/m9oK6m@VǞ0P(u&0gzJC׫+88l%.ЅT]M.DT7= h w67.}h;yC07pN(L7potzx([9$݇u5\Ln?6ksFq_^^t/#2[y{ ֥6`ylnnITW!HN)l z, C/n"ϓF !2~i`~FExMάUq7jj` g_QcKF lأ"+^E!W0HŒtҙ,9Ϝ[3%#]@(4MqF$dgMђL Wfr!Do&+Y<K׋Za~CAoY11ϝF2"aiX`R8W e .߮~} b*!k< LSʙm͡]P"_OoDi\$e1^@{-|| z݈8ןY͕b نs/埙S瘺5vMgƖe~,v&]dlzƀ^[p{~Z7P_j3PΥW/ 1J73-pBwiD0O1L')3#W¸їҥ7?Xkm~k{8?e!ƇrL^%_g9U[%(=N\ aeK woVs+$32Q |d*_\yCcQl J?4V gZHP{Ae9.s@3aX7?8>%Ja}کK8)ë?P``8Ւd9B;W9hj( i)!|\3kbҥ\PZD(lWXo@Rf`V(9Ъ"M2gߏ<՗1e2qHSX@gq4b 5}A!Qf Ϗ%iZ̄VxF) úqvTRfIb4nq?= E!4*\Y?^!nw?jK "x^$vghv} w3 |0s !㱅ͽݬf)dz>ƁKSѷ'՟M3a( Cu8/?jX> l R6niIm¤Ýd@6',ÈdH ]Z ]䓼\H8VY954@ewamkѼ+*I63pdI9rmUt-"NXJG#Bx ['H_vxEzQyqGcIʨ/Yki<2`!d%kyz8}Cj Vf([1hj߹4i\6im޺) AUD|bΙM&u%/G|u:xf6.)NAY 7MZKqoQa*KM4?]$`ֻ{+ xl(7 臫%T' G@__'{>nz=eboPqHL7Lm(qv+ '9d$8ksI nƎ`SX}oC vrWNTMo[nBn#J+.Xq%u N +03j|mРt\-`w}{I_Ra.U 4!p˩ILg4Co~>khkzO(Qʇ-OSҫUO?pvW>@x]~*~튁rͱSu9p<1,/ )=.אΒ@~ρU,\=߳N9HWT( /F V,}:^!=oFAOhabtBL4'%s2ouن_V jER<' dƈ3}@#_0S}XAFP/g51\cѺZsVt}ő(]5h$Z/0n` X0pɶ()5SDbg>IeRQw dp:W5M LX) h/4k*w@eS;gy=a*zvΪ ]*j`f:`p[ 4 DQ3lݨ̐. Qݏ6ˠW/PzA'6g u;DdC` Hڋ]ijnt3fq1w,p:ѯEQ[V,~*sQFc|buFGWhEe/iNQtùxͮ LKi>SK41R.c70%2оjf@iA&6>VQc7vFi2T. m,j |7Ƨc!tv2֭J>E'eGEAOoV tc!aOU$lGNE',s[-' O)[49a*$L沥gM慠85N*轪LpiSqhc] >쏭X#7.I=8]a'm +BKS9ISٔ4~k*!qH:B_m0lFQD*ٛi!oWj653I%htXb 6 L MjC2va;Eq^`̯bos4f8lBQ-;bm4*OyxF ՗rD_D"Ť̢zmã^=M ΆS]u0xRȜapD2>(XAU\zFIz#?qnuv}h%طMӄ}lؙd4rYV>Xt{M <#BE:Ay?c~#;S: [NMgwi8cFb7M`3jzx(B,RR1L_ծ(ř}QT\iOV_w%[`CU^S%ϖNP>.!ƔT)=U.1ģ{;HE6D#C!$eHL\o&EƢRd@Phm״S#l=~aDjs'`2 w(,EݬsCsyf'v 8߂kZ.U㽔t<63|$P1r7Wx΃7v]zR.l{J"AlϣdO-ST 언g@61P@Rl -8V]5S-f#%f(kŧ.ަayWRNy%ڨ~ThIԋ%q_tЗwrH7=m l,Eԏ)k8o.gEo8a$%VONAX8Px[Or}tvޤ/ u{t(\;(H1uTYXC' [Uj cbg*`-4B#Y{PwgL60`7"Z-F^HjwOC-#NA6h@fU"3>J VA=D].lKgk*4,."MViMI!]sYG(l<ذ1rLc7w;+_[Ő8A(aKa@-Aَں^.T -B~/>]? F I/H` 5Lp̏^PphC*^1Ns`p6H:X*D{ة4OHTTB%{YNǐ~]G@{v3)/KNzX )]@ϴ֑[p9U&p瑗3{|Ymg!ݲ6vC`"-V;X(W6 fIʼ視ޛ?t3,s֒'ho cu3Z['Ahwo^_($ {Gg0 %NI_ފߢ|p:_0y/R|ϜyN).LΚIZYN5w]QwڤB9SMP7ÜBK ]*џ@ 5\} 9O!qtGNy$pO9w!ı.QuXiÆ .F1;P~_@.;Cgpo!KDlU Z L:RbDr%1)MѾSov%f;ku ePn3ЃVɰ3(y,cZ5(蕒D$  tNNP\PFPyk &k@ uAbt߈.SKqGLZ#8ּeC)Rr~amu;pGkCZ:";Vy^! Eש׏-n]qY/TjgS>':mK ǔY1gXP8SDcwQZnU*}]%"˰mpѵ[f׀Ōrw"/ZT&BV0s*.j Tvc*t]'9}Csĸ.IKDKsFXBS5l^]$ۋ0bYE>VÈ?auʊq1G5% 1IZAV4n,.;<~1ٝ@)E1po.IvOtny,0mw (2?C+$Qpg@-L~RFÑ]:Bqf+Q z}LCEKRݦ|}-#kM*q.l]_ )РcmNDvuSbI\Jփuw\i[MI6D9lVtdĘb'$7Qv@WH-mLpY(F-fZGS&$M/T4]vlT׊\^aK,jX6V5ƚ3C)\l /wO<]dκ֔V)Gv>J";7s#ˣuJ!3l_~ \%eYoa@4R}VM?G͐$mٹe$DBWO蛳9EUtݐ]ńL mbύ0~=_s~|)DJ`7sU3|HcHQbf} Mnߒv%;kHPN1 ^ED!v DJJ~:\2+2:k`g6^N!$do~ ƫPh /rM5DW01*Lb榅Z&xxc0޼ 1Q)HAzOQ!`ۙ\.UbIu{3b rk&w Dṯ 9zc,ݣ  !K;fgìPR 2W [ b {KCښ, +]`8WC ~շQ}I;+SL =fS1Z[?}'HMp4xjA}vUl?v:y|lz*oW#e&h%GaYݒhs|s(j9v`k0rJ֥ Tg y`L(/Qm' oW>q53!e XGa@gfN{S@VO<l O亢y,)ϳe 82\Ka0c^RG=>߇݀eDIX:WIӦS|`?R&G}TWKޒhTb\EYJfh|*u2yVC=u+I˒kz<>B w"c+Vs2giw21|,yH&1!{idb/F6ll)?h#bC^e:DUK~Tg5=III q .@I D X$RD*[=xbR5Ca"j <VT:eH]i1CSHAm*ZiIЌnUT#e_}Ga?>6 Q-@P037L&D8){9 ;+=eb*C^ jo, k02gCiWwC1}Qz6,<*FKc8`nYWh:kA-rӈ=_ؠSzÞ,QuE.zUBZ`ť#?*QG")GIC < 8<WYhA6 ny&ڌbHRW8uI UlzMATo; -=&=DTGM~M)RHO:/Q1X&0D<&`O|FBc ^yj/WEsDd"ޙRCɬRԵwu3iFu)]U2/Y&V)$Hb ~J)XrlH .7>)uBoc) XM8'kRBӟ -p5IsZ3kFn~[djWq1]i{,13fjv3Y!yy^ҖSM.J+caHLEPDWD=@LDQ}՞KW~6 P,CŅk*ي(`fa8n0a]Tj>ZYE)ћ{?evl0$Ѓr i~FCr(M7 Gڱu08m-CA]I.\ݓf\QE8T)OZ-8֏&L6ZK4 [bZmvÄ Z؈…&+ZmB$wDOf\ w}>f Mm7IdڗH d{!;nAlQ҃D+>YGc³ԮoN/Miy گ9f9WMn$kF.ifȠ|gzu`6q_)B~3T2cs/x55cXSe8ˉIKn#>?^DԨ[Iҗ?g׬9R%5VJk,z(B$jKcTi]Ҳ߆;PSo˦Pe]8a`܊O6/sKXfT=][X;ja*PQ$ɯQݶ$3PA/[&z-Mȍ[ByPn#).WJqZ"mcj|P5|}7vWSZgbu߃i<"^-cQ$E*ER꾘C)>En<'W \.+)DƝ|jd 74?@G6}^ LjKnܕچ-orL1E-Fέ+M[VhW6|R-G?t(J3Fe{.X/' ?W),%l{ˎFN1 "r!-@v8)W#-@͘vs`^N_2SbJT?W(O+:ƋMlK +w5/RsvU KჽR}كsF̹f Lƣ/)?.03'#1=%C"k|LNQHHJZPU<`\۹梞Q1Ks=e߼r NW/x]Z/y콵$yIJs/6ri%4 F-k )k@lw ПݼbdQEz%[ 3H'$;V`*jc\=Mg%\V)~`+hF^+GOY^ZXZj~'3d3!)qne`CϤtYm)CaEܥieMAujuRLbkPgXs"5եe\ۭt0?gFñ4Cp-Z@ȜQꦹkH씫W)6ZQfLjv[싕A ,EAq"š ?|b4Pʹyjf(D<^fJX?c7ZX'=FSl<=oZ=way" hMqr9rl=v09AvrD\ >+X0%w͢}SH~ 4bڊ}XXMRdU&x=ؿ gG8r5P2Jr!4Z ͟q#% 9}ir|I V$veC'Yena5)}um/7 (S(XU4 q1'd8`|NT?!mfϪ=&.Lm []zK$;Zڐ:X3 k[c^E2v $0c D|z!M|UF̺5U{a'^ϯoX͆Cј8cTW5c^տ =[E L}GaM j~$l@"~"ФZ ujxG&gG**f}Sӽ[/ =ǺGC1K.VttYs<ʭS5yh-F7VF%]xItv,kh>P ?O3(5FOA.k,95]nŪ>dgS{<'<&qpɱ{yZ/Ocwd|G'^ȟK'҃F綦/ .xCo3Z7v\_ hwi&Z@Lch>CΪ9/4Q/SV{^>2yK,9UB߻ ł(Q;@?dŒ@yVv>){±eҗPk@(v.3g*R }T֮C?z 3b?,#icLfT!}[&o4wqM38@_W>mu@s5!)w˨Bf.Z#&'#(=Ǯek ljj &RL=,+ׯ`!_RJ)^llNI WQ4HIʉ0=ʮI֚j UQ˳Mc|s6ГcQG&ԹȌ@f /L?(3'vQʑVz~=ҹ׷G5lAD܇r \'L ''Vi*.=y^ `fPDl"HeIOm~<ջ>*Y^c͆.x!W'&\-FE$w_r2 ͔ߋ'&~O nwÒ4 ITzy(PcJ,)"{8ۯN27y"4;QUF7+MQ !83*kѸwD&u5{g^e}%VCI`bҚs\Xn)þvr[u[q)ZuiЇ5P205&z'$0LmltҾ!鲼uV%(υä([oi]QPÔ#Rcѱsci02jx='ƞ}qĘs&sY>Z>FJFJYlikqa|ζ9ӎ0K\D `nnQ2% / {DR=@Di%')N|tƍu)uNqS Dbtm{]e>4t%HnFEoE{tSƶq}>w]~ɔtȈ>+> 6}Hǻ>V^k8KW\_Q"ʂF2i5*{lNWOňƽ .+(_0k="vҲ"Əd%5XjzA8MYg]hg{"Ղ<^R3cY6 {;/%s>Oc- *+hj'N52$ d#q.9>9wj羰G:I݁W5<mn>KOqe؇Ww|uu4/ͽ'm1Xk`>L14Nz$lESrQZ2q&5Mynut_*힭Qs\I,C-yN/3;1lX),y#@G#%w\z0 SYKP* 9zc%Yj1ILCkw\*s؟ůA}{6XqT]y}@V"bhn-k#7ks@O]Qadҽ<Ḱnn0e~B 4|@|Lwl=Co2gS#'8U%Be(.˴dֵgǮf6Dr; *n2rla_I7)@*NWiwm0MY7~0@|NKchu?i$Yf2ݼ(4ixOa\N%wG,@d†?]?Si t%sCKP [p#hD:TK*8@6+e*f@@-lK!t@3ќ{]\HVԪ()P>PFP}CQYp+;>xX[w*F8 ]KvK}0Z^n \|lc|Lti4 x<5h{nW8046ß<[]짇cY"|wq |X嫀MmNK<* `TͰaj0~8$DQȺ; [# HIWk+PѴp"cZ'CdU&llv4=ɴ!˾wTAgRAm9!y^Q~&m76^ߋqtSUofOs׶s 7'ilf[IO1JOnH@ON&'CHK .Bc$-4a7j2p;l]ÒKq-0Tk" qcOJJ͚Tg!jű!X{Ip՘}+߬ͳX_ .80oxTk&Y ~a g4u%rw 虎eA7( KR9Hq·=vt{&>״.N\ކyӏ3O\͒_ΜPbmKMl+Y+vPVOoK$K2GA[>p3_"]ip?3|gb?p\B&lŊ0^`#0;|qagE" 5(-ޟ.68S oIO]h28x&X|rb5q1q"lͶ]@U^U6%a{"n~nJm. DvTiDul:%Ht i[Syr(>e}(NL~_\AL/d^*ֺ/)KEPz`,:D~t.Y7d#QD9J rZN+;'qHra,+bGuYjjT'7qq䎎?0ɒʿ.om;wܕgڰ؃ r˫{`LUv)H60Y0x( a~{L%=7|0ٌW*f?[էT0ORK9+#~__]yz@,"MX hvrg>EV~ݪP')Nl+}=fmʦ?G"_RJqkkpMzhI]EUY,i#uG&[8Ӌ4^%V5L3qhV![aAN\=!^T^ 8hTA5wQ^ (~h6߁?43O'notDK7MaVA.YF pɄ%V")d͎:*QJxar7UVtu{@w=@]wUPD~w~t5~kMJbq`Xn q!ҐPy#~N_y"GCttEՎYXm#ae#o0q%gw]NY)*yf[5I OHm"ť{㌍/tCr~tSD -nJ?Ǔ8(QT8+uI wd%S}`]!VkH<0}#gP7XO/+0R19A174vXR*^$WTOg\Sΰ6oEc 8@zMP{=PYCi~Dq_lZ=Gz.͐-\<ͯӆ{N{ON=tXnlzzǞDkɡCI5! Iʯ%O4՜X(f=L9kTXc}n>qWdA mov n+/X2~vX\K ?1_Ø~vcXTxxfy).:"8¶{FSk- ЦLU!>oMO,[9)3rp* VtPI}*a 4M u&M&vvQY5KSoR-jm;I_֘nz~7+hT^.+BݱB s]ؼ7o'a>DVώkܵE >NapU- J?^SE4>.%?ILUedٿ~Tu[5!D".M@51IMw]""5LО$,$UrJ&AY0| &bawz?aG( MZֈ3ԓ&~nz+WZ] 6UZZ53 JMF"=h n&8i1y,BNA%ۨKNƥE 875.D 1t: s!,!שP2[ً=c\osd zsT?aG_kGn#H~v?d&{QSF8R9|"b!.Hud=މD~/Kx<$c[^)hx! ;n6]w  $f܍ "Zu3yD6YLɈC$U'+Fb5J;; }.?w!󳲊Kݛt"W~!q/J% I͊Ÿ5Gcc혒~-;=گT;W^wrA m}s:1ov8 qP]ЎYWRHJ 'UhgNxk$iMf\ B,"~1+i!x%ao/: \Ije|s8yp]xBJcy2LcO?`zrǬy2j:đdQKdytx`'60>s4=O>MT zJice`9mrCl_"} z'e϶x G6aϡdM˸)@ Cj3 .;?& pWt{5Ͷ賑 0^ȿr}?$)ᐛfbj3 h!g3g]'=c8&MFX\YfENIH(wW)f? Vv:{tawӵgׄ;^1Q@}-ꎴcƨЂ\L&V`<ǵሲ1HwwcmA&HJd X2vDXRK&az}+R C|uOl(Wpc ! eg%örEչP0زa'-MD]%k!PF-+.vGKL+a7&}H<)HEQN8^HQçG䦝>s!RHYcd'+Wc5]hh}WxuW}q9`6#)$9zQ_s%>8r0~>-}+`>:tI&]O]oOm.[LML{y"&$OҔ⦔+USW)e"#J .xєz)XjgxӅ\zGiNy*`vc秘e4R|줩wonasq<=oVlC([\tQ*cYEҐSƞ2?b24a{ 0~ Pa@ 1.д0ۈp !,.Q mtBXF\ 2K[ﰩR^³΃h s1{ģ!jv*Z_=ߌQzZx-ꟈtl8:LI06h+tb3ahIki FTy6Q>yh{i/ h= ΃]zE3lPAyɬ7:-XCxdQ5ՠԶzNvIlߑw$rdqJ}#JeQ ;7 GK5n{|S!kE}Hs#`KB!B\ mcwd]O0 `r8FCZBFFD$mf0RIq9nDzJ-N+sLLepLKKOJ1rh]w,M-$P9e"kkܿxqL_Y VE]Iڲnj~&3SA,VѼӿ7 L FH .; 3dNrvhj")u0us<^{B-y FLڇMg$C9Dqd)w3v վV.w`*7'h{r2NßwZȗ+IׄE]~ιup29N^9BI`.msk~ šwQFHN(>i L٬K!"{7\H-7lbs:8bGC-UC ?u0FFH4gJK>}&6y2AR MJg+-6R6*6rAk6ժ&W1Ν1&B`Vj5XKWKһni :傫TQxhvoZ ?:qH3:h"5UwBUłӧOU?Y^]˂.+z=p9`&KkPu $nRzp/1Hh;a.ܘu( 71^$}DPϊ0CnӀ\—kwvF= 7 ߾eEpk!chgV̬F*K9NҠ;DPԄw?D.Q2u?pֹ㞂>s|sI3>N KYoǗiH(>bf9><9?߅FW.GI|@m`w\å3>IL y "vJ7 q=21pX@ c E`v?HM:,${w]䘫tt'.I{}'o\-ɌjіgϯR{ݰ (8g'I zEe]WlLp]ً]ͩm I P:~|A6+Н4?=qBI:PV$]0HlG_$Р~\H 穩L'eAC g/N}nn tꆷ*]S0T1t&]}8{'y$^ RM`1gs¨ɘfczZϬ̙Jvr%: _'9;_\a&Ƨvz7>I{:!0_<}W/qsaK ΡZ5 TYI \_,~b@8kez!SMr?W'7$B>g:c2}mƒӺx,CQp?cU P,J,57SJEǪX{hIs4sdu>U2X};yD긘%\gB梐ByӔg7cu[>zyI)r:nN35ByL^2:G>*=ˍ#}Z?;lkAS% \|*<,Aq~XGr5vm I5(۝3f; t,'G O=lrL-G-? V {8"L1yʓSx^!߅,Bk>'Wڣ, +$~.B We2&iV/H.=P C͒@iL`)?l*dq:YM"YkNU 2t#ŜA=_򭭌aIᬗb+pCW eO`Cҿ L#/ :.-|07S;F,IpO&4\^$ ޘ$~>FO?0-&2jEEv6jVK6/v:pWE=qۤCȫh1EyAzmqP-C7XR)6a(Y ,'"qI%95E|Ud5ߨ Sq=. {HPEg4jXٺohMwZ&okPDAͱRT~v@)/˟OW&/kQ3]zLROuliGDùIN?Ipl^86C u#:ЖDR yѺUF±7T4Й~ly_&^xχϢ9CrAñ@pVNaݾ(58"y϶k`L:;0L綾^%L#c!ՖG*)v=sm1sl-ƸŰ2_Կ(&>>%BH~; |4;&ĢSBiM Sr;s!!J[ldl ۖV7 BHʲdu& |gjWA ЄZdБd]Pv|zû{F>u'7>q)5E>,[M*oĂ~:!*5vY0gV2B6<Ċǽ6˷SˡDSď$ӟ)ǁ:lmiO ? #Zw]331H< Jȉ،YO4\+I&܂2  DK )Vy  wZ^/ aE+ S'yQ.r2dZУCc@^sQ_fiP( ]{w+E}X~C9!/Q(ucs~8ȧv9~Ocg5&ּ0 :Knyqjx)Z0ڀ&\UN9 jzlf. EQ8NTah3C4bA| 𭙾^fQh(~d̪)Zݒu$NvN ؑw9Ddgp5>E5\r@+^[1&%yt6ebǁ,fkI7;G;wkj!Cqx#iCi##LcYHoQ=` n>H +DK;穣P@hOoFS6G %kyg?yZ|ƾjʥ';yʱ褅B*_ +ʘ.adCۅ,|`RtMފ3uvS8Sc71n8ĺ*bDU'⩆DTh/CVjoAn98ӵ&ҭKx:Ϫ+bǺ ]5AJ()]j" q7syM%gAȼގ0|HC%/)s*Cl]3q` 9iG)|FȀ7vD&$xIP1VXrlw`L |)(гI΁p8H3TR NCI~E#y(UU tanJNTSR 蟯c.3=HGHs| kX pIc@g[ d.-N\ >6Xډk-swl:6 }'0݋ȜZ zb,]PZ>MN71\/+z{N8(݁S^;hm?"ߞё)EYv,0rT֌!U'Z bYtO.ޙR-Whc(NO-CJ._H=Yro5(+ 4*dnSB8iͺ9Jg$\Dd7 "&(`%sM"$QʖѝV&!&@Џ6:yYb$]MKBi]5g~>!A?9!JZMJ.b/7unab@'4fH' `_VL /9rii+k8BjpЂ>Y $Zvz.PH7;F%%5ܠI-}diU[nb+~\gqtI6c֙BybH1)Zi s{޶7xuMBU+4u>ib|.ɂ^ZAJ7~e{b C:\vτkӶqyby Q4YsLM?[/yB k@yziI9ψKxAE"w-B>Kɚ:/> ES|p 5.|xqs]9_24FT>O4 er^|Ϝys/Z+ b&sqkw9t/=~^i ׇ4Ta 2=cP& c l]?яg{twWخoJA>=GR7nz/\կBESNhb0_Npe*=;1чvFyɟ mz\icm}/\+s/.yX)2)0zBPL݆<hb!ɩMoIR mTo=ozSw_+u4z0 4Ex=G+EQr*l@]k!2[ ,@<<@5 zqxsx"I+`Ԙr1m%nb+!@)}6]M.|W>-i#$,"nehPCĦgCCmDxP*i# ٯ(Ēp=@.:kF&UMIGu2o`^ȏ8>(YI?]D^~p5+@e 19u%mGﶍ8ҍ-<0ko=F+))~$Ϛ~_6Y-05hM? #}5I_8ZR#] FClY)n)n]8m>,$k(>ȴ^I%di.n0AԒv0D| \[óu俓4mHT^gd~F{ƹqD9+Uifc˷D0dgwZ ܴԞ(c'fAYG4.7 mSPO[kh1MU"F'j= PꋭftUǣ(Hh'b*afRop(#m=8N^%Q֐M3ۿra$QxP,@_Ϋ PAwq#.*Z3'@r՟z x]IH,HRqJr{aEUyJJ3½Y=P䠹('m7mRZA4=l[a<됵)2@Ά>͍}/ ˂/8^R~YC]mfuWnrXq8`,`g30B1Gk)λ^ܒUs^|‰;Z; XWZ6t@4@C[ m2O@ 83cD)GGiҸ P,x!8S2(BO%HY V&F]My9l![F3-eMVAb\/^tܰ)2Z?*nޔP<>1|H(cC1sh\ ? W1r)&&bcuuŮie^M#<|fF`KTeD%5úIAfr(tȽC䭶чq/I̔Kk3$^/O֐`C]gs1t>JX4\MHpJ*/[5!ka*wC~ NO._- LN_zS~2k@2]@Coa!&RW*, drnag5, C?xW8fGSھ] ʀ@0zIf׾%0ȪCaVm'sf~sbpJK{AH{9p=v2McXn:$eKz!1{yl-Ua5~~g#m6s$ ྺDc ub-LEW^\\. <n }伫~ypqLԇrAҡlC.0_`$R mij+60f$ʌ'#x!ſO*+Ozb93F}IPpMUX2 rM]ҠUR_iJwGZng5tH彯pl}N=GɁĊY:*2qpWXmM|tg?o6iD3nk;1^ Y.qUcm^Nn+ۊEC_Er HJ=qX%͇jZlu=sؗ6*`PƮ5/ >()G̥p1XpG7="Qѷ"އ9ot9X!OKj Jkx&.Ѯ=OxWГ9l#hP MJOue9y@{!)y()}Npb_K>NOObTc֬&n7'!?ffVڭ&^gi1k[Pa5{Ԋؖ*sy~6_,툵J&p3{6f4 I9蕁4oSܩOYz\MbMlC+=UG+$\o=|Xjrg nq(;@@[DKd7XcAByY2-`"hyԵQ:o{-i7a<~E66нr]:e˩`L($L ڻf6!; ERssO^=#=thm#A @(=?=h#$^ 7sn𰔙 1ǯ7ꢯ[I:Uul.*<7{LwI,~ȷ]oyX~eD /7R M8#&ԐjX˿UHk$ 8{H,)Q`*QtzfKluv<~ Ir\( |OK^nFU͜ŽC S->7TFDAq$%QԒ M,7`$$K{2C?vYׇ#ł;/+{,NPZ2b|b "۰]ϧ"uj֡ĸ@@aG$D 'q=`i\`!6A܉zm+:-\Щbh!*?QX6: 1g7"G՚ݱ[ĉ8|C9Yx>F!"lf?m],xbMGbkބsc>&kG!c:(- ju'AY蠛u5;x+Gڣ*|`eCaA!HӞmmנM}*y<ÚVj% d%^Ao 5 *1YDBCY 6&.͘o[.#AVzCX4#W6JOS0|Gnr$N:ԟ:j]^l"j͋Գ+g~gLD=Vw*HA`-ۦ5nZoʂ]^`ݵ՛AĘo 1.SW *P?k$ޢ5F]Gֿ-5_+A4^B^ : \h/дAxO.S|:qnEuCɢQUhcy֘JJ%ZB.Pw2+p: '`Ojd`5\p{P8LQybb[Quʝ2A.;UW>CZlqɤrw`(cײbh%{#S*ga!e e:w*7Kp6%I8E9 DH|@gyNXti? Ua"pF8ǩE&^S V"PPwSI'wD3vb9r@ +7[D2: >$ ]Q3LúHFdcjӗJh~ehƁ-@$+2%06/,SUOZfzcalzGҚ>| [o)+Ͻ>9 \3V=5 a'5"LΡ=Pz LCi/ ĶﯘO܌݊˅l:3?}To&PiL F%}/{ZCk<dţ0JkD_x!|wqrBuOl}UƜ20¿j$2<`OȒ=Mi^q3<NDEs8<Ϩy_=Mb0MHٻ  Ri8畚*,_"$a4Q<w9K9ʤ508DCEM4I O&D?DFnLn3'/ dUK³YrP2m "?@% jDϺ#Ke0]'*|ŕŹ3.V)e1Vdt܆SxcUO/R)$˱xc<4t\X/>YHh| =H8/W0yŊߦ 3t(Rs7 !z4r'.N^^?: {?Y1J3T v2Ow4^A]r68y{[z-FВSh RMJd NJ:}u/m$w:<{9#T bh.ُ0UGuUjqU3!`wަn|5p^ҙ>ݭΟSܯ{wKLptɠSdI>yH{@VAV_Gdžȋi t.`Qjhm$<_( _LSgQ:Z9"ae+:K'aB`g(K"cC,x; t) 21B#?7.-KlIxEOU|m~dN qk?Su]J%հp ?f;iz:ªLm"YBw[~;A.dR`վ;,h)7~'Q;Fx(%*=k) ]yׁ.on`fgN`HH0MrN%{SvtclY7~D=$=Cy찆4AVS+)a~~mc{nܖyٖ;fo2G>=e󰲬ē7% * >LAWyš;s[l*>m6?k1rS؃wV>RRIqJ3BdYt1s,Eکs+W&.K cUd}ɒ4"ݯxͣhN= &/U &I^4$Gܒh[cԟoDL\ ب+ -LmKA@ =%[ ipݭUsz[u\~mQ34XBM8̒%}FY%pP@BoNɻRդ 5W"Z4Hij2c;]Қ;'4s4֎D8;zr"U8zԃ!|=FȎn%q4vOEZ ͛`HoZ8DoL'k6KN։5]P`C5ABF0݈#{pAăֹOce}bn*hpuդbG0ٶB#WAUpO!u$?_gs[ATTuu@MF- z+,}1bq^hQSLS$#trխ D#̪w'nt {I`'h8پ6hB_/#Դ|%.!QT?Ժ+eӟ/w9~L< -# }n `4gё+*sρrra^8]nV ȇlI\֎D[ v.V0P'f +rاj{ a|z4 )ԷP 7liϐDЖD(T1Njoe,hT9.EywPZ&5[ˀF/ ΚS$ 'fJt#_\`$GzWU7<95kKUYh" 8g?73dfZ]Y/^ 3H֞Ssc]CŃ t6r|YŵOsQ$V&7,McS{6_ňX`gy˜hdֹzk1;hBs)|̰}b|kh978kPӆ0_'tUVJԼճ3}-ȒZ|uxʋ+?`ͽp`qQU'~@*=Us$v!b~CN`s";Xa@!=Xbѵf>1 |92W2p9#],fI_T[NVcSzXr\b-> =!@p,a/($]jAU=/x(k LWARФAajsz`JBl{?1 9HA Ɗ@a('z2U+Gl;w|:?.weO EH|>k!f_b]#xn:~s4.ޔ/ ]M (96k?C!,wa?'emSZ.CkqJrlX.SHuRà . nhMs[eUYRJ4&?/H׎hr5И'=ux7lgT-3yD -lq;} =6ah|:3VcnOGTQ;P||07قi |PG֤ &v[}ǔ[bWoq˱ sH,X?}a#1|峷j:yzEhSPW2p)q@mq"ES)80'ZKX,.0'x-*D{P9Pq+뿎^hbP}' QR Q^2qYa~!7=ɼ)8$f@^\՘iP/=h9=K٭zJ"N[xkEuDي &uK! ~6ݙYTý|MױW~J/F-ޱ 5EMU(]UqcPx՛jX7.ig =0i\CZء{UUoJ+Wv/"j@8\\]K_=sJI=h_8c _'HۘryCN(噀Z,o!}d$8?ow&=יiʱFO]ŗ-p9nJpvJ>NzOXSqAB26JVjw96/D=υV 7N|/~ay}?s:zhj޲ar(%csdA )Le%Ŗq\K6r,T6MJ^,a].RΆliOHjFz GBav>H4Q[N#D+5w/5u-C1W%id!B+3`w&QHD:rkJgV\f'C1HFXLͽ.OJL\c(ȉb&Sq@Vt=@EcʎTqYI*{%J tW8'O/D(SO_/D4)B*cj D%QLK>$oG#_d$m);26oPF *cH;$&C;m1N74W0*~E*j d6{ = C㋮ _Є BZtO6<8:%t?0/h^\F7LVXk4I0(=|6kvE)Ҭ[~:HY]*mv&tTW:`h sT$*nZ4WZcT JH܆n\OCҕfԟ<'APA~p̣[?DkO'Lׂ5~/' GJ%{X"Yԝ1x|((;ˍAG axT;/4M"|L"ӨG'Ü5E낔A~7{DK“pe[*MKHԮʏ|lYK,љ} i!. a;u4OjwOlhk=ߴ޹<I2@|B`竄7c4!{9Ts̱l ;']o+HiR|@"%6D{yсUXĩQ:o+&56"|'!]W6gQY?s^%U)KmrKPlFSv#-խd$+;p|[n>pO Oy(%Τ: t@-lF_8xp$ 5Mz5gKV=~:(̃|1r*@A%0 Z}dx/J(W v,vYi>SY/#L ڕ8.>ftGy~OHyZ,6:'8 a@G*=xkVFEػwP~Z^NPnoR|PNGqk%1-=Yo&T%_,BJf!`|&eF%A+9WIӞrra=g8+8_צ`!U.2 x].EfMw{6ry=Ր/Uv2 b1[T)rW\϶^. kUΪҡi{[cwLYMNl*n*J̞R;o %hs.MJ^z(*ʾ( /c㫟䅥*M@!j T.Qu"$MCw+dM/TsT($l-6/(>wjaI)7/VU5MW;xk5 rke]eqshut,yVn 5"NaxɕZCk 6#uVE+IceZ1e9& MЕT$PL.f[v;Ὺaj(o s+5}tb9_M,SҟgblAQ$y-n]BDlu˅#4Ew%d;t.4P~y,JM% DZr. NlS$D!>aqa$v2T uofGNe,HK" ;TEyNs£O5p S)"lvm,>f;;FclY%nI_褆_ `t_ E^oեk"By%/Q ĔàA8r=|ckE3IX5xd,:ZᚺN 4"R}WwP2AItrim}Jj G#$PEڦ2OUYslX]xQZ/OG5ThV]v*fڧ.{[@G4 'Et߲Eڅ}; ~G\V9TgÇ$_4,3z 3X!j"HAs ܭS%I. p<9m $%m{/:aqYDJDO zR^jc b{y<'.vbaākcGx/Q0\;^(T(NhWͼ0Qh+3Xw4$i'g rӫr.إr4OtxU)TmX nh*6y /34Z6xƒh \GhQƵ]_G]**hxjn1XR! >cj+TerukI<Մ13#~› }hrIh 쟽Ct1=FZ/N΁O{b5>1gZa>wQ2~9ފyO.tWɖ͠ E+ rWդjd6ā_}L#`.n!:uwe<5b; N@4<@DlO'g4e9\;|r/loGd"r5Wƻ(d*\F/_U6q/Lc,~lzez#*~Op9M4߮3e <)mʝa2` P^eI@v) h9mbfa(' UHxZzI('W+z6g-?]1A[^}7ߥ OJ͕BNWZyvg&'#4#ei31Zto!S_xAoz:ͫ)[=]_=E+_gմltpy1ZgSP.ur]rXԴjs," 0ȌthiBs?1(|UT3 U1:9tKI9?_OiFwU̟ܬA-Iؼ8!^`' ;_Ge+jÀ6sz~Vk50ⳕ~"ZQ_QZ2i^%h0ac}1,K=_KS@8vY\,'#9Wȫ馏"qry?~-B^k$ԝ3"qtC#|*0^h+bO,0fnw~N)_ qX 1bR9fX*&Y>G<6'G17gMRO5f_8az: cASj b7BIuV<}A>hlr$$Ir*_ Q{]јvʷ7gs r fҽTԥ4'}:Ȓ$n&9t7weODG'n#[Ki q¢dTlAj;3A2S}1֞߸&bOXVJhF?+rz)~Ck 9TZ2bAy6{Aă.!aݝ|ykn1#:~ + >>MeWXL3k"?UH7Oe2^PmIa×&4;AJ8+CiA1VXàKsM>g-d|Y%TD~vLl*eŖuYx(F㲓5!>?hڿcYC&&R:>9>[5Mۭ)^ ; EIR㦸P+ͥ\F3}i+p zմc lE\ӭ59hRsIe0WQF5r*46pKfCT0D*_! TJqJBT!7l8fC尸uݗ&\ꙓ ?Y䲚!tGѼM(]UK`!{yAƻ=*d&Wg+ 6,6Ӫ C㵪5Mٛn,iML2{IR[j87i*-#2Ç~B_ Q%33S,r|xZ@cׇܫns N>&tYmS,6$x`B{y󩃃퓔/jQUqR#Cפ\l R?B.ʕ%gRID5ڄִ+!h&T=AG@7^B* U놕4-lL.Q4cY*QrXf7Mّ=%mI3˸MZQZ_)&5D\ g6 A]/eQD6Ǧb.w/Ck1eX7Qi¥C}Q;qJ=':hF\f9 lϬuO5/`Q1`g=ϸRQ/@pa>Mm|9I䢿)F˰Q:Rc1C{W֜sWtM5#׏>ν@8Ⱦ-wm"k'@L[zN?(0ܡfZ`O?aE=']eSIf;17Q7Eu}u+ ^\֊MN{٘|{ o߮ԠwJ/M3Mɚu`{aзChjztb/ksDo` < JM$]q :rK1߂ޠK ]UWe䌟X`ѲR<+VDvB I.zB8O9 ~Ei!mz?9U@?Z"x/Ղm+{RĚ|d[KQI"[C#0#)VPaلLs R֢vΞKk3vE{k?=2k.|]#$|mQtEv7ACzHt"W2aQx4c*>%WSb%DIduM|zPV8zuX{r"A=xƭB n P10SW +"lY#t@>"t?&rv햞Al13[Յh14٫M>E;Px8x3=2r9DT7AYVGBpaC$N`rR|dku@:N2`;gaH$eoYo(y2ԋs%Vx`\Ņ=xQTޔWDKׇ6ȩsuQ/K4ZB@?(GFxvzZ*HuD  IƼ9eK7*#jf¢M)DoWpݕ Jw@RDvOYɟOH 41-r5zM;P+tȾ#O$< A߃b 4H8XKj/χ~Kf ̞) Χh, eYIRV1yŦ㬸}1A$!y׷nR`>` EgmuFt_dz0f7I8e!9Gc1ڏd3\Sjs/ƈ2ЌMLgYk&MD)qMinp%}%Ck7i֨yGjɞ&bWWiAdਛ1H4/œ _DzS{^ imQ@A5Xlâ0&Utz0 F).O0t&&Ͽ4\MI♮ۭrb FVvބYӴo &vd&Q)#i{c"q*+ڨ*s-p=b!S'SF+?A7ģ$R "e=]F@5u@-;@ǹ|*4n\MꌇqMcD,Wj0=:) ?BUJ\eeLFi՛62 ŋ3%9iu0;ELQGYUeq~"&K; ]K%`ɽ=٦#xaѓwW91bˈ>L:D{2;BÚs=H;ZGJ@->lQ(zO[pn '<9 +{ 1Nɳsm9܉;C{\*>N?A&'kp<|[\R|axo;͛TC;} > ӻH]9}]Ѧj]0EOf>INUИKгQ-ziNk}ƚ W"Iv'2?9Utl EܐZх#{?s"Z#Ȋ3vD}.NlrXXt?%ֳD0#m&k&#c^;XTM涢*(CRȸ)8bg!ImN:n"Ű!Jo !\|VXTg כюD)ŽcH[슼|$P(Oΰq/+֨Z0ΫxĶ:Y/3cY}--@L ^TÒC|Η]g\VzR$0a oj;?d:֎cupՐf"𐗺 5P凰8A|ٿx[OJ3 γ^q}jkl1V:*LsA iT_qkROev%}âPrm̯/V.`Gʫ-A 5xj6_lGI^PQ+r# S?*GIB.ލv(A]}j!"miNQjg:]xG佔\c\ʠGd4ɀ[? U u~͙-~zL2a#^r|0僞w%tzoC^ZnM,eL#]`I"ҊVPxΘZA`G)JE?(m"z$'%>=ДGʵ qWYOOTb[ ">$tOg'o 5̇lW!F8}R}ikjLߺ8 E {QV+G =w}8>gb ~}H;2j/#Bjf3Z- [vKi| rnH|}N[')!5 ?6! (>X0ˠ5øUlt" ۈj%htwvD4 afԣB#0cswŤr*CF"S"ݚaYXxL_pA'b WT72;=d?•t˥7ؖ"MPu9h;)ּ֯"6S뜈Y xUI Op`%B=|Xް*鶑:;݄f=6WYT>;Vly./EOWP5'Fd Q+FM$wS l}MX|Ȱ(*Tb3Bҽ$;%{[&݌/i}ĥUm*v ݆sOo8k)|8\y>p9yQt(Abt\mt؂wM1$H-Ae#Tl\P6B}!*1 \D-kSpG;?t4tL/ ='^0ϡVd4 ?oFܔg ̮GaڝAy|bzc2Ն_BMddo龤,px3e.!ɴ8CF+H1{Y-j`c|0n,4 }i Cq^.| /ƘXQR:nqOe vj,'rxeEWaC N`<.cք^N SJ#r2 QP땑{|,:W!8ߏX[!avXtɦA@O{j5si|ߩA nVC]^ Gxc$Nœ֟ݞrp!͝kO_]"hVJwǽCNfrd\$h˓ϭ]YTU~f  t3oҍY*WC 6]b_Ci 'vJ饫ms{ h1@C,K_PÁX}9zyOa[ {–)>GaB.BKD>08nx )߷+}xBv!2d SG=FMvqLڛYARlv7r@hTjP x\}Є)I+ui։)]䶁"eǿb*Vcٰ)~^o:<ܹq}ͣ8" P') 5P5+lY&Mh<IŒn走c!|oއy-rk0 A4î.L7iej3wXR D:K$MJMCgl_g,20>'ms}@:UQQ$ϙ=0s}|:F!JΑS^L:F[K~}'Hl.DO u17-Ug)x!c󓱥*cZ`ݱb)"*EVثҊ{s 6ЉNו( BҝȩyV.# 'A Ů2EF)ERn j 3{Cܾ2rbQ oacG]2S 4wL6FP`4k5_1^ubWىxm%q>A :+?Q{;څSN؊aue~,؝ؿ97SNCCB\^^Ɣ~8m!a՘u..MVEjg  $Ɗ#7S6m)8tYVa!z>M3ˊk7~W_hM~_mrԦ,>rnˆ=CB8:'qT-4gW \;~LL00 Vnr#z勈p &.9e t=Ғسg!oD|OHRux|]{aWy~Rfjn(@˫m$ajNNEHa,*N6 ͐b4Ks=̭ƎkyTN,Z&4»Ie$MA&N(dM v}5BWuW!80mJp/cx ŭO9}тThk]r}BxGzL iz?'aS9=Xfߏ=s(x4C|G3y\݀ Db~˛gBGY'7QwjBYV>pZOypU9Y`@R^oʐ-\(JoTIt$!`k .5=f^=앢 ScqzRAhΏp@bl"C^+͝l:m; PvGC7/Ȱn9*T/[#BX᭞H2?'= '[m> s 47.O|R*lag̜}>P{I!#P[R LaOI`DKȯn+y5, 5?AiQlŒ> I7e!LZՏt{*V֡5Ĩt֧s]o95pO #.W(`^,vY)Vd zxT7aM`w;fD]\wi9R33ޱo_1JA@X e.$kLNWt|C&< pW.xrU,jZz;)L.˰GG{ YluL4u5$wl~$ϷC{6A`@*]xͭ!¬iO:xPOHHX|Re<00ڢv7`嶛RKX>+g},GXDBD`%,{BpI*oɼŀ3!k: !ďB)Ty 14 )~Ǽ9SN׭ft3E{ Q?43Wzy"mnD7ʶؤЩc@gj¡-ػr:/ _N4\7VIV, ީ"c9%z<\gګХL95W'7]?=ʼM!ŏ6bzv\` u=T0f٨8ԞĮ, C }c5'EqJa|QїXN [ kɐxRU  7o+nMh$7LH،s uOh=9zɂ?M'm=E%h,2zƈʨ-+bᗠ@"if\Nft)T6SO߃{a~\0i:J WI8jCcs4r{`{߮JسΜ{r#G_`9L2;^!^€J iCu:lx^CrEM@^O:#vV?H.'^5tXs1bf|R c=q~HyR2]vV>2,8ƻWfG?"'U-_a}jţ0^QAi6͠`ǀP;,ۙ\5pjo-0/|lVimŀ4)z,8o !e}O6*RCɗT$$v3ծck!q0[wx_H P_ bh`wD4 Y/!h~a˖aW˂ŢE%CZpe]LZǐ xs{B^k.@r4y!Zh_歞RLwŞ˾@xx? g%>,i,9ڝs5\rX WO~"nyi%ت7Bqg :( rH;_efu5@D,C^OE Psgy2 ߾,2g Tx}3g"tU9ɯ@f\G>/am框xF@Bb`]6)C/[1m ph^~ac`7>V&PYעb"5]MqǬ[ѦSbme?NKr7l͈g#ۅȃ,Eݓ!=,t [$81vd]> ( };F2BU"-珿|3ӨX 落3װD*,IbnĦ Gˡ 6 eb"0c!>Hѹ15op]AM%zsʧx |/ga#+4 (ԟuwmU7m?zP'-d{dDK>D` (`9c5fV/Hn,̩9`st<ɸ؎DvM<; (׼DwEGܭw7F9¡RXx99o܇*Y[d[Ɏ< D|?RO)Hb%?+n+i)*ɜ )݃%չj\`(ι+Xmu| 򺙎 ~&.ϕOPSruC.' ) tx[1VeZ~WY`ny.'7Qr {D-Йδ LC)hACLT+~M qD~bP(xIT_DuFpl2? eC:rY8r&CayTN=m V(S&$ !_Ҵ wָ[Q:C_%oqϑzF̴7qO"4>8>ҟM%Y={W5e9r fzz#~vZ4ƕwWX|9PNw}~x?Ƌp6|Ɓ ƩTn).j 26*:~gǀ$@a'R*PJq^lQ0)Y=ԇcx÷-Wm6tOnI}#3('ŭw*5ơpD#65@|70>i0/ҎM(ջzF/Q&iuҌ̅c{'IOfBV]oL8SG^WL&iEr,H烶'5̭q5sF^P{^MVP*%/E/4p!9E_R-WE\_Y6vT@|tY9d٨h!0Vr WkU 굧"@#OfUqq`J׸ V}8ɮY ({S0ڡeP`w(f(HMReG3J߫8Ɨ3BcIg@7~Ec m/`=Qܩ:Lp ~td9^Ӽ32©_ߖP=OHpc7F"C׬X 0x A^kAw2wN/5ap*S“t G<r?f/;vٚQo9~shV`7ݺ)tI;;V6d:,@X)g;묅r4ĭm] rˏ3?إQez[iE|bh{eni\Ml4}R&{W_op}JY:* hH7EȤ<zzYmq^nlNb[a˵u ~8I]!hg~zS8.bVMZ-p)oGWGx|lAljj^soFQL!04pw W~"!T?ٰ(,L"A:0'uHk*4WƸwU!d(cYk{Da(jCBf?ADy6Qm ]b2ݕ1>ęyO;|0P225RhsKܾ.8m(HyR$|fjD:ȞĴh.f*q243S+Wƭ3-cN e\j=(k_&k*AsZ!y%g,. Kh<^Idt01-%i"˥XKPjJP*h g;1 +yH>38/++4u"{t-x&V-ުC]*gںy 2r%y'c 3~(i[rG!^hRjKT]ٮ\O?OD?s k~-)}YbWG8HxyTO NWW7 c*p[t /lWShQBY7ǡz 3Z6at> Dj˘|7@Uǽe}'LCy6O*L$#7@#MkX=ֳL : {ۯqL` =.Mpt5{e>(kcWVvJ272=a{׶ovZ/\VgG?nȀdiP0bl k"i;DJY r?b#ƳTx4y,eoR_cұ(IR~?Һ+g\q6HBZJ=9$#2!԰TxE:.2Dv!L^Ŧ@t;SG~[mc>B$K;8 hMsMEYUjXh:@7Io5Ctsc/ʪNZ-̓U{|#ElvECڶ̊Nt^ ҙaW  ^ OxW8M1DI;Y@s }0ZkȜ Eאָ⌶:f|~zwDƾ*;73AnkP%)5xQd*`N]!uI%G/^ͤ4Z78wچSB%ٜt9iOmvILu).XqNrmn줫 D)#[u?EzLZbRiWcG;NU ;'" 0oA6BiwkDKVH@ P;Uz9W*wI /Uųǵ?| u PL9_n~}\0Jl! אI;8_9eHT*y@G~#h*GtEػP/6^L㲃}a-ȈA?y-Q/y<ᴰW<PbJX+sf-`G%Lu{+t&a~=Z{?T}VB^P7eO:|ӭF6υ8P*vLcM`0#~tvU/zX009Sl 9W!p|ke :T#DNS 弱`5´(ϝ˦VIDar.\LLL7x+Ժ)zs'wr)_n^&4(/'Б ^)? f`y=aIFNO|K6ʳgV׫=YyGGY:{O%K ls~vQM5ګ(bW/擛6ufoђ^X{"?-OS3s 3%8akj;gݪƙ&^6a=@Q:/iqލ핤?,;Iz(–<&mRL tg?gh'$gz2wEQD h@]#7Z\G3yzG Lg#S:#ߔ%H# Kr{,nNhR#Tj95DRNj|锒\ڍ;pj…ȏReEbH 7P4™WYMDt܏ )0VLr-Y 8Ae5U\>Nͩ,P-ϟ|WXlNx$߇Zhz*-ˇ~1S4M@-*/$^/ yVS[S.ǧ*E٬3n-u:̲fLvd2"Ά G.\XH<؛L vVw찳UM6 W;~@-8/}&}~Ƃ˜Y cU) F/܂>6ќ'ڗvu cTtV'.`罪t-}l^Cš_W=N#aVδ/GU:$Um}G;kaaz%1 x v(!G8 !y?67ܣX !~.nI`XUb(1<ǥD#mU/vG⑝7ߓM]8΀\)!)_$qiB$OqA=g3%뫤ig\!/frBY-dbP[:f x.ʣE[0k)|5w-S4{EioɉfR{# uUEt BhߖSX 8Z{9|q}I]$=K+C!C|?χ(he ;\r^:u6'bj!-cżjB*vc\.ȘRO~k IGӈ ‡u,H4&Cx`74KvϤ=SnRQ#5D{{-pĵ?EgG.~U"4/>_꿚i0Q\P$`p I6e{U%eǏ —j4Rh`F*@mAw}TLјwxaW<*qU^|չ-eөzT@OlP}ÔZ/k Z׵Q tV$hj^CW4^߀E7I_2##:7luË]FH sƒ;ƌs U@HyA??:9ٹә넫 u@Sg̏$w0`ub;-)y(-b⦃`L,ݥ+͒!CS4q#jB$A/D&bJV ՖݣqI4c$ަ'CgN@]d2QEv}T9*QӞ+qdb7Sgh~:V5~t՟hc>PBiѕ:{Mk!*ۏ<y+"n E{`{sX#CoчqC?5xš~yN}mʕ" Qz撚fj3$YfF\a7g` d9 qj?{ʣ71%QKcY&ʆ;tC^WWӣU{]TFUOi4Ɛ&DB)0'7QR}6LTzb! ^s\tWFԓixNeY{׼hE뵇{MoŐЯWƞlkgz!x *L߷1yq}= |qN S\>t?@$䧁^d&eUv]hP*^94qk1Q -)Y ݻat$T$(v9-AW6tLc 9&2~l}h7QD7iwvNft[ \'2VLTu-Q?弦3"([aAl dq$9\^1rZײU96QrL?;Q΃ m4x%S`N'S?]R-R\d7 K1EJF틪H?:V%Y)I!i7)z,2H4[sJQ: 2󳄚E 5+pe[c2p99Ao箂Cy^.i9LH#(Plz"_*0d~/䕀%JzƟhhP1ߐL,к q*_|Ad'YI-vEAnOm7+!k QZl;R3B=᷏{yL8qٕ_L$} +6{HLAᮉ!Ȓ*]1zG?-k?H2~%E#5g~vDNӽƄAHk>5y 0n4 *z1*Qh;ݲ7'Wl:Z h]+2f߃@'^*gq7urG*W)!,C],BEb1s{gwnwrofX(z^D@bn~}[SVXs2Q[b8'fd{qB>|G`P/9M3.D7bR & 76>҃lG/rq,5͒v&Pb[ԠAt:De; /ȿOe`/,}Ytžcr6vz;d*yIGVYaMB'fp}rg;4)5|kL[ɢ!Cmd1V5ԴnuGo+-|l$X &wţ7E1~^p٤ 9Qjk`!BE?HRuWֵTQpޣ[ސ0!^sB Ab: 1c7^ĭ,cgxtgT渼c6dDz`$u`h%Jy,`\9tf7XoKS7qQ c*9gda|f,ϋh |>lܡυQ5lr DhBqCjȿ_szj>S'Rya&e'&/hGƍI ]D >uڴJ {"s{*a]SENaԁx$Y;eVF1<}W )K-G}TqܰZӉ-BP`AJ'ixK[t] 6MHJUmh!@t9wW5-t}i hsL=PB:{A7ebB,!^ɃHx(%M'{@3pkH}_ǩ`_ژɆXNNA\kIqj? \y0?3IE7wzgy. c>D,xǼ25355Tk}/p=:x>P QapU+L\8) Wb1玲gJ)wغ,Kn~,d(|ȳG\JBN 3p3V!b읥.` ifG W==} 080Z,)C_;#l!HTzx!4\p܋bhrqdۢn}A5-dK)PEu{׈HƷER7}_؄bĈ"H}AE@4J%^;Ьrhhv효r)TSih3pRe;AdiQHhT8LPPcpūkJ*{kƽL?)Afj6>U#)}DG8,!c'ʋa&O4߮lkIiko.)_@Ұg0d [H8`J$_LA>DlK5b5]xĺkX@Qm EOԏ/'4dͬB`ܯKCt M> Ԍ?lWLWIl_JƋfLE^-ӖR:#:qD`}}VJ=6+d:eH=Y֑*/&z]<ʚ}@O[M{AUuLWqhng1mW&Bٱc5lר@AzaTE*m{kpЦ>e,O>u8ra;R G"z“;k5hgD# مM(P$>O)lp0îXlJ t$:;qM䅂HDh-)s70a;'Gd6`V W|E+,MށmbDA/-9|t3][Gd|A{{$US+ "ә+1øM|`;88dDA{ņ1 _,fˤv dVAFltyh]3]֎4pU"vrDZT'"^-?{/w\3rߓD(Wi2f3~cE*Ydx(uqVaT3>T!҄Ւ;C6]$HmjT,hszY)7*AP_kI x:$$ ve?67O66<9r_Ck^,vN77X!,5+/{'x?=g#WLK~׆(p_c]M%KMEp7}2!M;v8M8 F #CѱBzAgi1v˱8|X.Fl$ww~偕Ysa-KTVD@ J83Ȯvl&7$tݡsX|H_iIAlxTυBP[d'a7N-B#~\a܁M@BT#TGxP.qCϑ{5R50ަ^ [Y-!ZOg|/D_{o^S@2kL 9vY,Ә]#{Ց`& 0ٯP<^' Rh|fu304k!']qY"*n2j7I SB~n:췠%'0:戣gw 1%ӫ!ߠS `@q{ pǚ^…C!wX4Ǹ)tXtLy%>R(Y4"Iֱ}sXVڹe ʓq]\jV&C|s-WMtXq+LRLL.rF^NǍQ3h @Qx.9:.ۨP%OŰCL xgĽfr (_'o@drXI:<-/p-fOR>#XZ.l%ζ+V}$Hl2˗͏f?{II(|m]HF7ZcAjq}4ҹ~g//?Qko3b68Eg n:?  qz*k4k)!:x]#PЉJ0o8 ~z &w,S a0`sd&Z 60BCNCenu}3C=.WRw~6SG` pQ1>X?և2adZ3;X̹@`cyiʚyVg69OIY+-x+FNdRAP^Ҥ"$B3r?!ZBs|Ekx(TtW nT A|5,GQeݑVO}bł|r=q\v'!TQYj`yDC{׉< ' w@Աw=iAx7FFUn1z&|L={ryң:tb.QR\n(*٠iϕ1(MJ)K iNk _gj5y'pwT~Μޮ*i81@Pݬ`eL .|tr{j' p[}2^34` 7r@N>EVlB޲ZcE` b, _rLy{"i0u.mtrYoŸܽ7SF9w=h&%~q!DwdfOPnczd]DՅgϓ kNb6ȝ$?;D4"ju|ݓ#&ؖH199VNoz[mF"}7u^rc<WH𻠗\HCOq,0B6~dU8x0IË \#Jrs|2L K=Vu;@e|Cbl6\%Snxŀ=#;?6P'3̱F~ ل♭4pOKQ )8|9riP&@"];5,_g$YZ{%D̹w, Mq1툽 CགaY tb4шD:. /67֓mZ <cUf3q]> L4cۍM۱_426n;9>{%E+|9v8 Oޜ6"ϔV5scxN*4_p$C (՚e ?.Z?rP'Åp߰U3 L~,`H^$cHN_[P˵~ ̔#<4ut l2mfQ5@ nt6 1 ֯;*[kOg]l%O i>1|x[^\ȣ~e#)+Qy͛$<29ff3޶ +Ej}}F^~d@"5vqg^jumB1Ndlhdc+A#q"F3ي7= rʙ0oMJOIeR캆/H_ԖӤ_BbY#NѻW GSETan]zm&"ueX'rX7lQ:2gՖ #*続-CMͯ"&;Pςq#Q:,S0jbXgE'SD&*^^ { wqhy2+f BXIҟr,,Rt_1#gD0gO>|2}hqw嚐΂Rf`Ney-(Ny7s` $v_CCj3u@!VL3k؟OTtqo(2K( %*dX!So@1_.Y_{n\uU9PGԱRIxkαVAB/"FٜQ &n=[& Ԅ6Fϰy,;[hv2 ;K/vMipZx1?HkϏG-qv(8 )P4_O%Q f9  k]l:0bqrBo;ty 6f0)0ĩUϨ~TBsv?IY9V=&‹C/ѱ. /*kx=vTrbdKZ#LJ6zHNmq1%94w;>XpU wL~@W,2IhMܫ@|pQOWJW̃RyqUofP2Ʃ7yҸz^2 .}=g|J4{ Y:T1CY@(ġ ~4A}g ☬l1'[KsFHBzZh}ά1 ^{ {?wkQR;7XitnD )Lڹy$uǹCyn4)CegU>=:YSP.ڨ1Z 9g1;jZd)(_u0Rrވ 73VT])ʏV[FjT?]b,HI~>(LFKO^H(.m; e=Ui^]ôIM);׍ 4֋H<iDY ;έ׸Q9iP&]}`1;w Y~/DM^)8M>bf(ycW`H0+ݧ]Mt!\ @I+bt׽G~-9p})`Uq#ǀJ^y ZFbLfo[$gq!_X1z),gmD5/uQv[*K"-m~O C2- tkTwH@>qY1wL^(mG.@/YzuR; 3CW_szfǗ ƀGR\08Y9#l<9!ȹDzh[y`s8r"Fź͵"jZLRs7UzH-حL)mؓrz+%T+qB]_\1؄v`0pHrjrjD#3(>VL5_RۘVM6j~UQU59qXϦ7n穪ٹ/)@;5H 2 q /6kg+Lr?|R )#/ؠ*%Ś^.{l'QiWY_$fqk 04AT{ԛW2m['}FB~bnZjuӢYxdDT73-nCX0e#oXy Y`SaY^ .BXXAHۨuZ'xNotOM\ZVGHg6@jF"+|L~־b0J3K-|+QbaP/,Xr`sӴI5FMs+rYKj} mxj0 N6S)+ۊ Dl4A+Qb}5Rؼ{#_3N:9oKrNN`qHsT,k6_3A#2?k94}QQÅg0jx SMCF躞O8oX 'd 4cGʷBu?7AK~^]s*NQ_bh>[dFvlJX<;E~Jhv"\.sJG v+β̓I-wcҿJd ogIt\H}rv_|1HNCb[1㙊rd:WX.GkSO=D!ATQI桯@^ŏ^ImƝ6{ k^f1 #&WAY [?b G@.4=h+`FPpsUkp6}h[.LϪm3f.{G=r(fOJf6UK80Y|5T{.zK| m&/zv$2.B/y%yewRV.Vb$K6{Ygrkq΄@hY%17G`eR̞ :kI7ғyen ωV3UukRw Q1 Ue0DeSWT/D3,~N0B!BN.qΌՙW"FgHUV~r̩[j 1³lk|% ~[xOtf\ȓBڙ4,7ԉh6rT튩pUY>I} 75 3GH%HJ ݖtO]֣<7Gz3dIfgzJRղSo~g4>H́ldi <׋RO܁O X@f|g;.y-ŒZȰ Wh/jI˶ ťf*f.)ؙ}6Ι9hb!E=)Bȗ )G:=/J8e|(S*M!>uG܈W0 Njvk`?ޛ-DSU"xL~`Un}Mf(D:ن΅ !87Fnr['C&3qZҰN3nyGHOpZ-Zk0aX:ӇnZ }UK9606X >LYG&-6Yi5 Nj $QB,ZVq5O؊R3+OgΎc*6}5R %6(xMGMC񡲱T\. DYܕ]Z[ۘ tJڄQp3۰C *6`f$/,g1x3M.8+ɆzHM /|O }ٵ)+-r{f4^ =#k(T,7ڷX{ﰯ.g$ʣyac{A)D` 9l@#SGsae:vR'cm>Ap*aXEL&mxFp4֗'h򟄡t N d.n*խUR;lWQe*9/+8*'?7)F4SO' :ڊsu;ji&eM2.&%Nr`$cg1y!` Kc&jO 2#tD{31ә\{b` Ӡ.BO]4Ge![:xyߪIf}@%K-܀>ۈȼ`rf-݃2lf׸P$?!f~U#;V2DBk):t\%ޗA8rN| ǴkڛW]&}iP e?4Ԅ,okhl G!&" #&Sh?[>6egKd*a_}\¢5_ nz-lrGe9I]IXط[u=cF3=}qr8!P-c/:lѢV  uo4ڍV/XAt^YP<|Xs+C;Œ$\t'Cw$] 3=l6l'/eQG/ &S)E?[ei&~I@҆hL"|jJh I޽<%veC +'zdֵ-c-,9 sM&r(-/YRzv;NjƩfJeceE Ʌf\4ܕEٔ6䡮_i6nxES' /[~/_ӠH @Cp?ڬ-ȖvQEeK؂3yCj8ꗄjڽ) SS["d/E>`@Qˇ5|B:eÌwMԔԶIu ZԂA tUU.,٨TWVvpgPRw;>moϢv(01 Iɕgf6=in\BrKhfWgC"zC%1(>k̾uDKWH nMEiT [ ؕJp5{ HnH^XpiL. MNb0)8׹5msВ$m~]>RPPћpe3lG}1BNiTA²X$3wsN 6nKOm䱖`1 -*.{%"N (yQ!wrj#wL[&Q,"uXR&qjX) JʎW¦(K!]nsu6^Yf( c>$#KTN굔t.*AMj+(͉thOʛ{`6! Ʊ;z_؇bTܑH aUϾ`ԟ_k128}'~!9*:nXhZ^:dq[|S- g/q`vk!LL 7C|g T3Ç_5jhekw_PHքcDR1r~ N$t)c!/9u>pޫ¾82uI7 ZnYLFOkIgDl홴Ed韩d qX3bѭ"ƳCWOu|VU4v #.I@ҦT5}l+v*0d~3@\>Ȭwɡ4zmKnQۖh}ȬaT̍{9׏afl߸?\FJpЦT3:,*rbQlțCQd`9iw8C<sLLLKD{:b\<68u6U LFaJUZ3><3Q& I:!gSOG Ϟ[k$n@C gaMIٷk7%l :"RTc VѮi_ "nbmUd4[}$eR4䞍u]kk p!Bv'cL/_O@GiM\/>yq1Ǧvl .|zui?\>݋&;N'ɢ0fOfQV@/dB4:_ l8p{. ,1kLY!P`D7Am 3 % 5R ge;:>bfY5x3P+mMų:SwН SojV,Ll u]WA_9{wA˭,6uh~GNP$oZ#\|2Ɖ:2+׵WПOLYV}~T*̢ͅk;.{!C}`%!8su`kGVx믈nS[(`C_E m|?xi]C|g}`;4 +SL,J8^-k8`XSL!xzN2RyI pSx,>BC)N n E\vmwHY|yx?:+(F6`mIź+q ܩei$wrvsss[Sh;ɂkwfyϦҗ!ShF?S W+ !}M0yE ?ء HDM/3~%̨Ȣ<ȗ6ˎNSg P gEiUbxRSGvDBwfD AJx\UPڼO3\!:GG/G#/E(_'THQ‰5lxmV 4wܦ  $|yy[JR6,d_$ e†p"X5~ei{ڒ2ΒIMb)fL8&YC^Nc6Z46 9w|M)_E3^ף;h6hpC/Ty{ /FSজb2lW㜐jb>Jkjqkv?L" dh{@g4(YۏK4KP+>Y/v|'%ofw42>$|p4E*JFd,-%K*@t!>&Y'^ZHUD 9݈'@|4y96E7w:6%ʃ.':4RL+ƚ蘲#ш]C3H;+WV:QD݃/7xԾ1;H/K=yzsj;6:nfn{B\|Au -@5*'|6 U3 Z4=z$5a|m 5쩒EIj#`ho[ÿ=MgX>NJՆBLVnkFY'[¡Ny!_E(b=2d?OxڐJͅ7g^u4}Wėqsv,WEB&tLҕTqIn yKR]:}ct3Ѓ3VDy$% 瓫S 3" 9tĔ7LEGC*$n䯛~&(%+qU:fl$ 6 ؆va/tJSF:S\i. xsY6E!qiddA22G*˵_:pOAv94p+ #V#-/$ s= n'+=ƘR0B>f:)ZysZ9!.8J$Mz>wd3Pd "{Xt1LzpUՉ͘Aƛc0; ,̶u`v8,#b:kv S`3U3.͑˻rw SA!o'fcȦyA1! M{2zGn%(=i>;mzntՃ%?ucCx!}K@F?@ `z8 <jSm/7O"Z TOmDqbH-po ~rd7o'}]qю֓<'\^T*B9܅.Zxq?)k8 /LrV@( uV}tfoM;`5EP~G=8â ~?"t&/'9ڠwA,%QOSPd.Dțrٿ(ˠqYܯҦ&7GB K}L^%>漕FyI^ß ڥT`eos20_$"i*u!v,ů68֑ txp1>/2 "QIp)EϴwM]-?_~\J=TL&}lrAO U Yo63a)Gr}]KUvXJ;SU O.t$޶ȡsع)Nx^pĦmDxbd,@Cēsb2-ңia6 :=wА,9:6Ï Kpyl;1g1#&e;Nsp6_퇩,v2%/A4 z<<#rP OxiCب0 gMDUF9e%V(][L,Zv YLV.aT!t=ڧE{K>LH"oy*<D&2!Nm4nœWDMYY5{ޣkZA/looшMtiWo28NLB9[}g(O>:)xPW(ؔ;wt0Te{Krd2y]R%|e(^\^T䮼Q pkƸT%! Y'+\6tTu-$wqL%/^iGnL'q6Zm >'kdJ3rG Fnvb0>O6ҐWYHAL^J9Gĺ]>F,Yp]loC{~m-)H!%F4y.\ {u(gfRt #ᴅ {L$755rF-ALC \gK iB 5sq gA<] [cd`XUm3aڗRQw 0Zm GBacc[XV'ZAٖu [Bn85P=XSQU Ng?Uw~L,vx <z;%B|"m!zN,7}xRb!Sp1Kz_!1z_)e_>a/VB/p- J~12&{N=EߩC+Q>xHi _^o C+ncjb ןL_N6E,G:I[_& /f6#"NEЗȌJ;) M$ l#/vѢߣyQڏGVM OqJ@[mss~r0hw'u<~uʓc:E Կ9V0oPwVKٳAz<]t-eR hTM(Y~e{ZZv$UDiH5l&?AN $@43twB@F YrVeb+}^_ڠd[(#+Sh eeo>!⨣f0cwLtff31yJq񩝓c_AԹq; MtYK؊iQH!>:8OjēR5Jd@Y(ޥN+uNq<h8Em,fldz}Lν ʮaM:`2z,׀O*q!I͇CHe$Gieٸoڪd7D%ǿKOqY&SJ_GgS2㼓c0H{[hƸdw*rȬ_C{ʠyyЋn 4c/҂D*Z '-q\mWf}T \zԟk?XZNNȷadc"R/|e"S 4>p&0|OBd=OyepSE Qޥh&n/j m 3KL["O2hWZ/;t{8Bփw X x6S̈́&{=?Y_ Z-z` qi})>@a vbv(kl}gLm>\N# }Ş0hՋ vN G[ 2'gTo_8j3~hu'RZ*.YѶB]F G ߁B I+$\95l, AN.0ѿ7g*pvO5:e,KaGֳ|1!ݹ`ĠҾAN´HX9/[xo w:ddlr>~x9o`:m 7x|x_dqm3鬘? b%L5F;;" CgOhTM zBn"A~9]#2ܠ{~u yCOnŇ>ujhIkelK%'#tlaT-B#22iwj+?.(ޑSC;Mj`s5Lm. R.ZO;X!c[SNw ,R-s'phAP~U[BC4ϞWCv>HKo<Y ^F8͛DKbYTnd>-APΫ8Ae-{ͲN )E-kik-ڍ C1x;Ƞ;V- R cP+(|kڂxAR ?V셜:8G3:Wp3XAl>==]y̒ZvZo>DqVUܖ ϬjQz{B?Uq!_k9Ykh[x 9ۘ1 n 'v` =x]C0OI^0-GjqϢȯ0+rM|VX4!':H:ak!9YL<2R%[2mF=ȵo"6?=>tjEҹb ̴n_? 3V@qu$75ˌQ=`[DMoP=h ЦLh mce[s(^*3&ϞC0jTP7Z*hӺ91֊+9.2u;2ߌ'*P#$qyG5Z '&yhFde5[bx׎M*tAX%9;oSE2edH :%bv.azfq@U׬KdnJk3o FĨg1^_Ʉ;_m (`n-G0FY1Ƣ=%ZЅf!G>O l i;밫40' =߀6Ԋft+2O<}O_B.XrKAݐ2^A7bPUحR5:7=u #s&e8(2Z[.ؓ^ܻ/'?#+:~P%t5h-XWxl?d|L%c3|?ñ`q< fZ^m+db>m1%t:6PGʘ?gvd[9RzDk`; ?0&B&>t#ܛa4f'zJ{Ӽu3YSC-:kcfB"'ȋ\[ȖUYIaF"fueڌ$g̉5:u` DmmyUF7wcXWO% syz{dh|ZJJlAa(vF"3nq[?3UC!{Ob D1liTTV ; M[teFhi}d@_ CبARd%v2Hf*٭JSȡせ,';j1 ?48cCHBGu0Iz۽XjmӤ@v@؞=F(fbhuijV߿M+?<%f_P2OAT 1|huH1Ô%m,VPjjv2*QC2E*MޥķW߭O_*&~ U蘣'eNܱ3w *UVӆIJKg1Q[ȼ$uڥ䓎"w5`ㅚ0Eה$G##M)Aހ0h Rɲ"-A0sF,/oo5_롔YJIzd!Jڐ ȂQ}ݺQZ:N(%}Xdb0 O'!^sxu0Fj(3/WTSy_ PecoTQt6R2{OQp^P_gcenLҸ$%l.{fSm Xf+YNfڧ^U|8͑''&䞖hYvhv&x["4dz( (]GD%ai)gBTkV@vV4<:c_޸Їn[%Vr Oȍ,qh;\xkŜJSkrr@dByԗja }6&?l}E9pt3+c QKlxYDn1\׽}ζk}khY|Mδ$d  mo"tQZizuJwwN׸Sv!йF=8b^f"WV=#JҘNk)HeB3%Z~B=U>1Vl[K)v^[{4E<znŇned2o f$ >G94yS&"o $جIQNlR: GvSze9~1 b,Qu[i[09C H0 c{Ù0%TG"E}UIUcStġ7h(ΐAg@kYxyf@@QŭK:qX9^Gw$ϋ;N- 9)r|%?%OAO)$D?p6JN`lw\킵l5Thy0i[_Iu5 w=FDմt0S))o,@K7[׻մ=N D 9FFDOfQ5hHV Ba^bo*evxd>`hnܑk۫;z9[i7qG.|vFr4Y<8Z.[A'IE$3GNLm=-u{fr\"T*xurD  NL?QQ*l<2zR_Tckjfz~qo>3M\fK๥)O<'s5Qѣy6Pn5l; yf+T+>@ˊT8ag~;o}S,Oؿ DH$ݔ.<Y|u/qlo"^a+rt񂋡.͖xK]NQ|-X=%۰qcu`w?Cxu GnY 6A^h5Wxy#R{[7yE 3&B.W0'TUpU-8'w2yA|u ю.N`vd1ЙwX{"W=v>`*jv1D|- +v"JI&mCC✧5yeⲴN{~\uZ{kyVJ+'IzB9s{P}6Ԙؑ@?Z!mF`}&u)׎TxabŞτntsTs  …4.mkAGW80J4LL3 zU@]'7L?M[N/8U~d&=ac6*ݒ]%v+dNر?i<&`N53b:Թ6mjL PR bejSߺ ZM-K9:8_~R"kI5 h# mwc8(+) =64%/? u<hGC#BI=0w2Ķ Zy=]dۙjG]V j|-Szkl8&c4C4(Y<1Ax$ BoTJ|7#)>Orm ˈ[Fr_'%=@2ǣ\戥YD~}1KO>${>}vO?Nzf9Q,,;ƅASzsrX.+8 9ۑ" dѺ‡v84]aphD9+Q&qDL v\G0z+[6w3_1 Wt7VģPȅA'N%KVfIui۹Jg ʺ%o1~{<;OQh~] R[g}{Οv0QD0[{ڣ;QJrS݂Sv}$~,[!s؆hTK ?M1ZrN Bڛ3/W)sO+V )lfS-I HrDǨJl!-EA 2Ώ'?v^2qHμkAiydd-OEu"ؤ AtX'y(%xE;HuE/O| J?'dQWx \]놻_׺Sp5*⚶7!e6ܡ p5BO85q ]ԣ.J _vnGՈdF~iTS] Xʍ}%$#Gʣ^:O4Βw? [X~8\&oNLH(M5~uw,*~nߤ/F6yUykݢYD,J㳚rj ٷ4wQTؤ㚰[D>!{:$(rLyZE”8dFӌ}nc_2l3, J<nkBC !Q>S;.&,%ezsP$'m3 v j93)}?!??)ͅo*^^"CU/5/MrZHu6ީd.voy&N<.1B*~,L%#UN+ ;5fEѱhH,s#'6,^4KF ?|RAoH0D}4dznVf/h~:e/ˈ3픑Nu Xps~1`$O 4au'B>4[n=h;m0Is?XE*G_*Rsq!GT>]huotfQ&熦 RHdI|/NbL4rWpQdE9oYr \a#"J"hߺ- c W"a{Q[[4;tU:&p9|i _CbUIϘle\!lQT_l0ۙSch6|F[KZ] ʖC$2f`DOsvPk)ܩhR"HvU)]d}mK_n!Z[?ez`v㲸6L;MO#,?yJҰ7d3F_`Dژ}-vB 086,ƐѝTQ2IaB+rDS-\ZD<8(,󕇶r4ndz5\:(t=y*rxWkyAKݤ2=QSuHoք#+8ƥMWhVDSk %T_}kiǛ2RF:C8L]Z۞@ۨi)Fn.6$X.`لYrqxv<|Dm~A 8DM9Bt+nn!lڞq1VrI4cYf;ZhH-;޹7 a (IXn'#M~%~0cC.q-LYQxS FeAy40jTQbN$])}jMwtE)#791K#H}4ݷ`PDxgdQ6. [a$}o<ܪB.ek g%bNzSqbzr`2Wt%™< 7%DH|n3URi}AҟUVy/;uԐ9|8Ğ"9y/;YI{i U1{S*o:Q\bQQs\D^mVV^CPƗ[LVȤ \MH%aO4-3wW<׊a8WWQq1gvמtk 򶿞>Vz^O}ǎu-qfufwsC$j{~Qv>;b7զ;evp% ]ע+"(||/SJ}Yj^Pגf7Chj]Pt/eKj5^kȨwFm;!M|y+mD7Dx,z]YB9nY?9)߸vQ*3#H_#PcXd7C {X 2#=4`;Kx,uv"r-s,  ŏp! <2p0_ac̰rۘ o)7=Fm`-d\ Oո>8N% E60j*MРL~L&}cеv$Rtե 3gSw@ݨYf?Qhաazf.c {_k%# 9ל\|?u]93<\grD!tS2i($^F[~bL|<>@aFg~qE LR T:G9>`০Ɉ ϺXÎܚjD-o|S2p>(* އ']3wN~xM@"[$4t2*욢8 *A޹Ysh42MqJ&gqpd_Ѫz>8O:pJ>т7;%.y4'(C7g=$a Y4SdN9nGdXi~4ӣ $!)l&XC`^9\3oJ4G|4љ`g%E: Xbq a X]((}0ϒJj{*Bᷞm+Ur<[!4R5^6L8(규w}^.ηt3e#?LكPцث9/F ڷE?4JE6\YT6vՠWT7K߰wW1~8KwIlPϿ/#Y%>C^gS8ߺfvir<,*)޳U5Le경t?joOFH"|ન-b(13=<!^5wVkC[r'6|L1!D!vq.-4 . DV`DUc72 Ed UuMPjPﷁ`|ǂ?ޗXyP!6(5Zͪ#Tl`'+eng+]UM:v`iIt+imXA. PkK"4@\3}Hfʚ"$L^2,VKH4Vȳ_ et.ơOښ(,F@ů*wm}_1׉+|{<6֟@Ɠ[TݪlUtr8[qh[ 2W4%' s޿3+'8ˏh>Ւ4AUSFG_F qB;taVoQK ~DHFST.aeF1+JNo8 l!W&0(,aߴu7z 3|UzsaDAl5kS>oz *"|w抣1MZX XTjѳCpciNgD7cdb{g1[5"1=;$QDcSME43spxb-n2q~q˯p["U:a^R=}a&pFs#Ec8bgMLY~Eaj"H7˽!>vr}"QKp^)֘ ėwԜ.1]QU?d̘ndB;)QIsu*ܹVPn7&@Cn;!;ۻsgگKNih۳Xo՘v%@1MԸGh5=E*")7H=Nƻğ;(y]5QѫoeN`LXѷ G+L̇ y n^hlS«W2Mxy;H_=]SV!X#7ZN`#'Y[Y1TBo-ee45N?xGlmFЎ=b"Y>`^策kֽq3ST;TIeW>rG|-Őa>ˌw\ n6לFdj>8h-Y`c_n.W?R-:dEtH$Ų/9\7nAr&.uŐZ+i>*qFvti3vU|!AlvjAbܕ@C ׿uC aAܰ ,츑UK+m+^2O\ K7ӭ Ry2%NZ@<^";H**{߮Kã[e ^Ȇ[t FYH[wXr ;*.YQYُz)l '〪!cmY1mOlxªB-C#ץM)a9lV(:l쫢t j{z _J e1,ץӾܪ#+ֳ5g#emJS䣾f#"; ή'TepxK]{Vtfy_,,9B_#˗D@cTj}2L!8w2pF@d"d$f[l]kD3YZm}|%۟"7HE:eY[~'؜_z3ʉ0} ).}1=*uZI/cQc`Z6sBLEi CkL27+fUN̵Pe+-*v(HeYZfȆvW"L`Ϫ4G[cL͚;ePg6.?xE{E Yee^iVEZ}Oi7db8O NJ'$oG$aʸ+hY\Xʕ v %x*TlahA J$;b?\DP=yɇT'?OGg ֵ._de#AJQa_-細(Ut'c$ұb8-'6&EP|Sq`yawΪQ ` aT)ysc(.n A1)׺Zۥ.1W)mz$F&oOϘ㟾@yH+=ˑD>Ox V먂^pO4F,{Þ ъڛ^ NdZ.=zjx@7 A൫a;2pK70bU8x[,c%1IK@96c(n&hè-f2<9_"gfs(~5&5tb瑋 =#ڲYLjB̲/>gB2LRJDMƝYB<+ _)"2y6f07:u|y sHLUM?+?kojuSn<3yԕ-C޵\q()Qjsj=&5G;6/TX,x8Th‚6,$B)R ][΅oae#6|IDjj2)UY}))Jxhro0g:i[ͪa 7X'`B"gʨ#xozta=[/h=}}k"(3ZOq;? }TwA{a+ܠ! A-!4E蕟Hs|iN@nq>f]MU3eCF‹AD s=j{2Xk{ C;KɁglE5J*Jb\ 5`mW 0RB`A)mXXmv=zNNإ,Kֆ+( m'>b8`^3:}87Ȏ čU—fC[ә!_75(v5!JCsvs1x3ا䰃g3/h}[_X6$^~Jm5˓ߏ,;h.2T{Djȶ;+*IPօjS5%F9}+)=I72XDE$/KQ+Bjt"ͳ{+=sqKRy9Oi=| mSybqg Ds;L'!5og8m@Y=]}cCE@hT}8$iRSś\Zϱ"u {3M$&=J}5udgpy>tV(- 6}ކryYs9LNH̥k~NS֛`_]^hyB^og m'C|h\p xx73 7К;uc#[ lc!pJY]"kU\]W ~EcIF*){-z [qcM!0Nͥ~S-e>/y:3ҩ6ޞ^I[T<ԣ5 8u- I$!@)i,dCC&A)=@|zA֋gA5Y+/pAi@-(0QKbaeM1"3j_nߊfi(aWeס b9v9w_[!L*N/EV˭b^^7fC6`~ }ԀNIEVѽ0辸6n;@oEnL^Y93_\ɟDQty/ՓP󵁑Q\S*RQ <ߡ!l vn拎M mZ@t”}΅vaUяwh*sL)Rh.i9^Xv, oF_MPodd*2@>>V'񱝭U )D%zYJPJ[֐xoUm,횓|q1̔lwr:&66!SH0a axE4fwck1NF*f ʕIt18J*+6=q8{ mu=n ?귨vf35^d^Q sW$Yiguyꩡ(6AS^쏚ߎ`"n iR,ƀD7t{~`?f'M`R% N9ƺ<}LI7un=kLCpY1M1E@%7L/ץDzQyw+A#jt "O> jشP1wnXI\@լ2q_s$T ^c$fqp3-bz.6H=>|]O;yȴ9[C 3ˋT_"c*) a!HGkg&Ҧ3YϤA]𞃪S)kTE"%@5vݓ1 |A=ܛ[;3yGpoU}F2пtÈ{.->,hU&+zСDH.UsUBRzfT$fNXq܇Awro5'# [Bߡȍt >^emhٷI`fB#I2C8)bX*5D)5k&;e=B C:mZ}YqQ2>rD/]t8me^p *׸KXi^>708+-\%q:6R6fF9ލP"q3c=y7lMcĒ1НnϭߛW/U@Hm؎W }c&˧[h%Z'#ifj db ӥw5Ch;CQIO#})oIRBӪ[3-^s=:첗H&Fx[ 77wct\[Xѣ b} =ve(7_j!l Fq.G*i+VpѴAW/ک{lr-~GYB $l^]KyST,+b.vp[Aƶ]f],,.:yh!)\YĠR*^; )D )d7}1a 8ǾB=ba5X]gDv,z?oue1D{&kUbFLdēz-f 2`D kgL= dHe6^Fm*DǜUtjfa-p|yy^m\5{Ӿ)JtFhk)DF'GH-WL)76^8Ө܁V*-%c2I }㛃akڙ=h%*;`qr1hH 5WR?fhxWL ~d1H ,WF=Ѽ- .0}ku)t 89_odj`` }5x֨t51҈'Ky)ME+=+CcXTth4ۿdЮZހV-`®(Pysky!(FF\☸Gߌ3 PnzN*œɳ/V5az&jf7G3uZ) )`Uչ)?v1U`>ά(wt2JcAIU?9>4?~`A&ٔ^5kC8,Bp>iU!*Fw/ Mé{+Js;v\unWvH JOuHֺPWw/L#Ӿ=oɮ򋀲Vצ-x3tQU@dgsb71tEP&^xԵ->MvIAZ]tq">շdke:u:y-qL_Kt!Z#+tZd-JmlM>0&8 b:|+Lv#=l%Ozxg13 p;p|$T)ľx{ˆel ԕj<#>X=ie5Qy8zݧGԧ;ţhpw܍GaL\v nFc}%]X$H1i7qJȾ>ʮ.ꢕB}3bfj 7~Uׂ}Xz5;[]2%q85@&: ׄcC[ KpdRĽ Is&)w3D;8 Jɦ<J׼NCiÛ\+b׸X/YZ(ĕ?Mp96A(y1i_(#IoRD7= ,l 4i9AWCC7cl + ߬@Y VB N(K4Eg@7+'*֋X$wZKXX;e;hV7KqLd >O^N*%EYɥ?Zփ& {!p?l<}Pݪ`6MH9,ȷ٘J~F@RQ x5AdtcP)@듒̗ &~dB;1 :s G<<ХstlZH}겝.~@3f(ZK_[֌;Fe55GՖ}xu>O˦xAx۹ƵNZ=`\G-hjW&SŽ./ 3z. 1, Ɩߚ X騶xȢAhFOCv9F_͈cg5$8UlMl5--n\/5>2kH5 ٘]B 'N{O[4r{e饵=\9TWT]&h".lTѣʄo# m[nV" i'L6,a2Ѱ?6}Fz@HC aO*)ø-+#Zx!s>c'eLs=,X4pCS$?*Ў]wƚC2Ux |o hZإ<}\[gMy(s]Y xEm=e$O_S{ hg4d͕!LmwMU +"rcA F;}fXRFn3cMF<\A2O uM2DˁxAB}vF8OILs nh0cpLl*;HbS4 B k8۠gIr= [U\0h^D3`cxMؚM셖[MR%Btw8(ZU6FU.g"Q.f&+/GbYzA!#Իb2/F&&s~l__oE}P}~IJ5ڒי <8W b.<)%iivƽ< vKTI/0:MAxN 8;nd&φ)mU?QM:/CJL\j kWjbUkoӟt|JKRdkl,qdC9A7' ~t-:C#^jv>ci<'gQVCrƲȟ&?U.* ̮Z{(\g\>;s󳸲e*]p`h(翰$E>V)yey HT+؇엀J^4C!)1CҫT f??wVa+W6 SMڷF",$WԼ#;S>x+IJz' Ug< $[$jK6.!H+b; ]u5IJW0CI3MV&?>FBhأdΊRɂ >qjy۪Oz{O,iNd]9%["Q/E'"͟8獤IiW·?yAr|y„lW`4}h6y_b:+$͸҆F'c?^\)F1?\RE׳4s+}u ؎D~:f&$)a7+ l1žȚTī`$@%JBۣlYؖ-y[)7҄?4MNEUP禓:)_˳ MSJ*-+MMX5wur)S)ȡCJSL GGmt ):\e9/Ԙu&R0Pg7c@lS8VK4_hs;pw7|/Ϩ.u!* K3_ ڏ{ofháML)BIy7rƃfXqtqBIUYņe3qE3 Q<ؓ᭣&N0a^Y,w{=9l^ALkc NW-I.'dﵱ./uǚ1^[7ҎSe]bC@;FB MQ-!D!t=n8Wm+l95:.8ٵ{"_R)NqxQf&V,rQlP?ꛪZhR VX'L a65@>Ǘ^S!͊p8WVK[o4JfFCt`_ӹgUz߂ET<(Hc9o̮]i^aٺoOA⾦ CP~GD m_3™ gz@ysRkEҧVu8k@u'3 ioG³lN۽-f$`F1,a:UJVG~sUrXKօ+y8vxK@8 ZWZo IMO)%,g2#qtN=j8UQZm"B{RV9 HWBw棘V㈮PO:UoD#Pa`?Vh -w5/@Uͼ0rk)}Xj1Ց= zoknYny [$Oh羌YJY>$6PPK@ZT[pb͊L=tċ7۶c brZMmZQkɣ:km @rRca3I?_uĠe"2i/*.7'y6\: ^19<hMUզ5 D"!+ɼyUl!sw+tW(>vJ:frW鄪) R|GxSmQ}gaudn;iQnkOPC>L#dDLE_H\L(G:  ᤂrS=x՗8#!< "zx@iS/;m">9"ձ]-q2ꈘD<<{WtE?+*fj#)ol@+̲`_\`_ɥ9\I*8O= kƮCGeb 'kG3c(drIY 8tM}1'bI6*O2]0 J3ʅS}L_bku_&S7Ɓ2L1yگ6}FvJJ?p 4קBR)=K4]%,6uDKqˉ?]0lK>c_>(rԶ\^IʲF Vd$:B(5Xׅ$ѽW% sR47w,.W݉ qJ<{q /<gBj T߲d8P'_ ӿBi2'6=x$F!YN5wAz0|M1ȢĂҮ5I < eѫP*ѐt̋p,rAʼnb9\Bdɣ6qm(*IXUJvI4m֧5~I8*wr ?h~m,?a:Ch4W%E4\}z6ф < h'# F';p2;C.sRAN&Gj!N3\eyT [ †c{ڢW(O\UϲEɄNHsT@:3azP^g&v7 gn(3A{r@{3xo㜇?Bʖ Z@YӃzX K̇ϩӲyў)b///PDxVr#<ӫ\bpEC[m@[ 7K):Mt۪E 3W?VcƬQ ~[sxcP|v7Gh,8>W썮ܤ0j*]:Ld r $UK^R ]R{^Pâ0#NiL*a fe$ɳ1} c;i^sR<*vyI ? cm㔽(KSs!rWbTU>/|*=O Pԍ'4ݑYРzy:ӥ}rڊBel<Ȧ.d;`^-P"^BgBNh RMԭZ M+%oPw,ːav1{#k|'$uR'(+E[Dq<9nHp0QʉU [Lli{NfQo+rw(BYZܞdH"΋{"Egx'6ePF;4y.>LEV?D8M$Y'bt p4>!>TSߠͫ0E4*ir{@_EGJ9BEI|8#'5$Llu;vˆ'(}lQpNc ?KmuJۃV*O(yc~h1KFF֥J$y\aQKxėtK롔Ӱ0>N,V}Ie"ژxgCurryFXk6>baĥ `v觹nZrZxj8Lhu.dy!g *"| <IJNsO. ZO@_N{ 3 3;+GLU$j6<>;8E9jTMj`e3ApBUDM_'ʶt QD-˾A35u3"?(v;c)^ c'_.8"y%UC~V^ Gqp?KɎ/\ă|@&6x,2Us;Bf[yXcH6$>euItH]l3x`2cq5JzQ\,@G="y,jl /4S@!`$dD 6 f+ߊIXnSPGapn]mI7{/}~ÓArA;3`Ɖ d1U-s/t~Ýr=y9P;uZWI{ imJe\d0~vM$w\MQM{TbmS_lYDWG"guo+t0VG3S)ǜ~?[_e7^e$<|#Bx9Nʺ*`Wz^$ܣJiRs-tn犀C; e6G!~8e2I,\Î֫Ur@ j c=YD`3ؽ=+W%:: oٶ(`"`70rKHeiaAKNGz b`qqw 2z.ᾛ_KR\\0Ƭ+D16E _F*٧#le/X|jJ& |aBR4؎nRo8 wP(3."1VډK8@m=4~?GQJ5: H1cڭ^ ) _\CԡE4R_JNͽ@NYԺC0ܵtoH riZv Z^3PVa4~Ma :;XhqTf\Z F#ǞNK5=Gخ(JT<!iD·)-qa8< s4v!G1(yS`4ADv\GCqu=fZ/$9s⛉Q-Ĥ`dK N920_uAB5$$]6摕u&$Ml'.M<(tz%۳ܱ^z((rW/"]ֵ }q~'1gG!P؝|8{em;`8KzzQ >nkV !`m$؈㦑G_ֶaڃ8eީO a&厵N/awV 3 ZiCsF TzeF~|uiY$94$nҠN':sи;[c33Zs[K, zRG!Z2a w~jҔ6˫ jRU;g; e~]FY#C QIk {jK~x5+7 ֞gw 1l u4rMMd,߄Ț@ED_O%z,;F&DDžvNFJy P^(Zj6tv^H9Щ P䮆e 2{SIo5Q: `ר"nfԯ{){GKI[.gH C͜Ta&seY{ )l/N 4TLsG̨pAnco 8G8ŧ5W_u63qD4K;44ID}jxLoӘWh 3\n$ŎL{s/Ɗp ht{ʫ~$Tau㨦aI@oGxwP7Y_]\.Z,\k D+F[ r(+>JAG'ZT'5lHL~fq-CnX*oRyX Ll"oV'kT|mKlEK|ŁE~xCzuf 4B-7DO S6;}b츼ۇ%r⣻+ȈGhH34g仚cvR)>ֱ EPI \){Rs~-ȻDnL뺻z^u\ustE0yvciۢ?}t6 /1\#* _vR,:gN7*Ťz% pp*#FoCT f v[&yXRqod}X'I@ICB x9M\2|#NP P205#-MElӀ<%8vZ>l2W+o7K&Ϳ?笊#<}&0.ՊQo]Vt(p}J?Aj؛*gqS"yM粛H_MGT V7s90CMCsm!voB'ڨb_;@d|vFG6á f"iKhA&|u ɋ ~lW.Ͻp0)Hr;uh3=~_.&mrF s\;SQԷ;7N&9rf #g3IsQ\ -,0`~9Sf'A qOdEH\w(QQhN=B4x䅒Xu1= fؖZfՅʡfš+tT6h\xSl =>歃~@:*x:>sÀrf "sd'}ȓSrP@!JFW yTlՐ#Ңw/[dHƚy`;,Uzw(l\Pq t'TL %E_gX]>#jh)`ܕ%^r]3^Gv|i&yV6 ~~,=< }Uwx1hh" +s|Qb- xSt] fH N}皡=`[;4=,QAE !9 * Ȅ=wL\ߖ3 kAkoiSbp) D+z\ixJac+p!ȞKh~ ᕜnh # ?/M %\!=ЀcMJ$՗ 6MdwE? T4gu:$5J֞͟Vn@;q :L)r0gDv.I TNp!ߤb*yA๫Hy@b&n}o?nd{17F&=*w# [LIoZQn$*Uuxw\ͲQI K<*S_A u.᮰&u?F)_>PІ0olaO1ΔÕ:Gc&'. t=tMճw7%`@[$YsiX wߨf);ioXHrYxp%w߲|fD-5;zzI>^t@pa󄆴,-f?T#(-0 9\\ n;yE,\l,QpKolr=YypO;] #J3:K9nRW#/֙ Ag->=y'-&sINb/bApdKHLԽ"DHin@6/oTSk .cH5'DdLAMBHM8Q8!@Ua`?wE ӮdU{8F>mGa}F>͑܎z|: `%^RS5al'Nʒ;kVC-zF1%k8D䠄GGvqW|K0khZBJ=oޖä4%%3Io^+woø'.%NV1[0Vgn yqw,F w' =o:[Ѥf>VB~OrEJ'Yxo0{Muи BWj7d#Wt?h'3JǕ3X]ٔuӞu^^EhӶ͕(J(WS6IrbSq: ;{] IT@D\57aOϾp~=v~et-<I$bpb؍t͗ns1AW#HoBw(xa@Э< #Y;6ƾCU]ZZx p.:ws/začgoJ}V y/J n4Y/Ȱ}ͫ;'n';㚔 5H9g6rHw XMaWwlRyȼ[\¼786[vu-EL[R>VJJyӨ HN"^/u}'TOE=_Pu"cez tQLS'xl՜jN=~oߗr{a7زa?u8H?{[Yme-_ ;H`M#9-t:7QX(Nqd"&dX mؓNP#T#_Vi#H&xu'hA/2Ye-A6-&d Cr<f;'s뽪^? (%*s&>K6jLw9j&avaX'eELZmf3/8I. \7a +^tQ)iIkmirwR@[,jCYȮ0`Aum&uoƲUEgS}۸I:vKSL5admh5/'QXQ. l#ѻ¢=ohiZj2ht+RJحZDibttu 7#"0M 'Gxi=Ͼ.xU?.0m;NYIuK`4 .0bIam(& ȴI[gZuNS.v|d[0 qT[ OqLzM]ߑW3aDxt_䕦'6U$a'B,Z]Gقw:"yLv[F {IIZ bNi.=tMQ;WWZv%̘.bEnqS~N!n͐Jvv  EF Rxf)3%47XbV5Ԯq$ R_\]r["paa:m^i}{Zjs] 2Axd#^QM`! z-6T?.EHhh͞64  x03殰GuTjA0㿸=jz6Oh(w3SzopbN@bGӝkSePϘ*6{8yn'P{)'J*"jF !_Tsa@k` 2eSݓ,G XrR46n.P?cE0]$6Oa6oA$I8wCP ^6YCqt?/C1p[~pʔ>v^ѐ ČG,־ڬ^?qJϭl3M'; swT]?m&M>nf~ldlQ&Y7l@E,Cp=YvP>9t*k&`dGAV|s߫v%{Chv#Ԩd$Q{g"F<2BqEȴlyնVagDqCTcRB|O:::LarVyNU`^8H(eYpΙ{eW?4HmMs^IMX( fJkN6Pgc pV7I;eƕG#.1;bP/Ûfm{鞓PX֩+Y 8s;=cgW:ȘP y>|s`JR^ʰ_i"1rZ g_Ndws䖢ЂP.J;{jϱUb}kJESlT)Ќ;8Jջ6eVsVJݛ[QJ/ml)c[JЃf*@ >.gK z))&)}3pO{7>򜧍;óuO`i1m::"b,| '^UC6 l#@EYO5N:NtOK^Dm@,iE~{TO ɤVf=]l3|dDT~ ^IyCe6uNs\-}QW W"?`DM^ /L(T]=y8v齾3Y "AMlLl)".ׁk}#|@^hݧWmnl?Cbm:QA;a?hϕǢ4EcF8L9KD#tHQڿwm@x>\r10'#qKHr91Y t*롅0{IBvdnOGjJSg ,Zȶ% W"}s M "BGEO].0|bfhS/=g=vUn)%$\Eױ3bQ ]\Y1&t(|b2 W!BZ!$=rDcO8e/XJXQe0%T b ȥMX9U[%xTWiL9CƁ!~ɄEYKֈ3i,蟻Ac'O^sy\@醊-uW<ݬ|hޗ)!>PGu@f_q*bgt*#+X?8yDYebPd'f[DN 1J?iF|K`TSNa+N?dEM!~ݰ%<h{?Ȉ$2x@Xd5Ƶ0H }rOfGoFXB^(Ĭ`v"&γƚ/e.P|4᱖ڶPyNe"a6A?%AjPBnSĿ\* "5cO RW՚SNFC/n]5:[ b, fǸ[124SWLol`W $#v [+"@ۆ[QX6RIȰ,n$ >k̿SzVd!_h"ܺ ;#]1Vjz4DR{f._;!r1c*h^a_ pD .B,hl=He S5ROH2eȚVS uSDVIzf<=o.=Uk׺^M]|[Fplo#y_\;k9K8#c^cppǏ;PMF|a&;np7+KUJ9_E_m>n jzx$-Ea95RKrLZ/3{gy3Y(. zT쓝MfDJX*Fy,!lJ^NW8g}-bWʓL 5! 73wakg(MXh˞VהRA:*M =hwICIXcpsTФ Ή=jCk@d3Z~|[봼1Ip ) Y/*s4O K#˶k̛UtͦE/bdRaә<ΌRXr)=~).|H ͗gkz NU7OyKX>6RulgRAd\Ɋ\&$ٴ6I ض-;|kN+L*gq֮>pōDMܚP%}䦳dqK nfʶ >p"%囼#>!೿#@(έj?`~Fh<[wZ(' ]^IWKl!N~[m U;WƵ2/G*az5D y;%@/E a^݃GRfdFR<]X>kk_S4άrth|gB_Wm~E}fZ/=`G\x|˜[u(TdY-% dq"~gm|֓G2`4yNBx*WHsaw /E!kKdLK˄wg]? 8/_}*nBO! \]rw}K#ֻi?P!{ (ls{px2CTyķ.1B!1Bm)}>[bu/7vN+M"R3 UK+HuJ9n~7= * RfonodcbimN4Ts\bI_^q>:0CBK푈<?Zy@ٟɜwGJaz>I H`ƌhVc.BvR6QvL~a}'kc$jN.uz8p' PTA{&R>vƾqrM▌t>ꋡžVzΏB*aW d-O@hu3Ce%g(뀀 _@Ql\'orԩᣏe!'&cV]RH5M>͋WE2ykE%#kɂ/LHXv _[,n &Ek[.ܴ zӊ \E!ͺaAVȵI]EX?QfhQ'(ڥtLXⳡ KAmPrf|=`sg1g?%% Zst^h0:r?ӝ('2?Ql̑ր#^1䤢$ \~^F`vBR(t1`u6_sVꎋ7idO &LVmE+a?Q'AQ7W};QJ IL|\A+J8|8wے#P!(P7~,?8 R숃X.&Z-*P yfn$_3*jw+\ ,B6»n %(<jBÉRƕWWR8`";YT.*fzpg2G*ۚlso`A3]mt6ixClKG1&MVyG7տUY(օҏB@#&z]gp!I MG/y>t9)Y|3[^6 $⭧OUyfPt:f0x_@gӰ@ = +Z]:}Urїl)3>74f j? _np$5d9qduMy Ѵp?1R ;h8if$w!`xe! x!۽;b֓ˆ}MV QQ]S|)b%k}d :ѯ# Ob1'NnCMuó:Vv)O<& 5"ȵmRZG"J7܄!'#+b;1/6ZdzMM}܈ Q%81N,k6)Os ˢ4x$DVjej|2U QJnFhڱ+,+%%|{0|Ǻ?7?Fh> M6*G6I:,a\=:-|w8q0 f:共M퀨K#ZOz ɲɫ;NH6E~#͒Tlƺt1eBj:!h9 żد{sF w\-Pą:-rzl6&m'U7MQTC$ddEBLUfubFhBt 5&5;S'C#J0W3;?:*Q#um"6GP# 0DWH)[[ ]mG!6] G[7NZ띖$w>fvh%|(?ϲ;^Z=aWyαWaz[*_+;%dX+ؘ&+o:L kiiGJP=UA-s\>p.OG%lݒY-;?p.1ﹷ`5 BLZ!kpǬ/nOMI"Vv~#Cu""qsHO"ƗTMPê#?Z?! }M[Ԏ9<}odܱa.zrOije1NxөN3@1XIBB9tt x'S+Y L/<lgmFWb ˧7/uB?k, HH8\Rn퇹^Y]wH؇r:g@:с&Wh4+7uqh6ӥ@ e d~:&FDcU3(/cl;yjB3N;Af؂mv$˯կ!24w^a[]I.yf9Q c6!Cx灩lkntM#t4$yURuÝxǬF<櫻r#cD 㣓\WJܒƒa>E8R[% "2o[hDQZ0thC˫8,SFmZ?5UʿQjC!h*pδT Ï[6/:4kJFb{tLMzB'vMLCz5浆qH5&DÝ(a+}27$*-yV !jh|"~94 Ta-+!S/RLVݧF-kՓ>6v1eKDRɷ*~籂)e8c8UQ" ieIP RIh>6ǻClNRIH`ZNvFJc˚+@IA;Ki:NK%^V>jZ^A,@ƲXqpcʯ\L'nlng{ed.%Y^3>GĹ+$\Ҽ0]ɂa)XITDߣӔ%YS{q]Dg~v4E4ȇZ-+f}ZfR+ZtdR&͙hQd2ASxˊ 5زڗX &)nR/#3 ހhq{G4օ ,X7nyt)v)uE:j3#֜wn"9lV%c' %hQ ͛m;#/w(ff0/#]rtr ~Ga~|"$4DE~Ql|ƙ0XĪKC)[➘dFR2k@}xB[:,@d9XL9D"x7QEǍ-4HM.f9SΥqG%9By| ;e^`X, 4ڠSʁPq&~&/|.2+vH mꖻfe-b3 YԍywN%_v~_m%<4ߙ™e;s =`PexR8sP t明8JGH| pIMr#9~S pHfM3&[1!-`t?/ȣVZQ_T콆}ڊ $2.] |!ȏ¨1\6v gF>~ճ HYQuN JG X+͑l<?r´gyƾD.$~nBHYk-^!AK>m8O=:e<ʸɄSERWYXAJP'3eM]x[Fu}b5,RUP˦̸Y⾻n.k>$haguݗ@dM̬V]1k R&՜p'cfGR旅, ق@+q#FRFӁnƬ{k,䑸lݨ9!;^ϟ(MI@^]sER21$L?R؜W4cb\'"~!uy.qp6.5yyynǨDx#؇c[,3ˌ >wC7sPZ [̈D??G/{OmGIv7C>OOJ/G҆H"Uj3+ c_&g@HZNN/A`1(|Бָd(~D2 -y8{=r {\dVnM~N}<6)湱MaΛ}1?6tRCמp=tbD[0+m6.T<>pFY^غ?aZJl3~ěTo&|6yvxUPCp2 Ʋ?wK@ R3pRV l;A˱%@Q&):^Vy/aB)ZDvvj|v) :^R?KbdiM!YN0i:hJV`Μ|qiw\b ?nPetqc_!'9J*O \KkX^<;\fe&ĴEbԖtbLn% >Y$FgKy}ˑ^xT֫6Yw#v\svΕ WWNf%8s1k>V 9bl(EÃ4eK\pzwWeVjP})`P>zވ\-xz(΁*u)ؕRZ،YaVh#ْky[JvmmF6hO^x#뺸0[$D(Zv .t+*9{eSճ3;LS1T'wy",V߱_8eh>#d۩ G EI4y[٤ɍၦV):й{E$ xFX\4^2 (U˸`SՎ oVQ2Ð\nlk_ND} ojǻ[mGcO k2h ܮ#g_#KK'UF.(ۄ*n8fpߍYtEsQu~#61'Q0ϟ!X3:j~5GY۔Ƥ[#3z` zPc$[=Xll7L:ʁvaqaw^%) z 9'4FSb@#9-`,m(u50ԝ| ˇOhu r&ػ=J )2'4X?a\RLֈ\a+kd9glvw[Rߧ)X6]&I%>"L&0%h*tjoElRx䳓*HCaFL0~+Zu04߮  ֫ [deQ[3ޕ'dŪQLc6VP۹WfYv $/cS440n "qOg@usfO1PHk~69FPkEaH87XonvHgC?.=ԍ>Fa}f_' ں~K~G!O|:LOI[rs1ЊIPs|)I>{`rE`9ƨ/U;R & ϼsEgGoy n/.jWT,BwDl~ި| Ɓ=F 9^T]C';=P'$蚹#-YYG6ƮBҤO;1hyOE4kD,f둁̶ñ`yw5 [bmܞ97gJL64y⏰Y#? zYfK6:jHr$݄[GM& m\-mt˿.޺/Sىأgk}:osz>dV *'A_QoJL׈<= @@]_A)i!\Ǵ7 ga+ 3ƃ`LH]pDҼu :jr^, lS.>O-"-VK>i54_, Q _jwfT-QN[R )fagpbfoRh<?:.3JGݎ]!i/iFjWr EqrJ?JXzr7bVIs(*( c vBDں1i^"E,lҙK"P;$L9n'$!Q\u(7 J,҉2WêXnx3$`մp(v{SB/Y"TU /y6^=$*1լ2n3l|팩&)ؚ5YS]60ge_R?&ӳFC"56~h;-@u-ʪre(MM`^g!2'Qo_Wb߅boq5/`ehYi)(3 'L\tLah$7[= v7O3PvA ; 3C$'_ʬ4?U1O: #(!=sU}.={mV o" 3~G" LLj Ufl LUroDH1 [Mv@:stu)Fa]P~~ftUEm%W[S%2C eQ[fLo}͍7YMKڍ? sP*N IV4`3ݰշW * > tO[=Nl.A*TYG 0A 'WE\]mM;%!@0>!2^Jл0Np\dK9sX7+]WC`J`sdiϣWh (22~ڃ+с`T@0AaYiFA? 8e0sA"?)7,فx^n"f=XZ0koN$VgXNABEީt:lJ3z |"0¿NYN#'ķsEx pivuX>(gS͠TH"LYe/_msOAwRBWHwq+D⬏Z.H( 2$CmlY_>'ΡHCRRJSPtd I vibݺ6p7 T4_[D=msY }7׿' mG~b^+#40-iA!!:Tfkx%I PmJq?m3/9ź"~7xUIJo$R鋾mTYKdiI!+Jk\ϯ-cvc WSLP(P΍wҽb }J}٧.>٢>V}u |ڋ*pETŀ/=Tz.@x\vkRw Jw*mʍ)NMdQLEPLNm E(&[0ebOq`PڵT YDEdɁPE=GL#5gh)b]e }Z7Hŏ`7fӅko4kPǎ3zjSm-#TJX0>kt& 7'_ b)>Z:*S3NTzBj6 3ÓS)`wꯗ).w ;)3d|x>_tb+\;Vw8xhV%)Zڄ?od\mЧe]\:s-{X;>z‰[db%29=<ˈ2A@0*8 bfe2.v{NϥC q`hrl0bh h/3,Z>Z?Gu*7WkWO"Cu,qTVK^7xܯ'vN|$^kYpT4$m F4="a[%7n(5rSB%7ު2ԗe+>dğb F[㦴@C"'F`06r?s;uAFؘEꂽ0pQ83^5rRnDQ?Cݾ5r m?{[fQ ovLdXuNU#.G˅ L A]rI!EH nކahn])/f5-I ɋn9-`ǾJ6 R "9P'Q`{F037HR(F=qZ*}.4zK^oc?c#@ho2-߅1"Cy4 N@!,plINCwܑ׻>$hg2ʾ}5#)_8p_`9J/SǕ#tiwh6F.-UxTmi<+^脓 㵦!e*%iC#͹$ J_BEMOӠc[R {k6\e0'>:8ՠA4pX5 iqjbuѾt]`T$:e&B@n8&`D+RٳKkd*ue]Ɠq? `v\hAo4ӱЪ:NA# D>,ud^e7#WW%\ɬ[6K-:;dBh+7a|.-TS: F 7zD/0IuWd{e!owNz- q'i-͔1ܱL ~I[ NVq5.d7:$.:b|5)-?@f}G(bCo'84ɹVpʪ/#yb(m2< : @hjem/99qHQxmH鷏orS*g[pt$r^pJn~nͻt)nn~M1s2"!zz6\Hc4r$5llDef?ҭhE ?b/(d{QQfC4U_r޳ຄ$9v{Dm*݂ڸ':X ;6nu7Lr@5 Szr cg/I&.d鳁o2ALmN%8_<"t/;w]x,YGM|~cJj N9uw\uTh. t-OF;aHDkDR@aJݫo^e,U]mk 4[tѭ" 'P:Ir*gJ C] ed y#F)sc#4p&dtP&}  EӠA kC/"cqkFL@l` oo7t`C⏱~˨1f5|7L*Oȇ&mFfn5UdD滟 ,K;xHzRǢ/mOnIz<[v^DȠarKg65e-"iD-)y=߁VM=i&p _ lak'RZ[x|lr6r lNbJ{;I-=@ j5b:ց>@8jV+Iw -WG1 '3x9b%M ei>ԆWϱ¤uP[6ʖj*Fd @@A>Y?I8oѹuiZTK=p:>Tm:<|~3NmBE b[y/C-5D;Y3#/oO'MT aQm"Lቁy[r2_7#Pj9o̐]٢'('+>C]+:=jsO^Vd5oWB`@e zPd#Ɠ4nB `Zפ$S >g⣷$o; /BbQ]=7]FrJgJ\w 1jbU>K7ʗ%-+5>D0\8[L)r>}%'|aU)o_~AJॷ FWה!(,# ӒN~fEe'k6Bi55$FY7 4~\Udu NM%#+h6^gAQ߃ʹ2bgs pooJjcwX|7@)t\3E7Sm`Y "癮{ҨMDN8^+82s\X"7*K}bl5) lİnj@n0,k\$微+* M6+ oe⸹W5{:e{a(ބ-[kx6! 63f?;WB0Ɇ5IZ-ZM&?}vॸ49:Ck"J-|%oVtZ1x[ŋlU|$z`c#3EQLRڀ 8C3Q&[u L~?-ҸiBґ\* 9xjt'rsP@O遉KAQP+ltkBilx122a[ Q7o hV N^9Msة5a׸Ne"<~NÓА3NEtL}=-A?1p{>|܂J(\ԲN5uo]FDjEeqyk<l櫒^}@e5d]/vN2½fs@G'ٜs, <:\i$#9ob{!ZYݒQYᘁwxjL01s)6!U]]LU9Flyd?AIhw6^LlA`T(|ڶGceC U{Ms!>+U6*Yc|^~^nL6{֬.V$ڵB>K/VZw~19cͩikZg24N$u"IJfYp> |$k5PJf|A}lٯPJN{K($P v> 1Kk#M@k wH Z'/K"{BaWF?IV}!Vc(>pd O;/~ɾ}7*4{;лJ~~ SfW$/";,dN$nLgDm#v'㒟!cRMܕ‘;OWiw7!\d } !0сc[>.ֿ?9 TTWs]W#4 æo0D7gc.劢EԉL]oЌDU= \*Um(=BFA?8^gm_w ) #0PL$)b[ٗCn2]'y+=3:T͋q{٫@Sŏ`nfSS WlJ#r޿w$ Li}FGNv` V7/ܡnCnŭf[xudPFkEﰿIe!ˊ*5yIazGT"wgbJ ZZ\sQJ5m=X 6#>x˸ܸiJy-}^<ވsT^],=({Tl2РayBr>7q[Y_eO/=赕|n/ gd\qTy,;)UbmLvg瀙 }@Ai⾛3/QDa5 .IW Fƶj(?g~>k>zP`mdVhWO_?&EA/QӜ9Jk[xd@K})XA /"M+-Z&Õu3D6BK E  ZуEv[ K(HnյӃ?N`ik5Kib mnc6-z{_5TɐyjZ&8{HȿS4#-x屹uZNWԐHU~2?_gCQL8x5&GV2yȏ(tP`ڬzE[1"W&$3oyԃ>LFuzM]ىؽ hc 7QdRs朏AvIiKc~NͪOs_n9h?/'04f]C[Qү8Z5Qu5ʫo{%L:<! ~Uj)]O3YL,;_ԇӿig$Xl f41,g?xI ;MENL~]worXhUZd aɗz_Uw(x'Ec`Lwazzʣ-?U }͡U"8 pqmkpkm|~LIViBE?t`'p6G(SoqA34va?mG^KdJ82̞ÃD)PChPd'Z{uQW뿂ϙ,2QXӍb&_ƀ3 o~:UsQҀb3ˌvIo~A;%dX]8-ޟG<~ ri+S1NGl u,*reh[;P cS2]V $ks4GSTzux;&HU?0u8ܔ"mqځ[`pˑH0gW:nhbR G='r}㗎##,k[$;)znkA\rgR6 eG*<QYenPmh O/Viɬ}Q{j ꑺڸeYf؏W9 {՟\?u:h0LA ɛHVrEN57LnYwNs] $}Er2H`|.9{(VdĠ9CKӞC3^cc3 i F 1ƀhop/m(no )惑[ٸ;@ 쌉2 S j]2lx&?}I8㞿CW lfl >ٙ? kUĻ8ybB;\[6#iw 3S4 xe-d88bl^pem/"T_PVQT}v'zq~4oൂ6&k;0VH4W lrvhQvdO: dΎuu e= N슅ʒp< s 142$#y BƠ_Vl z+6l^ #JC'߽C#@-ŠPvxYF2x[؉pݞKf߭TE?Zr.R4ɸ789k. T6)p@wYFnQYҿIu}ZζD]g^THej+ި,v`d[,ġ=Koj0w!||ՌcEnoQHfM\^7"X3\u8_<<[0):gH({Fb%"ׯTA$rsW\I~qV@*2Ҕ [bG_#n~@l1DFoYFQujg&@.=%A dY!׃yן$5Oxg;OT@&z->zv5f%U bĄ."\i4XlW&?/mF?W|yPzlq/ۣZB]Z9/Ba$)}KLSF0h/Nn<˒fR8hUǷLoL0JScFPoj++OHzf}}n5 HCFհ0W~-ړ "DŽ۰U; VR6w*YNYHJlGU9Eps~׎*S^OW2 ]9G1loPKB 0%LJuO2e||StU,NF3(I AտɑctcFyQM%$9 Ina\z7HH<cLX6&A?7 JVTdi^j*]řҶ!MeH͜n@( u=7Bƿk{XWǻWtKdOUUDpt$ sd3RROWb0;8tU6p508@lUm}FOZq1!ײNzk750/W,nA@}sۡaߌ\VR?Q73m/>I[lW_̖뮆"mOYUâxuJ:F%f!Hro5# ?{~d"zqQI1WiJu Z3P2R< 98F߲i7q|iSb]|˴٥,VLܒ-G Jc0Otw*)."`a>q^EEY$7dڎ}M(V$tIX!3EQraƺ WA`;hG)ɲ2$BharsK]_^Q[ʁ@$E&, РVk}]fIPS;%uIgjNۃ^" __T{Dho*#)m>͌w|MSQԮġJ3-Cgs0cQ:F ^۰*7AUF--,2kCI*7IB۴ fIء9cS`8{0 u}K*& 8kʗu4K#"(JHnvuߴXjR(wĭQ+|~Ɲ4K6;|g;9GjhW9J!=%F>_R:zZx?8cw~ʰi_ S)$1 _̯Y $0v.J$UN/I3'p.&]c&E!s(?ZD/ JaƗB ;C,E@Z!S#:) U?6} jvb v3yxI@ࣀr373/+5Al/BHt\E6V3>8B\~4#P6>uS/o eo\3<TlX'iFœE ܏ObXOrEj.ë'Ǒu҂9GfTdҫsy /{yr! ьzuPr)5>?A/_)dD+RN@+_M~`J8N [4DUO{&i1,MPN`$| ȞS5 ēU$ 1W(^Q xVfo}[4hfٺR%ZJ⩚D/{ym*G%11}ώ3ٞnVhOJ/D-9W"_0PvG7M ݛ:vKWI$Gx2vr %:6eh!2ws˄Ry@?Alx ?u,q ncv|aB h))B' 4bmw\+R&lwr/I& Nt3Ob .C$0cC$<qS+L@Fr4UɍINSfnVxB&Oʬex 4˓wEձ;0GȞA8+2oaVX~a/$p1anӌX/[͐]n޼XKz1kxZ)tl e;&9σ&zɊV_YCݞ^JdrS$w }h_M'g c׸d#أV: ZWI-ͺztDt6]XuIh)]hpsīl SZ?ƀifi ^^gV o'-0n,첍9r`&`>?Bw]oh*HX*<&0~huY̥>?.Vw yƄjL wҁ ?uGA},7I9{fS[iՀPⱵ]|̊{~󅆒r I6dQ^ 3b<+˒dIa'21UN-=ytm!V6 Eaٶ7pIM 6$yLW C6LJ[ t\l\U( ̜*%W<7K:ƤVdc:DtEq'Z*ϴn T  Ʀ= 7 5FpKH 3K;݋# e+1NT\ ҉;ΊW*߬E͢m]7RUE]6m1(.z[A_ϪS/vvFz)5|'ҍU|ު@Ÿ|/UƘ:/OV݋\v4̨ pd}Ω/-}IC Ȃv{QX2;+5`fyWy_-!HXѿ?f3Uǀgf/t%wu݀atK@o  g%E&%fnF0sȣ6 2sWiBˋ(>DJ= d,{/#2hG[iSUVWÿCܙ^QoMRQ%$DŒ@u`ݱ(%@j~'#rUoi_),@gV%̆CΙpowhN)񀬀;7xt :/@|YSV~X̓A٬g~jT:C坽؂[V;ag+"]:2#%>k}6qJʅ%N… 38G RIX+Od{: Hz-Y㪎 @{up ~)F9pٶzApאfO5 5zDɪt Ql+k?J^7[`y=ķ1P#Xa,Z xhx.mc L_TF~E'tƕ aá{' rln%qWŸlIbC1y_QLzpO_N87Zmk~vxra&[ go>2@Uf i9dRo, ^:DzN!53Imb}mC+SخF:̀lѩhP^hʻfSIhO˓`/+R,T0""Lxnyx5Yq9ssn`Hlߧ~WzW~F!KH,4 ks ܂ e\Ńmo\i5lR]-;zTC3ӄZ4b(9M[o6|PV\+STŵBE{cTA6P-/Y&7&k).nH9t lmΆJj=N2 5Xq"'cA {0KΥ $rd}곛9* 0,fA[:>ZI"x\9@K!@*J؊9Xೈj[]= S8aZUp -O7 5kf" m`iVRZ(TijaNG9o>1p<"7HW]?>@*T)==[H;hy{/K3ySo45Ϧ6X/ۘ'EZ0Y;%=ѓLN%G[ L҈-lF 5-[b 6SD=9PV!U!9r)~K T㻺59J:yEuw !^7p_J{ 2H&ay|Ńױ3 ~uV .6 9ۻ&>7ո ZpWBoMٗ PqB|Zώ(wQt*)k|<.m?v0aƧN }PLV&3t5Go56/d1[[@Ƿ,e cA6 K16W3韶KȃZcYC{NB:rYuMdC'螓1cn*N.(  -P J7 (9iӺ"!YeO<壏! dvPe ~ SY{G2S"kWIllNl!h7ԫ.%PYWØfgc.Nj< uι4޻5g+3 kv H||Bf^FRS8b%:Q}  9 Yu|NהaovܸqSiܖdu"蔁A.E/pEV?CQ 5ߐ% /9ttKsj+41S ~JYu꯫AKn!kLQk{O-Z%!@ B}`1*-&$k} y<2x5b" gYa3IS?c:) gvi̓>k\0JyazЇɻ l-q!Ǚ?hq#s Vl8$wp3W/Fkڷ;TF4%bk21AI3)fBڋ,.A p󹖝%u.Tn08]F9{~V@)+]|En3MTR}|Qgӛ:$Xջus7&omh< N+ ȏdo5Z)n2=Iy P5A Vs "6=+s2sRHb$V|}u.GgiF/Fd@9ӐEzI#" `9n<1ڀ6Պ4VTuB[ƪ#De2KB0PopFXRNTn% hᯧ@a2wHA9<ɴc|.U43(f ˾T2@.,JkY(oZZ~4jZ =S~ϫ!0Xln|{ػtOI-bGlk$i"dxL-uehN^*/ lN\)E+E&.)J;]L~~@.dM)q߫y2{=KlZtkf #ONhFxuL'wGYJ,B,蔎,ԱS'*]* z~*>L+;3Ž@]G! X'c͹c~dN*`!7TU$q*x?>{ܭINuG(9ԙv8umEX)ʥ20v4I*15Wy}p6s[֢Na}(7?}{Q?b }jև3_/◆r `ݬM;yN;bOׂ t^\JP/Z9_Zah7W Z"FI|idr3sSc46^ qP6>4Z)AR B _ >Q)<>9Y4.}@O CYw]^Qp,LUq$WE  ۤmI?ƞTr4x C*}K ݾZ4`DnZVqSɩ"૽DmK%*Wcx3D0Ei6`5boNڀ… < bi矪3Ipq\ ~d$, u[BBt#[L2ٲeyу5?~|=ښbI lk&g");qYΏUJeDʎ>fܕ۽/vu:T Hkd#B=Kz>R !OgvQrPE8s6\] er 򒏂#0^gY~:׻:C[BC*Ѱ! w_ C+z4S^k#-tƓyX*: ;P8?oYƕ~ 䗯"mΊk8Z3:Qݙ,]ɡZ~` į'qj9<ƾ+K#󿳽b )ħ ):Oi1fUwTpMy@u;g}E$:R_VEvx: x MD6#@A=_SVݹc_{Jv`ľy{dx#'{-&jnK 3k%Cwo4]"?hTc_"'9;19fv.ɞAJbV鉟F= ./7 -)2#"ÿl4p VZv; @4L8RE&gsK,{| ϩq;V=z#J UWA'-|'+_4I)Z>ov)~nK,ȉߩeRQHb`qeB\I?n< 9LM99X.DCQ1|%TIȊI;M=&r Bo4+RRn=wj|\d9ufu(^5m/mwhqaG|k-b^K' $#7q'ӥ#(@\@Ը5޻CP uLeB(&8|yxYKw*Сb|r\cܝלճa6`Je-HW-݌Uc{2ŬVމfR;Q O魇"<4l!̇MMwWtTOW)| \G,$d,$]5}IΚ8_~gSVkp>K} p_]@[:i`ܶP&ޅ>hOohuZE8B (^@[6a>fFRM`L= ˴ۄZ3_vHeՐ!jMʑFADX W(ޭ#3< /㖻Gv-,4aUhf.GTS1'@n{oa&{-w!Y TUy(_&98X*c=CF=:i4\,- )8|yDzމF6qOx|ASVutr9xW*FlD`ݾBxx"=B"g;híbADxT$NG53oJ]}Xp ciqU~$4y. 7ϑnslF(K׌~ |7T_%4jNj;uçgmQ1_tٯZnW\9T~sw0?S{v{ŰE_T8|su0 ӞB̴=䢄꼹 Ng5 El8c_xV WLxCڏg)椴4RRoA%_4}8qr"dӂ4˙agiP iR ت&Lsj;M'u%SgwrGVx0k'i{ir 6'8gAĥ|-mXkGIhIq=]}O`(! E™gaGEezZ 29aďW(UoB qhը"}2!5{EK2 *XoEvCNasǼ'*wStN5vo}>74oOAA*lEIv+T)8Xš1{tE+MbyOIvr.P+R]@\}`Fu|n)&nHL}QTn4vݔqem3]O6gy ]Xl9RigL2]4vy b1T P*Jx~Y9sFw1ya`.!~sR|-e q LJwn҂KЇvi>4C+aLhB蝑;#5Qbڽ,*TvEA|x/{pj9奫kz2]UU TO#G"ۙ}j&~ D~tkT#2dHEDi'=Z6GKvYf 5X2]їXX6%qd{r *1l}oN@" gѫR@d/+JL6ݶܑf-'ŵY^n1:ƛ d?|@%u,`x4> -JËaUJ3J yM4){G.6`},l#%Pb 3 TtC*ᧉR_1G=9W'UuTM̧S%a u>&[`gO;.Ϩ4*Awɡ;ˇavsl\`.C Jj~D؂wZ.ʖMYH΃<0fϯ8Չ$1M֌N-yay͌^³r# wUTU"rC6 $5fH"E3e)l)ADuw/'Dx DB2RRPkGWjX|%D_g)4 yX@$2/ˋUj{I+NYpDVfϞfޫvX?<tosF6˙N^hJDTTZ~"[FcA;qY^O] +~] i{dudIrV%dԞ(c. )p:1jmS<"pR-kQd.ڿS5>˂OUoSǟ=9J.I*TGx>-dnZ];ƃm>b0un2&i`c7kֵpV#wg4aI )=LU;J8cUlbi*CŐZ-si8Kqw4 ;tOc:P|$}֩Ĥ0zbu?N)RerRT7׿"u*ŽPl+6FBG2 <ʩ*\qV ,w7(5V?B+M `'[r˜{Lfح'!C{iRE!%U:\+br-MvǟlpVȱy19VD(=3);d=ZD?! {HaVj1҂0+´8K# $($J-TqyqOqlx*0gYZ᳹z3<3 1P-E"q]!N'6Srs~*lh\(aLy0oi@^З_q]syp0C@Bo1Kgz*Zt , ~yS@Y=Tv@uW$\c+Ur+&NOP "3u?""ǷCYbxnH%cA s6@¡+gf19_.v 0 l*ClqĬmRw"};9>_4H@!bOYTCRފtB ?$%+E;/kmd 䩣k;*5fxZq8qm9XMn M @϶~VArIʾer;@ٞC|I@EitR身b.}!C#3]u0Q0?tboXv2FEJ~팠H#C CjzNbwCl=-4@dQ`ntQt9f1M\ ,%^~m[\[RYsOE+_-,ؤvΨXT'Њ Z(WN W&VF.zVi1 %\ 0!abyD5fW(px+ղ3Z:$zb"/NFiwg1LY$F.nEv (AƝ@:&f%!|ʘ?Bq0Xfz,K׏Zt˛aܰ_{\8,NIa Ywum<hY[hONY)$tgH-@*L"bEJ.q)Ŵ"dp4~ P`$;u0 01})`_H7K49? LO垊п|_9`9•))d>0^bMNPIɺqnޤ󟇅5ovէV7QJy.80!KMg+(b.D,wJ AuP]U۔zѦm݊sӟm9>fޝo.ԓKR eڢF2S}UT#-T+2#%GMF߳h X!aF jkI䣁|;ՠw=WJUq$ ӏ֊w!hI|uZ:6ujg87|uZ 1nc|$砺w^|#jGM!*+K*;Q2>?&!CO`__$9ZSA_|q : (1@S|go3;(nk@MjO܄syvf_qYR=ҧ 鍻*M9c7KDykA"ᗧ*ZM/B';'ݵ ++;h챸X-e' S|dl,)ՄbiPqSHnatANtg#:سm[A844kE)biU?,m`@~E9Y$%PK5v(N!B Ʃ(?alԉF35Oѷi8{\x~rۗ@6D`kkypH>-\H/`?CX DBqؼ:R0јOyp}4t4VXw#犜 ,$J@CA]}WQ<簭UrД}$.Ӹ`*"iYF~@v@gK^-?+Us2Yj7ԢGU˯_Kk%`7N5gі =IlJ(X,tdُ}*Ot,9,3:녇.tHP+]1]Fnoc3ۙf}qUwPgĂ39):`8rܜһHQwhc Q)n&de@B+50 &#G^&kμo"`:"Kx>9HCW[F %-T{`pXs6",#U[WK&HpG>ق {QDxMtVm&wvbz6 @` 5\F`jq,EӖ nM`N8F]jH2ʱ̈́2u$"e.7y(¹≵Zw &X%`W6ji͜2݅Cx_6m Шq= vC6>Bg 7b#07t9ΉŦVSm=$3}0ýj]@'ulDer G[1yl!ߊlz$`egl #X @Lmvv9a\6=jVȻ]bmD揣ʁKlThl!Ppe}][^saN G+"݋Z_@-6sHS{Qn@2h9%b4p~''eC&]D5X4&b ;Y4G-tk/t m=QOߠO.u%HWIٞG,=}Y(oaM@bBЇ0hȍ`&)*@`ԇjJ18ԼChQhI+}lOp.G_+~`mPulQbZY _1OD6RIC4`Z8bVk揆Xٌ}{S>fe`cJw_X}X=5ăp,MAlf܎Zc!Ucߕ9EDmog$,Ը9cx:d^+EB4B޾H;?H*kiYKuğ;cbsރ||#gNpr)Z*l XcmOɄ{f&v5[IF @%ʊˉӯ^FPDNK@>?qAjBM^>V-Iw_smxX,C@'b"h;K\nls*B,d<>''{4v,V)?ZN?g: MnqdCcNB ZI6مXCݍ4#@(ݯglʈ.Ѕ 8=VQbs͂8eۿ-$ WWM@H]Ёk0Y>|12t&D+*@\0_׌+]*JAHz EU"c7y¯,W$*؟R !,dlMWߢ{K W.䒝e y<BMxk|toG?}u2N"ŶmyȢzŒ~#%./'xEJ7[yM 2 [ŶNߋ[^=ga4w?*–^zJzQpmx 9˾4)f<8Ui '/ڳT@kl2e)W(&aL܂x. z(ҝ(d2YUH"[iA5OPl_N2c!YKSYAaiD4F1nrV¡{v2Vio9Aڧ9rp%OhS[ܽuX|4,RށBWD8`ðwצA'a{ q%~9I!KR6n͂#s/7r؈z&h֊$r:߈YɄh`E+B)8z_BC xa7KY<HVW銶=(4ĪOk2!54>je-qȢ4]͞ЉM(0+aa2"zZ5ҥc_HSf..sgb(\246o짣xNL4{:DK !lt$ ܛ$ B0]q$]#U178ǪdbFłxU> g;7jh7^ؔyg.,cW7zY59Ƣ?,9AhqgQܨcacg[^"A !(,Zˣ% ]͇gӰevoC,ˣ<4|]sybo_PtCOm|O^ c 0\X}uyc#Js1N`$6M>( m?s>w& zo']ñwr%+Όы to\_4\nLgМA%y!uQQq}.a/x5rof+%oIACcM\-/6Ǟ-QÊB##?&`&8T|<Ϫb u2ńF{" p66}\M:=ל%qCa/ q4c x, xM&\1%M5&(MjE\*ɭoPqY0!Uh_\L0c`G- |C9ؙM!fc774xCpD>x6<9aUv8!͍kQV?V['NjP KV\7a5isF`^ HLki/5j7Аknj r 6myݺBnхuZC,[ kƇEn?+)A02j2Y{%"؂/cǮ&V@aQ=0~E*қ5?0xjaRƂD5#, z`3Ae?k ;PO&]ew;1I_9w'3FQP5N;Mҭ7!uKVc\r`)x+wlWz?"쪥X|><~/\;f@[ CF 77&;=4vڮA:/1u,'a5ihcQ/vne7P2%FR'Ҳ?]!I6FN^2jJ/_(DEܴWla CHh1eW"PN r@$d1ҝi7UbFPfC@{`i7m=^16ޛ ZgEmc!l1&m`- hgdر`_Ty1h#χknhrmc1w] LBsӌ>xKyӚI3 /PU 9W]E$ za4I8>.łju{^GԒ#E ) JFCf 4aT|;mu!ﳳ"|(2A E81x?h7i CDH$!@}EeF2b3yhr>7#"`101Z)x,We<V_`JF)btbPj)TRsPѰ$ˍJ4֪b&) zK"0u~*BSuiv=}I2<d ͱ2CY\ԩH,x=kSAB ƒjy|#-D,g̔YlZQ /f\Y5·.=̔. ͊!5>`eÞ!UԴ`ǩ$M E $QrǨ^PDmU슉B:U+%wuI?E{ \š:JfP /լGhݾ/m'bYfVlqh蒂5YtMKz>A1B1+`8Դ7ph YOZUw۝ '$ um⼗'vBhmSl"!vF^~7/m{W'bD;n(G-Ex:Z2,4{?Sr7 pL?!ڃ֭Gfz¶rJKUױ+~,q뻞B{`M"CTb"ua'$ov"|7N3}D~wm5A<ԩ!+=CS9)Q{ W&pz2ү|_"2iUƸ:@YskS3 䉻)_N6Ď)I\JencSyv+'L/PsVٍuaRҞHy=83P`v.v:Xo8)a"XFdUptLYDn%hBvgD5ޫ.]|IV`7NF^6{Eff!:!. Qm,8&]87i`039Z1AZ<bd٦d/ fboav*7b Jz؆-??%eS?DR=_퉗VO~9| ɻ7']wfFP@I~5y֤c>(wPs)7~Cz7826v̇,9Wjӎ!X&yr0_LY#5([ާܜF=N. =Gmnw ;x^ 䧝RL,9 huQmR JGzlc",ȚfC>D?^r3#V#RHvU: 4pO{P/s۝`#)0DՅ*vfyd?,г˘ Љ16Ը6K(ڂA ⧀Iv4ݢE6c<EbXײ% v2%D vM‹_ڒ2M |%-bD=ük94\MsL=fdD<_9Rx~EM.iiy,x7Q"$k 4i86FlM:hgwɶy+MgJIA5Y? f8'-΂Z L߁OFly|H"T#'!$D鯟d7'53p?-P|ᣜ_X J7bVU ѡئYjUO%R^AmȧO^\A-WP.ڱS뇕"y}WOzN/En0ݵz#I@D8̄+iPg?~gWjk-o-2ȕ&A04~/UE`,@zϜAkܻ)iJyN}7#,%NJ/c*SPB2&ռ:>@Η@ fХuŰb,s54Hx (e; s/i!OpEޕ˚r@V0iiB޼㭚BI[$1'N3-ىuz\df@|/SQ RWO|lՎĮ럓-2ͽauEvo"A}1Ԉ fa ꡐʆ<GnV#++T1V?$ʱ©5PxĸZzok`l> 8r^0RMMxXxE;l^'kZ ]GyqrD;R8K?SI:Uƶ$} )?oJ'x6ˆ K9Jд'j﮴VUꠈ*0ǣlˮl8TTaI+}Gv֤NupDm9k|/ܬ]F~U2YKp4ZȤҙЦs ic8׿*auwblϭEzRybh)rMf wK}l!*[F;TԱX\nhcfp6〞)1!@-r9)aV xw 5vNF_xml%NMQam˟ `ґ6/1+|'9Mzvĉoc0J@u͒b}7@'ZUjj\^*;<|^JKր|.ݔ}. fz>-EI1@p gl|" bYB+da[X )]&_4V/W99KB&`]&ąLxrS wz!J.@Ǥ6Zh<<>}SG$AJU9Cky *[W eZ$M^c᝝v\J]? (~hk :OZ}NJG*O,<$Z 7]J˃MVrZ2z-1>Hxr^eW B#PIje9uk>1TqEʦZ:p/5"I^@g-&إ#JUo|r FXeZ PAxe舸Yjgvws0\$/ cVÐN\q]jI3s*FR_f? HK]*/(ab'x,֏7{5 VL9̰B'CxݣMfO>h6ސ<͂馍#U NF{{ ȑ\bfl9 W +ԅPٶ3 98pvþϨV?WEd,~Aup; Ђa. ::ٰP>g^Wʪ905U%9/Y>{~CB/RwhcM. ϳX51:yon VvV.Xrx(0.bgA7͂e{IxT$U&zޠ06?$櫖# Yxzemؾl^)O e,mfL#*ɌפIW*ÄGt,6‹  p;x/Ǟ=4 GK q&&YQmazh7Q<["^ Xn#Չ=g7W##wwŹ;n48 D+a&9SR_cG:ϔa :GHRVV(+c֊IydI)! $3!_I3ǥC'ٶoΨ:7%fZ-8"7#[a6yXIְm_MÏNoBbA=AZt*rRJ{5N`k>3ګ ./w}$@52z'8 ^J曬 "`>#/g9|ЎL)PPKSЮD\ o0r^gFa< cl؜9]c뺷3]<HDbvL zR y2&@?u&F{]{ϘC)I0$-0{UYkHHhɀ]7:SݾİL0 O8)mU XfѾxTdGJ/V7ݔInL,]yyY'&^ؔ0d(t{אiZetWc f1hJ$2o}Jsir̟OZ'B )UT`A)GA}zL_[*7;$Щ..ڄ]RٟGVo2aɺT\|1N>:cQ(#xa@}gOonHPn1"gs"Y B4~ڠs9 s"$imb̒OZ_%>~'kvU6^l4 +Ha⃪bצvB5Qӛ|S_1׿HyVu*h fO5yOOIžݒl.Q@-uo+؂Ҍdݹ$钵S4dza[ԛ"h}vv!lˋbI5 |,U@QgD})P5 LJZ }|Bsp&?P:7?  do ߭q*v\F^1C7ʢȍ뢼P8HJzӝXCw8/ @)/mY0Ҁ߯ [9)sQXeQnr:X@Å }9a)<8z|L/%oy9:Hj4 "$n&eHQQPPJJ'u]  7~j2z ԲR``b%~싏MGې 0r7NANQ͹҈m+x$0@3-GFEp AЂ>?H*|߂è?9K} _c]Mʜs6olV8G[3L/|8qBVσs z!3 mPmF˽$ASjN_xRmFMOrbG ?bxsx졻|Aջ ҍ#(%H5/uRI>X}4wѧ[Gɬ>U{:\P3osaUO%yQeTyxuEӼή69TD[(#k Z~HɧC&l,`t_%&!"D&i>c3nU.3u{*P|4$*\nQu,mC- vmd: pJCpy9!\ j`{D@We5XkRK0:"3}~mdJ{9;$ogBwQAhDƄs`J1yWk${͂؆h`PIYjp> Qi?J#T`.QӥݼzRmN]Ԑ"MVvhc6],?QX4%#>͗/3y~}wi4Ӕo.(\ ҤO'uD8=`'Ew!Eb!0qR؆GL  /R p\/ g&x`r+&Y5ksԻb9?J` LwܖyfK`~s<~;) 4KVw4ycZe;dVtYWDڍ +wr/*b} AN*1 [#|ųξrM+-\yB|>sdɫ*P:Q;Q,f_V3DLOrG!r~RU~>2;:%k-FQI*uDQ'A׭Nm*nj xd2N&^~]Hm ޠua'B}Tܪ6/~ &k*6Wn f}ŖenD|jq_2*mt~0'N9^ſ5`ѿX39R4;$ȓ[НweW~"gʺB© sh4)R=Ak0liogc9#‡F>ak; ɻsi6˦ 7K[d&hef$C5faxdCVF6Z;ԄGJU_gJG<+|] .$NXnmla \hd,=nYN˳#ewZR)uH10FgG^/ѝƭ.񾳄ndJcw(1*dgP *+lY C_"zkFk8x^C'<"_|E\=/(E2;C8 I"vu^6߁ ȗuSJS,G/aglU:s7BnH`^K{5"-< BA 4c|3j` Y$=_k䣍{Y in k+[VaR}gxՔ*!:WtIܜ'|h!5PAk=s5UyFz/4=Rj>Iфs7HjلGڡ;}S2-*BΑ" }›5?I1ɋ'4 P Vi3Cc@c`tà !d?[A]?"u]*{F[tG.3r}z8.@f&B%lx(PS Z >2 .5j Ц2}^ OQ$|fd(Ԛ{*z/P% l90rFȈ]k,汑*iR3ڛiN/ަÂ0I"ey+2J$ͧZˆ{0F[ݶ5OUMX\ӓ8:G/ki1KJ3kx3"H<+ēL,3R6)Nݏsa+Dc,2"$O30)fŒ1ɷ+يE`Y^ɠLIP +O57SрDwGr9̈́;p0(VUUaHXcR &簚*LF*nM-TVa!% F0̤i,]r|x(jj ͌ôQ Δ=HP#Ǻv2k|wG0Y!G ٹMq=7HA*  j8>H&T* K4\ӕ7EN0X4ӠaV4JEYN?XJz/^V| +ܳIA4eo&&:c v58Ȣ?#j ^D ]RL,fߔur ix/AK FM HcSE~uEOGUl{y*R-!f4t\ FfBʿ+sCuW#@/Xp`w82Q߇}F,~]$7&=&hS8BK,vQi0E+sI!tͧX0_ 9maBh( h`VCD}Q^?uT$B? #ͲwyYGjqLj1~~{ҝ8چ4T7pkP*((d>e >h_1$4GA3$1#GƎxfm h S@(ƌ2ޑUk`t'3"fԼ0gq/MV k/( ܋*jWtW~TXJ LQŤ>ˆ}[İ3u; fcnfnϗ+QA)Ebs*$Jt謼Rx_ѳD;Y;U_E9VczvYPgaf KD*;Edñ ̖wz-F$p HYﶦ 8HfS?;"{7/?廨6P]Ur#q^W%s 2M"}[k0RN9.Xz ,K%CC"Umb2 ^I* ֯,G7dTn|W9Z+;*GA{Bz\EЄĘKSC%{3|MOaD~xyct%!,ajP75JS)snMB)r#@f ?[ 2j'J -^-c' ӆ|u 1meF7mCꎜ @^we{m7C@ T'*~蛭 )qsq29P\1L<{xGԙ\F% asB?.ݾUn%.Z;I &RͪLҠi.mkǥ](2gsu !7mdr/<[dꊓZE];4B[N!(s R42_]/vHRJ26Msy7xu|wKOt!-aSާ$ŠS\sVyK5ku5CsX>(j@@xtӈU%`ܭ$خ˦r裷Ոrǫ]`D V?i;?a1=M  bY:fhr]@@3-a[5t\a[^{ŔΗ>ws"w66 x"o#D+S/Kov=b-1 Qc2t[Vdׅ)Q6!./yBvD~ 8~aV$6PHDX,}q&x&{W~raõuH;/Սvp _ l낵pφ L'^w~쨮([_tFɰYV(*"j-MGtV2|97냮ߡDw2|ҦM7&jmW`=B+)a1vPl5d﫿{NCnPٌJ:BaI[ 5".dN-k&CƵp? :eg݉Xxw;`vN"ۦ3 ^AS p; ݳ38L9Aצ-R_?IZSWdѰt"GbrO,ǃ 1R1s(jaB*7ۖ:qXG'k i=d [~V(_Ӽs50=uilF3聄iHZn=nrڕxVj Pk=f O,0|0Iϗ8InӖpwiD1ޝѣۏIc/@Tc:2b`RWA^+:,szõ[{Ѩo /GpX`]:j}A /z265)ؓ{(.H dQ_ƔXvXb1[:._$| :TK/3bIy-kLr~':hA%y $8QVV#G}+O ƹ.G43[yM0͢m~&IpҫpF711#ïcqػ rzԣѴag ^gIc !HcDm\Vf~30YBs @`qX_&gK}~ Z}d`˛ǧѤ_cH[R=D:='dM.f ${.Dm/t]v$Zm!(aۤ71@̂X0K$YG1e2&*~=H:aU˵} b:OQcXPÆ$ʼn؁B ]],̠+xvSep-CֳWRG'5mb0O-ŽA5IgKDI"lX#J_H8%]hm EUG|{[Iաk޺ XE{rވPpEk_dhqÀԱؤ^רT0 0Be"<`"`$*-HbR33a9޶L*t$@iHKX 8KGP寐R7@%/L6yNn{eƟqX;HW2 /գQ': a=>lZ^QԹԭ;D?ܼd͸gѡjAn=Ecd1k4әwzրݱzxœ܋:Mrւ~Ph>$M2[0 L A+>Gc@,XE46 r:D~v/ b|̶~XEIE+ s?>ֱ"nwD5V69b8S ΖQAmԊ4Ռcq>QBݾJW#6A s,O`n%JMSJ+${HN}-H0/aDX8qÏH9͊f=/l,(,Ef s;MIV Y %v/Tzhqs buцh-9w=AZ;Kx`Bye!!MmO#YyY%PL4BTPoE73Ey,>N$95|k< ض,%/vQI0d~lqo a>OIjWIq F7i rV&r]9  T$9WwSYab \n&"vz-}44=5KLq>R ;n欤8LKMMufmKD-)];I?R}^qC#/\$\p! v?ʷ*| H*r>V&Fx(EeYuꏰ^Eq=ckl HpUamWXOh–"w:u+=ҍu(o9 DuXX2-AꜸDw4^=x|SΈǵK6$.DPu>dl󳛙 .xM $8 ~,diI 1As?[`\/ofp!omH| ~Nod}e ҧ[b5/}Z.: .StFc~U|{o$pg6ST.Gޟ "1+=PYN;Zeʎ=w55+f})i)7/$^Gr& sٿK"ZQ =W Mwsn[Ѽw՞ǒ S˹K9.Nҷ |`ֲ`̹fzA]Ř/xyab*oR$0` 59B|u,I Cӕd]9Tp͑_nc\4ZgL|y+n塄xs9e+T]~)JE@2`Ps$s}ܧjɧ&),(CPc+륿|\g9g R}NP$ ]3CM]wmK#Ԭ5+7r8PWHBqq?k=%rbA"#|D{PBᓇ-JԭIk[BYrS=KH/0Nx^;w];L6(F*egڠz |&ݕw1=VXG[X>LX0:R5'9:>+4#M~ͧΤ3ТiɆi=L1刞w<O͵K9yy"FLdZ‹˻q3.9>?*WaQa{Z0P5U-mHV.r?. s~O9m\_fFf$Uyra`aQ}z~[:g:n?Q?F SԔBv*ԜhX(' Z4Tt1nyTIj9Z`N neO-JARw :/Mc&=|UXRYw&B\lQL9ed j3 5ΰ+؋> %L Vd{׺ ooWb>^B `(kg3}|tDzTKAW&.0f/*nFF>ʼnnܸtNV`z(@0qz4v=RAv}4zm G^ b(s,yB8w\[*dj:`>ҰdmZɮ#M%c>]oO- \It9haE=`{z.as7AL KUƙ:GpS{˖ob7]$Cꈲ]7Tl4gp,&`Ť؟k/*,"na皻(5R;^;]7`^\n_7&R4agjcݯѱa[GG1OGPeTGNz]s\TLF1_S_cJWLi (t9qP1)N PQ?4.1a|1X  Wm %]rhEg2cΊ >H]l*/}X[7mRl.7]O"Fx@K-zM#JgwEj,M& .2%Bq{«$#Mܽo'Dޠ%dh4 IZn>xu7>~2˻#NF.U?l~E)h`Y-綍qxg1a F3z8tf"^ǯDF׺"R7ޥ5BSv* nU s%ngC~%xE`j/ Lo k`p"RK6#XCvAPau4?z'>H/&IM\M뻰պo W;5ipsǦ- _@@9Pt0:Q^A yn q Wy㞐L Ovc-7h@(*jDݣ*#ɣy`h=hFFd8Elr%ΗO)Z4G| F:|4"H?٧rLo1z6QU]&{}, F́183Q6h3Wk(hA_j /!\ Z׽1[$g*1$>?aW\_ԁBnpl|sGx)+0p-E}m?GKM I;zj""@|6^ +h`Ag9=, 4?ۀS,yYc`sG?hƶ,.ܺiC C7qzm)u,%핾X#ez2 #I(%' C9=Y0>Cgj*9kޥr-hE`ͤ,a3?넿6fU[/| q{~+ۄ ܴ U  %*(@N?:@I/*Bژ.m"c+xA\MZ/`Π nԱaN*VTr ;궥rZ%q OuPsm9u7[,CF.eu@r rΞ\ooR  +< 9,hDlՉ2Jt0WV-ksLMBLBaO-֣ ]r?2_I2`p47'J&taKƵpj;r~WrHNjd8:W4`9+xV6rs}6!)Cq )"OyV"ĸ>E Cdg,iox_)=L ? ނ0fVa~q[sl (:ǙD/kSng3sw|lϵ90LmeيD κԈ.˴R,_xCyQ$jWYu u8To4OH]EDypqW[K#>ER a]BjAM$c@s6,Km{ʓ[*lE?]yM%7QID#]qY%~gp5﹕ş&l7l-dFp9JZ&6;M-, x;K' 6X1@ êX}gdpg!+"_5"W $ c]\$'t<aY8W>-JuH&k_.dON.P? p-lӜ?J)m`! tą05 'V]&0ڟ9 ;!u3i-flySOrlRb;!mmzPI3lZO ;u.6Lm6q5Be S4BVhg͈:"3,Uߛngbb]\qoEv/R>~ӄV +Tn8'iE'WŤ/os=-?AlU;eZ9@F0tP%CgفfA۬(# B3% +ډ1FnNkfdȫn|2]pb@Xd.*KCbQ*bJV)}D~ƌ `TbI\m%d!svh uzܝ0Gߍ'1;gc|| t/J}QdrmFJ*3"YH)o,\JM_J o_?nNHk"/[xO V#;:M~PZ\-ЂR~1]]^zs+Gn\:ϲ!c!R pϥSM=WUݙ)^˭lv`gik")"CkhtJsi>>C:Hs|A4f߲阪-z<,R}Qdn!)&9#tx6x{`y 4c%ǔzVn/M+-UrRR263lYL$K6x@SKetvM{*IM[/1O`VqG9Ià6iSdvͱ̙aQsXTنcgi}^|rzMwef^nnO}ơo96414NJ.AA)Z_,fJO._"!b. {%JMzri ~hIE4ɀ.C؋AEOLy|Ov̔Bt0}>1PC+ V椑 Sh15Oennsu;169'daYiO5XR ZiCq{F yJ^{phc4Ԣz)Ѧs1v0@dq`#gcn#։Gzh) 3A~\p'@QX+S$߮<>/"[Zw]+pk $_Ɲ E#D= "7U݉ _3rj= F)J֏i=m~~qjg>>k fT~ͪw]0s?Qx޽36A ce2f4S5E @~ j,Q2mG xBÅ 3!$#kj9lƨX[v'.=`RH:ӢecQ93-X44|U,nԇ?sքzJ ;iB S8w!K_  >Ca "1Tq߲"~4U^AM߰}bT魂$EȑȢ5f7xoMK9 vdGtuE½m<4bC&{FjFm}$ErmŽk`#%ڒNuO (6:[Dڝs'cγ@{܋ IbPly1 ?-ތOK_UT=9^Vh4po ۨfU\mpS"o/L˙sK7to9xq2Lt`@|"cܙ9 =]˔h?gp#IqԟݝIY?%^uEbe@NP"F ǵxrޖ4R/PȒ0[tԵf1ܧ3T*RGKF2=gCMm *nqnQ-b0Byz3@44[V~8:` Hp &Η wo[W`^Tr O(L.pvˆPː( aC3>P/y|lyؐEݝDgvc JAi h֘Dz?TeZ$YAaF.NIc{ܯ;{ڄ(iŚBkIlDG}IF+=HC7*;ISAy̸>,k89rL[cyB/@޹b+G,K&%ݧ?@@I/(c3L+K;FOl%se i. `@tEwM2v݊^GkĪ){L .%hrc4kNo1mcj30nۡK jWi9pHH=K"oPJfڮC@${i>A-GDއ-Plp=emNlh$u2Qz*8r  /&fb~8kV7$磗ޒC&#)mA h9Nhna߸u6frUB,D&'#kb+]@ VYKQr-NV;9aI_m%P*OEm~|eA&.4[1ydl RpRlk [)&[RlB kY7JM+B7D0d&-?aiجiqpt<,}>c.0C}5 ~) dcTF̣(ZtF|i ֠pIV[.48kj&9,׹\ L0W-?h˼sҦ7!EZH\@UN Bǜ3+fW%Fs tSBpn1(q4ҶUq8=]I.fS[@3~aZ`]c8Hpm-׸,6]"ruqfdrJ9ʬ,nddɄۣ$h^^dy5 Q;.F]kN4r07eFȰ輭|Rc!~/Kd70+(x ¨o]t5Z yK6i..?7D,g7Jcx4yw <.pJM,+D>Ѷ'_E 3} A+#6lΡ[rhPFuSL)qAOBrrhOV)tGȶolEddf3xIncI5e.[Acsy&Uni x6!Ìفsod9$+!9 o[ z`*џ=?NKylXծr%}dӪWי֪L&wO2D<)Dw%Ŏ\kžB D NAfmZX2S[o_.$ ]i,qYV%s#|U&h'޵=HGj@WLֆ3,2)[gmAnOJXy)3{Ј `'\s*넘m訾طH[ʥ~Ǧ\-aWF>4h95`Y~NShcR"IakpKd:!7M8=sY.UXvs&U_I!?$䕵Bn^QXP>vYce]5jIC]O96;|Kna}XM?{'5m[[׸i!o}̒!Ap0qڷ:i >MbXW%xJ̒W ZtTmUky2LWtk정ͅH"_?ջNZī ?\7Sl$FZ"b l -ff>;DW}R}-ZyCeh/P[T1`&4;S/6.\p%ص(@=TBkX"xI1jd#T wOaJ0nT,)Y麣,=-˦K;tm#Qx Ɠ6/&S_, MVտ h~m7ƅs0`}5FD?IR4Rt%\H3ޗ zCl <DPZI"A6G]@ .Gm伋HZ"Xk$P]'<,sL⧤?yOWaW\X)*AΉqPL!xWzVRx7&YQ%%lC9&O5 au^8'~E1ٯJ-_5jV{M>l[J=/Bh]wY]369ƨBF*{=f7 tl_߶#HiRSmH2M(.b|^2GqJ}^M^Ap>'>F;$Z`cFi_TFHNv,K~@H?/"~&a K6̨&b9 G:ԉOnYіP<ZT>`E ]H\pI >,=ZI< SuG3 &_E۩ϧ!kO뭔\!IuþIS]'޲`ttsxح#D!І2&lr(Qq?+A@beFTKa<#2XLIϽ -eef0 ک/r5Hr1BJʼ Pabib Ur0Ͻ` aQ9_aV"0DDz}aEn>qϝT!^d\ <]2aO*q*H'Z|?G^ZݼY&4ݖnoܶSm]S.8aGڧm| UW{2$Ow x~{gx:VW5!Y*' t?KwZmʝm `#wO=]YE'tLح=;f.!jwo9NY9>ڱ<҇% ӻL4(ܠ_[1qMJ^`6ڃThк͆^E.H;C\)=# m>a$:o}UR PĄX~ UpCd.RD `Cp؊_QJЃRsՙ}Qdvܙ(&5N l/Sl oNH?$c^1C9o=2l$צLbb-U!n[*+7 pq# S AE\] \#> 塪Kc]0eQtteE"*pnw[4x{x=r"]Ĉ6u~Fd+K;P7qh9qX.dwW 7eUboQoo^f0I~0TR5rF%"*<\ 6{@vLu۾b9{0 lXB>xܬn*sj3|Lp$ dn}˺>(u(mv5Xf?e2(ݔ?9JO{zlcV@yZ9=}N`^]bDL; }[O>@ $傀TeAHv~{Q+ sD)a΀*28R}5󃏳p3v=(Y #&~j^c ?u 9*et}QHDH&.?>DJ Q aKF%T'DtDx>"̞(: Pu^Dϰ:3}0/JxcU #o *܍Qg$3H *Vu a5|$HlYЁܬq?c#UMH>B5@j0)"Uz:΀AK/,,HRPNvB& YBW+oS,d%$جn_ p/HCqyjOH8`8fq`)f"mF/P)Z >k>$F`OՍ(3hym3/;O1g"p:М~|+ <~O?{ypcm3gd4 q ˂d7I 4T[| OYmEoB砫cF̑>uNBz`K3rDT>5$c/VToV]p9(0/ԉ:g| ݼ[pRRI9AA}YTF$~)1@Eh<̷/($1'Ew?FÀI'/=4YH!E_C 5X~* ! ᚤgA 64cHpÕ$ߣHK0 #[O'DGi`Z$ՕYn?, ;ô)zx%Y"Tx~v~>'sqrgK]r{r-$Dn*e^/ LJL%0D3` Z׼9S5|rfG֦WGZ>H(`\D߽yQCt_LZ #׎~޽-8@t˺#iY^R1G!P6DpWg5xFLbhj.䩅l6|*:J:oj)k>?K,(g4)9lH }{;VM9BuroȨIp@w1U0Ae'}-q@]qXzf ZkIڡ?[E>[,&Ӭ])fp2>{ѿC20x!|e`*X6bq<:.?!_QӔ$7(AL, )uƶO6ZR2@n.9}4e^}Eue z 3!'\;Cy'GjB60+J,JA'ٛPGTo&UY0gcxQ2griuEׅ]@=\=05VqI.QL߳<.z2rBi vB$FRc=P.!S V_ݿoz[G~^.d\iJڻ/d@VԸy+;~hpѰScorJTz_BMwv= XI  m#tO |]{zLi 6kG;Xm2 m4-{OЍ1&\IEiF$(Hehc7+%Ė gUNᵶ+l21:-?ܚ."ќt2abvzNSL׆E)?ƅ<~_^yc>΅uه0~PڼtC&{Q1H5ÂF'wrE[L"?)${VLYp;| GU@g~78J [іBI\NmlыJ;mya vWM,t ۯ+hz-l-*H: $"l2 r}A<"Ͳ՞vtĞ%EiטoF{^3Z{B7VVV%v | ۃ:LfwWU)BJ.!/ثƢ{ƈtCPX, VS^ aD G(o!JMǭ29!_g9St6j"M$rZ$,Vch8PxQz2VA8%A=ȩUjamC7,isu^:kZu8'rې@ yRrwĎpմ@H@lGѳB'k.wZ|f[li7t]< X,_*Z)w7 ]te^r6mw`V^Iѭى*Bgqz*ʆYPwG5L}4n.~,?Hh\"\s7iΪYKdճ]q-*zG`[n<<} eD[*uX82XS=Y}['RQ9銸p7ؕZ ul˥LCy'|{%m }I"-O#WRדF։lr+l ?HZakxsMOgT"-.Pڃa o U洕bɆj:- <ʹ~|Ox1 ZmJ{4%x②hmVLxmvj]eEl8YF{0a S.RKK:͗@ookj>) ,zPt`_ {ï&IFO9YF\S\| QX aߣ=ΆYRoDV8CDUR Te ۚ-㠪]MYa=O3jI(_OO͹'\DrmwWKaFӹm҃]@&Qdڠ qbt R/~9$u[6i=6M&olsߌ+w- q Umo$##?qZVh kdӒ]%TT%a,gT bE9DH|6bŲ}2z&Rl }~w  .$ncmA_}I! p{:i6.cfwzHV In0Sמ\+W6=9˨̵ֺDX;Ђ)-K!+LNdyMr5-[9MR|m7'tVu8z'VՉJ-@ӯ[^SMI3DY@s+8}"ld^|hWe Sv y8x|h?N0Щ PߋD}?%!ݜx@h+- g8˅C;zaׄ~mAbsϴm7<[_0&w[M+uaDI|H Qǯ\Ma=Y쒭K)A- =b1JƸxRCy_.di> =],*M+?b4H%A`vȽfU4)\EjE_{^wd9ruN̅=kJI*"RcT4Ĭ~GOAC뵳&% ˕VáUI)xBEv 'yu@ it*`u|N:%g#.CIu&yxJ61 V^V[S.:s?gw`a>t7#_aԲוأ$"K;T5 h7pZ^>"U(y0u56;~,V\[UC`3<=c(V􄆑nqS~vk^qwJ ux$lV}k n:>-;ma^69}5*ÀOx0&51M+TIs@r8609L+o/B{L7nIJ_C$0.Whp1!/i&1-4ܻH討b ,^cb֌;\o7nE"]AL8_(6vCAO'B]$ڻpOoP@N^Fyw6xPvqTLP [*~c^&BOGp\]meC[M 5 3^.m^2E+,"L40Xzr"ψ[ ш }9aOET%N?kUvK64dxpQǰ[:Q\x0 #7Hn~@Q8).7 OGN$/N4c+%c"cYGj=Mp"u k3KQ%QhsI=./EJ$(rwF氠~ʍۅڽm\> };s2@a#ASLq5Y&\T.+ coY%U,,_(\\KϓY'x}{sng19N-ױuuTYl1 \gUIܐtY[lh<]'":ݬNWL;~{/9U۳ yc`w];g~ Q+wCBiOWz M:lW"|PVjD@ƽLl2C Z/Z{jDHV^-$|kv\taamyd-wdM&6Vl1XZf"!SG-b.Țs4j,{O} ];S*vs؜DZfW7c=̱4],oJ%\BUw0Ay!^^N̡ǚi,ŧ=8n,Ӷ{m-P x.&TtFDM6 -1LQ;>ķ<&~"L9*#xd&?cZmܐm8Ѥokh<t5A':2$1=#1pWpٷ#rC8^N+LvƩYrC@/.ͪ|Xl*y5rT&uT fus\iy KGv 7(6'Gd@20૿wu ]O\&p9@_h +xmp;z7PW1)FMvKL%n-(R50I^(sVѲ!a}u !k4i?V $tөV Idk c/UHvIA>h؛qS+8)VHX݊p1ae$PH!9 ~.k\;fw.:8/z}EPr(zЛ0Yp+(%HWgQdf2ozI[E`ECpl mMqetQV5s'[ך67zs4e*憮r\ 5'$vC1 Ȝ>:Buoj/+[p=X&Kd(f hqƨ}ZS!5l$VkOG?hݻn+@`:Z>|X܄GcKFv)[@:U\ bQw/'`ʌWׅŸ؃NhB cfah`yqC6S StnM[ljd ptN8\H0텐F!lJVj`?K:>7lUՆ*@1T\/~ X#rO-5k8/#_j;5u-wkWfI2q^Or l4_^osW=d x ғTbœj)8gG}kű0Rt>!~oUdWRdso?MhN%ITGI_7@97!?~'V|:(8u#V΃ > y̤ } {8D}#e FKSu,q)R}42?'N!W8bwkFaYxkZhsǙ$d&Z".-f#kcEO05 ʙZ1{@ikf;q;4@!Oӌ3Eu*7D32u}JE{.WOu[[0.i8M2mۿEi;)s#He2tYlX{IJyDE*-+ucE?3 x_ Gmg:y"RX2P#^BIʼT:HnҜ#.cLei A24g^jKH [Av1 `] |0Gm};;ѳʷ ҅u`>FL@#eݘvb骙|V۬K; [0ۜ :~f'yv|L~%:MFg1."<ңv_GX,yfUv; :rRj@aiM\rFJM?!aj7w@3|s5m[.& p)D>[)}kC3cM}{{ hhuKZJƒCo1ϟ9@9DJer/9Dl<%ޡen_droiBßRj 52؃(5:Tk@qs&/>ԟ ˓\\CqhmkU }qյÄ"rNjb>)7/,Vgl)G9I@Ls5k PJ08ZU- G2dVd8aD4`E _!V? *ىDp&̦ɔ Y e0(=xڃRF X_*jО\b_BAFK)EEFM̟֭p}'/x|\9tNr:QR5y Ш uu~RS'{6z=yXo\R .*jWɬ2qNsPD5XוieI vX<*2/A frֽ3lxsH+w}}93I@r}2CDCSf0~H\Q24:(?#HR/횄Vbۊ;uf5ƀ !JL+PW} 5$P.ˉnq2(}e8 +l A `^%؊ -G}ܾrz@>AJyzӴ; ^hW_mu՞6Ӫ޲/__=!PE5Ҋy 'prb' _U>i:&‡ b$pǛz 0|cl/^y/6hq]9Zk ֨CVN#h~Ὶ>䷛ ;$L&Ξ$BSߢe%'~خF5*>R-)Kr`%x T/b&N^Z#p|ԤvUX;ࣨGchwŠ,\h~g4@6XҳE@M.1QTr1Nj2hB8XۻNƒ]8cO(Ox bDa}r?y`;kJ0/k{n6ZnYNO$.|=7OA2p7sab5)OIR4]mg}m?@E!g"vASg+ߗz̼խC5.0?P,eV`F]*:W`Su"<2\j F&1 RcJc#!SeCw2)O}ii`rNVIM$B)Y* gM}7ZP[43wN#g2t_t]rCkT/ {JeG ߢwu!-l Nٲ6H Ի;9&o`^1@n.wWfa,ި˗u8vyFA QʥXȗ9YnsbpǏgB.(%jsيʔM4Pe=0GE#4([ mxh9t(2?8wc+]O _Eh!9 ۪ +,Gvԓ-lO2!?â탽g D("Yl<_yk*GwG{[jm)&}#LsɄsAZ=|{%b[4?yJ+H*Mn,)&Fi-'s0q1'+*iOF\0VI dFt5RACjM unj5o3*u`!LOEFҬazX2檑fB9qx{F꿾LIRv|t朮w~FEnBA9"X4Iqq>!b z: lkg$1LA#94XF\k#-/ѹ˗bp(i@\ e]UTU㯨wsnur)osn>?i]*+omEU;5r=Aw5E(!?Jgg˓Yifs[]-b+; XVPG "P#/RB ~9,/b, ,z65CtMj)mםUw d^}Vn䰹s sFu\\mjiVy9T̔}\"䈖ak?O4JxDѐ3wG'jSđj.HqYȡ/A5L|;  m׽k:I}B2Tl EƴBWg|:͉ؾwa.< kѨ"6p5kcIR[0nqa SUF8f *»s"[|@H "x : v%hZh+< vKLe˳zϳ0g v_9/c7RUT/ƃeFDbd&E%@53W< 3566}u)t-;7!eM"vٟg-j1vͯRNEy(Tcx0F90)mgR Vo pPH9q*ZY?ˊn:Xqk;+39Ck8O3NgB>HЁs ~RnA̯MI4 )ai-1n!דc0{ddC@7n^yXë]^ILWXq8:搨YT"ŦR1)S=$u\mj - x\h,mrD %pdh/ZB*&؝ h260E"8@MiF@<'LLI}*od,?^|MmkkeK&l)9_PyЗZRKu.ơN+y廔ٱuCc]vf%6;ݨ7]qt?-\c/ݤ鍘S6dQjEN?!b0g%Yz9lw;u;0*ю'9]n P8exI[EƑǜԘ]7@J4^6j>icyw=)f:@{Ⱥ%dK_i xbq6EMEWwڽim|.0~Mg9Okxf8F9՜wGOdMwHâAl/"yT]-ndžk۶1};cG p30f@@Z.[nNmBAQEK_to8TO0$!3\a Q:FjuDL> XYsN-Gbޙ-ye麔Ho"DҪ^{%R‘t,J"( oku\pۿ f0+g3'V2]2q̳Bwyqkt x̕E8AB/>|N) ԗAm.Y[D`.d{D]-]N"˃"J?5zlEճ-Bi !.HXmUot 7oX Z&Hk_-#x(z&qI2BU|2Vs4Vcx1ŕ$ /i%QDxEL qI^50RVݢU+2T0V<-`/TƔFi4ǥb>ΨJolp jDi{#p8  8“z9J/'&NVMO925"ϚoR}NLELߵy^TX׏h+*/KZܑU?4: sV%9ǩ&)żEww\en=esHD(kAך5PDhr״́uU'X!D~#CSj=EձPwD8nw xousT v1Pߙw=?=]-ġGJ*lD'KGd{"z4˭! Sަ5mڦY4 1c_O-3t5в[f(s `Xdne)bfcx4e̵(H2e{0勨ϸ`?8n֞`cvbAtʺ3Fٝr<"ll:hQ(8?7Sum,4Di}KKiu=A_zM;"ҵ*[?苛wؠT 5oj8 "A)=(1s/P0^D5iM%¥KuXFEZS=YQN{߅h?͢ ᒙ6# vXFLk,@1(d]o6¬I^qT+)"4ǓD<6,Ϥ)';܌M/LA@Vdq ?Kth{nh0s"PQq|%SpcO U<.xO~喚9~1@ҫsz4P?vBҾi%J²ʦU{M*$Dr׏_HMyf%S"ѽgch^_̀L63 ""0Jտe"<J$ZUec9ץKaB XdzXHU`u >[q!qR z%n.tS69A-b]=eGHO*2VfdTBu+n/?Lz:7EVne<;Qᖃܛ }K!vKɶShOp{c'1@IKU.nEYҨm*3vZFz<1>P5g8C~CO ۶[ a!8u^\}%r vK'TǨk8A6].`g],$O+]GHis:aʌ3YsaJ^Y.Y2$l[ /c  Qux7X1\ ,-0LQ Fp{bD@̅jlit&Q.H L 7򸾠L| @%zyNLp^n?әיǦh17/e7qChlE}YS<~Ly v`mic>vW ,h" W-8FUgC F0v/l@ie#P=NힶTf! _H+0”.<M|F9VF Ӆy!v@HxLT W-F=5+nܻ" OXG@I^oqIQ=ܨng4^dwcꦔɉ\Ĵ6fb/:~D)4ou}]2VJΑ ̒d<5nO|Ȝi4w=0^ d g5P7;{q8ޱ=j\|c I=VsMD5|/!݀ [Ql7Qu{/B!zm:NIhn5^Tt~@9"D:_蔝k3mGMK/\&Ijf5?}߼rm9r54! ɋbt}R&xTA !Z}{J@6bnE>BLD_ VJI%@W8[U[5w ;٬Q*~vVі0GzEw1˓K. # "*LỳfJ q Y5mS1a[ J!_^>DLf SM3%PZtI4AbsC_iyE2'glݿAၸ@'43ri}s,)btH-?Z-^N "I:>q" C_EoY$HcUŮy~^1P \ޙ[^s"]C$ʳP]p7X p# $0KA gV?) me/tؚ _J{0qAα JS<I<:emL2J=q gOwD2Dۏw&Aڛa\歠߰|D3615@b pLxy%|(QMQ:fIP"ŭPy>XNWco#ל9ttެŪAZ鵨A!ZY^j&ס=O9r{28JX$XU^K ?bzוRz_116 kႣDc1+b7ے]fM. hybxN $7w׹hq?l{O t!s-*8z)'@Yvq#;@^C149%)N0U!Et#N;:)/hĻOeZM9sO}5z}܆E: aF#DuDZ6xfƵ%g>`jmNz*,J/K͕uDwj 4ŕWIs hORKIx*Ϩ=RghqBu F{F7@;sCwň@X9G2-'{ILa53<16~`.}MsGVF_d~$9RC]_Ԋs($$JR؈GV$_,bX;64iGJ_}eت]QxkDi,퇽Y6FHYWb =[5ܯjYݨ ]Y3HYz,Pc|avn=gzLgV)U?y%9!Q6Pgы?a( "X}Hc~qMXضD6TKNƹҚbmQfi8`;J[BUyTr4|N]s.aOk>/x3!3rV<L90?`/b[=77M2ir#p㇡J^зko:Um=(CBf|ΪB-~T0 +m*{`jL*IA;(UdpQšŒT)w}ЌzzNCQ1YhLU wuv1bԔu$pDwDQrQc6uhے$4F ݥq(*|tm`4 u :of~!{5 +̫j'.'tQ񄌆4!w`vq\axh> X[X6*{R` ,w%F_a:_~a,jziE$n[>zQqG)¨ buMr8Yaa<-8 T𞓭ygGh)<(JAXk4-qu9q3$a n*Hٿ{pPk}ٲT?v"#IHh5d ]1 A?C-]s09Fȩdr 0,ʃa&^q8W!x%tcD첁2g0^OJ$\[ANqWkoOE9P*Џώ ǓEafc`da^oGn'EX 72 IKЫzWü率R2eA~abZ y^G]Z K%tj|pnh; wUݴe+Իa>Q_Lmirrex7x+Z䬆 jGn >"#:XФ$g` KX6lbsV(D *|o) u`-8B%lW6\|yJm:B rɝkدMب_QW\KPy&ei_=ΛC D&W:?N]+30M:_+YA)Y d.<< =zJ<הH]Hձ69yz m=Y9d$h < ܉֋ AI\q޷C(-,;.|`nd X3jA] 5YJ<^3)kehz ;`+%X_Yz88=Ky\xDlLGx}oJ)kYqu`@`wʘHIt)TsF Qo3Z$Of7|ފPl<$"CA &4-mn(>AJ"!PgVZEK +X݂ q QvǗ1xNM+&?wBJu?ʱxdM/{]Idz˓n.t3er_$]x]_=}F´fu~3r<[MCr}iڙ=MQ/ä֠O tU%sI:Q:پPMGdBZaF/}[lJb>HB/ ajnGDɩCx`hȟ}8jXp+e4. Bυ,h,Fb 0DYeί-GǘBǜ+c< %U%M΢K 9Jf@3?+Q);E<OxCUbbu8yTu^ d* B3=9ø'@k9b`ӽ(]Pю j;ԽK5ȧsB3_"әļqf hM0I/&]-C|qt#>Lcy 1CW}V#1řwc"X^[A1E- ׶\4HC3”%fǐ 4LAQO.$D oWa |`ѬVj|XA[!|J;Gcgecv{B 3M a7}ܣ!J//#4&ph<,H2 )zUv+T>! $ y$^Vt7yW0ИhiǸfZb\ &h33-6DL8USADuప.K Fh?R'*Aب1v/<-VGp1=Nz/읁Ω.ADWFv8uh'2'Q6)߄YйU|ڠ=Әfce Ń?'oTWFG m$v7=Ix6_xXv\ #wS4>o#(/Vݓc nHM8ek&فrV ~wJ02R"pi*^BY85،:  e{spt3 j ^W+(44`-e{fC3>ъ{QڬіRH7R^%9ʾŚt]'҄+Tfs@*Sa<P5bqXzg 9:M*,gzg|Xmh,'/YbKt}:CqTahm:iZ´D$>oš&i5ot_Q;&,JܪvZ@]37v8Er7%WvÃmT ;VUfV%yM%zF&Z"r#7oIlf(͚ pAKv b-)sjD4-9eؓ޶M h7ewE@±t臚㇖' m$@hTQ,/fpz\kgp wCI)RKϫ7wŔRt4QOGq丞EQjC1)zFJjbݹbX?,U4ۋBz{G6EbI\"&WE3R3 pm\7Qok>$ x)0NΆ)TkKo| HMĶ4x 8jW79q7$ כUMuVx!(hqz俀yu>`}WEGs?S>yNO͈&|}aPTY QLˆWĨ~|ЊufL Lt]aS71BԃSpA} P{޿K@@!JP{n Y|Aɿg_,US 3>7uyw5e3=hVX=g\ e݃([=ap*/ PIPgČ. &azpVye@9Ǯ-~*uwK@[pmJM(*gNIW)22 +pMRA`lVb^oN Lh:.Gz;Aߌx4:,t2il˻շ|3$H9΍cNFX(މWڃzs2[_iy "iiܮpƳ q]SïVAEVg]րFwV(Ƨ`!g_̟(\V(3 8Kl10(-ߩBQ 'N=O* W%|ANԵtudW+b2) f!KoIw孧v r7A Xiם}_rݚ`yC:,AH#nqUdmn}E,9͡K+o8}JS֕ '8R1'3>Z0u.&ߙ#WaCPդK_:n4ӈIwT7#05G Hh\'ߌ֠$U[}'M|t09/ ^~Iп q" ?GZwrÖYM(J5l.;X- \/3#<8KD @iyl},b&Ë]AaP,UKPqC y5cWT:;?$w _IOqlnފju5Է^0IA~_kd-Orӷo#'% BUM70f!DN.e`1f_x! ^VcWR}?M:럮ԖIxdzDL#d#Kj|1%5I+}m'}SlzNׅxDF,?zaP3W<6KvшD󓁓{0Z&`%9'e/:pErz1)DjiV%ތBo3(Q:,,GcܷT60l I DnJTwbBG2u94SY0<0f`4-;80B / Xw_J`xGeQ]xel@̕izSp0iJ|(5XUᙚMhx8|@Ya8)_FvNsz{ˬ4~ !2/HRG˞W;UL{lKxVm0g&EP&sG+qiGߔf}/_<8g*SؕWΔO+'y ižZzֲq7}YFhˍj˕Ч*iETh_ ]V:1Q!Yh7~\"exp{OA#EQv3=nEs6?jbSpE6JґCl.V"zTξd_ >",\CmE8ʈTяc?D kߡg V xfKq̑}woMsB]8:r;{OQ;Kܻ9xF!M%6 TP4(ihFr_lɓWKb-i^Hq9كl,`?mLgEJ>x@\t(1q < MCR"l!~DW+#~;)Jv>љPǏs}}0zoUYh'0epOaFAGʿ,"XBNEw6^uPaKBʁYppϵUc\'}"E>8N+Ԍdw e/&~皗1W$^V0Π공>+pJ-b?{fNrbXx8S[~li]'59`W&z,]#j\1"hHjCo1+4#ulƉw,eR XvjuVl -7vFN?dg Ydta(X*=xR3 !dH0?v4dv M&Ĭ9,OSNV_Q;b׫eU(艰U( s4g,/b0cƁo4H&xu>Fjf}~Y sӇ9X_Sv5YbVn;ը0x[FYkTXS֣JraB x0y`dNIf<uȏK8&EoP>6Fq4$䂠Bymn颞:$e{}"zi/jjv( E,$U,kC߯AjϾDNdS>R}6at;K9?Fvj Ƣ"CB5 7".4Ns1hfC.'bŚW; Av/ P[KyWxis#Q(ЩT7-6$l1H*.ᑇZc^yvoO= T<1@sa=3X5/,8cObGgz5X,8y,7>庠#۟vȖQ'K8x2ֲ3S A EQ)Ckp:@@ n|"ER]nt9bC@à#VXa؊Pd Mr22VsTFyKqy70 ,@y6"+!menw#VKasـ$JLv(Hݶ Rtޝ5c s߷  ex$F@т"̱ݗrJ 25E=CEF!{mȶDI2UlDF,x:P޸EB=pOxd@Ï"C $#T1?kT-9lY0uX3nR~TYBk̀EqNf4'n$[tN}*:d_gρdprk\yJ`vY^b x8U#86dUR8Ɣc>f?㿰֎!C0pM W("R Qcu)3j.bLb9: Г2G'mbGig# E@O0lIm֎I_F(3;? l~\5( oKXPƓ[O2'?q^6U0#=/ &DIOf )WtnaxXW%6Pwr,Ii vڅޙ9Z8LҎ˿܁,d=ݛ6 >=7KZ^Ι`Td= `ʹ%61nI.&,!*qKٙ0G~ ?*0J춭t :;]zO,%ѓK{ft9/X<ԺkMRtN 婪 gO̸8 JMJH UYyzތE@F:6pHRsOUz?rL*C.Ī=#.1fK?ұW[Tx=C@YUCEH'h"=eyɡL Wm4_pnm76w@!!tg1&Kcޚ, w\ZӘAV_;΍A {ɲ4oUmP~t˧;%t%nl踶Ma(23]ՋNiQإ:Q=`&Fu 2qU 7нŁ3^`W3/gnޝ)|:2qz̉lHIj>#] fH$R?iFA 6ϰ73)1]7&.zJfOB4q&n1ê]41Ev˻γ) )Y0 *(<bn}EI+33 rSZA:U\gQ5lʮ|p wj0 fr`^k s'I5|lvTG B\`=@&!D| ttV.2죕gE4!;Qw)Vk,ʂGtZ"(X T[FM4lh *vhޑj@;?sSILKK_0m+L7<"󗘄T&˨ݚ~.E:Y= ;p̖اܴ ~e|5+lnWY.\XR"/ ?o"J\چsmHTw(KS\Ȑ] 1pI83` YK滢qJk4e srQk1~x&SJ*q7}5ZaD<F~ 7ooev5W_s*6" !C-\J_΋{dҡ.t t:YLwޘˍ52:\B<5.8]4.cYzAbDÿt:+Qa-EQpU_.!n;Bwÿ1™أK>Cykﱚs/3EkZi#H[P$Ph9V2"+JEctJ%r- z'D faLЩַlym{/mZk+hWm@| )0kI9$XytG(gD]~ݝl\*P ;?<PyUΖj )\#Nx>tt*:OIaECRܙw ì9߇R7@T@{X(=Sd+V5} ȭk}ڏzؿz2.t^ꀛqm0i#pzfvlG,Ѧ)(u/DkD{ e>EcP᫔͵cn]YxYYz7) 14`gu6d0zF"["_XotxoZlyPOͺ3s[L2 }dwQ8х7 $UHL$i:!>#_s/N vÈxFrpgIؽoisI+xi&]'aCp!# F8PZ8w($wˠ@4oT?0E O迴Ǫ舨V E 'W@S8`s&[a%bVW~Q>Ҋ`ԁJM>T JИ;)Uǧ.ϼaBMM$DIx1ez 5FLA}>m钴˝U/E}V8 c.ͭ8JUI>>4%eڳ+-Z[7~h ZoPB"kaB%?*BrWOldOBaw }xW#_zGP5l B:]$4w|UloS¨W>""'zzjwsyO)DxKcYYɧz + +c$_nʆ@'KyQK'|N|eEK #_'}_c > $\Eر+;TUBDYFђeڄ.P,Q;C⻪@gs GW`1Uk?*Ҏ95yEcD{`x"R3d\й Š2oeDWŁfڄ %Y>Z(~i]]8o5qOik(xD̞ ]U[w:MNf{^Z ZRzqy$g$$7}4[}Ww;NEbUTɠrh !fGyFX BJ:'x2yД{"rx߀si[ nԢ;C /pf€|5pyh׿m)ezѠil]~ɔ\S(q<p|{x'7ڠF4c?5*?Hsޢ%4ap_S^*EY‹l?+gb.v+RZSkgnZǶ3waa5X;rF{{ޔ6'nˣ8qb40zrE*]!#$ F"_j`CWK3%:_Q7.X[t D+AntSS2#GhZ[> <H+|$=rfk,yoϵf;<"3p9PCjWy0p[>ksW"D" OpC~6a+A1?Mג ÂFa ]Ffw>[yϓч>yBz-b|nN E42֫1IZ"3I_c ;Fv  #NʥF`!+Hi3ӫTF^@MFZr<&< Na&lcz+\-ZFZ{Rqhdպe>:Q";Oj=6R}Nu[o %bLiGT 8p+|rIsg-AFt1V5Bh -rK5I*#Q$$pyR] Xrp:> Z_L`:2*Y:gY!R^`ϥ?Z#]%GOL2gUc0j=6XvTe#^{JtHE4w~:ߧP!]:ؤfav&\ngp7>\tƮvkE`sy 5`}Q=c܎) CbSOd+fTkv} 7klpY29|XAcrL1{x/eaOf-F'}I_@5@D E0ֈb-cplŒ8KcmӾ-Jd d jɤwj Oe#. O1s1|CXcE!wj -3ZJ'Z:E~<ߚ{Zsym`xf&EnrMh "F㙨ҒxaM 5wZqp|̧ú%!C4J8^Qm1Cڛ>+):Ul*mo /W~U[–u8CeCk䷑%%v|ަ+\0; s6O2 0߫n 23FPNvfǡ9ED& &)f^-V0 8nݺԴoC2K'L=$ [z?)6F8iM%*b=c)#4.,-kSY"j]sPʉ1q q%GqEj&ڲtbmT8!Qh{x[hW(H"!|kh@q%uԏt:CjF :U%ֶi#`Y&\,a& 9X/Ƶ6и} v̄ۢ1#\c*  }Mj& -Igz="|y;LCVDfWޥt&;gv WbKn`ALvEalD%6zjǣaKşdf,|HdC ~ocW*.N?T7켩 MUIIu.ޔ")ꋲ:óEܥZ#zAF%6>8` cr?/99"4=ӊskGʎEfvF#?БGQU~u>U^bhNC8VqHB!rh9 OO)YS~=*BwG4 ,|1yYК.e\tВ܏KojX/;=}ǥQMšgAPl7{_x"8}P9{7)X;r8J1mΐ>!`܄I~y;pxyWejsQӐ e[B_o{$9~Fz[;u%;Q^١<,ҮrZGkRɱ`X;J5M2FPRDlwK,B@oԪhRM=LÆQkf7JzirssFNٟIaA[N< p #;":A͗f/iuyKTg-7HsjO+E,;}8:]U VB[֚v\fӘFG1KD}Jѽ{>Il3`Dޫ`͛@Ԙ|1y&`:pUݍrJ(a`7f~y x`l;TocQS@f7FZ0[qY@CB425%+ )˧KC E)b7eVccW-ńfB2(TeϏ":ajns=LM.O4\ &cU-D4w_' {\q[zm!a _n<ؖbZQ>#YͲ|kpPͥRC}Ce{x0md l0~0mv =>veԽnϼ ^K [vf`Zʋ 6,gDcF:IqÐths5+Td/΀Ƙo67؝<;43ã #U20ZUN*7A1 !L_#!I4C[K"L{{zʵ?>á;T_!L69nEAT=`ߩc._jsbͳݴ)Ǟ^njBJ ~[ԟVPd @2~@PB`b$00  䅚[k~[UexU$OQ5fe]/f]+T*B]#Fo-g4O8k}-V7d{2kئlmq>+ZQ`&* E,XTɂA ]I6fu(+&KTor9S'(dYOLcTѤJ(kiy N2,;N0;DmQ~C+ª*8ESCxC8NlDS#h6u tYB:`@)ޠNA:=֡#`H@VJejޕ'=1 oM"+S#Tz!_\~zch(]r#a}[2u [Y)41-NB( O+XvL})$ QVd~L(4 ]OSU7vxZ^$ۓi.xa >aX=yQvkr!ߟ6;~fF Z1yVק46\o]T!Ij m*$L.]4-BV6;0_V5!=]"8Iph-|0Le-i^АUBTv@4)k7|>)=p}J>)Ծ}UFf٧y&K^|#^Hm"ҍGc%PW ;*y`#,A2;vC/( Ӧ?>bvrJ.c1G$KQ h]oݞmF_6GqV{2嬓,7(do2ok38w.y%BۜT[U_찀"(4Ⲛ<5Ro!}Zmmdy!`^(V†m(Kosl|'~B7T 8:]~%nGGUҠ+)0!mN9Q%W "ꝍאǗc9S!) u$!NIC 6줪Wu!a'*Y4X0_˂ptsR8ZQ 6kM[kwgWʵ.ȁdZ`)}ӕ`6HIbB# 8DNvUU#:M8!f#B><^͂RS/xAW{yKRtocb9`=ΰ6 'X6y(Nu[? D~v^_%[D& 2Z*-0Hv/;'%ԁNa.-*QY!CVpZ4* +L%ȇޔ|X6/obm#@V)Vb㮼Ap9Q仅E%+|Pњ6\H띵g>x =wMk u1gLd39)[؊h%1CE|#{M;P/)Lr&o  Omo߫oy:E }J5"8Q\-~5^ѐ Lc6`/P}vpo9:힤 rs= J*llyFk V 7Qk%;'rϼs6'g&]*FP䏨{-ZY; 7kBb_{OƬfO=KBCng.h;`TSd餾;|# Vh"mԧg%۞? Om^S##O?)xH%r~+6A y VIgoGm0Bd= f8,;gnP]YMh1j@?o{-*!LtV!翚#{, n۪:_jJjɩhVJ ͎?Mrg0 #.Ȼ[ ^}-%2 yccW9m8J]9gƛU:/'4!N%,0OM1 %CdD=5}Ӡisy{: pl U}IXRGwf02, #ێ^`^!-m̘f#Z'ՖmɃv8HsߏUΖ[}XdyZ8sHjx/B:b=p 6(0?-wS Xߌ|u۩{>%zWrazsD(R[h- 6 ^!h9:C#dfClC㸜}   aj11•k{xZ<U>zg ~u VjˇPXMIFm\~}f)~D>P-Ѧ5uE-bĐWD2BR*G%)Dv5?FAC[7ة;}tc}FOAI>4&ѳ/Y'b~stDo\)+_+Դ~8fX,MZ,99Uˏ##FD֘2lM<7 nmI8KD_.%GC#=+@LK\4 ^E$@4e_ܙ|ʓ=/j֭ BCuȧcn .ʬ#>aϥMҴ; sL). H#]5W נ>Mtb61&aL8Գf*@:$fL0RXi5znW^4-w8HZ 7B3&kw6jD'iiB CjSp =x.p;#*vmi#GS^f 2VCY/1RweHp>1޾(Lb DYMΎV%if" /a(&<. K#I/Cڙ (C^{TzߔI GO^Wjܚ*#.6ف )%saTOD4bVޢϛt3:̊$G.pf̛5m;9İ^Ft]DD_2=MuO$Z.eύF1-.71ҡ_Rrs".wl iLtw@jYz8+;#|;Q"}=/P`.M._N- beuws^DDHabrgY=R!cj(A;u}z?i0 LRB8c;vʹ\C:<3B0JNbOm#/5%1<8,b|k]݇n[Pl-nʬy0 dbǿ=f{T}AlH$0 ywS~l v ?W82 pE Rح*>:]5%*dbJ.ƿP*@-ݟ}nhI))ܾUp玒UtDCN<.g:<%`fWlc3S 凊Q}a>~{s"|kPy%mfJa/ yǜZA| @! |=3D)aQX p/EMȸ.v8̦G`j ׭h&HVwHY="}Aـ5wV^ڢt\GAZ,]2idzyXmQ4|N4U#5L yLcQE|J@eAK6{WˬڊDir8d~j?h;D,y>FpbM8hż󱻖jBHN@eߚ1+Ea6c}\#@Vy<9-@cʜc6lZDFΆbƜ ^2ATE?z*9׭0+9e2LS(i >gb[ ah+_ݧ^"W7>֩%r W;7gzb3vvV /K1DQKD8y>s?&1yThuy?Ki[e{)H$72ޫqFM Ѝ褵~L GWD4A %az@0j!;S5%ƌelHTӥ*b7 Ց#d0)u |n%lc&Q2T>>RvFȵ-wc&,1w9=pOMu0nj}^J҈͉? ,ߔ]QZjI+8mo2Ԉv?Gx{0x%?kVYSA?k@ȾXURQ_|.hT8az/Q1"E,B/as܋&=I@Qp`+:R.X 'rPɘ+u;h#SK^_)iG>@cf`>{W|.yɩl&P%7Rm2VhB$K& >fx/,Xxc- F(]gx$ 4CԪ"tSb2šG¶KȒ}R18 gyxᐁczSD`="|Ŭ >m`9%h]ziyəqC"XQt%JqV1:ۈ7):I< !>x+ˠ:we![feCqZ 7[Lc;2 8C[`/Pm"g>~W&xTC6xb(+BQ; Y>O搢{ϕ:1|+7RБ D1rATX|>/t0OWY0` 2 WX>As C4[EE.)Qշasg\(ԯXode פ4N⭾F3Hծ0|c4hes.j hc?VDټ΍욯x(YGۑZ%MT?F(]攩PT=Ba;\pJOR)z!CP`—I(lu$$yYFi+.ijd)\0l(ҳ1.Ԃ\gpRNN߈GT TD. SQ3>?\A|O &4@7VP"15mU\z{%o~d=UtT(E&^O_:̔k4.ZaS:mĒSˉ Uw\:sB)>CTWQUDd=,\帬T.{/S&`Rj_Kgqv?#ը a?UHke6 QX qk`ݧpnyyc݊ʺ儥opuqUMA'RĠ_pr i̢Kfe]i"Ieg ɁL##mihr?3D jF!;4*m5Ry(1H,CgDANֳ6}f(H1\o . LH^ZeclU+PZvhN*Ka@{MZhNz;zj.7R*W=as"WȰ_S=eCyՓSr. Q pnZ,%o4 #}`V|AGQJ;JS&T~NC 0goNK W \O`'槰qIxp0yhot%KWZ]xQ2F~sBk}c޾Zl`+GY~ >wŌiKPg WNL2S'ZLR@@ f;CJQ" ֖ߗ`&]u} DdH}a!6zES/>0sa'c*Km\-J*>|ALa-5]WO`Ed^hc<о>|vkO62]6=gE >VVV8K ?C 2R6L'"Ʃ'5уD9';Z"zc:ڽ2:+/aãW -- L؍\vDA.! >@ OkEBN`4m/V]=k4KL+RKU(l-R``ZM1 zvX=X}T:^ > b(cD9rZRQ3p=5 .Q( P2 =CTMU6Oы ߉}S߬`+C7-Y+NĤ28p9si8T9睛EM=6>/nx.o4.td w('s~UzSSsk\F\L<+E*o6.$y. 8}#fB+eNNffXh,!ٱ[iJYѸ2ޚ?Kab- c Lcr ~mdL=޳&1ݢ _*QY6՚qO6;"lӅb ,dX?67.#`?h_CJoObo~" ^ u= 3.K?' r9q)*YWz+ LcT5 Sxk*fbSdk[,]M%Sg%MoY,;oy3~T!34/)sCS)΅Ģ Jh7)h,'#hb3j?*A'+z%zQ9n`+Ĥvd|X7QmShw,яsRYC= ^{F;`qdhhznUw7!+wގyPN"'0@2 q?V^}\%S)q/ ͪ9-'# {H?Su"pjmQARLrI!<3nu>TG=D&WfM\98 s7RivJ*!8b* "Fo70 팥#P|211عYԞ:Αͣ y,o6duTK>k -Q ZHOd_ւzD!h(XϷK}~,??a-t4/HfR~zìr*}DǶ'2KC 愸R9ޜRÞ@xud'G'H 0ho1$k"DJm~פ-0>E :%МH8٤{n$R(1%@d#En4n>X ֪ L;.+\Oi"IؖEƋLwggd`7Qgˆſt?6;◠)?YKa!7Bp 9k9-bpߝma JefsZZxVrx㦂³0ܧ(Hy#*Pͻ9}=* p /lຼb~{L a_Q #YzjL]@ u&Uw#Eؚ$6}#+c_)> $ ("G|ʓ0DJ!:Ǖ3N1p'k 1WPynO̞PŔٻ{uԥkٚRJ7ݮ|&Xf@6Wo:"-a}Sc=űt1eu'Ts:il DfMpy &rb|Fo3[:0я;\;p߫9ڹ .YSDiEڨPt0$K"%z1 Od @eΙal(51nbHcº2k~dp A`Ҕb'Қ_Be|r'Wr~ j/|54n=S]qys!OwC1gG7o*o-r mN۷&'[~C!c418X(z D `dQH:,w{Xdmc"e("T3ӳUlՙ?=חHFG\r .k.#KOpf?{3O-g!?*P cGGS"k![򚀖$ʨcuV 0ܢL mnKR7mA;q=@=Ȅ5p80WvP1+<-:*F<95 3E,BH'- e:=LP.-sa]*Upbۆ Es(#QE"]^cYnKpV^FHSΜ.衯/6o܃(,|Zr/+J9[\1IU%Rf[eVSؼ vBJ9h䝴hQ3s]iG[:MJlp{H)+){{_N@= !O)~H#fmlifD |LݡG+3x3hq K[riq~l]DhQ :8-ay3@nAl[ݲQjP0ekdkb = 挸{)XLffH>tHdh_C=܋ [wGޟn6Izs%To@t\*2."z,WK4/0PL!Ndm}gs&.^uc!JmqAY:$MZ4*O؄g^@-[B*A7%{G9E*h 04r&&˱;̘>\|PD{J4}9$n#̉CWKHt2"лy=ڥs<և˦'O#e1WJ梷:ʤ6F=OpCHVX%BS$rɹl a:d(!K+,n@߆+_D V V4w|brOoq`ո.kQ~]B4t.03kY#!V#[]4C|F~eϼ>5?!͘Hb|h c͊ƹ4<Ř$ O e/36rϹz\+owa} ,N)7Zmc]_aHBj!kH@30/JK "85ԬeFRUBOq+g#+SAnriS;:Ŧ1 ~=4]w|kIPAh`7V &Y1U),ٶÏ,B{Yn (ީ}a P[ﶭQ>\!%Axd6?=P%փw ^XkeTB)^ f$TZmT(El\SiBe5 ȝ1SLj0̖#+hK5 ̀V hRsJ09AHCW"C#qY@,}`:*c%l*^඀ee|3c}B繪NV[uSJ|OXroT1*>fH9UR[5Q[!I%P:+kl£$0~V^^)|Wgk9ҵxrYiŷJ?YAK!zM_D&TaⵉMG9$&B4@4d1]as9|da޵}'(MM"la՛u]^J e]79oYg8:Z+w3QlӦsrra*4-s-2ayI Ke'}@9Y 9`7Wh>DŽ\.1'7P:'DKnk ?8I->SA? oxkj5B"H<?A!{/X,7H`+,8M#DO&$]$90iy!Hr\p\`82Q6a#85U=^Q$B0d` U!"OHOli^2Wi|r67:ȩG%$޳ہ~( STZ&{F_Cy y'Hz냞aƯO`#'SMenYD"ƦLwβ'^ gPWPg̡G5Q5Xo(3E39ֳ}$nci4KT.+aUS,Oj6uko^Ćc12×D Е"p4 WSr #(Y~H47M__pqgbmlWۼ50 _@y7oNo~bnQXt642_3q;.{ >IBh[keJ~@" tH8D5fv"ઌf<ѧZ(⺗<"ġ~C:̥~ !{Ft~th*"b\}Yus}zx<Mֱo iLKsTiDZyU} )TM=nk'b5v'si`Cέ숹MﶓzB7}6YtR@Y\1NДpGg_岟'KSnBAFRs0C cg JQ"~1`vGqZ8)}b' m7ef?Ρv>5hk.zYADPWm<)3wZ,P\nﲄ@[9DOWq\`cݔZ攏S\XʿeH |H#]y+'R h;ùY%/a/6|PQ2oZtU©ҊHE 16FL l㋷C+%qӦu=A@`o XsdD;`v5Z@yyL0T. u|2* Uv߉io&u/T\7Yz-/%2d[XkKnWz@+#)3>S*$ê{8V1 z^6 ?zGԧP*GN֙8Vaϱ)=[Ǵ P]~ Mi0մQtaWy83*[ 3y's"[8`:pM;4,=w.cxbPΆ3š[JDRFqVHw [ITYϓw @Uɜy/}?U2i@=1x"wDܔV-ʿ T 7fjh ,-쭽3Tq| e)n:Im&?PX=jn_x Ҕ(DB>t3fad]ǖ%k_o7[JVi9.K fubڈVMzGl&icTnnp@ihFZջiG@LH/_>+v8ha@\ 9;z9 ꦩ:vum=BzӋvM,VO&ETsHpjUjx$u)Q/⨸{yhmwapzx[˲Y`!t)x V=UIUkR"!{kTg7R `{yqS-*%n| o]PO/Fq`"@0te)j%%W \՝wD YquT>ΑC' kJ`h]nI>țW//k-l1=;e@6'#}wm/w'XUXV*s K#R:с7-Ax){f*ii/ue۪b4/%)GȯG`rD,_bw'^|i,PWdH[,-!!hqf:|؜ppTv*҉Y@lj0` q˖*uym4c\tb2ksk^Q;8Ϧ0wI<[ste vY% 1떸$F~cv=( y3bRΈbq-%.;J;?(?[d@ڨ<=&!5m3/UrJ]8(A^z$WBb=.Fc|7&MU^ߖ˥U#7~!OsGG,T ibෙŃl}v_OMMHQ%!QP"H/#*̰y".`VTBSfL8p@rߺ)hI^f\w6|O2j{:!4x5DSuS9)qЌ#`z ӽ;E3Mi laǠؔas91wFfy3`'Ճv$'6cq/k#NP۩x'cqj"d?\YWìfc@Tq|Đ?>qKEs wXu:8O9WfЎH3Do1 Bd[jaW!yndztn'11tRQ]6{+if69߭TuҷOJ86R>Cϻ^S4xwJDuYٛ)uWXԎ㘄/ԑpzC QJՒ*hv0Ġ:Ԉ8h⋎Cef+Jw>r([Y# D29{ލ3g>k;Yj@ZJW ;kpxLҐXTZu3+|T3i5@zSG/ Ϫx"U3mE:&8 y) Q8MxcǴZrwXor<3j!Ǒ;[|@c2u9؋9crdJr̈́M8sfjU9X. :D=*11+np.M*Q>I3dMr+N^ qؽ|f<,؇F"'(AH4inC }h%(vNl}ZA+pc-AcU[ &ڬ xYZd8(h-P"Z2[.hӔ E@Fo[#`Pd_P!eCɥ[ 7M4_$95bhYK`iOO,_0S`ypxg+S{*D*vDm?-y^Ux ˒\*߄~Vt+jV_CJSDwؓ߰@)B.: <931wu70ExV$=/  W/ cTC^ؗ )t*ܨ XShS3(S&20 :ǓpP0կCJrh' ݕ5pi~#B1հEE0 T yZpΓKbnso+>^dv#5Sp qf97Bp8 0VW?pb!-D'8fgs5N,ȴ)ڝCL" 8Qΐ-WIۏAydWK3 uך;al>sJySaB<:ܟoljpcsMU;A&GU׍;'MZ(X+YPL Bh»AI7w(XCpe458Y^WiKaK;(],,$F  Zj:JZp^b3h8zrIa=%ЄN.6Qd "qʅȾ:z $) Rg-Kc2;}6“OPq>".!['}][yb4kǥhhCLG+$P9s:hDV!Tv+ۺc*2}?jv,a>w,=(h3~{WO0G B(OXӔWiUq7Ac@lf_>3ϱ`MU:D)>W0u(׏P{EK;8l$vXX~6# ,F6dQ<9R~&CfU| )z`(VC M;4$N ,q1 TSgG~ˣC=iݣFIb'Je1Moe!+;J#C8VOV+GU](~혠^Nf \+;E˘ 'xe ǻJ/9nbՁa;I A$xPۓ_dW%Sdc&XnA^&.PӚxt-˺#ŐPaR"3mvA -^rA Iں'Y6ֲ hhDK~cf-Tnjxu"u]Bg:WTtjFzkuMT҄+td\9%1[gB<$$/'==ګjK*G_XKy d6N.HCľi)Eul:0'E`g .Λ,&^[iQىOŨcJd <`>TD qHKdYI]HXC;>*0/91E0#nvkY`~֒|Նɇ}t*2?7,hEF}wRe8J>G%麉P^j*n2א>2ax8MJel6#IjSt1sKt,CѾ3L]Ww, X@N&h F>9~[=ϥVQ'Bxˑ Y` ʉWC[|(LsBш${sEzxNBRуi[ {NU?S<E:S߬0,I! wR|JL ætN' 4rO{%F@[M*j'+!-PS'5ȫf O,NK[aqվw^ܒa*؄gr^\ CYgpK>}nO5XIՄddt*CJuz1#Sy?۹Ef|Ċ2oMi;H^U$Yt)*/};.^V9k|Tһ ?nÈa߁<ԩ[O GbBzOӤG0vr~ġt7MTTk/+65oy'uOk@ETZDVЛ(u&,?s!'6?b>No=yѠe"qP vRAw}˯\aɗgr$-+H| ~K,g78ǐgioɬPBKo#*W $'oJ0I?eYh֠0_7J-wAį- {?λj2SȻ@SawY`AtsjrtwY@Q5v>D0,!b- ʼdMg|@WFHkxiE V"4";4_;_6EнJЋ= Xl^:) w<|E\CsC];X#Cݤ=ڠA*cYMCC؟(w6pN uT<_J,yb,r5/,Ԙ20 H;ɿM{cº_* Iaٓ++FClQ%eV+q&>L8xVِ \?1\ _}?0ҦÒ,`IL |J(ˋPČ&g:55 &1MFFDžy~k̚69 pxgɺeFIzYrτ%F^@acRd+φ(>7 _YG1yPl5r륎֞.h7L2TJ࣐O$ E3 5kIag*MJNCH1>.驷}R RzW|"OpCB8̊bWST;YR#*,1XYBABM&;v^\O HᤣMyPE.|p&d,D9 HrU\S]$P=S6Tǽak\rBn*>~G߫aؤ6Fpo߂Ru: {X{e3/;n̍l"CIcM?oX@AEJŀ& O䎥@a(?-Sv\JMA @/ 2'YtVsUy={~| hd gyH4 De{twxvօ x蓼ybaKGq&k7Ih迼Jw?Y?J>YB=U&^$u00nj~sY+]q¤i^<q/$S;X$l,)*mx(bF9 tǢwȸ}VvR;g:VL" oH2@.pMQ9!@0?/ՁsyY/5ϵu %|Jj&z?dLw8=D ZuEťhxcg@UiKz T=:dW|<7{hLk5ݟg5IkИ$0bΘYmˈU xi;V 8ݏ14uyo88e z. ޽vu( @ [RM Qqeɔe0a`5ĬUXƁ~Wia,GG?B1_R!;~7I1j<`# 4`/zM^LX`;6hocV BUV+>Υ&T9I/B-RDhN02+//*qIL5ś0 P5ّewPϷeUyc8TnyK%+ѐ"G1 6M|\+xouH:҄P)1gnMU~Bc3lv X!GC"-UѽeT<,tsk,<%:;DMx3FW׀pc=TN85h38(eq*ja=kf$BsXVi`c8Ca;oKheM,wyI_}| LUSo\_2 fFg& )yx %LjLu)'Jt Jw q7eF5،5 Xs.Uztqclٮ~GU< [" *.r*SG: Q ;wSDy<(p[t mCk 8slkq3+Cpl(ƏqJV;$=^蓚su'b Qm;g-pҜkx]ASm[]}a~W o&yjoT;Z*a䪑6tLf{o o^ng Wncx rb1K@sI=:IDթ)Ɣ)@Ay T&6;%Rkިh4=: K_=q{+WoZP̲+f$-Q0 Uy1 莥@bUnȂЗy"H(pp Hw)cI1,% ƾW΁b\fceQs)￀ Ѿ[[̭*i6pEE2.|clfϰ0fɞwvˣGza~paO!8|Cj"Fٞ@saC 9ٟ"V9aCM 焉)};"H[o%ɦnSTLa$8lAS?AwylVM&zO5ժhU?(PtMx3}*x}+duoGIRjF1@lRtMyg8c42A .$GG "9)4RLMмSV@m` ch+dz&U]YMzD^4 Q߷-1i)vM)x& D!}[V_< qH,'ό>m=M0+ymE'2T/IA:X9*:,=l34uy9>PDAt!!ms?@dR 1d4>ֺ˄Y`U%8qe3吇aY6;<'>cϖ>OXjl=Zo,`JU w1Q(2=<uVԄ<3M1 D>\vɼ "u\~:6}m b?OY'+D 3r|=5۪p' cp EC!XG PzO^o9N FlD"˧mS\Du,NAl3wŐ6p8ς9%\>phiVW"bxa fWyV=|J3ӐNK22J܀zK[!q;,x'ES7 ]XM<$#q'x(W5 pLeGv*iK, Y/Ƿa5Y\s(̤%.1E*$+k4l:FCxH~Y+~,{քB';fiyمpfb*TC7'^M/Feb{֩R(+cTy9^O:ks7pX{Bjj GYXѫh|n`:扙V1W2љEE9.|X]jwr˳/z)2.kTMUXc5%D`&K@ WbeP%-S$YUGJs'ԸBo\nگF WEW0t~>řb}}{>}hQqNsO rtsih;xٗW2eOj$KChv Uә nwfˏkOd>u`uhCr N3}?8,ncMI??[M`P4UV'c xV$0+7TL33Mˢ `f{B7/85-c 2l^ʃ[qGAp"M86Q"\^^3ǦvENbE% ".*`ջ {Kk9E{ISU( e_߷&Tγ֦-fEt0k2z%,&6L"%VwF2xxn,^\O~+0tIs/2JeMpfm˚eK td{-,%ggYfqĄO M}]$k|>ѽauSD0%s7M;T& )}g, 5ڃOiA״[$ HLkl6hcIpw֜138 $ZC_ C?6 ㌿Υp[,S d{1ץrii=~c8ƒhׇrTVhRz1&(FY2 ϽKn,#+ n4rd"$5ċ d"yP(I^^͌Ϩqt қwE(]SS|ߑzLFbOhs1 $s} %vy#vmu-B7\nO<(v&i&S)Ii(g؅2װ:l;@@(*(KDSJ)o&G ,0bPE6=#%9 M˗%%8'6>2@2Y@OwoMG[ejxqWm}\"Z#y]yFÜ( SY룕`OR_ƃ'] ֋r~K?!/)s!gR-gq0Q,O{om*:?\bfMf{Y+I "G%0~@%4T%ٳ@ߣi n=& Bkg˶١-]Ѧ?ø Mbfm <6rc"W+hQxP\UCV>8~m$amxdÎ:"#r_wm9T oxW1 wF8i? PHbt|Y0p4Q tt}) |FJ N2L%7sUG0Ǣ@<}lN(]~]i=j{qs氷-iHn5Zln|swH3٣-jot-[|i+ ޟɕog8ԝXYեq^Z;4TaRJLkȁS~:{z]}k#Xabߊ ;3 VqPy3 в&c/x[T&#]24o/3~ى iY)r'MfQr/?_e$˵.6['xY+^eO³,o*G_}7 Ha>@? rʚZ+1 r¿J飖 6lQq=P(r\)*sBĮZVԘL}#XV1yj,)*|f8 ~KpF`>1'@/P[M劳[1PXNaZfp9H!uǹV26ڒFzZ=cX;ng2obVP|8,3]1Z/X[=VkjsWKm 5XQ#\m^ a0h󮹶GoW_A q^sr`Û;@\&J8;!gpq>ݻ"FMUFz ׾] D<9hVm4߂,𑴃M6vRWz4-KlJ$0I}x[4A*~c[-X5tB( O%lF{9js|-Ԟz2aZ{6*fx7^Yc3RUjPsed%=jwf}︵Y}7t̠cq64tOz!DFc?t q*?->jF5 'E1#Ur`#$_䗦wP@O9wgR1\zj aėKCY<{Ig1a'K?Yt+[M}Bb+)9xԴ>y*k[_|tg HHPۼbw^.zE8N*Z})RTKpB 7/o xHd8BϹd=Ĵ:΃mP (2C x_Uqtncy1~YD/\믏bh̍bނbYSS{#p '_UR:PՌL[fYCO>ZpxZKJvqo\YӹRsuB1A1t^~#A#qq}|Qq t^Tm?wX`nQs_~LD]k^ k^bWkoچOl`K'j&+:e֒AU,@dZEd\iB-"b.}HٕCYt&*:̓Txzw(R) Шx ¼Fn63El8dt^IYa^ [G'zLDu{1vz g'c2]"y!l*!w4@A*u9I&`KAKFQ Z\a8(0_>:œtt`(_:J1ÅƵdؔE?Zd&G/{<%5g>OVfNtݮm#B;ȘOlW>ڔ+=L6udA{+tu']_VV*[sfn1neΔDjp(..=Vf|b?B$ oq|NPB;p !vw` %iESoɮ*py4P%WW&@ָ<$}䇅NNz)%1d.Ν}W<E}O<]z ,NGydFf=6?2>3=@0b`:+\Ի=y'SXq&=UTokKf4 x"Pfpp/TSrvSfUDɜ0DR [L"'e*Zoǃ`iI` VK*"IF B9b<^t0i!S$z4V J,G`i@sI'qJV0Q@yc/csdM0n*ʤ'Hٱ05Fl9k1$4%N3=U h~ae6™48-RÖKo)^u2PH6W<+h gA%) Q-b?vx,[s`OqIn7qP?ܳ>1ȈfU TC0B}+p,(oL{!nr)FEWe2 ip? s)5/Dw0?Y&15FHjrj) iJO 4^R# Qk v< $\TJ6 m-ɷQ^k~}72MEd E;0?#@7'.7렮rvRN6ePRA:OT1)AF:t5ʐ#.`NԳR?b=YhпM"՝+ۖ2y׸ s94Vug4lV%*1ul"aP^s 5*s jToI dH#J1ZKCw34ӯ.YtjW)f?గ$#8c tDGk3Sb2]UN|lQ 25T@q2[z jjQk`3Oa 4OCF4EBHוm4 Ree|PYvC_P_-KIIּh͈6ŲF|AF=C=A;w^w( C}z6CH\ OM g>噆->Vja 'ghE㩮[bMޓ .^xHr}w`>S"ez 5\Q!2x 龗eAnaЊim$mY)ST`8bXD$3.6Ux'S8`IGi'+I2|}W9^mEZbTyet 86{^CH2|p{*N Mʙ6>M ?N$$)^&|>{'߰Ж*fxV! GQ=(`BAlkvK٢V:Ds lQsQ=nhh;ĴL }D00ϸ1Tg?v1K;Sͪ~cEZ?MG-@,.h.l#~W/8艺"qǑsEck8T5LPCP? \"Sssd- `Hi,Hّ<^iw OTȸǵSc S"i#&pO~Bgl`"|k\zQ-q@#Ɯ^]^9l]KboRJrػ~/V 4A JP jBr̗,;/+o:ڐl`˻Ba5QJv1@SW @0">eؖ ?by5`z(4:\f x6ؿ/L%vhC%Voru^lY9: FFԞ-?<̻'W7*4}{nXS ?  '" ^`O޸Oqp^ Ὤќ,~-+})r t{s9/&O(5w(-֫kv 8/h"g+Kᖙc'ըh#tjv#F.HV '4xul:J&YμjeWiZ*p?-Xu=n3d]w w֯E}npcʗ'.1@ ?0vPJI>0Cw58ȋf9?Dj](̷EXYߑE*,2lG1K\t #XdBA-Qitfmds_Zr qa#y2֐~*,կT㏥ y `Q;3ur<2nYOK?q8ȥ<}S1ھ"cD?X0vZkYqļ LZb)}g 3lі`1݋X~,Jw-)r~'L+&($#FJi~sС9^H`0]~ӾoڞVUKVqz_ci%#TnxAW_Nc,i#]<|}J=<- #0͈6m>'˒1w[Mc!& ^kg}ՁYꗎ)Hv=scu=Pf5iO9B ڛEFLe/Di_gr=@i@ؔSSW\`ǧvW#s%]kڎE-K}@vެ'E%E |%6lK(;'ȃHӑc,,g~lUt4\f͈'"mvj4 ~6Enc@mt#ݏ^2ӛ8Ip5.nQnJϾbGagS_H>A+:N$S`gz8H'YBoi2q"2mk$J GW~ ZkstВۃ/i^'$HI-dWmr*ULa_)JvҲC0X#CkGl[Y52CY~|Q% pTz.E"'?Sok um^DSeIˎ3,!q(EM ߢ%wdq$=3^_?KNhwO`@cu0D~ jotdc[u%?-h&M>+~",A)J}8O1KAl٩du'|l%b.״8V c. oUȴ㑔 R܉ti)P4ݿpK]Gw=U@jSyMQT4<^+%AS;Гʴ*P9ȏFňLA͈ƈ)^ҿr޴&DsǟyjJ ?oi9K .%|sk'\y`I/n(HcaU??]]n쓆UOKLcp`ٍ[`!6v;d"@udy.U Xnc)'SNfeם??2[E-z`J\]UgՋ{z<qw>ed"ǰߟM%H@Y7Ϲ 83Ԛ۝\K A StM Q6kXwgBʶ OXUk5~li'Z5F&vAOLfb m9ӈ^YN t͆ 'B;._Rbc+p6W=&;HiQ|f[h(0=^1@e 7ل0ĩk5-5e_Ap8Ařr+!r9$Љ9>LDg8r|㒂:b߽66{Ԍ"Ӏ̍:SR]#Pm~W%g5_BVI#M"tnMcn1ے`4)%jHBTh!5晨v{ ߼DLA^#ki }@fR/g22mo*;u'qNA]3 "酄NK똓駷1UXn3# -΁Vr]}=R U@mΈ `,2e{fFt |QTWwxЇA˫i% ί'̒k`?MQ|' M\ >FӖw;t|bi+JI~̫7y=SJǟZRz_#ůķcr*z p;?@* A"e(K9O6XU P04AR٣ʘfӣ.qopO[vIl>!I#ekdx]_̽Df >hpǍt*iw#KHHվ(F~%c ܎'jvtSѣbxt%)F۫ xPg_)){*C+^VIQ7}A`n΁oU z]|&s*"=ܞ8092Szb 95윩qV*X첔6b(Kuo)ܓc1ξT7C4)R!f5/rViYDJd*dΚ[YKtFd:\~Rڳths5\w YtȒ-Ha[((76%YsZ,r1~lkO]Di4} "U &n! 9W7[°m;o1ZJ6“5.I Ƭ [RH6D5o-. o3< -FcI}S}ٽ>ɰ(3<:ď6+[&_}okN `o>9yެ<ɪBy;&:@g?xg0G<6?`!C '# :ˠy@"Af>T@6_gILoGjH^AJP& I<:l-\'I1 K-6)XjuZ2.<~Eǵ"VdB0gȺ~aԉ3;[ZCo \ S 5bi4muQ쟤csW. ""#Ẻ}p)>]P<{jgb-mzoCʂjف0(ֻnFȧk3޾'e Uܗ9vZ q2Mo09~ɴǪoC$g7eMfH%GtM1,3ok.̓?tԩTs"[ %PϚ?~v<5Z$h&üKCxih0&uȉhySß}S2mU:IKx^z{bne`:M b+WtL!7t\}u To?O;o11(j-Ǥzv_#6sF35&ַ:"w'H+E3KKyO -WX.7ȝ{3E36Y -7/e9Z;uLTMw#*.#q9@AЅr=fbj G6 PJ{y\-f32à>YЯYnC2'Y{l.R $9[{"O7=#bΉ;Hk "cMWw,|pЇMbZVdΈ ::CoR J/62{6OL$옼X? LƄ \E=] Z c?#:pc5IHv@YCD8R\Hz͕QVC3 -g>~"E8F??TưcnxVN⼉sZ.2?f2a-l ˛z(SȚKa9ˣ9ٱ&z/hSi ߲AE=#(;GSױ,4?z~0]ddKjy.m0RE(&Ϫ\6GJ@"CqΓCQ:hP Eτ=F󤥄ė9:;ۄDq":,Yc(g%U۪G"W*H('#;PNz'ѓy1ʭCd%Ad(,iZe7u(Sa(/0Qޣ) ?^bљ%nY2N 3euǬෆI|ӓLv:S|nCX0eHh/-^i+A #|#}4_aq&nk#?(aжQ Vn> Ɇ\tbޓv`C,9!AS((Gcx zHp9ϤsZP?!`KVP֖xՀizR jfjpvԅ1+e{.!; ]?a$p^JfQ1pNאaa|[Ưqn e`;uy{ঢ়eZV?." "Dsv]fЮ#+ vҬԃq;Zg_IXwtH}G^iFmЍ)M8RUD2~v\ڗ [N,7)dF ;(sUQ9"ɫ?x(4A9 [?j k*n9lC.VN-,NK^qfؙ3WEwD酒)t^r@oX( V\(X=VEѦ3̱;)KU4V]5 kϯ CU'L~(|'!Z16X]߳|FB 3tخ^GbVtJ" HFxPK[D{Bzj8%8VpUB控-Ci6Uv+hprKk9 Cp/\?Qwo&J!9F#QV8XѪ_=fe1:,Do< .J9ڒ~N {p0"SS?*k*:V_xeIvUt _\ 7̃.y~56?M D*nJ}ek)şIjٺu߼Qrh,yBhG@+I,D(mWm1cnP'3q|l}3l }gC)LB{~o|tznXzuJ ZCع졵jm[zA8#\JӀpPO=ָ U8m?UOvp2ЃZN1^&7Ay^覵?EoVf80L\5uӍ8'lQ@y0 jg@CD5/:v"9p4Wddn \` ;͜nwEާP, a!1(y w% Yl'h'mݪՒJK$(utdRgFD<|m4JbڻRcwQYHM`>{cPdeFq:r)e,= %*2ɰ}ߔ?|URg>[C~C苤t%RWUchq=# c6 Ѡ$gV J A4=#~yH󱢁֋$apM~'dUq.T#naXOczjb1u%1J›B ]FYrܠm/ZJп"jҳ둑բ5Mg{%:e?l]dGgfň6f]<,Vv H q@gzAg>$ F@"ci/.fҷdX B$;Uv#'R$7]~q5S r\~k! 0 ʉtw?mCs_!*.)-8Չ'fSMe&S_B'u?="e}n?Dd+t3k #G[5OMWw>'=Rp۹H?:!]sgU8[Gn'Xzb1lj; kU'ZC4$!ƲTK`"d`% p`ABB'3k*ؚqDnWdLΐfpu||Q2MBcOkRQUN0 Wa@F E<<>0g%_#5;+8TW][)|Lup.V`4.^˼"0=>any4D38 ˗u:`T!V)Irx'*y 7V)m/PN7is桜e\Ny]!l"=D)ȃCydCᑽ'́Ǫu%z)#i; {P AqA FzPrncǎG;]lRz;%w~)Yp?tVׄ{CJm:bdmZCPlXFoߴiZ)ܫP'aӹe9|1" 3ߖdywm<[򌴱 3(WH+#XPY' up**>[o^·Vd.Rkc>r'^Vy40 QsǞN lqp쩢K#Tx: h 4Ykϟu~Rڻ%qB/$ٱϭtM( [w\Ym |tm}t8LQ_@AVi3JDڶv ) ;NA,l zN ]3}x ^`- *ەs*ktם /}EJ[5Hc.YnL6dG¶?IY2\?Q?7h] 8Kg%j%uF<3%F<ㅏ.ge:: wn!*do2h7VE3F=vՍ `׼sK6y0GH7uWz P-iP#=2?Yߎ1|_,=,GdE־(aGbzfXz)#fZQr͞(CnMU)rf!}mH *fem%խ8Fe-C% X%]*?vX˞8nؙhnw5mo~Xª?tfwKNN `Mzq%\ z>lRq~7$wQxѱ[ /_&,@l_fdvl5 $nmSkO"S%t̥@8xU/#$ 4֥"l܃|2Xs3?~ u_\wks%F:8#F_,ͳ-?;D&.a"V\z8" m3 ZD@w8?[q/nc`u(HqG׎N#@STrWNtX2] b˚'w:OtV}” S6##zLl)۳BrWU"1s5Z햹Qp Ur7+^^Zo12ZejHdVIurhp$+щXPWnй@aHU2g>`]wZؘoGb>ֱdm6q~SyWS:])E3p௰*0| @α?$1|(**3C" S; E7>],yW1J\|#7PܷvQO_|Pj!,r#1F#uv(@k4 D(`v1B.!Άx2嗀s;Θi*̯c4ɵz7nYVl|2eѰzO-NHl| 9a?;W7%ù|-FAԟ⠛-\F.|#tZW˫\5aem4)AO +Amqs ? B+읢o*zzT'(TH }TKo=X?(2&t5KAC c,YO [&_N*_ Ts2b/3J} QCjV#/(Ynl)ZAE3)ϣ3Lph@( ۊ)2xCCj~_%Jk.C8}Z UpP1'j] ZLPw &6v%T|'"X40,Aq N^bY8S=!˒Ix@\"[bGgУ$//uɁՁPAAc/C\5k$٫J9t՞[IҠX=ng7zDH> -vGa*k41ńq깅&J@I>DqL ~ƘI*]O\KX}DYUNv | }JJМu)=d;rr_V$Bzdϖ[Vy4k*"5gx'hJ1X2+HgF&%X"AP61/X<| ]?rn•mK~ly9R}fٻEĀfTzG$["hyL$J&7%{VAoC0تyj'=Lꭀe1SK\RgI}n$~m݆6Wgj;-\"-wNB;%;5e$3:KЁfg6IF "s j],!o.zD4pܱx_OtRYK^N.8 򎱺0bϿ);QӼ`?Z{Ǥ `'qF+&Vt6Z$bxm_qPcD @Ooi5Ԕi@XѰU =, n&S`Y4l;;'+ęiwX4/׸HeDPX+ެfdnJ`dO5/mB4>r TXko"1] ~3FT\}0ӻ~By?ʼn|SڔS{^ .l(Q<%c8(gkZsq5n"HZ Wɒh1Csٕ RЂ!PamFî[i V #>HJ,cE8I+EǮ0%]HFRĵS:kz8Zp7 9|xRƱj= P;=ew} =čzmY~̱ԯ܈zޑXE"^\?ЛuY 䊩mLS_W1v"rZEo8 ,~<\yQ2]@ɸC||S|-- a7 5\,\=YZItxLP^EƐ}={o‚_U{I,-̪@y3UR@F6rp녹rٵ{նKMj!I|bS|tSǩoH# g5^_|fN8L' j⪋)ϯp|)Q*~2܀\2c`|.mE=ieH*3-M\࿿;aTC+HcQMogu"mk۽ċBАk/s0ytJU/rIY!'f'B^84ߍs'v\t k&3v'nQ9Onf'fsPƚgCQ_ {*MJRK" @<Ǥ0LnvZJ ZuHjП<cq]_h00wP]@~, Y G|̉sϭވQ*sA=juÙ7@K^ܥ-[(=!Qӫar2)9D rx0NO n!;?cqx@ruA JldɍҌ|5ixVɡ'%iVf3RvI l@7+eѧ7$onFӃL>4mF l0Wh"j)J?3y%8Hѕi 2{.7 "e~\61pW^ SHhn9#h4~6y U6uY1@)9Տ^$IFu`2kؒ Lڝ SZ󖘓q`GyikX2Gx4.9ɪpPW.KҨo_/͊B-ώƾ׵WliP3>4sϱ [1l!UX\"~$ѰI[!w:#|+'\Wnx@Vg~ ᷗF?<`H7v+ؑA,]xSL$!; B6l؀GE *]-chcsjix`Cwýd2⤨h)bց|q8R6Lbʳ|]iK~?)] >#}cIbCmp eΝiQe .k?.N"qw5`r 5 liCX֮XRRw!^pR3}opD|m~Q){ѱlJ'ԧ§nRr p\U(# ~ll" F7h[ ߅' }ʌN'W,gdރҍ7z!) Nt8Q\)xPc?ZKk K^z>P9)ca9o,dR_6W6rLcrZ0(!ҕ)u?΁u. Ivҗ$yjvYP X3߲=bh)TC8--C+a4Jψ'wiH;Y05%,Wh>!k"z 07嫛chi9õL@ྒྷ $Dm&1qDpDDᗪsP*Me8z!merbҮ+VoE1&. #B Ƚ/ ߒ9YɆM갬;O=,sۀxO ),G nrݪ@1c&j Q\k :y,Ma^`a60+Ia  L[,-4y=Ab*6RL ¶6ƴ@v1LH d&6B>u=tiPwf"a`*SĀ9k8Ҝsk*RWP2nK' *D%]ۨ׉d#ƥsJuG ɰhQl)"ZBtBICc)H/Aa$v*2<{R+<5K%9teWJҸp3ũHLȀ 5je0_|@%Mӡԭ۸S!Um̻S䳩? Scb6{T8+Ù"3_bi4z [_&W@-K4ej P^6_ iPDs+֒ VC"&i W`F9Gp57y7VJ1{|ZJ.fXƚVfNtݲjej{ڌR^L"BxiĥZ!yzxKQtQ9r BUw9i,bTnt%gDxoɓC K< ج H%V dy$njnHKu<=%xhEkMC,r"ٶt$z{ټة EiJ5|~1[`;V  /%QҠzv ,պ P3~F#v~ 4ZOz'`nIԠ> >M!J]Q[0 t`n‚AbiY4f6YTj.*5q/@9挄(8aW߳i$)/3Dx}ڛ),,,0crYeqB3^4 -:zi,P^RI8o'#UP%u?bي&^6xCݦDž:^T#ۡR0|,Ǒ.75^S5,*;;c"~1٥2aKaUˊ/0q%3*4ٸ y ѭIiIc1<+ZljUxUNIeF4eLk00ciUWa6<a@`%Ӯl E4u;qXesx=BM4;25fr#nQW{+ùht\g(W0Veіg12=CKGܫ*~G=U~/zʎy3[KH,QXߖ0LR^g\v* M(xg+DZmwMA1nԙuƋAXkF5ɲl'۞5T 7rƶ?T V6 d*/鯸E`OA5[* qF K[f ;l[BYLoNR 95߳ŎU)-j.RWw #o1ONsm_u0 M ߶yWs /.UR jO4v*̒ CCe˖P{W](Z}Tytag }E-`l;M j"ɆsoDDh2o+d8x  [/+0nk跱ѷS[_~c]cXa-4 sϵ:k߿R׃tp`&A*7wŭUiqsZA\IRWnVVSg#C]đ-ȦQ5;0ʾ" F7ӃnxЛ`?XKHK饮x^vCنtScI;tSkH♱KixBn:e,*|2c|Ϙ܁BOc3^<'`M6(=^:gؠ$궫 Y!\r,9>烯cϕFcAS5ވ'`SԜ:F:+ NG7S;:fz"R1p-#Eoy W6Js9y*5wI]lrC~DQ?P9ȭ2q.=~TK^ >r詐#rkN,6 Ozk NaJ=UqF$0%ao[&4䷢5ݨ:t,U.<7у"OAtQVɩ}qJy\t\zB a BcS%ؙDĖI{KX}`;8ht GjJܩV|!a w˭9Kx K.l/!H䢔P%ۦc ?(H@I#6#*6).(*m@Q^MN ϕZx|l8NMb*0;0hZiSrG(%u;̠Yv/AY"E4Ƈ*ڃeGƶB_Y9ѸfzqZRY+Znz_3wzs͞P&:IQv@kh^뺴PWBQ i_9>V bRS{g=q`C70`O@0@&>4(>x8rn}B2d5}hE(< @Em7||7XfI2C9+ޞ>Y*aqg!*m0tU:/"2 3r9KR,kASly`$C<[-J"pkW^%4 QH5 5`SG/2c+i@>gRN5i~Mg$?#og'hk#t%6oG@ }&ih:͒xŢ ^ 潉p"WuFg`20vR& KS$,!L6Жm^ ( ݯ6!u{s+md[Lc`X-rCKM0Rjk5Zs< *1mb TlNNĭ`aX; (oܲ-l{Jޛ.wxHΧMeN9R{qF[F#e6qr0^<׾<rEzwiHewA/"bGzX<9^1ϒV(/[ pٹՂ84kΑ>Ĉ2M*cY"`潗c5&Ϻ@;砿(t7):R}B܊_؎ڌ(^QX[ds厼MCf$ GpSBotm jN?)7?͝&W4f"da3 >K2֬xZʺ s,|` w!Շ6M-79$\AIfnNHWY93o% _h9 c5J_^37 ~1/3Fc猪w{lg*G2y ָ/aZP,Iw[)!nJ/ HxK(ޘ]n|퀅b3\?A^-VD)lee0_ })YW$ P'P}ȸn+c`ߋKSE/(:BF[tA_sAܺ`q#z#ś_4n'|JT1YhEvB]"x7%yN#_km]׈0%͝ifg͎:0 s=s o )[ĉ,X§JclK,6wOEm.SBwW@-} 5jeM}o= 3N1]V1^oQcp-{FUiq%ԄEJidS ߀ },k!uUb_\)4 #\J}}'0+{ G}"ͮ>@:rfP;ArG_X Bpg~7eCZxR7q$qTh?OT /zw@LzٞϺLH9KUO1$]k!n{Qтj@QPÇR[/ttC&W(4{[xE{L7| ;WI_4Y:x98*. Ed6T:my8V5N̐`E:6 t( FC?kd_]iؖӌn7=#->gECZ'aLmp.+ &/&>:dq[fjGꯟIOc `{P'cw6܂$Wt" _Hu׎AeBOD8UH'%3Fͧs (SƗr,ňm3|#ФciҌjÁh`l&m0W{l*(8K<_F-pQpdQ[ÌmZPJ`6<^4䝁$NjJY;<n1>]/x#H=2Jʩ%t)V)FTGp, p!4ڞ~ @=5+k5 ;= gQ "/B){TACYNad)7rLK?ːk0Q \?O" U|&-O}SR2`ζ>NZ!ئdaڲ?}(1)dhu|Ӹ6d[NLاk6 Q/׭X H?XZI=ƮO7Lc(E|J0'4k69{Q67=$*Y[68d~Fžך}:,{i QDtrҽmA mF|7k[$Rr`}:N_0$$gI""C7'YjȇLoOʥ qrW\M,D h3a$l}Nsףdx%`#xlA#]x 1fLM xE;=-ٚoMH`b;0]7G ύLL/Vp.;=Mϕi='Z[rj¢v&w}3V(I2$!Q-Z<zok:auDM؍"XHJo+N^*$D7fH?zD0~_ݙxP%)~nY}ݰ]L~BL6y^%Ȑr{|Hv-+[OmO90aS#"Y zaSHQIP~ՐT<|^ۡgNtR{v%(6 g:0CJ--*nʁuS8ڂ)Y6ivɒ>!!R2: 8cO dDZy o\X !^Nಟ  ahǬMRwQ>+ٲC],ѥ#pG*06`ԽE%,%w5 O0]qZX(XZؑw8Lw0bt3yMOF ]MЖY29ld:5aZ2X}:?F'{S|'AP3D/b[[~R1\9(-̊S!t#;1ّWYN+-r\X(kK M2kߥ2K;nk^lM]/L$-u' S\\?~ UDdy1?=ێbnGJ0fvI r[f&uwE9ÙR-ȶj9 P6x,l2P-o I*'h8oeXq?qYN]Ũsܸ +0_>3MOrDVBy23xU(QXӳչwqO(jY䕒X{epc?>?1GuPnZ~6ɜ?qސ#SQ:]ݭ"hЌ*Н-za %\~siZ5ꕉJ8h֊VmKJfl۾qt60 sN (f٣ t:PٟS yn Vl8l!tEYmȓEO(AXv9N ɢ=_il |ŮvQslOCfEvGdW7*4^*ݱIy d{CF =Gu;R)Ǐt;XV ϔPxdja$[bzϝFx,tr"$JN}viWL12v-?0>.mi`EIUD3:SХӘE`3w8^zQwn/CcZE`ʪ:CL`w߉K,bkւC X N@D*yA#S A+7&K.D:JkB ChK1KJ*;Py46 UA4`M_<3sړ|֍jkML$> &Csƺ+@ޭz Izi@NfeHf]l dݝftjORYE3gUqkľwF;$Ys;Ԇ9kXy!;M/TD r䧔p}X_O蜘1^Zword ԭA"0+Vw jp, ""f&_mlѻլCߩ+4$HĖO;ḑ̞|R4!9%Y6T ý|PrO0u26iّynI} GMϺVJց~T.bم<ֲA@ct#!#7fHÅrަgr'm ֣'fJ;7Z&mväI{*๵_˰ 9,J뀂.=ݪxxHԔ0}2DJx]MJ{#Vv)_A.1L" >-+cվlM"EPktTz7)]Qyl&t]Y2بRQ_$-ܼ`y2Nvޥ.w˖$y,p|(vӯf=fjX(@/s<ѝߨjꖦD(pSOhψ1298jKRiqEFIgT4Ct>ݘ>tWܰP]rf?Bw]`qmq$YqgZe tłx燖k pY˚r>Ýؗheg3^;4rH|Xi/}Qg"o@V Af$r+3us[ss她'y%Zs{UV/w,I[sj\?b¢4Jl4wyZ;V<32*W6UsFʟ؝~< Ҍ3\:+?zE?*Z=$\?͟jë٦ _ r,> 3|4Ө7TsbbBQfW67||;]'s# )|d~dS6(i\zBUP,w$xp@qL4EZ d|WU.wuskxg ֔{f4o׵.!8>{!ljc;H؀m}ӇX׎0.P!=pȔ6QfT!NwqɼV0QrkvԫtY89%Kg"ivk!* jU"CT$񬭂fE&HlʦAt{a1=4:nOy5Ib ^N,Q,3 Pe(PbțʯT&2GsqEhMWtHKuqߗCYt [fرÉU`_8& XI'9pMANȤ~+i`sOpAyi?{deH4_TŰa3aTeaA#<ƝHFkVx3lb$)O7˻h0;jPE$iϕ$-FB0oz8D䟝0cZ4`lj%hcn\D"CUh!#41T7_>EXxW) %j{7/lU֞L[C39#7 M3 fQUJk9¢ɣR!cXR^ e%^eh8 n=bja>yKZ4u@%c.yո2B3f8xЩY@ ,!M H 8`po(ط=T#!jg rUr4PJ;~D>[.3EZJ$z3HL{41c'G\!C0+xIiD9YZQsMo-c1⇈<,[UDsadR%+J8>'`Gr T}zS騬~Ҹ?2?@NW, YVF* 8MT`&MxI+T^Qf" hqAEzc5Ae J< "Pg@p$Zx+uiC c_a>ד\V{U661$JX^X l0;y%.6 uwR)!"ׁl]a/}" -uhZ iek \ySxsLsˊ 7Y-n$3- x OP*QKIHB7Zկ7&LUxT8-Lg=FW{>'Bz ŵ~ɶ_t@ݍ}<`:J}8 l]\-G"ԃdZ޷Wj0{k#f%9u՛ftQS&Rel j2~#,ro0*8ڋ*;TоPmȲi7,WáҋGEB/Yn"r[ZuYl'8]Vmv 2|ۘ BöΎE\g~l)a䱌Wo$׌u68}E=t^ *jQ429szgQ= A5ptjrqs"uY~I4؀]g" gBD! ` _F|)Z.YdiٗCyG3n.p"%x)GAc?gQ|>7Os;2/yrT5Ҋ=ͪpMPq"YZs@a?:+WŮH?Zj''a<5&\f-Ers` morxyCEguç].08*+E T1'VOoӽ49dSޖxBf(%- h;)iBDwrUnꎾ{T!2 #,݌OXe2RZj6Y@&Z80J*c3`@Ee7rf!H*i}dphT&>seFGG)RD2v/j ~Zr&6$g4/n/VChDe^bʕ0&(En؜"<&l1 ZfԌU~%Ep=(y"xƥN o_]__V+'w|EP +%;N$9$:>^Z#/4pY-#(.e(@_٩>& ͬ4FY9ӛ] Uu%OuPp if&GmB%aܛ]+"ڡA|.mIB)y~&B)O|$(mf/cfF>^:9U!ATAjԯ}PMsbp41WX*5gNŻ>$@@owǵuwcuΔ7!-IJQùD3Jl}5:x?3ޱh"w A! 瀉wZ{ZA >-9fBPը}ZY@֜^w*M58rwE3+ki)qИ'5{-i~MP#y=sYs^b1ȮW$4EKOIvAr Hc08 DT B\Sj\ <<V}٨jkR~L mTdx"`']EWikZ H)S1$b١22f|92GLq;p'!u<MtV. H}5pAx,[*TȄ4=!t*mѾtXC^R FL K@U27=Dٜk9)J8=된asHGN{pQ˛FsF=9 r%o+2DFEGů? jHS}g ZV?z(ץRʼnۣx~+ BӚDQ9Wv)0u7Lyw6P- wv |=8Y P;<|l;nƫ{o? $2hb< yݭ֪n7Z~!qtHE0N^(k'Y8ެ`F^q^og$ yE-Nz`d= ;d\yφ>FQǼ/[2eý\f-Wa(^ÀU $vN0V1w zXǡ&\QFjz$>YuMp_]Dt*]5r &{䗾S } cK!>J2Qr~I7d THEDs$4'f;Ź7?5H̳ZLFE4`w]업g) Owu Dā64fE%T_@Y`ܔE+$ 0]6Lk[9&Me]tc2j5y%r!j$|˧w6$ew5A+MKF) Y^zNF$H4.KIָ|%"b,Ro~I%gE_?ZKf&Ε.AX?9-= B3b+())C9xs2Lk)UUgyr[}1y/ّ_q{T)L^Z~3Kf 2/6K{-PϩIoUbݳW\.Qc\CDF.{%oaj i,[L/9Ipʻ=TO_+RwZƺ3PCru:Μ#̋z*H=@-ٶn(?g%DqQlƯ0*/tc (Yfg^2c=T'<7ʼǎQ}cUւ%YiPؤ9qžcbe( 2 'PHs~&vOÕ>b-p',д HS͹nOés\?>ҕbݨեsK)uS $/. b̐ )kplB(t!q+֓M2{+q.BԐ0E׾H`O<Lel 6 }0oY# .o ‡M\#?8 a> ЙcoUTL[aVY3MqMbKm)&[ K|,N#Kq'zeψLjj˶K燝]74^@++b820_ _'פYEWHe`& Jhy@9(vr:˗I.TAq(P_;d\aq!oqx6>SoBQEE1 ^bhΨP̨tHGy1.'u5țH95<[+P 3tK$5 {H2^yxBӲ1)RB j6 p{GlOˊPo6QN&8**sc*Eء}Uabڴ( uQ#V4m?E=zoV]@|M4槼sck,K4>1ee7/s<@^aaRhbPu&i˺E@qH-qVch7rv",iY^ KϰyT-S2-8î_+7Y ٲ#isNWBeHϺ$赁 ZvՊ-&lȌsa 6s~}E}/5i~̓jKi#0;: ^aJ \iŅr5)4/~8xC4y7Ig}`N?XKVUE1ʲ^{bOCiG@ban/4$H^PW=U:v(@6>=*.\x^?àԘ&3)cH ƑxHigR7ӝ$Fg*\xq8Ҕ&GG6p#PpZ1gP&>xV8Wޙ ]\6uߚRdd;Fhd}&M`f4 Ehrbu|?9rŀ*B03=l;W@9̇9;7Ps@Đ '9U-4+~AC;*qtvj(|Z>UQռwf!>i]^9{S3 u*8e5 ɛc T}i-@B%gw݀Xkꫥf넮zd񁰻-%bw=7gܓz2Q&}鮇g&ɐ͵k%I5.~X')#FBq~G.Y,.Lj[6d+:3+ Ҏ!3&c/ )\oc^ Tot !8V_.xm渇޾)ٝs6%_JlF]?=qeRgKhr:Lޔ%vi 1 $G%$w5IU* 2a}OE UVIU!NЪ}gJ}J1[pXsya2o2B ,@.45o*vmzqY7)Ɏ*;OC`7S%t:lxR0qTE\}V! ՃSg7Hʊ ʽGz=l/q7uSIY9 zjHo)XM3z-o0jW4M ^ NRw)2R2-=éӃ&jTOơMos pҡAr|bxMD?QqǍ{,_yzwg>I"&pY3-s:z%ٳ o` ?t+ܖFƊF},L(/&60µ (&ȆUNx!"#w( UAfl KIz}J質R}vAt}aT@3̒V8H Q:Gd_OFېƎ8/W wzq͛}#V":{cm#K:P) IpCt+Y&.1OXmhBhj{(TzVcz": NҹۗI~cU-#WRH^Cܨj%1l^ KK%+,m,kx9xG),~`(0I<\;_[_X&5ozy%g@QՉVF+ntP.m4X~P*r% Fa0UgBrUKfBx_C43 1< ֟bvm$itexIG4Mn:e[IM%tۺwZ['@ggǬ&- L\V:U|z\G~^|T~u!Q4xMy5v%Hu2˭e+fT,7Uo-1*@A/:hYӡ y2F~1Ö!d 4F[߆p'g>ȫ8z%ߵX6l7T,ӟA0y{q0Űuj4>ldASjhk\q\uܽhV9 PaX'3ЏG,p;OaGk (8*b}Jץ.FP%yAe#.XS)AF[1Pa,"̟UNp {(:[L &H4QB&[:o~p7rL4Sv{u˪-F yYeɱ;b@V>c {84H!DogSm>R)P>6T:6[W6s=%o򱑽ܭJZ8aLn!%zqtunU5HKnx AU0e=\7iwQA*w a~9iϾ_oݎ!g QAv=κRc^ހgzAb7Sr Rx1a}_sT|4M /lN+/)T=4(dy }U>s$[<+j}Qz$S)НeZwL4"b]=-2 YHQMQW^3ZٴN=jL:Yk+DTʩ Kܽ   ~6ȓ|W@R衱9AWS?XI'~TQ8zN/)SգvxvGȄ3dMr3cΟ:q%Nzl.+~6S؃fꑲ9nTkIHDNj $G/OIIoG7A1mx5 ]ZY&6%O-V({u1@a^>iƘ7ІʹI2*–WM9~%Ѫ) se/Jѧ#hmlT:ĕiL8< <2`fV,čD8bb+ۑv:W k/CbLԸA'lhxzKd͛U~c\GM@iih4@.B_dEӆg5q5 =52uwYEEz\< 2ٶuX"y0V;IEϢW0R)-Boq?iݰU0? o_yyXr nw]bQcH^g*ʹ]2BpY eAj.0BBo#5R׋*k_߽ZsDQK.i +^h>2 v%ΎDUy(74t"9GQyCo;T)"E G8^ܔ#1`(׃]|m,xʘ'mxԬň~d+qFf{S>uB䪕Ր} }grhsV20^Entp]GlZ?CHYj]pIuʅ[FAsډt@T(%i|ky>baDCh.&cׁ%(ffm͈EPdf>{$nPIa= N.FO՚3k1F]{wC6^K| /djYB?۳/nX:CzǦbf7kc>C x\fӎv6.h~;cL:@z.lM9}X<_9t%rśY/}z#!BLaY%6pb$$]6lߪ\r4/^ܶQvORzl;<%h^[ՕI띯T֌8<& aˑfk1vPzIJ+ĮZFl(_*0\Rܦ';T@]9 kA;TmC*Y!хqI]p-Mwɞ7J"6fNا:A%M{7l}RBfN BpuhO Z9j.Ҙlb>bW<jU ^ݮbeA5e9X5r=A Fg}T hؖz.)Wƕc;UPe9Dc>>) sQ)4NgpwP Vq1bkRs3GNIl_V!֫7%4j5L.#:$͹ٱ8US$3tL=WX?&@4EBG9pdžgQƣx@AhhG:*!/\ZI?sMJHCyRDIz5_Zya@kHdw_>?v,pGG= [Yoݧsسuy w:&Oׁ#OR@, dKkBU )K+ɘПݞdH:q45iՄ:!:,SQ Y]ԫtcP]RSA T@>~yinngZhi0!t* ;,|>3(n dNb!e{OM׬xhzm7j S ixӭSGEͦ /6.X8̮me'`7MWwd)4πAU1[G2P={($ws)FgZg;mD:JZѳlω(I2e>6ZSwWcOoH*|Y_{ɐ)dmtϵɩnIfMfQ:@kC0l4.oI;b2;f#( Hg>ܺ#Xk<O}J3/NM"U;jgaXZ %c-'RvMjLq dbZ]obpnyy{߶[5aUV29n,`a)ۯ%xdMYEhń}ƻ0|fayu[Bo`&/}`)Touҕﳏr/{n*rET.Vs\v&!櫗b#|E9KaÙ6:/"pzJ`S.VUoYufRqYA!#kiԉNaוX huqSx HEPC,w,3Qe/0&'Z ]Ҹؽ|k뭵lda[+`DDhn{?ig&Lh%ju\o5м,ø+/7F0gFXئZBl+wsJDU+8U/pd1#VTj@gE+f4 eJna4cF/g]Ul3Tx̃2 Fu$L־ybBܵMj7ˢL.g7ߴ)y𷊔96 -ͩFY8,`zU)s =^SfAL]%gװ́Qt-zL1xUO] Mot=6! i{]S{H#J^,PQ;T4UAյk?w?( : |W'w>| ,:WUb T㭡NċV5?{rm7&Ո] B+mؗ693^m6NSOyscArC2O0k{?^}L1z7kXr4*Hb~|U`p?$(8NP^e' rQYU9H qB˾5>zXm$WSŎ6|TUQB&tx.s6BU}z;O `}iƛ >L,%'ϼ"3oSJT3nY,ȣEf}/ˮނj">wOf놋0_A5,v;`Ë݈΂6x ądx"6[3o04ͧtiCg2B2&q{dծ%<20ו}b1)2ӌe)yyJcY]'tM= T4IB6Yi=L}v[ r p9Ӵ ^ۇFBuݰh qm)Lc%*h5zx0*Ʊa8tpxDz gƏOnc|s*/\(#|{.?%I/ԉT~O~%q? tG r׃Pb.)Y.U@;if5*e,R<"vj= izK#liJtOy>ISա{ #sf8Iv1FU򣾢WQJyx2 eүJ*gv6H8es;,t~]{ݺC6iViia(¹~~rH$[ˠ} ʠ]gΛ7M2ιХU62zFl)`,FvG)b">;۵tS|؞|+.¿ >m=SIՊb!5揝 |!-%6I_'gu}_cT!>Fґ'|\ƭi멵V?kày'yU;.lb竣Ā엤3͆$=yA ş `%U$l -qɝyYiY-/?oyK^XnyEܥ`#LB\/ Gd.mNJtYGH@rĐ&Ac*.daFW)G+݄΍åGK{-^ k \˧DFr/ј %E,,m K=EgFY4ˎƖaGTSx.Qщ A?Jr )cG~dKE[!c$T&ڷ&ː1w7<@о3|YT|(6(^jL! L Ш! w$q*#.|ukSx_„, 28WLiV(Rq IiUԏC6hm( G}ml"KD=S&{MzLpF7= >ߟj1VHf&1:W;1u4oxl-)2+(ȽR2EǠ CE'嗕5A jŘ5jbg|tP@a6Z#~%,[&G\xر'+OkIFb9=à< QE{!Ѥ8e85M@^$Mƾ]f`#mgI9G #5J[FU !i?ܷ<3Q XjCڽ$GHx؟Ar=|3S eAƖ! EEh7( z5I{5Vj[> ZӜ뒑  BΕEjO2Lc$)$B45dt.cg+˞Bl%2dϡGl)}XN=/^OSG`vLti i$&w(Lsث4x,#xe;[“ڣW_BwIfpeM q}nL|aP*uE(oQ+v}5eE3Η7,yBI8}bdM#<7TfUS xSkw3[dz5*)ag6=#dMy*."pA9We/me7/<@#9N(Gdb_ x ͮ`@x&{jSxL38vx҃up` @j5,UDP1f[U:ѻ\¼:*|i_Q*/;g,|8lѕ}5}|c}NӲ2S t+:đJ$62sd~.'Y18#g"^ֻr-v3v¥NDp+\'FSiFӖt r^0~LJDxK c:-&\ls*Wb-U_9Y٥^>Z+ AE 5 %6z˟o/wM]>[6a-ʞ 46A8bj̄; +Lr&|610-1]9n?1D =[CeڿMHR+U/s[q6S,6AcN;)? |@C/.a-^X-dRIqY!N _% I4nKCw3JI+ w GOdS"(窶D{f sG"یl'ͼ!LYN~qI/rN3!5XPWFV:%X:aN,υ1n$nݾ_Q{g N07;"e# jp_4P 2fT1r!f+lo1҄1$&*55[]68?X K;&l mQ JxkT;Ы? 1Psv/S+vk}.%ayBqd!ozb&0߈ *P(0[}h <<i[A@*r4zϻN۟=dXYOHңjZe:vھe|1sWŠ2r+.6N z:L!vZo4_è?\Yq=vG|ma;ܦQԙ<:+CMYTw 0!6r;E10&=t ˌcŶǖ9Cft:UҾa+ܣ+ ioZz3*lF Cyż(*E'[r/e2K_D_ڣ4`9Z9G wp0#JR+w&8 A@B璙w_mecTܨ^8BO$` 3"&K#(+cZϼ:nmAYSV%(5uA\#Iܧ:=ɚՓbB#5h %DTJd[>/.I<qc8!Fޤӡ@3o&l@ZwZDgD><ȿE b)#L_ n%dc#;2}K8r9 ocj sHv!.V1NAxej 4axHc%BVPJ۰P9|Xz yPIdOb]l?0 uF[ &Ďl$8 >^V!mrR1mRDWQp/+θ.pߏR>6H"s&{ ԏ`kx}O( z񤲖[L_3@!pB_R S蔿} n@Te'MZ]넑W1w CRl[|?i='6&L-0$ګNi|l26kci…bpա&kb JR&j4eMQh, 6Apx o ^@le48S6 Fb6~G/ȼj9)Rphe^6ME7pyCӴxDe~lȱ 6䖹~$n,cOumr | K!9>M1c[_YqʶH_%-#<}cuňHAm!Eۓ>k8 ȫT7{K=-ZJ6N^UQ{U[x\ܛDc2.dzY`gWnx3,--!)o]˘&l ԳhȒOLWJCI.}~m煉 ^pm4S",2EiejxDS!Yt"G8ϝfenߠuZcTWyhUȒfUXPĸunǢxBC@v]wy,࠙S}Z\2 ]T/{~[aX.#Qǘxq& UMAݘ]doGJܤB vpujZ ߔibԗ:y%M~Qdi.k/-b$C@ϕU9)xZol@ܼ0^̅dv GM2跀j) ܩ#"$N㐊fhn΍q#hczRIr\Źu\'6omY`5+n82?,V&tҠù=78lBveӎמZANu:*2Vxr0 %RYt$;Ypߜ~!͔OIH ֆ1]'nzbPrr?eoރu&&rtbwI, Upa>zDԤՐQL޸Yٵ1ަEdY dQq G h_DzCb6m>9Q( ]_^`=T87UQ?)R$[#!#t= wJi߾5!#coF2,``t͏ $6˻Mv5HQ kWm>_\_ÅՏnV\Ve&r8TXخ|Bk0έ>un)L,+XsTϙ 0$W6Z6nQ&yEu!HDZtdmR{B\@ʱXC|3>}||G [0FُLɮzW퉐|?rypvgihol= CHkʨۙ2`WȐLdOv=UM=QXx o\ 3#xKb{7g,g+.p '{!WScEO Wd 6u??\;|lX:QeY9"1|_cSfm=~D[1tAl'NF_B:}K6A(Yy: dUZ@!o``Ŵ.N!@fd=ͣhQ)8NnVO>:uDn$-Rk~t/MNDf[hD" 7h5?}TX] BP qS$ Oo,XY[B]/HWutqv}|.&|Wձm*@/  T{KDgH>fH Dl%=.+(:Qnu Ѯo^^8ԇ_[}]aDM!A{aɌ Ԩ2b0LEkeVW( }#Эro&rGn|wV,"9)Tz ݟg֨cLf(Z:fl?f~qr[?3E4^zH$MB%Mi|i,17k6K-"J܈k|n{e[`4=JK:Ҥj% _SQ ЌSw8.j)m|\W-jT׉,Je㩓g#!Ep){j1Ўf>/Qk lL*?ШbHw5 9ۺZ@^zu@ :lxٺqQ?! aHpdv2S\i.cG<8BG&hdSj5(1k}=PCRyMj)fm$xr3ty(%H7q:s$,0RC8@ܬA;kSdta? Oӻ^ẌxK mWP(Ufbk\ҽI,7`΃l\t=llhBDls,P}\PxI2~Po# Q]J̷ۗ9?/^؆U?S$&:?lV=X.u߿@4?O!0E6䂺foLL?LX>XOdy<$SNR?E_Ea'Vwױ)NJlb|{ *#HΉܽ[z@ ߭ A_4ܾ}Bͤ\Sy/haLF?W8XXpj *N)5^]XO%Ⱦx#Er jX5fV2C3ÆXkEAS<ltɠު)K'w&چX% Y lUvB(_>X܊x8 v622%= ek1 ~H/*\vgd_[ۛ1@T ?} ,Ï>߽]g?4Ko5gav栓KNV1rlav5t͒ɠ{&O*wȔ+lXuDyPjBykS@Px^D5Ie!QUO국q2K UgT-^ \S|}۳jR/)6\><6Iaɤ\ĵ.5PB0űN`$k蚭cGÝa/A3 \4^oȠ 쭷OJ>&^ /-V|Ӣ] PZb'J(FJPtߣFKD"_@**ni\q\}JyY-u%_J#3QA"F6{al_S߉Cy|8P,hO+rC2i`t7SɀGw5ro[Rkug}}9YtG+LrX }eS߅d-QAK=0 Xby)z Ry`R.D,9g;w)YЬ N y Iπ\TF ]蠖\o7':pԗ9I>CQ)+'|L8p?{ w}qT6wvEv<^[\oD.3zI;br㎠{\buaXF.UV ٤'gԮTPtw}IqېSx_8&Kmm![r6;7nޕIg{ >K&}bتĵ V1Gh)$т)Qt?*6b—2Hg#Y(l%Tvesid1=Hs~(_hXG!+dߗ5|X]|̾KƤiCNBq."ŽL:ܵO:Z@yl7"DVZPդγs}5W`mOnU5a!7#ģ0;UR-z @-/k+0 C*?ўgBY}[tԡz PX~8BR+jVuafKcOչ! !EEFM/˭t/o}yy)>ޭ޶࢞aє8wqL<EO9.f"(LI2-wS( u"I|I?=fbb;&c^wMc w@=9\bx+oM@wFAO.9/ ʸ|KVLURu&=_[Ch\| `:i ̄NºG:Jq.Tݛ췍"Ĉ,: UqoC+q5ζsp$SVcK䵶_|*G sf<5 p]a&CG8a(RTL/4<%U9aPt~ j'ΏNMy($ଳi%W{>z:}iR'5PELjKt L2|_+6uYa?cg =ݐ9P}Q&u*`MVx%VܲF;81@kŋ',)A1C/|tF?Jܦuy> Eܡ. &9d7\2 $6ܒ=qF> PR,^t)eb6H{I0ںzs:&C +rŗPT'Gu'a\CoZ1CͲ2NN&2i_*skFeI-&w28O#:lˮ6M7Н+K+B0Tcz1`P DVo\9<Lnp!YUb19O5A9 v &gL2TGE&CB+̴*jA6h4Fv<`"!B6ң4y\ah%ӻ|i0:dKU@282p} Ҷ~}r- `?R*n  <-u.?*E J"o\Lߘ"P,cd|%!~9%녤TޭU]lS&RO?Ke*]&i^T" -jU'DQ^6D;nj }猃 N/tԐ5ud3od ;:8k7lnxEVɽuS~HAHk)Y5r쪳 {*G: k( HMNm? ~ٓԐys09QfV?+ 8cqv]ڣ$q >dߩ- .vgI0e/벜-\+6!4-pb}itaYVIU;ApgoddM 2įlX(zz,$/ x, 79<4Tfꭏ'mF,(k9ȃChǝXQmIC3 IȘ-|kEq 25R(6zQLVHV4Sh))6٢Z1)2Z҈@Mvz{/HG.VC5ꄕɰdck-nζ]_ N2;] ĭ;-zCs]p-?grا 2-+V=/t]PR / Z_y'cRb89 %-aBr↟r}sClֺ "]f]Le[p uy&FV I=a&wxXmws*wP1²Sg6 $Qz טf/OG2qR;J-"1WX92fi K,<3G$w&k: uN/3nޘ.dd ]RDM,I0&8T 悯 :]1{ü~)zB>:"L ,Bt՘71JfnJTPZ09w\J;p(ӚUσ޳&-%F?ΒAї!)\j7r!Ulnׅë~% D* ${9sXa{^}5StG;OP ד'8(4#-<ؤlB*TU` g/$[0Ig966ܭ[OHsm!nA W*0 02mHֽKNpC"!'tqٹܡPAtGY7 &Zc⾤I>A+-eU)aH^[͌x:`!TDa( !Czѝ22pfc?>H0m<7mRǀz -1`! ãb*xζW7 j2m#gQЫ%VMBCVn.Z5L!V=ng}d޸g9Ы{4>;s:hm_6_Fzg$n˲Xy) 9,ۡ(cʕC~+BKpnL&Zfs|Ni?ī{}} ΁m*9y .yC H =oKc bwS)Ll\"<묑+M7Dq~r5;ϟظXrG>_mÍO855܈Acv<XejA 1}9>S5-INe+NO[ y_}Ըd$`? 0Bc\n*09mp%qC26څ ecȧWD<ՎUX:r1#2:یO\TvENERP񵚹XɪпM6= _ V,emŜCБfNA,|O.rVnWú@eуoa! pĠ/op"z24&Ek=Pޢ Sv{v?{?'wNbx`uzNsgY(`'{ FVk@cC=ʾd.j9Hā߮}% 2+ ߘ8Qy4,۵//t$E) `CdQia\8S{ .u@ݒ.n aH-59gvFmQ%Gq܆BJ !][tz"-ĪG 4eDn:ӌ[T8CIOî8>qE{ր1H+lmjNp7ô~^o7 *\d_G@DaoW!CrV7G>Va#8*h~'0j+'ҕ@zH !l8,,!ovxsOB^3dTl\y3UM]1"+V}7`!UN;grl. u~A$$cN=< aώ:kiUy(4D.YzK4X:.C`ܧ0g2En:XT0C<hJbax,kBh9f o guYj?@Ӌ*ve]4'(Ǐ X.L$hǦ۔,deF Ja.} nv 0F2dՠ](x^dGq;q 8-*J!eڣ )T!6j2M>yz6Rm!ޠ9)MrNn߬YsFRUiW}VՎ3Y3˰!BcF[2.D@4:Rsf,tobpH1o)BU#')/FRԥ\]RQT/dʝ)ӑ鿘q<^5zMczZS`O)l,;4zzK2*9)ҷ S6bۿH7$J>n(ùYq]ՐMu褲p#gUV"\Wxfi# + \ K41'fmN_ldQT^QpƝ_?wDs؆E-|Uлjy,7K maq=+*qyq)NI C~Ѣ/M_<:ze %xd ⻈iO#Yx ֱS=?$iuX֍o(U7/3.bD{s=Hwn+ZQZd"CF<ewt| ~P7f P*bZWPpəՍAAŊD'U0 4/[i&U *RcJ Z*$Pz}IH|Ӆ,ƭB^2/8Y}kVf1B!=>Zs*~EVzC+$A,+VkLۼ:^a(YRBzųSKB#(Ʋ,KكFP-(TMF 56{+#2p$9*,K%5V{+cf!Z|jk]m,ic(̉c`]ju:IQǘYRp蟨Hvt]Cuʫ-ly`i~u-~P_(#)ja6N#FQ+fځ%A·ĮjEv9 f** `YeGAF^JUxBHt0l0:յ!2{տыڭ? d,!+j w!P7toDlُѲ D?S"Yv;lbb%o/Yԥ^+>%8)/gpj\I y&Ipetd>v;U?!|>`g!0t _OGR YCbbL ՝Y2utV~ Rxq4-txnSO"u&vMʃy>@i$7JB\gV+TІf["}XuݵhcFQ{Y!Uڲ5[)])U:D֣QnfU܀@'P=d'PrclX1l+t|;O7_x{Q[,dQZ6)D\j8ݞD3A_b bGO-o&u(HqsƇ sۨXU<:z5[HL!fvؿƸWS1ɈGP.Zq)Σ*^{*b,jk+1!pv7{łMqUXصswԠgc~ Ɂ8% V2bJFxw5/ACSى D1Aao3ja~?*BKTj,5f]TO*! a'`tp5Sg7) =|nI@}i@Kfl9prZ(ގp:UCF 'r]]|tJ%7rd75tcv~~mw°j_b+XY<3[YM7JDkWGX#f5ZOJ^z| QٳmCM܃[I99!&smPt0'"jDX4Z*ٸVp JRd}f'L,둊Òl/ߙF[ XDA+Q̺GL栋4{+g%"StUcR2!URk:^74{n~z%x8j*h'溾P(׀*eVNW 6 ju%W~*"Bp^Z!mBNnZ0/|2T;3Gb3ޅ jWS()*7yeZ:qz3N%yӖ 1gT-&G5xn3'|(sNPC_9r}!1+:/3 ~lNqjz/\YiD!pJ>Tb'ݞΎYFJvV$ }VjN~ɓ>QБ2 fC>߬q»ԭCGWDz$cl8w|VmCp#yKƼ~[qqi|W1,ag+[;(6E'' IȻ0BYo>bLO+Fd~ۇF ZCзJ"ouI(r(|hp-YG;Bs`ЬaMҾ[|1Y1T*/&\\3vd86uJ=&KiҬxˬoû9=?sP6738hS1|SJR)zN *Fځ7ݑ5dmdc6w;by({Z" ?FdyT~|}l0PlpWT>ʇv"!׈yMI4:vK~AL3_Pen@-Ek#!\/:!c(F{{e2yQ| 1{fꋱ#$,#g18`H SigO^(6TKQvpI+ZWkЮ螅RMԥ3 ~B)m-db(VTfEr{rGZӂ.z0[F-#@Z@ouS 'W-r0O7U?ZcSTh]. ^/RάG<ءv K&m&0p>Dq2IMJ(]ױ,'B![dMݓV`un9*rH@O巈xO= gS2cxWGh!U87LTJdBkw$0QاgH{‹TbG@3oLr+ߋA5E\.Q0.ruaz_2r.1Zj ͯh}ѹYrĘYAJźp mF# ŠfʻpjO囀@_k;׼Q9>:i4hN$bLVysr\;w Ԁ`,7P9<9$ꑯirwl^=-\xKxi}F1pmmG_ottQ'[{}H+E&kO!3fnd JT,FvtH#XEYvܘ \s06wwulMӆJd'4lv KiZl a~(h!x7pCG= ըIɄJԗPvR4TV z4T76c.·0I! ytWRgT|K׳sx`Z>*_(h3?KkZ Ka3Dfcy ݫm5͐{wG6 y'*78 mޘb̨M |I |d{&naZy$lP[ qRkAE6Y&=kݷc:JJ 02k-۷z]:sE{͠3Yka<+9HW#@9֐7ByU%ԠG\Ƞݩ_)r$ H}[8iÛnkU*@5.?EiR;; :K 8JܻHMR<]inmfS7V;WM? }MM9mcxzk-ɔWM=#xj;t$Qz>o&] Mx{YI0wIW}]+Eb:}('*NƁ0,-"(lK&>`v:WllLFB G:4FyBEi)L~̐12Uْv.h"nt-\E6]+k«N'8p_]7.TDgt9).,8y4E hFB/9V$rFJznSDH c8Kc6]i[udv\kr<9w#+wݯqbup M1sF Zv/,+7x[VY$^s QN ς¬SNfJcGp5aǎ_CTc,$3QAi?a 4f>`ZknClf}dqCnPڄz@$a?{!|"ڊ᪘gNn By5 Oo}Eui4UԻ:?PlYGc#ٿ%1c-8LVa"V +岅fe`:He\@0I?O~G`8ܲ9UĦֽ:fA'jV~3n:.TrTXk@fMCǪS.Qw{_cx ;F֭5TTqO&IJ,K{.4tq~}3~ zD)dT|~*lj(o$~ +BDP{ Jn 숖S[w%7*cRsOeHโxyj|Ӿm΋%ڄ;CՄB֨$RZ,3Ǫ_if5'§G #z'Q]>Ps9$K[Z1 'п(:ѥ*wOn}Zgފ dP>YO3עSLaBRȒvl9ا4 ;pGu6xK+wҚC9T--bIO⃙uB~0?Hޢ\/k<wiPݢP !UِQVYwΎ/ -'MXBZw+`EХi2L;6?vapsݒ",*`nem< Knj_< m'Ԝ _\bav˳1 #]_zY!;;GyhKyg0w~oP/IE5-ai{`k* -yMbMqh?s8ܟ3Y}B LP;\1WeH)uGK󷯖H]Of7s zD -PG!!kJ [ `}˶rXq-'A%K _M{F׸:}3+O+-oďHS x #`:'/w[F||OI``'0 A}c 92-|bdA=D(D P>5$}(gK|CH_G'PDQFFd+}]DS˱>CCMm}o9 mAVxژbdcuG! O$ }'O,5NG+]X]x.Z7v?VPUmВH><9)G7_ZIG&Cn?&-h-BRxXFHO'\1VK Cܘuɧ$bŔ#3R 9=ҚVxb̬!]5@_؈~ﷻt> 6O wg02Aw+w)SLY#Յ CzRs瞍 z` } y/.Lo9e͎VB w{QMPϬp|?0NuIART U1wFKP?k5$r"d_Ns}\tΝܚh@aGTjYPc;sn&& W5ޕ5c_S^CzD,ƒQ}«@Z-(>D4ѓz{ܛQb8nv=02#pDq'qywRj;zٵ XD[KXztZ:#8CnQk `|iiBMlRfc)<0m H 9s3Y-_:Zl]a筝)V&O%$w#AhcH}K 7;{1^O::߽p{̕<*/*dk:qggze0̎5+{6>U4ז[1}-9;rLQ`<b󐲓g_r7{Ow= Ɨ>VdӤ{ 8⃺Q]"n ш{nHIYg=إh_h/a=U䠽&i i,ߗ-˄1y֌/' KgcU'AQ-rj4f.ӌu {bY旟Z2m> yo"eN%ƺ藌($Qv ;-J31`T.skB5KJK޶V̓zq~ \4NCyg|*[VO =T@ieXޚҽUX+"A!g?߲81g/C{>+fm1׿Z!)_T Z lNq?E77 :ފ ҂WS qKfa'VG=zU*@V7 F:űĿBq\@Mdd n.!ݢt]Ύ2hHZ#at~JwiRع+us&˦+Nqir Ũ†V@γelWR;DoOT{Ž%Ha P"߀*A}2a쒜)ň7[WFoڸA7ߧ@z洓fܑҨSf?LѨ  VˈrIZfBoiIU{Ϥ.?`P6C/<83H[)KK<߆*`|9PC.^,s",L ڭ8U7Ibӟ%oZf]/*yLsdU(J|S/WjJu›VQ oq!{)L+BRE`9lIaHD,QɀM֐I.BP\@n)H pYיaƊBG蝴)a7ZRk֊^XŻ#WsI=!Ts(r``?=bp)jߟCQvf( <k6R>A>Gj>pc<4Pwjܞ<.1 Cp6tD4W4+ S 2qO! >#ɑYf:fURt7$m31ͪj = \4C1kR;%kRBc|t+e_'eDpvO{$&+#!P); dj]D|?%9%qN(i~L6蘌O6y݃4Χ9laVVЂQ>)cN[m߰} Fޜ4V2+e<+`u'Gf40✏OўF oS2>E feo$J1vb@+xf]pSc̚'BrXe%QHY@}r$"lN㬮J\icjfBˊvsà ETIpե?o"'68ffMqw XC5Kc$- ,7Lu{TkߜxQ<X~kʼn/vZ`avF4d`(JRw뗏G|^B&GEdKڟR6> .\*=BPo!zL\vu>e/O\> U~bŶlj@MEk}S{25f% V:mrw['&#Z҉6,eXdbOz@(d97"5U|^sg߄+FTCeJCÐkOq">6(R$Űt{lPegl}zkdˮҴiD-y}V}5P"@ rդ󥋮|:(e?ݵSDLb^s&MSyZnx~X04ȩˌn)zg2EED|e"iW'F)l p[{9tCؾrA?3ouTG1xxq.wwR.ya#17,6I !lwETtDʳ)@-aX$/Kz&1ʳu0B\#eUG1Z6&+F eGM$ *.f`X{(k,6E{ћ+oѨ~ H]+e[AݒO#  &F2)Icvmxaqw \2xS5ܿϖpdZe [=;W<[Uu. =Hxlȝj:983DydE oD928#y͍P:'cP,5,Aͮub]Q¢Sߤ 5nh ]IV6Pn |L{XY}au1%3y6a6j/qZIs 7c.1 ПگWlKUMo:ij_*(7]"+3+{{'" Jye}30 k\ߺldH0KVSa6?C*xH]wdoBT36$,"\9TeIBIFz] 7Dva5#F?~yd܆zyxzq`0Kb)1>lnPM|0Wz0#12w&ە3_*GFz-s}5_ GQ%6 N`RRԾPRe/z9;Љat0]h)&V϶\ܶ7I/k[K\b--;cZ[$G0\ӊ\ϱy,e-ӹ x%{ "iS5)e˱ʢ>t,=9 J $q~sf$dfv])pvZ6\zS:3#%eGw:+ABxfL&5JIlfT59w],Y+JXg+92{ [Ed+x\Vn$ ,t8rWKD_M߱`4nJ$Yu6{A&ZT!~蔉%{yjݸb0jIQto^T@FR?ctVÂoGЎq ( $%NN$׫a<[ZXQ.oejoS7Ixzi21˘u[Ϟ5YΎ_V=ŸG thJK#yp<0oӴr&I,9275H88Δ lNo*ZAs1Cj# FDn[lsq1x$L$ҳېz7unjTE]gf%ڑ}]:'0%^qX P7x3>qvI_BoD$8>7Io&c޷SKԼ&XMCdzHSlwc;}<`%\'j|;9(WU5MݥtcQ09ny'527d;k(gD=%2W[t[zO@ku7Ɵ`4y^ qȁVE,eJv)_.[>Q֪+FHîR٘ .ن:MS9H7ߠ^ LdTWivH o7o27saYyG0ؐXHf%y-TSsNn d_9 ) %&DX6 @ڬqr(-,Ԥҁܑ,1W `dt`a;mYAs|"9QXbVX= AmNRy{= zqD3=ȵݪ}?cE?XqU;2$PKao6$dhxw]@V=dR?+Z}_"1rCR8iMD ,*C~=s?Vڈ~@Yp2= x#G==yOWegBp,wO.gY8#D yqVܢL[^PU4܊m˞]P\U c}e@!e$D%e=&}A?\F"Պ{Ogu|< i  "G譫,"H&4TЁ,d?1{)Q6鰰 (-_7oc?G `Ih)tK[~2Ck)ɏҭYC+vEVx\ô^fu.~{&b .p?ԂS^'3uPzXo) B^rP4 ~fƵù?:ڿrڇnf˸^ϥo\f*aADئnMضcw˘kB295Ccvqnu59.42*G7;.cO8̻[[[`*X[+8,r Wl#չَD 4oaF+sc˰ 5MU ̜I"9[Flї@\XTq1xIi\% TIF ֻҠYڎvkڃ{n}e J7773bm!=N׉vS*FGi#"\dcNN+Y6u޴Kg#=:FnfqHo ,@|DHMc_dEHgPxu1(Ѩ17a~hPگݳ}>.ߪ+O]Jn;$X\3YjyWe}b#u6#@Ǘ&O+ s'n =0ueA}Lo kn4[?x=Iz BN[ZB9څoBݙ+ئ( r "a~Xީe7r<_u=Zx |]3)-P@{` ·p 滠Al &/!x?yE7j<iG2,0%772R|aL0\f?׸;}g IJ5,,/$2Sbv&heA6%1:ƒFIU]@ZuCg$燯KKmvYd[GP蒡'V+M(5T0#={=lսucm@`u;}ʛls^Eᔊe~$ҝWo9WեXAG Pa Fw9+J#[&m_)Q,ΩcVvF+oa\}:-ͅ ' R} @AyPcmv`fCTjө}QΕ]q4o-|);%"֖$դϭRB _ilN;ebZc(Ce %K {{iп#ef C?J-GutϐF%w>DsPdu qP.njJ^qe^M%p leݎri$1}q'\h2͡S)?bJkDl-=jY.a $kH1DSt4W0Qٽ͕#O^Y$"ZQ#v)N꟞\M%J]M[![䇎:8) 0cu\m^=^,֬ Io["(5(F ZZYl.,:2 +StF~I +j75I8V}=;bF ]KΡL ֣|@tyÊϮ#ywíWTr3eO Σh/Ԯ8(}O ԛg:CV /Ԋ6_ጛҘVR`-[C Րa?䛮FhD1S5 8dl],FK4k bf>Okqȫ\%vN*#?~b6oDtGݢnp@~"W\Σ+H)D'd5# [?yeG Ϙy!vБ=\ Rhȉ9mmDvѿGiU)|61  惿B'kL3j;Q_ M $`wGd:>`r`NԶ/-혲?"N$Wf 0D5 szUfy%_@xוn5-Ё'' #r}wvC끆zai "saNZΡKHEC tq-zZp"Ӹ.= ͦt_]f1Gwoڣ`e 1~rRGƗq8,oj/%se߹cw`\#( ym,1#mю ڵT&G_"'"ܝɒ@)PǣdPE\1=^ewP1(W>:qTueH'~wP -Qt4Mb^ d2-<+$hBq)NS繼5h3h6za37з@m-Us#VD\mH;TFmZCqM~&|4ޱŶ?i\ToLp@Do/5Xn~LXn&}Vja12k}:y֤eQ%;m-ݎcI#/ c⬝YhD'+V'' 1e`<)1|{C8bW~+D5(D1E{?Y?Ca3syyi8H13nSkJ!T*}W2]RQͬ,"%d&F __Sux>X5 q%γ^&猳 Az 8Jd GGR3Wf:AX% f2ٰ6G[2ڠ".y`f#މ?K&!Az=b|oaA^7b fM(aAARĶVK.tY';@L2vራJPye9.'f %+TN,/_@R-ԓȍO@NN}U,ua@7-kN0y[tk[}8H'd[իPΰ$1ῂ4!p'ru.Kݬ7SPH>QJ(zI<3rjr‚=mq*w}qh?ST8Y`RJtQjW?ցSd/= opŒCt >Ko nᧉNw)nr seaPJ#fQ!p "ob"t`˂sZ0`fK8 "IHksV΋@%ȇ$EpXHב/ l3HB( Pϟ27䌕J&J0LI.zsyR&$5ӿI_8'g& Q슄_rjP&H +Ncj93^y)xέH|=5VDSW$P,0unj4sCu}m9\2X6:IHHt 4@8/w2BQd|4œ2j8V!4ei8sD siHxcT.)a K]wY.j#Z~HkA xs]aYj%qw$-=3_qrXTg\ol H F0j8稒gu3jMQ ,X$u=v+^J5% JJK8^5뽦_!dlcr5m`*+@bo()Ax݁_u _l5,Dm8 {_^w 6zyl`Xʢ@zfPT WTMr.Uf\5-3ED- LQzyldO TVA^eyV Ǐj!5Ҝq1[07`xS$D5@rVDZ9=yE>*%SA{jJqKy챲7a**UYO$>Hcq)e䃯~fe[}4 &}=~@НȖ$yTjW}-nͷή9&d92Y^&b"RH^lAV[9IbdҶ"Oa1lKaE[">_Π+_ N6_h5`D/b$ljqd١SҁՇ.㳪1$h7T!wo9mr/|жлCA-1BSt]roEڍW ʛsۥ?mtb,#Ecm[_W'̫zٞm650K +, ʵDCGK^1Ū e = ^mlODMVjƒ&,_ӕ(pWr'$,!,dIb"JP`cUնOldk3L^tȖ|ki;yx@7}X2Uw?zn1d}EZ7i 0>GLpw*P`o tx= C|795^ca2-R |㆖q}'fSP7 PB(o1)4+UPC(6W;qƻEuBN q_>q)Ϫ?bN]|z&6}SM٬P6c!9,#aD>-\LHh \ u"?/f'0͆!g1Ń]2Yl( ih}l/ڈOUv#v;8W&>]85Fp`ZrϙPX#X!y5t3L6i_z ┞M|w"ZXRjɽq֘d _w(s:Pё -LGEdz:jy=*;c\| ڄvj15hǘ2בV-`Aه,2Pv8PXK9T@ zF1-NE{1n,ꌘn`͏D.+)A ~%>,AT TJIOc祶!@rCch.-dL}(z&ǔ^ e1j*ʮW0vU,Hm9en1!~0=YDR E Z}Ky_1[JVs&U OrN\~F'5#qmm<*><"Kuf,J4LЧMBŜW nKuVv*>ʫ9-0">F o)dw|$tUvRjYrPQ Hf`N8*w>xĉI[am1w=lꁜٙ NvM SyC4Lh9N["Yg/ZK>wǒd\4[D>*L6i&nR%٤=]gR?0kD6N[~ތ`uDsZtJ0vl8"/_#SRb=[ |Xl-Lqn,waͥnSd&"ouPU]z~,JTPÛ`Ҵ+PXIKGmHs]^HMAfsˎN'0\C$ί|U&/A$H籙 |~X YL @|w8%! qӚ)ou9P VQo.ϘT >Ho46C vyf?CfIk-c:<_3\k,OY D #aiUkd ^ 5}O2'Py ј wG\OJ<8tGtNUA1I D@!oqوӔVZ I[K >B(i!?YA&Vhֺ٧2QUgIU;WPM%,E& 5"-gC/$k˅J +z2e `7MjyjT,C שE'u}~RJ]OG\PzJ:Zc B|`7"+ }EiG>j_,-_/ɕt\5vĴ "h78#T TڏymPf|gvJOd@1ecl)9Ab-W±5JT:IlVxbCJ61QIz/.W:f1?bR4 $3{ݏh؅,+mǭ9HZsqF?M&pF 1[%7m@['{ &_.*WE; 0 .YQ:^=XO]5~J!v' ʥ=ccK|*\Ԧh,ӲD"_1̜[c Zҹށ'CSue {2 Y#pl8)ߪ1yrP۴ }u# `=GˮW*hs[itPv^.Wo)D Iehw5s ]كOK4{Gmp/Uްqt$-1@6\diex"k -dA)SW^=&`( l҇blYC2R [m K o m*_ϐat@HЖ|G wKiQz/R\k8v"GZF}1wb/KC͙V ܶ^;SEIFaF;Vق!VTt+/v5wOnUKNʌ:s68kQO \'im u"OpfN܃-jP+_ъZ&85rS!N8€D y7Q .ܩo7ngr/Zp>475Lyǡmwt:iUzpoxQP/OyU Ѽ]6z=E?3% 4Y) uOuUy9=b8%h[=ݥ~.Re}ZYTW~NI6qL[W֧[ R f:LT\Mِ1b|g)pȥL6ԸB^maFWeäi:/a"=b>t0~<2?{k:rKk&*3Ҷ li:?HQHtkX5lָKJ ]]|#v$鮖3oN 9qd36d7l46RF5r|$$$ٸW1(y m~F_u& USq{2kC҄kMHoX2X<4 ~@8< >/N5 Ӷ5iS_#Xm39WSmNb]Ӭ2w5RpM!G_G2S3J\m΃Ĺ@k cZ@8Z/*~X&ڳ,q} L a_k$\4ݨ|HB4?K$z0 Q7ȍWir~cGdr{Q>.cc`M4T9UGɚ9aV" #ȑ$ɞz7Ne`ͣj[@5ؕt4g2QpԒ}σ4n)w48P˜rF]#ۍs ]%ݔ.{5raKPv/8b@T'`qp)Q 09=[,]edpp*`$(;҉k3  $&y4PVxHJS{`#,.Xgi)O᫳W 9ZzUG>:zEP@iTB1 Jju/wtGű_RldW/I)HgğC9 R>NШ5<f녩$)2?py袀V-{R4 B'4HhNCf(>m!|-/<54#1S f')39vgٕUзoǖ- W[@sρ>]ǰ > T97xJEհ'CQօ>5]R/FrvfF{1ԚC{^5S*ȼnˁ+XOU#7GDJ$.WK8|q¶ugF)>@3걔$Qz.0O;1fڪXƗpW@YSqs/Mf:DR,DnV[^u5Fʟ>c.q]J<+a.34iaR-͜3r!KSjq(jܣ%[HId$%?1+[T-<Z+M8pNfrm~5kDדGFwtޓl2Ҏm()#Gc`5㔀~(b)Jpg BhTƿFѴ6<L]+,@Q׀+B~ TR V'Qȉ0js$6X֪hԇ(Wp l0"{Aŕ#Ky{: }[M7DiO D~䪬]8O@M{7RZ<XJ{vFIdrwQIRT¬\,HC F֮GMDz6kdGCBQ όypxޫ,k$G|StsMvu(Vx#doXqH(`d*&^l"4XO%-+7}RD(pZ;P0w,S@,_&qGe]5sV"[w5T ΀L[5ԙ .\$?  BůA@ ;79i#b3C/m1dS&g6("QEgoh|NKq9~l(cJۚ$/MEa/SrZ r'3qWgE+5fGW5d}>sg {9Y~׺Q'粢˔*J 6oF|;i3-m%&+<)4k pTdŊB/2p*n-'[Px#CA.KL.`Ɛ't=]i?N}nZ; ڟےB^PNG^9lw@azjX1t & ڍ+8?/)'f9?mQ0,9K+F o6 X}{}u@/mj߾_^ &qhDeTAa 8pR:QHV9onTiG ;Y f5ѧ']d eiΡໃ+A+<` X1+깐$e\w0α[}؋l6N;x06ߠi\p"] lH (v*Jd'gǸSЮuUfr`diB2`*hBi<ŲeG6Q1-p Ei0#06<{4Pn.Q8Gaz/d97H\+`V%B7uqw^MXDuL<Ŷ,d6Ƒ2oe⁡^.PڎY#uga?0v[(`7av,P>_v~8YbX/G79ePsIOL= R7HϱIE:q!bܬpix"/Jg/lp,d+oCvãЛ,{ZD}d\#/FǽxChY|zL@UI:o61ǀg%(@[ysEo9|2o5S _W:EC҈Ba^{ AU hMu5jp& #:@2>V4.i';0V,: 2,$ܕ-ڀ@@Wophg*5|E%8.sKK!,;6ig}$48ZS` T IRꇤ7lʜjiJ.]t8M{,+==KF/K.NƲXk\fN]Vjfl3X{[T8~al6R+WoRi捗 ۍ9qt ʾ"cЈ#"jwrX-|` t’gUrwS㺬HK|NgQs>$"+]VA&&2%DYyoit{]f t  6 Iصr9@@0GǢQ6u/p7:'tG8"oiM=+w}׸b ֔q1n9?e1׾4C]-M3s^r.,rI;/fߗ#\>~7|*4ExҀIĆŰ۱ +x<}TS-@T3!c 3$a @xFr*>[-iJ9PvpK#RHʣK>Q*I4~5+~esԦzN۳Sm',crdbN(!(46ɳ)X{\mb>R__TJ [T%$ O!] ga/#'Dtf(4ȏʿW fc6aBn&mwJln+;y Q; ɓlT4W? d/a6x hu?ϵgh21ʾu3$,2S잛sQLFΪsWA$^~x#;?9J[ˈWDWA'8XϟUQ4>pr,F#4¾JQkŷ}T<$>C>ksUi86Aqq4gx.xp᧔=6vJ;^|@Wj</"Dt_,5rqgue ZPfb-xUSWng)!9Z_oOfBXyFꬪUL&5 +9Ĉý lg kڦ]j!x~$R1 Q$I`-V"N I$[tDI"*4]G_4ׅXpq9y(f.,aBkjBB*%)k (%6.+^]K#Nm~w-$QBeq V'dLNM JLn -Vl4:Ыnv K"tTN5%bdЯWށbJ)I2|&ݭXjO}C{Uyel %9b)D7řLOلG^^2S(TrdWe{Gニ47 YQ3mJLAn3?s6qz؂)+А"U712%碈ϴ/hKLM˅f_J'-ūCsw?dt6Ed/HZHr!X3&SHMb|ag2l} XM`o)T٘G"꿠zh~I榑-;ϵ !rY6|_`D"&LfIƉ [UAw^߄dИRo4Fim^" .m5ױř8A6Ԓ@.h(kTՖZvz tYvgm t$~S/*ShufKڤ\iZ_͖!Tz]7b/Te1xZ1yZMKv @r!pO{H)hC`;<|0Sbhҡf,)W AS(,@)4`(\S^M kԒhXBYjL=eNOEO3 _8gZPAhѻ֬!Xknl;b;n I*0{#TӗN %oϴ$s@oӃ\=$mXE[U+&+uJ`6^>{{әdn8t9& U<%:襇3ρgU,(SR62(&3LN7L noNJ K}BPG:ORצ=S34u-!2Y9rZI2cơ8F/! 조O#đ,dF=}L>M457TNx$>vj2\bvj -iceDZFW8Oښ8b' /$26Ņ{\<iK{}8 %,//0EfjV05;]YaPHm_mPUfhdӇtkb-`>@j.`o->{9*i/yAk霨JQS 2hծ{ 9eY%vnKV敏a<3oz"RFS= ڻh4RF-9-x]q»7rERAif`]C79F͑~yNf.KoOe!nN%(etj9o\0/ӱ}rߨQcIs6|@gL۶]v&Z%Q&.mW fII p}cNUjzTjeŇ$IMJCW"qd|0/FEMU 6#M= f&Qtխ>I*gnͯDK1`x4' 1pB }X7wiz NNj* 8a43im/a8#&aGj품1:Stb 8p8sECC51p<^-UhDg]y_q2ք_a6%tqL2{"sڻN斄g-!.29aen['Dy3~0VnFѳ-BPаd7l: ~hv + xľwuPnos4U?9Ir -dJf~ړʂ~e7h A`+sڐTWzMd!t#bz=JRH㠽i,cc .a `H偨=%0ȇFhhHn%D8Gbɰ ̼eΙ9Y<t@/xREFզKNe6RWb>DŽ6"wV.& :`+v:Kgy]yA(=+NTK9]Uw4$y T-▲p**SuY+LvK,}ۛJ,ۨkl'W!9o8U+0hP3ZdP ?Zzdh(c}6ran7 '̈́As 44TVVQ3Xy EX_LٙphWX4= Œth4$S(I&bzzNd{HE9;l90-e{|E$$-PRt=;*#H(3jQQw;X"8R\4 U=2(= =O$.F\ ז "'s|Bu(J$E%.  UIEjX(ZMn%F:k)[tN l{!ĥ9%# |JT|Hr \3cΏ1&g i=Il|`e{?cGS@pҘfP}TZm k[-9j~~B#ЦDJJoEP+8{{/1X5F2>Z.ONyV|+"=GqYSxnȲ9!_9T ÜT6FxR}Oi!~^q\O?0Y{gHMrY!fˉ^}"kJgܒ ëC Qb .PLswS7y6LKޓ q<=!::]|?-Hg5CѠzF$Pq_g:WSJ/rN!?6Zepz ea65e8)m8ԃ59gfm M3nKY, Ӵ0Jf\Z Y|XYuw9` W,'-|i<'8#sw횧*|Y;O4|s){FwRnjS 4+BČz—=o!R%5"]{5"=/ʔ_ Y"TŠrRx0|mN(k`To̴΁x>i7n -iCC(F/j S?Թ? x ڲv*ېgkoNfV=CI a[a{s&M5';Ļruz"F ocq5 SҔU) %\3&)zTJo MF1ŎE8w-/)7D}=ϸf&[j]|֍)8XN;%,h85qC6\>[ZR= A&-S@ƒ06aLj-Aꉣ4SW[=)0;(DК8:lm n28u}o!)uXveĩujAjl8j-©ܬu\jB#;s/]2^&52V Y|Yh*_A:Mi B,AFt8ms;` +Y g *`|%ƍ0.Q^9,3*~Gv7RQQ]x))2^5 hntd<#1IOXe8]N}St!nZ%iab4598ƫ1Fs D\?_jթ/x)aS x4$+8D K?‚!J|v/ToْytlΆMW534ue(pV?(QI+%Η̼oe~ D {|+F 2HMK/L6`҄"C/n}Du#ATq51÷<|4BjG0~pCn󺋠gmy0O轤_*mYbKxu 튁Sr%s%᳉CJzLLrr\tU:i fg LiadUo͍Gml ]j{JT5ҹ4P+פ/ HC ,busgE8w K|n>^i Vk~5TjӬ%}[2@KA7]}&Ih&TPAӥOY.5H6 Cɛ:C0~]`]8h"#:=%. g~zGˀM:w雄a;M(ʷ@)ފ\]Hˆ_'ߓh$-{K%`EGLoEN|}1<\},p(Y_L\ٺ*\y| =ݝT Z:.aJ[kOAF6If/]'EH%w(Luaڛ?oA-TpsػYPصS7cN)7E?/I م ^LyKyJ Ll6g,6)p:3(ăBƵ̓rڨ!ݽD7t~S -C4LDwf*F4þ><> !/!~:5 9ȉ5XdۂTedL`_R9PHn5ZQM.L1B4B͸؉gt4\FYyDac WKF&zV'L& ŽSS`NJOߺ {m\- rmI([mo}̨qu׆`gCCl6km7ǰP,PHd]q|봪a#TB퐬ϓЌvDPjK"8Lñ nag!ISĦ~SFNϰSC1Id1#8?0fl.- X &3hMtmsdܸ! ٷ(`=Ӧͷ6qCPKx j0hxZzlz[TW~irK9W8%֔H"N"$%K0_`7(Nkd-4 NQ]j~*Y g rv@ZC+(F3lSȨox4zv.e%f̴kyBmIzOCW>zH74mn,)KmORE^m e~(;?(D +ЀХUY~* P{+"J]@)m[ b9\bG+@ 4]8&܎yp5iP Н(OMCFoܲ)-8Ҋ-}7_nte.uCX# 3w?ػIb56p:9lе_ϐn m (Q[V靥GlRD8PQi͠W,JOv,߅ˍ(i!OrhCr3e37]. [Q mGYT / jԀ]<AXeF S THGc>|<A*s,"ֶPlp9iV0J5#)T1ZA QݢV>Tjg固@mVӦߌajShWJg҃E@:R29UWťYʳך[TI6c )qqJaMzq' :@<]"{3.M! YxvefۮӤLh#w2:z?ݹGa})oOZHuu/O#E[DN.ɥ;y 0*ZfU׍L=ʣ;_u`croJIpCw/!񨩗e"z&͉AmnJv>_}ώIHnyʩ3U'>ZnUY&ѠgFiV#MqY#EQ d$5N' +`SфfnM].kȍ^9\>cz0QkĶwHQ? ҂]}fP8V߮`DSX_pݲUߌLّBf؆9&3x'XxlًAFZNC5I|. {{K~ɒ((em)55)3]Õ7֠\ m>l݌J17+GhuHdΚDSp:hE[7R8=}?MPC2G^T_r)(WՇ{4'2Rwm [N|zq8: E?{^&į :dNKYBVJ I}prV2%#j%Q@<#gChkK<0"`lKGT Ys^,ŝµXdWi:(v f^#)Nz1qPz5R" e6%?e[X+h?80XA+`|C[ٴ@&_M_dv]s /b@4 W}3Qt--DVq^&j6E&s7R$*Σ:Hz o8z}4jn@3,Yv9GTkC1)_pYA!s]7=Z)XDȞ@q3:='»K}&@^*4PhPb2Poѐ:`[jX^Wm cD ?; -?1~ۼhǔ::%a g붹Yٖ켖S %fot`YsE[') Om4'S|M) $QV)4iĤa,KXeń0|֗g*0DEup);z+-p]m K42N!'Ff3;F*]l"$'5i;1lj~u=PxrQ*|Ec-ܺա _(uvzWRLtKuS)Lu7zK"CAΗ }HW%1ΐ8Gt fsZ>_x!9"m}ٕKպab\_ttPay@9$F˱НrE c&h=QO0{0qEp\@]:̵p>U%^?iU##%2̓Y"}GS]+j!:9MEp]aHfM䑺*—CNkEa5Ąڴo\az0*mi8x m|1!""7'?Bݚ%w[Pi>mF9m%"z&ͫFn5/h"o`xbqtK/lNUFRQHojpj\$Y jWV$/*^TvfPDҌ ;E x` Z;zmF F5'[7VȷIiRnRuT2űE/b 9~嫽LLؠC~*iu!%Y3Y *\O;`=slbb:qkbShb2ݼ#ĞbǬe53~ҦqVIsgBܙJLZJ]ywMV!ӥCCXA'۲rPi, $+ &v~CES<^p'0z7.V)xm0NU|sо8EƔhx>Z#F-)W*PSDTI[*4kԹ|WFA*l6mg5V^$6/CZIeQx ;<O"hЂaO>(Ow 1uM{^MCV鎛DN=t_Е `Eu #!Kl#ͣN KkJ@%4E>1ehgT ==8i}m+F[(?$z%b@^+!ʮM#{S.!wȺx}0BRlE'W)cl1)4v{2wey4D:ԂBz`ո98꓏=7HIa8}JU:2e@!c#~Ӵ8t[:Nz.Va[Gl5[ R0~H_ԯ ojz\ b'GFȣbO_>:xolvq "pJ BM9)ʆ$Zdj_Oa$gntFBbba0kƫn$aCZ >{&IZP\DPC-Q ^4w<6]@D-1hƩi9[ާ ]8<}w<5x_ɺv8|Mg2㝟0phY쿨z,[º?0XF׹M)(*nim+pEw-RaĊ}:"6a~,R?zXF ?(QT2d$g@ɛ&N{?D,[Zަ?gֳr7Ѷ)GB0O|kIS倀ug\pĘzVD/{>'f;n`)*=q?d Ќe^-J)j 46fT^騌J۽qZz]RŪ;Aˢ9ڜ|[&)6f.ȹ  4{4]?3_&7;sF8`m*iy|'Ohͤ+f8s:u Al{j\2[ǿvn;8ޘ 奨62iQIy'9wlh|"QI^QC&ƒ'Bl`BB-/4*T^o2$FUEmV F +J譝[ qg{}gȗ>5uL߁Q?ðu'QkAú6;?Bh8(qD66 y R1B>i 5vHfXЂf+HÆznH:Yɪ@ L 1O&~"UtPa7 ϱ~gWx XH%sH]4?|)x)#W8v,p}ė0uJ QZO6E XY*yf%dt;,E$%8u˿uZ'|tC5q_ܮeY8!fL,DEI9GmY#{^+\w*F5[T=Ոs-1hOc`C#ñ cq,)LS덻uX?KE( 8T|yYץh *>&ۗLW UeңY48G%L7jb@`L^)5Ά1=DJjL0wZUJ 3ezVN5R f+x4DN bۇ}B >KFN8.ZvBՂd-?L)^df-uJ;xO f?C9z6а6&YQl~V+ 9oYij^hvnAQ`!U]6qŜp$wSX]$"M>|J O..C|ܑSNUVZ0933$d:`Zoyvטټ[uʽr$6-zG3^ux5;LqX :q*Bi>1Ɓ[_2א@ـC_w-=W[y >1=F~aXoSbGQ湰F(jKr0GQgE x$@3r!O>,L--^6nrh"_>v н +^UC34֚/8A@1%+6u>5`Rӯ~mZ.d\T7riv\}sL2`(H3T`jv $ b"DưeA h1_z~$%_sXM%d FSs#)c,1hf:O@ L`MlR8D b}g*03k(PHd /TWsO| ?`6d"5 lFX&sK_gIr#թ?ltL2azd}#wy,,9 `:d'[Y/x&wSʅt铀d5t,ltqYP5pȮg-Qd`WA) 1 R"Ko@L7+lEwu;|0J&4k~`` >z7YQ vBH?#تoD0JZjPhJP<@ȳoTA[K,,I6<^6k!'ں"{C̊ɠ亝B𾏊DX"3g6m/}eC(A $&o4nF#(˽LÎeWDŽ/5^/k:u)KށvC> c$p߶ޡy']REkr 4MKC>Bo` Nwۂ@ suo(k%w#GA͸:9>i-@!J88l/^Q4QZlZ_Z{aFt}Q; PZ0ň}(C>D9bd6xGA8=cR7Ѝ_P*XJ/u7-c/|&ߪ* -=.R`cOL``޻R *rr m PkgSy3uj^a='P DۄS`mVlA%lg=eudE0si Sת{b:%`ItL󢞳:nC8XsѫrVG :G\BHQ-}-(zx hՂZx^jX gYUͶ&؂=*Sk Γ~<`)Ƥx6%CS`I.v91z:-%5Sq|>R'sfSXzn 52i2M*v Z3/Рmѭ|U<%o[:1N83"wrJmK@J$#i1ڴ;$ͯ2գ11.TvEV%qE[2PY涼$ֽ` 5|G"f٣l.f5̦ G $prM(Ŋ$F-ñvdJaI-Y,{ۺD9 jq}"֜kζ^6}XRXm?CKV!".Q߿'*F_P@%mԄ19Xߩ/(ieH'1htR5aAo"}uuVj~%xd/)%6Aq/8x(nV5ܭdEJދ1{ct(D^4 +5M^ɠH E@d5b|ZpϛvfQ+) f~&R٩SYB9\wh)3QM" 8v}K:NPwSI -0q C9\- \LgX%/(b< :5+b;gʻT D: 8{ch8$+ŶSPyfJ{xO*  _#>^Mk)N`Ѳ&(PDWcp\`ZPF. I 8qSZL]TypnW#K[[cUDaƍ.p];tEO_9)TZhBڒ5I "v,U%|uD,Z xf?eFN",Ey&dav!ߕ7Ϳ a服P{ҟ+mg>M~zu\UL53hA]F+f굃~Ou8vN-ouMO2Z{Ц$$8/EE5!(<Q~10PcESekȠ]q&ؔ^ܦGt_Ÿ&*5U4Mt5d[ə@fdP4:x94/l ~&*# -XS[cyyw<= @? PAc9lyȁgufGW4̥i7dg`}{͍#FcHzX Kh=: @s,ES=L6_ G:g)?*FwS{j NVH"mjk@6.|.ௗ|C0Pb_-Գӵl&9Wx|Q? LNF!N{u‹P.#/JTx/oSEbըoa8SNzK8+A}ROM6F:nH2He/[|Y0pKԔ%m+aL4O j?"T-'\2&lBNu;Ak; 0 |rЯ"'Zm]IXn0\Ž.9]s鬚 4g*G A Lzy@Qz$1̴,1cڂY ;I;ڸ sY̽8δ Ԣs-WZF敷%Gt/nQ}Y!0}$ `Ud~[7(q rJ36L܀Aw9AGD|ո7VԔZ Ɯ g2êN\.q09cc?l{6}4_sƇ zw[bݠڱS/zQׂZr1JFd&b=Vo@ oI{R421Rv<֞]04.N{RL=H bP_)Gn#ª1,1wsOUģ #GMT핦O6 :W:'0k;6je_Lɼjl?na>»f !E'h @\ʼ3]*K|Q>@rqP﨩 QQ`LM%|.ra`TaG N2~5H޼t<{4s[7J~F.JVˡ ǔUZ81< (2+{P?>U}zs=<,s`z72vbT玻pe4U_ZyG;UG9a#c/?\:8Rg&.;`>*`6-P)jyĭ8apZTυ&ᭊG/!WDb4#Q&,}Q 6u"vɩɹơ.ADZm}=RJB?4V0>ZqKH4?8)E$gʉA0tBm2M5,97 XJE9^&6KU)ǯx@. L#6LZ`La6vߦb@.ʍh  Eef?d,nvϾ m}`8>3˅M^ӄK$8]\B35%䒱(N J/(CH>_;r/NHgGF(^40'eo_<'涯aޫq+)W>D7\{]n? LKzJ4+FQACkp>͔jUnIƙ-bb`TBzeYёA7f}m˳)my|fffm.Ke#̢Ȅ{(ZXq ݏrmX^ڰ'c=\ojO@>$ U`ocȪá2s)d,=@4^TRŨ)A*(𞔲O>o sh7-N6Y!5#;i` sn;_{س@NǙۖ=Уpc'2rgv$A#= 7%zy/EJѽ*qv Jp* ik޿Q<@MӢ $<`ui>/Oޮ y:yB9C>ul9\4sJxY:q&Mkué5+).ffvl>^'.r+k[8z(| Z@sycW<_^j{Vs9??]Ae1g)Ɔyb&蚭ODe't8log'ktUX0?J]fВpnM稜!o&`*Up yq>Ѥt67V_ݗ"GvLY8Z2pexޡ^i]C|rj⚼ɏbaW"dvoyYoZ7Z@f*<)%Rq{Oȕ>ם jÎ;bْN  uB|CTR®A;*XRz!"T&ym+qx{9s32M%qgVKnxP5ܦG|h]P'+upNFo (Т`nO.-* AZTQ\o]wS#v29?\6:dXiY, 5@:,φLUV'!-cHOh'\iΛl1!P tDΫ ?Mk(׽&ꏟӫ&!CeIlh[L}-5qbDl@0aɽ^ # \$!!L'c //5 u5|&%w[Ҵ%IYBFndԵgQ6b^CAv7'g\سɂa#"rӁ:T{h`A[)dd;Z6 5J ?oMVJU^r%G'JHj( u2Xa~yhf/8{*"/6w0Cjz+."< y-# ? ċ*.O6yUfv\]ݒrw.+/I.Lг'z*1ER^(sCY3>+%Lrn0;>@WԕeZ&~ƃxYK.hrsԄVA+nne$~0=P9K0rCCotg$[~Af*0ޚg/}86^h\ VQ탥*NlW4a#p!ee4HJ32}Cky:VVր۠ǟߣYha,RiO(ALٰᆔvZxve> YK#G8HkoyjP G 0KB7&/nۓYw?~]"G`*Sy@Qj4 J 8"2&.[hMiH|H n4<]<OBR[Aҕaa-oMpK=ʞ{'*5+Zyeu5{gW_]we)y/+l7I$gT xaap2Of(}/Vќ<+UFg XgiO_޶zsx&$J{Ƴd?7?>'m!+ cP#DX'tZB3ZOA яɎ]UbKEN5nЕh6>c(`a jDFE)k#tE%54&RcvDpBȪ "j0BP,$6XLQ0QuFeB~_f1]/&m9lھ#M#!4FxMׄj!)[@gC&jqozi/ʬͮգXLR.8I'.Nb\v9 :9 Z(n.3;KpsƝBbgkE?ڿ6ο㑄oH'f@io2)m >zBпKEy;=B<d:КRe;(2j`;-jX>{]a͙/k>C>O_Ӫ=gFHBZNí`\GQ1WsDjmgԑN1|7xRckW9PGB(t#My^HoAӈjoJ)~/?@,as3۔ tK\h3+!rYՕhe:"40f~ɞjmyi"j&/LJ[qno"r dU uoUINaO|^v)Y k3`rn@pEB&6f -= ѹ͛TgН9s!w|}4)(|J"g2?rOF^LQ]9V^;ق칞b=6)퍍6c%m`,A$pG4>3'𮧞{O| ݙv˂u9Sj]7 [əm.,S;nsX q޿BN>H .X Ӊ6M98!LEs;= 堭5D[m8r.fC3Y5 :U9zI,G0J9N[L $}p4b wF{;`)5{ Qy [fULدu=` 4oCi8A)E}}iA7LoR |+63oXZ"jOm/5׬P3RTpDU\#Y/W &P5đUn5OJ9f0& ‴#%t¿'8&?~$ -:m8Z%u` +2xx ꍨUZ#aDxJ*H~C?/xm7׾KN/, ś>Q,)ױ>"p @9 ܬ/yS$IIͷT-wϢPǴ2|q 2BXW6 8#eSe ^VW.PtZ|~2fXR(,6M"yZ̀ɓ3m||I"Y?>P[œr=noaMghJ:ۦPW4uJ0D@Fne^тDUY_ ]9tDɸo9eN GUbf_0A+(WZ,rQ;>o UX߳K1h*^5\t=ƨRaZzi"e,aE,nvHeclKdr \ahkX~7j6%[fE ј;=^/띀6ơES6W\IE5\|/inl),ЈliҟR 9y_aV64hX_1t1eJh8y4M9(e]/HW,WtOl*3`֮i)w(\[mR/Devkc]]#;1.IX,^o#ymw^uEIҙūCp>[6kX ثR!#*h':xakI Bmj?s]AHd]jPe}y{raCyt)'p+ȥAGt+^ F٠U^zF {pym 1a?7eHejfA쬖3Q;qj^`<(ĬGI l A҂C3Bnjv8K2֓5^<֍QW&;$z܃<"(x狄vB}J@JB_8qD*U6j9X*!$Li n)=pG\[P* @e,Ni'⌀QY#5ӅH=Kv*PgVj%l5n.7~YskB!{>`7yR#Ū<\(厂 ^kO~~=8떺 VMa²mF`P&ksjE3~d?1^*HϨ`|jº>E"{H8@^Q+q@DNѺdʏEh"UMm>q܏U_wOU(E/`D-xWnCzk 9|t a Df خ5">zzm3ؙHv@/Bi={ZIzW+mWGs2mJ2P@ՏCiam(䲒l9dYnǙZVB{ײ:.YỾ P(9P&l`H]g+V,]IܷH\MU!YYht9'O<-"ZJ2iՂJg_DPbԚ_Od7K:-)[bĻy5I]cYHְ#u-OMMlcy߯;R=\4e&Zs=h_p&P9;f|S֓Z8e{?ww4pq.`y_[[j`9SC-$dS82/3.L߱ Q;|AfWL)_Jjdha 5k*yu?*+һ+ښhT[&ɅICzto!) `E1=.܂O@gfipB' ACl5Nؑ=?0iuRV(씃bva< 7b8݋ڧ"ÏF/Hn`[| !4e <`&(Z#&o<8x+<]~ݭ+z)}v# wG 6xA8_uaXEGl`T}z }9#BMURۏŊ?Lu}j(P??f񰛗iRc~eLV+d8 Y|Z&9}?xsm;U>NYQ= jm,gQƐL ⮆ozv ńnnz\Q+9{x@'@n4=J|-fNNB|q59H،q1܆Xz3>l$9ђV1_Ir!K9%{?i"#˭H\,UʍbIµL6"b4">E[q엫+C?YAc8 k#qߍfsi>M, *Xnq0ukIƊ @էq8lk(e]\laBOhʫ*pEpQ]MOgأB1p_PCcs.65`An\Qb> nHmM+ratQ}kN҈E*3R,E?FvFe `p02L,]LD@DbKuzq[XRu{_x Z#)7U$f9 +~sīsl r҇r9,/69ؔ c-U \5@9 +RFn{c{*[hT]%eJ.%sˁ蟽|I:=L!ODND.ِ%c.WhSfZX\ZtzM2KLMmvu8sI8b4?{}럩_`R2TӺ ^jQCW AoiB%+|G)Yhj-`lfw\HmY<\+Q3{dD7}F}k;'[ z:ldw:@ʙco,\6Nn@Q MGW9q<It6j> "d"e&gLs0SfY1pNXL#`{I(FМCZ5kX|EsEؔ=#3&FK>B]@ҤژS2GD:Dl-\Q'e:ël)|xGS_sz5jҽ{6 +```*7RHzD zT6&xhTqQt}=1y}ex{8Z՜Dö|ڍ89zH(Jsp1%E+qV3hb^ =='?e\3FAT+Nc"ŝ1rqySn~YB#m@`WIh4[s O`gjfO_kz/ .0nʶV~>J7v6(9ݫމjy5QpHۻ! OISӀ>MjA0p^jr5Wt˕dn8t֐굣Qji?lΧ 7m fmb2%5hN:%+pCFgFHq=D葸)ؑ#Jge166A-H+% [&c>3ذI B-5? ؼ7׊EuŤzof|q\&qjikG t+Օk$ztX5`9I/t$w_21PT R4JIkӲL83M2TjOG>xLfRoBN5&(si$e#UZ^`2g6-!;JA̶?(`? R,LbRT KCxOқb/pUDcಪ4P{ƭF T,׃ð=kKd mT.cKyV[խ8Kmf B['CQmy&Xidw#K q$$p@PIƢɍNJ+zO2=4G ZE5}{C4p "gUX8ZH[h..p0ܙ WKr5+' 7/*\.~ hgz m:Vy\ªȠ<]s 0[@ Ќz'mX:gkeYnAFz OM]?ușgW$?Ĵ0#덁&)V9'Cl{WWWemJ6UpRh m&|/dtE] [c|3\+Y_&2G"SiZK1$?QZph |ۯn!ƕ/țc[>%oIv< k}0wx.p/_zk[jpbo;E\ZJ lLW}w/ץ(R~Y{^%Y "NW ؠ=ˇ|~P81~97 kۂ BVgo{PMpY7vECWC YTw[LT1*g$Ğ;0Bb_QtrregDųN]ȦK$?Г {6M(rp( $դ|s0>Q.?/ pgkXkPȣZޕH{QLS 蓎K|yPOR\")qxawkwx{~>AtRߞ>݊GVi \d-_9^F)*ܽis~ (~nyXGp9S!]9\dެ)DO73tIԏepGe iϮSu`ݤe[HڟVpePV/8Ϣ HQ {U0gJM4‘[{ ^F"9Ⱥ7rH} spRT}51 hS>q RW=´CRNٟ5#IQws]vux683 _R"7)`jO 63ޘԯ)hBW%9͋˪~V(&Uc'^D}첷85VKmR#/޹؞[[i_Upn̯[< ,%NP1hNީ&k3 {cU^j۾;]Ɔ!z.eGwG(L]*`4cf\O: ˍ̩#u"qeg2`Jȸ@y)~o뢑:HC.f#.{$E*'1;kz&_<!?{{x2BT$Ah~-7u_܇{ׯ>%Œ\ o 7u]NJb`g/>pO.8F SjHǗx7,#f][~.dڸpX-MhIg6fOMD\TMx, G@"X'y~΋X]{qMlxo{ޚ刢>@0RwE[-RG`1VPI~~m~]? =*';L [7@› :h,1ȷ?2 !J;)2MʷChvUJC3a3 #(CęJ7=Z_oXtiд %Pi>&uWi ~Zqs.ְk.ٱB^J~]q:瀨^ 7@LKQϨ/ұoM bcr]z :C$=I<&f>6kv褽fnB:l44T d!҇|9-{n=ݔӕoTo}VWe S+d2'KVl[Zs77,PI&J ';+ɰ7d>!HomDKt "}4[8-( +{Dkj,8h(')D8i=QGNEI&]D].Ǝ^O$ b'yDԱ:.Ϻ! !56([Xݽۺwj ر/ajDh<:%+] ZIhg_|Y|3# >v{0w׶}o#R*=5^L։}w:w=s;e~e߯`/ 5fȜV,yZ}ɷEHI SܠR1_Hs^gK %G@^kEJ.'d[H A<]X4` lÉ_-}l+J ihla`/ 񇖐')kS- D32QȘ*q)/GwAKYISз@ƿ}aY,&̙ hTC~[5I[|K6|t%Xꆂk*v  զd]`z(="=9OC!9Ad¾@{m5JqI綬) XB~1~-=Q̷6n87Xe >ڢRI0܌xkb32sZ QA ܔP1\R3)B>-(NIqo9V}#grƝ5W$ao~7F~Ou&nxeFyq Vu)gػ .Cbqͫ<e7x9k!2{I{#j4DLѝǁ񏧯j#_BNpSfu62\^JF?ctkK!\\7f9G0cP&n@*G} _38[m#y:XlO_zTDS!xd7qO٫OB v_Fgd^-b+G3u %P$!1͊qܕY2aR|ZoȍraܫH3rEu+He x ' LP7?m !;9MT+ k)zi}_?֪eJZQ"^:jUa-B9 8E9E6~Or֯5:6 lo8*PwB2"4msHBP&!sz䳶礗>ٷ5SRn'o ?hd`Z8?F(5uDfXW?9.h:ͪ"o9fjQ Z .[ku×bQP2){DbCٍܤP3G$0=-#*)uӐ#~VjIC[z.V?d++ n}Q~o+ ҔmgOyZ@!D Cs~*xT~o܀cH<ݘhjy,juMRj+J ՟bv%V h&Ov;BNVc7 o{!xM$Q)GX^aeC˘oYgW]TYp: J+*G$4=g/ d! 1e1N!"Xš$ְ/V y~x Pr X`z8Fm"*yWQng#>z]T WivEjU6. CrQ*Uʟ $ -' $Л?DQzUt?D]+FX6$A96%';c3v;㥺tTZ;iܝ`R/#D5rW7gbp yr8\`Ťdlc(^q*iD=CBv|$ Oߝ @ξ#;o̖|p(8E|$T1m5I뙻?#K>+tT&'O&ՑU܇!jyż:޹:??{e;O]ƙ>,RkvծZ]#hۃO)-D϶}pΉLc&`@Tuau5 fd`Ӯ[֭XV (ۿn >m6xD_ VſxŪ >NQPzo_`Vx<PŻ2[[1gb#!㚰 u"dBQ7IkE7AlQ阘_CH5،_ `ԧO'&b(MN"#-F ؗm s RtbhhB0Nb=ʾtgǓfcN㜖P$m{OoH $C!pIcCv璥t^3ViH.)#|\$Jċ߉HtoЉ)\\VOvü2aj1:s),>,`Ĭ$a,~J=!&Uct/$ۏK7c??ayJ$W bL $|.|dGYBYysu@AEԥm3^F}dkl+˯{͕K/Q^1X8aq%CPN_>jw5/ş0-:WsZ@T]sQ^{[v09͂ #4<7tzy<Pt]a㩖 MXV!cvUI槹v4ɯ;kU~5nKTOr$?/wpW9,1ԸWN݉-h \ZxȦi Zbc X֝{\pA4OT^?}gB[hN$)xIh lRsE3Y{p_Ss|D}5-2O:[RXd6!~2 =cGf-D;$Hޕ 8v-;6+/(r[s᧻.ZB-v0J@Ƴ^6' `qLCqÍ1_!+>`Vٜ*cBPO}j S[p  yj)W.<':h\,_8za}VU) շURjDcVn V֌F "X~C8ݰc6DMPR%f_ȇ͢Iݨ>˭Ɲ]y.zKS^}ƄLy3{NN>@Jx0әjtE^6oUi ̷!E܅Ip+ ت'j mv ߅fm5'2:Tg#~;EnG_$َ.qiMXv͗c7[4  ʢͼM18O&ņ\KA!~Kk( k+4mɺCiSItvlbf0Y0Uϖ D+6R;vukb ^ޢ¿:`OO=6/iIuϠ5 ,rVh%w"%j} SUjصQJ6I `I3$X4k(۱ {WbQPcK+*QPb_Mr3=\zJ&0#7ܥVܡ3j^ A3?^jm|@ lP`.,c^(\X^KiЪmGf[É Cd=}Ij!`|`p lH[Obg% R ˨YVHA7淸2O_>#y2GJfg@^%Cpw*76R݋jtgwvzS~kʛ8TC;wK$+`u4Cڨw I`Lj<&rȼW\o?Y c ND͓T=F}s =:V] ?K=ܷ6,$vQQ]CG (HJ*/m.ɝ$E1 7Kc@jɧt(ٖNT%~4#+dk!V&ϫ%H$:{Ʉk#}v ]c&ub{Q]O16@6fYf`Cpwa_wZ^[ 3C滼k#n3k0&~ ,q{qsmb6kQNq=h so/V@R-+^#IFTi3: +r,`W8 q4s$A =X06f0\V30] (:ó#|$SW:v} ybuXxb҅kr3?"i](v'j^ᏺJ˼˦v#-JlfǾO !BLBbqD ^toܰ`;p㮲af[*VRD\E$~6i6YU 򮲡@ȴSF1>p'z\1IR+H/a"8'#[\EԂ<ީe{Rַ 1& o,<SE'=OR(?䙂 #$WC]G>,(MI^+rV"l&̔i!Zbekɝ !fA7Ei ,{%nHp~XqNI[[w)AG{X=ҔZX>sBHL Ty ;;dWS7NCGtsc_;7JZ.*bgMBZ*]B‡j0j'FUgӘ5D4B|; zP ˍcg͗RL~zM-v9-^> muJ?ؙ90O*j"\%@Ty̲7Nu:]>Vsg+<5cǿMjH{HO }Fs3+7 H.u=W||(H=f97I${3s1k7 BgqzxBԋlIn{Mtפ^kàb#T zݠ\1\!|A2zb ^\*X +xfc~k_k#h_ d_6h_=sfX?&uI:NoųtB5FgD92ʟ'k` i%T7"T*)K7O]*o>.P60UyPӕJpNSUc<ܭ:qA$zk%Ȥ<+7(tvω򸪇s  ȣk'-gv|h6{fsq@#5;|MnOITEAwS$++P  @gJNӯrɧ&%LKRf6+e ?\G7ocZdPPbv\Zg\~ T37 Rq2sqeE=fx[$ -6*r_-jk\*;pً$3-5 7h0hG7&W-pNjoQ?sՒ TSIа  >Uj$զILd3ۯCu®GD7l>(+(tBC%c&rͭ?#ħoWIRNy߾]8m#Wi QjW3wKk 1P{21Lj{5\~L^ޱ#DXǣI U[Ux]H7}f]m=(KN=fo[ݼJQ}!ɸ_>,w%%^vq ,(&cvV(Wj1,@!ΈMR G@]uM^KF[:Z4_ =O8IBrlSY( '! ~2 @EzF@C@M4=/Tr.kgmBLO@`Ն3 ; ȮYb, V -qU cxNnuһ`uBPaԶ'uVևt[^]ZѹM*|m 2@gh{j<],X,rN&viG?4#NDbxʯhnFB͙d>\(䈑R$z5x\%Ҽ^F'2p腛Ojz\л^$t;&4T#O*դĨC'AEm[\Ɨ'+ko1*]rx`n"6`hQCՕj&00)#PAԤ%;z{v*6iz2\y }pD =JyRk/QE.3f®4-܂x럾=Vv%vo nA,:QpgqbK\7G񴥐uz$f`H #$D6U3)24ibv#0KJ>&Gg᳜ njJŜ%AAyКw _O/ݰ4(N+'ü|U6sTLm('f`0#E D($)trtu S3|=q@ E6Μ "az 9Mb^Ť%Bq-jp&3DlqOՖ(p-En;!ك<>9|tx5;SMן Ycؐ;' fd mi@BdRQƈUڛ'YN|HB}\1`1{Y"*C9\8׏ڤ߿eǸrʲ&m(;zq v:!iF ߔ j5,#2f-ٍiBF #*'q2jϸwpm QX~]WLu# L:G ]FYNX}XwI*?V;yo N&Z%;9@muT1*.'EE3B@S/GJӉo@?^\bοͥ66ۂ ZmOZ_:}E;hium6-7*K,d]%EiۥgVǍ1Tx#gwSqޠLy}R{˝.z$8YaڼbcTWJe"+&co~Gg(\k`$Q'D;I#l8>i\6&*ʤmx0 1"h@jqxBW/By5`F~ WRHyP5 rcr&*POS(A8rWj|7O_h,x;0UT0.v ¬zw?O0B̄VDurh2!_󝧾-+!6vsen@/rm}#G/Zc`bamFl+\?0\x5&oszX<T[=px$o~[8/$!\" 0tnK axmk9oZKJ at[k7|9kyDOs.n:`4y}~-_)v#zVdn./X#lj ҇*VO*/M` k~LK*ճb,4ܭ`qz&dwtX9)t_:E$\ܞpcYq\0ޕÍI nf]ZJ֠д I]?8hPټebp_0-̼CqY!vX .kAZ!OiWk$g65Ј7 '!θ2| ̎QG[VlI^['Tf{a>ѱiV.I#Sʑ8/ҼS8_:襝 {C-ƪe!hk8h咒\&bKDrZoii3 ؠ&KZ4Xj; n@҃8:—rɾr^Kb6v^h#|rSa<!(էަ'ɦ1cg:ڈʋ* 1({k̡Dk4ud32ۯ.SP*}dxNC L'Zq7%`[}lwb &1}ne~_ng³ /TNw~ο6Zm};#ஆKMEFyELJ+2jEj< S&Dfڡ ɞ 6 lۖ /lw$N5)2=;0 nP d}9Z;2,И{cj#l]`""8}EɾagǕ_x ȽyEݝj H=zsN,ŖSޢX%&֕Hu ?;z d*) 8@jKOX1{$(m2R~ ˰y{pqUm7sXPbRVxDI$S* u2 1SK[m@ hʵ}6.<;0P$4,-z6ޯS($'r*zɢunj>E!OGH3!_q 0KpPbe|VH! rx*&CƩym)R7SGd!rY>LB,?;dZ +--Kfm]cF"K_Tw^˿)Ylbz |^>tU xQZ|ЎpMYr%y1!MϲSl&+Lk!8oeb2P ޑ0";4tizxoMN]ʅb|ӲX|e\)a X9&VFZs`r\V$'ف/A WC2 ߛMjE9,QB,oZ0GxӋE]]QXo߇s/t,fzH')ӣÄrWрJ7ĀYY?;| 220UFå;fA5(gd*hJ2 ut.mXAMm83pHn*[gaѓI.D@ilJ;HpVk0h+6C[_qiؖhM(S6t>HLOShhA Z1Cf{RnyF2u7`1mS -An!d$d)lqz| @PiFBH;.ma@E`! Դ#\>JJS#.`3\ #G bԁ_1#^» T)aߚXh;IfoJk-6k]BJΝ|UǪuX\'O>n|ooh`H *$1yR۝=ٿJxUc 쳹P ׷ICv3v.!mW8O#5^:fGlPUCOupG-)ʵ<6X`=LRcuj'GWpTkB%f@S.)er&gÝS# bThe's<E&qp2>UwsQKM4YSd}*2Et@ 68יLj `K> pX8dZdك \HUW_) ZٻPZ OL3 »SU/Fu+rփ=Ksť'0)-/ /iyh Wh(Ȋ!;գ x!m70K+BbVtg$&l$"ԣ֝<'=\NV?H-A-g9tUsRϦ߲]»ALQ UR[(-S'HO y.֣ $%` lqHάUfLN 9#A*cޒ%룶KT9ܟ\jkzwO.:6Tj0e<4`bpyW]8+bmX5 h f5x6`ou~DEzv6#@pMqH S'mfu> AU~nu`XԒ]EBǍ:&!8V-5n+?5CH%Qe4r\4T&Y7IRP,C䵩VnԂ@8$ 5֬JR.k{;^e}FwISԳOK} n1ӂGbWvv"s{6܌E3\.ӽKXs=u.rK+ >, (_?9kp}İ)ʐ;ޛZ-{nq6^ +>nȈmy-%*6χoKn:{ą {R!O'T\lԃ|c^ \S3l'xy[ pMok@. SsIyEmZ!02R Ke:C\WfIGdIz` ]oLy T&  1e1]aXh/HDl~OܩF$nHl,%^EGUKcdЦV9  L1mZAx=&>mh_=&fQ_YhE>f Q~©Ӣ7?&9OK3 *9ɉUeͣ{zm #3л?=AzYBzStnw_:ʨ1l1QĆR=,Hٴz'q;R wgs-Wcrbc`,r)Z~i{~v2'(=*VBb1&V5r $1" dQ= IC@zLALwOeg'B3CzPhc>Q[s|Yhv%&!};M/ 3PPq2W8.$;T,7oHyih8{'#wT<kKWA\Y:]3w%$4foĔܚ[,k yDCDd+#c6S].H7zk'% t$\CR#jR5>^!z6A`w1Eʐ ꞾnDk 4 sN9ۡ1'Kk*?_;ΩA@~_SAyi6:Awk.rf6! xU,ԲA2Lv׌ қPDDw*u7ۂZic2´7aIL[rG ?uVRB(A,,ocJH~5咖}%M&(&#[oNGe:[L]Q2]q6rR<ugn4+y82=G)->R hY%lVãW{Ęo2Qko𨢥@~=-vP t.{̀ k̷1;3"Bl4{4U\B=![n4wɚl_3'B"x.T"9UL(.n9ΉA\/ 6X"󣰲DQ,)ȥu8^ZD ;a2@(w>{㺻[`:V7p}"X0LۤX|SC&5}m/tɨA mĮ5s$0rԘ QA#MJ-֋DA0˗C꪿-km.Hjڥ=# "F/JPfǐ_ uL9 tf| Bb?U@'BN8t;_{kGy*Rٕ>9߇tF] KA,d2C_XT3 rHMqMXeR[~2^`LjzM 67W#ڊ1jU<忠5n$u/eȾv (T# `Hh'7bP#[9* IKPSZusI%CW͛ܲ %e$w*_2o8p(͙u٬1Hk5늘 dQh3rtHC5zTW%\X'+@'3Gۃd!~k0K̏pB8"u럠> %Ӄ#:9>0/#ernu)'(JX<0R9͚yZ'U7$L"j;"4)'p|tר>&͆h) 5.c4X1B Wb$ѫ8 K]k0f%-UsdͧF .6mV= fgwX|'aS(U[ O2ˌV#82?@Gk͏;~&kaȜ[\'bvl\ *7%@,H j;Tκ$"3oofI Y LpeIMXӢ5VK]X0F? Coޭ@\F-o'a:'D ?IX}bo%%s%E5KB$%XV 6ÊKw?2Xh a~@5O+) a@Ҡ?{51XH@IDnE| OT:gfvհ\JsFSsH/"pD%Vb+ud|Bb@Nm^xLX8MG?;R+A3oY'^yd=ǛW UjWg\R Uک]`ĊA##MS{~<`ehȼ:SPhrq/l.5n7.#0 EGs 1Lõ^Ϟd$ ܛӢ.ˤ t[bǬv7=8z)!(=kB{69;CKS+us׃z ?\4\Ђ ZxnY %*rT#4έA;^yjQĴ)TAnuXx7L7"ɕĢN$jo_p`mH( (!ڌ|j)6T.ۡbr[Ty' -$6mKDNa* `4aR[*k SxnzbqGg~TX LʤuAo-kkX;RZ(ԟ"x\IўhmēʳM?1-Ŧ) 9A ǃFf*l}Xے*j# u*1~]\ iI{Fvab:tISDF-D: {r6!M1 ܤ[FqEmVY!ض7kZ[92yw3elLpScSGKŚ}z@oT,/Й;N f6.xaWz\6ly cD(k,ei iz9>nܨ' G~rT"r^aFr0ٍ+"+%26J ޅ]NőCLΨ!oڶ:!X~_u'm.3ˈ%Br0УW䇰g$3_AnINU`KEQPur^q)dXm?_Ʋz(=T~ޤ]vLl*%m]oY*c8>HiDj\h[p+m3~p29`^9 ^߳v7J ;H)RAHGڰ%m ɗH'wfcFGe>66V## mE?^jWrzv#C~k M#S zQ - Ԏ;71"B`(^CCan`/(2-LjS(^wcKY޼A>XW6BDžN`ӸO X1<L:CB [mMXg8Jǿf&dQ4ҐɃ+0U{ft8-w8<zBa>sK: nd3Ӑd5xۤ TKO5!sI';~6ylENO}Z0(g-3 Sc"524c(44n|@q^^6;.YOg֬ |쯾34\;*%Rҥ(S}޺*ۓ.%<N1WEf{zs^+p KD\ݡzĈ!wOoI~hzp@$(4 I.o;X,WAs&- 8 a-T j+"L+cF}r>#W#+e)A nOWxgE0&uXYX9GLj/ĀZ~,VJO-̔8Mi(X.QSD!B> CY|06<͢*Jjfx?9M~ȝd7VQQI RRy\1O[2)ŷ射M_uT"Mq L㩞bhl /\5N&0S2le| V7|~bHM[..ȒR2tDc#1gu5ܮ瓐`rqD6Om~-{A2Gx4\2gar#X-*uO(<QW`Y~5 Â;)CKQs矹y Y^$ׂ-!rmYB}MCX$H&'"ojBkcnL{DL?dKJK|xb'yMJNZs d뚚z|_sЪЫoUloǕTY#r>F충GME@z cSۢNhX^#aϼD z 0Y)k8F{D.A5p9<7sRǪgUْ#%`h(b: 3 ԆmBg,VP<1L£QA&R]o)_s5_Ut:w.LpXZ/T~9\_vt%Z%5u!5F3RIL')snU *+.$x t_Mn2U{_aV`()Q*r;2hlV'I:B&7Zi8hi5z$ģYCħ2}dq"/QO4: EC?F *-_%k`2Zs| | -4 Ht81,})Ckv1wmS'4}/'1ٯg,LWoUEdm z v5@ <^LqNʴ|x9dͨhZ&`7@-*/ni\JaWSS1љseY?*C"]f{8yPP8d 42jkC5ofk!#c WhRI ˇ'q#0XY])z E :΅BYvrH8en.Dr9BB@r JS[2Τ2ڄ'OfF)ڽ| SOo A=ǎ7B B:~9RGR^5 4xz>4#p[=Doei>M+5ɞ9#b.vМytJ, VQB٧KkݸIᾓN"sew}x&Bڴ*{GK?6F$xӘ1'ҹT{cx8alݶ>4R3BƆ̇%> y燶x:!mh(|PyO^2C,uhԻ`p6p}m\l͔^F BE%{/o+O=]vdži1pG.I (J ) 6˲ Ha6cI%3Uǵ;l-d(K<椕+ڕN*-WSծaN0Z\"O 6Spe!0mz+4u(%E~cp+А~TGZom1^({H7K7Ƹ6O:ṕ-@gRυ˷mf-B]Ce湧ow-p"J֘Ɠ+=bz,wJi1%eڒ(x3 ;vY%ҸpsS/0/[/,tw'h.&US2]BYv3&V8<)D$<{ ki~/p}zxu91}yR!;"#AX(ֈ\lnQG26[:i~Z!7TboX ozǼt,5k3첋b6#t+ﮦ{5ᥗ>XV r3gk𦐆5ggRE /NJk7pȓlhXs6;/y]wE,ZhJNg +-elːu˞*P ;Ui؝4`Ô3҆܆eKyvJ_ntȷuUpήRd):̙gXJ=jQ H zs <E/#,'bdN~&+!8Y;?=ڰUN. 8k)Ӿ$&)T⣛1[2KfvL&%脊xdp[lZXEiY̺$OsՐ ;e&C] U8 amoyCt,| hUC.+GL_mT9Z儊#ypX^SX훇@CvPAL3GRfГ(]p_)Y~mW݌ad)Nga34lIҀ l^dҡHX<#f:JFEUcF%_p=n22>>J՘% O?1+sqtO3%BZE95h$݂!=~0>ז눘Aű.5,kDϙ"Y[?37Mvno2wry&Vd&&w6V| Sea/}]+9=(#4bj5sMzX? Ѝ೥o5wI@zׅ=Sv;^5Cݵ^:2~q@h ; j6zސ^tr!02)?J 7@I4}+ػag#u,]3;.zSƞ['|wٕc ύuʕ0lktEWpnR%kˉOHzܢ\o a-WkxazlhPg}itDuГe@T! we_p JO3*]ت;)iIh4{6&e8e= 2Q 8BO6ĮewKKq=(0s-w=qprbFG|SܔJV ]Wq/P߉"ŭ7P"OdrlcTzv*4lճ,K-Ǫ l#[PIЀi__,T TCxRܓXU@OgHU )D%Wz2iɌ?1\+v헋E9xQ A9Vh¾?d叔-v"P澸.\QdsTX;@))32Fe(ơnQ0%*Xc]N6?֥M_Q)2H"T#B[ӎbAfRds5̞ab[ -K m6|Z rX/1 jgx<yLjά-/$<\Z|g7vý`'<FAD%L˶M_O5l"_e쇪'`Xʱ9(!z:[3a'?JW(ً؜Q+K?M1_kw"%t)dKW)Dy k&rVa4:ؐʠfϊ=$& ̻1U~}/l(@K-?, xa,:OKSWaBVuּ P!qEآA DHOG2f5H,LIz:rU'D?z`V1u}YǏw}]5xO_x65 ʚ#C%jXbKD&] h+hv"Vt_u. >Y;!LC v0-_~Esb|xNغ6W4Y〭S?x +Aо T6_ )lTi7jfs W”3uOav_ϗ!R#BbbJ M'!3I%;>.R=.@yPᔆ'ܦ^1"O ܣa-юE6$KoWglA)Z]vш:c`|YlouJ">cSDb+2NjhSo _oNoCG'->wt !͹<44Gۖwg7D[?U5cY~JDStqZ>>,]QҾ6Z;wO]Bn9n]4,FEei")zaM0tf97 Q|3wJGcl[ Pk2U8}÷w;:49ݧN' -/9aUe[0b,A$qŁ2x cB?w.U}LreYOFC~T7O!K\4`JL,GPKJ3'CMPփd{$] l w?p8 kSYNȶvþbV0o0=qн$G>=CɃ5BƦrW{{@GPSV1PtaGGr_GZT5d||Gs}J!xPA/y/ L- 쨭Th:ǭnn<1xf9ٲ~FS2[3T+L7++`Cq~l"~Sߥ ϳ&AU`t<Zjs i + $VΑ(#;.FmPs:w );zԒe3p 5Ж?ho/a9$pF#+3AW\Ob'ݧM}mfFaG[C,UPM o~C,,ՐmlCnjЪOXׁ|`Ԫo#G˵᨜43Cz0Of>!zwR?Fv.\I2}@AnuO[t&Ыx M!łNDfE"-)%VndIGPljҽmf~2R)YzdsLywYOa [ڞ;LɆehR 77 BuwFιҾbխ)k$y -Qeu4_{Q&h|jTde2\ې+:&r@΋;kʫV 9[&S"yԤ (jmD+^5@w`;Z ~9 f 2 C`: P?}ouu{;nu?b}~NȀ8QxЏo]_`w q`CpeTp}M]iЏӢ46܄p[̨L6||VhIAx٧ Xǘõjf͗cwa" K㞦P]TsB][6t }TW]U(qRneV(ry^b@~&5"3%Ut[jQS-MS&)R:QNeH.~6̺p[=l+|. wOckҋזFNq!0c(pC6:R Rhh=^f he6SZs#E sɰ.y:M# (@ȐTxK+c-7f}ꡨ-xR WU>`j+/|&72M)ʡb:n4՚,(2M*]uZj=n}_rC%=UT? L=cyx R*S/=^,V3.8ƛT!s@l Z;y~AZ 4M_ ^R^8Z9jחL(zfgjK L3ڬ7:Ҡö⣎7-,1YHV% ᬰFøZ*R/5GkEӭ g*Κ " 0r+c {#@1Lei{R_'Dk(Gڬa)PK':ka&f mqUB>[QY#e]4XoY ["zSfZͲޒ׾mr)5|Ijvm!9t@<(iQK2ֶX\IcQ6/4<7*fD)בpi5lAl/N<)/W 8v)LAG2r$ ۡCEW1zH~4B d6ƲhT}#zjqoS MPY-DLptC&w ܯmA]vQM!؅mZ1U/ȯB(ҞoA$ vYyMkt"ָYؓ,LBc^/բ#\僥onE>CTL+wMn;U ͍̮;罼 2WMu۞w9Oy VE<S j;uA!Z? ^!h.Ed9S2[[Z$<rŨF ܊ WGKCcnSh֎@tt^݈ԃy@;cI XV  F'}T)``,Hda:Wy]J^#mod7*p 7[K}Xէ]n*ԗǂCT'2Q$ [c=ȭpeO`f8‹(}WƗ` $l6fSvl}rEW*PppRT/ {TavEC|CX).%Z*Jj1뿼t `8귋} iM |@ tsyy4Ed~J7qInzy믟iXl4U\y&Ɓ#ϼFN_KZjXۅ7+|d 3GA#Ʒ?"M+jO%>?_~ 9=FO[wEoqHٷ ):tV4IK#@}c'h ' V2Jc"<\2ɡ4(+EуujBڴ 1WG6>"\F;^5z"|RЪwEp>2R'~0]ƺﺟ)gsC;;(5DekՓ`IG5B-k9їh?`e]HbQ!BIfn\NDLQ63')Z":qx`^VqG˜ H~j&^r$i䤹lu<0؋y[2fa!&.0‚yԐu4]b@.ʗ>Honq0-fa ?A:<>S[x)-pqINGT&>D'S'2 bVvYLOH}{PKOTUTXtv=ej+/y] 5*|<Й"'[|#]ǎC[ێ2pz.&8\7b[E+/;`#CYP*go:8d=&8]Ce:.E(av2Dv [īGgtM6$=5EΩY*q&jX 53ߝ`lcM+4MV`WMa2 a׳ $Pޠ+CL=TYPl㽤#HyA4Kt8hmE>Y=OE}b xT@Зf*d9ݴ/VգfZ]EB / N˱  7zǨO0[:Uw neHX 0]bd ̻YѮ=gd:\~H -"1Ev +pX^lP&GU. gҥoј\VrA8Rk ])݌IBTO+ߍh˖cZVhg&{\EKŀDf?ΟO2*MZj%~H5[Ud.m%hι3֫ /|܎f\nQaOW,< hkQEvS >f6_U։vPurֲ]"nSAb&X^v4oƔ(XLႽhK&~tz忿Vq"IJ=؉@bv84= [lqsnp uvxHOz]#ZCXB3G_z*qM#ժ65ؑ zy`QZ!5[`瘶|98&O@3LkDL2MP'55Z!)caJoVM|K"O8兎!XGDL/U.m<~Vl>u/G)EoG6<7 7,;/I!Yp#W|g܆hHIa 6`N=Wᄨ,3q]BeEM|ͬtQn9L6cQ~h麷*} ZB"zL-\2Q\SEߎA.t6,^Ry\!7%1sUQ md8TS&5B<>+)hz ^ڊ#:oVgN?_cx!j3s67ɐn#f Dx0TVmhh%74>)ּ|ԃ3eMgP~:fWRQ{7*ݺ[UnL$Td R}< -::H=ݨ;k.HˉpvT/h)aK5^ZW1ԇPw9I,FZӗ>|i@N5kvw䍸Q+1E0 bk=biߪ f7 .'zT~CHc4T̢W5A+BbO =v̙K_Sfp$Z":]E: ~p@A(- 2v¦!ۍs:vjSJ,ƥ*_2&md6 0؊R') ٞ 06ڂ*dAє-HsWžhO9[.Ynf{j-Ƒ0 OF![zȴǎgڰA On;A5 J Ff$ICWgɪ,OY-'i7\iW!hэx[e8Bwj}~mQ|voS<>iЏA%} ^ǚ49<S{/A;ĘP-֥$x[ƈ`\ބ<g_ĥ44*ؓLJ!H<9wيTM\.LxaAB;A!a3X^"y*s[G|C4.$`ǡ?SRb2\&A|bh`SW,5;̒7c0@^|QeP^Q1,P7|Lqn4?ksXw?~8~D)_, wZ[9tmUh<:,*ܴkK=눾^ErC|ӝQ#6dRkn'- g #=ĮgAA;{cx_wzz +="x68-| ,׶Ԟ&-l]#EA)R>F*0pqavo7E99{6?Ni*Qi#e˺'dJmi/%^H$)l*H\.@ h@"vF"]Nu4>%jCC= k?hM} hס"2:M~T\-i,c'ת%䙽RGԛKP9졤\E&k%n-?2h0 .d-{,C$yT7VݴMā{5[,kp(F37 s7XR><߼LeNv50Dd v --toÌCũ%n^8< (K7%vV Ԥ\sLZi)\yDAL+E_d#uOKfͭZ@J_xgu5esF@".\? Puu3 `1pY`ce3335aS+}8e%ݭ x85KocB!;Zqzl!W"Fk8a3ѠzP|’@wHTn+v@C$SaV4Ĉ!CDAN֝ NZK;:QqL=~ǟȃXlo ?0ٴ+HuRfyZgƮWpPHMole{VDoprm뜡4 BdQ`|R(F҄q.E[#pb) ڻa{krR#in܆ uh(~γ' 8N#- j^3u!B(i~cL΃䪥 q\NPưJ Z\oRaT/ksοĘsz[_)ػ}Sl@9WɍADM>*6,\l.ЄjiH)Kyy`1q>{4RWTѺW^?4D`E8 JEUQ V}7PLL:=Y ͂S!6ݶwtAӈ1$T`r0a!F5oR(ǐO PA/Ͳx1UBƾv׍(AfnWS h92$xEr6f{|Iu_MGygiKP.%Q@JJAisyNph:lZ@(MPh1@H*3z:x(-rLRZ OmKU'=Ϝ: ruo`֐hY ]E|-Dk076}%\Zs4dkT`ھKod]Oت%p'q? n &yc`I"+ Dz)5|۳0 1[p,wD:o8w;&-㈼W%fu/uhn8wp8B?hqT*br=.{̱}:hoz Xõ{PP2cѥڙ\A9 ̓>4ɠzsh6۸u4pso,HZ'͚Sk~DR®a/|t%b]U;h۝ ƅ?Ig, 070OND% Чxd37+~NJwt gׄ 13dlBV߯G+{ފ`*=es\$]&ȸAH=;Ds"\bS *S'^mdkcƴSΏ =fxyb֌?z6ħl8󽀮z4a5[E30gf_Ӥ,s.Q@2 +} Fx2Op,\^elc z?(*zD+x ;cN?2c]eh#%hw pFVACpPӛb2HrϚXhy4Z,P(K rYuR =Y"NMHL^/0Կ,Q4Ѩ۽.t[_lٮ;l=Oii9:\ m_"4ھ5x*Jq˽4#fU4 TeBfˀKj4A#VSrĿuK80_J"Kqy5vQd[x/R#?)2?N KPЙ'TkDw7cO+x#Re{!]E;F+"/g(4%N$Q%mJ0 N &bRT-j1LRSmuu\tUV/e2m&l ҫ+ F'Ձ@|:$+9<7)5D^*ʿRU챒Nx|VC>gaFqF@xuW\\!aϰƌxXYM׬L:s-d?a H ]D9w?‰x F2hX O/;@16!Ͱ@M )[~t%6x͡SCbo\V ;] ]i>>t=e': y覚c'39HhcAT)17 ű͏>Yx_V&s?Z|}ڴ9"%3UN (pV%\K)D#~ J}U mL7 K7x۬~j!Y!vΗc[W'o􄆐S2+yg`b|=CJO50?\ dC'ȿ, u 26]UmnEv"--ݒNJd#n6rF:.,H*@B7 ȟh.ƒ쭈X[9p}~|9zDHw7jݣ#XnY ^AIyPlEUO#ĹdT8$m z%vAyjfM$r?(_bX;vPG:j2iyA̹h*$ruE~md M Q6xT\,#hq ;' )PX{FRf0=ࠃؐamSVtQߠV#Leb-(\p:i/?e>5ѷ/8ֆSh Z!)1NT.}J^֔|%>G0)3!ȹ 7  xBKkIՊٿJ]yfMrbi7x-ϼPvh54ۛ33Q.[ y4dHz,q:mhe{liA%y{% nBko|% #ku+Ze)s냶ih(rȓhP[(7dфI{ M鴒0GBh<512-~# }KC| ][I6zrGKRr" ATse& B<\ܘ,!'tTO e^+l-#32oYmS6z_|_S!Oy}]hI8j\C"ԻTY oh7>J)Kgۭ>=wGpMNN5fw><>DmI˘:,kgzaJcW ͹~cvbV[ľK^}b! 8 q \GTJQXl@)=FZ,cr_1>B}GT˚{B5=7%߰rs}D&qfENn#=#+ꩱ][&4r2 *Vz "9{dak#1Qy/=ݛļq?Ra莖ni*8%W+WSZ@W:dQk?S=; |]1 ҒLKʩ_,N~J4:v!xIR,._wܰ2VX"K\*,c~#_ࢱNzWK?s[3SZD6zUTU2;}$LlBoxl|$^'AӢ^=pzq|a/v{jV@98~,fڄ8>0og_$cd%| !yV" RcC-椵Q"V"ZJ31WǺ\^OBm u0_!ܑ@ܳӕU:]3.9WAof]~Rap"fsOE*J@dU".c)Yzc"$rZp%m[|TF7\wQx#Fڈ`"Ы;$\oQiU |4p-S{b5wJAR ֛;;R3'jWπ3xMy.L| Jj:#¸$&~/̎B2ĎZ!_7#7UWbƾPj); 9k|AE0|#|p,u ߰yk ImK*ۆ[||\8=-'>NS7}ţ 9TZ٘~LB R_J8IɤL@DT/v ԣưkm]C2<DN/ )+HZkO77n6/jWb Wb&{pW΍ҩ;?Omm{LF֖Z~(Y nkGfۭ ƭ2=.D Qe,c'2c>gDKKl(Yp? U5F6A4 /pe9B=" )!yP]!D)TC Л *RƲ9_tUI1{ du?uoz+2!3'OҶYT^Mv+[>M^M{S(Inwp2eKC:M8X_5}DlJvV6>2<]D̵lܽNckT?uJ`6o|T1 :-W 9W愹pl~icgO,)r&`Tћ *E Uei &J%erYm{cGp]?GXE$#rӤ]\W4g} tPx*ho%ʘ6uIjHY]+a 5+_RnAhd97 dUB eꡮkk&<]?yj׮=fôni Xh1T̸I5d1'dao ct>A&D(a9n>P>+5r<2$4ii?Sx1Fh#۠GwQ*-_K+4t{BC0…ќY )x}h.ow-G]cD'v\+uM˝c_n|/Up =,qrf8ӄQdd([GzG/|Kõuka.U(Bm#;uG_طYR63sW>*R; %6,oB4@+?Tǁ+vl kC!ik3[!eUz01%"+o%!1@Eg<:쭡,WZC!A"pQ*|'=ҙ)ԑh:1xncH) y|!'QA(|{ !1sFqYV]24vՃ®$>O(b3C##*8q9[yp6S_wipB\a( ;(? Pɾ K?7%/2,֘&lg5N"),4,aq@')>vPw;WI\s+M [!kćG0}pj[  +/<MyBs|7P)-'2nyYլf LzUR IG!kAz |g: } !d@՟JO3RI1}i! 'Qk'8kyˡOWS]"!-BfS3ePrHk6Jg~cfQ B_Tvya¯T<݀/I\~bm?PXiнރW`>)(]Ho-dUߙw^> (u:ll`!CM^F_om{_-#N3tFB ڗnQ-^dZ)( &9C`˓)RseUb]cEicO0vlꌇ~vɋy\o&Em`?`腽c|ȷr-=- sA--8%ϛ' %u\_.Y% G.*0X[EǗ0kVq,'KHCp/Y{zGRy;`lWl AÓzRTҏASD j7Ό:|fzaq"T۫+AO_l1qP6#lwmTQeٽޕfbaWktoI-:( }2#1 !RJMrޟo;4 ҤAFjZ%qklXk)2VAc~g *gXv=*v!,ΫA@j%6鄻BS+ЁՕb#չÞt™?7m4_SK*5O0{,=]k#WJZFjӸxю7u)d"F/pI+2.Ѯs+,kij^;oN'^WpPKs")' }ͧ^*n5 Âu#>s'T(̑B[ #BciS]wnHՉWY3j眬[OQ[/A<u$yB g~\q$n?/s"6H]QEYx]M,>buCjrޯs+ 9٩ 7$.z1Jo*ʲ۵*;X 8T7 \'0qUCIcm%@(ˮAh^uA+c$ _cgGOaH{ud.g..t:HqFZ t*j"vbK;;3+sǗ(e7Cb{ UT+spN#`REɷ=DVYX7Oul[yd<[fys!?ErJo2|Ω 3ՑTb ~tǹ+HU j ҪS[v PYy8/W3!9K˒56 Z)x h_UkнuB(8jQn +!-22D?CE;$0N%zqNTg,azsgLAc ڇP km!]t F"f/|>[*#=yt&< IO1|UKB]v%(Ҧ"y|_29ijU7dU]~N+Tk]5̗݃eEkFۨɜT٭J]0$K\ ͸Tuy8fV}OIOg@$ͶkS)Rd"Nj+ngW WY_@L'n5o)5 `[$U/ p Mȡ۽)j?4~:4[-W(O UHʖCL2Y8p(bH ڱez XjY%< rX3`p|a+3n[_<k}uFQ65Q\rVw BN/5'''L {4 1ãck"#ϸ.3b-;ʗbMjjFO`_@5 5I馬.3?#$@g 1ɪ:@gd# ,_>S-8bcluf<;PhPHl4A+✹~74EE;J%Ww G*dOQom[5.6 6Ԝ̽2-NQZ r~u􁭔7]m9`\mzKui$Z^ IAD5!2N.A6aiCnL/Ѷo"{ck-{ĉ3eQW1-'-M^s'D-3^kDZ̋`"oNTşL&[ێc|㴤)K+NSB7yN6OI4vaPJk!ja['zL"5i "q&{=1 ܿ}mq>D~X?15yGxQVa(- vd)c>jZ,8=A=墙آA d!mh:GD]ZH"bEpn *\5wxN܅]SIs.7l1:pZ@N-GB!3=\hsv,<*/LSNd:Q"M#je^!Sj圬(}4Sm#OF9G1b3IOۮM4$d'NF^B yq p!= V1ehZA@ETƓb=%!Ծ4YpT7dغV '8RQ|Αbo ңBoŜnh"llΰ3WQK'!nuiW*UjVׯm[ADޖ̰n0AVcG :na7I@/cN vwy(pukF=/t.?.ޫt6 p\E:98Ժ&CW]弑K?d]U{8 S79.cX3́ө*a]+ / ژj\Hbp-}L3 ,usv<3܌W@iFF[#n1XTFD;ze D $GeVq}.p-7f^ٝ->jM~{8͏-0' !:HTA3yIt)iTA;ۑ2й1[K,X泀@V";9Y"tmIݢ{RT`f DEdlPɉ\2am\S$T WڶdE|EvU^ a ;2ԼuMڗ *W͈N#7`U !~\f4 Re I7Ug7S}Hx7Gt^C$Dӊjbb \1Vwy Q㑍C(Q%W̓fi2-~ʯONIٱ!Rӭåhem~]y0*S恠j_+H]Lg\>gKxl0"l PC}&.Ĵb'Q$P!Ɂ)tD5ȕ>޼~sOEXѰ%ƞ_̇?Oy 4D̎EݎP7f9Q'3 0 B>Bʀ~+v86)Ts=Uz,r,^XD÷Į7,kݺFU9DZ C+Gu{uiJ)a 5zz/y,! 3~bg0'ެm P߼(.23/q@NlTvqVSQju5BpS^B5`$E!W?Il_& MJdWWզ^IWlgR\@~;(%uw{,ΎA . |]S\}r 3=2gx#/GXrCGt6Vzg sH.S^4~-%mұ&h\[3WE5r/)EaOv^-jTPiN[9vj6b&JgxK}툤gn})I@^ǖl2ݪca'?)+4KBkR(c gV&Z<,LYSi~`͛-61*TBXj>nBVvSԋ~ ?'7YW!Q˷Evjav(5*\`T.\SlZY(O/ mwqC76ǃ2+^^[)ߗNbvris"Wl뛹]ʒuj+}r O_1YYfEYzÚЪq0q~or:Nß QMG<2hVOF?']U>A`hkU[k:#oqwUl1a_Se!CB{/FQ5/;F/rLj"~.> foKxj]YyEω>R~-GXB=1Vl cɱƅ5;YG\ nb@7Ll3`2%h<[G 0`*H P%!-oƒ]68_f'U{\)Ġ ZkIR$~Qy@jAwo'aqTK2;AlȊ114qKnFzpwb_;r'؋BvwQlO,h\b4_'RO3 e X{{q#DVbO؇}ȵ@C&Y% `3-.S}ST\81#h.KZu_ p=Vw it> Wt,?Bd 5 m|OonO7Eر*Ҩ:K*q֞S-UNtxEWcbuZ^8 YlhةCӔ&C@3Jta*{!"NûQZ(so7Aiמf|AГa={pD4_k6\o3FQLك&P *Ya92Wt팎'(tE ~'@Ә=RIqֆSGx84f.Ja11 _LNIU̧w eY+Bԋ0t`+fy؝8sN/bRKPK8KKCٮ!`y66bQy@X!1[})07C\å&WNFC; TH5W|bnc[6M\|Ɵ `=FabEV8UUd*Y%+~Gפ2zJYn;; ~+'yEFy6]UECr}} qt2*"L@EsDG8%>Meʘ~K }L65?iM`:g4"{OlqaknRb-@-{no-eQѼq!P'mҢr-pǴ?.KXJ>*p?O50z:Dై H= ?]H-LhQHpN(b)k؍X4vؽxBhJxyB߶ʙF#Y /7@S)|™+TPdO|xo/d {ϒ%?;қݕ2`_v+\B{^+)` o4<2_>vVueV1Ԥ)o"vafUS܂N'f |ŐJxz`-L7X'OnS@q^pb׬&Ҫ^xr(\Qxw'JЮ[(iE$#Ha=]̱٧8.Uֲ \H>A׿RQZ̙.|`Pt2øg>Jh4wI ){=qs=<%- 鏏%4/SIȃJSESɃBZFjoobL!K5E2gPYVP|JT&9p"S ,Sn,m vxk9l*h>uX4 6Awv /zծizg%i19_J]ʓm"ؗ"O !O5#>[ Em%:l$^t"?@TxL~3.WԿ, My.]?^jB'A(s󒼪Ww?wI$ѾV_8X 0#6X B$1JEnÊ*xl*|p_SlZ@ +a[̡`-@d>0UxLj"9*Fǩw$9Y&O]ŋ4wN1*̮0|F;p k<(ℚỿ\mW=\Օ}:ogboQ7?">uR:_Q0u69#9k1]}U0)^P-Pk(x \)鱯UY x;ȱZ3X20\Cd}Ǡ;uSe@6vs;1;kH-h).?#HG򁱐%\®K{MȎf)@EQfКeC'n\;XW%?.;TȋP*5 ʖme~Rx{]j2LrjE|)2brR^a<Bx Dɛg{ыɠڀИpPɑ*%$Љt~6Е+䅴E(^iK@(r/_i-Jw{ B+@ػݾ\}6R'5kbc*peMl(0e_:4"i)A$(\Ovs]A-Ű-&$zCԖv&*H*0;P{ڈ(TA8r峜Mjǐc)d_B+|1D?쫞Ba=c1TYz\PKC: f\QDO&'BX :DeCvgBrn_~Du^T뀚Ӿ}9SGnX? `!ƙj{d3ɎQ$ >F|i*]?&R@NvUvoN?\rJߘ }@~ lOVG* caHqzqOn.Rdq%Rۧ`yi߯3`Rv59O$*>.4.X?C*KeeًGsӄׂ>)pWp j D޳~V>碇ksN#k!Z;l=% ë}N9g([p3v9N6F!(i$vkWɝVE HВU" cy/Ryg4,g QCGQ:EDvg/Hu\uQ(,XQZYMxi53A~B؛]/ Sa@Cbk0;VwFCv%H'=x{] jNoB]d4 0"7i= Γ0:q`fs>'֍$R; Q*Wq/X[,IW?JZ!*kܮ(2;+E|SYC#kzIg0>oO]m oKC;а8"1J65Fkg$<^޵Vi@. 'x6}} *ZzY+tx7NQN;7 5ui>fM<_n' |$CglX g ްcD 8¿HfFUҒsI ":R;]&R2ln~3p6Oꜗt\o +ҫbüRj 8gGh$iⱤە4Ux0F,ueO^ŶUrjGr@L4#8P'SFFސzij9>a kR_[J&z6b)}6"xMƨZ') bDw]> ?% jL%g8QM4jQȯ2wC2BeB_qHs4*|!Y2-ѬYLyr/jω=BҘAyUĻE ?e)AcsЈ}119Eޮ} Y[,ˑw'y)۫+L+TčlR=ךZN^AU 21(9h`S+zXcl*hzt]۫1_Q_Ծ[2EyUVVsP42vcLxNӷv[ň'=s.}sݒW`]G….\\G6cA):7>iW`#t -#FmbDӢ=0nϥ50r9 ƘIO.?s+5is=7ƳM?{No&$2eVg{Mp OK=oXYW|[r ! Ȕ K2JҭG'땉~~e8#\4Zef00'l ON*tt}J,lxpضqz-$ٸ| ;!`OXP_x)N3n|rژ._uZ5.&3ւ>K̼xU]\)v*9>uXo aF=%1q6[ cpz(W]RoMɟ 5Ȍt0=Е )&]b5w]*t=Ҋ8"˭c~} Dw}\,KDwcbxҎ99P^[WD O8bB"8-D_;;3 fZгb>Ͻ+М^,u[.;:tC"lF!jEosF6 VpsgV.T@9}5LFg ρiw$⡪^_t fLtY4ֆ$u. ?"@t D|_ect/ M/FSF,2U?I85Adjn wVVH}MѮtf ^K9*š:@i,8Z]o8ڐX/EYvp.3}+\9ފ~˲>{/t*冗 D=T>Ɲ7Ѷ  sٚ"qUJ$KrskgAs*j^ ʌ4|͡DOrf]7{Uɼ:: -9qA{ ¯-2ͩ$ ?ݔhd0+f !J*D8ZFSwc2! mkH!~ۍ./Kbd9a=R4aWKwso,R_j(*^݌Klk&rWPSng9_YʓO5$9<#46t|`Me  `.ٔ-@WvTqb [w$A:M+sES8*fi6R2 S#6G9yN4{nǡT+2^7q3O6R2v~vZ/ZH1[>ٜg%(s٬>WJuW:f-i," ^09(u30qGb cP)`fXZA!LΦ$wĿvbf)<;=tEE1u- U"I;P8>`J\Hmk<΃jZNӧi ~MqʩNי_`;?Z!.|E2o9}\cN=SҌ1v\u|Po̦YR'i/f%}Hځ 0P<Q܆|YD8+Nl5f,j1IBw7, /muWdrWʷn4/Ït@U=k搒nDkۍyWY.Þߡcc z]P*z VѷU(h4ܩ{ I +~eNAՠhP"=V3A-=T$"Ucmti |_e)%2 xꬓKjZ~Mk5{9俤yrgfE㻶H0IgωoJpn0KzDޫEOM.ѿvf-^Q`u}ض%)H\vKԪoZ+΄)谙@ϓJ7ijCk#;8t͈a?+<[xCǚ.d0ыpQ1Nu|6Tڸd(z$ 8ۣCKV^v'`ŀ/xZq Y |3ض82j2hEKz,!:öNƮpio.Ә˄xaـoI0PPCާ/po\k;ˡ u)]iH6 }on7Kd*mo u~Ni/UII Ymal,&q͹$ q?I#oUi'E ؋vx|Oc4ktjaEމlJ7a*fL_͔IL]@Mi¹Сo6SD͓rV9u>ĽjJf$b"e0F%M_e, O]fc\y M ^Tդ`.u_INixwo!.{R$̚}oŽ}ܸ!#,?eaOca_ h{46:xh nͺ|QA{])5|Բip(CJrtje>P;_=t'@mY[d㲺_ ʚ:L*UM,F2zGPIkOV!K U1vK9|xD=jeXթ09Nj5:]bGvyN=|Hig(ybS߄o1m}$3dzc[CJ:,c0 A5|.}SXl5MyE' $[S>k@3tٺz!Hbh=݆A?T8)ـf,Xln4~RG"I!%nMy. *!xN/΀41a$O7u4U)5טtɤѠ:'oc|bJt-GyRB$)F%2dpDSz/l`". A+'>3v=XuQJkGjGR-B;+HdyXCkDR''3Y2(vjQ4S1ySqbi.6MJqt)nw;#)Z.<¡NPM!&۶]eH覫p`hs}~~C(RY!FE}}G{3F!2(Fw4{%ޗf1ȱͣ(lSP6nŴw kJjLwtz}]lXCuFZƂ™Tm\h6U Pau7Ici&pE/nvoOgYل, ġo!Ck p,ً")ͣ8ǿQA~ `x)*]n*H<6m&FN~ȳ#]6,Z0v*I~x]gsR9sΘ6Pj#t@T;T?H֦m3h/U)Z>,(GƘFMVIb@Ҽ` Wpa( gFrX{;Е] S {3\Hx63=<p_/tP??u!a*G-#ﯛwŅ8Qі?7CيvBPV8rZa_T~Ěm#6W @ .Ż>Q wS xm\Ks}ޘ12XΛw҆eC- tWdj|"X50G|蘖䐹asKiEBK_)– #C\EX;@z,Bx $ѽ#%zn(TH$z/^}jѳd{tv,†m=kv߁-I0w$6s8֓JI)^loˆrWbMt:/ mVCGVDnIDLMs2Fƪ' >{N=h,R=`hWzQ*$هQeݻFus"m%nxBUqd g0uTl,c!@ bbT#(*Ihb kI߉-_( BDvKAU5==ad`; {E1~d9 I6-ގ΁IKG 2lͯEӀ"Q*][g%@ ?!|UXcnD(TƱ9-=o$Uu2FtrmB-#K5\ϕQa 3;'Lg{FJh9m@|l;*:}FhnP|A{4@_*P.-I<=dA+A$_AK vܓ7@-% EX)p/d+1g:R0DoDdaaDΌZ2 2;;?&xd#B /?z$\(2v{u2t8E]ՅLxNnSxb -+h8IaR>y8ASl%OLRdKtuw(N @$$IOpf۵nT0qǡ>P#Z9})J~ aN.&E4ƘB>W' |0I:+x j"܍gҊ4>XgBʿ/Dž8j2O~XkP`uӨ:HV|-1K"(A1c0#XMCkЪ5 tDMmv N;N[;*wq LLw%H4,6F԰%+, sA[s4ŀp .H D vlRes1kT⽬9feWA23kk$QX &TЊ| 4|d<Ǽj.So0q@Lq|QaBRZ`1?$}ƣm:f]~5߷ .b?Ћf>-헦Mu)l|_f·8+Ox@q-|?#-?yHѿP}NĬ]nroq+yMwNi1aJyos*ajEUê{d&Fv ЛMbh;ҋ񄰎LްcNn*HXL9*KI 3sndٚOtl_?d:&M&# 'PJ+7p1NN{#PH̒Пpd|8JOx EW VW|,6PETgWOWX$=C}Q_S9/Z4+^g<)xp=jZw5K+j杦rqH/FJȤtL^ʘ]umP/1R. Bh\IL/6T)W>x4֠53F7kS8+,WKRAP ٪pnպ m {Nwsk)VR͜~(m-U2>[)&7X3kʽWk[›y;w|]u*31n0e Ճ]g}UINf^'Y`zORkWHE2'xV׉D!SД܀5lcA -UGsKt  D\J Pwpvd.u^E+߁ [7k+ޝ{\I-^Ftl}O1m5;|ȏA^gE@$bh>;3[2ĕUF!>epV|k],%)!+cBͮb5gkac'& l=I^]% *@Dg\͑ H ɢѯO-M]8udt=yM*=]34.d6;u.V٦&h[7;38CtFX]E.uSs/8]gn=/;|wW2R1@zrh\˟GͥdFF{Qقdc`SV?gdwLhIPE]#@UޅG92e7ú(^}062e^HOď׻(5ۑ*~^)Wf,\|&8pY 1EHR<>{P偁5lsXbRx\k#;ogrDk9-$]_C -}{WirD~ 8W7ܣޢJb0~{ORDe׵|auyI*xHYC$+C<*ósxrJwUv8tRKjB OڐF迅]u@qLk:,5qHdRb,2 ,^L[Rͫu>g^R¦gf~q]: qҋL?VD| \~IP1FCgh?$b;KQ;)V}A>dFe [?t?Ǩ:"6;JY"vWaT>v㦴`+f!i# ;Ŷ(J_X['7b^v2%Nm+$Z1 8Je6_6s>m Egb~np+iMG@]t;c%ȹB{:2{7-wtэ#ͱQ&>w|;BHzn6#ihd.I˷NAO9DMn'Qf.&O7m }Yb!ޠsnjk_дCxg b8Thx?kH6?Uu$XJ#0d^+2c ȤbZ4QreҢUjqAx5%!|Nw7ԂR$%;m#M{aʜc5?UהШݾTh,+ rG,($7l"Y/|L''n2eipq_+srqaQl4kTDTe6pP|ULM}9!Zb9< Y#+-"ʋUN? ::'Ή/+Vqt&EY{Ҹx7. VEޛ_S f"~U45@Mr6aѦ^z;@tUL(]<^^"53Kbǧto(~/vaٹGNIW_UCH}['YxE.]XAL#D{nR{x8H0g"7CFv/PBAJXHǁG N6Cˇ恄_z$z`Uz-:d$baV)?'ial?Q/8&@5 >9a!=4QhRy ڭqO+w:5?g1ƒTgB6q,'3铍`va5TZh+}UFp7%̍c=Xȏ j 9JVXSz9 8vWv|[- -}gI?,L]y$yb\t#G>op ?t_3`B LϞ* Tb;l_B_eQ798}'ЈRդ֊ɴhF*ck"mppR-У=NQig LH OZcgثI9O5w[C;y zN, ]4LW&G]z= !4b\yzȋXJo0D%|T,p`uζ 6LP$CzCY !+9uq&1|kq.!M2WQ)`Bw{1+v(˨~z%Sw|*/CPyq>퓩G.aT?[Y T½0O鷼'; $7k%'Ѕo4a9EQKuk[{峰l;1LJ|x .#LC&F_jDw:? ]Nrc%W0م=icqtA aٍQ@F7C?M`9D+!̛CښӒ8U2|;b;xUZ_XQW٠Jj 15 q}ǻvkJ^ǭt:bxf7װҜ9je&dُ6.gh҇-x]ΐPH'z7u"rTUt푻bŤIKK ,x J6-֎1bCU~$@F*ZM X_` +̶mwo6K&aV,Ԭ7 RDyiQ:-|Z!EQy&i҃駔qլg=;V#%1ߚu`dԽn^ Nk8fެdH CԪ=L{hR Gk#o{XNv&Wf7?ûP~G)؛YNa{ch~5Ώ./ aq9 %ìbH[) briom2`?X;,TRLs Jecq HAWQ`ُ`J4 t@X5!My= -c~e{ׇ:VledS>⌘hB*P,&QBغTRASyqu(^q:Ag \ &aT|ɑ6~$=YtZr$~*a80 #g7A@x`'/5*i&\*[:京IYuW-yxih8iCNe#+>Upeo<Ua!FsiQ? E;(TX>uoHI숸f給 Fi00VܮZ+zWN syv2 sg˷A/!">OL_&e5V1L(i ㏿_sS*qMzu:H/Uc>"wEQm0SA9jP} KYPv^E}c\SgMp6Po9ٝ-x?#Jb]3E0Kk bM5CK25/,`u%=c*I)rJI1'S+Y:,yCID(!K*tZ` +_UܦV_DAn!Yh9,&@|w(}_"1{8&xp_vy4ϺtDܜ*jcS1 ͍e¡Qd7:5dNH,Q4rw2(8%[& jA'rojyjw1Ȏ] ef̋3fCp v33T~YErr qu?<4(v*]x)-Y=#G4IN$ &_*iBͷyGr`Lja5e-"1))*1Mz`@FH߄Թ)Sb>O9i7/ȟl51$(O$ L;#sVԛ:N!Oi[,? To4I 3Hm?PV5HiEq_(Pȍ7 6:n$/Q 9F6iV@+JCf\/1a",k;JjBy/L/TS7Вa1i_کXqn n{T3a=nJAA A4ғGu jP 8Ӱ rN12Xa ~kDl h-h'K:pg#(6E=0e~}2e,zݩGo!byW #k'Fg W2TgI;~^HJ%Zip[$vτAF;2vpU\'8jczHFj1 ʢ +tZdP47^fQ; &&QjSS(hSyR;v>V9/d^#u4\\tf RcOsc#4FpKZ͂;4jt f7X/UbW<Ǡ2v\wKDoQ]zwc:wnpx/Zwk *(O9T=\re0Ƕ= CӾ{:WXc<,qF[6ud`:OjO뜛'ye01Tv\io#;;t:Bf-٤x_bn"4谪~QerA^BL|0EOZx-)zǶY MKis#2eٵ Ґ@pPETN\&i-[ ʔAuJeuouZs߸>X_¸m-#]]񬺑[+sBj =,g'AU}/[Kj׌\;&oT[%SZφm/" ]/Я8Z٢AmUP³&S{Ttdv>E 'IvAMG\_^ûD#%2*}kz\A*sV|)# T-hCi's+U}a4 Ϟ0$3@do]h`PhgYQFRet5/D[ qRUؠQ!YC.4nG/[0hO|@$ĕD^ D$`€? ތP;fjdϬ2 ޺ #Pԡ2f/164% \WeW5LoMKUc߱~xL/]Uʔ~fW=sףY=P+4nrs'vO>R\XGׄi%]6j%9.XV  `kOs5ҋ 4%l6b%e>W'ʼ4b;JmwpQfcP'Sd &. ;Y)eYj4F:g++r74 U~yOJ#W HAڼ$p1H[! 6혛`R;Oh櫖"TW*>Ch&J 2Mw x?/XMu@[==.`2sKK?8L+%J;uDԵ7SȞД` Av xI&~9-]x>ܟ{h5^hryUʥԷM6q3t04<5w%*`oY' ĢB;цЁ +ݫ?3XԤ"JyTX[w^ʼha" Pl8x\&]TF41cW-ACIv{891ks0$^u=UDRG Pcz4+ck8Ͱ~'<BCj.dX"Rvť9go9B;OT(`r\>!ֈ66ey'[$3~aiZyƳ#ziHC6D-&n\]c~$1M,Thiay*joHTw]Z%/u*Q'r{Ye1O:(."S << mtvnôSDZ>+ߝEKD0]Mǀ47O,Hi"\7AdiFxʍ=MXW6G}[4VuSc]̄yKH}O~`uȭj`2{E٩W08Zl\? 1Sx 7R8PZ;Ǥc7Ћj q:!؄SСZI{꾿i ,Cr!C*܇V ]2gKT-!sy4L0$rVQV[8 dX(攆4뢏0\|ruIYFR9=wv2H<}مU67` Φ&3,2)D$`ˋJvL[wdr߲Nu8cmBV+G9@=ޣIڭTHRȽ>r$&buX6dzKh H*7_&P] G$ 6{N2ɟN\I*ފ٠h<4B6! 'Q0aTQ>:;"9kآ:shLp‰s_bvɘZA0tVECC8kaKMeNSIƛ˚vCRvFt,Boe(*/'&YwpE|@ ܔcwnble ZKy'/Z ~ޣO(l^K[n*l%%C͆ s ^!^Y"{~af !lwnQ蝀O8Xβ9Ň&~'Z|)SdI ZwE>D^M*" OeOG`YS}[ړ u`.{iz#oh-q/BE>Fyסx10T7)z2Rx0_#Ώ =9fUKa]5a#s%酅uOTB^,"@L1GMbq`~. C=b|O&"xH4M@DInjoOSw ̆Uc`cu6*?#?:mU^6>h!^q{q36Ӈ5J6ngPL,6]/Ɔj"q 8xF={ߙJ6 L@} S`)u@~=9#zr-F}0v+ X_ٸTH-_Ó 21s|u~PS*;Q_DgE)"=a;!{9%Pj%|.{Hռ'B}Rbƫ#>(݂L4Ӕ.vL/bLg1uU&>>4M˭Z V4Ls*9H#Dt+>1枓{wۣ㔘aB*H7-_>r7^hz+^ɏqVNOPFYkxøz̥6ƕ?~H `m0|JgI*WL>mdMi #SZ<ۘ3')9!aJsɍKEBT6@5eF"F 7I>rxnlt5W>`KFAw0Fd StK~KMOgEG;|(ft: Iu<ǮZ~얘_R~zs&nI +ItY=O`Q;<c^dL+tT#Oxh1 rg E@+2 t|uDJGڞ!ѤSTs.G(J)&-SVu:r:b0:4pdR,~4g9ڗV!|RԥW5nX6EPL)21[rA )d4EWA};*O!F1Ruv-#n- !JI2hua˶(T 5-8H?MI^%k>5_ 1X=)N$s`h벫]ץ2lS0EkvS=s/x B%Oz@P!d}'pz` O<}˷xT;e+)pP@aJ!GBel ؽ(jj|Wȩ &5X{zN]h $Y;an#ux_:'DմE*?Q}1O d[nj0;Y8!Ɯ6ݸ1!'k"p?iZ-By L#/[>p45DѤkyqP`fZIJӽ F`+\$CjuY\ʜщ]g@̆ @h9q@\ԹDSdKH–ZQA`=1Ub<1f \{H[Ó2`1wH+`N~FaR]'lRܱMp MyqkM/~iKLo`JV1 AqhI슣#_0N0;4ʊ% WJJ1G< 'Ķ<>"Vw$E`EvtG瘶^nSȠU)C# 8*l@mܾ(@46n)Zҟ ( cq~U~2E ZӣLﺅd玣Wq;.^X!hEʯ}kt!`v442G[|>?Qk VIq`6^j HzsݺQʑz} و/R{} C=Cίz0:_%.<^y,8Ÿ=xL!= d}u2<Lyw8NR}^"aCpЇrR/'EARmlf޶1 Z-5SnқCGG`]uKlo >>o2Q9VG ظ\ -0QBo_*:tkm(j kUҪl"ǿ5')m劣kNm0$7M\3d%=uIoi']|"UE΁k]*gc@ʬ7O9:⬿6+< $]'ɷV"O*D&J2b9wڼ\oߑ8SH>>v0oe\Te߉9VEFUiǎ3,ϧzjF7ziLvzݭ|Ԍj|i]e#dQg.)Rzq7}Fø·tTڙ⽻^, w$Ջw̋= fCS׉.~~h,th$m,zTk@gIBvP (b?/ ϟMpIwL`?G2_)?' KqpdRE]4uf>SC TRSڂu>yx)i4z)̬I_ۤ:G96+ʫ0,=hc$6C=+dU;9{ Nݙ(# >3Pr5=8i<"";Jpk7k&ܡqLU&b G.^/'5*$4\LWB^\+ j4TmR˔q0,A\:BH/CW:g?5hwSFg.yzkfWZH-F $.Sx{H'fW /܉F 8pa7x=Zv>Tab xqL[@ Eae{**V>w<)-T#1ŧA,/Q6J&sR'ݓY1F$PYed2FѰ; "{t{8ٵv7qK, EfwP\2W ֍L= NNNn fcR AVtmM"Fosc!4eEySU~̰6{CqSOr1tAc?P\7B"0?uPĸ]k#U*'g'grIX)Ld1 [dan8 QQ1HTm c_~^7Cc/v聭1laQN݄ecF;ގtuA17/b?McN7<6687PUQ^m/ºimvl\lĵR :w?j٢!FְABBy5iĄmQ%SB%=A,7R:?GU]KwX1A@8['QjI*~2*a|yV Lʀc~RI0wM>gI]oL.يllt`ЮSKK\P9z|쭛nd-b~1̡ P?~X v5 MEMK وu;@X4")Ebk)%1E:[3ؖM7KeD.LQ]-`VyS"jRBMAzZ4mWQ k&Siծ!vQ[ԶUހ+|X4lԔ,2jmHhp(% (~"Ù^@4޺L:C RdnI''buF$y$6]$@ []rƟ)3(0 7nF=!Fk1;Jdw}=b_6yS9qݜSuF͞sJ9j2"w)M=9#$yO}j%.azP#y=tO-.3#h[tp}93L8uX ~q]3heJ2n c0-vq3*@Cd?vu JbԳ) Alms~5sbQheiHW:sf/ fŨ_p_fFG@噡1Pmy$0@h4B._xYdr5*}e<,WWB+ )z4rNYcH[ yv+];)9%e^$*E@3>uoMmYUF1$w:.]vFTҁѸS#쩊-{V=ntzg||Wi¢J TM.;\G/H_q5)m #s3 Ũ{k lb_ P3zmC:B_in| ̢M5C^EMO~AA42b(rB@%ⲜcRvw,Dz`avggg(IM ҠɄ gv%Sc`k"7~lHm,e&C##)bA xx2W}ѣe#Q%85b= f䣻~\cE1PMW9g990zEE":zgYOL[C1M:yvN"f~q˼m-gU1å?5DlQys` ,AkU){1\mEx}Q00qhoWnXLw _~gW4Yi~ yޚKW;)M+v-(뀕?imc p#QYз‹4/jTP1k8|:02=+-c;?۪ qwtۜ6~<I -ݡGrV|1Pun{ 4Q';r=3qEX֫mI X=~7I)luЩLĨgl8zJR$vW]Ciʊ{w.=!m0/J DC0Ppqf=(q96@6(b8YD3vVcF SS%NF!Qkl2ysVG9~DϿQ>c3zjSvqHcdNfy{q A0DbQ.55_ɣR=hpZEص!Yp"JLp!_F֙Y :kSf G憖>%ؔAJHa,?v:oWO1Ӆ:U3p==NIA׹[LpŤH4{ ѸfE o7ڎS@7#"`v u_$@%H>GduAG"$S[&| Fڐc \~s>ߐn \&kY,_]鱬bbRFa[r+~9%"@PrMg YRs1ϴpfnPw !, 쬎04ixlHn&bG %ʯ f1I(OJ:[hЫ=#vO! bdM w'jd KZa=ϽҴu2|Ieٍ"<,Z*Q,3\!pڇ9J,zU MS ' QygpBsÿc4Mq橊 ̘/y"(7u +mDWT 0h?<\Y %/?? ] ^K9½e䡑Hb uz* bLYnHV6aVi%7XXH=3KZAgQ}*KCB=L<,0p,:8X7' RVkI&gom &j?]GaM*l%OPa<\ #6$y̤S}. `1nwR,‘fo;Dbm(lg HcW E!ib0S%hJ)zf!«'vhkϵqzxf{HCr!SsN%( ȵ0W'Ʀm|lylQ ~hl|M>Jۧb9L_|egZ|xa[Ŧ>0ً6N|j;+pNBד vCgXpG-vFvkΠ#sJy*d<(ZlqIOL=&-k{A!UGz`t{(&J5Re+!]5YJC#.CW3-Є@qVbH_Y s 7rJm=Rd+HHw!NΝgxL`2an6Ҩ̀b-+WT<@24 (+YkR5a9"yMWɔh68;5CyUv+iH" ̮?2`zFq8Z~dL$I^lC8&{^GE>"D0G_+89gH1=Y'7[l>mв Htc<PxgmRj`gv')HW;w1O/Z&C:NC^nR=c[y5P1}bnWq @3X`Xa]j'z`fC?jcxgE1\e}OWҫu`yػ|uwz'3o&e퓏c%uo$-a>KP}K@X JP-To(EN.wy'2['H8+-CPб[Jf:Z?p v,u$B,̓v@Z-ϣI i`-,f(CXZ:clIg7g/')ԯwMWYoS//VDܒx ԑl㊣ob"ibģ_. Inͩ<$ۗ#ߓ@.{m^(GPnY/K$[z&TsMe8 e56tNV\V e&i+ƮZE!5!u0tnJmj2!.-grn=ڈ`v X'H2}Rap0ߙx &x!u`nf\9'"v7ESFj #Zc3u[@?] STO 4賗4qB}~k/'kL|~.5.<ٷ1$&CZo&a؄&>ȣ4 .o f+7{fV:m#74’x V },,b(4Xil-*>[ ~s!-Ȉ,xP w/ ``NTչ9"]̅T]HV7סu o+69A9D dfS+5[;MB@ %GQWqg`>"hr?z%3ᚪ)vg$CpK320e#J9Жp"xto[-|pfj I3IW„"/Rב]9(a^Q֦oL1ꦙ_VXMn}#6%o&\ A5ıQPOw?h7 mqgr@|Wc\՘CŽX IPӇ:dVWe B}?Fؘj&mO[xQMPt7hh0 qy"YS''h=keO]*aENRǷX_@`5Fw-O U4=u=ߧ!P/B+HrK`C# [B6r}c E,I+zF4/|mHſL= 4 M#)=c$F>6 n,q2U'|ԫmC/ 'X $cc^oX8@J|Rcpg(+Ҹ)L 4'G9wC 9BA,9_JW03JIuIN/ Qx´!lP E=$u&7 ϰ|P9:3hTyG9pc%5DZaİ4$o&-:ܬ)4oN2gE 4)ɲ~TU;`;ve>pך Y0 r9gt;ջ3}g;5]vd&wH(CTHˇM 5'&vC moR8(Ѽ/܁G=7Olp@y"DW+uVpG}MJ,ePp8.'K:/te Stc‹} -:,hZ"ZƄ 0E)r{RcyK' k5xȠb !~LlVn9|dD6}l?z'!P*lQ0vgQ .)kgARГvIxMl^:Vf)udZ&)Vn(dwB:֖$рط6BJ |t \`YXRbsӪ<4ʷ˿χV('} hrtr06\@|kLO''J l mzm0-ɡl6(R6 &_\QY}!vrFώzVҢ{MKFؠ3bbh(1K E]p造Ax7d؅Wz4lA)[6^XURq9@Yȟ~"Σ-f/̦o8z>D߹2%\sD)eN:ɤ.S}2ceԖJDkJ@TeQr6mP^,harRyECK?9 '4Op[ޑ쑎v?yK") ?# />'(v"E@&2Νc*w}wbvFDUbDžIp"]`łeٱ4dAw<Ǩhy|K _'Ka}eWC7@_a7nS9҂QUmBfw*U,f=!ζ?(`e[$1NbSgΖTc_W&IӅtO #-I2#~m~2z{A*L ?@ʦqYBB.u)Jcm_kc?;NEKN]i8AּB_Qӟ}݄0!J։aB-*͖Kh LGSGUk囐ndx1;+`i f$˚fH Pl(՜rq= R{ia 1׾7LXT# ȟ;$ĀG}ZFLJ 3RԂ£ݗu^moiY$QD+iw_ tu" r`D᫃o= H0b'W85lg2NsD=Z_l)WEi Sw nsv7 GŽ'V93H2 U~ٌPNnhHqjgwWW⽯/7%3.]wݾ ÜyY(y!nׁЫDm nhGxq7= .y 6ϩ8<$:\Wiٖ$?)X٘eYl;V1Pd@hY6@3X:;Al$$ 0cHd:L0Hclͫo1b<7GH8dri<թlv`E)Wo 4v_HhIH^/߫sTL.krIWp:D5|E\%~ہ8jdr.Khu<4Nӱ!]i(v7h߆]Ry(^4 NXQ2ӣ#0A`K;t.0cAx~/3V0}~ c(}Y^-ǹĊ;A͎>ߺ80:XCrՋFVըwGg͍uqHeLL[)*&=axړ: =f 3HfA%mxՂ(ưF#>>Uey90;6C#BBæcըOeSѤ}cA/ck[ZSfr̍kE0^[[e\w Pl ("$6?oYeE ,T"ǩLqfF6lY\ΪLޣY, _0ND$01ZqX?33{ .@)nPBM%$GH ln6 ƑڈQU/iFYʕRG. I|Q_/yAb*vCM&a&%%ꃏc+ 漏FCyCY/RVUR6P4$qXpg6@SnJ[09 B#㊀u`x=⩆ x0:Fg}z>0mBAcnb[*d :n 0lsh)s(^\OY,#Wm=Np$0_&9Kzvd#_,H귻O~1RG[R v۞i}M4<5PsX *gu ԛYU}K-QZJO-)2V+o l3)*#_(ɝ YVe=>:s^Կn?єT0޺I b2x]_QT}vzpdh!!~o'yL;z:å̠k ͛w`PcQ7v]:/J}B59tCFQ[^֞/BJzy cKV6 ?$c5B[2[p?9E.uZ+'( PFZEx/q.VBhW7wGi: A'%~qAu[i\_hбE=΢fnzMRVܹsp֍8 A5mai{$K(Tű4 ] פv4SWEhC6#[,VIW)mH&8k@\g~@b4d J=SIPF] eR(jK\3wx?>3r=hOF}L}F>*'xj];^ ʧR~!1.1+J?WEcN5t hYbh.PlGfGJ(߳o3"8B" 0%']ç(ĩ0j!$8dgԴEӞd0~1uRaoš%RPF${J^: Tb*6(=a)σDXX˚?>a ; ubG׷C}wpq'm$E:Ik<3=V~0t4)`KޣІӮKV|$@5uJ=2/ P*b@p9u*p(ZN})=[]gFK?^}j=k(VrBlRjuFdp]5Ugt>~68.sq(i9gvUv0 Nu[#ךź<* UsJd VQ,Kۑ.+ͭ:aBan[~ Q3E|3H^ {7'!ɬX+ oEFT('hWVU/y!c=[ߨ`uKr6DO \Cihi&. GS"}L4|oȡ=\J:Brw+V)o+(K#yy-f)ĉ4ZwUN~(rˉU.X֬mrrG:.`ح4<+js 1; iZ7#"fGwu2x@S7E$It^yCǼ!_M>3UGL9%0Y4HEND%a8ɡ* v]7_կٰS-EE< er 3fѬ{ !Jqd-:dzΦ`Oĸ{m/C+.Qhd(g,oVb&^y$RZXo( yX^{c*o3Z6 ;rY#vۉS _RF4h_ \ף%c8Nv?g!hS_Hn^nX$}1>z=JE(wT3Yڶ,GL) zš$(8@oRk*#V)-Wڵ5=W }rz v6roݍTw:ږYUq$tGJ1 ϲ 5H7,~Oϒ530qq> 1G[w 1#\HnYE 1$;}31moMNyqǀ.&*~]2UƐ ~ 7qI&.9`} µsm J ~G+㨗.'?V#cn8G$)5{*4O?ֽɌR|{Wu{+P74^.Sĭ n"&i+-HW<q4>5w9W,Lsty9l=}#컛\v% L]1](;~28L.T,ۃeҥJWDih$ ne^c1w]& BUhITLx?U S/h xU+-NYw0ċV#$%-z8# }L¹@]eQ tF!B\bO(q7j8gm;0, D{E96Ml/$B*ftŰ4UQ ΝLmp:S7:(IU]eD]=֮!+SlJ5cլKO#׷Ѫb dz /ritnf{&\ՏlOm13*癶rj&ðwl˗QF 0y&BBHʩ|m ̛Nm%[*j.mƨNᯢ.~?}.ckuGk_ ͌w@(֟!Ü(&# 7{K&pv I'<rҴ6q`~[mة  8|tx拏KC|Rdr7RF6~j`+bRu7ݩs#R%|:>Ӥ__#"'M*fLUtndX3WB\9.9i` i' ǫ|8xr-нg{9P;?NҀY-K7rVś+:{yJ4ڝ X;C!5FW޸Al@7WKIֽG!3ӟdq`u`l PnYdj5.DbdjfytXt: %:sT-F(zA=݅#^;Pf#įI/8JTz<`&Y^Q0<cI`ߎd`H ,ڑkVmp{lZH7b|zA0=s)l@?SQkc=C姁"hwdV.zYd'g`],>T P+:x"A/p=&1Ŕ8>AOZьHlKc|ٳ)%R\n=\@XIr#~Z#/8p{ZAZُy#|1JYCJwBGHឋ,kb޼(BqW^*OrL;ƭ*)k6D|aAyoDZF:(ܨw 2!ERQW  $;>s{B2|)ЂXR,n&qTb^z7B)bKWe]VڏSJ 9\*b(_lM)b̪#*)5סڵ;9s:oү ɀrf%-h)jpi8O׭_D9e{걏Sg{ 9L&\e]!2+oe8izАzq 5o}8 ho!w*v1Pgt%),%>h x}()j:ev(>{+7WtRb2D>ݞd][< X' E%a}.6}IY%G7A,+[@L;n}⣇r׈O> w6*y 8f0VnA!R^QRB!%s`"^%9¢հwC#N `(\W\OY 8Yӣ:;Qq<6 O~OxZ+0~T bҮvĪۿ?H-G9VKǛ2`rv7Q$)xZ.Εw̕9A@-$Sen؅*>c8Pr )ѕ*\^S8ib59|ҘZ3 }5)N_K1)e,N(&mb3mʋD4L%\hP4#P5H{>wIɨ EU_|p tG{]PxMhu: j%Ax ƴ\bdG~|q.2uIugkdƜɤmB%!}Ic\5#BXDš@ .9U nF`xE@U % ݚΝ7Tq{e3C;sOyu `ҜtG]]ls  )D6(qo @$-4#l2&vdv#cPN:mA_S\9WtQ3r?b8cI}'tLww=`NfH)^>OsB a 0$_B$ȷUxC 930s;T% ߉Syp|hsH;dg̖ AcV&&-a7:x_)=H')bZs ąK\qmJD}Z?P吣MрLUmG~ZAvowxpq:y㪏T$4@WQ$ΜLU~CE3)1ځXG NqUʡ]4Wz&ג#NyBhk sձExj$b;58Tf]Zd<1'4ђy"cszۋW!HoR)W5^I8bi&)ed Ё#U!<,Kd̑ΰ%{vU ze_Pi)m1"lm+޳0d< ,ZZa7Gv w}@xpLFbzZ~NCfN&kʻT)~B6Wڲ盪 e~Si{&hi!JBT:*|,Yv}3ΗwWR{P+u 9Vgn {˸?1QkɒK}SGmfu@iYz OnI͉v,u\%e/Ŝb^dUy .#i5(9]F),6,G^! 4kk0 4Nݫ2VEm̝3VW櫣'u Y0$*ģ8)dX<ji7.Ra>v }W%4eQUE7O)@LrP 2jEh` x3qzׁt@>꒑@=FlЍ7Ԃj)`;2 7 Xf虹Y!a7n R#DKȺ* {N0'XB[un‮FPbӨ^1/ O<zB m pJH;LX"j: 8wGzLLE29~t&YCdG0)l`|'9X5RTfk&2_nFck'C =2o,7shok5wi:Wp.歈h\p?אLkDS˒ &U*Ks ~cP.<і|.ٓs>r |z!*5l[MkHGQ*ӮbLdLiAI|!y<&! HS]=] 0!\[cfMǠxct~+ot?Z-G$M9CG!fgy28Nr%Hz:=u;l1z)x0jթٙ8%d1kq$1^]./ǯ1e0'}bRn6՝aGٯ)IU˅;ޜw=viQ P8KM;˿V2&=JT D\qU;\Uڵ4KQ3mn̋C|FҌϿ9;&kkNHzh);@/r˾{æ +GWչfX@w\iMwFCF{|'Rxbc4Ol{O-Xe+01SD&씇ʑAez!aS#cA֭yҐv/;L$!L@aş=0v7 Myß:>q(ADVkRj2@JEJh fQ(`G*h7YS5Z[L Q9' <:ʣuXw6 d%&)E9+=?ňHH9XΗ ͠N9p|' u lF&.K:d]%KLhr3E|Jv`um1uCI_\cG<FUu>+|bmt l(ںwNz55&'žȬk=[΂8bxEwN֓g1λJ{S4uQ`0?+uŸa:mF&?uwP )/Xgq m1c2𵚑۞;R2ȂEP-/G0 z{\cl^ &iBH #2奋g.}4T 95am$D衠/|o?QE7A8YYGk*4s4 YE]c?hͼS, P4 T*lc+@-shVR tfx]4vFfaśkfN/5\ ]hMCV&ԗ&5mMNn#EqUTrT vJ_P&+< bŜl6L!|_dnobez&t.)A\ wW dr.gHba7x¸cʡϒ@<8ǖ*X3c>Dwa܋w16S׌@'z\'0? My/,]񼖗ٜmF>MYo]~A:٨/#n0d,:)?9o).%OɢIm2">W8 97_v[R1 t9 ->.T Ue8Mp[+|XnX5*ZC0֣ã"5(8_Ke1AC.X4M`b]{gJYKn4I ^b?넷=Ϻc&>#xP)xA$2R$<؞~Q>&p=v6A\`ػg]iWҧ^$_0{Xߜ]Er=9],)k-؟(gDކKx2XG t|(n޸t.#Vb27JGmR#$ !2ҟ^J?~vO8wְS>+o1Fƽ#%u}8G#ٙx>|8_5wNձK~L:' h\LҼI,c!瘮=p`8d@ L>LN~F>GbosXHD1xΉF M_*f9CƂ u#E<6ZAY*0!9Ag`a;E5pJd50Bӭ*YS$Wjb<;ÉmO#488^[wP[Kf͆}F m@ءACo.c v? |{6_#eS9Җ- [orV2YtseU ,xX> 5` 6&E,?v!Fzc t"Vt-c`D;ۗcH >}mWNaO7-㖥AqCy,KKcu-p K3sm@l,^d/47A&9Oc oGf68,p{euz$4j_4 ]fIv:Q` # ?6va25c.W4Ȓ@}DźRa(& *S=0/wӒh\|'>s|p:uEu?BxcvLH=./Q[dO]FM3 H"Mpl2~z#D־5z۔]YI.Nd޴`[|8id&dKH$) iFZXyXIjZ3S4)ͧḻ`}z(뉖hgQB1 n/Q`.U[9!1@`A+,|wO}TP_\]xbjî ?DRi%V(ȠHEz7AVjmY=%9X2pal.$ȕ@ul' ;UZdd[>$i8$ZXꁪ2lV&B^STx#k#&wo}cy7|T:Nb R(~ޣ_HoՐLa`+I "kϙzgKQZPS)zxxb>YxURf%+SGlS: B]3ḱ֮jNv EJ_`[yxUgF|n8𳻍a~,\ K׏/BFώDVm?5.| cBp%;ʩ$D^;kh( >#p@>}WOvM]1̈́kX`ˇqt<.-To,e;m+f~B&[eu+UZQaNƄ>WL9KvͫR靥8Oml.#ˑxS\'T ?ϓg?ad>>3鷝Xܤ L*-Pb ^:t+ mM !l0dhΌzols#sw{ucUv-P}0@kDVۇ f =J!VEPV/ zmcC7~UOo~Ey.!?]XxeAYZdpsQ_l'LSd,gDJ6rz$%Geq n;c.ЌP3!q&vj =*'62˨"^zsӠH 'ȒmX G;E~e6жQo1&!c(4bE\֕NLv8ҳ!/k7XfthX:x11ّiMh ;~F`<]*K\Z`mI# iANc7qb6/ &wyz׊^GA,,tGg ͋Qn$,xr ]t8v)%# Fe!UTGO[{\C{Uób,bw <"|>DNotE_4̩Xك7IC._!cU,U}Yūzp <8pM~ȹE6{t^DZ&O&0*_m{s^EGRzlln#݈c|:QKQ(vNnc@1Wָ5r(A<EB|37joJFbb9:o.]H7][geoHԗ0orCLyqI v(KapvIC~I$Ҡzsua>Q֙QFc J zjcM.ТuH燏b.}/]ad*iГ:r(Zg?7Y2qw-Ƒyy9+ÖaI'P"WSpf/̢a\#`C ]עtXE ]eY$/9o+1&v0NfdUWѶW~rЩV_G!3&2&r[uX^i7HK{Wd i:zw_y>lzý]H^S``T9j+:E 2S4h7*@V&e;54t(wMUOGK¥#3Lu:ep8g}huzrc-7 `TX0!ѓSX:!`~\~>ˊgAOM(Pcwv*54gbohF%u@2bO2#nO[mh,HjF/ϯMfVX;PIOYFgpN1#&,DZ/smgb?AxXF Ul7 ЬE|i.y{/~M gf+>SlV*hfLA?aaN D1wr54VJ6?;iۺJk6zu+Iϑz:o)'w;0hFK+y-WKv\~NESୣR-"~ #tŏ.(%Bnu#g>)0rx~e,gFqXMiCqkH ] $_TIe:? "<»ǦW,JL`T(Gf3$d+]E{֓?vYK?X:&|=ƒ7>`qƑ7Q6#AҮIBg{\reeQ ~3HJłs\g0b~EhXCv2S~,mXxGM[vi% 1Ͽ;qwf˄)ў(^aձ<Ќd2#fUw7j^:.cT{O+ Q vrح{g=\01I oVQQ>6h$ Bc46W(VI #y2ܱ>e@YD RimS jVzVKBY+'HO:^5SwuB%'azǥr@wo oXnWr|>LdϜc3A :Z}پ mT ѻLCH+o~5?LJVAy:+v{gTqCdD؇cq)Ƃ=ظ~55Y>- Lri,em$́f7+eW_>GycZxzgqSb8\F}¿á< U9 >g*0o'~,3bj&Z!+o0HcXن@ΊtZa\2L)KtgFܣ<]Fjs%|]O GqpyPbgG0u'bfra+$yQR&4oe|ٺh6 |Bp?̌X5ɖ*E8,\c`@Ƙʍ]FpTΘ`[bپr6ڧ1@8Oq:EL?To< ȠVUt $!z΢JT!#&vqivirR:}X+ F.Ot]npu9);֓6=QkoxWeKiZ=sӤz  Fn=jem"_[QpH,Kv^Oç kE-1(E'"٠Y;g4!a aз} TEE$E/3([ޱ 7*c@0,XK&RpH!U58m۾ @Z~̓C&iq5r]0kθ)ao&z870cmZ>*de L$0H TXRv.mka.J8He\MK2=0>Q?TV'`u抒jK:IJn&ɞMg9~Vy%I̝4%s/:w,,tP#>'32%͸}igmU;DC -n}˅9ʇuu=C}N#] ؾ$  '%IbBtLuda8;.\3d0DvQ}!9#Uɑ .u(V(O["u !Wԩ7;r]1];kǕD)`=b {߉C9z{L :;.4!H%Tp[U]aLǝjrWs?HIgb#';'=*QT`5bXۚ_l,oQHy%k9-"+ڞRJ HR\&EΏ:B,74wy@!ڕ.7Lh Lev=gL@Cz0)J N8=h}5R6DOOnl{-b)p{m :yNtGʣ82?uqx${ڠHS@r.S8^CeX12㒧Nn&Gȴ+?xR d#Dt3%' ҟ<%fF OlZfd>D9R#Nr$trO\{,?mh]Sj~=BxmIz9UJ zB{Y3VI:rhϜoS:lo1[br+%N܈(7b>D&$riYUDu Y MrÄX:O4F2}DXRM7dJ5 ԶI=LK}*g޶/:5OYJEoyuJC&/h/h˃a#^o9p<zWZԯ62eT"/`9es_vM-2iECQa=M o ;R{6;ݯ8X$^2RЩZַ]dev(:sz![<& gWݳVsεPޒ|2pt*i9V1 +vd/kpy3eY!m=v)0-P8!~IT .`嗸мXėjc!}D>˿4&9hHvbd&\If8v:t~yOZ1'Z~nyugZM!N7-Rg 2 AG?T_oK`)"w{e_]=k5;X[!j1\J]ˌĺ^j0XqŎPo/y3l\TA?ޥhc5-zk .J'M) =W.>s ֭SqO#hld2&skшp066RuM1#wTG?x/ 82uq|zpͲsì]jeY˾Eozt*CXGǾ9¿ v[ב֢G fIݵ} ?znȖދgMĊ)8O {|WX2CH4>596Qׂ5pHܡarOu֝^ۢPlo{x%E|pDiAz{}Y1.w+GYwRWu-srwb@jwHL |c$va(8Bj@:WW3mGI?pmLbS.kR&&][h'L1H)2j'# ~ Â>wu*\I3naI{㍀ѹQ)\lhCʑ<ݑ0,!pEnjJIA#rWeFF=cB~cQY1S2L)ȴ8ez?ǩa߱`l/.3/IeN~G*\ࣾ_ #8{AWdre-t)~+;گcK;Ϋ/Aq<( ) vofK?~A-+Lb5n:=;k5#*[?TB˞us(Ϩ&1gT!\UTx݀Wz WUD-Z{Hۑ{Wm7%bZO~njle+Ay@pл;F!`=cE M;M[vd0UO,ԣ"Z0 83y\bHOeE UPZ MO' f)Y~qR(afQ~7طIc0 SkHPVb=/T4%tTMu8r(ESaq!Y X:^=ѤD.0ޱP?p(RKSv(N{/6 gWQJS06CH3}i|j 25O&0`Mv+7PHjs^Uq )\JD5 E6-7 \&Lb@7i4bU2Gj&PȲvwR+dk5K| uf}f;ӹ IݧJ{*󝮥G}Al-?"C>=0W<0XJ 0ȃ!.Cp[֣ʹV4&˘;Nwb@I0,s"BC7~݈LDajpP'~"'FR'XYsM뵖f)Oe*U0lCB!?{P E#ПQsLDNJzL:(.D˴У)b<1!B{ҵ9dF Q#I 3ZL)m0P}nLɥ%kC θpf LYY?-$ΙGhCw (/em2"*4,?bZC"us>4ݢ.wAtoXymVQ',ږ‚څ{I3WÁCX1)ݴ: p-M+&:DlWba !Ba]/vM/ٜ}fZ%ZeW6}a&ȢhCuW0S #)Nc$JӶ܇HjIfCB l靳Y1j}J2t{ljoY a(RFr;W:[#7?\LDF|sG3uKsvHX,]h}^6V(&Mob_]Bzu 8z#A?ZgxY# Ӷvűn&q~ JW:yR-m.dHtj4 1CUݽKi71T!,CG1LK_,oɈӂ65ldJk|3 { 5Ԓ$d30-.?- Ah0Y;Rqg9)= 񿖫az5Xh{5o_:]D]a{|򧝂]gط?ajɿI ncثt4!A!bx?ASGoj:I۪4{+IH v7Tn"mUы{S7x{yv{w' 鼀߮z[v}7ߜj(B*,,0. Whё,<0fx^)^嘢$sPP A$YY;;W8)*}SY7vj9k$DϨQ\??ghoYc,;+綅ǗB"`:1z,x}IHSB"*$VXs#E@^Pa Q]>-yL/֧x7:[5ب؀82!HԿh־yj)fK5t.@-4J~ {PɚB\4^Z3V<~VトN8q];1IE,_KlVUw`uǬGkUJxar"PԓL&GŲ9zYYQZ,'.#9&ؼI_I M.0ؒ(jfOƫTyTU߯Y'_.^-5t+pQ2$5,B\ܚۄ~r5Z vڝ*hwّ.@SӉ  7. 2~ sn\`쨁r ]d]3Z[zC>iu2cfV@$yȰ εLt4~!SX) Ye?h7@B{}%4i ae9\z\Y9]1KkԪչ/.NU9AAjuiM4O9pHg3{SCnc@zDtfׯ cE0OYSV !o]gPbS}Ks_6)~cF޵UA:Yɑ/tma* |:,(=b\C'2&`ͽR] ֎)Gq~/۽lPxm,x=[zBG-NuAcj9mf"j7)$Ƶ*1,ᄌ=OK 4mpY!?X/ ΁r|8Ta  Zp* _v/ҷҺcXCj Ks.pFbIg){zKpf\4ҋs00Y<]> j S6^efPʕ*uXL^iY?lU0%U3[:2ؒeQ-_ !rݿ|[Zb6ڬ5#|\҇jt%}+JD[à0k/js]jP]?y[&#E9Vu-9Qɼ|Ԙl ^A ХÕ']]fZ%hS6 =)5 յV 'ٍ#'_=_vE^P[nb'ΊKvF4*@̈́d [%0)*wH)_fE՝ҽnI%Б ^,t,O]+_ "]z n70LDPINz;2fawp1&&́/fZm~*m$VәX` I2hGm"[xfu8P1H0A9Z[tLD# iTHax MW8Knɕ5clq/v֬>³Z%A,5^ 'R`(Bғ:~XtT+]|\/'6 U$Z=bg+L^*\פxEm/vN57 AG^le?b/Ͽֵ̥M R #DƼgQ?nR2:e '*a4M1ЮT;|ݜYe^1@$"c {w`;y sNiOI]]*x*VS_1y&FNskڪHm OEuHo;1u m$0mkzcJ]Tdhxg EE: ^bټ{ 6Y>rcF`!ӌ`J 3F247@ )b z"oRab3e[4B@cZ] Ui6.aV+k/2c" %x14y{Jdž-4+^/^y>B AwZ׬7 9?N_ߥB_2n*4op],,hW4c,=w;kOs6z*0Am7|s5.,F. jjPDǢ|.10zh`Oh.l`OCt]&Jp3RrRH%ę_2b#QZc" ^e (1 'kK@>LPg:Q,u=ńDI2zwJ ɑԈ]kRzQ=hN%:LЩHU`Z3]2 cqk$`0=Ko1*b  Ue럠U*W<9ޕU}ٙFSZDh6,kQ~kd}?Q'|Уsv}zJi2MV=tNsPI2f~0#}PxzFLtg ~HSpS w*C 93hPojocxE/5hN=e-}//(mZƠSE(pСZ\8>5LxA+06=yNdKsù,_50TSV n5 RKA{/aO!ˎ&;lplnCHd^$$(Wx*k22~<a0 X;q 'լ~,CIX{`gBK=h.7H:`Goyw[|]yiL GK|~( l*0 U(IPe:)G_oY ^Rճ;sTql4sXX׮}I5L՟H$MЂ,H1/Fۂh߼"r3H_#Yjky 1"X9ccm]VBBWfy}"q\I 2/?9z8ޘa6bjcp(Ȍ>n\Σ^#yP-#M\!N~7b"aۨռhl̪kJf_ԎAam +aU/>"SI6 XAꂒƸ nuz5vdHGr@8+=G̵ uMʗҚ'?H+=8>:=./&Lc=-=g#ee9S`Ht V @y˄媤#YHVR-LH܃g ˆcQ̄"efP˽/cj,{E3ȼٚ?.G6.5o8sqt#baYĀfBK::78zOr*{>7/_, Ը8CyjlIg0<"i:i/9ieW+\OK/;^ cTc3p8B9i;,LQ_6,)[$먋NV>@Zv|i7䦪C瑟etOjP̚ K> HGDc_WC%r-}TY_-lߝȔ8`4(Δjvw)%,0rKA,m㦱CyxYe;9=AH[jr$9m¨9zZ8~nմSbk7 VѶ?,$|0؝߮6撀ugu@S~+uƯ yuC$Ѳc:a ?xV;h+F犣[.w6Q- ء]Kz{&˺.^ʙIfط͡QMtt%u,D^TN+WwQR+?׫ ƵTF|m$\8rK~N jP}WB k1fڠ^2T t*&WBeJ9ȃ[jmaVX*lxQv~+eN9l((4d=?)҇{,> ;2-2VygIzhAv7UswGyMxMRF,[(IcF^`$AcNxG#1L@'{|%hv^po6>D@DM뛽^TY!!y{BW6w[14ak xǴB"gU`3 9aJ!Z0{k9`3JB@yY;l: \ (y`|x&vA9`!BFLOoB*jrx$8_3%,@s RhxYv*i/$eG{ِh-/I7mB'6L DUe 4xʷzxϤb(KNbO2 zm"ZYw/ J[S'mm4[?\9F}BoΞĨIHAvԅ*tUas1_5i̖ W0&Y`ߑf6E٧a.drEylc#W eK?é8o'GVOPL5Z/Y2]Xfb O Yc ZAAV:-nmE+y%Q-nؕl> <-#Nሚ=4(hXVyKϞC ষaudP???7D°z%#p@n9$Jتza,8۶ @& ϼ!uW,[O"I'jH MeO$-leB(m@V1;LX+c⟬4]!OvIVCexI:Ƚ~%WCȞjd1m/&%&@BG<ر, !nFpD3y.5zua`LzCUCUx5RTyPZw_p︶_8ȁ8}7bE\m&^qeZL`yw{ri|773y C lG9"WLV $CfQe.: PǕ/7.* ƺ堞r!NgmIS cK\ *GڇU^ f*e)tr@ox@597E< #g _@<%&"E6v ]y$ۘ] Ųӂ@ VE{aLOz_'2b$+PEEϨ̠F6"\ [3X2n csn,2$@uX ?"V {=cIgf)[JɻvRL-㵵iJ3.:SH#3e# r cjlAvPz[B3BkԛhɎ v< yrϊϳ*ŝol;Ƒ'_czL*a6PCӾFz${̧Η"6ʻɧC]D27cFꟆC~qH<Զ<H&-0|u^WG#V$DZ`8Pޒ ͡Js\v}X4¦s6thHsTRt0kxz*9\\?U<4 jݦp9c\~(A ܙ, -/mƳ+$\ 'r@l+&cRz/yzG֒&VG-(InnK[طp(nFȖ6l+6;U2idZ:ěKIM!#E=^-mo5t!5@}+'3wqa-8v]Yk4et!@=\97pmw0~aHGU>B)=Ӯ2rxHm?Q ŌܷTL9(X|k=k 4Rů7s 5KDuYy6xNktBէ^N5uF9ŕf=I [X/}v)̈apQw)tCm;s`)_󛧮Qꎭ3Vu孖uv`N5>ҋi;1שoRvYy"4 'ps80u.6#{*u7Jp_L^rY@ xE'ft5Z|{a}5P,>ʍ]aٽ|G(etՋ9 ц!n2Sqkɝ-&j׫'ڹ2&F1$O4D<@C3AO>Xv"LYJ$±9 F߁iA^{AoNYP4+ȇBMT2vxD9eu-%%4ElvN01 KFd3A}< 7m|~2-tJ{)USqs?8<^xr+*.a;Z+S&UQQ{,` n^`~f: AbQ!{JHf.L(-bItO-'%iHg{kɓ|+{w pq6L{Oդ#^2{i,VrN˶o"]I+^D(`j12:j8LvB>,I4!qd&A Q :ؠAcͽXT!%~7rKS9RuGPgqBJ K7l⧍)'W/GevaX*dd `')lGUrPѣ֟K+Άa%?_bMq:X9/N bڳd=A,ԫݶ *'Ezx@E|bjq>gxn]2ǯpm` 5"ec`f k>p5>h]Ȱ?':@J2nу2?ɦoTm!ۄSCYa<F>HpBwLi0BE٥T/-ۥ3(as>IGJGs! (GbeG5oI/d!@> EhOJkqALHܙDnPA~Ъ}U(P/-90Nت8yk"o™[A05;#zKÆ[=ѽr7)%)7A̯Wc_%1ά}~fwAK % 91'_Ƞ+~ 1lm6'Rj_c=y' =2 J^Wd5H@tעAw,l~5ǧ V ӷ^Z^P$@Z{پpG/פ9 6_Hit\{e\uS@?t=X}^@ c]I9_Cm}tf 7l/qb Tyܷ *G@tg7eějTi틦9&tF 8(Cq6yRi?G- ,K0-/oS_ҹz*NfM Zt#.pvLi`- 8āĹL8ZOdI-VzX4&=tzi,؋hQ'X~E;[n/Hz_kG0n $PJOh > C9%/K6KTa:H:G<] *B\|$ho1ivc!g.0M _Ie@rţp7.AcuTK т 1[w`Q~9W93Pf˘c> O rfh6(`mZז [}_o;][KVlnJjAF᯹cR ALJ! JjN;h#]iV(E&b.|>V ?s;>Vш @PI0qGı)l2P>RUN z,dp IP␣~7%Il7hӫ@eh|x+S[Tt-.jt>~DGuf¬*q]?N uIq UP1n8>|* ϸlȑ+)<(?n=l6M&yJA<_n 7wPI2H||2e:!6ېatb]6'Ughȑ=ޠbYzai4nlo"4[~}VJh ФOK[?kyޮ!sZw ;5DA˧C0?9mOSj+'تU|| AiJ*sSy 6&?%5wYtмgџ}Ʌ=uuֻ"]6n1| 1 DdIZhMmܸ<02FCO]hA_)}ʛTʰG'<Ի8JڅPB2- g1_s7px ఄgO,n` KUnP |-,AKnrj@fl h,d8>Z%T(:dso!8U4Mtr|>)An母>|v )G ab}}J}@A9ǵ.N zŮrԒ/93SQ=56&\"5AmjT%%oW$ul np,'+Щo>CYnݱ8,1x_cąf[0(7Vb}Zy#%0ɰrրY?olaL'P?xxvX , nL3)9 T|fPS bk%]"i#}4Y -y1yBwF@|=|_J *H ^,ﻨS@4,zV-(<[pv:M)+1rJ :=ݶ 9Dюx_CTU&oOSE{7~;5;46ms\O_V<3\%, sXT., s BA*b>_ 孧ؠS Y3}twwE[E#Q`oϚ碟6i2" OUb!jV]f1_L1NNDLiO)T]"䉳>}4I@D^?2)xCR; >y>E$86x=lyGHqSz-T$ yo4 =\/tJA2CJl{IۉL\$Da/˗ Gޜ"/jSBRNG";駃p'%8l!Z%RWS]40brįzlHVqvlSbQk4ZrFy_UEeCc]q^)F~QD{7iLϥ{dNUT)85VJfVU; y[ ;"t"1+)o{}*rst ^k-҃H]HX=Y"~-z+#wb0ȫ!JVc%di_(] Z.K{[ZSP m1L!]Nf{nYhnIISuH tu !hG% )"NY<@?ʧəƂ0?/%< ^5XI."@0 0!6ԩ-l蠩iUڮAҘ7C3bCuwCFDLND2T+z9czHNB3 ntq@M&,W%~9s볫z /5Pҟ*d~ʩ098Kwr,(nQwHN^GmӈGxdže*Y'67I}Հxcn[,EE#n!|}/0b@˖YT VdΈe\3tt~/u7ڵU҃Mΐ3q+Rr&> _:aPhq@l2>.tZ9mI^p">Io4\BJ~Aay-Nኁo8 dkLY\~K1 CMD*L`MQwUBxG K!M$J2|s5XzW1QZ5 Lj(}p[9;<=P1Y)LYay9Ԯ"`7x詣L۰E{桏ZcQϙ\\ӹ*Ȱ*-#g'jtw86`>bv >Fd|mEN/{Y6ϩYZOƁ+H[pV*v+ˆGpcWӐ_y?-߶{.^gĘsuޚdo'K,c(n$XE1 SVZٟR Wp}KyNBW/L2~:Ӵ@ br2KVg8)w}< ݥ?pm=ӨxiCiEk GHiYsWa_\:khtSJO2>fZי_<1 NFdDіц]<8mmc,*}├VNJ :o=[/&-Σ@~ix;Qn`g^z7ŸGOj\;}|É7 ?%Vlg9w)~t*>*Cۜ%5֏@hcL)`BU _bֿحkC ΢r21,PĘ[~2SN!`̜e^Sk=XGqFl'%ψ,] 4WQ\hQzCbF2(u~۸H3L0S} 'ͽx-vtL'. 2ow2S;SM=_ 5;P UY: D@ԇyȕ]}ˑQiñ7[qKY>GT#)'RKt X,a:a,6D]Ż{(={b[[ S|PnHhWêiO+Az葥wn&ְ1Î5BC(s[3T;Л_S\& <CcJMEߎ$zGtzƽ /7B҂E)Il2ܸnu?@/W(EΫ?Sܲ,rNpxePe@K|U{ݧvZݚ2}L> }\v>Qhf,da=6X 8crE!%=C*"2hv>EHn(J`lclpC̟}stB'pO0BhԳbE9F:8V ȆYnJY$ĶK V._b]?/<1yn|Gx@^0= 1w842SŖ2m3+weIx郻)YHWm8oy µa눅×m>Jzoo5& XxvOڋN~,@ׅW jlv]|޿` 2-ya(d _BN'#B#1VJQW|##@0,EJj/z'n[gxsW&ym>!u.HןVo٪gp-o1]zwD^}2+-*+%T@1UmpeFvhJƑOp̒{m8Ľf8L'Y6%{K/<{1&d: <24JDD@ِk͔LӺ2?I|^d8UZμA44^{+)(ˎG'ca*Ir8Hgb?q+Qbz>:g1>:ҥiX9)T/!1*|۷]RV[e&xhDu9]B?{R'^0W!-*6M @;܋P5v:djznYq{mڨ>u)60ǦG_*>"0kǍ CR"*pF!WlV/b KerRH}_k-:6'sBmIw;a_HߪC-rB|xk8msС+Q5m? nTIak@U!pL_@ |\ A/:VgO4iY:y =;"P?lcvԜ'7=ɽZcf ./_zɹz|,ɏ< f)mL㧸ݷ8k5kI/76deۆDQvg t69uk`pU&K1 ,1js= RƏD+]PVJU.pR}Oig &2٥RzBS@ @.ݯ 7K1K\jl|&T*ٞuxu2!I^R1@<5*hT 'C{ *'@?fqJO+un!?*4RRBގ;ʌƛFt_&''n(iض>($D{K{N4" ^Bz||rkmMR~;ҖA@9[ak "j438=qޢV^m_flEHmL*mhWOl|ʿ";QPzeK!mSfd}Adž2T5JpOa>-Y|M`^Ī N&3I7H}Ŷ7yIB=.]eTY8Ch^ByU<{̙(Mߎ4;7|7*'==aq8D` Lj&o)˾3*sT P>$OQi;Ig>!`r(! },Rm[6O9NH'|s+Ɛw6R vz_>C + |VPldqk¡D.QbRȁ /בZ0ndR6^t+ l+Gel4}͕; }C T3#؇(*d/e g%"oĸ8䣵B %_.N,>&Ohoʤ'P 7F4&>ey&6y? >6J@Ua0d]DtN-]Fzr:|+jkaޗ L!ĥssPZ]99/P7X2wQİFjDfk>3EDNͨ$ZeithNw̯ټ Zy6boVU 270-{cZ-!ZZ~(˕C(N(";oW0Y%`ۆŶa=n`{3YRس'ՀǛN+㙉"xܨ%H> LB:J3 ޗ M):sj|`\O^ZX""hJf8$Խ,PD7&ˆngkA$S\O!dIa[^qϨJXA k+B{˦t_Kyn( ,e+0!96HBn| !G4?NY!yQȪpu*Ir\ٹj:o6/ nFŋ<18z: Qʲe]p^_L_p=NSSe&S.o&$Qg/;u*+@G#j؞#&7jf5:'3pcs5 āʏHOiWjnN`54 ÇA9fٲUC& У됚{˄W{x곔OXZk½a%>эo&$$({ JQ%,%yxuhqqZޝZ{Z@Lg0 Y5aЦ"J|)8*'k=22:qķ%OSʕ\D j=ѭUסśC9S^i|S-+_9ÛLK>]LK 6^ڕNwb1Xm Kܞ~q? mEE޺$Zڌ倖\ʦ`HlS & -u[&2ᇂ h,%#YFʍb6713 D7j={jŔv6nhFg0fݱ_ƇgۦF%'7N:~ԳA\{MFcxD5frQ;&Q6xzOnsP3n|#}u͋w] v_y6ODF COc7 mӰ0Xڙ8@F )-]yMg!ؕmYex7QdLI92-mG3T'td\5;.ߞHViam ”!P!HB/Hft uR\~j}|Wdߢ*j0?_'k"&sɹB,kKW.=;g9o!mBdF)]g z:1#\F"N\:+$U* e-@{yU^ZxɥXu=TZr܆ƶk ӖY߱xH'բU_ ڝx8&EnNG9edV8u"uگiIԠꉝlNg+ŠbZ1f(ɒù̌)ﰱ;4*`\B[no i)涓8^ռ6'G*$q&-JܰRvkha@nëUgCsĶx:46%|+9i3Nhz|΄V㚬 jUE})]4-~Ȭs a,L&qFͨ$8*((:QELDaee< St: q/:ȈQ4`!bÒsk/C.V!7oS@g<>HzwfAf0إ?G0Q!AE\uY9@΄)si!ǃh+y<#$kxíg+Jm{#͸+e&K8b%Eȃ (_^\6y\3U>l( 0ՃcsQ$F02_x޸9D(Fp0$hY>mU\y  HCUwKM˄C_[|\ˊPQqf{5?nTv2f^8/z`_1u%=ʄ31ŸIQ c.~G^šzAk I@-[{t/X[pC͑AgkIrؖ-+ϲ/kNf;b@?3liJs*r"TTH&NӇ6v}kqrɯ;G6m4-M8{8YKk< `OȽR%~Fo^[ʭ%ſ܌1 QK^|1"K0 KT{5E8}fSc @̶` 3WAw%_؈hu jRˮA>Pz6yo n\Pnf2k%`YJOhj7y6A7Kz2 {~bPbtM)4:YO ǜ]8ڥ0(914[v&7P촘9P ݰ7'(M #Co݈O 4 Qv6p ļ5jlx?$=C2PR΢NrÍ@#=`BE'ϪP)3~'W+o5eH@M ]H`0Tn;y63c$@΃U%l;^]}ĐF8n HkĠ7vl g^¼ j1KG \U=V A=*bKဟ]XR/0)8bhNXV)r ʂ͍)ڦ)sz*_;ǒ-i񅸪3 N;S!S!\A36uj~9$=KYٍݪ UzM:x< JX͚#iJ\^ry |}Y]J3S6ֵxtzᄿ'_4D5@d)7)VKKʨB^s!iݰϦm=@ijBU~!rM7Dv%;e!:ڨcG>0Wjzkk,i@;][ @8{)XϢ)ƣAc@$wSMM1֤()9'6(0snSiI uTEÿk̝тkmeG}lŽM[r:?ҼTJg m,O$g'TEЌoh(5e;b!gS*+n\ .d`Q O /-~j\elV ~iڞ煤Ѹ0Oh&ΕF <;H=050qqJ}.F g=GA- ÑE4jt`~"1M;[ m+4N>mSjyx{O*F7xk?>X7ѯZ|OCHي9)@5OE0|ɬzUTDpMΗ-hUs~S։Y+݅kD쳩q.WugV۞vΠqiշiaJH 0w)(e25ALeQh(o^˙.V}.Xl Qg<"X6 Сz{I)=зɬ0H5mE`SWf ;Εj}g]!jqcdR(Mm"6oNOJHc+O<04}MJThAW~|J _eҢ:ƄEG!I "rH}Czt6s ;#hZL,H{a5'Հޜy;hkBAX\OQ^DN < BY}oD!KB{&3ɱ :=]bR?ox81;J9I Ee=lsFnKf6O4vüPT$sF * ECm=`J #.Ϥ&38 lOs̯2/()2rؠ>k(Z"ZCMwD PkUZ^W $8Emo3dowP|ԗN֖qԠAoGF[A`C=;I+ǟ6ͮnذ)Jfvu*`v G,]hG _a)rQ_}p~ MBa')JGɥD09#,fUuku ;jsXVn>#f]zճkch'EgB+%[8xx"G}?kn(hV9nBL"d_9[Ąt @!Wj'6Eߋ^)gr{~#'Ypn '-ԭƅ=dR0EB,m4 ;7iuWk`YݎJTo+ ՖvY{xN~/^n8 'z6X:P 6jJh˿: G(482SZc^"L~k(mg%ޯaN߻u' ² ;Ao%ZiY=$iqFMr>X 4%Pc&/Mdמƺ9B[<3}pr=Wꟳa?}ɿYܪ182'r[1X~XnF\6KպZOP\yI$Qhb\ݪzhɛ?( )irύit{a3֮Z孹̦? +^N'd٤ F]#zfzUYZyqȎ贈K{$euXMMxC2ɾs&]j7 %T$QvfMj"JU{"k1X}CuI8jKOFwA"XU7F 2#r}uh[8TxI% ǔaGF;U_\l;q(7 ;f}%[#95JCU} wVg >- լ0PE3EguOb;>yGH7HQ'cѫ7TѶ%bkwi8@W=M_tyrh_=]GStz1Mt.fק[2$;[<8?Z*lOquG M[̌a٬=?B\A+\CP`,/(A&4脑-PIdMPA<2^7N7 ,M4(͍zْ٪'w\*_MQFD&K_njWשgB쨁FG# NӨ` Ds&`z$R"g-I=euhM9\pbH' Xѭݟ #o!_ Vkz'$CInڡ- @ ++px` >2#ը_fgtgl2|MK}(~Z1aeX [W9M0 ;z b&CMa콎t-W> k鰭H7.О,[`g:IUd3X2k6ªL`M&re[2%U?cF\=]SH΀-(G52@jj4?D- fa&+mB9/f J fXe6AK^F% UL5J~ŀ|\sc\!gdQ)q%  ͢"$1> 5Nv|c_n[V|Y''fQ4azYޡm#[NuIXƓV׻K_0踶. 3Cn nbeV_J|Q$a!4nu6UlYVW-v#la{EBiP`Smj#6 t6eXv08q2V .V0DL@@L"61Şl/sB'.QV|a3FDғW@B7M|/|zmSO-Y>}O[-g >%Jh]НүMܪE_pl\6=H0' ~[ xUWpdh2iJ\ޕͧ!/%NrGf vBM &Y}p+ oI0z s]y6v ^7F+닩vLt(S1.KǕ s_8' AP~4fecݝR7Л Hܧ[ 1Inؔc@^ ddZv0.}`Z3O`? ѳE%~x*mryWF*" 2:PU Cr𢡊m2^ mv{G笕yhԢ:UӷQMM:qi*krtK"IyQ( HrPH%4c>K־TK>P{%=םkne}+k7:`&VfKve> 6m Os8_m,ZKy)Hĺ5G߇i7 %]XrXCnƅa~ rsex~8qɧ1nwZOV)EkliD~_ɱq:<o.4{"),Lum]nBKxy.3$RLd&a7+9U{o`wB~y&TG`o(/IbN/p- ՊSө\Ǯً1RlÓFp7^b=k;,by".v|OH:HZQK1{)X<* r@]L{evv]l֌Ȫk 5Y5ZrtiM?E`ڱo-TÊH Tyt݌M:p[)Nl?8Wڰ r}i% ~ gm0~BGpsI;&M٭ַXTY5XLfLMp p;b%ѐ d7֖x<_ޝ`ZVyx5UcaC5(BRGmsc[S3d|Z@UPB ?tJīvHI,}@ 0$(J ˄Т[*7oUYd.~#v{1Ɗ&) 3<  ,8i<pƄ b9ɜ]Cv-w=V^H^{m-%zRB3N5L-U'u-!}w`^p_"%1hre-qE߳L-lSUc?N؆Y)wQnq1ёjc:G-Y̊(lk%` ;w+ o m$TE&rUT$>\DmwfJk)|/,Kƒ"Gu%zy*hYg1YjL@QE`wD|3cŗAOf~ۀ9VH%>[~?md30EsUث?APͧ'C"JJ*aZ;+P LM.tW02sm7lŽI;Y*37"8XT+udeĶZeh#Է:.-T\wYhcGPMl TJe oz~gSMq $&p&1'1*>i/;h;8z ۞H qQBL2Cb}Pd+ChOO<3!#Q}\Z"Щ72)@AۼͱgI.9m,vҀ) g`6άz:%&XV=!dFE]fCWS yw)eO "ccޙ$ !f/ Cy=Oβ9 EO]oDj(fpF%a@З7,Heq$`9im3K_*W#w!o ǎ(>VrxʣPJ%Z1 Z=Gb5PJTMW XV*I-o&'z7ޝhvPک!iUh~ 0(x?Hp/p#w7dX] ! ҧɲ֌朕֌~>C Ats hEGɊ0[M ߦ%{ƴ)Z`ζ Ev뷜Gaƴ(SJ&{] ڈsܖ`!B/RcpN+OE;/taP4ҶF@O$iΫeJ^wBÅaHM%X^1qROXŖ! o fWG ĿN 0L]V@=T oA^6]~')+TJ7+>Ԣ9hE4I8~늺dY,isOI])m*p?u,o+${+mf-l4FSV&L)'7iC N'=lcw pR[ZQ{MW"uΌ*L>بzȞ8zw{/؂ղG5SkU.IGXEf`ʇوͼhĘQ"-jX]m&d`%FfVNzT=n+@P7cVoŖTQcvpa!_Y̢qXn}Pemk\ (@~9#o`~ !-T||Ļ`x @_'?sXyn+=4c\XBd@z 7:=lx֌0riD/@]`H*0`0i9L9(gzmT`nxKIXYK [vtJ!a15;!ؠj9P9X g ~Fb;^t?!pI{H [uaާbB%b7<\AeLuR _~ 5M@oϾg>oS]Iz?=m.=GҳI9s]MAG"b\r>ذ2֊&f8"T,⶿Gf*{ hTXO._k#?o.qlސB-^t# ){KFPʧZfB#`wDvq=W._R@H+#1;>SY *Ԧ#.!$:>y}Pw6Vik)ZϾg;@z&[ ,VL=r0$kʚʶҭx~B/u72r}R 2i1_OKRY;YaDc*S pk(Ԕ B tsw歫 1=yGw`wGl_[!A-2uCsHTdKRDQ{{Vina"W2i7&S^H1a\oA6!zM-s7x9F/ I#ývQ t}ȇkK@'[iZ$CkNob#5?^|ek_y4y}E \W 3$T~Cwʭٽ/'*8U2H ]G . Y6kֺ(5ON ņxY}!rӗ7W<'@W.ٔd,H*=I T2E?t FTsLzDqi5O|1FɚWvJFR9G[NW7W.*9PTzGj[cmևn"͇G79@Posb2C㹓biɚ1ÀSl%jxC&Us3(_0ekX @뭬0ʢհD*>R7NtӉ_/r8nCt8PgF~A ٳ+C*/ηiFͻDys"-Ug{dm zO5(" R$.g)es䄣mouޓ|є<IEK\‚Ä$C9naYzֲTe$qty'*#wa~i2Z#77Hn ש ^)S^<5Gw%i}yjv뙿@F0k邋 rsG?2cfgؑB$_܋A7.9:!h'#bMuN pRn{yCm`ԟ tBn@$I(' =)J~ղ?ms~ZZw][Rpw,2MirW­ZR]ivF"ĥQ "T F0db|)|.DɳA &9·^ oSj Q? C 8_'G\mlpRݛ]8ѓE'&Ԁ)Kd+ ljyh2IzgycHO°eGf/yq/+To o*wJ}~V`% fMQC<"sWMk"=wQ }]Q}bGeXW%m ׀Ij(y? N&,\6mqԑc-.Os2\~ ة-&3fa i-<pikZm2wruphE:o-Co-An-^ ?T~k !i(39ێfZiպ]!#U&cRqoGR0-nz!PrG MV=Me t0#E{;pP4naAjyN 6Vm1GzM+b2V*g;,kL`Hw"b桯S6~!?SKxD!]S=( @VL?fqt9 U|K1s;ѵ(w[tOVa.V3A& LjЋǶ$Bt<7:\F ƶ˭i+aljU;!VYBy@e}ݘsϷ;ΩG:S4w隔銫u򴃃&`blDTs@[M_B-rD!F v\qFwn;JtK#oN"ɉjgjh){/d -7xx.8#af9]Fުgv*C,G;?4zÊu)\Lx8+ZF:$ !EѲ9(iebQ΅$KPð/(˕a\vsWؔWYg\wZ#3 qD+,?@}҄i(d=Q(}6QqkR#97s0NJĶ*vEo6RC RեEӯiB;֔*x}߁VF kщLr$:s?L?h Q &yBҿF&0V=m T0&WϠG˔YPqR7]2d$sjmx^>0W+ʢ[Yp>KLgB9%A#IΔG#*Jso36g[?ϋ7 b\P&7H"wc_!]zCb'u۱7v2ldLzV"d.nP3ګD[Axס*jy֭hAIbNBnýfEf89vyƒ۷í_zbƯ~d+msFF Ncm:\`nmڳHEaJ&̱m+L3-s`|d:>skwڻzY ]xԔ3JЯoT^0 4} ]%.]~- VPpXGm:̀^aqTh+l +@&M۱P _]~LBƟ. Ù5XEB؏-f->XL:g3o\)ULa2b55ZE0(eqBEm34ތVl w2친@K@ ?'̉.2ެ\lZHR)RSxXKjD^MC o?_ {l55lN\E,- ҙ Bul#>iԍdQ)אiefvuqԻD":hVj^ːťl;ȉT7"-MLZ%*}ٸ"e&#IG-Qa@tƧqgIUeX"rqRu.li{ Bڄ?^ה'c8C؍ӷG՝#&B  _#'?HBLucm>L [7}Jp:ҼtѢ (},9p,l)Qvpk ֋Þmz^DAM6Dzʰtl[ìIO4U3ΠFqVPBBoqC-{FZo),C8tUT6!x/ZB?GsvF}Ҧ<ط:^1:t,͍޵w`ItyW2~eIuI0йBQ1qn[7u/$0>c^κD b%Edќ. Q$0'_Ć67]j<̴PR; 'AnHOE0`5`Y쏠}I6>iS1ڢ.leLvQLRȀ7LX v4=x4=NQHQt3YgA&je-gP ݩ Humר%c22UwZY'y(oSkjWpN[%WF~!E:d ؿT`S %ʊ9e% I+)M!/&}PщTrt[Ї=JQ33)(|p4PC.0y?]{LgU.$r^kKh^LQ" J7\+V#Ԃ {Rv+W)PҊu-@o־|-F9yHё&+Q>9-G7hڝRxel Oie+[KR-jzL(iH;ǖ"]CTWٱPtK_TAN]jlkf v"ˁ0J!dqa~X>򈇬 UmVJvCIy0"i<}RmS-.oe^<樨Iҗc,8v#N Vw^?-uXP`|y ֵ71D+(U>Uq2}٣00;a[hBxR(c&×@nfYAqm>@>t\wt*$=)6 UDA-"#0)ì$ NF^^inccJ9KlNBڑq7Q_U|(叻!j38P!Od%u+OZ?F(1^fRv1Y2Tkeܜ{+$o%HSsQhہ~{F&yO0l  45?̻7\`z^^ .LE٨+'`,eM4k' ً)\CSL8lvfM_1N.h}\Pl]1Oo< B}U#@ 8cLFC@_Jl'PRq\>LX o@Q98I#"Mr"rw`itd~VQxԓ⫅A#0f~6w_ϻzL!-T+O;.Zճ#d+4g_"b+$3S~.ϢK˻==˕ y?,kb1۶4ReԪSɖ"B9^‘ w{ynW̌)+e$Cb )YWe&~VLrFJƤ7We߫ lh/ Qv5ϟ OyoR~c,MHXi"dJK.}Mӛe qh,GGj/}6_ pDtGKeل(5Gـ~>π J Η 5ܕ3^Qw+ꢄQ_/w:Lg-Or\we n':xAOߌ1ʤ`<+;pI!B8kSe%2 2^x2X4/<|b> (XƖ2gjj4}5B/YJ(ILo˂N>]H a=&w'F;>^%(&}wݒc2|tJ^Jvu]%OP5'뽣:zf^aj>A8;&+=K=PYh|I^:_IA| [nCjrYZȰG&/]s/1"kRH2huɵ>sF iݼP)x]WonF]Ey 4R]hlJj ,KIk[>@γam$}BUu>I]A2=v:7},rq@ EPc cgi^lXݔPjU ҉pB,(/&˼)$-h/ j̘F~W{)UkqLa?_2Iy@.zWzœɧi-߈7$?#=[} L"B F'G2zS,*)uS=)ؠvel˔\3.F@+fXNG nodL$SN?fx}6t{v8 ={;Cg71;gj[EЃOO-?#3w%`ܨ7k-O,՟sd >Oz\y"e7FwFhj!35\?2o,GLGt6C<(Cc- orS#]cSLÍHx.{XG6DaSo_OJr2OJC ABCR`o$- Hx9b*HU̕n#en[rj]q<@*!Ueg<\/OO}q|/+a{`χ|qX&N^~ 8 Sd)t7dU<ۏΧe# cqwtbv(.p˶T~Z  &]p4~́cð&:5lf5/'[9M=4;<ğ$0ywv'^Te)6i),d޹#3⌗=B#L?l6K]邲>@}q~4M"Ӓ>䃃+nt/3kHF)ޘvCk`,ͳ"fH %2>z26>z;ST(u92{W .#)F=zKáM1QbOSQ:u[mK<7m2w+ vVX Q? c;+Kk)BA *78edOR=wB?,23; ˻oCRZR͕m&Z@[=q7 7Fk;׉tQQ oKOfq!s r}s&= t"x租30P2ePa,¶>i]Am *->O{#?~\Y |Ri|KІK>v{=} xةU0ܶ7|AۯfjH|5FvTb0r¢1ԓG՝(#ew.łhS.ͪ:u=( tzUf/)ػAxwų 6;Dͱ*6;c 1렇~dLa;h48ϏMd7fE\ &SW_bؘb yjF: ss"=)lϷ/]gy;5Gt%C<NJ A2lPq]NI딤ӴISaD! 3cڄH:C>V7 Bjjr՗:e YuNp/Xo}_Mcpbrєhݳ{pͽ"an4KE^QtΜr姬I$1 7 {U/C4a:5e? :x$c@'ƫtQ/֑)TLZ}'Bo }lvZ:򦚺>w1ةO&s:K-0I7)_C|F|^6f$Pvo Mބ&vGo \ܼ~Ͽw~dB'2 96vҡD`P&kX%O2QR#>HZip_B"dr*2~B䡙߁6Tm4!]&j~Uq/WG1;9tΒpm\w62V}4O6mbaG<]ϵ'GHi-XܥkNGU"V7"9snXhr<xT4ʚʐY'b$& tj`ېwlM[RPzQk֕bD2)1d>ڡK@hp"W^5=4<=#bTnij_{WE xX2p;rvҢVžgq5z}4^1|*=BWQz\TZ[Hlͼ7/ֱخiQco@Y(A 9b)Ү]Zd;}tyW%>H^r?%T֟c>?G  v;cBtB>oM|H?AVɓהIG3| i%ǖ;d*e=wYe['DB~Xacq&1b<) y/,-̛8TV^;4PӝpB .O+<VjQwx#O? VֹDh|ckbl>ٍ ][g-R;1'80愹Fgds՟.yoĔY]fV/C gfWRNg㫲G  Q+3}T 'DQ$Vu}]^8@9gⴌ fXnn>[r=/D)O6e$0 "26 44dzIW?*ME?mq/oI$x͡Yʽ пClmuFN&? TgI#Cz¹7n[ T؇N/[h)tZ>PЁ_{3[ Pq&#c&yAz0x(Y &}߰ 4P ,d6zYAuqc[٩ZcMwǴe*GjiىsDyH딢ʒs/a,.$1Ct I.\ Xɵ8Vm1 ]e= &j:$GAjdH-5"LVb7C{溜M.eRCM~G0TE<y$rOp_Ӑsřή,DЗ^HȧMzouU&Ϙ͆JgsrV5/ e][ ޤ҂{*& PsT•(ecUPb+u=SȺ#D{gWcC -KOmNq4̺}oD qB/rpcC\ S|kjQߟ.z^9M85Qż;056=n-K@?Irre37"=F8Tdid_譨A^(FrrzGfr9C uȍ ?rH&Ib:'ml_\םoMy|*ygƞ(Hl9zgRb?^z ^?q?SJʤzgU au`Yxa@kN]Ͳ2;YiaV^_}^GAzxneА'p GdЋj|8G tV( U hfYȇ9LJev)汨ϮFτ:xr%nD泰><,'\lxuaNl'$.>56 {D  4m::|׺ʺ˩,fEB6r^ٱ@c({!؂Ѯlk@ ،BQN &=[s3rrx}J֐Ћ᧐v t~v!dЭC1pIȴoWL݃G_fE7M3EކrxN& \+*0T}ОKfs' aG 9V(qf꼯4Y:7ߡR_wPS`?t% W9ٓ7bF:_kMǺRRZj1sbc`3%jS/l2rR8JEEpq|*QOdC3:_ O;`d2U@$}̦ Q"!!ZqMN dT=8ˢmSUzs@q_P!E#K>oʉ<8-c(=dfaG۩*-2x?y9[x>Eַ=Xc^jhguȐ35QlaNN[P3+! yR%>g/lv)umJOJ;\9{Jtnظ˚bZXy+r@mǮ=62mj>P)Z'L A>*N?D+ru CMx',Tk9*XAFj]|dzW\{0HDka^0|ǫef3 [xp`tkL|>[rgܮࠅԖ+ ;MR̹XƮ`Z]$ a*m$am?'SPp{\27Q/%cq]Fu+n X|~Ce5|5|,zsL;0g"tiz~ ~ /N|p&!jj4W)^?^]G8< q,d I=JY]h؆rzaa.фtPBEM*^c0\N%_.@>K(x|M% 6TtN݂[rAy6Y{1f5Q ζtTn>ug8g$b"gzTɛN{8;8=IM{x;A<ge8~ȗԈržda,n9s/:]e  33D:`?<}FXhp\X:ݺXK̼ undAzםIxwzW$ji1k$-3-%Hy4e[=oHX`p҄'Փ4"*OBv͗B-#b͒eomR*=uExp Tix{^ụ|M$6BSK3^A# 5x`>`h݀\#=4jN3~8?$'7 ,yӏQg֍M!"Y:ɼ=8Alb%SAv-A]O*ξ ᏮjB`o?N QՄ^7+|VnO :6(9oWsWξ){ 3o {;g[tsߓAՍX5&!y֤cc[Z_NP "J̤;ӡ(Sp\.Hg ?yF BM|Oep,IG >5VIg˧H&|f%qZf~C n3=x~7)HG!0ZDjc,W-QYEOcT6/a!ƬOgH|!, '#OA v2VJFqIO.I!TϱQtC?&s ňX܈JhJ}5fvlU|g2Yݙ,֝` Z4RH1 sȤwKZrv 2v8R. ىXEO&M()vm?˩۳^T~w'z} |tD'N;kJ\ejȗs]@ :V%U8<`o-CX{"]qSPm2guF) a(<? La[$+/ d@Lr" 2M! ߎw$Z`UhX@)1rgh1iwDO:O܊4ǿ1~=_H&=PPmk#l[^޼٦ /͆s? ߯ʞl3ϙYTjX-;j)^; Ajr؁TH% \I, CBEqDJ>(}1BA9 #c>^S"6YP;alW+0c̨X>4GM~[%Y4)#˧8)ӫ`^SG'ZJj@zXkka?CYl5o)P:Ms^*ڊ >9hjt5S0ٕùo{QSl^8#0|K2)ΨBãn+b B~?__vP*QaSթW3cH'<^)IX8|yD2{7MY2hggxzp*x"'ΙOYD'/i !I[ KW)Qq<$ndS"*k!':1/5/l[6TsۏM_c b2PZXq'^`5.)>#mc®n7J%~ßg/t&+85]j Ǒ2̫.ʉ&aoPD-d̞/Qz>sơl;.iE~Y$ƙh'F@rfnCeE \$Bj'_/aMX篠g/5%jD>-"210W؂F?p#"~b'Wrp(F~]g  U _уà,1:;ݤ1MJlN,d[u*m4/㩽 rOHR4>FYzvq20&-GeQ ?r%ujR~{zHRQ VCK/S{9iDH2['Je5\sfq:6"LS~.jsc C,XldGR6C?5HoU4M*Y޺ۅcO6*դr)e:弖=eb+-heՕ.Au`?C`HvQ抓5 bcJQ{kpGGX7Ws.fa0|sB"<*qlgVAg!pc/,GA4~ȯ")hs2v: FCEn6Q%3 {79Qe{Ip -BEA#A <l k8պ/PuǖH߫xS#n(FgcqE8,/i(LuLc?=:KaD=X??'8TBg(VHsQ)⠦,{R X¸d}I:x׏P/TᘟE!0Lb3&TW5 L `G]i"6p|կ3oq?+Ȋ/%;Kq7Sw0[P0& &Sׇ5g2;M;3՚fIi"Mw_ۗSGr`@RKّ;tՔ,虯&A^~ԅh XH|=® s2TF#,+ұ!}m$ Ј \*kZ? O󫲅I5/&a[%@wb2GyO]*z (ƦT]_~]p`$ªpgszQ|TTi(dh.Yy&un  >^F68 u ҝVuRړ0гJ]VU |c, >%y`dYvYTM~LHɮĝX/q 4ҀD"=p*uSGrxLK/k{eMl]T۽]n2X0w-oW?׀ONsA-iu#= 9*PxgY~J`Le>|/Bպh0 Oq*łX|gsaĐ[j,w.TLs| R'}}y)'g^fBe!9;rҒ=˶AzY ?i`F< (tv1S>GeIPhgT?ɉ&Z\ڜk+{4 1R~̫L\HhXUBz[|H%"r$TKj)w@__ǢR%XCQK_WzWNꝖUcb#[~cIZ o_2 .BFljnx yQ֭&L qB6Srn0}O@vŧ\L(ˋVJc%PNJEr\{W )߭XY$q=[ֺGC ݫH !x (jhƕZ1<)*aHg\;,MmYT! ~kmjT&x!RӔ m\‚D6ڼOc9$ɷHQA?#M_.8+6 +I[0ԝiNȿMNj@ch.DFܫ)pK7~ށ 4Gj@FZ/Yc㾩jؗ&0΋pj[-R@vH`eFA6]}t>vtkD FmFCѢ0KXЬ oO26R)|yֈP99 `2Y溛6_vB|9z<d5-}PD3 h0f@ ="_o&G _ ;z`W)DUt`SQi>'GC.v!ɛ;\fS$<GǸv6#{lA?h󾷐x.JM a|DXpjxv*n.)b5j] ,\?-ui32Q U }~OB=M&o0>`pa=(Ew2dJ : brj(.)Zmu3FD`g = OٺmL7o2ǒV"qտYz2|%'v:d/R!/`y+Wj(EST9iG{a5֝;uguh.L?勽ex_ʈf&vPD@i8~]Gj\ދ̷;jׄӑٰ"/wͬu#Y"yMK`ue)64]%hz2kXX.\j.AZY'jUlR<ۿ6t8}50c6Q{dPǞB&"W&cnGbU'MMF ywV50.p;$`) 8?gsH9U&y?6oꋃ V &;oW+B3aT DGXW5OC$SDC\.zYN !S0;+(i؉0Oe>Eg;&BC 4G,A &4*sE2:E7:MfP Đk!ٖ`X[A3`,H7p@ͅ6e9'Ņ錝YmEV[ft<*/5=&?JMb|Z wN ΞuM}$)y=(TUy2űfYB>g<{u<: ƣa?S@CvզyO,{kA%i=_6tr$ly>}Z qRQ2G]x[8LĺRcr)`mo %͹ :'Gk]Qg`ýAmmް V7nd4ŋcSq*/j,@pe~I7[s. 7Cl l[<'oxAHqA4/tS@s W1}5o9_?J6Q5^RY*U'P&]w22aj7F]n %K(cH+H(!" V݊0(ZQ;`<`lP&Z*D6n݌D+Gߚ䶹1U4?$ǻE<+[W#-Qvxˁv\~*E*Yqr8 WUTgqL9u~m9E'9G]4ԉC[;6 z=P&)@NҮE7j}U0ٓFaf u=Iܑ1ކD`8Am$>ӬÜ@qbN[.*vviݯSNQ~1hCoV.XDxC,Yo/nM3A 85RJ$[%KL;Qs%ot'#(zF@7aHVsEP voɨ *YԷ&)iz)"D4֛K^F??LEy;n/]MBqm$ý`GG'Iݩ)$b*&ʊk2~g5eۯǁ_tK8OڕWfV_8R<*ױmf{ 3TQ 3zufήr(VqlN1;.`n3%|/|Szh,.YQf; 5ѭ K|;HV(@xkt ziٽzWَcCXJ{*{<9mJu]t _Tt.rYSG˙41{!J1Jw;ƛܗȚ=}$S|q"qA_fa̕lAN@5 ㄆ8N#tN?d(씂=@Y@jYs-ЩPIM%2C;Kx1 ˶r.f)\ubh2s= RHWOO2Fd[t6p9򋛏H?/9${k`YK#YHjzF alzxZNRB1QKш:FU|L㔇u:!~ElQTtCx4JSۺnhxP>~ Yg|e5cӢc7:I8]@kXOBaK?$/@}=0 !Ƞֻy[n.FADBKB&mCw<Æ(YVxX=~p,Jpz!7!ŷ#!.޼k9:42L6:Hߡp1WV[yn6Zt\3{~UFDb ֲlL櫦^:Xx9ZNd}J" Zk l/!G]4iwIM>X1$M*%k1,A4XD@~g1 DNˉN*eheYc/ Nͭsr.pfeksei^ >ș~ ^|urX10zL($=Ih Hr^+2$g4V8'A![(;+T#\PATݞ!eC.=EWNM ht[+p p",L\d5k9AsR(_ٶ+WwNd\;g*W5\+`\5.ipGMݷ8uiKu؀(KF'8ueDV"[t:\nϊKp՟(4lZZ̘.2#{c!8O mmRAJR1x?H$M3Ϳ.t`Xḋ>Ph/N>6GHHӡDo&I?8A_?F4- ΟQQ `CST͝՘`aM.:gZt8?)']QQO.R$|sZ*O6yٜE>^Rt^K'R3jO| 5 5SS=.UJHb+X5ǭӸn<6G({/f<߅(bAtA;M?|3E?<81Ӑ79 ΉȻaQn';Sut}^HBAj =^7ֿ_8Q#AZǔxZ(* ! oU5@\SԴYYxzj8UN,@섄^IJ$H̉ƞe\[!U+ 6gpvW>Du+%&)˯\UFJ2:%svrX9~S2oa߭*T> o_Cپ2e54])Ft#PT8H.SXpT^k^Q\ʙYۇۼJ}3eJtGA PTξ+<3 7 ;ZuÔjf7Sж ˿2,z64? 8 kZy)_zx}Cs 7,q$uёq(86wclמ O[mP|ny'`ďU]A.@O&,͸ ~^)Z ,uӷ;fX%p)c^E2μhRLgbțe#^fDd* dap : ˰zS@XZ:HC庍idFDllh4WRdQG@F'᧖.\D^eݣYUL'"Ă5'%}=XD3fSddGIĬ,sSŻ.}IUK8k\BfYNKBnIOP4[F(YB>G5NkV~Hbǧ',-?+uÕ!*J̶|߁WZAw:~}k Lʅ+Rп 7R]. 3swov(郜nPKfӶcv%3ni.ITrIA} UgSvꥲ&=V%5c>!/:SP4tLY(3n4ؖhq\*`/o%( ;*I[6E P jO܄BlxkZ&M'\ę<5SKd1!W;{\P"`|dW[5B4u鷵9{ięj~f0A1⸖4s탚fGT. ˬzuA?!4k LC[~%R5 j梂}pIYjv )gLpgEvV,R>h^0OowƲMED5"Ͽ.דrٌiEKXxUբ 7PٙKNmƅ?2яؿ#%ݨcC_iLr>Q@rŌ6B<^ "OZ5J_(8u@4Wf:xjMl XW]OYo|?Tz] U#[=+sE\*JApآylt!/ PU;)Q@{`rҋi*sǯX.65x$da~?¡yxbkm%4M~9dqۄQ7{ע/Vٔ=a!;p;Lr?~&)?70>VyuI3jDĭsͅCY늶-俦_IVo| )}Z[{elr`r\ ޢlg{;kz'H?y5 ~Bo0bĵ[`mp0W`Lmui%saj];kARd.bN\#P*ԦW9#OaxLE7t2`f"iü\<26-bqf#=>"BEyEĐm!6ɚ[f p ߬Ni:߳Ng#XoLEnP"NZ, .Q \q1n=CjC5m}ֻ?;'r7H[[n HF% >֤gZYA.4vl( ]l8=r7 H'pwcQu4nqc?YmlKRQ#C 2o:l/27Q_.#}K rc"fC= z>,k0/ﳥ7S?^knjӶ @)NrM@{0%uocd1,YG!cn E^E8gJӨGSUJ(UgtpQ3IZF!GMD`HCVUۍ|vԽ*8RHj IYQ6Us EjnHsYohhusiSwgx"RÜm"_xZ>*W@oM+ *2~b,o ,_b]1Vp-×9>fH+Y9z~AJ tcࢹʇ"5m=B~5'3$N/]ؾ9 b(bpJCP ##SS)'팳DZ=}W`Q_F]DK;Zŵj!#@xt1wnE} k>`g[يJ"{&5v=]9{XV/iQuEF!z7dy"rmYvC1=je(ĔhU˯|sMgdDZ5sǕd ],Q?J..s9Ar?9ߊ\x7$[iK͌ceAUDD2˶tBp%ҥ|fcyLʞwymJ;KuړuKmWAz}>@M1r؀ ,^eM\066ˆdo/};Y|`q`[տ ju M_~FMyjx!4q`1QĤ9`sJx[S'y))8I`W1IӵyCo@ fQB?mڵ#5$)IѸI l~0@D'^ *G\UvjH CND E7"s0-# .c1Tg/\i,zImKӁWHˢ',#M/B)HϨ9r\5EXBlp"Ǖd)U=5R霝 Ҩ7tr{#S ݈4eabsaNtX/v 8M\WGA*~ˉԓ mNeH'ԇ7O^@$i*y^$xmƈU a_J4cc5'zqY`U")F)RS ji#$?Ԟ0XH ?Vw7܋F,<756} U xw2@L8ajhHư6PmGN=Q-/\ FǶb9Qq#Z6IB+v+9 sX|_L$iqa;n! %ݳ\, (̵G1 gl?["Y%:(DJ}TSGs~32a߲/ ёL44M gaf1}:5YfKLD~^+ؠjE+lZ3"ɀ\ dg4zK݁mCϸ4` B'qg.Nd*,a8)U;<%//'-H\p_[8ud%}7=rC/c`=Zww3J-dܴ&׽juݗuĦ31h. 4Ql#0fgq:a!$q[ӧsM(]L*55xq\r|ɘ w>xCsr:v+s%3:cb ,u#8J&rG1*Xͣ_<2gB"@=>^7B%^Cb:m`7v"缭Kip|n-Ux ӿc{)x]*02)I"UjGmQ6 x*4oM3K5wPtFe,^E501.Bz XS#r-n bІC,i-fVNY±VuAI7b!cyȉ?L_X."(LZ۝悂j {30hl7jKzғ8~ƶHSDQfFO5Juv3p:nО䐂pɹ뒾uI&A2WL7lu:>fFLNl7xRYfH >pb7.ef6sM3Q@v]ersf(bn@(hU|wt`GPdx?Y}=Hl7q/+۰Lnt☦qto: p}z(: /#bgWmg:h뼩 rN:-hooU)KQK]3{ņ{Ct6tW  &qcAi݅ەLӇ,ib~̯j. ҕ،.ҷ+[G yL’t/ſ¬˙[0^.@1,L ۉ]k5EǤYz 354!1U_PإYZ]?j얿~0Wn\d&1:Bb-Ƃ`|m̆(^ ؑ]<Ћ|;Xr7_QOFä)mRu/P^pTݯB  N$gHN.nw^`I`3jS]s(,fa0u-JKӠ`6׈:oPXN.1"{,y1Q]_ q۫oI¨Opr=,Y>Qr5}r.eQP|.0ΗXj[DTGA&FW-606Ab(g#yX%7@Ty**Pc,JNʹM`5iM?4؊P_^QhKkXw60?f^yޔ0[+0AVe%">46 7<ν~]ϩF'rI˴ضN2MRv1Dh#6>/}ȃ1?3O'j5hWhxvKlUwđ8]S2hЛ'dFQ&X.͢g[aNHM=_?An5"TPHmk5NZȗBg"kËHoXTlݤ`怐1Gꝷ bp>6f"Zc7A]Uqy m4#HRy,oo+u9t9T^/(KsjXD;ďww]W=bH<=}& {Q_ c>O4CuNWx-L-AC[ag`ip&h3%RZHWƴ(Mp\"KqB[S)%4 9H&;(MjُՏ<ѽ*d+ 7No =/Ν" 蕾EF:onkF"3pS6y*B8cs<1EB.VUcJQG˲wF9&^Fƴ~>,Һ{ @Hơ` E;]=':yH[; uRzXK݃f&V;S4vezb #N9U?r 6xw*!=gƋH {V:B5/*MFM8_In0$n:=$Mgƿd[n`RW.:$?1χ7?!}Iӏq*(w"FdψU?Um2 Z 2-;$f,OAq^K}@M6_>"'ǔ&j]j5 K`uyPsG*bq}1BMīb0`RR٩ {&Yn=?sQ= qChW;:e+rYVieIo@jq+7jm^hb_N)=dV $HleRt1Ik >_R/ OwvuPZ~ BkOo[H<#ȸ& ^\A=="v䜕Μ n ]YNIFTFěͫj%5רYXm5 W5"{~.bBϽe'WE jf[FKJZ]w yȏ.o( 6I11'wNb-J¹b ;16%RlSծjKh([$B~A(h/s'^ep~'J_ TAfm enXAI,všT?+{G>묵u͆XB@k5Nu'Vr0sӚxv* dliAR~QnNrCU{mjoe@&8E~v'bՃrP)8H=/M:9i]ǎ~h ~UjjӬK $ڄ􏇮 >{d>Wyft pKX7L*N!^$>;dd-`e/1z*޴0*̘"CqXF3Β=lDm@~8 U2A8 yh{y].#>"G͚G =O q&Sq{2W/=5JeeEhH Z{pA, DE`_0 $V_ wuLѡQO/-@R̩%!B67u 2f:{rbhv16<1~s!p9JQCYWn{+EY<{ {8T{ 3UcW'SN_D߅BѻTϗ.|F*S쀨}3f(DscԝX=Ӹk\MY}Վ~oz\"sxG)$ X_4 ^dPH]GP+Dlc+?:B[,x<'A;Mzyȫj\a6Tp_aI5h ηMc%$tn EY?F坭0FLqhYf+{M}^ @8X?7|!*3)Ή?ca MhsKY$,m0}jPe_~P+y\~-;IOͮKw[~cQu}*ZF<9}.qBotv32q.a .;z2͆v]%^KnիKVt3]Kހ`-5#kJ3}u ]g)=@hc٩$x3,- 0f穐#i+|M$i%AiLdiØ#PFS6o hPy=2=ꛧI4jJ| Mꓣko^͟☩z-րd &z[ w#_#̙{yY^9;0\  ?f4Y =[:WK^9=f5FlS1 FKB'zzؿ~ U(JijckEDuD)F?QaL͎y  1nEnm܁A ~wX ?Wꨗ4b&VbvHdn»}%=SeR'y b4WTdmncmSun$+ D8](G0&QheETmIlv$jOT/ G(tKAQE4coX5%n.^~ W++%q[c1=ȖL sxZRlD3l8]s = u#cK: $[ |yss4odm%0{^Fd/ۭVnJ"੉cwi* z"P瑂R:79 6 Ia0 #DvD]> j ル+Db&'+I^v&"ɩO}d>!LJZ'wr4[h#s3K.sYU 9!DHh.j^rF5j"̏YjHOWTSY|b j]; Hȸ%x|PÕFŧ& F0rQ0^bj>YWO2qԝU:k=Q,>N(tc7`%0LlgˆQ0w|klW!&>}œalȊDmSSWЖeˣG3]kY{n{G3"&r@sinN&Ӭ\>,CJ0Zm.ѲH;ssЃQ0V9 V𗤗kΜ  D3XIzF8{ZCh%֍^ryE.I2Mkǫw={ɗ 4JbK0ˠ,y@;X"jeEߔ{k>_Z$c=]m׷d$dzU iRSzu;jدgb_u ձ-B&7?ݮuSFlXr\lθڊŧPi]ۧI sB ¡cZ61[tݿLHXeIsbi]`2IwD#f]dvy;BBg>WO!T|:}ޚg ~) ;+"*hÏq1Ko-U3e Lgw*THM&KB`:pE;6:Ԛ?]@ӒT9=XaGi6j(!XC" nBJC:aMhg@4(*A[T9PE8k&WN$zqw:%JtYUrN|=.h3&S"  G8ST@VOP W6 ur$"9g{W}萫`%9?QC۠:Dk/SMHVr?+ ʷoKi)DNgԃD 8eIR}1P:MTFOUjDX{\A4aӝ8{˝Omduh0 RV0iU)BS2lZwC{ 1k2+4..Fq>䍾#mJ?`lyC܃bbe\yPr6:P#["̊3OϨx9axY O-@q9)~_G(SHQ 9YַKнs wT7Q͉5VK`o|'RG]G<[*C4}]#\‚Ov ],o=VuI!@BKgA~7ICہ.m@O O5Џ3r uAqp)QSՄԌ`NR:NbªYxC*e%C@vAR@ƹZ{H? a$̍뭞##XOr"0_Ui;hS/ܯդHz7=Cv(m1rtO`a6ȭ l n~o2k~MM%nniĂLQ)v5sԚsVe\O;\;CJgUZpsK[a Dm%>~)2n*pꁱBYR՜Y1l;Aj*#_p/V<KyݡyhbdzlwFQDDlbuY[y5W:'W(-nQ رWqĬr:Ł?FT.k~$C0BզϬ=GcX]iU _#- -*9=6 zz)a梕` 3^5^y'6Â& ;~*l(o51e$c˅HߋOayI;]a O V "zw o:aTApK!XךCަGbz^PVՋD@\Z0ώx RO+pd$w&͜nO ȧ>}ah[U~d*s'_UF.թ{Ks zdPeI%u1Fw!^Nד0W=D(㱾*AuޏKz~4t!zfd$|,$ӄ$8 b/;bƸmsbz&$Eh:vNtoDNBeBo9=nxYFn|g}oެ]*/7Vۂ=)lyMD'CkKRQ1UOCpg"|޽F :]?)N+xiR|TZdߖN8_^0^'FF:#~7\0򟩾t鿌tչppM;P*pf4Lf՞x.fq6E~՝WEŖxʟYVܢ!v(3B$&yGTG?%)LF&gP?¿4[C=4y5 . '/o埣)ro_ȿ2Ȧ@m3|%RTxo5Sw)cv -mG GkFoB{8A'c!FԞ uǜx$U)<˳@>c~9kI MĄ0D@g A;#?a=uDGfm}/Wb#CӪ v 3L6~:JDNesy!? 3ۋdSV}ցFM.J;%M|蛣' Ї鎷8/Dr[OUׯ4rF"FA5PKjw $wVfl_!5M1˞I~;G0j|Jj%1`/+1-HJV7/ORKhXVnZ措h3݁'9ϏFCJњpr_^_)fǓZE8g!0Q9g}Ԕ Ea L_?nB̕࿯].^f܋S P<<%uRDғx(bg!Tgt Pu?[WlmV4ytul4Q']ɱdև*TϦ1?m~^;" OqjnGP'E#ìL֌kKs0Do!M͈X*RwDyocal(uo\U" "j/e)YZ 123-{SM3<(xx9kZ*vMvXup r)XJgU7;~Er^4~ Un Ө* 0"ӭOq.A; > Ģ"= PLɺn+?SX8,c}Tܾʟb_o..V/=9 ,}er;ҬTLj*lΨՀD{=Ah*$i T^Ɠc23__k*kf L<%T/1 H 8jSuF?~ Sa.LPepY; r#WƟlOl]-\yZn69vOש ]*F l$`r&XFΔNxިW\uJ4dQprsgg#2)uv2w+y.*&Ob2<#-.%bGTy-} lj } 08ܓ,.WϺZxV>n86eHKch˴ߙϢp P_A{¬VE vHa)fRXI`cj6̻L0U5z Z1mq%7NGRrCu~Sگ#+uðu( ]6I)7i~-|9OuDpKni%D] erHUZTP0`֞mvQGR7v IX|}x8) qPiSuݺܭ=4kS?hwR2>7$9_1\xsA/\d`ݝM0Fߑ1Ϣ8c7/E5 lȉkRB)K7unH/ ^) v *+{abqrk7>v6q!A)#q0g,M iCU*Brn-|c3#EezCds+|> M+F>Ab(]tnb'{1_5LزR[ZA)1.R78s) KeT\j.0-(oiB^l?DcP+1 "jv|+}_q3Ix}R\;G{T<* wL9 Hfn5 v AC# 6#š]FdrXɘ G6=mh¹ٿ<9w:!@-\XňTTN{Je2_QʐMT$t|ڵIGiϘZ俆) c*\ wc,2 e ocnc@=Ῐ d|gZ3|V-v{|%ƺ6CrH pGڰD}Ѿ@~>TP!x_ QBq3+ƃvMt# L>BX$ 5#d@[ba>_%oFAYS[kB0Ai *nve9-(=`!ah.gqKTNު{Id&~R_6<~>j6H2&-҆d5LӄɊq+D*Xk ]ґ2.&IOby:jmAɡVD%o}P\kgKZIcnnez"oբ xFOɧ(pZU|UE9\Er:Ha{ SYx8 UCl( UĬaNdEp hDzXaqh_$ז^/DVd6̰ p3V]1N!a)Ic0OZBEǗ@|# #G|aZ-,]!$i,U+Ii:-7H;B kK>`n{? 1q?N Mw(t^E>EOhK 3My~s\xwF3,R[_D=F)k-}&gH[llG\`O׸7bmό)N7r`4N:1n)ji>rh]^GX&|)%>ʣi!31Sw褀732PJ/sǀÓGZ̄`>'ʀu6|vȂklI@52TZJtL)K+6 kBXSS$)ex0GO-'A^)ב):9p^C2/wmՒk6qPuO֑P(h\M<H"pC;#*ZY\Oی8zeT]pQl] Ӓ&ܙgfw_aEM=I4n5=@,!N8&210g|IMjdZ \fLkPIP9Ԣׅb@J@KFq RPƩZ^˖d0 "!1 SGTYJ3$["34J*='w!I=jf_#>9s#ܵUL9lUamqfdؔ}ߞ`P\&x\8j4zu1HIkZHgFlkI dκX@Vy}+?扊}6Q|Qvf̱l5*U.MvWĂg6:h]n4wU%w:3A$UUߊΤ$!'}P I\ȧ߿F zjMyP¢ d՘l jbO YkJ,CiBPق꺓bn+Ƚf3TZ5X8G2=3?pLZK;?üDrM.⾬ԹK0kisQ WdWr|_-*8$ߍ)03^'rQ,_":l\+f3EOxlY{D&N`Cxv,I=଒\-GBa0=<ʚ?2~SM֫e 9yڣ+|7n@GCzBˮx;&c Lb)ܰO|Hk ۬ ;2>C^FH!A~rrYjw}ϜQzݸ?drӾxcxdtD_P#'YwǨ|\ְYܾ9d?DXIC<0#Z),9*])7@-M]UleEgZ Id@>S(.uC^lI.+޲^v_iq'x2Inu4"HLq^dW pnSd1+z&JP5TcL z'-ό~JRmdKAtz'y1S?Î i[ o>}{rZiB5mW}1yWj_r Ew%nu Berz Ԛcj/P::J ä;?/7cT?VZHcu^=g~c]o2v7%8*u+IA g5"%\^9a*ĘYyj6ə8A d+,b4/{E Ez,#?oyѴ0X!^ush dUM,Q17geeq[:T%,̦T"f.UVH".ID!h`G:E2kF,7%$ETՑYEW5lu))y7ض ]8(NL5C otc)uiv{|uu %}=[ ze561clr"}=5RMU-H{0T8)/GPzIZ7 U)וJdY(\<6O09W IQn\mRCȟ90[|0J#[zd޶2Mr:)":ߡa>[AfMkw=ݮRJh#vI!-͇3Nԑrq|1Źڑ6}tU`ĆTޠZtNfjzC!U2YVx:yyy3A{76| n7}pW]A)NOCo'byj&AZ 2+ײtS5@;21V3U8fD0kĶS&/bq'*ebJG߂c睨As/ٞu+3rOj)~Isa0$yw.u{:r?fzj`[I;Md5.%]zF KA5 ޫ`7t- 0&8M::Uʉ`0IX/ fZAqS*]7 pO^mfO/ԃ&$Ʊtlp͉ۺ2Uoխ( #@ pC D L˸./ a)"ㆅ~ Ak=Wb$KX9F4s2Yzj?u_+BSs`# % Faei\.`ںu) ZܭpVB;B)rGhRD/9S|R~ 0Vis%k l:Y2_j#)(&]K::hy4k:.p]_8Fc2hH `㣵kc[zF-OQ*"Bb|lN.*~ c62ں$4C0NzǤo>2[JOw6 8F*&\vksD=7-Բ7WaGj?"w) (Y=dANg,NONNtnCgQnyȺZ9-Z`lL~΁=e&fgtS] ǻǐߎЄۚxQـXn$S\:7m^:LM4rZyRNPA)%7p 1F&1;)}+g2Yv|>{PUKۅeߌa ?/ ;sRB2h'cp2HV9NA |/DᦉB汅%xW(Y[!z}В2~E]G}^1cYMTJSKZ"5\0#g5|-Жh^d`^8,?r7KJCCyX^N@ m ~%ᨃ # =ϵz؟$1@OJ!TbvA;U63 V@58on'@MK0BSx[,ۥij ȞN)_<-5Y3 r2x +yKi&@ueX#.zJ<0""γ{ x`h:7NVSN9/9z?,L\{R|;cՒx( ߓ*[zi9;k!H]/B%)BCࣱk@DŽ'!_5ai#& }5|2G oRuȔ2GwJU/,Ԝ %}/opIffaRo]'лipeܴK6/Apt5vs~HTa=uWjG\?V=ўJnI?`Ts]PҪC !]ՍWҨyQo$0{h_M xۇi6|cEn(5i?ňhzp𰑽`sZо]RtӱM/V uvFtᤳhXִ '{&߂{Et$ů5%f%QS;ICn:Nw9-Jti:Wp5]ײ A/pqvnfo4GbHf?6f.ھϗ4C՝54;d~ΣO}"@h4^t;9Z)'ԷY~fm;JXFU"=;n#A$N& K {Q^w)F+U'lPKѷA)yIrUqT>+NxeGɫ_(I KK%_MSR,nAԨ ڤ1*ȲEӏE.$WJ㷱;^sB%Q{gѡLYuS mP$$bD-p#܋gmemIb;PS@pmʈ* g(EB@uXHP~A"-t9ÿ`tȳPS"ުk~$P@Mł]NN܊rzMbpԹF<'Ǟ(?I:u?apr17[Fr ,!)֩Ig3?hkye|.*b&<3: ؊z1[1_Aeui{ R,+/a@֍.4$VK??x]_&)Cjgc(崨0=.9 /1.6n:΍H#tM7#`^"{RޡzBU!lԟETaX>Q1XTbT"N/Gvœ/ j<p#<;ma0Z#ʐ m&Ы1SnCLgj7ׇINl*ߠ;/y0Tݩ.(O;Q"8Ҕ8b k@H^\1\?ۯ, 4 k'.g)ʝ?2+.uUe3LbULPQ}x3bvW#EN`t WtCe*JP>"Vp&UpYX; ÕAssKWuAiFlJ٘5)S'Hdޑ*H$?)͟ɵx _ ǔQpmvgR\e&05 ̡mv^ f{)_ju][6 %u_ܓCRI"5)*RswZ3]߶׎`:JbclP81W{iQVvRv;/Fi02&+R2^Ѷ 6g<ZFpGG9A l/P XP`ƻħx#9JNR[̿gz^:',v0h8g;LI$ 9jlL/_ qS''_AzOДfM;[V*s}3j-p>.'Y.Y/ηqT}ob`aKA$|˛G8%)pO< ȩ8@nedJZtȸ g؋̅&˂@#I0G]"*AލK_p[=UZ\͡^+7'-`A>@O}BㆶI=ϻ6j¡x2)SHN2$q(_⟥ۄaN[Q3K4:6oDJ 2E×7 Do UNc-` =t3]dž͝s 7%Ai6 Z5P$Ez7N':tIC'@ˬu4gVpB!$[&%wݑ[(0WF:aEa>v5?)(4Ye;z)A놼\J:\(_p! mVIK2T| y'/Sh4y5WKwˉ˒$ 075 VqgM]*Bw}cQՇ7~Xe( pfhǶ5Fq>H}68v6MTM9ޅsx!{QY5dKOͱ>x劢R+8/粟wzJܘ@POu:^)hE\;Ց|} n+{Suz1"mFK+zd kG:TXz2pl5fw,q&dlԺ&St +xd޳\uDgWհ ge{:|pH CڪtO4z,p,"jU]9Q>.g0KcFRz7,1%inf`cTKoh=6R!rSd7d7WI/—ћTͺ[E>Y3WOLAհWc^0'<  Xk);[8}W tV-(9CIuR> 8G8:FPsRKֽ|(5kVw A يәg"$!nx̥VpO%r<4 M=1 ,h5w= 'Vv}PxaA +[2 p{!-ig,f{Z&bϙBBx?X6z>՛Eky8ǚ#Srz:n¿t>260Qqu5^X${ӏKk83J+D;CUaF+gRcp@iʣG[uv3<:ٗіS0.`tvV\|w:~mgcJdU^@mLXvɝ^D㨶Df-̑_W#|42u2io 9:HEZIɴ|SNӊ?*C_H}^siv4}JTfԼ.Q3^ =KnIB7GjhLvEI8JǭSF"DՄAGǴUtԕA!m{1ߩPsKo$@$,5yܽUqp ,8&F4D?7e^IEnKqVoLj+Aeجgi&r玁,jMخ*";W sa\fwK_C$JY3b8M:?/V?;nwwyWjX^'չV)iBj Z?1CLETa?v/3urro^_/ ~wٯ5TO:K&v[&#c*?ϢB5OTW|Hjlo5/GQil^#ĩ$׬:Y1xh\ (v]lB` 8DF9ߠ<]~,DfXzV|VU4}21/ixO 4k.g6{Ġؖ]1Kr3a8wɘ;B#LPs;_RuO=Q.\?k)?Ej`TUmQZy_OiliBόw~xt.iJsi_T̰]BҢt ]/<1EJH`5y:jkKn\m9$덂 le~3y`@Kp D_j1/x"nZy0Z 9?ALaI1U0ݓa=PA:L*y%x3TSPKwز@yӶw*[@sRYu&ϼ(W:6j9HfDqP(rq JC4z'w/Qi+=ѬK9F{}Hr|TǕʱ0v"η` 7e۔8cs|5>ОXm Ï@ŞJMaqw#]Wժo_UXx ` ^sGY¬`S$k\OX<D7x'cNr~_xswjA;Q9a||. uW2d+Ë0B1Bo*'lu2m^"/x9<٫Un2'+/'0݃B( .ˋ\*i0QXp[hMi (שZi5Ԫ竤W<4Ol߆`Lwv[>;&t),Gd<{$!`=[``t{E2N2#Mb)V\qyu$3q_SRx=]t: =ׯI1n=b`ʼ}ٰL!EZd>> m̸;d0ܿҐ{:t.`cKƶ3fK /Ȯl-X E$1tGI"O{Nx#PtW:́Q)>#=zjɒOXݾ'H{LfSG"%@r'4SA/c-MX4v|"#)S"2~rcv'0)6N7$F I8VkoA9$Hvo|,sw1~b'|d  AKV0 E?$zZp[Ni9a,/mfRd㯤Lg톸HBz_\t4'?HשA9-&0I쟩MW{NIPYfaK\%!CBeØb@ ~SFL ɦۘZ'_(q¯BzT+ٰlAK.*|N akHDP-["7#_?^9YDJS^z`_뚪^,NJ^.X/Y^Zjم]toh2. .dbⓍ-E t:eVi 6}-2>T,c4<$3f/'[C)1D;0)tz ?KU>ಋMфd]y6a΁9ǿuef yjŸ= c`[ ujܚ3$r"HɌԾ5XL2rfN !yϤs k&6N0j=~ikk% 2Z#{spkj3`~*4۽iVʡ\/E#OjH=rl'>HbTQB>lxNB#;9/=Y ddlc+Nam ԤZYc}yEw)ˀ0XΛ!9w܎o" %=9LϹloYϫְ9ymV;|8Nj"$p@ҩyx%2[`>۳R?7rãuմ9X10a@4vE߲)lHM,+Az$?W@>8p 8q4 7̀1^dMkg`h Hrz:ɮ/MTDܩU+هu\Ll( Z1#Z1p/u@χɍ LWf s<$f1-ЫՍh螒EG;wqVf Eft3>Fݓ/h=_77G)_+W8,*{ZŅQ`9C1hP퀈 ɗ.e7% .oEqC82OXZ3 y/uv *lPt눉oRdz\4Ua_+hEtCwM :{4Pi2OJc'(CܪW^JB1$x6PHB w%.MY̚myn+, 7 $Sy?/Pe\VA|ܵ#& 8"q3C~8*IsLC?UH-ܥ*䀍cj5"n!.Qc 39^ͼ*#n+}){ɡrHPӻpzPUgCg9׉A?'b8 SgNM[b [FOuyU8&dG/WLBg aF]Jb5"h&νJDwq˛g}ӻB:okR-@֞< b͵7I[!žЋ2;*aggkm+Om+=aR4o@qNEJg}޿9IbKq4Wl;*I[~5i*!5mzQSzs@GQ.S1<=yHyŀa0_\ vi#Cd2hbԊs1B*M%m+GnA?6iJdF? /x & T}_1/ܞ]R2> WS Rg~C->KG+Ӛ9/K)]\gs+#z\cJbKb8 83U-I{ 3vrBψV}D"m+Z| Xo0.I$uXŬE`FZoӐ0JGq͎9]̷JzM:_fCē`|X$zlCEu~mӺEw,mqa x[|!薗!ęeNtb?Aಳ ncO%j07koHVz\uT^\ķve5oERcMITwX؄hqgHyv]B`Ӯ]@/@vm%Hdž`BQD Y|W|B}PϓW8hD] YfT@g~)Gl ?[.ԥ'6}rm&yMAoM?!DMK| gBAD/Oy5[U ~5rCp֡RUvԖd>rP=<= dz197hef4W]^ŬSN[N?|ۥO|!HTP*v&?^X/c逝ĉyHm k[y̟ئ0Gt_5[qG|cnr|廴d T"b0'~#Q`_d:s32e, @qga2yDr.#ِ/4ceQNJ\U ΤNEIk8h)t՗-pr%V7әtPONF\*kXևv|68l<:De/v)ҞR{H_FZF{Ҳ KI mj>-"E_|AH\kIb`F0?[u4~~_fiKo-iޠx7uf1)}?#J;uV{+A7R[g0bt BBXAT@vVbHGwݮ_[1 f✺;pU7ʭ9߶q@~j% }&OmpHNXmeU2b0u^= _eeQj_1lDŽթ1a*?9D3ȋ NW}]i}qvPZHӯ"߿5T(pۯT!x܅Y$A!ğ&׶󫱟$L4.bU/18 `уAYYPY!w%?6#ɑFCe'_/ 7%^[Cl:a˶A#}Ty.0؃VO{Ԥ[g'8GHvTv# vyq(,\d2~IJ|>B "ҁem"GY΍+gQYLOY܊{*xH (tCI6'c}))6dd3 J5SkDyJs7x澋A^8,+m@fNTRVטDW mgszy gf|`JK"O"Qȷ362968m`(c˹8 3_q \b ~ s ݸ%q"9ە}\Mp F2; "<'UKzU.Ħf(/;?wJweP+ VlHDqҝ$%<>;wtlR6x\{{*z'I:ˇ t6c?2SNr$iBሒ/]cis;%R &RoAYp D[`L3͂0y8/RsgɑHzrQl‘NOA7ThSh+e?g/H&Bg XY*gd֕N;p!,74e*pFԛV>;lƵSҨC҄D@!ɋ7TtLa-b@wqqJz9xn5Qz!UqD\rԜ2 Cpʎ~g>AqwI9rw]6N- .rقr3h}sx\ F_w=svRT=&S̿G=\fgOZB?/b[G1N-{.#&Fq?|{SQfVUay]?l-"Rj=7>璬x]!YQIOz`\sChbh*H( gH$qH8 ZNx`dkYS?#cƨ],GEHtd1"-ObּQ(rlBw`tZBSkO&-FlI*/t{E}UfUWu<~ gNnw! ^c0VDZ, Bs-s^KѸVQ|ʡ4wO:RmI0]8>zmս̧ЂܧJHM-mŵPny㵦i482rZq?$ƧZPV-뱒$40nPV&~m^`K^Go&-wT:Ҥ=&U1Xn MfNxh5}X2=`!Г}"K0`~킘eoK^v_gd[_e⎂q?k]REFa@B p '}~yos.EWoW^7Ś3ֽhIMWqܾ~5 !b- YZɣ"M6W/mO^?-XKH"-Ewt }{Vy(_~{lC*{^Ԣ&=9rxP~sE ?)î;wt8!SC s(͎8Ld,o7Cl"&@أ7JTW2C.wQ(G#$K-# @jT/}7RI,awR7 /ʆwDN=N>k7ɅB)>0h5pb4=jw3{mOGP*k&uqL|Eo&V;>|FYj /ǣ~ZH|q䚗1|:48 ո'%uU㋫o4hl ECr͆.qdl/~iV7HoX׏H1 TIncZt½li]RGơnuWH+[]k,d#B:{.4H<]0x6VbXĪ .Cj . >fU cӄ04S-üYv܍QN,m$˷o)\\umfb׳q.%뤈ṰObE%Ex?CW?cS&c&i!P&ۂ;}wCڈ T=5mUqME?FAh7Av>p%1cU!ﺾ4t/uLMl䔮A$E7-eZ(7 mNIk ׼>%-fەq;yTկzL^̇b^ی0>0藯#/ЖcUYià~V,]Z@{e[˸SrWD9=V7f]|pCƠOg-+5t0GV}09QH`aˑuSR* Z0aIс>Dȶr~@ lt)WLMξmrZ w\iR8K$mݘ~"wD'>dAlr_y hnmBGxHvY MM'ZnScP&HSd)o4SΟ7 5ޏNZcuEVݥ d*E⡦As@Z A}QfxnD~1l5hj$F5z gAL:l2Qi&9 %J]7>$:hm`b/+eQaAV^N2d([v[/agT Ze."S\qpg"!uLNٛw]!cZ!66aam@XX q&;#pfneֈTˊc3EF] ov-tټE9vSC%- bQ_c*< <}|{YcLԜC!W h|0Upc9r&+ՉG %MA"d5?KJIbǥȉSdqz:W.Q3~3948e|ϺOś)tu :vͲ>=r&<S?mֱa0ZVY +n,?`]o/0od[+-L"78Nny.O0g )=|4f間y >IZ35򱢃fuU/ی8["po~u, 9=Zq*fUR Se1⽴M;k,՚7$|?" qo%NL3-=YHu"vqGs7nnLlPjb~GyH9~,ޏ^P$ &(mC"GDDEV&7(_[Ց eȫn>WkF<^3*]Mn`IQxA; jPx=\aDk6-5ɔpf^;Razb * vUS|>}'NL.؉YN/ WPck\Y+g{;ZC63aFSZu'c1"q/*;#/'S(Tg/<{J>B6M>/wPwM`/X?R=l1!y\^%@1lRh:x̛} b%Bd%d&Wݷ rey1]ӡ\ S꺌"QH+ryq.΃xjl$=Rt`fga BۣI$tx˄I- z@Q_ }goA]׍/pHʭ@s! 4n`6bPأj)8jȻf6ؗo> ,?;֘}Q_=Bst3"B;5X1H]jZdB`1Ȏܳң[Y nKCJ 7>siIj_x }+7ojU ?t*;9(葼BvȋR;S {7=a=Q&!ĪX[ˬѻN O WLJÉE ;A/OЅw"Od;*{PY&/+?.n9ܱ;~%"YnD!ƆϮaJ^>1sO>L3! h$ ~9 Pˉľ Py˟YBY"#yЀ1mVMsǩ&UKa _gGN4vڮy~rWU~x+I)Fe4>q?DGᏀBͺƖ{WBۑ|`Ti!Q;|k$7qFq]5cX4NBU*I Z >JJ`Z<b [Z4tB16N[jjP/?ؚNS7V׫Gcey_=Jаk+ecCBx7${BAS.|ު )1mPam"Z0mqN&." ~$xN4!PϦPMёÏ~ q;`&ڠLl x„_p/cL-_\*'z^^=sem7vM`eٰ@9_J$~ܪ1Zג$WUB4)BK<)&lkY_V"LαXs}-(dHvԢPߝlAc>c|p%xӒTޥF)TD[,.Չ_wEәb H%ص1 ]I #WNc-I3sX^K tԢ{i"*r6+=KIE+) ">\HR#R7HeV-3c20qs]9\}u޹? 3y9NG΃?9v\t&}88+gҪْ`Dp_$6 E[ pej ɺ%"ua C;'p][J1[4Z %L܀CRn fd.+io?3XTBql"y3VmPRb K&ԾO]|O.fNW6}^}Q{Ɗmҳ$-xWba泟4ߏLLf js?"(}̖T; ȿ-"hLthY,G)ёgi:?N kѨ(׼ut{!7 ^h雑OB_``N1>-?*iOԵrm0ZF@kzz-3Zzޒ}くy"`m[XE.)0aAZ.PI$A_V6eW.Qz+t޺H{|`6Kt^E$ ʯNmϢ 82j<uFF؎\;JP\X$PTlU;௽F)iHHOݢu%^<m`qz?u#Hq8jߤ;I`#"VN24@A.i:t- AbuSdE/N%,91iF!+'!$jHvu'EP"˘Hx-Cdb~Q"['%4wVnU}ʓ iy&⮬+̬ 5<-Rs7!Ȳ>hn"> 5 1qeg-T2憌LPϖ9_2!1ihz%bf:Uq`5PRANmrUGS`? ҖDSDAu"h}0O7RxZW-.HDY_[(=A j0֏y% χL ֪J@&B;a灭 "c|d A pp=ퟰ&:5ZHesh|`rϯf҆)y!X?/;AnvL}- ԣ{<)АK-_.Q5иJCHR 1ygAQ3@8 $z?]} ՘C׽WVgpXm(5aymq_hD 4"aB8nadT:P^̨V򢅬{=DnTS@ Z_YUW5Ֆv澭y>򔯙c)iHXR3P 'C3ٞNVOr=2g5,p!`3Ϸ͕Žu?ڼ{o11KadrC<[i\=Ẅ́}v1Vɉ\h:T7Iayn~2ր`qrgm$7 BO voO:T癖: ZM*LYVlaFq쫪;d~$$ক}|}}hKIۭ-᧱cuzC{FHN>/ 9ϣ/WcCېɴ(`/ziuJ[ dP-y[U VhՉ+wIZ.[#/se[fԓFn:5S|8. "Kj:L=" FEL(˺E .w1ϵ-2c/&rG,(|b)>vb, He P4qj\4, Y@W\"uLȟߕyOE<\K2֋R7]1ܺT=S]`q U P)>p0,O?IvUӛb[Z![cOm̔|xQ*lt80F/; aꇷldgNԜ*J`f[70 TlMߨb]SW Co9&P];'E.sF-U5>wkމz(5pW9$ks=s{݌S ~!/lsɢ䴒`j'[rgܘY';iM\! )LQksTa=3=o- 5 }|GAb$J31ym`Wxk8vu`|<QO)S4ŀ+RVdh S>!qR̞(֍FMFB;ZEB?.N5_t&?}XF63jG:2NΛDM$19aUO@,Ӭ֖ΐ0W4d턶eb*C}DMZ(\nk ɣ*lu-.ʹK 7W"Z-'V<1~;KFhj@ߢm4ƥ^(*D-2fbg}`M̲`5w} U=.VLu6ttd4ZPZGQͽ R&(첪i*a5D9PJb`ELw+ 7"-}o:_W^)9*oD~PT}_9lLkB٠` F+x Y$и&g\]{2? Ir|Rorqmz? C%l^(jݾ9)_ fF)TwҼr4^5̓CR%ɿ8Z;3lE\S"D ȯHB>"-I_Uk~Dk  ?6Y<=yk1iSMgt˞kOz1u}.9]ed> 95DW?^,E_sf%yDΒ趑0H(&/ˆf=cA[m/zDʿsD) '}i^2hk~ewI&wSq ch(:@7y/zd;S{9F"S3Y&GPM PZ}6KͰY*s!t##P[͸,3SU;Dc$x ӆkwfl#[K` EƜ*1n,BIJ9@Pucee*o~iPZvu˩͎Q\ ̱hCG*}0Ft+W TlB ̔9[7SJ/ݖ*E8ӗ[0 o"4vl˰]ٲ<ןs@E֙ˇ( B8BYr6nY{HIh$hդ,4 )h+AcPh5l"a-Ϝj0 :4"“+,Z %Y87ߥ2%dnX듯J,$+]ʈgIxPc=$9*W׏ @kbzX#`ku4ꬢ )d.>73/͖n4(_]!2i8FiCFV5ZCTVzN- 46o'|pI⏈Ga8tDWRfK_BvM)wA-|tߜJ[& ƃlWe6j*0޹K|! ׎{l->umSG`ƹ_Q J}q_"aZnp"X"L}/ʱ0;Rr2=!ySFs1*[!kA襟ow k֎݆cG]~QJZ ~kݻS^/(-d0*#ګ^1zv>Ǝp( tns2cv|xيb<:]nAET፯tC2&R/%״b:ah=@<h>""TC/陣ҫ:OA|ۻH4ΠҞd37*0N᜿3&@۟x6[Tj(0$),%XkɾGx-E Gp @ËIH坫7n/XfЯ)z2W1SiI(d,RDWEN)SWknG)S{XbxNƺ3Z7 Uȶ]T|o}7lƽ{{ U.\u&Dw@/ֱςG4 BI~E)}i4i,L\]ýpː?5g;Lӛh5i]0m^ّf ť*iD i/2:&GJuh(RIݪxJ sdX &E5Sߺ8V)٤4F8¾׶R+27j(kgV=xIq4K wDz:ym!+sW R[[&1%a4Aq;䞱v&j/'cH5L9C k挑?QwwOn!(W;t[9M.T@ZH{|ҟ*߫eeZ*X9g>.h >\xMZ/[ >)-5$?jӻH*'bF'&VYrN!XOѣb(\j8@D?I`ي1Zy JmyF;u@X{7NV+|A+1L}_Rqn٨sbE5z`27t5]C ȞiPр@o1DA.⧢mg-.N.BGTX^ 0vw{eQcI1в~'9{F+xxQP;lyWBn <$rIH֯ۦM~99܏>-ַ nX:I'ޑvh%rԹuA?)w[=D_r6򚜇Sh/Ԥ@֗m b} $V+'L;,OQ)an>d]h@&5K/_ 8QwEױE>?=ɟ28V Eȶh F 򣹕&'Z!|҈AS\m UE|at/  7eu:LV3B?8TIlSHC^!@nb(~9f,U@kw"z&t^WmZORQ 5XbX\Ő^`,_0PQYy^3 0q43/'kl`Aj sB0|xu y:P`dp!N>Nc;b~&rٍ+ϑsgJ|ZpeZqMQni(A5#uvI+PAm#~ql[*U(TQcaԣmHƻAPnk1/,YWMKyV/bKExsfn!x*{mhy*>Yv bO rM_P`^av2AYٕMb+? | Mvl6UCXjV =i͍4p!|b͎EXvXQVKuBL_3{ [V$$ #|e}]1 y fd6H_* ; pSr!H~ϝ}Z,#PҀXh.8lƌnbG%p7`oσأn loW]tk0|9X6\; m[nVڊcwEY{SyX JG2dpMNϥcXlr N|p^_WDӀAB෯"QBL뽊6aSGTydؑ3iiRHxbke"ôiE`ߓ?٠ވIG2-vK:X*r[MN&6w32@@keqN#ӳT~/> }NԟuM ?: !~-4[ &D(TlUn^Y#Y'xғvkyn#򎺤fC,Ia.IM&aC ͧƨ? D?+W 9Jwx0j S9lzSsmsCjOHŁxu:N` a[?~_G@xO(ixKL(%lP !nmy 6T=Yb UQ?d!W#MN7UcH5#::fe\~5^i]nU{s0`+Mm㵎pYcaţbkWC|{tj; j{j:K\SI3CS<?Ïʯlɘ[8'x1Xdg٭HqFa !/B㻄jZ&AWXq.Kj}&;W1);=>Tx J:y2>%yduL;QmxRZ@/Wv8IRo|/VBxA E׃P3I>,|?nq?挂wnxmvUNk*'o3}~4,5썦D9RV!Lٱ*jg {Z5Τ)AX`/s/&8ssiϰB=^bkeV+Sjܤ9ȟJ%DS%$/Hv5VA;:ͧkgk8UJ5H3/xk[|XNς&{IuM.@ تm&T)vbXSDCo"cA:m|6lWNZqo:b!ZZ͘+k% c벁i;0d1cL^b?"b[KBVi}:=9'n<+D0V lLUSFQQ:ӓ.ZbUuRg+P-e†p0-:%lMo@'uI,|I'= >E ?Vs:C ޻,'A!S˫3rq2S^iY^,e<{]fpY%gls1YtG @p3Qwqh&\`yFk;Ux: [ ] h45xAaV$[HM_ŊƊHA/8UWrz_̧򉑱I1m6*LkBC4xO(kIG~ƝfU]:g,+! zGRts9:\9w*PE5sb\>,ky݇.v 0h \;MPIDm{QX}"@8(aAh\x[0fMY0*p4Īv`wa%s|~(/ntnC懎 pTJ҅JjK5 ˉEͮ`x^4['Ayil 'ɝRn eJ=B7u2GSژ y*=ǚdQc*/~y~WjR$~낎aE(4" Xz8*>f^ՇVMt8="-@թg BNnw1$蹏`j2F a6P`<ffZl*Fn"m#JgRe1^pgtoKw&&'X)8~)}p1֒&uN係16|Փӻ#X4-!aa;1> , 'rBbxj{Ŝ Z]u+\ۑZ(j^i&p"6wn¾~dG /hËSDa7Ie]8VCQR}Bi125 Fff߅BRbОuD+d4F{"fߺagΣ+$ r&}9_&jSԢ7Sƞao7~ rs!43[6rA1]z[EbX5gExe3\en{kݪoǀ#7m#o}= FM)l,Y?ۉ(El8JDu\gS kI?&B60`I:r.;L[{9XsUqs ǢGSn ]sGi-+1vC_'-^I8& HX ___mwWD!Dج ~$ ?K=, a䓺^ޏ˳"ش).*;,=,&yJ2PbUT+)%H8/?k3S\VeJaJ5uw(Kv~^Sޮ{y[^ T˂?5qP] G`%=Ԕ?`<NC|YYMsj3 j>iHRm[j׊;Yivd-t5 ~눞|P[Ѫ;:``@XFQk:Eq+X)(p[LL1)ns`3Q{FVZBc9\k!(pW[14ZNSUWՌRm/a w0褎QPVUۉTq#?gk1e8 U#",3E%bENxwF,_"+IQŷAoE 蓲Gl4rCp&T9g- pddnz, >[E+#ޥ0绥&7O?sQȤs⣭ &{ԆMs>"ֽ,!@!Ӱzoe'3F0,b)6H]9'鹓QAQgZ]09m4sfΰƈ񠊦Z" O~f<8CCcq?0.~o*^ T@.yoG}:uΊiĪyE;[Ugg*װ=-FZ$|,H^[l/e (+yVh;qӾaB󴧎*&ónhrkh I6DTb H[8jR;I &/̦|#AWr\3LM $vG6| ^ i_:\ϴ"80cډXA& Jx}X+/yE_.6B"{YL6w@)()Ʀr>6@8D[6lfBEݖ)+'N5܊I?t0 \/OnC/PStJIЉ9>]>cbջSQŶzw8'+4~ZTƋE+s=.5BmZ y9|XecsfOj2[0 wu%` @h7Suol fk 7+䚽VQw;wi鞵%mij:I4>%<ɥ S%Ni߁DW?s~$W5S nV t(d^Y4 ;}!N%P C@%'^&Zad28}i{ljp6EhU|e4bb'o1z]߶B˹$ޔm23$|Z&hBq6j$ejV! :Y&^9 Uj><Șcp 鴽DCabhl'+K|erG99)֣VMc^E9O~ }NǦ4@gw]FzDXK8F$ɥ*Liv+X ?z 镱F,vh9ILnX hs_wl˻kC ߨ h_ pz@:_:/ɘ#uoe?Η:i9CH̠C |d"pDKN}SؒV%TWbxtN&ebE]h \6@d͛D({dlJpgtQ~"A]AS2S[?T::AE(.vlFm敵xF#`4iz2'XH<yi3x7`~Q8 $@Hf3\H`?5GSX~KncO䕎iɃ.t',S$i ҝv})cQQŧ|v/McRݝ觐rXsnO}͚6bKL|MϹh: Y|$/Řa+A #-[!W+q4Hm(+Fzq&4җk.L,;xWG,`Ý_8L( IG:}P30zO_ɋdn fS%x_/yGF)W~}]I2Wp-G^4MbRQA8vA d{du4'soWr3[@F% Ld]zrSFMJU$XzɩެLD`Tm.O;Dqp\1Q"ٌn~q%7unDXGÆcP0F"^$0i"VI[I_kO|YH, ˺zªxa8&>?>gqRtZop.usGGWkWdTPD#0K"3CVuf&oQP &JN85:9P-fX{-x(A1$>CzbwSnH7ԓ-oYq2@ڐ(Nd͎m< +>Mq &b 9$4WCDAdJX\^J.w\Ui AW=Е @#*4T0"-:-ZocWDE (SC~( 2@3`6t,9vǘa/zhׇ*zn^9/:J H1N xUx4N+=wۤRzC*рz 1NE>}7+^L_PWEzU&>&,?1CrIb],QˌPݟ{ǚszuF[ ]XyI8{G䘟CR[. ?GQpYZ# @nq_b DT=+6zi~x1KI菏:E+֥mU"7` i/Eo&E MGT\I z=oD021 rdY.E|wߵb{Ǒ&PEgr0%w,fh6 ?;pe;.oX\?i0x/own;8~! _vnL"Q>0*J1f<|\D%؃,J,}u7`v3oǏ!5pﳃ<[Ɠy% vl2ˡ1yPaۈGit@$(qQm'1${+=]7MNByKy' v3-8%CTsJ*#}_gCO$Tq=M|0*քh%/EЖ_T2>*;dT%n-9/Cv?<3F7*{ɠI>(#!>P} 80p \ !73)*Ou l}_ %$LNbVi`Q4֩8H xj2Էm|imJOE*CՃ g獧> 7/-BNyMSwe.I7\Ea~>wT Gb>> YB9Īy-#x y͓h_Oj;ZD554\?3ֆi$?&Bo 5t3]'Q/bBd."aqБ"_m1t&)h BnJn%qu$k&g'ypJz oX1$:T h\@3𴢣>5T')w.P7D@+/= ~nfdާ%^ Ⱦ͕k]Ca2lW_!G}I(:1i>_Xj]j 8tA} U;&x84 9I{e"McPIJK,n[Ʋ)0A]:3>茶U;@n.[عb{Dv<ȑG8r!_`.#R ֿ66"&62VE7ri;Z H' IyoLY\DS6ep_pLwvItI1DZ 2 BhS]l"mfߢ*3Or{lז#ZqyTl5^{p$LqE)r؊vR* 5hj`lF#Q}#ŠI]A8 u58*XӈvMwNcVFs+AH~ {IkeʹՌ! 3)&rrw15|@ Ny9tt›'m{9J:D + N0se~ݫ,:5eS<[bo?o(ӫY|2e%`oi/WSGB_$=E:kMd7jFLk>^ f ĥz9~wGw5ͽ_h'3xʲ罫M:^*U&,,<'H|ꤐXfsMԺ);9k(.3Lg_pTZ}6{0ymSBwe6a6M(Ўxɫh |QRQTbrzp?\R+ Pa0o;^OiRshe@xxo:ZIȯ*-I$hkd$^i—fns~rVyTSc+„%ho- ˓'7nJjPIhg^ !6Ac{G[F? 8۪>S˱vIuC/wj!9jgHEG `zD 2Pv<+Z2vtw3cx+QYN"SG9 {7fZK{aѭ++Y` oEevUGAEɨH0oF/ ǢnF꺝p m 河)o^v&XewIPtm[`T@gR /)q 190Uݺ]|>CZ| /^ d =WC))?9:0Rg[,9ǯN'@$SfDk6:&E95O던4*+TAtq񖕥jh3vMaOa T\hs`xX :V~v~>[H8+n]2ܷ1rtB>RW1sY,OI1Ɏ ݦoWT@h\'='<5QQJ!vcS-vԨ(:yM8㝤 .Ӎ/K&Z|Y<_UEAûh~2pݕ<Ͷ/mƤj&b18]}F|Yܮ/=8, 2dt<[)Wq0 HU ,[y*s_ex_="M04QKOS{-GThڙTs㩑U=aǢjɴK\19~(Q ~iH_I<p/@sۡ.rMQ\ROь<*(Q@M0hRS}_JDEMh0^m9v&0\:hlI粉7(p~(WO/Eq8ܣo,]3]]BUIQns1.pwte",ҟ4e/ I)<?ʚi>\5^Y@UFMt>}QĊrr\ ͊'5y2{3ŢZN_Ν8K[8 NI*ZN ]?haA~" 6`BB/圛kl`w7&S` 4_X}CMMt Ei 1oiT}/0fqE l1+8v{ml>Dޱ*%,IumQ[.D,.VC(~Lʮ\@m#esAuucZTp^_1Яi]'6љBtlB^wiK}k raUʘ낃45|p3hH@9nE72L#g򑦃-9kP |(|71?F@_ͫ&ߋ n iG*"t{h/Drv64aAWUc?ʂ(=*Y;*MWԨ葙i8q(&yJ+;bv.]a!PYcٖ%;j|d~cpit(.2k=Xu.:EiI=xUtn2Z:ިccԛU3"@K[Fۿm )XҘ1[MVF26*ֵJѰ'2o([jvR7HdcJӆ+s<~Xwz83\^,Hc ButKNUf8cdh Q&%WPv ӯ3Fy GoqNm:lt#3*c5 n *fc,O#?` %Js Ŀg]@(8:dF!S g>5(ǞQz`0o=*\"?1!_9sO x FqK"xgZ@7M\%|0GQ36hvx R%Ř2u*y=6oPeqYkAX|1ƪ6RNyzbkɲth]8/|i#%&Lruk$u~eepv 'X#˒DZH^.8j-ph3k )Mï"+fm8s+炢j%,hLe( ]\jcNݍJuF  6=mdpGٸxTP )+ y#3+`7 _$=e֨D>(1k wW  wX8' 4BӈAUɅSqL$sg&қCkF OB&ɜcXh*WG-7A˾ҞHmabZm9rҩ|fJYZqcެDK$㊌;ӝcq,K ~J1xto; &M]aUouu Yl]b*6.:)8"Չ/-uӯcMp l=Ϗt*BoxY$Q䒰c ʠ RF^'".zbpX-<n8: 7%Utfix谠_]-Vb\,8d]PH^#jѿ``ih#YFYA9d}1'k*ќ$w!c*w ҄Ёξ!> ,JM |RkC J|R*H',^#;'Ki;@5\#& !+ٰPl\y?Ql΀~kq86Nj@XDs{spW u6Yak6:hmHK.j2@%`iOUmM$[{ܳU5"Pz PL;glmb2U*[7˘) f6&IECܦaʙYS1 o-m τ$1|P #9Hg˓^V[QwVAf=~L}RUGйXvAޜJvf(kH%;`~#.Ov5n:ۧ/<[=846|-ܠoaXu]CK~4TXe?pV3t` 1ySY`cS+:MZje0jƛGM11Ŕe{"E9x3f-q'|ؗڹ($w~ )IGG_EG6,M@)eR3.,%-tP9y3"8%|Sv8 Aw "ax-Mw2!좜m'QOUڢz^FH;+U_q^,5'6t@28#s@ xL4r<0aNRqyE{Q# A{NGdM\-]m֓SHKG"=5 7Cl w@#<@:$E'~׈E1 xg{om܉?w@yRcȈ#*H"\D@Pl ge Fﮕ,;\EghoڟdkM_Lmo`wDpZE& @<@uWE6ڡiڭ1hO=d/"KqP9kvb\l 9ط^ 9 Cʱp _vUىdT{i9o13YTdr_pۜFaӞdc&.ڮQ!unEوF*GPbfXc>[%[ۉ-{fF\CC`b7+ q xAk$<8uT~ῷUBstN7LwW1[n|1f;a_湈!xp{[H$L%D}4fQEdz#MWU`xNeͭ#=/M?h D!8ЇWK.3/t{ZyݱWTZH yl⧟)%i h >C}uϼAeVrf BbLCu\Ӟ6Ik~h2iOQ_fe)nB#1`b^e @¶E34>e־KjL(܎S3L *=hB<]}ʼ&l͌*Qΰtp4 օ@OPaBbh]yp\i`UD5AppO^RV9ЯB@Coӂz5H9O_+;Mb[h3px<][#c"iSI3[%5Z-l^i,Doe~6i';_1J2'F;=?qTz} P8i_y(E>] d#[p( lf?Sq_6JmadñOIMQm2!q3C-I֦?M~l{vJz|O}֨uKkN2Gղ 7P۰2Pp9n6O,{g)QE^DRy:Z~0>dxH0oReD_ؔH9#6x_ =/Jνm42Iv"LG 2 r~ QLg)A.m= yOZ g͠1 '"WWq[s*p9;T])`'pKPGGy)YiLîByD-_7БJC=ZPx)wo۞IÝ"ټb⡱\ل{.g#YZU!d*ƫs0J&1 L}K ik~!&4i(da2~jT"]1ɖMw.*jpL ڋMAU<JsyE+s:f?+pdsB6Ts9 Mz!vF{0o : ʉ9vHty{ˀQ~e84F9>xH ,oxpmS]v'l2A|P},9B>2״{L;6WP~_ _m~*?>1)5v"ؠ|pbn'ѱ@h57S oh|wtεc ZYOKEWg2ݷ:s׆ *15]EAu!k<yBv`&Dh93i?L'VNmU_3 7>.)لы- Hf/w0Q.IgR2(zZeStէo=;b ˞!^"IA~l]W;YH36Gt/~U3^ J HړM-4M;*vy?uٹmNl-, m^; zbܤ+HQO̡=.o/zXpe>5ۼD|߁@ G8$ tZbء84xTt;зO4(O|Q?Ts-&ONuJ:pY񉁊˫Brֻ&LO#7 eI oU,?I:%^mhPP?TYX!&Ct=*}k8tgƔ[xz '|w/NNxcRSqD[0=+(= ev|ڬI;?gZu\K3B 2glZ¸jk+lHa1%n6K@O0fPEB(cof7s+W-lTAoNcr9@E`쫍0EEE#?΃VTҐR8!X1sU$5׷BxvLq'jG"21P9!̏QӏY=l{][`m(v=˯$0*OlvhdzHW_'zT1gҫ'D-,ϴlW<;2_*k.)\ȉY4Ja/(|ӧ>^gӸO]hI73h[Na^E+T98ߕƵQ-Z:2K&N& VV"=9¼x>":_X0DSGoq@KiW*bΒ4AP5 З-ü4/]5:"v!(V \'iH t_VrEj <:#."7{BE`MIԵ46tG"tMFiFd< 3y{+,YS_Y N5AoC9-=b]Y'1.]" ^o~ !ƞω7y–}ןh>AV aF%$`vSSB":r~6znZ >yk*k29Nm5u9_^N[wQ)7[᧞!b9ݨ9(.$bѥgPItrIr;KYH.;N8lƯGgDߎk|_D?]"MizFYom;iK~F,Eb ,&|d=WcEņ| zPAoRϿQ(.&t#ИDy\>M,Ou< UOIc4eIʁy*x>}^5j^+RYᐼweG'zx deOL0,*Qo íDZK"1ƪdլe!*yYxh,u|}aJsӞ$5`s1Iꂷ/::,ºQw]\OF$req]mu)!  \rӬqu"c"JHRHAVgZa=,}CyKѸ b%dNiz+P/iĭ#Gl#JA1MUz/Xr\:/U;mAf=yd!@ѱ+\SȺ'ʇd#=BqFL֬EOg6:8: /q-`-|4:pAÞ(a 0y gSxNx*,Jʦk`i1<[<\R "aELǼY3$/a5~OjW `]4PvoDŽ㦺&v~Jw[f+KPe"O msO:sm#'}6I@n&t$i0.TdpwH=J/D"Χ.lľZҨkW&#{Nm!6+tĝ?9I!zlY8nY |X{P+' fdZ wxdF@jLT21l$E< ~Cg3 zxٸl[ʖ<X.\o:JRU |#Gl%NGP#JԽe&(VI^ɯ3ޔ2Z3ȉ钆3U[H|NC%b`-(T`e6mFC.zp{m"},s]bpz2/`cl%݀IJFdp]0j@lzrqСQ/b*y7`J#9nu&84چ\rvvEW?d\t7['žB6M3#5@ %L6)@3 - nn׳0-pYyB!Yڌa&O Pv3L&t#ՠ0ݾ]+>K;#қERؕ*>֬+Ǟ%/<.^z}'c®U ,>*p9COCA%θLjaAF/t}yc󩑗 phYV;Ư~lP> ͑l)3N-Fd)4JQm=k@{-qqDOLuCc(SzWcOkh-8~y|7֜v1Q+B^檢듌\n)UEO}D  CS!Fߵ3mbN8%ܩ" P=CN1īF cƃ?@ E;]yJ?PNtޭ #UU__jlZ#FE"&,FiN%Hfuc/y)}WԜVJmg܆}j C9PkLAVK M ؖ5ƎvP8 ^OrG%:P?LTŚLD0cqpX:9RvHv p4CzkVEt5Gcra*:Qѣg˂bR]ftX, yb} R 5#q#3KO=Krd7UxC,`6:r)[0v77e-XYfJ"TA~{˴se I/Tgx'V[;p(.=2%9RS) 3a!7gxxYyWGUݕTahVo_#5\;oUT ˆx^vwRo"SO%AN5jYGO,Z9 w%gn<^| BY6fn1om%o4fϧ ty0%u>sX!ߒ;ٔμF[M +axȡЅNP|7ү?+gX&3E[d`*_?{*@Q7jebYqy&@3ZYKLwϓpi,{NILLX:y}nc-uKElHq(S#L@~.uCeh "Ei$ჽG'+Q9٨A*b;ʼnM4T#mhĿOS`D˝ϒyg %TF Jgǚʈ~XC! 3 7҉&A~\A!ίK]w^$i}~R3l,^wU_}:zJz@BɌ*a.agiF;GBAo4t\-l%V?@:I-->@>By46CYd4~$6Rҟ: n$NcIlI\{tf(`\19jThkK 1WJdbDdžGWsDohT_6 %HAup"7m6 6 [9NscII*~ |&s,|P9JLޯFБZ #=-%N9%lX|yw_u=ɔߺtG{D%#F>Q\cOqČ jG Xq lA4HfsPʉ\gFnnSp`w=_e!rms`,eQE',AxU% ;Fd!Wo%bt0Ś?ADX7UxU[=z E9" M˗ΨSLwx,Ot~ihCHɇmv< [^I ( F\ۣLizLkêBӎ.&yRq]ԱEN, 7Tz8[IǜTL[($$H!q9x3E"%/SvU(Hu-˪SN8J@ahNaW\:lLLkY$!xhz(Qܛlq}M+%*K疔1E }I@i (f Ge'OAә. GqohpZ7tၢGUCj%N }*+6H܋pLYSUIm$: VlfŵqcGyTK:ihuc9ch4E+O:@hT@0GN A.w ez/tŏI5#i\*2IˣɪW~-Ȉj7pT9Y%r)uX"}YO" FܖF]8pYju eIO ʼn}Mlי4c+KeK?j]'2'|qMc/mTEf`gs:a6ox='`[2= -Zsw*hSzxuC=$s"at*-v;AiV/}*$FS|{e%K8*ޚf5ĮZ7Nl`giBs{ZPuuRTh68Ԫ7qmJ:GGe8{uiáEH=|vh @d@,3KjM6cQ$Ɏlu |4|萣%o|wiJBMnl JD6A).à+i_SLҘHC@+0H|?ӊb"m@k m9pX-Stȿ G ΀=s{n=֚h_'ek\? eaJr"L Vvh:Uw <ŸY;ރQūʏ?$+ F{8 m=,OUOU!]3]In/kYN6Ng np?u+(VIRdl1PZG5b+ꯡ%'{ s|r.hض㼄f-jbTbpK[wـ‚q%OLVr)WG,Zu4Ϊn!DJ=wc?ɂUqzN-j'`Mmb2NUK OH@WPp!l14(tJᜇ[A!'9Ó{ӫ.s;m*ؒXoZr%*'{>r`yF`*W< ,F2W9mSxwh\Sv/DWTn[χ8=4w1LbO¤[CGmu)_RsUMʵ ^+dJzUPUAk3f5]<;q#`bwldseFxO Z>+߃иf; xJ t54M]RI2&M$Ps>gBN BA޷O;@ا" 1`F?/ }lw? NOreq$.VQ,bro1܊,M'\[X8TjN9Q>/]֯wu3b(E1u\Ndܝy L[ol&ђ Z)iNB p]Όu&e$,َߚi*Uw =?)_v?B[A&)U+)l aKb]1pʳ:|Mߥy䘃LD̶s-1b 1]<ۈgu)hs8?%ڭBOvI #b2b<ڴDI\K _6!XRSL^P0dWz |n"q QU\(S[6&4eT4\-S$\/ },p>K 3.Y`yzyZ[\,m,Иq k:5āEjg9o!v7z\LBuGv2[S|[՘w{$` <6_ z)u'[Kv2Ry6gkYK!RC)&ۗ1x;厹xMaSϝfzd6C>S,E`b!vq[Ӹ\-Jɥ(]=Ɠ nFc0|jPϪQ}VM 0;(ΓN q(/3xۙ :ڲ1qKna[ϭ}?Ez')@ dbQOǽ H{)m,fگ f%KQ?J55uYς%(87z8U؂Y(J6R2k }]gߡ򍙂DZV8O:})yc&RV0TS AcK;ڞ`pG3\0f^m189\T1Eh}o0HV^b`_n^¿ y ~Ñ >ZEFQ.YJ ~`+3]1QT`t`$V rkdޕUP97кX(D.^h+ka]-H|YI98El38#aVz&gpw\B9"Yx[k^zRB5pi9 SǵnDS&5gWD!a>8Ivhu{7,Duk|wHʋKX(;tA9Cl 6qbjeʇ33= 'bJjWhFSrmmfMnE&ֶ Wy/R<$-bԝ8DϠquT?F^d䆖^w~Z J 4&\F؛` rig/-&S$9 l9{ؤiX3ލc?|qUdܱƏVʑ~n9Kz~^kT0YݣWרoI'6LA$x6^%il {G̈~|>FL0z#,G`(wS#YPW+痪vJO@m, rU>L{rod;U}6ibq-@ox6Dnn%Oݚe݆ܲB:ԗŃF$Ԧ4GLb2aby-K&'ÖgI`  bg.2o>Y 薜_%dvQ階{@!&%U"h"i6UͰ{3h6ȸo.Mn2xG(F7`sGVVWQMavU9;UKTrT,郎fԯ#84Gt"mڦB3‡S *^%hgxdž!"#`Ύ ='O \=)y"e:(-`7 ]ԓJ"\wF:'\p۲)>y0 n3j"W|?$31ƒ|$C OU (tknTZVS6HNrc=W$RtN:TtSrZCM/>i hן:OO<L m $7;8j$ J[i bXl^vziLZ_S2=޺BlnÎv%BZlTO&%׿<|XؖP.7I%t  jϥ-bWy`.vkQ1`E,_;ZYu1XOaIځo-HY,"@&wRNoc3:_[3עЭy[=9shA쎢_P 8 !WB8F$.89hy o% <@db|Ft6x 'WtA33N1Äu/ȮU!>؞7a!|{#u,˶S8RzU", }! .)S` k1rs}w F&L]p2g\)KnvUl5\K{L-hUOF9\`kUy3r&| wF |q 5ZY/X•"ȓONTXW BJErYy$"󝬬xW4;+gҜe?fc|TFفn}\~cܛQ?Hkuƥ!;g 8?A1~ea-wg]X[ƥ(w\{f[4 EccTp7NTza ɮepjOjb\WY-oC3ڹnE>XiŪq\[zXNe(`w;#̒M+'DIX2{=qR^}QΚHjy{Z2,$uG4>a@14q 2AS=,;Q5:C%.M. 4pqiooZٟq#l{غn =+E+J0 uRg婢5S+`Fz-yf2PF "s7CJczMŖg#uN g"sG6VDw7[ߥn}VkzJNr+㿲 43 9xLmz+3}N:9cŴG+  @cl_͕ˢm?o;ix獐eD|_FokiߎgI )$ c]uP}liB>z\+V*-R)HH=pfsk9ia "%^ m4o<ʸ /W(:9 xa2ݏFwHbfV[w *1|JtQmA NȴF]e~aՊUowYJ[<]G쳿KPk볐֒|lIٯ<X'0IfPDZ96' zN{(#Laƕx aP֫A?<$'OZ%<GT6:Mlq^,o|"8{pQ$P<}=y~M?08jQuϦ.TSdZ2ㅏ.`nwR@(nkr@$erz{eJU{@ UCU:j;CGtoU uWO#6Гgj@8}-c*NѢH6x/Q &0LzrrE Bm̪+ŷo:2pԣRcbZSv/ڤqN`} VOіTjq#A]MB6 UAt[Qpc+)J v|m7u}n vhZA,\iNJ{%Cue;BP:|g~%ХD'@[&RT[/""CoLsرeI긦A^Xcm~`WZ xqE}Hѯ( Pֹ+w1N0D]@qfo h^Ϙp@?`VjCJ!\!MȀ\%XSx/iF |n%l\lC{ ' &G.e&ۨ&{|G*Ѷx雎4tcf/pvRwTeՍ M(|?rE`*ۻSs´rvvkZ%A>ȅ>444q̶3JqlaA˼0={Şuc 6]4ȉb4[QVʷ(EiOA?=uV7kh%ncב9d_9Oz-$ewd'X O bAP`"VOMJ#J$0QZAhXqAX+ңQhɟXz{mkv!4J[ vwxtVݰ+Io6Ji\J=WJd4'U^(5pMs7Za4xcL _$ T:rV$tj A"XCȲ e%<_9UZQ=:9n]\D82/ :Zft 7 wL1U.Y$$Ǟ*{դ#_a/YޔX{?-;y:$_BEYnJy._-c#>vob}=*><,щ)G˩^e̖zP3vMIo!ŋ&]c >X6A! sd=N/wo"m] bgN}QD9ܾ}}$H{밯=뭣/6koP %8X YҴŽvVa➂_PmTV ^Ʋ^o,6+)NM]7״Z IlQ3+&4gGa 0!NW¢ֈEDfKO#1w2jU}F8}x?ҭ3Gn0=4&ѽŦWGㆎ4F9$Rm/ZStL2oZ,-Sf vwbЊ3"ZvA6h{j`]=dk7 :$ͤ%\r=f |aߧYZCg(:NS]/4)K4虑sG0f[_.QMI WyM&''Wj$ ߖXaSJu7T,=lh.ILprͥJ U*߿%,*Z_u`hQ{[` Bw ,]U)|^,ӧΏ&1'Ca7(γ,Ў$֊24})*:jj숟P3vX((>)u֑1lB1{]~/N}\lGZXگۚߔ2^Ac ӷQuFsI -@vud[n tf/Fo8z1k=L TgD\lw}7>瓖cyӑdkR#"zήO^"85/C&$Z^5F+>s"*Qopaϗ|灐?c-JZ3lc3/٨ezI>ˏg :(`z\RHu?AٱLqڶ( =?Vqnh{σBLA.>0x]n7PѺ@ D|ۀ<*O.w_g wꌌstOnӿ?b^3=f _S~cd>VlN=Pǀw-[Et]bnAH pWc\]3 n's0,$:WCK), i|3#b/c=^R#tFEXݡѧ T-oʯwe­n깋ED70TCd{2,.Hc51E"AH߭ h{e]p]@2T㵯?H&}A#DXq E:_uGJBs(@Ȥ@e̫P ~fpG2"H Vޥc Hi wͭ8ZɅ Wk~|u/.<)A%.E`|)tN$GpcB L$\/C@w(fy4}svp0D{ubw^ 'y w'$:ys8%V6>\@k0.@r"M*œSIp"{:$XZn?u=GgEǶ5]Ϸ-?nV]h^rG.vy3neq"W5VKsIV K (N1j0zkb#軧yCfOU8v0oF,!+ D)t:ms2 cv/ I0'bAބ`ϵŨbU&,]Qͦky Wݚ8j3!KO1*m(ȫCϮS! vQ;rG;ggO3&g⒐1VXۻYpVrS  W sftz>_2w>h<}V{Nb]CT?3kk%iّ ޱ}m$֕wq$ 9I]izޕKNZ+n;^LĪB`v'ij;YTXa05=71PPz~S*cEstnf*ݐ W`|«l0?D(*bY67賈gFӺp 6ddjNfC۵EJez䂭";FA&6(QQk|7\e* ᳝Ǘ]瀵]0uSI?b[)NXc!Λ$o5/_AQQ{4Mbyeݾx ֒mչ$hbR^@ߛ%aEbI a=rQϭYcE-ብ~I\eNe9h|1NƳ-PR-Aqy$QM0aNk]U_5%_"ϋ$C7>ֆ`T<9k-4lډF襚(:l&GZ0\a1ԐNX25w; atF|X!H{\Ng/Xeo{!1UeWv+/U$SSÔ9 ~Zyo>Y$&Ѻ=3wc+`<(>}|X%BjqzdJªy)e;"n%ˑlm>N o'krܸ s?SEYqh!`D LWN"D,l@/|k^/`Us-X̙һ"ĝM y `afb{&wLO$p9I70Pk gH dzmfGƵ4G"~cf!r\05,k { +|(V+`oIvȨ%彬"mINč `T.A;t4eI]3 +/sz+l_ ]P6z5)UcAðzKкB /lVQ"g G[ ON&l@ժmYkeEVJIZr e$զn`]ey&/+gm9 %@۴HpW !/K@*WtQHGq2O,v|+E3&|'-ݣ:S奤7jW_sao`h@9Yg&|.o{ZR[!7@hS:oQZ{pf&KhEqD]tR0;E`n:]}7>>N=i=bV @ <kto_*޾swduy; ZECYGނ:FRN :~17ngQvԩ˒Zp=hOS7´ߴ-ij9fN* *e:Ax,+N)Zعj@+qn9o-i+7AW޴5潒 Y'/>>nInQ᝙0)IU/!7M.WJa`0Ҥ?RRTlSAAz̧Jc]19`ktz7˱ ڵXtP=Ae"SֵI+Hʛ$芵1C1ҏa @c4H3H@㬜"pOG>35}\3A]3ruD\QT!sΆ'&guЭE=3Nݚ?M:Ax"p혺$Pj[l N> ` o g{EJQvheduꆏ2`ڹSh=.Fzem3O`mnRmM`Jè!!s#lldvC֛ muvYm5^J\ l ޳gvVHĔtHXNEc^h \Wx XV+9Hmhũ`?JZ:{5eU<ՙ m8綽o0\zvZKȫp}aqTV$ZRE**C.{ԩy AonL^ υgI>6ֳ)g׻В&eeZ;]q1=I⁝Ծ˾)!~Zy`1YkZ7wStzYχuwE3\V9.X@\$̠eQHք41#sY%saeeLxF}p踧Pov}Q">x26'Ui"R֪ªY#"V`,6ͤ%CwU|1ʐO 7*'E֙r G)ː :A=4u3u@[XPgyXi16N/FZaɶ{i a%C^3Go}*1RƯ`sAI'__@@XwҬ9= u9jBhх̀5lLZo)_'p 7֍rOR:啕gr\ESV4kG;@g5y=qg̱/mV ]%OJ p#t~ Z& {.ɜNUy&ߕ$H]-?O`-FR`r ȈgmdVJu6hs. n'pt l9LoBw-eV`B-f'2Tgv]M/OЫY?=nj•QJ@am#N"R| HM>yǛ/<BwT[6&Ptx50՟c!ggs# 9RTyH[O:li>j,%:W겓a%Ք۰w).l'Qaܡe@: l,= <Ж;q6R c #L|"[[.Xn>vHŪaVoR$:]_Ju۱Q%83 oNAh_ U0%bTX=J$Dpc.@tP'ԝ&8S}EeZ%4Syn5IlY~s(x@зҦ_`ZQEb oء$_/eh4= [kvi_LeŽojBj \m*4TQrqڕ$UTfc6* IKաX٤d|D9@>ƣ`_BD=./^l^-C}-k4{jp^yd{GqV fa\ l|w7UDۘ.kƢ/߀+ỉ4In< '-Bem; ~ܒ( G-\Q}̽#d&2}oFPYlمeWgm gV4p6"'dASo%y(;ox^5<|*pnd"L?zDǐE{L~&7kbSNp&jH[rrh0{k3i?s/x@jAbi-51Vt5^Hd ޝhFg'A"(7~H@9tG*q'O]D8yn{hSU4uձσ M}ޖ26D'"{NMD Ǡ5$@&$|-RnJ$2+6'W:|XDZˤo)znJg6 pT ABCEq`sIк90PDz ٩x#8UeI5Wg '특6zvpE 9I~6q[7 zyG.:uW3jMKZG,Wž ƃ_?F6Jy\Fw̆^|qb!nP`-ˊaBб)v"VEy[w?=eY~hIm[;Li=./>h1%J֥o$ЭOzY1"\}S]yzk,@UᷪOKQan],TǕ*=YK m9S[O|:hoO-afTm/[9N,mL(]X~dKhNȏlbz%y‚OXVz ՛Tf"FE@&nR1wy4;^3Sά(6ό]/%LjGۡ>E aqmer!_P}Ry"AH|! 7ؑ0MG~gPrL^CkN1s: /Ywl/7onKbT}K"6b>$9u]f&RR"{Hz!B4[(3v`jZ}>aCA ,gO[y劇^c~R{Y'6m IfcXAewr*|S1bD#!jn߭}.G{:LRnߣ,"D{r'tCR&/E}]R_#Hqlh dfBtbx+Uʜlv `oCc`xӓNb|w3,sm37h:*rL+8(fM_YT&85FCOB$~!vZ9NST,T4Ҕ7W3>׻?4C#9ѸOn97lZ2 kc?]~~}b6q:;*5;}!~~)^п}_)$yQ2XKE{g[Fcհ̲ %u{<Ăi6uԗ_6M <*8Y #f|d P;a He S)#9Exjwg p+i§g\E%Nmuۯ-}6Y8 j~nilS\sWg 1g/%zk-Xe^`!SnxԆX /ɡ s c _ng}U4;V{C(!B$+uZEyoq莛b7 sVM~XH]#e%ϳuBε=C=KԦ]N[ދhSI6 b+4q8BP_{ZJ^f,9*Y숫><J2Բ l9ߍr\YW@'fbLY2y)9W,7&BzH0 Ѕ N$jeH%M/,H%F)q t^.B )|Γ\Ԍxə-j?ne~;#> Pơ<#+wGOaEsEyie]RΓou(lbR|( "i_Zo&bLݫaċ\ F4:]ymFUr~ﱋzVddpWH>9~ x)W&/Vt`$ۍR@vw\Q8k#2OF?[NJ0[Ob (%0q!~b/2hf@2n?f@K2AVO;TrDds(_N^rwA[BE 0VK!uSE!0gZ8x 8*8 Rhi3+`$&);9S?.׋M9YR6JRAd7Z7#dX",78EC}XZDUQoK p6D36qSHUשzwPAMsaangÝLdP;i8F>@hg4Z^iKsPRZ?_>bb\ʧk9ONB4I0=YtjENY"O܈r "?`?dG+gF+C>{Akʗ5{ 0NfVΔ͵~误 850%&jEH@ch3^2'qDYξ%р(dJM1[@GBc<+5."yP*'W at<%?A>Aewޤ_RKS2S; 8b&.lE6f:s_G,& t;®/TbRЫ*Q$m(:S)򨵰?-}kVƹLgg-'UB綠UXIrhVDxl4s11\/UudȳֲK版Эve:l)82vkGG>i3~Zu"gQzaqp*]M$Fǟ9X{>N|XڬhmrX:CgUnZTчSJ&ڷFK! u r?89_ ?0s񹐓蟆P_0g|&$yWip1?fdrwkA/8>*Oّ{ꊍm ˨xS i""dx=HcPTs}_h_]<*w G_pu=(ֲ+Z!0 &_j r|q:шsBA͇%:(BG%?jr'W$ as f\fb<';Qcxڬk_A9XVi Ւ_Rͦ"9d6 иKB;O> U YI&0`r1t>3I+0-oFH8Bȉ҉U )]'>}!iC=[Kߧťp(e16;]tܿ_r|ó</dx!el2|"aS>ѐ|냑QF&=[ {~IDۺ),VƳ ,Y{؝IA?( 5[aX-ڠT`;e5Pw\WT<QzD" I?aշ Fwlܮ[D矀9⮆6EϺR'c!ݓBhz5 -I^ Oֵjp^ƴmЎ^VzlbRr!W%cJ)iS`V!{npuCiS3S)1`ZK mӬ%tHҬ<_3 z-M&/w7~0~*l_'r:_;lQXO o8Zi!~K1ld`?wc'"&>x0FHό8i/ 5pWw6Q|}l4PK"m=""?]>'`d{i!.F6c ~MI(LQ(qA0|z3q Y޿82y ǥo g paGc&n&2{iVLw-)?urmѮFa9.+;-^Qc}T^$hJ)zѽ)T)JCo54(wJRcPr\rtmJ"Ÿi1XMkVjc"EG&+"җMQ""e&ZCxN 55*=MW;_.-N"Vg1v78}^P5,e 1'fMO&iR >e$Cqn{Ŀ ~`}#~t6@twaՒuyK,e۸Xw`@dI Vg*x>RvvݐO;aVJI*i_7Bdan z-i^}"Ȭ9WU? s#/d}ٓg@i2?8z%zKTPK{}+dk ԔBy7͌ ٴ4M;٥ lLvHahi޶^BW um5r݂2`M]Ɠ֝ er)N$sx|SDU˽:' aDdv:I ^P~Gmrçr1'm)ޓ\{y+̠L\״= )%GS2t)g++ͳ~>~?GLu8+0rÈZ` ӱs*w;<ZgWP82xU4_1նF@NA{EEs[s> ^Pd=dDi}bS9WT:(TaB @|N܂jЍK\,Ϣ @ BDZbѼx M:eiNC=>Ѫ6nRE)bQ!6Zc,óж#NLI9pw{9!нc\P/CᐞSJO닎Lz'ėrFezw 9`}[!9p6m+m0?a": `a (J:fRfm1UFO%1 ݔ5jRݮlet1!lt62ү ś5ɀa3@XENto5kūH 3T.Hc*yleSU> lɸ=Uƣ%xyf Pj<51lU/oo6I8Ѐ>zjBvxPXkk@pL^An?+o8s\o=vw~4QaycILkNK؍C{1G%l !"~x$#5SDyhpϵG.JF{[_-m#RD.ZpQu2wYAkoUVߠ &n=Jny}8MmK˜j|lsܴ!^;J&1_QIN{ekw?%c]ax1#fP^0)x _ ~0i$%~[h]L-uK-_zb XBi I0(q,(IR@IY"F{n,1X4ksY~sOhB%ф<&srBk=ՙkErc 󏾵;k>X׳mJo/ H9TGgtR|t CLķP%#`UQPّj5"oD PƂLSKTdN:[l6m_-LJ#8=L|jsEbް~Y~Hؤ[8ylJɮ &mk9+@_SK|FSs)t*gǑI8l8G%%.v8 9l>K;u03>dXZZ"ӳuY\iS<7`Ώ &4(;ܐ#Jm%CsV5_"Oo_%czcc}uOW!Q.UUwt=5s]녈Ûv ;*pg/y# #+\׾E0r s{L'tLN{(1<@}_5h@Pb=쐩NfUŃ.@#{Bk83*=5Wim!7ж!ŀ^㱏 4ln#UA@/ꩮ0vū~{+آjr+`!vgqB|H?afH o̙D /ې;`xm#J|Z$v۵(ܜ_`t ˒])ot AIrW NMx}T돻dƹTkQ~\Lt5]E+om' >z NXލr{im4K&?&WgjGܛ/2XwהBEٴnA9ea4Bm<4ZS$ `@;6wĮhjmȧϬ-s-x2p mwOҽ.Y=A?DX`wn>ՠ pdϬQqtp@PmVcm #E1ABIQl-dU%Ǔ 䨷t̶+Cf3>]οzΐf`)֫/y!Drp겛KXQ( Ǹ+VhB=5\ETb[mlcD=8s>$\e%n76+]ObIm~<ö??tM0/** Uzx3 !ʛ ~?dpdH_FFːT*k^421\jn.${wȞC/-b-!܍Ć?A$/R1~`OL0 ]Ҿp!,hBD,G\~CL27NRU2#҈;2 ^sW`Z*2x|qr}y7.=!.~~Dh{:UCk@&kXwR!g*.l11 7QŎԂOKFdt,VVNz\_Ӟo ͻv9;m!cS=;6mBq:q߶Cru˯?[+}PU7x lJ(PB.3\_/Dq w(L-m|GN- s H]dž*U.o77FFˡ%}<'niS23&5WxdXc7 wQگlycO+Uns _hW){6{lx A=>a]ݟǬ+'Ow7*? {yTYŸ*Uwa|ꗍ[AαqL;l~-hlxy_fd}>XhʊEϰGe1a@6`)U$#+\Y}\SOژM{A Iw: 6b4>1%(VJ4L!+DrWm^6T"2[a:L˪u"|?YS]#/m*NW)0zR v&M1Zqfi?S]a`g%N[Ř^#ʸr36ݢs-Gaۨ.fvx~cyrOAg?x}@ m[qR1ҺV&p'|_p^3%1R1p=<0KZ-slr^)@@K|bƍʩu1D0cת݅]rn4_l:T>f -Bn'¹up8uvcS1 7 oRXzuA*̝O#8@wlבKbۊsE ލo>vK`AYh>QDVSik'IP&Ck2U<[ b3/Ty^Car;!!54q{!1[ 4x^'T7vI,4;( -].NC;LŵW @tնp 8N58Dѹ M}0B!^.j_V[:mWKVQ?j0|y,e%^. pٓbִ]{}ajR e\Ol -Hg{⣓jAϻ~̵I0xWA( q%±k8J[ss]Q骑$^_a߬p` `t?8rCA^ay*^^+o P:I!C5^2^ef ѢOxۘ/-O@|뎸7TD-ܢ`C+VegR* s ԃ N>:@@Sg BѦ'_|w2u8 n=MU(W#FQ!"A b<+(U]ᅛZ4U&Q$éTBZ+׎}r7G0iB[IJBb E U{e:˽% 1t kU&WyM K:u4z; M0C};Btb}1 }q*i8<2Ԫ\J&8ǡBnl+Ub'Uk$d'2n1вs4ԋO3O>af;6Ru산!T-JMwO9{:Iv9P2JңrIG1b/Xy店(B$ >mT/+WվH H_u~6Aű꽶vRo={K p!t$io!G?R$eP&(%|%yTIjYD j =JHFEG`_!%Hn"=*d(wvs*EtWf!V9G11!tզ!1zCXpJeabմvphK]m4ujMy:dD)7=Y+@>H`|ւ@@Nlŷ>U.DˊɻLr1J\ITVP~ک,P)Itm.+8z.3Gpr9#%Z; SNd{w0GV{zITlO,}PVl`[\ΐ'a9vPqFii(6#lG3m=jqgŞڮaFj_LbC (L#Wݍ!&W ie W)s#T}@~Ԝm\kl b /,M3W*2R5з{O!:L2'@"dX*kE&uk%tAW@Ӛ/%ʙRN 6\*@(:6M)IV}#º5M;!}W'λCFE7@ Ij3f60p R5 إ N5kyC'akZэG:7c|AIV+71PN?vj9]5=;9rFƄdƴI釷uwg[髾ZⲘĚ;Km=dHr)̈́3>;R--IOI b$_hr`) ?,4šNf#n@5׹&2ZV = H`)Ûo: y1s.BnFn~]XLax}x0r!bJ\J(D Nj@zLET;=C*5ҦKAe9hĢEf/Ѣc9+!G]t"qf#PbD$}٘Τ„ zh9ͷtl]7 L>vCVIR9.l@!׎DbӰLd6HPGmn(۬J>-h[K9dI!c;(i@k)Ls hK _5% 9pb[R5D?)% .c0NsD>—k V]U"8-j޵$V^XŒќj宒ZlkL%>k]r#PnwAzry1ը^9xϘϒEB'$ !EK8h3Ĭ` )iݠ '`gh,M:WxfNxD+YÙJ_dЗ{5y#ďO0j: ^{+lk cٝy_WI)o98𧮕w^m' 'ZÔ7z_>!o^ j 4JEXR-J;3I>mu(BBa#kR<|}]ڝDnq{i'*,jPK*v"kL1YgF?[=qҗ.lZVδt$(;IsXꫢkL;l}z/re*IuGRF㘚I:† JuKwR#Yj%.Tl9(sk4*9!O_GZ'yZ8l4!P{iFɑ#At埖s-i*5E5/4x*<|F j{:.I13X,Ȅw(2$*?1wL7 cЦgVDY9aY}_T m`7V6l p5C2LѠl7wFPy_S1;"A kd} R7|gl4qևWk|H®9̍v3l+X_v'6_ Д:Ȧ9V)L qm[ԽUرK7RLm,^kSIy=X3۟jϒ(BgݤWSnq6eN5ȼwa9D",#;\~b~qq2(#IJbWn)Ei },?n4sn(&ܖTƤR~:u\hzTQ@% .Id~kV6^>W=T6d6xR5OLyF.nw| J"*84gR#t*ob;Q`0.׮bb]jCK'3$fr)FJ"<&[ ߆3gBVi_ lcHI逸x- d*|9I5UsJS/Kg ( v=?p9/C(GE1#3b [/$tMV^rՙVi>l0x><)gɻbD OLBL…pg i$CRP0o ֈql%>~ ;;2{e?ן-5|&@K+J<1y";q\PtI~ymJPYYA18ཟn\B7ADL^: DY_| i:!ɈEVwSkMτAYq  B$b]).Д?#2=!r.\J>i&uWsⲍ6o#5<%C&hj%s|!^wx?A&,<Ԇ˄F?gr%Jbd6[DyuKN#+8*eߕ}f+7+ yox˗(NC;ѹ~)[P]q?[1?!ADS 餀ѣ:FGIϤs8pP$rgy}Dv&`9GO+3DOzwج圽u+;E(DRNSH`kF4Xyc 9v`v՜e,ٙ1 XMc$8fc9P4DkMkĪB(@4YȦxI ٵx͐0NQU]QkV͚39 ?[.Z"ځT,vFAf{(d#m[L#oڤ-$Yca!c-Y4o1x$BR`ŗ1?(T*qߔi`,l؍%dA־wsoP%2SFʨ篢R@W1.IȘ+k WJc\wr`e+ bQ,$][鼔UN}ttN7ER#cĪX MӠ :w0gf, lϔ3j?`&Ⱦd1B\}_$y|soU#QZ/&F"}l}qXV- ;pJhJ;eZ' oovU_hx4jB^e91nyy=WUƅ'ZǨgs7}ۭѭY\Hv He27mYnb'DhK*h9OߌđXI;X2%F:9pe}|g5Ae9/Y -n/2nrF*v^}dhcjg,9FNnookH{iQ5I?^u)m; [wpz)dž<@iE7q$ZJZ-y PKÎVOG"3s펎 ']!<~2/NV/OAřNRfSiߐw-}OLf8苀:^s|{_<&Tyěf>>nѠ@rU"7 Ӑ@#S).Ӭ06&|֯tf> 0߽Q&Ȅ8wit,Bj,TR>wvtnzJ'JcH]`-0}&hmt:9_E0Т峁YJHbi`A0o(~~*`j~q ## ALgOeI;^h)Vp4-\Maz^}Y/oS"Gw,? ߭İ7&U輮ٕݼ9l@cjZZ.: ]±&v"u%"| YrNlPO^ɥ4UޓFc6hZȎd?|l;ٵ$wrTC^$4=۴dMCF^&C"Ϟx_lAkb7~F=ߗ.)tYw(^/m?sO6cAg@G ||Gga(L"'FB3GeӪ tmh/×xz|U.أ Y'5-%16Hj,EC. 6~~/$2I atz֟ RkZD'"x».aEZ( MU}aЊ΁;hHDD[{N=uO&m X{lQU#k(OKM>OD2ﮯ }7L`YS-1@a(N̾t H46?"yw _w+l xu%Bd6Gٓւ?p5vWGq_OX9v!"rZ3#dX[ՓBYlGBׯƂuy \RȑwAMR?Y$zCqd!IiEF"Z&@JZ׿SC?qNO5 V?FoW""L6x+4G(dgTy^aT2b0sa-^-?RBQO P/ LCEr6nv3x@XfaGtA&tիwH^8&,kR#u*@"w?i$[zOuʭg2a P3E#OVDo*, ˭m[9;b?ڬ7}4X<3+`d/x-a;rS} WJ[NLQN=D^Qn~,kY(hm~E(fuYQCh|Z[H\lz,^KÖ7r+µpP&/CQ-2j$>ҝOw}h0"bpQۈS 1d=^|a0FZFHuWgBAnigN)fO;oA\ۍA!BZ'uk1atHPxI"*xWt%Ժ:y ]10 [ HD+roL7tcaV2CR/^8*{/]zP 1zѳ(;"x %Z*gV~=rKԀƆf)lH|o)I- Lj؃BOX'>Qo3M3=,2؊a0>tG{,'WroNURvqC壘ȡ`f˻L uW[xT|Iuζ7jHO 7;̩8+dwb@[Ɣ0vA0#j6<_] $Qiej?@|dl ͥo '0ҨTu);,ׂ,T?Xp"ş^ zƎȅ o<нkgf~?xXu-J3;^a˥;Z!dk=le&Lw d1QyIK6)KTwJ"Rů'F1c0~@K=!IΛwzsSeɖDeC]_Ct>ϝfoاJPLeZaf?-e4MqiڵvcG F!Nhy)7, :m\KHgƪ7qk WrK7 tI< O: !g#Zb^J7  BTC*q/mlY'SXD|9I V$n^t[B'mA_Os۝LX|!/S06ш7jv[7NP"[0!&p[U@$i[mwި9IKHٛrE KPDM^$pt iT '>Ał,?8|Bҍ8?&c@R̨PDKk]r,G&iYUIonl_((G mj޷VRH·-(qqF2 qwï\BWߙd] E] O9rSƽi*taӑӹgz?>`8W/5O_=g H[Ś`Ѕq ,8zv4kCELCKm"kG?F U**ɜ.7.jҧ[i?h=eemt/qDUڹ{=w,NaŢ)?h m]Kj?9wBVk$zi$.dhւp.!;RHOsvbGZYx%d],II_@%3R#QcS;;Yhb׎ܚV:ΉPnПQ4(LJ2:c~Ƿi1\ARfc"N5|NDQ3^eiA/QyE|-DNV'Ɇ~|}8ULk,;$´p!~dgf2C㡛t_D\dik8l#=AF '@0No5N!q;D]BlkE0h.Y#ރ8^ $P$F:DU0$AI%^/(kA@* y^nE>4 ۥ`n,ܾQ3s.Gv7HHo\o*TvVũ8`a: XվH]oA61# s֭oCUp/PU:=\U{:9vf+FGZxk׸#6VmN"ocC8 ݆+Eȑ/XTFk{՛7K|wdb|9| `u֝5Jt@r&g1dQdl5݂ɇ DY|˩7~OPLt)SJ`|c\S~Cݐ!1薡:?? #/ #>?} ÀO ۷.UXGu`؛ͅ-Nv,/zeCQehb[w[4}ةLO%m'H5*IiJ;AOz@A3rQL+РsJ U {DD4Qhxkp^N䚋 ah~dgJy?|okta)`FcO8߼ ?:43 B=_/:LN=B($!xOB0̭m!A]L&W4G >/9q+G'Yu}'Kna=BC VT; jד5[CȖ b 9U.DY=; 0NFpXYhK.=by=|/6UQ`2|I3MFЉS{u+[R2]gc!R؅'dXAf3\T><Ȗ4/xuj—1>fJ=@{Ux8$VC^ tOˬ9kQ݈_j-@!+֞SfG14 U|}Ed렇 X?u`dq;K 0Ul)vJ;] Dm;SxZAcl@@C1X2`% d?$>,V,8\;¢=^J>;.[Q2 S"I% ӜA]#]mjp^сN]CM&I;MK%2/5cNO>Hh y $Q^>.8D1:zTBc_㣝/ia#&NK?}.v9"kx߽j,IO@ߏ) KPwQcPWpE$ŗiӹ G*ܱ^;a%5ꑘ( ǀ=`wfmeiƌ[fr2K݁=Fdz @ $w!~}, (N042.\aܳ]ir <{a,~L"YXzf.@lL"!p5`]MtxΓ%+9'HՀ߿M:C[{QO1.,;*LP^zʰZ8Û.(_9oE w.8#63kr\€s'&Pk݌ t$DNq},`|=oM v5 -ҋ/al+nj[,;o%jYa`ip-%3~PM.9~.*" Bf\J*HL==%.q,g EwޠL"Olz x5o#@N/?5SPաWi|KVYɭy^Z 6n}Ɉ\'7z[zS#BJ0I:X>bt>GJy\w@886NqHeKΪ_iLWd=b B MTM$RǂI1/ue cii/>!EKfpOKb "5Rzew Eگ^%H!:e&XNlKi>ܢ82!6:k%VSU8sާ֪rOS -E2̀ `DCm!W`SFj冫/^$T\E_3<,a/z6 ḅn|NPȈLf!U8;Llei?.R[fhb;,uW}Q1 n&]G"uӰ&XS#F2N۟~%=ЄKvT\1])X%OwȴdTѮx%Lt/ђ1pW5W5aA7~O9ob}_hnџvcޭg SOlGnn8:my`^P{zQM9Mm1VӟN! |PhMVOLAh<¥80aOm0{o5< n#q#~ P&KNC]$հ#=Ty %;'f7lId phL JԛKxޛ1DC[*jKêf!B@+W_/TŝJe]*Yu1W+t\nÄNV=8ڐRS`ASgGz4xjIk*3y/0#kՅO vvz[b7fyPQz'\ʍl\NNaeAqx!u[)OxT+Ft Oî%b*YЦ'J̡RQ0̟1:B?/ D]%݌t)b40>Ydu>BXlR7*a/d494 ;Rk4' j tMZE F9; Db?ݛn|EbL9wՠ{Tj>PNɀ-=%7\6=!Um]^sD .DCJa n`GH`Є.LYA70מ(PjIJvzU n}Y3 `z7fT~06('޼b7ؾ~/"xE%Ϛ͢oZ:#y 2<(S"+\?AX)O xؓ@Cj>WV'1.gh_t+xϛ*ifB\f'Ϳ3J$@ +^85^-#T]SdP%"\I+RD񇪰~6 *T 8x׫ ltXS/}[=y;`MTJd9 !`(C5m4mHq0 Z5+(L?Lm}Z">.2]/x,pcնl KCw{ss~Gnxn31#ܸyqO}78%+,riH!,s.S؏"$bQGQ`S1_)-2zOD]^m0#[G$P욃Ru~=ˮHIG:tDH,WƌQ'NbGw^t2}~  ([3GQ׌Y俷3cJ;Urp@C;lMN$8C^guxQg|bOjM$ 9 ?8^9V^rR/#yΨH83/Lo:[;VVm-Q; h`{b̢ei0Oi`X@u!Y1S<ͧmTtIO%/Yx 1;F"L[L600vBU=׀j镠 Y\90|F>e{Jܴ8Ex.Rw/o' [iYBc c@hhE^U%Be>}=,|Wn %<:Q7:#uqS(@߆@݋yހXMv|U[._S@{1 "7jhً%DEqՃhͫwb+C:*[nfiP|G)9}R\ND/*LgMBO ӝhhUAf]?cXHy%50CG%3 p&"> M`4{)_ߗ^&iZYסf*8 fb;Tre зy3gVL2Ǝ }Njb,hؽyX)[j Tbצtb~2?pC?uũdLvemϋ$`// Fӧ m^v){|FFKL Sr{rib??Z\rt#84|6N+-׼_>AL- ] :hhtH}rP>LT1n.>5xxR&zA-FFG™9" z%b ۹*(d|uKTjJm &$*`muH$=p0+TP--;WsHfpHζ/]8y[<cJf$Ay%I簢*n@#6.\5AF :s`AcAixH1t6y=|k!~RZ! !G"EҦN=o/Ew?\E ή30 ^^ Z5I ,eТҨ_*_x)Wu>iLGw'~$"sF(*ƢsSCx>C<M;ϩħv`ZvTd <6:Ñ}ME],N0Zٻp_R]IN"cr*jU00.wD=(PA5*%hIfs"_( a,s7;|CG5K{X>(<ոZFOd38ʔșfB>'Z0 UyLҹ\*C O}h]*WqU0⿬ufڈ-铎IһkhḒ{!$ޏ/0vchn0U%君Cx3ù2U[WNRdu&OwEfz+o{{!er9[-֣55882n†D1pjpݕ.캥)$:V?I L-F}h$m z=gY lËU*e*N wyiJ3π RTPOlHqc57#ٍBzsId6 tc,s#R,T%kJ;L?X`8-r3Ϡ"9%Ia%ުS[[ʚ)TR W~ܪmk6DM@MR:fh˟Pyz2H3WL\O9ٺ.OW~ o{ra_hOdQN> R̸N<s$) /*Z[YP&XS/!'ˆSr(9m"=暊 Z.AX!: IvάD6%07Yvcو9f1[ƈW ƨ ?iVv <+~Q:tsd"pt0OpNXګ#ݞ]Zop&>YhT1P Hϰ3j+|iV|BvɁ;iZXBTu {vptƐ `Q@hճḼ aҳ6ш6_:9&tH#k)Ofψ-QRA_B(Ga nVNrբ8)PڨtL U~H}':ʳhə/B\žk_@pM-A\؟)E֭T3D}!s\{Vӣ-iА`{gLL.Qw*l@eWWн jT# @PJϾ]Y ˂6^rDU؟{ܡ8-JIrɸ3YTy>AI5q#2L룅N26毱nORB1LP3I'f(|2@_: O_qi5E:Ik@ATnK[E]ce= pk}93q"bZ^ү̕DfXj9b~Yn4Cg>,9 C!biٛagyPE`0tC{qvTEBo˷9Td+9cubsD k@:3kѿogeZ~S7o!L 6#~)[0@qgά]ˮع?|F$' /KduSXt3<{q=EY#?.k'й>ur&.Dp@sSNOz%`)Qϱ%ha׭M"/2e!\硟uYV*! 𝚲ӟT.$C ˚lCTfii7!VL#D{A6u S6IeVh6-V{FJՏO%! Tσok L-P#eT]6Bт:Sb86}&|)h$bj_X!ww2%"3(!NM첹ba6 >P>wz{X#9IKd@OG!bqd ޢDIEe%!5u{߁sȲ[ :ȍΞZ6 [@b.D%W !AHo> Gw#[) " $Yn _2-w~4k㨰+.;٫xɡ:0L.ٵB[2dEV3=5sk||ޗ+Vpެ\ ^$eklEw)$^yĠ H(3f:۝v"Y|P_mzb,Ut^V6k?tL4VTnq~4KϿf;C apOr#AČ= ׈+h0J،jd-v*k *T:WaV;mQ<_^P8jUOGʣl?1dD!lNGGjWs Uq.# Wόq)kVAV#Xfq4xr3C~0 ތ%e`NG/a ]t-ſh&v+I .3Qcށ2w$>Z`AFK9.~9RbZ Fޅc #Xgas/⬀pHNo wߣ^?2E֏dK<]}B" C|\?e Z #Q O35edsc}Lԯ3.7O9i^[ZR+c՜4eA=>Q1<4%kRW Qb{4cS3-'Dq'X]eag\V-+tU˝,!^C} 6E2~/'qmqf1xc` ]==:a.Qo6L)i(^bgu ZL_9W~cnɁ]5r<.U1ECfgzdM`7]ܳ-?un؆":6?@B5Air[61Q-}p4z2VST|pZznc(O7ʷ>;}HI'U䑖9EbhIul /RDLjU &yqKi2ºb `E/>(L#d"r_RixOogv`s-> _޺A^d4\lcq%(sGno NJ[=KRnrN=ԝ|C&eSa=XdshY0]խۡdS6#Dj w>8t*6=ZKl /͇̑\;PV]P9:0Td}An=PC8XK(W [+ ԭ~(-%Bp~nM=&zv  z]Y8UGY%Pū) r2$=r,tfaZьCH ?6uX ^Ť-ފF.I?s8-)m=ӝT/4 JC"7 S)KvZ 5)-S`,ᄇBKC31^e+vGZߍ>tL׭_+\ʳheWGha}jٹEc6^''-5}}t!Nj 6{ SwVkhR:0]/y!uFuL={ -^zDwjCcwvl{c-G5}!g/kdz-B'"Y2_/t;"NЩ %+Wl+QÙZk~kN5P$R1gMHY rAZM T()!d dK(<24ˉ^D/6Y]G~ UUW.W"TU Ԓj7Wd͙0 IE~SӚ3 ?hw!OY!h>=U~`}pPUX>Ќ7Xگ'OQ# 5k*gy W9$ʴ6[Lgl-oH̿hّ^#[``J30f0 o7 q͕-:?lJ(({* g|7 0kuϓoĞ1.WĒ7?IXoY"a="*lkH~`׶bsÛsj|gFץ @\1&&9]cMT-rc$vy~EzN#L>Hk;ve3anm~C7\,G F t&@* u9hgW̉r%4۔B.4w|Kws$V Uw~@{8AE$)yX6X-K,C1hy[2K[Y̰H;Zʠ1X>0#sv m㼦}SŢrYJ=c$&g8@%gHE ?RDn b;%['FWv#RڟClx)`*!$hhp* Ӱ @9?K<`ˀMȺQpf0p#3z9@ [b{ds*F ͌IbբUR+%W`V.('o#fq PA{v ]ՠ[Xэ6k#8<hXtFR;}ئ~y|9S/ftPMu,qN@ȆV4  _Ql4-T)X)D1ax n 4 @.m%im6\86yO#דH._9KH\񬺨V,Lc[}b~/~zțMP' ]EZ?#YrC`P\L >9mޔ-yek01.jZJrw!] 5!j/:7IQCWuWy'/<|ÜOÆ.,_Wi¡ZO.Ζ&dr ᫫"v|Mrf:dTZ2slozl.MIb[:_X*(2+bޓ`X<ܮO[.@#z#0$Î61l*vSd~"u!FGkjOSo AP Mx83Q6^뫭?E-k$=K>#nԇ0t1!szn u1W[5n;Y׋s,qs 睎(O(|zS*ԿrY,gSO}V`:-cqlkk}l٥^B`_rkX@$ @M|گ%uHes~4!wQi`bK;`=sktep7Bɦ˜uS"W{9TF}㯩[S}q8=_TAܘgoKY8Y lI3q%sLQ\T'ߋs(^E;@9( X=ʎd7kY3t͟Wv&K1IOw& lNkKÜ~pv{RyjLqsUIb/B ,b_gCցLBKw @xOՉ@#DP `Du^ X6R\@V{Uv>nWۊNUWE\HygmOKW?0[߶j剗8~7֊t O$6?c5}ַ" FxuWd^7 NP)s)>3Am6^C Xyggf?c脫u?-Qs]L}y="hO[4Fl'W8ґm TPcg(%6~pj5> `w7nQTz>-2^T*gO:X%g@&ٌ!ylvw Y;XT_WP51Uow@!uIZVZY2垼EMq+-CwuG8)æz E2eL{0][?wِhwKٸBB Xf.0E?,K!Vɡ3?g1Q$?BR]\8B?6Gɛ@,erbaq:)G7/7-  eCP }&IP Z(2I䰊u\e[\w~wͿ:Oq.(*#S|.sSwgLƐ#I~R3 ,*x7)X?qa._E GV P7TMwjggU,f^~ =ؐAh S26PMamj:!2pPFX8AL Ed*o"gڦ@ΖݕˌP5KPifMUcA=9qn XPSCBPexq;c <)aݑ"R|5~=u봎EB /ܙ/L&d{ ,)B >z.|=Ȼr֯k}JA*ޓe"=*[46A?׃]gڂJs4豔ty(wD|U ҂/񀠞#3Y̰;_RLK8*ً)56#rT/%uK$WNgAkBut+ٰ}<08`$,cE?3ڔ~Hp[?帀y ܞrɁfO$f%pX֎7KH(BDOHL "qoF0~gRBKA5"9{¬#ުBLLDڲ/~䁆{ a/ž$Ź󰋺* Ӝ[B._a8 yT%Ӑ1z%7مl[)ЍYlV9ケKQ=sp}٬k);(PhZbZ`-ⵚi[9?{X"."fCC&_{3D';](+bcQ5'fv}ڲKkttne,?Xꎬ[\pΜT㽷Bȋ"y깔/: URš5ișbZBݮ7/)z՞CZ~N BWQGB; _T1Ţ%ݺ7g+&!4Y]SL\UoC) r0)JM,}u)b~5Zz[iT>? ?W) u 13#/[a̮-]?OKBy>]~C!8i=pTXcA琁7mH[@+`wnɞKy}=˥[."TY;T&;S@H]) f:UM v,#P ~ D!#%wY^}E(Л;N6;wiY7ƹ{Nho u55*H{llHMClDFeK>YjAV?ɕq5=< Q#rgkAK;oG:9+r'cCcmHP]dDOD| NMbc/b@R:RO7^ DeIsfܯzQ ?b0s+)F 0$-&ɘ] 5z/mj uv=7+UUK}2!HD;TE%V_ fҧy[a'J #%ozR،RѱgoOLgFLvɭWBu SfB˜Bt 7h-iHWEN} )Ay5 AoU& ߥI_|9e! ML8_'c>ݪºiIZ"uA_2iA40V]5W%sAЊh2 Ҷ9M\{$7CHPi/p{jE`TF-W{wRCmӧ%9YDlls q9\ N*:YyZc5}  Ȳ4n)8) }5zC>BJ09Gu~qƕzb[Jc /H 6ـ=3mpMQQȟyޚ@J=U BCP OK&@]k+i-1Js8n]ϣ_gVHybSk>mf:]rb`!wڟ`AŸp{Ww!`f2AliN96Kt6&sϹ`$2H`!?<ΉlU;cb)cd42jaa 104T\ hQ6uɏd\T3XFEE=8R0va캫uY \sտ-^H&LZ7QVr/Jn46n*9̫/fId'a\EEIf2'zA9y PP쐕ϣߴ?4œN4o!t ! ܘlriyFP)/d"HSXwb_BB 5"-P4mӻj).xǘ],~ЃG衧q q  a{? ]1IWl_fQu_3-]~L}_WE?uUߗ!E)' VO:7@*lc g6o Vt9p;-aH]EY=nՄ;wjjY9<<1c5f似%>fl܏6WYqYS$2ߪ4;رgZɌ=ax߃֋Tbu̎mKQG Hd،_ҟIJxX؎lw!ܾVxFF,AŽaue'Ckh(F[_i51ʠ,_cuErbȊ@3O՞"?s̵Oy ұTU7~ۈOTH@p%oxOs NJ _671EgcҋSII-5lT*p檩CkK~/nMLFԳBSk9|ajivؘj]M؎\9.@2cѐ1Cr2mRYg"[ou;M:Ȟߡek_):%z#oB i3]a9ѧ@WcXFNOZu-VIN14 TyQ K.lG=dX*Й=R?3=oexkf_0 mX,L؅E >桹}ð t{Q_j]ےӄ'xma*g!ߤzGlƮ2 E{3>Zy+WKs yɜlw,љZKfQ)0S9F=XkUn1jc+':bŔ¸O.ve(y#zЈ/0ˣ#rru z8O 8Y^;0Z,R]{`UL?M!$QT}D:X)sʇ5,4Jjnk~ BE|x?vr*ѣ*W'۫ɕ.(g:G@7j8:ɋ`kq?'4M*QVU:3sC_H`楢8֯O-%MS}^HWyNd$2$lM`)fmn-.SZԱQA)K8LW#wҦBc^t]Hݮ[ړN@Q u`3<1 +ojx/zKR2Hep36UO0/mcEʑ{8' }򂤓2h2\Z3=l#Ұ$cשrK2#%ԨLHl /w.ެ y!x?UghE"gզh6~/|H-g8*Jf +Y! Ip :d 2xȚ,ʫ0ű۠Ny-VuVЭs;%ah/;eN$f7h54 5J l@c!*8:!' TV*%{[;{(ة"RnG1}|; z-]_rXhacⱾ#G>wE'"9{01=)321vcJrGx8ҝJ\B0&'ى14[bˤ~5P;];?j=?!!;] r+]/VfhiМnhK3B +F?a43!z( T 8"~=0[f,fu)̆wZA=]uMpA q͙TnV⊚+eV2`~\|ret3ߔ] l&lygШlkBQv0Z,տwIt8Kt$7L\g<ߖiһ0BئF#5ő[VG/9L(j¸~q"rS|X^TYoyGʶ%k_@LA7Z~s+ݷV[go}H@Td BPwV5E%q*3Y0NҔV;Fo0՗x ȉ2{J7J~| b}Itɫ:-~8uXia.hvd%b1,}Vh6rKFڐ=d =tX.gHfv`}N0N-w>Xm5\E;nìumRK#Y1 FVYƂ yl QA=΍:y# 6r ; by큭&Хf34 ǥ QOƲ?|gs%mCleL ) d(ڍgsyh4!Eo2y,8]٦N}|D-'(UJ/jIwaqNOfmMeOI*G\DQK[EFv/+ҥOxm:n.ed_9E]`*65N.\ygTr pNxwJFh9co3!m8GmcoJE/#Ya}26ʇSvuh,0 i`^ T5redǎn~eY^#$E7`D"jѸ:\P#1W%Zj t*RVrxw\ǃF(\A)P?vZiWr>is T`na\B"R@O"HaVMC>--ݾ e`ݚINBp5`Ok囝DG<n1ϷK<HşCdځz}bq'e äx"R7BV{u^.I1>fԳyU悬df`O/1)|SQV תic=Ⴄ<67Sk}W/kIZ5@fo/};ÿ=ƨrFf̆W(ȿ秘UM(l*(Rh2e=qNѥ" ^ui@Lv+~kft9O WҶsurG e VTW)sHIx!ʈ둋˟-r_R_Ǔt1K9bbXs>i(sE{96^C Y QdzIT pdMY/ ZVW`eV%16OR'P :_΢oȥn~w #P1"2RuB~.)3P/~*60PSgUkùr^-!(_c9,a&2LMkqA V17<~d%˿Ul UYj_x:9'E>%=V.#hK;53MyV+F :)\<ˤ*\Dv*{e#Ne-+ <3h 3ހ6;>euv1p]IZk0*P&sQT9PѲmR{ E&]6E1ܢGls[7|B=זn!f,k3ä\ 8>RMF+TOrk1{y?z,gox r[nH*KhlCh+I4DŽL羏l}q77ͥOh_0ue|S#(ebR%4ȝoӝ*暂;bR]%: Bzk-wALAT'6Z"V{cpܒ.ϻ,#4Q2(#%e#JjY(#Y@u, $ɮ:njOupr7ı,aPd8{XkI_lLFj7>X~ϟ4IM V8vF>kalrmy7 XuC:i2#_oJ?`~m?wo1Ց2R6* tS0O:x ۞0usk`{oV_x5}5OTn$řx+[Ie7rś]@+|mH=dۊ[An'I*kܼ7UFf 肞ޥppl.wPVjGEUm>3^mV iDI>gZahc"ӹ+^"L1?ja6 -U1Zb,QLI_Ex:o'ω.6ceUq[KIˇgfv5ǹ%m !4ۤ՛k8jV;2% +uS|1tx(% < U+ X!4 qXUM;aJZćPX-e1P\4  `:9$/{z`5.o#,Tjk8YoPfqȷh?b@ ktZjr(:x§E}TYnV[f GPy$5LK}1_3L gN[ݟ:BoC/9SG2oac`Ư8rA*k<_ZIXםW*&6ߧ8o!7@Uˣ2XT(슶ܔSᤤx,;h5U㒦*L%zٻA5G[LBܫZ5~>j pD9Y~:GM%x̕&yTZ(.ӅE|ex rFs/qnv<{uZ[kjqDJC^Apnnܢյ&"T]&K-Dw(b0lZmfW!B\ ﷚ ZY3ʼBn@އ,Ѓ&W'oBkެ/p_Aޒq=xޏ_.asdtan!JXnS1KdR}'הCCR7~=h͉rj}w Y} Ϙ܂.Q;X\ڱVͅU{X='ݙX{;M0S"D-2EW0*#m@1h,(EI;8&!gak yk< CQcf0%c頹$<%[ tt J\\B _apCm2ƙ/9ڹAn8G/ر_^nGRK/4ԉS< /+nEvm7 YU6)h,!\r_l]JըFlA[QF>p. -,D:0M`VaQ9t~O$]FJu4#JP & K)-`'!+M]=a Z&YHh &|UkPJjf&œ^6gK!T.|I6)fH @]q^9? &ИdvUhv !a宆qUVz4{b{#hn2I]ai_wkcWKons`cDMkg񄾭 ĝ?/d'gA_Տd (w ACA9G`+C7I)Ey{$AUPO`^"%?b[r׹xXPW3MɞRNx?OU3gN:l~^JV3hv 5MMKg%nMRjK4kw:L-RP%P.'JYyZN!s^ƑSGD* Lڜi'#ٟD Z<4) ~E׋⫼N՟ lƊD^H'VF% ;Bm9NUNNk>}Sg:O!,k]# S  @.2X(| u5]/3e P0Y9}1Ṃ) (fYu~=^*<,05(V nd WºUM;l7׬#PntW܁MujiBY1 #.؍O{c$Թ%.]l%bnH8b{Z|5-= Y*7A^C^}i(s~?EޕَDSLR#Sj]z2&/yTxpC`ɔŻu7vhi{wJE64.W(y0Բ¢wCkD51XOFStE(\,vPoY:y^^$]j_,mfm=a5<6>`[Lh*4u&dJ>a=+>`oscd,X?+ؼ.,M@`x5>Y{uQ$0!g] $n~~R>"K};QcP=|K;Q&L`W^RӬ8R-m@]-rx"SѨ;t ^^(X A(<9Õ4Ia-U~pB"ʿ'tn` My5 >#diyQtrY06_NLgxwٱAu[ݳ"`N#)# ѽ:(ڢh~Okk\2"%r iEݛeA4HL ɗ=BG$yr~D,uֆa;U<o%k0 ũֲH!HM:ejB Ck}-=qci5Db^tYӊ"D}H f}{}\700nDȞ0;P֐jX> 3F^xf}4 >GWꢋҕAYKKTh[1`LIT݄N%)jz^c|ׯHb>GU-Y!D=P$ڂ3,PFLHA=XU'6C}ۍlc qK=S>'ڟ8Bv"v';ó,[CVچT㻎/u 7cאR1cN*]MqCn=OմRjSo{mǛ.DI 贰< f:DLgN U"!"#.BȟRHYb2_s_Yl^] &$}^P' #%,Pr<8Q]ݲ::6wz/k@qZE"m:oN?KHRLrfkgYfoͱ j 3kgWrc4;c+[~ztOYx]C!,8"ԎZ+0SڬC ])F}/Q, =s.׋ˏX}!yTC6vw04wDlau H7? ~L ezbiǙ Zh3M#Ȳ*6vy&;Ti-rVWs2DZ48 ֩\u0bІjf$~#}R`lfE\R^ɺ2ZL]*Mض0ĥkraX˅bS-JXU`QmyxX7߂d;ol4є8nנp>Yyg L{ݒ&rFh0]ңB,/VyEk[8qϬD3V>'۴>jZM/Zְ uXߺ߅po'nUWwknA]ev sԆʎ7[n0|9lNͬ{ TΐxȭH5q, I wJS%Eٶ10"׃E(uۍ;>;_W @.y`_q"KĖ!/&Z$q9?ix'g F7׻ӈyuB / y}u;84h5l,Ie2Os$`@Khǝ̈́ T4ȐD/V! SV)Sn ļ8@/BK<>y!50y`-Jd$+ކkivexD7ᦋOQ{/#_`Ӧ ègeRj&i cz-7s\@+]sX?WokQA3 :۸Pb2NP"j{Pl٘ 鯁pv|&E^MHI:/O[[o@8W@3E|)S ݌j$?M_!N6)ӝA'KL"==?Cf% P=aG1TA:}D[+ {lM~à4E&~: ds{# $)Io+!ǻ^@#Y+/rd&gҰ.ε2(xgVX$a;R CJqXaheV|)UzhlS*,RC.3o6(|wxy:A }6TnZVK59IVN2Fc ipkg3#hk;sRe`(n) &gbޮ?%E9'Ou)FHhdIPvH*vn"#ְd"?÷e6L{=nvXXlSOhD ',lC0v4>~')TnK2e KXgJyKMd].X;v_PCl; T?p7h?v<*t:~9aUèwc]C~Exlt]!T̍Td<5-=2_~-0 3 \x41(sFm Q_#"ЍYR4#?u'':'YdLŵod4K[eq !^$}%QJ׊p6P1)>}0 C,9Ͱ%U_6:i`1ZErTˡy 5 |BfX\aI>lZNr LrIcQ@ӠSߋe"_غlnHOFE]+m_8dhs߮N+&_$sS+hhڄdu"AĊ~X_pˢ]zvOSΐțwW~Nr)S:g簛[{U 1߆ضw_~XeP߱[^];jUy6Nx!O+bN?}p@,lSOB5o 1+bԡ&l}IV֑-[-ʷevN\ |X&p53&[3hmŒu72ȜWpYNIloK|u׼B?\PE2*q]FtU7o͸QQq(Mt56k9.9j产&:;ۏf nL"#t%{qMXw5ΐvF -82-3[LdB7^i9ߣi(sb ],-+t ?l*f0G_P`m>*;{K p)Ύ{.P֎d,W*;߆K]5ZH/=]6;U W'@*`U(*ѸҢ.C{yzZhiG{l]WE΄߹HEv`.[N5Ή!g ~' zam |yw44q6D?͑u  nwOw{M>4J[ٰrsq.K\eǑoږSj&k05"{d*ēQ~N8滣яD$ ZAڪSGC*9HYW6F]#: ׸_HsF|E\9zsiE;xUB&DCs ڇϭ0/Ud.<]>} _ݛ֬*b~ ˆI=2Go`p>OJ鴌hxO1k հۏ)jROUk Pu+"2e0 ʟjP2ռZe倵!߁K"Lܘ;"Ů1J*:p{&!p?XTꪨ]-!Cⳝlb-6}6$xN>n:$b]J`&EZ+8DO2дSҔSN8)"!\Q =0ǚzH~lܳ"F۵r2#H~lǥi 49dZKv>GEۥN \w%HCJlráukOͤuvCM<fQD=b>Vf\!2u9Ԥd-{cbk1S-4H> b @@jꔁ^8Xef|1ˬXc9kUV/u/ٕ ]S}mJN6yEx? 4!'7nRAMv?.c4r[u&^=`A">dldHXiBsĚvR ãl sѦR$Ȏ)U=,1U̓%бl@<2EUeq~?vjL@"T9R2s_x@b#~fSN|1p0p }3ee3c^ ;WXgUۙz3%:6juco  "[j\Wud: *xh&owgXa/P:y?kp$!DYN\;~鷬_:.axy[3@;Uv#iCҢQ,Smc.CA'{'Vw=$I*o7,.aJXgecf~ݼԭL8uBRO#Qehy׌:pp  $6C pQm vXqadC[5䵞ؙDŧ@ax֣ F0 iߌmNƥ HO 8.wZ4MYz@-8 r&fkE}a'7D\Bv~tV^}auI,oʕF~ڏv^c~chF٢g,'PyO!HLExs[h#1FYˆ QbT[Hj+~>iz*K`7XkM oqP pz ۾K.)*@𑔒-O`EBl"=0ڈjWhKll eF5#o) SrEkɴL _W앭o<457\' 43:[ XvaGF]\߅<kqcU?PB&Ԙv&&'R|؎%`˴3"EߕY6+xdI*X.Ho7}S^>4'L y}($;e) (z=wTsTnx^Jr b3r19z<(ѺNלqWDws$hh q:]VC%um\P+/J; Rgv~]Nk@B$hR b5(ll5IJ xsd.FQX+|c-E^!k[.qCHue *&t)&8npyTKqi!˝π -G )bnZJ 3\k ~`vE[.2x8/T_h]b#§ѸRpՋsb xG,[bR`z" F6b /⶛ա*4`+sA"V4#H'+Й=OƖU]˅.Z>!e_#BsR@FB,Ha910aٟ LS;R . gpRf> خW^7D@stާ +j+Us ME *k.d:݆Wv⎻EUTЩE*Aoib*B4PL}cW'n:7v!n} 0Z:ErG!R1Y:^KrȢHsÇ[(͒=[ =pkF_Y2] [!B0_cO_lXUĭׇ{y0^/eSA囐Ѯp٘ cv'^z8y6 }C )m6ٖ!U9 ZP%D?GOKCӚtO./PFDQnE%O}>Cs&]]sd.ݻkr6t-Mb)5&{tґ\*f"Kơ^6Sɬ@KBRXǚ(-X'(h47dL\ƒP6@'!Vʘz(u[b~v/ 1: }I-͎\0&Dp8)('FZ)ճTIF)Fj6[esKEY6Lb 5vĀ(ڀjtTx?Mo,TʊNc(f vVrCO G z4$2Ӽ->ob`wsؾO2lc1WZu0cv70A#h-US1 g_V)(<4,}ݺ\Xd /AcrI {nq{j0+Y$)V!tQɎguԋc.NQF (5׵)7{/◓ 506q͋HWUX Nt!yٜ[09!WNbh2"J\v$ KvjKzqԌf=9,&L$l5?W(w2\*\{OQY IO#4%0 avhCZ$*DY0#$ B\ѳ  ,i5ϞH&#|CEnWDvUfn(ia x 5 y!Y*nQ`bE d%Ϛ֟Y#CQ|ۋS>bP sԼVR(MT_TJVysEHTͩ:m9࢒ƒ&;^w+h$ސ#Gr9@ bn4,Pr4 ?tPϫ4`Ń?g!y Ԛ-Fi]2"Ȩ?4\1H+CXūuwcVP`-þ\p-0D7<:N͘ j[8WlOubG F|R#^*gAN).MGbެ)wIfmoP4\~%.(zݾ8#fqP}T+.D XJMd=(V7j+hD`ʛ) kmֳ⬲~Aދh~%K%Cx \2Rc7]Qϱ:Y]n0OT3]D}@:'E4$lx?gZi?m4f:Ssh,R M0uTuˈvǤ[싘H*PNSuCR#:|0zTS\]'RCfq͖ctfWP sO&y ^*5 lF%JG~7I<%4+?ў|QW;D@e`]84\3i*RJ>[]nf#AڱwXWL ,I7@;D. SB(h(Du=}b7Yvg. D,7ߌy wOΩGlq{%A|XfQz>hq=̈Pq<F#htc'D#h$73j/^xӵ_q3wAb걞V, bqeք|qȨ ;*@+ H@M$F4 Auq\KiN,]?Itw WNrgïJ*YJ f?@myqEq"~m*&"@fjK0d7_=Q! -GpxАA-e+(0蜣dRr//s3|>5ƒ[rvk*bU0p:f!{J_p .]FSBFt%ӧRWkhGL`6a*4"?`2WzЌAI3훒cm++8yHg1ԾUoas YO;!*; %025C^DoO!=\)SvS<|GyL1(+i]z [,)>NUrȀZіh Cew>.F!U?WsH4OUrvfnR28JA֒fqLZ$i,i޲@LEPJ! # 8hXy5PTM=iqr6LXw,_wU"wL/_kkRKrқeX v)#w:_ƨ:=L,eOm\ֹ䆄Eؓ=Q!-ogļ8ޥтܜ! :qm&,D7 lHls,uS4s@Ԃ4G<XqR?hV?.{#/ Goo+\Poch!dAgPP(ag704h/DiKH-۶@“ B)/Tyr&f=b ?[t0%1^18>dz~ݑ|JUk<r<.Â4Q*~nc=]p{K&M)d1\)I,S__*&c]xƚq$M?.Bl0 C9TphcGbt-A m+8Ȼ zJ֪Tp+ɂ~'uhCCEu@3B:G^-T e%s~WIȑ"Bhʳxzz ~3Ag^0%ah\3 smvw;B=VA)ypb4~f e%BOvR>6 FWMi(s[:X+Sx󅘝:fVὯLjd-{Ȗm9&`#<„lוiK0c[O1#q[SB'L`rO!QG5jw(Nba& tfp]Y>p%WɮΒeY) (8HP ߖ#&_Lj4z'Oߎ;xmuhmiϗfkؚ^y4xRdY1o <26P mb%9DWGJ03LjdaXG9먢vO(רw5Qsc.Z2,8U[b[ꐐ9S)\-mh߄ٞK5mB?F,Np4 a$Y< !67ip@![Ώ 髧D:ΫI|sn/|9i+(x`%R&cv~"Zt7Kd'ys>UOCmTA#AD$.T9'zR0U3Brhba1eQaԫ|f(G9/-41(d{6d)sV(-ۊgTg&UbmVUt-؈W֌0TrB+L^ R_ {,-u4Z`( {(R"?JZԙ u$I L ЉMsؓA< :g@ !JA>JFT$ELu=+  |JVc>‚RU>oO5^B\^:nrI,Kq_[Nl*;#)Liὃ|wR!2IRW>7Tk6Nz½THVH0j<bȠd#9D7ߋ (x-kPt)\[vK"^ `׈_5{x;z׻$X`*q-IWyԋӟ3[{8ݸߩĐ{'uBNPHp{v.rfR >p[I t9BraghI,Y` Ufp+{;&9ߴ'ZD P5*&YL.Nc̖$D}S-(Wo{#bֽvD:.sz\&u%L,)tRNdvk'cؾ]~SiHhܣvp'`߳(r;_2!+JтQk9SZ*{hs$$u; E`b@W9GVcQu[6uA$L)7xE<=UargƧ& q20D1ֈ0|3$y& 4q林>Ԑ{tr'} J6J 3E28ب2K'Lz 6 & t"Ѳbggd Tݎ;g|{$ujZk@y+JkNkM']zsOl{jx$- OٵÔE)8&k>: g`Pi^2"}U-GZ qeh}K^.WSɱ{"@`:&=>XbLj3ɲߥCtmfcL<&$LAk~R6wGE2o ^( 43``kfꭙ7֗NU};l :Gͯ[Y"ye&z c6߶HT+\5x²vj$wwDkZN8~YAa]HcSՃ,ȁLsD0JƌS0ke#$T0r%Ḉ'p[Lr:Vty"LEPUK]xdvE o94a2/it]{2Nq- `犆O m6AHf p I%H>C):1eƌSh XؚS!KȣN)8:2j`BFPO]9;#-!*-zծ;m 25:]O9ߔzTbXrHNK1b+O珩Ҍ?}@N>sCUl; zD\@imirGGqzclCL8_}?F%p5V4x'sP(˙FcHo#?1Xjި rCWo4~6MXt@>oUr8i7;)1 aä+CŮgG$nTPqSi6A>C|9PkdeZ&[}; NqZc (Rܐ7,-h5&^`łŇwj6 @ڡ߀~^@^>مQsu%%6CF@~ɦ8c WQpLv D&="J4O)Ch!{^s>ڲn2:r; Wjw#n;uMtgnWx%]yArV]xl\ ul$$E 4M:[@}5+-`ŊLn9p\wÑSI>rY/]$ 6s\'3Xw~!Ž s]ww}E@ݣskhwb72YzP_\~~U͜-)K(*2e>ձ[6]Հ*9"YG]%t\inYmL$-+O L !Cܗ\vosN2v?.aq_(>s{mؓ4icǛ&SWU@}` (XEmytpj$nU  7F[*GD_NP0[ZU tҥ;L`V y{rO_mY=tl8^GfsyuABֱy(5ϷfejdI}8#p>R;-,;a֯pN`[|(G:B]Kc|MрtUeMQa"A\[(6ntYʗ4椯Y6:'T9 ']; 9L;Ըh!cW9+jpxDu?>ZGWj \iy9e'^9Mƶ`-H͎E6k?Z`$rV"ObLK|rMF!.m5<1= '@r1WH6[³NFaX4eFL-KC q#w=9W;MQr#yX!:-'8 S:3;A޿8v$0ʤu27_)E!i WBCb i^ZxyJ[XTgW2[sqҰW2`@WE0MfFb-;gjM56a W/5ğḳ,s* ~*+e)7Y#1Kx}GN9&+Wp IyUgUa)!];>Œz,)"9^`C?jjp erHJIzȴkpʜDM8|t b=04 i)ReY*7m6c#Ai/O,h|hcZ=j%Dûhiq3p>7>dVU'yt`@Rزe墖ƍ~$-k+ Z@j CrzA?"!MUǞG¬ݶKUhٳj\9|Yy5(T3n&0m,i:T+74>{ S_JLfBlBYj&եwƩ~R_ͅ9vJ_PB݄_ċV)nXN;TOÖfeڻ3n,(^bpr[Fs{=>`l`&%M4dY۸DUd4ƭUɔ #L-/їw'Q@ݲ壂P{0c>WX! 7F45:eҋϫ]BrFm2AU+!sVIH#i&;MgU0%OL2# +}}Tv+,e*'uWkSR>a%r@oGTQBfH(ll"4ɥ!=TT~fƑ3zbmWrh{ezy.«z!a ϗ^R.Jl|'w8y#?/}*^҉-[|ъXjJ.2]P-MУTb]נJ9: 䘾5fTTomN>uzPJ̭1B׳~~:E<J~iI5z0=Z2HvS(kQ7LKyԺ*< N'JPV Jc*nLߙ<@ `(SYia?YF OT\. ~o~]wFÖ7#gxk:9 ̓Qe ǀj/MsPWR+dl'ɗ%AldQ=%U_}D[.lXm)Srn=FH|w,W||7m̸X7Br>'H1a=|n±Q>(XH6AA;]x>rlՆr%6"+rτsVݜ L(Yq;"P5qli#!dr.^X3%aPq,7.8Hz؝;kߚ YQ'\ Qieh4È@,OZK\gvitHc0ZpfW_k"P[єZvsTj+ϧ7b݂5Ti;26x@+l$f:g'X䎶|\NN,y ߾Uxn{M@ \~cnF[jzrl\h\~|9J"F39zM*S@e|)kEy} x/Co!~X uz:]VԐ"4nv-oN}~]=V& w0Pvr۟yAK^txIY `U& jEo q3 Ϟ[ z\\N1y}hoa_t5Iwv,McBA"Y \4lb ]c.a8͉[(BfI |46qE? 4M:SLLŠ>|I@cCxX~$ /.o k`bTȌ]GStg%)!AXIoخn[0V|2?|9))x~1%gއSxhtfx`fZ~|?ކ7צVMn$= :p+H>ZCI g1 ƷΕ| wut+iR!WV_]jm$&5+;^ZN,¯BG:f /֌f)x:U挓.Ta=rVr:oiu}HDCWM+%/ݿ[Eo?|}8O]oF$&׎,}cȑVsyd>ӁC}釸,KH~f5%M($ d2#.7, /-Mhe(="]L_vrX;KdLUH:q: 'a2!(uMJRTs00A+3m?@ТΤr8n\[Ү5 QT[}hr ɰ@ s/٢DK a)hhu1SK;t\RYYn JNz:̢ҹ D/K*(lIӆ~g4Aj9\}t.A ;Drgn# Yq +DD.HvbΔO!/zm& ks0_n- l"2C9Ţߓ52F[X&C,_Ӹ e_V'oWrT 5C@םpreVVZfMŇP{Гw B8!Fmqi1l1/Cg@Dm(LABȯG1zT0rq1hx&2k_ʢZu֢f,:o%=~yŖDA/_in|=dDt7F& +u<׮(gwG+%Xl 3./ 8.PfNPoA FꇀԼT;ЦFx+0H]ʜ$t4JykIP ӑK35QBfstgͥpNcM>{R&!K˱;)vĀS p. &P#t 絊 >-WKoubE-({Q?iTP}\V+=kͱ>J._(j{&dj ~XDL"UaC~;dHUW T&6DDݤ:#dC_jQ!iUK<2I6|0Kcˌ{N';UO1BV&Iɽ0)y_7ѥƜ}.d:sڢYlIK|Jd}B6 S"ݗNf h ON(X{/{%g*F$xB^qAТ|XJ`ˡBA2}(֜7ӝBD M'u3Jy}pZݐcK]}8k 5sńeA$-@5##Ԃ6׵ه蓏°=) HA ^J'>W-~Al+TU_.ӸMrI,FDR݂ ?rVSѡN BT4di@s`?H-(uj"oM$81w@6{4 |YV'rR\W.y07:J{` 횪_E/>(#h;4T1[i`%0"Z%T+T崬BskJr C3;1qzi q\( @ul$Fµ8=tjCÒNvJ3eNMVDc l3=r:J ݁?s\!L(;n2cg g-p4sS gPUٿ)z(=$Mi;KNq}oqOuo\W}V61ԋ @Ԍ˪6bG!˭O:4qǥ&j~?%#Bg;ǹƁ:z k9VJ(~jA?tz@d.Гz&?#q }& U)Dcʻ|ūW@ɹ6/dW0}q4tF0W]X;idsJ!f佯t|ٲuK-/Kds8X9ڙn۟kFHЛHZQRDIyQC1|{&} 2-|^hڰ B kkиsKn #,fo&T ұ-hb& QJ|'/xkͶ[O[dN'`q7НBE8Giy?Jbc_99 -!|"Dm2e4+9fz.Ish3լyPm^~JHibPN=[|xK|tT<=eTqRX83\r؁Ao =< K;{qEjG,^.s`$~f/ Ã4#ع?6˪XWݒmR! 0e k6g@yNj) =" X@gԒd i<#֐Ж+UƥtLQV93Br@z񧀻R\!a3rMuSJ+ExLia&7ZK%FU`G'޾Hǟ)g;|??g7عT([Lb:2`QhYXp'iD018J 1!#h%F& h0SAb~HB_QV)eJE.]~E,.*Eh9N8hZeS룬 1-,_U%цgooϵ9\,MQfx}EU47O"3fW6Lyo"4,u>|B0, :Z.%EP ԰zbqCy)dC-j_3W_ürBbÉ&θ4ŒaUA!c=|,jGy4ۦE,0d~FzTj-Sv;XA싚q}9uT1 U9ZU~zp =DEfJ; '7F` xSe@"ۭqM[Ygzl.{sQj:Fcs֮z+nUm;!/nүJ84jg&^ F?\0TjAv (pT(7u;$knG] X{̰Sφ'.?fkF9il)×0UД]e;w[Ж52"jȑdA0@A.̛p %زn!Yd~qfL`yͿo\?V|rٿHxݏ]Xw>< -:G=S$*W@USHS.G@X&h̶nL: mPҠ G*,6XH,͝ ! eo'7sΫ+ا΀N7p lw܂O(G5DU𯕢Ĝt=Jn)Q YˮR0J.Hqa%f]C;:,G2CF(Cd6Z1(I*$B̬ߖfˬƟKi9YB%ڻG:c) ?ЃQk6 (&ѐ^v^ ]W|Q'BmPw/囹Ϲf1s>..vtr_Qt8=a}lWU{bx[x ҏ? 71[3.ӪֳdlN7/)٤C[^ -`Of?ZUvV'} X#8/ =p9o2`>ɾAfXr`*| sa0nNjҚKXH+ؾEdO%W 1=Rouչ=?`' A(G#sr3GLR"^&!<)_ ER`-4~p@{POv Bcʹ\P5I6q퍸?x͕KT4ATzNPB @C$@E!%PX%^?#{,vJ@'D[߹Yd[O/$'rrNY5֋vqV HGΣЎ0 +&[|%\A3].ҳ(07NDFx tnw$k7;37ȉ2xc:5OS%fR;; KۄX$}G'L(gs^ ,ࣛW/zoYuyU2,NLWt^J˻#l*"GwC\r[.4+Y[%wpF;g,yl|C|(tcgdièH pM'm}2xnπ/< U+F-Y/heN/z~ކGkBVE/zv16ҨOVyЇ"a]n/ Mx,'vmǿgŨ%K.V#NnhljFK?ȐO LGBPޟ< =JJ$ڤ&jq2b< pkN7];5h .ʭR^m# ސy4̘=Hu0eՁyo~P/FsZb }`5?\4B~Ω")Qlzfʔ Std 0a]~+BMiTj=ݢ%Xy`cI-Lښ2d~G^D2nXu1ݰ̾K ;*ޯ0Ete:f;BYn6MްO)@bg}p߽L ӣ7UEcnf4/Pn0`]--Np|KC+xjifX︁q_t>u9p]4q%;.3zY'{qUi5i֭b#7d޷ύ4Z#$@G29_%CMǨ[" 0[8gv-8U.B@$fU恽(Z(QYlI'c6[ BE$o\AlM<4sgi18 e ;IdXm2PJlܦ\Vїvif:AzeGscgUVvMOiܪ ,~'{_֔4@sZC>Dm \b0ߒ\m,$꠰oF[ɞTՊỹq5uT+ / $dȸ>Njm\Ax}`AEĹA(zV'׷ ⇏TOɽ2|2\Y{iK KGZ2e p'r8+HIcYˮf4ݢzt8JuҩfU+Ճ.2|H_pAoaR-7tx}Qphnlʫ^Ġ.>_wwۖq=e(jό0nң5ξ(ҁw;.[tYsOֽ N@(cxxRbS|>imcXf<<91QFgA~XvƧ $NdIF<MNm0nֈ,$*aSD ^eMtW`didU)[Z4H&sO g 37Ff}nͥ[͌۵c/x%nU(/v9^2D=G`CSe()sAVYfL7"lbcaB8f^c?} @C;+ͰD:iV7˅Qhg{s52,uMA؆^R7/)[]Y-9bh2;Co 7y{^!9:n*ZӛG3&MfЊ[o5p=@AkW# 5Tyނ<MDyкк~2W墏lI0JY("!LZxtNXɼrL9q7ؕH\|ՃX#EڊEO>;B%s`*u&ie Q{.*ELBR/i ``;5QYWWge@rb/ką B6;ݾ|*Yɕ)d"fcԏg-L;dWَ.ywg 4czm68I ubB)] gyKDz[ͻ&2q<%i2"Xyjˠ.Mw?|Cva:r$lJ{Vu>RKS^l7":vz_S8{`oZ]$h7U/V*W6o]`cglj5#|a޲||>CycIDKLU3+^ ֌Uar ^¨p1s=Lu,Wɉ>KWwW)iXR_TEW;݅U٩K|˅V!(oԂ412ojG%J.^Fx ;CM4{d/W*r"h˷Ȯij@!+ҬdYW ?6۠I"4ֽHK<阼~!:jr5qB#ɇjs,PZVOr,|ה#jq *,p!e%J$3+|4 ͦз?l'pqnϧzE޴Bpԫ瞃@-.bv_^~uq5'/HZ/OWdO}L 0kZ\+*#k):8A&#QS?V4jIWpGG#d|cΙAAՋ\z!Y:&T0#h3ȯWRuSXM` #Zz]u}YLbK'B} CRiPF$u ma Jd͐p+ 2FӼ~ym^3^{& cSzP1 S;VF,Es 泀PHZoFGޱM3C1ŏOΥvH_XW5[؉7=O6F %tHDcoml;.Õ&7P):zݾG"bGn:MT&J+=@X_tk=:ĐJ_~*Z}T(ÅMǴ0uNZJA@T ŴWp5[S1ym)EYzp RnWA}Ž2:_qy{g0dd֔$I筢M_F?YC'Ώy.19ylhQOu{pޤ3k)1"RaatK]6rsqT4V!g,Xiwu*´ZzEq#0.8e&h@sD R as:YWaDYxAx[+އxY1fŔ,\P˃Y0u s :LXdi-mir}t˂ZCcN!ЉY+fN= / 3 -//yIj9qxCX7Ĺo$G: >)Zֵ2P;p־}\JÿUG0;0Jvx-?JQU&7sv=<9V$43'Z* Ireço]p.X%#vVdmV.Y ꀒo8c+:ڭ}L$)ڇ9#OjUks {-ݺ xŌ$u䠌E~氃HtKYۍӀY y8v_iՓ@!zӎuo"嘩v.>?*؎G橙bL{M 13@6K;. ~`<]AlQ{JL$!u!돭WCns7O?MG$RKR4+<گDs!tу i xL*KVtk9smLGnG)J^s("H*(K32&N`C!qرf+yFŁn;Qn9gns[~O6:?̶YҞeR,(PS y-o5!3lpKh੖ ȞG3O)(C_OVݢ&rf!"dߪ I 9 |хh.W[Asv0 PHVt&fuhͲ5W5p"*L=*m:ДK)=A5jTB=juQi\z4*Qwfw HAx9-ZX&'B.B*R;*0܌gne<#t9JKs-u.핏Kɹ&]ǣ?gWtq (K|.)/`٩#S_b=uP'rbg>y[H \\'{E.Oư1a3wbCc҃[HP:5AP׵E*q / R&H\=T,ބL1Ӕ )a,_Ԕwޟ^U N8!`o]}Q'ͺdWZ?|A Ϲ7Rz ?P6`_ﳡפwXt)Y_U0ICZ%-J]b_huڎyd,k L7u&>P0"!I9{$Ww7-Ny9a><_;t @\ݔQpC41$ifц| j8-"LgF%ZղC,6=o?H4{|8]&lh1 GΘZsB[>vR ć*(W=.},xR LJZ!䱯w~ROojٷH9~6*[[h.m.ϲ=8`(C?!@>7gc,ļę3όϝsG* Xc=3AAAEK)PαԶ$3lpc|MgeɤDL}z_sw/?ڧG30>bTrUf!g-mo!>8aR74\jH--G"DvPV#E0+uP|u~-l93)`)?5U -0y=2';gh.1EA1&]vЃM12#fd5dj!Y::X}7P2GLO([m3:(LMfKNPԗ+JG̓<s[≑Kje sMy ]O΅n h$A!\UYjNW:3 f6\F=!aoY^yBGEBRBp s1'?n "s_˗(U/oG#NF$-w7D=*oQ%CghoQeC.B;@==ka,롒'<;)π  ER% U@}14.مq}d&x.D:0Cn$;_e\ǵ6 f4Qd;ϟTW8 !VnvȈhX)KypKa>4M{+C'ⶣ 6~>wq}=_Xr\ R$Dm؋ N&cboE/ Cyi!4m)iYBeHHg8K 7ru _*!jgQxHY$yzQ`F[FT>C^e2A#ԓ*ՆS(j69G/Zյ[ =xPLl?-rze~6Vǰ7,дmRr2{f͐(΀1"z%5xFkr 7Sz](i՛yVWM *c}.&rԥ_0[ Ӭg#Wv¿<VZ봚wyAn+B@tIRoa8T= hTM-7oal~uΉS+/hpgI@ M^'@&0H`l Y-FhH]5aoOGdHᗕs6h<+6|AY]@a (ЅmVev6~qR+VD[k 8N3$K=chAE*V](_ij+v-`72ex`uylkʎ3/9>{Rm ]E;#TJB:ˀcBDrqY[ĴC CǾc/Wy=l%!TI4fB,XZ) ةG|d<[%b0|w6VPlF/+\>rd,tCCgW`:K'& 24b?`P嚘~MԽ8=c!.Fl |Nk!>9pP"ɏrM zlװ`kJ xˁRrHqa];Og~' Uge9e{ w,sXP NJ٭HA3<V#E4 LH]%8d]Z4=rhlH|{qNuqUYKcv';lAPpx੊ \2etNõ7*{ ,k)ySJ_X椠ԡgv2?f&6 X)QlнX[I+#`Cm-PlKZaPdv4Ї'H\C| fk\ɬr W.%N 7[gK>4$gޭ/x:B@a#-ʞB?]Z3P{Y*9ڱ0$Ɨ^jՕUoB=6?l`2,z,Rs7O܈➬9W6l Ӄ ozn]!a֚M/vQ[h.i=uOA/n$|}J0N=bk}VJy;p4ۅkE& +n b#,+wwfSOZ]pmD<:G59]Qj4ul -6P i,QxHN\4]™}EeD $NG@ѥ#=ŞD&S&:q`ռ*Aj-S~X%A=D?LWv5POŏyx%'w@j'e sNk$|ߴA[|dhj.cO]5#q,|O!?? Ƶb >@yZ >(Fz{w:n_QadXUW,>&(Ғܒ6~h 4 HMa&dIZz#@ 2$?a%סKiVl#>m#[[YbWPGNVj,e`4$7ftPťuޛO +ypA@7!O- 1 d#ԜFm2PTw(TwGpG Sإndp+#$P%V>vu0WDXW 4#+qPny 0uIuCT/2y2Ssm!ܛ*;|BGyCH8dKߔP/TQj/}\y%v:\FRKfeW}XL|2p$Ok 1ڸKR/oCC^vķiϹOZf / 3%@wǸȠ/HHyYֳbO#H}-|<6X$F ֬YXALbFFnͭ"񪢳 (Mu-FE]*kiYe#lD,I; A#-Ld@I‹詽؍"L~ݍs|q643 T.<ǁҤ ׳6+1[ NfnRb³-B,zb|f!cyYĚ`Mݍ5el (qHJj6~jOnZ^}*70Nr%qt딝^TEyOBa9Nh*7:C_FmS.(42?g^Y3]rnS5xyH"jF2dـ4Y3KhC ?AGIVq6hd$.=!3 QK8#ЮQ*C_KWlX95u 9}V a3[C8i{)`ک]JV0YO5 l*,=-ӧ=R G(b_~ڵ6 PXْ̜Uٻgd cEMvb|*+҂/ZCSy7O"JMsv^o8 22hPw89]bZc~BFs}607f[BC[tQizWtQPU]r59`KS#ST׮p0"vT7 ΆEu`^ @AB"-TCƢj_!7L/d4g:FDw2>ҙv?#)`Eifh2\TH]]Q8l_+ly.0hS9Ԍ#`w;gWU2o_>E"|!6[`EbQ(2hn`i2yxuDh oj/1#dI 9m^qH^73f#5B3lLGHHD#/RY'hcefT*>U8 {aeZ &!!m{Ԗz4tY~iTv7 ""I<֣`LIXR/j`8dOb0ȷD8ͅ`<@}[a*\xf\ N7{)9b97O{nQܘ6<@^Dža.U~\qo((r)B=%G;#}$+P$J/8<)S_-@eFcUG2W#bƌE~j7%_2ivNC\0@X5ҢsltD"^ߗR)^䬨[ \.ULVu5\sV I[\~7VG-A v_F `K;>ʊ={j Cia~fMoly@%"oԁ^c@>_Jm)0.wʒ/OU%]G =oV2veag`|C-M$$n|0ޖS!.Xy,+-7*Yz0&gR)6ƅ?>A(lk|w$O|F<bb6 0( wg(O<~@>A6.-9mÇ/8[Ga[ytlav`׺QO^*5&-M|ѵ͎tZAi1g,u u㞙M"Wc{F+xN@1# 5RM2|F#ͽ",&-#!EMSvĴ*Z1!F9p}w |T څܩc#Kg)Z_G`55Rz܉ћoR\pЕHRvd PF%zl|]ei9š#^V%qI̘1h..%w|sXHU]@Uߘe̦:N=pV-͐ZD_[_V{LdЛ98T~>lW+!i-ƵmʜQ$CGj:Jxdd.D꯷TjQ1BOG_j/w:4c1U^mu4U*1eyb>U\U_m3RNpXr%߷L%1wLƮ?m]0u媨 9u *13T TTZT#wo|Catn٪]YzJID}+_M}@ew|ŠBwHYǜ](#E* ܭ9tԎF.Y2P8t:V0> Jbmpܧd2FNқrJBF$Ç"vp@MTB:ge@wC硖ҏETsirb[sڹ.(#yBOeQ3iEh:hn9C->v!Zq~;@*m1HFn+*H R(Ku]V=Ԫ˿)u_ !C}%ۍԣkɾZ%rj3|8?~ {Z4KB!YQbX8nE3!7`j+b`>Wz~Q#Vw{fߨ)tQ~>уz ӆ?ŞqaYSg7zWᅕp@.l V*>i޸ gڇ) ] WLDb\% $ľ"BdWCz:OCa=/@+/9g25`cGA˽e9kfb;ϕ#2[ !%oHuK1e;b s5#lyW~jUUضn܉e 8%\VW./؝)۽p{ktWDSZ:=:]Y;F=&jiYSYukFij_^ȲQ\":yt\܇m۞g˂y&sƂxQkG1cR_`w hP}h.Lں>ҟH3Sh^.J.ہ@EH}x":Q#eOHOXV{XJA "DǖUz2%y ]_@qi1FV>\q}TO>|[ǝ'5E/ @kݫi?@ ~̡BtL1'bĮI1l5|%pߨ>SRD˲ %xL19Q֕Es,Bت[/|^\"4Y:M.7a37;``Ck.ŝjLsZtǐaȡc?Fu֐o&W1SR=K.5&fY%mf(u޻L#y|V~Aқ_a'o8Y> wG9nBm7qr<*Xب{X[8_Ԫylt -x>ޚH_V(Zq6\#y4$RM|jpEwmZ'FBLz"%`f}U~Z·x1#>lډ`lZ@5Q$TZ^ u+0ݠ, G'Jk;}ա.z2 dgvb @N-=f<[UQ^fFS~XP+`k7.h;i]fyv#ўSAȅ>^<=dtrtvٲ.i*Z Յrt] ug d'H`Jw|Ѡj̍7 am bdj.ur 19mOT^Har΂xLCxԬdmJA2x'!ΘtjNbY|sՠk7'OH?ݡL׼1M$vI!@`1,q ?Ol,bCޡېn}aBz]YuG׀VTU͸P% Q6cW%TmVөC 1Fd ϽFVVl19,ጆĀG8`X._*qM2|H'pp}g?R.!=ؐV 3(,02~MnCS*ANF8ŴY\sb#57ǭ[RxG8vօ>o[Rdet[qjTŠx㢶i7*M$7Nlk\4ocF:QF!3HSr+q-;N%]&aCt^/Rh g"]qYTu]8kعkhpT0k;Ա5b'*A2m*WV/cQ`آ"zWZi3\Ef9_#ٮ8xxtg2%A@Q*E]CcLjs0]dͫTG_5[L2U%Gr4hwn'EdXM1 L8HR2 di[`WK;n2– {G[Tz,Cpn=Z9U_;Z2;Znd/u)2GD Ԗ"~3faw^B/|ګuÕY騶i}LJ)!Flkܹbc!A,t̷J~!86ȞMbK 'Y1ۈUڱE#{>㛯oh#J8rS#; T*XPn(S͉6~v"jq}Omuw%9BY.ϕ,t8R@-~71t0Piv4>zq_CVv-^%6浿m+aJ.߫?/j̱DR9  IZܒ7._|geau--1\@Ql omI2:[Rmb0_ K$u@F7WR#=]YxDŽt&^FlWcաfmeX5IygsQgZ/ .mP5b!'{:[q̈Gr4zfmM)anQ@~(apG^ni!VkSHgcyr>X fW;}"hX (6QLz7H:mhͼmGeus3h5XvL4#!Ee!EJԮiR$p7cG#_;,= ܬγ#aU3t0ݼx&m[zoTy̾<1$ #OSk9~e|W'\K((uIT4%uN񰟙ݟﻹcX; ZͧD^&MpXE| 'RRxt, 3pI[]wfsϙ-ss5Ȏ~?Qcj).NM$Ԕ0׼-Kv@^& idnBhgf5 X˲DdžQ0q r_.$)tr1Y\{ Cz#5SS&d}m[`)~$;Ϛ52!{&/_tˢ0RNu"VZALܪժU>{YKsYSQ XlEEd%S%Փ0&d.ZjC.VZG>Q'8|epGr o*qDPPOIu],νELrI؊p!5<ˡLu r[vdvWRs5xtsbd}Q&DW޼AŚ$)=2,\C\ ɑU%C>_D$<\^%)[' :/w*-F,D_vVi٨azqDׅx{.d=a _`ݣmuظ|5K\TzO?L%6H0&{5(Kwq$◊1;t 4W*ZY8\Eʁ k|?hsD; WV,Y9t^޸6#ߗKW0װ("@ZD;؟gu~gﳡڑkF}㖭|Wl>rgmM5 ōM68EęD[5-xv$s]"fZFlK@}>{-wAS&Ӿe KTF; mt{a61~M^3$ŴJWelg<1C1aܬ.kj,f{/7:䞣S6zȽyS*ey c6'a_; ;pSgm +3%ٟ{|j,B.$O0$_35oK#âzȄ]V3[`A_1"-Mȭ2׬F\ʍU5 W!έ8"{q1V@xc?X&<1qvq<A擘0Dg77b9:U |Sk Q&5 ~v[7!N(;KL*ɝtm6F,= .:7M$0t IOb╥C&q7U]8 EsbhԈ=nal: /d0$cI>l5ũ-7snP1Ċ":?@4ng)h',r Hՙ ` 7,}{AkQUJE~*KfkC`Lr%9MUBdžui@$ıYbюb9S~uaf 3tUZ() f9[s5< ݽU[ðP8I1D"Y|-(jbE06p$)AAWF .n[cTA/XɯHM}x..4D Yd $0J E/;4]OڈzI#]?ff2)CjJ>֑~ܡ䜥]:K}f jj9n[iFs1 KG^э~pēp]AYj Pu'ky+ K™ugBO=gf>5Rkg&63~5Kf銮>;/j<%Ə j޾o['c XƦm#5A2őAUZ.6uvXFHw:0k:Y wΚ@m%YaQ CU*\l@$ɋgT/ RBc^eE4K3qN S o  kf`kt(V∸m4o7[Ke-K!G* kT׋3$nB]emتG&lOLw3>a{"GUϫz9%9RvA'v7b~W@.,\y9*7 A{_< D8dU9+56Ur+ 73gG4A%&C iDrɋe%%PH&Fj>Ϛ7F]ucD6j 5@ՀFk%$nH.ۤɡD f -^\~3 `f͠3 ޶Fp@)u#֔vfú':-5pn;p|iB.@pBWG[&2m?Hߤ o1N@1} 0эFz 0$S{4j;:옯_ S#h[\k3P)!&ܪPWfxGejXr{?ł"n0uRu$6r ep)o_ ݢSAj><ڎjR lAT^XR׊g.ezE!T9o^v/] +myK 3<1xn31^a 継h8#UK'Etxe7+I_['L7ZV d3=l2|Xm?> Ē@oy";a|&z4+j,80}UO4:tvFꚛ>\r]\2z:3r̠.՛Oȏv蘨LCh-l…ݖ.(B4m|m'P^Һrc _5ZD噛󵨠#2q1dP3P=OD)PXŒh!|\k t;4YXjfX񯏧VW,as\} xkޕ^ S 7PR GgEޗ-e Gc[5[9/gN\Gɪp"kSR9,o)cGNh]Dv{tĝ3Lu0& JV,k%鞣z@09Fx^H >],"Z?;23pz=t1o4 v ѩz>,M>ڍ]鍩їh]߷7)ʉe\w 4$ _/X8w}Gb?ʺIq+,4:3C7/Z6ɬ ڄF6aW([0u,8VgF0MC6 p\rO: BlA#>lRԷR,)K?8e%2w74 YmsgqH\tN}q#f&+ -;]gq,A e c~W< WGYYQsXZ,~=؏Cf@@+ o*&a7ȸA'' GO9͑5L!tC-M ƴA,Y!/$Kנpz}'z?ؼ,+ڄ߳|xY/d ǖQ\ u 2}Djْsޜդ814-Rmz^oVb2]7W:ڕHs3*£ UNo-;&)L?VM$%}Kr8i?Jxٶ^Dhq=>R(N~#/>!i,vΩ:bHuK%ӼX X> įRzD;ʫO)rt0 \-M$B )U]kܿ:y.5u00o(ㄷ8 E5 3dG*>zrqbe@-Atzgk꠱léV]n Csf^R2H\%#ZR (>HboP(y5z}h_{nV܇ 豞`8v1G ~Rf<@{E %ce/ሬP.:ɟkT^N|+DI$.0#2WkЊ~a(QyO7:@6#us2MBfGRb4Ay~Hy `XťY*p&kߝ@o\@MV`> Pab!Ҭ}ncZ6AHì99NoD z!ټ Yh+W#я!Hi}>ؘdc_GV?g6480Zs胧ќ[ 9a*+5:k+YU5S`"Qms3P")2,XyDb\2AC%\z SWNO*G{::"m@%0 &jÐP q#7|_Gk*.[$WìwFo}+ y30'iӭ̫*Ɩ <6FpVԵ =oΉQ\l]8utr3Wfu\oj)&++%H`3 =O:{@\Ġg"NQjX8k߿`:c钬V*Kw2O+=٠DRkrb5Ùnv_ P~mp'1gV88/k9+8w2\VkW:LI#I_7&z. pmNeX(WʎT Tދ¼WDq@F{u8]m Y@HDXX- `%┃C Fm߂X=E cMw`nM7M/"wpN奄6 Rujhߦ5Ykk}>2r VnN]C1{J!HyKi/bhNߝ3z>UX/ntdtXKѧ|r)vR*m^y!'Pz]J! Zܕ&-)<W( KmW&IرֽsUH&7] :%0@?wǧBʴx M;St ;8[-L{ bbAd| @%VE# ɧ^^!^>[%<ֿ!^aLy -i8N\5}#vjrm-OǠAnbILWjKm,b؍m,'0.j<@t UdHT׀}j1t jK6nztmE5c˓>T&h7vACv:Ή0 ҩFn֩ eiP<&Ɵ$qrJ0WcBLV*̈nnBNcx[OYTrw 3g@nՎkeү۱dqE_@TWR:s NѥcdhvƂi q* E]LRmiEjJ E__h2)ڑsl|o^cDDk=9-51i.VzqE0OI@7`2k d׳$i(ÿV3g#L.3AII g\7paɞg-T_pcsV?*_B5(;ђjc0WuMNeGIuZiX:Z%t7D5` )!6ؗJ' pQ(c𼅘a;ܘFf\vKrsKz^5&#.]#z]' DBSF|Akiw4մ'TF3͚:| EPO1^xRcpD-FZQI&$FOpܪd Ar6Ix Vu;$tRựLr sknAFI(.kdK 4|#W]dca&o샃W`܇'xG(6&"ѡMUzfS:5vV^+SF@233 rz9Zq1gjQPc{f )&0n=rp92D":'3oqi Q)ř=s2 %Rع :]?qAy Dhu)n> -*d/X)~=C C^;JCzBȃS_ĝ^`͝Ioטˊn+gЂpF\f2◘^l9r3f?U[Km6K,D;bwE8U@j%692C&}C Wvz' 0G|OMɈd%RaBe?#X %iJn=!gIsK \Tdv{;ֱB>N㻊CNQfUsn>[# {8DE8Ao_Y.WW7XT1q ?T߻tޙ/SZ}|SW69҈h{*AII~h^(IkI93auZI|l͖d[9 V.dY1Gc&ntLb#Bx3wvܮ?[rWf:h?ǏģhB]U8YN9,w>%}9=ku3:l~0tid7k=y TqQ6UwgHdC裻*<۵ly c&hqN XdS =B@y4dab:8aUTb E/NH -X}ho+kpدb)bn6v.:CONA/3C=Ioh#3<@`^BA Vt3&mc5RI(mRFuY7wVQ.Eo B5?Pe!Yi#MPn[VfQa'+.e WˊWNg'eg|Z]P dIv~S2HN ҊSMlzзkotc$uЛt'p}5 68j*h?."d]@'~10u#BA7='tmTAk9Qa)xⰾVy9х h~%]2R<h^773xavCus_ ~'t=bϣ"5YE+\E gӺX?rtV2+f>,{[k6 A*fᩜm s,R4. r}>Zۓn4?*`&(L.X|ΓgTlNѽ([v9F=a`6伡3 שQ픚NZmF y 9 ײ=bڈL=x6E(to/!+VT1Nߋ&qQ!9t,FwyMӭōS_ ]@ ߒQ8 9jkp8𵮶13d`,(c#Ja&h$1Ekm{m|vW'2;Ȭ*Pn*}7 K^H'[A~$'΍)!BHLE7ِS a(bAܵ!k(Ǵ~3Oqΰ= @=f?#™}u*RwQs{eD 1;BɠVOT.&W"U.zGO(Mѻ1->7KK+}X3jS6hJǸxqd?fPgFE+*B4W8P?wCtmner srgnq ޝ8ey$??SgI0jG-)b]®<_kyQ,L)u_uXc'HU}闚chߘ> x6pE|iZ I7n)B1$G֦GJ6[<FH0pΦM }jH ּ5SyqQ 7Uf~O ;J^5Cl$mmHͲ7!' /zdXpX,i؟|Eޡ4{nb̓a{`E83R##;n(ӯ/{k/m7(=)_b3W[K,}w?#?0q-E#@9+bVZ1+}K P`[` ȸ]85hӕ[.gqYשׁ.T|BFg;pָNF輭eT)Z8\Wiu6ԷYA0nP8V6mzjF\El[C^Z{,#_F#_z2o>x%1s }l.VU@Zc{!*͹>SkN2miwGz@a`hX)<<h:_\ U&bkָfXjBqs_`f 2_X\CN4` 11 nE! a8p8U NM[׻ηfhO-C;bL\!$KY`=Moܠ]6UrQvX*ۡ!:x@CFO|8lxF1BpɽyMbcNqDz 'H Wc ĆdTܫ/ӣrVқМ3F;Zw2qCrj0La^QQ) `YIl9"W;}igGyF֗7,}y˟kA=^5wLv*eRL5F"E:*]D5'zv 4$rxXktz(I7 4#Cݎ8/$ Y]4QxNj*ݢ,}{k9ì>DQh(GMRU&sUC L/EV2CH?&%M @8"HG4@,3a``ew$R N9o~`{Y\H.A0- g|iuG~3PʸUt9NKZM2^[sH"_q'6VJK;mXX^{%2 )P^},d|15*fxF LQJLZ$Mj%76M esԱ4Log|!֌('SomS):R8PA:oZAntһ^b9lӣM)Cc=Sҭ'!n1:N_\3~ eqy=Ú;rc'F5 $?:˃#ydptA] -(i;=}h-)'H 2hf;ehUП,l6SZN͔7\Kh&2ԑo|CեcW~zn&!zO43Fv)Hn;96Uⲧ[m0wp GȦˊ٥HYuҌ+E@| MX}#B0'n}]/+ l~Z(.-~ gG'EqW3?Ny );=N0'b!9Tߍ7TJb*,&,!8w^isD1x0ziv^@Av=`@Q?D­awfV<g fI+ʾW>d,pPrXs{Q^H\"/#:4uq]0R&1ˀV˘EK *Zz^痈en=-}h)\#D^8sPxvJG>(?V#~\v 0;}a| ^4b+29qzwE<[UjCDS#@[7h)7X~\9jV8=A-icy@! r #;ȫ bbh?;4>a!ja.FRG~6G\zGTU`(GHI ݿHa-PYAkb/@Ibkqhv3"^ϟ fD %{7Z*!Y&@YVT.uQ _0X(<0Z} E6$Q1.~›'&.34K^pg3ҕ-zff+>C/ g =Zi@ j$69 Y0uF*<+TmLay:ԮcOQeȧxerA~Zjv5i{Y/&*(ǣz^pU%ق_~Wow}jFEQ5[~ߋF wL-9W̑n9RA\ e^r@'dd%ҷŊmsgiȄ7_?cLi^_lv /VCª9J$1Z3vCP_|:3*KiAS SqHvbNd~f%< ,͎-Xi$AxG gaHxdE2u=[b7`"[(KU#Ǜ ?0D?H~vF luM~Լ'/lsNIMlw c *sM-~  mݼ60`=BOϙz!C^AFڧmJWR*a6r8U| I7f$ c5o]iR6/rpsӗO~!G%‹=کLjqI^uQ:L`R]e&g:@*cZ qӗG+̋ɬaKУ† *<rZZgIdJ4i8G޻Jj >"E >YD(\z#Pj'eOڧ--}y#i4NyQКtaWKThKEd= u%.C][ٔaɅ֥b9̖04*'ZG))N&hZY.bQ, Ė┷սkD^(j.Y>TVA,^n H8#Hb:i7fQJ)_B4 R<'n.^sxQ %z+|MN>=CeSc 7mF`ns͒ /Dxlۯ9ũNX{FB>YNm KhՌ9̞ ˒աv!=UU?om-W,QJhSr^F@sDgz.,|K%yYQO8XCЀv7&:dzȒvRa[Pbݾ ڹf7 D!*8xQ hru[6m܅%'åMowDP^HTAL˩ϙ9[>\f~- 2&5}D[X=ό_B?_fZ(l݆E]߃S޾%¼-dPc/9 MQ`%7,v`FYMP^EV~Oro*缿fPПC| Rndr("]UY}u5Qw5<*j$gQ)y$%vf:OPE˵PحpjVVx w2= ms櫁bxa ۟welz)DR饱4-s]:>{ZTČ,N9_A@x]{=J6)S礊7rGLFYnI ?v>*\OՖ|Y `U7{-'d:rn*V2Ímޡ͗`[|qFW䧩fEyL1G;=M#Qm!El+5Ց~![ sU"F /ۤ5atrATs2A#3"9;?v /rcn| E^:%^^(OcɤѝƗHE<`z/DlwsYGh0/Zzk-3&ޞ8x!G67DI&lL}.{ fo^~[l@dɻ-zRV%,ָѫw{ nb)PL|f}6 22h0j:=$1W tmJgىxx$j<⇬Y*==z@CNDWh_HK!/I$0ѲQX&9KlڨkJp[*UZ*>)67h!½˰V$J+ăS8~Cȫ$WLt(!rtu`kNOGh;t)ϕ)O;`wwgTJ;hK376p_2uNz,,e6]>wӡU1ͶH^h':xp Qfh׳JtĊ;a ol"c9/JɲpyP C[Xu;nv_&4} Rmު`]WKK8&rv2~T2Z ZK4\ d^3ɇ¶v9؟ ћ1.ȃi(7jQQp^Cĭ#yIWv<)ܞNa A.)糅pZ>k P_%?xB1,9jXH%tG]QeЯ3-GHzjCBsM4|OnY={(]N 9=h>7rӔSZ蟀)&0{cq7~PҊ?MSh gq=lQvg{ /kyG faL>^.5U5:?n)Bm?.H]ID* 3SI2 7@\>+.'sѶma'lyo[B[=G~ۡfUxQL᠆d/`K=i`{BE/&kz\6f?̓U4q5*/|PLU}X??@.dK}DZԭ*ERĵKEK] AiQo}aMQA:r( &`W4w5.}. 8tG3,q*E=˶$;^x#:QWP6-C𓡌|usO`UX%/_}WGjHfr|jM?@ b؍"2LHXNlbH4` T S㸒 .],ȁ@q.q!drD_FGn=A d1JA2`,"ySc ;8,vؐ EB.YV^pZM?ՅI\ <%4v;:ǭŁ ?͛$&&@uKn"vR8j\ƛSMA4.d:Ȩz Y{z[:ņ-H2U V?wnR"8 7>D)M~C-Y-s Řhmp}WX7I$*^L9Y{cзiZF& Ճ/}m|Ewnŏ ATZ;a8 +&;kDB)̣lhP~IZ[DkD`dNyЋxrQ-  }BZBthYs nxWGf(G亅zӷ>069߹tQN#,kC|K͕1J L[mQZS@c{,U1O'G_ ~#! ק,b}P!Wk(7Ǘ$@/F5;$!FIN#E_⑅/d)c5}?R'Ti0.^@2n/$hkG`kmimBr$&Ԕnzx{pZT#A_!d J\AP2 i"xaXl=erDL\nßEAZoó< %%,7@. ]^y$rDz KZul]暘]==]Rc~A$Q)/q˗&GVL ,0r~G9~;C^=ګ&46[d~G#gP^|x{/; o]WwT4XI"]1cH/dh: 2X!69')5_gqR$gFsw=WD; LA$*^䩿Ɂ 55A3 \k7-l^Ն_q2OX]< Yhžh&{2~ غL^'W~8O8dX̬.O= , j]Kn/"^یsfxo6[cOɩzl4m9+S~JMFpPf}GWp4yJN'6NΥ-c,aɲO ^N÷] DVƆ%V ?3 =ޣc91·DﮑOqRyij.^䓭lKԊGpsIǍT,{JDٜЬqsMbm(g~STcbd$rxGU׼ aѠ͛} 6(%62C}fWRjf9SgG`+1?=lb"<# ix! qX,~trJ)y완~6<7vfBrE-{`1Mh撚1Ѧ"* BwhZ)('&&Mݢa[U˚O(~$^yS~ Rvٮ*nν#}G@ZOE = n ǃԯ*-\#ע @b[վEWÉP: /^ 21O蜑P] ;(n +)ܫ 6dj(g ҈m%G%mhh8`[]#X0 S%/N)w f f^ Ipk\Ķt)LZӘg*zطOrK{_{ލEނ~w Qs E7 3Cy}ImD[~7g>Cj1 6 xX W`PZ>WF8?A^ؤjR{˞9F6{,iR[#~mF/d <6)r{}4+! ho<~B1Nl WD(aH?|^V=6І~.aExg5= ҄3<<3jFY[Z c7iz:}bapV)C"kL&Ghƒލk\)b&B]gNkX2gDoSGi5=?<+Wv͆:o{.)v^^15ڠ[#y[-_UI ;HF cn@ʥ@;ۗء)6c`/)gdBps'ʓpz8?oEIW ;kVWTĹgGT4z EMLWָp T%WIuq/4-xl3ҞIVpn/^!"&r`L 3mh* = .`mUq$dhaj;9y!A:I>`EKYf|6I`Dezm ["8}CgJml8~ و?B%,UrRT۶GYʉhkՀD„HLds7rݗr*@6́WҺ߽V):ЈzK[J}^D< QIopWSĊ-::#?1y,jFD,q/$N^{16Ԏc'YD?#/vRŞ>ݿJho 7Hin@"w~!k&qLj$0zIvw8*hWW! {iIYӛ UnUE$ n?uHz|uM!dIe'&';VKQ4.1LD*:1Q|!erBJe½5`2dEv556Îԟ9FTnW䨷HDrVkƶ,(hjV4"7QT(]COݻ֦x ey=3%COC3w ^zWK*c3MoB-4wE@EE%우/̇6WzjٸorU* HZ]zu;+/1N!04԰1 X6;≮!͂hhX )3590R~}:ڲ}iG,x:|:v-Ul0@3CAg0sm0,~XYեC&1>uWJR#qcͻ5TmªEaO&uT)ѰfAaF[%?'kv5~?|vf\#$ J};!❶q 9Yw'kM++6]#ntv F^!_|2 4|9P|4eY2w{@x+R4/OfV^ܬKi{Yjf?DB \/}hx %ۿa k !Ibbh[`qԢ&ܽo{M ɶ ۍ)84V$ٳ"G4Yޙh ԋl:˸TA,:#|71K"7ޫ@JTG«,ٳWdBpNVH-]!}OjrA'Z]bOb;o͙íOs_kZ3%9/bE+Dd裵'BK0),Gz,hiA]Ku$cԊx?687SJiXO"$UқnLtjoz&ՙd# nu;XBXέ;A!P rlaDτ쓟">2]dqΨZiV3 :qeGoGxdǠ oaң5b?#j~2<&0ޏLz#yq L =I2pZ +]g{C9r#_(a1Ey e@98K9L^6JU6&[TiɳV ]+P1٨-z,SL|Iu"b+efx<fr$X9gpW>o4a(9vCG|!8PkɯY]!-Gb5  \<xNr*L`/FkHqpPee p-PivS h]LZ,VTDBOwNhhl3Vs9ߕjL1"o19jˎ}<14m&XUV&4_Ƿ*LEbؔM[8kvtZ6..tY*zsZCn%h{ѽ3 F :#@0!kŲlrqj<=tANs8F2yA%"!'t3&7.|`jD[@5MFKzI/-#$J",|4NVHDg>y]>{!Uś ihʍt~H*9%.=2cIʚ=rn/m;mi7..D=pQxJ׹jtL@?kMLzV5"Es6F T: Z:|CǸSSQ[ 5$NYDR Qy-FV> wEwnl\#}jZR1Ƨ"X5/J՞=~ZWA,N(׈[2 r\뾔Ѳͭ]XJ5E m?Ŕ*aJLө1D+p;M*rl7a T0pCS!Ro݁|X竷+f l/:+oa඘.L$H5ٹ {L]r{(6qt;-1Sjj澙X!Y#X|@qx#Hf]j'4=SWn!Zg-OKmxlf 2q<LϿ :frHJ-V: @=%y #{s/F,=ө'V2l&6Er {7E{q4xJ8 i#e82z4#nSb"^U¨fFNC6Atf,'TfK Z,?eGY#h,~j˼J/Az)-#ZͥW%"f@3ɍ /l M#iZk=j㓠\$l-_# < oݳmhw.6"iFa¬"NkQk$̦8͘DY gv\t GMIYE NBA!A#~O)Ԉod* yd[.*>5Ĩ}!iPIvoFo-ⱀȯe*@Mg3Pk}V+7 Q]p Tm;Sn)lW3п MW27hL7Xz1 NᆘٔxOUZ4pa~ ;#]V(kPdwhW+(=4"SşOqE[5)v6jJ:n'u~ gY' kU6VVQ $b|/`VBڛa) J9c;^o%7/w0w QR]waX ߯, "JUg$@+/B\O?~R+w.18Fiv Әa MhT112!%!,T _B$:Wr"Œ q ˘߭壐C5g=C_~+k#+`4)r+v5Y!> D|I,# P5g>yj_p0 ^2_H#hH`aI:Z![{y? C'HRSsMX M689HT'%}YU֖|؋JBX36?ZAZ!cU=OǒEԉ!at 6(Wo&FI:R(3E;/^k` >-J3|٠jh0MX?h fPe Χlq1AnIw+3gl >헠02Xm-ō nz /3yyJQVO]LR?(Z%Bq.rF ҬmnA]jT; 0}/OApvɱ|S;in0?mUNz"idSk~܉(8O ej%W;RnuTv"v};no1 R q2膪R' $hm<ǰZ/S#ZQV"ȚxSLXSgaa ť |d"}ie!vNCClW6sȤ=.!Bv*꩜d{IΪXceL̝CF,DAP"Wh ĂX|ΒT;u)lVD;m#HlUq.?yBʾEQ [^SE}؍x,%U}]eP)Uv)BU6meϗh7Rvi]%v;c8),Glb+U G]М_^tRLc(B6ߊM"dDgg*vG}k61cuUB6,_U{ TxQNN&nZYoMHBeY 'XJbtFH絭6}6}>˺k&LSdNJ4mK!_deay v(ϣ6/0gr|E r7uM-tXw>n:|:Ked~8A.+ l '[Ni'>s 4Hpn~aFȽWsd=z5bzPZa,J%e EX&ݻ@>ذc &qX*[vx鹖uXJV遶`M5XMB; Ԏ" b,u}+{4N'6LBL[nVȯs̀VE&Iau&AȻoHԾ4ydxAګqzlyLN2^ÖC.WoTS̽!DHR ^E NjYjܵ@xZfȺuί Se2HS 1~7950Emݦ@:B?ŝ.<`7)&p) Eo%\i8q8x8ȵ8G↔Q>Ύ-'X>mm'&!!CҚ?5Weოbܘ*nQV _OVRm8l?k,L9ݹ\o eԈo:':"a7Vڀ#wD "&v{9܈7[n=" /* ~MzyՄWDj(k|f3 $.+Yw='cm³C*C]ڈ|oVAj=͇8Y.= jՅxDvyW&G}%@!&ڳlmnΎp_<_5Л .LiȶitM3A! &'1+^Z1KwuUc:J)H?%rʫRW\"c肼m.u8VUJ[Dݽ8@[*XzHpfً?ˆKL1^kͪ1ެݒ (i 5?EThyTLk]ϞWOͲ* žۭ@38룝ph5pf^{`5Re+B$9n[yYAW,\LܞIX(gB̌1?|.Dw8tgB "t Fj9O)tTH3aCDDH ?^.Ct|ܞͼʛWS5KĄjpS0^sX=lL-UQ %DУ- 9$V~ JY=Q8F-a)sݳ%K?4t0`v(jLHQ5'@ೊi,k@02/5Ȫ# {]ڱjvԣ^6m O&u3hTB*ZZ/Ukh+`";aXKO&H$e*bLͤvk8y@6n񛞑b kc;:P;V>^o Vp"џu ~KR2!ⶔ|ԣW*5X LqN:(fb9 ~n cȰÌ@lbq-|C,4.:8mp*π< hYtJebS1Jh^[:Crgv[þ%"PG}X+& cc Z„'>>1%Jx kM(AoO?m ާ11 R0b|Łv0ȘG-HO !)^i6};zЋ#m&\e*xƒ XX:]SxyjTFH<>\qHI\ !C.R{Cdhݣk/ oq_ORw/<%պu<76I(ihu X~ߋ.Z'uybk"*&c{R`RCY^AA.BL[ѽ ğL}l1k9n}xEk0 q&_zq V3HgʜICI,y"PxP([o&.F$Bn!d/c.%*`5)ESȺݦ9/z^)6q+ ቟ҫfL,)mXf>u(R(xcNrŔN` !{doؽ{[ZF}XbϚ#u[xTjuh007ШaiUc+@/4?@F HfuuʾPu -וEoZo D}_Ƅ\8ۍ`PD:mAèIP7FM޵F$6p8R7۽?oj xֆ8 MЪ0b.>nB) ?N ogM U# 0[qBGqj}gh_ISA2pS۴sc>d;u򾣢ŀx>yB~,k+eU?;VSB(c]tqS^n[1r:a(x}VT`M{|"_8TLLu>Vs}%JR|5>k}0O膸\̿?½i٘`LwJ|@ad.Nm֖yfbq>`&E*#O-S6[ 8ox"WvPFP{:m˖=:ɴ1Ztm-Sїˀ? =J\ W4gΝmU~i"#sK0g>afK痢xkx ̡ .]R>.^cs z [Ӿ 8J%2r sop `蠺uKp?nu%rmy?[(?6'؊3j`rGzLF*qda"Pm#48#$`eO.#/sy`SH0K^M܏TbeMCIyfs< ߼(ǭ:l`CZ~!UE{G#N@5tH,*JG;-=Ar=68AQ[Ta̗I7Aŏ[I@jk%x3Ev9xX*rҏr~L5>y+I\ISj7 wQ'cn[I!B&sŕIUv~,QsHt:mH4T;Sd]y;LJ&׼{ïleߟm6O=&ꩦ.~ȮMW 2=s}] !ǻJ-:sKmjӧh\Sz >@|+*1_cO;qMyה6UlG^gJsBOFh@Rw,2N N'V'+pTn~%] .ad?fL@k3HT0~'ikf>=jKBmY#n=p0y W)xzr7ŸFffX B. xZc9MŘfѸm$wDd(>SlBٿ5{/8IkS I#Llr;h,OVNfδA2=p?a>('q.(Tle7F؎XLCߍn3|sߐ`?wlH*񖎌:wb,VKVlkak!g!>BU6!_A}$dMjfբ@SdM `H]D rg-A@ȆFJ}'y_ Z:}*־;-w?\cyȿn,^5 1[=\!`b2E {f4\{%:v3lTA|pa5$}|!%%nMVͯcQ0ю.!,$I#]VK)iKa״)@Ey-zN,}MnJX;J /+?1Ln6/FL,ʢ4M=A9Afyuwi#k=5o_( J6d1_deR;aJZ=-yO#T/7[~~ 1[)u.P^Wie" (@\,DS:HV" ,1ԝq7%bPW ԄTSt2R@` *m%%ydkIoJ/O@jڂC;7$C38mÝ>ƦC"%NĿP, ;AU"Do2[j6HmB/P%%i49HJi Xq|6`YG^7Ӳ׊qIq0YYʞ4ol|.G2Sp $'{p3?( 0C}ESOB V8%ҳ { "evd3=}Umɳ o}]/ ܪdZܷv焏Xa k簿ر5x k,Nu:5җHʱ*8,tP6 *qwBT(IP3Yu[<؇(\%rް(^ T'rZ^;(=֚/=>qNI>i BO5}WDz%i|ꠚwq%h@Ek 0[$x菐7̐ Q]ZUߩ0`_WxfH6+/~v=B[/kn0 xB h~܆$vWz |;;136+Q"w:_ה4ѥyocovQ0JQr/2 #`$[7]s2KUvuQx+0T){@]&_Pˁ$WU#8nأ6H&RQvy& Zv%[0Iёd vAG|oٯⁱPWʩ(űtGt2?ZqI򗳴-_(.1A.I($x2Z(n'}O/^ưA' 5;7p#Ίo:9:Y784}0maoqGHd:jUFkZxwΧqp_oe}A6ޢija";Z-ҭ#W8 zGOb c9Ab?m?ݺtQN Q)1D׾6U YarIܗn@|3"p{䶀MN ę6{/4vj[(,i䌺/=1OuZ@Q;K >l9 [1M,tf%_K j, TkA) q?LJp ǥ5ZxŠ'nzNQ]9]Ph+wqi^ݎu-XxKsӠDqqA/#/A&PGx1mbwأSA% o4^JF@YTK@ш&Z60xl XF댨fsFCuuuO윤NSRkC1B:0$R@ >\ad ^D&i'#(9kٓUi0nE ڊ9 Re/*}"i~hL.e e}GHnx. )z{n5c:W~xh/NB4I+dc./ImqQ\ b58!x7 "eʇՁ*EGę90k`۶udh< (kzLGbC qz!1'EՃ?v6^{NdwI4fzv^4QG%v߈5lӫVgIjeW>/F3HϔV~~ b#0M"Ey2(q=Wb[Xn=l2` }/c u^~RPy rԑTtHl!6}u%s*!V:OV0ae"FVe+͸LPYnJ`Ij6T|+0'ݼUĀ%ΞuBTS$ujW4$H1eіPpiI!u ZpȂAcOcnSJg!ШZYr,(uׯ~Fdh 着}"x-D_u륪[P[&S{r#-)m%CwU5{a2h@3pm;JDta&;A'-++t_K^t ,(.qkyX<R^d H®OYu0u!L?M7 ̧|n &⤼3Vn UC|OI eVP:+nW5>$B/3{d1:a !bj^H a6lAFa;Yd;ܸٛ#(Ȫ)m"Z }Pvckڒj[r_'E >n^g}Dx(v*c3^T;v:8_iQ'5PоAhcLqnG+=yX M} >\ẋ}"r0v % \5 wDݖȘ \0X%b3z4}"c5'qŷ9nNf\k)//iH 1@bPJM|卶H tS,ӬSKlEhGjgk^Punsi@_I/Ѐ8xUst܁Y@\:zʳF:؛uA+ {K7­mFF]Id 6 >JCIH؞JX@މSo0Ċe,=rY>.1oALԘI /uq6/~8FL!N\Kةm8%{VdKW`-~ƥ)F^ ",%,.N42^KRAhs}8!8y]8iO"pPM Ǿd"!,/ ԐJi9r4>鯖9_g7ԭ^J?&f&w.2fέId,&%hIN$X2tVZX /;m\\z@zF,؄7υ >cCxc"ODZ#KrZbT2ih~]f9!ގY̏a Kd25gÂ?~^wl90oPؕF %U:\4BDTo+IgY.8h18tSvr:}OW-LJH#a;Z$nE¿]2]0hͽYʼ?ɓ/QTڷTm/B Xk/|H8"wS2yyU&R,NYBM,N~qvbS' Sb?ku*/nLT<o2Y&n6'#%\qfo4Y.i t*5\!Yj2~TTa/(?9?mr4t[gj"Η kgؼw7G1>6M!dKoNbyCCzsHD){0'}^fɳ,+4{dp$`゚_PLY/< ʕ ֶ W, % V@Ry.jC$J>1qS:Fk%N%BB&tՖN+Xq:0$*m<ߝ&ZWcrd?CCYh``!+W8':HDLrh蝜O)h,iO sm|*-(Vs=3KR6-!SV\HbiW`ޞ96ܕ#n@Q.`~9:E,ŵ ¹uB"ÖFcndCe`tUz򋺂. ڭqX+$C/9{rMx&Qtj]dp,j!,.Y/5UJ\ySXc+B Zə/ؓë\֬}!ok$L #_~4V.qk×`F3-;v2 IqŘmi2R;d g}m3ʻZ-G`sݾdc%b+iqBn& yN=-<]E@}ўrq!C쏵H'^3 jmȫ!xzUp[g.Q t1TVn1mZUi4k%@gn?eA8 K⶯Quz2[76'ʼT3"4;'ftAK9,L渥"DBa>jTdLװqFRd3D6Lox9)SSllocv4vmxe{HN-N S1Pn9g>=w_FaVX>YÙuL 'Ro禘tb8'?HC3Q6o-Th5ũ by\DAh *D8[iO(Cs GTBg?.oKa3A?y=fQ6$+~BCԩo@SP`̺q0hƵR̈́t,~Sdi [IrkJ_0u38,(ۥv%s"f5'g^c "ip5tjJ3HW@ۿtGoE>8PVbb`n0J0ȝY+iUEqG"DxINCYfNXjG;h4$٫9+%u-HR>zVGӠcA~ ̝R}nF« ;.%N1nxTn=W{Er.ގݚ j2$cuG #f)uԖ\Rgs-YK343ה+ 'do9^KَQܶ`6i4t|9vG20Wu%AUs`t_};7,c"){5qGRڐW`SL4änb;R=OQ n@IFoS [u( r ̟dL 5䮖Bћb&PX(r+Ģ5C$'H 4XI0卪oq*Ѩǝ.7g+r BaAoq[.1-? zj~@3g=sgЇ)[֨{<7AnU5 40ŠvPJVA3ELp.AXM;KM89i.imu]kU=)[Q}c77GsU]5229i\uY^L&htq#VYJ-k:I,/K"CI5` Jg] 1QeqۻAoi!w $5a}(i5 7=l~b| ߨQs}tzFF }!V|4ۥѝ㣐L٭mb'”2-wRUA,WRŒl79t YF/FQdYAHk]F{Kۯ|:撁h! 뉼xP<7A}De:h/|XfV:ӒAFw,]gWB}MЉܿ]B:mq !R0&CbъA9&SduP^S>jg".Ivi)ޓN(a8\d37iG+B:߆pSu/ emnc2UdcP_5f`]nizjfH<Ē#o_=dRp!f9=r>A6aLwvg{}l`W ͖ŌQL` ESjQeNomDvaS~<بs;}|ILIlH~1Te{:lOsZ״rdgOT;)b4Xʉ9McG2Ѕu4o9 6/Awx ? ^<h"AB>3Ddx ;/(溝Svra*yI8 6a?z'mY2)un@3}0y(k+ V4B5 w:neE03s0Y})h]4| ;R!m7Za"ɛ:4qQLh?uGͲ A/". F䖤\s8H@{{}3= &O.f[$]b,NvTntH2L- >$qA%:؊eZ9(qƒ Qz ^x[b;o0*d#y{6o-LN?">EM9M~+=ǏEޗQ&hfG8nÝҋMfBAG~BSIW ,OA;,0q(»6&75_Ы ՞eu2r1|0Iz&")xģ}ިǬTЈA{d%a3@]rGxKvrͨ->(Pyڋj+w9*oIrECjUwzRL:^{!qEj#5'k6-{+xq:O&he`Q O/x%2ġ1o:c !bM'B:M\:җZ\sp Pħ#Z6a$5'5Ŋ-+w_U:ŧ}N~-qOw֣Z~7(//k,7ܭ鹭O*N,tDQJ( L:|U1]VujnJ~:K:k[tj }厀@G̘ //<6͔?<3Ȟϥ_w%ȑڜpDIx`s֗ (`}6y?+ci O?~P-;ok-z @ASܦЮTnhL%aOvDxV1c~m26~dR,˔*nZV”/YI@KsfsaO\B2b"uV{$ :lZ_^N7\vQnW G_$~tcAVۏ#I)ُ^G=F|L¿ҿOp7$/eBjkBH%kh}\s?GozW\ Ud%c6&oPGi Z!P-)WذɈVhvduTQ8L_@&fv0AeqpW0 (򖒴JOJZ]),@Di $-mkBWPZUbqy\ s?Re4-`=+6hpXg5GImTCE1vܘ>ӺY3߹)k#$ހ,&I*c 'wؼ@/+01=|OvxbWiU.X%X>_?9^~`1oQ[̈́^[(d|{ [_  AAZFSd% ;e> R j'DW}#mAmo; ̏r`"% Är @E6eI/s6x ؤqa !x4Z `KKg+KfBN/T :GԍRj7bRbU/_!KmǼT06DžΦd U=EkM'^X+F_z,H xp`R88wDni淉٪ qEalY(?i]0 ȹH쏂 7ӫ!l7BN4B~[DV| 36-¸v_v `醅S?N\`@iuLTWj#+gtcc #*tiD yu!:\R9r)DpsX{xr3Q% 4¼vA"#?AwuxWO|&zYf>ǼgsV>S9\?Rև=*K/7sȟCQAzM:/S 2k%+UOrutD(yCQ;Z}qV/xWb)2[׻9g߆67jc⠫oʜs>mo>Z;8ҕlג֖x95 3 \h֌NEu5s>E;̍tiO '])@wfXnN4~CՉ -"Rͬ$+Qc1as.Sj:T.G|9YU1⠨aRA;;p7N)5}`9'WWt@ܥJO 6A?yLnX9NoPwwQ(NJ!L^ qffqhG(|+ju&Rh`v6Ry?^M8DhL67:db(ve؞ȟ/ y:r zbhU^Ԏn6$Wa֪*/ \l{7%*aBc '0E2O1+lVӃOsW&$)4XO4tP"h'Dw3ؚ\@璺֩bML')$S!!Fi6 &5xU-p^a%9JN}_~NDDU_YNVJgms5:J0^;Jc2@82:1_:EQ\Qkr&מUмYr]U[zx<2Ai3=>|*hqښ8[੧R(pӦý#/X4< w{j}-5'T4c~PT6}ZF͇֧['Q{XhC%@j̈gcucz( |8; AmU;֛66m| O-? h:57 Dfȴ&M5lUU7[WR峋v+G;=i=İc@1x;s6fcVxh){Ƥ{4㌛ًP7.^7݂x$#iOj=$Uc*/;=UKA 4:(x{,*? Vj#X$sXGY*BD6}g.38חh r9Rmiþ-ȾȭT_jho=3vJ TW5"b \ks>P hϹ8Z*0daHArznw} )qCnF?u# da;ᓮLٜqL]6㉹[a0c%U~)kÑU8<6e]-*bS7 XL-2B]젪nE0O(nJ~]e.#Š'Nf,3k6ɣjw0'Jݾ|VJԩF%BL=z#8JN#3" `9xjTeO:Po޶s{Ѵؗ<}%klWoqyN$B?5 s)ߴɊuP G`~}˻nL\_Sѽ0=45SGLW N댩4+lvBP< a< U4 b88sEY+ZP{$3*MVpDqc9,gvĐԅ~|F#|QV< }:z??0$xN5nD.]kZ6+W&9wDNbOij޹>i;WJex SAA0]M{ɜ+Y o'=ND7('sܥkr# aŦm/v 5?Z)4L7 [($rިnPpKvmT̗袩W7 ~* C;!vzU!dQN>Q}$SO.-+&9W=K 2 N1Χ?ޏd} $(3)1Wʫ-.[<ێ*p%w"R/ձyڴv98 wQ ƺΖ:OE8LDH]:w:xK+C:^O@{o뿖a֋XN㢺m;}:"tUHo/4u WYdmB{D$o[789ܔe]csHz]*^ E;Q ٍ=ݒd5MQE{\цKh剂ږ_ Tn½=rB' 2j: @!z%|'/vRXOd1OPx@߹JQ| ?~iJ msV1DkFoNήk@R՟ˑξQ^тK peVÊ#m2]l\B!&W\<>wĄZ/~?ⱘ_&G?`@ ^XyLGݐ@!Fg::=[2i8Lui7v -gyiZ/I H zP@HqN'+g.iRs}7M5xiW!9XOS߬>Dq0sg"zF\]RGp"8`r,5"kLϘ- ui1Pbqg[? _@&#ia\p˼G(v"Ep |z`3Ewqnǻ F>7*քTZE?{HQ+{ *Z8Y !9DГ Y#Buiˆ ǘvۻ-GvY'+&va#⏉=!O 5s3+Te"z\j ]}I︅ di N2lGEdss΋r*S^& 74'STD،?vQ=z|36/+|Х0\y# XƖٰf]0 jBVjwQlhsЯK:Sw@c nB$jōW;kTlJAr::rl_mjهW7"M] [0CFax+.{6i;CG> .A2, ֓yMswG5heCw>8:w8:בWuH\,ywo;I^@VigW-+ ^'W(a/°Rjߔv6Ҁ%?B4I0peÞ;0<8h;y/!IO ,!]Qdw])ى 9l!B^!] 76.:FM͜ $%\Ar^m6t*hT6ar>ZFigYu&bDQUQKh^wZ Hޠ"O/s ?s͔ 7DR)hٴbK WYڤCV#ꕺjyTGR*,w> ulo̎NjlFB~1sEThkMlԻTͼk'dpXg-fD֑F!2Dq 3JCRѲ搑Ѭ)yyWS? +&?yFg ռI:(ב|s|n@:ǡv[^'bUӥQMYJ J+y3fО\_똸'-EfZ7८9fmtU?iC;>I\gFUjS!|,ޖ賟j%F%~qAЕmt BBp[ڬ:++S>ڨÕtg0+ߗR!̕5 p 33*Bo;_ :GB k ~$DȈs,ubW#ʖ?Si6%I3I_!˜v!Wx,Iʬp~ӣO^,Q bnDl*3ؚQ # iBs>qZEy>r`^|#8 9*[o@'=UI 8:`*ڂLycC3vnS8 |pA8h :B09cG{Я)W|,jJcTgh%uc%^LC$Yx'?K5> Gp^F&p@Z,xJS$П:xM*yR#׃1կGo1 e4e8e*+-蚃;,TFj{H#A̗F`Ӯg,Ckrakޒ6-[0}.tե>w#]# ygp4,$qN@Y[{V bdiHI$D;`L`:" (SCF)`Ft-s zU:{9n)㪔+yNdkظdF:sQWOE;p`.v7Te6 blA<_853\??HGyar]X>e#/`@0~se9g}?ZR<@ -?нB1k:&f9iۗϩ{ 0rgWM$SzeiS&@Pc\13:aEZU^8L:09*R364.e*rpHV:,E7a r☹ t"-d%p7M찜__nf<+6;EˏI응FD @ 疙Av#Cnh>?3&Q`-Mbob7'9Wd *3"5}6/Vjd<`5!j9J6Lf|E՛r>(K;4B&[vdԛ 2zsvw>Db0ߞA$VۚVC QˈlSrꮰ6O,zXaH$ړ9b@ly3 B6 6[U܃O(Tdfk}8n R녺 UPD mLlbry+%KX͡[_j` tk+klw$o``Ѧ}_O*/JaWrď4&"/qZ=E )}#ї= HEUrEh>(Zmh!H/[}! &!2nc |Đ ).!Ohd"3B^ߍ'V8m}[pYK/uD+{҉٢FGn1 hVVPgޗ!I3ùydzofq=;W8Xv(ؔCjidzgo)ۜ뱢vSKDnxW1kXVذSry 0p *a=U ⥻A ILJËR>5ٯ:*I:uo9m4vwdrj~ғ(UBsoy;A;u73ҸC셧F,M{D{6nr$TXH:q;ec(ꪝ,M%Ƣ m.9PC7y ݽ*UL:yxEvrC>- d\2J&,7;. !wj;kx\L<w 1D+O'30'fKx*s7C/vݖT{3T'镭H\d}I!}&>cbZ"H/%ōr80X;Oy;___`ۣs}q]Sΰ'3:wv)PGJ}ٌHAu n@!gkfmU6 Vc}v#\ʑ|='u;bx$ϟy408>{絼^Yxgc9> _3'809)[tlmꢈe&S&Q 6PQPF(i)xVbьʩb0M BOqG,dً%?SgXr  ~ӛj~Iq2YmoY*7hJIf9.ԱGHuQIhL]Hm֑ܳE C)Cj)[HPNo*N o%8'L.Ʀ=[?&7aqܸ:`{9#/eJჲ?Fʬ|ݬ]ӃuK4f[^^ɚB-y 8VF-2,w%ӃGj(כBg~/qYN612 @ml/`bS-eQD!-Gw2 d!p8s:[ʬ&/)7Pȗ,KмQ>Ľ ޘt &R֠N)VR-[d[ 6*)uq(/وɁ[rspuogDtPA8xZxO~q]> ӽ/œځB%ߞ-aMC'>Yh۹R?N\2yq>PWMl"I:`H]ν`y4e/ڥ".4vjgFylӱٽ9u^@̑1ymͮL ÷O[j\CΘ $TCn9!xreY+;6\^&Ъ`.+~mNu1Z"R*6h> pyD41'_/8 y_fOO"r>@~k>YW wԨ$)`^IJ0yY՝>*kwɊV;HT NqFiTB<=$ ~qOA9K*30|[f0k=w@2~ ^0@|g7g@n.HnǕvע\pHa^uc` 7n.M# 䣅PEp\-dDX DJPxoSH|I#|kvc!dyYiqi,tGx\hR 'Uɀ1;NƯS =ms쾒1k(lRe$qȩ^#Cשt\ ,n9^egԆP t(р@Pl]B/^,KUl;5@P_m8f@p)S(4蹚n rF- Lu`D$Xg;AI&Ir?V!G^CЍ<l  *9֧\r1nۨW.j8uox˙(UJh=%mCr 6R|*H2iq҇hGFI EE,>Kˬ="P1td2c0ۊ ~ Hf|>$ Hju w8U ?8z]6(#[v4^kUw'?Ĺ]y#pYƱQn+숐sr+VB@~n-ii֣,; E97u9@ Ƈp H!& xbTzqV48'm:Q >`#`2`^e.VC=OyG˛dZȾN= mQ¶S]&w2ajNF(hq,֭x|zQUr xL\5KEp"t/. O}-WOô+pG9hrIdlc닙9}w9MZ,@9=HQ4WukS -TX37RJkլWl駸N?4agopహ޽`ρrBbm<.{o遤!۾ANɲjDlҗ.U>7SfCtSM{'3P0E]rRӹM,q%APxilt\b|lƝ8?u)!ަ gAk/BÛ@4Z" e#2\2U~*Cjj.W«˩TwtIIY唁uT$CRn! yt\աyh(C1`Nͦ?VlHte%H!v+XAоR[=o+:R&lףt)[4W-Wun?=Ne~T ՉoOr v{֚|0'T9inx3afd71tMϬHX6hPȬi~Q]ZDߴyr\pix'di޸<|`U䑭kڂTZUSW.`hA{O pf c:Ͳg#[/|b{nfK k ^(wLȪՙ-"(vzoko7c>)x%ٵ,P(8/zċmOYo+ 3P,HGD)X$VOf#g \{7lF< Q $SLinYڏ~7xM=%uRWwXI#k6XءhֳmIW~J7 "6֢X1L [4R܀uf$a*4**ovՄ  3Ll 9{Mddʅ{,lᴆgKEhbUou>D:[nK`*On]Ijh![G&\:L:[gbe%d~gz&br҇ ͢G[3 ne<8*n&+=93>{m$i"ōh5Ӗt^/*u1?t1Z ~ϰvVCF+ל<ǯbҘ|@r/OqܬٯYwAJywdeF@Z,>SJM;뜡־?!woFt(7t!Y Hb tofkMY3״kzu+1@r{B yl / k܌w\fau?E@=olˆ[C{&n%`JE¬픔 ys#[޵K4BӤ e…Ld6KE"6qvs)u1Ab.?."werۑD@ֆfO4LWI&}:PH6)x!A1/;B*;"R PvѤ`1קE]4߲<41^&}{4ah/+ kN&̒loG6i+_:d&;7"6|*pNиeO1x} ?ik:o$KAэ-%Kޏ8Ŏ$dgTU(x>6Z.b ]\4̝R!C&46r_) {:DoVZkB8U[H0ao )z!+x(-m@32F!'%feML[Ev.tǁ/v}sMԴؓc;RJQSVNc~;\5 Ky۵1 OH%$nZHǴF6- ㋃gf=GEd3}'.u8py!:,d)h:Nql~\!XGI\)hvUlW՞Tϒ9Rp\x>oTcbIGCX^RW"q =#b{%^-mMJ1[vMKQ8fZ/ޮ1y\SldigI ~M< L?>F;)aJ-Rh F}ӦrhJ1䙻-lu6-K0K\'o4iruEqHW@ƔYzWQK$ijf Imps-X/ܹɎ12'G.\}13Za!@1 4u\xY9+;jN'K:Os4PprvܣfVeK9βLev@/3Ig[tzEI gsKro4tK~j\u"oڹ)*ʀ7^WQU5˟`"DAnLY8pBA A 9vFǦ1J&7 Y|wvwa푉AO }r^p¥>K|6Rr{ _Yߟq D tk^q7cRM ~'Z(TI``DŅ`HІ\ʬBj?AoMÔ^G%hƯrO$lS΅rº$bod"N"얾ø@GkfZHw%.>[X>5k]&Ѵ$6,m$TX^W4E(3A+StC`[ߍsmcCf1ןւa fkFlW1!3 E6ix]i5Q$wMlXikNR'h/xu+xз 34ĨI"M79L<I63ĵ-zըq.F|6n(N_ ÎRFWXb5*&\R v`џbM*xq[O{S:y]V*$.^i[/pHo?ꩩ7n,.n\ u$VB";C0b^<&`< աu˾wv5*{ru[iksG~Ij^vku{lD'Nb.e.: "+o7D˅]_q}HPeNwɗZaׂ^[K}#͌tZ'nBYQ!eGi (X l m7V=QqoSQԧ{I +тHмAjtENL~U,t|C>JXd̏{N3OH[e V~eD~VG욋fh0e4t' ; C{`Fġf(fL{Nc:\0^4?0UbO%⎊$Cw` {N\T<*W}-\-9&**`΋pPNmncj[~9& 0$r2IGȔ#Γ y6/ 2,V?tEs*mqs`#ht42,yu۬I(̤)QsTKÕOU>lAn%kQl+OEc$ʕN# \wkQF, }t$M ^ԩ_NBɃށFD9̋Τ$l+H!UqBhW_;Aۡ.ׂnI%^>V6촃m4Zgwŧ>b)OT樉 +KbYeݱl(C65nm:[]y\@>U2Tq:*BױGb,Z8I=0I]g@ކbF/U7b"r?oqyT_y""A>  z +Fc' }#"è2QjVQԱБ'Sv}3U'VaGnf/7k'Rk6dage{}p+iL9*R7dm7Riƫss9EĻ,5|a,AQkLYVWZ1GEPV,7uȉ; n,\T\;XqAvXI<P4`B̥]YXwxNeD$W<( [w37:HnYQF߿MؓdhT &ޏ IUoؕv@oT89A*{XYugR_qOT4(m';VgWm ^tP$& 檭x`LmK "npk Y [׽O*tTp#B*E3+ReU ˧ C솱i`T7>cnDTߕ srV! :0i`HN^;bxQT-:CY%Fw㴸maH`&lfLS#ƌ,}@3\; 9/F+/{)Ayq7&S^53{;86 =aBb*zYD`<`'D T!g,3+%۽xaXfxq o*ch7dx›G' 0!k3u·kL陰@4~/جg "4*p]% @Դ6]k``! Ƿj^>9|i>B*l;{gtS U_bM[a:z:|CE%/Ji(J^` W25_U;H`}=oQBdN[)J5"7y2Z>yϚtۿo1gJLmĐl(4WLaTV"W_PZ3/7*l pf$^Hӄ9m8˅>C])ުu%q&)Ğ6<7/5*a|Gh&UIAp"g} ,w(xɂ[WUI 7Jb%k>xyY0lAghd +WD9q^2C*vlrIIgݚM7e?2޿Q`5&ɒѠ%_26 p`GvkDcQ=2 2R璅6^p5vU-#B/1ϓ[a蓘xBg"5ЍUGH.ƒUξy@wAVٙĜܯ_U))myΠ!7kWx|I?UKdxŚ\?+~bdהiF2ǜfc.A*JUuHqϞ~'L{C Uv~UZau3 <[ rg&ip1xE&FHVWJjk^z%T vrq֔ wšj9kcpwL?N^y >%p-p,R5G)Bw0IWiu`7Mq4tZsw6t{SF ^+S1%ϓ$ EgD-#/2<_+Wpm sX dbX(5J vzOJgâ4c~cj 7ϱeTWL,p@9vEE6An+h)dd^3lhAf#(jH GF_#OĚxmy|%oIr3{ĎgoGͳrJ㒚;a$C7_TZ|!o=u8K,5h\5Ka̛#rpL,uuE8 uACCİ]%AƕȫD*KVD"ɁLFO: L}$‹VG=lqL4ح SPd7^u{*W:cXuw* 4M-˾8IJ8TWAW5=W~uDɣ]Z"ۡ> ;[@X߈Rmo@s[m%mboQ4ExR[ 2jz6AYv NvP{ј1RN"ٽ4x5/o{;T!,jyN)G.zGa*+1rY9M:ZYJo[?;>)'cx&Bg3MsY% ;GdiJ{^hC{$"LzzdʐykJR[E+k^U'zϮw68`c>ʠ|neۊLlƆvHl+gehJ,@YUR鞇-9&[?S .2bݾ#>F~2DDÚR2u`tʚ嚸bȜR GFdHrRxxIpY=KLTornxܝ''iMqeV)ݐejD+G;'ŦԕXB'{vm^ MJ<:-?)=,~߈3TtqXIiɺtѭk6^:#.!篝+X!:NW3JD$S}k[H<^7M484 /JtEf`WՄ6݊uqxq ֘qE#!t3DZU8gLMR%)/],R2?ecNwHxȅBBJrj;#DѦܸpA%i: CViJHQҁ~G06]%e(QP b6;4@~C-˅u.Q%oB#49ą(ř#+]jvUtQUvv`i}~ gɃOh4GQ{][2瓢s#LqKk@8|J.ȽɔΆa:K_-u' kZ>< fVسZƸ+`.ۄ =)I LѾ@[]EŒI)7ݞLH_ϵ~@n,{ ;뢹޹=rzZB`k[$!a쒖ڹ$G~@UHp >>#΢{R)5CTrGo ҷ RK_Q8&+̜HS1)hPl5RQDExLtI 58 H{ @+7.Ǵ`Ԉ%T;|͜':z:h*b$4EBi|i*v.;qpBFoe'>ٙ ZrUBב:Z쭢fE'N[F 9`JzH'0wcbRGb|MM_$)Uvh#U9M))5\RPNjvewVZ^A.~w p8{|@ǩ1D]>=ɫ0le2, _^.ȴTk췂+矻ɸ-d0FaАWd΂ S'1vxWvC] a>>*;X΁>)4ɡSk4M}&`Z=e[D5R%geN}ek!S"j,t#VTBq|N28.OpWVVPY=C`/kT߃kw^"֭r*׵3!/z_r zbv+YS^!t!tXjb/nyo+3iUϦ *Vb%vTV?vgTkR_xQ;LV/Qgaf2%L_a6U n/7:)-Ō2=F23b6n竲 Uuh=ywĂ ίpYhNBVKZo}"yc$Ӑ xZ,*Rb˼:9QQ=N $}#TKJ[I0 N7]eerbi现~ǥ:gɐ)ıi>KA5wvة2S[>e59z-+ۂ*w4'pa*&RIa2rX 4cQk qF>uFUDO&T!].&. k@8r CjKa o_*D O޿j#݇*Sxg}Z/6Z>\.`9VYUH^cuig?!=x:iަxb_h7Xwܝ%uC58;ʱ=rVF684[Ȃ 爟v)0;3 ұ.aV v[*D2pGk}WI2PfʣhD?=l@~$ B qP%Gd4Xo'K|ǻ<6]݃8d-[G.C-0x,aoѓ)'p+d\ʲ f3`@ fӓBPPX jN9T>uϤHE[*[eZD0QNtos(5b:\fI#?Oa Gp*ȉg##T[?Oqfs !=Ӳ;nF[O*Hn6i{e/ Trˮ1vIbfhHN.gR,'aS>}KeT%yӪ(o)D˞[{"3hxqtIvP6,Djm(4с;gJ^w3C@43m+I]Pm~z˾^3J)*5x8%:)-D1}bPәqJ~Fo_68Sv; #P"D1c=N1O5g6$xEhGK{tj uEsvY%kO ]5hE߾喹l!buV- oRNG`=OuV d_Z 3yP3LޜP?UBqt͆v@9a54&I Eyj]QDŽPѯm>DRؿB]*`BJCI;W9>F>(m 0XhmQ[H(7%V^~ Okb6 SqRjȇc8|cOZq6F}3NDo{3WQ3@pp۷;׮0`Ťm'~ᵾ}01_Mݯ2| h҉q`@<'o;- kE}Ru}YX\>o??D[覒)]-+uNWn<Xn:O4xa.QCmжGpvCZS /P@M'zٽ8h+(Բ2M2"Yefeq,{y,(VyJyI"sP߮khq槳FrT F<{" J6bɭ̹,V_FܪhW,hCbO/M-PPzx2 r 7-MX~2tB[mk(;{d H@R(?viR*a2g`-th?6I4SV/x* -fOVsI!` pc6S_b3\ G=rDQuޯL]˟S'kdո1ogcpwd.֒߳N>FYB9'Jr),5283Յs"ffRq=WF4.v~#6$bcY(JawEZ|gT/6W&@,uPbZQ%x\=0AoPv|kEbJ @ՃC5TH`a0@f`m{]@y ›0?%6llz)UO+p;YdG'"XA[..h`0䡠Iid4W$ȑXa:ΉI_M,Y Ե4U4Lv2|Ax2ZGT'Jvv*񯛭n]îvw~A;[ O' 82]vI%31C^Q<@[kpꆈqնw0fݮg_qOX8μyOaqM\9^<] [Hݭ)HS` rQ 4_߁lj2ԥʼ>RHGԅ*\rB€ zJD^}b+4#(gRNu y{=*]2rp[Ɓ:q52<;QS]&ng3&l]{Cpk!ӈ?M3 xTRoKќAreY=B^Ď"oa2=4gEAJl#ˉ3vğz޷}ħ 2&$+ߑ39hC;j$Hnw𒡪bɀ,Pt$FꠖL0ڇ,OXϨ|aQP/ n%~)WBxjh{;e'2DR@~eɟC91r證"(ڌMdoM%56`[ʕ>;z#pqy/R]נ偈m?HZA1N WoM޵.Sn Jj xu.hipYv@e5}Xp ]oOe.w" j 5/J Q ߜi%os^Qh5lúCSDd qݟOsQHya ?h*L͢336JNPCG7z ;Nb|<;%*&fA $vYv=3ش)P+kD^"Q2*T ]oK?ȫ "yh6 홓?=DL2lahF4twjfmY|;[F}Гwcljsizc'W͈ =QȯJ|Rbړܳ"#)6@!ݓ1pؕ@N y_ҕ'p]nW*DKͮ~ל_sY&B۬ q,QŇ]/B970DZP?睥-ޘ싼6c25X4}N_K]wr<>V|ZOT G4x[{T+.:8Qq홒%]vV[\xJ!Ɩ8A@A*RiQ3LvA'Z~+B!+ [A4[9J!|u%3F/=+<Ϯe>Hc5TX.C%]'"0MN';m~lowfQ4]|e8`ϧEywhedRO᯴ mIeUY'*LJlc&Y Jkʀ67n` yiM uh  VqDH6-?0Z?f4U+Pzoc rm'=\w*&+X&9^[&BMGrqc:A5HUp2:AnOLDK\~\{k N|v?<7W{[YpJ3 Px J"mMl{?sA@ 9ޞ@7$"[:}> K޷ב]ʁCأMnLe&R yB~\à!g ý)"U4Yt.B9,ĉd05#){AO+f=6o'މh)&bNvZ{RS4kK8-9 !rVQ6);0dG3L*TD Tdʗ2>Euc'Fվ0 a)qV||B%_Qߏ^3]pS w);)>HÏ>tG?i3}M(SÂgŠW?6sA*1(ZĤ >a)XK:E |?&h}Ӟ BMEP@ۊҙz/xCe}\%>.%v^x؊YM8DɢaY~j}o{X^R8Do >b^%\Y6 ߬"E><iL$B ˘E9a܃GMkRƌz\K%3')E0VNDt^֋YBfZPqSQJv`hF&t{ c_[cǞc9_ qu>՚/I_<ۤ>Yw7Cb@ܶY:B*qHMh5alpU*E\69CFgp8Y^)YɹW%JIܙR0F*lZI#P[qB= @/yj[:("zxM)&HwJ;ò w$B&5jjuJi^c5t _x㣈e+]&1ȂSfPHU)ZHZ{8=Dp;Wp®i\ljyP4hKɔEzY)u/7S\ߥfF{EsbMyvwWh JmP 􎠈HYR\2.(a§Sj*f5DoS ߆V\=Pk\_pkL )q,[2 1K(CdON* v _1qmр>#kAgRgRSHٚ = u$ K(} bJM٫u/RV>OBC\,G:fY:#nsZ֎mӌ\MpksBԘXpm)RmlW`./)k-}\S8s }GfŞ$&)PKLI݅,R+59 1 ҳ t $ڌW&gxo28W!rDdYsa!x,~uEizk&[N]YHNꜷ䅈i)z~77ƴڷNFM Q.JCTi.g?P_,#_⺣`t`2VeF1%B;v1r.; GjTbgaCY-b؝{̑zViP9^yMAO^j-t%emMdMj,tmoUP<(@ aY.($@X>kCr  0t3*N< +cv1w JirŪ%~hST~Hy{#xvZnjX55.!:-n`D,A{wzɚ3Z4=}aCLj1 z#lb"n>! xJ#`*_5LCEd4ymC`ļl5>_|4ymMBuOnEPXt jV!fFc8hT&{xH,`Ptvq~X %Cr3z.ۆgMw7# i[R%+ !Z[Kc oP?߷BJFբ}Bxd2w;,̉~g2.p(}y񚠫۟$Er;9l xAj I7짆!_!1fT*1 VãM,'B@s4j޻Ig@w$r*` Kw؁oiET}͊֗u2*N7vr2Rn[ـvh-={IִͤX0;q)woQFs=-90PI$H>j" -8Dcj#ۘ?)i'Xܿ5T]&D[HA"wվt%-S4D΢zs0 GpHYN|F_mL3\0跤(y, !qOeoa3EZۃg\[095e*h%3-.dͬX(5бxUt᯴ fƠv{0y\)t | :ebښH/mpoUMshyC}ѿ14 GHtƂ f9"W~@y61ߞ[26\2㤍6K2zoYit!bv0#- s^W2T&nnϲuO;R]7l2J[Y3F`,B騦=g KkSC([4ŮRz'SUlj7됐FGaRDTpP$mɟi*Ck*pMNWU͘֐6iیF!BQ_ ^M3&e9Gb+AKh~RhVwO!8_'7KДtD0PJ-(Yĉj~m߆p͝60EP[#v"RLXn7"!0o!7&?:v6Zjp)0=.> hXNk ?'e1qsi?;+ۑv5ah4⣉{p'6fkć@rs4 4+m~jǷ/$b6 )yca_E2&)R6c-O!崪vasٲ /rRqpmLTbWN Rh{N{'ȇfQ'"M&}G HnՓ-h=e5\C#.QmhO>K6B|x\!0D $oWN@At4&6ͣff uڙP(wxN JC`C۝S.byyBXlEiq8CXC,Rmlgf?{,$앺KWI}ɭ[A Gg49^|ic.=JY=ZX2NEp[|pوDMCv;y"vvj*&z5{V@?=엾ЙrFϪך> 8~DAɊ$+X90щŞD?\qk`pr.%40mra~%}jf! 356 ZX)^}KނVgæ߫st+Ewۼx9;Uf pOq [-GYgʚ4^k 0!3jB{Ҏ%6|-UJ>T`q]H tk4.*QaZT%s$|Fć`ACq߁ #m!d# }`@g8vT;E/F*dQ<w+>d?Ic "Ynts)JVU&Y meC5B QN^Y<.aיߚ]&R9lL *F=m.9m~ PHH̨UrtWbE{oJ]xI g輸8*~i%G3s)P4M)5>߳MJsҩJu uOagv; ' Rp^dCy#0=."~'hdO5sOdE)* 5}]0{uDgTFE>mB{2̹;zo$ mӝwr%*Bg,=bpps(ΏV.F-Дy9^&o{ q Ew$fl仠w?I7ɓ3Aua/'3$9皱ƋnI,nDR#KRMmL8=,Fa+%OkpV3&:CmO`mBK>>vP<+w %>i78E 2'"f|S137@`}h`)*O%/ Mj:ݑn̙Ǐ,_ g=SAUXܹ[{[d2LGrq79]|Юx;}I)ZB^+fxԤឮ*ҶVRDywgsۗQiL3x,[')"k4R ] F2"2^GxD˪kq4#JrHJj#I?M|ǽI^ l}HQJ?X"+Yit w$@Hs*<&O祅ut.wv+@V՚xnQ6a5ī)M9psM5gxW 3%l8PrPX- "Nޅw턔Nޛ<.aŁ 0dojUI6SEWX的_C<请,dYItkiDP*!Ԋ`x-Y"ֲ@v0*_)-,7hC=6hwPݟ !sT2 EIjUvp_5Rg7qݟ},0h6@]ʦ*!"{;!S^{.%bE}KtWƴK?()/&M"/u ~Yv~{W @!\jJBzf6zضd! Odx^lK3rT.N{-uBZ(bhy\nƗ|(${tRq0~mu 9:-H qtP-&bV,ogc"]UGZfͶgυ/Pyg-L~Z@Pm,n&ev{otpe=a!c4!|0 ly;pj0y@v>%kO& f;zU@, /3?M/ՑT[HBLRSS /aCU$J-= %;^/?N [ O}<ąn3:6i ŵ&;d(Y9k}@Y^)_ZU/w-SpB]MH񻲎h$>܉=G;B M8:a L'ٯ@rY{گqǢ'8ǚ~7;\JG!P6v]8W)s*$GI ϋd'!%?~T#*eU.w,Zt\㆚RJ(+9W%[4B"O鵓%ġ!g 9WDDUp=jb9,A12%aEߪ Z=OlkTqC& oorU!lk@ q&+ Kl_=j)F?9]9ф9K7PTSLo{&ϲԫJ+g4ԡsNN7~no+2%.;Q񖮧>ı<2@,wC K:bCg˩c|my }QC^TT(/1<YD+71^DS;1' 9n#eUmUqBe2b,z*OtDՀM_3k/xϚw3c{28|AO%́ /XěL@6p*[8ƛv/-鿍c y_ѕϣ|9PyY7t ۨ:Uрt?R7|s0: Q5}#)ﶠѢw#Kݶ:QۮR$FjޱI@f^E(p3)!@'>K0=Q@3\UH^Xū)r 4؇1j lBw#fR^C8ٮB}^C&ʢъ@jmTBW̆ԌҼuhD% -!y"c4g2/36 x_x?cMgU|0l$mЪ`GbTV0J5AJay(8me2>3ZRܢ[gǨffpp$vY^_-#( d0VbP~ߎ=3G񢏾S|δ:Pߖ=\JAm`2g:72}WF +aͰRdgir*ʭ?:DVh2|(b+ߝEID*R\St:C#/0!Nqaa%CGq;>l3)-1L}K|@fʠ@%;&2m$f:TuH\~Y=8 q.X7M*>XN&; I:JA٨%`oF24:̟h1s]v ]Tttt"'3ʄbOy2 ІjPV9c (r䉝Ǟk Wu+ hAFmeD"4_u+ LWxI]Mʜ=]Zýl + G,h pc> Ӏ5ye;/Q(&{ijp1dO$_Vm^^z=#!}X`n]v pG*pqd0qV4+_Uoh M7+ 1aL9t]j) vPIb:Mhs +`{k||J"_ Kb㠤a̮ 9fC@/F_ǹ;PG;cP"at/r3sƲd#0e2sd]A˩c>h3,tHH,nZvy СFI*):0.:6dKC9ѝ&AC67x<+4ōcy[!QY)21"ӕvcau,]jM$jۈ0iК"eԀGB@_aȽ(Jm\yȹWmꠚ&reg̬>2@F+"z4?^.7c4XfveN9Jp *W7=`r m `lЄV[;XJL$>YDSQdT4K_kZIU?D /[0YI(hΚ}A/5LU1 ! h~ sѳPٴn }O:L2;aA_ZP_ȿr:cӬB,,8#W,? >hd~%\- =(ͯ%?hϸ~)&+~%#ܦl#*7ĠɑNę(A׎l|PuPPh#Oj]KÄPHh2O!=~K#߳\ %Qۼub1*<aE(#U91wI\/$nP:(†[eL]HŋȍTnlT>ͬ$~a`/n~]c49P٣TtHncb*f K2>Gb5GR_@` cӬtϞ@ߚ@}'NPDz[1wụF #xwSE DEƁ՟zu5彤Axd#2pyB(͠IMx^KFtH¶(j(=P?臭bm~!yfauqq2_B`n4ٕkU-ILJj/C{#ґ{JZVm|ܷ4Aˀַ˨-a%vOC@}@ͅ0l֎Pe )HDVi'ኖ q_`@hLMZ}9%G{DQRÎ;o791.AbNVt|?h-=1"JnmôlȼK|s ӝv['R[!KNq Q%sõ"͜1#+ P'zc _ g϶Q -ZfmhurRs @E[ژsuo 2[Q&Q E9l^'u)X?%Bp~&4_΃yE,?Aqn-z^ F75_o%݌aS-IN&G"Y@RWnO.RH;6[Oٰ ~tVSp:|J`?\#ToIʎ< H?th n~{j7\Q{/w 4fW+x[&fN}RZD@ [\eHn&SM9$H7*TY'TW@ɌZZJ"ʱ r^AoR,k85&ZG9hU֐F=ĕ67/ȇtj.I6bsKZ/e#*Hh9*pW= 񉹴$9g@nT:頦K_MdX S΋ kŜk2~̥>GJ;j'8\I{E}-X,37wiKsDAx좿"aU3zAQ#xdpbaG ǥ"j{lF0Qu9Ym\x9? eurwF6DLy;fG1bIH,0j kO^m[Հ_5mlÕݫqY &0dGηnb"h[?HW0A92FmU}Aɵ/m0_W{:&h۪QM)~MPD+p,<^vU%eiת&(sp |NJچڼO`ڤsL]I nyUp0Ui&fRMrH; UF#GW=;;vL&&o3MI+sjr0IE)W !Ɨ* u5} @;hFxfR,T0pP}ʮuPDX|EEX& VfJ"}Z[o` J@Y'O ׃*ц `8k+<끢t׳OoC7%ow'8jqK<<^)|<_lm((w2'LғMqc `-m~gɖV#n}Ux& ;\׎yJTlNRD>ys_{ \i6Ud![0-5"`&G  g3RVO y< eErAǀHWb85];^X2+[#UMij$V%@xM(mxnBCjҀdA)Ռ~p2h^}n-Ib_ Vhlc=h<,C#-Uދ dtgPrlakW,~Qŵ}!_-Z*)f13ě 7 ҵ@?DYx[UfvH Adl%FpZ Q~kb;قƽ@u`g3S:@C6$'~(|j]. d=j;$?BĽ=8-JN:~Ne_'(~3{=r* ˚WBHD ^woH/s;-zJ!~R/hywHIl7+eӂu;[6eN}1E>ؒeFvvPhX y׶ϖ~2z%PQFOE82XDiE*WGEDRgd+Vz6>} ~q V t=մV[)ܸtp͑3lDpQ)Ɛ [} ~6۞ 4%7eGhMiFh3n4ZJrc ;P^{pb)]O% ˛e]rg-1h\\;3A#VTuisi&3-hL H’:du\/]OZbspdK8V$j?8\b[!n~j7bMa%bǕq;ܸҔى}4dI}- =A;J I-3ŸuZ|nqՃɸ7pS5[S̆!aS"i7ͪtJ1 :x.c9(C<2̉%0Z 5+S[LnB1mYtg0js{7%j4)F`0lOubd8nSM\ i_NFΔĔ (n $ lmYZ!Γ5"1jdE"[@^jEwp6ɜA:{JњejRi'G@iXODއ__L$wαg4ٳ_vBFAga|9@KetaF7C|`BC{ :H0% ´Eg( `%%CkWaEE"̬߹S;5)e x}SupIPaM[9 6ns #B!^r4Ae|S5(E8N44; {TTD3h8 JݪQUI(3An 5Vy JɗXBN5 =߼Jp]_RX_f'6}u1Het3z]!Id(N,|Gtf 3@[\7T} u3f|BW:.h/9G2E}*ymT;Q4SV7i@9p#;mgZO_"52ȳZYU8c|Ԫ][0NdWOPQg븇aJ16:ԟ(vӬdc< m 9Y(!iAmO #7~qXL_ S,nO+$R Gswg)#cF`P!w]D<aqUS }uNegPRϱNދ3KJ3h}t !W;~1ڗjPi9uLx!\~&BIc[2q"nKz% =mEv[Rcpmmw/ўfvR zαtǝ0vs&VFv\O0,#g 姽Ewp{LPkdeޣ-}ɽ{h*8Ak98(KA& _3k6&ML?ه&/U B;Y5dx$C̻uO+9ћ͚៑);_4nes|:"uL |9lh,i |dȅ9 pW|}~ڎJsGz/&餠Y_V;GOZXJsk`gnOX*~29ă_%^@S¢S87)&R6f523|X4ހ>ȦLu`bAݨ'Lf8)$ӠA,AB ֺbP݅$qi5ڟ8aiEպweK F'yp7-FzVƟ:ehüB1c-mܹ!3zܼ+fA#08FVb,t0Fm=<J7G/MgsTU[P FJ@.W(VVr:s<7e4t#ۏ_^6P}l3Gʣ~Q$6#g[3q^ \ X%J\}BYaWgR"Sn<ߎ3^$R.uB7![uA3c2Rk12ґaMl"[M|]1XY(d:^r2ltE >9N̆~h#6M\KEDJR83k>-Ͷ۔k[N5O#H#ǧ%[֩&v㏖@c0k5vCsdT*6cߠE TI 0UyCyr`n $/kr/Aÿ˻:A5kA0p9x5{栴IАLd6>6AǞVݯ0WL\S+;k"j-3?a\vbx7ux"q͏^q4I T2BOgԧFnK3s'ĄBZ b@T=3x6t#5i?Gc]+-'~'%wpJ*}b(H,l_PBp :2sN]3\oh6㐯oIq9o&ZZuOE ˌ-v;FFo!kYK9_Dt ; aiZϪM<ড3jFno ۍizcLipjT`D%}y*zO6jlHաJdVc^WJ|w|;`͌kGz0v#J2w)AY͂ah[&w-6m0"FiUr_VuX+rG`iJQtiנNIJs%g`&`WǦ)PQٓK[5Y#-GvJQTm[E( `rv)iRj qy={)ZCЪv oxOGAH\Ɗ~qr o2jf}ņSlVe"mi\ENy݄޾ja89?J}84Z{!Ѩ mIl$q:Lqwմ&L%jQCAQnpjv5.-ݟ oؒ8X9uJzX dTS&< I'S3Rn|3 ?ELU5$4Hy8FU&gg $k-ur㱉F̽ݜ}<.=n+y=T*oJ(pu%w()>78UD-gdoI~A@zJh;_bh OhfOOZ-30F]"qd*Ȯak4QЙ1-?Q1*٧mH5yϾNM9:\J*S))؏L͖_!.Z](͐/t $s,ϫS .'P~.1O##+ &‘ ]ă#LgRU Ztѩ8㋹Ey| 7[21p[^ "^Yl'fd),( $i9퇝d_W@xbngmx4{t5'Ef`vU?eV|ƻFeP_;Zy(T^w X@ /!*ڃk7 r56Zk$u시{]yO(iC~xPxk~Da6"U֓@`|j,yӶ"O,A|V,o2L >ѐd4S: gAshu1h(8TWwOTMtCrT@yq: ؗLT>o|/s'^A '[qkWhm倁^͈cuCx;rmmedTSŮpf9}pw;ё ʗH ɘ+T)TZ=C7f‹ܽ-dGIXzPJףɖZ+;܋gl ^4xeo$BM=c;I8QSe;*ݡ :OmmDnpMv[g!J8&qC9Hg,]eM"]4;?q~G%Q' n0wx-҈*di\$mK☱t vN}_걂l7 Miea!Y ssKMe*^ ګF TE\O8RƓ,"A-U5*qFdξ52%!l݁c,\o0>kCEϝU/*,9 Z-'|&@]mڂU@ h2DFl'D] .-ߛQqGnkhKBIڀCJ%ܖpymw(P^a[F 9R}̨fI݌ܭaˆZKvR=~RgkPJF'8qq.ƣ%E[P#JTחb0uWwd®RyANX4V?$%uU뽻͏]|T%=6KI-'M<48lE1,NC+zA4Zȡr~.h>C W3%1((f63$MBՎpp$#ƪ`Cѯ>F!g{^Il;o3,P/~JFjO❥̢o86J= i1$ح^/F WQRR˲{;&w5 !%vzG5mexFC.bXѝثu/x&t*_GӧX|Pnψp_?0 -@ڿbN_=\H&/l٥6f)?q@Bmۿ,k{Md.; @˗i@?wƽ*jd/+"*g;~ h ot7/>Zmtv jll̆G%O(ՃQ95N(ϥ3>)&Ԝ'辛]w@1,a.xyL!OͯCcs+onGȻ(≰e}GF`~<~#LBas'z/;(:0QsP]f30v 0<3Hs<|*Q,vG8`K ?ƤoX)yKe)xHgׯ[$%1q4jU)fga l@ &g Wt ÊPCcș+[="rv3'U|bYr"}KÑ w8!}"K@QS}E-O Ơ ) iuMB:~ȁܕKbF'KCC]$ůnPlKH%ZBSA Y+BP4,iεqZOQCOčӞࢼl2MdLpY痴K "+ z/%h>KkIݺ)Ds%0N C3n*[JMVB^L"/"_Wk;S]̱!kW䄚~%vc !]Qww 4&9zDڣmo zI!}-ʗVwߴm*~yq^g9$zd|[]=tU{K S '0VQ) ^6UnBfҡ*qCJ(W + w=#2V&fqdb6TPbTAc]n p:OLߗ%HobV') I9k!bRw8.T: n.&e?+ζ]epRn>MI[,RހGx*-bª*in_HPih`Сe?zs]Fl~SD&*` ~ہX^^f[3ޏO{D El WqJmTxIbn|ZG"o|cm1=fjݏ>_9FvE*ҡ}wnCvߕqzWB7 w8iV\#)I =1b*{HqK غ&eK18u6rr~uZLwDsPfT2Ӗyl yg]g@ AVՐ@luQ`$%AzAmuiwA`,Ax wrlAsi2#޳>f`=G j\Il,!RҪ4F_T5wi @tBk~ T)X 7\a)G5w5~V81(@E4eo"1z$\Ɍw踈k1. CeEYcg/DG]w,5? "T֬b7z/$/V=Sψv۪*v @ bɆ1ЭiSz@)) \C! #$c&v[P'mUUDVtœ=A`fܮUõ]Oi[CJ> ׻S^L(]zd?S ]!t3sՋD S\&>YjkJrASd'd|* C+ Ht`C޶L'Q^|VoTt%3lߙ!ڵkTHx{6yMA~ {#~:DtG^=gZub xL)i;J^J$ qVrM#N$(ɜw紧WQ#rDS]VLxC~~ d7Gj<k$ z㋢`uN8zjyaiȾ%XB8xpRԪ^U;}aVwZ "k -N*6ӮD&Ziim`Ve#[jpY/vD\n {81E)|l36e7 T_fy-8fGV͸ꀕE6TN9)dO;u u/J(8[Q3Vh]pKbel""dmP=RԄ9:US[RlWC *2+sm:5}-gk[OB~ZPETr7Np5ɼƦ?|NʃrX#>|⨌ %Y8 yq}BVnmPn@#RP8v2@t*4_8٦89JԬ5U]| C$tDav]qp$"9'h3Vtt*]AVzݵErEȯ 7煿k&ais3z@&(-m4RsаߡYϩ-e *8XZM[տ.N ZWuPݯZ's4cȨg@6UsQn >^ ?s݌?Z؏#.t0;Zo0=f7lQ8+{E%r -ւ$w4C ۰ 5,I|a1nqȃ$/7Bq?@OA!_ǃXW֓FY.1-%o?cq1H>RoTR>O30"j}ޘBYc +۾6]C,1/*6Fl@ۡ Ov_OGgDH[ ՜EWdʼ.4KմC,fdVEbhdm ^yeJI>Ϛ<#^.D CU?P,p_*pbA!=W~Չw):C0exoh`q)EiqgBDPԢ:k7Pdŵ"C@֯0]cZNʈ}v}QȿG]Hi~YHֲξ~RMEٶ5EdlU1ev$}a} JYY剀ڻMK4 );:L(27LhA NՁSf>W*kߞj/zox'{3[O@pAwQ!J5lmZLCa{O8}OqQA5e"zY6k=P)op\?7 b-ZP"] IF?3tkQB}&Hj Th L#l%;C:}7EWcѦ!e2i?!#qZy[ϝU@o 4 Ǟ,QӺ;$|vTO{qm-{_ZPK ߭2VoG^waY1t<Z׎gVf%LN H4LdfYmB"Sk7S QV! < ?HiVQm]WȡFll#M%?7\ij$Kl:87Ktm|] h Rf7 q?nQ+L-1Šn~#Ay@6ΞQv`Έk5{,4AiS)/>5)TP=)I[Z84R̓'z$,%kmLW OpfN8ֱ_h9aO ^87?]66Qn, W qJZLtN e0M?ۚ{iP2רk*&]W<=n}E8=ǂlr8,;6W37>.CVk5RpoW<4f&<"(~Ɛ[?v_Tw-nq̾}i3r,T-kM_ BiΩBz \y:G5؍Z. r'0DӱjkfoWI h$V[`4hWR|l"7-NZ) lW!o vIL'N|btRq}pNsYJ7;/fvȑgb‚tɉ==*kMA~`3>E6T:͛& ClC=ΎȾT8odV)$Ĵk6tNYC6LA"~ڕzE|3V:4 uv-t ϠP+:RP@zS&_قΜ|o۳6 {877&zu1F}J3n+;35 O&Վ\JJj@K暃I=|p9_BvKyLpM J]S?Y\D40NN^hcL+׫'\;pI;& д>@;+l\l#[^r}6[zcȐqG׻a1:5^o☿ieץHe} FL !?,*ݰ7/V %6(+Js/6h?`"}V?Y,xh zʅTR1P@ )M MO2 wt(4w&HEo֍Ż <TFҀ-}@ ~XbA4gK8eE|k EZ2WQ₞eั{Lu~[[7)sYYkmZr8bF#3Xӣ B$3Lzώab2U}Ea|e 5hٻ.Z5jR%˰J(09/CxjW8Mx";&gaSX[3G KnvKdUց_Wi榞ւ#;Trq\x8c)L,_ ie]n.qF=pDr )8K'υ' ,d;:rff"EMU|RA`p$ iζNpЉ߳u}1op+5|¡b6eTARU CNغ)" f Qi~ ĒJ#YG[ d R:IPy!JhJdwǂ!Y5tkFɺ'eBQB(ry&RuvcxWFؑx-b|n߉_*ʺKݏnY7P"AOyȨNM٘=GPn*s%SC+}-!\*τ^T; 7dP4?&~Pl8PšG6qNij#ps&6 T5RS*i]9W:Up:\I/kj[zOI,:`41X1ہ۟ۼ{G  9!ZH+$RdxݍoԞ+q㮭8hgX5qGvEt-[ (E#jwg6 ;N;ďMiD$R%dGMq61!Qݙg|X]+B[RGl_mw?.#cԻhܣm|KWʼSqI]κE˻y^y/„:mt ۤ5F}MYqNoZ-gL!~cV T1CIܻ?f U JDe fzn$U;yCo:1{fe5׃?&+Mz\$+K”Ҕ[%2ҬK. wnIә^{/\{_L0zŀykZu: nĕZ+zS;̍:a) .@ϗBHë :'$ 8,ilai_%%$RN{Ï O椗q8L!W1K_ t\O8-l./0@^C@ g8KC{!p*Nrw-#N_U\:g־_R(w[ˁ.'˃O;n6 hU2E\cOwD-CMKf&FR.Nʫs:L*oNt$n,}H"AކJ*;0޲#;C||e:OyDN'{E0#obB eT66 K9f^kE5oW_h]h (Hʻ4 CjOң jdUx\_ZBu+Ҷ 0R 6~##[:CpwEKEjEVsE28Ӟ`Y$kSUo*+BRIT@c}|UݢCU( <.o@ 96RkޘbCLVz]#NG ?R:$|@LAu$rQC?iϾf6PAw!Ƨ OC@1M=@P,^9m9B ==h$QN^4Ya{vY뮋>^ ``n>;7o@!r{xh$"e/i+Ѵx~/C1fW N(֣]l7mY<`F9O,=GKF|Ȧ]lϗnl*+Ac`YJ=j[#>tsJ[}_x3fonnM}VN{{|{J[gbAD=FfU;)tOOEk=1Ō{#r ;fg"YTfQM ec(;2 O?r#͢n+AKPtcņNwB, ȿ N(!廡1=| A| MI*bqޥnHg+>jotHwsE>F8b1shd:[Nq$~NYSOvF4C@Ӱ.Zq,w(wA~*%Z,MhU©tEkČm4e=9 |]9<֘W66O}rP /лx,tDyH~; %6l3,(8HuR@1wRn0dof&OA]z%x2u2cbiWJ Si4h}1vp(H/Cw-kɵʻD.0}WO }3Kq7f _ˍ׊2Xl=,}jМ w|DĦ3[\3ڬ@s ].kbjWҊ}"*0fX#N W>u5aә]߬CҨg 񀰃Q]+m^ "47<*&`NmRnla lAY aO#+o2sc* VVaT{7U ;cl#.iI4 (EWTH1lK.,E۬VWs%P*C4Q9][.m/>=wt#;wja~NVm`bquusæz8S ~ 0KyR??.3}w{ S4 uuWJTUg;YA:rG5!jbh.C惍b`Q+iF=="Bh@&E~0J׻Vjtyɨ&΋ҹpriO2! +.z%9pT+6Cྸ7tly#_y70zɧaTIIo c <"Q(qOf|>hyJN #0((T}_9.i=}F,}7R#DylLk) {xaS^@%Z*@bO*9r@|Hf(#cr͙y|.cOtjF !"6ٙVd,lVǩX[ 箞ggif|J^j2dImf_x&$q1B8Ѓu9{UQ9!SRZ8)~=/G@_"Ƚ[I}Ž*&1T"u,x>NV oRz݆TsE0 $hK(+So8ʞt/Is@?QS/,!htun3}JIWKO[W87YrT8;9zh + -Ř'> \E9rV?ժXu02}q E֪Ԣ<ɽsps(4ɘ־?s^K륌4-~wk"e1df}"iףO > X ,cD*%->8`t|i >=gŝRKh!+/T2x`s6?HEPU@w(#9 ^Y%7g(mSvӝ=Hd CC"S 0%,~]x :Ug٬V"HEUfiY ] y@1VMx$/Q@Qsݓ!J?+R0%? gq]yS]LXA[K O>y.I^F[&{pQ!=ҸK=caM&z^OVcAA31M0a/Mᝂ_Ƽ^8N iQŽt2v|y,7 m%*6Xj) G-#R#^ڻʘz=DŽ5c)~yNlEk7^ӱ8j k,{7KHX5pj"ui$muqeC+Pxݹn:ƥh|(FeǑJ 3z"kvomOR ۺJf&l4-L'.rc O>TXHe^ b#ID_:egWQ47`"GVF(?*UvrVHq~48VU\ۋݲPOa1΂Ϝ\o$8D3a*MkiUJ4bSkOf*}:Z1KxX 5&$)lAR N(~ ;D2g [nϤd.z~%Yؼ)yj'ܙN_PKj76XִZ3uG_W{fw[Ф1C2^.r⚉q qS2ѰL[;O=[Ces.ͳMM` 6.Jh&Wa LGubitq~RhH \v;`mm xZJefbZ9 no|]YQ8|<,O\ wWcz!꿌ΣX#!`+$yX [WG 4ݫ{?Ncf>yЖi=haS̍+dŭU"%19R"A*٣K&V^`7|ҁt=rOo&G*aqcA>Qo#]wDNe4!z&@BwڦK(96];ϴs?3fϪ24cj8JMwj֬x{ZiiZf.z 9+pEI(%^ QϾR$mL uw<j.n4 g r'r[>ׁډ9o;I.mQф\- Kt=t>;7ף+ |hAgfYRCU؇Ob(/# 1=U P(XTzmocs^ }Ǐ!IV̓0+ !$5 utvc y" :ȄaID!u-?U2.pGm{fhqPި!z5Iˤ6h1S?.@h_rX8d/V{Lꄽ|H& 1b!Ե*pBo^A2R[(y4K=<;[<Z{eF%5._czB0kT ɞq4!o5k[lL47faXcHO]hOr_ ׏͠g{?(1#bp2$0ZWKC=yUK^0nwsnj~|$,e?Q* &!@C<^NM@Fo*l3rGҺ ~0H\ӅŸK!r&ifPo2]o FzS߰FKeI>,JM8V9o׭,Jo枓[@Ё am+KȜ݃ofajnIE[u5d:`ò3յЗg+}Mޜu__y#i{Ǻ|j{g&1`ŝfFFU1cAkGd{DEZ–G}%ZmIEf$cKD 9CkjhwW;fA5F`WUosVF}+GυrUz=SG*%A؀]\W9wt|(l87|sR ixs|F• ٺxRq6RR#iP06h=2VU6R%b)p@3g&@Lpl|I=sRjS+'pc`ÕTƾ2Cfr `+a='?JGi<)X4|"0{stnn)6>|gDb[]k_,Ϥ-~'PA駷nX7YbnccfZ=)3ځ4#=-H W|Co2N/)[Sq5YBLNSnʢ H:~U* GpTpvL9re*?òv0CFTT^W“`Y~2sCmz >=ھG]tq&IDϢ |lMΪ!Di4mb1qgklgc<"_r&;TqΒ57^[f 4yK9p~~R)Cz' Hr|ܯ}л>P '!d?qP1):v \ oGɄme3UeKueŸxd:h_E!Uf6#{~޴* XBY*Z2XR ):E&#&9#= :=Ϝw~X04{DY<ԝnP( 4sB eD))?j^ͻs>L<(%S ѯSkꬋbBǁߖ)` 5Յl6r_7P~@/$觠d{i(FArewyRV Yr-1(,&rT3^9 O4A)wa`aom疹G|֬\jpv[?v|qOVԑ5|Af2q@Z1蹧f =–!h S`/8Ş}#pE~N!>.$3-hn~LaQ]w.\1 ωÎeTA&.8=~2ėw]Y? HVӧ= AJ_7|F7Zp\Ƴ|$FeC߻tϡD 9ed0ͷWLTo/@G{0\qZpOR&3ˎrlF˯&嫅 ڭ#=g>Z]ϛx&kfBߡCdxYUxO`4S Ԉձs'wMS% (*FT |~&3Pe|ݛ`uR+Ntn;I}p1Ath &d!1}![}Mc0+l6G|rTj&YP{jf <<<ͫLE4 ^gk1zs'B-!~4@ 8ԴKe %r̽ 䨀epb1Xe*=Aa:ĿAKx`̃"0? P.2߬k{2Ӯ)a.CkgTR/u ښ^* ;; g"I&0eNpg9)>W?^_^)PrAѧOۄ2JzoB,uʤr#׍pMJO&aO7(2d>Ft a2'X6A)} L8,Ծ@ub^0`2w*|D pk~:E(iKM یk5Qe} P#X잔_Y`bwlvneگ,xRU/;+jd;,Lwǩ}AioIcA'IUŋ@T=[40Tȃ*gL"Y#ڊTװI ,Y;WY:%Mz-g*s٨pw'EA=v r\wJbJX ݟurH|kTnޫY#*c3m??Oe]\Z-bKܣƜ?s_]zrm9~)U7W*-Gf$xtnBZxцĝśsgؠr,b*I-4[d4M6CM߯ awGUߣL:'JvY)5TsEYozW#m<,1SD;Irz%ryͼ~-9[g')~(g@Ӡ4uP+S'׫t9 it~B& xRu2p)Qr6L Lv-$@Tnf]*!v&f;XCk\XcyjǝK;Y`* mX;M?XQCpEgɷc!c+ >\.ҝ10d.+M\ehEm1MZڇ~y}#tw-͂ԲgLQ+Y.eOt:b(ih2/;>}֧TLw۔u"Ӆt3!B>śXUEo*ІwZO+DIeb@G&-B!eM*uck~^ULBA5+uO"_{?ޣ-zZ9j3ZIGkv.3S |] BKzdSHw$@D / ሥIT.SLB6a/+駺MExyV-yVs?9ĵtɄD\6M`)T4rH;LНy=ɤ;f#]{*sRG UyСzSM>J٭?K "-Vi~-{bL x*3A2lME vQUoN)G>Mk$總ZhnNu᠓d rKR\/}FҐnSB2G XVo4P.:O#3u-@!݁zX#:B@ܙL|MOZ : 7q#Em'Ŵ3؅PGbl%S@WIrD?q-sCis!~lPY(=uo柮*.0.qq, k#A-" }ArNK6+VC6nb}]LFZ#Qj>DQ t5Ǥ#*+d­I K}怸OZ7fIVj{ )b2.VýѮi:rR/QC{?O9zVVʄGl ٲrX8ߵ]Gqf"s5HNJRr S͂P%S.FrleoKchHn:5-X|ASavӕoQ (ߥkӂVw$uKx=Uq/VO[e\&W0V,Es)Yotg^z0Qdsa3S'01d¹X .OL2{%L1[}WyIV@,!O q Z8 OKB+OPBQ$!n"b+ ̛N6ަz .Lb7G 5V'YVIb:y 4pdw&AL{pt,P*ijZz]y!G,wEi>M/k!Wf#Fbµ`ѲTpÕo4f*kW\:I0/F+yE.ީ} Ըr& )SɆe]y5 Ii6T| 6Q h9^vE`פ e7o,a-00|7A Yw4~CL%i!5NaN١GX>)3MaFbMB+שC6v`?nc,隱V/b<$?T 8ךּ;n´ p t ڠ Oʺ%H<3#y b4;4ʠ]Bh;Jm/{A#T쎮?[0.gLoZsSt;A,Q|d]#Zx{Dus >GO> ˜]y%#Ops$!7>m[4TiOR)Bpz U 89h{^Ofr p8贚g3Z%/Y ݖ"ۛR_l=P?A0lkAaEV l#Lv|eZD~rGx#S…QSmdK?gnmȏ((B7zWozYPe2TܡmI`KQvwSMI' Oq}dR'F;h9VL;;WaaI?Y<)Z1KH|`!{O e ei4f"ܙ{4EҚfep(Kwd,y.JܠA>z20JIER$ AsۡG&qGN +HC{i#7B}0,:S>JʘYMi5,GiT8 }[p[T (2\>/=l9U{ƞ@L5|Yc75VxF*N3΁^pwU*Csv;a.{ 4j/[7G1:?ZWn/7x`v֖ C`]iVA ~B"&la3=G)ƂBZa&Au&k3]?LЯ+E=ϰ#&\YZ݈:vK16py>!C+wE}b(..')R6N ?X/͘[idr*su6bW2 @$PƁ x(5J/ 'Ca̵Cv-Cwdrq".}S>)QE|y k|R}Uːq\j#xReMτ'tע 0O 0I%+lh#K 𰼾 3ErﱞFg1mbDr/Ot\q܇?5du7O6.{8b'M.CNQɱ8i6H,/K9͖ @'1C[*%*'.s?) 6oEdm&,\Wk 1rbdl2ƞJjX.}2&Q1 D:)z>g,a0HkD?/ڡɰi@*֡Ħ̢oc 3,ڜl&.ҬpXW QjŚ" 1 jᩡ-l}'>%gn̆i(CAEb4/.eo񬫛7gR(W%3mKTh86͸]lxy>"4"wó+ݱȘ=mB ~hһFlM;ˀKP ||+dX0Zio:--_9:/Z!6w(MH/ #IJ0 Hp=h{]!K\ĴvRDG6KsW&<M^?ÿU_$sȄlF+WYO:T` *`a'9/:쵓|rUw5cy_/ b `]uEj?ɸ4r[p-+W%}YdpR&wءP8]Df]\ ]ڔpÜ$Q~5K)sŴ4 #Š1 +)]3fNnU%P37Mnᯓک}7C]EJ2Z9BYJ: f!tpj &my^0 ;If>6)6;v}Mqﳔ5$D5St-ݛ&bظuQ(oliwջf2s(JVf46P}'?e8""4+Om`mFFW~uwsxD-}cG^g率v Խ#P\g4yXG;5ɅpPǡ3U *7 #bavïGu+ղ<1Cnr\i+LΥGW_rBP BP,alzwlyYIVMbF8VϏ Ѐԅu2vvI(e'Ce</wMq4f~.1l!D+q>Z!D"% <*"8|7y!w)wؓ۬Ezem?cLgKw: ӓ7)j6u9WopI;n:VCR*.2M(C^3^s}phެ8=gqJMzo9nB/VҼ%ŗ|V*$qTJgHq$׵6#.}CZ 2dCͰ:_Va![VNHs9- *q`a 09O,-O`99Uc]ˡn14@ULf]Ưt*qAif?Hω}>U\%H~yp/m`vr7#D}x'%WQ]t7@eFjv/t 5_6mhQ !"VJ5 Sٽ8Z 7zF.b x40: j;2Y `mV`m|*<2nӨIRn_v4[Oc,A#EvaJ=~090v2f1m ie[vnUÚ:Xi{K0Ò3w5$3[#;U !c$Lkp)UO5C@IUo)N)Bxc2-1nl]&B1{-wc^9 uU`7hL&֫٪z 1vx.ҎU+޴NqR-4OQM6@C?ݕVIi_DFTMWPDbF%fBVf$6m3`f´#"S<,pj'=%ˍ ;,fq&/&̲"DJxYxl˪agMQxQ }Yd~^Lצ@ {"G]M?_i$?mVX{nh(eWfF҃l@pGΝ'`6<#T9O5Ĥd?hiƐ3zwp (I24>)nS ~? q Xl 2LTg[M*)㥣Lk Ů;o4HJ/) Vޣ cm~mQmb8I*ʢЙ,j.;!:\]#X `J_ə+\ZrPA! _Cա(8c`#g V۾^.=x<~>Kzh×eX1R[,ujL/jĜome}Fà '``Tɿ2҉# 앯'rNٛSEU?ږ$-"øzQ2O^0 VN$u i|ҹi](np>q Sۂhn5wge~YWB|M)P &XsC"8DKdFc)(nɔ 'Eu(8Qɢڍ{8Ň&ȨAzgk--E5YmȋH.%m3zFR_S3!va愕+#{ͷ$ëoy {bCx 6yUj v^m4><(7񓙶[XPMU崒h^谠͹%q|<#zO@H|ܫdx/rTPM^x1^Fs*+UH>X2 цȐ?lI6V.H蕞#PO-j/DW0S QSBݏ^(8ElTHAO}-D#fb "4ҽ@8ՎhcƢMM2@1dN][Ӷ8]gSE,'U&tvwJW&yR,! WjwO5j*EL9{j$3Y!@{kɕ,[_Dꌾ!A Bw'&S5ٌeޏb6T޴ɰX&Xu!^tByV36QBrG ܡ 3csHvP.| ^C`_(^~$uuO$Pn]/O*XE=h:VF&ײCޛxNA n5 K~e*_*w-,6hSPadYw]3a^oW@PS4h=ezȯ;ojq2)9=ѭlj SYI^\޹Y:Y tWlM.%dm! ʶ]CWCYwsˆ,0d잋yaUN|CºZN|k{;<`2QVT&֏Jb l#ý$:n:Aݷ mV2¹A׸F;v}]/i͞\~ efa]6uO*ȖDh?UO"``Nu+# "vXk HIILE\Bl+ԭSRZu}mim&m+:. sUzh~0ڔ]O[D F#擏Oz*VY_~j52\MaqIUrCYgAw ]#/jgG7!a~ǝ cjfbv]8_w-'|?mJ> RP(ARpH$,;~55A2Z\!u!XA@7'1'TʰC|q+lRТjwvRmF :iw5.Z`nsON'E.`gxSP.8{2kgѦN9(,FѯvjyR,q?Y41mW3r1L(oI?][oq" I.tF)$35p/֞V[vunQ)kF*"V$7Ll"+yXعLn yEjk_t .r:dc's{cߙ Gl^) xCET+Wo1w 6u_вs-xX^LJ4}s<ʭY?Xf~/MR%"ݚHGw'F$# |ן\y'6ȮDJf{߉ىzsFOx7fm{Uʗxj|geWV(ŷ tz+JvT@wf [jd'gez?f%-G3zn0g_c}Sn۾͓_?uj0Ndbh}Z# |<d|IbkȐ 8ft%l^(9*x4K0'q#2㶯bAöf~nlmt-AGO&A/ʖ=< 0诨-4)quZdM+ j1[տ%+ t68DüCsx0@4 o*wtz~1p2JsC/&(1ϰH/lϾAzʩj4ljIAv?Ҵ|;cINxM2r$i , !4,ЍMSnb*uS!RVq>@we` :%Ӧ6(WOzsqj&cW'P HˢWJs܋7_JwYDM6`_oO4l`|w6uۻDy/򐾷~h'4tijrq] _6f-3f{hFao.NRV(5r-pfurhxxS@ŪTr+m찋H+GN;Nje+K!г.O(P|%|\CmcۃUkW nZpoI?ibAҕ_!WoЛ+YS;,p2~qW\YJ#N\d._m!x7;i~Cy1Ƹw5|Yy(Cd #o$jtدU;ЂN,JRCsE%ғQQ.Y\۷T:=tz!q _ Drͯ?6e\ }wvJU+qmr!*'lƓ|d& n0@Ju2 kq3'kb^k!/zYM1r!l]B+Z89]r[D%IvpYoȣ mX@ ]&/[3/4Ƭߗ]07'gy'Q9Q$Ǻ $[Ը4͉oQY.Q*2zE&5l9"x8?FrNdv rPjp̎yIrP ,5Ȼ>7-TBȃk _ HkɛWӊ7Tj<ޏjYƝ(.Ptaq@C?*(2 'jOb]:K}m]7VhuSz}L%NT-YjjJwb[9k_ˋkӹsTPQ0AWpKuzZ`D@3Fљ|S f+~QG$~fX ڈ&FL) ڴ] ^WS6!K[I?;:Zz߭?>~qL8G'Z>]hCח+?bc+ikYhg2 .fT0uSJqun{J+4<$+{=2%N*؍VRk0b#hOh䵰.M{Ր[$wZJhc' 0(f<'\Ƌy 1N%Z%aPľ_'kד{L *By],Ocu?(q&y^ Y4gUl-' RlعweҷYi_Xy>d (UABZޓHni oM;Hj+Agbde1hA]4M=mVY)rS1t5<2.W"& f[bB3\Hu9,̴ dp=`7Li%?Ju*9B9Rf`I1A dUv(&T|0dz8 :Xl9ڌTLn>; oO2֝w8C D(z8L[Ӂ9l|/H?#fO9kCS&| mh&_/ˮe=^W ƌ'VԵef2#tݏ`9 9n0DcIp`rڭyAI;e@0,Up8T/e/g 9,޵L9Л&u-]0?C{V8lqu;h&Qyd{ߺA裑Dk\0yl ^ڄK@RbK}_Vke17KK0M5$zIYF |[Z> @gZ#)Ժrbh -Ygs 8D։}2dX+9p)QI@ rԘjy>_o0"n1-'~@|q+*2 ~iӍ98xnEReAOG߳#؇0h{v =f_04 Y5ye@8PܫhT ~ZgTAͿ:Dпzt1]u2rWQl7 y EMz_msqWF_^JUiAoLp*S$* Hż*Yϓb%$ ק/d[L"/fUks,̷V(?CL *<\ç2?'"< -6H<_6yNU@AF_wڷM(WD栎f4xT>5zgɗ %0ѰU .;9'ŤK E98+nu(=3wlupocH$bڬ"[)TliL1֟ ':x~i>t&H'9|%p)¿OiCK"n(vsL1)&/K뢯I6nz11R5 [7ﲫu7\96#Onىk&#,rOnBBorB؏=} ~$eB$N_3'QDq2)eo)4Y4FΏ21Dπݦr ɌWR3xJeT " R_Ee|̫Uh dZi' !M#%)e<}BP~D  , и?|ӱ^^Cv}C tjM7&jyc'P/MVOH}"Sx+\"d.gAID`zzk4A1! dKi22y~Njb&z!ԗ66\!?kU2A]UxV~SتHsqDsT'XWbov^n\btbRU+LٸGtQȌ3X&pY;IfG.lMfRΙݮ])d5 1?n gQK}ak:bal iF+p,@AwEeF]vB~(;`D64FBHa$AF`9{l8kiaqĻ9bހR`%@뽜\ O>vZpCrm==/w?]΄Rc8q k1+m6"v't@5׃vS:%op {rou JSiGXbщHj]A4ƐKů~) Ӹ8և_{j*yv@[u~Cs؝ڃM1CCZDbBOkҾ.mv&yU[:˅DfhO*aX;Y0 1q DQApo^=xJ:Q~-U_;tIQꐔd)x]tQ sQ՗X  UR F=Jv~~ATVƯ/N65swbIRk?gԧaPrD lBăf _{Lo; „܉; D:cC΅cF;DnfwImXTe |)T}*WwHP[Y{#8.iK'Ks)y{tbͺYd4|z"Rsd"fxY:D㺅EJŒCa.Ndg7Fl4N]uIo#L<&K;6LABC ʣD/[ZE.jD Nj\Bubo>_lHJY-4- `nJ1[DU97R-7kpڜjOgD<ؐV>|sfdC0T"Kp }a@~0}tbdWD+x:29uK8="14cks:Sjs@*BmmmA-r+f)'8Ԙm?\Iqr%$]BE "9ksp2w'dbh+ hw{_$a AjSvcC\G+wV/N U{ˇ!OoHw |qk\xj^9 +sf2QL~ݩ.F^ްg^) :+zdb  >Xddj-Ze_(i&`oDD01Ձd]PKehAE3OS7)X%&j>l44*@{hRz&>gbF ݖɯ4̸8":ܴ@O(ͯOD Luڜm 5Y \+"o-Mnȕ y*:栴 8mQ#"xL^ ۿ[gtw01>K~mA T֣5vt*8P6Co)#ǢBf{ E|O()l+935m(mY"i.;5,H_ "1=}ߺ{*z~G iJ)_(?'8P?6XV@ .E4Gƙ)ZX8P7.ԣ MQ;S{+23W#?,3jw7s:n<4̢l3(+AqVЙ3a9WDWbSMGbo viIV70;})qz^ɼ`(;'|qZd&X HWX7 -rH"EʉlC$9PEby/Z4ߣI/nk"bP[}ŅHX, @AG2CMwK[@ulِ7F<S!IT/)l*g8sgzc; u & QՅwzp)x%cٲ`D n%HeT|RK6V[ii[Ni=/4G[T>.y!J6хRr#s$DHkA-9(,"u) @*!_gtxj4ЇOk3OʣH_oa9:pd>h8Y!!%V #MJ}l?9JO [2Uag\}6W綑M/aD"wiݯ`}M+ "RwَNr-ߎD\o~&qPe gmZ9_H xHnNhNW¸"S @4m3:Ǘ)l_ mU.#4\ؽT{!JJoB!"TҨUteG&V2@]k'+Fqn16KDjg7cR@e6P-]BrP?HzzZW[X)bM%aplP%]FO).] R"t op,GAGe68F]I=:E49t{'ji(㺼[,um¥Χz NdWV::k10֕ svM)K#fd'7rG϶>;3XZq #!mOwaeZf ۤ xx1+ 8tRcT| ;.'~5LR\ ZB|)UNI}'˦>ͪ}z慞 EK 0`,Nuha2e*aSThV/M``M#'Ghl`bI@U7ݹ/Զv7k'yuO eP_ݺJ[#a{1X}CISHs[#%ѱZ8@W|`DÐ/:_7t+;9D(;;xl\%%]K^@aC\BS 7HjatgksP><\i'oRs5q"Nހ{; 0Peo@JD{ҍ7ψLIJSX+uvʼn:zPh G96hR7SKyE/4a6N3R^<6i}+0khCoJy_ dPy$--w\He+cntcgoA: G2ys |8k(;ij>Jw\e8|~ -o>bD01(D')r$we] u%_&6Td'CYۜڏH,+t>g&ǦX|/ csQ\E=m]*C65v \kȩBnliiKs=vtwdu'L2 5IM|JGm:y\X@Pq>8Y>4{mE*"[+Qɶzw\qV}+yn7T#K~XfH .UOq5 Zv i Uvmgn`_MARd:ܾ]rXm]Պ"ߖR1ЮJ)đnO:,FsWa$o]5ndegZ2_eY8)wq)r0aqZ o9_;!85M:Ou>}C'p MH l~|{u_eLQMA\ J1oad2K@xND0ㅬJ9Srq-r긗3#Bz 9 ڷX #I@$/pՂxcAMOTͬ+&HorHkb$ژxlc=eW} k8䬳 g'S;)8s {]aR-4G,ni#LG]lJ8[yOA[%zZ5D%.caF¾ `@3(`զǐQ]yGdx藻&IM0+B!pA6NuÍSj$JבCY P7!JM U`UL[\˜d,^r_+k@ꦖϛ;a(2$~ Ws凈U5UP'a3p *xtcn(!OI X 8_*,`%yOr냛cHy|9֩;oƚ;j1R"0sYq4o 73fK I܈ -t+J=Y$aO^KaK+ ;_O:n1%~;҆ `0_%(?ʳ!J niF?++( FOm-1pK!فc*%[ݾp͟xN@i)1v $.[ց0 _Z2 ̷xSq= 3&ujf#@,U"a_O%}@.q 80uoAƶ#$kQ >ےK:S^ˈMDB0sA%*)1 lkj{aZ.T鸈 bEI#2'b"by[u54UO0j8ƖJfZ Sh951>!Xu%9)AYVA Mqp~48p/(2}dT]Copd?W.uـ ӈtd; !؟}*rۉedlΡBRkd^"f3W,t$3gڻe ΍#0a_VKk\; ǫb1Kɺ$xfLdE'*lk/|N>OGB #/Tp\W0[MѠ$_ U`5v%f }]OzW0.{> 4;`|TWhvk udhfx[ V ,yar*sY#L{q->(6]F ;Q<ZʎΟBc}S2n'BMFA^Mj5a0Ph÷T;5 P}[΋.hfʁܴGK.k¹x@^0Ta9(6v ц$m˪eX&ۃqR6[x(ݍl.^MV~W3o麌jwp$ZBő[TLV\52eЃ^G2%^E~y ΢Q_'iާA88GTM^d`S,uDpn ث*G{yk4)^B2 qߘ'w5Ο*\Vʉ9|\ēP05ޫqI,44No!\ YB!!%7,ZA~_ xMTD`>_خTIuSaryo Vl %4e8춋uJ3EFdb)|^xbG(0rŐ+΢F%vlԬ86nE;|Ŋ\K˓&DX} x ̛8b֡wm>''oidJgQzNi=u2r+]9ɨ;}G]@Tk+63K \RBlr5T2VԬՑ4WDRvSnќ9;0ALpJ-s'X&Zʄ:מؕ;hU=:ޞ@ZNnNWU/Tɧ_J4ʢ xzw@_pNA7/ЕY&Bc㜋D`?'^ LzitXX/qٶ'{Xc- ы*}8$:RSӪvtЍGX'W"z+! y6d\0坵 ͎[T+B OEiC5[[8S hrwUOR@^43`aAxGQiR(WzƐL0dʞ#}hP`XB5xq 7Ax4pO yKQiզU 歆P}X?mkOvxI3/s@lD(f0M"٘taP~&d#Ji;ogM<ȩAT2h+<^ؽTsP-܅VXJ:؋ k VTHlۄQ@&d߲+ SIC qy=m5؃yp9Q:ɄD*z#L4~ k>ڶcAeh{ FVrIh:Tm??7ԔJN{-5g'S"*%\ODTB y8 JQ`+?D)5Tq)db,]O?Rtܩ;*)ZzWBO5(GȠbE!{M$=#6b'Y hbڪ kp\KkL>jЄ*;zqT$p.x$cUcs$QFH|4֞c<!Ė弇 uogLW'04FDGDkFcS6B<:Qy끄k\L[an@q~JTPrSZPaRr|ViqÜYp6'S! BzN(p>d؄F) *Puf^*_ߵG0>;(buEzxEk7pF4% i0;y!G2S8ka >@g w@{GJ L7]YЯ%ZB_)ҎVbAhrz'b>w0[]&zjpH; C|j TYDoC܀1Ubld"u!&1޶:͕{;- UEv4r1$"B0Ǩ@{o/w+eJM-j)nkW4q2&L3ዮf~ؔsK+O &@+܊<FЫ{e3RیnNThv^l7\Vp}QjXO0}#ѶI;x*H!j jiw,:cyBmicmN:qj^msxBZˑ(N^S}; ˥w"sR-$np<]}x@`U:`/cȅ%2\>T*u8 /$zfYˌ{1%M%BpHUSo23 ãO<lTe%Qc9$2w<*-f M0 h>QYO.%a}'L(=.ϫ febP9x}mM$zlwȡGٍK3"JCF? :ПJ )ht؂ssoWԺB7 rBJ[ś;tU5S,]9]E!|p''wlW7nfWte_h@UIxLdtU`Qy&m ґuKV&7+eOw9GO~ #f,RCeId 6??}$2O"۝ro4r k3\D?DU#B.UtWht&Cdr[J)&2 &KڼPb9OrW2߽۠Q#.0/4)˻,Sr:yxIۃ뾷j\PfʟDIR?L՝oh"[j@-4/m$_hj'5_"IՑVW2/ˤ2Tr8v_ e*>l㍺-4Lusvvm 9ԙ b"Lz Yn9f.Ws1\);M_$呺J{>FyC~9wtw/Z_3v%\pL("yj% OwVx k[f;lN 3t.Fu% VDe&SVDŽÕaGIEd08\ȶ- .3w6:}E5y1q{Cnd%gvݕ8s™>0P<+\@GXFF*ޣ~sM&,>nUǸ|pc7xP83o 8IqZmH5K \V.[y]);R'rT| "VyWHS^M챮9$\oh"ٽ-?WVl~X)tZdz-N4H;;^{G𞖽֟ʪ_4&mSI`w>&O2EKؒlpu84HoйcFS8B[AMFGQp2Ȗ&Р);qGu8x^wWQ6U-0~iܜa38IV&۳^]._^%To}zBအ+ 4.-{ [23 9\q "l1SuWj4޽b8} ֡5 fPD-FwK(=4}^UL!|"|%TV$7 E|#XH%^3wYL=}_H/&Itt aiK;9E>濦dl_{,9 㺯_ eg4a0S|w!%&9۰=fr`B%E4d\a1;2g wZ),+F_ s8Dmba2edA@< аRA{|r'g7қG060B}[Dxb>e}FDE2nsRTZ"\!ºax_ Pe=''1B!32MXJn8,d'gvͽ 8H'/!4~pLaG+Ο̪0b@zj)T ĤnIb7|W58S @_api7U/ag|ś YCH[_Y2yÉ-y|. HզPx ÃH띹v(D sRصMZhs6ڨ'-#[|"fEB~< C,3O\GS ĹJsouIwAmP] q=x"T$cQWNݚ촑QN\# qvN?44CxXxdڼ”5GMRyw+qo3 uVN^b& B9w",vvwevO"[[f(V`L5CU3$Ջ)+F_@`Efqu)(%LB'0'B%T7ќ5Hy9m"jZzr,sp\VbHr ϳ\qT8ڼӫ4v@sIJRUPV<&)t6}籿Թ7wpP& 63 s`CΗw'pO{=55둬]d35xNF!Gz(1ͼ`R2<(oU13qI+٦iıuUŹKbًa0{P bso ar" ڙo6"VyIԄY;r0yT+ONqlR,NxLu" s5v(8B5.>%εr,=ך90yr`PhϢA#Gϔ&0\zI2AqsOQf;+\Iqk&Ùy4kYѐ=6)ls/Md < Pcʤdc4((8d C+xH77X" hr&]L_|)L .HQ)ܥ:?:;cNklBXL75g+Q넻/8r,ϐ=1Y^ OCTQ d}T5 -ԙs<"H.w{E < rk^;m!\pE l$GBB"i+ eFA3uC@-+   oנRD%l7$! &oÆ;S`K;A> dhp嶘p+m:<&䭩h_JFGL,R'$"V Ҋaa;3{41dJeG(_L__Bù<q[߁^TG-sx|ØhjW_t%WayRG#IQ*~rQBű{yS PjRjjh|_Iyj[?V#ZtVЍhRƻܙLVcD^HZZNf_N! oTЭ!zYt\;Y pPf2Y'( Oޓpк]4}j}LCB9=Es#Z+|IK=*&ʡ_g?Z ,Vggrk&d3u-Tލdt3z5.OF`m"tå- j0-0պ:JuL6ė.m1h}6EX!_U*>PMCPSd͘xPI\hL V,xa=}=YA_5Vhs;~Y┍{{!6< 0 4sr~; FNl$E$iypeHEI>VSDyALJ*7&R:"*#!FHܣQZ, iS! <\_p{y3-QR`u9>Gh%p/4`_ e]AQ?GQ 8U7sA.;uJSZ>w6t=ovzG;l\"$7e:Cƍ$ 7TMiիzI嘪&*g ݣl0EGw!૫P&6% 1Gh[ !I0Ww9цf#BR8w^Vy҂,1zW)%Jwl3F t/Us[]o/v!ZW%=7B"*%\t8ӲQ oՉVUlbeèKGFZ48_CUX!Өwy. !H]wT"xR[UQc s~6pcpY1zTSHv^AQx֔)Z^2qJ ~IlS[swX JJ2 ?Mڱ`Xlr@u2v1߄(@=\$coqCJ{_1"WEAS@v&k 7S`.yXjޫjt5eT|QE('rdx|t>&={HMg>@? ,bj'চE 0}^j1ò)%0OH^t%1 ЇN lo%@OT; lOWakԲKP_?cj|=X+>1LQUç3g'jH%;.>>"s2ݣTc+laMP%',&={lBf Խc{9L44bxoٖU4XЄ.cR^̺2D3WXȪhNmPOZeHJH\5M(01@hE{i4k&eFyCfWs0CÉ@K&HD?~LovճJh 3âX/;]s/85BFar5Of_Ӟ^ɥ`v!1g a^USؑ }zFrmCTYbE?K s=WF""Z>f$}v`F{q!w֌h#FWt'س_kAigqQ&*feJfr*N`o)Pǝ\Jzg-3od;ݛv*ޥ8^iu*r-M'ɇAn}\A|sf_Fw`PmH< #7hUu nH{"+s=8H" Φ0U|X Db Tq^3ӛN jHexz|'q"qi51~=,ԗ5)J`)Ѿet&Xhɗ;\)L!|*^"]z\jhI\0p1UTc[zιRZ$. 8r3yМmRavE'YidrfҾIp@GX(%hzk%Ԇ|R KzjmƵ& |,5L`hРfڽAPI=W8?;9\fTyQ-fd@d4$j3|߀]-ژDmeQ-h!Ja r*qu^M~M;Z+QݤwBj=;ǖ{/b7Lg+=}b&b<#AbRpV,^@ ]1W :  2(+Gj% QK&rӓFʕNyٲ`:$\3t BOs g3?wRvμuyw1~O0JYW!¹ <  z͂#WÖIhN`~ ;*DIBazGb' ci;C :;Gq D96ͽ22$h kUFF659߷WuF4g #i d n/dQI,B_ŌX (0 B].wb%^U/ʕ&-ҿ[`_qG@ar!m a|Ţ:$nK\j?5Ael|YpC7+Mt_T^!u;t9e.#XjJ^Oaǃa J::2SX70H蛛.Nvh>ݦee S@'wV 1= mq?~:AYM ]o^gے|XX:Hy3 l%="FڠF>يphIKNnІOȲ* qE+A5ȦG2? !\^ C.ch{yo(٭X:x45*\ i(-]'Xx ~q".@]/#*[0HvX[0aejL~LM6z% lU3EMu)Z~E1SsrNfS PmpR v!x@LaI Gmր@;"lϿt .I OIxi.Upk}M*/ n}*?P=_. O]&ZOm )"ԁvdzUK~2)9N&6PwLh:K ܱ+~ bCZC,7?̥%\ ?݂iyH hHa 82Nnk'E]qڬ>S\fB n}b g(rOmQ h'5l>YFmyN^aY><3Sj(Bi$vp[wNΕ"X2 gI{,(<˻˃( x\2dwKFgѪIѴh+ujiы B)?kGI Y /&,;G%U8HM_[m);:I{)Op:E  U gy,r&Au e8-Dd=D :԰Ϙ݃ujf9[8.{= g WZhԝ1Av=dhL_qS*C5K3)πvb+iQ $ֆf3t'%Xp&_U%*RJw-&F }js)&njbUyc|7CrIZNOL[yØ>6ތUy`Sdj hqj5ƒv,o/5[fwRvf2$7WsSP(©zAzZ/TD !X++YH>kztYMkB>3z E+Bw&}1aB*1 GB*jk쇱|f'A8 =2:LR'Wv-'0{8@K*nhӋ!Q0w7Dqfj>rWogl !0@16חJ7O`|Be)&Ck)hkanAw%Cnrsoj/:]e q0i"\ \z?қUJ -,k'ķf.᱔(xU- (Yb#q:!mD3Adrwo'h7W'˅"U|jow};IE1svخGQ}/mLzp~||,;;0.CaÖ0"6i7?֒5bxy߾~KҐ`iS^¬oPah>#EzF8A?B7&$/ix6MلW K#2[gFdbCw MK-KVjg'y T= ն5IM1Rېx5,CLj!䧨(Xҩ9 cS6 8Q4}e@*u,A:(PVN[;̔!!(jCf? G " 7QuS+fa9{prh$H .Q1a[ezȘ~~oTThgrp[R^Mklƻ%rus$.fo!ނVs&FA)omX&\ #~jlQP!٢>R(g/ICE5ȢGZcR촋L-&R l/ln ~ML4̩GtsBQ} Ozzర^@5~hXC(aK70r1P!hZw< WKpjNuJߦ3Vu"*9I'`\-  H0s`P轐l=F%vexJy~ѐaXb$OGoc~C*~3et]Y"ܒW֟PB#(wX *265~ip (TIi=t/(篟)} /~i:es- xtUiL OD*#f#9F*Y ҭMuOZ Wm`)ɦRy);:4>H&&OTʕJ<%C+$5OyF`o3ia\W>'("R'kN c|`_Z-c8,aJ%3[Y3Ȝ[dt/XX.UʅXu`NLj#cG#.u ~,|qLhQ$0C*D԰4f\\*F}>QCF 3e5LD a%>{y& GH(,I`>g`k_VlQNOL1I & 2vǓERRNsOS{\1^.:.NMD{Dxufl '4x|579(4LK.ػL?d"2 l! BU{uc{X%iuHĦ>_SE'm=Cj E(֑::By>gݣm~AΓGBEus3^bElYC#w˻Zd5` [R{oƴ;$M_KMn؎[g&;E?h̪uާ$^i׸]Btv/!5ޛ}g{t<#sa?N QAtXw'KSp±Jq&5Pԏ7@f,:݋ޛXHdQ=`--"" 7bcaoG6ܷAx36zAϒנ ڕ?"$5y%`' S&$.xxKm)M*ֆ{I3(c1۝¦,8 X X !J2qf:v6! xJp,DJ/E U"@+Kc{ pB|VZY豰Hl,5KR [IvTF<wD#0P1$K_(Z=IUᣞdfo-Ͼ&0VIpO}'VͦK$i`3GT`@[2:O +eQI9:բ!޷Ceuf !ӣn)u]'C(tQ|%E 4tΞȑ'iNJfd+.Uq< ~ )fDiǰ`_T6g(%!!9b􇷺vq#& ҙK{1jrN\ DMN& a ^u:g})R6@Z QZoO;V6> G\z^6(ZtWK`RN̔߀HFe#8VN(]9qr@EP c97k):=ɃpgЎ8ޙ|" 'hz'R͒.)9l$F,z4 ^n Y9K$&KdǺ+n۷41,a%īD.:XH`Os62U4fs*wd#xb2<&skf0 #c4L $ȼ/qE_&4li,%vC^aSù=q/r1Bgq2XNCM1X'-uj.T?2Ż@_Kj|6Di 08Q CSmR ג#.OʱϩOx)mf&F]9~ђav1M"Eä/o I BOްLa8s"/;BWӈq8]bf{V%+rGR#÷E߬6s.~|7D['vdMFȆƖc%GAŧhq[̀kӀSa^W |<', AlGq>0NR: җ<ŨQlii SWtt$vkSltN瓆|~h|~T%.H8 GڒCx= PW>?mpI*X $SoH.N&Rj1T3(Qz?DBq۹pA 8gI+Iыrdܬ[RTțpBВ)De{)ɥ@m*)#cu׵cl#` +_#dzMs{ڴg~7mDT#ݚzt8;B0>Y>@*ʮγ's=QB^Ljew+C-sgX\8͘gJ~얲50|?FNUfqʟSx4Ŵۓ/fFw I ,fx $vXKN`>[S)"͟eyvfIp-XJZ5,JqX9kTQ@?/ ^StSI69d̏|f_VJLC1YѧLǢ vRXGXiĝ@@嘠~/|)LrRHmu2>V؊uP? Tՙ1qMz1k=ߞfq5gW&@E-k{'nZ޻NJ L׵VASqL/ $XT΄ो-kȤБ 'h|ƅd/7H~4ABg|X(P X `.K*6cF͸qN+Oe9뫢Bl3af1x:S~1UjxO|aw_J)N_$՚NR^NleYQI) t7݉oͻj_*e&ü<V.)OM}KԷ<^lA.WrNa(|vQC-ገxfS#G wPRЎײmen8QrBchރDVugrD(BX8!@w m̲qu;܌<5k2IjG(45TQlnͯ^]*@ 'XSߤGŶXZݩq.37'z/h!{(+ 쯰 i?ݓ~K%`]Be<'9C[x9OK[ W=XFI=3 ,tչ*|Y]3RdlϹ-BcpLJ?cbþ*7jU WO"6&边 ѠS*$e^Il1LtD~1-9nK( wjӞB!{X:>: f"b׳GH Z@Js K?S0->׮&dg23goֱB1bOT\7FEvs˄H4-ctɱ@W(g-WljC%4;o9-SgBԔ='L-<[H 9uONձv {"o߆w_ghO(*ݷ4|Cbr~,$XV́UB ^7)A+gt9jŨ[ɲURj!=k= #),9K~7$)Kw$+֌nv_=8x< 5q71j:L}4BXr:_gY=ZZa+b"`ףa߱É-IlwQB9yݑC͡_D/vɁIɯ,Hߟ݀!I $Fs̿2$@bF%Y Kp^ػ\bpp7 D7oU%Tib"hrA|LWZ&0WĥX)Qv2J [n&@Ⲯ8'豍` S]-b.3m6O2[_Egt hmN;_$v2 S,Ti)H~MbRe&Ц4GV{2(7bl8 ?<ZP=br¥1n\{~B_mq cGI{:'^@myɓ8*&m_sXW'P['Sσ*4|nh$AqiFنS"ZaU/X2-kYa,h {,֩56f,ӁD1?$@Nc:V%0O )vYq| 4w~}yWCӖ;Ķ)zzxyԿ1W?(%FgP* dhUW°r럫V:U[9ütP f`awpkث9ZTyT4HHοKvΐ@5pgR9 %?N^oyff_x6]q<ڡI/Y.gY%lUs7q5lķŬLݔx8⁂iTcNEU$-#s*XSLq՜ K\e v6:sN lp:we46X_mL!lGL.í䅇ZV mцޣI:d z#;ϒV`@#UCbɩI|>FS I!FZxD":KNJ?{o cuZXf6Quݟi@` k/yB,Vzy|fL1ɻ6pf~%R[Tn =s m/i>QeL*H 935MQAtP6M Ǖٴ#vE AmE n9G|^~$snwu;{ҌAكkJ.~-t<n+Tc ÉVlnpCyg3ϮU!G\G/Z-\th/2뢕LԡA?M7WOD $*"C8f9]bA:c/kaCi{*G[s}4ajN RP) [RVsY$@WqfH) er y)ĩ(ߖQOri*=*y$1|˟NRV"_>|B\pHklk=Ü6L Sħ8ZbVc9c+*{_a.7]so -S]aBZm}}wRG'.lMV l'RSC<U*nw,Bi`lCe,,rYZ6A4 qֳEؙ1xma|oʽϦtO8 ;Y5fH \P%e%ASf|)T܋-/G^yXқv;$k%JGﮐ|o:pJGk.V 8ۡAIw:-} U@%5s4 pؿvعLk8K;) yVf9"脷XٱRAd&! ުl,[,r&}..63-zg0`"-e ]SFE#5تe< jF܈~d^S8#*ۢyHmFӯ֝%ruА |LE^q}cX߅k}Wg~))RT_p#X\F7WN6j-T C+A"9S9itp& 9P"QBKw,cRR9Z|7"_h<޹~ǰ1bӕ nRO:ہ1_$7 ܸ-RP+U;Ȟ] ".Y86K;֡VgPQw/C\z9eAXTB_ btCNg܌N_A$f*uY?r|{v=7U(s ,IZJp*Lkէ~8؜μeLOq}DrQPF@ ,ѥZA-?4 w9r;F\`h=nflBynvcշ=@1ק̟9!n% |Eib 05.rBF^p_%^xk #$J}$X4PHpC„eMGSݵB4wG5 u8~ "j?dm5!{XG*y3u{ Ƈ2+bHO<,۶VfABdejx=|c`@$* )!k<2%ր0Жp]vJuw0^lxvV)`_/W}Iɬ2̈4k 3ͳo=,ZINƧ[]F31yXY!qM.)m1X^CM\#tF捩 %u)=H-JRCUifM. 0%1 dF̐9d71OR! =1ىקd)1J.܁Up 2rZsw6GT%^[0Gs'K؋.*h:j"Hu^BN+璹@3Hj'*P?W*s^lq\w A̜RTj8f]45)8m;)+rpl,X*Ma{fi⠒eR9&ٱ&8쟘")b$Q{-]Ž pP.< ^*%p>FtN =[v12ɘ~+TKcb4xep*@"_|OXxeb k7 [sko&D5|$L4w=Lq~jͷɊ &[l=6gl.O7I~wrC ԣp9 ?eH٦0q <GC <㤼OӋ@P*B,Tf !9W@B8ri»~;"-G:btqdSpwJ <گOehRUc>{݈I&n>3`~_p|?fLt}V8SXdTERy:;&2cru$<17jmϯ"k}6QQ }6@Y?*l: ,J0(`r+$|^`9ˠoCE˧~罚ê*ԏpN xNtv-6{+7#8턄V|07^p2ZI?X7T~No%¬p}`1>A&5xKBd[r{%jc- z1A8;G^DP֞S s~jJjEeF.WVMKh\:5_l#vs@#qb Y$\0תZ"t[;Az-31C,ݩȘLK6ʿ;%mh]HRIށ&j>R:N*0 &J^>Z;+@ X fgf+1.Z0?ZEnqOȴkJ EyUjf8J{?#+2uBa _>< ~:ճ PnP!U_@9a@LFs!:;D+>nfZV *VM)@[h+! f rC#VUFz݈ers UPi_|D}`<Ε[O7x; 6С'GRY &rѨ62Vme<Bc\tEGXIBO\q-Z/EZd Ê$ց@iCpk>a ._X{1_.0dz<; \5-~n=j7u=y,#'9րqh".2! M* Ó Ugo}l`%RL$.WPc"V9t"Y|yהfe탡JynJ@-iNK+o]ei ݿK k]Ͳ>OQ*ucqVZT@aY@0dݑNί(!oQj.@MLaLcӘE_?G52c䌂YeHI5)L[N~µ8 R*\Fy!3gPR6SpUĞSKk;T>LxySM hxm<;KWmWt=;~ֹȟo)sU"PM >b~8kV.RtD9o`ߢdpK7n3U3 )yG ~lT{(ڣʱ]L i]pєnS[~]٫vh\ 1u 8(u'Mk#9c^ӷY('p蟔D2B^7$Tiq2aY w=f!6OO>-KFh1^N3 bڟv@ˁP{ƨ{3%w6'TL!` Pc@i +[3v"Uhx,) NvJ4BM8h :(fϔBXl;D,zZ¶x{ *V9.=#ʹT>RL/l!j bG6y1qnH.I<\uY˱ඵZ(ҙ;41\ X (#9kDŅX]KDWHLAMz-j(AHF93Wwc%o~L9,0ّͧ7gN$Ѫk.>5݅A"PiNsک&%M,DeA+#nTԫ q~}WB)}J X2z@g!mF8{`)D<2)Tsq i~N,v9^R{8+.,ŗKh(D͚40wHY\ð0ѻ5j[Xs.hp/ w(&,.`l ~)p[]|V S~MՄZpqL0HhOkjs+y~ijCY-,? ~5jQV:NK gw)$=D:.Y:TU ˘q[xrl6# Qm7w<"ZЪD4x|wS kjWʀ uxYW5(SyC͢֍%lwASSYZ>!ut0Ұi?QIJV $:X}ꊠ{Ww/Sd!,dYiI5u;@)ņNKN*т8ÿ)=8{&-u x O&{U9v/ghY7z+zjU*ap- {5݆!^TFe2Ǿۦ@tyw=v.OsVuӛE&!{'7Bq Px Btrm\X ZBV'n\vH]B.J8YuT9+ WoikL*Tp[^Kvj%z;lU.h¼4[ekA\W,W#\1J ,tMʔrR{# eңLWQFd# TChӚ~Sdmo$-.Sfi]/W@%2yF# Pr|;jpOKz7g lc-Ce7%2btT&E yѵY@EF̺T PUD z *SttG FOV{]!(`*Er8ЏV+"qxP,W4-=4k7:YӴ= 7 EHnR_PHD"oSF;Sݐq'͊l^V vؖ]wqjhS YLCU 쪗3z]xtH^27 8B;a$Bqo Th(΍Gq,;%L0„\K< EGxҿ-8 (|Bi{'1Hu&x)jOښ1F\ .<jw{TW$<煜LWOZvRD`,foxf*bXoxI9E. gMY!ݣpv8m]6uNԐP`1oA\lElr TwI r:| m#?[ԫЭv,b e7ɹ1mMz.ptm@ll?TFAg yQ_*JeQisSfAWKͪkhM3qaŢT,?k\j}JZuf.SkwtO\FO([V:[P_Bf aڐmQܰ )'mSW`Z%F W*ڢE2ּuKWIϹ#2S`X/6 .Lr?ܖL'M#L:nV|K5&ȓjHE O/zn GC|q:j]"R]R.rX3YeD-1TB.' 컖Njh01 hi4'e b\O/HƼ_GQ8ԧ'A`傍:N |ʣ zNi†x +y"~C"EbRV,0ƓV:ݨʥOKruvv¦#O@]i/7M[8"#l U1N`! PuFJ>^k0g|A6ދM$3:J;N'/2xMoavnH FQp]ڞ2nD$}fZ5rfY'(4 8/;F&bUm֏ìĜE+cbT{9~4Goz\F OOS#&W<؜fɵQ$c9V 낇2za[{ffҼ4VxGW\(p7ʭ]JS%@ hED~k!5xP;ᘷpS_*mi9G?9|&2WtʖF<SZ)i4E/PsJ!/ VV.zD$_^ "TTK2p&LV2;-8Ț W8xoRW/bjh8pCv]@:f!iFJB9i / c?/xZ$4?f'[Ȝr$~OdDt)9V l(r1kKKVcrP 2kg?s!Y>7ۯ+oQB]݀"s=-dڿ6.%EDntî S Ł[qBEu)ѤK Ёj#ƘWl8\8ЯKn`Zܑخ^HI߾ݍqVn{C_<4T WKQW^~'S፟vr"Ddx:Lҩºd3g)4G S:Lg TXG.9I;J28lp%Mnjw5;Z D3hڼ8ZxN[vV?zϏVR CzEmVop%?d_v-ߥ?—yBmH5¬WĪ ێgIy:uxp=,LܰSyh`PQ?yp/J[kDT@|QEpa..HtA(t=1wc[G ?'YYs>aFf9{^+g?h!K×i06moi'i eoLhT]9Zi}zW=v0K200qFhQAj.ΠwzT%ϦՍ뱗7$:HbR_ίÎy0=<@ #Wf 1!q@=lD'nqsPGUyk{cvL-~Z0>TŞJ z^\ ].psg)ӮZ`U@mA[Z3Hm,~`QG3>Q2AKv(=h߉1{ Kpx 7KcOhw,ۛ~@U4|#1ܯOjPڐr~o Kkւ7O|4e U }p)4f?LY è? *pe^u?OQ3ͻuq%{;@ILO> G G3Ux6~a 5 FZ%)★'>J97 Y\%\5oRX:U*Fm%!v^@hF[TfXokpP}M쌯W#-49vrl{1$K[i YT߻ y2Tx׵a@E*˨SX* -`  !#<۾^枇 _MĪp|+_ntؤW,(#HȆB<[!RdEU}z"[u[xcp^st>%Og{M>T'jO\N:q-Pw,%vKTEVoޑ;5P.${2ʽ9qoE1Z<݇A >@M:o+BNhlc`8ޤt9=/3݉{qz$6E1eEBF->oc~|Io7, /8zج{32jgm}=Nޥ!sRnʁFYYnJ1u{aS7I/TaV:oFWUoǟ*V\'섔6kbH`269Zw<q]b)#E(s>1*s=m:.4.ޠtHoӗlՓKkPϑ Fp!q˴fe- /䈊3L{2:'Aakw āooA7F4ېrvcJFKs'wz|3#+๠6ӳI͊w;۪+5}lKБzܮ쟙&ݵuv:!OٔvgT;f<`&*]^ !'ME)YwU+U8ョ5~4y}o=?E` $_ JTzl^$\W·6btD7řon廈|OTa;PaلWZb\R2/u8'X_MKoװ=E5+z4NnKD\*wQzI#h/8;[c) ̏6A)Qp{]Uӷp Jeē,@/a9= >_7t gʵӝoG.͙QNO]58ilu:{&)co9FLbD5﫩SDnds9 XjԛJKI hT| =|km&X-$rVɬ~L/WY50-AfYЍuIUnU <0VV}~"c-oζ3ݾkdW5a8[APRԍO}C$}-")c\9kj?S@G[@h s#a9,\ׇ)TImTK W5'wTM"WY§2RwR7B;['U!Cp_ĂEE,gMﰽ?8+DZx >4Bl &^i%Q`~sn8m4D(>pJ˻9iwjhoa;rZ7]}(RwxKRXl'o Y`SaZ(`1~Yyta=WH+OJNȹ19*`+~, φ6UU+DQ.sSn=Q)* Omۡ5\ka9ޑ loNYͱ2yf'?* JzB7Ej*v]YoJq|~uA~ɇǧWYGVmD|fHDь8c (s9Z*r '<~o3GI1N72HY6h:8}^yJ^Hg hf”GPia`h #fB &Q$а8a{:y>-ѵ2FQ& VŞ%ʚygDHJb [J12|˽|kBpBL;C @ a=zufU]599,k1Y+ 7⬟ ^Sϱ- eN7 ZC/\g;5z\/7bEvξ*mni oº[$YSr df:F2B :u%6ĭ(nvCDA9M*8`X FV0$clUxCTbh=+bRQ;ݮSh~m"0޻5'#x m=W\JKYIg,he!PqcPS`cWbuOSbwx+7ע ?-q"!o w P:~eцk((Z+Sy}R|pXV[I-:-)Ox:knLc/&ABTD{to42Y]G]q5jnJʑ;al{CRw.xt,C*VEܘR"X}$+TcofkV:fAPd.$R3{ƚqԼյlHRLg,}FtFCcְrd0k'_Wt?U!~+èk4Y/>rVm;;d. *~dQHHw@T/ZK7cqqQi-GhRC~;L;t^ ;mT)|o`?lS[UUV٪xܑh]V=.\?nZ:3sG!h#i|B6UXvTPQ9-U)E`),RʮP6[ :6dn`)"Χ9.hg`9 -9?̏SPHV ,B*7%ǃꑥWnhzļ%G48_w0KPj55UmA?Qxm84X_SQܑ5E^P_nЍUcӬ^v\[P3lrCy /w^eU/7aUvӀYnR?antl@Rv(HN! `K@P!T bhSsF[ g #qPI SeE>qzD|Gpz@!گ ̀("ù*B /R;C-ؼ ]yDbţJ ؆" hh>z:KK'Iua਩!hr Dٖvxk2gthk$jں1/atR\͡Aa$;PӢT (M* G"%H1-C=8}w$Dr-xS8IVn\a(k5ڱZd ɼ>*!8U\Il8\]]5z4/| ;jϏqVm8`;HaPDOR䇬Pݸ;^U>WDpRB{ pC/cm7~ I=7( `ۅ٣{ Ap}:G)|vIM^+-oAІ\mXzT(tj`C3[ф_n &b@~i< $7;uZE};WD[:[mtex)H^ ?+mٿ%(AVG 0N)ŵZ$*y+ YXכ7pc;:JЭE4 %D񡆗HxiyPiݲ4nEHC;c]{rT-b8!R1ͻ)-Qޝ͋~²q:¥llJE0bCY,Cs{%t5(lϲAL3x\gĥXZpkz͂^T z|SS",I)1D*r1E:wqw,s:-i.$Ίyk'88 N8Xjm CQFxNGR4Œ|]Rg&ІHhnn.G3Uυ !S⪐Bt ZII ȷJJGޅn\hχs,˿HǐxҠvillt+ɠ7bERUxBw|I20S $ 5Tm֣eDws_{A >9e8X(Lp^?A"ƧO&4a o 5y<qBU{zEm5Sp%s3'Io4; #!{pBx4Epr:6NҫSiwe#0cR,{t["$ʺ6$<J`[Jt)[. [sÚÚ偗We[ )c3IЍrnUqSl}FIg,) KUuI{KⲟcR&b2%9ir& ))sy}㬐r]Ԣu/&_4Χ3I]g \ސJ}ˑu;]`46‘pV^xo߽_N+$kR!֑'ujӴ>΀!M m'ahh \! {F SvP)c-xz'RLcE\% #QpLa[Pf-Y lTc+ktvM<XW6)ɜX0+%A?9{lRР@2 LBSMev` -x3l=8 14M~BAwa6?P6w#р|\&Jը*я='UC^HSFHb+3%QCj0k-˫[ܰ*7P%j+d#Xonn{h]/m vS7^ẲpMT&@SɸkGeFA`] &qfziS|vBQQHM<zΘJ|PV!΅gv^ѳGQuyg dp:+rZC1?fvfЎ!.#3;BIBCF4X< nrmM#F^kZ>ۉ\uU *TǸt7d:ݶ|(#!+1e[FV1u+FkpOSe"_kX$7_Z+}!9XQ~ҕZS62E!&qHtXgb]i,Z+^ CB?SM3V[YG=mL&k=8tBu'桾>xBۤr#a3#Hn)gK?ᠹ^./B5\UfhttpWD+P11?/k{p'(gۢ 0S:Q~_W.2E-[>)BЏڬO4Ӎ=-^,U#xm&oVo9pnc϶p L 48銉GC]9yleԊZf݉q]eqD.ivU}|c`H;IQ}IB1D'v5G&r^6\2-숬(٧w(^Z>yqHgng}/:_{2le[!z;044 OCߜ1D} gJ)N `ÄQAQ|;^,7 )^1 ʮ=_Sɺ8Tl0Lz a70⛍O2|p6@,"z~72`B&VGeT3hWJ/"u"-`cwd&yYDP0L-Ȧ&x3s ;2xọE}{a@!\g=Su& ήmܷcڽeAtn6XQpb1y{8p8t6"~UJ6 ~ ˿_, 7t_` dgLÎhH׾C BvyqCȉvx_j.Gf&\`SQ"_1$(ǩs\VvTcvbI=i@OT j^4c U|ᷤR%54h*gaxeY2j?a~5nKV&C"XyHR:KqF~d % s-7Ēm,1 (њH %͸;o{).7]vrO(O3-yTtDx<+^T9'@JeSTB.7^)8aeU=ۚ j_Gw) 9I~GB *J3x Cӟ\񮺹c_CF6̉E rGߎWkVn6` aʕ 3 fu6v~Y,~u=g\ 1x{WtQ]@䰠:1--q6 >IA Gt͢}CՄq`蓷D9^Ss=T1ء&1̂zf`\xTd|PUE֗L9-j=tBKhԥc?sZ0f-U a6 ߌL\Ac}waNJCJ-a"v?{(8ESu{e`+r2ri_{4}g?Nle\p̭g9OјAPGыPj ! =G]&MW8# v-"(!2=zF_>ndI!a`'Yζ!ۀBm|MLɴ4G_xʻMLj탈ozVU(¦+`60x*u92_np\N\߃MQJz9{|QF;ɂNӬ3J#) S}2F_4M|FhU?tQI&ws` m|V T z=D@)g#cfƤ.YJ;IlÝbbIĪd89X&_;IUmu@?dRMtR7sl锌5F^*_KWς$?&ͻɗKZR~fVpkќbE}RGQ+jy{9|43gJFi9A=8LghhȮԃOa~ z]~owkح C־ ZĐGNrSL/(ዘ:@BllםLk"G1e #q"5i86^*cfCu=*Rk80ٿ1eB'/~M!oƾ1L"vb%hʤ-xޫhU{A48yrۅ{))Zq%$a4]!rY8$8g~> kdxZԎhjd,\Z)ȥL dA6rfi+ƶ<]ֵ.=L-!ry5%Ѿ99VYe0tcB.}cZY@E*ڇ^\5E qhcuРyՔ{ÅH\Ez|MA랞y|^ahy'v4wD~a?z ]¸D@ @8\$L$Pҭd܌Ѡ:+D,7]pO:־6Ah@b|K>|z-`ㇾ%I`cd= j&zm S2*wqBzvqHo \ 2SFNu r/Z5)#u Zz,]dǣp\4%ӳuJ0ȸM(أCݬ>ԝǂkr`&"`S} kRJ bܿLz[#F.vi_6^T4'!mA{^CV&H,ݬ,H\xy 2J.Z5geF9W-#Q*&),ʶn/z&Ʊb$Pd'#Y>׼CIj.YagyP4%'ݞ`+?ԁ !WQ-x xҵЏO&SU#%{!DRI'ZB~f[~"8 OW}$HROTM#OxK0ܕ" ݅4fcyYsV QcLOv\RsCyVDP!tȀ|>FaG]e[`ͱ%%*w[B˸OZ/Gm]'ލS8; w[6.-Qqp2~\2/(#*OKn[݌ԑEHEB?3)~q LVoVJ[ߔkVX 704s9B'bi)\p|fD'Љc ߅ԡTpE [2AJ3#wh% :RA8 n,/ᖣ8jiՏJc9Ĕ4ta0>(mJh i ݑGkq|?'7p bc._GbN]%`ci8a`ؗ39sN~i4(QOB[9lqR}?w K.HYsNXCg3$$ \4"jy%R& ,x{q$e=9[l> Tц2,whlIp?ZvH7t}4R|Lp4v`d0OC4|2D&dكԩ)>%GSmQΟ+ͯ*+}8Oٽw$ɧO8fiѬ>/|ؘ1;iV 7EFPX[c}>\uzPq gMm5%)dj(* }_$FOY!ڪ,Δ9tbDU^ \w2$)8v3]9Ӧ: =44hȃԩoD!\Dq|pW $ucBqP—ZG8+.0Y^J,%~Ps ngޡ|ߚK,/Q7lL')%{+B%l]{17tޥѕ3m1gIEO̍=%Eek䷧0xHXZjdhǁ!yE%P7UiLa3éo+\qMHPVB)LMF1 S^!rJ2 PAZ`ӣ*>  0 D!Osz"kP/{Lp Yxe5 C>RWZ.S$qDkf Xx 0q@}2Fe>;)daE#ԽK[#Dv2CjL MhCkhuN+񽛟˃tXk1ry?( M|r c氕T'uuuc/*95-mXu-:.9ӨMR>;=Jw|y+yZaI{H(ڐZK͎$<5"D|baPL ho pnHC/;w2k`5zO.Iݷ'6%V9bJG+ʌiԐ6 ǪlƢo~lG5GU0V*s:*Ko}p\Lٳ˱pU C2$ߏdlص=;DV 'a^%ܣA4gp$*\e&63#Uj]-}ntՠ/`zS|!~m3kwFjвD Ye r5! <êGQ-S\r;7߰ N2Fz*BoKEKM_s^r(HQ)\E[LYnJyqH" { +g?mNc-EUoG\ z4+Ulr7E@;xkrc]x \̒7>lW,ڨ7>MHn}bkX%KZsl"5U xĬt!d{=$+FHL+Ѫ W1S~0λ<Es@Lxhp_]s:e+z vrl3W̳MBW'̄kAEOQ7V ?.aEJU3 ߜ$mG3˴\,#]UxwtCYfH3&yEL ~0s8w"$$׆TA@9sWUm<%Lp[1$:_z/<>:/I<7^Z>pHh}nW a!b9hx`!4o)4PvNXv$[2GYLc,Y?C2|;-ꛜ3kO@  [H[%R?=,9i{GnjwqR 8;Ob[|h80;jEa=ʩޏL2 \v&lҎT4m@k5jK>ѿn&D4}xȀFi ,V 4HiXf)آ-z^WNH" K#nMab4½(/ `OEUs}<=EZo︙1cuIm:\Q ^ls֚~9yAh2 ޒSYbRzQiggv+!J}='Ke *k,05*j>U[ MH@ vO)Ak69ݤ};9+,Qn/y{榋0)L GڱKdʵ`+ U!yd * ,g,x%gH)יF58aZĞKA/cE =RDƖ+(PPWVnũ{TŜKoKvj[N?K7'"˕&pQ8b\pk= >|ۡ/q5$>cZ1|6 Iq%_fíiG^,+0i !,/E zpxR2]e})eY}.<.flUKVO0*H8b 3{ #v[\v X9cCЫ Q OxsV"5[=k }(>;Xk}ß\(G>,7~t;WSA Dq -JZ)uE ti,f?? ~7((6K>)t<\'?Uqv犻-xXH X &#b,d.luo#d} 8㙹bր4/󰱭:h_usò藩=>f׋(8dY&Ar|0]h>k&OF ߂Bg/MŞ{PkEˈn,1.e3Mf2(:$Mxi. 0 [f {Z rLPg#<_wk6u'<3~Q*`{5wrz gekVVP]Fz+(R>+-C:h@2~:߁ayi(0vL\wza LL\8p%=PÕ5CF;qA7GL(s'.YYD! }#1IKZf$mNDQ zLq^q:pqD^M "Y<:l~C6gă^+ 8䛓Pz$'s.wyT᝕/j_o1`k6ʠpOTŐBW*VVZԊ!fig0>ED plzF J:K۬S!~oc_eoo.:Q@Bd!v |qy&h,2hrEyk3FӰ[*omPX^m*&(A2el C%Hi6\qˡ9Oc} F_Ic% S_%ǫT Z3a?ɈtcewJlT$Gf ۣSӐ4K@J&ꠧ)'ylK}aQu,C!\w::MYk7 Z 3Q67#QuGgU"T_ŀ2|?FRz96hocź:4/&O3fjڿexwC ;ţBH(g~'F$c# دQfg3izZ#rwciVl*N6ӃR,Ÿ^O2Dyk*  $3K/hv g7kъt9]Ʃ Au^k+Dr@dlP-# +/BCvʠ(ek mpW;SIO}bb.5 X$Ǔr x7ȶeujR_kBu pmfQyqlھj6Ce~Wu%X8~d⃙t`ş;V'CrgйY%zн!b&Hts] ԧ[Ut$o-˔<֓p\ú|e=3c PQKjM1t-kʨ&lTbd}@ -SaBS=:ϛC)rHb,_! WL.[bN+$  ; j`o$YK}ܠU?tJ pcn5Cq_ˆGX8uMvj48| g_إA#`o"ڣ0k@4_=GvmRIbzd˻d,A+>WՃN *|sc:~d,oOz[o~tM@t5p DdW_ŒK+' L2&F[a#'`\Z#9EHRS* NXjJ9a:s$0d 0m*!= 2<ԠTI'w+RNބ>|7\uyxQt(D͕϶uacڊ ~8ƥ4"釣BfJ?E3P+Qsx8 n(-ĝYeDdeplޟgL v@Gb8SJ̞4ڑs4G5 ˹ Ceϻ0tjf `KWGW[ Գ:;pfZy| ᮆ~ʇ\;c{M.OݣwJYf=T- kGK,A8O\jB /Цk)*-Jn+t=1g嗧_E8jmbׄZ4`$d=Q1!zgi0ImY>HeSϨP6: BW_+)59D(lG"vEC?,hV; `Jwip+gܯ=z~Z!lfwrc Mdtx?5ܨ?OWGz#@UǨpciZwl4/N9c-X;IgFpVFyB'"5kT-Ǭ$D$8PM2F|&yYE;/7)lε)F†;cbOZCfob#D0mF |9d5kFܟ/87@L2hG9 y:lD^sN>?}yOoY&:FKɽFȎ#+95_2GY/Ȩ>Z#M斊t2xP/kp}{c[ɩhϢ0:eC|6Ѓip(jAM\t"z${7:fcuB1e"ޫE1/)tn7tO'<9iO'ܸ2PGCڼJ05j"[ȅauH7M`;C4\CB`\1^Kz"h$g,9<9K8Nu5em.Pr7dvx5}Lۙ#Z[Ziʡq"rF66T#AGY)] a! UkKhTi^qD&G0w5KT֙)B&^zQfwPaOdA, 967JIѐ)=[qcS 8$q(3Q`'A d~Gےg^ BA`Ņ"6 ?'q27a\5~l%=;˗Į ZСCLX<_Q[gRmb9쪈A]#D soH7N?74`n\6|f7N=!FfmՇ=8ǁ uI:)!,qdnX*Py):w.in"6x$I_At Z3y]9FD˚$m1Lhŵ;x 줨P ֎VܒBpH٫g;T.[GOuڸ Q9^ u+@QR|:NdaPE> )/ia̱!j~o7hbJMW_xÍMTp^ HH=uߎNT5 L>& R0`3.Isq 5`ʑgw7u^Q.cjE@׫Xj[KC\Z}w$0JipdVGTc׷m;FO^vHGjX,S '?Q<݁K. ])<9ء%뒥[bu"Rf[RFgwK$7Fg=L$U%+ z0 7[eyӞD4b9BEh`4*MNj ~n1їO]"Þ B vqrTS }>W&CنO@Jr!F[UƝ/]Iʱ,MP6OFQSA-gT"r`>mܶҢ0BD?Qށ!3hu8Yz14$V"cWì!xFL! 3߹JUC|70hޠym iÙvJg='ۤISpU:Gy# 5RhNeҬ$V)¯Q̓#u 5Q:8 TJt2ke9JJK 6fڑ$~yXF:6le̅ҧ NNH= AidL)܍m/&`]4+Y!5Խyj/B#3Wу=;+R$, _h!L!relOLQ`SQ9teTF~\`%1~v塇17]Bk>$i'r()6HOs2P%t\L \Z~XA@|w%nm3yx|7 Y\xq:ZK{|VGKmhp^^MxLط@$DqV>щ  ɾ-9^s&)TaíwzC+lvX7y#!JO!'\HhagNvMV\~2k5h,%W&rGO0:dRM%Ɗ2 'g2ⷀTgӾ7n Z˖Rp @DK*RrfF1yUy;?"BJ}x{c]N`Ù޳8(0b찬FX/#hy']Nr8 <&4Mm.ty)jJw[,z 5t|!_7bp KLL #4 WH_ZIdj\ O-]1IBwk4jS> ;$cQvmeq5Gt MZ-2e |b,,s> )pdGlc!Q  R.ݜunV4{!ܵϯ0)zjO8a'%1lkm˄Zߛ60x3Cliû 80tq?:Pl4@*&霋:^t ;sы6bh® ۀJ71ۀ`S~U⧠htgf=7^P3P@ W^?̶?6WC0ڄ g?Ԉ:p7w4;0lux=CA}_@;wN*7{BF{ύ(non43`0_=w.?π=,ma94r/jK̋ZVVXXT(n*Kgy2r RMė(p'ێHYXVzPum`ZFb1f?ݸ5 !;yBl>@(6hS]//T'ʬ]Yy&6#UWa; FFeu݄.ה)HŘ"څ,:,v4f5ħe "@[FZ+>%qYR,YSJviv1y1nU(CȏonغI<hvoAk%I#坒@'8Gꮝ&l[*Yv~%bx>I8au5|=k$jXwGEu2cCo\My5P/!D;gPHłe^oc箖)xtwKÇ>9$\mllX4 ΰDGмS-IP1gY- }RjۣFt;^I?"D^ i֎X y~!gX ]^5OwCpc2)I"Zҕg_VO^VaxcZ6<հ"MRb ?B]œ.eZxШ}NQ98ʅvR # VٔC9wA.]'uɋb ZUˢF"QSD?51wϋΘ7Z2:™LӦ2 9%u ХteaiSV>̅Y,c':1ߤ:ǬyW2ȉMKIfQ L )PLy;FfǣxUƋkVO=G IAN^zXG5lo 1*c"•!P@ƹMO,~u 9Ŧ<He3]կX*rNj٠man(;My}\}֘XV%l2gi:=z nZ:LEko)PP(#)69؎(*ec9؂kO"`<ڤ734c}9IϺ1аC<)"Lԭ,a\' ےE6%weɇ2Ի!AuM&ՃqStIp2 (c/I*)hZHQP^4>|)g_&g[y4 HwCoO\ VK~M.IRA#9w)ep. ye, ,Ե*#&jZ[6֙3]G%:Jߠ$\ԧbpЦC8~7S },ja?_:%-pI:W-Mn\AY6Lsr[+0/VIoh3PSS KxPo{pAv 6=i\q>U[ ]r xK !?h c bTdXSBrZFX1e'9~r8z}႓.:z30wS9^QcâaJU3k3ԥ UO`,69H*S-%KIRXq: wYG.c?;;;r۠y {G=~[gC~Ȇ&D7M ۶]i IH[kQYfdl + [;ŅL C":S4lv76șSgڽOi{ 1?SnNҐf*boqب[< rZ⟘,-u]oF}bl`/^_y$q/~~EkfN7 ?رo|³׎}Hٜ։t $St{3#E9F9`:VX"n;hޗGF8Nc r$d OJp3+OqoC^~=$_Ѣ؊^4v\_+v$نܯ骳SBi:=xnͩ#a(<[]G(j8v5{hL]mz@X!Jވ~ds-oafֳ&ۃo!^.W>PiSӣrŪ]cs4eBFU;6e`x _Ԫ[n*YH%~FʬA"fQy~ѢEۅGOrx%n{@%M8r=MZEڷo6ٱ=R VfɦCAuћ߫b$kf`2o =Aiϊk~0K14kTAȎnaRnsH!Ƶᙍ`D&„jZxl]`~C-1nɫyq҈yf< Ԥ:KBR드w PZϪR}1tgS5R\7^ݦiF}S`Zy^xv_fYGAk~?kD!!Iul(Kw:l$ zD>靅sRKO?/-Jj;"{PIV? ֛;YC(Jל- RrA$r^W/"WgKD_ +a0SCy H>;W"hFtP ux0.KHY^.ĉL%* :28? hJQ@OO jf푌 %$IB{t]gUkaTwb<߃RK&Rϫ3ə( F~iNYC5Ԍ)}-N(Y0P#`ą/p}nP` Vzbx3{t~\ڡa.Ԏ0DG>$TMϳ]gᶺaz}"ƂoL_w3J@7ZWu v4f'ZL>3џJ ZFeffMrdѱ6Wd]nڱ&)K4nfØ.-"u]s썑}.\&$yPk(%IѷmRT$&=RV`;LL#zʥYÒ*YC-!(m-|*s:D=/_KʚY JbUy@2~th*֛z ›rW'ZO:(yl)vPϓǽh$<5ç$:@WYO]K>9 GDIHG1;8ڷ$^ⱈ~Hs7$xT`c"1V@T^wg*`:&f[neJ]u:{L<3 A "XO8W"bs /ն,Nj>TS7Q wpbWOJd  ˾+iƨP%7$XpǫE2;*_5EBOzv 7,0 Ӷ]PS7vhPY^_ī9"߀JϫRxP/^PT *Dz!fSm7mDˈPF[ܻ¶>.?Mpu35PIuUĜDqŐ0L;7Z]{`'IkfoƅY6{#uu"e- lD}CC_)yINN1ґM=.}ѦHȡ$'<^ EXxO&.KL'ӝmWeKi_b_:,ah_i0_5< ^Tqo @k ͓^G}ٮT0yN5L)E~|e }":hJpJX߮1B^do|-Z;g"KӬ43Q=PUu+ÚUܙ0zp)I!s>pڴ-B%+A&`bXx$H y8U8zn&| < `f,/nk&0pˊwP "Qu"6m;/!AlQay 0^ɣAPis]XJUv,|$m}OOuNG{z6^"< 3/gr [z7"-xҹbr`3́96SQ?:ߞN@~4'YMXPkI ®uVA g0 T'!aI # 1ӕu\ wC {1_`TY+xsT8 +ޖK4y٠t gA k3ŃJZL;JG~bh*{dn{^F`#0"f 9<a:J=A ^AX-AW,\mP#Կ.>2 Vkf* XIS`V(ȎkV (3c{[%cQQQun(bw~9iE,!,,$NvEo*  –S/3񊧤h|>4b]the **0R<:߬2p0!~lehjYu&\|AJ8gt9^mTFʀ>$?JgYH=]3mNaɶAnO ϗԳ }7좐N Jᦲ h_,t#긽" N]5_ؑ`V_ ƢvRRm6`VWfLp5ѵZJ٘ڳN`$خݩcEJ8"uO'I#U=*z=G-XS⅐W;94R8&;9K7Yiuw Dqw!3p)F}Q:!" X7 ]*vu~7 T$#ZoW(p3Wsvk4'HRQ!_|aoaR %Sw(MZ9f)8Wh[?n ݃F#͝Nd*8BOd&3GPrADC=˼;1/RT; |v)iг#h4`9ʑހGQG}%-59 NGΟ4XtEԇ|z-pƣ &&1zTf_cBӄi}>|CMCLL[qYPG:2Y0Iᙲl,*y7Z1j+ =:=+"W$8!NaE7%B61i@"He9Y*kD(]peS;IFe\Wi`dA>oC+'DcI`ـz*K6iZ#͙;١0D#dҝ}ϖF- 5ZS8ps'Tdr"ս( ‚#wKR>twgNFL[$e!ѽW:F>s5GC+ -lD;QhYR ]{S엖"6(" ~i0؇,{ȌO LL5E<TFPL?rܮ OI-'䌕Ds~*1(SBp{ʦ P (\3AG Թ;'BXjZf\f2!wWokEMdzijOM.XdRIZ'fSh:ڵ;ї>O&3O7LKQ"7TU5M{u \&Pa݃|X$>M>R+'*(s)4]%ĞVv6mrIQp&C%KM?/%7z|:PL^ݼhZdzAB<>LͲɻ;JE,凞1{^gE+AŽZ//5>\zy,Yv<ۤAllnO9 6BEtl9Ma()xRmP )qL$'pj$d3o4*Ccmy{Ԟ1~ųMԗ+ 77)!y}J)no6 :Z9(O0dd.~xD!P#)^RyCW9ENTIf8q*y+Y7r´i^GO l7U񠳯׍ҧ{#T(y 5aCZ:A}j7s_T bv8/TƐ@t>q>:k4|۲B~X07XVncNryYԱ'kHu`^Hf/t"'lQl:VTV{lb>0E d gϏ ?+13,A,Ѧ̈$b$IGwIG=`WKrPJb:\NiM=G{=GOo-0TZ!V*`Y83QZ8JmEPhEytAUdZˢ"J=(`#~ %HZQ%)y';˟IdI=6&M3&_{I,z6T oy( 㘸QMgQMP/ϭb;[Te 7NR|.T|e۷2hlo9s-Q7Fˀ]BS3@=!_jLލ\/z GCQR>G|sz9hy&Q]j,ra>aJgSI!dQ堚uuJ(JP G̈́Bw50e<): ^/Isz.^:p O (7hC'.:.53i\(똍!.gG HS RaOLfX0'e!w,׋XmÉ!j@6D"{Ag/0TnZC]oTF~e-]LES-6"btwRx s AQj' 5u#dpZ*5> :b:C{Q_pQ8Hn Iħ-pc[FVU 1wUcVZgp^9Sik6>;{qc)]ᑚJ1jom%|8={OdQ[%ZzWwDHaF"!y:xJ hKn22) e>ʀs xyJ_\@OΆWWy!wv9D,!e8FDyE%\<} s(?:OU+ߕc` 9 C[sGQM~ WIL!uhh{ȫ7B؈Jv2szmx)X{{K :7mن5ᵃ_m+NnCh `Q;l.̖I " rWFa2&"\ |qmNud4"h>v u *|fbayѕdjoro/4M%ts`Bwߡ eG*K7VcWq}ݙ. n跾co:6tH0 /~lmPs3^~BJ{BEJ??Xb 䏲3kֹȬk/#Y5vN`-2_fU)*`},cV#i`2s[fѴrE2Τu4,!"MHpEyV=DY6_sf&AIܻN/*Y";rCAuiЃb5gpu҆FcL쎍r !b~CH.(`Pw $Vd'kE`6`Q=|EvS@R̜ų(+sE"nE$k/`")w']9%aW<ق8ǶMt_<( R\:Mjꮂ,%e$9H[NU}Zܿ+H'ӝ]=5Ҽu.B “l\Fƻ:DRPR_=/"U-}f5 y'w^MnAZ  ڽ2%@3M?33QmALRǝ0xU*x)fn4rl!W,o v|7ƚJPR[D]s2ҋy:`"N"2X?|͸13Cb QdX0[_:_C^ZO:G7ɤ4VM_&35.R{rГڝG"7jV--p#; Z|8ykB-Ľ‘ yY3h5RM8e{3rX5 \-Y?7aYN p3m۟L" -~FaVbrt5ܕ[(7qNHAl*VXnz[eYԐւYHEZc|~GOWeDt q `Լi?_XBv}[D Lչ'Hp3oѨCy DN,Lþ;S$;6yzB#Bᒲ~xl`+iRkBRF3]p;(񮥷KL۴[{y~.K@!?CA;Fsc CVQ]+R )dF8?A9I{+uNI2Ԍ_F,N~ ξjL U~w#o`Q »йW/?f,6d#EzuIArѽ1} hF/s,Q >rm\htѢ/]|'AmSƘJ[hX=Е?k-qTЇwLw/VcDId"h@6/7szkCYj]^*[ ,!Mw]G~E|};znuusLm1s+"Ipϒ ۹oe}e  WrFm8)% 'kyBx]h}e)R y{|6*4,hڴANwyiq.דzIm>Gֈ^!]3U~9cT }ZJ>s=_PQ_T\ ~a"=%k(AT>(Ύ/@->ͦoNT-۹[(8T,ܕ68Np??QE$B  /Q&mNz2zLR<8~] Kan;/ U'a\ug_4"q$rnKmb5 :Nӳo-r!bm]E[ۺt>Ϲw69*&drB_++7rqO_i+Mج9Gu (AJuw$h Bd>y̔}SL#'Yu淈zYuj.Dܥ3|d-.EoL ,k痌kwys$ݮOXFVsWڡ/j\)3PQJ>_/!*xVkiJńoeP7Zd:v7׀h]wz,f=Cѯ QZr#M}K7̠ЮC+6+n/Ƕq) l.%zӲ^TK|yZB9@Xpt7 _ /Gw>XGކCoV#Vnץκ&7w 9,bC_!ubdcaoO\@^Οˤ7;]jJN[aZ:Wg7[ Ds%Am_Cn\է֌N%)i8~4CUBU Y?XEX4k3;[F.: Q lwT;>VY2pm!y/ݻKuX)v,vSv%Њne-Uz@;S}.c:4FwK^LR$&csw#c%;r Ӕ3"fj 9/w"x䗪A̧# f#OFr^ Cw +FIFk-<[ûG랙F%Csp-!Ig .iynHO Fo_yA&2|YH[z(rV.;SCwMu@ *]_ tZꥨGϋ'Ҷ":N \|-ofL_x&. üejcg# ,) jUp"0. + Vn_:1mnH0f&6"y3ql:R%c+9)^97uΆR3{F2\&J@~f[YQ Lq >1 PKp$N:8ܲ]ȃcMJ'4_ƽP@ǃA#zZ ts-{Uwr> rj & +Qhj(mWu8x3fXgClrKHkK wbz okY.[Ce)l4ߩ37@]w8sN 6|xWۨjC2IPP4m,Ν$ְÌ]hL䡟0n{6D1kV$hr6v"b6M*^$wKDANw\q^[ '"wMJמL6mZln3lemCоi&0ob_SXܽ n c"իVZ85 w>b a$";һQ-D/J/B[|rYrwqw$ 4T)֣~:LՏ?78#S9`*$lUϗs@jH"m !|Y$|P"נIiJ_ oa4CgA{5Nh֚&I'"v8_ -8P{LuA_Nӵ̅ߧ P/9'&a)a׎շ)b%.OWzcPSui-rQ? 兩PӴ6fC3Z0wf޷CG3$9wFʰ985`qNqt0-sICͬafO: "Xs@$O\| 5@ǁteSVA+roөizXd72ls+=11q #Fx8#+v Npeک0!lܥ=F` /Rq\ERz7 wǍ%ʎsf]T6*QGmzQ ~QS e?ӮHii3s2)46}n MF>KX/Xhp5iMgmN0EB?a `_BC=xɻ"+%4RK&Ԥq]m;X &*s1#D]Ͻz ~ fa*5^1FEG(3䓧Ljܛ+.OiBX_%d:-@ QgXt]$BzسR y`U-c9]|3UDLSuCO%1v {{~6* ̂HY4W.EE>D<96j:$tBbxi0n m0 {ϱ"v9pI6$9.FepG}gC֞BH#$Lƕ%rfKcfM4.hk-E30g^=Dgy<|&F"i1!Nʽ, gmF䄂nr!׹I*Lh7fA7H*׀S):J66\ejCAr2W^Ti?ܵԙ.ؓJXl$[B6)nk:U|_1@z8 JN?PÔi;2J~BJH4 -5xӀh3DwTlt,%qpqM ;STp/|qAxDVã=`wF<ˆJC`c}b(iy]vg5`FiS8I)R}oqǮN#1Taq .-Sy`|L|% '3;{ %_k0gE76ˆ5<_J! XJ!'Yup/Iáw\b y ; kFka|݄ƦP| |sTŰ$BkAe;*V ^4mW aY +#-av`y%܉!L,:)vLdWyNZlZ\Fkt^TW&(S;Ox;)rfX!-ha=}w2wp0iY1Hқr'ޭaN8Ț|݁xkZ9fW,<l H Z&`#lJ%ƄA %9hUͱ-a>dM|Wb BB? j+k|!8LYeazf|D{/[ 0Bnl2KuaOA$0_v|5fp=9/K2GXyJ`dbZ2UAM:ݒG?:4gׯam\dTt=kݟlH|lI%grQ(5^N_rs$nZ|[9+zux"6u(  m. CKM@.џ8W\HbR 8l BoJotO#޹XQ`@;- GŖ8X]ČaBo1 $)e/wR{{6o4ӏfڻgz0Fɛ2KՃƭY@E(,׭䟛"Cv ՕAQK!^>"3, Г&ytfGW7A)ATa? 兾h"}ًdL`ظ ŏ|Aljh H?A; f2/7|礉 X)ӮNBرBO8HYG8;S3:/j8  W01epFVx!3;\d_³ U9:֞>1cuoĊYc?F@ZX>^]}%MʒB $hBR`;}"!$8ˆrzb,Ts nm/6¬d`?QM|^,3ܺUO̅>iLF l rQ4 Kٲf-^l`*ϏVN E&K8۶d~"m;ʯHCԡy ω9l9f5JlEH?*Rq 1gaR=V;l4e,#g< 585G0ͧiH4[5I~| ,*Ay!!1j.mGxs4껨c$){^ɵMS㬯*Mk(.` Cg֊e' S1~ q'٠(`rSzdx0!1G)_%?Q}^A2/?q)(kRazޏ8=bхX|,h ^6aM&AoZ-.qqxu( hL`Lى$~gsel(+g R:H^XWI 崁G_' O0Xտ{ d^3s RhEKѡާ`x\,H8K-%V2y[͡LE{]!¡^:p'+ +jaml\}scf8ZXg< Ӻ?VgR:D'=>׹0&so` ;ҸOXگ" 6{.ϦA~4hX i? tJ̠=ņYo{|P吰fP3c:ؕ_.JRwUZUDɘOlh8Xj"Z3mY$RRK4zU. 큄M|'~vn8 4+u sȦb [0lD 4M%b&n jwdxoPuQȬU}NωܩC k%.Nlx7U|Jla:fRث*d*n1s,ETMx\X*oT LM%͵_9nx.U2SH)[ ŵcWVMǽ+|\?Yv $_7|GIw 9`or.?yH'>Zz?u#/1{(=ri]u ]* }-lir `1OlXG[5|OsD؉qKIX1mݲTM0nZ Gu }hӨfd@eAO97f͗k& n&!mn^eݔ)^aN bsB/a?{#}Zzyw:>NnB'#7e=S*T*Xz|J:* +Q#RgwDPny[r;IQgL7Ⱥ-ePDrzlP;(g]>=T[RP _sxX?e1&mw޺vfmVjU*fMtU6}-GZ_}n*!>u)a!*aufёI>%u"K-h_4),jO)UP{0W&Vy?j5"o* Oӽ\=aJVK=e .XZ.q,^lhw#j5RQ(vBWpa[oDZh8!6s0J@t%h`[۞ 7=挩CB!QJEFkXۮ'z1A@YPV{( f mzz& xW{T=ϙ_(7_.i7Y2p,,~ Ձrv9N9ͻE>Z3`@d(qRč-VV|p\pW3ny  f/6Lv]w:)\w]aʫ\@i9t`wلkC1!y>i@W%UQ}Ry r(30ҶÎZ]r;V.ޗ P~Y5=8.~gwd@C{%t04Za̩nČ%e`UrFz07.ryiglO(o0i4s5 KkWf1bq\4c#jU^0aD$Sp=H.Q-˹6 ImNHvS%dmvR&V{Z35 POk"ABbc6iA9$¤j$aIǛl*+ym'4JHyL8P۔-a$5⦘.ƿw^{gvDŽnU&+< N9Ef"䍷؀/EKN,g}YϺCp%]Kqpzn=1&ܾg 7]/JSj=gw^pGd~oZt*Y=v!v+5;@B1C9|O-CuDh׾G;ILA0.I.Ih]kᔅB7u\7FV#S&wO걕L_Cb(CHV=i͡~_;tRUir3þvuĜmM޳u'wCn:@)pC` {s.cT5nAdPA/A/%G 1SJx~Ά_TTg;(vbg1wL|4a5A^Jj(#47nS FiTRYn|E-k!_C!' j!E@b4ʙ TGҦz5C5O&~vauV t̰Mš/"io|?Sq4v$g T Q":菐փ׵;7HE=+{,lN\ wM7^(f9Bh\#+:G/=N!iPFL]%EuHƗU=IVyk[үeZ dwHg冲<t7&+~UOn SԇR1('Ť9<ֽ$wOkwJwY7P:Ғ/ߤҢ DGDXiޘgW\NhC;yjuX5"Wy 幱&/[5 n{zڊQ@vq1 ;A44Xúb!#}3E ;ab"N8 Fe#e_w(`c%lP}I O5?lR=9"3@.TxqDy.FJah~ꉵۙy&ɖ/` P9?j EqI+-sNݏTB:5dR錓.Ή @PM~K4j >,˫ךӰx,^4oL杮Βl+5)h0(sƱ$da4!ieV4?=! QT}Kv8,5z8PUOI?+HDxʔ6z `N=ɼl%>`@G)6ߋaR{?qPǛg)M c0[׃@bdwO.![{ހ`PW$,X9kE2UHأxb3Of靰lN :0uʘh^G qC% =ۮ=u1 `C`ݶ/@JLOVbMzLrKeX$Jy^b_l~dQ,].'Kt2g]SկN+g΂若=\{[JsE͖SٲNFﴒKAu?sDCqvk ӾI %sfjˠΦRT“:+Jdiq<ld!@ß (Ĺ76nפ!;{ Wh!srD e6%ro irEMH=C.1GZym>20y6y\-V4d1/`-S8Hh47PuVRͯ_$witq?o2 ThVl1!K4{S7qrJ@G-1>p2$h["b:}V_TgtW/3,#Mjȹo>ZcO:I/l@4_׾aޅ}0N`7Dފ?@6.Dh \ O8&YJo6I]f%Td% f 9O|M3Dd CKeU b1cr?hd"MW BMW]ӷLNpXGCz Wo~pYoXLǽ@~vtBR|8?/Xm-|%m3NIq;"x2ktC=od~EjpG]K+~AZ Q#f !;Ʀܙ<73 3$"pLL=.e_[] A`c')ʌjjM"a(М7<#oO=3jxS+FSǼY &ዌTl L ,~zcN?rv!N3!K@ͳ钘)#tCUKqN?.G+Μ10xӢ"#r jOHxB^/-*ݽs}<{$zT&1K Q]SP콀15͢k&J3Ṃz&rIz)") tJ{AEwD݇YHYd9/a0-C'qFj\+bS=:AEY3zn4#<~% ?JB4 +(nȔ#] L0vP-C^ Z-84 9Gr!}'hbAlyH~EHt0 gF1mQWXZBZe䝳+Z6M{Æ *@l( Y+ Z{pJj|gdҖ6lG,?TiQˣW}pE3VV KSxW`5$!'ZI҆UAgwTp;80k. To[it\k =ZCD|,h.JH`:VzeM̀ Sӂ1:&>"*hlJX ¥*mٱ+E74ȣ_;G6E(@FKo*W׷PUorν܍0dU.XUUN +Q^9X5:Bn%3`1MlYgS=V;p5'DN>Bi2ց-?|s}$xiߤhL>v.0S1%Cz&X&l "7#x緶Q9B@jMj*8}gP[BnjT&EL0`vqvgaez*Jї36UJť@_!t9W6 /X osAC%G;ˬ%qNG.= +pJmiʮIdNV9dH$űx?S-[΄} Gg8a@]%@Nޤ\(oo2z4 ͪ=dF"|/)ati΁fQ|M_>e5y:ᔃ\F."sC/^P\~rĒ񵀒믇Cf)^g Tj~s#pS/R~ Hǒt[F3/aB5fhs'^|XUzF=X\ $ʯVΚ Q345WF<Zsi U_},O)hC7smUF@L-\( &3Fm{&Ug35N?G_h_=2`229}p?!=igJ"-V"B3ewHT.qa8źB BuZ^\]220D]EwF$ }8,/tDAI)|j`jTEZC`%jymzŽFsV^HnW \B'}7N8,dpsGo5WiO/e`7 ( |LkJ3QɟVkNtfߐ*1\W= 0 `5w ]/'jED-A a[<+}E_QM.?z?OH{igtl ї07T(N a١qp\I =84 70 < 7U#1S :;>*sX $)k %(VU/9Nh"XFnF⢈F3v_EIŽDnO[L,_0`8<p!'8]#zsѧ,^t.ٴ|<6ލ|Ġ:nH,C2+=md; 4%@ڢSҠnoDBJZ/QE)O~үd*,lwv.ehAK-~n앧s0"!\ Ia 3d!hƯ˶uy81n@)xau\O$=QwtM5 yTذZJGe(1,8ife_"lD@/ m/1=嫾LV"Gkz.Bq7!L/ c!bX]fUUrɑw5[Q!453'9&2e% {\CQXNU+U U'VMuzk(F 5POfɊQruu@ʋa1oSH=`MWe ~FhOw"4\WMВEM@2̯+;wza*%9 i&R8qlCֻjZ+aD{raJ +ܭ{4ƳFGJ" 2{8*"(]INk-ج6+ȯNlFOl00/uЊA^? ?+l]| 2;Ɔ>AoOح?D~۰Yߊ6XtbF; r5nO1^.JYUf'd!j@,,(NAU(_b_<`NM5( *Cg,s V{r$qMokdn;ޕ*%Ji>XX2%0Rvً?85qLiii$Fک>s 2n a߮/(sZC )֋6R۸ RU8rؠy$ht!^Dɷ<ބuO50=^#p.S!)$!)>PD$ ޖ) (@?ka‹d~C:1F|{}d#8Dh6BeѨٗRK*JE-ifԈl |0J~Cױ9Qg1?`ŋ,^NGd@#luނK:=O<1W:uHl.{DtrVt2u2fR_'[4h_&ɂv[dž]smbƩ⿹[7@>3a6ũO/׋ء姆#o0naj/jp 6r4Czf&ЄMЕL|K:q/d/56_i&WVDw{*Z--м.?f(!q sHTQ{fɊXtG%L̮jx ,AawvEӂӏk:ޑitpV:{4nZuׂe=HnnH{1ʟR^LW֤ŚpYrXvWxȉɇRuC[dǛzy-RQ7Zr),ᦊ-Ȥr< }ˈ2 Ӡ(a&D~DՎk>XCbI9I*fq*w*dW/n9}C.45ٷF]?8:6LcN⚉#]RIHyBX=!̥s})jހwR@|0@3;tA@TUM8dvb>u޹ OP6Q 3tHwGC/Y;4Q$"QزUv9fAj>9xH|1ulNʨhJLJSViߛ_G->1MBJ/tx[>Vx> $%O’GsJ(d _t2NNGX\F }^6H)GKqH""۵4@;xQ,t]T˷/AKj+\H_1$m9v)wpi&4w};T"Gsͫ]-Hc:or"iw^^R%`Tϝ AB@v4J AbBVrJbo)eۚ<:G8pRqR0@;{!w{` +|yleFD׼VYL۸vY(iL^!݊>p  m!D 2g% /J-AEv:=o(ZԎZ(`,?{1mq߻ߨ}/t۔@ F`wIUj! $k}!hejm.׉ș]Q7o3|I-^3K .N|rӢY,-:/ExQ=|0 i*9@8RTYSQ Ma5BA PU _ZaQ;$lXx{e<~X7PE߸6Jc /Kzp!7?8 X S;U^r z*nE?KM) T~?hl8rќzZ]LkPːھN">BXڴrƸ?xԼE 0uo5JvW:dUɸ͞꒚( csrnu XQ|%~w<`OApi͓2oQK#I9)ByV*5 _Ǧ?530HB3vWp?|y [9"XQKt4k͝m-CqßU0=P}D Ύ^:{L*2‘w,}z^qYC Ŏǔs1=OEt/ ryxWTWt#NJ<]Qm;7"- z_"<=mQK$!BF`eo|yfvEQtj-I _{ݻFʈkO(#Ga;4ey 5/-;&QQWq=%^==TI%[t'+vI!__N<;:@QcrD~)ԓO$iL{{G{8,?f{xE')ЙZD^2)38eFEY+6I FLV&?Ak)ScS13AZu}q`WΔ\lK bBdp+˝/VU-C,Mܲd7ړ *Q?)bRF@c;M}dto6H; le '7|ܿah_Z4Wq|<2MwxQ19ҧ0݀| !ћ7j,=qq z 튢L};P>\-Aղ`z ׊oߞK5D-9a-NfAE0v! 0ΘցIDC \yf$p, /!b) K0nQ7Vb|؇5KIbڎ帜*1V` E;>5 esn$zbo gR?*晽vLu,Qn{^*wemBUs?R1031j䍸T#fyu[#j=??13] EY8ӕ=wfZ UzFP 8&^/*}V& 逭+,Þ<+"Âr}p֤mJQdnFxǕEF+Ax?0TZm^ 0.eɺѿ"u(N5<ZrN</d4 sG5%EDz)5BHƭ=ó)kʩŏ*ܷUdxjV48?4k!lM2؈zgn;fT2ŢuAkն<;Rv $ nZO4q~u_&b:|gGQ=g-]O:HtټRi1s#uf0;`&n8?NdNu6;IJUQqv (?X$|$I6%T3uh,AV5 fMRrnWrSmQdww?Z2VQ$ ,Vwdi2:Ol1 vk5 ?HcNDҷAMeYErQUD}kڡƂ})-^v81։;q 2;ˁ{2iZų<xժLgQO! RkSZ]KSB,CaDRܦߌ+qz r_C/YRVVjxJMv}2EPr$6b.&}W| sZ)MLjwc/0Q% }+4I]GOПaF]uiet _0\uV&/}L?D6>DBLۘ!h҂޵x4w V0y@[Q38yHI6Iz$/9Qq/s3oxn ^@%%&ks` b1s=^v1F{H]`1ߵn )Xp舉j) 6?}=3 Lo@ kԶy1/ᚷ<^Nn 4SB*=rGTM#Ƣ4Td }+sw@Pa89lj.Mߐc75Ҷø9KeZGW[KR?D޻~(ӑ>^&m*,oR(S{t˞.XS1AȦN`JD>g9SKSf30[O/%h;qf0?9qU&1 ̎(TM+f&+:﹓g 2qLrwۘscRJ܃$Ϟ!u0v9aj6!iI;x@7O(wu j+xhn'e"1bvGsHVLkz8UQ&A2iw+{{;-5^;憦p/Y8 [;$IC/KlK\DJ02A&VdϞ]B1^.%3k-&Lnd&N`?D ] d=8U1bQ&F0 ]E; U%w v{~iaD[ݦ#{83G똰&91װ~ O^͑ [O"u?. 1hZ˼'0:˾!句MoKwvpfOeVyK: H͢a_ IZ*ӏ,ssAEmXe?sAQEH z`EUl%1 "#`ʰRCS;_g*~ eFg}ř"w/ UwL3M:1XF@GSQ -0TXУF3j7$R_$D1bN浡{kɴ ֞;#ˮСKAvje:x~I@T,cboƪ@uE4tC`h3ܠR{A.F'f,hXչkWf`H^%!+%׃fd6:?aV_{1BB7GRƍZ/#vW!Ѳ[NXKf[ ͸E݃)B4b:u4Nn(q$Zc!U*[% .Nhr5)dkӑ~R=M2@]lP:F7m**AȼɲDB)Qؤ)k];;jwA0=I9џ{c(=wx<>^,yXG '_iٝȃTNѳQe~>ёuǂռF*€25yb4*nk%>Ll%cT{zʲ(!uZ`򔚬[D#0{Pcޟnjdɇ-^\hɂ[US0?lX;gi<E'=^WA5R"]-'eOG\"7/آ*bF<]ENNKz)Ꞣ i /' )(u [7fHVrԠ\0-0J3B:Su'b#\b1@j07E"ua?>8=/u{W%)أ\Fz¼4Ӓ`8œE>i29Dnj6Haxs:J@)!Ly4=nU=meU s A Q7,PK3TV6 'jHhcC؃33o)bG~!vcHX>I*gkiK uJSh)|~/RZ @Gm;I2*q%/̉=`µ^ QnW8R1hejM @5e:l9zفIrz(J&nBkXADj 7gA_&}DK(="0gf 9ؠO)Y{Fi{|*KL/)"y|R0$-L}BO(3x>]KRA~ݔ©۝y]ffSlY#j( [%~ -ML5J}x W˞|nxz:bq+ű^?75QE ?W⇫!a(,Mxci"֖mzi g&I$Asf2X$? .t|Is?h8z[lkј_5$7nH95tX)pَ6_yAG}AZQ鳧c1g:uMݢL_DZe(NR!SYT^=be_2##RC>v80^h"Ʌ LY(OJ7RUۿ0)֑k ̲kpg<:uK:ĞHm.+b# Kcs(4 b)wT /N_/foj1l'Ĺ{Я(YH6S'le7V8Ȥ%*)$3#\M@Wp9`:'ٕ8J3}ERZڋ[Znz>Km7nArE1YзE5,hfJ`9H}SdgE(2^$PFcG$/EMӵ6|r[] 6;kb)Ep@7(}U^Ub8Wk%ܳMƇ-Ԙ~ ?z(+@n>X>UűKuۚ ?f gÕc JpID/HQ>65K HM0!)ØѼ fџg5Ht紵7%Ê̠7UA&s\>*:PL wp"[ ^#^!Es͗X΀c; q[K'L yL+h]QS]eiaFZk.? ?v$~0&y#+I%o'86+v%+u!W9W&15:HrRw#nߞv#",ѭ9(BXrHsG@ :a&`9; ٫Q-*h 3kiMvs?#5l|5)g0S.(E5Γ)rZi". QG:pFcI3]M-UƑI.挈3X/ o:o!bPt7x m?9 a$t}YjFR΀Cv>:k԰u-)P[ë_ mT$")90!yiђ^ d8IpޣID]Iib/Κ8 J줘f|}K:."a4t84t &* 8qb.YY\s`]=S`HJ8.{U[3EtXŵP=MЗG2 sN7<Ф[s ON1}PLƣ"(sLnLr% V->9@9*Z/J4 Vrҵ #IBu? wHȫ%x+eSJG m4PU4:D*'x@=sjLz`tm=BjϢb<'?`"mX#&*kePkcZ3h$˛pIG*Sbkrzt YGHG|Uqgq`*4ˇEؙV&is X}(~TPZ;RQ֧CʡdVOHdDb(tW %ƹVӝJ/NfH̺s~I -u6κ?iPÿWȊ 4߂\8} |J]x-qna73[rnYQ;CD+󁴄~h~ ..VLU!!mՖ,am Jߋc{@́,ve`zњ-8=:3b)_.uֲ)0< jr -ϲ۰æhd/~@=+ 6\x013qb~zW#10K0Q-m3\D7I:%9  2>,L;1~?B['˦$H}(US_oS#֤!s7)0MSU|`uf N}ס5PFFQF?*% ƥ{42H4,k7,vg⼛9͛M؎KGwyݾpj]'n<#|vay`kV~~ iا )'ޏ>@ "ꙧmE, 7XMްr7î\5C>셺qWպ) z~`yDh p™r|ٽ O'S MmQYˤAnjZ;|%-A7ּ*,8ЬVy0r{G{KAf-*y X>z5xh5*GBUcm|^8kt<}'G :&'ǽ}V!CQInC_4S6Fݎv dy5E=C*l.]ǟ { SC\=)1|eJ+_y{*[. &p54܈5&ס|llUZ\LU͡?X@bkAݮL\un #DbE7s2m;9fh O1+Q. ІgRF-fl46cٺn$dV:3{[O؎.^IX/ XIbK%^nv3CW&qmJ_V_8_O[Pi8x vw@[:[z#5Epʰ~(`ZV8GixU|6@9!#{((8n@aH$zUgŹӈUVUzUKg]d#ncǡ 1MM l[*q^?㳔c"A| ƎtZmGmg߽=O׋ܹZE.cA[It]븷oPV^1Tue)e1s4KFMqsF;3 ʩ \OH:hP,]'l9KaLx`H:Q(]jkRs@uKIc~xZS,o$/M YI;n݆AEH2! xET`oB {}Cꕭ29Erc]q~cu@FKt+ 6?~ʨ&Vߗ}QI |Vb5I@uEUiR'7{.dܡG gkTGGOجc@rj0!d$^R:X P-2una8sqHbwٞt[dؘw\ܸp5N*B =̂ H2ݥp7eJsWh EM^a3VF#J9Zĵ= F䍸Cew_2^$a{KDr֧ܐeT$S|Nm0B1x礫(}-,.Bc]d=u?ӛ>3$CbS ͍M(j(jkCӉ0!oViGar7M9ҏw HĪυ@["bd ^X)](9jС%Q$ H;P-+]ttɥE(yqZmx()ݏ/ϿfUCe0"+/Ջ+.$j +0h{Km']n'*Kx UF^52IN76"}S j3 EL;ƨ.Ӽr5΢5 9rareZ-c)V`Vڰ~8܋\.% І:Uz"`˨Lz*U 7+!xW- .D@SQG#brϥVZ0_- qSgN LwS .wI`[ҊK#̺Zz{D좖ro9۩4Q<[]cE/ijp0>VenDS/,[Q Ur>& Q淦Ui}(r,#4 ~>  9Puْ uIAwME!f0\ Tv݈I<*!A #t?@[ KJDMF FD}ܱCNi+BBnFci=JP6W?@%XhND,~u#]fAQZf0uF>HAvE=OO6Fbu]̯|>Ik2l(x |!>|@X@U\k?^OyLRhkP_<₠]xUr^G1Lqkfכ}Q-wi}I3)6d}JyxS2E#6 sJPYY'RvxOpߎ/2%Jiǰ1sPU$cEa6Gf(ۜȻަΩǔd 7B"#gq<=Hrf3L3OniMjq̧y0oAx1[%M@3*SP醡M]EϢ4O^E ]6Vb:}뤛D8[+ũoM >1a!|b491Xo1_=?-V*qvWF$mw nǢ2{SzO%Ԑq>󱫕;gҍލ]37$zx^L7^F~ {*Dk8Uuf$ L yaq$r]ѫd]38q}R`19ڻ~M >`à<*);Np 4$&L#kŴH>bp}Xbǂj٧`=84}ϯN]^WP!՛D!%[<3yKy'ck[0d_]PXxmV C3n5>O ^1;l(z?A@ޢ wYrK# V!McYhpQN&,&;䖁`Fu0cexty|`w7-)Z ( մ_H܌8^L9]fNQ/J(j[L. 2!.M#3(sΏo0-m3N앉JH51c#At`wBk6)dBuJi)IXܟ:<$515EG*Q<VzG&xt"JZ9IvJD#hYR[J;(Qf AuTٖwן;&/UX\OxLI܃²^rJǷa%#z{ע鉰VSf*7'6%aO)`Z,{@EOSiI4הw :,4q鈭3w6.*?GvgaX+y0SRJ}3PꐴŹv+?\h?ei>Ի{K >aNAL>'Xa UV :CN9}ź*o#K\Z 1`z+agna,}=pfW̢ OD'rz%hK>(3P3xW'̨G~.YIO>=D2}C ל#}mDv%IǾg70N ȽA]{nJK;IM-s\Dž$\xԃu?6EƽPJ` Pܺj/d)4 \)bQЧv H-hQRbOuj j@+ē3D,9͵&Ĺ-= 0;j_ڨ6S}rӒڏݜ/2;NgmtZ#Hb 7g*lW:8?ܫQ۵@x'Jdr Ni%wuP׋@G^UZԯ뗳[w\8bWyH.{~щ<{4#SkۙU)`08)N%v v/ޯncNqWeo_R`òѲab Ӹ7H 6(PGC%3czhrSp<*H #bqt}{M*`Z3 m?F O5_'Gim\c@xLMefڔ5 ^cfQWP,[̩9MK'f& '%Q,_n-{L@炛1]+6$!G] 3,s{ +&:ڸ4W?:}4׾U@;3Eg]MX9NO"w9}Db`L/sܛIG24χY *z`ѼIc!Imil3/)4asliZ?#h/Cڏ!ˠJĈhPcP.fYdzTimۙx0dn0 ݸ.}( ;>F&SO"'[ &!+͕Qq#3ގS%Km>PCϹhmMi4)(FaT~;}U~*UƷPxV,N)WȖdi8h51,<:^4|0+.LdeK:؅jM)TpڂL],!+T}z]]cu݋2!0?XA]qV/FfגQ*Y V9覐b*ğ!Bczٴ<r \Jj29~_+[*d\qJ&nG.\G U: T^ΥXs"=#Wsj!U3<2T`3Qu<7)Vfm𩶩~6sOvF*0Ădg(#{'ƞ9;}p$s2F;Q>*H8Wsx{\,4 ޞD[>*NI~bajW _l C|Z``.3 G@oߩDtxOA!wQ<Ț<pSڗ]p\-m">% UP!, )-Y;}fe72TЛHXc~j,G>-RV󐱍V>A ?s.19*\eٮRσ/4cyVw`**BJ˫?.>dV́s]樛R^,ʔ QelA `@ښa=]VCx=;(U#=BAF:9AVݶxF3:ŢN491K}U[ eF-axuM!B .|]x` h[$ cg p.U3>ϠyZG37kVp1Ħh,%ֶ]2jyl a oO' :Ѷ倱F{)IJ@`Gfަ!U a19ěʖ'|XQ<4bn`Ghi "zdQ)Iqn1 藉 tVʗ:-eV$;!-N)}VCokPgj6 &6f˻67mKRYI"⭯DM w5a& ydzn/B {$veNbןI(2 2ɇxW@CRETn>֒y0sZFm_k$ö'<-L$J`'9<`&镒\%dL$ʠlI"k̊uSL=Qcѹ8cYT*~i9=J"=y(E#^qA a^h.ݒQG{%$a7.orHO2"uߪPJ{c&\l[竪fQyPbC0%@8h: !6FKls@-5 qK4bM*jMƣq–BrX N u)^{a+LTh ŝ@Rp>>\ܢ1.^U٤W_u MKЖbH{1] %6CbID(Swχk=>tPrI*mG6,UmGTuQZmme8Tؠv5 JmPW1 +n-N9fT{2-X cbc݃*z׆Њ&7vۋ1TU I%6$0LvR*O/f+xmQb2+&Zs(.$(, lx^'̖gn͸&jof ȱS˾"&)aS\ZFVr=\U{?λ 9Eۑ̰Wn)%]L}BDX(UH80ZߟML1~ s~c9gb ʱMSr*ğaf2=K:ĚT3"DQ$ npL9M'{CZ a+'^rtJ^g}*78= OYY(]Pvf^ w1Ētf lbj접fƐӑH 1IUcc28<6 "y;AqjtTMzbYu1!3~.7vaFB2GŏxuBUy2!H72]f:kn[/^^s׮^Le|SY؅ϲcc`D7ˇs)0"妧K Dcx4ѳSH}|{3Lbv=YrfԘoBf|'9fA]u^1] ԬS)dm+O(?F LKiBX2On*]|A,4Vܼ| F@CX:%1ï {hl$z?[y(tHZ[5nO@)~{1Ji H#b(7{<Ӆ,ѼmO6M.@K̦lo t^猷R챭w6/ORpO3͖z!i6^w EeI2 [e `^䣑a)Sd(u֞z\* nQy:}'Ugra5/Qw*Cd<~ Pr5R^ܘ?V<؂lKCV]4B9Ϻ>5RSởddC]ož~L.EUN4Jׂ,!\ĨZD;oU qMـTVD?2 Vw"͇Շ'!(6xu[ɣ#7&P@. @̣w.(I35CU Y%>QQ0b-1Z7^P<ո ZʁsY΅+T%ևݝ ўϷri~IE~EJ58H <ei{\ahkO1nO'ZVB)z& rrq}%n!(p =$1i,MA|v4H SuiE("xO'M@N8TMn7+ |TzË 1W4[Q>x-`6C5NaOh7螅 ]|,Ϲrerw`f~Y6nѠOW6Ata25ڷ̩C)v^ǏUi8۴DV%wMCد]7>҈G7:lюϙXi^%nY[݁/^4}N>r6b:I"䨈I D)6k?FVuFO0]ד6By8lA_n4@" -D:vo V0mupB5N.OTa 񑗎Jc#Ո6(0?0#^L޿R WBq,r1l Ɨ%C^4j&DZ:Vk0dM1 $53٪ GF^)PoZېAx]adJdj2F A4TrA`NLD lmfO x~cH!)ذ?u&oGNhnPᢴZ-M"o UP'=,I^Vw%69cw5nM=&DƅFk֭ w}"BAO(gpO1 iN1g)co:+WvXYSuC$(z7H)ϰM{n5Pj s;PkJ**{XĹow9F^^de:t+c}ЗEvig]~甶IN(<ҹS'9f=9CDz`_TN "gƌbH ؏>UZf <}9D2߼\ũ[3:GR$%$zm2\!;Ub_Gs-\~! . j5MXYV%/C8-ΝZ=;D `1Ïw{uG\fnj bHH <3s0j~c5ɁA|s1'lMOBsse {Bƽ6ByEO<^fV[THej"[s9Rś)Wu1`b{m. uea 2*TYRCږM 3̗T}oy]w xD#cz "n- Y9I "r Gp(j*[C 6-,g4>$܌~Df̢F0o{S<6Krg`d (@oMs(2y\FQy7HbG^IF5Qڶ1N2lt63SAo`OUצsQטyr[- ?[A0q7a 3] 3A D2um=?_ Ȧe90`1, XwwH6Ea$|!q@鞍kv=dDպa96뉅ι"1LV !!#s|+ߋmwX˂ ?#s0F10*ɢv!Q,Rtk(_ta,QEʕ5yg..j O, xḊiѠr=㵘/M?r;6L1:Ovs^XWt+[n_X|0)%ؕ뎟3 -k\ʯ64r6(l98l[\d`/6._DFQH+ԀCȷ?.L2ni1Ң8nI)-'7o&R,4r;=N\ӗ,MV B zEsw%Dpb-XBO~P?u)j~to1ð6FO~%詖Ǔ0c~$MW|&A%ԼmEb}ӶU5(y|$S^o"B;'ݚk844.edupCgg*;1ŕ*S赅ԝ!dӤ̡w;c09]j ' Q:iwyԡ\E.`(k-bgՅPg-umh;7KvuPekEu_n? DO9:GY<0WVN#N%;T.~P n]yW%#&m6fR?ƈ!JwG|xٵZ)pʳz2|> =ʝ$RRVB젋t69 /5]Fƭ8C;Jh2DxM>K-NUc^ʴCɇ__Ss@-ӄ-4NZ*8L?Ym}) нt]_Xin0CV3$SM Rc)]-&79:[n]1lY>0F,ܵxO(=͖Ifm݂g-iz F, 5dP2. )`Z %+QƸcoF<P%|ΧXz|N<|ٗZmYcg?ů倊Gǥ5G[hJɝs#|,2@s}˰Ť{g< (QF68&bn0qb8#|Un Bp ԓFDwo$xpfǘ-(UW.{r,k[い+7},u_˨4Wn2n2<0tvs$GYڹrolf{]ɳ|>wd47@c| ÇOM%3^w1/h6@FZ54L|SkY;_Q^qWnфʷP( ^wS ƅ'Ďnm!?s@\5fTG}EKP+{O̳hg`Ny ye>bZf \V_;}k74mu $pp*h!|-<\S_dp-Fdگ6m"<(/GiG=>2865? &e_DǹR 7W!ʀ50.8Mi#6h '"W%4SNG4J +yddG sEYO~`[?eةdIPOsYeɔoP; , %1I_4BedW].`l y3|R}۹|X$b/Ը`v\^` 1/3r%P2PX bF%Gj+}Q4y!@1U.|VH5u ٣!c{";*nϡs2UTyTPǷR(4oDw6٣Z˫l:9 .VMJK~*Ic[b"MūgB#g bCjQ,)(hU;tX|KK(rܥJ EMICipN9Ro].Ae_ʍ5]%]G+wu9ZJll _S$?0 YZ %p†yvJ`-(90ƴ=U&TQ^M:2FFs@%W egֈES}&Z>TFX%%R6l|ƼTxxZ SMF|e{K|^K S-nTs z<u`X k1Xfx#9v?Do6`B`}*f,lgZV?ߴ#ͳEW@2x/3^}uFI%z#|f9Z- >S0ڐO8R]&N'"dz+QN(2ͻDŽʣm"wi,hclts&H%YiiH$/ƛaQXKmЂ1*,=nz4r`6&ZhG;WЃr]u҃ѥWuW 'Ц8]Bft>cUgRv.O=DBw;\Bsl6k#±i7Huz#Qk؍!~9и2^)zIU vCyEe7H6gU)ynɓX05$ 3413.ye;>iN㫓6~n$>\4L3KxaSPaƙr!Ma9BcKeٖ}K /q)$7J%dNӢiX ([m\S}9I\O-ix_tؒShpe9nkXeeTSKm\- %V 킡צS3fyDǂM_s*pЃ%آMN-aM:l*TF ̋{xF.>k8jiN:Qm~_YY̱F"5% 5o.ۭ}`H bK] '\a}o1c= D-\XB7|O: B;שlKux$+j9mؖgӄs\6̙8EuQ(8]Q~ǯh{lxFMX [6GM~RMttsqݥ:xFtL A?;s֐*7Y61^E%'-ZfZH'|[>Ihk8h#Jj lx`[,^Ixr*\IF>.Kp Ɗ+ s8B2ipb3)L"ژ1?485F%Qۊd_Ʀ1"XK":bŲs6Bn"s#4.nsT Fܥ8gŗ;=gha?_]UtqQ^WI,祁A?LJK15>}{Dȍ 7: =VwyuN$A ^2 ."M{fnR?]3:cFQ@*W5jy^isI!]FufR9}(9XE[e&Rg-E8>I*jR[P.& ,_NU% ɾ*}7ơ5kb6_VvYs*!2bPxHbEB9i-Ozk=?%H׼YI(e#=$"o *0C[nzDzƴ ۬=k|4kiǕb]׹cj”FJ7G 9!"t'bmZ͔/H;?kf *rEnr,U1eKT0=YIf؍vax3ۚT+K ѻqM|,mC1O ib%d23ă̍n/k` O35?mI51$iWve jцzW$f DX27GnEĒ/X ̦KB0y!W>J_c\nP$h@3haX,f3{_k]jߚ2"7s߻c㋴{nR}%^2hLb,#ȍGzhԢ9= _*h?:+)'U]\ҭkS*A,vRR[sP>nfD7Q&ז:q쑹xKnMeHS$[HGd*|r\)ҳҡPYHU` n Ux=' 4=Vk3]$QX.`DG= Qp"|fvs mƣG2G՞&X O5kv]\)&aeF1\ u: *Fto&no pz#MSXu֣Gދ Sa18jef(?Ä'GXi0:w\P\9,̉ '¨`'Dd8`6sσ\mSz}pѩ $Ս{œ2)F5UѸa_k2Ge[7~yQ$y_=*A\OUygQan9ʰOE/Yӂ26uB?#ZX6$>Fd3AA-M̆tˋ3G|.(hl!G,%I&k*t]/`=|l(@ _!r?_يnR-hG׸(mrӣ=lm@f" XĻg}-xmn\صxbM$5%Y|rx_#1tS2n19 Xf'\:!ZH|V=)S >OX&c,JR^46[AWt ȏYE#l+6?-jheZ\8.^[ce"YFbpC^xX2`><(;\2dɨoĢ9Y¼ UpL -u rԯsl!t9ڊ)m/c>MCPH̨đ|ɝFʙV'W.k6Ӈ3}fM_`լ!fzU0etl{N@[%-D܍0%4Zw=k;j!g% 1tFGJbU)I 7mRJn3ύ=iB쫗yw }GB!ܓ$U,0rxJ&[o6Rt7r> WF$:Xt)(c|VHCU/|\sk{KGF7P+X,v#f.Jtx9Z[ [Fz\?@=0o5δﷅ(fJm#"t5L []y P8ʂ$Ũ&zlg_>?f|#%IM0]^ ߁PUK{Fr2ôXDK7wr~5e]T%hɗe'2k:팍 kd+Q_*F&U,`.Jkn5Z|.$[/ )<\piHz4/݈FqκFxJюQ1BɼJ^x\yNz}(cx]&SuW3c\!rJۄlhҞer'MM7~?yl3`+-GC6 n9 +һCx^'y}X1 /Y@ W6nXvG뼞_<rtIUZ@A]g~DDN hT'ObUp UvuunU/4[WxÛNz)cT &" Yp>#\ 4?3Z2U܊~|0Vғ&~݁@؂ʨqSɷ^I9Iln[BHne慲u`Fu:TaG> w*"9S%zހаUkfdx}Z,9dLs=DUmvUklPLM\M9(7S-BP8ua|[~YhR ># =)z+[~mJ/I1p0hH0>zGq!Bgt7!70+k+s)ԍ(TP17=Y(cTGNدS R̨2WLݙQE pbġ` +Hcum O&`?7ޑ"o.wSւtc0NjB 8SՅ:&?`x>TKRR)mzL̓,v ݹe#T/r7}N]Q^?4mvو™ ЂEMU\ 9M;RXY sC8 B_t :A8 MXVf;E1~aƂFQ^I%$HWش[ uIE]8 )g{ CL$~l忄g05W t%k҅.{ Tv\Qa:OBDI xO0J26=]*&;ٜl>=Ǎօ݇/E8 V {A 9;G$ du4٤ZUݪ;48*D8=Zv8t'>D}MΤAþUN@'逺,u\4<,Vdkn&OZ StEmw yҠi*sK3Z0 /~-oMbIii/hi%۹"G#$Ȑ#j:?WUTdo2/q#N rca4Uo;\nU:GꟅ2a {%m'v??́VȕmTJfP#jGuSSg?ƨdr" n j\ɗ/SN@ #)06d{ITdDRxg8 Y,;RQV'xB C͂oCA1>8HSJhcpG\8drB#Hಇ;K.:jְ.&53j>sԋ dIJKv.9ZJCSUv{d5uߏ_='H,4yO:_~ ^&b(ي6>c2|aշRY'D"Wuam1~0#b`jQ+qpWcsC}xoId ޚC(}@rƾ{hv5d%Pm{yE_|w>~G-cAʡ}ࡖ{b1Euׁ(]Y<ZN|#ĪE%+'IZA_M]GQߜh2z5 9f#:Kb3Ztm6 dX.MP}aDVy+ŀo]uyE#7|]+kwm?]΁LPns=XR,#m KteK3b][:ð!o}xmXjbO[)1k* qmac;P)\MLS *h\FֈҸ]Tum,q7+Z0kݩ|KtBjaPEٷ'o.}1A2ݳe'B{W^05%'`nD~s)j),s]m)eDXyT32NuJ1 I^M4q)Z, v{)mwkCN1 DLYhyiqr)Ox$0M#Ţl\Z%awDYC\^ XY#̨w?X̌:)o4/b()V ,C8ľY|΍r!LmtDW}4o\>"L uxcUy65DR.%3H혓Ծ<[OgMɿOMȔ8 vghr2+ PX״6ǣ⣟q(b^P}qEѬC׆!\\9[Fiܑh@n@%bQX;rLd=󃵠s-O?p.zw_~_:[2иt>~/fhEʅRZqFtvQY+MDk)>ze[urC Uw 6,$1(|6nEH^389V:Bz>%'92Ncs 2s:=a2#_!k;{_#Pi4?RYc"PHZshyIE|rGꥑ3os@Џ(]o1,ɛrwNfJ9͙.DHx@xz%>(JJ Ȉ?xOiJPSZ)qiH ,[:F\3✘bBh$5|{q{{t[(~vdMD>|R^f=P2w! og2_gEy!oR nO%ېb\i ԀCc7ߑC|Oܸ-4m (F9iE@"SUp5^<ދF8Cj`J@Χr=LZUA##;Y֪X I^Vi MOʽϙOy9v>(C5i].}K@m̬w9)a*cz,-)b׈=UA)eڼ6^`PanA *AwTDLH ^FPp9,m@ 6# CH)C U$ѣU rOgrfܹXtUZ_rrNDe5vo>Ǎ(CchqLQ0/h{_0Kj;".|b戜qWp> DOׁ{~v4Ghr19;}5d/̻Ūؠj1JXJa0頗4 m"m7p`6] ֞:홈G<Ҙ馬s1e)cmdVhNxjU[*`v "NOrFt3[Eh3x[T[\үHvvW%j2"\,qXoAmG'}z@Rs_djeӇ}&6~Ff۠0d~{&@0BBJRO_IH enV_ӽ Y)ݛcїW{~('6h%-lC ]E:iwi1q:=s@w|1JO56vyˎftWZ0d] Pfi䝖]đjBj}81FZi`T &Ɖq3BC^:"_W VJ׷Ӧo D`bC],'_A.{*@6ђzc0Ԣ-NP)l?E ьBUzjL^PEL9AxEq J)6}sLKZ#tοVj&aDEewZs5?rNshtn797ou1SD|nBf:\2R(a1M*h#*! Ia (ձ+K _!H)&^Q䙗C7zpjp0n;{)%Z9^Y|keb~z&eQୈǓz˳*aW&j@rra'2hr<]kd IcS̽,eeL=JB3;-LIs5S^- QHiL!>"[y:oo2m)'+_O QZ3 sPبoɘ7^6$Pŕ0fn:M:)h;.,2g6^WE;"ʛN1O`" &_k9>Dx$-,%=5hqdvgϠI7?& #61̽hRoCqdg#Ua,HgzQ[H*%JC/掎Oh[m MGMU)V'-~^zygFK7v5{O /ݼwGm Xj'H ւJVCԆ:o#=7r@g{Gݔ8@12a 5z=CHs`֌+aHonد[;pwQEV9YB)Xp2&0|[8>Ӷ~<~< |hʸ]}j<1>7HQep}U𶋄T &]&+}3!<ÏZеƉ0MDgl$R"^bwk'lcy{f6ۡRwdZ y $Io2F5L `+uLÐݾx!IgI+hүH*˞TVӹD/Ħ'x84;%L|m1Hy(mұ&:A"L)tIUc5+<5>ݖ^`(?On-u˚9!}BS)¢9qI@~n|Pۀ+/s9iga#-KҎNPD ԢN'n ':'Td/$QB:I!dJa\﴾GQT*ZJΘ+Y@yt~9 zb?-*i5ϭ-AǝjL_dG GakQYY~!\T/UPEiS[c i0z01Ԙ`G{|#@Ҝ*t5h~ι+ej*nfk,=k"ގׇl, [;%"#44).G JYdʸ-x6~?Pfr9Phht}_=t̓4j P%,꾼IS6b" hRG?vt,|Ug$'>ElS!PL'eF #A݂I d`#\;0rq==ԁOOp68/`Lݫ&vɔJ:j P_ c<IX}n3'ñ@E 3\l{a=!uKmx|Wa1>vkڏvϞ|oj 3ֻy/:# C6NyƔe03YXO1Vw$o4? n6'x1_u(ǡ`,e0zùE{ uqoGF!1y٬{N.LSm㚾ކHS#N `œ:g-SJbǾiln1asiCfdtΤSzF~ߤ29mVڥ$:m)rZlyb ihoDkR'@۳S"@as|NӉ|,i{y震c*oY5y~zU+v7q,/0mXhK'tD/'ԉ:Qy3´x(@ca6u!\qZ o4c3b@Ǭ2EJ0r'oTT'^!`gCG<,i,7=!CkMޥ >Yท\^T݊JΈrP~E:`B1D砀Qc>qِ^lGv:ٻTo'UW~'.5 cq(hW:#:=5ww$)əS6>!a G$7_F`۲6s^g@oѾsTŽqjѸa}T FWgqP4YQֵKzD;=e$/w]C8k¦uTy;n=;,6lcY9+N)FnbR0]73wwsH]W(^[+yyLA;_=kCYHi;gU]etR h$h]r50Zx))ZZ- d(U" S`vL c;~j uؖN/rU(P`a,7߽hV?N?'ir3z$Rɞ5Rˡs"!J s tD!ٌ/É0/myʰ FuJb!e >xܖSAb%|OI= l^'Ã,w:\xTQy~z`N;2f}x.&EV#xTm4ҰWʑCwej%T4l^UpXw}qr_cQ* ]F2r⊎ tH=sF~9ZLG&ږ V,`ɉT "J@FpZ5  i!+7x|"c_[u4.DIۣn2ib|Mt'3c%*taG UUp%>V8pHbM%ݜ& ''CIJxTwiC{*30eyXřaEq~Yukn" |K .5#\m <qߟ+ }QſŮ׼5Z_[[ s췺|yR[,Cxx/֦df^0Zˠݼ%ҶZoKD~?7yw(R}>*YΔHS yV]qZ*=ٔ~{WQ2KCq^TH׽6FY՟T`Ra/S+ݼzL<22mz&9yjs31iw^LlzSHR=wlяT 'y9 Riݧ)X-3:C[qg>‰)R|Y`Aujs0@_͘m|~Q!\gE~Y#IaD$7JE"M2b6_1#\nq)mUeNt0 ^gOlxݙM.|%Jl XQuL*jszY/shP3ㇳ?40VE0e,͚I#ĬTK0[>u$fjF'/04;^2Ɏ%-Ci>յˌK!UׁvE*SքfKgWcXӛwOΔx2\|=`afH!:$eh)Co>/o 1tqӷzHnuF92w~W`c="i{/[Prhֶٸ)'VA?6mh7N:y.͓!CSc_v&*;y;©0i ',3#U[ƯשJhrAQί2+hHPof8M> *& cL9SKr>@_>nW?C,tbgUCY8DžX qn̵fqܘ}:3i4a5}Ęs@LRoq5<4wJEQHqFgwy:5?!nbcS<1/~uǐeC5MG-IqyM?+ _fB0bF'/;lx+kRzQ/S] $td|! m]jbE֘gTƍBAo;GgZ(`nj(1ycҞ< vzHPT"#jEgQݖIpb~POU~hOm} ν**MGs6 !Ez' nP:!S-Cbb;8"ɲ ǗJ`(cEj|Zߵ(xE$!O's}o=⾢7tVL6#^XŜbKDh>}» nυE.44kF&VPB'1{* iYb gf-=<^yJ$#Z-Q{-09O?I`ɸ> }R gX9`1b2GUڛ,o `X#; |K;i15pw$$"=OJ춯l%⼀z%{,[Y_wtlZ4cqςƏ"g3Y37жr5A߰S HѼ=}x)3vHJn!\v]xs1aV/ΕQe<t<@ǮKFZQޯ `>BJ!U!8VxIDa*.r3zv'GYȌ/-cZC!*qZz}oGtyb xMӫeۆ[ 9(0SENvSGgj{p zg_E_Ȼ8M1hnKi650yT)M}D}+.,tΫ?RtIQƋ [(yylEX>,HC{ւLjЀ"^ Pdd=0Vѿd2^3g+xAkـWG*'lecV(Û"vWt!Ic!]r;+n Z5 ,ɶ2Lȏ5H-U8O<%n;P+mK.X0/i&f֥/{Q^W+>yX 35Og>fTmJLAN;Xm/6O$#S,{%{({q2vkz D1gZۍ\ioHe竣W4` qaMĠtمFht12ZqK|}2:6(1kBetsbu#LN)BqZ)PYW W3qg,n|:h- 8o;.0FayQWBߐ)$ye줁D>)+ގs^Г%Y,ppV. 0Vuig*[ [Ͷщ]ɪrVzN_pdÙ∔W␗n fvI1#W>W*Ȇ<'ONa+S u- engN=~`+4}E}x8)p`fMtx1X$J[ܕJK(Zڙml768 hrࠆ\i-^U(),{-+J?`"KbQ57Ų2$m5{3WWN꠯薪;F):N}tӹ];e3֗5'8e$GRi~q $c y$iHrQ % Hwh`pW"ÝxiGh̨y`l=QYM綯դr`[ T_Lu["(-+ؼvDlJԅVH(jLVW(-3>" tY$M` S>BZ,gLy OGJcFr Lcnª]hj{%xc5c[3N JMyQIeμ+) z|@v$ c%x $ʓ]Âb|>ɺc﹍,!P"9P {|~iܝ:agu >vRD!  t]_ +{(5D u.I3̫{.e\ZQX(eZeϳغj>i<[ HѼIฝ}>]m ыho#ZWuBpVD]5 kbCȎ$R>1ۮO`C,JS %l|CƲ`% $61îuE6o==!܉|@MPr{/ iC7𝥍F89} kt*IϵK$B%3U| JzٍSG9jKsnV\[~#NQi,<3ІrkPGO`)̢Eh6} }a`?S0Q1K+ R#փL+D,xTw/kCdg85 Pi^(L)=bI鬧 Z(I Jr  qxGѵp'U(k~;95;HE$S*@]M|3c덾vyZsJKMGT?$[ !&<9<ѥ]m֝WVct4-g6-٦advo9_!:'1cE "YRViȑL XL v#4su%YQ7Isnݔv8m1Y[=SEn`IŇ]Zu=9T@k fh]J\ž.ZR\9VwSX ͕f%Mm%|x*\Flq^5 V G6%8`Nݬ6I?B< g&8il7^ R,I_Bb2r hX @WS6S 6ȧYaitB0=~7R$ #;]iuf]ma<?kf ]:W,pé_a{@W 1{ WpmW̜@WQ8<}Y)oOߌ'whcZ"B7\n ܝ!0}Krug`.y8%=4e!ҍ pɿj8A;;Q9,o*m6eF-UhV>JE6bOqH:(MB* +clvSaD7Ԧ HKz x`AQ%JȐ$"P)#V\mA l(cS RJc]x Li\js$m%EL9 ,=4"2۠ڱ& kaUh@ˉQ }xʈ.jrsGIQ!g1?*887 gT!>_bXSCdi4G㏔ӹga^Oߝ/w&T}Z^*KakKgNdכZ<f:+ l6&:re ͟MQv]L L:8$yΙ]|s;}Sϋ7ײgɛnDc6CJ=) ^Y}VL8TA&M쾌ϕx[j-vgߊ+eHxɪ׾,r}qÂxDTs|,^%Iˆq>i%N6n֞Z' 8^ÞBύ3l~G9u0_~.mOxhیq`}[H ȷ8HŷF9(%ܴ_xI1OHQ- |nI"&Q?u՝Q@E-Lj5~\kãY]┪%ڬu6  7U"e%@]^\F1MzDEid:5|ӣdRdB"nB[2긃KGUtf#>שk6v=:yQn" dd 63KSZ:`) CEfk7Zh*]h()+: kߞ$>~_2hG\|"v`2 %oHvq]HT*@tER]+O,5}IKBq`h_T:&{MQ zH(P9ڈd$It`CSvŤO0hP 6PkSbW0_aalG ר91{2Kje8Raf¦|=j:+EOz i y<=DCXSD!rwDYAO.kwJ0;g$W~@K,{fN@pC6#qoYz01[;!yWXeH㇂3/%K+Q㪥nš+X0p|Gq'O4!CJNpv- }P3]@lxfёiwc`jM1 9?`*Q$.px@S/}EeVW"f8삺8BЇ~ 3ܿ$`Zza= ^}?xtI6dBqh/yFD|S_ouVc eQ˧jړ#0\{#s+&qDIRSqGpv#Qv\r nSV[o͕\Yc`e8;5dZ M͌ђi"$t%to˘;d_dqgYAn)cj;xNL8O>zX}^!d⼶TFX|.wv܏Su[U^\E 43ȳEЁJ퓤(Zjk޺|f]Y~k,z0CRcP}C0`??ӂ񤮏F^moE ,%&WY_82gJ>!3s\X@P}Jr(qR)OC0&(L7_gY &uF%: '.;xe+0-G* lW5oݎ!Lj._R#V,+-=\󞯎ǿ1KKĴv.HqlB[j7Wl_ QYk .sx|Gy, FOz 2E5/{zRQИb,fSۧo2Vae[Q|n%L¯Ru_f)/b7ͽIBbXB]bg̈R6ːyVP] j$:!M.)t4j8FFy,0 SoOƐ^MB'w 0jDR2FѧP{9TEp[g OGUiZ7V% TH d'ݒAԧ );`([aUwMv{K1WHB   "ه3DI?d g,zNc3~iRF__UȒ9l{v3M~I7wWo/KNVķd@!f:3v*nH!Z-<\U Fd %.WuC|-30̸嘓A%0;@2u>DmU{yCxWp m&4$ s25a [ O=^ۺ݃KdRpk#d9]_( XFY$8C[+]"1Vɀ7!M0jlJ᭢ur; t'Ĝ%w2[eH ӭT'M8v7FTH7zZ7/Z.)Zzտ{*(K:A\}Opd)mJ$"fEk`6!(6lԻA/G}@ ^ַzWمK]{~pHxd{ˠe7pEoLl9`哔")܁+X>sˌScBم·.8 _ -?8a+[UdŃqIvz hVo|]x;v%+S ((S\lܹ.bRm6\u͢$p 9O嵃V1bUnlg+H vk@\כbL_g$;iN :CMx{Ӎ`b&GݰbDThp{EadpNꏺW `Xc{0}TMw'fHeS:;Nblw\-h _QK^j.F݇,adsy{[mb! zb95/fhoA"$aߘT&RR +aOP!Ωkn $6/([rpS7ĥt׭Zٷ4Vq\O`a /X~Y/Ӂ$X ڱ2 mi\num! {Q8X ?P.-s9m`^1k(Պl)8A6t`T]UOWJ ^¸^|'8 V^*_=Rg PLz@h{xh12Y/Zpyo ?H"XM!= L=‰9,l%E?+J7rU 5#҅'U2x"[|}S0hs<fHCSȅz|wec Ŷm5s RҠ>;u;5baS*5VKŻ`^CPs{y'i0\_$BBo[WHJ IZOk{GΗ{⼄ӊ+ߪts?Wd +IpOVRRey~v\_܉E:RҼmDJ atf?e$VՖo,';qܱ]w 'dFӸ~>4FUq@*&K ʬG_1O,WpXtqt1!y۫3Ҭҗfpԙ5@-3vU-`!qrd),dt$6Q¤&ތOXB+o*Uێ~^]AEx?2re=(>uYVQZ!qFJhIkek;Nx8prTuA:ޅ/2| 얏mI,=FU>١`U gGciKvDm75_tRMȉ 0sWʺLb٩+Ns;"EXj l;%i#s Y0P cQ Gϛ=}Od*8l4H̮]퍻];17Ϡ!~4w540/T.U ?I;fhZ3"k?S3s5p{t{_8)TA[4%+z]XX؆ތg0I>f6#a ypɗ!μ.ST_*ggeTvu>%:޿ ִ5:f1ߥC]ϵ:SN{tw[%aqj(@c;s:I+ sy*թ[_gYo}R^FGNy`j<(n/&xmPcȸr䳈mKy*&_LwqM/nMY[f(&ki* 0uZOy ~yܦj;~iI'́ܺG4p,rz*\odQ0"AQn_RM: g7cz~Tnfy`sƵx3s8wW\s#sX|oj;)ِ̎3di\qPTwˋ 'Nл$-hdXZ#v(D> rw&O{%E)JJyG5}xC] n=u#Bk[^."{웞$˖]탂 XqX{otSH, RQ>^0BHfiyїaB sS//F{PE] WE_Nq[ =Zbn:_+V d H;i+ h 8-v^}wS1*.WWk&*h=Y( KXB@~I<8,r84'm/Dd 84*!@ƪaq4oKyz/M.snmUTtzJ϶6 ,BIUD mc~CLGt~N/k٩}ɞ@AIm7#7R%jbMm^ S%s ?!d@[2exߕ6gexGLDBHwuqQfZ`$GDF5k )1J6lk"#1k^ gdtȰjӄe":"v'-*(E1ѽVpoy;kAsDT,cb99η kz֤ѓT~1T) pR2ʾ]i[ Ef;#j~|$/|?BhpBijocɖ ˡsdv~\t˛= -mW[3{E$֊89 j4ڱs֛~"o[$L*ZIg1azI?Wqc6ߴ.aCSFJ֧/(L߫4A >;N[tRrI&zCt"|Kc>S0/[n(m6ImnD wP91gb,wĴk}mPl~w $(~c< -(+hD{{97WCGVzM1ϯaB"3KEUTԤQemBԛ[$`*ֵHx]b%䜋<3ןx"#->Wn䌸^ov#PEоac nc7"R:B9qP5qAqkqת`Ǻr/Wc޷fTkګcF2A)mRR roZ҃-C%IG;F\Yw 1V8oNAB7v=A݄()2NZh`Ȉ@<qe(5y[L^C@j~7ᵿW5+EZ?z!gXN?r!:17ٹ0$̤ r:q5A[SR;8h5x׸z|9P٬?"xӣaL86(hD8h tܬEt!(i,6cNIn+>鑋:NE8"2+St6LWonoa\@fm?.^V pr̃/*vk#,ܲ@RI%•SC?YXMab.Z^7(|fVE8dWCC(ˊPdx1x1r2x"t)Jury)_do5WMTGX%g^T7Q[;] f 4@ت?֬ف K .%_8 5B,$: .Y-l[Я#Nː/pwEN6A:y\KDՌT\cҾ#@bݻ77Ebf#(foR0SBwHi,"0=Ćz?zЧUN2:M`˒b"r8mJ\/xAS#!Nd)J> ΕDGh9m׺D,qƬH,Fղ֜cw= 6g5$t^ ]PB5JV>ӊR߬G4.."&Ž+yoCt"a6g( 7oFDËOmU(4$WizM1G0=' h ð܍X/2[%rD9jKpd ]G7ZFmVւvgM n^ܫ3Ndkb_(l5D(/d E-sӤ{%((yH-y90I(BN;N0R-tXCUc) PedjB܂D]儈8 .(Ib(ج/ .J9ǃ>FRb8BX/$h:`ڒ ~YYd@t M $}'R;cZ;h4dC#.,77N|0Kh7Vj 6X n_-WQd77em^: f>Jk_9x@rD蛫Ud (}8L\?"tK΀u ^@"F2+mPG?9_-@(rωH8IT?Yi (vײm9,RMu6a;8? G8} Wqe6Џ'XuU E՗CJWi0W Q+sP8y#(6B/W:S}AO<1[`C" e*cr/4քk0v ^R"]d:sx@߼2ZYf2HqrAoCsS[Qa))TixsW%v{S Gt&8#B|tQ_d&/8?~eYIwK-r/ѱ772 ',ͦmuN}HzΦ "/ uWW/Fk$Iy5WvM(lIO@^ujDBe>+ L9;QF,gj+dlZ 1׸( wb{JK- mdC)l_Te7#qW ԯ(!9<}-w7|To7GCNyEiY|)N2djTarur;+7y ` єOc !5C|@xUw) @m36x/ði]5 .n=I3јJ;>6b5<& yq$uqxw?a]lV[s\tRژ^ ߞ`Ćbn 9Ҵ{Ze0՟x.^]x{gR@g͒2G$nddFR0sMWͭ|*,^z6e6~QP`T< c87=&6b: =* 7fj`` Z+޲ИIM8&88Kk>FB1_l)EbxؗKgJU`K.;JA@ʼĘ`u4_VNGý^Nu>j&MDf-mKUB޾!tJۂJ/cR)-pO<"eʆF ݮŅim}ȪwnE7? SG|A;u ]3aզs:SіU,?.H_>r55X =ov3k4x=xe| 9TV[3 7HQKAbd F[Dv#JAG{l\뀢Ϫ< ?~wyV'vBwP4wBG$BzڒC[4'6&Md~a+b9>Q(} goc'C!#߄$ : 74SkŲ҂/XYJ#'7lI0k#bQiwO{.D3i7!N=K H&)16Uz2ʏyW$)qaxޝ~phx6kۥ2"mZS^}i2FU!Q P2JǶÎgI7&RY 'm[咃}YI.$ `=5 `Vza6#KjL6>CeC vA@^cۓE;ǒUXu]A!^.MSIrpºC.I>DV@ r[s h|k8~^T} 5tNqt^;Zo-V'XhM'9q/ʨ4l`U-3$ ]H0 ?sNv y0Gg祩FRi4u}^3 Jd)[ XoT/2Nag%kSp$YN%&lUg~yf$N /JgaRKGJaEڴ},f|HW3VxgJӣ[J݁fhQ9}FD#n~Y&J8E ֍ gti3Xw6,^:&RG0F짍8F)~i2s@E/8]unzgpq킰jw'>F)@%ŏ穷Q 3Բ`^jހ( W8:`®xl=#Wx.$EJ.Z ՃG ٸɃxNW~)pgr]n&qV,Ia8>V`I96ߏs=$!hW6YX!':kEEgt~.-2wcaܲ7[vc[ ۀc"`[Zt2*Aj(Y"{qT.|Gx]jbvOO4Z0@V򦡢蔣9[J98 9 h ~.9ZEMƇ{̎Uw &i YGyA9dǖPbU6*TzqO+&6 3;\ٳ AU)4*ZNccȉeb%!4 gJy 9ԇ v(^ě#aNAOX5 (DJ'o)ruo5]$}Fāņ9<0̼XDȲs,e䮎j$kHd%N b(ٚLFt[sq.-k_9קk•Ħ\Y h.ڼe+A aGM!Q Ѓ$pZsc'^lf5F,Y^ykBL7x淑{_4 ,AU4$--؜0a9@?%@(rvf\ +#_r;"B}fnpszr#>6)CvDBLV+ޚ|uF|fə\:1ΉwdW`Vv'E0 9<#mMsg}]>Nb K=F8i\@i`gP/땋̖B&k,\Zի֔K^{$Qr? cS~M}ڠ2 S F)0n jXМIFj<*ƤL2+jyiP&d  ܯ)qYYy? ~Իx4k6*i#JˢM^>ea >sS,^M0n Q~}ceYKڌ7kkzm| `InKhYC:Oy%ZMDar@n"*ADj-ב˼A>,޶j-3ؽ-aS`5mes|^ 5 [:i!kKs;{.0P/l 5)\@?Lh-=سwsuDgpS*YgX]dפIR+[QwfUt׶h4{DVt72ȦO58!Iva"=g=(-"+ӭÿdk@q7|)nA_)8sE8δqJi\~~. zYo +oж!h$2;d=G0]Y:~IWϽ~ɚJ~ϦD--h|0Js'ï=GspEә=H?P$0RBV6Ձ z|y fk|avl3{RDQlvUoq(Q)Hh.uF7Գ:}g5'DWlb0/q\lZP:9X.?*m Q;Dӓ}E.Gcrȏ!+sbo_,3cG|b=aʟvKQ=;ş/FQi?:G׭WPqw ܖ$?TiV[Z9qwAJ I x1|1¶0t+4R\$ 2I|UNG];q3o__̤ rK 9\ς~.4M X`Gwy#Ε<r^!%a ]P۱=,+~ w<Ȋ!T1J iwT+fYyp"{1GݡP=jjn2 VDkeIvkk'b{egs":E[@A ڦw,%*gC{*X0tyݏ apVތOP/\z1fGC ޷ߵ̆&6O&oGS&g[QTi2niezjk MO?e\8wU$EFuиX:B[%(Lgؓp17 `u0o!nv4}ol!Yl$F`Q}۶Z@"{-RW skURPH<2~Αf  ղ7C ;0|02wOi/-4M5.}UYI{Voq"U11=/?)FeQ~83Y$2mYcp⣏^ydBkX+7 \)9C⺤ߚ/$$箽=ؙ}5cTU$` [ux~IDcd ooX)OuO=]^X5v>E`?Sմ ^XǍPRfSWG6!  yVGFM#呯6"~N ٖo߻]i:"u7o4Ap9)dU#v**Z!sx|dtd;DT4`a6sLoOnZ~ m_V{ a:Tc.!-H'Oʼn,bNlus׀,w Q>!LI:]} i 8~7FJEhLs`i6.PSqmyq 8QpFHZ5| )*hhad^OsoBMٍȷpt@Z@[IvΉ|1H zmhfRl& O2ac1] MU2&dP<|4[ z՚xЍIG)]=˶X%tIn\aX| ̈jr"i!nbYQC̉McX+d1R}Anum{sUM>/x܈7v?ri[K B1<rк.-.Uw!X -~uA#V0p[2 W^_TyBz (i$h ?W~i#mtS7ɩK~=F&qe1H1)V%3ە;Ca~{@G+H4GGy0=ħ}*]4ϯn}αYBMJo.G/!"V%( K9M^s)5HctNqG,u|r'^#h_6T 5*3Rg+i՝7=UA5u<< @ZbC"bT~-Ⱦ*JPsH.E,*?!y{M\ꢄ="[{P4Wre#{L*2|]ftBZl*Mּ&Yms wXX6ܑ`" jǶAWr?B[]O%q Ds!y+YݽRQrvyѾ '|vLR,ύc"G1GxvTٛ+{P9)ĨqU;r,܈yVzB@dM2JZk?5-xPqݪ ;]/KR^sJ;O:JAQ5l1&a:؟U9GMۨfN {(Ho82t|ut<ٻɺlagu,z#@_Ue6oH8VHpNBkԟ]=LB0I;l7 ao%`<kO˷k]/QKf̆#2"*@paV @J;vDbS6OX*ZluAvRxکW?m:w@~ {7M˾Y d~a)!טU+4IH*>|^<5];jhH bR<Xt>3zv^\W8Z-PM_w6ؤFh9 s꯰ 0- UJ=vE"U׻;ԗ `;I0B׻Xއ)n2E8f'kj *$P)b5 Z ;˿R0e5gQUIͤ#h{dŹ7dImb}%qN+C4o} +iN1yЕNF7E0 HeIɓ&׾\+.ݴ_zArGO)8]Wʦ mX,cʦ C?Ig\$6)h6 L"8 9P>NQl}BRljWnP_xV!_pTKM[ƭy2`N(^rKC}đn;eGYwd2P=or٩|XI43S h$O֝vRߕ\=إmYE^kELdz-殮ɔ۔P=q1 cL2P !׮=Y?TdZ7oK|Dy7W7;E\w?%̱>9|Y ){R3^Lnbdj:(1DbkJ9 G(bj~h8#oEmsԀ18?&hkEOt.v"yy_=gR23[إ7 wŅI+S0ޟ&㴀xq8 ӃfF樺hA>$q?Uy7rQฅ9'(F BZ>uXJÉ8 M=7E'y~ ׋3s0*za\1c`ʯD|_0S  _DP\qJj^01F^1hQԩ/D*Q>qtJXzӶÜ%ŌͨSˠX z\v*CzLǎ.̑e ]v6-[SXٲL?Zo̭nxP. 8ki21{DYsBEWQ^`*DеNTŒRiZv;4cOWB(iAX#9>7.q}"Hmk3&HvN3?X6#ý b V RAgZ]cBw?Յ8 p!ݚejAOd>=OQ+>}ػLΡ hz٤z8ӵȊsVX}Ґʶ8Y;e٥CO"Z~"|ZKWUS5Fܽ28s~p-CBu#FFP3ev~жEr7y ;HdTDLX.8۶r0#BWhEpF]*4RxE_kan! hǰKɱ fM ?´f8/J'GbwmMfX5؈?M4oߘDM]9$#0O,7@' YfhŻS Op0}(uRt1y@۾AAaj?`ǹM IskS` SpWJeWIA{1 k~ +Gr|(pZKT3MZ#tȅ1oeC՞}pK˨|-1|vST1"Il-廨#avH .>ep(򈝙n)vI%$ԫgehŚΦ&>1Pǚ"#OdRw;;q* R3k{k7MMy(Zt T= $Mg&xq2FqZ`J; BAh>rI<IE& "~ω2Ăyj[5AYLG[n>#1ahe7po4`cBUomBӝQ^JbC6A2I|YO#)#{K]j8B8C}EEuJ/׳x_i~2|@> TE\׌&~br#^V2έVEE P (x&@}WY-3?YB)qL5 slXw0Z(#qOO/'TRLL]W bѓM .:"9fP'ϼ+d9g&dZT;T}.' |{C' 0ʉ{p@]Zf`aZR:]`K31IBCU&Uζ \11`a?x}$?JY$ݬCi ə^d<7HfGce^wssܛ-D^NRM߫ m62j /#X)AŻ !Y+7blF% r4Dh&mwV hr/&ҥYQ(JY0+((P6}[:(N^E2cs'rf22i/'kwbZGّ4|v|/}%ǚ@z-ko R9hӈmL[ ܙz. z%KF)cGh㫅t~)5Z@잝 TQ[l@;AvimzVq2񤓚 ULLC^J| #|ӿ'c)w1; 0){U B_S8.޷X:FY'nQ--fEkI (Y{8FW*mS |h-ڇєM#Wv42S)shԓ k0*'М،q^C\jLbǧIOW4¥F(3;b$X j4=HVZ|ݎsP.8W#TLi%$܂g>9o'ۀA7*ɻFIKȽCS?\`,UȈb?SQ=qg[Uߩ hH#L,[^}V#ͦi$HlX3m6lSi詔g s7s|"\FGH ,u6]ƱfepƐ/^6<a C/oZG" BV "eD@=%şVd@G~^R[ { .vZwG~<Ҿcv3n1C9ACgP`S`idX 1 zKTeywᢏv%g}Uz(lMN]we1pzڈM%X^<fYIB& neA?PGc7_9[r'|BtQ ؒ}0K241FR$Xb؇< @ȂòvpgBv0VP\aUOW PA_JP8]E2IDŊ`4O lVfb;ѦyW ^>%±[$-w,` Dcd)hhSf1Pa{M]N׋vGiLHL- 2>?FѴbg)ZP7ߦ}A5%jw#t@HZEB}OmQ nV䑡'S|kn9@A>DJI U^ n% gZְA"h(*8xBah!vׁ)jX_g#č7tX -hмZjcS/\VU\N5(FxM:TNcJ=FJ*MݟGsKzQB=5aS;+xӱ Cy~}CK_JB7pSN>JD灹nFUp脦XrCD|Jx ȶTG 3]|8v'5i0 ̅' [L"YIwOËͷV#g},wih,>!1{b2~xQ$;ЛGX{G͗oHsro _q芺l HsI99jb͝-dhmd:|bWO[DgLoa v=P~ D:qv,l4>lKrR:~-V %L 79Z&S#;?)s ׭'S+s9`D}u) 1R:n wTʾ(@X!,o>Qeu$dؠXYvf܏8zS=2WaأC'UPM:C*WNsih /jqL;{5V%K+: rwāL>V)iIhM [L|r艾_-a_:Hжge\⋰J? e9^$eb}%WqxzB)!fg@!cX|X o ~r'Vd[(X澪Q"g h͝K72v0YscXod,uO 6?i{8W $rVDiV `KbQm묋qs?重|d[E<, k&Fa6h[_?VAwܮB'A&h漟MO:6}Nvbh87.em/Dw6\7ީ|uW9Fp٩ jHDP jxyAF>pr^%ּݨHaװ2/lMJڞ TJ brp.06G>qܾjk}]^(PûD9!fെԋ5M߆ǚSe&T>;LT9P=7 6KGGaFV Vq MhҖ'YZdh46# ߧ;Q*\iS KRoPeAQQ Ž_ʾզ3ޕq=2M%~G>9 әU?/lnNo=~ "4$TZkA|4J{ds7!b>o;V^@S, xpO vqdh;j) vnp\(2qEK1W#zmPtrxT)Rq0$5G gc'FMLo)6E_17l[ e5hkxAx 2rB+$T^Ydl4Va9D{B / #?Fxˠ F<'{\/̄"Y( ̈́8oXeQ1\TP<ՋjDh>ݝլ3*5F3 bg{pP2-3Fl2no +r1n.i=Yč\dLt@x?pxdi^Usd罦C;[Zi+Z,5 .'A2ĸv\*qHz` \&+WAfuYzb 2^$4\ڦM4j!֔v@I߹.Ք!cJ¹8̅AaLSV #sJF$% rj<450" d-].3aaO_l F^vaV3$}qc,<)DvW$pa`LI7*Ayڭ7Y<ͱo&u9BU+gjZ>T暪+J_ooiˤJ&A&hS0&R& ~'氰o3%/;*Yq"T36:}6l%eی&^Ast+$\& |?<0P2KfSq&T:p&6^ clpMH\8AB91ZrPm:)"IEix{ryAm!]{OT9ETͫ=@2x eIʘL>VRKqZ9OvnT-QJ"vzOKйJB"P/r#Ew4WnSm6#^ ҖSt2Jd{֨ODdd+5HżэwTG%],p+M+sMd7F45D_2Է/5:SϵE#u<䘫eļ䬦2AǺ< %tl #B=mdeFS/{}/orLke;LcW% @8.ǁoCwsLs3m^6xG<]AS=X%YFTM}%kX%bDΊRݸ4!mڨ^W73VQ`gL 3J*?B NaGt(}i 6]?v w6TP:6_! >s7ΨQpŋFeH+)F'$ZfI.iܹlZ-I@.ÀxԪF/4<+0m*_71҅.Py>_hRs˄bG;HFJՎj*3ʜޝڲ|=B Ѻcw\N0_gJ泗dRՓNrBA/KeS7HߛET;Tezyх/]LЖ6ˋ{']S?,W C,F_q>S9s.l+B!ƻ2k#Cȇ8̆u?'R+\UOLC"M64*[ᯓ:ΰ2ͻD~{&}U/2yhH+J'kX,UܰƏ=SQ"h͇j_+8G7fKrqot}sLca0!Iz,Sx=Y?YkӺNƾH*㵲^v0| j~T7 t[x܆k oKR:-Vjh`΋$^,(LaQDK'ڊ94g_F"mD,*8W/39&qُ6'vA߃VL`R' a݈"ckQJy5KʖI ^5@rGY<WU zVQOZve>~vKp"wqd%Py Ӊ j ֬,DPwkFu-'Im W,)aؐS;@`Lpɐ\G ` ʷOr#Y̊}D*1u5ry<$v?_Xh؇ ?^>^kXh 4. v؊Baѕ&4uOcW[/ߎDV7/jhOQo_`UڞBSxFHhᱴ u5,E3әmh)RB jY8MDs֑u31 8xn`1y$I;TVä:\ +_Ɠ>xP2FP9o_dE1iTvE"2/;5 &I=OӸh){Gp+E6") ̤M90MR@E,i 5 hi1$MAH^qQUI&U~>{9)\ɓ=^jPȂɐT,&KJ|f64A~E~"6]AI}N'G2;oX_YtIk?׌N x/ds U.1Zc-g& 0ן @NJ݃'c@q'E?ٙOC2-8*&s\2/ kRhYp(` JiSze{?ypaƂ3wz6' hxxw?x1!E" \q^%o6 oEoZ(1%tpHAg\ CHf]sArVY;iD`E+$YPѭ,\#fO bk@`7!AHnkl{W[Kt*m)#JҔ.Ԥ%:k6NIR牼@h' WY~{Ρ3><ָ#6cqma_YH|*`4hHۤd^1bs FAgaYKK9wPGqЙNVeيX{,(b;N !JT^OA<7ʫE F'u9B0YBy/\TwDÑ^d`QoVÉ[kN0¦ -҈e E/ciҜ6-_ 0-PG }f# Yzuj3Ov-KIU1cD/ͯ$.l %dIE">S'0A2Tb GK3)Ly@nk zC4=o]әf$`sqK#Ģ< ?TǃuYiVÜւDmu6eE+XiBi^yiqAK)#)kVΆÔd&67;@l ̢r*wq&g_Ⱌ"HrkE9kZ-M Vzmu!#6`ph$pő{IKX `9rJ<%: ^:nkU^S%la"1WOzUE8폄7dlXe6g03FF臻>lWNSe K͹#b\\.(K^R9Wj[l/gp`GRikÀ,7\!*0[[tr`H@=$~[Y&|Tb"JT7K~I%ƨTHǼ/;:_ B e%" m%}.-VTn 6TB%>T}FKء%X[BrE]"P<ճWI„+`ډ6Zq*aƂ9G=@,A{l~߬97BrE;|VQ؃tk .l0pWg56FnXze -qAY- 0m* sI%pP ?%U[?F<Ԏ/F8Eul?=c4+KصC Ar—5V 4.JaShjyXL~ܳ@ykPL(&P9 J5.4hHFROT^1%'tUCN i XM(8fX3œ8vxW0j&(;lL`W/d>)oXۢ,wJyxᡮZ$x]Q} AN0J*Uc`E=%]S'-~[Dm9rEeuTG$[N Ttp'70H*q˫ڱxz ]z`&%l&h-49.1ur_$oIVTP Sd4}j/ߚLޘdQ퇺r{={5Um~!Xd3K%a/@sLJQdGG,*OLp5@'|x3j$E,Z)>)^/1nW"؍~a'ӽtD>Mf5nlbqؿ@P`R8s(f?u4̟c%tX2 @zTY9 pN 2W ^3M23K~v81BҼUV|t.zͷ*dpQb!EPӂA)&k >#}f aLD`4P nJ[ކTe]pk!R$!&+_%j9 EBd 1;mp+6ւY|o"<0ß21y6i8tr3 ~X hM.95LݦX#"9NPߝ}#L rKo\I:kYt;|[W!: pKMmwłX00wDC;(^!{+0yn'[ǽv*EH=\4p `_f},h(4=iNR\$=qI?t-4??R+Z`˟0W98a+O0jG٥$ox>`yB+$WςPb*N)ecKcz9NRVlY 87p7!"u2ݧ(I7Ӏfx>9y)?^V-Mt,cl% ݪHe|)☢ƫst$&o$u 4-o[愠y}XS$*@wywҼ^4-g!fgBjX\seJQw](aK놺U.]!@X|,ݗb] e*/<ݨESڀo-A x&Ӟ5E~2 Ҍxf§Xޚ`E =(9ëN*?%ʵ/Qsߔ̈#kB?JEkz4|L!f.j,"Tk$`U ޜ|Uvh$a2?v vH3Ks0p "E|[dq4 6ƺ"||o8@*4b0E{v1)n{[|sqH%}[p1cNɣP2\Y+8ռ鐸:ALTs4TYFF^k53' 2,v"UȄj)ԩWM=]ˬӬ(o+<\i$3Zx͡ω˔5єz<5| 1B {>9v]@ttKDYŸ0T0KPMPqֽ4,{+;'莽dKFC\ p$ŸׅR%?N>ZWT%ߡө!B ǭG>*h2&nxIaqM_PLA-!?/J~zQ眳0tcrBDD` @ZX.0 Ak~VAgfGUPG"1nl.?c^&ۓ1/mܕ꾸[\ѝܘϊo_l\8D%ӤOeͼgxq7 f)SMf&ZB^J):rD6e-La#gChye{!)HVS1d&.#S%$gaRRJ ͿC|وd0k0Sʨy'{kMuJAͷKLdRYnm%/'}d_TQ;VYNd w- ^ɪ"Ï[_{U$L|]F!b)S"Zv=rBx'훕xr x1=[9Cfܧ֠*` ͭ|*HlLcƉ'?S[{ipY1.AT,2S*ƨE,gxl@a̋X^p+ns1>i0uiA0i"$ ς3e<C;s&1 ͖#HT!L} vD輞{odâm=~Y_ K:f{e@ 7#DC%lł2=Xʁ61PV5matDjZ.͐(` ? ]9R, tzUyUܚa '[NXzmҮ!K-ya¿CWĻ Pzfb;hN Q|4mg2d_a 7?7'd*9WQ 0GKK(9S^,4ډK\C 䶞m.Un?Nq`fO"\YruJRXwD$1Ii:lpFI5H/>sIO3xEJiYԶ݀FJr7 Qt;['oz(t58QGJa NM[39г* _;VB9 7Ň45BtuZO]ү:rtTA| Q4Ж-ɟl,Yʖ."pý{' cvpRLv'Fr"z#ZaenÚʨU,gvfjb'Yé o;0 Ɍn {4E1eY[o^8S*W0 8`(f{,[j[v]:ag|'OG9ښ+OjV@u=׮گ+%]O!!"Zeʩ|e_g]"ܮڊyȡiU'x ZskA\F`\Q @xN/.8x#4}xͳcwH45 7ݍdOCNhjt:ӍSz֝FWqb*5,FAo~؏QEL<\/: n?T}L?;lA#W՛شU;󊙅|kj.Rȗ^25`nAPVR{O >YXw1K* v3@c?I=zvcPYH(T1鍎&1mRQv!mwBFR\ $敵dryoBK.WYs'v2!,-S^GZv[yf:s+a ፫Ϭ? pow5W<$m-rr/%[T `Mi>j .\P$[Yh4 cxlE:,8z{s k^QP#c9hL̖Yqu6͙0wE{J&"Pv i#k 7Lz 2]@60r6X>ۈš 7{VY\3u>G5bWbҋzs30mNDN)kĨ>WG^xp|/2D'm+kKy+sYR, `!'=MYhH)~}N4TG ~`e6uF)w31@ }p*)Y)arӧC c4 0Rآ@DpKNzЬ ݠ9&ᨉ*cGG'Q1%V.-%T6yC'!,ŎO`O3=;Lk,PXs~ƬJ˵ƬUF+Wyyp~cpA~}b6R ;Z-xi'Cjo& Eߧx=,'o$>@=q(,?t|NRwlCyqgDCP,. Np?m-acoyIjK. @ )7' !͚]HV׏N,O$o}%LQQD1hM2'p鹆h 4wtAqrߏ(}/zu6P C+/:08%ȵ7R@{~v{4t)=8z^N-a,C9jXŔ_z7@doyCJ=)7Z>sREPL0g#ZQ4-tT)7Ztg<}Z3y\!R4ViaP.YTt# W>HK?G57Wx&3\wLd78z ^a(WT,?aŚ[J#;l&W6?x|;#D݇} 0Bx'ԸonX(G!{AR|>柶N!P+)ͺ9kʐ"-<ǝQⅺ Z)e<w鴬?fUoDlRJk- ܜp8'(| >Бq+|YYO\qSz`>њHeHXP!O)gtu'ET>FQRtfsPm X8Ű=?b7Ӆ E0 "Ȑ[ӼcLBT O-oj*u5q鷮^')QU ֪t~&EAAnm}!D(xO?F_c4.z uO.fR2&gBV ZE$ FbB&dX/֙΍.0Zlsa~p2/\KdIVtÏ u ژ}Ca-o\rY+T;|rQ3K;frp*e|܋X^Tcs 8sOо_(47F]+|JgY3 ߋ{gHlښ'~a&sFt?:ѻԣ8iD,q܄ N\yDf8_Ǽ[̐ OsDuo)GS]v/S}oH_yW+lVv&e`zPN}.HR~1." Aa5fˀNFn o<=3! s6-jqwZR 񆮰=50f#aW>@,6{Cw8(j嚧ΰu&ljj7>sq᳸!#O@']ؚu"z*WtKX4F(V‡s^uzkp{'jmΤfUp.`=h|[Yר5ZJ(AI<~q= @4 {=ݠqpyf:]\WwF3Z- v cPD[^g X{HoEGa -0u#1(i(뵿7 Ÿva,hY뺳x`' `7{z#\v$''&IZaJ}]`i &`b7UN`Yکϸ]ZZE,善z钐~Z;|>[ 8qqVJ״5}"mG ZU%>4{),g V7GqPIZe<~C nU|kCMrm-܉a[}kMwWjS$cu\Y[ZX{%BHB G Fuh佁`#[qM6iaN]sXj|}(a^~<Ș<  f@`s]dSZA 6$r`! íGs:96ۑFeA>G(W[B\cL@ſ,>N_uQ3Yփ|d99kABAFX{e^[x9F qc`Z* #$Cr/LGrW/Q/I09?H!J N\0=-t'BqWdVҩa^7qj; L;VÕkvdI:>~ZZ?TYLƕ#V E=;:YɼP]ᒣA+u9r)TR,+t{:~D$eBа'|J Ot;n%\VjB+Tp[Ld` !Um֎kQ4&ppn. vo3mcN%7Ü ^fĘo R#ya:9$:RA7M![a&llQd ,@R=L%\qU):|C_5LDJ&i$]!)n#ە o,e3}q &boHNi].Ķ0: dl8Q;zE}LxFt<6R 94D08ًPp=H*vvv5>F"Ϻ7wG2/ٽ`%XQ]%vQA [^+!'Q&hjO=m5/X)l+=*̜Y!51 {(<|W')Whw@խE%ͱ"k<IDֈx ߶~@dskh y?xўݚ@էn7hTJ.p{$AFAb͚BR!^z;G%{Tp# -za {G7Hoa-Ϗݘ1YM-_l4 l'bJzV$(@cvQUq7 ~EmPw)[.;[2L)2yDfd9 5,^ »T;gٓ* x SX>3$^4'80ǐ8";utk7 3-sC;TKQFٺx*Rwufp+0s<׭$u8@dOnHVc4܄@Nbrվ̺JEz`;wj@3)Qc!d] KZ쩷@;4aQ9k!=hzBKd*h`hFَZa4?褴dMz2Ag5 [(vdě :4zĨ (E[s&t)Q7TՕ +#ݼ8}ow W,%q.0"1Z&;7t%@.JFße\7T,G :0fJIyY.O IPn&?нj@D&}M|4W"ƈMefIaDϋ` d涒Ӷ7(QS\_CϾ=mLHmNW:x'k6s`6I8&au*۴|5r8WϿ!@leU7´ B\Hsg aI/ћtn00\Ye *W (?K047д0{v?m1W$ZRQ{  Hiy'5]Գ|;1b2~kݐƸ>?z:׾I!A<NjHgZN³IQ]j 3/3&Ԍiy7@CZ,SJR4C$hNɋWkL8W_LfÐ|(v9 G?0zܹp4Ccdxn($wVy 5c-Gw$'+yx\7+ﺏ &PTboxp{#֟\ ^Y7>&muq|@̐2pc$&-rGoK#m9䱇e5c鎊)$Ke`*\9odpIl.'A&~5 ww'&Ӑ޻OK[r4gAC8 +xD7Nmw`Otٵ1uIy Em]5܀d9?q&Sj1a>XDeRL4wy?uPdH+[TDh3.t;lµe+h9c(?N&(Ĺ֜ղӊDd^&}u3X=kd^T|>2.-rcъoY2σZ5%3PC 5A 5H/8vvj ~hвI|0 [xQ21U2_cd*ƨcjLn}شZ5޺ -'"d$W%@ iNL9oIDbo`p.6y& bp|84Mz{ԿBM2GhN]w_q }&ԗQc=ܟ1]=oQUSz{RQ닦G~qH8p 5yVģrWg:yD*mQBTYA_t|f 2er0,˚t&j)y&T?5wHޗdS -_psV`d/, xZ0i6b %ԌQ*ijt޶)qԅe8-Iv`1vd>µQp+KtF9$|/V$)vsI1fUlŎ2z͆pF6HK਼OaSyM@IɟH>p>0 j;ӇNJy+ N}(BVdoe5I[WA~ ߫*#>>pݷʬc뜅) MeYnz;]^']n̮!envcaPZUp6FWtxN*9O οR&}zz^AнI#9G#_nZ&ϦSnTSb{(܁h^ZHKSL NѮs FT-5KAskf0]]Jr,WL]yMx7qN'XY{ݤ [V2+_u(M&CrMmq{g3 6MI)<7ucǹA2ut@Hr;+. NTҙQ_~e"#JGMul/+c pq~sCCkٕ23.7׸^k90a{Z)n΍6"ꯘ<-Ynd A,m)JG6miϳ;!SMuwl#X) f()Q!FC{2܎AOK't(sXء?؅ \h% <k(3ybx "n"`'|<\"L+pi2nr[,i甬; Wpk?`o=}8[/˝bő߮&!Ol*pgV='?{8{%PmfQkóp뢆кJedΰ wj>_v+G=W(/J/NxVgj:~-Ni D;OWZ Wؗ0UMGu,@L1E nQHF} KYN2Rkڣa ™sD.ɔ]5}-5WH:8|[oLa$=ͱzEO B^eVxu  ^sw/,:td ;JHYG3Rԧ;YZJ 蜍AUDu/v=3Q+$G@=e(`ՔF F`&T~etGAn8rb~?`0!VܣfG=7k #[7xQy/%M cB)0Za=ʎ0E5S$#-kBRE<C|+q"3w T InLle9^VA)) 3W#IW ~z>'X4?vM.~d,ߞd_RQ {X"L #U~AmivwѾ4I/Xaam!S&F'C#v9EF IR"vXFV]u}MXlU*ڱ,k~U0!UmܚZb{hHp- >2C=Iuma;\# пu6!oLW(ΞzoOE}N.-`ʍe++۠np / zۋsyH Id(3REAG"5>,rM3^dKO 4xYH[Ra~z9riS5 _(T[g ٓoE%$giK}ȹ'/F$|\XJJYOJw] Уљl@dž=,>s9 9HaN U:xmJoZ+Go-@|`yA38xz Þ⯪7K㼙!NAؕk/lӒ'kHŨq,9礿ЍAkj<{?N`z796_kDR}zϲz6]IVlWYG#0y( ezU ϹX&wu]{504h\Ѓ6|h~ňF͞σs7,0&)me-jgZC.<,\̽i܅ R;0ִ-IHR8ooCS_\}B Ie!*QCj2ykܻEr0O2_m{cz:t,^W;_9^u6}[5YpǏ2 >bUtKAv5_ICJk h1WE击C`Hy=t:;b%}N~sv9 l*} $*wՇ4 OB3azI-Iƥu?؝>k ?|)I2m3ANJw^QDFjWw^Obh'tc ɯKV23bB֎g_:uoW`ʩ}hX9B?z<8LJsg2wDFF#Z6ѫ0 ؐq!*4BR46AFE,J6a! qxqa {Jwij*!٭3L" }Ϝ4,vVi@X9Wa KtaaYʞ#ZzHxKT#+? r  ( dE/q's ae$gmj'a/:{Ɵa`TWdJrLu[ < `l'項LJE qNR\qANhuw}u_xߨ"] 'wіin 0N:kkbf]8*']YW3Yy(cwa`O=E+H}ε ,`({"vS<sUˣt.zOVGk [h[YPBz%`eqeSQ*=WG KJ>b͝q;SWl:]!N Ȝ$;`=Yހa;!\}KnDDHF)vz_ Eg`rÅS`/8ZZvˢʔ]IOߡMNyb. SA&1d-P}%Ep(wLK& J,=#W03ZY{\Fi-ua^RŨeBV_KsTl-FZ XFrlU X݀ZZs_yG(@e/NyٯL>6=} %\1l)|r't?Αwc#%[IC\^Rh(Y[Fqe5 %GNt (n#bNQMk۔hygHRӤلB<Ĝ-NGu`8\Qֺ:EVAVg-ʔ0LAOԺ|P:&QJ@C_ rK뙖ʚNVsjL_\{*eG\JtRtl#cCww@GcT ot7|oK&JIP{#c DJvykaOXofUQRɣ, i+\Ȼ% [\ Pmoշjd} aˑ>NeoM/q#ʂhYQ J:%S6w.::i;v꫁1^$'fo-rtuԓC0=٥߸t-~ j$SJ_F&k|Kьt8=|ƿLJp2ЕсMYF&8gkن|i/eT9M_JKge_0 HºG+yǹ㨭MB5jc(ʼnzˑܗ'=pHU aCM״ʷzk /b7Fod1 Rp\~:z-+8wzP;( ~GqO]YVϔ:^l?SM5kXwZ]nZ`XH9.U𻕡b> Fѿn^YQ}@26;=8h(OըLނY._7f@9k-_a=8#(˅ cR/e&m7^b[jHUDwOoz^98[l]ccకi_|C]m ȴn&J35ڲH[{X =Ԕ!&ƌ1cqӞQd3]kͣ0ln`{[a_iy#SC`zM 8|@9cYjYw//Q?u5!,GQL.uFո%j{q?)(X=^7a)xV8H ՗mDDm9|*=BٓuvLJkZqwE~}a&Ħe1VT{]odYŭ =S˺V-Tr92@y8Nٛ(iۑ$yaupʜlJz䑦޲t!sZ!/BHDx\vbۊM SEŎ;y2|!zr61LN':*%Y&M#fGBg7 +\fZrM9lˠ<c+gB%LHHP*XJr3m %~毼F rO;J\vҰݍ"GV*g%EfM62B qq<*hgZ DaU9V!n^nu1?@B@SmkQl {;7ϣ}#2wzA?OqʯK-'T]z]Q^1b/'\7x׋dS* YXnqTLtE۽iG]<;MOv;x7 jEtD4Mjc6+],$\y7(kw]7AJ)K1]%kC'ȶ["B ] G@|NDV7HˈY I*Ʃ,핕7y[\Hvr՘O~ bOy/C @$ߞ k _ cbr&YBy^u 7ۤ1D:y).V|8׍&Q<4_ovpXaZ* $s$Sl^g㤃iFzUgs+m 3&Dq_n\72 pP;Ԉ\ZmU2ЪP;g1˲˄;C[ΑMt-qYl)T!K]H8]K5H]:|@^t_u0e3*' HrnJKT14">o 1,[Ы3O}hG y7ˍ!K/\( aGy2߬@+D_ DBaX8}ՓDH옳[̽a`ܺ8L!%PI)v=f#GMW!A)b!p&igy+iC_ph @"lٱB'NA{LR2ñEjWX8BO{FL r̼}uvjKa^m^n ^)%Ӡ| IKugL fMޘ#k8>B%381'&R(ؘ]Vi‹ 6 }\FmmVZw,l$dXqrP Wl0JC&GKJl6ߒfg&`wLM?*# H6{;c[VHVHJHV=F~\M^HdeODn+7;MaB@׊E6Kem@iQZʏ&eT?mNk5LKʐRQWkU"AqH;j쀰'!S(WFü516.k3KO7WDaē})F\$3V0l0&`0*|y K3|IbF~~Dt9Mm^hjǑ{c}`|+h(E@M%҅P^bY7,2?iO?X}. @5c#kh"^ 򫢇}A7ßm Tr IΉ̼wºXL@V<=W`;%q!{xweYۑJ%G8=Ҵr(,8$D0Ehpk/=Fd554K5DfcAC-u~|karȜkQ! Zs")E]Ō\U(~Q%1[[f  f?ͼCELNp U4|xEMh4\9$Sϵ ,Jw5C|uZt*Txyoe:$fNv () E'9G"%+YkA!WպDEXCDi=._Tvc0~U6K>QTL c'pq;j46kj)K]Mfitq4Bz <q7XrcQ'>0}"KЩ__O#><v%s$pLX|52TFk6՘:g[k['C<8ZX?*dў-Asi<8gA-8#p†{eǽU`'X Md"G֛+HygzҬl-g}iQ ҞGf('֏e "Hiy'޴@\T lT2-Ub)oKq쬦VVv"}szd]*h2lb{g@@B1=就FRH+ $:wDv:j<o|R1m%VbMي#u}C[\551y(96 G(3݈A#]mkY$mp":K6j4!]]gO\ҹ Ӑ\}X͊kf!ۢ*6%>R-HTF-fnfXǎW)կ&) IbpTI(|ڏ@~QqP+k.@^H^D)dUC )է;c޺>/wA Й< S`"kV(ln &?&U![C8bk, yq; BrJmjdTuw\H=I*%(W.0/okF`O|艶:n`fnEKDt,&Aq>;@g|-1 [xW40;hBg2,RQier'2K!_;ɤ]@499`pr!9:/5ep1DDyʎQ5jXԌiOl'3b,X" vC*bC妝_sS8r/J6d$z1XsAu!φjqXykhE~ðn^ ʕ ]zSJHjg]Hǃ; G ڀݰdmL:L\JR8 JJq{j"l{]q3 r&5o9Izgt +b?3nޗn牀xrLMW\Ҏ>ʥQ\1FTt %&ֽDn%c<J8` -%R /]E12:d@Cnyb=ԄH0G?.9*)-0} G .z`+tRwh~[j}o0+j1偙&AV{ӛ&m;Z9'/._ڗL =r@*7rxk7'.~1Xٜ-פa7xlщ U_ARG50NYou]k{?(jf``:q`:Bԣj귄#O}q+~πw8񃞜hr,d^~#$l[7^#Ƽb3?sL9^KL}7F$ a9-P"0 oăq>ajV܃C\hFEBYO\tF*g,} /6@I˽[s' W's$AD$ [Ԛ!>/ ?>(Ր:5Oڗ>V:ǵ_"CNd%q[eaڅsvp|>58!˄J%7-Govg.- 01|'y &' cP܏G#j3UdBJ&c'Sb꥔:2`BӛwF؛2qئu/ZRFw,/lB;7FQzAiډ-ƴ>sJZOOPc2Nz"]gw3;[i'RcΗ_"A1Va 1lsP+ 12I'tF&P*5z1oAJ5$wn)#ɺ=څP@GP*@-dy 1QKL>I Ð-jA~Lw+߃0P^( muDĖ.@#2;iF;L^& [\e9ߚVށ\}Plݬ/;ڄnc  Co B= iFM# ě#!늇l7l +04 gt@^DiSg^~AYcdjD1,JC ڍ^*-^7-<;耤" )QS;`n@~erP% AM/'6B_]i| Ucx -J"b0s;EȐ "%MgM}]߆ r@V߅{,3+I#$#x`Y] )F}%A@ͿokB:RO/ > @rᔶƯ2Xi@@_%nVk:p?HjRЀ (HT"!]Fe-"zWhluYd>wIʿ".}5ccpw60]9`ԧ:n`*k[^S|̦2I[.Z3|¨N͓;P E[rb#N.aЃ~@IiW) `=ojI<. caC͆{ YzT z?)y#iN-u/1U!:T*:K_|ItWBe%T6j9rӆy aѭ?*DZHaڢg0m+aL.sf0K1 ܞŪ:I$p"2HO*-_^?q&y83nHh5NX\)j,~%Z0/(GcjtvQ+2ndɓŘDmB j?e7qg(\dI59^ܸV>03?ܵ':U(|k"ĎʈWt3<I<*}9\y}\}P$YaG 颲^^'cQ >&%Itԗydf*.wyv-M4ƽA+WbP~]2yxw_yr 2ODC钂BI追Dvx#q8HH ] T@lZHjC[Ydn-҈\6cћ0Yдqu K!=04Eeqo 'OqY'`_T{[g>t0h%EW~`%11G8CvV K}w}v,V}F3UA63U=6#Ϭ Ʋ֊W1ŭK42ziP;U攊n6}$ԦrXۂ% Hf .z,\~]3/ݦVYi=^6|d??7(C'n%Xz%!> dX$Gy{g9d¦<O >@U}JjB@$6V[(,``me}p˨)ER֒)Zw__5=q"T%VT??{"(˞#lmH,Q 10'P !v0ymb8 y$r ~ '[[#8ڊbӐն45֫DHuՁQV;{cUݳ f*IP.Ss>-j #$xdT+&a8'ϷBʨp]EW~µGg˔smtNz͕a~Yfp# RI]@woVPlnTPSlfMӉfԢGeT}2=GRֽ#NŶCy@Wd]zRrUxF7kc4glgi8Áҁd'4 wdzk;_/qz4;BxH:S߳U2_0}%2pThppŚpCU^e?Ҟ_ C”D6!}'z˦ G/Wґ\J6LiJsHm,mY8C0& ;`2=<OQhyzpni̳.r7;C蹆OŁÒ)f w ζI?z ^<|`/XpbQʏoZVHl|mYAђ-w=a _}.d ڷI:f G9މg/ƾh.X?;'BdxGv%qo{ݬw`Kུ% S?=K9z[L+ *d;B᧳tlK[%Nx[4#y ܃pc4A|r9K7^(H.9٭ۥD# EC0^dž} 49ZDR(/8ɹp-s,qʠ]p,[3>MFHՇɅ/)gߎ4΁ER:lN,2ș]Aya/X0s Rr'`8;g!I%kr<($]-,-g8m`ո$Aח2H}DfPt1ljyIþ(-tA5@ζpVl»y;M#'@yeyX)ehe l f NjC"t=^U8>?;"-?x0R_Z^[죝FŬVV] *ƛ͆8:[D椈) b+H0u"jdOFn>i:d{{N3C&+b dxZZx 1&A+{%~ģA\?rU0P}u=]5*2(*$ QqAM~/e3#_7ܣ?&LO-Rgz vfKTӗQD3*~F`E~U=BQ_#Y kgZDe,^29F#9Rz+eg)+9|JLv:@$#DDw!QNFRՋrVN;StQRaN|1k zbw*h`?J2c20u)Bڷ%6CaSwsC|Nzg#bFvxW> V `ו{[6P]6Xf@k~*`ڔ1S & &d#\Ln $ƋpwbJ -!Ob&v9,T'}#)flnbL%tz3:dXSAanyvq4 V\נN`[##*HitБ .ڳjdP;v [:ʒ @{K3Ƴ$)_9B+c&A^EI;CkC (1B:Zs224([EgfGigӳLU%tIŻ4dF , <=Es`~=3MT1Nv|d=&lkg33q!ڤbe/XLI y%fB@>(ʧ QgqO4h'/~?IӜB! ~9zȒ]ύ?f4FddBt=SuP36wqyIظ:WQİwcd2&"+ B0D$P6zOjؼn4#2-?@J\ M(آފ  zj֦.%3MXm܁-1>)#J۳H'^B>qYcm_Ppֲ-ς X[m#`lU0(vPz @GgtZp]/5N5'ЧTCqB,,~QLOQG+x+E^& @4[i :BÒ%P"Lu-AT? F S+D׮{L)6@VS76lj 0YkЍqqt}}mR[W~cFiF<䈬]Ȑ@)=~)WOEak|7|_D,g@"3FhK,{𦯁B}bsx*}^Y~Ċq[[eYgVzG$753Wu5,M&ƲZ'8 {B+s@VZlI2㠚PF^"^"(t̜m'2>f}$.].ECzT3_.#Ŋa@!3yW S~c*3c+Jۿ KǒO ?ƾI &Xjv^ou LZI4N|p !A_%PJ7W{Va4[nSyqTyzWXdYfyuMbqyl*twa5a$LllKZV Tl 5@gd+K(ɥTv7mSLK$O(oxVvXоxvŢ/[O FT{೤SKـ`e!mHtXİ7>4֙qN߆3I.ƪOO3R-'o"+ 7~௡p9IYc =C^#jtss.blVbٚu,JM##;]\hcV{a}Fq2{9ddHZ)eynLm] Z,N C -?} OGS&0aE[@ G1W{)F+#4*-r5OmM\Gngt"݊˟U[Vv+a9ɤCco|͸2[~ uT®حKl37 w7 jڈ+j;QOAӠOyUQॢ9hVCJ?#/_ylQS - f-%lom }72 Aйk pE|!dXu ,ku 2}Ts+ZNtH9|ëtޡmvإ8MqoXJؼD tpJҵDr Lۼm/Ic=bckG.)*-an_.uXLjЏs9&Hրo8ʏ3!lXm]M*i&N]4RH56Ϥb~&K1A~Jz}8@i\Z#o!PsӂYg!_?Y}ԅ^>uQ"T;<BҲm5R/Tcko^ꀋJDr)Z!OݞY>/c/;wwdˌc< Sk{t1T7nڭ1ʨ~iءyvm#(gIF'!zS-mk *iRo9U'\K@TR!Ihs}*OIR@ڽ(' TP%6 v,7޺Xy|K|,$ ߠ: ml4%v{m3/BS NΰjE/!$9i72uTDя^`p*SSz穑kVtud+ m+A /o۷ 9l4NCWgyY;29˶%l\QZ rw!LՎI9h&͜%D@phݭו4'FD(sD)2th`Bp^[M,["(ˈ+hX5Ty㫈glj% "vAyH  3x $7&W?tv]{|LyЊqN'ɭF N_LEa[PFš$5%'"> n`zrNsMQi=)u: V29E3Znn gc!{j㹹{2[LN.s/^ï؆ٛEᮔE 3c < 5S" 1ሓf$3^uxoR(<@s==+3'\ʚH8cC {F{Lh R+֏![L%eW@;Ȟ3݆̃4U];ã,<&ka>'7c5`BGUYVճc`2\&/;LΊNW~OVJ=Lsuz?Ns#d(W X:'& l yvc)nԿjc PTXg iWb5Y1BU^]D.L[m[ z'Ll3ݸ?!o*牍I@.;h0N;vU كH +vp^#H0ޓR90iِݥۆ^Z5WXP8w|҆Ɔ3&Փrc5rh_ϰlzi*J LX?OGT$^ X$Nt;PR{ NX>jMο'3X@s2Dag U3.~&$ ^<#>ǫ)HZG#_랳U\xyT~rW~2hL]_%smTu&[[`wޓ$3`fK% c`!Yҕtc:(a]Ѷ(iҹ;'C,ĐQsk9}ʻך2dZktUC x|1vwUI.g*eo_9Z,HIstk)j角KpC9`n-?K0&xAK$?ETOݤp] awn@*?~ B{y01"1S,Č1吕T,8&gPd ~WH(l䞘0e{<8L4mRh(+SC޶"3 #D{xWW}mcNBQ+]$t:(-QW-nҫڭH$H$ xEwdU+TzǍ#=o#eGϚ܎Pү~(fKn%.Em{>~Mј~k߶@-`Y XV `bV H<- Ⱦ=j.&iWQCfC+.[L:ߐd;X6>D[P46;wЄ9 DQ|S) cpir9 F'aJΥGo1V2DRV0_>V+6yZQGk, " &3ѓCx}cbzGmx@P$;<4*\T𘇤3ߘGBHƱ3'%\eWjo괗?)z,6LI|KMBa9LkԷbîup 21a:>U >{C M㝉]8t&8:vG(h~)NL/ڹsycR$ 2|J` &߳'Y&~E{H ®rߠS8ve~K؟* 2֐3FY>;H: Ih? A1F~Ccgvk" .svd sy9k"`=wt@H.,w ~y}g_}ߪ(*!GlMc7}%y;:y7ř:8;̒u` nRI/Mt4YIg6o &Ψ#VX||H tq|!8Xҁ|7aJ"A AW>9wvٵ=,K7Zi'K2EHloć!0bGO >fS" `5s렎aOښ2./4;(7ƑPǿ-i>H toHtΉǘa9#٘3绣Fy*mì½׊B ,bF=U\E今kelۯ]h!i+͔S_P] _;ˎ=iYlMdxP(l{Tw[AC@ lTYSW]pzܙ't ɉq'S*' FꅍBa Z4+GaYQ?FN2,[IpLAf+v(%61"rո \)pB07zAFHQ{G]T!+5db~%H+8L5t/3Ё[gMR2) ?j?R-|Rb[pw5̠AAIjqiP07MeHKȃXuw'K5ʇ  u_1 v]O;baj菎o3t5th&j?s$EJB:s31"R9?s+Qz6ajrkb) }) kxa R%kVsf- 찺\ΆM1 i!C1"ܳ~x|evAXs^">N]IB K 4 4vPP @z1F=&/b.Gꇚ7aJ{,T+i(}BK23nw ƒWO&T q4nE:ap9?=#X !.E5 j6yNj@Oa 0ݷ~.S&JC;ȽU(:y߷qGM%B˛uA6$?7 O/d@cy|3U+p25QPxhK7~X&ׯ(?P 9Fgn3آQ"1pF8٦Fhc!oOQgGvp"FP]3(̓SZ6K|w?MjM^χОHagāSStj>/6r.l$BWuׄprSgC!k, xu*Ny\O|xui|~R\G[kWfvڲ>A-0PXYOį2bH #$OSwPH1de7[r|,I(엍ux3GBOLÃ)h%㋢H~&ֱM@8z6 m)QnDI",ڰe]Z˵:۫lhVs`.̗; Dfe0ˍ+7chھhy|0s ɺI4l!a)/BrŬlYD ~L;ϼ6?Lûz}5I¥ _9*=Q 8OӆM^KK>J\1雦:בU`X$kXyH}V-B6f3c8v"Z;QoL?Cl~tQӳѴw̜8M PFRKԱU4(~b/W=#FP!Yl{SY%Bv4),QDvc?B >]f"( V w | in" 'Zc+\*o}q$Tx=L-2:zkщc BM7X WtMmyNVו8)$6^P|7`FiNl,In/^1F6P1bG5`[LIQЦ~6߾PXeH4I%~yg6t8q%`#[CB+{S ة 67ج!A3Nu;!V7Yw$cK-NqIu{#>;*=*%$-MF\%  yӨ0ĸuT!U'84MqۗTQm:yJ\9 5۝Lk,=׎OUfԎYqn$Y4 *%0yU!CbAug@N tJ ~kwW1il?P.K31vw0Igʤ (c\U5} EF5]d2' xJė]_1?p";r4moCԃ)ILH\ӄ*w,x3Lcjh%SR]۹^.eK\׉JiD0D?;Om1uDp >)b¥zs(4 ;oq?|oJޥMıJ7'=bW&;YպGB._ NևXWe\Exui=. RWe9|lԻ9ő3'b@I !EKO 4EhI4еi<7V:}D5ry]׵E{ݕA)(;{#Pb)r;L:կi<=NJ?@OV hOӭ n}n2%8y=J CODY]Sd4Wsx!EecO)89sDQ*FG"v<䩧ÀDf?\ ܑ Oh|jgn\ZQ<_W|j&D0 Wiy6p1|s 1)T2Upڳ0'L׺ ̟ڟʃYʁx`m P=~~`jIQ i]lDiϛ6V7y%.o|T Pc8Q,=k FLdxO!3Q,߬0;lxP.3;Ocdi̊..ǯaDIӶ(E)b\d%G"@L!ËͺV #D- .'۬D 2]NI(n)HHvg7Nwᭈ4GOb?'(`yk R~73 quPamXҌr&DRT& ml%QV/}_yo+gZв:1Ɲjj;ԄMw5Bݳ ?l]LZBӍŨ [1MJ Ox'e C75C!LD18@[?qq3@1DƿYpʖ:v m,d=/(h7*ɞeYߑ'XxcGXj&ryٔT Cz;~'5|)J*b>oC_rsqhY:ZgxH]|.pbNrC g~|wOC}Wpn-x /X 2fp[dː]wGp\2YOp #epvH*{Bs Gp݄NNWf6`I؁@W2"eexB,fێx/\#VB0(TRLĭzc GC7|[_=8=qwɒz왙U1jp/Amb;')S{bfػ&p2_=dT<ّn+XwF`{=Ѿ`D_Hp 2f_CVȺ&X%4@."-@D"np7|on "qcb$PxCӭ.1 D9-cAqfZ ^VG k0qg֚8>$SNR=?LEu8ބ6MXlwN4 Đ|px`lm1*7S"`~>0acUy C*&K-LM]Qj"Pe EBQ=8Mdp#2ʴ3B#эFlpVI;LHEA44qq-c<Á|H_,и6دRtt0kݎLXr [̙I=NhYl&$h}7Vx mYy;a%_G$5!)-cXVCpta;[,8FSdzRڭIͥi+$7yqGaxoeS {!@x9v5.Bx&jn;x@WytDuh !iA :L;!-QxFCU+[h{/6QBlbž`⇐Z|w:~Q oSLʷYjϵl–,duuLPF0!eeks58aGJdd(O7S|؜b-F,.>6ۛRqY<8'rZs(g$K$#y Lpn;&BUi4vm9M.ѽ'9_/3fnYnY<~I_\vj#"7Z)XY#s^wBN-JFFDxE'עXZrg?+7+-9QZu;Xk&F?̰57+ܟGZP W`2-κ=~6%/TzOK|-FLJӾ%eІf%)z3-dCnH^g2QμgI^xHu6 -i?;PِZ3^BYrKM^;' UƃPt>aC_m[ Y:|;>mer.<&*_nI08?;@x NpbD d6Zf ?nJzc/ڴjbM59E> U sPZ|sS底Ok +oWi`R j#7T mT~;r`\nA}ZY;̋(/XY e.lyQ7FA0hv,ֵV&U^ fɳ;!ܬlFfw:ZLrV]=Efz।'e@(!Vr_Ҟubq?ʉ2{['!ܬuy ެWK2ctBw[4`Rߦ~˒Ǹ4tu|{'F&"^06senuM=MoODqӆ:ԕ -4qR\Rմ4r W~V)%Cǵhnv%VY7 0Ee>x]1Em1ܥhujyLdNvc\?⿋')UfBDk.3H1uxԇѭ$K.Mk-<UΚ292#!rgF8ɧ&K-%mW.O $Rxnn0;Mm'.VDw5QD=x1/O*Ύ-BQ]4\FllGIȥ 0blfbȻ+,l@y!F6^W}=:߳zW8~aĚn;l/~t L_'# i%4THx@^^!/M|f]U1XתUȁʨo~LƫwCejt: N9d_eu'ZJckꝱz(o#0JRSx)ovR_K΍S^]5R]B2Dǔz P<,f><w^Juq~ycҕ5oe <{6j`72[{_O͛?g֞"o.-FT0=a-]: ԴLqU Ĩ(sɼ~Q>1CO[F[=i&~n߂-ãbx`4&rFV湯 =LTl^,=JhR7,u:Z0axsS%㙴6I\q }I&PiYmΪ;Bqܖ|1/\]sюm#1SQ$1<)Vst5ڰeE[՛c#DZ%G(2F:L.vq3!VOC&1cO[SnhREF$G]0Y jM6S^Fc1gj>Ex˾G#:#)Jbg'|g qyZ>WU?TU_7 Zz̟JtpŅ^]TYxüjR} 6eSPzeڀȔ:' Գ68dr_MR/I”—z.P<#,' -'OԚ-̊&c#3PJЄ dȸ=H)uuM;~X;U<nSKr?kY>ߝڅdm>ssaN! ܉xS[㺊7yX[u[[7l:6NȬH9cR:ʋ~ 3[xa:hsAv*ZV=r`Qa ϣdո%P]rG%7&#d]uY[G#}{$W{*!%2'ӨT9qj~l-hhi[z+v4|j@WzSSd y<}̓tH;čyy@8 |Lg/YF4u^V; ׋J-`!kٞ]k*?VWs4]SplY7@OζڋqM7ނ(0$ʺUK #I%Ui;&OW .`w t6wO6`+%*.v^c6`Hc* O<)%]9 @bC"+ucQA7W z*&AYt5ҊK   w8:Zdq~5 :~~0G #|vO\؎iW,m$]< uׁD&)v?bVh-3-vn% s64Dk,=XE/ݯggj4AE^w.qpPz=< >/h`KG+pn xq}I(ojdc/*Xsgs@>!cyċ>ZcAůh}j**lCbE>ikye͈ύ.Lf,%qF1eqoB^Jw^Qk43wJ8b, bX>h~Z VCHx%eN"*7f v8=gYE`5EpCig~nMnsn^مtO(vɽ]fg$Q^꠨̬xp%$Ni>9縥6@2 "u/|@ZI"1aonnC4  )&a> jzv*S"k86gJ|Օ3^W6+O  Y3t|l=cOtpb2:ᅶɺBEՔmYA8 TJ/aFg\NcU|Y`۬źذIH,Ú@ -ܽV|nk@;:/6{@6y|!Q]im85DA*|X@h>Kl(UT+4u ?OƼTbfoHs6H]#eF"LchGw&N2jϮ 2F!jŬ* TcEӏE[\"L!1w¨ U5I˺8]ʈI ~yF/8O0\oPɄ@KV΃1i`٪Z鯯.;xtH $sL׸-$]⾟nio}#io4E҄[-BD.βf';@s> әT$y+-)9p0TYv,95uwH0SE/b_VMY:cS@ ;Ǽ^xV6PHXthzSؤ{t0;,6 y(s#O^q5E쇉2%ٰy@O8Zz]Gbs4'DKt>`.G0?각|Yt:IN&_eZ9 Joߓ,Ƕ&)4}aP?}|ڞW0]IeEB#뉩6,8AH[b-v^?[1vJ4!-Ђbz]7v+3SVux1 Iܒ=WŅQKE½Z(yѲ"#19Wj@ċUav @aŮk9 *ſP~[\v1<24M~̙"?c=:ghaIt($bo,9RpnIu!4㵓'NZ@8L27+Em!}ռBSθL0[~J.tIn//.D;3>/}|Xϻnf9K>g _D9du肓%<+O2$%"Ny-xs奜qI+8fǮ5I?vrw#n|[8.H+휅„eQ Ť/мB[bT6j]m!?䋪W}WOziӵwڣ5[+V;.ElKHŰv>1tלV=uz&l0K!kk~7 jiSխ>j&oB#7Gw 7a#lEaU]btH+ȝaV ful# "ME? pB@ܡ4fzK"ݰkܛx~ͦeg(*Ӓ4ҿ̘5X#S/뇩#ܱg{ TR$UO( 3Tc| )$8z޼O5~صfehU=->?͝<{"hAR&Rܷf,js~鐭nQl!*4\"[kv4oK"0pD k7_`ZJv<)2DN֬E L5)Cd+K{_g.!ays)09?:<9P&OGXXSu@XED.'G7j' yT}1#Xy.#heI8r"k"zˁ,ؒe5WNԊZ?JKw`Fw FF5EYKz!Jy_+$T9[xGРփPFJ >ثڃ!\3F&?\.ßGf>HC9:6qcVJ̘` ̕"\հ@r =`Y?#X{L;6BкXMK6&d`T8l+!i҃+ZY" mpr VwUMP5;ٙrab31=|mbl |/-h}fΟ8u"Y>wbBƕzsH*8{\,N፥$cp8/]Q8|V:Ӑ9[u1\: sρyv0`/4鑞bE^$ u>CޯGX,v?JrO&} E\52Bz @M 'NXS왷?As p Ԫ=¼sP6AMGQ),@W2z?PqғB*㱳`E!'Td,JwGE4nw@MF^ |%YM#7MC$dl "PX>osKǥC/ D/Ea]%{& lSԍHw"嘴4*:pt6B=tm;2ug?bѽ5kl0SKP3eR9@7R?7RM)/K*MH%ݎLZ*0Da,1Ӟ?{Ӎ|(^\O=!Qg41J*"⁠)hb~0*oX c,|KV:Y;ޏfjii1,:w5\NGG8Ώ6u'ѥrBoF݊qTrrE ?LD8"X# tjr n6!m)Dx "NgpatͬQMU^! ;vZz`wº ͝OVخ=x "DTP"vH %'9)$K4nj_&O>yo;Rߏzk ӓjWcw*Q**?6˭_p"6e9MI}c1  @OBb ?YAۑbE#"z(Шޡl;qex(e71E%UPs<:M=SO)[a])Zs=2o='^2y5-o:h鹖@3=^"LQg˯/;2Gm0?J-[sJ " -S/bpB#J1\h_c#^<9F_a 4V!]8';Uyk;F17Y&uPcV?!jͪ_!lSw\~IoZ~9O1@d3dG eu3<y1R1XġX_?Hcjt<+hkׂx XVh+4jSl7tJ`Jӳ|XyUa5a x.R3DZD6xHWxP5eBt;'I1TU1K,QjyMV=cʚ:Ec,O XeqjڦÃ[})=犋5~-YEef`5 t/KkШˣPa򪧂`dz D~)T)*ڢ,bOpMd&8ōd/NnCɟYwMrkUʫyЎN,gPb-+:?螲/U#zTdt*저z6@yQ7~Ƈy4ZD|p 0ͭ0bU1R,6+֒ۮ̋ 73ܻd{I4 HɧVYTt{ GdhLF@<>uBV\si7$2'j#٘ҫyFĎdISe|i\M T V"#'+|b,ozbY&N&XW ¿OϠ'!ӆo y\- IA [x0z2u=* r[Tld!c_ A)s gV[5&W*!B(w͞sy i-$ƚ=- HuVE +? P#|'?ҳq/tvJ2U234-MMqUϺv~L^mAi.u0Ipffp RfS xΤb/.)YnO8Ғs*;vtl:mbx5c0(w}l_8J[/' d"|P [BekZ= {5ϐX}tcvR,-rl&%/8ݽSWrxju#wXv_=4@^\u(]0/nY-~w٤i9FX\#@K!w},4CF1Ց3)-TyGOr7M1 >SڼjѫWȮa|t—Cu >84v .}XAO~r c@yߩ}Hny"5Ł % FLd_43GCv!1h#~r% ;hI% Z~Էvvxy}27MTn;gIal x:`He)<-ۺqhc-ShmZ ,:gN0X_SO=l,\ 0[sg$/;sFi r;p 曔RoJڽHgn7 Ck ݡ0T""c/evƀiI$aZPpڴ+8$yTprXTh^ԒkYW} ?sH-V//ʯyvcJbdg񕨈o7=ig2{Ug w/ܒ+ap"^U7} D,\.̵v%Hof,\24{| =-3s, b=7?]>f]s#_'2yv˱6u׋֟I[L j=qu"fSe/ߢ^m+MCz;x⃖y3_a3KfS$8tn'UaD_R#2f5ɶ$#i}'Ѱ%4X:<:{U|.J}O]͗@e1Y]rgeM2J `y0^=VX݀#nn-Ly3;= +oآ 9Pn EԈa[EBJO JlRl׌lyq<2S>W( r"6/fGb\E8K{rՈ.r>fc[N]ISVnŒ]h/q`PX<} M¾Y970 |451>]7Iy8ͤxq0q tL) U!I&)8FQGB_ùTrxUi_.?{dx&Scmvڷ h [JIEh [T j͛HtZ͈-ȓmQYqmpnΞ/7_j -E|) i" %\nBY׭E`Gec6m-Khl%òSBI|ZR3f1d ~撼($gTi4|\~5HEW"IۮҶNڽ[hn[4#ͷD5)lvdȍ2BД25=_?X ssά_~#s|r1`ګAZX;[ b,>#- ӊ ꑓ,/~VExa<ސJ/.0t/u=/=K7ǏG ~tgzϘ~ ]_m]QtЎb6'R6UNxUWd[x$̾*!ajߍiSU;? ˂.+ӒzdN*PIH.ҙV/I* Ш 24ҨosbAh͗98.Ȕdy_z}uW>U;{tOwu~~%+7oa 4Z\-"k I,{Ys>6tbA7}5ޤ!,@S my2941(T_ %Uk%6}bM5' A, e973#835d6Ihca(}J|\6.n{S#8lήjKV@4]jOetfOF]e(0DG#l׉+cL/YF_P?4VxkǏzzAE9k q˚<"8RT#X5-pYw)f%Kh%=U|pK *2#,prضqör8T%w"؃9b9KfU5F1 RJ̒Ϣ>pN>SkDjP,a]ldl@J4te ` Ez>Y]䝵xpHa^$I~ɍH\l* ^%5Cg}pdNqOD%9'\(r4Y}lr"NBőfjVWwr0b;~m2{p ot_rߺ<`;֘ϔ-V0$DB)R^VuIHwMCv׊E%{yDݨau:gF"sò//4o4*ogb9beU`W7gR;ZO`@N3guR fĩ~z+.p+1P07 l @"pw)C}Jb-{KG'oMC⭻<"Z@2h/ElVRvz-%^yo2bܶ}xJ;8ifaS]j4k%`,0:h) 4G\g- 6h6r0J QKLGX =2Cn 'f!t8!dR/53$;[> =h{ڷ4Do?8疑Z|B8EGZ 0s_]-߁*cT y&46voh4?5A*BU wx$47`JvZsHìL؊3S?hFCNH> <㿣5I{V*ItD]vln$)`KE~?U;mήc4{ G˷W7X q݊ƭk!k( {RBx/jC(V1M>pu-j+mt(1DR,4Qo۷~dnhBpcAq7M:yB[10ԫ:]N0n#JXyI +׎^KƊ`b[",4G'T ( R5KA本 MK͔||I決_Pw6Fa_ѣ Z4@W:t[0/"̌nv](ONI;M ӹjÌUA˓(qEBk,KyDy-J2)c[-Fg_N#.Y Zcy]m2Q~FXlZp+H߳sR Wq XMںC +p|M.ª,#Ε*K1`{108=;Lg!V5@1aPt1FC".؀$v^-cWÇe`(caFb}ϢUrXɑ%+j\Gb4n[>&v_Zr,X7Q*_ѲJm dBR栤'Lh\[ 5Q'JZ eDK- $^rB/ݺ7ف p:= !JoC57doDlw=r΁: /O1gUtJfMNTc-ج(PQ.u:᡼{ŝwTN{MpDU x[ՐJϛ 0_j~ #hb&Ȯj3o_>b"^} 8\*u8'7btėH=owu(؞WB2yl5Gz3_;Y +zŶ0cD#1Г(vvz֤r'Hln '޺쪦~0)ab1g2;߱vzjP5ʗ3wd-[7̠rbiKۀ2EtvF__0䫊ǡg?J) Tgu18u]q>SFC)ߞ.'h!Cq6HJB?S|Z=/q[Ked6GSuG@%=ž_ng%Ч3NNb1?~ȓ,o%ЪԚ0>aNmlI6J=;Mfl$=|ui7>uhD+O¬;K颬T'0ȮwʀM7\XF+p>"]g*+AsBR6_?\-mB}d?xyv_?QJ]-UO<_)` ~Ԙ/|Kozsg5N=`eCNG'^"%-JTQw>OR۳j)7wţJ4JKG>j:=9>9mjQ?)~n8q|d~:|9$7D`c^Æt_>r`$ ڵ, (0eh޻>bxc mC$PgT 8T+6fC3 {ߴ;ywe+G.g#D<,R^fN2T_ZM(.^O?t?J%rޤrxB䏃sh$QE¶n3 e75LN^8-+ WV/ CGI4GRiKF0 H7O8jwgK~Y,m?˨oޞ^* v< 6hO*+c)g `2r̫x)$ p* ϑ=#R0OpN!NKRk9.dˑ&9C)+,׽eFmn|#7D~_%yuccTd@#e6σVZ`f)J`gWYn$رp&87:ذ/6'3(]@ZJNYjhN$k&00&O Rք.}tt'%n̹S:05guOYh$͜4: t~%kL-^^/yXh0/%kaA9 ^_@ a#bq-fg#vbM~-jV(HfYm5(-幯i9L$s}+3yALr{y߳;C]ŴZۊgޅa&J?qSҫkY2[9A$ 'O[PfJ5H]\A X}[X:RM[A+Ab>TNĹk 7jt=&~Fh-OR ey/zFWz/}*p U|r\dpytcpQǪ0kN3y*s ˣdX2θXx.V x~WǴ ч}Ʊ'8B Nӏ1oaRKAfAlI0#C.}^F[族Pt huX 24܋Xu쵶+aؾG=R>@i0 As+5XR-S/ȩr>߼m#>Isb {陱dArcЌ<ōhYN(ͧgO/h97Y'a\N&TZ!mEJ .q+-Z 1 꺥a .uBW4 *9'~Qk8mR3+w&d{ǀۻBZH{f8~+V]wM։SWyǨҳ@{ҟ= bA^ĞL4.)h]v`B"P@ JΎ$>ݒhlkҢ <<=5xԆe,xTz#S%n5I9 , L5⨌M~Uez9oH?3I~M|Ž饳6C2'Ƨ~F]Xx18DD¦.$ E3ɱl"f~讝6]f_AQ)%qk-k+dv6!# kuvPmϖM˃qU%)eNQMfhoջT?*!61 inFzRz+pgTׯ옾[!LiJ#x9ؚ{ʰE'F̺m[XY~b"p3cgfa[)UL#.rfz<@ND:'@-wW@FX7՝YoJ o&a[tQ}K/O0FuG@7U|lSh C83Bt +텘zCtr&viD먥V9t 49n<SH5>p-: JQʿO0S+G=]Qltgl{GRЄȐxd( &8wowޜM K{X霣LLg^DKەt5,͢ɣV8vsX/UoA & +x NԡFUYh"1\ϘHLjok&V;O,x [t!{-0"3i.E+wZ] L P%$0ЁK,y]qMT(=ǩV֊eϣ.ܔ}"b=j-ZSTC;OMؕ#@X-+/^D(x@W 񚆔 9!%yƠK(kMZwӾWZ0&̡"y>NO8:JŚD@ >dJ/a4z"WRg@M pqgab't<QݏP#'CIuӘ9|_h/va}"Ǩi(|* (*QDo|T8+ki+obOīK/t1ZBl;:z }wWp /*-ހ'7^ L)9{5DoG1kO}䩓SxyCtKFas%  51n8,+J `\oq莶ryn?u6Ǚ90#g:+!%6{rjbCc=Dލ5:}RCPؗ6>@ϧ~^žhԹ/$%n5;+C59:c;63hD.g3g조˚Gkgwj,sTxSAʦdbY𨽲f0yVtN[&sи! z,ӕw,ؤ3&AA{% dgp:D$?DE(+ww/wڱ"0)3%<c3Sz*NiCwT͚GrgL9mkt{o߀yuX3R\?7geOE`8mbTbSR3*fDP+W-> hv܄'B3`VVX(cWbOj".nהā a]+ \"0m=v?Q+43UiYF)QMJ-May\I!슮􆼵|3 M9~+[E&tė՝%A02="L"4k{Ӓu>>}h(* LV$Xm¤svOqveUo;"ݱjIsN6̬ [sWKh*VIv,+˲OeLy'ø z /D,K"y|:HFy\ˣ9 dǣH ݾS~[d3244lGճc-͚t0е֘[i $z+5:B䯵MrcjXU(RϷ.$9O^Qayɽ W% VĕMBVUsE]7:!SW6znVvR;᧿"Z*WȽݒlW6b?%y]"St *XdlZO'[XOje\zBƂ3QE#;-rzxZ(jֱ0I\&y櫯7hۊ^?+ft϶<"L)|o#ߣk]VK8hd®Ѕ`H"ZIe(}[Pd$u.1*hLpoPǢEZ,'32,lqmi[p*f4S/㽣Œq 1y0}e v}nR#bOjPerFy`5>>W!d!1o7}^@Q(׼T@Y5ò?l;,L=S#ѹ>Ƀ H+Vö`_ Vv{uE"*,zC-DIn"% ᚏl2۽/L)MkR՚Nuݱܛ$t^a"eSHXĄ"]HȟN. OY}y7BⱸSٍ}:g;ݼ͵ *Ib YYNRl)~">q1%){X`1c@Ń%R_bӣk & wL@bW׾4DV ʄ3i H&| 9a6&G@#^2f: Z1Y" Vy1Wڐ6P>}(lbؠZŻ[x: ,VC~C 1  Qi]uFP-=?Rh.z"aL,Ώg*GTWÚɄm%;p"X:f )!pyy[Dc{JL$]G~ gUr m(%IR"QVnQ pb}hO&.j #-tpW\w45hS.Mqyiy!ůisH:~*S]]݆lvcϫjE Se~kG슙 `@X"&(6M(u꺊[#%CP=w:([g#2LB5 XTψPَ8W1Q娈UHg,^Nx~+>1L7JNvD xY p5MXUn}u#sfw ゲH& 8[ 1JSE j;OMX7oAa_WbXgǼ> d!>= vMd(VllorDҠ'-Ktɪ0Wpo3)mSZSrEz\lBw1۰5/,WesڅG δ>VgW"eƷ#rvQ7"o<`>\Ɲvӳz2.0@'7\]]_N:+Zy$ٹc"#MT8j擇L\xmy=vȏN+q c"Og뷜sחτOCl-'5чLtp5b•n>Td]Dz<[(gotiƲ@a?GR^bK@KΆ r>! dՋ:[8|M#I|L81h[i[ޜ:eeBRWKYթBd S 5DR$L(+5# ؜ d=l3~2d͎(JYy>&*|>ð:Y`7x* @R\Κ똭8\B0hR c 5elLP X(鋲eGu_-R T7)Wqt 0Mn޴W̓ <"|'%q - ABjc@v.s7c!JXpږ:ĥK˖ĺA0?Y'աbǽ(Dw\ѱ(q;ؿ8Uʈԭ_ ڤnXl UMmڍB] JEB*BZ5 3lkM#0$Agjkaj$ :DG+Є-֌kɖ'=hBբjAw <)lg;YxO(s\-,TbiVk jEף]g5DZ"'U6ÂD`蛌d߁qtǽ.㴾^nnZy)T{}Q83"KfGUhid n-v2AGz,-{nVTlS~; |vƤL׳:% 6a=vPil}~KC"Xzx-/O?p ~ь{tz !h˚Y(~1 0W z1 Q]<Q8תASM3 tkprMTis6S<>.ⅺ/dk\>"OwӋXwWc۶R4Mnk.ڂ8b' (rOP{#I[!r~[[lXU\X_؆.ǡ/ Cn)>5-Zs-kEtH$œ"QH3SYS Vb_&+xm 7c#TvQ6\bw&8"ƠLI o|fƜw)p T5N6> aLnhtbNɲeCJ&XЏ{`^,QArJ V桷E+D疽2 K)"}yihbkvoyaZ :~)R5'.x!{=M"0b饾K3Ew-0#sjx+FR-vadl/d ۟x@I7z ZS"bF)Om mڵ} !?& w4$k'D{ce-ʟ/b}snx0lz- `+` {W E;4{V/$5.j]+Uö.ڗ0"̸S8@wLߛi[>U0iYUl|̆ 'pz3FVNs&|ְ}|oJ #+fթKf3:z Geŧ X&gMeU'd6T:PRAQoP}kbN^դ`J=kp@ۿRtXFo?k0Zv ّjsq]xMy*URu7NnxB(rAMIƊZ[yvFФt~$IomC*e# =HWo=]cY ur}[U>o+LAP7C[c4*(b&̪4~2XW@ {oŭce&D̙֠ >@~ ħ#, *Z]|;L7Rb2afGZ`(ݫC< ԓ,_Y"&̷ Fz![ O߹~3jHGpuĊWBNsVi~rܣ-WVՈe8M `%u4 r<_I28݉퀖shd8:'#'d;ipOzUDb4hIT`w[2)yɇh=QxVޥȵ)g3RWTabWܐuN"+~?s6W\31s}Uڿlak #@#j>> c繀Ƚ؁!h~sS8\v=Q,Z!c` h*\x2~hcdHGZgma!nEG+[h]g/ zT_1 *MC #RB@M-VA)mwD\A(@; #Y'Du4$FCMBe|فy#6Hޛ2Ů? aVQ ޏ5C6VcE;( ]C٭aD| /X[&7Ahk\*/-, 9c{šlo7̰`hzPyQE$Qap.z@,l8B}cf"`y‘^D]jog3P~OCAZT2&4jG- 3Z2UIݝK FHwE0 xW( (4P?t6εKiOO;ZNIsBXEj.9'1@ l̎PCaj>b?IY2\\ wӂ>{E)ǧ5);+Q.MF^!v5ϭ[.\/wT$e C/rMoyCVyWWC[Zm򢘢d);KݥFΕ <ϛ=@eOG]vVzU njN_Q.jcz aؐ0-=w &}^liyצ-Rx8HmeRe<xD[L25 aL`z %GL#̸.|yO0B k:S7Ł(fftީx r2k鱝F'ݘ'w/&pIv12i>.˞sM2Aa]0&iy!H5߳l xq6]%9Đclz8plи +AI#dfDlSwIc-Q_ Wd){BWKt:lĥH߭ڣi +`Op)&!Hf!63+k#C% U2l4U w ;oeP b]B;yɪ=wO};(^s+ល9`Jy<5/fuʓnh.fbusc2n.f;NxpQTk>qX ` ᾋ/;b|̽2C O=BFV'V+oWHa^Bf嚈}@P[Gs"ĮLa )wRu;"|GQ]qe1؈$]Du-`7FpAaV*Q}ro#ԢEWk8LA  X3$>C =t# b^{x"!D_}iN"[[H䂂GLR(|B.Nt84NkawX=},BEqΖǘTΖ+LlP Lz_Dr.m r~_ڌVtڞ*s_Wk's) /_FJZp֊KV TB#ڬj7W%bf:MQCCœDJ h sJ Qny]v&dXτ5-*MCP&-.YvZύp7|rLV$!_*`Q|}z=v{uo;ԘSfVԚG< k7D%m/̅QUI oZiDim,Cc v? )67$&|%f[Gp nfvޜ΅;ٖJA@J`I9 fkR.>mzSMӬC,_ KOoe{< PM$K5|KRm [1O+Od8+sd@"sTSDF|X-s*)*m4wٕ~6؉kDpx,o x4Elk`évVV#,"VF[I%:d>ɇšacyh?y w}NsjJ8 _5@=rATcxks\g]R IZYzN\iP 6,l-$J =f;DY u祐otl3˴^M X;eȇ B0@q â?@/%a?nvB~ػ9PClh0}ǶpiݏT4ճr-:(M Շk_`@1t}%"E3OX&֣Е应<{d/j3Tc#\ѿIôsBOβlm\˨vqK]+4~;ִuEJZ6>Wub'þ]*P'NCyMIג -HRg]aˁ[)M. t^u\ =$? ۱rBW>!m_Ӏ 2ÖH#3.R5FVUtQ@IYu#Y#H0ɺV[ noyG=Dܩ]y86m.89~g9`?\S5cJ(d]1D݋)-Ex(Ǽ RG ^4Dͫ =U<, [HRq* z ٜJwe7Lֈ|\F=rDVpC}yIĎmo5"nuWt&ǯ2MC8tR(>$` 8#̨Y!gj臭h'ǘz''-W/wn5Nq_8fݰlbjorx)owl Ŵ,uzUo?GqCܒ<%Ҟx-ˈu9 <58:)7-X͛s-10Ϝy\TRWBA|)C``QygOC%Z&teTLi$'.蜩*YU2a֢B?ڵ De;!uK!Gu2S*Fz&3ʖU뢂c`n@w[tɂA踌ET4U]h+EN~# nvUgF$LG?x&! .Q~UۯQ֙=,1@$eè'a,$h2${Hnɞ^FǕㅈΔ^'׻u5FU& ,]F?vfF1YN/K7Czàۭ)8(P|ks~Z?=qdyс#__ƚ,al~/ﭚm%/ǫ+vDE*̥$ֶT*Zʌ ag=@.e/Cnu'.CJǼt<&\pȘ3#j̵0N4UO7-yBtxݎ-:5P \V+-d\r_j(I8JWiCns*O@BhK05g "΂4ϤX^sgQ'ykJePG'!{/V瘙 qG]qMy05,λG<,:"AsdM:rkƩK]EC6U:I2 ә,+7$8R'Fr}8~qF՞g/ #Df'uʛТKY  "aIx^|֭O ]Ƹ׭ $o+>៓!~V;,$_汕-+ҍv"Rv*Vg8]SM c@ݍ)wAFuja*VD66o/K b5$$3d ٝ4 HR̤ BK 5pnib݇#Zƞyו+!\A#J^GӄC\sy,@QdħT>L#d4dfl 4vZNABwis1x7 LhP @ZSne.& L~K2VLppSigBv5 Y4_h*h) 7XuA"u[X5N}^%U&ǦrâM8^<qgyLȂr Hh|ˬ<ĝ9bBxI22 =:ĸA3ېy(ք/ғy?\J{ Wɿ]_A67k9+Vr'!TNxy'> w?㱧c'7٭׵P5RMu:Pdw`1GA1Dm1 $M8CjiHi0,{ C婪X* x8I14]s% oȢ)G !8<@v^ZRK?HQbZRqDEWH']09sT -*_VuSo@ V:k#L|]~A_0&Z_^9he2P!: F7GK9Fq>쒀bhH1=d.(kIqx@Xw"3g|4Jϕ)rL۶0[ċ6x,3 9@-QK/d<cw}oʊ֯S, `m@p|K6V,?اKy,Wzea@ woOBGG* QOVTJ&ڏ 榤=iBZz;͸/=Z&kA5}/$)^!hh_dǷ|ܶUP{Xr[PM+Gb_6b+D&FߡSUpgbK v9!1JK&O@YD8=eЫAhNǷ]_Nd5ex5jqGe(WOOU]8ŪB9:As39YN)Rk ϭ 2$Do~Kw/$lX0BP;br,Wg(ֳ.&E,M̱@s0M~7p9uК6Y1 t3žGy6- kr+XZzIbW@ֶm^4GH! EȞ^tJhVT-pܗU{\xBmw# BZ&j:ըnm{Za1 "2-novvkj@x9-2H2%a1^$4o<)0p3%,mLMN4`e̪lJyۉpuҁ&C9,8Kdҋ ΨnXuPd 2T45$xpP)+"6&h|੥~p?OĻ~=H䒥/Wf 4Vҥ:E21 p8:P^2f8_Yf=u\k}J}x^+t-|RmNLϖ=H8VsfVd8yOW?8e&27x}h-#h`k ǽ_| 8B 7Sc4xCb| 75%Vo|;?L2®z9m0(C$iްH'8;6PMQJ <eݦ ځpk_k.,V^RXӨ˕ 4chGf\sA_m,-GKz>,ː;:Fp8ixZ8ϴaoفH2Fsq)AdZ> 4uHjçG&8XP')Aٓб[4ݹb7L!J}̦}СY]w|cW&5!#q=ҝ*][ʫұ(%lJ==$fG`;D﯌Mh}bݤEyoƦM#"OHRv v>z-3>&̙h2$daGwZ^lN&SQ*Ym URmܺ˰]䄹(F\gdKe=W-nM 7 $\[!}69wBZXf͢rh8ƹYaoox"jt&$dR><`ms煱՛QZx(jRxnT::%LDc opMcQ:zg7{#ӕw/&!7tߠ;OS2cq-wfs Q1>X{w@Q-vdRWvr4^6Hπ|"=j3xRP%3*aFHlӧD%4 clVge+0#=q@۷,Yұýb/۳*u֋4!fEq\s[i+} eYa+Z 5-+Ds>.X "WTRo!I*\xnX65"*\dE/$[V00ri֙`*E 5DIWH=`'"9@y†0g`)0AD+]]ETK˺6u"EkS>Uuw!2pk)VvMr L^۟v& Z ;y;cUaY(݄J)2$ە`+!2?ZX YN.L} #r+eH-kOu9$ݱ5g˝c41؍b9eR\=~V}[àB49l (h'}u{iҒŀwsI_E{KVj_y=@ X0=+OFTz?6j8Nń ҷB_E^l%|F9]((e {NJ,~1~.veXkcmSUUÏAox vv]||# G@ \WeE7E mS[{ ?h {Z|GZYN bs3Ia7;ȮfaDOdEÜe VI]coGTu() XG4-Y$Ӎ2tߥà7#BYs$!|GZC^#]^)tgꖑ\0ӍHBx-)غ7ACj7ƦC蚖(~'aS`jdWTT{ $[9I74j&:8XVϾf^"B`ڄɶ wGe _y -B=!.?ڜbMty:8DHql!1m ˸Kb%V,wr!6ؙAk1[v|6fzX/E6)'Q4+A7N{ !ۀ;HCIߗ輈x~XMskvrHO~m.ٲRka˓q.Z4&d2{Jlz$9`%~{F.24  Ο~@G`p̧ޓ.unQ?֟Z,Fp_ք-p>adiAf]ϼ, rm&)7C$S{u1)Fa6 n,70Yq. o?Z#?*ք0$' /ܜCT}J45ҏ8fcm<ıro28CLa\avקW.MbϧE5.ǟ3bk j℔*B|=.\:<YSx](Fȥ,d"jL#2 +Ŧ'klK:WL!F'%0<n%.:eo8*Vgq(M?. VFd)VՔB 71՟QL6cls^5<^`xOd^aFr`dsǿ6cj }LC/h4tAU ]+s؆py[ׯ={oaXS)y1n*0->#!L: Gb{:炶Sr~%3,N Z l&F4ZK(  -Lvx uӍ=Bˉ͢,$]!&{?&?|9ʚa͗-5m"ޓV9@yTf@zs,]^Z A} 'bGD81]!M |F,cdصJ_fHo]8G؋o %N(ܻHV?c^KtYK˟Y7)&f[i<6"hdIۛtv)}ZO#*{qKx<9P4&o{ӔqbT>:,j]p&q$$tZ-l)(^@FdAtG3 >>w:mZŷRUZ3K9D SpK;@R) cŃ%?s1'(B}SwVg;H;*JXw:h3fPu X 0^I bM$]Rvxme6]<1 \{W|6ip'Bk!u@l&=՟LT1V\:@UEeʸg'#2!Obte(MOr:N6D fd|?ɃƤH;s[ܲ;?K:vTV~>F7&^TeaVd|N6 /#1*_dwZЍ$="*N`+36OpWuF26UCRfTzӢ*prK'a97HMdn?z{|b ud" $Mgˬnٶُ!Oin qO5:ԛ^2ًG>dו^:]BP8.lnfэ|G8BODMET]Y I j%B-7_e>XbehnŌOm;"TǠ?*!W'D-C:Ōv ʙg l"] ^? e"#""R^Ob`ntPt'q5w@Ԭ4I(fSq ?QjMLu\T/ˏA>['YJMkݣV8 q űe1? ~|w;hMDNОfk%[m7ń׃K>BZ0PK%egl 's6$2IÌ86%Yڦ x6̢탦dfOcIBcp`uc6fa|坣Pk(5|RҨ_ 9:e"z5?},8ÒX;baban` 9^ M6 GmJ'c&l%:<6 J$]P{yܷ,(zBbth~N|uI@/#p{+|8`X#eA6UU,S fC:B`/bq_s j ):U-sg(^sWxr!.>.u-E $SS﷡qd J`=B5ǜp,ioͩHzڛ3?{m˜J ]G_dYYr3ly n(Ӵg^t-cn7=x\zx{E!Qd~xs^n׉G>'nެz\0MߩC$t2[5~ցo8vԖs!E^r߉*f5Xbf>C㸫}aMl z牗Y1|Gqudo12H=Bcig*ehRuyd#\%e #oXkH[W'Fk8@Sz:AԊts$xhc1>|[L9E0Gɥ+qI^t0 ާ5_e$~@F:~sdhlQAvFt_B`Jl24 f}k ۃx] Ė}|YU446?'_v%i"&bT0SWhBpFp}}֒ю~_c- 836ĹOI$F(Z#_"$,/c,Nۯ攪DJ2uxyR#CcZQ|mܗ"e)@rB~=;:qC Sum٘BNuR6bYO7nKu0݊Y4n&w 'TVI1X m/^a1m t7H%4@鄾Ͷ:e kwoy{ LU: ÷#ҏ X> z"C ͱUg׳KARF/hvw4f(;`2ogEXOH0HLB^v.c/Pe2NiPo}}.HJJͨS*T}Rٛ6ȱ^b!dLi54^8btХ{Fa6+.ayFT9q1rzhE:$0X6>%?6#ή^Run5-?عd}LԽqfbVЩ>iHa(Z;

    {7Hûp(jLG%}XiºU<,E.JֶD)s],nHZ5srK0Ols P2P((OkG>!0ێ;\[|[A'{˞),?j+#ЮVq;l(}te Q-m4գ~0_Qd[>\7iO:ʻ\j+`<8yclGLjBYA/k#_RS "' 6oh|GG 8?Cq<԰Q2hV@m#դd ɾJ&6lYΑG>eKx#5$9fYXipOƁD=@]w,1J9:/*KjtD ssgOU[3$tw{`v o`gڏcڅ- X۱V.>0wf/1N9 e]xmn\Mf՜ |m_k-F!N^~ LHa] y҈O1~?v#g~2&K,1B|U-KujCFhp?oLgv(Ly0luoHd!HDV"/b; ,2aƹ)\,!t0'oE"J4-~8O=`w +]) n|y;;p\?f'9-ڟܳUl[! ! 525ۭb'Td}2a@G dm*h=O^J?}ap5{fTۯ%@ȋe{Gm21#%$^.BzfzG=UI$32}4I|6*|+!ls\}bR5,=:O*&DFQ "h`F{G̼cR-*[diNQ`ŏn4}Wivt<40n:~ٴTnEhhȽJ+T2ѩcxR:)ήuZrG)kt ^y]CF_ XA|<[~~*t*LEAαn&Ik qQ̙A2:ٞ&bYji}ÎA=CP)Wx!=x5j}M/KzP>zog5N6aSU1SW!nVĆ=Um7.4rd4{Vk~ 9~ŀ.º) ,*HP: Tnju;QUNp\'. %bp&#`wo9i׆:Qp!rg{;xPLYZYh (f5)tYmP5TM%d2Z%%$j%\^"C{k/wm|q2wBo(x O M#-Y~h ,j_0`#-ys7T|ު1:ib ' I$PXs6Hw]YD¼d\%fTn n[+dho#Sԍy"ho]FuxQ> =oG=).fOr=/ melG^nLU`tl’q vFrdP'n_9 RvQO9ݶEc: 2 p/qi*CTO0};Gj-;)^z _?&A1ꇰqoRPiF*/1a0~n)1!!ږ"kY!e v8ǙSJ7k,5GSyKچ(* ‹!?Kk_QJgV j>Vb mAU0I=y30{AC6dJΔ8UD'UuTjb33TkIEᖺ^ l wW{wr].'ȡVQ=xss defCTJBj@ՇTxtPL_Ftxb89ZF&LVݐ!RfYX椰<KQ䊈x(1iEM5o8ZN// s@TAZk&oj^78y"c>dԼk> 7V:Y&31pTW#U hxΑS$6õr=?{~`+ulT_0[?S\tS2kv(ѮݠGuO"fmVサ㔙$80 T~r?)UO=*N.zTuq b^'( 2xs:^Buuz:{F8I0c))Z%Xl/0FBU'_,aQ[)ru趜7@ $;]Ik!}hш9ga(D rMlt%G鹠EM1$yV揤j|tvj)onJ@2Ft匨A$#kI|c[m>BjKS9e{e$_%Z|PvOT^ FAȕ՗#i>'$ԉԦ!d>X{NSX4°hLyL>\3֦wtv3m*q |oV$x%C7:\e0C2,ǟdP@XXEgwB"DQ:h=q@uՇVɫDnI+ lͭi)]8&c,I#<`L3pl]բitc=ڒNIQ6ja6\kPSw]LP,l2챗7F/jIw͘Zc91O1cdeFUe|yyߌNDMrr|z&h1c͍fTZj7 </-*e☉}40xi![~xmU᳀Ju,> To77hT4.XZPF?bL3` R4 f0x/d_L9.]W.fn'ED*r~onU-?د ܷ^77W1u8GC f$zEc #Y 6NiHLoE@6k j+㭆?4A[R#ȗz_|q{4.8(Ut؍\j#Xi/i%oq8uʝT'JD8` >þb\TuOJRvQRqQN.;k֘WO_D280F!Rs?|+B$>+/˩x6}L6'8ۙ}c?!fpرYPz1OZzǎsOKjlXBHEe\$ŞWE v=P"FIHlо[7W*|Gs$ߣRg٥="O&*ȩ}Qغ%CF^ 'uxMx*c`A+j5\")B:zs [ Lfuy'(zxc*4)+ӵ9< ^=ƆS$X2~ #RƋRJ>oy!,V*jD9|vj}]" 2 U 8^5lP6܇kPYGͳ֓|M3x;Gk?22e gsrx15;YY"tgmJ`*HՋTZVNk0B 7!AzK0,gVjE{*'{qkFL-Ls;莓?Tn#VpJH\v*;igPWRTx7x9:h"E '7i۬\CN,*SA@ n Sj^r+Ss!-ji34Nz}2B+}\ Q2=*!!DWGi6IZc30*Y9' {`‰Gð{rM$BoGL`w jX`{Zf`r;Yp9GQ|}f49d6Vׁ7{`EV`dǘ.65|S0 t8nέMyh8 Mؠ -$'ýsW;SG 9џ8ƙfw`YQդ(~2ICSTnj^{ C#{0\ 铆dgXEi)ڑW1>|UT; cmT>Jt!jU)}e= ?x:O(MFMg Te=+i 3R\'ߩua*# f0n5pA63/wt nnn.U ..}@}K@ O*JAQ%" u>P}7/wTlXc:W,R{WY7<; "ϥ@SGGʭ|eܯA#IsT|5V"G8`J8G5v,&2$΃nMpCs:ȌI E R00}.s y"BT]F=|yIt[h nsNs#^mֱShuxɽ4*(.+L+K f:I:ѡ+'Nt"^7= :1:[lU]el >  Y(~7"NEi*hڙه[W.Ŀ ,$.ܟt H@]~_K$;þ)J|qmpN^@hl6W~[tʬ_N<ja9/^v;RX3Rī9 蕝*φl*μ PɮI#2=L̲`A9N^%~U3:Y4$O] pՅvi<; \gW<|::D.AΎ) ns6K%&Dn&a&P/sSS1w\`î1#t/KIJ1\'xc-lØ7h 9NC2d&C]_wGYqFP)a֒҅PyjCN)(DhiOx_hǼWjkX/r. gQE.P<^%;4/'7Wͪu쨓0 ]')2P#EƄjRٷd2}>C ~ 7 (BB!u1s;d-R!YŐJ05e]IxO?\EC'CI`:PW%2gE[ĩ)ɫ]L%O;oN"@JLq5nq9wˆ-܆k@/|ZONJ j94-A1Mس{W /')b</ /3x;k zvjCݹ%eYS32<\3)EH%I9*fq\.Jt$Y,н /w5`ƫjJ:}7ԫ̆%#2;/6Ⱦ2)5,ÞPBdmd~۫ښD2>ntJ{KP\V5Z)nԹ 2UH>"fךe$u{nC7U`8b(NEg h0;Hrrd뤓I&jB/R=L `*lX9=44ݭJ҈WP`ZeB7ĹvE;ۛ'W/0G# +тN"lAW>ifD}k2 LGA嚈:/DѻeH{ YXoufTf:$;z,77s:}B1rWD<$Eȥ2Z*Mx$sLQMRT.E.&qK?7kӕ8κ f<]:rYל%"nEX$&\ӵ'K,^`yWHމyb.C)',Cz[n}C]lZZT|?sRTÁLz+t%_ҡM 7T,H_N r9 jʂ< ЍveCPZHCBVq:cMmEOU]K=qsHĄ @N>V zi0$P#`-y! UߎB3Ɲ(f\,;GBZ|%`bSH/%L|H,~jA[P|McՏ Ƚva_SHEw1B7^r\w0<&FDS.,k0cQ+Ցcy_Sk2kA'ڃ͂Kӌ;`0wv7$ܶ=n4zVOngJ' c& >:'5p0c7Tz:F;ki ٕgŃEA;5yMTw=_Ӝoa/v]{Nww>!j 6Xݧ8Y4'P IBGa(E)S[dmBbh*MvywE(,0зޮ+Uܝh68WZ~)^|`b'e,h-xzx45Wa0*on\-.Y j/9sm@6컫 K<.b,WEhs8GeS;hROn6F$mg]WY3V_O/@~y~/ae8ұQYfB乒D9( 0L6=فa:'lU-B[o*" M xҞuAm6U ͩ.ub)C3~.ٽ!pS "JBwM7nmp͂;YI(\`e<:Ecr Rlݠ/a`"jgDWw?d R?kס{;ga8Cأ|X0lӅ=;xe?{E;=%o$Ҍgy6gGr9Z#wy4k՟4 ^ 3tԒ<ǵH&֎ ٽ2 n*Xh&$!&KE'CbcYQ|7kU&v2WBUaIL5ëxƳ vY%q1Wv1X'7"lU2e46gFEL: )#m㮇q Zj~2 9Wl& &Ս[Φ:#X ܅pٱBc-+kT nkL &48d[ Шir)tuaAO號m η镽nxV*eķ'y+V,Ss"ey;@T#Mcs1uQ:Fk?0zzE]ʴ Q8Fޣ ٓ.{ߓ*R- 5PIޮRE.Yc<,M=olāeJx s)`t-0-Mr7{fttH'W.'Y@yMŝ˹\N$mƓ"r UFIȠf,˼x2ȳZ7x_@.gg8ސ.x_Ej9J9dGH٪+SrAQ$]iߊm#,1C->W#݃+Ann__LaN5C$*ԣ;{p1ۤqK9\ 1XQc_6XLj3>R4H0;S52Z)&9_>8S"F*8"0`M-=u(~ɏ{|zK㻺LzyQYtU3tNQ@> 4'L(ݶB]qk?*w?nöaW/ HܑvҪں7ar&3!]uc*?'\{t%T&<ȕ=~)<)Į?C 9">|[5J抓R:KBA&LH8hsy˞VXQ)DQLqAi,Er|{ߚTHޡ{Q +'|]gaˀ" Po #Qj{`?{5kSo~oz{m8J =ȗi@An `ҿp%QX2ǧzOQI*A865};8^\s\4!^o 1zajjVk9࿍C'ncZ~G B`6Pq$"*Cv+Vռp"3hnӹr}"oh8# (X5I)|^ʪc#%(ܧÍYEͅ.FƒV򍂽zy-zl[>;\N.;RT0c9h'uMqJi ܃ʲ%_}; \eєz̹tPi!:9ppRriWw(` bpU%Sz͟KpJņ^$۹lzKa›kڭϔGK͇ےumz_ߜɑYkZ HvaJ8 UJ\-u˦uȇci\Ѳ,u{PmP; ӲAjm =`Mb "M,ݎITJtXU)`JNX!N5dJŚ>zS[k|dꙭqK<t`#fU108I`Dq9Δdof1LBֽsaNϏeKQGJn=RwNotpژ0L(MƖ~G^uP0#D-Bo<b@@ 39*ODŽVy ndFko5Xٙ߇ݗpU"AȊN _F`0~bYث# +j.we@ ˆ?; ݀"DV8((͛r{A6j ּq$D1D_XSptIL*s:u{ZfdQUcUr.{5UQgaȀnEgCR /A]X ,B !XB^ܷ-G7D)ULD_$i}9wYslA5^S(J&ilt3kzn%MI/?2 h8oFۯ*-( 3IIAq~<{Ґ&HK 'ˇ5~_rs0 xG 5⧥Sn"}`wNd^HYv*ŭ(>6=X~ o:4cv#o^E"hk p90Vw;nSS[X?>$v3Z[=iaJ)xs?R`\gƂ%"gş۾p?BƑ.Uj)$`сy]~0|r9SʁS Ծ(8]+<,Mb#Ը@yӤ,iՋhl[Bs6i;֙&Pn+pR]\A<XVCU}?c4"i/:O&g:&!T]ĺqu0}=͉7㪌m $"XPd5>C2!-LhI] aU<,B*8Cr1C !&}[,H 2|m}r>Wf[=\/8\q3M92@aEAph~{S??dNY tn.3zWK(\؟H1cj0΀j0H}_  0%uthqQY5pepvFsa斀BY$櫊QU4[4R|!8B3GhΉy(Ay3AlC/}hk, 8e5Xԅ4;o`xXc +F=Ba LњT_v4^ @dT\B;/7{~PKJWZ[J#JMlKԤC8 kߑߴb5fxo;`ITkίIJP d86}ye-G '6`J^q~A_.d~<& rm%.f[P/M5 <_=Rz2cs}|"cXw?#C֫8J-v\/0ndR60;(  r#Ns51Lyv9rk~i N$~)Sr(GuOE$Ʋ3Zk:%Т.N$?y4[1+kuɽ #&A|GJd.AElcL1`}֑mhiiF^cj:))i_)kS3+$ȡ W kXbTƫ#^93Ao4rz|pQ)`-Yϊhx2Rr =&ucn`:F=.jAw \XJz4WJ#ϙaXȏdvgAVs%j̶ݰnj-vK~5~tUx_KB-;"IțO՜b qK/e:w%H?Dp<U D|C!v Dz_]=wg3e1a@ֿy֛X[gS/n)!TlY8n<~!Y+UiX ƠgCkٽk,g7-%.P}.?+j׭tZ@<ڄ= $n[QJyȤnW^ʔ&WFYXoA%s<5@G{? 8)Uz`zS)8)v&{3sQ? ;sҩsKy9 xSӰIq:ğN6uEyuk |麡ѡ(,5cy>oU =JU4ZǃLq5l|3tFf{YR'~o~KPX,%j}컭FØ5UQ@H/?rĆ@9'~?5yd,iS|Ce+/"\r?0>] kEq2] ?=-~/ٕ:ES fkQrU[/DjK몄LpgnU< Fj̆MNT7A-/0S.V!'Pkb%whu0F/QQ8>K̫LjLa)8QáqPC`cLҒy4Ku(zt;+oː85@ΜOdەK0$O6%NSJPmFSx| }_H:KX7c˩ &;1j넣 V}`9-}&W^׹=bݯh/a%?ڟEO82)qL$ ?jb~PV.6حP|Il0b muT)R`_KQ 60apb70 4Uڹ'uMA\gHBR.Bӕ^43ouF*V=Ee s%ź@ґJuB` I!y!4[4~wtE 8L^+GӍ:*<;6n`L\QZjƉīa%)ӃEEQ^ Z.V\9|S"W+\ Gj$_=AjQm^*i<`!sMGr*o@D^C[Ec>VE:-Q: W&io9O%JֆlB[\1?dݼ6̢oJs3"rs9-Jl# ,qrs.4av3AOܮߒ{Ieq=gwIʛE{$5U{TVqNHsmo+4c=6[G ^ۨ@3Cn|?=.[ێ:@)ݿbh`>%a46*Wn3>4v7S*A䷋JXufʱ#ed>\V\}YH,O̶ PZ:5no ^Gv4@ll0?v1!lc0)KZ=L0'C#%@upci!uv`H?Jqy;iQ$tM[/;w,H{2nx25CQUxS:4jfM}}1+{^S֚ɵM tI'+MF̺HӰW91~x+yt ڭ D Nq5iW|v[Ç6v_2Xo.@B c),+BߎQɳ1"WieAZgh( M.v-s\ڌP\Mf6Yul0T||+M]7kfA2%O,UqD䍥 $>;Sh9ٍ-G>Z{g||û1A U8^e0d096>kL/xQ:fn머kWxqD#80?qԎtk-]kp>@rh1(ǜo=:;mi2hX x~F29wtrЮ,\ZNAb}*ހ%|CK u:@6]yklKVE}wCYGI>eZkf έIt5bcr|ƺ3Mx|+3F:<ϳ:7ǧMgf`Y܎&MWU!*:Vۃga0F@_ :dx^7w=mU-u}!ۑ+S8F~ xwD F?m#-#u3Kͻqd  g3Q|?W3t*xQ "AJSŤd>+~"Pùiu3Lĺ!辷χUwE9Hs<zFuJ\xS (GpkrD]F.sԒ+V}sIΉrVog}H&!4֘HoKLhRY;,XsYBA.#mnO~_m);="8 Csd.1N h$JײR]#f}#gw_V@pC1pTkhoøSkR`B-$ó3z;'gYsqUGz&tu$A2dx n\?8XB`C:wq 驚I]vj蒣\QχmQ罥ļ^(?vJUN2CRbAA3^ uNvcZxC N:֞], .lhQs55e,FW3V iV¾3pLbl;I R:O|&RMRfY W!*$cX2l+e;3Qܴ7ڇƿ] ,ew=9k6g^p77dp`?X F=l'e$^~Nk4Pb㮷„5޵^4;LNe1I*{]x#qaWVȎ02]ҿ_f p,p:i;ǛЛx%+)~t1Fb= \gn9 }ҾPle(@*Eϧ,Q/,TB",EEx(ziװbX5v]/ruUUώn{ps}~`Czwpby  ꦝ2o|H%]$k&jQXv_2ȷ=҈%f cP NKQK*3z"O9*fb>fd=FDFPE.Jas(Fv{DXV QkhH2Y#o۸(/J@Z%igNiQqƂc[R($-|A]jsNx?j';.X{ /Rp^g8Ѧ~=%Cy{6KFHT7s}b=pd3s`3e2,Y=Y<&rd7!2os L-B?3{:F+zZ::#ML잩b;iBi]0XXTŪ="\@]RdK ]pZSH6UБ q?`#'~[oBa9YAxI;V@TMſ-"KfDemV-l/$'*81Ud75n ۊ?xKJfWON:u_S*ޘ+Gw.O⨱ % 'P-B2GuwXa0& &6:r[|a kDc}[KT"(%ԓT|X|Ҝi%ٳ{iGS{=O8retB$J$)/z%mxrle@LKXun@֤rS!=A옺)tw6_WKG9ʫT7-hd:9k{̔ t[)fYCKҀ-2~J0蛒zfnZod.ذȳ8u2kډEcK>NWn L(v1zYlj2sW( 4cbՈ-)?xա `# էGÆs# LL+;nr9yYҝ夀5H?\ۼ>rʵ|w{޲rR75mM{G!ofzV/B[z\ig#2%EQc@yf01>3Zu@LgE--zX{X-ͫE:Scp9}R%L)%Aaw4\ U)} r&]x)ɟ ,~vsK ]a>ҾXٰ|oZpF͂X$$ʍbN^p ymhR]_pc=JZP&M#kY-_Xaw!WNB4qc C3`tFzł-  |i\W{J2n}i3?e\l#L*r gTKlYuDnZcF1mwe8X|3}6Ԝ8G"i֓Y}+'m5LAH+-9qWt"|<f;Q,lWC9HƚyeÚ[PaolǶEQMn0Һ: ]d(obin7i^2$g6va aidpg\ Jijy!T'O~J Y!][.&*?{@G-k=DZ̤\uIj'1 l hJΔI v[Ab[KEN 1?q6G:D^1M - O]:d&5(ҕL߷A-|1TL!Dn@a%Zi/ݚ΀H<8dd%a7mx-%ra"u!|Ae9nSo6u"g}r<Ցۜx*%-KFJ,T #8sU1`mWJ"17./8(uVF"`P l_jG+dq_zCuDYY93[ *|ۥDi!_" 7!7!;J^Eu55d5b0quߒ4-O)8sɭR+u{лzGܢ0BP8h{⚔|f Ƥ2ґGMq8 TĈreߎ<~<u{a-]XV}8&GhsI7AA;&}(\'ٓ ٮwU<"N,Hgaq|YuUT٩zW_Lszo~Skf  鳔46N Z3G0~ e䤛p1i4$ I|ʰKZ׵fW>-DkuDexbIL\v&JM-J JMcKA.lfftE;US 7\!,V\H&ӪJ!y)}K9rF* e3οΆ0׫xKt C(lbFzs*erۋ4N)M~` (lC!UkVʨ"C%qXts0?7lj)޸ŶƢ.9r!C u9+ G2!%Ш{SyӍ5U>EmUäCyp Ac1RG9Dg!''~@e{gέ8vT^|; tuEG'*l )ݝcvVԄ 0(I6`۫5.֓]x-)OY ^x@w}r`'[w>6eiӹÚfcy[Eׇ;4-CD%B8ۢ:j"jN[ԑ1 Te'TL!w&ંyD V4g.X+MU:;ɪ+ i5n՛%BvHc #ၩ\TuBhh#xZ*vêc+۰mZ>H4*N v,i%uo3ݔ-Ht_^z/qZ2JG^Q#f _XGeR˜Z;@DObj,1nmbS8[m@T\w|aZ_'Dޯ+_ #nzpFfg"fDˈ/?0KN)x7T U ?g@pX}>8k~ sCtD1}nQ[{4*vYۄd:t֋?quya+'g@k)5 dTϨ;U-8n~IDU.[Ypbj{<4s "f +)IkitpxwBx/p!VQ!*k#/uŸlV/+#ZBJN/XWbm0ԟqMZ)Z)W5]SDZ~`bQ3֗G2>Zpٔ9}+>_Q2h8&Rb<ޑZWFn_Ku7ǙZ|/Yf)a$I+h纄DAn6E [b촯M:]aj2?dNyvW]MlVȃJ2V_m釞y#J4,(۴er_pT|icr LԬ>wʚKq9~aH “HaV9ŢEN;i=vhr\z}x !<^ -Qg'Xˀ=ҍQ1itt{q3ԍ+&:۷U'IP^fl1ګHZjUuz`j -tť5ΔVަ~~4XG%\;/*`x #tI޻R f1U(?bQ  ۵SO)DyB/I j",J )âlƚ2HxIJTpiq< 70Li26NCݎ5 V۵ݪuj|4C-߬܄/%"w;P(qޓ,d3q,R /iBG&=:×}탃[rm6wXa~~G _?7pmS} nNBݔ=+jOW;AgnKaʰ#&VdHį{tzQ=ejWJݲ5==|vH3 l:*o޷z8 3K"9,R/ՙVL4;u>2>G̃yӁg<+e=T$d:I$x QfAQ*.樂7xȪܾVf߷Z(A؞҄ % N[65٦n,LQo69먄fؒV4eZR@E=ÜV|%=/rɁ`oSC#+r^2]n&{Be7vCpbhw2C&EnڜD8Bޥtn Q=!kɹ3j ԫ1#mIvƝit l¿|vod!VEF⛔bd8`j/zqd~)v9y`O`e[>1Hpu(*|ya߫8` ƠW";3G)g,t=6"n\f!Xz>aI<'hS`5 NvhS&ǐ5y4*VDGde򺯬9$܈ wUzI${ܰeٴ!uW'B00P{НH$ijdJ*۷Bw@4ز3 ~*5"qR+X-0 77]_ikqG;Qy4[~Yň@HSThPq|@j8EMȱfs[~ T-Fk1.S92l-Τgï"}ZHBU[a؃RH(tpI퓊inbS"(>bʷaV7:xRv'jQ%tgtF0+qTqV9@PD3s T|shUГQ5oRڜX kXyaLXC'O?s5q>[2`Z_=ui`,V爳HHVm~pĦ`/#vy5Vd7A,JQhF_q8aA'bt˷O8/ury4J2*bW3u]>_2 .&KsISsL޺O7ifa-9"a|+Eb\dϸ6/#hmp?P yd})AD[Ų M)D_uUCi "Urh/J'<BJyL1'n_luCU"<}6DI/]H]rJ\7*Yu#}n+x[PFi_0E1h&h p(gC$85V0J_ʂ5?"'i%ok`7?:\f^~yLoц7 bw恶V} {T1hO_S|!@ݒC|F8VYV6Ys:!4Bbsw:hnFh\0ʺڙ\*aQeBl %J|@s= ~Ѓ6(UfvN0>>3_P}ӧK'[A=sF)VO_FJܼ[Jٲ)`ooA)3t1!(f4)R1 !sH<$8\c]Y\ @G%i[IKy塀km$I5\b?#hwZ2tοC,cQr"g2X3` \/Xɛ8vwf@-ݜv/aD!{Le̛EExR $GF%G윋BHaD jSbV}4*3>S]jj;mmyR֟T"FWx:t }'}PSiu5pPo2w_l2 45?XceL&co3O|qޏ6{Q.-; x;0O$x4(!CAK{(s2/1h2zt6wd|8ZxުD[nT{G4,t)n6wmY|ZN}%aRɮ*M@},'gS(W@(QHY}PvYH}SQ8kѰ$)w:rTAwgJ͂K+KY> Ǒ{9<7Oea19:>;!*l54꼻DEE}33D-O΃dWXKo{cb%pA=UfqM=IeMnk_2.H.?[äEB:s#2+BXedɀ/Lt)J M6 sߗ}?(xW7:c"줲QdAea=H:B-.{8:Fd#m |EܨBƩ]:xƆ4@J oTZDSfA;lSJg XMo+usX}4ϨAeGⴾi0~L ,%j&wA6ee6NS5wݘa{oKf0PYGvi~LTu\AFbg`kEc֌2$ (Zե#U)h~)}:ZS.7Ν>PA+yY]17"w(Ԉ0;Z>5FQmJ,nyEo5=ΐڋPXڏWb>%rň1>lyf9.eq@Ļb̖Դz(ZFSgkĕ$mxzE.`h( yFf'8@Zw+$௿k|Fi%"}fC̓9oaf\SUtն%E/N9="=y_m3GܒtoQ]'"1:̒uWT ÄWTi0,hoV͈jtXe&n%sk>w5i\8A55n.92O"Fo{P3+*c,Ymg+ZQ8ԃk42 Du<ɪ*_] Z|AH_˗$+Q]_BgayԉV8Ӱ(CsY- B]]%.1C'ʭzu=jx#$+о2 h^|'[YsdΛCz`U[j\ϲZ3)XSO>vzu{\,͢#qHϬ,GX'3S L&[{ψ$0@8dqz^UpCx3{mЌ#sZ7 <}@qt 9*DN84" F5PEFO*Tȓ_Uwm?V޿[oS@69=\\D?LgpQe/TV236+=AD+: Y5VJttԆ95"WxbقcR߄VJWx XnVGBf^c}qF )f?GyM}?\yv<:-M_`H»rn2 3;oi [R}ǀԄ߆e$(ৌlrߗJm[(b weȵHeE[ (v \)Zr ̝bRFȢ>H@.L_LT"yy󫲇 }?NgoΕ&yFhP)~B0| !Z3 4Wc%+Q oԸ~3pOW,Me!NPNwh7_bŠE.}{`C5h'ٞﳾ(H711;%GgCиlMZ$;,\6b+U'THok X@]ɫص Y8   '9-ov@ð*sOLz̩7ժgi Mvj&B%%%,hd 3%N̏˝m; lM4yDWfuZ4#swNn@Y׭'t3{b$嗭B,79 e$1?r,4VwKPsj(U26iɝ2NoWrCyH' O!e.N?ficsb/gYmET!{Ǡ~SCYm8Lģ|$6 {A:usU@!)$x5=#%{ hf]zfŖ<֣˞+tdN2phbW[Y3W9bȈVÊGxKqP},8(G Uk13%ڏXHt^\\,AT^Dq6r~>4~z3s%cجբL)ik{6 v+nk>lB"bPdb}YP?7Gf8-u6&5C$ru<$J.h=kF}80rQ4IzX@wm7N)Pov+/QS]badE.}~5 (j0 aj&G&(X05AJFWOoب;^K!Xƒn$$K4Uէܭ1KOg,@8Dx|yjDFs3OCfp[ < i;@/g q\8^,y 㿯dG#jgL4 khCHob"<e{X'Ȏc*IKy6g}CUʞUl32rE<+ZlL/t)Z&P9ie~+5w Awt8p ZHb,;f_4E_y )&r)f{1W? eQuL7IAf+2`ʪ{:ȥT:6R?m #x+Bѣ%>[,CaG:p!<iSm%hPmS]zւ}}sw2IPD_gy;$5Ye ICӥjO,v[,Wl=Ѭ8GZ(lżDUAL<Бhd#L* D$n68^(a +L+9hwpL{M6;gB;%,M?t&éftF_, [z:|"6LZ%D܋BLDLg6ow-_*Ijߚ/e/nQr4sG8,߸;;jEqHxs2FiVOa%\Ǽ';^HŽLlؾ.8#s0ϙz{-'z76rg.k=g+_bFFcB:.Kh͉c>V&mݒ0ASWU0,-"f#XնK[;z#Na'~ aP #TvS#Z?ZFHld+n!j51'}%62l\iq8h,W,FmU..''=X!MND瞤J8\.$ VKJPJy*<̎sYȠ.&=KP;OӪwf;ş o.# g`l& ֱPg%dϥs'95񿬁%/yf"x>jmHv)/Z>k7_x[43g?v}{\7e,Dٞw~X!:SD-"4-I; {WiD?MqNe=%޷NMA9U=8#cN3h fbd6n cvW(NpyD|ƣ u*2' u1LHOt@"e#V<|SjM+0?V|~ If?:$n~mnp?v: 8gŲؤpdp HSm񚓷숞6BF7!9VHl~M*H #HąV9߀UhlN @qL+,)+M)+TSz@>>W뛾AlZRkZ>u pGc]N]A*0&֊y26x '@ 9l֏eCWVMx,QYX5|>$|%Y?! //Q_~n[/2~AcŲ8# {R_4G9pt3*Pa0u @W UIwRPO9&I8T 9kA7F0 B zK`KtK$39&F99 ӧHlnջ#E? } 'zE77-WĊH>H4V2d+`hE@#!5KYZ9cz޽]/]U/;b`)$8Y<&HB;ϢwGpXP.)1OEy[L3/'Pی P0\($Cd4 ׏PO{@](3<pyq/F*^6G"ېnZiC"V+Rix癮82}kۆS4~.!qsX~OceU ;F˺&EĦwbCfZXH'%C`CD+ w]rܜ\A_0Wɋ8xb48}ٖ'ΞOa4 1ou\K!6P/υ`]y k*_z(] oƁuF}yV#\ /9 { &9 ؠDCۧ)gSyVpmS:ttwV ^yqhL-H Ԗew.8M-9tz{]1L޲Ǿ5UhQ"%O;Sfpy{LӘtĐUCQd*h-`,83"$0%V W=a9O / ;.Qřw`G'$R٤whԼ{үHU^Lo!*~zyǺTB5Hk LM 944" yмWp+:LzO).B BEUcwBd^";[} m x!őǚأ4nD߲ȸý GFeE޿yͼu:~.䥜]+͎bG_a ]?KyD]鸹-*QK> **LC^l[5ã2[#W'}5?^nT?sJd((xE?4,h?DoQ0iF,Lʎo㪃keIf]Fj%[$x.=S0-=}?^aE8>Sa>mRP7JP"_>U?Wʙ8;dk$|:^`Q __M8YwWy6&U]LȠk&wnHi¯2*[ryQG-lo3MKئť8tR# w•iUJ?.SXv.)&rY$LKIf-Z8f/|3U'@"dL&oHRutɶ8W _?klfjSJyцae8,c.s{Bw^RU\חH wdF&t=; }EKUDΜ_^޲ k4;AOb_cPdt)Z!DSj W {P둘:`?mnC;&R>I~ );%w`G^,(ߘv}m=?8հw2{1=ԄV_p?K{\k)q`.")8Gx6W|0 ۄTi "Jv٤⹩sD.߅f[fnT..^0BK凜)oR_X8W]y RH|!=L EaxEZxfW,c@y}nl9=[4c0s:XWBTE'm2U̴>3Q@F*L5/!;jAqUDDo9`QklԐU+YxJoPx.NeVHl+B 4#OCMdpۯA?SEbJԽwhtu)h0y󽶸R5` K74J+!s6K"R2SvS70PO,M?{gjspX#prש_;3ٝ44??7W<3c bѺh(, C֓ጎ'Ʌ9N{ˀb0%OWnu~3h<: +h Hkp.%f`=#yV6 YE֕: A]Co%ѓ995Q-`tŜ"cG.WԷƏ\dp_,m䂼U͙\NkWrw1_36Ck<DBdU#{,N/k4!uy[n[Qe&ц$cq"aUaL}pI8n1,}i m ]'9HU%Z<+I%}Xr l˳ZNeh qcsЄ_!?sQ`tW҆So6WضOMtZǙT2ųA&?NȾ%W^ noК?%FUzskN̔$ELxX 6)Vte"O/eN#L}9$j E .yFs:ߚ ~~KA o'`5nj(i >w҈$_}g_6dզP3rUߘ :OR~tsY SMѼ#/FDKNXL@yuA S*@˛GPE1^tJL,YRdHu A?X3x?Ĉ)cЪK@c!_~8cP=}g*n/Х#$l*LgRA ,)WrRu߈G#o@xcO 3 ODRٖmR?gՂ̱Lh)z S߭e2t^ݼYXNCY Y>uQQrܴyq^_ֺnp*=@լ{UR[KdkF$7V|F{$[2Lp=NP<0d|/ȼ+A?«c!.pw._Q6Rt;>kl=f%GUu|X}):Sf9* !%;/Rs^ QJ5 ,džfXQ0/d[ d_!LLlj+~6XJ%Y*r&<&C.D77Z`k2֢/y 6l =|ӚY.+%+Gc=R?h 9 Rh_ZE~H(TH"8VGM,읱OVukNnh7Q{qSKIx``E6vqB7ge+Q5Q4W8([yo 94Cq?#erCC 8AZv9= AFHz=%|]R`N5!d{.^t//DWL(ZOG0&1* vd^l A"wEB}O1^زj\;-hey}ƞ:@ :G#yB=> X7~=C{qPg}?&EqJ򣞣[cq{q-VE^ |e. KTta#mAl3"IYagՉl*s4)dxqX3 ȇV3uNrǩ%MZqݜ}EA:<ifJUk 4j>ƦC,83* Th^S;J Sݦ|TLOCf4\Lw<$;8Bc<z+%y.p$`1=NDոp(=Y:I 7ꤢLD*-1:/{B<hOD!HR{d_GN+nأ27B;-M *]JCNL *FkHκRVn哲 ^A3-G܍}G!n;xeNXe2D:1%b2 F~K 1-w@oV\༘  jS}8)icJpyB[R|{> ).AeZS`=h5mg~'sƞb `BQX嚲08{ԳAPW!yQ(wxʆPD>olǘxViH{݁qk#F+Z`10~-ݧ։@|i1Ohf&9u{Ы8$US:fOkm^ٝF6gu]yWc ȞVk+:mJDoS?+shMGw^CC!ya+T)8ӎɄpk_Z {E]gfd 齤 þ#"؍%{/͓0jzE,}/)$ءߦDVTSXLOQqG 3ڌEK26>|gHn!0վ7$O*ؕF:P)(cŚ_h!#设gt/ħ>4n%.G@hߖ ~8אTϵ_>xUPL3,ID}t;]b&]R63lگ~*7_օ8:;f֗6|VԚi2Pd |nMh2%j8 'PuqE&a]S'V_cL PϥOAmœkF/WC{I*p\0{t8 in0K mq[,"_NRv2AjiL1ʟd4s TRurT%ދ9-|?#e?tĎV+.⋼^r>SJfhd r ť赝y'vaqfZϪ+2\ /X6pত1%Kû¬D` \*FUO0(R'"/{ t=`A@3J8ā P`H͈C`Qq#H4:祿u@YSͣd_Y˸{e$De@"[ Z [4 /B:vmDZ Evs%Ǡ{uaՊ̋Xq^T2mGiuX1hC*9Wv!! T־S3PZEzB?;upyh6BF (Bw.IFA9XWZ$y P*2q~2W{`&.5݈Z3̈́dN T3s ]h{b;*RX>fv[GۓJ wOfo@齂xM*©wSnZ&y^[5i0[ 7&M8E]jx(T3Z,Y봋Nst3&i0zAgKj#2,X6Ot<"  Y7aF'A9o3ů~'!Љ|ӭQ&/1l tZ\8oZj?,d0'V7OBs ˶4^y!F/\e{aZl4${Wu T9NYtPY hl÷^()+f"BAj.a):p+X"[ҀzDưN88l60DO<~:2^PX E%gdxL>)ip]p!ZIk̛ܽ%31juCEj{0=|\n  wX'#>?\#Z>j&eܿκ즭3G.\#K6Chd$,"!>ȁ#C~'RZ&_ܼacnS0p%uw~iQ];=H0,]s;ijdJ҈Z6G[?ub,Mk<_j驺kL :J1L 5;7Z<(Ihn?P$w5@ o~U<2 @d U}O#,8:ʍ,- e 0I1.LRhqV()pG]~\/xbLڑD1.wy_L,pǫ|żXk-WԩN}]])}5Jkx2¥$߶%1dyW0ڗ4g - /ٞ>!`dnlOJvaI}^g O߂:FJI^SݲDY92;bl#\ 9J6<܊$TN`6жfA x\AޅeVIn5sa(cg (, 'U-J-@#Р!*si6QXDe+3s24+?n 6%Et˗)jq'xӻA )Q7"z)yR-2E녩,W % S[> $JwQMR>=7R \p3w /ŕ{#hRBx] !SV$`f͹P0DQ=s)<jܡ8 : 穓!Xk9Da{B 쪉C PXͳA޿l»!9m%z, "CZ)< :mbM7m>vD QR~f2aᝧ$hrW\A] >U3:ă.7?:q4TF$Bﺼ}Yߘ:7t@\Hqp[LeTHL݌Yǂ\W<|PG4 1{2}xv)$ ׶vpw6[pHo+ԆFlfq.VD CF=>x~&6!7(j-mu$>IXc_T*u8XW;얓7{`-Aarw*&D+ف]sb´:v)ٰ>3FW7-%v_Q&s"'l~J*<Nu&t$ !;fmyugM/GI֮!_ݨ#߯ JɄI\}We9L:fs箄M"ŨsOZB[*#7ι䡸kH>I]%3^8xỄ hLJ˚ɽ<#R<27{᜘l}NeXR /iF&RYgTfe$`^æ08UWJb@jW.ڡQP %Ɖfp[#o"ipT_&nQ˧mr=f8ǔyŰxN/F`RN.Z88_S=l͌GnIG×(XĈygN8ݢj 9=w󓰬7+^([q~2 P?_,ShV4Іd%Ne& 3*<2n7wQ[և+ԯȢm` ~#pqXFiqhHvzI3d= (NjY:)uK&ssh&(<5hrf~Ʊ24 *O.j |u4F ziq)upEP}K@&ğB{+rY c<- sK@e\.xgY;ׄjneE:  <Ы|I#7Uއ2#( [Y[ȉʔ{@ߌIGF1SΥ)"$lF`@'xP S8u:Ԅi:Ku]B3|R5te t`ؓטoMa1'*/2^HG2]kmlocS{Wp5IErs7}Y%פ&vO8_*YuZGX==ny?jJ>jD.wNӝ }xAQ[Sa sU'`U"V*Ź0)tx1I:,G,kb),|_~LTMOqW@2 9!U dz3rh p ʒy_ϓF¹63Jk;ڣ3 -tsDqK3@INS*u&E.aUV;|CbD: / `7L3u Vqifג%%ٚ7 nQt& lde!1x쪥Δ:I^]QW]3_E&U$8̣C6TusvPب5}C~ŭpMr/ M>3yvC|ks7;iBMb2}G ygŃ+͸_I/>'!Kp O eW  /v1?k h7[tYHlNHk7?J<h=D#DP@8Hyoz@]W*HVմ(" 8z_g[PS@&2R殒y0  nVS]70ȫq>X]!ol_0/-$p/Q_VBȘ>'*oE:8g~nش 3b҈o-^hZh$;e f¶>'Uƹ {>UH$7)RA-.\GF /''Su)Zz98@#+6LaGT]y ' ٫~X' =Ʃ] 1-sM1 [$KR',ڛ; wh@zɊhtռ8- V)Qw}r>t?Xض7چ#U_8ӌ"*wi) K8*XUkz"Q 2ē9Lg`@JNNQYTP)@%%ᦲ}u! (g!bn~ЋD9V-E;DZ'zmGXr> ._#ְkv B1=]f[F9|xf;/RcJ_˦`IQ`?9}*fRk/<> l*H^Taeض[~N؁z6ʏO vQd=2t9Y`hJ~7 pߏ$ /H*M+p]q's7ml\qc$|K0jIϊ1edi0!)tGZv:Up=Ned_/69r-tϓs8_@\O|D%[I*'l"]4ҽ6Y;'NW1B|b Od1 ˹ayjV 3+㝸Xb9X{56jQMb3*2bX;/BgB$ݸӻ|A 2(>3j AB\BHjz{hf7WӗdHa3}d%tX<(2X |P꿁V#si2Rdfke8iwA *I $ ^i/ s iaBw Q\tV}իX#Lp2ӿCk'_f΀R&In/jpښ@a[eCWno X_YǕ8*N/m/V39ۖ!gcV-n vAzuŜ?[95:LR]5&LeI9@.dZ|^CE),'Chf7rj20Q$&@{-|.X_Fp*1VWLQwUފ -歽%7t!ro< %k!inaHNFV#lZ3.l7# ?,_8h;;zڃR2!Jfۊ YLg$[6۳HZ` u/jF4ߖٝ,dkvSs%͸ {2ZM>gTд2.aC;1uϲٔ FaJd64OKZjyݟ>J塛_s"sR/S8%K{(5Z)䇊G)X!g[1O89F]L]gx#Ê4ŽHŠ(9(. $6<ж@6.JwG@Q:^DV Xt+[A.0-6*-Ioϔ"p^֪JcWx~^sQg&l>1Bxגơ055[0e+9ּU!$ }J(6 )Qk;Rs2kȇB9U>1X ӹN?.) SP me(|L0{6',Յ_ رbG/41խfGo{m)=U; |6}io':48.UFS@$-$r?#IB64B6iZ!~=*lUUr"+\de5X@1F^•D`Shº|r ʋ?0HhD3P7go YG |)ѩ6-Vy|\kC(",nY?WǷEngh+|nKQ/|hl?ZyhUZ$Q0fmn}F12A}gWSj ۟M'tc9LNF6@u 5@;isXY*=UFjP_9Xpքʾ~睾zN&cL5Z,<_jVc6=<RBںF8o.y=eEԤ*㗡.Dd N1n9|:ݚN295NGp."1I?Do|Z/R4(Dƾ9~ٶ+0Bt|!]]12[`$<1 `RzJwAz GhZ[UηyiDBnW/V>lEsqqZ!jaytƖl8u-J|BWUNA峲 {n[H `~ UKVt0]v L\'b,]6/sHz! $wj2A-^ˉ'DYDgί>W0Yu'SE:S )~9OΪɎ kG?Hbh[- 4PbY7K$*"j{5g$a5)2;RFՉ7QLxYϱQ1;9aԷ!ρ~[sk.ޜFK{lp\腂EƷ$GCdj-g?oW %o 50];(%\BL!r2<zZ&fs[-t@Xbb/izސpkJE7Aw#͓Z||u/HhrfڀEƺ]FMu~cXt,2HdK Xvy C\DWGDKŅ Im'6J%-mP>lq<&AbfOqY+X 7~UپG$h.Ys-#c &+`ܻdO-Ǣ  /P8vBf3{$cف/N`%iz1Cͯ낂PBk8tu-1s\3M*Fe{yr*6{7nT0J́^$9`_YCQ*ouu-MCK&X65ԡ ssNjݎvCoфTǞe!Z;ɟI|!IuQyaK1ن ,BȌAu[e@*Mt/3!?J :.`ixddHK_h@]H?,uXXď >Laeհ_/};膩#0vJtuD*_ӕ!P$,a:N";UUl@c_KuM -[B햠f b.eCCHyUbg% 6.QY]=Yt+ѲKnSGfp(;(lt"֙: }6QEbd_;f4ZwIĕH7xB^^߽#g`( a7%V]e(m7nu^I񲈞Zk5@gL**|U'hܴn\Ğ 'ji^aeH fQ>̡hX;$/:7?=yb{uDN^xFo[$&ԷOMg[ڣLr@|u9M=Tj^է?')=\y+㍏@mF3F)a¼8w|͒4jӞ1\9%ogn/ 3r'hJWͪφzձboEz@ŌG҆= rDϹdfvPi(r[$V&7Pn2n }\$[~v{m} H0-%v,*16K-\1pq W1\.C0Bތf"~uλ!USj5QqKu7pRU+֯" P )iHۋÛiQ8B;hG Ϥ~s (.O#{ϡ~QMW'7_a_KdkTaLI+<p>F=:>R28tOL?UWDCZӑęQp}d^CWcBKXݚQ!/dq*GǁOp:'* bᏩ˖JU#.i JazS *w@;.n7ȠtC`08{ӉL, qY`(w5qfB|w4'Rg=mQ'/|ֈYLs:g鵍m>/YaGd|rj8`uD- Vs2 +FFoG.#+V>qkYs3v*{2f=&.bU&t}/nSE@Hp< _ܲ?".ENOEmiDI}'e"$(B7Lq|~fVeX5sD8.π?ͪLr^`/y؞0m hˊ3WB( ^w52C&J)ݍXD+%”SCoT̠$w|`uMuL1߀Jz`Bb2`[I|Kq:SP%dYD%QxPW OƄB`n xX@R59R;zvLA<Ш> =)C픕:^gQKEElPb)g|D`}T-ޔ\5F>igLA.A-Ual[ȫQzOl~JR%uqwVT_g4T%V܃ 8tt%Oᯝf¤j~} U%ͼ s$/4}'gjlJyRFccvZ},*φ) Q#QbՊ :6qƊZEJK^> nl,q&kj䇏<ʓc ^As~G,kO gF\) ү{!&oU+,S1Y_Djz~Q 0d@NxК,J5=jWS5 /*_B羰3sy`[w% nbtRyT%V4n=sS;ã2(OK tn+#S !) _MW6w#侐z;v7-n6|qcU6 GE!1 vĶ_Y=JoXgKA/΃jgT4II+#:*U x sM܆PԿJť6 ) Y_w/\+MhJD Pͭ:AQF|QE7Tb8٘0( B0`Ӄ9zxյ2iܼK?aw]_bd۵$Z{iB;>E8y\X /},KPFߍjVHvbJB5J\UF}%!<QwվTTZdcMђ.t <~7曎Qø rb{$~2 * Q[ը*~nuM0PSadblJ~tL.c-Tvߏ R͡}yJb[`9z"ՐBà{` (x1Zy'!X§EoZ @!"UxMs󂟔93E"[. :S"NřԀe_DGwuϺ7Q&t)5+{uK>a]+Iv<ދjdeC 'KcCP` clחyD@=nԷSVKu- {]D4fl6sL)a{,w &r7A ^Y'0'AՆRcyժ8O88gmq'2c 5Ftrr{w\:ض:+$S;b#Jd$uNonq?WoۥW<*U1ap%nQ˕"Y_ZoɲCv`߽}Wޭn =Q)YH tWeEZH9zjQH^h ܮzUA.3Pmڳ)׹ {\flە'Y؈}K݉ozm`{nU:_E+8++Y:| sd&^S454Z JZCp*@_|Zor«B5F.{i ANV!Oʅ>!ĉc}4ǢApH%ne:nmvN@#>3+WW&A0.8G#ek]OGU\K:#ロUKR#%4*$B*XJIsǺthodkּN_4FkjM%l+]}R԰izyGXꓽi ,NZ7ā{x3޶g[.*PU#q<ǖ`"[޵/J˹M ^*@ +PWĝ1W{F0-RטOm=鍯iq'P.;8O+2Mn;,yRw<%ĘZsq8SǶ3q'd~n&R"~z5'&q)#Dho;z&fvCO7_b97EzAW//i2:*e2K9>m&G3|$ 8Ff7Y5SXKg;,5籮)фLM2yÊI}6(_*%;+/knc )O.{?{bgCq;gkBo5׆Pd> TiFX&+|!vF濲;f@f4lAs, ފ+&$gw7vm|.F6K%PB## i3: pBeוB!MO2<_&^(?dfgvȞ'~.gU{P Y>|1 TFA .,GO3{UK`͋?u^2`hLр SU=k$#N*Hl 5IJ.Aٝi$[&)%gcذ]v T n7rRFoξL.5JMgh:HEqUF1CNt,5lo7 "L@ %YH, _ yu,wZTQqI`编2&}spRQ sOTN]=3FZ#,EM6e(.~12]._ 1Pީ(]+$uOO=p"v?Jr^H iypìG(1I !FG~3=|HRWf iO!ng_n xiP6Ht,͕%nbueZ;C,g?%"h>Ϣ o\1ι9i޲σGjk6|oP_eeC&%phBDb5De\.H9M2 ƚa I_P H ǁ7&_"AO}kЇ6nbs5V| [<`I#r-JZqi |9JBaW ).W=yXdVxҶ(}Kɼ VofVo1 Y}@J9XhXs|5}CL'_(-1 R nFYfVRy>5eOOg;".a!/*Q,F}mKnKGRG|ck[ Yn X3\rVUө~cjd_-kUEX :ܘ6)YZme#iDq!lb}qÏ_w9%` j I ?h:|4xFE|Ê*i:9aË&X+i*"zPlkr9Qi9|4(Sx6+|'#(<žMclefd:qtpY _ѐ3fJ#)qי]" K Jˑ9Կu`w^ No`H\E#9ϕ9ۓeM^6(_Xʰil?c֗1pQ~d^_=Vy{PĂa*F:"BkwXca070+ #J0n7{dR<Au͘+V\m/!z ILk0PRzzE{3Lm1L:gm~&s0{8}P``$VA-ͨh% yNTIPtamKC㯱C-aJƩGMdFJq!_&ҼZbHvU᪈N)!Y$p?zNBYO-d4(X vյO/YIqBOYfx{2Ֆ*܏o~$-ioO">=]*UHp@sjz*O1<\\Ic*ZF& L &B]TkQfmVy ͋{z*oyXeYVhI̋ZPN0{VKs$yoytHcϗMz=B~JmoJzgUDs ƆzVtt*sk_9C.uC{dxt-)F+m\ׇ'v`0:ĶshP^1~(yS/ snQ&uu V>tBANٺ52X.8]+U΃Mʟ!)5p~PJִ6М7ggۯMO*w+$hNx&/7W2ǨȺ)w-oT2ӽgSm,TئnenMލQO9NU\OMM!Θ^ O"oIx)ۡ$TUQi/ 5A ܟQ8`,\vxJxzLk23={pd͈-3\zV[cq)< }'{ 6@+}3'6HWq"cě1F^ v|!lN2@1kIɲg2F:<6jY~3[rhnK.k4u gG~ KGSڟh 4 C87Xpފ\1_~4yCx@Mw7`ly^9`-۴!6iH&c1 93E"x|aq!IebgFZTU=۸7g=|4[$S_q7 #!R(zȠoV鷯tR&b=ݳ ALK=vq(Vą0q>WV+i+>VxNwWٴ+~^%6QA{aEfqyho-խh5kFDׇt$ޚP}$:"'!ņt[>U1}ޮ|wIa?'ϷE?^`*™ S'&f ;6?n9"FҒ"wFd>^π!,<:.+F%/1>[2uc1 xjEb#[2{ъ0*9t粿µrZv3=r)@/b$mV { \Dd:OL:%O$$RFmZG'٥ll"6]ǃWM6E;}ňr uC_@}jQT v(bǴo-p V!9+S]r{0S%8b6pb!jiD+B@z#ABea0SB ]]MxTHEJ[ ~s \JU1?a<]ܮA?QW4I]e?#W|2gZBp,< cԟ+ DI]EƩY`;{%gBUR d` b9C5˷\)X5Z<BH0d+B lT:.*X=V`Y׈Vat ٳ+t<-=< 8]"e}]eRfƇhܼ>հxnUYA7ۦ\^I i%wa:8ØKz?;L0m]F~Jf | bOR+9tV6+1Ye5DF%1ϋ͙ass `,qJ}9vK `l~x()\Bv!~'I|dAX%8Go sT1VrP|TOސýA(kٌܔ#\$}: 8a48`1lW!YƿBD/x.eTYeb$9"Sb(6V2Dl/J'oXj ň20OO(s+ER=O=8>i?X=!4"m0 #=fD{!jљnܗ`\~WŦypsy/!S{ lmcM9T4_EЂS>jpZI +*Ⱦ=9EM_kP-J5C?oJt,F#j_!&YzFG"})# 䱎yvKnp/߸ y)тxIwKt[p䩘PKe9cT7L,Qau)+U5eR$el'egwנGe|’{awב.];[Y5]Oj9Ic'ln>oAIIeKKd^%7+3.Gdʎ[MǷ51nCk5\MѺ(*q3.J {W3A6}9) 01é&<" vޙev:'ձ*!u&i@h;وz&ގdgq"+~>2ϚOkht;fTSC$.̉mXƇo&r!L@PʯAJKe$̘_.]iK~( +Bh2#h ~Odc5-ai=lR*x#3Ah7l6KGxj]3="|5@Sa_&I 6t燠ҕar%+KB |O! BHNrېyNz7ړ¡V(Gl9#U8ԿDXgtkTc-YN'dvCR{B ~sͥH^ {0ŭN) N7O{9xF*(gޔ+}?ϴ@^L띍qRktF~ Ћȡ}+#V29q(/j8+iOذZ'] ުy4f E^?xj*L.S}Ҧ,tWC)D ~_f%"yb*=Ķ fk`T-,vHDpo93池 X6G͝}z$_ro—_`M4R0#QU|Z㜙"RbymӺ$}(%vE _RH ޜe pBG^u77(5K!ݗ"Q:w!I ^y WZSbMM;Uyq%)Dc. 2FNAY|}Kgd[/B FV΢"&BB Ֆ\jk2 :}:*"7]W0bW#:j aG5X.88-TU>PR7h, sow%4ℲNf_A& O Y{>pl#\%I1vP Η(FǝK4_;h[.Nb.xw!:Ec&L?*Rl{Y;ã)aU9&1z6IS|o6r?T7P7/^Aְn>˿Z`L:wiGbEGH@Qd6+BZ lI޽`fȞ-D(Yלp[6A'e$-8G[{bI:cV-[]feI~"6!ڧfǛ`pRKl9|S|Ww5YjV-T/z~@˦k~e%W&[OnmHsfvPf#Я o,axB?j'Nm\|c*LJslo]2wBs(`xwuEDőQ0̿RvZ7╕=1XB SجFI81 A2VvSn_PAҹzROj@=D Gz~r=^S_(axnn&6'b-kHM$6E,ޘ15=5mc Ͱe@dkzAZBXYhTR9FD>6`vCֹ_q*89XZ#>(v2WT-"~;}%^b_ KkGCK<0mRAXYJ)$q`_W:4sIYo^g^ƂyU ]sf =##o`1[W(Ne!֋jNߴݬ,H6kjxKrp[2% B&.4+ش* D748:,<ʉVdHp'Dt=VhI~]PxI*Q)" (IH;Y¼1]wqͧtH,ľ")rLbYKD|/342 ‹C3H*TKYd={ޓ&׺ݺNj9$ U0 @5 K: =;%'?m圮8g1;ϝ\|y@8tJ;$"ME9{"iMր9Rw1xTmoKldq)"v7>lkxsV|Y.9S-]ody5VDz{]"lj4//y:NeS'E)z^1G7ȕ+װ#ٙd uM6aG&B-h3~x6݀DqR zCMF掞j]hz]UzVddf & 8~YISs*GlVpPz=fMoH1!t;E`bX.>qvgQ+=>Fp h4Mہ@ݔT:)ah'3I"㛱lKF ՐdmdŮ&:tpv$ѽ-;VEnߍ]N; -y{%h>>?ngUO Rh?[r 3%xN3~h-nQ,:OxHNB *8 a&CͨVg2B&F$0 Li_n ~ N?A#*(<elβ[ߗ6;I^(WwnFN.Ӭ#a˝ ^k2IG-&u)r3aX=,@U EǴO_ Wȉ`٩MޣcaĔGo &7wn",n) gSϺR[_;&q -yUƊ[y7O| TiήV>y7a,ǀh(<ѽÂ3u^{CTUKToN?NRVObHnQ`ˀx_cբDY!0K~iq\n~‘Rjj; (=,u,n!I&:`=k4 DNJ(P:[6#]1jս.7n :31Yp=ˡR!5(/2!A N*b&SΊ͝qGhOj86INV5D[({\2`d™vsC\;j)_̤AUu Kl߽d;C>NwrpK[M.i4-] ]K5Yq|êcϠtAv&~g4v$kV3{E?/EbY~y~t?U@ !w%܊_p^;`RY=A0XceFB7&)%1'o_'p_?(YxSwn ^@lp!ë0WN1Y'cYKa]0(XQMR rKk/aY,mS÷+ ùquR_`Uh"͟?^A<,`PJؚI@9{S"cN@,@("mʸ%DT[LS#%6Ulx~t&tX(RB `Q1ɫًlwgr' %R\;”}-py)7oeagg[h :֊8TI~?\ |,F,$6+"9Rd]MB-y n8V'zPwsԜ,#οOxZ% ^NWJ ;!'~=BzěԦCt;-̳8U@N ]8:-[ӖPo>BfܥjFat!Št^5]r98 eԬYcTڻZ=b">̆ [#q=B* Iq:^ybj׮Hq4o7 {(E7>y9jSeEӭ,vqK{| "^cFHΊ:@;TU o7b؞ Q̊ Jؗ S.> ={N'WSԖyLHF|֎@l. 9^z2 9ݒ| Vp) D$98]Bn%VZPr #+a;IHQ]gD5lB1bm4}fkL$\I-Upjšu'̡6pQiAs1]vGE%ˉ2f Zr1bdvV,{CnI_$CS|>0\԰B$̸8F&YFw7'Ȳ{. ÇXJV76.ޕ;\f{ol8R_R=;/ʦ kwV;-c>PJ6J5^ 5& @_(0О{rN{N%gGnX$+ Ƿdr%ĭYr&8|//rɏ<Vz 2:a]xcRmץM:d:ܢ( 9.`B[Ӌyq3Q$~ syqN~%?tjJ h3΍SН\Eu܉w<>hS.ι tV}#PNӪ*e$SAi ddُ1@YbTPueQ@g:pv/N/1M믢O Ӄq!?5SS7qƦ&"I.D yxxb9"hvDP*G/pcʀ3AH6$Rijk.rnH@&ROP ܔ]z}YQ!T_guxٺ5x~HaO1@?oǘUW r[-iƧ#؏o$!]`ۗ?@RҷBMV[Wiv^!^aBTSzEt" +&PAcܪ7g:Sp&k4AFN6=#3GW8cQdxE`mGJoO}َ`1L{8z[UIZ/!f㧖4C!Dh|7SQ\v4I8-Mke8vJKU?KtWF.18@H97[ Ze̶/w3uk |F;ѯL2rı˯%MU6rOQ3c;0'RR:4WAv $qT*3H->.qnwV!?8Óv [  vK=e߹@foE rMkYoz uEwDEC?Eo&DX1"s&6)khZ}4ҍcې[;R}r.zqHhr9w< ҂f-Xb0Ga-_Ka>p̌ M%Iw`JӮfNxqA uoY{i.k{po7QZ+,(ڎc 13ۋ](_rtSZE֢7["FJ*58XU+N%ۻMcH 6vjHDZkv*rp?W'ݵb NU*zAY8,=T-\,v>#*?/muZiY"˒s#'^Nc*@v\Hh)u[g6F~'=vKOm C'BG8wxs,6kC^y5ǗDd5ARH%T+:G )Rm]Z֪;ܟHi40f֢T^O !3 V&`HMthۆS44)aʼnN눸9iV;Ȩ&S_Թwlv"2*ILKݿ$>d.{RL8kXYk(80sUߠ* CGV<?"a؁ hN;#q^iVaʼnƥ X*(Qsd)vMی=T1EJ i@viGIW6< <|ߦ^vo 6cw"$Gb޺@Aq&?fPHFdh*x.fp+B5 +vb !!jAc՟9HjihZսL[egC9%07_S8`獻k $37nFAInHbJ[f{u?ӹCb6j), rG9ɳi(pvU[!Þ*QTpn~\|ŀt7(z{=| Y% R@V^zD*1CAPECY_|| ]u6S4C!PrWw:(t"+[?Ozh -12Oң@qL}|U7j}ިb[1֠\#lY z@G3a; j^QOF%xfwִ[^ɍ4vGR`t]W '_g4hoЮ5 yh( Z*o(TEQt";ۀT[W;3Iߥb~<6t !ȑBc.#JBZ#zAI~U{Qô^/&/ܶO(n|Q=Sϝ_m3Gv\ 9#%8շ/ .od:IWǓq1{>Zf%; 1lQ`a #kZ j2I ZDn83&;EYf7FyiIdTfgDMRS؟#d1-1u |ɒFJBw/`M]ϊl#5 8 PWخpٹ?WfkOL#kŰOr|RcxDzVb,gmAYlJ+5ru]|pAk%?ҙ*2OrgLt~4Lc~3 9VӜgY1"{fQ}y:o~$&N '$釜e1GwMl츛szD2DE*ߏ*OJȒӵξ5:jCkаB~X(KaIn܃/a {;M`:-z*?֚+A*VT[CkHĺig.!rG?c1]-GGMZGB7|Z&r*,:nAh8-Tp xId3]%g'hB,`ǘXޑk{wyQ8M+jw)je Ŋab\6zb|t[VK]?=ۢ>N:uJ$n.^1R$Νi #݃ G~p4 C¤bg QRwE+9 nu0~5LBJInz܋JI])cXdy s1&ؠ-D4գ2h#Kh!xH;u%vx/"D,U['Q4 :1§b ύ.o/e~7a5<=逖jgMq>L}z- ù:2=3lEEEoh45%\~d>>r%,7}M_ Dv?Hƙs0Pur#d'Fv~LywHc@$Pm|s3} SK$l^3^hjpȩ z9WU{@״2MU?Eɪߤ?[؈ WxQpݎ3o{[{bWHCf.KVU`6n+[A>VIDGۑԲc2ȖRվ#w\'E!a &k#;DDZD0%QTe+wz˕+|W"oɱIq5]l/>$PrDʢh/e.TBD(Eׂ!w9#t /f3e"WuhZA5)q穿ѩ& 3[6>ҩ-Wqp0 L߯!EurJ@ ݲAM@OdYŸ y+y+x$(8m:0ds0wΰw_޵-eͅ?}ʹkp61hL \toP[\tV})j2Z;)ܴvơ֪hZQ+Ycg!o>ۦ: 2ZWlҪfke2hW)bk,tygjbo=+_S#+O 3}/oTx`l9 I0|9UC-nt(j6nVgiKi;L5fg[6=Vp{!pV9 w++`Jc J7;"FE*F!4&-8y1?l@޵$/e*EOq\ѼÉNƄ#u v^> jvLC9<ν? ֪?菈B|C>tNm {h3&d }ǸeJVgѼihy[[:ءsg62qtWvUƳ8'ݦQI#=$z/ ;˅20335LJVf).I)} H4F0z[ af/ 23}-j;@ULv|B|HuWUr\8iח "$ ;nRAmK<=/eab= qCy Gy X4.H=8EVW/%  Bav &\35T^,_)dTGQ=8L3J3!A h?=R|zdn\`_~c]UۖBXʹmKu+" :xp8NZՒC#apjbGhj\\Mn.l]MZz12D$ˉ+83 jN˪h qhXSK?1,[S6OZV9UCb')zB\wnPrP2wPX bJb-<=[ _߃Ǣ* ^>n"&JiTb-N;iA*TfR`![ޥxY+ 6"gm;D~m'4=Dwu 0N“(\\ɡ _r#mR<CQlA%Jeqc漙"*-jc RM"ߕ^XītTl6H{~ɴ3~2 Zťe˥r(:ٻTK vp3+"74\LWj )JIp%ŚQi>[/8[χƫZ+-)A0mq1L4,7~" q_,I/yﯬ-Y4q) 'MRQ^xܔ-ZѲpۼ) Q|zx߀ zizt$u3"b068]⢂0w7}e"4n.Ҙ0+tޓZ/Ll u^Ā>Fï׍p{Upp8 %2^=A-t4TPF<$~er[[WݵB4Ċ#O+Xˣ*f 4g)F%.z:w ĐI<;J^-AK^[J"9Ͼ?_LumV)~:l_ uQc3EK}*3Z]>7tr vK6 [< 7+=JwhZTbHlMј/l?W=ӟ2zo| Iɗ_~!`2c9s5 -Q vbзNz/q>BВkp3|4)u-NEx݈\PHP^x-p8GinαofpBCnaB|Q nGrݑY4j+w ~!ڑ4y RggԵl{Z^B!m#=YZX؟,_;r 4tR/ljfA,&-zaFvl㹫̶4eUP,_ "ԑXNr/sdE4ZDx4ˍ?4ҕ;QO GU~o`N!FZ7j'hγՁ:HaU1=|-5 ?3=Mvݬf3ۣ>GGsJDg\qzHfplCTG]vN_mGx|jRˌJ}p((9HӟV]}cEMB\Q1e|")]Q,cŞV6w2q1csoB\yMiEeص'Bk 3ǀy;`=]:/4&Ñ.G.KE ~E vZ1FV~g:k>lk2ya"A&NpO%52ݔ8j3dɨwSx#X_aC+ToBIS/6m"`sG"xO>g!EZYɵ)yHtN(/ec,|Ы*6KVuBf{#xj*ht:r? Tzc$m/ ,l]` 34dSX~%8؀wt" .%SݲS1bcɴ b4tݪx@:d֛h)^ugA(Z19[PE 'q5Ƥ`GpߤHƨS- ֔JyNAPQt+˫Ee3 i 1%h#vÆu R~X0})9!~2 |31e6mCa9;A@t{tղuBVMx`QkUR޾cc4L\S a$X>uar8(aG70.] گ_i_WBW8<|aӁaTv(C=ci톈9' j|tvX H#U ~Ъ ?~FunB'ћ᷌(O`A|E֜0si=2tqZhЁpj.Od$fnK3#1q2_wՓ #'](PܲEyc7͌EmoCH7`ŽLZE%EDC5;l޷3ߊYY~?FԸvmuy6,^y>Ʀmc :*$1ʭp!_7%N8B(N<0SˢRFo8c}%?yV ;Fßj0^^@McĘBK/Pr >" ^I咣hqr'3ib{PpwC-Tn:kxOuz5ZNJNbX2y9 aV ?,6oǑO,ggv / q/vc'f1-dYȕ9[\ ;f&'<}֯Ht}5*%x*\Ks͉KnX[;FV6|[scÓ⻮2#{(Oe K{qy.b}_X0.?ڏ Ǜ_Nrm.>eGAX{^\-̕ b{Hr\{A+j5 3 nܓaU"dmzoS>JhM̷%a=.p{};Ŏ+ %A6 I*c;L;0&.4YIy,IR %p ql4\j\{\t-P 5a5E:~'XnUp&Qk)2 >"7f NZy7BQj&қRGpCh}6~4mNBÍvHw£]ΔrH;pQ`'x 㔈ރ4Tn٪}w~@1cm>0{L:0忧V}.#Ǣd/c 6uzlUKd0w(BDBcfl%zS Җ<~(s?;&2{ZbZҾGa,`0O-f;ByĚ5h @35 b sCS'J(eyMmlZrecT!j8\U]|"Ơ~ƒT]*p"iqY 3QԺ\` @wg&MjegU НPy\)qfJBmLedKN*6Uھ&17 R`33F(CwBiޅ wJðZAqJG NRm*O) tYdΙqYM&?21Y~<}C=8-ȸa#X[Ng}h社 d L"״6H7 yk?o.;a"\p*1.{0/ƃ *ܺwq'vHWٞqjeD@ҦӦ#狚6͉XK5U䱘hy;SJ%m8A3 N1 9$}22郥0k賆>KNS. rL!') `^).i=۩'?SJ T$?l_*' / ˣ HQ+x^򬁶bZ>gUdE"b/Xj@j:Q:fH$xI^?P6[i6O]Ml Z̓KM?Ȁ.o-'TշA7%8 "Ł-mZaf#0Ok$bNyOi89}e-'WBȽ}JQf@$HꙬ dS\6gOJOȲ͒:狔lpU3ri sл̀oJS+*9lI>(ֳ`\Z}聆ZI_%3lkрgP;9ten!g4^bpYC%zǗ5nrm h#X&uקeaMo(m`JfWMUCBvҷ֞N6w:lh AZĬQL c8 dZq[*闽'R.C+/܋ lTAw=;%rxY.H;itG)ukÕ( ;L Z$dC%JRG"t>C%i79ըFK3 lzT{׆ %pH|33WbK4ݖ4N/)ffW̢8$BkpGրqW[| G!b).fG"uaՕ/uʀ? $ovB k\Q`Yw_.|RྊL~2 #XA16a6i6JI$JЧ6+&&X/-fQ$^Nw:4ӞHXvM =_}$ZBK'cFGÔaހHKvlz I,%"ۛh Ld, T[rfjUƎȵ.eu[LWV i(UevQ .'-)Q4Bg;3qD!k9F$dn!@lꇊ( Г2%d!2HAu!iE3u@(#]?Xؚ~t+sUVčqR"Jyr!RRuN~v}'cUpyOu xLIzb;U"y[1R୆D"Xu+5սXDPM2 2%Ov>7TƧ6`tA!yLnL~(_hU7ч#SZL_nҶEOm|ۆb]uWV3o&cŠK}RkvWy8q /&ۥ%%Ylw5:Jv_xz3 .#2z0 U͆qKrɬQ#t޴{ cIJwŀ,;|7I&}|؞)765JKb篕Gj-p)n᷎;Ld|eOGzbZ0 ʴ朄(v:RmU1` sq($ڀ%$Iׇ=g:PZBCA!>ۋmBw'>E+hN>8' D RA䭈_I܎5As eTx1MzL8xPSLw@Ŋ҂S ,@c }btX({UӢf LWzVs >\qEdɞ:dkzhPG+o<ǾA>Gk{i(Vz$i!pj:η`whF7ԇ UT}1`5pWV-[-f`ē?y7dwZyx.L9P ! qJIGWS< +R,2LoJB_"Bh]·%Sm䬔% mm 6J+&kL)5C@I|E〛:Ө#n>,H淳 p?5HdWwٴz^p.`Ҩ%y>5iՄyÞ# "I]EsC a_[{tI(q ouhJ& <~ro-6kmi`#+j[dSǼն-G/ 0>js<{ y]%VwoxArh`ȄDEd~QV' Q)j84Ēe o%p`A j nj]2]}%+7wNq9cjM+M\cەB,a $ZhPU))lh-OGO^f'3zTlO\JHTcpϚp㬣@9&F0p u*u/dcTݽݔFF$Kv`ͦR8x=&-C7j;5z[{oJ"1(&a;]% ry z7ĖR`g0H[.duK !ft ܡŁ>Xʕ<ۺF>71kYIqu~M4b,ɤu)΀PM Y? 7AAi73Wװý!cӯ3Vhl}`{"d1qjѣ!O>x%,5/GdЦkZ{<<mk@yט$?P MY.clq^ь&  ^pBlNj = ¤RLn,&a9zژZt[ێx)HYNNfM:O> f>a%|g6δ{vSFXGoB`N<\ڄ8n y8!63R&)oyB\0J0ќ _wאFHF Vj\"H6^MHFD 2CBx]D"-xԋB<6b`*?/NSػWmVфk1 v+n⪿s%?VR$OzӴ9+]؏U,¼XOǰH&«6C`K,Mr<(}g=:}w p!pd;6\@j`/+戩@cZO#ߥx%n" /SWÆz= ބ&?; 7r xhgw̧rLmh|=ƒOj<1nAG7s!.!-VWX&#U6ڻ|uhzp b&ԕm\$XBz1E[<* !K%"&ǔ‹R9kWhRKՆ,4#?EK6Օ>Rs>ֽF2rIF8^(R8ou ?2R52+O QOY d_\Jh)m]+.t1gg*~@1gLYdݹHɿvFS;jd DК~U;&~S(f_=P8w#Ec)a"Pw[m/ޥ$ j7$'->Pd?bwIi.UQ ~&#5IY>k𸀶-ǚ@k;C*\B[$Ż)n')8YR ^uFKJqB%I2X>t &1-ًI:yT&D]es^y`kF2$|D`Vܿ*֠ܳશoj_OãZYq7ݏ d u7-R;*H7SEԿH>[!^H\R"$hhɄQ JXmyӈ&`1kMF<-DSSa/goTjAaRln1_l_J.j5mg 5eW8lU ISKDc|~RcjܵyHEUCJ\Y)5H nk;07{ /Hjd8#xoF $ ^3C^^+Pes EL  y7Q v$5q}s\X1l̚^1!9}=Ӷp `=]ݦl-xȵz.nzXP܋TMQ%AFxd{Եܸ?V+S>ƃR?_{!<%ό} ӵKOڪ!5cj:I # Gmc}uXLe+($g?ry-V:Ϊop!W㙍\ QVV$9$u|!\KTj(F!e<%9^C;aMV(]}N|Lvta-: 2k SV6}ֹJ/1&C`ؓt %Ƶ ҭ`(F0m3JO $ liM8:``$F T(Дqޏ1%tA`G69PgWdiV/F;+IyQdѽ;P4MXO1R1$`=t*:͚ӱQv=S6@a,L|_2'QS` PI*W 76 y߱eDʔ:5DdT׫QKW4ɷm@yXαt/NV?nnQL X^/\>qD%Dͬ1b%BV起ɁQuu5⅓0" XZw!)Dt*'.A 1cve:\1e0ZyQ$_i ٳLGՅ#_Z$Ixp'.y<^+E[Z$L`J3n~Y)钜^M>nlsTC:1\oȈgEݜM۫=l?ℎ0rkZ]]DNA%:%74R2s_jKNuM:?dT+uP}cS?GSaI_8D\8Pgt,+\E;EA;=^+7q hU51 dóM(l"*?=vIagZP^1z )4T~F V}6MFFK v0SɏAhZ TzK215B/ 3Ia}(:!?crtmg}(cllcnm1@!Y >fj~y'<]9mFPNo[|a`/ 3&L ~OIG(N^plIXlne@v[IgO*,"s#}4RLx?rsL?ztDʅRR"3a]݋AFaZ8AűWNQq PyF_3w .y},Ӝ_V5%G![t^ 0)C<_DYkf0nϗ,!W*h9$Xꣀ0`3=/Zwif=-vmIŽTGPk|ᩘ, t2嵁@'q/4K_lJs@K(>rr@ܼ݃FKP4lWuDI}9]e# 3}k6E[(Š]UUZY5d0z`єxߓZ.^<@ay%{XHf6}@H )< ,yPZyBQB 0~X~!لak갰%Mjةm?̓=8׊<&5!vrV݇w8f-?~k;ic dᥨvWaW=ֽ3?w1n(p~|ywO6YadAn CKhPP)+e>P N?J^@;+KBMCZQK+FhdKlxIdσ I"Y.´~S ԎD7Rdp6ƗNM8G?NDbUgA>7Zk wk0`M\WS2^9D9>r $,Wydk> 99CIK${pKz=ok* Z;4_KG\sϽ\UʘR.pgR<10^17X ?mG~āBZs"L~s}kƬ0 ggi̚#(#qJژo8+&12VlTf(|>5mA!@h:.=A(K;,)juFOȭurwo*BZR|(,~-m݁iɺIDeNr:6*;Up=a N3ݷ %R;,XĎ2xWjLY@bkju >eǪ"%2]P6Cu*Nj wйAWܑ$o٨O t[iVZ6UIwjBq=MFn#3 {W_iZGHÃbvI( .yq9nge[PߖrOϮPNA>~bfo0 ,G?܆^N21-D r0FW QUv 6JY*,3z^ =%g5g.P;*r  耚̷wL25{{!b?KR}U=+ j۲'RrRvn #'P.ʏ6"4VJ !Pƅ"u\_5cjr, @Ar!sV,a|~4hpuv嗪"5-ez)xoLFZoMuY*jGɄb/?Q~H6 *.Ô*-8&} x Md?j0(4~:2 {[6ޅ)[u߄ff[)ܑ/*s#+zB[[6~C G7= U CO{ǁ D`ȑ:E@ mqvX`i4?t0a*VyV̖M}ow=T(F\'\<˧jrtͤΎj/rZ BSyi^q)b/f[]{,2v8Q)zJsd ED9:Ī;$|WPD)F2"ti?gu]- fYq(6ƙn `8%e$UӇ,w5@^sR2gU|fxaqwԀ*arz|1Q14 *V*8xF̦If[صSGH(Ч/>hVW T,3Mɽhߙ vpikz'$425x 8ud4t?Hh('LM dq_C] TA h1m)AӟkK\k!P$5HH{вbV˽9Yng eg_T?+! bԤ[:Q1 |fʤu67uY'!N Ӟs$ Lf HaT x"b;&VJqRvf`M6?ʑ+M{bkR>3uPLo.fX"8qV"Es1&I-!E2M%HerYh*ߑ[ o5Ko uULd;׭5 "v[#Fl]} 693"I{? CCtH\ct#>*[:#.Vغ@munSES0Բm"~{[8Gvql u҉-9CraF,㼡?KQMR xlv_Ȱ","`S3 IJ]O\_L?^gb:;0 :%%KhAA$(b&J|BkKݪ_1fP:SpErI&!Ye rQ%5ʊ].yץ(ae//UPV)2F 6?*=2ȧj~@z[Ӎ .psۥD?nERL"!GTWяZSWd= X|F υ -u{-#mO,;C !E 9+qr g>U*/7IDDu<'o>~'j|r5֓he=Y^^L| v}rm n=|F_si Veg^yxsgau'ݏ%pͧ?Ŭ#2H۵'1fbI)5)YIV;'^d9JED]rAIJPnز@āmSIlP:uK sdAc8U<ܠml0֔\k'.ez8%)wys0ГTrV)/LfcL͡-؜eӮ 9 ?ؑU" TnC2& ypDy߫{L/ea~n/ؓmh<]Wv:_ +L#?4ZX?׍nٴz@rPN|N^z[0$?4ӕ2)Lk(5}AR]ĮCmn;SV#cxO;S!A>`[ =*ηFUL/^7?.I&ptTatNG{H,%&D.}faGo2ٲ zRK xÌBs |Ca/([˒G Wܮn"H,7ژ9CxKo(Vu֟'Z:0FsbQ/#B-tzs | %?Hr՝A L7/1"--K x*279=SJ\p1.s>_&fzs RF60Wӱ?H @6kG ^tH&$wSRfX=|"ϘQ]uFMz !X@g.OOr{Eܳ 1g<{~2@ J(?-]r m!X䵝4S>Mh85TCGĔ/m>>:1ԛEh6g@c" sINQ}E愰)?8{m0)Lqb>}ZbZ/JD+\VB,)۠gN -tHA9˅w>j{L̮ X~ಟ1]Rt4Q-9n$)m3[/JRLBP,Z?];tځ/ qVI`thS 3a[gI$p%'MW  >#ƍgKm7^k짜^q"^Vĕ8v8'ɞr% tW򾛯rXp ^/Ou.` 2\J{}J <:+Z^+̶Uô(糵_w® blD5@%7+J)Ah5e -Z\\\чpK:A;e4^.-c/r|s&Չf'qGrݹ+U8Pq(ԬRy&rpܗG+2ƙN0Rop*+! eT)ro̴ݶ[ĞxDV9WF|UBݬb.M2-]-Yn`SUdW*) 06oe8g*_{:˥-rpآT21aTB^N9%/)I VcQƐNdec[+'} 'Fp' 1: ¹AnY,߆]\%/NgnM M?pљ_WEAH>o#+K[qĢrhtbjN|CjMES)dC'zĂ*~kn>yHQݦN`#r}M okr=~:R"A~it&ٰ7zuCi4LzFNQt / *xcƟ$x^JT0v#ĭeQ$Q|"Ro.q݆$yh@@܇/Ql9SFbU/*Fbz&.D v쥫5ٸWPp)jBH}^ф A=z`V`t?0 Vz$hA8V/r:"~M[ \`Ҹ>VZ usg!yRZ͛ABqX)X Ӗ9k)毝=1 0kһ""֨ k9R/aӖgY^(Ic+;0%MŧemL"BZz"ܘt4 Fe(n5E zCn9gǭh-5-{`K|NzH1&&L=V0|?a3-]>PKA0+1(+ Ԗ0Ex,if0%)vry-5KB@Ei2lV5p%"\]BH=S:R^P-CYwi"J|C6!\E,eA] nArEjgل/%X2` h3<%v} GZf\jgnWWh'\` t&mЯj81s&t #o bK8@a[ޟ|P$sNpz<5I62>/@-]ҧ&yȠ!18Yi۲ka"dSa2w266@2|0UƸ;=Nc$^~w+~.31XS-Ogpr04h;8noFUAbiü+۷ b.S9M5d"m'X |fBBpkl؟o)HxB!iYc*`NZ z͋HOүG*><@}G8DS-Y^.a f5~jEJHbf--'].!^*bEB z<HXG9>vymc^FŐ.fxP?%TLİ~=㛥J!"{y BN3'vAuQđP,%ù~Z(,C0gFo#Dqh幘sD_H|9ڄ=?H/0:,,u-.L:-ݮxWߎ&fhYW9& MPFrC+Eg0Fm?'^iX!qM/l!EFHc;%w cb1t*ͅο"$9W.13,:vJ.Zw5(?C|#ͅQ<UȆR֕D{X MZ9j!a{^uLr!,Ƀ >FnE1J-".{CDûN8M靥~GPq64+e?ZoFmYly+FJ[c17yek:p(ɲo0OX=.|G-g##VGs5 #ied,Nvx Vl2; }kK6ӌϡ]GOWvBsD/C5|h]2_":=`LGxB'?o>fn*NEz42Fg fx+%* @=ȈwGXt2 gNXzo9Ug@Pכż"rjN1m3* `7Q#c(IhsPd7":<ɹSjcusJN7?L+\ehѢk h>~_OՀ0ٝ\(_ޞtެ* veuin ys󉖕&hFHRS⏧qhXz}Xq%_de@gWM&WvXB]UƆm_s({G,%Y$y;^856ƅAvYŽKma݌>^P}ƳdA9C`yf?lQYp($|E杬'BT#_"L7ɲAxzͤgAZ1י&SmqDof >#M[J'HYKYVlM_QMg xRh2oITeBݓ,kQ !#9WUf,O3k XA{缀*h#OMĕ R̤>wumEە  +dju[X";Ƕ~TCpWP:^t&K/CzdlE| wqP_ L)o 1yG+.ߧ$1k.Yʕ,eLt9ƭe A ccFel*$  : heU X??(hw>Bx5Oڥ`{rNޖ|SHzbtD`f +,ٻٰ.PfEKfl7x=[~zN^aZ@m A8SS:X& 1=1Z "SFY/eac;c簖 ?x_HBê Rmc[x{.m*>=_#*nQg<\Ƒi΍gb/."i%+ߊ"%G.)Vwn.Hs{d h?xEbk#BA8'Xڑ1Ci A!5LiW_%/P[>|0nv:nyB9O6%д;Iн 'Hٜ-RT%/?r{SxՊ')mQ4ġ+2c|}_<|17= <2Z.f8WM{SS؆/M{bMcCcdN4)()hK=-D,8}Z7v'bPlW-  ^A>v `u Cv06n}6=R7QB&"檱\ZEH{R4hjL'>z`{ϱd3A@=q5^E-4GαȦJClZG8=1}[٫>*M_D}4ԥLg#bMW*%Iekr! 'fO_ 1,Je]9Rc(;/ٞhXXkS\Z.A:}B+~JÔ'%iZu.)[ =bW}h݅YIp(Q^7dz^\CoAjn 9bJF=K*3q`цǷAt-gָ- ѢWa`Y忕+kxpd%l@ ;ԍ -SQ̀vqFC[0rimfSغJ>s- ͡Wlk'ds!+\kJNjIԘ!) 4FqJ_BCJ׵sv/oyjs[YNXJ7x&ޒ! }p>k."Z Ҧv3jKdM 4sjY 83r,"_xv혐,$ȁQu! rS?%'ˊ%̄_ ! Su /d<tXypDLqP)DgnGƧ[tkMT K88OX>\_"rq$Ȕ*Tԫ Or9!eh@7C!;Ɵ[λ!J?UҒfkN"# _VeN^Q "Tۚ#b.y:`h7 17Rڝq!? LhR]j h#s։wlYs̮aҳ s3(z\z?ѻ#Cuqe%NoQڳr :"KxaW}eTEc"YV:UI 8d޵HH0$B{D.4 8- OD/y`XCn 8fW6#0*Ƃw2~ѕM4Z씓ȁ2Cn+f '_;PmA.,? *k0݅8ϥs",M_-,c.U%A;MY'{u)2 f73zX(<',W=`U߂F&֛*Hy`d&"uDT|@pF*^ΌFEu"0.2%&;ॶuwfk[|7Oڎe]&9[wdW+G&k$!KMST΃9G~; IԣUr{.E#(IХ%#*FXXIRfMэIW5 ݣs-e!QEv ?I+Rpw¦v;N̝gٝR;á_[#P#\Dt yb\>W:jȥt;<*!zZ-% ;,v($q,M^SDK'4IOAOE.q.2 a pF$cdmgJOoi|tҒ2x'X𢮰4 !4i6q)|s4C"3EJȓwa&W*|t:n MMdW+Fm3  &?ѽ[0ͭeL$[K>܏ZYCBwPa}/Ɖ{'Ug?@J̘. _Aga^BL>9Q=s=ca7rQ Z?ZXl 5?1/1Az A_J"r*.ڳZD2UNMK~C9D3., ))߰YK<}3%7 ʌpQY opҋ>*-dM 降^A_r-ƵD6K1uB؜7P)3xЁ)xBZo JV.$vY3BRm6q]uUh7 m? m pSeCB3 hUWU9ͫ7\~ ZНNΗs]=NNaH5l{fJ62\\)J!A mL 3X<8+M" Jy]yfRLs2 , ܤ.3_j ž皥is6#_ےVRo>t%^4k5?0PVwVl/x':WֲP", ![6Ip^潤 =iyĠ#Ñ;O܌@pЭV \7}f2)|׾-Bs¤| 50m6~LGr7W[ۭR[0FZBc5'ywϐ/(.[ G7Wto; s)mJZ<&b$F&ɻ1mo@K+>\G=s0t= Wz~v3iH+ʺNZx{*!/ډȃ&W`g*DŽ$'4-(rKO C~35|4?CyEi[FÒL#AݕGA3`%'qf`x% g 9ҷپ;K:abfW4u{,|N+{qS5ϫ_ 2s1tY?6Dap^3,@_%Qc퍆{[VN\sÿqfb ZeϢ;'?kD2w7-b?ܼd=) # s$,?0PWu3i]N>ѧ‡_CF,sf$7؈on‰/:+%`;p5+j06rGvy4[gS驂bx'r9vhK×rأf/4!Lz>w&*QsF; iCE2\woU 1Vű!F;Fڮ[psA8gNmqڲ D[ͨao[X{>/# OEB1V8uW[y'1kiSnOyprZS.澠<hu +M_Y:ӚI$/d(l'GBDe 74UR{?g IGڅǔbJ_f;D,LOV]sǔgD^2b^"1 XZ'嚐пc$+޺ 6 CUE6W ^%zpu ~Ml]yHb50#d ~ %SN6aFLƕ oŞP͕Ē_>[e_6pHo03?"AׅCa=N+x?W.2f\}V\9:a_5?h|-TI:S:b/%CE#&4'jlbSt_<5]И{/}En6+浩Pb2y.3?wEZ1^0zY{O,s`PED;vk2uk[~nstnHPUdŔ$) .}1]~_7Rs㷅tLD6! Fsx`}c!r.>,$HN0̑'nx2h;H(Ta` sh#&/9tL]{srLEb 4Uxh@X|t%j?PN IK~:e%=Kԛ] v@fIV.gr@;,> Y\S!G&~IT=9ocus1un!ËTdP$/|b';v%gA6ɭ޴|~VC) qʐEٲ"m](z.~6*w1r 3PF{ڧ=$uZKt"8}_@V2|o~)/iEysd\@XSq'ʣ=w96#'oع۽h~zؤK=Ɲb 8KHNmk<+GP4mN}B$n1.92J¼^̓ t4,\Ŋ0U.I㿪ZI_bJ"`u`wQVbia%i k2l74ӥل&ozNSj9foQ/iXwr!Pmޝ$%1JH%ZJ("Ff.k,5LjK- `(mb" Ίd#;@@eZE Sn Hě(IzQhhe;^\[ !{VC2BtF[o$_$F;+#A)-K[idod\ MJ.gn:Vf:}sN,Z18`wX\mNl0Ǫ GF.A ie}܌kqnN 8PDϳwޱQsT xtT͏ȈZ.BwgK+V_BwLH6dXrx -K[2z QProwzᒕrV(':t_X'?сYQ; GU*i]WuTlYq5)n/hZ$kw&0f0ql#\nO@/s#Jҋ<8,\MS˯z-Won@`LT<~P[ Ɓ2"j ?O_d]F i[0Wis[ C>[Iu l8)`⪦!(cyV5c9Tdq_YߊPK@o6}/QbESTyL+a0f} Ѳo0ŻHfȭua~<%LGU_ =%>Ob5 y[:kAt%ǫŠT@L(3LD^_ٔNڕHutUs#VoQt<ԍ a2Iy Wr @PvmHv|ޖj3*3@XFzEh{uf)Ka(a`ҕQB契o>, d363Ζy[\a ۼĢ2veq ^Ou6/@ny˃?ˮ>ȾU\rk93$QnCbtR,D .# F'g0t>-koSH{vƋOʒۏ8x䂟gHPni>ľȇHiP((i<< #se;2Fn;ا=C$ v:ɸ1T3ߝ:A9-YtY*ߎ`[w۔kCsP{r{W@`$Kq|F]ɖt~>8wiC0آFM]SY"e˓3| `RP5CZߣF+2ugm/QV2ڂA⡑27x||悩N @olQlzXx]emv̮rh><$]gy<| Ō g+ђ*i>yC'8!lUiX?‡ pr$S'\;72h_%Aeaho鷨zܡoҰy"O:oB(t[rlbz$V iF̹ 3 _3ˈpI:^OxNmcYdcw{{̙ $^\{m]44r ^b ep<9!F>'~.&EULӾ _+U(=7=mˑ`(0"0jA5^A؛0"P֛~,x?T-OmV/W3۹4zB=s$ՙ~cqJn#reVځQFnW̠_ і˰| @VCiP={͌E]+dCmavz0N+AFDz'nGk=b!۫>wfj4ڢHVXݭ&Ji9E/H .F9 *?R\1=bo==#״W^\#J_#z~nj /&t%c*hWhɫ$O`)/8u6(-p&iMI7,dh$Dߜ! Y k1/tM E b{ ܫln RP!Ao4LKn-}.2#~Ṱ^h.]2mh|@jr6tغHb;բU˻eʚqUP!;PMD[3,ͳ(z5|"aѬF"25oLU-2V܎`i1FBv ٩hphH=]YoC*ˍCp_WoRG!cI!g{Zf⋎_YiU<|4{'Ϊ < !靈¹}?,\`"?Yuyğ~N zߣWZ9$N*&2֘NA%I֡>ڊ<?ad@KnΪ~5u"s5уɜrt$V3- qzb(lqwkpwImThc$4rfzuC ^V!3Gjŀ<΁p$:)Vk-ײzK=À2PV:@pQfp@  ȓق+ 4֢7&l+tlwV|p+:c8 S_F` ow~$CzsI"4s({؊[Yo RCp3@{njdF?>P{p3Qk]nJ6Kk ȗ;nk0FC!{MݏJvݩbl.m1P(/< X!azTS>Gi&kcGެEV0N%7Q.R86N )D@tc ۱/~W@T*]xx=1o ̏\CkhUi1(P:[mBY~5x!wu;.%EXLI {/45\B< 71F:)v=#Oh8eE$pO~ .-ЮbPEםE .棅.~dUR8wd8kx#e_ V) ist8QaH$M ZP;JelWn ٰ,}ݙ%^ bnjzDŇiˆ4>5!ZfL w5z+>{ 1Bmĸ0]r3ãMc_39|Ihny+G@5Ô6;WB~,X(lԼx w9'CM|mG&YK#dhWNZgNMd0M}Rmn^^_jX8#  TT+*ha:C SŠЩ\~rTB5OskΗ"i4@fÙhU0sPbYMQ/e!&7$Gظ&JPe qZa ,랆+gRP1&~hL'x+IC E.j_~HD%B/eV٥t)DjB"7(}U]r%h`dM H_r3w{Rcʼn͏X<Y|dϖ"[e>@UfCrZr F\4*3/%S c_v~arox`1*v 휧@eNpt'{f*ܨ~#QRJ}zn¢&JYpGq@Na8ӓLʣPؕ*:Wq>S.&XAJKJ\.ÚgG-uc֓ "V J>| u(r)IQa ɲFgYe7.䘕_}~ԅ5L"w |V߾+wyAt"n9'@~0s^xw$bhx]|ł#>w< {c`< P[:sB/]$R3#a* 4A-Q ir CYS'Y]uYD3m8H]uj4V\k%c?][̽]Z(E+b CHw{/7&k3tm~[^iYuשm99,d.Eğb'YcQdJWPs;J5 )\;b|Cn/ҖvD0`mKX YDz}p˹=էf-x%}sD<{ STCs!Twm<ĸ= b,t >AjԖM[6ތ6F\̬JkGRIeޡ؂bt}'^F0NjΔ36r=\˘hx,ЬX*e&NhkdCn]ah΀I[7l{ ع{o G9e .em]@t}  YȯBEdf16ި9K!ƣ"J$gZȑ{BI: VS$6)I]Yַ|%NV MuN؉E!*aϚ/Wc1iu A2{3ZPI!R9$XUn*+sqFmAb f?;j`>VQW=ϯXkokWY Gp%}%#b~0R}9h^ȵZ̖:irsú [o-W̟҃y״YgzFqso8jz˗LR-Gr>ChK aetz?Q[޾?) ^h (p+^'I# 9{G3vO*NNpwqҏ=%e:d#*pCA6=U9- :#'b&?;5z~kkſHH`ޥ=j^g%0Or__CJzI8bw)u X?:T?`mS0***btӔWyf /D{r]5-* TVyIoi [*h`-%0Jޕ>fF6.“SL (yՆG,Mrp};2r\%MIM'*2 5vY:6}"Z__W,+/c%(uv]{*"B h,peA;S+nAТn95=mu_HE滞*%k$˝R(sӸagFB)H)8cTn!|y +6YynjtB1ty1{TFs(W xq缈Vg՞,DkD֥H^g}hiSegnI ʔt6Q}SSyD?=xRH̥|sԂD?ϲu34x%b&VT ςko i8䂟^%&2do{!Iup> |J=i1 |"qx2v;yб 2hw6F$8y5ldz~`Dkih]1V~ݹMEEjA=?[€w>;e&eKG%^0pߝY/e Dsdtc*pzIdA@ EPh8"Rhvx mFӢ7ٺDCD6;]`ċ zUAXN{DxD05kTT> Bq jUA"$MсM"q9 %myzeIF*V˧1 îܯ!R!t~) 7+K (>SmU Z"8mk?g`h3F$@ݫc&4&QQ S-ڗ#^ !P|x ܣycq~q0-!N|)Ɏm磧!h,4X'\inh|,XY[7q(&hCߘeQn PqX r^ChIҪaǩÄGdS LK;R@+A"ʔ+Qdlɒӊ#܉`Q= zc s<E._Kr%)ē$_ly:+3ZX&k5ƀλKS lc&e7WVOBÃBȉ)]_?f-C2JrܘG;p>uv#6~:2j:Naz䄭$OObcE`Bࢗwxjj)&}=l P cP>\gYz2\Y07h{bڙz#א|PeRp^L:5[o!^HtZXNJG j6" +bb)/*-yB5XKU~ pg[=~k(g,I$cY]F'-Lf@}%=,#˻U^{pñ Kq=2BZ {lvd$iR6r C`pꪹڎ\޷i)lMO{*ݸ ۲v ACcn;$`7j<29[aGvkj8YhvJ2@qW%U1>ӅAGVuTd AWyt _dyٛ ӖBg ؁{⸇4S(bCJ.`I||f9TӰ*:,ts~NkʰĔẾ &p5 &Hg:qة/:6Fф->%d$jD {.b$Kwuz; rP@R{R/索Ud?T\Yer\70ҟ exrᑉ Ct7T]_DYq@cJc/B=[K- l).fJg? GtsU5*UDc&mǙ1 ̚ xBJi>GNQk kS_[qzqxk;J0:x5t-3Ц`=ǩ{9c&|PGȍ-ST`:ܙH'1z> 3K8̅XepO. *q^A d 6̐upgN 'awŴ}myXqAH kJeGc?$Djdr%if.5n5$L +Qx疠R]\|b -ґT'ӑm1 R5$Yf\!N=עp_dheE v~Ư ߱vD)w>[@ii|Lo܄GMk |. p.c`1+x,VJJ+@y+;ﮊrEqn D6VD{/rO_}/;jgڻCa9~RZ?Q~^cȷ} B./(LeviU mDC5I)}$101=N{N\ &)Ӻa: NՔ7"O}gon2<}UD|'^Z wR'!!~'Evp<zZ7l-(>B I.%\I3y7k<=f]|+]㪳sJD)> =agovphQV@~,; NߕW4AZ %$k|=|13ݤ􋛢x jU#QxmpP%7BQX<`]4\kŰ@)+(caI?12UJs0Axo<BKv}8a% $ZQ%oF$߷npr,fK2]~IX F/!lÞ ~AQVcNJl*b'1𼘓ڷwQ04.+*[/JΪ6_h%J>\ |)zMWL34 GhI6 _ĩ*n-r1a Lv~3\lJPXfHQugBA \<FA+XR`WvA~>ĵp.f+SkenKȨmItZ,eAȉ-&oNb0EȦp$;FEP@ti6ݎ Nj~Cۍ\1uup>_W$+Pߧ0}Ӌkl!(Tz TT} 7EJfx1ӚJdcwin묄 y?XdNd<]32/DŽ!nޫ{nI˜㣌8s@42sZݍƤB;m\̽•gUwf&6OUв^4݄X+q?Bb~ZI]*lc*}:!2b5^c§w0&F.1w_v:W.ƙ+SnJWdZav бZ2p+T= J 021}%asP.Gޗ ǨHEPk;;F!GiP<Œu1MK˿ƒnA` Gmg/*_I3R1AobF.R:7LMhKG?K&Ѡ5lG#m]m:'w.}ԍ[,Ÿ0@Mb^ Jc>b/k ly[ڳQ<(yܡe_\ci2hϺ +AȌTttaRV+(R徂ͪ`5N9"&@Yl5L^w{uҜWAaDGc[#줡rdzc/CCsl˕<pv\>+H#+S 4sAbm`G,wեs. !]kxP|˦AǼ)yLRp.ªu/Ar%b X̗؇(}|ܟSmIrc W`v{UjB(fg:^si"d{@Rm<;J|US>dV)^zkbM8w `BpDd[t4^YTԄi=6RlHA<ete6}d+g }zTFi!AywMG ϚJgwkFVG @Er"H%0> hxxmЯ95l|X};BW6I9'-/FI{:[ W&|x * bopm%Y nYKAɒCR7PC`zȘojf.ewoNdһg_e",>-*pzMhaطfu$sJ8l|B9;K+PBeG)4Zn6H 'er؜Z5E b˯q[D'`ðoPXLieOǭe39,8.ڞVCI6t6d\—MoZ*m4R{͋ɍBܫrV(xh^!1FiQ_$H;Gg:+hl4b+dK-ym5/䫓,in, ڸ}%J-qT"Vz"FQ[QE\ y(XDiPB$`/_lz ^01vy^*9e1Ҵ%nc$<vG+ʪ[_f̿ ‚.O4$Ȅn))鏦 B,'XhuP3EiR>",s襙 'w~Kt;@KM7e ӊ'+NYMd{/;Zٟ&6M": f-EiKay^̥#@y*UsYoP^V=Kd!4[f xj}8PDE7JaiзI>w6˯&ΣԂIZx[?_S8++&5׎橥;R#=q?`r` ew ֔v-_CT!#`8?'o 9_&J$Gk@&YǪ3w8gKpUɡ,ްWj)ˌLІ9=VAgrW 6Ґ譍\[1VښL~'Eq/=+;N+F?DIg;n=)S=G$ Z^vFzU:eh1#|H͖؊es6>B ^:ׁ&bX*@O2I&ogn̶=md4 "떟0w4:no7Xpby7Ė2~Dr19 6"H{DŽnFJr?ջD/]~) U*>a@ \9r[j ?$*vD,*~&Y:NIS4[>lXH)"K/_(~6ZwQ}  jr5 ]׊!#p.LHj3VyCA)Zt ^)uA$_OȞ9ɓޑ.^2ct5p,gVӧ-G; g?VmOz<.w;DSv Z>ϙ0rk?<(¡RZEjL[-g_>Q>1B'7o @zHHW︅ô M'ew.s=|$EQwJO gglA6u RdQE">kL&V:tLCokv!$$i&!"}uy>|T#k$D3~E:xn@O شY#STPIGu"/&NthOw?zZ(f#OC%-j=뺟?Z>EPa/̹ V]֛RqF$B %S~uQ::ebj&m`TS:DyRokxId"_+#p *ԅV:*bQDk 4e4򗍱Ή+d.nֺx-sI6CS`ó576a pPeU`kB[$igZAϠhS]u?%NY8/oՌ-?XH/?4$TU3!ӫ)5)%^oyIrWDHߖƜИF {a0u=9+6yCeE vs  +NyP\*3^2LDXW (<:*?U0W4JkZ Rl*; v,.-RjnNPluh ='geumC9>tL?+ZiR)[" ]p0g㰰*Wl Qu%=L-㐿0[hn(6z?3pv?h9t> |(L`2* gBY^.x{q n;3;AMt@=u6'9̮a88eFY!mom};Ů·d,(q%_P'eKړIPߵC\Y!JQI`W*[?]MJmrՃM;ea!tPYw 0#1DKh4\Ed9ȭmVTęm57,>C;9,9myѾÒ4|?L-<%U61nw>(vO-?~Bgmr/S1˔Ş8n.d]|fJ@l>itSv 57xyRߡEM1Z O?91{QRUﳊUuH1U)>`83w8oxm{>&X7_~|_]nt7KP}(l*;Tu>`WuR>A²aXrCTZ\-iJ:'pMs99Ϧ4 ̝KUo;6X& A$p63ў`+W.DҬLen)?>/1+y|%hg#--"r?XÇ @T@AD[oaʊH;ڶi%*c2P+{Z'`78֊5D@ =ufA?j>'{Xel3vdFw[>Yz1֕sR"g5tɾ #=HzcHv| u@/;3Dڷ1-fLVE,CF\VmӈdfĊ"iAFnlpû-{̩[`eP E|[b/'Fܤ%/0&* ?Ztǖ鮬SA5~](#{bsa'Gi*j>gq vx]y=Sƾ;v x~I'_i6|σ?^[ 7S]T v=I+Ewۭ^W"CW~!Dr7u` l$NZ;+utMguJ 6y? c(*hzl%={L,z.Ek7E1TfN4(r"0r[%](mGP/\/$AёlAK`a;1x,H|/Ht10A Roq-Rhh3A3Z)Uy3b""΃Ql-n`>Y8J̠Y6!ఒv.=V.%TǮ!4 :%Y;(ӑMu_O~4çh]PiKfiо.׵ѝ[H08|"̗,D0wܖdEˣ=D֞I1I[g_(5k;|>&%u({k_IWlE<g y=Nʓ?" ̪gcYv=*<7Mk@ޅ%|{1!Qb,rI7ŠS-Gp$* c4ɟ23 !{X"9U56j†.oGt0?j̾%V*HM6.u/AleIl1jE|{g Fx)k^[~0? #)6_=H]5B6خ@{GV9/lul4OSPd}i*/Ahxa?7kLl'kwBZ/ !0!pF!BNS]=56?Í qz;QY!sT9>v1E.s!"_߀՘ غbg}ӒkgY~H^vxOI0r06/$r5/n!ή`6!y:5Wv0 /$zrc%F Wcy/oznO8wV/g\*kɹTy?&!ӏ2߰MTq-<,,nQǃ?yWB7MX/H#_bkʏ50L&+ҠDo Y<)ENaďLk2U#3N3!Le:*_|K}C<'bis:<:7K[@ "z FN&L/`BG9ua@W74;h,دRFk||8mt E k۾xG d]in:ˉGu2<{\$ygijurP`rM9 ڭ Q䤇6L*\z9 .@j(\PmXZH*{ia,T dC1tΝL5m f£m0_~$[M.61!QS,hsy5n hwk\KM~3>S)KzrܱztOSFXA=X_\ڍw.w QҔQ5PHͽJg$E1 >mf z فʎ!( Ϳʼn/7mY0;w)RLձP5ZjuTs pls~@e g޴jBPOr7ARS<ʩ=6k9en:6QZ| /Qsut&?9UX4 d3Z}AF yIVW Vg?}1yG: L͢Vy6c.ט$ISwɘWqtyaڋSLC= -T&0g66T[W}5;6o\uQJ_/%͸RGcoIEu q-ٷU笮`QۼxKgSLlc`vy` Y\O얙ډ9%NaWaN|5YPt*WJCE|m{D;OzK8+.I%`ab<+pva㈓:NNLgv $VXC3ejW:+b[g@ }൏-P\z&gݱ\пb ߒTj0=ƠGc#'Qĥ=!F\"g5o ɯ088mxX>@p4t-ebay BKj9g"ŠrC~#6!ҫ%tGAw w tv,7w,_.՜iq{]?$ڃbFL{D~*e5SM;>N9VOEg>Ld?ژy'j+^I^6<ż/'99aWpRةPЋKh ݯ0`4Fk3ԲL v`)"uƥ]M:K7`dnY< _c5q]2k-P) FNٲKzֳ*H(m*f+1diĶf2Y{fl&!{c&n}sdW+,LS~v@TfS2\H/?<{F(&;xU-=\Nh6<uI}ߝVNo# w.KĆ X)+EdEW2")5MJFyzi48%R{őc3(i vYX\~$m1V,*qZ\MHfY 'Yk{yanݹ!z}@,ms]/VG'+H0>ΖoZ<=p7?4lKh銹[p8/w^?*J_GnSL҄c:!t A ),ZJ`mrؿX2?ڂM[Jˠ&FߊIWa/dJ(hcT&p*´&H <)?=nPoݺV5$0=M,t_ њs7dDq"Ub8e!Cy56ܘE;?)}(;ޙ D YJeb2ᨺ daǭI# []|=}+hT%<זt8_lչ#/# ^ebjᬳ pZ9!";?5u uPlP\9 9mCiz1a [n=\zU!qPn>ֹ5^u7yͯ=~̉HB'm}Dd{ kM#p)}ey)#Y08S!;[XϳӴ1,n3I/6=Ƚz\^M$ҥÛWZ G {M-!qP/%F@ǟ7&Uمl&O 3+hi5:wE)P3cjTV0y)kJ~DD)<0v6qnb|=sq@A#uo{fR4W #9~EEVG oZ2Eym0C'E~\E^?QƹQh8AMO3C*ܜj Xٯ򏂩2m@;~sx5p R,ϲ5F\CMvp QPrB۪foR/jOD D<^5/+m&/]JιYW(0 Ǎ~鼱qo}!nbywj-I #eH(f 'JHPsdm}i>HS| ,燼AHĖ锹+nƏM|&yITKk=!P{0k"'۔0$I.2B/ZdMrurF"#4u~)Pb9: !w\5#@$2*r R-OY X9Fw_g=X,ҵ[3$8gaDK -;Ӗ%[I1U1[ svy,T\c¦Q"F{=l+$| ,p, Ǖ̃v3JsaPknKAcZ+_94\ /ffkIȍ,C-1|bwKs6WR ^g.)a({㝇D[9=wՇnd|xcYz sE@n)qR ǦNunE(7B{i .<M$E Mvg ):VvM:\?e],&̔$" 1;4Hd0'}mtEIҖGO"^rwB#bz?F*quWehDr sʬ6%XJ>m;Е1D鶉)qڧ:7ކ˦-E^ᱡ!k9CܡV *TBH,yZ]!^84u&0nRGIdKX . L?"N4$a)ZHlw>J[e$Ӈa Y qscKic/\p|Of`Xa;");OŗA:rəW2oZVvcp#>EXRt fvIԍH76.͇? vU]:J`{Bzz[?C>ޞ|Qco/O[Ʒ2 dd |4IHh')`7 '6(=8yep~ҥ=Kg νFIrDŕlA}`>Gem9rHYuǍ9'W!]$s#' QCK`XҮ&%.2_EB^L2~.ӣXGwf;2{[^ق4u5l 8H3ZO`<Mrh  4ej-zx'pW+;٬.)լrKtC3Ŭ @9&:'#j"өlnJrᗻ_D}uar;E037xt/o_!.h0IB撢-(H.cb Rix/rQ)Ļn6IeDAFA/Deg`q@Yoy{FvTQU-okvF|tt *)Zasӵ.mZ).ΑL:^~BvHJA} ;7՝W5EoSy60V1D1Zx ב*;=<5 аvGO:lANQV7D% >f6n=XS [oT'iul%B{Czi)dz-dڼs;Y+# TGd[CiʾQ'([-A&V%],'3P^4n?iѷ1/3YֽAƕ,q59rźJ=B~Aps'b_ WYE 'ƅ KTwp(nnnTrGfk/uعx@(63 Ɏ@`YY3 Z*'[QձLB]7 +1fGg)O J &HRX -qk}\_ " "kmg GJj,8ͪϵn\:M ٮo2\oࢺDG2-u W<(Oa,DXс9M9&v-Y׊k%~LaE|&)uQ1;BڴZa4ۋR{ۆjp䂫cs4PCŬ($O"Hzfy͕sȾ+gAj dQ, -ݺȇVi$6b1@)9^KʢǜLMuZq(Գ%ԜnB,Y kf71됡-{5O_ m[?Bti%={3*8b`6 7uw? hy ^ZKԖ w%t~a,9QLQ̐+"CyOf8^Frd)|+V!)-C QcThr0:>R$+=]&PI21l6r &ASg~$4I\|ku9]Yb_x;GJjVdhrNFI4ҟa10_\Aa*Ĉ ĠL+:*l./{ͽg]/)Ҡ=#"C%ek*Ɋu 6<`73<0` ebO v9;vG3Jd`i;_@3m!R;꽳UӍ?wo=&^, nOȚ'*.$?m~P+ERm$||n襑^πxe mm[ch frJgI|ȉ9T# d:q=U:G | u&{m oRζPS  g * )]mwX?b唓C eL`İ@F "&os jL-a6>i{OOyԿ5TPF^'Gғ@3ʠ_ գŅ㓌lXUɸg=K^*?P:(Z׌뼯D~:M<@:EμK憖H|I脆6 u@}FW#cQ!{O8Ӱn D@S]Dm#$T;}P\y:[}Li-Ueu0}!&:@']B-J=q] 9tq]4nR*3~, bνLdpNa}ΫrNnS7s|J]j7g 1 R4I$?6^%o {6uHb^"!2Z%~ɛ4챲yp*wCE^|TtY-,]KENڢLUXjUEsBq j9~%F'e i[ppyES2.R$"8QG]z‴>Yf V3n z7wY;ApO(peau%\ZhO ˨ȷtmUj|whajtf{۱Vb96,4?\T|{ڰj!F1\ T  sEtv['M 39jI (566K 0CUSZr,tfV?!%^>{2a n^ִ}ӣrI$+,I*WwCDBP8r`l[aQ<>Z4^'3}L.pu< :ZAhoQAJsXiz`,)ahF@1]V{3ދWGj>i8{ҹǻnPrj6CVc727|W_6'?:O82y*"cyiP͇8}q[H@yLWgaq.=őATgnj?'OR)Izֵ';L{Z齿˔} *|ȶ鲴J=hR"t۹GHK ݆[Z{Q53qZšJޟoh( " Kg+1c?F2ӥܟ;;v9EHt#`llzH5M҈O7PM3 ~8 z]1oV~Lӧ?+bloM@{"h5D4oXO7P; ZnSCL]pvh[$N)j;f`ˁfNf=V R: }`pXe:ϏhKsvJ D8dǸÑ{WGzrU lj5c fȎt{.%{8fb(%EM00 /2QBmLʍJ1҉ߵ<^v VjzP>rv(&\<>oO@q 5Uq>4D>" J&"n ! }^ ̝oW]V_>$ҡw "L+ȇͫ5IqCpd܇ ۔r1s͓"0 6yeD CrhoXd̆fo'`Z@e2K򗦑-4Ո-9ErYfV%NjF+*nKTubzj[xj 3n%jTvPH1X uF]@-<IiBgEP1ufBY~ yW_؄/-gϫĖLkJ,2?zm v>"`fQsRO Zcxh&x[eДqt ^ !Rk G}/hGV[rae85)Jy4Y\^x؎b* 2c`h~a#ykjk6n 7x8']f,X[+*Gd5w"^7F)>o= G^^d1^nO?Mp3QklϪ> _凃Tz VzU>j)ԦŒ1gynhOпɅICw aފ%< I "2vFi(Kp#DtN<c2]yZ^%5Z0\s8@ AC'ڥr6a<v[L~٠&@t<[$2`~)-(H 6LAd*/kJ JXS]mes=O#{)$ՕMgWZKG3 Z؇QKTE]?X!C U|`gU@m"?cAffW_1OA?7\ ")XYzǯkC Ǻ(*;q΀JZjWyTNG`gu|sYRܹ33aL>5tLQE'b t!,ԵG*`r>,kGif8JYDv~/dIudZ3=?n;,}AQbYyHmy:zXU?p;H]qGƎ1Q(sT7Hwc}rV#GBxE4Vq)WV5nmϰˆ_K m:7)W>V53+x l$LXE ],Ko\f2!U02 iQ0E4_*%zhMݡѮn+^#ݎ7?S`W@d⨅/;#77证#XUs.Y+\3T GxÄ lWHH(˕ƖX4BAunV9mݒA9IEv@-0!5#&¾,SIC(}>})}#_;Ωgd5aqMxarL٨]ò<c Cۆ a܍T'_Tr=tj}PrYb?Cdb_@dQॖ- ۰ݚq ғGI%%hL: 3!wt|XOOi*"|j&N'riiI_˻.t?6TO1lbO☄EsAcc/ ϼI/4$\!T1>|\[ Lק.m ]'/u ǁǣ Cd$35{*&ר[|u-iQƧ_,4)wGp꿃ی=$~ѻQ; pG!$F$eX̧NC^;9ZUc)`LIÉ۵fET)')%E|§'U!$wh F@ƍÖu$4ۼ|EH rK&zڣWe(btqνN  mVnt2OqEwXrӖ3bn<Ĕ;D[mxc@\|ۈexXΞ$t|gw |zoy Pdtk\O @wQ쿺, >jiJzi -B{|R9s׈%N1a^ ?[s%_rZhfZ3ԑgļ]uT&)#4|;Nb+[p_ W9-y3 POġx'^.\K*n+ ܂ѵ#~w~N l˱=Zd8W꒢s1|>tEE,ufSL o&=T0P#N\f*}H8^^X.s;ϫifXؘS֝vƍT~Nh##WGl͹.TB]r+Y^`qːʱHY '&Ѭo,ܻ)Ԋ97=g|,kOgClBS/ qÃ[Up*?Br"jAkD`{ޭ#n[8iAX5_4_r{Ǖ4o tnFdaBxو;ry ca~AG>"'mYֈo5n}h헸s\S!Gt1:v}ꖟNC_;7SZ~ Vn=l$gbVCl~߲ï/[c,7Ň=Q. ,WZ`xnoȭ"@hFY  7"1^+}pL]`Q6 D'hL;maȈ7(BZA;č R'dxЋg?{m+ʫea\Oa@';OzC+d;a<fr ظ}O:G ւ}ff^y!(Q=`RέiL;Xi4>[eۗ`L 8pG9k08Xbo}:{ECM7.VLe_Љ4Z<[eO8An/%Wy}1]K٪h*=wR5I@|_cH6]GZK$j۶~Y2Mdaڡ&`obFI}y}~)[[)/l\4QՊ4Ո݂n&ڶмE,AP'F%'qba9e,-$Dmr2tH+)~'!~L|`"`cXs}.wZ:kx"ء|\?կjh8.f?|NwjR>44Rm.2rfo!/֩Mј)@f%5;CUYCM㲻zuy)`!F]N"/ze3L'q 8LkdUwКtܾ5Z4Z/EG9vP1t3qz㞔 k].(Jv@'ezysUBI5h:rmáU u1ɵ Ll:I `!xV%J=y'{RY(iaՒ#nQR} D,4o"`%xe/GwyyF* _Ь-pv%kĠsR&'C HN*s}#9`OP"_:=\䛇OԑmNE 8|xk!<#KZhXyAM?f5IfYKY). Fb7T9sT%%L3%cB ~E_r_⡷`01uD>ɂhUgDgLSU W-CN|b-Rrc>Hcy{u]`^ݤHf0VzeX%ʕ̆:EN'ilhE yz$J/'e1!gP­a$Y+n"nUԙIЧ| 8& RSg"cne.Wye@exoRR2m(iX4Tk8XDZ`$-Uƾ FytUN]M6rq*W`6LR+[TK0sx\1Dݢ.k4?e>>b(CJ7f10( ~_@_!Yi5g^;l'>L"M3VsQqd  򰶎ʹRq0>$6CB PAXI0IDxzO9+YK%e(`/v+mV/EmlxT5n0P=~T6$kARd쀇+;*o_Z8.ꗂiHBҙص#tl .ga5o\ p`XfV{qz$mЖ|@kV p#~. VYQ#0FZ4F+0yb"sap)SxKy?$.Ik: 5C7yQY))LT=+ =^Yw%Q]]%,GK"pX qtJQHv1`_L>iEu!BprCx$+4Wt1uLn+0&b5)m#",䣊 m|4CQK,$S,_호̀VG~#dVB -<y-:ы5Ro<[Ǎ|4H-T!/;HPL @SfV\<:@im*#C;r=QfYW=6J}רWV%=GbfjGnldF =r?ϾZN>(; %>0ҺIa+W"_ {UQXG9;dJ3:Sukj[H2( qYC.`+7gA.}MBZwܵa_B5=ߺ 3])2^?kJ,۬|Kۍɯ2A_i'0zR*K7MO BOr4 r_.2pnWGw$dRP¶JFUmA8C|#O2SA0#=_)'kqCq= }9)'Palm9iQ_+% XeNV&?Oq.}9mt ˕=̩қuT_?qG߯2 P~6oP -;PsSz!6HਬgVtQ-ak9G A޳7TCQ t&/5ziذp|4`!9dnm 1@3o_rQv;~c Scq'A.z9Oˠ) IiKDZljbǏ)ul -E **7 lcUv*>` 3f;$"=1Av.U>m[+8vc֯s7UmzRCİGC@LoE* _h׾ejs7^kIY@G?BTjlHId'9o}M9ld0xZp#ιC Rh`pXmu^w}:wd+?-8 [aUeHŧG%p/XS.HK]Thطvf6mldJaT1kNDyYW#{Dϓ%ʌ]t5r$u`8 $!n){[Mqω*N|6>MW%9l7RWMȳKf f`@RgoJQtqn݈"dAJ0ʝ2A5:}M_\)h_SO9yPA-8E_F{UB#< ŖZ= .t4$0Y֓+J Qj[1/Ŕ)X cV7 dͷݧw T2*IH9z]~A@笎fi={ddk- Iw ^,o?;Ft#oUb2CLj ɊĦ՝l_Pe׭rNx1yLԙ0`/O>v9Bzi3q˶3yJbM4xDm~,hCJSQ;FuPSgUhj? }_V|_L11Kl*pٕ2[qNMqbV@)V3AYMrWG%x HcQL$gY>t15DwZ Vg mp@<[y q.!v7% dOyn ; 3-Wnot$}+B,~vcqkfvce?wP/0ܜ6Ng0/Ru* 9r[ĥGqLBiTܛ]3 ۠;&BpJ o%^2g1QR6%AC1aRi/ r l*o9rTdžaw<ەB akC tz׭e\6B C挗pۖ (4\Uҗ*}*8\q^B ÓHihzfB+Wi>~tݝ]AFV!WNùJ 'O=Newd9x&8"XK ŎXUCt\^|EXc)-i,mݺ~6Ĩ1VfD!m%Ht0Τ=S[s_-h@=򯏎B7w5c6V3Ep5]߃4Ѧ5oc*3t(Vf+L[Jɍ7Ǎؕ|M7COAX*G͒؎AhjHYl C:VPj(KJ$HEF Wb^]L9zI8Нm>5φ!lve)krwyw٬y 6,rdV {Եzԧ(gtrkXK+("|1D,b7~';*;7Oa;6ʗ0ҙ%8"\]C.eUkɣQط#1ܫ'蜵cB7{^HC4ng*\oߴk-jcr2= I8þ"N˺FV $4POB ͒>]-<^X ,am>;Bz^aMz$J>D[Q?5\v. aֵv  5p0Q*}1&t{3="ǥ sR}]j$yTYQ,눷X<$҃J)߁TISh"rPr[J9j.V\o#uUsZI;mZ2Yw* .|^=ŧXK!=sv/DZZ^4xHP-)b?/3(e:dQEY!WE㭅s7hZEP0tQSH6{Vh+lȌsLk4D{N{[$)[ z*&)՗gܨ:!6H_Rȝ뱓o@*> >&}1U'f}aZ c6)mTvW-n邗)"C=s¥Y*y2Od.BIfQTzq\\sхڶBBZ`߈H'Ţ1rw}⇷@"w&+nG~UmmaY6?\ڴ|aJvquG躍7٥#jbA^K6౭/e3U֫~f[ d)F>s}L`߸B:ڨ܁Titfj1oU-cFMѐ)Ԑ ;wHbm0K)ƌ?jbf }`p0LrtnN(x{f.^vPA3Ll;~=͉ogSOzɝV@9V&$m%z;Ќyj#ntOߵ-1hN=BH]o]'oJ#O8a)-ƀcaw#=br=v^<~|~fZk-c7$<6L~*=bYhd#;RSd& p=i@Ys}5= ݜX=F34/HoE04eXt |7yCo)/ U81 PC#u1-ՂΤn-wⴱVߡXu]a,rnޢ`[b=]k35#qu4ѠMzK횓[n&ݷ{0:ycW ~P=Sq%Ux*2~/k: jx -NASKy3 r7B}еX& [`ǮLhz „jєא|ǔF Sd[RKIU^s@|u =XO>QCiuBHm#:?tV{6г̀{6gaLX,ùJi9 |sਰfu!pf(VMC4?MA+>fB~wI|JA\ :4bۯ{ Ԇ4v^5%Tf^uD!Biz]((8uAMݹ@R"pRAC4Uu<.=o\k Zh}#RܟHo :-h<`~>2iC+%iSj 툆7Vs8:k# E|ҙ2tG~xc䬿ͅ9p|/ߓig| -yxAn13֘I}}2pQ8œwdKUMؙGZw* q}DVLs&0}qdS4eəȷhbȱs8l^…q42: e].=ۦҩa֥gbEnDaTƯ/p U\p xaF2Fe{v=rɸ*Son.OkM:;Vo\Y2?m:SIrbQuYW*8ߙZ]v0إ'y/b` -rXx)/B`hI>o)pumoDhYBˡ=(f{5Xus3\ cDnD?4F-P^sr4!֣"Zf9ƽچ4DD_d#<xy>j6%gGPA+C(p-Յ+Ffic.΂P@NXq0C'Msӂ:"Hu`Q'@>V5~(ygb:ʪ ES(զw{F;a]Ԁ bXӕT~PYlı ?XЊly=%=gI/^y{luҫ<󌠓8RXjf: 632KaqU!LR L@-IīskUn#'qwV1E}7eӬY-͚>pԓ;5L68VVv3 ѱSs-sQ:M =5 fXܓ6ݗߨr+C9|޼18ܻM{ți=S759ZU{lb`27*?<߹ Xh:qȪ+-c\PrO2?΃kV[7ڑtzG~k]CNxZP1_c- _bf6tK2 :Yzվ.x.^m뀃 gז45Ő; ݐ@NkGnKE[X%½ ґV _E8oXiQ8̕"-O\OY00!#qTȰi&yxqE֥lS>OouvjՔ띮%7yۤYY2R؛JǠ=njRC PBݩ0S.&cGCT7c}$FRᜤ79fLsM!KD\I{@TSb7Rj/O ׋[]zL;'EcR85&3|XOzV0+z.+7Ѻ ` So>DKX+iq#ec'c,"'6,\12UwxB/HDl$=VKOuy깶!tn^9x%y'CQrBOEտh<u' 47rhHF'p_]d/Β}< o[fo7gHvgM*G Xǡ;޼]0鄨|0n06㜏HyTY9[b23}<2Ǭ ̪ᓲ!J/yuA;o GϼTgTBwo({Y#ĵ ٰUtHR-)9i&+K`p80X7Dqs2@X?pHwB2B6%5RF7ٝo P;hc:l1"y=]V"uԡVEj"MLCFl2?r փGc@VeݐvzlfN #}jy)l[_(s@ppݍ{huL/:rKB5!즜Rmk.YdI ]CV)HK.hv~)4lqR3"k3Q]/-fz&$&g mJ:1;@GWieaK:xPhH|4!Ԏ- f/W. BL*mQB*T'2-浟} @nTge.!=%FMN3wg4_}3%$ibʟ[z p橅U pʷ +s;fw6[ ο,|{+/ $'T9J]H:9OIma$Nkz 9Hz"餍ȈyxS$k\#_cCmk"#ʴr/vgq4PKe} [D~]Ln=%3CIN!2 ],tg(!`J$|@TKP:3΍|tX٘[$j3{|x.FocVU-j bxWTW^P5N!`~LJ%fG,ihU&^oFCrESyٌD2d $GK&dabƈ.+pbTUWfyLSD@ X\ E5Ȃ*ƫ3׫9tVbqK!cc R:癫},EA$RE@OA1-/'Fms),T#fQRi'|(*fKH?UDLuSLhh#,SKG[{]%cdR "E3ܬ{v7`6&r Sqj274EF)"93Jg7l S ʆ>3L ؿb(<s.M羆k%}2Գɹ"RJAdKy2+3Ũ=)=ey=%0/lڨ2@0y0G-AO%P-@I}8 Mwyl?,6}Ͱq*R:I5[C |zj2߂: 0+T(rxC G6ϻ:VtgIUU?hla|cUCNFF+; eM2QXU7UyKVr ;*@9s,r#`Tnl*ml-ޡ,9ZM^oNc3P hl?(0QWMd9c׼*-s\chRwo܁62֦ґ:?cbJva~Rc8{P@[;R a$O(#}~['p紫NtҳKRӪ1zP Tu$h_gυaAA|akM䗄/Ȱ[: \+r"Zb0DŽɗ֯(:BqK;*BNto,h6lIݐt4kDd !qCRR_+E8sfƢ;ϼ)Yר9+im&**Z O!o*^)8nTG@(w}Ϋ 2~ c_+ 9@%PBCRC;l{\)Q!Q&|r mﷆjg{F`إ[vN ОgB/k*;YG_O޿ɿqZ)$+0_H?xjm05[dd Ji3F>37$<lኄ:RD6t(7?$5!Tdޱ_ p0Mf4+ήz6Pzg,,P[ܫ.k:@:JNrXmQYަ56Nd[cLZ4(by{5体Q)3U+z9Ğ5WF5 I{O΄Yt(},4r>?T}DbHh}Qs(7@N0,o񁠢D"&|g?5% `B|5S}z-첈fZ>,c*nZk)I@V"_kCaY)7RHnxnEBy|MͲ{[}^O9/{$R)R ?+  pUFw}BOH؃NQ= >ElI:4d[D; i)grߴo3z;6r5GPY¨j12͉9(qQޮ>Q` `ӂ#C1S$>}?ͯFC'l{L[ =J:֏?W/&o*w^*,QKд:Mlˬ ?U-S`ؚqi8HXwqQSȎ⺏=SHFaJ -Ke* { Srt$OوƜq-Y YG,V%!shwԏ v@914D#8)?ߺ61 xǙj@L hUI+zN[ߤ߾( > <{2ftz״5bW%oTa8 Cl= gd+yD)#Wņ¯h@Z?;:܉k/-VjFcFz Jb\tE~zyibiwk9xЋ RMySQ|slT6iUrh4C[$p)^L(l)ӗOMoaN^7шɺv6ϋֶQ~s^ KɛI&ofZn \t`pԌ()4£~G[?D?ۂoIG3MIAeL '}!D7tW+3lQR<)jW4H`D wEX*K ]8m{w,{~l1v*-] CN(QF`ׅz*AvWTϣ6.0Z4"pbK K:{{}+hd0SFQK8pvidY61e&zc6R.-fP`zY &D*j:`kn6;? /&iDcꌧ xvM(eXvX[1V Ǒ=B<M\TK<۝lysfSwPGܮ>,ӳXx5( r ~E|p726jK1hcIR6Vpߣ<@Ș.gMh,D`:>8vxɇt#0E2 P<"*PSa-`;mۙ/]\IU@,I MɄ /0k` $HrNXbEGO|!FUSu~"L̪.u@espn$-\D "/2?2n$W,ER(F$.zcxS'V<.G$M.Hf@M vH?~[}},/!{?eDby2:Oߢ'H-I .4N n^LX%U zdg$0.KN3Ƶ=,~V: ( D7t[ףJY_U0ٚ׉b >gS"yTm| 7J} p!+HyrZjp<̵qW\n@ 1z)5rxmML*GB)A [4poiۦOjh?tuY wMPކ=Zg껲;86 !8RPX'(i,OEҔ[6t]vEtPb-=5dE mZPx**&\~Pkw 4/ 'ʣEo2̊r>jF_}zÙ(ۧ-Ȕ*8+׳NVYi$RФoݔj#,?9 6S6"Hua$B'd@Wou;_%*ٮ7@?j_;JvoN8lwWidu=0r)5"oQSup@Is\֋zk &5v,{ДӎBrChm$`IRFs@ZhYNz|/[8, ~|W6C%-%s*7{~b w!܈6P/b9n1xC =Yf)6;tps;vDžu+ u,\5/Mʍ='^pvFpw/Zљ'0RϪ{`[ o+θi'[ح(ESN!I^a9)kb)g%YнI,ɷW V)aHU!1~sC@7UB_ ᘭ:T ȸQfz(ÈY$Lܬ u5 :j1Z$RV%\.[{-3EKnIԀ:rcA/<Tsp|.1֛$hlA@1AdCFzr!ľϵGI'Wΰyw~hneqO~C*ћ^U7ݒ½FмRBj$2Je1 yc>&q1kݝ%܃BQͥ^% x5cOsދʢf zk +swsn2@V7Oy]JG ɱ=rUϰkAėHw Ի!4^8FGyY 1x{ ?rbWc[2ObDN:ӳmDIԚ_~[.[An}ׇFxU]KU+Q*Ztv( )13Y%u}1ڔj_R "Ǽp%7c) H2'wirI&èa?m&YŇG?'eƭ(9qfkf͌ c9trkô6z1x4ތ]];i p[9^@$yt53zV;7Q0y`e:}$كnl9=1Z ͻ3\\{=𱈯?Ėk~m` DH:G6I4#D뙑tywyR+w6Ƞ0W@ z0eEKh*Ȕƒxnrvr,Ќ Ptȭpb.Atw|:v\[֩yy\=q}x'|rX ; )VsQ~d$t$^ P?ɑMhןZeWzq$c͛tM6;3H@sKoY˺&1kpGPL.$HSZZS!ya MsgڤҞV =z0|T!b%ن^2O)&2jrU3C5 }|g~` fسOl?Ĝ˶*f粋jNKBun{ˌL31g^,.]W rxgi]3[A܀ڹe݊ ` kjq' Vx_h-j{N, ³ז&]ssϵ^b*B%001gZ_6WIs*7>$ٿiW]# [6,LL|=šf{# mjX qАr\OY*[$D-=͑!4M6in-ْqnћLD" ?l)`Rޕ:j$.!ݛ|w`' jP*J!J VwHq7K/rJV<JW6LRGwJT Mh355PiΕJt?HMޅu{8oPOM_p& d4څGJDRu4]Ҍ7p8au55 R`նC5p 3,fFDpS]/P"XО}^;"OW”.Xk'젔&9W޵1Rmj]mg&&fs=mЦ~vrʾ,wt~Q eUjR8 Kj v5kf'kTGܹG"Dϵ-i N//S籍E*P}J

    ʕx% ąf\Y r6AK6ӈ$Tr~f{!%r1IM.bB7htʥ5m@*Tc-GOF!>i |2{ЅÄDwl3Tܬv"Ijsk_!E{3/ lS:-L͜<é?UU(*R<zJcbvx/fȪ.lN%^,@4 ] ;zTW-`W]e[kc0tJqeQxjbC~,<#nn~#4>P8K+W2JI78[نJ K5b~>6m]/CLu hwӯ5/cJttl\&C?NBV:EY_v]۽6vMBnEsrҕs4kp\,=졂šr0@<+hB7-1,6Q&ߡXJ9R~>}byHƒ5n0bZWY/0^)w YZ[`-j:wש K)=im~ZIf nhUg_84` lu_E&SJ!1q⭝|FHԘ|&s dž4[paJ"Cj>r(e]kѵO*rSLNl߾!@怿 O*韄ka:Ҭ0'dLL#BYzptzݔ{!G 324Anoݛ,,t=eɝ9Y\I.?cU;O$tS{J_Ot4X3'H(JF,Foy\W6?嚲t$$t.Jҥs5B!0#6c?BXX Vءn삼}8u2d+7>YZ?Lǫ5&"+5mb-X.Lek@*ܐZ& W@Bu\JyӶƣ3uF~K*oAZ׺HSg ZoOWpCD'}#9PLJꓷ8iH1+l 1t`O#R~ 9j)*jDn^YLͬe߾C++z|b8ݩ'W;,SrPi.IV`y'ni].@82vb-ނӣGD8>U8ou!W8o\ezE]*]|d7UA+ KШ E[>CvlPnZ%i]N`~-1筠T?k%@'"E7g$ *zXX0B-Ő87[6}gbb0frDzn%wT,= T}dtKOqEwOh:]PKn1s0 o/ղEk2(ejI]d-nVm^izʺoPBю}r?ių iaG/էW D{zhqvOZLZ@',L6OazHv'@IEgbuc ZAq8q#wzt0LU=w h& 8\@,tq]=.~m{ nF,mj=Y`7,]ztPnvYfz4Sfh AgdYz{ @^n&nv~S;~C`ΞOm6gZ9kd1 v^ 3SŽG]- _QRI r=^mW6ۀ)t0}p'ϣE94HNH=SYGiU^?ڿNj9[/q0 1+/1%ԏ@ 4lN\F[ $ 'Rpz723ğЅ*X-H=ۦTTa)A^,FWK"^ţ/g4_ؠ#' C{BlSMIL!+qE' s:zM%P Ǻ[M(%ۧ(= #,SkRV|@å%uTBV; Qc `R 8Hru7'Q+M!)!:Hov`qf*~g=Ruۿ8:S =f|qtՓE`-6~eH'C|M Ջ)dx7q|Ơ#xРU9["?: =.[nJU41_J.˗;,Vž瑂< ]ܲW yGi~<͠k|?"0E}ދ0W/ j#ɧN#pc.4R"7|Oy< n2;seK<~z8dKC@yVR_ p/54VXxAo֚ $bI%N^@myK?5bLվ`W|" 6]BH9eh xKմX[ā5>~<|+:$;A3 WH%ÿ=vcH0G8kRyE@*ꨳ +KڐJt`\4Zg<#AR(fi(#]n:d5mNp}L8*xq9,/Q > 2N`p@3_:ؽhzDžL2UB=u1bneCsyMP31;s}uFw²W[G|"ZguC([|N屯ab% hkyHd=M=rQG74a!M@ilSs?4%[my؞b4^a0V]pI2 A&ܱq^져x^ x-xSx k(ble01[!!>4v)I m ރf^,GhʜHSZ9*:ptcو |D6RH|VcZ)+PA {IOL!.EZb1+0p4P(2Gnj ޢǹ4-AeN'6sGGɜU'I$!bP;ӿC6EX1XЀKFU';z.yG>K֜iT3"5ƈpqYE=hKɻd,D.^-c ˢ^ 6" !`4dT+kb^ʹ5ߎi˥qv/kVqx-a3-Z5KNU9p=xJfR̃w']H:O] c%}^ҕ:  Oc1; 1qzy[L,SBOSܚcw}~OdF=ib%n[/sB?r#V2,X^B-_w,Ti+ŕLa+jFd__wSc%@.*qUӉ1-:b9 (eT#=aQ=  Gy&\RbN D~pPF(D#K$+ӿ1\QM[bŀCȐAu X hJVG+iC뤙,9%bh8&m@0V]5LN"8gF2ڼC5*&NP\X4ĿIahX&39 -"]} `┉rPml[AX?O՗oa| :qLAcrK!p *: $ U=Cr"UhnsU/է(+V8)+gNnl8uo&- 0ܼ4NޔɮoMY{d鱳n~ Jm9jotUPSFrBn`aHFw;P<|{̨vAfB)ɩI[oL)s+~ d =8-ÝWF0Jqt.ӓ^,-E( 5ra*޸UX9J8CoNco=~gϥ=u![nL40j]D~afOYdaobGnɀw[\1MgNZ`_#7:Ur&"/_C^F`* Ԏ B}iR}al:GE}Pq ̚U>E1Qmss 8ĆF?Ϻ޲7foEX'OcToM&& Ay@1o61-me5p7\:gZ5,}!xg{0(̷HT4:sd#Ҡtk'=k񋳖 `tކA-F"Ya77^eY}2u(X&7Nc{;f:.(>CzS0Ր\5OAn^%xp1ʼ(i4zGV+GiV4@AD>hkPy M0@3Gs70}3BT5Ky.dn0(Uxc Yj ?h WHu\,hQ|^Zuә, plTp> Y36@aMNb ׍>0;Mش"hbBOe?v~-Lo~o9;7?i!p6?oTi>}NɊ~8 6WXu| e>ϹP/ʲe&?TT+\0߰ E^5Q} Tja{ Y&[/W֐XI?X*^b%ʗCpFd)`)d6?Kke 6WmZ ;+9M(b r{Ifo=`!ˆPbMDJwV@m KM6tY==& 76u$POs T.ߟ%l9 qf:])d́ ?.)F|Jp`ZfON`?,c'&}kz$p7S$`|z/@A!~õZfr ?וQ`WwG}( reP3*@ gVFY(/8LȎ0 ɦv(rqc'BbUo*RPNoamܹ5xWע+ "Pg??kPnr|CDGgEH{sҳJ!(`9FH1Ei@gmn+ArK lb &z̟G-vzK0{jrHJKĚ2FHE"_&adcNhi`D)8Y0ǘ-9>/l6hA͹mffHY((Z6Ңoԥlj1ʫe9C֧}sa'u!)$Q vqwj\7OZBe HCRۿ!mQ§ec z*qC7) uO^`Dr2=_bش”b55`>̫L(BY;HM#6Gޕ7|c %!<ֲH;m콓rswGxEs b04gJk.}o9r;OJvr[gaӃe Z[̀pp`9d#NH } {NS;経u8eXc9?"#|F{~ Ui-F/q5k& o\ iεc:“7"7os_JA6aAa"C8aog32d}(q[_Rl1qjb>\倖RL`]*yyUC"gNX~&D<1Pټl?&3Wz%̶e$pBȆN|UHOqY,W3 BY^30"*P Uu%qxon-Q[EeⳄ C`kV?X6cmテugh֯w#.1Ky63p$ yֱe[2@+"rtiΐIAuw%~R kixaaMRDge&iLјBg|Ŧԡ5 {? *s Ъ%`:݃A' dl"ȗ3{9±`D~uD b[JspGB|qz6y1tmߞsp %6qh._?Q.׸=P8]wRT0k$9p .3Nޕ=x|~-بy'tN`A-ޮs'S0yJ}y Xi z6Pٚb|#.%Ee`49ֲ&ȍʊƊei+6 ԙ (5,4 ;_MzKCTĥ?T+Dޤ9r?^\+}B3<iur-3kIq>үefvq_* d>`.naV,Ulɲ@d m7BzGל͛ W"a5 lQ >2kH2Ɲ?/$:V7B"FB:V粈lXRjw;*s}T@ > ]&O)<EipQq8ia|*Xu8~q=1h_Z'PCX s6 c)X@0#hB vКr ۜJDkQLU`^2){e'@l~jH593Zӯ$2UD."=cmT5Eb9pt%$ϝQ6?ヱg+BoEZgR+i(`YxI.zd.u)3+߄c*@@vBT s&q\IvWV wV8\:JȝKs*80"I?0 ]GBg/TŦv QͤŘR?̻"8iX=EJNa)[.K_T|Ǩtѭl_O5jB/p[:z(f0)Vs 5s7/ YV7?s6gžvqsLf+jMD 4,YpU**$K"̖" dTWFBLT4 CXA;1Bʽ !#l4 *Xa 蝇չ_T$HM~@[wMnTP!W,z͘h\.z F`1;N#I#NMQth$Nv}[VO[dJɲI$P~^cs)Urvы3 *w-ux| QWuy +9/768.Ϸg$} OIBovs玺Ķsg$|+:Se:{r9P5 'N:(ro`sWAvBdQm懔9dN<2XNb|q;tiHVsOfBk$ӐT;ilp9̽j#DQE%tEy (U|k 0bC-MVQBCS8 ;B{ltpld{Ǘa SQZ븉23NP(jZjjlj?9QH4 ~v7.?QRo;r,tȗASypbJs1_'⍗"!c櫶cZ s D܍D?ѦQ&?8KW4E bf:Bu!t_e5hؗel֋e,+I^u!q6~8{PkD+')KyRM |TYC9::gkhQ.&3W㇖9j2Y< g 6ǛeSUf$E6: TDmpVJci`~$F1)Xu&iHEcEZ_U9He"RVZ"ru.@၎Eҡq} YSn*U"BY(D9[lt 弙B덁?hΠ.ۮ=%yU3)+Fe(C+wY_b3hKG =\s C/;XuIxK|aZ/ bk(+]C :17:/&E\.֘nrCgm^e5*VOpnIX>&NZYDո|N]7u8Du`Eݸ\ؠEjO0dZ:>AOK(-KMNi=ؖ#KH&Ib՘Ͷ[/+8m$Y-ȃCEP]]W,(-ҥХA 5)C|O7tS#FV(nJ $ %%:qU0A?(ۍr'@7yVުJqwP;(e1ڱ60za1O`S )۩3!1u{.L@9 \ q5DkUVCdh\?bHPU'<(3AOSwa|[~4 7ІTH#R]))' nW۳48W:HwdaBrWE/GK܇>Sٝՠ%ɏbEc$>Rf=F"[GW,d M=r1$־POpjˊEghi)h=x6R C*[4`}{w+6qp(ܦ2F̌%tKK۪4s:/%\H$k&֖'6fOؠ~RBoR$MC,|%Q8܅]Ue!$ BJơWƏFr;ƪ2wH=jh]Ec]#ՁُԦY|ع5` L[&(͵ި˅뺶gnneyk^5U4\u/''N\6V:&Jש-M0=ӗSa;u,XNE;B:|!Ym(*GZ@~z*Iwh9I-,W.M4ljԲphLpS@@Qgh }Ev.5P)}1xtP/0s=: (%ꮌ8+;SB6ٗ-vVqNفids:6Ǐ^ ھ?;^tc&G_*7ssȬ!BJbdI.Zꯡ!1l;/cN$E Upo,6 zt)y|8k M?ݙL"'Cˌwo2W۩_#;fX`֫Xkz9,(LAM]s K,5;Mx p>iK`o {aI?yѦH:u| ~kH/(k* 1jDgOװS¹Ke_EoZosL } 1 ߽/!mU_>*%D)n:0dQ`IvH+ d\[YvX\:Y%VdW.5 P#սN^meMW4:}r{pWK͍$Hzhy0_,mg|]ai[E9L!R@ZrT>2rޤ n4?3LIn=@F<*_WktJ-ٖ;-_. kg*9h!Vסo \yw;_𹧺B<1wuDl+w9+(h+PDQ_|٣h|xk3l> (1E*` *Ҩ8m[!Qd3 kEgsjVN~ )B# DVó=|q[Bf {sWC3?`MSEÏ؀p e >@J㇕4z$tuBUauHh $ﱻ[0^?}fz8-R@4+|OzӉK]b #gCɭZ7n;&b-E5A(1m3Ip<{ծZm)^Jm_jp}4/#^\RG6jM A=(٣$0:%O9peX)6vܗ/{7??=W8男;W$$]u$x#G8}pPZh% <%oVrbom&8Ϟ ?eF,č*8)0z]\2FQ+]<[EvF? ܠQA검^3~U-onfz0p4nn JpsrK֩VXNxB #hUF.s`dɿ0t~r2*8Xtcm޺$  `12lߕl첱s8H8QFd*P#Mb1Y&xU*Ud FЏ).mCPd $K4^F&"Dt kqXEi2Np EƬ|ǘF"[OkI[I\M=Ji?67{d2iPR%'p t>g (cEa>3V91ue'5H_j[nAH̜ jw׳Cv$ogD!%qՆK)!޴_^%Gu׋BN%ӽI"bst?Msoo"巀 .  }nR]3Q٨HϻEge4CwrM{5Lqy?ȥPFmG?eܗQrm`o q%-A$Vc2~H; Y;&J"1#bʌz`VIEIFR~Q>&E":Ƭp,Qup =)߫"w{? OYU@)&9YIx6"c땞 uԗ쟾 M˔GQjrd)FXNN|^x6Ebe9HWw:+]DU5q> 3Z] l >VZ[5z籇)KQMtnSҤ̟I-sc_[-3z{1,]S7V~=UL&V(Q}=Uuc轔ӧOj*tZs9̘~}d(~0ե ۺwa3u~̱ ǬSYp8fr"׉lPnߏ _.~2G}@gJQd6X`zқSs{LcUiJG(؝M,<Ӽ $V'~|rbK ɒC߀%Xak![\&M b(%=XjϪi07EhE|+ g(oŷ6d9o()~F wMTս_"1/ek,F"^ 5{ }H`WQ['g|<~yr$aJKiP`q}{-%>JDϹXy[l#?oDzw{Knd`:Hdc,dI$$#<|X㶗t uK0I53w';u|^])rBUqeecB=) M ecG\R\ZwsEę/; /k:ϷMݼxeWV$Mrx9QNHO¤&}Z:2"3oT32(^BG٪|9ڄrfN2%=V5 @=`*FYK;A@s5$39.7< &:07@N0οy| E~;f?ϘƭiɵmXe&!tISzN(աSC:˸| pcm)(E>xRN146ɪ|=tyal%fsRuLB6b?<2s|FF'WrJ֘& (;Öq.@)$q17s/P.0`?H/z*24Z_ųO0r=5:;K qNW[6ВA|0)u*Ft=ECXAZ^W jgK~# Of0.>[ gUZW)q*m>lNxc5f怊6za#*&^ʆ96a,cq)m9(^6U5`hŚ$Ah#4@G*,}a鲅bvd(.M=4^󎪼} 17nT<F=lqȣn(?wYh ¶K,.-O" \@"c(E`/85ps _&mU6RCS~{^g@&ȅ!V sD\m!NpCVŭ)( <2Z! Qb C 7@ Y:>96XҕQ:ló~ɂKmQSGS]3&(9Z 797y4[r$ҡx>LxY $Gr^=v߅#0j% 4Aw=??χTlRr`15x\ܽ(k ƹP0)osC慲HCsp3SЌS?Rf~<$(hӍd%"hñ%&fLudlZ/mq-! a>lh4;q!cP@4h˳soi"~K~K D$m=;Mb7UFJRvH]jEѐ3HOEY+T$é[bM1CbQ뒫h3EW:XLYumd,Q8's?XO l-9]#Mmr\B<^F/Um]n`^}[aiU])0Nt%^RɯP6\Pk=Km{.joB /quA0 z ݦqsJX(ZvS8),W빞}؂.0ĉc)h\Q5%!X#ɻ. TЀJ=:"i1L3H5$+*1g9-`Hԓ!7@ibw »'Ӿ4ʈ\52oħIעu&A&~Ɩ<4l'9{GS|lG(k>sQw2r&/dg17U& iq"´Jz%SJډ}~ue/n". f>@Qϱ4[) DwaQ2T(Vx\]~c-*@](@û_=^BS`rjN(Cڅ jJ51łiW'=]+5Q{< ]Vl;9NqOK⇑v{}[|vMLgփ.05UR${(QAGpC?cCSX&B{S ;P(B[۔.xRhJw7I^+(.36{Jqf8Iv3ob<.Y^z_!S%?Xbx_jRi[Q1Ib9FmKK!w4TQy|1)њGY=wUS/"7,Eppۜo2c4%ac ޳U;=kj=}W|ߔU.`R<\jFКy cTxmu5@5r+ߌC6Eku&v@d y{lfGw.BJK𳒛NkFe_{d/@v5=ƫ#f̄W&@\hw礘"ےaC,7Ri7\E9!0݌9Gp'n[6Wچ't馎eG9 ڦ\q'M/v!*rق9AyƘuN>zƶC@jҬ Yav- ŢiξvSiNpl\|t4 vd&OaD?T\R¿J[|i ml݊1gE[Wf>&Z~ 9F.?SqNlU<#N:P(?Jݧ!Pd] jVKge;ߦ.dZy!2ע [wy9%.˶D^W:xֺ{ ^rSAˎd<7駧YS ow),\ ){mSZ(xx?Ѵ,;F$vlD hνy&@p3qzrGMc@ͽNm,}7kUn1IU3Ӏ,<:"#xL| sA3G'>dI@ -*(%~e//)BzFOZx<`uPNC!V}amwkRmM xQNз.@JQ,ܭwਸ` K={y5Lf% #.WFIe< Kk,qG"HuJ0f~jNӥ =YVʋϵ5@E`OZa2VRSK`nr0Jemdpuy80H!<<tśdN^Ʒxr<-/ed O^jx~!fe<Ɓ*ye"#XR92TH_{nq!QNް$<͐Ͷ:O U%AybRd/q4O6lsmV:Oo|ʇ}TE5u-yh1驗6Pq3˸ʆO2WL[O08x兺ָD܏BE#!'\zr:ɳ2 ّ7D8wctTac6ɇ.y^s#if cMɬI35:2fȟ3k4>opT'l|&L$cye֊ SJbdsbUYF1\̎}rұ$Дޒ~-I;Qg'g+6¹qZ mLBo| q1j}ɚp>v! N>,#7\Z)MWĿ H-_v$LQ쁥,үN) 0ʏ,ȎO61nv\T.߹}P?*_W P\I,ݹwj>Z^eQO6@%w|j,b,~H+ Ss5k~So@~ 4^KP/jAx֮#֡?!_Mpݢ%p{'Q:S9$ε"Ȭz x-cSHxkB3`{1၅Bp1#hl 8WTF(4/Ü78p_=ڹCt>踐-v&곢A7H d_gG7O7G2ѾC] {M%1͇p ;ӡ .3uwL [ȮjBӘ:Q  F6Y:h|^lYK*õ>cqhY'%[ۀH]󍬣tM|27sin 7 ^L&:a70[H6ہ9ϲK+'PѲˣs{1V}̘δTR2D_ѧ#Wk1檮S !fovF(SuVUx\b۫- XjBҞF| (G!'S]f B!hy;S[;+$5z2sCT K6#A[b'ňu=/0$4y*s+j9*0ia+ <UM.Û vvQ76*iZE;6.ӡgsbC99b.38ʕ[ z  #;#4\ L^'ؤahվޡTD)=j],9!I|}KW9g-2UMJ{l7#h"v+rHݧQWmj@_ԙpbj4GS);2{c;|@/L_eRcNV/Gqq#Fh P)d9`7GL7ہGQPW:NYpSѨ'6BsJb4;;xΓE&%hlٴ_$%A4.Tz&\4wP!Wp`^ܒv.4AU_ȔX`?^q\~YnxHmgBNTs@kΊ IGFxm\uzfR6!oU7P`:ũ3BWE9ݙeSw+7I#Np,6,fU?H)eq{+E k56*J;9QkUdvm QG"`uۭ'В6J9:imz~moKv#%öY~E)/a}9pQ;{4]_3́s^zGr_ԶnhzdP^ 6gL|_8#r} ޜd_8QWDz :J;]v!^cү͇70ƛirLYUYUQ4-w% Ngӗl:ܰ\@ݯ89ժZg' ϰ0bý6NlƩ'݃Or{Gԝ."$=Ni'#H0A˪] 7>cLxnsS7/ wdMz_~cRNZ̓ -j?r]ѱβ,bPxicn:`뾄TkݦG t2ފzϱ0KS9i*!OّeS9zd\HM"3 ƭ$|YӋqJY?\;сv)je+CԱวPCa)i9o@sBّG@0'?@.Myv3C0lz!CFH4mO{:ɭEonŰnvԁPyEhQ}Tʁ6Elp0nN)P N684-3(Y8%" =ۻ2ҥ_?-CxirhؘD Z}`:|%t2Ma,uة^C4B/4TQ'_G"fÛr~x׸jWu]j KD-p+h5>T=?y0u`ʤ]9&?#* GdzkPP&-O' NzE6DX$ [6v ySb(BR,# NO^8 H-jߏFKQVo*LҹgUܕJio_5󏀤֐OuLe+hдu#Jͦw)q ϸ ֒(K*-MQ͛fI@'? =/QShNrfʉM}sDsumI9HÜhY.p5_s u n0$]*P-і>&^@o3IU=겠&N=ʾfm*a8q)3ܧ%*b9I«Y@-Qv dUVpq,şvx0aK8a/6d|A Iߒ8܍'u)?. аr$թ,Q?oVˠozK-z9$p:y>¨8:?x!$`Xم˄7@pbVN(Yߞ,-cQLIGo::mHvxK+ne4@=J2-PͭX^YM\O1v8 Oz+mS.ڿ7'H"!  q DtYZ)AMzPnw*sU/`.d>'|{4ҽLu,Q/fCg(tP1ni= .. -(tI+K"@Һ=dr6Hޮt;K*)틅2 3Amh:IF:F'CfDwyHxl{ o0IqDDߘ?xv ۢCv0q0Oߋ L0΄H\9vtso>_|@xD?ۺxcAmچ)" 0R>Hw[(ܠpS`FiGCL :l ~u oQL0-kEIfrQ1AJӢQ(NWjWecV朘veu  ޵M=>]`|]5Rv@ V~:B?D%;rY50{|S؋h |O,UcK1u# wQxrsUrvOnh˼}O}{q(epu+:DA*(G_raA,_ |,5H(_^fJXq*mju$٭fZ3z$%o4g >xRǧ7GY*>g)O$(ŠVV*뒤ʄ5ːK\#cJ6i$alIDe-yT5Fl 12(-{a뛴bl[Ux1rMϥw9l|^|cnEI&j&GǾPv8b,dyXiU^ ӆbN^e(M?5)SEaWXvcoD77 9~R-7,V5#VvSv9<1L69ǞzhQ1Q\u :Tov}c]5`פw-i0 YCyQP9o+鲭/a bG k˚.G(C]ʽ. Vڠ;=܁eU2,“/a2Ƴu+U^L*H_ZX~v{rFmBD@[.tH5?*壹' ߃μN#a' A|?@T0A˩% :hy ڽnjKb Ҁbzc֗Q,/& t~=6n,܀ךCtJ̸q->5O$ĸ*IRR]W;&@K5j?-Z7 [a/%dÕ?GnMo}P眦A ã,#§3K/!2b=U4A50{+DAy{r"j&<9ْ4w_ (EîV[8N|/1hWѡgcˬJ='jrxsVM-'$Y7pjVd%RU| [#sRp\YkLwH~ _ۿv1*;odP^e"oC`+7"GH혐Ifg?ܪ!Nj[IK)/Uߥ6L&Jj4 8, .{1qՏY& ~׵\Hٛf!;#+XηU?:^<P!M/\gK5@zQ{q6$ȑ0O%vJ'gft?Wϣ-+R.+& l;qȨ'|(Uvj}ΨI#}?Np^n"lF[Fk=;y2A.t00)=HM@W{?(%{!YG kyD\᫾w9٤ٝ҈me J%g !zݿT\hY*!2Kɀ| ge./s~Sw26'}TzkyY?'Z-:81d]$J ^4=2|K%_8<"ZMn I;1OCR1Bi~)-VF6v@*km/'XG#C:4?:~Wg?>-zI.$y. >ֈ~\xT]g˹>zkdb-$%)9O[߲*8KvF0 ݍ!)(e$Nl~&^PYd2Hߘַ]3Mcn7&t;d8tqAgo!:v4l7^P0|J,OL lMmłZ+u xlrG4H؟94:# > %Q* e/4p`cC3Ԇ^4~ԏy*\9ZJC:Ho!R]1"3uQR(4m異@ MZ_b*6VId=Q} z__WsaSly?e4a3:KC(2UN}T $1+$Le'OFm)2MIPx]8nmQ'ŧ et ſ쥭LO܀˅erBҙ.ǬMp$ۯh3J`9 1{+\OȀ1<&G0xKn<Ʒ?@N #p`Pˊ7t\8b[Z2&: 2v}RxIZ* xb$5e; "x,~5'=?m9b!NW~N绞B)OexݞƍT HȞ6*5HLй{uHK'5ث.<nʔ Зz*ӿ≭/WmJc\M Wo_mQ6d}r[ƶ{K T7v[Ñ:e:BRWĦ Tx+aSeIU_H߆m 7N|[skvvԺt:.q`:I6?e}n# \a$:?^|4?5%?'i|t ۂk*F% ͖:Y ÇM4 nk{;L{ۙFX#ߪyYXwÛ.7f ^$PJ@z.qimG0UILnm,z2 b4HPv`d;j(5mp{z%.ڟ.9LJwYC!F^$1:P@ Nw5[mC^(Jf7;`o$\e>Կ_x/v$3 ׶^#f "')oBT, j5$/R +cUC^QݢX!>J+j#7PnB}Yϸǟy}kzm$b-eomBbU%VN;}},jYA9" ?.= #Nz'5nۧxND1:] P:)Wo)&:SC e%J ǦFhJN Wg-$l?a tY o8Wؖ֜SYDى1Db n16'8H!V1;}ךm7z/+ԇ^5ƊlJc3SD/DsŃM_u!$m׀ EOy +mq\YQq8OBW_~jxMw9]fǘ#Π  EsʂCq@Lo7ϛmA센rWR,[['n& %]vZX鸟>;*Nun9v0:W֬ ~ߗlΦ jR/pʥ/=vjR|`OP;cn\iPTB&uQ5XqZrN\R-Th ~ UA&]ytg X"גO^EFK=qaԕ܎c,ғB_g@æ+bC`U= mg7''''ֽ3_2A\iAbV.#D>\G`1 x冫D'6&P`j_A5*\ (mwM[ZJK>{D5#wVX$ƿ%dws5 <&ٵy&eK`k;9ܳ@ӯQfh/ʆ6I\&/oLT6\+hV`!CМt},=&j΁1*0PQlG7f׽w2DȍWG>1cW (`]X` ,M՚-+&J;s}3jałیTtQ* 0گp]س{7&eĤL#A\F4Zw-~Qur\cV0}F0:U;"J}gaK[.5J>]j/Fk7*' txFe{J LPPLt; =MFfՠNђ4T;*íԋFuĝ*]i(׳?K<0hE[ڦ/[f<. VDmt3*8pl)18X3C`gP٧zD-bRGJU,wGe dX4KBSwk P*顲+-a~zaa0eViS!C=BNvrvX@m&ml4F*[n.%w+\-ѥuTZ^aϣTQ,!.o ;ި i_4'+2o] Lpvz]޴5XoQ'oU {K_0]Zz]p9y$eERy 0n>&K3bc&o'"mΦVCHĝ~99#}"RSA4IvVXK"uyU{:,<;\z%:0,zkչ/!drͿ 5V EnP{3N0hտҟΰs9{eO@C1LiLOT7ચNF.'\ցnkiۉhv) T'$88<:? 욊QL/F44*mɵ0S LU_U8' #NaK6A*) uK 45mn]|-ű\0PWuڐ%~o?J7Hf`v1Dǝ_#_ y /[Pؽx}\aI3}KoݑmxO /7"aV3O 싪~3jR ™ل#UdqC>H'"2لx}?>R!oϨ>bw =x0Ԯ:2"Ny )`JSbvP <1E5CY|8WH0[$ SQ/%^xxl3")fgF&x+0 d]մ#)r۞h"M;1Gzͫ(?MZ Dc t1P@:Rj" 3NN·7UwQu\hp .*잸6ZW7M@gJ^7̠s#YzpIF1\~pZWJodr}?Č;/LU%Y b-]%9 <~6]/u\hnh>EH85!D+Wg/QgIm%5aGTCFF{SO;bAR ̃kZ!0sUOI4Fc]%#D!ynN+7vq`՝ ۟ Fa{d6Uv|mV-@{iX7c^y`JF,qO҅z/Jljv:k7u'x~Q~/(̨ kC ?(Y,?,볛GC+'[rـ d.qΎ`^fzhBhR=V'%'~h!si*!Ɛ*\UB>NnVL7 t_2J)?HP'a1ClɮezKEF{nv`]p eNwl <*6,oH ?~'sr'eUViV>7uUpzRs-"u?H0 6aϔ @ܯuOEj{jY1$J͐MEfUt YN_G3l%_V(qMm}%}Ӊw.a`&Ӂv^銠8Z=-zRG7#4ee+C}Y(^z^̠XjLCƶ|1qE;TV-}"4G"fZ?UHTj\6DlgacՊQI5y L?1H^Ba#UWLoVԪ5kmQYG߂*^jt@(/a$E;am8?21(:4p0OH/O6(% t{ +.%⋔gc__tscʭ䊚,yZTGF'.g pZ "ǵ6,M{do&3^oh(*=#R2B;9kMC%赞٨jR!9(!^ z̅$L 0 irAra?%)7gY@c|} ^ =GxܶQ@vTa? 1cqpWJA5EL PZϵ{tr=ݕ|1InKwYʮF3!KNێK}F 1XBaex}A&Ҷ6fӀ@)kߊyC*3Rd=KYu" !+ƲʈE6n2OhV́-bnZ­_EZw|zKoGCM+cfs6A( :DgWY]z }rz̑tuJHQ~Sɢ kclbx4WxztUAϿ% L^R/ Ϗu;&h#7 ` O;7~Uf yhW 8KlGImJ'DѾ]]Pm݁O ֧4G=oZ@I 8Q^`=X\@0o 1ҵ,\]7Nl ^Ժ-l 8Psm !Q=& eȈg=RQgue-&lp뚪"eS7 G&5\$G*TKZ␯\>;3#P(!@Px ^_E"g>/MpRx9fcz&b ^]/ZԕjٞE׳=J`5?^&LnTMIOIlo #[`'FLCK85"!]CRR~ZFžI}r67jӧ{IG5S$@S]`h163YN[bneڏUW7\~c]જ@J#"$c?Yt>?\p>$*=L`"BkS,𧶔{ aJY1fQt`ʎrZU Csr-? M?t2χDy)Ԫp3[r^{>cƌeZʁ3;- ${-Gl^&<]N-|KNsU̸&G&JvJ./c{*ƑaxhPRT \GLSt@ 0V#4!ph" Xz/Ʈsc)elvg6ĉFےtn\⮘΍ߙlSTmu`p>=woo<%>s!Cyɖc I } ʻL&T D3G@l)=[3x.7`"%<\o M#X]bG=dic;Ai-[x`o@=%?/pL)9騱(Gs?<)8u/0Y{`l^* 沫2s怔VHJ} 5u\%onrh6#>Mm2RFXEfsIey q5UnI\@`%*Csٚ*P5DGE(lґ¥yQݓ좶:>r)w.D"q & ^J2.wpH\!/Dj4yP6/ qpR/鹪=y.Wa@n'3Ð)92.Z\npO\ WG0I/";YjzcA'(Zl6vS")34PBGlHd䩍\5'@)/A&p@ >Cd }C7 8F<[yk O:_PL{+QqI~@@Z5+ՎAϢ#0%@a>\w+bj`\u59%0BpKQ+kN㟂Cs>exu!-k\$"v’$AZ-,3m_CIܚ_tW϶vfn)_XY1pJVfێz?s ՍÈ|+/D<)=X2Lz2|3q4-KrM6GO-fAzWm@*Ug ˢ~W1;JDJo* ª<䏞zν}HV7?%v" =$e6EL^axwV`t]/X{SJ/-ѫpzwVУq43|_ߝv /]T!`F%ʶZk&82 LdI b\%Yo!=k1i-Q 7Qa!v]6tWCY3 Ҫ<6M!=gۈMtƇɵ-L]' (SMoHpChx D6#4 #h#WItn#iy6aShHbg+\TpGy |[-XrAQŏ ?8=T2xmQeQA*cl8I6ӧ$c"99q!XI>{->>i$?m)L_M:2'iĔ^ɮnޒ7'=!WܚmaU1jX#+ýM]闼ͬoX 2(S٩tWeKཐ ayP/Vu6h;.̏ Ժ/= $]&tęB 1k`+#4B&aIO)6M-#S>VJ2źC~Fzec [SEPY)hjL! =~!^HamRZ%v1h4$Nfu4F z7)fN:fc<0S4? &/2N/JVtfO&fPжi1I0V>b|k\N?=7kr7[n+0{!ZN]R1H .ylKXK]Z"bJOFI8AŭX4)2 _IH6cl'Ub}ڥkyq8uEXKFϣ۶aEkip4fE _ wD(CHW zbРOW&ЮNYAjFdfJƻsDêsI2jtA~y+^PF.( *DZWX|of-- u^m>q0Jצ~dw: t!ؗ+U`] :"^Eu=[J5 2TxJXb`DYO߲]БW}F7 gi/:5YeEg72dr?{>ƴ^3[E%oӓG>0s~ȥ{I3{}p80S>۷a|>^O)O\VRJ Cv65`Lߊ6jO;UҐ66GZ.Wڢ-ԥmXkP@b+2}*+1E Z+ 7br3<ЛpD_8(fG;ZVg㢭|" jdx6?'M+4T3U2 7ҫ4+l?bE?1|B4@5v/9Uط{oГ}ȻF[:x~$44uO؝.,](0WSH$?ʢO gd~?r_$4ęC%Ȩ'Nچ.*w=w:+ҧzd3; 4 x;TqeZ'w,X%܄Mkx9֎8zy+96T e&@ܻo6 0).# 4GcRnj,vc*ލP@K6C)ϣ,BPgadZwVAs|$j]@{`[u"9֚vh_[t`#ymދoY,AҎqJ~3?=j]|UOs`L`({n]o눂N6=ÀhJ6#4`cS$A ϼ;Bgli<,UEF<Y>ѴdH1J,. PUPI(FjR[$G6vF+ X@%;^6"4l+3doufnF7pP1oy'ҁYmgjA_/6@ 1/ RqZ*ep4ŢjB&ҙӕp['84 r~"UZiu&i Q6J|XKa5GBdx9C䁹d`"{;fzK-v+GVkUVFrǻG(gR"Y):7){ȥFσjd: NC *^dܚ+KܪcJ̗O|[(ƥfਸgڮc9!x-PL{zO8TIi 3D/΃?OȞǵ=1Dw7~V(s3"D~K@TɓRMkbU@F:}dǪ*O 3Gt2FDrIS m{݁?ݯŃot֐@kf#ŷ> ]d;]+v+9kۙ8~#,QvA+Djd,̱{D{SU\'D W_cts=jÀ9gb?Tm#$.3GM ׾*z$DM]cDRAS=G̐ 5I3?ϔ 'd.C~N-NM6Hx~n0c\puOO=)?f^&-XV?Yo}ft9?/7 fF+:0PnJ`DO@T+88}<~"p9hE4H͝fy@u?喪HW<#rZQU' MV yo<܁c[Ӻ;_^;kbL!>>2Fԣv]LFA4 b= Iw(0H*-A ТHWgğ2,'oap-Ѩ&sU!uw wd| p!GTO Iw-Դvbg?7-Bv@e=d.&<6j0M:j|&v#X7 - 'AdD6vFІMG!PYR" h#Fࡧ.ȕ6Ùf\4ȜWŷ魯T0y|RsTUټ+6P&^ois>e~Q/@ |J5MJf=6AA{ =:QC|h Q ^5K2B$屖,\/ܲ\a'LVU$4 `,<]$r],Rm"ZdjQcnJ;)^`"O@xj|ui'E%')~p<*GFcɆcwqU5W:\kB%TD-p"/7j-o̹|'+ BLhOr==5c%:6譸ʋOLuo F J~f~{ Vf5G9M̈w] P!氎ZEP1uqOm}Mp!NG굾UI~MB't ;l>A>&JE7^u@ PihfЗ a2 oQ\ϑ, Y彅'P9JAR[E4m)\Ǩ/#4_xu`luVl(T,lYxD )(i9EdL^sK3[]?XΛa9S=/xWPCk[C o!ºtSbVYPw ~q9F__C0#1-Jx G#Z+Dym:wYBYqv4 p~6Ztl Y6!CŃ>rZo^c Y _vMp t#?]焊ǿ(+,GBgÜ]#9WlKpa~W5q%#x jHWz5[lRLEOXd:*?YT¿P:FAw~ZmEeK1Y铻LE@mqV7M:PeOP2{v CrBmGto ?erB\JF%KWm+c9MwϮARg)j%/w4C voc|LJxvy5_n,B(v'gڅvJԄfl'(>'UjZj^-:((L^ A2+q]஍mNRW\Gy R ? { _L5.?=>>MJ%| w ]BM嵱1ߟ^lTy-9@ "ݓ8#FʮӔtlYt{Ufexʌc$$-Д/ 5es.Z0| WEzLCtAFۅhx-2cu:+|ۖ^s&,+Nl֗;%:n$Rs7䪲 PI$rri`j*>N[S`,m ת+,jEעM7,ˮY=8 wnI&w ݝZ1r/rzj`e$}A 3>!|:sH2vT+'*< Dg4Ʈf>ݝS\T4RҷJ-v+zz=mᕛBA1+a?;9Ϥз녝Qtzx\r'erIlk;_URH[OXHLd䑫 B/a/ߡ @.~eژvUIZo}CG8wG_庘XҎk >L pf+ukZ'0 2TՑ;w:i|n #դv ~-@\Й_]ii) GOvXLkiƒ ]"q=,Nt305eVҷi$>!_p}͝)y×AX]BShJ:D; 4w3|(BA'Ƈ? mA3j> ?dmvݳ Wζ_/C C0n.p^Z&S6[%R?f$|$ar‹9{!4XD>R,?qFZ\ƈ#kғ +~muJ/D8B/ _ՂVl^Q$J#q@g Wҽ܁ޮ8\qZ ?$| fmv *&[u~qT͡noQ?\BBy/Rz #lZ,ўJDuY 7 p \.^#k<;؝'%UɣhE1F9(C 3 \F=c`~tTT 3BOSקi;Z4bwc^gIu2j!)~I|CJEE DwyC'IQLjo)aNEmJ\.yP+~\/wuجWWQM;Vb7,MAVF}!d QGi CgdT7he(4!Wo;1@^Ѣ-l; .~r?fvx'aۃ<{X4\p;# 1h+˺Y*S>/"Tw}EqEe6Ti;9EfPKh5ҚYM#kfd#G-?X?ɭ΂K"V:C>6~:;x1lLK\@M @Ԭxf&bJ' >!,=' >Z^GȆe^U|+e-M9h 524#r1UdltWH@G;4~.eGo㛲T9q,^l "ӺVv2-RmQIP"=\~ "e3lcGE R(^I^E5C@q!h,)INk28G @?PKz%|A\:$+2TVөu2QėW/~_?aC<`mG!=:Wf4CW"Չ>I,*#m6$VMLp>&OIx7X8H_jXh7 k)Ϭf9{AczfV,Y4wU 3W%>Ndݗ?r[>3"mT:(| ooVkƣKn\ij'7SORP@1#zA9S:2э|K-\;n+6"N6`ohsDc bġaV"C_Ry%_g@~OJTB6ٷ`#3(췗8:3GG!m :=P#ie^%֤#\ '́IՎ0&iYUENT&xEUb**|vzq|SPxRȾD ҸDemz 51'{:{/DHp\f߃~ta 8/*kIRaE_{H^EvyڱC mΛ_MVПu:y7K{ hV<_ϰ`[LD܎)q6Gynua*1Y@ >>_>YpYŎ2I mt-> .ObJ)Wo}rQJcP蘟xPaG(Nhe]qzUCp~0iL4ygXdMZ K48ӋzTw!Mfc0*P eJ#=ٴ7G&lOTzT('l>cq۷+F &*Vz_R; *p͆MX`'RAV KYh@Wȁم xtb,:imt1n˖l4UHRu  XQR{~Fr s&xA+ qA]vccJ Q0Rӎs?p6hO%KǜLkAYy&M`Ԏ27y;Ky{;Ku9"N\e8h"AfbH lIA#sHg4nF_$nFgׯRb5r_3'},"t}2*',*Tb58s'FElD@FhQ,f[Fͬ8ZRcj`8kr۴Dž\o̊x79je(S4nΔ{85JjAoJl@x*'Wun/5^qΊ2nMJyբ8)x/s G^ \ϩ6B߇i`sr۩D]הUrbnx ZlbQg/ڵ9zSLQ!$ڍ!|{[h`ӟ -.s4$s&ER/}Vc$~\G4&(=1-Wעy0L"UO iy485wgu MO7,Ml u]Tq55 q#XdFAWvkM9U75jX%bnֳ %stޏj6771pk Bg#DC (ScOޱIr?z@(x-GTT Mq0hn[1Nd3xib!9Âg^4-H6&i*dD>0ۺ.4sp0xot:^08G#iJAzF Q@-8ZC 5yV;nUNcOЩc:} zf 9a\Zh6*×& o4|V`|(>zVKh9\cY{?uދ☼ؠw,e, 6GЮI+)XI__ڸwV8gm73EyVdD0Q~}O~"gV̙Zi~5GG2Ju@d+̉f7^= DUXMnr'H)KEJ2^XF:&{fywX*/C<@pz(=Q `O 2R} ggE8L?X+9WZ1i_I8ح|=l+m_u͒Zw&GRe;p>S#n1e!rrEj/9snq=| OhN< [nT8%4_F~yU׶UQW r>ؽ[f̵` pYOrOsS͘HobWHv }GK):*ɫ^MP cfބ ~0VA?h S{>E B?VE:r<:XkGlLOs:0:Zڸ!6t6q׮Wm'Zx~]/<+0VJhz\zqX.Ha[x_K4[.X/]iM\E{=Njm z!$JQwYPkCmNp\h#<&lE8'[v?@8Q$T 4؂R2r"` `Ϡ8b [ Y ]?>:nRa|}c*jCm-tiajie`]]Eϑ#2d1ՊOz\);(ls^8/==A1q w#(x 0lmF:g[٤-]VfE<Ʌ+~dDvyaep)K{H2|  otzwoT K.۵&.u q= b*lCWd (~4Qs. *X ؏ia/x]=K!܄[J_WyhC_laha9rw> z 9Os`i&T!m<@uXy:HV0`%Ɔ߷ͬ(P3V\E蹶38Kšfg"[[-׻]))EZB f@ (rhur62 [Iuǘt|$mgCGvN)yYGW+:7QϨضsɂP-!C!D5qpS" -g G梀쥜(Q< sv`7\0V,&LwRX0~$kcqYvGlשʚ*&u@4}ң NwUzbq{ŠNd$u%Sti-}KxȰym/OGJ(OLt(ڶJfc#BB$urEWm8qUhxﲆQs§:.NI2h9pVc%ETc}Paieuj. jm<0 hWD{pUc;M0c%Z~=)WyIm-Vشe՜ņb[DVܿsUgy ZS w:9l AUD1ÁO̎n!aHF2)8K뇝\4?Y vvԗ\3(T…Lo!DY9Sn3xޒV=j|Y @?-oXM%%tGBfҌw|Vw a^ ]NǰXcn_H'}eT[˳ ma,/_,7\ߛpMPq-BQq"Up?Pl \$<6:a4+ń8YPk-7i!^9d])hyQm~}ߋ/1v$b{BdFWL9S #pAZɩJ 6M'- ˱l2w(G\DgsCФfA z׭5 *q\qovbYK닂[{QV,cgbC4Ȝ|&DD}޼y"-sIXnxMLe{!1d٘<IȐTT^PbqBs*9PW#uJ:s5T;Hqc#4j%5ϐI4y7?i Xy2DNd0/_.xbpQaK%~?rQpopũ2QD-W n o B~vJgRoHў ?t# EnԿnw8J'EFa|EV~ծﯘ⎮ :|OeD:pH,w^L J"`m$v:QW7f@y@h#=Z ?P6pu+[ dW.SvI0ٴO@HtS#qW3l_ۧZܑpt`L_A R75ޱqf!$Rvi^(pz,K?,f*&:,K]H"!LPNB7j입 _T7khH~f1/\eM_iP!(|ӆo̞풾dzpP4>&4zfʼn MT, XzI>.I:AͨE(H M)T&o[\~rL4C5u'%o{U6^.,-YY?ce#Y&˅-<7q'Ayyk%t1KCZ ܠWpv*Έbaw&0y;/^j&g*_ڔҰ_e.9u0bwk^~a\`͑:2UVl!KRcTFBDؿh謽_2W}zHrjC Y@|թ]anoz5Ʈƭ3Lk!XV:],~ŠMO'\Qhj*s3ǐBpsi\9k~ Ldi}-^DoكPm(VEey9E2x q%suDNӥ,OiTFth1A&v:O!w&n ;5Bp<%ex?#4Q*ATInfP^kRΓ8pw'lq<;VHG!PqK! zz?ïςP>thX%L\-,ϣ}b':l.-1\ʀL@רZ'״], !k @ևR*QEIᖰy (gb"FGG(? bks3&#p19;3=o纭K:S1>J`\,3秗LHmjk(D,'jK: XwɗS9OTɚ]Ǻr䧦8yۼFݕ}g<` n`; 'd&b_c?*#Ӱ6KKloa'a+9ԝ,j66D#oV t3^^~] R)ѢܭTHrD8"rq˝:%1bZmA awwoڴ_ $S-\"/%nBtbUF &s;P|[aOgdo[2 +.\ )@>tn*t_k6A:c8\0^݄ezs rIJ DIHexG[7p]_3ݟt d-h(O nl)]].G v)4lzPYqݺZ| Y2 ze+Hc)r̋2&8n<힂 8 ߣK&cf%kyt.ߢ8lIlM\\Ae(-cTyAi=WqO AU= 7p͟ZdaOќu+=]0 kY;E6 ( Bao[-2=n~-բ&D]c%MABĵ_nel!-BZ)z͞F&bIThΘ`6;nUmͦ- C$0#Cz&PUNDIha_7l2Q~tzC4mW= KӀw4dCdG6 =/T>V)Fr?LKe"WcS4L$K⦗𪠋KCsRyaKD\[s@NUC5R'n\"zIbgFdta hQ'6V@ZvaԔ|lAjF̴J\[ Էd}t_ f zQ"C~iAiLmC4d>.{KpDlVVTXVnEwj~,|it2tfdV!Bz*kmC6JĆLm+/%EO7DxERY23<})0W 끋qwJ9q g}ﶽZ2SávBn[DhܠH'Xzc#J L3j,h5|vX0O:HluZ$_ A,cN~VKM?i@eV7;_t_39IMO|P(2)0ć mJ^?*%=shԻoY22+a` rΝpp>s FN~$e^ .,qqo^oЎPu|_jE_釶Qc*SN:F-ԡ:q $]){)w@OmgMI:xt&u38[N{U5}S{SF4qt$x m^g(n%FǃWsn8QEc'C_kҲY-ک =еDLÓALl "f|ftV)#Y&VblK1K`R`]Tlv2w2 neDRCycm﫬5s4VZWWfQ2_Y" Ur:m`Iz$J4,x3fmY}R<#5AUd$?CDu!͎5 s%`TPKPP3,Rlw iU9#Z'jLȈeǥJq;W[xQ>Gޞ)-d8uyu>=Bnc:J^rAfU8+HOSβ-]8_41OEWUʸV@76A<#9(#86m)+? ~> }ߨ܇qt+ׂ CfqF6RFRshVn%B,vlNQ2e7zm?1_ج"L82N֤SAg3l:^g4é_FbM7fԍ4@_2a);C$-E<j D*߁Bݚ}C)3qwMS 7rM[ۀ8pOcND"%m7ax#BܴR$^vNczKO;|ͪ9VV $ŻTxk|WVmIFV\ҹ{Zkr@rG@m6 ڳ2?W:myCQf5{౧#ӱ}o`4_DF+kcwӃ}b1fA!MXve);¶a(?L&^fFiρ@meXk s4c.q m0B!|BeOAD tijtz7ѩ|.`ƒ$]c^LPP h;ׅ ##T.ZTMX{f1֢k! 6%i1m{b9w%RY"rlNei}^%s`Z]m{|栀鎲 ǠH{r@_J/IqP'Rk0P c܆vM?QRtZݧPGůWOXexCp UyFhORBmW~M ˯8 ykΡ~'WBfJyV"Ļ}.9CRY\#1ڹNů&C)rABFmGE|gx;q0hs~3cIzЮZcG]e CLe#]'M[y)uS;uN3(Mg0=_cØ"{IIB$ G4Ankp%PkcAow8diF%I(!1ImgpuU:V79Of4!LTÎ2>Zjl HdSR7ixb#X8쥚*)&]HUz b <6Sǃ?i~,LX}z3 H"%IMJ%_C3)QΝ]vWxZ~K" :hR%$6=3Ev)#QUzb%I1':uW*o_*^åd^g|uFyi=WRk'0)A3qV^{(srPgs~XX`i?wIPZE &@=I}n ;OG,ؽjU9*͝Ѕ1IQ4bD?Ǔ=]˴ŀ~+.M|n:Z3J|ietE!SPב4Apt:`4D&R}Eԡ+"hf470鯎Eb +NCUf*7*Dd9v`ΝexC;2{::!ư O{sg^еߗJرnP6M"7y{kح@3ΊX.l풐pxǥf!mȍ+=mSy|$P~yh,\3+$c bsXoa'6QZhd.-×,v(P (] dV")sUX}$jw+Xw?^RL. zS;+{y*=[kJ1؂A=HIpBcUg~P5ϡgO.T[@*Dtg+M@i9зPVzws;i. ҹ*Iҗeˍiz5f P&fZ/ :/Zp+O<_ž(}LQm(JWtf7=*F+-ebF}!pkt2OՒ G' msj17{3<9^_5@N/=3 >)=ϊTʜ$8:] xJ/[Sfgn>pTOD2}Lpɳ%=C[i,x%N!<#K)\v&ؔv ԵuD^sX9|A.Hڻ=&6/d'yol#6nj容&:dJdwDcV܀Ɲ #R"u;ń/gUYNݿײzJȔ@Ͼ"Ѥ?İ Ȩl-W@{W:_fw}xMC-Y d'ڗq7@8x]ytK:@vmkC^ ua8y Ƽnw~ t\#7d -Yn)jo_fݣX>^]%@'yX:T'Gb߻sډtLK(׈l4MMjm5dV*ɱ#*Me~,:^zB,s ^l< c|5aEy$D'҂lE`۱뱊bذD+iaz釙,u k GϷݜS{>3cmr,Dqjr݋(v=,:­K^.0VDkev:1` )d$[IˆO٨ ؕl3;4BjzLhDzַC?7G{@D'PQ/tEM zQ4oz܄ G&1 (` mgqƕ16m`¡5prp@})Ajv-|m+ ,jOuhlŕ ]ýB# 1 =7}R{`s2I=m)[7\9˂Y/&|Ɇg91Hp{HCZi0Ap\-#K #nC$ '17LVͭImIazئJs!F<-bVR6ٌK5 .|)w:A5 <͖~8f6%rT!l1$xzc65]pf?U@eS}/ k'/oZ*%)KȤn_Lk hIݞ>ɬ6.[ {HhF1@:XlLſcrYAYjGv4~!&%[ƋWgLVoE{Bz2\U7h`p WXލ>(axgHH& ?(Dh@{jxA8d 90lbq5ߛ4}]m6ʔZ=P I-AާY^,(ϳܩ/v0CNqy^[.vB SERPh|{DPap8#T12ό&hؒǸ\Dbo4c묺fEn!Mh:AB7ZL :)4"=u@-hJ}cǓ% HWDvhoib_w嬜%SY NJc+P] )+Čݬۆ7EQ_&ඃ7#Ny@FJ LUyy@郄F PBGIfTn~Qe"מ3D9@P/AfdQ]<#o*1 3oaʩTQLǂhx, "/6kr>in?PEoSiXsr۝hq3-DkEctbm~(X ㋌OOJmvadQ r\ѩCK@cO٫sJXOI^J?kh72ݖRjrHj 10Xk/Tݾ!do"`zOzBϣ;.­Թy"8g㟦)Veho_{f 4AAH=b6bhD@$ Ⱥ*m®KȢhrJO E,o[2aÎ-HL_^gD ܳN&._KaȬfl&O?z04$`OLsk~ "   GPE_rO5 *zȢ{Z@Fz~RZƆ7L{gD $'#5#P.OUG~pLJq֜=\b;Q:#=zI :fׁwٿbj+=%l]:DP"i+߂Q`ٓx/f3t&l x%djvvGYv7UTrUjWU")-'XHB G-^dkذt,2KR&y-%;|Wd#KUב؈&_!Ǭ/8k1yaLǠdG̳p 2?PN& șָN V4As[s =kcD'~3?`(A(ZѾ?{bv<-ۮxl@q. $=jO0*PջXAZ>1"C*S i;ojna*wIˬ_]Ndq#բG3gJD3('="ZDgirl2_ A}-C ۊpRov(k3s7p*l.JQWڎ E16GvG谖r _W}VRӱ/?SfV$|es \L 4T#'V3a#0>ut%⚱G5,=Wo VlN? H!3]6}WwM* .t) b&8vQ'dz+ata4YFQx΅iɌAl]Hzr]Xg38>rB7:O%2%@ɴ olL~"Olp)V$- [A"L:,1,/>[x>09 3#, ..TDPR]((b6Ѐ zJ#{f pux!̀ DZd6{6vnJ5 *F 8WwЕ`ER/y r%__X٢-ZD-ۂ=ui|/ƬTn2=H?⻜Y=s%Y >JD̉w.sƈ@OSzVmw611Vt]IL3Tl/o&  NFZI|`ljb.D~IH3Kl. &UyQ]wn;?m7 ᡐ*͕͌L_qf]J`"A:({KjBKUuyGt)'en/ձADˆpMCUP5'٧R/vz)F)s3g/Cb4?$y(`7+^4Ev˥? `oݮ#Ԋq('Gt\ C? .#⽉Ҷr~B08دzVhZ܊¤<-_ I' GMnȌIJSU"5Jh~9C{!ޘM JM(IZ(ݠG7˓ma~`PYCNM8qtv4eމˈ_7r9qC+ qzip5$Dv#7;b87be(| }ZHBm3+@<[`GgZ9 ]\Zbm}EYzĵi'Z͏Gs?&xfS`s%\°v ACW'8ZPm[oZ`)>$}$D,[^O8?klhqS73zGtPc0 ;Dj ,3oN+/|r97#@MGTz/ⲗW&|7?p|A"Nhw)lMߑǰ)\SHY✇jNA/M d@ im s^^8GUX [k5>>JK9I**-jlñTZ۬W,פ]+Dt9 O K{#OJ*Ӓ(Cl'MƇ=(u(0\V%EZUԮƠBGAk@ EsRXa.8ݫ 40zA yc9t[hYɴ_ 7W2-HP ?:?2YF', UiδKp/9Ecs Rd7V o솂MJSIf9 umJ+ׅE_0᧒ Ʈ$62-"Od/I3 -R#T ~€Y;bPJF:XgզI:MSeeW;?ASO;_Crj Ǻ\HoE-*Ev[Giu&% cF]oTH?=;|N(]&!kb95a6Z: B،9US:͡^w.bï68?+a;M 6>и0+@w\[Qo6:ch']SUYMZDUmiIjn,ҠֿSO>?X*f}.ggwHPz߹?yX]ڑvxxƛb֝t agy?^)U){HV}uKc0ϪU)r0j}&:!l0?e˴'EJݢ9@ѯG-}|,㢠pdž0wo2çhu ;oey%OAp{%pD [ ڙkٓ-/'8SQmJYȥbwԣv0/c@,BL53̋he{ [a3Sr&mg8ߏdž~=C6;-Y[h~z׺N>A/"06j\3;k;?tT, `xRj!cCU{a~~}+$O \=o%wx SlRskv/_8‹\.YK[KF휠0Kc. ,gOWDUgbfJʪL!Cqj9~m7wp;"ꀈxjNt%PFB2Cz;Th஑H(n5~>Ȭ85+Ǜ)8}#;:t6cnq\'=ӟcu]'/|0Qj ;y؉__g:ZէMWIgFuGl~ C UaX. {6g+CxzR((b$AU˵;[Qm<F`3qf!R svHGkfX+ִR#\fOvyZq Jw>Lyˉ)c~ǘSoHJ4_UAO@CG1S뮒@W3/|3bKp%jKSN2jjKrU*87z7.n2eI@%@#l$*oAv):~݋y(gETGJh2ʀQB1'(Д[!cvI"H}t!f Iܿ QPYˌ ixүOKXrvp&o QIh jNpsY T ƞRPPEV)nz,'P TR8D O7̨vN ?Ba[LR,@dEw Ȃ6]x_R㯤R%Š8d<ݓKG!ϰw,;𑮘Ɂ_y_T6/ֹl򱪟{ 7rQ8fpYq0n=50޽ӯ_ӟp)IփKQ!zd +^<[VB~%tjA ?`|EdFiNlJ[&ڛ.b`03&6xm[p&ĵZJxmǩe *|ІDoK2pڈyuLXiCjjx^nY:lth4auۀ.G&!Ci鉫o/ -^d7;e ցJhm5RxiO7q֏> ?e?qzP {ءjEy{<*,Z,?pzfWuF 蠰%1þO'=W ($v!O9mOܦd8&٠KsylZfe}by3`^W\ {GUg%wQ 29SؼW8|".C}6gS0]FΑlh`Q\ỳ/u4!M0,EHh.B:O^d$IS>@y>i..,-] ? ;=sCVuz :sC$2tK@6Mv2- Ɨ7v^njK:ý6Ǎ*1QAQT։ '!2"ݛW[\` Lww0oLi2|=*Ӷ;QC"ȩP0 ^7ep͒("\IsgƝrMKXI u";<ܨ %F'RN5Yyv2mR?RRAL1Ѯ>v;#el|D)Mx@-/K^1 H6GRUN3 늍ŞHM*C̼dmptdO_MŰ(ʄ|);]}~ZLu+81T{ K;W EĒOHޣR9HsItĴ5H^.PJnb9 Όʳypǀe>/0o\E :Q jؖtX.S8 l452eJ(޽;n_uߚD,5pԗY<28:!y*(u5fJ|,A5Cm5zVm}ގe;ՇīKua̔24O*,ʘRwWq9433C+ݓ?':]1[ gQ&EZs>x9P\8_ D7#o S EjUrRkͻWO#6{0_\ P7"cGl_?t#HG3z;5wm7Lz'FC,nW+ބ8!gc6]ܙ{E(#)iRK`׾-PbRin)pP ;gp *<\sKuA[$ []($I|6Ydh,?+]Gọ67猛&yX}:Oaq^sargEZѤ{Ar< l뺽'fK̝oO^'kc _)JY]uA]%qӪ0_b (.:(AzDŽ.[aݠzvC;!2)C~g}VUs t&)aQ4̡UY"T'6[`oZ\?suh؁!w9|ã;v3gaspkzWf(W`7LRwK~?,-R빮Dv>$3*tC»*ZEMWWѓ*8k? `{ݍ"cde?1;ZCL[<#4 ݵ:l22YNES4+-bishSLO_rd7w?,>y%Ǐ!* 2$Z4Kp&ylC}Ӌo[.>]ٳ7_AsaN9Y, 8Ҟ*4g%/QT'\Abˤ /LMu=ol…&߄)i:־0Wvc7 9Z`(nscO4W HSޞ2 rrg;PmdglQ +ij@GmJ>oG໹Ԍw5c\sM_ 54-c%\LĊZT۷U4/Φy]Y*%:3L75/W%8 ʧHˣD#M],٩q LwtCʍfޥEX| wx"ʼnkŨ/w"Йa}z,vR0Vρxv[j/mPN-wJJ i IӂD]}Ͷru 9$4mRId/ͩ~Y$|_]2q+)<S)HH ) ~K< 4H<ɚUj#@`Ȧ&:tZdF5::|8럋rqE0cOANg&Z6%XiӋO=17˞wr.enRO7NjQBBݚ-qt:CikǦS ).|0 FY}CFDvEw}G`CmfOpeZ DlxmiYjՈ%k0W0Hzq‰ce5&WUlHy,+Z5 7UwXJW2l98FAiP@U)C"(/@P8Q h E3_NEi[1zxNO=QOOmY(͡56Fu;4\LAL9R(PI]lt5IZ ; ˑ<{ 'I0 OJ;a=Z x$yQcc^ttS^UX v)#.pb~v({F$ MMǴzTQ;bZp>[ '"K,Kui7}5 2I91coINN|1j%a\iHm+!b*9/PՇBYrgg3',* uecşGPHnGى׮սkk/tmՠ1H?93*jXc0fZe;˱ lhA& (ȀiaL}m96{ 5uv:Bi_VxqiٵzFZ!}O I)zd[zv>AM[QNe=VfLrVÖjtAIAqPmSWy wYzmN# ח"]^ *}+tKNOčϕaKpޤFI5uԇhbZgw(Ҍ>J3Fd!.NG.B!=3(h"YP1S(# ^ |p_sH$bʧo,hB)8Qh3fe:.y1R /ۈPTYQ{c=$7uߙy0Zտ(V~-&8.7]Gq!ՖJWVfM#w+B*P]Kyi@ickVsīTrAbCMnߞZeQ8VL);',Ojզ]63^tLIGg9[i$֟isΪ/OLT` #(́^%߄qwn yYXz$zwkezt/Fw׭#\wJZ筸g@n;Y)(IWv{PjԦAGfY)]1BmzM(oԻc.dnFx#گ@ZM\$; =)R]]va,{[%&xկYT_1J &45GGu>=Ǚ[XCɇ,n Bp Zwvn\/IGl飜EeDwmA5xǍT+OwWi̧#hÈQ6tj.~pd)nhz-"1 :@ʚkd`G"P|&߀_F+K`QKH?%(UCOKM׋8g/6ޮ fNd꼟W^0)&ɶΨVKYV@ûy pؘpfhe&Fzbnj;M]C6<7XnX(1akW{;k>5OR%ziR) oÖFw[Xszk#=R>M\2aV $ǸW_0Jm Tn e~C”ȴ0B{WBz1s:$lک҈,t 4ڐk|5"c]ϑ~n5 Ij ]ճ]y Wa5K~v'ryS?}?47Z̓mUr^݁LVGEC7ƙt_ }/AҐӨbS;"nh{v1l/bzח$irott+{Wσ8o;T$ D"v/:8E{& q~L+eSK n_!6Ou檺[NQD`DɖZ7Lߙ lq*gxq $dƶ~=9fHmk*1}9w®9tHEUW=ƹɣx n&)v -rKBC$bЋx!~NW×edLp:KL]_eWdǿƒ1OG5L*1Lb ~܃{AUvߤ^D pd$t-ry2c L|ȐҳDq7W={HRImFHtzSSM'LQX}Я 44ج`?f=7 .tJ~xC]FȠ>Y:*F:?~gSG w;=* ?wLHb:Nh66MU5[3Xv1ʏJCsYqAd޲@uш7!U!UqʋJT+ADd:Иg@ afϷ*mc a.hee &#"p0]2;jssC!v 1Ȯy6Su5t=X~O3iy&B $un*ٝW7‹3I[G̎.WéT̐%Ce%߁9%AFi"$璻9iff̎'B Q1I,Q A܃! $JGQdQYlzw$4hy5jZѦ}CDl hU$QhFkԨZܾNQ`i6cFeK>ѲI;׫'8ҷ%Zig` r6A@> 7_\S)\0wR'hX 2=?1Iц $0|Vn#[8S@y dx%Ư642]R c",ٯp*}B0w-%!b&E@f]4œ JnA (؁XX>$^l]hJ  v*JPp x`.}@S-ksN3%+á H=t_uǯurSJC[8`y(uo`F Ff..Iu#4jU*K62wSosO]uf(s "<kd!"yY<. ˑ6_%Zܪꙕ.{t5W49kw{[)O'wqVZՐC?*[i&JQĨ;("R;cOR9l}HA0+;!LزMu@7Մ ?jڮU@ǀÃ}җ^pu$uq8wͦ1Xm@xm.U7wno}= e!5N^cd^C*ngCRWJp;Mf]6!hB&卝@JTYe/y \*Wc0BNgCaZ=tUni9N4vAGByt.h9< 43#LU<pMVT7H2`]׍u]{QeEq d #7QQnm>6z0*RsP[ GAF6sr yHU6(3^]*iAϗu7:תCAFE(W %!%CraDuA`N+i0&L$+c^9<[isB_9LzleݽO.T alXߪ^ƈD);~:G¨g`u$دGI܄Qr$-FEd22o&xhn uS#mmN(2 hH'N)0gK|=2*!Y%V㷷P}|q"Z3>aoE-rw]!Xk_j2VEU(I _*qO] t`bGep̼†M@v\ Dͼ O!)fKUŃ mV|bކQ|:W'azL I F+%Yw)$‘_K*b kR S`jݑ<~q(*0NA/t6~*V@)Λ&c33ލP/o1 -i<pa 1 Pb%iilMkE]G;ƪg_6َטXT '>dPpl?JӾ?#tH^'L Ǥ}tM zE@վCtXDt:Ib,ǚ#jVus+S. ]Ox dRڂ9t@z3ͪ&gAۃ鷎YfNKj %5ܞ@mMl$.`!CF(:REa[/  M+f¸&agZ?CG,!a(Ւgle.xxDCRoWM՚ *h/%|n"ȏLT'@&Lld9YFgBmNUd1~=᫯"1o_.Og 14#OKӘi2ġXk%!Q}fkAMWh4USgtݏ:.l}!RZ~c{#LXnu@ǵ loWa޴QyY[Iʆbw\h5ಋ&x/"eM5YqbT/oW$MǦuasRDT}y3[xΉ٩7'"n8En&I^?ͻ9RqsxD0ӔgnSōZNo;r7Cد$Q3REjb3g~/E)0ryϚT7%v 5JWh*bHO"bdL{rTS:(l]/4ج%9{OJZRL\ǖkܚwmjַ7ddN5[aj cNS_fZ@~cK%WU¬6' [3.78lI24ġ0,`b.[W !{)0&`ZpCu:U-\"RoJ%-V.2: )U;xy@. N.\b̪3h>aYcyz ԛu? i:鵳oZЧhBfwyFϷOn\UT#'~)a R8z\ ʥy0rF{ԹT;]% wL' O5YiE-^e[/oQ/8P6<)$ȫP\O@by7|aLVLړGZȷؐv贩r0) a]IyV=jH Eq4a _@mZeSXթ#h䢋*)bEx#@r0-/|Ĩ-yKvU\} ORH>gs&g3xY i( "ICqf᫧-5* uþS T>E*ȍ .,Ɔ;䠦H&l(AǷX$S; &$y]S-`(^Ґ2~τ rSP!lGlޯB *V?z WQ?#4͍aV/WPRNOZR@ft=HDH^ʧf#W _<-Em?ٸ{)Ьהa?Jg245Y˺4kHp* B'0VU}!arJ M?=cyeL U7x֎ZuqjsBize"}\5DJ_(3/[`y=5x4(pquaÈCU=;zGȺEU!DF #/&YxHlie81W p4fZ bK>*F틌]A7@n4U|17>{+5.aN zޮ<?R,^`嵦{ ~Hgnnj~AAP"-<>ئ$@*|dvPC9ҋAKyz}TchIzSE}PIL@*Hoa@k2:F_ j‰ͩˬ > Y!43&25sS҂H <܎Vt˙J[vezaWpTV4arXPY~ΝRG##iMg繎}cӍ"$7K~L_eMmQ@a Ͽ__1\Ԉ?:]m; (w⋛Tn&xW ,$Iυ Ky "MqHv~p'QcSEWct-v7`ftH&S"u*y&%@j |}T>FOӕ% X M-l.S&/-H>bxtB kxXl3;xebGh^i}„* uWT`\|jW̻ 4WylFeҒq&k ]r}T̞9R`/ݍϋ R__Pg Njuh4_R19 DC-ƃR`f RK KcQv("bV6r+K}%Â>ĂY e 6Ij3QEMx_)P*U+.]Iǡh^2ʅu_GIϿ/ǾO=a=$Z<`/cA|oGGQ$eF6޷A5dQ[:Ϛ Si܀}^m^ ,>@9AKoSުȟvjm:. ~IJ⟎a헪d{(@_s)w2նHZ4 BECy[.A8C֒ 3Hx* ad``RIMϣrhRTk$xye+ǖ0b]^\]SV_RlԽ|.{&:[.x+G7eL} H껪$rv2v$$˜9,sȉ@nt82h16U9>+Ku\Rw}VȰmWM ZyNDAQkQ9|Q<tzpLX:61G"gR=~-$;xC/>3,ǧ 3?*%IG؎50+kY>e5Jbdx|S.e&^):`fc] ǾByrI+r X]We/ A]$.3Vrݥlw?:kť 1`P=/ͧG\38eYXT39|"xTFǓǁGo>; ixXJټΊIYi./7AKW1B*ͩQE̅`fqr#P,=SZa, !y~`Om$Oeձ1,^E!/;uU櫼=~# ~X0 L~pcLQ|E$ZYsd>_U_It+OUoV7Zɸ8~GxbEB)ԼO~b/)|fu\sۯp%w,?E6/\u41Kȁ4xGE͇ >Wp$6.?;LM\dⅬy>sJ[>2LV |S1G&ۏ_;Z@GjC[i+hozL7:5^ewa1vb1}Ps izkeM iG%H|cpwJPpғiځwU0aƋ(Vu6҈B+Aůo#r`C,nI {薊dps FNuORM9=l#/#9^foPeYϻ lOҞ"1PL8~j͝?[fYCD^lh3/leWS៚#[X`vTbi5rxqӣpCΜzΐBoYVJeѨE(hRPR8[WPTsJ|Sg.s]H^% ,&OA, r ڤL' ~Z`&x! $',](FG-IٮH]\=}W[eI=aPzz^_M2ʦ=hayfybLI h&e]ڏ?pOM-@^ }-Z2p4ӝII7U] ΅A}h+Θ rr-#ąэy;Xȓ麨pb4tx= cUd{/_ޯ$x*Ij9=og~8G̋^kyd] 5D127? hOWN I kzP>%|yFn@ N)RQ;>0|luJU;"=|= >!oWxޘ#w`@og˞{ǀJ`!QAck(ۭ.&oy9!* թq8p=PPKPȎ֎H>,{LݪZ4Zva1臼H0@^_hyslPm:59:5H%6;%V~GMn0Bw14W*m#cf&Z7 xF,t9o {>7S;\;M5ly8N2褃BgO_A SHc9ƩtυD'% .'{@ >tR55m5Z"`OF3K\{6uxJ4&2aSUF h߾C8o0W;tA[sk47HJm°N/fq9VO"GLyi  |)\60-bcb$Pӡjkn?_ZT"&gsza_M]rw-:r W,VC5P{o&1Xa1+DR]<ᔾT9BNk  uO7o DI!ŷC~膍1B:V췛yPv.\8y0ф昪d( P=hiP7pJTsSǑ2\̓.,騇┱(!! 3"=_hT#/5cTd.Ql2֐~0ȝc.pu@L1Iͽ/7.g)N}7%!WMYL)`kafYwq3ߔy?Q3$Cr\`S-@b;hoŘ.u iȾ e-D(TzY Y{9=@m vëJ8I1Zu"$"~ Sfl@pQҔ1`MW+ҥЈk8ٞv.hFr2/eykĜVp1*~ٴ勐|tJec|r,,b9v33y;n1p٘C|K߻> @upᱣUe DK1폮4-0l~ig)^ M) 9s4+S D>QY l L H2ۜ ya]VnD+?^a7a.> wְ7Ar[Us\DVSVSLvZ*R)VYP? 96,K76| *>xca^ga>NQTfy_Ʒx96I$Ȼ/=+1 v|<~">ӯU\Q=.X)RNǺ{= )N dT 8!UJZ=ÌaNnB ΣP'TPv }B0jd`f<,z HdM~19':__4^@^E~sr4ȞgSΫ~À0j!fi:n!^h#" *Ǹ;#(mZXg[]Xe/HLȉaERZYIfP&9o˥. R!MtI%3gƢ_Y'āVgo^+5Ho:mխww>jCGϠRsj),,L7:ˮ ʁpOZW{"oB}1N @TodW 6?⹏[QBo氳\LkI U@Ah|ZHo0^S(2սUSv='/Da.Z Z.p/ ܛqSZM<-&̼;S&o\3ZVFGs/ZT|Rk.!WT1?x*5lSav SuzÉ2D_Vl3 p>Fͷ30a,!K<'t^#P:at(U9`0ʠ`݁T'뫉lCE&{SA9 V;AZ/ĻY͐?.2G? 'y4}"{ߎMf%ᣕR 1vT6,hC.S;t72c^+6VʇbX9۸:PC~JDՖx(^ rJP%ޅ5(ླྀAObCr|1Ϳ>ݟ5fŇ+Xѱ߬;( .Uu};ebwAE~]knGЂM2ڞGw0>eZ:Ԍ)?XO'>9oV\yH%p"I`}`E'[_ʝ5 "œCG$rqW 5231Wspv MDrL5=7*T'Raͽ -É`R բdY1{!:9mfLEJ"7^U{!2 LKR\Yğ?㘢L&nR,[;ƈ {3Sz{$fgnt-!F}r8N=a M< A%O->~ /,:֋E{-LaۼMJ &x8.xG/gIV@2HS;Yz2=ǓD(>=W7zV'w&p?o&>j@%`QM%tq;d= '(!N>_rkMG|$, U?cG~ á5gF'y)ς|yW@^P5%_5|J~e[qκá1nzCw'(`8Ix RWG*Q3>f~lOt;b;f܅)8[uwXى-w/`~CkG8S#xA s O0PjŀvZS-88V%f*י;pyP!M8?P.J3@o#cN-Yct7m2[nzb,A**_>N@vPйzh^:xK욪Ԍ٢vj볖HGbrsRX ɴ@&I[IL: .Re\`Cap_A[8o&]dvMC~ ѹʋViszہ$Z-Hq(K!Tg9Q֎-t_;$?ǂeIpttYБ|,T 0KF,i`m/@4,39#Ĭ0Nd a6( kI 3ȂU-YM: xan]#3v% MR/&#njEz#P_~$ ;ڠprWn(5G=^|Z,ϧ{zI;jƍ%7d= 4"S/6QTAB+:zgBSCfhS%):똻6]$qցPSPbS4CD*V]޲ gObาf0^*]B# wɑJ19 c8+.=}bl``ٜ`4B)qrybDa>r/f%bAM{.4TYpb՘!\fu R ]*A2(Ɔ+%8FAęoDB)vyɬ}M*AYM9&L?8c\˘3'^+ydQ ,0H{BS&;g5~ |8&upXmbPS2:@KNIJ5܇a5){ήeZE; 6FFz"tW;ކxH&ͅW8ƝJ-xA5%u#-JD?p 鍴DBew'{ܓT|YI'qW*ixV:c/9 T)1ͥzBz C﶐; vdLDDɬDƞB H1 eJ u{+n73+H UdMMI5'4JhzzF+H לn@kl}v+O7d[iiBЧv( "N _5oΊx-l7To1R31 1h&=M8ף,tW(uJ*x:_AZ)Eӡg@{G99wLDhL{So->'F^Hٶf 疒nĀ9Tn'r(7bpE^IqD *$F_11=8tpojGZGS˛%Bp_ߐ1U#o2Q  >l. QԔ3dv.ȈgWm6ֵ-`ܠZ 4B;YszQ +d8韾]$lZG/ 3TP$n1";($ ZV9EwȦ|֢#ٗ9]cP&Ӡ;*uirctvHZ@+=ifeCQygq^c74M?􏌤1O%Ǘgw7)dGی@[4] 怎_:;Y1X q^QT4=rL߶0vu \)-*($$HFMA$+lYYo??&?:IS҅r<:48*iTDfK| ٳmNh͋BdZHF9}G$]`)JoxdWJ4\_Wek\=өY:sONȲ_N=^KF]<42oê [z!E`L9ztx9qC2uXm/ƣf7<|lXFìo'.guo_.ppmY,ZjTa#сeb}F9blZ|1WShGCh~wm@BkơiF={M|4ζ|n pɥ DGLd+-ע4?"{5|${F= `Ž o\hn +({K jO%|^lP34bK Uuy!yUFf_YK@/bLy Ϻ2˥g:L )QĜ쪊jr|~49:o?X;2QFͣ%S\x%|lO9)Q_)FC]8ԿdV>aڻ!Azr8on"^5x`E%Vb8{oލ{kjhEkb˙ZL .rN*-fC>/%]Կ-*{1_7@EjSx`ǵ?SuG%NUolWTrWb*y@&Yl-ڭ9!-{`K"7};B=i>!8r O /nLF 2d(ZB!X榬{^,DS\=WѷT[=#3~$ӗl:c_ p_#^ݬjJjwhQ228G., DoZ;L)VxkRR[ .SOYߠOӠ{v'Ԃ-Ty_g%Wz؊Y,`xbYۺq :֯7HG#hp D&L ?v滜_QpIJvg fVH^<ڄ]%o6I6l5C ߴgv ^0.ЦNSqҞk|3xc|a֦hF>}'-F@uJ \ xJR2 n*"\RBa>OSw QT/O^\2A_+5(MSiaWT *_5匠3"/p2Es7 G uҎ }Ŕzv[DߪlLM8# U/7DIxU8'e`f#i.劭k? Sf-&WHzA'W:a@%io!wHj*h)8wRE xtkf^mG^sS ߠi}# @A~4~AM=V|.)y%gۡp0rT1x ! މc!+CnN*R3B㎖A򟄜 k: ^;"L}Alh⤦GU.A>!0zab̼)߰sIx`<֚'1kx"\#a啓%VRX[ 5/".[f6c3W# WՄJ-"/T7%`8NQ''3P? (>| zkx<@{lZ/2d蹭k;v=m.R0_b' FX% 8Q ]#(Ӎ!Xy^#su-|+jٕSE[R#z^]e,"n|h8#`5,eD6%=@S-އ׺f' 6g L6LQ NZ(w$T@nd:dBl1kN5çmwMfXwUO5W &Vϙ\YS,SBk-+"eNm.s^Q=G jf)AHpPK *CiL6ΫY-)2ė^DWp՛XfT%&JL3DuB]IgP0 Jy>ʌdK9IoB!&mm1Ä)=+JJ%+]SqAw݉%oh&O)[H9طO\"M hiߛbXsŠqU}PܠK:n_j%g 0+.nW7h[ W hZb1cJyȟA*l-͆ @&__vnd FQV|Ţ1& [jig-yD*48&˖_)eġ6QFHi,/"]ouk_9 4@^Y 31W B==Ru`#K͎֓~hk5xm P&4°a R b|HfESIYW7-+Hce.R@w#o ǀCT;~: ?ҙ5~TU9ݳ܌<w܊:5XvCuyt7 *27,H%88sې(7MjzBK+S"6τ+MDǿldSEW. M]@o_Ѓixbп(4ioZ] oX,h1#7.FblPe0u!u#h"]yFcƸyMo<%xgz ^5ys^aQGhSpFYLp̎8A(:Z)ءeU>sʎ?*O>TK R@R>ZrGQ9C*'IIPJJI;f8~Ȣ1oaNԶTܾ·Uu+cFU+c%C;ݩJSaxsEɯ~UbB픰5d/A5}ƽeiV*)kDշq:bO TnR)E476ZH$(^tD_%civbf^fAl\THh;^8$|T!EUç3A[TR2/"p.S5+ eaKV2W~1)P ؙ} *2tKmC{0d7L:%"Sh?ȳ!K;GNЏL4|iOPl~ʚ{$ePYgG[spd8/6O)P3 'RW*ZW]r"~, Js恐1r)گ]Q  M~@x{43UM=߁T(@#+ &ؒibi>He?j"n:9`.s A|)ɭ#iu~9SQ)q4RrDjgi|.p [MGcHCtlUMhXL RFGepT;HY&χnΆu")Mg;+2lZ" T*_ө27|4K04$'%|΢kLnC-tbhikL=$OxT/Y/`hp[Wi #X@$ ;Eh< keyzKiୀ\*1yMGoJ9V>Bgt@ . &*pg<`!}DLoa HV ?&yj0V VchɌ=9l^Oּ/‰([RD埨*ӣ7rte(P*D'[rDDKB7ѽ~Xs?:0W*F%n3O.Ot:fo$VԆ-@ ;jx("QxyX~S+Bd[zŅ,%pq-tGNNJeYSwj·$&iv"Mtϡ"i+N0=Ϻ~l1|2|B|@~/rkqNO5ZS$7ūh"XK"3hӹu̓ˣ nC ?&-w@QX\}zxp?ymmEzFVmJ :}JT_ cOi^#8JQ>yce2N6'N"'*K@C~5_/U\m%J} 0z C;4\Ñ k8ocͩ;Y%DaB)CJkWB嘛Fi?+b;{+gگq;f#}$8nOG N'YI:9LJK_2κ%cvX֎z)4X3%M}GR#XskrFEZ%aÖM[*K卵Kbb j5 2m5V\0`R3ɘD+XM|JFj8!Dz0_aϖ8B`mc'9,̏oW▾PnJT/F:g[azM+u_29PHlѾa ˄E͍X ٧N:@5+x:ByC{I0~Dae9\1w)rRS JfF=7E~QCI=k IsZE-JcB.N#HfETc}:x&?0Vf29=Xch$lIE,zX\߇f`fy}NGh\klrNE/g/h/3tOZ12,+8%^Ew|nG oF,vF-l@uqi@DO-}/Tƀ9&02sR~ %ԠnK,sd?h~T3=S%J*&8M٭9 fp Y%j7*,aC^zbd:!8|rS(n&%y0Gt7d2v_Yejpk,hvc.eI.BgQ=E&ʽTc?<*#W_*>քqYI]1 umfGxe9z0[Lm O}6m#N+0yiRJF-FrE7ԡ6M1ЃC1rL\g"q9n } n $GDRH g$^lRoB@t9Pb).:^r4Q2HC8Vg+]f`8wC ƒF],w*ybCwrXKrVh$7^h I 'ԫ{7 8{>{<>9RkKۆ=+*jU4eV,yʼk+WIeefx0RwZՔ;w^~:T18QA޸U2c!۝?eB3TS ^sPV#GV__-{t;`Gt◀hn'$NEXkS(KP:T/ +2obxS.HX l~'Zpۭ9W?KM]]Ir}/EF".j'T*P&ED11|L8`&0 o,MP(A2˚(mԔ!z+ mGjv}ӵU W$ٺuQCN`'~C!9<{50_,V):J;|1`jM/*xP]^[Sv|ѣ%džAqnOI#hڎJN\$P ;(ŔTIj*}'` n2W(&c;c`mU;‿FS @cC ;dCL ~9Y2kLWFjL̾ݻ*Wv%C \?klE,oga=M/\ ᅭFK5ˡ#Io,(S?&_(4mKLB(ԸY<:a(527Y | " <"ckB{b_}|@Vp~薗\W΍|?:aê1 ;bN #026sRh`)HN7ӱ}9": ^C7)@ k1,?&A e"aR4&8Xvu,'mz\frƧ%dY80d[}9J+^NK |Xbg-ŧȊ|T_BYdI4GeJ \Z_RwI+FaGm`"fiW(u9MeM5*D8E.`zJIE"F0ghiC}crKY,ĥ->A̧zJI/;0PH?c݆ۧ嶸·GU GP"TW?3]*PJBuu໅Қ(2\ɝ3+D cC+h3~s !/wR"+ażGߴ<ƮmFVqn46/Z;&$#nL1r$Z;" bW4V,& 3|5|8ʌ@L>y)wlrf߂T祍l0Rdgcdc&bMiyWsEz,'|bABD0!QwVMVE #/̮ѯqsm6L2F¦}7{.'~wg0ɟH:$z@f"#~HIƫ 0`(bT]qnShA̜fz?fCt灏\t[CDMد3)iju^bT(u%&{lt*Z:Ut[?$+!ōA1!i#FQG5>~ȷ{mDLgdmG!D +d|ũ'U(1k@ky P4aQyM"L.)=хFxS`3Fsd4QM*4`2W\@Eԑ `wh3fn&pΟbZ7$x6NL$P7rTa~:aVAE0ULM+bm]QsQ`}ԮHj[gzdJ;' kKW xŽӏĀj"3=9ijiֿ-QSaYX_HG6O?bFd䡄_פ]Q쇵%o9 $)f嬙ƶڤ4Cl5ٳMCb\JlJHfZM-5vC?n-k$5޶Asğڨ^HO@I|q.%sbK6L6o}}#*my2oxOva~Mn؆%8g[ڰSe=+$|o}x"fAr(#r>x#Ť$HLfçv_?( P4H#I) +W >S(hʦ~qZnɟ5_*F\1}y^ouY|['aΧ:^ݘ߮l0NBߔ[Tq#ai .y` ,ux:0s'?*gw)hH:y5ln,c*ul?޳as5n!`]6ߣƌ 64fXQT} 4J>ϩEF4jrtL٤AJ ea"x!J.Bvn`XƉsi4K]¹gIp#TQt y=j;0@(RW6Vґ]F?."AV_ˋPo-BK}*v0z A6{À HC"0h5JeSc4f =l>e@ƫu[!x<?‚fN /RLV<sU!.ћ9?/3'rC/[RnEBwy#mg{S<5U/IegmUUvrE=2zB̸_]̛Q!oh(P@&47/"8Yɥ ծ]=s{Z̆ (EOC` yIhVwDNSLſJ[OnIAM]5?m\ iP1jmflM;%gKiFtS3 ٴ:Z?k$_s>p./gUU몀Ƌ@c=zfE&NF\;1ɺAVƖ*\{]o)xlNq)9d7M&_Toj4)V.[Ucbk@{C$]$!"R" aϔ=Psu;6(߄FlnLꄷ-ɩZ.G;&"[lT[7 jt kȜlm2Nu6 i;J}LQ–`"O( :|vAXX7@?ބK0mK@˂ Ex6&1a&I 0j.5UW.amKo9ijjYWgQT"mG$x.:Ҝ;j53+/z0LŸݗ6SWrgzr]4Uc~VsUNY_d^;0V0"(ҙw7mx(":,Zߴ$ G* f31O#_ȸs6ƥ8JLSHU'44(3D?v{HM#iy״Wp"Lt??`WشS_*wMsR?7Qyw5MZ2Ⱥ5G/aX|DuR%d" HCȻVpSd$JKD'~'0BǚΰBrmʧ/Z2][gzOP(rl:v45xλ6bF5{]$켛eRoevs$e+r5WV]rq. DDm~fgsJX3?M%3F[ n_EQzVxmAoxD<2$ǽ4Xtɿb!%#.hFB-#[!ͫ3C;L'xFVV,PT/KJ<`\[esN$jg79zX>,̈́: z9&Y|;u0!_kAyjq8'9q'j]VLTpVs9bJPv 1Z&%EmafEjt1̳|CޮWRL|>T8/\^SBwG~:%;IA[`CН2kYiꝈO:2`YK1IiW^;ru}9Pqq٩g̀v~l0zY@mo(WJZa +:Qw^Eu C*F$3(dmξV=P"dyJIN :ŝ Ke`fx\HPlȓјT6^jbX>J.BO.KՏ I,l[ mSlEC\.H;B"XǣfQw&:GPһ1֝dYzBmT *s02ujL2+aP^-OWa?mRy/x: ?).Z? m?JS7CTOۯ}MQBUk+01/knjQjʠf/ty9SS fr;/vݰPGKбm~prtHG?g7V[gIv9#11ۦa<8?a0}+)ppm*Rux~h縜AWjPso۰ea4Mkzkh|TCs\эJHF^p Lcy(3V>}7{xW:D;ZF=83r"N J~2%tSCW5~Ҡycq"r77+U jɗXk]dsQ5n Es]XNWWSlG5ٯhY;Ѻo^5.l <0>,Y=DH~1(i ,`[k; 5d%$.K ]|u70`M%i" CF6ڝohA23VYLC_LdU'hYdz*.G#Քje/3b٠(djt2ە]jdc%TTHs)&Ѯy˓M1[Jrl|wӎ7(Bg"8r'44B 'NkbGCO4ty`Kiͺq8ЂaGG1b`F1:]f@ɝD/X(xSԳg E'8nѾ+J&-2M[xg$"̧Sf@sT~)GSAPtNX<2OYõ| zr sD黦: )74XTg)ޠF:<Zh YXAAbĪD[q5 NIiE-׳2nnFD¨ l*]U=%KwUJIt7%'1P8ggݚ]W*! r.AP /6C KH<ͶnjgB,ybwHUÎv >QX9 xRb+ \em3Uv5NTLn)Hk.Xb/ZͭdԘ7(ɥً q3/(nLS-(kX4AаCfp#,`( Εֹ)ѽm4g ,0xlrAA`Sןc{]UfN#|ö{o4ځ}يyĸ 9tOXo*Ba躞/л<{a@tB{7r|m\+^%-0 Y576Im 3@k (vwϥoۗ3s)Op?ƻ;Ȫa8UF n ' mn%6QK`ڂz` U]qGoM|gFwc-~Vc#\]/fs3yz c;{Z UQi4=3 ?s)?>6[ 6DL73X0}T # mIWAY~G^|#O0fNz:niҽLF_8?mdzz};ie~ɯ1!z=ksQ}c} R_xu?A [;ҏ==]F:ut͛}'rD?9W)r=vތvUztURri9rTȵv3N,XgvY}kh ۙ+хn N5rǝmPI+BGv@RVy,@^ƈ3?qh$~dcZzH[X@SO#+"+޼ۗ5g7ҽRQwt;5@Hύ ?FhQgu5 >r j>!XTcp=GXϳ$Cp( e`0-tNK- ގɚyi=9KukhGj!7^\i?[4E,[=A929~h(p'8/>Lgֿ"ؗ5<]鍵ˏ_ce&6yM 彗, OG<'9 74tkz=':R GDrlU ?lvW0QWfK);$% D{h&M[D{'lm\nH)z d#ѳҀvu"jrpx&wNyXo-b=A *5^~y!HAVc! Yg B, NNGsmєVQ&|Є-Z]`X<\ZK,f7f9upmF,KoDGؙqJUG<؆q..I8a[&L=OQ{9̄u|cpZd1XSKi݅CTSnae3ܺ@c6Lovʄ}9zJ,5gP@Fip~/59$S dг*Cyi;&Vw鑔;4iW:?< SȈb%CTYh梌JZʱ٦f:v$U>`cr(_+. WȎ`*h٪A`5ϭ%FsNt&%un(&vԦ(a"͐fD?YbtVhWLlDz _[KYƕ 8]uZ*0BN8WNzP{̡{ ^Z< ۊ+S.ڰ0GT|ɼ&9kE- b* Ŏm65`jr2]LB `t@ Gώ^!եhCg*ks @ZU$%[&POT|p-iwZ }i+v:n+Nk:Ч ΒjdH*KoM\I6U3rXFmWm RWUpiZlK q#]0 qV^zzlY [7L@z̍~[t}.Gq?'ardk>lu3 "UEK “|Ak~`vrw%)( /!'L;$$eHڅ=N|^7%)6Uzk-lԤI[(a0<.˩zMd/V>Jo+*2Lߘ pb%?OXfcuc`8A}y;oY[-x<TҴЋF_Ǵ煦_&9`]\!* >1gogik øPti^ȲĮ5XL Q.D N"T-%ڃp'_4\~fxS?q7r JxٖY=i&T+Cad4X1sv2ԞduyN!M~u`T6|0X{RL3w79VCzpKfYJ4ƫټM)&WX[>{bX\8Q<)'tG`弥A&@]郕$UQK$ShCEhPL9Q\8u?:BYF[57.@(6UΆ>3v%ZbN3X5Ratuk>b')e]iƽ՛=88izȟt{ҟ>fR !;mQ A{'%ǘbek8pj80>&6cIהKӄ\_Sk*SȣcZPS>!h'P\rd1vh;jU#DN؉qzPw =᪍'NvhxaI6LgKe38eYUBLe}i77N$ W$<䐌N-+OGc{,k?R=EJac=Թ(}FxSwTZ0i~|tVUC8Mzzx+ ?'*t} Y pCk,B>rPl#x&HSwi gMV A% ćSbä/ոqum78ުkO&] $~=-A'@^%]  T Hݞڣ{#wU/ǎfD7X$&`T'܆3;sN7E/W8&}&Ey̚ +kÁ$,пGILx t1R",!(,.ȅIAW<͍/5II|h5]gwL[́)8~0 c4Lv 3H)8}^*X> o_96u EFg5H4g yoy[< fu!De?&A+KwC 4߀Cgya:IIN]m6fksOgF&5L+j ` ŗrO-O HSMtQD!~egGpfL:')%@aAwяkajAKJLbE+$ ~KvL֨ j@i&11va!l&OΛfwamІm MY]h(ٳ.20n9;XW)F?:W[Kd'v!r4A貐eU%XVt.wb.ȿ*f7o~ޡf*?QF.Ny` aмYX:9Vo_j #8[ %.VȷdEE;կ_ur=Dh}Ł ?ex초g F> #'HbC1oa!۩a6߭c':Xx Dd}z@hU&.T"mAi(s0 S tP l^Iy8,<ėyѳi}? Cb˿) ;Qr.> vEdU2찙}jmA+E!Mw^.arz <ļ(*g9j`a|ԕ%Q\Ψ(vslE  ӘgHi;r6V f9P:f7͉n[QB3q}*EE~UQ䮳'.yȲd!qQW'OW -tpdj}T{b=[.h×q*DmR3G٢߻˿OՇo6FMTuz^getua@6@LFQJN h-@򗮪B Uc=A41X>)nf[Њl1z_/ƒΞSB@@<^e'cDv7¤H6r;$-(;]d>wP~2rxSކ_m@~^33=j ׳شrbwlP9z:W[<,2-Ztg2"`DڞV̉.|?:92d,@zoW"[լOמ^ILPf&6O9G\НP-PN?0 9Lu ɉ4'T:u9U9I&ft,tzIv 'UVƎ<꿯I֝d{ECigiJ}?Uv\mg)eawloL]PUzNg<+"~ LNscBGV:%Dx Qa,UcܸOi%Եe+ӈCE񠷕%)'ȶUֳ. mo"-k?_5ZB = vrc1#/<v@{tHΡvsh^ګY|8&d>L=bfz${*:K1Z U{_d8ЖL@{^[m1QpÅL0}\VZqǰywj[wKC(ɢSr [ kF$sxr36ُ m:>] ;E>E_/ ԅՒ7+AObƀXX"5cz}eSube1^ \hz޵b={ԈOoH ,Hܪ xI'w 5 c4Rx2/e;>Rz F&}SU2xc| ԙ yԯDZ 5u[q\_A@" Kl}+ 1>ao% 3<'FTGbJTVh_*wCIf )htj#'#=6%jVBE vd=׬,1rxk߱=e_"*ޜ^+8Wygk>2ƺsRG [/lG$L#UXD;F;f(՛GL^TN_F)~>ἘuG=V`j`Z&~#o粌Gl(?H!J8 zH,{ݫ@RC_0\\nQK}~x?`}ihJHGۮr.0317\N=Z <ִ vo\Q^ cYn+`g {Y# ^ ZޮOj]=~1k6:I^~OE3^l?`c  h1,fMUw0I4=ϖ߆Ɗ´N\O\>zgqlՌSPq[i3#m8\m&p~&Z@4rO([aGq{#`d,O;bu}X_VZdO8zeqshLIYpJSp{w؎+1ǧ,јҗ>eC/g߮tu)'n(.ڡKs4fa@%1=^[>M*VG5bb&nԿaFSxqu@RGRPv*0'nq0E=J^saӠJ~-Ngܭ uƑx__/(fDg!Ǹ:Ul,hcFm/۰@;6KS+Zs?do2֠;i<$3U=3.%sFYLUBb#\}f?Ff=0@| ~NoU0v[1EyF| M,c90aéx s=EiqDqʐTNif<,Es`nB k:6u# |dVcpmq@;F#"yܢ|袗a$4qlm6bF~ ԷƬ j4U "wzcd4 L#!?x, BW4Dd^ڍxU<>Rn_IF6ˈ/mloqj1cP l:0|7fN4kLN9@I2A^a'CB%P|S}4Z&xZC}>)y" 7.*Z(|h9ꊐeH=Vc[~;b$2nnO7?u%0-~:)cRNZNz" !RVT4PHLD `;(Uyu/ޑw#/,0eqV癃}JƩD:hиwN'ߎZ{vq \zBL#9bMG$1W[T>ѻf۞0Lu> ڽ&A`¨~ (NQKgAPI^{-ΟO8 پp,ͦx+OԶ3)=k1APuTlf13;4`5p$ϡX,h1OzkI'* PŗF[0~S+R dVE'vP@,ʽ'-KA@!Y"9IVNz41?̬IvPH&9S }Η2Į}QNVH9>Xa-5(z䨹ٰAU=DRcjh|ã6 [ Lt69o 5 ok~Aj(oJa/qbmD᪝MѸ6SOǃXZ [ߕM=ba3`^YnzM~O2 cY]ߖފ%Ȧ6 o3ݛSgEp#ުmM67g'բIf *Q{5G' Z;̠DQ{vhĞ];Ohl)ݷ7OըyV>o oR4|=''W:à#vh5 iD Kd,%ڧ^B ai ^ g<D˦67Tr S2FSa@P+B9i݊/Jfp520}e)UTLYLzt`I`i]f'Y^JŒMKj~9m7ʪMӟk<E* ^@&E/S#?k>$+}8e"~K嗾 F*rV&eRUWQ\w4IʧJ&J Pߜ#KY@rJzaYa$3Atj`K|r"#9@"B6\6ɸ<9\.J2[<ư-K's;z'_O?P@qw3%n)V1B>VZ`9a /ylĨN'x/89~|ɟ9=yDM$AH٤=[vl"q(X'YF\4 "iBADL Hy$ƒ"0PT ])0-mx^4DG%©Tv샑7RitsXR7Z 9x(P יUMnws  .܏.y&R)I]tv]< 3z_1m9!ZR~$a҉+EOP'>ֻ [LkV-{`ՆHljkT^j8G [{0YNn R4r겗JORޕ;׳W~+c*+&iהTOƃD>5_!$yU{thm}] :%Q_/vC-'}EqJH(u͵kC3iFMus6mWŦ Yĸ!q3R!3#>.s ,hE 푈uwtIt/GwPQܵ>ALD:"6K"]${+#/SMg*$)Dyu 9X@5JorU(= v OAqҺf[k&u45)͎?k`>@{ULj 5ҵ5LYSJa]⿖PQO:L ]+}m$]&[PmYwhͻt/Wɟ9%ϟ0-A+&_U/MyEU ^ýYx"RdqR̈́?x&nWnuOlEwAIĔ`v^ ]c%VWEfϨ(/'7|%@23BZl, N~} AF$k}{V$უ.RYEa -QM\yV>q4h .؞5|Ls\w:3,PEc l,t4nduȒDL #%K_m ^iyjmc%VSdqfE`vC׻ۣs['EB~=w}?(mR#*@/GƪOӘ˼8ZIɊ-QB0(V$5_reF1S +St5+ 7UbqxpO/d$aaMޘ$doXHN;B(  | !^Gh ͳ?$ Wdѽ {/ 19Pɟ{§Nne֠Bf&S="&<<=Tѩ(pbWXGGKR?z݉{CZuEσUMherZ ;n`*\uՎ,XQt&+{o\_5*#޲HTJܚk,ҙqKX["7?&HB B ,t)R 6kK$-M(U `9>bї zsD<}b5ɽz3,ƒe'v?rQtɋ7>3#F& DDnJj Lu[\\Kj\73i0{;kpl~2KuAW3V_'>Of9!L7~u,RHf,]7|!ea4:\c0$y$f(AwAƝ̊8ᢀSjلZ|k Gy8ϙ.sK}`}:xel,] ֋?;.^EߋeOdBdZTTQdl~{/ Smƽ3P"9Fm/gͿneO:m#bAh61KO+$4eQ˾IW z0S&m^`?L~flW8pQ5@܈r.N>Q &wO`\x$A/!+ mGcG@Qz{@ #^Z]֙C\Q@CDŠg('ۀ@:IOs^z$E2uR0[K48n=AցRK မ$([Hs~u"jku*ܶ6.pa,qIFeQPCC~ *$={|(/D&|S*f]9WdYEFfL1LiHZmP2Q5 ) ϘyEv+S?ASGCP_$>B)vr:9 ,*./K9IEA6.w$y1wz"CDNTť@!ʉE L^b^&m`W+xo'N[do7^+{~Rv`Nsw #/HDUi0mLI图nS7EAo"O^/[JȨ8{<;eSa+Sc1!NAz7:BvHDŽ 0o;"XEtS1"Z q0N?_w@V][T6t/42+lV52𡏧^ӂ\ .87ZvpL4W?I"i"Zႛ!2g&0ppCj/LC9V;iq| .t{|Dp41jObLg ~@>ok&VS ~JŐ]{9Ȝ%%Vu*zsEJr#}hz7lp/_RD#),|J\72͖@T&^=F)֦UV]t{; r/2YY|9ͬH%f 3UłY-MAQw_,ĵ(bAF.sl@؈'( m'/t~L` h`86Xm/F0Oˋ7ۛX|_5x80 ;M:1dAjXA$pc;1hHEài$9s8;'N`*}sT"S:EFX8s)jw ҂N7M;Ӱ38J{λӤq$-sܟEX{A0)V EgZK^lnfBϧԢ#~o ;2]~NWu5+d }H|Yb,%(k"JBHH:,h:w}'ZWk>@EكaA7rE9~dlD# LIk`*/EV\xb1^kG("p'p0[Yx0Pa6)$Ϳr~8Sq:OUT`(9yw^ٍv i_v >&T `ҐMOri4SyZe|wMCS+@~GW Yhnj>;gNG?Ǎ5e`Yz:D**H9SxoEN,2?Ua#Bk׾5Ku)Pg%rh]jiWB d8ֈ➔$JpWVSn'ǦʿYt&G*]!D6|<ɍ3ې0-38`BZЃ cpf$X"ix\'|-Ϧ=`V(yTrV##?N:cF!$d]١uÜf5ԓ} /aWNtF!?W›L`ۑÍ!)՗`<}StiU*p#DҧtAJLznbSTXU7JV%{bZ̉ڱb%$')#>N.CXe5oKqCFYWFC&hjm{ U6`Fvhv ;2ڡ[2@2ąƻ&g-n} )gɓ̃:7v*b%3PeY0|< <Y B00elL[4ƿ|sz<;S^ji&V蔌$4"%g5b]!wO%K!fzd٥zA{KǷONչHGZrDS*1ЩQ4xTSPKb +Ä׊-OmρJhT9D)_D%C6Lѫfnd1\ǸSRMGHS<1NqT萔g/!#T"F݉J9s79I" p`:8W8DI/jנqѤL Ϳɺ%1y(:wjvk@)Wa62 ytOcOs=,o7tj? AJ)pʁ3``>/( xӇY4ʡ;'hm#3l-zU ߆J@ $ h9.Ш{G\J/whܣK]0{1Y<7~W)/G+b+YjRT,2 1~fl} ;}d@x&\~\A ` yO=ӎ+n{A*ݡ| UXIB}R U*f1~ܼaC4Y}b*5UK)A=9w4lOSpJڨK%O0R8^w4PJ';1 ԣn3M#=26!|Uu4ig`Kq)h]YsUn8},ŦvUWn{E9RF%r!7 N?{cc#! Q<[P~ v ao$C(}ø) g>m24j2Swqu XM ## v]q@n|w\ 7iwtnx7g*ow'xZ]ﺋf4u wrأu>~nö%BH2" '3=vqk_s7>+arIZ& M/(oaBxӡڸ"MY̨U1Ofaè^xA Y.5")T&@>8GKQB.y9/ʦ.3mzrJbxubLx&u?*LgBBӱRGG|Hc~zT j!w1{%v+0D}(ww^,F#·ަ-z=uY'JzޅPt|DVܫGZP>zd`Z]*/JFy?0D <6k@#AGC\Rw~uH[dZ,6B%K;(b-Ye%7eEŰsA^6ķӈ3<u>3S%)#êHr:)uz$(\ WHxx.;q4W" >Ho8SE5"_[pcV+gm }aw?vF\ܒ )3Hۡfg"5 땁Kg%e m絼L'~%G|F#aqtlcdU1b!ҌL^u5@pMJO"AZWg}V7pv^>3"Wt+8PXDӂ'ɴD,&>`KN}_-{rOel`r;#=R_$%r +<=FqA`nJC)ob!R{0_HaN̲C1f[\į+lע[?MZN0;Qݰ!IUE{Pp e砲xmFu`bDMT=qa/ 0=bfyc}i@q$gd )HX|& Hk7e>.6w8c.()[Tɇzur>a:~6c8-*`-<˭3mnlSs:A2״NcUX&C ی0|Lf`H4%VÄ9#gӺ3ׂ_^Jb.ͤG0!f"$ ,y@f}9mIUۘt5#|:w -^b1œ@A ؾ7Iwfx ATu/3:ڨ\7?բcF |OC̆mk{q$= 3o<>Kq68x8)\IxxKqI N1( I{%U %J2xɽ 2t5N-Vc2lAwbO)ޕӁ^ߐ9 w6'x]"@mRoEsoSypr67{+M?BQw3#@,x=iXOUbm,+"w\1dӈEnFkI(5iٰJ8feT;9.کz>DG.v_?\GIpkQ(p3c @.י_ B2±ҋ N6D!j(kɫ3N'{Gx6>d^y$7Pɖ+ԌC@Owk+M/L|dƧ\Y) /#kJzh`vKY96H&VFl We#$Vszϥ(:"mtMAcRJ_pJ_$5&牞eHꌳOɴ ;)m8ClhiG:]Uy- {R|"fpwQBÿ8yxZos'?eR oN56+qfgvq.|fP3K\j ,|"O^(Eސ42ˇ Ch,GTr6ZylLr{))bEF;Cw9"1Ɛ ʖ~RE/z${4*e6=DkʧP#veenBc"6PLc gXQa<.Z3vscǥZ6Ẏ,dؕ?Eho\\S#fw!By_T[\p|[elAW{uw II؏:SFt?վ6}t5t?-dR\(G?0/~D՞z~EG*3X\1 h|ƌUG[8 K~8MBBW*{Abξ 1דkZ}D}@fصq0 U."$6RǶ'Cސ{EON,Re/+++xse{DQVieKt@*,-A^2]Q6eqb^R'jZu Nnl%1qX"SSjo]R<{IY9dt'+ZJd XRL+S)Yۜ*K]sG1%i4F#w:Fthyx@TӴ>$bN H[+arfӠaPSvm#V"D/᯸/o.,#!)|kV^\Ųna!~QyY(˒|1 yxX$J~i]* fߓ7ݔ;4mY? =a'ԥ$r z_" ƨPN{Z ,aTo M1ݱyŅ#Jge17ҁ ,w:oENUvՃ^{+AI_%OAYwH㣀Đj6RΠYu#۟Î` F^b@Lɮznӡ.W6uxABxp_0aתm>;sHqsE1^ p=mHm %8}:H~L \`ҎMa7ߔ;6@:\l< C[vJn'=1db#<$; E A!N m뀞I]:{3#'{x'_KcN%@Z}[%zPNEQ4 PX"{;┏eL7 ؠ$Zda:CL3p^sQFCwR fGsyƒ\ǐcАfISq*w(:d gQ`Wk4C1V9ع', &Or|k`]n7h^~cUq迼u! |z6k~@"?̇/ |mmίytȁ_NZ4bM6j>=A|vnS&>"Cè"B4W7;}c`(9YOx߂=wdGlW/~>@P칩'-`ȴΞ'QӧWjRd26L*]zޞÎ[ArE8EX>wnD`cM,mMߎ:0Sð&Vc0@OGjcFJk]륟ߜԻ<uS530YmH|?*=zi.᯷{Ԇ- 0`Z|$n3uS8[1^Mw[S e {;-.OOml0QydunX›e_x& gxv<8(;vꉱ#"HH=FepDUÿxޔT+ 촅/˜gmw^D3mk$fm}1fG:DRFΩ8ƱCjΑ:U26{ɜ\xiAc8D7nDr UGW_;ru4  :6!nTlv@JȄu]E3YBzu]']֊(5 *f "DMtL*w1Tp՜S}N݁FSM[/ %Eo?`]UN浍u5t,Rx9fNOxkpцѳ t牙n6fA5@o7M+W)L^`biuWnX3NIqVVJXq olnS N`Rkҩ7~ GIp̟B"ȅIT7:M+JI|Chzgw*[pJbr*B|&枝kP ܷ CUWLگ˵%;N@v\/Y沛)2bD\ eie"6! a4DzȂ] d/"TPe y!kHA OM+y * :Е *ןW]󉫤-Z}qh /Z}dFe0/i̳J8 JPk>j;4lK/,HF†x4<(V"VkڰlB}FTPʍJ4ԩwy-R{+ty]VޙY|sqaYa'QfP_ _OS 9+Ͷ͈D3k"4ܰe wH;UfN6;#U!,RmuOw;fb޵ZUի 3k0DDEXfRFq$ҕYˮzWP,`jBDC\?#N,խ1ǶhBܮB6nI-l 0~5Eg -"oYX-)WT#S:3 J~Nvr[9ouHw=,IV;iܞ0F^1^Ơ|R2 E",/+Uޭal=d /2ͦgE{ux!򣍊|XDB4]@ cw0AQ(T3"#e Q<| z2y\44]CDt+ wyջqoOq#ATqkD66Հ/6Z,HyȢL[u-yE:ܪw.7eh%81*~ZT.D>H,-(?kQeBJHO 5rhA(T(҄m$QA\r}vvһD&n| ߻K}.+CubzR-$^nIr p %̔r( =!uG2)g|ݴsSNq7lYeaxN&TRN(w.\*fb9Fq9RZdK+/AI)qIi/L x[ö࣐kㄈ}w5RF=nc\8 {,dtX868l:`t8U/k3EIKޯW3QG0Տ${c ?})q~X#%9T aʙǪeXs6/{5p=c|Kj?}7_!2.2J`T ޷ŦU5݁I!V<& W9IhJ+g^_}3ܵ(,WtcyLϺ@t jI N/[P^YQ[{aՙ.8wE]CO 7dO |]EcW.̮ ZxO.[%y[B B"">KP?_WiOILubDO%fj TNRU(ГRoI<x@ N,@A1I= 7yu 8hvR(KV^麧ŞϷ/gBKs̄{EW1Rv $YȈgZ;J;OKh:EFaҿ_z'㭴]^ C0Q 26u y4{VZc ℕx`J}UEF֘P G$I{.'nICUo"Nd@=Tki biFo\Zڍ%^,NG\v͝/h[>xD$K]ex! B9we3?OX0jbC Rmuc<8ir4vą a%xk-F/5EYBf5%6PQ9ӌs'k/¬q$V/͙r2D{EL%mN(;M >ߋI*ԼvGHɲ3E"SʔWa­KJWrPwlr exC'ݱ9>c)"PGܣ?YIq'䥜 PWx'E5"faR"&20-JUC 6[&%Պ<)Ni*qSn뭰5$iT PDK}7p_k7^?mլX GUHB {9=]^NP Fo$DSaz#hYgY1>ȆD*/@?p ܪr7_\MlF5D~g=drml<ק|W6PbERc ~LGq<u3 #^IU4a?5uF_%4Mh0NKB|z\m?S`Ҝpc~8/ ɘMOC rD* sz&'o +۱(eA 1q~ᢩtѲ|uZs+Q\blTLi@+i|_+Z N/20V:IL_zPL(NNHv iųM\٬r=vS*X:,O:g?*5 "2; O! =@|:ӋtA`pr `_(Ucog*;KAkE່7}͟4&oL7LM3$8aӺ󎯙$yިcwEm3 Z{f<^pgo6-wkt#+9v9~l||p$W֧MA  X'7m;q fg8|v1_f-!.a+cҞ^ͫ|%h+kAS>Y#Z|uU$YyK,r F㉰7{WU~l'уUgJ]YYĤgŬcrRD J==i2@q0 ;GgAZ _xX_ _f6 څ>C P`jH QF{?tұ) xϬàJZ}ݐ;U4nys\sp!*nʱH㓘qI5KS/uuDkGnmt*cXiɌx@ Pp/+!v9睙p e470jW冎Eزjab /ܳ^ T*R1tƵ8, AnP(ߨ9DG[p)!!/@M{OP[G~SRMi95I b<YҴx]D.-aYܺ^m<\؅KlNw#- u傁kbۯ~Pa뿰69#&1@B1=zF O aȨG9 cܬzf^G W'{@jοWnpۧZGtI NFRHԈzz b$#A'43/?pk=AOfsbҬ?1OOū]F5o}XT&rl}x~XfҾO{g`,eAw>xxy g[Sp5+_3dY/K<~;.#ZcrW#3Pe|o+mՔ!5'BV>ԒT'3ދbr4WfڊTnU !gYr\M+Hd/ӊ]GNܰ`2 S)85*J7 Z&Irufo6Kί3ie2!Ю3qNaU+ !8DCŇ88;NŃ~Z֋^5+ ~hTOe3zPtu@gX)Cš78X*>q⊧]^nJ)Q" -1=b !K6Bl>`Y%biʈzROE=_Oq:zWO;}d> A/J0v@9NV=‚wļKïF;$ <}]!M\I7(s0a:a] |Pux-JB ?[_>$ iksvio:p)2gcUET&:h|ظn{@ZnJSH[&tߞص||c r7l"ZI &M#5Hu_|8~0|p#Nzcv[>S??C_E,2]rm(P Vό$daL45)iQEK7)axIv;ZΏֆ MV[i筂"ڑKfuGs׊N@>Cw9d{jfgEFtNT@v&̈́\q酁l4YGH71ǻ{5y Vc*Z, %L:1k oQf5Hl Vs= ؠH<+  %6<¸wZc69c !9@i3P V9k%$6 -~{S0^!?1hysN*X. <soq6ir$ŸuNB`usf$&x'cTPhþ mjybxoG7 RE|h!LL3"7V6֬_ē#V}x.}bVM-NzO~jҲh'p49~`o۶‡&YVs#eBG Q&Om$ l]QF*B`qwfQoBb]a׃-)fPZ$WtG ]p}&\*9(Z@ŔY/+jД&(2C8 ;]b9񔘫R.z JX:f/$#]Mǩszt<(c?7W=jK镉oYy(HH vA4ShSp riapuc\#6Q"sbB;mU_̈́rF)rt_MNCkƒ +߶!*߼r ЩPZ)c?cA ^*x fVm7/!AYF!zΗ|yI넑6[|ۊsMrouILRi.=w7*c(J}edb*b6YZy .LzjtλbTJXz" Bҵ {7ގ[̔E d^G3Ȱ]c)p%:3>Rs;MѠDYkptOp^Y4 @tw* )WJԓkJTSņooxBC\a{,y.$1{ӘO!,{)9~moHVeSݫ"CscqӢd6sʊ4/#0ĸޱYТpzYG6 9FY O3_Pc1ylMN(}0jv㐵\4l&yS @U805WE` (AZhe]uІ71Z C^R Z5ڮ H S`Bꐔ &!il,H?ꚫfr(  %N/HG``̨о6!ёQ꥜#>'(&xyS&N2>хЪ~A\=_uMt9Gi(>L7yh1 :jc[>'ؒ%cVMH\Ȥ<@xq&b~4Bd[-ѠtIsToVS4y.u.[F";g!25^M9:4Y6,cV`2f'F0B^(Eya(aD[$c=K yf/ j/%ZWlC~b ĀqJCcP7|`ƥY:r'ƅƸ>Oy*;!9fQ /#;ZYFmahx)YI}ID!Eaj59N =)olob)Ji ]ioϓ3xYW}:qx4G8rUm_î:LH7<ڌdWVdAfLu--:\=NNe E:W2Y=/5ytY lJ%yBjݺ'.^CtW֯1-J]/uJ>gA|݋|qe}m:X!o¬`v0U/6=0h ʸ D3=P]rXucM.n4 Ei Φ!WLɾű)vzzzI-_p9#iHRDn"?,ԷW?k+ )GT@?Pt[ڌy0õ`]_ 9kzY=)sP3Znca.\_u<|Z.mT>Ցer*1ڀ6Oښg!\-m: Ce++)ŭW4ٜ|*=!7e51b5C7;%$7a3vMԼp5HLWr*mKWG7 Vڟd fx; sHzm{dyutv XcaI?ThyE+w/kPyv y۔ՉONF̕HqIz6vQHl6F.c!m.U׳IZTM" '0/}W΢b-6ZN`WgW͂-D¢uʇޟ^;nF&5 `xFRZ ٗӾk#,`>7vInQiZnM%(Ӹ-J❧t:~C?Ul6$R=>Þn?:x3cP:GOn5<uYCf@s^k|K7[k Ǘ%]T5*s~bs9CdWh}=}N%5w?k} 7>i)GsStKSg2X!0F?u@ PPo<0Eˍo}v%/J}sC;x>؀h>M ,h8,!`!t6=wbqՊM_ۃH#HkrH:vZFp9I|CF"D#?pB 8$ĬWDҾg {Pi7u#+5̮L9u3bW R}}q/lK@!Փ+K`97}ks 0sdF k(,`zo8ˁ#JIsCOټ}>&u؎.pԂ/80L. J:wYhn֩G,t#^:^J)T8NviYhR%DLI`{(3B#̚ڊT-kw"iqfdäE8Ļ Oy G\F-E?3N 2A0ht46"4H P KMtTd&?/T (~M8Kz'TyUid[{3r >18t_!}B=%DZZ$+3]%wٸ.t͸5.q<ʹRKU"HѨ@3c1_3|ʪIh(H+ۀa#Jh |[+|up`+I~. $GGŎa6NPS]F ( ǕI0=ז)y>K @(`a_70iHyT)&1N $zD(an3jA|f;9iRFC:HIQ!{vМ! ΌO #MWfb-w̟Pdm:_'&ZBmuP]~7O6ܺwl ܪ<",[ n;: ӟ~82C@WԺJ44n7x֛[,һ+7d㍔TjMsʋ,߁Y;ǷP IX̽,'A8}i] T›Ӷ]nXǴs)h]`%~XR62tqvdVoxuB(Xs("`{A؉Q%F5rxY_߉D(3| 5 6ۼ>ʄT87zί~lRmGrV걿}ucWm.'ݞ#4s&άphKzo\LC8Vt }/g'cɐ~u* )^6bV=f,<$U:OE>魎7W 2yD)@!XǴ N+`ie_f4N5FbNʥӮ?'SȅŀP܋+[礭ZE Μ7doG99$Naa[:Lˢb@/eL.afࢥyFY9T=I0¿*ގ@R멸yBQ8 d!_wJoNJ{.qޤ_H}/)k{sR;m(]A=L}$ndC鰉R}6?v vάvG9Q:уbNmBhCt;͔yY`+ig?OFr9j1l~wKW23֞cE]&%+VL!B\B$7ukVAЖ-㔐\!:b3$ G d GoI4q:a;;yu)9~Μkjdt}ҹ+{8?pcxBu5]wH5(CKڏFHd> ^96)?7@վ672ycQәu2l]?P+ -QՁj{N6@+ :̀|5PX܁6@sU4n7uR+}z:8WDfnG]~—SOWB׶b=sGBżBS=د(a"mlZ Q:=U 5Ǿ91W[grI~NI8l8Ht= 9D[rCG_b/\0 ': W 6$r]p]{*b3gkpar`WaE{zz DNbI_!'\&Jgt)̯%J)".wIU3ŵ iQ]lCo{cl.XK;Q0l9S`p&׮&8>sEPqg:ߝ."L&(nƻc:4µY8!}f.6e22m g~d֋ggA'\->e’}?u#rAF?B6gOYuD:5PTnτMˇ`\>>en<) ׬Ҡ~j܈sCd܌5ws{}ym*S oD,Lm0RkkJ(͚:iuCBkՄSm$5iܨ]i.5KaP`\P*CGS?2,JmF@!: 5蜠Vl'\mBiVl%e'n9yH72YXb7 \!H(ٱQ=RքVY=yM`d.#Y-P٤L˼T᳦Vh!DoguJ"V2jc(_ !YjCitĢ*H2`2Ѧ;'t"Slx{ҹA-tG* ޝ&bq~e:| 9# 0J x3ۨxeLd S1RҪ8  Xǡ.zYOM G4g:,#;1Dx(VDXThV;Q{7Қ1Y h0L} 6WG*nAb K{rxRD1gpVh(' /+cAqYpWlOeũ [` ST|. `EDSBͯw1+7ẅ́;u/l< `6z#u˥qVV,1?RrDbKye!UHv٬n _L3 7nJ!;۱PrPSfP^I$,|H}vep dY`7#oSƨtn@ +S#_MЩDV!x[I 4fW.J+ư2k?vF)VV~Tk Sn{,"L iQ/5.'2udxsbT"4PK,KlRX){;,$TtiNQ5B]&\g߷,ꃫc Oݐ[)g P .  k% [})p*56;X:G fp&[޻| eF u5I;,p윰ZCm[1I3LhyG9y* '7Zv)VC6%Љ쮩s *bHȫ} +֣uc,oEZhpOjVFcx=!oN26X"Z(E1Rn]q/ hSfűf1Lk I*S雥gT4*gGs2&ԙ }BvzUÝ?ʄ8[vOJT{ e#V\p"ARK018 ڸ$H3}V*'c R dZ̿-E G_v7\LZQo& eG)Q}=~UZ^߫Y*St%XLY`oS #4d)9>C7\~Sۊ1$7-&cD?R1l2&ϤM,'#$讉oJ Ӑz80AO{]jgH  T0, /#fJ~S,6bx;chƋ&9JOETBFKM&,n[Ca Vvj+SC%14JGke D̝ݶ2#QcvdsdN7zA\: JִxѬ/pKrEZ_"Zc? [--½ w-!Ek,>/&-nd>W2SÎyT0["3*t20ع*z=XBf E:XŽT8~A%Oߢeg֓k0/wS Imnh~1 k.\mX/DHbF雽V^+3u# W#.N <'Rx$rDOZ|Ո c`a,_x)'Ny=I&J"((g{nJJYHfު%P|~R:#<~$љt"8b NT>|^c?sVApE!A6A܆Hu`Yݚ9(2ᆛ[#"@̔>r7Jo7;kvTo8%{9&HQ$>eI9p齩OiY)t؂d̂&0ֶY|I+$O8C훟LpG "Z[%+#o,|Fgkչ3>GC[dăp PO#շ[v좰жZfF{F0ՆXoP X(> Æ{(HwX`pyyXuTfG ]L;@dZ3XnVO8k"23t}m+K.: ێxrlMQ){ɼFr7h>ڪ3Xp ]߂ ]7Kk9@"rV9p6<#3_]uJm5Tm'IJaр2Ybd[0rAҼi\|.P^ N8'ޙdGJPxSǁBD eܬ7dGVxi'*msH%†Ⴉ)~u|:Oߛ :QA$谁ւz0 {QתP]LfئH"ZDidh胅i{TD'?WNov,⍛:R\牧\Ù@[Vx'g/-Y2Ȗu#:l k$<1S.ǀkgނhoB.5'dmy咦ɋ)˃3u!݅MGYHCw&Xo?"|b³Y~E-(ss^ `6q͋|5l7u\騬ʽ)*مACf:6 Xk39 Fh8eMu]-/{ؐVa$i>>'rݫQ:&ԩqo ǠR^p8Ϛ O\zȳ?ͱGa 8WzcN5.g7t@}w&1?\*\DP%fUt :;\[.^Qz̞OQ 6c<"Sީ&;u{Fc‘'uWt;؋4ꀣ~X73B2kˮ S(wkV{XU\PW<&Rt;z@lk]iyrls\v3%F0DNO\51mlG%{&'vdU6ĝ,I;z=Sopܛmm s?`nsDJoU^:ʺCb.Х:"mq!_n4Πo GnЎJ8Z?C]YIy ǰUGh׌5d;:^pM,NMBI,,nm<" 9 U,uF ʹEQ,فHnu5@HgJ;+#ܫg]% era z4QӷE+umimsT]fW%!kOlo.{\xI!i*:қɍ~3+:;! +Mb-6c$&G\L^@&<ʾ$]nV6rp~{[ănψUkSQqPu-̝VtPg f;.+kZGW M\\UB++6"M)rHȀT;b/ ̘u,JYat|k*@4]ׄ:>gg֍Zغ:5\lV\γs47KaaZ&uȰ?KI|Y%C%&?ٮGIsˡ햁'ޗw h=ISUEV!hZ)^#۞+E[Em,C(9e.(Ll_=cAIEJߌ:j;*ح$"Q^(stt*Jqp"Q~1 .Џ'n*M6AaGT+f#v=Y:-F 9[HJ'@mb4d T}4@4$vCI*ǂZvLt:Z̟`tǒou,,ǫz[Rl3m{6~e*D/¡2g^݁K,Ʃ$RFE0.,EKh. "6&4:)&eϜx°_15( `zO..iWat8-o#w`o>^FjKRҝ7G%( V!G^āM4Ugf=T<ĉƷWXh5~ZWɅm F i@/5!ۏ%VMyXx74U\Po1݅[j8L[.r^좂 y8mSl!w >kcIlC{C7ו>oPa=2;+ك< 5 -굊RuVBV"8,Ak^h`#| ͱq+~==Nچe';-;6xz{SI,> 8MY Njd(u[ 0סl5X<8fJݱ3{`: pl\#dƺO\/$_ &QiR_CtvbI44ӌeJɯ C4saV8kbon0)8 z쨩; Mbւ% Lwƭrs2S! xGX>N^S@m\THy#_q -y{~{aݵDŌ8b\bg\DpH%c+|(S DleQok(S/[iaX{Y32 pE±%y9ς% =)b[QDMqQR$-(,NTs_D ݎziThtb!Nh}t2UfN熴lF٥8m1b :%I|Gnz/9ς d|dʤ&r8]W W 9w*4yցF_e%XuwJ)/Zmp[d2p[wf-*s1>O";2AB (Xgꝱϗmamw;d 6[04Ҫ3ޜpa|W/C$ʑkb+΢by+:,C6IK",DV91އ+7Qpޒ?kצ2Fx=w7%!X1Lzb/LTx̶[^`3T{XA:E}pVRᣢ#_<)ª6<Efd$Ų ǭ#ux I}:rF4 |ryE I}5;ӟS FHx$-=]fXNBV+'I,!tz &Fnl@;'cHi\YwiմGA*ѥSiPSݫ+KA?QeqzacA Y3p61':al0%=2g8AD?)uAn"eHYрsxJG֗0s˸='<!'^¼={E4$>-OI{Đxg>B3>?p5a?B@'-{g.bo@Ήt+[]}2^amNL { 0fYLe$Y9K8q:޻s-E$=kAsxɹ ,Bav :#y4a ׆3c ],,fB-I X$?S~*?jyVtzM=`FM4@,) QF~iှwD/ŇN@S!`FfwJ?|C?]!|SnF1v`%ܓ>9T[\՝,1&DFdN]7e,7@MY@v9H: UYނ6:{^Nx(MmEfe̝FU1u31Q)zp\TL,[dP1y^ƭye\:[ \*lf&HqzCo;;NwjxkD DM6&:Tu+-ضGGlH0;q TJ4pHtTq&JžY{0nݜlEND2Σ_Ң[#fs]Oc{//)d2l,H1@ #J'<&`5?Qm9E-NwOk6]:͝Kitp`^+'8^ LJG0x7>5}*EC:ioϙu|[ F4fVԒ A\Ş&^կ"gY *E2!ꇋH9VD[ӽI zWE>/Př>ǗXm ۽E w벿u CEWEd%C>B ~)pöa[o|!M`[Gc;iz7-Fm&U=āC &@DIp7Ijl{&ƛPtF .\qBB \qᇅ&!;e~MkGhI'y=]W^ݷoЯG +kN Չ#+˲WD74ew?ZV@y@w,>[BK>I?Gvr2svQ7{e*<ԧl?xyT'rBY>V U<1j<2EF>{*Mzoo0bO4.8#J^naJ)Ҷ̲mrm&}?+D5h#W4tS${l`G's2i[ΨAHJ jB$9D?0$7QO"%))]T.UGc-Klxe8%N7{(PjV'4u_~>6(pyyc2צ4xnnLaqo~ͥ k oKԌZᅱGp) ^s"?1I$WdL>ѽ@ ak3^vx:N}z\5k\6Է1~C38,]Kӫ/h : 3J$ bR%LM<& aO5OZ…qdSm#}D-N:ut0[ ґG3QԱbV(qk*֧^DxIRsBqOcdhB*sk'&V Lt%w(wUHQ8v|2qp%`4yO“_ӧ'(ZL ,,-yc[.$E.߁fSFwZ:Qû؞xە6х&uhIOYӀ`W%5zB3 xC8š=/ qpKujGFg\5cY, O].)E28-,*,"jpG. Y^j{(QʴU\S,}~p ćHւ,""6[c|W ըϞ!bᶺ(t s.=V.ԗV]V6wmj2O!w XINH] SBYu3Lt}IY_WLVu_pEE^$AzShTDPgCy > Z7 @>#U3u6g0-6 l1sQg{g_|+bׯeeCn @ږuvy l Zc]N!@93f~܆`}l 5瘙$-tЈqMǛ[˂ΚϠ[:|&-A8BG'fW5h79rP#N|:iz΄zMNh)V}?deA%fz[C OZQHyiN - ;^ stQ{IS.< 1BQl$o9ϡ!^$'sϿi2J<_0g?$dsm#T<,J("G`RyԋKϪV?-j?TutzpC9tCq5L/δQE A5\nCz=οir8 ]w*˞1,R+0tTDNE:OaW7(5nKdR=f ߤy{}ܷ Xc8(vD jx5|’"Nqvr#@ՎUwv A66)2(zuYH(%71t"H5wBenMRsskk}$4m;T*B1SOI/[W&TpbRذv-DLOJL{ұZ2R0q9ȍ1o }#D%<F +#jn-a\.a1Ƚc.)G,3 [9UcS`t0ܲv>G:PO|}4;)D} JϳC,</uBLϽ1 x6աwre1rc䊋/ۇ/R Kyk^yޞ)⅔#璭K rz|mz0fPڳa.))T+7d6֧^VW'Mo(ii9Sf +{C:{$ (Xv9^—aKPEYQKrTNfa񐝺EnۣٗeKĜvTu2L-8@~t^ l <9FZ~͒]s}5>sGpD˾h$`8&w3aA7&x|K{meZΐ}}D -5Ϫո@Q3kheё٬pzlm|3tNǗ(2$f& 먯iz7R/ Kz?D&'IvO~Rg-l-@pƷ3<\jW-u& DtP0cn~ʸήZ%3)W|}>qיn:i VI2!cΣT`2 ׏c3= fB^I4ϧpʵb/:,u|ܺaxz H|p3ʹ_:)CVg$Uvzt}vCT@]@fHvW)&jW"[xNȮ+g]nw_ŮT'6~Wm#"QKI(;[#ae6Ҕǁ;a<_-{;ӓ4&R.nܿbsmNG-`ؗ2\22C @^&;ZHبT]C:~(Qc4O'pӮ'T}NVs]7XF}Jqs%ZQ9;a;vE^{\2BxJ( l7E. 0l s ~jiW9%񸙫{Z Idn sf_lb`mԺ=S?YxEˤN5^cFL_ӓ߬)29a@)#5f"Esyk}85puc&1.HwBqYZhGMUx3! |jK`j+u"reVr$hڰe' /Pm$pl.Kp/W3JwOYVuh>0Uk"u'lPX԰86N0R qkAaM h}b8@u!]xPy$F4]$}ruY栦agέ8̿{Uut\k }TRbEupI7ǩ^J-~i=盩3yD5psIg!c2'8ۇfh7! @H/OTgD# XLGlŰCE}o-0o'vowtrG0ڪTG7/_ aEhlM˩A^B{_Rm!!I V8TF [z&CAD,ӈ|LWU/^ b5 9VCcutڡH#szaPs,msdX w1biΌ]/Y!\ajoIM1KC*R> @7)`V%QyHycAߞgR hL/ONV6., Bgku 4FujKSm,|~*Cs*̆&;V(Zb{oWxjWzD-{ϧFI0 } b^O0%9 Jj;6#skb6 ;68tVS M/r&K N^S+ŧ_Ąx+%@VWvXIߌac^9f:2d]:*yXِŷWp-Q`;"ӆSHV`P2Β^m-AYsFXݿ!8avmPccu M oKo:,r_@k߈DgBvX#~.}.sxuz uYUVB߉nOj`+;4qFL!OVak^y oį.i,d=pv2]zQ\c6Z:. ))jSCTÝbn1mS:tPiCOc$7%'/_=56W_.pAFݸ郁5Z8e<0!UPw}1.iL;/MMD7T CaVVmO#1 |u#`_߬plbY&+W62@QW3snP8CLu iw@ww57QFbMm+I%.Oϲ7 fE|F.( Xm(!SbEH0v&Tv>"ܴFh#@0@Xb @m5rJy/)#,MB3']uEYrolMOLLRh4ՍvzW$ŊM[gpoo<\[4aG(Fp"^J_~m'ͯ[:(H[jAHVO?|]+.7^fnŇw}6L&+ELK&c%bYTӯ:-PY[.d$3v~<{4\uyT~`.ohJ&%HZַv,2؀PxH+F9հZM֩r!|cuڋ_,jl#y{"mQc:D&6L 1%+^,\<`D'jCHT%xF(muhdP yA+ŲX(7 %vt,yZݬzp%{w7B2')CѸ'WoJo6\Xc%޾ zIBLK_ FB'Vq`1k>L}6'`Uz 9U?1yWzOt iU!d q/Nj]W{y/ *aVF,h<س`nژ~SKi͚wiJ3/)88 }ûi DnB/s>eq+M y5!@R?쁥X9fѥ504f9E017zr:_Raa~tST#_b)3yﴎP5K,^M'qNb k-USxtOQ`0IɁPas( [%~sG6nOي#.Tf_u8BQ8b1-ߛ)8t[Eg#*1huln%VCCAvʨ¿}ΜDg*mVUpw0b?Ԟ0I𱢹ګu:usފCrOPMfjh W?h} 5o\>hYnꑍkbw'r[o}% ʔ:=Gqm{]!Ag\ ZBH=8UNw|ǭXj)7/z W뫫%jRxxMN4u?xIxfAϰ:}/px+h6MYS6B_˧;_ o(PUԜܿF\ eskMUݟQ|PrY8h۴ W(앬PKn_+<Zӯpҏ[ .gϚ^m.ʼeww ܠoܚA>-}_Y6⤣f K諉_jp$f[;5Z)Q^1~~ ׀af,@-WS{ȸwӪs rj+[2BF5E܁6DՎuJk xNzY%k1!I#y:z@BcP_7~у`=Ǜ.GWAeň7cx`AuX5$Yo!ǮwJlkԧowbXߠn }{B,(I~‰0GNঁ0L{u-3Kx_% j/%jjDS""M/9îdx1Ϣx2#Bo/5p%y-in'U {/c+~ɡ EˉSSTH=EV9Sl*e,'P,ŭ`u"e{Sy9ƦyZKa2ZLx8V~&F#֕O;q -aSҵz1?H]-[OOyrzMx:QpvbM]+H tZsK-'y-r 7rgcz qٙQ] {Iҫ4뎽A +sXDض*v\΅/8R$h㑜KPIZ ,3O]!diï\N`/dH&#PQgg@~Hr"{K} cS .zГS77P3+bũT:HtT/HDs>:=Jk#|;1SNfp:{5=6 (vM?p{FLQZMD][VrJVˠfe 5FTլXfxMQɧ&tPvggS9mF[I|ʈjqN]LO\94RŰmqG99Bb}j#1JXbf{@p o|pu1UDB^6wqyitY?I7H ;P}lE.pi#e7ұD!5 -| :$Oyͮ=D^|,5!aϹÏxAuĽC#4USK( 2'AO2bfo~.})Q@sJwlb)gӭA:># /g*]'O%!hvd{e~DVH ԞPDΙR.ߣwﻀ'&N Zf'"qJFIu BcHoY,>1 p9PkĭE؝!Τb^jՊ;@ldqIŏ#Q[$W,Vj_2`AGաhĔ8bV~gRCȷ&f-"7̲p؍_MBRo"w,;<>j!(|I25~/I>[jr b)Rku Id?! R}ծϒWz q~RC&9辇mFmA]{ «4Eghf-i0ZLx5#]{G0E`H$yW0B `BK: 3 {"?,jDȩ*٩FJF?f^g畛fS2b0 &;#i^lF.;iHqc>E^a]x7|ujִQV)8, AB$WsuNsWˀYa + Hi7bGZf., kz4̆}|XId, "T2)(-HhbZqôdIB+\ڨ!a; 92&J?Xh4A'5܊a8ܸ>,ϋHnV2x?ze4Jl=ypuYs[Yia#0 &(D7C s<ʊE:FjB:MT~ lqt['9ʝwoW&P-*?jޑ8UUYFoD#^+ ܾ5_x"f@C&B낷{g.4~t3$=:=lv}5B> 1ʅd%/zᠧ1d26gT:w}49=!EyGe͌v^ 5l; }+b$u!JxDhpcLWX%qxê2 ;ۺc"}E(gw=V8eUԚdDm=1˽UM$ghk.k鬄v0̲DNK_)X9>K{kl!4?b8,|R~z(1Ӛh^w$~Ld6 `Hߣ%^gd]>N7d/]g&i3s%),r mnlJe2Y@p0 5җ-<riDOBqxv)%2[K `-Ӎi aO_Иuع+;LTF ʮLeX*b|!:R:.ƚPp< 66 f|Yp$QMw}$4;p8r7 Imrٰ'P/ZԀw}vB0mRn?kJDϔx~7CQV(YƼ#DIFPi48 HDңoc0RE{ӕ@֞.Tn>FW&@C 2Uc$eLJ!Pedzʎҗ;fbYjN xTؙICXj PE!rBZ2s sM* `\.I96҉ZHHqz%#3N'{:䠰Cc8VmI0K.hkmw#7r2zғ\@y8S'dMbӪ u+j n3mF&dVXƶ,ǙN>)FSAjM\t9!_ g7Anr P \+ L((#:hed4 Z {V87FwBdHB&_Ų!vŻ`+)Ӷ @04}Ĝv\ciG0!EsGBK;ӞZEֹoN8˫} 83g44U թ( E?E?ב4xZeBbdi+%ߢ}`o)Rx$c+rwߴ(vH^.b=ĪF7)bgpZ.P7NI%l!GIՁ4!({u–$pF;(*-h6.bJ[Ai[Yt&n*ZƕFò ga&葳uqg\tkSjGLL:2+Xkn!/rwT=*m0Jn'J`5[8ОDoE[4_NϘY^q1N>80h{%`ovI6I?E>x@c 9Jd157Ӱ j|U2GpXZ!3/.~S'SSÍy2Ӷdq\>gɈG]M+RB3*Z(#(d_;`'ZxqwIRogW'fvY,y݃_R#'x}(~nH uy2*ˌ3I-  ! HWDž-Z2Co Q"+8V5d[ ?9z1_(炃QC(zAObHPJjߘ`$F(kOvꋉ.~KhKt BˠZԭ ?*mߎv{{DjâLG#|hhvS .헸hY>_x:n߱Sm`4 Pe!szH^Ȧ([\#~V&C"?+(TĤZ_>xw솨{ h\}[xt 1gZka(rwY}ًIʪ[6f%k"JOTWwy+,ѕ_ 鄯!,Q]T"Ф{ߛ=tQ=},Z.$SI1f!_ >\Fρ=Ѝ4;ۆok9-+I+q8-2gt:y={l|4 8A}W2pNlty2H 1Ȏ}6G֟!4f&]?aNl-߉$blu6#R!.6*rdөZJ-LJLD0/mNvEwwmSy!ZlFfH73 8%<xvyܖruWm :& dX7a J (YH8YXG5h&SI4f `t>bFg5('e^nSg,pcJ >(D AN:7ϊA=% dP|id<ɪ.D ubRۛ^ BFt4)+؜rlOy9,Eٛ[XɄL_Ƴ|I}^ZJ99 Vm%-~W &gQ0$Nc~GHSy^$wUpjs0,U{c䫏Gp7XwbyG?M'2;>&i1u>DW)\KKb\$76 [qE"DRғ}(|= َY.?ڻ]y5 'nDV AgH#J=i܈QXQhW=[ n݅b;L3/[Ļ?t)S-٪ꕣ+rBSl3uY/{) \%>tWJՖJ\hz/T5o%L~ml@r7fP+|./lh UlvXx*N쇫dޞP .`?TepV 1.Wa PcNFheJ=dǝJ$qO>)֦*촨lI=B,vɗHشZ7+Ԋ+s+o$Twc[<܃ ʅv FqwՖhFAP+z\c4P$S(eZ2㡝tح'b4[t*Z&bR,]|ʂ} TU=sQ !E$=7ΤG8e+$]@oT P1eXdhP&ߥg-w-C,$ɇ趀nQYFBx4'wrI<񑹑NĹH8H t?J*4Sb5K6تepa>^ 7x-Xۗ\9 A톝-Iҕtb5F͎,) a%'RCT!e)k3swGgҤƤ^sG $ur/؁'ȼ2B;`xyCϗSϰH>^>9q{&j84`w1ilOȚ&?%rUa\̸,Ħ N 6e糁I}NeezYf:L$aKBÅ+dO&z⤯vSN}bJF ȶZ߇Vn?U&jNW.(z WNQ{6N/b׈R0医J:*x*aw<6.yQ1p{q٨!>]Ug@=>F;O4|H{Amc27};gp{pI{m*:`y}`o;E;X=r]H4^(iڨ< hx…*xWʺ{ӿZ?>( Urc Δ> C }/k_nԲYT)d7#"0!rra**-nNmG5V! ,[hRea"ík~| OO1voIf7SYgjAZ x"ȟ[Z(3ri잡kwAi]nyWd,?xN4&OnK6yXXTּj@wSySz':7' SFI77$&{V\^Eт آ/V5u4Lg05CB,0uhҴ}KE2~Pu7-`aY2:`{q*K]O0tY\t+|aꑻX602OQ t@wFIo+'@3 9 G` $R`QX^LW0~,9ϛX~l\`Z;|=HCpiX `Hgʫ)У+;ڤŕdICVd`doY<¥V(/gj'N]Yϟ2gceh7z^=8BAq&k]b!?yۈ|ۇ?|VQJZ}LӴK}"Y>Y6wv s_Rhjyهww9m =y]nK륯fFB6J<UA-X:R =a3/kGc9xZmOfޛG\!ԠudؔYfR\6"S3$=u.:XO[]Ѭa7O{Q aCc*feU~(J Q|1vZZX K^5(ˡVMojn5>7۽=S% !xGVJ)z:&a-b8XWn}NF7 䅶+kETMx[Q&|֞H 2bXMkY !IB+ G?Fۄ &[tٻ!Mnæd*9uqba}[拵T $ɪ)}4N`PJC搀FyTr в%&tҬ@y(Tkv)`A)ҡX]4ovaQRzQJf+aDmzIJ8R0+bj􃷣S5$Pj$cDŨ~- z"oV H}EoEl_j( L"rbr_ ϣcCm̤>KKT0W>/I,' (V!NnѬ--z- *spQ%‚Yןx8FD~n)񵅊~*ӟ%.SCIN+Z'cj^ЂTה#I$џxƯ`ܝ/?Ò6oU0`v rX+Y=t׌VR_ׇtv\!1ϣ]ܳY`[Èȣ;S#|&0~P%~Ec8 .4y5Gasނ4R>,@OsXvmG/ͅhlآgd*k/~  xiZ@zñV3$ ( xD[ N:e H3YBqv34?3.kd2LOKLk66M;!X%V*:pt8YDHn͹i0f*짶J/-M"ϐ`D9٥;>Mƒ.eҕUgy*K'js2ԯhYpݫ 3M/@JkU3n4duL[㑷 XGc]'| Uh1v&FGi@3 `j, %G˰gfm_w6DJAЩib@v#.&@t:*XEpliq*sVXs6CFy$ť$G9F&fl)jzP1NQP!)e -WkE@ypow}'-EB  ]}eSDU[T B}ZEf:mDj1c ;W=yIۨ#Ngu'gdJ5ނQr7!ҝەe !vM$BLЦ:1CdqW&zmA=HWU?;LAѺ>>WaVL\Pa!) E\8\f2h㔘ɿgƄ3O[j 9m%цL=d.ZR 7q*[[ O3-p(*)oO*?a밾ؙ *j')q4PH=rd#Y]g``b9[ lLR "TáHEb928BF/9Ռ>`G% C=@0n+NUV>J7f&QRgMhv]ql4^q1&$t e+7QHIoL:OK{Sz1ƈ{Zi%Bj]|p ZL8X38"a֣Dl^(Jry_6Wu8Mئ㕹%CD#>OrvD̜q6@SL{eP+8tClP:oJZKZwuh aCpIVIwu{e߸siOSM5 <ɀ6V /Ds\p6_WHP~7U1j<2m/5V5B?3 jJf]4^&1EyPP<`(9 mVloS"$uZv{boa! uJEp4V SU Rn,e:qJ >J]楆O҃V⯭k jA"4+F5'UGziBd!?[/)ݜhT(NVC/4|lrTc=Vph](TBARkkyr@~T<^ wGK#>Z,NmtCQ- ζg7i  O8ߑ rvk:jRpM35f2Fd4T^*3޿?{O`t87Q bdZ&c(Xڛ2k”@{ky1e;C^w1вՆR_ lex|X2"ͪL-2~5}+P 1ع/unvថ"QE³4hŸSKiE@BԏP(I hf}LQ֍T(/3f™!C@VŠiwvvU{r/ 䚔J, `195 !Us]ko|}%ͳy(W'-:})ʕƒ=p Axz.^S \ "6&«llˈUf`sT#X4UpWҀ3OsPSSb:ML'_\m-b?OL2rGH"|(WV[ų1Hf4ZCL,Y\ W~<{V[C2WMWi d9@dw Wf Q(#¿S# ȚmnC ?. ǨU_lZތْP(.e`?J@K T qJjG^:5gRmG%HG6#śOÐY IbF2XD-rKP."$+xs90~^5.C #PnW҄ob<҈e1ʾF9]m̻Vϓ@;b!cow-.=r.C"$fBϪ iav{s< 2gfMۃ;j-W*wGVn k+t{ xG3 q~wbc:Udrs[M,QCo[QaY}ߐЏWCdmiȋiHV I/:Po/, XG__Zf7ڪKvcx{6J.lӿH%O'X$z'|b'%g VĦ!fѵE5t >)ݷ!Ny=fq5W{7% E~Ƙ#WO"zJ, T~| {-@VN%d).y!䤚9L/1`?s'eVBU]Md+Mu842IRivn,`?k7S`nC[25"Ӯʁ|C7^tؚ\+JG+XYA}7ۛg^w񇋠5*+/Uq/UJbyPf22j4[GR23ޛ?F[<ǩU>iLTxoÓ!S>76њygQ}BtivvTY:pszJrV&R7ߡ/~Fu.ʙWC9yAI$._` z@k2Esc-҅s\pPa"B /#i~)‘x /0=]m7NkɗpoJqb?%$r_>B%*Z1_تvn.cqh0G^'`hk<~@rك4 [W /c*Hr " TH x OA3.XD~qccq j +jIX\/301i,0јcudĘ0[[-*74߻bQ؂5ް(yUiEfxCsQ Ֆgjj 8sq&"BGEmaџ@b_tٞupA*~^53߃i5qhGV%D'.mV2(FwC-E.,;ZG}BM[S:QnWXٍs %Éz~]2OH]F-iVTPzyFw&꿂6}!Q/qbN ,IwXFP,u,NL9s4 SGhS 6lsOYNxldʬDS=UP 5&9 _OjUO'.8uAem;i ;UI2e{}d e@$@ZRG}lM3CWi%EJZѝq$ I7ſnrw,Y0x&I|H\>eόGn]+Iꒇ*d5:7+p"h$MӈEPw>ү2_,AS嗛^3_!WM) [QAN-l)gQu&Q)ED ^͓Jc)$57_erR]k' qϨadh7DdYPz/}f^+v=j߭ufNzF_5"ş )nm꯱']rr)E ;F`@HG)B2*{7L#^C8sNKuG/z@)lyC!}*˯ȟOQB?xUnG2z*欦#\pgɆAc4Fђ~ ;,Ap菎!yeC9%hO?Z16է+@ܕWIUu4ݱ^NvBRv3q\b?OUnxPJx36Z? m+P۵F_ L[x' -", "ټwc6VBVgor$t񋭓0~u_a[SUN|Vpy%Fj_9nKXh瘋 *JrR!QGvQ$Yx00fRUKU4G[8SJ:@լ̊\jTuri wܪ~kIY>p娨^;QE52I1Ă*Ss2rXC PeAZ>2FkL$.I *jnmkf<aT5D3 xk-xAue]Kڜ fiCruEl*';`Ŕk8#pc Ҟ_oVْ6^.J,0?@We-.-~$kܠI% E&O ؑHs!X$óiHqJy wiqO+s! ?5,7/)Ɛz⾹_QkeRP9\|h=\l?=8 ~F $ c}™$K~UhAُedS '/Z^ix܌P蝂zH2HZ} ;V/rc4O٩F|X2F##J:\Pe _RO,0]^Hϋ)Sα2d^ 0CRċE)aXW53BlPx5/ol!w=*TQOIoԕ fqyJWBMKkHeexCgr1'mɏ*R(M);Q%[`iއ*]|qlQb_~I-iW3{dh=WXX}4$!~撎=ĂA[ʮgzbѐSҽ O7 JBlI9ӓM+w;~ GzzP#aIb!lI"C_FjF=Xl[b<͚CcϬHTQ5 /cf[w<5vܱǬx`GTxN4퓊 er)Æ>Lzr8'[ݾh(V^m,E8b?:eЀa9ݍ$ ݻ0S(x_wɿ?A -.ZjYД  A|vdfZsX/#ėQd2Eڹ=YhQ>TƐ-a RP5*E#{|,]e0T3GZJВa/O`1@ec!DRӕ}lavR^)*qї#Sya{*"7ߧ V4QJ\bУr=SR J-Ej.\d>&]b +":砊JFy!g?e=N`U{Omh?eΤ:=<& 叱vFG:AM"X _FdVv~νo]b>t7H{h\TJw(wgK=0 |IS;:˖|.bbV6/:^1 6]NHg~h=A;s۝n8FPG>Nڊjf :a2YFr<ڽ]ޚ=^{4X k஧ޠZ7aW.n1m#ז,_nkxxʲA#sa].ވ+nV.\ w*lш+p϶ c_f<}NrT^N)#fV+r^s(>Ѓ|n Uo!Tbp]|ca65Nyٻ%&4x{$k: .b=+M.J#.,a@^HP-7X@q9gRbνG xh_Mݫ`袺R$9¦zH$N_6? ycoBkyB(Զ]ޓq aI(L-2L+h> G7#q"x4O{r-7'z5g=CAwBȁ}U!aƬc%*P eنASÛ,򀣣 (g/8+tF#4:IfQݥS߯y׷rXẀU_ެ;`F V~PeiZ6:s Pf y+t%,wTd(Ro*ay :UxD[ Kz{h˺XWҐB,v&x[S7<؃'/Z,p{}``/S Du\Tjc7i2F6`t^:a#Y._/'k@h/+V9㍌Y6|2 2JK_I5&.j6ۉѲ'M#LPpqI'YXy܌M%|vVg.1Q}Hj>{XUꮪ1" 4{x3`kYW%^Y)O& KhEMX ~exY)BP,a6(bd"51RX;#Ӊg#Zz(S$">;t?d#Sz`1Z|/͝`.Oeeruᑽ'wYsl:U]N-4=ϫPڨ(Ż[QtJ$<1*p_YTQx^A~70oAjjtRRjYNlyCBћ[AxtOPR FdGoUѽd"4pc9ܜz/< pw>l̎V2@/6.I/5wHWH[&DS1F@:@g_#wl@:"}e֢BwIl!8yrm$̤ы +.BW$rdy[Q3k}[_ 3I_a3y bfMsn9 I]5 7p3{$&+HDb'Bbr{P1`)ܪP$(Oe*Crf@]P=:aUhD$6%!KcoB_m`!q~v[/Oўj~J>+PN]zm׀ZF*8nXD/k!hh㉲gGOW W'q _gwc 5lD_ѓmY+AoH;?]8&o1 YgeDJ?X*Iy3cIEϡV=֌P x wfo_͛-&Y?[#66 ldƬw5@dv C)l@NiYh;j:5X\k4&LJELq@6$*غn`\]ed"O1AkbtSŘUF$Z9lCo]aZv,L jz129 :S<$3DMv?UBVl‹Gq=zo~jM0ʅi6%/#`E;R/Hebbc?]XԝP2Qg(J\Up:(CMOxweFfj:ڦ+bQIqOpQ^N._x'e`aT I Fy}UF<;cLHJVL7w|2Fl N}]]Ww70N)V/B5aJCMr;ME؜0U4·\vsШgni-!%{A~MVh ( տͬ@،ۦIqke XɘK_=&{\Wc ?mUlMlﳐZy?Z4LRE>L_$29YtdZtlOF;71ZpRhx mٌ>$@3"rdZ?DD 鄴=8LXҔ=tp֠ խ G~MWbu Vt ",q@rw 6㪇%9"pA=[{.̪0fPCCcy_c86" P};v+ gsQZZyg‰Gڨk$ Gpw/pK:7aEQ 24/Tc7{S _^7P?ڃWՍ)I4^d=S-eb6 (tsdUoЎAM@ G;P/NUJ#%abh)* RkեtV{5+iqw>QkmB1|_R^"h|W+xpeevpY8ow࢈reٶt r_L @臢3("ЩVݐKU .ŲЄ]%+3O+UwٙfK eE<]=N_y6{5,&;'"_m ;a?Ou">"xǢW?ߎ.xɒz{IYVHB4vz9 .6H<7wٓxzU9$3t2iWFvm]lMB:w|x~f>cYz<[gvTXX{^(E.YHz`$Z|9, NQd'JdR ?GsD d`hDўue^8JϚ" HT I$#1wy!XY7f:S_;;d [<@32[]ct?gx;`j瑙6S% Xˆ??EzrKGZN>:ǿ멬p^'UǽzRx]&}Y#`o@u!1ooAۤ^(Õ$bfsިtƯ؍ Z\=,3o7{ ㈰_Z2qyRzp)i R78~ǽWkDOM n.89E"! "Rjm?w\m0 X{C %2߿.X2?ͤB01B T5@I]L5؈Ĝap`:0ͧ6 ]@?2 6eLI-fh/RUn!EސIc|1nȨkSmƦhl˹nyPHVlv5cVsniH%̍c[T֡oǹLAkMWXPbın(T` N/Jk+D2}ZF&{MLh(Lp%M>ӽ4pޱSuWIiYj}RcsaOˎhtBh4~Ĕ͘hMKM5BF43zg ȑFZrR ,WP`u&2/CN&C a4*R-71orc hZ[:7]_rk_Ab=t L(ƵbTZM\[yr}Pb|RP.ZLݏv9e퀘ŝ'6, ~J$v&KRW q}W^(݄\Dqh_E^[TGZ?8\?!㉼OoU TE!M7` a]|ضc྄]T…1n͗ɬ! 31b`Cr~@ø^Z+㸝".?It`w/O7O7XY+]f^ jRmoS<4/A5pU@ b+@*ۣU9Uܫi+:*CM6\Z`dŞE:JklPmAg~ÖQL956XFu4&Цmɡ)&渹:gnvCV3756rA8Jf!D9,1qcPI/_Ba*#e `v}g[/fB ?y"xV5ʣLD5X-IpYr,j)H5-_D{ [R'c q)0or Hι6j+*- qL-;{..<͞Pn>OphDbd otUA!a#P(qaf6k^sy~=7AQM~\AF`F]R{;zm AxQ#\ r *kX'ML3(+e\j8l6Q/F00ཟEf 'ZdE>V\<_!S"葚G*D1(˲lv+Q.ѥ@i[KHm2x:܅S9_G9v'yfzND`,t'KIlT>@s+?y'~4@dԌ 1/Ny!w O@k!aS\[= lpώ ZYC|;}qF!o&|]Jm:~cƧdfC&6X?Q+QCjQ\-y޸Lx"CqALRP6O<]0N~rJ`*zw%ps m^B@n9kq0\H]vEܬ3cpmqz,6_*)".Ow+jY'Zϫ!QǡH|Zlυe;B W^0N"$DQOfe|Wn"”Ԏx(|]jZfԎ zIL;_CV0r~?7pgiג4ۀL_C_iffc[GdB!|MUTL#m6&׿/e3 ۥh~f3/&Z aXawGjR&u^(ئI~uC\< ΍Jpsj߮ZYy'=d "xw`4ګEQQ?i8at}EzM&Ϗ&8y9[!+ ,/X{Wx9]Mib8@ݶ~%ʭOd:i1>)LjOFFc>~Z'fTZ#jܱ~'{r5EĦ05]W =dsAQu1T=t[ J?0y=w0nPݒ30 QQG=otP[P[,2]EsILE~3}fs揅cD8kҖ̔1 hrr#zI{@;ҩ= }=Ϧ!Q$!8hR(TZ&lU:t26L}_Gү8pB+Gs/r@nbMEڐP2 wO #Xp!\gY9;ȤNRĻU L=q145<όXk40)X)E#GxDZwEȒR4|2QgI$@'"Ǔ68;nv[52g8^nwKMy7ZM p̲{Z]yT8 $H-lhR`I} 2 b."+?a)=1C4-0o 47i`<5cneQ_cKkŜgŦZb8W{gfelbho)?Et;(/t*dLuF٩P(z%7}F|O,9՜--8;`дF0ʥ6H^T?O|a=؉&]u44.Fj=-DN{ | ՜Sdk>GGM+@,nvTΡOh ߞ¶*`~-3T3 Dxd]ƺ7\񲫱V+z`+I[z&0 *I=crQ"NJgDA?Q7U _]h}B͇3VXB|/G#0Fb"gǧ C57?əz!,1NkNcm—A":5@6{b s8y>x<[;Im`dw .ktQ5W_4 2jO-4SUK h+% P95DZcExfM 3td>ተϻP".]".{ !VVb5~4NfgТD/=erBmMdVPXWro:2<}3}Ɣ>\1Pgժ. ze"beaV9Y2阢p. ?|6pBVmbI BNzMaqm^Χ谮[n^_:nU{m[d}y$Dt%|Z)x~+}N$U N1~kf⋆@i4ER?F4 +x}$0BW&393-`D,bw$KsA3wFiN9/.m| %7.\5gGW4y'e|r&0j5sY2svNOv$&G ^,! 9HV7Vz$4BMہen_?@AR$Տr=Un OfFh1be}&( Zpڙ%Ҙm{%1T!diTRnΟȂGJ y6YeWo(Mk;~l׀%NV*(Ybo>AN!&?'b!2gt5036e%k_jbhnM~S۝8C#!WgzRCJl !(I$&$C~~D <ԽF ҁp7 ^"z fbBQsV^A`B!QѦIB]e:#upg0(MmTuH cx0:$ +6EE&Zz.&r:HqX瞥N8p oG(qѯml4W)VmqzW(1u/U5!I呣D|S Y#gvrv) BtLcغNhhԙ=iH`82@F\܄91M&قqT$r 2H sbR٘{_PQGG<{fbb*z]Ӯl48:%_}r4z $; N%jj^[Dq>B)'#Hd&QZ4B,$)lo.2?aKP.:Lyz; ٳo3-o3nQK%'2gy>;'c)kj-`pAZ}i 퐄JHE`1U^Ab#ѓ(-hQp3Zj"P- 1md Kk:lAb稏k+8BT8I%Ъȇ(r\}l 8 ^T=i6X쮍7&K ~<˺ 0耥h7s [>Q/?JnUP(p@2U䃍4K&b7(Yܮ(bW/!!d>' : C_.BZY oy{;TDexЄA ?9uU\OѳXIaLֲ&wQt rOsE̫joe-NX|$׉!WQU iqzBYڃ"ڱ"L!Nӻ!ߏHF k/z䡻 |FKE p?ݸ%_ l^(ړQ hY4W04(QAPoXk`R)PkŶsZS0aP7_rG[9uroUqwWTwmpa~a@&^ #áH. TA_)>jlOp]M782اM%̄N^:`!tG]8@_p~kK(jYӣ!~ܫC9yj6X9HVsשVog2i%)5(6ޒEq)$A HLNԢkdb=O/? X[j݅-8u& 2n2z P hGw/]bu&>`5V& fo 7Tkv+I9sQTyT% T^[\Ddl|YȚ&Ԣ-:e@t}7 f Kf@ڧ\^N)~e9I)(q`>j9KC^hS\$]=6Cy~xCm$-hE*h0pU1.s qSe-`$2_. =$j#B~,~Va3~f2,; :I ˙65i_>Z?>Ԣ\^R{>@{DE 5o-r,b}gBTf^z2JLEA*?R-?K#4՚tdUIFRT0NF 4gQ|*w)BCJWxVneZyA*J}9H?Eu\:<_kp)eP 6>Q܇P),$4V8t.yc AcoM0#PR4ߓ3jm 2.{"]FA-E܄na߷te)ڄ_ 1ǐZc9iS!ZgNFXtdmϝ 1E;̐(Vum*N]\"[eԜNa nO9da_~^j5"-}hf\N 6?&e&%x߬.K8Ps%D-sk'=Hg 郍&v{-Txb,R*NuOs}̄pꡌ*4E8CESA-\ Zv/0D9Cg8af;Y_b}R8tVa,mf:vAyܾZJԢ=ΉNׇ!->bT`0CfFIgC^֛+CuaU,ʭl[YA "_q.ulO .x"M$LG4_dS4 Ȏ0ㄧ%ZH Sr@֮HbZ0{;Ͱd0f ۋѩې:2%l'} Ehph:.^1pC{ԗ #Hh*C',t) URʷ۱'};Ah^3@:4 ,! 1K7車K~Ӏ;ǓvCa%A $\y [F%41mƺPc((}G Aed`Ϥ@)Qw] (H N x|+1A?I3DQ {W6^^Br1ƕጔ?;Z?G K9 SësfjB˖DptC6Cig*|03Vb]8k+Sl}v]uQ$l!Hkqu'0kF"b W.nƣbу@oYpoV JnagoLpхÀYIiY6ntNPPGLĝ[ڂαu'`鋥*9)Ӎ+ .\n P͠0bc*<\j1Rl7&.ŐRS" v+₆r7! fpR֡rgB4nV7$!&*'ZAۯUO`Evi|,5kMT8FLJʐӶ-8Wi 3ޠ*8҅26VaTԲCiEB$DZr ^jDo.,<_?vMghmJ_V |jEMkOxVGP=kya2 }+lb pSCX |uK7JEiYPeqP% I@IRO/wpVu&1mL/it?\6y@-[ ]it4HdY`tcGէ]/('Q80B}Wyf b/n^5 y:C $Gs n??~Y~Д#v0ܔ=~0ԓÆ?,N0щu^eTs>-m4E滰 k&yE~*Št .ʊ9n9A&Թa}+PCC# /޴J@X 8 Vq8z&$Vͱ uC$UlI+Dd \yX[w]`[Hq@+Afڟ\¥ JyG_tG%\RQ͍h,)&h.P/-ߝG~3o_c4bB3$ԆPZSq",а@$f1KiΓ.䩹8ZٳnFS\ yDL 0|Rzl[$FK/xY/$V宦խUQDQ%{ou?~Fdᘙii&p!(sxx:)e _rST{^Vd-|B螻9C-g!&~;'j57 `Ѩ;CG5"[;1׭SEE`yۮ[^jAY(HH9̨"Ϻ urMQEws.wRS 7/g^gQ%%}]9(cWϿ{ԀI~28]=1mPfcνPM tæ dhG5kW{YeLz_;8Bز[} HF:> 5wb~e ?亊!a!Io+)odGjA+C7%^Ҿ'L@j̶L\9 Vˆ'fIQ+\vԎn%{zo !s@,r5W3`H&>oDq񓇱0aw*,{!ZW0Iۻ/0s~p/ לwuseN,NIπPw<ao)qobzOS`OHmL8SBIVjcnX·2Ghk˂QS6SmbֲjL +K%`ngJ-ȳl LT55? \ypVEfZy+`?eIQ᭣Y@B80o.fAo^Ez6^ 2ƒG[HbiA!E ܯo' ` ryܲd |.e 7vBFBLؕ]% )P QM~_%N.#5yM")f]0nIK:^ʆHSzόa9O G+5T7X H5rT҇y}k_tj<[  =8MV 9NǝpTݞ 0_䪡7mH3<7EKXtIt&b1/׈| *7Fɲi uʢ1`PCi )?h@[* 1 A&Y&uUu1}ځrUNM#)%}nr W|r\Ti M\Ć#L8ieePb<, 1[c ׆ 7F̑x3B*T_ \yb LQ7ϞDv LemmO [s 5vN?6)Kݥ>m \|ZQ'Mc*>|K]ےy8%Mz>LЫJ8+$TG v IB(;Tu9@+tsdzL3aqPH z$oh IenFXy ʰfJ11ٖax?GnvfT^[!vB:C6PNY9P*nwby!:YyY1;b^ck+G9z m*7̓>R#3K9e,؎kaΟo 3Bct lЬ* 5XࠏOfB>"yl\ Ñ3jj6a|#aͮw|)IJ@EM(F&ScL.,=! 1^Mn a݇LX?)xO6sWK%rKgSl+ʘ*U-U!(c5*k,h:!'ztrye9Fx ޳Ă@rcbdӆ7 v1"o9N5V0`+4vT @>3uK#莲$w]?K7臰wy6-N^:uycjqN7zLtY:+:t͑8t.8E'lfLv{dÂ>&4S稂1;1/;lR/~QB?$W'Dǰ&穅xfz& aT?k|p޵{e>?~*E6K_\fۚ}Zgei>Y& \jy> 3+ lro(X J8F8~A*3ihsl[ß 6w=H}FgqSWY;߇|ܿ~)*']Q[jwq=3+/@7ӗvȰQTO賴ԁd>J$ BoDjZB.5=ogin5kTĀc<,D_jԒ4!(잋}˯zu 67`L׎ rXY_N1*Hc_#nWiiNl-\{kǑsOy,o;g'v5%р %pU"q%n#$\&ϯJ|ieW~"Y~AJ<5`k -[A{ss4e'@JD.+[y*2W]ێĉk,hWb󤠑 0݈cuAq;ͼlR'D~`?Ʊ>> tO+ Ö!!}̙O#KEpNd]nYQ'Y8ƫokSN?1D.JV 97$)AEB3zfK k){ x}1h6Bv; U|sאAEBk!,t-r.{C8Id$#`ph*eAHY  +ے `B/9s<:7M%ywj~.ꭦk=ZR$DqAR6>t%$ fP1fw;\OțhHt :A-BgĘ Bt9gۃO@f€rtshl/s!4hrU#똓_Tx"{>!5M;qz[q=%@0O& rKhSC7_BADxs]+ch7/3b1raWedO߇8i%4]gU i{ R&Enb<: u ی;8L=rF3$.*FHZL ɺڡ.5q*QdЕFqiu_;@vhe@ N.N^-t# CLE`L$P)]˔]N/Z" B`lӿoPdk1T TUbTևɌF~㔄LvNm:fsUI'뵂=3yC8L.46@n@s{6:%\k+w xd% _"ؿ@nuLt P)jВV8[Ue* :T ѽ|݆I xbt"'\g i""r;&jʶ]mW~zĶgD6%~[Ǔ_YɉuGrE;^1nlGySRDJY*1yЁN /w\FaYeIcaIyW, p kyX=f粕jm`l||ESЋwgvTwu)q#EF+S|ωDrӾ&eB/ׯܦW Qٴ5cnok.W+,`QO/p 5rt=գfɲo)57zA. +E,/ޅsj^n@!Fo4 y?Ǹ_gi)؊adR6:T})@~Ds~z6)٥C>j6LC Y:K%Tnb H0?U$y؀`id+XoM-iwDop:/7GɂLz1d0ϛҳhLԴT(=Ao8Ys;x/rhǧL9^?Vn%q*rQ, j<<]Ck_ОnķLqձ"3 1"ȵNn@ Yïj߲0d$KnU+ Pp-ΓIK(d9(]BIKΗrf+/f[ZIu*W"j@VH4PF18]lpXg( 5@20 e[ztA?xæ&\ N@|̩39[}e;?V^ L#|ÇRxdHpA[4&Z 㦠jAЈ*hұ(k D+FAg[w 0V d'JOJFE!递\Y~:5wc1UpƮzNjPLak[6T,s堩m&\? [EcHޣE5*RHDx? 2YWC0X=aCB=ǫ+!ۂ2"Ǫˈ9pl>.ڳscwWD-Z?J;b#H Mr&ke̺W|X&!Edzف䕣76tkfcyd\GIƜm72`{C:7rAү(c$͎e !@QhKyNm Ǝ?^Ё;%5^+dhc|UW\g &R_ i P/rv % 8`uZP+|A2գSW8B¬T &$ovCW\OѦ=cNjDKY?KXn$S Qs:U5:<8{ MrM][G@dJ-v˷m{êpDxR`LfxURO* l2p!w" #j@T/lSkܭ~PΣ&dCYUbxRc&%?@s^Pئ{ ~WA)5oi `U٭ Vq̮p6˸E k W-o+in(l3оӥI>`.Tgmg֦vc31@4aPrkyt&"qbO;w q9N[hBhjq1$ VTs|2]3lIlBa 6ѳjK" 8e߼UOǰy HeT/4PMMu ʜ$|Myyr;À6}wAT M P"Ձ\Dr)x<򫅼^ѧfXoL #Hug}m/;@g2 ,0fl^B_,Y03_d];A{ N[:&=_A|:~?qki'faR=ש2>_v`~.z:"ApLw~t$5G MkVZ .{:M`G} Gd?I+@gV>LN*^b@8Fl Ҁ}Y ̠[eY[Ht *ޥ*l!\&-*#u4_ure " \"NxNO Y=`ei^gvt@l#us?7bQe}"7 ~AU 4:1 P+`+ h;[v=|}_{ }⬮tke?]A$ʳ!vQ#X H jO]3ԈGףTl!q[plAΫNċ`9=ҽ gQ/+쟐XY~BGF!5T"|i2(Si.@D k {VOlAS$pIZ.seF3Pc&C)d-.KԘ~âQwPQV1O~f(~-N`C<~&4'2&߼͉sm{)". C}(0cβE[egqKя 񃔘}Q:[ܸeajnj}9bm+~=5wBhK6ز—݂ m8Y4\K9!IbS/g ='Ob~sUWnW<->b"D8WTu~`>uukG lAqe"h 삔8vfB/KFm5 J$# :!lIp%XR7g凞 yM?/O($4 1{_n;:#PWEǓGWDĖ|[N-̺(( Y\:ܻȳ9A' C\:7nTgo19dQoc7a"d{D3Ab_+>6] (>fzոD8 &v~+зcGă16)a-jEp fI.g,Crovrprublazִvnb:"[x]No~{䁁+j@ ^wlܻ y '&AA: 9v. g* #A&⊒S!,$LÙwbAR3o2sQ+Ϣ]" X,#E*As]vp4VЄ~O CʵT͞3#fJo,kIs|XC>;/ $'!7a PiJ_#ɚҥ K$Es`+(@nzؔS>k=h#ĺYq2|KId vcv|XLɂP:;5XB" /SmKLV38oaET2(6H )Ê8  : k-&9AX{z=d)2yO+:4g=~ T@+ GE 0Ć:4Ʉyr.ޙi@|Q2f.$"WU6\#֌>ib ~=٩GkFپe h oeAA_=Qʀɘꛮ6`UHґzeRf./Z},~\򬩘eR"lZmC xȊ_* 7ka"̿>?o7pBڌ I= +oʯ:y'Ms5 {SY¬*'{}]eT^mt f޽%R #fŪ&JZ:=]\b:m$`ߵ{ _W=J-ww돦XTPL#IPƪCixR1 my/" ET:w >BDTaCG#[tI4gC{NztEoA}>9;sf$"9D~o6/bVduEJÍF8qe(\zYB ζOsQ \D3ȽIvpVbΎrUfNDmo]HR[%q-rrVֻj.= =G2WC }mtfRxAD9I~mWG`"_8u\'u_Nʪv2v%Ǟ$/y6goG)@cӪ=| +*6Y)ͨ\} ҚM7w?C/ny&1%N>k9N$(f?לQgH=p_ G+dl[ /oX~Q<6}Yq~t4O l5EYۗ{Hu2 VA8dya_ühUc]>kU#2.Ğ`K } qUFϠ)rsQF OM0 {ݫ67{+BddFS9X3Lx z21y}xYdN3.| |Z}p[N5撢xVGi>}3J&.ń76]֣/ȳe>,}s'Am}"`X"b-Plw +"̞S>`\YG5@L"ib.x oe4SӨji4<# h[JԵF1X ^׾}-GcgW4Vc9Ie=dPpH\[n?vOn08 Nj VB0Spdnqk^0 #`ꘆcS7gD[iާs=%jd9fbrbUޫ /q,.[#{wם=Ʉjf՜@ҹ`]@YMaηݺCK8ORl8CuUg_<}pûmd\NMs@ML'A#%}N VyX vBW˷c7ȥb_l`OǮ<3U֎E`|jִ9ɠUp~QE ֢dDDG,Z@~XEd\bu"0mth sn"3e p8&]O=40fcdii^Iq[V<ĊeR-*| 9|Vӏrz%6\\>&&<^a/Җ]HeBHy2p 7;dZF*1ǁBO*p~uA r0qQh;OhMCVțsaBoVՐԃ;._t OS qq.> MENW^0*5P8t QxE*Ac@)rՏ$ ڙ_1{%-#D=lqr5dYjm-p8?5 #krdrmP) Nnɧ;Q@[Ć2viOOy)dY:ǎ"a @EaA t*РxElJ yj9 _AJ'Tr.ed6MJJ1Մ4tŅh5"YLsUT^Tϕ;_/"!$-n;x c?+˸(qY`ֽLnh-cD\T̆3K}ưpERc-EvD^ b+c:l7:r60h98c 0G$Կt" a W{w%7N[\t:\J"Pr \؟ˤ=$)JZwkdwb[9#$8:هu` #AlUiL_;7E|d7'-č!߻w#H,-z=+1[O22 =}%]6_=u&OT;#I"Bf fJZ{KAbK$pW~5veRuGk?é"J-ìD ?v11'MTRk&x$8S6IDTN ">ab(l Hx/lGemI+Mя~NA|Na=T-l||QT^̗߿7e4QM/l]%l 9nrII_"Jſh1Q}փYpo[ y,DG_MsMO hx'*pev>H.s'DH=^IV-FN}@Ha hDygk&["ȿ)[J:i#rn׃nr5e o-QyO-hF%0 ^Z-͉P - nj>\8St*6 cf <;HGy|1e j^[.WF 4:W;O4emv9lFTT3IAB%۬??iAjYCa6agyS";®fCTj ]$2 3ٲL:}lr ~t/ƪZ5Le DP l'iՋ^&Ԧ* xq Wg\6b.|ܷEZf)%FOh]~FhaKH$0ɞGbVJ(v!7a*!LdgJœݚS'1gtfr۽5 4*\K[L"du'񟢮qe|.&'ǰ6k=Iul fCAgqtH3 /O_%?[ FɃ/V6ḱaz΁I$&VY$~Jv L]Ik\; =4ULFB4V'bp)k#I>:(=-Ҽ>84l[_+[36A˄Cg벾ʯT15IV"!S<38Ժ-ߣ= 9TH`T))=nZRx-y?J#y΂DCP<:J,Z j;À ' n |rY@ nn҃ޭpQnN&~y|dk.;d :]ԕDSr[I I[a9 %_I$@?aYh+}k &91Uk93 ˰'ZAmlS l#@<\UIz!7P+t~?֛{`*Sz Pv9/ ]AiWYa+~38 &HlypCuYHiDR9vkd<\xgk1k 99<| oq8b xl=`tLhXHs\j1b:1/'9[W 0m'_ǻSר=y~1L+Y$AG鄱TUnyVKۍCW".z4\7"!.K j6A:4 .GkVs}^ #Dr *HǒʱO~h VO Z3cݢPbgGvyaa7n9-Ò @@)"J|'oȎ|8F.fe#u/'ssyS m-r0 LJ:vvaUffgڊÈZmؔuBj(Lh8ğ8z"21sBbRF,Q J@Jp=.f={5vP@O|sS⠔CO2v=8ԑ_2hVy%d퐡UJBbR{yqC )l12ED>SB lGEr;F|O QfEK)j<Ia60b)W.HfV룁OtAȜS1ADcG>!&A~,dy`]Qc{貼(#){ikَcz!rk D@_t0gF qD{qx~[`<Fm :k,qM񚏣>FmP]ςȖwV<ʵyjo`g}[1oKl.%6FPu-^m8 )GUNڒwr]0IFH#Ř\Wqp'#T9Ftࡾ i҃(jOu~*zi7ÄuIM4йXں ’V:^ýײA9GŎ :::MئFI`;HhHGR먱H,39olz6Wv+ulbp+gE l>fmJP{5~_ޏ[Ѧ*&m18p}q?34"|z!GI|^}F *a:*pՐZ}k$J/Ἵ. x7Y*̈́;d;1ZB94>:G`$6L1ݷM{Mh5s{ƺj*j\~ѠĹp@wMbZm%^Zo@j4RIU,&em+X Ik7LF[Mv9MAej~o@h>hdHW^s.͉,.YeO"ۉvE8wҎ(݇[ew\]xdcAHGh{u9DD m FuvI[aОmzz^9-0>m.h; yNE*ĪPF0Ru h 7sp2jb܌j 8E{Zb'ݠ.YJUՊ;߼ꚤSx1A2 "gS&;^r[AFkڇƷ8/cfBqVACU&-- 2IkSfr**ЅMrYVV|Uo@͵ eFaۢ&V692D+VO<)[}ze?3jFю41Ktg.9u>ɧ9:"7oMug_|s0Mz$Sfzv_mf?JK}3'a`peH!"5cͯ@#}υ}50 _A҇!7U<%-/{w 7<)=._%kIIU'*89lHB7[. qX]aS_BLL0;}L{?bnx^ZNʿin2R{n?˝̣)\nب 7G:DJ %O+.=z[Gm).F} ֖bg&ok 7}" >VG`F׏֋u2cf[]RE8IJ#T=PS~Xub?7S%er@3)}tz| ?BJ ,4 ϺB+"Kzoـ;gܗv,kFNw~;tUM['TL|w'90K>@ )ů*3]VΔM ddr"l McER61VggE",47]T([\SK"_v}}E\0Y9; )n '"P2 ۀz2MKM}w;k]wkB_c0%lObEvAVxݯ; 8K-]ؾ>xu>E} ꅯMԱ+f;Z@.SDѢ`i􍀍O\3k2˙%}q|O -)L:ܘ>y5;GELL1y #"~`a;i}5/rX mkt}~R.k_^Fd,/ />ן iCߴH\NS4liŝ&$-KјA7 FH/SpS/oإ*g܀$_#uԈE*Vd qgx&wVqDDb8*r1B^_.mpT**[USu}o6P_1H@ES{oݢs&5b' #I=f.`uLN֎DzK"fo%u ÿzDiFr:_\D},9A?y 1a =p[OD>|MR YgIKjs+`hzU%)k4}HJGݯ3(<$tF%(Ơշ h6>O]ю@\k [0 j/&t*sv{L6YquHU&[vLė!A 6t#HEv Эbwo Gq7ur@%ͺ.it,D<7 ~XpIǙw]08 /){d JSd|KDM]F.J<ЫV߆Zam\9i ~R'*(rU3a{#YO:2`v`V0^/P)ߦ;/iVe19dBڈ*% ܧo|Ʌ\zY7x/zhoEPC$@J[X#h; )A\do5QHSV*g* 3duZ)(`;m*+*gۖw*v(-^HޅM6@ O/Y'VuQ-'Ҩj袽c~Koս^'9g̈Jyt(65uu}"iw$} Aϧ{-C*?xQF jwd~DŢk8=>ߺ=MuH&$~̅NmUQyvAvS}3)q"XNAgi'qP*882P Hތ甧.`a.[ bbHba4}SbPA>SjiZ/KViq?cá [֐ 9<@qԙ{$w~àٓ:U K)aS'H߿ OJJAj?VH\ ~IMPvb ԸC_,Zxe]lۊK"8ނRMQX_ ]"ɓ u*`#)}W;>K炻@|oysvybJ oh5ʘhɄhpdY7FslǾ}?1 HlnAװ{dgdl~KF~č`է{ H 9 tr?2;3*gĿt~Цa AMV1gЯxn%b,܊֌YpCIMR{Wٽ**I}x>¶uzY0r(Krض$znOp 1k8vL#)N1/ؗDP~Q_/z[wcT_Щ8ޫUi?LQTlAYӷ|zXϜTmKNjZ+QT' ?c`uZO"=S4Q_]~'O42fc{]ʁ_[3gy0#GxbZOXFy#4&zC iSNN*&1%r+hXUi@ KM(rr%j><DheuwT2_H А0{gi5<, ij]$n92)ؓ5FP+tyh̶Z-kٗTXLјuˀ$O*֜Y兲xMN&㵲e$K_:zS|Hii^a~=Ȼ_ :?//CոR(yk PnTCwٱBZgE$6& `BqND`}2g9Xջ'/OIUX~HghkFJ.I$>XRz(h2OF| yu˓v?S81*e%wJsEdG^֛;iE;hjLq±oRR䡺%_Lve/9`pp VSyUoXHUqЯ_^NϫuQ> e qR8n&U_AIN/ge@·sm9|ُKO?08#h-H(@L.o8;&b("@dbemE%,[5c4nz%5? '5r/M5]0o&adnN7S%׀n] z1+BYCa3Q4ՉOYK RxH,\8tހ2˨F,ڴotk.ҹ̱CR`aϣ cFĬgicb}WUӋdܑZ{dmXbN&u9C7ame4EirlGކ)a'!G]iHt r#H(9j]XA7f>KVћ]8s0T?c1r`(*еM7ϪͼQaƩ]B]tB8Oahe])F<M'BPePnM| ^k„%u&Nqk}~_0GKu?INto OսO.T; ZrZ Ђ-e8许4-O)9j@S@$+ +qf||c9 3=mBnhsh,bQd4 ,{KGQwy9R8z1DZ6i>1N0r┤MœўDBg~fuujW0}+Oy䷲TxGza}T蹬FՔ]"SӶ2wgf竇L#rMa*scHIE rjjXndtTTwV036m+;e>͵/V29!Crlv.Q!@?=/q(%E#QY' W 7Ua0pKdrCr [.%!7N_$3J+ǝh",|P`FP< Ygd5`j# &- :]]K]$V]6^,(4لP冇 /2Nx&3,%v 뒏M((b1^GsBfqG+A99VWV)w1ZAX))co&2\W+:'-:Ssњ2IrgEAȪo7a7ڰʌ"U6COۢ%+4(ujkN\Nt{Z]wpky. $?rjk'˲5B6ݯ[Obn 1#Rx:* pzDP:]pyƓ'`F#J$@!Sw*-Yqa>v }H*FBڨwV«iKu(ptXxrͯe\Wl#Wil8n{1+Bn7vc&d}12‘uN ̤fkEO\;2xy$]}eJHZ!BM0B¼u0RA#E_]cxtJ8).tk^kM3v󐫇L12ixP:?K|\Q: et1'fg>h.ȼi9bZeٜL Z8zDv5m{IT*ڹ,h8]hM}k/Vt]bJL4V(\~WmMaN D'#FRqVWHH6%x 3[wshlN..x'>,A_REFΥs)xgj J=pT>(jPrS6RVϦ])7|3#x՞*e2v~JšJ 삪EHzo<,VbqzX4e5UTyfAmX$3y%LUוDOv,嵂&4['v6;<IUo8ǽ_$ R AIyGϗGf=dOjAlpv@DA&</{T m ьjMdnBup83Ua#t\))x>/).&쿵>h!#gL OG0psU3ƴˍЙk4oe" )RP B+rZhv2Δ@gv@\YFDfd'<`E4 -spD.))WUK4mhO*<.G|{|,fC #J}w3By˲u+,M`y۱ kt4]B`0Y.;}6bB1~_:yhv0X1SP~\K{wO*MwY=&~LF .ݑڸ$5Ryq:8۞z`.tFe{ߡGwl! .v˾{<>WB%7|i8y@FYSTie.4~X|e$Q2!;#sa$?Ϣ'yYCCRE[C!KRD֤?pi>ttk8k +C1b/XrJW"ueo3'">v )LJYiEfI$JDӺ9U\-G,j5+{,F>) țe4=xluysŗ4eзJ8? =QCت,Tj [C7o(rҶk-d3@%f"B.aC[)/jc90U>l`((BUseeI{{M$&aKhdGޕ <BS8>E,L^xDDQmije {(p"\C)B*l"]~%sW$k݄aL6! G~P=)9C )ϥգcq91 3 ]-ALKC3!S4GoV_sЩQ{5;Qv9]jvUY/Ր 4r5a:$'Nr6Wb16Ehoyx׎21yf3t3fPMI%5XZ,a!H2!>`wGǎ#&ƻaםR{a[MOYoV ſ,%%o't(-ؕEqUan]NHZwL^!Amo=ҿ洟׻JdOUéFs~3 2YS]O.ܔZp[GytMLWӁ}:WQmeǯؘ lu!5xwvHq,kn1f: vnf_c&e(5M7t4Ա,wH&"] h𛉯 l,)3 B(O$.2b]쑗$ME9iib$S HbBSQHHxFeoAt&H 97u3ORMA%[ ` E/GC'&ŞIke85ٝ,Gz a4n Rq%f2SA"?H0a?_(t;ͷG6`y;Ih e9gy'44EFL2廒T∅PXi+h&ͩ;xA u"vtzx bQ rS9#aXV 2qDŷ[WgX=Ǩ+TCReB%=E][rʅZI2MZJ|,?)Q;B U~"P*x<{K<>{h3폍gRv&[6؞17p-QST.}aY/w6 $(-s!`‰ίٸGg1E\ iϭkˉnɑ")5s6 ^9%jح&gbvcy+WkHH]:jh89R;Dt槈<"m^md_>I䩌I7gP)T\$pXYUU7_C=aG-j8^`; dA97 CJ^n1J,"E<_ ˫.]>XlefUn @TpwuϐE kf1Z+C6vH@ 7֍H^sέƆQTQؼZAIQli3D-qGhGxmuۑr 2cM(9Z[$J3 Gl9j>L1 r QݖIށ;~4NVl ď:&Մ2O4+L~wg9ߨ0M$mj* ը۷vþ2Nr`!Յ A3×!ɛ7b'ذ!Br~{;kc̅icxil) q_IvAJ\RR2|y+Y|m#婡Ɇ/;hW&B6,Ε,ssO'x:F(%Cst֐$#N-nJq#6Y%9/%ۓJF};Y0M4sX~"*$i{N+DO;8bIF{RxG^k'.JO_"˵xu&K]-G8y&+U/"Ujb)$H2TAMID>fTF?` ?7B\;hDԖYҶ.%6㎵^HG^v|iRc}gvik~TD[wjBܽ!e{N%2K/˞0zyHq^1]$"qSODGN [sVea\Ծewdb_/0&,p9q8JﵙAr+ } J.';PvԈsyt|ER #J*]<[3.`/*sOH@Q߳fiӄmzf㿅tT>Zڥؖq+w}):(>MD `B~B8dG+ab-]=a@2&-_K\8 coZ̕ޫX̂ՖEuH0۷s_Η9cM{=_`^Jjk;,D"-+wi7_I%5L{uPƀg˰+Pr:lT ;!8:V;2;/[Y XQm yl+bbTEC|({.K7WG?֒o5N3W0ܟTdꃨ8Vc/I|DԶX;i=p@&`G`q4y<]']:іuLٮm0z4)8@逻v/ض,P8jz»>ɵԝ#N&(0i>~N5`lYቌP>'}[)SJYFȃ0B-{^u;q9 E5Tk/pn1|f(`.5JeN]nz#{ $B~@j 3&7'SDz=A SqPce$zU)Ȭ-$[@D0c{ʉFUn= /HCط!s82 K\! WCn>A[ ("8gLF^uDTb1Iϖ @Dac xM: SH0q*D,mXc\[u/ C+~w y6g6X\cFIa?0ZYnf0fNV_@ L`:$WA)zW K; Iɠ ,otARJ ADs{O t+:j973uDHڟߊ_Iյ!0H UD$hmujxЇդz@p:~67 WX\pz^a!p֜!o"2ߋޙiqH]!<[*f+.o׾ P 6(bi-Wn`?eMi?s"‹Bc|E/sU6͐d2ɽaY$t{^[?h*ɘ_y aw!їʐTb^ve|̨kaqMy\IS7Xk^KW&=޺tb/ 3:BMX="'{CÃ:E-O >۹>˴Qǽ6T|hr-8h6؊ɛE#xr_z4q`ɜR#拁;{VȮZI۔_ɷ%RTBl/ rH~}L8uԸI wYEZݢUDV<(u,Ĕ[Ze$AIeByHWc  3ɜd70 'ti+}Gu<淐 8yFbc>Em?N;0P,OM2PR*:?,D9Yќpd%>Xl̥}sYcdV_Keg(XRAY h ղK- $ez_Z/~+m*Lzĺ_{" ^N< Qi|G<ìkОd0ynX~j*;c-|~a(Y0b<#?:w:lC @(3"f.=8˳˟oU,ਐ^%~:Ww*Xt~ZJY@\ ĤqXG20$5)|X K؛-of{-ZU1٣R4v!!E[_~ )%_Tv!מK& Z4 >ՙ(-E,Kr)NYHܸP%tZ< ᘹ,yyjHG Q=MwʒmmB t\ja":=*()Zw3r 4`vqYorcw_Ѫ+Nt2f $sK7G\1,;ߩI%bC4uuRfGdnYd9ib~{s[ k@x߸s@z~ 7OW9$Ϡ/̭78r[kT$6CNGaSL0_@< 5QZ@j }C "< eIɌ40|ggZ!4nV6l3SDZRϨ~䯛:9F1a:H\⢌ &^< vn.k KSqBd48h Nms:yȗ4i&X͏P@'r>%z8Z1ƣRV2hbu$! l $` _8HmV72\Ab5ig_?SG_}9ZQfpǚkEOaqJDzWA jf ͻ5j1QDƅ&MEhYp~ g4?AkNJ%!pRunZɼPTTGr>LVS=_}x/t)^)3 3GX8OjAwR:πSlfϐ%k -~"e>_{2dY+tZz!< A vf3 C-aV 0{SJF}&ht_PD G"^޻s-i]*re`!|Y>‹Ğ-I4uk͖C$KK):NEzTzL _ V@{9l@ЊPc(' v{@s.7Yi0ż5NZez4 %~|՞Lxdo >]RWX-ѕB&uR7ҋJI?)QQ\}( b@< e î%!tGRN|K"+cs_:j* h||,?xJ }n> טlb ;cEHf%^N-%h"oX/'b(irʃ{|H A Ge@5k waѽ8 0 Õ(ܶ2|UG*d06qfe,|&3(3L?TkLY.Fh' J蜀$xnJz]g!]q.L*򨪺 2c,F"5m,}!.=DΤmWUCܑWDC,Ew8GU;sl׾B ?Yg%,*ɼƾ:9;gKX2]8>%QaN[=cTpߏ| N7ՠRvLk[o8ϐGQ~8L2 1U.2 =7R$ WA}iC\0r'`*}_3 #8MQāU/߹aeJwAi>eHO  Q{2FO=) W']Urb6^[}m6xعk諫7! cELE L2D5HQ&.& az7(#V5J3-{x[GlJ6xQ's-f3ʒM!JffhsOE\mj%_ڡftmV!"7H(cj"$.Ťpm^$@ ʺxm_XFpfs`J)# 3Kᄑ*'M+'%,*G=0a%T1v3_C~j$_q*u܁CFa1µV1RTFw!,(0rrNƚrsm}ÂEIYr-Q[x-Cfuw#8ژ1`:d_,Fد%ZAޯM7Gުqqk\f؁av!a\s5-\O y~9W4ҀqeE25EQExz.oIe%vOI;Ė5zgU'XP{#)u{My ū.7U3re:f7B#8̃ OY_0$GH%*Nn6ݫFOUX4&KbmOZx wL\>~깾ʩ+AݹB{V(!x"@pY={s9U#EW:;܊,*@d4,&/=_ׯ+-c`)K B]i2ي:[Ҕ֮PL.8Fi[v09Hͺ&[>,Q6M$jIuͦn{h8TtER." mSZݺuD$`@ -8A6ln`2{yq1( G03@7D@؀y&^Lׁc\u+ 6jwU :#[rsrI?wuH%zAo{ i;a0&4#qz_#ZGM>{S\wɟzqKG2"RYQ(Eb5=gӤ`zGgb;VNQw S&ȄZoOXB뎘l3@U%Wh,j .Z=r72w^YU-\Nt8#%/5ii#.Sח̴d HKʳkgW^!R#fr A۪5 ӟ\OE{qJ g1*"VVEI8a K!?_^E:&kϮaWj|dT`}É~ SvMӈQՍƒ6[r a 8i}<ݟ { XlaI,eF_Y rR??©v""uƒhIW怃mk@Q;j '(i `HZ9&{*O"ܖHJHj\*#SI7CqZb?/u7gbj;#$}9_3y(8I`_@蓞;z v:͊~FÄ0AjqC$ƃ&c1i[3B>E:vLxv$7%uX;tDo\$MT4\铪&<^xف] ۵;?& UԷnŃ;Q~N(9- jHhɄьl36 .,,G I*ak>?Ajށ ᗯ ѭ}* bU) .牺쥀SȗH$ȳo w+2r‚ymKV>tr @y~bB7n m(W,.Xy41ekaA;AwVa#uT .*7{ Esjѳ{%˵]Z?=9#J]OcYpE 7{i<9W\@yj* yy j"!Ĵ-yljV/vId-i62qd;|w)( JsŌO#Scd5y)z])i:NTC: xJPB ](ȣqkMJ\W͏@ԳR-&-R5>Z+ޫ J\jSB%z`/d6norFf͓V{7= XҞ`sdWi1&cI_9`qOt]V}-r:HG?:AOSqi؅A!C;'8#PRmK鸏o̶\',f5ש4IZBLAy6l=uĐyى^s&A3q`q< &67=SZ'QOYZ0'UA=z潢Ab(U<` Qs1fxdoScG^5c&![wBHkWo%=׋^,"P*g[ i_q[jtG$"+,K,?*:A<)ZN܎~JOA@ =)va`X9ݐINxVfcz"1&ilRNirWץ^r5O#/ MРAN=Bgn;L*P||1mO'p0Qw*\3w'G'cz9$t~[vfh6~2Gg?g{9GYB=>X 8 5}Mp _mybq +1[lٗZ0 \;ּMo1Nc[h#EYeP78aɆq+\V9)ԶvzǾω;J؀5̠^P`N8yF:E٤\"ݲcXYrj`~[(RJbg! Rڌ6rnE',:΀ ނj:fZՙUG4V zf{i[QFʪ-I6v,XE$-'L%S͑G"gmM&x} i`ΣXAk,o c"-\@7g#Jy!n>5:ATjm hR8v(J%FR=ÜLM|j6Tɋѧ?bqhKiH:^%#}z56Ȱw2÷1/8}~6G10|YrsC׼ʆ:.Oq{m,C6@ +M.`_(*]b@)'Wf":*B_'oRDP?ەTܨQ~(fL^3`{ʜWǟCXvůPexksI gF#E])⬷b`.W(W1;O` "!f+xLdKh䖼;G1a0$XqH74g3.q>srTL"@p/r=X MTI2Sp$,uMzx:tdhssoa k")u=Me!6|CzɕeZu]'66>1O{ 9MTo^+Njן⒊oPEm.@X+,T GΞf2a3V"A\ ##wtjb8k>8ڪTФĕ }>XH(_ܟ-KT7/CƬDFq7c]囩@@lNsepe={ UDR=b{N՚V/BLj7u7(/ ೂwk9y_t ~j$\>AB:l@.GQť㺃:LH( L" dZ^YYA~8onk aUsI/ĖW5n@Ň$h%C̸pI#&:ƧIp~LqdHqKu2 NO1uq' Ptv*AlFnN-KNz6$P9*RF'Zw4OF$jyO)= b~GtY-V讝w0#y4wȨdVo)+#D-`إ?J Ĥ0H>"se# |/3}Ωh&O_%Rj GH;nǤ^giz90ڮ+Jq[730b.Sw[C?S=,jd7cxnW gf5TӽZ5ru <]~0n뜯5NM␆C(D-PN0jB Xd jAwrL?IKuV\.͞&eÓ> 3#ofx硩 }iŁ*qi#r7Q@VSƜ)7 ᛒq=vu I9n91˓T)q޶q>덞A;s-zਤ|'j` z̀GZjk;δru7$$d q/]a%=_ "Q|oe75+O}&cM!"cah2N-"8;:-hW8PPg ѩsJO,ޣ7k€-S g_֯UϷvqHKJh[ƒ%C$"{os#i%rowl8ߎŦ~du6p6Nnq[$"J6Vhv΁ҁ]Kyw19&Esf"8bCGyAĉ!Jh+"o.ԌddmڨyMhMY4R@LP.Sey#r*\qMRGok{>DP+Q> ,=y+=p.<=Ԫ]!~5>V];Nrͱf]2Tp2.କ.F27#d3EԖm` CZ`飳9atm^̜wDTbc=U+N'fIͫX$\`P3OvB/q޸) #s`KGٚذe`= ʙH)3ݥIdž<ߋҟY/Ngfh3t6_% +}?^'exHEo@H2'M&RtK'kek4$SK#4U3/VDsSkD 8qYܵ6'<1Xb!4͸QtN;R=.x0K}9 RXQg|l.IJHlWJ$UxFP񰸲4;MV"S" 18 V3NTb6qZ5@n8o8 w4G_d| OK!W-ޙn`΅%Y7Bvr<:rЃ4QOw{(jFXI.={@4ݝSEq~K<VWZɰJljrQ*D*Oxo[i 2YFB׺T3gߔ5I1OKpɳy>[?s{5@ΜEoֻP%$A3x0#yd}dxf *gulfb,'}w߿,p]zԼ޿*% F leFc_=UPb(X5kK2i-4 k,%m=e2pH){Zݞ$u˄]eAܗ~uU4o]4x^_}A rj%6Nnj.ZE MST,:QE_ĔȉCfW[)J?ƺ6gX1=cWK賨 9}7RLΝu4\+fZ-6lr$]qLd s6#yV ,󒅱َ-BqP}>FZw\0GG9łH`@Ixb}0Ż =pdl@TO"j|y2p^H0Fحy \p:|5Pp7w5Cص-bGEz SQg'TA '^ }fi+ (c $Jr-!2==H\0˓ڷFpZʊa=B5Yĉ/В%ʝ%m(5n39!*ڷ-Bl9!f>Tgƒ8=;kI8xZxh9e| 4idPH;A^aON.B /_,y>X+s%, > h:Z^fthRw|<5.~,B'ޥ V;i@[^+QQ7g0C BE F~iK}&_\wX<|qxIS}j+=R>K|FP.\E,jFM?7e0T/R ~<ڪXI܅]WNwg]EZ}9;&Q9Vk?IV*hK2?֥t))g`EѢdI 5` Nь(ϔtDE5>T1/~m1bI7n=&E"xUUck cc)(?.\lR+~ym:& lAMbRtՅd0nuw_j^FWAT(F ,UM'*gУʰV|OHsw8v]q^#}#ȹlw$b.ͼ0ESnE儩3ցz [BE0ǬZX_W5S :?>Xɰj@k7=e(q`H+&HlhmD)b1(.*7|Lz$^ ͆ZW->m)LvNo­J :q!*59ø:M_) OACzAj.<,UHSkZ=V"5 ;p*U:!؛N6e/ 7D9y51 ' L~բ&DSi9KGK!d5LDdՇ~ 9~f[a Mp*iƳ~]W* f3zJy`*ľm 83^Y`aҵ7PRu"$ 0i:eţ.Cfŕ$4ߓ??)8B\38M*a{("i+̻gcWoE_) kBXg;jVz0b<]/=K~XNzbՁt(#qCnol]O'A$_&AByU%Vh  w 1t*zr"GST6Kiy)b-3D覜uLS c=[ KcB}3kh- xi@*rQTN!j6E0԰ww|, x09R Ŀ7xT2ck+B[ Uk^Eq V:laQ_b.CHnAj  k#ƥˣ g[T4\ip^ .RP;_Ε/1@Q% YU?E{IYMׅ]>j!6I%T BZf/7<`k 1a|pjm^W SiFUgdl@!QoZf>>'X/\r%i:L6UQ{t>K;( '^v28"&0~a]28S;jgE-TR<1nZUSm"IXѪl3eֳޭ:]ӑY笃Km#7ÿO(U;X9| ra'x zl?ޭ `|Pyh'|}RqFx7t2(9 \Z/u!R3=x(]shwgoؒ&@jpp==+p6Α6< QL6誔µK4'Q³xpqzooFC`%u, vܠ4G.v̎ň&ڪF'Y^D{s,e.xк_,¦vILCih](IftKø9aCWѶ]E t$K DoH7-DӚNWǮ".(ҧnZ ېP7V8u>K8_)<}DNFxvge0Bm 3!>裴/FΘ_zE){1,[ gni|g5.`d"= Kl'6g@yꏃʮ99nGQA]8iO'l1ή8#B/vvuwONP/7 s尓=agCUhZH «A4vF5 i3N Z: #~ ;|>NY*sSzILȐ/.޵EMC0@w~~<t;S #, sFHG*$aғ̎)"5v<Z?"F n, o>W[*IbAm]Toϒ3߷u]0t1Ý F't?hTnX`_aX"( I2u%-YM;6ea=dyk Hlܸ.$^bҟ_1YpKnC0&eEձ*~{OTVF|% iXS`hպ3p I!JQ3N+64r{+{)F,%ѐ6~ ;g#0,659H Mut)x D. R6EPnGJGlTK6FCo^:wj^nK5վrUSA"7pƪ%Ԅ<,F?䣺rDUVS!N|LVc͂SYn ^9n<nJMq}oϼqj dϸ,AkljJ;~b"g"4vZ:VlZFTQ*Sr'(tfpD_[dJ>Ѓv"D`Ev@ןƛ@^'wDخCyY{03A[r$E>x=9`B'Nݤ_{}#MɁ)Uk[GJ*G&կ1/FkFKr%cU`Ez/@iWE5ևFXlQѪ(Y1[֫f0Jo6Ǽ? kݸi"㩔ҹ}ooCBWV]40 @rōmaF͟ԈWh"x/HOٳ)& |gfoxBXBP=bh]enc0[~:pPȲv1`v*l;=)(lA.8ֵaB̝ hE[koO T|:fe xO> gqӺmECK_:4m^ʦ&pY >moMDzLR3 `I~o}Ֆ߽m=Dy iwN{h@ t IO7ƾzO~/8 0jQ\ѪX1WdzIC`BߐϬuOq@B!VvTG#dH-E*rW93PEuaq j,q<ԭj&4~I\.DqgY M\n3=<@+[{=8e'#{nku1 )е›_]t!n WhAs۲ܩst!W)m.5 (Ze-(õ@hKV CRSbn8oj)Rg#hB?2&dlo(Ξ>K'-%K3Nr E5QhyEfQv4g,5IkNJE|jq""2vt Z/*hy$$jz-O # bZym}"OmQkLq cq 0p?jYPuMR]\W6jȽG@|I YoPn54* 'oil@QhnWsrR,se q[hImCS~ПU/;E%k). yu F9dhȤ2 %wr/ hJoKKE­:f@<'^dqp -R`tkEm@5"[s52H9!vod:tEv4|rU*)r–d} { i0 VJ$3MGkVjP%=GڦF5-"<%KM,Zj0;h9־ Q/0l02> g,X+xT-x~͑/RA5]n[U V\ۼB_Y 咄vKT:8鶺C $KP?\9E 6S>6SF =F^&-{TQYߙUf&7#p{Q|)S"_MH+{_V!Kuq7YC[ s鈘GfB#Pߖb߆D,S6_HS>r/)LT"'M\dBXT+hĒ`mN5:L]IeBz ],DɣCEq (?A6ޓZ!f4i}u9C|bIS:"ouOWڲYi׻UC4w;:/[UfKȍuZY9eP:m,$I_f5RїԀ+ic;c%&Ŝp?ڥ4] J%+vdA錡 Hʕ).ga \r2?c>]u%Cu$ .R/Y^IZ.A}XsGsF3ZeP /MkAn<>J뤂ozf$E遑ài*x,4fIД z$) y`Œx)Qtr(:+F#FJs RfR2 )  [+r#)X@rh3%`%́qAě^p P0NI+KKn۸<μxi]Ngh(&?UaKgV\ T(8$ndz r)XӂxmPE$sD93*4@5ʅl 9.<t K(25hrώ|k7?5k/?X|:S4…O.K ]W-NPxD9g_YM,Dwǥ"l:Ygl_amwzq p?~D@z6vkŶ.{d4X3:?"~2J'nWDOz<~a9c9DwNa \*ˬ"QQIJD&RvF)ۗ"`Q%o/ˀ=ue3YgG ;< K@Gtwoeo6RO#<iXLcs<-Jho@2/(!]I)_92a?+tV|=gP״C7 Yj #G5>yȅmi} rjدZ"cn +(YUUWMcBab&GˍO3bDA3LFn\LXW 8IF"F2rB3!wG_ o#R' w|(&hVSr bk.zvXx%ZJfiI˓d-LWq;[\A(FU˜iR(2-D^wvwO[2} c.Yjῑnkl= 0\xMq`@8{? _/XhK&-D)'\t}_ ?' Һ;0:vZɦ5/*Wq "u$Wt<$GAnԨʝ$#@Ke 2$!L-7#9gyLVfx[Ef;DH*'I}ٞd{8B(J'K%lsOhTw~ZhіXEsv*x+#lFR1 1ȴ_ZgN^w(Ӽ4T&&_Lf&^;98Gƒ,a異}3U>s~Û_4{bDm\F"L{h]J4i~鑀2&8Js7Ya^1D8( vfpaRm8MVH&Vr810Hm7BAUȕ I+;.( :͒=es_jG?ߪ,5,J?:dFEubUoyƚ&3ut"[|ٵ3"^1[_鞅j4JbճGEXSʒC{VU"#aϬWD%IcڌnGۀc2V76d!>[B#K(T} z&2[zqvUխFݙI6=rAl܋bIK1΍PkX~# o6:_E LfLF-ODi~_QM/'i@FSWnIi{c(̚X)]E?ˢ8qzzàkN~h.awa) |MMnV-X6CU"-H=k˒.4Ùذ"|Wǩ6`-Η'L2mv?+bǜ˯i!( />9 bWD-Ewn|r$\VΌfaElU_zR@hI7̊ WH)b;F^rߋS>S \pF?+8 扈SC(K6 h+ _<# vc(ʀMiBU6LuyzHʮsu3.ݭ?]:zWxHZ>YSmDқƟOnz=GjTciqF!Odݨap1U" %_ o ikOmAE0!ހrrLK虩\iwiiqܙo^-Fr+^gkC+R7PGO@G.\O@4҉o:hV%YզM65̱`IΦGr%Z_Ãш.wUه3Qx4u'-Z0Y}&=9f:6gYhbb[Q9?L 'JcF(~k'm[ܨ \n{顇}Gxm)Al!0!>s (@X߸y@_6G3[;У׬eVCxSUc/l;C`+6 ).$W$hDO˒ڎtA&6!2g@)J2=P es<>kUY7 QT HB-QLk!P޲|h .!MVi3˞ɪBi`0naD!2ЦD36Q菲 d^`)-φnţ]7zQIV9}ɪuh~/ >SgQ⌟U^A9pa()@? x)-)3 FdmnsyKݠe6WDXq>I!Ę9^ڬ9ky3;erKPr@Xϫeqeaew4;Z_圈a[i%t!bMh/%R|UWϐʴ*ΓاPEE}ST0K_YcH< ~6;ԣpƱ1ʋe"bRYPV&dt00}]hpyqeŨS1y&uU ։LYz+~څ;b/K x=@?¹.| d[̰`e {\$|n\w 5ϥ{ M4q#cn*:alf5[9x2) *t\v?1;D9!\;6D@ C^Y0|Y?3S ;8ФLIv{j5lk9Q~EE8*,[kBY˟IXh~DDiP&ª3!Rk[>]3A.dr׆ qFdsfj4d,rDh-̹er,WFz{hAG÷.ЧB(K9Uٴ x >_8NTڟcW\@g]d +]|Cq=!Φ^kxKPzk[f]`LHQ}^|Dr87U ˊE :^[D8Qj쏇jo͕jE,՗3a[P $Qfb%I~R…uF2*mU֌ ˑA\%clH*!w(+ZEX*Q-w2 8b(3fڤY=4 s11)gz\w2x]*UO +: %':kl8 aZ9 Q }'g65?UeWy_6mJ.<&K"T@MVk uZ*1Z!]5qY<2RbV) &ɄG^A?@vr1? tmZ~jjw򿀆.z$mGlTun yxTjsS!0MQ#͟UFzϥ@{d=ӲY m/km~`K qm)ܜ"-Jli4He14SP =wCXH6/U#ɢ6VSFC_5{\_V|ILv e”d$2O:Lz*xˈE$w_kS9[ea̩F -tCIn5Ii,ԹcXGa?.hIX_MY~Ȥ s;٠T\ 7m6F{k0$.`زd+G%+Fu<'HDѴj-v0DL&''ԕ󣠼eWiٿ@ u| &T' cŖ;?t-%#7\έjob L`D X/LFH<.P꫆b5?|(01ALX,R&?lQyfc0?}"N_ UQs1.RkVHCi)݋B$A&`ձ7JOss{9j$CI$~#S9z)~MǮӞU F%7=\Sܖ|"9lj6JT  ;NX% q3x7\2 mb0iePF@ HV30@?U:@V,:|i@}#pg+}WgiO' bM4Tk,ҷ-E L]cuOw7g[{oJE.Vzrix=lL0~u|Ve1AY wq}te`mf[*#;rKrW2X;@~c| uf:z_% C"  l0"=:^HAWZ><97SL +ݛ-g- ):XA}9`k7(;B̘Ldž4R <\n_t&meljB|?/(]ű0y跊HaD^zB)E!nd2YObt=`9okv!.ɬ!3H܏`?VZ{a9e_5}W$[qui,Uw{#TlwA jA1Qɮ(I8VC]0D潸z~$m(VQ=P^0CB6f^f0>>?h$ѫ;d"K!^%-6pX_h>OMbO#i4sXČœ kၩl19ͻ Wl8ewwTMv@i".; Bw <E$W` g t?{)0RGM5px|:q^Y HY70@z$sQH̷!Lh;H]?^(! 3r Wy72#B/TVU&UދhK6jEr[%' xJb qjD8ɓ8:R'XHݘ \$s2)7"?uꭓ 0x?2|P aہ5\U#؛, Toj?Br-RQeD+7p)\ۍ~,.wf,y3IB!Zj~"&|n7CPɝڅB,gkPI~ec{"13tx6<(A pG u[eGn+tqHly)h`kU{S PWXAJ}JW+ݬO Ρra4 u:=*J1n2@/[r9@MhU˝  ܤAN^qM:t`z3$ -"AYiܼNXǜ@#ѸX4Q&fI2>;3뢿=KȀׂs-0㈥ c9~*/5j4p*m3ʎ>fHՁ:Q8N:ZpB἟9{CU i33%4:]a^QM0'ЩO.K%_{z|^Uw4aHc bCM]Xmǃɳ8_v1qdf$?r.&nc;%ay1al;pRi컫qeŷń&II45:d qWu^wI3$X fgOZ7&&YȊv2*l)؄Cms>S]4*'ȑn߁ íXIߺX8 +a-Lܲp9']Q~ D^[e5,2+wWbaS%װu4;>8 tJOB @V_4Jd䃝)$}Z!dzr4JD+0_&ȩؼT()dC;&ULg_fN!W)VFEnG\Ψmnb%Bz| 9`ĐRkc:ȥAJI#%$3ᬸ)Ҿg&1ضD~MQi{cY"dBJ s~vEO0 KrOEqW[УXr\]J!狖 q@Pfj|Eu$*@ޟQoЖOE|< IJ<ќm5D[6Fk5ϢX\+ѯ*BcHr8f uDHkAAiLbj@lH)3ԊutԺs@\2tܮ[aY}cw Գ ?\Jn\A94q rjVa1;PHH,)c̗*ȹF./d8gt!/OvN 0[ _USBߪ.N{(I F'[w@v9؇K )@frt6F3KRWC Nki-Muܳ>bj=,PFJ xY21 &G V起:Deiݨ͟a[N#`%1JPoJ9Pˋ@dPy@BDZqN䏁>xrSF4ܡ2F" ՙE\h~la'W?s7iSAPQP$޻yM !K2(TLRC>el}^ e^|rI@Ag7ZrS3Zzu,y"kM0~QbrB:Ѻ 0%NM[7ilOXaʷŝ/ ״=$:ǁ)e?+&4 tڭbpzYs͍zٴcjE{?Y#~).\6b޾ߏD ^SQT^: 0V&8#FK܈&:&ukO^V/c5h<0% Н\ͣ!vWgq35Ǧ,f"6{cwzC!WW9zt>f0 wCef&]^6^[7Cۮm5f K^!@E;>АoAhF;@QXVvEw`2xgFqAv(xk܄va8\&:0_>% RΎ1Q{r&K\ƙqPe3Ϲ7MNسtm4 M_eɇ'DA?H20J&;bC/N8 pm0tL(&_;uܭ0[5~{$mȶ_#? PP#<p1#ldԔwKx9'[F߯k7r h!O;ȹYkZxYM8EUf6r?"LXoel(5b_ſڬʮý 8A(o5kt g_оsEs$S[:*3sS!Cm&E|Ty1Lْ7oVMC.߂ ק nF+׷)FVk[Z lR"iCؖS?rsL׊c1oN1T(Bxw<8g:K=]ΏS gm36MXaJNOh=2&i XuF}k>g<0Z=' 8h6T6Dyª<%iUYXTi /6&o5:HrAM: hUClvK sN dɆ>W%EÓ:H\jw*H+ޝUVz`(nMPN!ZdVt!rw,~ѤɬtA=/]R Շ e_MU,%9T 3I$ A]Ayo-Ȁ#݀ULqr~8 uCTb7 ( ىm gYVkoa ŏBO! mk 07*CKҭ˶49# }I;6|VICy֩ז%^OホskfƳY'Dbьƹ;r&QH tf'*i=CCcLEe rۮJlM͔)ŰDff& %WD0Z'&Z0q=pyVIX9j>rN]dFO~k]0!ON~%soش[7 cE#X]_Z'GOJ놶P). fDeAϝu wn;yAJ82?~|!F[8NՑV ڼ5mB3XqV/͹q (09`cu"qaTH|&{cB@< !ؔ{g,Zσ$5َ ,X#2Դ"( Sl!GwCA%j"W`GM%8q`"Mv82TG?%>4VAd͋ˑF <`H3Z55'mbaϖ$9?*2GTkѓkșF+SGNi%clʙ%p~!6CU-?O! HP*ia8Ot]8L"W{΋wW.1_AV'MLpE \%4o!OM@_Ԉ|1`᭝5w9yk $ r@퉪)ι^yJMm5=:M~fV%jۏ$G$rLj[DgG(ص]k9LiJ *E8*Qh_[ǃfߧNW׏Zo 1JHݝN i-цХV7R4ఄIVٰv+gSR WA8!^![ EPnGؼT`m푉2ϲIUIb=lE^/Q BA<~3|Ha*}E~[PmŘ-kg--le˩ij qȭ>PaӔyx c;a$Td{y]a4C0\VYqUb5.YV/Ϟh`.s>v*Ct 8],#*M_@HCMPҧtukAMa/$,NS!d1SSsK6^SL.S"1p1ռE1:npBPg>KX=Iڛ$4Q#4CjE!/bqgvQlcvG2NW#HY C p7Q>vK6U[,' ҥx?7ӜUI' (+д]hkG灴l j,7 U1xnߋwK+WU֋\?Mz"5K/cߤfp4@p* ȺkSDB]vV͡^&#ǘV;|PRFO-rܜZnsu{?b#䫢k|| ö  c1F|욆w֑4R跜Y9[A$̃IӼKC\Ș/[j}!|b.( 9)zz |]lג5; K,tE6 Aκ8"ڷkM@ $}Sg2qF~Hk ͤeN-˶/&=抁8qC>%X*8|"A yX,EDJeWXG%W7ꅦUdZG vj9ێ؈Lf=x;]VH'-Mxb$d4vnV؂&x ʎؼ\btQsUsJm0g\!XlO A&뺤0C r dt70St "U+ŌNm0+E\V^r>o*ڄAY arM/_S54WE^ް`9K(|{u~xqy=j+W+2~UtzִLMIݣ泟xxba(l-+* `H'c5MbWpkGk[!g0 BLxpC`G?\<֏䞠2_\5 +Xg>*8; `+%l}l o%;ɷMMQmӬ 9gl 0d8/;_l:Tтpi_bSS"rdJ ?>Uh[q}Yh;} y1,%tBW;Nut6s(MYabnsPz[D‹ewWSI_</:r|^{3yO Қxb-3lirvYIROh586qN|];^ZHgkGQ+m1&9YL+U9t]C+Q`9q9S{k&]Żo s@SO,)j2[nºRRD p ;n^_i/JB5'x-7_ŖU\ `cR){ z] `)/ G?\zȹ^7 \WlZ(zE y`JVXFczn'sk1>ID } @SןY)/ji ?<o#d&ZMȋsՒVbMb]CfYZz$s̹gMpcŅ!-XrBU )LX(72L ]vZns#B4~LI '@<ՒECh/lz^dsxA}"bo ]cåͦ$ug W/tA~p'o@#Z#r;3DM 3|ՈóށyZUS#C+|grmf> e1_a-}J`E:>G6g:,qfԎaD8oO%{:*D+ȋ>S% exzjxdjZ*'*2}U-NX/y]#\f۟R%yB^ի.Z>RsS[x#"R4l;''zSRΆPmlR:n ը@E:xj(*Hno)-+{h(dvcaύȗX+B`T^IZuaFoKe̻sǯ[ SMRv(1$e9=DfL0cW_7~TDŽAeh ?91P\I14grf+:X)g'E`r6SD }z:8 ϑDjqk+'U~Q1("he;>Jf6z , (uq Pwqڵ?uZɣ6']IeWF~4oGď QnI`rd[ 6z~WZ45U,j[{@!YP2{;$/Ҿ}F>7vIժ P HFL5].fxcLBi"&| " 4ouГpWLML:в5=p z) в6#gn>J~<ֈ- d~p^ d-_Vn#vNH }b:azjjphmVɒP:H=FZ 탞: sECT+؝C Bv6]Bh2[@M=Th"_UcMS c(aޢLV8lobˉPn.^ 7.NNF&vDy:yW52'a+kX2yuI Mu}^LҷBU8$i:NCy7>/y_$)? *$P̽†9^;?}9h'h! źv%[Mf,l@_N\uv(vbag!ןXY"wqd<|*4 DC pk'[TeMPf61Q&Aln!&~_eN4L.ߗV'}KƐ tH?'hӽ4xT0HR/;Y9o Xt.I9)G0[#d :ҹۦUVyq.&FZ]\A %coy}Ѓ6_`_}ʃ1.n$Dn"T+M[sYX=S+1.@;IC<׻s/bb VV#il+)gy:g[@yV֙oLɉkaA:`a?Bvi3o]NjT^ /:(INryV@Jwr!(]If > όv>wQ(u>+CuSi#ik;+x<`k3 rJIӜErD5.H*]X$nKu vث6ע'eFpQs4hƄ.'$G ˸LBfd?Aښmf[4U:#^s2,="Aj2kU+SlXuƦuU-xbM&zKپۆxʽB%r@d\>JzEDqkceaրCꎨL#ŠHV~PXNJ5"W CMԕ3u9V#5kq"٨Z9A!_%n&TAΣ8蒨9`ui ,;f+ݹNR)dӇv[ 'aY!ʜ_<`7+Fgj޸o'IDRċJv> )*glV6G K+YmB` {]Ce1Aq$YOI3,_ֿJlZh1C!Y I;#IioS?^fL!_9i2ȟj8Xi]EiZALYjSiqc.>;ދOǝGg^'!zڶR*ggo L;D`ņK91/m$X%pߥ܎PA;@o07mvCXsl2K,(f,|7HZiQ ̖R!I utTp+L$cA}<"}JFsmM/u7~Ol}oPJk+X*٥a/BNl yI1ڜYñ{j-f69P$ˉx`P;irE[}4 1eZ˯ˬAJO܁ĶރjdJ)Qb5 ;0+v16|{cQOcxUbYHQw*<~ϖ}MڼMU0A5zcy󚒚i@|cf^᫆r"# x:G?tPU&tk~,:mSx1Vێ/~,5,>!M~{xY@!:1^*)ɼ/v]x3QGt^K?"!ěN.̔+,kTƶ#(ڤ^e| ΋5ir}_mƴwC.N-@aCsm`^d^dvLCS/y0&݊M>v ʻG XzSښ]R=eHbn.SjِuxS9+)V!q{=#5Yk!(#0飷dvMwy2aU6tW䷓CW=2)J|Njכ6Yz{<\Wu\sc|ZBT^Q:F>| xa{1O1egbT{Sc)va8̋,bsX$4' qC/7_V!5ԀB^@vz *2n䶿o[27vS`8ΑޯH]yrͰ9+o݋ )t!|E)lzOS>r]ѱNBPػ ݗs#Ҫ}Z.-&Y (L3:p-7t2e,XnYOi"m[p[0gz3+hhA0 #N/lD""'#NSp:O F]R&;be3s>`{Z{^eLv zY 1vS_ϊ2i3++gS‘zB8["q h;0J3ۆإ}$pd&/ϕP=T1ݹs;0Xnx3zU+APgk}ʡ W|=C. Sb ړ2 ؎MM3ć|23$? Ӥʤs/G5 ["w@"I'ޠsI ya 0ԟuh"LBsry"(]`!%- lzNC̳3f:'Q bℷe \3:fj_K=2G/fk cYB7 _v`+Aʩn. !na컼 A"828ӷ5CAs+WxK%Z *O\Ƕ9R5uuj u\$O gs#i C5"8h>.7=+|]JR+l@p?E+]IuGp4>e}~`[ t4 Y |\ex7^ ٿe6[wVNPyT~Dv[M!:82u@J-.ֱaR-d|TvkڃbRGab'V&g(Ņ,L"&cJ:ؘ6p1aEhNu A,B 3^"zkV/Mpd1/?vB B곺P9jM+`s%R4jB cRn}J@$T}T9\'JȞr++х ɢ-eօ?PxPIkfB{P,azC qb*8,uRz|,/EJk0Q08y{x epZ4.5{<L?Qưu0*mV˩CLbKHlqCmcjJW1GĢg9'bS<,vBz>/V.S|[5[{9m:Qcеv-)lsLtQ~73ovztU8x\ڰigĶ_?CGAXyMe @ȩbAV`?@S41l`[7~!x2tcd,fk3E:$ڿzO\z=u&F20jJJZ@OpF`UPFU B^6wPS#yD[K-dw|.3Y1;Mq:0[̂~|ga\gx)iyzsf@5aɁƭN"Q).LF-L,V~9L+2DK6{+_,5jC#)˜Ay7ZO+i)iuXw&!eR~J+]7mI_<l̍dE ϫn ݛb׈k(W1&@W˨N:*#v.dۨr);dޫۑ]!ܴ"uːT_S,v9/QDV^3ozBXKEά˕^^7ș>__dqVDhwagqde8?.d:lմyw3{V|cLQ;:ĥE6*7@Vx.L4tq- Qp,'>:/˿|06e@(JTUؼG(D>Oی_*wG ,@Np@+Yx`=L+~W j.k;_ԆP:ˑn%'%3o|-(|DKMe'dY$ IY-VI1Kbj'~ FE A;] V{9R}I* M7JK;}xZTCOSJKFk'T]3?Xva4&ɟ85VC7݋D%z޻T6$P}uwW>;cg 0]hh ߡP#_SLPD4sB;kw>&SwF1$Ib* .5$5 ѳڥ*@h]9˲BavUϸkA{;+׫fD駿gܱh0@8؃5KLMSM5G8w} sAk߅ēx 7˦ӡJYZ3\'[I=%9h~l'Hw&%n%lx!涩~֐ Te@zO{褚XOG.,k_8>u5>P%]#|EO+BbJOz|_@h}vtYS :G-K-cFqlǀ?ALѥ6YUӠ`*L,&u1v)#u0ER7 /+0 =9\qP"sV`m H{F '\Qek!U/YnY9? TuN3 懪OBd Hoq"RY9O1My7y_Q<˹K|pȖOid+;_ ,"\%iJ(nɖ'h^?_f2j{Yv_qWW#;AiH*RwN9c Ŭ' 9b/ݨMz&31=(mG'hh2(b)qpkB83’@k xe8ѠBHPY14gx.P9b(2r-0CqCXWH^E. k?d7oNԅ1Y(w\0rz{ O]+DG݌6¾Ac\PWƧΪ4@Fڍv-Ya`]hXM}[L"X}C Gc׊2yk6җ`е{ϵEeҨ f DDJ?GC72h两l5ql Ys;4!H#E V2LiEsr"ɪ!o փΰf~S7"9Y.^ۈⴿ+?qHEEs(g޹0~673+87t c)ҭ!Cc7|tMG0.Ŋ v;>S3{{bFR>'~*EEonl!4yq@/  4|"HbVɇxؾAKeW&3H(]p⇃"]#EJzx>Υu Uk2(-,΅r Jt,WUQ25͋j p\"[xNGaGBi,Ym)ާ!>DMv<*/"߆n1WIU[ z!n[G`OՋuTN7;̭"kUImȺ'VJ0CߑgNG>dMs%$ -/hc;寽244RMc50Eh%a;}[&HZsaJ"zU"KY(%,LTn:HK. ãpjkfF(d+qSB$w#TIJ [OP2" S%sxޝGAs\; %Tѓ$! . ߊ,S q\D.d̼7wWnW6֠< k0q'h>ċ._nE be1}͏љ >ǚKB kFቀ9?ilXHJSIu \?>h#u(xhC)W#O&TO _NNš;3*b L EGKHY3GHFX8$KՃW&,i@@&-d($!,CδıRrP0xm ɍc1Sk&˟0RA)wbf q.,D^!XVK0KȟXxȼ\U;H<ȽUYxڹٖqڭCOtB3}'ً Ib 0\~|,I,*P ~V!ԮE/[s湸Vv!$Iխ>jf>Gꆫ]ijmH[,ї ]4,LMfpH;Hk2*rJt^S0:k,%6ɉ+zc-ell|5XH,[IbX9DSJ'^1nD>5Jzڗ I_Bɴ߿s,` 3r(!!,ž9{&T=w[% #(L2ٸr XP885@5{Oʁ\`UDXh?b5# TK`*H&|t%D"t%>͵?-_lkiI;sgLh 9g~XU JREb͊n[c3]gan }!`R[[nv9=Aޱ%%gmյBCw\D;?s+%@3+ԷC+ؖ(+$FEf^?\͆lrJ h@jW9PTficǯ= pD?!][B:˖sL<ܒe6}bD@U26TyW&GP)r=}N;W:͕>Ur㯜t,NA]riAJqPcݜĄB@Pܰju3!4}x"X.? 7p\x~WRaTģ`]mw;YN?/j56u;矝`LTj5\Xc~ϴܻ2خDLvjyJ`iҽkC=}嫌H?<&O@9g¬Tjt-H1f=}~fbCR8*}sLPw?`/}SC,UG'iAP^'G+T8 [vC>9!<۔ NUYn1źcod6n`S\s\اJBј+9HVbﲠ^ς D~G6jբKLzzfV'Ts OEi̛j)?0Lk,_eYe# \ǁX"VD6b Z%e4. ɏ_t76J4`ÞϺv}mqњ h\,i>h`jЮ~5$^)S!qՖ8}ho)ˉrrT qOϢ$ \p?qMoX 1.?uNcZ6E`scl.ѯN+p*xL 0AVz|\bO$t n EZe K_VD"k"Y_(y:>dٷC#ƶLDb|J4z azbRdAkCW}358Z+ Fϻ|+F%0.EAi ja\ )tT&|1qirhrϔ{[P*F\Zv xatcY#*m 4ve54׎!h$xhBvgs}OC^.Ύ4hҨ*驍ogWb,ZKC5drxFgyW6Zd ODQ˃eqy{2Bٷ~IJg8QIYr^|Uּ8yq7 z9~ A\06ݎ}1'4^.5]vQĜƃ)!K~UGq@s(̈́b;M@:xv.sdX%4V+m6 d6[;\7Çf Գ +C-yؖYq ƞ@{88_[i*aoAta1V~bӰ9Ir?T_ھ%+h&C.(:(5Ļ>t\i |l-Ø7a{(K0LͳzPIR:+v:7[Cy)iJdsr>DҥN_2ejnEP'\T*,75q\YfG%Q@Vݟmu8G3gZKя*X#yGyx58Ƹ;<ҳ\r#`Œ,3"4|N@FڸRm!HraoDTe].hILuխe)fz,9+X'Ž\WG"cMCܷ5rpNP1XP EY ϽYD)/7ee .M`U8H 2#9E2pozQ Ds6ESmU?qCQQe8_9A0xvhucPn#v?+JkrV>WB:e}2% *]q m)WXWTj3xϳ{sEz3tV!r;i; Z.ٜT@uh轊k T#Nܟ mwt$&ťk.2Zl Yu#\ۤol$6S{慵ke7IfG>>Ut? N/3f^Ub0lXPlpX"պgq,{=c!=)bK=PCqI%| wjPbxD=h> RDw` vV滫~{j@fl"q2 jGeV)ilճܵ692\3x{zaHըK%>j1a/w{p'hܕ^͔?m("+Rm3f#mq=?d:ۻbFXy! .ɏ0UvKl];1EMw> 0\]([/a9O^Ƽ煼{nQ˰y\COiW~= |%Hs2u2IYLFN؎X U8;U߳ rLygCObL!wY@w Nq):wuh@߼!>\+v)=kr`17*X8- s I%[ͺ?½9vPT;nm8_M1*Kk ؟R.+z{ ?L&aiJp^brt5j Y# k󂪰H;7 ?yE(xkEzn :!F iB);,d_.]FB$VdK(꽵s8 P4ꗈC +!a`FQT+UnA {Z*)3F.,i*+P+ufGOo1}ႭC6-3\)0|)tWf y9qGTK*@4 5_t﵃2xzE4vRTV;Y ;~̉^v5[4?I AU +U2bcq;qXLo{L#KGwχ PՙHCv5\ MPxVdON0j(5ruT:gh:0({Zȃ1آ{h.vI8{w{du͏`q< #˰Ve/ ?oU[oEJ&%1pwa]; dz|>|6oD߻?t+L~HB_s/fB cBZGkaK&e^ Se^uBKur HRL{[csrb,HS3Ȏ6lknGQ́=Ek1Vz>&5fFL#2C}-J>N ,`Or+ӺPfwRfx|vZr`UbrTxIiᯛc^ qP}o iבTF]96*&--WԩXFA cL%.,\jR'@u]):#xSa|ʶEt:!%LȕŐW L1s,XqzGH$ZoR}w'QJf) :ӍW Z-bQ~"-^NBKӐD.ΰo}>@qX=>'8J`G`y*PYz グX8 \f1S#n@/+V8 R4BU( @X-w<6@gx09DҚ.ei.[њ9MRrG>&$Zb3*n`L&Er琎j)!hHse2t~OqZ`v 2OgS)ZRZ]f/}B>^+8} kQ&Zm}7u@Hr$mQ-&Jv`d撋gXtH–Ӎ@'8$ǨK$/{5lLusݞ2g'|ɍh9"Y;봴9,>c<#a gT" v"S׃ื'*1ABm:~,̺4Iv $v(~=ɻpfp^<$ aK8bc LD࿧}l ,Bb'U%3H 1~0rN,1YųV> E{,}S(7`F?1җR&QbgugU8fh*OO-&a!#Ҽۗ"GsCf WqYΰIKΐ90㝤٣8 zS`ؒH\^}/^4V”ʐLѦnt!GS?OD wtX]9xh50^vKV5FJuT?u9]?~ֵPgoNvsk[mj8.;QQ@Jlmlzò{g+.YZq|P9bXF!9>ʠ_gs,$-tz\dHV aL3L1BG:M@\@\~UG/ P ^pt͞UC̜BR:i(aGdh?;i!IT 5R##so|7݀/P0uh#:u]}1ХP(}I!R`^!҈!RfduV Nua4,"+6L+0>aFvM7A< n#21/7E q,^Het[^zL1E”OJOv\δjjKs`M |u A6QF/ eOlӶI3)mk4EQNqStz@wW.M/pSwcbXYҸg26XJ@_ul3&'  J~-7lkV`12m0̮޽İ}i>@[g QM'''c!ίK[dY.l~B[z:L y͈!;-ܛ 'n>몲8 AoUSCƵiwR$2S:dN@wi?)NxP6brWFSBs̴3tP;#/lsz_q~Ŭ`gN=칥rHrG֜IM+On'g\ N==x[T苪ܥA>GjMnv[7' THc$GȰ?.ϗkJފ ?vYs# g72rһl˜O]GU;D盤6m.NK[$HeXpZxc|b}-( ̐œ7 GT؞YUoo;,L4>lq1k6L\p<,¶܁eo/MdS8U"-&zkX-O__f˴xܲ4 3!!ķ4gՠ#o,'sʓn qL:<*2^54SbUN8]ݟn$]rn(e9Hdyʴ{ 2jQy0?2tH~ڵTr{!7:-Ȟ*щ)SRحGQ}p#tl併[W# {=-dah pULMդ#{ EoJ?)#Hs t+!(N封"4]mv$.wЁWA 8)_#B `>=%pTw.ɧRh8eoxOdW?kKD,dNn#߾*37/ԡ$nd0pd}ȚJB#W]NJ@p&c/.]=G*kQBUoতmLpd ݌wo5-z0 6_~5:ggDU9ӡT_/p氂̭əd%)\ 7z8(184p7i ܃]?^]A4_Lx8 ?';N&3ճ|8ޑ1u¼3>MFM(Ǥ^g$.*J $G ;>}gړ'MݗW]uIkZPh(?BT!s(9isɡ|dv5_ yígmϮ*@Ε{c W=LfiD _&2Ԡŗv":йa-uQ!=/5^rp*x`DN7&0'5 8(.b&6U#d@E^)"&, ^L5wEq.4j .`V@B"L K] >29sydxeP-tO9i2/A }O IP3h9p)#$ a5܆Ѡh)Àd[J3|nт)Idn%)-pdTtaӠmp>JIh⼝}8lµp˟5H#c*$_OYq9)Gql$[UDB`PBdQzBo] п- Pʡ4!EO>|ɜqjP=,켢)Z9G$ Xl„W7{u8QZρS D+=|a ckuJethg*K:pbcTd5G&!;i B~iP&o/WfV)lòz=zp; g9c%a #: ]-'[ zoF+Z"mA?6&J.ʏ5?!9Pƈh N'я<#3ieƒ8&W7hWG8jm\*`{2PF+LgqzxZc(8d${~,e$ %\kk֦?7ˣoBr IY~S5>vWHHU1$څHf/C«w~zVq*A\C &C,792w=oJM>&߿ʡ_@9I̞E J͡ńd#q}%&<@^x;`,ȟU@aN!># 0Y<$=ؤLeOSI@SJH3!; V-CLZ=%3V',˩#Q(*bSuqU{!6iWLD:2 Gv0Ce))u"$R_n݉"^\mh ]גٱ am'F*9"I!/y:/!+'4u"iW<:I͚B\]G}X6E >qm~Kz|2RX*dw;Oֻjk}OIeB9kG, C!gY/#Gp5VϩV6hb__G!Y.1@~Q3tbWR"/>`qFp[@X6$ =ʻ]C/tOmA3A=v/Fg'#NvΨnK{}_5''/Oc=5`kV¡bÂnA <se ﵵo|>1vq×[jTdn-|Z'A 7cu_+vb*1Ű/ =Ͳ#:3b\v+}(JRPNLXr&F*FC k(%tiR NFś6cfn0'(s TIp/9yꚜ$۠Xtz(7O Nxs-{Z;|ĩxF8>0+.sa!IحBU?q?[cޡ}ɻ4υ[{f:RzeI-o;0 r˜gg^se-#;59$_-x2\ ?) zcV5j޷|]#4KXq#؊W X!w$yЩ^r'[s0AIhIW:-q i-D,S|> 2sDfl"4:hx1zA~xq,E̗2>mޓE镛_y3 X˥5=]sfRa1Z-4Χ5*gLIq|v%eI_uwH ɪց OVM (N/jfD0A?sw3AD,Y/}?+Ɯ =K%7JV|(P ^=1&(Gf O 1 kda|zEԘ,.sH_[R˯ͮf4ʜ2MmDPOLj=rN"b֩g5gJ,íb9N%muPpd?A2J;x}i.&oU7͜d .TAa/C2bdPdԅ2Xq*3' s"Sf`3UUHdDw4hqGMa uefA4bk:Si0? b.س}vd׈[\-ȓoV6+ ;JsP_2kuHEץߓ(IbKց>Q (2B2WU-L&ˊ(4jbHOiQ 0a4Ne#AuiQN&E4DG]qYeMkg:sT) s$гIg׷慦b?}Haim:8ֳ/D ut3v/}-&p*lzj'~@$i7A`VMp`Σ$?\vWY]r.A2|.ctRIbmke:x~{3 ʏM*<Έv曤˅K0 ) i+?9a&w"=!|w`Ƴ/ƕ 7ꂂ_4im%Y{K.vyP ?K[L毱QƴbKuYUͺG)8 fH~kC̰#=H`<č(7SKO;|]_ZU'4 ER3o7~'ZT4Dg4_V꒵?̵bdF/G;Ә2ӬYx.)N/+;֗b|χ*N4l*WK |>¢D"h)s}'^(X允R}>ӡ-bGJa`̽~ h6cafqښ'xw  s7fLV F}]?%i#9A 5gH&*TJFʠ˃2,7p#8ˣ/Z:*A9߹Ds\c.C跭$Y}U|Z"]z1']B3.@z]B; #FNd$e' X-_F$ӥ}{>\^ƀe0ģ/[%Y}"?R 98UNiiFZd97.0؍$2/ीm8-^[RBnY{]] |FPq 0!Kܞлh򋘹HTJ^ׂH[_G,/] #$tD0QeG$W(lqj視d(,+w7x;^Ƶ#:/Lede0kEnm.*X)p=7דg*(NyEIH7J^7Sg[~76?ΰ~ބ2GʰXT&80;1 /HpK떵,<x\T4WXbS#CUA˒_é VȄVIswxJU&wş́'{ `BnX?2K;aLh1Cņ |T9a5*3%ޔ\K\*{Njh$Rs!_+waY7*s+93'W޳ =SB+='PӐ!5fa!۔YO; kP]]h[#0V|B7L-A(ԸBK~AaFxk?C*hʅD(TJ\xaCPd1%N.: Dߐͦq}u=ErUw%/U\y>ݯ-,Tw0 R'FjkG aXZiO1ݧ؆PL͵=J¥>TTާfJ.PfR|V{%נ'`%c[;Z\D4 M^_L,7 i+#wjM!-39* M@04C(\ɋGZVbuߢ.E3 C7 {E~qjJ0]m E)Ao X&SaMcvpR* lGaõ[=}cNH( )5^$x.0|[oO|=.քkHѹ{tPMȓ8YM#ʷL~σNܖW2Cho)!;lE^"&,3}r8/ 4UWA VFt@}4_h6k8I!jÓ<$RĚC㡩;Cۈ ")Øu\alSZf܁BAH4Ae}Mg;V:SnH2~@b;#=ϮQdrSdkߢ]-;a [b !c쉢sH rÄ2̑oQsmu&cO#3I#TmBr%oĚ`毩sSΌv롥"@_Yyp/R Ey9uxӶGY ܩשM2oI* nvaI/C)ܥˑbKIcԛM8hXXAT1X!$YڱJQ쇜k0^|f7WZ'ˠVGأjpy26]7f>i-G6q!))t6($. v0wT4Ѱ+9PЄPH胛B9oh:4ٱo 稊!J+%ߕԢ?0__ n&M{ӆ R`mdQ4Nh=,$䣗/_de .Ir-u9S( ]Vҏ fIʫ"Y,B%K?zW2i<ͅS LE7(jG)fD!Z ^{;Ѧ{OHz =ҍf2'2\&mEt=US'1r^L6Zɭ^vww8vfs1_T<.44 WƘGf@\y:Z~x@ =lSpdž><1jݤ e18su!P5(+wKY Gwvbb>0npc6Y`1\JZ{@AIEX8yD:yW/rc=G 9-2r*bQ_ThJIkq{tjhq035'p܆/)R!g \Pd;yV@N:C56{O;-=0P&\.ۣD0q?6fո ~P Eߧƕ# ,+dsI? *V$/O|pz8k>ϲuغ88#,]\3b^J].!5k۫T{~#:O`f^:p1RwƚS $HvR=g,78Iؾ䠺őBQb9˯X[";}Qw$rʉ$,p SrsL / ۙqC$,{dc'EC0.f` ;$vEM8vWMp]o=J;3+sTrGч tb}Aq_ЃV?*eH~獘;;c]hfy*NB$àmmޏf1Oka;M-pNEʨ& 9gl.@Y:HjsQTIP'K KWme6瑁VT' u_ؒvy[6buI/r JIk߹`q}#$ilLJHB۩mKeQxFJt¿: ib!.q/Me!kV< NIDJhX$s7aR")8%8=ey L1@Aa_U|TAb7 vŝ8ٌ:c 6K/UmW=Yopڄ.{-%bDd.2m3T5 2"}v@'oI?"~ q_Q2:X̯3=f6l{f) gbbNK% Hu{841)~_1]\ =q-)|-s$vVN L󾹘 U2> [OC>7E΋1uxcarmJ z&rCnUu'@CByz|?1SGQ/c^ ծ,ҫe̾)iʽZ!+{? -/ c$a|3jriV3RxL!(de0s%WJ7gUcdb wc .7=H鏗N)mEr SHɤUjeD &s`%5eՍ?O=|תU0k]q*iR%+Ԭ$en~[G߁I;!fŷ$iMrHHz: v!T/xE fnP[fj&߯?'MAe̙ 0*c\.s|ajB':A9$jW7_e0OU>S-$f=wLJ$bң(Fm[xܱ%w*,uM>Pwz'5e؀\_hlb#=Q+/aEG;f- W{g>iCɲm`IE\"5 pK F~y5q:ymP[t Ju;4aNjp&ilVRmEryH}.NʉUZ3,fX[wYpl}%`GګOtT! m~8TKgOjH1sTPo1.Om j ya(2ɠ#:U@\`T(L.meH)̣ v(Xp8o _1i[Z_W2X+`큥 di}z,6V[F,8FVPt&/ި9_Ka()z$d6\\aՃ9s'@'ʰOh<-}7@jvdl `خfa|9Rd=bbiD<Xͤ1ʣM+z1&'Տ 9&k߯-1AG7Tu7\=L\klsw[VWDrr3fjR?}%m3qlgf'U&yQ߫vMٳ'R_o# 8=P R8I$*Bs k G2JҦ܆AX|kA:#0{ybDZ'xE} f>£&w>6[vGɌ )y&Oj]xnfF5=.ldN9fZvAٓsHm/@YԒ|TeF3^-(Wm<둙shŵPi^qQo<q"2?Bd T 8gq> A;︱ W'!\%ՆlW?=8pvSnx|WXuV@zb=XrK/:3Ob*L#f3Vb5L-~e˧Qu~aK/0&r۷&Ww;#D DCYLG$ʀbXF /b߀a[- Jޙ j ZE7?q$K&PPNg_PRP܉G>7Ň0}3%rS,xJQ࿿1խ=Kv*tj=PUX>i#&!~rd ryS!>5 v!h쭨*) c{$'u첀又-7K~@ۓQz/%h?XW΀,|e](;.3[Q ׀07GFE xs,5+/Uo0.dS_fǓҭyW~[` 8˛kgkͽ[c:^ZO%˫fEWᗐq_&IZNi$KЄLNVUg셪&T}[Bc:jNs0x #+%Qq2CC<"j<'k*J[mVX]rYC8 .A گ+%N &ݶI3 Nѻ@%PE  E](DPZ{7/4\#y5Šَs;|PMGeVypgoD*$"֢s5w"|8J5iϷ/E[0c(R?ׇ2Lwk#o~ĸL@ Ghbd%:2@ekOIC1vMgp K6hyѹ\]NVS-v|i,T&'/Dqewf.LLv[ab"`cP"瀤P4=3KNHu馦"|48Di"Wg$%zxQGa:S9g/@%CRVP\-1R 3ӊLyJQ+u8%>Շx4A?_eitR"i8}s레wDwW|+GyܵP8ȣ&kv ^ƹ6MAz,?~Ѩ .K ~Zϣ"@kIDkF3'c /kn<ˤONN2 e0V=沣_WkzGi-&g8c9/Co.mPṔBF2*?\aN9p\R#*0akB'o3![cOsX %`ZY\@zS酕8cYpO?ڢp:gՃ$YӸkC8*|D=9숙r]Pg3ӕ0NX!ػ\id/;̕Bbyg[zTPSYeZ̷+R =g;59Қn8oe8smd&dʶ]ˬMo𜁍4i4+DM6.f d)Fi1 ‰F |sX,ZLyǶx)?| N%C(>ώ㛁vP/e%`eOmuh&/ Gxh4,X HU#]@|xq{¨!;뀿vO Z,HM9SlsB8UstAAVζbֺ/g=ЀJJ;%K%* N&@Esh.g!q@Q'Tǰj͑_/S.9RIQopU;ҔYwR1ECJ#K#G=yjꐃy " '.[elۀTq=~zXK;O䔨69#Le]/ 6;D/!h^K7|A{,3SCZ<1xh6 _ i A!91)a)^C7w۷Gӯ DD[:-J|vy2*`:0~]I).4="UH9yßF6hEj6nų {7έOɗhz}MfP =ƙ>s+qwgM~N$EY2d7s`et(>`a|[])Y ecϏC'Jnh(<" ]@ XԚgNחѤ9li])X$YHI6X#0G8U1A9 ;6& \<.x?`D}8 AcFsI?]ek8&ϙi`@9Eʚ:_R2cfnaw$<'#x _]2eHGi41sqzhS9zrJ0͖ q$ҴƄnCOX8q%R|f(aW=YB$WӎtypB% FlVG9ycSb*اnM 2 ˧U 컑ĊM')=:lB+c>-u``kEjCɖOB7'U[ӥW̑ RVBD)iaK>?˾""3!jo |Tu%#:ZM@0G(Bb{5){ƗFrre$ (pob;>+ gc=̴͎Y rGX[|Q 㮍ӵ?p9rlÔ8:ÀjDtRs⍋JىJB,f=OC9(׌h!*$go7dҠeIǓWg_mw_Pˡ GmC63v/h4 }mU׉5DX&lFq(6'R;nj1"l{ ,8`\FՒܐigX>wCUއ72Ww%In,-zmO hb0!%UH%[)Ӿ n'GD1[WL:PF!bWuY-'fS^8(, 'cY4׮\ʲ K`[0;TF1tB2#RD$^2x1N"Β>ԩ~ kl|wqU7jݖ7 pʄx7$1 =)斃u%ēxFU.=3@Y$c gw_'3շhO{#?@dIAnLIwC3*7%J! i+rÓ=0A8/N &E@gr |tz0rڢsp?MY_cYP}cd'*'%ddD,ߐy(ǩz+o 2!-MMQ-8%x(Ѯ~DR5yecxkw}?v|+N,PudoepH !DRO '͸F_S̊ugQѤigĥ Gk/a@4$02ϓ`q0PSL9+v$$IuF+؃KKsE!':`ʙ\J=ĻJ4U ,qYε)oKS).q=>Dr㇥n7;fl,n>RT`u14i:^ޜLwa&)vQw&{ 'Ӽj@ PB݂x H=  tx\{^tK#p7d--nz}>}T(kLl$1䇸0a喉H`4*%B6pĔhkY$ %E5S.LIQmAJ'O:lrPUfrV—ۭ*`|z jaO xwD.ZU$IjteB3Eq-j \A،.y 'ze"]u H<󏤇S.dI~:Aٹ.,YQRQ+Bw׽kK Ycl(NC%z\ݱ۵V֑M5݄h.1eRSKHعvVO&\Aqxˠbą\<2aYQۿ`^ ZfC w s*jؗfu),әK6<4^hʏ ˳1gƃaҽg?f[=P6)]Op( f?A,h v_=;24 So|_4Xn9EPId3u#_^؎\})i ^+SkkK;>n֙6\qT=j1Hm1,妱x$I En 5-o~!||U.28Ⱥ׏˴}v:l*K'mT~i/rª'n]fN<<{P %t򳳽R`fY1e5u/9RĥosFGɫJ/؁[qN{ zi 6NJ ?*$*q']UB:-[Y|n>Fz$+&?|/ "Fa kB[bI5 21@M(k[6_¹PnR$ygk)9= j8؝(S/v:K[wRYS0u!hA&(`A]ޠ v4L*aD_d u9_V`YbD/I_RVc w?ok+=F#虛ݝ2XO mduwmîvьT3P`˦ ,/z>O ea#Qolm [H"8wx,. 4pr{5w) ?zsQ%tز[})x Yd4< Z5 M'a pf08,$1hdLMu͏XâuPL`#r 䄜.dĦ&iƋeu ݵ43Bgߢ*+`c|2gs * !&|W&(YwNVSc:a7f UmJF'0ĵZMseRVSw!(=ZD?/e}YKnU`Iw]5{ajGN2ye_~èF+԰z摃X*|a?n%7NWUIvZs97Kql\;Nb}H_@Cb*5A'5/\ĭVQڍ#5IftPQI%Xf)BgāNLWx!;ԓa 8Qu=PezoѭRyӳ  &.iOK1!MoRaPH;HTi@bb뷤26o\ H DR|b\45&Bek6԰j%ٚg=ߑS|S9ua;7.6ܿ,{E-qy :HBelR\gU'G{d1 jӜ@imQW{P ݸ6.QDЭBؗ @[QJD}zs,x]mz]$EcClO>&@ >4p kg MO'{G[ivŘJ\Q:F{.u3@BIeH?=#\?81Á-CP~H+KOvZXwuDe}:I-ElI61" qt.3ieChhgNA3ِZ2R Xq0Y輒f#"\T[epPH -LyĉV`fO.^eѫMueAr~\ďto~xm?5?xm^Т jYOf~ vZ>VJp9vi8=LA Lq5߁8J#5O@}1 A_=7~\KIW0 OQ5B{1uh䓽yaaf@O 'N[$Z;`fKF>)/;sشq=z>6-DL4&l$Vm 8floF[@L\+Y}Ôae4ZM4)rtԻԵ;{3w'ewY HM*I2ס킻x$O'c$tiYp/[фv#o?ۋFFlQS2ǦWiKM^GA73p$q]Ég +/7f [d2ܐ pj4KYNCG4OOMSkAOÌv ;`}|,B-SD*6YQ1ruw`FdoG]l:C.nŠ٧1y ?7QL?gv"k~̀RꙕG`=\q ꠨ `OOpƋ{oԹ~d/RDg|Θo܃((a<.Qe0 *<`J5G)zm)sDrZbd|uF3YZktĚʦ}pm_nwj=,KBkO◄7+w||Oއ&JxKܗqn1nmq1-JB2N"))[ibe&h}VwR'Y( OUv:Kк|5еi(I]C;(~/ a0Ps 0 B:<ε o7h\WT 7BQA05W݆7ڋp4LE1˅ l6FwqLܵt7ƮUO٥iemhNBrV` ޭa=*el /fNBǕ$Yq7{#ܒ;?GE<2yhq|ͧϐq'NFm58>/%cΧҕPZ(ީ4%A-gW8Û5~iM'd*j,Z*%{*: 5r0TR7`}-XkR 5`(bhbsa-/'Ɩɬ8fmtк6I{4Ob3 4?Xa9_Qwjr_nA vfh=OުR&\~=sqC& ė.F :\NsnXڻҏ~2$o2d΢&-.Cj#P O-Oţ'>JiXR\Nq ߠ:BH#<5]c<jiزuB ^{YS=jz\M؜$n:'9ye8 U% C!emDyYӶOW ] ؁ 5mən/qr^cva .Q!Ƶ'Z25mC o)&8yb^1/l)͖Նut=MR)R[k@i$әA+E9`=/-ܾJ-: tU\2eQ>~QN,%zNb )= oem?4_WS=>-X̡.b#2xTTz @[4q* ٛ5a[6TEbߔ=ewcQ(͕m0yq!,\Ȩ;uܺE [i}7#Elqo$ յdrgF|8\EJ4*)uN  jEiYMSĹgxII_PV臞 J|_|L kΨ|^i.o_KP3'l()O? =1e.e߆o/Kl%rwYAh>.(YX$9olsY%!kDi?hմaɛq)Gא?4vSL-Á߂9{ yRcJMƝEbʷT'=JeԌY^.;Ӏ=} U02hO]`4l6(|f<&&FQ$.o_@?}r(/h| gPhP ɋcO*\6ls,[RIv6ɚϙHQZF5FEG Qц0T/X#z[[ѭf@jOl+JdPEi/m@| /nڬߥQz*6Fiv-?qM6)3@$6It4Ȭr_8AW[ot* _MpK l`\ ,Lc+|RΛs$ӕ3)=cO'r , k푄&zߛub hąl]o+b %OF"tY)NJv-tD0b6,GXr$e5[;v"[j~gNKz>-ƴ;&{#8\HUxUK!ў}5_AD{C vWGkj79 C-5fañKE*5}Xƒr(;S&o>MLHctʚKF Ѽ0 u6 aSF%( jQ&ђqsya2p!5tJX)H;Pa"M#[*9[]R? lt[\H„TF-X@ti&ؙEejځ|g3{C ݮDB 8YA:=㔐 Wo^<[ uaIυ)7,c2mr  h)w|.<[UdWqȓ}>Gyvh.LV[1 Dj50̀'5f^))W^mP9KKc!< ;926vI/Lcl-6/J3yΰI< Q$yGI3G>/pEHpD P K]soň 7/@k_Ћ7' N@M@2lmх"4m&apE}ûpj ͓%j>ȏ|A9-.~ cA e#1J-!5h#͍9{b^+ZW@࿨=sYxb%xƤb)ݓJux,Z qGOgbx8T5VsKuI1. lL:y1^X}&㒂\+Mʔƀp]oUј@qv(έDbP5h'+[Q˹}N]`Ԝ7xC: 5xxڙm!yyuZpc\Zd)6kkq̥'6'urxИBP, 2q0,? ()ew;-/ 1C e`RaHX#vK/JW!0%Е :F ؉Zj߃|oE|EbiNH)Bc}sRj^S_VGyS%1|$yiR}ܶ?]dAb&S#Z+NȰG:hf 3*&>w9t$# R+Z~EwG'xԤl@COW`QTˬІ6N Zin5DlemNuqMfY_M=.. o"FyFAߨ JWOcҤ厠g}1 84 ۹_$$⑲e͓0<OA{^|ŪB,R]#ּaғP;enJl*ۍ$Q4)`BWz&{J_ZT*bІ[إEP/̶O]5?s<ox#V-'ʖ!ONn+xvxhSMZ8巒'gp^uW!$zsi0URSȚ~?%DGѓ8J #mYP~ko~"u(F׊[$g $*Zn_v;Qーq3u^%lSm]L &g:fnR/u T._Qi\ٕQN-#>c% s.uCCkLg 9iCWy ?ϴKsU3Y"jPRӣ)ׯ/?ܨJƒǠHaqy.9`UlɈʠE#@'u<, \2-J]נE`} u~AQ~(tzf*s/`u{]G!$aIVs(yTc9 (h×6m1 c5+iHU nu$!pw WuBN` 'рU%8*aU, ^@L K$n.nz˲\_)[נ12}peTOGqmWG&3]6R~Ge jBǹ%ĮjX%s ٦Z/6K0ņN!{&1Mֽ6HzۋbMn#h7&ôVOźd^ZE_{ސE7iMtsZ*:"J.WIciXf ?l_xM=Ւ>4\lVex`J& :c*#PJڟVn`r٤6Ei\|}N 9TVr'WITA`I7Hw:<7&yJ@VyCt?=FYد5 ΢ZQIp6sNT1# gAK'S >x* g >e]R݁W"EB~TjXrHNOI1'/͖r#D^ yxSlʐD(tIտZa|M u2Λ#kWuq):b_p%Q5)Sk ASrqlWbW~?Σ^܂>zelV'~DWGRqo+^f+B1Rujo)^FJK6fm>@R/Lюɩ1X g xɹDߜ@۫˥[gj\0?` 57V/zҁpj}>WkӥO.{,6\6h{eAC FrBp3Ε0h×[@O%hLltyIS!T8lsk )e^_ĺQ<䣭d !Bk/OWz[Y8Ο=RAE->~w`=`l%_2ɃOTe/~sq 0?^Q,AFDcZytZEt6mK<% zyhr"FSI"xIEZ e䰫;-{ (sf rZ*n TCeL͇71sOf:i]] %QCaG}..<+ G24b g= A7ɉ[v W\I08=^D`+tH!\㖸'񐐳d$ 9ЬeE_s(*'5q>AeHǏh]ƨO?s B#@Н{T=N-U(^Xs9,H &Ox/Ctt+!9b(]_S1}4G772}t(Ɍ3);ԦmJ)+`\x =I^-wq Z?$JTDx®`S'@Y/5k5|LzXkxose"i8C;6*C}V}wA=V[8P>k'5p%PZn†u6#4.!L]=c&HNM\H9bIaNr2fVX<]d@%6I5y^Bᰴ[+Q"w⒘3 }2٠iJ7?U4ɢ^ WOSz&y7vrnИEw|.dÆf_M:NhA~2p>RWʗ:bTQhu3!(V9+7ɟ0a"L ꌯkxr4BBwt:I|ҮX|K &XAhyc4z`>O9SqNԴ_>ݢLNvԅ'TmGPnX -(Ӧ"_M.6RM9=}&\w]*р jKI y#+{hEy(4r*p2Gkyy;9̣ {2lݡ9%_y rv=xs2űղcF7| Jr;v8l='H+3]9|p ,?B̷p~B2qSMlWzfoB̕a1T:Р.U [ E8XdV :n&Gv0_Jnhd ]U$M \/gօa\nkK?qCSEvT쪿kNוNfԛsbJL{NRwC(U19a\S(+kd!5gC 72Wv7gK 8v/`JzG vNm[0|vױ˝Ϝc8Ր|Ud Ey:`^Y_{L`f I*\l9Ry5J~=>K&pC!EY E8TGY71ήHv 6E(vR@(2 c>V?Uj 2ѹO5mz Q,XvN.\zkDvZ߶E6>1a nPřKN#hpU (%dd*F߱By0sl:#2v3d9.]:6x}$r;,s$ߩ26 Eb;ƶos?dCh(S U#cO_sESc%@aԔ$ WP8y3:|_c` S+;/s(HD]4􆳧UPB܄kJ6c Xe]Eh jx@BҚ=9@6d_=f;'ŧ5a\lyvI4Qy}A^#YT[.]Z(p5R oT/vA}$?/.4s&"3#*)iPLԪd?l֜,(:a:Os`B|>ʚyf -+%Џh$%i_ qx#Ķme2taR_죟_|ĝxtdڱFz2͡ 1`b'|뺺'J2Q*R(̲ OQSQv U3¦izRwJ6?ޒ~7Zˍ@ (RhZ9iGki7ΌS(}o`7P:HtCqgfߩ#aH{p>!|t8z4wggNd_d5;/ ˀ-fHJx!v&w+2AH~{6trj$A<<: κّQt= ={j 9< [qĦq4Tr!jdx@9  [*%Cₕ<]|!aRwɞR-pxðJJ_eAxㄵxI^P0p ;v4&A :E&ѷ_Lb@Ψ_ujg]NJ;(ɍEg4(^n}<Xа8=dTc|JѬj(7X{)mA):M;rR< ؙ~qiO8Jr<ުIm|qLd7@ 1ѹc?6tF}jJ_2ogsj:D+`H?i@J6?}ȧʴ-wcQTwה \<7oe\[cݕno.潌t:9Ce Z]u[,F=֍6} 6rb,ÂڡH35sL7IV AAԳ5:گGY3b2E:=YyF+&*\ X:ώ!D7j_^q2mgU|ASyɃ)z@Y8h1&?ȶ#,,dXčVs:5^a_ygu+ؗ(fT1%Z=`,[k 1up1WD{j"M&s<9ו&ZtLWy0<.wwMeDBFdCazda(g|@ќ`ja5==`A."{aGa"c! j4kvpǞG?X,Tʮ0F|Bm0?eyv2'aC63{eMtKUF? ۃrGϙRo蜑|E3/;Ϸ7zejhU6ظ=wk>8,%xqN@TC#Uu~My)k XDE|?t%M7Ӌ*yGV]g'RoR>`ZVDW}H]SZr侍O5e#`o AHT;ixd ̲Eݣ{4~Xb6e}EPLtDSSdqXfv ѕ"v9 ^.=aX-rh)l au±, ҃yw|Ko Re.Y D/׺chc%8QaۘUR9cC%:k,ŅLOс9qݶ4EϬ򶛔Np*ZC =o< d%XC4k[p[o?2ɈC;Ew[̻%7xIPmtK#\sKtNthXH+ↃQPs \Z,75:yͽݯIT_@.p6 "iT1$XIP6#/m fݛl,XyCIuCGa]XȅyTK^r&J$_h [S&,qYn鴰F VDJ&ޒfL9,J2![U0pABH[1hQE֙B1S#HYn;: ic6Gα ]T*\eϐ%^M8y[8ly8{}*h܇4N4wvP͈p`aF G07|E;kE\[Ϲ(\R-``ɼk}U 7- >T%T螦{#?(U|2ΓQ-*D@T<ٲD)N?fo^83Kޮ3bHe<'lUBjlʗv,!M[F ,lBxV`%Rh X=S;ΓX0!tzF* Wj!;sfgSb h"<椎:1y(>o~fugE > ,P3xaOxmFCѭBXSğ'FGg7kp8s4_!-蜲.*^H1O5?t{W Og@G zpOYsX?ՖAQ5ఄmFw-tw+TamC5G( W'yN\OlWfVBkgn+k9T',V^s%O*%0,(jw|8T0I8@ 1*FOP;=7ߧJY{!M"8S͐zZF%kh1%'C8+̳w8h#b B}^s?T)(˞c&fjN?NjA^A6Yҝ'AƎx>Ժ-<]fNZܾc3 ñ2)X(#J9ܔD.S}VdgU [Ry{RgWBϲ>[)T\T(Pq;jgO ~;_(-՛Za^M+4quֺww>cD3R'Hi|喍Z__|_2`?NͶ{@;S "( ȕ;s'()Cx4&Bp{ Ԃ:R/||! No!ȯdO 5l/T SXICk0{318#JN-otbovUۊc8ct!(?EE9(4ӲC1B4ݜbّ\߰)LDtȷPuu>0WAWk3^i;M[_ StHoxgKWfԯ[rCֆΧz;cKsV^y[ϟ|]+-I[BY XqS:(K/{gͽQWzL`vQ0de+hḢ%PexnȦ(1ta8'Mfm#FJp֡2tԥQz!ӧ}`jj 9 ,@L .)W(IAXdOBiÉQOȃMCܣy~BɻIr'?MzE fu lcrPG>?<]=>S߀W3)?Ams3=R?L8";Hh!%NR%χ qglU,!e? V&2 =iz`7 "$,pisbj9Çx7KCUgCQ<)76\c`qx)$ ァ 6'@_%^ϖWw["cF\L;bnM%+`/dÎ@ulR#L;JDLvay ~B~c|gWr_ܢbI3%53n /KsiѸ ;c8|PMOUVKtw]T.iKc|m@H7w!X~!qoDT A՘NFu<-` waP;a>敂Kp4pKt=3 m8 Æ=PTxxcY-g pj:V DzHHlFrBUA2,X7ӫJ,Ocjw#Ȝwy&@859vRC)Ѻܿ ߎ֙Bk)iЂExCU^ОߑC!z Xokz=yկ;c9 !sp[WtF{k&kSoyo޿|c񌖴=-;̹y$ L%<ِr0|pwBbO4=ADRI3* OT)r{C׆:^)P]A@^=?5蹹Cᾮw=8Y7`L'?{|K$.&MVD5۞vLb"EkUl IT]2,Ҭh]sGV{;цq,`}׏ bhҽ1 5f!ߦ}Ƿ_l?M UèčHW*7p,_\K^زq/i2 %Na 0-?.H V{/*aD4-TlKHDX0wgۃ3LӪE b=o1eՠ'L`0>-^ y}wLwZ+϶}u GaL ʡ/^QhMu7lM㧆G{wMoЋ>4B nSv|BQZJ+ sO^<M1S{7Kr|9w>,h?phRuz;>Ê;[m@$@5AH;#k/KKZ%Xt>}~ܢ)[NI!/1/xv%gL|{@3 \4|ho.e )riJ.S%Jɡ C "J,JQnxǰ i,o ۶ga7se &q48")]vH'F:ԥq:4s.ňtpKŚ{7`] Rq =Cxz;͚{vT2a;ru ZiP`K5gBΖ7: q#YJB{1u'ʫLȴ" zvZH,̚- +^#_Cu\3گPTbڈPA)lxVp9`~,l!h K-M~lPrC ,ҾV @ ^H{k$:;Ap򮣰_(kZ84駭t|u"x؁@zyس\2aܸeR[pH=eDIYC.t4F¾-Ɛ!/g#dRsiGJP^'1g]7!^RfM_TxHh,bb|5DE-I#;}z=@y TK9l(= 9;!v0˚7!hZ2)m6m(9zv_X+^eM{qVbU{W3YJ:_#mYn(=[:H l>\|o1󯄺!n&' fG0RYYF J 1|v(#@ +bdLɔcͫ˫[A3#I ^\=Y ruR34]B_0K/g⸇#} 5FDIN{bwtiBW$ZWGɥ!Jr/aJ^H@򿓤TB>e>ʼP8#CTSb].[ќ$+a4]UJnhw'R_هSG9l9+l* օ>D.Ngn[exhd('=0!!#{0asCi˄x)y(F 'I|C7i}" 3僮}wSOu Z"X^\vb3BV:-];jE梥H[vXHAQ媘 Z9^pRwrE@K"sݩWNOٴ`5D~iG\?T2xφSȖrul.)Yp-O1-+6f}mB}v[֊5PKg*l}1o8i" OD?p(zhF/Nx'v҃dl-kit!ۧ`.mb\<%/hahy5Mp7#Qh/ɊPD۔DOkHH HZcbpXMc[ DA|a G C5r$8b7%˪^<'OOjAې dlv v\IQzCaD2׊x7ynT%@`@ V$IEj-Юeݵj",0;G"_[܈qӨx6 gFFI~7xw;3&B&^pҝAktaZyU)t>D?~'¡Q2r+ e?G Ül<#t/up7iCVV TEvNfJ'T^Ppi R1R޾A_Ik y bnp-mC~Į,KyJFdùjvBtDaQWGHS? pAXv@ fL¾ik=Ñ4ѭ'J$L:kE}4pMpݚ<у:wʖb!.cs ^.8Іuɪ6Bt$)M: JIp7)9箶ڹ}Si/]-nCfvߡ'VQ=ܚBK 'wރΡuawIO d2x8z\>ښ:τ A_]qt˦Ҁ*&;U UQ<ltjMG`HGx)^p؆U=B>G&cYF>0d1ger$$1{x CɟayDiJOxWD:zpoM#P  <2m Y/QP{"h2 H oz]R{EAҘ vL쇞Z &lt!F|Y2J3̹dk*u0:AO bR 4AcDMLl;! W:mFaΖxO\Vc|MG%fl"7-q:QFp3{k eًL?f\R]Io$½(0 Qpܩ*0kAU?wuԤkZtgi'}dzrX݊bgcVp\aXх.+oL,1w!G}xEuAX&հ p#p[lgkԺn(x&Ȧu(ZrpA\ǂxg!#Y!!TLJ< Z?"P,c$Y n~>S!uf!)f`E '4M}4V\:H n Fsd -6yh+\Gc;y33@ط t%bTx̔)٥(ѷIylJ!*X+>P8y0ԵցfW}u 0=!v`Y=/&Zc)N'vb?g۹jĵ:y6˼ {"Jzd QCJKQg}ruG);*g+a?)KB2=N25H5z:jT35B k1t2Hj3逮Y\eO" A$%`NniI"n8?)<"GCaL=|o{a}O^z2g?KKEҟv+&#5_z~NC]X',}Rr{ʗA"ݶJK ?Q\2`9F`SXoWn9mnҥN| di\0bQJ_֢G XqZhJ@djgw_ê"ϑr7R'0ioY{/bX*Yˤ¦hLPFCD?~e(`{v b? anAh+W'#.seCnAmnp6)qp d\"bi֨ 0b0%pɶB8J?)p`Ɗ˜R̉MÎpiz) ;u\$ذK]?%@(ؐlL詺s3L;qy(:&~ڤP%])sZFv)]Y| x_-q{D+5TҺ''B_nJŰ"lm0+PÄBțLjtGCd\r7ʊ'CZS[Gm Ɉu3Mo{& [ݴ18(h{A4i!`mÜm =r\1coXsQ 'T?ux+q^8#=PGS zCyZ L{'ū YV62%TtJq25OYnjxcs|N$KPnO&|ǹS2^W?@OߎgҠrM֓Ƃ7 d6mcbP<{iC/Dˠȵe&#wԃ++6`6_œuc>% -CSz9a1fx7m r}NP(lLU O_mks%fh_f~zZ^Av#nbs鼧$݄)@^K9q]:S]B~rŕti[{iuq=ri]]69(uMЧ>ؘSݿT bFhb33Kλ>]Hd:q$@5T&=S"QT 0Qǭ8O?# H0/LvhŒz2ÙUj%9Wr; pRBMBd'U AUkd\;āYv_/euJg8#pC<;P=Bs^jl5h'7VΊXF4eԋ2/oQՀI *3M+ ф٘OΜ+H+P fcyn'u3<[fCi서bYjP n:Ux~v [IEK|9]y[ =@?>풷ܰ7L z *bNcg5DYSKOEפaݎ"lmN(J̦ɝE I=Cvܩ)T=a4.x%VŸ׌^@4w-#o{܏ȕ-Z6D^ޚAUJN*|5\u [# bLž2!kt:3P3+'{D6|@SIZWi ѾEfm#?fi90|!EyCm>As̿a d{ilՕ |AN+SYr6# / .. WtS.sT2k=_NjH~|σuV܍9͓ZݜŢ$ J!!]AjS'#Duh$5e(6J_/2X+ KkUvx-l-ѕol-qqQ6$iYmj0P 2Ok L*EJLf.mVmY"} WaXu k2~s\H˚G?)5[|FeHu%3ncx3u۠SiLidivV D8!G 780=?ߑ(a[٨ XiGYG4FǹTq|GЍ\H 0b;CU1brE^)jEP#4m/iXǫ PB[LHU)5ζ5aG9beNGeQHyP" Z@1=z'>;HH<=Yr5qБwC$LgQGVFYK͂([8xS]yۀ -}5d jLNW<[^|U.UX=yq~+z\nG8'5: q[ iWxc*|v+p~ʸ \m,$ D@[O "@`FGN'm2w7]1 dv0RIP &$_}YH΃=Qe6Gw$?AuRN@cv2͚S$|: Mi_vu)VLr˕ Tw2ԇV~BWCX]slv"4>p u6gz@z>4!0cf] WkȞ7F`߹=.O/)hqyp2MLEqz' J=S`Mn_tߎ@S;۝1[-TL[Ʃx9%]h+X{@,PZX !ț2]_v@j|!G?oFeOxǶohXz@9pyJ6,t^[Tx0fHWb<Y$VzŶ֬eu3cb(d~ר\X}?\X0Kg2lLj1*N W:\E.AQ̵ 2~*.޾KC*^vƊ8<`Qoq{|_+I r+?%[%f0#HJcbۘC\]:oa( G|f6 |)Ъ/ <O{@Xj_Ԯ/,/X.voGEqŧ:WwOe26ۤq(k\^r\Ϥt{1x1!HorሗGb?7$͠w7Y8kK XvWպiPe<4۲#Y+=P|m &RT% 9 'hM\6lt¬n{} H[ۇ$ڷ kRWN㨖^߮3mF2mvus&UCa uL7 &q4-2 w7hIXѝ|<ϸp}Y[WQӁ;{ʌ`s 'g=eKWؾF7:wOl;fnZNP57b<CƞlbZ<=>Z)Ϣ|dY L{(Cv!$  se ns,`(۝& yvۄزAw&iH}8穁#3c:R1$|njڱ([G/cZ]E#Dcۭr3N*@.~JLjQKh\\]iw쥴"\h-q~ p>VڍWnX=>'߰xǁՃO xP p :䴦3֜?*Pc bŰx|v^yqlm&WO}eM3 :xEjNF) oy*&hZYm_4T2q~^MRJ+]-LJsTb2!zG S=;>zPzݫ'tܩ*]47m'd9}qJ4f3;ab[XeI`*O\'T3tZ0ۼr{f807V{D }a׾v܆\MU80ܬ+Gsň7%rV"UIiOG9}F_\Om#}Ȏ$LM]ȬzpɔdMNWfgP @a@.V-5T=n5R: N3VYlء/"˪\ܲc[fZw󕒫U>ayk0u|>_sryNA*wD"cy.I|u WN#(b"m?;>9-ߐLRyQ@/B~kԂbZ!vL'V8W|̣#jW9Q\_/i~Iz)QJ1}:]VlZ1hת盟6Amttqуڭ y\{Y&b_aR{xhYy9onC]OG?n#-QHČQVxw":^w7xQÁ֏kOe8 Gٮ:9QŚ@ Ude&Y9]X;`0(YچpiB ^A/=(KmK6.M]"wr5MDŽv% !yw2¢VKf!͙rnQ zS :n.Fy 螳&/ECU)eW~ AS5%Xl?N[vKG(k,{xZ+KEwf`WY22֩H-@RBm~`6Sh`]3YEUfg;0{,JzU׋Yf) 7(z\CrN+0%Z|@l<%>2eTOpفz?hlaA'n/U<2䰮|{9P [V&xU3UThka崤1|0pZ$[k"n;jp:]ĕK,VU @a[$w3<9= l,WDP3hFH|<<;kK!YxCm)dWuK%±`A:ќfJc]rXw%Vi; 1KSA.hcU[$}<lfpQ{IbxlVJ_pQ!!8{T!X9*:~\UGJڵ?*SY!Re+a3<؇3 jEn OXl1Fj?^e@} GOɪlDd#yn܎.s 7`#a-A**ʽJ;h^@r e+9eln$7%o '3SJHNvp,@/a*rcQhl\y*c`9*׃EMAŻMuz)g~ilˀD%h!U"2 q{S8eT =ip;W L8=]{OpE~Ϝxn>䃮TXK҈&;,U:c#JʍaA6#S)9&sŴc9xN!L a?oC.>=kQ 0UHe窦A1IП -4]Dz|99M$kۇٸF+z1K⩨iH:^fZCWAYP|)*0־/20lKOUQ˴;NѼ`|A3hW۔Ѭ3j˒0VVq(<$VJ$F0}ZtRx&X)!eġoRci 靣_2e; L(n(MbQWi y{rsgE},au.*YR7rBn!DN\ R!]a"Ukx§a1#LÙrxN1,Mq}}D0vDj?)Cc9haJ LbNJ`0wwbA , )ذ"v+n^{yDf2EPex pz +1(ŏ\>Ȑ^b |'^Gv98ȴJ?E{ cv72Vy?TZEV|c pl?vrǵ/ °$iQ56tDi=Ap+TAqY{r|}wxo,b턡tZYzSIPJ"4 Txՠ0D]^ӚC;z'stxC7] "bRpuye3CN0\ 2&dHc%;N: j0~1lw۔ OQp˻UyK3i=Ay~3cZ y:)[Z[2Bi .d7=pV[ǼSsц qk >7Ғ7/۱luSDӴPCϷfY'lCYÒJs< A@3ޔWRFN%O C9ERjzme!)Mqe6y26eb~İYO8D^?SKфsscBHVFJ*W 3t튄D]/ZR%A7XfE%K/#40W_߂wʌU{nj ɷ&>ܐ=e2t:9?߶$VY{ 4Ob`PaÝ`u̱B nexɧHNNF!1>ԵV}:XDy Gwh WtЙƬc"4Ѓm?YX.G-]-Nq\a~Ay &MG]*tMzO{ay7U).8pU7Q(( fkȋ]@vQ߶;.o]-_:m`aLa;'M/}wK2Q1@K2EJ=*s4amCmu-େz"4K^$R"%.PD+Zıᵙɳ|YֆNnGC:TK`j/Zqhņw.-3d@*X5L)7&.pyӏlX_]})nL1'1$pZlX\\JUM1"I$CfS(XeAIbxf1QgZo?nE*35Ұo8{I V1L=8^Ob SkCOAVbx ɚVTƗi z&q xJJ:F8~CzC|ųo=FcgQ!_Y8s?Xj@9 t:Aٔ޺#˲Qo(INfnhǧSܽ֘X:'2w}zBl Ѱ?Nټߝ,mXDk~n=dgcR]-Bgȝ|7kf:W](:j [ˡ޺3|0Sړjx9򧮦&o̞r׉ˑN"Ox2\}kE<_Lb>Ӌ44:e".ء1H/+xj@;/7~@!7HT"̅%ՃN3L|Y4/>cr%_NU>.I-4[4tf6+εq=eF86ːd~EDd3Mg=-c"qM$¹XkP8\J ?7H`'.̡$hG~ڶ 3sGPF:ts{))^m,j73|A|퇊WDP0Fwϡ1dUK~UOj$b%49 ({*RTqIӺ(8T Էvg)\CI(pGʛ zf'O!΀*M2~#lgwl@^,Qqv{d~{**`D"ig}xhWzB16T_ TIQWP[[9%+?v$&Aގ]g^fĈOwN* D0 --,>p^}]U*ټrKls_j&2:cFn~xkKm|מx}i$U\Tז]y*ƈjڗcj`.XI~*X3ďU[Żx5UttUO8g+\W;_̀[۩:$9E% (QfJͯE,,A% O-I\5Qvu*rͯJFf9jV.c.mz3gM15P+TÕ{Y:1`z6_K!EjOlf؇{)cw'j#4ֲ=:9Yc8sVGH]f~Z*ޓaN$op2%kd0@w[A 'nqb3S)8aƘ`6.t⋤L4'[Z𘇒hpH{|jO?TyŦ%5*nMǾe"vEUx^I18-?Mh稂<_G/5~ )>:}~Ů6Xy&RbU`9 a^'Ą\@! EoM02+ TĴװ\Ҩމ"+bgf#"Fjn'2x sYS6oIra/^J2B n?+B9O6T=>VXiq\,`4\+0 g^Oef0ۗX6 `߼UU -^rs5RﴇFHYN{2%sp3RZ_(peF)'1{x;Abae[j4@*3k}hdA<mS6?m{vxZ}9Jk\j e[/@ rZ[AeJ$$7J8-[̚A߆eCsտ6D rGp1 㯻&ދcڹ dX_ :g؄FD[ 0ϩKqRt]g#P"7iٲi[dkijeQ2'{D!F4gfpF]ۋ rma`7`#0\S˛ ˊׅ$5tD47mV]p:j7&ǝfb2Ѧq(ʋXӣrzTCeƉVo.I̔Ӭg&1NC{q3{cIj$`]49ݳ:^=a:*wGTMʢ$6TY&'V"SFi\D \Μ'\OR$/r03ԨIx§Z:׏׵r1C&E2x[WZ-Te3"#| DF+9%:pP'YI%aa"뮓y:Hs7sFL~o0|Re{a w\Ŗd)A}';-es5Ԏ#V‡ogҁycV˿~TK_lU} IQY]ÒP= X26IRxVXBRFLOLk$rDy*c1~yDDn`} 37{vyN-zʿ?׀: p}M+Βg[tNfc_tfRLtYZPeA=UWgdq]=K30KN[_36]Kj"ACݹ&42i6~V_wP0?c2M U}u#h>u/Ru4X+ċXVLƩ.wf=VW[yoA6~͒VSw'`%#Yw; 薖a}W`{ u1U}1B O#PUHyKʏ`j;%6H&»0A>[ۤ H)WP!*d޴V꾗lq}B@.tgGlȒ xh1c5N~eH X']{:^FZ?jOʈPxv|huNTkt=NJ;;ؖy-9&_&D ˺(;~2vd,43k#-Up3'S>F([)^ߴ3F.o%S6"7}C7Te!hֱY>W!ytIό|wo QH\Ƭz\%Kį4H5 50m-āp/E|*n$K 7d+͜{jfag55J~5ܹ,qKi.[@:&-v]0Ui{T}x-/u8hfYjIqSDmV`30`u1B~7X)/ROr3-nG[]V1zs"3g~頜4JogbmH*-oG*dsmG΀5E1tJR.*~Hy|Wdt:3 n;E5pbu7zӳV$'I6|Qh9`Oܡ O0/0脤mƨt_GJt5z1H@LNH:h@;GӓJҺGIGZz{z}T>'כ*t j$xBRP/. o.)#F\V.ht*T>OXxF (j-GJ3ǵ)w SB^`Sב,uØg*zm,N^U =2"Ph4Y |S >. R1v*XROhlj#?t1D «[ϚdCvslDx$1kMe&빧$(UA,:4~KgV1VFkR=*͢BȔȒt^YƘمhOsԔX\ȥFqwo6lh}H0_LZfb/EyŁ[R[9r[}|;{րQ٭&ґh̹t7{lbYM rUvk>R&ű7)^+%{lܥ_hD&5snh߻ "X0Iw-;Z}cZyaϖ{1o΢fu6K!ξ>S #3tpv}؞upS 4%ss`OzPZvG%2rm)=r21"K%1*Fo@֞Yb8ћ)[e [ C6/BohGkMH~7dOGy |rIi1J߱T{} Wv v|ri:+|¼aiEm9r"WrN|2 (@cz h¾f יv{K03JQ5O*6;hxMPMӿw.Jf|Ϭzbl;v+zn;i| 8Jë(s/p[ "5 wcQ2 Qgw~w}[5NM7N*Cý5r=jeoQ`i,d[j[ވ/`m|+_*]*JeÕ`qwP nc@*" d 0z7O<ϮCȜ&jpڅjS 4ZgUS.QnVK"XsFAk"LZ4|| qk'uHDúP}o-޾(mVLN/27:pS_ hϖ@ ׋pa#˜]9eMHzސT ?D!$osW,U'CXP^YE|-?st.2j-`t9Ry:K[U;-j6IkGjO<4ѓ3wl~bD4E)?Y&j3d qu4^qF?[%Y^Mߝn(2⹤o! *f( =ţ =wna8 ڞ-K!S ڙ'8͒PAT(̯@FAFr[ultt]ݐ&x2$~!:q ȊH:RyNp'H8wK lxيǒsdj*Fpg6W 7 | OŅd*I=w᜝XRج/f6a[B֔;4dLWNJ/aI9qsyU;yּp; #=X1jFm,8 mɹ(F.b8*a(!:WAiY(4b``_,1m|M.h@~"j;0gR!F+_fviĉ4@q~] 0]jc$= Plnzfv5p @O:B9m&'Z뱦ųS*v`t7<iHA Vo|s:⍬Ýiº,u8M{ $ĸ]6Mv?,3L-azK2jN u43O cVA'Ví?8ѰAUGp Ã}`7b7rLI؃7 A$&A~8|(9)o)-;bb0 èi8sor|vR@<<)vRAP?.eK;З̪Kg/g86mΨI(F)~harGK/Kn t(-59' ]b~Akiƨ*TBY?z&[IY0+P1A )|&kMPÉ7z bmxNҌ uZevlMݳ#\qcb=n *0I3OȾ P[~`wO[GyN"L lGQgAw15%1#6bֱvVE6|w @}̀\S|qa!/l( )(ߎ޵s&vK5,Ty|bҷ79>zzb* Jt֦DaycpgK@,Y\(-ڨZ*)ֶ63\neq/ۡ³QۨZ(.b% _RB3f^v.^,㵿RP]2Gv5<ަ7$;UQ)?_Np EP j&w)}H 8fzIvbVM4"\!6xzIVL;pB4bu>FAOY FT<>:ؼ9b$+pwQ jVH)'>a%&gTO@g‘qeJQ|M2-ayb%0|XXlQD nk ׿Q2(6E!+ȅ":dzNpgk ࣻ u^/aMc΃N B[,A?E7gWT5,t+gs8+s7LJ/4Pܺ}իlcV&X(s@cٜN`|}\(8ӑ S{S,&;"LJĕɪno|t@isJl1[1+9/}(Kc !#q0m{'*Z$t1uc=ҩ6}סo"t=R'"jd9 kRJcKxtUGKF[ђu.#i2Pa9'O ~ [ar [D]򼊲{lX_Vuflܱ?2, m 95+}om,{OVWN˨*bRm ԺSzʠ6 G.V\K <|SaWݗ6LnQ>sUuT0g"tR7@اj`T@R FHJOgjC"s7M cO+2@2F⎼ZtZZu'aeJm#1[!?h͸Vc As{UB3AENg?xc3V؉ 6,~5"uN"TB5ʱDtT@`dCGS}`F6WMv:B']r;dž_SO.jiT2`eB"$ͧO$-__`I7|ɂPWW'6bm烔QPԗE؜C:&wbH'rATcpZ)k&f$0',^h={a)lRHCX>И FCr}b Î#QU"Lt ~C!xY$ؔߜcYMv@Oͷm` ~o];;04,ȸnPJk=EcKC^_j#2g"0+tVKV%7]nRf[ydωٚUz2xrEעtx֝9o/e/ ]PUɍ6#GJZnSU]*\?Y)K*6s89 w9P:E10>7ELH]oֹ{!-RX.OoؔCX˧w؋ -P X.ͩТx2&W`ȑv\ J.PD!f)`GEׇ=`S3#j1Бx+r z^V /Kv5S9EEtIË ;R:P{ŧr;joZXN8+o7c~l|!Nww9لE;k>hj ϘݐJsOd0Σ;㧈bkx3ʫW;[6;~&$>^kݓ!%z1,{l =w4Xh{sg) 8LTp Q62Ye[J t I;W_;yDCXc RZa 2L+Md9o  m$hh\P,t(󲡱Se"]P_-:4A-sw%ԯw pb ag)oM=~0?; i70ϻu*1`dsóN=Mz E!Yb3{|%[òP}f^G "^Y_]8ܑv (>͗|W0i6ڪՈ5.3r%_tp 0G NoJWeaMXԃӁ"Ctá(c3dcM|z;!".3qm \ЦoꄧG 6gqM^FQV|˵5^ð>w5D,$3T; yφΆUo-ֲMDؼ=ҁ{.=I3„!#e0zL_U Qa>NaC&+eD[<)U7^O"ԗʃZaA5 uvocsqCK-DG.!0ļc$f @;Yؐ+OӤri~tZGʴ }nL^ ޟvuz~Ч-^¸ v hxQ,p,:^@UfiC9y0rEJɕ{Jḁ̆3~&$Q"vW_F.Ó3SiJlqY'%_"W~BGhu(E-"ZRڰ+2挽ݚ|>!y+A 1z 6!ß~䜼κw $~cB0 [pYcvlEːشͿlQ)M)qUef2 ꆉ&DZʔ膡C_ozgsp7DVWܕ- (Ivoُ;eg!Lo d)f<3'PRZuQ^)T `.ٮxBV9vO!kG 8!/:.CƠ_35 l[*=H~ y:j_0:,24*>=I&қ "XVŋZHmLX̀NS/QSɸ궽ǢHJr_֓Tc،qM,yţ6S}%iEr;(V2ԇ%_+vsa2$GH`*.: (i7ZFHF{2|uw_QL|Vy qw3֊7!giGU%UMݧ`vY4laA|? vj㦞RC; ;z˖OalLi,26ysGqZ?`T>V?%x [8ve:;GN":n-$Ӄ Cԓ:SC8q4jӦT{8@VBv;wWϕMeOi05 ;);ϸ`EYJlԺ*u__ҲP'p[w*>dP^l-AInإ)a3Rx>o ~nzDdق@a VC:WO%, 9[e-a4O/Jc(-168X,=ݞ ;Pݕ& Bf t,u^"E0\ꐩlU JĴ+L 72@" ;# .ei O4Rxgq5#y )5]2)ouH^-o[)e:|8%V "D'pŞh۾Jx'fYPlP0eUYSWw8|g:hBL 7CNE l9z%(ptA[GdĭDWg0ݎ͙veM7?QJCz0dӾE dٯJѻk!EnPbEߤ9zsEhF4o|3;-bon͑[9m.Qyq/<^=+[E}Mz)3!{]Lt=\hl]N?u$l3szFs !1H'=u9Dx]AQ^h2!M;2 @ȵW #k[X1,KF]-<țIf1,gGb7EH-ִdH:Hr(t3tȋdW@/@Yrs۬E%]kt?UسB~UXǝY( YƩ͎v ;Z8}lRBrT0iΊAB9ECHTE8Q5b|ZPDqؽx UTXviRur<&*Il#Hl ݈pY.A!|f~x =1_xqMbZ}uVHM~jӫ#Kz8!|njH@w~(>ΰ (}8КkF~k]~Efv]Vc%LtI3+3'Q-yY h j@q8bpD=ZeIzϴ9]ځmgzS<|ju{dpW2 OStVK6?U9}/;>p}rgj`;ӓb0Wtf<(ϴQI6-( @V hY_MOs vւ]TNZ.9֤ƻFoƦ0@nC=h7 ~< F6x]R p|%&?? ^Q> q6,8/KcIԒxFF3OE'U!fb:+bDÓy~:UmjeB'=‘E(V{xL"J}cB(eGIZ\/"`r|u>e. ?@i,Ča1nuBV,=G,n rYLM)GiGocv=O&k 2dS.47jaeRhxo jgysK|t=" Rۗ5;ȑ7^K PWǻu)NeTv,,t%BݔѤV^ߗ'2R?^+`P4x7Bbv(R]6]OPgQ Oq%}%ҟC|m#b/$ظJ5ef!mF[Fź i/) L5`fDJWDu^bP,OnH=ۗX:oz8DN I]cFc<4cY1{c|v=mx6(x~ruﴖ*Q Ho?)̈Ã\u<{|`#wC;[ 7okj`WwT4\4/t[M׊/+@&Z\736 j93Q x6mzD혌_s&(:2e8y-VZ{U2OKxȹwZЏv1é%\=r1xU1鱭wAyFQN }sgtN), * -xɲ畃+{7wZ;u@NdtR8g%#}]g#C `.R$c3:C]|پz񶏱~פVCb VJP fٍrg0=f!Ф&@Riw W_u_(6I GkbW|CH˛ghWjLVs3^:X4urRDIQ@ΗGri_JjmIt],uY=ȉo~#]r篼'0xM:"*nyw0?̙P }n ,@/>(2 ȭʃ69E&qf[BNkȚpHc폫j8DBYϔ]eFHIt=(M =~jZB;;(9X eh=R Dz/#n4RH+IiF +uh;Իj{m3:x$2mIZu1Rrߋ׿cHrnˎ*Wh/3I~f] Gtl&>ʃ{$>}S22*݃B4ay/-!UQF1x95Xzp &GU,ڦXݫxu3h8]N XoMӰqf̍e)'1n^եD~rM28W  A3L`vkϋ"cU|ѹF\Zv>m$\8$R:ǰe%̭UhrF1~ߚxB|G-A B,b@,9_4ECҗ:/2Q%hsI[jk<]ל@Mc k1?@qiv?jY8j7:%ZU7~{$hWCuGRF ;p& ok=߸{2E١9Y $H{\fYIe}17T IHncV%@-5ES s g D*0{˂H ,DGQA,\68zk%LD&ؠv qS9KIs/Tg#靿n~٧_kwwPfobUD1oˊ0bMN Wx*sh#(;(XϐWH@76G(Ԙm)@'OjP'ũ=04Pk@GBΖg:]C+K˳XɺS-װ F 5seCjpOos|{I޳BZ%p>*{5<%StJ5kz(]qcj"4F诟bp n N)LCy4$ l]|vaæ-h̟9%| # sma)#aqa[QC(D+J f2`{<|Y`O \奵P<*! ,iKbdex7dUj*ǀlЇKhs>Dj] z{.U\ $b*,_씓Me* 4t"| ]Ljb&|Z%WݻR^ -;_ Fӡ~DU+ 4pJZYZ݀G4‡ <\"ڽb(oU%vP Uq)[@$M2g+nǡ[fA  dڑ*“!HIPMt_Nul /,+/#3X'>s`h/A# !X Y[EȎI0zᾺ e;kg%Zhu!@Q|0W}m&~8y\b_OUe@ecc舖3|&AoH?BFIH6NU"6`SC9y'{!4*L ~ظ90cU qibw PX##7g:}~E9+QpB/4;f-_2!mxGUUZ CW1MyG3_Y'QUz_>ג )!?,j7ʰz"΃xz3€(bR(!aRGm,lu5`ў%ЖY6;($L[zCu8[5v~۟;81tg7wxU6+T"gmϻt̮f™CSH1+:]ٷ6|yt?CcfcN3OǺs1Դ標8JzBWl.JR摪yLXw31BaӔ.E zN /L,q/yT t;ˎYgnS;_ ] (=XO ~hrbyo\IwD3tM%s0T:yYfP"فUQ}T=ibzюLޢ<@]Ϩ$Rל V;gtB8#ͮ[0gkNl7B8(vZ,V0ղ`FcD3,5FFC9%-Eϙ_͏ԖvӞ[M3Ω '\ŖtVY;F &G<E3t˽=?1E)[y+osͫ#L^^? ԙd[ۀɅroļuzH=dad{DW✌jhӁC+mքMqb3Bg3B|R+`l[碗NNJBu_ U+ܱ[YHlKmøe*rPݛ0ZyKg^AUHT:oۡ1 i 1%hO4G0.19Q:,{\[PPTf;={`8`Oޝ& Yv撮}j#c.p=7+!LkGqM)C~F+_B 3aP(h];Fq]ԝl Rl~n)Tȧ:s/B Ym5{PNCqI6b .5HM8cE)/A=Ӥ^;1`lAV'@<G/g9c<&r[8[M!$oTNP").4yJ]ezܕrkff/kgxQcyf˒'{K=+ N/៼BC-'t)otՠCz "&Q؆ʴ ՠ—=]qT|ŕ#雌&e-'%f@=X{p ړmb|Ҭy|E&$TzN`}QDSL5ls.?&C@ ~ϓe!?b,%1$; o߳3:qa(y;Sy}@yQХ ~Q&Sr*/Djj8Gj=DSC\9儰6k*Kp8Sw!m.xdKT/μB|X?"$!;J(9uYThκXN*22Ɍr8ez;Q0Wd|JqkPq|ĝDUƁm''CG54~dko%L4Myt>(ͩzP2_($%`5j{Z;]A`j4pB{n;H[ sʐJ\!WM%8_NPn~"G-k3C$1Hw@ 15 ~++R M%/ =+2}BL1En/jw$ <2D+ ڙ677~ղcm^*;C>6w1QF̅W z3ӦjQUƦnWOnD5> L CJgLv9oPS7>gW8+:8)ܳ$݃./mBdYflMG ҳ!,_ V>Lr! 鼆#a+;/-s7tԿݰoLȌyvG!vZBu07$@G%gƷ:O+4|)2$<O4Ԛ}ݟ-w,1C$?7,Mp{ij\\mIֲ- j 2o]^VSPm*V}.Ee]>%ظhƗݢM/K%ӷ+DPseGO tKtE6BJ@i:4ш@v{$YSL&za}Ok yshynkDu]ď4ҭOb#葕Vz?y=G[4ܜv3Jی 0A.~PѺ-0=!Q9oJFY'SҸYXsAAbNgU]?ƨ }%'j?*ZպOIGLKHaP7~XJTڡ/Ua#`8\&+fBp퉃KLpb.&^k=EF8ϾJ7Z;=~pTg$5S ^৖$sV͜[b; #DYU@xOW¢pR+oYb~b;˺X,cԼB$ , baXKczgQtZZb9!QA)!)*=0cL\%P8dGUM&'D8B`2l5dM@埭b\*W]P+(2fm̢"9:R}-vغ,[ZXF@kc_???!Zul#_E ~s?$Y0 -&2Lx>x*\'C؅!WiHTݛֵMlU#Fb}̴j+pR&|*xkdAԛ܉B)%XE$~`2qsvf~Mk gy]^g#VdyD" Q>ca:rjř.Ժ 6YrL,M=o|} IUE&fZ/rf=(&ƠcJOq*Kc1**@Rlm\oE>15/\>Yɶ҇LkǓ)P5Y Kh|7`BUTcĉ-Tu39ͱ|rcoё;}oPKj\RgW8g?uɌ|D=␆vF&Jp$_P,1WLgnH|4҇9&I}yF՟U+pp.nwv^ZS;F \yAAׄUT*ɞD<<ģuA eymnAkh3>USGpTue e2yUWvFG7EH Gh4㢐I6*\gpv9&gX)4a=E~Lہ{0>szڮiKen.("h_];WW(?8Igґ40 .ZeFՉ-+oHd=qgab=9^K+Yڄ-HM#w @NUsI>8P^EqlmI;AQHJ=TX\+-[ly#wͰÛx2ft0 |VtsBk$Igg\7P)vGSL}#tC(/6+DD QBg=`bpۓ$s{o/"! x+8tӳW㌉ Vs2N}nZG!lgSn9jT IqJPyY:+1Q%K7a&f#v?\<*V_=qk06W| Y# O6? #bnR[(B1bY.##bUpe:in_0~B>^dOw:| I?!v6G+f~CmKq;':$Ao%}SʰteWzd8& UZFs" ryb ޖvnx j< 6sAA>K b6(ڡfQgt9Al,9U-@yPԈ/2QoSyo@ D^:td1Zg[px8g3k2H2 ɹgFLscU \0g§s/[s_hD"NH.7 U2rxp;1Sjatd;7jwkWƹC5BjV:՞m%lQkERnl82;ci/W#M5siZo3wHs]. a:)9+@4HrD&A+U@1%lQݳ8`!'mx^q@oH8cnXJHz5+7;n%"'>5xe w%F>bBE.):XMɿ⺨ruc@Rc|zkYyvǫSei{i6usG,^Q끋34cbCu t"9<ɧ/Y3$`I3ZY+*j0mSs^dAchƠ1V,/9,6 U}o1\>x9B[A*={%UĴԛo QNz.ח*PMK/:u_M~Bb\_sjtUdoتe9Rd+sV|tM`-nXK;AƟ,KXE/Nk[}@{LEO,``gs#`b*J<Ü]׸)U\JjT$. !?| V%h4C=J\*c4Q1=]"LYO+X֨Z3%6"C"Kj!:ⶨafcrG% ڻ̐* Oq10^~ozDG_9K$`Yb>T'[4[bO'Oʠc!"WCA|I|eh'Z 38 yTCr !pHNQc#ͭ$AD*$M ɭ`6{kdԍ,{18!!rd"Cήg\m+ecQ꧀aْ0nVU4RuSw/)O~V=IPW;~_=y'DͣYJIZJ}V8mKx` ;M\5%(1Dwu^p}&V&W%С$Y%[!vDp뽦L驓ݩSa:ҭҷio}BEpa;!ǨOLQ7ߚ3KPCClV>*,Թm< GJٱc&@H`FN`ϪO'Tzo/\j6@Lb ̦Ǽ8sSO#>S;FFbu]\K:i߂Wu-Ӻ `sq&'"+x*K~"{%\AK!{ʥ\%S) ^K7Tҏnrnȝ~%7|TsSmwHΩ*RTV7<'ÂdkĜ)fSud!wl9vk+ԒREŌWp/4(GM>")2'Ռ)f@$&dA`S򚃙^*,vG: oE)=SNl+nIֱE7p{/6EgUĩX-&ۛ׌AvfPĦ4`K#[.MJf̣[f6YA[:mc|T }awP;-G&L@nQAӀR71FF*.EazQ9D.D2 \l2we+ ) 4o]7mқB< }^К*ܶ|%cyq?Q\¢=ߣRB|RlAyE3M50Gך/^޿{Ce*A:k׺ +RdsfƹJ9ojBYcr3F;'Ҥ!-= wD gqj}:X9L&Xν"{zyx, Aq&UV1#:aT(iM=|QPѣSOJ~lh7P4>E )6z$ v602o7Iȁ._@l&Ŀ̍t| Wf*mi:6tT*.(GD2xVCBeYt]Ke~^G$z_G3[?8k5X.L_Kߘ__\-Bz忤í\nĖCL퍖 zx%_u.$l/uXP%$eX`WwEW3 ^; IjaYHE0pvp(&2|FɷCU`07juPt lHn^,hq>Jȵ,-xyz3!45}O3ґY6MQLLK9W wswj0 evSnAoj̇BU_8i2}-ثC;Fir/9|v9*dS e4găY+GQ,lB۬Xw}`v%^DSTs=I)_T:O&ȵm̆%V_JF0"d[@OC^&a.= 6p0{5< OJ]}^>>:{a?S$y46h.;Q  _V!7fn|UGd| s*G||d:xfC#;8"W|# wz#ȵ 9?Tl6嫞ZWz.HKO7zGݪ8]Rw}daفb! ^0ϣ[j)QicH 1D@j)T ciZAF4t# D67AD6S'GA=e晳-B(څ"gNG<#irhp?H!ȪHhf~Ijey.VB:le*|F-AU C:?B8HD>Ӹ.vqe^YFY7&Vm8zt_Qd J.퟼b-~=lllp.9[n5L٪lқ?Jy]5rDG+S7#jo/x[h)[0 ڢFި̀gv/v4rrclي־@;%K wvW&/OvES^1;*Ce 51\gs6AZu'ZƧ~3)V/Ałs5HP[14qqBG\s 9r+[y3ޒ74 ϲغl7ܑOMłiz N<ssڐ,bGgƌsE&) t|PiWp>ƻnȒ+(I&)$+b/Y0ƙv9hŨ>_!\A: |TL#ݳ'gBC>_29?)રV>}*g9[ld^Qi2VY07՘uFϑ[ ZAd;x\(DN-AdJsL>%g 9l ;iԔcCOUwAr.enJw*?мe7 &_FZC-1.CyhBIYU}9%4]T:+]eJz3 h# `O Tv 91&V aU3x0\߃GQ 8bȡ %lGOR>zɨΕvH5q2;g-|mղ|1_dlȝtf5XPydFz\A,CWA,B0:!>ePeYXDIfWݣ֖mM6:"B`AP}i'r r{I9TqWsx誫~F`VfW2]v`7o"JB-l}}' v$=}Om >(Xn[-O ;I[&=+!W" Ɵ9AL*Ya@O=ryxquؖ;:@{_y˼ٟ*|=c؏ձθE>YTb+urޘ?w xبG;®,:7uZ&b{rY,RKH e/MTOZح[)lIm$Bg$=V}  IV HJI[lTs.W}hY!8W(ѐl VOvSdp70uw5UL`q+n\MG z v7c݁\r|2q {?:>B'}i,جY,JV?) =λs0wA[ؒsh+;= 〪8C67TE(hp|AJ#̶%&e3I:Sidc9$ƻ!iZz~vr,P=`⬒c#n\w #qY#=~U"\ILPe vOɯ͊NJqYݟRfn.݌l[1gZ3S B*KgUP]5Lk&=aLrﰡ3D藴 .n oP ޭD b =.Qئˮs+yRZWrٍ?XRuM<\xw*z}^ +>Vo]Fb9fm-<@E )b{"vep}L̈yoף[B{+^:Em`LZ$6!VS)yd:I 4 T D?(\p5ѤX2Y΋ݴv @T GuLamI8jsl!J2TE]xǾ?/!S9R߿ `OkϛJNgmiwa͍|2VMX HgUl@}%nXphk`: ta- "Bz9|ƨߨLJ0"@N w tC6Eچmk%r>}$rm]ԅKS㬆K :8 z\dBI +䇻RI;'~ I 6&*~țVQbc'Sh%䗺PN˵6E.&NJHn=K7&wޞ؟[|ĸj)Z\ 1Cq3Z O]K2<{+ޚArX,D [aMrJiLne@E4ANa'3w3l~S(Nif8CfC &:zBer,g^Gj#ܺIfu`X8r>-;T:>0#3; D=Ty  ª=t@5xR%iLƾ3 y+n=9{uyaEU0ta`p>);*FY+Z,t;㴆_5>QhrˍCxV{%w[-(+1H ܖ ыBedvչㅯUI?VB?ҋX~0c )gEO۲FȀL݂ Eι<UB|EIr1/.CI?,Ӝ,^ܝ3!bDXv 4!P2`B{qe8ьS­M5l ';~-ϑP^*B~~gYO֓P.Ph4dzOɃi6/~W1@tz8$-UhY? "RO3Wq7bk'yõ 7έx[1+Cv 8+.dolxCP>w|s>%w.ռl/=/vLY@c]Hr1g랮;9W8v:|F9BjAv- x1Cdui")>rG GCsi&1R\*^kόyRm;oPǗٱ n"#3[xM)3a褴v6_"$޽uglpx.'V"g4NxFግsI@8v'F\utnt[7W֣d ?xV^ziOb+mcҝaӹ%Εu; xO$h~kO5toߋſT躥M$y[y#@V=65BnS;h.)e(չ)xn8n8>ش/1b,rHɷ!mfҞa:L!>H1zY#m˔ߖ{}ouX8jF]a 9kuﱔWnn ԫQJ2^+rw.'GTfHu5t[Rb/Wx'É[].77+nKjꦼeú' vΠ$_hr UD=hJ#!̻g.DMhx:}6Žf_Ɵ0ˋzX՘H!& $ó=1hdy^e?z恰8ky%,F֡ka9v>H4N : om .QGD_mzol% R(j6ׂ`䖀)(oS~]ϬIv~:OIv*vM}x+pսaNr.ጆD*lxWC3~qyᮩ~âazje7NʃN:Rt4*?nEI*w*ZO|N\cu ϯ~XM(P}p5+*H7`vs$7;?k%%JS=0FPW uh,-=G&ɥw.D@FZ8EJY6wJ)UGD!g{$x)kZDf$ i@wοաC| NfKmpnҏޔd2"gMJZ_x9VDi,f5`WӿC@I 0a CgGX' JPjaܖ? ' c )J Kz|>L𣃕Ca-P?I XFQʝ1:`Wտ*n`E ,[dSuUjz,BO ? R zɑwN?{ oFe/-*u)PU @k?oiX:i8wxnh˦OQktv5 H:> |>G_8>;,Ko4e4 d|TCLgiH*9$!txo)IC1JJҖyY_뉖wXbwVToiN͇"[QcUms~Ua=U?h Y\y B/=sTBSvuuwy;n#&E8`2-M * JiVT0ս^`fMe\ƒ ^ok( e21$+&eUo@NNgGMtH|VYxQFp+q9#hFvEx ^S%sD5V{0ݻeEBuln<-4t^gl F /2GG[)G~#G0 .3F.‘.h$|O@ {.p$;ȍ:-v8-4)oZCB ֡f'gZ!Y 4C?suA)zA{mb\V4:zk@`us"ccc99\?uG.Vs]s {Lxj³ܘDsj) G,'wg^+Be/2&؊M,E(T5! Jd0=+&rMu[GkW=8^{w/ Fc 5Le ["3P.֘BXJTsS]hs!$%13%bwc;ZɁwo\T,! T~hW(@!oR:}oHpO N8߸5t҇.a**t|e<.v-YQOTf~ !ÁpzD Uą=Sz6 >|e)BS['6ZP~- X9@'nޱ nQvSLn6J|N2/V``M G-K( UANn ]YjVe2'8r;J\T[!7c{GA@zW=n%iƴscE0y [N/v?CBSm-(.YY,d9TI[y:s R;z;=>^t/Z<3D*»,Х߽'2̻-ԯ9Rzf=FA!IuR{2A#MJ{UѭGvxɠ/394B%`Qj뫘\c;vyhOE#;"A3DklΖ.al%FMV82ɚ$[7# T teS#33AyJ^G9U}aCq o܏bH j9eu zJͻi' 8˶1p{F~z $vOmd=填:Ъ:v,)u[fS8TږuPM!Bv$FK ŭ%]zz~Y]95G581z { ܷE~ yJjHBSyDy~/Yѩ ѺEs{ROءoE[Uk%`:GfFj^g^@ʎOP^G.>B6>\V*%c)pQ&rr^LԁeyĢG~ЫƷD$K a;_&v,D͖O-jiC'@h|\١HeQov"} `JUe$C3|xq;dMJ+NfB fAoxg֢|ϻ]( YT_ ט_KonuA@]sPgK(4Xaֶf]>AuX@(Jo{Vwf1#/Hհ$ӯmT3-~ \TQvنYFY3ppj>7q̀CbL~6Y!q4jh@61T4Y><몶 fN>I7_c;@_KLUD2i\*YOg Aʆ(Ŋ۔;4FAvLa'[݄w*C0#yv5&l{ _\V6㑭YbcH&6#>LVX3S8?vbA,V5"^w(.3eC2xBl Q\;C Qt`2LI.ʛgy%eG&9zZdU%cU]T,wDMծN>l{5sJ$a!@#ʉK/{'!:Ιy?l Vrc4Q\N :M[NS^N}zn1"ҐmzO$4Xq6j[_&]R]3O]RxQ M)|HiYXT`98go$IC;8g{8mz;dģjV^_WX%h|Mۼb P6gXZ㟭Ƣ—}[8ISUh>_^> z~ <,.O=,Q[@Ж2prP)~>Xho zvE) xA^cS 30I/xtM ~<˱6WPBbRT°:o*ŤCkBE -[tz&]5il)Ke`!D+ʷ )ݻ #gj\YpxZ,'!͉l bȒR1u: qNs-UK(knbDmpbIH2vap_i-ؾĘnn?y!Ê# (0: D\2V$Ȥ^+Wl0rKϋj%Oeۼv4vf5e/,VbmoUSpoO-!Fi2rbE}O ߞ|lccI[`AbUwɞ}?6r X1Mש=]k3"t(vsY8 $eWBU^"E"s$g% RB53Kv HBJx]-;q?R DB?u'qT|a鿊CSrlG;OuW1vi߅_2z<oRvŻ^>-JBF*Q٢^Gv돣Ò+WBqrļyK!nQ}]y5~zcQQ24zTd_x_?6ڰ3EHRu!|ͮ dD3FU D$Tg>b.qF )oF GU +WIe%0RĢDV/-+27/T9cJ2;f7ybtoV5JK_D*Ӈ_ #vIٽ{IPgD+=MwA)ggI?TvZE1fmYTp>wڄ1DA 38bnїĪiז‡Tb)$!ir3/6y澉bQϋR#?_Nr|981Cڹ8y6 >.<}R݃WNXjh*W?*};/w:E+Ojyy 6wW>upĂy19TwC@Q>d) [7  NGO!=4Cl2&6nu9[5tITfHYx1/c pOdjV-ɲT52CCap܃=8evS0EF1>s>Cj^nʼnzqVdK: 2Xq5r0d@ȔWo.ա˪;l_`8+Ra~v<0jgB7; Q p3êA Dn~[k3U9"ƝENsK$cPϵR`lH/skt }"=7w}xf[D5oM|Ra>%[ZXq}_k"Ҽ[b-ܸ`)֙=j1: lUG1qv+~[ (,g6ʻ)#J@AXꢄ!`ɨF Nku4Lq}!c.qQ d!QٸNJ핅̰~*wafv0> Gp' g4rj0E/_)D̳+7l[-P]_o|P"zI-u*5W n{x$,3N$O[~rh,=2JIO+Nv䊛,W盁Хڋvep7! { e Z8f\+aEt ?6K-75l&r{&Le=v͖($%υA0&9~UNdD5Tx h$7ҳAڪ.Dd~_.ƷT IIHρg.ڢ1k!\oG?lov`i|aIvWCgl=Bf FR6Ң;s?-N[ɖ=b"|q՟2h2Za@^- WUEQc;\Rd_F݃͘r R9[lI] *0O4G&.'#- KZ%>LۿOBYp0[@:+@Y~ksu84eO~ҭHCZUq'M=yHKgf2D|`螳D qn_JIb3 SrG4Wyv<6 hIU"4}Z/m]G< =2`J.B '{ǨPvwid#-^i"6/;7c'38 M3%3cAWYҳ[7F}2ߩD SEMb)x!0-F}CV[yM[Sb BTlGEd*: (H"D U_RM 6$ L4ND:|^3_ >bafq3܄xJ>u Yfb!h8ɦiL0mԔ#D<&-ΰgͼ&OCF$; 赯a^Tp"n{,Δx>B2̮!L6.!AkePe \m\hOEy G87w?EX K,Q*ll3N϶ # qA ;8YN)3+21*v]WAan܏j*ȸ򚼷cnp +D Eba՟`xFG!X;-}G?N7ͳڣh݊N-WHf(b@>{WfԮqT+dȥ*] i!G@kr Oh63|ӭLtb< *9o[Eyrw <>ly;%wRb*fZ!i38.A&f Q7u@>p;TE\isxEٜU[53jKWOd,Ai X4-9xk5#?MH_o*!~82tf|hB-r{aӊ`Yq-= fl<ҶLՔ "I&>KN<`g" @Yz^cG,}zLoKzkKJS\i3Xё,rmeZ7s \)(BTjMh{D|nrQB]L>7 eO/ DNuͦgUHwj {˧*I(he~ub`oSބXW*N  7rIF;Ja QveF*Ft>A gc"[ arUTJl% 26oD厨9|(KlĖb; MɒbPS'mMW~Qz!^:T!I! ՆfQ{16.ʼ # -^ eZXX*kVlҳmO«"9Iq<5.Nl'#OcM_Eю.Id0C%PC8͎$NZV/ cyB/iM!ta=?Ř|=dp,^xl7_r8$:p 1/ț ]<#j. S@{bRBG<ϦnȐݔ}؃GҞNu=] Zzv5Q)X$"J{ǕUyg<㕩TTx+S;i/xw'e?U`KMSa`Mnh'q)/:P @,m5k47Qֺk] E'*ѲQh^aE^`ZUaZK c^#g_Ŧ$m1[U# < 2v .DoC9K { ku|9Z'}QL!Z6 tJ!(UcPe/lH<%_ ǖ)ml&$=A_ $<>l7:(M2kJO QLZĽʰ}o y!>"l';gSR")9̭GSL{ae{Sj! |KC$s7w[$HjRuT_x= <޴Bŏ19a"(%y?TW$ * Th8fms2;(wX{-;Y&,J?o)aMPJ"+/u, I<{jN5_I>:uT5ɋK4>J(at|2)1Y`QiVbM&)Cհ@XU;+|oA3ԘG߁Mrdn+.ftK޴K v|^usU*x\( d*p6\m;eWm_C% rąN)2v-/[[Yx(gbs~d ] oqJ TG en )dzR;>7!S(qǨϬy;OABG@S3K!ŝGa* zN]|75WGN=ߙO'^ECwW|EptM4=Czb.pKNS{.e/x;RcvyP_$2JB_Zofgi\6O2%>DL3wz /)t.sQo! [~$fިzʉX+je01ݻdIDKOjB{ /ed /OXP0 V?oW$Ҕ,6+EGDi ,7 Vex[ Q2QD UjIJXyXhT3`'63d3(|e0_xgf8#R!<5GQ{$ݧo{w*p+ZiI b֋/bhl% icߗـ&#+<˙aW'6"U{Hl {YzEJ'DYNa*<3@rү$~ `/VTw]q-m 6b1| :i2Gfp!'|+F)j#lb6"2eD33vy\1h8o8ٍKX ($L!_2xx6_ gmWrDL#LJÄ4>g๴6(5Ln Yۋ|&R~(猆:$a -m`Wy5s`Gl⦛GJGzI g&6 VG8٦t S"+ƪ¯k_ Ăk1 i睐ꅦQG"ϪKbhzDH\$O;1k `~cEweZւ19b,meNJPs~lP蜄(4[@(~Zgf*"A->E.d{;16&{O "z)qJQ d,@`;͏wϡ>Smz#O j_JĎ ]n!Z&NzԮk: \Z_؃r6|J2q] jtGqB 7'WM|.*qܵvWJݥlÉDhDN] o0Ams?^kgr{n;i ̽0R(:Nʌ. &RD{S}3?&νEExZ~Sѽg>V gibP[[$3Qцa!15{ "Qu~/=&8LОt$u~ՉӠI D).dEO(zBl%#Ո|w˷#4BQ3{}/,apƨDH*oDP^}ZE\ r uo%f*MJlSpٽ3#v'$a`Q2D}W\ٹvՋ#BaF[ /΄/?H(tژ'QSWC&ךvibo6{)&7ON^wf Us"Gb _E~zW܄eв_>'ҢKx,cYc͡՜*?c@)' Dj'6 ƅi=!_Osc#P6/UJ&9hvdFz{T;g;uޖCc6ͬS;oUZ+k$ cSS1z3v XOZ dуrX ~..Z@97Ḭ'ݴ\F{_|uFճpB҈29#]$g*dϔ|8R 2)-I5=x%\Xt4)w~9'!VuǘalNb:moWz!fzplM!PDl]ʠQwКGj||g:+8tt/ şpA)΅`k4*4T$}lq6B :<7&lpa6Xa &}|eSw[#N_K v<~$.ni)3'׼<8 8.WhlS]̆6y6@夶?ύyn/9%ҔceV[:(] |+z)4N;ho)c5Qq㋚=t ʴb2V8 3 6H 1'<.-huojQ蔱u NK/Xo4|n r:*\pʟFž&9] nq ܹJީNR,?jQdh$"A$~7Xɉ B(sWQv߽Sv >K6v=oY6:g;qmHOXEe튿>@<|y솑EҕpG_EYqD&7-mnW7 zPbq{t ?m7W COqme F낋An=oB!7 Sb~!*>Y #￞+M>pxFj0}e @T;d Bu^ @(#:yHLe|p}L{R^)'uO8}>lc; N=VAꨯS=HĆx/ lcgF&٢OJi]WV]Vp52FUs}NicB-AiŀsP"1xIQ%r*J&,T2 #%}&*9jׇ |ϙ2=_2tz: *;2>w8[`v^R }"޸< ȱM鋇"X1d}0 tE6yyv)r1X289,{-|k%Y~j T_V1b#\{1)\=\^B{WwpNճ̋ #Y϶*%9ymxTqΟMan4\A磋D~q(~R(oz\ Μ+}(SsF3ؼYZW8aZ[4D e)ٍ{,gOBZ'ZRA1,'7d?LEʖUBua5FC9.㥵Ol6wTF&{?qO)Y YhCBjr((ʚҜjgfY}! wU~5+qf;cAe 5;% radAt2Z* n|O-o P3$ˎ|?$$sHnsH9`A>i)uTf~@+rȺWؓ6ݮ[br`KB;uϥȾAPoL?Y-.~4Ye:'g--~Q`DVy = )MhlG:B>FPu[vnͩqh8nk@zkPaǔ9/ܙ:n==%K IB[] mHg 9!&jy\g+{f [Q׃ *UbOdO"4Z7_{LŻ 2Ϻ.Ht3veW$@f c ^:Zp yH6 Q$h(y_By}FM6RzAʂ&-:n=,F)t^*>+~!>0fuQV.É'evױ4ZJ4ˉ2VN?\jXJ{[ L)>Oa? SWz[88*QIjerU=Ss07 _i2|ɵR-QŞ?7"y >oPP22ڶl`5g&T-AH %m=XF62ql_}&GqΎ"‚'׷4bxw(?zMƭƁϖU,OJ;wS'WA[ΈA*YÁKױ#Кaa͆u$^4- ˠLda_`/”q鱒jU>' q)PmPhX 뺽ӘYJ'aiyvX`,.\^ 4`84ܔmeW͖xYySgnhx=ax^~ ?v9Q5!nN ^^Q>t+]6+c^. MoZfe6!D| kOйYJRdP7NS?~p0o>A_vc6iE0">gɓscAKWZUMj+tji.Њx/JE3jXӊw|n [*BmS]VK/*]kڨO{\!qڕ`J6Pa\ԗI+r.E>0d*?Jx#F4ED9 qp~qۭ!mő-+ΖT(TOztMJ7 <Ħ o y*SDNsE8)vEz2#p,d.cj溓B m(ϰ˳6L2SE2l[@"vVm8;Nh=LL!̈M !WJZZᴬt]5tB1pZ.l5(ļxE;LD?z`lԤ{g߀4CݞUU^N:}y*4)|9Р mC'rzrڭ5LU_ЂbC7n1$ISVNw.}BV4,c$}7◥dj):<+[`J\؅˪_4;G"3sx G!wi+V#?*#c^!fZf7?GCg Hqi>Q}\K㺊1Phjtoo}0OܺSƱʊɋ Z𞆀=؆XWAYՎo"3O[oKd`?ۗÉsi(fU2^Xg\fY?G%:@AjK-t^$Mϵﶴxb3 Ldy'n$* MI(q~Ǣ& =r͠SRu: F[Q^\1vWK<Դ4-_`vʫ >g{e'9QyŒ# @Xh#9KIrԕC2!\_32u> ;nMݜr.|I 83! 7O.Hbs߳?݇Mjݍ9n'MR`?ynA-20턈3FƶٴA` L;nfVCg Z)_jX} bmC1I5& c&ciPRTY@o|:{Z AnfY_k[WNAOףU[0Y @\ a[1[r#(8@agg-DIyАR[]dQwMzb[Sso+ 1c"1TEUoCq=LkE6Y2_Cè 7^R,Y: @liDՀ)6),AƢ{`"yE}J+hIWFp=6[qCeMGzuFj٦߫~xTywR#WwzֵnL>/;Yo ubsӪOdpf-HN d'D+KS)LE̺1EǔxCYl -ؚ7}WiFBd@J.6 ;S,t?"pkT{;n9/Z-ZHD1-,MLҎj̄Yn]K`Bzt0.36\XX:`S4mD\Js>{M>%*(6r#A4)Z CmKLnc?oA"~HkJ5 J]L9/m%r̫l#C */gZ ?m>U\ qŀB;čz_¼ MSV.Ni-X!$h^xSU ^cwXSF't^ʽ+aEVCՃdyҕ(BMxCnPH$0y3,|P/lNHqhT[QA)=9Lʐifoϴ=eo{MPlu[?7v$Vmp1< e]1l ?_0^,Ų{prqDijم?Bm[!B%?p)]F͢NJe50`JpwMkv.gLd7ߛ֥$7<>ѳ^7"^4nzO .y:JBp_b{] ix8%Wp DH3!69%qz*a- CcX}^vגX\[IB1'͐qK :~!||^ɽFrKc\? F`:sL{ys5`ՈU@6|Mam(ǑK=' 0ԒÃ絃i1 ZIEN5Ck']! }l~yuAr~}B9a5ˆhpqîS}nZіȿmF`9 k8؝h>Y HPx9d1 6nO*?w^03y4 yСqe-W ^Ehi# =@1PC̽E | vo hՍ}ԫ"DU˖k&J%ehzܐa*TbY#cX?R/3o;'IL i9Q 鸻leLyBf?gX&xSJZ3nvF֫w XȝWi/RN4wF8^-:]nr2%a';ɚTCah68IoE'-ё >duTDӹ^@W7͂hX+,jݤ/?G‹7{~q ]ҋU+f䍃d2+Yö) @H*( 9>\Y 񼟡5[3RzX&ޘPGJ$C˓1MT p>/'AÉW5m)\j;:e l WM~T1*;պۆi!ǿv4:yp)OZ;rN@#p=BR^,};M."oZXz+::\a!=jwmI})8Ot)S'7sp_׻V+he0- G3!z *c\b 5\8>_p/ϯ` ?%s"OIiZ$H- rF6uDNk|Rק]K %m:^ɐ}yu.k1i4ن^cؽ9_UJx:d4?#F`ݕ[k{!a,{3Q5ȧ@:x%nhb1p&"{`Wx"i]4Ɛw&OE0UߖBR@l\j 1{g2U-"iji263u$9%[!)2d[Z!<AIVQ: HĠTPR|=c]iKDko1=|=+M8uJ# P4DW;ߣ+)Ԡzz E\ FEǕtB3h9d.ruLᇑd3Lae˪v݋siЄe+oh7C=\L?otS .O_A@$zo{l}ڝ^&m:V mBP`_׳zs)>p_7v [5B H}|Z=!o]y+Z}Jܿ۔[EGrvl7 ަ]!'O.}S^zv!_}ܐzbNL875R{{0[] !v៏L0X3 5&jsgv9c6H` 8*fÖut9A3_y ^KZ-mLo`xLd[Zb(n]HtHR[ӄE'wzK}NK_o?e+H$u,BFhFd|(0EX Dh3M-1@\i ;è0 *()tm@åj ɌIڷwq7gjv8PBց5h<>_̯ioe-lC h{+dƑ. 2B|;guEzDBlm ^ s/A2B@N]Wj qׁۈ< EAyM OZ8)J 4t!AUdyq Bb;ɧ/c_,pջnF7SL#,nko0+Y]ӿa՝^>3N_ikiFNogV5ehhu/Q{fdN޸`~[G+o$,6?pX?( ~ u$:,O_"ޛ3FH&D7%%pcfW҄X?$;jWݰx'Z9I'<$i <*}ͩ PI~X1*`6[!~FJ\M%F&&r0Cl2% Mq9e(V0hUޟ@-q^X^wKRpľ;(WPGvH-A\Rk2J(z(󤼂]*i=0T4)clxZ֪D[wqL9K#\*F׷$>(Q!Nc,0H0-Pܧ5hR\R{p#Ra$G ?Kǣ,bc@p祃x#}KjA-k5W0 + '=DY1i\w>NF̆3عNo.\2n6+y!u.n//L!aۆu *vJ\,tIY9h6 cu$QZ_c/S^z0'y艚Ayx,x2V)_TJz4YD:ql*R.LX XĉSӪb8#kd}|]\%~ #&Ņ _J$MznQpH5u &5!+bM Cu gLY|"}NKzD7?Iu i ؟k6s5l$^ pOB*oA1 =7<[E٩jcuhu!Xd?{n Eb)?`PToJ!t(Pί<Ùu*M]2L;CՈ7W?& )m+@xކr=ک-t~:E wuNv?(\[4 c3L!ݼԒZn DUT~Y~к8.' ҏ B "2~e<ՌWhlsB.W {";_|o,/s)#+wҳܳrOXІXİF%oZc ; ʸ M-Xşu2 1ws(jaR#9R%KGHM#W}'S8=$*llYV@y k&#au&~PH{:kA"l,/BJN&Ֆ_=rebysEuٟ XʅOLPրRݡpq DDE5KL@$LhL80G O:}u&dL'8q.tGNo\sPrJ: eU!uWsl_fիYN~${9`u3PW{+H 1 ޲؆ R y+O,rƃ{ fp0E]N9dѯVDBwL).fMrERu?3r];MB ' %yA wqjonÖ4M%m J\;_ը8=Cɰ,|cD"'D 6G '.[mpopK T旘 ^7g3&>5(MYf05 U_B_욾ѭE 6) cn"}[|0 ( `\aM Pπ23'Y[Bo]i4MTK $|K`$"mQf5;b0'yCZ7Xs=I -nff5TtBۙĿaWf\הwy'p#F2=!B{;kF >YUؠ$)ۧOJ  I3UmPݿ:?I4lĒ@5NlL-zwje@" YyZLjX@ jSj0sڲlK({$e>t^щ)70/NSJ pth7VW1kQ{@{!m7m&)Z}Xl9宕+iC˙{BZٍ WC!AgX MF4 >?E'xڊ}4%_OKz>! Xĺh[tK>zئU?dG1u6K7(=6>zg?^n&pv%ci׀aUX7f<Rm5Lo%rNj؝!Y*E4"N-A0ǜ259cq%@"wnE[Zontw V=I,eh.k+ fP'[!>5pHOPn5'jrިzbVX{:!vVo-oKyA9xp#KZoi3z9.cg0.d)ڶ;&LljyIpQGSXHdQ//EL`"eX?3 o=Xzm6ile||t}Ë Rg\g>4ae$ޑ9-x&qE /ŗ0NfMZ€ea 9%I9 o$>_z@i^Fk?½ss|$/O?YzJ .0`YI⊷ )#Dq.ꤿT#<&FV3r]JBwa & #@adAB٢@-N}-OFpf(VIArxA0 xxW_[͆I\TPlzSi'Sl‘,u Ǔh'#Kv€og}$7_xke"0U81v,U1mީ'-~}/{ŕ̠dӦڞLcnIT[f>X!>)'ISd`E 98]sƬ&r$.#Sg 7Ә=kcMKyШn㎗nIuZIw,Ȑ8 uossujdF@g7ieI_{UT(jX.vjRE7`?`<δuDѿߖwD<,"я6 4j7І\D%@݄~m DJD~B5W%J$ *0O=hly7+ ŃDk e4U̼GG뙿7!F5;-p(Gpv1ed+C]ӣR|VXudVqpX4+%24,1XwR9AHo漯n=|zĢ(IGeK<0ص6ѰhnJLZTEL}nim"\ӹ 7=%2r:5uT@B> q.U PM-Sċxl8}pm?<9WӀY #pCVx֧c;Ѐ:htdeuDŽԣDid;va-ʩ 5\ʇfmQ!Olx신h 'sa$Ue/Gjm*sz$nl2*ɺl?!5 DF?b[c Moԫ0L' Lڹ kV46'-ZPP[a\@`j*d#Q:w:Ey**q7(RqGc Z._WͣϢy*҂'UBXe5U<^V>Q2Ƒ_֣3$ɓ,ð;T-1GVHmZ2cq/NfxLFm)Š5V) doK :({dQ}"}|5%K;A 4bC+K@l.R~cs9~m0]W{uzfc^d_% ҍYTPxmTܬ/pmKy_@ eބM}mSOz% X! UUjsv=B - X Ii"dI1h1]O!RaUxVyf]dfKӷ }RO[K6iM ë1W6T`8/Dt)L6Z^I."DլEFi((.]&ۙ{SV6U(?KU±)34M'P# AAKƓzJt.WAΆ/~TXwWYl}1c F,X܉^JÕP1'l `{/O5471y;xezz ?Kp\.uZW%^ڤU&5w$jrsNÂ) F>^ay0Y+1t!eQJݡV "2dVz<7}com zI%ӂ0”kMÖ1*Kwϸ0Y]3Uө@j 9wPgI`Mlzؔ3 ;pPv'Q׭[#~쟊s ?*V!VtIvpJK :h Ȇ8ܯ,ceL'_p5,e0 hȋbZy, HiJvm^MĞči'n} ܑvǁ[Anb$BR@N=6^//:@L/MZ,`1l!ټb 5N1,tb _h'jJ[c\duY6xqݒC~{"_C ;`nkS7,72[qȃ[RTyp6C}?wqA6懪3h߂׺Pzc ґR% 7R i"ú OUPB~u`0.0BpSkVMCM~ea`1pT[lF`;Q {:~,~Ktn"U {\hʡ$QC]4J8N*M?]Tq̢2e)>-qh%I64fD*i/Ԋ^\RZlUE wz|O0|heX|(D[+wy$2:*]#g7yJ#AGTEeAB?$%i`im;ӸW$~{:8Q41/ZDx,QC|6s ?tmǎ\}^rZ;|0V[j<ʨ $N \]=0DEmPRЯJJIf!4GL+ۅ{X;3䫫o!-f݉m% "Rʄ:{DvVNΙ(n))-UY۟ESXg^(*&Ɠ.dIO]m~0]b*x9Q$"!W\13x%6zWb͋=. %$ҳjK"1U008T t}f̤|X㇪jYԷ1"yP=?Aẕ'ܠU1ǠsA**e.^5iۺ9B%>኶X gSL!<&`&_v.0JLxmaKSnBr+|KaVmj0'#B-w$5,>"ٜUm%z#Kjyv4"ILD1uEzӕ7fmJ 2,rg(n_ϕMԧz վΈ TMW7/ ( 0gz2΋NePgūYyL6ryp_8OZUu)6 UTe t1*KN^IDك) ds"G=M/TV = p6v@A7jK;!)re:lݳ+'z&ۅ!m0ze.Tf`CSo덒dVmthzVO $jpڒ/:feKnAdh<*ń cDV9*2T=3qf;!__oǩ;}n"(J,;w:34J/PQd4? )0XRR5\sKaK@S6! *xSQjiC/5 gϦ#v$ :9.%/:& A ɚukrw#z;Az|@3Dլnہ;edKޘڄvL_!ptAKKUіJ?ŽBI^"^I%3f7^ /J!4\[˶4+HepetR']NB [\lȑҝ.ԳUHtNj*۟!=[yg~}4%{?U@SLs~?d{>x(%?z%wVCqҪ59Z 1Ʃ唹PL)$.f.7Y:DĀTE|ΑK)py;"@k0qBp=07GzIT 5!sÕy^ .$kKxLU'/h%/VDQ7rڟkd/ƌ1 =$h%Ѩ]ig8sX_)ƈi )YC&}[Y'JkߤׁNVZ %pF{޺0cO) (.q?HEPb ?17F/Hkba1%fӾ|law4! t)Alj4"N%gW;n3-_HlX>.J sE3Fj[x _yYvHU6iY5L2S=P޵d9t9&'I6v/n@eݯ&$ܪpʨ cf buN 7C~18:q vJcÌ?=+W* LBe4o0w\f:5kKh1>-ܢB\[#祗1+DЇ"ZpN]qLzg-^Hr1/`$_+2>tu sX)q>jIH}:|fPu[eΧcgW ɾ]0fc疊cذA譕Ot DV)Uc0)zمm,۟>>s/J|@lf_jpC3g.{~^VP0Zn Qk&L9RYϿJs }ٗn^'.k!vĥu sm|-;SN<8Z< /tPL8Ų,Ǎ)|B$8H-jMpQKR 7S\esKM0#%gzg>Prʑlěr &cShM/L<< &<[Q-#,4 n&q1qIxZX+HZwu-,~"nzȘ*r_2}Ns+/UQVS<{Lʢ~񿉻R$cf QxM''uҧZR#&[G.CN"$: -n}y;hoduҼZ_C2k㣛!U i:ˇnA$s/ʚjNUjG%'oo' 6'W+CMk DK rr(H;ڲHvF)ԷL}'|||UE%8^va56`Bz7,k w^C,QOT JT=\ӆ!$fY2Z _m`srֶt1M) ?iޑY,{\]i_" [q$,xd*wwi[xGK28":w>M-b桿q0y/hJwrxN^}!O'G.,?OKj$ŅS->emy9 sl&=rCU=I\ nM`Oɢr¬,)($z' 4}1EZ2یa ޟ%pUy4#$Y|xu&?`2?ƴ5!tMv?kaٽ4(w's+\:FLmyP(!Aa^"`#_ Py!=`vTIӄ_E %}TMri^+E93rXgj gcfn%N!>DBb3\Hy #U UvY @Jusʫly V<6uO#?g#qo%D} K[{j+.bzZcxEl_M (x13 @fyNX_R=kM^v钡DP;u/ tuE'^Aa^G*jtkndA{P o¤RgjB;!aZ6cW Bum0WZ; d2~O-^LԾ:Z+ _[b}Jql[ d5RsɑTvXOɬ @ e5nʆo/4Y91 ?zSQ/w7qFR !/#xʢӿ:\}F Eg`TWdz}IsŔ$#B7w^, }H[z/뗽>O2f62RztqcSb#x$73æ/STjBm00)B\PmgOCTv=!솄1%r#EF"c.iY6e]\X,<3Wd(b|]l4Pgb|%yJ]4鋙yWF~Ph/U1 w1CG?JZ-S\1:b_[0ڃ/(m. 7"&CW" '+t*5*Kk']m4A˶InS~;lCsW{>.7grL<հL?Űzo  Xt ]`1oaBt:hXTGO1cLl`3r'>)MN t578>Rwƨ$7t5!La3N5LD!Onem:2oJ1'j#*>~V `<%6> I宵Čx8mf )(31^M0I }3h4sQR^m^c3")~g6w ^DW٬@D{:l=&ȴìݜ5!bbHee2€ olNy( <۴HUh>wD]iE@ M x-S/}tˣ:gz3 +4xG U(կ|DJyBY ҐA PtжfyqR6740r#k=dԙ3Y/w41^7Q%В&ޗ8^:ao 4 c Hؘ K&9 \JzFVi ^zl˳b+]~5 v$OuB{w&D.q|2kYT <5p\} FVpC$@ۏwOPLR/b\K:dzLq6.8KB@)jd+aD*T|Gt3šK8kNQ=}极 &Lv 噤w1AVݎQf+"4+ۛ]A!SSB|0o󠒙u9/y[&6d4YH5ʹon]z(0 )8kghs)@8[W罖'zEj!mB7*aMYr\dS!; 9dNũCscNs1b4ϐ  2>gF|RM0& BV}v3O\.y*9-OxN +:^Uap΢P+J.Bx&m>&^^QYk;~2t^0*k͊y#P X=:\fi`蟇]9ݘɦI@5aW]}=lyj1[ ^| LzWIc#}7^ŷ$X_0-lh@-ϕTk'yѫVhJUԌ?H5(:Y)6d} B.b *^M6u7g'SߚzZ(*#M!}S vWz$_֗įOzӓeʇDu A[MTkYMLZA^hwe2Y>N Cՠ(uN^rA#2 N&}w9|?t]0㈑{$CRJ6/G[ZINpw tMseA@iٝ, ڪ02>xJkT{00X$k,+B"[F: {\).j-?2ZJ2%UA%@"K^z}N# ?tj<O4ǘyΠ"ԫoH -n=G-0hyqX?>Ӆ2h-fڻ ZZs$5Z%X4IĢҜ{7}*]Ԫ`Ds Zi=aQza 'dzu;h 6/Y@ʗˠԂ&S:8^5&!a1vB riA,1 kjL'OmO]Z{2%Q.\:Apl)oJ=t3"BےGR92_lY[r sRT{)@= zR Uv<)kJ>mɧ="YWcp=" ʮwq;Y͵+T6%A9qL\s.'H G9`'h!ڄ+F0~)/Y`c_]e*Ɯ~\wd%HN*R[XLj[,N-`9hvIu喏GR4EuD mts='GK%s7%#XV #(mZ^Qql"ÁlA%܊t5^_EmHY꺢ee?YCˇȚN-N'JuvݤEs>_q8PY2XT>LL MBEģҤ܍DA4JiQ'"N򑽖K.Qu#Bќîx l["~ $f*jheMc(KҹŤFY!q@ qh>LOhvs^Jyi!(8k(xsW 'uc>z caX49d8C2[gXDτqp/}n5ЬP]V=K9q<J2AlXn72NWG*"' ՜|FyHaY)8sB%ݖ LԤQHgV ln?]tSMQ pm ωsgVa}X@r ڼ/3k@6A⮮{ğWݛa"Vl,4kmhvƒ]bm:8 j`#3eb" ~`Ueg BkV_4LVLE*@qKszͳB()u2j1x4^S9_PR0ǧa`|%g7,Nҹ>/F0W[gÙF-hXR6au3li}`ҋG}Å&pjeE T)r6YG?Nl7V#E R:OXk}KW%<cjges(SjF% Tmzӭ=c{[Ev ,H`ΡŷdYeŁX,dKx@.]8@o5q:M Ztg6*T}r)2QpA"H@g)KvKګavu\)p82jc#?70٪tȼ&YtwmV~=UHM,Hr5&>l2" rI6r4h'Kz\h?jXGDJ!k/f/mN_Q+u{ G D YIyy.1pE`p9~*مK<JndTRŖ ;'^S7@˕ƹVz Vgrdn]Ȇ`K7)$N|~C[I $z=1-/oI"~vc є'V; NQDU>ӶArt) l("Rmt~{l{#js!&7&Aݎs 2 tTNvRYѽW R/6y8^݄6/@7A%Q%XJ9dnl>PGEeBgh~wEGN8k J{OX̣3Ivb qJᘬ$w#/"N(J̮W܋2bWs>l4똳߹&"8Z-byʩtXŜ\f؍ŊڝySyD b:'z T9M-!CΟ6l G`og˧I7եL٩(Kab ECthz|<&3#co&ԅe7zXfUih]cE41HdnZ37% bM݈rƉ%7NS@8܅¶F&ƆR ccH:R >e9|L4ZX@vT7y0 />_艄 93귨-y~Q>qv̌U.^ڮ0R_d ?oͅ *#UEPZpNxac]VDUY|ZOu8 /q Z)Ή4ص9ciF/;pk׽Y7 ھaq bAZ`oƸ(7fxv`<@IeH}>3vR/|<0\F>S$PHGG Cn~g{vo>{_/"Ih1ǃOL!9gCP?}>MH#THvon.xu\fk!?]wIf ]K̜ߙeG5' sJ4QU~K\Dm%*!ߕk5G?LTڀlAH$"[ePB5_2=+NSK3팴pjb`xcgK󪥜Fƅ>n_*w.ǒY~E EFʂw 4ĵ<#c+A#vƾ)X>n6OɋgxIlUfIJ)}+rlO;ƦO\Mq 1&dA_89yYmnUTrn_]{`,:nˊo;PH НSd6:uo>Sm\u.4(VMrʢ9Bg=/H$ )rǿS $⻼ gMJx?\6j/ 7I޴T0zW NE&DI0 Wc+geF?vs[-سظS{4Hx d'?.pJłǖDF=kU$C*xzdEYɋK%6r9Xp|!gx-Hq7jLԻ MVGx@ٰG.?+^R#׌i#U m,{^M_d2c[wGs~_T[xei;Q6hPAklcF%iiu88wvWËj#Cf\UءJHEn$y>:%| j0Q;z]]JK$pj~hob:Ȝ a{ob0ho2?$] G1T_$Q*x D4|AkЕ0ÍDJ n }SI慃bKo[-b% ~"%QqFtU#E`#hȦVltz\l6!<]>Xm L0\8&2O?A:^= 䛈Hk]8"F"TD5c8c݄Iz7j?Ic jG|J]4rD{ mQR6)w K|FO/XL{m 3nķ^xu"x^޶G Y/b9AD-}PqÄ́QWy5nL:z'Y .K?s03aIu[S'J[cV6*z# xAARƅsxZE–,)=i兑C[]S2Oz`QG^#ZU]mmҢJPx3W.D:@/n[,y[ Im:X 'F>~R'HP}E= dOb2Fsi4t$=$,5,cli<'`ݭfZ x`[ O,]%i( vSQIRiE` J"Gi qXV-a oDRKUR# gVdY@Q2M ŷVsشTaW*ABqxt0k kMqpǏ瞛[1GNVh> /mieaw(Xu{lh1N-Zs|;1b4HPؤl>goͿ|j+5`8,ƬyGXOึNgdϜ"-z)]uiT621"<ʙfO0e{G@ 1%.tP O?zUdj/""2ձa 8aIb@…:v;T|o^k uy150z Hk)Y'۞!B͹OxfxtM15 t~Njb L oԪ6ڦ`f~4C 0MTih2tiGXF.Jpp OuKzbHZqÐGN~`Ǫl0/u'l'&5▭lZh}ښj2:' DZ5s.~J)ՏscnֱV[.*:U#ӷGÝ{JAaI=ȏ ŧ}߫!dO^%AcV BpH E19]_FF&Nh{5F.d^OF7g,eH&Ujgp 5ՎwHF'.` Z~x~ M&_ymq\ew[`a8ٞűCnFd eʕ{k#ӄ.iثerVŽ0P;nNN6;_aCT+a9Wy!)Ep.8dd" UHqMlۜRHT?@}7*V=[N}G qB Kd^"{N]6<5@ZjϘζq tӝ~UET\ Mbq}y{SÃWXW+. :+ @&D&(=[RWP{cWxuf5z#dFMSoJ_І*8RarAL(f_n,$P{DԝA0ߣS׀`jBh3" C[l~4z{|)Ώzd˸)L5d=1S X^~6Pe&3^Z\AۊQ.Bq9$%|oWӗXۻUCC</DA[48hP~)Ja0I;Γ%(į, X^;ynbcS-(lVɰ&rZ2z`:4UÊqũ/0\_ݪ~4}C"[ݫj`kwNEWٮ,vmw6 xL)N3 }ч3=},3P\ Op(Mx|EbsbLȿ43Vo/ pQ'!@ұ_1#= ]D ^g-2fϞ V Q" h᡺bdΧv,6:!YfIO&4Ƚݛ_ ?k48,1ΰH9v)mjs?9ɨbL~(#=g9KJ0XfMө !xЋ!ziRLuP)^FrӨ,k?σeq#N nVLca n}[J,nsSaȞϋExzg٧@@vg%>QX.z̯O:( ,f"UՕ8Ac2QoLn&8B,h\M^W+7OMZL8~'o%aEt_i0p 4? X-H]&q)fIr'U rU…bZ(.b{Da軆W-m~*1Г8v-Yj-سR똛`KKܓG9<aq)tIZN|F3%U=r?Kb\M.Ͼ^Q43oMQH W R5V 0U5 :YqmX3@svOH%FGSj5S @k CV5GU 9;'K8}E| f;LE],r|ܙdUJ/Cwy\0F㥌ipeJNcTX[4a9JS_oiXy7j j z;<6¾r(urtݼN!+h,QQOSP/u؛uYĝs4XПc(\[`_~@?}VsF!̒0t OyN#X3Lrns_0!̟ rQ`i% dL]ّ]]] LOBd6G2f_ = L3Y#4Yqp _%]Ǣ Mj>wߏ#$臍ipaER vE]B6l/2$=~{! eHO``(yK-yZ՝GM(5U|ST}}A?=Z8)!' CAp'5ath-o):ڏT 9PN`RռLGʐ`~O5 ncDgC$v%{"Xj_~oKHF z'aO>]ì릠G?F?0x}mH"`9mԫ֞kP+Hˇbn7aaW2d#/fOndx'ab\5"73e4{'~qSO:JFrVթ\q.g &;#7G YUB2\h-Y8Ap,vd #F2?/%+TMV2CX\1xZîVXQ00 n]$~% q}RkVƑȟp $Ha疞x:X~͒c#. '+ 8*  : B8r5?XL|U2^Ϟe)n߃?b l*ئG鋞kor"rJ'seǬ114`˄)NP7H"\UkG5yǖ=j'YjSÆ EM-RrGa߶/M>u՟J/Im35i2Cd7,5ZA{[rˌ2GL584U62\UT.m5ҨL҅ai'r嶸rT.$!nyD΂mYW-z lش1^6՚]2!d}ʊoŹLטsœt\SJ]up; s]SJĤPhE.dưc@jci'o۠v%c+& y<- \f@ >$,Wd*bf|&o;Dybb<ܝsNFsxT"iYu3n`pjPN=ěPMIrOâg 'uc=NJ¬2_Z< sU֘}{\&%c8;MHe̮y yz˪a1$ܿE1Kcot)v_xy p]8X~>y|1䜜܋VŜޏfkqnO *?C]ȉl]!qZk ~DJl3. :䃼6w;sB`bԯ[y]beAҝM&z%9S蠎$a@~JKTl`V zCrM:_ T&QQL(U1?FS*x;"Dlag?,|8DivQm&@dnܣfX$,g2p*M[D?!eK. o7) 7|'dz瀦Q4,E "_6Q37~gvQ}7[kԺ+!VA!HRv BgOJc-zĊC.<Ψ:c_-ɭukjWFن ]rwi뷨: Uj?hd6_.1֡s>Q)Ou,f`|q*W(J .V=/^_WY*ߘttoraM(|T7oSGuÖz-zr}<+?$uY^G E$y:4k:-vz/vJtܼBUD8[I)-G2C"@KMFnf `p4c4 ΂/@p`$2+G0I ~$,7sNOW[%EwHݨ희)-ciC+av{﹖ Gk$F4OzúVW=ںnJJ[8oٕՆ~@}o*&x~ |%Ye;`Seht՛suCd"uxw7Sz^ :LjULGb{g&#h04XTWŶuu8/ ꍋҙ}z^yTq1IXZ˞{*f}EkLH꽞<- tPZT29Ip37mYI -Ǖ]R&*U>uw 1[2+a^ʂV"*VaÀ}(-ݥ1d7~̸ ǥ'1U! lXigvn@LϋxzLWetXpA(3AZ'5*UH$1eZhG1ms)[$-ja8r%mOץmًwǞiR-j>e\AE\Mu߆y2nJ,B䚬xCfKLѰ`\dQ0#Ɓ92̚ $b'(#K}iU ~60bMn%G> eϙ݄lِJHdrby5Q`=98dmLCRV#sW)ofbqHnKnF=~2 v] !{ :(r'~|.cM E%w|& 3hXO \9_6(5d~۴%$r$^W'# @R xat8/S\1tXsAQ|DEԕi=jq` MͮTRȾSpV;%}JE7iBK}m<ܬzʃ\wYϨ})gVq a %xJrҡz6~!IJ'&q}Q/*dT-Rh0] 1u{žDT5/J׉fy=7Mox8_BN 4C<u_a\lJºCU3\N MBⳊ>6bNdVdGs|:W?Hct? 0ODa׺b%*dׄQ[q|СZmoZ4cz׎H$/]8Ddb"*xM UFiY.fP`+K{/&ANUlzsGrJ"@5s&a"GtL{Qvͱ Me .5Lq&u c2%d)W愞84>Osr&:O1y|%+tȻR{LA>Z,9@379TuC18Ca7jTnH݌ oa@tghKi*TyϨ6"JZCTOlCAd$4SAsG[ɞWh`)P]J<&6KΈY.8o`s$2|~6;֡|Yjɲbz{!`l#xOkH{Қ'etP?}n|soQt3 4OHb90gd[ɮxh;<>SPm?`&P\}W:+_[|0%067 `[ v_*$Y0Pr:b O c "{dsx.N@ )'{aPµH*c)Si̙u a,9?Lbjx;Ig0^}* V'$?vrohq4_fk.@~l8\/G| 7$#;UKrʒ *PC7ά%'SgQ}d 7?/yɻ"K/ \!ʹ3eA5iL?T%bJEqs+ĐK'J"&P|-(ǬS?G.|{|S@hb#Kb]i~Ȑ^6 MK5SHTXh'LQD6]xb g [i_%F|PjIc"F9 H^L38YIٹc Dãܟ/RAgW 8s۱;RˈU24b!vl/6c0 m𠅻N<|QxvY0 m$NE% rFFey ]rqzwaD<&OUa ǒ4OJyNܒܩ+VV>ZUv-+:#4\6ng܏d8m('|>TZmn! EKAwtXcv W\JC"F>N4P4Z5yV' #58-=+,rva[@GBs39z^ HrR\H~jv)Lt~ #>ew9 ҙ͉YMLQm.K߽S'2H[O8cXm) +lN})C%=)?|TۆMߒoDc+XeԵ.$& LEĚ9QKc|GOcBӅ&6~bwd~sݎE튵N P*ýVƚ*g[>oyiأ<[ivfODQ29E.zD!w1)4pȯPS| u͎o`n^6:RhͫRdV?l~ud!,۝0$!/졧vG;{zIA^R<ذ{} 8)hN_dI|6}a Mg\;aL*(UR]Cu8>g_ѓ4rEاL]f8IOr&3/k"X'X$;V4m؄g=1& 5k<9$r}sa-?'2 [6`GPz~⻟  S(ck]i.=e]*;*a؇!,u S4nKoLxiҘo{H3Sqw;e;5K5i. gE(D ^BX bHœY$xEݸݲ[4MޢO-kb)G -TӒ}żһavḿLo1_r^DjEK4mNI! ~ldݷᶜ\bazAbPY.b\ 4Mo?U`yU|[эOa6gwc׶W6 MywcEw ԴȡGm[c\cLClw8}Y~ʑgutU 1m[_ӡP"Gsz42x*^. sh<gp滿yLa^E?A6(0 6ҒG`tLKLo7֝+ /3 T5Ē^7}2^ :^ɮUifb^yDṚ؀6a !3jTyfnvT*#vs/Tǭvta~o|x![JF]7}i"jUӻ}C3uC 7&<ͽ@Dއge.7F9{u;jWMh(êQluf%jV'8\ uL5M LX G&Ś̩OhZ#yS]ֳBw!ݯ<Ԑx-!*lF{sL18b$ J1J04ܦȊKnFNhvw]= -1Wgt5dM(RGNk.R0 Z>ovՓ7l| OsrS:ĬѷɈүaufC &utwDk ;a-V~3ܛj5qA>0-p@;oa 启Sz-:|nRbEN} -NwY΅׼yqG[Yenf( Oaʼn+IyX|`m:/ih7h],})7ufJ$QG&2ƀHk9gxLjJV3 Xtw<1@)Aw(g7ȳ7VSjĿ?-.1Z9 NAlUCrŭN\gIno7K~.A]D;n>b7}9\&T^Gmԟ {H+ܾy"F\#Pm=W]n@0S:;ǡ& H ^$Q2GIKNj&{9T{nqہa2B >f,h`j,KŃ/dP,:8cZ[9X(lwHlN+'4aB>T[/GK̏~oK" XoOo_=K]Qм%%?~nL㋨ۚԵlDnIu3b곆i#b[v?XnԐ@DD³`}VFA=rg%7(ض:tWlDɸ[YSV`#D@?HwjSJby]y.1﵅FFշ'6G3d.Sw9rXy uyXaYP3ĜUV8]zgKPs[fwujYQa=uvLucŻ6`礇KUU/^5I<ۨԅE1#Ȱb+߸YP>_HWr_y`[T?y2գ&fk&muN@t>A > g/2쯱@jv\O%sMa\SZcH0]kH|cB1M2{Ia7z@o!z2Oˇ-=0i1 a]DEeAJg? u;oӸ<J]+ AI{ üJtP6mKơ}ɝE^:KzVU6K4vqqbZ߳lN"xr<bРSzmʹ5u?K[}LXr7w7@ݠv yBq.r@gK^2ݕC )/,-7\ՖU?MM8=էdʈ=pD}&YV[(,dRzuCؗ ku@2r6GTgoTBS&C#C(4O+71\rDhle1ID*$=O=Q,CJ9)!YƵmN=\]ϗ\ubO&Ũ UOi9J.O?ٱtS@ rx䆔Fh( h+UgN3}]qϷ@C(\EBfS2?f7|4ݛP<ŷzYƃ eϴ07arz- }r5k>ROQ%~?:F2Uj,QtŇntl*?V1BWxSv ]X{`+Ck.ɝ{3=,/gu54j\S9Fzd:ՅZ-~߂LW܍tWF)=)@,ك2ֳgOT7u2Iv^qGZ.CXg^ ȁ43cһ\ q\laܧ<g>;{$KKZĭBiga{eZRX+3uס1 ."C4ySDQnspQ)jMgcC hs 5jĝ$^ڴȈrlBp[ @=t?v|Z%Jז\_aǷZ>Lj~hC_7Y4zLsy+3SpNx iK>S~LA_J:V,{^꼅?m5G@i@ $!#nUEf7}Exk d>?,4ӪJab;i98m3* q=O؍ھ: \95<\$] q\o'mUQaTx]h)IRo@($3WӪI#=t" W{s,F-{nutjǺ+7) yNm)C G5247?<ͺLu BK ;|vCN!b&o7{RCU?G;?ab:XO{f\f}:Lw}A^"S0+/nCw: #JգoMvf . 0+Rw"\]/)v6M 6]{hrRL5p3-QM#yXwFsn7G6{2: m#nPnd=wA7PIoC˿v*t] n,5-(?$ UZo[B?b3c8ə*u\Tven$ |j1{HMv_j?g 7U~?^v 3f=bX{ ʝhab1L}bפJ(E9jV4 J˕?\&VbUߓ+:٧|CWZ@0Ȁs6E N )ߐ'AaRl{]K#k= $ɋ_M?T/,WrBj|tFV xP@`0(t(*y,x-{ӍCA ۯl2ikr<.}3z?./}>M-?\ m'6͓[0+riwW`nA` fC~Vxt۶wЃ#S!*& CCӒ|4&fK6FPP%n D,Kbv0P$^#JkNЊANa2鈄NG9k*nSJnrC"D۹v]z(s@3:Rx*iVonzEʎkRڟVgu;53=@TFVdtapFK maG+mr1HWq!$7yBm2K ^)gW,e !Ӯ WL,y(D!Rz;*Xr)tsem.,|pE(_'#*sasyHfR]uczI "Ik;'D*aոF2VV]٨ǿYh EѱuB%t[$7|IjtƢVt_"0κm“+'KJl~MGɻʒp+#_كq Ϩ s1=8WN&:؍e7K>\"%syq'A!5euƲ׽CZ ;dΧ-d<ն5AbD;9vw9*]vomҎlo 9,e9x$:A{}Z75L rK\/}ERf qw"mJZt<*st2&{܇o l."%[F(n\oz+Mi:km7ba+49WX]Nj,6褞Ymc*\h\GQζ֋XM)?C7/auDJ㤶&ß[wZ=GԀ{&A&TF-;繣O)Z Ki[.q#z KL5{p~# Az=`Kб$eC;*Uh{csZLV`6g>4:ʣ3<"N8 \HӰF۱팜rcj{: Pڶl[e~(son0  Y,n^$_r=8y*ĈM7^lٗdseU f:^g~'kݏUNԑEw 'l'b6^A' xtLm -gjK7Hvj8Ed)Pvv<ڎچbmhY Kʋ811NzCM D4K)Lvq0w)Fd^@2~ɡmyuQٻʇ͖_r~JzW 9G0*UˮgQj#~GD6dh! x$4K;A-2쬩Sm&3!dcHCB*܀ѹxTH1x)𝸳xv̪3mOk]fԊ$ufu.海+CYzh8o+P&)X[&G(ʽ jJ +L&w&sE^uFAj<0|&e?a"U#C!3֨à!+M rYeg\=GvHSy4q; KA`W۔#F#q9+H4ł: l/} Im$vbQȃQo@l 7xw0k+7xbw^,wjPZMb,ru X*Ǟ2 `4DtۂV؜WQP9}Fҧ_n*c y?'s|ws ߙ /y~J#}L2@hE2mPze(4r6/e8RB$a!ΙY Z2ܵ6߶c6OhQ@;J=37 @2+Ƿ6YH-7ډ<$7xw7[ږ-m*_V;}_J[Ax/ztZ?ZǚA?*ك1̑MK b$˹Fa½EYp0'|qU:)*<b؞688}x{AodMt4I T&:y:8 XAU HI*k|щ`T6DӴqC{-!8 GI_1Z[mu\]8PTA%} nS<8 >hlc'} Ҫ@b0s7y&P,XjA=vO~JfS D?(MH'Lm20"6VSJ =b5,RNK~$3'GIs)JcQS$Z yj?%pga3ГMA[H򖫌Ep=lt"`0>,n~gMpVy;FJ́2s0IMrxSA#UhpֈM{$ؒuNTf_֖ @5(^/ w58,22.%|n&*s7ND-5f2:9&UtoůːJL9,ab7 &Q8Cg HY0щI URe-2 M5dY4kiCXr@K(#!/>ǣocIT>l "z90,t-ƫϠpjUQd_i2 -Tht^ ֊{nI.9„Hl`Þ\.AoF(ӵ,֕e1ݵũë_[SϨ$ick4ZM,H2 QAϞf̨u2yC@x-gsz0]|BJC6S|3m.K֢IC)Y\AZA~t&%A3bi+ve鼿4I@gҪ+N_CQIEd},I) OŶ:֬m»3gh;D?2Rl~rGb hgNW߮:)h1R,D=?駧)1PrBn=&OӼ}*7qk]Dtd,Ҁ`KчWp!f #:۵iOk;#? a'BqTca ,*vWcU dg Eu:?rA43xjDoL]^rykwC.,gEX{*e*e7`RdTzE!n&jǰHOڵy?Լ>̙I){<1SjV)z1#r™=rh$vĉy&qLڧ cR| 5 2Fٶo ojVBWP\sj^Sd(!m:enڛo 83hP*?[H륺p,װ/Kc T=?0Y1a; eoNөV7>>fhʍ`@1x/uS+5ܟR mvs^5-=.5 d+~{6[Γ[?A/\>̖4ϣe(B%39[<=o)BSL^?-BP-" A,Z~dE EE]΃+k-t*%2>IfCYӕKؤcA*&V}嶫"Jiq, h $sR @` ԚDFx4-;vZ!d ;OB /PR[J9r*HBcVr}! P̲֜-x+w/rYJmGBv}\ңf7xnb$y1p-} "4֗I`K#J#KVWkcpb-2k6DUjs5oA+$:3'h%r9Hq)?'Vgw*IhPNۦa󍿣8eY"Tv̐ т?lQUE:6g:-NKY0c{80/"߻>6 `Rŵ{rxDRrK.Up!ю?7\%rf'C9HEM\L(w1}x.Ò^O/mt>7b_iO珆ƚ~Bt#~xE>$Sq:*A[kI|jEӱzuc]7$ZD U$7vr:aǙon#{71pԅE,Y%i [=*L?Bu`״A RɂL3MxDg8Ie"OXxPS8pvKIbNH%9Ąݬ!'?t EIb* dgѝǩP#džl2e/+ K J *2P)Q 1¨n2 "aW*1wvQ <xōmYxL}@ XEI95n2 df4j6}Ip!'E2%mz-&Ejv8z+׻?)?[YnWlo1)C:ߌPm.77ɂBP IGJT6 kK&nOwz rYxg5pqݝ9f.c˺ω񠏏ș }NP+d :@s?v+JeCŭ֟) U$.tşܲ@퇧PqzAbj(R\lBGȍd I.|5 yT0+ NO\l%,GZҁf\e䚸S 7pL֚% QA\aCIsd^y0wῄQ5*CӇjua pi3φ*@e䢬_ƞ _sG2ܜEX=* kalt]b1;wQg6aIʿ*>;]ԍFbHzw2t{o?4_f-t#Pxlg BLyq> ^RN!U#G$tNPĂR(#aZdnkV EXkQN,x 1[D߂A $3R`nR_jaIj8 nkzؿt-p}j#+bTu]C\W 9V&2xI cl#v]m^w5!&}E|/Օ.pʅ#1`rh 1ul\N(~B)7]l(gpȒnWSڎb@V7 \ 1j{=K Y_!xܕ:)0^5x@!9S*T g 5ޕKU}).x{^i -z89*??(ґԉF kժ(u|&To6 ?]RMa~K6Y2^ut5_p3}d6ch) ~VƢ5x[h-:h}8&?34JZCjKpYvp1aNp)[?[q" *p&@'JͻC1`X}k5~be-|r؁>wp0.!@g!S{b˨ǖqAd$W6j--^%nMyIګyBP&PQȽ 'mP5tjWxJڽ>9yWY(R4.?]zq1l<;{wPmQB6s)pxI\1 g(9 jaDDMNQʘ<_=F !2%ۋ[ %l#U ] `+ǣI\)\uۃB;E=N-tM r<(~WHtֲX<:G߸U %?vS:0X-YiD-#5"XZ- ;RB\3IIDIt04h&UY6^Qjv#Wd{q :,+

    A~ڈÊ@~Z\17pZzbkpP̜m-*̶YϿi~4ƪU”H!= @=̠A6gw}mæV%-bKxBg41s57~ 1&WNr{zco,/e7 :[׫4@sջt(mظǓ#bUSL ؟855jﴆ]L?]w~/Sk_?UJ9#(Lws=A`t]F<G~ݥuؕ%¬}xo%D./ax!ؗlɃPOhU) è_fjw,r[wޜ{?Q(XxSMٵ]SKÑ̕Q#J#v\C4HsFF|X=˛3_×vq'N'gEAZ1hojOLpư8D8)>TGחBFnd[|. "߾FJ&_RI\g9ei$mMP?/<5O=~J*[Aח"mҼ&ѵo(+YSF{9SdHjY7vT,nP/b95F4^k! oI磨۵QYQ/"|%X7+N(a*FV;#}kCFf-@VY9C+jNZy Ky{?2˄pVQK8c P:ժ Y69*JI>*/""Y>VjǘgBBSgv&, )wr9Hc>NIwe65w9Rֆ[uLU|YKL@/ ]ĄZ*F}8t7Lx 6~cC)BPWEu(18`${?uv>.3F`S|Q]n\S~ k_J:k"Uh|d5dBTCl_"^s:eM˸A :0k2Q;7>׿0^S rg[O{FL^2[q0-<#i§wj7ۮIXϳl@r3`?߮'P_tP94$)}i#TZIQnŨB6m!m"z+esOK;~ ](n'}oͿCђ@ἠʀךp4V&>sGQ {sr 0XaUx+ya4,MdF|aۼמH>cC̓>)#cʋ=8װZk/9!}iBrAt ¤n1Ѽ'c@?>BXM>CŘ㎕qMg7 W#"OVd!SRh,)0LFy))#@C6tU rMd p6)^'?=}W~>@g$bLlУ ›s7iHtÄGG4-pPbK: ;CE템VMSbƗwC5%L')擄h#: r>H>=a; s/1dZllk0 6دr=j{pdӼ*.)cgAqҸ ]]u(PZ87Ɣfuu:dFHl-dV7y܀ţU&ELViD&Wtu݊[̂+(r=&UoOOË7Uލ?;QW5qIN>ӿ_"Z/GU!SII m%P QMzd)38w')G}'v5/hr_SA_݀'xh?e HʌiRNVW/?Eih!ULWWّi^m9R[oNQ/SqO@:T(W{)19vz@XԇFKPT*5ɛFCH* o rb'.%h  z {2-z='/ҳ}CI&Q*h"R6LQ~jO\$YD%?lǽ`y 2*d}l1gօ O qI@M:zOdWx=B6*ASCJ pQ;$* ,ݫeo(ܨ yY2PJP LY ?Zޘc2ʩ,J7^@.,:;;fy< 7FI+.MBRx\5UvGʼn+iuPJjKGl1ŋ/dmW5Yf~,rLnĠ:tM5g`Ъ`XʏORV_|SgD2du+ oOMbj^x*?kj2eA4P&*۳ߜfM,HT2 {(!%C9ATl,5BIA:6CXyM` /# G.\2v UҰH:ft})1eHO'EQSؠuݗKD'ܒ_GVvg:6x_c/_.pr8$6u5GzRԎ/hEO|1/%&ʧH ZxC(+0T!%كjiEqweVGfSTx(1+Qn$7`g[s$ceٟys$4jHsN.Gw\I G?3.)+.,NW%%,?d̄@5`S})i#>:{:Z2}N3 p3(H:>Pjod{jWhzr5Cm$&SnϝZt1*FmDRG&dL_OxӔh6q(0i)LΠjߒTrZT- Y޷ҷÑK+.0S}j|~ b} + wP7>gCr*ՅSE[LGmdQ[&qſ iN[oK/ThJ\HFG>X@^l,RHkӈ{DN)$ٝxR@zvvY(mnNY6ﵚaCjw5D'y +Ja)nL6@Qimeg!{b?Gg+3h)||)HCTV?3>xLX9}YiPwD|+rTV TMůp<{5pDcVMJBTZ_Eu:0-Э:#3b -7]Д>ߑXꌞ;h*nU.6A2t ٹ97~B+91Jѫ p}ON1 Y;~Lѡiw'$cg!q aoOAj%u5PĔyM{!խQjdz}S:)7%ȨР^ŘKVL$Y[ R:{0GlI~z ͹YjG g+&|'(Xz2s+VU+3//FyBѡu'L:}$rŕ'1V`aT婯L)(==?c,sw[L!CVchMX^G`~HB9qaᩱҐT@9`cWutj8EdiـY/0,6/yЕݿJGJKcn>Oa>>Ϻϝ[5֜G&F#lgzby H^_~שE;%Zz0eapͱ!f\ [9NHo7*NOynLhJUN9DF%m6dqfM lۉh>eKRjH)RfiKo=Ob 7~ya".(>8-gQϺ4rؾK|@$՟8wG˟#]{Q˨t~SE /Q1$@̓}ՒeYvhu%xCܱK>9*EPbde\)E"1AG&F802&Ojo kyx'}Ewwv,~`qFH>)74VI98Hnu/5k6-Q;`҉^>(l-r1mB'asIJDzҌ]2G}> zF8 wy庙&նK)8]CI*7=z8 흓hz޲ JkAq& _+;0W,{vn@Ϳ%2ĝc>u~?'UXL7 #ASwNcڢ) wBf̐6jR ! ENeQ[Ȥ03t^)!wYύʄ182{ʿ)^}-⣼E 1~[BB0Q}Tb )*+n8HRIK{< "e\:YtNƚu #}oH,ಬgN?0}F+8gb}V ik06W5Ky)9wT?i0](s3Y 9|@Kxp*+J^ EMxYp sxb|$)xۨn>ܩ1d&f2y^ ۪yn5Bx/[S# M'MSOT @>my@`$eQ{%H1)Za.cѼ{Jfl89nԴraD wRdm3|?V>v{>ut/cḇ.RvB9񈛔dG#(rߋY( /I\m@_XKDg Y1F\аmb?;c>j?΀Tҟ zS \9fVG|j #z,J0GӸ88@he`sf$ihuf0tjE@/lq;Jޔ.ؐlg!Pfo'B I1<4躂rwR[C%xt)Tn,p8~߭}n lY$HzteTTB-XM5X ; k63ce0+lm3${bTIt ++wl+Lױ1SI`мMJ4\5ѪdI/Elì><ƤՐ\1zU}rH܂\xk !U3jqQ\B¦@{fRAy@ww>t \D6VLl BA8lPhG鋘Fcu:j^|r`bk^5 nӪOb@Cqϝ4{')U|~&E] /ss!.[>#pk`.Af,ӈ Bl~lG0qW9vgP} .5  +d)v}?5H0gI13Z֡ {k_y/"ij&_}TQ)[:*> MsWѢF8S+s }m+OVT sYsDjvy&5-j|VvWv;C0n<J0lA36_c%},լnbG;xTb8sT<`>x9!z1ͭ*So ϱWA`*1z>qIҴ/9#.bk᲏׻~\IsE?ی8.5E쀮w  _Y3t~X"Eʨ:lL͚`Jq H^Nv5!^9d$7kkT[ؚ3 ϶vҽ1f @]i䘴>f4䨪E I*,0juOd3**d2aHuO\ [b{huIۖjs8Nރ ~m0άZDo.%Fd}n;˞NI5lBlY6__ Ip@ӪőBO~vȠ[~AUyT7NN d Kt rJl ݜ+K\a*k).4bzS~/It8pY}רͤީR`@K{([a99_Iamξ0yv*8,K0B|gȆzJ3AAv[8Zܳ"V*li \*g`[x5x"v#6/WQG :`$Ժ?\t Vg#3auvɣ)B̔cI6'ZY\1VPNi`9<5 GzvDFSw²ۺ0%(Afv.!E.5!Ӛo0;G6E=:p0Bo(eZLlŁ~#!A6{W:89DPY#yXgE>ӓsR?N\Zv5K__eu2sa=xJ@]xMzMhN#YyobC<"+ۡ12}?׼2/Ω0/?.fL$rVHf=tfv,c7ۖmB-Ug;}"Y 5 {#J E\RSٱ vjvA)Hk\ 5oޛzLOX<5DdBp{Mч,1/p$i5m w=٘z Xׁ,Cjٲ 6.kelO l.$l3 8kCҏ7]ZHP׎&'*dMG{w!̯i9s qRˤ߰ a,ΘƕRgTPH(X˞\zcaݴ[]uk4v)11ӈTBJoíWRTn_|, ٦5EDRsQdTۯ8o. ts :C pYO ݏEGh^9nz?}:˟s!\ϫᒎ1,eF?|*ŀ~ԉ/QoTdK&*g:Bj85K3)]a^Zy9A&Q~r$&YO8%>=iM iIf#;ٸO.ܒo*dl!oP[h.mlmlZs#wHCy9 lL=+}yϑNa蔀OSȬO ~ ƣJD:#v]6ߊ벴{KusQkdxt۴@s# ΀wr3WOZźi_"5o2x迣?BE!Uso.ӡ+7 `o&b>k05.N,R;ct{-5  iwlmUXeA~̧`LuoOit+uY/>vQ\jfG. tMqa; l4x ]rGB91`(ϝ+EDqJ6|A/գ瘥hvhiOz:vٕ>\j9GJ@l6or,;uOIW( y3 Ba5#Ü@^Q .$]5!:(nυCޙmqlK v$(Yƹ|Aɭ$l4jx7NX IcY*P{7ŘCJ $a(6>{#W#5 k׽^~Ѵc- ?N\΄[H@f^Syd(ʵ@`JlG{xf`P^caPEr>]U\k{7ud^tkeVl+1{Q,u4_>3.|\FqEsY \1`/s l+/g'W zx9i&͙7ˇNMr<6&wWyVi0z\CuDRarW.wA>B׋F n|5I=߸K>UiC60,.\xKѭpu]<>vx7pWS8|:vewψ[W-|YFr&a8Q[`rQ`\Yz.Tg}בn(- J'SI.ipBHkNi* b$bLg*+vIN_JPSkf9ȩͲ=$}!'kXC4NhrUH%>VLRZFA&X:l7i{38D6jKW?nXz"NNAf ƀ~MCC!C6^:(<}6 ұ)3m-`T% l-hÄ hLxT&X%^{Ael!T-a^'ESrY5=~Pj)KWD(`8ovO7/|xK(Ǿ50 \z#i8] sw5{㆙l=%ư,,|hdHTNH0ujՖMo(^tHF( Ʊq,jEQ^g*(t ̂I5@[ ]zE|LɑSSE|RچX) K)U5׼ף\j`ʹ"?8tW[ %ǂk|`, A.Ũ"nbpQE@!U~rVG cX|'[&mÀ3ts9s:8d99FO \Ir^>1i#XC -υ(y_>@Z˖U7Ew5PJimwP崼攱hɐ:!㿽][ΞgXP<>o]j!G['7݁[Rt0q1Gr2tHSț6k]y7#vufU<ĭbԾ+1T&z-^?5UKQtC y7V d0-E<17E@Q ZE.WUD#Qť=P  A}S=Wat,jhBvQ=}fEwlJ+3}]Ё^!,5}& -7^~CmBYy38 痁G[b{TڳFf;&6*~zS\n%c"XNHo ?/n@yQDg9G jRmWGcf\ve!95FK[rai4oΠRZ8O XmI^ȥw>JM yNw;zq侎n_i_7g+ⷛ2!"neCA\({j8dP+J6?(+A]v:0a44?{'Z7BD) z+!Ɠa,IٹEٴYC\WثZHr±b]W 8<~HXu 009=HW>R}fWzeVԗ1n-0dkOEȲGb_{> wRpZShTY]5ߖlp xKLigs… |S 0쎋#Ge/^oY;ֵb7`L\Mᄇ/0 i_u4(I9;a kW-uD^j뜣ѿ=hr::, [t= Xƥj+ x`ij+yNN喻7!R8rpyGӥ#=6cS&2AtnDUmn'֙VRUR&Ղ9A )KRlM& ݫu^3*982HutƑ>:yʹ{Ggz< VΕʔK:bAĒX[ fťi(W}n.e$Fxol$6N!AZ0g׬ ?%38Л)B x#rhrJL/h09QjH ɽe4]3 kiMޞZt)=S Af3C):d %:.# &0􇴄b:9cbYqþXY7w?(vi BO_Bhbg &8.ek1A,ǁaY =H+kG kjEɖS(Ox``}2M&?ǽ"ޞֿ͓d6=?1 wZ}].-O^,i `Ko]ss⾴og_D<?0} BӰrdbrn30)%vzsNȸ3tRt8+JQF_5#( B6I\iǿU$3B BKJP_G׭[^4p7jz^z qLgM='Gc'RJs#Eϗ/PKY記1GK@W~d1eb|Mk,׭1`p]PDq)@mM9`)U6ǘ1=#Ur8݇cK\ v<_vۮsC_fTd>&卭'4};mWjh)ϋf-H cPN1W.+%e R8|ٻѻEe7I&e`b[u˙H7Dt!]|Έ)R8^=]rixOul\<MS`.jXDd`9=q A9#C.N,'`N{8ZmJ?]`^gJ޾Cqi1 4GUSDGE[4GuZ02#mQp>$%>xPPWN[+hTv!r]g@Nu J.g7~Ug(E~Λ9z4 { ^rp.2=sUٲ: =$8Rޓ bL|)S:^CB{13L4őly_WQUsTӆbmXez'roUAOIq=0aZ^{tdba}~r` J p7pdGߟV0Vjx&z6={$MŠyT0 eS=J)OZؾ[|7xu6#JN~3VXw{  *@˴B[ݟ{&t3N'g̱qQ%ҚԨ,pQo,dagA;ԅEebC+{Ҵ^E|zlg܏q/dON9 \APta@BfϔYHd#dPgDEkere0yUaݒf%7 ½w|0knCv"ҶD|:Ű?:W4F1 qd2"]Tqy.tsUNMisM*Ogs n<1./p_kAe&øݎ:D+Le-W^2,2VIަJ8.p;}N(6Gϝʩ^Tj["=ނc ls @uvk~DW?5HLnKuҷ.NK1qtX$C}9rK@y" _1)֩`֑/2Ƣz~N h yvyT.vQYZf3,%)<>%T:;y3Hnm2|*_N#%@^`0ӺpWv S_H(Tʆi^J._޴^ʲi!?-gac%yS8cJ^GHh\!Aa^!.'1! :3RH+)P^Áb>I2IT`G`xtMPPvI5'#`}ՐyE$}K $A&;yD5cr8u=-- VDUaFGO;3Nբ]PHbpn]E~εVa9Fs5~ ݱW%Zm{Qj(vޠ] s9v^c[xi"~w&k( 1KX`eSh'^5oC_n?hr)VY zŪ2!Zh8Q}o7tˇ<  BWE2bƴPE -G$iviT\Y~`AEP2B4[hj+$ه͏L䪍.+[E2եb:4'>㶒K2:e(7C^NWPY20yVuHcrHWb@Kzal'f;z6IBON|-pGZh0핖v!Kx0ά|<֗R4Hރs9VT An-ѥx¥ 1R 'L>/=5 _ Xm!#wz/%`m8t1{xQnU[2RçY㍗8>koԓ6J^ppmQ9C͆VcB>"J#홾_{R R 93'/E"H="+L3RW`oX~\S/B+MV).p stm)Z]6aTF 'K8rC6\Bɐh֘,Jis]K'*(^q0,aÒW = PoLļ̉ K'v3bt2lVF) j\Ԃ N*Ge!vuW c0G?sG3u!)9;]ZVae"3!O ?6fyAj\q3OJXkllyo.|Y&A}FôүΠZKXBh%s^Wysm}| lLW@r PPU %~~oc^b:IL.h ޛ 5Љ%(|%@^ȤKpq;QQHpaJ6 ^>R"8"rGMe.vɮ~?mzMS1Z(x~j;*- " :+_%ii;A I83Tvw2ѕmzVkgi :\M[/pA2Ju1bkH98RyLBorPkvui:<, RG&,ϲ.Ɠ@ХYn{Ǹ;I@}f 1/xaMY ko#&>0'I|i se,nP0yz O`\>4:6 Q/C0 XEWqW`OHzo$<#\ҐKiw|]%k3 S2rU8u38<=UxN~ $<;,:EFMkhV\oj]7ԭ`d',vQ爸G6N+1]zp5A5`Yo;pijhr&Z'7^S0=LP3̚}覂FR8z!Ì o`13*V3i؊L &g\Z_-n؛2Z'z#C:T" jRsSG9")3%9z~*-uFV:]8Xy`P$i܈]|ܥ҃hޔTLۼ a'n6^Oהpj18,KXgs@+W*ފ=\sPu\L]WUM2O&*"xW~){ۏ>VhwWY3b_Mt=:xcy(0RF6qɺ\@/J.A|;c? ' "y=rל]#a! a~`%ߵ?&]Uf- }h_ygԷn;8Aa<[@ |wUhvs5Іc8v.@>^E>0BPI|X>xG%11̲jiA=J7Vi8Ln?edʬ]"(!zV&gKy7Otv՟/tZa;qنc%au9ҕWZ΂id oi. r.(zu-αN`GꊧԷQW]DPg2"[.E™:a\^#X쮡mTBn4(z$*%,r1hJZB4n?xÎ`mIi㫜By؊qiT}(k`2Y`G s]7u˯Ez) Hn;'Ž"8E wq V񋎘KlV>hpl=g!A ݌@:\D?iZڈ; KIX6$v1yDx@)LnC=|u Yo,'+#s:5'&_'NAԲo%V4>Yods`ƊmpNFTԯ<4 L%۵*ybԓ+nC$<֬(-<D*]czq줅2}>i 7:jz ]pF¶f!f,?U=sޢje>|VP$#)?#8{LР8ON"opeQ_hQh<Ҹs|rC6gTRyG\mf*-AoE+dqx޸4{1Mťy0,{#({43N{AMù/fH%CI82+tjeji G[~"C(GVー 8ǕW{3GbUH&/K}]8)HuXy=vN.6PٗWfzƘ*쪨TJ'1s|h< F P(3!{6E@OSRyȉkHh?P9-ȫ?\J|:+^,nq $y9} 7KcSzDK?ԐZ^[V#U(FIOA_7|^Q_O߶4ׇS5t(5hfPz+U 75P{{ڝ(X`K^wNFiWzr{~/`_hr5̬,ΫT٩\_:*lnx04B^GꮳjFu$q"&om11l7VH $r5XZvv9# ]"-C!4F jFɡi',%vg|qMHhF7S@3t-G497h` nf*s+ U8%lԐ_XH[Rzw _ -0ruBzeE9)765n\#?E(E(ϸeHLT$ۈ& L7e6gc)1jt! v.*\?.LczV\X;)&mz)u.E(|7GdIU}C}c\I!`V;uY!ۖw x+imo|!8 >N}v=plgR _ZtZ/LzTWCBܝJǣ _u*ŮOV0݋0<4'2KAm}4q7I?R٠db@ =6æTvMn<2luBMjY7,ֺWm*ކSJtǹfՒd~sƹQ9eۛyViDnEi5 ȊKbfo>ڣн6~ewi"WꧧӾyMs0+>rmZ~2n5 YjM0^Rʿ'` uʴR6A +[H2q,IE-!!cҰ )aײ~&Lb"w[]|7{5^rA ؘ@ M0G:ew y%#>oձqG|׍ZR#\牜c)ed$b2|4_9BNCKcboj*Q!,|h ARRk? '}(NP oqR3y(ET7jkG@ 5!l,=s/ HB ̣s#7~@It{mA~bO9vQd1(}vkE{\~ xst5,`JtԦ+5{ڤq?pp!-Hs2נ_2Y {uEa;;{n?g p0J N827c{ۃ8iIRG >]v?)'kXfG)~i}U1q?Z FR\o1T{Qx`:8+EݸCi^cZmaRcS:H鹉`u@f f|WOUf!| e)kV48 Pܳ4/]4'ٓ1XIEvH7 i"r?x߬cXB&7'Yw3F 79FP4Sy{i"'T# e۴:U7/pN )2P?b-ڤto/.Ly%`@}cGз,z&3/u/d4j7UT/ݽeTf#ttQ9shs;2 jBNH],3a5Kg-زz(=ݩi(nuMGkD*&#. zp[_HK|A/;ԟJ09mk}u;XaR|cKmJ{Wq=hwhiK g?p)Nw6,"5sqI_N*[U0t`ulHAaF'N  FѸKgDG!.l=RQ3Ҭ7w6Æ "Gڕ"3>GJA/"ègMW1B{Zl/]铫)Ty5\!Ϧ`<,aZLH ':>dȉBedjg7{)yvB.V>E8Wݨw_ |)e qU%p޸;M?$CeYfr"]~O.l!uЅ$ok/^[yAg-ib8[]%O?i9+3//˓7g!}1om8jNGE+xH+ޠrʪCJL둥#;͞, Q' $E@WWts2)ucw Qe8 ǎՇf+JZ?T䬁q@lG3٢~ޑ0)-$kMw{*FcUD/,FHx5iVCVﰔ} hpzNJF⁈ˢuzpKDc^8N%t =9.ztI1߂\V,mf2`m{F}GuoK]7l' L3S @;Uk ?~$cԥ EGOƠNA͜4lq$ytMQ;n`T3.uP(ųyܓ]SGH NV9ti0 rHȶܔ9tW+T]UEU^2ңՠK۟{ @wXqt zr`Q_ \#ßzyKGVFB? Iz۩ RGٗ^>0+#JRodhg0 opש!RשFYwURo3a5rhϝQ-nRp"gckyPk65;9˖)qkx)voC³j])Jl $2 ەC pYtQ'! H&@oᅡՈQ?AD΢d֜C(LSͧh:pllJX3fT9C:tʤ7}W !=aOI\쮠əضЄ-w8|\J7x`-Ѥoy$/aiyL][x D᧥5*=Sh)AB|\-ɁlD2a K]'?/Tv=SKt7Bk)bXʦ:; `y)g@BLYX^HK :CeM]?/Wphzb(W/ɲTa7z/[uB-S0&Cu8 @-lnbZ2ǎxtmdim~]ϼ6##`2f#Y[ Ŝ^.e&}؇!rLp'\Ga%W(KB0IjP9fj.LM*ם*TAuMX,(HT͙ey^+V,Z<碙(b xi`!ã%XB78Rd0H 9wNT*s"@8}y !K.@$^>}C KdjTUh t4/E,c:2r,rTە$-j'l9roC0{#lwoC`h]EiikU} hD9[Wy]N'fcT(ssВUzTrHzhXk>xqLiӝr͜60ViB̀jl­: r Qhk2WÉ`ĉ|9|;- O*y%HgGt~5g|GXj{AD=':X'#8)Tv!Dd3 Jmu8: ;c0H~l~xK64t9 ݹjLUB Rp,J 1!'9"~ͷ*B,e4;#[h믦?ϯĠ\P+RvD*nJC/.2VW\iȕgUyO|n*" ɧ:_<$r \ RAϩN 2o_F+;ۈ֋ jս:ZbcE'⚖/w<4 pDl1>")K;[?6#Emr k؞e*]78NO[$t*㙫Zfg?wK(O+LΕNIYlR6t>$rԧ\ɼZk0]ץRVw gxjv,0Lt۱ot(ըQðp+<0N覿j1ѻXZ/~,ުt6W-;\Q[2m#镏Q$L߳z-Ch_Tl4.d/311iԨ+7?5\-0$\RNK"r#N0bh8]K 1IJ@CdZ]rP&%"5OIYM:ވ8UU1KhlldOsFC+ kSQ(ET7P3/NoB~k}JA̴!fehKZ@}y%s?͹HñqRʞyl;kD&aUo=cg5\(GjF&?D3 R}tOY'A`½0aUۘFϕ Usn#P( >4V!T^37Zh%O~_F:ߨ`ĿտoiRNRy1UHİ_/(;ˎ*ZKF ˀǿpbWF$qo-A! ܽ$vǻ [7lVTS5m˸ZaV]d> 1X|2ߙ)C.gRi>9c2 )}p|t3f&Z#XJY\j'>B=#~ٜx68)J8I\eUd D@J>cđ)onD/dMI߈F-]+.$;{.Cj5 ݞU:آ@shZQѫH;}ˠĥV;p[orI 3UmYQV̚`Twvn(_#xe[gt>GO \[ĥ-\3?[]ZJ4_G ٚN;r zʲg܈0Eوmо:w#^^$ ml~ۦ,imz4 *M__dB箼u/*@8=Nt8}*7&m("Cos5Oh`txo/X_])B]S WصOTG+c~o&+iJZx4Q2/ yM^pǥne\3D5˷]2=>U1 ;*6Lpt2O[e 뿁>s˧ pgE@y]S|lDH%ͧ N@DܱtE\N U$V#W=&epݎF9'mz(ne$3S/ 0!jY@G*TyP6M7FsaDx. 6׵e89ʝ};1sC;}V%\HshGXhIV u (wekά)gw&r`IN0@w/HUiHR)eaVй58BVoXBS:)"AaM$G4L`h[Jӳ y-t"q7+Ģڲ$]R<|ŋ{YiT@AfQ..^o,)^LxSF7{6}Hw?\Kr&h1'NZa& "0s61Gy~&X 7n]t]mMS Υ4YG§*HCbJ~ X3v Q;":,pdoPUMGѢh.A_6bU3LCVxTO9$I-+Fuh?Ch~'f`^_]Ո X'4"";H ,hӽ~ ,QEl3"A֠ah Ç[e\FW,yK)/k')Ϲx#ذuI +;BSHb.ɛx-MᷢbFVasHvz`mup*>R02W7A$ Yy5Wŵ[CX|o( GuH%zD2FVXм8)PDfJn<+ p:nJ>/Yt6կ i +K%A߯{4M`hLBs}5,f_˼A)z6jj[P"?0z|+ *r(~ru FaKh4f2NPv]؀WȔ+N#{>&ֵڨ=s@~-]C7o)HNCs(!3Zos: 3' m1dU mNS="j+0-OUKnt:,9KA0[ j6h[Ͳxe3rGم3KpY 7ę蜪7p7䞪rgNQ\I[ ѧ Fˠv k&3m:j.iy@7  2/\x=PLÒШ_?vcQi (~I@Ig#~+ҷJŎD E@Y8 rB]߫ ɐm|\fQȳ ~̩/jA XnR!K@\ >/a& /޴tc'pML2.Fqbvl.#-{bC;,i/JlhtvH)2Fo 5S(sH@oJr>&T48Q]<@VLu4Ǥqp %r=U& l'AEx@y?ߥh)韲MCAe$=] v_vo$ٷUrLRP1Q/YO&s*GYp?-?>RTEؘK@fcGCCEo,MYf0'4,[jվF_P57u$]i rY͑Ŷ bd9)HI8*D5+lnP6V8[:u,YMMҙ!; %FHTQV-m,4Ғ7Ӟo+*YxIHm*_Ku3rZ{6~;.Ef!lt&zݰ1SW*VϝQ/T4/*MLjdM ${r2̭l,'#EqtL pZE]-2d~&0ts@Q9>BIN;{*Q zl)~Ό/@Í%=x]ҹD C޵J9-fZWAt+'7m]@H}:)+3<<"0Ѱ?sތu~>f:%Lj8UWTdv ОTf՟|8;Vht>WV018Zaᏻ5up$(動L9<냣o-xiI`oӥQ3ܨ{hVY5ɺh lTD0r] X_"E,dl](D{HpG7AЬTdE>BhAhĆ\̣f0l5]>]N^ $#. [%7V짷n^F~;mXMZS,pHDP{D`br\`Ag&zscHd<@ܝUS9H3iy!tXFYSU3zb>,u#f4bE(e/t߷fu22d85}8B[%Smͷ  1OW;)Bf 1SA,Xg a4oQi'x ?L +I勳}W >* SOaPLֳǣXH Z/,C#$sQ\3N8<IN!C,@a/t{GCch n("UtƅJ@?>Xx q5 ,Q#)f3GE>p& )ZȖH>x:}ᡤd?ac_:?v5$#˺4S&Z-΃\5t>De-s_{U w.Z-" >3F y_!kƒݩkW;wzş4 +r3i8!RU*A[!zwuמdzKvC̴;! ,y϶ |窛鞌I!+9Z oWc.,gsx^/* =7< *T1zԣ3^ _Ny6{j=dB12bt.橩+,zϥˆ;rPJdf ͥQUy.u؆}c0)h/JɁGNx Ԧz]@TQ}(BeipS60<E zr#&cZZ!$lh ak?j0{"Ir ck.LthETQu5;9F/) LгlCoԎ6}$ͷ&WU[9` VdEw6 ~#.xJM+&= !p^!щ(bT{(z3T%0BMM!/Lu(S:w1o<s!YU/kS5 ڭ \#jQvSyy 0n3> L~M2$[{شf&<]> NC6u\󌱓`&G&]:|~p"|{ߋ>mcGLKZ,\SY3 N`%̴2}YSH,j% D̬+N`@گb+$q7%|]`YL1i%yL{GHH(+ U 0))rA=6sog~0~2ԢC?5wX r `JqLGOx]itݧ(/47M4H<نH `>Sjܞ\mVfIsĬI@R!GϏhѭa6"%4#'(Adwc&|>M /Qڋx@uxOD⬡2 4tEhpT:_S;og,_բ*N&hK+A itv.9rk<Y=] %RB>?0#tӆkP.A904}$d]j "5UdmYm+Z@1p42|y+4U?SWЪxl b=1?S<`fY,| q/[lȆn3k( md5}r0rN4?&]!8wV6SGir3Q#w7aZퟐo-rsNya Nt*aɩOgDnO 64iOStY(0YA1|)h;i+]69DGW9` X'쀍QBNHK̇go8So j+V Q gS>mЕsQ}0޸̀kFu SiMK>U~x#kp]w\$r;;5|Q+yd7iҽDYzGjnj`!*\Tie hm% ߼R,.9`O_1= NQ@0)Wh3pkkh4)MO(#zY!qb jlIЊ @$ajlJA4f5Wϕ f[ʍ7m6[VvUV|KJuRԽ`K;8WP71%)Hy.]bt~ZNXMqBR/6VR M w(292ͮ`(Ol1nw`# fU_LOki!Uvz2?K:r_b=op } p٠౦g\ U =bhXع *Ԅ"'aiNyϳ|neN?hBpC=,]FC2W:gvLC ^Y /`Il\xWZrwneü;)Tn.%ГJʠ.BqUUwES娘EHwdNnÑ0 ҪJWOxMEDN)SdͿ2{a?vV$ziP|`I'J-W2R+ [\+ &S#Vt5μogii:M9xAE[5e#ęaF*M?|8cۨxsRɘCGZTA0 HdS(yX 7[ 4 ?բ㠴C'(+ƺjFPA⾄!]f滂J 'j/}fqT^֬˽H#[pa`b1;ub"<_YR|FLOdб?A5iҘ6!|-NwY6{2ۅ~NQA ;I" ߙ CzY ꌄLj YYPd`~&q:k+Ɔ+ @GJKӺN31SƊ}dq{{]gFvG(y> %X9aB)D3gy *h+wTvȏ{:; JNz8au;7|Kg2%?HcҸ{~/& rS%Cst=;' frj(W.%5ջy_bIzf7ITQdR 5wS=cHJ~ !Hi vEi @13m澠1lVD+%G,6;>}jxZ^qEyjy鶡l1PF@^Pvi3MXG+E bebߦX Y@(Hў"n5 p=B> Lg9k 3OL@Fi#-p!F%bnH0ߔFkCg10U'-]Wv.> 1Ybtօ97Z1$!O e'Jj@fHEwjφ467Q"GxS Bn 4_kɤT~;+QD6eLj>6}|;?Q0Qf%5_"_ 3Ukّ?sk6qI.{ QU ]l`.+ds$~lwM~?K:>OhhH =wk4l Y+Tr/-lOLy3l"j5Wcaj1-|Lfr;FbZf7C6s{ePa0CKUvtA-9dȔIt?& t0`Y{9?@^ո(s'ĺ C3C6zVUxѩr*ܠ൶@;*%2d"-+SLpe3r͸Q1~vu˯%RMQWq:& v1.fEjږ/"#?;Wi綧'K_c=Ttxay(dM-u'.ͻ^XSB3!$ڈ쯨}9~-8o0tb~k|Y٠iH2+ANs^ʜ`ydhMiF\ 1T>c.c zaӭ?DgIk0y:ȧj m}܌ӉuwZZ? izC ̢3U6a%hQoz˚5Ϝ0Zǃ9ń: o- {0i9ph9vPׅ=6{{mT$M1_Ռ (-|Fə5K="tAB#S,O&h腅#8b{ W}{ޭ .s~>n va$a6nl\,BUi@3JZD9 c-5c4)M[3foE0#f`OPbϿ(kh, @H|Wo:z B<1kUEv.E2CBYkTBwm}H!w}!{ow/Sd; 8$Z񇞽FZ.rd\DE\v Ccs\9#bEsjW_ƭIOiɎJ<,ڔ%'&,ܝ D-MuYyCJ2$c2+c^8-Z_)dnm2$g`]tF;?/FLd]u:t{YlNHA~4.q\+w +d }(ׯW S”PRora i-35inF0HRF9&XNG 5wB)k%27Kƒ a8LJkcxUM (z$GY/~76x9izǏy+b"Az07NZc,wI8]w&:).o"M 7<t2uQЄuao*hǡ=':IaZ̩VXRȺ%||x6Em@Y`84bWJ|lWEOI?R)0hF=yz8mr|rk);0߫e!ȾPckuv=6FĊ1*seT76i _/7 3-ρ-(^DJʌnhVӴ3 (MH9kihdwfF[fdHF{ Mp7<D!vm&Rt(cC\ pB2 | tH2Lg}R81$V)=x8cLg#;md)_tϗ;Ǧ(lj 3/W! R P}XDiB"gf/,; iIT"Ƃ*ul7iL@ JU@]бrE weYk1MXyu.F)dlo8^S^_y KhW؊#B჌j 0m_Ғo90ț?a6zuWzmPV8W;u$w]iIv?&?Y/jO %縴"2C@ AZ7~c n\iƵŚ}R b_>Bpq}~nig)=15, Y{|" z3*vwvp/͔##gdDR-$'z{ñ9zqV_._>ΎEXl(v߷Smyo @9=lHԬ>ym $}#?-hײZ{"43x9ԅv(wxb@ő]"]7{55vG`ai$df8I- r9gPXCj _#M$h2ǘaTobg&+)YNc5+tD'T`q2x# ]c+.G; ,G&5O+RáPdnA\QS&ـ(F8l{^WecfC-¦Dv5Ǡ69Y6_1-'!HL2xMXU- Bׅ uN| Tg<m@gy`X8*0LD3 ~x«O!Ph`M &oJ5%q}Cm_Bo'!%u LzoD\[Kj MƸ)CH,G'7k=<ޔsڬx=*mFvvp6O{rޗStNDRƶg L$`-N c|޼Z"@oY\p>LbiEȋ2-@.U^V];^ Y(7-@LmV4NLMyXJ4Ó|cxVj˜?K T3"ud[ x~7~D(,}V2;Qȕ oTankhyuo`9F< wY2(bg$z Ial>pED`b]·ӭYbbIK8<" /^'l[!JTC ^d76~^!2.x$ .[95Q]l}{G驖qeGf.J9K,a9~"UԟN̤ =AW߮*9\|$uS(bʊƑM=ѣ u15ϭ`%&(nQʸٓe$Zpz#8+pOy5mY-%܀fL0M;™6Ucp0RLs|u ~IGL&!]TeԈ6G\e(NEFEo\31N0dpnE-yvF&N ^#J(|iP;h@&4mkaݴL%Pwe{+ūO̴w("I!ےF>DPkk;DM1o2ܷ9@8DA8!Mc5J.m0^Y `sRhȊ]fhN/O)/wxҰYVDcϝ۱@(C=hͦR(kiWiŅuÒalC`"S #7'AČ\ >EhAs b5~K'M"u0:Tx<63?tO{GG1h%,luAlg57tcy[#J_{|+;Gy\($sIYC516n$榔OUC!8\&)[<ٝT.n ۈ xͰnZ|},rrv5)~x:vi Kmiu**98quH oy naWEqU(=$k3P%ѶHSk֜B {m?έYDڥhlUav v7r-"]Adŭ@`M|I?=ҳ%?&҈; 'ұFVynASe&dRQ/T>"8&X$zю+ | F?=m[/E?0R1Fj4Q1M)'61Jo0ঝ[>pϊ=Al2NGe֜2UDnhDKCP 0aB>j )q7rj/aǙ'x&{ G0L-Pm!EVnEm'tm$~" jUQ5]'V+AsYߒ-FZw1{KNXB#iOo^J^+o*7 \~0Ӎ &reQ\4F)rTQkns([ &%FGg;6 9nj%.D>{uUێo$y;< ~H-1.<մ\ȸ}yN(,,Ѡ0K?Oak|uIlI%->{&' qw񊒂%Rsԏ؁~X# 1EE2-gc !J!0bMr5l]= **^*P\eۋ/yp:~hC>؆NθR蝽(|GTikgQ[a5\ -g{pr'm~TXn3WH쏹;T2P"RS2=Bgpw>P܍$+Xnl>)( v2 h#"ll@dN'!:b]&ZQ; FsЪ o X[p8n:L5&b[9>Z8UցP73N?]Mh/54/aZΧvJ\TA3[0% X)m"̻y*Fa}jC}xvA~Pۅ7|sL :qN'z0h;,1b މuJ/kʇͭac^ Ⲝ@ÛHh(X0Pz1</GY6p~sD2Wf5+OuOX/ౖMVlLI+>֓zeRP"[|H=ۈC\gS_)> yvg*$F*~U崐Gg$7[KZeMs/3=BBjׄ#Z屗'9T+cqQ!Bm0/h|$q^E /~0AS/3pk7ұbW~} '*t!}ء5 ݒ @s(uWsQ&}qUm.}Ĵ!ҡ^[7ohomnBh]7kԵ, s'4[L&Pu뎄F*lIF72G\`T!Zw%եA;!R*Fؗf5L1L|4JԸG5q=9 hxpEpQB_V|!/|.vwOqXњ{-?]J*i^0Sŋ)ھav\4= Pi `,a.f/ڼoZ,[&\+В{aIy:=jq3A*ȠTv *KE3fyLȉ !ܿ"3SBgc\\g*[afۉwݙGwîNBd @|9/w)r%|l\bZul$iٞ f.@/ ΂{gQ} 5-쩼lFMM$_VQ&N5 ^ &x5GarȧuS"_57D,#Fݿ{eOcrG/mh7yXCb4%8RFC.4cףkړŽpߍX+Rmc.`K"e~tAܴ+Dܨn\"M9(R1`ڜC&O]gRF`"še. [?.l@x,3;hdܖȕt]qn`ŬLd9ZvU#!hws!HV[5-O&|aWkGL95T* ouQCO:2c3 MB!xXzO<] = lZ &vCmM;kI(!!;U` % @G:g! {8̭~e3>U{BKGysGR&}{a:$&rHWwj=,brC\m"m7>icR@z^!.8Q0tKor%.Jd=ѿR޿re%b񜗷ڧM,2F s0;. 5G(`n6Unןi.vPf,.l=s9n&{'wM~ -f":VT: #\b*[\?dA#nG[ ,ZIʯIS9GeV͔Q uT\ӾmhJ){IPbP<]•#MveLq4^l#-Wrc 4o?CTw ҈^qlʬFV$Hݩ9N~L.!PyK&֎İP`##[O4me;k1I F*N1oVWXUu쬨Ks2xҭr[qmt%2UKݍ 5l_֩EK.>ͦ=ve:)BJlqg=|f?J)rwf9 8>qQ>S+PPo7 \IQ_32WOڂw=GtPv).l"*jLAyXW#& !pg&-.m5s#v,'<.a '?8S'_kAVZIKXt0o:?O!},Oc?esM]O$7<'^VCGQ~+!L89sŰ On+)L 2 .aT 8:!u=jK K1=k–:@z}~.#]c>rv"-T .9=a`$asZ2OHSŪ|=xuYy9bD$Tt$rڇ1gt}Alã' .p;)B$As C"Sݬsͽk9R qI [t{T6釗Iu/PF[R,V냙` E;wd=tC]LĝNFf_V}-uvd96̛yZsJS!6bqȬåH 8{&B=VVK/RQ\[%܅ )眎,[f_8#PaN/#HfR_o^bASt)t)n4LKyeMsaCŞP]ǏH%d2TYH!o [3C"fD'U:*>znZZ KqO VȊ;M=>('hI@WU@(9f9UVuų|z8ph g'm0R?Z7{F%6Do,Hv+y5%G^]fšR׫.:6 /lՄ1Wam]W%WŔH̷c0HVN&EQx6ʊo(Nmˆo0sInT/T{+X;)H{);{ OI0g%M79>+Ȧn_w1s9 UgOEL#)83n6g >43;M!ֈXkjf*R+ƶ>ZTA윶)D1$r|c)y}E\ۀQ[T7HX̱ ݙ1o"Vaq|UQV՘`ttGǻD <Ҳ-z?>6BD -d6Ϊ[TNAjy9_&Ն42>(_! v3wKbϒ `sCR!:= vE{)G*xӸ [R>FS@7cj8يǵ1F'f̫V~[CFG0NǍD}{zd^@/IL!э9er4~ j,WT}`3۽I9X:Wg[]`94V- MK[\Bj= ÿnP1ӝ,GͶ-N  hpT؝I@:w8x4-Ň8Ҩ|Vj$Y*8~AO3&Wu{m9FDDUxJjh7@"yA8gʿ Cr& 9iG2`Iu<ŝ4Vq].m4w LڅY։=,Sul$^MYX{Iܭ {.":hnZMF0Մ}q)v#歐xOǖqV$Dʫ]@0$ZM(v&:9޳/wѴR O%I*$$.-F<"&u?FdrZĊİ虯H3j1s+mXx (4 9@K!P:qa ' M>}I= @ NKuY pI"M< (\$')PvI$:6Tn D˨lD*G k p)ҕBݐ=;mmJRTC( h/!58o!<@Zd?4,jqGe|P]JqG*lGœ߈hWtf y';vlHUJT~m1ҙB[8,2QƻZHSQD.rsuOe: -+16`G窏kjSD9ґ>(s쥰*YbNޗlWP2{ch[B:QDVzl(KՊc>V}v+8PkB84Bc^&EWl`@W\l4ԇyOކHsmN6nJ2.W+Ec%` W$pJ6Xl% 썩Eg)V9p @ t#.S$Bғ:\BA9}DP-bDBPG ҵgu[h8eL|xi7Xrj>.4O_SP殚Z&5Eoq5KDTn~Hm 6lv,b=W[6e9ܖ R^ۼ^'Iw){P `L.~&՞po\?F+ʜj&_249jJ&{\ʦcHdh"jR$h9 'v;1`BE˄K%"K'*E<<+  #Vg#3)9&A~PjδξlQHmuMB{5Y/$\Ƅb]K4>s"FBfE . Ku%Bd6Z5\Aem_("%%g?%/WhaHeWي4GC y|ޒYH Hyvud^%.:ߩy,$_gYhkT¬NLNN؉U;=˷`a/D+r#Oi4ؿ5&ýhMxŸa`-ŷ pxTXk1=pفF; &oj=~G)]d%X+wQiaK>+_!jͭ:m_ N Щ m| 5\ȎΩd1R|RrbLRE' '9x)wUJhK #m22 y]!٪mCO>:x?FsW#jn.z8c%浱y9IwX[ N0Β]"&ZN=qQt/z==ӣ9$ wsB,QxM<5Jрorll8t .zpb*Bt)䪿I>PVCY?\ X(F$MDŽV>U]F k_ Z|]|IE!5d~6EQw+RBD֟Ws.H? y* SN`IpxF-V޲OLbP):yғƪ/X޽ 8!ZL2}'Knwϧ(Q{dxٹưPHF4rJ(*\`e>xRobq{#蔂%|v{Y7:-_;[sЕhN[cZgԵ~(Fݺhise?oYP5< Gd7;4%56͎gha G{\PG AKDgkψ1{.V:9v+mZAIL7=I+IvEcDۙmRqISR$領Dj+߹\@wIYh{GRw=+:enHuH{=&g<HG8(rvv&8Id-%7Hkg=DqI) d&Of/uj6_lHi|mwt]ZȜ˜k,U8X f_)=AK+.ֵiG2LiL-?3" D3098`ϒ60$t*+E;ScƫZ1 .]+  |'d)z{dm+c&k%6$\h㒴`u0l3m=E{{ SP&+|l!gkTfbC)'@,zAF۵rOǷF,?vqx/"us28Nf'.hIO0xI(Ez>!Rxg\u5ig0ХR 5=Ω!cDuh Ѫy r-88PTI:)NI#g&>mf#b+GHu u@B!YR 1;dm(k x {ߌ"9Vq5Ưgˑm[w|Wql25S[^R0.vZ1Jz1 i$aYW Twh^uPj?̩ԲX|%>:3:0*jyΙ@DVO %R b2XB[ϮJ.8Nzd-% a\«]jX41H&vRp︂sp0% tl4m ="e_$*B VddU K ܖ9jj]t/=iGLd,,0jrBBΥ}hМTKʇ[g{ח;r},%ɻҦeِSkQ4^EEupw*5ʵI`2?Mʟkp'4yAg&':9x|_;m{ps_,rbo9Ϝ76'̨NUDZYx {*C|j;ͅZI 8NSےU_vNP`]T\Dl.~Fu?<9V;xa-64dcB_k XVO0>gtr%I5H6y2q:|YE\)=H .YxCJ0޸En4!RTS\q9Y{ ֘V)Rԩ =e@I=5RG)ͥ~-zdwdޚ%zpQ1_nfBRAI( U+4}%^ŋB2fZBҖ@mnh~]v_gCW3hEa4fPw(U Ū(F"VcCMn2sxvޣmmkQ<P,}גRbi n; E̊o2LTʔȍy>nS{"F; B`Cj._GIeoF;8fDKd(M6tz -;N_ 9ϟm|324̚ek޽(i "~eNee,bPԶM+gwI^j6}[CoϬҼXf0'wJz }c]+Mn,U!1W10)e͔ꮝpcR%6 hnXIOS,7|J̫kGٮ\\tL]jn;p_RV-ڙ'de31 Gm G51jGQcǀ12( $A[7-!"{?Y _QrS1w)Zo__uRKD8ZJ̹ ߅ӰIIte=7Sy?\rŸ` y+5)f~_Bf};J0XR:5YV2&>?]ڙ\wy4lʑDf(:ܷ"9\ɦ8+hxB %w>kK5Sr|(c6tc93 YQQgyn%I:ۀǛ-&MlNQǷ2{k;W e6 S$ĤIŕZ? pY(2;/L+$ph6ӷi%VbjC>`h̀7ʩnuP!HdF ~ܚK$el(:Ay:Ffz"wKJ > Ƞ$| ! R[$K4"[}b*!FiBf?w;ÔIַEބVr>Ug` "ʿj璑=NRlzvmb4DMк6UK4vU)NQP mkc~2gN*Q_65S佦\*jK֣jkvd nTp-/7Dl07,85 Μ2eT] ^waN_ =`d@bQb^AC´Eaʇ#Z->3gҷI@>N̢֌k=`ޙ20u`V[WcFؾ%;+K/?ByǑ)^g+o8e}49SbP4LZƮ{IcIjU^;9u?Uy+O࠻8W+ Xh[ʘ/B>8fʨ(qZMO.g8oR>5RᗭI_5%;;u5*lkT=KӚeg :8-$ hZ"Fd&S5<f  Թ "R3Jq YQ.9!Z^: yDb=8һ Pshjk5…xmO>;oK SH֕c=RO8YE˷*Ha %i!o*IaR+2Bh mm3S+xS,LzsEm @e-=n+n]}- .ap^U8H%Ueu:Z2QP/~Ƽ@dKR}J? SniPOvTagwxcg:g}: FM`{Ps鏛c2#5ʻNA-+!+E~ Ȉ~OQq„1^C/wLd,9^$JJ.ޏIl$0h;B,W@J!ak1>D!i߾O}5%UCr0}O@?jJ+;YZυ77dlGCz* yI0P ?إzRs׿EGdF5ZHjiFf睆ZJ!]|" ~2bqF%`LecT0+wL+45OMe1)n7Tp miP2yS6_%z> 1rL⽟mG{Sa\U~'e@bDMYG|6mۏ:1Rʦ>.uVP~}j6oSU/HoY"G74 EXL7*ۗvyj?f\ߓ1 5f3Evoh*MDŽр h[ 2fGP`t0n5~|Igy/β[͝d5+8~Ǔ-C& 8"\Ð2>k++N.OTTrx6H 6kF)ckUdD*̙!QtG!;)c?NQxwME)漅{Cix#-.*v0?rF JR㏖ ǚ#@;/gA,֏1_&#` x#Kڠפ\I&K#TOcs0,)į7% $Zʊ`& Vɹl"W%om]VАq2|45+J\1>`xIuĪ󦑃Jln; [XVM5*Iz(^A@L1* :Sb}M۱l3\cmwp϶ozu讬<ᩄ3b !WVT$_0DB$nGt鮷 2EvGivm `"DQ:$.r)54?iGݪ."HP\Rı#c.svi^ KPӟmQb5~֝s!D#;2BöH>k =4nyII-Y+›Cm 3^ۯ<5[+K"D8 Ll۝c6,;FS"C,hb8U3'>s2Q#R]峩jT'u-FmBa3͔~1S$9"6h@~JHUಯ#*dÌaq}Nla/l̕ yԃퟠߦaŋlI`jzw ='~h%7e9=/Wpe<$I7 w=| iU(xhlYe)XGu2}@lz~[WJ^UvNO9So%xt*ZӎՎP+2yGtӛ?W8X▧@۹)vP'{ЫGfUR]=9aX/i(BNƾ#CW+6@kGTF`pd7 f!IY5(4ތԆيCY|L[ ~2G_%8"aշPK5:{Dk5?iDNnvf پ!Laq >ێ@_PT|~lʙA2Mjzxp{|]iqg(׷ T0R ] y!s}%AOeJ^.“ⰭCɩYOR@;-Ⱦ'RDŽ Ƹ!d%E}x'n^T!W5jVuluErް ;>>6ߚ5Qn`9Z\Y~=2(&5k{Чz v[YvB^蛯s"Q/}.tTV 6އ] 98.Sȟj!_>l8vN7^Lqh7RۋLEhv`ժZ> Q.FBVVfٻh$ȳ˙֠-U?ǚNyX4fZI%nct97zХq*|Soԩed íH.;ud)xP]ZH]\м;-aKE|:.>bd©xGl@f=4[_M2(vpM h: #DĀCf f:4Vğd˷ ;=^g[Ta6)^[\ЭgLh_6#Bڱu+,e`w{$](LqʒbE|fuh.UYZh`+,/#4BTH5 7B36[e D*nkP`Bf"Kwsqm#i7 D +T&9IY"ūfEzX5YRR8NybMV>{(k&tQ2vZ1&3MFcm",ܟzBǙ־P+l˝nWcz >/*+Y.d?Jw1:-S #z)=`X KmX`hBC:&>=3M~bv  G)B ``ޅ L%s|zzTq8"<)mUq$ˀpa^@Tl8r-<Ǿ--;4p*B$Jh $i\Fʓ# ;>8/£wa9GPCVCtf9Z,LzfJcʬ,q eofR0@^gx[.3M\sR$:åDoh4p%-sҞaBEpc3׽=ȋ+PQrGJ,d.);5HvQ5DUXƓSa_Fs( ePuמ왞T|jV#öFUkAlS17"ZRv?w(v) i-BG *u> GU9_q_*ɐ[̰2>- =erbz/',3X S.$"Sп*Hl.g{e&Ƃi^_'}?T- :(h‹sHmh]%jn\J?=qc݌@3*&l!xLuuۺiBl )Js͞=V ֽyH ѓ^ yLY U֊JqJ/>d&.7\Cp^c;U1STV!ea Uj>g.ExY fz|{aOCxY<4?PtVܖYG=|kVb/HxeRJn&:El _-/AvH1'_ _ln3E%.6֦5wq󼪄`ށNfIaup3y \!mẑ~ >2;Rg7bQ/LʊG# ?C#9iM)V UR9P1LQ%n(?qD;Еyl+m^TZ~epl'6՞Ta{E!طκ,,-0O쟞4$ t4{Li oW ֓TTNM;&#\ ^Bjf)p}_t念U=",ۂʝwһGbYyR]*GIQDbJ@,7jؚ>N0+(7b-4,"4|#+SFsv@v>K^ 5P];LI6JUs4ykO'@P֕MFH <^)s #xrOoybsGG֓rm#qe^чwIqޭOcC:?fZ#UDk/ ف"뽤޹qr_b {.fx/ZtLU6P$b9JT,EZ ![ e\,D^>L(ĿrC6v+0Gc`Li ePT (Up\#: *T ]J$,!qLf |b\}lMkv +CAlŌ>_a0.Fwʯ<ǣ.0YN#`V.־;WY;еmeA! ژ$K, x@醱wֳuI]o~ǔ㖍S0'OkIBS 7,;2F]lԻ_5wa31M_F);+yBn9VW)ʪKa`KX$͇|umpJm>\xcPvuͮK'lG#A(onb>FM%-k&p/}Th_\J5}'7=o$a9P+ &0k|3YVFkXt\vd~|}-c_+# FH1dn¶+:a5BCl%􄘪!4!⤼2J|O^zF2}@cSyIa7?A{|V7xHn0LVK0 C|WeR`[߲P1cPym&L+D*֌<Vթc>5(0>~ɑdl 9tCUQSg.;!:o#9T}x,/;aA240*w__hr׬*JfuqdJ( [NLFGuPʸ_x1Uo 4uYrfnOOnKJ≶˞@wR @ꢉ O ß\` ѾC+GzxY\oLb<1+DQ b(fY3Nu7!ԏ)]&?P2ȐL <$D)D &x&ItC$b/k [=Q{cEpJ8sScV ._ke8t+W*罰2?mjp4q*G(g?lkڌeK峯=N'JJҊ;h-/aKȞ17PZQb-\dy^xw i׻]ЍrHS`Je(,+af=oا+s( $oèq8U֟m0 Snߎ* [Z4-6ߓ\hg+Q92i^e.XZ}=^.1ϵMђXlfƩ--jæqGkf hau ũ^tsYTN,72Ohƻ͜{ry87|n~qKW - H' S5/G\An*x3B&Y_f$ f΃Z]BÀ'ܣPⶈ;e{9yΞpm$g󺵔%R^m,oGx ̖YkPК퐺+N0adHgHaJ_d Oϊ@#%@S;܍_&,yW [`kSaؓRpf'ӉE6ѠaP(]IFW\`ςWo0)Y%A |(RK:V ~CM/n0 n| Jƨ Q\>*!.kWx.kTU&:ƒ%I9*P'*3fido,-Ym1N>b`4 WsxǬ}m,Y ۙYaaRRo@A̱U>%#< VKO( zKq˴Mx vf_i7o*$g;!ݦY.e9W3(2'EIE Uf"|c~ևYYPhqZux f|rTmQB3<R) EoB"a-L)&WۣXJ`gI`_z8NR>d2&b0bHʌJ4" E3~͋PÍFǻ!1Ѹ8ǃ׿ڮ4/wFevo^̲2&+ 8⪬3wY521[.]HjlL.PS&S|qcWL_VE,MDW'$4Iz)bjiM%I~i<"g <%zaQlz+]D J12QZ{NɓsUSNeCW$[G/+ e{q0, ҋ X,qixx8Α>i1:(\a HX9 {l}9[ypL⭽OL/)XŲ$^tP6=O1ozwcTvJeϫ_V 7Irܢ3&q,^.Lv8(}RP4q:J;y51OtzlֈjO2a?-bkTN >֜OXhKB˻CJ )cUK5) +"2g0k]NzE ."pȗc_b[(]㎑x2<)!N' Bh=, n~fYɺOqt/1uoh֒x|ՖTdqc_yq"4n" EV~^yf XoRM.%*tB s&[@mk[oݚx4K JUJI"3[d}gAwۯ2#LgfׂzhfT/[f?cJ\6ځe @ c#"Q 쨞09Exx 6V<2  NToQm_0F1OK?Tt6u(YyFߪT=a$eMAi(_ oJVNZO: d1]Rj~%\bLڦeN"& -x ؖё5yH R!p4 g-;Ggf/ : E3/PRGG#"{VGP! y߀NѰ%ϖ"RWDdEw5`Ycdv%ۢ*aBMDsPoC-K i: AJ6:?.)X3L7"i~6Lӗ`4psX51׽D OZGn@ ~E̡4vnp2>pu}S#ʱ{|RHCI}//NJ1hI|"˯`uA8lP4xno=xQ4фY;:WV'>0MyTԗ|(V(&J<+HE]F>(AzL'}"4TwZH8&LҊHMz@C:}NTrN1S%7ÈpΑi|bbB L' 1գRloomޤ!_ۗH)ϯKIC@% U~!UZL<xX*R n-mL"릠C   oRk=ͦcH\( fBϚ}@v}#clu 9CZaJ >bW +ʙQ΍NppŭQw G!TE,f$4j%Hx+ 0R2H:9/3Ȋ~5J`yͦژgkM >Y?A|!vghN`GW,Q.05~ڟdz=padYQ`5Sv\KQʀ1gA-ǜXw}93kn]f;[.if#_5| oS1M$ uxI^%]Dj$kiD`ѫ Tq a0IQ۶ݮ 8p`\ "a(V&\)Z˺Sw2é_Wbw7Fys:2NqcR/ ΥLo:Wü|9[kCg枞Gߊ7=+ng~e {Ô s-oې:ɧk"'(^v%Ș~K0sQOYa.7tvȕE942鯠Ow*8`e t`nhJuf]8K{[Ibp o=2'"]ĉ.h<?}ZW*m;/7AmKL#!*wrz_Ӥ262jKs@)hC f0bq]iƅ :AJ~W!Dۍ* B% 'mSͥŠiR2DV~%+zb?"v 쫕q0cн4\D3d ( *+&pebj7xbj\y0{ZY 'xWO/f (9?ÝC*sE~nl,D֟z|?L&$)60R%+|c2` SN=+Eғ$pc_tcv>_eG9\C{&?<ШUэqqٽ55 Cpnzz.)#`d!yd|\n.GtmtV]) N,eN/{I,r›9L|r[hB&~gd35vf]- ].SwJ6 )iۧ Hk8%A*gKM@B|دԃV9S(Əgx̫*29 { Zph`_v'JcZqKu׾`Ήe ~,P1Wu$*<iiP#ul.+"ʧ_BuV0MQ EENn A0|!^Xxf~uX2RYLd$^+]bH *\ Syo@(gYu`9s諗 BoKRubWIo}Lh`Bܲ2p%A* Y!tnOM}^-LdjwJqpw|S5רSE~UR*a@ϱ\Vtbm,a6,Оd0s1?yKYNWH,Hcӓx佻*U^ 4Ґr@+ *{5)kĠsb\սKt8HA]=5Pt[l3pZձa Wzl&W(W Ē!Eӽ:"+],|:mۣ )e!֚:UQCMA~;u5]|(OOrsp`8tcpZ!{Er Y`-<]8C)fs v$sop dTSewzf7ڀY66&`#m+f$ v~GV &W!ZmAٿ'-Aib~b4M:t A~>]XqNi97nBcyIk"xv\jnty,ϑ,sXgN(io ȱ TBLZVol!Aò4g'>Pr YB&›7HlSv+9@qT2e7фX""{roXOUCL{ʸS+ЌkDH>drDqA-ּ?AӧmJr/M(Xe1mJ/v(n\,rn8͊ 6Ѯl_7U=SX"f+ |"IZgנNb`ILY](ܨ뛲k>M`d\)Iڂ~*I6.q6?rm|b,u7 ffo1M🅶t³)y/&m륣CV O+4HsQ') 8gU'Vbf Q;W]\;7FODU2BJXGbL/ ׬6'+˕&N}D\ʿ$dT)K\@񝹚 ʐכ2Ea)v7$E~HӦzHC3 ]rފa.¾5HOJ_{iS:#БN MǪ,*=܀7yJڻ"a38\z72( o5Տƒj¼ѯp"Sˎw|kV fg8-Oz?Vdr/:57ȭ(f'Yb:3[w#2wo|vngXjx0b,ϴCAm*KaqKa4=lV@bx{5 <'.jlV}}Q|<s\p_Vsì'CJ8*A`&L)Q dV ٴYQ [c|*w2RO䰓  !27)05Yғ_ td= RꘕmakhL|.yÆPZ<[ؑ\+`)%r2$a8K *9w@Fu'`q908zr*RnDdM| h0)W/^Aʧ5xr[A.SdJs|6ߨ!?Iv`l"Ǧ9 ;swM[$Q@Os(Xi[Dr{C؟+Х&ϞoL )\VbF/ 3I*6NtG} )ץiZLb?y٤OL}ߧ *!OX}V^ʹLjU?ԔsD E\cq.(;B>]O8}8LǻPF'CF+Q}NLّr=W;,Y'vUŴgV49yc;Hcalbi&|';Ɯ8N^x igoXJGxP MtӧhH4\ 5 T7V/X CCfq436+AQP0Mh2h a-RtξOt4<;e -od:GfqhYAioO0ta*+6(= cEY0^TI<)ʁc,Nl#zIJ: .01sOըni,>1=l[\u6Rb] upY+ dЙhnK5|;ʇ +^)G5`pxcƣ|=+{d< 7DSWOul=D@˂MTzp7ED%1ۋ: j(Н2W5Cx8u;XiۢZsjS`#m $p;yŚ,^;3/s;yF*bj{i^uIs8:DG>XUAlʯ0\zrI+%_@*\0tR]Mp Fj2?5gE^>=^6}㍀x*;siܛk6vÅ>0T۳- I]?|eS~L\C30!p2,(.;6`2C`{JFx?]"m{x)n#x2Mor$*td1| 2s9ZQ*>CjX:vFzas.itk>wWRtǛ`U\N~͊Ҙ$O. i,klj+i?_.qO~FT B!?Ce>Wk/_s@; PPGJ&*^ GWh<&nH=;8P=AYV,XAddtٗ"5@{׃C6ZY U7y!iV5(0ta"N_A$֠Sm )\Y,악j _M60]]܀x3T ,, ~/rϚy^&T$A-1,IćfMP]qd0' @ InyT/h&Xb"vK48BJ8Fw,)ARdm:!+r=9n2kuh|% ^rmMn;.:Ny% pRM}}ވͼџrq\?S\zq.X. }$b> |۵dXֵIL@|2ZQrYi)~Q\rwk%g9Gs-5'AŭlJ?0 gcdvYO4SCdӋ~6K0i1dXv:3)m("HB\F6xܫ|ƨjqڗIrs%MA'MfIaA#A(me̘;zGvlS95p$,HVP t{CwL&5-,Ż 2X_Lʉ;V>qk$nwݼn|4׊H>>}.y)_ɘgbfK?dh t2\ dDd Vǚh DCspn#wcHx]ͺ4Z⨔hKa;fl6Y/ά#wT ņ, ƹRmi߷/z=Ab >1!t'&E' ;X",Mvb#3+0gxPȨwon&A_ ~zY*0 x)]c밒~)S$Xﳩ gְkr:pC&}sjJ d fndL>ŀ3i2w/?bބn|p.ed:?FET`:*j^,B@T LӽFy%zu!eW NT ƍ?3c;qq]n{ב:q˓zsMU4U BL/c$'A3 ngPD8pofj_ OĺcQRjq|JEmء7vf$D{ re-ȭ8YhhqP/Dž~ń,C39Cֿ.) Bߑ)6F%M z=s@61ٺ*wֶr=_('bPZ0( 'p0s Z̮p>txrKL3VXٸLj{Ly/9#>bjF b%Y;шR5vA҄ Y6n*HONw2IX7p EOy(E6挚 .+R;AsO Mp- p6pꮳAΞ'#,}X3V!m#ʿ-.Ӹ j t|:V4-a\A~V/+?`1^{dD{+T۫3򶨵AE}8B3s X .yuᥢ  y8wC6 a@_!Ym.UlMDunD`ſ}9ObdgjOD*iguH~ZdfiqG!A p)1TR'7B"z`Q=s/LtF Q2tw'Ii=2U 'k,vh˯IOV Op:~>_'ONwiW7ל4A){UF+EӦLGBtd iKGuB;IXgzwsO/.WM#_=}a,euobI[4>l!a^u8ɥPoeUafId EvPc81N[Iw?pgCJ_&isauz\GLi+ 2iVw)Iؐ`s</gKדȓ9*I^9Kkq#FmTo`cOuh=>-ZikۼTNWvNgMZ:MŬsŧMJ|:njek \*0" H{fvi*s  9} OiȓJľ T2MH >HC^BL66 1{3,M(AMg\wn ,{C2 Y݅)x*.`IWlw.z*Ğl?X}?LK#K',LprZtmȔޞLVfvM>k:^b*z18Z `|(寂ƬDgXmv߲W$Cw5lG4ݴvu]}!#i-Kk X޺W˶4?#toNkV:Cމ/Uٳ=QK+Bކ6%Kw&"I+#c#}ur#:⓫FCWs|pĞ&V>,pw1cOz^̈́Ccg`_G wݍX55$E /E5蕢jr{t͚.0M$f3s;v+Z-`wCݦYnuKo7ΈJ$;%170uʊRHb'y2ڣ0BW l' 3Fm|t>XǗF'EMo ںM$%f''ɚ]lx0 |r  ׌ NOSV$E6TbKuVJwf]˰H"qp Τ:rB(vphK0R1;v"glyIQJLAYlF7.Bj=aq99v:Z%_-߇rOKm{db|;c ";[Q$ιވ/t^ =kiNu҄}Ǎ[U5i%8.wYr.vYL*R|yH?x)GTV-. IjXHf8@pJI/ 7Cekw?%޹U,ߟ,9.>u9+׾&Q&M0viD~F&SFē ]r%@iB+aiK#'4Πcc,E oTRJpD[` ϲ“*Ӷhɟ*A;``fuRxsD2uﴝϕ6֠Hbnoܭ?OU%~O>58j!VCC3ƝhR: 9}n)_R+COm|I1\FcpQ~I ڀi׳9&Rm4nVlu] @vZ52U;uvof Ӿz˦n WB]p.0F;tsG;c {KE8(r򅼌#=ms`_s:!D"+>EY|OHHk(C;)wϫ:%yfޭIK4HS!1b D2eU(I+=MP/!'#c~0+@^?w41`xbȣ`jO4L%F}(Y(ь[w~i^B}I<,.F:n/pc'H'Q9-n+~h䇈.Zzeٱc7]Qm/[2T|eSV.S[': k,UK3d}Vd;n1=Lhn:t}}bCbTB/{h(V3H^ob{FoNͤ90RX2Ma0r%XDZT]cnUz<{LpUU(^Ȗ8wNb &ׄU~Q9&Dʌ셊~B2y_Hh ؤ7\7mZ+6ح28=Wûlc7Ts1_*'H-c$64{lqwp#O[i)CAS^;jMZ_<}pPTfҍ48s.+wF.{i!Tp混~-Z3X_;V"a;әuMMXPށfD7u%53~owL@;uzBHOh|b\z/f;Я7)i! iټW@*u|OuX뼩.!vfyM/E4+mЯk7 JTdVܿǂ n|^ OI~.`*фSsL젴2UZԔ_ԧo Ѝ\պ`[La>02ݔ|P>M+,Kõ1ҭC|um(7aXekJx+fUפr'w4yg*#4yaon*72N(A4evV @}|Cl$oϰ#d.A mL#E+HVy?u9?$֟3 'C6-J!ud!LM!&nYg,, ̐gkx7a> F^VҨ\3ל$]4܆oGG6,@VL@1CV`RS]Meabj`r4L;:V!|MXھ=tvY׿Ȱ"wL6.q lxptWVOdUͪ/fqD <9jw1ԗ=]AΝ^BOUVie bHDƭuw>Vu6[l;` Yʊ,b3LON|x^;p%;,?M(A5|OrC{<1O\aL$RqZIM!- Ri[bww:}ŢxwܗN)S$pGJ9pB 7`yUc;' -ﺿQx "Rv+ԱƑw& \e̓. @u!eNwoެO@-|w`g<,4FC|t %çl?p>Wy֨ӵ@YDhQ `k_1mLE&ܩy5O' jr̕S~+$(O6 NH پJvJY'-ͽ_"jޥ=]c:1<ơ"ca$= ~2EjMh1 X|zL4#=ġʔpA4E:{}+b{'ElgԘF߶,3[,T 9 X5"˛+)ήogٹ|[ֶ/ђq8ٜaIaTܛi+)T=#WR#Az٘Ѯr*yQMt[hnͯ3GۇGT8aEᦍ;p*|^:)ߟ1h#$)m5;e!1u5'k-cL+LyvmNj#NOZ-zb{5Yn&Hxh{U8ԲgڻLJ2]c#fN)o}Ӽ pADH+%*ץ侽 D@}tHMس̌)JSxaknrNqzS$l4sn$j mrLO6em~Ǿ,Ż v( J9 #Ds+Jv~(B |Y H N⦸EguJNŗnVK?:i|Z6/USi2:x IFH,/%s٧CRkoiCMQV:-V(dܖ{ELJjG1 :|\!݄̪#O .G_)ƑgV'^̞{W Ӳ龟 Df ZcS'tԵͥCUp8c H,f8WVF*s%V&Rװ>~(^oҙ4(N$qu=k|nM.WKeց#>n}{m5%WYxmy"Z?E M} to Zz217wVMk^ytIjR_V[F!] DP q/8IZX KĴ?My 1kˢB(ˉ$EJvGr##9Pd]6t="'dJU, 4Tfk6= B,S/s?\ Jd)廳3R$'t-w/15-,oBDu2j|$48 oltX_OR@۶ [Iý M5^V-%>WUZ,ӴyKj$UJ/h!ueb8S4qR8v2av#tQ"`7'T](G H:8m{hq9{I.4z܁q)t4 C #c*x"V {I畾*T8gTcQk筴j 2zG_zX|$vՙĆjDboK\ Qv,T 'Xmrf9a'GD^ӧbu?YE^ջ 3D(D(pbZL@M7\Q}1\`[Joﯷ_:@CrB-$NJr\K~%a9Ɉ7uBBBa RYm17 t)ĘDpH_n2'9_ :Xa>f,>֐wMMy%۸dF (Z'!=ԲVLuܢ]56愷[ۛRIVAо:#à<'3Q\d|l[L91ٯ9BRxzx 訽TrdT +815UMט1sit]5gݮV%ǿafw&Je-#D*[PW7" my#-p(p\O \R@)KiT7C2BFi)\PAiy/-~>=աFt ݪR zքv*Ka8pɥsc$Xo{Վ_X7pzf\V#OV@kq&=k) 2|LIAgzNS|{(K1G*Koʪ:8ՖUq T&91n^[,ז&8GpʸK&4!??L s`:c$AH:.Fzoy^21x)|hlq"@U-:8Y=:U&V}AzBȄkX0$ 3h$L{E qJܤPEz|4(MJ9F7ЃB¡)D0Q,5-0ر&{gRb< KM )THy 76K!-~rU:!ďR|qhM5GL+ ֛G[fZm܁謦-Q̍'/$᪚M/=B$Y\jpt_ż\{5 }:q;3:B/ %E< n1XLߊ{{%⸦z&l:=2,PbyAL)1iAO KDFp)J\݆|H+M.<,!oq>MDi{[܇TEFZ{V=A`o?=MBNw,xmSf%ЯeLLY bJCk~g$# vP"iu?0j|=+%D r[’0;8~E޲iqth̃f?\4?xs,uXTWrN Şw'ynccns2%81aqCF_~l#l)&<;CU3 m l+4 B9 ~+>K<꧱zIb4 !,6G!|-N#<$l wcw|FhXWڄݕρ$`+Φ 0BFC0#8ѴӰC)N!*E-闓r_)5_kj9\!tSEZ"9$"@KUpE{K:[EȆ Il ~(q;+?cqpKkEZ]WUcp,^,T!# iZma!$AB dܱ7Ah-s {D© EvQ瑧;JCf U=0=:}I7 |)zwpsM 2Uu.#aų~ EOyQG%;9?o1)LV¾Ą̇ 1RPJ2(YZEķqx `V%{P^dY>%E6#'t т!%`S?$i&w=ɉSlDrAi P_KhVbkLc֧D/=3xX c L梈~bNԑKTХy4T9Z&v}`H7=Z+ZlYӊ'u\,Ҵj\=Tubc1@pn mȇr68a`7\/>'3g/|B7`OQcc^SV3![4DžPfӛ'Vt'CRWTo2&mV5^ZϿWCu!΃بJ:yٺ"5ėH;0DH SaaJ9N6ўz]=7w ,zuHmT?Gځ'R`@K1NJ#N>5̏c; fsַf8sk熖b֧lOjƝ88H$۴7>qE[^'%Mh'cnl[dC0\G0#)mZ'ܥ=Mzսwn6odMzcWD5&bH2Ixyv3^ yZZaݹЅYYQhv+B"D"=*"{oq{/SLIe/4 ֔W0R$O/u΄0HhC$ 0BoI.(3Y+6ħ X E+Ш=kCm,B$TEN}zG Nj766å6d=wڣ& #xĩz)'`}m1LivsS?QR̡jDNK#R5xnLylfܲ$1D8ޝƕuw _Ziq]W<-^l2`?3vF W{B䴢s:mUd ){tzB !F$c1* XdOCJg {_ r߽\N'Omo֛k ^&9,VOa(R`*32`,۫l:I ½cgрm d듸&Iu[12SڬlXPM0˦[;3L-8'pGv[G])7ֵZ_K: Eٿ\vT +>mm|`9qYxa-`\V}~8u==ØtΓpU풾}Dg2݇X;Agg2R*w[ds5e`]rMF|bҭ 4 j `{27YT\F+LF$PyةrB]w c>VQh(hjH mBҪz7 zL)vٌ?=XeyaN$y_ƟFVy#G AU@h<SiX Wܰ+C@` 0w* u(C,U4k/Sdx6PkQlNH^Uq&A | VYiR2%TV6Y%,>exݮS YXSty8pmʒeO] PÓ>-iŲSPͳ;79zϸU!ˌ2ŲA)N)ѼO@n!5+0P#ӟF>H~-›`H_O^ܺl"u"!M&Q:6uuQaK)kըǢOIS[aOP95&``gbG+I{j ꂺ˼ġ r5pʾ\ಆΥ1hXY,{ XULG]ɿ:u0 ƞW3]c7-,%xZ~>wn1ه Cd}ˈGpcSAFy>v$<NhtswkQk-軩z9>EqT5LROš#&814'Ϳ v4>wzE~^7}BO QL83Unm1^Ef98k}9yړab`pME;[K4iMA3)+X-&:R/Qˤ;~s#}m&8i ={:md.Zht|rMhX8#mOȍȯTE&)iMMGRK7D3 3!P!bU?q $-}%ѹ[fZN|xzS Po+\[b|ziƠAT:Y_U7x to`Lj,;Ey|*SInN wu^)==w+03EԆe90#%Ϋ90޿]5NNwϔAq]̑WTbm\/q<{KTG $#gΩ(JG_vAR`-a9mh#)X+ Rfi@T!!OnC^#(4++(6{e Xta?l>Ӊw&%ܐRrQ"fe9y{,4[-ɠ0itXXlzdXF[ W)0%{{ iyo?M e<+ QJ8-{zBEO>RPZ`HXǛuP? V8VxN2s6x$R\EO-K)4e!W8 >y)\bqkN< ʏO!. ]Zp$Gtl. K՜X91Zwm&?|fAƶ8XMB WU.e&(ewPpbTDy4c7~w| lIA-IApA"Fa`~"Gf2Q+M$pI0@ȝ^V6Az>C b*1 65ǺҋӴ\vǏbJ$`}R蔹-8xTBC4I+b̞Kb`JgKPK 1߽j߰ 4ʢ-\BBLƄI\`ؼ5w`2xZ # TiNySt {<6%(~>V& CaMOZ Xy3(0AGҝҞUr\`)&'flk=^(=(^  ޥz)I9~fe!l\AĎ65{yFf颰I h'J'k~{ɦEu9=)nٟtDwGb#&kzbR8N[bvVLTY)^R-;Bˮ-#c=/[^2?|z~eD2+[n3*Ԅv;PaINpF2Xm֔+[^TT!s'UQ[ |IZN$=d>L(dM@3}tiQK+u}< RLtc2I\:|^^H:_V D|a.X "}"m@>Q#YTm]>8%o%ns _$\G\B@wz9`BD7}`#zQi os p gNRu:+hhp'`DDl$[7pWQbofK "f ~M S-~Ym˫VG_; z[f* ᢂ4_t3ƷՇ Ly飞3FdX 4/1]\= VRoDc>F&_l7Oʼn/J[qwk6tdSdhq14F.)lFI&h3wQffƄ\ {FjfQoz@XApIZpxg7nh/8r \$20_cF9ؒٞ7>CG$by2?<|RL޷>xA=B>H9NEwh NDߌɧ3)G/O8d JءWy}<]1q3>]Ue)l M _jE /:Z1;7.(#WԴ힄|':t.d|Y*&THvJA̵ѓ!1n&d2 %qSPwQ{^Ó^᧿8 WwBNBdd^?k| ~@Ms8*=iO4Jݤ`yCHPKuf!qR=ѕSz'[0ϳx!FCi[짓 Kk ,s6#uLpiMR;h[˾4jߖ.q6W  wu{]91SS%oEItvajJcƔ=kY*BigVtqa5"c,N;ulJ#a:!-lwXBpeU={}u&L5'~Z6xL&EL3k`r ~W <#OouӢAɿ͢$(֎#C޽U3iO/2: 8nJ8y&Ti׋pe| mujpE(/  SniNchKE`(ҿcX2+n>nkNłZ18!:;TԐa=HWf9i de9+U0 ;E<׽SMRGFx`Mo==⌬~*Ǹ ]|">PãZvlLD. XEcb&t:7}U@]P#Pz/SbjpIKs3/uAYK ;3`0` *נHgARwp8Za1Pw#)pؖ0E9`=PtǗI9ٽwpGHt;:BE7^(?bWBF9zPz,N5gQq /9ee$+2 &ى"A6n2Hqfwѕi2~h&"`-S[ O]co!T5v 5Î>|+$S{?ޏWbEPg'!L},DRilw nfj+*s쒊 ˔ =/ pG!Y'8uՎXY;v;Ǫ.aQؓu&ѽ6>)M6{릕?G2 D#J,xyE\KvЧ^oϑo]p/xwqԁswNj|iRKĵY'5j|y5{E0\( ff |&CyHH {?M{`(= J1h4?[b=q.,;/)"Ċؕ&pSE֔EfȒ0"9f/0,mB =Lt`´¼1YnR'o‘w lc:XyVƧ~BuZ{zL+ڗK_,UҚ*j`n!Ub-V;lP(8nZغGC<+V]bzStcLlj%+c$> 9'j,P}17S1PU({(%POOp1$h{h?pYtMPN): ET1Qe/oAK;k϶ 7e]1q[o+OЙP6Y-xܣ9_*_uՕS)2_5hAa}l d>xLYjYQOes*oc^$%\HFҦZ,4UF3̃*1cKNaZnF>v[K2ԫ? !mOl{9S14a,0ZC`6] 94y?QlDLE.9e+b? `r;Fu_K ,v+W/ڴ~5=T(:5 Rmnο520t'VrޏE[Ht܃aeH vB| 1~*Z_FscE)QSzpHfxF; ҧl"6Bƺ=NL"1[Fօg]ayo )_`V[_{^` q΂~xԽl-b?}YLxq Ɗ!@Ӄf |*3eaGͷF8G7՝g5N!ȫUL-wPs3b+E̷z,ޡ艨^ FGp^ֻw0'`px>q"؎y07_w{:MU:%EF;cKܤPYe4#ޝ gDstE8WPD۬4ԼcGd*OG:Blq4vV*&y5êb}SJ߰< x c:Bhh& k蘋z XfW.>#όFx*J={@P}FшĨ0t5:^Ȅ0QC]a+oUckap8Ok'G k;z:(*X…g͈93?I۝@ VM삸BCyP6fƗrIԲmқX_}%0Oa_cUހrCE'nX#Nʬhy l}}~|V+ MfܘGb/|>Pė) oH8m$BPa2dXAy|u )lM6 ci_2Փucz}oc!˴?ؔô4Ӿqg6gQ֯t{.wpQ=9`ҔI} IweF(J,,\xu6x yܒt>;Nf 9ڕۼ\3, |Ou\Pb7 ٝ@1bյ*2zoR9%i͍%>r/A74T-$u`+76,LY\a:uZqBPˇMwRJá7u?Ee$UDZ WvA١~\ў)JYQjn 6D˔j%^Z=˺1WP;5R$V'/$q,* n 0~}J;J{~/p#AfBNq닻#*Wr&0Z`_w@??[!R!LLNroqKd,96{; [G{\\4dm"3rNd{+@Idt17+:NH R"v굛7۲-DLj`.D7]H~k? tl t_khF1y!j4"ͬMckn)HYoxFU֧brq?"g֌M_Z<hC ;_{0تݚ[Mr,^dXQ{Ԩ 1Mo婜q'58e36A\}@;N1zOe:]2&?m@!3DRS$/,Z3r(ņ5Ȇ@? p>}U^J^_j$.~6L/hUHn5{;-C2K-a*g5vq!tQj(jʵ/!QDrd l2vˊ?t7[Fh  -[݁#A$6Iwvr2ı G;L;IQȂƷI><0‡šTrm❥K4V:}|Hc1^uVD B`i捩Q $>9U^(ZSNiq{_i2QBx=}ҧqR5\59&mO1.[FSZ Zv$ymW XajC &+$o(Jw{T,]g*ngX?Ƽ$TZu7hnۺ>].g8I{L1'*$뼑}YV]H*uul|dmECվt*1~ #EˤtO*}3ȔZq%=yLli$՗XSmVqhs#M8k/)պfZށ #&_VCclVؓVyVܘZ< |/7\ĠM ݁Q o8@偹ڒ4ۀvB~cA$,U xST][ 8ZiU[8Rfě~˹ɥr| ZXQwpB2ø d[tštnFtb[ޗ#7&+jg~S S~F9a8 }'I6} :"ʑ2Bb߅s8#vGRS`d V^^msAH|>zU<@2y oQ#t*qu;)H(]Gu:`ʼnd{|X 靤0Em_1_MKlE'eQsC5oi?YAfM9oƛpG˜;mn`7ʬ 5NB}eCW/ >L"{˾C{Ȥ w'7-LǺH%:-Vnl Az8ib|PHօB1ٱ>F}=\ѐt,?2y^@H"$Bx2N̜jv#ޢ_*.zJЇWpG$>/M7GAR6Oq3sdK, N^3tUh u}Th#DK@mNxwsQ]olp.D;gyKXYnY~?bv.>O }GC\Z-FM!7pRLzs"ƐFf A.rHiN1X4$B5?=o"uVJ.ZTꔉ,Y5K:`ݗa0fB5X&q([Fb?4B lsEV]ۥJ1/d.bu"wV` Ǟl+,dXs0`:_D&ݾElgFā[\j-;:Q#)wg:3v g | ^3@!rRgYOE@UBz(}C_U {WHM^Բ ma@kp^Dpw9E8W)gg#6y"W Sp\lZ"[.Ι3-/X0HJ".pGґk3})z'_gc,Rw I@|JĐ=Уjq!Xjgv!%{MkklYt'Pؚ:\yt<"T躏r(jEÔ@I*1KG9M9-:]Af|A u4݌j<-Q_/cRʩTiS`dʈL)ъ) UG1 (0%E^,S4놛fK ]ILbc]fk4w@0&1%}꼣ed2CM/gS-`vB+uXU=`tt@ u[vJlq\ @l9rW_GL E@cQ+kp+RX SeBn%tbWfYLPU?mP{Q(-~"Z@O7S=0[}%NeihӶu=/-6НE.i6p73Ѳ#V@> JMW,?T]V;+IloZ!xݠgP}5QW;懒vXpS`_x(? n7V5z,ȃQYEm< 6 Wք υ}ʔ-Ɣ-ru969zC3. =CF MTJ h7=3Hf3q 0V7b ? J,lāh>a JSZH7ڕJ ܎NeK!.1g5e^adw2` 39>MX7 }.Y_]' no+?ԨW#Vpc+2wm\pnSRZyxA2D {nC-05G8P哩ߔ)x" j!nn+C_Jx~S ed\ A{/A $Ӧ򂺣p jMѡ&R)tqqgwz2InXhsZ2JTɯE\/9؛w5.B5_ZSޘ^]4wU&kW(3Pﲮ2F[>2#l r$ c'\Oý)COQ}SAb`'l6(dN9z,b%!:Թwrr:cQ4*t/>s5`T' Di[Z1ACo7nyVGoL0l`&b"`B80~ڄUFsX7fENaĭχD@P9%vRztgcSd/3~Ӻj֠ˣK4g^L5g!fW ;WZџ^(:le[p_#T/!1wYQa_@>AC3V1C?$ʋ+s+ `ԛfy:5g6d,X,xE!p`rt.0{P-5 8*' uctEpۗT÷+9WҴ ZYWfTrE,xW"(Kt~s%Kpcψ;%\vwfh3nPJkX`EbI4%0yv.갫(VYthcIKԭlu*ܳHQEk*% 6nhʂ`oyt ~ 8~|PEe9AshAMCvb°!7J%iRǡȚP9UbIԥϩ ))\9o*Z;@?*':d" 9Ť(>NLC+q}J6Xa+4GLUmC\Ԕ㒢<ּOg_H 8v,Iqᇌ>fvJJW;[x, F4K)aM`qc6U!#ck^:$(J622/ mP?!Sݽc7hz>E h84o#C!(isc[q YIcU,m*i YH\gU]i!< K R :_8IeM-|zw1ע\ :˥ z}˰k &rhDAāI/=[[J4WKzA3)Z:ZcN|~y`0ieofaa,v`ЯTwWDZ<׎90кcKe+r;0m7H{i15w1Vm^)A. 6ͼ$wN H> ULULL d\8j5Xְ߶-Y)qU%_5ݚgi<<@4.> !c %䩬'j,M\ASI(59(˸r~H庍.J,jSL65oLpD}Q(-^fk?Hrޔ?pa0tdRp`ChTH.)u9̬){dhǛGdžzlsׯDXmER,_Q7od/5RXP~ά1'ґA xu3MM$D CLa5.{|0*B`L`5Of=g=o bŚtEU>sP=e\ l-65J邗ˬL;Fbِ?Z=:=ŧ&-1^d* 'IQ Føbʋso5}"k[ ſJҤq(GAēYcJ#}m9s+ Uz NJMAGGjQKN[AUSjL`#2Z&4 Ű&mĤF)P>X⁆>2c8jpAI~2ϚQcM$WTD˲x0$_L0f^>9 os$1ww(N!ϕ8ǔ}ݚ`74~ wL_DJ6ϬZ%䝞1[oOBś )y/v2ѿawْl]{ҊR?JhSx'GDT (bL#)蒋bsx3G(.=$˽@W@b#g^_\f0^.pݞ ?-/@n|5\A"(t&lk4C%"l J6$nʦqCXMQ/:(kE}lF5׃]c» ڏd))k>w%]>+`IJk>NQ,)qz&twzǀ[xzS:S Z^Cvńdw&F3 ʒ.VEW(]^L] ` \|Q̿[?ycVF[q20^%)V'. a8sQvXSU%P,l ~*K1#ņF9t^8vtx'4*&41_+S)btɕ.k\ EԌ\O2ѕ͚1hD|ŢSJ|Wxz_["wD .3OQdOϷ ?!MP\Jo%&iGF5]_jT*hwAz]52<]s X&:y]$ȐCw:2\ILUhRr'Z2x]2;\'iMiA/#W%C:=ۍ<*D\^['+z}Ʊ_MCqp~R- |կĝDUty(:JcwZL;} ܘ^A;4)\Y=)E7l7/tڬ?cL1l-`z:)D̢PF{u9Ze _~LGI8)Y0Ml6934Btr^NClT b rsSZω?vRL}u$,:Gڱ/Xj9yhb+3ID׍m0jN\}k`}BW_X߸ͻ!cX =s= rs\4u[){'@/k%xM!v;wyjYPO*AE0^qLIn#}tj0Xu4,[*A)|-퓣8#1p{ f<9^_ FIDuɿ&~tѿ*~)?f>>6@AIH,ƑdG*OBt.YӣXʥ@ pqEC BY*<=-ԕgFKgI*GPZ.?6mB^k'!﷌A@8*jl\UDÖ՗~BUƊ˝S9~3 p^pOW" m#_.ď=AcaqM YOu_L)4X Dd3NgӜ mD"U{5_4%7/=B6[2B(]/T[3O_j\uOX[;nJgxVQv&+W7kd{*- |O;&i3DMdM V HDT_RAPN8=iEǓ,kKML~Eeytfpee,YG76ա mUF{#$]kHM$?Jy̞[2Yx:@ؗy⤕l:3dĽ#ـI1%>6DU HLJDiU-HeʤQ. IsRȝ |@RҰ?q M? DuMӡP\=W?+o*feŇS[h\)W- =kbgA_i$7hN׽-BV^Zm@5TQC*t{::St/>"}GllPVGᎅZuh;/*NM~0P@ʞW"qT t\BŮ  `G* zXt]+*|1ǔP&s(y80L*2Kπ/t>܇eI,1|Benq2ضb7}m<َBu'W)m5mq|EG="#mkFNY$49<(`,aǛQ ĉ b qh C@$ 78"VWqu[hLiTg UOsy`ñ{JC/;nƴEؼF`anC.XFJdN>7v(6s37LJ9z+`E <ռ[+t(DU7"-QD(A,`}`SVV@X0u?Grc`r#^Hȵ! fe1 &U'I0~MfО]hu @^Yy<^ $Z.[v?%Y|Yo7 ׿ M省|$`d ƒd: c_Wz =^?9H0 :!x9%a)u%ZTz[J k+5&= -5Z~^F3m`EER?-o?)cAo;c?Ʈ|lAo ] zb -n4Bv|)Ee1Uwo Z  eM#^ %΂XfG9fsBcH.9kYwmOꝣBސu(i-I(|TKzo Ebz+i63:,n9/훘86,gK:1%V„RC ʺ7=bVb+z?#`&|#Adȼ$xQѡtOD(px,@Ov}\"|vtL&&}X2_i(٦L{}ʞ`{wލd"ҘoH-CGafa⺧ u$vZS JdkV.%iZzRVrs Rq!}2^<@GVю!:hWhk8[܁Bٟ[Qڭ:y64zj ()Cϼn.)t^Q A%"kDL[՞]1:/.jC Hc!:!3Y``ͨicl ~l;oe.7|A] stV⪂K 5t\ce* 0 =Zj(z Hߌ/ELw~DMKpܶL*Cܔ|%$ y>"{#H ձ]Abj}y 2Ga sܷ_v="ׂ\7(C[EZ?фJTeoP=oq19On9V\JY0$FlmgjcK C )ؚrT,toC٤;0F¸ry  '̷05=7Y ӏR וj!F=t ދdTZt/pUo1ر,twB*Y*K0j iBVf#㳫 MN%ߍ%!K%e!t:-\9hqG}Iۤ 1. cѴ@Ϛfs;\Tz]xD[?tn0u;7C@F$/Hv:\x.&'8wOv|:~(ၴam5XXE[uL>N<$8%OF$!t2CaP]DGGA3$NA[}qF,Ƣ ͈}:jXKtۻE <wʙ8uN`J$0l_]wmՠU0lm.<cMKTFZx Ir*Y30QR½]w98RHfT41r YaKh7xS#Z .RZâi5#32Pۺ߱[`w-f|[ r#/*TÂt M9Oe|Nc*7QnqofΓXېow[iaZ7XDNJf]*G >E9hsrUWA9b! LF+J ]16ؒ_.L$t/A5'w*_NDT7Z:-n'9H#(,W:jU| h%!c}wY^"sS`ۿ%W]SyQvI|!_ rO1_V-=}brm,\qW!Ԉ:S-Ld#m$6j="d~kt5Ȳ@4t0f'QLD/'1cvvLJrbZV<43Q̆lBI8[Dwh Dw"٘÷ ;2S;-51=,dց-$.V#$IMp lPfߛz綆GPޟa8b=͎JQhee&w3(v++"(s6=eXJ ztoIE=k '|h¦vT~[˴0eS YMCv5>IZ(5#RA#e?\܇Ww3]rJb52L2n@NTf3eZjdh> I{O<6_nub&6Vo0m9{}IeQ7'ȗeN0ǟ& (Ɗ힤-x5-a c7ymFa)|Y!~V2#z2spaӾ}b˘^E ܑ&4a.w$UOsr".7kL[5z\ֻSF'i=QEov/`˻?4Я4<4jJR\P`ZU7?ތ,8aZrRuV"4*EGO8V ޺NJRj㐾V96XɨȦH#@:4\Jp;j;ѤT._ =h+(D/sĥMq~]1pTWZg0D*'n̪bqrt)g'%\AU2 /V~Vt՗/ALÄ fm5uLu#) @MҶ@KN@2MdV)H a:5pÿ/s>y! EExko,?9.}-q Fe+hyF;%rBE2_cm2s3$LU3A\ea`\!Ybq#j%(% C'LzRܡ^dٌfhՀ{08}_yJ&7Tm^8kGI?qgչ~ɎÊH}`o "le6&b\z=u)8n&AN?,Qd=7Y{T_s*\.ietQ `' hv-3 0 am gw:ks,)+7iSօ .(%w={iv";xHLp n]說=11'-},M\ڑ!QD Xs.Nno)US0u~iie *QI셴pk fIپIHZ8rЭҗDc4Tw:/FP=idT7PrGiE$#krd֮ *RjZZJ|\{/WX,$ IP2+@noJ&(=EcE Տ\lA2-dT?oaBwij; d`FdX<8܃Ι|V͝ ?OC1ךgnxa)SfnKZ+:`ffs ܒuL~XgB $/W>I%aY2'*y|0`8!,dY޶g*5NуW)1ԏU m#3B9ȃe rPu /b Úb3 rc&sxл} {g[br{8 rge,#IlZ%L<72e llݪ;85~xC ~}$yd)|؇`ۏņh&=0W&@,UX+bc&+{Q"Z^z9 C;K~Q\0H3rOśB*`] 򬈧_^5y_nJ=O5m бk!־e%' @{7X ʡ?CL%̚)[/yUh4ɖGϨc=&$Yh4߅{}y:&E3d&Σ}/YIREыz/84fv=BD6Y}1 yb̡_9%NDP08gԷ!#vh7$ՓDጯSS^oN)08&6;3j)'SoIG5̛qgRT7 dǔ\L(9YI$4s?!-.SuFr#n&WsXroমrًy2]3fyHRK7gɐ*KXqcu hy< ǚ{83X`yǦxS>ʒ7ns˝9"Pq~Dd$T)Aέ@TuVuQυP홁`Ih@;'mzarit_c%lZM5p5cqĠf*:MDcuX)LRm ]j<QW@)y!)\>rzȼ'DXp~09dO;AyQ ƾk{/.P,f5o+JqK|,$~aUG q~gdݨ=st eZYr[mJ^dݬk -28Ȁ'e9Z;.Gy[:D1)j# ,smpELlhiRz@Q p5k},fvUv-/zTk{Cl]'`X67Op,TQ&ImlkfEfO:[~2ԇkh䯱rt ²V*[@k]ȣ]{ yh=Y~Y1x/fnmQ k ujkݮ7{AAx ՊjK?6}?'yҒEASsڳ5CQm *,q>v B@?coZXMɝ$ wؙ=dz䜱:&dW?e,'3l]^ UqZF ?YP]~b!3GB'ihE5{zbT -i[S5a|"K &2z&Va==S4@yN yRU>vǒVKB"Y~(MT6KpN\ӽ0Ԟ npMHǼY?aG 4%ݣEyL k_$CS~SR.% K¥k$ /H!L:z z3 ӌ_[[Sk p`@Ǹ/3uG?:RdD`'[!S^|N:V4/ލdkA9 nES'a[n\ 6OG{?$v.Ne:xCWυՒ^hsb_@bVf$Oێ:{D9[b`vz|> ~6^@h5 ISufolAiu$,DyjE 7&SRhKO[c=#RM(<y;מTn?1 .qOMZ /ϲ}#rZ]tdL\n1q_rq ð#\@ (j=T!B}W(}ʒ= ƌoZ{Q.i/EﺍURi b }\`wsn7Fb!b+j\ vekK*[-NVPځ=~<4}-Z'Q;+guQN[kҔ{W9$gR' fBO=4vh%r]ǒ6NG@NXг4XoRElt$i9,#sXBnK:.rCInlP\NHs0C߀6>) vZ^~o-ykE{BN/7'6{6պnunGo8L:шG\N'逜=;QIcWfriwQ >S̹=S)ʇxfP+2R-]e>NHUbSn$hn6fY[RB#! "40Tth2c VBrn/)L<)/> oif.mњ$ܘ Z О<oM# oR:h4b\\IvA@|DS佄-巢H~хɫHlUEv7+TBʳ 3/i{V)F$&rECmysu5[y>K+ɞ&vcy^1X/Ƭ!)u.;OG[euMdhUvNЩ+2LVO0Q3g\H{(bo}y,dzy\|OgJB0w 81Ӌ&գsc줬rq[!npǻ9?zѹore̖)%r}ԨS314Y(; (eWL }†_p+o/TߑT u9tHr+/;f"\]Q$ ^cFU S!h +Q!q=9<=I}gu`IP)5]Q{(fK*l-,&ܡ%xƺ@JxjȎl[-"o6oo2!`£U{쒯֥xjEb.4j%C.}r1-y4I OZĶV(dj1? dbz15;O uvwfy|.s\B׀idܥ ޙA=H.&'yTwEwKJ80yRD4$}0Udˈ I$A0z4=t 2-rʃqGJ&e9i:ۈ$dx+s2O#6Gʤl(^ l/ata%SK؛vdK<\*vg#HbOP4  /P1I*|T` R!8E^zuq:MSrY\ w!=FvY¾1HY3v{sH7/ӺUwm(3sod RLzp;I8ݭaU,Oe-5s'=/ԉ#=p7~)iF_"+2NZLDذem_[:[&Q"+&oV0oi$ƯNζ!τf3!UBT/:[k :F5h:}ԮOSEGllc^qfE_b+ܼCP6%)3. qL d4}h1|>Z"5W$cKVGi䱂s1:zk<K{ "l{ScN(pέ~#%tzEeeia XI= !YP_J¾(hx)۷3e nieyeF ' 1\xA%=Y>g> ĕ@[{IW˶#_,aSZa1CԿn}l8J5MwX,iN$#^+<X-7mO8ְ@Xm2{TIe?,h2:/'M2Gg\`ۦwEү!Q:rI5smVYa1ã^e%kjm4d>mjriom[zKHgdduu vPޖؘy;XDKq &Yp3Y_U5O 5|lR571MZ?V^ZgK1āC]ttvX"soW&FGP2^I""O4".U$J>v%N/0- ;5! 3H{08)E_POI&>@ D,y_ 2^Bv~$6Qx&tcܰ37(1Hj^ki}O(5 <C<+Ad㧩?Nx. E % M|) +̅bG+L^8 YB&`@9?0ݚ4sJlSyRM=z-&:Tvb,R`u GqSd R\ϳٌ6v H֙giui>a6RM$&vn*p*NMqˆ̖`P"6{rSB'Z)kNQ1A4nmy?9D[5lBdW|@B|2v 6*>yܔn H<#;V}XwfIpCˏ琙' ct+=soט4@l(A? Vr8^ԶP %Q8UvS~ԢC+I9g1ec_ԣXA,6 #KFoI`@DEq-OfK7Vdb7DIK._LiKX3OE"KfK]4ƙHvawN o.}S+=PPXYp:lH?#}=̆2nv/gMXͪDl߇48j:lH-@B3i[v8dqV/K f2Xl[/WGS4\[3fX]Ϯ1.6zi uZjJ@?:/*k.@BL]|eG7 +8([ ڽ,ݠ ےa3(f ^M#/L]L*}KE)I}ѿ5\Kr=AĄ. )zoj,\sKKB]LT}=6B=R2E## uVu*F_pvb8J)0C ư1O)szದ.VX_0Mh_ %q:|=8yrdHΑ *1̯}I{[uQCUO6T(tSF=` cp _Ol*1K{KW\/NA}z!wO{\ӛv`t`bNC:/JfqV3)]z4k=LXx @%K{V1xKS-Rڱ5"Kt8;6wM^lt"|r0\9B9,Hݶs#HVK3x{NF` ."EҰcN97 Z, ,[/EIsTI m:.H ՁjP 4+ 6k @Ts}O~:rm&HIvIў鳣WVdAo 6 d%U1hZZdm4ƨ&2 { .dFx1',&yeeJOdaC c[8Oq-8 K?"R"/akr4M=:#,  =x#׾$)YDt뀐:teV\Q6N]],oJ2.U+ƽ|xCԚ>|=dDF_%G1? t#%+Pp+5]H7q!}qk{ޕϑ_͖R!~; YZ

  • PŘ;_@ǃT2;UGMW&,x0ܮB̕iċ}r3Е:dj:v(]l)m6p&$[L,7Iש="mum5^ߞjo;h^=xʃ-]yv] =SAk(:XF / yj*%,ەe#U V>qͺO*}#NWd34| UpL u;5e >;/)%l;]AoQj-ͬj`¦FV @B^ohaLث]/rc̴sl2b׆rn05ݺ7H+5cc(mgDf^/eJnmkH0qXD6 TYgE?C(v]%nC66޻os;CıUUʭӦUfP.hpuNE[1ȍ8F WF/e`W*4;Q2FȇzS eh[dP?sƯ{mv2stE 翃,$Em%.Ez=D@t vebc}Ir~T3oPXfPĞ1 *BݦBdS|s򩜿@X'NMӦ9ҿjN& ?465K%K?!aɢxK F&j—P~W3<1S4vs8m8R$>cxB?vegaюZ[VpD#(Ư?@8uw Ox;ƿ?O(i5ep2j}~)11зDGur~ (4e|=>|Ytzcj e2KTɀ)آ qSa*}fɲ~ʊ >f cvP"kNF藥Зe&%_"dHSK B\;?~ H5 5ʴ3!ͫT{˜qiזHɂULȌO;_?Ґ`KA&`_Hw!%Cg71v]0lI%Xm쏗= u: Rx*ib5;%rh>=88#xDvNQT[9Qb bpx};"Muh+܌oOSKɑٽ>M8aϻHpP46}*`eݷ+/:o~G~|_NxrQ0ZbEpI/\:-Dh,Ĉ>]HvǍĺ2 ׶x`F&U 7<hs>8T"VTMQCCqO\Vpè2ἷED?N좕EWీ1@;%tzWdҳ<-eчP<{ĉykh2޶Eop, _z4X{2OLk$-Kgw&r"}M_A. 5UU0P~DGⰉ/zPz@#ax1gn[U*[:ųuWw(BiR-k:&;ko:܅hu@ MڜXW MFE&P~Sm0=܋SIp.X]| k#PB]FF1˟$ŜE9dv!׭p ;fQP%DG͝{:K-6B|Rmr# {,KMq@U|gLٸ#f>tg_ig9쉰E>sK%„s M4&B'yR3Ix-Su_}uȱ[]!*3SΔ[ R g ?`ML#AJt+4eնoDu R^J]$X,dզoEM4 {9?IߑÐU-<:;')ts !sʹXj^5Fm+*)Fq}8o20W.ǫ-yîIˢ)X[؆D1fhڍK+>-L-Jމ&ʄ ;+L'Uw ͕#؊\RCD "ҲOCD z<~PXr 5ް݊[mxL$pRB|Z!CV.̟V ..qx\ȀZł8X]08)3ޑjs*xӢƅh~GFD!' RG2'}"T}VKXNⱖ~" @Q(PNW8JkH~CGlfR?~rܵRYNv\ys.w -{~I\ZjW2;;o  i;Nڨ!ϦT6ї $HGA[Q\TҍIlW@vv} q j ^q8Zv;%D7|{cG.P@^(CYx@OSlOyN%<%#^/䛿o"?m_I1LìI J+sG<4G)fw5m8AZ yMcW@'[E[rS[X21^B "J ^ uo*򆗾W~HwfK/IjBO40*ZMt2X&%I+lzƗؓtټY1 ĥ;Lx<h~8忦MC'm<腼j/i#zi t!lDY^IRʆVN?*R,]9؝z30B~*x\@V @ۏዎ?1%LS>i1\p˅[kGK Q_ȧjCPo6XJ0?rG8T:<`Ʊ3aqȡnCT':ג:Q،Q "pZ/Lp_sX ?㎘mt Hnm ^ܘij`:% S!X-%r3l֘\wׅ|ʎ@͆Qh7nD^_iT GgL9A({+hRNdY@6/9z[F眂~[zޜY0Yɜ /K`XMN:oGPx} @)3\pD`7Nr<B\D`w5 G %{p7<"‡y~X~W TmHE_  !&QB(;D,M_T]ФRYe#lHp!-i|CwoJQ'ƚ3dt[=0?WU'Vx& xXлdS`9̅1=gBXG= ^=8m D]V(>1B&yZ/:dNϲ :7ǻi ~<="K&~->ƶ=/j*vHS:0J7wɒ@r6#n9Z ՐAy~oK1/0$ *ygDr/h>w*oLKw{Eš ;Lk3R :7޽(5<_+eI_@iz6vB,E;MKPc~MLqаO>Vmܯ^߬pdqAɃt8Lp:%ENL:DdML`mذ\=vޒDi((uTܽі!SQ]8_yŤeޔ)~;hwn M-ׇ:e>xphF0#:HnR+:Z+EA~pKaJ!`ٵ-=&v5ܴ7Mkq딐>xir6YF=ں0TY.^dg*of/mA V 5qbNHLR2&;!S"8|ar"-1p,olME혼@gўZO3j_ޒ%P9ŏeV2޴\fg\di"n)`r G#_C+gDRJ8ʇXEKlL$Zzjdo{Y:DS+ߍy5hz$Wy/umOܢo gB`;mkrxÜ)I]^w,_6R[V"'DVf҄ A< F"T?by6`E;O<"* B?[r}:!Jge ?eCI|Ďu?ALjܱ%#na ]]wbyAgdϞ*aXF 6mOA~qfO^Q(Az[GDm1zrxwP=-Iqy'>n#oP &Cg\36<~HȪ)Gj\8p #kM <@~[)2YCO\--W69`ogѸ`:+"OTc(PV Q YRb!gVՁDYk2ړP nLlT]! ?wvjYP3:+s>Z၇-S,șĄ ,zb ./޵ ]!_qǨ/sjLjSekL,=9n#<3 5<͟3ADo]jש,QVBǥV6xX: kޚrIn`ǎ\ԹtZNtOdH+lB4mE{EN쌳0"聛jǧmRsA$ <~6MWo@~̾b?vxSšb1CD1$a&gPy:Eg}(cE@='@"j; 3y)Rߎ#MosorhÈyKl9q=#^̌j8"7"ޱ`r/Ɓ{;Y|zc;<#VSFO_¿Ewڽ!Mtobi5ҩ{Q}C^N)cQTJC?s<"UO(C&Mm/~'h/mj7#o1m^h|@ęz.GO4X$.a~N}O֔` 99OTy=V{ǂEժ=]gMcT lfüO<*0)}`qקE(/y/đR.Ț˃SSPoe?[vtшWϭ3jX&*TZ t70*0 rᄁ)V»7яm|syCIC0`(y?}ԌR@ 8*Z4B:PX*nrڢ$< oQ5whrR\4N룞 ŝK$=;̻qr#9Zuǫa!00M-[wR_1Hq+eɚuv@ Q\""+%Qd9+(oJihlGRRPC4JdH؞Ͱ&Ig5;.;fo7@ ;Cg'9`!`©z;)Gu˜m*ɜljrw(J@{}ڡ=SC w(.!adn߽8إF)JWD5mG0EOr_]9ZhuBc *]ɈeZ Ul+Ctp lɅU⽅3`;IP4gV+R16ͩFd*¤G׀2s}UU)҃ISi7$c^ b_z&Ws"1À!*:?|cB6;~jLn! _bd(v+ %^XqqBUB_݌ONa{DW!*|!i*+: bpep~k+bW7O8+{xA^Wj$vCbMkD]g;6 #-W4!dL7kkF=}^Ͱy2y^ %Ho c{/j;5J 9&=mq|X\7nphBV~af(e{&Yw/|g8fKcSe>zN?4u>:lPpP<,Fjblj뢷x{]jJIR<騱6}ݳ]'aE#a]ӛi7GJb}ͨVB4I78Rk^pZ@Jެ~̵/+++;˽HF3iyǹ+VC.{$a~JeTZgG]: Id<&Oo~XLqGT&3lc@f2/cŚ|wS\S_vSb% i:7hEr6fsy_bH6-P[m_n9A"PN *].6F L}nG䳪Iĕf7~? UҝGN-ZpN 5]B#8l˩&G qZԾ nq7"GE0Hs-ؗ{>eVg5@ PԙOnjABmOG'pV>/E;;ږ_ (úRugˎROS3QjT˘^k3uc,ɖlA'aN4&;C߃{ܟ. 0]%jso?{MMYx!e22`3!k/0H< 29YrBgWy ,, =wqnn1Jt,i}n)1uS p]%2߾:SukJ& |/륌?AJ"=i*ÄhցVl߲c5Жb>eQ0Ky'atFr~ Z Ppc{>{aV;\Kh䥪gk@%r Kɴmv5jy_ 'Q"W02s ;*o %_5gYiߒiI.,qr<a!>\h?`_Ӕra]iVn1Oiu[‰>}\r' _"3iJG5T꤀(< sS)G 4HwAj%S{96g9LD߼"ikc0U{ 96 K}3<κ3*=\ͽy=z}0(z4LK85m+3A) Q/{ (40ZJ[oa+JI]r4E xu5@l>2*V7k>NK o:R(xp32A]y|VWS2ZbWpxVoK Vیp:C>zSGgYV}.+nXr0{ⷺu{6$.k`&xD!t<<7 [6${4_b`ԢP h} |hE]v>I^R7!ڽ`7 + na;'Z2.gn3#.KFܕVkFPp:)Ahku)5N3W|v^K`B7Ue/Zax&פx2M[:ҦVpv;Yf:c: 8}{t.40ӜP j( u{6vSԐ<י/v6zr *(ͩeʽ'~~f9`ǜ".B. fH 0Anh1~dJK_Cl(+m#*fZ4;UfWgiO2^"Qüy)̺ٙ0_Csj՚sAL;$4)R@3;hx?n vL--}"A%}8*5.ҳ \,P7ai0{WSPlfz!I#JLׁ 6ph_]̭i3PL 9?̲̰^ Ӽ5>w (*Adl竔+zi \'ZKOAs{a2ߏ`Jh@R-Eհaf}>OXrnH.p,#PZR3{#vi>{uU*ߚ%]JũRkcRRD;.L&5$lόQ9gK,Jipqűi¥yܘ 0(>ӔW!ȍyHxh| MeDrrKw1{D Ms,mr<c|IGxiVl]Znx-8#u xH>KH+eCbV {ץWAћj"%B{_i³Ff:m:2S]4zGͼA1[\Xs ﮥmV(T}&a4B zpa(vGB=Y!dTbz0jE^ߕ=jGNz.]NU<%}НU뤸YTgP&{Ǹ@Ȭ,%*,DoėW > q롗ђ`(̠^ 0,OE@o.FN-_L~ >?g94.2/JW^(-Scr'޷z61X[J`BAi0ރ( <5/"1 tnCfm"SмhoM >~Cz/Unt]O]q/c*=0V\ɍ<c#`/ C9' 61̃ȫ3}a<&-R@M0l\ ϢQ*hI\h-Ā{blZq'E&+c|AB`Lf]b}J{Q,Sӂ 5SE໭LIʢ*,P)* .esو=DŽյVc֪pn֞ u/F-gc^POlG#%)3 0Z- L+VPNڻP0*Zrf]x,/͹%$CTr]"@&@!ڋ33-SE?x"6#9KB<ƘZO+zc3?I]dbxJs'r'25vI@$ nIJ}goOZc ; sMbԋ*|`UnѬyT)sl/_ Mv'F܇55ؙp2n|%k:fȞ Kơ#RwL)p`#ZF;g:W8뮟%G'&+GO[읔9݊Jq]kAJ`D5O>zKo䫣jNJpK:t.66 [6+IB2Y48gwk:D̘p6og';+y^=onÉ6MvuDX{ϰ2J|)hp(Uy1;6GEʀlXNa; /ڥӷ6Փ"X -R pJZ=mMڏ=1 CVoڨNC*)Y5qHkXEK4`T Y$ aLEeG\aJ|ƃ_oUúkC3BZk ~Vзt8Ĺ>y+Ҁ?p-blt5,]NT~sr#f|Mm`0ke? ޖ"IrYMH!eQD.XPf}%Ozx yMQ FDXj&859a-Zz20<#onF&PRc K uM\{Y3)bG㉏c7vG=@ K3\)6ȶy0/w_8OyTF[Hu3ɋ$aO@2‘)=.cag#yPb Eæ}xEAݫI NptĉC Q|dQ`ߙ'~H(vbZeY\SwXsj郛B+kc=lQt)iDhT@ ?|%u'-Z:$,y-d̍C*PUN͘NHcT"VO=فl) _^N5;|w"݇R2 ov.G)29b1GpmOPgLB܀ !།"gTb=QHy1ֹA~q*c}3IEtKD{65xAv#}ȹ/by|*HѸ .2E&'|`RvE+|$N(~W@Hw"f7=ЄƭvD" u1߬gO׉K؀Bk _Eja!گ}̥M:&Lv(X\OQ2m>MN)04/c \ 0hhexigfSʯJљ?6~G+gMS$s(73lR֏Յ.a i3-]HAʽ#s^k Č9pp҆THdn"ÙǾ?#yv:B[!?e{TYL'l{H8\z@Rf C)D#}\$ nzWl-dx*gl CrdzUC›>Z'eɁO giL׭@F!x*$!%ē {PZ N6N-mavUPjeLp2B:hXH0{(-T@2l$^s]v{̳<-<3*{JOI*jxP~t%VQRO8~)w>4$$߉t.A`:{9wQ1H vZe !) }Op"I&-f+X7P1#JP&HάlyYBqi@v[ ]xoV_0jl{ ɖpi ^ڧFAkƆ4Wl-i?)Ů~L $W%Yxyv\A!_^$[0~~Zb i* z#Uv_8[=|o%ZYwL0+Lpߚr[f%j6^V(F9fp~âD%8`[s XCΩ32'9S|~S`q%Gw߀ˁc;ChP#1CAeKzA&\M;܆T >W}? 7zD辽 ,] t\V| x \ǣlIļ3:x6!e oPm(!DЊUt{O3䞨}U"\<#"p{VZa4[Fќ72}% @j﹝~,s ARgBD#pph x-P\$q+:s ct9և;p:e(uS|'(aEykVKj8x"Ǝ̦-`z}(iq*{QKcR)fm6koF=`^ܾbz_ްլ4R^Y Ь j09 QAAᚨ%~l-$CFr&$z*#ʠ8ԲAңG:: +l/Ǚdٓ+ 1a[8<#$̪l0g,D ӈ0 3h ؋5l┙ͷjF9]N2|>n-̣p!h3O>*2PZP][Mh |ͼo027؋K{zmХ],؊7R9yUΔO Œ3@HRDrhgqSpo\;˝qے&񧒭bέZ&p8Y #OrXRp_ݨ9³kHydfO*L땍)$?~'o7>rE_}*2!(ف {sbCA fc7¹k+8ceJ CMj}Wu6l M)uBيg@*6`雭' W} >Y|5&= sMCU?Avג+&I|Ex6NwշGPje<ץiA}ڔy8sc0/Kqjz]yJSh4SMHTU׋fZ|OrVtOMœAZ\4(}\C/3#Po$z9[09drm12Z@jB+³zP=EN !aL=BgYarρf pa'T ԠW&Gpq_n,)a#:nmàYmE(>cYgzUn/=kUJCo x+5i~5?.Gs|>ƈմXkn(wo т,o[L,fb5'.{o[W&e`>c]o }."Ib; Vu#)dG|EL;l4ج{JIjb 3'ּ䔨X?p* zoՍM5$"L@@'CݏBJJ Lu{%ܺP& ]ouB.7ܴ}kWg 2cܷ"e[nmw˽A(BO*$ʖNJJ3@0j(hu#fpӿ( s$j-t}Eb+nus#5#In[i 1+q [tO \Qj]ߧ> F-a;$=ˤv6l&"{AwV)]<|ԯ&٨.Ѐ#;ud e2z@kr#s.f<DM`/M.04;ݯn,2Fќ`o'R݇n &OҪ7Ex1~Sy gʕϝُa[RYFgb~INTm) vw^R);Xsc'ս_tvOnrfP_W\utZk̶ǏX5ŀѳO$YRmU2kкv%&-8U{s @ h9;Z/1^ݭgN:+\m FދكFx ܠ5JACmtkC =)xem0Mq-)7 \u>WgVߤn[iu-znŚ%eGӶԽr>8YTf^V5%Srst W4L>o?l}ЁteD2JsUx:ٮѲo@v"Wʄ֊#0Ή5S[ }^gFAS%" ikA`'%vA <7ӂ$pLEP)"k3=! ؘp10RlH:9ykAhgmFnV|r7a!fvP\a:\T֭'*$g-) ++>+>VjCuw%ya.7@-W5&pqT?{SME ЅRĪEI1Jv)Ŋ+I B@$Y~" 30n` jݏ 3POKh'@/r` 6RZugXޮJJv} ]©1ɲ\5E N Pj5# (RvUe}nVv18 q*o1M')Dq*># %!CS0<|h.`a t1,ߡBlj؛)A\P;݌~QVj|Eb8.Kg'4AƴSp4TR49Bf2htt>:P\ZNQO i-|M = H;?{UFk[ ^̱ZRQ$h"3/ƖWnٰfᬑ<|KB EXv;}e%nUz}KE [5NOo5V< t79c%-6\ ^.t"-潠4(Jq4J>H$s{̇!D$ҟ@Ȑn8'Oh mq2yp!_xcD Dlէ9ʗ%oU3L!ljF;6Fq_w Q#7[!4ܱ}OSͭa׭=%8CYʄ9K7%Hi=Bp!H֙dWq[[0P<;r~$&0nD.p (:k_U'ٲ  n 3|3⨶y g=:voi)$ϝVhBK:!I; <)K@pp!, >9Q&{ká7.4dfn BX8g>U8,#hƥҿ8I 7. t&54⃏g٦rGW b3Xb2xRp[f@,k#39 ?lH8 >'79B &'^N3gm?uM?>"^_l zW, IhLX>ƙq>5LBc!nkv}|M[h_Zhl+o35xx+Y'cEy9ڇ:egxl\Y6z2*40r 6Uv%cjL;?﷙(1CjjUU+Ԫn/9e` ?*l]? Z [Qf =ϟ]Js+ { _'gQ,xOJO:j[ՏҐTaqFLsq6?=Pr}ʆQ` K?įY~fQ'Z\Dn:i+?KgC+S ƟQu=W&&}5B:orbU|+ ˮeйt ;shK`&\Hd{)4 ̯O;mS{ű:7p\o>L?S՝K7&|hd-maHe isSv PbfPKܩ |Hjў!Dt/d?U{[,Rw0 ƣ?b t#gC lt$'v[%DNÎ)lin@%3)֌ ./˻=X C>` hS`6:$=5mms>TECIp3_[ ?˻GFl75Y-4q_9Tcuusd-hW)&93+u]B>7L'ctC$-TV c47*!gƉ:R`=,ձ@1.*R"KDFF$Ur nك 6)gϙ+2]qK͕EKT仿/S8b<16)|4234滫iDj VW~|` k4ҼP:n WO JQ޶5fߗG#Yx XJe.k%, zv<{\ȑAWW.6"W.w@v~zoc{ɚ>Zה{zM>+zTp{sq#0K߼ jX]GwW*{~ΰZ=/k #QrV1r7saYhP|H (qm^* *  , "qokZW|mlo B}:d[L#[9YD< }y/ǼU(xh9fR.1b](: L㣺0ᲛH+d7#1MLPɃ§\4".F|N` s^bi@eu7tQ=๻`N9_M@kp:=ˌ=NYj|rM1c*Ν YŎ#8NBt1Ӎծ3Syi]Q&|D"&M3PŘf꿟jXUTdɨM?ckӪQg&c7qĿH $GyT43[ּHȮNt 16r-@MUv?>JL\ vX>EZo=rI\Y֎Z1>?$E1Zx4Nؽw|I_Fo:dţ|׻N]y{eOf`ډc]\:C3k>sv  ڏ>\w"ء_~bٟ|IS7N"&79$mΈz.\lܛw~J9doLk Cr 6?TGcn^>~<p2"']뺳EE~8B``&"H*gv_O豬x~JϏ] g ooﱁ# :x.goIYjw;|ʯEΚvJ2;'PӀa-}:^hw27;A[9PVTM#9NG %*sqEr9=:r-(~]S픬T.9,qÿï\#f$xbYN`6x˸'CiW 5ѻi5Gкa / dgG `^{w6L"pdcbT]ɅG+t';^iD8-#hqv9=EnC[{mWЏoDPTᢎu~"b}rMdq04{UR -] ?)Yxxr ߉$U&\+OyRva\c!~^e)΃K)M ?s1:|}KaW}ʨvY YUqklE_70lEaS<9:)ɗ~.gKZB !tnګAq TGeeYqYDi_MZcd,9<寞 1Q`. oH,PH /J6HV> 3 Ht:C{ {SBĬ%>Zƙ3%~80uhqOg~GTo[F)AN, unHJrnUccmxݐq>f:AZ5 ##:'WXjςlv짜XS W1 IuM %*oI5xN;~9kI кq8ʛwɓ7d}S26c%sF]PXNM@'̪G!,O9\h} bxHJuC(n$%%^/ 40>Q&^o_:s]gQ`vsxFG(Sdx]kIT>ʊ)Tg01c_|_hfK6E|;vcBLM*p;jzv::N mu5#pO;ܢҡ M!AX8c6#;yuCu=l j{Yڈ -=.|G΄LYf#3Qmw.?fDַz߇!?%hȉ4auZ#W<Ɏb7m_Kt7ܳ-/\H/ox&{3bz=۹c(I|浴;ŀUG 5 >jN=] F{hcbJiŶvʳ,7/] њ=ìj./,la;Ax-l6ЙӇo`wcDVC0PȰ\ OTV_'6kʿ'{ZfO >&5AWk~WM )B.i.\a>W! =r[b'Fp"}Ej1%)+8:\Fm71y. f:Dŝ/#,ޥ.ǜ t G&/HRLL5p|DUZJ jf^4Ήwpރ)@? ia hsH'm1/FxtL>ZW Z5s':3DlRM7VPIƝ 7V>Ҟ> !VY~qMz.>pm,0B(l/knaWQ(6+daes _|O7%n_o/S\0C@aSkMK eq)'O(F_wDĬi1&fM5zWڍa- ܳSA[\A˫5n]d\$h΅.}5;iS C-6]2(֌%s;%@Q|aP13i`ٿfyxV@gO!K]{]6WiA^ZZu%BM{d.11i_a;*lϲ^O G)ޡ7k:n[j^ :?Wh{Y#N௽ p.Izj*@cDPq%f $]=!`^jC rܐH&e9PoÌS jjY3jІv݄G]լ_S@ိ{9uq*͇w}S\$kׯ͋DYW 6+ ,#ݰq;jnX:aP L^ j)QE24J?|4*lA(_ZDRKH3:'Ջ1>_1a@lE.$x_>e^ejo9*|we]q@*Jφ oEa5JɰF'wT:޺g#^nze 3+K{àOE9XZ@5v!M9]ްh[gr8AAŻh!vpp14mM> @&pP\$ÿy Y.Uİ,oL\Nߖ|O0 (,T3&DKݏ淗畧)so0T=J_A?! w݀D6DtA#oL2)8Ծ}߻V:()8峬j8"1N-+j(Hi8#dS΅0 jTP@_팳VdxoH ҍM!g*y=‚u޸CcaJIGs8!68l۹ܶ0.hizYug%Ҁ#S,9.WP9) [$}6$ء(l7f$k'0PaI#z~76m-=ܨuY/LZ^a6;ރ `foA i;w\91O5*1G;/D;vłZ3lFa%g{'}T3Z!R·z0Wg^)+l{ʁ2~uovneI#<4הX[hj/VyHH,eWEp~5Y7A s r4rJ /bs& 2Nг8$W &%>Nvh:kTD%7 $np@)I!rv!m\OlS(cТh`mT0$ 'Xڱ%LIp^hnKe퇉ubZq?L> +HV9~7Fu6F IAeӿ?cjӷrT@@9Qe#Ƅjw.k dyf7Dp;0&%J7ek-A s;%;: fGvI&,x7*4N7`yIN03Vp-uM 9V'a>9X}x#zZhH\sB!r_<&bz )b<TDwt>ZAhYƃ\UyTWp"b-*>^ ;G~# Bp;Qz{{w<V.:A?Â̭͛7=tV/+m^ߋfϖyf>㌎:BuY0ǖB6zi|o1k8L7:s'%~i,1E=^6o8'}Ow1k;C3[K  [!M<߾^FZcth揣7`}i2$g͆ǷP NnCLEcncR=- gjMhu wd-1Dz fS{k դiyiZEia[G\,#dq[k1A(%:$ =FbǚJGU6/!m@=ЈGw#N  nj~ei.hW@ӸPJT Ajl\r#,1o3; n2D\p4$뷺S@wlA/ړ oU VHQ=eN vn~fRS>z˝/40}|e__A)^ao_u~0 ^ X:Ow?l5V X]sZ;Լ@33ޡXĺtщh- 1 ;oC88z "Q7bªkQl)$W#Q7#izm6u4T,յi%juQ{#^E `h4@f=)+8bZ9BTZc|EQ9 ʣ{BOnf8 .*ҥ@9gOx |--مB%a|I6}uãu2iލu?hUܝzȥ2Sh@v6hCggEo+ZY+й|g `Sv.gUx]50lF׀w"'!S+|1IJKgPO%+ /ދdK =|{ KgKX, IE (E/b+v5QMw\%^i^S$O 78BhݢƪE}!ܷ~(J,LrI.^rS?c$l;ۀ6KQ}l;*D&VL&ۿJ"q$ȇ V s1?Z h)RJ/y|^"-hQ¯9?}%:RO #0pFPCإC((zCpAt̰Ut${lkDVN"pŸd02CmD>fCcm4]BT̬sKݏRUeV{dJQEGDZQޙu2]4Dyjlmvt$8ws`u9UZqLۘ"/Zոq'9;tq$V!.Ѓ߶',0wg|1Z<ʄ cf רSR]X%m?j9}Ύ!T#tGY +*¿0bvVP~/UߓcmSQ%ņeиUa IW?$wď U m}/&Y)Pzp?`uarD)Eywj#eLH)2/v"{wTr"}Ad:mOLMg ]oquii=EBœ3)Y[:(nOaB@,AohUnc+e&)ZhЕ#/i*]7Z+Xd#4#bW S(N6p=^YgnS,H>N2 [-%qP8?##,H-L,YֆRڎs;e% ]Itr~+:?3 /mX5ҊDO.D/7O[-X֐UUfLd?u9[fڗz[| o-қ\ >hGGiLE@V'׆G.p!b̡g3"槭e8N{w)] |} v$Z%%/ЀwFc\|brjfsq:G-_j 4S(8Æ)@,S@M77s{ZgUaΤ}ߞGX:?횐)rZҾDIs~;5K:?-087,JM &c ͊z4wjnɍJX.t)'M74@wnEΆW)MXxxDzFw4U߀<H0i@g|hCrʹj#z#6WcRH1KfZc9(q:VoJ2kMm2>aGP)hY gK6`0*66M'bFj"IҷJeoQPjqۛ10C2>``Eή<8#u寿,`6u(rHf (9!vƨv[3&7X BJ0Q$,VM5h 'A7>9 ۲{nPm=b΍F.e}mq| Kml#z=BU8A |k +Qc~zX8g [^X:Tj]l@,æ޹T¯'4ǼsL^Ig))+Sҟ y#F>^ϵ#`ߪ"Q&;^ĺ4 _{aU|vLJ˹h d®[Qtn<c3{^3\ޭ1w8^(* D0%@q% 3( Aܿ AƎ'/Qeݸ5ױ6tS'2 ]ۇqnkҥJ`^q&#,ތcf8$w? { ~3Hc.fO9gwN]yd?w:h < k:{m[m7xfCUXnJiϩ0PpKI $Aڰ7OXg z9HU3y@pmC\qx:>,yv:_Q+7 ğK2t}Fc Gրg=P.o+="M(UMg]S7feEёbqeE*Rt2jmBZg.K3@Cib3׋QEkBMNvYW/ }0/V3Q}Ff!kqL_mr}t"G2G@cE؆#@AK`pnbAgr 4" Mz /xs=\ܙ7L3nd%, 1`=L0$"]"Lp2< iEoQ;2E"T~,WY^႗K+ kPlSt-@CKK.NT<ú 2{vrHmfG͗{zn}dVឰ YB|}*RjBTp5X|Mya;%yrZ}qg]]>}cPn(v8KwOёQ> %Q k(>]ܬ њ؏HFrtt%mBLmyB^;l{SKGHۊ%nl4VlnNS)f9-$W:r 8id]k/` Du>u t\W#>} ~C7 ozWAbt 7:ֻ2'beϫ0H`Xɋɡi|H/ne!Hn5owV?窽 =hU:^;o `Yvkb򇇚2HصTXT 9]׮ [)5椷 :Ki]-q&lJ!2WiXq pak];˹y{)E0(~/S_`LG'8,9cN zSJi^6'hr:.h/ۦwɬ(ϔY5#l7#K0NcM]Lǵ2pj=ԺO"ZQ?*-rlLkW{vj|\UX]씤B|BLKT{tSfT٤=]rDJ#Q)_i;,WȆ-͕| J{J4G:-\$4-s\)UOo# 1UA/Џ` <2RY%e R)HSW{ lz"E醭t0% s^]USg6!1N / ''q b>"T/XJvwa5/ﯟ Wh*h'M_6>Ǘ\_;p:AUW{67]ylv5"b M{L{&_G}~Ysyk:߲(PJbt[,0 ZaTBFd Nl?,Idd8)Q(k}.Hy0ۧx!h$2?Ƚ5W(kˠC0DS Sj卹P c;JqS SF6Fܥ5DlZZ^ҕ@9u'>Y-c\Bۀ HײPn)H|V*qղKtZu +Tͷ!Y煀,%>Y:f6kJTȠUOH{nmy|# z/ofr$Fi W52rNibKp&(R hj]`Ê3;a!*gzΡwާ[ Y ΫM )v\7K`VMߒZi^i{wԺ %A m]AZxTmBg:^Nmf0 D鰹kb"dw\xRdn|ࢩ(lNPA"p=5c*a2.يЬ!>Ab #R2H/ސtʁY̮aNm wџÉT;d:J1}XZ1朢ˇTZ:5Ef2AVe炍3 P4s"r_؎&B%-,+ K!ھʯI 3iǓKAd@&6K v#~2G۔kjQ;e2s 7E횀apu!#ORlMTV,7gC%Y$\Iru[Z\pИ4H^T'̓w Aupq)H9rDVLyDD<QYɉ%HYR0k#+{B =|9dzצF -Q`MJa(#:fA\ ?T|+ Ye*Aw/Ҫ<_4uZ r0< 4B@7Hǘ.FQP>/u ب}L$787LܣJ>Jj7 ]e4gb!9F/ڞjQ)PW"Jzd͋nG=oFلa.2:EɊK* Cw lK@-kEަ)ܴU!+Iͻ-LƒtљS@IyFa,;I#u$/frG!YZ)8D8mNNJogdgcrPKht=Bdښ8ge]6L)Ӏ.8Ƴ0hӄ[Śm=̌ȣMqPin"4cZ \˂7ҝjs^4|CIMrz.BVQ"KzDktiT 8r\,PCV܎,NjJPQDmDikx 1.!v|HۨE\5wj$"zczͰI䅴^U!c[鿺c(Fc;W% ;E3=~>dr"R |'2H+g<6nTlZ1Nok%3̄xVկ,Jh>1ſ|#7@;QS(o/{q{/]I+EKfFh]=J;0ʃ$8H@9.Ņ{X3\gHˈ2o&b~AHSyM9qV}b܈/(`eqVri8T]Tx1T]au6%4:MmR7s8֞7]_h{%Q9U4B"!ocf=ej^AH- TUakG)6G㒃FOֿl')]ws VLT]tfTnTo U ,AL~bm. {8zlj܌ϲm5yS"p_aWG0L#'>#R*k;2u0 [ūNYKM78G4=biE {$`!Cc dkC{0̐F{P=S|yYXkq[,L3|h\ﴣf?+K)FFjJ*~viS*4PoLy?<>5s<#H1Mo¦ FTAsCWKE4/˥?iE#>wC *Ti/-L sal(!.l&)mD`&Я廣PZ#T(r \z qxuρ qbʧRJTfd? M]&Lxطa%rZ1fu5 SfV WA]x?=V8lCatL+{JaT3};ռ}eZ=J+~G@Sl9v~51A~fe*͈I+D45Δʗ{P8 Y - "QYe #̈ ^꽱˚$Pj9 VTfz ( f1b<-滢-_ԥ :=6nˍ췫̓Vλ0CpbCr!.P*ٺ,M F>ݧqrDaTM݁t:ax蟑q+8" -Ko/|iaE*}ɝ^m1V H3bdSh=#Aw^!VCaT!G/pwaP⻞ˠ<ÒX1Ʉݹ/cp$`\Zu,Uns_!i>3 Iɥu7XBl6YGhJ \bTduumUܝ4zn3tKfo<6+ectsvջ=R42~mI틨q%jg33NdBB=G7^ɑ1t-$7˘#^ztMCԀݼHby=S&nr_"!D.-%/aw9&Ip*&WMF7ϓ3Tv/03, $)J@PS::P D_L uN8KDviAU Ǭ Gg1t|\I"!ūo|ȿw\ɨqf .]V(HA̿,kop£H}@uSDuV+~fr{ẙ<1 yFm}N3~A&k`d_z!q X؀W[!fcEwxbwdE1|Pkij_N($\9tMZe<ӂ!][ k,tc]p@jznYD%SٚV=dB iF` ̓2ݽm'oaO ]+G=CVdu㌎%uUDUAy#ntsv B-Ht7>F!n{Vo::VJ p2J̯=ݼOVێ8:wpP󻎙M3G гDZsJ6k/ユs]JyT(`9ǜ/AK&BAK-ڳ[!tW } N-LY`QwD}_OaVgZ]xu?nY NuT-{H,"dİՑ+"PC0 3n̈I?' ܕpAb#Se'1# t(zuqR; wvAd'Zo1u[Hdk%4y.b7&U[IL< {| DŽ΍5`z륙CUKeKby3)9 "$ rjq|77x3Sd75.̆ ('O![h@ !UV!Pϫ&x`gl#ۖf4jO2nb4J$h_Fa<!T@*Y?o頎ŝ\Z)x&N0btI>v:hb=P sB_(_7:#:~tCoޑv!gճ9K!B4R AsOe08Mw1Y= (zX)`1<@F0nL6\K.=yS;/xWN/;uσ|b"1 Hlvu{)% ~E;gadČ+aBQ$(q?{ˌ5~A ЖU}Gp=+!MhqRN0u+Dѭ. EIi]{p!M;m x'ٓnyn{c*Y|5k #ӽuaXj ^Uư¬NYڋ(u|Uxn9؁ jt|iMˌ9\ʰY ͛1s3z \å[)MgQ2/6a k)AnvP9(w?-KbvPu*p'鼃>(a3_/|\G>cm6QJhr-41M!]%J{L߉ NdkH"xyWػ.%}t91cf2[P Gz,lǓ/K%& MaBDeު0x7e#xnK΢}h*IԄB9ǻjB'UTEYTXځŭ5 ?6¶ZoB$7EuwЀ}M6I+0<MLrэײ0c}d{] . uCEg,/k~vVھ?HFkЛKi>Dnbz7N;F ]S>7 "&PDPX5[$Ut60`ŃeLfSǞtWE3:O*NP\z+)Poʗ |<˾:\mv嫔 §V^`,ό2 CH(|JQ\7{b]VP]ji϶/; %enJuWy K>| MTv<'[Y2 bRĒ= D*kӅ%njс*wANuzEZe}}pՈqK|(R7輱x%ӷOA`07GG|¢w wR}Q$Gw2 UJbZzlm/j}F49}[̕Yy6OoS#|"gU6-gRo@:q-6hqr%;I}==02=%˶ Ek~}e}KiSszjƲgᲊ6N0YX٧mR J9I"sQރ rYGJ.Vc ͙̊CA0}CUA Y2ޡD~X7hn!7ȢsZ-[ҢҳjZg?mۙCT5SU,Tu$pWEjHP| %5e+=M@,D聴bM Q "Sc[5 uM# v4 q"/fKu;wvztU8 Ef+ +$:JWwam% j"@IKC)519>y 0ЅV_]4!>ZįղG2 vi(e#d%6wD$C ]wR,r{KV+~vau1*?L_gZƓwm:bezof?Z,umjX! Z/\eLzSjm=jW2?l:!wH۪JP'ޢe7S#˫(-õÀ;gߤuaSGu&?oˌEs:(m{plP,H_ %'J@ -mso}ϱ KE,tל<0 5nJr?d䉀 E\]4C ^o-VvO?w̷KIb)z0uɡ|I p,12 06MU94_Ul >* +:x' y,_< &,d""#=һ\g$ZevOZDYD }R &'gSPw+ƭ]iz1"T mix'Q+2<ֽQ\m2K1EbΝT#MNrv'uNN@3"U,Yϔ@ $⼡q&*:EwM˲OeA͐/' {G7&bR8yҼ1穢]zh̊sB& F|puTyJ||(]hu=a(O|瑋cMBjEtӢG|(QCˌ^RJel/F; XYe" poBSph/pAx}F8Ĩ<1H(pjL+J ߶m6.LjI($L 6| 'k>Ǖ=PT) )A@3APkˁFʄ>."+UtLT K}+,i<_v#)T'b'^s]{{!rrn\7ZPh+,n,yiswÙkx}~̜e\1ԅ<՗7f@t)F߳IRQ|dQ9!h,pOF3V%7˳I׿뱛T1i)LaaV'{\Y[v؈ -2ΓFFz2_qZJ,~DIK>qB9PM 8uQ@ *XçΆ!^{"ҷfZӓɂtoFsO a- 5X.շH!uȗorsD*PyUr)NG͐]FJRfE Va b{y<ئIWVڌ{aŒVW4I%P)X;(}=>on?ۓReVEJՓ`P,F=bh s'{վk2tՑ.JV֩ɑΕ/ɖBm )Ijkn[@:ߎڵГAԡm[Q蟍褽QY#b)x*:?;mae8# Xa@> 4] " ne^rH}"75mxY kՂ~/,4 Pĩ4}9 ߹R:nS.:1slD9qҕ`.vP5wԗ Ws/$Qj03S}H}5({(RS ݻM,-̟I1;s'ʵ3w鮬e;6kzuPe65Z~Bɵ"1n 0H!\J_:rqeЈiZ%F]ꔉ9v$=́b,8.ˠ">,ũ*-xp,}-R䯠|_eq2W,0vrHyy҆ck|ץ^`8Zvr"-oug${&/۲4)ZTAё1ؑ-֖fPbJ_Zľ˦CL'}3W9af]@\[=cg. U yPW~r%R)2D(oi lvE7 j&A?b0D/:9)m-k|LճkH2M8/xԚ3^M7" +P;} n^477V ti.#??%d.x@&VX|}l{9(x\q] LI@@($e:9)Aܩ^rJń_Ӛîב< 0uڦgxyJPCx555} f߻?AT=:%@b[G΃@'`Yvz*J|0Rbw*DGe87^ns\".>!)8kQdݔ8`p—vQMSo0.d,8H2}Dg:; -/kAOZ<įMWێ=k崈yHhebA*'!8 >6~)* u+GIgc/e'< fmteo&{"Ϳ^)"ËXzV޽u\ 3b9~D|}\r,$ Nf28"!z:FE(Y} \,SW~_ҢjC賫" sZZDw75 "ޡNf/tUD5qMq3'fNN68ZF]ozK\ Fխ&;e;Q8/-\e/+L qUJ!ê蔂 I -j^V6{| c55Xm_OnG-8Jˆ&ϔ8nE_e|?cAe2 {CHCz؛m1Ƕ wڟ{+Xd)]Us^긲OX1FI73B@eX"vVZݞvę-UfRQ#*^ Z4ܾO7:tmL7&h:ސ. zE "ɕ%x81nv*x}tSKDžG$Y?[[/&s{:CrU/r p,'6Ƒ-)5jol$ɲl=p^#!ul U;[(ÌOէ$1Tv\zF!-GO˥N_w4.QMb!E!_bN^dP3C0f~)}ܸRU˰Au>%yH:6LsvmğfLēPPgl (XR/vP2旌R+ƈ<5t)oЬٮ:fBF< MDD=3Pj$ktg^/C@NS0]A2-#6{d^5_R7JX^ڱA} xdr~TXd=L*cha/OV^/EV繹32`}黮, `/Zp#pV~o:dvnRϦJ`hn n=kOU.D3Gjp[fk.6m:KM Ms&zoxr4ᦌL:/`rK+ vw0`b?C;#7j OfZ[l U4F.S{tv.]KQl0aS0WL3_᧨˵d-h/|US~94~w2v̶D-=VXTr5;T ̈H=Vt9e&SzK̝r]It |\5k:4h}Qoj1T:!r}9dbצ pP C'GؔMaUjvg}TЮn))Z%#W?z׋V9ԙx %ԋ/M,[#pIATXkGu33徢Pp_Q67l6i2hhiW6bYJIi櫥 ΐڋЪx!?u42[Lɽ:bj=iZ(O" ˞Á2֌Jw,)sA^CԤ!:.ZFDo>LTнgVoa0'>up[7EӐ%J S+JWWTK@ʦc@c"IfXEuYF ڙ,;TO:B +:?l0VvБZetJ^-,IR!_+&p!#G`WOq 5,9\A c&I}YWPS6p6}SI|XS4moΡX]`U Tn[v%$I?˽ g_AuuNI8ts$[PHP4590˹₉RKKa뿦LWS)mF˯f9>1}]fU3 K.p ! 0g,E f$(/1}/AI2w ޖx9qV7υC<(A~Y^6ŗςN{}R}J_̇a`#U;:Ūo.kW/]/>ٹ)Nx-,=Tѵ3a@Q*d+]4R ztXȯķy]ڭ 5ee\` rƇLr4yoc@5\ X%Ƚ)<]LBDZnݔEP%MS𴽩P K/8Hf;^ Z]MOs]ȾE`Iuvh)fCJo!neuܾ],Ԛ#N ?m>ߧ9r,D6陃v_:r$dYmW]G"yZnp{J&"]JXK/3Jst;RR?-^Ro#tx,eyͫb #1Ggs_ vKf^}Re雴{ǾثϴtFJ#1jmsMO*&YoԐacz)a~Jma}Sv4[uL,4M3c[6g/`!1}?33^@욖Y=@IW d1{;AoӦ%OI(f m2Ov޼ W*diEfйZQ\J%%=SG}ЮH Ɣc]{zcxD }fk'v H Ex]ܣcst [Ӊf . ;j$H+eCG"yޮ@P>$H_~蠥WG#8u9F[3E'N" vfȹ /\ehe~U8;t1QM/^͝,$,I֪ҧ>6*9$h,W(+gv(+^gՏ2(a^F}ݾ*{g0]9xyeM_}{SP=O~B(ܧp\kԸ{V+ޑ`ဝkآaY[6;@tKši"$OVxrn%Ի[[np^vuc*.Cc =҃ ݅4.-GQTBl * +I,Vk kkqu.YXHBtxj{XX S20x9]ӹˬ Q键oO@} N:"|3B)_ /ű.Ǝa#(xZ<޶Eea.NAN#;p|擦(zba5@s#p?*M`򼯲#;]MEߩ _<5;HUFcU5K,+8_kȤ뎾|!|N,Eݞ ᭛oei.qaCr`Twp;y̅y NW|S7L`4g'y4ҳiW&&_k5Q$'nÑ(wc \C [ʵ,: uzgl&ph?7Ns?8Ù װ8eqT,۩鵀T+ 3{i F6'K?r.ɲ.^EỖsq$x U(1}R0YwJ.3[\sqږ5>Z- JdIke`p"m^`hQe2/鈴rgD^gXZQ 0:>"uMX-X#d`GYYD2I?9x5tj,`,ȐTL\u2t;I)486:ƎhOgoth?C.S31Rj )S.iԉwPAFz@r2iU?gUP6>ZuJD2PnxA>8ۊEy׉rMD&g~5 \'O0kO+zEp٢h0dg%XDu_/u#>Xت|+ri6YϽ^ݚ\d 2 iK6ͤ[秮%UprԡJD+ȹGo1-LplY>;Q0,$['C~ ٖ[ż> a6`Aixޥ+ۦA_M/+rLYcO:s.(]nB5@|pj40j7υO&m;!I<7ޥ3L8BdTaQ 5A,-6C.Yb6~Y( A7oTZM4c rIAOdK:{[}Fv}i`*V^y̏KlbUq居'CQ'?i 4:@b,fA@ܼhXB;/2;.+ @HK bm\T\qEYȞb!*SQlL*N^8ӒcCHt)PWGd3_*2!z7;N"#@Y< ^"BĚupk9mdy r_cDZkl R +@c+t~vMRZ}?Gڛ=Z}eyAld3JcA+EM$ %:MFMg' :\x=yA G)q;U2 h3[KFeMp CHiS-E߶XIA٥=ŨNL͝\p=ؾ,) gD.@S.{\F[d?TbOu9gKp ~'x+FQ?s=yyP|10U_g o X]:EAXȖ^ʉ:DAp rI aHɡKTF~]sCO \I_GQ&0"g.*Ŵ"V{Bc <u3XYD r?Tȸ4uVW8GW17ILm1)6Z ~CZk&z?MwK1 ?¢4S%8­f٦s:t ZOo:?r[)Zwf4۠0,aiPƒLTTӗPlȥK(bdF%gwDz>' Td|c+"͊Uq9pUNcFzmX퀾}>oMvj4J0wM *OZ\ł\N,D8ŗE;hkˑx糎ZvydO 'Hբ =O'-\_Ht:to1MORz`5j57:o}>|Av SO<},-OOWect;=>L\H!j?O󝡆s7V7x(C[34=h~̪5ᐩ %E{9 Mj<4_-+(_Oxή_(86FZs:ryv//I1ZT<^ &-eO>2LGuc`?Uoq@q)({KPaj;p?5naj60hOo_j%q 07LӮ-`LmWT9f4mH5\$Ll׼ iԖ/: sEرA_rÁfa=VJoei G|'WWIkoYOos-Pj8re 9ɟ⍏:llB=Em>Q胂e( ##@G_M2+K9λG $68XLb:NJYub/S̾mEA;RǣG(~~*"@}|%?g361d'z'$ |RĹ2Y}f:O^JS(1"#4gu]_ 䴽(4.*l( ?rݬ$'4jDhF|%nxe$ Y0ebTv .?!I"Oϭ aשX_V6-]݁ ljތe`K{>ƵSްwkHfsc r#6${A"N%ٟS^$6K=S +4mt҆èj)lGޱ*:xn[S"x6:^MӉMfM;NYެACVz}WֈNEͽwealX X!=[r@}r)Rߴą5@h!n <4ѕ`DW]U@>nuoѽ;!DSa9˜íohd5\9煁OQd˾}t@ˆCî5p+I. ShUCsL;$+f'%3[6FAԒ" I.dZ_qO5GJZ3WpB)y@K$ȢN:oBb1w@ѺW \T|X0K wqEoj_h7`3p7r BbÆAqq ʠ$%Q3Z%r92tQw*H Ŷdx2R$>M ptuzv$Geɔa[ŃմEɶ( :Ƀ_?8mP6L i'%A6hFJhD U{蚜Zmh`Q{J''3btsĎq^Nkc"9:g/0\-F91kPSre}6UAG%/CdeH0N0Eu?9_ccFEِTļA"3 :E@\; 7v])J9UEahu!ϢA4P\&8JF"?pc<>S2Ͳvgh'OL wlJznB!زɘs^۪ =&]'m;*7wVR:ѝZXCh_ݝST{pjhgA>Kuj?9B~~bkmV`5}DgCxAxvz-ЏEz,N%[O_Hl vw@bI?t#lGj=#ᘄskbFe`NNm2s~YnhŽ'oI,y!Oձ8u`L.-BGBؽ?eKfOܒ|#;c\zݺ#>Gn℁ZBև'bɑ%ܶpA[ۻ,\2" +i&rF3x?wBWR_UjacaoS;BҶ#jrH 6fm-xa+fw# ʺ0GIMo$H%`\\}FH ɵC!xT@JyNd1Z ^K8-)\АP_>H GxMxc=Ҟxu_sMR8,xcV39%|deSzE>WSK#Nsrۑi>i$+t\zc4\=sp@K18ҍ\#c>F-&22ᄥt}~n/mU]M2NȫqK'|K^S~J9F1i{KTS%Pl9%ύ*%X󌆩tW8ъj4>q)R͏' .ۋ6 #ux^_QM/c_&9Hp >t.t~W&r"#rJc&۲uH5_Dͦ.J>=3'(&plIm5_MrMVȈ&Ͽ瓽U1`y]粹^c7(G!cX%Ӡcx5\+D5o0gT ˃ҥ.U6͒KRyKjt <| v n-Q,;DѼNըs|#kd冔t|y}Z} ՝;З(zY;Rt4NS\p8ZU4܅h֍&EO~r&g6Z0Š+q?/kLZAuPIP2RKURED GO"JJ~.߽yk8杗{Ҧ'jR_CqfZ3-6`M,}{) ;KM[u E-֏C̄鸘vO饔Ml#ɆnT{UzervTT&CeYu24ҭ~aT74)iK!ŐHu}fޛ )G} V巡M^[Lp[yJԦ -W &л\* QvLdݨw&H,^?HYGaظ)u理L`24wސ^t vzR ?E`? N*ZL\zjTb) ~O0c0_HNf, owȱ,fL=,D< 9V,eXI攖2;ddz~E\5lm$'Z(Gse ^ '*75~d/KuC*dO強N^hVCj7kpnR̈́RFGš5Oƃq~~9V[զ*/Ijv{%hs,S*:X o6 X(z[OA@`Nb34Ojv~ғŀƩL@FL::25/`p&h>@>2S-YݚKg_A!$mzMNzM,?0A-/D]l3L^h>@lV[jkOTO*"TB>U8[|r>r,AҹqGWRWox'cO(PYѣ˺pXi[$ T.wM ̂f:3Qo#U&0b Kb |D͗fL"(s0LoZ)v@\@A{"(d6?od? AmeYV4Afk[}E(f o@xIQ sqtM4K}[E}\|TlV&{ټ.RG$bc=jYDIB4աB4{:[ F[ڙ |eQۇ2:[] szFPf&IlJs6^Xߢ,'*if&WygU)*,a[牕{+&p޼ Ew ǭϿ6_ZFԞalJi\7/bR- 6kL'D驡4:4ihԓDu )w3`gʥ'suoڦBgv˭Y_@5GcӴT Z܂ >MCR^YF/'r#79_\ ta DȹEva^p!7xLNTlf71*ݍh|ϐ,j<+ͺ':@k'ck*Y*~DuC>2H/'MBVmW=NX Z)Xqګ|۬mE|]dVA{/`GlE[-]i 8*`2}ھqA{nq}LM5T>f;QdiN. ]5bhT0L 0'!3ȩܑ-@R;_NMUH\=l ;+gxmx;f{\+9"-}l{Gn7Fj | W9"L6a^ MBQԸ 5,wה~$1*nIƘ8Ze0ظMgX ~4?' i$m3KOM$ꉒZa'W*5JpYEK. lIyk_jԈ#JoOۥa-H JA!G'1XC*,N8Y4"NWbfqB @1M '5x|]Tj6(0UszB炽0!wW}#q<C1#y9>QNM ԏ~&c!_D4j "֐6ʊ7Υ]pm4Ux߹`.@X2q~/(+˘&H|l/$tI>K/l6|UxVd؞KRPD~AHB5ێ?̛ ̂p80bP̈ey_XHH#R5cω .ԉ/@xzr2CoܼPjz믲gg j$;Rp' yr Xt[v̽&C8帐B:\.?uKmPO"+do'NBbSbXH5GQ4jthʰ|@~֊zDy`@Ir~njJX{0~BRG8DŽ1 aV{4=DL`ʻ"b̖yJ~_DIeVtd.ƪ-Qb@ $1:yYZUFG-zKIAl6"\$J:l(pwיVɧҥUI32.m.Y)t#͡M--}+ە6  ;U3iПOt^ii, +y= u@hVw%])ґH] E19N?ȿ|=yOq`^XCdH y(/9VoRi7P{E|$O.ic`~دւM A+wMYdIleIK҇aC Dm](nLO= {xwm2`/1,[Zbp^i5G*xݪ.0?qwZHXT:+CZ=&=ʻm8,1X{Oȑ<'~S1 5~ZӺMOwL5iGt_SMuF;o{T=)3@ɪɯi4 4l%!OՊ`Q%_XRXϜx%C/7d5%LjeHez!|/['61>1>(ʀ?3$_WyӜ4#g9uZQ%`* <*JB'm"U?9Cf/ĞU'Uڝx#\{Ő([׈(?'{-$$3K{27W,&t~NȇJF:"y) \Wڋ1f,?hVcVLɶ7+xsi#Y丯k@uwtF2J>E![wO卪pΦT~^ʩ?>U*! Rn}ĝX6+ߟϮm1ۉr TάbyLA>D`'&"so٣)$Ce!TR@U|jpj ³J9$EXWnnW4 #!jS& ܕ_^e\!, $7WBƱ&vl^#V 3ޘCtONWň|dz}nRJI=e-@( fV/sCs`6xa*.vH ܚWmP8=@KA+ P٩$8yiIU 9[~[G# DPY>ԁ$><TlEt72[-@4pLAmxHp#wFbpg -?_z;ܡl-B*9=>Qpq7jO]SZrt86p@E dEjW#(\چWh.d<:2Z֘d4_xSKm#C8a'th]G|Q]ٚf*q bA=]+c>q|6}-סZߋ`<\^J xB0&Y8ag[Iq#b! GSJͳsn6G/I mW*t6F)0~{FkT5I|UwG۴[z4գ f:ؿwdK*#,ǘ rݺr7h٠.8c nan p\(5 DsQ -{2ni1o][ILnk;5|$P*ӭث*5;p0L8'3Ğ_v dDh< E$o =XC %,/I/w˸?Txeу=$CmkZ"H(!Q͒oY-ppbvD| C9|Zxd#l KFc:[6yk3'^v^ϻ}{%Қx` V:[7r0|DR^2 hӶ}9]-d,8]29¬FWYxB[#$AgŘ"$Κ~sp3{d(a w~N UwԶdxX *V@S4зݿ$80dZ}7T 6#gjʥZ '뇦RXFo^RkHg1A4:_&3i_~(p,;1S/F]NQPɌ bx+"  vLJdpD֘i u窅<ÖqK a/ug$=ْ(&+aNNf6_~?"jAD=n'FYHB 7#&ửlC~MG`ve)4U3K_'r KNo1A>J8 ŎsҊJ_\Brj-*?capǛAL ǟ ~m!)meyr)Ōl 'MIgd ԨF D 0?#YU^zVyHZ 5НP.&!S=*[m$2\D/9)`>PY;HKU 3Z&[5sսEX"/V7v`1/R04Eb6ҿNpZC6 裸p)E0Ρ#r  qԶ~0B|K9reM`Qq%2֊BE=&y3ha a\JQ\G[n!sTYdԺԨT8%=LJQjO/[ɂU]\tWcαSdZ!xq Ar=zJYd+o.76-’v}얳dj?Inݢ5 ²cK.)z2E R 9A vJmc$]Ams<Q%E>&(!uda&A%K1|KP$vx) yƍ8:`d\Z;1[C:^>yI+? R٩@qk 6Mɹ1P=Sk7X@.@)+G'l!6@wgps´Jtճ1A9)4_k][m%m&%\S-WݼRG/,^Z]6B x8񰬉#=g)_Qc9[lu;c~2Uvqc+A5IilAĬIy` zxp1æX2_50rs:X>FJfj}?3n (j=J7yQDh\YH%$Rzp [\9 Mo%1 (DWpſno*p_\v %"՘Cu6J,7f])WQ!~pj@AF6o@QC5ıΑT5-,y-ͪnw}VJ%Xʔ$WR{2;v>cbMQ:A0ZEz=AcOeFS?YxR aNL\06W aju(8f'܍ K@p2pR(G+Hux҃56&B'HQk"Sy)| {kʂ.4ݯ *c| 3ck`'*v^\eJC=8Dbw%qv{˥ z@ !z=uZ #,mwyfWGT6xu!ϥ%~lG)=kN&3*~bcx@<'aD_y?`X4ڟ~+L2$LELH}ToC%)RFj A-ӄd+ؼ_=TAFjnVIcוj:G2QA85Z AyʪfQipr6> ИSQi@A[Gm `m7&VEO]!0.zJyn}ș#ԩ @n#pJps7.̙@4\N3ǂA{ ppނQTf8̎Ìatj}m!W2\JprMcoӝx`pI;opڽ3s[L.[Nrͳj!ɮtqqml"Q,v$YQU\ 9)Q$nK1`[+@B O#pȺ Ёο60^֍n }l~lXؐUG)8.͢|dRY!|)9]@RJhLKs<# ife'(k 'Nw%lMZ'Jbc 314Vjlº`Bh8OM'G'!g@zg/6'o+4S$U^j0BX^A%={a3b+vΕZJ0ӉB6BմZnR(Q%7!$u-)Av V?ƣAlZ 4G,zC[~-N>2=ji1RX|mmݺhy}@hNu_Xt{+UEt?%xL몖~cfI_8oQMSs$_h7J[ 䰌:- ˩A+bn* Վziu1W&>s)umnKvD&)|hr?S+~f]IȀ0 cƹz2=Fieb;Tˍ0X9WG0*Ȃ-uXhtY@ʛ`bq\ BSB| %yϿe*«N^.̅!HKzW2 pQ%vo7[p)7 gKHlm $▂` 6$ܮ-$jtjAD.~RLU k(N.p $~G,Ӻ'"+n λz1DApT/'G5PQp A|< uU PL#.l б.l'Ð Ȁ[qQ."Hj7q[K < )8CSW?ªVZ|$ӕe-(8Z3IË`fV3یV wūxpWo @>< Cd4h83+<(@Ic" RP|AҵPiA*ZK/ 㼋Uף-u@SD#=^_(]"x Tz݌ȯq *FBGZ70$@9az4q6/u,:MwBٙTk|9ݚNGm$F)gUקQ ""6FDt$7u_&thj#l]>yY=*߶ǜ^&,bcb]efo3o >.~8}>4a')+)IC3WƉLeC!su) @ߔ̨ܜL}@Ģa7x f-HzN鉼_[J-2 i?;no"k"A.Tþs=*_{x?R2zU5{*ff(UU uqua+90,S2KȐiQ&I4j X Š't~+fyC3jt]6Zr̴Ӣ,|ZrDžOx= |E.C9X9:Naܪ*.eui]SE%O_{2#iS}r#PDo~, FѲϘPׅ3w02etKP}_ uFJ+IgРK7KkL9ò:(?M9sf\x_nq>J~Oe &'Ut oBٛOz8,E';UBGduS سv7S9lW9lL7 s'Ќ(L3fC o|W'v_* W'V֏AwDv+f=դ 1墺;)`}E$a:*zvxVJԘ%hoo9_UzNV7*VT RՕ;jPZh4 YTI)&J%0˙,uԠyU:,u 9ٳ$oMKS%EIo z[r@Y#R,5Ob5!;w1\`p@%20unʛA`e+4rԣ&lk0O~K6Wb@۱:Wй=oi_/,w_MkY$ab,;gH C/x15ȩ"#h0`.OZاoȃN{yc/ұ UϏM*qB{Kc p*b+D]E_/VFNP1Y( S2VYIL8҃ɟ4 MU\(œZz\s\``YZ!D᩿G7j0DVi ;B:N :@ʁYfp*ځ岿)/GUUE B,qqQE'1WL+//O~Sm E>Lf(t&Α^jgX,Nu`m_9fPZA73TYUɨKaNr5OXqV_Lv6']rb)/FLzGZ/̹O@ 8mǜH "goV<)>-#r4Z+ Z΂bӡ"uۗ>X#ǑY0q.8-# )ݒY(F +Cm4H9K&-K I): m 4oi] |Ҿ1 q_v}5q{KuhRs3 Jx>y TiYRnnJ npxM>[{C{OyU]v*]+pM?1L~K`I&n\L9S,Ynx #dǘQ\CƩ"$(4)/܈9rb"Vrj" ߲y?3(a̭bPu"Reťb0o"ʲ]l{*T~ƀ}LGM>3FEɭCb;m-_a#x+(VI&ꭄ"*%:uLna+/:׽7胚}[Lz0 5S[=:YN{L/RFN%Q>>3Iy{D;#,1,`"ߜ)Afd({ӷsq$B,p 2 h\);In@29/w LUR9⎔Niv." 2-rQ%h)EeoښJRpPZD[a,N# b4n gC0Kx^_9.Ѹ}z-r7k2HCz*wӂ(pRmZ<-`K9ڲ L*+*llKƾG@L]5cη]/׾Ռ_kA;ݿAv͹jɶ2o2m`ߔZxIp?rvծc!~k3C{sQ Fyk烯@΃gO=@X)+f<M &>;gN{(c0!N*4tBr}b`JDsbtPе?7^"mlT2? cW4\x-G^3%~့^x ;oCs5ARV. l U^ O" SRiԩb5U1Q0t/VCzfO$rDNSO5?j4z1ܚUEhgqny5DJl4R$Fx3>2~!9 Z: KhHJ EhBoz^cp_5|\Y9%t)̋l"yߡsЯL.TG*QT&.`H:Hq~wefRUH5҂Zgk}D*l6*ZwkQ _ s G+6Շ-z1]JȢj<6y2+Xˢӝ6޴N "v M8uIҞYcqWJeON=tq q\1D[5z@|uTGҗNٶ3ooSA.I Xv"ۭqң&kP"W{hl%"Iݲ,QSBU~[,K$c97튺Yu~[s BaƎ> >j5l@|ء ڏB!*%YJ*_9yC>И$ϪQ ݰ9[N兎e7PD}gd!e $[1 F(E5#*Z߉onEij t=ۋX Lᤃ30~STJQ< C鋍k7QAT?.p ;#&]_EQn :fA;]>*|L'[ûĶcH x3§nFtx!Avr\'v= 㖆yI[(EUls8}bwyn!b/mc3ٞ;dž/xC%=@G {0)0-xYy$A6c*1 >So$"zeV-,FxP]0 ~ܻ763+P+?^ˢ0i=qsaptj8섮֌8 $:&q.ҋ< xIMl+rc>0G]с=,sD?α0 <qJB퉓s)Rѓnٓ_ y-϶j7 xAnGְ~fk*!ނv!!s=P-%@gI+氥d?DE? Tqh \0_墇9] )GUCkĭqe'tOdOPa#"B{CiFg ~{̷=؂xF:Z~SqV&8)NkJ:pً~ u|J#jK1Z!uP,d!y !"(WOıR8p♞ p.y; ` 8X?Oy@fj&2Q6 PfnNV9E Y;]08Έ#̘ [f:^i%܄P;&z6ZTpp霤O"E4=p21Ff:.p6+ hL&B}0h9 4EB3}/A ]$:e)ytv3[7\F6 M }*$xPPp"P%gDfpC[#Ep^I9f̟q~m ˖,f #rvFPc/X]4עF?r,7IaI?N). fGDC@ۇkW)3PLj a.ylaEPVv~ÅegĎh0 j LzO1#>Ps["XL/w% z`! Nq7Q ×(ub_A)-mɲ<[@`:Fem@axfߋ0%f^_!ք;-r㐾FY`DVoˡe[h z\H'ãdjvwnoQOv)_S$](* ;F5*4l([pJA~{ņE-)*j@,1oiPQAk -yi5u*)#p7=yTj+9)?l:ZpM D>xs ĥGGcsT~SZovHE1Z4̂9LKgwbϷOzt ^4jMfS]5g!~s9 &AbCJ?UE})7p[ b'¬ xrߝ5҂Ñ}=ͻ= 4O9MԼ٦W<ܷrz5] MMaq7NQT_?;yFx𑶆pOa]{fy+B wZh5d}3fOI .рHEactgʰblo28&UЮ8!Dn' \~i,)?Tb_Xtv7K%X <0 FgR36}6Sʭl''Q:m]yT eė,b[^h*:.>Bosz, rr;tߎO2hMn5 أR 'k\ eXD.y4*7\ z67:\mޕ2] :u!M&½ѝ&l%gݣm@h[ϕa2K % &iNb4u(qV0fn WHڸgța/ %q*="9i@ N'ڬ"tQN@s_^쇻 2'"Yx~x B'k~V@=M@Ѱ7 -?r/x$=i $)+"/HJ&ծ*D)I4GFE/^?0rs3QܨTAm;t@mkLaXZkuscnam@.'1`23Mbp݊lŠfqWNɪr$@Ԏy)5]ڟ8)W=] 2N̋|0IE/\}t c&@y%1Ik\'8D Y.~MN >)[}ULvxoEx+OvI|e[!X I'r֥Kw\Z;\NEРT:Q싘@F+[$\Q" aiJ]:8lq0"( 1ȟvݨ88=.n׬WGc昷Q^[զP:~Xw΢)+v$l+_}( r%C]h9*3H<]VrΉϸz3r#-u_NG@묞m_#m߽.;H!Γc;]= (9$U^w9)-;/Үk2{SGG12\ٯѣJi)v%bÿ;(Wtn+W ڍݷ&hᙽPWJ&ROLVZD"%<% * TˣTkYFtL _J2]JVRSϐ\ z3cL_;1NY'Kқ5E/*8KI']RƜgE(q' m*P`{ BsZڽEt+zY f(Knnki\|^S .IH\I4>qz3yl ί5ApH]K g#Qu<}$ ~:u/zejUɯud[ .mT!+-ϛ&&] 6+C%Ca׸fi|Τ7crS!!$c0˜4^U-2oD2hVVN '&~5px F佚c̐V1ԗ1燾~ټȰ5V?R1I%j_fP`O7Iz3aV?C2FgM'R]RYL.)f32πS.<&3 lXV lR*v-1'CQX c?r|'EG9@l`*X.a' ҭVan@*ґN-F~dr.>_TzLS]8aM4[% }#Pv\B㺥$5L4Xd71 Rꋝ_Ӗ-J+_tquO*vk!H\ZyW=knUx0d@5*kr>j+Y7hAVoA,@{*Dyq=fPT8OFͣk5D_57t}""'WipȒ*2[#5Pg-ȥ׹HwN01]o"IUI%T~biWht9&uQ?~Kyg0Tۻ$"$;c1Pø' /e =ܖ䝱us#ONm# lC"V^NS6)eG]sDˮ%ZSU%D&پ П| d2ϒTd&c!zJ*)INoVWGBj@w QAaЮGSӸYTW덃R R{Q ĀKr/ix|E}v̯*!DÑ`{܁gij} τYfuR>EEMp@~sMgN`ºKUz͘d^IȢZCG8oӚ)Q4wv(uV_sxH;Z>Z̈wOl,k8fD\~lP5?c_FO=ցP*I)">yʁ^4qwr(WT(CFe nǷ["vZOU"0j+t]mroB7Xux zpԏޓ^5NE㨎Aؒw, }I3}`өcB:{e=^.Q~|||rxH^5I'*E> J1Ucߕfa64%m(n{L0ͤ$Ѿ*8TKIN+H7 !1{ܲ2G,NE AU+*4ܼ5R1'_cn =!j5&F3 VOJ,v!Y y|Ė܉شn7,Ų۽q-U<8>aPx{-OJ[OgET˺:9ΈԆ #3hH>e{e*Ku;{Bl:qlZ8ZCWA(x|΃ƦͣXB4]m16S|l?#FitO$7`4珨'⇵,ԑQ;!bs6tkv,Zw̶5ω GWeCtEЬHnΫTV]S'bo/(9 (ո:6 $yvQՌPjEK%@Wd1.I,h&XM;$ z]|9Q5,ҷǀ;19[dB ܸjݒ%Mw%r>7d=Lk_c:bRjo8[bKѹ6,>;ĶXhB "4ne)8XheqGaaD+h ۏԆ`Ik b%=ͨ{JSl*/b$έpa?T ˍq_B%lb;_za_+#:S9T#w;қ#+4yx#³+feݣT,&TC=: ܑF[֊`B0bt&X0^5a-=B4봴Õ֑c1+q2黩Z0D40- bET'ҾC:iwds}AM1US 8JƹZzk}T{b_Q μ6"_'ٽ=LJ.izѨS\U`!9ڒUtLۯt¨!NrX69s͝}Bs@@z$ii䏾,f'&|m PvLUٖ'@-9 r7 ErY8N"~ǑE~H(w@Us)PuڏhF(Q+C,93.l7CdoM¡UBǛDۛX|؋htC #_]6lXV&Jnl$}v(82|P1Y^|E%i|Nu_S̠nn)3xic⯣ #{E1ы= ; )vf ':4zqj"p#F¡ã7~g'rj@Ou~~.'E13z<(1:kMm)Î(?v$7o-%ЬC%B}&-WIoNSD:n|ɪ '$ Fjp_/LNص{fUtv L\K!%r7`)*\m>̇ضR0^G˔D(S5ϕko/^ {EΤ؜ݽ j2CLNS!"Y0Ջ_J1NsYSZea#K}.vߩ$R1f;^%vUKf۽Κ-v?\:=o4Ƀg:MM=M#]Ϡ޴肤2>(B%ugրƁ/MP;o ;/@s鴽|1Tm^%ܗ.eMPbNb?Z,fF.3)D)ZzVmc|^qp9{~ luh| ..o/`X%*F-m9=~|f0䄝^7N~[1B!I@F=?ҮAi!^=Vg}@flfIkF;MأC($2( i(o5/zr lv HlO:V;Į(/0hbCI_KXNEF[)Sy ðH  81jS2V 7 ,S]0uy&O~WRlm6KTf5xtQ4%^m tm!x5|=h| 6nHDc(3LӛeG*kܑsF@tB [N(c9 hӅEqQu#7ZJA׮Cm+-5/@kqJ6R w`FΉv7~uO_/N w!5C'N{Gj侁V#m_}U ޢ萄^nw4.α1_8Kr_>3Jx rt 8(LoP_eYh.`C NMZB K+uCЫ|"!>+$bOj5fN8e :oYzqs[SdXD%eI-[! Cu%zI,7l> Zp\Y_z=yVGV,#tE8/9{5/{u\R ",?uA,ىnI2aTO⨀8!3 1릛r_a+$0-ߘf{%r3r=+T䊑P:CgI]$%E%k@ˌ1mlyIsq9kdcEK~DpSV{^o ~9C!87P}H'9")5Kr>_dļFXo Iqq\O1|j?R_5?CTn@ e탵"hZ{* |"ztD7qyPB]ֽH CןWy${53:rla ɓj#Sq7T IP\=ʋ,],F$!?RS+!.ȶeT1ɯu*,B1&N  o-*C"k1<aip @ݚ&}"E7hҡ~N]ֻvڢX>^~h@͝Zi(W)CU2X*W|t̫,GrBW`kɗ4{9Y ugz}f#fze9r>ÄA7.VM`5~#T@kj@[Nlw'L+E,H3VU:0)4nQ7` y]\GЉNbĈ !+p֞Pem#ו7*jn83LFǝsH5wLK~ix߄| SR҅wF/)R̚`WJ357Jԉ:Q t _%kkHg慚 xj5yT%U'!f!Mf<;Q' ~;j풑}c_@o^†)_2OCВU;pf))CG&j2ߛC`߳I96e!jlGµHӓֲT4qE,cŅA\*J/<;DW ƫV'4#d:G?V佷5R䟃!<"EDF nlv0dN|9v|=z6*'2OrZm@Ada.)Q%FykQ!ggʫ qՀ1gbZ&!)k h3#P`}WWM2gu:(b9dXDf8ÿ wUD]mBKdJ^Ũ~FYmR_ݘ#NecA!윱u0VY0H_4 ]{]_Rj(| mJ/u;hR-NW3GssH4.J LE cW6Q~UT¡ }TI\%_BoUߊ+޻)b;zQ6oN}'`٢OzYBe {볨Vz೉tKo1sNIM+N V*>wIW^պNl(Gt-K~KN UDmFG"y|s$̤uwm_O֖[9xRXi]H V0ِYkČ_ <>BH-j{34GoSfkBklhc3![c$nj̈́~U`2,[43J ߒTj 7(FՍ(%}  k_xD >bmb( H0ͨ0 ϶5h-a/4JK'TXWMA"T@eOOPԵC~q<<'=Q)Kf PR{KwTx<&l2IORN~R&L$H;ՕGTw:Ƌ~HLj9R*?hX#$2(MH4yv]\"bρː]O6 f\s} @yfwbijf—dWvCv,4z-"*yViJ ;__S޺0},CM= }l*9 DZ%>r̗ dB ~q9X*T+S#_;x0䟆tdn&ؙk*l'i6.4b# ũ{?^3+n .8rW(8'%-0-z4LKV2d5BpfJ☥q&a6qVcz_a*z˥splGU]QlKHk}n$7՗G" ;ʼnm54Vgٕ:~yJG~M= jyv3FšZ#bu$M@) ܵ,-Օs:uWWNd"҃hnzD}/n\yB(V˴a\hĝBOt*V5|@@ԀQjW'mdWto*LڕK5\w`W;} 67WŠU3ˀɧQV:8$ʬ}# QA%m|[AaE- c+ ~TLe^1Ejyyb4Ν s[ O+`wN#e׀Usˆk2+?MhNϞ>CvaN%M `M7n@KD`ὥ0>x7w5]-i _~D^u[۠דT/o./'zvUZd eK_wRĉHnf]w(h$"Dc?4"Y-[SET R8 ?̣V.z670*V&ͭj7nH׫ ~tk۬+r[aNNY8u`XOۻ ҋ r':fx^'͔OYet!btk "ŷ*I, Hr5Yx(E.H)ے9_A'Lf:CFsVz&`F) 7_lK x\R9Ctx0 l6~2÷,1|4( '؛Zʀcu`F!g2\fOB#A=v E Q[^W:k*aῢMVs OLqn-#KsLKdov\]@v*6}R16 $pw5sAKlhߔ悺r>7GMh8k>~4T/u=kضt=Ɔmٿ`G$rM]^3"#?269'ffD\j{m} * \W~8YWn̥ێ˻.n+W)RQ,GֳԔl)N4GÈQMMB[E>EtNf\! z7Ϯ@qR 쫢hU&mo@E1`43M/~R{ʹBQDE:Z.o^bdWyhۃ\j3m[ n%b*z:#k "}ƺ~͚eF,epH'֕>q?Kj[(uDKKߎOPҳ!~yGLcq[LW'pMmvm]/1"hmtLj: h@9 1뇋 I<0*mWU;Fal<2v5 ).352?s+]èap|k&I8T7ֶqI%I3"Gup@v 5GkkUCG-)/hRk'M4/ ][8 T:7q kךgaҞkZ+qcP6c:k#[{AzShx~nI=\|bƓtF_hDن nRB0$"ٍ]XeK3¥6f+b2[)tSW92ȽU{a'x #k dųgX-2a{:rfH39;fyZYyɝj_eO2I ?)bp/2*)oU]\Dž< =4˝GP{ժ`=HHiS{rà$ ]:d~,x #m%bqX@Wd`0G#zE+:ɱF"K'aߔ?Q@;8BәAGjx+ϧ02hCEM{N?A:壗tϾƪZ][VHI?AKwsKJk_Kl7(&IsTuF#0ŃٚmA,TiyC]Uʎ@)VYVqIV| "$Ï}U`w?;~^ U s:bQ2TaOלuJbEe1<&inV|chx =O3BQiK:$|U܆}~R5#op4߈?R_{ ' akϦb+yo К&[>0D(R)<}wӘ)ECCX,!O-~!mJŎrBmK`0F6QfFG8vTAlݿ P+KO?~^4i@DL&0q2H:7|=$xC S]ө\m^27ǙRZ, n x̸A?z%2Ϭ/@.b!欯l!zoUo"hB{ &r3GAR7aD'qrߴ]|V؍ݝ1H4v;1g",#+#frQOzk~~龩7 q}91l6[.g\_{̊+1CFrT c!Itݻ\tG/m-M tljbP/ُr{ H8+SL MrRxOcW%{#NӍ=hbz7FyJP(lpu,FաV!%٤tKJMn7$hRfKA7SHϛ=n̻oduCql`( Q*ަ4N[HJ >$,*کgHY`*Cq"_ 1mc:pj$l`)JpejJ,ւhqa Ks`sx#Ρm98/# iu%!f>eT .dS]737,ꉿL o!M0]oymp:(43iא]Vh ovwɺ (ʟ^<4w|,4⽂5:ږ"Ք}I%uMDqV oerEYenhPΜuԍ݅"Q@c~Lu`g-!#\?4:JaNw+8ѰFVZd"'-Rlm<*yc*7r>"#g-fA?sbW cܓu17}+e(35. b O Z7s߅r7>R@sMQ䐐Gt;*Rs kk顟"5gy{T (|t kBY_ظ?&בYmrMHIAMh>`0>qs-Bp޷QV_[3#qJ166?4!cװ =A#Rp <|7pQ(,Z4ꓐqci8 2 vvWɣd/!/5Ng8\y)vv~T*i>J\;?/;׽L.Uԙۈ] Aϴ6lb̬}X2Л 9Y.{^F+aBiJCAB%\ֶu%H]O[,k2p?ӓC]cc+ @M3*R.{8)3z7&χKѰ2wY鿎J?àq[J@W2]"ԥ7ԉUa>_J3(b P7܋'<3*.M#d@PL߹7+ZܶȃBݪMG}YrG UFIK2I:{FH]1D%=\AdUsF>#;7} :Pz,PBF4~=\GIK+C^ExZc7tCgOH\#vΒ-/ sPAjC6:V^2v-hAUm6O'y~d"5ǰ (_Y}$щ)!>`Kb5_'|fo)n\9Mh6 akܗ'd34DF'ө#V'32309BY2&HN8Fpܜ7 >b fxgm܍ZDH9cF=:_j=[ j]g8FNN!T)@t<ŗ( %#'i '&б-Zt@M~w蝂 .L;_DVJg !'ZE?ZRdyv1l&S0Y狖Sϑ 2|iP8:@Ϟv{F¨&(L:_e5KϰS%r2D UEJdadX f>, sBտzrLjSۛY6LuL!^ f!"vyqpeBY7x;=+ U/2^=׿n?lK2Xb6Vg#GB&' W<f&ޚ;s&P|4ei%ՕͳUɭUg.S¬aO咒0cbDPkKJR>rpX PNj-v&;eКMI#S_ԁ:יV鷺+@Vf2!7 ̬:;OòSRꊞ:7ڠfŜM.t0W<՝q)wE?|U 1yGm+`&;Ig؉eo^&y QHdJ}U\2w_#jDZ@l۩F&~f(Skht9k?W;KZ?7ag0gUĪAX]*|X?F6œg# XĔl W%o44@%NjABhcS`'<.PJ[AM˱EEuػ.$PG rD4p9q>KV (쬠a@L+v/)C؁ ,cgfÄZ%?k:F{~X[R^deABJ!F4h, qG z_\0 yؑyE2g+&/ә5]%jR Ejc +t\i]^d{Ilns#nimFwml^}TD`<د2o6xr/([jGR }m".-de Ƀ|f}Mt5b,L-vS2Q;6\y169vhSJ L2;Ⱥ6eSbxC.MR*!nY'"D܁5gu>LVun#v+jOŨJ}|c8h Ƶ/m`؋>Wvx`'֟zgsČS|PZf{]$,7Tީ RmFn`sOM}t'Gu寈l$2H𻔶8'ٰ( mfRGlɍHEeayӌ#pCʇ=Ͱ@\G| BW]"nAQGC PU~ A>m}|V {`;[rk-*Y9l@G#8^pkN-ÆjE v@nZPN`-}ſHM3 ,F$gwfǜ[+K<l"Yd7FR\V|a0"USr lnB&{ wC5=8vۈ ,B7.}$5 ` jR1ڗµm*o7!ԝؗfda.1icpXͬ~$kXqW0<эu4!M@"rղCBz{1@&"&'5v~40!$j ] :U|T;= oI6 œ=pBgR>CtCV?XSAH/@Js`wC`8(FkŖD'Ay(i K.7!X+uGDz7R6銼(bA]q*p+~ҔH <D`7MdTkl=`9PN  ߟf,4uOri֙YXhu{ٰ!&!Yu%cTA@J +գ0-y ĞX.\g,){abc0ԉCwyT(j kl?RۇΤ cn/m&6omDRkZh0@娮OR==;o3!mPy]*i@l g2N\_xL3IbgPnv@*/?kN('4lcyXOF( G3m @ohW>zy=QXAYq^)Zk۫o\0Díwi( /ֳۭܝ=So1OpY%_WFxJwB2^5虶Srвw["q6uRb晧cB{E}Ҝ.ͮ:5_!I-<Ÿί<*5 @lKCg)T~atc%VOL֪1܎OrDZ.zUdMapفR (6EsHVfբr- Ü k%^6LITGw̰ 6hSɄt<OoT=4q~Fw 0M^:Ok-@ U܇YywŴNb(z5hKcp>^6r[C]ur uv$noh?-u`? N#'?a?a4ǿn)Ig̛7E P]N lf= $[!ٍ 3બ!X˽ 6K*a(L˟g>TwjL r.]$`'h3͂ c6؀tW8lsQB1M:9ǎgn=B!* U8~>" d`N.Ml| $<u?/M HaNߏ҉ = e\E7',"O;+F%9]8~,.7`wc80)L qX[!^㽤FhJo4u[Uz)~Yv`)ώ'kRAO ߻Y.Ҧh*v9φq5% fV/.f3ELuD 6@#J9Ray)@ʙplʏbmZ]0츽ZWJۃM J?>f2,MHS?x}eGA{Tχ me Q(ZJ0gqʍQ$=@Qђ^V? H_!pk9v68/М`yO"^ y Q/?Nj *wwcVy_vwf]NAS8w?_[CYpIkz#(7w_ĺ׌kc,ѐA#U-5Xp}#qtmm7{'n!sL[kK Q/UH& "kn'*J\ƾZULX̓APxc<(~IO1//]%Iݗ(v'D6;Y&Ffiy&QƈYYBeiG!(u*>WP$EJcᠷ#9QԎ2":3j]Yl}0njKe0>)5UB*`Nad䆳ɐx7REk14$"mgjP$l~HGceH&mFJsz"k?=}v(jCpي@ekaKkE-@voJU)J~9M4gfTw"E>^Akw5}Q$r9q|s];#)S*3Ro,[rhwCK=kݞK8,Ă xyh34qe54T2ڐ-iQ h`Ws;=xYQgjF~9 26؛Ȱᬉ) `@9:O<mTz9}CzJx=R#nkedb[#it^E:(rx "#;`VBz%%Y^YY\Kv[Y ]SmۭL_E(~:TYIEc{NDI~}5&dlR1*Ըt ~I[}@ok_^^[g0$W li%cXu% ; ޮ:ltcb?!KQu| qlJZ =Bs2Eibe=0tC7u3`TL7ӧ.gYsq4M+V8I~_^r&clK]aDv{Vv' %p-]CW XE^C?I:t-&I'F{ ""2IU'b6q:!hڏ_iQK]^*.e1@{잜Ĕ:c(>4bLkU^f܃-tD:|HH)Vl@l. <@:l?S0e2AP+,3ӆ{tN9f Lx\c!Sٕ%2%.0v᝝6B9vC77\`/* /c' GuH 0`3t~sl&޹saPH Ȑß:J >y3Ev]r; =^-ߜ5wPn n ƨrM,mea /3{9;f[(y/vcdvT\ORz, [@Lޯr1&ruTjIcp ef=>xJT5H$͕Q.Yjz*ݩ3kQm©=ʱ("͛Qd~wR? ߂g=aNNJFU6q3}Qu¾a|u W*>"!X OkO+($%?/[Ju!mf9A)иbofwkRMKli-1.< 2`]_O㩊N$GD$@Eۿ)*5dp" ^M.zn8_ћ(o ʕhMNxandHA1K>=SX{+3&SfU- -rgqrKrv3ckk_(nd>,\nIXF7a=J)C,fD~J? wGmܝ¢RdSڗV0A|$]K|r#̇uVXΜ7M(W΢Ԉms0/ЇKjɐXtջZ ș:FV-F~IZ}lJwSEwٳ 6xQy̒=7 ڼ=I(=!2-xXSLr_A-,<8TT\qW(^@[)`.m;OfƩ @^Cρ-3@vMuR8 A룾n1D(0+dYYFZ-7{\eRH>(#hH¬[J @!~?OyFPOm5/6Gŝ+'ֆ-64`4o)5<Ѐtmb,_b|Wb@I/sbF7Ü Wg:d{^&tGŴ&JOġU`Tn l\ ;:< NR&acέ>ݡk¨riFyٳ"'d D2tz69.#;@ݫ^d'u=Çg? 3 23{+Ĭfþ)lr| \N7~`mTo8ԶmfOe/f^,v {p.?GO"H(k-晙Fj F=fco\H mv``7uM5K(;ڛ8ީm3 i e+E kBHoCjg& H(`ZJpY jNޚJ5跗С kţw *=D>0P;xo&ԥT>T {plE8@K쮻>)?/X|fR9}#Ƒ3*vN7azҬ׀ˮu ΘE7ΐV|<j0,b ,++Y<}@*|gc)7Әv > C=`1_B ݚ_Ynsw4>z&KC̙`  “yގ#@ s~Y.E: ui=;лP~vs҅}]UT0DW=*FB #1_<8j(E﯃7&IVL> |Z6dV8z"VE9B-Bբ7VRI0B~~I!Ы\~tG?xajD ;d \k G3pD=B&Xc+ҫo.{u ^*dA\4H7(^2d CT2 C(uno nx)ia:,꧘Lߨư(1hKշ &dv)ǼE[лgJbQ{Nꌴ{oy,6rM@k:heĚ<01XFgțˮ_5BJ=zùZV:Bg;rB [i 6+Wn%Ip^xft?0VNYh a2 !;Oj2 01*i_ nJd60asFQ nh+W/VEވRƊ jN-a}*\|vͧ :X՟17NY?΋s׊\ Όo~%.m=4b~-MCJΐg<]Ш6+ \O!pin.׽AV[\qςEZ $hcb; BekzJ\YKTlh@5qS [(/9vѼ=O̜ߡu%)HcUnTzM (qS~oچ8rDl !Sݱx.hZvibO9cdk9א)YKvx0|8|<:y;ܬ$jU"oa|OOc:6 yF oqcSyJJDSaryDҮk6 8Q[왘-UVùyidЈl/G׭;wJY-iu$FDw㰘4[  rR+8fj 6:4/]pcVs||qsƳEUw#li3Ğ]Z$iz=AuHPc(T,riޅqr"c$2zZ'e6@UeE/7>fA|Šv>!ӿÌe%֓"f2bO_(hD֗NFA(z ,ŸA!o1)u 2Flu=ҹP)dYhN '{7"8M#kB ?Et[3_u|iXlVzӮb |ڿo:$*- wjaTuR=.n>|Cj+WЪtW "wx?o5ɜVso2>Q -9%D9=N &: K^#ľʙn4QN >IY8&8WI czJ! B"}R򾫪_/Zt߿yC2; ՑwGW uɾ!Eȫ x.}?M^z,j2_{VeuTv- H5k9N:/VMmJ}X W 2M9JARW!3`V@pj?*ƭ'MwrLL7ʴp nyaz!Ŭ>x̍Osx8I-Q=$.'⭸DA9C K؝ o9O HrH1ZV#yx[6DB5J@+5B:[Pd2%i%7WX% u|MhJ#Ra%+Q(ʾ.C+le(: zq r whꞈj@Ħc _A0K 3%;jE5p43SɇjBiҎtD  ~{%rk6X *dέW#,h&k.lMK ~ /K_ j=xt[<GfߘwtȤϩ0.RImuZ*.r%(ȑ9{9 #%}XgL8ﳜH@3Eʸmq\=|LJpVIky;^ZԊۙYU@YK0׃|lдqB/I12 _?ZMB[+߽6G |0OHԗQ_vݣ#)ْA(%%d9BTk[vJө<_BJPu7){} Un?\*`*Yw `'ڥBx%qe~L~.rK W$`z_w<'TSk754$4 <\ ɗ`Le)B.~]yHto 4ndsN0-ȫFR*zbEבEt `hG=Io4*} Y5u/{x"q,`a%DҦoqάZ8DjnJB^(q^Y|5JotmטukrҘRuKqڥSOI15qMoa B ڰYS  >B7RtIh Y=:|Q}EN#ZMw-qFU=yص/!@2賴Ѳ&]Zu'Ђѹ_> umW,LPqjq_0{kz:r7ӵS 'xMs YP3n \mP&xJK 5P`vsKs@bI?B9c wo;r| \򳭤P}4|$֫l6ޯ:!QG׌t9:Rh !NTb;Z,72ɻ#jfSF`W@YŁbpb JLCŽѤ0aEfٯ ̂8ٕ$C+TRX42@S^£t^ VK\ثb}x P.8HNAW&Sˏ=5AdpXqb6(&)ϋe eB6?c`#P}L_;UIf>FßgcbiHYt,nF),!E'~d < ңl8E v| oj,+? h}XyD ^@vqKMKŅw:}X@'۠^0$C%])Mi'nf-Y ׺$87;&-+~z)sUc^WKYz[@}#3\. Q%hZ5.ss,$aF,^ wX@KSmQm(< ᒗ; H!9k[tv`~|,)]y^rdĶʹ]jC+w{p"pdM9)UCcXt ?rK%.:8Dǟ>*2s)ɱO!Aq4*ry~^~|q0Z<Ə.lBUW .ҼzE3=q {@'bvtr yvrϻS'$h8$7~E0 ~Nce ;8ݾ6cʓ%d,#MpvJs,ဎyAsWiEPvKS)UΟFk` Lu\/zq "lC,#~)E$9,z))vy^oimCk|GԳ-!:7|Tݧ1b]F z2W CdžB-]5O G >f+fFmp"X &KH.G7KP #C~47+}lHT1dfEٖɿ^-#ǹBoj+HR RMuYaDI2)w:+Mq>a2R^^PmJTVwBH_"_fZsXTz>8hoEsᯢ0Tϥ 4jN?vYP/Z7it2o~47?<ܲ{:ZWCXK?'=ZxW{vZ^րYvY91L(5{Uz l9!}j[ec)F5JQ G1iI].E'(8^9}ihK;_'fZ3 U̷hZ+|mrnE=MZ.3ʑ; ||qƴ{Ev3h|,f3i{âmTx^Ém yV?X ׌j{n&8!H (p#M|l5JYC`*B|%425FV4 4`kA {aɕVyV|(ɭ8,_힖p鹁C%gڌ[,bic*ןb+oSUK xN[Q5 e&b~^JRҚhim-z jQU6CUP ڀRJ8j.+Zݱ1L]j: I:Hq`զF  |hEMv{3&Db 27v3*JvQOJX֕o3^rfZ|"Rnj&Xj|fR |fHVm$Sކ b`1-yH JEaDyUی}gǢi+8c5<*MgӢ 9@8YS)󱕛`q4sQSnM%y '^>oņ8vLlL\ampHֿVᘿ8×p z4srP7p5kd!.T!;EUXBͨW5ѓ:]8?UDQa|f5~>ZD& <4]jxBkqeFrbJ r$i62?#q2#hĭ[_ xgγP\F EfIzI^RBǦʔ߻For(;c~WY,>VXeRl /?3@-{Hhn% {NNJbw`ý_!Fʘ/\R %XʄLH a% Иy_,L=/v`ɸ:ЂY[M)Xp;n9iچk!ʱ)hdYbleT ]n-Qg>b2F6|c)W9ôjӾl*dOZI{5#l/qgxk2]Gnj|xF*`![5Vϻ][ 'nt?irE|Vj"@/ n%} 'ǰT}39hyBm8ef<įN@ *q$vA$d_'5VԼQ@@~T![6ĄHdJv}hVl۶O<䓉w$-!BRń4Az0Qxa6 5/s_]8KҊ'xlR[Ԥܺ`GdaC9"'WQ]lF^8[#wJ킳\#+>/ ͝Zy ;cH{EVPd1G5^EOep %W}baU__<)$IY|E'=<1Y{h_B9]ڭd)Py*ԩ xsqTZx327q`^A[iL|g`ЁP(/h^tA+\uj©Ф؝3.83 LSA&KOY*@~a$7~_JbpL@j}@K3_ڗA7;6OCе5KX Dl9Sd^J' f\gp!>|0<9~t.kOPq΁Lh7+Ƞ\ &: 5j@TpFo2?5Eo 3 o V۵>2]PB@Ml5ok:`BW駆-C-gŠ9LXM\RWkvz1Nŧ[]Zc{x~|glɢ؈Se]A@&IӇ~d/) gyB ydLVFHas3u/<>O;UT P(7k 1{S|ꕛKy-TUŸRٸfU$Ǖ yRtkcYT+DK?U8Fm5ln"p#L9@ n3l7rJ :'1?|46?ۻzBƘ?y&y(((kJ1b# D|ح$ieI$WKkpvSέ rdvUxA]C@]:Q %t=O?$pU*' ,+NѰ*nr,bޙHZϺÑ݇qwd_.4$0ՆIlʕ*5WlUԴ!~v"` G2|d/KBYĖ3ga+8_],./HqM/wВg 8WӦ%w0raTՙ~3kvA >3?49d[F iʃ[?Um#bk6ː^u"qkJ5| \#2!*El/߷(|a"FA4= wՑ5)tR`{R4'},;"ÉdoƓ+=;'Űl:д%lT0PYL44wsEgR"QBtzl~맖;:d0,"ъAFve\~ލN2U؅MuQ CyУw.Izۡpɥ k܆ -oF75IJE=n"}fM{ˋJA+rCZ yEykTf9@.+nK-Ց9M#''LDQ.u8-n1!QX&t _-դnqC`/ $^G÷櫠XEx[8)OPɀkFtvy]F c#+{ ޔa~oh~>4BMx[8VX0IH~Y~-BUP®qUVI-a'5QTS +O2~]a QՉ!SbݷlD5wpyC_QEa.*r@uW[﬋W:yo!,uTO!ҍ7.(kb-xr3N:G}@P\'r776w*/7T_ǎ~˅٢KLi*ګ+Ǭt] 2E-P8Xft'vweU[& k)T%hgkDl@8aN]  P|Wgg>Bo&˯ǎHAҋϋCZ>t%P_e# eϠ;,|c`f =w@泼FaLWa%42O?n-/ο ?2L),#^ >,| 37U}u;4Uw{iPS#Ss UjטgX~F!~~BL?tG%N>K<`)T=XPۨ1[Z&v~,Jl- <`>#a]і`%_H3;oUt#nEAIlGeez~ʌF(#L֦O7}pI~sA sJʋz%P@hsɞܵ7{%~1 ?*P;Z6:wH Qg3*ފ%3COZ$jeu|$H%x+"as@2~=CPN"afY):Bmq h_9Ov!J}r?mRH:3amպwi_8gT-K>Fr%܊I{['S?@Rr'e읙c brfޢ'jM{FZ9}`Hܽ'<]N}ȧ4Fj3Kom؞VND_ %oM+ORXf-.<?781VMރK 춑>p-/0UjLXHn'tP]_pY(۷'7M<e-vER!XBorӫ_xճS7͚eSh:@+j8$#1g4Z>irOt0\ 8%Ɓ*4i]֍;Rg'"yZy #RX-" 7}VV^4@v")ZӍ;Q3fAeqb %|IfMgOɋ5ADWC _BA B=KqG-0vf@7h݉6 gL/iβuïxJϓ.R6ؑiosOZH˘&`Z=MA5^oQMImDzNnʤL=M\t:AŦ7EUu],k3Rq%P xE5 wN#rEN7jv ܳ:!k +3:)(/ET _aiO+F(P^\h&&Ny`3izxC9Zt'\`pt o[&`p qF8o2"ўKu!  k#[N'=ciۧyS_ClO"2ID^Q-gJ>@a^:@>\Ƽ^;uc\)5oP kG ģZ 0?B=̤Uz, ͸ ^Z6_r]Sos6`CV'._C&FlAg4<ר1_a4SeJ:;nZ(l/c JYڿBY <>z+ҸU{ۇZkm~$^q;{KHV.sŭA<x*u.5ʠZ-MfnCU {LV+ Kazl#l+KQ-3~BX%z>m'5YѳJ/]=Q7E)χz0rSCl<B?\Y܀7K)P7*w{*͌_𿽹T8kT0s)E8G?_ σ}Jly_]q"XǸeATe U~ _S#i#p$PqhQ"s9r*lNЈK/[ł=H~̬`jZSҨSg I_\4Iӹ@OI#q=e:F+΄+aE;swFGɀ144 ~k*P ӖzsZHc{ut Χm[@$lz|i˰ |`̎8e'sK=`kb!ƈPLHk Lx$)Ps2z]NIN(/$xYY6l=|hʦY g<A+իJɼ0x :vk?Χ[jw<傐P'hK?S^V{g‡!Abא9W GX39i+zlԚkbp21O/%rv#$ϬUȠy8U]ݳdt:6Љ_ڶ)6&P^E6џ.8<Ҟ:maz-m(qI1K&ڄo&@ژͥp+LyfOLv"㩚{zbR)nͨW4 [=:/cqg֛gtcdy1 mz">!ȦK?kEs&8Ϩ_ 'X.E F9U5ƫ~=5;p8.NV:m'+mJ ϰkpoPaɞ%RqP ۥ@sa t/(=zD*~b= ! 譭PqbfrY.8MlQ~w"ġK΍ƿO L5IdZG" sF?D?Jo#+ MZU/ vU~}2 ӂ+m`3ppU2 @vagm|;n\8Ӱ6fq*5҇"dRwMR-revѳj+zz`. F${z!bxMq6TS=HIꑖ@(E*l}> F}M &W85[-C^P0i܂_r;J.<g7M_gש0R#Q"ʉlt8DԻh@+x%A||JufRP9/IuNsۓ3Qf^xpd(s'Dmp݃gx\0i-N!jv6dr?u)0)@c\%iS_H*1-VVJ+LTIn&_()J޿b/FW03֧䥒U94=^"N Y$#p+ $~$D,>687,B"ZrURQ07/&F\x;odN~桕=erae.SE8NԷ\kMr%˰l!FCW%5(F-Pp|N`"9L/H*Ul-@H tddJMAgZ ~( v^N]J+-66tP7~4ynOO30Ofs8"fw=(L?vcP_NIKhVSORvNb NP^*,RG+:֔B8yD8[w=A=GeÕS; !rOtjzhq0ZDQD]c,rbwhݱ3< tړv$K+m %}l>ԓD`8c&Pz(d'x蒦5;fZϲ)3ȼ vې&uOLy싼Gq2*&ws0+}sD~y&X)\]L74j'Zײ4 :˴To=Uxy5k/ݯbJx l[\KʱM@ np&gur(,QCEpS S\!yӶ NkPg;Pst-;]yi-8]򢆫$F2NNcj2ԃsiv-!74ֹq߷ZWGC|z\/lXk΁PLYd_sj-_˿u51PrrD74|Um[{c ۱Bp }ufl%`Zf!TWhs$.=TGrN^ZѪp M2ʄYUE]FnC)iÁtx.hˑB`>5 NzF;W`dR-C!XVHn}x7)v,-83Z&[BqX3|K<^Zge{GψF% ⱓ?:ɥH~ ,'Pܠ CTbwW"=c$pU&ģ)(H#s{?!Ɯ0diglp`S' vFI(TH;FKkfV 7]ցfV>/Jƣny?D<."ܻ+mpF;aM!Oy1ˠT&ƽ =n7_BOţf89[KJ[I{}C=Lk|oe+"A([e$jz1_'*, `] Z*y-6Y`&eKϪ5X2g\U0t{XRZ>7Jw'O vto'3|}[ٿ[wj}!*v|6o_ H=YgGѮVy݊ ]D4-c 3_o57r+&5 ,D}Mf^OtOL#&J+b9FOﰚIN48E/a&q-r{OWs"Cj>L"Vv;6 :H寘!0'XFgcrS 5Ӭ5{ƛNj;V3xغm8 E[#F{)-M=̀6N_Ǖ:+0&Ϣd{Msݵ˜TJT$l/?''KP'g+_3LjM]/7 w(F#K)^JH 559o*SZ[ #ԵA'ʹq*=lޥ+2o^ҟrңY i9ˉa__} z&Ĭ,$,yR#csJt#';t2EE܈;m jsv숙(~A S9+mPb I M rjPңPȒAcAǒЊbA 1g;Bu,Vu1¢@HX~sRc! ])2iD`bZ2L/Oo6uk0WxM = 5rE'MN,k/9u7pEcfPeCZ-[uλ\hBf)Tl {5D"Ăxr&ɛT듔l='u*r3BT(v2%$GT /cz[8䮽>e>F'f*v3fEFNf=kE>p _t& %khK!%pUgeRj$_bbBXҴbxQ8T!m `dJ]b't~/{T,]y=u磟)W1ZbuB mfGi᫱na =nwT'qY#f,7&۶otqZnT>P 쏂Ne#N&S) oQn1kE~4LZiB%2Xm@cgyA{y[PSA[!;OuFuEPQ]%yFo19eYHdiKߧ[NŠw^Rяg O!Y(QiHW";+3 )sd7~BI qe=Z(̺{ֻ2[=/L?Mw=o\m԰qn0Gs iS2CI*MGcPN0SY.tB2Oc<@C/soa:IDǑchN̄q6rA>FzO+Mvڨ㬂|sU59xǑ1ySToq*M*MCR{0F?p~SQ;?JmO"EɐKPηEEY>GGDGǥF݋ <.éMa<4H<~pd42)Ca'A lXf"^"ɵhM9@(k "N>qqq24XSS|_PwI#R.K U,vL?w5<.uT|IɡdI^9KbmvF uEw1Mf+bVh B3SJOr[Rqr{ngl}Ss}l+exϭ AAWCD-d_`b4xb1Dǎ#]]X]+>-8~VmKZҘ(I5{5qttVpoj#ܨg&{lESsZv㎡MO<#{ycG`iPhbbymY698y3>!qz-r _2W[+>$@ yKXn ZB <=tExD )J7UM7~na<4׷q-iդ!f$pǑ@L@:=GJ2 H\W^$#1kc6Pt[Ar+9҃u0K4a9S )̅xhOMK.pfȬE3~A`f6a9QN͎mǘӀH0Es{%q<1G lum?>}j2..7= 3c1̏(Q4ctzsXB M\MZ bg˺9GNȶ^ua8ntԩ.:$魡L Sh4p+Αb}ׄ4w!V[cG-]}+'/M3r>j. P4M q]?2: w9E^?FjΤJ`,Z[ ?!i*3,O!]o xB29rj-Nϭh"ɩ}fW%m1+'D6Ge}\ۉg^rމȈ[OʭՇ/Вn{WU 㩒.65sgu5MTDS>ێy?o)(9#0', ]YjR CO>(uiW51Q{J]B738=4eةAz4Vޅr LI|MD^:? uùñlW;UX 6Tչo/J+ k o6~ꭑ0UIho%N)K٩4>wJ_^)w; 0wu!l󉭯ly 7O1^K}p3k|ks\W[޹Z8k,yNTR-)J8wVv 0`-S~deyI/~jgEv>Q6s]lz*˥9rI7r$ilܡİlqLiVqPL򱽛pMF͵7DS!J%cw %K$dRR8*ih^p!s9qw#d\BeQk>X\) ȼDZ \} wRW!YX̊_d#]94q{tAzv K(P1e5tl`GD~Wvg#J'H.i~S},:KZMkovϱSqM':Xim.ZA{;%C5J&&t88 V`K!O̠Ag~,(ʫ` \%9TK V?cj6oK@O<,^v ~[S* bԏ!RtYrɹL@$0 8- .RET@2z"` +uD4FkQ{4Ib '׺[qlfm ЍmԊJ"K]#a*9^>07| ͭr #QIHM*E0E ׊N'ÂzdOsլbrJA{@r $pۥ}NBƒ!,8Ժ >i\PeˣǫͮATVAnzPSV_$D]IEkVN%r"T.qS_UVD%K斩/5:>Jt?Qt ~*&F:+;# O1̇9Vs8O?suF`}!5:R?,H7%SPf+P@Oˮ텩:miFa 33w[-GVkjVJGjb.e^+j[5IpQJشܔɂ>^ x`yK7Q1?Myo+.&#'L39Px%m٠&&FCDsp7Nhp[^XVՉ1 [)I ˶s=!!$fS 8^4([ =A?BkґֳGB?TQ!~iPYVʤnpUȲ-4u2C 7j5: iF#';?q+Ow3٣8\=t[^70 {&ZӢ!KkP*êz6"  0C3P??(LYanr읖/ bOt1e]5ߝ]wм3 if~j `6VBEnͥ ~$ϡjqW) ^_ VF,[V&_bv#Zqj% @*!kf@ o9G-~2 a$mYF`WKZ@C;;Z aǗbP}קھgk?<,ZMVu(?4G q\q[R2%ͫD*|nK1 Zf%詰a.RԋLj;W(0b X,R&]1~2 !;נV][ (04μrQr6#+08BEmT&[ O#Z݈®fD]stVYRk=n*(ҩMt|SƬ+ ^{=s}ufd"8[\cśf@z`$wx #_1,TgPM_"쳎!HN:r.!B$ٲ?ZD|zj o)p.ka Ncg4`.vW6@hZ)$մ4޹ohiܚv:/υyӧ}Bo˼q _KJYG$'B\ݳtO8tr/pћp*x j`,MV;H)'/~‰6(q밪YDh@XT;EC$bnPl|jRB[N@ X!MHRlGS\h/xh b?RtTr/EZ7_rpVln,?eJb.OгַwIz0IDdѤ a^AZWiO5pߴ=சZM;-@J'?E;=&%5g1x|r:;d|hYM9daQZ4Μ2X݀>f5,LT;#0ӶLSR9LǼ۸=̴톋ʓoeTNVz0nv^n _~^/tdWX3zzgƪUw&ٗd1BmKݭNjAR5fmqhv6&b| STۑjƝ;< E>E9ĈU!>Uc"P4OG4OTuלtn!U]qKTkǗ$(/`"x2*DEc[ħߊT\tDYؾ~d R= anGZ89^dԨDF'*mWMεI#k@]_,l3Wu2Ybk@ݧaJ*@Zײ}IVWE絾W=^%uUD΂ A2L}Vظ$v$m|nmiX.銦/ȋ}Qr=G "E|u &n=l2JT!I=G?BrlgOU.V*cY.;vmw wmǕ|i6 =@xf ilM?8W)YJC,5 ㏚v wk Ͳn`1 g'eĥI/xAvΨ۽4 E3NJWݵ/iv *]{Uf 0jj7|_OuЮcȾl2$=J[%ͦvctͽvO٬Z+y}j,o(J^ l8-%IW㯰>c+UFOl⍧K)Is[RLMAhT:ރ"8)jяK!(~}ʛN CXx"x(C qud{ؠZ>zY HC,n4%._FWųբ Gib{\vQ]n͜%Uo mZ/xtd{G`m;)oJYX2؝8_):>l &ŀϩ7Auy[zymaŴ& @F&ڡ6̕f`D#Wۺprr K`wsz8!|4ijμʣn[ 貨p 2QpCe.쿍8 /elw%Z @ C@dbxZރ!3笽?1n2M߹bhbhZ[Be7nbF̘=uA*Φ4;e ?DVWM9³,E>* szYb2B6.eH:"S4RWqS`vH<:KyKL?ӣ1I%TTB+ 帷l_Q}{d'7x.LC{zY5${=-B¦u#PzuAKF^LpM~> ^k3DH<+18[%{1S5_kNx9V!N mԝV?!.?g|S#y)PA#fQh& ,TLy?&z1U>T6V>WAOض;MRiyI@|ߏl0acAJ/j:x'h{M[9I-u}φ1+i6 v)A`s|NF7d.Y‰#1NϓJ\`6mjk#D[|&mss-%?qKiH ''ǦÅ%ZR'p)!a;ć*K0p4Դ;'tgxUb6@183 y&]>ь(Ky}qL!p Q:XWhmIvZ|zCFX߄4E.Ŀ;Is:7Ni~.K-JS}3sٱSٰ ^ :bɫ!V"c:5<++$pH}ēyr:(xkYBrkč4)čVPTH=G:}KV0'&]1Old%j,E<$8lnd1\qQ}yHգ/pC2b քō_v;u6Ur0a-ze&uue:nenգ$lh1UգKo3"'vgM<]-BZe\&q aZJen@{g,_zYϤW mnrv+H`K0N.rdb2C;^,;G$S'MtJQ+~t;pZ Kto*Lk]gAH vcx8.;J"oQ xzIid6_bݧf1xezvۅF~ɰ{L"+gç`hWtd3>|۝?7bCV]|9?xlw7K "nΆ$܌wT.TxN]Vb6]m?SdpmwScQ-3s_mJ|OS9okMey@__*^_Jrh3X0W+":yJYq5%06~bN(UysmؚͣeJg3>nwnZ_"^mFQtJEYWR =3!.ނx.1ķ\+$.;_2g~c-N+"t06 >Dq/S7Jw4Q]ځ悊3/d@JC3 [wލĶ!`,* AE}Zr0竿/POzGJHJc10]k7ۍ/r oJ5$SDĝZo۟ѿ6/Ȅv3pbf!'M$5O Yl0Nل6 ߌg i6[bj2=WMHNesJtvJve70fʷ z(ysn{MAˆ.JCL 40J<%U-ſXZBP‰+wsЖO?ۺCc{nEq.U@U~%:*B@5RDQWvX`DSk{L@wb#jf_zݥY3TC+PK=ד?(ұt #Sm櫘(#W.vB+1{_fEJ5;Od pV$"[r4ޘFF_,hSx;8rj!itɭrW?>]™ $*aILlMH ܨ9ReR=i.XJxml}tFG4 ]w("j3Yů, GJ !>s`D]+ww 1|oބOFH0}bh+vFR _wHNF[}%K &\<"rQAʋrj$rz8KzyٔDH="[%W5>|-F!sN`^vETuQ *#O~S7x5l*m%`D|4vc̙YKG/ݽY=Gt%6h3MD[4RWiӢvWL͜Oe6rYFt8ռO=u>u܋Vmr W˗Ԣ(MQ)q{~ j'HQ4!]0PdTljwOxo??dyWĉhU$̧]΋"~^Ir"sGs8~UWqGC5@+o-~:`E!Irx(Pa^4,"M7E"B&dl$TKWbUʍR8Y16!&1ekd;Eh8,(X+?VDaMH:!s q -9jjkoE-7>V8BΖT,@Δ>9[dގj P@v3ڕQK W=cз# fb=t\p㊟VȗGi:z䣢҂SjDZ:^@F\[ [rWAU;4@qFh#HF@VYeWM 8@1T:utxY +lsY䷍!^vsT|I@+5`i)!E`H+d~=v8DGZS~G Jq,4 {x=M#kT>I8*BO-g?LR42nB*dA|,q]!Zg&AݥC&]*qޫQ+8=117yc\UJ"Vߌ߰Eě|-Ds\B:B4m=|Ǝj}zJ>Q T,egr78X ~[GD е#;,[P`3Kƙ@d\Z ӧx CL}˰wBႰ^dNL7l&nd 2/6Y sȵL@S lRgʖSLvjiΌj픲2!ֺb*3 w~6*9 W:EtvR rqP'[1%x!%hWBf3&A#Q-vv: "C^+UOQI0oO?T~Zh*v{r!4V`< BpInN#}?BevTF4Ez W]^N\ ֎4cvWzv/mT!C? )쉶G25Ѭ@ h qɴ'ڼH!P@2CZnGS[ 0 X }tno1. ]P|Хu7E\G |nA9.0OnY?6d[ S1r:O$>ӍAw<\Ւw_ ۭo(9_R8ABB_Db977/FcYW%kV-%/5aNg^=a;" zEq.EϡG-h9hBf'&^ѫ~k/9PT?*L^n@+&9m7xvD+J3_nI_`XzH\5&vD^ Ly$~ %-2wiaK9|j<9pavq:[K/8?pP&oKJcݓ+!j:) 5h꽢̂+@^$tUOٹzT";Z6{d¬;B/6ۉ6&r4$!Bխ~7RH40t漄R+voUQ\Bxs9RW׋Q)~@Yʹظft +h@QrTbrn v2']~mY0b܏ F``Ђį+Vx;h5![H@@ 9^g:..௕.*nS`"T:?vWZ ^|Zޙ O\0 7_ԾW̤nZ䵥Ű%8p{so(d8iD7>Y͇E1aPVxcqJ)r~򰉓ܿWz`4T f@귀B,6I9&`GTMO""cȳ ʬ8'M*sE!oGEHMuֺ۳Vkkk&Ayxw=kv<[*!UwJ7"x]x27Ҥ#*Xʹm?WQ#p?bYT:U-sS<+#k mF'@Kԙzc{D.8}bIYHf{\mx]}=,m`5SlQ5y2a6%gUcv(uʚ*ӳ|Vƚ3UGA#$#ZU4} 9]}iirYol$y $p*U?F3_;V)hiebW6.X]Z?clMJhf_!'fdqvIy 4l)a%L")?)8mBcshS/R4 noV@_`LDz T ݗDg=I*z7 /ĕ"&ؽ)ZǤ1. a*WL OG>z e4%9p[,]bcݫj& lq$yIĝ-i } 6 :ƞJ4r/[믦y0‘x9ylJv xX_oQ@ h lCS`(>ϗKxA<+hqjN=ڞ&t,'pE<56J>u&6+ΘPk3Kj +$̛eH/qn?4nE! >o8t I 8q'SuLv"P_eoTrQ`$!Jui0/x5:ɢPEzJv3|Z/݀}B(7,CQAmn0j6GVݶ =]δ2\7KixCXjv>FYCPv!D;?@{ަZWGvRSSӳr)DO#q>ahͫLά;WǞE~PTR@5=زtoK"j{Vʝ[22q\lFhߵmڤșԤCYyVn$j m#BK@)r릨l`s庂*׿Lf2W̾q_VBľ*|$F$wLj7pC澩ݔ-{ T# ^ibte\yOʭiGHH e${kH|U[ŋꚷ;}`i/b*ZX;Ӳ9QѦ[i>!O}PnGWT|R)P { $';&Xzc1.Xg~E>&>XޱW `d)24vƆLHF鉖=ٙ$*C2x1nSc F._6(E%}-O#,0"۞.4$7+ɇ".'o,:  "%#剘Y~HWtgÝHϑdCR b[үɽζ[_#bȌs2V#5܏k ڦvi) @5 nI]=)b;b괶F5 W`zgk?{X'\lBI?4B8^OŐu'7@Ξ )Iьʩǔ~Ĺ0u-Qp?-5_Dz}VQY{_^+7)yDgz>zԋwB!;+Ä%]X@HNn50ΞLygl2SQnvi_l D'$N 髺s3SXގh9"˲Slc/JuIJvg'(#`Zw-Ya2ᨶ7 ±d(_kby)|(qydti HR8ֹX?vW@egG0J*L{J3 Е>\m&_b,_bߝD(콙ק3pK (Q9RsSN=T'Ydf8C02rF=~94pxe8oT9Bӱ)/,.fh!#dU[ ^}>>LKF}(ݱq130 qGbmvbG>O4i۞X2e%81N& apƲ aʎEMjS|~0IiCB16$nU;$ArR h`~hE&*jH)T>J$]yh,D/}+rБ_a0cZGf}MsW n9*I#5h4 N JK#N(60=_ʙ^왅OǗ|2pnD-).]SI #v9۶}ˣLșiTC%4 -"O*O@`sW}Jħv e*EAT:Xj%|HO)A `j%bT9\n~ '/t(rFJYZ"WQl)%CeB$Z-DɈiǹȮZ; i$L hjwUIEswBmuj ԍ} |:ʕ(^1ƏU6&_Ҽ'{vE}wJ_P1~iz'BqU~]7j7CUm./muK89d@+ ?qUсĉa$^M"ۃSp"R[F;F,!(63b^AI/u/[R>_ )?ʱ?x56*!ۧ,֍/ɜ[/rg,a FRc״8"7 X#C`qH.F 0. ,r-; >:styAl8W%͌u[Ka3_=͎G5kR}y8YҬGL@C\A:K*T2ˮϫޏF1 {r=3A%2wFm;q4w5݁Qv9YHa D5nk/#rQ%Toa) c)0䌽|.yUP0S 7QNmtoWCuEBffB%ӭRLcsc+ ʯ$xsf? !Num’@;'(Q(X"Do-cxm-iԦL)á܅qA}_h"[{[vm3LY.bZU+)]tMÓĻa%Wa&.SC(toa;48pdn?R7'?#/NV!}td5d^j8' @@:Pmն;wupR!p0D__i,&C݈ *iDox|oLEb>).ܯYz[|~&O̾o^aW9B_ >hB^K۱ՄngRJ$;ѓ.RQ"8\_gLW"GM âȫt,ڄSN'|ˀ#8hr{!djh<<$u+p qytrueB2׽J?.ksٖz}SÒnrD"vSB7ے7;G_ n@2ev}+G$bѽx 0b4Tʠ,(VHp]UiK[\ނ8ܱf*y؃ .SCϐG/ ޘWTLYc.|KR7_"y*@B~ %0l(x3PVnӡpRڜ}wzM|=^9{ndNC5N-(:{NY8D+Fb"Yba;h: /;\B` Cgn2Ke*-4P)*益{(Y'v &v ЦܬL4Y&UR}@ZսvPa /c2 .-ax2#gBj(\ӣK~r@Nmq.=T n$!>țKQ6:O׆S0EO鵿2R:3?瞥Lk_J?g,H+ Sz/5r4ˆ [~147 pqO?Mhcjm/AaZseu>`xla{i2vB4%1p/jvӵh#NH͇t-ٖ'͡9BO+Θ2idwJp >vY;3BE oal$`(Yj yZQT{_3_~H$#:,HuV6i&` p,P՗^4&)+0 7Np)2,0V0l/̿́:I36Ht㞟ei|uu5Ϣ]:dJjƯf+A׊R:-Ϩ}𹿊@ݔ+c DN (R<:ީ(5:zk0~X*p-bH9L5NB?;14]v$؞Jz>'&Zߪ9r'ɦ9dr:cޮ'ʔRP_(8tjWWϿ%rby)::F&eB(*_TQ_.\*jL|h93S #4y =y?Lxppxq*&ZmLT!1wJѷ)oRAzKI,E-|Gz`y}E沭Iz5$zȲզ>7DL"Ĭ.}ixPF[84ۂEw=5/!uuO±WJX-\J?,vt[̛]7!] z5FQCw6H%ےoh0נO*9t CahmSB X}c^"^9be7AmXf4A֗*ZΜ{Oouq~f`PZ #YX*&Oͱ\$2~9Z*rL&$iMiu*rؠ8ZtDxj2dD )Dǖ~OEɁGrz 3Jp1G_4-ofMpQp*WnE@c01QG]PGjSDO=6n& Z=h w*SB'%42[Pы3ʪ,QdOAI6',ZP% /.{ {q12E= 꺢GMa)6wϤ}H,F;OcNjmOVu3Hƅ ;$~L3n`0@Z!6#܌˃FO^F&Tljj.DŽtG* P ҐPˍ߬%ʖ..VC.2ٷ1JA!sQWV_(Ye$W}KxP\}5`Zcc\u(} SWB}%G`C20s :"XP]^TON%ز#2td-@ΰߍt!. 餍V^v4շzz=>yI-)=a&gj($V6 =*sAܒFk[ktzuQ3ՠV5HY#=` 4 [A 5`C!017t!&e_f;9sսƲ0ž}eB9E* OP'Pk@^=I.lWho( J ˭vtu`| ,"? poꑊSO|_1Q} \⹍Y}Bj@w\[jpi[X;En:/V36d[ rnQ7;k1°|&QGڌ۬kkJ1M謽3mb"@Z@_8cV`.w⅂0':mNP,b9XgOâͰC &Hb:=P?:G W % tr}?!BMjO "j3TRA"t#9Q6'QHQ<:T[M@_m"Yӑb36vW/9iwq K:vtᱱry9C18";~6b1Ш#@X XB:Aޟ뢻'QѠŹu)XwejƖDLCf#As測̎wֻUPtDqOsJp_\105O(gN:F8\V~6 Br뉄鯢oW{kS{i}USlbHF<4:Ѣxg͈*'sJpb\\W fdXYp9Є}IUD t1],PDaOfJFoAQU(NSxK%A 6;V(Ǣ2Z55 gcsIPQ+ UN_]ܦ mBOټoٻ;cU; |[71!vbwq%:^2Pn7[M Mg25XMt0|]O&e Sji| 8@)NP5"ƙRՓq3j_N /fT\X3oʵGlH}Z,lso^_cDՂA) gC]2.OQri2LaKa~ L2,}9I_ BVŷ雳2'yEH|R[6w`koFUUye869=QPPW k7JE!NjqqS1WZe 6DѢ23[>mCkΰ`:~MՕPPcZӁtyjUC$Ƕ }/"J\Ec}Q'Vziv\rfؖ8|kIUcO]y U@KX\|I4<Ӻ*mzPeoW'VsҙҢR8%鳐?.5jϘK9sxt*ׇjٖDXAپ{n8=5]iaȕ%\A1iIuY{~,xgJ)O%Ao\zv \ e<'!бS$֐,!6j 5'Qă`po\N(\бcb ~mUmY02X} OQY!.DhqgcNHpY*Eg\X5H;ń $lPݻu PU@gfj@]O#9;'6*=xG7U] k{m?=܃A?x]}] ҦM& > \.uԳL@|~{K]č^!l"I!^,ׯ0zGr *&,40}k͊1{2-22!/y NoC^QgQ*`}^|KdzZ4 nT+_p)ʴ=tk.اU8s)%Lu 4H9}d2sX*$UBFQY0Dµ|.m BAq'(xF|ծ+[D͖#mHb!T8H)Mқ74xl0ndaWwFunH 7*R:ؗ{E~nHOWk4b/J/I 66D`bzncʕ|bN_JD1S&\b1wʎp»Vچt{XLcp*-z^&;-ٖ]m:jb+LªO,YY Ȓg*IfB9*Y}^ E6~5ȯixZ-kRe *5ፁ9}B3H O0ƿ dz9Jޚky ]U,$K(fѠIkTɼX. f:=қ8SY0$E>2{z)`(8D `1'Sl/74ݱ0[WM"kWTı'@ǩmp{J$۰FuXirv45#>žr4$RMdB+)]{J_>B4C((GSe[M[,-aSF#R3~7}9ح!W/مt'~/G {oޭ'%\〔$Mr2Qxþ`aY::)j'2T^#(nXKR4"rM]>T"50Qx˝HJrq Lܺ&U߄r$&'9t ώi&nVe 7|tL*L}b7C@oep{&rMm~|ڠ>ԛbv˻< <fK[8 =gM6&E'i`f[wj,?PQR*q8&^g{YZ4t@^(+~& u7v@VuPE1G ;k HԵ">~;mYPʹ 0RkRLibĥA7\e \߈\{[HÃ=77YwM">g;!QN]%ZCO<>;SM.ߕUmGoq{Jgܽ(Ϛƅǝ۠(.N ƏAJ, u[AVjvAI ((QvO3TVh^­+l?.Xvd #_^\B8 ɘcླྀN>"\X.پꅝShc.7<:(\fj<%IZ0: 3OA  eo=״;~ǣ=0Lܠ6 Gҹm6.3|wԭyif;QigBOȑOMJN&\_dSa ]:Qdf${#ہqR 8+OeXX9?̤L)h|!U@yiIŃI[2Y*58Bt&=}DZ) ʍvI]}ҙ ޤʀ2THyl8N2"dO#C^ȬS*/`ȄOFZiJ?.Dt'[.'oYKce;E1[#%[kcҵ>Vuv4O]Z^tET甂@6A*@mTSi5T%;X~7Kx5^7Is)w ސzJ-tA׌qDH AV1! gYdV?oLjٕ#d(+.P# T\޶|8 0ߟ'^4-{u(jkuDZCGo-J D;̶Wȡc*Vt:PVz:LU5p8'<J Dy[VN4haSJ! [ny[.A~hJIo~L4+hFk\mlLA+a͗xu? ӱS|n&-< I˜T@R8E/0dN]. j$is*>,/i9w*ݳJl%ݾ31eg 'i۝FP>؎La \/)LY-k{:mt@Wk=FjU8jQquQF$7B7v\V-Y!5d`0Q?l;3`krEb&\٫ 9S‘ yVp >ٌl<]:t!YڭzHxkj)t,n Z٥yfKf7JK_4O4I-@OZoO v>*`$`Co-^eER5=d.q0LpٕrZqz-VJ |<{sXOwxf2so4%!ʓ'I$aڱJ8Qumzi:!%em'`=H#:]e 0$ =ҴBg;g7d5z;] Rr7.Ձ/C.} QVڈ̢3>8u' ݈Ǎ) pQwt5pv|x^2^14nW\9Dz0VsOAyv#.Zׯ^:AۑD-E]bOB |Q&stsB ${PܑZ_a'ub gƏ!Karޗ+@xrc>`PEYeG 4Z0Er u&QO$rHKw+P_m&yO`MxtghQ!=ʶޞc7U6m˻=+g͌s] Au>Y曆`EK& nU U$J:a% |;*tg Sp)KJ)4y dfvaGK4iL, o6{"lSpK,i abBsRsc'h8Jjl(27^-jxP@Γt9˧Fۢ/')mD{)Iނ C B^f7=b;.~Q5Ѱh gac- R;noTG80!ԳZd:Uˌx*! Ze΂1hkqҋ Wc*!ZFL\7)7Q+0h-%s%36͞ TO&ķ{Ts`f6nl˙ RtڳJM@IJ=uʨNrU.D盆?BP ڔ'Y&R+jw-IITjK答ü,{Ui=zA###c߿K؇_3& Yhw%k|i) zoRej*|FZb0][7HP!47xbC$k!)?WDбfhWZA=gv~GW3| ; [c^K"gR6q3wO]w 2̸\$lOGR:BHBUGy3_Gp?kHVc퇐$C2n'~V+Rx- #5^VӁ9"Qd=ބ(~fC|J'/ρ҅Ômn~P{yQNf.U~ @ 4B?RxiTRChuh_2ϫjҳLjg/JW}eysGlwb8Vғm:oN,\/e2beN?IU0w [w-Wm/.9^SX{&POUI|دnw'y/%jÒ`BYzezܻX+ !i4c%8fLxֽqQ J7S^*KFP_W )Cf+ 5G|`|}w6Չ( ձri=u1i8kluiħ/ K p>vЀJQI={b?vq¹?9:/>!RHQ[Gqb̻X1Lsn7 hs 3bu9'%̦aGtw]Cik2VsPnXUxɁ5.㿢z*أ˨r?'jx]@YPq݁wLc\brn;r3={$1SOh){tΫ{:5a&UtYWD~l)wKVyp[p-#nr|jm~[Z([mz7C :(2KWӡ3X, ڽ02rG" I۾|Pۅ>9EƠtVqU}nu&͡qzFi CT8Q Dka#I㵝XU08I h.2LUV;%ik,Ld.rOVY];eZ6]kc_i= $J mc2k}ikF0`SC6<+oGy%ϴŌC⒈sقhJfˋ}FCƽoOٖŀAR!Jn@ {_bX90 9#0Gs1 bQC`C#m B~ cIQTCͦg4ŲHd P.qp.d~R褈ڗp's/h f`q07kJk&yJ ! {{BaiVj?B,YKҢSQ[#Rq9; Ɔd7&'?.h%=WBKo2pv_`׃:)sP`ΆNlgY"( ՟BCۚ '@a ư%d>4v(H8Dwh7)qB7sI$Q ZG|Pk|p E(['kF';̦泠!؄ L'ݤutR[^p 'EE"&}b凐$8(sGTxS$7#s!CK8?|e҅+*hZvz+e+f zL˒~CyIFhD 0OAk P4͡?,QMl$nU:]y-pER(Qƿ>S[nur E9ᖤJ{'|]nǞidY ù!՝F';#*wkd7G" t@U1?x_fMx{5<9JOK"+`Ww8Dy=Ga<F{eaU:ja{:c]?*SpIbzj}Oz*KGx2~`fP6"ԍx&:@H"MXM[È`--P _Q<.K.<˅NLku7dXDUx|= LK3 WIٲ`S+9"KF*eQErgBz^/f+m bΩ2xt7oT4l"7[eVz[j2* q$fEBSL#Rf۩Ec#q\Fn :St$b n)k\4&$L_C<ãz#p>PSMyz'YLwz=j&kg0J7AsSa5QσC_@:_ֶXe; C~/l4$lnVƽ l Oqi_ r1kJB] (i,%Xus@(JeέC~0NVq'=DTa?~Y?ӂL߅!ѫ};b%Q*[UtjF{K>D+WO0-7-?R6i6Pܨ| xsr 0z7s1}xJ;p0|㤚RbL%ٵ'7a./> 01f#4QAMrQD}@rI3ʮ"-OxƩJl)P=C}[6AA Ze:A0D$L Qz|ʃ?Abo-$K)"'vN7dz^6\][BҸŎk+3>;#}i!e⑽ް?̆R%g~ԯX7:f Jv~two/5׵?h<9E-C_&lѹ%i)ыDojTo]fhx}}C~" qI#Wce ?y㜜X:5΍+-&mSoZwDs4;y`n;N)2y+8Ͻ%#,Z"_<޷.TpR(^ ];.LlY $p:T'rCkk2fMo99<%5h'MWu`XI;kB`Ħ F, 9[uy^q8([qahBq S$}c)#ƽ5.̂ |sLDP5qTch3o׶eH97,)EuAK&/KGL e4fE<{KI{+){U3ڻiߦl2%[zveT@r \\VҲ0?f2/p( 1xC|7ds%ϻ@d1!/g]L[p/Hڭ)f !ڍI*(Ё",2NLsa'8:kb^<]\Բ 0ei>d) 0MH]F`O 퐶]^Yj%'T{V| FL햕U\UE5 |"ӎ$mǸҙQvAft$` 1;:[v9ŏ`aQ/B Y32Pfg|n+{OܷzWF?j KzB{Q4@ ^$Tr!!`<=H_j"ǣBH= o̓7-RZ+ g) ai j|Q\"TCo'%آ㜊iyy{r)6'?)}D"[`~n}eFG9)Vq|/.JxťGOxҭ̀Z D [-VE eTj|7~uNw?9l ';K0- # 97nM y^=']+נg"2Rsͳ%MIp_"!̧/o %Lv3Qz=jx~~I=n/]NӉI4ŊrBûRZDֆ6G(HͧV":&@xwp40yj4ћ*3`q~rm31>O-J6=u,HyxSt%UDa$kS=f:jbyq6b:DP!u?Z*OH>g =l!͐+[u&|, $E 102?p=H$wva'Z /ɩE=9bp]Р`_N|Z.j7`NʴZOC+z+;:mrU;|l:? #42!X4ܩDYK,'~Bڦ{5QNU S[%V~)fyh)(YVR$O9m7FP"~[Q PYdw+m)P2۞u#4)^#͓=7e/X( 0.{G AWf܆S l_4k6\\u<){˜܈bē-<uӖ1 `9: dH h5鵥 mDK4Umʒ=ۯ5z",]okD/z(RBso!?hAͥMN#?譄}͋@! feJ!s$Ro0e@eҲ2`vð ѕ 3e&bLeZBh<za:PzgO3Yjfd :pa[0_?Ij qy#ZT|wA>5agW]ڰcًE]tUі"@]r%544z^:Hz (2J"wѢvz@?#?mE -ëG=zR-RAĠ~ҙc"k%u!8]::CiI׶$&1 imX1Us2OQ{ʶ lZB[KAbl(!"pBKrn> DaTx:?w13LJ}f$m?EK[Oj>Y(zbg~Hh2_q'MQ4UY["{w}22 yS֩v K%h KplimHV@~$:{<ꗪ(Wᗼ 3}#uT:c;a}εxm7)vniR@o;.kZXi_ӌZÓ"Ѐ1;Y 7T=5g:`c3Z[k>33 J) @ϱlFhĜbv1:SDZ"WQgCbXP'"-)w*VeQ3y6&VDFi;kådVs;uY WAY9?4!M[ 0(uE8/ؑ)e4Tv2xMp-W0 Pz/~0ee,xHsc*B14;9ӝW˫˜z(7ڙueG`c7,̚V*mS[ipY;Jyݗ]j):W(L@iwPԑܤi4E`OL/)1p/}{Sz\dEwQ"3 kd /fȚZY+5K(<8)3|NGpXj^n've+A0Dt )^ǿ17BHԘ i _{qz9oR^tp^fuX&XC#LfC6{Պ>Ӊ*$ƙҎ/oӺUҞY`@9ϛlcA lL\*`t7AMau87M..|gˌ!^nbbYfz7!!ߔك(g7ǒ,M0{3N~ (W5s7)R1xx{/crО*f Q(>nm R鱦˃ NM)tejVƚEP*|W_6&ى's##PW; ) p.C!eƪc,/^ZN <ջ]yۊK^$c|Wf_'[ &}gP ⿂mƋF6ŕYe•,y,Ƀ_菟}<^,3bVNqYY:^& I8Ht)n YW6CᲳGMMU3 Vʺ̬ J^}+6T[:Wra2 P."l9f:N ?oYg^ x{B(c\F[z-xd$髙gg?cOyi'qFw+ɋo9L0p)g?no _J@H,#ƨp8uij,ݿU5oI'۵6R $8ݜK L۴w(lpdƮ ]yQ( \g?$!Lr$@p!~C 7pagngt!h%u=Iu}?a$},CbO=ل}V>AZٟ6k Ȏ,@NuՔ đ? \_;w #v4!@d^D>D%2^{V'Ri&>UMɴ+Ȉ;݄ikzpLmM|~-^~A֜oe3Ŝ!1dIQX|[Ic9Vv]'[CٓMҨʥcKcܝo}kuM| ۈgY(n #4nE 0yMjJ+[+k9sܱrOkx֯*[-ʦzԼ0Xnq?Ԗq~0'"~2%d/x ГЬhٚTPv|5 (Zdk`;K.őT*z*֦X{e)'3JSO8uL'ChkB2'7MAπs{e[%T~e efK=’}k6OYjE@/,ƏmYU(QUv0e C!&9DrձjbxZL}ڀؘ?ѭׇc_`~&`xxt(rke0]wYHGb20#%:"o6T.{sh *Qt2Siڽ uE.ese(l)uw?$(@1). \6NuLYzSwMHHic!N/egkH |/Q 1oG1>v6rI69ZkH~C!*4YNqPUj]P2C/q2 H}h[3[W]x7YX`A]:@c,+xY G.JS(24y3Hs +4!JٰuIYC_F/N?Soth]qj[`öᅼ{2YXƓg؋o;['Ze[Χ:R,WsM 0^zK2 v/z"Fc x^%- ]_uAnjD,2ujX,ˣǐtZqs;ժVPH}X1Ov!Hr1[9KA*iWxy aHQ掾q1Ѽ)HNmcϽˣD[e-hTsXͨ4ThbH5INՠm3V"%U;* SjP[Y1O5 }G 9rTɡAzj4> 4X(Ө$ї]-a^reBeH6ؙg.@xOo(o!ˊj9/jgJ1D3^AXf=V 3dt Sp:X@"*]vwEX'BTt \(MSAZe޷>˸&'Ա½7W2绽Nwca2t@Jq[*B>ѹXhR6cln5!'ߨ˨޷}VV,Qw&byt[?OR16* ꍅSS@eEjq4%8[ȣ@nQg՘c, C,#_!r'|&pJK&ݾPSܚbVBՓK$PU MptHoz Ӹ 4ia*uJk"nu 0ѕʑD0[1QAtِq1<:͐#8?Ҝ9wCe$/Wg@0[ QȘfc)Q#}x~)r1E7bU'Y(82*kXmƲ:ĊLI|63j; w>g41ط Y`tli~&F#Lihf͋&U.d_hCˤ<&raJp`;#- wbKÿ;~i'~ܔKuɗ~Y{޴@nyuRj!LyP0m*g{+z+H h:z!X as/X?jnFi1&*nVj_قKTà~.}1T*rye$n<)VfÇ{sMK)RP/|wi\'7hQtu}ԇI#9΋ߏ+TprsH vS$XgSȔh{RF-8m39 vI̽/;Z>u=H廛|il%abO9zB Q 1 Ązc1.(B"\İtB񱥭WM,͒0TpPlurUm,r;m)Ę-?Vr@XT@S1RD+.1/1mbԡs`: {}a3Ki*!k?9N/- +dxsPcW%@%nKʩxZO0" QPSZ=1h Be +z6æAsQn`iKl1IW]q&K['\$DUm4 U1 M.tiƗ,̧$㟨7:>;[ҊQIu(0S!.~!dg.c/bHuQ?NBcصa4"@~ 7_#r?eRn{dB8 kz]EqL»׃ HPZ7;]w‡ sPSx 0p)b<\_*5t7)q<(wu_$7Y@7ՙ*Go1xQI՞%kz87{k/dt &11ٯm= ;r4wnkZJ''+T˔ҙIuD9SL )"HZPRdIM%d o9~qX5U.o`7 ᡾5G TH3INJxL8Mq߬8IK֔{P(FȒaV_ ~V]<FZjJ(+w|Ȼc*>ryO%ͧ{ɾ9mpV^Xϯ-XPL'+IɣqR%\.yT+qG[X`"5ERPR7=OI˯uě?8B 2U) ot!^ g+)^p%4Ov9U|Me! M+xQٻsh-0qns 9 OZ G]ZQ|r`$uskZۘˡ(x+f6֖0ӌ,?,|%64^;uIa? ā b,*C{rFB;iRDSl'?Jқdav1X-{ Q{l} h"?!F:CEԘ>O P`0<2W@=i@Di=쁾cװIZ_,_wIm5D>"~7/ߍ]E33L1JWB!^УeH9=.@ 4|z}χ&'1ivK?},}$۬g ,_e[>*־q%e)(tevm}p+dE/q4>U\mj`u:¦JV;u=P~ގ$7)[Eܨ5Ԭ9,nLeVi?PBe${ mf8#e f> d)Xm>y])ݢ=T ɬ@yk (c5%"mocZ[o"ä~AՂiQio~H6M8c[-9#*\UZB4 LIBND+30"yPs)=~<+qjw,eR{&=WEWm~wG3+Bއq՛RoD3G7:嬣1նчܺA<)'a'č*X5!@#GK!`#]ZXUӛLN,هw" rxh#M~c pc~X@`5=26/S*d?#C~-=)eXnWpW<ri>t&}.P ]OC UƳr13 0`p/5_n5F9aj|%B"hD 气KO(d:Yatk9 P4/Π~MzA/g <%tqQH!Yd@rj;R7s(L6ckQ[i.4Zj[m3zDrH/JC=|ųCv4A9 .q,QO`s- h]ScPY"Ak<.6R~"W˥`{ aOD"%^d o_?ss+OtD1mi : 2$d0#x1B~ՁIg%9c^reba(*dⶀTB\%- i,AHe^gKz;'X5vt/]gi/y7ـu:`QW7AU,E+j~Gy*Fwmx6LQ:u$GBrCj,2sW>m9z7bLPK_ հ'ʃ)woT ᝬ%ރ.7>BUzwuJW}RRՏDPHqmi/~|0F7X.SJ|\ɽO br~?~i\LMk?2ueud~^47Í%;: .!U[Ibc Mؚw02sߚ0YRxM3cs"mpח%VUDI(GeגSMi¿f)Nju_cm$Nvy%gbF:+ҵ"$޹/p9']@ v҂inV*038SԘ]qv\vd(>GÔ&UhՍu!S\ w0RG286^O1lN+Vb?Kݾ|쟬ؒ,0pyH#Jz^2HY`md@1VVx^N4 /A,DV5~!{N t}NM+˒Rf:ϹaGf{>&|dG^KI.R{@vSP%,gq Q6ӄ~>*3qԌݬcY̕޾֕YϏ/_1&uUGGg`>Rً&$ 19p oD5w8/ n{DUqv)^N0:iWc;1q͓?UY$18W)88 IޞZdXCU4b.SSr5e*!e/u:YIٓ״e(J߭BO-"J]' /Ԅpx͇LJtAbRmI;~B$+`_]> WPFdԳw9>b $Z{6b]0^]Ǭqy9>`v+˞h,`(^L ^BΘBa+zOwto "UnZLB6,~cu8h8xh\"B{{U{0$SxplU $&A@z$2txo(+[j_axmhWر XG[Ѧ4XRz Ƶ \\͡A .«j]O I_p(K ZH|&Lԧ|H!tR]RAHLe]~TV[G7H7ߍB)s5*6k +2$')Z?@A-l|*Pe^2w t$ؒ ]//i!+kl֧%GM9bئO흞L׎PZy†/J/DCh!  6%ѵ1`hBQxqOFxYHx;/}|~xd6.ՈEiI*-MV^WT=./AQJy,Drƃ9_8=HvDsùq (&w?czdRȏl~Cs2O{T|VYm Nܭ^)k 9ɛnսdlpM$G>1uPZɼ _ȈժkZ2$#s"2K($*ķ -d0^5*InLo]>PcaMM[I͟sJ!ʯVל&5򜐿^>h N5n!lR%_(t1xr֗+ ([s=s7ۀ5x+]jvҺ2N׉]szz3r$5P1!(Kc`+fUe;|7P~@GXwI\!urxq 2_mp6h58f>wډɌ\Oբ[]QkUd6^m [T8]rg{<) _(H:ʑ¤u0B[ƒ[ g.6q}0ߴmnzuC7u>LJYP96'`M+u0lK#gT7$ pq0Mn';xW &,(}tn9Rw;*5]۔:)/ C}%q.Ogo]r: l3:tB]APЯfe$(nF}Seϊ'1k-uByuL Ap|ɖ났1HKsgm%Cϒb59zqżGVDj0'MrmS8>uFrQCڿ!O?:^JT"o;,PdJ^27!v禉N}Nn<8|X "2w",%CKEJm${ ~n}Z( CYnN(FHƠ3s,- xa3ш_tkRwBB-t)*05CJPR]V7)J?5Sii-ON0=,s׼\%]*+yZ5Bj 򛈳79g*Cg41 Qb*:܍8NHjL#~ŅW]W2EK}F#W5~3n߰І5o5ۺwٜar='׸J&YFQtz :X ]në:B{t#ih=i`Hz6WG#Ljnsp/AlEرd mLA GoDdPjunw{Lʊ!,PMFxɖ >Ar[HȆw9lM~^q833kvq^5-߀8[5+#y#37)S\ foh)L8tp?s]4T WznHBi?ueIpŹGQF,hÁ N_jMfc} @gE&}IQ kLQ'> 03=RV9+<_)dN /V+9i7痈̀@<'97B%a6K3FV2pſs` l9!EWngۻ`;9q&%w4.0یma{|#%ƔM?wߴqK>^ r?Lgc!V4rg[v3uղwo<J>BځF$(r'Mk|.f7$x5aWnF B#GBf(M(ѝq.Кd%!I>Z3uR!R&<z&N<߯Ѧv˼Jo|7r]#:P3hVhSLR=?v!~,Y>ʴ ompO{ ѩFH@-ꨝ#tt)B}͐ݲ6Kht+"R9\5|YȞTZLmS7qrx4` a%uJ 4T +NC}0iBZLj}TSNįH+D!I=7N޵ǖ˅>.-y"p tˀxo$f=@Awmmϝ1(sG,U.%AE5̑eU#!큓+iRy_ɒٰUG?]S׵+xڳ8 S{E;7i̵}V Dκjx8/(Hw"$Pd2r.R d<=}@7HCEZ_68yD WK荗zF,’r~K⁁{yH#< ~ 1TC7Kbb- ?29iXf' xs&9CU>Υ-w32G4힐ד,Bl|U:{nZZ|ݰ HIMMc07cj$7fYݧB#>eh5[>ƿ^+=QѶ~0f:hr,~XdL>N@fNs(fڋ\Չi gyǜju9gS>9*}l-z;.Z6M{E `]fzl7Cަ?K+@Zo"&rmlnJfYHǙnc"jwܒEt1nh(z`ⲃoSFɗq~/*!dxG[myrVTk-fE|WȦ jIݞuțh?!gRe+-Aؑ8)ؗzT 2kM.z em L6nl6`91"Z!*uSh2v.Km8.J#qPt$8R'.=Kyٶ†m!dkњSqwlQPiM+ Dp aN 2!! vFYwCFJ )0Ϧq~#ΌH\Eȉ2Ѿ!OV Jb*Y*]3>`x2>cgx7($`U'^ qšK9G۹ {wMyտ>e7ea8t\H7a{j`r"EBE-he6#O9MX*h?=i8sQlk%&bF!y^w}UTRȑD,<Ws&K^(I bUʿ4nn {8 (N Z=S-M3T?c:-o-<wuTx)$v{ -(ƌ3ɽ@MR A[k|wh"u`AvsCؚkW}$1ri74!xv/A&(cfbYHhu2N>͎_"]2\iZ +ip&M,S7pޗN?C (Q^[ HcJ#m#DEwaJ1͜.'mffr9Wmnu/aTҷ[y3fMm/$G]@"?t0*G`-ȡS#— WeiźL',عdy!iՃ gw 0ѫA ~/,!.G6OJ`_b`1ӳ{9. Fm(vhEݿN|oVy$B 3_Kh0^#Am ::z!my_>:}N"@}}'y3!juSY`T6rSg7bh5RrĽWC`X BS3%k}hr&'1]RHE/X3r|BkF8λ/ vu@#S5ٖ=AkE?t3]%pQ |:|PIz|R/d7^n,3/]>HgVYc(a}m\Na˛>zёPnn=?xՑ:7}!Svu/]-+ r Bz[wU'9 OKϨ?G@ږRy/:hITkS)B!ӗȈX>niS&Ϋ2swyV,FsA!'[z)J ?e&چ{ I?#B(}ұh'0$BXjJS[DL;-/0'7Gr4_:b_;X5 H`Eڲvh|DS7bsZԓB[uD qQ@-Z;y'J-5\&ǩs dR d). RN (&t_棘t>Q I (Akt)LTj[rc^>,(=H%C'N Li+Q,?4/lcnB[1k+ɞzo =}k_SsJ8|#/A7i̟T5/r\ Uی3[:JP0y,Ԥ4 >څl9NU6 h| kj} [eUUA R@I;@t2:D*6 -߭s)c5mOQwyӧU|J,BiP/;w?2M`vJΛ؛ AGEY.i+;W+o+A7ƛ7YE7MʉFp~W m3lUTpqZL@f`O|Mԧ?'T(`=I?I BI.]oG$;OAgZ0UЃ Ǡer0H/eG~?* |f痝ֆ[~4{ "A 8E0@8Y[Թ:bb9c55dZ 7 SZVK@f3^m"YcJfo\.{^Tɏ# !밠fviSԘD94]y~_P3( ˹8ЃVFÁ0/e#*8tʄR&=uB@CJfV;?3NY(bdyiot{t M8g{Y^[>x8oiLI|ۄGPMe1PWշ g9sL^6؞ˇXo{k*3ĆRy*Ҹ mfG*dKihsP(^䰬ƂD 5x-/L1`M0],DB?i@ Pgj Ji6^&jiFitg(L[R60V1D`CŲ)1 kDI_Y:dW~(?Sm)2^9th %2gi4?-$;R$.nd4WMiS1jF;Kr?R6;ۧB&8x*`+D@|R6LU$UJvk8ڊ1$B΀-ۊ3նm jmu8,CpX#Jp)C9ުu]A 'MܽZ-fiD Zx?՟]iF2X=lH 89zpDkc4:Ҙ:0MwI1# v*O=p ؽ1jpCV˚uzw|:(PrfJ(˽w6_IDd2gﮂA }\&$oK|4(7> =R*S/򨃚\,wbE,%P[{WZk!Wŝ0ͭ)t/=irAʻ'2%]3Sf}.)U6"Whk-=%~''++(Hm^\h3Äۜ<3Hk_фo !t_Y|"߀ee䪈T' LNu8I0;ކa"[*C$`}mHndR(4<\pӌ302 , D$ 2A5cT۳8 O+ g}orH3`UړM/^BhZ+ 5`aB17C+Zվ" 놐bnmT,^_IPE\ VQIg$ۮOئeDTR5~vR U3Nn([a, DtsHNk̐`AtTwF?2prim-v-J y"c Eu ;*(Oi:'UmYΡ%[Yʩ)u>5Xl,RB`JةfKgœR ^tfCD*\7" <+?眐#47`Gt9w6sꞕ1?Wĸ@6V GF*1q'%Faҩ |ʗo nPBHsx։ʳD~մll+wko,3$0,ܰ; R#a5[UD8,5%,O`Ի3C!dkڮ%)\>4Ø1°E*<^Vn5Ѥ/s#S%ߪAk_:;6rr5=' 3rqvJ$@w7i%=+g.)Don^jםuxnN7߯rF\ߟo)Kpmo$Zep\51VU3mj6O"$U8-ۊ)=d!^?-ϸ0A":P`δ'B [i>i]TN+y<BhBpx,I٠!IN%c%`N:NvѐS -s4Fn%P`p7/{h Ld3biL?B݀0i˳_vٽM=36uzF`cWx^$6 C;o/z}yLc@i}96Ij EbҴ7kڼ׀.5fW Dݡ/<)}٧-MF Caס01CHM}64kxEHh98"@oddY^AAF"K6'SVg(tx@,H|r<=I=!JXN\҈Ӄ=$R g @X8 /)bG\5 ?DMx c:IjL8 Ydm#U >ܳX j))B"c0g6|3HuubyqcTY9" t{k4#ǥQAEkl޶.ڕ*qۗN¶?&vvmGʽ- Wbl몴r$F@~8.VT4yp4hē[W-Cb!VgJ8\dE}6ލ] ^nEz|겨J2S ^#Po*$~l/>OieSˏ2<64;nNlڛS ǥ@`ue vAb0qt!r}M:فwhpՖiyv@!ҬC#`^=Pʕ:i?L ߈vZB:jm\Ǽ{aRuK-MfX!NSR>N_P= w2(jwC稍`bL^2ˮ^Dk+"0'cU&1.M=VbYO߅7Sgr,qE+TO ͞ / ]C_m[@B`&fq5ma:\O}Fo#'‘{ 37F[0WCqVIMƫq>cr%crv- E\D43JTP.ZJLx>%lqu̍IXlsP UۖVIHwX`U{-^'4˝/),YGGնs0#a؄֐fK#,1 I t?|]O<61РcRm0g2'?*{]1_1nD6־gVFw$86"q _I֢ RF8e7!7C#%Rivij}ݦxS8y'@ )E/fֲeJbFĺ,䮬 n{qocTjN]VRg*]֏;{Y13–<ဠ(w`!,=tl_L›xY@ Ȫew7]Ikm0O>^ ֬4.PXy;࢝uptrZssPo[Hm`'lc^wsTI [c9/cNՁY;AŵUwG[yG0T {U&zzDz:$~Voe*TGY:)Hrh懐#e*?HX`hR[;_+'!FiY) xy䑠 Q3y.Ţ3j 6wXI0 M!0 زO mDw3TٖX>ߴĤd㘄яi+3rU^}"FR`X ᜶&H"vdjF?:he^n0܁dyî*|eW/qAˋ@>9^>nX )3Xh{ܵBK+b3Sm^2m+ 0y y$i:)FKX}M?m<\)tR#F sV٣ƕ Ԇ0 yP#qٟ03B'XUw9E*Uda3Hutvm< !8a2gˆ[jӛR0lWʧDqi9&1qDlW4LYG3Јպӌn 4Ԥsv̆'7@+[@Tz:l=VE}z Yd9 ø6ֆm(zf@߫~]^RWM1Z&޳o( Zdí|[e\~ D628Owg[Bz.h>XPw:OvCSyq d^ ^b徛Ш@6%oj@ cw|ProF4(u  &sgv^ =0J'U Q2Vɚa~wb4ÆW&mbiBN{kģ,',;M=Xfnw bRƔ(̵Wńmv0=:-R%XTU_'qg=.Q0{yb+(^I] ~B MsFBf{VD PQGZ悾гF$mB#@V"B>1Eg+_$4ӽ $,SA? s^ee(!3v~` ϝ^(:4o^̚n$}Z΄3>UׅGԨo}໏yĖdyn@=wxaf;tIw=]XW0kh!'#Ȑ4iGm12W=0럄vIQefAA#C{eWi5+%{QK$ B&}VI\WH&V:B;+a7}f3(K,A37; eށZuo{H BQVn4g@z0_+]5XPV 3a&"1fIp5݂wVVK#kuA5bn6M/j5ϵNxM@ʭ}*;7~jŨ7c©T#TTΌh~j! ZaQ\|<{ʩYy^J8sJsО;|Bس{vSi5gt춭:(m]M+%qzs!1pyBo?V&GS U}]ʛe4n@g(f5'p/_?jkq[hK!*;/Wk7z@\@$v Ydgz64"s!.N9It!zom}*Hj$x}1>ٚD#$b7"Pn[&^?˪/ kQa)+o(ɍ-)6S  D%0LPcEbZ$ljE-bK˯oUQᯞFBG^=HsffƉYsB-ʽJt1=QHB˘f(~gFwvIVqNCAhr-+𪓨 {01P@xz\Hmx +%S/-&w2G(#V=2#*].Jx۩*b(&@zj`b_1[_ }j>9$uP?MrNyg{Tn!2%/VwOtI*].}sޜPja^KW"OGE+Lڕd}.F'dzlz$[ڶOMf2h!^0hLdq0S0@dJ2a3ЗW1?v~t6+3x(9\c}G*jSmrTO Emd\x$^ڝ>>9#fMsK^$ReO?-?p$Һdh(q(MU=<5AJ! 8 D%.W8`۹'K~5+\y%DW$ֲb]+SP8P"(o 7tF_cLCa֚0UJ8ӟNd%. P^.ԣcMK`a v͉J5Y%QȞ rGRVNH`gF?:{uB8Nҧ5śLhG"6'm ~s]7B}:kn v(k- kרhM#$#Y-xf=Ԝ6@\5;CYR Z"|q ْ@'6U@VilۑpK$S&^=>*F)YyD*IE<ĝn 3:{pd8P ӷ H\=^YH/F b{'BӼ>/&SLQr! ."ktEM@)_/4*.̀! l6 hAAWzBnIQ"; (i oSM8MxNT7e7\˷":e+NV?x]$l\.78C*L Q@v(S{7%v㊫ zΎx8ph0et{Wl'4>[բF3F1ɚO{EAo` y<^o擒e(+S@kd>ؕڬ0M orRr*W G9|UP$rH pj@;?c324ᑌ]I8߆:U?'> 陒H:,zCO mVeHAN" $zmCuq`':v抃MFݼdCugr%~wG_B&˗i96ʢe(sqi:]ryJГ|/^Ez/:'*B?ZFPɁ1S|6![ F,lYhx`盜hUG K12u8cWa_8.^y62ofU .y5BB2t1 SUhHZ'[p:# Rӏa:WwXx2),Ox}| q^ C]m>aS~@J@v?Ð=Bv|)cUs=1 Eadi$)#Rs"эn1䒳扩!euIx !RMrP㿫9 %,Aqa hXcW(lHf4OUBXeHapLyt=7t3G.sӄ^ 7%"'mHs7_i;r@0$ws,wd.w7Iz̭ˇOC%D@BvQu-\"!0CxV>1Sٰ,g:P(r8#C ‹؞WG@U-o&jNjʵQ;50f;+fw{`\"wE%642a{w,u/נH2KRIl`*$AS^'p1 opϊ)'OӒ25e2`J qrSq$RҺ<$:U7/0M." ;&q8-m#ޕDK~i 3)|(z&e r>/3]P۟ckZ߼hl"%d}_(kXS=JZ[A SCpF"5s͉v: *e`sA8 7v6g{5ƬmRR̴8bKwWD8wE(iOm8CeR%;EJGtDA%vBÈbH-0y Q_D_x'%~G3F-]D$Nmn}R>Uv,%;Q.G{,]Et|F2 `9e =%\SjR4P8on"I̐^]}'"!X`9ߪ}K* r|9W&E%y`[ xe5wN~f--yI&@–{ *_]BCl@vPIxx8&8o<;~PZ17#[Ħȑr;L^MWwYtz',))+ v|EмFS\ II7QE>j2y(*M۷ b uT:CR@~̪D_MHM"" xȎ[$* d}Xfr'x0mV64~vIAf1 BT*;74?=|ϧž.nIV&P@Uo.B_=Q<\3ˆ`:)9Puc~GwCԣc̹Ĝ׵9+A[nQf+โjYdN.|%ή1$JYRӍmHͰٙvJoZeڄ h#ŞƁ5+x$oԤ;6Ӳ[%d'}$e nAˀ~r.lHH=yF* 8Ň^k;RꂻUˢE_ȅgD*2qQ/9Pٟ.sDx.K>" hcJEeZ mR*fzMk~Jn u?mZTƏX8&rK0 zPi/W3SQIN8*4>hMSF%;!6;>]˶.sYhVsW dPm`?SP*o ]7ATTy4j!iu㚇χ}w6A.L)^%~LO}Hޅ7 C n2H(c[dUE8c|%&^}'"I;GAm- Lvzm+*H^koݕ,_=X72,|-T~^FYLVԟsX7n#p_'nYmM4nem<_: ~>tas9MP5B=Ik2k<7q$@/kIf:7f^ega|i2Nf˛j$^1UAp8]SjVqDWحKh4isN[v!CcKK hIe :ɨlDŽ|& 9p̿ %(pⰥw܋$'O/Zyߝp\t FRGݹWjaڔ}m}A"Z(nD2//y3=C5ڒS֓mŶ A|:/"s*d-|Ejp"Ѓ+#JpvUD܁&* v$HurI;CJ`򝔊LX2.O=S mhuX6E{v/1: q 9 ^)w kތ?+T]k_A7rH7bW&$OAb(L'aO)0YY!X~. Mf/kV(@ήj"zε_ ɬOH]U4M?=ݯ9.=}P&,X^^Q z.% X 3Zwm^uQMh2Ct;PAUQD hܠt{uGd|sr;ty7VYoy;^+#~.3Q>ԍߏʟ%mȑEaO! S"YS(THEuco OZt6bJ E@h;FF HR0JbsR[Mõ\y]~\[\ڨKHD6'!yʡvuolU9NZw G7պ oSP23ϒ ۙvN1LwiGc6ock{حݜXUdk(w!h;\ @v=Pmä\.OԳw(dC;Tw"Bsi9a6 (igjn݃kE$K&~Ӥa H*% eiFy'"'aPNwGǑ:nsӌ*V+b#0‘rA3]kKՏй$1)+tM W .(`x|2^ʪ{)w6N٩CB&K 95Hj[p!66 F"8m- ;L =Uj^xͣPyYC,FI1AM߫T&=]6F2y`w| |pO @CQ!k.bp8:gBI }SΟo#1 -mf!^Gٟtq}*eA2-$c 1~U7ewݫ,"^A0 ;V bU%Ja`8b"쥀pOñ^١g v=EÑNuDշja#u+@g_rxD7>(J`ʹAFA׃(K1>Dd򂒪l>v 7OX-;>|c"xR]ED]1B{Vr+p:2߃`, -ܙRV>ՕF٢Im:b_%-?$(q$=#sơ8}oDx\[LZihQ:IQYq&lT-=4*A]K)|Ve--}}ŭMr B#~h ,S 3,K|!_״X~HA oU?Sw:dl f-"n;7h-nQȒ{~)(4,5 @cЮ#ng==[bXtRXÓBؤD{g5_ NᖺEdVh:,QX72 2ٙ`Ydaݙ#]kMNfmeI0yIhknWΛ0%%n>gK򐃱\m.CII8Bp`U,R+fRM?0QqŇEQ4[a d;kumY0ᰫ ?Z,rB/aEX";P|<_﵁nO=M]GnkIRP:ȦBLXz_RI./rjgwT+ٖ MM"?^!aZx=e1Hp[>Ո#4 mp6bk~cФ)gm#`Jr(W=Ynx/cDu2KHɈb:($ePgKU2icJ^I&}7F E1̗;/vz os̓ V?L̟˱jp9]km;_̟kwlԻzr +x^S d XHݟfD3C@t-.xR>_|[Ư=fp2b1 ~p>$*sʈD?&}׋j;uqoKI:0 5SD8z00kᱻFwOQw9kmV:ʿU‚US]IZH~e&z$jfv19I? lQ~$woG#-9㻵3 W3x/=TхX΋k[ϋ9/oJK‘?Id ԧ4Cl S3')mn~.GCoV 埶}S8o-?9l %RHH7Su^cӛSj~'X 2ј N/`U c)y9d]̂P5t643{)xkkI\K5;n@['M/ #D;ϛ{)k}|x q}D=ڎ"wSc:T-om{B'3g7М§'T@s1'7E[Qv'^/:]\dae0P Z (Z!p?9Cۊ y| |TUy֑e7OƝ_Qrx-25J|HT5v/VNSRm1<\P3 N"13c.Џ,+}Ү+V h,ę#,D/,5b2` 7e#<#c9Npws F]~L_\[0*v„cR$=&Cup^:’%GEXZ~n |A{}6֕$BKHi~}ժ>}2Hd ISuYU2"?tr4$h@YSp0>ELawX9#AI =IaB-Sj= ǁ߹ p}c hNT#-^=7pqT{+J 1h;*->u /K~hv'aikT##y]e2`s j۱! fvt;sKn&jP У؊x1c`VE Ҙ]Ne1ZA[Iy5 .)8}UWFEu᠖.HO#GЁAy|ܫTSq6i0jQwWj0phG?C<1W2/FJXbW8BEdÅ>_D?)G}" v!>WUuc)rJ?1>5~HQ"Of9q 7;$Ik &gSZy%mi6*u- !"ߝ6A`}F$Eٛ z-bC`]mw;O_lT`@#s2_ ڣldю_MVGƂ'?VE "]lA#ICqCJ ZqTvʄXlg6ɏX`2j|kAKڦRtPak]8rm(ZC>~/`[6bP7.{XpK4vULxveL(_j6jdfn"'i Ջhj&TUvV]4zbj8~Vp#D^ߢdvg\Je-PBӝMi@H%%ֽ?Vf^8uP0x?`fV_sS%O_Cƙk!\VniRY6DLbo>W# ˺+&m'uhg -!s]/X=k{UMjN lH%i^8@ BxN:s\\\^P#GAg\z.sEL˩F ȚRjBV! }@sfu>gThH*.]9,>O,ύ  A%N| ؕGtϔ\=>YKd1Gm+;ZM &?K5!Z5084X(:Ff.@ U׭ߟvi\GXI3LrYzz@׼8nGF臸VźR:t[R /yeG 0O$qpQ_I''SZ,ULPsb=@CFsߕK}>$j<&P֐7S¡Mtգ9lr+vЫDg {eTCe=Uy _qٹ-7/E9ݐ- ^h;HXozoiL Yc+@xlv% GJN.ot*Gׅ"s8)Vo&l!6OJɁMla6ZO[pu߈ =YXJC%,!mwas<(ah:} m՗N(A:TGoR >d>BU8&M/@wk+>gUO`%.[x^9.}-G=XtٜH1 ڃD^&GistbqZS*D }00",#@ނ;G VI%!9$\Q<+3j$zS "N!jd[/q$R;[XAx:!k+ U37ȭ[pWyJjc A"T"Y+a %#bmwOs?E\m\L-L`0Z-`H&# @da <!.6NFXT׶YWJ,"CE vT7^0JKwFnM"5&06؀Bf|]J?7YD|z%Tv/B<-|9\":VQ8_e@dH.*J: t&y3v8I7BQ;f(v sBWє7D&PY|q^DNW.N'ukSJ Rkq= Vk/зw*s_Դ!S-"h-3V>hÙrq%MIp_4堃b}_ADwDY} osEpv5Y]@`Wﲖ>K %FHbEYl{a-R^a.ۗ+7$=i`%!۸ۍ>Cb#Aɰv w0[AѴ=71iq"EQ (gaLS !PŽ%#,2pCPku%A A8M՜ ̘o=wiV߂ϩ=|x^';k#sl 8IIh#Dl71U=cVYYhB\~&eI5PEʦǐ :DmEmEH5]8^ [w4)؊2a_7\RTc/ߜ:6`C8|K "~0MPw4``D_!,(//x|X䭙er5Rv![nk8Ы!eΓF-3^k6z7+$,xt2 XVԽB&VL'4>+ԡt QxLoC8vahHQ7f`E+0Tɐ79A>ںg"ˤ)5Z5!MTAB{$O1M\\GeaW.{p}`@@O(ޣ^\/+KBE~׼%iDtiB.?(=dhFnm_[\gfe7"?# 4ΆJpA9QMo[ܢE\\jgXqbɔ@=8^<>d2R˩0{"jwBf\TF3^E40B+`]u5>mJR-RphҞۀ!R5(-jxp^6^V7=+3ZE/n<KVMUO3UkN 2ͦdW(+fYeUR|@Fmb/NsotEkS/t+++JM2 !:jݢܸ_^ev:dDR߸U9'NnWSSsu@Ħ!hOW(o8_oLZ04`$1RWu3u#h2y?Hz%V0U3E|zt(u^*wuYh7U s欱1ܝSdr/U\:m EIhV1\V| &ۅWH{ ^4l6Gx@ n~-u%s糠,D6/@5u2U;MESuk(4v4O*-Ӯzt b PfPU=lVV7gm?FHU-[CοBrSk†kRf#~7^CFUw':90pb` RgZrw_߽Ccep HaLeL鶓&r $?|}pܨ b7$*Wճ^{P"-?/Os]P./@>ő4L=! nj%O(\v4AFso@;u. w,: Ȕ  Wׅ^KØxATPEz? -4zzi}iy,9w|{hwyq-RS\cF1,֍{oQY5[=xA_cY 9S1[oRAx;kם2ź=V.7b>*L;t<}h-} 's9w`;jZ#/ [Kz#bHRTk ;A=X0'Qy5*) b< oG[LPBv[(ѽH\8ѫ HשPb2?CᦙueSv2\iȔ5! kšqZdDRVKuIqӽ&f^6M{g/o["RD 77  zt{90sM}ϐ^F/'II YV!r+hb>e":f)&-%^*u;6 h%ˉL<}1ԗ"F$@/#x|0zƗpJAUWhYsY{_j7YayKi;Z_¶ f~|'2rQB?ptZ =}!lxIS 6Հ>vm+<DH"(c"#Qh9hZ9\Ҏ@Wh vH( % E_wv?~bLBzhz׏0|Mm$dC3IMa(۾|.jKJnJ] |L!h$#<όs)|䍟48^ "tm`{nzXjàu,ZǎJ[Y 4=6371:0gLz d; `vVcQ^"%v A:$s`Ӟw}7RYc gc$OJHt^F"3{S^-Gq&̕ќꈢ4]?K,#ůlHEL!2J{-g枕-ÞL!Bg4T[sp"Bh ,c&_b("_Eъ_XgMjC@z1K){柘<((0,!1"bG噢| Cs4agAJg+Rp%=Y浲n+5+%X {V <& )Š'@9GL7=-i9lcGd`Ț٘Y޽\.܆R)0‹|&b-ek,BȒ9@fT/"61q+<,v:g8NuƍNfqj(őA|{ E\1u;TUfi{xÌb& X6]wq_>9x]ry -DP:. LP|1=,9/:uC\Y7ڮfR8t"AK,"bI>1jWAk^$oF5Ӡj)^AsΗSXr݇|q'Xj F];\uXݨ/1)]?ǸݴaY\SMjzQ6-Λ鴠#銁'G%TYgՇ4u;;}7l@]W̩vj!\4,E:d~m} eOi#)0zXW$>qEju(vA=P2~U CHo0 nzblO ZRߖn#/DE5feq>බGޱ܄MAI vW5 "Zq>G6>7[—4.rX~t!_S,'˷P+HU S^ Blf_d y?:d6L@Cd..WP喳(D5bzkSU( DfYI*eEwIbխ)U ++(u;$;1~Fbq,w;}+roCp)f5L^V#9LuA t"xz~ [y $E`=ߜpX Y[[zB8ߪՇ0SszD&#X{h/xTM2LP& l>ø|piwrEYHmWfcژ%ұ K2y!*I :$%.=?6<$ɛ/`cg%rS:h@D~9>cCƅ |}BI>g EkAn$S;[W1wnّ"ͻB[(iЛA FH] G Zg:A$)v(M3Ibc"oX>܀V6 lK5s/Ӫl2p`솮Fz:X:JUudZpc' qFPkޕ^Җ)&l |Z}ZGR:{Fo9A0(:`uٸh˘IvUgS8֎5" b;ƾ{Vd=#V¹|~`<MԳ =dE9SeD_ BGpO2ŗ0Kj4\gή zL' y@ Y[d DMU1K#ʼnCqF&lǕ4 =c^ Wɉd_!83wғ:Mwñzo_ւL˱~h)f 媿(m?>^xwB񼄂,u##g."Js4Jop'a@E|.?+54Exks( NcE[ oշ`LT$?'-][@x5aTPA o|t/MD|9nHKGvT6?wE 6Eb@lخEɃKl$ WI !w~I6G?uݿ!vҾr4j!/|>vk4׫e[7̌f+U.9p߽X}X:m+'A=0Vޱ <@Rgߑy;l_.T?h[{z zb$yEg(DJ #e fKGe 25M2:]7Դ;)0Ͼ#':s=ҿWJ'Y@p-?#9Z`e9PUK5D۰KJkLF0'Z3r\UfIP2>B D\.g ,lK1޿rфZ~ٞHP1w’~?caC`0{2Aeǭ ".MuQ$EUV9|JSLٳh ιu>Ccޔ8s5cPoWW%>n`h97}$zG/ wXafA6-9- YMj91ʽ7E;8R4Y`% dd <1,BEG''a;T=0UVГ8Eqc qD?e@KxRwm&+CcAUߣA)11hjk}>kvj=o$ΏTf@&̔IZ/f(SBw/(-[7Z^P5ս>\|ApV-Y2ShiiA-Qt;7G=-:<sh%r!\s;Y9R>=nRAW9-@o{.q.#߻ E9%9>óg˱@ijȚb̀\/ѝmVz*yit}bø;iFxI^mо_C='=(Wx9@@0 Ĉ&nH&Cof!نw”7hB vJMh QSBr' OPn JzR3ҾV^_Cn6 惴{P׻z_Xle S*%d7Ա㵋\}CL͏;'}jDX?\(Dŷp7$kuUpwӐH8yJ~_\ e>E;>b?7ϫ M@5|?@Sѥ48,77=@K {T j,{);`7J]ǣ[+ °˔̔gg9爛N )wMDXv[P;87ZyJl`{VC*|#uɒqW )V~qi:-m”n17]2ubDߥzߡcEK¼(+:V~mzN1ǦSݲT>B.}dŵB`ڒ375j7q# ^eQ4HkG$,H@2;yu"GɆDtf ?G߱=l u( -<Wgo{l^C=ݢ[q-N+%ܻ_pΚʠkje el.ԮHUT giIF"hod0lD`n6BnWRX@,ߢ}QJaNHA;n_ԋ "+2=S"[w×@Tl֔|MR69aaUTGdwPsF۴)!<}"6ӋQ{WqwՆ%ħt)&T1e yP鯽F,=ִFgY'c% 'X}ξcF"#`v5ͅ,&̠2*,nռxyu3=߆hb/EwQ#T_&aOвH_:ײshfqI*;K&L->H}֛A)۱/9Cfh(i ة\@ٕrUg<|.Ӵ,WI;Rah1De\o|ҖGU҅܎!hz5l#C4 THԊ܂eu~hgDg4/u4Id{-P]Vǡ@0].*H#4EҔC2Y۩EU!@q'Qu~ِ'XucҮtqċú̵3~ v)Wa~E}y}aގTU)2>wyCP1#ȁ<o*\-zMVlf) ʙ/R+n"sPYRU~p `ZңHXu4s3VAeZF̙WBD!ioG# H晜{B[.m{_T&0!yD*zYPm5dɋv'_<ه~5 A VװPȁ?;F2ӝ ?"X(ZRSU(iGA ˵rfC=A9VA#Ė#5Z${pG֪!xʁlE ha3ܗ~?ĵmE%ߛAd'qk3+n3ۍmgԀ5"~{MJ43@uNy uo!%Yh(157f]bGt2apUwm|3`hގ֨#XK4闷H "2Z;9 Z%K l8u-$3`'U?p,nS <7zD NҌZv\X49~>re`j7y㰂ڟ3^ 8:y8 Jh2&Cp`ik|ױ n䪘^@C5)yF4z_j&ާ?2"(@s͟ g-eDo DIQV{$os]2mylY;01IC>1˺Y;[ fS4GwXғj~6^^/TZcuE FE UĽ>()~fTzY?2bE=zD>^/*Ɔj֍r"}]S N Q`p$+i1PZEGG9Wqƒ>\nbo7ę:֜,Rx@l$N,m$)vO;xKXAč Y>)M!(U a6u/Jc=8~ϵ V5Cwu =o㌕4U"kjjXy/v_;& k:G"0 T@]e˽Ļ$mR@q.QLזlW-oصI'B?QNV7xa>ʭzQ6n"GaK^11ФiщGCh]JL\ H@ݦc)~j^d_aN[[exn[;Sec/4`X lPic - ձNF#iH MGjVHPR4aU "&-AgY2Ov5cLE4 Th{MȤ(S%{NAˡp!9U.Xߵd6K'NMŃ$*3†È4V~Q])Ղ{L;:_^ ^ o=Z>;FfOJXYkA4ʿJPѬ PYXIJȃRegEB!+VI,3e;=  Vs'V%ņ% -趉oiv k눨=:o${Y O`396Y1 .>ݥw&אaں^l,+-Qa,+").\BS֦!s|28f32N!3ϼŤV֯s>RO R1#YRx IMP){9le$n2L23M*q;#Ƥ*6kXjr|U,B,)|1Sίw]2$Z1LzBlSnNyH_A ѹpg".hmƪP٣_(:P+oGA%h6n()6%xlFa1,\4"PlZ$T%81׬ _ZxQPdGhp%juesM25)g;uM Wn>OĬU {D_ hӐTP'&rh$B:Ke?3u5ߡޚ\O?k[ . Ns{? vg"V 2!$3f\)0{F+[ f&lkTڞ}IzHj3L&~LmG;?8Eli[|Y-<ɋ=W%/@%;l4Q$Sx 98_A`29@FmSP1[=5̰v>sỢە^Ll96^94})E=0dwUehl5P:D˷VAm+ 4[Gm!ͺgѾ⟢åQNlYeJ]aڙ֕՚h4Dd S){>Ěiio3 *O?Uj?S5뢒8`Z-Gs$mvQtW?&p>HN8ϻ`>f%Xryo jftjd@@6Q'57RpG2ƈ?~ ḭEO'Q+by R);_?|9te$rx0^M%8^g˸H|hhA.is,N _K( 6W\]0q[cx&v[ jINJ-;v1$/|OoGEmj4Yo~TjW!ȧ]?hW+L_qy[c߮ޖӆD+)˒.|S E<޸w9ݪ6g;U}dXZku ;dmZU"e$Y\F*K' O r (zӮ<co:m{j2=yig>`fJG8lB]偾'V߲}x"\ PzlbP&E]Kpe 'e!eP NAPG$n8};2PDo&>.]X ` tUhfñ}_B޲_EHShw.x"^x0{mpqN%L]g&㔄X°[{ ƏÑ&ay9w.QmHOtHaώjԖ_'6ц&}(B%Q$Ƞp>syPs 9K$*"|MY9*?".x]K]rw^,WK_Qj>WJYS%7B~AZ#~Mkcs承W86ZPY-7<'6|-nǘy<# qjЭ(M (]r.be`mՊe>QZ'A5Ђ}92xn:Fe"xLL6Y"[E i g0;c[Ƨng:DQn`C[]4$uKx _ YUR4;Ệ%\puu_L8Y l`yDl$ 9,T?XUuLgXKu@'z'GT?03*gq-e-ţ`HGTڃym\m9؎DhQZO[Je[5S8E Cܓacϋ}+?e'w¾GMܱx++!#7sG0Տ< Q[xw~*A.4p+Inˈʜvdv\"ɻ8#BnUƥdaLizHPE?lawKUUTgFq\!u<J\)qgPW4 $r]Pf}NK > YkMӣ\3xN-o${l~tR'ug+?`^FzŠ}l{t !"*q4u $Hvvz _&[-"/6w0xT{=.=n2J|^)D-0=Hu?' 7{5oԃ_܌] 0vl#LROo!4Em1䑋Sd^ճ8G7z 9x`Є;`#e,H!oi x +T!jՂo-A߬yY EJ`WVFA%:A'9$džn&[en[.g^֩1V:NQ 䘽DZn烯UgPE*hFw{j\ty;<{\l{xޜƸbSg b3qMdWZ1[C#$P琐'YtWT\mkq8:J9Fp./Uٞ'8 Eaھ}e ֦K&Z ro[.^"\WrV 2 $@TӥJu溲D/ @-'e\`E3t CK_ܻao]$]|Rh\UjVx6 lkۂ/3 UoN#:rAuZ7jHJ> Pw#mR:zjJV[ϓQZI ?~ xXE(%(FkY,O;U#S( nZrJ\^@˂4S3Dkc]^5طg4[`tQE9#b&Cc`Y›V&!ArTcF;)ٳS7U$Q3uU餗db0q, BpR=">%qdޤp[{.;4mV}Y.Z\ HklߥԔ,x@W݉~n0Ŭ+4YTOUtF.j@w.*xObt =ڍyL2^[Sdm14taIᦞIcwg{9puQ5'ZQEGȊ mwyAi`~􌑷hh˶@p5oP4YJq7*btVU(qL 8Tv4},6`O*ϲ2®|& VIg|G9K%xkB5 LDvy菢 Ɏمbzfj[uVdL@U <`Fd 6=H+*;Mmm/XiAEkqU_֎1DXϳШ2iMO^ x2ĸ7/m)/~-M iz S>rP/y/S-}c_Rn>@AW a{DkW 5'H'Kjo]1'J1Oa=xU.\&V{YE$~w#*ݮGl/l9!k++S޼Gk?@Bئr+S@HT@C' 1wI?>$HsQÝ_ EG? Q\mwU@y7|$Uat׃b (W)b\y F34AA)v. HnWH\'w8EX5/iR" .}bWy'zWζe#Pec(é ![5i<74y6E MRW.6*ꗮƸpqzvh J9ן|Sޑ+q4wܾȆ?P5  AM;SbCͨZn`=?mc@ Sd6 gh}oEӫUCQj5&A[}Wh7^yB`cr A.ǔoR?nks\FN3^=πSX헞ґJ .fLΞ.#E+o-:Y:Z\)ga.TngC9v J ]PVo GwfSlyV[Dhln, /6=% lŃ?J } g' 槰d-(Cx9k RڀI7OrlFISZ5` GRNq>7\(uaW 5 ?FF5HЮ^X&1StˁlfR7J-W -=ӳ;2{9k`DprMDdU7@zsmF1Cź*kâّ788# ԯMn T K咊RPBeVM/\e> jf7m$_wdF!r/#zԖXkljwF|ɅqfwY9=Rs\ktEa0%Ae*+yYJcoa,\w T9s#Q*vzTC [KOwi=v0oc(w\Zz`C2b(#'bX܅1wmS/fw榊#lY|2XEEgd):Pq+OeAR++f~,|wId0yȍ|@GɨNE R̀Cjv=L8 -?䍸ޟQ9rE({r y`h Pc X3mG:z fnNG_ceê> |$J/SibwDU=99{(H3`}xd;/wVn&#?gsm6LMO)H#JY[t0:4.+*gU/c0 = 1j^t}j!b4$@#ht+Nz^}Ѳ="跿o3~<\[^7ɠ0Bԛ-[vlF:> ޒtQ^UK3h,K}(oflr XTׅs N`<#xra &N.@ִ-xSLU?v\7/*3;EMD5#(׾ψ3##%|# 5+y76ٔZ2ͦ1n7 68@˚}GwSn  8X)j)K{O"-$B57~X|̆n^48("qU~t 0 f ĩ5EW-hkpD:ψQVuTsq $8F|[64~'6qRc;] (yWc2gw` zmJt/)]^Soy֔3>Ӷp<*mGoB'>~+t_ϗ. zݙ`K$|b*9;nYE `Opmev[J ilоa]àbوSNlj-UpVP>4 Tpi-/5ew=r#CT;G _RlOc\8&MBU[64j9y-8x_K.l*!B#nhRNA4g'ԣŽ˓2Y9F讍N<4$]ӳџH@jm~Z }a@JrQCS=0沈>u ]_NRS},]\A1Gm%'shES}ԎYq?*C_į߈/#odRJDJ6%xͰ+^WٗJJvPCTw1t#% RK'e\;,}b Pty4R8$/\ K$OA9==w|JγS!0 殾oh*)~djC@n uQ[1`D H~rrHdc3j8P\w l~'mݯnD-Y088flASzJBy0FjR36ޓoA6bL:Bƚ̞d HݒԈ\[/yw0, dM|xwg_%ʢiY1v=Hv}p)mX&$M2_T*#4\߸ڕ'"* .yO&fw~tɜIUi#HB&dPJ3, EȦ;0KQ'3L3.;..^'^(1K[%>|Mm}f!m\wWf3y (Ljq]\~ 9A^-3ӱEBH?J{0J-"p-~\-] $a/4wTl*+[|}!Ǻ%"&9CVl< ̥)CpSt2'g7,SGbq}aca0L 2CR4e$3B&x0/q%H@+ܪѾ[ݧ]P11|X}:q[xVDlۀ^bLmLSɒ{sY4kZҌ┩@$z#AP@r<F#ߦl3¬lqdz8(_֐ C+{pqnL:\6GGȸA{ f(U.CsF`t숹{IǀbQ7^D߀# F T&g_yq5{Z8V3dc#qV/^3sdh[4Vd ~ ,y_Ԉ_yqƂ*)9(ub&X]{W(1FkJv"6AkL?DzGBGS LL$,;DCqV?N#F),%"DWacmPL 27cY9j?Q=nrױZZ2l71T۔s>D} K4).2ckoY(xgnn :IuTs8O@v[Ǝ3R!AeGM)lVd+| ; s7_cWج v+̕=h!hj:PoY=Y^Nއm*bNStl@OeHv.gD3!+6a𙏍 Cl~3y?ka|v(ЁqV7:]=xP37"0f"-rbfui׫d崪\ ؗv9dW4ID͸\68v]$B[ tF aI.Dƨ Bq*,"V&]vc<\kٺmL(ϖkhhh?OOƢy@g#g܀.$h #/e.lQ}«3Vs1 ٽ&)y?_̘R7XT& Lxu@8ȇ Tw9zas.7c3٘8Yp ^noH@ŻҦc\rðh. ̺Ϗ_734Bus4][f/T>3M[([a kXI!g2A/VQ P5/3x>\wbzR,߮^ )![W{ w R'EWڅ8uЅ\%_{_uAA=`.λGG*07m`fquU{%ZoٕPTAn>U}3 [^Oc"ʕbvYxϽ (E8wD?e0ei2߈A ET04yl7G = xEv5YN _whާIс-!I$jlGUhkjA\Բgt]CIlZ^tGxig+_sY^'/ڲ2֡SR\ZM 1dw$J^v6hZZG+VC(䉴IQ_V`_I &qY4C'2>)t0>OU$/eqݒr֨ȱ-,B"O@/y%}` TxLɸzPB㏙R(èHRFx7qSGX~$o[UpR5tZ!5]!?18moVtj}ɌT]Fʤ^/9ƽ3i^mfRz ğI F%x6!hto\WB7+mS*H .(R ؔ恸h+EBI丫\mϙf[c_k&Mt,E3L-b.cl> ԱvɎ>+3&]~YMj|$^U$:;xPL %%݃8HSઆH_?5#j^zt<ج1 O;n)\TGƥ*zRFfo(2$b|xeX*mmb[awFhMРXilZ5lz7>YBSQw$h&:}tu= P&X&:s"x)͞O 3i[dLkᨵ=9١# `r>SMWp[Cu7lmFDn<3?Dv["^7{m&fu8X_BH_jp[e=JlAp~ʉtS0\@=ލ'47}B4i(䳇æi5Pz\\fTv|buU^{g6p MbUD dY3`wH)3 Ĥ  ZºfN}+ piMS!RG A6;K`MGd_B+fA;8v8 YC]]pdmnZǷ慓TH?>lCmzASKv__K:ƘLZ >QOVU*XaY?A(Sgo-9[/Bޝ zr{,"1r]Xqqw՝4o) +Y"#_P&˸ڟz;2`Z9C,X}H* ~mouEYH`,$F v‚[QE-:?qdOl WGDkB/+WlҞء{nqX|+%<nY)z+y~W\'R̀x# ~"& } Z;Ik%orgZHЯ"GM6p/;9DX/=krhp P9jFij|}V Y˄'? }KJԚld{=6XH(~`v)z1fZMs1 5%y l Fì@eY%X|sԎ5:N 9U_}fŽLŻZ`sˣ3qN0&16}9$W29XiM}.쪐"́`GtYl܋y1Ҟ]4e"J\+]FN+#@ocd$Δ%aӠHXi0{hS%hØDo_m:vMOxi̔rv .|W1 fdjњd!ò/dg99x4nQ y)3~Y0\r I$i_slkbuP TygYڢrf!bUyTs l۔$]k-4h6"}*c"Q үldU _[}+^sA狺F O޴5{VNےq cc'5->iY`ʦ.@J QuL:Xڸ0 Flf`ϯn`N<[jl7vjpCwY?&`LRDBw-ثg?cᱡ>rwl~튉}F aXE@8ܑEt6f<o#Rѕ4Q.Ueo_ 8!G~X|z{1r3* .W?BqJ-HN:rBLFx}ߠedDXt"_yÝdH8rI#Pm{IMcq?،Vi$ v. )Sui>- ;IJ2bU&)= 6.V٦i˪eC:#X;FLLk{RUq08_UИ]j|Fvun~ܵGX+~KCQJǰ>} #01bnT15.HJ}zw DY|y vl#zg,$+ݩdXMSpBM=?b_Bx8aQۋuO\;VJtm {9è[u&VELk0 GFhFi8Cj@Ь.%hVxݒ<|s[HR7*jqXg'?#}þv4M%]1$Z';^q!߆}.kg: =]x4>3}yfNvTR<\stj% I_>gG3Qw^=*Fߜ6B ct?.))*}1a 9kH8Y`J4(S` ==MQx:d ,O_/z" ?j{Un ᧡Z9v*qS3#h5+O73*>z_][XPs'Z|޻8UXQtG]Y_6-yK*P)R,zsON+ΌYU{gqOdjAD_S+lK!L"ܢhI4S+9 _%$BNyV4  fuM5RE''n yՈɱ[Urx:d]g>"8tS ;@f}͸nnv!ӂ6g 1} <| 1? m$5nA"yEC vum$2hc@ɸȄJ2sYKt݇R1 W<iJoX&9eܼ"/[NZꑩTŸ }!f$49^'&;U v|N"aLSKjg*t~^*׻9{}* 1ZʚKrd?l1Te*NhmwE;IM=\feAOm]ߏb7{2譣VB$Ar.eŹw7XNqO_4,=v!tQb-j_d02[l+cu~ƥa{:)*.@W4+,9ϿRme@vl^ѿ5{3\ ݉܃ָ2Mlm&PS&Zq-A||A܅ jp8<ĞZҴL5:$]d8EZ,,./ɵ jD ۖ&LK tt^W}>㣚υn}g\6O8GB1vΤTwr^ݳFD02P7jl90H^P8Qk|XAřz#Yo dfLQvW:ko*ֹD2|ń ŰF i;3=, l4x@߭z"QQ}F [%=&l:DFhfV,7z7O3sb?:hU3+(@1 'W ` 5Z&ɒy[=4)! ϖ,.ځuP32? #gs04wʩUe$P]{h&Ż9CO|Y.҅p^_}z葑K VQuQIdՀ0{ʣah{,1"p oumgZVtT[Wj t>}[[mh5tS$#" ZTφySBUJUI/t dÝ;! fEEhA{/XҖ׻&(&$!VoMivnd$CyXsx;}nt"0#oOs1x j7>zt!|LEta%RH1gQC(:Do4=bb%:N =u6=AT~1>1Z|纂˃S= +]Jlf=_Er[,M:_`vi&SU ڂ0N>`=nooG'Uy6J@Xi'^Sg0{X"M: {2^[,P1WR%q0A`I[ d;B^#DPoM8Mb:> OL[bo$//K(vi4N`etɁ{p4{d` + 9n** [W6،]f\M@x|BI"u,4.pԐ/b`0L={U@BooWË_Z ]|I5`lS(p^?öc;ۅtt@jq0WL/+H͌X;ja . NK(Dxo )$7F~Blvu1 9QeD~b ]'وAH\rtۤ  D)J|,fPgtAH@9h9Qf5 > NÆP|Ϸs/..ع"ul? ZVdB7WH- de^&[ Bfەތ *yFATֹ5[i+S 5|E. 8 :_}x>HY;ث=BP;x+a$:Q#Uc3/@ỵyIGHR<e3#/_H=4?j Qp`fkHYN'_/ wTd N9z#l\5}.^UnZY糌7ZD~#o@J!0k"dY.5}mB¤ѻ'eEZf^|…s q\Ḅk3.ݧ5ՖvMl*C=]؂I{F@Ig4>_V]@Bu)"Na"|_9/Wo kx=9s`jڒCA;}7YB"eQO+}S (0w{)0)t'>2a!3񇇷D;WT10'CM1@d.`om£(˻{E2,v";2mm Œ?Hd (Yĭe/&?}sZ ᚮ]Bw*[S|A_1,14"݁ڔ)NOgd?N2:1ĭ4Փ6J # )Eժ,=l#du<%RT&_$J1#%ۄKځѠi"$<ᘲ' 6do sBI6Gl:P {A62HvG~ZuQk.Cş9hrъi^&΄4׎g5BhYKju#?Pt><Z?G]oB8ѫg@⧵gXḃGK5D Ҫ18cV@f˅=灦k88tmq`cp IBװ̡7;պ#"'5E>ptF)1&go E@YQ0MP @=#K7c5ǐVxu8*bw}J$9͜P Sđ^} Y58Gh|W.)JYp Eɴ̻v1oqP_Ang <4K? p^}>k&ָڛ7]"Nyly'ufA=8gkF /lOZ&h0i8MUѐ1,];0QKs~YQaQOk۽.ONBL{!a:M8/ ‹$crOKȨ]+u LG6._3^p><=kPfP /xӯѠUŪ$>ehiĢPx'[ȃ[K_ւ`'А2 v?}? e;>9⭅3ˎAJ%}- Tٻ!+1B)1Ŏ+A*UV$=G_r;}[;|<y8x4dGf$g\j؇`S ̾R`H[Q=FCFZ^Б3(8 x_i-5Ĺܐt\7P+W8bW-JZ,bxAL|"xP&&0o](?%@xɽSx# XO!H2( MyUhmrT?d2uºڧE29TOݾׅt£ ;a=nE1>zNP䑷u1?ňߡL0y|Z[xK:1]w\>@#|t.6-gP$ZFYQ 7k\ӈ.km*.XO%V >xr%]6AD>C愲谸G j: =5˜83gh$HqlgL;CF6q)3 Ė2"P~’Ug]wTf{]դfp$D=O+\EmdKXZRA2FjeAQ{J{*k@5H%#PYNwOdiΨ+,^bb{ޱ\.K~)t"m5i4Eq'$o88 kvVb\19?LPtxJV1}n&wz`+EW::S' T6P^2d z:\L,!3fEQ"-oaJ%׋)<;y>Y,w#f{a\>u8hյQ{p7{=HrC 'Yf 'Or݌\dņ .b 3Gcsa vļz|e>P]A<17"`/xb[ٰF<%䁦@d+(g mR[D^U3_U=r*;V'WDZ ZU8ܢR0+Hn(94jY2YMRK>A3o;۲/8UUzK?呂~`3K^-M03bA / H~3obYP.lWO]`H) "1ɯ^]}v<=:iF02~  JND \ k^5HF@}_gl{|3ݻ u wk2/w9;QwSF{ѷO`>&*xy͖R3ms"8 z+11ө~Uh#`5D:Od  }12y!MɇE*8HpF׳c6!:.{-OXrO}"AA֛`YZadq䧸co,deͬHT筿&Bܲ YEx̅+.6s J+CLg q[Jd7`Ui(u2 : T#-kP|Vem+ ^k Jh0 ڧsjaư_ZRe87|~W:õ\ ([=GE *><FkD_F&QdҊ:U*(hyݟ AsmGǰ4+ IŖ0Jьl?qy1Jv> I\7z~=x@qǔ[O%ZaaPWAu0S!QW&pFI[R{WR)H *=4;<+p֗1K8 ADdW08WKKt[Mh2壎t+ro'J;<UGtDݐ4Sc{?_^+k )^46YP+p$F+':KKo6)Fg3n1Jx (?~@`bH.B1n}}}e ՠBCH_sQ(ίi.9%y&AT>m/xϠ~1yJ݅lFh{cn &|kDŽ@oH&JX۴v(Wv_o?PĶqr9qmlgCz`@' S7 ]C%vqZ%3|vz)Te7b۫Nt~X)H9 & =hw%~+J"$XNFs *Ĭz8͛b׀a!Op׬A]V@E{L4c}2N쀨S^-D}=wj8t%YG`ܻkYT}џ;)i5H!d>oFVsq.@rޮ9'UpCڊgJI4BCW_pC&|bmd@*0 3_pvfDK%dl}zNߟ[/\Fz$NM]O0{TR"#DyYrc%Nf{ t`zI zTpH:NA89'Yk]`pEҴfipo?lP9%ށП"'`%HWR-(pMXcUTcgZ~2]amә7|4aeG7.1!Y5k* s-U|ƾ%Ҍ2qN١c51MQ-1~C7HLIM5fQu}AZL&vlT#x[|ϑ2x%&i_GLE2tQʘHT3.%[?W Ԧjw hٍ-P+V|++n}j7WYkH3`> xKːYbq2_NvbHO4&SF ռssÓ<P>ߓIHZdYx *۫7lCB#.u_RٱDubD>M0'arW3NYHj@-r&?v'ʜ[RgC.\g%\tFnnkA~W;z9=R‡Hy]{f}2,ځgp#GZKcF8QӼ_*U$~Ñ2)Vη菂 d}y1 b&iZBpw3$yͲ R'Ҿ ǪŻҗ7lgP/ V.uqˬqٛM>g8)>V^ ~f;ΌGtI#ret61dPhPYqPuЉ7P%c+l M"X%q |[3n<9B2h /ٜ4y? {a0Ȗ@`%iUG>4˶^x^2旷f;i{tE&=5<ә8M+C *v` 1N"\2Ӕʌ1)lä{1ώF ƹtʉg+홠Ma{ i_ped/tV1I;IAMCWi ]{dpЍЌbns36l:̽/DrOtMQg!Mog(0<|Go^3?_ ܚMQ\ќi8hܿN5Znي߂6*_ΖZܼZN1<<;BBk1- )=;}sxmw0F 3MƸ!rx)rt#~2fYLrӼy~6z~&kZ4QOW[`a hxZI>t MUuDgƳ=P w5i (;#_Q"o{v"`+% Xv,OgL\oW-뇘JPats姟YZOʗcv1fSb<=R&D]k ONJZ&&MvT`B<g;#ZT`ӡc14ABv!c^#9a `vi7κ[>kŽYwIe>8#"Uptt~M}vdAh9ͩ/ K*0(Ҡe.J83@{Ya$f{r,i!'}Ws~݈\+U%g74`daAM_մOGZ[`lv.ȅ>mm 9Y(eJG= Z)t5svtwτ, sڂlj( D@݅} 4:Z2J~ۤ$Co\Rs^?];uBD&f69T1{_.-|:=}d?Ԏg+Wp8+3u_h^I \R0%}0OCV.1gW^,< H> %>vU0{4 ?2A1?tNc!MP|£o;kIѤ393 ^-=▶FɑMKYaЙ7;Ѝ*@7+ϙ̡Q# \иwh3F/H=q8ҹr,gsap y2ml|ԄAb,ccFb`4&{ N1&0YTܱ=;QRpE< cYxl=Ap RY(#;ԣ^iYk@hO|74Rگ3NloVo9?Z s#)z)߀U곲Yc5͞X;t?w$"LvYNXfE0UJu:Q%fw9|.xBe7h{OZg3nYGV 7ܿUX #Q>e*4Bh,th%H{ NM& y,y,llQq:B>\IT8_y=ZROQ*g:8}\uz4Rw:nPۋ=$*N+/ZrՆc]7+1%yiCx=Cd%k r+rC|wz,u9,]vwrG3~Udw>cfaŲ_qZ'9Y_|P盅Q3*FWZ(<߫; h~6&վȌ v>~ERm@JOXɊu.Jb7!^`\S)>e` }F3kqTt+Vh< 8gEz^c ~vaFq84%yPN]֗Ȼ8eeV W/No66*V~̗#EĨ:8\F=3lфAr?/hQW A=| *xDg%r/rP vRyTi]g:l-uÕ 3}~ٺ2 馬W#GTGҏRi볞a 5뽦ɵ,0/gu# #4n77|;}GYcԑ/9Dؠ'"cHsԭv>[isҁoa>MWaéely1!VX+ &b| J߈M/փ+ˡ󢬔ftW*>kh)ϋJ׏סNο}(:WoV[o~׹MՓBt 9vvOgCjGOg"Ds--؏T8c,+OD|ޑZ&ݮIHW4ˮH4{V6Y:\0IL[I]m4 + [1rU,$'w]d"$0dq:\' 1gk[tٔh_z/^dҭȠD]bjRP0'YN3+}ÏBeS?El/;8eGk=쀆^>yE0Ń|6\U&b0ȡ1ZDb93Wti:JhQCaNuTdHC63,T׎e#EUO=׆./f`Fn~ՑOzhu'ټp <\Ý1ŴQAd̉ kAd=kH7gR ~M_ bJgqR=cq@bU1X* q)ͷ5oA| {]^eR:y0)R'ƹOns2b)d=b<)]/XE7 mj~Gy?.]hm//jL|iWVCfO2ce'9;`KdjJcX4JK0׳wy4QС-іIE^DB?6u U mvQ 2+ۨ" oRDccu:$=xkQu؄q%1ZS9KFF0Dhuc跢v($/d-ŗY"suLhqKP`;*[֙$ 񗾻2 T\qLxԔբ[s? ہ-b`lt]Uʬ@/s%kM:4 ɚGhYo Tk*5RxO8TG-!4tae½KUL\^ ɰ*_ɾsr$I]_dNJ}l ۇ]aBOH ]hzrF1 C3 B爗ʁ]ҎIEA`*M;vևU!!PEh~/Y]ɻ-҂Ѷb~997+c=?m>}jPkve};w:1+κ K;HtMhMyu,0v`y\E>RH]Emܗ4F6/k"F"D@Z4Ai-^ F(A,Ze8!\0#v\3˝{dP 뉖,Iˇʽ%naɶ7oڢ@l'd;j VCY?Q<([;ORJ&l?rdXb4h!ԉvJ163}ˏq&\UHCD86$#VE{ 2Rw܁ Qa 5:I~3]SΜe˟|t p 8T9sUM^A,*w(D_CCE[j9 %"C|IxC2RV>c'l]-X?!UW>0j]n1uG̦l MFh})3Ar^5m3l83m7c!*O|^s.5b-\"ymh==*Ad,u$|AkF*e9bVtUqycI 0MY3>{f \ iNΤ0Z7槀1KBQ鳯vU>i ||T`3Ci cR.(z [Ţ8MudE%nW! xjvm]\uq(+/t"kC쇲JU焫Iw~M`)ޞFattJEڅ _ՓC?Qu"$LpcnjnPGuh0Kt<#дMt, D<4$ſ$ hh4kƋGA*> in $ns&YJC)W\aݖody稌E$䮚$_ 4Fe}WZ7ĥʴ2Ekm 1rz_-M!NF] pMseB)KND0Ih+ݟJ1 _ɽo[y^{4xH ط0 po0 k}d*)#ΙN娣ngzEu y yXAY2Lx~t'2`^|lxXx2no0qrYGK;7 (o`)dtI0P\EDhƶݶ+7)d؀Zt =`i+%cSʏBLc9H^̆:Ll 8{5\Sß 5O0NO 3>Cy!%v:S$f3~癋= ]@,z|Buf3!\z;il"=S<@ H'!rNPKqAMRn96~4΂1vڤVsg+jʯxS]{N6R3‚ PS &s#Ű\ӄUWG;'Edq1CKR\ Aج[};D;ӆ%uTDJdxk(Pu*N^O{.8iX;҉hDgPnEahTsF )TKPVtئ%KuMa2 GS P=2 ” mR Ak- DiQEHƣq~2lpع^ЫQ,F37 2PY#u)+l}1ggD(jSL.Ws sUwaJD$ _"sP*׌d}F]*{e$sk>! p).C3&`N_;;0@4|;I=49mO#b Yo'z==4zkJWuގoGp(~U-ĭT ʉt2Go]H3En!'H 3kTEOYO]rs7nL;8ޓW`Y+~d=N1'$JRˡjT~>ͤH]^]?Gㅪȋ̶26ݽ=垭+ 5_N9c#5H6́?O_4HF oApPB2di17*c A;S=4Ml@hPjĩ/m}40{6~g<v slлQ.z\<[9~4 [PuóeB ?ch pb!"[*K,i74h2nu0ul`ڨZזUGe @x9;w[.rsC2/YhHbH"|<CV{Yr0/pdGA|>yj"@(~>:/qCDK+xuӰ!w,| 1UYL-:WZ ң,{Az:ʈ1&L{MCBYJ&rKmT>%PNCzW|{ٴ;2wU %`, #\߿Y1k>k0zdlibqԍh#רߞ:4 ē~:+c\DjowH@oZ@#geZ8Y&tmy!WܠuoR6GϞwIQ_G?a)ps9ϋ4U5"wz>s[Ey7 cCTJƱ_vZ%bYʧހ 0<\hɏ1-j)*P_D v. !W6 08ܢtːh.b?ag̤IKDEȊS˧c+MU"4X$л2h慡ؘ pdHX{fflK-ՑXaSewsXasy8?UW 9&)WZޛs B~=*6ޖ`ŠcdI}|2HkaAcOt[0ʘx|,<܎9u/[# jVS+L H%t/!)bd)+U+I@AGV:rMAmA6<,1|Aٻ0| Z̤dJ0JyjHKMlyYXiܸBȇ (M= XX HLJ8*ht G ̏ jI?A3 B䯬CR_`UN Tבhg nf-el|^7:^E蜶!L-dOcL~ K+DPԋ&OE*6Q}X$M~=N2y|" +.p'utaz#Xs(( bzKגtFMكZoyJтg1sdduq$FoadFoff ^#iqHgZ! Gpy !LQ-n0 ~80  يk|͌b "vЉzoK#ҙDU-Ow1Jl8akҞա/_\7njҷ醶JOEN O7+|l8AAEa ũFr$;i$ |O%nCKBU( WS7icAP|6Kr&*Cl(41$G`꺃??#\bg(ǟ% f\ }.{t|\9{۵s~:Ť(C98}l@֬N[CmAAΖdcnlm 2Re9w G6ghg-q-9B-dTS6.x`/r^e# OJ XJ0?au܎jѰcw^y2ש`.7*֟aB9ׇSt>!3eSn`%$E,3A֙Ri؄)4Dz9QQZ͹{W'%Ku E>:=z:NMwkFv7kư3C9}Gu_G,9w?It L|Nw6j@ÄLV/WmF=,8:DYESqDcla=\7%0s7ڎU⩲ _q,NPU0ſԃmgaFE dzLgVτrlXXfu>: GrIy% ]# ȑ7ba3ˏCWS0(/n)<h:k~8Lk;pLߣpW:{sTOScXu.\~4=tme'J2EJ1zeR(`~d`>Vhȓ~}6: ǻ;iq('gȍU๐8k]qv^ZIAmmbì!w~( m'G;f!L!Ku۟"867+ y{g+L`}]+P.m„1[9L(S| FϷ{Q'2D> WZ_dPYSVcd׉[+,z4[(71e,甥)E2QQ+9kyxwueu9nEIQ@sk*&8uUoȜytawv @CڋorAd$hG/[uEb\%VFށ7]o C]R]shv?(OY#x[G^[d#hpD{iIGStפU<4U4&я;IwFЄawQVqϴRyeEʷT;F?)TY^tE}C%kQQnvnN jlmxx*9 Lä[.Fa0h-K-`bhϑQ KTx8g곯xc 9E\lKw- c_ }b`і)V(i[X4@1<0`_i4zL(<2Z٪ eHk9(V\/r-w5}!Kb "Pg~?2-@M\F4u3s-Yi,aJI FDu::v3s%8`gc~Nz`ޖ&!-7"RL^TaAF8HEYW8݀5srxNYtDE.#ֹ4;`d-eUkZzg%x/ =(o6^:{[l׺g0c+Wz6x$9V<*Cn6E5_ă3fN\údH4?ߪ煐93; A mRmf.aoth74 JJ!iHѶZVyGzCNUm ¥5{v$Qcʿe{:9cqpRd.R| 䙹12UʌߞtZ2x7mArHwU .%L4)e+l<,x"*cgQ)B @AC ܃+9_RQ'0:["A#2bfM0yxG}F4nKyT+|Jq[^4o@ſ:>4F`(X%힇ULpg=hMJ|5Yý¨ctdsr;/DpqD\'9%h|̘{|#v륩l#z[8NC0 +ˋhC͋:Ԩ}\$^ um8lIʍ9S˛a2ϱ㋊7/}B{@17M˿ f,2&=s #D1EK&uTrgß'e=L~>]c&t$D}el5I/yr$<(ǽ׵EȳEjRu/hT 鋄Z %uv+#2m[%l~6uB 㸉,5j5@#]הwvF]q?òL rѾ]3էᒤU05kMio4r9B^vqlڇ"%᢮朑H('0pgA- ''Ql|*jWD IWEb@R &ٿ%wgWdkXSB2Ѩ54Ua,ON\N+ǹ/H0U 2[;O$CPi3 ?H Ʋgy؊֠DRV"&LD;?jѶU[׌n4a6{ufP5CL+POI ǧMCH~V6%:!z5«x<1zۛh2ڇ=_HAK gt½@oMRS4lVE US2-G!FjEI9!Hq^㋟jxQNϸp8E|o=|E;9{#^2*< koζ^|BPb(,FW8#Dɷ Y3OUU0ovFIЎrX_x ^[,^&FZ*X:gC7*:PG:u' x_[oZ3D:G't),|fhIRtwfJB92d5N)<m>:zF" ׏7!Q <4颹uww(&*sХڕFo<(՛?L같 t@͜4£\1Es@|&U1T2W,!P,Z 5N6; s @m\U/T)@@RYKnmbNUut2֏g-p!ăb2܋vw}H0Fugu½V8KNPRy(ƣ᭬St1Bn9<6uRN_wM5s[&#@&cGt >z٥7kS%eXV-iQ@^OѮ564sṊ?X_(B@1xݶ֛µ8f lP]'G8y*:bh^(UƘҟ]Tjmiz+۶e 2ӵ-.'B*cpn\(o*?`k; Fܦ'ᔁ&_~+Rv|QLÎ מbcDbDzDE2$I?_k_9>9%tUPڕ)5X{kJqcl[#CG${`L$Cy`'A|LXo}hWe"@hg)0FWo@+ (;”3Dԇ"'aij^A~MC[&EHpH i3ؔJ]\AwU=%Sso||]Oj6~yAlδ{j&Ng":^W-@MG8э8JK/hX6<ͬ轤h=wrNq\Ĉw52^f=;;Cά-ݮtGlh Fn;^N^vp͛Q8\'UDodJ+H񋢆%E?Q;=͵kUz32Kxq lrD 6xQ4'K'C*u۶aΙ?vc?/-@j kgIa*]gm  &.^D*:^-RgcM2* >4q o"~]jWqMNa1vNʦiau޺zj5'hib{Kfp{HC~vchbuaVdRB"UQ z#t/жtiEQh)(8i9~5BE.o{K'UHѹ@GעPla3EZ5VF8f~1zup}WL* wsl`B"“hc<_|@e b0|р>ieWN.ꣾ_8܀}bJM=s2sĤ>{DUK SyE]ȱQ!w-hnƁ,xәHq o>P5mˑ3ǻ;飌u`)a i2)^&$4J loL)q*Q70d4-w(89$AQFҳ4چ#EN[?+w(دr5ԘOwT*0a_8gќ@E}j۪~nC8jTtC>Q;R)i""6,ONj=0/է Ta;UCf,[PNˆ1]jVEW`dCsuO!"j|cݲ6?㟳^_KNJd)n"hV N`J X+9Yy 2N*ߌ0XŌ@Ԅ ˘ 9@ACeXI Q[x24Q oVtt 32,|3>$mUec4PX 4Q"4eKc<+#%rTj>dS wkiup'U jaGbuzw4}64׬EC-%8қHA5Vrk;xB |+t_̓pYVlI˙"VhȸRgN컵r[{>MeAGj ~o$ݴ֠(YmÍf''3%t7uoh׈F<OSޭORTGHi~RH7d|u 5 /R /JG?,عMC$EM'F:~D Z`)]pO0!: xxW@~t iae/jV0jG`FC&E6#37'/%ve%ٛCAqH( 3=DPM5&q˕e sAY5AT5k^szfqw6nL̢S%]u.fׅ4yͧgD5qL+DQ͝ynTzr,ω~%O7\~t;#kFGL6ǧwhZisЋLAjƨG,ӳ[g Ln b ldL*^(<7.V@цvq ,'M%NkOFUI2Z‰&[3#, dѨDj; N/iDzBwsr6ڤ1sAKB\fsNv6Fqor D< T. m֬0d`ЍIvi,$tZ}Sr0 +s#f؅Mo1Dvg*cJqLV{ԏaхbYpMe0YEFh.t9.pu{Qy=;]铳]*als8?rq;q~5飠"ꪎ%.Ѣ8H80㮾K,Ex7qⷭdy?3t3nAa[am2~tsY&[ߨՏƝp1ybuo-=-KY)";.տO>CO*l Ǎt:E6O{Pyq}ZsTzq{U9Rsעe)8=gv5,vhiٟ:zjA \A2]u! IŒ9/r[TL3f_3+yp+/9r #`2Jo2q:GΉXOm J@myiJK&wg宄îCϳ!5#C ;\"En]Zx% s^BQxO3O"K,:dKj!$aP[d?1 cY#ZWjUb@Y|]ccJ:ȅzZnKP:VGf@@s{MpTa/!۟*mY'!d}'ԳgNeYK/mʳՀ$໨L-3|2wV ӱٖ`]fg% g2kSNc,X( PӐB8h5@mjѴ?tѬJw['uPscؚzʫu[tQsj%K h4X>њKO\ytK{%uÖ9e1(3NOF66_&ǵ* @XuI Y_; tc98:Y}Z5@JHZ@ [Q#aԣ $trP䊍'Z"vFoSP_={y蟚,QuKn] >6(lr{p-p)(<6;02ĿgܖB18 6,C<,ݱlu̎!lJ8i_N+)GbW=I >L[@ ~3{BZ4 /yp:m<{{傯zi"23&\LQ&?K*57)H0 gE)]6tčm=[W cc<Ʋ"fZcZr/qlrgPj]ڀq -i+%w u}Ŭ5"r=wd"Z!7h;lA(VtҔc~ ݭ ꫞d@e7duKX,DE|i էvpްTy8Jx /cj͸?JY]]$ yL⼎ =IO;bTOl(:Yxuk}J#NMl=R^p5a5Ѫ3=-_x48|QhQWt ~:ٿ7w3#+X, O$EbpT`)N9f7Gا)w=Qg ^ʠJ * m !x$ynD i uSu 7?s;/p$R UH ]S'{Ğ%Φz212؍kL /M{A!k:VAm .ROdV FGUbjҭ'Ώ V*4ʖu0Gwԁ#hdXqLw7,\}6UQ6.cT5/O[T: pDϸA<` a-uE;;_Ԥif )tVvRMxKgnR_Ҿ6 <aZT$r:s&_#QHd*:{ ڤ5dGҜ~;6Fx-Fզ]nEq`L˾w3 TLTHPaO*XB,C+u|Gl.7)FjhdnVvPj~—# @_Þ[Ǟ~㏎qJ'⢴isGohH교gSu\{qpڦ5~7$*5Ss<\t2v|oj&俄FSP` <:aZ`]9"ؗWT|MuD+uĨ-@Ka_F"G/0=SvWVǤֽ1`4wa,-shg\}豻\;JZz1ַA?$}!||+D L(c5Bߊ נU@k0]:kn<᰼vwhjhX7%2b yWI`ruyaYjY-aI[ZVHܞ ˈt-X%T *yg>>ųJ Л4 Rļ'5㘷`>R#5^š XiJjṌ:f 0ҵ  :tr#KeC rG}XItTf8_*xS½cvx_[ԞXǔyiPTؤP"DNF ,B2Q}*("VMRSt4O-k{" .؉]aǿhMFA/@ /VX=ȹgtw"b!QHy dn@ ń J^ar7ڭ-FN~ǰ[^%{"S?3Y%$tu#w R%Yr2=UN1v@$~)W>_2w"1`ZT0_upn}W2ṝ99CX?Mϸ_XLY/6 4bǒDB (`+aYXIQDUS˟RЋl^+10UGF_]Rln!{1Jlwd!kYn*Al 6F:UHqYk]q不gAQ֩M!H^_vc3WPB;ihx҄Բ)qs# {s^FXK|ͥ)} L9{y? U+r֋:nҭ[2 M(aoI\pOݿ S\pr:h?RmMq8*xkcPWY&|H(_wkNzESJ]ȨaE9H, I9_ZWȨSUŋ},h[K =C?6~Y񮩃ʇͬ! uUg0R:7W/i å{7n0؃(s%%f wˆȓ=ӫ~- DI+~ r\u&Ԡ9O<Lt{JGXiFAMjAG<oɁV"?^ӑ@go"ut^št`_rZH8!pwPv%՝lg_r1 ϠS֋+sO7RMVq-Y(򢘳pXA ADuG?dA!)7T{}} )3wɋ=I;Lue\Y %ݾ$Ԑa 8PQ90)ֳ%[PLJfwt % (XUN&*PK sA0e`E{̺-WGrc0 +hᯁrmj03r1(yS uKGρDMk/nRc [fB/,"-t+-K  ZG@\lE!nWEGvY~PͯvZ\7oY&T1Ky,~-J9LN[xL䤤c(xcL]W* ~-,17gt?MKuޢ?W{xiU5OC2_Qqy߬UI:0<{~'KM$-B+Ec*4T!09?u*'>5>λNӆ/T a"MOK]Rw8RS G0t#>>PA]q,W8+~R h^Td鮕sEt!TlԭpTsJoƞc}^*q KvaI~l*"#zf>Љٯ+=VR5ku8H^دGۻ+-ے@G$OiYIy]ˬVD\kj񨅃ÉϼNyQGWs\ )_1""=]ݺ~VQ>pH&h8Cҳl(MdH6ZC=ZTУU4 P_yQ)+G61 D&~('Cݧk!RnUkAZ[gvgXhᶙx5pMPa$XV<7O|٦IP)oÔuyڣiSn*N>UG`eGR4VYf_G^cFO9=:-wZ BF6ʓBY׷ͅt僀:F:ZM^ 'u #nQc?$) s^v`Fo6 "(!Ձ78)` g oAfiߜɎ?.e CvSfPrT;N3[/maV>fh>7]9ONŸ0=6SpZ%Tou߷ qn 3D'bJ}ߗY0/*zRvijo胅 1-Fꗞ%FV{u`s3_N5[V;o'%>WET‚hЊjG ƒ~F>`J.OM-+qO Jf#_{S5]=|IV:2;Iܺ?VK 7pu JܑJXbu_ Jz>_+=Aꄣ/x i 㠶"#xkZޔmH'T૵=f[Ʊ3Cp{9A% Q!쵓9V\e`i^,lG, %zK^B%A'"R͊A+ε+'gu߈8jݒ1;e7~)iFws-3@]&S q$14s8\03Av@ӳe'_#H?؋}0H B K!NW(3ٙh%Gj^OpԨ" jFIV,AQiA`2a[ոF|j}$Ǡ51 8dU|V= >F9FTư|K[SΐJ 6XeayCAVUӾޏ=~_iu S]ܮf|)#l c,>]RUH 8bpvļDth(TST6! &Nԩ\So;Z{Ԣcpi:%E2'%ķXԠdf2U{)0yߙ+6Hķn%"itc4 3G(D tZ-ˆ >9WtnaQ,U[ uԭrd޴pF,[.Y}ӷ=Qhdר5hlɛuj𫗈ۋ9nΆ]zoKݷ/.s v-p <]Qzhq. c=C3}fRt`qmgӏ$#>dCպL*ڷQia,\ aG}۩2d owNKF($ BwJ{l3(n%\ţQFfǕ&J9CA`pjIfy[ @_V"WK7,Tz g3Ql Z.Nq3S' @!2eZ. }}$kvec&?~aur7`6a")益ůHǍ[׎L [Kr} Zυy0}%)zߪ+4QB//^+8S}bcs>'K 1~渒Im0b \i&(q|SK rWv3n/+*Z/_&Mr/3JwW8S_(AaKoܢ];MDېY^ ɭcdL ~YsGXw s^vBڍwR>EFVKubru"Ĝ#cĕIF!l~N cgDkT3H/:Q>Q[v_ q;#ch3=""DQ1] C&$"aàᐛ 3kD-=< ;4whtSzLDDJCŁ\Kkq,.=ƺ~G[h.{Sdμtg HۯOIn1H*2l0WRp[DŽ&qr*5('\7+IY3 'nw4a&&%Ub`qLP5ކ yQ8*%JNԕ^.$-\㏂iuPQt-p0QoSy3]I r}ǯ.gը.:cЦ_,ݑzUKő^$'n><+xvʛm:=ŒM0nsRI~?Uݫ1) @9bĠ7x#@%AQ ryP8s ɺl `~QZ^,Hs.@ϭjLnNOOkkm=sѺ #Z?%}/79v`VoF-&pL +Zh5 8W @y'Rj۾LZxw&̒`Cf{| ?0@GfmZqpԻgpXմ9}VjZռv2WVuura 1D<-u)d;uij{x/H`*IڄZ]9L Z~ ~D|d9]&=c0ʃm+`wJPNFz+m؝֙ى)<{h[DAh+)D9ۅjlajKJKBFOAc04snt* 9f3sùDcn$fvdƱ#@km;>3H&}v&ws[^c nc9Xa.`g, QGrрܱܿ@th>;kl wXOh ~a 0Տ䪏aZP1A$ + nu3: C95MnA\Ahz'yRC2{[֗=5dե =1N8G8 .%DB~d!j$0лأ03=^JfWbuxT@yl dx\P Y$Ȅ޹V{2TbdU>/Nۈdݛj5@!r$1+,.6KɷSJi&qj+Y5M;՝3$vn1>D$bD.OifL$@+T:$aJەL[%䀠PvWGʓVrGssh|V?V۲cUQl-\ÌI_#Yѣm2/`|϶֟Iz!bF:xfhH֤>/2Em4Řc0|y}T:N2P&9{{=iK1UK%7I4KZY^Ntz~;v8=uMՑmo@"!m11ySܖ;ޣ,Ə#+Iw$@HlQzƳ)U ,Vb>,e+sQ&G]f;ejNEzʸp p^-Q̵lq֋>'54}NK\4v)v]X _Df %&㊡v&x2rCB@0&=uЋ}Ќmmu30k:LLZse'vLlNڬ޻ Lw-J&~ߡ& |=BP7dPNCD* Ĝl*xL#ҟAk[ Ƣ׋\ĨL9/fRsUqh `uJ^v |i!9VFs𺣄r_a5[ڔh8T>*gry).dnx 5)_ LfSEtfk q7F k[,(xc>&/ƊfƛkcU~cqAR·G uJFN AU70Soٜ8^tHh90RΕ$ Gcag0Pw r|etv'dL?;CHl^RG 5Bn>י5[LЫzCZz}" :e3v ޘA>zq99lH܌q !Vaxyæ߻g[>Y0?1XcS&5) *O/9de6@7(vNxйخpӪjF!HѤ ?8Rt5xy:P-ScGZwp،K$Ad'vϲ#NC&?nU iVpp:(rQ6cܬQ-ipY󔷻߳q?Riŕ@ܺzLoqů ªG[>7OSya^8O.?b\,kL_ūb~u!Q?IYyBMOnht:={˹Ȁ K9 R2p-kWVi-zQ3hWDmⳎ>r[jR湌:n7t)bHm-Q >|ܑ߸Lp ¬G-^?yLX'\#GX$,,1lBW{K, Xd2HdMOfG  5X<9sKkN}¹p𿤵9ZKj#V'^PH0!U;ӦٿS)f'["MH)ݘ<.zK"3V`)N.J+c^6Ug1;` DxMvs<4nP0!׼//( Ed%W/c8=}`s;QB h`Q+|e5tYZ [,g4d;djex?cW@dk-VI&zg_֮nĊ%8^jw[isڐިZ_gb[F}Tv DanBFe}=N)®1B5 : : gBKZ3%OAŏx͠$-D?UZ_[΍M\f0(5䰉+B r.~2a.H2[7:ҙۏ"| (ڮ> ICB< o_RTFI"v& afڨ"SvysU-+ĵ[|X-SVT;L3/[o0c^Ym I>_ :e$-E>%<$\VTqz8l CF%EoQTua6*[J^8};JE){_CR4Hc\ĬG];d(}|H|x8&3 L¤4 (CZq3CLkOI:|?~’#10Vc/;ͫ?T 3OGL7%[h$yL|lǫA/It}$1Bv:׺FiOY0 q*\zyͫ=n49];VJoްagU k0^Y=T=P 2.݅\^,k1HC_Z<&or]wz5qBZby`E 1ٸxrYLh^FxGxtuف3 Y] 6CmoU! wGbyYC8 JAmQ/\} 7iѐ2[tq8Eh+F?Mgbޠq{=N' Co'H) 5ʯ 5 8Ig+L.dPr#O;"k*}RCzԜug.ϱ^Y JS̓5Pӂ{i:7;R?^*ik3.v>[Bw0ws]o7FnqǡXTǨ$mLeX sq$ 3{87WA9Kes)\Spv1n`XC?D]';|i]Y~\;u} j0l v*6O`N<bQ'PR^@R9FP2+UEoDLͼYk Tw2UEƪҌ0Cgv%7`|mɎU7F-<M}]hI$f_ހ=^㿲PL7鐢4lΜ[ֿѳ7׿~P/V0;ah*f[ ó2әt2K$!TA0gvMJ`W{:;G*p_|0&G>-ĭkF4ᤁՏdv*Y8"wkәD%=~"sm-z%\7G+Gʲ 1ZN.؅q_ o@Ri- ǧ[ϹN:tsUZP.Yy2h5F03VT38 PE goTzXougW&-M]86U$b{{|rQlc^JnjGo1c[$@Zk)=,.e/u6;|z 74?Pfbd_ʛ5/rexLREB#1YZw֊A FyC 2U~{E}WLjBqaV[wW WX # d|(pD#.Qp!_Gyسe GUz!qPdFpbS,<0P}7J m#4A|vV)2;0oQlRSmt!֒!A.! %`tP;Ŗx T8imM"b. D~4ӄ}VG-wp'`ӧ#| tdLsFDq=l؂{ʟƥA6VC;3~R=uMsJ^ArjT\Yjm><"GpR^59l/aaďߨ}hMAdryVUW*e EI>r5ᬋ-8D2r а@IVʳXaUKFl\SC=2G˺`Q~yi %ߓ 8!ijwhX" ,Nd܏Zm}Oce#"0"sV&3fޅ^z7ZnT}IwI5 ͈d-+$LĢM; aah3 Q r]GnW!]imy;LJ=kM:v^rG{ ]d)@u3'n=Fޞ܎y02?/ ܗoi6m¡~l)(z[T B^;Wt0@?n2/i/6 Ч)90vEUwiVܹCb~ J@wfq:MUvQswSNjH:mXE i"EoXT$TxbAFyVPcAF\5_/UǓfsR#;yD5M|)+Ff#6>,ѣ|mWM(3G4[bo@HZh}-)ѝN8HW8ɮ*Rh:_D'蒭.m-WxvNHpuۚc~>/a"=UCЗkuOJk9(<2+gR݇ɽ@#kTHkPEZ|+m-Ll"Z.G6+57}wJ,r0EXlu dYtRQzWiqZgİRL3ɲxثfW>C^ !C(bY+`[JKcV)C-lTිєeaB{T5(0GzOBnñU&MgzJqD2'HՔYj<\6 P5U"tV._ќ bޯiUXłs,T|]>5,EbzOz/0ucuDթ tp,^!B3Ё qͫsHղdN tN\# Eb>giuxEh֭VXiiJQZ/{GC.;D{V|\Y!pPG 쑋 h% %B!vs6_A:E9{|DsDq5vۭ S +Tp؇dUcG-A|fn;P!?673|jld@,>yyZ73{Q d7]}PL+ABWV! eP앪|knURb]unKaP.x%nM{NÙ0e3eU3- |S_s6wrbG`j_[hRoC{6d{\5zn w͡qӴ&hٞ61.`?yL9@~]^ c0PY3B ZEL'օ2ٸg5 U/Cj])gf ? eZeqk>˜O"jZ6ա߲ {Ҫ~noa:ܕӹÜѠMUŋVW1$ǵ24m RIS+h&OMyg+ 0gT9 >' .R!y MBAr ,Й[DѵԄ[0_0Ę!`ic#6@- x**h 'd -pFK6rM\kS)YLCnWL?<*? ?YLw:łL_Y;:{&Nj8ևPص.`ar6'i0v[-½Gv3 7fJz:i ځ$x0 -n҅R!@p]RRC!|m9oI 0s~k+|O7y˛Xi3gς{BU6.F,&[sX>-&KhQ7# mt˿g, .Ӵ:jU5XEVrS)JlkT?ΠXm}nné({_ff Hݠ@}D9=p-7XC3Q#`lvw](,*7ȧ )C^p^Əp a&n -,J)7I ~Hp1-_O5̟}qM]f^Xc) LGN^ uܜ/qKx>6RI#Gq§up3g.ʜo8/ -*gˇD-ZNq=o錟{fC?kӦ,!Rھ54kZ. L@@P}qFd' #ܔCWht=#t]34j 0ʾgk!8 (炄#e՛'ϔ `'eɓ33sh w+̂Z5mp5dPѧ<܍U&W\MkbD&z6i߁;>4SKIVylt^N_=1U\!E~C6A>xF ?/c0\FrSQ+Sӎ\ ' ν赩 J'&.}ОMUqB?PfxM`Qdvk!#{X S`a/ FÊ20Ģ`@hxk/s==@?7qyw>Xj5 #Bqpml;3'ȅ LbO_؞1燝 F6%E kM5w T+--!`T<mʽlt޷Y9ZEdP{ 65',ʖ`,tfdNwWS%S`:&O{빐nN4wdAw@+[< 2ȉ vџa ~; < 3L@5UG4P }3GTOaݟ Q6؁j#9eeϕJLY-͖rknU%9*Z{IE/à}:s!Wy(QsQ \,bY:!\ K_dMFE宪|*_G52*5G8I;|"IU'MIZdXPK]y\5cs=Z]!N { tEi?rS}UtI*iYVyy +WF?nxݙ) {/jtv'O L=*n͸r~\M ]2/3g}>;QX˦q)]p)?ވ<}Z`^oN\O^BIY5*e£e`Kr\$ԨQE2ͱ)r pMge ]N"f.=;(c»5RMA [.\GJܓ7b=.{(T0pm ٦T;%$ 6dj)ٌ\c(: p!٩*r>V<̚>BYbVՠO1HP+'hJS d,C9-+~Vb R=HsA軲^Stl2|%%H?0"X[)- X,PX fS(E;s̡r3}^b8ZO<-Q3qWցc/B cvC~0iխ h89JzzM ~˃՚-)1ѧ| fٜxir62_Z,(M8nMZʐOb~ 0BI@sg8ݗ%k6 P6\O3&[-B̅jF;M:bpa~!7Eg%c |L"Wp_כ:e~y=L[| -yW~Z|ѷLZN'hy|l96 >r:A؎7@WRMIe]4tdNHnzyUM>E޲@"ni` s k´adoy[Jʑ`ϳjv8):scWBAiI+%e;!- etrT{hL7eڦfUI0Ro07ݼO-y+?7Ğ%$1y׭ lm2 ND{_C8 `*c1EBoH. J`v+U\:JJ5=}sdW7# /&-AEe=flW[ ,MdZ!H!Puѕ&%@Ad |!s20cP:sż_mZ(OjɮŽvZ2)='Q#j " i0d=ѨH&HXDösvr_*ږ{lhפ,\L$[)Co,?:|NjdI ||?=~di(^kZqR,LgkF=ߑ_uIi#n}_vPs*MY j7 n*Zboւ;S{\?(]mD.rĀp9x:W- ʂodc$'V<4Wq|?槌Ȓʈq IOǪ5!<'TJ(gt3|J~_o܍A:|&ȒG =1-(dhCgG NHgЫ)qN?Xn>V 9Zʸ<ꉻg]A"y,0ecN%e1iآ ]mv1J dRC )Db-1hWhT$@s^%(>HX2Av '6 Jȡ[MƊƑل 3/R]n=Utvp̵"ȴd;!gËCB͂T^=o9c,HIx$Eo{vQeDpVX=yxǮȎGZ% b$1KfkgL`Hxe½[ p[^}5d-}hF*8CY^ o:w#]6Ay'9t%r0K߾n#C.8h%ߤ+D6_-R#k |6c+&-K[:zg;NWY`d& EQ!-B}Y;lFC6n`4tfΌ]8AF;R Ѓq5x,) \1ɧiP뜗e]C 4sX.d5{PɹcAQXmBwdUtr[R4S k8XU_S1#KjVJ:_z2FREof5{ċ9yЖpz{Jl۪C+q1=_gs++:2WEWw䗃ݷ޽~BaZ?3Tc=3?~qD̻L [8%I$v F(gi+@^輈IhDIγ?-~΅ॕqE'oY4Wa^GoR_I.@K_{50I=Gi V%1}k{?C, ZOks_fd> Ł 唦R M*wA%.ĘI4< % .:J;|-7 ] ?ɇlyBm[Y&!2z$V$)8gdԖNNlKd&c7 JW=dJHʿYc*F5gzpgmQfD"j@6 0"}o ~ue40u(/"hvϥJi`K?{:) ~{\FLtYKJZ9 0uS|SkMe\sR LXk/_Sݨrj;`כֿM՘m_/yXHiDI)41vHS睷D+@OܻQ8t= Wyg@kB#'}~{c4^ԑ¢V:fB(`C&h.vJ7v`L==xVeL0"eʾɣ|;?h:& n |0IZZ(wb8 ;a#SK\T_Te0Zr e#/@.&-})H=- IX d(uVs  IK9 hwhOE/# plyWhжۋ/n`ձ0eK!]j$d֊"ˎ` D{'XWtkW!k?Vֺj$+VNI_{Yn_paWkmtsAॷX`bc] z'1ޚJ:}G6w*se,*4S[2+2Z?A|3jNwX /Ve&8'Mn/ vh]p/cV%)XqYʌ-zvx_ U\ZY{#{~*&>@;ҍwj[^>҉yG 4&T JJonzdvph[qbE]&}WG}nx.:UA.Dy.۹ELJny}${ڍh+ٍۂ4߸Ǔ Q𣩪QJyWmT cyZ/-@]%iT.Ad}lQ$5۸G>ޚoAxsgK䩦q'Dvt`7*`Pn+4bM􋑺NJ/Rxe Akd s؄H} ^)HfW!sLO>uHG<${7EJx{p6[E- A\6t0F`v>(n9ޠ=^dp=- zmuϸw쁠*?‡* $`_H#W/@ȗI012$wR:$%'g)0,/AwK4{O\t;x2oSZl!/"k# j W W37%>A&sCI:kSqsЋ%roweFQfqƝ؄Rg+\q\fDK33 (TlZx11S\i9 \GBOٯݫ-9< JA34}\w ]7Dg J\ I[߄5v6l)`JJT5B- wjYS`D?sz%d90A;F縷h22-r.31;R.Ol%I>SB ?y-w&4&aߴf:=e"vZX#f_g=NO㲹Hɹ.ZDsVd(+3uGXXVNn[T 2b.Rl/DL.ʎ\=\~E`:^Ė~[G[.D B-*g@#iZ xL??Ntuiԕ~UD< y ^ fJ-qE$هXt8U2턵}pՔM^Zo,)s@ 6I5ֹh--x1ˊ;Wzୡ:'d7\^OȤ-ެq(G>fN'V:AOܴ52}/:n/*^=ʿ7A$WX|:&&W[0ԚVILёSeoIFEy J`4 J?q%][^(z4U)Ўa>9?XKV :v~ Z~feK0[J+xdc!4҅%-+](]de&3Wq:QEMXMrN0L֕^nmOD; ZR=1CUuŃ=}G;mJDtXlH2 ֐F*%ۜz$nNTŌDƒ 0Ors'f3>QxFPM'@ep4L"<78.=ƀw|rEh]}JI^fqh?B%FDx 4`9r&s7+U;#okŶQJ3($K<O;$S.)VfƄz B6|dA孲Ve,Tp?=%%"6A?l$sP 0v:=dxzq iz-~/cϪ^IP| D 0RV*wxkf=%`ỷɂۨA94wƢx8%>9ILB4\ kQ8$@/]KCT INO%5y6:'æaW42YT0al|ɓqެlthns܏ '0 k v.pNJP׽3q=85ݖAtrux+Ֆ S`C ,̃W66Tv7n:kW"CN/Gw4Os;-W 5/{' 1$qx#;c{ 4c7kr|#C%qMQ_$?"Z?PYs'.?!72WTcfZS ZBg S8\(BDK])=-AdUi\ / YMT?]r| BX]xN> ɂM&C6924w* p)!5E4E!V_7},U>qBu s'$w˝hb(n CA#0.4w |2dzˠi}c9트24Cm8 &6iq5RfZ`MO\b$T '')\p?qNN͊d(1(ެ?_O;t1]G7o̼`?bz|kx607UX2=D(-D7RxB0t̀ X Xh,IM1_' R)&-#F^V d/{8r=.gZ*=c "Pb LWv#lY~g#kP#U=Y#daP5khG@@BV r}mhhWM :!Jˡ!Ekqj q{J`W4p&Oyy#TV59/weA3]'lBf!h騊h̚ϴZj3?,޹\@ %q0'5S Q8*4}# 44Wx?{晩2ᯬ !N4ȏ2ֺԞ/DC@Λ]|||ffNp~QjXAmnU̝⥃ŷ);-?Z@0nyo4JSH:2Rɢn=PRuuBz(->/_-׃_:8OAGyԕ f7;=7V"q;ՙzagppy TƙLKZ)hi`[°ZU.^,&ЯRVTvra*z.zoL3ړzBor/`4,#XnSÐv",9]v9m"QiS&M<5ZxIJ%9I;39GbA tlE,EN6 Y `6 ɔOOI!h)Tkĸ.Ĥ!}DT k<Ѕ"*u1~MU2vc?"Kw M)Cnk%%;s5!HW'z[%JS!6x8-p7܏+鴰dWBdUO5B!bgp~Qys1:g%Lw˘4;v9{rk]K2Ц,5kj/Bu OIȴ'-pyL?Vm1,nA~ ̦7 lZ&-]y|Hgle1+]vX є'~/AU 9 ;@Dtr)49B!PC`  1ͫ]wF&3s, 2Cq_AHWQ0?332z Acflʩl> aHTؿVg:8_lS( A {NXo~2e#X^?tn$1Ҹ/hBJK = Z"q/[jG9Z'4EJ4ҳ\$'Ҽ xeZNM4J,\40V``lWwRp|$kIV, :(YzJ{cA/bGrx(f4s+%zvmmI6hEY&ƵWٵ9* #$+`?)NqWw]o F3ڙCF1j.hn(P@swZybGC|qFD5vD[kHϪbpԅ\E+"J˸gL\,/+2Ѫ"v0Qi|;NÏǁPY;Ye}ji2?[K4?SHR-?X7O4bW-HZߐ3K5 ۞ DI+0a9Dg/u1'[h _rz2Vp36'aR׼m3v&dW2XgoF~2CQ.*?w@(xѦ8p{KsDCnIf49-]R1"^dzDp , ɽ Z.hn{jdwwCwVg NH' !`HcBQ8፲hl2>;.As)[T%_3X (D;:!x|mzL/нrLx"6&p|i_2#"e$z%8&…kGeTz$i[sH DA-Fg^:HĂ7 d3ٌSM%r xL|thFfQZ_)g8rTA_9};X6_ zIW}M\xT'A1jH]wꞵ0a fRHd[p/,bu"N߷@ fbG ֺlFBpTnqX 콴XBoQz._Y\id=Aм!ZGOfc6m]. 5}Ł0̜9̖QEFT?ֿfgS˜Z`;\YZHMb\= W\X9`ZRC%qnڒ+Ox1pƷvPPVp-J.usOGoi} z-Br9[ Erp[eԚ,@9 eQD3C|u|&1S87Az$m<& s=O"=Fr*! Ls1mQ$Gy{ />xaӄM6|jԒ A~Nl{(JB2,ޏ#tE^,,0ܮ3wp?\!Fh !^2o+op kw>8ZPP8 YaX tUgan]1:n楍y#DqYWnb}aupV5BN8Qw;. !*c.j5*ZNU_֎0~~=1XA0qa(uj$OPxJwaCu+nA*Yz{ `y0R=/你mjtov\T}QM=f^xϪVxd(fu\dpS՚F^Jhg\aPVx.]/M0|rl{431r~7~5=vDǀ$]~Z3 o}-ۨLaY>l0~~or{,G4^no[ ڱ3ZU"뚮zm[nzQd݅&5D:/&:6[dUਚ֧ !.7%W_L1+a`]:Q֔u`F%tה5Ww:@t6K T7zT!"oXO;Fk2_,>j g^v"~A(H7kX\_.25wI=#"HZ^w)`s%mn˫Q<%f 뾽e;%wNׂ2{F ;N,gnjG5kVc;"zK\3,[69uBR:%RY\phy޿q 9hO. Y8c @#v ci3p7LQZX/h }:4Fdn> L4OUȡq]KtIUG 0T1EsYb 1cم(>unէ&ۗ3}b8ԊIk&.hw޷R3T|<_HXy錇$̾M|?vrψv ӴYo\5lp_rPfMqfᗸh5+"!2U./ͶlLS# Cʈ(uJ{fq4%窏خM>xb 7hl/|l ;F1v՘T]/ؓJdCOc")bGQGad=)N!bbCMQHuhR9e0mے%xw{$6(+tH J7a>c(2M. hǦX-P-x &-́Sa TJZVo Ŭ﫤0*/:Pg#3A; =|e6psɳ.x2.W^' O$I2 {rh5[Sim ;bTnmBӴ+K`I(E:vA,ŊsF"?wVvBmE?^F ͚C/\yDKyCUwagdEhqچ;c uy(4Ep+v 7aQ&z= 7Y,vn6r:U!NDP,h9*oh68{YFgTI@R -XNP7˳\WVY5-;Y=L.|Z*3-i"%Qԅ1K\Kj=߃6?fgc3w cX /pcGoMt8޸.=1׾6t_#ZoNOm'>C_(ۃ<*M}Оm>ʱ%n%(CYWezR,NAqKHjqSh'9څ1lɝj|͹m4{W G!')#Ὸ#,3D2\4x.؄62emm&_o徘2QPŖ Ray m!)'h:Ŷl݇FtCoVŮ'dV2TfSE%o>[L`Zsθn_6YۨIyah#XsX;؎o/10ByN٤bqɭge~)&Ry[SeQ-iLaDbT0Bu)M :jsE a"|[!NT7Nb32L/Upy@#f\5gli3V~cwƘl+;ul"A%4,/C M[ džs*A-Gng !D/A-^MNzK0'ZxS)rkM ª7_}DAY7Gmo +P+SWGe p?hbw@4Kl-<6q:S] qi({2T;{-Ξdw5spwޗ]&8ȿEBS*^I:rJ?E%sV1#eAX 7Jgx1Zm+&Td٥ATITVsHosKK֎~Gx-'V9;|'tki}FvNӰwIOK8">c{F_Kf0w5.53CsY˟JЭz躏>dǖXi[(9‹Ga6r8"U=;_ /`i+3Q1o@ҼB (yߛ;B78& gP@{ Z̅e<5-|rZ1~ :;E6"XKǵ!]i~6 ?<|HhԆ$2XC2,>дTh#kQ"wJޫh[IT? 9xyeۯF܀6_[V5?~oP%{Ķ;d1V)qGCXX(8+Қ ^.LE;H[<焀RE(mgr)ZuTjLB Q`LeezaTha/6-1릴7q*0M$ay jɺ KEbyA~''H(`>]7ޛB(ᵾql㹈ږUoqPeM_͊3Ȃ6,OzhmPUHK ctϕі6㔳z3Ϝ.'# -63,!di bx/>WB%7w`K7"mjyJq1XI5E}|& [n?Z-y+~I!~]x)JFvNc %X-@Z`oȯ/(ӶyO$Ýd/r"xܹE4zKk$e I^?5ĸPǫGMz-NfmW_Y#!-R0(Gd}rl5PHTl@=ɪ|>.'^/!Ӎ ̒Y5k2h)V`X"xt6 l 1i90!L!F4u̱9[w=07X5Ŗ[Պs#?d-hPEj3j{L iU&\5{8Wk%s7ٻ9顄ZTtj\G͊P-1AB2u𫲤(0o'CڰQhdUxƃ *iں]@\$b)DIvSm5+TRtzGKУi%\?NF[K{[Ci.CJCȩƩ _Dp6۸\6,Hd M8L2 uD1b"ͭ3wԄ/lW2yVS4b.vK5f/&WZ-`a׋'GPns!% i &jň,i8NMߺ0FCw@DJ8r(><00"gacvQ$6sQU4H@{8#M !dHpgYqE]Dz;p-q.=A{HJk}G,@Ul., fW[6ǂg;L Ywm=X \ȵb )=($BnMP_ebĪR2k)j`Q B R`c4ӷ}ċ e܉ & ifq]ifl-*(`{ݬDe-|'T sj/D@s<'UMN+P-04M2yzz-q,Mw~)%߯akAok.Xd_*!fJF>ϕRǵqܥ[+)!Cb ԋ:I g~ZwՋN-;Hbo:ސX +A(^H$k`\A$CmI+ P-qeA n !WjX(dqXcHAP[Itn+4z*Rwe:)~.`Sb2:6:F\}*%Zs-H"D54GneT3ek8Lɷn|iXg'ZH>d Te̡zZŸg~tlniB]XYIP?*Q nx:ʉ\ "u g#MhӎTi eDigߘޤUE9 {$W7O϶KeVviU-2rjl2ȓ*aK"ς o`RMBin 4dOnJ$&oϵܶv+)uc.2gE~Vb٧cOHlKYbWH95\=E޿Y6.:i NcQʙ 8؏ MjR2@QFtQ _6Wer(m:ed^(dPaʘʠ <5SJKj?+PPJyս_}xhS|/CI+(5L&1-Fx R1 gATFv0{;+DoP:vHܵk&=>aY S<#R}ح A9c9BM3># (Ĕ=jjSbf&zb(م-z.¼G1Mx9R$ՏA+j~G3T-q3C?$)|j3fhtV_ q6uӬT k }%zXz>yKC~nkh#0'dympM}𻮬>N떚DdԿl~ @$[;,d̋ˋ)2etHCeIvs"m5MzeUUqT܀0w NiAG] 8[~']Iѓ1cJ߂lQ^*qZb(K@ |aʩKFce5N]: Vq]$ s0D;'}Is%Z%QbH =-fa,/\m9, CUH}/k"ş%1rƠ 뺨4.`.b=7*۝_pB]4z$$m:CwۣK}EA "s./lK%`:\ltN8^{X[ı8Id^!@RD\a\]dZFGۖA[CǠyJl yT[s0h(K9M,»)% %A1DolF+t̶7'x ^(VDTHk&H 87řlgu1, yN e&#Q%@s h2̸6ڨvF$F F;BZ-fZJ3j޳}BSSܶ4!zVwOߤA*oݗ2Tb:%zQlS, OVkP3w~Iτ9;[C6?zKaRqwaS$A!~UM)ʀ=x?ҡ+x"8q.q5+Z΍ysKM~z}g22%}ݵP4 M?8kj'c@{^Ucct/m*Ǽ#i߇ͳu*.z Hr{q }p0Bg&ó ,7 <07 5>*nSvGCj1ж3rj=4oQ8M#쮡_2Gl'C{rǭr1,bl6|ĤQB#&̊l o[nSY(;x@1 >v9xO߳9d(̳YE<[^sGH%MŚBytY[԰W#A'j F0TY=s' (o><#SĀmT5=LvjdL<8ٻsimd{VD"󖥙E ptm\TvTX N!La9J] D3 Hۜ+*r?Oq߾b0#5S>S?:NaJMd]:ya#Kߑs7,~YB,:قY(zP"Ӫ3}!fja ŐzUHߥHqV߶4].=veVI˺"S-dnCwCty`!e㡮iߙj_b\PG`pJJqiy=eWL2D[s&nQw3M`$Hձ7@ox4d% lbZD=[W= :&JwO{׷Cjiغߙ{Gq ``@LGys7UG;Z@eGmh3iD&ǑbT"+5-)XMbmOR(BJGɻk|Dž6 8x.6H\F0(m:X- hJ_hj 2튥vQ;jW+#0 q~8Va@ifVG~CklSP(Z\M| Ae-\i6sU=d-D0IKPj x8XE@>?0n-wGOF)egqG=~ 6qFVך_RWmCAҎ#<謳5:DL*P*0AG .k|83$L _ ^%0CgjD 5r$vVŅ^;'IM A04B>Lqp} f 6t5Wawa.Es?ͧI=F?0^)c/Ϣ:5d;xU2Ǝ޺tkTX%9JbLP l\ ]TE[s89!@oE=/LtƲiXV޳w M$?#H9V@t>b^d+cVWJA?~1(Zԣ)-#Rk787 {nzpBBj)KK85Ϟ){]p<]ˑ&V"rjo5$c8:Q3_fc_-]_&Y9sdwJF -;^"fɢXQAnÁv'r[D&IGӕHd16_ R3@ Wd4s-,rS \@m?m18Gq7\IW˽?kg!-Żl Mm`G߉Yx)l 5sTQRRJxm"SzBlӠ1ԝ^]AM j ?Qt<-ĄЇ*)%odOLxK w Z+b?aPFti2p|.EpOBZ6]KDZ(yd[-[ubeNkgƼcKpr g kU1?jQ֟ױx y6dJ_J3!fpĖH?dPBÁ7BIRC<,ej^ ~<޾5'.QDRg6KjKo%)Ix%TL\h{?R 1ġ$mn;#WWsy̹Q7ft7'4'l);Ɂݹ\MH+kTo\vGaruRI݊ qGP2U^ADPӃU`'S|`h 78 /m(BG`EAtf,â G@#ge"Z8jɄjݲI? < I$=}@xĸةY㢒4.G;Ϡ+.d' YHd8su>'KTZ9ob`GWT qphdS0,dV(Ogl sWQBdCڬH s[l(+5IŘ {Tb٪ƖbqEUt*&!w?WHjm/7PQۖP⩊7&S 6oOlSzOtdv:g@ud $ q JoyR B+b ժ\ A#hX'R+u+;YTG3#R?Q1`|p%hحk+2F. (7˽+OaPwbqw %d%t1 ձMjx24S֙𾧑PدiY e`DG *8x 'cY=* 6y|"(vSQnVtcZ{@ tbxx6Yy` 7]Xo_WNSt}a6YbM;J|qK8}ӚrېSu!{k_pI|aLCIyecڍj7ݠOnenuqE*AFhF^J:Mcî% Ҍby(1gѷV(еo7RA[)Ww T_ˆz!w{! zSTzWYaQ'DgٽEs= CR_* ;J۠Bp4Cg2;V`p_J6lmp@r8!>,+Xot$.dM'#/8WQ66״Dndbq5eS6[ ] )ysm@N$סV]`E\Z)@V}ͭj*"'$x Uj(68T:P4.0W[2te#lE Jh<19" 66kW?xhAKDѱ#@R- G|ͅ4=#- VVjr?ǵHy$`GDdv{59}SGO;C3XN"{MB*&Gݫ2[a! c/,߂r1B誐g S>>QuY$lcH@O4ZaДbe|v/^P܊YCs:lS|B4D|m &7E[<*/Ј iXƖD-ajiL TQ)Sƈj! ieȿځiD?ZGf mgOj\"xud=<1.[Ix[s4 ٰr{fW,o UpEah=GW&IaEsqU֧$`b/zjE0,UOkjKfC1nwtA2k0W}^0@K:5YQ.Ue1&YͪP1ϦtWL,4DV^8Ndwf !ޚ8r|kz1r Nٸh2Fd ]rd"? k06ڗ\zāN ҺXN{6gbw_ $bk ݌ rzӫ.]v.Tk2z%[s{9dq ( pqY=,c 0w~$@ h7 vqWbimaȁ¿%yuE[ iRҕEfvJiw$7:1@CړsdcQz\CV+EϏ 1 mm# q x#po7_z$ƀl=UGQtӧRƛSQmbXx  ,JAl5_ብ9bΞ7׹MJ=ChE_d) 0PUKFzO|Zc9A',MLnA*ىA.Nk!^}QY39saR#[uî5/&1YXTeYoieG0|p|W9<2:}T E']@r _zv`p=h)E@MӢ zqP \Bf.UFm:tAٖ15XfRbjSON4㿉)g+/lDSJnIfZ]03.Hl@1f5ITצ2S@`ږFcecqBP_v9x=f?؏_/bl[Jȹraŗi _7C""^mfU@у*_8bHQ̉Xq=ź)}v(3z$*zf-:_/p%mC=_3TLΧ)gHLJ8hHѢO{o$~%z 1(mNc<2*8:7dzܮ6ĴknJԯ'kyhB$]3ݮ>^.z\uFg&ɛ]&;47SR~Q&"t0¢sń AKFd*@ 3!ñe~->.ا:=>'p""7a=*T[~('hL iwQDOSnKk|񑬬:b3K 0>sV2+mN)E150y.vc')݈m8,ROey?7⠂? B!ΆDgP5T ѕM%O?|mZ-.UE|}'t;>%=nyԘ3F`!TZ(Y9ܝz|$1O1W\SgKN|f-;t1PHhki.wo(UWw3kl;&o>00l$OWEt (s|cQqu\hg9TUߗ}N|8uR"l E1lZKC|`KPL ~3oI6ìP~iIxq_^@iZ_,dFZC yӫ\>HTm'>ztz#(Fw DAnv5MZ&aSfk gqaN5ٔrSߧU1h@*I~U+V-mjȸE~7V@Red.eAxJ!cn,݆GryR,γnInɺ'EX֤!UHI+6djHtxk@u;)e߈A~L$4ݸ{)BҸM$%7fP ΋ L5P5٥e+7FVL_w6(ŝ{Pv=mywhL(~ܚEnB]utiv06Ljn}K E-o݅._VBCzW]UG|}_*c[ Dbu'EBd`6mWwMd3WG4e6kxFvFu[_ijAkcNKlkwȆdSkͮ{gtA]*1¢儽O"XWյ?"¾=E8;m&VUJ%җ ښ:b5'l#@\v|dӘEs9c l4Q}Mrd4N]|QĨH N_ Kw!gb6ppza͍p{ްm6RA,dFep'$"F>cŽ:U{ lں{Җki %-һCY+`L"C 3Pg'pď9LA^pLmcZu /!P{tc6 5+Tz3*F̰um-L9@Wt)^ C?x-G"ŗv)709GͩTYS+`TZ m~W0 ݦ ;QЍm~2z~@:>rڐEV/TgkMz3=C$IcŇ(js$ M O&Ცms2a| 5~H*? 3)rU(^؝y$)Od_ّ+HQ;Vv3%iT?ó]!^=3vDC1`:;M(wA+r'7GqKwXɑ3fH <zL.AMfsVг 9qaY-"M >4Ylf8_*a. PJ=7Q/ 0g&{[>syθ;MB΅^:=RS]/0Ǐ\8gh?N9cos~x`ؒz.>} V1w .[lEۿ}D+s|q `2r ʈ7zW|&./#ȻgE#bVE;#E7z}:lEa[DiV$Cɻl_ 3 1inKGeˏO)i>R3(\.I>%6bv6RG5bҼR16} G!(3JB]@롥мGP56E 7乾~[av:eMl)3.ĨI yWGB~v0+zn)kԣB*|JJ=Gg32^Mɜ"80tIݦ]~Τ&%gBle קG1nWa UflTw7?L'HH9fwK']y*o)M3guX?8ȧ,@A5J&HVy_ tw\V.猕G4F Qd#-C]wzCD0h  ^E}B@tWlszS'W8Q"L>mgK:`osG9WZ 仟 %lQ뀷;@utďNKw'6KM.&ՐqEoXI8yLҲNڣ$Z1MrGΏgcиnOp"צz ng,͂VH|AXp$ӌ.yqVCݎ2t\}+㣒 `Q=C#_=@$Ӄ֊|J83*D`AT_1O|-ud[CN%BwsV$Kq:*Kj5~N1k)eϑ7W(x! .)WaƷ?(H,G3d #P+8{(Ԥona7X'".OTr܎gUT yt:ӏē[R]Wq.Ee,<"K`[O&cߗg yb U@C- c,cg-Ȯ6 ִc/v[,AK[s+SX*1]&@4;;sO|u qz%tUU6(3A/crbp swn :t?G-1H,6iTFhYю_%@J :Nh :oRrN$15[ 'ֆ~/sA>ae߇ 9c Lx[3zlZrҢTz$Gp~P>YE:FHXmF~Z̕x,/{"/:DW砏sYY_8 *N ʮƪ)"#~Ta3fkoZ[3}蛒쵎K#'IShqV&W8Eh mb?w9J̏^aw5 ^/䛥&̇6)=-3w؄ig@ U|[GJд^O v(DFB/zt,&u~vTm{5T 襬H} tWݔM̄VԀG>{PUw8@߯h] 8 OFѮx um"eagY*}[.BeLN7PV'O:(7BT k'І4F$.Tn[Xcc*c.JAmxRYQ8bMi#5 ,{7_7q]9 T|ݾSɬմ 93@رD}/ҰA` mMn?- Zi?ЍD6:ɫo~-*E0ݡI$,Y8]w 7B۞E`^PTLgmL<#IςH"_*Oaef ZK]fEoqCj\)9t%D(ksDr4mHzNz0A"œK4 ⣱lLāZĀ[gX%'(`=1w?(shL~ DWOi$qö1oR_ Ә(HOl4.5{3 z𶙷v۽0\X`[2ν i n#-!4[Ds{N:aW]rY>G19/a9f>>6#SU~3s]l;A4R[f)KTbdR(F*y)K)%vyV(@! Po\yNG!Yfu6vK BLϡ&USF0@x?L\ L29N{(D<l+S -My<`RɎs{ A}נج PX*$|9t#6g@nsNK踏D녑{./W.HVWx`ȊJ-|FNa ZƱ-, n Rv0s3 ؾ XL вq'=6B6aC;?#MI"4Ǣ~V?wbM8,_j.n,6\/`84BIk/Dr]HP%%g}KCH@qdkP?\ynf.sˏMMK&+:bvZu@ l[s0˗lg !ZRtIJ8: 'f0 >L׮!c0rJطI G{fV7=˙HjRM$ Y3a^)%3ItTUb{Mڎ%9+3:4N$|H EH.ؗ-V Ǒʯ Pn&3 {̯;snCHv#l"(<(uy*-G;@ !""ka1zd}EDHWNRFUJRsH㲚^1D|rĨ4KߞBFd~!YedanZ0dj׳8>h2a4$y,YF0"9yϋ_n_0dB{^de bOǏ^ʩڟqD;@+G j"w38I(*۔aiHq<Z5,eóAƒvQriġ %x9 NTNE>71KY `׳>Ht.6,~Nunļ?N'\ ֚.Ya∏ |i*|44T]Y9@ϲMʽmBP_a+l*WشjV30uatG$t"8lg>Umָ|HV`}R 9xٛmU&EC%HO͚^E{s̘P%^5AgS~P`ChnR`\GlaFn:A@% _A*[n|n%<./ _Xlqm.&-9(n:<"j On@SnSȞVw*^Y42K-Zk5Ѷ'M^OJAmF,KbМT7#D95Q}zϥ@n &$ֈeުz}9%(6[>fAc0jQXKQgdQ" @  AP9A $/&ȖWvv оFʾֹ?ijez#)  ;BumDC:x>s?;5t&^-aJW&d3s:p=[EνPۺ6dW,HW8jn Wm}DDe-QfLbҡ=4c2 Rn9VTiRpI %3f/gQqpj;O|V;­y/{mniUs xmW} a2]][r]m`@1i0zd;FFw(gڰj3#IFZR8Sp g?"%)c^"ejNreԣD+B-p m-E/pul3Tʢu:;AK9fHV)f2nc)%޺?I h|m̧ ]F,)[&AN$ JM|2_o&V#d|=ʰ{,_Wzt]۷KID [SDZ ]Buꍍ}в>^tp|^,>c\P x^%=O5o{N-!y}Qk[9\S13tf'89TJ-LBeHc,',b|fA0oTʵeciŒW+yU޻h)p%ZX@(!^p%"i6zhUS,!֍.M[\D$j ]Iu&O`ܢ -JBmuBD,Ki}Zx-:1HF'f f 'Fhc75Oa>w}+\Jg:())P<xg?uR BӰBMSW6\r3Z a`ŗ.=0]ϩ 8Wv̀3$=//N\C' cȹ"?'%Uix&x/t:.zhF::G2۳i $5l|ݷY<1#y=RĊL0A*tn\"[ҤXuڑ*vNL&z%?_.fX|]0_F/I̐%MtE_ v,/d}# " G=5CF-Lߴ<0o j9ncW #$ZRx8&)tY9caal:,'V{?(Q;s f]U+RV\ؑZtyͥ)5gyL~[BZr^xQ,lthkUO4p1bS>T+K(\ݲ%yuLe.@(qN Jӑ0@ׇ +zq@>\Mb*Q8Ó!⮣0:o#Z<=͟|wWeקWUqiMӥ?T+hBB0Np-@!q2!icǏ|iz'7݁;zc #fM0/`Y$C^ͻG..VB2GsrI²$$-[,$<D2\d7a c:&ȧQfX?:6hIx-$* NTԫ_P"E'Z Z ⹕Ֆٛ闠p}۹GGQ_q%G!hDtqJP/.30)E!޺hn MwEYo.7^.ujJyxS(Keec客4.0M$ioPJ2]j#hv&38ՂlQV7lB32a4CDw IF $s>>ݖMDŽ*8B4*;:-0@kgo6mP>̺WjUO7d4OwՆm!2ʨTc}"bvH4s(+/ScE^2lTͭg\#k?#VۮK`M:X#:=kɁ(36)R/gK(|n1`j35nu ׃X^;R> |`ڪg(egSD?dyMB1$^iCg35XxPW`9I Z7ROtH74ײsA"V㛧P`:_PK@0K7yr eE; { ]69睌=s@;J 0-;WANvXc$@3]x=ZX7Y qlUQVʵQs18DǛQZ!Wjt/Pyn Ch~Ҩ!J+&#ƥ7|]բ\ꬁg44a+ޤer>N:iL6#@ 6WVq~#2DXxZ ZATa8GZwMKgnRS]($b\qB2l%f8VU{T4j3|b)%P--r*+UVYJQx[Bo=QbjBSKDͲ>pg=hLwpPADEm$MFˮT\#,Nh?PbM3^]3l8~XSM>(_i.nN-ݪXٗF@?,t &+} Z'k,`O((kyP˖ Oniɣ7LTWt>55W)*Ѝ'`>n]ˏ&/{0ĭHDgid35`p㿤qn:SQ:EdzbxYZ \ \[@vc<~*,kbn^K4-ƺ/$${k)Th%ouGGEeB+Fbhd="[X뷘Ŗ&EZ}Dy>OӎsCjMvo)I;ZE眂¾ /74(@i|ZL6O gPEN`paR( =E I#VA~ب ä" Z/i7 j:MG @4yzqC_"QQrQ (V걇 ؎5(AC}"~B>9uFn눆"#wXl9 %H?}Jkɻx̦^ُj`M pUi綮1q4܈4\c藛42\1`Rna҈P"?@ [FN qhkۦA'>!'URݿ[E}][v.N狁 3Ars+$.CU4tC Õ67Ci[qVet cp}-ÅwuЁT S2ˉP|˄2kua$ScT60;Bw?.FV"~'qqƄcGUz.2il+ԠNHV3G*bz= )e*}8E!餴]y{"Cddn .&e[dd|.rS.%|:OƠOH)7c =PdiUa?C㇩`9$A.;;6mD\IL u.Y,C)=iR|wlPQ^1:#gW6 /G. LU v8GmftVWLky쮣TAL9uڼ[/݈o8 ~$ŝTy9څ_qH~.Z!7mԸG~ [m 2O ɔ+(R0ʡ90cӟc9CϮe bпcnW9ضr9neZ׭;CPrIkb-pi7l{= z DԷkN 1 =iAqOMAGSTBFuiҢ;rBfd n)"Eqe7&|>wl % V}-E2Ն*&.o^(n~xbB­?`IJ6|zr S䝴 <~f-vcD o2VF*K_P9uEf훮Z>@&| U}cJr:#wYc y+Ŏ4̳U' h'9lndo$\;i4Ee5^8̎pPlɽ8]>$g_W8 * qg:;.ICdoۗsD0rlFY/8TG.- u<g/;3Dl^l>7CF?ԆZ1|CeXNcΊh~ouzj.c>ݧ:S2/]Do u[#8=FE F7jc.X KnWǚū@ƾ4eQ̠Ar|D|#Ns%Fޗ5t^Ty=AIag" Vj/)Fy߉3Tj ]#q}yk]%ȉahͮ I] ov0Lh"Rݢ$zx腠WnDb^W2^"`l1Am2`!~=dPxzM@ުy,sKG)x{8lij\0^0B; ϺpkCXWd8a+ stX9| 690'E0" TQL) Qu;K[\pB3=Lʆ!)NG2ۏjd >q%)ԍElOH/ 5Uz\uɮ %\}Mcx||]4iRWMos u~: 氆ޗk4Ÿ\NW,%-<7{pBsbY̢51RB,N%4gXJL40s׼YB'|DTJokF&#uGF y2Wx;Rw\Jm4JJThLc!nD)LDR=o6 tో5ً^ `*^K&X; u*nhVr]GQ k}rw ԓm:<#?+7ۂF`P^/l)?}I5BK_GMv}5su*/*;Nj iš#DIıW&GTQxg>RCXL6iͩ8i&&,wGB)ޝ8MkGw}F;5=c!zlaU^,J$ fb{ #x OusxH܁0^/&W@['c}*xqc1>K#xXk" ?>*xy,ߑ=ҿ0YiHH+7t,5O YL6 I;JBA3 ʙIo 6i'oLD;6M-Yqe/L ҋM@R.;{ lF oi<6(Dja K5wzs`%E Z4BgY )9~`Cj$hRc+W\lȉtô,tFSR,ﶝ,0yA  xX _%*jKWCV8S]M­@P5UɱiTH/'c:KN$Ei}r C_ۺD,KLd? X'%y7إFN#ѿCN^';7})6 G_,ɞQ?2#Cxw&:|!O.ic&77b Ѷ+Ob.ۑua gPӺSDf|ĵ:C!Ѱfީ(ttQaDEc[5[Yӧc~^o[(jW.w3I6hd @'"|KB2P#zI(6'Dk>v.re#2vXvIEIk3#3 do/}3tY󠁾$_eހ 8!"&]}6vXMnPwz(>)_8ݔl Sv"/yrq3 \K7ZS9pz}u@ڒf&<6'QL2YX%L!X4Nu6-WiCsed7o 71SAԿź{Ѭ̝l[,J;EaS1Ed%v֪JX rKguE9"\n: J&EV|" 9Ԯ*J/CJj;HfMyݾ*z\Wi2#H2ӆ89,u+@ѻ>pQaNLsy2В2ujaɥΩ愌q.|4k₺|yQlRmzR[B}m  )xh,SZ!!&,ZSTǽ;.Ng\L@D!UKy v\S,운P3!lt[$PIN)`K?+S4עI6!*|=r3g{%=[(1rw"q̉gfF~~rرzǤ HYA;~ZHq *M/OX۶D3蟽DܣB02f!X*aocʪ&ѵqϳ&oغ[nzf=/bp磖L֩*D!6bGhpxúa8*8,7Ͽ '}/*#T)ܵV疈;hFH N]ΰ,}\3°c_\1mkeBPɧma;-Scjo.W1 N\fI N,K MwO+` yet*|)i?9iqù̋>-5[+QF]vsOtN2]-ύqȏ }nf,˶M"Y$2QhQˊ 5aU!pfYN+A$Ń̈́%+N y M-YႾ U%H:)q2/}h&V`py 5Z_ 0v{u''EdX\1a=y̞7"!o/yW\|GũD{Lǥm"n14O%oO=MY)#V_jp[RqɃsB0cv1)%'4p+.ľ.O#-6ix/Ґv_30cODouՐ `Kc +WU\32y")cC?Pqgp?*R=T=$H9"r_@fLPsd±{k~juTNe6F: lUMڕZ܈L'O7 Y`70wȈ~9 2=1J<c/y|D`Rgv҅6a#V~PɷE& BYNI(nt Q5G>f{1^̘D; ۻ{jVDŽoݦ5Q DyrB!,v{qv 6~گ^4/＀kPc B&LzHd)ɚ>j梅ˢzN4(<5JW+TA{ɰf6{[`ANi':9.l73I~!HC~_p/OYIYZb}+)077E(^lD\P:q4t*- >עHihg}K]1f_R荞T b6)P/Qeq_+6@Pb.`u)b^9ru)`-| jjxg?I[XsA%R"H$`>qDK? !kno Z=9m&lz݁k x=%P{ۢfCT_lY"L;ܢ>9īx3؆OlB 2%SjZ4<s| a"1})/z);lR Ө%Bp|W;]]lEDI_5AIEGkw IQjdd2b^dG"N\[1 G `q 8g5h<,Y>@axcSUh Qs@'2SyHf۹Xy V(M3R0y0ßV :c׷X9u78zؑlAL!6GIy%yz]NVxg`BD| \ ſ{Q^4.sk[g;xϵ'ed^ N1 G)P=̬T@OG"ۮ~Znld>@TQo 2dS(XO'BO[7C1M*v߆j2(و <6+$a{kCu$+K7ig=$hrnI٢bĿV\{Du=NLWf2P<>lYxX \M ^]yS#$AN꨷mzc>,1eWQ W@Lr,2MדFGrotDSM]I@EJ&_婉xvhE;ª~O%GSA}IBQ|ӅU Ifa@*2o ӦuM݇GFRk_?(k>CHkf 6l ;CD zT%: Ɵh xq%kʋefKX"< RSTb@y|x"1;l'p gV"|Q5g]˅3L2-QqKi^Wa1zut.# u@Nfe. ƂL̗Zn7%B$));ROU(ʹx6o$׋+ QSwzl5w4sa6ʋ"9&7 ;/4>8VKrT&}dF`<,0s`o^7-H C m²pI&< $z&q^mђhxGϪ$^dÆY=IUPTaְ2rF8A?q|jb&Y|%…x' J )Zї-D)S=:6}R#!Pw 6/"?mM9gW@^+r,EMξ(gs_{P#+uq >ҳ(7GX h^t/:2utKq~,ӪB$mFWʜΘpH_'$%!%(g՘$Km'R,]Z Mi1KX Mx͊>7@WMoO*5pҠU9yMrĭkǻYMr+5M9a#H(S7eGc'V 7=%k2Y8,7B^]υ_* YXtٍjKpl`W q RWJ #(99X=R'rsEucbb xd58#[& 1bӋX[qlUUyoIm[=T~MӋKSпLҕ"$1I@12\;]m6.rU*wsP?6Ř6G4N| #[V,5tɲӼ'SRYI"GJ>A6^pY 9QrΗ);ۻ"ࣺ4[<3w",ati.\p1#&bl+4JG̼}H}b5Jv~18ߢO;茊֡vRY=lj?GڞVIz?QL,7O3$@K=;lQ>$,y^inHmyי,g%NW>W/swH\S/G>ٽFYSH89:[ǡ~/lhҺE_zзTBxpLk5 ?H't> ^7JzeI"ekWjnGq땰Y37#YFbwpht8\SRݡ{ 3(=4LQd_qsJS=)=V.<&Xb ׬}t6Q+tVuTAG^qtNe'uYC_Ԕ;wEVm4W͗_؉+:a;qm1HFG*zqr u[&,F@tJ;eV~iZhb=QnMFN/LeG宁G;c˳~mwRp|Z;kGWMiSӯX r<8.])T ,F* puq,!UPZI?ǽ}$?"M\ͅ<(%DeR+6@1 Af+>ɀ錚էS,s.K$[?0-:ʾ='&Blsl7{i(fXzQ+h<^ [u\b]y9L2> elS=d!S5EIumY)s]Dwt&; !D*zD.`Tqu+Rl*3BM(&!԰5I솆[gZ˷rB<3K! #-}#cSTU[rǷL`@HZΞHС0&gA"X;et8Yz9Y.CۏQVJד#w1ݱm-iu TdmQ2D,/q>؉2#RO z0E9GqZ aэ%Fm]#iU}"p!JhD'A\Vx|^ 0o~sb#c8]*㌣2Q04,'aZZz-Nd"ސۏ#BhMцfGadމ.puZBec3\?ʣ:!;*-{IGd^WLz%xRYyN^+'?Bؐ)g<5:*ZQº1!3c|!0ԟVӞ"\$e1G ^QܜibC,džЂ8}oel5Y?EpGr5&lj߻x`cKx^x4P礩BZGtulJg3k@V.sk9{*20;q'8"+pgXxcE"Yd|iܶ|=iאSAuj,%>#*f.I!UIGz=GZy+χkɪIDHe} Z>q ?sC!i(#&)˔ٞl):CYylQ !>Jw{$)=x,M.1^fxq*8~D4eP-ށƴi]2,|v`AQ{9jQ~H?=L֭P~n 9PSnIt"'L jLWjm Ƴoye Nh#ZpMeM#t"WW}|2O5L7D{A`cYaZz~= Q"B/Gº}!pOAD#17G#IJCz s '<Y~ξ`;ft,EֱW Y ~ԧp)g0+41 jHyLrκ UI#JwSa%w@6r\l3 p 3( Gq ǪSv.5;V'ŞS͚7uk3fT|C!Yzhc//!=Y`;ey$ƌAƱ 1'4̺Y5޾d KS=۲ec&*.LaB9ajs]͉ԤH5ݹscazodQ/ڏ'B\emcg_R<#TE #i,[ j zM'Ap>/jsM9":BE r1Z Um0խkR!bBJέ s} \8=} @,VI[DوI_qGREС181fGS~Va^TOaT([1ˤOE!Lg"/4f)-I&_g}9g$* YyMk5m4WnaꕪUO3ux#L^4 OQ\[=@/ӣ[:`!TrgAtѳϡD.HPCpsy瑬6QisSnqk6؅1F!N¥<^^-N|M?_Uqn!8| NݭgNZ/uL_PMwTll*b fe9h4I[9ԇ8@ nBR6 F1I.g#tGEވ)"Vc·Xn ,q*"2Pv(b7=y)y1&z茲vHH%|e4uD}J6`t  x'> 6>f3l_/0Kp+XJ7Sc̻2V_o%A}`ݬkzÙJ`6 &@P6}Um;@_[j6Q^f&j acݒ'6@IJ x H=}&`W J>]'f7E. txy#Ue{v+ =_3Η)_ƴ+ S&?FA|>#e2+W -'Cٮh Zq'B ';7:WyHMm;(#/@kj0 5>D] ztW}0g{h㟼9U|UUV h|Ž͚ wc|ok+q\̉ -+{HOX%npg A9ZܙdC}r-#Z;s̨G ©;2]?RoP>LyoWZX׮?p% WJbeܻf=mۺ,d8ܢ<}!b'g󳆐</LUȴ\&gpCMeѰ!:"#ŲOh,Rc8d +$X .Vfuy0<ġ;-ah$' upx>1`H%>[>Y=O=b"qFX BC2i|Xu=pʰ|&U-:4xY, ~t*`\B$#֠F>p*=Dk- 9h8eVwXMVzJWsl4Q opY9] jЉp,Fz9ut7 /Y[2+36%ܿMŔFTp/f}3+e5n=x :?=칱xv5+K`+|CfOJ1sQ8G6 V JelPDޭ1{ծٚ/%Eah]X0Փy~c>dnǢNG8UzIx]QˣCNol 0TU'oɻLz@K4T5FҢ bV-/co"WqU :1áx-_.5|Ia̵"tQ4?OtW}Fd^'2!NmK\ ͪ*v\?\=:.퐆d Jvk, }8u lc~Z~5,cDwt˦]QrJ5Εpˏ  @:y)kĜn:P-;٩ VV ݏwz){~t muh-J`GmM-ZmIx @|z.d,뛱 ɒ1T6%^"m?0Oe>>&#'&ˠ/B4GZj<*}m@/i%W8_S83rS=OIf 7}Yho\)q6,z\2 3TuL2۳4@raAPnl˲GA MxBag+o5.+9v97@h'"9Ɵ !MYg0}_, @l ۍ}Ad߇d9U,tol)"dl qg~=9-Sn9~,~= aoS;cWcev2hO@sHZi2CRxw uMW6C! H-%Z &7Z3'WIsP`TS! =  tq)Ҏƴz; >vaRTĮBU@f/GPd$0xau"w0dZe^c[f-FTd#o9p.FN!6LА3!sx_pR)hoP 4$EU!g uB]4U]K奞/-{)%Zi!n~!2k*}68 I".q5sc.﫺6+Ӆ% S6y%6^^ 4(V0ʕE taҊ;Ҟm8m!-Wd;GG0`bTIuڛ1ڧaAWl&pn:pFmGl3NIwRh6" ?xtnTV^T(ǩ4k[Fяc)=̼N1 H[}$eW@`$doXjQSoJG[yjCer=EJK[D /UַtaNj1;w&S?/ @R~6Tek ;QU:l񮿏KNR` 5K)lZ]^E3}\e/]ULCQܪpvIS"}4s9{(|b?T_FfgFի8Xi\)h4 ]3 L3&%̈́c@K^0.vWq> aÆ|PeP,"ɦC85d7blv046逍\nȜ-B;)M/oalWb#|]"-.ƒ[R·9]&雤Ԋ,YٺJu2PEDvebKOmY"A% 争Xd[p/yL&yl-aN" ۤ-̵P\]~B@S1'~brYDyw'24R3z]SE։l_u³s{u\f rÀf} !9U1 'zWjOyh6 94jb~df>Cc ꣢jع=^`&3uWp)2;:^;nHoe\͗4 ?U9&ޭ#~*`HXy mzU +?>j[bR"W+R@r9P7bjwf[9g?琞{$y`N~^`!c6®\Yt#shm]m"AnQNBƚZANe~,nu|sR#>r2l>IjnxA xW*eŏOFi|i|u8XtVK'բá^6&B5kyZuYDb~'K8IW[@F|D4lTymq #VkN +W `ik+xtåa+Q\A|xH`AbU_B%JMpQ8@mU \ZOϻ>y(Σ[;/9OqM|v>&H}{lKip Gz+ H\}0Ѡ s%38@zD1HZ{޸Rxt7U`q`?Zy#<N<18f%]}ydc!Ic U=Br40 y+wJMNw֯07ŸwGy^/~+Sf/2v Žf5DO<=$V{86Ԉ4 }ER-T+]ᒁkf\X"j+ê@u(,Nq,;^x8ބk6r@krxT6PPP}vvVzFA%0Wh:cE QbϛA9_Y}z:QilƘbYBE" VePp3Rع \F %1M}MdȯTM_5 bDS>(ySɜoFPJEy=yz*e%zU 2C]^2&~LS(¥r;'!wqĶL=`3l7P! zv^у~(E j]A.mnU0p8zOEfޗ#N/γh਱$ >|KxJ^LҚY{˕{7i w Y3G!G.vA2X&?M:gKY70y 9tjopPag=|cjQ=E\瑁Z ŞLmU\ J.CW+; ?4 Z/j:k-T';^YI0=j&8baPbPFkA?אC2Lw*BJ `ي+Ro Jj@+kb^KD$EL 7S61U'yH|<&|5<C0(Y]np_q댧?ޓ{` n1&69K"AؒH|?: q~5AĀZ 1 /wlhCI"d^P6jѭ !Aljs+i 7vs]ysIc5J?8" G Zvjx$4,Nv?< +`[wŋ2ff]&TK1?q3ͅyLBX=ZeT~Į\"rGn?̮}}$CM,CVj_6PWZtU2l,~En{[.`84j b>ZZAc"+MHՒ /Ar -&Rޮ}XqHŦc"aH, 뭙7 r!a?gD?uF'03~Izg w='iv>j7-zxM@3 yS;frxQwEt̨rrOמDFYoL$n9c%~3JғG[AƲ})0? ·* ~ Ȳ>l߬Ubuӄt~'Ibsӆ-ؓǓUSt%Q[Hsِ2*b:fjK>`0PKb|cUD,2L `ν֣2Nmuayx'G!ו,^:Y=s%[Hә/TIJ׶bX]]YYԯ_ܒZ^5xUn'|&XāW*Vr}R[,F3Z'G%P'Po sGŤW 7Me*[ C!"C Y)sce8~L6}z:?u9/kĀWAԌX런d2XZ0S!9{+)iw_tF/: Rˢ;'EB۷OGhąC^Nj>0DN=m>))~CC=RL.DSy:1jW{a>Tʇicr9*58U&}Xcj#@W jRČC,Ұ[ʯG؍ېA*& nTp=WIIC’?bwqБc& R+"TI*6ش̶,e7ĭO~C~'OatC;>L@ ^%v}|J? KQFo ⇒`Oϖ ùxUYs\塬sxK[S󭦡Vt6aP uxbU"LA,=]0`jTfl(8!|Yy]7ԡD3dIϥq.;R^YgyL !]/pע~kPz6ʒK*WxX@F,+ GiG8аGvXإw3S ƃ4/9M`ɑ%]J8[Gǣ%5ф{GS$ Lfqe_ա4d{9n[wFDlBLN~ўwxTCb*\/bl )$Wx#\ҬfX9/ [=lm<;vbc^؈df6rs`âT#%D Ci/Lڴyk$}šr[ʻ{aA~stn(`3By ^*= A7ȓϛU8A{K+ 590,s:bC̗orM2=lCpp97$i-]塛pYebuZSHvCRV7iyZbsҸkO<:}♟Jz1fR-oe%8>a.\\ Gr@Hc2|'ѧ2Q! 0cDyЃZVI`ep [&YGQxnF쌟"8jᐛKCG@UU9K+[c/Wm +h\3K Wֲu]j>Lt @C cގzY}/eCh+`ߎ0;(o00wN/}\Nޏ ,+=/*1vc!bNcmUgRq50`z+ L}ǶB=1d&W s2q# O>ZW\Pj_B0t|)vԭKW.0Z|H~I.ž%EH\{<ChGC 6~pFy %vl]CRT z_wdpB<~xeU >8j %dOCvԮ1x-嫧" xqBe%},ս[Ʉ BVoydN+-~Y7>rņK-*²m(@<=Xi We쩳Ѥ?rh @CAI/t\j$Y*6WJ? %*ݽd毤ڈ"䃂 5& ,eVԣ;~KX/>,qaGIu"лa1bR·uɶA">=eNY9N~uObN fA2< Ax_˶A>] .c牏~P4Ki\FmtTj2Oڏ.9gPX⁵||>W?I(rx9/_<=|1yQ\h%QM2,kUӐ~^E5ꑁ$],ϐ( h'fc2큽|َګɺ?Xp-I[Zx's) %ߠ7,ؓh#(Gmk=fjf󿸱(.^ EPϴit ߘS$DZFfrK-aͤɸH« -0ZX A!͉ԜWhמEB+nݦEH6T2i63U< mr=&B@ l+1Y@>K|<6jQ@A*1 }"wY;Iç̈}S_)ys/窊|o$i;A@o" )DxK>j {*^|nJKd_OAiDhT*U`i}RS&0BnPYYJTў-wZѽ-: Ps.= /.?Rk7ymLTCW &#3ƛO0ÿ.75v,/KqI!NYPfuVFJ趓N %K?5]$e/EӫUi2#N0؏lq}^5vgyE)XGM{0WMwӣOb_y*a!fc$: rg6PPuѿδ\> jj$?e'^:geMD4[S*-uZ<?_x6kkbsiI4GW1lU<J9pB5RAP؇/ӳ؅`3d=[[x'g▌>Y>ʚpD2,㌏;QPxWKhtmKv8AV/!3J ?Ę084^(t%ڜdӧ' ]\cUWMT݀|k*E퇀ZoB55|e 0.x"4)ǼeNQa0I<{8c.O@ŗ1V{?B?UeO;e1LpKbZ R~"ߘX$Q5~e3iMPˆ8'["9ezv xA}ct]ɫLT\ H7jdkB0Q_5L욿M!ģty6XRD"Ÿ.2He`$‡e' y_2UxLUJ{|+ Ff| s"Dz.pCYbQ  %Y4w23ف_Iidvw]i;Kܨ2?װʥMY,&yZUlaNfa#"Q[`R;IcoY]/cs&W]k`ϿJqyBIY{[wȴzʈD\zWOO]!L ;~w'q؈TkI~R"ìj9H5IV .mX=@f(;mK=F hyC^ptyRfci䝚eǓdYPb|BM#/zu6̭%钂^VnwڅЛk,8*diJ2GR 6G{ajRc甒 M~WTC,JbgdWS0=b N,1@ ~eeH'o.7P>NIkC i*xT D3Kh.u',&\U0iI+AvFʐseTdD#E(ݒ@c])v؜,J&cbzH]1E<]C|/3`PmBhd[Zlaudj':@ں2yH!EYtHv'3R!˾H_WVnC~?tT\'UqP{wUa ?=-f?_<3`>A;dVz:@(&Gg'I=GE{D*RS~{(e;܌7K<3Xe SlI-&Yv7(ܕD7R[5DƝErtx"ͲdP{WfYtKvGBr;3ҧoL$620M#Ry4C.?$b@FQ! gΌ_ 9Gt,Ӆ:isVcJުd>b‚~@`ņ<Ѵ1'׆";=RTkcP"_-ou1`<]&kwb&åu԰Gl{bΓdJiَG|<:SӊL:z4q޺=D;(Q?.` -ىpET4>!Jkˢ}(sx mlZ+:LpCzѬCRXbdI7{^'uA3c;%jo? D\7+ёTjyo$h G}qc=D # e\k5]ɯF$TH8sn;->Wİɺ]66Wc=+l^44 <=j ua=Ils]q#)'JLz*~ĚOȼR$,L^x(:JZb mDͱASnn&,kr: Vo`pSBROiy.]($p,i*kh"(`535gjwk&y#4$Oc2̆sa\m^Ef9ɱ)tjUwlOkh ^ҩ L^=`d|4߸$uٝ 2u?RۨQ^]‘|6Qⷮ ?֚W, g|L6hC&>Th熩x8(apJB'l>§spy<R奲 p$Dl\LQЈNB&nvl2*U1I|3/`1\TqSfA ]cxOJo1p^j8PCG(xqT~܈r([<ۡC4VR@>5FRz(8*,go3){s5 ;h?8{O(³{\Rbt 6Se%.o`{q>y9E)g(ת^fo͎4ƧW@O9<<_z@;>zY}RMPM~j䦊B~sRßѦY;jHWzf Dy뻁Zza U/ݿK16/?)$A\舫^by>vYL}׋ɗu/0^`nwSa#K5)IxE̿4W(E#Sm6.jf{u|(k PP yq>1<kl 7!]\Z:ȁׅH.#ӿnN}67LoKKx*L; 4XLCfp.ӌ&R_(i}fIH h "EY#0G&{K!mo'2-`kMfy),PE&G&`Ja8/^.'`+~KOj,#gDs]#ZRc!\ӈz<%&\sLdvkbCM]Ww^Z?vgVy?e-(YT[;9:I8u`;c$$'瘤7!qL-C2w'R-RE?CoAa ~P4$_}7=ӄzF>cX$S褡8W>yIx0z*bzpfߧ7 HCM$ gZ_ D\?:> gUzy9ܦl-+`X?Y,3ցFxMQ:؜~MJa s L.4ɈD'[&psż WM.Rl?1 ]^Ii`oc|Ĺn ƺ]kYgOk[RgRq]! @{PfoRFO-P+wJvK@rZӎl5]M ro1C.nafMH8ܫ&DaZ Xeg3`[gI p?sjwۺ8:CƔ7$/HX ~FA/׫cZn8J-^ߕ9݈LӒWD/F#c1^|2'}J{>[*˸H FתĠ/=JYazq->|U,etGzI| {-ݼ"ua"JĶovT8Ҙ?O'z c-Y6TIc.%>N;I4A!wZBU$v7]Yʬg/2 1e4aQ]WaS ",̋$F埏~vkqQωyrXUq6@Fa}5?u PbJMd%W}5EOa|)!%"A_m'SXhjeZPx x2m(j~)? '4š".B ݓ+Rʒa,%H-`9wتMiCN^J!XZ_ qةd4'áο[%P )1rq\pBq6>,-QC{[.NxZq''k%z&5jΦ鵊LSjF.b |Ð|'-VZzrb*N'l75!iHqcr,D46|̔GܚmvByH&RlQ/WɷEx}'E#husG^wYuH!]cEG7]AS9߹@9v|,u˯ӄZ~n%Bw)y Q 0/{ g)\*Eni< >pe&%Y^ͬW4z<|O"1Ǭ$i[f{/``t `T(7sW lpߙA?ne3d9zH<&L8Ϗ't(`޾ 4* h0Xy , (jXUÕޣ]Y\*z뮿D5 vGV4iY)g M.$DU?M4񆣥%~mFzkzBo0UQ|vȊ ʐ`c(=ρ(BΏ1w)'꦳  rԈ.Q6z!$k[MwWIw&-0kOClq$y2~!L01bGK#yOLj'GՄe;L?sXn;;0]`%^UmCR4Hf^DhuuiF Q8PQ(R [`9yקb2Ȅf}q T۝7N<Ii80cl߲ 78SI#7ig7kj)~&!܃]L2LK~DWGQފ63-z7>D(y0;hv>I@ 3ACo*Z0QMeބj;Ȍ>#ų$2ZkwaV/mssrKJ!~cO6"4j>oVA*M RwnII3W.J)Q~9Li=[?nYFCaS0X{ux $E<1wobQNC=&ح,3 6D.ǻWꥋoַ\^QO&b$ ͟}/%szir~L^FFyr)\?7"6AƲAx ?,C,vx9c-a/Hs2D6Y'&8Q1(ЀVBj,.20ZvREá+'~~"k G!o:ydC{yկSI1\ҥpnħٺOT*-Gg$gs ](*k\ scXҖp\@N۾(ʽo+53ߺ@mABU?: ˂Fk n7zeW%LK-e/|eXvx!\iN}|~ :^XC{QŚb/9__nKxW3 StVWHu ]|é5}P .,Pvz~l+(MA$nPWOի"[`+Ş-\[9S|Bb)!Qq*n 2ă(sS/-R$jP2!&!hŐ8K`>rCa=y[)a/ml$ Ń6E(Zl -OD FT`evRX>ǡ޹ئypڊTՂ.jB뫶R^=-0&ħu>c/tElsmu!5ϧ"'2znӁsۍ[w[¯v#4n@dz#Y] 0?yJNm_~{łw:Ḩ=Tj-}GͣIoP*L6٨m -T48;+\nl=љ Zi0ϑ"F68B6G&[Q;!*&Ɓ>?iȷPX-+A|҅u1`=Szt4H`(@dDxdrtg"gVw:tA/:\Zjyj^L+Rz$y2o{tz21*j3DSAl,c,SR{o;$= Wv9:*FUB҈Ͽd:FۡCIα3?!۵X͉xeoihx JEk}׸ SA7[!tٕ5ʚ%lOeDč&{ FF _CnwcNwET39uPyy=5Jש8 Qa(,7ǣVb;/t%&f"~=ZyVsrYHGm%S fwHa6mmXmZ9iBh?7 yh/kj.(s^Tf}LLF"/޵ò14Sv]8y ' +tI놨&+I[+MnGzT^<3dd^Aow~@dCF7[bvC ebrח\%n g0 ;3)7Mȣ(=NUcIF5J^@D<7sّMn?Mgbd&_&LL1yr%kcYGGv0b,zVr5Ja=mϚ;Fy ȥz$<)QE&N`[\6cO v{nʣEd9R0Xq\`ϓ]j[G:v^ʞ(MPDsRRl_ʲǭ.P6F q=Scs1FfۻKnx\ech3 Yx?X3NRg>g-1PZ| BW;yQmk0SE3} G-xRsQwW;+t^9єkjȽf±J*Ȓe4,@\ E=˂3AzÍBHv| 2V{8fllZSa4sV$xj |9xE6=EEc"ixŁ@_ҹkBRWڦ" _DG;kFzVowYcgR0FFg?ڪYVNn3>} ;:uj=|еD rjWfjR¤Td+0ΧnX5Il3_ke&wU]orbjNWdw[)Oܑc̉TP.Xz*Rhcഇ#9yP}ki G*T>Ym"pujCX$0M1Ǒ)с0( n@4whv::_ExC⪆ d7QyRp$d7uPWME9|< :C!7Jum*%+YAB2{gVelXvx҃T_# L&1$>͋Rme55dki[s_azRD 6kPMM{#Fc$AdjM O2s2cWxֵ Gvu'W=vo% 8Q~3(xT(]lyS_={\V.y{3:~ Fe~? bٻf"X >2b nHabR5=K-U9g]`3WNDwMHRrn֋[P٣_"N }쾗 haõ (DcsI/8?}quпc cE7XΦgtkKa#hD-r_^Z1$ į~D◢VEVw+p./-B 销O Wkx_Hڎw=s/I=2X#!/+ V)/V M rp9.0o ˁ0Z1"oru?h(VL~fNʣ~P@AY5Xr|ߏ鵡2+dCaMU#и*ӝN¢/*M#1ʂ퍪S`rELV NVJL| vKY+l@jhQXzh@\k!m=ܾFA=:Y0B-fp+2X(h5#_U Y*=&+8U}{vr#ث&^A\ᜤDX;׾KYIW]px=z{"[-pu~w/SD FBˆOb}l+tbѰ+|L{ݮ&ٞJ S46>vQsI[bS Lmx/!߀ϕeesPFڙ|| G,vWM~daMS{2w]5\yd[";񘅳"~LWыIqf Io`_IMǿn$b7HgS!wwB'>)IirMw Bv$F([rpSql V-(<j[ĽQ*YTA[h_fxjAՍv 4@^rb[9F>f1䈱?K3*M QYt k|OEU u)8ʷ*&x)@s|;^@S t'91PW5Ƈx~P@yO_$x^7WN<&X_O(iwԵR :^O_?#\.|L6Ľ!t'JKV:?=I#YYF9^aӯ=KN;;D⠧D묓^uAV wqZ eދ0)SR 94 h?E-Ƭs(6D~7h$Il@]bObn .\emc^jykܯl*zv/VklYw-ͳ|OÃ5+Umk2wSk q;g(/ly^^p-O!ߎ 8xhWPTK R97UW߄Z4uAќr/O!MK}˟`'֦둛UtgPV?MPsϓi$[َÚi@vF;Eo,6dZ=vB$x6OUŸqݡ:,5.s?bEBUqdۏ۵ YxL2H83v [l3G.`6)^AjڃAifB2HWeGQ̭Uh9P5{MW!9}JOHDq aiy ]jݣM?֮2T1'R0pE#bW~di4SI~g QDD4F[>O{b |cVC@=Fl -~v*بڰW,*DgY%{Q,XNݚk 8paNȰ;ZƿEr8[/^}R͏,+9z݊&R@a.A +҃7h-v)n?>;qʽ/n㱓s*qlc3L`JT{fFMOkC;c֩[hپw A΅*lX#Y/v^A[s& -S\J>At7HSw&`xqȚ]Gްx]UC b[Z>+GV^. [nbE|u}HM2HOlqkZ~*E/(+,먄I9(swASBd ֩:)>mxg~]XCirlw$hH#) Ņ%*0xpgOMcڠ޼Pq?5h0=Kcp<|ALmrMw#%=+DɳfJ\9x.Css{vB|PP1e(qVSyb)Az )˅ Ma)P/S}F悰Nke272yne5D~Z}bv&[`[ie8PKFhigߴ(V_󰝮Sm{px彰K1pAtiłU-OLC^1<_eR"o%ݡ9 'S`Gwe3cl%AD*[NJA>-ES{5L/hP׼k,(O\4'iJҐn1$́S!= 8a@j{zD/+'!$ B1z=/71ȝ,gG"?ζ 1i|>|69FZ`*XSKny V4ՒC!W@@kt,:⥠'%/c\V51Ur%t%K:`w4 tYts)Ƽ& .\AwǨ3]ˣHl}ʮU|Mn$ \r 3dGB30u12ZNN|CPg~X U+$<:v?deܩ(wh#cBUXg{Zw]tCU3*+:pf@6Fb>3]mZ750 q }j蓞+uX\.}g/0b'Hƫbf~&6 ON IV=+P;-()[߄JTCwnRcV~mXľb>\\3ETos f.w7S'fofm9#QV݂kTl(œ964g(QѨOu$,hǴr. '+YE8/DQnӰ G@n7Vx­r3,1!sf̯-a Hi` /gLGWF2| 'DУaB9{$UCçDFv6pD=D੕03௭hmXg3VjruY%L}򘍂9J ghs-<ϝ>ֺ"Q*=4yBnu +{ ڕ_f Z0Ti]u߁0>HYHO66a="+ӑh Zu{wث}DU^2<h-Na[么,L@m^~0O]_O{nЃ&_O"5҄j'Q ^)B98~1$ 'أMCq V.ɝ '7EoW"Ho fjvFF0ۈz܁<C}dcPLJ*uxVT-3{4X=GwN?cm@^i5$4'xPAeYk~y&YuNi^ opY^[sW/;9?ȹ*U?yݛO`88y^a {t^6=ELG*dDyhWQ . cٛ62SG4u6ĕ=atv}֔%Ek*Qο,GL.sq{gYU׾:X(xGàW }j 8OrN(%w;tcE 3&(5+$g!6I';ܱ ò+drx$)!÷4۴|.K_FI~яSmlq/z.;h\3-{)vCGSw\3*ې%5A@E^0۾ LD1OZ@EQ~TB1P`e=@B凨zOuZ?EVݝzy06ջ?^wX<]~2o 5%V*6.fuwSI*E3N/}XW7M:뜷U$Ъ_eq=P {6֗vɣL[=JD@r>W@)x5:khZ34Im2\V?;])„/{J`a;7& WLB)6M*~J7FgNy4ųt\)#=x8LҭqauYw8=!|))ymWMbE^5"Tό Dt.hiebf-/糇A(5GEo߹E$t/=+gw^LjhdSur2ˎC 4f`1&V])~ZWJ(d? ;#AQQb, ēvj';1DgU)P`VT`IX}9te 'Pz$./Tb9|2LQoך1[2߁Xf/c+ܺC8ޟSyL iIf TܟeV ]BS<EB un74p"@df"Hkr_'1?eVTcW(t(&#r}bn'Я|轩^6pg0Ӟ+ SNp!SRIxA㞆ލl<մVHI!*R]'"r^6уD?^̎f絥3 5vlH*d}vO֙Uu.n)&roΆt;2@d->C!c_g ?js ;bcb\\Q$&80`EI>R4)UKվS*ܴFq.~{2Ѕ8zTn;79:lڟՈкjLdʹ/^_ ԣȽZ#eg]`b$Br0Y+Z \totV R)Ee f݂%!HÑMlkX5gZ$[SvÍm!i|O\#ĥ͓T\݂=ðn>gXgo/w5ꔋJ{ WƂ6 ŤrI8,tXAP] |"]\GRU_Oea 0p&,[9Nq3RW%zHyT|UUZƵ,b`hbB/YܲI9^>?Rec& q0ۭ*8Iu$LdG \ Tê7hLdF#2TcyLAM1 Ha ePm!]`cG7>w߭$HN jOhکi+<@֖"34U o8'T_|]9ɾUԾtdv;kz㎜]F_ `G+J>B6M7씃4H1;WYCﶯO/XozK}fA9YjNy[NSrD60iϳޕu8€ J|ILm8/}_-49(?83⟢TFl|fe>NͣemP 7^8PL5W?< 4MilC6T5K.Y\huG둑bZKkGY=MʽJ"#Qˎ4v/Vh'D9dE -os^:~"z;[*<&Ff ,U)o  %+4 ӾӥO56-vA'3M$_|u߭LJXG<%C|^MMUa'hrc!C4]Z|oW&:6G@˥q+ĉ/?uU0~`$֞X" T>}̌Jgc>|qO"o~ Q¥O+pb+}y dOwmK^s CR5CTѝX+ML4Y?+8:ƨHѻ^텏Xhc)^)ݖmѾ`j'o;A;´̢~h@4*\Hwݍ=JMB 6t8iyW\֍ LmLyjD#&OuǺ-͏GVxߒC4#:AbQ(!qFj/[c`V R5D&{)d>Vh׊Z~kE<VmI5ަ>UAYTc񯼭ΈՅ"4f5G/0Kj`NwXn J\Nq!H$o'6j']o-[F"fZ$ѵqS=,ֺ)[uao+?i;2(+KOKVK1k ) r*;yȆ_qr9%oey+%jmT6l}Q/jn{K/QK; aYipСur'ԡ]DD?#dg86_q{9 ہ;fh0tDE9Lz%6 ѼQ(~|=vk/HkPs&ܶIՠ(99UH'%a@%^s X'WJ\N8:uBO[IF"RR mhҁ;[;NvÜo"κVQVLZoMc7ur?*:MMԟ&6SׄjKjKNG0 SAg[o47rT]?WqV3`,G)`#< FZ 8˩{4ާ2˘\,Xh NPdJ^&ZYh{ni:;;fu8ąO>9]ƨ5UBb#{S+bƉjҶ0)>skwG=Eb[)բ|vJsYt]|jsa@V)@>4s$T/o&j/DpGJ$ϖffM@ Dx:~WkF#L;6A5zJr90ĉ}8 aFzuGԿZmw4E*?z92>Fܠa0}j1V*"ͱ `YqK7N7p]۔fX:gOp.c1:?p`1+3@6K3 D ^#[ӑ$#R^S .ʎzn yлO6i ڊ@Fĩ̮Lש8S8 h1q1)T3j{TQ %V$ wŜ?Sv<+ ?,&Rxc0Ti|[jz)ݙX])UtF^6 L-T2zG~p_H *\+A]>Xh,ҫ7>(y Whҏ`u5F-:?Xe,xXSbw.x;`ۓq+01jYo0"^:U槇6s;abK% R|3~Ug$Lg}ع=Ps~ܣMo}m?oXb^K);fkN.pҘX fB%i.:4vP᥅aO}oe3\: sBDsڮt n<bʦOj:(ď% =c>v`=*Tm%2 6EpI`ǩ>3?M^z %^%a{[լ+zwMJvj`føqİ9r-xd)MJ_jwwB5 ]D 鈞D|&О>!\ j8t_1g-8^߼CM}1&\ .Kص`}+Haٲ"w%a$2/^xH%/9 6$QXyw\iZ6aVa ӴAj-N"7 H0@Sm遇{*Nu%f#2uun[tvn\k!X2}Ba_agu$D+92LtOc |Z3ʎ%E(.Ђ.Ho9Pz?ܤAknk{}h.Nxd_lj"f{eEH}{2cDpAHRQDv _ؠ6^TN{+KfXmu8:o chc{V"up`8DQй*%mTt}acb{bY_)6o ޳#-G@ˌe:1^kTnW|B:E+Fusp`+ٴЧ=#w| "5^%UQ0H}LAgUH$5P+X/_ԧ4UPFijtlSs^iPP؇&4֝NV0#꬏wJO& {4 Ɉ̗݇sI+ExnM`U:"VLSw.(vI:+Yy'u3S~r]t7lɵ=7mYWB9rC)Dl~(Zyk=[B0r \#c݉l;z{x{]BԧS.wTݑ =Rz2atP]KVj@b Qe1}DMc^s;'.ec\B;yW*G;1hM%SAA.4lDUL nҸ] (սimAxyU1ḛ-ȌfC<Fnm&\y1@=ae6Jd#j1˹9K"N ͻR 뷫iu?1c[.{kOP)gK9-R*Sl T|Iw(7E&%E5"`}\?g^M=#wY:t[ZpL1ڃ;߀Gj@|Z e$Gkz>sI vٺou> V8|4yV cg/5kQC)bGf}Q ԕdghϬ!ZFe,)S4Ź<|5U*JYR8ЋNН^'G~!ܢ;G׃0ziBd%[ CӴaTZ] e/+Ճme {Bl&wy}`zӔX1& "R5=WM0 M03G? ޸EgȰpx(Xpf]ySILD=6;{({\e~r2ɮ*gUՄ(܅(#S8[Tµ뉬 dOFeǍniQvI`*3\Aϭjj#$[.x$dzI,V2,o5O!@ JGR kj@WGv3@cS \upTr&f؆E]M߂ 4.a' kd>Ր z-z!SDp;d^ y Ɔ3 %Wx-@ D-}G[d;VFʦs.(dx~Bk+(s &Ӯ wuG4t5u@x&A;^hۿ*4 `s0wY33AG/w0f .s6(*3cV/bcձ;xaX*-@ٯctssUM0Y1xɮRl[/cX/. EvMi29Ug!pu4G~ oD ZPĈ㹛B9|3|HkG% # Dγi$KL`c[7W@6SI4.͔%4OЄO(Y2"j3 ĄL0PC|Q1󒧢 D$*rAg=CxuWUGzx+Åj y,&Z !cgBXT]5IRhaюyRG$.?T/5ћѤu&6Ɇ ,ȈAH*CA3&I]2z*Th+ŋd.rÉIR6yguVe}VBOaկĐMn㸲s0FugbUxզtiC|a9htPM-&ڃ|j?'F9*m5\8/#%t9vZ~ 4{0A:ȱ ^hc٪gn,pQbw5 #-y_b,IWE0p|!l`b=~VC[V"=&^k4u2ѧN+!~ۊ9hx= A0"Y ~zjڶ!GXr aT:Ik@~:6.oy4}pYf@mɇΡx,- &GqCbpYhY,:I[R\X8 ^8#1B㓴.ÍB/Ƈ*eP^C' {?(V/r*wW%ǟJ4@OSN +5h(!5OGn0sFP\.PM:ǰ6roʯK!|ZLjۻ=Bq9_?bUW< K:- ~jLLEhD<3g\۹,^CRMd(D Wᗁף|!Mxf3/ʻ^hfn=] ah$@)Y;68o[B׾fh^APloběq~ߧ8quL˔E T3c樲]W~F-gx^+7nOĦ \pZ4*\,XiMgI{ (c{ߋRx"=Z|^ ^rݡ\:H 5 +[N?"j)Ĵry?j@ ^GT k%&@ #=n,wvvG-W xrnQ+[x2u(@m@"D+<ίEQ|"(dIy${6E1㥇]a m 3ޘI( l1Pݟ'Q`G9wʏҮҀq|7fe%.t;dFNyrgg  1 ڈ/Z61S45FhӫKnZSl$%&'g& J !ʗIhUQTƱb),iZK Bvn$۹Wpt-/7ιPܝ joTFƕ~y?_0 T' `8CAQ:gHZ2 *}#]ښvάv_HB.WR &B)]43}8|ђX o /:l B}z #YS52&9u1?w;Lۻ/z"/9N6!N9I3wk|Aޛ H5ue˞;'B0ƒ`e M߀7&B!Ƌw!gŲk]Kxa8 nЫL,IIv\Gq1YVoHX4OnXja*KSNuI2)5o>6D G[9@3F#b_πCΪmN[x"iJ|NzU"2$ӟpSo-l +P+5тg9l> (D ['R}͆OR|Kzp3mOql9r"SX8x>U_Xk-ix$xryl{X{iMIsA2בXKmŲt` B^;\)7D񔂘pV]K`]r{ q2WA *H9{kZ?e;Eh.\3SȤt (AB`g0^OBڥ;nA_mD<οARB" ,b~v@sD%m > 2 4ޡLr}Ѕ~pMq1J$xIAWe_ǟGiTVޏ:-O'tH0 1|K5 ק%[v[Pxhai;,O?2SgȀukXhja giyMY;fpޭ3Wx:T=Amv[TcAZ9ǭ 턊'"z؈s'H Xat#Q4YnIUaHIӎE17Y11?h;E {!S;ITdh*jd fgDGOHB3eG]ݶvXX mJ^⺰}ZxqtxM};3aۀ哉vCz6ٳoƳrG\O\;?ȇUA ^-o5a Ef!|( cM@ Q!Ϳ=PTb'#o.}\:`aleЇ>,~{ \Ⱥ!ӘmC/JN˖"sYÃ7A>;] ׉S|%vzN?(%/CXp 8VGg72 hU'nS /Tb]Nd240 ;u8_(/(`H07L#F#ٴ98@W@o2\Y7=©"9_ jMZdEXsRq!{ژ/ n2dhpv| 3Ime{LEbrF Qu_}I3r= y1pfeW=G}}75X[UɥRmD0_FdRgwߴ;Mj 5:_]4L..i (CQβ鐣k@U EJ C Bɛl38cTj(B%)@MXwBI-%P T=Ϲ A3SB@ɺog!*1C|O TLj.d`~yaݔ'./Vx.'PTS%jC8v:~P5U㔓%bЫyktrI'fêcv6FO/mQ/ G!qέTbe­!poS"/=r#(XۂVf?}Eo!2FyC3̱}5K^Y2gphș4|0Ke̬n20ǐj hUAхjvcOt^$AN/:iT{ۉ9piߧ<+}L.ʶ⻯Ϭn_vW4K |KƃLH+;'Qgj5DFw\%MְũxWF#/}T5A6?A{L嵇/7̽PXۺs܈wjQ AZ9b/ cTQIFND}~(2 GpoJ8J(.#MCClQC-I#t?Y%Nb- L3vԲb8aZrOB$%^a^JȾ,>*l6hN#/QB'8JRiKWO&q"I Cj:yT= 4Ϡʝ{pXBjtMtZhm쯦Q.6Je [[.3vN9IqhqLp^y+bC)`~NDBBg9<^NT2_|U9U%X oyJ.*;L̖WeDvA!|!;V%^KUIA |v*6LcLkTL!- éxdG҂m1@6$l0ѺRt-_S|7?#}ٓQ&'0 &m;d/\:;.+iٖDܽsÌi Œ|QI7{*:gKwR^f(2tƞMQ娕M(W3Т66tK\H2?va^OYsYL[@h ' ozd~C' @^!{Xh`j| zZ\رj6jUOG[2|'WZn50K Ir_͜82ZuS(?ZqEm_wx Kp$QNsHsfݸEW'H?VӒZoD:(=ђAt;OkWzFn5;]llM~=5 mObe d:W6A9֧EsRpzVDE@QQ:l5Op#M&05&˥penkb%|1ifj/.oIu(]sl}HS3V6[XAf AfФ{IHx^Z+9|$zOG͝Y|EX{CWX2eJu0/jO-ԕc˔ST:_"uVf/JgK.}38F:P7K#Y#jZ̀҃y!N*TL{LW,✉cDpu^ m—Ak4ݪP|aݵČ'~`*z Χ\܍[=iP iw+tGāe*.dز46+'iRUYS8Gd=< x [xC&ɾ@QoyۉV/6`b%"6[_{>cFh%j~2+FTERū#UVJ {$oSf2zFM!IK;S;;|P(?Ͼ+?YfPI̢,zeg=g}% w h:YX%˵D9G4l3Ha$W4҃MK~nk\+~70 ϛP8m h}pne蕻XԞ?(.LXѣFAFY:G%9tݥpiaJ[ xz(oC_8.uXRbNνj P M#3S`d1 {BVɏnZ:6F_x O4-Y~ݯD_s(#hUasޯ)|Fxu]_j}5Zj.6ɨ=ޡ܁su6?"4,r|)3M#ha7iD^ŒcѠ#vq(ȉwi a1{!l(KɩHۺlj1T >j' PaT] j]"{^7%4Y;TA/@XYtK5xT}%A$k  X32%A&aIosK,P"A[k N5^C2xgn5P( ( ]\2l@s\d̈́q@.SdV;-'edi*F͆?= (-ijGIO *:mkoˀX晴W ў,#GnBrJ3s6nݧD S{'}pI 0lExIyeVMS*ϗPjU( <0 J05+.liEk\"-]6y. yeꖕmNnšO[^Ղ3 |ԟV.6~sG)٬ߓ C#1Jӫa p5o /*fI@nYE)\8˹nb74wt;_ڬj7)g҄ qT&HPeC*bNgt.tE@ӷh},T ǝd{x/OAsޣ`#YN|PtXR3[)%h5>Ң$R"~k8v4NLNEM@(! ]eɏy4>v:h1.N2WU52 86TGgo,f._E?nAÚEH X} }3"D<4<D*>94I[1+nդCk8pSu!E2$-b  {!EH8+1ClS| ެTWA.zg3'f,ͣXHR2HQ-'j$жԳ1\kK8?s >PxEh%Pmŗ𝀆:Er̂VLM OtB1HM~K0~̵M\!Y_#DcU2G(b./0"?p.=1%A$Kޱցz;B܍sg<3I_V 3ȟ}aނ4|) }h!\Kh7ŝb`2z^U'/i UX\HY+*)3;ư(T0}mـLGtׁBt?݋#2nf涬SzMk{ŮyAwrk3$nߏo`^RH;}h90&ToL<~Kn'Ԙ QвrXM(;zA~3g }9\؄>ý(z8j݅ЋPIq#Ngp^ɫ\O,YYyp.WH#B5¥i]f 3DG^{nqirf~9e fL؁9=n>Ew!s lyDVnf} 8Šv&E4~N]H9CtNƁ΄P`45lM! *RL̵~\ T 2 .ŀwWx$8G?oV`u1u2^"(?X^S T?g'ޕcC41? btHAQHa!'o|Q+T`XQ&4/4z^- j$9PKZzzrА@Swi&IOkon@y vT_6vV aI+?^Q忼_S}YH FE,`Q坣~:^79dRR]cC7C秳kQhZ.:$'&N0'qEiLo3PcDJɿNΞ<ϰ`c>IPt(s\㶚7ESz;ѧOTC}"a"Du*ok4>K~4͙Yu?7zfljMp\@[r.C]GKdXa};jOs!zIwzC t,|w"m\: 2&~P8UOEj\td!ݷ @,7.+c&b^ AdUA$*t2d~"(QPs6Vxr/:Ef#v4>%C4̈ýe[Tyr.υȝ6-$޽{B^׉X$WLBRrsԩ/y}wY$A~x L{zLtU'΂[j|l"*rMP-hYUB9g TC,_\/o&giAͅ-gѫ.;uRװX*sh0͂^CBA2'\?LXc Cb>Y0ZFS {kývcQ~ \Fq"A$=0ɗ>J̘ZHLQ@gA7KP}3\^8̂V$?MG;aQh6P5[/W{.iWI4.TK셼4fU01vJM߂Βp}oLrgZ5P K_%c Ɉ!e|5d$dDVYlWef.+컜;sf z@"En&B }tPh ȵ#Qw.y03C{u\7E/IP/wYV/Ip6{KGŲ'eNWS"ٛz9+Q{lkOدhp4ds1A7htD[Ӓ -8\i29l) lK\7!bM-uEKSoes7hL^;̲:.T <77U%cZ(4չڿxR`ϫ^Pʘ=n[a1jB+H QBu Y-puLPZmts2Uo9n1s*5WSw a!",E}0[2&Ѧți4sfeyk߃>s L!XXOMFr? [.BmnD44lvw\F)F;(OVхSox9͕ ׇ#Ά &[lǁUX[Spe]$%&]Qtr@pA,@m}jlVq!U?\͛((1`&gM}a;A#@̘-b[V|l:]}4[*! _TG{h9y遉h\- U&iV67n)_~%\ћ6Q^hE3{Q_o:ŸC|"-/˹4wd˼.fUbv#ř|;qpn4=gzw`=#n=I&͹Q%g ݼj]P1't0gc/rWe[w< A߱sdphn(Yl  +Ct<[f΁z]·4=9!k7Y/Aə@z0=QɖCS/ljI0!IkpK4Pv8J JNr010[h $g'pB/iR^T ;(v#_OLc۞jhO#GG: (6Ȃ[PF$ҏ DZl!L.Ž"3€E?@s7lWT/5x?R u|+ K7uc+ztބ4 fQOTOAu_0G$< v;a(ҽ5l1㮛TZè~%D^6ÈOpHto-6`LL!H6Q_eWTAź<t׶,Hُ2fBljk^Vl%C3#$ Oe-,q!{xt{'htvb"WLӜe|*_.ba& .9{\(D脖GLBUa>#S˴tbO >{m+cYn̩Dv羔h:iKb)u@L(8]-SNS d_*ش";M!"3uc+c"{*xjV5)LXE{ fO:n.`OoT|w8D+2.~Mٵdow̕3ߜm"*<6!rz T T3F'LћoC,RM|ؘ0n< =V(}7ivގ4\c"?&?'{֭:1gl>[-K(.5 SٽW,:u:NVI3D)aӿ;ܦcBw _Z2 J!U3t"Vu =a&6X߸Xu5ͧ¶#l+R;`K?Nf Cw/"8s@e4݃|$?vT_sEjh8ҧ۔ k&'2U=m^*oO Kg8#S!7RAk!p w}XL$_ꮎ"2z s?%.XZ0 U#CYDzBɒRx|ALݸԀJT4Umm[6-9vk =u/ҺfRTTIrMTKuK/a83S+yѴz A NG*e}ʸ>dyܜ.Xeoxq'̆U!6x .XȞAldyVN}tr@U/Z 95uBx兆#T KWFLQ_g'5aL:ef Ga ; ) 5oEWF(gEY,{Yju'YĎ^X =r,y\F@/@ TGTPLp8dDc\h$ [[E!=oPo596kes u:.i/ Dd}|on&~=}W`x4mݪ}﷟NtfCE+%ηnW'_K`4U?lD[KU\ږ6Ո`x*Cws?=BJM2uLa3 W5&͢2,. >Pw`ÖHÕ{aIҮ4g?nPG?jc8}(u6UH JJcv~[_иL4 TtʙzqM惊ﵼ!qCP})JZ㮀#}To h̭ݘ_R),1ujy~a>g{Z^NgWH\dUf`B,1n<7L=pM  gߙz٘FXӉ1Q@B Ǩ]V9[WҢ ;'CC,>}/B\ 2.MlWJ`ǥk5&_Q])X0߿hםsA] UKcLHc0MH*,guHϊ"T QfQ5v>nqn92eUϐ]h5TXno;p=sEc/twg7zDG}\v5*)h/ {Z;:,꩓dSϻsR y܆j`O6Ż|ʚp P'2vU%r&<ӳ:?666X"rf(/%(vU/j 5Eݬz/aϻؕȶ-sOghYReOcVb\T`W 9s0/Y.Vԏ̝j3] ҧ5AK+R{3F_fevbF85j:N^]EI֬&T^LIzwsd9B67/(qL!qCHq"nț[ g%4SP 3i<]}Г, *DLi,oP( vwS8Eu.ft';N PgXLh \ z*/BV1Zh˄lIb  Vٮv $Þ?;nAJ 03C3̔2 ϵ3sXxb̯]Bu(89 H>Me~w䎷\mi/hT7qࣕL$ +,E<)W!^؄A03˒q+.ZO^*F, %o궊{nyV۞eֽ3K gKglӡ,2'W"Oux}*d/:xU{ '9\Щ) em`Q?FYz˥z$tO^Xbކrͭt#0f_A.5iν] bwa $ Kv<$)āz,IؔnItk yhqarFj=njq " A/UP\!W 1sv?J. aŧ IOA:ξ̞$,6눳7]f! q>ܫ`H_2\V>"?jxAA$˺[;8)mZpH2Ak2D}C.Dv2Юe:-O#e:~a Jgc.0 d@_!w!R3 \'R>LG'#uQ7K̝scl~"6}#h0Ĺ'fKȯhкATsI8³l(YeLʶ(Rܶ[~^L4e 8ChåO1$*BX>w"a[v.=νwOtJP,\$3J1Om/,y<8_V$X!Az:])ְ} ~+6t}Ͱ*Y7Ć.)A*" Rܙ]&{A䥞zz36l)АHlv`(بW3z6)vhaIo(07zMN9rr W,E{ C jB. &aHߚmZ)xP#K.y)P IEG|4q@v׬~gɒ aL5;9eVB:=!z5u Á"TN(}@X-ws:t;ȑu``B*}ZLPQY&x8^ 1f;*>Ow.lB ݋NӸ`NP?..XS0Y+ߝ|Llv͟ymҬ]=81kC"mhdck"zL/el8 _k0[G\xWon?sw5 rAK -Oa s<'ٟPILp]{ZHY_{wG%ÿH-)0};ޭI .:)>7ж*`;n:BO7o ^]jA 67E1x\CݨP&hن$$s=?RX\:B$쯧d>S=6]Y t˟!]$o_USNuVMҪP4HT#3XZZ׉B=.b$(ϩms ]J<ڒ,z)ن<_4x F0ƺhǕelPt}$/9{]EJbQ 7KVNO@-4Z(5*Xc({|!;ی}78_\&$di&/SU^=e-5z\.{D"J] U0^8FcW̩Ģ+p!&Y fe$h#-)F̳ SYA^U= )@'DWvwz1,\J2.]鯹~ xugZ z춋c?{B; mwn= D<"щtL;K?uMuWR5 [j譢-CJB$rNJU u[ `헒iTʶFMƷ[ c tD.Z^+ɤOHێQz,QiO OFĺb\o}Z[֓e;ݩWbf)x&flp+pفDH{] nC< RzT|G1BX;.oihf3l QH"XU~bԻ'1Olm@%-٣y+ѹcmkhOc-!qpM&n^`!Kvd>7sCUvYtӵlƒF<~!5V'N>t@DËjkj޳SM´¬MK5 9KQPl}`5D vBS`!vVGn: woakAŬN[n;Džqsto$Xߗ>xvh,ju;Q߇P;;N´$jh"_1y JŚ\'yڤ*90iyոF]}I!U].77Is.gV3+֕qo'qݛ2@SK'rm;S/=Hl(mv{EW5)`h1΀&I \߫mUP*?nnWJŗ pA=ܔԅ%Γ? e? C#[ sW2?dhiTk0_"-v-Y6N2i"V!UA]h3٣ˊ?"琇TjAoQ D;ZY+w UDoR{f#޷ >:?j\bߡ֧u$4ݜ( ϽONz sbD%1C2CD>* )<0uF,B[41A8MU)yx0+'p[ 1 պPNR 18ipS@^{c޹߷pE;( @HeNʅn^ 2>,:N?6 o鎖 %Lhb` FB_J!TRcE;V˂ySV=K`O]?{S} z<#̵KuVUc鞑O/G_ b acב'U4?d*Jn>f :A`iCjҭj/ɰ%.4eeȮxK_Z4EygRKL ')? +][˞X:XĐ\,O뛲{_4:yD9koNTbA,H -P!L&!}Ʃ 4*$gn3P[h̺yQC ?^شzƼ4dM `!los~|f]kGʴKb$aroԥ;I2p(2ZI_R~ʋJ-SlWӵv(1,8՝&P{DK%_.q&!vR >Cͻ> $(Mϴ &patMxWIZ mNy2+xr AMzHA>Z ?hq" t<^syx 5K'ӜR+h׍j߃4_!Z5X]37mH㧘5#Cw 硒D n=UP7MHdj3K5L``K@WIN>AT^~6ʡX|b>(\q}DNr/ɿ5baɚu{l0.^,H8tH/SnC竉;sH9,dY8뾴?UaG*n[c8GЅu91l澴2ܧTu;Y3HXqN:D>I WhV{B ѷ ٢pIrNEַg ylgtfŬrI9sg{Ҡ*CzA0 K}qbJi^J z?Y'UIx^* [Mg.d@E|fA1'W)w@P!]K%@)Xtzoy#lB1:ґaɛÕz~}!^=(?I `_b>d= vtݺ}{@9^Ctg$a44ku78c=iF4&|[Nk D[Q#cM-4NUYy6Ygސbt'Odkc:,YՀ*t7bejhj moHA`%F~1ۅºԇ[Ǯl%ZP8VX^&fj>d>(2T7u]Tl;W*2"k7# yq:%WO&xO2UVٶ~@ҪB1`-9%Oض l;%)FB)G_G;M SZKʕmGAbC>MZ!e1ӛr(̕nHg:{$nԺGriCґTUC٥͑\ rld:]&/QK\𰈼;D%?QBd),r)Pju"K`ێ#ٲfg Vxw琉K S /H@d1x8m3Jk & Jk5KF%Kdm V $3h[('閾TTF_#q_gd!?C6TVS)7>ΰcslU mn(e;@ეbs^}Lc-(wW:TƧ:2E܅MHL\HWOv7hQ﷓s5J$O5S1;=O]u1'$6lD?Y=>Df}R$Ha67h^7=rU,i|LgNo]Dx2AwVH*uQtD9*q!m캾k0OV#29}p۹BP f1&Q(z*/ǃO:" հc $(ź$S_AThV (R0[D"7QbV }muJ t=D^U*z)}Yi_MaY.[ӆZM:&[#ֆ^tv$k_:V@9tG͜gM]м9p1V?N ja-Q;$nu/ګ& kw\66XӤe;^[-N㛱U T oOP\@c3~_9 '2 z7}8l`M8{$ڣ#w= dp#.2?.Ē58ndv4QtE9͆*i4 i+?I*WؾiAxpPKsBH,Vn@,DIJL+ cfźR%Kl1 [Y`0= @ kמh>ڳ>bV,HnKrBa2> Cۼu7;uͳ4j:ϫ4/Epe U}5>,ڧ4*+'5\tݐ]jЗYBpkrvUStmYF6 b׈i o,;!(.\W]8.$cZe{P%ɉ<Qpe^#frǨ%cd5B|\&1dU`% <3 rJI7Š0 wȞjfPFYoF &-e LOt3j+NSa华h5>74FWFi amyL҈}k ^xjV-aָ>s͸ ㍱ 1^= QoXyόlFEEk\1W4IPNMPMC&`.&kkY,aqך#'-xЧiui`5IlS՟6'vbPċp׺~>6dbfk=&ĽgqϠaƥHց=8*ͬךpM{=Ygޚ_E#G4,|:,f2+̾M)kJ"KL+^<SCNԌN4Ȥ$@z98\ի Ujl27H얧o0{Ewx M[qLӂ$=1?8,cJ˔tVy2)_)!89 B3S(]}KH's} 8n@jg|-'jB FXah'J 'F9L?hBpϞ"AqaRb}DŽB"XӲR{ixRnl%4AZTC)xqkBĩ17r3:D{fwC;^N3ɛ|[f5;Kv(|Jif9rNKv=_ !9]Ovx-`^ڸkVks̪zu5n. ׼r{ΞWbqnJS[~ƧR1拇xYh do,S1cNL9ݓ5~HDii"$D^d+|㯆+5  ɂpHzo1#a+B&Թn#ƙ>2G~Cl7\f~jd82Kp]4zfp•Qdy.NDgxwi 8] v(1=H2 lAY\ݳK%a>'EX='ANNHz b~6h i #yrF{+5LXK>)dž?{SIŵ,pQtl 6{da^OPåB]q`J{])c30WI@5|rC6~< ҍ|# A08ֲ;jWiԏ-uqGOF@so\pʩEF* ݸZ]Sha%>e:ipzL6Xpr)z4<-<~c~u>xh% Q_1V0ucf+?R m7-lN(7=3w08G2wNHH<ϧ߹Ơq)le G<,s( F UE$^Rԥᶇ.j K8c(k$8?~7%%AsX Q N!t:3,uuE,A{1Wu:,m+Sw_ڨ[Э7dtɆx2(2'1 a]6evE. d;.h=q@z!^SU3T1~ b.B}["=.3gM@2U&9@C.|F(3#'f"685rTV˖Nfw“o= vEs=co=}LA1'!fAIQهu GK g04h?en;LRF"qYĊ{ 5P" fDnUZnVF  IQ_[F˥μl-Î.||~y{,\ye_k/Bp/lfnp3ɹEk\a,.VqAe8me f븫N|Aի3oT !G2-LOϧHy!'DFŇdL>3^X1?gZT5&5ҸWh2ܷBWVP#FG=V|u&44syt <|ۡ5i+=6P7<7h-9zZ䬾%7VJ?Q ^fJBB@XlAUKY3YcFA$+[6ݺI/5(OX벭?^cީܼ $0򤯳K#%N(Y־c= ǣey Nkk; R7LY8^}vEl5[̭[_ g%xLDC }T~GqGJrH3CԮW^N#r%BZ~^2Sv ⠯,0n?C"J +Bא,XVW5>%P&_sՔ{&R-"1#́D< `O Tm%$*OGVi|@iuS@:W=`r7jM?R,!]|ߥNi+bu+`Vyg ^v·*ڹ!qh{gpzN o(EzrӌAyfyjsC'՞r(Ot&3-}#=5l- ӣxnGsy9=TF^ko^gVC~nL}dhӱw]-P*."\HTPpVG,դ,iφo [XFp\yOC )-,,{0.{];k=|9kW;|좘!7(!">t쇙-jS/iVUxV6F#t}1U&P@D+)bvgӊaWn SIԌr􆾈խ1Zx+O=Ass ipqwq"aF1tZ :qMk1;#צcVΉQ2lA`jwyՋ|%AYPVy6 .8D%.=Rk݄l.PE(FTg*ǰv*6꬏ # k!aMavl(){r\Wp<|/YfhO1 eg.Jg?Tw~ ԸSMҝM̱Iț ' 54f:"g4zKcs:'/f-| dg͚VR"h~(k8lT ̓1Q!qgłMK#Q0|7h~Bk/7r^[ԂGnP+~:.kxM}No3H6ԄVL3cdgg*2v'#xtr[q-7=̫OGҺd~1KS1?Ɉ i+V]v^,t|唝w{R/Pr<[/EUvoqKe2#`9zCS2gmuAךju7aA] xM'Q6rlR APaӄF|UjaŞG~<}pr8cԪV/iƒK>ȼAzȮ6%vTX Rp!|)~'>o`哒b#pFS}=Qpſ7SM *.;688):-kD;BVP1V כu]Xs\ElHzJ"ժaPJ}҂ߏmU b6/Ff7I!z?푄9&>(N>P8N8}mEx^Ujs4 Z^?73TªZ1U4YҢ|IE)Yȋ(S ,H/F0y77YvTrƃmAL {^~^벙#SUejX@&Iə*b;Srofu)`Dl'?ӽjyΙw䜤0aß7VOɊ.~"\jKbaT?r~*J*} m7ɠ$% *ſK9˨g\q4h  2<1_朢SeAȄO0hgk/O>>PB;]m_>kKN)ΐ)ݧ e(pBQ}b g5BH9a}_' 0%Yہ9 ]"rI-.W̭eb@id;ꞝ qҎS $#Ȟv! Hݔ?"1p,#BZ, U#[c ᦢgd2ppf(e%4l)]ZEznAʅ22* h`._*ulVj3 mҲkf^Ay~C笤pXRB|ϚEn t^}4bfpRPE$ ɊYp(:iIsbWh o~m:\&$Xwc;rǻ6B ']yftP8ʂj6hK''| I|ͷ\շͣ;q$DQChy383#=L՗mY]>2hL/. $o"|Bl\ٵwf sw 7ㆉt)]/dqte`\ѨiӘ h=mu{us"Nw+\wؕ*o\br;w0J,ZAe#`JzaԯKӮ3XLXb_>- h咗VtOXnQCDVos F*xU43D҃M$қyځtfX#n! e `u.3@ 8\t`/Ι ڣ|0D(Su3$v&+1w$SO~5-3SKlQѱt&1|jM@$ppj=ݦԃ>8a>CI 7zV,Ҁhȡ{P!]XN8|);|> ʨID"~l2erw^կBa_l\6O 4HtM 1#0*u<SJoFgcy|[Ri\)cu&#&͂ھl0Uɹ(>Cy.2I &7q9Z7| ruV-SsIEELpB-[dmB“:,o߼͟[4I2|$S/H}ӎ @ =xPixm)xs _.gCwm}\*@]т7X_Qr0@o>+WWaIWo;3Wnߕi D|C?&wn$\ ITlNشTOAb}rv+T@6bbZ 7i;o vReb')'>;w_b))^ik!U,Hv;^E 6Bry2*5=3wp?ؽPkʾN4dp f)[% N%W7A[P&9DmD#c)=!Ul D~u _ 1g" חDyY;z1Ն`<Ǫ)S}ՉLs΋aS)7׶L* # 'hyvW, }ʓQOy03LOZG[n_x"L,wEJsY-to2L!l\#r8!ҝ~x^}Hjt8q-SIi\-4;:22#Rͣ?w ̢+CnH>U!]j/zB,%`3eͪ܀.NTm[Jb,u  {`DLXk||$a9C3=;@D vHB@*DnDD=ȇY;8L6qO-բNVGU\ޖ.:ׯ,]'iͳ`/VbW#36{Wt;j#*iGG1l%8+`t@u6vF]Y=/F\s2 pl |l' #bӝmA=x%>ś$J،-[<)^mK@YDTxexEa4wDk:/0IboSׂ@$\c3,NMb9 0 4rtoԙ8ŪymZn0,Au,H<'ݤF3r.]I"8,W 0^x=ǛWHG}."% {qgT,[b45͇"gs !kS vxHR^!)hb׏?0 !s~=n^b~wD/ =eWAGmSٜ%ϙ$2@]$Ýx|uռIb[%%UZyZ#Z/ $R!Ӂv|%{tv]y=Htz#5;o0P2^彗F n;.h ['1 HbxB_kLL" Y2$dm篃({]N$ztݶp՜; ήMHJq󍉞‚4$Uy/84NߛԾ38xکW/"Y:0U[Niλj/26ziN>#Y'BD)SN%:RPI6kDĠ%60aH2.܍>AӟIˠphMa,Y5\.Eպr`)~?:Zu %pf>dIׂ)V&ZY`ں;lB&oud:yRSAd|8Y«-NI+"-pw-@WXl.ka ⺱.$0v{U;UO"<^LF|6^#ejHݑu%ZPUyi`H͢`9&w3˛aUQT88%GUڐ3_ja]hE|2m"JkC1X&r:Zg3?"G=`]VRg|C3š#Z\UH(,ǁ:JF=8Jq*YЮGE(nO5w_C<>>?pevbP]@d L4%Gh"7Krth(P i[l)]ڪW$n{9x53oqõ]\mV}לBb.SRquca%OH&)\q>;uVllKI A{cՆ&|^R"@V57TIa=^L{ax3JJ1=a5דػfsWzߔd+9[U;ټI.b$?e!(I[RלzFܮ,!kѵp ]H]S¤( Y2=𔐀w ]K"y 7n"p%2Q,"z1Xa/.m9pӍ#Ҷ=i8k^٢!ۘ^ӖR>C̸Iہܼ1~;&@?M-Ǫg 5g(yh>UlzѮ3P2\08 _z ѼW樥QDn-Ap)$eMf' q4DWj #_~/\'PKUXV[rTI"k@cXMޑhsX5Ze ӊ ށC*=+ _!ҵ={sUJSt*HųRU(b OcU>SPd8o/n/E!Uw, TmT@%ӟ/-Nk_=FƻPݟg]X[գ}_X(.dN^"QU6"xG9xie0Pߧ:I=y/( VZ^܋7-_8FLOb0泴䃕O„JxU(!Uy>oƊ[Z<,,%Sp GxFˁtSa-Y)͆P UB7'@4ZD9v yO?7Bcv0ْoOj [T/ )bgº#&<+)gwXAKMXs\\ݣ^ӎ=:$҄섣{ph6wpZJ A9325H"d*@ 2f*<(\~˼6"inr'dQ2vU߳׺KG%Wˆᄲg.f[Z%U%)6C\S'&)oP+б"nE.NN<_-LQ=Eʿ͓vPr}f8~|Bݧ Gjs$VF'MƍOSI8gݽr2Ԟ_t!P 1vr6rP\,h:>hrG,Fڵiϛ<}wtC`{¬a";Y >BsR  I/&%˜)\FD^^.yi+&gAcW]f^/_yj|E`\DLg(+b}l@ڌ!tz'/&.9tݘzY(㚉TSO`HAdʉ`QAwjGg֍~03[Riy[?H'O+=bx]PXI lz WNo<4Y$@{`@e֋u(P 4H&?{2*o%0a78Odt#L;N {=:c+lsxCAme~(ke&I{s?S<%AK gK^"Y~̓'Ȟ-,Vp0?xN$q' j;B)m҄:V+5{\' }>Řq`CtX.zsӤf^Wu> UՆX$ABF4WX\jԱjb2lh\yjsaO,Lhv3LmvDOVAvrI gF[?ιHsa|xbeIF#fb^éɵxy]D#"hg']ϿϚb5>mH[H.,A}O⇼p /!A5w:2 J01n.ȍ>kTna+lEMQ;xo6Njvs] !63BQe1bDՁ^XxD^CA{VsT&#ܜɀ:Sqd3TXiw!cPEh 83^$gN?S߲I|TLLn}^GVy_o]pnNMWľx_e>@?:(8\kSF(cv &V3ȳ-`8]1N#TV=]$7 k DZCre2`ZM+7O@yok'ߞ0}4nML?Fp^Y;E%c 6A 3#՛8jմX Q1X'D}lR=4Ǹ䟽X4ӼCx&VykCiJMBȫyY`AV4ů8pOQ9gؒk,W@Nƕ97F뽓"_^^ VaSLw+y,ػ Tk2T)ש'xXFKsEPMI 12Kr @ڈ]ԥ͘I!|<:R/1쨑RtI&3yuD6]#֫8Sw[0-" `ܡ E ?ZNy+;7FǴIWkSJCͻ<ӧ*wӴFmr m`i?_>ei |G sWl1^1q:3ѳ1ƓoؑƷN5_r*)G F[uB_y~T1Bd5*"N_&0{(6'8'r]7OpE.wF}e6qHe}JwnU-CZvR  f#'oj/֦_ NelNw"~ u\3|xmˌ:FJt^Dqa[~[;VD;cyudĘ^"kw t}UgީW5f.3ocON*FIL1Î#ShU6msk * qZ6$DͧsnTBgqv-ӂ1ZX&WKm!JʏL9;~K,ad3*0#fj)rmIΦp%dg=[tALj%UBGG&0 hVO?,))@cn4#ppj'`JW,sYpņp~NHX'W9}g!.=89Rh3^SIg'lF A~uvo"p>3(m bx83$Zoc<:m߼XqnTqo1ֶVk|bɗ'1Cs^[i…CrGŐK 4B9 b ͵JQ'zboyAFWG8|=B3bV}j^콁Ce z-}sw=ۥm񵯿VK MZ(}`]Rn7w]ua ~޽!0EKȫW6M:Q܃Oڷ%29jWwz,L`k֎Jq o7ltiqȧIq,Z66Oyz#}B ꓗsfc|6̠J2mUt/*ZJ@I\jy[ Z|gv{vz6葊}no;IKV^p3C. (>l{O<|GGa6&u&&rZX{4Adî HCa>"LoS#:< -鿧N{eG=ǁqozZx*-'H#M¹~䇉sGʮ O_e~ʵLj' [t=>ij\чѰWEД#8sLK2>ak#ni/IY+'pK[̣F+dtd `HL$,b=s *^n_/ _Y \i1OQyʛoڥJǽH7Ɏhؤ`$&9bN{b S+#`83tW6"@ 0/(Rׇmwg֔=+7;H FF-> q l+ Tw@:-8tp32,BE|K HJ*]B@c]jXxJK=q́i_M5#YFpk@ɮ\Aԑ~vWso u>'hʙ>R8 nzJQp]5,ũa ."L>JH|H`y,ή<*J9"<+YCGO Șg~TN9o`.>x#FW)V8\XNy/6rѰ>>ɤ4ٽJ a0 /7y}ѭpIz+erv>gT~=a~֑iُq>H!C: 17(LMe?,zK-r-!+VǔM}Sc@epg2m u՜ҫdGm&H E:(a82%(i)OܹƗ\(2>6BVxs/A_8Shk3 Eqz8(rAb^xkZlCP2+#2ZBUfbe3.Ήqpj[>ٽWx݈M}8z ߳ ?4}яj Y 8䉑tt{^x+g_^l=`-R m6ߥEbmq.l{Mx"dfRqEqH$`"BH!ggIm(v[huQ>B)r/PQ)@r * ëA̿_A.6~c==Wi#ߗKaSϓdV_qg ޜ?ǵwZпlvxn q#4,I6v`!U;IQ7 ]{g%+҂-pi`:ީkl- gT!Lu765zrR<$&{Ec`P1W邚q#?фẘ{KGtZgIc*'ˣkqw\{!G-J. NP\߻p!pun5DeBȸhO^iܚ9~J~Rlnw{!)ůþm6u"8NEԆxQR/N4V3@0p(BZJl@7aDnb8I%jV)âW)r*yk2zBՉʗ} ̀Y{=b#f|To.F"],O㓯4pwcc[B Mf3ɹfiIv>Ք!Fbe9U)^ɷl}&)tgedWe,?G]d6 Ġ_ i(|͐S7HDy[}.u?(uzȯ2 +.4@Gž ^%_{ !w}CBfe`-&Z9wkz/ F ۄuk'?E:6@ngT]kwwpó?I1 },ght(M6mV ivIkqᙰ!(n9K$AQ-w\d1m#m&^8E;_\ѮXXm0~E?`]|Al5,C_&&Dc\b{{84kg7΃n?&~ϻ&Q`)X3@(p3FAk5iΏd!<|"LHQ'{p%!uR8rp?HM4H6:p,w:4U1|i {#CPfQ2* yKڜ bP/58 xp )|^7ı1TEkR>63VgfYbwoq,terTMl h`6)A|X0,\IW}2t75i}82:t COӏvmZ.tǯvRR\ /}qZ%^0խa~{=(2~?ŮjM!3&YE잹+ω mPV%(Cta*r5 X?!}ѱq0Mc4L_H\BwW_"%J0DHaF&{~& 8>< VEw<Ü2wBr&ۇ.ka}ۺ{Bczᄈ>$rU$}z{W؂ΉAber΃+I7WS^!D;t 鮺 hI,ÊD*>w^hS;H gIfj =7}'-a* kHS⧽Yh^X7cj X=]-ܧ ?۾8)Csa5%NVOZGvBZArL$MswxHqSDX,Ȣ}y<7+d!8FB-!eNmPS*$@bqwyG,S|IeAz3-at8!KgL){V ;׬2 z평t41sFyX-fc "PyEꕥ~r:4^ YSӝnPhGm3R7%O&/nN}op0{G4*X;֙S~L?U?Pt9?=H33I|vNeKW)E=Numf vOXo͐ ؽ |g6*t]ls]AU-XzHS3-3z0`fIkv27^Sҡ侢(l\M 1WfSX ~qZ>WNJTsQ(LWϜeuo<DROaʯu3‡9S^5HoGn].9+ڞQX)a3?'xcvzSJsU9fD)(vФ&h_N˜Mȧ]_:@mxO@"u?:wk#F`PB>[D-܋d0/gwbz=g٧ 7xZA,| _-4DŽ=}{kG$, sZBR\Ddeȑ֯*k?^ <.OuDtqࠗ4 uGAfN(btw#xSkW1:Hl @]u3q ЃTT3d j8L)T$OcChfE u˰#=>34z+'PiQ@}_LVm'},%tRk+PDxϐV'&_ejQpC\1'^eMejs!clxvv!gLһ6Ԕg/^o@2GRm%-lΝe4;x1ʹReXwaBrvᨠmШTf~Z@-܋:ZԦEd||U@fjM|;: Q V5v ݛ!/b GqZB>!҈߰[ˌ7yve||Mnt}Vh۸`y"9UʽSZ4D{ܠoz7x/waPBzzޓK`azDq[z1Fs"єG$0d8?I*zVB]5)1*ΰՙy1l8UE 4D Z8_ʸ]  2 !aЈ/M*\z|H)fsBAqu5[{pa콧&DRQUYmYQa1sL|t1mIăsTi_]X!WO(4z$mo|LD4:wW#' /{kGmUHSW!'> Nq&,pcZҦ T#i왔遲bؖVs4.֓Q96wҺyĨ- V=6eiڽqWUZ#X":2[+ Pdzx)P}ܤ$`bæ5G)sNݭSs">Od_/RN@d B;UЙyf$Y\w^O1\hbԹpE~Da?f 9CFǰ̈Vs-X5CfQ38\QUnpcXOxK q'+IAW;L~C!mͧf@AYn><$r QfR0(gԤba*)3˳!*Xmf*wW>/F2V©Â 5=S B@Y 򈃏In6ADgߞ|iQ'-7BUC#dV^6Ok==1wl-_[ుzOF=&( ѠeeXܼ1Х~AX!=Zω3@X`xǖ7a)qF##ԹqNKUUb  BX jFr9/q .,ERn@۰&_Mm yrn :儑z|V74@FEܸ@bz35+*+Xr*=ww'mp=>@-.D=3)(J Qgۻ'dǣ=$ \[@nwx=^AMce[CbI$-@{Q9*Q!)S.>wӡw&cMlPQnn2AdX\6 )wy@!nX?1ӜޑK{utAHDx]/d2ݻ@4Ϧ,ů hfB^}3d h{i͉ל@xr{a{ek/g&rW[l7S Ci&=|I2oّ!oyt\?U f5`u;6&Kjq" ' /INacF0p)&8V %t;}'|6@ѹu ռ q]lN4ejyN,Ba:}=aN!a֔K(uJ<QGQec@56VW$cmH w\8]g?ixQR{nTB8Vb{{!$=CȢwip5x ۝jR|d:젌p4lCh~rg0<]hs π:T< 0SI$Um WqN\) ^vV9 yWѿ17'AO’" y;rvR)Y@K/27/u^c΀cP58 {{]gm~# i#z!SWUSDP7'9h^*%.gjwN/V*C̸G=%7~{K~p76aMnARP|߫``Ȯ>_ Hv"ZAzh5N*x^.%lvBȵt(S 'y1UI" ̶MJ DrR5jc aO\R-Q `+2ZqR*grq w=eqɰS+:<EB>ɤ7R(.AO`JMԝ6ul@tߔpyͧQu]H_=</i.|WPv({('kZ@"qm<[ 7y*c{H}8/*H˅ho3/0{G 1qݫ-FBsȌFXgu2eTRn(þu9B|f[)Sv О~ݥYO!Z7WΩ7s ämz/UۿF`j"k^||mu-E&@VcY,'H-l`zA>R.WY-ՙOyƒkJ2kR:ѡJH&a4-eܮ'nGN #v#w)Ί*YV{J_D3_jW1ddq6ӊ߹QqsԾ{heGvu̜t-5tO`RD)$XY32W 5S8N7mЅ,>o[ց7vAX9ETr+hȺCND. 7\UO7R/00>6% d`ye#Vmb3UUS-X֗[>>5̷Xp EUAڃU#iw(q At꣇Y|=_jYM5\_kiy\k+Ms]'cl@ET0mB|b5Z0n-m]"`  qۏ7?s<(enY xBr_NW4F_흁5gL.-~ ӌOT֜$_u_ f_wᷔ:B i9RVᓡis(`Cέd!'/ 2H=%o/d &RG6wٗ4T'58U8=&2N,X1C)WpgPz2((;eqpOk`nR!vǣsHzQkd+LmQGp^GDsP'Drv VP4/i})ԶM_zD1s׼]NznJH7<'oD ]+?<`W&ryͶh6 K` -l;)N)J=34hg'r<,5(+qL̎vԥʳstjpB9)abbZ˘aga8D.!A`'Eav wM{Ab{˺05d`hޗ2OD*>:..1TűX0hlw}ҸէEY?#R/_HVAX~ɒ'HPo`󬀹`+t?S+ڤaDMaL.顙6ܾc t4nE9 f+ )X[S-Klt] [fLrP?렞^ 5dnXKHu4*r DxEͤR髝1OOnMQ#GHQWM(vXl#ZxՙƮQ$|>;'<`Q:?:Bp˦L;yj{6ʓHp\lm-vtCssnʓ]p ?[uHcAgj$;'Jy!sqۀ[TL-Am&0V1B?1>2pa?>㰛qq+5'u;q0ll1]3 wxN!cȗߘ'Do:R=`bU.JM6j5^x#lQŬXkn0>FQ If"I :hh"z6h«!eHkJOhc%ifj1[ fYVnhF#XGwC@|gVl-9Xf} @r7Δ OM.NʣuACTVE 5䧇@L~CZqJL&˽B'eλ=9uHAEB (Y}>,Jp E5೐Ebvh['}DKK(IMTvWu5m h]HMSq ڋ ,ZCQE@[3̻~+⏞%W"eWJv;0h%8Ss 90 11+Y34JunN$ƪhk(nimtt…ch,~&đǾ!vqЎ/ )}D>z.-F] yy#eX9eڞf2=o5 C_VRP[^CWۢd%Q|;DD^j$Sk˻k]gbOZ ? 4\!hb]m`;YPJvĶ;&=CNǢ\ tյuF4M*i0o puۥs-ЃTb=N_ -"nJnNWX7Iٌ:`xn +{a6z+V=-4mߦJ eݷZ]5) 4j택y:h^'_eD؈Xg:ݺ7+/,OK{k>l?yRg('|Ebx̙tlcybFkt7Pv_2:@ؐ'O"vO ̺Xs`&fBC1.QaASc 0 8: ;m\;A#q؟?ROȓ:`zBs% C5X7HurH)}\Hk~M?w& ``]J%x>0J$rjlbD;mWfN^sN4!e8D Z@ᆿ+ `!}Ṑ!I p1QO4/O1o|ZvF;\ EScaLtcV,FHc/AkKPͯx_lvipcDn:FNPWF_@WEPyFj@Hθ69e8z!%4YĕtMJ }ME\jNǖ^$׷I?#~{ \>pVt6ߎ4~ ݉ҾدN%uVp߼NC;V1ċ!j'={2C+T\T:CCV wie,jp Xc9JI@P ,--h5KP\wl&cfېSϺ2s\)~a HE]U6 ~tTlޢۛ,%$KQZW83CURE-!e6 ;MDf rpvq ԟ9cJǛ 6` <:ʮ1<"AJ?dGY=v&'wZ,m R\4&&X$χ-\UwhM&%[j\Eљ"ڀm5oPF1}גX`ox|R⾎K6s=5!n؋\L-h{=è!5!LCq1+l״4K,H 2 NtU^f}s` %PTI8kj2GĜ"+8!%g7vAݫ,TorjZm|TVҤ0RzkMpuN& fQՃD7Ȫl*qiJgbckG 0%WpKԄr4ASnJ\SSnXN]gx@bf#ѳ1IicH&ayxc٭zI_㮲wnP88CqzR\%SFX6ڰZQ1x S7:C)U=y]`|jbCS!z[kj<'ch,Dz[p]a8N|2q:T0m!PiץՒovjex[kt/G`l\kg]}2O`Bـ 47p}WT(HNa΋VMQtg- xi<\Mt'(}^.c wYF2 >&+."*i|F0VH߃7O) :(J,voS+hRbv"ǡUwC8(71>B:]* c/k@yL;\&h>X6)dv9u4G}6ejc+Ei0d57' jE99|oxĔpy/2ohZ{TK `ZCrC\=bk3NP@xLtbϺ1 첨Nr͵Xsz99I.-J=T)%N!eR?/G<~nȞn(+FgtHFu#;CYAKC yGO(_'v=@k E ㅫIGi 0FHm53MQ{Iv,kȵ߸@gk=]8xN>#_f7lk`(89x"rHL 0>$VYs^j_A 2Tydn&΀rNyF=Og=ͫ 6<)줮αg!ed2Bz3Jo@Q Jut9fo' mHrN*?Moץ4'%yN4O%zlv ~ e݂uu0j/U",fTl5ւPltZ}e:_jrdoMd3 }IQ5=[c40HG)ŏ([.m7囈vj;gnjQx},{xoJ;._Mr9b wQ[sDr$~7UrPy[!tD 7@_xsWc4&$sd [n@ VppDcǁ -rQ>rt C{&NJ(i [O%Xhm Q˩JD|hW|D hd]: Rd@s$dX٨KJOWd[X3?KHfmP._١rK^;qa?wH!b*S9&GK_ / ?oU,HF91,X*[BPpB iF_ś SfW7^3r7U Ԉm.! }7K!Do;")ƹEP _,`E%:?wl /kQ [ OX>Y+{ t\ux n@ Ez>VsUY+7$FOPWvZ$0_ıZ/ G֦w)fz=im#lKN更/B ƱԨ @ AB6/0RB%  H׍ (Mp)tm t?!dkpLW n wLMv#;6FaH]5+"'luѺ.)ZB^)5Aص2 }}FK#t^7E17J1b#=Аy|"}J2D=rfK޵_02 _&pE))j3Uߐ ,풊\R\bkBN] :Hy7eF&/ |ؙ@-jRG6y"K;L) Ib0`vFm% wM/0n7j[á[c\t⛚n/4c~ ݓ zr[^GCݠ poLZ͔B D@U HdiJiTDuƋƼ a%nJ *aoVdlǩQW=Cl)-yRq'X")vs˓<a\hE0K6m:)cVnw4"55I*"/( f0lz@ BͶA:fD"/ WI `\<r=z& ~~h9]HT6[ueO`D4x ro7w2 %k3m,dmn,X2̾1[EJwAWv+Vι3ÑC ^Cnz%NȤ m Mu WDa O^5ONpV.mS9} '; "h;S:L%_{SN. VM(6gݏ5No2_ y50[|r*ǃ{OLN%W2QkR3.[ٶ;"Pg6deN{#iOs'XWYۉ&?. ~vOx"<0?! h74ķ;3RtV\s@8b^T,($SE^840!}.F v<ͲJŻb-tҰ+yޱWq !&nOFL|TJVhӘU&w(( f4'@-`x", *g)ϼ|O3=i?UJ/4)gBoZXgtw63D,5(?V6bfRcxMK TF^nиg[JmqLi ![7?= ~5r-0$wnL0$ԘG@y.$i@BF^ x1P8rށaэ0M%wۘ|]V mØr?`h.7 ۈ?nrEs'ѴAſxX-;ZZ U7[}/I,CplϞJ5K޲>CSQ%F͹!@~sBŏ_ځOf= rDDg!-y\D 1[` uwxN7 S4WN'4/@iz/ *( jXoWfj*E`tcT3DT/Hp:.LTgm#\RᎽ#k4(()y:$R^a*~k37.+}mJq523GFW I=)ğ8XOPY!<}lj?)-q'@6%%/7[KӪ܀^47нHk xhF3˺&N6S82Yt4jS9+9xHi&E5t~[rl ,G9@ F Q'Hm D9a$B6:/p>?)%%$Q5!\qoJ,8hnY//5i#v;hD0$x"`63F[厒E54:%fȷ^`}7b{fBŻ!i;ǁEa4 t7i8LJEdP ڜZadmz"vv*xg4-F MB&G&"B|Ԧ+ PvyE:zkg/3w|ǝf:S_)sC$^'-Ff򬶬(؎ se T`_\jrs?¬BعQElV+0 ) ޵| i+kfe X(rTAwߪ-8!>(?g bC_ӧvdkRI6Cbc uu-+[P i)QsW'Hc胭hx[.֪}7V'Ȳ(f_vVJny,9\ha*#n[O+]{~vg<-?JF?l0M _}6Δav$"} հks4Fb|эȱ7ύyb}I;Iu[My$>mޗuwAShC{s@<0XOS}4Cl_o.Ό瓭f| rHZ3ʋ[tjr]0bÍmPҕ?iIW(Iÿc]߭Nr*p0͓J~>} ]阮޾c yQdyˇ @a+/I"+p/Auhaan0q:IMF|p1 nZuS3&YIaOpXxgr0م^ )T[b%IS qjWK? lCkm Ù݅ :VRkkT'Ŧ4bkb!jyXzF8&Z U"gq:<-J9CU,ԛO`:ϑ7QU. A\ebsnC8ISV-V A Q9"Kc3u\Z_Hˇ Mz64`Wg+m*>H1Wc~Yi)s۷t\߯m[sv͉i\ΰ%h/4%lN\܃ijDGȠ3N$߼d3m3>ct%=YIC%g Y2JQPR5سȀp:JƂ?~]}Dge,eƣ꺋(ps^43h>o(pݜG)N]u[ 2d(Dz[Pڰ$.!eвoL(t1w[^d;J%oYE _RlipS˽xXU<d00-M,n1o‡:lW{&u'VsB-I?ܲD{KZdQKY_9O8][_MX=y3.ǫ1(9@@^\ ccP,P&*w_ٳ ODQ*ujx`6*{yB;ș4̆Q`S5/=ҲHhO bze؇rRQ_66VK O ۝ZAǼS #aD12Ss|Uu /^{_6 !< +To%{:_kgxAٲqLFf]o 2_:64R8Vl6uAB+odvDAA7>.ᴓ}Z>l4qA~mB%_g]na KM?0UgW?isd :A;պ6ɺ1sF͒|e,~, :U4E̟9/\tOLȱ76-F{Q2G/հw4{`4G a3w)d,S`&fWILyRj(,21^$`26 np:Ҩ1[H)A$ݳ&Hʏ! >t'؎K/nɇmP,SEɡZ) p4`O+'[*c;,;3CODt'^yG Jm_n;K!ODI"8 Ki|eP%#ާV@c1at#f ]"zɠ \wRfEU͠Oz793XOJ6KN#U\\U2 PRì!,BEjg쌯f=Gs-PN"s֮8@ -v :"2/>ǯ95tJ W)#$Q]VTI!g9yg,&B~O4`AoTD|lw*ե&@tޥ OpaOLKjci<_3|q`-9Z j z]KM&߂!Rx U1s?':Nԧ%!wȺr݋%F&lAN[Q#μ3Y7/b0 /-{^.8Jq O~{=jpaWH)qeKlTÁj*˙.әhҟӱUKLhO8=0 _oד3k=9;7Lp?&>b_d6)xRIeA'v+kX[bX[-v>D~ft =LF3G(fë2 3Tn`Or-C-1:j! @ay,r^2K=[xTڪpQGE G_'l C%U:{IWN$ 4!R.^!J{,lN숍eA:_9hC&ᘱÂl"S >E4\zOaH&ў̟6Hχ#` 7P`'6ؠX1Y.1>I7!HڗXZU$k%'ڴ!;ǚf8{$-ꂃU fzQ` ^Ӥ]/}kQm@VPO+dA+qNFE^vufh>[{Y]hB.KZZd3 .GYo(3/_<\e.o+l-J؄p'L'ckwHqR?r.wBB+b4T]ٱ-|D#؞ HP+:Qz [)I"Y<: <,2i.zT [ /d u4Tk:pL0I3F#B7#@ *jJx>b9hVDĂ|ju$!Q^_/ۧ,48PN b/]oR}Zw+G-J''Jq/qvZʗ耎"ڜd!0*E6GpVBnh9S } BM"~GGt~x0IS5``k՘o`\S&5F@WDM;ſt9a'o/EuF<{Ϋˑ` A|'5A @D7 l . +6D(Y§Es rx4m+f4.Z_00y}bbRl[͛%Ӏ"WpTЏmGGD]Xhp<뉖}ݏGHzkI 8k 2W"}I'錡2~ Ϡ[#DMDrcF'&~97SV >_}1f2^,=1 ׍FCi'6VwjcudHȖ0[7b%D:@ֿkBU) Le|kB%7RD`ݽ2z|H e2'6 G" )s"}-'tX=.;PL Ц"qlMl& Ё c<` v( /]jV3l{DA~ۉW E5f7>GJTsYdeuCWCޙF! CK*q'6<4lC@d(+! ?+fqc+Mitc19dd.fY)!G4zr~Bɜx_y›tNB 2:; RXHdU#y6g6¯ӖovRks(<~*yܻOsDWD9<'J5DUd3k7I/95k >炥v U3M K'k >z^s^n7@K-_T8"쉪|3UĢ{KLȫ_1'!Z|Bmr;:X|ôH/%Yr]LM[i؊`b0$6HgxȘ!9h6Z]Vk'[%dhwtrCXNcM4:޳2tD*!{9(Zy7M7]QhApw$} d0]QA;]qFZhv¡6"^p #ps\12vNxJH+:1c|9]Ubƙ|b>׉%~j;҃m8`M>'Ykg >R:*}E`iS`?.Ldkņ =P]gp8.J^D{6c[25  r"0x\Du$2AW<WaUyPp^eNhՕ) )e3 l6oO>At6%wlY;"T%4qM=cKe?KupaFTYNU=@2ͬlqdrGT-\5k["mkpF^?&  )p(rt>f I$7d 4<aM_@\ԠU!WhNV!᭵8M4 X&LO7DOp`ѝn? /mxOiY܃HJ{[[f7Wk9s#,vZb1w13QDQz'E^#^/KM!Qc¾m_U)S 3bAsi~Xc %jQt*7Tu3T̪JMQ`RVp6{g8MZX\Y0F==h<'"Sɹ~f.G}zvW*5籬a1ed  ӼE|Y.950]Ҵ 31~5e? 0BJ< jFڤM1> oަ]+3=7GϙfvR=-M N81/k XNV15%61Zv%[٭;jilcz8و VUgGr_o6d/W; 6W.≖DẢrpWµQϋ5+iTKQف>)<5ACi`8Qg..inuQ+5+ߦܥo{\}\dF黋D!;ɞ4AD4Zk: diD_M!:q\mpaߏ0@bky$XN5xa1$ s1ϑ_Ez9_oAbQĴH mb-C_6uf&$tH5ϧxBJ+v[ߣ+XqxL?Ԯ xYW976wp~;ZEDC3dPϹ%Jn:ĤN9O@ 1p^60$ޠ>dZ <&%\%{w"s)T)dHz#[ 6dCA<@c^;<')QtaFEZÌ.g #-}Dq7ג4c˩˾?xbYo¿<S`"Vl AxMڤ:4fVt|!}KJ'kp&9aE d~m O #M'˄mvdAVմ+_^9񳏇í48)Ϣ:e]vQW[rbyY: xngX0~+ٕ`BϡOxp}<j+4/n5.T)5CIޱaHX,P5U)~6[g2i#_1syU86=&-Ea dt۽{FbH1` 08$,6{)Od ">- cjVXmfJp eQ!֘)ScO}`oZI\8  ag ^vQ1癪(`<(c`ar2_>S~Z~]`8HmS$"k.r5~{5AhF]˸^OVA); \ga\)R>.どe[w!#q䅋YD! nYn(>sa$Q3J sE:{ ;zlI· A3E;a*Wm~b$4$8_,ƷꠠbW% A5 铚f Ӫʶd_;MDD`Z*@jO/Tu sOc-gp9[5v?`9-te7 O\Pl,;6t`:%K .RYzoW(eZ >A2-aQ;qCkC` vhN2>"^b ayPUxUN?D:=n}tv+Q4gi8!:=P~Uˈ"8&a@x!j#*h9,Py]f>9VB韰 ]]EWɤgx;wiY;(IjuKteaC? SHX}|7D>xx\ S6K2CCWZ,/v$?5pԲS 86 uMsϯ+&K!c)8q6r)ELЬA=5PdY ˓/ͨWH_WoZf4 %u _u6*S+98wD-I:2 Aۄwp 2: |hsϳ2R{+ۅp i`EQ~Jv5dAx3_dB^yTeې+\!@DrśHxAxFl0!/ˆts$12Ο9[w.oTļ`*r th q>wynnB:X酖Il|(ix5!gDL0> C>ʂ?oLUvϜ 7oaBÎy`= a8N^Uř\L'IM/Q~G:Fһ=R͝;ZwB' }߻˭)Pbm q8(ayb|f$ b %rm!, w\nR{IMk,E 8[EK- =1qlnX~!w胒*୍̆y(ei:h{*qHw-?<z_c=+kFFӛ^+g-}yEܯR }xGtԓw}8Ȁ_y{tw p [ڹG7sWAFK+|%^?1~.|*9JܷdXhmsɨ?Dp Ayku"YYOvQF{!{УdL5+u<6Gg7zv~٤wqSKck~[KQ/hXn(O 5m 7 pmα.5 ("D nI%ZĴ~& ::Ix^/.z|~ƷSdfPhX:aS$rp{߽x%】x.XV׉^_܋%c^ vK$_)PX\{w2_8JW:+־y@S7qo꯾>E@*c]e/Y qyGus}08;zߡX÷jj|1XPZ\@%zEh yi>E$ʭO=$AGڔ\-&Wyʩ-_ĥ86VxR؎2s7NfgK$0V֕@;uVo|bZ,LY12SS(¼/_+~GjDիtZ*zvkxZ/nw="NSnr*Vͭk;2xS wi I{P4fcH+퇽m?`荵MٸjU8o3K]nd O8)B#mE-#j'=!p)5_58tLR}E)ᅣM)@ 0Ikf6npզS+iz*| LwQ&-j R29.Or+Pfm({fآhobnY&xFn &z cY]}q)M>L٠={9gO$ÀOAˋs1>]5eeoΓ<|,dqV0 МH"͈btpl(K51v>r .]yrob6>%5N5s;Xu7{ph w!mpĚcËyua\'쩍i%~g>6.-'R1pDC ! opaIG]9IJ n@:!#UuG#ۭ$մI#f +T_PYc ZXC[6y:fOKZK{V 7.2,2MKm9nD_6-F6U]?Vr=L%P!2TvPU1TFQŗoעZE '!2Z~$~yƝZPCXhCRiXz%<fν]Pc{N y:3p`}`@So iq=KK)7.^taܧDP1#\/i=}õyD uLn.0Su`6EQ-x "n}b42]P8p`0 2J/WeAU K8ua y_8i뼖yoAJǏཌྷ(Q9L^#|!e1lT8VU۶v7[ΎZVW=M{|هǜۺd_VaC !~s4G @Csn pAT<^𕎭bDG'aD]LPܚ ŞN5RKAno[C~I`F"&lLL.x^RSGJ79!YssW(\_`<(|'X#K<=[#75Y_jSWR7[ Nu9m"߈nPInʩiTN,Qaᓑ4FױZ`l[27'5+SxSω^i\w ]1e%KA)V^~zm)`z}; U\kʘIv7w`Eo̎|b[y^reHgJŰcYZ}dv0|6Cb Xy LP.mS#m{(CN*ήh#CÅEiת[5vst>0^IN_(땜< dA`3 7Ӌ.ӦVbH,̤HK #˰lWVxO" [|ЮlXG7wZdU10,BHJ1/W?s6XA'Zn)><9Up͜JA?)Yt@|5(ѣ,?gs}PFDzaSv@z`ܨDaZv}V|!=E^q/ =}0n'f3 3ݯw3b.ݓH ܣЎo\E\ݛW=sךek.I FUMW`dNSZı3,zJđ9~ N,oTj'O4F:L1gDKEVה:^vmiDEҏ(7ЃTRޞb@7R-le!`d&t=W~[Si۝UX ,wwږx$1sR2[HW۔$l?j6q|,\rWy"YeʼnVÎDT?FlQWȮG :c>C5~՘JџY7aWsf4X&wJc\|kXQb 6-c?8Y?y)IZ~$yvi5Z%o(9+dn;447hxp+1a?a#V1CVւ(7X.fdn+ț0޻15C\)~H{$ '~fw$t <"dj?1Q`? v}4&\cFUDMq9wYu+B?+p̝/B/ĤCafO;K8Rm0tSB+'ɂX*\R?YtmdY/7*tBVy0Ðۯa[T-[DRIf]9wTTpV̬*q!]EьqԀ}SzFmۤf΂̿ds4'{&q.Ȋgdšr4'w?=7ݽg`/ DkXeJse.'-iP^Z5T/^2%F$}8֞?/lFZDu &&ob.u=w 80iiiA-@G#~+?rHTz{  Rٛ-[4\8iDLuܖ t/&iP$ 1@8=?Zdie*ewMР X"w ε+9 7Z@NjF2hd=jF']/᳘DS}vF>ɃS~,23.<{?&.s~57_@*7vD9ޥ3]NpBTfK7?mJeqzfBfJ~RLd `l> h! 0 q80jy1 O}R[C2KTO(RPG!*$8Me_$iK(o8GxEgs)7KoQeCe19;شN>loA 2.i"mpG Y\6HrsݍR.mwmd\sIXB7[M}^se CwڦEc:S=%7BRdf5LzZ :doҝFy'|nE|8i=ew0@J^i&mw`N[IX57 'ΐ-UIP_'M*cB_Ak]Z80D; QŁVYg`pn``pRߺr,\p,~٩`#}lQWt'GYϡ"Jb胱 B: ` = Gڄ纚iv|qȾ-_*n2W}ilWTl,+Xw] Cⷲӡup+cTOֵrW`&Oخ,O[S*9OykY$|# 6q&߅Kɏxy00oʣ1һ%AmP>gRC5pǗN^4@(͝ûV3'/ ;2+ Q7UX6c`o'{Pz2|PBS4 F1p}\ 5+*- 3,+,CYrUo;E瘢xT$90,wR <ƖA I>K5n|LO4셊~j[Q=NwX/רLC[TQ>Њ' a,-yRO|Qz3֠D"]eMXzI{Cv `zߙpc,3lXt۞c {,SI\i`!/Pm AƢU< ݩƝڠO+8X߭^ؽUSuTF6FF50O=!no,f]2^nPrjq$R-͸cK)A^bCoNj7gBPfమn]/ߧ)Ufz*, VC8!6vy2 TNon[81gN G5`ҡNVh5(ܻ"Q9mb*ct-ޱeJiz< NhCːsg N0}_^RFju EN{`|rg|9|OWs]bv r!Y| )aw愔 <+V.j۫(:{3ogKw?FJk{e$N=f)bug6*h7P8X>_I4CܤZiBaf2l'-6= /RUF&h3̵eS:Gϗh ^_Dn_ r+oɈP&~h࿚SSN?;Bɀܗ0ޡ|kǏ%Y #OKQߖ8CCi4|cHRDi~T#8V?q͍WFTG;,W$` L#t*$U9[9#FsP 8Aϯy|A( ~x~<V.AjvaZȭp^ bJg p^XϪ~zAj8X?v;GNt-r/+7ѭk܍7}q wc]jF&*K|a)? ܳfn0 BL5hp݉:sSͰa7O$6~c]2mcW+e`ejD$ >PИG'n=q; 5 GƵ 4?7u^zca,l!Y^tXG hmD[i1kTMR'dk3gY~|Myd.>m ,Fxi+KȪN~.?'!^KooAKTz\( xH&"le>WJW88`* <&}HOᶰ7 gw eI9{W[,jp>q5ݱȨgcl:9 לm1ã"B c`KO@_ŃO̤*CȿΎ{:C@H|ϝј5H 6RNlK8򩀹?1F@@a?6VEH4/Ί+YHtap܋%S.J;.1دawx]`X(4$tmF_CLW=F3f3N\T ɁP(4BZ*)Ƹ}*>)J#jXIK{S;9 $Xk(.D^KM~5~-ڍY~K7[cIr]q~1no<JG9rdj5m]3G7nwsu/>'4 ^P;yٲxCR,jarn?ܯ޺LiiŊf=xdm,]w,鬈LW5+t\0ĢSGU;]M/0V%{;VE:JF$e+mGef׫4qly/YbKT(`2yߵS2W7_ .R(!qmA{qx1`-(Y‚Q>LBCZL wW&J<W= 9ci_|E-Q[7k";ű8-8M0h؜%ŕrE _=zU[ͷn T oM9n=`[-FOEAfOOnsė pUu܏ uKTԳz)YFM|] G.2, &hnϡ(Ѳ p7I>(pUR-9z{$S&l^Ѧ[Lޭd[RZrpJ1%`g1?^X`n;:lECChOzXpӛ?]̮8)jC;RŕUEE"&vfqےW\ɗzBϣIl IOu8U%92 `dG޾FW~!epU'0-'0=G>Y#.JyЭ" A0Kt~CAQoȂ"pEB E"daCIm}D0`y^kY"1$r8ɵ~3ZHK&J w.;nQPk$4-ڠ?ꥻԋ:\|rp9E Jz䉯?*0\;>Bq ޫ;~u eW]X>z|`%&ʻi<}EX,eHQ;/8CEh{,`XO(̻Jr$4k҈M0/e/䍕;F!3obS* 5TUf 9,Zἢt;T8]!̉c*L?HBWY&o=)ɾ3JĿd69HP;x"INaF\IPJAX^[>[_я6KL9Qd" \~›>t <1;2J\[1`RjsSG4F>NSNiD%ӷwé?u~͍׏>Gqf:-|?[e j/I Vne$Ҁ8cZmK)Α tx-`Qph241l꩗߄~Au%ДOĬnK-MiI9^-.s*;2KqxnpW;bcS-hc4*+9rss|@ (CY-ӡ܉}%T=vA YEjqyZ!K Gc>|\p@V|8q[C^m_WН #" r ?v\4Rrf:%~% ^##>j+wwU`ǘ1ή.t>S~Vl"Ʃi3#$\0s~ׂXQDL}j4VB}񮉰ӳ,߁|R-fѰd d-%8^lx}^GܗI+W79Hh:0+2y9-`0WL.)51+sV^?RЉb'Cc ܟ|oثIP8[v9Vٱ%.D+ץ|܉5 S,JY>õp#Y|q sB5RqAT3dL;Ż7|uUk 4m~l70V{EekƠJEWhP=&gEo s]Adgew*0Ն/3T6|t[ دG/,A&N~EfXАA/*sp=._e+sR.̙qC69I0U6ۄ`R?LTO9т\x^ɣӰ[bzG='$L޻/67iK64V1JL0#7O 7/#oL~0Gl BG#T| A^$ML@lDέ0ub+tƙqښ5s$V3&D0ϬHBpѴN4ߝbX+O,#N X>f*Elyig:ڿI%G x?'.$\lgp;bһǭvܤQU4Xo]і;][ >0p-hOa9ق\+xn C&#,uPpV6(0kŬNFF%&l=7Wno{SԘ5+k|qA-M5x5U j|\\>L4/PPLg||w:r?Tuo-Qv w%VisL%N^"i;b4pMb?T~_Q&{B6RAN.Eg98J&q3R=~{8N\:^ϖ\h?؆-B">J@h0W} *d2UPI݁AdҥO݀YMOȕzw*#y rO,9YS& -M>R᫼9qQSY!"|_>lj!?W)(kx¯2Dٓ:~$)S @Ƃ!.ЌY-uˉJ IRw^+~O?в;mLXNJBp} _fxdW$ Wӈȟݧ ) q\oly'|oGRpʿ_殺~%8?׎N<:)!qe ~UP-l0 qiM;2>N O.PⷽN 8lDR1` {pS|8s26KliXӹpB3=oFG̢^L̲ï`\7FhRcO}D Db2@' Mf?Y B8Jϼ⓲;ǽxf!",?L㔃?{3hqbd7yYͶ憎>yYP[v0T.%C%tx{EΏV-'dEh{< 5ttIip$#"c(I}Q`u:G3#Du=&EU 2gV$8ʟkcE1§"P⭈л]+_9eOIfOuɩ6P&y] &UF91y$krvC]~A^fLU^Lǫdv~ $SǏ _d ADZ?[meIqne}~{ܑ"9oT?#0e!׭#ڱ6iN)(} czus/pPMC<\l*:稀g8wMkv"Vy#G)!w5BA7}m`k%Υ7 f8Zv 3P0Q+0T#8w|+ۄHh8o^Np9Ƭ!/AwVxڈ!{ %s,90K+\22BКZb ]3SĘμsNܭ5Y7ZZ$ӐPqv=FmHJ;9gc#%lyK1ފ.̈x^n?H e'a Z@WJ-;~ g:XC@i ~R,OU)D۔2r DYzVtRȹ*5)0ļ7%9K2{xm/-Y-˔09XpewRV.8ƞj ADaiKqU[TqJ/+c/x.}T7Zh*B_0WK8p甃xRЫf3-)vR?nEu '-ţ&i&nsn:qxY若K' Ml6ф{g!/\vUTr9HCH=JG7 ݌U7ግ]-y:hIJڷe!Ji-I-RaHZ:Ӳm.coN]:iln'=sStA ^7a=[y DK\ϲأ|ї+lV1FG*#uvI,s89bGs0t$ \Zc߹v̎D$RgxM)0XJ FQ;AJ@p,>phR ED!oTN4kٿbQdKx(F:.O\F4I [G(*ێktޥk" p?JiEo-ίQf6r3ʞ%Ԅ݁+ bD w?f>粂,Td+?7wo%ǜ~(>*DuVl KV5Q9Q/#^  `՜OjѶщ&䛩J v)&e(XR0 22埲iOv .yYN 8&ј!%t1.Up+=2XݳŖX |7&l Pdך̆=z( u´]dU?ч_c>ΗNSY4-/ɀ4Pw2O[oq-:B}%ݙ˭{œ-"[R?5"$)S~r0bQGhZo:TWKrmtoe&uk`rY@uv‚7xJ%hkcx-bLzu vFbaCL&y ~R&K$ G6[ř_2fTW5?Odz=\(٩9U"/^!e¥]hgJ-иmȓiE>5S2OG0 )_;N:3^=Z#{՝t6P-AyU+ mo|g\.ڳ7*A"~PɀvnجT׃r֟+x[h+o!>WC=xM M 4)^ƆF L"$0v/Go?OK.4}G!"乖M+B O\f@mbuz("rq6)MDt8/t21]OC!b$hd݃pCJyBxSy5(5naZ u@yh~VnLG@0Hndxf&`.вDEo]Zg\ R-|[پ|$-_g y'HJveSWO-XM Yv>ҬwNY;( Y}0qi3h+f)ZlNuD] LM&pظ>D.U+dz/n˱ʯ=wnySʒYJW>] !\۫_W 2xl]TG 4ВWy>"r"]M6_yDlXN{56<װ|0^n"P~ěEa]d5vL:sPaI Z 0!3߃h#Spy7yWž6KbMw #UQU.i;U 9| />-J^Cab tΎ^ QTWZ@\DcKso`5@]Qb-qW_Hl&K|_4Bå⫦o줛o649%UP;Ar-q"νr^[`|ɵZ~E(kb#.xHaM 5 Vި_F6T,"OKן+ y_gxةEcAޕl@υpO㹲Il?Wwh.|_:DK{da3lj_F`3xPԌ}aGU2Piu2=ė}:xe5ʿC\m m9DS~N YKW>?>kńZ/a4wͶjz`FԧBQ/#$J9UuVLip%f\A0;DcymS ߣ9^aDbjppjF|:: =#]z%tdKcVr B_w269PV: ):FZbŴS>s?MqzK&N8ϣ:]bu ={Nή2Oq/SЈ0!L;qGtr"Pv><"`|ߝe>E6?CH*gp\|rRO}Q&N7\5LN7'YFzвsH0X窿0{c$ARQ` 䦴 \DtjJc6,H ƙ7jLJ !%}l,N|FOٽ]U|AU͛\uz e>I=4j /`E1ojf\: ^]T /a ]!as VLp.ĞtUut}3 Fч ߿NVgk5Yw}@ 7w̮Ұ+-J gE$*I(Z؈e3Mԕ1 iLևKGY1Xy2h;7[[$Q8Tp3aǭ  էAvoQ3Y)ؑ%;Nyn|k;K3zeST+m5V/[oK n_MےKިx9%Xo^w;Ю6>W[ t0/>FgSn;?z& cOh|.m؋j vIH]B yx M P,5-!vWrarZd?8D|/O4ɫ Љ] IQxx8i0*RiʇgUSAMP:rOϖ5<}C791ꣽ3l_2F@VdǛ9FBfD'q G.GN8PU )6!sv *4nO:{T.OOt;*h|zUX>2'K\щdjAs>Dor5WoY-ˢUL%7Yqzmr;H=2Q~uD SL! i&3d/tTMU[/`8^{ozףwXryPAztXfGMۗ\QAB<&Yҭk?1'~l%NYPL_ Qm\òcJ|xVLpds߁t,1xY-YOI)MMeb5~-_јPwjHƞW.L Lquϡ پ&BsL4X.-7frZr{~3 lq3 ANoQ])cR,uc./(h̉EJKF7<LٿɢA;+_y,AM}Sf Aڹ$8@'z_kxW'+AIHo+WFO;e<)u^^cf15<0.hwOekŭ:xV -=KjKċ9R;ń?"TZC8iNhb"70Aݎ#ZnEMMZ0y2%fnP~bMp-*;-'Dzyg<ŝx%g_@I>l/u=Sp[i[,2J騟ln E%>k! ÃR E$c`5ͱ +onH׫C]8ζ";0| jC8_˜#t"83tƅ6*ښ*,/ pe˳GgI(\\zΩ/B0O>8MNA-@Ns5x·D;>uե9.hRbɌnːgQw6޸DѴ8Df$ʐu]{%oGDDwHufOC3rČLAAm/mGt $b{l5N.FW*j0}',Q$m'f\ OwHKj[ ehp*)FlFqk=DÖ]~؝.c dAfh|<~@IL!YZҎ~ڲ7C%0+VPo"&}T%p1n񾺫 N sDϷ|ƺ}qn3t3rqRhÏ qyYF5&zd@jtaS*:Q!UFa8;n EYmzpKv{;kP_ 0{"zisNZܑi2ļ] _},k=1U2~w_3@e^1}(40@(P5Q}ZsE7]xy7>kzʟI;Q r~)}WH-" \^0A]Zާ+pB Dh_,yp/O00 *h¯ejXxEM4#Wj6R\ߘRSDT5uL7m?b'Jduą_\t‰Wu}~ui vrШ9iSI*y5үa6sh8q:l#,sʉYC ,sM5T;lWzu$8So3xBMy7!j0a2)DiWMMwsC-rZ p@$0پMkE#'q5^^梙w8 KZbw+МOUYy{@C=m"9ZlSreC*ƭX$բA*.WƇ xJ۸ѷW!Qac:Aў-ur8n ^;s! {H>h6YEEo^׻_22_ˠ@\ܹ.𺭛nLOwOw4㭼dvۿ$7-XeKOf!OP%bGrs8\ ._o0bG ױP";y!2mh"ξTǍ9Qg2Wy3PUR͗<~pZ# Ci iSCl&a"ee.7^;׊aa.$lN᛭KG1쩰/$N(?$CP۠lຣ'PsTG6|P\4PR^WP ćgyDI_L&z@xEM er# UV- J5tu=$_*#/HGLT֠ d".Kqփ-H{hBN؋&-8t e?0؂vٺ=sP8O.@.HnZ),褚0&:A Qު""(29e)@J@z[)'t}VuxVZa+Ӑ.YC|YJgCxF(~-7P/_*GqFѺyoj~@WKFN( +hߘ◖b-|ru|}E'XAJ{V/֌a(M27Ԯ/4vy}:#) -,N^Pyǧ>ܭ$bmV7}OX~hE%$ ׂLSg3UΉMRY e$(y G~fQ#o eǫOLHvԖZ2+N @N 5?Nߋ/rUɋQPpka*DF3zR1[077 ޲LPgl6 J48dv3K&lx"- z zD2=ɵNd$E?7M{`btؘ8pggn3n!~\ņ"Lw XZ\ ||B!REe=OƹpԖ9 === 8-%B;)"K'\Q{NZq=PI%q4B422ܞm"AJ=mvw5J%ϙ  evgA.K)H$!#?apfd"  /dGV5DWMiów9ۍEakvac\\ 7҃:SŊ쥗>xgK%DQ1[Sm/(&њfuY;hN[~ה;痗uJbU;ZϵH=֘GXO@!&~_%9>cI"Ӓ\ƊY;¬礖sSQB%t6GlbZ-D!?dIhMQ/ k`8 rT`pӾX!};rL4I$P1FNUQs?PoWnROx/6'/3A- ^YPmz 97F6A!B4q.Ҡβ89=z6fv)_E%U}CWHUOf˦eqZI> Su|!LS!Nݤ2[~f'_(H,W,RM6 hi~;"W/hCY:ԁ]?nLV # *5ڎ]I @#'T4UY*vѨgNV%G*uL~mDNOc?Z*x]z㽺#嶙=s%H V[] ΄^Any5tַuU.R뀵fOnM=阵x:M]QDÕ\*2Np$創<Љ睧 Z0G0Cy`1qZѡ;nn evC>Ka >]0u.!1 Jasf#gtDa(_|LT$yZ'w K>! >0lzN _؍ʍS2纕A;W ,?SOLWFn$*$14=,`~ePM3Mz5$m6[L]J!ef3UJ[.f@U\u K-A^ ~hD[c{7쉧} O% w0|B=H7߭w vz|ଢ଼c6 %;.cb3hb~,+kCK0n3sv@ja=>ۓ[!Bؙ3l2hE3C‘U Su%8l סΆΫnMi.r]E3hLayЕXO5#bynU\$UOb`+~s/ڋY}fo bRuלE3X;۞pKzhz)hlUYҡ D9̛ONX?ʭ)3yUq>͍Z"#])μ(<-: `= \"V py R鴉._^ +BH( ^@> D?(h?̡vYWU/ wp8-_uT'GS&rP3e4* vg#rٽi.O^Hj 2B;V/g#\ѓ#BL6+ "! .qxY;fY|$4L,ѽ 0EgыT\LiH)޹bCrǘzmD }K6YKŒ./k#;eN?~ iv:&F#] ;cKв͌6.[yTIy[b) ڧ:ͣv ]H_+.Vv>x0 ۸9bxJI=dWXH(vVG_ A\482ׅ7#$;2ܘgd6;]*Nӧ`cV%}fԇYM;mP8,7><bmZ 6ogثXGA| UW=Ֆb@uZHhqrqbl6o E쀀 A+JeP\9j~܅oa1}%ƛr W f-r(eN91O]'c6 ʏ@o[ouHZ?R#kVUXX)vRnX MNbU8i3Z0Lw2'%Hm) r$jjYc)]Qi-JTCۻ@Ӹw\[n3 zR4z |iҭȨ+BRa:3aџǁÑYkZ+*,Yj k8D)hdp.9p(vN`=K5,uUXbqEWTaߪ X~GO<0'0*Rh+jSk8+ߏʹD:lS/I<ۤ|h$7俌w{eL{i:'e\$thʸi~NDݏ_)s[_zv=JBhz6yY?* (gE"X{|Gt˼硕&cv-Uh@ dwh|Wt(f n+t񎡕l8)dba7K{Hq6ӏzy%j㲹lN?Aړ9B#gՉhOPڝ0BOU~)Nq=x9 AmןkKEDj_Nj}}O;ny }w ,LC/z-| pPU:.Ƌ EJo1( !)9 >o#&#/*j@]a& rny\E_{TH&K`0ڜO }% CD;Y CD1 ]Ub#I7H$98::۔6ܮ?Z6=h^0pk/v,]h o@5`o[Q0/0@37+N.Sw`(QTG|)J[ůf?Rz $+dą0;?iG K;ⵕ&'R.(7[R?EsH@tVASHj[R(뭶[^ԅس蒟\$M-CR3Fpso#9-IvCIc G NOZ)RԔS܎瑏Le30n\jbI.?E%1ߤ yb=I|wO yaWb+>u[Aډ$<DKk B!$=LC,Q#82^WJI|6_+هAbON`-F F д-:k2JQt$k׉Yh$𤅤OV[aI50.r<:!fK)/K l[Y `Zxw|M81Yv2nw_2]0Bf儂p)4xN~rL-B x]ؠ,Ua)1Zc[ DBs!L\M"<0)S=p ,JE#=FV*{i= 6G>sPK?ZHv+o:І.n̈́Cu}et7HK2n8\J aC9i,U$ciE'/)FoKHz4؜Q#FW6$ueQ>UjkAG٪bX'BOr''lO ;[ ~?I IS+ovP썢- Z!fY1b}ǻSbZ cl'U#Ot)yv;ؒ}__={{B?.E&8Di;ł^ۉ}"btJju7 =B Fb*R3L}& Ƶj}t&22""Jr,{,ȠcirZ-o.^4ۘ=tx# ݍ}EOc.n;ZEPƞѣ>Ym2X_ {^ˈFqcV!C OvHLri1f M4Tr]D#3QHJzRxư l)= 02ro){A9K:Ҝ?yv: h'D;TXZLL2J_F!HKmw܅̖5@{Y,s]"A'I|Fm:/WsΔ4AUnT7Kk23A/nNJ+ Iܺ6I/Fe*vJޝS}wS* rS`PugÄ͞(4Jkrz< MR{JN:l-QtMh;) 6T$δRK3f =]IEJWBmtG AHhv(gZ,'õ6sײ?0ʃak aZN$ukԔ]H Eq' &I9#k\2爠4qYP+T~oLuZ!Z`ai/+=HZu흜1oF#~`C kuq@E|{:0F?6n {z?R:~l3Bs MCQn9?_1şmz}Y7: nav3k`i.V 6X<o cM`pȳ5юSബ6ܗL Rzh4/u|ZUMuS#fOgU۪ÚsItܭS/ُ\_^1ҔDZɕ=cn$u$*Jc_U-zBq}` \υV^6R\ ܃5@(4$Wy*^<*:Gx t3e#eWuk}"7\ [ʀfOjv3YyC'dIMCdp&9c|X-B-'ٯ׷p<ЁƷVӴGɡ X\.H t1@`aNoCׇBIҧxm4jn{blv؏8RcJЄ]r|!M>81vLL3s$hg%[$ܥq-4*[5mMNӀiД p|L'nvPmNޱ+p|4fJX"mJm˝VZz }NSi#Zt]jIu\~\^_kQl~m@xx׼Fekt&xkbhd:75z>,LPCLVʺ"j=;2l6SrbELIa{'e5,;`[st}b xzNbzI+/1uL$Էln>gtxF]wۤ5hܚ\c^Vh;_σ ,תlzCO?zQ5Y̽[aDQž<كf Jq* -FpK=wgh﮴Ϣt &]H2o ~K( 6<Kk+ Td6>SBV;8SC虻ƾV$@WXW+nI_S|firg&4{,>@5<\=,V%7w5 mhQbB3Ԧ^Is=8Q MIOӸ&ԎT71ϰ5w|ԣQK`L@(]@{ _&P- do0<D<;j:u}iZ!˃bh6VZzB mdm?^An]# =g ,60OX0rA&{?R0ۆ0)# y2c7*R;2I] HG}DOqDe[Ѹ19V,~f!4: t#Sk cAl'٤VMjJAx{]B`¤{(}9b!eY n3Wpɏ8 +"Os;'TVgAgXG^c+'.T cf7 !i /&^4+v&=xRvM|p&ɒE=5u"g{%CjnSʼ"OYbVىPdR~xLȧ0l!h#T9ؔсYē\.,=1M#\Z4b$(x/t߁4`oD8Rៈ L1{(e9"¨JL}-]22pw7&ܶ>;?G O(#'ֻePُk21]D=zDh t āew{x>ܗW7M,_&OrfBS[6geɧ4a߷POi wJ{pUR?%GE3 q9o\&LA}?^zDm]6Pt&k`ªߩ%JE<7 4>tHŞOzl?v/mmvMxDQ_xeObDIsHWD*ܤ'*ة7-].B‹|;@%T/ȼl~.Đe$b1݉y>j+OɁX"/>]23bowBFؐmߵИ̳=tUB%Db&e[5|zoU)?g 'B鴑Q‘`yfxGǛ6& Ki- 2#@֌$&rZ\S7w}+\XqjgؔL/YCa8I>S[C_cvb(4ӧ 6uu]c/Jl:{:m,Oy>R ,Be]1Ae WO&ϓkNcY =7'䃥&*TǧZRosg#=7`UW |CT<}( p˶5>ya֌YE U?ehnF=5u_[e )Ѥ/m=Ň夋1`59HjUE͗ޜKEmπ-EsivGeI6t`H,A=yA7; 7m 3} <ۄhՒzǘH Iz m"IfB)SpBc?@ɺY#'TM'&={/Y#oPi8?݊ hC՜O.8PAEgڑ08Jf_X- 펩q̣}:f(E_?O#gz=Q.4Z_]"ŒAsKAK:g˼J1RR~$m rXgO眈rv鹕7ؤ n97Z$TЭ ڌ_F)P&$~v 1> VT( g[z3_2; KqJ;dWuj{XH[;_.DN J5[}pMMwG1v+cv'oDNO }CK4vYo 5Mu<2ZʶU"HkH hp9 [she ^jMS/mJ Qq nE |T)ۣGWo ~!'Q,OTZ޻x?Rci^5+1ݘ4lCbSDMEobe?F[Ek%g)}ԈIzvDb8l&j[ ~ap=Y=qOBiq)Ci,1>d@ NQ>yQM/IΠ8gYWdF&y$Ƈ3@+'1(94^Ϲ%Vٸr?/` _RX]ޑ ]R80.fkrA#{3B>?Oo`-4NǜN;XjҀ7J0$+/m'i֟8ݡ04)3v\jdږ T?%t;,Y f@/ɱKݸ@j o:TNP#7F}lռ׏2:B1+Yyxxˉ=-m7ܟ7vvK;N@)g{B-'iVhn4&a/{}#s!m ˡ[E]|)?a%KǕD&^<Ƹ/d (vwYݟ2YZEv#tJu|1jNdk _(Ep:ZL֥u3ă&o9C̜[%vuihC!E(85_J 27o`!,-|Jܜ3SUGAdOF4UVғ.q߳qEdմu{?8B꒶o#۷U~]֪fciܡp[$0n |&r{,B !K.CZ0 CəR}WjKVWeGEs8wDGFSS2:~ބ(v 0-d+r&_.rb@ 랺]utENv*j.Dhw¢hYoιGN*)^ďA҄]!kol}.y^&;5u ;ע|igyo &!j};`- `Ci!Tqpiy)N#YR5$W}s4w 3y'z|t4 ib g(1+鮒+Zuh&Da;w`"ɋ~#hos1&h|E~ ~}hst_n+;hƎYFTۡn5`_앨f)-P|>]9~3 ([>QaՃ&eoیA+d ps/s l = ٜBa|? 4lS7˲j`)ȶ{(A( Yy  @,a:) SBN_!X#p b3v M!,O2LCO>N@O〇T6챷(S a8:Z`WXj)~a}@$hK-/HB2"$]]Eǝ{PW^?(hVϯgs^T]m6w$J5|BX! 7OHy.RS:P,[٦IrBmP"'Qc<):LXMcv'x.Yژ Hf.O,̳L8@.ǓGX)?jT,vMzqBeigNf ga>rg)`-8Nb #oD_2p`Ҩbr IyM9ܟW'k7LՠGuvjQ W0c;Cjv\uA VEO^OPSp3͠BZa$qH52OLhcH ߖAA.-^;,MBX>1_ e^u%v L HTn0ge{p9zS<2x~ͣ= Tcz_+VӔ.ιZdmukV#MbQ|Y:5b@Y/Wknr2'RR8^CHI˲a**,LP ג1}61ۤabBM/}8 Sjߛa\SLr* Ψ>90^.BW "D wrnO5&_l+qib0$J)gםj,[CcL\{@]{| |uenK#&t]7HGn}8_{˻2Pb,ٞ2N_ aqr7 [* Ѽ>HPysdNӀ=˿EZ*TPNL*͇L\$ͩzVӛ֯!u#Ud%\ftpfOi]֠NeW3+~dO,JpJ0Z!ufogp@1xtԔg#( `ǞOjq!l[a52(![b9j~ﯮe;\݊E!%I|(bx?Ү|IW6`tk-;q#o˝/vilHʷ MWFa7 5޶b4SOe8dӬNPNy~E)-bw3Z6D ڤ2٠#K4gǿx !vPŸ3UʍSsxAc?&?Ţl굼w4w߲5c:ׯM(#gt!<7ذpCfX @f ZKoynO|LS_/iVOo@ jdcTCZ(&п1}mܸ\rEŹWk~k3qUx^'x;\aWwf3i-?ƧIInя؜/UH=x37_Nk%@oZøCב=' qp<1k=TeUclcMq_꽿=DmrrnCt~94`F='t|#:p;W!r~ _j=Y]{w 9V6ZCNA&b*Ng\-c[Xl.0A%Oݕsj4= ՠty&'\Br`yXP ~lN-]C^^0rn>vWaEoՖVs!B0(X1 .[g?sӑર&z]ye9&Dp宖<-WAWGf+N"#G5׋^(/cn]! h#T<6(+yذb{ (!b"+8~Sk|SY'-ߥXpC)q_7#`e+ic}]XhK-Q,{5@vM5Aux8-!J 6-@/ 9pF'{?gFtyM\M<0 B`]Vz%vs8ug[*Fȡc%) *)\0e[t8d㍷Pb5]XL~@ȡJrtuGGxvn9Iy_/=zen—3=HHC/j;.g5s-r7_a`/5>U8K0ݹ*#U_Ӹ_V$%zΝ,lP޹7a_W32XNNp3&{Lrc|BY /\4z*g n(/6Tͩzg٘-K),rĪ$]JW0,owR|Rw<-Q0+F& ь?vj%d rK],u1zƠx24ckjr(qwK(yk?QL\OnX8Ko) lNüؤlI|.TJgCj .<<$eVϦ Mvȁo-Mbҏcv IY?wtZYK,z+6;& RL0~hu"3ʈ]8]ݨ8zܗ U:ȤR֎%oFu>م+pc oQio#~P/E}z/% VA 2}f \Oq3M^-5ѱB& sn`L>ڠ`#0"etOcmwս<>;)KZ&jHV ʍSOTۦJn[|Go[Uk *+=SX @1t$*óW%:?2QC ]-!Q_.ٓrAqQVͮ\A\:SH@ygk*y VQQ~Ѥ2Aבwg?j Ors +'u"E\5c1ے%T]f yϙ>v5(W}~eZ= ibƤ#n.!xuepDhg/ Ῥw1@u8n|W~[*) G:Y#Rc$3Vϳ"ȍ.\1)iGޚ0X'Muq1ӻyc2vJe®n_rxt2 F3|= WAXO pIԃ2h'AQEA+rAoV(^}`fYs/Pc3{ Ht y@R,Y1/!{1"Tꙁt/%8Ee{'/"2G}B'a'Vܴy 1^,c Кse+1WPv]N^~W_ש#uWfF[ !,+E=M!M[+|Jo[Р4J=j^<N^9)W.r2LV4m;5xR_NVDќŤ“? 5j*qy v H56~қZ)p).ώxLk|i7nϔ3N=XPLz[5%Zf s&|q*Qn yeWbχ">bnXFS.J`uįj?w9T('A2UkB|D݀|ʯ@slw/guw5HE4f;vҮxd({]h5T/{GCwrXDRT-=>JJ"*ɧm_q3!g |C#,~9m,1aՙТs3"<[h79umM^"A)-:I?M/oL>)_a٘w3e^t|Zwé0**L]8PϿx2ɣ6qq7Ig<5Rb66Ġ}o.Ttѵi ms&EXF2AgҺƬ3SE˾aa\o!Wq!'Hhki 3#c <4rS|`p˶ә k;8'[S!u%VזG]WV2E/a̳\ -tMV Lv~T'l0 1K UgU*$UւJ4|Y:AWaҤjnuo2tNF옳C!=x-9WPovҒ4Ⳳ>3ytb |\'p,c/t@!=Dqc7x`P# }_.K!Д2vԄGK*N@W;_S`剘{$0kiTJ+/T"5Ǩ(~%ydȜ'tJ; zTiѣ*iJՊ)ȼ"i~/؉iΕ*'H3G~ͅᢱ 5MП>#]DFdYUj &9G :r3[@VDNe.*1ArdFc$#?;Jpht7uw2Ep\;;=SmJ0PDޒ`^`ƄMФgQ(dSaඤօںaI6{)9TSI`UԡU'd>e !^v)Ǯ:]];?Џo|Af%qGY$4'i jQ<_8[Ezj@;feMRD0b3N:DxcRDuANDQ H@i]i\6qϽuG}.2rs&bν;<njJ .ETNjq-yerp/AI4wO>Ry#U)ro׽RW_$ĆU ل j0'+W> D$6FgQtA+t*JW <P3TmZG+7Z,nh*|E֍z؄vl=Bot;+[ELjũ`hymF7<$@n M{srޑ2_%]T(4wca҇[X2-k GBE5,2-%AB10-9J$b"g0#y7QIR?@yJ/y18cf~`YMt'bU|,/2Vt_04XwBkDf&CeH2RQIH{C> uPܙGe9D ֍fn?3 3N{tPlẚMqGܲj+,s|˿Wl[Cs#I=ՇWEHhNd[ΥL[Ѿ@N· m4~cp7 Ua[Lqz7=yԨ2r\3U&즜UIG2Jyɭq 'g p)Ipq-*tUF\v#H`Y'!~6LP6oMd;cEeA&绲]N]49]U0]\X}kۗkց9i(J՟D7D- s'y lP2Z( ,C+ؚNצּ(G0s[tIԦކ՞,$2B`ǿRl{@hna Ag(8\<[Mle"=cjmPrM2L*EOKQD%S}#M/qn2'ƪɠT8qŞE8AΧ#2٫Z)`N)~p[QpӾv_zI$ls@ŏ`w˓j*4Cۇ a։[b ^T!ec(c̻AёL#ڜ 8](N:Hd m"2y Yy}?dibQ{Zq˔?LÊItaf: t\ow4镨>OcsB>-χ5*-(S`1o 3IOMqy4W-q5z}HPꠖ4~9 N:uð ނY_Jz66NAPWK5=@ވt:fUe&[n Q޷l'r9oRT[RwVΆϪWk֋\ӼB+K~$e*~}یp :AE@WżOIN-|Nz" jaj^; kA9}s8a2}xvM(ٱ1|9CՙFL1`AAгDޡ3W!,H/iXTS/юѨx#ljB4<Kͨ9(¾? k/=4Z3UWg=*i$e]h0榥ՕƣZ+Ik\6JOH{ [`5Vg0ΏI|_?sFY-JDP.Zy&HkEn[u4gtki~v㧭آdm7+nʏ azKs{Uu@t+JerXWϣh.dadW}npqBsP(V"MM,i+N'L{E qm앓Rp2Qxog??f?6Wb *ضb>1 $n6o3uY7: b7m61?7Oz6fl3ʚ2k' W,+;61[Pxc5Ġ )УD(S=w{+|p^AI.1 ghH4k}t u2| ܾ} 򴊧uW!Nr\]-s=4$ 1nC:G LeGjp#%ISPq_=^6bm DiC篰U)pBaK 3^o-VߴY+%5Ό`geV&6# ?[;HPp-$0H%> ʑ[u8COjemuP,_7azzЙAE]Gg`Ξ|!;|EXwZJ!}٬zfe8LP:{a;ij\|y²`dҫ'rF{1dcJ嬴V>bQKl;~*. -BV(pm*;1n$>;gHD9J:Gthk(ɉC5p:T Iׂ:qw˨׽o*MK/L78.A_E E7j]a;J£HG1ٞ3 T{(6/Nk#ʗ8l*"XLHzdlyy`S҅%Gr'6V//Z2x.&sfs՜|YœOY{8>Dq:4ztHn_ MzHz"d[(E-}j$3uܖP#ܱ٘z4\Nr:;֛whLU D&s΁S@7ՠ#xO4 %Zȟ/ \N(tcm4rP>$#}G@/SX!9CUH,+8$vCI?YfwPuD#8[D;.p'{1 @$o,J!)lM9XuGhPgPx;mXl\` 0GQIWMT:I.Q^}בy80)~7 #Rt[=3נÒPs_/I{nAFprPGG yb&1KJ^gj9EqȹMçHr@(: Be jB֯9>3!/yޖ$|!*1A˻ EPL$ڠE>?v,C1I1hҏs 2w(96cܵM&Z2*\TW`}QzXj֡6e+2~jEn5iLo<'FڳXەݔ,n(Nm3ZAgA&6##5W֋ƀ"],=*ekhOM<0ԕ )x/ Ok^U­x.m"3~FLS0$%¤?3fzU' ZT"W.wGҽ?Q|xh9֒Jǧ:1IIbY>Ҟq Ͼش/(b.jj2{Y9>*Z|>Ĉ"`~tAGM#jUKٰ ՏZ/9 cuDTGR8篸YfF_E/aGܤnԌ֥ BV7E]^(Cjr68n570uس$Rp2Z,JLv[$R_vd(ni3wÄZn"(sL| 0/P G>Ri&oFjNNE=P,Ք2JTlfq~$п Zf:ֱ7.clRf06*0y +0XZCc [NhX)3R0>V#5ꁰtߡ9.}Ķrhλ ' Xr{*0_0yΨ\9F6s?Ӹ[b?F!mhYQ\O16 *oyJ C¼ʇǔ]o#WpU[,*ȐY4|".<`Yvq:`etģ4] z~7PUHz^ixۙ@ǠApa6N{n.v9h /eJRe\^4eG:fyUINJ7 M/4҂¯9& ,*a0e^0͆O;񦰗f 4v#U7=% /(VqcݪEdކmIj+}]SPsp#Be#ڪzS6V+K6Fq)9Mix=n/w/8HLS@>`;"NֳZ scbM¸,"twIt?`4,)(fs Mbq\: tA#ڻEЍIBd#61tS8lOcxul +"acqC>M(֩jz.(9[y>gv# 昒"("P_B<)G2C,Y}Prj;.CNiKc%S_8yܡ)Z`AeTA*ᬕcQ%ϋ3MeTns 1:2a=`sV[~ታ~>24`f^z.i,HQG_zT4< Q  e9ʏ=%Π.N>6֋b.g!6z7c}nD%+,ٮ/B0ήn-)t 7a.cu=<<ݓ‰ C!|t<lkTJޣ/@/X *6|v.&_{z@^WV$I",+%2R!z{0Q 1ϒȁ:uV_n+B/gSZ;vDԻw8Ga &}4wEb8V|/R<QAXO#HU6*˹AVZ!Ήw'PQ[Rd]kq8 tҽLN2;gk@dd>{>xX `0j w{]sCy؂KFlE28Ut:?Շ̚i(DɋZ %:F84UaQ<%%A7h xTYI3YЧ{ l#r }Jl$OU+"$83+ PJ;S@Zpx[6MHFJ4ǭ{dPL Bz6~m6Bd;HG ãQ183&V<pkP#5 Ld/vѝdNHWID'j/D:c u>ϬG_UL4U 8BpI6zzk{Sa7.o/¼TFs蜨~QSz.kzY]Lw[^Eΐrp-DVy'u[sU'y}bzq<U{Nww[LaUGkDn9YT`IXf3 I&6ڠ|㦜{t%sӠ"qp:эm$ϳoCʈԣx@uJA lH׷q*;/6#'/Zós,KZ=:,t#m}ԓ%L,0J?/"]gg&B>Ճ_S}sߖ {h4HkXW{C:T"P$=3s=;bf+E:Apƍ}'ݻ- Rqk'Na'\Um.= ⦥wL )a\ h4O1lo_%p7~4# 6 /'* ٷw03).Ca:ۆZp|qc;v. F.vDQw̦Q%z8ߛ 9q9WQFw2SI &Hx1ETnPߓH诪D剱BL!|$6+@CzAy$BC'W;[OR\Ɣ]=a;lHZڿ, =)'b緻TB\X~_#!+I0V\'Eub뫖OG7цk*/m9 A 66*7Cw(ɪ ''XRELJR^\J_wQ^Dxj SOw("CȊ,eO*EJl \_5^ay\ˆP݃|[ j\.l`_ &vB.d)0e!*C0OcqE;[S- ^;}icVkk"~uryUG )1Ͼîe %:U1I|f<56AvJQPr'I6k 8Y~G}_+~&*8m~ 4Afħj"-[ { ZȢRZbwS ,`msFlyZ\f.Tࡻj~⁉w$͍֩,j8&KdԽ o=$eZ R5yZq7gC4GHJPyg&/_3p=c J.y֠q%~q;AXGXT,+{@)0й8>r&2\s!|~r1 ynKu&(خ]k&WH4K_6!h 8y0RCWjr7haZ`5@BoS_=|B@e[1hB}bYf#pfH YaDr~^s9Ⱦ`0$eqǿdވM=B)Jǚ8\lWz^BʄD᧠|15"힙}p}ѸS C8ZpeY?|ɗB:#- <{D0ITw0w/e.«ZPTGDk( d?b"۔ q.hjfb(xj `;4T **zU,\M:&\ ьkA=AOhb*k5ŏ^z@y؎Ѽzz_+4q%犱5^;x"0xqќgBA5 ѬgyMFl@(4NG@w dE VW`KkG@uE gΘRyMcOi@nm:)\qxi# ?zr߱xCB|DيX9.x߱5v,%bF9A94"D!w &F/@BN>If^`y.,"wOȱwsV*B`z))l0|pӐ=mlƻA}CTT]<. ^(ܛ8ED ɷQVF}8yni0z&z܂` 3eUjz؆vD ֎^gh.?h6mް/1EUE$3uh[_j!0ge%$$}{'q,>x`![FT$O7^Ղ\^{s P"}aq.[<w(*imh j0#F?ǀc$k2[Nxk>:*6>] fHIRȣ s.τQ,yg'Ţd!&:A2}R~ƲϤ-h5`‰rM-ChRLk}sd2l%(0?oeF+4KoU|.bQw",}!mj}50ˡĔįАG na2R"BWHAz9+Z̝GCF+-"lu34J@BRx5d}zMxl덮=ΞqyIC^ iQR1{1"wֹIU,G9j6}#%yDa-wKiS2c[ձ`qPV*b;*,^yd򩃨{q;!qxP}Ls$v<س'eF [?\kX!q)E@.97/ 2-4cܹGQ?VEULIkGSnvMgSwM>#28^=`?&('+Q]RTUV=׳0u3> ayc%CGqS\vƦ>L[àKH=I)Gi.-ޑL*mL29 XeبҼ'jH-۪>枓OͶCjhWhىSͅ0R[&xah *W^ 9"EKs9j\-`Q Ri{_P:Q"țۤEJhkV H:Ar-}nlfW^w JƐ)HdE׆Ŝ"[~Y8DDQ,~AR᥻1U np؊ⴽlĎ@nLtcspd#9NР-*ZhoH.2]ÔQ+ൢla\ѫ.lRudE3^]מJN G{;_uŒ٬;,X%;Sh^WYY |s zU&󽫔]y;ڭHɅE1>:[\]5@K`n.>RlKڝ`RWBs#_.1ܷ:P(9{=v-fBmDZ=21l#eE m"C cn=Z"dmv!%rA$e9ֵ"F.Sc+XIvy9}猰-m7-Ղ"EfyVH"s=뫙:6?񑥟<;|?HFf|&3!;>4Ipਾ9K) 4,. *VgLp$67ޘ7sopxe_ kBA2HڶzO&[*VXD+Qv$$'8#8M֘3MD54GV=wc=،mj IoQ.;ȑŬ;M~b?qtw4ldP\c >R s,kz ,>l" ]z_q:,NgfXk\b51ZIP&) |oS/"]MŻgԕ15Zl5T\.Ç^-UDdB%z:lWbУf4vkg=_\johNp6B>;5Ї>B {>/j*W \O4os =2C X+(O:vA@/NۙkuZzP.>(G)~/xc06yVbRj <].l3{ň7RW( 1TWD[=ko2RFlu5ƛ 7dH+Z~nmZ]ɼq)ZxMP-ϨۺItQn$T5h@KG$u he5l^)IRMi{QΝEkW ˚T`}CMnDv/@Buǔ!{`-ܾ8ȫ8S #4),LS|+3 jT 9Bb4<ϩbgU2Y:UGAi>sb>Y1JP©_' '">>꾲X\DXp4*0¼qԓt}Fg.,Ȓr :8z𪺼qnY]=oi21ws iFzٻE4aY2ן͵vԐ''Ư+Z}_ѐR'N^4hQZ!Gh{G98Kh)C*g[gnw8-i8"vW҆J/|FTR;͆e~te}sCoB*`o%!o7klrc ~jz1sAbd$Shw98')$tL"ݽXlJ57O@Y\2?l~m+l`cR?5hۚ2yi8ue_hLgPLҏOLpwLT=>9lL6$./T`il\C8vǐ, -]|l_~)'ĨH7&?M.[WWJWH lBj 0Wr(K$]l!očA/:}D?hZyQJw;یm(Z1jd8-vå w|sAJVLy?&NWOŠ!1H.˄`i.âA:9fAL&ʔDd`G;m7yC(\C } 9 @*0Q'm]aH.68hͽP^R 䚫3hؑL*ñ[[sXnn?bg\P$j#u4!qhAEUx0$pl_2㽻bϹpth}?/;*k_c" Ou6#)H&t)lSVksiV]U(@KdPы,%}NpMA<|p&`@-cUdB"@jh,aAj9&:w8nqV2@e$04m`[)Wjv,(LMZ^DT4]|CB2-oYx_D<*ZC:lMʱSaV8T /xAȷs/BDZhn(LhyY/ꃭ lk8n[' XS9aoR?Aͳm%d g S6W<|aV{RtI^:ED# z=F$:{|fhriKɲ :1<]N63*(}ྐm4a(ϙ> yċE}Nx~<S]FpZnY挶`RoS[:ii%(nzb# YT(A 4ӗJxSV;έM˗M jC37n׵1ﶎs9M]ٿu/Yp?hYWYSU#.Xgv32C *gmdQ쒴1dEr>B4RK鬲W4h(9XT$Ht#I"g@Zu-[vݗf DOȪhMYE2oh vPWD0a܃]SoZm#d\cZZ[;sʘr<Ұ"fH=SS1:>Bn`aG8l a`,*мF$rzC֩\i cwH\3.{~c`gx(i饈`( (X@ 2eY$V!>UiXS8ۀ@WKQcy}U㬉bv-dqT@z,OA3pݶ(8Gc|Ic2Wham&QbV:dtE֊@9 sy?P0R )Ͷ|L}3D]]b|@F$oV*?gLp" E!kU/JU梾 8v}UJd[ʲ%dC@FBГ9kxM]#l=k!4 ._xzkV26]`GNpbao4}UMH'یF"38f 9$V{4B店`bCjb5~m"`ѷȡsA .8NubM!-Aƚ3LaíT۰ķ 9 Rc=E"nΒq@FeI]T;_>=bN bK/) k̂umG*oP:ͤMP]EfZQ+_%Bl37+GAv:X-Gqf"\<# o~b2㾸jQ69բXJwoJ&sOx?)֠XYjL1R=ߧʙ[a;}P>*rcjV0r#lCݡ0ZR 2| TCl>WI ;+-w'h{= ήU6EXllKU0 ?h(ٗ0#g#Xl5\/$ QG-(U\~eqn 'E=; i8T{g[jV=@"cyZsAI;9nUFE !gsQA[x@I}S?&ɔi k05BSYEH^gӽc]XT LszE#6H_,,:?45I/ EHCTg7pb5]౵˒,&].ق G#ŠO)%:vĔHo g6@hx}^Hs:DQ3]"FӖwy) e twߑHыB? 2"Xc醮 F"¼-7~cw9~ I+ pb \(KZJL,3g1Mcq5 o4lx~ItLm3à$H֛vePмٟuQ tK?NWoR8Cͥ.~| ͪjmt.8|ָԑ~" ^*)@+TW48ԝց/hl,lN]pX֕Rs mO!m Gť.\~c1;EPJPj 2W'GG`iLoC_i%ZAa]G2Fɍ^a O@ISfr:W{wD\"%'£i>OPXRz& B3.T%F>,˜BL֔UvN^fyt4݉$Yo+TWʹXhܦ~&}wK^kRNFeQfb xY]Ww˖"ٚX`!Xfkr7Tv.bJ= hqzB; G%2Bg.Om\&IKD 4!2Ԁfb,!-2"K(=N >D Gy3^^T4NR,Ts[ϏM[V6EtUhsHDK뼊Ytr~W F~ w4HyPWw:w \ı6󝯶Έ s]iSvjs]zfiU~n^N#3xtEm3?Oai2(nNtk5Lq i;lVJlgx3uE&d7:%xRZǃ$_󖠻UФ0S9 QbI6o >cL9 gD:͒5|ӷ`N"P[[Nn aԮ5@3 ; <~R"@lOL^PZաY.:=xDq*1C= +0U`7p1;}oNa}@.P:D]d)/`T{ 8mtF <2I۷b]Cw8#JczU(4)Bk*||1G8Ǯw's %#h94B#ƚI Wl$O:yطp[$J,/x*ӮhSx_9!=lj&I T6cT/QUi#$ Gyƨ=$1%gĂ=@%;PYn6bVq&UFr:Z}jo) ;[Q@uh#-nMkePJ{锡:f@+萨XIa]U&LFgEp#ߐlVY\5x 1Sr|KR+\q^^S<6C.0%n0}dSa,pDr',jDSyۍ*V]NM+դ η. K SCN#_Ej)^чW9-d,82> K?a3*@4*/]ՠ2~h .R}Nb䧫<Լ&7tIY?F^yl Mmݹ!r8n'scnIE680,PKZ >E ,S0`G7b~Y|^}NXʀ۾XN9% (}Piģe Vwi10_ˆ\P'h|:oin^ցPX~c@ӝ A}u1j2[@Y1DhZfݭ3]5CE"a6i*g! 46޶p-m驪P{˥d2m 8W - U|֩÷+X(p'3@Q}i#N}(S# ^WSARio&bf_ z//t_|)eUIOWS _LX=CNM,o0'S%YpUCMTDbA ĝ7YzvaKFQ,ߵ"&0# hm;}AŠXl34+ʣ0N>@kmO+6+cNa7T1QmkB7oгC[-uFYqGgVϷsD(XLlImڬgLܼ9 ṣO폻Es@ˀlyk4_a8e0+wVz *Љn;b.}PVELˢh$%"x^,/r' YP~^G#Ă񞪜͹bݮK^C*gˉEYm3Ehb:WuL-:m-QR y/`@\۞d)aW@$+[z wѕ&?)\P=qIB+g{0ʹeP|A$궴:+2<>xԔu%J[T682_ypsV@]jwWx2 N( \,d`7&)1&BU2 >#h!RYbC~y}>l_:0J3@iJ=J[OY.*bXvq g;$I<0I"ElKLE);-e; je TepR G nj-^7 x~{BOT9-f]whY:-7M :iW1m`6t-)[~Ǵ4FQ nGH|.>\}^f?Yۨ_xq{ߦ c4YvsIG=h*{*4t/DWW#62r_.j4\jTakx:̽?/y Kfp\ g0ʹ' "y( R.* 1v7KZ%WDwn7@jm<^zf Ic`=Oymߐ[-+sg3y-$d3`J+ 2OʰMd"d[ùW>tPv1'$Ӓ*Q$OWLUk+%1a!Ŵbϡ,0DKC`X?ͧi)8K"h&fVFsKU_-<8a ~Fi˥%NfX\lrZw,/Ֆ3Y9`mղ9<; ")ƲՁ BoܼNїD71әL*# YAJUآE9^ndl#~惒 ՅާWΝi< hqcf]BgoOЊ,t5bK\-3Xd]F^ `M7,o]]Z{[kKWD 5k`PE*#6ÁrHVƵ9Brn~z=2K`Z nL3v-z< 聐[auZ+ACavNwu4Y~o"FmYe MQn~ W Ϫ7h'g+$Pȴ 6d1J v 4%Bk#R_8!?S CMGYr+'=& a$:sbdHѽ11./\"\ElVܵ606p/s'VVZ81$>G x!AGHu^_i ŀL 0'׎ RHtfAĔ3ð_#n)+gyMT3_ ;[vF ȳW/:.o/wnc0H-򹃴,,H鴼. 0BӇ5N;wLpDv&T4P4v+bkc[O]2@A*<4gzjq 5?̗ЋO0(w#vl]5=a ʻߠx{-Q3щ-j=D|0ED0G%Ztn,c+&>畓g3p:\QŕLx/;Y4L_1qjCLe)n;wGla?1UCTo#ӟ""w>"ö]~ZU6! 68vd0m-j.8.QآW޶9ӺN6Y^3GNptUmj-_E1]łѯ3ԉ۬zaT:_0HkA9ӄaK7'9wVfq.zI_0b[lKs[,T'okJdBG6]8rߣ)'ɬ2e૳py7 3@R )3 qдLHȉt;Pպp?%oۼN(X-v4fK01rSBv.V xv~Ii.k/gaY<4m߱כ\{9IQh&:O3e┱ܥdf֘ڗl,^P}9f-WuS귘(cQ>!5SynIQ&G##+$ F4Q1dk? ɦ\N}c|^ ,vglvHwȲ_ͪhHF㣠3Zh[6w05LݢR`H#(2w3-,rp] >*T=u'.Sǹz+&jgI͗mQOL~4!v=~65ycBm:Hwё(p6ɕ*ۄ\Q?_ء:eoHJ"ɒaRRi8" FIFoxV>.Y`9Z=:Ha_٘Jals|ݣcs2AtHU^Nſ#FD&1yiL٣+f~5މm0 #yc3@+d} N-'VvG쥭3q?dK_0MRkNĠl= Re4Y{-i%՞lG:.p"*ĭ¿_=iqvk4$zFٸN:j'Tٗ G,{Eq^OQbrX+/8lPCء푹SR鄗tUH-מPg$?Sbɰ FnE{yJ_y4pmX+ϵzlƽev[mnqR|!-SKq_Q4R|po 6P.2b""ck. Q_ys SA3a mqR.:_:R Z=ir4r.9=_Vf:iDyT&`L[-GN,l1BxQi*Girwmjy(PTpb$3[ ̴ՄշzhotAK8n5Fә3Lsis74".R}x>G\9hiƟcH T#vEce?o #8>^Lq[SwADHSZ OcA[$XJt`E,6H^#Ɛtgd7v/)Ol5:.S{]k?5Fڗ"pxtF[A#яٜSxTc0LLZul,4c5vs%5yc"rxbN q+ y›6BCk?JfKL*^ڥ!­AaxkA0N%lZeTA*WRNz6N H; y63_R.eb`rqkKúz)- ߹Ҳ]:`䑍ZΤ7P4W$a&7mYMRiTƖur*XP-3sfr83;VQ mtKf__9"ӠHOjõ|dn5zU`+grt7 S?aEm}8,h٫ !*g&Pw5jo{?H 0[,]a^] OFSrJ [ĽX j:^}U[ȳ_{^> )A\4u# RYևtfslzKnȈ(UgMrB)<7eS$(Zqo 9wbؼ@JnM˄ǹuʒr$ͥ{H9bMĒE l6,l591"ONr)YX-3i aG@A$'~g}Ba. [ɔKNkhHS7&uۊ<1eI_|YӋ̑>LaH21Ŭh7zϏF5)G|lY.M=ƅcVjySRg xݒ;pSeFLH,.^+ 9j3L(8Km\Fe$^3)F)9DսZc+&\wLOBuvQk$}ŚFTtf@zwK i7ŗĕ85CkaYBÅ-*:s!r/[2*M6jh .D\\ UCѸsYujDt\uZkǝwpj?XMw~ $%tz "`r6YL2Շ1)|,{V{!෭+LeʿtxGPEBVJA TD(^T+?ɲ_1=S,<þ\WD gvT;ɂر;H;V06U0M$:~ܢ9WV ${58LnŹmrR9볢fxz #.'S~xOn.4r OdqR ]7G܍H)!ƨBF-pPԨTϚ:1X@ֶ\3_kW;(خ#K~ `=H?"3pW Ey}匶*.us = Wsrh. w sLO.p%łVM\D,/L & l̒ 2vgXԆL. "7ؽb&+Ն09c"k4jͮ9܀by r&bdWO3Y;fe_G{f iiǿB7\EܺYY[͜E6n,j 'e5"H*ZEMRVQiҁHDQ6g(9n:$y9PϠxєG"Qڵo5 Wu!5^Q34_:@ws8Xn-GQ `, F"3 rsn]U")|˃FեaGvVۼ(?>\DAxp1R`;%"t)©T:vi!.c µ~OfxB(rtp.I]YC"8b6.A'ғVS7HsCQqG׶7>^ĸApWC p4 r$5(Ӽ&g+Ta ]8̳R9 Dzm?d=P1+*DzM͕/2 @XR"s>CZRNݜ_W`8!'Y)Hdhԋڢ'$@ea#,_X Rth't xΚ:?ץ S]|wf@SGfY" !<{7!'ł@]3ʫ^p!ʌCy!jRH9IUa$¾'c5zErpz?Y | Azi>`(Y>WSR6>̻=߬BOϨ=YΟ UW" m8'6\3&r 0,K% \DSH f|mS}nZ̙gڤ"?CP# _15@Iw)7BaW {{2*T\oCv$OR1Zll*á1a;/7Ѥ %|Ҕ#$ֵCb=p/?04P:W-a %p]D)C,ϵ%&\J7;!D!lPe.q@ܚ5lPbNӬ WoFx*t? )<e=#eMC'\QT:76jCT(sMT}oYǺ8hzE,<]ᾔ-bb]j86o.{LXfJ%e4lz JZ#; moYv9T;-OjC#X 2 \.8Xdrt{1[J9ñar=RGyc3)kRoAu[:S_k=ڔc@ i[LPdVG3PƢ)AM' ?M+w;caD%0(%KV(;]&2e5zDI{O'$K / [6V~j)l/CL}"&%SB!Q?&mdG?Y <s_{ٻᄺԈFU/~3QXڕ@ hӣ 'vQC'JAM7TX`O^w yBUrCDe= lzu)zb,k:fL3-7/R#o;~M˄B?B8H am 6f(fwu^_!B{KAT\mMů2=<'BztW"E c M @2H:.rژ,Hr>mҨLJq98PxCa&fG >6¢ԩTdby[#) YGBIeu?ZWkuHTPb\ݔIGb¯ڸ(Ԛi3|>~щMnk|(VNz_ H^{ wD^>9jSȇJeIݓjEc*s͈lp+r}|pO'LOPeqwo?lޞr+(ʆ9( x])J,`xFcn90r]`ΒzJ47v ,P|0.&ֽX̑yMTY)ǚ'S;@@k"h@_дپЬ02 } [sR|3W0 Ϋ9✉xVp?EX2 m;7舞`gYEB{rWPbKY_E:YЖBC׊7=d-%m49i] C^yĬl5Wn1otxߊ6v2g)L@ʹuzme$c9ЯL;"̍ƎZ!ؐ$4 ?Vۧ*y{0#q)dĦ5;,`꾊$C/]9H#lQS K0^9*Vx;F϶1zszJlk?#i]s9#a)IBO5:ޙPIY;ۮ&=U)owjh\/Q†P*lFlBŃMU>V$w-J@2b1뇶&D])KS8Z{Q`3H7vVPsFF*c a([>9p0=50 vKמ?xhݜ.g= Anދu.u6 >/>ŊOrN39*_}~SO ftuMϫQ8ڸ,D>yqkFG7W/B[:惕;[h8j/FT~H\c>brоn=աY0eJ½'o6q %N#P:qrʉDɡ]i[g)  yvlѩ)h~wͮڕ38ۥ@&G$|X>@|m[$ouH{wU Dy"t&FA5_עL}\/ [}1"q_>gIXD}ؼH~T~ra1gHfez/SW t {_}֗SU_R(AUW+D'boc%4@O[fೖtחyZIq ׺6aCp!t&Iښ;̸| @J܂j_,nUœU}홫Zp>ᛅOqo;C7NpP%-SL giI&jW= J ޿hRKF>Bxl.$,+e)d _0G G\y5 rpZg~$[f/`eo$cʊcZ,b\BO ]~O5378kKZ ;/McQ2YgT;sz`vҍ:^g@)YfM@Sʹs>'H`h`Z57Kǩל37\7]26ԛrvyM3 {).;&8^"R w# pyXNav=XzNlroQ9Rk ƳCt8$'c`-W}UM=Yg3Ik^K~߰ K+/NOKifG)< lpf@@I KJ:E DVn8arbBf1_GFV?9Fޑ%ě-꾃|p7ub*x~| =E!lDoB*=rmZCnW5:e#ܤofC Uqlbڿ+dnrZA}Q-Vv埧Ľ]UcwG̐X8w/YP Gvۗ7SE+~HW  ) iAm§cu(L͍j4beN_,&U ==od:UH ,Sף+/JFPOPkT3dlɾIT9őO(e/f#`q/|Ľks ^p1]j v娩/w- vQe藵%AeQ8'uЍ$4Gt-S>L=N]`-!Slf;.$)/qX՟F]0vMltbiO]S,c"gv@ȑ=N>ʯj#xS`] A|&mU RC=fJl >%m!PTO*€ Hk<#g Fso#>ߌE;QFK Gk8 A-^L:}!ʸOAv"8=?C>S0uQLf?ag4gF3vl+@|~M9nTv>O//̊ NO ,&&e>`4>1''y8 i57uz#MF xLvN: Wg/qkC|ZMpj8+e\ao"[ YGXC0f z` C 0 { rQ& ¡"<`ԫGBa'Fi8~@ $9d9]t^6ӇCے}K}JrLmz0r[ߟ\FTYӚ3's,`hѓ)N 12*hjw^xjw7ٖ6a?7A^XWv`cLZŸNIŘU\ayc)KhdE/ "&Jw LEr *dȂ[i7տ~cZTKD?_W?p[OfC>ΌFbL*5i H"UI`_OlAX:͞f{ tj݅u[rK} @A}=LYF]60ᢢ Db-_1|=7(}4DKv1ADC*hV@by L[j{0 ڑc_ S;L+J⺥s1vS,v _2D ] _os k+D9\d@Gbs2 Z3%(#-W'\%xWKd]eB|^lmj2֮g7]a´`ek^JW~k]W1pnQ7,|@#q,>yr׍1H1Oړ%|9؟G!/u->rF׬{n*%m2.^| nMX@[-B/Z2Xg~/SԛsOhYJC&Z4/u/NT5j^dbOCZyud-e|@aߟc7 K,m+gyU ?hְ?Ȃ4S(;P"&,m Ǘ[YHgk퐌H2Sƨ>I=AGN6`/6.Dj{!7֛5|M2%n (-A ц ɠ;H%WaѾ:U;*+(!d=7A3?z*g[FRLE^]Fr{*m*"X;0g1\bS%Ay'_L >}<&k? 5I[0K.mNVss϶guY9լ׉ۼ&k!;a\:׆իƵLJd FAWh8Ed Wk8Z.vY8v1C X+yK7suF;eK鎑 ,kkVa2OјUg$L;<~mxx ůmywMQl6(cUG_9!r#DjQp5՜;~"!,RY&Sϥ - HvX}q ߲Ppv*r7K4sQ +IRQc<E]0In"XtAc>, & _o0z\h˄FyUK2a_qX{*2qYEV}n>{eA׃.rs AJ;%HB}b!%I ?a;ngz.u Z%})ȓ {ͧc<1C,dL&µ - F/ q+UQ%~[5<Ljͻw#cA (8:.6v+Yiº=p,?$ٹ3\mk1r2 _gh&nBuLTBwI$u]ytm OXHruC-|bXi\duI}ٽtpo_6fYk|;>ȷdі-7T8-MY&.b',Knk$?l9WOB~݊4vIxR8{@FI|pwlbd_bXw"w?/9eEo-<2zRý[.x뿨 )' TEY SueوGDV.!x5;}1.7@kuWQiS [Hv)V[M&S2-.pWjchBC\|_U&~q7S_P*NV 2w_߽˯Eqs`?>`p'}6g8ɰ6Tk[Jkr `#Aܗ}\qwl@6we#!nLH,UO(^+J;ܹ.`>E|T .`M3ᩩMew~Yxcˀtwt\Wpz/~!I%-yRm-)?6(GB[]2t98%dWe VX|?Jw*$ڮ~a4֐1^,Ux'fh6yATz> V WZ4G>fApP<\U0M@_T肭DWIBr(cX\PD(sb~<SIH\jAD[toCyM + R>AQ vLܢk`P^SUbF]ALѬk9#ɧ3FL1Sh8Omh,JwP6tMMCogs^od b҄+I ;{R\p[lʳj^~OX9^u۔9~x #2 2ߘc&~P-`CcPr/o=.$0cZ 6)q|j(Mp]v6pQYD<ϹUg@g >QpNK=2xmOa٫xbn~|W3a<%K n JPky$ \+pX @O@~˶ѵV[5{];^ ? &9AaٞS̻`p]xMk+Ilr>%ÿFi<{ e 8ヨ/ ېk0cD{"RRb?8# ABdKun >;l_9Ű.j:ϫLkxAG!A]<@~'%G&+gy(n6q$pn2ʞҗYɲS `'Zu9wzF߰ ՕНp9If-ϰDLHr( &<j*V1Ӆ 4tx۩K!<7dI23ȅ獥Ն"">ޟ)AYnlX(󺀞6n;h.y!DT Y3gUGknxzIJgzIe7ϓH8qI.va.fLeouF5LND[ -i$ ]T3^tB]z ūqkX=oo/kr=9$oE/ғ!^MJj]MRFKY{(Bo.Sj8}kWC37.m HơY~?G,3Z^>ž#I$G{@e Mx3> A@#tsԆ S|.uM7:cĘ_ ?F {D+L>#Bh֋^\Pvo8rY^ u4LD ōt1.ilI Se1hთ9,iVT(cnïa_sjec"r t>:A,=^]`@8YkT{ð%AM̠7 hwC˟~P=fm1*s{!4$䲃iUk{E S%Mpw>~R-daclbd=Q#Peܨj\rvWgMD)?OuFùGoO46{I`HHoaS%cJ4vj!\ |R'(A3$._f7:8< +2Ԣ|_vMQ7pwgݎЫa7FBK yٔmq9* bp ̋.qN_WsdH؝@}g˜] 勓X#psHӿfzͰJqXH4P iKy4q-b>wݹt$.TU!ZӪR„x};֗j"p8r~Xʽk"6o4u)ۛǁtppu%jF6o]+0.$f{iA^ȷ3ƻi(N4r8u7n}ܜDaVT P\0plbDNlD8"ST`m_Q|k'wVP#xU7jY,zD+/ˊq\-4:y$2,2b/"\~ma!~qƬ};M82'S_u>M>t#. &$:i0dx_TlXH)uydYJ_A c!ϬWvPwC9w<|AN1xg+y  Tx\~WHᓌw(Kg[ϢBE݌<4h\: *k] 58Kk(`iHllҮLG}wWǁe0R(1;385NG %~OJݏ(I[ZpmJ+ݏ7* itMXFhy{Mԩڂ[|< Nvn}[Q\@K+C~¸kK/c)F2 q*qU,489;R}!/7~"`m '%bJu+)ޒ ՘{*voߐ7GB+ʼ VV($#+fC('XPRh 97bV!a ar6QFGZPJ  >]c@/' d; F[mlc*MDmmed`bPh?Tٿ 4ބ|ܰ^58ctPM1)5"(IM5(~tb'bA!f̐h׏,SL6T?˫һ5v4}l>i_<3'^oצA\2FAoLQ5%Y R"eKL 2FEyh!Q~+}1E I\l|\mѧ/нG E2=xp,0fAVNrҹ";΢F6mc?r;a$`u{w ?+V) c9ʡ52: -8yT 7z}Ry[Aɸ)+/2C2ަW'$Ol~\W̽ubl_ڻ60sES &P)Ǡ2Cw<29٧?z)EZan4| ŻBoi̹{+H-5dUڵu=/hݐ:ݜS]|QdX7VfnCu;P _=ÉݣiT`sH6ӳy%j MuJ1hܿD8p&F(FeX*8({l$~{B=B;ג*&tX*a"(ZU)G}. a{:B # eH),Q8s>^]og X q?)Bзs֋fm#8}uicTcHC:dփcSY3 oJQ LX~Ҭ&@K/<ChQ2 jr%)qM{6M}.Bkc_1h" 6Gx5c\}t7L噦}M? { ʩ푀TNhWMӯ8ҔEo=&!}Oj[gD <śn`PձcI&YznDkTYHm$0 ,LMu;97)D8{+2Uz(ښ.gGh/T|EL {ΫF{ҩmaLZc <2=jv@Jz g0xq@rBt\[mI̞hB_Q=>ЄsQFrA&vZ+b@jd+7g/O7:8+\\Ǩ)S|!6~ZPo?*znoE_^{j%ٙѴ:<V!Ł2-k(M㸌5 AFͶݹpcK4kt{%pVo:P}gԉ'<39B%F/we&2Hw- 8&HGjw߽U]16- RrD t2VӪ 2Sなl#@ښtoz(%^Y9D,?)p)VnNV@@D9^'A~ѮVD'd˹s{y/&WՃ[vW?X6 ˃ڵN2W땅1~ʻof`"_:A)i[{am_lQ% }`e8C9W!:S&a ^OG8 4%dMJ6tf2wCiY5$tf%f _Kb:+72ښvu>)BhIǜ-K#XΎLا-n,gd&0+WU\~}@fp:v0VNwO"Yk@triX^9%N45#gPߨjud%M$!&S[Ճe\,lcoJ ߻G~"F!֚ .!dAH޶X*Eu4pEgddwws(RFPV-8n{[~Mt,r:OXVn[9{މ+(ߔ26/o>[\Gī"+}67Z1q BusOCSWVF Nj/ٱ*P3cV>f&E{A+~4Qiх/>zg]D9 z6v%l*T'"_K\CLNlobtǀqs+LU\~ӆ{l{jhwr,SQa!-cc6ei9;ټ66 vnEr` eaqԊzHKӂ꼓}i(@c H&UjL56䡀5\B)<Ⱦc 5yK15+N6~Iٍn^0 -xveG:Ukq0Ě NU\ \O,Ԥ~^d+ޏ,htmzOk);ժD*=[.Ia!|?_'uZ+-"#\mo0",&5FʿTڠzSO ::+@w[& .AiMӏI*?CHFv2%bldӎ껧 w˯qXH^N{GhhT?^w=SJK`L"^2607tzk=b\4JgEtɷ5x^t~W۹g   F׀{^LJL;s1 S?MX\lPU2ǵ3IьU#uBs"\Ӕ?DU .NB]%_Mx(A&xxclh`(Vcz "\JpES0k NZ砪Q{f᪪rfI/z,$N}GVq>ɀԉҊ~K2+朗  h;̷,I5noS ,TO*H. L œ dԛqfVZMڼQw NurGYHH a #!u (B1 ĵV-`MC4ƎRlbzF{s:~+PoU|KNrC S{ YN_Ip#*2P:;V}S4E™UbH(@efI ȩ7-G+`)J3JTmET[$דv-P AnGcNdcMYQj˽cLs@YuR Bq/[p`䱄.> }/O_W.I ?YW&| Gz8xhdM}Nu^ތK‘PW{ QZG%u>N4o tOR2llwMZ"6 JH(L%cICi\Ѵ1ΟRv,QZv2rCl$beNFMV$&zYSz./ic(>< rBrݲҷȥ],؞s\W@2m)r  Ɇ&a?tW 旅qc b2p)I. v'iŹrNDz=] * w QBd b׷vJ4TK/0]ܝEI"պ"7OaƼi*GԎ(H\3@1w}%bjR鰒4*_O \)|^0$2f8QEpY匵>` PL9KW;YȐL Gk/ «,Pa ?t"Z !v3Rh%/>ӤX|jw^+# qV+QAჲ1vG͢@"AD eKbCB wlbJ9QT:(Jˁg"3jm<[g}^8uGrۧRGvK<9igmu? .mM*^4N0;3ndʌl|08gwG--A,7reI I͡]KUĭ>Q&3: ϩv+I my]P9=qD1`^p9`rO.ǐj`#.JǿaI& ÓƚA `o;I ~ J> ࿶&#>RvÏCֵYaJT"Zf08!C"\LоbYBOoE}D)n'zA9j*79zo$'xJӧbC/䝏XMgM=AtHŃ^1YUTzLԪѭL$L;U)e:mW%8BF/2ho`ո\lŰWGRT@+m[^oR {4P=EHk֤zAkTCq'`GzKwtEN<[1֮hgag^ 8@_;^\Gv)d6_ȑZ?kkAsA蒴{9hL4Ҧ ̝fVhN֘pQVFxQuO&PQ'W<¨um=:%΄Luo=7|gH/?}~4 C]gHH$<CVdsj'e\Z 'V H;>_fi֭zj @TQɫ_4ሿRن<}28]Xƕ_~$=LhP~aa@:[NZPYYZ],1CD_ \'^շ&ea^_F/ `vȏBCђ+62H #H;.z3 Z䧍ڲ}΋pV`{RVmx=g^]ʬKGB_uDYbix9k &dg'"Ha)ك˩T ]W8[NI5X;S7^ys։P̛0xi(ASwH-*xq;lb9iFpEK]9a0 TT9 !0 Jc;[uAeYDSS7b*5b̔=1/9ߝ.a:80d=8K/PΊW@{.:ʎN]^wAhL)ۉ7ckmb LЪP]G ˋhj%6#G|a+dX/~eWk㺾nƋS @=_;KSNAXPö6=6֌ Rvt /6뭀d7O(~7 3KK52msO܏vڞ_kH}I?)e[O@e0b$eشr(![EZH&\>׮dCU [p0kqb@RP2D'{3h|3%WhpaVH0r'ŲX:|6C=>5m XT̟ti\mwe|vtvLf)ZkӬ |[7"1,a>F.oWFzx&`qhphw'UJNz+l[rIR~x1[5E+^!]C{[]YĄ(fV ?KUצYRY&P<(d3Ȗy>Kz06ch`gRN͊bd/v́m.`$#"FZ.cV-5v(IaϔpSwjsvjwjNHyNolv:cCƍF>Q|mq+襽bv.9c~4VQ ːy&ߵ!h IOxfov>!>+ҺmTM@ e+DC;-9`Txևă); ~ξ /=b(3h`zEBXejd[2021')~Ձ 'H?qgJSs*rf;s;B(:$fOh*/ߐBdpU8oVh-c2^砷,m]) &*/f X]_1{VL"X;'n9x+Q#-oL_{f̀P -q"_hA0:ߥ\mɪ(>Սcea"K>?6IYe(7N4&]Zrsu 1wY4C!xSd}m:qЍVr5c)QTva칩v֋OH[D? ꘽OtV"PwARGU ^PbtUʓbnCDATΆj<ik@wsm*{ASfKoecn_@ psz^4JW05(A:98;b1\2qL\>c[H$xsyOc =bN6\nMok N 6>lWc.D&?|sӈ҆1cp ;T#XWxK=k8n^,vf1V)d< 0gs?JFsPd,x/]o(`#0808Pb2Ќ%Ns}6բ9"^eHpX7, kFTG~@3l6%p,m~yu>Oy f!<LU ֹoq rO2kC]^ZyrcwqBPsujGכ&g{ B˰NA?7~vbճJid6uW\+ F"dIfHˆG,$ܫLY/`7]T&cyH X,T( aw_ZFL@춪ts6l4jiW ;ATi0Q)*sA4]:>x 6]Tɩ'J=cw#gd1 Ԃ3Y23Rʴ|oaTjgggS oVEՊ\ >v O3aL0_y)R^i[:ؗ獌 <;1*ev}W5/ҹn@RAlI5nᚴuI8 $!6|=-.13=|ϟxO%:B-zq8|Z ?T;\KPç +jv\ Us@7#4&;L LΎm,_w,itVᬺ)g)ŇrR$J!=J>7kg{Ԇuc'ZԎ9&^Ag NWc"Cz|kj: 7[\FGGnxB c5;`:V*WFvpF 6%]Q, ٸ`r /tB׏ԤpV 9.JghHcj)s Qr+-w#§^Nr:}L֓K2;e[RF8 yJ#yԛAXbeY>QR^IUU)fʕJٴ3z_ѯJOwDQ75,,%ai9c6 b yq@m 50oy΁,P}sN`}ՈנɊbdQs}(tF È Y.2 &m*z–[4(V==yV0%/9N_:g7Ր꨼Mtsg z'x*Wy7}m`K=aC@[pH9TQf*t[U`:UiqH]aWX0=w[#i&ܶ%gž tL S?~}V|\e.bZvd_>u\ }V%SRsk>?H Fcv>zψFq =^>(Z` u_Q]Ɛ6yH^[ @ھ.if,u6ǖvjV. RoSlY"QXb(.#м+Ko|Xچ}9oyWSGύ0Lra3ې2n4^%ه#caV:9ƚ(c,>X@[dUZ2T&j_,0ixtO5A.NTvN:q(-’ ڔ1iթ6 :S59Q1˄,I7%>0,Q2Q+>*S;+Dfd:k}⇙(9X 6H7JįfHfX|'dSkN6‚IUW,muuvc*,#SMy>F2\Z;?wB>eұ=m$`b࿏nа4s3=Wb`>x e0kGNi2Y7_瘼Y3xn9\)Yމyfgk]אN"y%iG0Ƒ4=ElEޔ1nٍX?x<%*X-;` aa)7C%є-* 8Hv`h`1x6*aO;ݰcjT,NRcRܪ^KAdžT]I$x3{*B.&JByc 4f 3s? gu}QƓ8ٮAB~1̳Lg9yO*AƮQsw`̍ #x"[ U# gF͢!Z(p9w< 9*H0w;rQ-!ӡt\Q_u+}Xk+BS]GT+YLՕw¹ VlDDO.^.g˴gk zjw]ޠ%HIIaȟJG^)6VK%zdr݀nU|0Dވ'Q;T gxPv䫃Z~Q{4r0` h~TJV2C>׮ 'PQLl]M !~!P*AZ^BVDn,EP?>nYt{C 7};*FkH; 55Ppل+ݛNܫXd߯^ơȉ0mC֝_f%%-|ҕ~tK_xrSs7{[]?*c׀_9БN$ZOF- zVx@~aٱ9}j6 l!DMD1:Rb:ž= >DlQ,)070uQu?(# X,g^mGj0.L"xʻt0WkdNPV]oƝJ֌Oo>&>~Rn0&}ib2̩PkW:QN,HkB"t7d:'0S$RnC=fOZ;CSC:"rqWG [%Qp@"vaCQ3FC3C6bsk0@b+ ]R]؈殏| VsKRab.{F=ψRLv'E~ŠQ߭SQin @,R*ӕl6(~%o6`òAp]o~8sKL0LS@c+u { N ?dDJ-VT/="Ғ $ fzc+ٺ{揼8]fbZWNj\rQ_ E6ILr# tܹ36{c)l|,Uɋ NAVaDnsEz1-)tg_S\:X7r#҇&S(@1 yɑ3Þ{@s7\~_#e+Ƥ_Q#}>ﮅ.EKtwCJ,a΄H8Jo6AOV mz$! b>~hcݷ&r'-/6=qWO? =~E񾧲,FX(VXjm3p:`qz C4yZJ~ ri3A+MĚ>ERAq=pܕqt*S[\e0aG=fKXg .9H.XXb&"苵/aZ^6<َ'F?qdi e]&Np)ݢ_pTzqTe%ﬞd{g9ei1~_bR_)}]aJ*T(o21*y/8چ Y`[ *9aF\ ]i誓!`ݸGe[JwWX%.ZI!8b/+LT3yapWG}Q&ˀEO^B ꈗRJckEJ25Lj_J4H"A_4t/ʐOv^LQsدn?~U0J[cS`yڤZV!\!B__G&R'][ne pRբv ڛ;v]$5g*h4v}^ZP3xQJ1Khe1v2by4Zc Y:.y[ɟfn" CĮ_W]Z iuB_nCxUM^ڎ~"EkAW{$صRNԌh3$?iCue33H479r2jL߮9'^19 $ _S؇Ruy>M^-]wh(y{ԥ3, )UJ*UUj¯ʤ^>һ􉾯 -6K߇$ e.:݋`}Osv!_Z 9I`b5^+Hߨ]aE7ּ=hirLD,9c/,CQv/L`ri 'Ep[#2mT7XOY9r~207Af|i\Y<6aH^KΔB΄C%pJ|\ P* ti2̩.FA9 3 L9U8w{3A.Ք{]1m}p~PoZYQ!H/&.=>eK 4xpW̤Bo5^*XW +OU6wE|ϭɴ6S ^3Xr'"&J &1!8'͈Sw72TD*zwT%ISL6ex$ž><K GUw E@w`&BĖaXՍ#rPtr PXI2?B} r##WH7|"$~"Mxǣ*X+`|>D++ %^|6 RN.{W(4:[9WO!۪ >?&;htrJ!) E}:xoNN39R2.|x{pHdfU)9.¼"m:W|04:3}At^q׷HrȪi'3SITjųͶkwC93Ṙ*x Tg7<,0ŶiBQEMR؂y$ K+$EN,=I EkDmG/}<NjƝ1w.7nj**uJWQ32C6#k+ȍ6 R||y~zv:G+SqilqAlPZ9FIwbv: HF0~V;&AfuqҺypZne.a~u[$r_ȹ \TiIm3X{THlT;y/҈': v$$ A*e?IphԷLϜ } Q6ew9 p\݉BsB2ӿ;'<-Fb.K{8am:U#l p!u>g #^0f=M-I÷-/z,C?~P3c. ؙ%F]wV"XT0:k4mlgY-!ض? 7Eϴ[!jgv,zJ@nrO OR'|хޏT`q# xnf#oS剨CF \J=dmshEv1hwlK yG2vKz%u*$:%QᣬQӟeca<ȁ͌WG * 4:\nG]=Qm]ݖ{4,^SbjF7MwQB %8j:a$UN'6jKVqP-Cj-;ynVuagIAe 7״ WnraY-*p^OǽpR-A*MI NǨh@ڟofs!g&7x'ƔUM) HΊ;;_=޹]oH.ܼIݮ$r?L4 ,n|l%w*KWmڻ'Cj,k^z[Ddrn,t2V?`b/8i ?+tU3(^-tQu-vOd+9ҫSu_O5##""ů dt=/dA隥8i'57)E؋ >swS0\F(*C^@{v0͗5vkK%,q5.ЈN!,8>> eH^zCװ~O&7ii];G)bEJ /-H!dܰ딒^4Rg%m$/Tt=LͲccO\#{"9+[z̴');9]Z1RS*Fc.Ю0\ |;RhubAt QD; kW2 @RG{1Y_^)l 9HR uXny.|f32sfd׵+̕bdNh6o/r]wl4F˫c #\GEvux 0H??@u{혚k9XbZTᡎ"`5r2zNH2oi9M{v[ؼ'9/<9)y0%xh}A PE@R%Hט\V\&opAEV^7lI;Q,r8q|(iME d[|?|6yF.3h; /c`LRBb4bf{L*S.),B-OH"3=hAK![s+qT7HiI9gE"a#I\|a̲Lܪ> 픏/1gqPr+WK!EJ|1CAGDnZ$b̢qw ![qp-Qvf[E'VI~nr d LnFw>8e/.Cx[=pw}QV<6/+,__Бkd]Yiף;UER &;Ê}mHefCjp}"ByA܍eW)I:%g[E8 X =Lqت96N_`ay{Ao;ސDkg/يܿK]$a\^S/Б/{zjoǹӀ"=pHփr!:UgH<“RZJ:κ[ aZ=me"[tHY_!YZkfD<LƮOC^Iȍ⫨GڐOq_2HyaإgBXCtm~rsOKt`3v\$ERtHˉLy׸P4a LZxڐ5dlИC*bIg?AÐoy}#ngpI8 Յ[G aä/Y# }TdyE6;tsĦ܋M-\3sG,bN`\rL2@O7 ƇiJY}Ww_>;C,-փ݊w$jƕm0fHY@j7*0 ZYc3:8Pч"*  3G rGLJ5'+h) H$ `f(l[,a NU?$i n1t!E$#}r#m=]] 1ҙ6)YPlcw꽝EXK=ahu@CёϚ6{Ȳ8K{"*cY΍"z]G FShz֟!JJ#R@tsWhF)q0'Dz^WP(r#b`­PnB5!QCu7N60LDƂ1k@Oh1*hhAˢuINV"OUC^_ژ4vRR\ũÌ2yg;akYiX@Tb$xŪiu5J}>Ĉ*Q;JU|f}{?Au,wW+5mTE*FďLD&6O]hVBrѹ.Fؑx.LQ.{'8A5Ǹwy,(v3`]bJr 7?ᯨf^p'ķrףPIE6/ouy!--uSV<.-*&%?wW.eFqe@z~VEU HU P9UMUyPbWSQaX  ?G,)⚮aOEi:eZ~E'ʢ 8XL=ܗ . krZ&j?]aϵMHU`<6RH#aֽX~6C*Cg#`t/JBosCdm(FRbM;ef ^FDʂ0@VتF=6h;>}Kre.['@S-81)D$|",̺x7!TWc8Q M]VMY˼\huBA_2N[zQ:P`Zķӱ,|񩣨3lOrk HT8eF0n4/kuj*.e9M7lTε2pL 3PiP ݍF@nz&o@ScԭڶϸOÍSg{`=+ftDx$/'m͑_Z/KġōizIO9֒;2%޷|47t+L22czf YHs?{St8_}End KaRaow͌XbVqr}}xz7gO )'ٱ`t_;,cjcbr7 t{W|ip3!Ab!WIDh' 9RS+_[.?Ӕ6dJ垧҅&&#'Nxq]n:iX 3 PГR@,̋ WZ*\1-2D>&|1%[V)]ut.,8]JPRLjM#:vY o[^aF ?h2n|Wm}#Ii 2’A4ffp51ܔm<㱍<6AmN}1 {!VԎRr|kr`ރ bhDqse}ܽetqr>2)и-eXqipϱ!S0oV?4HJ< <-R\yVU qYA>ƌb@@eQigNbB0J,M!,hy߭dk.m[> r82U%'XԔX.V._MnS!4F>1e g Gu6<NR yFm*k ee:ܲ}Ѽ(KZ:ȁ21Z,Vbyi|1lS`I 6>4_IӼnzqyɹ|QRս B$1.tmr+.F[ڼŠGQu=sUn%Pj"hXƁ$NL΄̬;R(_jq͋dN̠15l͏Ohj A,N^e+Ke x% yѝАSg]"gAu +MR=I2jUӄk.kdh9 .?kĈURT<9L_Q>Th.4"~UmƭiyrS}5;4]LBs|WS|4+_"#f-p/ Rb]rhʦMV҆m"{oՙ4=ʝy@a(qϏ2vRXn;JszM*pJDe [y)wG` /ĶaZb4}N[ضTvK <@VopN6Dq0!>&A9bl*Jfx_][[<TIـ8rG`X)WF( (.XRޡ9x#CmvL6p.;u(@A&؛iGcM,~Е0$uVҎ4 75CurC}vE!`8y5{DD J\0ƅ.Y8f[Tx=D!O0b5sDYڀ]ɅYqΊeec/V^wnR^o֘ ~AI>H댄pߡMI JGBr_ \F̮Stw"\Xpi.Ǔbe+;pJ}B|Hk̄~'k5:Qҧ"QZ;j`ET LLlq&+,=HagA- x6 @j1j1[iO+XXnN~󾋦VBP9_y69\EM*pCh <)1}|88P+OU"5~CbTnU{+cY8 eOs b(SEHf6*ȸ>j  Z>rʾwӉ,vH_KR@mEJF wjR2G3ƵJ(wJ.=O:ԅ\,Z mUe5!ytE~aHfWBQUϛ#e){a ?\{-4!aԤ|."`6/pqn6xV†VgOQl.XkՒF>ϔ1FFY{q`KDv1t1[h; džwBs-imoYy1 Io7ҩSZ<ݗtH8Q=,hMɰ%I\܄YnR ӂǘÎF!d?0l(0Uhw/(E>q1!7 $bĞ}]hc \[N2Q<D[1_ vb̯ލQkD=r}PŹuDAyͳё"A2)h/UK &BT͢_(߷W:=9x|O[g :Sy1qLnEGD:O6b[rڑƮqS(:>AR-pó]8 Y^mĎh3PG6d"' ܯ&-[\QD1/1VCCq?Mi-"ˁ ^sIIw TW1@=mkO'r"ZWSgeN7ﭢ pUΣ-h4\nLhe{?j}MUc gKK66K^d 1.2T (Z U@i/s*dPGzzYT48 ,3t;3\}q^0NYY.!y(#&`$v{m>z`ltB¯j¹痡ʘɽ KZLA-W?{( M-?7:%U*KWn%" O7QGm}t kqN=}!M ;&QƱr>Wַϓ $.j+c+]H\-P .-4]EwSܷ&%@HauT}&CY`/QIl_6Ұq⓪fXft)+ى_"]N!͊5-As\C0,qk 4{T`>-;Z*7zะK=0XFCz}XRO#W[n]gS% i< r{`M~FLlγU:%OP(%9 ! ⴱ&䨹Z#-"1 n j6"(مXmnq9E )NaV|I ޝ2`ʹ L-n/(Ed%cB~Od;Ml&b& qUG5,L/;#}JuHN|윦7p,#ry?q|1j %fWz7>miRE:RwFx;P[{\m ,ѪRi c>fn؝BZ9kjspʿ?Kx#Rq]O>q6MneO8CqFkR 庇{`.ŚUXM7iw[> tC4=8k4ѥ vt!Dg^v%鯟sYMAlZ,@X6_5Q{py~.w!QO rf%*e1tFSM{kMJbOy 70-1V mo.ۿ;@G>BLEp/:0p~'ƅ'!9}ZWi6[A6Ebtst 3y4f G'Jsa9AM- c=]@Jt9L\K]6/s'/ 6AԼҘ9dܶL AZuVS$ACZ~,џ b{Ǚd"s7hIQ2IdU(ZYxJe G֨vjĥds%7cM|6*nby">LʹN^.51-pڕ)'4XA Qe\hf҇ ku +3u+7d*z5vn7l_#Pgy/؇1 La-d z>Tm]x{VVB}Ko}X!<0{ ;Bœdŝ7?s2 ;jwW6{:U;گ(.G[l BF.ˊ9 dI3F.Nph7eHg 吋33!u]ן)clE !`0.dI^`>K*K5Qnl_ȹbu\$9 Mm,`l&ZUh"7,o(3q^3:旸ˑ*i9ƻ G%|g;ql0{yDSD柿اp]%=x_ꊻ<0u0HY cXZOYSTlMpx%/n:6mx3L 2ڟ_ۣ?3r^5;b-$#G3K+ړWy{]Vh|> &r1V><PHiJ.$,&Te_ū7o>= Ʊ8w4ژ@ͻ\0 Q{s 1X9v?/ cUkaLy5sۤ.~\>d\<,h+o/ j|Z[/cwN7,lW ƯLkPɶY1X>a i=ء1[!B{$.0Ťj):U=CCc85.mhp4èw@_@k3K,"n+4qd; `S#MG/ X}yp#D#-K}b!YB 2V-Gs^o(Mfh61jcMHYENb߿Fu(aS.a_A/e/GV|2}A>].%7oP|uR$4\c,lo.up%0C'n#yIUl1>`Y,8#Tp.Z2.'še:KXYϳ¾rhqZ&*v9cT|xJ0ϱc8~óJNZ0C8'Yr0`FDuX ZB/amۤ'@L|:=OYoW%/ѲYO]V[vXt)zE6^ʼ:"~-Te:i$GWn}Jg8`(VI]':^ ("^ƞwbZPxmDNVfV"|^ F`t7hglaބXW-yDY%^n'[$O4F(6}~8W4XM0j4R'o-5 M> <l+ D}v-| Z\hj{<*S{玍owf#B$ʧ$L[ƺ=x ФxLB햏#,Iڹ߅틝{5\d'o#[jPW6ahye}H* Q - A`kssuL;6Rh|!AG iKEk17{*-Xqka*iHpvHK8q1+؀Ob܉k[w\N3C> l&3vK% S:jƚd&SsܴL_ۏgH"z#@fS9i_&IU" v"g^- ZS4r[ )}av>Yd~'L j$g3AmmjEⴠy, I$k}pZ1Ms4Sd6 BlÈLXr36rC:`ۻƧȬ%fn?xZ3EW8$b7C+t_8 3zJ <#ݤ{®#˦1`zU^2T,ox?]x)?k=U1->*0j5 rntjs.1 z>|l'@x,?VywfZvB@#{'YE-Um [2'p_jQ$C̳]焤xZ(os+|kiי_-y7n ! ,faFHUb$E%"1L?48y3wN3t!\o,0ƫ6`V1* _?NY J׹ 8{ۉ)q 8܅43u(,HCu!Kr$=&~bT 2V7?c?ˋ/&iv5hc`~"InOY£FW?eIԣ  :m'0ZE/`H X/)0mK֫%,R`0BuYO9vJ"]G)!▴hf2FSP"K~ÄG벡/ƑВ&<Y,|94 @8 5^ !Kk[k< ܁P̧?زSM :]cA EhK b3]Zİreܮr3tb8N!x`H:De>a YQ x(Al 4|ѣ#% \)Ҏu?zXl3~ucՇ:,5]"\˛8w!/\ʯ q<Avc]mvګ Z&.@c~v善/8l]TBS"/s삁+NvcCoe~+V< %l mwIfWk,*ୱCnǟz|Knohey9N.peBLsNz$ު׌\%OTf4"e*uĩ0PJC=~HM |P*5ǂۙHٷ3j8D m& `YL  I?G4ϖ5]N\S\ˢeDa03EdcB[Isޓ>^XdIqfe=m&tk&$,ށK}irŕqYІk~ 9&SSkv T2 XG1`qw[P!x伨;Sb%ݩĦcN"[wMԮz+Dq^%ٲעܛu$3 ֢ebY(fB*P. "tlY3tWԢǪ2Fg c}Kl'"K_DGU4R#3{ԨSՓ!(e@jȧ``-53n$DRuʐ7 a(\mt@ \}|ꆯʝ \4] ' yH;h-Vq4X4{ R{wߧ2! 6*.wVi3^]q'ձX_JN*JcGaV-]E}( bIiBkg0'MO"6ooW(LFye!G ;;Pu1FsG-)%ནzs$cH|2(<6>1X5jL-n?3=YzS5Kژ9l-OVېT̳WüPKruS\{ `G;] g,B֜d aN3qbѼ1f۽x'e'ĿZYy?O 5W³ bRR[G[04-,fK1Tr`Q!952 C] Di|k- "C|$#/2H䍢YB_2L0<~-qTeX mg54!5 =OAarT׹W]RE 'D^zۣ֙fi> *M|~wޢ82A>3e!+_sqT䧻֓Cj2?=9Y%ry t}x^VzDɊqjZ,e.dk}lnFcoXyU-HRڬ({eJ✫9M ̲fg߯3ma( i &ԥy{B ƼDpe&æܖdo 0nOV3+Z/LAG0G!Ώ3n`4ض&D!֯ݸ guC*vTHhJBe}GEՑMWq3ijw¥x=P}J2$g8pPkJ.P%XIM؅u()PҡDh46K|== -%m!UX&(|HqoQ1OέәgzޕAlѩ5HH]ZU>-PV G 1~;9kZtik膆嚮-C+Zs"R!u&Vk( .)bi{ }$)0jٚo{di7e#2jA ̨n]4XQէmt LㄤU ͹ Q^FgQ.|K7O}Ʉu0+ ΆJI2e"Øhۥ!ꕥgO-^Ҍ=` '0^>c ǠQW(-S66Sc q&y컥Dތ&8pqȑԵ2{lI;+"1bpQDФaDB~ZHI0OڪC. ,g$R=r=BS.I|LK6OCn^5P"ipc{}|_LPP4f? F1zBY|#V*ú/3ma7nP>Z0+8"-+UÇ R \l'[E0 m^'qpќ.Ƒ;B"Bwf`qN$IؿɛC-9{/ %Oe z@w HvOmWQ!C>}'%g+EY B]a^Xj72P"JVXl#r^ N8V(2qt!wNs+ ϖ.谝%0 ;C"l.XW᾽ʣ_;E{B0/g^$ &co@SlVrW _0HbYq10>\6*紨B26 & 9W!$ [̞=Ny\/&72֩Ÿ>'Ld͢ܓf.[D=2{j H=%g\.&p[+Py'E3W Ȯ#1V)%Jq3Y>7`ojţ~t:/$X魜;K"qq5AFP5FfWL@)(Z3m|o2VmBr0PS8c}[Fh2e'fOcpm7IG_e?}- qŨ@P! `N5BP=%">~ҥ]D f-BXeuI@m6P^e<̮Q_9a-2ؖ-2jiʙ?߽/OV4w(UDpw>/\#pUcq_ʖ˶,k<q[08"FXIZr:J̫0=M9&TA0vv6b{z 痉Q}!/zsGàOx]> ypoDfN|(ag*n`RN.EBu<6JXd`xHޜm eKv(]q.\$>^]SKJs697z5B WjbqΠC(ʇH @E#[kZ&[Ԡ_OSon_EcxU_H=ړ޷ é k7_t-K 骮*¼j|ݧ4v~)}8mm P>Z=ԾpvB$Ռϱu%k2UsvhD+t|46G7IPN߈گ"co4 uo ]|6İ]Iь\EeLs׸ w-_409*[K r1"sWB*{xN10T6 fӑ'ځZ)T œ'l(|S> ʅn?D`5NS-TE߭~+j_ -/*t jݜp52iI#}Лjf @Sp%i}4l̓$Vղq ~ʌf|P1 1tG-59ūjB©؉Ү $vm^޿T+붽xce&ddOZ[Ap6AВqeqc P'Q:ϷW 1ƙ)I[n(?KUdueDjP@ywC{ZB"%gSboZl@ˬKk߃VI2>I im>.\xL#'D [)_a@ES63 vT52\ *l!W/%\q<%:U$1 b$.e0A<榕|YU*-=Mr|QؽPIKԧ D`J{(~ۨPp`sb7O2'9F ӿ:\kQp$q2?Zvle )xl))^˙fHm̦hқڑ1c,? LeF_*ԱCj$2H3c[az։5GY{1Exs/i~=܇;(q(#71]/ކ6E2l >bD4%EwV‰ :٩޾0\Јu朿oxؙLjkgq_EEZO$)?',٩j,A&(Lsb4lA[̩au qW⠟4yK'XmX򊯺Defu-'C&83/nP \^rk' 68Zh BҔ|$kUFuH/bnQ4Ÿ+z^InC}=XeqG5nM Kֻcȱ <~#4A*O}]^G/UƂV<|]O7.%Ā>28؟TЛ́lW2NJ/USbDu偶YPd'.džhO=w\ 8[,OUWʨ;,UƑWx$Tk+_Ɣ@j)t6 UV^\& sKtS ?utɿws`( Jp2#{,X_vr5**%|9{~Z9D5YfG)T{w/."r?#~$ ;S[ >J7 bΣϝ*~gaJBgdoz6>ݸQ^/s88sItI6Qm3`4עA.O,}U})W.4)bqQV^F=A%IM#y߸8*"C%ox%^2}s Ulbf#A%ޢ8roGt|Lzt ƱTt 3.}ЁKݺjgVVJk3xi״j$5h2XRAˣ!=lST6V)+"Т>DBB$}Q.g$(XsqҶeٵ41&6ݔT ' =7e %穪d26Uh,x>jFwyAݨ<ʩ!ҹފw#[ϭ5x% Vk\;sEEyg% S(I:xhBX  m#wźM=ǩDU˩|YX9TDyfo]j-Z Nn?Ly!i2][P3 dރٓiŁ̏v;/cTGcNN4e5Pb0G3 zKȀ} {; \cic;$>~V8-٥+_3-xWsgt|tʨuKhl:*pQgWOyzyMu.xD,vn'/`Z`n)S:%ٴnyYU!jze\ᗻP2A^?oTaF_ X{!:eBz Dhxd+֮h]Q$3~!Y!7\mF)hG5VGZ dpp!Aܨu ,6H7n\]%}C&:b־E`PoA@*#0F精YB;%lГŌgNjΗvȁJ60o4oS-@M[ϡl] ?3ߌGZ*Nr?ZfGqznqW@}po1Z,D?)5tKz2(ׁ?2: Ү/y@&cR/CcF9+?Fa8WSV_THhJPyC괻(8|ʆ晭xy}<͟4ghfQy>S3{CciF0 HyA%[i_XA"q(1;(]Cbrճ{6TS`>M<Ԭ;y86<\76}D&Qv֑Ml jЧo6fgB/uVNLv_"RWNLa5P$L&.AUrH;0wkM  t .hG shV6u] yأ[nD,G!l7l *rkfC n$tZ{m*tLEy{&c Aq;މPtZ'[B uWޢ"V2']/p%2ڰ*DsB#gRp/-C> H 0 3n&<"CvTF!}u5ۅ/7 4 x 07%ٔ$ yT:> &Ӭ(t06]g(3 da!_ w'4f rk clVW,9") oOLʀvC^QڂgtT(!vjt)q 277EX@v?yqEBzPpY}g$<.#PDd<0âSۻe_]spυd HlJ{MM\:~9iM殸23gȏŃou7 氢̌MRx8cY@H|+p}7jqCXYZ | 霫d5L}?kʸa*506# ˼3S3_޷4Nڝqwܥ/7NJu JcR+*l-`p\v3wb>kh2 6[_x% wٗC'QX֫LM).xsX*edAOT?8ӑ*F{9D*je֐oe6 ?8'2b4LAɵﰯ *@UTvu+[-\Cϵ]Ms3@^朼0)]<3+zh5> >G k㒗a@VU&F jY@-ɞ73D&R%I6\/q cto= Gkhk*;@a;Hsss ABg4xվ0[Zۼ,]!zg޾Rd$y1Ȧ_(-]TH\T:p _u~t< /ڣ{[ȄYu"/6nhj>n}@^ѿ6##0"nl/ɲѽ=~*'-L#K`d/K' uc`I,k{+scg@hm'1$"qe;O^k]xzV7┙0أ[sfIw~L!ߎϗ2InkDft-ww:~S&jOT[l% Nn\t8!qCN LsQ?v8$5/\iq<YF|wB>xW[ORI:JOh`lN^4á:=;#02咥7TL!TiZyX$?)7G\ ,QOx/"T~]P^Ԍ,oVLu΂s6hmvVfu(2r^H54=7H&@'nBi! ʧi=(j;`nV5Fۨ Z0y/b"ae=U#BT? 53=}BR^.uj|'Kᮎk:Ѯn]R<<5'/8YtJGRy 3kB5:g pwU{< &QCfa`eoT1]$m$׷CӰ)(FH%yӋ*!=wM'3utv߂80"ti[Ζ1:~Ycv7p}vIeh~㡃Wrc NX8H tx,*ec:ɛ-o [UEPH\~QDhpd`O/&^LrL #J ʸTw:{F/z:_.R]ة&S)J)TWpC 7fK𑆳Vʻ,L) mpXwv.x4d|+l pe<{} !]$=H#%j f w2c>)_](enn8H,'p Q-+s'/!yX[Q".4MdaAh?H`ץ=_jW#xmWr'LFMROeڥH)hs_<ي ?k1  R^ AmlYuSsg_pT@ґfT!Z$3П6|4DURL8ُ`qؙp}$>ld}af$X<ޡORG?1-$F gzD#m,NK]3P[<}">y|ef'j1f& yғ<f?y)Ҍ`.[0AFyX5]w0G;{kq!dJ0@,akoN- U6 .Mه3b#aCEt*+e^Y De8lwcxOoU؀ּMvRXeh]n*ͧ`퐢o r_ wy dHRfx!AY 5"6㒠ʎ*t+iȣߢۇg߼r2U;29sj'xo5N-m7xi" m>QsWz xul~(M{g?j' yxƙͣol[ WE-35یR*{`X;KrߺUgW^{mKPInQLq ; @N׎N* E ".Agj`ƍ96{ع^fJ7'IN{*l8I*lsf$vC++@ָ[$҃sP|V}dzEwB]JM8xzL(zq*3 ߌj7-J+ǕCX~Ou=Hxs*殇U+[Rs@XYc8@²^\i[Q[nhTCQ͞)y 6>)j8:`-b1c Vu~)2nҤDAH|7OU b bɇ}Yj*=ճ&Y$دIO?1I@=ˮh&v=zr_A)%Ҥ2$h3I#>*K;;x;H#jB-/2?oT(ܒ(iA%B3wpo`GZ|_B`ܬ ||֯n-a15K t&߮qCm`Qa'!-3=o^&UPk;(mßp lU%flKL*'>R{,:At*:ytjX)A'jҿf%ߪ\&) `'sW5V*,S7lk֩fp!-uj*r!q70˰fZւXq{B3QSabϨXߵ[+X>4Ey]ao9Mr7 MFqFc:Ħ fネxh,U~w 7AHIj!nas Y 轴+- B0?Aޏ]($uLtӆS*irV Zqa2ȤNM-"z7&:wg،Ȱ·%rl/g*j3J 0S$@_gXez^Ú;IY!i R˔9JNT% Iv[9\JsOFvVG![d5aA'.ݸ"Ju9zI#e0B N;ɮ5D4]_˧ 8k*R0t1) K=ë3E. ڰ4<++m؀gw;j]8gȎK iay;?6RQ-)Fg G%1M/JkJ%1r:BLw5=͠\YfC^O[2$n̈́_.~ݖQHT=uia@$ 7-'A-۟`\F΅RLHHG3G%A;vo(+r;ݜV7iߌC ͪ5^sik|4-N _ek?D|B5x 2z 2*p"k8>z'/59m)gnd`:į3s'W]Mcj%fBD} k<66˸kFDf {"&R9aѳw:R}} ɑEك{u("bZ#oT`8o6\l<(Z?i1ȯH, zs@f`%M&~id+E _ˋ)_Do\r8- ?Ot[@Gհ4Թ8 `T 9ɗuy*,AŐ6S8CkBck3=z^mjH|ֺ4'fią N@UNBe\9*HZ`mQ(MOM Et GV]SS$1W)?Wf U뎃>Bh U}:gʶse@/r{Y^ǼW=䴨1:15#QIDhGO= Li xk["_وj{ +P2>Tskľ2=yY Z$3,t#*wmp)fX i^NI𲬾"y!=N1|+y[=:z^U =-Mw5}y|M_Nj3Ζr(zDb*j1M gF>,n[vڢՖxj%'a O7VB֠XۚPS'H#\eVX)IkcM%;Q;WmgбφaT`Om-zsdNrGG+~XxlNCM2;BMQ'd[h5ti?Gl{ %rqI6,2O,0,7|e:Utotc%''е&RoMqnp3LV] "LZV=|x  {x3(BUU|bKuK~B jI9e9UuGy+ݷx0R (Jڸs5v.$w G?5)l9hȯ ~E-U>Hg"gC_T &/ w>}H MS%*b 鱮$<4\4󏃖- B`\`F`g"F3 65/Pfn8VJ n/QzXxTdW#^y", ӂsnA#x`]~ߵ>޸(lq:+Dk_ WӪtdv}̱ WdWʺ g(D?WjUV3Lh+l^r<5 i)JBLRGq~oOmw IL;c}Sf8˝v9> hd~:X4) yxRNo6Ѵn w×mZ,}!dFoR$&$LݔŞ0+zK%d~ lS  ~GG%31e!h͇݊l|Bwz>4 #ͨ2z-$S1@rԆT@(#8p'8t<m$<^G 3D~KO_ӵunRSIAg[txȎz`ky W\ϬP]qǢ<_acO à޼(5k5?}(9*mũ, ZVuwבggc`wzn^h2f h \hԾ}z3Nb*؟] -Si(ܸϖRQOΛ֛<$֓P A;Qxݔh:GҺ/hR7B_y#;oČiPU(kTG{:MMF7Up̪"SNz->FWOꤳ@Lu+, ԦØFSZkD'6թ%BKh[#y ٖ, Gr(U)ߣRQC,V8]{)r!^9RpUI$^#uլZ-$ļ$(U / I.*:ކpרƿ`>ȄKTA*2uvsșn1@ko&Tm؂cݍD.j&x$2i~i(Sy5$]Q ‰cI`bEP\kSn}``v, Fxfy;CF.[lQ9Ϸ},ч^*R8~#"EKy3)i3|臞likUBoq;rth^X&J~vQR T7i )4)i!dZ֦Lb}ni& j`LF%^*#pj}lBXM @T>?.S-Olf3[Hic)BI;󩓏ԻfDėQ::OK ~$|z/{nPaX[Tq]N e=PC)Ћ˴˅"pf@?Rg,z3rc>@ ޥQ|;.E$PG]QNanĠ̤5 ΰ 'vc`yv2zxؠ-)]/ªK' wmAz/l}FXН3};_wPOmO|1[ -{PϬ@Wc>@ټ8 aCX-KV*cgPan%8{[/ՖH*}N׹:Gj }`yBkt?K6o(4+\&˓mt+ibVp8hp|eIaF;>,\uK鱗ϵNd4Yao?gg}va$(/9-7wWVe# 6e1wm)iR?(ED= n<J u|[j x)% #f/Z8E3`KB:ꂞbؼ $"p$J3>2nʾv>\+fKgݐF>e~DATq,^ޥ߭ !ir.,<`qs7rC y =z>z6xDŽ'.gc'mݺ#>t+Nke~bthkڿ1&7Lq_O6n9pEw^^Dw\ٿ 3h@xtK+KdoĂ>"1H"w~E4Y4-AkNH,w"=$\zMP 6h Ɣhn冰  K$H&xIN~&0]%lY'>n u3jS\fݬ Y)fcv0I.3&4}h@Lm;UG E}R0@ \D[VNܓz6|\FH%ܞ /uL-~ Q%r[+sI#SF[Xn xv+Uu . :f0lXB0XOQDU&0ƦAuh(gZTOAG}-zؼeeі;I|&!@%TzBv ̃;ţbЦ܃%cT]:ց0:-M^=}j2Mdu b+糋>vŇ?+&Z`jW1W{'hfg8hʠTSw ) lUr ȲxuC7LW62}z#]㚑C#M%00 )mgH6;S[Q;7DNgϨk, Uv(C7PJK?#$UjUJtaػuӶUKWA*v]KDM uBy`ߟ}YNs#=qF+{8 pS0Q%=ϻj=@H<"2[;xrel 4xyS?s&&" ak  bۤoMBL%:[S5p L`RXM ۻ%`Y}F $l'FxW(kW2U[j]RSA{KpsSYLP@i.y `$nDdx 9C! w9R7ꍬd P2\cual`'YLkj-x(/( /1ϵwKc9-`2B& "88 6 A?Dg5.`1"GɔAix6R ˽J2\)8`O? E^D}{dKk/I?,TB%/$:fF@*CCгnS ?fEAa`6y^Cބկ2Y] }8 =k|aO_Du|72d} /;5+9RwNCqDžl-[(z.T;0Pp;W v?%P彗QmTtz^QVtч0Df.&16y_).0OF(ҋk G8u}StA0[~ @ѺZ0/987r䁪kV'R&U]Iwz~-⅊+NB")NnW<eX wU_홞tmdNW@p@r"fde.3{_N-<;[8* }b843g _%*c\ Jq4շBl6XE0 bql 0fߧ(VJ.P?a })W g[C}D ;\;AӈJFib#DrguEPc7}N쀎 lުrYö&)['֎zc YAE#A6,L^$Xt}s-e.sm-U_0nʋη-wg%I Ս%K8<w~ڮȧSK;S_h/rQ,Nr+0KmO(&MnZ FfЉe֛l#Am[>6F4`MĢM ) Z-./z3oe}upf2 ea(ztz8jf 60gJCA238'n#aHKz:PQ$^WWk-8l@7AUE˄-5=y ;EwUb)&y0MxBR2 q#F۱l7Ljfp$2̶SRLqAd D26 4@él}XA 9s̳Bb|_WW̲J8$IOՎNyTU ܧ6BY.L>GF:k+jEnCf4.um@>A`XkHؒ"=4WyeC&9N*җ7FGQ0 R|'=X "lp|E-cXǔr¹7T>ta,FۅgIƪ5:a|YEs^5q[c `ShAȋncS-KPu^#zLU{*enǬgDD t1QŽ)Bqk]yJ C*[(-FV ƫ F:/Ϧ d_B;J#÷Ų5}n moc4:`]&xv J^"qtEXeK> L!Ն<#s7jBޱN"ϗc֬s6-bCvV# C^,:*8Z3Vjˣqdx |I1o5OJHIRïtan/oR@88i.J 1bsW%E=ryXt..9v $jDY n9:pK`ي=Ornu+mԘ]?޵\^v5vb`s+o(0Vm6&oę-M"/G]PG-ѝOZybOClLba%+kO#YAy",EZ%-N ~`)4 TϬ2FXn/i~NZs,*2IlH LF8Y~ss1NWtF j|f`;r$+;/CP+ sl߾2[j'])ʕ%})K zYtZV ZA'1IM{u8w+x}Nf&0Aha3vZ5&w]8CfD;Pw5̯T?|Jjl!}N$l= ZGM٫V1W^Nj(n?1;z r o2kT A}Br 5FElmV< #)gy:F|ٽO{u s*#D?$ס1^OȗiBtTSLfPhH3OlןqMMRZ.>_8KE z?dg zX8f0VtSQGSS!G"cp9R18aGgT@>^ dUFz>ʭP˅GS$%Ŏ>9=m5Ezm\f` T{CH5Ql>=Ȳ2wsEjBԃwS6,=-MH5 UHEQ\G?W,yp.mA$],_3GZ\t5 aZٷ覮$5@%9}F`*׈7_!׻5@rrVjͩx*$hWg#N0^V`csׂeȖCn;6&=ܼrUJ e{7=꽙#gqYH,"sϠq፯XSlT`ōŜ_&<;|aug,eSߢɅas>:4&VM̃ Is Vd3wځ)#HKC٨ܱ]d6M,x^5~,M[@kZVD} -6,h-'jab~&#y;v"r6hڝ}w :kޔ.l2%Wf"0Z6*@ȮݮLbj%D cYZ: BV͖ʶB ֧ F+hXR~Nw5ۅA zދr mO&6pTg9pG::rڊz^#:B3lbXXT>1Y>)ܓC EEA(cLHs r_#ggsHV(,tK5!' >:'gE=:p_aʍivAߘN U5b!=*7k{F"R!y=]vK?(bT;T >gmbꐹ=] ʽ/M9Mo,e2Wx{<7'(R9`PS,#fbvA,v(DO/נ *'[VQ}^[H'UxG #=`V>6৐-3LSZޥ*̭'nōXo#l?g^J?YkD.(^ZxW[>(Fr/k{e5nGt Ng鬺dK[\&2=XzRQ蟝bXq v",}WdY.˰^? &Do~P#NӪgIB 2}>UzXEQߥ\~cѦ j[~HԫrL&zeF+JrQoL `a\sv(05ȜY0߼KyXCv8P!-ó˟[&*/'v6uM{vYkE1iyԠ5m Rg fQ| +:.}Po8m+=>yҥkY&GX[3O]n,-J?=S^M9Rk^2)3 Lk~‘ri`]7ؗnZ#݂] K |60/+l"bD z ^k{ԅʟ8Mr +0a7m*-8Ex*,F-Þq 8vKpmKu}>\Y T/&ĿJHdXa‰EIntB02E7_*~W24 (h Fv:u Ta7mQοR.;ZYZ6X$YoU *aڧ).f,6Z%ɦFdNݝr Dk^R`e8pCcVn ؁К![o['&QĦ2s?ec&Tp)Zh0 EA:L/*bz)~zoexեU Ϳg*>T"(_i6d8A@SkVB܁VpWkSoցZ\iMWWn;-sI^'É4#ROL!7ZN7~coݒF5NNڽ*qD5ʼ*AΚyRHvsq(m_^aev_OÎla䀧nМAt??) 'sxvT 1/NP@ 4 BnLNxrW,b}b`^!}%% T(~S=VD)pZu^Bhb[]BiaRg1\jDAh2s؍A(%+i1P7P30x𶌦wZ`&CNBqPї3j4D̞> <0wfm] Hb"XQҶw,1m=eXFM]_x=,ZAARA63 xS󿣭/ z,mHOoL*u_=Vށ/B=û~,NVY O׮1 5}\!bv$dj;h} _vi!r^@ľoQWK &Df.^$sWnڶPt(IҬ:>m]/ڳ`AYQ$,y7Х ɥt4Gh殆Xodkqm&C`:*WcN&l56D-gvɈXa .HD*^#VX>"/?oNbHRz'"jb;ϳtn&x 8^l ?0'}S'dfvwޙT)ܥEIEN4WyF)"K@{g2宮2M)BhUOmA% y"xB)-F)UB nHfer(9䉓!'q |]q`b8+W~Th=H]r\*G$P\GmpuVs)ULښ)%]1dJkÜCR`i >oGPllU"˜ayZ_S1O|S<ՆcLbRx`Xߓj~=kщ.~5)Su;;nf"WBP+u;NUTOt Y3_k}묛j0Werv8VG,aţ} 9I X·asjMB#i}"q N7Rm|IGM-R#\a_ɷNqe O m <⦘?0>oHͶ|-Dԕ܎M3R\u`,m >:3fnU)aƛHo\3?8Gd!&Wtg|_5 b+I8q 6$IGw죿9?cC~߶ߖtEﭴ [*uWI8{42͌v/-YwiЅ<{5=y/}ͩYp\qg JC(_I%^CDWvPR* 5D4q`2 P }ꌶga9DSm;X>X9NLcOS4tvF=k,YQg/ViRVIA_q$0~olyxV 4lK(%Mt? ':kwҠxFb}@Ъok 9Vhg%/-x$$gjŚZFDVp9S!{QBWv4cb MC?62O$g+]rW0< [BX_,ҥ:2 RVkv2 63ٓnAqW=O#UfF hʑM[Q'HI`{_QKF}20 ٽb_m OHy"lTE&/`ɩQf#?Vj=C ᷈gs!\o:UE7y[+ &u kK3c#hr8#\q2*-dB 6֣ }dX6@UPOR@tROS"Y3bϪᄍEq#`XG؅ܮ%E.yU页e .7n~R??V/05S7Fo?j+ڼFI1+zceΞ;Qh8ަ+-X/>.njinʧ+ǖW"wr1B,`׏8*aV\!Ѽxqḋdz78!K܌:yϚ7tV 3tp1}ϡD lVGď(@Q\@\`{N2~n)3Os2q@ϤbQ[GB؉ pev4t@cV^[#(_S8m\ӵ IH&$iqKCM[?l.WR!L O.&bt" WS? %t1z^^VdJ{YPLXrBZ!Qm&fQlbOԳTٝc7ѣYpC{-9F0l9Yo})CS8+TppVzG<nFS4c6D4r,Jo_PegIPx<*&¢eY&k_-(V:t?$6#5c?unzoQŰ% 5]e 8\"h2H"1cT:;H!|n_LvŹ_[xN!Be~]+RyhQRr>:[g :RoqǣPfBJ٘Б[iޣwivu>#)YrWy+&ArtFf K:UTv#*.;zjO?52 `%f$cPRNxTtͲWd'}DIbVZIlRy mpuQ}zc*aoKtsU9('<[_=&,*WnQSqrV AoR`ѳ;Ua .p j4F S҈ ,GFsy,w҆W'(&L) tv,nW@ޘCKcEP2_9Xű2*K;'Wp/F7'Th,'o٪/n#G t)qZpsfbH_ )v1L6[^?S̒˜֌μ k by,+2K`u0&/bRHG_QYPؖlyV.eH6kHD1T)HftD#xⱡ6x|C3IiIyS'7oNs?mh_y`h+>5HK6^,E'[#3 3Sou0KAśf/Dk$& KQL@X\G[sT_B_B3 Rsd //(&MٰN| 7CJE% K;#^5̔8;˪0|?<Ƈ$X|KD rC dR9w'X|) 1ɆRHob%Y=g* 2-IPmQ;_e;Df1ԃݢ5E$ !If&ănhGSO!(U]I| ^ ]O(֔(To39b+RKBC-Nr[i3@.8'/<&Ю/^&>X}ϥ`#ZI&&{[f#4[u!!,x8@"QRcG)DN{/e6]X=Oj8T^46CNz:ѫ<GpHx]_0!¦ ,oJ7\#ꂬJ8YDc -Bo!=i:7xQ?>5kb.+1f~1)}B_>q_Hns`YF7dY_/: yAF=|)3I}؄ci+|a+%QH'ؒ5l͙Z'}O=jZQ$BHB1Nd3ˎ)M#jґEJjrIt]DU3NᯰUt .ѡ!X[1.fثMLKN*`[ӓQFDD#&&t-!QV8f~h^[y;Za6S#%u>١wR) W͛ArwPa(*G~0)많--Rw0F5wө|@5\[ͿkL? g$d^9S4`&G%t~Z豗ŎccWdvND!Yh4hF+>TAKO{ 0n1/ehQF$ཐ5ŇәA+q=ʁ$1K SBdmhMqnU(Bc-ØaYK;H=,-#;]몄Vvm g~" a"dCAH?Cw2Po.̖]@l,1[ſ + e} & i?asn9^@V9\BX[]۳|8zPc(Mȓ԰`<]d{m.U HJ &+wfp:j9k!vrP>s|q qMDArK00hx"nZeoFc*pD"}ݽ31&lX1r/)9)AȷfʭDݥdžh]އYp{aQd{q}5lC!o {|-mul14)+G~j)MpY$tTk*ő)>VE\Y%:9z\2B&M'!33$ X_ j3jO鑴nEsIR(S3D+98"[מY@>̒0@9Gʳs(4W8żH05"7`*/mU2(JY ;ʪ/m 9z[|rK'dQX˷_h~]Cn L-ՠߙ$G=w-]Jou?BJycv ?a})l6za"#sL bKz#?J)>+ÐVHy@/imoMD]yܟ,E/pC㏲TD(uQ+J 7 -]ڱ;aU ,rۧ)H*Hvq w1&<#]|i"wuGr"9FfY+TBKMc^\V33*3fA}[A{ t7@{Jm2A&WlePp S@kD$%P!lv0W8z&hOuP:-)@Q4Y Nk[ T) ;ry=PtY};@1}H=΍󨡼|G'Jp J+qLSAD}lduk#)3*F Ely2BXBic!,:.S,+LɼVPjES3LnqlGpp-'K+&a#wǧkٛ 7ح3z7Ce֌y. E|@+pÛ%X|ee^Z/lIW@'촣H{} >~yʯle6L\1[~봐,Jl0aM.)%-(O,@ulF 5Ǘ F@.zJct,} |DzUO4fu!p+"\hh‹GL\YL9@jy@G5WcX|L{7nda\z )fM4/,/~L}͏(_z0(u*܎_4+UvSĚ用huXZfdݒ l?lH]0 8SG]4#!v ym$Pí VMm v@u^ʞ vj9`nش705{p*F݃:V(1/ƴQ=)?YXeWLJ:V`zdmίoH# i ʜ;t$xwn9)? EբdaO{0BpPlwd9NI.dSTS_̅it6bbd= l#T+xC YS OwjQ:9?C~(u).=pslmP@ A)`LF)?_z'p&-M'Hx?bcFTy/}4D;cʼKimh}ʉް'½=4nHK0uiɔ)Rwoh3|TbϮM3w(TUV퍞TjNfB"& ݡk.d/ t^3ZGz٣4V!F=u<CcxmN _ГFVݴJX )n[(uT7r(ǓS3R|} tDyhjqhZ!QT7tۢQ?!fp ?jDY|W#rm,w][iGMn%UP:]=ɀ"E] >20xyZ@ +fr2ށcbHmC+huoCI2D1.jY =R2MJí6fHN.$ݘI6NYҳڧ@JB%}0DşYsg~g!?F'SBdT-/?6zZ nco6PEm $' ABwYq?RE5nqV}u@ba9KJ J[c4!FЋ;>!c*v閁V:OxȆE z9E3y:h _اُ]:3|mۍ !pL&ȅ)6>=#Fx ݸhűW~_opЃEzuw~p ڝOj51?Q)%fz6WYӘyDTď#y0ڜZLa?^J%.E6O͛S7WjK1S.^s-C)!%},.tTz@m}*8H/z ,s=00\,4h M9Bt% l]$7Oe"Gi3[̕3"^l /ڍc2zKVvZ.34 ;G:6AJP 2Vg/NrYh)Mw( 7b/+n4>ZUzNJE,q3uI:jh7]! 1+u/-D*<#ecdϝF^}Yy'W`H89?fuq\*C&Q_ΡV ;Y  !ЏO(3C0i))]n7(%mdsE8-dDX칯ȥ>fɀTM໴T07uSk 2 WƸK rjQ5\gֱahS )6[-=5Z[{sQHȥ|+/$5erЇ7;_l ͤ.bq?}!6[/zX%T+ NL-N$0{$Yz] 6sbP@I5^k[vМOmD`i:vfя ޖD̥HYO $d_Yy#"4"ҶTraA-=o1̆Gݨs p&C5a! Ň6Z?{{+4J}vl΅ gmcíw Yy97IhLYї7*DV/EQF4T)d|tCJgS*%Leg~MZ ah=V%j=^" GŘ+?ϵࣞͭ0@-Joa,8r8IX@97bs;hVSwZԯ<="1,\,6UD×{oz;/&Q`?ԞKv<)N_cUTF)D t!ͺ5P?_d,$H"^5*0%Nim|"<쑮,U;M-ƺhzR:kq| Qr4BTIL׾Qx- a5$Qm`\no}v齸ygp6B3gG@@) 2>@X''ZW8=}?dce;hy#z3p l(ҬP@)b<7σSͧ[L'@q@ %d=Vy/#cY۪_weץ4}ňa`1~:QA 6&] z@R24$XF~stD̠k+`KKFAi:N#8mcW ǣF]XԏkJ(Tt[G t$TUfL~eP\yNRpfQG ̸PF ~u+Lu!~$x uI%EP^G:O-PȔ@^Ʌ5~CGwV iz<@ϫeDt0?ogV:p¸BipM, _}=e*;#0s(ez :cqj tx\$ka~,@g P}RꖻVɯUnW:Xz3فiZ!jʲSAH&^rcztIHHCdx`r8%YP~xȎ\=?ܓ~5ߜN..nj|GrJa RWu*p#阅&'w:?A=qmC Q5JƂ/ͬCG wKܲ #/6TmUZh>jX\H?*HR; тArI7Y[5菀F{ϴ57d%{$Qj{'Rtv 3r`\b?}|vZ_ֳGs 1,Kր6;ځ4glK'̈w@D۴{+䏙dG{z@؂]RܛC[1 8 ì5;1,B^o.l4rm2)"y ĠmZG>xH7:g+r?XN?8 (kTvm?!t 2V`RԂϘެ=U׏C԰UL(dɊz%()><( r5Whx2U V{5ox 1F}7\ezv1'O {VbjH\ϴ/7װx]ky[zބpsDL&)RpJpٱ?x6'ٿ?*;-P̍Fш10hB N:r_cr0?))Lf<ʈA8iG# qm՘bfUn$'#g?)@.P Jh.˕wy6ALSM'a7t ])Y4ѬO|342xv|P8p&D]ZgJ rH֑w8 `e̾iN *Y;&R(L amY҇)[&H{zi<&6v|~fYVK[V,1G>NM?h]|$ֱq٧gTq GXҢ{*jWq&ө mfii[t_]Z5>k50~:|g*KsyU,R[rG%8ID9xfb-g*H%yPZ]{7fdW vElNԞijpsVmQ Qq'@uĪzhੱ:c/dVEPd 5& J| ~:L9: -uvk-^ߑ3Cw3ظjI)H/ NnɵvYg7Jz"vPqp^#,;BK"?l)Ѕ{;xtHjF =]I72*0 a8Nwŷ!(qѮa!z< N{KD9`7Δ!5,>aO]O{e\b_G91{\U%ftjޮ/sFߐ2C쵨 BҘ3LI*6˙Ϫe_ @œN=:(Q؞LK]yڥmV|nQobQ1lk[se.)?I6*4?: FtٴZklda5^p8Bh{Y kemڠW04k^Lt6&^1V`^+\)uFNl2UFo8/?X$G(TwQKa.К2'%?gꆟYq{=quOw(|%ݔuhJ O:c 4Bppf Xx M2`APEh{cw &qM\PN@h?4C`9ע;- #ͦw4zu`ExkmU%H[ *^?)iU?MP ޺n*k3 ԱDZv: ֞y0$d JYUp5cвzn r$ɋ’\3`n2ﺑw+m2_zMVWhrku8Z$-ڮ4N.ĄB UOy+p67\5_5>VVwG#^_dt520~_Z, {Y!ƻ[qyz2TxSdݶop#Wbu0Vi5٬E ${ɶV [܋/8WqX=#2yksъ {&JYGHora N } ݵfؾ|3ӗh-s!Zƶ~kϸ1*)~l6U,[n'6shWS` nbY# XWN$W5XZj|4VV '9{,a.%xFwda[/S-6RpKg IL@Yk'ľ*lSi?`hHgQiHUM uh#@뚀2J`lSnG" #Z< <:H4:g8>6;ET'"]1x\gCWh$' s֏PG2ѩnu=O%ɗ"i-ly V0f~C54Boodib?xc'p/'/zš );gK?X>:9cskk0Va%M+!'XIB|dI)"K۾]({CIƸڬ/Laի @^38n|{l֦ h1qH[Y6g)~5.hlB˖}J4*pEpi9ڀZdݜ({!^ ՚vF>Dh P5 u>aKC/hv1TV=+u'*QW68|/AsEwe͐nDmi}Sʼn,_ԓnMiuOAl;Fcُ] E'Yv%7GmV9B뽡_6C2@OU;N<4-ᔣsB 3dluythN'm%j= u.G$TsZzPt>0hSӶ%0T.~ՙ˛֗iEQ>㌅SvW.j6e>u{J@*=wmE)*l/YH NHوpMC.A+<Ll'"/c8`v#e'r1·Cᇇn&y]b򨝛Uvu5K5=H%ھ)*_)jOy!7 ;+D:s\kxQ>[;0:x,b @WmO][B0rʢ#>Z/N<9;GsȚRyDDW>dW}?ÁZd߯RVq*a)!rX&G5ӡکlqC\vu r;+/ܱ'Tg$]s|.tzlz/:?ψq9d;T fFVIc5']}1nb{vK6ٍy(@gKsgfuͤԳ?BZvݕ3K~mn!>v\Լ_ԯZn=K71ITp|UH~Fߤr6eH~ZKX9} Ww-`}y; /wkޣv5F8IRĵG?RF.qA@8ma^e!$t /8tLĈ+:t&07IkW6aaZrd}I*/WE)֯ml*nL(QBO0SˤVeo j#ljL_=l w@С/ 5- @*,QnjKeciƍtw~oWP;c`ҤMS>|K ֫j2gU<{̤9&kGVm:&Vxo֛:`ZT>QK;*c>|8ޅXepnFei%Q=g&EtaV8rBXf0u;EN 2X>,$b+Mv/2fٓ^/UHqI|)QFJoڥ=@n b 6b" v"QSȉNeepiA9P?'K%6Ϩtv"Ҏob>eؙ*KW#FN)<;yB =*˗0 'H-:ߪ'}9D0FEѨCb" j(Q?kTEt tKvɰh} ~LukѠpB,8=mYDLxi 22t҉C7ԥx?&gR(An׭|>$G nEә''y{-#:SAV[6(Cc[U]? Gx.#^9l$s46 CgB_Ϻ.O{T ?+h[Afy$SOf$QGRuC"9m>U)e\ g2:6;ҫО@75I uf=.GGbl|S%~}Ƶ[RrS&s+YꮘO]ӗ&@u~YwMFV1UCX K P{aF<?ˎ񮜐'\:OZ0b; *Wg&g k-8g^Ȣ0 Sb!q=O1b5@$r%]s2HmI;ft*4VKq[? m{,0qSuft磜C~S_šfosMhi{VeQ3c ؊:}/I*WYZ7*P[ۺ|&P')1y!'/sZ8 ]] RM'qzcnGNC[㼽i&eS][rzs3d$g HyW9gnD+0ZK0[m΢KR%sʙ##0y)m/> 8 J$=*zaNdRN"pԧcCE0;ݤIRW'y>N{nie  +Ρ+K@VNaBP{ 7+lѮ4BOM.&8Heߐ[dE^ D<\`AҕI!n|dhA{k I؜dbqpȞ1j^pY8ǎP!ib,$Ỏ9OŻ|TԢiTLoccWLfZS?((Q>OXA-\|}نj\9º/0&Yr!iɌy@UE 2+ȍל*BnH.Iˇ R`a|41Q{hdeJda`X&bG -o 8J-Yh:WS R\Xij[.@ZO(^-dt{rfh#:V=3+y1%bU`d+ j BxOXzxSn)f㣍cʻ [p8I̕V3h5I_L>qmj~Jcx=A{v%Frҥl+.xak[<>ǝ~ov7­CB_B2ͱ $YQlp۳;5jl(3%5J?JOg)͉6;IMš9<<i84kb?/;YqӞ]/? *_כ (% JaL%3&|\++c1! DX=ַ8$ޡd=wk[II M0U-UWrJo/B~Q-5̬.D7*c4•D= ,RikhWfPl)?W~Ϟ.]b}/>Ѥ%cۤe*_|T%w1gսp>}ٞ]W }`N0bgΆ!#]\-p4jU'o@gi\sɡbrj:JCyBH93HDdkفEuUR/ۗEF%&E/LTkNq_Pa ZN 6sn Ah94`?HUz+Z.>P ']sd9'Y񉽦WxdFխ%z]5ݺis@RH4?P=@J2ej4KјZO&FYҽ}ME`Z(ZUMRown#;sN&}ٙVBI15[Vm],/izz;8H. DdNj&ӗ6)*+X4w 2 >?*tUo\{Bڜ,\lXH $Y}ڲnMo&#R4=qTSk;:1 _Ȑ K_Xo< p5^U达8,ߴ#F) \ΙX*F8wS,F>yaq7o,j-2$5a#K3ci3u$p1JPtmUo mDs{gEâX J)*S5U'Rw^`*ம̘CzՊX !l#|7Hꧡ!n< MسK&CTxow~Xr^6{qB[b/qேh^?#.ߘ,NЛ z*&gC%G`%am]MR|BISXP[ӑM8W >uG&"IT7xQ o<~%֓sy C=*ݫxAbl>9(g a@1iz{^Nɘֆs; WUNL"{%I5 q+~mG1qS޶B/|:s5AГRJcCoP|,EۊYB)۴Cj/X07Taf`!6Wal.Ƈ͚k|9 Y *l3 9GuA`npBkȒT̟mB3=@'ɸSvv!G^.e]dDDo{^S$} :,l_% ՍOcK42Om4O?AUWpoY>gO[KԄٞNFn}'o6:j}/CW=q ݻZ~7M _d[@s>Uq @P[-eMw9 Tb5j}1qC?A쩯FqPQ~e6Bg=^r W?.m)R_7ެie蠘_̾X 7ū&#ޘs Arqrۙ [Z^{ǚ4)0xgrv͇<#Gs6զc=R4z' ?f0s_g l:\#,j(1# oVLSr)pvET lw瑉1' [KZbDOq RnBzҹ7ef7n|eW] {ҟMi#PDA4.r0DVv24VbiUiL(mvgcŎhѷ2d3nOz?ti'`WǞ407[/%$d +4,`݌wbrH\_ E\CƱncTU;o oR4 $2{NJanoS#{h-yY%kɹg^p9h.|_{T$#Bx}oF hk As`++2@GPJ@i4@2VЄ?lL3k_(LW| iwb~!!ZGgg?1Gmq8n=9.*KTU`}q+=?"gyELaFo|2bֳ^;Z??6* Z&MC'-3򇁋%! X, NkG-Ck*f5ۻSaȽ1LN$ ' Uqmž<*(Y Rv!VȌ@ﲾN}YzN^~/[w[d% +BV-ZHwt@:v6dIzcpLNG䶘c:e+lx#NCN] ;EX1.3l/ٹC;F?- iՈdTx.3zT9 \xL#K;GO#S*Aƙ&+ vIp&Exou' gf)ZL32Jm0㇢24∪ >kE{KurMRL,50c_9m?Ep ~H(clR*?VVMu&H-P[4= lrXUR/͘/%sNVrU\L`Э(L$%B꾖u E*#3' 8|VlbG?̘],oJsc&ɃVBXa{{޶MIVaZͽHy0`J>p }O<= ^Ci$";=YsU_?]b)SktSi΅Mv怘Ԩ mhԩ)f͉VW&KF8bB9_Kcໝ^;čYv]0xn`C[GjAy~N|(Hܓu!nΧ-k{-/-0K$@Qg ?N$ hYc#WrwןY -G+jUZڅKOO_Fq;z^#e#o9ͬh^o_dSw`إ?RZ[c~vkW)lN^Wd'xdg!CE: |3;^Aw$ ,%C%a{Muh3TXf~d0׮GyoAPMwC$K35:#(Ԃl/Y0@Z1c7P ?S+(ͷ+׬bG NtwUT@ B,y Sxȹ ѽ(I7̌`ܽOQW<*iaT`pG@8 0(nݝ ]ka[}{[ƻ̳8n.#lNm }INm]Z!ʾkftn@U /=0V:14CZ޵޺hP+jůw?S2uu ^ Bt 5g:R=3:#m"~BȯL$Ɓgl $0_x]{58aO6Px̎UgĬ0 .)"f{d ms[r {5fdlH 5B#E@fR6ڕW]st[< q~ 2j<,%GgNQJid^ !m/{@ ]˅Ɨ٬K{JV HPU:7~B 8MH1hhivdfP 0Bs?Q50R+J|i3p~ {o[UڍqR$~%%Z0L oU_7-ZC.KuQ9\Zf5fo#x)pa?` |9>tN2^-t H׉V&i̺n1C™bi*| r hP)j{jj!}CH839Bfʩo,JvF:Uvo.?lXꚩ'u6Qqu%̌.af$ (]?Ypwc::ՁÑjݸ+i:T)0OXX_%1Gf %8k0AexUQ/ɤU\-Hyx4(K=U~Kc&Ϲp4/ܺh61)%,>&M^܄?Jb%\?y==@=9 n'Gie}1e}dD9`VqI=0T3{J\UGۘzeZ,u5Ocyxq! qć9hj(Ъkrσw,=Jjx*yOA)E>Ĕ+- Iff;M~* !RgրF^0/, &"h08.(Lu;)-!EoǢ^Y+coP]}e%8*"[4WN *nµoъAqSoLLZ~A9UfUBq7A8ӄWqU7׏N6ߌًā IIcN!LJ ہ::}#)%B:#\$XђÝ9%OzcƸ/-36$zOx4!6W *9Y*k(R qP&u.'63#SBnIxs%͘[c1 m^NO0.i$Il.v">@lV.->]Yp`h':U߽ju*:xM$O=8vPa25!D_IɎ+49}hp!hYh`sK>M]2֑9}0AQ+: cZijZ:2I+OlVB!w z>˂PyUR:b: +<\ sI8ɜ3W: TcCCN+#vEiТNN;('ݣk : >X#+G`& (-Dkq s._)S7lP7==ɊOo*b a:gn:KxH2?#p!-f-q4dE!G8/vƻ^2QDݮȦRNR@L̺ 9^<'A̵6&&xQ=EP*`@aȍft=_=&.f#Jz ˘7oq!kjh1`V\$+R!̢ OPR'e@uM,-"GjjB*y_=@^vCE'vAQq"KMLR檷e8TbfE#)X6 vqߑa)s>PiΞc .1=V; p pA>_xB׍__Wz4x5l:[<)ϻ'򬅆7mH*pZ5֙nt$Wqu:78pOb]V [)r|Z]7{WX?Qң_\,5@aԚ5_eҷ w—F6/} xe <Fdsyme6xu8ߡ wǕY q'3{6e Ĝ9ɒ ramJߊqM̪ajT53tuCjSl=wa: jVIlс[D_AiO3-<>`30`x STFr1o ڠUмU)?%'DҾ*ޟAѾ"=i#U7NqL 1 K >l,W0Kk;ԞUSiR=)a6DSQ-e=XKcuYG3 5GN1VT I|gm5zn4kdfď T' FoXW}dCr&ٳ$ YT!BK~b4ʒ E&|qhDxD9q/k3?z\_GjP&8bՑXfLmI~hJ| ׾ [Bu>L'c zgPIB{U2 t6]a07 ȕj?$c;I5i cP/ﰏsdkL4yW "_&'á݃_"{50h Ќe 嶐Q! `4=;g<Ȍ*9nT>hk2اr{)2'2+!X$=}v2ҵhC^PIE,XeId0f^Woڔd D(4rUq!,t2/wC;*<Ҹ(HzUr}5L#|+m#-*}wkb<57mU*aM‰^mrgw\L`^ƺ ʬ[ | WBX}z E}.P`)aDRl3ɏFV@๢&AJs0)ER ɍtf B;.kDh蜰bN4*f&="ӿ XiغPnH0lQӖn.Ϲ)o6_5ddŃ*Q8d<½2(-U39YrwLөMqiLӈ!rO/uL8H*7UPc($Ybas\~^Z62B"ĢAC7< 6;Gyyp^ Pnz"]bfQC dV )+%Ͼ+Ns=Vb'fإ"%T&imma5?a18TxO[`R*?b`4o>+m" Ͽf}שRIg0Έ*+o2Z 3bvOPJ+o7EmmnYEVE FǰᘃZ0To֩-N -c#ΌzT~:][a 17'2zP7*!3"g]+~HF 4ͻ k->vniBBs3+Ib.=S`KH<Z}[p>8´/dBt1j >4E1&ɣ&sG&tb1;eM{µ8D9cDwG *!<ߍm%@FYQX\OƏ^4)|#?-8/BcƓ2p?p]8=PmrHKW< ⒋{OiO7{ J=!;D6qxmw'vG/6w֠A~|-:g2B3Pnt;9Z#P L)\E˴_)<$Z AL{X7bF?cLzee!l\#s_"gk4G|vkjXF7X b}ۂyϺN^B)S7x#N=FRqjsn8&Ǝ*(VM5]ɦG-|bW!TX>AENFξݪoSȮOѾYEC DŽ7'XW~FױW&d?`˻4SDti `?*RC AKcL69G!t1.5S'%+k9VJP$v$3-Koma#9l{ᄚGzwGw:Sn|d=豕_>`H]pjZŧѣ}gpit{^V ^rJ']%] OPl`H:~[zJ I[dy5ì˲A_KҾʰ0=u Nؤׄ^3hu9jv:gq(\Q]/lQ]ǵ&PS. o8(BO/睑;ؘ|ڼ'-=fj.$9)Mt>Tκdz P~dj2im`\᳗d!sm 3L&[acy$omS C1х:4B 1,e.Pz7}Rdvhju (1I툊ɞ=wDz{W%(;sbPTs#Ճ!FZA'LZF'!_jBٮgJ߭|m%Xa"m.C( j@$xۺB^{k16b*kr2g[b: MK-=a^ !/% H~,{) %y f 49]Aw'Qҵ:K?W w͕hklNy!=3BG1[]sͱ bzVJXm#p$S\Sh0#ZN@3 z( cZL{"B :MW]O~yJߓ O(t}pO`LlKXyDkl7ΒY2%~Cʖl(j{Q? !@x'jz_$p.24Ce5RZ]PǞ '&T^F3-;k֥ň0ڲ cZh/6i9` $׳h]z'҆V9,2N )d GKiD ̻Nx"d+P$Έ+f':u.'+,^}S)5 tʻP?yw;jwt:[#8iE^K1~[h4^OhzK&hE @d"t(s1fPg7gy@Ư7UP_&(TF|Czߒa)(otJM|D vQڻ5VqZt5: rb%tߩA(Pkm"5ﳗ{u1*aT$3lQ6t3ցgҊG]"3u`+Cw}=.y/d.vF@0V9({})Ow;Au.r1I?U/.#ntygj %5Skr_~<, b.teNoX4?!kɠWRQ#b aʹ65NNq邆[5u!ʨ3ґ;O4s"F,dܔ'vvbeYֱ"DΦO**/7/~(g( =orzFR%0[Y -hZ? .PgI }*uH k[ SƊ"\;wTJ#o@ͱQ--GږQI[r7>WI:{J@>/x0(ȔBA~"EngqUuxҷͶ9+9vZu~a{MA{Lob=*yI.Z!a e@@d;ah瓼^!Hoc:ŕdTB7%A *w*Vvf;ǔr(t9~8~/3-->v r $&a4-8{Wx8ѣXjdpEWFhH)fq2N4LIypq#[6)LTG.(<ߨ'p/x}856фpLӪ@vDEzʙMl^.2)ͷ5Q6rB{U=:" fEyzCml4XVe[ .TwJQ$hPѸZ.[P3cN#,L#M`5L#=A뇲hQR`{ʇF li)[M{49ތwV?<o59bwƮN1lF/yܠ5B-@-+'^ّ vL3-ո݇بLucUm-UYqݡ)Yb/zBW۳[エa\b/Ga ;pWXм@mu;Ћx [bO|@ y]} fz{$*i[8 $_|.$_M}>`647$9mF;xNnc^tߝ 6ޘ^G+c>dS廑M;I#ыŨ? cJ\a}hvh K3@(i'"i?h iα.Vd=d=բU&0!,= &EoAn s_nݔ5aU";F ^SpiupM>ؖŒ'\rc$Ba*Z@08}f!t_Ԛ-t/z$.`-y3_x=֡%L `ys:Kes tEce%D/X,z%LYn߿dTEU[02lF Coܨeu /@Ip0jИzRz֑7L;3ڇȓ6Er-qw"LY4ͯ v< ϋo[_h!, a]p3o։w"ā,Z'I(}Upcg,Z;vĦ> db$Uh~&vbp C7ml2K?(U`u>G*4ngIf24vwJM*fvw \'7u?ǧ@ɻ|~SQ)g\ҍP n@ )6ͲcMv -GO!uaJu$6DЩ&w0₩o#0V E͸1Z#G/Fћ92"9`qʛ[O粕>0ǐ$T@QA(v[Qqɺpkޮ^V/Ę P i8yTiJ1;cJwAUnpYLyy%c˓,ad:GgQq<yEM,R4 `Ց@Am:Z#Eg:+փqIoCUoSKA^Ի'wd&:`SYDI\\b6eagƵ& R("8)zީ-XHZA ]0Xvl4b9tc}LY*R4 T23H̋flq=&i*Ba $ MLVk=m<5J\܁ 9=],lsb gpMIf T%z  ^-DjB2BDRR%q(}Ƴa\K~kBYK ځcq VbJb5ɻ=LY? p6#9Ph#eqXkx,iA |y@Pbo \lPJߠFkxf.$3,C I9& K&^}χȉNeoh gKgv7LBǡ3T=FN4b{j/ ¢k y@@|ha&i6b7H jg6=MKWJWd_7^,df yKI c!v|j9} qѯBUmMdZaW<ݵ}8&b9_gg7vsTN^RT!凬$?=p)d%P1_޼of]*BiV({aD*Gh=!-6pPḵT9?;xj*Fw':cX?:+n>&P>X^`$e/bjcWuwTh'Ǒ:.V\jEnz*Òk{G upׄFUګ?+qQ;^ws,YIcfiZ>K6+IO0tS]^>c(غ._w㝴K5(St 5 'r͔a[BI6;s ^o %/+#lNapeCú-j0!`' l {9㴰+ܽ.O X}jf_F `mVf NDn .Ś gɅRWEu֗dR~m-ٺ0bu6Kɒϵtd?TXkYeU5ht'lo`BmhNLS"r04l/<AcYx 4ZHEKTy!m=$FeNr6֔*/ClPLkmSZrwr^G*%6"k(߭&z10SD)~g/V:ټs燀6:fkk} `ιϕQ ]t W#JMbQu\Ơ!Di=ǢZ  Bp"nJpUFQ UizL,q'n<{?&j e+͏hKԌ²e~{ڞMwy%*4U4 Mԅ<`"ƵEcc-p17ٜ W:ygH JN4~{㰅$wFVڪ 6;AAG y?ߥ;HOV' QaQ+i ԎΒ <.;W'Tdj rSw(hQ;KfW ">4~i2ߪ"ik&XS ԥ,y&nz>6Zj#"CޚS?t86".BFʟ9;8b:6u-U7i0gI'5-Tn@,XLtmu`6y!b:RV%H؏r8H0U>|$D#GB-æ_…8y j_qRٮ9˩_2o3k__B0!\AF f;?vyg)s~-Ǜvf{=S1C }Wҥhg*yv?L:VXoHE_lۢҥKL,/gK?`py߇Rejjs'PRɂdK@@P& L%MwΜyxhLCyd~6=!7Uڢ+u;>T }7 ޲o2;<@9q*Sq1Tcܤ,l!&/S߬.xj+rѳFm-Bap1P]獟2չbpvr5LCvrAF^: 5,"Ss䫦N" "_d4F]m(u !f۷dz%8=T(%|)x|z)p O s !J7gnd`'NnYo%e 2p:-|v_m$G "QyHJmdz_Kx֢ز` G9C#9HC8JaeMv(' 80dYWHX3w`8Q?~B8+xK M}J+ɴϛs/𠋔a~h9tƈuZ}KP.#lޕXȐޕJ0JtqB2M3Wwb0kB0tTҍ*Ul-ӅH tk0H~;6<R{ov#<*L} HZUbDYtmW^L79T X 73-YmGC$$wj^b|y8ʘIX + {`!\{w}F$s>[&IWoP<ȵ$qW2#!0,R˜|8!J䑁6&ר/a~y6ٟ!Rt{FɅ~i.(3 ʡ4 t/A7MYBi5Kˉ*i},0rT)l] ]!d>x*/ԙddP 2>t5!W7H"Ue`:S;Gα4G> W!7hv3z-5x|}lhAп"캹w%3S4m* BiƁ_\V =jA{F%>/^vcQP7-V09㴬#a^_]g\l!b:?Vj@Zƚ'+b b歨: ioM!}hBm#+\. ,A/ &w@"{zg.ͯ'xC[`ε;а_|[t YG+=Aw' Lfq!^ߥ Ut`: Oa5[cD2cE+"\pCwn3Eċm3O8^q.Ν)xg~ŶpqF>Wr]/b ̾u1@=N$I6+D)Fpw Tc"PdhdHz1Z^Ycw 솟ho|xߜ${{_++$quI1-xYc͟.wPKG<7bO+4Sи԰D}YseEbj"mv۪tSa Qv$,'t͑bt5*eg5tj^ܪ LTX IeE-sXL_Ūai2A(z?Tq+;b)} eoN]m@mUq &%ƨR'nMN+մAĮ\u82`,^ox s 45|R@Pg b0Eȭ:yk'†RiSJP<^cu[ Fƪ0`HgW_UCƛ;ՠdirwiDb&D+|6,bgSW7͖tq!LU.6SmG ĵ.cp<$tS\?k9~6L,ThyQ poZHpgu4nڎaH{ -pBhkFipi/xpmH(h k2o[UvH>[3`gM4ڄcHk(NcQ6i_ӡ.Lasjd!WB[!_RdAbǶKWPW鄩 fN E;^MwFN`Rf_6aSKxبքP6c,Y, F[rq>|פb 4YLsyƁ'[9L zL- Q/<ڌ)Dy\H#3 oq`Юp H#!10Z6ͶpJuVrmVdsḥ(F jf,EWi0yJIž`&¬I{.9 BCs$mШ {i@c=GMl֬E5i+u/WT_bЬn\dpFi0vtZP\arh9s@Odux?}oLOAg^6,V0J:Cd3A ?/:9Vty!o(-Gٿ6*M(1b78rvXQ&@| ȝO=ߠh s@$x>V6>;Z"se`#2|E3ւZ±rQS owE-=ZÏ$k/ŅF"t,X EŦT̔n>};eE'Mf.Qqΰ)pΐ ֢-bBo80,r&Ád`T|f6:),>Yx~`X0"%QO(AZ((LDrr>#KLlਸ਼ORK~96BddgGz#Ul&rW!r7SN[2@PنXjȁ xrE3Q7'ya Tv2`jhb(~gI`>kL e7]/y.5_li/35X mUKi`;G=gS9'3ff.ȕAf0.i~z@%7|;Ul墮}3zuEt)Y'k'aQxR4/TJԯ3*/!'@q?ԦҌyюH\ scxJ/Ή-J$ dvJ9,]ǁmcz'UM铎]bћ=Jx Q8LD0/ʮ\Z/fZՇ7ķ9Mlnіa s 96CkZi9\[s9#.th0NsO+GU>ve2V~:tt ]Zy>-bjL}[d$3[2%~Ŷg-# l([~)Nט; Np0 ~&8&wDAxS^/y zzv[ R[´y X(A$=ʂ;jT?te/bTYLχ+XCT3Һ15}C^Q2CF1bO j$ &Z&fmNum_[ltsޯI)#[%hh⵵XقTsB*Ő!5vnDx73]K"֩f)}ϩIJRC֭>r :|-s=ПmMkPKc+J߱xF(šdqa6J{!'x!4^;kA2 s?\>%>?7ir{ty i2Pk!d*F)I:%(*UFAg5M[$7NZ&vܚֽ[ - Ϊ`SٕX<-92~{F;͕+]5vb> 2̇~ WV0h@aIEDbk/܍)iACCxZtJ3?Srzb S `&46eUX8LZ(dR%AС9 ?٦h\.DAںτ E-Qlikf3WA* J I 9 t jG=#Co) 9uA}F =&SHۘ谙$QNӡ6>rϋ}> { 8%jݝ8f`u bOQQo~wm1b}_18ce?i r"vS>N J i%֯^'$EZQ2bFpPԡ*CsK,W!658hK`ky Wl]2 Fc[ Շ9f'V+Xj~oWqo@Xe(hx( }tP]#+O!mub2Slf)zq{)qigg}71zWɵ ,Ve'-cz/SR!"kDt7XTh&ՄxXWi V*&*c*{ʪq6oܡ7Sͭ8__q|TyuvnRG)0w7Y'TsKE%-/-$V;X\d y<uS/V//f}pk^^hi7*"hł(Kiu$M%!%-]k3Ee'b$73(%b8eHFzU%M|l;QXkxdY;փ>GT"7O?FA^+ 5R6Vԑtv: 'nci~ihY\qٽ%B:fv4A,Enn u '0):7 ʂq-6p Ses+tLOMNA,0;RC֣n ξ܅Tt48aQB>졥enC*jQ^1foUl uh?}0 t N&$wՏpX2^@| |.wkO3ɼV2 \ u>|mI_1L`V|5>ĄH8ӑN5mH䜣`wvYmDQ =yP#>\gkҍUԡ~̗4,7`l' îG  D1P=@D5(JuDi >\=la֗ժ| -::E[(Ճc'dsp"rag_u|CpEb;UP 2Б'[N|[}$dfɸ0;rZ=e9iRe]-ʾ,}^v(PSf.V5k4&*ջ!d9]p~䑈*Ǚ|^ݳx&~8mXTB>])D{"EbEg`D_Q^d]MkKO&ˉ/t_ vs*(V?2nݵ) qˤpOq7YX^64]@ Ʊ:yzw`Ixfb d% ݒT4ٸtY-MI\2RUnyP=2%`ţaJtD אSNŌ,|n=0̀ȥ-[FLؠFmt]}Aȼ4I< Pk'JZ|N̩0{#0yV L`9#LM i1,h_Oay +t,7?RUv Zcb)Mcth`Քno +7k?Pi*Gubƶ҂hĆ T{n9G^2і$Fs-!#ِ/S~:[(kb&iE=b*yFV5Ţ6@$!EE%xr_R,|u TS( W Ú&Tg:nޝX3Q6FRЈOJ޶˕xAs=<)}ꪒCFk)-&y\:b,cM|i]nr jHݗZ ”iFr]Uڞ:;B3e%!շ亝S@{C: I^2[zM`);hGܰ_UOV:=P#/C ̱e )YlsrXߧa?-(iR1P[EpF._/rq`/8Jo7 HYiAꎕN~&ű N2x0L*;r*' Jd(QiG^֬sSY`}_S%5H3seΣJH6V84\w,BZd~>M^ڜv^' OVrig`wZ,oC; ˇHA,[WhQ/p27ՐqKHm|1O Iꛮ ]^CoR4QB7ui?S+W6[b{@Yo=ϖ5֪&*VP`iGBNl8fAC-Zif|V_ )0!\Ia fvPف;+]m:7UZ9׳N,b7sKеM5,9e{_0M"gI-\AɚH + \knbxwf6K|6 }֦Dmt{r "pCk+ <%J`G.p9]a^K}:-JyŲqS7<\wh3"SJ#ߤ䏏Às!A G&Zfy *͊s"7yۘJ2҆w@3?vK[E0pŴU]P#?I&[C YXo`śJȥ{iw[ISwN>|`cZ[tcddž}"&T m*t(Aܾsge3ꑩ|Wɋ8i#鞿{F1e +fZ}\'* g<+eSb|gF)E~)wb{9֔3hi- kć02EJRA">fze4N mM߹W]Y sP6T#K5[z㝕pdSwmSw+H(q( -ǘ'2ۋ|J+bi@Y2}v(,36;4Pԭ' c-"e }|*gc&OT+yOUkҏQoy7.a6puf/YgB?&Q6xF't!z f(`w)# !Qu;(5@u.(}SˈO[&pE(F#pFs-1@+/E~;x~h_gSΓ=`? eb­(C߯++[ 0zTuN2gIm9vƯ7Xb I%jȭU_jJYѿ8Y&YC.<]-Q/Gre7&)U$:X9I/t4>lVVUf2 QUWE34a|щvپЮ,;dz{Dq[ikK-I;| >".( @ULvJ}eF4SIkĤ;)@Α9:ueԵHߧCtm/pk_ 2{V, ;C'j=*{75M1>qc0kMuw7rlqq΀ɡut*m'?[-N[U`LCKor{Չhm<?8"[n=̎3ۥ^bx +Az*}u7DŽY)WGS@;e3uAxMWl9nooIQʒ54X;jjיY.7W~3Szy")*{5{-F>s̊j}ps~L< _%{5p/8g*/*̣vO AMwx0dEQ,9}f:Z펅mU7\KI qI+!H2d`0.vS{_YL*uyu.g:IGH>,45'4 y3,Pܰr  s ۏ)g4۾[?2mS_g BO+nb{=ґiSE:#0)``뺧|B_ #Bhlxsv!oG%QT&Χ&ѕ1l LI}fJX:(꿼<w~?f5^rT퐼fM[wJ3A-Y'*YuЧU /\ի]7#H 6W4 de…9),tm1V?#ђL!puE侟.OZ}x|Dj1(>4O_a(/OV<.x#ܟ6O4Zj5֮ +_MY "*P%mdZZ ߇r\eq|N]LܑIPi:SABA@Pܶjo _:С4*I:Z\m,dQ`6VvNTw&y0Iƴ: jZ#r uaF|e=1-7ֳHqU)Sq g_/ոI'4t|!y ;U19z r`㎶h_,Q?hh)Tݓ1dPlEiBբ;OnvyJ 2=͜H4 !G]9 A!;;[%R5HI(%Rd! -N 87^`o)ߎxB\ R$i&J;ܳ "*X#ڢCuH yͣC|NlŃ}|PCCQ})vJg z{aKuBjw1 sF#@pB=^H"go! +tvj сtqeA=VH@\$\-WJЎ\qX-Lo)%reH{7R5V5G _ǩ`OWbP1u:V:)Tl*4;?ud$h=LuWDEdn8ؠn&nzGЇH쓆/7C[20E`FϿ׮$v7[4Zd|/LSa~C]Kʱ(֘q9[2V+(X| %0MoDVO %\dK[>d!<$Fl aBhsR|J<; ʅF]@[cרk݇GB$Z'kj~Ԋ'Zypw%@ma3N8)sP#`;h ~~8xUrNb-tk˫&rq\l!0 ];D(X7)3ePzGc˿G%@t&RZ7e=RfJmWFܙNtfAuTͅ{NDY?шqjw 5k'Y 7,l"uS0!L Scsk.ݗY@$9O9F.{!6H144]B0>sq5KKZⱇZ)* 5iP@b2J H:$xI,b; Lvl`ufs`z0Muxan^j' j֤+.i\My #YAnVWZ6KJ|C-~^vqNv_q#+"k`-vɲ $:f\-Jn{) U.׹ ,ΜW c\zy+!4DF]Z5 je9DpibYc]ʏUJuo<2ԪvyUy=z}ǣi+Kc%/Ey$u r&蹒MDV% 1^.67%o]De7o"*Z_:3N|pGӈ|2Y(A<&ai9M4[k}]47{4T23ӗu5 5݆oXƹN輔 lȂҪ6 C8 }sڧB?ٺ2ˀޚG Ͳ"_NP*7ypD;Ĝq15 mɍL2,2Q ]yt#b8YnY:1 7u'{2$~+g z2X"ƂJeLs۝Cg^YgF{+ mvt,= sU :۸"Cy@pCe- U^v{#OGsVA"zҋVx6;w(nw;ylYxEM@ EGݩCN5]%[^68Zs 锢VgC驆d:9Br'{d?32d~-a-E# "y'y?ŰR"5VԪw.SBKw>X9q};rCI~ v\VO.&ZX r]|)rN/eTWs"dP3iD'vY鏟`&(➂<5q$ZHIպTg}SA"8E80,PQ&?/N]oHg}5]Q4x?U. {#9_@A[>c07_a[n( Z|:Zn Rq"mOH8p(`m`0\N<qP 蜺҉[7=gRnvv {"2x^vj!Z@хIULcr@&S őޜ}>iH ̱+2_7O#~,O;vky<2Ap|xmzٶ/erl+ . |bm?oaП+6g);/وԧbX_6a=T8 U(:[YRLWApMߟDƗKsŒHr%:B]BL Ih%V`fo:~v8I`eʿ9q<)a=!x=cˠFAS j):Oڀ(1AC K\nNU~$ֻyOjC$iNSy[{|>9.L)Fི/,1`R`ԅPy@4m Wg\"MãL0we?O)P;UV*q.G jɔ|x̻Ҫ%<;B` =+3]1cA\Th~a༄A8Wv[?iT 14 χG]i7:IZ@w!g S %㰹 ^tP໥{S _I2L[:L79K?[ݛ!qFywMJSP^5d;_ U 'bɦyfV<[exm]}Q//9j l ,2b-tAtBGQ/bnƜek{9Ut뻠U*Y $)Af 6!A'8v)W|isOR 4B2[zRZbIQ"  T2`Sr'gt*J:I #S$t$럹ľaC|(w*seMR0D H(|rU!MNN̏vϜ5O:͍5wjJr%j(-BW Z{+W"\-͓S#k4n\&<_vID8@a%ΩCd(@gaϔ"j| lZɎ+KM+F1~X$[%KiluuȽWnox=`TxSWh#AυCy{O"OF^ذq :(8A'<5eiHġfs_o T~aa$)vU~;aw. [ȨuoD ׻BŜkG-\݃r Btm`K^AS^cVrSO*ź%(V>ErK3s~)zٍalBk#Ž$X+*zAؠع|X(4IOu/C"slqٹh#JW*tBimǐG<H" [a0Xy"_`}k;x)wկuH>WT #*4l ,qʓ!r ] M͕e4[{/ҿރg7uOo=6hF y Pa+7*9d=wCFڳmHR!mَV4]=so.ala+|>;Dޣ9**=zuЮyQDf@h[u_E 'cQ1{3gG??VRb'ӪL+k3Uny)^9>s9Q4=9 @>PWM*cPw)ϡ6Y]!4yn|aw0z1@̜QiGIs=$ |J@i\\kyu2+DYD tEdr8 )9u&*k%.rq7l>z8 F|tmU ,0Txތ:< C; XHB?J ?P">+m9AHqgXɜ?.~HPHXeE<ũʝy~Jxh[.'g+EiUL!wV|M.hÝ66],cϲ1r4yj~! @p*?}"wl˾WbEsQ㗵7olT33B ~0K)~`KwId)'PHT !EBI۰ (U0b%)c#OMů;]To J)_+b34 2B똾+[@wrw%k!2(E!i0Qm~I2lYR!s{ b:l R]RخaK1[ՄJMesJny;trF~~)6 ./ ވ9i}7s#ܯ8VYUOv:b(r-l18f~v:d7>]b9R7l=Črt ewhS"Ȃ"e#{=!J4(b <'I]9W<8MꨨGN{I:,ѶU!5Yi+q?2e-l0U'5Agܩb4AЏD/R{2S"xfFF#'2h >}Y:>g~z\ ?C1шp!u#xդc^˞4./"҂PT?ݨ6X!?T˦>حZB+í u@C1WJ⇬#7̆:`Rs[FT_iW?gvi*_#$^'L'_1 I12Mho7QuyoYY0wpiN@v4!䵷E =׍GȀ(3 >\ kxzc@`Uʂ3cHz]yGj-Ä|*_nb~=uSx}*H#qPSpپ0hsQY{͊I; X x5Pq׽q|ؿk : ?&[ρ?=E5RŦZ6-9] Wې^) hal5-tKRkHiubkOYbM{]-WМ@ajBfX쑶Nz+ {Ю}<ެnKx#9dW~-㾮Kzk~m+r#jq;k 0(Z hIF\.̀-mq\8njPIw ^ AQgXN`u-ql> 3W '}(=OaRchebSz1d^yy'݃>\~dIcrxM"rTag (7C8X i#{g4k&UNm:: g}c5MEIYފ.D;V9&uP~;RP.&mXFzrGPLd 5tH)VO~MKj ͒t5V5oQ>>g.&BjTȵfLLKX=E&[U}bpIickmbC)׎GPiylas XYqU26e࿳#NP.bxKgf(螗'60лӄW("f-yx/=z6Cph`d-'DgBK1RVs0l!7;¶9A(+3KaV~5u27_cI~`H^Gz ÛwOaϡ;.&F\_Yx2|sLv:3꡴ 5K`c:47I8Ոt/JAg8pxb !pgE|N'{nvBޣ{N/ZV,lFm]C'}N2u/lLOzW!N, KZg$ ZUch3X;/o;|AuT4G+/H9D5BAv\Ƌ#nM`,՘!l r1i8fCi颬{8ۂp\(Kzz( *%goQ8 ly(Q-mKS{®<>n+cҊc=UHjR-?;=]I|T`J%sJ<l!~n.eTMqR@[l7A k=Oc6jr6*CݰƛRcw.5N2BO- -w^k.%Wiߔn-'JC9r9N*gdZ2#yk]0 >nΗ ђ蘮E`/}xfzB?p[mf2PaX/Ba q6  b'c R U~Ǔ#Qfi T78 {(JIשO^[4Mzs$~ o, bg]<%n433/43$ajGl>,Ԋgߧ/f{#$9B{zp2O9IoU"ͱٟ)q^9j ۩kNZ3u4)T@!Y$`WwEJ=ܭÎTF M]F=wm#Q#iJmcﶅJB(a;[nW:O(^e荬ȣ[uvܶ8g² 9OB@Y+Έ6q9pY)T - GRbل |v:ڕ|dXS]P.rT1/A";P{\Stʢ|x7o -hm3/ _fQMk6]{MRӥa$ͣ:^E&hL5O6X!5p R&)k/WQ  %Z)C(3>ۅDr7ٰe1w! CW^7\S]OC!*-}v`uݗH"- oaEa(Ԅ~ԋvt@8H Tىq;ОZO/i~oa6Q#.!VZ͚0jJ# ,XvKZq^Ĝy]|FTXl|xsr2{\bxH V?%uE/nUEk8H\%hY"'`a5U#WyEu¨m4l\'ꠘz9Qq߰hN'[Ko!CᇸX0xz9@uݏDkYl Ty1AF㾓I xޟJ"!;v~M/ 5RĤi/P됙ȌJ%hޞ&v-)F݀]l՛a1j _eaGn4GO/kj8Z.O>u82^a-H3g,i?8!~=b(M5)B&Cxآ$~h[CMbDdSnYע[F*;oOyg6@wnMmLPg;lW}tӤ]A^ ,Ac| LvFR;0oOOC>E9.' \OUw'A*z]<n󃓌|̏5j\ީ^fh#( c\}Y؋s# R!`Wa@Z_LsmF"I`lhırKW^N\)$b{#"?,M4n awJQ1ecS U7i$cm]yv_)|2&z ׄ]i08h}pMø]f91Sb E@R@j}`nn* a$;[`6 =Ff%m&ZpϦqw\9)R־?l,=T-\\qzc^̱1N3PK]2}֋ܒ#[&ʡĺ֥v}sYY ~ jhz3M;qwfڀ4Kʧ65s%Uh9EyFI4fƆTZqS>d+\&<_K:Կ @FTǬ`9q@YޑSroYtgH7e_ =:/ ǐ4.t{j q$4"P3LiX] + &Xޅ o_ȓp[U,9)Ɵ3qARTqG!rtXV-7*hN&`GJi.~6!3U9!)?r:aq%m j2U%$T6l 2u#aŮ 'ʷ~z- IQVDM#R0Q'E|@Hauhߍ_Ed:P-ӡ(0M.aiªպ]AVxv$WY!Ոy<6X9=4خyHnΜu2Fo(KmPy:BAg)ǰgJV-SjÕ! ~AϠ@#Ɵn3sC=|+8r.\^|j0ZOw KIzmޭPg pRАqVE#K^hج隓=RD bZF;X&_ vlFyXN빬#Mjό&yo;;>ap5äiL KNrM!Y,f _8 Qm?e%nAއk">WbK5 [$vo(^^EMԭ.YonQn=ދJə9ڍ [Q{>qB x2U5HDZauhPjbksR* l2k Pz# N@k+z@*iKm-'fżH3j9O6"\ i"d]h-< (#)\s<Җr"\M2!Q:{' GЇ^4v(jR 5,9LG?UMe}(?= Aiz\, &^rB9L֧6h'I"6MHtbоAc!HE!j#f(aTMΝ!Gs{Aπ! Bgwǩ6qyю gCO;wA# Ұj6<:1tj75c>ɭ~= 3iTp[tl0<:H><:I&Ωیmwj~6X?QOma&-v%\FP};2ŗxȦu؎r }R'E^T8~]VN]щzI0|6"l!g E)43p2C]{YʓaɄu) * VfF Kg}+}eP_u،WA6j%|]zccH ͟a$qQ(<7OuҍVp96F;@1|{R}jqB3y@ 'VFiH}bMw  s/oP⿻ 6i(rLр3nfWI팵 iܯ%H N`-!D3ի&` Vv߯fwR$jCս fnoI+HSM.n+Ql :9QS|6U S$ _< M03-[v 1##75_RTZxҢ8 BN (rкlIh'G_YdQo)[xA$eSS6(FȷeKmQ]\;NQ%TY5]` (g+Xd VbX.67ˮᨢx*j~c N0{gk0n9ÎQ;&=ĸUɪH3GyAT:RG46-H#7 k;|."w5XOuM7{vՌ<  ZK6CRZu{ِUzZ?Nh= N*Rl}EߊK, j\ ~/NzB|dJ]9z(ou;l4OgRFoa tnvwѕd`( '_!X3L.XVe9ϳ-.9$jfe灮to`ܤ(hZ>T^G\A~aV!gvگV 6Ƈו7otzҺڿru. M- Ɨկ.Z.4;`nEɿb\<.PZ{54x`ÞKMWoӹۑ4&!9 }sn9NFl>dLlsSn@`uQjP(Y,䚋҉䅣\BLRX4m;AA*:mz,؉ [I[ֈǘ Uwe^xV^ӛ~(*ݑ%jG_~tάi#kӅdH C7q-qEqDsxwx4G"zǿ`}#B׊G8Džw<5FIȑV?ٯ";vAD(ak'9,pEs ኁ*!l[ >h+;µl>mӘG87ޚ/GؤS7ͧ cN/f;,!̩2/;14wy~c/jѫ,~SSԣSPbb$P}^vg7!`S-d(N* 1DYJuF ;+輖KB E봚*'h7W}0!X{Du(v {%. >ڢ ,ۤﮠB؝!ōW(*-RZ @x.q뼸Y+IǕ0ۑ'N| 9{:cqȔ慙+鲞5&7^y&#z^&F._L2ΰ%ǐ"wf?`\Q`gn]mʂ,ƖAjb~뜫XWN[sV>VlxDWtX'`w ^zPp D)!6iǕ9hpK[|GP9hy0BBX@#n|FRX }'kB˅:N1}6C5U'ʯ~쮽miƏ7b1*. VGΉ8'K\o> LlW%ļΊ.$i$řXuѲIs_߫fl^ZRo? N.hpHiÿ^;#,ǓJ"vNEZ]CAPFs9pN(\.^/N`-K7cx*w ._eȹ]^CWEVu^ x59~:{8uk1ME&ػ+%y>jV-Ǭ2[$KUicKkM_=ƁNBC8CNB/I8z'(qkPE {Mu7co+wLYɪVX Sѝ'>d 9{WY%9mIh@SI,#s}N6 OBB{W&yGFN2s~RT>AzzlۻTZ Xo4t1d^cXt(A SxŪZo#UC/K>(F~[LԗT 7pߋ6ɔ'J6G՝egi8)(b/H? !M7w>C Oa#Jjoy>һp A=OM:a|+v; H|[]GÁ^$ USK-BuBʪr҇;y)U1N}}O+eB6AH`-O08umj6ԲܢRGYVd]E@ce-dUE^K< _ܟ DFw(s#]#۞TPiO_M< Kv!%{zQPwWּ]`spm7CO3 QtGj/ EUF>IwR>)>k@N@QVfRIJ,{Ϝ}1ǚn 3jtq[q;٧s| p Fg]b -W2l%wzo]ˡ(0QBF"e;> 4m-̍r {aȳ6>,ptzs"u8>]p ZL$DǩݭoOv\f$vF|UA8#7HD #3ʕ$6[@PM. OūՅ A},Wx-o(vs _0ec`RXIw{؊xv8 Ӣm<,c O͙nQeߊzMjl;Jy;wf!I礴w\jJtY.n\o=?=@*C-AK?17I7`F[ ]c ;u4*b^|WѼdk/k͢,Y2qգ^P! Gbt傴& '12q`9 |10 [^&K*`y˘FPD83gy2) k/+ u 5V&ܫnBK;&ΰ%&|TCV?dxkWQkB'yw |QYzݮtYN~o=]>A D92\6 nGH6!Z<\/pGHc #0/@t_Z@?Y:-ܭ~NEԢoO&R`5sە|XWAI9}P'MbxB ]QGڄTi1(e?O콢rQVdU9 0ӯs19's|'ʮxLpeטxN@@taΉ {t<#@oOtƺQ07'O ѕ~'0k{rDlaH7~wwAҟ~(H?9b$ 紷HmUr9d!T郿l{پy^.ѐ?ǬiSـS =mq'vs+|?iQK9"_;W_}7^8껱]`fB4ʞjyT\%7|t̞lMy@ |ƚL@b6ia.͗اny=t+bߎmhROl/:r7@{GNt]ׅj8j ͕y.m@BI?a܁pNs3Y5_>ks5*~ʥlʏ6: J}Nm=T|bԊD*9j e1]PyzzE%p`yA!xN|J'\۰ cnnfY /݇m \Ya)P^DHh~ U yyu ~lߓE gd3H*!3Q0oSqZ6(m.to"mqiT Eg(TѯYi|.i+%N&V~&3ή9e_ 2\/=r+׵fU '7gobpqP5"”+9~G"w'`z8~bMSy ^I81e5lSFgZ/7 hu!ᚕ&"#UI6me9M" b0ul,ue@Qa^9l~Rϵ{kwv9iLW-NXb5QU&B WkXYsXC:8׬0eDC4Po}5=Ys|=pG$JmW Loy3Cd0:&Xψ=\ ^ኜ$=,XC(m`e~8=),i^a .^LJ|Q`yl ?CSEW>Ubͭ_I8&3N :4zdc[LR.XIaxL;h|#y5 PJXNڴTwʛOݗw*8;'l-yNuE6udxIZz̳`(i>t4Jfi.ſm& +m#.[BPeK] <}^./ϩK#8]Fq}9/i.qo< ˾z"@ȗ8?;ݩ^1 V+Y<|&IZA*s$iO=d|k>e= 97@pM_* yIj'+ER!*D`[`Fіv_p<5ozIuG+ g~@iPoN[9zNG,q? uɵݩHwzIߓ>Nϔ֍S8&{8pC' @ 7x[!c7֪qS?O !a*@HKYbP5ceMUD'2xoD*,ye(Gv) `?bŚgdS3nSkr'FcSEH?o&dp%&P&M 9!%,M8A_)Y} ->=|tj$NK<^ޙrUP M)CpJi [TUF SaA!c3 40yf>I!a$E*fae\shN9p s 8*`mzP Do-2v!gp8aHҺjhc>y! -g&$:)q_@:P_'lSA@Fmn֥ʼ߯ک*VB,Q硌cdCRО#|_-,Iة< mӳnnS,-c>-0@7a2-c:~dvC3SnpUBW^Z^CjJ^ُ()iֲ_+GfyRozEG[yX%"-h | ZKD1#~ȠE=1UnG1(qt,_<8M]S>Q7P>/0?bUrwh$shxY : ZǏmm:pm EZ:L4:M4\tC@txDA,`˔C^ԓ!, EI v؊_G= Tflr-&:b+܀ǻ!̮jɂ;&j JfՎ,+dom1sZ;TVw4Q/Z bJ'E 0횤9?hD|T;2ˑn.&}UcT+Y>@~+ʫ&;OaPf`i3NgLN-/[׶OeBwtFU&q]]@g\QR[ﭞHL"ǟe\QOx,>9!w@V$}yKВ!nrNNL}|$aI2C:A3jBt7-U,l3ZZ"W\%t_XrLvdrxvREfל'0DrId*ϴ :Iڙr6v.(M5k^Fr>a b#ڿ*R0ه ~{ oD CeOX1_7=8=Hߴayk'HO[~/\-#VԖM&Į5_Cߩ_>@[bau1S?Nj4I}\Ttf|0&9fХ#q&Ċ/VU99a8kKlXNqɯEGA_S䯷=;Z'kwv3qVvO*#[/,[VOFȱLe[$dK,u_ptԜ4-u=3D`icGBtW㒎.&S=شITj݀'lx Iw=d"~u>loҟuy{0#0ލo~;Rҷ)/'b|FDHX+QFf5:}@v?3k(Boe4xv\JjtSpFα5`/60Ű(NJ(Ecnch|PlА_r$eVLh"Qb3  k6!yQ$8=6_27O`\ { 1cϞ͊6LOQLf¡N83o1bD1~)L04SR=q%/;ڌ8}:;VU [˺Q M;B>}>vمŎޜq G$_-_լ&~<&86Q剑3%/$R&M)/=ܛ@[.ɟz^{7iLPMy,cpF5z2lDžHEx*VϐJ_Af@]͔TOUgd񾋟ыxcuM8Lq}:4875|7pD4Hs̕C*Hf g\*DFp MӾY"!*O<}οÆ'/]Fæm|W%Ac)S:{28B ™YIwW|~sqV-a`o2Y+'wo9sޞ*)im4;1Ss5D?h+2'G.* o0*"9t|)S3oijsܗnDu G .tb"G+[fxXԡHN3ڵ^\0vh%:^ vNh%!Z S֎ܩ4USL/MecYgn uD8Sf9wrEX:icXY|oH2’7c֬eTK;1*sntq*C<˙ >p[\w{w <>9d\HiTa@[H``_me.Z-Gwfjr^xb3q<@iF :z)&ExC)%H힍-֛+N+C|.jK{+%)i_o|IK؋B+?<Ðvo!d-uz/E=voqT|*~ c<[69 zӒdoLA{-mV9}]ƫ~6 fu$#_o*m*W}j^e^UBderLRSt5mݒԲulWLAX]6 vX;]mQڌs J>l^糌7| NT}p6S*tЧ r*mo"hgcOXk ,;Lms³k>h؅i2'/ôf۳NvSfo "R9ʱt9~8~wS5V ?y?UswDga9) ,N2fNzt QCtLp6_qt,Y7ےP "8rf96W@tGˎcld6U~I!w^n$TO#C;kPxuPVzH[6ϒkt]Ћ kOe Lns(>rȉιhNb4|C'@lw9>JE/bi\(>xO]B2IBZ Oz[€1H ODiQol߻I.5~2&ͪ@4/pzS]|ˌ/3)W|scz?%9] +O nM:. 4Ԛt6[^T="dpi W +p?9ᏍZQx㊢΅2r;/3B;UJysBMhQ_|:YBAazLSC!'ۂz*m?:+φW)ټ`K$, o~Ue|&J8;yAɞu ]0GN?tpT3ڪOP! opmx;åIɸto;WbԃۣwmF_/iٹef܆~"kWn=MEHc6<7P[#Me#S$E0|fX 3!cMV|ؖPϮ+‘밅O֟P VW+ Ϋ8S!Q4h͡Ӥ va۳G^֫FT!829n+252yYwZz5j'tr%^!m҇0vQ$'OKgQ9aVѳϩ%r&l2ejETh̟|Eq|w|@y$.pg f;XUaǼf{ <A"S]JVv{V. ?6n gC} $n`HwlF"-lcFu:YO jy"qFC[ROث} j]Z׫26?Ho›˘,@-,MV,l BeMk akD`ɲq-o'a|3*I<_$t gIַ0|;a>uc^eY\0M %۩@i#21E}y YJ/Ns5t p{6}^OC\*|+L۳|2yØ-r݌~iRE~A[f:$|U~9l_KtSX@an2d(Uf!88ݕsyom1=RkWѻ-u|0ѭ2.թ勄u{f˷|=B@Q^x56`[x LVV}2H#؇+o"p+khƣrA+F<U n rDŽE8A k<]P P1i4lr%__g6z~$2:uU zّB>wv`Q8 n||m=|'F.* hH Ijd~*Ƭr^_(eE"M3^l|VB+=N ['ȼ y> ֔Dp[~.Oi} &![TY[{Q3IȘ'ydPVڵUV;mۃІ0%fSDI!$2Ԣ#ea3|Fɲnjy9<;}|w[|aVM)GS^dzHkC@4g 85)|U?F#,eg]مu<_l~r`4SN·"]DiHasJI&(k%x& HEP(]xsNӹu`îPG.q^+ %=?`\z v.T<q%lj]y w|0^ݧOUS*oh0uŬ1|r4J*9?1O-gI]0PQ Δ?\ $!'W@t̶ T.B\!<6óit8\k+JՂ ty}•b0ٺ T=fʕf X9czIfX+o=&҉Gl# zbK|zKDl^R _)x]Sv`R`=f S,'9̖jƪӰ4ocs2A2|:!fem:1/p_HHW/c8 C=?;у.^5z@8j'ւs T7_`H`0Nlնgc {`du}6/v}hrT)sc&w)_թ1HuѧQ)m6/,jX<6')-٘QhSmBEtwKeV?LaXߐnEyY7<v܄^`J[iS٬?778:q5)Ɓ1P"4 $suLF$:Wj@FkjVެ蠃}`6Ag6*kFBKpg.!qo ykB`?W\%j1wȬu MuJS"\ujOJRoΟ5WG:7_0 K³οeL5Q@#],g%1Sz)RP,I:WlpuրûG #Uk#()2i6\we(By1 .3it )q ^W:0V˄/tEslB(6OSr˘qtڄݪ^!61O$]U0l8!?o8Zf4t:y>fDRݵ؊~~#iþbNZ8)AM9mr޺ԛVz(&}tg{4 v'*¦(/NKj*SZ[8·zmY} 4_ԒLV[Є@t !)b;/`IۺQ؝Q,Q]nb1"M -I$ chԱsmZZNce ipntv0yg^T-3l!lAfSСS0iB}&[I^YDvu肤z,'1KFmyR|!:L3^yͬCo~T֛m9,+Bu5rOx|I,n& (FipX{g~˛_"*0h?k3 d!v}R9fw#ۊ,fM{]ygƑ;>`_e22t[V,nz"S)B\ LVxןjwk rT,!Kŗ^ቀX/!z=T"!;|.k3wo}BGȏ*._.V*$<͂Ez8we'%iI5xP"3W;o V޹1&[vK{E̲JoLY&Q# 3cԚE#ֽd:8)/.2зdX<c]oVUR( X($\1Mg|i/gAjkp#PJsu4=ȺP)\| Ƹ *J@\Ì}p'eaq' Ǽ5($u=9Z[TV/I=VQNHFF`{5eKM-w/Ksm?=Δ`35z@t$ y!gٛkqi]UH޼ TʑW=Xp@Fx1҃cOM ɤ*$e/< K7[GI*$|ټ2Efw[}SޓX!:9ݛt웢(p;۲?^NQ_g%R[P w]PIudϖԉb@vKՆ`T!*UX7A}Fmㄣn]0vo5%₨(}h"peY 2t<.Bg4 ɤ1ʨ 3'9q;֎BeҪ%Ba0WF/ݸ2_;zf8N4>8NM8e0ՎQ :MO' Ѱ;頰t^ԻOD.hDZ{] 'VUq_Yb WHkDIkץyMkP@Q>rvU5hEb5kRD4D#Al+87{h2$`v#Ͻ#$*F6q9ߨ}@a_6kVb`$mt?p).OR!h͸@R&tr~ѝ̳JKk8n}ǝ%2(UL~7)u&tNP cx6kpW ~hĭu`lHMQ!;u|ShےGn0HgÝh2U?C-lP$޷@`_-?syС-zzYbԉS[r?uJw$殲 Gۮ'!Pz;2WQ6IÃ&NC % '!/~ؚ*3)?/MEx]#iY9nSY ~Op%^?ҥS~F7K 9.=;F9 NO.m(Q;s 7i`ٛ-<ږ5 hbn֜*iq:2!C'ăh pĆzt.ZOzAT@U. pqn(] o|_г"M i#(p} \qt s|3W Rn|X*5 XGMJ"MQg8 ʙp\AϠS{HXyŨA=]smh,q4Qq% zV))@>&KZ:O?P˥LʻP,qQ!)wx pKg7*+`bb 5ZHR:uch+;`n)zR4ҫ0FG*op/o!kZ+G:`t1o>Rv&IB+{x2ɾ&R{Y6!f88Y0l;ox0^749\9~ ael:aΩ6]|]?yݘ#PN:ٰ3gl6]0+p,#[6x5I̧ +~Z".cxaO@hnCd Ѡ"f|fA+ܠ{xe[Pwe@B{&/ut\ -Vf JaCܗ[54Ԋs-w$r`8ANެEDU- 0)~eoX.4.:(kR}\ 'SP$|kST, jjsEt9:7L{8D0K2w5qk, JᘞV LGݚ Q9-w+z(eES#ihZ@>,Uz½7v?x+%kƦ4o߯.֛CPTLd.0yx^)kMw;Bpڽ)с=AvP0n-֍Xη e.QU q&7ʣV g&H'] WS b9=Irn#@nӪ+Ř# Se$-NGTSfI.usLڦZ9=:evc /ptO65rݾcU#|$a!HfFݞa17i 4(}/R>6<,kɺ%uXr)yZ>J;0fJH;m&tj:5tFpr&cId gSqwa|ڕ!5-J9~8=l90~KZJ$fC nV6Xyb,GkCjx1em˺F$vJGgkf7 ĸi`SPwϭN*A\,g %* ̐sH&~}`1|_U,xJp k}"8  0| px&' ӹb4>l#q&Np}e+XԟkAhCx۷^嫰Z;;+Y9r:o_c=w.Q8\9RFB؉ua1 _U4Wh_fq@f&Xs2g,|uT8⫃>Ez_ڤ_|MbCE^`A)GӮFs+l-V5>r; L]ӳ6ʁjogZ;+螋k䲪y`UICRQw[[s%QقLQ5Ņۙu88DKc khaiCL^|=PαF[E?N8x9a[ѐ[a鬉QCQwm(3ƻkչ~ݼ~*ߗDTo2(oran< v9>N٪bLb>o~/V-o1 0tGYb =v(UTv('w>- kOc24`G.F"~=YFp5y,5Iy|B4RZ4!4quLǹ\߬XB~y #cVVAfw6TWrSr6ߢG9!: =oBܻWNAiؾ÷t uVPp>&Tpضneso).PS!Yxn&1WM5LeALTfy&_dQa+8+ Q]})X8A{0G{7+Y?PD ۊ wƝ j]9$i:B|\oao}&0&O# ZIQ8!`ˡ@YvwOwWsVq<}H&#|`OmK萞EO$bꁼ~ ^UTphaghJPh @Nzy&|M y^e( |=F&cJ\AoD~*S9b|t A2*B g.u%P[Q_?sl/ dA T_ޱ67y }3H^۵r U85DԷ9һ0iV7 Bzw ӻ-Y%c#}J"F0d|Tf<$c8f+X%"+XU2f;|EDf@ZS yetvK/zF~}1?isb(+i|HUk\ꭣ/0~rGmZ"XmN4 -*S58AXaoߑj4t֕ 2Re]^x4SldX56*aNVJ,hըm.g %E, `WI9@7~= _~dkwI푎$=K`W6q&u{*pS,4CkA&Ttm9&-QDWΥFw Q}Y,}'*c]gkj'!PvY%i,9YwZRׁ:SD0ѡl6XOL0o;K,NAf+/AFU{v((Yx K(NqD"\1'A6v NR] l_dXҍL 8`t2qzge.Xz]zNjԝۑ_"0,sjYԤ)~q}/,0j-Ȩsm?uQNלʃoB:do Uօ!.ʊzϲ %-X68b~}J;hsbӍS}ItKt#0Vb2[$[I3Ӣ7ٕ%_yF%/K)v-22;gW躏JbGni}7Ѳ_1:S; ]Kepҁ UEH݆_ RX&]'Ɋ+/訡.?h/A4tm G%қdEt A<`|ο}%lf!הhDˑv\ڹ,, si\i bsRY>(zDvw9Ԡ.m;:w9\a[mHID%"W7qr>d̢r|Yd9P5fOk!u\ ޯ3A[ pNs;꣚ LژMԒSe>`X`V(s ;S!D~*{ JX#D]̬0jdv`id^B nVQͨRx_De:Ļ4@ibȤG PyOP]Pl%} J|k҄* gzjޠe1"*`ȴuzlȫ1?ͪC8Bc0')^&ʐKA137lhp"tQkzHˆK![6*a^z4R !dԊۜAC)@S̫M"+ŷ:hd`k^n ]"2ve~Y13U+1 C;.B΅Tg?U37Jd!U%J46c掷\tmQQcPKyU³0D,K)/@udXk <7_-G7wt}l)i+)Jd>%l)͓4+=) -R"3aݥb%#-GywT"ݘϩFiڐ. )bժa3J;[5(`PB<_P~[.0gaZea/GO(+G8xy[A5!ǫDZLpEk/i+?f<}h++v JZkWJ#>~KY+.Jԑ=?-1f'3.2Fb8tNEO1BJiR|,RwbOFWU9h'E;'T(- !"P+l*tH8SZq_IXq1t :MM01ۡ(/ǰ&BF&} m;1i:"&>|а494 QX7=w^5o?Lثڠx|F5cIiM9>3YNҧq8?JQ1 r"Iq1wTNIz'(%Uls).Q,pS.67LAQL@)n$Fu,4/.A dL8f{!I݈ 55ß?nI]惛P1ϊv"8 rtۍОpHnW9T4\կ#X 9QزL$qJhvxՍ$`!%MRO/$N۹CaoءnA hKETq1?\I.PG3E-ފaM5׭R78w(܋? FзhB 0xtɿA](f4܈`ޅz"(4$ AeDIi<^3D\4衚#F ,1]X!Iչ/8T39k_LHKUH.g{[>t~a޸L@r8 {bc+W pDLX;Uj9A;Lj}"8ZQ  M3ݴbv/ӷ " U+>Zk* 4$bt. |ߡӥL.%Z+:}Njϫ, gBjykKZQY5j .̾;7'?7%>#nrӨ;bi$صm"R1Y^Mv}jdL jW"Cڭ)Ĺ)+^D_?|2 K7RqY7m$M3h3(7*`Yayr|Ζ4ϡtNϯmLTÜ&/WWB%0.Dr@ӂ 0vX7h=,ym\$A:-+Gѥ}^L]G>h&e9- s`* J&HILeSד#F红c0l!ݹ]i1z,0^b$7O֮ئ苤֐~%+r<˭r +z]4@&!S iHX5an $g+kXYf( <8#Qk"֫D%@+_/`CŲ.5'S{*,pH;˚%q@";?3@[Wk_0OX vGi 7e1蕍19FK"ڒ"[ږ-^T~Ut '\Ԋ7'{z!4ʳ6hoVjdod1blJr8Ͱ` 'ߪ Q.ų: &DƀgU43'dƂi'fKg`4dF#_Bz3J o!s[\\΁LTgB=@}{ ȗlS@&=,ST !;7qcd3ņPNja.oa2Ղ ׊%6,2\AN|nN9 %iPM r/M jkHTa,$ B!(+Iث K%hî{Ɵ$y>c\M| xݯB5gKrJEFbTM#QJ &w? W#n{*.̼M %IB@Y-Zt&̤X#^3&lK50]S6@?"_3n=ϽO\8 f8eԅCR|c쒒jKF}kTo;pU#l+NvдN& s|A8OF.NFcy#[68lMc(}J?Fpyl|X(鬹16\}'˹!HU/Sқom|xf3#d5~.T d&ra}\5.q{Xٚ9OL D>{h?tM2֛N)xJ,N l0r v@/#EVdNNV2"&crj*υ۷t ltR=Jel^KLFsY{& X{IWr\[%˛ZY- ^/n&e:sԧ^=w1Y}-OHz'Nk(5糐W?GN5D?h:D#KPH@ f>X`;P]ש9!WЛQ /#~WZTۣE%|ǎ~ E#\⬱BESSyIX(@!m+9ɯ ]ΪvE֜e.,b6yvY۵cٟM15 g=0:p3U]B7fD!Vp{6nDc--נ9vͿ0|sTs1uVMɘ|%ޙk؍vvP^imd#7-R:."K֔_+~@7?n`??ߚ䩕;:'-GXpr{R]{ QW2X'a'ٕHwY}N̐c>[{[34P$g³޵'BW?9_gK#ޝ@Q0EFyG1LZ6[f xui;3lHʄ1wW{`i%ydG'c#u߷_"l׆&,ދAdr:iεެQvCTI= /JWqqXy^ iw!mFOZ ⎦cɡo {P%0B֦T S 1n0 t6GǖWc 9|  شQuupj?F>(I,kw"c9 j|K|6;IRؾg!zgC PSej#|9jFKXâ{?^ `-p\/iΫ 2Vo + 3`G&[P =Z"n'lC* `[BL\oj@A2{'<c#^:%/sSP]PV$:`\SzO7U)^6zJ *bHdfPa:.9m0|w #yz!ȿ,X$UO4<Xn5Db4@na(Pf(ݬN.nSDS&KN:byɫ_< O!ZC1SaYTܾ$~I;Y#B|JGRCUQUB` tjuQAedOw1twkoq-ߡU U҂bIc<˻rM aY(:x:}.A6qkA`Q,zo4MQ( 6OQ$?l}'cgKb1WG w}V 9WfA[BOH ;|yhjf0q`i.k?r|F953t%vGoiK?d 4Q*Y:[{x4/wt| \Z">Q{xUS<9J=JԙS.I)N[S^9o;I5yWIt?j|}G0[})Hfd%ZNeP":렱̘Xȱ>9BlንɼE3Ԑ"̺R'C6{/t;RyqPŘ⡴ЬMLtC%p5杆РAHBSb<÷_Hv582؅֍L/^ula ʃ4'&'a։e;7ZU4Xk,X|h6^CtKEğ?f O:}sJYKRbm6Y5T2uըYubaNW 43y@Ji}-q4#0fEn@>O`5(õ  +ia5q`M)̸ (zVC[>蚛 s<)ro?;U qTuA6Z<(~V,* bl믮>trk[Eqpoq%Т">!={72~ے䫍t}T-+vz mEL| ^| (6؀@va/>Fsz%)K r}'Cakڤ<6͜-XQ X1mV&!sex4Yp5p0^iGL$C wSԌ_bcS"fQ}Z5ʂuomV, tm;c Ő;z[B$\0q{Y#E+z6~b^şRʄ'{BUѱ':1UqY'M4*NF/::i̐!98t@m –wu,8er,{?ͩ(TEЧGˊoBpG+2}Ȟ%TD=MuD^JM;Ř.2s]D0:=j9/H\bGaڝ413 yR(g2y/A3ε1=5sn}vgDգ XPZHuaOK;9:G& ]\I z'`bDu0-ɡ +Q'@,6TQTXC Ѥ|4~\޹PL{d5e:%NzmSlؤkP .5$:(((SQ'[1GL޷?ω"N O4.Z3~|QbQ+o\ yhcm:#9%M"Tzg7##!DQaN7};%Do(gq6'|?-Uz.+ AV%eZv7ښ 8w K= ([, @FNMӗv!f#kQayd}x+]{ Acf$qD/ݓiئ|=9PsL(:u =Һ=˃]جYi %kZ"|k9g5%3%hiωĥ[DFN ߉ 0Ih3AW`3l F*YomK l|n?dr۰ TegTi&B@}$Տ)<߸Oad|U2 as!`?:o^0eطJG]״͚n7,%BC.D7EK,1H'P ֤A]rs}ح쓱~oQezd.6UӲ#eYIvz_16т8;phSn>Qv+gQ,Ok-:xys2N`2َ {B|كd%%{һcIYg'BBr` w_D eяW%e QFUF<Xfl /MLCE7CT^=z"R@5@C28=);RtAau%YZ %,ʛ\ѭK. + x{ `CS,r#B{V.,gbVja}Nvݞ$&><*H@!hS8V83N)"+䪦ڟt"A9.MWw"? ٖGW/*fʙv [5s۶fW5'qLFrC^ǰI;e+YvXH^ҽ 9ԛV "GPUE!EwobNXub]˚13/' >Uz xb> 86)J%*йɮ4?`20D=Z@ov|jaC=1(2_ (b)~( ӝp=}Q[Q9e`L.9C0N\9A6܍ Geb _v<OD$Q:0gtȾZpE )1捦S),ֿI[JIP~5O2z85,i&V[GPH0tAiX;e_$1צT Y>HK^ $I ߈m^/ ̉su"湵gk0Ji0ӱnw"mƞ8/h#DWpk״$ȸ {K4 4Z.cFz\6"Ȯp54Ͻw^0rg5^,ApI62EE4 QKMe3; %l9b,Og*ȟ2f2S}pz"֛:vߨr C߆PR&Gb؃\ؤwuʮ7D ra pۛ8-7Ys60lKL~0C.FR xî=)Rm_y$d$/WESؒJTL*%u %{C5#ގT9ln~E1;J#+8myqg~6"-rMqĚ4!c@<?(ˉ-3tn$e.?^9͉*@ StfzN@CFQQ|ѝsp#hUJz6wγ7'r}?Le~7G}T;)Q&ɨNځ)@ȑVM@""ggrѵCZw˹FX!N76 , D3*)%NbitZOX  Lg&۳\r"ܣy3wFYWŽr6UR >#2Qf6hr梋X;^w% }H;^J_r@" Ϭ8g6nCg+#I HJcYux]1GYQٌ'u] `{B{G1`v c+2s瓁LM+Tc <Ao&s{.c1ʒ+ c/YKp$h":9D֡hH[}3ebTPO cE^'~.MK&n}715*Wnw( FX?V)PR7 Azu55T.)yVW>*Nk}cZ<}aPb4a1&7bݲKɎaFyۥj;QIW2 BeWQyfq}ՃEmėc23mI ?6P6:Fڦ/x'YnwUqy>:NWqUO;>֗ aʴwo 4'#L܊hD49Pxu -lJŐb.4R#A `<Ҩq찴`6 BIڔM%@UqЙ0\/*햞èt\=2iI/Xp/MŻ"V-LJJ vEI⒎Ybn-E.H vqu;zYxT@xA-p4Z%2qXdގRtUvK]ZUr4= +cnb֮l9Ƌ@ђs:ŧA[xYLqI(kȖe906-i~ėuV|\2g!HBJ{Ӌ.VÚY:p@]b!w>y͠tMTtmj:I|I3EVKj(Oī `&֓Qcl^ЯFVǦv;^Gi[˓Щj0n؃Q9$lƎ}2X"Gtm"1HN}U0Q̥|ke'_?9\@|c /ov&(GUcPu˯fI}4PO3U=M%J ~7H~Es{h^j>-r8Mg;KAplaXAPn`u Jh*0cbB:r=Ơaq.OͿԦ= yqx;fuqo#|dR荋1 jBOZ#$#m*}E~a>5GC5Val?"J0E @p:B $+mE}#t؝+VIл$R>{n&WKL.wN#OSrЄ_2S͚\}84\d\Ol|Ȥ#9K]isf$RsR$@Nr;VY s{>B3V9 Bn<T8ctR2UuIP@8q5zO{JِȔЁ-s )#Na1̀ 2? -ޯŃυ6d;XęTK/U+MwUK$ 3V&,eL_%]vkR%~ͳ7䩇~`wA4u"îc\h EҒ=[Kaz^)!6@1Jߣ83G04"x*Ó濏4?h&UN_ތe*Aѣ ^ a;"8TCd7Pd}BJ';4؂ 7H7::ÐNпº:(.MFS|-7v9 09̳ *"Z~gNSܚu.vbĪ;RǸ h{zK*~CxbuK2yܱk%CvnIUqe 3 ( ,YFwMz bn5[‰-Q~I;TjdO,G,£ڄȹ!֗ >pHYA /y+`Vq85{彰X71 Tڹpq3% fyOX7ey!ڃs=V2;ǹ0sqxKvW'KasEENKFa=ZE[;ФtzJ\XᾡZ)1O"ii[eQo&B A$Un T? ,p5=*t(]MM6]N'<ӯFumȞ엽a-BE+듸[> 82/ lO+)P/x8j: W.et~z9~k=(\ XabSK%6$/| (j\u#}/OiF]{׊jT>i`PGJ&Zg Zh[dr"85JT1)BH!KDƬyx*:yVs/cǑ/鐺饼d8}α,b[˫jJ%-ʲBaO:%sF>LuY=@X9N =pbBX5 1s09"}Ruڠy@iJHiOo|qעm|؃B"N2@!6h9ILYn >E-b"J7cCy@z v${׽}%i=iR+"RQ/k7P0#H!?.V`yy[vjDj(`E,"XUSX9zGih$+PwͦEƦ& ǧ!p!'9x稣Ok ؤ BNAdB3bwA_GD2#3:kMlȸ]\eTx"cI_6Ėd ";')_l$9dO/ӝAKb R6ʝBw+8.C Ԍ)Uy9 2,#7egq3--G6\mW㽝 Ǎ'rr& D2 ّS]*ۼnEȈBӺ~ޢMxق`1EkX!ڰǐvVDz~@A%ii"R&6n`ۄ0*mjaTִ8a0aѢ 4$ {GE\CZAJlD"m@ 񣸢r=j#xJ)`muO?ֆOQqlT ~܂!u<9kp k8H] .<t,ڛ[[Wp>M0U'LCMBMCS%5eU FT`vFʩ OJח n '3R4  I"Q"֚F,2Q[*Srb_f(n '4!mF2 l={:hnҖl@x7g:}Kl|ÄXe*˵k)+p}F6xtb0![xCRK_*=ەC(L+ň4P?R̒4 w3CܽTȏ}|T՚EP':r-ɉ 5Բ\~IFQo16 *te' j [b9)5ݟ%ٵ<k\ZҪ|+-6GNެ(RAHzb[x+"X uE iX^3 w*cHl'vR;vMe U 9S;*leur"W'E#sà +'n)h!9o fw~}9! 21Gm$bAcZ1KNUHy%Qm1Btwf6eGUjOCᭉ`XO%\ U#MJUC3-Z$jxzdFel!8s }5I'1QSF²z Hjky.{슌Z[~ij_Y GV`&`>4SMIWXn Mʪ=74 -wa)0`ߡ5=H;/"(#%\U' 柵hw͡2lƁojcy/˂3U~x[yTY}ϙLVL&J#mP\K8Y&"N RB΋ [4aRr^ct/IMs(^hĐ+Nئ)nNo$re87npadOJؕl􂟌ʼnPx9Aed]EBBT7-s`nO'qUuDI㻔P2ډK200$#hu gv<(_Rt KvonBͥz81&'Xb5!|\nf_]rAuQ鯲/o>5XEh3lkMR墯ӐQAvt?}|)>UB4PZ.g(|IJwsNqb X,UU*QD-w>>b%S|>vl'ytkdΎ&2_VG^r8+%KfnIz\6{gk6d%-AƸ#+cܻ%;/Lީ}۩W*Ѓkn")z 8ˆ_}s$π/!펅2*IAFNGI*H=b_N1:LÓ;N66qUX LUuVp%W:n&+%/?ɜWYTƧlkps\tA؀? eN۞L= ]<_+I[23\ IC!ںy@I.PT'HA%I*l!8ZN*+_ <؍z+{nM"C!p=!]I˂m_tfgU.QRf4U+WxWT%MG+Qd$:g*s7Eb&ផV1^.duUB"~}vvv5`"&Z쑀R8}/}%y4sa2 f*#u7Zs%E%EYV.Z>AV~=&,^m%`-*@I<" ᙬrIϣ@y4JZ\q{Xvo Fuq F3f^;3S>\Ѳ(Yc*ÇiH,{ =(p!D;Xjӂp)o{S5l/i$!ˮ.N ~> &܌ i܇Vj2>In6i@^XH!RrM%U'ؼnFᮅ-H8m˜y=HӛLEm?Jy=rdv,a_q+wWDCٍ^j؇:G2^Nshu9xժgxx vdgO@BupLp=7$3LV?8oPE=L(J6Otib䕢IiUn& "Ks};&&Ӿa?^0EgӸnU+d(u :#̛;N@mc|K+ +>fR1.G*1Vu7pfO"N[rd;z$ESFOX7wn_.lpXpɳ'?'^ZV.Q&x88~"WcTr ;dpxgz4ӓ>w8&\, 8e%'Ha\s`e!xuXl,oBG$iܦO;x!k9n]:o48G<7JC*}"rJ &Y9tD]C76v*y-,;RD[2TJoN[ ˘bJB?D8^UE\ȴd&۳H5 exy[E~0V1]0{Dpn;xix874U5C#fcယ+%w<.`|Gm.$3gr2^EwcB%,@ly>T̶1Abt#ϻQ=t禋h-6+wS~"oF {7ߵZ&L*苅 0%\ vocؖ.ErӼdVK^[/z{~(.Mး%?ߪUMppJ?|!it=pg֔@u_"- ¿5н"_[= Y@ Zn]goV3Iac CaZq[/|v@7[-u$}ZO.%{׃m}Ie6T@0no˺gg 왳.7z]O'U7}BzAڕ_g[5g2f6QqHσbB{p}H҅wh1P[5؏JbOn ,sB0"tJ.-&tyE/fBr>8}"8ތ<9~]!3':lV^lJbA/$=#SCZxUX6dP>Qx ~߲X S"uB^e[o &Zb$4$<ԦN;tZ5n::ʍ C/.b(PO2EQncAYT~=H(U#2!^HwQ.B8/[^, -@Ctb/P;: ]4T2EJk7CRtnAҀ\,o*(N4hp޾fB6u|`crE+@ ȫ" U\)iKV!,#MwmB mH*71gBUffQ_gBQ/__%|O V >p bkхfޱR0|v;dMj6 G]iY\afN a:,AYyG+ !94TP+n ۼ_\ fڐ(6w0宔]Y=~~n0LP8 \5 ͏:FNa$.WR)N&ݯ.NJaNk 谾Z2 bt #"rjM1=N70qOzD;v}X/S| ]5Vz!?l|RGkWIӽOOXstb14  k5ڭȈ,X)/JCU\硧?Y[+= wPpyqL3hRCF/߷Y|ſۭC WD;ܼXC Wg<0 F2SHl}M/⌧M=^!>xNѹJs{˲L<6kAuOI˾Zg=֔u[1TW᭘7APh~pWo S.W ӇHl~v9u#.yKطęn&-{YZ% 3I(uX03[XbEL8TI*/ҬGjmFS [; AK<^ jI\P<"^$Q4-.Iψnv; ޭakE1At<}Zd(,GMxUa7Zx\Ic*vL J9y*HǾ+:X-O`v ,CdZnaw08NthsxJZ&=eƉx~H.O(!LAkrV2F>(~m$lJUF*tLBsn(C+I- ^R/8^ܥ`p^t 4 ܓ^D%}Æ-BY7υ$M +c}hWK&9V‘mtcajy Wz#)LB]RJ*濺hNqyS|W24Ōz6ǘA-;q`qBe- ՜=MZ/ǂh4q B~*;аlJm\TOoR ]xrt'=_֏{WLl&\k͹6"wQMNZFimm1OS؊el6Oc̊ͬB%ho"R-+(u ʂxW*h-h{"6Bre}̈́9mF)7jMr֮øThepC I%</&F2'?k76ެ0!F"K飼V@*`tߩZˊ lsҚ6Ez(U| X#ElPk3i*&1(d,jĐ77 a*yXzÜ  1++\{?9/`r 9_>h5 XW{ai$+W6Kn2[rMXm{"X~0r"$/K,wHq`Ωqj/E;#>e73{,:Hg):o&ʭKoADENLn i ڌn[yD"ܔ@ lx0[> 9c,&dٕ e=<_N1u7ߺt1"*~;oNŀ'aCuW,Cb߿2uNݠ(L pRbu"ӥ4HՔ6'%umFF \,LCWY؄Xc}lh/wvkﭸ2W}:`@.?8 c9] IVl-O C\~[w |;DItb[Fe~ܨ=2qZJݿc-q0]+Fp,x4tIP~K%SQŠ͍n d7_lN8Piey/=v,9'&Ca\.,LOàF"lWZ5ϼIbt5c2%FtYy#䩩Z"<$@27UDn <(!0ReY4? D6n$4+%%kq(TF !} t+7c28A7-U/mۊ+Qj%¶KWlciq2,=OAr\"a\Z .ZRes O!͑Iޔl YVԢ*;72 ?Uێ%#ccDN_Έ@W-nȢ] ueΆGp32:h0F+H5T*@S>gK=VJKCiж"ւ@o\śƝ(0qYa@uC;m9tl&@$G_$Z:Zp7ƶ?zIX'Hzk mbќ_ 6+zrU f&^s"N 8gN Ѐ6Zyj/B)Sր-Lwg2F+y2DT>x,DG7?kث⦑>To6qu~c oGśq8"mRMs&/=$ jk&q;藍t a -4ZbwGr 9;`p\<ӋCC؋oNҴ ק"$gj旪Er0&  3'k!vJōzO(:Q4lzվ~>L,%I7U\<T~k(6r<~le+<Ąoh̑T! >"u-x&ǺM*'ߍC SmIXhFLٸ6O"U Ch"4J] R +_oTҢ36'cړ} 8)o}u; UĸQfjV1+l)uXDGк{JB ~Ful=%NQ'_5QtkF vC&tl CO*n_}VzL]֞xyQS:?IJ_C2SGm e!~D=?MTkO*ۑk@]1 f%|L&n]:bk|F ǦE 1<<&y ;Zu]<)rEO^CQzL/6Iڹ8!^j)I1&V$̜M[zu)γƭVLJ!>e߬h*W Hej:%jb[rYMYLpa\cM?z:jӷ˜ce*>/Ћ$ޖXz3>Mz۸䎣 Uնp-"S~gҘU@ ZlU48hn]06bN0rK'wjU|sOu*FTzLĻspŚFUag _Ge^i޼ez5 P]D1 y4El,QtlKuvn5% 49fPxӗ2YfyDjM馵a>4Īr*gbs UUޘ0D)pnt+ybhPϡ.^˥kg2*LVJFĞ 1/,,*^ȭx7<{ jY7J]bXBMP8 ԬԊD[7j_%T^$.cUy{#B;zZ n,H:Rh\lEW6QUan6+WJM'fAPG@k S=iԔϯNryx_Um*C"+/㐛lKN"RW6Tr*Sy,]acq,9tN _R;ׅm0.}}$DVYA(?5Df[5T!eL؜)j{,[7ShTVg¹մLYGook&n1^b~CCEG\0qI&A](27Ό͏L :hmUwf493vD4=:)b*_iK>ښ"Ngay$=؛$y` ,T` o8v 5:<=gJPbO 5V[A,9C~ @K=U:*dU&҃s҉Fa:geZ"¬ec|Xy붙"X-&C!-/ BCɉ؈g٠l,(Ѐ!M ٵK⻐"DZ`sT͛i5}r`)`F8R|I邇Y1s!{yt[8)]bz%8x:"֤ 5V'P@Z ZGŀ$C#70i%5T?_ 7r}+zf #]Cb8t)sl?o)q OKT8r"sj; XSn}z0!]m&)4}-y&Tx~xsL.l X6(FZrMH Pe(@n:݌>5)Ӌ+K@;\+u:ugԉRka6oHӬhz fR-c5~Bȇ48:Ɏ Z^ԺOA{}_z=_ <jN}b_26@Op_T-F*5R @#i( H>S98?Dq(x(AnzfPϬ^liBy0$OBA?U)Y54):4dq{êedf}A_{dYk`jŮXqw?>K8`j:!̎`wBfp&dbW{%% 6T<)dGp5["XmV[^2#M魪'Ne-)^mc9CO\ 2 dԜPvijy!DImgy1a<Ս {\Ždj0΂9x. 65&'F9gE=7ёShq%CDDRp(0C`UCmUNEN)wE m'?\Ni/da锋Mj}oW6$xQYƵqu|_`rf+S֫9B~'Xx#!ְc^RA-8`Sẵˤ@x H@/đ=7jT`:l(n\ݛ{8\fp!@ Y 1 r%}a\qYYQO=8GeD-O&ʺtG+0EVGm^oTOG<[ RqZf@9=2iH*¤g>*UO&\ЙR-σ:g|)Z눅_) pL B՞9#WQM->E”]HĩBJ'.ix*Lؕ砞X8(al/KXs[$"S/W>KKmjUM~wVkS: \uB~}&z7KqnZE2E*_~8ڹb`@&wr$>W*c}KpeeSP&u_8l$rs &mjsZ= `בr^B+ar*؟v^oӠ7m!.SJ]Zs#ߙ@:4"r*l(Hg$pY2:4{D6t`5 aa7lm.4:h? pv#z%KJ΢;% s0ʼRL{w ؏k`[e;嚆RX!T65oRB~fu%g_BDɖ׋vn'GM]T[p$> p0،td9&r;Nw (u00d$E|P2ʐ@z˶=jI7@b|gF{-Έ %rڝ:pL?1h28r]qz:e5Y%^1=_kܩ9?ӼkPJjThy25䦄>BGZ=SB1Vct0>DziV.\ IQKWݸ@Ռ}ҏ `pxM dEԼr->$~!sny4px tM Uf wRQ=PG;fadPnk{DeA8\F97 St. c8'"ݒ/u%7 rugZ@nPWH0:q_^Em.Y+Cb|U~{nJ$鿤MB݉ *jl7ό[_cuI碠cHA X KP֩wC$.dPr/ޒsXY@QӈQ ޒNIo{`GNR(v;OZXu [?9>tkͦG8t!Ҟ߼E C} 7|#߯@U>P&\\ɎdDg~HtA w6tSqA*G*QC": +E 1L3 FУ 2=5$Zq[joEQqT^?/U>RD&Ad=F\;(_}tfIfP0?V}yceٚQpyTE\=ܣl)ѱ#V[F&\@D7$vmeRMNzWJkan]If[mAt<@])qg |&CviPLPm(Jŕm~8N: bS]٫*֞ %-Iqy~ZYz/ G]6eV%$(Dku O Eշѯ;p'5fBBȫw 0ֺ}Zmx!k>?߯QaX![ * GtY4*T90f _y'$Swxb6lHq^M^?w ;ij-9`,T#pԟmҤ%v jċRW9wGɯd5bG!-z߆.Y~pQ | `zbpp DYeCGz $K}{t\K+ɊHc% 7cL0c_SE"AM?Ȑ2Ox𔖻R͋lYJmƓ%pohvS"k+?KS#=^ml,@pVxrV)|hʍ_d|' .F+c4}G$։Aܑ4 ȫ.ƾ8RS?AMUXKpeƶLU;PlVʁ״UM!ow=V^$oz; r'%86'>8Oك9(ͨ=KbT{Y]r ʏ? 鶖_5^rZ dFq Mf3q&tQ'NQ;]IӶ8MU# X!{%<5cp^fKfe5GD/6)mK~-po/{i2W \HǤxt2Pϲq|V+4cԸНRkp''Ώs{hZ0SӄY^ɩCdꧡr'!qbl;wE0W)^MԾ's#{,G58+M@<LűE.UǞe7^f9n2Z!׊ _ rdl.'v $6e1@v L,VDP~!䒗\9joRͯFWzV_YG1aYӈ5b04+0?B2MzmSnO_U8J4@;ClX9tC뭡/4ܴʎ- 9K;Ôm)D\՗zʖt$`V(9T̫ Fv ڊ᪍EUĴãO,ފbG! rHe^G 1VI\W& p ۻOQ9jt|G'pӳ`ZmA׺,#Cix7l85GȈF%l<1\yHޑكkt8Bl"/oIJ}bhˋ2֍? !/6hL?"Vhӂ-, #֟̂jkp?R;WܹmQ]&dyerRA,)ugEĥlpT2|ӋFB`E*G&4yΦ8[fvx Jł2C|mэ7s y|n6![┄ҝt7 3Rg`Vv:D{̭BD0>o!7X.So擩,J'xdyd WyWuiRU>ٛ_ħZk{{[|y b*1U"?Ft|s ȯe$ 4 qWӷƄȷN!Ri(w#vuv86P`u`8;4,--4I”NgR,d1B4ԷLPzγ3*/yz*OSMg\>2l${+$SAes2YU e8={1գ[gΈyKO;&!tZha !'m[#eXH01Uf`G}<ŧ8"h G9HaL:=]U6fo}*Ћ&йqd ;GLz [_aK|8^ɔE{yӀ"ȃat*1fqd½ob}`O|)m4\1ؑjg7<|{ajYW `QJ!CۜrQ ^6WO$ 5~k> HEx a4UjR߭gw2#BU3IP zkGwUhsݠH PE<`([-$(A2? O'mK3_9]l87i*=EY' X^Lz[N+|H|^kI꺋YȩyE\N3}& XK]>P6e%܄~j!)Zв 8ƏH5w>:]S*֪09DY(BY.hV 釒 dM&Q)dzRW{Kl5ACKb10s5{$_;$)qU(ɗ`vƒE~<p3nGzM/hwSd29bgYczNF"(@kJx!Rr;iYNruap)(櫑1j(z8]2-BYWxF>n]M ;J-ė oG <럤?6: ϝ{Gv1,>y6!G _7a:(vp(w)PٳmίeZJhPibyE71BZfX%KAd?/(7}amY=@pM(ۡB4J31/TK5Pr],{4tzpB濰,ەB?Q-,zY- Bԕ`@5K*dڸ!F|c)*gmRV\x3&LGbc$ԾVN>Z.vʴHsQey[P5t ͅǞ/NAu9oWBـ 55R5Mx;TV1kL#$%v5\D,/NTKIZϰfF RŪcBF C҄Zا\vk)&/u?6Kw ٫DYѱ-pc&8XѱGz,:^8x2S9ZD)A&8&6|Um_W@P3Ew~%8P;{n)c. #s9"4FIK&)&=0LKŰ l_:7/82p5i#@6Qx3c.$gz'MܤT/u}=S}3o*((vgBL#ߝ٪_HX#%SRT Ұ% Zs4 *h^}jXvSw8(κ[4-'-0r4]s\abw)n]D[QnTn+YG a릀|86[eW}gh~:RIY`@`0dاn|:JGz_}v üɦĴuqӂ#X.`N5s" bԚ(:mLaCOmJJ0OC(6vIYwk<yfׄG feӲ#Xn.J.78Xe c5+mRN$7sP'0bK{0ARNg[,ԟ6cb3=+u ^sNEeŘ9^[D^#Mg]1DE"(^&Wi$_e;nUHdFYejqjibqwÂA?ݘjhxﮈ?5TNrjB\weun߮L$biYc<'d= Ow HM5F8/B {@vϑAPo9޳rF.C~"d٪%,@BJ{ Qpc-H (TGbO3-oI)zNOc0Y7?S`iKɧ*O'B 5P]dKdnI*cJ(ø!y.|"!Hg68تEw!xUa(YXq3ESfbsmbBFnBEuvhVۨx;<}rÉ˿jeM%QϙڏZ0P6.5R !RZWq^CDQ]\A{;REboV14wN2~&i vXҟ1>8Y:[+ Bh:"<0.ɤpD5ڿ2uĶYXQңvKHqYTY .6Zrr/JFL@R.4̲$2{>;}Uq["ư4Y{*K3,Dr;͢~IQeŒ*M@y\(gLKc ٚ2RvܑvגvxÝtŭ\/b.5b:e/.dC,䐁i0Ͳ>̷jݻZT7KrrPw6݉>Hh DBaڒe4`6E'\UM"btQNOL3N1{uIYVTx d5W-)dw`@c?B:Oc 2Sоj`Fzx`(ZDtt6Q=LOu4E׶|D狗5,hOG.nWlsYĒ['+{ie~W*'%aj_|mFpftq1<H} G|ёy *?fycNu݄ E<Hm4 p]I s|>E9!Wǒg*s(xѤSf{< M0nڷ!5،۞oDxE=lGЩc蔄Vs^ҁ"U4urn`Bt٥'+uU`X7tz3Q[`R dߋ5e^U19s|Ua9\ Ke{4]`I7A%dxf|+3 vx;A\rϘh@&@iOurWcT b2/:fgfy<\{<uݬq'/+lA< N)uJ2(VNg$ҹ>LꡢJ~R">j.>,ߎk`~f705̓׊@RIF(ӐNcJ9a\&2BNFt$0VtڻA-=Q,IYB߯$vЍm֏j {<,uuHo(+mx-ÇIAaobZ%ٝvv/uT;`J)=*9UM$yvu3 f⣷uF'jȉ<=F҉E`*qW滋^GYgp=<.s.U៻O]O7 s{KCtB;# F…3p|d< pLc333[#K%r|.6$3op]$(c<RB'EcWC)尼S'A:AY6;,^,^J#…|=gABme4f,0NI%tMM"ZE so̟WdA S 0^0F&Zf\bp6q 睮x9S-NU0XQ 6aѥ aWsvSf ضjk8&(?q~qKE/@h*xtm {]Ѥ.ti I,qуX2qP ?u1a~TtS}ݟ@(0L ^k?Ǚb:K$Ob132e>uC)/j`52`|R<,Fہ?8Ko$RkM>5eyv[<Ɗ?^xUIxc}XVǦ&Fn7XWU",g+a}K 5'ءezO8ew.hߚ#YjR_ |6|q'ŭ72@n=a Q"SOiU]vP'͸,%e H!dj{XfQpV r"D,+E68zZOL>GqYvn%!0cp9dHE2|96mQ V0CCdN>0f# `n7^5"߳+FL{L>*\(f= ^kf,"Z7 P~:ƹZ/EV41T7O(`/&Fd 0ios3;*8DYn&P-j<4S fu\p76gE/~Z 1Y ~r@\ !sm-8oŇrWmr,$|Pte>aY3$_U 4DB͂ jvGQJn?J`x -SBoc 8LvJz;OM˓id7̙Va h"6H7;k-:3) /O4ZxaUHa@$6o}a2uK#O_LG;vM2fS'.EdYĄ8_O. 8a;ٍK16م{s05;uIa?H.,So5ڀ{Y(aە*"$50#bD"GTio$> u tk*`#_Ȏd}o6E6ŪiR;ɑw(P+_5e>žBI;9W6R*el4`lZNY*T'oL&]|M >kp|Hh3J 4*%h>hc3%vBPǔ%K{#5Wr)P蒙U}I,Vu۸H;+$ي0ʢs)*ũu(m- jF>#=wՆ-._v' QxO׏Z流CpA(}m&[鿅+my-0*i*Xr+3pTkImf?;_fŔ2l% -Ua1c$_z*Hx6Xe!14 &U=VcUC%Re1mdWF J:;`h?jܸK+d7}kz;0p &&F2Llgd/?Q֡ %3=#Oӹ=8k]#$jj{6#6Y\5+U5VnI7C̼"2r.؉Irf7? L0*0gdi %խ ϩ! GRӯ?BniH,"^h~^KԼ1GnqN~M_d>y%= }+S<8/Yؼ0fkcҡqvVu_[(_ȯ-A2ݺ\f(cp%8YA|SLK^ήVv g0 Xmw\ޏf*]_|>$O&(4)tGk?j^)6w8Xvt/T̝VMs&)7_Gƙs %#p^l"B]|ݩJ*mU*$w0boD@#KcԨ,<.;`P+*aS"EG>@8·2ʌkL!KY;ZiPSX=ƈW5E r[P7Qa@K .-C+iF`A (2ȰVL+uZa#'Td K}#KVkP<_]UN+hB;snՒ4,d98r:ӣ11rW QÎfZO}milcڻ~fFѦhΜ#&q(GjXqƔ8~!v :Id߃%nm::Jvӡ6,|]L@cPTp 07t 0C/`H ʎnb/enk"|"?)²4H]w~wDwNq^{T哄$OUN$E+=}H:2c``x:݃F K֞'^\]; \aPz^0E~B@F\|pڗ]s6aƵs ?֕eUt\9-Q*~C͡,6l>-rQ~j{5#~CcHm6$C 7cCa?ulLӣAp3|RBWg-83|e[4+?Fui6d0;37)*7E`խ?9HC*M}K(ALK!zpE,W孕UOUmu/q<ʗW o3pE- 'Ntp\ԥV%LUy|-K=؏Dgel'ζhVkH^ѧX)5ziGƐ\*,WMPpI+s=>DTenRa: #$Ÿ]I >%&a1ksL Ƞ('=ٹvo\T颷wa |,k ER- Agٝa~3Y=ӛԐ\ ?`n@![xʆO}wݜ>w J%RĪj5Y.(l!KHք(b" #]i67~Ou5$eٻ:ػco#K"(wAWgE&F0'rrLң}-(%d٧^iH$9.(McA+E[~л oj|Z"jmYGJ h0Nٗ-mzoG}I /MNV?ROj ii }+8ژP~K(X`xFϵz콚b6A?#bb?L\+D0.ƓDO/!#i_6o7:nTlRVLpvV\31i#X=S N_,8.sTq7zѶvBxku,Y,58λBȫ*a]6.v90&g4p$-̯e3X1X?qZm˾05xb ~f9 mZ"-iʸmP s5zM]$aiw1[s@Ty@ƩECy&05vAK,ﺥ╫xbU* zpB9se;+` ;VǬE'(HAE :r|R#dC(LSDfc9vm|IFY:NwfSB\ }u9loݒ;vD*,a #D)ý%tx8'ѧ1K[DX1#Nh7Y04H4_d!=3X{u єۣ:=sʹDy' P6-氝 D$GI ךϑuaP9/Lפ>Z ƱuX{^s߅mQWcgk>Z'Ouًs"K\up^&tE['q \m54[HQZ4s$BaNzeR}Y f4PE'nK`g:<אT;ܶdL,IJq)Di} 18N΃0Kg;)s R02 6R%GvF5$y`Zk&9oAdO\IYHjZPS]!%@jl :+`Vc9iӎe3۠#b7 /S5c2nY cEeKYYiZk#!jt ,|<񪡬B@V*+p{(R !ox%~`Ԑ@*!`i E9Ko8*HJY6ӂ_Ѩ-\ BC:S͝՝e†l0_G[\|6NXpMëf^8ΌSjaOBW&g 51V >nXl..;&l.{ȄD `i\} ݓ8Z*eQwdKZq0gnJcа m$;BQ&W\T[wM @=My<׍أw ~dꠗwMgȃA ܅ٸ$Y~"<c멞<#u#R8hW٭:'<#fvC@02u5D8^w 0 Lfy9e9yheTVMLǦue;Ajiah*qGÖ]r]1u8syXr"39䌃V+):Jl)X/|34 ~=\IAŵo/55)GwWख़APrT\ MU8+)f'>⪏$feT493 Abc"V>D|Ķ~^f4>^Os9`, .aIj]DDjd-FR68ImrVȋ"a}~@ĶZ{`2fm:v4ġ˹Z{TW'&t  %:" nLٔ6;f,1>$t3#љdopMuoYtJ~j92Six/8swg$E"\T}wnCf2Y<ˊ/fEl?J"b'Xnr p %ӈAHyG}O- ց5BQb|Mn# .-} gμb.o"78Tr;xi~t3)}rՊ !V-0UwsA,a%)Lvqh$ƾ9E12WFDL_CHR'jBpv5lR!3v@kOƯKW sY7-9P;no;G!_?v`^M{gMc|ۡH ^f&'TXCG߿"lt [BKAA:FzMC5,։-L!әEy npП ? H4yM}* {fmjф p0ut!~ E #crM6hjgQkqLJ2f2|Nf2 )eW(TvUt-QG\V6΃δ6'gvqd1PIXOmRof[vYn^[O"/, A_2K<-`T=xDDϦtj[`lYC?LW&p[D&ad=nYQ \ƨ$SE<\zudWRVѾ$ k B/tN"I#+[ oG)#? 2G$9"mj~o< K$t歏oWQ6;OEz?Zx#:.gppKC;:w%NC倠q@Oy-FhPՖױΑMn'k!&\FHL` f,W $}m7uP^h9|={'f8Ѽw\!`Zi#'J,R_Խ8꺊Q$,Cqw{x xǥ !HG0Q%Z""g3M(b.(nÄN;~qDxf_AAXұ"5>?T,F y T &J{[3rA܎Ya׃}z`Hr)"\Hkޤxq-%|߁ԕ6xrUh[lyh31n X (2v9K'`/<~Q%@thVp U4%jI66:YTl<Tp&5IJؘ/`l4? ?~7=QP²YΠZ;.} OH`Ž`m[ҤA2$Ԣ&TFҿk4m䋉P>@qxs[vdKy__X*=Mϳ8\X;"c巌8RdMô\cI[Zئ'6r͆k͐:uvCkc2G֞ m-s DPt|wP.nAيy%uQoۜ\mpC_#@ۢon3lsh:8x#~0Ο>2c後hu YZ1w½'Mб]6TVRT{CA Gp=k];gobkc2(jCr~&ID۪u $^aΎVp߽d#ҥw$/(Oʾ-*Eá2 W9lƔ"xSXڿ v>hi-G‰}gqblOKN4L@!u#[!b6}}B'h' ' \G&`b#;s0a\1bT}D3_M+tAGNC.-j+@kXڎ^xͣ ZoT檌K0F0R0dQ95bvhrlPD^49u i O.ca6upIHg$>pӂԋ ,zx7.Vo88] #Gb}C{?m$Ց yrs+;۴ܞ+cAiqz,=G6Y! _/82ӄiddd5h#ZH_m.?IE.;3]lAb}q Nk+jwAfu8HmK P]y*N07Tu$@+9k! *g/{4@yxeťw=]CX]fj]RB<_0޸Cߔ^2Lc9l$ɛ@ʖQ*8_ʿ\/T/%8Iͭ$9_ǁqw͵(&K2yӹnNhzXc#Ā۞۟Z,c%rJt(CyF00A#ڗ승 !`XjvО\ ]F~f'Uzp"а[J+}}Kq2qvnD!:2 I2 ]hɖ˪i:4 5ʦ&8J2u v_#oZ Bz?/wu-HJuᢾ  ;zX9z( ˶Ng~;XZ $vߟ:fE p{.1Y&̊:WVڑILHC~R'!<+ x,Vrhs:soNm'x9"zpV4 dYDPvbWJ/w1(abRĮBuB"/kޜb6mAeӛ41?5,]b]09:Hzv,& S;o5 *gc6F#5J }Ā kqM|D5@nHmJ|P<ޠqĥCh1ri;5.}/|gdgOk8wؓA+G+e fVuG( i)?@7\C&`K˼qW_ l2\9̡֭L.(WJ^hKsA,SVDmbc.GFx3!4,h*1/.WpwzQ0 w;$*\_]89H٢\HzإGn;6.۩BV fdK0{4yX|{3}W+ I9* ϼ2 "{To#Ϗʣ|$T/5{812َ:]-f}_P),lJŢl3ea`[ WI7DPDWNObC0&lȱ/~z( v3KcT@51Jcq%GTe!>|ܘ- Y909G~Fwe1ʌk $b}}pvʲJWؤjlFqQpzT_ 9h%G𷮺f)AYS5GbTLv~dj0EEdcgUE30r]ͅҭs{(pV]Bedf rt>C$y}yqn' ׸g>",OO[,nW"BQN Wb[L/8?>AY?LHmy,vwZ!ﳤKQH 9t)XJ Xk9w$)9$n¥ҧ9wIg޷bXZMɣ* W('TatH** w<=ķBHRJvܑ~Ɖow{N _%)+(ڥFOthbl`$R 4&.Fben%E3qy?SHnϋRaq+䁯ߕccxMH"_G< )qr?C$y%Oj"F gIũ! 텤Yh%E~1|{ԍ.ʗuOĸҍ!„uqxMݹm;7wN5c 6drC 9~+,UL\F,DizkYP} D̟p虯^IRN[^B5hV3^0g| mYWbQ[x[_ǺUm,ôf[}//YR(isF:a1Kt:!sMt"=.1J. \t"mfU(s2TH쁩9V5q0^AH痏r'>GiWop㩤=., f4)NnUF7ovQݓL\9 OԃX'm:Eu4'9W}ؕ%*~Í]om0f(f-Ke0>v|jS0%31;M $G0xHx*V4W ^S#ĥBsցuW~Q/@ˢB`9A:e9G5zŵerO;.U\>"pѝ-|}wÌa\b i)mV;Ѕff&xZqm.QR=v'Dp<·=BnK08F.K|#!Y +g ~rSF6|ȏNyzSքBȲdV%^[؊49]<&ϏXaEuJ.?îL. ag%A['mvpwd{~0cCyzR<K>L(ٺhâݑ+fv FZwV}nq\#狱C@}d7%$Asd >P-J[5Zq+,w\Zp[A"k*R]q ퟎ D8U{K8 *~=Roά3+:  5@_LFM$UWI_[*!8O^=TH;CɾǠT9M=)X$O&r͗2쑴<{&X%9< ҩiQRϊ ;tii{3Ix?K=X"z@ic noj'+rp;kW$1ho^@ 1$G 47>^{Ŝ޺↚=u*,6iltXArѦ"'H(薃Ôf^kj2o:>1 Kh&E { 2{8 p*R!q6T\_Tv;NFLpabJew R>+3&_N[Q>c\TXji[:,N)uOtJxVi_B-0xh>w {e~O 37G4,OzdN!/'2 ZK֓Qp>1(_x!׵hl(0nms%Wn9W)q `Dlq'Ǫq7XUWxVw-ԧL3~';Xu>.,L ȧMG 1@ole?~We+{],܄M_̳21n1 C-uu4@%6#qQh,@W> p-\Gğ>Y;DP)20̐O3H#ye"1X6>@hJS6f~$&DAon]oUvt߂Ԛ@<аqZ9%YonL.eEWٺFG*ɁdT* {5^&LAh=vhq[:bN ]c.@D#j'Ͱb:7bQԵGƽ\QTտepUCS65}nt O:W[[0*yHA ( |4D`9USo=/#2fgͬ+엗+3=IޏR -Ж.eN}r o8S:?aHvEy٦d]ںuh8IL_}F;4}F妪㭩$D*t!mRٓ$?oL2}{tNqaT{Lw2TD>_/(;CאjHN=ig Ԧ~n@iW5 :N2%ã$ƒ <7dC 6k+m, R//;M.E݁yB-UDd"Ö`Fau2d嚞yo~f}eUFkk:Lb)rjG]s<c,[l>7w>v 3ǿhy C`řsB˃!8j1Y-VG/_ItK)-q, MITMO}oV  &R?(XE'°f)'e⑧7+Jar%17o~P |LHI=Bk],93XAžVHd;W^p0$Ce+#/ag'5+:YŬ(ڭ!mExN򚫢k9Z mz:CJV ]SP.Mz,]aF|5C2zbU/DᲪUu][l? ξ v]3SmsBfٹc&UVƾ-,i%;p. hxhRvuG5ՐEG-py u.ば0 j*rJS_NwRd ! Ve}}xzaT$EQ "ޖ_ހYn !yzK;\h<,)tw|ťح$pR!S*)k_21ZFN^gz$\)1EE)~azmpG( y8UsUTH/9;=M~<BKE?iIKR hv#TFwWeCW+R4_XF4;! oīB\+Jp%4gY/C!Ɠ=. Bw\Zs̶IQdH *1xTΨ|vYUw?b2gj=YVK7󖸦bQwn;hy5w9\ V=6˛o/HNBM;qam9 ζ9s}_rCobi s$N52 KH}^w.msǘ<a!ZBtBFBsŒt8%C?-ͣ1BiwLڐi:=-0ˮr{q.@t̒mU5._G8ZI .~ZhsQp!ϦBv25ڃ89f:+Nsph}rWn̷A|E.adL=<*mpfFB}~?FK;,\.GWc6}Ҡ z*k=@<80iDk>KPGF/#GgFe9آ o:! &,e?5:؍ߟ3^r+̫isC} *)Ɂ%iρJm<;LbCMO'HfcFR*8W\@շ2U@|A /tqA^j.kn&jm i(f|aYbK% 7l1c+w#4Y:vɀs=򩟽<ToB~Zhtt26@}:S쭛qnw'*b,+2<[d$؊'nlV.>>KPюKȴ2+ [VeW#sv ʊH]A/h30 [qxW:-E3An^:Ƃ#`R;5LjB[xR5 @׉Cu3wN3l49q(%dL{ }rcPP: xc*}~ܑ @D 0).)~&Y.jTzSy o9J@NMMTG܀,kQh9Dž(jv6A1ۺ%//@|ǵ򤰟k7_N=͖ ea1FG#3 .vƹ@#3)7pn`a{҆7Py%> kqљ$obF~s0K^BĴ:46Uɬ﷫PuCB7"sXP7[}=ucD뫖O%i7Hq; k=vW})C՚OAW3)% '7_@Ȗ)=ÿ[:OtyXGd v;V`D]qLѾRvtvLНO[RkݛNUY (0HsAؚ<)} Gq(["[C 'x(+X kjӐ dR."G +^ҵ*?x%!z{5!0sn%c4JtGZ6\PMa >H2-B%T`>ɰ?}6)rk"d3'#.\Rt)&Ly'zPv>O.\s?1Kp~.|wJ KrW[G !)eîŎ!L93dSE! D74e.F/%p?.Xڜ!J9Z6c37KYz0Y<1^>@r y{톅/fKæmHX\%,3Z gjI(ױwC;$|c}A)9zԼy/WKNie[B_<̚3#:\ø}YlG- ЏC10Nbn@ XN:9l3>An eqDbo9W|%+U1/E~#5A&Kh Ɣ2q, bPkʪߗ{IӜ-G/i! 7*bSey;&ZDCg@"\Xv#$lf,9CR>o]R8>~A-Z~i<d)t7, k﯀*Zz@gj Dt42#tJi -O_fa`;V]8sǖL`AfbA,2*Z7˙BOvI)@W@:T!i39"Q7]ar\{6Yj&" yi/4bc1b@˚h((׸>=&YXXD½p4Ln0~hc8td/J3K-ݟvS1EA1'LMu{%r:vݟM $[fΰ= dI7V05KQ\T5ۋ*Ϻ[Sߡn0Ӡ[WCjղIEibɷi JIpltl<6q߷{I!CIal=2z aFOkg~Ek,ߵUUj"ӹ/D#z*X0hթr~HZ24~%͓upå\2AIGfÓhȶ إs,'( x,'3ڵgc\ yOr=4FfvF~ty 0,:bw!;tkQ76 `dd~SUy1 b%ZjmcU+OD6|ߠfp 3Raz@]rޣM5 `bt9GEo1(DQIm?h,/k~..%~i"|z.}T^6X%??fzU(-{[2g<mJ=S:.q2;&J"b@PSw‡+,q;xuXa ׮_q^A]B(Apx[XkF^lkɃ^ۻPG9Y5^> m4u"d(.(*΄]*ԄٌCnDY1ԒD٫UKgn"K7հ$Io!ldz_O^AW5ݍ*AB&Cn@3u+0u tqDOfHOQR2L UD?oކP^O<| }hLa"uwC{hi&b*֎2DVl' I:bcP־^/Lx¯rP0U(DZrŐj:+X(VP׺Ɗyp1z n h#2M2l0R@RO2&2UjvΖ_#//G0ds9yb h[I9F7xP!9~Zu#2VqriRxc<ƌ(e5&Pf TA+cѭ[~$WslPQ:!$W)o'/8I5ϗK=Qa)sHo\ h#`+STuy[@a؜3Iڲ aP $vH#b{E9eM SD J'КbCRW4TW\Ag?4r\#\n\Yw*/}Ǚdj>B]蜀]RyKܼdvxiLd^]5d q8!|$j^lVXR6/ j[FQNXǰgʳ*=r8>o*I "zHiDL%Iܧg@2iM^8sVg6g}U(Y u9д6s0n΅_X):>HH$6 3VqPUa#gQ ;RDP:pV?T _`&J׼~'M|m>.-VθBCL Ti>Pc2(XM_R/)N3lB !:ri8k7Ml>dO9ۖ/vlp`=.V \ˤNSjB^] aƾY@K%!|fFM,}C46pZYl?>fаNIum@B^+DUng6h&Wy5ҙ;1MC(v. Hư9QUAԃnZ”Ptj-dnu#ɶ)L閶r Qx#[>fFl[=aSv ) Qb? -(OK!IَbikJwU~]Gb\ӾuYo=Tq '0N;o-@p^>%v$-l Ck.jM3ۯ3h9esBTt+T~kĿ~}2Gd$P|q8'NKR4EsoWQ5qތOEqL 6شͱ[&6o`d$\Sc9^Ô: fLthm eK&`=;IIf'I+iy׳(`F`nj SVZ+]zʃQ.hi3x# `b/ưt49 ޅbA5N*YZ1Zo٠*%+1 l]1E 쮍׀H\>hVAyJ\$B܎SP^d&oiMqbвZO62LL  Ú wWgyE"g{ UC;UL~ԞR+bK# [16Mi%cN)) 68lmM brteZzf":-1^ h1Zfu~u47xB躇/X=96Wyn"cjP,&f(VcF\*[F?OiS%p*'sE; s4?x ,8 liDB/3P IR{) f u\)`3Sa9Mں)&(@:{i+]=MڈIa)X  5rv5S3x̀ F\7 oо;E' |n]Ǩ%_QtXЦɿ~Dcҷ!l:Ӛڱ> &sYSJ3C]ykͪm&RM'wse˔ Ȏp(į7fuAѶ]i j=5kQ F:|)CG1MQjE/ܘI{3κB}yFW 3G̅`Zå&pˡ] \'Ԋ;rvhᘭE} y;>IU}b$sT[46OZ2tV9֌Kk1Ax;ˁ[}{ݘvS\.)qe(抵F! ~kaNj#޼]ve{k]MW:!Qwղ$-i!-^E(prQz2WB)چ\Y_Y GU9(usOEiBjwn #iK5ujc !X9!pH":z$Hq+fLOl^f8Bf7w{f WM8~;xre8("&%9)SEqӎ5%}p lޖ)w>ݐSۃ#o\[6i?̘ F w= ?<3ϡ˝;s ye} S7 _~ ODH7*Lͭ#+JfhVQxrTɸZJ k1&ԑ#ϒd2h0&kM"`85?dR긳jn[[J2%Vmw|Esf=yX ᜭW%xyrۘm&,:1WagXvᛞHd͸ZyvYvK ru\>&?wZ<(+G$}DFҺL̿O(i"??| \OsV#SbMt +LJ u;EӪrr_}o!.gUJj?-&n(7C-VsXf!$*TY]@IQIS{t42gܼcS`GeBl_% >w7~9$YsJWn YT i8_2 4U,ІE/m\vuL†Wҍ֤+`h2|#aٕX,>,oil-a`c}O,0,-KJFsa`ctp +~u0+'-ԛTu#Ou| hHzdPǮEwOZ2M?3 awH$9Q Ö>nGOWvK.^ j&,#}X?cReS~N\MMDCXO#" ٧bQ yG>NMF=qC6֨$ cdfY:V쳴$|bV$p CG(iǿ%Q~ knWgc-Gt%aR]7@e8u!v_4Y]`WGVc("+Jo5112+cIZ$YkmdײWQLb'x `ƟdxQyn-;cΪ" $v}êh xX˲ ("E!־BsN~Up8:8v];pyaL$ޭC`KnN o=)@\:5nmƳ̓rF]Eud=!\1;)pg\PBLUO?:Х9̏zD"=A!Lc0a#R3m`hkpnns0 ̓'epo :Z=b+.`+r~>F6vP+=l:#OTd^ញxK NP0Ht\Ǒ"GXѼ߫ϻ #ddBʺ%H嫺QyBY=ʙˇF|Vt|=rZ43Hg68>ι#.}Q7 9asDb\ze^[eLel  'oke]ꠏm4Q;DX$i4.' N26 b N[5XX n/;kcQx+2hN*_e9@iL'c3m^01H(K5Ó 9֐HֺJ℗lȨ7O `}Ie ٨3ݘL]RJnGbo.L>X?Mm :N wSe̞IsQC5OMo+K_H1*D^W(<(3!}VAM?Y8+oD(҇N)UEo2cA]U*Fjk9Ő^a5KƷ8(*훹&7$R`;iR` q>6Ueoz Bcķµ\4/YE@5/kc c⹥NM[Ewf +P ܪ3^=ٗE0?ҷxٱ/T}#}؟$tycnP&NxmNtPp 7E/pϐԦ4D;y 6s֌~ͰSȳo]'|o4QtoӃ!4)Bc[FRc,h+EǑf|pi R+(Mz~\d|sm q?1>5ykC OzcR>PebY@Sh0ޔ e}F>F8,ڶy>O3jxb- &|$7,xcw;4A3ǔ A^RPV!-f a 1[nYSz|uVJ|H{N i3Au\dXX~Qxse J_5Ƣq`Spz3s su*Gf$zJ O j€=H/l> !:ۮk{֤uL_)'fJWT#U,|}@JS3}G!#*fAk­/eJki1 S5g0>w`5[alޟ_O#݌>m*&,1p(-H_YLCҋXQݜ&:rBԜ}/V3i+`L)"֔b;yLc D1ѤNxl ˑK3:[5QHZ87p(+򶗠%5B3=Fl8! $]ОO 0ȔI$ 908Gp37Ӣ F*08zČߣz4fI`ܳ7nFBCL*fX*l T Fo2xϥ.N;BCCyyFrwiX'nI3 ƕS kk7`L,vH''v}4:M]g#, wu=ӳ){ؘ8"!PA ǓoDԻAE#8ϿCܣRy+v94i?}G?7G22n/u2xyoV($}CxSfװ`uZky>J/ؒX~n$ػW6 C u8',vتvхE/AڞD&YCS?<U?h?@ft^bg ⢃>_!@u\ +.'ѻȊԸiEeA^ԖF*9!$[tM䉜l5`xS0SrnWz~/p mD4ڕF h i2<1DW(΄C9H?f,]!v|݃d D(Emwnzόo,ܰ"){˯(^%hJO;0$^[kz`E-fYIdf/ d"/#77jϑI'"ByDZ-,Ϻ]P4|p{"Dz:~Z \ GO|䛥orN1,yg8m Z33[WbxOrq|=,S&%H z< UmǗwSZD 4,zͽ7>bX$Su||f" bC;W-1(/86[^lƞ8(?AkvzD4z5-};.Cw *ÃɎܣokیMLXjrd>bu?JmS^V`T”U8y"w x.uVtV$Ь>sh+@)e-R{9n]F 3^8l{Wdd5c?dhgx7aҤ3G5HF ڶREB=+HX la82K^[ϒS8м;N/`k\$MVo4|TW{S)Dž[>ތ&YYE}BU"&m|8#|*#ҿ dŅh#0säv{u@ZD E2F"4L^$4!ASS.%Wʎ魛 0!QJkMGS#CWnH:;; 3Oj"?X:wfd?M_ -q\1N"h-?dm'l^m{ uLL6̊a5)U?ir"-@]B-AZ0Z!DV(t]Ǖ3{ ojk9.pOw㒆Ud#ٻERapB{'Hr?6ev&bT3_!ܘc?>9YPT(GaJ ZK5AdU7 Y[f 3T 'e:5-%3w_IBMy#X<4.Wzz9_J!sO%b𚅃C(y\q'%Q-C<E/ {Qhu?6Z4> *OToS8QQ8 B:-((__U'{N!ПI=a}lz*Z՟zP/iߵGތƉ^Seu\4, \ dx(Š9:2L @- .IX?M%%2290as_^<_/O#P+⧋:NiZ. ug(0~K&DOO?0Y2"PL;?v2"?D,dNa)w%$P ۥ`JX =}zr8닧rIOB>Tgk>ӵ[IC9h zb?6| }N=ssUK|1IIc '䑲vnw%y$~@,?ܶrj̍2F:í^UEs.-(r# }-uLF;\,USn܋M-(wJrt_2rurhQ&4Ƿ G"8M[ʿs&a4Mz@ȀUR+l8@m,uy@2n | ?.<0 ŃA=٘T?A r* ^~/xax>]R9lcVΣdsn?߇H9[Z>7mOZ&k)-M&mEn4/4oi\['=fbſɺ(hCB? :t~mgc0-5G*+f̫|ϰ-ytY(oͯ͠3Kƺ_Z_4mh^m8v\_!+)hqe8*%hgz-n0|'Y~2V2eITےč"jb٨ R(]q?L!lA@:Tl X7T-+:ZoWyX'D!Ȥȏ_&tNW M{:1*Mo-ȗp%"`l2JZdT^u~{¾VĤy|Y/0b;b*a<;}c5jGh\N-scd@M%؆ȜB-b x}'gd:)\ɏ ?ucC !CfT[1YD/zJ6"/`EK;ȋ8mxT`%dǡ:7 yuhsD ɚqY<&ǽ~`a:6I[=k:OPpWp;u̓\N`#G*#|ܖr ٨A9F˖kOwӳ ,T Y^xi*m$<.K%}xOSHw@oE!] C?EcgŜ@m]vr/:&ѰWwFe1[>>I39 ~lN5b A9 24PKM $j8մ7Xz8͕n z.~Ӫ> nAMF*od_IwA".XerOy/@:/=}?埆 Sּ'^uCU+1P9\_ Ύ$}OꍖΙI=w(8"F4c! ~ p 8)dOWbIAA| U^ DN7љi'=0bBH.2Ͷ^G;p v bXUM 'r8Fq`ފ" yCe_卞U)ȀhsYOA'?ߥse,zwnϴLï xD7њuts 0j$Sh{-LBSt'`Ʊ9*_{&ZH.мGd/nW4^F5Kѳju{5G7^ ڤ #*8?NYg@>Eվosk/JhVO I29;Dޝew,U5LjQ ߸p }aEw> >s[N>Ğj2*)O}D=I]jpqpwSp@~&ֲ0sGQ?K!5đBDÍWҩXV/kPrlRlP )(dh&FF 6b CsiF3۞} !mF›QxO0iŇ[U׺(H%`?n(`9SѮP`>cٿr'Uq0ܵjGEu!ZG(bA7NMu>XHe^R[HOZnS ',_M%7'Df<ӑ H^CP3蛑-Λ6Ac4KUF|1.~mRDaMV;`db0ۑ*]նea{ M;{Hb1| O.4.$ G`E ǰ`D -(7^9FNdV $|SYJCieJ>5A腶%}3**WrsHH$X+BH"⛔Q@懣/Xo{瘣DOq㤍?J "-dvIٮ/x Zy~R;)n05 =لc!rx*[[ZlUJ;&Th`;r%$^T/+21@wvR^~h t@e|U=r1XRj١Hb:cC zP.Cr 7Ȱ44\醑l<rV-X cC2Ӌ3$$14[lv1/} tdzCqNh!b'(jt V1yFK9V+ـPjjE}n$z(o O)/|X$)r9X.̔+#u lEL9l|;8KJ^mp)mcZEˊxk1GTa9}qq}4ܿF*Tj0DcVM6 /mwo7 <#4 na{a_/B+4 3%TrB3dI{ß{g5 Զ[lf{7˷9'<^)L,hqZ_IYPܵ@41I)'T0@$FyMpo4B !+tܼП8@۱f!W#)B'JJ<˨ "xТV7` ]Z\LD}cL>aFK4Cyoab|4Y!wahnAũ&i8]JP(@)ǖD;ɢ d'}&nzxc,(mN څY2򋇌=hL_[|RK.VT<ёA۩2BF[{XR]̧qD"*+G#xKaÔ`- xqr 5kLhƪa{$54}GuT~a[ Z}6x(lRTz{dn2=B'-n=dnc!7~OeBr&QPF / !nj[zsLL<_\!N>y`Fnq6ڲ--BY+VIf`BEO婡%"P@Bv{j$O+9m3*n0ZH/t}눫zW uEߌ?AghMWή~P^Itq'+]| `eQcTjɗb\K_`06Xj$V*yZ<1@CVOq7G6]$q688՚Gs2[O4\栏IIZrH5Py 7`" ~kRw" zg8؏iELd)]}ItTUroR"EVG=y%{^Ii@5MsGu"Qxl@;M*+=P#Z񯮔i|z65,sOql5k9̼]Br7oO*bof&)kfwW`k&U q(My?P,2T('f%Iޑ&(A/ɓû j i"_Ly9`QO^ײaJ™E0g$ؔ!B V4#+֔&BU01?f@ynJ 6D B}jS~0<аrQ%4FϮAҮ浲ჲD &)9x WlE; WXcIj"8ډUv {go XLeV%.Tk98XMtajbD`Y(C>ϒ'qEV[W$0G{Y0v jLHظ.HS|WWخS.NX|M~}Y2 Mi۸ODBÛT?^W~T+#$uY?%[I:ޭsA:kct@(٥<s(vA dks/Efm6t э"Oߥc"s <.g dSVSfCL|FUOQ-˞0eWs1E }&p~x' V W$VS"DJbD0J[^agc٢k'?tݙ㽝.`ѳݧ p-DH);3Ҷ<wAza;C'i4Wv'麺O=\\L٪_pYrpp8a@\+hSv#^R0oۆ3~j/]䣚nJjTU3ok, b\[F-?^:rvt4^c ] TQ("T(5J1]$JUDTh9|̇VS@hc:"qFӬ҅]4@3(/aƁ<H0\Ç&#k= A_ԥTkNhw %^K^p/-O⺨RPٿW;+Fuha+D*qvn,\]>< 00+B0{A% iK[$f""=ݠiZ  ]cy`J L L("Ҧ_HiIȩN8Ie ]h>US|MdW2OR7s|y*SR.HDk;#"yr eA)Kک۹+.U|ۭ1gj*8%dU= _C3Da>z#^hiF&ou!;D;j^_(iXOic!qU.;,KxST iå*0v޺ԊW‡k4`s`Dwɬ>fM}pWM)yzsNVxZd2-em9sش?ڦ@} ot?2IiqN zq*E+oÚ0@$ixrAS't)8}%Ti1:6eZRGK.0,7T}?-Q;Yg2HjLdvwHyZaH dR%(OJBs<>UzVy bZӔsZ7)דu邧H), v8 4_yCYP2 r= $?U;YY_pyUѝZވD%Q<>-۪fsw%hn~?7kY"1 I_87}yQmW1&qzVX|?DkSz8]L 0,Y'|B3e iō1+~n`+#׎ ;^`=S %V9;{2 &/o_Dâc ȼ3uG|>) |S5T3!W[`=D)sdE ҋQ"\` ;C;EnP'(I^isW:9Jwܯ7Z-khKz4)W5eEZCY-G-EN^}1wd&͟^GX*}(ٴ4/l|[Fs }̅eo%dYj)16DЪd e%)LRŘFGpѭA""O)n um6w1B=$#"W})F-,{/g 6/ᒜKP:GGge+2|6^ Dk]+^9RX6ݿ۠'#F_6v1D0zڲb'xݶL$$93ҔaobfJ-ca` NEqg颅!OQm5c vRLR-Q*T6EXC JqVnsM7C9?WՓ##O~usᅝqȄipjK .uHtca'W"[6!)0O~Q} )T@|RcPF{ڗR%B9%iʲa7?LO`7wHr|F@BJ9A@$:%&@J"ٟx zeӉQ!2$1 AW;8mP5ؓIotaD`A)!E;Kd;zsB%Yq YgtΆcߦ)|y8Yp># hm$NflZYP"pX'&08XE ښ| 7 > BұD3Ceș[8mtwrͫ"+-^(YMa{R'8Lꍡ\t5;ګ拊C$[D}H@nh.("sTmcI,nJϚyXY.bت) LGdz>(t\(ԮPѩu OÜi<: Gel7 6)2ʺE]}H;{Pm٦714HA5YEug3V=C0fnt` #Ȝ{RAA~GBRa7>1J:+MJ%rU!z5PDا3)dV:G[FT9yqnplαpV ªAA*<ԅpV1$q˞Qq%?33HUy8xXa dK<(E4fbPNӒ-8WRcBKvNfe]"q{ ;M^?&iDbU'KgebL`p|=+k^KqIg!kŒ$ee!?ofV$/!h1;ƃ|ȃI) LW9RwReòPb5+.x>>apW?RmQU`evJس.\p5337{opLll RuHBbqO3۰6|,83&ocΟ.dI]7FԴ[u<8P- ϷM*6_sQFv?%mh$;K삪 Tu!U` NFV'"c&vDO-}`Ω! tZMLH;1M̴EqnϜzqаCH^hڹͬ`DA:؝-rOGŤJ=\S)m[ơW?(*%vGPjH蟐gXwYs Dp/5ABm:k[Sx{_0/pڒbMƒr(& *_ z+mCCD"z"\dQ[$|" ‹*do$ %ND2!VD k~X6kJ#X-C8bz"יd{'~FwX3ֹ%[3֬!ٰci!!]@Nkh^;cRCEJ+%qSeLGDy*F2ŀ<"vI}c{"[n& 2XJh6@8-;C(thJnU)It@uGfyR{)X[ͅ-r/.i`^Zn t^L:Yyk{|5R!Lt~VfygwBA۷zd_5!WpiqA=p7 l$89OL(S@'n|'IY> q(E*/TUǏ+jk;h  ʾ;8ȠFb%5\a1}Kh!p (´f1^qWvGP@ vU0ORfuVdo W^3l@NNB#&m&,s3z>~̻(sW[\'b@T'Pkƪf \9E#k$7v ^g@Ѡ!J8OA8gw#"E0}qE U& }]Bi^2:9(5YNʲG_s Z`rs*#$L9m,חjI4;A8E]d_l`ǹT>!/LQLJ ,盥+b޹qp[e_54:rf:g7_[f&%p ̌6Va<1."Uq2&n8U6l>5Y _`( }s]6_Xtʌ MFqbɳOP,JykT^r̓1Q`,^"v- Y˻ DKEES a`D_V5zWt <8q-z6qUxsU\/]7 2yyuQz 44/~&KgG']F yyzS;* ኺzorZA x5@i26"[&Ʊz*<JRUيdu gxɱGxԡ`qlăr> ŸG×kCX"s~[Uڴ C's(l%QîB2gXTҊhs|/O \I]p/m~|C@ iU*;9J/0wNf@PUy4m.zq:`z} +7adH4M!XU+aK8`Ǝ•s7W1<=`GhHuod=2mH`Ic-$p`8WVno՘ 6퉆kX xAV@{v˔A#X@& 7qae p[ypqu1EB+n^266hIq鶿O#>}!Un¤TjArR?}3X/3^] H[UMEyWpU4݅fqrWm&b(,Õ Ӥ_)st[[=e6=ͶN 'ZO}ѳϭ '}2uE6 a"i0$YUO0ʁD4 YwF P jk L1(3xbM?]f9u BJxz/AZi}̢3{ O4N Lp6͊[g ZJeE)i0F2YB8׍[ X4El%Բ) @A6W ܩcY_t2Apf7$uw?47Xl e}.@nS̔m_H_Τ ٳdߗUBdYYh.ey 7#]Q<e:PRCLj:F%N~[XBNr ۽(7zTm!(Vs&3F*uj1ن~ of>.& ZZ[\ ǡE%Z8]1/lLIb m4ǂƓI0IF &ܖ,KG:ƶǖl"~8W ٺ p 2rB2) xFSFth*SfLlɯK̀Jj~:f(&G1'um4,aD+fĹNSj[2a_]bVi29zO,\A^c}PA5Ҕ]m~s8r4qgP4Hrgt_π0Ӷ͌$ᵚ&(}i = >8FD@rsV !u?;R~m?ɋ֐=bȭt 1ƔlE^A ΍~U쩀*z\TL9BAٻӊ%!~4ɴϕ32eYa >A95RPb#g#7n'}SQ_švU:ƕeèӰܖG[PaK4"iN=t4jf 0@  In/swَG*{; >3K!?=T?ΚND^4ͩ⮋}*8\}S~(g[Y{{JJ0VB~Ӌ K&A0kw$sED,.)NJ3I_$*G#P5RhDGYM쑿b'g <.;GUVnD5Tm|wi|%#WPÈ-*5 d.%jۣl x⇜EFᗮKu":ɯ[`ONr%'VpwϦw¡oZ XhCJNrP̚6pvFENŬX+X?XӭIwGX;R \mN0?x> Φ)LBg0P 5 }l{5U4t0#}`f N*^_nIR$zGpԎCt!"`{sHGs\s#V_#pST`xj&=gLy"R9 Ŭ&ZP:8Q7З SSwt,ß2)>LBWZ2Su[lYy)ٚd&>(k`K| 3R |no3ے g HN>fڄ:LiԟKp(@}J8#:2j/1$86'Ǡ-J8̯_dւuF*YPvweqMHK0찙)m@C孁#WS3Ԥ eǤp%0c0q48jl21K8v dRj>, ۟vP-KX#= ?hlMqW܇hW2X;c3(r!eY:K* PGםK1;Zٻ6PցX1@;p@ےԼ}:AAvmfAjXI^t+0v^NNtBkr&sW_tS۲Kz U:c %7҃hA ^p?PHZHU+ʋx[FzN۩v0^QePc$L AڮF0nKOc5P" | ?/#V̭ mRP-Sŗ!7-(!S6J5u̓fMrq4(R`Buo ѢƠq; -i%?9sϹۤ{]L!eե e;/}e?zx$0lp28 NKrUN| ?IV7BW2t6]Pc_r]icc̲ @;rgh :H>"?!g'c{wՅwD#MpTF&ؼ1\y(\޲]bN-~ҢXYjZb﹈/U5 Tx達,8T*SÖ {7%MXV͚*ԿA r>j3:k 6K5C2I3fu$b956!Z105w[65aQԶ9).yѧc+*Qϭ@yb u,]+ls*PiW֊sc̯[Iw*̓tDYsrIԮ R֟,b$1L2%pN)[RtHeX#c%4aelks'-(Dx{K.9pvuN-vSRz#uX+1 rB+`g2ѻGűhB6%Xd`rIþ$OIM> _LW7ƚ Y}P s Qk>}"q %1Zۓ1jϿ9 kOPk^Z43`qd~=\[QMY&QQ4Ц@OdAn>YFlM7v%N!6CU]E+DPp)3yYԃ#A d3#v%\͂Vcg4j${ $hdb 2d6ke ME:;-6^*/8y}]؊4cp6 Φ/FFy? 44.N.%(Y aAG> dCRexϥp8L]PsƓ+6žU~HO##SdYjWK5b+1Vm2) YgA \rͲ}']ԳR=yK< Da] -0TBF\i`^V%=K`⨁Y&FX-@ąV'_HJiF zQF!{6 'X,tR^\(b3JUU̓#oe+-x;h : 5(; ~wunWnZ|'I~%;n RNxxAF4x➉V&>db^R5+ ;&_kҰT3+Qsƺ&SIU`P5՚dUW=gp4zc Πg)[%=&ށD73<%&1B6NF ^a1[17YWލ>h^>@2&)ٙQL2V*|eHZ&Om.HN/F- ]r`o=E Y|mMFVY[D*(ʷG|@L;<*l4N"C  !jZqgN]BavpZtAY!8c8ٿ";:ܿiߧT}H{V[@1sAr^jRG?{YɇH7ũ9I#5約_ v_oEGe j.tLǏ܍Qyc1g.yplNqEᝢFH cb6P(BdiM1CX[@Aֆp[?s&n- l 'Bp͞jh˝nAp M̃DZr0=~o6Р2HGFrDP^Fް)נ/'?prq&lJr =H2H#fI'ބ^^F>r6VsL?(rN}ZuhC|Gřo *Gygŏ]WĴx۳//Z؁/SIȍr зV_Wa( 8҂Rď K"A197{N3JF|Em=|arw?v8 `NP&h!.GVGWcՋL1!鋱b9=s٠N~# 0~YP7FAz s٫*:9't# uÌބxg\Ji?x>+/zmOV{ &%洏?: G iC6M K:?0vV p[]׳ԪS/1YNK&(K LANixBҬmn73Dp5kNS!̸|cE4#? } E^\0r^oY`Fո~{R1?;ׇȚiL\ϼSVçtB q}q&$.g} bpT#8Êdy`gp0R=d)Pֳ(9N?A_0J8 6w@x:Ibu:n˦gFQWܒͶSP,o//ZAnĠΰSwz+>"SEӴmL6m*N6&ho ;T~AjĂS ;qp.߉  Q;o["LFl^1^Rϛ"5Vt5 1Rl+SbP^ r&|'$f-XPM ܬZ7bK~z[F =b0MY\hiZ1*dlu֪mb 1`ۥ ?XvY`A%sCrBM} ޝ͎>nkRʂLTܯܴ;F\9w)v|=SĻ:eY>uXdž,6 C7*]m1է61.WۿM+ꃉmXh5=0&]* 4˄|=wjV?2`rg"+^>3ᴅqv@dc1̲!fr/g SώBFhDHw6;[/a|dߌkMvvq? kOděA\*Cm3;1&wŕ _骽D!̠>հVsej_np#w\|sd_T7aJ@^NtVD s.g1MN)-g`r R'w[ށԼˋv c'n7ٸ)G]X_|9Τ$;P]ĥN^ʎ=-h'KJ`/Q2->b[;Z]0TKdwwxAC&2v3zu.ʏ"9pMgBjr"P[IweU(d̏ | m[$]izm\K(:~%ngn }Y>en $qO~ռTq~{{\SH8ü\ʍPv%L} Y|2x@,;aiޖfxƁѢݍѲ_BùEIh̓^j%mR PԀ5X+-4V+q޶DNCcZ1%i%Kv-pi-\hRF=h8|tKʶP WgqQxϥ" ;q^7kU&j9ZWJz˱tbIא ~}é)`]"f!-s%㽷.RCojBƅKmjG%Cj T) Pk'$W=i4D ;W G5WXZ[piG~ɋaD{ KhY90t:&rw, bMiypW~l]tA@:&u".N*M \eߢ~2i}& ';C:4{'ܖM2 v+WЮg7Ev[rLX$=ngW\1i-[1Ry 鼹v$M,@ޮf&d()n+ѲA{=3$7 dȳId5%rxzI#c@ K@GTFUXP Ǩw˿~?a}bO_FU;4+-2qSi.jch1-i Xfr=OS# >//jfƎA(!5wkﱲnL#Vy4M m͸{MN.pMYLг/]ES+akFfn2^%}j07vG9񴚏e.9>҈0Ql3$,ދJiڑ׮Ҹ7jZG՝X'3'/81r#=* }$?cA'n ml_f˛lu;"1#fݫ{v^\n5]E~#ؗ(: KSҹTuzbQ^a; -Sry'*}tl~ 9LLg‰kBM;O ʽine9Ū֨mT`H蜥pu$|eS"."`Pp267B2o'P([ >/ cap۠8s_ ^D>-[w#]NPX ф:8ЍF@yDau2q'ۮiM۴2`40.p|g&KB G:1pړyޛPZM2=i yg*GSvܻ8(H{h%m±pљ.oJt  5 Y>q*/K}^0qF)gX?HgXʖ%+0 Bo(:|ypό(S nakߺ B$ڈ]( kHP'bIҋ ֮oNUQYr$%bb:麲uDHܐJ)y1QNG(@JQ*̬*@[ZT 0ǒD"kƟFjb d0YQqPKL%TVeNж P+5_Yᱲdpƨ$!^zp~Ge n=مefQ4LӥpJq4LF ٍPi'v4@ȽlMԩ$vp87|ޜ@Lpu5b ,Zl-&0R>լPV*ѻ|TBO]4Hw+c,J&K!o6uBw̔dɪ!D/qJ/&GƄ"{KB( 5~[w\q;MCr*Gsq9R Zq18}pv7Sƙ^vYੇO>S̝`pPy^ sw-jjE+ p0/B#{ϩ$`zA{7Vr2@ ԶuF!k %$hRźzè(S<_!b]1ǒԣv'kUhtK+MI8 jq\)2:}VuF%3>=$qVA"(˞U78sBz V!/gC|1~\Mm0 ҳGo c)jfht4jry{L3iIF ȕܥ+XxG*. ,#::ͳ Tm f@qi}-[I(ίxdcTÎєcN')og|p5qM"j>'nJ ;˚6>Q<lXeHz#7.|f|S?P|%N%aql4LLZEq]xfgZuյIʊVnr:,+yVV+ \Nr`i"9XQ/I]mɏwЕHlMޣpI4_x`t5OCBYxz'j7wɤvMv R̀'?^$27DyR,@rȴX]3OnY1ԁ{r0z% *7ƒei_j% ]0E5FXfbH̓ìs D嫁|xzMIޠt $aRdQQV%}Ar#7V"bsjYV3 5ʤޣ1.T= 64ّ Hẓ̇_3;q9F ꬗a3yߪFcؔYD̮V~] k<`,o6]KWKZka`@h1v8ha>.G, Iɂޙɂ< !DdE&L줲]A`xý +c+׊ m0jN}uG$PBfj3 ĤN1bgڶs:5\NT)sϬr?vj~ oakpT~@?zay)iGLP22做Tn[uM_CƷ\l }Ogv}skffaɢ=`Sem# Klel9W7al~N] Kqcjik)яlb1 HpL8#P~sorhD|ap|.5]hR$u40kTGv[G`Y^wv𵰠h^G1@D'hW5HSO5z_'bپ }wkҲ\FtFP! ;^VNJ[9+|9ŽPI/ZFWqYXu;51!7j]C Akş&ԎJn~ gcB12ӝ \?#1٢n"S. zfOO,Kϫz׿P,w U9e4G48,JJ X`frs =ylH,?.( ).k~c{À"9XƳGq?fi^XsR7GeΣv?OzzH&Y# ܹD?0}=(VkB 9khIY[e~HBʨk|n4p1*6<lXW,L@@LýSH^䶗0N*H|YGkwMYḌ=~ ~_s|boVݳ*A15ܮ!vl;tbBXZۻsacyr짿25B,m'##*idOc'׋B\Vy ,~̥8ɣ z..[ע:*я1Ր#;'X)/Sꘆ㥋-kOhyOhx -k{SkweG]5  ]}vX[ػJܳ!1j}(&Ve!s[i=H֘x2l[ReJ5I@ )ˉh~-*)7l @ MD”rau&lS?[wx@'pw'Afȝ"wFDQ؂Z2$TM Cct|5;y)Zy+S'v_m3Zj#| Č~Bqw{ ˀ_R<$t5_ZEXM>Y}y Nр@zӊt,5jnߠ#9O4Q}wȨ[ԎZ_﫲}b:m#&^K^[or`GTEЪFZi4U(D@\Yd8<'hxn%(0gS1J{cҩf}2P߹X~rI;qn)ހkyL`8-BPP~tޜr[&)l\wkkp-{s يBYGFamT%q=4Tc -]D{H}t+]={.v,ܝ6b@alLPnH,kwKɢ0u‡. ICLX[iN:)D`>wN)b)w|uD1 '3\5ף=nT[{ȃBLſ8]yd;9u׺)'=dp&!-k u+/RdXOe o_h1eÞ,cMo(~@ˁ)]L13퉆ZP1Ey۲Z1d&κ? Nȁ!ಳ%ݴ'R{Dx3{#5/Ꝟr`q+ iGMcIXLP@>Y˴ zyRவ>þOR4rxz*PyCr٨a$2jR`s4UB]2-w2=`['FfȔ*Icf[qH[ jMg֩jWvx[}u]Qm]Me26ڱ)MP9@owq%z~>WҝGhrs)/`:,\-3\ qKyfeѷ'O0B +./ 4W ap4V5U}F3#(d~!/dU,I]GvIM"4 m@0ӓ6sui/<*Ycy o*]`=jLn$`dŻ[Ea:0 |у)>n+/Ym}[@0h*쪃)~kj4X#]bAgPol-J1VS7\isj'̺< wm R}>çg|"]X<,<37#hK+]xFGORo_o1ƺ1יZ9O4%Os8S\k :_N-⓵@^3lFu'rڈ$?J)[$;̐K K<FKF5KڳRg.^KKvpfb,"\. ؟=!|uS[{6e8:^Tβ5f1@Kp?K]Ʒ.QFP [HQ|%Kex+벱(`s C6emP ToJY14|4mgjOvHF,̌:º\T!Pg!3xo9>u!0=Iy2"ZF DOSd"?*LY;r# Rli}\+w&ףNs3۟LdHϯ^ kt x{ aޞp;h9[z^q)1 C2:%<)b[(S4NBUIZu2,-4QGc=i06$s5֒x%V@<0[qeo4g+`v0~+wRDC yą.X#}a-ݶ2j6sOF#98V0c2e2CD!܎ޘy]oυ~mmz|CMWAI^Ѕu["olD \  1VxLxS=&cnSԼ*%0OsZ! anS |]9}uE] "̧ʟpQ%CNd|[f}-^ ^|^^[*MÉ%ͦ215?̳dYdd`vd$Y[ `*3W&y:Q 2=s᠍7͐B*!ߪfj{";CRNI6>[뼢(B Ó~ş84բ-u(3p#1. C1s ZQtUid IowXSߐ^zƬMRbg)PG'pɆ|&5"q? `ʠch^la(,Д0<zy{ L}R8(f~K_Àv4'އS23#JȜ1" Ee7^䐹HfGu2Ipv҆SL$h\D^&q E*L*Y85x4Ł砠FAZZHpx“79#0LܬiիɜqGst$Am}ͿӪҎQT.)lR겿!ӁpwP äNt.Ug y7^$%znYn!2pm{. y|-'z--JƸ8>oqqI]ʹaֱ}UxsaS5M*m [sX.N_B9ܯb^6pBj}0I= ycZB% P r=MT.&d@pFkTuߥ=mׁ:Bu4?.:?y1Yn1@{>O(F_Gǩ'X;sܔ"Qk#Jz2gfa..$zc9]c~:r7Bb+20 ո73$#S5FB7 I?9s)%C ^X84T_B蝷Rj)ZbK4HM-x'7\ϥ\T:;xe 4zkQٯ(&=f$lj+'\"!n 4sb $zh *o |W Ոx&q@oP6*tZ1\-wb4pݚKάվo-b&&C;2)A+^6lCqgI\Gh [oy\PK<.?[.u~%eYԓ#.х#U h{DŽ#' , )$0uLY76aSB! eǿxG_R|>BX&e@RRɖ1RfIît |!r_vc2 ZlR Mwa" ߞ?*+讑oRhp Òo~6(&|Yz_i酾aUG"bbi -9.X;>7U%f3$bk ,n`X1ѹ\jr{S T*fS#`:I`_W ̶:~ZJ3J硙$b92VR4OgmtY(O1׽ؓ82 Q}73[Uj-4Z9U90lҋ~ܪuǧ 6BoQNyG Gݶ  (sZ_\#*avXhhh:Yi-3,ԀBW90ţ `3*{ei5S˗}`pN  õUp"lwku *.Ъ,96ۦ!P)).Al^(r$!}W~ǒ⒣| nIa,6&]Y)jFEQ}`9L\NY.jf&d8'͛(r۠ShUoaZog݀7 M TW(pTM(֢ɘqA T}πB_;4 csMq?\}UosK_>Sf _Zض:.vN"gǘԙh݉d#2uгn(9ʢ24~|jU0?>MLā751lǾ\ҌQ7 T4'E&8} G0o1ϋeAI+0*Z}e['$%TXT'<*mVFgd3͍n`%ܩ1A+Kw+vEnz8o$N졠yo\l =x6wTR܋顨$K;+&Z6٬ܑGu`SXPY$41p^q7S7Z|y!T1!}͛C_f fru0G 5]\T~bv<'*6=(^jp* qu<,!L!#L5 P`avtő N `>;W# "&*蒇w1GJv!jv椻]Wz.q5TMǢB zX87'kVsj5:-p Dc&&9ޥI ^ɝlh큃 6Х ,=O7fanPm(FVj T@S3q UqrΌ⨮oXnY f[<8^OxxZʋxS"̻6‰Eg!(apS/W7fRmQ"1uPK0 :I(@zhc^C5*ɋ6fz1[X#H :Pilngl?(EG L\Q{&c!v#QTܿi@Eѝ|=LO i7~JEos7l\b&RXWl֍$G1A@Ѧ?"mxS[Y+:W#vP7")]molZ"+sjvH)cQḃb2 OibZqt\a-أ<~r".!=ɜa[0opA߸=1DReBuuh+҇n`P gnyknҜeqf<}Cm`}i*/}E@Jʬ-"#IiTUj--qt1ΧRA1-zVQO&jDxn nHH|+o_sΜ!:o tǺr H:1+o9+uQa *'Y#F@.*S^)_F^H;&n_]sc(23gM [Ͳ@Va6;[>B!Ȝ#eF>0ue7sringd# \ѦH -Ӎ@6cH/NfUo Nr4݃,dNd9lEڧ?/ ?ЇSjeм>Sb/JHk9+7曪_ڴG`sy W+6haS5n|?LoJ‰*~z~Ug'H `sP Y' v2q/`k ײ晰X+4)VaS[ I>Qc˩4*"JRδA  S4H&]< z;v,E/lvMxartٷwq!,- ^q6pjj%ļ9zT$~x$L:K m =k8HdOKJsjjEdWo^gˢ,ڔfm}@f'1Lf $ٍxɻ:zQpv?8 Gͮψ?L$=|\i?;H'/^sJc"/P'no:v7Yet?6a|i2l 1U)u΀-i@ww`8TínhƬ+s1-qdgQGeSQhqRˋ;o8(24 ьArsw] ? zqk%oP$3їEѻ-_R8; ⿲ij /5>[S.OeAªX Y'35 S4ǛNyO~ a$}/%?䈀ZHx5}R?*y^y$&DHj0+i^WE&CŷXrBڦmt }п(zP;"*m PCzK5!HtU`n9$ēo)tBvBsB藜 лAZp))-gb! GB|7W 6(^ IaMF5=~XbPa|]Xp=o &CƷNrg#vS߸W_Qn)*nWo^nJGI-U&J/|vD)8! b7siC:Ek^B@3(añgZGT ǥڧ؇JWK|v`YZoé=PxcafL$hx[iq՘9@Um?#l S3ZzDq5tj[KN0e_T `gYކˈ#Ȏ 9I&c'/?+{(zQN=%Ƌ15,lLAUW!EjUX'ZL@2ekI? 9w0|U '؄9"kÐ 1g`ƺfo9eOOm_B q*[DA\ \jE8][Xݜ7 cH H:h}t{ά d C]b^r;H}zcMpVI8)B"\/&GFE6 Mj>Ee$_; 8 +@D)L6;x*;ezO<g#';2 %fQP/ʃ#-TfN !E**d̜-{P/&޳uW :Cw0Lk>հ_R4淘?v(q%6(o o9|`#K.7+;QIiʦ _!jPC RȖO<59vLK0όuwllO/Z-́K`]\ Rv$fuB "fРo J!uVxF}Rv׫PEJszτd]B. ~8N~:xjF+S: GX˓4 ӳ +?(_{uISgV }:1 -@ b|Md ^pl *dW,?jʰ6.5"LxGљX?\p"foJ4Y,]0 @I`Ҷt:jnKi:.m(&ܘ$QNaՁmM^1s3hI( >}/_keow,]ڇ|&s$`V ش38C& Oz!/תך0 IؾE(yF8.Ag1BˮDtx2{=I"7Mm1DuPRo!9󟆁WW-;@I QI m_;B/?*EnCtua%QnN+4/ V4Ex*|t/k .V M/^ᚮЏf8&2vd 1$ Dˡ*tQ=Ƃ2Gl T*@A+Cmܲ$hOv?}^\M߻k+}~G~I{HⳛJ )m}``hpJv$|yt`n"ԤyxRctu2 ZH/]ҽ<2KbEey4o= ס$c^޵L]rR˫"y c/xu?+ ۂ3m6-Cҁ>$SᲶz!"VKЩf:vdMUGJ(I힀(\TrtW(ʙHN+tV3 Oj)x駱ڀPg 1ef":k &{Y59}$DHyP; 8MIӦp&~\/NM~6w iW9Pv!SA:qQkc EvD薊t!R>SHG=a:#5TUtq WC3 ͿliDНoF֢[hkS*RWRф"c@UnH%,EAUtZX56yi?e y$yTYpGd(-RlMIj\4B1tmǬaZrƎj|خ$!iRqr('$ϲ6b{x:^ʯ7EmpoCVUY5~Vp.^~ܻleGF(Ԛc?|=0ݍa6о/0n6Rx`Ap< e%dص_3#]eGJLOc¬ڲ>.Erv0P}޿O>֋Z$=6[Ai#Q  Ä`uzo}v۴:OR0ۄ,\W R{~jHD 1BPB#jZa[R5ĚɅ M ;e-?IQMZX ̭'өӕMqIl@`pu!Z%\(v$;&rA- ~Ř|Ti(x6L6#-x;b5 Eޓ1EL!ث-݁1[,iH xVpD}9 |H.@N郒N}Cs,wsk]7j+0LNitp?"BB}nYZؒ .+Xߏ sBrJ*@7=OG`.SLَ:eL3{.<3GI$: ux#z=@OS{:_i9fD,\mTgfGZ6t#~"Ɇ4֋T].w, 3#lQm^P^[A⁴<|kd^yti-@Q+?y_F7' @`I t *s!N89HmKp-K\*3qZ;pdB%tI;SH%cCnh!(>?/E*Dӌ,Z MEF=XnEq26h t/' DcB%É+\־V~S;fUy4+Mj%}^fPVq:R\'HCG"rpJQo\p2xf/D*L4?r&лLA,>L[i3Y4fWQwfLKۮǙ^3%t0GO@ZpsOq:mO=KyVpb `\9px"2M܉L=47Հ= \_b42 SϽ]2{?ekDHfupqrpvW>Pqޖ]@M<{?ӹvo|Ⱥ vLK"dHi~ÿק w^jH}fbL`dE\Lo<[B2 %w> jy oVdTݸer8޳kbt(k]Z,,Y uGQ.xEb׌<ǦkN4%E>_ijhGOHbڵ\^@̡ _]UBt"L-U=T)bq97;% üf=zԞ#skOV vܝ~TpDkqQ@_a}} _ QFm\HaYmyKk9a%:>1/6n|wˇ'ݹlg4kap&<+RN#?Kws<0GOU92D?c5>Dav\4q43:ve46 e l"iuU7 鞡<'E0(e*@&*R R,L5ѣ~}B;:7\c\G4P4y4ү,'6uwwskK$T]W0UF{n%ܗCp\v̳ A@g|s*m葩ae @l"B?>a؂'Б!АVfDն $T&Ǎ\^ p@w27qG̫[ˌ`^_4и͇@!R=C(TRZn1=o5͡R"DM,fr8ߒkv>-i@njj@}bq <"6g k7j )vjarusabh7D6ۡ*C4D B'"IjX10}pRk6"9bm p袨ɯ*CH*E NSeo1StR{>q$A[^_=ZH)6ʚ. I*f}sfEbig삵:;bVH.tw_ћB̮#󕤰fWX-=dM'AAuOeIljŌ*ݡsz^`}M TE?pQiP$ӈ D)j7,PI%.$La%fW"'_p#j4&vqlZzq_4#n;.-ab]~0V5{=-嫦Yt}dDgZ` v 1~#C>e*?ebCZF4Me唀pJWe2'NF^%S_SɠG㳂ѕ}JJbˁWa6~[d~H4Y[ rXe+fy. !\RԵEaVҘflZoJFHgyz.- Z௸)g/ GO|XDT\ 18 ' se"a WuQ`jdr_٧]/VOJT)*nQ@b/6)ENLPNMH=2Dہp\}]jG&VMZ°0qtrԢ=q>EϸK3d"{fGK°ķjhc/;[|d˚:Go ՅDt ?Kme}ٞ,$?ON(s}tՉA5\RН1Ĩg?J@I$&L)<`N?rwTFtM>R)X׽N=YAdgHþp"ؘI"iVNL|#6V z (r>(4ލR8Q߼ KG֛a bO"ힾm3 3A{ЎדSx+ukt^|20kp> YȎ[]ݣIH6,O$ z\1H'vҟ5=a_C+̦crv|땳,GqסF d۠9>n(̻ګO9XN`(yRҰJ.,XJifc9dig6?=<8aS5w#VZȯn'ظ,S"kJc\hڽ RaH|Ru ֍j2gHnߟ%<% 4H;]V/Uu:6LȹSjn2)/Nr$]ZM:j?kr݇ ??۞6~RXGήbbb>3(`rD櫅} ;=ٵH*nQ#Ŕjpl.cDI>=.L>d=bI4tFX 0=½2 'D7 | $y>DB`R$F5!#v%N~`ypT]m3yЫ (f25bqΆY;q'yblۃ^ LHxNY;%K.Rft%ʮAܛ|Ben w}E0>)䲽 .sAՂ =(:э#i/͠1099Z/olF39|^\"GKٔouG&;x(tF#+pK-#PJ9C:2B<)e!,"{4s_jɻxS@S~kfh`o-&yJ }Dtƴ +e +)Yp?c( 4Ű}!v$f'e~-9gN4[~]6Ol_H?|(ׇ|؄3؃1֗O?vEݖZt8}}'J|mv/Hi<(VV, kx=tJ%H7Xt{vL8P~- =F$jOmȷ}@_|L·j!i}h~ O4`J@ @5b n0W0E t`jؚbh'TOhs'ƽS^utCB<#b(8E\Ij;x L!B Rb-_s S嬅߹t tz`BlN[4F%]F|"P]l=T&ܧlo7hJ&?MIur"bIZe2 SkvESK߉.![`VU(TsdSwvb 5TʒSUW?IN1j5<7uGo-p q$0u/5,T#75rsN! 5wV#S !Lf)P6L;= l'Cf>HZ5YWô`VqxLhǺ\E fOV",$ET #i#}1R5鸸 'K~BákȺ5Q}i3dkxd=zECOE"@{:DخZ9'9=yj`-* .@vcg@{&'!Slp\)ڳM^;6  s5ϫ=vbBQ|#@Ћ湸%yޣ6&FP CT0%H?^n0f1FfrsJVVpo7b--x& 52C}c> o\WvӇJP)U}:IZ_:HzCҠ8͵`[XD&.v7ʔpD8llMm6Z K0A&%FM' j0̀HZ"񔟷!@u.J 75 OgkN̎ =H#+ΫM܀;EGcpOE*.=h\6l\W s* ofQ|K݋:o~ޓՀψָa+"jX|#= ym4Nv܈Si/;ΐ),  鰖GO69uB{CyVsPwG1|z,f ײ !38}UyDo bCf0YW ΅ cڀajݞzv2[:mSpGj> 6f.9U*[@j ZmG Z.)%_~!a>0t˸)a憭 ʒ3Le-^WPns noV`n۴)l,0)VZ="kK3Plէk}~z@PXUjZjrzOv0;3~5Dt Ow%.T$b*pLTe:=3Vې4_1_YZ ѩ$ӣ"밵 m觤n3ha׈I* T&dwbQ4I-A_kћyB6(:ڣ͛ Gi*.j8[pYIG_GreUKꦚ"Mc-7Ѹ0oħ5@Q|2PuU&)*&f½?3Ueƅݘ] W7_8zh=D/: _ICŲL -O!xR0e,Rabs2Z3POQN <$7k ϵBwݮYM` Sdc>n%? yɚ%?x;ϳeI:3MAP&%ɼ*=Wqty 2ؚre #k5*G펭8P楕> 6zpQu`r&mCJ4\oVR5W}>Gf1Qhx5zՖV8'21 FF!t+`>ELjϖUSɡn-dG۹7|O@?ʔid\hQ_C*EcC7;M uG"tsO=/h6SX~rCEp9+zLwroSuܗ#cJEѮ3ԑ< zka-EQzFe^ſ&EO }o_nlEiz.?Y zq_%C iqa-󗟐f%bG  8-pds7S +ZEIL|o|2Z.nqko! +q+؉f,`l%44EW-kSD*D^/G0Q3W xwVb<,P 4&HEaH=˙>T\|FJ*\0U}!&O9HkIEfs+0WV~ xMqžkgHM'ئǪ 9(I5^4UHzS%+௹AwLtj\Qۀqj%':%G=ؤ 6[YI8嵅:Ppiymk^Xt%iJx P~gn(y WѬf_ -EЇO/{7dSLGV[Hp(Q(GIU^>7z"񵙡Pn67vP fW-XVf\yb:|5,B\emGUo>?3u5 gb @  %GS&nͺAj%kVoDɩ;jkkFΆZEg(ўЇO"X G[ibMj,pG/`;yqyjKh;Y yPbDoD7XeU3*2&.c&wf95KY*So6jR#NVoC< wAwrDJؠa.ye-2mO^ŴW KSRhΙ𻒀ZdϦPHka*V-D Qg(ՍC^Tg=P͛H+#7́+&p֭P˄s[:Pvs:}het]Z[wM6G;5+6k*羶èjb]-e44? a/'X2GڇliVLО19qaA , h|w>T W#!id+]е{|yY+Cqލ󬒰:V;ʞٶ;F ZY7cl$g.WOeߛ#-,#fZy bv"̝nȎ.!/쾤<Ha52';>%l %O#nO ep,/Ia)6MѰB}U|UmAWKz/XYj&3@I8aD`M(;HQ?޽>jEԨw9˜|F*)<#58z4pQ ݐ՞&|.XK'c)ӹkXd12<70`;C KT&UuAFC9~ 3yb?ͫQ}w\A5Wwv4>6{Y  JO&Vw jH'*Ao0 Dn91vyw/a<}mA({ٚu ѲCㅞe QT V?RCȀN==% rB ݽx+{eWTQKqY6\VOϒ]3?" !}q3h͕Jzu5jКpw\aUGhxj"g*ſZ d&Q|ZrQR٪zޒŒԴND Q<[*!nqH(G%67'2( vL:Q *MJ::@@1BsVt)QEKR%ԭg㙺ڼTT[IP˩Rʲl"W{閙uVqT 36LwvcU)VXYMN}>'3CR + 85xp>D[?@n6[4Z-gU~}*o+FCsu 7pRmVS*cWXŴeor->xh')_@@`{6Q5fׂfMKDkp~9Ϟ񃐼t(pxĶbx T8Æl*cY@綍6爥t=Odĵ{cZli꣬$_V/cx R¶њAn("p]iAy7˪,U3/``_Etdp䕀߅xB+qd}.玦mMW,4`Ƹ3 ξT17>n \'RǗ"vAq6%3ߞ~  C#?LY*#0$Su͙ŧE;$ ށUhAZM_c۱zF53fm6{n=_΅42ME.4ݏ^3{pgn-7A9/ѧNYbr_PgVYЗl?@nǷȔk!> GW~{嶮6o(5ǢEUb8%>gUMnkϪm,Gepv=H@IBN2Юv&k^ +nF>MNV>yj!%㳷DMrLKMM@\JG6dT>=N$#ug+Sy|NuXd@HCwe&MRuyG2\zwF.[ed`&ȪX*c7?1mē[PCoMgzANԫ%ť{_"d˚r%00yDx羬g>⽼$ڭ]\+#lglCV^! -+89{&5LӖ }A=㺹v6&eE xd wA0g]jTZj9H][gZP ;Y?eDtvX]7+!*<`iL}4&V R1pĮs #.qk4%i&Ԏ{DŽ"lk/I2]wq},%RBQnÈ}44S4ڕuK-]MCP%N_IX/Pyw^]􅚍!xHPf# \hdm:2JG1Vb6pb DЮ(V߂ _FkƢ:臲 KƢ ^=Cs(zeXt݇^u!;>Ч0tFO"k̵|<)Nr|Rœ; q~G0\Mл36=[2 ĪT\GCH~>~REz/P-A#sYݹfG 7.L'R&Z?^9co _fYsk,r۬e(\4L_ {Yl=@w9>ԫw+cZ=y!Mb'/!->Ll+!ϥIfNl /ùDj6L!^zmYNՊ$1BN=\[X]p$$V" wlՕj+8(lcAc"rQ[s<淞&EB/OxoZ<6]Ev {,N8f|y1$b^&SHHP Fq.}d==f=%1iH p-!)Ud_FhmRr0,yV۱nޚݻv [:V6 cKvгVn rJG9-)⦱(\2Axz&tY}(Dz/0X$9q0-,F4sw@K#aS88MMx8]qf 5L0 0RUI5saȩdHOTt1A/L=N^id.Ax2=x5NR|wͬ@Mej5wH"C{ 3_;SЋcu2j'Ԟ(Ơ|q|~^¯̒sS=EX w:g9aexU# RnQv?1- =+e~dN]yb锰{t`6tu=mYi\݅lT1]3ݚ*rmfCiy5&ט *czI9`0'"g(b(7JfXim1fNLC%[] /3]{z7K}*u-&IZf >Hz` .qwIՄIfLxbMuW9bE"=8x%~\*^ >7:{LtKEأ$qRQ6Ϩ.D!Akf \ hѲЋlGbHKU+":GM,<щ "uE=onj7s"gtl&f[!|IVQ~˶F6 @~kq&.ke85#RB P7 +O b#z\v6XU.$3y4"ո碰)Ҟk7ZW)!E5m8Bi_+v l- eZNp+S$FQȓ9͏uG45mWF &l>Ye[Kh9@1_wt,/5ܘ8uu혍ׯ$a*wXHȋƾ|wʦ(Ql{ JU! bYJѭHizb&EլLT|G?45OP^fnx,'_|W CQY MQ2;+泰(xT!~?UI$sVck$5%?)~f8Ԡ.ElS: \$k j_zN1C~&BDVQn>ৠ3+iJ#@<}ѕhJ:5moe!nmb\ZFg ,]%t?\nzLƎXpm@JDy<ćlY'|O^‚=qG%!sbF*1I* pPmPL߲ٹ>PW8cQµT=vC|ph0&d OD cg_Ap{K\EHf- 4MtROCJLsVyäoRP-~T?W_ތX5{Tlskmn:RGŁkx^snsB9L;I!KZ<}4C:‘e82E;{Z"^'ݧ>[j*PNf^Ph~/Bvz!݀o&a c'r鼗(g0T j5XlyY@0RkWP~Y]K :)˽ չ\gn:J iϽMV3BEA+)]ҳ@S }G ߮J`R}ׯE 5ŲlI]-|[nR3 #f5P`6)3o{YkhKRIjkh]ךr O o "N DAeCcA%az<8x,x\ł@=xmo8/&0j'}hܡrݱ}BlYjF*B/CUmH W=~_TFn-=q9\m)ke'jW`@6oDi&RΆT{HbU =ݡ;f8EC Ŋ8'%UJ; hO{/=Lρm8ঢ়ͥQb)޷]N9<_ Fjih >B:5I';oGCnJ<.&/K]MGK3-$.&$+/}9]>-Rn핬U~əDDGK=G(I&4r2@2CW4)#%*kpd0B_MRϢU.]iEʯ)VHFO/!r9$" jcx ;eA֚և r @ŖX&A6RrɊ"'Yeϥ3+TUI*Y 3dگ_,*?i"xn,':~061 ++'zGRȞ!44$qX9X$rQ v2`WŚ0;_H ji ߷Y.l8zMB/Оڀѐ}mWX/|7Jgqfzg~sb 8 LncEt-€U$rti0Q7,-S|?sKoC`3W^H']6[R܂sS%W66RaS["UٿKS I9-7%y%/D9h:}8|#/ȨS2o"hE9@,"]OG ? o(`K)2L#ώ߶?Dan45BHl ;3IYЛyeh%b1fnT:fSZD7@B!@U]Mdpk$xZGr$y !9 Dm/oG@9 HQUdZjpB8W!K'I0.lҍE}`npdn]Gə/$(Q"RPN7%= aP=DXdW7C: egrQ=T[|`8⨰:EW;jKeh–7r@@UYȎ &t]^w F3#Ŀ^ ɷ^95;g0 xh7"ـ#nѽ%N< #P  ]ܶ@ON&Ȫ rBU ͵-`E"J_64?TSW{]-э Ab;g7 -}ܿr{eYT:6\p&s2u},@3Z;a,|8}3c%!޵l?H!}z)1=}yepJɞLa(J~!TtVAx/7pܫDD%F?ÈX\HAtJ5c=ϟ2R9K̅\Z-`*bSpz˦&_T1-BmR?20K-pY׍Rj-˗R -~4#W ')Sm53OcBg}0Ք̽6%B,GW]*'~N^H=O[UvmvPyJ.ZtYOPЦX{g05U;ᡇIPP=Kz8O I~|ek\%PYw2/z7nOq ˮ;D`~>Ze@1H*/i,G?Q&.' SW,FȆa Ϋ\I\N>2MYͲ@\`P ,)Z;[Ͽ~z7(dtcMn!`*uRo4g[#b9&o~y]C cxmh6}^PO)a$PTa͑-1dɋ'vI[~ ޙ|^7ij4u@hu);s}DfiBo/|?"Xr.ٰGW@ZI_f-AbGeN:^LZVĝbn]PĪr 뺑GiL&i[˃NMs8BR_k2Cos0H^3ִ4HWy*L#f8jVtpM>V]s\aCmG$W;e!0X-|&4)XA];̑H04@X ]Qkp3G2mFkZzQRwj&.%; 71L05m"aPҪ&K&?{xG C$@r/G mmC6Qc$f!lmjDlKp8e;qýl+Ι'P{\(3I|,TU]LrƚY o}V>D*Qt~_Pnǒmakޫ9hVT:riht+şECO}-ZWDqA,WxakQ/9LL&pMM"ɝ2VCX_óH;S~66׺j`W@iqZA mnwu#a+Y ŨdQTJi]g}+.%Na'tNd;:'`@Fq5E._ńήw@d^ b$'2vl 琦Υi%oWvX[WEMsS7 n~ ^_wv_pĎ`DT7n8#G~52v8B̬$&JcxOݧ"I/6,aYwo44'L[\=gl-$jO[A`ڿCE1Wϓt o2/(6%w*?#pLXܧM_ S)b%^"^5{)Vd7d>c_/u!M.q56\޶^Z ̨e<rJM3oY۟b掱 UCLՕb ;iM,ՅlqUSi,Y;x/NW;@c > k+kL_so0H}57Cxͫ3]\3a Y +ՙPƤ|n?Hg,hB5\Y|}!T%R=ESc3,Pmn2E~-/śᒹN4[d8!k WB6x;~5 5fCZ&@P:Q}ɒ4bz$_E#QɿlѾ7sP"6˸7lidznGNuC'WJHiŠ…D}NsťUWQB`,Ct€9y!y(L vCnlcӸ%NPU0d 8O&?s2oh>\ /'Ib1sW, l&-#ho @y`綱}S)zXEjYhM$bj5*!]q|#D(9ԃ䶡.dDVjULYf =jIFэ9BO1C*d@氬hў~-3AۛAVpIqm#3.$$,P넨9i1-ΧQ7;eF+{d z%HtXgsS!+1Vɭ&zFNĝ.λR>;\X?bxu&^s .g(&NT9nu=vlwSŦV._PK1 ў;S4hbp0kl,td {-Wm*Gà/a?ۭ8 T-|Z(N2ox6E:gX ƧcOi DUpſF5r]wFo vDW6+Kn˩$NDչw![;dY-V~6}v] C/Rklo2~J ~}j%ne+EOԥ_7GF[uȌyo\i 7IAaaQBz>?Q9x$WƧ^s/fSZi7RT&/+R0RñBESju:|WRmHP&W=!2$\N7dKYvfL ߉a]JTAf/[wbzv4BSJ>H,3/Ɔ7bއZE T}m3$ fBKz> p6Yf؊=?t}LDr.*.t$ 'Py4R"U9h)׃@3G ?׳.Yg !%P̮ΡHto<->2&FDثޝGBMlڰSgQOx\ &׾616ʳҭ5 э&C bc١d7JE.eHXeP9/y]]ftҍvu惦z‚F3w{tB<0"GX0Sg4'US8*kɡqL6R-HGy`Vďt;9+ *ւG-oZhcSҠA#T'=Ѧ'sKN+l=?n~=kYb?UC33|B+v[-ʀO0+{Wvke@}`2&iGgSZ\E{WIJd _dVRXνsTq"剱|^K6WE{ N9r$љ8Ey*5_5X%-+&5Rfc =- mRݪ )ʪ-"J]W+j)֊aTKuf~^1F}Qk *oQ$@WnOJ{P [i)RSD |.W$\dP‰EV"\A ,M!UMRF卞[[6ͥtDTh!NHSʷOq59@kKx/Dfr h5/q7Sb:Z/|(VS$r쎡[$ koSDh3LlNJߺiX(DjH`/BpR/~eJ ѨQCr4K˒!\B<w< =j4Y)캪 mz'NCw.uhװk< Vvۋ*9KqH'rr7 ٷ nL+;NؒIFʴ=B17qkP(#SV_ 35Z5 0s6b^xJ&8P| GxߵB0>=wRVm+!0|5Gko-R|Jt9I2_L'@[Q“E5<á{Ͻ7ߐxҺ4ES7 ǣ8GF}A|tv |;f{y7W/xYqޗ6s3T#M 8& -wdfzﭲ⁡I\ A$O FPWkQ}Toȩ`0 v!p>~t ċ_ꪬfBO೹"I ~1j˸oM7}Iv!l[򖳄**jEr>;Wث!~NGAn ˫',˵f*8qa$12T%]fC'-ā2Jŧc(~TM3b@Zakaߛg#3V\cgGMqZy~9m_y1tI؋2-~vK?im3=,[0gEL5MpS VFih`R^Q?hxQVջ՛g6]gpw'uۨ%HGƼR^vz#H'b_ ׽+UXGʹ#Ĭ{/eRWQXLk9{p] QPo?#K$wTQdѳ."Hi^Qf_3w<FbSSׁʐKLfZy|>ٶdK3uBܛ_}x[SlBF1$؋R6.Q\(\t B!e5{H3سly[ܳf= gk2%פZqeE?7;% Y?.T^z^K,'fw(Oz} q9Sk:MÈj|C2ysn@/ j5sMby6R:0L4z?P#k5g} D~ m3ܛO&Aoo z#'[)dI(_b!3ʻhcv{vnJKLk(s,vKB%B8D3\VrtU4\ڄ\:Dxꛖ / -/^Lju0 ?9bI iJ~=s=]Fu#OJj )wlvT_.&w(ovUsT@2SA jT؀u(+X#؄޻=ݙZfT%|-(cٵ"91T?ycV.=yq+P9AQHF0<V*(G%.$1>GAun_K^z%Ɇy&h3A+ ė1\95EL=l-kj6ICy͑;X' z0BB%7kg[6cFm\h90s4tlWv36f*EbLzTp ~/Ӣte`b y3t HF3>\!&irj1&H.Yͭ%U^op 7#]H-|5  g)jezi:ݣ&U&{%c>e*!UA⼧"DNBI@8bcrַoO.{_77fQ -Cf}bD 䴷n ]xGmO( S%# L=bIB!A!zyVCS-LC x-fi€fCk\ܾmv=wRR [bbsaLiϫ8ɹk(iFe]2 J|^pRfzf?ڵ:+.bйoo4Iz+lBaF`*,/@険%O~怄B24B}TQy_X`cp#Qo62čN̚x!%u;y?v<@gUzOxX'SM%xs! X~ךn2Q rn ~{\?oFXtv5 jմAzGL?!g'?blLhݷ̨?߅noYptȏR1&X)>z&V%p *?iC@윈R]osvf9i@]4rVX2g<Q|(~eɃ'ӽ60}#tLpBXf;.R,9Oç^'2%&U„\[\'cEiai@j$J6<)T[|)0pN Շ""wQnXYQcdf&)չb6L_Vryh_[#f#^ZgWW_J>Ї%087[ _ ˹h,WNNBc<;\uAޑXll0JQ_Cw %UtMW-?s`K7ƽHsXTԑ1Zap+'VwR鎿x/_/Ȯ+k$>r1 =Β 0 hpOq_XQ6]n(Ur]}kpp;WH2GFYY*r>POMllċ:QgK}^$z|H†)*EY;<ϺjtgFڗ2fOѰKд-{|)"axָ^o,4ā{E2ܑuLga9l\c. iuk52~!73AHy][kV l U!\baiժf**ދqY8`͍y9!P j(pBE"Ѹyӏמm^ՇYwL0 sG^RB¯_8s.e֕ZFYj3z@\2T`b߽#J"-u{sdUmBŋæqP>Zw?.'of6 `WU2K[ΟTΠƠʓ[Gw=f%d]j=La9@r-@: d`p~*A xm}d˥v&={]vjzڭ8N&oadudiS9xfcQ$^qCwCRa''"*inأuF !<Pߧx/f[ƒt0vttd@ Ye5g5f6"F[2_P{B Qʆ׹p(nȸ}Rn6Jg%~^΢(j/bʣJ_O*9T(*rf`0-rR}'.8o[K%!(%_$p~T D]Xh=JC-Ws <8D؎Ք0WS%Őew"(Aij~-kA@I~d ڷ j"tpIVg=+\[ϱOFyp5E*sT&â'өBb^fZΐĸ`FE{7jݹz%L.7mbUmNC&# S"NWW"6$|%Oxf' /g؆sA:N e2nts30'}۴Ӹs"):jAYcbaB %ic{Kg>k153v}4~cX%cONoj#8 JRS: M*ց`ji*=|f=){"NUjm쇈uCF+i4> u SeOn^sWUY#xFkM’qܞgShR5N d{be.s$_ =Cu&dg0&N%ߕ4L8Gy2,.e̸!oq55$߷_ٙߴZ0 /UP(K,*o|`Z ~d^#ߥ_h<^S?skDk_gQ g83:}67{Ey)To]~.*w; ~ͽeq'kىׇt#vģ{[$'Hr˅Fg@gj0eBb+ZMԖT2YRj)n-e\ނMB1NI}:Yd{u:%֜Wݠ6G\O{djg1ƃn}`EDV`gxBS/ A 5۞4NVR[SFPF{Ex(ߋk; \@z$hA7Plt { GT U(8othvvU Ft,x捄ʮ!b _Sw;gXd}h䛍a-hz`kJT{ȃQ0U`y't's}E1?tFOna%@-O F$epAY.%B`esXn_!kDL7S`#Z܁-_.jk {=l*,#I`ݸXu.D#j&]#׻`'Pp'x uh<FG(|{lrzr2d@bUIU"l@sD{TfJ|nqE@rYs~B.+ȡ',F%g@p//Lʺ}֔\y ؽoRɳr?18_katl:%,#k#zDvrp۲PJ\%ʥ-(fD%6|ĠRRƷ. 躜 iNPpp`ZJC8lI]7RU Vh'(hVMId(+C2pe:1h|K OAM508eDt:ЩR=i^*7^lS5h:3p)xj.z1AxXը^htaeVNwVu1|mf4U[6%Bb(N.̳(fmHL֤sN׊m20zc@@c镳b7 p @qY?,z7ǜLCYi[6mOދ9 n;А`zmn0~w0|qI~Oo)%Ĝ>)zz-2G"Z.(bLS:䅣9eIR: *Hc_sQMпۛE#m%Lr=N"bZjz֨"h V=02h1]0' S"mrmKc !iW?Uy?LdQ[ҟUtUfD0xcMAkr pO h l]1~un##!Zd.%tfSӔCu"&gw;(<()xR\ym @W}|ۙxZvd;f1Ukh9ⲍw**ajl/l"T iw9m"0">wswT6Sdv΁N  * d -ėu< $WQ-RHTvm SOsLUR6F6Zu-:OZ }Z d)6*VTFḃmDTm\,ڄcX-Zh@K j>!BC͗mj)p+ beb}ieu]v8m'Rrl9a^xL\Rt&?l]Sa^٣EB5?tu: :%Fccg&Ira=CoӠEBrk J ] $%PO/yykoN^a߶&T2^%}mjy/btjpHVzQdN:4NV2M}}&Af<-)>iUL~߁Dd(Sz^C̍#mD?w ?rEHאTɾl$27 CF< 7W$İ\E?X<3Zzc< @Dyil7-,%BB4y׀+?j+ HrG-T3Ld )ẛDQU 'z6iQp}Pc4*=DㆀĿ#۶Rl[rDIԃ| 5vҁίoPQ2 BlH*U1\ȡFpS'A4!@\`bX*q9t Y2y5 G%e{&+@U]ߪ;-7S֚ޘUIKyb\q&xZnnz`"d6^QPOJ2t3)'ٽ]T_~qs9S追c1JJ:Ez8m+H?pUD?(4+x5dRV|Egň-PTuDϥ!.1 EPmv6[K&s 3 #-}PJ .;;K{32[YeP_W9<2ɞ{=;QXF"{dq?*;7̥xAF8_+ޥ14kwKU떉pA5< @#qHmrwāv=PPԸb$Ft(s*m!!Tz/ũ}3'o\l]jE}'vZ]`_rB$)t̂ o^X(`5?*G0V=>j1s#(&z V=Ѯjn#:_Ojz+3O,^-4 k$s>3 e"`0of;dZD 3F^t-)ls8y\ \s{sL TgHdsg={Z-ǻ8L Čk&^_>ZanNd!/8E(8b5.}{^^g ]FY 5*I^'S!`iO:LvL o&ZJY4P뫺3n<CX PL"E"d'NQclփf F'(y ]E?&wYu~}"J$&.Q&vzpپ$Jfȣ_ߡq"VD?&NĘ׼w T#]# #Jnh,le>o*q =wg(!\eh&àŸ[u#@<=2s./GVߗjkyp|DA0K:tl@53>vZn)ӴuӬ歒ź GPWhxTkU$YPY|h^eĈ{1 bFIENޙrGJb{LaV"xR#9v  )@?|“e}0ww!6:?b%e.Mnf5պ-d&4ZO n?/Jmڴam`Eaf++ Q^ ϔ;3K f#6eG$DbƧpig:ɨ+^{,$5#@>f_Y e R.9i zmbK9rö󰌘Ɵ1w\ж>!z48?PH7}],{6}{C .8@T8^i5(MS6gܳ)w`x\:A3b:kmF0?<}{juѽL`1mيy3}(ݷE隤b3;5 /Kѣ)&ɶGȈW+O%S0)x>`:,MoqoԹa!<=\SjAY .n Dnb%aM3wA4ΐ6Ϧ텝 >QW"]X  s8Vtg%SgfYbɗ?znHA ('֙v[r~ R5i F0OgF@͞nPضP}"MSܞKn?Ff, rBHIߚlX*O̜; [l AEԖf?'1_'l!1H O1ka7yE:#UCFCZ*\h E){qXS/s8b{#{&`06D.p_wyn42#T|M Qب2lcIBGe.h8o#ɼO]Xp! pzޛ m܂RLsFMMOQ9# ɴSl?G  ^yr@ 4>8{(B=3e $\G<0=3*K~W6r?P.BwZr]Kt^'n-S= o\xdH#+hC5XG*3c ŇRͶ|xc16ؚB|2E+xgSRc$q rg׎ Dld`Y!pyu\^xL)Yhj,|A< ]:~BS Uّ)$a.V3wb[TBSn_}sf倗#@#k%xӪ0L 'D0#-759Q> "W-:we.+hYIn.8VO@;#xuyP SCΒcv')zh@7K#:V==8l̗$'T C}>DxҪld}wN#ٕ; 1tԼM&W^ұwf>䀗/rQfb.tq-l!D|=1F)<9.QY` /5=y։q"{}Ù $MP8rf2!앥+$¾T_"@"V1l$ExV3!\`˪6i'a-6Nfypl-"(mdru1>5G{e;Zz9ÉA9+eKUy80ԟ5 DHav%'KRX sDJϴL%mp}4aSZY ؀X!#1O0;h28ːs*jl3D\$h@{2R%/A,g9Gx 8y/&R4D~X+‘`4zu f~&_txA]Paz4G[ t#@l;&b>r^ŸcƵzFKiE TA[;9ލ6 7Lޑ [5]󙭕D4 1S5hfxR4F(̲gm 9iz϶ M_5Y9R~Nn=P;UXi^u;,%Nʮ(H=G2b]F%Mm寵Wl\0L5>撈ݠs5EL[řadV/H?'wm ub-:63}<9Of#ɤ2aDsRKqs ?'}beECtcnșpbKj ;]56 u؛a6PPz2uKU֗Y h0)ג:lB TXy.}B{nS5~<ПM5I =O¤~zKIu#BՅJ:0߭vX(hO+/76˧Pn{r^.Gnu6Y6c#?=~Cviвa6-o*?4JۘPBqO9"/6j!j1FnB>NťNpd+7۶d"KYjGŒ2Gy |ĊoɷeÅ*0,2o%F 31{lSM~tIS ?+I`զzʟ E_ 1E;T)fͺUqӜ bيˠ#t jfJO~r.+h,/+YMpAfOIYagQ d?욛zϜ4UYO< @ ןiT w+ g?J;NNH (qkG.[e9=Ufϸ>:{@q ܮqDл_Ǝ>(f$!/S,)0О|1n7Cj_w'w5dqK2}XĿ!%?pBc_0<P` pxꅩ^}Z/7od*ԛR0m؄ˬvDX$]74܇}ܱLל]@ U/7KރZP>ƏwM5y`#Bh\ Σ ^#/ bm$`ad囋L&!HՎkQIweZFsrWy`neYBSD[AA}w*#+lZLƓp⓬ָ;Sc Z):#]\@3W 75+ځ6)E1)yENM3VVZ-ѝ$aER ͟鷻"bţh@TSWmX>g hmskwKCUBT% >O~jzՌAuZVg<yZBSpB8v𦒖dW+V#Kҏf_TZy}o S˧9b|cdIqÎ1+`u]t4Ҁ?(|sPSbNd7_6f?r˙zq]!nm6*̘C@j!ؽf+ؔvt /hvu ;AY,ugߴb&3Bݬg>%',ϛ?(=HocvOdƭQ T_6c3wJց2!gBҶw&\%-yHXeDrpnIu`Q{w <,GT =`tÐ6M*Zi;J—9-vM} XDǤ/L%:jڌM Q?Pz;Wt ;$fs b-- 1J tLCnh$5 J9$%ZDSJ lfsT^&Y(d.\P%b!gҐGw| vpqx/= YRb1xl ;KOE?~ 5FT`O&b)f.du  k|ӑrt%iHWo8p4 cq Ԣ._{;k»ȣF t5lCyq xTctyHֵ"%*;75F4E% &U:#l9ÊI\ycF6{͠!Oݿ9A GW!)B+`B d#dkTl_P#6g4~2NG?V&Elě!(2˃ ! XNph"b =#g%b:Gd,BBrCLj:;20MҟmwO8_U%;]E9qW\^oLh- 9XdOKq@c[5m9Wt0',j"gK(W!˼k^mSz> GJ RLpu xm&7Au009ʮAS?rzhcDU8"Ux{Y-3^d0+:TG Ti OՏWD"KS C'tAa&|ʈfyj=z0^!,# {sB{BPʜ$Fx=7 =׍{09`lLunp(v$-Y[ Jd3nHnsnH6D\2S!я?)e 522@悴V[m"Vw0 87i|B"oN5 sZ٦1w͓iw2 q{u{USgἒHB$])8?4fD{`ө x][&%D^*䘳%_Ҳ` ۽7L& >u cdz" |P?b[E˙)vSsQ5TqFD0aQFm7X/yq\&}ԜV]!9HPcA\ߙ$l9ClԑXϣYPsٲ2 ^t:bcd1eGc }*eG+k02WٜHЕYzMzPqN^2eBrWg̹LIpb 0w :Ȯ7њuӻ$6VVʸϜˣvFXe/V=a_ !훧zJ/J+y+MRK.6P 7EjR~mB L/M:ۓȬiS8{,W4]<3VxWS`=%Rgl+9=ak ұ9:xGdudsw/ʵ?6ΠjǩA+8v=bɴ ;xc2_:gR?LqI#mU_A-}41+o:eNA0o 'dmRlmz_g%Y6Ct򻃚V?މ1Ln \1M]2㷌 A,KVhĎ/MڢI0.e&ئ6Tds@|{L5SL&[nF>qzi p[ ؝QuVl<9Lt.*dqhJ;>[@' ;gm*7VmJ婺achb?FAf.<PƇ(Ԑ54icAnt58Dp f镦)1y/eI;xg]7HAU@  vI="BS$gy>q\JU@Fː/xs@5)k(~kR:6&W e #A1!}$nN7Yfj_0 h"s7NwVRҦ>,|V0cĿ^{B!t˪qj"c10p (>laUq{qVLB#o'?vW!>KyXaJYK!2-'rdSM5\ -Ә{ .| ksB C=FW*È]wZ=u@|g1ÂtD$__+0<]jx:'!| D\ӃU2օDJ {/|VZ̰Ų!\JClVJL򲮁h%[E;ܚ]R0ƹb/:@eHm<- op:!d֓Ld5Uc~ yFrE;̵| A*e+B )WM_³sUD@v)F+Kel7lJqOsA TjVvg @~;PZsXQ/LKg__8bե2}@hZ<'FyNK&-3&ٮRFTYzKEqj؈*u]igs<{MW2Dv%usy<K}ˎ")oVf(6,?vrd@߶9(*w&> A"A7J⑶7M])}{Nv \* E6dF(-dINIZ2 hc釁m/MžM.X ]i6^R>J玑&IB*n@c xL'fwH qZ^CSzr/4#NwNmdV@ި-}}>ܛOe 2lJ`~GDHR1zY(25څDs yz$[FPUs:KB>o׵=~\is} 8P/W q R&%s=';h\ތ L62F ץ~ERt-;e,}۹*^T=L u Ca*,j.><@T 8]@?ha0]֤qSs !tU {'LIt{SBMPuP"Fx'ƀg [&-c+.`9$]R F'u;4v (2|4JBs#MigUۇ 59\3;ќN_|^!VK ՞\¯qR$E[z4ܩLD RIfy2Qwne ޙ#))<a @zW F)MZ& *{)clQ.C+ʦxjQTcMBj ֊O0Pz`>tx!<\15Y!uthItE9PmJ'LaԷڹUsd$0| E%tؕ`#k)`J~o0r(uPs2~B/C8qY*E@8U37{шpen/*nH1zJPVɻAː |t_qgqR3A% UY!w_FbHJ Ñ;y8v8}6tUsGym¤S8w!šGj9-!>Ϥc/# D-vSQ~ o4AHvB hL/;!og yu`JK(;QHN#l }KoΛ%L $ M1<ـoNv[/ xd'[|V77&k,ϫWa$8W\گ"^qY ٤+s ;€s>u4yֶp5Pobޡy%3إKY*U<2BB>0,+8=7<8O/66|'`4%FDI oDk 2/# FBݒ/<ۯ4ldUa]~&(ɣV2qb YyV)-^0xAG.=hGil?VWd\Y 6v۝$#7"{!UA5]F9R6}!ݝw C'An1E]}= cQrY{-5odiK&"H;ZTQWq9E=MI-r47A]ˎ(䷟ SW;f 3R&dlH[U. ߳qrV1EeMgU(C7vi lM2vv(oSvjtO9,^$('EI7|lcn^ab%HuふsGv 5}LJ-#z0^SbUդII: 9y`U෈6aVxfXpe t\7BGlH/p5")/)XdyV >&h~52#פMOq|O0stQI\ oKe;(2OVs K"f@╒7f1}&5wYLbtLCu)72P8f~7z;'_aHF ~O-ndKL[y6oy {Xnkc&zc_yJ5Ɵa$ZhPHUzLuPx$xBMtsďBiw GQeP5N2i2GuN=>ꝵ{pM2#VzD߳gJGfѿ{y~+d$!pX!*yhXmD<6ڷqhsYf*>/ 'khsv@&(&~σT`5qۀ7ɲ9px\\֢:>' [cܚ$.!N_˿CK&[AzxZFa*I= bšy!3d'ᯤYf80TA _U)o9YN>BuhhɞKr_{wu]..~t9=n(X,dVЭ$ 7jC^3#9^1,*3dW}Je 3$X̏ xN}Ųږ{Ճib8g~ @{Y!Ġcyfu&]t$ϐFͯ~ߎ6Ծ>( % i bf“#2g?/ekP]*o;8B9m竁ixg]' /‹ ,Kun8d21qO{V\48;.X"2^4BzZI;<ߧl*X,Vǣ,hSz\i諽49-`޼.`Smn2ؠWQ/&]0A1%BmGp$P `w6ew' Z^A㼍)* ) ʵP*5FWm58%yDzPŌ<*.kw% uSPQ<3XŦ] t:.Xx&FmOM}!>Awk1{H)Xo\YѾ { qGӘ;[ؽG1zg޸MLMDN)Z$E )*utxI48\ {6 "1$a ZQӷ] QB}(r('\/S`呗U,?7_H :?\ HcP񱟄`j`'%k-5=*ض+_M5y*ܡb2ja> Mdq/eb3ucrjKiƴVCW8b*u?~}GͦDc'O5ㄾͅ= ;NGAP9:?T n¥s_n/[!TM:ryw#乷s"c6R1c0xFȻ<ڶ!uƳ)tR$W8l7M<ƀ1A3B]=%%q(~_>ӯE5&l Mp0쓙bFվA߫rjݞQr1llkM4?+y@WȍmXEmRZ̢piT Iwv6#ZA[oJ>Fi(&`рm\MZY$HD0#I&g=!ů_k= 8>89 5v> t4Mܤ0/U#\Ez~}?Ii iA8&RdMQ?V 7oߤ(|e݉Ƃ[>+0wX1[SFʝV>Tp§*nd3wݻ1qSl=ZsΪ Y./_I\Y3igb+A$0HH&MCb&plp{.RU,K4R{y;py|H^F;? lh4>t@w-X4vjœb{93Mf Q6ui6a((,%_,%8U ^FyqY0iQvs88TDY7M2mVb0yOA-$}WwksPNs,,.¸X8 +{ak@ LHSfmߎLbk`P̃K?pﱗ*Ϫ{)53Pd8DG,;g3qWhmkW/w-JfzZ0x:~nX|Sc,%!Wykra?/]Ym[Oy+sÁcnU<= 4q(\ӂ}erEU K0zgɝ\ 剃s9/`  t>'}> ^ZwVwWrdcr<`a HGd!+RG.GJSC3*G4~R>~PяJ.FKSQJDxIpR sZ'd236^02vnd,x`-0AZQOJ a}_k)T1O/ЗGb>`*tLL)O[V'{4\7YQPH,c38/72Pvz-YΡ5vb*ueyVyE4cSAB@e wD]\[o"ܬP X6e9UJﲙAq<PDJgDsyghsϷs~j25K~Ax; yy¬.(Gdx~LݎMܘh 8LVfM\0VS _Z"r4e^ __fbʕ)u6ni0y_GV9oemF M~FSf`o3*g8ﶛǻ_~CATeƠ%9y$U*y ? LU(&@t8:<bM35)Cܛo¡QyMi2u{|y),3jiif"Cy 8Rk ' WTDyʑah O9; 'U:=5uW͓0ns8{ŞA1_ ' 4͘&R50daO=0_3vq.ztM*VLb@Fb; RZJ~1ϫy 7nmyj(? .>{_$4ZLdLK K$_Gq]BTL6)?zvlDy *#;0ܧ P!)i!"B[az/v:qhցTG00*$\v<& sp9g2R =rz4a ?)jHsnz~ʹ٢y)C d`w @DS,[[`JP-DPXB^Kj&!/ʏ|]@Çς6jo5?+ |+MPj; ?bFd¥F|qtWHP7EV <}gG7X[6G?u'[ v# a|-D er'jMPmqoLj,9ty:2VfXY~<#< |ݻS|_ Ϡr!*_B/e.sR2u6k]@NnYm|^]PVCA3lqo]7CPHDerէds m!#4$SrQQ>sO/|0] 5B7v>.2@ Zk!dSCӻ{m;\b>ZeX-} 5g3!N*۾ .h[4|zor2}2Mw6@UQjFEVW(Nw󕳊fVNXu+D_C39Y"q VKKdPq3&2rEۃf|X;>-zz@=@D G㾩3MK]MtNqJݎVݷfzw<=V!&L +֑paA6MyV9CRj*2k!px0r<&|oreb= CyQ 4K yhЂmgCwB7ҳjJge x0ܱnXle};gmQm;WT$ ٸo4M<e /逨6Ÿ܃`Yi2 rC EDY1}:1!D`P޿xIݣa9ZqBS @+.9Y5(r(Wh|qe #n:G>7\C+V+eEъAH]Xm`NS 657 ȶ6^(q= S$lbz=%Sbn+CSׂC#J!9ԯi E".kGءr>zr $޲vY0+|B{i4"t;ׂf]'h} aD8aκQ!N^ńpq(ZQB?GM)(b?dXR{vt @dԇL| Q65e5}AdwT5*eO:s4X)'j5zUw6OauY, I}x=X.~:F`Z!l w܊u1/ng,*36wН±gRdid-W"tO⛆,?3' `)ZoP%u6 H[ko'lAmH*jؚs Et I-pO)TF3Wf}'G1"J%4 v)㳡RWAjIV2%~z͠-U˪oX/:?'5R^Us,Օ,UwxcT꽽?cEpfxZ߱H%|q~~1û4[k؎.B2!e>=-;F%ތl&^s [U=د/Bc ZaP[ɥ'8|3ZN ^aà|bt?_IHgc?VO7'|l'{FB%"rx 8=}Cc쎷Q ɢw9b=D"k+۵-$W`Oxy\#vp *GS R{)vǜ>4=Kb{;ڴ>ll9/!u Tv,#䙷d?RN yȦ1E*P#LO>%Wba6| m}412jo/a!!ԫyvGGn#k ݊ڤj#'H%Ѻ, &G;NoLf%7GVS`ޒЗ{BU6^=y[z XTR/w8AT*N(2Yʚi> Ֆ t e焅xDIO~B[u}(!浰\og Qzs٩RCόK-ܨiN3?=6|l5_kdk`  IC{:[\/WNq5P&”\ju7Ud)`ٽܥoF0jyw/Q'ǶCTܺQ'VQ]P}}4`%yL[Hq&Bz(3x/^F v{ZmݜEDS! >~zIA"`>YWa?E0 9*GDos US&;pW/(VFہ?RV |hXsJ^#J 0{^S<+*$`r.#JElf]a xT*~t]!sb. $c; *Mj}.Ux8&%Tזx!T΂MgJ.JI/EܓRy@\isTZrbmwI2e ~(LBf19Nv7=yjoNq0,: .f ʆ@fW܄O6j|edXT](*~SgKQ dG3_AqEX?KmÚn^U]5>٘~A-II̾*]w>(BzqYNܜZIޥ -sH{.Cf45+B{Zn+ fʭNgL zGiԟlǃBۘ6*6v]b!uɞO[hΤwV4.^.AF [J'EKY݇N XtyA,wAI`#2 hwIշ t e[2}Ζp],E`uAϝSSW8pTZ:Qn # fkE>R׹(OdIFԅt)rpRV6 ܨ%6K%~Z0sJ=1id |Y`Z@sб=ntFQ7mD*A=r70v[2cdTOWr1`AͫPE/5*m9&Š\ftA=^4k]VM% >ѨNi7z]7*RFDi=|g\)Z-, itíWTy'z ;_|l2-mb5x!KLi!|DC!r83\cA;J]6uS.J3ipVU)*@/,l*.iqC D\ŘҲn!ݕ>/ ~+qE%RO!Xe ?MG L(/¶0G A?3.WF4[o]Ht7`~y밸)hl/zZ~9cmy$z8aYob9g wW*l Y% #&` 㝲T! Paټm2\gm Xj`ޫ0a+B1SJ'k~2|*~舳ZVۙ`5^^eY]{wCSS:ͷ$a!yVE8?N4{ Dh{8M +9o)]MYY ,Z/%O_ o}#榀o'H-k[s;{ZV@#;F/%5&z' :VG;SkIDII>+z*̳Fw:-'#.IflJH+?<\_#ƗU`"ti5d..Ŀf֧s{f%ŵ)&[/\C^]GҵGX0` 8mAxv5PeC Q5dǡ :)KpKC_#gpy)\4,$ץip=?1 ;{ zM7#BV HILʛ-L-ц!eάB|A 4SkQE%=Ms(ϟ4lB `މTa@Mk*(bWًnv'CQԗ/LvG1h}JOEɘx Ξ_8mrU+ ɉ!(7 RI &-퐍d|ꅷ><k% d;m&r7/-wF,nݓa1 hS_fA`nj.Zcoz)w\u80LeK%9M0E%=/9uED9^Xτ}"O,u6 f͹BꅏʪN)MoN'nS/Lրa]h0dE5aB7"I؉VfbqYޚ1Fs~Tn VMNۥzkg9BXw|PVvF2L\wZc?xG"!.@tu^0gF ,}ٰS^[_u0$t:'Nh32n:nòH2M*kL) bÓ1Ų? $r鍣{3R+z:^] 9h1uפl.$DcdJ~ 0wT\QD8vhv{' sߗ?<39̺RAx"YfSgCdgoadS$I/{hmzK-Sn;᚞Pn/5sٔvuMةKx=\s v=&)-Zf[mzF&$^Ęz?4ʹ;Q,”*E~QZVhI: "Vt51u9́5hullBK@ņ5$n]7* '/f1Ic\ʜq0mueP%du9WEqf%8!hlG"pƼ8&aiQy1hv" S,W{;Jt9s 1TPGI~.ggg_Mb*- f,0Qy칟r!FŰ[j}-ܓB7 f!}ܧ*G C Z\_Oʼnи|9t T_uP4ٟ\aNj;IxFy?I =i(2+0dFѺVb8SY+DE4*lVwKɜٮqӕ2Tl!/$ DU9{SN`YL哧%jli"GA/#9m> Ә\c.,9$f舋HiOQCA% ē^dB^KdS;;v Xy[/}'v'}b׉],Zض9X,7NxZjcnB9MN<&K*x<.{QO6UB,;[G o99Lk-x h \qth:R*gG\o%EXک.Z<  S-jGIaudIP^I{\F 푈n}"h?`c{]ݝ]ӂ2e9[mN7w!$b rao| ]ʬzp :G9+hKh-Wa|)`m21wpUD.HchEsG ߊL6otcί`q+]2z"鸏A9Ts<]+L;o)7bBq~Bs@?e^͆<.̰pʶ#? Db(sJ[JX9=n ϾC]`ǶƗX70Uʐ6lN Gү}_qŬ4jaIŷDnEbs־ΡG|F|N?( 9+Q>뵯r`9U_r$"KwA5.A.]5U$5,Sbԗz|n}|=BX\V' C2ؕza)p>" ݎؕ˰ĝkYI.`]PXZD>/]tK^NP@\~AD 9Ec  Y ќj[o$T"^E8g@ߑ:`H`qsmz,ה>}\M m{GL0aXtorWc PXcM!ddCY)cLl' ĭh;fh"O٨ #П48*v6⿲Ψ 8:nk3a*0iI`*OGLoy).KfCn%:ZjIX)c?AK_l9EfY?(A)P _"P?tqޗFv[so.okUœjbڹ{Hut =pj[;ynЫ}"ɉ3|sA-DŏN9FԠ]LIe>ۺn;ʢo`<t~2q߻@$W.k*8F]DȻYӝ9*ҵIuf@oQVlm"_D+shhLӔ3&aL=f;FKq/H"n?  }c SJ@'o!{\ N˘tJbY60z -ˤ:IȿF qfHB,+Q{>n=B⍍Tllq$p8CIl$_DY^Rxsu"ێE3X.iE܋FB: 8&ƕvq Rpɲ#<bx7\mux %-^'MkA%R|QQ+dvN,-!C nF8ʞ-huv/s^}#cHjZ$o9A~L|2V$h;p՚&1Kgw[_$zt~IE ^6?Pi3҆@z RcFAgHIۃсBD| ? -DL2}!,>1#ڡ.7A &T AKCXڸIX(R!Eji;fi ˾$PF}{wݘ-L(c&ij7ٔtC?XwI}[CMkp3v҉:T;`p`H2 <燘Ap.vп?ʤhYMxCP {eBn%"lgKQdD!*ggkaFN7F-R#XF2 p[4y/cuG|@`Ggf1 SV/eJ,#}Yq5_0u*ɟm\-g#mg8ɋ; 'ʧ\]]]S.DRyw!B=öv!C!|i\كSZxOԲZeɆG|<$-1lSx+)0· ۑ>ȭ6”&Žw3;FtUΈeA`Vs8Rd Гܷo?۸fqDcG[x@[ӺҐ0<$5G505WDB;ct$>?=# wu/E/$B #vm^Z^u@*jfwMlsͩ ̧3S|>[eƥ+=㜨q3`Ϻuj|2; 40=N֠q7]6fiđ2N®;+eN#7a9 Wz}{C~q6Y]n~pp`mlCQlO.\5@ؼ bPxd܉>6fSO3= ˛pcR9S`Ͳ2V9$rz;€ ;[h7ΠXW-jRii=ߤ^1 :'=/!bM)mכ6SږS;R`&Ms Fk`!WP!} \NQw~捧̐$/EN>VN| ye.3kaW8Ď*5#t, \13TT5)^ņUP7Z\w=jjyGBTϤTl@/:Ŧ98S,$ńi9\`z7qtEUHD]KQ46T0eV^T 'rA-Sz3v q\clUlgTDC-6e{zũ3o:>=\Gh>SxKgFaU2# W)V*&lhUowtqjEwl|l3c@rТȋM? nWl9{hUI\_,-*Kw|DBO8fXB.gPkB\rF-GBIGDf+gz+t,Ifeu_؜1: iP8,P** ˯P#z:pU˝<,P#?jKئHEbvu ,a9gXd"xSLtJ;SpZ:7>?`}ڑQ'.G3Y"(UfoN_M\=e8.^f 䋚c SW2{^>;1xW@-fݐ ;HۘFx$dn' 1:_42 !f-swfW^wEZ,g '޺ M[`"8ɠ QF"ӉBQ4t7 ;i$ƀid[ƔUDo=eb~@bsڱ[eNm3##TE-nVN,][gٽ \vLөVo lBܥmoMpkCLf;X#9)B[3Ps݊*A cZN"5oyRƷpӆf>3O"W&7m'u(DnAvcJTC 0 ^*Pl7 *G8 T⥞jwtf@ )^?1j‰]0cZҭm,, <_jx {1ֱwWPx`Uv{M4J\tYqn@ ؍J%pZ=X2lkb@zj[N€PU@yJ%*92W\njώ8{[T< u'tv3xbiLZ++n hGq&2tY׋ Hmbrm ?& ҖrqZu D}g@NOIqy,-m 3LaN;#uQ279S,+4 si\G"2"3 GͮUXL2)HgHC~c6GȖr-n3:lW~i[A. };:껇4i5K@g[diߛtW.|$ X^d :SVr ɤV wA*Gl?_%RbIEs8jlZ%B6ksZ~eN)njDi,`s:K$ Ũm cz{Gn_Ad#Mwѭ&RnXjjwBm=8YHvʷʼӝ=bpުk@s 8/k 3X B8M xA:Oݿ"֌M^!!Rߺchee,VNl, |"qtYUhה݉o"'0ㆢ ٹ|kJYwcIɪ*\ت) 麔D4: T W8ah>?L(GE}grP/n֙\}q%a~tz 88%}+[J9|bh}ڨy.ͥuj- `JZqvnMEΪ6}[_ w@ _996]vq7SL]Δ.P@PGTGTm@C,%N0&ԧLT/@Nɟ~=jt Ϥ{B.G8MZsn:8JYAyɕCY}.j*WOmijwl"ҏTիK.AdioIE%CRlm܎>({x"m?kW#~`Rұ0i nq3%‚1jb*GY%Ўݲ0'  [G$f"B3V.f"~1Mݢ]C SZ,)NhPFj w܇ xɱ//G͟F s 1‡5 cjIӌeKůS6EL#2cA'PQ鬣옮K놝X4}{IhV@n-YMYُ.a0 TR*]:6_ cO)OI;BtgELw\`koQf$u2 sTu@L nӣ!#]QҪK_[]{#3U{R^_V,{=[JeCƈQ@Biyd5}KkaM!9Q;_^lb64bd\exlFppG8p݀s+'D&,Hf"ȑm 5M+ 4vH}j?5?1I)Umobd 'U7 cX ?L'.'.+,iX/}֓I0nJ|)WB6f鐿H$0iyk:wU6рMR`YR 'XSpjn▘=IP:Ev?4(2NK/Fk Gl{ۛ6%9[1/˚;yVwQ{˽c}A[GC^b &Sx;r*Od(. k\b.bKo7E([Slư)5$O^q8@Ç79(|gRL0E`VUDiGLH9e4BO?RcCmVLcb_qs9@|0fKtpoJ׭@`2]Dp?JOvӭEXcV&mw#ӵ94(YJ%lWDۦ  4y^ n<^Lq*-NWNG2!0"nX˫@'+WQ&189\%"^{r{bnKD>s1OwA9SfVzjDt-=Y(I8M* o#q5_w֑'U&Zbm Xa:2Nl+/HaHQ>SX+}oLo%yJh©ul7tT!_a )>wʇ4{^';Έ9 Pڋ+jvtz#=oQk9L1dSt%B}|dׄU1^|Q<@%S4Hm!l%MzeC86.~MQY,BԲgRc}BJC(2lP@51Ɲr=YFO,)Ʃfe=cyj#kGu* ; ?(ugƧQk3(t)lRyY&>Z^sK+P ݳdAȇs+~{rSu}~딊*:ڨ/lfח@! %h{٬(gXz},9!6&>CRb&tvX f ʿn*j>$*Jl?( _!xt1L k4;V 5HT%=&ň4$8!ʅz$;;D.0\ R}n Dq|aX1D;Z_!8wC1{Ebwٲ0&nT"r^߹-]3R85>m<0͔87(moU B̥K q C ihΨm&n : N0Mѧ62}=c mؿWmSTecZUeL,E '2bdK*٫M>+1 7 팖Y Q(P-E+r$.Ia~ZnF NABSDPH u3E {4T 'ޕ0+tޫА5׺Ȩz 1] xGQO]NXJ`#[9>I aad$6 4fDSTF}MlƬ̥ؤQ&IjҚ p׻J虡|PnvO@o#RBJ1@0et~Ϙ)ŖIU/} ډ~$:U餠McŽbd aeV5?W1n"x6B D]oz}v^1c i$!oWS$ڞS;E݄+1ؙ]TSt6R48|;籇sB F%́"Tb!iݦx44 b4@sT"&<߲voe*ΧjpS..ԻW YIT+~|@g&$OCOH=0)V5go;9Ȭ2BXnemN[{iĝF"zҶAO:#*ú V6}O‡ #Ȕ6; 7fDJ(p6UE|Y(adkkgwn&'"> d6TPTvFg-8iM7|phؼ5ܡӆPU?H;_R%R=Q7{*Co'KEVm*T KhN} EONk" mzQ~N175pҳ 3#?TVBsns>.#1htV\%A)PYm7|p2g~5CVu(QғgA"jyjjaԽ;k~`0;!jچ1+Hأ56O 03 Pf@sbD=ͣ->VL7L= `1#Xr)~'pR~j nAkNbc+>tdd'Կzc[LvB )!lwiP ĩ K1cIw.kdA2]%۹JD7pHVS1E Ywx K'K&XC?,d&8|Mp]P:eecTy"^<6|BM"װwpI5 9)\^!W3H贬l 7C^ ܷo e0|1O>.RgZEBJnKP3|Cj:gډ5!8Rţ(HﮈEx5REIHFXQYׯ@^!^g/Kq EKlρՄ`Ƃ?fwa ݲA7%5BU)P>~?<}-rD\E^r[_Zܥ0'}9"wVH] 5tͺv_2Y9Vqj;%p;k@M1EdTՇ{4A.-:P"2Zhں}nROS~0%s;!,DL oH˾gP$ӭT\<|#rh-Ku"<Vy""p `ܴpV:!c?`jeJ}8FD,a[Pd+`q`g6tB=ь_*Xc:.60tmf;Pr\ObMٝ}'MC@jlEJ Tejr"b8;({[0@ǙP:\Ͽ;_ä[¾%1eP*rT- _2R"]4~!HÆ)kPc_9ooȴ75x] Dd]sK s#cal*|x]׫Tph Z쩓 ƦKWO%̊H1ne|Cr4⣌ ; ²^ߣǬF%1w ]^]g7v/)..6N恚*mw+v{/ڹ8i:*:sZ ph wiW5wEؑ:U*[[++"^+r o_@o+2(tL:I8v+KtI3;:&t-]%ǀHgZ>2ߵpfb:<`0Ij#} Hxw)L,.g*{/ 6y(4R SCFDz4+xr]p,c|OlYa'HtW77w7 2g6ߍᛯ2ٕ652lS?8\#9_@dpl>^k$/^@n=#F3ȡpqUVɠ%񻰮{iL^>HCݤ wC1C Y#CisLl66%1ېqh˙u[Q;kgDk RlJ,pA2^R 0XG{c+Lp~4t:%'?R{Edm,ᰏ{谯Jc9GgZ\n@$nէ(!]k)!$N!b (*א?Q"8lU[b{|\ۛ ,Fjir!XG(c+E5%.Am%c?oNZ tqdH J5 ]KӹzCbuhAf,Agߑ6KvvYǺ^Ή/>eT|s^I% G+zBnۓ_tj]R4L\TJR%=k?bgr/fű7AT>yiiqSS*Dc8\ DVG l%N3E/Z}4ɨX6kHlRX*l-4m!Y" -./ H )0p x `(0za>i kN# d#h9BĊDP)lVgEݔ/fm8x()Y1O Pt C?obPwL0 H{o#^MR|CXd:dfGm2h`fU9wlFIja3K{J̊ ZjX0U%TMQk0X{a퇋^$5T^7ty?a+?J~aZ{ <&ďMue8ub"*9U@,JBqdW:mn?R5C;iLVܪW#JQn09u(ږ$K>H*qlBKFjJѡ~%>U=~ug͞9]gw'I&NȼwiX( :?n ) 3nЃ-^8X:j7 A͛ =,h/'g, #Pu B_" #/JRlVnEB?d@Uߝ;)Hm>c3#@nPV eDI0)( bH)~U6 ?V(9IJw S)_mա/]& }=܏l J.`rRE9-dढ]i:v1+K*Tp`g.g.2Yi)d |7`%+M_[d fsS)Ey=UK8мT3T8wu~@S1J_є)ԻP)EYRF°傘ǫ3(Eq6fLv ZXJ>V59V |8>.$v)+kA<)WF'x& PG W8y֥v"E]es go0Q(cA\$K`Cn(jX5soW]͆i7Lo --U7zM EUb+B/:G$ 0w41¹.Ɉm]d'cc՛q5('Z&tk2E74 7fvn مc5&$X9Bv;/,^(09lI=R栀$Rk-#`5wvlz&vO'Un%}kk@ &skot|?ab) xSAP!Җ@Mw:dsQGgS|t4 l_ӳ15aQ)B+lg\7w-'Z+! J ic7>.) K IK0Mgq9悋[c*, QgV*K(^ L|ͻEh׽ szhZ[23=U&]#^BfDtP5ӐZqœeZO^5cL0/cTR Jr._\~&HM}T#'r'JbIm3;"\۝*K%"7~dqtcG>2'&9%!.̠v}2.+A ͝da~*wf {*=DV%L҆NCg)88+i{eoyJfgї (E}! 9 ~1WZ[~{XP)`<]\ukdeU4Bn NfYYd|>HfsXq0 UKI+#^_([mU&-{ iW\íB{?UZ6RDcO}4ځc0z+$K6'ZSr"!Ņz9Jm{GmE8 7G>s5yjPNČگn0;ʧĻ ٢U Ӕ|3cO4hG(Z[p k23P6zKBX \5 cCzӑ#pb9Mc 6ŏ1a #eJYrmYY8 =XWq(G8] Tufsa30:o wl;8e~2~H 5?66嗍;:0p<.̱`:fjM UTD&>m !ԋyHBaD3u[Ԣ>5]Uܑ]wlkO Ë[ɋON }-nٷ̆;\m oqaCӂݦݗ.Pr/9BX&|ӑBv{ K9@K 5NG;xjl͚yBaHTDBI m ,[ǨಆNAJ#lcaRbPT<Qf/F1/gZ3@L<':Ti筟.R"=HM\ۏ84/- C-lxrm?E? }O_x}evBh*p-~='Y:*(1oEz+.e}P]:W{v9:6HȮA6mԘ}a׌)&``-+xw3l]~ɬiS %1ɶQaSgtH3k%ʌ XYɯ@nJm^lBVeB/ ^TdUcU8W٘Em"3>S}!Z9 }]Y3;Ծa898dnKJN[>J⌀M.ILaTnӣ>j"X):LF~`h%V);$Kg s`k'Z`|L4;!!H:rĊ` }$Qxk‰,|59(\{wz2A#6Yņc'W[1¦졽̯Uk'ћʲ\2yD5gU}S7:KdЩs?&Mr{f\e輻ec; wU}H+øP joFl~;! ~g)-?PT&0~'-#hF:6-\Yp$yVyr-]ov=;/O#Q2Io"-6yOݱ;z .[]Xh#OQW_V8qrB>8Q$F;ø`5 l.bZL~1^Y4l-G6pf!ā:~ԭ?QCԞD0rj,oJ)& %8RRͲSgT V|!b J5+ ysB}NO=7fBңs%0{VvhM/r-r:]>Protzi2/wDN1] 5)j f=]EF8FBдΗ ؔ2}*OjSqﱛ*uxrQbzϩrB5-; būMn*9T& L-~0|A -{3w}vs/|ePFޕ'ksL$W*SZF^[hf}''}\NF*txg.+A6 hS˙+Z~[y?:QyDqҎH^C j32P^6oL*k7ߥ2t;Tw]xhSevV;:?JۄTK[ R;9Ϛ;.UxaXn=/|Cg$ -VPݫgl2W`"/euҚ2Ҭ.]>7j)! 9o2֍A (uoɁ8cqR.(=CE]*c a *n<| V 5g93ӎnx-AlkiR<"R1y}@YꜦgMhW'T} ;a Y'.A6PUz_f;rޤՙ=W^4<.)<Шi8wCۍ<S,u.ŤY`.M0NSS,P:1͒stK?%ұutm<6O7%\倧f=c~M*֬\Lh{S4F4@7T7z>Qb}p!nULsHuƹ#$<9 Go=l)O{9b||bPPX`7= ٳڵ6\}Zw)l&u5z47( JM 1yiTJH9ι_P4lѱ M[:u: Ǹ\p7Oz#ԸvNʝs3}OuЎ!fo~UP-iAOtyC]Cx1f[ h̑g[F(ҭl"D=Mi7T8ʱRk i\C53%6Nm$ +X7}P3;†CDpJqz1KVk:+7a:ԡ2P dmlv$s(-XXjxNW^B :H+ 5orYX)+ SgW "\ʃA>hsw"Ã/8oW5R?jJ(N*K\ABoPu];e0bYxZkH5G8_ OPuJ{ݪk}Ҳ T1?gp)#ӬQ bU+dnbMac 'x+t'n{½T Z=$NB۟Hza{:)^ijsOh=oÓJ ͟P.I*fblm&7@:ŝrJ'9wpbU:s. /Ʒn|4pfGz߂iѫMtH-墛V=Dg|jWr>lC=JL$QA)euCǖ셡wFh(#Yb0:j'}=)4pZv4`pOGld5D˵ªb^ĠԬ.(G")!k=2N`&ytR#H%)BgL>LK&ht !_n$J %ٷlIл&yTޤiHV8K }2T ;xEQ ׬[Ti#Gu͏o`(P(T &O(_ AhpLO]xb[/q_ʮVP+ ﺊ%MV7<ɼ7fab_/&-Ypՙ\$;^&5:y|M{w) ]\Exgo}`[K2ƛSyU5?8} gG=:" WWOI-y%4`-O66P'2Z;o}Y[%mt%3tUR"8Jy<\" g Œ'#-x0S*Ͷu/r(j n,s [pfQZ04f"9FW >^#Rj^ej \Ejj"l?#}`W u{4߫yܳ4K> d MڊQN@\psh1w'ItBiCph\0[֔\$'RITLTkvڶb!$z;xKf $S}gu(YC ̪poF8̇|$;-Ƌ7[Wu3_䩱\7mO*:z V; Nl*ڐ Dn+q "gvp1k4ooBë_xvMRI\+H/3PʡqaM"[Ş)}1Kʎ`[z4(jmhC+QI)5"ڐJ{'ј Rբ9e:bЊ'DLvqZ×6c>~VHǴŻMp+mV4PanR"yA&aCNac L1 '#(3韒a9[UXW"sѸNVS,˾1&eˬߺ+@-?X"=ؿNR}ݙԝ@IpH'xʇ~wb Il&APK/0QQ4%vVr)Q^{%_rCh ȵ%Dz urGkw4E%Cr6c6CteM/EQ[TD6UY.lCUܽkyHemD[?ZǥH|%JU3Sk~UYޚ _D2OSQh׌8&W‰XJ8-Ʈ07i[w2{o#TlL$j&B/ .moSO.o'+6 @f.+]W~.:AJw5-ȱrF::Dzٴlxp)kj?!1Y*na}Uon }5X=#%~q@ާSLlo![ qubN6twmz8ˍ*b OwGݦ + 6k]PhxԞ5~|`cxun61310S詅e4?_3KN_AHq\LmLn-3' 7k\J9&%D SKg7RwS,z%GXIۭ麎P兿dH,VnW,@}G6nϡa)R_D=Hĥ|Y.⇺ObFeTR1VlgG/YBi@:>_u |Zv2\z v^/0#44yMp(W1U\PbYUn<ȆgcxY L>af~`ڢ"n6bJY``L1߃ǚ{OrS8RQ4l='E hzX`2k6Jdq= 5A۔jAutfÂ>b|~+и7A$fW<]慼,3DtGNO3Zsjs'^pݪ̀B \&Nw.VS:ͯ1!k7GvB@d5V`t1+pK̜lQ # yQ)pᯪ.y#ٻm<O Tx{.3Yh/CCSĖ]gY@# 0]OnxHH_7 ~2|CQ%l,`ն%q5r e R~VHcic+ԯrbH ‚V~k c,)Fpw>>-1V'[]_LiR}?.z]XtIʥ#@AltQMHc&t-1(U+FIt8@O4jO! (55*$AjmpEE-b:siF7*tދ)Mo;=Є/2u 3G2 @BffS,Kq;m2]QN4xlV_u򆉶E7;@ s7w@DY6ңw|87Y![ 58cG iLg6U ݵ8 ¯-SjE:j'Hw jB3\5ٳ`I@#*}ݰKƳԙ΃Sc!']vMnHBn슆 DR\RPGKYvȳ+nb+AG܊Rmu^ zir A. \ p\WReNBjq:U|) RŽAZ@Ėu&KؓAt(xM)T@FSJ`r<FtW)B,lAs#4 };IFXe|A<U'{d4/ĦL)p3}$,'♓g4P[K]Sp QgJi(2~6kۃ;5v<(6 ;f'٨[!JEb$AG>5$t5z?X}ߞw&B[ Bxdk1e0 sR m:r3U3:u[(;ƕvLᅬ/z)3t1,r&> 3 ك%c奐4ug,"YIH؁ R,X-?{?C^V/~<~&@^?<i<Rӥc;&olpfsgaZ Rv;w_GG?asMیN՝*XJ<$$x Ho5i s:;[Y 5-MxL@sra\]Q6僒6F4C֑yU\lYvVʗV{bN0\pk B zyk<Ӿ *pbkX`kNN9tN{%s>CQ<hc;8ldzNT0T`L|\vɳ,Ưlޚs`4gzفv*ϛ=K2yR?Ij/-.W61,{n.kGn<2uoL-eD=(CNtPKsߍn/%ZBiF7i8CNV_ІG)rS3 ,wț ':|<뛆jh6վC`9}\u*t(El@Ƽ-IA>΀*ƞ:Ymꓛ̭?4#\XY}5< , _)Eix 麂L`6'V@DsR' LS+S-Yp'Oii9͔8lֶT\$_‹dZb s_!:i2D7S.aܥ:4".ݷoEAkE_ RŊx\A|'؃ 99lТVwrlHEƧ1ÀLⳊ{p~!lfTxPc'Kr01=+4߉VS |$z JQu'r @"R$u+S;&=g6 r(ݜz`X7<#KOizw}wVqX۴WIWSӷX`֝g@ .Kͅke')fJ ٟL}GArԧcD!b7`b_'#ըp:$̈^5YDFq%w>u;`z )Y+tǢƴ>m5wRMԑv.P^/)VMu[/o|cm 5$7-Z/*Uto#TDrz8k#1%A5z$M8[K G#½uqܩ l-6/*罷E<@k)&"0Ed*(u[w<n0a.v.j /{g!M@`)D4h0- hs-KkV|rFCfWBX82#: TVC]DGkvdQ tS=G!13j>"%`mzBrJ.\l 2jc/7ZqӲȐ,Iݎ=3Rd8rn ;[pt/M%EKR- s$}OkWd _K7 +Zig܌cC@iQ.Õ`3Zڜ?lʑg"-,g͜ TNALխHVIĒA(/o)-+2%]#0 XKi)GHdxhװW]Ō\ Foiu柩,QwcQPx\_\~Eފ:2iXO 22=0w\j<w5OڄI^%.<~d{# hJI#6.iVBrx!~ıfms8FJm3r68u=#~VFK,v }[fET'p#YUP'gbuZJ +ȍm9#iS7̺P4ҿ:qDH/sJ@FV4ݓ2agQ@nxbq]O+4$TG6XI.q D.BcRBDmLNmHz8jIk~?ve.$Uxd%8z:`Iߠ)d 7rqҩ'P3upCUxz-i$Rz 9"%>Tӝ%,˓uvhpo 3LA @@' <@'$X?iM[#Sӵ=xx Zjs._A(;7eWBg]1E֓J:ӕ@[R:Kfz QWNZ7')ixRhg7x]g/Emy#Yi TSyxຜVU.A4H2D_Q=Q<%q943~ñ8N:sPV[{11ߺi +zZҝIs_A8 vf.pzduO۠: zufw =ˆ]pf}9*u :A Co

    5 LȝRmV-y,L5+ؤX9j]jQtWV'J:U5/Mx/<:\zu6YR 92T9X߇:¼Lhӓ@f e;(X{} m}uw%/h蚿>z N۴0r|h&WϲAYa@4w)Ak\c4|tBPfu;͵GX 7!%QY97ztCnq_O01>BxYِV+M&uu)DeI4/xũϡ8UC Ś>Y:w;n0ꄼE Q VuJ!r-+KkKЂŏF|#ˆ*P?!]=\;*+YKVpnhv-ߴx ;}[~H;vPs%5|/D%d3u;ke90dw͙Y޻q4%oa G@dM-AĬ ?O%S"O JnCwQ`}}oA7ijՂǟ#Y(Ljf4T +*d">a MvPƴi֓a[mҹHqœꔣie $be̬(DΰU:WiVwJ2 eH[X`vq} ~>1 nid$c>I궐4k,F (6Zly#fL%c>f\BcȄXpOO|ID##|+VE-:jqBxvtwvig"TƇ~X`+ON}#ϜG ZA}U{ZC~qjI0v`1g]p;@RkS?%qͻQ{T0KoD|9YFNAOuwAX !rpg'B&p,4Sd~W%š>s,> $VGĶ}d大76p1SHQ2Pǟ,$IbECbT.}`Pl,HǽwaU^tGOaK^,d^N7=\Tbk󅣥mscE5ph\=rݥwB0&OL sʲzz ,c9_$v.*S̜&VYv6xVqCCc`x;0k%=1)4+5)VkBLG@0^0Wv?S DAbI4L/ُ}VA~#4ֺteN*UgTgb:x6bT48VX 8)9׫BU-[0X 0BX#v0iHwZh`%=@DŽ+I_6|c8[ 3u14'O#0;d;B䒗T+ê`x*sd̦7t?ĉJ-f w] ])} 4{{n ZA̲u~qnwцxW'3Y@l6NK#;!+^u"T96r4Pi,Sz޼4SC񺖉xlbuHY̔qJ>qpP7.=Όӎ{!"Rr6jCRWn[4z}=L]o_#P2_\?IuGg{L})~%3=+ᕑKTf<$2_װWo MPtH Ez8TJUHwSH6@}1q\y} ~xI(lUR V>st@@ Ƕё!-1L,G4o7E%8״Nnh/R_ -hbPc iMҲaWB<R pR<)L$+2d-[Ie6GK^8Su87uGθS(! |Bb^^=uy=cBb&Z 'eH%wbi0~8eS $6yvޛaxv=P6!uvPjTJߝs CNܒw]>8>f5D,ӹjhP(A Uwʰe0tAc># Vh)S'fz^ S[p?z+EN]E.j"C&`fb?$ lWlt=6~4$~w"9ĊRh` ~^W uu{_n.Xs~&0}| G(;$nIG릂&"࿍wƾŲGGx;v"zJAd,M]'Vc)-/XkۃݝO#1 8hkN.$ ٳ$ ?=,;g zLQ¹|?WEJrup5L@XĊ/mhoso2Dx֊R980~̑'&[P)AWJcd@{X2ut y&,>׊͠~G8ԠkҭrkeT.dV|> fDpQ֛2{k(쥤@[Ԟ`?SAe^7AnGNLw|Ʃ1+>0{JP[]-`N=Z u?{w#00Dꄋ '6hPsuT+bdw<-^շ5, w'U?n^`-$[٧a~,q m?_Q}#Kyho-Fأoun>zH+"X:v+bbJ@(l[ac-`XPYeN'"dX3CZ8I3~E7*Uᬑ9Pa{κnBQj~}YdQsV[GM%HӡVG g|?FB^"zhd RgG1!]QYY.XL؆CZ9)|$GV4^)@Vћeex;`CNkrC "X+sx3eqNX30_0}_>@ŋa IM-ʘqR t. *̠'^C."w `Cu ,0CN23ncmEyx_3#s%  5fҦGϕjl3@? BLILFICF2&DZ^ d9 b 8%/PnryW\.M_S11Si5Rݭ'f6?Sj? ZHg`7MKۡ)ť]|uWr6u,5Zկ978dUM_eI:Gq#OM-=,+Qe/mBLw5Bz]%:A/:Pgv勰z5ŌA*Ι"Y%~@ &NKoY P؝@TSSvRF.qir*cjL+ ~ %ai 5Uut(2aZ&⯂_ F81aCk ?=66x6|Rx$ JiQjŀe%!~YA7qpk 0"{^oڂ2bJ*~Adut" PN N~9 yOX;yuCzi O]a[zE8 tS4QzIuƸp!"5jZRt7#x;Ǧ S!faK! \O76/kxZ`  O}I 0>Ջ=LW r|-8 49ςE=U rDzinĽΐ[MmJy3\U2J?X=}3"PR8d9 `V癃]_>E|9#RP8p= g >>F_LLXK} M7E^u!P&Z "ëXt hL'ʘS/E`y̠C㔚 Yxɧ4̨ 4ytitvw9)^Ɓ"ެme4j!"xmи`(.ao*يoIFPd,^H600!ߜu]ݛm/O`BqmL\D1Qa7N=>U}_:Ze ^tչkjagOPVͻr@G#B yN nd)aƙ:uPQs$͉:7[YT˪ @{37BL>|ڇfsSPiۛ'.'bJt̏*U2{\ i(%s6IP ]0#r8?F4$ 3φ{Ԥ>'Q56S>k+^#ܳg iWl+ J!w;0{Rimb d:h9+Ny`٭^U⟜JNcJH7nՏX %o-!mP9#Up}#V ,T3wTD<\ow8d B0 vlǑEafMU_MހrвE68oʫ.LFyK|D{{X12!IY,k;:R*>D RtW,խi=|{@È=)~}eÄ)vG3qkZ3ikb .)୔?K>J$äpɘO}Hբ4`鼿rE7K] 0kc,6D *cj3 {TPU !ŧn5k,'{`!ιJ~g ')/=go*T0LJ.&W!rb&S+<loI]" kӾK::Jmz } ÏX%@\T>1`B]AଜGnؓXNU 8[RykBb)>q>~AԡG&}%<'}3h㬿qqOꯪ9vqFlSgǞɳ< mg~p\dz2s4Tļo#ye[Z535عoi*^afV[ !U xS6Iyw7!|PIw ;pޡh7&+Iԕn3X{,_rZ~hעS`MߏlxB;vbt4GjL kr<Φ9of}6ń Tc1<TaշG¸g "yxA{Lle9Jlq ziEn.:gܘF#-K|(E(~D͋?č:l . "Lyp5]R%:`9u~I3%6_o4IJӝ?Ӻ:zIh2Mmm8B<̤K( KJ/a}R6h^(R>❪;`+GE _k.B/x<)~M]TӮiz\IJt,e QuvNagZ q犬 OI4ٞ&<ҵFg!kiNn?= l9;ad(e^Isfw)&e<~*'\宠< 2Ôڇ u\6F7Ho i\t<)K>(mHOCuu;|ޗ|Xf=GAT;t\2$Ftx-H\T!]Z.sQcl0\2<o8^ܙw25soyFs?C:gDŽNYZNdA)1S_-L7StR|WZ&a>Ni+4gVΨ}2IS0хF*F:%3%FbGPTM_g ("jձP:4"3$"-Ʊ~y+:xW@PIbQA\71k5P՟>!+#Z^?rQ;ґ [S%}υjTV_GZHg/Y.=ƴm>͇+G圊WS=fV7X_# oO8lJ$}1|(]3A1NߐZ?V ǀ/.0~E: xv,[!!`D7SMĀ$ $=+,}g*-ӫPrj+S'*~m arqpjj\ )~ ŴgSNm!"N ]蠛8q9[:ն/NlC18{Ffկ=p7v!k0/b(FDL==;sY|Os;3VÊ6\2LA2X(~v~)ku-Ac:Y Q2 Ф$A#`pc"SC1V3;w7U&]?(2*t]zk_Y|n_-%Po[}!S\xDw$?r{zN .osZBԛ3FLp+S=[ [Zzi#d~I| Lm 45uU3y<:3ܣ {q=5&XHTOIeF '8V i3r/ͥݴ!@6v}poofo).eWaILl/2+IROt,x>--Кˎ"rò˧VzV'tmKԌz%@ /Yٶu{hӟd_H+}˦ib74WP-+Δ˜S'&V *ԒSέTd{yžYgų-gJYz7R#=?@4-[ʻ} `@m2Q/LoZE"7S+!t:w߼ c,|ԧ~[B%0RI-3nG߂n-iP.z吢˽1񭟼XύRܸUڱt.pFY4l!}[H7Uq*9t[[`|uGQYhO8s= o&;,O Boʴ.fˁE\6|M:z]ohxB׮6z/) fOF6kմcptKPF >'tjW{<;ՕI:VI~$ iH<̑SM`R>$uI_ v9mXW}.{V>ӫ˖o62vMvh o*Od׼aR1m.Ȼ] 't?Ѣ ɦw p]z"nAL1SN$QmCI[;[A-Bh[E0/ QCp@wWxSJl&@1 O dV:3# y5`ȉl%7QU؞vM`:)mY:V1*Hqg\ӭ-JĘ؄u_6]NC($5Qr1fJZ B]-OV ]u5_9 bO)L#.j|I zjٰ l"`b?Ɯ0!Q0 ;,Uٝ;TS(+ʝ4C*L7ј>O彃^6ykmR'bfhx|(i"JSyʤڹV7U">pyaQT9ܼ>+t?yEΌ 7>a{A\sD3KVsC(봭/v^,ÌqF0I0a߸WS%eTA3%k,j9sژ`ODmiTK&SE]>ٰ[ɫ0.> HIhڌ%On?Z2 Xy`輪%90.=1m[Ji2#,Rp/ :KH})m,YaW0RgRt^98\ ~ĕj)VL7WѺ'BN-Xi?#\ʞ wb'_7Ň.ʡd`<`i.ʟRYcJS~ i|,wf"(jd5Z-0xdle-< ޑ"$tWDJ]+ 2?lS#Υv|,:\; EhF=/-)re q ɵ^"IVg52B UꟘr ۴_a dyȞn+)Q`s}uzEboY0VA6BIWS3u4-W60ʘ~c^CR9W#TB,KS"cʜ:lQeQ)3# x"0 GSZ߅AsClӪ+52eZebotn>{{Cv+-ɱ~˄l(+RE'nDn133Onk_\+nETmxl9ݍxyU ?Kd՘_:*OwqczA5aLJ|)/>vgay_ ޳^ځG=ث/B{uF{Q|A|ZO}Y/-AٍQiFӅZ7c )D)ޑ}GܬknLSC&#fCP>B#̥y')SŌ3 *MNRVrCZ0jNts7}k*N6Oyf7 YK) gX_m٢8e}q&^^ON^܌t"עM޼숖$4A_?e<ADNݒ> T&O'hT 2*J'qPϤHC|1KX=/_il">_FKVaq9"Չ4 o߷ס k?m"nJr̅U4PXׇfZ휕Pe3G|جۑk Y% }4v2rЭ#Nzf:vbZg. QTǾL )ݠ#rMArGKM_yژ(mP,AVXXW 1f Ro0Cax4͂ϬGN /]i_thTS/ dqQ/%pr]w< yH3`553F͆覜rӦ}!yb}jyL F&P'Yz6KoDk+<9/TQ2e?FLD\-+W&c-63IR#.%,Wt3=>i<]|CZr"iнOT2oigSJ ?#h9OC?cٯ568'2wE˅,vsȯ}kcq&{R CG-ȼI e[B,IOߥ +i2π~!H|ۻ&WWf%BMzsHhgxZ=l4C&L$eW–ʞ Bw=Áʾ3'_5qÞ$pWot³gonvULhZ"_\(tf=1Iwџ`bӋ )JYQ&/fo*2}O[Éj_Pշ<޳P1Eɦ3@17f 2I*/Y= ѿ. f>e_awq>&/0u=Qg,yQ3AGyO.lwҪK(0I ]oZ7NP>[ ^.ւR~̌U1sh=b;NTmV$#N %qAN9Ai VVvE!Ӛ \jAZ.-J;peщYi@\KVE< mrkfu6BW"P[`c*7>f!yؐfe"!q-;!CxFB?hs";J6z(nwlapS~>4֘Ppd[HƘ(/Yn>z5\ & Th0֡4-^˳7 ŧ7B{N!S|Z9z 3^;1b{s>ΐ0vܐHs j={cD 8´HH)œ83`b;敝W z/NCv;iӖɘ=Sj-U]`{`]c&{!TQc_ 2v)2!ƣZzFw xcwOEb f\.jCl^șb1-$!s_QuGn2auI92of@2\u b[\DUJg0u& ǚwJmGs+;xK,tG =}p(5T W%5Ɠqw&j S@_Ӂ=΋ك)$`o H/WнҐ+4_^lr0v`It?ikE 쾟&hXP؆A +q==jRxxwąԭ?ڮ$\ocs-5B[WWܱGC}LtB֛)ܠjcQ Ĵ6}%iaD7SuN6%hҚĢO#nvB*(FڦO"p 9u1OuKVuT-Vc9o :`+q3J/m:XŚ_1kQvh6|mOA࿷)4fKnrڿֹ 6^]߸ .V+vHęWvDVk}.;Ͳ0P:5^W5hb{DxXoZ]bKn"XfEzploc{IqɻPR0ԑHU QM)a h&F[Wkgj VMӫH _)_F ;6ڒ s86scʤT=G3Vn|IbPsVY($6üL+̷9Cjfy.(HĞq2`MlIiǬPn:ּ$uyaF9@/;6k =%Nm4gRj0UYSerR|5CS* a cTڰ66hOs!'$Uekփ"|͂R}jᄼB ʜIx7$#7(k+|hYC2^? ):1][:W@ 9@t&q<Rʹ,&`CE,nGBCwGaűkN86ѵz"{(7 7{M owQgpx]DZ/9`lX\~;B;",8q~@x<= Z(Yo҇7p, _kä5<2ϷRY&Gғ5R7LvV}i53 iLWD~B"_H mb(f\ne<^bPeu M.#՝c^4{}s7$M$Q*o e&Q/f<&=Q7ANJQlt352p /*RSiã'odÒ^).ZmfW']4/wL5ޫmH|]lܘh`" &'ƪ[w C] sWI蕺DYX:8c^>ۿ{I gPHW2#|hn {Qod߯A5.y U 6g]k4lFԕH3ner6o#6O,zo@Ko#V@7N-L< D~޺zQbRP1/[q!s\H}jS,Lyt0y{1ppdzP H{xxBvXϡ >`8K?=r4DL*aSKuܰ~ENgX#S~ f3rfhw #bݟ޷$ ,A1 ]&2|[?5',|9lj_ms-wK DXn;v 5E3_33//By ΃'fc'̺@/OZy(6JI3(Sq9>Ok踓R /Ck~N򂣈c w{s_S6nKPZn(Gǩ x b@,do"%c "썧wYPAx)YRQ.)[U?xZ -P%N_QPbpl]81Xj+ ;g$vIj-xlk֟8.wՆu$׉bhӥDkzp 'Qi0y<' cMы'K oE)dZAoqP$uS55>\QG>dA*[]:QqZ{VHk*?ͿfDY͜NJ ؅vTl?J| j} FMoD.Cת$A^W&<%4ze; y9o[v'Sz.>n>wB/T8 vjX@3f|ym9y?]M)1[EIx9 H~wimhߤYxtP ԃǕ1dRϷas+1ټ+ab{K4L41NLO_J(_,| d[.3t~K*2̈́"NJBRwf]dk>Ԃw lW]C;1dfxn\&)p>Xs*BNFް֙tI4Uÿ6fԣP8Bᚹ]:}u"C8(jpsueAdܤwΠMC(:\$$BӭO PZ{6U0o&J䂄<+E({[ Tg 9#֚ QE!҇/G! _:ǝ2seЄ) ssoO"}RR67${7o'-ω4Π(oS;4a"t=h9Y<\C;nB+:ؼ `[ y~ۓJlj#V‰MI+L2ܹaɄ{eOt;d B@臏_+8Jthte"{lNElP#?SѶ34{ڲuעeh]ۤZqyXj"xz) )@zMb_e·|*3|9'(z|%D%5 -fpjgdFR 9dsrE픩Lм.FA @HXF$MY"/zitB-W!ġUydG; Hʣ%\uc:$m][ Lwr FoK ͋g.oDx03[r:OD JAs4bM9+w.E:2Phd9,KmMA9զe2ys4t3%_\ fLP3渃 #H &c5fM_Bc>en#0Fc qz3-3JnXbZr-ċ5W.[ 4 h5zY-]+J[~5a؆5 ať `dI֐vyQ>:D@etcQd?dmx*URDnL5Q.TY!yl,|e!mHx0}p5Zqpfz>Or |5 meVO!qNq}z=Nay lqC91@lP8B3 ȹ! *ȟSj*0shc|D76$?_)!O(3 hgqӻW3F5V UX Ԛ04xP_)M&$yrsjArx[-AQ6 ޕ(sI|0r8Y%Ƹ+cOǹR뿃gSNO#'"@n9{Db=DŽn$ΫIu., u+`Hnz ŀ\{1xܰk)35+Ƈ(IKzhQLU]?\a,e@e *#7jWp ź'=}U\(?T!1%dN"_drds>皚OB+@6ڳch},K;/J^t'YP2֜.#IjfWp^&@KAL]]]DWjdml:i,\졘HR2=p ,1&fUHhH@;Q~ EF8[B)fIU12=vDG :AT FQ} OJ=e5<4$1n+ 㿯ğx-\)6olrέϐNQC[~0 ~mž,mզ}Uh*p^Võ~垭|.E}k(IWl /Դ%[}aasg$U"gcnҭHdlc-&&"1'%{#vigi7摩af*SIP8z͑65]6 &BMQ\Z(Xb"^i"jW34!ёjEp2NN\*C.mE{3tQ DJHysR%dk"1#lw ;Œ&H?*MZ,;r}:]Bs$=U" ޴[&Ada)DLQeXF8(tMR:̄[v)vt卡3[#Uĥ\Q-Ӽb/BԱ9&_G <$tyt/>{'H9e;f3x̒c# ?XZs8`ĜԙoS Qk8٭ўkݵrKom5MoڜkɎ۫ZTI|&eeGAkpTZX?/+x%|m_ V'z~R|vr+|dx;iQ0|"EchB* RU5c$M 8ei76 c^W!oB;JPI/> 3p:Mq7]R$h?W3Ƕ?(CfgeV֋$RO9_V_yG3lPA=\t)(hN36/06EҤ=;3FϿ/|'٬w/aO .nΕsCDC'R!pcՂފx6Șdw"ژ*78X5q L\n8C6&89x) yJu[ɶuxy|0|鯧!+'gTB(.4?UEpu!ZeϽ L-? Q+4p?EFغR|2^Q2KRP@{b4&[;anBUFX|9Q Q 9!KOw,O?V虭T#<wE!w95@a@RͦJ&."[Bv2DiլogBOup¦rvc4njȪnyn5Wџ% }# *Upj\2m8q#nu!V~enÙ]3Zօgk o/v(e8MlxvA =(qjAqMGwȴʅg*MqWli)%u|oIiMh:c0Um= bh Yr_zŻӇaqZp@eb/ l_1+vW𳁊f9K^+*h\|;2s9\g>l52Է$`K-s;lpW塚fwܩ p*AwFAtZn?q(l%Oeaciz9v61 nfўs]nV U[nnTvW p!ӅrݽUFmE!CچLC*_Tn;HȽrOOŔYCq; `6;α=ot嚐81xn."'XL uɼ0>kgÀ@\EO/=~sUC3Aa{v޸9qeɜV8ݕV]"ku~l R"51:LN fQ_9H7iu|:ⳄP(c؇e#&Hk-}sNr&;=_bſ3w 4W*݂-yм`I`ʵ!J)M~$G8&QVl?'>/6'|p[5ɖ0EJX e@뱒{כ$9֮M4;NUprkT? ]Q&܇$;yQ"{ ?F`]9l$ЕQ˞xzu2ld0oMTvA-PŐu=־j  WA7ɹ>V`J z7xhV`q3 S- kkt}rGpl1>@?ҍ.X(mH+ |ND>OD#_{=?)7Siyv.웸&kWSv:/3X[^iE| sKC C ”…gٔ> veq=ÐJ@^-9ymo$W` 10@4j]VtW(.%#f0oFC4: Hl@hױW]ò?H-RIS9'v9EyrF{T1^|f$dB[>Rysc7E3D 5AsU]%C[@N,-v84pi\n󗒐|O N-{ˆѯ|+\H?G=6b \w \Ad]] L&9+|LzR-WPV5* YTLadJ QLc8?NV)r{)|Vu:? :ӿӼlxi>Z#呟iN %P#%(͍%BDՂACkgp_"pcg21lW x)sU,5f~Rsqa4\1^ʣhAzٍf.E#oG(ՄxM5/E]@NaEeHs(+i'ƙ[*v.'Q-u]Bв=]{ϛH IV`%igX݇Fq##-nETO2ٲ?Xz./ %=<2dx˄[(E{;׹#$'8&A:Kh2ˮH·] ܾ;X{33myHN>sGq@AUW!^~6;h8T;UA6|CS0׬!py-2S.~O71+#;3u y FD xGVaK%qN7,z5Oޡ1z D#sI31_]- +TKJ'ʸ<2md\R!}R9'oK2ЮAeYkMbH tTaz #<3Z6vzH߲'m]2nT=. DײFjctn–da@DŽWAuΊGlyh0ƻS&Ʉ*4J EԜ :GJ~$$CS / ,U6cw" mX:V^>+-qzD!3Erw Ѐ{(̐ ;y]#@Oi($gϐq#T %ض KX2h1+NZ#|,*2Ͷ:5^o{^̏z Qb?P|"YOUdU꨺퉧.ĸF5uON\:vH ߎg'[=G2ڝ3#je?~#t(W;M̺r=<^igžig6;yb!AedKE5/qlt!>N HwoZn3c.N !G̪,kSLs\GX@kT,5`$gAD$Hrc ߉F#!"8١Έbʊ2 &bs --Hc_:;=3j[A-^(s;v3XLr&nN`ԑpYMP V Ŵ~p^vW6F͢/@Ue,CDeG׀\qf3_Ϻ)jY0;w1^d.Ѩe:>{b\T2Z׫2~%R=1Jəu0S`[Rʡ!%x !iW!`Zg!iT0іP@w)S%3X6JrޞM7'_`\`SKkLNd̤U4[4oppMP̴*FՠtOv{/eR! 6^V1' iL)W?5C~2.,W0} ^Hy@?uEQyJqCI OEi0fI?͋!m[2GL4 YfC 6:{oGcN"F[dkmAKcx ^*}b]򜹕t])k0#GUP=\S"-N זlP Z&HnpɕTPH_C;۩d!jZ*Ǜu=bZbf'V h{`HD ?9̕f=FK)AkHF&~-nh)Fo_RάzUMgH̋j%Dby|wO= a/̾؝3S@ {+Z{ sXMzDݔW zc&oVgnIucr+= \[iai]$;Doڻ"@^/5wS whњ>vGj+Cn%IS>n#dt؟`5]jn}8~V C1@la9}yhbB{I@%Jmbi2G"U,Aq쬑lݕr阦0Qf 4~>]RA zkG.kxM0qY`cU *Bid6|apDf">tysE]xe%VUp#sOkHFcL[f'}âer%<ٮ|Ax_R\moþK-1;1ot&TIuVh]PZ!%}f¦LJ=8{ ablNs C4 m(zTt2_K׽NvńL abZ!Q ACw Bm I·^X$;LD/vR i/E4Fxk]l.\_-9 @mډ$K޶5T`Ѹ[ 7fHf5_-&Gs R$6Bִ@k+@bai=e^l!, 7bD'l pxMojn7B*V?`F凍ݿH s`dV 'C;eUtTsЪM†mVfIU0dLfCk3Sf?O Y#U3< * ?#PE샊ŭkc88Iw5߾[WvJ8S5LX'| :=ºt= ebݔq}`4EbܐR|-sx9%o 7ANeh_]ui^Ns!% 6BDkio 0GO={nW G[NH]f׏-j.Nr zlqp *Da^0oLwI.΋S!ъ2/vWVV:Pw>oؼS1,5o0Lk:q*eP9{W aXZr@r 4mx9-3w#Fe]%9 jl eR]F!9r􈜟`#;U\8N.>IFyu85Яo+9g^wdwGxR=J"|JwEka " )(aM^(AmmK:~2'[9 JO `y?GzP=KN{)._(qK@G۠`gr/i,bq52?Y +PN Ar9 jOk uB uQɍ*'{Q'OЕHRʟ;]1a2( ni !&Rڜ6UYp ?pO r pM-!ɰ;MLQר0=U&r1gX=?.H A 4$ MFū[d}1W ErOa)$+g.qz?"aE: R0Z\*=bB#I=H65e)S/Yݾq>t6H~Vi8JC?w)1'X2;?IJ['w#ْ?#FШrvк v{:Q/\=PR:@.]fHp$Q˶qP@Y35/gtlk! {0-W2nK/<){T b[և'3&*YFŸ}=VYٷSJe^W"!c;4)%lMD j)` %T,a 6(zw@IEݚC+N2Ŏ#hp)|ٕԟ+g{nz?-HkP( SsϏn@b!MCa ǩbdK7gs?{˕V'B'[L O$LvWJSnnf[rdr/QSVr|Kx<.̣hJ2y֚ԾRRwȍg.+'"dyI/#1dXM&oN"ȻG4!*ZjWAODLJ.XDWŸ4N2Cp+@|5CK"<⻹wAo‘urHgH E/|ZDwxӀf˵ a;E<:20^z:y:)cyq2+,+V`r(1Rr@#_WК0x_d$@AXCBȏ hî; T+&h$+cx^.P5zN  Ol(*; ,'CϘImoGzhn;;>fT:[H_ EDGc=@^B_J}cAq"?H_lF> \/z~ҡ2׷ !hoIߛJ "[dC09Ɩ17_'q͚iͿɻ+OvZ-"8=:C!ULt*k9؟g CK%H!vP@Yzгd0 .wKLaMWz?FTNrSW I$"M 56ltg+(iOdքqـJ3}>d@ >w]/脙iwEB?F#. ɳ NL˔n)${BFW$,rkTZ=c} $ܕnɞTpLm ֕cָJm4[o3~B}rGo-~?Ag񆅈ո߻J|Lpe<<9%-SH={,W(}9es3]aH"SU M\"#d+sZ i\EKhLK=J2՞1/g/Z?g$LLweU .@? .Wzn_'Ts;A|Y+#z]$ndpʔzrT K&c7e'h<(݇/ri,9 >F nh9s2MR" 2V A].kԋOq @kQR,Wr D'1zV?ߘvJ(&SӤU7v(5p9F1կ$O8`UO+hEUimf2y_V<⬛TCU0UzCTS7Hz_MC]Z*>6[pAْ6,\BģrL!&&nwø1] ZW;N񩗟R(Eq@ +q]P%"qdAʤAI?rFn !#Jk=si(Ŧt~Lu+/"'(*!|f{Ph`&qL]=[rKБ5qXʿ% c\80)IEE*% txV}wc& ;3v/{ fȔť$;DD|.&\4/Zܑ~zճK~ 1Ku> ngɢ^i4k/|Sy]_8KlMm?&7gqT| x< 1)Arl%!{ő=`|R)d_$V@_,KcvCITK*;P/>Wl#=:.:cU IJd1Y#S* 3\[.AZ|pS)X}jrbr1gue3Vf2="  "8 H4ʷMa$>vVgt$ʆhQ!1o>[ݿc B-vE:7VRO*'@WJ2$!f[,oل \aXp>CŜRW6Y|Yv߅?׫`L}LF>x:Tfiy[}Y|&sprBR麚^.r?$HF #I"Mui ?﵃Ũx%ƞ-i9Q8x1WwUƮ|nmN*߹r`Ѣg\!T9m_+2 UO$cgb LWhDKBn\U'w/_7_-nCU%F5uP%?j,-,V8'.0V Nl X'}`h{Dc듦 џ%ͧ^)N((&|;fI O&V5;[wH朿RDߒob%@K(vRڔ'tP/@жHNh1BFKfG$B63ޅ wl[oJ@>S-BLSEl i&l> tI(z)r|9nar%+{۬dcMxlen~?>b{mZG""g½A祧hIHF"By\GP BJn_4Jg? G`>RϹu ~^ѝ D;)їwo)uKY'wOGnzd,=јႩs >Gl&3ᄌPq/OF!3G&o(gEk/1㕛Te8WGDe3y(`bkz$ӌB@"FҠ Q޽>Klx@yYMfҟKtUTŴc7Z:rDhKak%\Yx>4af=L5Fx DNjZbdhO_q_cxK䇟.3K)|!>@Shw]%VDw).# J=cb(9%6hT.ce~^N`u#XBNYz+=Lɡ9Nxų7%|RsaPꕙ_gi$kQ?[^ g6Þ "E{<~Ԍ4?%v)E޺"lSK]1a]y"HR4UwŮwD2-@l\="⡐:PЛS>V9{'@'Beq5L"|eKL3Muu lu_vlzݔٰ8Ua 'q=z@:l %R4T&zqiS1>="Ѥl b  '*yc]O[Þ\aZʾs'x%njy \BC$P,TQ&ߒEͯԚ2ʼn;S'T*wd}w zl3uaW~%z"𝙢Tvwc?5B% \/TJ!ŜZckuZbCZ!})ٌP:x}IUf \ D (lx uTp]f8d"P(eda\1NsKQEҞܵhh&9dxo6W_tt/[f}_BcohTnvh҇o_T6ks﹄">"XWٓImd" !@l% FL0n! fR8Wsb S+hJ)dH]h+,^CsL DZ| WQ37Y}4GEV}Bo~~[ ElOD5?Z"2Mp4Τ(r#o\kVf_lW2-`9(*h|ch3-u~$I#o.a@ۆ~ 5\~v隒шno^ ?zkk8VOH[LI$& VlU~v^&J#;%jRqjK*=D_1[uYpKkf㝥_8PH.Գ9LƳG\X+Wۊ~4}m֊$!hV|5a" 3AiiiS0S%-wRA0+2NF_)jµ}0 :, #lb^Y}>^Me3@"$UٲޯCf.淶qh,S:$FxE.tGc6SFAW}.0l#X[́fו1)s'bS4CQM)e㜆8t M 6tKLߢMENb!ͣ2kqw@#9F2\"@MV^TT`mLM0 a3!Ρ^bkڼf ZFF MszX-`νd₟Q}ictc>RMdݨ'K}-!9sc*fi T~tfd9CK4yw+,R`1>n-6@54RuWȲ͊jA_6GRT&-A0<ƅ Mʆ,_~u|y" ]܄Ge^X펀]LZ{_Oi\t sPܴۤL?JAS}U+~WzR3lj`g æ?F~/XA{'*bi2*>X=rmB oL .mmd<5G`p=w?ylh %n5TY2xi^?֑ÀԷKHXQ}cUns:ob?usvȑj5d@X7 g߇DgasX6ƨkp6*CT $êc}ܖ5Y.Ƀ[!`7d]'Sk-&%[]?e H7'"PB}"?U74` W{$^v)IbX'<D,$mܲݛYO7lCRt} k"K4+Ir׉7+@# ǐA*Ar3vkyaDF>!7 ȃٳ_dCV|N{z/1o]_j40)t%o bjk2|# =Ev_!*CaіtJ_,:Ԝjs(q>M@gܭ~dkDiG4Nf/pWTV!c/(%7YV (qAa%rxF̖UQkHSAa\#ifʣe}ŝ9.30~E^wf1^y}Ё YRw/}Ke'(]B]d[dRyS:<'\}G1lV|'qCBG \7Xz uZa"[e"iIci ՘<[}@v%ã]&dZq3T8cPeGQ4~/O"(w{+1Dz&3iK9t[|xQ=z=W֊|(JI`3zu^TܾGV>]%=~Vsa^Ktd7bwc8 xCc-+U@zV{?|46!l Eml¹]I4Mrc1T]Id7e[('E拑fmt),.n»mc?CաKKgA~eɠd]r 5h0Fzq[ok^(-GQBif::?^/>J6>&BPг[S?.&-ӢZj,7څפU VhP mhm 2/Qm}ִLj 巅F1~:LR~<ݧqLӕ^Sg U}tʱԛeVΔl5jA+lhBQ,c0!! ,}k3*Gؔ 3>4gC6P#s)RzXn^SQ=1_ij@3.0>̾}ZcH+-2QӊYl%evwJ$Ծ*U0Bн[Z H^FbU(P A &dŶ{nr[:/H6e=!1Y\oߞ~>E|$ldMk #Zx*q^W.:=xݵe0*wA?lƣmʎD4fÔ;OL iJRND{< ry(CMSឱ-K;}c<ޅxً50Cܐrrx̨mBսRvìff x:Em,aN3 =JrϢέزI$G;Ja;LI-y偵[O2a%hs)|ѹhU73SoFs 7#t:mNTZLf^*]rI(\VsLVRov`TW14%u 1c:s$ejpE1Vyà;~q9Nc͊#{-,\uS5LI7w7QI)]wn L|>x<<2hP#'\m%qw~]ěV5R&8xoa\0qO䂞C\m{JYR_!01Zʨ`O7x `6R]=纾ܣ2L~-MU  buW~d%UvJywF|2]p5M<,Q__:9Jb'9Y{wQ (v;Hr;Xo4>lPjmp*Ժc |"Dd\3j[cR| Rȴy6!!hz WFN31*v/CGϡx<řX:SؼEI-H=JynnJ-WEp|1O9 "gZQ\8Ӓ@ڤH`&bu*0tj/Y!,$)Vk/be7iLtż c\BJs=W_T[!ႆ JŤitt|l/fC6UhǦiHۻZXSK4 -HuKDo'&vtHcKi{)ZiO¾JIӢgs2RU(Vߙ])x*OC*5} ~ihy-,r^ez哗}hJ0!ԥA:h`|fqvȥFtEp+Dvh}.k8ݞBɾp'W'K \%3:Ou۪w|!#DƗCc:fzHxo"82ix)%URdI-`[)8.JAֲY"ƣ!a^-MDL{W; ږmsn<5GKH_=iC[zd$S#w*xٓNv?w<3'Lj"L0FzMq#r.G`$"O|YU#SW \.ަ<| !ڿ&ܛx" ӿS~[2k1  Td 61<^~ES⎯Gd:Y.s,{('}ϽUl)J]vmG| 4PͬD*1w׆d>tMzX3 t ӫRD5y%MaԲ ™Omal1?Y&C6CW]>woǀvOKOgTʍ:&mг Y7o8Ia)F«Z3=enb:T8]j&$RPٳkF(f9ڂ V{5Qh' YkU04uAGxH׆Z0Vc8%^c&\~[rݵkI[Jg&]dofY,ˏp>TD"ps@kFV?*#^VMx콻/h $Sv5o/ADԻjpYQ3[f&S .Bw\,0rC7k8)ِkdIbŝJ᲌ pq۸>x<C :g`#ikFB;_z>]Y@&LlvT [uy _;mdtpJzogiDoJ~C3]۽rWܸ8eąg@#riHG,g9s{" .ڛk M8w"1zռIxWCn5tr/ ǙҟhzP+0ẞhlF6yh1d2y'u%h0V.,VDȨzg t۱.DN2&_u>_\Ng@9`x[1,fY1o-¡8 @)|Ejwı|F6`)#n jZ;&ѦNk$*H)ħ\iW}Jp<_~[y[U)֭p߹KlfW!іdEˉ")[[GW=l|RǿdZ̀ҰҤ>hdp|NׅGuER?ZҪJX|N1 b@r-٫@A9lX\Cn$P  c5t=}@IxxhrWR4CQdsD<pzGk8;B˴OJ [f1+>v)j I:3^C `CkCBp Kd&t| Y'4bL8J*#bb7r\"̳%HPj匢sO?MJN)~{*Sny)f!QmwPO穃=<Msz>L[ΐ\!Im(xok$&0Re @ya_iM`W\/%>m en570˹!Kԝ>n@8\iҁet7[sU{b؅%ciQнIVIAp>iEuy$c~;#mH{%)frpf ,)MAu[HR#riK )(ޱһ)ЂS_)!%Dk޴"#RAՆY=OS.aɇvh{-8LgTW"+J 6\ JGG3#R DX;8yJĽo%dXMP>M K :Kؚ@lj&>/SCӺ舫qV1g9d"$TεJu\Ν@J&ĝI7Tlk(׼u&RP_ ?eZXUٛ]||o} 8n cnA..F!k>D7ǸD+h/6!K>&0lbyq`2()^S` 0b:9wNDQMG#0L ,2ZuWɗb  euY,eulIr=H`^)b uoYT]+T6eRE.BȄi\/=i ]dlPWsLD( mB7:+([q>eN8(GD{!4}WnOHaAi8@DLhs{yqlq/: ,пŠ<  ¨~S[t.1J_ YYK b.WH>Eu7k#rX/& >R-da-[ex+}tp{u*;m)Bmp,o'G`m/o+qGF,}syzܬXͤ)X'Uoe%֓ʓ&M ROnͷo"aI Tջ1 IyMjm4Y4y}Yj[Q_cb)Q]$5YQuZêbNXλ)aǺKE<8|hP.w-/zNnK}P,F֓e.bCFz3/Fzdoh]}&'j@RAىɚuħj>W 2eQhوtokf GvW)nizM71|6%LWThUg֏;4* {w (sqHl+Zٸiyt[HMYWcC]kLd*H#r!/&JC(%] laj\"_g_9Ԗb}:2ݭW^cv7uzU0]3m +Kߥ)NJE555Q|^iM._'Sc/ R31짥h 4>$ E:4j0@ VJ i&oʺ^U&xmtڲ@@79"'ίlzR[Hx46v/"fAz]qEثksg墱mh8(zw6e>&JhFAR7Q?,nX^O9s.}Pb>rlDx3 1Ҹ/'j m>斨 GSY{lI Ha@5UDZ|q6Oٯ gPك+'02f >/-V x\I Ä&Z$rXi$@PNtX$s[Ctal>qZ\'%$(`(H423jhp6ʣy` (9blLSb;jCr '٥L*qު;4^6'*>'>W'| R*&g׊+/R fV4^*oK(sdB֤eޱ$ P) ,IiBWF)0L aӒ@y?P:(:#3l  9Rm4xҢ`]ӄ#.,"֣'lF_lMLri?ϙ說辻' fe؝뺉(ypMOPͬWwOWΎ|<" _:NG` /pC=/wJfETL-B bV1Ȥ uŎ>D+(xc`?A,VaHN Yjz43MoW5K]=ea;HDkD]oCVWROF[ސ6 \·Kmѳaˎ.T<9! Oood6KH8J@6уʨ+)GYj!Ό4څd@}"mFo"&]bSH=5l)!LDkPfq@#[l8PפKS'-"2nͣH 3k/3OPS"P9fՃ닆Eʀ#Y'MŠZSm9RgpYkÂi-̛uEO!?a#TcM` zW3sgMvD:jCV+|C杏&ZPK ЫwDZԠo@Y G(x}e}At"QZA>'/v>Ɔ@gBkE#;P9*"|; K](_}saSzcסar Kʴ@ Q=)"[Z{XK$&HhPYC,VxԳ_U\k&erd^Pr5 M=%ylDJ+{}|lN޲1D#l߳5`Pо)g<:: ufZf晀CHD"v):ЂyuI_ixDɀWЏp3˅~CWEc'Srb&A}' dDck;Fn`сƣwvGxQ%s Qܩw/K'ح1<&=~sJFN?p;G}tΕ].zhC5)O6U'w@O̥ަ~ogrpWp=x ̅M Fbet~S[ dQxG\S*%M:SMcZ6$AV-Wm%}EQMpy(SL}b7dTz{d옪*,:}6&*K[\8nbO!9>**2O0FV8O# xGHc<~7(NXᆖs12>RA3]'%GR6VmmuMa=(SxC gr8m*B䍗V&-*vg^UUЋ=U6,ð MbUE&h"Ć;1;N˺|] dؙ Т%139qfGya#ni^//sU/ɌmǶp?UeQ%QTy?i164Ѿ%,nƕ;"wE06 Ï؃>mȎ2ľ8( F7B<7'?O/|E ިm=KE-JW& /K WyF5\M4*Gܽ~08Qau*Q)ܧ&{ޒ]V|Nkl lj(/U|y'i_H n=4wb?XT _!3/u:k˸HA[ntq S)!Z\S.7Qto&Zv}+:pzE!tWQPt<1_%WT*x:DbFC$Hu,*fbf*s~IT8 jw,qIz4FC7s~w'Mxq &E-@M#3nFKtܦE8҇iL~_F΃JAiУr~R7Iwo!&@i}V#[T(UP0Zּ| oRE4-bGIw/HT q]u gy P?t۔\,J%J'J AJXGt'Qhz{VuaBW0Pq ^J7W'Yh3I E8絟" Yf=͉N@G a[:vb7^j(B.UzuZj՛>7,bm-C 7Zu.iiҒ \h/G훂k##|QQ܎ew9'灯j(Tc y Y~ EXɈ&2BbJ,Bo.;My/Eߪt^Y6~'2ZB Bv6x95)h2u q%-/j:a`U8d`RTi Uo-~Ebr5{Ym fm!=aM,Yq_3sݼ _"oyNZnrCS|?5{T8b֑UzqyS)3mF%"~mTٺ_⦇6+DuJ .viM|~(;_n~J-L23%-J",[/= ddS: uO~&H \=cG"]<8 Zʼa6:.Y 28=uFTj^T6?$Ā|Y eݜׯYGX, jLᾂ\ ˬ8)}p:l^?$:B WEH;zd^cl!wXrh !{*O'裌@M'GBؽRss&E,?!˧8 ÊӴR? ۖЃ+X~2l^%L-pJ6WWŸ'"!,4LFd",&`0234\Qq'8%7?G2.⫯Ns[6@ub{1lxM aN_'Y-4TM12;EF~Sj\i+.зK jʛO&mNq[-bI I!ƦwGL<Ӣu&b=R`or!W)y"%XX%9"goq\,lf6.|/Mku5("8:N@L4Kѽbs& cR!eEbR2+Xs!xW18 S摣֙"WJb" +ÝpG}~2Rs\gp?FU'T(efbr$X:qPӂ[ثgƂo2= uw: .r1$ |Iv۷oluv=yn"J3,T'z+ fWsrDWaR\k`_KʹZp_4S6iO'dek"3WoCb&96{"` B:;>U߫GMQ ܖVr |vO<%Äs;QO|~ 32Ɓɺ3|5r9kɬTx%L;3˄zC,&5"XW(k[(2=`tpyưX !wYpʒ=Yx`,L{׼t䌈K}i87|wN;Ͳܣp_ I4ߒXj`kЯn{s}k3"&𹈧Щ/gDK O`{u>cYQUZ~T~z"d/j0nYjEޤ|%@BxԳC:L&H[ z S uS7/+Bf8Muq_.1?XHu:υ̗z_WMMfA.ԃk̠Sty\đ q ɿDBf3b:S6a(;lxÚ)c gYJ&Z)3$e)f~YgQ,P!ų*T]T^>"$׵FY=g;n1jsw`DcFU蕇"M`pFi,)=DjȡzS.e"(vQ[m˟jϯoFa {$3\T yW-S YZJyM  B8gOO@W`%fEtt8NVR7U ߦ߆;uv%\sJ9WNIksD'{R]ы+}+o[?قfKroW\&g݈Ys(AbvBm=L樀^V4 (MN%3 "H3נE :LtkL^x߱e@+7Ժ;r#DGϚC8 [Du?\t3=j?7mb LS$V3Xf|8[]NS„ސ5):Vufm7=6tv"H.b:3n< X rKhҀEiEG~-v3;ñ<Ľ!ŃO*cq _8ң)`?#Lơg~tEY1~#*+l9 eP4>Ө I4 wtt%;(NGJv1|Rù{GJq+@$*'*F?3ŕ!}DM3`҄H/7f`aSWHbm2ؚ T#`gY;hcȽs'#DŽ۝tPVc2*~!_D^ {頍!}#IVXj'-]]  hl|r4/,OƠ!Pك.eKTP2/MAU.*G5U@sl|x vndcRrB6Bnm0C-:"5GuV+Lywq#(ϑiC\}SF2/iUYxQp,=]B.a+Kwҕa 2Ԋkun»o?qnH4W*Ba"GM8w?⯞1J&HYݴ<?;TަD3A 𣁣 F  :dd*zI:8~92!:k}~VèC9IHƚQWN2Gel R6{ \tʐ$ GOZծG~Z($Rn2e]~Yz69f&tTd^ H{}u! @\뇉S/#i-v Ѫ?d#&#W":f -,(AQDvÀYq;d*|6vLwOd/smXӞXoxmp+޿%*7X,nz砣V Ace <.65eo6 ?? tkWO6+*m0/z›P~5'٧;c ]pĢv1cRV=ߴ$:߭v'RzqSj@nLxV"Bg%1h:, rnʦ)Vg+WuaYR6XOaN"n:27]| qg MB̡*4KtkYeXo\zI[~e>:`f6\!ηal_FcC|bk4EU3opvL>l戳 ?` 3XR膢slӆwSٳgE u'2,4 f4y6d9]x6xE4vhA[ ]Sn?hdj”.V<>_@=FcxCȂ  BŬ)*uaHЙ,lP 1p6~U d^8> vP-xN#!gBT,{œKjʱ:C'1`5<˱m\dcauu'<ڋAcgtmb,@*'EJX2*ܬs.Hf᳎A< YtNq%9h vZb/yl39r!ޗEI%6EӸ rB\'wY).-N U.'l_ ]/QJ .$Ffa87̉ A1]},Gk@ * hNH%= NۻBv L(θ LsUCvXˑ>·te^سy~TRz~r1_կG^8}'AЄA/sp{)g몏ơ=JhNW>{sH Tz&$/$Av6ɇ|LӘ+:T[kӁkѶ 8Jrn6Z9sMP-,{ K.s>'T̝{H`Zio%Qs{YCl~Y4k-C~d)d U1l \ ߬? UԱ!6J!4 Jnjv{a6Bcr&Vݭ47nc+oVrHмEVfZ @-g7Q-‚_*wZx/EY$/@ۼl= 0o-XꝒ.\ܛ.ݜ԰\#Jp'y0Ѡg&i*rMx^oĿϏP^@ÊSт+pw9c8208'=jyybO"n|GiCvݒALJ%vvt̷k;<2`*8cKe0"lWݿ~H3a @AY71ĈT* z6&ԕ6`)=/u}wB~g6ɐ'Y'.DOԑR߾Oo~J8JQH<ྦྷFVq?N #*D.1J-T >m޾((!\b =n|ξkvLYgU= oFuud:y2_H&W]g:#6s5H;\D|gZU;ݱ%WE`CKJ1.McWd tpaG" wkDj(YS(Aȱ`ajuw"A8=8!IYNJi!pcpWXGPz?m@zI ]YT曍i4DPvA&S^hy cԵ )Qմ[՗MDc>N%|4Bx<Ď9Q뒆b۶l7> b^!󍆵zŎv d<WMb0 : :,ga7j棬 ڻ!J5g7U.6|VM!Iit[|Z'O rAoO)ˆF[V3`-j*1Jٓeƥ.L+DY LTPh oqU:0*MHqb鸹 c>p+;ʎzٍL Zt`*QTOhC!hxܛ}fj!?,Vfd4sU'J^Ev5qSeU>Dm3eO_DAIGlE3o=`x?i2柁gϕ[]n N)}S>ZGS+DeeDMw<.J$8kt$U* }Q'pd(ä/P.)ҐێTe >q]z1OqH^SHf>_F/ +_I sƞ.2u.;:u.,zR(bk@y~8jbt6ݛr:`)l);@:OyxR-ds[ǖ6cA (-ϸz&Ţ;0Bpt:_cR錮lB#e Q8áq"Ov8QHuWQ5ρLq 8m{֟L M.HumF(P?ߐcim`B. c $>wffwM;tKnbc|[D $-*섎`BZCf*/'‚o\]S=fJˏA1mCd1YSֱ< hZX:-Q*oѓ:= Dr}8^er2ДI"76p~u8kt+XJ' o0ޯq'L5Pl ;JױG O-ZrP,\S5P FDP"ieH2=ݤCnl Jvٖ.5\ 84QE)|Tw` k{>[ke;y(`GVcg ւe8 \(|Gc:} \yO;ػ>Gc @?))o &/-J*B\ ~i֝eg]4"!esYg)u=)Ly0JFr}6 X b6,\("*qtd)sFಒca s&(ivv? i ~d4H&YGTr(#`Z~W^pن?ނW]\|J+Fמ#@> ܫFj."c>ޥ- bdg8%Z uS%ӗ ?T3uBP+$찡Zl4AO>#>@[MӜg`^nx/Ѩ^s+t4\G ҙv a%bGAQ^IO* Ri`HJ{A΀ 1 ,bzA>Z*7AT02ܒ]ݑ{jQd+Q#Ԧ[s^W^)*!7 /g) T-mqC/䔱^ί.c.I~f{Wk<'P18 *歌{~a—bgJ25j\o7z U9\oQ3}C%Vss+Jp. wF֭LӛOqކ=o?$cw 1KGQq2]7XE\УB_DL:$n0CQx $4Sem_h[">ad3?8\dk֐eac i7|47;]MQ3M@Vq׎F/m ]׉44>ؖKubs\#`2LIe54QCX@KCߪ s?IIe{ˮ}:js;@`[,B Ӥ!lJUhiX#bxCQu)=1ՙ`\ oSߵc{ce9 [bijVC:c9P0 J`<7'+ٳj"BnC|z.K6\.IHADHS' | `ZCUICWT0.u^bIMMΜ7NHQV(d(/~yS1/=1 #z@+ghlN`|41Ê-CAO`CmthS$Zۇ侲3!-bCohѲX^jpvB49 L'_(qv?[԰ p0/:zscӐUݬ?*6 .(>" no((sqVb7:,ᖪHEFBQfmm~UMԀvo͐ @b5F/2Z6__t!īO 0h E^Q B:ob\]T0*+q< Z`XW?˵'i dj+g1#Q1tcx/zя=?`g!/=(.E v%5]D#!IKlFȯ<i.Q>کo"H'b ):y?ܺL}BMC,V Ө'=g?:kRv7PO!:? YTT"3`;( ;+Ht]Yo2[E^X>51E.SD]Ĵ;y%D6dfLT.' [T %xڜ~r@= Q_uc khݖ`/tax-YytjD-/9X֓REr6!)oPLY4"H W$MS 3ֿ {cu QE)kGZWKIMzl0o~IuB^U] S,rGN$Ob5NB%Y!piunjA[I;2v I,!QH"-?8BfSUc$4qI3IXqbk)8eY%bz~qG|(z$B9rq7ǨQâ6`>KaR*HAl#jBc5:/\[ߥeJ/fY% \j];IN*.YdyCg:"8< bO(v3N4{׽ͫN7f4 .5O5m|p#<-pr!4?kqH͐O#&ٌF>d?u.?P;UMնMفVOBJƞu- ? te=6et Li&Qe nl8VR5w-)ɂM1oJRkѩl~N|:{Y ?|hI#e?fI#czK^K2mP"'"`3եj'0++䨻5'YЙBY7+avZWfZxt] D*$Ӄ.*]o9= M^.wI|B//; sLRQ$K*b6' m;(Kv F~ ~[w8pj!G*7, zw5rm"Snu|6y.ղfA0ҥoG}HVd|;c8H4M쟀=X-,lpW,)G% :2(@+Y~#I9".0i+ XL 1y6n2J-0>g<;+ڬTҫqqeR=UM<8AUSfn'/GzExJnR= ps%-"J%?3@H_"i}+6ɯ.Cw"*@MAʉ<"<=WG΢'R(rqdǘzRy;9(ʄݘ+r 5x!чptKX b-ܼN^%l P[j *PK=nϻl:_,,h-ZWFFbX(1UX}q3YTc̔xqRs@):H9}3"CLst$+f_h}f:\$XT'R,[^DqhY/E1" -?zb_t\W*TEȡ-Ǔ}S,s>ſm]NoGIN(ZCy ۣV"=|=Tp8H{Gx־17up%tz";ΈOZI%bg% 9*`gP d,\UɭCf ;6}/tƐvk"ԝ `Uc)ےPvO$_FY"#O]J VfJX_0Gv(0F.VNL ^6!Sqħ@x>Y‘I>>5gL4mOw'|JqنhӤ EƉP:-7Pē4*1+W(n/ϔҿ߆+mP좇vcA'XH|߀l^O~!UK< c>L1ſiRB{#U&G&+JPrZAɦ} P\o]MeYbz\*LvD8UW]izm+e N/>DWv5h] 7 goXA^ jV'XԸ廣F(FN452tA[ qkU e(׫| 90̀l^?ř4c'̦T CS `L=wуoV8_ҹMƝU^ *?+m h`/O6'?_ry"岇5 R4i~ rp˘_ P<LL!N3qUJz+ meJwXl<ߣL`*L'3 hŮ Ic;ؤ|vER&kduu{M{e ('>* a1gV;e)dDC7;(l?|_NΎG]IsuKPdz&tO]kP1؄x6?}&; mf_/؋ӇTn+^xk$1<΍ ;3\GX_+ TX1/vHR=T`(584$1$pç ?!WudIkz 5ڀR;0'; $/^*Ÿu+9\jK-zjĕK&O)Y6"R&0Q=%I|Yb)4R-1Ҧ$oY`9{S4yw 8V87LAx;:tuX2d3}rD_<^53X9qJ.%8oɝ-غ ^ B@'J@4;'Qos.Oo0[.T=ٚ fSWzBc}t^n>}%Aql(PXY ZNVr6VG}:"w4XB9\Fka(tGI! \D&$E:M$$%NWr^@CU=bl^um-q_CU2t'h&7(voe.'Y0!9V5@&njdF~oAV w9 *|5}l!2"wV}NJR-Xx́xkhB仧V?- xa-ԈvHEAqkݰӰe 'ڠuy\o/\:[m{/󒌲#<&UHD᳾H6L3 ='\YH?`ڴG[:?'g7̡zpk/MFE˘EbÚPx*$ֱ:o؁ 6TB:*ar̘V#BM+Ojgpb}Uf*{P DcCɻ rt&]XXa!?; v"4= V)vuԘrjUcYyQh5 iPYuU^T{P1lGfFhL;kl|16;FT! 9z*)YзjC r)q]^"}4>1}zʕ?0{A@xuYl- 9 leΊu:Zk ah9N?X`F:\Xi?۪-ӼiI"!ӄ `*y\y3 zCsyh3!MsySo4A:_FIEڞѵ\oAq7;1[5' ‚2rRA xvGu%lݴg[.JF~i(LIکUUuAk[@vblWGٞAK+ ?1cV7ͮqPKK^hD}cԼ@D7{9IdFk$A-%~ ELA{c{K6*׋U1'%=+>UPFb:w|UQah/rks$W{_fg\&W%4Dfl\V@C9|NœVQ~+P@]V q&aJHv_$G(Eu{59J XvK+"&E& zȱj+ы2ET6UqFy*jz j$4 i`~Ȑl6|l!݅ᚱQVdV!/ZVq0Xe^ֆy.-ohv6.h2M7CwTo{mX@ J/"Mndž@ B* {N.`[9sL@=nUb$)$xduӢ({b":Qj7ӰYziQnmÅf6:lUem`ts5 dC4!TI_սgi/C-K"u\"Jbo|eȤBN%I HaPzbzSqG9Ιd,XWB:>8bIpoqMmSVlbubs5҆j]L)xƚ~78wZCSOl[1 w6VT9=:|ς-L9O*|o7¾ CӞ0){/w6sJiI>v,oML B m1Z^ ~{M,?{~8+zFְF"ܫνkdYćkgp:zoR"+dzW{K^Yůsj"bwNu@5OvNaEKm<@5U!/k0GHu݇1~Lw@d0߾Al>hgnri7" J5+7L{j=#*cPqAX"B"K]ܴhR L <`- /;M;Mԉb1|y'(QH<7cۡò=:>"+"W&W K %MBWj(!n/87 %ڮ4C8 o4$x3@۽_Ztt <vT4 vHi2 :(T!Z=D(6@TyÃȗIl bDo Tg,kGa2d~M*V#yei sɩBErgP| CpA&d$?H}U{hP(t |T~aE *hx|cFzvn%ȥ)ZmEXf+v+x:>"zKdN3L0xge]ݿg^z5?I3aF;V\+~ްүu!f#Jj;r#*Ժ sFD5(m; aFT'Y}\\N;F΋ˢhA`|SGUZZ;1RXqڇ;% ʕ& ?ECIW N-U!E)ak8 qa6ȿ.FGr UL DUZ f4 3{jPjJrS urp$wTrʡص5aCj߲0=w71O~wlSl20;!34 A [$u0ݗ^q( -g|G.\-lH98rjcoS4ܲ,<:+ixiLjU|RO'P݊ʤnB1YnE F)X^VwFM7AXJA/95a,TZNdD6ٶrЇSWmx ?Ow0 e*3oTj>9qWml8ރL)(zH';]rf ^$4,/?TKAEBBu 29m˲oAS$aE}[[l˅ G4uJ>$ x꽖xVk[arA{Wgu ce=1&~)Y\*gsrnOY:E&w ew7oEK/ ,W 4W\)+N9'f\#q2 :}SG2O,h.{7LpRh1F<91T|}وSKǔREn8`zNPwX99;xD]i ʤP= W)&L<0NJ|ݓ a/ GNqN:9:r@V^smU2 0103:C+S}N Ξ`$ֱpd~V'3fOec_ro&t7r]Ěe$Q2#v~Q=\3 l[+`7z#b]zOòثg'SV$LT+k'\`JnUK>y,Ɉ+Wˏ4ќߌŗwJıҿ![RXCs[:#C9$z&f%qPu`ks#ؕ7%$0Hd>uʨRSS(m'jFsz\u:"z^p)!e:мm +`@׀V'}/Az'>IWxAa1n S#R¬rF`'?v8u<$> V;c+d#SU%6w )"}@W<>e+{{o}[L-q T?# i#-1uDj""5CdwX҅5_U( JV{)%r،%ks{{Fm\Jػ7!Po7T*lDX)~r^5ѨLHG~) &,AϱK&2гHYHm" W>oߕCX_ci[>7O˵θn;~gYH-q!iQ^ L03OƱnbiJrC{o7ּPM~'lY5F&9qKE!Q ab bpm{Z=ġF7bq 8Cb&R 7"/< C 9k#Y[_&A]2t/"%tݫQ,D%18ʣz rʅ80L䆛7$n{K2JcY'PojsCvU:ꠜUc N)WT(Ɲy<8Sv*<?w7[ ň 3 ;ŀu=zזY/ Y'R_ KwM-?DD,guN7E&\EH[QnGc{ĶLֱtڲU(P8/{G&Mӆ8Ҿ+܍C0H#yu0zzclNtM`H;\Yq ڡ:Ǵ bj劀 oB1"']<^-0gԕC.~Ӆ=_SQ, q\/,Ŭf=?TųNmN[&x74cYR`wci7]U-?G:"bMFtIh͚obN^_4%5W1)!P@&ЅK¯(V\^1u)*,.\WOj FG>H?TnN }40"i[nf V (R^u-z~w4{}C@pm 5"eu轒a6EȡrO ѪKY#9MzzyjitC8S1c1! 6{ӆ{ɼUf+pл5L?r~8~µ>\- (T߶@fuR1ױK*R>$QQ_4sOo\O^WֺKxZyW)t=-lÝ:ݖʍ*>Ii9pb^q}/eS06R@ =LrK%x]g0I4v}ۢxw:* %O;/|/l L2|piXǤGm=ϧu'%rIBSlƪIȚVNK)2_.mU^"%0aaT=T-朿7@pe$g%&irc%Yc3,by i9;9<ܾlyW4vȇ Qk/INGB  _" qTIXmTϣ`3`Cv[ծPdEdg*/90WabW=|ɲU2ŏT~TM4$: 2y:&/H:TvfNgS'.VB,=ڌw5ڰId1p"d*1d *\rDp9被-J0N& yJ򱖫A j 9`#GcI$f`țMs! TA"T&^i=s@"=ڴcL !Y8 ù,xe'mg\Zzed)krØ#(۽|:uN)@Dzg.  $$YBƗ>O fzҁU򐒆)?X Urڝ*m yT^ A|hUޔ6ڎ) ܭUo`RO'7%3N:f.R -$cSW 4;+PaTY`Px[5/4\(YɉlA[&bmPǽ.'(sW$ ϢB|J9E\eЛODTND0ٻ'h./̅uabF_abVbrVDܱL0%kRX1G}r`͇޷ AڞZh1FxYO~/dt I%)Eô (^-L& ߓr{@wYP&$}iTPXĠ?ig?Fu_Ȳ}KI 0_헸@+PIDikn7A,-nkYy`(LgʈO fB jcψ-ԽUe NvR~Q>_A&yғumU\' im4Y6v26)ǚYaPb N#;jɄԉ:.5An991`{- ӭ)-~ 8@`<be<8}1k9<ݠTQG8ϯ%ϯ#~R{+p8O7 _UO+D u&N}6aUND4O/~6m9ɽF(U]"Tk>$W3Fb34'P>̎rϦysS&ǻ>\Ms)`U]Cިͨ2+tv7 !|;`?'i+8pyBJbGkߍ'hP%.kƽ|Eóٺw(Т4XȺ2G꼵ufs3Fc=i5xV?ߩm TZIMhUS1=XD/&p"0˪QD<r̗BO ^d_Y{|Pwcde $+G*.y\i|JЦcb$}"*q4/(MMǎJQ$5y?ۘG~3WԷb^>qQh7%c%^ yj"ZH8J!&yŇM" ALj"eCflFy HP lg5Ε9*$ɪ>~BdoIpVL3ϔb+i{?sX"acF~tvnĐ3ՠtЋ7l+x[CycNou[iKgE}[yRޖ?f7&fU,M|P-LwUy( u}!Ԍ[{D H@TN^WN {dy~b2ɰ%j{$5Geֽvrgy;n}7=E0&nL'E0E^QlJsء#C?͡ Kum| -!^Yvh2J+=R[tM_zQk'ˢ3?^c;o5'u7bd_wJp}6JFg%)˖B" qhSU-, 8rT UAwwArVcmoO*[*8IU9p6F;݀`@tnmrV8OÛ `*2,G _ xCfL ~tcdkRqn)Au0vL;*Ä,~Q-ؿE\k8[Xу'7aV0ghrv8VIk%gPHpE#OϞ$FܦuoZ6*[;G:ɽH$C/VNOgG6F -+<5z? @G߫DJK*Ik**ڜBΧ-}XDQ]i$r9 3\;JJZ;yb,*˕ ;@ /S@_DS90(\4J3e ģ"C3q$jf$/N j$Z;Pqw5!knc;++5D;@VK%,Qd(vTU>>VIdok"!M+^PX=F0UoN]mh;^&w@Y.Uĥe 13,N0$ߕ [j[weH!R~ھi3b$>d{2TB(0.B" \)B&@ wx(j8ȝ؃ QR7"IbUnZ@&o&M ?e,ڮ +!fe r⿯ߜDo+¤rdtS^,1v?=sfmmsjR-&a$l4!!%{4< 'TZ<: `4ê(XEa÷,K{f9znxBR)޽l^C*0c#iR;tI{GmPD1m㢠MsB =&I![xz>H l"9BO>@1FcQf ܄\3gi`dqO֦W%lcU6~ʹI1q:[glV:Z>=Kh+D^O@^F 庅_jm!V. YvnoFD0_[}'vQv\T4#/s}5F:kB/O#Ȃs8\,]I']a{0~Kdaӧu)us}O:يnЋI*AܯnK[`CBNlogx y9ovFȁƩ6~;dRW).3rm_#f7?Wz#{y%ȳ¢Pm|d [ר#yps8<:Y7l7~w4Qs+YՀR4 '̾O wsAtm7O9yk{Wo1ҹ|HhO'9XX7CoЖAwcܕ'bAORw((4@tT4:m ס09 HF!۹}w1ڥ#)̨ إ 6Y׵Մ/"dᕢ;^Ր~ܱ)yl.9o\+*=gGpp(.n]U'KVӭ^Ri6#/vgi xj]AFyK=AA?OڰR H:n]xIM"@!AYC6E萷ZrW*Q$WaZ.dpgDUٿy]o_ZfkJWO()JBJ@qYȆ'rH+sn;2buZkjK~0HaIy闽AoT\BgvˮKŽV9bQAƌekE @-lOu1LC/&[JcL *p<- v{sqs%@\0ԝ /^{R})),e[Typt3No*WY?hMhI)Glb!؟fx3n7 F61-RhepIB)1h.yl8W޵ g!%L/07OqKC?>BnFdO7a,Fsw'A8Pea K& T*\ч3RS i-fDvBi­jF ~hEE1HEeplvZlmpo]`\AKB7~QHviam޻ ?Jm&b]Ģ@W~qKͯʒ^A*͗JOCYn iI'*_>T ew}[ GTE5[b?Q QoLIrj*1j뜷-sCTx Wߥ^nzBwVаi} zCL}amaq. ;Xlƻ#emv"\!Ykv^%ꫬs;zM%pJ>M@ue>{j"cNKcH`s[X,s2"Zx&+pGŅLWb Rnp +hZ_[Z0qyAiWeA^UԅV:D٣i+h%$=y4Ab a1/FC*tc qnF:ߍ.AW[a\}j˝}hZ:S'iQB 2q㑑cBu)UT\ 6*>q0w(?+-0-o/ `sEutq6q ";?sCpXc 4 f1&5ՅRx۷/cG[#Wz_gc &4V L˜ ]W-i[$c,(K[ꕞh&qEͱDDQppO>Q 2^^ǒʚT0zY?]6 ƃ( Ơ] bkRD@ZɬgfN ;&;z"[TYDUf`Ip C#h@na+1]\d{\NYI)EQ6٦ 0ͺъ4$~^j3ys1,M% Թ0:B*POn6j'ġ$ A*\Փy :D]c?=6ٗ>G? )+7wOᛀxկ4y3NQLI4v+cu3MR]JRfvwǓ=Sɾ C{'@^Z.:C H4-]KKz\{x=xo^g*+{u U~0$iFyϠ!DQr"By9uR?%pap4g~YQ[ȓO.7((la%CcMp`x>bVB ͔*THM+ *Xscr! ƨ&F"TQ$ Nǡ@0KyGuCA<LƛO D|  tv3?'m>dќ@ F :N\am84Tޘ`yѤCݨW=;/#f$ug2dDJF3FPha՝&݊IAz*3tT(kF%=cR|w:VkHWnާN~(y\\~dvL^w2$((YRH~y fT#IbNr^9v!ՙTKҀ4Nn!ŏ#CX{I0zGh "5Վlؤ %%,;WQhiuL)yK`XrS=oM߈J&(~} S<4#c&ǜ"=1K^/M"T u3#4mķʇRr7GGy^IpXrEZJJz.W<x$+lT (ޗ=H+tonUY mÓYl2H234sfaA#L[QrX \Q1],W6HrԒk=siRnEryy?c5l#Ѕ'/,rQer;T Bܛ^Ye"FȀQW ֓={)ey<r؃kA˹_Zov+#㗸rO*zygԉΎ}Ypw1y߲1.<L ]3 Ɠ rL!oGݾd0ӕP!wu/,֛%??w!O31KZC1'lFʖ^KUl @_hL h=$˾ rvw[(siKWӸ$r-V*3B;ܖj!&7׃tB& "Pk#nask@>lszAj5H}J%C=PSK_ʡzIB1̚M4;gWF-(\gl6{/xX~?V[ԧ{kaZ\#Er,MJsŒYW}z%9C!&󅦕(Jh)  .Bc0'CzI993Ps]c>Ͽ(SuceNzXPŨ2UO1{~P{`- ;R^̔ߕFD_5y9bX;S?[Bhl.Mg2#'h|Ux/_n*n˫ɒ V+d 2/ ##n3eq<2zoloI# :b' x/?"{)?~ oQ!_t!bUi`BFiXbG GrmnaUb`&krAh0wk:ʖZ\IJ/`Ѵ#5:qLҞm!Qh`iaoTYgXG%z=?G$ k8HyK"҇$qN ْr~0q8'^ͻ; ٖT)rtȓr*8EuHrdeuDi]t%,=VO梽a&~ >kL4_ȁ"]1͝DL+/w;ɒ{spox:&o;9 R:AKTSDV6<;vPK2!~sn ͵F !7P.uBʓ)rW^)@YQk `MHyq4Ǩ<7zb}l$E`,~J݊.^GTVG{b8x7@xsR؈E֢{"FlI~g&BGB+nJRz a3ScGsjk VdR8_b3 %gb26a[^GPԎQ1[DRUAyzG,M'_{%.\7B6qN _;@Ŋ}j/ `D"HQm d0z):VN bYCkAZMv;9ؠߦ9Wz AϖTj'28}bt<(BCpBY5??#<}Ϗ/'!ړWDAo8|e,t K)%P¤h D}b2tb'}8PRBX[ ͳn L(4rYS9УX.,?S$ox+6Vs8er]:r3 ~ __g-R{ ԕ*OLV'N Ix{~L_D<(Rs1E򘹥!S6MG1ͷ _J`#螧_l/*SB^ڵxJ*S&`VbXs%$d B<2` *Ţ5N/b.,cņ so~?2׃3)[b:CYȀ-"C-k !1qpB;aoQ,LPmNz*P,y]]>j0B<޵JW5c8Y+vmJ>$(NK,&+}e5ܨRLK;:?4UB{^|#%l̔ŽO:.[7cőAڨ_o::h[º iک'a֌@#YtϮ#VQ(s3VB”&k?R``,g=p Ph㞯6S XZ*`4 ؂>ȩY'n%yQH&|匽r aX$WġQH_̨1fW)#UVEXm=,k$ i R^ | HB*4^C;f1/NleEX:KHWܙp3 uE aڤ 8o ϥKTOg?>#@űEE!u_ߙ~BkǪ~[y]݀/]: Xp $ /ui0ul0bDoLB.G Dz4>?sVYq*h~e{"i)g cD~v2k}o~ CӮj~W*L+Q;"iotX"sa*Xէ|tĞ,TDX1[ZkxgNWDÆ.5՛OG&_U˝lxP#@Ӿ1hX S'.S`zAm0kH,uyh4[ć*rƭZ`)c Z"JbÍ"2Pe6hUޟ%RD1ô:]\WIp,HL_~& %.EpU-Wb>fVgOxuNڇ=vZrtKmwJ5Db!yR7L0wtL̡*k Xs$DnAvu*`sy<\߾աlx(҄H0PR/-8JXcbGZsRѵ(CsS:IA.j! EeʲsQ9L_RDൖZ& #w3bDhDv<3&$ߊ[E lNߋx ɮDHI,9q٩Vp5ɷ[Dmrc^dH*-1[n=':S_FS!.oHu,S, aE !C{{z[z ?ռE+÷d JMuMF[90xe*%@9+P% pm[jsEV%ԯ:-l9nߎl,񗁬|AľH)Ԅԋpj53Try*) Magd0~ \_2 üIhrǦIPhFU?eͮ)ßa$ҏ?s:fSH&Rlx!mJ*T2',G!M[TLu\QU-> fg \[|1U NQtoӇY.{TťeiF뱝R169%:BMK,Ur 7:^۲N?K}2ëaȒ,qPMSؠ@ ,&x@"ڠ8/@혠\;O,r#]`["jvqW~of⤩ Z7\t'h{ӵJrEYK'9g ek$5#{7\V9aa"'tӟvZTџRDN=BMg OO'Ӝ Ffŵ 1Z~%FRǬ5b1c̑| '2*n?ݏ(D&_:N2Os|_HmmURN5qG1\*:P\.@73Iu}ޡmӜ|Wp4&cO>w{h*PSD+?P'QiM> rWENaMwL&GlR|@tչo_ҖN R8[;~{% ~ޅﻷ6?:κ[剓iI|E牢|>}̖|6o+(u,k:ҒoWȋDG8P77"Oِe|` \ h 9rZL!XU )iɌcQŏNw~Jlu}&9Dz 5ҪRi@2ñGSrarWXW^˪( ۓnm•j5:D?i_*7W[TCaqBw>)sfفxlM)ys%M-26z"Cͷ.˽j8<i y򭩮MҤO7\F‚<]0HA7X{&]KϋplCf%M(nmP݌n%e5_SM=;*@Ҁv4*~3pMHgGՏ, K"0>ִ0% ,{!M'#8]Z_Ovg55Aw ׄ\YPׅH-+]d n bNu85KDz^~㌅)z|Ue ʌ*bSṣZB[G#8T N9{&LB"e+!M=*[Ơ̲Ddu!Q5p!0"2Z7 +v0 ܰ`c7+DS̜3?hL\|kt1Yz(Uƍ6m쀳Z ෗3 L>Zjf1w#N+򎉤5ѲK%M5!J w{ +@^g3mXy^.@BS>Rjd5c!`:f?Ђtvrm NPdm1t A}N< (֕&]L"A $9۷&]LB|Eظ 8SjVE&(bK=J̅ }vrn\ eL5Њ5 'L{v UW0K'V/K="?Yhd5PfFw?%14uA냦WՓ wLH}xrB;N&3}yGp<|Fef1o9Yσ侣S2di4edV]k⨸ ?DHh_bmAEAC}GYԃVl*B h$Zod-qa38 tbxO,@V{96eD`gzD7'Nŝ${גj.zL\%8?l%Ыs@SҐ^Kdp5Gs!1iV o`חD_&4R)i.Y9=UaѪT\K V`Ds2c Ka"ts݌)(8,Vj: poNM}Q"-q{KTU|DZQ{ w1ˢG}by;Zf $^4zh3C da{S6̣4;FwR]P9rPם+, ~!9R/^kxFUfiuQՖOR؈G``1nʩº޳?fX~z@G\t]heT'=AGRB獔1 Uzz!,Y9y1|0Bkh 7U␹ fF+(0Ras v>VhÉx AArfnp%|U$Q>;lխ3O׺j|8HD8Vs:w_=$Wx\N\Ɛʂ9et+m8Jy]|>qC܅/ppMf%תH|!;l'aĬvTx)9Ӥ`%{iC`A_l7^@2X<ăV{~/_[6/u/zz\ Aؒ>Z9cH0΍Vr#<~?dB5#O^߃h`<>d+нhۦO.`Ow:B~7(G5;i'TZb_Ie ÐH\/<%jET8Y0mϱ\0 v;/km٭ؾ !@[s "|Ο_6dp:F;63&!p)!A^ f)ȆҘ`nш95zNؔxrx&tRu׵LGn>L[AphGT8~KvwI۰:H/!7yBky&Ive,KGuس9Y i"{eA?^t*qc7)'!lX&QWhoCe@RBf4 g,EQcՊv]n5MPr)w骪Y@O.;\.fXR3oԳ/ HnN?qs}C~;@5{v²w!I /s~(P&׌h],hXE1z2tH3u$ n)cíTΙ&!0Hذ7l;$@mѮSyKNs9НQ(3GHBO 8nݦDigjO@[[2T+7gtf`2[=濱FX< R(_<V&wPʛ-<{ko7nI@mib٢H +;xĿ $T뉮0eoF'=1x$W]`6C5!wv*rla!xk;Ax;9s@/lǡlx NxI.{wQɄJBS}E؄L\i^IXtYם./21hԷ>+2Z>,ް{Xr%ͬ_/QL<%}⹑sQvjFO+m}fwi>g67b xT kw^I@ $XmF/2W1j4Qk,U Hحl3J$ HבȦsc pʁ{lI%KU e؀ߍ`+u |(%/? ;!tN}A8ދ)iRMd̃No.#ށaK[e"Ysw,yJU:cE 0 /XC!*14I=&_JbxikgyDaМDjRCǰvn8?T3 m(J6_/m8UoxFٸOoW ul12Ŭhzhi p믮ض*~lI@ ]peյn*Zߺ>u^aۀm N'DOM$ʇ%,RJfrOy3:ܽ rM>3np|dj%z8sz#㒽K4jFhl@Fn~OM'n c٭d,ٟ? iQdmF{EqT{%IU_ͬhJB^GJ$57 `$Ə'%m<}U'7̿GT'0Ӄc@-bu?s1)Ā38U8Ø׽ :hY4)Hߒ\UyIߎG+F)PmŦ A8`ߛ4`V:-H+jr* Dvo_ ]'"!q Y-jvv1$69BqEK]mUX{`բ_`6vewWNPzY$ֻKL[k6_qu( (vcUq-C$!zW Wm:4 A Fq9QZx#dbm._&h[n>Y, O!3`W)#IH8S6"91YR]OW9?R9+JbAX"!%ۂ֍Sˎhlxp+ôU6Hk"Ydfw^M6lmyWͰ'Xb"oW*Qa#.YxU{r#AAl R@7%>WJnhFi`Q~f^G.. +ۣ \^ک'(X@hî \ 8rQeuI"tX0u43MT}~5rM"ÔE>@4X\7g"d؀OJg &kZZMEس㫽֑L}r9+ɻN؟Nԣʷ66rP ep ^"ܒU\/< ۹X.U?Q\]bF)',.ޅD+&3Fq?,} Y Qѕi \|8)2z/o?8H~0 !~voG=!:te7yisDɻ[<պIzbժ< Sox8Zy- Y -\G2~jgTc+k6ƒňuR")SrGf<@g}ǝ;[A/^O]`0$W9Ib/:U\Bs824gC!ء|&&?EXlZ]f򈊠FF̽]A\R74O.nL!&dt)uLH٬[yjkWfLAQ(تɸOq: $yMZ^=k̠&N\S\~tTKS ؋R[zB< 53Z;Y!2C'T !$DN](?v 0^=]*6=V01ֽK/^!⽼tͭ^\AYEXT6i]T)W&9 |82qJ7Y0 ns߼{Ft冰zlbW)yO%e#Ye&b-`̧ ph#tL^bDU6{5G`ʇ9,z"Te3#w{8,ga[|O!櫰C8QrԝZTm |ɭ}kQz 5 Jh[h<5ORsrZV@%=tr d{oDxbUl3d"uF]6&N⊮$U͐@mE `_ƻABF{o:GJJ ) 0}ADHWLmF2{ <^kq1PAB8Va08gsL Ь.BGB gZi»>dy|Ruf2e֩?vA|c, qlCEsu0N9az wx;E^U4V=`<-4C hnnz3+w՚(Գ GI4CQïXlWt=;uP3WjSWjkAfi"D|9򐡿?dЯCvn-) g㓺\򑱟aj>5PrVjqpNѷs@_#۔ ~ + x7 }a}e"Sc۳CN!ިLV 'nA54nRK|Kت`EO墛7B"'XU 2lexni|1^wG\3v_DS Im-Áj=T_my4/Tĺ-qHoLyaVϡ:n'PVVV?k1\GzF-Gөn|%uQ;BB-uT$EpZYohi޽yqWrFc4+Zפy&gZS&I[Ydck[meİiN5?wԼ<;I"@sjpRj*JӰƤzqCJK){~J|$|١ؚ=cS~f7?zΝKtAUTۗq &h-KarKa 4F{\Cwxԗ$[]E'hfX!nr ú`O !qT͛2/S˽ˌ{SG^u枲>?#P<4xlkbiS|]GX8u G22RЬzj8#cу ƂoRwc˭,ٮn@uiݡ,Ctfu^ȚW@KuT#]L2GlmK//eNa &E !gjz=1l#AϠ%~(D(n TL# Џ˝o_eCZ*l^Z YOo#{NKd%~5;'L%WY),b aiʧ6muqb,1z,0FFvP1AL/_kz(mn=ǔEsldMP]X̋5x*GI$ 9H8K4+nQ≀(XĢцt>@FV MO QhevPVuH"3:}F,/fކUJc ŧEU ? =d8pk C#]\j/qx 8j}PFR_"К{0 GJ! }4}1;d,||jsl ɽEY؇N47j}6T(=]:ްUrz)y.ǔMǠvnSi0S,MhdZo[7Cl{=,~ׂˇ)޷GWPGw UI8sZsnygM.d<sN Nbl55j;β15 #էحf=8U>,*4Z:tM0Zjdr@SA{b-cQhP5]ڿ VhES*؀!O0cH"\] xcA:v{ ni4OtCESZlTKr[mX #+KFfRZfz4c;r4tm8Pܰ8dXdD$Gsy0(N܍=RJ46U8ryy{iU{}**JܤvFIxJ9^{E(2#>S*Lz9BUObwU䣘0\KBlE>OaMՉ_ Oڑ"6ô@O8j$WvVoWPB?3RrcS|N'kWnhkHMQR9)@Izlv8< O0jmpJ8(,Xe폱ܧVg_42Id6r3(wqiiah>zć,\:y,إH$_ }57r)?$ӆLt813L{rvt-0U,*VMw2XJъDӭo/dGٴ躼m kaq6ݙ^B.42A]gz%Bk1y" amX 2/yGœu~^^ ugHYm*/+ϔAؽ񺨄BJly$-ׄ2Icc(p)&K5+7(^Q* h kneiŷv]Lбf^frɗ^50&Dxb K]f^?F'UGG GB[S}t>n> I'~⠎cOf܎z"ZVKYFtRQ|Xm&Hm9g,7oSKˑxdG콕Y*!A! BTmaE錮 b<^JsL$Fe R9E,7<#:|LuU@ī\KSO$/#blﯵn0pU|9.h@:gwF I蜧@Q uM'981 41ies1S4fy 4h4P f.ƅCM00U̵nϮ`L^4s҂yұC!eH.gҹ)W0xn c 2EzS߾Ň(hC櫠ˀթu&.NVlڗiq|NucWd^O ]u͛]f#rz*-/_!=4`O}l|\}[%woz)bfeC!䃢:2|L矐y&7oGՃu_ Z|e-iE.<-`EE&Oy5WO(0X gR9yD\D%ں*c Ki0z s31m hQatSDx}!!i@+զ>"8wȂ ˳PzuT7rOj 6޲a~߮4`t1%TgN?L9fZH @|B? @&I@&5v cxyKN[YQ E |&X݅R8V܎nw4+s(Wt0s,|TōVnDm{[MB]XO NG$?`D̡Sbs /"BV^Mޖ[YTgҋ"ppzf!&ztMgw_@6laui'R?CԊae('@-ϣSGc~T -^Vf5E.H{ xhMd21 CWKRB*Tl? -l}h4`7+pV~ߪz'L:/DY@ػWH[z!S[PY~RF97B&,%SV̊J"1ANa wu< dq]V?taWFKa"MyMfG&۩L zZ$em]HcJQ*WŰDy*KpۙhԸgDpiVPMc[sܪ&\6MLJ>~5;* G`O23LV L&n݄إATꊉ<;`fЍb0QB?)> RAVέ"b>4 ⽨94,! $-rmTU9)\Rkf긪ڭ\T1 إTf|(zAo r:`V} j/.è [e_mFd%XpP_NSlh{v_IS ,Y%XiiW}x6@)j3P ̥}W_*-Vś5aΎI?Py.3vENƢW63p&lYkAaO?3A5;`uX eLpL Xz*vRRBOd(2"X2[*SI.ӣ4w>];A]I hHWFoE(L#~*VC,LhwpBlN]  MJF]Q:,&޽J2 G h1HϾ62hs4C(s$d NcW/0/:%cqUdH|藖]3Ʀ"Nʚ Obk\ {["@,>d R[#OɣհMle'tQfFlIvcԍbØ nG2*4qFunw!ɶ_xcV>FHsrssQpӒRNFQTv]w;4Mnw}F]`j`3:zI{gB)tz.po,-+ vtOIQSL86>Ёb0L6>Oj|{~KOQ#onlR[d]U0<*\d,HB (aQ*֍.aA#N {v Sou׋La}Ƃ{*{ '+iÎߐ dV7GPIlJxq_~|'\\ԟN/ UeYuŕpqEi_b1z8GgRO>l@P 5(&E扇*ݯ;445eӸW!&'c|W+\Oq@Vxl`dwv;Ɋ굕}wл Ю?Q|i,'yIAܰDE^yAb?CEV>ɦ4)v Z:qqEtˋ)™_!c)[C[E^%ׁ{XqKqjjsv hU?Sv2"1-IցZ1ɀ+1h٫`$"qpJkY BkwzR,[RLNQdr0;7;äc2k<웫!/I;ir1eg?H i/^N5Flysepo{!-=Re?ΫYa+>kL1܆NNlN_@DDh&-R $L ml$_OAarA5۽OqW&3;Ūl Zpg\s85 גO 'i|*1w$GEUJ_t"oNcKE+1l4=Ne7>3yFs*o))6~OqN+1̂kpc Rn Dט&0K[{7 ]@R,X#OLO3C#]@C/$07my$d:"ՒL^ g\%~v=.SO U z B+|@2YTBc/PV&z^P+i YRTܱ܍[0 h ,-ABT㤁GrB&փqWv5_̀k2Ax^=mB'|dWz0-, جb` 1;\gE~Qlg旔Bjڗm6iޯGk|_Q{휺sз#l6lQ1FTZafT[vgNn(*uQ:鼹WT]_7F|:!-ߕn ACR/QNQ߬^̞dUE% ?Į\R~ƷHkUxIcP^y!Vbe ϟn} *FNΔyʓ!,$8?Gc;q0"*?E NjUQyڧ/oGNhpW[˯faAL!:B0RO=%W(B_='ARhe/GR|MOIe6Q= C$bலf~{p=eIX!xC:K KMkY %ކPl \EF}JM=ɜk-V-1&yWTuL.EubfP#hyڊq&1:ϊB6&bTPL{:7v|y9=)غܥE,`ms^r:50x/H8 QTc登PYKN^_4=a#ǝ+Cf7*}7f* h *_n&y<Iwjn/țZp~]JEO>9'׍>뾧s&$?{:PZmA#$8R h4t*M?>Ymގ!w8VyImHa콹FNld ?fQ6X v3IB/ih)o;{NP/.\c:DNTh?6zDJfj4#ΧAتg1pAT^,0#8ZQ8{5S3qÔւ V@8_ڍxJwi^akWQ$#xyq \?s[e|.Y9aTG)yE58Ok 1m9|(Y(q pԲ.r~Svq*>fxܰm9`4Uh[)A%3 XGQ7]D:ž3=/ǰhFװ,= (_'3$<&`RR06֖~0k.*W&W`ZOs6ۼFW#frmD4sz;Ul3pSb*M'=źGaƟ5s~=#qQD*>~:nkYu;$ll~<Lg]}SZ=.ge;zrHr7=>aS:| ,بMZS)ĭ ;;*@syΎ-QpGc>C_LE=>DC2x ].0z ϏvXEf 9Lhiw DN9 SqvA@@;<ɶR{ߚ:B3^P{W*3:.%=`Vgr*zk*3+,+tN2A{Tja \AʂKm$uik3 nȟOi L|z\ hr n +v"SLgy@\֛|6G*}9"fݚ] j;L s҅g^ג` (u ƫ@ )(L{2ߓ]2G2ozWM~ =9EԷҌMzYf}Mq=~6ܵݽ=9ǍSyek_>ߢR9}Z/Jyl&`H'r4a@\W!쐹"أ G RaL@n~ޖݴ.]{`C2c6uІ'TQL@ fO'BPT |oXg@duZ]ۢ! )cldEwhS9oٯ|b9'xepWOM`p~*Lo@G Ddr6wMv:‰y|ܽYr-i$)t&Z,XIk?^`87?ή% T8{ g7!A-iw$ϸ)s#آA0Ho1n׭EDr=bvvB悑|m29~`[;i::貹 +Swf&SPOWWOmRgI܂HOom_?Իf1x هGs@ ֘WՂU{®*;Tӻns$igWbiQa pQ z;N6tDmɠzlޔi,_4x6r׏Pj%,6?t9檸 `~J28IO%QAk^1lO~U8Akl!x&LzpmTG⼼\>##flQ5Up2O-f ` ܘ)B a3c\;uPNU7,/>L=vT^0O BdZѝD&'٩%vJ_v8qE[8JI6t L-]p" @\1UUn?"VᛷCgffUb 8꫆Z$=2Z_qṶhmAHͱS,sկs&D\cpFf;ㇺYW$ALx+fhC,9:A ^2OߧjE-gKG\uG_xp!UDbmpF<ڝ<.|t fYt#t$]r˾ŕ2Ɉ-y99k/Lc6_r)LC{|eSRn+l3f¬695zW ku΢ϋbˆ`{[Mtz~m,u?g)ցQ2BJSSlw>3ʵ=uH,&ڑM-fZaZ ^,g`_^hFTC,~y9kxëN-M-]F#?MK_` [-ԯ.~d*9d)Ŵi+Z}t6&(U[XDP1&W?#O$\E,@f8i|ذ답ؠ6Ct68f•%K,ILA?oIAl<`xZCA`5ZfsYXG{܇v!sɟ[.|:W>8ϨdYK)DCL75JrN7BVL_b}4"ʔi]Q3^/)7 8vYJGù"kOD1pJV vBI_,,[>)xhqO,d, *O A+ޕǞkA#AWFc-0KQԳUqzv*>`2!l܎8W yOa޲ 1*t7 #nk{ͺᎦ;Num8=Kb(> })7a{(!Sh!!s/WtG/ZʍwZo#eϾ/yS)@`E(`*~[}v{sj2x5iWΑR(>˗d8";A]gQ>VHo_"|9N)RaEP[ fMao,[@ Ĩ 鎼Pӑl9akmGqP揯іVƎT?;ia'+DN~c r~F <4F$XL.jen3ĐDug|OWAC >~ 1qu) ]fۼn]/`e.q4ЅgTmDuQ6gy-(G{ߨ1WoGv(Oïjlcɇ~%;9O;(V.vA!$My뤫Paq-HVlbtA_,:Y=,?R+#mYI&l(E/u1Gz~7rpO \j+m&s8YkM O5'=^x+{_ 7oiTH*vMd&u.QH7rt}d4zm(c(4 E F-R%1QzdUc`ly|ό[Xbw(jDzl }X&]= we\:^,A+;I,`J R2D{cP㫦̷>ߕ>n$A} A2ȑ0"ڳ/xdpńF=ōvvI ɚ]*tCe 5=PxnP+*uwnH+DJd@\ycNd.BE@M "UW[l/'!;Z6a ct,![exh+ė?!51FuEfaQHF,32oDG1!#Ғ]֒6pT ƀxjVU/Fvݽ*lްN6,[ tLcqng##73O!FH)!za{mm+=7V>S@gR CUk'vxY7p[wOS>nk\gx^yis a@h}tq0i!p(6\8w`e"UL* 09joԲ8MfN?ӖQ؆I[6syj qZDZxJr/5OpӇ}J34nXF 3v"0jCa6V>sY=S""(`,7r-.|lw#c @&Y3Gjg?DY./(&%R=y@b\ŦSL4uq)[+gy}}$:I*U W 1yh";%vk&`Z74TЩ䖧F{qKQ!EGbwHq}a+MΔ#\o*>g+q]K7?}qG@An.*l\GbNф"k-SQw3Ij-=KV}rS|b,LqT23>} #nİ"QP{!|C'/-6divyiwV4d,\7÷{;+ j&t4[PA41֤"HT+%M'`.ti C!Toz 8\HWe\VH텂=-^&6Cq}'Ϲ z?fÖOMXwD% QH @RpfE {|s 7,p>BsײvԯlεU OX[G g5c$Z(*¶NΨV׬KUr==#܍ c;(h9@('(*ϗ*=6 - xaOP|(8Yk:31HNt:y,u*,Ѻ7UN#߀ǮD}mlt?#;OD{ F*DM!h:\y2 ݨR8a'ȚөrT=֖$~tc(*O}L:uH/&/R7jxQeƾyag N  MbZq8^>~z(ł䜾SP*w ф{T>BWUX>,Ӭ Fhg!Z]@9-rb*7dCVkc;4PxcM{Ņƺ:"b]|M +k$][v4n4ʊRt#z; :%++I$̬񉃆[v@4L+sOeST5τa O}~G7vܖbKk7'$Gr+P7gdrbr%8!˵t8hAk? ~AAjO9 0'r\>JnN`p48YհKQcw*-trO{JzoD B:&]A82:@ 7d(%ۉ:%&!\֎?)xSB[vEC[U&S z4׌aFA$#efq'/ڗd)Y`5> eڀ}t% fG_|4Bu`J iWp9u#r1? My;/b&Q J)ro{w,2 W.uQoX 2\,h:,Hgۣ`RmENeX#}oL(t^s}eJVmcLӃV}}l"*{ivRhtE@O ]U`KTGofٝTHRqfAX͔*VS3 G7֎w:i4@L3A*1/&ahɯi݈k( 6د)$%!J>T+3zB;-SG_& 2,1 kͨ3|- 72ꮀtYY=( Kt`+/2=^Vpgam q]+(ϛsj<<*U1N!߰^"*A(U5/ػc$kЌ0<^s );YUOPd2*K0f]r3g̺Pg:Li_::h6i߫STя %Эcvv&jȢ|8#aJ1 U[p8sQMVYm{BtCs\&P94.PZn550WfljK>IK&${.;  ^@ TyUF%xZyg[ғ?_+7iDc3#_+s͂qK6;8{J'o5@\U *J0m&pVڔ Uf-9sED E6 *v&Oz~><;!':l IEA;w(հ[W|TJIU]%}|EHd; M܌*wߥ=ة. ,CP8|ÚMDK,h ʇ|ԋ` $#=Czjv@Σ\}6eE?XwЗ ίɇ=5ҞT6?D$^֌}ʴEZd'?fvm4]WDWfpח _(c;R3MKvIT'fH:/ l>;D- bfI_@Dgitfl_I40`W%F]kP7 ,N W4b+|uHšѻ_~YkPA-ɽѫF̰gJܪeCCyc? ( %Pde;Ā >nwJa墅B"AWM73`ʜ/_I(\(-wͼv-;̺(+yC ~kCx<(S 8^= ,7l!qcUC !'Hn>Z|->̙ i'NԿҽ!X(Yץw۝\GLC5Wq<]%A=s\˅Xij䌽jFK*'$6" ~y߄!Cʆc=p>\m|w$10[w?^/%R0>ݲRlE9{xvHF^CJ"g.yؓ/ӱ:]wlmmvr.Z/n,~ ]~ %KdOٶ8J&THs<׈ 8i^(|@󀼧7uHx8kxDE$'Cш2Qjߊ6QNH2N(wD;Wm&$w-Bck,=H!IaKY5r <"ҍtzGVEpEd:Qi8YUi`!;0G=Cd`u㟱o DǾN}[HIgs(ح2 FEdNqJMF%UFd7ʴx2 \uXZ''ʂ(YflJ~VZXybDE1 RQ9 ]`dk-`Ed_|a2cquR\Ueh8MpjO>E;w&G]s&9}+ͺ%81qI\RnxvY&Skh-լ#Xe :qͷsYs~w{U4m(uu@݅&rXljm4,VMFfFP:|_K@]rD484`? 1cQ/8$̂s;|LS2G#ľvRt^ Ye8֜ndGr("Zma{=ǘN$gܝ}c#e69S9m344EϞ1oaRj`(~cvBXH#~RkC-oҴU^AA7|VEVi(@ r-w/#+7X̙a\|s Z%ԞG{V9"ce| ]!'9i-AFreIUm4ayuH[q?~u_q{Su3S!WlCRws]YyiyƑE!J)$6tV8/v{;L \ΤϽ<jaJ#Bߐ _#^^)2{(IZ6E"Vw:ЂMgaZ@K3hQS%&O2вw< ·}0в6oԪlhW2T ;4Q[}s;J {j3[2{pА[VAxSsHeme֚nB`ߨ=^Dym+ݯ8R,.ae 0j^ C{|՜Nn/]SS#5 h;L !N@x j5x~I™?NY]vX/pL`?`?vΙ(>Rwy4JTS3FL[PdY(<GDPaS'Fn%Z)@sdҴ8՜yoT㸇F3Yfwb)RU{Vp*OR 0f]HKu6v(.D%4gȳ+^C$Cjcn)R{B3|Ao:aua}};V ynhg_6eLz]Ɗ0Q0y$lCd/ƟoNumȸz-1y][Fٸ;,} O(\Xg&f/P7GPV|dw{33`Is!^}}Ys%xu{gwimDL_,eSqt=Oǿ"l:Tgk[im>#>Ǡ}裡b1FyBM v5XA;$ [%5~a7A޵ÖmPZ'ƇV1_5Ӵ$/<庼Zl-\ (Ru͠ ѝ}.2:Y6$}wq^+TΕ$mR4jß/Jy(s9L7{va[|j/һBsyFE31w? {z3ʔOAdeuNdxc6r[5 '& fG*{g!_Z *F)EqT|)wLkLV[k& #'5Je-Q="K:Ʀg+3˄wâi%Xczq0x.8RwhJῲm͉~m0 r7Vd. }[ [ A%Lu c4b  0Gw},ΐY$^b~޼ TmҼJK+M(D!ۤv=!Η1&bhjջa54Fr5R:po>G~/>j37Nq!U ].-87"eIɀ[ј{Uys|<f gbWRLDPCT c}/W 9!>G87#-mu3?2ya]=^3xe3gfmKf*4QUdP9Լv?vwƸϐ E 18[ x!OY㬯H|$q|4ݱd1!Ihj.]Z T"քp&Yy>/}Ut;>l]7UB2X[%V\eE5&vE-$!o(ȷ.8mYSsDc;k<]L8 +-EDHBrɘ/htVm{ːjF֟۞j)P3vll̰r$jfb!g@T\;)[Q% /\%d*̅B wtX."a)U%q7ݕq7؞+E{=[ꋰk/[Z )E叝~sʾ?&;r=cG]g y Ye2xT6Uj! ;@ia?!j]^ȍvDK U&| `VÒxcz2jKبv=KL\t 0<;hC`NqA1llg-]oh?. oi[)&1.OMY,0Ǐ*r}/~!2%3ҥɪw&< Q{KrpP ^G `sg G> /媺YnH"~Q/eS8ڏAŰaI ģP*Uw`ї?>. \(x؏/u&/8)?e@frLA7KwbGl :zlV(Fxs} 6/M7/u-hVJmDis+cA9+䆠,(:>^y0 vVzNOsQd0E/^ 2^X*эN+Ae7m){혞\!Eђi=9AwOY߉fXh)$*A("gHf9SVoZlTKTw& =C%kT56Y% ^Ov4I9D0d fL*8uwovDRA&ޡ$L̬1^G^ӻ}F"J5^@j_FNwD "C$(x4øQ֎QJeJ0ĵJ>X`&vօ<`CNiykeϴǵ*yA.o6fg Z Ƙ#~ЇBq9 d%Ud>5@ٵJ?)HնEc^'|)"HyHsۊJ̟ =%`q NB.Eq|VH]8k3,C~.mMx=pl jb?cb {:YZi-3ڵoq+-}{`\yDRJ uyHKW ,LfX{pz?;9F1b}@c#-v.·מ a9Hw6jq:.#g"_|⬂I\jI6ҩݤ.w!2@y ya.bcihK2?Bw7p޿!הJ7y^z~Z"hn#:Mrpx ,5Xmo Rو%R*`/v) 7wNA ҵOn[Cld!cB(5Z{s"q,3 b )҈ձgf[qRì]2hBGm)#erڻjiHqAC?[@L)/Np] PԬɿLSΞGIO{;yK60CN؅SґO& ]0\Tㅅ{GYu09?:ol:kZWl =eOoXntDI8֜2)/d%F":'3U;īITΝ류v8iVtg9 3\:7C8VHP/$W] gY)E`'Ki/@toT6R4*qUۥ&Ec;4aq3sptFvGzY& Gԗ-UzkMzEAdUwWٹS,(lZ?M Ԓ삢&@cy2IgB[:6Sփr>oۑpXW)!Oa?ȗ[`o.) [aK6]_oātgX)2[B6Ls3}RuMo`E!C-$D-hoPTve'fbW!|G+"ؐd!k1TI$"/9k}4αo\7Glfx|(޷8.VW؜QO $J l%c㪿r(z_RH#nYӹh' 4Xv:AU3"Y}%2}etCeh_$`@˒VyjuWׁNj\je;m]GjZƓD3-@}|Qu$]dz{ ԏrLeyܝOf+tԙUcoinR;.Sű@SeKFnm@g0NKZV Xcq!MbZ(y'vE6 0MhFtL b#%74mf p>s[F.c"ޝ3I;\66%cd\;+k_+"W'rY&f0h~:W'aƃūud}gǺr݀%${ic~G0d.3&|)u*{L s`@`fQ1~xyvQ{Rk6A0M}`,gZJ@5iQ;Kš^yK))#nД/{ό,>=4Nfw8ҕͰ N}UDu:mT5L߬?$xRA =`{AA&}z o+'U-lJW\|E e[@N2 [v$d kE֯-jTе)YPêMf# #[|m*o֝l7cK `$=T>h`;}ReqϕrVaL|0@ ̥rjz}\pᳩcwJ 2^~n{r25R)aFˋ}nmiXIר-j% ~[`7)[@Sw/=7{KLG\ÆJDפ{4;f (ՐTjRMWOnMN̮#%'򟾏l#N`ab5ҵQLLgS/LV#,F5: WJRL2[P}7׮|%a$j(Q v>!]"7R# /,jT|0D TK۾d;F>GJpq%*ώ_9x/l x]aK]ub*R6=5^/%R%#;Ē}R-M+˨Vs/`6u*8܄Įһ*t*Êm l|nԻ;n@\eeaT_150S{މވuW\5rt婗s4 5l s"S~g0R~ϐhʍ UA@*|j-LhϒW/K `}h1VmQ]u[ԯ/[ -NMOfO6.6E̕5xPDlwe$2H"q~z؅)y0{,͘8KI(CNrzB2sPbQ[%tEJo8uaUd[ /2g%.E~Z$赉Ļޔ[r6QGr%>بp&MaN^JJ³}"\ӄۖSD@0GWݜpC&AM?d?߂3!R^P!>+ddHmFզ$:ҵk+Hbr|~h?hGk=K4AC>2T}ݺuuEj\OYA+HjuUNS~p#w\*W"h^Ĉ M Q W(ks:L`_`QKrޝn)3a#y/}7:a&X6guJOg#JGBJ*~#ivV͠Q 4Q*]VczxJ[GCRK%c607m:)+57p@k8- Y ֤ ]֞"^ą t_|E)bC\«JQ6gs?+9b4l-qRޞUWYwNfշT@{.L6k)hcle{AO|f*i,Auk{]K: $ l-@yhQ+׽}O/ }n_;|%I2F࠴c kXF3y0U.S~*'=EhV8~^HERL%w}bZ5r`=l>d&OӬ, DrrAutܭ2@:[7U{fou ( PC|KDԔѪ0 MY0ΩF$X[2P3Uäz0RG/!GkÍ9č1f/ͻC>ɺC)D֮܉'{d/[ɍͦhFۛ8p;Rdr۝M(PүvYjVD5Cu 9o[EjukbO4Ҵ8N4  ;t?,%ox $B ~N'7-v{׬^.W[rDTD] LchPsrn.p+|6FAs η`-IޗIYemKoS*pHHS|1Fqދwp)_eϔ4s6)>˫2nbF4l05qN4{pc%Dz@ ҃1e덲m Ѝ~7\ LBAt(]'v47Hom@y[˙oPUbܵ ,w6JwoYF.+hBr2FlW9ߟ[>Rʔ|;I? C ,HuTv< ! 衂<+m^'i\_U%@>(dk]/Fl1! J1ķ}@t"q/c6  2"!fCc4?T23/{o$l !X#]ԲNTR#.dnPٌT)&yѕT1je!~DPLJu9kHd<U8cF \N{Z(OZvK_Z@Ʈ7z(^ZS\ύ2t>`= ^&`b,3X鯗!#UȻ7qԻVڏu$\̌3 JQ$'X0NP@d1x{bmsld> iƟ?WLOM_bʠ2(S'v8+{<;O"8%&ԣr\}n+Re^bgG4o ݽќ-c*1R'5]iwdlV_l2gm)7(bc,@(5jBmqofy1,6) @%]7F{19$ktLɯ"y'v$On8Uϖ]G 8x7 l 11^r< l sa.~lMJο ) 胍%NikGq pP'VF7qo*i)2@a"8 q@>:|P:UI6/UwM4G"lP(no[):(㝳Tź Q%ng]TGBq zk 3M~ 6x&ck귷>FQc^GoHvl~rN,"(:/! <]?XDb1 xJ{`O;X%#& Z~!JO.k^_۟|ċ(>e׉ٷe$X{̝f|‘![Һd`]w{Cbي[|?%Ŭ"bKpM4hBu mm#&c;/T<:MmTAZD0^X|ڕkYsei #ZxOHnkꨐRT/Vݲ& ]e.";iGc~!(J-WcR"s: ?A{`e{$`g]x>W^v[4Sʋhsq;ys` a'ݧNx 1i:N,9'sR33/4 g'r<@&S-z8c,adf)P -)pSyz er`-L)fu! j?,=59ź5qxD&hv'r|x6BU2;O'Oo2079);)˽cõ㄃V 芸BSVz8+r )ZFݧkg&d|yk [%&#;ӝ,rpFy[+"Eb<>wTwuᶆl=upg7fj {qVَ%5q8pf5zXyMxk>M 5vhZ)c7 q IgL =dZi:s*K1!Į ϑRv>Hm\)^U{(~zdѩW:b4sdz;B-r2Ac^[\Z)hذ1;"mqu%ސCr+͊hp̓Pu~@t?o}p P}!jTyv`=FUvlqѭ@] HO/B(jwv3q04%"Ϭ 7{5wGJMmzJ@M_#[ '\#<?KVʔֳTF ,pڮ)Ճ-x>1V#߭-h\PV59LG о;u;+HRY|Vwح`8vųͱú8d|~Mp2x"vp2{Lb6ZrOAɿ ,d'1-$C,|: jB J,DŽP2@F5(?~}m "}I5> !d E:JwM*t5eFkiJsF,{3[Qk S _BM +vS.  `mi#&> _kKYNC.Xgm**Cg,RHk9} .A(8!x}- pbݎ <1Kۯ.RZwTiP<&֢?w.=yG{GZ1"Ȣ* _ &mא8"=bFe1$H6~jUa;LV+Q8lvLk|'T8%v==IHeNM4U 6f)&Gl&'+TP"+("DAsR\:"kᬯę=L{v1ZBVAs t5Arm.aGsQZ%qu^ȍӲ֡|2k14 N,0*xwO=<3=6UV)uxOч!WgבVHH9!d& 3S?%J؉̠<ő'iC?C4XrD,5x+>M.S@Hq["wr7piytE`rZmOWlJ8k>+ʙ5 ҍ3 X4vY~ïJ׺~JtkB\eس6*nXtQ8|i_u*J] YSn 4d<Q] 2XHϏd[]nfMqNbr]1*w:8CM!+67=E1R2}$:'hAj{P\eQDxiX,Pp i)9Dٔf*i;E akht;C".ff# 򉂤0*8oխ T!u៞/F[|giHXVҝXq6?W "zQ[R*a5##ir~IzFkУjބ! iׇhy̿!у h kWK,_O6S O@FqSr.acŽ[72ij<&K:cp8cWMY-FT ݫMS]7T.j6ήf%Yd Ȝ/*O!x*Aqך<]*_ :MDδ*:B;oN ?)FןP<1ձANDؼfFR' Aq*w<~RڍIQʌtJ-:0 Q9'4C!Hrc?BU3D{[Y胷YwA^X(XZN`=#OMIÍ!Re3h;Gv~5LFp5(HDpE(sM"FyW|}Cu8NznS ʽNol*)Iӽ%tyh[]#O t8OM=AGB虲1' ~7BhR *igLW㮪iŅNuI1A\,+afje^d(@ 'իX(gQAK#׵>k!VU?#8p7f_cC_ެ3E֦?T7RUv,Q(0*m4:AԴkL_7/5E[[ok`}ZKDAՙ^=X¥(Q<RyJ. m9땧- ˄#i\!1.ĩ;*PO;|LͶPά%5,\Ob)v Ucv PDVK+Y&{!iPvU#+ͯBgӣX;Ex)i/][`6X@[gǯS?'6mxmׁfY7+W18zrJQ4wySPoU:]JωA/tj'&FWr>+9iBӐJ{R"4,@D}6%Vَ΍yYKUB* lNq qwi0#d_E >;p6?CuTUA2:w"Еa0b4Tww{TޕQ~)}dU|s\k5GZE/{4\b5\~%K'?"y̾Hp'Ma++ڏƯ7D D"E Mmz乤#upAlY'wCҙԝ5F؁gL7%'󷇶3=zZ,թM9 8ur A̧lo-p@erZ;nstSVYSWr#zkP:##0x@Cu~od|..1 ~-iڇy]) 4S_ij?i&^=Ο&>>dHc>( ar3VAvqVRn"D(0_`Uֺ&)9D *?,~sŬyA=5zv]4(vsp0!W=nbsvb!Z@yŗs1S.H kV9(vXhdeLg{%E@Ǿ!k&q:nHx-iiꆁџ09ijSpt?!CG52a$<2_ѡB? ۟^ǽ2Ȥo[)R>>y;J"\hf|JZUP nɇ*LjE8+JϡypVWF`=a(O -AB:|z aUgTzⅥ_ϔ{ԏe拴w5 @sI&,!X1h`u Uqxc @*`]4Ч:,,”a_^m5C~s]j;jfta`fVFz{캿瀋(l3O;qco#~m`uKMVs {ȓE~Ĺd P[/t\+C/aP(ܡ,Wrc =I\ YHrzPiL_2WɜF QqŠN.:W3@b[#Q7YJ&\ճ#<imSu?-):+ cY`º3"gƛ7 k@w-]lY! )8qB\nzukOុg 4IIStUJK΅CfykvEO ]Oznw~oaqey/ֿ,W] k8ֹhXQoOOl+AQkͲ/d.3$髪Bǿ9:pCmY0'Z($S1˽Jރo$3Anqn|T_.3I (wkENaiec3F}ֳp݄ѲAk ɀn"7T3V]:~\.4!/K #uD ~eW K^嵓@LpjHmLFY,ȪB2r=lj^(ڒMTh^\m@t=,V(ЉMgd/!W[6OΧ~T/q|ۯN,T_Si ?Sk* ז6+㷁U`F+ݹZ^cga,a^!_N5\%}PP5_5m23M6W] Ճ/FR,͎PJvNP|$[YPfokH!aK <X\6" ׋_,*V&2)Y(_6z/zK0H{D)܎$rztX}hk`g ,jt\5_1^h6tUIvnԖ H b>Iho2\R]+hsaԀ{g6Qd"5('.WH'Ob} t}\VRyd907Lҁk+ $p;'– &zQS˔3Ur,H3HG$T? Z/]adH[ a ͘|R]Q+We&G\f_I'WWE`]gVt .ÕϨ3?",cvn¤L(CetoEG|cQ/%<֗` $.ZEL×11L^}å ۏE6ZpS >@@:" H5P\;{`24ATn?>]tl[{Ftҭ=ސ|!.qV̷z\vN݁#/9wdɊpWZ /*DD-f_A(ocϴ7܏H@?4y,UIT}44M" sɳ24t׺7ZL]okX#CX[&Ι$[Fu>!G"( )R[ُ[\ !Ȉ Q(=K: FLM"@f!fY$UӀċE(lp-  ^>ރwJL"2ͅvQFs1&[Oʺhba6VAg|JZ=Z!lPyP؆,4Z" 6c/g_a-'ް<,еF)A-gEB؃ ȪXC˻S\2g@aCZMQ]l ]^"Qhzu`ë]CBը2iQ\c,TU՛6i;"ܐ͍E6`@23t/6!KHA_ci8@oѿ R;IhF(^yFg1^!$LCDe\{ՠnM]kɨ3Lf9 Εpĩ` m9 RdĻ9fR҈l8FDx #N\tW+qcXɭD;cL6go I ,83 'rs"y$ uvÔdD?)91<j-hHF5ڳ'P8_nqG0/v&|˵ H̋j j묺_>uRjim;Pp!ѸXdJD #B#WP:wpOu#nH 5"z((X /"Q*=\|<9$(F !hbJ=I>K?B%Q-Ysy: % bjil+^>n(.dy$[ϖ>?zPxDџo#oJDfV%yP)s7T"+02u놩#*h,ȫG-sI^79e^r~m'WTT/3Q$}YZzx@*bWM [/ݶX93h+teL_)\7lPW OhGp^l>\Ys ?u~JX0n'khTZ?J~Ndޣ&YrSy>-_Ը:,+ȪkAגp2ij'AzN[=tH*BVvww$*3~&f.xvT.!oylo@{czG/13e!LTr3B !Ҳ_JuG *YL3SFw]D D{] <,eQ^" F5*i=8Y$S1Ǜ "p][;/}'gG͹( x6]V!kS[F7<"4~pS Yw{e*H ` 7 }7қej<Rv193 "\|pZ(IhhWmT iT%~tOƺ5QgVm=Î(c^c:~C1šl\uF{ 5!ψ`8Z'#:C?P|QRǨ/Me]ׁׄiRH\,̓Dr'!/:%氞H lX,#PkR7O b[^'?v6)~}4Lh*DSvG=h%6p^助mɄMSI3C u*.{rB4\Dt&k׆# knz\՛DB]lK]A[C۹ogδڭTFς89h0~ brgCqi d+) (90o]pH{ szsAEd\޳6wusbvL'xk/ӝcqV1󵕙8WYefp»re"wNhԜ o 3;s;JRE~.z,h#k̒ՐE͊'HC$t޵{<ʦ|AymQ.4ˀ(…ʩޞe.!2qi s1(M`]lXˑuf°5nOw)}@rXb؋nmLXYaSZu>iԔa|ڒ/X^mN}ӇJv }$n&o{~&wm9A3eSv3K륰D |$ HKMyԯ5~rק!syN~!PK*/'&ihÓŲ#߁ PjDU,= F-F}@dVp^}sR2o{_ x>ou+Xr~n)U-A5ÞeTT>E30{i:BZKmU F}>Pݵb2OyHsHyXvNةMb(ߦҦ*/V\_QKؒ:W2`4uq-ci ?Z/K?9j?-SQE`ڥ:vpgK21OE S+FNIG>ly~zkM|8O LD;d82r%mwPFPs(Vsb\ w2\t=EO}gc;h+s¿eͬYc|oTT_Pq"~ Qк$>RST/kB$"+-凯(z"U{UD†^ vh10Ԗn'"5ͭ=S)=覮"3Cw 8 ^5Z I!ķ3PsV׉>b%LhA$pZKnqM!tDR⛹"@C:531oeQNHȔfqDix<&C*˔Le\&@ 0S5 kK Tx}2Q+|O-myjl :qw$u䥭U/auBQ)]vh]t[B묟νuIU`{?{2/yąTZ$]_XGYů ܁9 cQcJwCh>%ͨ- 򶏤ˈ hM.>0X>5x)#:^}gO?nY$Ԏ "OʡY(Yaѯ$ſa+J8;Mѵr߸g{Ynbb+Ey>1>13_ Sw_ՙoj0>P;iϻvyGuH,gW{ݛQ ɰ /v \4 hj|1_ d+l *:;ΎQHy0`"Wkà WI`~R.l.ETst0]5ō~.cYԁ2xK|as+k!F93eBxeI-~suYmr4o%T闾|8-̰g4}I?\}<"2xOuDu06mbVjdg!5~QǛmbI|z=^~9|Ě=R"qleZ m:eD܃w%QCpiG{˔C?5gAW e;ۤ0}h[0X.^[ Z#d+vg& ]70$F/x`Ho3_ +8Lr( !ѓo8^mN"XHSsӇ}.7GG4_ ǯ /?PXLoןJq2ÑOiAQav${ ߾Z_eHPbl;L9zD;ɖbl&GI6~򍂤a1Bp{+våg0qC*ii~2k<0V#@+V r&  [S}× 4)|ikR%_A_ M P,M~)ARviowxB'|T-zf߿`@ yag.Ïkʵj*_uA1xwp (=D6ĐfAԎVv:+h ]?-8\Ap;-Cd4eF##4ft9`<ٺ_y l|YK hPn 僳* Ɏ@&3Q6`\q${ 7 4A*utF_z\C{h^+ LyN0LmIQ-溜,Td2hBDq"q<:(ZJ|.t?R اW> (d50 cdeth)e*FMFo9pdKNM )ӓRt +x'^dPފ6ʛX+V +g2vYĕȁS?T%<Ϳ6q/g 9/TӜ:wsP H> * PCP(^loZl w\)!2w LnИ((`SؤJ࣭V;0<Ă@y_lIsE4ZdęG9̡2pX-l׾FTnF\t {Ư:F&u_aҟO$WȦ*Q_YHCеjŪq6\qMyj{HHeeպ%LtMW SaS'/H ~O gFrYM5J"]tXJzzsf Iל`>6H+*DBrqj}9e}RF`'ˇe7޸ƝiE:ݏN'&zS8 xʊZMxdE 8:;l1e+YȟhGÉ0hapo[e?^c BP{wՌ|%uzpdZ mgF]Jt)=d1lG{o3U-rsDŽX g/̈@/rJ=hx&]4e>D+I{yEeajbV5yZ`VqZQ"12!T0B ˴ɫ2. 9PEV@dqq:E'\]7':٠e9SoJHhɑ̟Qpc6\4k񱟞V2[2#[vFO}}qWxW0 t2ǀ 65# 1N7ARpHcVxT|sRu>> =*c%jj9s#棚`R2=( 9#u~=N3 ܁;C[th>V`n%<䏪.W ¹6V/])qDE _C a ҳM ;]Gež&ZCiĽ]Tw\[-#E/@_[#".b܂t58B HYt 5{wy}ĨBs0[N+^Q7q Z15I3@0z*!πsZG9hl1ՄX:5'd1EM7և"&F]m Nlp^XtUNq[49񲷫F02<7k`\M1V돠afUTC Fm58PJwsuRGD/i{;'=?Щ :TԹXEp`1~XCnݑ c_u,<`ĆffuT&cs@8KDf h*-Lﲼ^>}<_LR"+:UAYwl^Z@:>`5}e Qu@gꏑЀ4OTp6~ q@M8iXo!LcfVq`\glb{c,A84޳njEl^ e8Ԅ4]"Y1INy}? HќbnA]aN2iMH{Rh ME~ 'ח36 4r0bT4F)bu}!PeJfϽ1tF˖Z"j[.TgZӆQl `B&2Xdu5ɯH-ZXcZPy}LJ GgQп @u -/7ͬMl͠QuB s_  )ުek\C C`/4>I=Kfu2^LWRsԓk,ѣwCS )*kT5 8۷* L%B^Ȫo/WQb@[}wo|PjS2Q3Zc8P繡t Nc0ƨAr,{3~)c`l{30 pQ`0'bl,C pU F*PExnH)]ŵtxFOo[33ak+?`ݦ_Co {:1 e4z Wk)UּJ"s œB^EXdl識+SAT>4jWt# "ϧb*iE e{  s_85d04p!$*1 w?~Sڞ| +/"f2> \99O/- ӗ٥+܂tRtņle}欠 ʺj?kE$yƴFTxW[Sچ=ZW@+l+-xR'6NSj[h%ǭJ;TJXeǻb# AjT4RFYq˜Bp+RJo{76CM_ 2Z j/Z;:K<'i7*Nf"_3UWe^E_m{qi \g1RRA~) >NOH1KGdIGbֆqh^3;i:ֆphS.1U ql`y`iã=݊F%,"14u}.5u/}@sſܿ>d ˇנrm^n@=ss};PL핼>ˆ [ItGӮqs5F.;iG^ͳYzְN -ɕ<\ WNI۲QU-dh >o: ZC\KimyeXkrC*WTT0ʨ~ 8] m '/OI,F%T5+?ewx=w7kX>]j3fZǤdP29[\dG}A}Urү;j1ўO Ol;]VKU%G YƳvT)'wO3b2Ogg$<Ϟ-DAh2ByT(NguLXu񑍭쏽,Cn>DU"7X6+ʂ4SMc}w\BagbգyEe,8K,|,OiV Lc!{?j;߷29 H3CO/CʆOоݙ}1^9l0?~+eC9n-a_/H:Uݲ}9xCc%p ~>n2~?h9~EFneOm_ϒs={'lP79q&Z:}I6 *W~;EMm`c9}@sKޱ \cx+g/Io {.0;aY+0.YF  GH?w z>@ Aɣ[2JC!,W?]H+T_S<5n(A~cQOBc ¹2hctB/UFOr85 8݅8`jkƨ|l +w^m;R^.L;z~ }iT盓F mDk؇.oFx:t3iu"3SX'ң@)NdWfK뮋:D"Hzck_<ٝ˽:K%CC>wT[kgN1]-./5ٙ%v?LӖhmLw֦#*]co˜8Dbtc"jSSN0^:`c@CI7< D}*DVs/%UqJ{K#Q6;=e0U9h 4JD2J=`:3w"]>,HS/*_-R mՉe>ʐDܝ0FxTW͆%i|G#Љ UG=׉hrH}3h|t%.Z<ψF%F-aj5‡+i4 "NU 鲃N#cGSژ喻q+8+ԞrrtdqxŮɽd1bru21 ?K~Q%$jȧ*.k9\,_FH9Tݻ~oBׂ`Z>o iHOpM it2)Yyh"or nJm1*5P[>#}尸@:ý;ACFG-GB`W8jkx{31D3즖T{\c1_}?B RFVǃe Fy0&\ ߔ6n-JɶG/8a1o164ZFaQ`YDxC P `ʴ8VGZ:4ωR*ԙ kHQiؤ=>[CF>efF !CM#qiFv/nц&PQ=.LWz|;MZuik|jF͆mdT㜭l.L1*N`{]c}Yb#T& ] ݔHsy$E6#h݇-e8Ѐ+f}gG|&H15T|U&Yۛ蠐{qQ DֲFBy,~+-*`igdzYl'~ث%毩 <:=Gzќ(q i"_9,? T }4|-*OIqlյTc_ .{dêR \&w:xɱn^lfݗx>ېLg$i=V w':2psτy1Hl/ 8Pkj߳=ONd$Y'٢6i `s By4~[jLH@4 !z{ZlTW[ 7<#*> 6ssY^n5KOS"L=m8F,P14_%+\{ IЇ݀RF0?`Gb?h"_w_h>`$y"Li^C/ }%ZWWyt).',}BTdf250!cw>(Y~QĽ6B';naͤ녺9gJϲ[QKyNgau`z߂dgo&-M'X:,#MYK?#pl@@.E*$'q- b tA97߶_*x;kl>/ LY-j%MgL!/ &"XL×"RimlGr#{܊ldE=>?9\f9ѰhdhL⬌uͯzFeh^S/ %0@T(H6G{yˀI:m ߣ`6}}u^ cv Km0h:qwM'eؔRag9b ,발%CFv.sP@`nijZ ]2F[d>䝤EQX$k0 8%7bڽ[AtQ  | ~ݏ9el?$ ?'}W032W 6"qfXR\3 hYh[l2;q2*\ 6-}u@ l@yK(Yضs[Dw]PVe%V 9ƟTɣFoQ m,6QkjHQs^:('A23Y#ܹ,u)jCv0rɪqI񶐁U@;fӝJ$M#~ śor3F xϖy0QnUr-~j.&6 map+¾G4dUP\C ơxXgL8q۞#kO]*$zPjQv'?<#4O'GIa,MZPJ0d8T 6ߘ^K$x9[沈R KxcߧK$yvkê,ˎqb!6_ Upnײ;֬ A4=|B BV)dؔsE^ܚ*corc#/! 8@(ꠣd14y XΗt 61]4;4^m1DD8ЀQw.kn힎o/^I1itMs}͖RƌZk.i;W ;to).%K4SЊ 7{wvLI\WE<`t) Y.zS8@Q렫317 ?~$P&7 xi7XtRe^de$tۡ8HC^~Bcrʄ]rBtg/zy؛'XJ",VqrbX%>둵MT8eܚYz,Xr/u[2| ^x%514ޏu ?St86Go[lG'"lSb"u6"("31{’X?|)ywW%-g1>ٱ"?Za)}FH.Ȇ1V*7c{l7”i`* \b5.ZUԩBpMVv%K[E՜:~9t;sߦx9 *_W̃E6v eM^|Ia r?MZ\,]tZж]#8u1$73Ë ($i7H7m?·3%\]@+PylLXեhV}JМ P8s?P>x<'LNTH^\(Sq|E֬;3Ic#N rcIZj4b}mGeZ9onegE^vrM[D1`vg&RސȲUZa{gC6u([[5qGUJ .| dj oom3cηL9m_ {FM.} ? wg.M{|L.Kq57o6/uR|luoЫBïM(2h1~hE\53= TZE s8吜6oK#RO]ֆF˘AǢRlwa/P8}vPo*J"!bHƒYCQOM2 U/:C ~0`B}U^j dkpbCk1qfgof,+gT vC[^EDX | s # rK&LSktM_!29H$Dcyp^ͭ6ךf|?^XCѧyi&cM&gAC=jƴ5b!F>}a^a^FeUoMJ(,ŔHjiWٵ+~Q"GB';ݩ N29U=:ԿZl)յzy'd`U7Bǝ#9X򞂃sE_534Z`NJo}@~,g @YW~@}z=8^m o Wnj|jG9UjL'|=V3GUlLbfiVTJAsyw7o+ =\]k|35]ś]0KOTDF?sӺL޻k}S,olZ0`'[ܗ'e-t  2iI?Z.Td 06pi_q&y9hHt!I[!\̝w̤yJEiqAn}wc&"'~柵wv:—GC·#Z'VQǾx_(K~&rw^-E<}_`#jXY54OXhc^,<דGVsA/8֚etkz[}|3tV8Zw}t#?H/UF!nzkr|18`38Cf\a͒2CXQ |Pi{9$ 9FȎ챴PZ&lU7{Ա-{Vn7 7^ m ]{^D$zfqD64:ok胞* Fي^hFKD@VpKam\<𫤖;ΈKΥҋWeA+tgzTNj`pG@Gjt8h[] {?;Ƌu%26R~ԶXfL<- xf $و)lh &I hIE6{+S0A5nv̽/É].^4z(`MAeth2p)ϑonX`@7~7 Z↣5JS *ݥgg|*8[|M'Ox8#::+u=Kؚug]"٪˃JE9n+2ݡ`7Le}ӐdxeEI47l>c0J`𠸬.`T-bq9IyYN߁\3)Zg\M~{ βAa]Uk)=ݞ/^>v45J PցJg/ܠÏ4:PT7SuU?y/3\ ZXLt =GA~;L] .dn, /tM' >R w?욡 ̖4dſ@LSouʉsJm)>[ۙl_VP2GPNEk0.w/,Iiȥ4Cٕݼ%q#ޘNy4t/-hy!2\Бp]hn;g{^*~LXhrrUO-[*+x*?w2sbtP;uH(>xH:bXsj*)e?M]ob.oSLK]do7>qԼz3#@ s;W#ҏ\v=6(<~k10+Ï6%!P_yOB-ȿi[,$a TDkC&R`Ij @ON. d@Iwt#V7^a FD[ Ց/®ߐ5wZ##+#XsKcD[\Rw4q; #MAzX+,TUa@6a6.B,AwPJ£"pFۖul5Uo8x3I.1~Yl(2w<`SWΣvt(BΖ Yޞ9?ugL-Wł򉮔j١]QJ#)$hщZ-|qb. tm7l_ т^w&BfL5<=MفRGjnthE>U>\!u'%-m>>;,: i#e63]+vvcLۋ ?X]ʁ⛱lY`\= jPYqSln__`~q (~VJ<7'-}Wi}ϮmO䗻h)X__Ea\DžϙP^VM('BnFSF MPݒa>p>wWŞ9L oe/İH q I5t Tª5q>8Ew x8Ø ~0y0% 䛘p4Q6SY!-LGK,GƸ jr{08c;xu+vM LLˌq;+CFJ$ty} gAKzȃw'"*I⡀!Wǯ<9o}c=m[p:Rl_PuVIjId2LЙ(BtzT˳i!z[^9Qi;B\P 8$;3ʥ\+a"8=39銠 ?dxlړ3\ܒpL9 bd$~:&Ba3K{|Miz[L K1HJ /*&th)e *n{>d*^BKB{x >.[*[J݈k'42iLsh`*3Se衃 KY^IHw.Z'4 {Kb*P)cp@51tH֎>q<Zե_# YG (^Ba+ӡAÝMM ͻ\(Y`6Ԡ8`iDLTO*&I_WGMa]L{R4&pdTA}3>)~C#1m)IR@J!ٳnƍnC+<ƒRL1gqfqroG%]#1\E,t5Np$ (beʅ; :>Qj:>id3T(eSS@= ,plg dofi՝/ !5[yӳG3\(Yp@!=6~"-ܪIqg y Uas(<>A#=u֓/iVQ*T{z]m4"g, ؠs2 *& 93]&}&H᾿g=dŠ19,eW *O暁#6]T謾؝|θ\(mU"Ɖնɹt[f|٩Y:=T%E UH$`Ҵl(QRIjPNbZ#VZ&&_WըN}.-$Z _1)S4ĸ,Vc4̥xM߻ kI~pT,crrmw1D =xTȁ%[Ab({,Okq5l!Ǻj6 }n_꿴qzߞi͌r=K#* Fk?3yL-^> R&9CMHEgΐׯy:~hyfmo ?N!l4k+q9)nCejFxt/n\c\[hkh0:A5Y 0ˮx^{5qF&wa6 j"ͭ .)&hpl ffy '%yf|[ %RuI5+R6a m6B4+$9 Fڅwh`=\Ǯ O>(F~0+GF gf-SG@!N$pE+͝;=t?(1m+5f 6 2[4]Or=-c|tgM?r:_3e}19µr-Rkg;>2t@CGnv&V9&wjů2VׁHfMqHuJZGh}^#Θb;iR% F^j)#L iZɌA8Iqfq+C{֎ wGJv8cZ홍6ip ~RfF{W?%fqLgmg)HsDϊ} A=05$?a\d=fgoƛ0nGX AW& ԡ21W5hg,=dnJ ]$Yd*侮0=JM\!i  P-i@OAddUx +Q4/|ָ)m--bDhP5\#WٜJke/N_*#exX=ӁhhgR]8GK_-9؝k`Q+me|\12`RGI6 $dΦ(20 HحջQ4 xO79ȵT 1dz@['lsmm٘_r̸S֨+Pk3i_(k;g}B&?ҷMY*anzrE{ @}^v^ H:I_2k?ga{Tt"RQ)76C_;[KDzMuw>A;gMɀtj9L(8ϑioS~wnem8d#VO}w>_`q'6A&= =<A/ 9?o\ r5,e- '04] gg۔K)l<l$N O -pnG-㋹Ӂ` f0Ȧ )tq^ȃxrF;RXlCdO_2.s>Վk7wWfxO>n f~[?"< \hdPdM%۲N__#\Hb- PЛN$Rj_#]e@_hc`_SZNk㕔$#8lXy#)Djo4nE'%5!=p?i b( fw[L:r Sqm %[UK>>`U\@i% u 㘽TVhػ- F(`{{!y^ڒ* v͎OmV%/Ղ@z#;9//@dҺfvۃZKUj8b z O#zNiRݐJIrKI%duT^xG5l wt$zfXuCwO]">l.rb^2؄U7H:CYq-v4g<nKX eא`~e[’h'ԁ꿮z9`6~@[ĥ[0G "jV#aS/K⨨"&vdI8΁tL &W+JItX@b̳uʩkzM6+_^4Y%(+u6X=֔) `WDz7S6iy=ܔ>|L NqN{VzlZJ,]nwTi -جhFqKƦ/ giŻ]iI/֒Ե\iNICuL䄏: TGD)[!k:L$$bK3Gۊo0Z{_EgʬrD>PzRpj$$jԉ|B?3#e2}#bеjZV,CfV:3sl]KM+j #5 %dո2M7%1CS2{Y iLH}v#鰄UƼ7oqzbWm9kR$yb.a_| #mzܾY[Do. F9F|#hZ wZWA^4pE)q]4JbLH}fzL"uI6W 6t8s5ص4 aAi_՛Lk=ډ^K{iPϟixA!L50>!D\m1xpK7xޞ$z&ߘ 5Ceި"3XQ"zֳ!0\/ˣy0aP]7v6 tM0d/jױcv ?|".RqUG=VC RcDHW:v ec92ZŽWC846Ne%?yE~3YQw3hp>NeZ%jd a^O{g|[#/QVY3_8ڑ_ɽqy*cǮ.HjW'77zE: } ڱ))/[n SKV=J]NNlcn4m%LJ*J&љo(eI{:9|ߚazp(Bsxinf%.C-`. @Z_<1ݡZ.xgY JVDIVkQ&TĠr;N՘oL֐;u*$>,(1j3gj%q5#7F"ls缓J<ݐM#D[Ǖc/pWi!FϰpF:4Rtd&#fw%C\Z1w)hKBe8n$ ;*6;!%sB}, @H'G9y9'q|U+X[je\] pă5 խ`<ոU`i4)ȓHon=ê+qJd91wϕd Ts*TUB|e?jn،PoOū_Vg1WWb<ʂGoM -c017:ͼ/XjK4ڷƛC&ɴJHLS%7h:z4Q׼0oH5?EE33 ^)l:=?Xf]yS95WC8(w9PKz]wؙUJO˓x:4*@kഐ0]sk99 $*v֗.PeHp43g=Y7l$8Xw Kbޙ>e̼р呸i<ȮLD%w)E$Ιժ(!xXqN|u1`B zHQlfq?*zjfZ@rb^ik\x.W5TM2MUfT3LN+'L =BtbRE=)H+ d 72x@\ a<Ѳ1ZFqG8hm7FwI= G2}}B1z@`{G:=2IX/EuQ!Y>xey{ 0͏J;|dEb3DR"fwz׺Yl]Qj ˼Iwu,M }ֲf؞Bt5|.}a TkG^ݻ- ?2@$$"Z&÷\3dk)B[ p.rQ6a/҃#~Dy!7 ;7;=һx)s`#GlpGxZ^I=St_8R.>n=y-/N`Ją$hRm\* 7)\$(i}orr`մndl >wz"amYChWNa/!6ɀnNp*$!Qe>cS{pU9C]6a1%JR70ģvo+^,Y$VT 0f7+KF5  T(|]ET[.*Tc~͠hT$d;h 1֓Jܘ @ʭf;ƒv~LkC?EǵxsZ]:|v7G- =G%?DRƙM˓EP֮vT{ M/('>qϹuvϢtx _,BPRݪ+kJ:B`\4Qq/FHIuHvY=][hkR0ˡ\,+:à\>c4s=70Σrɗw!${^FtC6{<Ep{?>s\402=HI~Z͇,́^|}j<Ͻ'"5Uu硺(.sؖqc`W:w 9ov J1a숾c޸JV9[$+wjyDQSÂ$9xNQ:<0~s eր=Z|>,A8Y.(DZ߀ Gj)^UuJަxb8E#zc7x;y`g HdAow3l'aݑ@SOeV;M =a72ElԹe*1;ZUfPG/o#N}z8il]#gՉoI_# mhx;c3D TK}wyalO莻,G f껟cݳ=kNi"GgNǵ3$[5n†u_WVSrj堚mo+^@f.U LIS[:؞0=NT=A5%*ߟcyXy٩Eg`J]_pF|E^&vj瓅 " P8y"]E. iP3ESC!F Cy?@pK[ЪR q:'Sמ<ۧaY29g9OA =}єBOWAl(Tb2 {zO+I @UyJS)57vfrvi(M,D=kn0oc\І/b*aIfdzsFVSg?C±ҝ2Pvwnq5PN@_d*.Rj=D|O]ċX[PHaYIKʭ~kHy0mݿ_ȍS:Ѩp[_m+<6egj$JO.g[5AMNh ̖d82pӴEإHQr/ ZDž.5-4Ti FiڦCUJ3a c+"F.kNf!{HJ -dy_>6}ilڅӀ(VV~l_Js9`:CcHlkwh"m޻= 6tl,@],@dS@Q}J2l-ѦkaIdy`%VF<'7׍υ' NF ­;Xuw6R7_ʝ&vU Iu0bP(}pӓ1{W)/O8\]@z>#^\9+ԋYHTj/3xXM [`VIv"+O7kK*D!LZ q;~7֠k7oB`_bƦOs&F۳q֞(r1~:}VgĒz-ZL\"կ ?OQ@ZLWd?/CcҦ)H.=މV=zCDHuD/v[xp51Mn{4 xf(G*ڤejh #%٭H,Ѥ~66\w %LY?=f]U*0XDxy!iOo?bIF~E|'6%ó}Ps[ l8CJ""&wO "< Ee^7b {-g5B,'0: 5׵?. (7B֘ ?5=ED8ffē<;BCϏƥq6mh?c4^#/Hu{]6Pt%9uB`5LԼu:l溙jg`7jZ+bxŸIȻb_1ٰk2(Jo>֢ɒgs~C8 ʬ#Dk©"{em폔$h5vb`߮Z:aA{ǻ̖mͤe ꃞ9a^:PGwr0#'t b撝qqqX,7N"@*b?c\) dr[~#,66LҖNānLVTRJ1$yx?e+2%?;U1Co]}OW'o8`<4PK)#YAX7/Ȯmo'_?6PxqxtVϬvwcRmȚJ  򙡌ܥ R<=~~;DT'uUoFqr9{W0qҟn*alz$j*%*h͡uuת7TW`4I=&0?[S'Bz}gYItբ4$ k,:rzcW)r$u#-N˪6QL+xhwm؀֨7uOtr ! ,VՎXd MdQ)%#b0ttNs8tbLai*-+(pgt@H`!ovpWޠFR6!Fv&lfD6%& f-XNAC <:ȯu3>CmbQ"*OnO?U0<(+'NsϠ#AFs9crNE F5BMJ7YLֽ#! Zk6Ѽ% QpvtL!%U)Q|6"5Q51Z.RS |3i٣eͬE8]DDv iorXOZ;1n4J`LZpm~\"T_E$6pd0hI̍ LxOX^M٨a=Qm|_$u؍5֓i3{ @e3cwdC +j4 I0M!|"hlX4IKhWuZ7aS=FHl)3'kbGHDEw%,ɇa{dpf3u0b&Ktz2OL|#(VmC - JBaW ӞOvi?t܏6Bboeˑ{Q=rV'/CKb&fӚ R?$gD2GF0TZ#خOW VȜ&s.< V~4;U-M7.bzbMDOJɜOR(H[q,-ExA@׎SwMFqHr 8a.༱P/[8~ 7o0 ֤JwafxY/] 7+f +wkdY)Pj qeʮ  kc9~\ygӆ~g7"\='5?[`Kzl|߰#= U*=zT/REYj[#Tcț[BOeJr+\4Q{m"tM[IBZ]*2g "YZ ї 3kZ.?=' )ky bHZ3? :;f<[ږ>^L-:r FKź"L(w?*bk5SG _kƬp <M#3Df T^ٵ1ןultDfç@cVz.؆U)(\ܨwusgSOȏ-/b7o`0-" CBGlX/Nv9g3o=k^ir( W\2&0i?!CHy-dRFd;q1 4c-8By&~ I˪0H5Q\w5*F@,G0~IL2_p4\Ji4czU2.OW5b9.> Ɠ"FmԉN1$u&:@@Q웇qKO^FeBؓ.+V5=^ҮXBvw[JHsbKm -<0'\H݂z[p,} i 90s`ȷblu<4RO Dy+#w 8e`'~9&Lpx\3!z!aLi +t \UiAj93l+|7@-ݹհ>:3ǰu_`=B ?cpѳY(P_aK%1͐R+w(DiKlDHD_۾LFv;8ŚDߝ!EaWXNh3/(:ۡ ~+^fh0(9̺!щl,9q4xmQWJU~,v!U'E09qn .J77pGtnHDSE#%!B3-te sm\5#,ߋ{s"IkߓK  {k &N1`N\h Neѱ Ϡg,Äa#ҳ-^84x?4L_`j;AtvfRx'zVw֕ZiW;ˮC;q1э6VmNydLPG5Re=QfOZJgD$K'xz 2ՖC[ap5F&Eu ` [\>{f3mhw P_<ySx1*ݛekMˋa$U>t}(/Bz'po 8vd1[6xEV<3PLԍ.=GKi6"( B^Yؿ9ޟ9'pe}6L TG-r+@/"OEwte]$q| j69T~kùS:f\+|TͺԺhqG ^m)c +j6 vBԡ4xaKOwnJm5OVɻ,~ts!~e( Kph e1iA1;:6u aA"yhL/Yv:q"X/OV 9!yidV? =@+?I za~j@Lx@sʟwhmy2GlxyW*_A]?! zrP`WqX ~/v0~MVmrpgIUzPz=8H!mj2>m- &tq5aj{esuD.Nh &$}@8+c4>X Q< #'lR]91T"eKHʂH*H6Peg-m 7e,v %*E3e_}əԕ^9jB;-?XAl}t |S>jn?13R$_X,(u54dsdK%N7yB~!XS,Bݬ? [7`$ÐѬۆª&q p?d/͎bQ?,S5qK^DlBЫc cun>Lp{Nsd1w.L0?Ī!6⧩}H疻l$%#zYy_;'H;%q ߎbFzHqBq(;%3QO}UAխV';x@E8^+} ǧz, *"5>s yK}~ y]rc\mhpԋxBd G6:l\Ύj\ǻsڞD\b2\nsƋ޶s6Q CAh ;aIfuYB Yb^{C z%M_\## /ETF&PкۥEULs"6j M'o1R|SO&pO|+7aҀNPQ7qI` w19&:UA\֤ N \6tV};rg޺3[=:C .1nUQXK]U1 B֑x |4IÙ(xlhedt!j&ڪd9fcc (ܪ_p3 ?rD7(e~¨ kgC3 F$3P2 cZ9db]a(=[F2m[6F(3@e^@Zj4!St!Hl>2؉\x;Q6\ݬ9c6慎VY.H`չLؗݖY/ʐ 6>`y~hC$Q fZV1v3̰,#*'*4z}ܕviޗSgₔ  |Hw 4,f2k+k7BMA!E?j:Q}:[T< xQЮF)~4մ1 ,d[_I)\2tKs0ZӅ Q`oB̅k%&u]> tVOe"N߀ #>no?-ұ@q흿y3w}{a-:D&غ/}]JS-\4CpR×с h aT/^]!.Jʴ C0akz0/o tz?}_?/Jw_#;bx=*+e40P$hRSëdJ W\`=d5({ge.ӎ>:#jL`v2+mC|HUmحGr me1RgwɦP$ꕷ `'<%842{ XT*ӰDŴi-=N=5);DŃ QO://)u'2*;?Iʁ,C{n +kùO8>C 륺&,7)*eptb(*34ۦT X<Ѧ9vJq,HiuVdjkB>duL \Oc&OL V>]6B|=3X",ᝮ ޅ%BpêAfXʃB#J^Q IM7ӭsݬށଁ~+fٝ?Wf[2ߌ鿰 ^: yw(a[O+[i;V$N3HҌ<=5{ߒ7 JY-4FV$&}1NԆx+wv2I>(N\,W2K=d6&oAm/$ O> X(S@;a%XKcc/_śkʒ=piTS6D a__<3bcUi3}u?! wGJ2DJ^ Mnl=$c1yd5N#З|fOk  g`QWϵ1'U3Aj袶A\֤^?Z +~1* /x̢V*r@Vuu\rmF f8H~O=iHȎ%׌K~)7VBN%53"eC]e3?y2mv]vqsv3yș+My1ٹ]t!|ʊA;bT5"~d\VR("[[Ppߟ_;\K7N>%m Z0ʕTw1J uVDhn ӏ r)>Ī2VJQ,j?PFhQI eMUOԡ?~0kX1:ѓL@D@`h*v IgJR"?YsI7Togzss8mlH Fމ>:mǀRv{؀@j=u`ўnIQI w[Io?0%']TQdG%]Mɮ ΎvIF69vҵ~EpY]5Qk)zղK$ U+`V "O>ZEgYNVĒJ~yW qT hI\>نhytp)^UH-bS,5ʪ߃_I;yc/(>Ư^ QCe)Uʿu"y}Sf*yضHNQ3\Ί0*ו?&H3(X^q‘|aj [DH@kbeo#KB /Y=Aʐ) K\)!(G)46 +D'"<Y=M! =[H  'C3Zr ۲O7 #sei, _æn x-R4v) )}ߌK&˄'>cPOw#3FbqEʬ5WA4*YPPNM5T"R'F24LJ"ߜ<-k@;zV8sݡGx*Mė(z6\*LG=N} 2ߐ1I&7ݫ7~JOzZF^Ru'kq8Drxؗ x.MFeէQVw % Wa>:4뎵 AH>87Sž8xN$d+JrHIs!q[1%^8rՎ$!R,P[ >1$"]vR t+#@PW\llp&KO]3!¤n|D.7tNY.mQnO->&$n%zD*xg zlg,}͝Ryҹ7kZ;SsnS )cޟcJ\ָ&J4+?޲&"j [6)3k!?m-mhKg(oot*;u*+C`p lo5]VW気!д hnX9b ܛe:&^46 #Iw#2k `Bm:_9\o|]̫ >U:WǑT,Ƽ=\,u "ATܻү 5[xx`+hߚ!zdj]~(Og BsiRvps< N=gC8 jc0h&^&v&l zCAg7y|AX^3{2bju" * jIt U2@p 45@4hg BxdY7Wq${t- Ŋ01z=q{|MA3OENKhPvʹ}jDѮތk^$C~p|*Y* }?ILPK&xǂF+<:,4e_ES y{v nf4 $ /7t*\Z`nQLvzeq0eh3@x<_!b6_OT|Lg#vjJ+iW -GA^M:5}WZ}~wٺj$3aKfo\C͸#׊(GC z[̎ 'j%\D >瓤c&ئ}E^1L6Wu]r@Z _t7r'^puE^C!yj_r!})|# 6II~\,)쥲@l ܸO<8@g:1LH Iw_@Y4as*gY_~HrA'Ο}()>L3[}d\Wb>ԟ&t^J=5QY:'H\[s =A'D s!X7yⵑ#\S<sq,G# |d;l3m#~poe"coy@+U%&l8-շN}n uN_=+n-[6_6zo 7bY4XK3y4PmQAb :bk@9OG]VDŽDFt΃I @)@~v}?;t8?} c)e4_@pmvԶ<7H&NN"c\R:59F>;Ylt V<%;.,k0xK?4\H+&Y}DL3iZr4:QN5p3vn?9v$|)Oϻ9I$Ӿwǃ|Nws~JH#a]Cc俈(%;pD Y|CUJ}hHZKZ¦axβ%b`  5skJ_;Sk$ѱ͠RW} p.fղְ~`l,(Vsy%ݙdv=G؅gZt Czʞ Pʮ#!ª:b|ZCo na]v"$ˈ{:j93W]&@;ZZy&XmWxo,[#WO.z%wqn)נ2B:u/2uIGx Py`4 eE~FRkz^ $hhkwe Q\;QI13>bNx)$h$F9ѽ6;~òcR={oD`}b`hQ ~%1/ }S`u?⨉%ҢI]P֠) Gh#g;b1T J>[ jჹ85H\0fF˴ǿ#/mdI3b-S&[Iǫfgcx}I(ߨAlr^kXX;+Ҽ;sa>QVMH(JzIMfg3]C茗*[:t5d:i;lb8 ss/VJxs_k3n;&h{aU K#N6MGB;I(Oʋ%AT.j,h@SCrh܆^=3_w4l#_ս}|ѿ1:K ]+*!WP:Icfn!](xN/[`] ZX{#?|. ?{;[Gy';@]HvL`P|p@_tmx:^yOKFؗ0NTsK y-AmYHs9'|$&|nz bn" QQ u[evӿ G]h$@qi#UԉE6єXe>?a AF=̞?;\[ƺs+ i'{%+, Υ67lc$?.FziF8f)Z|;U~@Ǔk7<1<6ǯwhh2E/) 3ok ZpfD=@}CJѠH+ |Fܰŀ"IiH0p ZDgJ#Iq[/(="\vj@x"E(F)cY2Yc0nRsґF5<05b!z>'f:>2ݭH?J()x =fGJڎT 9+/\qa7h[bRTz&^m%(ޓ Hv,\wkhJS^bzp9DYvO)~"yGdrQւ^3B? NoPj@ɬP^fٶ˔ݿL&oɤwh{]#5B[AX$;֭H6rClkYCK:e)>[n؄D\2?-fFYC*Z6n=WD7GDgR*,ҁYx8i |ԹJ[w/Uzը *WITkKhLh4aPDi/ /~x:f#V^Y=+r<ŧ @u M`)[re&)}뭟k ~4s2-K 報B&GI1Q&ZXt73K*ow;^~/qȋ [:C>פ)&| Xe@Y*66;q^$1Z׌G\ ߹ˇM;IE@Ď<~%hPT qq*/ꚙ? ]ymg/k vP,Tkˎqep)7I4ልŗw>+R'<9fY{5կ#|B~QIV0XNfz(&Oic0nyS?H5.D@N=ȌG~8,[.AՕ@ W3Q܆ikT`mm)aoa?N LE65B0_= I%}nJ,eaA y2\\#GIw%`M׊Y7k`B\3y4^8*}Ѵw1|-m唐$?@K ڕQWC}dG2ӅgUIw Raguw쩹*{mGȈXfdxw3MB0 B t'wSlsLqcƯa<'Pkkyx[mFS7s\pGR6}8mw4rv,{s8wg(TIy͍|``GxZCRL \Q*8úCrԫiBSgMi(BK4VɐY+DRQgFVpb覞½"6]o*)E%Cd3 OMWroi:;t>|G}Ƒ*vbSU\FtW _ Xuke΅CQL>Sks%Z,rw3]Sc,A:0y)lbq O-Ѽu_XC)f5ved(fkDmU]P͂^oA*/ͭ> __M&=?O(L<%~9OB m<oU{qWIU]E[J=X'8jNmM}6Vr$r`L >ZDFztqjjuhE Q7"-:9>(L+uKk<ZxԜoxkI[c_JM{1 <A^.N!L\i!̨C9Lhzz|T*Be! |k6N^&0O0tAe3׎~VM^hP? E Xv˘)*?6FcSvC/RmzajrV z.^VF)| 8XnE tLiFG՟~8'p5Ej>pWV=1RTi#oH7y\u`<;n;*m}S<-oA,f7}3͡_Čʧt[&y)D8l@iMXRB*vϷ=e)56w`g0 Tm7"ꃃ2'cToP^FGuC|`gG= (`<߃:#5U*{$^߾ 1nU>Ġ(;L](!1 ;jY(D$dFXvjӢYLjX$uRPANNNKz=jCN_}fhMJ+[޻Wa8RpV0衮X(4XPkl{V,ڸHiO X*w 2c>Lo2`P^+ $4~uY312üJD& #t-,Vb_z+11K&4=]ytv7݀ w`\+Sh^sߤdD PsCMN.в~f4֖1\G$'( ʦ'%'WئeQ F=X~gUK]۫R8;Ei"A'r|<ũJMz-͹#s ڕ]ĦGLE"/IwaM),5-4q6[t]\?i{r[+Fm~5,-Q{ /Z@Ɠ@#NQ+_D_sreٸ$Տ=Lc 4tUTK})^t+T:r 1GOq2Ce.[:t&"i8uǯRR՜oLPLԮ+m9Z*[eʼn: 7R s-_H4O?lx>=w aBˑ! CS[xbk O5W\5$|;x y:ܼu[h$Mg!\Ff2f[Ogc6GDTX]@$H4rJ81 F,1桉YT:xnn T=4,X"Ҫd(HP]rhRw=OZ58kPG%xpEvnr!?vhwG:/$M1Ӌ(,T:ڃ4i0y!&1Ӗ++ GtȈ٠?p;@ ffY4Fuo޺BdJCX>$E(VhĽqYQf$L*%E@2QkPzƘk_él_&]/H`B!˅\Dm uoC@Ϊ6{ODbc7yW=ZՎnxoG&mIy2mU V,@ȠkQ\`]H%FnW)4~Oy)cŭD)ܧKjQ"g^Q|<c 2LѷNv||_1[RPCM˼p37O&DZ͜Xg(+3Hd8 Iw6Gز-UnZJkº7)椄)(I<󜲸 슸V\xkne@U{rzRZϫE||\ʁn2CZHklĶBŲaAN&zn)DSa\۹6ͱ*8xc  5K:ܘ"'5a*_\;׋]R!er;](fԩeI6/m,smàxfg=X5=W-ʔY4-죳 ƴ@3oߪǯA4 n8Q&1 %_DR֩O$ix>:vꥠ60O@S>xElWA8=қ)+{Ξy 7>8>a/ jAu(!<џҥMf;zS_qtokEYۊ\Rk9'Bli/g %9a0uhLV˼`jƆuCs=HuVCUd*휯2 lZy N@` l\~QDc& BxC*S`= @<;楾Ϳ}?((oVgF:ί`7U_H OOy[RC*gMT)[)yE:΋B T|G^8Rl㷏%XH͍'[H\hbwө4܋vP8ZL)]v["`ݦ8#Eּ降_q}%ԱqVFR\J *KYktUCgR }.ol6%\}%z{ CW_~p;7aݻsF6- ƓQ~ԂK.d@F)BܴY%(-?gU[|exIz[~5x֌d %$uYoŽ]HqBy+;ê`M+&WJy=( Vp!!~؋>3lWSmbOYX0[~4ZN02HAy͆E6r!`PqݶSIǃzDžTV2l!hBNk YO52 ȶ6! MRiұߕiu]1Ӳn4gpyIxN0; hᙋ}$zpD&rqQS7.CLMZ%UR!K: :!щ\c(BR&u['ҴbOpW#b eDCvQ.6Fk@1I/U{Z|0tc&# z-.e1v>/oYUܿ֏h#et0}uì )$Oڦp&_&w~jޘ-C#8+_|/xNhӼA,{zptA&[?)} rh˒Tx dA7s)$ߵ= ,B[pM7.^݅/s|}8Iqq"uz"W]{A7ҡIV!׈z mJ# EϻC?l n y͐ьQƚP]{TNw7sZO 1CX9gkʴ(GB_;GͱE8O=X}v8"{ ˌig\Fq% gBv WdKYvrHȐ}Ї9sE)Y\e~rn+qޝ«XqO 齱%Tj^ÅV3jx#Isc UXS`:?E}>s-A?SodW [gwqym.MV/N|߱`ÚB@Z&h=/{/U.۩?FWtxԃU$SFR )zm0 ZB$PW]bр-]iklxdUC `ddl"s~s[r(ZPh+Eٹ/Q4#>(Ik 5>fvQSA`TU~+FŽRLY7r Fl)| ] RB*"UPRƐs #\J=cJ} +8UEUTls5%RU6y sҵxնSζp!r-RM D~lCM):qᥖ(SŌ!ht*ZEqݼ?8Kj fe#rrclCsklʰ5ʃp{wq;H~=#]#CBwBjA|Vp q=΀ʏ/c @W>b@/1ʒAO f@s)t K-t3Ŵgg;&eѱ.6xOf9҉3$ @YQz$#1qSV,_+m!5μbϊ6efFVquˊ/;nIJZ_dS)$:YG1\#}eQ/j"mšS̀Rw`ѫQDn|2xߏΌeyoa:*UWI)hއ)gZe[ުMV^З ~")ih_lBRG%#Âr򳊨.S,<ܚ#I  0'yd2܌e۔K3{Ta4/(KJ {t+F iMFN81f VŅڥW }Q7J(]G.F-^_^}w㳓≸E0cĩW9ɞ7}0h D L&|QnSr\|bb ǜ3f:a'mVM%IK gLS[jݲEw=\.=DecB "}~y|{P'jtew̗@u|}S~B( ʎpE . B݅c 2:.''~0yJem fU3Z:ǻBβI@*x3O 5dT(-8Uhe_h߂JBh [rweG8NNPp`(IG6wNf% ;8jVY$ |^aTТT]-'MX,.~t;4 z-M;hKHJi^岁}(A \&;cyH<^O;#[̄Un:x'$#ԘpDƱ!@HkZqmtIt ';Lh)6x.uãE)sa'R|,?tmHHui%1ҟ;޳h+Wa'Kmh!o7@[uX^$V0 ET=q矷&ݮ@2u^.7WGD<'lDPA`5>0"jo538Ntk jwD[mT]6D˻ DoiUаo1=h98Z ioLȕ5|i ;Z׏ՋM%6m(՞flyz*0T]m))ǧVM OM {~WFX8A+MCҮ4P(t34UlU/ qx|flc!h[=%=mٰ #a|+RbkW9Ү@^lH҈snJ$m5Iս8.3(PNK]iD(=Tngw:iu-LxH=g!;F ?• ]׾ڨi Mگؗ+0rՓZ)UCq<:Gsq\9p_Bs5a8v$܅\ i(b 70WE;JZ6HS1KCZ={'а*x|ǎ-S> [n5""3iIQDyeŲI/1 n1 C[cSwB^1% cb -/k;"  _䔡"TBlj(Nٴ5p 3rzui!Q€N.H G>=Y@X`N$ҎNuUkDYޒkDuʬMAI_+j{B馀G+L# C` +ˇkB0MRT݃xVڣ p^)(++ʔwOB%GM2j-'+;Vв!ڒdwKP\9NqR2 ȂLߕȋ*G?L(u],ǻ-|5>hx>v3& Y51^xs;~Lܻ3 :|; vI[ M2)UY[uCWfĨ[%c&]}6'a4E=Fd?__eScA 7?LE7k߻H|~[k93>7W<3=;!r F_Twrf]-Za;RrTվ2%D}:%>Yb3 m:\Tb?=4'=pd/^ d&n[LVDžĽ513 | 4U8_G /nYz'@WL )qvMž8+;Z:GlyctrJzGu@5锧QEImBq.B`g:;lLޮqݩ1K-ƩqKC W̜v8LgL{'b@i֬|GNQyC2]˔0b՛2PSp!t7;5m}[ PD~Aw4ce!W(39LFdM3M+Yu֯DbLmN'f*ogmC#Z↴}|{U=Y_3jbnrl^n9\XvBQW^ Qyǭ:жKȽڱ,z>pz,Ӆ(Ҏ@6K]Ib!v}†|tdxW?Ә/V❆A"0OԾf.mU1Oq\2TXP  *T0[ڇy,F7`s)db?!xڢ!'".f2e[Ҁ͇lI.T[$`!{| ϭ"%SϠHؒ:C/`=!|=>SvxF0J&|q.f'ЖlKC,#* e~cC!Yg!wVߥ+h n Ԙn:) 귷u*𝈉&82FbH?~яͰ xv<%Y>[SٽwRS:%?޵aQVuj;tZKh`3Cm2'6`~{J_HD~ ~_bGÿ-$aiN( @kq|fljxJ3.5>ulNdFy3%ۿ,36@#ۓ yB̞SzWFԤA38̳ImشT8}=(M~H1BZB!xZ:%[i1#N{zy΂1PȚ*"?F;֫/wDu~W 3I "*pIԪ0M#~ijRʧոI<|\xY ̇p%S0P)|e˯([Ț,XB ;?PNО47OT tyxf-ex\ٺ~Ot1˃P4dbk`Eϼ{D`?`P(oh ߡgMZi@'c}bRN,G V|[i!`9eHւcPa/5"3 pp+@Wg( 厛> _WyܩMk*`5a@lnP );_2U(#8usc Ki|𞔴Ұ~f KS5+ wxc I2I<T3` B{eL <`9M18ʴ ;chnr<2h>_%a+ET%/tށ̌-BFm*ʉgor<!%C2?OTۙ "c'95_e% PU!m> ?u9ԬE/^j'F7?k~eA6Oc, Ʒ@3oe,vl!B}@"i&(#WwƸ8<e9yvMX\IݖwDq!aˆXjq)4kđ7g>q@4%"K.i{BJxlx7W'W+<$ ši^sW83tL){%RP9'nV(ɇ9Ch , HaS5&0!yoT-dKVm*ӎJKXe^ ңxiʊ3 $[B%4_o+44K2E)ى(! -bT )lBFO[[(IH˦V)& e6jl{&y$lhEz7˺1=}qt %b736-OW[7`'9(Mäl~]# v@x~`.&2N4$$\Ľn&ǧr'Hl#׺֭ L`5=_҈}ȥc\RePa/ɹޮKAN7ȅ¶I&a3Q;G"1q"O$5 h (25 KH۱0dLJSpV샌 Z"}O ]t"$'GK  Ï,MWM | W(,MG_3ATR9HWŠroλ_J[gA-5W$X] Ky!E|>1FS8|}0BBMDS| N8 1$~han~gmqLVBq8U|4*ȰϛD!o dr6H$t)7 8a6Z">U mO1.g 5UP`S-bZغ;VO{Xx 5&M;NӸ4iX#E`V쁙]͊.d %{o֏ދGuAkYCYfqqad \hZИߓUH@Kc)ozfzxw2<75@ `"ѦG\ړus;`,J$v ֿ7A@w&m ʳz(Aޏ=6 bTeZ7CuQH+L:wy_IR2AFڔ~'3ؕ##]WXD8E%ɏ/; ,mgf˕ʢx$vrc-PcfϋXO  Mxv Y%EQuʘ@<%6p""'&-Uv w-t^)82O߫C/|lm:{1B-nuێ 9)h`oH{Jdb9ݱ`Rƨ2h:ykkf?~WzTl xΨ ?ngr8'A_qٞCYOm񕤾!qSG^|Y8G1>OL8mZRUZn3vZfeNg5q&;K"aHTB$x~4Y`b*ε d iWԛa/6c '1pђb+[_~j[xT~K}ڮ_8iیnv aZI3X 't+BށdDpJlO|ƱpG.^\Om^+ʥeONmOݾ}B1m u4oׁJ1J%^$O{K;N1e.Y~Wa|IppH4;oa ;nF3<-=P_k 5?mhܙ+Qs>4 F ~RhۯC 6ˊKÁJB\b`]vZ@I)j[ӫ2К"%m+vl|$|#(jןrGBt:eo&|(!7r.7=Q2UY[D4U][4z v׋25-iI:Pq;睺XLTH7l޷((VA.x؂ 2B+/rG6gnDڹ>ڴViS;5lV Wt,yhgȄ9yU>v~4;gfr23@I:-D2H eWՎ=\/O(anW ̠o@:jE1ش 8AƠ}IMVs,}] UVbXڙ"mnemE;\*p39 A-Zg)N!K5C M'Qc_Ct@u9GDVΔJxu]UH30{6R)7RatK/'65uդTJa x-дi$6o7Aɲf-&Avi:ҶWeKR:6w^Si kkzBpgVrꍴ^M!ksC@n/RN c3{8'!>$o&0W2>O7(鈊}%6&0j!`e_}|8zQhJFKIu_$'u@OnW I%^8K7#u7v?FzȤ-HpHlGJY|<5SJόceZ5z)I8#v/_R3U7\'*h4 B 鰦\YW64ƴhfzE@xVJՒPy(+7^NڜQum\)VbY/EI| b =@fͶw75a265"L<+ |ޛ(NL5Z @"ܚXKFWөb\ Rk&l=,^cZplJNMeATz"3!&4 6jς)hb>"- ։ Q3*%}^9v"< lX<$ɧo}lO;Z4`jޝH#gIP5];q-'tFF p^=2Lu|y*3#&=-m!#*,Qg0hpbd CXn1s+ypX<ѝc{PFQ^)qT-GMG+㠨5u߁Zm&r8đZ%31&䜹ִ pZnS_\AN??ALC9"_BV9 [n*yG φ+MUlv3g!jLĮ3t=e!f{IvGD V:bȃo2'}QV{/lQHv{Tfl"@pQ0@xx <5䒓|(p "`5/- bYBk3H-o>Df4Ol"%#h @ç1T+ d)ca|s+kKÉ`+AF ldF2aj;cm)sDj61 xM.~[ibIV/>} Wv賦o8ke)Hy *er}*x,W Jxr`c @>3 =rYA'Cf[$Xhg;_|.I}ٵ3ԕsyp9znZz0c@yhY[#M/ }ܛ_-)7E?+Pݙ!4c s^pI ~V5T*bKʺmyvW4x#tJvmrc{SKm02 2aY?eL鑿TDM09\ވxvzc#˸O—z*f-ibh!9TDsPIiWFRaie:OT:rZ'q + 糷e\xMaG(cE Yi\Ѐ }bA8#uRQ>)(6͆0]MϢ5h ߔ.M~תD(\ŒN,Ec+E3&)I놃1 /k^dբ MܽK^A@{#)F(҆ҳ*7 X^iyKjh=94&D%9 /f݅ /A6?v*Ͱ"tɒb uKڈi[Dm)ipLSjRVt2O) 2}~JD<kRyAMA0S0姂{IX"{@p371 6(9x[NAc@HPˬV,fхÉ3|Yo5 nD82^Vvg9Xb!vI8d.pr}T2,8ieo_G/ .pRD] њUgJ%U+.SLAZ%G|Pf@:n.qJ#P͞ׯH :5y0Xdƙ֨F>9>e2IWÝJqɦAESYF&/fXR8{!c;oljCq@۵Q`]v'67XowBIvk-`9ǝf*|gHLB[;04BE- ޝ]Yu6@VG)1#>h1XĦ*It) vR,Dn?5UWh r8*Ԅp'|E0aҩMxrB(xT^N(z~%3V(c|E$P[5Q{2Tekwމp^?MrՈ vx*ꬢDFPUHxj)NU ]r=B* &$6]=ehZkLiM*,WvDJMܮt?O>0v5wڢE8_31Bvy]A*M,+vEuMh 4`ǭ T5Y=C֙tW[3 >%{ Ys>p&Eu^c;[dZW&E*zNx+ż3yh4jT56XOƙD윸rkxu'J*ό :[+6\B!+ԇ8'Hˆv3YP0H ߟ_ n,J+G*N=حݹ!p7y4]`]gug}¶]-0H7S;mϸ`_ʒ>n)#6oZTmI'icevhpz .P\evP )t:LX}Xf}(kċg/Zj'A 'iɄB>;'ٽ ](En<1R~w4!pƣ;EKݰfn"dikM]xD,RJZ5Zh#'F&46O da&HDÁHYqH~ht2$.N/uE GlR.j{lʟ,rIQ/rEY19(e0zGzA̴fM3v%S 9<8ӣLmBR1J$[!yyF'WJ@FS['"֠B-w䗽@iD+ѯY]jd2ؒLJ3%\\.NGNYi <oeŒ}י:7aQ]5PZ T%fs`A=ģ1Kə/ȝ}=qO_rI\Ytlo1Pb~@ì"^<QЈ{߈FcB` mPe2Pj<;(:`׼4\ g:aBI){Eml~,vI$_x(jv>QC&(q_-Ɗ(7MjybOz_sG2eu^m>7;j@*MɎ4rH\_(}"ȿ &нi`SN@!Aʐ=ydžVk;ls*mdQ¨h.`0zCTjC~e/y|D^?x2hi{ HL_2>1@} 瑉lsMx^}]qo%I (/t#.sAI ]~2s^pi쇵?m`Um(߄{XW|5LJ~Pk(rTڤVOl< % E(xpe@tWmkȖ~,)2.!|*N5j?Yg3b &:s帥%.sQ"<'B;wTЛ*C}Nb#|{K,fs|A2Eyv1óƭ4VJNADl:' sSH@f*I28&i#0vb>R!F~kCy*9tp1p3%$B>uQ3`_VċN&S7!*q{O9CY'I4c%Ոd?,]˚vjbt)1j(G<F)௕Ip'}n1R0$Yӊ~6)5d YjP8] /D bR*V۩}w|%,WBej&5pk7~ 9@_Sm͛h'JIU`=%ER#PpEI6-hp-s+HLJC?cY'OLjĘ#-I3:ɡR!Hr݅OTB88K @_)On_I;ɑqO.Cɵ(E~@lݧ=zpm(%'~䭁[G2 qu/IfK[!xC2a3o?j rX'J]uK/MܘeޅqsW,fPw"׾g&G;E5'hru֦+2ԵE%kk=񘏻#p]>{#ǓHcOC~I\seba'D; 0@铦c>^G@`nԩKyB*~ 9 kS.ҨײP;#zKŷyf.u a$?Ok+]r::v<tcmU@vTO3Ȟ3 -[ߋ!w/ª#daj6oߕ4Tr?cD&h&4Ky&kY*Gn?zн75־Wc{Ya0n%0 ǔ\#ڟkQN` 911zwd $A-͊%yaTw+`)hقQDIQ'ػxl$IB9v X9Yɹ)Yթ* 4spzC^q0]3VB3b#veͅe|RWg(w!-sW5HL.֎ Ot5z2jCҸޡmQ65+˛{;UǸ۵̲yל3ؔ>L7c>r•n|1;X-p憩sb „OFuϨ{R_9}G4^8C0E40"*(T})#:fƬm3K_LC+TH-k/:;lzG8S9A _$x IQKgQ@˂۶eթ8oUkäb&"\J^%̺u"I*';CmH(Z'J# B>N{-9h!0j$,O'ҝh0\ V?-AДoZ_<$l/{tPpM0>L7[{Aϴ?aF/+^e gom鞅S:e1vbLI)Rax:k]=6=n4bD?+wB_5=d:k wT|l Q,+O!C+J~W\Bn(WԆ+S]XUWĈѠt=R]@B@=)\ 3$cvNB_npۂh2;G_RYx>o㫶ٮ:}áuNԍwl>W}°IBWE'KzjA}QT;mRc84|$s=Ӓ5ST$Fc͓^X<_I,n! da=, At!`Gi_,br[[sn \zC38i'Ʋ Gi ,+Gw{Z'T jI;|;YX)PIeRF wa)%5gd3MSLEJSS~ &7kᮟ2g(dٙݽ#3bPۊ'XSi~^ܻZ>Dg%%ygW#=y8es,ĘLt*͟=?yYaWXImHNtBH)0Ie%yb<:ײ8{S_Thhٰ\"VH]n|92\>Nhm3 e ֲCqaъn8 i=n[+\:V}JTԬ-9w>y-#lp[ԀC-sTk)2zKSYm1iO R'*+rfG(g5zIcyrHkH~LS2H}Gɟr"vշCVw@0iܻzgJfrN Ґ3Nc-RD:6_UG9P\͸hJmXJ:6UksџK󻪲@ И~˺*>nQI!Gta(F/ lw^QqB 0PHW+c:l64wR:nN|"eU!7׶3Wx䟔R O+z%Ӳ$4p@˘ )p*K n֣ntu(b55h֯  )!09si- 0P94AGm&5%G*~/N joAjD:∎*c&^nCQONMuJظ 4Z| 1BKn2%{Y1-  #Te@eӦAچOWaĶ Z[(ךo >mȕ|9dT>ڇo.dS*PXHfLF@?k֧֕x3/yFC#r-%x9,"!I[m|(]17|vj-R:>(3ӖP&ЪME-~*Tv","u׋=*L x^5"'+QlHFGڭ?cጨ~F-P `ix0e͋ըa)'dB镵.2ssPt-' *4)@X]ҧI~+Ah=m8}-tI\KLU tyZ<xH־=鬃zs'HgA؇v$=V%Н\IYUR)@&Ag "CmY~Mmk r݈v=TV -R{H6E- O1Q_ŵu߬VfXۏ[Y*=l!C>s+RW Q5my?6^I}cHjGfIX3{Uy Âa&\O!?"}>s6qx>ɑAqa#++Re.|E3$]:c\wBVQ9\>o+L҃4 syN'e.1*-4@鍝?QW)5s(|m2M1X,u"]G)h8Ϧ{ȓDz P(TTIӷXfׁBR,ɫ];韏6%"xP{LdoJL#So-՟gݧa\~I[nJܤde0ǂP˲*E+YSE-"t=HH́mz?/;g|4TOJVZL)1wf ;uăBh!Mý=^.Q&X% ]/U]L'v~EcD#ȕ!PzM0~OQ)uh,Q/tq:VNͻ=F#03/hi *G~9џwl%~I!gbSoc,Ts.ͩ{]@%zlG0L#P8Ӂ(Z$FoBx)#`:ϭ֌VWbq `/lX1y_B AGB?-#Q)n)IGy A&` ~HtO,F9+nS/fB{N(h)\4V~!YޥI MK4 Sdn̖ siKVo GR1)`bİ偁k- plϼ@~Ӳ2i*ýali#0X0wAyK$W5?կXa?ʿG` ڒIr=%'?E8PK݊eI}s4f:RoN!AиX&~3BTΉi;8]J4Ri${A|œЂqBZSxlvJhhOnrQI4oAlXAⵡN՜?^gZkmvXuj(Lnw)|l@g- PñӅ>`a@Ho ,SG6x m+Mlp Dg gR y}m1'" -L[n㐮ys Z~AC$9QՃ?=D!uMEFӄ!fnЅ+5f*8Lun6sz3@7f,(!esA **bv?HK&g(-^K ~%VUP&b+%P{ua,O,Fhk+Z$ IyUarV]ֹ3ɲ,RVwÙi9,]ʯPhEƢd}Gl\]FՀXN0V\fN)) }CcWBR!f@{Y86[atC_D) e2q ( D3g{+/̒('BeAlο#_"%^W9i#=[Gw[tjsy] WQM^ S!S[9]iN8jVQ O`pppǸy**CÚas7we3)9/uyc#^1wsU9 "X?h-\m8J[_Iާ6x\J@CZMhM`)Ru\Ar^ΐ.!'>yM o9WR[K#jA`k1@4ـbIg}$}?:~W@7H˛Xa/ ʠʗ iig]d}F ډ9 N S[Xg< sJhܑ7:{ă֪wVo MHq)gShs67Z5ZzN>+. Cǔrbƈġ1LV CH NxTh+yr.:9fܟBPB-A|2d5.92)Pn^_wVb !mWd+2R`Au)Ϗ;CMnJ?!7 )8a+S$z;pVi-jh6#r) Xޖ@b3Bmߞ吲jVi0ɕ {ɡ8L!\냵$bU߮m|@dRy8hT5 1Sz#d ]w 10̄Y5ܾI?%CZ_'tVtH'Y[ք8*uWG|JI #ooSy>.0 H$>jaCJ nє4Njb^K[Fzm/;-QʛUpUn<#[0? Eyy]&sub|}9ڐ5b60y"9,mlٸ94K7s)ƗU5SHa_ʞ#Sr0fn]k|;iuW{R᪞q=6[ߏl~8kΆ&g3D%w]\bqKPtթZl` htM#!H+7, ~}H0Ev+kIy8pϔ 坐 IH@ضr#6q_ιI]l="rC-͊ߖ4ʉ<x*Ze}B_58 "X+iKk'F;n-M6d7 S0;~m ]'h9ThNn6 N!Z(jA}К8X7۷P. k#KyZG4t%|O/094Bϸ+(hAƭ! 2_|k.z[z8T >]xTt>f (#&1I-+D9z,T `^0c=a_|·Rbu.6wZC|(Qe{$ðAF́ 9?fNsO$u(.A =%Vq 5 B ;I0htY86P)K(P߶bTѧ$Ry= t Wi/<ܿx2/А$Zw9j+JGn9/Tv0*Roc+DZv__<43gu(kHV:>lSA5?;dnJ Qp @fW@<ɤc֮5[.B6`C#/ȳ$llX\_*@j~LiaI@P1)fzhCx׶AJ4SίB8$g3x1U3H:Dv@|C.F0yEAg0G-In-aMf[5εdr܂ݱzP;Fo>6lS65$ $/Z^|o EW& Alġ 98>*ۮ.Noӛ'PvDg7XʴiuBE>ri"6_W S^Xa}usqn@۽OZI^v:>xVe޼z!Ί?npYA찚qWNqPm?si+i+;ƈJ/9tApnb "y;-Ey-4,AEh]޻@ Uh~Lq`p/ĉ >?s7[ 9+{lЕS`"O?Qo5=6ۭp3WxhbfmV; ը>PN:TǨӛmhSMy۩^b8ciqA R\!:ә%$!Tss+Yl,&|x;E KMq<ѹ [vbP__AFu1ѐI/.up1Kk|nu 8uך=̠qև[).]99U9>_MB5:kIQ [4w !2@0@L!j,l;S$Wwp6R# Ua}#Xz!Ez6v\3v %ēqًSTMnv:;/͗ꅠR!\m/臒T\vudm7"I-U3(޾yĬhw1Nf)ITN("eiSF{dKI=o2jK< Xު-sO={b4۾ y*㫶'#ꁾ#pvوOӯcsŬ'.\vl4p8+.j^/_`ӯ/ fxŠF*aB[@g!(8Mr ˭ersiIqnG9UF~ȩ[PO`&>4Qס4+4`؈mc[3]L~D~mT͜Nyg Ut ȿ瞯 qT7SBv c:n 00X|ԕ#@ZPf8?\W8M4v1k6B4MHo3x=lAfWr>{tPa-hdLA i[^:`J z ?>NkI ށK5YlC*7 .\ Xz@LOry~z[&ٛ Gx,r=4hωbxf~Mݷu+vBBXbhǠg1F3BZ!,OM!dP梖td:Q c_6Ͽ\HiN(e<,9z 0NX`0FX'*H >u Kec9Mb;8{v:]bzvʧ'Is&"jOGPWz?'K@3?,d4zDѓ䛜Յy5>JƠ[x"#w9"q" D0蘈H|YFtƉPb)rAY:WAZLݑ%ޥv݂s#^[N_5"hnڡ9\b2~xtdAg/dǛJ vXr!y5p7dL6.z8VvW{Bix8EuX¢Fzx)<%`sB<=򳖅X%-Bz$l -WfwEq<Δ!a.F#.r7Ay}ttWE5Ka,s~cmV^zc"w$b+2U-AĚСl!VW3;Nmq~{@b4\[2{A{ !/=cCvC ܼzFM JP:?zurŁ=?t8Y]c&y0, ^&\pg*e.-\K^'ڽ6Ĺ vQM%,0g^b(H\F¨JxX͂"nL[͍3̞t-! 1d.M^e96>e1-!#zv˥%}(Kv@b q <[??`QpӝuD:~ӵ6EN T⥔,ا@34ILh)Z<͆^"'(b SmgrM^?5p4\9k$!e=X)0eq |Fr|99o8Qt~ÅK;Xc/W`[^~ZFt4BG/ː4*Z;%,F+=iIEVOM'pŽg!},w-)YAdec-r5J,\}=BPI!:d4,=|g+L,Xk'8M4"ViHXUs>A%BSחP!(SyWpA('W"H5/t5hsl fbKnoZ@dO}bl*uϞ)v;`J.PxZn6$PG9B|}#Ϲh uI\jp1f, %/lxFፂrbN=7\ ;"ȟ|q~x?s7-7CRg$;JxR ._A(RO1ux[JI&9`WT:0fMIv"{5ЉN D9ɭ-~ evͯkY`zА~xI"kȆ&-=b߸$h*p{ellc.4sUד}rͽ]kz?T~OlSY|;?U>@7+fp+fl 4xf똁& ǵ-K ޓʑ0zS*ql|hȪscOf(ZV-*MN \xT 5IO%o\52sjn6ߋ& ;ӽ'@)cwgu]g[Cߓݚ"7oHRcM'So_C+6nl*gu61tfpѐ{2mWDl_ aVYdT"T\ Xɺn5r'2<DP-]tv%nlWLqD8rjh.63:qTB̴El/UB\X1ϗ ܖ_9=ٓͅ)Jd|p`9^9Gz{er{CJ.ST-I*?=r@,ݴj'4| @E_^hZ@kYinf{Ҏ!q$k 45Do` tG%r: ?7ºWA.zś<;ox[d ptqi˒}J/2| ;N"d LjS37G'{__?e1r|Ϯ< T NzoG5cgZ};n+2m2deKlܽ[i@{َ zS2&$ӪTFR?F:'l4b65`$`F}~M Cvr ̓CLO=z&5\ւ񑨸xøz3!Mb#u&R0|d!U"|"$ǃʅ HH 6nV`UK"fSq#):m_'թmfJ-(=U.\'$%lCN(CCNxd ZN+twl\p l/-- YccY:=:B-=1' Ti y%"T82=)m.Eq}{z13C4 XIGvZj%UvBfLCqRCo*{b9!\jh!q>.,`#OJ詁Y?[ݪ Uub֙rADZ-xȷO>CʀF^br$3`Ics.)'k.K:5oLz}-=9-Wƫ> 8+.C 8(ڗSغtH$Q/4Q /+@ffiP ?fuʊ0rw<)i61g$mg @zf I*X\ЇJ Tq*pQl{XӦ Pf9s#J C.m ȇ,@0,T3iMmC3^Wh{{zѓmQ M> 0s,k ֑aݺhj_FG3{܄CbwE(At-;W,Ehpbf*o_P-h Dp›dvYBS؟\K6Z9RСoۙB#Fxw*&J? .p@;i>>|7)E.<Gւpn]R%O}ޡ7"VSyuSq(( =?bws|3 V.Ӎk $D9* V0'XNi>j  3.y|&CMyV'V#/l,k#:9GVX=TNTQAh뒟Im߮CaE)JN,`}4eӏj:l(+W =QyfdF("Sхh*a |+΋;iC/r'wp.JW1(֗tk $xW TNSX>X|¡tgj?>՗Xt?|Et*}u>K"ӗnJJKIO1|(>kt MQ!PMd6GNP?EIx>j^^Ȍ$|G{(T"7l^o`Azfa7RM [O8L+|t9Mȇ(7% }4$;|RaIl[j',ì+ ھmh*O۹b CNT`עxݎ+\Tnl緻ե 5YF#6\%eU")q00Ir=\Rŗ dB"oRIkV\RkZ<%nJ_=WZ/XOĎQJ$#8) KkǍ1-I`$"B,cG jvN(pl|tDu^\{XQ68! -Yړ{x#O"ً#&kwn-cZbe}bC kuT|9LA!\5|<8/r:Ra`I_tN$)Xf (w%P:f+|L6`YB4aWA>A _~1 )~2P66/qX^k Jԁ\w8k$s__LIZu ?h-_xkI [Õ?l1<}*m>̏| 3 mKBNݰ4.f"ٚ6uoUnSߕL&WPnwXOLny*yHUsA\~ W/-%794\yС(F&Чi}0<|Є@C>tRd6yа 'ħK 'x=[)@uqhdsg6S1M0[AV@=K&e}?jw=]5J %N0)/Ag~zRU~tȢ/&h oׂp7J0X{dUS9RѡfFTXSN)10GM!3H/iqd4S$ڟLtώ.r^#G.}U> wVk{ qiwf/|ߒ sX6|Gj?wXCPε]X'#mxK23p)6qb)Ļ-~}M= 1?"#Voa̤}Bv!])~y zz;îAx}A(Ь־il3YD@֐^䧠(`P2H/Dw?j|~Kί_Bn;UE/y'T0͍Hڄݪ6&T>9Kxj F3*:piӬ>n\{D(j.4?Q/#j+*zw TDQŴ9닅WXJy"+d@+=sK?2>/4Y'd-9yy߱1瀌1X;C/}f9XR7m8Ypk=d$m j|qW uC4z~oXHf$Ji6Kec:;x(Rz18Hԕ3/dcC, isSW' W%2j}J"t33˙CARGp) ](A }I=TԦ1x@xuXS.c J-b, *[3RDcnJ$?S-e`m _j(&rYظ`r`(C xO*dl\I{8C L(<ϻxVA1`a҂^}FԚ:*w)1-DV(>: Qt3n<>ra7&IDğ^]dE#S@QULndKyoyT꫋0XOK4Zj'Vm9^JƱ1G p8`u.hB^',1D^rQyl-UpO__ȞbHP,>HSE~br #2: f_+PԽ 98cDYl&k+kk6B?oÆ-+ _]{lǓ<yψ_@ (Wj]rU'R"j_`^br|.|7+ceaАmg{yI:KV=y6#$cK}IX$K5Ֆ1¿:=;>-e"+[|SA{iVeVlQt[i+υ$q]2c@`(+֌ ,C sїfoFq-.lBؒr*GDֈ7.P-]rb3y(X :asW9q= o6́[Щ.-w௏O7j:~W}ӂi,*87!"zFur?,(~lFFQsӹ(mPTQgwDf ~2\Ȅ١Њw7I<0v)8L˙KI?n(!/4 K\žWQSZ󧶂%Q^|Rʢ]*NjL9?k@gxJd.lH3E2,& 6|%Bqzc`' p}  _d Tgݑ0D,8ՑXI%Y*B$Aw)Nٜ)E*}:^TTDZg)wr)[p8[rf a)GovLqjwa=k*yVOR,3\2~ 7'A)86H]^9؊AQ g<#;?hb8(U4:~M>pv*B0-ByYU'!|MP!۸ wofAJ^(SnaA8"ëX;}mk|cJ}ol9m?2&^ނLP&TIIM0A[Txa ٕ",9*'϶'f5ww}ZYˡ Z Mmqo BF'&"In2 ׊W`+&*}.i'Dy6$紁F^s̍-{H 0f{Ad&G81dY>_Ju SH!ΥA8SYJ._ljb{[8x""xU5ȉM7sn%O@.6#^&r\!.f"Mnv N9w,MWg^^hjFWa)kq(Thx@=u\Id#LhZ~]\q$p/8xqD 2}Pޞ6B1{o vI HҒ* g,ERk,<*3:}-2UٌzݻřP`asAk;@cݙM!{$jfLN9S@Jnߊ}vs4vВG?iQ#TF)vOQ5eKk V1kLFhMkZoͩNFf]qd˅;2VSԘnhSu9/1 3<` #_aIa #:.!Â_ҋ; }Ї{ٱUcgP̐gL"w7"YgBˇFKc+\]厹! "kDބ\"gaB8-gHQ r`*HouMXsu*.|aNMK1ʉs/D<5rpV k*&cv=Nn֯bz17WtۄQӋDI70Jsu|OѠxK˗+ܿDVE'XI+{|'* A"FAXہ/FہLrJV K,}+)*ޘ0_Pt¨Ҷƹ¨P<@?|cՑgst;< W1e 7Y iz+*e+|֣(UdZvc~5NXvGu}&0]_=-~{`9D%醫Zn0ABU=dvorIՐx a- ~8K,=D/^ql-ˬ `)EC)S?+GzB^lBM-d%;;aw#5ᦘd!p([N+e̛]X[.#ұBlK~ٚg&k4v%17$ '$*5GKE}•F+!U6}lt5{㘻wn9Ba43yJ>W9Wu4? SBO yҍl \-w@|cV%YDS"3.Qt~t2B9nU6Z07XAX񥥗tl0($q;Z5ʝB ~74sX = \%@7FSa PBFbq;LZ ]n 4)agip($TıwPmV^> \x@~Rk;'e3q65xpoDv!rh ~ :3+/ÿ5 PoūiH4;ݕ 8f ϸ&.V_v09}H&*:ܹ?5 ɖ7$q3@h}G6;ω!z=f T}cw&Ǹ y>v92?u2 b==ð]V7X>[sf# Z3X8XGUPz5F^PT] 7ݪ9R h73{"du亯ӉcOy5&ұHV3< W` D~L*]U_9}Nlem;Ki6*ibt]x}l.H!/wWI}w >نLؠ Heoӭkj@:($ž/sDh6E!wÚAI ˀ"$<=Eu3#Sg8"rF4.30ݳ & qf.%nj3ogt5s&y){-Q҈Ml MǮQ&F~pү)e#Ft Y=$.#qD{NQ&AI>cs9nD6$/,fc9'j~1P# Hls1<"yN$ =k wޟ!VuuNX"TodȇmJS',mrF ]ׁ;pG){h^:H+Q|Ew? OKTV0 D\W;5CZ: WcJ6<2Z?4dһ 3lf/$ͣlr޺I߄D  C$*A1\aܲCq0}St*9$ahI& o5!-qo\Iń|X{8 4i/9>|߰g&8)~n |978^HD"W9ۣL(@WZS-* yx@wtr[2\o<Ѿze$}q 84%:RA -a &aLn/1Kr꜓dSL s;"umlX4~FSl4HCnh)u9K2fC?\ȩX1с1"ޗc[T>~6 %yY0ӿpG߼)L8x!m'ȸ#Jix>I'߆\OmYNmBft/Ŀ4TLp8d~U%PQmpWnGaݒEU[Bb?yk9 j |Ь7 ؅\=2XrnV~7Q8=]_7r_EvLX0-$ZmRcra$+ cNUE\0DqI47=)%PX }5pꈎC!Z}+yŲuQ~OڏR(kbbT=u}Ԙ7i|a|V)?g Eފ199ju0SK_q6 (1 *켒O%zJEhEע|u}"CfŰ߹pvR7gR9x:3G;-H~r)gKJTsҸ0QTk aLދd KV*{~Kȋbq+phʆ"EN~/%}QuVo, xeB7Fy\g;ENbT>%8ظ!k(9~_7r_^CJ/o˛~<& Pg`3ޜ+*)9&W)ϟ*u#v2UZ- ]C3 X=07` J B fGVtC"8Pys7#n_? b1P{u}Dfɾ K1lPÉMޥ:9sEʝK$@u£vFh%$]vOóͮRt*NV(bu5"-|`dMiȮAIДB iH+e >dLGلSB-O_*caeiLgLn0풋,} RMo.oZvI&WV恫G.Vo7JyIfGK d0R]MWyef"z"xSM!/J: q:}ks@P(* Q;1 BSփP-)|_\S\Wz:3K>4tlх?X֊Q>G:VK7B=-phG֦$BHnP R8\tE; &FFmS:qUKU/͏bl>苰@s8'өMZHU0j[6 61L( A_'RnB#D6"(Ydq|/n N:&SF ,d&{t-oa~xtSRG3 ȔԨe;naDh8wnk@eƒ9.֋E _?洈~BqZ)ohʐzOAu4qАZSk\U2k+?0q=@PHfgȥ;STtk#Azж-m=:I,IpWjXMײTrw=u9Ł cZY%l32O5Z>`+xc=zlYyf;8а:E˘_D<^S 7hAO3)\O/Ҝ)*a4!Dׇм3R/c~a: PNk;%o8> 2C \40ee罂 E2J([ph*Kg$: A?'Ziѓ.Er쮲"]fzZ9GTUU70:Ck'@[m&/Mn~kGr>;qxJWKfӍRYg=D%D~!>MoeDZDx(_{1*\;hH~572fil\fv<yNPH4rYxA3 Z%G |r,~bKi6Rm3?F$0 QQ+G2?:f eʇ&+L I$WŁxs&xpyrUC\HBm:\1BgЂ&KS=awjl"gDO(3Ҧ}ZT cFdn$@@e܆)o+w`T 槙Quݔ9{ _,bۜbRW$JB# M!H7Um D?F]ϑD{9ћ F!6b;o-eO6+(q҃0pg*oG˴” "Z=5c/+/.4BtISDy3ؙ +:kͶY \&o;&U8 3tb6v eO/FV!'IҥV\IKRL&lq~VTmEg1[@#&P6-XaoIэԩm̍oY^a@R.?+=_\ ^)Z.s3x Na#l2:% JuُLhTi9{˳E`Ebע' G@|4b=+,šowc#HJЧv:SPzwDB{b}ӿN N.V3U`* 89m=T/&t<:?4d*#K |%ӿ Jߐy>"}R73<6>+ɽPĜMYۜ|  )!΁NJ4 HerCC NО(@ X!/Szz7{jU; ~t e@Om/^=Hj$;9x+zNofz=J#Dy0qPwgੱGЍ暈`Iɕփl[oR4Od ord;ۻF7BXu+(AS^VDm-! @jw]5XFZm.-bq7g` >EJq#L:aLNRCT?~h@X+6wya5R)TY)fW⃍^g"Nlt^Lwk&d]EÀbx ;[.L^Gu,5 =Ɏ2sQp#^cJ|>k EA3G-84 C4~XW/Ix#2<:O` DicQ&++u(mFsq+ ta @AYCi('M=ن] BS{IH$.Zjkىo0[XB0K }M;$,7HG?T!m9RBx+hӵ| B2HѮ K+]zE>)80{"ubHe'ƫ}ϏYQ٪8ΣĘXg{>Yۗz^Y"):[jt"A6̣+&钨O ϭRI:_@z9Qҡ|lhufSѩՅtcpX2P[b5$Ne"$yEWН&Ve?+FyIo3.O\6(C,b!^9U CVɎ%7VT`মnbw93tΡpفk`)Ze O3zr1TIdJ.D%>o8ˋE IUh>`PkaCZoqd"֚6x a-XRNDu (/ >wz]2c8GH0ލ}k:K&+<x :PGB}Y(T|٨#Q} -zc}{A39L 󵯸r=4+f5flU$By63p*|qht |]{ 8$LiW:~LY } x \W8J߶a*_-i+<+ ALDŽAP>UX'97)7K<''fkN/[kWff#2&s[N-= 0|jot-M2+h̀染-VsBQt991F[|o3*6 e쥱G&0Z21ao2""5tNLzIJQa3c^aս[3`ē1{9tPKI6(Jm=[@Iu(hZ.Ɔ\K"!`}c E19VƳ[s[Ip[oY&4A8s\NJUJEmuQ៾Ƀ %iCqr&שķCMoi3S%{)^,Cq1VD61Ðzjo-,5x3'ax1(*>5A"7K|cf05 SA%0ԿY{+j-{ q]h}V ;Bɭ"$|LQ+Vn1"Wz{(CS_FJ 30rz+Gj/\u X2N,smRmHklh׍ qФD@ގ-D/)*5 2,ŖRl;zHM?i-lӎ@ytڱk.QBvH 5Au䷛C`Df{PLpY+y]"swbhg\#6Q#>4*$]*nQ)ԓrc̘ `~RnF>ën8Se7spҸLfieQDΥ%~=7Lm-`plm.X}LCI% H4DҝY~ ѹf> wI +o%v +_~zS#J \Jnx6ݳ\']O&$OXvT4[<XM'H)=8(nOr3v-Ǥl'װ0&KڪQr`nASۓY;V ztŕ6i/C^&{t-<%Zǥ \u\Բ9+obϯ?dlgQ< }֬EVNkm~`[1 W\fbҬ Bel_Ay~`DDHCY{5N_Rw0fCր =KnBKC|S=~d}̷DJ>FԲU՛*45l.6a qb'RxK(:=9/nEƘVxs|Wr|,'A%Igj:ieDiJ:H yEdgg({Ĩv=l⢳OymٹO|Hdh: 7 k!#'+iЃ @[D+/.6Y8l|{$nwFihh4ݳz1d &}<YZK)nQSXH +(H:Xl%[XmzXtEbX(9쿉褍(DrZ3}7]#[R :5TEV.nX2nEﶥGR3CgIC.xkn#)<uwc)2îL  l\!dҔݏBfaQ^CWҭ'0,H}fqgmSe -DLJH6ј|QulJO@x3tp ?X2VasT%S̻o@c0W{C=q2a= XQ}WV󂛝. yeçץp?I˿#w{(9(<޿˜7qQCbS0f]E8 h"${.VlzsL9M0ŚR}t6Tuj]'?ڐ=ܮ8"yO3^HQגJ0  .Ppfh;k b$D|^+;"O*l%9QU +1'`! 'M$?텺GQpS9*V%>\ΏUW3۾ؽaGGIZǩڷ(rmYo7Ȱôw聟r`Yi82& wL VL:] ɻK)+OnT@cq' h!V~J4gkOeSY*kB<\]`{8~E0%+LՇvDlš?]$!?--|Ƹ[[Oe_Z,|'8$-p!ٯ5!0]cF5I:Q9:|(@e 4."פ<޹yn[BRiɣ$)^ˋb+_zˡYN&ɨ1֔,Ǥhh+1=K+ru'd'R?}Un1õ۶XɊ߾NVB1l'Y/S '=#/L@ZEL=vs#yAVmY27Lͳ=ot{'F/EMct}0C}ʹXC؄ʟݟqZبԄѓ(z5e x3+By{PLj?◯Wخ&Ɨnڦy&ZJ[z :$HhQѪÛљF6)_38v__@IΖ<],#yyk,~n djWQjFg#淪j &e-HFfXa?" =˲ư~e_"3`,=q޿W|rB]}V|vIplBt ]P֣"s{fn:X0!GF bߤͻ٭-2v< :7oGp;RY CF=aݞ >N!J.钾kq"SgmI"Dy W6 Ɇ;P)P&/,`] PH%l {qpjՆ1^}:W1p/4Ih#Os%BY W%qq.TNt}{?ٹ][z*n#+v3EOpAlBL[J- WsIG9EzSч=)QؤJZFAJDpzD4je5<%(Q BK~ ion3k`fB[f/[ŘGtVwJ"] c%jI`&{rlA<@YJ9cR O)y/3g+!sr#ۗbc- "'AQqX *+塋 Mus6/cpYʖ5M2 7[U/Y@n"y nc:2] # W vtVH~jUĥ ahgG{|~Q`J:YQoT5 qf jpu[({XuLHOʢ W3&.Y6@Ċ]IWnU:`qKbW>͓S1 ಷ^4-z[QB=(~,ِHRu.pqܺbR`(pi.'(/H9zT;fw1$KNGvBrJ;3Yd-PlYG.{15HNL_6h9(=I63v?zT2,=4@tT RQҀ*̗-P-˞FwXbe٩4N (klL+3b 89C~~=k;o܂ڒ*@kj""~_>dᅗ)\:knrcE){e<wDg *#CE=-K]&_X0 =P1嶋et>+͎ {f3 %7S)ʊug]*g`3ybІU0{ EƱ 馰@ jV96j_:kRA/D4h>=e.B,r"-t"rM-zb6ja?!w_OQ&o?Wׇi uaCi^T !emfSX+k6eOXVx[W z8qoMMu?uonqC_1:F_Q CspUKaT@$=՝ąxds%YU[9̬`L_3,XzI7ri9iGQK3B <\3 ZiFqY&7|Ub\-]Y'j}A--{fn?ZOYqBXpіkI襂=OMiZi{$հ86HFs")ױ45l-%s_^07_(d:"Z "w˙FY܀m,k<-nf!GsƷz $d6 G8/>C qŢA^]}a/#GciXPM͙vkOM;!(SyTUᎹWit8W׉.I UѬJrljGh`}Ki3Ƕ4=j<OCŜu>\콉7,C7;Q4%Hi(裉Aӷȫ%b~\sەd [ٌ:`h <3ꔈkdJ0^@(B*'aLQBz֪Vo,}?|#K B!q#h7(]Tl6-- D+0rG'UjtRF1$4ҙBzvac7$5 P~<bZRvԺ)x_{MO%adON*^rv qt*42<ͶOQU󡆔VE. ÜJpnQb#x>U/K ])Wn@aԼnHuZ XrEmOŦlيjvٻIL :2熓"ۇ \'RD&`O& 5RTnxw=DAٌ7_ۭ^X!{ ` ?s:f@s;m=MKץ܀ovv1AHR[͈%%RBo-AaҖk Z1rqTȼx7zE4.e)dxZ,?OӨPɭגnU(\ ]p0YognV3HV`}saͯ;[Fr.l#fp<`Et&Wr3G?ժ*1qFo")O`yy+fЮUz=>`"#Jcӥ7q-\_D'tLU〗Dq!*ObzmuYtIRuy/Fw)& :m7# T''ElwMC1|gA+[J;SaizQ zYѶpT' c"r񯋆QQJFTPReUp tkGО#;jG2~8v>0C( Y"-wR*\FCAG&zjgY x!xP?V1It\(\?MhTtd/,e  [|YڞJt5AO=tiQFKlUAU㔺cEStDgаMKoL2/~CA6iqa"ꥆOˍV<[>Qs {+LYp'~hJZ핅s1DBZ+fxRə^J2FJgc('Hqj0آ&O2_{QY _atL I/UKFT921=*W}bo& e(A-8e%jIʣB7Qw4['G$1А-y*o gP_\9--hf Sa#q0 !E6APuxH"gDP(-n< \9$m軦n7)w\L` TЫo$'AGLLnkTI厃cXu S:W}lJ7OK eTzo%:%w. Π/QҽKPzsW&^(OmD*J R3M&(ՙeu]L٥ޡFq`>V.}DՁ}丈Y׋!O shzq`$fx P $.4i~WQ3{ ʆVo?gZ ƢRnb}ŀ O6k;]rF{)g#z?'$GОE{"0iIX9fi=1s"RNfS*7]9 Ȗ94 IN\ "]r*j5QDR!V'[dvVjb F%6iQg)iLU;S.>oI++usɊKQZ|Q uO&C1tqOd^N;QN4ۥ6y?'-r_j9DA@RjѱSy\mB$(i"xd%RK0Rg2=hrgwh*%CX'ʄˆqMKXbcW r+ #JXBP-j,w=7[Mxсoag-秶6o 8"rSEP^{f '׊ކCP!V! O?Аjhna"T;լ*.9}<J?,Kp̎8LRCG2l`{l C; dieçz}~Gow='A/k2 X[7Lg ߹lnPGgROQfvW\mDߧug'J( Yh8+hFXҴ(+Eͭe R7L#YŸ/y PƢHcAd}b}#o:[F-Hgb5G,*U+_k]q|+YӪ/Bn(]㝎By:@/|gxFoFZ|KYyo޿/Hۊ[jrr3J[+KN/`A}q逸 <>mDlj$FlٶSȼߟ̰P]cj8=&,!87/V6[(k4`r(/A LZ*Ϩ.08t\炠߃a(C[3͠N[<ۤ.KD0B2:y+or ɎsM 0D+0;:m }P~rcn'fW233 {9'E+laҏ.X`2%򧤂=b'k̞(5{n&,ƦX,VC}0,]ls_ijݱw@~E}ژYC8Hý0<7ou>'y[4ز<$zɧg}{Rfױ*oD/}2CMr6=2R5x{]B :֤D^dY1XJD Si%]V{[ ^/nKL 9޵- Đŏ{kRSο$*Dj}(*DFӴ#kɿGZZe9E>!  !t'_9q5 ǦK'u7`x;ϓ7XcߛB{p:5BcMc!J/&zcբ~En;]KJjc_(:&5 RQÉN&yhXb9ץ\OpnM޲˞=%(] XMѰ+*DZI]T`Z0쬜mйe14Ge |n?_ K.ty} W 9譾g5W=/8_ :s$M*S?@'HwN2p ]4=dY ]=D_қ !?٥0;H-l9dSa ŐYLA<9&ʑ. |2R,/[. 2}M;.4,A5`)2/Y5s1 P \`06oV*5C7JKUy)A(oVu[! kT(1TATV>/1k8dDMtx^A_'UͳB RQesF%:^1X'ߍI Ymza5(2N_c`6 NVgSL݄FPd:Fgӭ^NˢgF!gpi/|aDs<c;l1]Mt,f$_ˆܓe ^lAP5(8Dۇ\Aݿ~N#+ r%vW71a3;k-%⫂ݭڢbhVw@0t#]R=뛺Mz OBz_PRCkcK (!pxIwrZ@bYSj DSpe2+'(I(elwkȘIهOMwFB<%:t)_fc:fϲC"vD"9"tEŤMLtmGOV|{?*r*sFM`/Ȟcୢ@+b*=d=B}z9Z4\ЎMG,ia67Ϛₒ ?um3öyhGgJ " 12Q R5wЈ%8340690=k􁊶PW/#G)4*1mur 뗭! 0[Z<r@m $FR}Z JRi]n{PXwF̿lPu~cyWd^oK3S~.&%x/g=kVU ;d Y-1KčDt9"ҋd;?ki>yŻ`-X26XzTBc1nJ6Ha?ڏ 'RH발r(8(Pkڿu= Wx1?GXOmLg0-3g\Ns+8EhCv۵ڒ-"Eѱ[S~EӢvFgę:d0>Car S5Jnfn9mc1:#?<^i12<^Οܩ wn-,hFIneR$QJ=|ElzdJhꏏuBYU4,5ypV22wȮ΄! xwJ<´' 7w"9T#ƆAj՛WpP_^Ǹ5e5Bއ"uvRɌu2¾܇ y^83} q>ч!,>'[ࠢDy< >.Cɜ'R p7odɴn+m^I1Ƚ"0>7< k!.7jZR4<]Um#)@ #/%/sl/UʚZ*,oLhi)5"sDpjg4tjҚuWTC\O|l^^LU!ggΛn4k0RNOX5Ț іSf~-h[!0_Pv6l')`66t%Ĥ]:)9"P 's]5q%{N\RG|V{Zxъf~\ g!i#0I+^̅m*& 76X\f8Ku|^p `Z)(> / I\6HMu g4BLy}h[67!3k82k0MM8-¢q'\ܿkBҿi<8o ơ"Qfy-borqJ a$.*DhnǔCMUW `soX ǻi6P0[eQBuH؀R&@1fVh'&Y&/fևd6VlO:Xγ<,85F xɳ$v妿q\m9eOgso0,X~[dԼ]"X,n* VE J4/{d<ɱNs^PߜckGF>nJrse^@H3M-g-`*tjՑ|#q!ݳu2fh)Z0 c2|'C= yh`6_3"zL‹KD P!BI|i~9 Yo 8 碰*Ҥryk/9jr{4rԓ43P@Eue5qĽK S:[W*;0sLiﲩMjsaLu=&u^e: t+EI:-9z8x2'yZD|3@1!?oKY__4gY ;{SFWS;1&Yv8e|vll]涌D<=Ka^e24¢s(K87R[λ´”k¨I?|% Wav۔vƏMlƪcRV>B׉կ#=Y19I) ȓJfXo9F`fOɧt~TS)y >Ҁr=mz-*@ea%҅etudF"Ұ &Wn>B{{jIa#GK 'mdvTڙ`n' SJ9)`P;=i,)$YiMu" DNpZ$+fm웋!0u'(f!U2ncu\ Irl8w:7DjQ`z>cg粉<e~*PSVOAMI@fZAL~Soxgr{ֆ'Tgjq/-,Vk5Ų1ԉ3i\۟ n f yG$(  LR E[@ڗc - $ Q L*HfT- 9.<( D$o~ d5_';!*B 7WoE"JL\{a*](l8Q 0(O%{w1ٶ&]>om[]s\sv8DTd*?$ ?a 88x? U;g̼\6, f%9m8+%^\U]W}ѥm;n f6'ϡV0w|DDȽ345DpqLf-SԕeFNTW?ĂJۺxA|DBU&;hs;GߤvJH/ /uVpRe9Xs284=)Oږkk:U~{Es5 N"n%gJs?5V_}cYaNL]{og:5W%,TC@F)~4=wEcX:z.OuZWL":E.f8F$~J}.a9gPct˓ŷ>9h$ \iϘ!PՍ1#Vwwi:^cTthE>CM-4 ~zG8O',{`)x[hyϴ4>㬰RHhzxL,iSז<%um"G|_DlXHFA3u$2g645vX\QV 5 킭xCC$fIM&=z7pztEm,6IQ\5=0A*pr\3VJ 5ok#06aF$Lc\,Q`݁IB yz+p=Z%t& i zyOyh\hr*[һ&8ѱ;4'i e= h~e5>ݲbNJg)%4ԗbi #zF[+5-K2F8d^<'3x<8#ΡSQ|7%3HO V-iG_sҧ"kpmhxNr"Kˆ\Xk4.K]g8 J6kÈ:R2n6PvoK*Y7A@,}xɎ_am]\\a'gLvYIɣ7Tv*|І˛*&("&^W;yK9f7ue ן*4^",0u #nPMn_6#FݔM({Z..""OIE]>4RŎ̔8X!ʚv!":!vJy~jfEၜͣHG8ؠ1%R*Z۴:3sٕ2Ck!%h0n/d,i7$kþhU{k u?,xr*R8y4Ti%FcN,m?LUv{pW"9̥B jX!bRb2 5UŞv|&Lў^%\uNǖXN7 1Ixu_9mCF;tsnAVUtoJ1XJ )>CP6癊Y{8Au% EpAyKg_ޣb{Bvhos ^Ϡ gxsIsqHS'=6 hLDowf[Dq1;~h }Jn@HBK^]͢'k-}%PIf>#C҅/h3TI]1'?Uh< q'GDI)nzDž)Ŕ`giI?eQBWGOlZPM;IC'Tl4Di"nA.8f>i r"wTXjXst[Wd 6Y Zݓwtnc{ݩ Jqs! ]"Վ% #GR.@Dz,f=eO8{}ҷp=ST9awZyu#LUd?7We}XeanܶxaUY 7=|yM$YGhD.}HbIn,Q}B9-!ٕoO8a Fߑo3cABY3ݚi3 Q='S]: u'Uk噂>F^oH8)V jފ(jO_ԯ_9̰@=;_(t.Cjp2mePDt ^25#%)6kG$^7p<9̏;; Zmѵ\2ٻ=KjN fq(F/ӤvS闄ڤVõLV8v=0 {ĚAWl'Xh994aW7L6-O|vk+:(Zv_I3 9qed"fmv-ex}:,Q7졶]s {FzF,Ynv ܶ=;xiF+Q@1-Bťx~qxYm@뮊7\* 3GA?O$g@j}nUƐTt.rute@C> *jh(4Z4z$S^{q?<YnR{EP!p+8%hbپ{==N#&`4g$x=2/K<^-1GtQEr 5t~Z$[9]R EC=麄[Q(;g8.GLŧk6clZvgԕWz}'&gat@=/y!5`VW)r A˥ ) [3r}˥ۗpx%G5Q+ݛ^t}^s^'̯U@P7k跊dRK>C8M`M;!B㚷Ԕ92cۚ_4-MVuGଳ1nA#6ʏ3-AɉhAгM8j~{5E !3@~(!+DsmۇJjZe?.1 {Vγvz>YޔW_^*UC6gad;\=f[{R.RPP \I|>Vo*ૉF>h$҇ߢZQo2{6Rw~d# M(vߕ+B'.WkepIliQp+]\0,L {eœ!5=x wzS CF$G.C\z@ "Ktte&jzH4J<nthT]3 WL1pj!W8(mj!X]EqD=[/)Z3{BbJ6Ln)a䌲0~b^i306xm5-picgػ5^]ad 3;.Jj#n-_~ N. [b%GrڐM7gw|K֜.YmvPa!ʹYC?K4o@CRq{V;D:,Y {'D,檰,͟OKWѼf1<|؎nWzfv@qv{0YbeD^|4 ANݶ] fTj4̅iɰk+}Q h Xoc?F %kp \v~]5Vh}q/KfpۘFwIT3_n<~`\|L|WP",zF j_PMq [Vt>5 /^=VT8"q7UPVX#Aq=0+ψS:_@;x3zZͰ>,z}XYRPR` a 8t6bj1 Xk|9*M%y̗`G=Gy3˒Z~Y) p$g XYz{r8Pߞ9c6!o3D?3..vnĕ)2N i vڇ*<6.IpŨP l4}9bUmBr.O)HrF=OǤJ#o Ǒɴ-Z:+YMZRU~QGѕG7% qb0}R]\.} #8[ 9NQ7j:!.(g?ӟ;` Y"!tKlo yCl*{vk^:4)\txWQvJA: ")OO]ͧf:&DZ)sg#\OD_}9Sxf+.9M0>j -f$SΖqԁA&#rȚt : M<H?{Йw[di9,DIH"_IͻMUCݭuɇHrD0_;"p[O :V4iw^R-ΥM2E˟-]FbwpnKFdbET^(IK׳E+tK#ľ6>ʗʮۘܚ#9$46,nk0LQŨ)p)瘯KR:ij|W?[ʑm A+ß+ݝ/>UxKY}tֿMVQ`˵׵z)8y X JW[X:yW{୔kz %,o[F~Kˎc (.xrCT(k&c@ &Yhss:n۪Zj.\}Hr!ÜCy3]{9\fP~^|; 9rM~Lm~Yt#n6$a-p!d*G7͙n2q2H^|iVU3Od4uKJXNK V}B eiUs߼u '˝24|o&-#)6L@Ŧ(aA!i}ZhUĢFT:_G @A՛qa~ɣ;!Q? # e aSoS񛽁eT!b`?r{`fWIF|QNRW{|_Gߌ~ռ_[4LH ˵tMBd@9h??ht4`AL/hmBPށKC_$ u1iرR\*m7ГogYSG4Z"'.5EJtZڛ.gg.~͍ {ueVu)ˈ8ߚgeS۫0%]4=qmF ~-M/*& lM+vu1{,V$}(%\ovG^f'@/F5Fl$8XU][S@S8_8xtb9(;x䌲׶B]0>U#<[Jsz{EzBD-:5mHDa5_R㍸u5(kSùTyO \D =տx ܏$ ,:kS=d.xwhe6<#AֆvE}T^?Y. Ba(2O&R'7'5cGi$aYӰAE GtTŘPT$09NΙ=UeδX"pC}ːB0ωچc6"bȪ{pe*Zi󪅼Z( /egW #Lq~(VH'rY1(kp #Z'oԿ^qojsG<ѝrFF2b3Q;/\ti\rK>M>^+f8@[~wd7FpD?MvDn״;f&Nҽ2$$R#L5D_Bll3bF@5'VVN5NqYȱ5#; 8Y#m=_z󸴁M(qkmfΫUt{Ij#1Avy\2S;76'EB ͈Ԁup[+ ɶkjO,mDg'oՇsDA^Ł:n-Sj. s?6a ?Ag.3[h G&H h Pk`4|rgͪw@4u;Fb*hTe=_N\,`W?/LyHM"%J$}UVyV13򴸶st3֏ixa<F$f@IK~hcU{bkjr- ~*%ypgϳxsnzB5BƠTN-Nb44Zp],@rHndƐ &}~A$Fczw*14Bﲞ(* p5$TuF z:y@1[1Mjv[||˻\V-ڥ^Dy8 "v6""2E@-pڭgL[MnQð^l*+کqsQFRlJ ~bEbQt yۖ۝:ܒmQCb'#+iD]z.B 2xP2PsZ%D`Dc`M0`AA6/fҰhىd^ wkϓ\'% BosljQUO+d2p*D92B@CBOGf*£}nxatجՒR$r{-(ww <XZ XfNX!/]cfȖ##,2=tn~pgw={[U)XDkasq E>_-=9U絸ɀmUsƙ+Xs]I>8n!sYnŭZFGTk)H+eL H.4Dv0 g&|_꘡b+OA)_ppΜɑo_V/&fpn" ߲Y [De/2[CkU:p =k}ռ2폎&'0jM|`S7ǩox'*z_ !J_?8Zz<MӥcX#CMi}Er/d :UI^2 &DF/R&W_{">,AvÝ N?ܣX%=zL\q9E21 h4W_Lw'5>{Eק&@`_ d%JK=^@ Bi(Zu7Pͮ}hLVn?EǴ Pf7ٚT~ulm+V#yAoඞ?m.dp5ct!8gTdЙҊ<%)} HxC>;[v{&+Pd0^oOrR> Th~#crsU"ىOGxO+Yq˩dT^R"4m)אl|_݅v,TIn- Oo?42V1,ssҺ,mnQLF yMw#-򀚪sPx4F ^Pja/.pj)$+סOq`mq SxMb&,2dՌ|&S#Y:NxwkU7JVF86=KE^hH4y^&uMrn=aH!A˄.PdZO/HZ}.PRM!0<~X(G#6 i?l넷 !ϝs1@:[tE5?m~Ǘg:It fĻ͊H}ay?ǔɉp=L2}'lh s藹D-$IҺAqm.bVrm>a ;l(oˢid8-$$ڃ߻Q\JJ|k@ 4uaGHQh,U2?eDLtV<{HQpΌ#O @}*_-yΙjԧdgBТ2N,_3?04=mnԵ?M|ӒYЙ&{WM/1sO׼$EGk"T'qU44+zKa#ȎQ|-75LMG:hțMl%]RKկ&FlO%@{7I^mPЗm}V ׁfo=-$ + F*f5:q~؆=#Oh^qUdb&\E /X(拔7?Z##e} M"bHrs( 0A) ՏW[d_I;\T jr0t7:ȵBVM_nzFZ,lF lk]9C?oND!>w -mD,I QZ2uP8 \BZg*]ocn>Jtͳ^j;!rvtD_>D,YW.Hrq je1]Lc ޸Úܨ_i#8f2ݳ mUcƈ^eN]M4DC4^`)Jާh%u4l~-'oչ9wƕژSf$^9h59וTzάW߽ߜ e/@ZW&8--+S!ZYY~^Z!PZQpGwXbV*A$9=WT53hESPB>pDiGott5}#Y\;{>BÏE5xi=mFxud*-ƱAx}4RFa4fLgN^ny*f_X Wznt#6غ,"zm_aGG='t|,NTGk~PZ;kXQu;YUǘW^#L_If-&B M Li9O(e KWHGi7|Tk%E,!`i?n]6~Z1aG$"nnu4L*?Ё1,ٖ D n{=kUa4Ry nP޼̈(pnDvnÎ a!j8B.aAF\ZYyrx$7pYw4M㺎T |dcQ0tXoD[XYf^*"P qsz&} j)b2wFAׯilEMs;X.hJ;2TКf= 'w J {[k9 C @UKz"jؿNL8xxoQyJ"[y»~017ЮS pw!?;>Q@?B2 dn< |=|SZTw7- |X> $ P4[KX[%GZZ]~5^}TlKة>cK+ )[C{Ç$W-ʜyI/NBv y eno[',y=w^–'g﫵`k9㻰vlo_>Taf\,ګ)mίLh0o9IP$?_iIJަr{m'[$qԾ(B[Bb)uf5:Ǟ"S#ud'J}Y#efM)*K[4 ;0aI,M Rz`6⟗ט8a?ۗSI9DV6~ldg0` ~5}-nQlLS%UQ_A&Qe̋M Ӿuq3=AJ؊ ޻<ng&<!z4@9p\p"O 67 ('7  usEV3'D*qrXw3T0|ÚTlNP`pt:?r_2LȦN{{_nXM QkG2ŵ,w@Do| _|](FN9Y"U"?=-/ ^DZuua 'V5oYSW_l1pSM yy]JΤMeܔ! q@_*3}]ۆMK5Uh܍|*4jo[ nMQi3m!&Gr/]Cp} jGkShNJǯ- Wp5A_(|7d\ 5f8,p3~ _ǀ^ME@G\(c݊~=G"䣜`Q ¿2Ȇ)ߕ"kBـɳ (I2t$XnFvy!_궄WWEmK8_SUzH 4$|;d(J |M8Be['e*?-\"\1WG=k -ЎEu`a /\tKå50ጹ{o90H­7h7=(ݺJR>)"Gm&S1.Nȵu(!fj.C&ѽ‰=8QfӴ\9p41O65!VB&,bJ֬뱼̌WCF@ v tެ5Gf(Gu߳߭Re[ǫʲSp%ɩr*F M`zBbG0G(W*c9p#}T ׹Yya=x  <>ڰ^]ɰ2ߢ#oAŋHQ0pȡj@H!わ:zH [Lyy,}Wpv!9cFͦF^b\}bek\u%B~*gQ6騴yVMÇ88-/r2AhN?⭕zg(4ڀn'Z:KwcM<)  cR#}FJҮ+%#~y3AѾC~#7tl7g u *@X- dТj>?xPە5PȦ-K)*w\] !yCW,ѝw n29;qXa*Y.-QinkR|r!vnOn+SQ- +=XwU峀~(gc[gN^$pri@Dp|bB 5ðO( pNE n6I=ЙyM1sT{E}M$egx(wZܷb ޷zN/`qLt sڬ%~<&]~my3ktqt[ts@9j15-O"dKw&bu%knϹFr|zB(VZOg]k'3JZ=F2W돔 _н |Xxʀ,V;csé?Ҡaq6li/}]}DߠI^=LW ƍ\PXHja FA "veٖ-UweE$ Qcp" KV0$"Ƽ}zATB }S}UQɑ_g(SC,%ҍ# 32 \1]D "u.GʽZvyITvY9}҂k4QM*4es3I,ޟA'L%0 is3,m:澣O])5ܵ{L~h6grt$gԈ:\oVָ#B'uxRCZ l,|@T[]4NI[ )9?;FMߒe%IՊbHkn$ؤj ,_`j-]ci8i|ϸb'R6kӕO#@9ǥo/Vʹ#e$oo_l= _i!{+= ՍȆC zp=3 bVĤ3:֕06$Y'!@V*(L]HlRG= *xWCRiZì͑v":鵛Ɉ*uR )JNE/&b#rg=Ql,`/_=α;`z[It,OҖbLzה qBϵchGMp12R J^l n[2T2էeRB9 ?1*%cxlճvo*3H 'D,AIl׋ӱoGu6Jv7Eĺs+:~^W0sV1m`j%?sۅpXS9GVu{̗mx3kTtbtCfa3OZlG4HYN%QvkB$DO~M:]q<*]kaGKknDClda&T PP" Xou*%'rWQD8x'!nt^tirWlF[g!δ4,p>nMҠߨ ( fmyB س5O4C7! QZMkPFI5oQ~7O,mK ~ ^~Bn/Yd nbbڽpp }N$F:J/Q0A{c;UD3=lWcrٖxr D0JFaq_԰>fWijzPZQ=\̻) oze1$SoZ)rOyEVf_WKmt5Wj2i i;rgݺאַ1&{ *h}pįeMI! ( |)xz[+ErѪNbv]RKDJѵyuKrݱB~:üશ^06v|pڀŇG"Zr\X%4_8Ymȷ q'2Næ֑ܵO`@bߚW\LCxj#x'~t?_[v䁑e'mV,c NlU-M` KUzl[uʰSrE+P`($vF{/C05gK!`LѷpIit; RJw-}"]v&opGѭvv֧yo zţWyU-)N2]6VTO4@fV|v*lz,2t[bi [&iKHbڇƤNŐ1[!tn  S*ϲ{}5!ƻS/QbT/ϟrtĊcdN^o%wv:ιD͜d7[Š ;IDaDj YCbE"hh $-SQqCb_Kn/! jUa&yi<;9)Ρ.$lX"jQXk:H|5rޫ"#|t~+oĩ&s1c tן7\7tBfl(@NmU)s<Ә B+F-{ARTJhշv%Nqu* 3tG.=e>&<$!Iot܄f1,3Km6M*Ԣ" K8}TԦӛ>mev}KK%WR4zC0w/qǑR^ afw[>GIi\Dտ 3~DzGNK=4 Y"1\|zi2:tI?.!Iqv8ڮ$߭S!8qЃT&C])i=:ZiAg&h=E=1%ݻ? 0%[#mx,7t]d` =g'W|YiM3 D\T!NnH"orPl)ᎍ1^OoiSV0w/-@ۂsʕƴ "2-ù#u./VA =~uq81)ɀ%rpr#_޼coԏՇQs-bc?'nnɝ}b j:[7Qq7pr"fRGMJ:0u~UFRC 6!iU $K+Ö @ĎUV^dCE4j@13)?,RG2iT=𼱡p|cZaߩ}KUOҬ!i7'{r'8)TO3}!Cn4@YXo8Q_5nۨ3fﵳ%T.ܟUbzV!6$+8IWiUl Qxiר,a ]1eEeRTjhƖ?`dZY]|)!3b)~{"t bѪJH;ǦѬl5?#R +8-D_)F̎X#+gjh D 8 À*Gm[$Y$t<[ʮzf^`]-(yc` R+,!X2>5IݯR,ml>>":[Qn? Ggh\UbE]p1,xSѕOM+or . R.p4z: ږr!GpH( p7dq Ѭdc[(*CB` op2|ZԖxݡ2˳nOpw6rkteJ"=x@d&=JM]u"|0\{S-^s?E&y/r2TMOPҨ2{+ƵӪxa68Qnş%/dY]l.%}TMI!WU:PR{s-pYۛ PdɆ_b%:t8 E"_ߪJ2 #Mw`:;W$UpJ%CL ѣ57^ʉ5 _ *hJ<]0!&ƦMfBNѓeY&ޜ\ ֦ǜL6Zu`Ds̒.͵ʣSP} ?ENbj;HzqKRn#Zr {%E).Rt$MZCbIȒZ:aX:ix˖H#~ 8{ØZfJ; TI 0)2/ %F^iL[h $gLg-bnKzNee" j /6J5he:\\_`=$fBʮ8$''A7 #^Ȧ{9F*;'&1w#@ܗԝNu絆̻[Ex8?aqTKT E"ZTyGjQJucQF.)eXm!ǛSQ:sHYbMN4˰}2Sň04& 0/-܁nXy0nXHHbnghsm\4zV 1&! ޛðUߚڃp'룣R~Î<Q< Nnx }F3p4EMO:zi  O^oKk@J ;}(9<=]38|+CJ.θFw,wzw-:#ӌy[Gr=5apG~yH5t`aZeY%/tL?(0}xJ:m~WMhBloWL B78D$bs2Wܷ$"+nU:G޹dS@͡|(UiE㕳vK.h3ƒ\ lk:5S<};3;<0=tF;g YzV8kuTYT%!~@=S(hɨ &vۋ'@D0UMcNL.a؞q= z-F$h-Tԍx/jo;ZgYpaP&9NKljqL:/v|+!_v2 2 ,jv7EP,=/h68%m=n<_iv|Bl%L\z~+zPX>k4l?in('8[l_`"[5Y^J~/uy|x ѽiC*/_Ǒt a Fp|o gh:ZiXKt~v89mL-\l_n@٪݄&boUeˑ@& wJ IGh7C?HV`;EX;W]"C̒ s 5VOk7c O7#P8mj'Twf,i%|E8Jligْ 28! ?g&)Ml0?K[}1$D@رl/tH^l|`4d6:ݳV *sP;֟բ i˖k7Sӏ)hfgҧ]x.OwVVbjYT<@,gx7SЋM pWg }DG}y^"6W ~ j䞰8Z4n1$9b.9q.+ۃ@>6 Y C5X_bNɤ^J&ݖqX`Ӟ-4-hCʷ${(VM/~ySPUW8B.&qxhz<̦ڪU M4mZv6?+2 *{2av0NEB p}OeȆY;DQ1sg2:Wtrhx"dݘ jCܤӶfW~-Rg+摫4+XbwѽGbnI.I_+Sf{!;K ^=IF18>=C1@e{)#j*i!\Ͱ"Ix۶K1ףf}3?*QuHX} )pqpy1 yG*U$eƵ(;s1˳] @4G\ܛ ٦{IkoǶ-FȇqTIA\ 7hƐ; eNMZ/0<]Eo^k ȳQJHL}`&d*Yz*"c )@:eū3ܶG5u\uup)XƊIoK5m~5mᮏqdIenEqEijN2߹إ;4^cqvY~y@{![w~>/+JWTMxFG ;l&;d-Si b` 伡{a ߴ?7[nyhxMst b-CBDTpL܃㊺^_ /V4CO0/FL\8M yW>@9b5ش[K(> 6^&uc>!H7/nzc-E*ب#}4%Yd;eez^RVs7 ocR@"3'=tR )kBK*#FJN=f7Kp\Y N(rGH!؅O  :d< G1/{! ʻ0TO">C`N0b BT$ i?RbQ$u,݃+- +rB.zmpԻs KIN՝ c9H^|tDmեq,q4M Pnt#d7~r X,wQR &#b}^Ibq;1i#THζ1 /r] s9v(@T6cĵ=$'.'i;jyWk~F)Ы ,EY{S|cF< ;X0 'U" >6נ+*> +Cٓ0XavՖbdj4^,XUHlWv@W" B0Ywv㻥w&sih2wGgH^ a9~KsM*ɧ%0LrRx CΚسOY&kGowa2.:@8,LZT";BgW&o}(5iYȓ l3)ߍbnj Sz ͐pkYϐp>S6K1{$r1k4=pm7>y9.EAint>j91&|u,GYMR߲5^ ;Iʻ| x4*޻ou{$Y \<]#|j~F<1#&'` enu`)f_8ϻ{Ry#_e@°@xW(r9- oפh T5sdhO ͯP^1a/ݕ .' J>]rv_\ lyoNş55odk0 /ض TY2s!0>.[ K]d LjޛJykJYg6AAyVhuX;G򄼸o(HG]ToQ""Pkf&Y׼> {Hn} oC@VKiN$yk}_\ ӔH6fxd3msDLN%~"37B2JTj#` IyL)OFܯ=΍B *"s3QzƂ_+Ke<:8 a7%h 8i|jY# {9 w#/2n4թ7DiCDtύ!gh)k©=BK9kj 1YcBLF=JZިdSr|[*1C[3危^n}nÆMv)};It6<K^{~03p[{DfwOT+'xnka%pO:?5ξ2}^?<]c|Nwl(sʝ 3ٔ)mt'ɜS!cHG o?`,TIi 0K'\HN x0 URn4u@L/s+rWbyIA[ʭ^9i$ 6,*faF*#fHq >ވ5fUTG{VsdyRdֆnH h?7ó>~/הN1벏{=O[vCCaH&pP9A/eN5zeCzq 5D"c^9YzC OSϪ@tf|TB,̻ L ;e.g~b5 ߫<4QG#F4#cZm70cޡtq #y权ks=j 0bxHq:W$]ɛG@ѣ~BMEX$USE0zؐWgjJֲd bBExjçJ`y)i# ; H)i^I05C&&}F1҄Y*&( Nz 0Shg0kPl$S,#Ɂb,P SpΟ lUP^[(?!<#Zu.ETy3?E")UPkmtb!@lYgl1ckG 3 <$f$ A'[LGl]L\Ls )^?/ծpK: [;‡7mٿt!q"XuvtRIպEݣCDT0g`,7n ,#:@C/}n_2Tj`<ǁ /z8`0vйɫB[\{]N8Kӣv  %Jc'Ov|-Xk.t=<+hJgyNShs+u 9Q=r<̅*M׉M]WY_ZX%f ᤇXC.J9c^#E+uʊӓS56IH E k ha,T&r ܾ}MrF 0HnPe6Cn[4vI(¿ z1*qf*y G$,8'zB0< 6#iВqʒۙ TY۬AA)c5ĩJ :)hg 1՘[͂hwZnI5D]\pKMFgoMir7~BޤкmC2||͖Bdpv")d"\! vyX;ÐgŶUx뛕"/>}كxPH}A/\; K;\0I_{mӋEj"cwm}YIK\GO̍Ny[K|'3"xV0.σnWtmF(r|!}CJd!:5q˲gEMRx7 T'W׳D){'B*T{@xlU8YxG݁@f^[8qoMt2+o^ 4&$'`:O5H Z˗Z!S֐y;Zg6$gG7$9轫-Jf板aβ ZA2dj2+Ft83K}zyDgđV?cw^bf+J , 7)DTzmNk^vp2m<b"e"HqM?9˚j.&_lFenqki^.8:ƒ^ĺr"Hs%;v2p&pVO%o̻D#nL.K_rt9LHDCMgGmS|!]k.(bvmŚsɶ3< c OD  n/rWuxO+q'HW!rG|+-gI?pso:cucŢ9=^|[kd.nNvށT6nC7ve|[i B O*Mm^<E`bYt3N"EM1I'vU֛꟮δaG*λliR_O|39jFlUA?.1P^^LTKJ LJVg9Ǽ78mپ/}wEVo3{(ѫ[_vNuNWEղJ,4B|Gzm;i0{n? n%]Vyt.5[Ƚ aQ'h+X5$V^1z9[X0m{©أ,a!! u)  ySBƘgi &wG1fyP+Sx&X Rc$ w\pL.Dhx̓&}dFdXwbk(ׯhNoV~K0wh$nɗ]Kړ<:cQahBFpēWy5S)V gZvbH4wR ^LmN@n~ylZ>yp>TꄏIrAWR 582KjBI1[R; s:y=N.7˫C@&|"_:4 |<%Q?=qVaP1Y0o~:O?4/}EMeR 9TbZT@m5(QckC+LQ/ܨy! L@C\4-τ{Ao nq/w[EEBh3DN 'VES h+jy(gK RB7Je8E49p,f*8ԓ['*_HUL10c69)R4̠&wzOɣO@iO5. Dnhs!`bi>4Ծr֒\=V XE?m^_ewEPcT^/DPq & x'V>+du'Ji.Udl̽! Sa{.Gx} ;bZ(fPWRH9Ͻ!1K), ҄5kJCn@+GRzjGD^G[I8b |j TA`T-V)O~Oq {f]WmptRoRK8GIÃrS",bNz(+GVZ Sup@TF֘kNwC\ʒniXH!uDp.vKk9@Y8 :od0, 0x#YNdBD|=L\83nFyu!^$;2A ng*M!VӪʛj㇣2saB'hKλrAuR+r!!UdV6'#\>Hb eIlJ5SѤУHbՃͼ᧔Ƈ4Sֲۘ(MSFBP;\FrKG+!ٶBaZ@ %Sk~/ʼkZB2Ql@Hk[vPxbMFx?b#!8BOO9ixLtscVk},Z`Cb'* jݞ&oE2|[唌'&PWp9s.,{vL-*Ggj<ՀanXŐͻ}>P`&:vK+N" W_ c:ώ*(&f-C''b> @!I|2z|f&Q+ EVtGәʈjV/!Q|| 9腗gcTu|oNh?./0o&2nz9{`%) =h%|ul˨WM{zhJ?PEne+V;Wg܊g?0w7v|NpuEv);fk[9lI6iG6J m?=&$XŐt/]pPECwwWIf"qi:I  y!}_KSq{ ތ\G]5ji45 /& C &WW[4_/R8C?2Ƅ_O(l#]Dc ̈́[u:gi)\V,m:nzkguQs&값uϗAc-s] EuTH?x"ȕe2t%I@\kōiM-nTd +#A{- uB$F83C,BI$׋LoLHF4mDBNlrgws_x{^a\Y?ljLuO"ۡw2v^?ƨt[p;.'MC8qTlh 6/p/y?YRm/'QE.~6ARJboTGhKlEʝS 3Vxjq5ڀ3M},&vE4K] /T6?9>W3aڪ=v>*I%NJT&8%̞7%4Aj* 4NkHBנ?}ci^S |-k[`(l:,xYJk&Ǐ.g.M^mw,:*XRX*fV6>;8'-'+dг1 2V3b[d sm̀Eha,BI ]* oM#n>EuLcD]o,a?);}5"3N? RvчA HOr";E@;¨^6/R܋f|@6\gL++K@Hy(Gނ (|}$8#͟wdں5Eii›bKo3lW4DӒ5C><ʙ^tw$ƯB.\O5q-P[ N4̳:PPCUцsJv ?,*냭5Zݿ^H~` 6r?5~Ql}{۠%#+ m5 |^[[ñ`1@ӣ&٢O=k`57$_>9Tt\duҨ&3JsΞ6`  G'H4wߕZJh-Y+#bAL 26tX\Hm:LjeW^<]-kHc 6:!D7"4lAxՒm&mMwjMF˛צX2 \k+慯\¥r?HjȜVů"X%Ut7~ȫm Rκ]Tx+s?G KLWbxGk7F0ÓGq?CeY,wJ 5NwTc^\[Q.@=֣-&W[d0L*"gQ8܄#/)<}y6fJL@H?ix+8ح[h|bXʲ󉽏1Ip"RL컃}N/QPOU ӉB! YR׶r4v7%&XވK? Fz @ւ;fiuƘ%CPxjr.P2Z|~|碭)*C /*fZMο@?eH@lT୧*4q)^`gITs4V,6_QTHx, Yz]9!)_DY{C"ꖸ!1F*L5y0K`hZ`Jmj@:(1x&ȣL4j~"g RE"ic%`EQ1b(f_ sJ(< L7\4TEcz8[A!6^!TnJA,,ODNYrFd㭽}}  mVG[׺eك oPǰ8w!ZR7_0ḋeV=H/67_*7^QPht5 J`#NDDJx׆9# E+t_˯jD 0GP pVϲ/ck6Kݜ3g5^>6C`["+2ؠ*Ȧ 0r͕&Wtڴ|qEkaܻ(ٯFcؾy2gĞ +WyioGhe8&ĩ3YMIj (/O'C&+H۰Y}{_$(3}&'=!Ii{FxD ˽[9@|q}Xd=17eQ"%R~гs1M4&M*Cǚ9d< 2>3U͗/zkgIƌa&'5<>+T`WO(ƉZX$L$x6/N+ܳ봬/kW翲l:*|EW0lE\\1dC iAz.No 2Owһf*aq{| %À(-aB խjĻrz)ߝ>auN)fHh[{thM&Ρ~_#f4WwpzU樮.7گM0P51E?|)K(&#kjfbc'wp,c`(\櫓>yDL>+` klqO{RbW=(FkI,՟rjm=;tlF!["N$tJtijana# ї%YtӔ&heyqdjr-cb'|WƬ7% Jn'u՛_Xװ E׈Jw[P/F?_|~Bġ6Ԯ;)3I9\$۸#+ݮFTzh õ#af؞*#7"MgnW>˭aVHǦdh9`,YZhK# ί[P2֧ksEXZ$|Ny+җk1.O<) sVL[:U,,8]`I.ECQMnNV^-{+R&0F-ض 5_ڡJVv 9>OV_px~R&˕Lb%4B6Yahjɮm4H~Vp0\͠.8M } [LixSIwc_|H/71߉YTFA,]ܛZrVu`u0XH*"se]тYX:3Q5J̔v xQ OLvfwB\|yM)-ۥ@/h N.`2K]t,p:Yf_Q'J{'V@2@c=:ҍ`-!ߨCUWKcJ9;4j}$^?hJ~f!Jd%j6tQcySzvъ\: )6Hv Lc8Ty#٪~Z%KbUM'~xbK/:4/5&&$VUZj1}A kYI/[9SwMQ)^+="lu?q:۞7dOzY*t]t2Pq!{L3f CϾ7` dұU8d7Z s$pV:ILn.Lof n|l.H&Gc܂L-ijnkJ1M~ȾEH dnZeB,]"+. ;ﳸU"^Ln;ھ\]pY(c5*ԢktU_Wkc\ψ&* tF;5nF4&,;@ Picڠ&jt6DY6F jD90GV ,Sj\\B3PЂȖ#0[DEr@5zK)(yfbhq ˶rI*8;=3i,h| ]Gmx&F4>Jpݬ=nqYi˷Lf€Tչlși[T|+f.LjP|D.35i,;ƀt WMut`@EIR"訩3hˀCqC+n\}!x-C "g@&M =&ֆAlz*M Wdg.Gta6J$x= 1<,cR P: ?#):Ef`dˌeo`s1EL_:z, N5+,cj|w1$N,k`/٦%vUaV~Ry-a —(?xm:&j޸aF\+DdG('*py('rVcڟCd,l*w6 bd`ϲ7%<kܲhl^tEV}~ pxIJ#x^lRXTRcϚVI#2fdD{ete !7l-5̅OVL峯sP6Tަcdf۟MYΌUӶIF,河hV.">cA\~=S6.|1$u0<}Vʆ0Y/~O%F^&mpŒϿl=+:DAx#ejhr!QlsBAEE:wv O3a%fLd"oijTԻe CRDZ;PyZ\MN+M?m ][.Ed4CO &W{#NλyiY9`i Z_ȥc:x'Jt[ ܜb^evw$fQ| N)le8M3Mq4^ :Ɨ O5u9ucZe!mZ.Vo`} b[oDנa{RQߣL :FWZDgɯF(;0EW(b7|dߘ]I'W?*M7 `oE |̪WMgƄ{-3_7857)z'=vw%hyIbwvw,e&ȸ$etͭ>p'z\ޑͦd[f\0ۃJ=M]1q] nDer_9T{Uq5EU8!A&1Ӽ a0s0NGNHeubRB3M9= kvxDg!ř:ؙ{KC ͍'-~KQ MrO-rRl,i(sr#D 9o#fCFUnJ>TP-/ٮA1qQ!F+Ua)dF(S3k^[tʈH*-(Y%߼_vaN?{|'0}T߫{โ'~loOjU‹imjCm-"~jܿktqm5OhJ!cUY!>'hE'Ά+6:Դm_m43q3QcuJWi\[$p@>w:y}}xk8oaӆݭ'|\o-)Mbkh BtSt" eS"_ INZMRt E Hgq&7;clM_L./%x穤FNSB7͋pqE,Hj젘-tO)QR&B aCjM2)ޓȫ v^29?M-b@` T$g]@uΘKPGAD oj |qުX6PYFJ  idrRwK!w1B)b :qG+٬qb$(Zݍޭ,KQVb5X=rk"U/&F8mSfUvgI_V" 㣅FHʷ<>9SQAR[>0g3W EvhdX]=g䜎q8|@.!W(.Dl;N蜃:v->c+ט1Ф+ T^7(eWjF۳nʕCh%^;h{048hqtٳo0nNs$4pnS/q7Ek1"PlÃ+2Y x{FScVX kpp1gCIJsE?`F}@ 234kj>W"JI=R؅UeYY2ʦ%X)ফ*Po-*_Z/8XPkzK_: vEh}Qgo(#rA'nzi{JBm{7Ԛr/t"VvRs-PTVm2H|K"0Ǻ9#-ޭNP9o HtI tT`KOd!ё-2Q w6%a $%XsŦ⺶9癊sożgnB؆6a ۘJIt645|y:JS:<2k[ہ窬#?GWH?o)ѐ/IcUzl{ސߩ,"57 pcaokչg,p+iG<~BQQxrr?4OUgOt%9SGПcVIm .Mpv K߭c\W~Q>Sf*}k~->ڸsA1B$4_;L? p-{I=Vt?sI g&x7V?43QE`x)M ð&YAqS3Ug$-lJ`.3Ox5_oE1tSGj}ǝZD$@RM,Ztw{l =.1fז7!k%?ϓg:G Ǯ%0_g `vg?ڊq>7,jB]h{IPk 'kCAf7=Rn-.R@ft=Aem =I%~mQ1އޙN] +qRb~$6ma&eCV̼f0O;fgB᠌[@_1lz&QM0Nn91@6y)%c>,:{o.w' P@5NÆBFbB<g˃E& b%w 9U3wPNO6& fJoC"C]_+smV3 m=J#4y፩zLΈRQnP/{ˡ il݅J9gM!\4W廽r9C0,lɰm<Ѽ\%v`MĿe߮5Ho9Y:q&3I̋;+N$l^_; ه9YWqvj 9XB,rRö|E+B? JP SY z Nm{aNǓ@o4g|u|a̛|$ {K8GqtCY{>w%>KA! Wo {7ѩE֔Tvlt/+/:t}q :sEg >g ^Ǧփ3ogt  q%xezo$HIz҉X-+0sFہ?T kOK4:P(&VBDtL ߧH*$;x"/kP1kkHc˥(x/5nGFX cTbn>X傳S!ekסkv߂š=[`~˄흍H}/)чxc=r2ss܋T=?\m#)tz]RK坄rCrWRsg1P߅ݚJ Q+rE9?B{L!u >f8'dMry2K!Won NNx~Zs,mvnz.![>A۽S\ý Cr#ANȶWYۅׯ~y <{Ƭs'1cISW̏/UYZ } )m Ϗ>IqU' LoY$QiG[4MPjHw9| ٫<e5f8fT8 5w-O5(&L4~,ɓ1c R#VF⤞Y냸%>[Jhe09X u&)8!(݁ V$'..t|~<~A=qV:~ʈ_kKo z.484It00'?ԈB!IJ8uPky?E kVq~[ٮz^;Rx:׼hZ쁄5j˳!Rv=,U 2Vxc$)>ri-uuS m%5:Ar j 5YY]1 ) = K?aF_W8^s˕wKW9 Y\JεL|ogG;3)/OJ4rw#QGb^%)K(+H9f5 Ǩyղՠ [3HxeޢJԢf.rb ZM+} .^; G%g, 4@L\X^Oȓ6۝G*±0ZԜ΄mr="DF/r~,TA'$:v0mЈ҄Tgnc]ѧjo&~qׁ\_-gt$1ȬL KDqa\$5J')+,4jb? Dÿk~L Z=(]il1rGU+(%#;`BÞ 3x5ܷ!-$CA43VFQXRٝ0Ȇfk@Ix>Axn|+l V۴%~Fnr)`"VI EV"[ L;~:1G$ajݵTMIL ԏ knnqCh q1xəj7fO*SN(4LژE~IKZ-#nq95QfY`Dntn.(? d+D;-DzN4+KqkKy wSo']lk^˼Yy|F1`>rpDS+6Լܑ #HzX#R3t}j:Eq:KLE>Փ c~D~C Xr_5eO*j.<O#5ǀsjdUwlKacPE:qͻr_"e_Rw ,l 87A71lƈ[ ,I+Sz{iE ;@۟[l;r"='/-ܓ3p[U*-D꺆`yPuJACAP"2wEtߗD!8۔~ ez:;ʢ)t+ p`Ss RvǗdc[ R{?9G49m+)vt+\Ǭ~68H\sƗKv 1qh| ahΑE8?ZZyag D%w\3^A)cr,Rۆ-׻2AڦԂѼ(5ѡ:' i*HP(J+5@?~H 8*?IVIˏJD?Iw uՂl^8p)SDwky }raUrT +_Rl'I2#dCaY\L9}MRE.\h-61eigbӾnU[%(q&z}9S7UI{GӹzN8" rd~!O>K-uWWGctsmWW{Rwipi+aSϖg{w'1 f;"' ;x()xĆmyjGx ] PMLXOSEewg4\SoA Ǡ^=Ί=fX;jsr).ޓ3H{׼{IbW 8mL%gEMՆz ,ؐVظ&E' 4CidG8V@*ԍEV f\ =:y\rJk*4pQR{~6O9Ư3Xؕ[,:f((Ң!uFZi['/X`o^AJGow\}y|YQ$ŲC!g&8#$Yc!ڝ Wp1} ] aoڲDۺ "1G 坛=EͫFj- 9GC`ߐwP<ǎ0v[j!OEfeQ82o1n;xJP 1so%r!}$McX)o<焩m zN LT}( G%+W +:=v\ TK.7Ջ\WLzO7sONJCXp²-hqOFUyJ/e!r(3>$ 3 4(ƥ%.E l'JJºn XC\60H0.pcjrPnoej{bÛYQ>ѹkͤf!` { +> "/CJbmiFCv'a*9a]Z8T~}-@as!\U2 "E4 aSou6\{`]3+,`O6 ?0Tpƫc+#>9n&#KN`(n-jWą^:3"4а )@xǂ_8c8  /gw|xSobtmd2y P9♢_=`ݽYy1׊^S]icD}W=7Z0K} `%(mI=#47Um 5.BE\i{im;6@mۓxy=;23\%ԧLSg2_Za.lؒL2EKo5˥?{1*+n"00MT Bcpk%BRꅑ$ e{A8rd?͙B#щ:¥)| sH4b[Հ~KlǑ9&ޣr(C/qKxYB[ce27ZyS2C,Fdz[wdy*6cX{齠݃@ӑnq\x݉eؿ;)tMU4uY8q9=6a_ʋp$ Bm>(}U=/ڷ<.Kـ>J{~ZX/5{Еx#j2BH҅)GU^ӊj3ȯ'щD}S撴zelgTp cEt-;odB+U#y[1+N\cHvh 7h'qB( 9>Gyrϥ 1}Wð_j|V=zLsƶ#>vsa8Mk>Y>qJJg~5G3Fh7SyCUoe3XL(a$0[+!p)ܝ }cR5շm1BV(EgʡK驗fd >$hC.A`uor ]Y(w{&3(i`cmi £6f~]wRSbbE;Fǽt[n@{AD y лk&bq*TU͜Y:I#\~T(7ΒN&VSnM823кEkɽ~ލ og@o$mԷ(|+=ebL(ޫi;N,ȴk0e=Uh>08zRv=}6S!@y{2lX-y l1i !%jDa uf$UdaMKZO?\=\9М׻_ymRCd~7N0r684D0p,]'Z} &+#Vc87Cl 9 1Qp^@_3CmMem%&nʠ!ƯiU5Q._2Wiv6a )DRl)]~BEI=W]{˙>M6o~O.<޴Oi>U619W~6Eq|8O"˝=$E0pp-UUg#(#Zy$.ò^'q)ݟ[%!E,4 "g>s0+jyrj bfhhIE?>>j+[Y\4ހZm3kL߇§H1!ΆfK:ݝ(qǑPT]L﬌P~or&]EJ*+<6Sv̪ЉB=(MR&8wF?LBA@u?n'|_|ЮbĄ*{<c` }&ܑ  bQ'F?#T U/.XA)Al; 3"9Ύr/|L= H jʯ0r;CH;Kä7Q]E<1H>H8M_V6(DZZ[GI[ Rw_$_tN?hݔ,8*qٮR+}s`%"/KP_pV2 =}J|g 2bvŻ'[SRkAB+_Gl@%LzK] NeL04%_Wa|qbUr24JU%S7[%!|Y'8u?T;>> PM:3"]z}.SQƦܨ+z2p&Jl7(^z|kW`ٓ(3_ػhw'ufP!ntr#8C_3ËTR#a@ ]Z#q{W EDntۢF#].i* k`ldI]x?\f_XT7ĭ˿1=be4,*kgEP!F Mf"2U~z2t}RFF> vdLhBs\@P{d.;OC"q\ăGp.}>˗yi̇&/bŠt/Ԏ}6'B_vƵNlКsze^)WH Z*`kÇ ?ƍ{Kc)2tUD^JX mxDK*U$Ybs! _<Ă}=e{j4ޚvkۅ ?[HFn?iRߕ9;x]G;sQ9DrA Pz?OZXΊ,\Fl#EV-gPȸ1a$#'4gW{=~tצR\!O0ų*0WZc[f$Ͻ%9l/x aЪ§<9ߪrVQVP'Kbڐy~Q~D̓LB8<4J $c]}c}& WIW3T .#rzr0X;ʌ-5xuo䎼= ٣8LRMiAbL>c_l[с %KWc(^]Fs DSOy2r.zɑ,q9%6I2IF:5ēTV'I皭\p15l~4a'4Q^vN lƟ\U&k6D>>UiߍdZnIj |J,E(Z;sɱ:Ӯa6b]UW8љ?m_VuuG9( wi/3{ގ@NKggE3nRtWE!*+Ș|o݇ˀ^\TzÙ7&ce$2R'O>_"}xnJmHnI7k;o0MeEE\R}~@YY֔WKC,טCl$}b^8%wO.6Of=lڞ^NDFb^iK޹ɄpvB"sr 55{%2p@-hLq>5;kw=I\.ɡ #A]k݀v7&$,BT$R=ʢZ1`N < Niycb˯҂%sN^]- GP{3~.f烑fS- j7Z}}{pR9^Kx_'D,^ضUy &o•X:W[\Ù˜7@uWX\EP@M ^ O]\g^XY`Xb*Kܤ-}zn~KG_A8wN[EbquxjM"1$.<({XT,-|/m0ɴ]G-T&7Hu+{NwB4Y>G s lQ+zz,{O~M_QPĵv r,";],5qq㊚wtG늬BƬp9o]m95*q^Q5"C͏LU?~L8..]wP!ؠޣ \>XYM&]6y>3ݮF:7V@7n2vʹngy^ SiK' gFj|YI [l5uwD'4j'Yjs>"yZSgEߒcZf5x9Siޥh ޓ fF!6BxtM\sgojྞ #|k/җmn#w4mH>^1yg6>˘0nC[m/buRNG ŽK+ylA ϥD=#+TQdN3fzįR1@IE~ęx<*!mtC\̽ϯΖLX/JT q YN f ^TWg,, vz)1[@].xW`py$>YP&!S !YSw^)Jv"WS("~m PC./5:.'OV*]eF'Gpdp$uЍ̣W:KnGx#w\rwQ.X5^*fB4_6cL&4G dxǴGeZ2@> Bm${+4XPƴ]^ڔ`7ujg-/&! oA&N[{٭T;\ r{ G;gz5Hۨ9Ce">2ƨJ5~%> 0bfhpKjl8.}PXAT.X]v&Ojb 8XCcS"xisr8HhT[(‡7à@^(20I<ДrDcЀΡ@rVjOZ WTY-Rưo"?{I*R*F0dHnUuV !1m) <Vxq*֚(а_v@. ,mJ !&WH}&V!UKMe`ud%